<?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>208814</bug_id>
          
          <creation_ts>2020-03-09 08:44:12 -0700</creation_ts>
          <short_desc>[GPUP][GTK] compile GPUProcess in GTK port</short_desc>
          <delta_ts>2020-04-30 10:51:32 -0700</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>WebKitGTK</component>
          <version>WebKit Nightly Build</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          <see_also>https://bugs.webkit.org/show_bug.cgi?id=208899</see_also>
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords></keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Víctor M. Jáquez L.">vjaquez</reporter>
          <assigned_to name="Víctor M. Jáquez L.">vjaquez</assigned_to>
          <cc>annulen</cc>
    
    <cc>bugs-noreply</cc>
    
    <cc>calvaris</cc>
    
    <cc>clopez</cc>
    
    <cc>darin</cc>
    
    <cc>dbates</cc>
    
    <cc>don.olmstead</cc>
    
    <cc>eric.carlson</cc>
    
    <cc>ews-watchlist</cc>
    
    <cc>fujii</cc>
    
    <cc>glenn</cc>
    
    <cc>gyuyoung.kim</cc>
    
    <cc>jer.noble</cc>
    
    <cc>mcatanzaro</cc>
    
    <cc>philipj</cc>
    
    <cc>ross.kirsling</cc>
    
    <cc>ryuan.choi</cc>
    
    <cc>sergio</cc>
    
    <cc>timothy</cc>
    
    <cc>wenson_hsieh</cc>
    
    <cc>youennf</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1627778</commentid>
    <comment_count>0</comment_count>
    <who name="Víctor M. Jáquez L.">vjaquez</who>
    <bug_when>2020-03-09 08:44:12 -0700</bug_when>
    <thetext>Enable the compilation of GPUProcess infrastructure in GTK port</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1627800</commentid>
    <comment_count>1</comment_count>
      <attachid>393044</attachid>
    <who name="Víctor M. Jáquez L.">vjaquez</who>
    <bug_when>2020-03-09 09:23:00 -0700</bug_when>
    <thetext>Created attachment 393044
WIP Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1627803</commentid>
    <comment_count>2</comment_count>
    <who name="Víctor M. Jáquez L.">vjaquez</who>
    <bug_when>2020-03-09 09:24:59 -0700</bug_when>
    <thetext>Right now the patch doesn&apos;t compile. But I would like to assure if I&apos;m in the right direction. I&apos;m quite newbie on these matters :)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1627875</commentid>
    <comment_count>3</comment_count>
      <attachid>393044</attachid>
    <who name="Carlos Alberto Lopez Perez">clopez</who>
    <bug_when>2020-03-09 12:34:17 -0700</bug_when>
    <thetext>Comment on attachment 393044
WIP Patch

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

&gt; Source/cmake/WebKitFeatures.cmake:237
&gt; +    WEBKIT_OPTION_DEFINE(ENABLE_GPU_PROCESS &quot;Whether to enable the GPU process&quot; PRIVATE ON)

Thats would enable it for all ports using CMake by default.
Perhaps you want to set this general default value to OFF, and then change the default to ON only for platform GTK in OptionsGTK.cmake</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1628346</commentid>
    <comment_count>4</comment_count>
      <attachid>393170</attachid>
    <who name="Víctor M. Jáquez L.">vjaquez</who>
    <bug_when>2020-03-10 11:55:44 -0700</bug_when>
    <thetext>Created attachment 393170
WIP Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1628904</commentid>
    <comment_count>5</comment_count>
    <who name="Carlos Alberto Lopez Perez">clopez</who>
    <bug_when>2020-03-11 16:25:03 -0700</bug_when>
    <thetext>See https://trac.webkit.org/changeset/258253</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1628980</commentid>
    <comment_count>6</comment_count>
    <who name="Michael Catanzaro">mcatanzaro</who>
    <bug_when>2020-03-11 18:55:37 -0700</bug_when>
    <thetext>Is the eventual goal to block the web process from accessing the GPU using the bubblewrap sandbox? Dropping the call to bindOpenGL in BubblewrapLauncher.cpp? If so, amazing! If not, what is the goal?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1629238</commentid>
    <comment_count>7</comment_count>
    <who name="Víctor M. Jáquez L.">vjaquez</who>
    <bug_when>2020-03-12 10:24:12 -0700</bug_when>
    <thetext>(In reply to Carlos Alberto Lopez Perez from comment #5)
&gt; See https://trac.webkit.org/changeset/258253

I was strip of all glory, but it got easier my work :)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1629239</commentid>
    <comment_count>8</comment_count>
    <who name="Víctor M. Jáquez L.">vjaquez</who>
    <bug_when>2020-03-12 10:26:24 -0700</bug_when>
    <thetext>(In reply to Michael Catanzaro from comment #6)
&gt; Is the eventual goal to block the web process from accessing the GPU using
&gt; the bubblewrap sandbox? Dropping the call to bindOpenGL in
&gt; BubblewrapLauncher.cpp? If so, amazing! If not, what is the goal?

The goal is to isolate multimedia in a process. It is not related with OpenGL or compositing, just multimedia and passing video frames to WebProcess. If I&apos;m not getting it wrong.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1633815</commentid>
    <comment_count>9</comment_count>
      <attachid>394477</attachid>
    <who name="Víctor M. Jáquez L.">vjaquez</who>
    <bug_when>2020-03-25 02:26:23 -0700</bug_when>
    <thetext>Created attachment 394477
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1633821</commentid>
    <comment_count>10</comment_count>
      <attachid>394479</attachid>
    <who name="Víctor M. Jáquez L.">vjaquez</who>
    <bug_when>2020-03-25 03:11:30 -0700</bug_when>
    <thetext>Created attachment 394479
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1633831</commentid>
    <comment_count>11</comment_count>
      <attachid>394483</attachid>
    <who name="Víctor M. Jáquez L.">vjaquez</who>
    <bug_when>2020-03-25 05:00:37 -0700</bug_when>
    <thetext>Created attachment 394483
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1638617</commentid>
    <comment_count>12</comment_count>
      <attachid>395701</attachid>
    <who name="Víctor M. Jáquez L.">vjaquez</who>
    <bug_when>2020-04-07 10:17:27 -0700</bug_when>
    <thetext>Created attachment 395701
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1638618</commentid>
    <comment_count>13</comment_count>
    <who name="Víctor M. Jáquez L.">vjaquez</who>
    <bug_when>2020-04-07 10:18:08 -0700</bug_when>
    <thetext>The patch is ready for review :)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1638620</commentid>
    <comment_count>14</comment_count>
    <who name="Víctor M. Jáquez L.">vjaquez</who>
    <bug_when>2020-04-07 10:22:06 -0700</bug_when>
    <thetext>I spoke too fast</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1638632</commentid>
    <comment_count>15</comment_count>
      <attachid>395704</attachid>
    <who name="Víctor M. Jáquez L.">vjaquez</who>
    <bug_when>2020-04-07 10:40:52 -0700</bug_when>
    <thetext>Created attachment 395704
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1638640</commentid>
    <comment_count>16</comment_count>
      <attachid>395704</attachid>
    <who name="Don Olmstead">don.olmstead</who>
    <bug_when>2020-04-07 10:49:35 -0700</bug_when>
    <thetext>Comment on attachment 395704
Patch

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

I feel like to start this should just be putting stub files in the directory and touching CMake files.

With regards to the #if PLATFORM(COCOA) stuff it really feels like its too early to guard things with COCOA. Once we have some implementations we should be able to figure out if LayerHostingContext should be shared or not.

&gt; Source/WebKit/GPUProcess/media/RemoteMediaPlayerProxy.cpp:62
&gt; +#if PLATFORM(COCOA)
&gt; +#include &quot;LayerHostingContext.h&quot;

I added a LayerHostingContext.h to Source/WebKit/Platform/generic you can just include that and get rid of these COCOA changes.

&gt; Source/WebKit/GPUProcess/media/RemoteMediaPlayerProxy.h:284
&gt; +#if PLATFORM(COCOA)
&gt;      std::unique_ptr&lt;LayerHostingContext&gt; m_inlineLayerHostingContext;
&gt;      std::unique_ptr&lt;LayerHostingContext&gt; m_fullscreenLayerHostingContext;
&gt; +#endif

Ditto

&gt; Source/WebKit/GPUProcess/media/RemoteMediaPlayerProxy.messages.in:29
&gt; +#if PLATFORM(COCOA)
&gt;      PrepareForPlayback(bool privateMode, enum:uint8_t WebCore::MediaPlayerEnums::Preload preload, bool preservesPitch, bool prepareForRendering, float videoContentScale) -&gt; (Optional&lt;WebKit::LayerHostingContextID&gt; inlineLayerHostingContextId, Optional&lt;WebKit::LayerHostingContextID&gt; fullscreenLayerHostingContextId) Async
&gt; +#endif

Ditto

&gt; Source/WebKit/SourcesGTK.txt:26
&gt; +GPUProcess/media/gstreamer/RemoteMediaPlayerProxyGStreamer.cpp

You&apos;re missing a blank line here.

&gt; Source/WebKit/WebProcess/GPU/media/MediaPlayerPrivateRemote.h:44
&gt; +#if PLATFORM(COCOA)
&gt; +#include &quot;LayerHostingContext.h&quot;
&gt; +#endif

Ditto

&gt; Source/WebKit/WebProcess/GPU/media/MediaPlayerPrivateRemote.h:367
&gt; +#if PLATFORM(COCOA)
&gt;      Optional&lt;LayerHostingContextID&gt; m_fullscreenLayerHostingContextId;
&gt; +#endif

Ditto</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1638988</commentid>
    <comment_count>17</comment_count>
      <attachid>395785</attachid>
    <who name="Víctor M. Jáquez L.">vjaquez</who>
    <bug_when>2020-04-08 02:52:52 -0700</bug_when>
    <thetext>Created attachment 395785
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1638989</commentid>
    <comment_count>18</comment_count>
    <who name="Víctor M. Jáquez L.">vjaquez</who>
    <bug_when>2020-04-08 02:55:08 -0700</bug_when>
    <thetext>Thanks Dom. I guess I&apos;ve fixed what you commented.

I&apos;m hesitant of VideoLayerRemoteGStreamer.cpp, since I&apos;m not sure it is a GStreamer specific thing or rather something for the texturemapper or so.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1639057</commentid>
    <comment_count>19</comment_count>
      <attachid>395809</attachid>
    <who name="Víctor M. Jáquez L.">vjaquez</who>
    <bug_when>2020-04-08 08:10:47 -0700</bug_when>
    <thetext>Created attachment 395809
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1644246</commentid>
    <comment_count>20</comment_count>
      <attachid>397179</attachid>
    <who name="Víctor M. Jáquez L.">vjaquez</who>
    <bug_when>2020-04-22 02:12:26 -0700</bug_when>
    <thetext>Created attachment 397179
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1644859</commentid>
    <comment_count>21</comment_count>
    <who name="Víctor M. Jáquez L.">vjaquez</who>
    <bug_when>2020-04-23 10:52:56 -0700</bug_when>
    <thetext>Ping :)

Any comment on this patch?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1644873</commentid>
    <comment_count>22</comment_count>
      <attachid>397179</attachid>
    <who name="Don Olmstead">don.olmstead</who>
    <bug_when>2020-04-23 11:23:39 -0700</bug_when>
    <thetext>Comment on attachment 397179
Patch

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

Is there a specific reason you decided to add PLATFORM(COCOA) guards? If all that needs to be done is fill out some stubs for gstreamer then I think you should do that. I&apos;m just being a stickler with it because once there&apos;s PLATFORM guards they never really go away.

&gt; Source/WebKit/GPUProcess/GPUConnectionToWebProcess.cpp:76
&gt; +#if PLATFORM(COCOA) &amp;&amp; ENABLE(MEDIA_STREAM)

Is there a reason why this should be Cocoa specific?

&gt; Source/WebKit/GPUProcess/GPUConnectionToWebProcess.cpp:367
&gt; +#if PLATFORM(COCOA) &amp;&amp; ENABLE(MEDIA_STREAM)

Ditto

&gt; Source/WebKit/GPUProcess/GPUConnectionToWebProcess.cpp:512
&gt; +#if PLATFORM(COCOA)
&gt;      userMediaCaptureManagerProxy().setOrientation(orientation);
&gt; +#endif

Ditto</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1645928</commentid>
    <comment_count>23</comment_count>
      <attachid>397179</attachid>
    <who name="Víctor M. Jáquez L.">vjaquez</who>
    <bug_when>2020-04-27 01:29:47 -0700</bug_when>
    <thetext>Comment on attachment 397179
Patch

Thanks for the review :) 


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

&gt;&gt; Source/WebKit/GPUProcess/GPUConnectionToWebProcess.cpp:76
&gt;&gt; +#if PLATFORM(COCOA) &amp;&amp; ENABLE(MEDIA_STREAM)
&gt; 
&gt; Is there a reason why this should be Cocoa specific?

Because UserMediaCaptureManagerProxy.h is Cocoa specific: https://trac.webkit.org/browser/webkit/trunk/Source/WebKit/UIProcess/Cocoa/UserMediaCaptureManagerProxy.h

Thus compilation breaks:

../../Source/WebKit/GPUProcess/GPUConnectionToWebProcess.cpp:77:10: fatal error: &apos;UserMediaCaptureManagerProxy.h&apos; file not found
#include &quot;UserMediaCaptureManagerProxy.h&quot;

&gt;&gt; Source/WebKit/GPUProcess/GPUConnectionToWebProcess.cpp:367
&gt;&gt; +#if PLATFORM(COCOA) &amp;&amp; ENABLE(MEDIA_STREAM)
&gt; 
&gt; Ditto

Because it is part of UserMediaCaptureManagerProxy</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1646075</commentid>
    <comment_count>24</comment_count>
    <who name="Don Olmstead">don.olmstead</who>
    <bug_when>2020-04-27 10:09:14 -0700</bug_when>
    <thetext>(In reply to Víctor M. Jáquez L. from comment #23)
&gt; Comment on attachment 397179 [details]
&gt; Patch
&gt; 
&gt; Thanks for the review :) 
&gt; 
&gt; 
&gt; View in context:
&gt; https://bugs.webkit.org/attachment.cgi?id=397179&amp;action=review
&gt; 
&gt; &gt;&gt; Source/WebKit/GPUProcess/GPUConnectionToWebProcess.cpp:76
&gt; &gt;&gt; +#if PLATFORM(COCOA) &amp;&amp; ENABLE(MEDIA_STREAM)
&gt; &gt; 
&gt; &gt; Is there a reason why this should be Cocoa specific?
&gt; 
&gt; Because UserMediaCaptureManagerProxy.h is Cocoa specific:
&gt; https://trac.webkit.org/browser/webkit/trunk/Source/WebKit/UIProcess/Cocoa/
&gt; UserMediaCaptureManagerProxy.h
&gt; 
&gt; Thus compilation breaks:
&gt; 
&gt; ../../Source/WebKit/GPUProcess/GPUConnectionToWebProcess.cpp:77:10: fatal
&gt; error: &apos;UserMediaCaptureManagerProxy.h&apos; file not found
&gt; #include &quot;UserMediaCaptureManagerProxy.h&quot;
&gt; 
&gt; &gt;&gt; Source/WebKit/GPUProcess/GPUConnectionToWebProcess.cpp:367
&gt; &gt;&gt; +#if PLATFORM(COCOA) &amp;&amp; ENABLE(MEDIA_STREAM)
&gt; &gt; 
&gt; &gt; Ditto
&gt; 
&gt; Because it is part of UserMediaCaptureManagerProxy

Sorry my bad the platforms I enabled on don&apos;t enable media stream. I talked some with Eric Carlson and I opened https://bugs.webkit.org/show_bug.cgi?id=211085 for this since UserMediaCaptureManagerProxy doesn&apos;t seem to be Cocoa specific at all.

If you want to take that bug before landing that&apos;s fine if not can you just add FIXMEs referencing that bug around those changes?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1646078</commentid>
    <comment_count>25</comment_count>
      <attachid>397179</attachid>
    <who name="Don Olmstead">don.olmstead</who>
    <bug_when>2020-04-27 10:11:35 -0700</bug_when>
    <thetext>Comment on attachment 397179
Patch

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

r=me

Your call on how you want to address the UserMediaCaptureManagerProxy.

&gt; Source/WebKit/ChangeLog:38
&gt; +        New function that raise noImplemented()

Typo.

New function that raises notImplemented.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1646538</commentid>
    <comment_count>26</comment_count>
      <attachid>397849</attachid>
    <who name="Víctor M. Jáquez L.">vjaquez</who>
    <bug_when>2020-04-28 09:56:34 -0700</bug_when>
    <thetext>Created attachment 397849
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1646540</commentid>
    <comment_count>27</comment_count>
    <who name="Víctor M. Jáquez L.">vjaquez</who>
    <bug_when>2020-04-28 09:57:46 -0700</bug_when>
    <thetext>(In reply to Don Olmstead from comment #25)
&gt; Comment on attachment 397179 [details]
&gt; Patch
&gt; 
&gt; View in context:
&gt; https://bugs.webkit.org/attachment.cgi?id=397179&amp;action=review
&gt; 
&gt; r=me
&gt; 
&gt; Your call on how you want to address the UserMediaCaptureManagerProxy.

I added a FIXME :)

&gt; 
&gt; &gt; Source/WebKit/ChangeLog:38
&gt; &gt; +        New function that raise noImplemented()
&gt; 
&gt; Typo.
&gt; 
&gt; New function that raises notImplemented.

Fixed</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1646867</commentid>
    <comment_count>28</comment_count>
      <attachid>397849</attachid>
    <who name="Xabier Rodríguez Calvar">calvaris</who>
    <bug_when>2020-04-28 23:26:10 -0700</bug_when>
    <thetext>Comment on attachment 397849
Patch

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

LGTM but I would wait for the review of something with more knowledge of interprocess comms.

&gt; Source/WebKit/ChangeLog:15
&gt; +        (WebKit::GPUConnectionToWebProcess::dispatchMessage): guard

Sentences begin with a capital. Please check this in the rest of the changelo

&gt; Source/cmake/OptionsGTK.cmake:-191
&gt; -WEBKIT_OPTION_DEFAULT_PORT_VALUE(ENABLE_CSS_PAINTING_API PRIVATE ${ENABLE_EXPERIMENTAL_FEATURES})
&gt; -WEBKIT_OPTION_DEFAULT_PORT_VALUE(ENABLE_CSS_TYPED_OM PRIVATE ${ENABLE_EXPERIMENTAL_FEATURES})
&gt; -WEBKIT_OPTION_DEFAULT_PORT_VALUE(ENABLE_CSS_CONIC_GRADIENTS PRIVATE ON)
&gt; -WEBKIT_OPTION_DEFAULT_PORT_VALUE(ENABLE_RESOURCE_LOAD_STATISTICS PRIVATE ON)

Nit, I would leave these changes out of this patch, but won&apos;t be strongly against it.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1647012</commentid>
    <comment_count>29</comment_count>
      <attachid>397849</attachid>
    <who name="Don Olmstead">don.olmstead</who>
    <bug_when>2020-04-29 09:06:32 -0700</bug_when>
    <thetext>Comment on attachment 397849
Patch

r=me

In the future if you get a r+ with nits then you can just replace the NOBODY (OOPS!) with the reviewers name and then ask for cq+.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1647015</commentid>
    <comment_count>30</comment_count>
    <who name="EWS">ews-feeder</who>
    <bug_when>2020-04-29 09:09:07 -0700</bug_when>
    <thetext>Committed r260899: &lt;https://trac.webkit.org/changeset/260899&gt;

All reviewed patches have been landed. Closing bug and clearing flags on attachment 397849.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1647374</commentid>
    <comment_count>31</comment_count>
    <who name="Víctor M. Jáquez L.">vjaquez</who>
    <bug_when>2020-04-30 08:20:36 -0700</bug_when>
    <thetext>(In reply to Don Olmstead from comment #29)
&gt; Comment on attachment 397849 [details]
&gt; Patch
&gt; 
&gt; r=me
&gt; 
&gt; In the future if you get a r+ with nits then you can just replace the NOBODY
&gt; (OOPS!) with the reviewers name and then ask for cq+.

Sorry. I should ask about it before uploading.

Thanks!</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1647413</commentid>
    <comment_count>32</comment_count>
    <who name="Don Olmstead">don.olmstead</who>
    <bug_when>2020-04-30 10:51:32 -0700</bug_when>
    <thetext>(In reply to Víctor M. Jáquez L. from comment #31)
&gt; (In reply to Don Olmstead from comment #29)
&gt; &gt; Comment on attachment 397849 [details]
&gt; &gt; Patch
&gt; &gt; 
&gt; &gt; r=me
&gt; &gt; 
&gt; &gt; In the future if you get a r+ with nits then you can just replace the NOBODY
&gt; &gt; (OOPS!) with the reviewers name and then ask for cq+.
&gt; 
&gt; Sorry. I should ask about it before uploading.
&gt; 
&gt; Thanks!

No worries I had no idea that you could do that when I started committing so figured I&apos;d mention it to you.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>393044</attachid>
            <date>2020-03-09 09:23:00 -0700</date>
            <delta_ts>2020-03-10 11:55:40 -0700</delta_ts>
            <desc>WIP Patch</desc>
            <filename>bug-208814-20200309172258.patch</filename>
            <type>text/plain</type>
            <size>27538</size>
            <attacher name="Víctor M. Jáquez L.">vjaquez</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjU4MTMxCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggY2EyYzZiNzJmYjY5NThm
ZTk5MThhYjdhNjQ0NWI0ODE1MGYzNmYxOC4uMzIyMjI4ZTFiMWEyOTNjMjliNjU2ZGM4MDRkNTVm
MmU4ZWEwZGQ5OCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE3IEBACisyMDIwLTAzLTA5ICBWw61j
dG9yIE1hbnVlbCBKw6FxdWV6IExlYWwgIDx2amFxdWV6QGlnYWxpYS5jb20+CisKKyAgICAgICAg
W0dQVVBdW0dUS10gY29tcGlsZSBHUFVQcm9jZXNzIGluIEdUSyBwb3J0CisgICAgICAgIGh0dHBz
Oi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMDg4MTQKKworICAgICAgICBSZXZp
ZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBXSVA6IGVuYWJsZSBHUFVQcm9jZXNz
IGluIFdlYktpdEdUSworCisgICAgICAgIE5vIG5ldyB0ZXN0IHJlcXVpcmVkLgorCisgICAgICAg
ICogSGVhZGVycy5jbWFrZTogQWRkZWQgbWlzc2luZyBoZWFkZXJzIHRvIGNvbXBpbGUgR1BVUHJv
Y2VzcyBpbgorICAgICAgICBXZWJLaXRHVEsuCisKIDIwMjAtMDMtMDcgIERhcmluIEFkbGVyICA8
ZGFyaW5AYXBwbGUuY29tPgogCiAgICAgICAgIEJlZ2luIG1vdmluZyBvZmYgb2YgbGl2ZSByYW5n
ZXMgZm9yIFdlYktpdCBpbnRlcm5hbHMKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvQ2hhbmdl
TG9nIGIvU291cmNlL1dlYktpdC9DaGFuZ2VMb2cKaW5kZXggODAwOTg2YmM5M2JiZGI5OWFhODQz
OWQ0MjczZWUyYmQ2YjY4Y2U0My4uYmVjODQ1NjEzMzFlYTc5N2I0ZWRjMjQwMDIzYTcyNWE3MzFm
NmJjMSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dl
YktpdC9DaGFuZ2VMb2cKQEAgLTEsMyArMSw0MCBAQAorMjAyMC0wMy0wOSAgVsOtY3RvciBNYW51
ZWwgSsOhcXVleiBMZWFsICA8dmphcXVlekBpZ2FsaWEuY29tPgorCisgICAgICAgIFtHUFVQXVtH
VEtdIGNvbXBpbGUgR1BVUHJvY2VzcyBpbiBHVEsgcG9ydAorICAgICAgICBodHRwczovL2J1Z3Mu
d2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjA4ODE0CisKKyAgICAgICAgUmV2aWV3ZWQgYnkg
Tk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgV0lQOiBlbmFibGUgR1BVUHJvY2VzcyBpbiBXZWJL
aXRHVEsuCisKKyAgICAgICAgKiBDTWFrZUxpc3RzLnR4dDogSW5jbHVkZSBtaXNzaW5nIEdQVVBy
b2Nlc3MgZGlyZWN0b3JpZXMgYW5kCisgICAgICAgIG1lc3NhZ2VzIGZpbGVzLgorICAgICAgICAq
IEdQVVByb2Nlc3MvR1BVQ29ubmVjdGlvblRvV2ViUHJvY2Vzcy5jcHA6IEd1YXJkIGhlYWRlcgor
ICAgICAgICBpbmNsdXNpb24uCisgICAgICAgIChXZWJLaXQ6OkdQVUNvbm5lY3Rpb25Ub1dlYlBy
b2Nlc3M6OmRpc3BhdGNoTWVzc2FnZSk6CisgICAgICAgIChXZWJLaXQ6OkdQVUNvbm5lY3Rpb25U
b1dlYlByb2Nlc3M6OmRpc3BhdGNoU3luY01lc3NhZ2UpOgorICAgICAgICAqIEdQVVByb2Nlc3Mv
R1BVUHJvY2Vzcy5jcHA6IEd1YXJkIGhlYWRlciBpbmNsdXNpb24gYW5kIGNvZGUuCisgICAgICAg
ICogR1BVUHJvY2Vzcy9tZWRpYS9SZW1vdGVNZWRpYVBsYXllclByb3h5LmNwcDogZGl0dG8uCisg
ICAgICAgIChXZWJLaXQ6OlJlbW90ZU1lZGlhUGxheWVyUHJveHk6OmdldENvbmZpZ3VyYXRpb24p
OgorICAgICAgICAoV2ViS2l0OjpSZW1vdGVNZWRpYVBsYXllclByb3h5OjpzZXRWaWRlb0Z1bGxz
Y3JlZW5HcmF2aXR5KToKKyAgICAgICAgKFdlYktpdDo6UmVtb3RlTWVkaWFQbGF5ZXJQcm94eTo6
YWNjZWxlcmF0ZWRSZW5kZXJpbmdTdGF0ZUNoYW5nZWQpOgorICAgICAgICAqIEdQVVByb2Nlc3Mv
bWVkaWEvUmVtb3RlTWVkaWFQbGF5ZXJQcm94eS5oOiBkaXR0by4KKyAgICAgICAgKiBHUFVQcm9j
ZXNzL21lZGlhL1JlbW90ZU1lZGlhUGxheWVyUHJveHkubWVzc2FnZXMuaW46IGRpdHRvLgorICAg
ICAgICAqIFVJUHJvY2Vzcy9HUFUvR1BVUHJvY2Vzc1Byb3h5Lmg6IGRpdHRvLgorICAgICAgICAq
IFdlYlByb2Nlc3MvR1BVL0dQVVByb2Nlc3NDb25uZWN0aW9uLmNwcDogZGl0dG8uCisgICAgICAg
IChXZWJLaXQ6OkdQVVByb2Nlc3NDb25uZWN0aW9uOjpkaXNwYXRjaE1lc3NhZ2UpOgorICAgICAg
ICAqIFdlYlByb2Nlc3MvR1BVL21lZGlhL01lZGlhUGxheWVyUHJpdmF0ZVJlbW90ZS5jcHA6IGRp
dHRvLgorICAgICAgICAoV2ViS2l0OjpNZWRpYVBsYXllclByaXZhdGVSZW1vdGU6OnByZXBhcmVG
b3JQbGF5YmFjayk6CisgICAgICAgIChXZWJLaXQ6Ok1lZGlhUGxheWVyUHJpdmF0ZVJlbW90ZTo6
TWVkaWFQbGF5ZXJQcml2YXRlUmVtb3RlOjpsb2FkKToKKyAgICAgICAgKFdlYktpdDo6TWVkaWFQ
bGF5ZXJQcml2YXRlUmVtb3RlOjpjYW5QbGF5VG9XaXJlbGVzc1BsYXliYWNrVGFyZ2V0IGNvbnN0
KToKKyAgICAgICAgKFdlYktpdDo6TWVkaWFQbGF5ZXJQcml2YXRlUmVtb3RlOjp1cGRhdGVDYWNo
ZWRTdGF0ZSk6CisgICAgICAgIChXZWJLaXQ6Ok1lZGlhUGxheWVyUHJpdmF0ZVJlbW90ZTo6c2V0
VmlkZW9GdWxsc2NyZWVuTGF5ZXIpOgorICAgICAgICAqIFdlYlByb2Nlc3MvR1BVL21lZGlhL01l
ZGlhUGxheWVyUHJpdmF0ZVJlbW90ZS5oOiBkaXR0by4KKyAgICAgICAgKiBXZWJQcm9jZXNzL0dQ
VS9tZWRpYS9SZW1vdGVNZWRpYVBsYXllck1hbmFnZXIuY3BwOiBkaXR0by4KKyAgICAgICAgKFdl
YktpdDo6UmVtb3RlTWVkaWFQbGF5ZXJNYW5hZ2VyOjpjcmVhdGVSZW1vdGVNZWRpYVBsYXllcik6
CisgICAgICAgICogV2ViUHJvY2Vzcy9HUFUvbWVkaWEvVGV4dFRyYWNrUHJpdmF0ZVJlbW90ZS5o
OiBkaXR0by4KKyAgICAgICAgKiBXZWJQcm9jZXNzL0dQVS9tZWRpYS9WaWRlb0xheWVyUmVtb3Rl
Lmg6IGRpdHRvLgorCiAyMDIwLTAzLTA5ICBDYXJsb3MgR2FyY2lhIENhbXBvcyAgPGNnYXJjaWFA
aWdhbGlhLmNvbT4KIAogICAgICAgICBbR1RLXVtXUEVdIFN1cnJvdW5kaW5nIHRleHQgZm9yIGlu
cHV0IG1ldGhvZHMgc2hvdWxkIG5vdCBiZSBsaW1pdGVkIHRvIHRoZSBjdXJyZW50IHBhcmFncmFw
aApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvSGVhZGVycy5jbWFrZSBiL1NvdXJjZS9XZWJD
b3JlL0hlYWRlcnMuY21ha2UKaW5kZXggZWI4NTQ2MjBjOGQ0NGUwNDg0OGU1YjRlODQ5NDVkY2Rm
NDQ3YzBjNi4uNjMwMjk5MmYxNjE2MDEwMTliYjdhYThhMjY1YmIxNmU4YzFjZDlkNSAxMDA2NDQK
LS0tIGEvU291cmNlL1dlYkNvcmUvSGVhZGVycy5jbWFrZQorKysgYi9Tb3VyY2UvV2ViQ29yZS9I
ZWFkZXJzLmNtYWtlCkBAIC0xMTI4LDYgKzExMjgsNyBAQCBzZXQoV2ViQ29yZV9QUklWQVRFX0ZS
QU1FV09SS19IRUFERVJTCiAgICAgcGxhdGZvcm0vZ3JhcGhpY3MvSW1hZ2VTb3VyY2UuaAogICAg
IHBsYXRmb3JtL2dyYXBoaWNzL0ltYWdlVHlwZXMuaAogICAgIHBsYXRmb3JtL2dyYXBoaWNzL0lu
YmFuZEdlbmVyaWNDdWUuaAorICAgIHBsYXRmb3JtL2dyYXBoaWNzL0luYmFuZEdlbmVyaWNDdWVJ
ZGVudGlmaWVyLmgKICAgICBwbGF0Zm9ybS9ncmFwaGljcy9JbmJhbmRUZXh0VHJhY2tQcml2YXRl
LmgKICAgICBwbGF0Zm9ybS9ncmFwaGljcy9JbmJhbmRUZXh0VHJhY2tQcml2YXRlQ2xpZW50LmgK
ICAgICBwbGF0Zm9ybS9ncmFwaGljcy9JbmxpbmVQYXRoRGF0YS5oCkBAIC0xMTQyLDEyICsxMTQz
LDE0IEBAIHNldChXZWJDb3JlX1BSSVZBVEVfRlJBTUVXT1JLX0hFQURFUlMKICAgICBwbGF0Zm9y
bS9ncmFwaGljcy9MYXlvdXRSZWN0LmgKICAgICBwbGF0Zm9ybS9ncmFwaGljcy9MYXlvdXRTaXpl
LmgKICAgICBwbGF0Zm9ybS9ncmFwaGljcy9MZWdhY3lDRE1TZXNzaW9uLmgKKyAgICBwbGF0Zm9y
bS9ncmFwaGljcy9NSU1FVHlwZUNhY2hlLmgKICAgICBwbGF0Zm9ybS9ncmFwaGljcy9NZWRpYVBs
YXliYWNrVGFyZ2V0LmgKICAgICBwbGF0Zm9ybS9ncmFwaGljcy9NZWRpYVBsYXliYWNrVGFyZ2V0
Q2xpZW50LmgKICAgICBwbGF0Zm9ybS9ncmFwaGljcy9NZWRpYVBsYXliYWNrVGFyZ2V0Q29udGV4
dC5oCiAgICAgcGxhdGZvcm0vZ3JhcGhpY3MvTWVkaWFQbGF5YmFja1RhcmdldFBpY2tlci5oCiAg
ICAgcGxhdGZvcm0vZ3JhcGhpY3MvTWVkaWFQbGF5ZXIuaAogICAgIHBsYXRmb3JtL2dyYXBoaWNz
L01lZGlhUGxheWVyRW51bXMuaAorICAgIHBsYXRmb3JtL2dyYXBoaWNzL01lZGlhUGxheWVyUHJp
dmF0ZS5oCiAgICAgcGxhdGZvcm0vZ3JhcGhpY3MvTmF0aXZlSW1hZ2UuaAogICAgIHBsYXRmb3Jt
L2dyYXBoaWNzL09wZW5HTEVTU2hpbXMuaAogICAgIHBsYXRmb3JtL2dyYXBoaWNzL09wZW5HTFNo
aW1zLmgKQEAgLTExOTEsNiArMTE5NCw3IEBAIHNldChXZWJDb3JlX1BSSVZBVEVfRlJBTUVXT1JL
X0hFQURFUlMKICAgICBwbGF0Zm9ybS9ncmFwaGljcy9pc28vSVNPU2NoZW1lSW5mb3JtYXRpb25C
b3guaAogICAgIHBsYXRmb3JtL2dyYXBoaWNzL2lzby9JU09TY2hlbWVUeXBlQm94LmgKICAgICBw
bGF0Zm9ybS9ncmFwaGljcy9pc28vSVNPVHJhY2tFbmNyeXB0aW9uQm94LmgKKyAgICBwbGF0Zm9y
bS9ncmFwaGljcy9pc28vSVNPVlRUQ3VlLmgKIAogICAgIHBsYXRmb3JtL2dyYXBoaWNzL2xpYndw
ZS9QbGF0Zm9ybURpc3BsYXlMaWJXUEUuaAogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L0NN
YWtlTGlzdHMudHh0IGIvU291cmNlL1dlYktpdC9DTWFrZUxpc3RzLnR4dAppbmRleCBjNTU4MTQ1
ZWNjZmU4YzFkMTM0ZDFmYTIyMWNlYWY0M2M0MDJjOGIyLi5kOGJiMzRlM2JkZmFmNWY3MTY3NjBh
YWE0OTkwZTFiNjcxOTk0MTQzIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L0NNYWtlTGlzdHMu
dHh0CisrKyBiL1NvdXJjZS9XZWJLaXQvQ01ha2VMaXN0cy50eHQKQEAgLTE3LDYgKzE3LDkgQEAg
c2V0KFdlYktpdF9JTkNMVURFX0RJUkVDVE9SSUVTCiAgICAgIiR7V2ViS2l0X0RFUklWRURfU09V
UkNFU19ESVJ9L2luY2x1ZGUiCiAgICAgIiR7V0VCS0lUX0RJUn0iCiAgICAgIiR7V0VCS0lUX0RJ
Un0vR1BVUHJvY2VzcyIKKyAgICAiJHtXRUJLSVRfRElSfS9HUFVQcm9jZXNzL2dyYXBoaWNzIgor
ICAgICIke1dFQktJVF9ESVJ9L0dQVVByb2Nlc3MvbWVkaWEiCisgICAgIiR7V0VCS0lUX0RJUn0v
R1BVUHJvY2Vzcy93ZWJydGMiCiAgICAgIiR7V0VCS0lUX0RJUn0vTmV0d29ya1Byb2Nlc3MiCiAg
ICAgIiR7V0VCS0lUX0RJUn0vTmV0d29ya1Byb2Nlc3MvQ2xhc3NpZmllciIKICAgICAiJHtXRUJL
SVRfRElSfS9OZXR3b3JrUHJvY2Vzcy9Db29raWVzIgpAQCAtMTE2LDYgKzExOSwyMSBAQCBsaXN0
KEFQUEVORCBXZWJLaXRfVU5JRklFRF9TT1VSQ0VfTElTVF9GSUxFUwogKQogCiBzZXQoV2ViS2l0
X01FU1NBR0VTX0lOX0ZJTEVTCisgICAgR1BVUHJvY2Vzcy9HUFVDb25uZWN0aW9uVG9XZWJQcm9j
ZXNzLm1lc3NhZ2VzLmluCisgICAgR1BVUHJvY2Vzcy9HUFVQcm9jZXNzLm1lc3NhZ2VzLmluCisK
KyAgICBHUFVQcm9jZXNzL21lZGlhL1JlbW90ZU1lZGlhUGxheWVyTWFuYWdlclByb3h5Lm1lc3Nh
Z2VzLmluCisgICAgR1BVUHJvY2Vzcy9tZWRpYS9SZW1vdGVNZWRpYVBsYXllclByb3h5Lm1lc3Nh
Z2VzLmluCisgICAgR1BVUHJvY2Vzcy9tZWRpYS9SZW1vdGVNZWRpYVJlc291cmNlTWFuYWdlci5t
ZXNzYWdlcy5pbgorCisgICAgR1BVUHJvY2Vzcy93ZWJydGMvTGliV2ViUlRDQ29kZWNzUHJveHku
bWVzc2FnZXMuaW4KKyAgICBHUFVQcm9jZXNzL3dlYnJ0Yy9SZW1vdGVBdWRpb01lZGlhU3RyZWFt
VHJhY2tSZW5kZXJlci5tZXNzYWdlcy5pbgorICAgIEdQVVByb2Nlc3Mvd2VicnRjL1JlbW90ZUF1
ZGlvTWVkaWFTdHJlYW1UcmFja1JlbmRlcmVyTWFuYWdlci5tZXNzYWdlcy5pbgorICAgIEdQVVBy
b2Nlc3Mvd2VicnRjL1JlbW90ZU1lZGlhUmVjb3JkZXIubWVzc2FnZXMuaW4KKyAgICBHUFVQcm9j
ZXNzL3dlYnJ0Yy9SZW1vdGVNZWRpYVJlY29yZGVyTWFuYWdlci5tZXNzYWdlcy5pbgorICAgIEdQ
VVByb2Nlc3Mvd2VicnRjL1JlbW90ZVNhbXBsZUJ1ZmZlckRpc3BsYXlMYXllci5tZXNzYWdlcy5p
bgorICAgIEdQVVByb2Nlc3Mvd2VicnRjL1JlbW90ZVNhbXBsZUJ1ZmZlckRpc3BsYXlMYXllck1h
bmFnZXIubWVzc2FnZXMuaW4KKwogICAgIE5ldHdvcmtQcm9jZXNzL0Nvb2tpZXMvV2ViQ29va2ll
TWFuYWdlci5tZXNzYWdlcy5pbgogCiAgICAgTmV0d29ya1Byb2Nlc3MvSW5kZXhlZERCL1dlYklE
QlNlcnZlci5tZXNzYWdlcy5pbgpAQCAtMTY1LDYgKzE4Myw4IEBAIHNldChXZWJLaXRfTUVTU0FH
RVNfSU5fRklMRVMKIAogICAgIFVJUHJvY2Vzcy9Eb3dubG9hZHMvRG93bmxvYWRQcm94eS5tZXNz
YWdlcy5pbgogCisgICAgVUlQcm9jZXNzL0dQVS9HUFVQcm9jZXNzUHJveHkubWVzc2FnZXMuaW4K
KwogICAgIFVJUHJvY2Vzcy9JbnNwZWN0b3IvUmVtb3RlV2ViSW5zcGVjdG9yUHJveHkubWVzc2Fn
ZXMuaW4KICAgICBVSVByb2Nlc3MvSW5zcGVjdG9yL1dlYkluc3BlY3RvclByb3h5Lm1lc3NhZ2Vz
LmluCiAKQEAgLTE4Miw2ICsyMDIsMTUgQEAgc2V0KFdlYktpdF9NRVNTQUdFU19JTl9GSUxFUwog
CiAgICAgV2ViUHJvY2Vzcy9GdWxsU2NyZWVuL1dlYkZ1bGxTY3JlZW5NYW5hZ2VyLm1lc3NhZ2Vz
LmluCiAKKyAgICBXZWJQcm9jZXNzL0dQVS9HUFVQcm9jZXNzQ29ubmVjdGlvbi5tZXNzYWdlcy5p
bgorCisgICAgV2ViUHJvY2Vzcy9HUFUvbWVkaWEvTWVkaWFQbGF5ZXJQcml2YXRlUmVtb3RlLm1l
c3NhZ2VzLmluCisgICAgV2ViUHJvY2Vzcy9HUFUvbWVkaWEvUmVtb3RlTWVkaWFQbGF5ZXJNYW5h
Z2VyLm1lc3NhZ2VzLmluCisgICAgV2ViUHJvY2Vzcy9HUFUvbWVkaWEvVGV4dFRyYWNrUHJpdmF0
ZVJlbW90ZS5tZXNzYWdlcy5pbgorCisgICAgV2ViUHJvY2Vzcy9HUFUvd2VicnRjL0xpYldlYlJU
Q0NvZGVjcy5tZXNzYWdlcy5pbgorICAgIFdlYlByb2Nlc3MvR1BVL3dlYnJ0Yy9TYW1wbGVCdWZm
ZXJEaXNwbGF5TGF5ZXIubWVzc2FnZXMuaW4KKwogICAgIFdlYlByb2Nlc3MvR2VvbG9jYXRpb24v
V2ViR2VvbG9jYXRpb25NYW5hZ2VyLm1lc3NhZ2VzLmluCiAKICAgICBXZWJQcm9jZXNzL0luc3Bl
Y3Rvci9SZW1vdGVXZWJJbnNwZWN0b3JVSS5tZXNzYWdlcy5pbgpkaWZmIC0tZ2l0IGEvU291cmNl
L1dlYktpdC9HUFVQcm9jZXNzL0dQVUNvbm5lY3Rpb25Ub1dlYlByb2Nlc3MuY3BwIGIvU291cmNl
L1dlYktpdC9HUFVQcm9jZXNzL0dQVUNvbm5lY3Rpb25Ub1dlYlByb2Nlc3MuY3BwCmluZGV4IGJk
N2QwN2YwZDM1NjljOWYwM2FlZWVhNTY2NjI5MjhmMjZiMDA2OWUuLjM3Y2JiMGY5MTc0ZGEzMzQy
ZGExMWRhN2M2NjY1ZWFjYjBlMGQyZWIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvR1BVUHJv
Y2Vzcy9HUFVDb25uZWN0aW9uVG9XZWJQcm9jZXNzLmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0L0dQ
VVByb2Nlc3MvR1BVQ29ubmVjdGlvblRvV2ViUHJvY2Vzcy5jcHAKQEAgLTQyLDcgKzQyLDYgQEAK
ICNpbmNsdWRlICJSZW1vdGVBdWRpb01lZGlhU3RyZWFtVHJhY2tSZW5kZXJlck1hbmFnZXIuaCIK
ICNpbmNsdWRlICJSZW1vdGVBdWRpb01lZGlhU3RyZWFtVHJhY2tSZW5kZXJlck1hbmFnZXJNZXNz
YWdlcy5oIgogI2luY2x1ZGUgIlJlbW90ZUF1ZGlvTWVkaWFTdHJlYW1UcmFja1JlbmRlcmVyTWVz
c2FnZXMuaCIKLSNpbmNsdWRlICJSZW1vdGVMYXllclRyZWVEcmF3aW5nQXJlYVByb3h5TWVzc2Fn
ZXMuaCIKICNpbmNsdWRlICJSZW1vdGVNZWRpYVBsYXllck1hbmFnZXJQcm94eS5oIgogI2luY2x1
ZGUgIlJlbW90ZU1lZGlhUGxheWVyTWFuYWdlclByb3h5TWVzc2FnZXMuaCIKICNpbmNsdWRlICJS
ZW1vdGVNZWRpYVBsYXllclByb3h5LmgiCkBAIC01Niw4ICs1NSw2IEBACiAjaW5jbHVkZSAiUmVt
b3RlU2FtcGxlQnVmZmVyRGlzcGxheUxheWVyTWFuYWdlck1lc3NhZ2VzLmgiCiAjaW5jbHVkZSAi
UmVtb3RlU2FtcGxlQnVmZmVyRGlzcGxheUxheWVyTWVzc2FnZXMuaCIKICNpbmNsdWRlICJSZW1v
dGVTY3JvbGxpbmdDb29yZGluYXRvclRyYW5zYWN0aW9uLmgiCi0jaW5jbHVkZSAiVXNlck1lZGlh
Q2FwdHVyZU1hbmFnZXJQcm94eS5oIgotI2luY2x1ZGUgIlVzZXJNZWRpYUNhcHR1cmVNYW5hZ2Vy
UHJveHlNZXNzYWdlcy5oIgogI2luY2x1ZGUgIldlYkNvcmVBcmd1bWVudENvZGVycy5oIgogI2lu
Y2x1ZGUgIldlYkVycm9ycy5oIgogI2luY2x1ZGUgIldlYlByb2Nlc3NNZXNzYWdlcy5oIgpAQCAt
NjUsNiArNjIsOSBAQAogI2luY2x1ZGUgPFdlYkNvcmUvTm93UGxheWluZ01hbmFnZXIuaD4KIAog
I2lmIFBMQVRGT1JNKENPQ09BKQorI2luY2x1ZGUgIlJlbW90ZUxheWVyVHJlZURyYXdpbmdBcmVh
UHJveHlNZXNzYWdlcy5oIgorI2luY2x1ZGUgIlVzZXJNZWRpYUNhcHR1cmVNYW5hZ2VyUHJveHku
aCIKKyNpbmNsdWRlICJVc2VyTWVkaWFDYXB0dXJlTWFuYWdlclByb3h5TWVzc2FnZXMuaCIKICNp
bmNsdWRlIDxXZWJDb3JlL01lZGlhU2Vzc2lvbk1hbmFnZXJDb2NvYS5oPgogI2luY2x1ZGUgPFdl
YkNvcmUvTWVkaWFTZXNzaW9uTWFuYWdlcklPUy5oPgogI2VuZGlmCkBAIC0zNDIsNyArMzQyLDcg
QEAgYm9vbCBHUFVDb25uZWN0aW9uVG9XZWJQcm9jZXNzOjpkaXNwYXRjaE1lc3NhZ2UoSVBDOjpD
b25uZWN0aW9uJiBjb25uZWN0aW9uLCBJUEMKICAgICAgICAgcmVtb3RlTWVkaWFSZXNvdXJjZU1h
bmFnZXIoKS5kaWRSZWNlaXZlTWVzc2FnZShjb25uZWN0aW9uLCBkZWNvZGVyKTsKICAgICAgICAg
cmV0dXJuIHRydWU7CiAgICAgfQotI2lmIEVOQUJMRShNRURJQV9TVFJFQU0pCisjaWYgUExBVEZP
Uk0oQ09DT0EpICYmIEVOQUJMRShNRURJQV9TVFJFQU0pCiAgICAgaWYgKGRlY29kZXIubWVzc2Fn
ZVJlY2VpdmVyTmFtZSgpID09IE1lc3NhZ2VzOjpVc2VyTWVkaWFDYXB0dXJlTWFuYWdlclByb3h5
OjptZXNzYWdlUmVjZWl2ZXJOYW1lKCkpIHsKICAgICAgICAgdXNlck1lZGlhQ2FwdHVyZU1hbmFn
ZXJQcm94eSgpLmRpZFJlY2VpdmVNZXNzYWdlRnJvbUdQVVByb2Nlc3MoY29ubmVjdGlvbiwgZGVj
b2Rlcik7CiAgICAgICAgIHJldHVybiB0cnVlOwpAQCAtMzU1LDcgKzM1NSw3IEBAIGJvb2wgR1BV
Q29ubmVjdGlvblRvV2ViUHJvY2Vzczo6ZGlzcGF0Y2hNZXNzYWdlKElQQzo6Q29ubmVjdGlvbiYg
Y29ubmVjdGlvbiwgSVBDCiAgICAgICAgIG1lZGlhUmVjb3JkZXJNYW5hZ2VyKCkuZGlkUmVjZWl2
ZVJlbW90ZU1lZGlhUmVjb3JkZXJNZXNzYWdlKGNvbm5lY3Rpb24sIGRlY29kZXIpOwogICAgICAg
ICByZXR1cm4gdHJ1ZTsKICAgICB9Ci0jaWYgUExBVEZPUk0oQ09DT0EpICYmIEVOQUJMRShWSURF
T19UUkFDSykKKyNpZiBFTkFCTEUoVklERU9fVFJBQ0spCiAgICAgaWYgKGRlY29kZXIubWVzc2Fn
ZVJlY2VpdmVyTmFtZSgpID09IE1lc3NhZ2VzOjpSZW1vdGVBdWRpb01lZGlhU3RyZWFtVHJhY2tS
ZW5kZXJlck1hbmFnZXI6Om1lc3NhZ2VSZWNlaXZlck5hbWUoKSkgewogICAgICAgICBhdWRpb1Ry
YWNrUmVuZGVyZXJNYW5hZ2VyKCkuZGlkUmVjZWl2ZU1lc3NhZ2VGcm9tV2ViUHJvY2Vzcyhjb25u
ZWN0aW9uLCBkZWNvZGVyKTsKICAgICAgICAgcmV0dXJuIHRydWU7CkBAIC00MzEsMTIgKzQzMSwx
MiBAQCBib29sIEdQVUNvbm5lY3Rpb25Ub1dlYlByb2Nlc3M6OmRpc3BhdGNoU3luY01lc3NhZ2Uo
SVBDOjpDb25uZWN0aW9uJiBjb25uZWN0aW9uLAogICAgICAgICByZW1vdGVNZWRpYVBsYXllck1h
bmFnZXJQcm94eSgpLmRpZFJlY2VpdmVTeW5jUGxheWVyTWVzc2FnZShjb25uZWN0aW9uLCBkZWNv
ZGVyLCByZXBseUVuY29kZXIpOwogICAgICAgICByZXR1cm4gdHJ1ZTsKICAgICB9Ci0jaWYgRU5B
QkxFKE1FRElBX1NUUkVBTSkKKyNpZiBQTEFURk9STShDT0NPQSkgJiZFTkFCTEUoTUVESUFfU1RS
RUFNKQogICAgIGlmIChkZWNvZGVyLm1lc3NhZ2VSZWNlaXZlck5hbWUoKSA9PSBNZXNzYWdlczo6
VXNlck1lZGlhQ2FwdHVyZU1hbmFnZXJQcm94eTo6bWVzc2FnZVJlY2VpdmVyTmFtZSgpKSB7CiAg
ICAgICAgIHVzZXJNZWRpYUNhcHR1cmVNYW5hZ2VyUHJveHkoKS5kaWRSZWNlaXZlU3luY01lc3Nh
Z2VGcm9tR1BVUHJvY2Vzcyhjb25uZWN0aW9uLCBkZWNvZGVyLCByZXBseUVuY29kZXIpOwogICAg
ICAgICByZXR1cm4gdHJ1ZTsKICAgICB9Ci0jaWYgUExBVEZPUk0oQ09DT0EpICYmIEVOQUJMRShW
SURFT19UUkFDSykKKyNpZiBFTkFCTEUoVklERU9fVFJBQ0spCiAgICAgaWYgKGRlY29kZXIubWVz
c2FnZVJlY2VpdmVyTmFtZSgpID09IE1lc3NhZ2VzOjpSZW1vdGVTYW1wbGVCdWZmZXJEaXNwbGF5
TGF5ZXJNYW5hZ2VyOjptZXNzYWdlUmVjZWl2ZXJOYW1lKCkpIHsKICAgICAgICAgc2FtcGxlQnVm
ZmVyRGlzcGxheUxheWVyTWFuYWdlcigpLmRpZFJlY2VpdmVTeW5jTWVzc2FnZUZyb21XZWJQcm9j
ZXNzKGNvbm5lY3Rpb24sIGRlY29kZXIsIHJlcGx5RW5jb2Rlcik7CiAgICAgICAgIHJldHVybiB0
cnVlOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9HUFVQcm9jZXNzL0dQVVByb2Nlc3MuY3Bw
IGIvU291cmNlL1dlYktpdC9HUFVQcm9jZXNzL0dQVVByb2Nlc3MuY3BwCmluZGV4IDk2ZmE5NTI3
YzM4NTVjZjliNDVhNTU3ODNiODMzOTM1ZjVjMGVkOGIuLmZmMzcwMzM2OWYxY2U0NGYzZTVlY2Mz
YmI4NWZlNjNkODUyNjYzZjEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvR1BVUHJvY2Vzcy9H
UFVQcm9jZXNzLmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0L0dQVVByb2Nlc3MvR1BVUHJvY2Vzcy5j
cHAKQEAgLTQxLDcgKzQxLDYgQEAKICNpbmNsdWRlICJXZWJQcm9jZXNzUG9vbE1lc3NhZ2VzLmgi
CiAjaW5jbHVkZSA8V2ViQ29yZS9EZXByZWNhdGVkR2xvYmFsU2V0dGluZ3MuaD4KICNpbmNsdWRl
IDxXZWJDb3JlL0xvZ0luaXRpYWxpemF0aW9uLmg+Ci0jaW5jbHVkZSA8V2ViQ29yZS9Nb2NrQXVk
aW9TaGFyZWRVbml0Lmg+CiAjaW5jbHVkZSA8V2ViQ29yZS9Ob3dQbGF5aW5nTWFuYWdlci5oPgog
I2luY2x1ZGUgPFdlYkNvcmUvUnVudGltZUFwcGxpY2F0aW9uQ2hlY2tzLmg+CiAjaW5jbHVkZSA8
d3RmL0FsZ29yaXRobXMuaD4KQEAgLTU2LDYgKzU1LDEwIEBACiAjaW5jbHVkZSAiUmVtb3RlQXVk
aW9TZXNzaW9uUHJveHlNYW5hZ2VyLmgiCiAjZW5kaWYKIAorI2lmIFBMQVRGT1JNKENPQ09BKQor
I2luY2x1ZGUgPFdlYkNvcmUvTW9ja0F1ZGlvU2hhcmVkVW5pdC5oPgorI2VuZGlmCisKIG5hbWVz
cGFjZSBXZWJLaXQgewogdXNpbmcgbmFtZXNwYWNlIFdlYkNvcmU7CiAKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJLaXQvR1BVUHJvY2Vzcy9tZWRpYS9SZW1vdGVNZWRpYVBsYXllclByb3h5LmNwcCBi
L1NvdXJjZS9XZWJLaXQvR1BVUHJvY2Vzcy9tZWRpYS9SZW1vdGVNZWRpYVBsYXllclByb3h5LmNw
cAppbmRleCA3ODRkMjQwOWM4M2U5YTdmNjA4NmM3MDIyODFlMWQyOTVjOTM1YzRlLi42OWM2ODA5
ZGQwOTQ4MTMzYWM2OTFlZmJlNThlOWZjMjIxNjU4Nzg5IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2Vi
S2l0L0dQVVByb2Nlc3MvbWVkaWEvUmVtb3RlTWVkaWFQbGF5ZXJQcm94eS5jcHAKKysrIGIvU291
cmNlL1dlYktpdC9HUFVQcm9jZXNzL21lZGlhL1JlbW90ZU1lZGlhUGxheWVyUHJveHkuY3BwCkBA
IC0zMCw3ICszMCw2IEBACiAKICNpbmNsdWRlICJEYXRhUmVmZXJlbmNlLmgiCiAjaW5jbHVkZSAi
R1BVQ29ubmVjdGlvblRvV2ViUHJvY2Vzcy5oIgotI2luY2x1ZGUgIkxheWVySG9zdGluZ0NvbnRl
eHQuaCIKICNpbmNsdWRlICJNZWRpYVBsYXllclByaXZhdGVSZW1vdGVNZXNzYWdlcy5oIgogI2lu
Y2x1ZGUgIlJlbW90ZUF1ZGlvVHJhY2tQcm94eS5oIgogI2luY2x1ZGUgIlJlbW90ZUxlZ2FjeUNE
TUZhY3RvcnlQcm94eS5oIgpAQCAtMTAzLDcgKzEwMiw5IEBAIHZvaWQgUmVtb3RlTWVkaWFQbGF5
ZXJQcm94eTo6Z2V0Q29uZmlndXJhdGlvbihSZW1vdGVNZWRpYVBsYXllckNvbmZpZ3VyYXRpb24m
IGNvCiAgICAgY29uZmlndXJhdGlvbi5zdXBwb3J0c0Z1bGxzY3JlZW4gPSBtX3BsYXllci0+c3Vw
cG9ydHNGdWxsc2NyZWVuKCk7CiAgICAgY29uZmlndXJhdGlvbi5zdXBwb3J0c1BpY3R1cmVJblBp
Y3R1cmUgPSBtX3BsYXllci0+c3VwcG9ydHNQaWN0dXJlSW5QaWN0dXJlKCk7CiAgICAgY29uZmln
dXJhdGlvbi5zdXBwb3J0c0FjY2VsZXJhdGVkUmVuZGVyaW5nID0gbV9wbGF5ZXItPnN1cHBvcnRz
QWNjZWxlcmF0ZWRSZW5kZXJpbmcoKTsKKyNpZiBFTkFCTEUoV0lSRUxFU1NfUExBWUJBQ0tfVEFS
R0VUKQogICAgIGNvbmZpZ3VyYXRpb24uY2FuUGxheVRvV2lyZWxlc3NQbGF5YmFja1RhcmdldCA9
IG1fcGxheWVyLT5jYW5QbGF5VG9XaXJlbGVzc1BsYXliYWNrVGFyZ2V0KCk7CisjZW5kaWYKICAg
ICBjb25maWd1cmF0aW9uLnNob3VsZElnbm9yZUludHJpbnNpY1NpemUgPSBtX3BsYXllci0+c2hv
dWxkSWdub3JlSW50cmluc2ljU2l6ZSgpOwogfQogCkBAIC0xOTksMTAgKzIwMCwxMiBAQCB2b2lk
IFJlbW90ZU1lZGlhUGxheWVyUHJveHk6OnNldFNob3VsZE1haW50YWluQXNwZWN0UmF0aW8oYm9v
bCBtYWludGFpblJhdGlvKQogICAgIG1fcGxheWVyLT5zZXRTaG91bGRNYWludGFpbkFzcGVjdFJh
dGlvKG1haW50YWluUmF0aW8pOwogfQogCisjaWYgUExBVEZPUk0oSU9TX0ZBTUlMWSkgfHwgKFBM
QVRGT1JNKE1BQykgJiYgRU5BQkxFKFZJREVPX1BSRVNFTlRBVElPTl9NT0RFKSkKIHZvaWQgUmVt
b3RlTWVkaWFQbGF5ZXJQcm94eTo6c2V0VmlkZW9GdWxsc2NyZWVuR3Jhdml0eShXZWJDb3JlOjpN
ZWRpYVBsYXllckVudW1zOjpWaWRlb0dyYXZpdHkgZ3Jhdml0eSkKIHsKICAgICBtX3BsYXllci0+
c2V0VmlkZW9GdWxsc2NyZWVuR3Jhdml0eShncmF2aXR5KTsKIH0KKyNlbmRpZgogCiB2b2lkIFJl
bW90ZU1lZGlhUGxheWVyUHJveHk6OmFjY2VsZXJhdGVkUmVuZGVyaW5nU3RhdGVDaGFuZ2VkKGJv
b2wgcmVuZGVyaW5nQ2FuQmVBY2NlbGVyYXRlZCkKIHsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJL
aXQvR1BVUHJvY2Vzcy9tZWRpYS9SZW1vdGVNZWRpYVBsYXllclByb3h5LmggYi9Tb3VyY2UvV2Vi
S2l0L0dQVVByb2Nlc3MvbWVkaWEvUmVtb3RlTWVkaWFQbGF5ZXJQcm94eS5oCmluZGV4IDg2MDE4
NTRkODI4NjZkYjU0MDk2ZmZjNzEwY2U1NjVkMTE0MDVjMjkuLmIyODg3NWY3OTIxNWIxNTA5Yjc5
YjRmNDUyNzQ5NmMzMzFkOGMwZTMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvR1BVUHJvY2Vz
cy9tZWRpYS9SZW1vdGVNZWRpYVBsYXllclByb3h5LmgKKysrIGIvU291cmNlL1dlYktpdC9HUFVQ
cm9jZXNzL21lZGlhL1JlbW90ZU1lZGlhUGxheWVyUHJveHkuaApAQCAtNjQsMTIgKzY0LDE1IEBA
IGNsYXNzIFZpZGVvVHJhY2tQcml2YXRlOwogbmFtZXNwYWNlIFdlYktpdCB7CiAKIHVzaW5nIExh
eWVySG9zdGluZ0NvbnRleHRJRCA9IHVpbnQzMl90OwotY2xhc3MgTGF5ZXJIb3N0aW5nQ29udGV4
dDsKIGNsYXNzIFJlbW90ZUF1ZGlvVHJhY2tQcm94eTsKIGNsYXNzIFJlbW90ZU1lZGlhUGxheWVy
TWFuYWdlclByb3h5OwogY2xhc3MgUmVtb3RlVGV4dFRyYWNrUHJveHk7CiBjbGFzcyBSZW1vdGVW
aWRlb1RyYWNrUHJveHk7CiAKKyNpZiBQTEFURk9STShDT0NPQSkKK2NsYXNzIExheWVySG9zdGlu
Z0NvbnRleHQ7CisjZW5kaWYKKwogY2xhc3MgUmVtb3RlTWVkaWFQbGF5ZXJQcm94eSBmaW5hbAog
ICAgIDogcHVibGljIENhbk1ha2VXZWFrUHRyPFJlbW90ZU1lZGlhUGxheWVyUHJveHk+CiAgICAg
LCBwdWJsaWMgV2ViQ29yZTo6TWVkaWFQbGF5ZXJDbGllbnQKQEAgLTEyNCw4ICsxMjcsMTAgQEAg
cHVibGljOgogICAgIHZvaWQgc2V0U2hvdWxkTWFpbnRhaW5Bc3BlY3RSYXRpbyhib29sKTsKICAg
ICB2b2lkIGVudGVyRnVsbHNjcmVlbihDb21wbGV0aW9uSGFuZGxlcjx2b2lkKCk+JiYpOwogICAg
IHZvaWQgZXhpdEZ1bGxzY3JlZW4oQ29tcGxldGlvbkhhbmRsZXI8dm9pZCgpPiYmKTsKKyNpZiBQ
TEFURk9STShJT1NfRkFNSUxZKSB8fCAoUExBVEZPUk0oTUFDKSAmJiBFTkFCTEUoVklERU9fUFJF
U0VOVEFUSU9OX01PREUpKQogICAgIHZvaWQgc2V0VmlkZW9GdWxsc2NyZWVuRnJhbWVGZW5jZWQo
Y29uc3QgV2ViQ29yZTo6RmxvYXRSZWN0JiwgY29uc3QgV1RGOjpNYWNoU2VuZFJpZ2h0Jik7CiAg
ICAgdm9pZCBzZXRWaWRlb0Z1bGxzY3JlZW5HcmF2aXR5KFdlYkNvcmU6Ok1lZGlhUGxheWVyRW51
bXM6OlZpZGVvR3Jhdml0eSk7CisjZW5kaWYKICAgICB2b2lkIGFjY2VsZXJhdGVkUmVuZGVyaW5n
U3RhdGVDaGFuZ2VkKGJvb2wpOwogICAgIHZvaWQgc2V0U2hvdWxkRGlzYWJsZVNsZWVwKGJvb2wp
OwogICAgIHZvaWQgc2V0UmF0ZShkb3VibGUpOwpAQCAtMjE5LDcgKzIyNCw5IEBAIHByaXZhdGU6
CiAgICAgdm9pZCBtZWRpYVBsYXllcldhaXRpbmdGb3JLZXlDaGFuZ2VkKCkgZmluYWw7CiAjZW5k
aWYKIAorI2lmIEVOQUJMRShXSVJFTEVTU19QTEFZQkFDS19UQVJHRVQpCiAgICAgdm9pZCBtZWRp
YVBsYXllckN1cnJlbnRQbGF5YmFja1RhcmdldElzV2lyZWxlc3NDaGFuZ2VkKGJvb2wpIGZpbmFs
OworI2VuZGlmCiAKICAgICBTdHJpbmcgbWVkaWFQbGF5ZXJSZWZlcnJlcigpIGNvbnN0IGZpbmFs
OwogICAgIFN0cmluZyBtZWRpYVBsYXllclVzZXJBZ2VudCgpIGNvbnN0IGZpbmFsOwpAQCAtMjc5
LDggKzI4Niw2IEBAIHByaXZhdGU6CiAgICAgUmVmUHRyPFNhbmRib3hFeHRlbnNpb24+IG1fc2Fu
ZGJveEV4dGVuc2lvbjsKICAgICBSZWY8SVBDOjpDb25uZWN0aW9uPiBtX3dlYlByb2Nlc3NDb25u
ZWN0aW9uOwogICAgIFJlZlB0cjxXZWJDb3JlOjpNZWRpYVBsYXllcj4gbV9wbGF5ZXI7Ci0gICAg
c3RkOjp1bmlxdWVfcHRyPExheWVySG9zdGluZ0NvbnRleHQ+IG1faW5saW5lTGF5ZXJIb3N0aW5n
Q29udGV4dDsKLSAgICBzdGQ6OnVuaXF1ZV9wdHI8TGF5ZXJIb3N0aW5nQ29udGV4dD4gbV9mdWxs
c2NyZWVuTGF5ZXJIb3N0aW5nQ29udGV4dDsKICAgICBSZW1vdGVNZWRpYVBsYXllck1hbmFnZXJQ
cm94eSYgbV9tYW5hZ2VyOwogICAgIFdlYkNvcmU6Ok1lZGlhUGxheWVyRW51bXM6Ok1lZGlhRW5n
aW5lSWRlbnRpZmllciBtX2VuZ2luZUlkZW50aWZpZXI7CiAgICAgVmVjdG9yPFdlYkNvcmU6OkNv
bnRlbnRUeXBlPiBtX3R5cGVzUmVxdWlyaW5nSGFyZHdhcmVTdXBwb3J0OwpAQCAtMjk5LDYgKzMw
NCwxMCBAQCBwcml2YXRlOgogICAgIGJvb2wgbV9zaG91bGRDb250aW51ZUFmdGVyS2V5TmVlZGVk
IHsgZmFsc2UgfTsKICAgICBSZW1vdGVMZWdhY3lDRE1TZXNzaW9uSWRlbnRpZmllciBtX2xlZ2Fj
eVNlc3Npb247CiAjZW5kaWYKKyNpZiBQTEFURk9STShDT0NPQSkKKyAgICBzdGQ6OnVuaXF1ZV9w
dHI8TGF5ZXJIb3N0aW5nQ29udGV4dD4gbV9pbmxpbmVMYXllckhvc3RpbmdDb250ZXh0OworICAg
IHN0ZDo6dW5pcXVlX3B0cjxMYXllckhvc3RpbmdDb250ZXh0PiBtX2Z1bGxzY3JlZW5MYXllckhv
c3RpbmdDb250ZXh0OworI2VuZGlmCiAKICNpZiAhUkVMRUFTRV9MT0dfRElTQUJMRUQKICAgICBj
b25zdCBMb2dnZXImIG1fbG9nZ2VyOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9HUFVQcm9j
ZXNzL21lZGlhL1JlbW90ZU1lZGlhUGxheWVyUHJveHkubWVzc2FnZXMuaW4gYi9Tb3VyY2UvV2Vi
S2l0L0dQVVByb2Nlc3MvbWVkaWEvUmVtb3RlTWVkaWFQbGF5ZXJQcm94eS5tZXNzYWdlcy5pbgpp
bmRleCBjZWI2OGFlYjA3N2UwODExYTNhMmIyZDJhMDRkYzkzNGYwZjVhODYzLi4xOGZmN2YxYTlj
ZjExNThhYjMzZjdlMDMyZTI2ZDdmNjNiM2M0MjU5IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0
L0dQVVByb2Nlc3MvbWVkaWEvUmVtb3RlTWVkaWFQbGF5ZXJQcm94eS5tZXNzYWdlcy5pbgorKysg
Yi9Tb3VyY2UvV2ViS2l0L0dQVVByb2Nlc3MvbWVkaWEvUmVtb3RlTWVkaWFQbGF5ZXJQcm94eS5t
ZXNzYWdlcy5pbgpAQCAtMjQsNyArMjQsOSBAQAogI2lmIEVOQUJMRShHUFVfUFJPQ0VTUykKIAog
bWVzc2FnZXMgLT4gUmVtb3RlTWVkaWFQbGF5ZXJQcm94eSBOb3RSZWZDb3VudGVkIHsKKyNpZiBQ
TEFURk9STShDT0NPQSkKICAgICBQcmVwYXJlRm9yUGxheWJhY2soYm9vbCBwcml2YXRlTW9kZSwg
ZW51bTp1aW50OF90IFdlYkNvcmU6Ok1lZGlhUGxheWVyRW51bXM6OlByZWxvYWQgcHJlbG9hZCwg
Ym9vbCBwcmVzZXJ2ZXNQaXRjaCwgYm9vbCBwcmVwYXJlRm9yUmVuZGVyaW5nLCBmbG9hdCB2aWRl
b0NvbnRlbnRTY2FsZSkgLT4gKE9wdGlvbmFsPFdlYktpdDo6TGF5ZXJIb3N0aW5nQ29udGV4dElE
PiBpbmxpbmVMYXllckhvc3RpbmdDb250ZXh0SWQsIE9wdGlvbmFsPFdlYktpdDo6TGF5ZXJIb3N0
aW5nQ29udGV4dElEPiBmdWxsc2NyZWVuTGF5ZXJIb3N0aW5nQ29udGV4dElkKSBBc3luYworI2Vu
ZGlmCiAKICAgICBMb2FkKFVSTCB1cmwsIE9wdGlvbmFsPFdlYktpdDo6U2FuZGJveEV4dGVuc2lv
bjo6SGFuZGxlPiBzYW5kYm94RXh0ZW5zaW9uLCBXZWJDb3JlOjpDb250ZW50VHlwZSBjb250ZW50
VHlwZSwgU3RyaW5nIGtleVN5c3RlbSkgLT4gKHN0cnVjdCBXZWJLaXQ6OlJlbW90ZU1lZGlhUGxh
eWVyQ29uZmlndXJhdGlvbiBwbGF5ZXJDb25maWd1cmF0aW9uKSBBc3luYwogICAgIENhbmNlbExv
YWQoKQpAQCAtNDcsOCArNDksMTAgQEAgbWVzc2FnZXMgLT4gUmVtb3RlTWVkaWFQbGF5ZXJQcm94
eSBOb3RSZWZDb3VudGVkIHsKICAgICBQcmVwYXJlRm9yUmVuZGVyaW5nKCkKICAgICBTZXRWaXNp
YmxlKGJvb2wgdmlzaWJsZSkKICAgICBTZXRTaG91bGRNYWludGFpbkFzcGVjdFJhdGlvKGJvb2wg
bWFpbnRhaW5Bc3BlY3RSYXRpbykKKyNpZiBQTEFURk9STShJT1NfRkFNSUxZKSB8fCAoUExBVEZP
Uk0oTUFDKSAmJiBFTkFCTEUoVklERU9fUFJFU0VOVEFUSU9OX01PREUpKQogICAgIFNldFZpZGVv
RnVsbHNjcmVlbkZyYW1lRmVuY2VkKFdlYkNvcmU6OkZsb2F0UmVjdCByZWN0LCBNYWNoU2VuZFJp
Z2h0IG1hY2hTZW5kUmlnaHQpCiAgICAgU2V0VmlkZW9GdWxsc2NyZWVuR3Jhdml0eShlbnVtOnVp
bnQ4X3QgV2ViQ29yZTo6TWVkaWFQbGF5ZXJFbnVtczo6VmlkZW9HcmF2aXR5IGdyYXZpdHkpCisj
ZW5kaWYKICAgICBBY2NlbGVyYXRlZFJlbmRlcmluZ1N0YXRlQ2hhbmdlZChib29sIGNhbkJlQWNj
ZWxlcmF0ZWQpCiAgICAgU2V0U2hvdWxkRGlzYWJsZVNsZWVwKGJvb2wgZGlzYWJsZSkKICAgICBT
ZXRSYXRlKGRvdWJsZSByYXRlKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9VSVByb2Nlc3Mv
R1BVL0dQVVByb2Nlc3NQcm94eS5oIGIvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvR1BVL0dQVVBy
b2Nlc3NQcm94eS5oCmluZGV4IGE4NWYyYjIwMTBhNmU0YjMxMTY0ZDZjNjBmNTAyZDA0ZjlhZTk1
NTEuLmJiM2IxY2FiNTFjNDhiMTM4MjQ3OTIxYTU2MjgzMjVhYjEzZTJhNTggMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL0dQVS9HUFVQcm9jZXNzUHJveHkuaAorKysgYi9Tb3Vy
Y2UvV2ViS2l0L1VJUHJvY2Vzcy9HUFUvR1BVUHJvY2Vzc1Byb3h5LmgKQEAgLTI5LDcgKzI5LDYg
QEAKIAogI2luY2x1ZGUgIkF1eGlsaWFyeVByb2Nlc3NQcm94eS5oIgogI2luY2x1ZGUgIkdQVVBy
b2Nlc3NQcm94eU1lc3NhZ2VzUmVwbGllcy5oIgotI2luY2x1ZGUgIkxheWVySG9zdGluZ0NvbnRl
eHQuaCIKICNpbmNsdWRlICJQcm9jZXNzTGF1bmNoZXIuaCIKICNpbmNsdWRlICJQcm9jZXNzVGhy
b3R0bGVyLmgiCiAjaW5jbHVkZSAiUHJvY2Vzc1Rocm90dGxlckNsaWVudC5oIgpAQCAtMzgsNiAr
MzcsMTAgQEAKICNpbmNsdWRlIDxtZW1vcnk+CiAjaW5jbHVkZSA8cGFsL1Nlc3Npb25JRC5oPgog
CisjaWYgSEFWRShWSVNJQklMSVRZX1BST1BBR0FUSU9OX1ZJRVcpCisjaW5jbHVkZSAiTGF5ZXJI
b3N0aW5nQ29udGV4dC5oIgorI2VuZGlmCisKIG5hbWVzcGFjZSBXZWJLaXQgewogCiBjbGFzcyBX
ZWJQcm9jZXNzUHJveHk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvR1BV
L0dQVVByb2Nlc3NDb25uZWN0aW9uLmNwcCBiL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9HUFUv
R1BVUHJvY2Vzc0Nvbm5lY3Rpb24uY3BwCmluZGV4IDE4NDQxOWJlM2MyNTJjZTM2MTkzNzk5MzZj
MWQ0Y2Y1Mzc1MzliNjAuLmQwOTM4MThjOGEyNWI3ODcwZWFiNDcwODFkMWY1ODUzZTA4ODU2OTIg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9HUFUvR1BVUHJvY2Vzc0Nvbm5l
Y3Rpb24uY3BwCisrKyBiL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9HUFUvR1BVUHJvY2Vzc0Nv
bm5lY3Rpb24uY3BwCkBAIC0zOSw4ICszOSw2IEBACiAjaW5jbHVkZSAiUmVtb3RlTWVkaWFQbGF5
ZXJNYW5hZ2VyLmgiCiAjaW5jbHVkZSAiUmVtb3RlTWVkaWFQbGF5ZXJNYW5hZ2VyTWVzc2FnZXMu
aCIKICNpbmNsdWRlICJTYW1wbGVCdWZmZXJEaXNwbGF5TGF5ZXJNZXNzYWdlcy5oIgotI2luY2x1
ZGUgIlVzZXJNZWRpYUNhcHR1cmVNYW5hZ2VyLmgiCi0jaW5jbHVkZSAiVXNlck1lZGlhQ2FwdHVy
ZU1hbmFnZXJNZXNzYWdlcy5oIgogI2luY2x1ZGUgIldlYkNvcmVBcmd1bWVudENvZGVycy5oIgog
I2luY2x1ZGUgIldlYlBhZ2UuaCIKICNpbmNsdWRlICJXZWJQYWdlTWVzc2FnZXMuaCIKQEAgLTUy
LDYgKzUwLDExIEBACiAjaW5jbHVkZSAiUmVtb3RlQ0RNSW5zdGFuY2VTZXNzaW9uTWVzc2FnZXMu
aCIKICNlbmRpZgogCisjaWYgUExBVEZPUk0oQ09DT0EpCisjaW5jbHVkZSAiVXNlck1lZGlhQ2Fw
dHVyZU1hbmFnZXJQcm94eS5oIgorI2luY2x1ZGUgIlVzZXJNZWRpYUNhcHR1cmVNYW5hZ2VyUHJv
eHlNZXNzYWdlcy5oIgorI2VuZGlmCisKIG5hbWVzcGFjZSBXZWJLaXQgewogdXNpbmcgbmFtZXNw
YWNlIFdlYkNvcmU7CiAKQEAgLTEwOSwxOSArMTEyLDE5IEBAIGJvb2wgR1BVUHJvY2Vzc0Nvbm5l
Y3Rpb246OmRpc3BhdGNoTWVzc2FnZShJUEM6OkNvbm5lY3Rpb24mIGNvbm5lY3Rpb24sIElQQzo6
RGVjCiAgICAgICAgIHJldHVybiB0cnVlOwogICAgIH0KIAotI2lmIEVOQUJMRShNRURJQV9TVFJF
QU0pCisjaWYgUExBVEZPUk0oQ09DT0EpICYmIEVOQUJMRShNRURJQV9TVFJFQU0pCiAgICAgaWYg
KGRlY29kZXIubWVzc2FnZVJlY2VpdmVyTmFtZSgpID09IE1lc3NhZ2VzOjpVc2VyTWVkaWFDYXB0
dXJlTWFuYWdlcjo6bWVzc2FnZVJlY2VpdmVyTmFtZSgpKSB7CiAgICAgICAgIGlmIChhdXRvKiBj
YXB0dXJlTWFuYWdlciA9IFdlYlByb2Nlc3M6OnNpbmdsZXRvbigpLnN1cHBsZW1lbnQ8VXNlck1l
ZGlhQ2FwdHVyZU1hbmFnZXI+KCkpCiAgICAgICAgICAgICBjYXB0dXJlTWFuYWdlci0+ZGlkUmVj
ZWl2ZU1lc3NhZ2VGcm9tR1BVUHJvY2Vzcyhjb25uZWN0aW9uLCBkZWNvZGVyKTsKICAgICAgICAg
cmV0dXJuIHRydWU7CiAgICAgfQotI2lmIFBMQVRGT1JNKENPQ09BKSAmJiBFTkFCTEUoVklERU9f
VFJBQ0spCisjaWYgRU5BQkxFKFZJREVPX1RSQUNLKQogICAgIGlmIChkZWNvZGVyLm1lc3NhZ2VS
ZWNlaXZlck5hbWUoKSA9PSBNZXNzYWdlczo6U2FtcGxlQnVmZmVyRGlzcGxheUxheWVyOjptZXNz
YWdlUmVjZWl2ZXJOYW1lKCkpIHsKICAgICAgICAgc2FtcGxlQnVmZmVyRGlzcGxheUxheWVyTWFu
YWdlcigpLmRpZFJlY2VpdmVMYXllck1lc3NhZ2UoY29ubmVjdGlvbiwgZGVjb2Rlcik7CiAgICAg
ICAgIHJldHVybiB0cnVlOwogICAgIH0KLSNlbmRpZiAvLyBQTEFURk9STShDT0NPQSkgJiYgRU5B
QkxFKFZJREVPX1RSQUNLKQotI2VuZGlmIC8vIEVOQUJMRShNRURJQV9TVFJFQU0pCisjZW5kaWYg
Ly8gRU5BQkxFKFZJREVPX1RSQUNLKQorI2VuZGlmIC8vIFBMQVRGT1JNKENPQ09BKSAmJiBFTkFC
TEUoTUVESUFfU1RSRUFNKQogI2lmIFVTRShMSUJXRUJSVEMpICYmIFBMQVRGT1JNKENPQ09BKQog
ICAgIGlmIChkZWNvZGVyLm1lc3NhZ2VSZWNlaXZlck5hbWUoKSA9PSBNZXNzYWdlczo6TGliV2Vi
UlRDQ29kZWNzOjptZXNzYWdlUmVjZWl2ZXJOYW1lKCkpIHsKICAgICAgICAgV2ViUHJvY2Vzczo6
c2luZ2xldG9uKCkubGliV2ViUlRDQ29kZWNzKCkuZGlkUmVjZWl2ZU1lc3NhZ2UoY29ubmVjdGlv
biwgZGVjb2Rlcik7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvR1BVL21l
ZGlhL01lZGlhUGxheWVyUHJpdmF0ZVJlbW90ZS5jcHAgYi9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nl
c3MvR1BVL21lZGlhL01lZGlhUGxheWVyUHJpdmF0ZVJlbW90ZS5jcHAKaW5kZXggODZmMmIxYmQw
ZTg0YzBlMDJkZjI3MjViMDM0NTk1NGVjZTkxN2Y2ZC4uNjRlMTE3MjkzYjMyMTIwYzkzYTQwMTIx
ODNmYTc2NTQ4N2U5ZmFjMCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL0dQ
VS9tZWRpYS9NZWRpYVBsYXllclByaXZhdGVSZW1vdGUuY3BwCisrKyBiL1NvdXJjZS9XZWJLaXQv
V2ViUHJvY2Vzcy9HUFUvbWVkaWEvTWVkaWFQbGF5ZXJQcml2YXRlUmVtb3RlLmNwcApAQCAtMTA5
LDYgKzEwOSw3IEBAIE1lZGlhUGxheWVyUHJpdmF0ZVJlbW90ZTo6fk1lZGlhUGxheWVyUHJpdmF0
ZVJlbW90ZSgpCiAgICAgbV9tYW5hZ2VyLmRlbGV0ZVJlbW90ZU1lZGlhUGxheWVyKG1faWQpOwog
fQogCisjaWYgUExBVEZPUk0oSU9TX0ZBTUlMWSkgfHwgKFBMQVRGT1JNKE1BQykgJiYgRU5BQkxF
KFZJREVPX1BSRVNFTlRBVElPTl9NT0RFKSkKIHZvaWQgTWVkaWFQbGF5ZXJQcml2YXRlUmVtb3Rl
OjpwcmVwYXJlRm9yUGxheWJhY2soYm9vbCBwcml2YXRlTW9kZSwgTWVkaWFQbGF5ZXI6OlByZWxv
YWQgcHJlbG9hZCwgYm9vbCBwcmVzZXJ2ZXNQaXRjaCwgYm9vbCBwcmVwYXJlKQogewogICAgIGF1
dG8gc2NhbGUgPSBtX3BsYXllci0+cGxheWVyQ29udGVudHNTY2FsZSgpOwpAQCAtMTI1LDYgKzEy
Niw3IEBAIHZvaWQgTWVkaWFQbGF5ZXJQcml2YXRlUmVtb3RlOjpwcmVwYXJlRm9yUGxheWJhY2so
Ym9vbCBwcml2YXRlTW9kZSwgTWVkaWFQbGF5ZXI6CiAgICAgICAgIG1fZnVsbHNjcmVlbkxheWVy
SG9zdGluZ0NvbnRleHRJZCA9IGZ1bGxzY3JlZW5MYXllckhvc3RpbmdDb250ZXh0SWQ7CiAgICAg
fSwgbV9pZCk7CiB9CisjZW5kaWYKIAogdm9pZCBNZWRpYVBsYXllclByaXZhdGVSZW1vdGU6Ok1l
ZGlhUGxheWVyUHJpdmF0ZVJlbW90ZTo6bG9hZChjb25zdCBVUkwmIHVybCwgY29uc3QgQ29udGVu
dFR5cGUmIGNvbnRlbnRUeXBlLCBjb25zdCBTdHJpbmcmIGtleVN5c3RlbSkKIHsKQEAgLTM1OCwx
MCArMzYwLDEyIEBAIHZvaWQgTWVkaWFQbGF5ZXJQcml2YXRlUmVtb3RlOjphY2NlbGVyYXRlZFJl
bmRlcmluZ1N0YXRlQ2hhbmdlZCgpCiAgICAgY29ubmVjdGlvbigpLnNlbmQoTWVzc2FnZXM6OlJl
bW90ZU1lZGlhUGxheWVyUHJveHk6OkFjY2VsZXJhdGVkUmVuZGVyaW5nU3RhdGVDaGFuZ2VkKG1f
cGxheWVyLT5zdXBwb3J0c0FjY2VsZXJhdGVkUmVuZGVyaW5nKCkpLCBtX2lkKTsKIH0KIAorI2lm
IEVOQUJMRShXSVJFTEVTU19QTEFZQkFDS19UQVJHRVQpCiBib29sIE1lZGlhUGxheWVyUHJpdmF0
ZVJlbW90ZTo6Y2FuUGxheVRvV2lyZWxlc3NQbGF5YmFja1RhcmdldCgpIGNvbnN0CiB7CiAgICAg
cmV0dXJuIG1fY29uZmlndXJhdGlvbi5jYW5QbGF5VG9XaXJlbGVzc1BsYXliYWNrVGFyZ2V0Owog
fQorI2VuZGlmCiAKIHZvaWQgTWVkaWFQbGF5ZXJQcml2YXRlUmVtb3RlOjp1cGRhdGVDYWNoZWRT
dGF0ZShSZW1vdGVNZWRpYVBsYXllclN0YXRlJiYgc3RhdGUpCiB7CkBAIC02MzEsNyArNjM1LDEx
IEBAIHZvaWQgTWVkaWFQbGF5ZXJQcml2YXRlUmVtb3RlOjpsb2FkKE1lZGlhU3RyZWFtUHJpdmF0
ZSYpCiAKIFBsYXRmb3JtTGF5ZXIqIE1lZGlhUGxheWVyUHJpdmF0ZVJlbW90ZTo6cGxhdGZvcm1M
YXllcigpIGNvbnN0CiB7CisjaWYgUExBVEZPUk0oSU9TX0ZBTUlMWSkgfHwgKFBMQVRGT1JNKE1B
QykgJiYgRU5BQkxFKFZJREVPX1BSRVNFTlRBVElPTl9NT0RFKSkKICAgICByZXR1cm4gbV92aWRl
b0lubGluZUxheWVyLmdldCgpOworI2Vsc2UKKyAgICByZXR1cm4gbnVsbHB0cjsKKyNlbmRpZgog
fQogCiAjaWYgUExBVEZPUk0oSU9TX0ZBTUlMWSkgfHwgKFBMQVRGT1JNKE1BQykgJiYgRU5BQkxF
KFZJREVPX1BSRVNFTlRBVElPTl9NT0RFKSkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvV2Vi
UHJvY2Vzcy9HUFUvbWVkaWEvTWVkaWFQbGF5ZXJQcml2YXRlUmVtb3RlLmggYi9Tb3VyY2UvV2Vi
S2l0L1dlYlByb2Nlc3MvR1BVL21lZGlhL01lZGlhUGxheWVyUHJpdmF0ZVJlbW90ZS5oCmluZGV4
IDZjNTY2YTgzZDJlNDFlMWI0YWU1MjMzMjljYWNiMTMwMmQyNmQ2NTcuLmE4MWMyYjFjYWFiN2M3
NTkzMWE0NTA4MTljNWFmMzlhODJkYjQ3NDMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvV2Vi
UHJvY2Vzcy9HUFUvbWVkaWEvTWVkaWFQbGF5ZXJQcml2YXRlUmVtb3RlLmgKKysrIGIvU291cmNl
L1dlYktpdC9XZWJQcm9jZXNzL0dQVS9tZWRpYS9NZWRpYVBsYXllclByaXZhdGVSZW1vdGUuaApA
QCAtMjcsNyArMjcsNiBAQAogCiAjaWYgRU5BQkxFKEdQVV9QUk9DRVNTKQogCi0jaW5jbHVkZSAi
TGF5ZXJIb3N0aW5nQ29udGV4dC5oIgogI2luY2x1ZGUgIlJlbW90ZU1lZGlhUGxheWVyQ29uZmln
dXJhdGlvbi5oIgogI2luY2x1ZGUgIlJlbW90ZU1lZGlhUGxheWVyTWFuYWdlci5oIgogI2luY2x1
ZGUgIlJlbW90ZU1lZGlhUGxheWVyU3RhdGUuaCIKQEAgLTQwLDYgKzM5LDEwIEBACiAjaW5jbHVk
ZSA8d3RmL01lZGlhVGltZS5oPgogI2luY2x1ZGUgPHd0Zi9XZWFrUHRyLmg+CiAKKyNpZiBQTEFU
Rk9STShDT0NPQSkKKyNpbmNsdWRlICJMYXllckhvc3RpbmdDb250ZXh0LmgiCisjZW5kaWYKKwog
bmFtZXNwYWNlIFdURiB7CiBjbGFzcyBNYWNoU2VuZFJpZ2h0OwogfQpAQCAtMzU3LDkgKzM2MCwx
MSBAQCBwcml2YXRlOgogCiAgICAgV2ViQ29yZTo6TWVkaWFQbGF5ZXIqIG1fcGxheWVyIHsgbnVs
bHB0ciB9OwogICAgIFJlZlB0cjxXZWJDb3JlOjpQbGF0Zm9ybU1lZGlhUmVzb3VyY2VMb2FkZXI+
IG1fbWVkaWFSZXNvdXJjZUxvYWRlcjsKKyNpZiBQTEFURk9STShJT1NfRkFNSUxZKSB8fCAoUExB
VEZPUk0oTUFDKSAmJiBFTkFCTEUoVklERU9fUFJFU0VOVEFUSU9OX01PREUpKQogICAgIFJldGFp
blB0cjxQbGF0Zm9ybUxheWVyPiBtX3ZpZGVvSW5saW5lTGF5ZXI7CiAgICAgUmV0YWluUHRyPFBs
YXRmb3JtTGF5ZXI+IG1fdmlkZW9GdWxsc2NyZWVuTGF5ZXI7CiAgICAgT3B0aW9uYWw8TGF5ZXJI
b3N0aW5nQ29udGV4dElEPiBtX2Z1bGxzY3JlZW5MYXllckhvc3RpbmdDb250ZXh0SWQ7CisjZW5k
aWYKICAgICBSZW1vdGVNZWRpYVBsYXllck1hbmFnZXImIG1fbWFuYWdlcjsKICAgICBXZWJDb3Jl
OjpNZWRpYVBsYXllckVudW1zOjpNZWRpYUVuZ2luZUlkZW50aWZpZXIgbV9yZW1vdGVFbmdpbmVJ
ZGVudGlmaWVyOwogICAgIE1lZGlhUGxheWVyUHJpdmF0ZVJlbW90ZUlkZW50aWZpZXIgbV9pZDsK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9HUFUvbWVkaWEvUmVtb3RlTWVk
aWFQbGF5ZXJNYW5hZ2VyLmNwcCBiL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9HUFUvbWVkaWEv
UmVtb3RlTWVkaWFQbGF5ZXJNYW5hZ2VyLmNwcAppbmRleCA4NzY1MjFkOGMwNjFkMWY0MmQ1NjYw
NDEzOWMwZDg2NGMyNjA5MGM2Li5mZTRhOWI4M2Y3NDZlMWMyMzg5NGQ2NDcyOWNlZDlhOTNkMTFm
ZmMxIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvR1BVL21lZGlhL1JlbW90
ZU1lZGlhUGxheWVyTWFuYWdlci5jcHAKKysrIGIvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL0dQ
VS9tZWRpYS9SZW1vdGVNZWRpYVBsYXllck1hbmFnZXIuY3BwCkBAIC0xNTIsNyArMTUyLDkgQEAg
c3RkOjp1bmlxdWVfcHRyPE1lZGlhUGxheWVyUHJpdmF0ZUludGVyZmFjZT4gUmVtb3RlTWVkaWFQ
bGF5ZXJNYW5hZ2VyOjpjcmVhdGVSZW0KICNlbmRpZgogICAgIHByb3h5Q29uZmlndXJhdGlvbi5t
ZWRpYUNvbnRlbnRUeXBlc1JlcXVpcmluZ0hhcmR3YXJlU3VwcG9ydCA9IHBsYXllci0+bWVkaWFD
b250ZW50VHlwZXNSZXF1aXJpbmdIYXJkd2FyZVN1cHBvcnQoKTsKICAgICBwcm94eUNvbmZpZ3Vy
YXRpb24ucHJlZmVycmVkQXVkaW9DaGFyYWN0ZXJpc3RpY3MgPSBwbGF5ZXItPnByZWZlcnJlZEF1
ZGlvQ2hhcmFjdGVyaXN0aWNzKCk7CisjaWYgIVJFTEVBU0VfTE9HX0RJU0FCTEVECiAgICAgcHJv
eHlDb25maWd1cmF0aW9uLmxvZ0lkZW50aWZpZXIgPSByZWludGVycHJldF9jYXN0PHVpbnQ2NF90
PihwbGF5ZXItPm1lZGlhUGxheWVyTG9nSWRlbnRpZmllcigpKTsKKyNlbmRpZgogICAgIHByb3h5
Q29uZmlndXJhdGlvbi5zaG91bGRVc2VQZXJzaXN0ZW50Q2FjaGUgPSBwbGF5ZXItPnNob3VsZFVz
ZVBlcnNpc3RlbnRDYWNoZSgpOwogICAgIHByb3h5Q29uZmlndXJhdGlvbi5pc1ZpZGVvID0gcGxh
eWVyLT5pc1ZpZGVvUGxheWVyKCk7CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvV2ViUHJv
Y2Vzcy9HUFUvbWVkaWEvVGV4dFRyYWNrUHJpdmF0ZVJlbW90ZS5oIGIvU291cmNlL1dlYktpdC9X
ZWJQcm9jZXNzL0dQVS9tZWRpYS9UZXh0VHJhY2tQcml2YXRlUmVtb3RlLmgKaW5kZXggYjA3MDY0
MmYzNjA0OTVmZWI4YmExN2Y5ZDc1MmQxYzlkY2JjNjM4Yi4uYjk1MDM0YmYyNjk1ODFhYTdlOWJm
NmRhOTBmMjE5Njk0Y2IwY2Y2NCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9XZWJQcm9jZXNz
L0dQVS9tZWRpYS9UZXh0VHJhY2tQcml2YXRlUmVtb3RlLmgKKysrIGIvU291cmNlL1dlYktpdC9X
ZWJQcm9jZXNzL0dQVS9tZWRpYS9UZXh0VHJhY2tQcml2YXRlUmVtb3RlLmgKQEAgLTU3LDggKzU3
LDggQEAgcHVibGljOgogCiAgICAgdm9pZCBhZGREYXRhQ3VlKE1lZGlhVGltZSYmIHN0YXJ0LCBN
ZWRpYVRpbWUmJiBlbmQsIElQQzo6RGF0YVJlZmVyZW5jZSYmKTsKIAotICAgIHVzaW5nIFNlcmlh
bGl6ZWRQbGF0Zm9ybURhdGFDdWVWYWx1ZSA9IFdlYkNvcmU6OlNlcmlhbGl6ZWRQbGF0Zm9ybURh
dGFDdWVWYWx1ZTsKICNpZiBFTkFCTEUoREFUQUNVRV9WQUxVRSkKKyAgICB1c2luZyBTZXJpYWxp
emVkUGxhdGZvcm1EYXRhQ3VlVmFsdWUgPSBXZWJDb3JlOjpTZXJpYWxpemVkUGxhdGZvcm1EYXRh
Q3VlVmFsdWU7CiAgICAgdm9pZCBhZGREYXRhQ3VlV2l0aFR5cGUoTWVkaWFUaW1lJiYgc3RhcnQs
IE1lZGlhVGltZSYmIGVuZCwgU2VyaWFsaXplZFBsYXRmb3JtRGF0YUN1ZVZhbHVlJiYsIFN0cmlu
ZyYmKTsKICAgICB2b2lkIHVwZGF0ZURhdGFDdWUoTWVkaWFUaW1lJiYgc3RhcnQsIE1lZGlhVGlt
ZSYmIGVuZCwgU2VyaWFsaXplZFBsYXRmb3JtRGF0YUN1ZVZhbHVlJiYpOwogICAgIHZvaWQgcmVt
b3ZlRGF0YUN1ZShNZWRpYVRpbWUmJiBzdGFydCwgTWVkaWFUaW1lJiYgZW5kLCBTZXJpYWxpemVk
UGxhdGZvcm1EYXRhQ3VlVmFsdWUmJik7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1dlYlBy
b2Nlc3MvR1BVL21lZGlhL1ZpZGVvTGF5ZXJSZW1vdGUuaCBiL1NvdXJjZS9XZWJLaXQvV2ViUHJv
Y2Vzcy9HUFUvbWVkaWEvVmlkZW9MYXllclJlbW90ZS5oCmluZGV4IGY2NGVmZjZjOGVkNmJiMjAx
OWYzYWRiZTFhYmY1NmE2NjE1Y2U1ZGMuLjZjZDk5YzdkNzY1OGY1MmNjZGVmZDA0N2UyZDIyZWRh
YjAzOGE2ODYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9HUFUvbWVkaWEv
VmlkZW9MYXllclJlbW90ZS5oCisrKyBiL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9HUFUvbWVk
aWEvVmlkZW9MYXllclJlbW90ZS5oCkBAIC0yNyw3ICsyNyw4IEBACiAKICNpZiBFTkFCTEUoR1BV
X1BST0NFU1MpCiAKLSNpbmNsdWRlICJMYXllckhvc3RpbmdDb250ZXh0LmgiCisjaWYgUExBVEZP
Uk0oSU9TX0ZBTUlMWSkgfHwgKFBMQVRGT1JNKE1BQykgJiYgRU5BQkxFKFZJREVPX1BSRVNFTlRB
VElPTl9NT0RFKSkKKwogI2luY2x1ZGUgPHd0Zi9SZXRhaW5QdHIuaD4KIAogT0JKQ19DTEFTUyBD
QUxheWVyOwpAQCAtNDEsMyArNDIsNCBAQCBSZXRhaW5QdHI8UGxhdGZvcm1MYXllcj4gY3JlYXRl
VmlkZW9MYXllclJlbW90ZShNZWRpYVBsYXllclByaXZhdGVSZW1vdGUqLCBMYXllcgogfSAvLyBu
YW1lc3BhY2UgV2ViS2l0CiAKICNlbmRpZgorI2VuZGlmCmRpZmYgLS1naXQgYS9Tb3VyY2UvY21h
a2UvV2ViS2l0RmVhdHVyZXMuY21ha2UgYi9Tb3VyY2UvY21ha2UvV2ViS2l0RmVhdHVyZXMuY21h
a2UKaW5kZXggYTBiYmU3OTFmZjRlMDljZmJlNWI2YWM0NDNlMmU3ZGYxNThkNTI4Yy4uZTgwMDJh
ZDk2MDYxZGM1NjFkNjZkYzc0MjA3MzEyNzM4MGUyZTcyZiAxMDA2NDQKLS0tIGEvU291cmNlL2Nt
YWtlL1dlYktpdEZlYXR1cmVzLmNtYWtlCisrKyBiL1NvdXJjZS9jbWFrZS9XZWJLaXRGZWF0dXJl
cy5jbWFrZQpAQCAtMjM0LDYgKzIzNCw3IEBAIG1hY3JvKFdFQktJVF9PUFRJT05fQkVHSU4pCiAg
ICAgV0VCS0lUX09QVElPTl9ERUZJTkUoRU5BQkxFX1BPSU5URVJfRVZFTlRTICJFbmFibGUgcG9p
bnRlciBldmVudHMiIFBSSVZBVEUgT0ZGKQogICAgIFdFQktJVF9PUFRJT05fREVGSU5FKEVOQUJM
RV9XRUJEUklWRVJfTU9VU0VfSU5URVJBQ1RJT05TICJFbmFibGUgd2ViZHJpdmVyIG1vdXNlIGlu
dGVyYWN0aW9ucyIgUFJJVkFURSBPRkYpCiAgICAgV0VCS0lUX09QVElPTl9ERUZJTkUoRU5BQkxF
X1dFQkRSSVZFUl9LRVlCT0FSRF9JTlRFUkFDVElPTlMgIkVuYWJsZSB3ZWJkcml2ZXIga2V5Ym9h
cmQgaW50ZXJhY3Rpb25zIiBQUklWQVRFIE9GRikKKyAgICBXRUJLSVRfT1BUSU9OX0RFRklORShF
TkFCTEVfR1BVX1BST0NFU1MgIldoZXRoZXIgdG8gZW5hYmxlIHRoZSBHUFUgcHJvY2VzcyIgUFJJ
VkFURSBPTikKIAogICAgIFdFQktJVF9PUFRJT05fQ09ORkxJQ1QoRU5BQkxFX0pJVCBFTkFCTEVf
Q19MT09QKQogICAgIFdFQktJVF9PUFRJT05fQ09ORkxJQ1QoRU5BQkxFX1NBTVBMSU5HX1BST0ZJ
TEVSIEVOQUJMRV9DX0xPT1ApCmRpZmYgLS1naXQgYS9DaGFuZ2VMb2cgYi9DaGFuZ2VMb2cKaW5k
ZXggOGY4NTAxMjM2MDQ5MjA1M2ZkMDMzYWRjNWRkNmQ4ZGQxYjE3YTlkZC4uM2M0MWI3ZmMyNTJl
MzdiOWFjOWE2ZWVkYjFmYjcwZWQ0NDdkZWMwNSAxMDA2NDQKLS0tIGEvQ2hhbmdlTG9nCisrKyBi
L0NoYW5nZUxvZwpAQCAtMSwzICsxLDE1IEBACisyMDIwLTAzLTA5ICBWw61jdG9yIE1hbnVlbCBK
w6FxdWV6IExlYWwgIDx2amFxdWV6QGlnYWxpYS5jb20+CisKKyAgICAgICAgW0dQVVBdW0dUS10g
Y29tcGlsZSBHUFVQcm9jZXNzIGluIEdUSyBwb3J0CisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJr
aXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMDg4MTQKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JP
RFkgKE9PUFMhKS4KKworICAgICAgICBXSVA6IEVuYWJsZSBHUFVQcm9jZXNzIGluIFdlYktpdEdU
Sy4KKworICAgICAgICAqIFNvdXJjZS9jbWFrZS9XZWJLaXRGZWF0dXJlcy5jbWFrZTogQWRkIHBy
aXZhdGUgb3B0aW9uIHRvIGNvbXBpbGUKKyAgICAgICAgR1BVUHJvY2VzcyBzdXBwb3J0LgorCiAy
MDIwLTAzLTAzICBGdWppaSBIaXJvbm9yaSAgPGZ1amlpLmhpcm9ub3JpQGdtYWlsLmNvbT4KIAog
ICAgICAgICBbQ3VybF0gQWRkIFRMUyBkZWJ1Z2dpbmcgZmVhdHVyZSB0byBsb2cgZW5jcnlwdGlv
biBrZXlzCg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>393170</attachid>
            <date>2020-03-10 11:55:44 -0700</date>
            <delta_ts>2020-03-25 02:26:18 -0700</delta_ts>
            <desc>WIP Patch</desc>
            <filename>bug-208814-20200310195543.patch</filename>
            <type>text/plain</type>
            <size>40404</size>
            <attacher name="Víctor M. Jáquez L.">vjaquez</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjU4MjA0CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggYzhiOTRiMTdmZTlkYjZh
OTc2Y2M3YTkyMGYwNWQzMDQ1MTg0MDg0OS4uNWIxYjVjODMzMjU3NTFkNDU5NzllNzk5MzViMzk2
ODNhNjllYjQzYSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE3IEBACisyMDIwLTAzLTEwICBWw61j
dG9yIE1hbnVlbCBKw6FxdWV6IExlYWwgIDx2amFxdWV6QGlnYWxpYS5jb20+CisKKyAgICAgICAg
W0dQVVBdW0dUS10gY29tcGlsZSBHUFVQcm9jZXNzIGluIEdUSyBwb3J0CisgICAgICAgIGh0dHBz
Oi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMDg4MTQKKworICAgICAgICBSZXZp
ZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBBZGQgcmVxdWVzdGVkIGhlYWRlcnMg
aW4gb3JkZXIgdG8gY29tcGlsZSBHUFVQcm9jZXNzIGluIEdUSyBwb3J0OgorICAgICAgICBmb3Ig
ZW5jcnlwdGVkIG1lZGlhIGFuZCBkaXNwbGF5bGlzdHMKKworICAgICAgICBObyB0ZXN0cyByZXF1
aXJlZC4KKworICAgICAgICAqIEhlYWRlcnMuY21ha2U6CisKIDIwMjAtMDMtMTAgIENhcmxvcyBH
YXJjaWEgQ2FtcG9zICA8Y2dhcmNpYUBpZ2FsaWEuY29tPgogCiAgICAgICAgIFtDYWlyb10gUmVt
b3ZlIFBsYXRmb3JtUGF0aENhaXJvCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L0NoYW5nZUxv
ZyBiL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCmluZGV4IGM2N2RhZmFhMGQ5ZWE4Nzc3Y2U1YWJj
MTY1OGNhNTNiNjkxZTE1MDYuLjMwMDk0MTYxMTk4ODU0NzE4ZWEyNjFkYzM2MTUwMzY5MzI3ZWUx
NTMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9XZWJL
aXQvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsNjkgQEAKKzIwMjAtMDMtMTAgIFbDrWN0b3IgTWFudWVs
IErDoXF1ZXogTGVhbCAgPHZqYXF1ZXpAaWdhbGlhLmNvbT4KKworICAgICAgICBbR1BVUF1bR1RL
XSBjb21waWxlIEdQVVByb2Nlc3MgaW4gR1RLIHBvcnQKKyAgICAgICAgaHR0cHM6Ly9idWdzLndl
YmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIwODgxNAorCisgICAgICAgIFJldmlld2VkIGJ5IE5P
Qk9EWSAoT09QUyEpLgorCisgICAgICAgIEFkZCBhbmQgbW92ZSBjb21waWxhdGlvbiBndWFyZHMg
aW4gb3JkZXIgdG8gZW5hYmxlIEdQVVByb2Nlc3MgaW4KKyAgICAgICAgR1RLIHBvcnQuCisKKyAg
ICAgICAgKiBDTWFrZUxpc3RzLnR4dDogYWRkZWQgdGhlIG1lc3NhZ2VzLmluIGZpbGVzIGZvciBh
dXRvZ2VuZXJhdGVkCisgICAgICAgIHNvdXJjZXMuCisgICAgICAgICogR1BVUHJvY2Vzcy9HUFVD
b25uZWN0aW9uVG9XZWJQcm9jZXNzLmNwcDogZ3VhcmRlZCBjb2NvYSBzcGVjaWZpYworICAgICAg
ICBoZWFkZXJzLgorICAgICAgICAoV2ViS2l0OjpHUFVDb25uZWN0aW9uVG9XZWJQcm9jZXNzOjpk
aWRDbG9zZSk6IGd1YXJkZWQgZnVuY3Rpb24KKyAgICAgICAgaW50ZXJuYWxzLgorICAgICAgICAo
V2ViS2l0OjpHUFVDb25uZWN0aW9uVG9XZWJQcm9jZXNzOjpkaXNwYXRjaE1lc3NhZ2UpOiBhZGRl
ZAorICAgICAgICBndWFyZHMuCisgICAgICAgICogR1BVUHJvY2Vzcy9HUFVDb25uZWN0aW9uVG9X
ZWJQcm9jZXNzLm1lc3NhZ2VzLmluOiBkaXR0by4KKyAgICAgICAgKiBHUFVQcm9jZXNzL0dQVVBy
b2Nlc3MuY3BwOiBndWFyZGVkIGNvY29hIHNwZWNpZmljIGhlYWRlcnMuCisgICAgICAgICogR1BV
UHJvY2Vzcy9tZWRpYS9SZW1vdGVMZWdhY3lDRE1GYWN0b3J5UHJveHkuY3BwOiBndWFyZGVkIG9u
bHkKKyAgICAgICAgZm9yIGxlZ2FjeSBlbmNyeXB0ZWQgbWVkaWEuCisgICAgICAgICogR1BVUHJv
Y2Vzcy9tZWRpYS9SZW1vdGVNZWRpYVBsYXllclByb3h5LmNwcDogZ3VhcmRlZCBjb2NvYQorICAg
ICAgICBzcGVjaWZpYyBoZWFkZXIuCisgICAgICAgIChXZWJLaXQ6OlJlbW90ZU1lZGlhUGxheWVy
UHJveHk6OmdldENvbmZpZ3VyYXRpb24pOiBndWFyZGVkIGZvcgorICAgICAgICB3aXJlbGVzcyBw
bGF5YmFjayB0YXJnZXQuCisgICAgICAgIChXZWJLaXQ6OlJlbW90ZU1lZGlhUGxheWVyUHJveHk6
OnNldFZpZGVvRnVsbHNjcmVlbkdyYXZpdHkpOgorICAgICAgICBndWFyZGVkIGZvciBJT1MgYW5k
IE1hYyBwbGF0Zm9ybXMuCisgICAgICAgIChXZWJLaXQ6OlJlbW90ZU1lZGlhUGxheWVyUHJveHk6
OnZpZGVvRnVsbHNjcmVlblN0YW5kYnlDaGFuZ2VkKToKKyAgICAgICAgZGl0dG8uCisgICAgICAg
IChXZWJLaXQ6OlJlbW90ZU1lZGlhUGxheWVyUHJveHk6OnNldEJ1ZmZlcmluZ1BvbGljeSk6IGRp
dHRvLgorICAgICAgICAoV2ViS2l0OjpSZW1vdGVNZWRpYVBsYXllclByb3h5OjptZWRpYVBsYXll
clJlYWR5U3RhdGVDaGFuZ2VkKToKKyAgICAgICAgZ3VhcmRlZCBmb3Igd2lyZWxlc3MgcGxheWJh
Y2sgdGFyZ2V0LgorICAgICAgICAqIEdQVVByb2Nlc3MvbWVkaWEvUmVtb3RlTWVkaWFQbGF5ZXJQ
cm94eS5oOiBndWFyZGVkIGNvY29hCisgICAgICAgIHNwZWNpZmljIGhlYWRlci4KKyAgICAgICAg
KiBHUFVQcm9jZXNzL21lZGlhL1JlbW90ZU1lZGlhUGxheWVyUHJveHkubWVzc2FnZXMuaW46IGFk
ZWRlZAorICAgICAgICBndWFyZHMgZm9yIGNvY29hL21hYy9pb3MgZnVuY3Rpb25zLgorICAgICAg
ICAqIEdQVVByb2Nlc3MvbWVkaWEvUmVtb3RlVGV4dFRyYWNrUHJveHkuY3BwOiBndWFyZGVkIGZv
ciBkYXRhY3VlCisgICAgICAgIHZhbHVlLgorICAgICAgICAqIFVJUHJvY2Vzcy9HUFUvR1BVUHJv
Y2Vzc1Byb3h5Lmg6IGd1YXJkZWQgY29jb2Egc3BlY2lmaWMgaGVhZGVyLgorICAgICAgICAqIFdl
YlByb2Nlc3MvR1BVL0dQVVByb2Nlc3NDb25uZWN0aW9uLmNwcDogZ3VhcmRlZCBjb2NvYSBzcGVj
aWZpYworICAgICAgICBoZWFkZXIuCisgICAgICAgIChXZWJLaXQ6OkdQVVByb2Nlc3NDb25uZWN0
aW9uOjpkaXNwYXRjaE1lc3NhZ2UpOiBndWFyZGVkIGNvY29hCisgICAgICAgIHNwZWNpZmljIGhl
YWRlci4KKyAgICAgICAgKiBXZWJQcm9jZXNzL0dQVS9tZWRpYS9NZWRpYVBsYXllclByaXZhdGVS
ZW1vdGUuY3BwOgorICAgICAgICAoV2ViS2l0OjpNZWRpYVBsYXllclByaXZhdGVSZW1vdGU6OnBy
ZXBhcmVGb3JQbGF5YmFjayk6IGd1YXJkZWQKKyAgICAgICAgaW50ZXJuYWwgY29jb2Egc3BlY2lm
aWMgY29kZS4KKyAgICAgICAgKFdlYktpdDo6TWVkaWFQbGF5ZXJQcml2YXRlUmVtb3RlOjpwbGF0
Zm9ybUxheWVyIGNvbnN0KTogZ3VhcmRlZAorICAgICAgICBpbnRlcm5hbCBjb2NvYSBzcGVjaWZp
YyBjb2RlLgorICAgICAgICAqIFdlYlByb2Nlc3MvR1BVL21lZGlhL01lZGlhUGxheWVyUHJpdmF0
ZVJlbW90ZS5oOiBndWFyZGVkIGNvY29hCisgICAgICAgIHNwZWNpZmljIGhlYWRlci4KKyAgICAg
ICAgKiBXZWJQcm9jZXNzL0dQVS9tZWRpYS9NZWRpYVBsYXllclByaXZhdGVSZW1vdGUubWVzc2Fn
ZXMuaW46CisgICAgICAgIGd1YXJkZWQgZGF0YXZhbHVlIGN1ZS4KKyAgICAgICAgKiBXZWJQcm9j
ZXNzL0dQVS9tZWRpYS9SZW1vdGVDRE0uY3BwOiBhZGRlZAorICAgICAgICBHUFVQcm9jZXNzQ29u
bmVjdGlvbi5oOyBvdGhlcndpc2UgY29tcGlsYXRpb24gZmFpbCBiZWNhdXNlIG9mCisgICAgICAg
IGluY29tcGxldGUgY2xhc3NlcyBkZWZpbml0aW9uLgorICAgICAgICAqIFdlYlByb2Nlc3MvR1BV
L21lZGlhL1JlbW90ZU1lZGlhUGxheWVyTWFuYWdlci5jcHA6CisgICAgICAgIChXZWJLaXQ6OlJl
bW90ZU1lZGlhUGxheWVyTWFuYWdlcjo6Y3JlYXRlUmVtb3RlTWVkaWFQbGF5ZXIpOgorICAgICAg
ICAqIFdlYlByb2Nlc3MvR1BVL21lZGlhL1JlbW90ZU1lZGlhUGxheWVyU3RhdGUuaDoKKyAgICAg
ICAgKFdlYktpdDo6UmVtb3RlTWVkaWFQbGF5ZXJTdGF0ZTo6ZGVjb2RlKTogSEFDSyAtLSBJIHNo
b3VsZCBsb29rCisgICAgICAgIGZvciBhIHByb3BlciBmaXguCisgICAgICAgICogV2ViUHJvY2Vz
cy9HUFUvbWVkaWEvVGV4dFRyYWNrUHJpdmF0ZVJlbW90ZS5oOiBndWFyZGVkIGRhdGF2YWx1ZQor
ICAgICAgICBjdWUuCisgICAgICAgICogV2ViUHJvY2Vzcy9HUFUvbWVkaWEvVmlkZW9MYXllclJl
bW90ZS5oOiBndWFyZGVkIGFsbCBoZWFkZXIgZm9yCisgICAgICAgIGNvY29hIHBsYXRmb3JtCisK
IDIwMjAtMDMtMTAgIHlvdWVubiBmYWJsZXQgIDx5b3Vlbm5AYXBwbGUuY29tPgogCiAgICAgICAg
IFtpT1NdIE1ha2Ugc3VyZSBhIE1lZGlTdHJlYW1UcmFjayBjbG9uZSBkb2VzIG5vdCBpbnRlcnJ1
cHQgdGhlIGJlaW5nIGNsb25lZCB0cmFjawpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvSGVh
ZGVycy5jbWFrZSBiL1NvdXJjZS9XZWJDb3JlL0hlYWRlcnMuY21ha2UKaW5kZXggZWI4NTQ2MjBj
OGQ0NGUwNDg0OGU1YjRlODQ5NDVkY2RmNDQ3YzBjNi4uNDQ2NzIwYjU3YzA2NDY2NzQyOTRhMWI3
OWE1OGI4OGRjNTg5MjRmZiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvSGVhZGVycy5jbWFr
ZQorKysgYi9Tb3VyY2UvV2ViQ29yZS9IZWFkZXJzLmNtYWtlCkBAIC0xOCw2ICsxOCw4IEBAIHNl
dChXZWJDb3JlX1BSSVZBVEVfRlJBTUVXT1JLX0hFQURFUlMKIAogICAgIE1vZHVsZXMvZW5jcnlw
dGVkbWVkaWEvQ0RNQ2xpZW50LmgKIAorICAgIE1vZHVsZXMvZW5jcnlwdGVkbWVkaWEvbGVnYWN5
L0xlZ2FjeUNETS5oCisKICAgICBNb2R1bGVzL2ZldGNoL0ZldGNoQm9keUNvbnN1bWVyLmgKICAg
ICBNb2R1bGVzL2ZldGNoL0ZldGNoQm9keVNvdXJjZS5oCiAgICAgTW9kdWxlcy9mZXRjaC9GZXRj
aEhlYWRlcnMuaApAQCAtMTE3OCw3ICsxMTgwLDExIEBAIHNldChXZWJDb3JlX1BSSVZBVEVfRlJB
TUVXT1JLX0hFQURFUlMKICAgICBwbGF0Zm9ybS9ncmFwaGljcy9hbmdsZS9FeHRlbnNpb25zR0xB
TkdMRS5oCiAKICAgICBwbGF0Zm9ybS9ncmFwaGljcy9kaXNwbGF5bGlzdHMvRGlzcGxheUxpc3Qu
aAorICAgIHBsYXRmb3JtL2dyYXBoaWNzL2Rpc3BsYXlsaXN0cy9EaXNwbGF5TGlzdERyYXdpbmdD
b250ZXh0LmgKKyAgICBwbGF0Zm9ybS9ncmFwaGljcy9kaXNwbGF5bGlzdHMvRGlzcGxheUxpc3RJ
bWFnZUJ1ZmZlci5oCiAgICAgcGxhdGZvcm0vZ3JhcGhpY3MvZGlzcGxheWxpc3RzL0Rpc3BsYXlM
aXN0SXRlbXMuaAorICAgIHBsYXRmb3JtL2dyYXBoaWNzL2Rpc3BsYXlsaXN0cy9EaXNwbGF5TGlz
dFJlY29yZGVyLmgKKyAgICBwbGF0Zm9ybS9ncmFwaGljcy9kaXNwbGF5bGlzdHMvRGlzcGxheUxp
c3RSZXBsYXllci5oCiAKICAgICBwbGF0Zm9ybS9ncmFwaGljcy9jdi9JbWFnZVRyYW5zZmVyU2Vz
c2lvblZULmgKIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9DTWFrZUxpc3RzLnR4dCBiL1Nv
dXJjZS9XZWJLaXQvQ01ha2VMaXN0cy50eHQKaW5kZXggYzU1ODE0NWVjY2ZlOGMxZDEzNGQxZmEy
MjFjZWFmNDNjNDAyYzhiMi4uYmUxM2YzYzZiMDVkYzI0NjI4OGRjNDU0OWMwNGI3MDU5ZDYxZmQy
YyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9DTWFrZUxpc3RzLnR4dAorKysgYi9Tb3VyY2Uv
V2ViS2l0L0NNYWtlTGlzdHMudHh0CkBAIC0xNyw2ICsxNyw5IEBAIHNldChXZWJLaXRfSU5DTFVE
RV9ESVJFQ1RPUklFUwogICAgICIke1dlYktpdF9ERVJJVkVEX1NPVVJDRVNfRElSfS9pbmNsdWRl
IgogICAgICIke1dFQktJVF9ESVJ9IgogICAgICIke1dFQktJVF9ESVJ9L0dQVVByb2Nlc3MiCisg
ICAgIiR7V0VCS0lUX0RJUn0vR1BVUHJvY2Vzcy9ncmFwaGljcyIKKyAgICAiJHtXRUJLSVRfRElS
fS9HUFVQcm9jZXNzL21lZGlhIgorICAgICIke1dFQktJVF9ESVJ9L0dQVVByb2Nlc3Mvd2VicnRj
IgogICAgICIke1dFQktJVF9ESVJ9L05ldHdvcmtQcm9jZXNzIgogICAgICIke1dFQktJVF9ESVJ9
L05ldHdvcmtQcm9jZXNzL0NsYXNzaWZpZXIiCiAgICAgIiR7V0VCS0lUX0RJUn0vTmV0d29ya1By
b2Nlc3MvQ29va2llcyIKQEAgLTExNiw2ICsxMTksMzIgQEAgbGlzdChBUFBFTkQgV2ViS2l0X1VO
SUZJRURfU09VUkNFX0xJU1RfRklMRVMKICkKIAogc2V0KFdlYktpdF9NRVNTQUdFU19JTl9GSUxF
UworICAgIEdQVVByb2Nlc3MvR1BVQ29ubmVjdGlvblRvV2ViUHJvY2Vzcy5tZXNzYWdlcy5pbgor
ICAgIEdQVVByb2Nlc3MvR1BVUHJvY2Vzcy5tZXNzYWdlcy5pbgorCisgICAgR1BVUHJvY2Vzcy9n
cmFwaGljcy9SZW1vdGVSZW5kZXJpbmdCYWNrZW5kUHJveHkubWVzc2FnZXMuaW4KKworICAgIEdQ
VVByb2Nlc3MvbWVkaWEvUmVtb3RlQXVkaW9EZXN0aW5hdGlvbk1hbmFnZXIubWVzc2FnZXMuaW4K
KyAgICBHUFVQcm9jZXNzL21lZGlhL1JlbW90ZUF1ZGlvU2Vzc2lvblByb3h5Lm1lc3NhZ2VzLmlu
CisgICAgR1BVUHJvY2Vzcy9tZWRpYS9SZW1vdGVDRE1GYWN0b3J5UHJveHkubWVzc2FnZXMuaW4K
KyAgICBHUFVQcm9jZXNzL21lZGlhL1JlbW90ZUNETUluc3RhbmNlUHJveHkubWVzc2FnZXMuaW4K
KyAgICBHUFVQcm9jZXNzL21lZGlhL1JlbW90ZUNETUluc3RhbmNlU2Vzc2lvblByb3h5Lm1lc3Nh
Z2VzLmluCisgICAgR1BVUHJvY2Vzcy9tZWRpYS9SZW1vdGVDRE1Qcm94eS5tZXNzYWdlcy5pbgor
ICAgIEdQVVByb2Nlc3MvbWVkaWEvUmVtb3RlTGVnYWN5Q0RNRmFjdG9yeVByb3h5Lm1lc3NhZ2Vz
LmluCisgICAgR1BVUHJvY2Vzcy9tZWRpYS9SZW1vdGVMZWdhY3lDRE1Qcm94eS5tZXNzYWdlcy5p
bgorICAgIEdQVVByb2Nlc3MvbWVkaWEvUmVtb3RlTGVnYWN5Q0RNU2Vzc2lvblByb3h5Lm1lc3Nh
Z2VzLmluCisgICAgR1BVUHJvY2Vzcy9tZWRpYS9SZW1vdGVNZWRpYVBsYXllck1hbmFnZXJQcm94
eS5tZXNzYWdlcy5pbgorICAgIEdQVVByb2Nlc3MvbWVkaWEvUmVtb3RlTWVkaWFQbGF5ZXJQcm94
eS5tZXNzYWdlcy5pbgorICAgIEdQVVByb2Nlc3MvbWVkaWEvUmVtb3RlTWVkaWFSZXNvdXJjZU1h
bmFnZXIubWVzc2FnZXMuaW4KKworICAgIEdQVVByb2Nlc3Mvd2VicnRjL0xpYldlYlJUQ0NvZGVj
c1Byb3h5Lm1lc3NhZ2VzLmluCisgICAgR1BVUHJvY2Vzcy93ZWJydGMvUmVtb3RlQXVkaW9NZWRp
YVN0cmVhbVRyYWNrUmVuZGVyZXIubWVzc2FnZXMuaW4KKyAgICBHUFVQcm9jZXNzL3dlYnJ0Yy9S
ZW1vdGVBdWRpb01lZGlhU3RyZWFtVHJhY2tSZW5kZXJlck1hbmFnZXIubWVzc2FnZXMuaW4KKyAg
ICBHUFVQcm9jZXNzL3dlYnJ0Yy9SZW1vdGVNZWRpYVJlY29yZGVyLm1lc3NhZ2VzLmluCisgICAg
R1BVUHJvY2Vzcy93ZWJydGMvUmVtb3RlTWVkaWFSZWNvcmRlck1hbmFnZXIubWVzc2FnZXMuaW4K
KyAgICBHUFVQcm9jZXNzL3dlYnJ0Yy9SZW1vdGVTYW1wbGVCdWZmZXJEaXNwbGF5TGF5ZXIubWVz
c2FnZXMuaW4KKyAgICBHUFVQcm9jZXNzL3dlYnJ0Yy9SZW1vdGVTYW1wbGVCdWZmZXJEaXNwbGF5
TGF5ZXJNYW5hZ2VyLm1lc3NhZ2VzLmluCisKICAgICBOZXR3b3JrUHJvY2Vzcy9Db29raWVzL1dl
YkNvb2tpZU1hbmFnZXIubWVzc2FnZXMuaW4KIAogICAgIE5ldHdvcmtQcm9jZXNzL0luZGV4ZWRE
Qi9XZWJJREJTZXJ2ZXIubWVzc2FnZXMuaW4KQEAgLTE2NSw2ICsxOTQsOCBAQCBzZXQoV2ViS2l0
X01FU1NBR0VTX0lOX0ZJTEVTCiAKICAgICBVSVByb2Nlc3MvRG93bmxvYWRzL0Rvd25sb2FkUHJv
eHkubWVzc2FnZXMuaW4KIAorICAgIFVJUHJvY2Vzcy9HUFUvR1BVUHJvY2Vzc1Byb3h5Lm1lc3Nh
Z2VzLmluCisKICAgICBVSVByb2Nlc3MvSW5zcGVjdG9yL1JlbW90ZVdlYkluc3BlY3RvclByb3h5
Lm1lc3NhZ2VzLmluCiAgICAgVUlQcm9jZXNzL0luc3BlY3Rvci9XZWJJbnNwZWN0b3JQcm94eS5t
ZXNzYWdlcy5pbgogCkBAIC0xODIsNiArMjEzLDIwIEBAIHNldChXZWJLaXRfTUVTU0FHRVNfSU5f
RklMRVMKIAogICAgIFdlYlByb2Nlc3MvRnVsbFNjcmVlbi9XZWJGdWxsU2NyZWVuTWFuYWdlci5t
ZXNzYWdlcy5pbgogCisgICAgV2ViUHJvY2Vzcy9HUFUvR1BVUHJvY2Vzc0Nvbm5lY3Rpb24ubWVz
c2FnZXMuaW4KKworICAgIFdlYlByb2Nlc3MvR1BVL2dyYXBoaWNzL1JlbW90ZVJlbmRlcmluZ0Jh
Y2tlbmQubWVzc2FnZXMuaW4KKworICAgIFdlYlByb2Nlc3MvR1BVL21lZGlhL01lZGlhUGxheWVy
UHJpdmF0ZVJlbW90ZS5tZXNzYWdlcy5pbgorICAgIFdlYlByb2Nlc3MvR1BVL21lZGlhL1JlbW90
ZUF1ZGlvRGVzdGluYXRpb25Qcm94eS5tZXNzYWdlcy5pbgorICAgIFdlYlByb2Nlc3MvR1BVL21l
ZGlhL1JlbW90ZUF1ZGlvU2Vzc2lvbi5tZXNzYWdlcy5pbgorICAgIFdlYlByb2Nlc3MvR1BVL21l
ZGlhL1JlbW90ZUNETUluc3RhbmNlU2Vzc2lvbi5tZXNzYWdlcy5pbgorICAgIFdlYlByb2Nlc3Mv
R1BVL21lZGlhL1JlbW90ZUxlZ2FjeUNETVNlc3Npb24ubWVzc2FnZXMuaW4KKyAgICBXZWJQcm9j
ZXNzL0dQVS9tZWRpYS9SZW1vdGVNZWRpYVBsYXllck1hbmFnZXIubWVzc2FnZXMuaW4KKworICAg
IFdlYlByb2Nlc3MvR1BVL3dlYnJ0Yy9MaWJXZWJSVENDb2RlY3MubWVzc2FnZXMuaW4KKyAgICBX
ZWJQcm9jZXNzL0dQVS93ZWJydGMvU2FtcGxlQnVmZmVyRGlzcGxheUxheWVyLm1lc3NhZ2VzLmlu
CisKICAgICBXZWJQcm9jZXNzL0dlb2xvY2F0aW9uL1dlYkdlb2xvY2F0aW9uTWFuYWdlci5tZXNz
YWdlcy5pbgogCiAgICAgV2ViUHJvY2Vzcy9JbnNwZWN0b3IvUmVtb3RlV2ViSW5zcGVjdG9yVUku
bWVzc2FnZXMuaW4KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvR1BVUHJvY2Vzcy9HUFVDb25u
ZWN0aW9uVG9XZWJQcm9jZXNzLmNwcCBiL1NvdXJjZS9XZWJLaXQvR1BVUHJvY2Vzcy9HUFVDb25u
ZWN0aW9uVG9XZWJQcm9jZXNzLmNwcAppbmRleCBjMTA4ZGVhNTU5NWQwOTVlOWM3ODQ0YTNiY2Q0
NzExMzUxYTQ4ZjJjLi41MjgxMDI0NGYxYTA2M2RiNDBmM2U2MWJmOTRkMjFhN2IyYTk0M2UyIDEw
MDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L0dQVVByb2Nlc3MvR1BVQ29ubmVjdGlvblRvV2ViUHJv
Y2Vzcy5jcHAKKysrIGIvU291cmNlL1dlYktpdC9HUFVQcm9jZXNzL0dQVUNvbm5lY3Rpb25Ub1dl
YlByb2Nlc3MuY3BwCkBAIC00Miw3ICs0Miw2IEBACiAjaW5jbHVkZSAiUmVtb3RlQXVkaW9NZWRp
YVN0cmVhbVRyYWNrUmVuZGVyZXJNYW5hZ2VyLmgiCiAjaW5jbHVkZSAiUmVtb3RlQXVkaW9NZWRp
YVN0cmVhbVRyYWNrUmVuZGVyZXJNYW5hZ2VyTWVzc2FnZXMuaCIKICNpbmNsdWRlICJSZW1vdGVB
dWRpb01lZGlhU3RyZWFtVHJhY2tSZW5kZXJlck1lc3NhZ2VzLmgiCi0jaW5jbHVkZSAiUmVtb3Rl
TGF5ZXJUcmVlRHJhd2luZ0FyZWFQcm94eU1lc3NhZ2VzLmgiCiAjaW5jbHVkZSAiUmVtb3RlTWVk
aWFQbGF5ZXJNYW5hZ2VyUHJveHkuaCIKICNpbmNsdWRlICJSZW1vdGVNZWRpYVBsYXllck1hbmFn
ZXJQcm94eU1lc3NhZ2VzLmgiCiAjaW5jbHVkZSAiUmVtb3RlTWVkaWFQbGF5ZXJQcm94eS5oIgpA
QCAtNTYsOCArNTUsNiBAQAogI2luY2x1ZGUgIlJlbW90ZVNhbXBsZUJ1ZmZlckRpc3BsYXlMYXll
ck1hbmFnZXJNZXNzYWdlcy5oIgogI2luY2x1ZGUgIlJlbW90ZVNhbXBsZUJ1ZmZlckRpc3BsYXlM
YXllck1lc3NhZ2VzLmgiCiAjaW5jbHVkZSAiUmVtb3RlU2Nyb2xsaW5nQ29vcmRpbmF0b3JUcmFu
c2FjdGlvbi5oIgotI2luY2x1ZGUgIlVzZXJNZWRpYUNhcHR1cmVNYW5hZ2VyUHJveHkuaCIKLSNp
bmNsdWRlICJVc2VyTWVkaWFDYXB0dXJlTWFuYWdlclByb3h5TWVzc2FnZXMuaCIKICNpbmNsdWRl
ICJXZWJDb3JlQXJndW1lbnRDb2RlcnMuaCIKICNpbmNsdWRlICJXZWJFcnJvcnMuaCIKICNpbmNs
dWRlICJXZWJQcm9jZXNzTWVzc2FnZXMuaCIKQEAgLTY1LDYgKzYyLDkgQEAKICNpbmNsdWRlIDxX
ZWJDb3JlL05vd1BsYXlpbmdNYW5hZ2VyLmg+CiAKICNpZiBQTEFURk9STShDT0NPQSkKKyNpbmNs
dWRlICJSZW1vdGVMYXllclRyZWVEcmF3aW5nQXJlYVByb3h5TWVzc2FnZXMuaCIKKyNpbmNsdWRl
ICJVc2VyTWVkaWFDYXB0dXJlTWFuYWdlclByb3h5LmgiCisjaW5jbHVkZSAiVXNlck1lZGlhQ2Fw
dHVyZU1hbmFnZXJQcm94eU1lc3NhZ2VzLmgiCiAjaW5jbHVkZSA8V2ViQ29yZS9NZWRpYVNlc3Np
b25NYW5hZ2VyQ29jb2EuaD4KICNpbmNsdWRlIDxXZWJDb3JlL01lZGlhU2Vzc2lvbk1hbmFnZXJJ
T1MuaD4KICNlbmRpZgpAQCAtMTUxLDEwICsxNTEsMTIgQEAgR1BVQ29ubmVjdGlvblRvV2ViUHJv
Y2Vzczo6fkdQVUNvbm5lY3Rpb25Ub1dlYlByb2Nlc3MoKQogCiB2b2lkIEdQVUNvbm5lY3Rpb25U
b1dlYlByb2Nlc3M6OmRpZENsb3NlKElQQzo6Q29ubmVjdGlvbiYpCiB7CisjaWYgVVNFKEFVRElP
X1NFU1NJT04pCiAgICAgaWYgKG1fYXVkaW9TZXNzaW9uUHJveHkpIHsKICAgICAgICAgZ3B1UHJv
Y2VzcygpLmF1ZGlvU2Vzc2lvbk1hbmFnZXIoKS5yZW1vdmVQcm94eSh3ZWJQcm9jZXNzSWRlbnRp
ZmllcigpKTsKICAgICAgICAgbV9hdWRpb1Nlc3Npb25Qcm94eSA9IG51bGxwdHI7CiAgICAgfQor
I2VuZGlmCiB9CiAKIExvZ2dlciYgR1BVQ29ubmVjdGlvblRvV2ViUHJvY2Vzczo6bG9nZ2VyKCkK
QEAgLTM0Miw3ICszNDQsNyBAQCBib29sIEdQVUNvbm5lY3Rpb25Ub1dlYlByb2Nlc3M6OmRpc3Bh
dGNoTWVzc2FnZShJUEM6OkNvbm5lY3Rpb24mIGNvbm5lY3Rpb24sIElQQwogICAgICAgICByZW1v
dGVNZWRpYVJlc291cmNlTWFuYWdlcigpLmRpZFJlY2VpdmVNZXNzYWdlKGNvbm5lY3Rpb24sIGRl
Y29kZXIpOwogICAgICAgICByZXR1cm4gdHJ1ZTsKICAgICB9Ci0jaWYgRU5BQkxFKE1FRElBX1NU
UkVBTSkKKyNpZiBQTEFURk9STShDT0NPQSkgJiYgRU5BQkxFKE1FRElBX1NUUkVBTSkKICAgICBp
ZiAoZGVjb2Rlci5tZXNzYWdlUmVjZWl2ZXJOYW1lKCkgPT0gTWVzc2FnZXM6OlVzZXJNZWRpYUNh
cHR1cmVNYW5hZ2VyUHJveHk6Om1lc3NhZ2VSZWNlaXZlck5hbWUoKSkgewogICAgICAgICB1c2Vy
TWVkaWFDYXB0dXJlTWFuYWdlclByb3h5KCkuZGlkUmVjZWl2ZU1lc3NhZ2VGcm9tR1BVUHJvY2Vz
cyhjb25uZWN0aW9uLCBkZWNvZGVyKTsKICAgICAgICAgcmV0dXJuIHRydWU7CkBAIC0zNTUsNyAr
MzU3LDcgQEAgYm9vbCBHUFVDb25uZWN0aW9uVG9XZWJQcm9jZXNzOjpkaXNwYXRjaE1lc3NhZ2Uo
SVBDOjpDb25uZWN0aW9uJiBjb25uZWN0aW9uLCBJUEMKICAgICAgICAgbWVkaWFSZWNvcmRlck1h
bmFnZXIoKS5kaWRSZWNlaXZlUmVtb3RlTWVkaWFSZWNvcmRlck1lc3NhZ2UoY29ubmVjdGlvbiwg
ZGVjb2Rlcik7CiAgICAgICAgIHJldHVybiB0cnVlOwogICAgIH0KLSNpZiBQTEFURk9STShDT0NP
QSkgJiYgRU5BQkxFKFZJREVPX1RSQUNLKQorI2lmIEVOQUJMRShWSURFT19UUkFDSykKICAgICBp
ZiAoZGVjb2Rlci5tZXNzYWdlUmVjZWl2ZXJOYW1lKCkgPT0gTWVzc2FnZXM6OlJlbW90ZUF1ZGlv
TWVkaWFTdHJlYW1UcmFja1JlbmRlcmVyTWFuYWdlcjo6bWVzc2FnZVJlY2VpdmVyTmFtZSgpKSB7
CiAgICAgICAgIGF1ZGlvVHJhY2tSZW5kZXJlck1hbmFnZXIoKS5kaWRSZWNlaXZlTWVzc2FnZUZy
b21XZWJQcm9jZXNzKGNvbm5lY3Rpb24sIGRlY29kZXIpOwogICAgICAgICByZXR1cm4gdHJ1ZTsK
QEAgLTQ3OSwxNCArNDgxLDE0IEBAIGNvbnN0IFN0cmluZyYgR1BVQ29ubmVjdGlvblRvV2ViUHJv
Y2Vzczo6bWVkaWFDYWNoZURpcmVjdG9yeSgpIGNvbnN0CiAgICAgcmV0dXJuIG1fZ3B1UHJvY2Vz
cy0+bWVkaWFDYWNoZURpcmVjdG9yeShtX3Nlc3Npb25JRCk7CiB9CiAKLSNpZiBFTkFCTEUoRU5D
UllQVEVEX01FRElBKSB8fCBFTkFCTEUoTEVHQUNZX0VOQ1JZUFRFRF9NRURJQSkKKyNpZiBFTkFC
TEUoTEVHQUNZX0VOQ1JZUFRFRF9NRURJQSkKIGNvbnN0IFN0cmluZyYgR1BVQ29ubmVjdGlvblRv
V2ViUHJvY2Vzczo6bWVkaWFLZXlzU3RvcmFnZURpcmVjdG9yeSgpIGNvbnN0CiB7CiAgICAgcmV0
dXJuIG1fZ3B1UHJvY2Vzcy0+bWVkaWFLZXlzU3RvcmFnZURpcmVjdG9yeShtX3Nlc3Npb25JRCk7
CiB9CiAjZW5kaWYKIAotI2lmIEVOQUJMRShNRURJQV9TVFJFQU0pCisjaWYgUExBVEZPUk0oQ09D
T0EpICYmIEVOQUJMRShNRURJQV9TVFJFQU0pCiB2b2lkIEdQVUNvbm5lY3Rpb25Ub1dlYlByb2Nl
c3M6OnNldE9yaWVudGF0aW9uRm9yTWVkaWFDYXB0dXJlKHVpbnQ2NF90IG9yaWVudGF0aW9uKQog
ewogICAgIHVzZXJNZWRpYUNhcHR1cmVNYW5hZ2VyUHJveHkoKS5zZXRPcmllbnRhdGlvbihvcmll
bnRhdGlvbik7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L0dQVVByb2Nlc3MvR1BVQ29ubmVj
dGlvblRvV2ViUHJvY2Vzcy5tZXNzYWdlcy5pbiBiL1NvdXJjZS9XZWJLaXQvR1BVUHJvY2Vzcy9H
UFVDb25uZWN0aW9uVG9XZWJQcm9jZXNzLm1lc3NhZ2VzLmluCmluZGV4IGQ4N2Q3NjEzNGFlZWMx
YThhYzA3NWU1Njk5YTI5MWFmMzkxMjc3Y2MuLjBjNmYxMWQxYTM0NWY1NTYwYWNlOGYyMGU2OGE4
N2RjNGFlYTM3YjMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvR1BVUHJvY2Vzcy9HUFVDb25u
ZWN0aW9uVG9XZWJQcm9jZXNzLm1lc3NhZ2VzLmluCisrKyBiL1NvdXJjZS9XZWJLaXQvR1BVUHJv
Y2Vzcy9HUFVDb25uZWN0aW9uVG9XZWJQcm9jZXNzLm1lc3NhZ2VzLmluCkBAIC0yOSw3ICsyOSw5
IEBAIG1lc3NhZ2VzIC0+IEdQVUNvbm5lY3Rpb25Ub1dlYlByb2Nlc3MgV2FudHNEaXNwYXRjaE1l
c3NhZ2UgewogICAgIHZvaWQgQ2xlYXJOb3dQbGF5aW5nSW5mbygpOwogICAgIHZvaWQgU2V0Tm93
UGxheWluZ0luZm8oYm9vbCBzZXRBc05vd1BsYXlpbmdBcHBsaWNhdGlvbiwgc3RydWN0IFdlYkNv
cmU6Ok5vd1BsYXlpbmdJbmZvIG5vd1BsYXlpbmdJbmZvKTsKICNlbmRpZgorI2lmIFVTRShBVURJ
T19TRVNTSU9OKQogICAgIEVuc3VyZUF1ZGlvU2Vzc2lvbigpIC0+IChzdHJ1Y3QgV2ViS2l0OjpS
ZW1vdGVBdWRpb1Nlc3Npb25Db25maWd1cmF0aW9uIGNvbmZpZ3VyYXRpb24pIFN5bmNocm9ub3Vz
CisjZW5kaWYKICNpZiBQTEFURk9STShJT1NfRkFNSUxZKQogICAgIEVuc3VyZU1lZGlhU2Vzc2lv
bkhlbHBlcigpCiAjZW5kaWYKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvR1BVUHJvY2Vzcy9H
UFVQcm9jZXNzLmNwcCBiL1NvdXJjZS9XZWJLaXQvR1BVUHJvY2Vzcy9HUFVQcm9jZXNzLmNwcApp
bmRleCA5NmZhOTUyN2MzODU1Y2Y5YjQ1YTU1NzgzYjgzMzkzNWY1YzBlZDhiLi40YWRkNDY0OTg1
OThkODY3MmVmYWNmMWRiMjIwMTM2YWM4ZjZiOTkzIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0
L0dQVVByb2Nlc3MvR1BVUHJvY2Vzcy5jcHAKKysrIGIvU291cmNlL1dlYktpdC9HUFVQcm9jZXNz
L0dQVVByb2Nlc3MuY3BwCkBAIC00MSw3ICs0MSw2IEBACiAjaW5jbHVkZSAiV2ViUHJvY2Vzc1Bv
b2xNZXNzYWdlcy5oIgogI2luY2x1ZGUgPFdlYkNvcmUvRGVwcmVjYXRlZEdsb2JhbFNldHRpbmdz
Lmg+CiAjaW5jbHVkZSA8V2ViQ29yZS9Mb2dJbml0aWFsaXphdGlvbi5oPgotI2luY2x1ZGUgPFdl
YkNvcmUvTW9ja0F1ZGlvU2hhcmVkVW5pdC5oPgogI2luY2x1ZGUgPFdlYkNvcmUvTm93UGxheWlu
Z01hbmFnZXIuaD4KICNpbmNsdWRlIDxXZWJDb3JlL1J1bnRpbWVBcHBsaWNhdGlvbkNoZWNrcy5o
PgogI2luY2x1ZGUgPHd0Zi9BbGdvcml0aG1zLmg+CkBAIC01Miw2ICs1MSwxMCBAQAogI2luY2x1
ZGUgPHd0Zi9VbmlxdWVSZWYuaD4KICNpbmNsdWRlIDx3dGYvdGV4dC9BdG9tU3RyaW5nLmg+CiAK
KyNpZiBQTEFURk9STShDT0NPQSkKKyNpbmNsdWRlIDxXZWJDb3JlL01vY2tBdWRpb1NoYXJlZFVu
aXQuaD4KKyNlbmRpZgorCiAjaWYgRU5BQkxFKEdQVV9QUk9DRVNTKSAmJiBVU0UoQVVESU9fU0VT
U0lPTikKICNpbmNsdWRlICJSZW1vdGVBdWRpb1Nlc3Npb25Qcm94eU1hbmFnZXIuaCIKICNlbmRp
ZgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9HUFVQcm9jZXNzL21lZGlhL1JlbW90ZUxlZ2Fj
eUNETUZhY3RvcnlQcm94eS5jcHAgYi9Tb3VyY2UvV2ViS2l0L0dQVVByb2Nlc3MvbWVkaWEvUmVt
b3RlTGVnYWN5Q0RNRmFjdG9yeVByb3h5LmNwcAppbmRleCAwMTJmZTRkOWJlZTQ2NGE1ODY3NmIy
MDc1YTdkNjc5MTc4YmRjMGFmLi5mNWQ1MDgzYzhjMDc1ZmRhZWVjN2JiNzcxYjU1YTg1MTY5MmIx
NWI1IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L0dQVVByb2Nlc3MvbWVkaWEvUmVtb3RlTGVn
YWN5Q0RNRmFjdG9yeVByb3h5LmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0L0dQVVByb2Nlc3MvbWVk
aWEvUmVtb3RlTGVnYWN5Q0RNRmFjdG9yeVByb3h5LmNwcApAQCAtMjYsNyArMjYsNyBAQAogI2lu
Y2x1ZGUgImNvbmZpZy5oIgogI2luY2x1ZGUgIlJlbW90ZUxlZ2FjeUNETUZhY3RvcnlQcm94eS5o
IgogCi0jaWYgRU5BQkxFKEdQVV9QUk9DRVNTKSAmJiBFTkFCTEUoRU5DUllQVEVEX01FRElBKQor
I2lmIEVOQUJMRShHUFVfUFJPQ0VTUykgJiYgRU5BQkxFKExFR0FDWV9FTkNSWVBURURfTUVESUEp
CiAKICNpbmNsdWRlICJSZW1vdGVMZWdhY3lDRE1Qcm94eS5oIgogI2luY2x1ZGUgIlJlbW90ZUxl
Z2FjeUNETVByb3h5TWVzc2FnZXMuaCIKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvR1BVUHJv
Y2Vzcy9tZWRpYS9SZW1vdGVNZWRpYVBsYXllclByb3h5LmNwcCBiL1NvdXJjZS9XZWJLaXQvR1BV
UHJvY2Vzcy9tZWRpYS9SZW1vdGVNZWRpYVBsYXllclByb3h5LmNwcAppbmRleCA3ODRkMjQwOWM4
M2U5YTdmNjA4NmM3MDIyODFlMWQyOTVjOTM1YzRlLi4wNjcyYmU2YTQzMjE1ODgwZWI4Y2I4NDNj
ODViYzEyNDIxNmYzMDM5IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L0dQVVByb2Nlc3MvbWVk
aWEvUmVtb3RlTWVkaWFQbGF5ZXJQcm94eS5jcHAKKysrIGIvU291cmNlL1dlYktpdC9HUFVQcm9j
ZXNzL21lZGlhL1JlbW90ZU1lZGlhUGxheWVyUHJveHkuY3BwCkBAIC0zMCw3ICszMCw2IEBACiAK
ICNpbmNsdWRlICJEYXRhUmVmZXJlbmNlLmgiCiAjaW5jbHVkZSAiR1BVQ29ubmVjdGlvblRvV2Vi
UHJvY2Vzcy5oIgotI2luY2x1ZGUgIkxheWVySG9zdGluZ0NvbnRleHQuaCIKICNpbmNsdWRlICJN
ZWRpYVBsYXllclByaXZhdGVSZW1vdGVNZXNzYWdlcy5oIgogI2luY2x1ZGUgIlJlbW90ZUF1ZGlv
VHJhY2tQcm94eS5oIgogI2luY2x1ZGUgIlJlbW90ZUxlZ2FjeUNETUZhY3RvcnlQcm94eS5oIgpA
QCAtNTAsNiArNDksMTAgQEAKICNpbmNsdWRlIDxXZWJDb3JlL01lZGlhUGxheWVyUHJpdmF0ZS5o
PgogI2luY2x1ZGUgPFdlYkNvcmUvTm90SW1wbGVtZW50ZWQuaD4KIAorI2lmIFBMQVRGT1JNKENP
Q09BKQorI2luY2x1ZGUgIkxheWVySG9zdGluZ0NvbnRleHQuaCIKKyNlbmRpZgorCiAjaWYgRU5B
QkxFKEVOQ1JZUFRFRF9NRURJQSkKICNpbmNsdWRlICJSZW1vdGVDRE1GYWN0b3J5UHJveHkuaCIK
ICNlbmRpZgpAQCAtMTAzLDcgKzEwNiw5IEBAIHZvaWQgUmVtb3RlTWVkaWFQbGF5ZXJQcm94eTo6
Z2V0Q29uZmlndXJhdGlvbihSZW1vdGVNZWRpYVBsYXllckNvbmZpZ3VyYXRpb24mIGNvCiAgICAg
Y29uZmlndXJhdGlvbi5zdXBwb3J0c0Z1bGxzY3JlZW4gPSBtX3BsYXllci0+c3VwcG9ydHNGdWxs
c2NyZWVuKCk7CiAgICAgY29uZmlndXJhdGlvbi5zdXBwb3J0c1BpY3R1cmVJblBpY3R1cmUgPSBt
X3BsYXllci0+c3VwcG9ydHNQaWN0dXJlSW5QaWN0dXJlKCk7CiAgICAgY29uZmlndXJhdGlvbi5z
dXBwb3J0c0FjY2VsZXJhdGVkUmVuZGVyaW5nID0gbV9wbGF5ZXItPnN1cHBvcnRzQWNjZWxlcmF0
ZWRSZW5kZXJpbmcoKTsKKyNpZiBFTkFCTEUoV0lSRUxFU1NfUExBWUJBQ0tfVEFSR0VUKQogICAg
IGNvbmZpZ3VyYXRpb24uY2FuUGxheVRvV2lyZWxlc3NQbGF5YmFja1RhcmdldCA9IG1fcGxheWVy
LT5jYW5QbGF5VG9XaXJlbGVzc1BsYXliYWNrVGFyZ2V0KCk7CisjZW5kaWYKICAgICBjb25maWd1
cmF0aW9uLnNob3VsZElnbm9yZUludHJpbnNpY1NpemUgPSBtX3BsYXllci0+c2hvdWxkSWdub3Jl
SW50cmluc2ljU2l6ZSgpOwogfQogCkBAIC0xOTksMTEgKzIwNCw2IEBAIHZvaWQgUmVtb3RlTWVk
aWFQbGF5ZXJQcm94eTo6c2V0U2hvdWxkTWFpbnRhaW5Bc3BlY3RSYXRpbyhib29sIG1haW50YWlu
UmF0aW8pCiAgICAgbV9wbGF5ZXItPnNldFNob3VsZE1haW50YWluQXNwZWN0UmF0aW8obWFpbnRh
aW5SYXRpbyk7CiB9CiAKLXZvaWQgUmVtb3RlTWVkaWFQbGF5ZXJQcm94eTo6c2V0VmlkZW9GdWxs
c2NyZWVuR3Jhdml0eShXZWJDb3JlOjpNZWRpYVBsYXllckVudW1zOjpWaWRlb0dyYXZpdHkgZ3Jh
dml0eSkKLXsKLSAgICBtX3BsYXllci0+c2V0VmlkZW9GdWxsc2NyZWVuR3Jhdml0eShncmF2aXR5
KTsKLX0KLQogdm9pZCBSZW1vdGVNZWRpYVBsYXllclByb3h5OjphY2NlbGVyYXRlZFJlbmRlcmlu
Z1N0YXRlQ2hhbmdlZChib29sIHJlbmRlcmluZ0NhbkJlQWNjZWxlcmF0ZWQpCiB7CiAgICAgbV9y
ZW5kZXJpbmdDYW5CZUFjY2VsZXJhdGVkID0gcmVuZGVyaW5nQ2FuQmVBY2NlbGVyYXRlZDsKQEAg
LTI0MCw2ICsyNDAsMTIgQEAgdm9pZCBSZW1vdGVNZWRpYVBsYXllclByb3h5OjpyZW1vdmVSZXNv
dXJjZShSZW1vdGVNZWRpYVJlc291cmNlSWRlbnRpZmllciByZW1vdGUKIH0KIAogLy8gTWVkaWFQ
bGF5ZXJDbGllbnQKKyNpZiBQTEFURk9STShJT1NfRkFNSUxZKSB8fCAoUExBVEZPUk0oTUFDKSAm
JiBFTkFCTEUoVklERU9fUFJFU0VOVEFUSU9OX01PREUpKQordm9pZCBSZW1vdGVNZWRpYVBsYXll
clByb3h5OjpzZXRWaWRlb0Z1bGxzY3JlZW5HcmF2aXR5KFdlYkNvcmU6Ok1lZGlhUGxheWVyRW51
bXM6OlZpZGVvR3Jhdml0eSBncmF2aXR5KQoreworICAgIG1fcGxheWVyLT5zZXRWaWRlb0Z1bGxz
Y3JlZW5HcmF2aXR5KGdyYXZpdHkpOworfQorCiB2b2lkIFJlbW90ZU1lZGlhUGxheWVyUHJveHk6
OnVwZGF0ZVZpZGVvRnVsbHNjcmVlbklubGluZUltYWdlKCkKIHsKICAgICBtX3BsYXllci0+dXBk
YXRlVmlkZW9GdWxsc2NyZWVuSW5saW5lSW1hZ2UoKTsKQEAgLTI1MCwxNCArMjU2LDE1IEBAIHZv
aWQgUmVtb3RlTWVkaWFQbGF5ZXJQcm94eTo6c2V0VmlkZW9GdWxsc2NyZWVuTW9kZShNZWRpYVBs
YXllcjo6VmlkZW9GdWxsc2NyZWVuCiAgICAgbV9wbGF5ZXItPnNldFZpZGVvRnVsbHNjcmVlbk1v
ZGUobW9kZSk7CiB9CiAKLXZvaWQgUmVtb3RlTWVkaWFQbGF5ZXJQcm94eTo6c2V0QnVmZmVyaW5n
UG9saWN5KE1lZGlhUGxheWVyOjpCdWZmZXJpbmdQb2xpY3kgcG9saWN5KQordm9pZCBSZW1vdGVN
ZWRpYVBsYXllclByb3h5Ojp2aWRlb0Z1bGxzY3JlZW5TdGFuZGJ5Q2hhbmdlZCgpCiB7Ci0gICAg
bV9wbGF5ZXItPnNldEJ1ZmZlcmluZ1BvbGljeShwb2xpY3kpOworICAgIG1fcGxheWVyLT52aWRl
b0Z1bGxzY3JlZW5TdGFuZGJ5Q2hhbmdlZCgpOwogfQorI2VuZGlmCiAKLXZvaWQgUmVtb3RlTWVk
aWFQbGF5ZXJQcm94eTo6dmlkZW9GdWxsc2NyZWVuU3RhbmRieUNoYW5nZWQoKQordm9pZCBSZW1v
dGVNZWRpYVBsYXllclByb3h5OjpzZXRCdWZmZXJpbmdQb2xpY3koTWVkaWFQbGF5ZXI6OkJ1ZmZl
cmluZ1BvbGljeSBwb2xpY3kpCiB7Ci0gICAgbV9wbGF5ZXItPnZpZGVvRnVsbHNjcmVlblN0YW5k
YnlDaGFuZ2VkKCk7CisgICAgbV9wbGF5ZXItPnNldEJ1ZmZlcmluZ1BvbGljeShwb2xpY3kpOwog
fQogCiAjaWYgUExBVEZPUk0oSU9TX0ZBTUlMWSkKQEAgLTI4OCw3ICsyOTUsOSBAQCB2b2lkIFJl
bW90ZU1lZGlhUGxheWVyUHJveHk6Om1lZGlhUGxheWVyUmVhZHlTdGF0ZUNoYW5nZWQoKQogICAg
IG1fY2FjaGVkU3RhdGUubWF4RmFzdEZvcndhcmRSYXRlID0gbV9wbGF5ZXItPm1heEZhc3RGb3J3
YXJkUmF0ZSgpOwogICAgIG1fY2FjaGVkU3RhdGUubWluRmFzdFJldmVyc2VSYXRlID0gbV9wbGF5
ZXItPm1pbkZhc3RSZXZlcnNlUmF0ZSgpOwogICAgIG1fY2FjaGVkU3RhdGUuaGFzQXZhaWxhYmxl
VmlkZW9GcmFtZSA9IG1fcGxheWVyLT5oYXNBdmFpbGFibGVWaWRlb0ZyYW1lKCk7CisjaWYgRU5B
QkxFKFdJUkVMRVNTX1BMQVlCQUNLX1RBUkdFVCkKICAgICBtX2NhY2hlZFN0YXRlLndpcmVsZXNz
VmlkZW9QbGF5YmFja0Rpc2FibGVkID0gbV9wbGF5ZXItPndpcmVsZXNzVmlkZW9QbGF5YmFja0Rp
c2FibGVkKCk7CisjZW5kaWYKICAgICBtX2NhY2hlZFN0YXRlLmhhc1NpbmdsZVNlY3VyaXR5T3Jp
Z2luID0gbV9wbGF5ZXItPmhhc1NpbmdsZVNlY3VyaXR5T3JpZ2luKCk7CiAgICAgbV9jYWNoZWRT
dGF0ZS5kaWRQYXNzQ09SU0FjY2Vzc0NoZWNrID0gbV9wbGF5ZXItPmRpZFBhc3NDT1JTQWNjZXNz
Q2hlY2soKTsKICAgICBtX2NhY2hlZFN0YXRlLndvdWxkVGFpbnREb2N1bWVudFNlY3VyaXR5T3Jp
Z2luID0gbV9wbGF5ZXItPndvdWxkVGFpbnRPcmlnaW4obV9jb25maWd1cmF0aW9uLmRvY3VtZW50
U2VjdXJpdHlPcmlnaW4uc2VjdXJpdHlPcmlnaW4oKSk7CkBAIC04MTAsMTAgKzgxOSwxMiBAQCB2
b2lkIFJlbW90ZU1lZGlhUGxheWVyUHJveHk6OmFwcGxpY2F0aW9uRGlkQmVjb21lQWN0aXZlKCkK
ICAgICBtX3BsYXllci0+YXBwbGljYXRpb25EaWRCZWNvbWVBY3RpdmUoKTsKIH0KIAorI2lmIEVO
QUJMRShWSURFT19UUkFDSykgJiYgRU5BQkxFKEFWRl9DQVBUSU9OUykKIHZvaWQgUmVtb3RlTWVk
aWFQbGF5ZXJQcm94eTo6bm90aWZ5VHJhY2tNb2RlQ2hhbmdlZCgpCiB7CiAgICAgbV9wbGF5ZXIt
Pm5vdGlmeVRyYWNrTW9kZUNoYW5nZWQoKTsKIH0KKyNlbmRpZgogCiB2b2lkIFJlbW90ZU1lZGlh
UGxheWVyUHJveHk6OnRyYWNrc0NoYW5nZWQoKQogewpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktp
dC9HUFVQcm9jZXNzL21lZGlhL1JlbW90ZU1lZGlhUGxheWVyUHJveHkuaCBiL1NvdXJjZS9XZWJL
aXQvR1BVUHJvY2Vzcy9tZWRpYS9SZW1vdGVNZWRpYVBsYXllclByb3h5LmgKaW5kZXggODYwMTg1
NGQ4Mjg2NmRiNTQwOTZmZmM3MTBjZTU2NWQxMTQwNWMyOS4uMzc3YTRhMmRiMjJmYzkzMzhlMDAx
NGNjMzYxNGY4ZDIyNWMwZmY4NyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9HUFVQcm9jZXNz
L21lZGlhL1JlbW90ZU1lZGlhUGxheWVyUHJveHkuaAorKysgYi9Tb3VyY2UvV2ViS2l0L0dQVVBy
b2Nlc3MvbWVkaWEvUmVtb3RlTWVkaWFQbGF5ZXJQcm94eS5oCkBAIC02NCw3ICs2NCw5IEBAIGNs
YXNzIFZpZGVvVHJhY2tQcml2YXRlOwogbmFtZXNwYWNlIFdlYktpdCB7CiAKIHVzaW5nIExheWVy
SG9zdGluZ0NvbnRleHRJRCA9IHVpbnQzMl90OworI2lmIFBMQVRGT1JNKENPQ09BKQogY2xhc3Mg
TGF5ZXJIb3N0aW5nQ29udGV4dDsKKyNlbmRpZgogY2xhc3MgUmVtb3RlQXVkaW9UcmFja1Byb3h5
OwogY2xhc3MgUmVtb3RlTWVkaWFQbGF5ZXJNYW5hZ2VyUHJveHk7CiBjbGFzcyBSZW1vdGVUZXh0
VHJhY2tQcm94eTsKQEAgLTgyLDEzICs4NCwxNCBAQCBwdWJsaWM6CiAgICAgTWVkaWFQbGF5ZXJQ
cml2YXRlUmVtb3RlSWRlbnRpZmllciBpZGVuZGlmaWVyKCkgY29uc3QgeyByZXR1cm4gbV9pZDsg
fQogICAgIHZvaWQgaW52YWxpZGF0ZSgpOwogCisjaWYgUExBVEZPUk0oSU9TX0ZBTUlMWSkgfHwg
KFBMQVRGT1JNKE1BQykgJiYgRU5BQkxFKFZJREVPX1BSRVNFTlRBVElPTl9NT0RFKSkKICAgICB2
b2lkIHVwZGF0ZVZpZGVvRnVsbHNjcmVlbklubGluZUltYWdlKCk7CiAgICAgdm9pZCBzZXRWaWRl
b0Z1bGxzY3JlZW5Nb2RlKFdlYkNvcmU6Ok1lZGlhUGxheWVyOjpWaWRlb0Z1bGxzY3JlZW5Nb2Rl
KTsKKyAgICB2b2lkIHZpZGVvRnVsbHNjcmVlblN0YW5kYnlDaGFuZ2VkKCk7CisjZW5kaWYKIAog
ICAgIHZvaWQgc2V0QnVmZmVyaW5nUG9saWN5KFdlYkNvcmU6Ok1lZGlhUGxheWVyOjpCdWZmZXJp
bmdQb2xpY3kpOwogCi0gICAgdm9pZCB2aWRlb0Z1bGxzY3JlZW5TdGFuZGJ5Q2hhbmdlZCgpOwot
CiAjaWYgUExBVEZPUk0oSU9TX0ZBTUlMWSkKICAgICB2b2lkIGFjY2Vzc0xvZyhDb21wbGV0aW9u
SGFuZGxlcjx2b2lkKFN0cmluZyk+JiYpOwogICAgIHZvaWQgZXJyb3JMb2coQ29tcGxldGlvbkhh
bmRsZXI8dm9pZChTdHJpbmcpPiYmKTsKQEAgLTk5LDcgKzEwMiw5IEBAIHB1YmxpYzoKIAogICAg
IHZvaWQgZ2V0Q29uZmlndXJhdGlvbihSZW1vdGVNZWRpYVBsYXllckNvbmZpZ3VyYXRpb24mKTsK
IAorI2lmIFBMQVRGT1JNKENPQ09BKQogICAgIHZvaWQgcHJlcGFyZUZvclBsYXliYWNrKGJvb2wg
cHJpdmF0ZU1vZGUsIFdlYkNvcmU6Ok1lZGlhUGxheWVyRW51bXM6OlByZWxvYWQsIGJvb2wgcHJl
c2VydmVzUGl0Y2gsIGJvb2wgcHJlcGFyZUZvclJlbmRlcmluZywgZmxvYXQgdmlkZW9Db250ZW50
U2NhbGUsIENvbXBsZXRpb25IYW5kbGVyPHZvaWQoT3B0aW9uYWw8TGF5ZXJIb3N0aW5nQ29udGV4
dElEPiYmIGlubGluZUxheWVySG9zdGluZ0NvbnRleHRJZCwgT3B0aW9uYWw8TGF5ZXJIb3N0aW5n
Q29udGV4dElEPiYmIGZ1bGxzY3JlZW5MYXllckhvc3RpbmdDb250ZXh0SWQpPiYmKTsKKyNlbmRp
ZgogICAgIHZvaWQgcHJlcGFyZUZvclJlbmRlcmluZygpOwogCiAgICAgdm9pZCBsb2FkKFVSTCYm
LCBPcHRpb25hbDxTYW5kYm94RXh0ZW5zaW9uOjpIYW5kbGU+JiYsIGNvbnN0IFdlYkNvcmU6OkNv
bnRlbnRUeXBlJiwgY29uc3QgU3RyaW5nJiwgQ29tcGxldGlvbkhhbmRsZXI8dm9pZChSZW1vdGVN
ZWRpYVBsYXllckNvbmZpZ3VyYXRpb24mJik+JiYpOwpAQCAtMTY3LDcgKzE3Miw5IEBAIHB1Ymxp
YzoKICAgICB2b2lkIGFwcGxpY2F0aW9uV2lsbFJlc2lnbkFjdGl2ZSgpOwogICAgIHZvaWQgYXBw
bGljYXRpb25EaWRCZWNvbWVBY3RpdmUoKTsKIAorI2lmIEVOQUJMRShWSURFT19UUkFDSykgJiYg
RU5BQkxFKEFWRl9DQVBUSU9OUykKICAgICB2b2lkIG5vdGlmeVRyYWNrTW9kZUNoYW5nZWQoKTsK
KyNlbmRpZgogICAgIHZvaWQgdHJhY2tzQ2hhbmdlZCgpOwogICAgIHZvaWQgc3luY1RleHRUcmFj
a0JvdW5kcygpOwogCkBAIC0yMTksNyArMjI2LDkgQEAgcHJpdmF0ZToKICAgICB2b2lkIG1lZGlh
UGxheWVyV2FpdGluZ0ZvcktleUNoYW5nZWQoKSBmaW5hbDsKICNlbmRpZgogCisjaWYgRU5BQkxF
KFdJUkVMRVNTX1BMQVlCQUNLX1RBUkdFVCkKICAgICB2b2lkIG1lZGlhUGxheWVyQ3VycmVudFBs
YXliYWNrVGFyZ2V0SXNXaXJlbGVzc0NoYW5nZWQoYm9vbCkgZmluYWw7CisjZW5kaWYKIAogICAg
IFN0cmluZyBtZWRpYVBsYXllclJlZmVycmVyKCkgY29uc3QgZmluYWw7CiAgICAgU3RyaW5nIG1l
ZGlhUGxheWVyVXNlckFnZW50KCkgY29uc3QgZmluYWw7CkBAIC0yNzksOCArMjg4LDEwIEBAIHBy
aXZhdGU6CiAgICAgUmVmUHRyPFNhbmRib3hFeHRlbnNpb24+IG1fc2FuZGJveEV4dGVuc2lvbjsK
ICAgICBSZWY8SVBDOjpDb25uZWN0aW9uPiBtX3dlYlByb2Nlc3NDb25uZWN0aW9uOwogICAgIFJl
ZlB0cjxXZWJDb3JlOjpNZWRpYVBsYXllcj4gbV9wbGF5ZXI7CisjaWYgUExBVEZPUk0oQ09DT0Ep
CiAgICAgc3RkOjp1bmlxdWVfcHRyPExheWVySG9zdGluZ0NvbnRleHQ+IG1faW5saW5lTGF5ZXJI
b3N0aW5nQ29udGV4dDsKICAgICBzdGQ6OnVuaXF1ZV9wdHI8TGF5ZXJIb3N0aW5nQ29udGV4dD4g
bV9mdWxsc2NyZWVuTGF5ZXJIb3N0aW5nQ29udGV4dDsKKyNlbmRpZgogICAgIFJlbW90ZU1lZGlh
UGxheWVyTWFuYWdlclByb3h5JiBtX21hbmFnZXI7CiAgICAgV2ViQ29yZTo6TWVkaWFQbGF5ZXJF
bnVtczo6TWVkaWFFbmdpbmVJZGVudGlmaWVyIG1fZW5naW5lSWRlbnRpZmllcjsKICAgICBWZWN0
b3I8V2ViQ29yZTo6Q29udGVudFR5cGU+IG1fdHlwZXNSZXF1aXJpbmdIYXJkd2FyZVN1cHBvcnQ7
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L0dQVVByb2Nlc3MvbWVkaWEvUmVtb3RlTWVkaWFQ
bGF5ZXJQcm94eS5tZXNzYWdlcy5pbiBiL1NvdXJjZS9XZWJLaXQvR1BVUHJvY2Vzcy9tZWRpYS9S
ZW1vdGVNZWRpYVBsYXllclByb3h5Lm1lc3NhZ2VzLmluCmluZGV4IGNlYjY4YWViMDc3ZTA4MTFh
M2EyYjJkMmEwNGRjOTM0ZjBmNWE4NjMuLjJlOTBhOTg2ZmNhNGFhYzY5Y2I5YTA4NGQ5NjIzYmE1
ZWE2NWQ0MzUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvR1BVUHJvY2Vzcy9tZWRpYS9SZW1v
dGVNZWRpYVBsYXllclByb3h5Lm1lc3NhZ2VzLmluCisrKyBiL1NvdXJjZS9XZWJLaXQvR1BVUHJv
Y2Vzcy9tZWRpYS9SZW1vdGVNZWRpYVBsYXllclByb3h5Lm1lc3NhZ2VzLmluCkBAIC0yNCw3ICsy
NCw5IEBACiAjaWYgRU5BQkxFKEdQVV9QUk9DRVNTKQogCiBtZXNzYWdlcyAtPiBSZW1vdGVNZWRp
YVBsYXllclByb3h5IE5vdFJlZkNvdW50ZWQgeworI2lmIFBMQVRGT1JNKENPQ09BKQogICAgIFBy
ZXBhcmVGb3JQbGF5YmFjayhib29sIHByaXZhdGVNb2RlLCBlbnVtOnVpbnQ4X3QgV2ViQ29yZTo6
TWVkaWFQbGF5ZXJFbnVtczo6UHJlbG9hZCBwcmVsb2FkLCBib29sIHByZXNlcnZlc1BpdGNoLCBi
b29sIHByZXBhcmVGb3JSZW5kZXJpbmcsIGZsb2F0IHZpZGVvQ29udGVudFNjYWxlKSAtPiAoT3B0
aW9uYWw8V2ViS2l0OjpMYXllckhvc3RpbmdDb250ZXh0SUQ+IGlubGluZUxheWVySG9zdGluZ0Nv
bnRleHRJZCwgT3B0aW9uYWw8V2ViS2l0OjpMYXllckhvc3RpbmdDb250ZXh0SUQ+IGZ1bGxzY3Jl
ZW5MYXllckhvc3RpbmdDb250ZXh0SWQpIEFzeW5jCisjZW5kaWYKIAogICAgIExvYWQoVVJMIHVy
bCwgT3B0aW9uYWw8V2ViS2l0OjpTYW5kYm94RXh0ZW5zaW9uOjpIYW5kbGU+IHNhbmRib3hFeHRl
bnNpb24sIFdlYkNvcmU6OkNvbnRlbnRUeXBlIGNvbnRlbnRUeXBlLCBTdHJpbmcga2V5U3lzdGVt
KSAtPiAoc3RydWN0IFdlYktpdDo6UmVtb3RlTWVkaWFQbGF5ZXJDb25maWd1cmF0aW9uIHBsYXll
ckNvbmZpZ3VyYXRpb24pIEFzeW5jCiAgICAgQ2FuY2VsTG9hZCgpCkBAIC00NywxNSArNDksMTkg
QEAgbWVzc2FnZXMgLT4gUmVtb3RlTWVkaWFQbGF5ZXJQcm94eSBOb3RSZWZDb3VudGVkIHsKICAg
ICBQcmVwYXJlRm9yUmVuZGVyaW5nKCkKICAgICBTZXRWaXNpYmxlKGJvb2wgdmlzaWJsZSkKICAg
ICBTZXRTaG91bGRNYWludGFpbkFzcGVjdFJhdGlvKGJvb2wgbWFpbnRhaW5Bc3BlY3RSYXRpbykK
KyNpZiBQTEFURk9STShJT1NfRkFNSUxZKSB8fCAoUExBVEZPUk0oTUFDKSAmJiBFTkFCTEUoVklE
RU9fUFJFU0VOVEFUSU9OX01PREUpKQogICAgIFNldFZpZGVvRnVsbHNjcmVlbkZyYW1lRmVuY2Vk
KFdlYkNvcmU6OkZsb2F0UmVjdCByZWN0LCBNYWNoU2VuZFJpZ2h0IG1hY2hTZW5kUmlnaHQpCiAg
ICAgU2V0VmlkZW9GdWxsc2NyZWVuR3Jhdml0eShlbnVtOnVpbnQ4X3QgV2ViQ29yZTo6TWVkaWFQ
bGF5ZXJFbnVtczo6VmlkZW9HcmF2aXR5IGdyYXZpdHkpCisjZW5kaWYKICAgICBBY2NlbGVyYXRl
ZFJlbmRlcmluZ1N0YXRlQ2hhbmdlZChib29sIGNhbkJlQWNjZWxlcmF0ZWQpCiAgICAgU2V0U2hv
dWxkRGlzYWJsZVNsZWVwKGJvb2wgZGlzYWJsZSkKICAgICBTZXRSYXRlKGRvdWJsZSByYXRlKQog
CisjaWYgUExBVEZPUk0oSU9TX0ZBTUlMWSkgfHwgKFBMQVRGT1JNKE1BQykgJiYgRU5BQkxFKFZJ
REVPX1BSRVNFTlRBVElPTl9NT0RFKSkKICAgICBVcGRhdGVWaWRlb0Z1bGxzY3JlZW5JbmxpbmVJ
bWFnZSgpCiAgICAgU2V0VmlkZW9GdWxsc2NyZWVuTW9kZShXZWJDb3JlOjpNZWRpYVBsYXllcjo6
VmlkZW9GdWxsc2NyZWVuTW9kZSBtb2RlKQogICAgIFZpZGVvRnVsbHNjcmVlblN0YW5kYnlDaGFu
Z2VkKCkKKyNlbmRpZgogCiAgICAgU2V0QnVmZmVyaW5nUG9saWN5KFdlYkNvcmU6Ok1lZGlhUGxh
eWVyOjpCdWZmZXJpbmdQb2xpY3kgcG9saWN5KQogCkBAIC0xMDIsMTEgKzEwOCwxNSBAQCBtZXNz
YWdlcyAtPiBSZW1vdGVNZWRpYVBsYXllclByb3h5IE5vdFJlZkNvdW50ZWQgewogICAgIEFwcGxp
Y2F0aW9uV2lsbFJlc2lnbkFjdGl2ZSgpCiAgICAgQXBwbGljYXRpb25EaWRCZWNvbWVBY3RpdmUo
KQogCisjaWYgRU5BQkxFKFZJREVPX1RSQUNLKSAmJiBFTkFCTEUoQVZGX0NBUFRJT05TKQogICAg
IE5vdGlmeVRyYWNrTW9kZUNoYW5nZWQoKQorI2VuZGlmCiAgICAgVHJhY2tzQ2hhbmdlZCgpCiAg
ICAgU3luY1RleHRUcmFja0JvdW5kcygpCiAKKyNpZiBFTkFCTEUoV0lSRUxFU1NfUExBWUJBQ0tf
VEFSR0VUKQogICAgIFNldFdpcmVsZXNzUGxheWJhY2tUYXJnZXQoV2ViQ29yZTo6TWVkaWFQbGF5
YmFja1RhcmdldENvbnRleHQgdGFyZ2V0KQorI2VuZGlmCiAKICAgICBQZXJmb3JtVGFza0F0TWVk
aWFUaW1lKE1lZGlhVGltZSBtZWRpYVRpbWUsIFdhbGxUaW1lIG1lc3NhZ2VUaW1lKSAtPiAoT3B0
aW9uYWw8TWVkaWFUaW1lPiBtZWRpYVRpbWUpIEFzeW5jCiAgICAgV291bGRUYWludE9yaWdpbihz
dHJ1Y3QgV2ViQ29yZTo6U2VjdXJpdHlPcmlnaW5EYXRhIG9yaWdpbikgLT4gKE9wdGlvbmFsPGJv
b2w+IHdvdWxkVGFpbnQpIFN5bmNocm9ub3VzCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L0dQ
VVByb2Nlc3MvbWVkaWEvUmVtb3RlVGV4dFRyYWNrUHJveHkuY3BwIGIvU291cmNlL1dlYktpdC9H
UFVQcm9jZXNzL21lZGlhL1JlbW90ZVRleHRUcmFja1Byb3h5LmNwcAppbmRleCA2MGZhNmM4MTFi
ZmQwNzYyYmJlY2QxZTE4MGNjMGNhNTIyNmIyNDg2Li5kMDJhYzQyYTQ3ZjQ2YTY4ZjY4N2M2NjUw
OWZhZDFjNGJiMWRlNDkxIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L0dQVVByb2Nlc3MvbWVk
aWEvUmVtb3RlVGV4dFRyYWNrUHJveHkuY3BwCisrKyBiL1NvdXJjZS9XZWJLaXQvR1BVUHJvY2Vz
cy9tZWRpYS9SZW1vdGVUZXh0VHJhY2tQcm94eS5jcHAKQEAgLTEwMCwxMiArMTAwLDEyIEBAIHZv
aWQgUmVtb3RlVGV4dFRyYWNrUHJveHk6Omxhbmd1YWdlQ2hhbmdlZChjb25zdCBBdG9tU3RyaW5n
JikKICAgICBjb25maWd1cmF0aW9uQ2hhbmdlZCgpOwogfQogCisjaWYgRU5BQkxFKERBVEFDVUVf
VkFMVUUpCiB2b2lkIFJlbW90ZVRleHRUcmFja1Byb3h5OjphZGREYXRhQ3VlKGNvbnN0IE1lZGlh
VGltZSYgc3RhcnQsIGNvbnN0IE1lZGlhVGltZSYgZW5kLCBjb25zdCB2b2lkKiBkYXRhLCB1bnNp
Z25lZCBsZW5ndGgpCiB7CiAgICAgbV93ZWJQcm9jZXNzQ29ubmVjdGlvbi0+c2VuZChNZXNzYWdl
czo6TWVkaWFQbGF5ZXJQcml2YXRlUmVtb3RlOjpBZGREYXRhQ3VlKG1faWRlbnRpZmllciwgc3Rh
cnQsIGVuZCwgSVBDOjpEYXRhUmVmZXJlbmNlKHJlaW50ZXJwcmV0X2Nhc3Q8Y29uc3QgdWludDhf
dCo+KGRhdGEpLCBsZW5ndGgpKSwgbV9wbGF5ZXIuaWRlbmRpZmllcigpKTsKIH0KIAotI2lmIEVO
QUJMRShEQVRBQ1VFX1ZBTFVFKQogdm9pZCBSZW1vdGVUZXh0VHJhY2tQcm94eTo6YWRkRGF0YUN1
ZShjb25zdCBNZWRpYVRpbWUmIHN0YXJ0LCBjb25zdCBNZWRpYVRpbWUmIGVuZCwgUmVmPFNlcmlh
bGl6ZWRQbGF0Zm9ybURhdGFDdWU+JiYgY3VlRGF0YSwgY29uc3QgU3RyaW5nJiB0eXBlKQogewog
ICAgIG1fd2ViUHJvY2Vzc0Nvbm5lY3Rpb24tPnNlbmQoTWVzc2FnZXM6Ok1lZGlhUGxheWVyUHJp
dmF0ZVJlbW90ZTo6QWRkRGF0YUN1ZVdpdGhUeXBlKG1faWRlbnRpZmllciwgc3RhcnQsIGVuZCwg
Y3VlRGF0YS0+ZW5jb2RhYmxlVmFsdWUoKSwgdHlwZSksIG1fcGxheWVyLmlkZW5kaWZpZXIoKSk7
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9HUFUvR1BVUHJvY2Vzc1Byb3h5
LmggYi9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9HUFUvR1BVUHJvY2Vzc1Byb3h5LmgKaW5kZXgg
YTg1ZjJiMjAxMGE2ZTRiMzExNjRkNmM2MGY1MDJkMDRmOWFlOTU1MS4uYmIzYjFjYWI1MWM0OGIx
MzgyNDc5MjFhNTYyODMyNWFiMTNlMmE1OCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9VSVBy
b2Nlc3MvR1BVL0dQVVByb2Nlc3NQcm94eS5oCisrKyBiL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNz
L0dQVS9HUFVQcm9jZXNzUHJveHkuaApAQCAtMjksNyArMjksNiBAQAogCiAjaW5jbHVkZSAiQXV4
aWxpYXJ5UHJvY2Vzc1Byb3h5LmgiCiAjaW5jbHVkZSAiR1BVUHJvY2Vzc1Byb3h5TWVzc2FnZXNS
ZXBsaWVzLmgiCi0jaW5jbHVkZSAiTGF5ZXJIb3N0aW5nQ29udGV4dC5oIgogI2luY2x1ZGUgIlBy
b2Nlc3NMYXVuY2hlci5oIgogI2luY2x1ZGUgIlByb2Nlc3NUaHJvdHRsZXIuaCIKICNpbmNsdWRl
ICJQcm9jZXNzVGhyb3R0bGVyQ2xpZW50LmgiCkBAIC0zOCw2ICszNywxMCBAQAogI2luY2x1ZGUg
PG1lbW9yeT4KICNpbmNsdWRlIDxwYWwvU2Vzc2lvbklELmg+CiAKKyNpZiBIQVZFKFZJU0lCSUxJ
VFlfUFJPUEFHQVRJT05fVklFVykKKyNpbmNsdWRlICJMYXllckhvc3RpbmdDb250ZXh0LmgiCisj
ZW5kaWYKKwogbmFtZXNwYWNlIFdlYktpdCB7CiAKIGNsYXNzIFdlYlByb2Nlc3NQcm94eTsKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9HUFUvR1BVUHJvY2Vzc0Nvbm5lY3Rp
b24uY3BwIGIvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL0dQVS9HUFVQcm9jZXNzQ29ubmVjdGlv
bi5jcHAKaW5kZXggMTg0NDE5YmUzYzI1MmNlMzYxOTM3OTkzNmMxZDRjZjUzNzUzOWI2MC4uZDY3
ODA2ZTI4ZWZmODI5ODRiNDAyZGEyODVkMTMyN2ZhZjZhYzZiZCAxMDA2NDQKLS0tIGEvU291cmNl
L1dlYktpdC9XZWJQcm9jZXNzL0dQVS9HUFVQcm9jZXNzQ29ubmVjdGlvbi5jcHAKKysrIGIvU291
cmNlL1dlYktpdC9XZWJQcm9jZXNzL0dQVS9HUFVQcm9jZXNzQ29ubmVjdGlvbi5jcHAKQEAgLTM5
LDggKzM5LDYgQEAKICNpbmNsdWRlICJSZW1vdGVNZWRpYVBsYXllck1hbmFnZXIuaCIKICNpbmNs
dWRlICJSZW1vdGVNZWRpYVBsYXllck1hbmFnZXJNZXNzYWdlcy5oIgogI2luY2x1ZGUgIlNhbXBs
ZUJ1ZmZlckRpc3BsYXlMYXllck1lc3NhZ2VzLmgiCi0jaW5jbHVkZSAiVXNlck1lZGlhQ2FwdHVy
ZU1hbmFnZXIuaCIKLSNpbmNsdWRlICJVc2VyTWVkaWFDYXB0dXJlTWFuYWdlck1lc3NhZ2VzLmgi
CiAjaW5jbHVkZSAiV2ViQ29yZUFyZ3VtZW50Q29kZXJzLmgiCiAjaW5jbHVkZSAiV2ViUGFnZS5o
IgogI2luY2x1ZGUgIldlYlBhZ2VNZXNzYWdlcy5oIgpAQCAtNDgsNiArNDYsMTEgQEAKICNpbmNs
dWRlIDxXZWJDb3JlL1BsYXRmb3JtTWVkaWFTZXNzaW9uTWFuYWdlci5oPgogI2luY2x1ZGUgPFdl
YkNvcmUvU2hhcmVkQnVmZmVyLmg+CiAKKyNpZiBQTEFURk9STShDT0NPQSkKKyNpbmNsdWRlICJV
c2VyTWVkaWFDYXB0dXJlTWFuYWdlclByb3h5LmgiCisjaW5jbHVkZSAiVXNlck1lZGlhQ2FwdHVy
ZU1hbmFnZXJQcm94eU1lc3NhZ2VzLmgiCisjZW5kaWYKKwogI2lmIEVOQUJMRShFTkNSWVBURURf
TUVESUEpCiAjaW5jbHVkZSAiUmVtb3RlQ0RNSW5zdGFuY2VTZXNzaW9uTWVzc2FnZXMuaCIKICNl
bmRpZgpAQCAtMTA5LDE5ICsxMTIsMTkgQEAgYm9vbCBHUFVQcm9jZXNzQ29ubmVjdGlvbjo6ZGlz
cGF0Y2hNZXNzYWdlKElQQzo6Q29ubmVjdGlvbiYgY29ubmVjdGlvbiwgSVBDOjpEZWMKICAgICAg
ICAgcmV0dXJuIHRydWU7CiAgICAgfQogCi0jaWYgRU5BQkxFKE1FRElBX1NUUkVBTSkKKyNpZiBQ
TEFURk9STShDT0NPQSkgJiYgRU5BQkxFKE1FRElBX1NUUkVBTSkKICAgICBpZiAoZGVjb2Rlci5t
ZXNzYWdlUmVjZWl2ZXJOYW1lKCkgPT0gTWVzc2FnZXM6OlVzZXJNZWRpYUNhcHR1cmVNYW5hZ2Vy
OjptZXNzYWdlUmVjZWl2ZXJOYW1lKCkpIHsKICAgICAgICAgaWYgKGF1dG8qIGNhcHR1cmVNYW5h
Z2VyID0gV2ViUHJvY2Vzczo6c2luZ2xldG9uKCkuc3VwcGxlbWVudDxVc2VyTWVkaWFDYXB0dXJl
TWFuYWdlcj4oKSkKICAgICAgICAgICAgIGNhcHR1cmVNYW5hZ2VyLT5kaWRSZWNlaXZlTWVzc2Fn
ZUZyb21HUFVQcm9jZXNzKGNvbm5lY3Rpb24sIGRlY29kZXIpOwogICAgICAgICByZXR1cm4gdHJ1
ZTsKICAgICB9Ci0jaWYgUExBVEZPUk0oQ09DT0EpICYmIEVOQUJMRShWSURFT19UUkFDSykKKyNp
ZiBFTkFCTEUoVklERU9fVFJBQ0spCiAgICAgaWYgKGRlY29kZXIubWVzc2FnZVJlY2VpdmVyTmFt
ZSgpID09IE1lc3NhZ2VzOjpTYW1wbGVCdWZmZXJEaXNwbGF5TGF5ZXI6Om1lc3NhZ2VSZWNlaXZl
ck5hbWUoKSkgewogICAgICAgICBzYW1wbGVCdWZmZXJEaXNwbGF5TGF5ZXJNYW5hZ2VyKCkuZGlk
UmVjZWl2ZUxheWVyTWVzc2FnZShjb25uZWN0aW9uLCBkZWNvZGVyKTsKICAgICAgICAgcmV0dXJu
IHRydWU7CiAgICAgfQotI2VuZGlmIC8vIFBMQVRGT1JNKENPQ09BKSAmJiBFTkFCTEUoVklERU9f
VFJBQ0spCi0jZW5kaWYgLy8gRU5BQkxFKE1FRElBX1NUUkVBTSkKKyNlbmRpZiAvLyBFTkFCTEUo
VklERU9fVFJBQ0spCisjZW5kaWYgLy8gUExBVEZPUk0oQ09DT0EpICYmIEVOQUJMRShNRURJQV9T
VFJFQU0pCiAjaWYgVVNFKExJQldFQlJUQykgJiYgUExBVEZPUk0oQ09DT0EpCiAgICAgaWYgKGRl
Y29kZXIubWVzc2FnZVJlY2VpdmVyTmFtZSgpID09IE1lc3NhZ2VzOjpMaWJXZWJSVENDb2RlY3M6
Om1lc3NhZ2VSZWNlaXZlck5hbWUoKSkgewogICAgICAgICBXZWJQcm9jZXNzOjpzaW5nbGV0b24o
KS5saWJXZWJSVENDb2RlY3MoKS5kaWRSZWNlaXZlTWVzc2FnZShjb25uZWN0aW9uLCBkZWNvZGVy
KTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9HUFUvbWVkaWEvTWVkaWFQ
bGF5ZXJQcml2YXRlUmVtb3RlLmNwcCBiL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9HUFUvbWVk
aWEvTWVkaWFQbGF5ZXJQcml2YXRlUmVtb3RlLmNwcAppbmRleCA4NmYyYjFiZDBlODRjMGUwMmRm
MjcyNWIwMzQ1OTU0ZWNlOTE3ZjZkLi4xMTMyYmI3MWZmZTVkYjc4ODExMDgwNDRmYTI2ZmUzMmM5
NWYzMDA5IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvR1BVL21lZGlhL01l
ZGlhUGxheWVyUHJpdmF0ZVJlbW90ZS5jcHAKKysrIGIvU291cmNlL1dlYktpdC9XZWJQcm9jZXNz
L0dQVS9tZWRpYS9NZWRpYVBsYXllclByaXZhdGVSZW1vdGUuY3BwCkBAIC0xMTEsNiArMTExLDcg
QEAgTWVkaWFQbGF5ZXJQcml2YXRlUmVtb3RlOjp+TWVkaWFQbGF5ZXJQcml2YXRlUmVtb3RlKCkK
IAogdm9pZCBNZWRpYVBsYXllclByaXZhdGVSZW1vdGU6OnByZXBhcmVGb3JQbGF5YmFjayhib29s
IHByaXZhdGVNb2RlLCBNZWRpYVBsYXllcjo6UHJlbG9hZCBwcmVsb2FkLCBib29sIHByZXNlcnZl
c1BpdGNoLCBib29sIHByZXBhcmUpCiB7CisjaWYgUExBVEZPUk0oQ09DT0EpCiAgICAgYXV0byBz
Y2FsZSA9IG1fcGxheWVyLT5wbGF5ZXJDb250ZW50c1NjYWxlKCk7CiAKICAgICBjb25uZWN0aW9u
KCkuc2VuZFdpdGhBc3luY1JlcGx5KE1lc3NhZ2VzOjpSZW1vdGVNZWRpYVBsYXllclByb3h5OjpQ
cmVwYXJlRm9yUGxheWJhY2socHJpdmF0ZU1vZGUsIHByZWxvYWQsIHByZXNlcnZlc1BpdGNoLCBw
cmVwYXJlLCBzY2FsZSksIFt3ZWFrVGhpcyA9IG1ha2VXZWFrUHRyKCp0aGlzKSwgdGhpc10oYXV0
byBpbmxpbmVMYXllckhvc3RpbmdDb250ZXh0SWQsIGF1dG8gZnVsbHNjcmVlbkxheWVySG9zdGlu
Z0NvbnRleHRJZCkgbXV0YWJsZSB7CkBAIC0xMjQsNiArMTI1LDcgQEAgdm9pZCBNZWRpYVBsYXll
clByaXZhdGVSZW1vdGU6OnByZXBhcmVGb3JQbGF5YmFjayhib29sIHByaXZhdGVNb2RlLCBNZWRp
YVBsYXllcjoKIAogICAgICAgICBtX2Z1bGxzY3JlZW5MYXllckhvc3RpbmdDb250ZXh0SWQgPSBm
dWxsc2NyZWVuTGF5ZXJIb3N0aW5nQ29udGV4dElkOwogICAgIH0sIG1faWQpOworI2VuZGlmCiB9
CiAKIHZvaWQgTWVkaWFQbGF5ZXJQcml2YXRlUmVtb3RlOjpNZWRpYVBsYXllclByaXZhdGVSZW1v
dGU6OmxvYWQoY29uc3QgVVJMJiB1cmwsIGNvbnN0IENvbnRlbnRUeXBlJiBjb250ZW50VHlwZSwg
Y29uc3QgU3RyaW5nJiBrZXlTeXN0ZW0pCkBAIC0zNTgsMTAgKzM2MCwxMiBAQCB2b2lkIE1lZGlh
UGxheWVyUHJpdmF0ZVJlbW90ZTo6YWNjZWxlcmF0ZWRSZW5kZXJpbmdTdGF0ZUNoYW5nZWQoKQog
ICAgIGNvbm5lY3Rpb24oKS5zZW5kKE1lc3NhZ2VzOjpSZW1vdGVNZWRpYVBsYXllclByb3h5OjpB
Y2NlbGVyYXRlZFJlbmRlcmluZ1N0YXRlQ2hhbmdlZChtX3BsYXllci0+c3VwcG9ydHNBY2NlbGVy
YXRlZFJlbmRlcmluZygpKSwgbV9pZCk7CiB9CiAKKyNpZiBFTkFCTEUoV0lSRUxFU1NfUExBWUJB
Q0tfVEFSR0VUKQogYm9vbCBNZWRpYVBsYXllclByaXZhdGVSZW1vdGU6OmNhblBsYXlUb1dpcmVs
ZXNzUGxheWJhY2tUYXJnZXQoKSBjb25zdAogewogICAgIHJldHVybiBtX2NvbmZpZ3VyYXRpb24u
Y2FuUGxheVRvV2lyZWxlc3NQbGF5YmFja1RhcmdldDsKIH0KKyNlbmRpZgogCiB2b2lkIE1lZGlh
UGxheWVyUHJpdmF0ZVJlbW90ZTo6dXBkYXRlQ2FjaGVkU3RhdGUoUmVtb3RlTWVkaWFQbGF5ZXJT
dGF0ZSYmIHN0YXRlKQogewpAQCAtNjMxLDcgKzYzNSwxMSBAQCB2b2lkIE1lZGlhUGxheWVyUHJp
dmF0ZVJlbW90ZTo6bG9hZChNZWRpYVN0cmVhbVByaXZhdGUmKQogCiBQbGF0Zm9ybUxheWVyKiBN
ZWRpYVBsYXllclByaXZhdGVSZW1vdGU6OnBsYXRmb3JtTGF5ZXIoKSBjb25zdAogeworI2lmIFBM
QVRGT1JNKElPU19GQU1JTFkpIHx8IChQTEFURk9STShNQUMpICYmIEVOQUJMRShWSURFT19QUkVT
RU5UQVRJT05fTU9ERSkpCiAgICAgcmV0dXJuIG1fdmlkZW9JbmxpbmVMYXllci5nZXQoKTsKKyNl
bHNlCisgICAgcmV0dXJuIG51bGxwdHI7CisjZW5kaWYKIH0KIAogI2lmIFBMQVRGT1JNKElPU19G
QU1JTFkpIHx8IChQTEFURk9STShNQUMpICYmIEVOQUJMRShWSURFT19QUkVTRU5UQVRJT05fTU9E
RSkpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvR1BVL21lZGlhL01lZGlh
UGxheWVyUHJpdmF0ZVJlbW90ZS5oIGIvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL0dQVS9tZWRp
YS9NZWRpYVBsYXllclByaXZhdGVSZW1vdGUuaAppbmRleCA2YzU2NmE4M2QyZTQxZTFiNGFlNTIz
MzI5Y2FjYjEzMDJkMjZkNjU3Li41ZmQ1OWQ1OTFlYTg5NDAxNzNlNjZkNzRkMmVlY2RmZjY0MzUy
MWQ3IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvR1BVL21lZGlhL01lZGlh
UGxheWVyUHJpdmF0ZVJlbW90ZS5oCisrKyBiL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9HUFUv
bWVkaWEvTWVkaWFQbGF5ZXJQcml2YXRlUmVtb3RlLmgKQEAgLTI3LDcgKzI3LDYgQEAKIAogI2lm
IEVOQUJMRShHUFVfUFJPQ0VTUykKIAotI2luY2x1ZGUgIkxheWVySG9zdGluZ0NvbnRleHQuaCIK
ICNpbmNsdWRlICJSZW1vdGVNZWRpYVBsYXllckNvbmZpZ3VyYXRpb24uaCIKICNpbmNsdWRlICJS
ZW1vdGVNZWRpYVBsYXllck1hbmFnZXIuaCIKICNpbmNsdWRlICJSZW1vdGVNZWRpYVBsYXllclN0
YXRlLmgiCkBAIC00MCw2ICszOSwxMCBAQAogI2luY2x1ZGUgPHd0Zi9NZWRpYVRpbWUuaD4KICNp
bmNsdWRlIDx3dGYvV2Vha1B0ci5oPgogCisjaWYgUExBVEZPUk0oQ09DT0EpCisjaW5jbHVkZSAi
TGF5ZXJIb3N0aW5nQ29udGV4dC5oIgorI2VuZGlmCisKIG5hbWVzcGFjZSBXVEYgewogY2xhc3Mg
TWFjaFNlbmRSaWdodDsKIH0KQEAgLTM1Nyw5ICszNjAsMTMgQEAgcHJpdmF0ZToKIAogICAgIFdl
YkNvcmU6Ok1lZGlhUGxheWVyKiBtX3BsYXllciB7IG51bGxwdHIgfTsKICAgICBSZWZQdHI8V2Vi
Q29yZTo6UGxhdGZvcm1NZWRpYVJlc291cmNlTG9hZGVyPiBtX21lZGlhUmVzb3VyY2VMb2FkZXI7
CisjaWYgUExBVEZPUk0oSU9TX0ZBTUlMWSkgfHwgKFBMQVRGT1JNKE1BQykgJiYgRU5BQkxFKFZJ
REVPX1BSRVNFTlRBVElPTl9NT0RFKSkKICAgICBSZXRhaW5QdHI8UGxhdGZvcm1MYXllcj4gbV92
aWRlb0lubGluZUxheWVyOwogICAgIFJldGFpblB0cjxQbGF0Zm9ybUxheWVyPiBtX3ZpZGVvRnVs
bHNjcmVlbkxheWVyOworI2VuZGlmCisjaWYgUExBVEZPUk0oQ09DT0EpCiAgICAgT3B0aW9uYWw8
TGF5ZXJIb3N0aW5nQ29udGV4dElEPiBtX2Z1bGxzY3JlZW5MYXllckhvc3RpbmdDb250ZXh0SWQ7
CisjZW5kaWYKICAgICBSZW1vdGVNZWRpYVBsYXllck1hbmFnZXImIG1fbWFuYWdlcjsKICAgICBX
ZWJDb3JlOjpNZWRpYVBsYXllckVudW1zOjpNZWRpYUVuZ2luZUlkZW50aWZpZXIgbV9yZW1vdGVF
bmdpbmVJZGVudGlmaWVyOwogICAgIE1lZGlhUGxheWVyUHJpdmF0ZVJlbW90ZUlkZW50aWZpZXIg
bV9pZDsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9HUFUvbWVkaWEvTWVk
aWFQbGF5ZXJQcml2YXRlUmVtb3RlLm1lc3NhZ2VzLmluIGIvU291cmNlL1dlYktpdC9XZWJQcm9j
ZXNzL0dQVS9tZWRpYS9NZWRpYVBsYXllclByaXZhdGVSZW1vdGUubWVzc2FnZXMuaW4KaW5kZXgg
ZTdkODZjN2Y0YzNkY2U4YjBiOThlZjY2MGExMjY4ZmRkOWFlMWMzZi4uZWE0MjlmYWQ4ZjA5ZWE5
ZWYwZGYxODk5MDQyOGQyYWNhOTAwODlhYiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9XZWJQ
cm9jZXNzL0dQVS9tZWRpYS9NZWRpYVBsYXllclByaXZhdGVSZW1vdGUubWVzc2FnZXMuaW4KKysr
IGIvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL0dQVS9tZWRpYS9NZWRpYVBsYXllclByaXZhdGVS
ZW1vdGUubWVzc2FnZXMuaW4KQEAgLTUwLDggKzUwLDggQEAgbWVzc2FnZXMgLT4gTWVkaWFQbGF5
ZXJQcml2YXRlUmVtb3RlIE5vdFJlZkNvdW50ZWQgewogICAgIFBhcnNlV2ViVlRUQ3VlRGF0YShX
ZWJLaXQ6OlRyYWNrUHJpdmF0ZVJlbW90ZUlkZW50aWZpZXIgdHJhY2tJRCwgSVBDOjpEYXRhUmVm
ZXJlbmNlIGRhdGEpCiAgICAgUGFyc2VXZWJWVFRDdWVEYXRhU3RydWN0KFdlYktpdDo6VHJhY2tQ
cml2YXRlUmVtb3RlSWRlbnRpZmllciB0cmFja0lELCBXZWJDb3JlOjpJU09XZWJWVFRDdWUgY3Vl
RGF0YSkKIAotICAgIEFkZERhdGFDdWUoV2ViS2l0OjpUcmFja1ByaXZhdGVSZW1vdGVJZGVudGlm
aWVyIHRyYWNrSUQsIE1lZGlhVGltZSBzdGFydCwgTWVkaWFUaW1lIGVuZCwgSVBDOjpEYXRhUmVm
ZXJlbmNlIGRhdGEpCiAjaWYgRU5BQkxFKERBVEFDVUVfVkFMVUUpCisgICAgQWRkRGF0YUN1ZShX
ZWJLaXQ6OlRyYWNrUHJpdmF0ZVJlbW90ZUlkZW50aWZpZXIgdHJhY2tJRCwgTWVkaWFUaW1lIHN0
YXJ0LCBNZWRpYVRpbWUgZW5kLCBJUEM6OkRhdGFSZWZlcmVuY2UgZGF0YSkKICAgICBBZGREYXRh
Q3VlV2l0aFR5cGUoV2ViS2l0OjpUcmFja1ByaXZhdGVSZW1vdGVJZGVudGlmaWVyIHRyYWNrSUQs
IE1lZGlhVGltZSBzdGFydCwgTWVkaWFUaW1lIGVuZCwgV2ViQ29yZTo6U2VyaWFsaXplZFBsYXRm
b3JtRGF0YUN1ZVZhbHVlIGN1ZURhdGEsIFN0cmluZyB0eXBlKQogICAgIFVwZGF0ZURhdGFDdWUo
V2ViS2l0OjpUcmFja1ByaXZhdGVSZW1vdGVJZGVudGlmaWVyIHRyYWNrSUQsIE1lZGlhVGltZSBz
dGFydCwgTWVkaWFUaW1lIGVuZCwgV2ViQ29yZTo6U2VyaWFsaXplZFBsYXRmb3JtRGF0YUN1ZVZh
bHVlIGN1ZURhdGEpCiAgICAgUmVtb3ZlRGF0YUN1ZShXZWJLaXQ6OlRyYWNrUHJpdmF0ZVJlbW90
ZUlkZW50aWZpZXIgdHJhY2tJRCwgTWVkaWFUaW1lIHN0YXJ0LCBNZWRpYVRpbWUgZW5kLCBXZWJD
b3JlOjpTZXJpYWxpemVkUGxhdGZvcm1EYXRhQ3VlVmFsdWUgY3VlRGF0YSkKZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9HUFUvbWVkaWEvUmVtb3RlQ0RNLmNwcCBiL1NvdXJj
ZS9XZWJLaXQvV2ViUHJvY2Vzcy9HUFUvbWVkaWEvUmVtb3RlQ0RNLmNwcAppbmRleCAwYzkxYjQw
ZjNiOWM3NWIzYzExMGI2MzZmNjhjYTU3MDVhMjViNTQ4Li40OWZkMzhkMTgyZTJmOTE1NjMzZmE0
MGIzYTE4YTRmNGE1NzlkZTNlIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3Mv
R1BVL21lZGlhL1JlbW90ZUNETS5jcHAKKysrIGIvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL0dQ
VS9tZWRpYS9SZW1vdGVDRE0uY3BwCkBAIC0yOSw2ICsyOSw3IEBACiAjaWYgRU5BQkxFKEdQVV9Q
Uk9DRVNTKSAmJiBFTkFCTEUoRU5DUllQVEVEX01FRElBKQogCiAjaW5jbHVkZSAiRGF0YVJlZmVy
ZW5jZS5oIgorI2luY2x1ZGUgIkdQVVByb2Nlc3NDb25uZWN0aW9uLmgiCiAjaW5jbHVkZSAiUmVt
b3RlQ0RNSW5zdGFuY2UuaCIKICNpbmNsdWRlICJSZW1vdGVDRE1JbnN0YW5jZUNvbmZpZ3VyYXRp
b24uaCIKICNpbmNsdWRlICJSZW1vdGVDRE1JbnN0YW5jZUlkZW50aWZpZXIuaCIKZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9HUFUvbWVkaWEvUmVtb3RlTWVkaWFQbGF5ZXJN
YW5hZ2VyLmNwcCBiL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9HUFUvbWVkaWEvUmVtb3RlTWVk
aWFQbGF5ZXJNYW5hZ2VyLmNwcAppbmRleCA4NzY1MjFkOGMwNjFkMWY0MmQ1NjYwNDEzOWMwZDg2
NGMyNjA5MGM2Li5mZTRhOWI4M2Y3NDZlMWMyMzg5NGQ2NDcyOWNlZDlhOTNkMTFmZmMxIDEwMDY0
NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvR1BVL21lZGlhL1JlbW90ZU1lZGlhUGxh
eWVyTWFuYWdlci5jcHAKKysrIGIvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL0dQVS9tZWRpYS9S
ZW1vdGVNZWRpYVBsYXllck1hbmFnZXIuY3BwCkBAIC0xNTIsNyArMTUyLDkgQEAgc3RkOjp1bmlx
dWVfcHRyPE1lZGlhUGxheWVyUHJpdmF0ZUludGVyZmFjZT4gUmVtb3RlTWVkaWFQbGF5ZXJNYW5h
Z2VyOjpjcmVhdGVSZW0KICNlbmRpZgogICAgIHByb3h5Q29uZmlndXJhdGlvbi5tZWRpYUNvbnRl
bnRUeXBlc1JlcXVpcmluZ0hhcmR3YXJlU3VwcG9ydCA9IHBsYXllci0+bWVkaWFDb250ZW50VHlw
ZXNSZXF1aXJpbmdIYXJkd2FyZVN1cHBvcnQoKTsKICAgICBwcm94eUNvbmZpZ3VyYXRpb24ucHJl
ZmVycmVkQXVkaW9DaGFyYWN0ZXJpc3RpY3MgPSBwbGF5ZXItPnByZWZlcnJlZEF1ZGlvQ2hhcmFj
dGVyaXN0aWNzKCk7CisjaWYgIVJFTEVBU0VfTE9HX0RJU0FCTEVECiAgICAgcHJveHlDb25maWd1
cmF0aW9uLmxvZ0lkZW50aWZpZXIgPSByZWludGVycHJldF9jYXN0PHVpbnQ2NF90PihwbGF5ZXIt
Pm1lZGlhUGxheWVyTG9nSWRlbnRpZmllcigpKTsKKyNlbmRpZgogICAgIHByb3h5Q29uZmlndXJh
dGlvbi5zaG91bGRVc2VQZXJzaXN0ZW50Q2FjaGUgPSBwbGF5ZXItPnNob3VsZFVzZVBlcnNpc3Rl
bnRDYWNoZSgpOwogICAgIHByb3h5Q29uZmlndXJhdGlvbi5pc1ZpZGVvID0gcGxheWVyLT5pc1Zp
ZGVvUGxheWVyKCk7CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9HUFUv
bWVkaWEvUmVtb3RlTWVkaWFQbGF5ZXJTdGF0ZS5oIGIvU291cmNlL1dlYktpdC9XZWJQcm9jZXNz
L0dQVS9tZWRpYS9SZW1vdGVNZWRpYVBsYXllclN0YXRlLmgKaW5kZXggNzMwNzVhZjAyZmJmMjhk
ZWZlOGI4ZTYzYjVmZjQ3NjI4MmY2OGQ1OS4uY2E0ZDZiYTMzYjI2MzAwZTc3OTEzYTgzYjg4MWEx
NTlhYWM3ODIzNSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL0dQVS9tZWRp
YS9SZW1vdGVNZWRpYVBsYXllclN0YXRlLmgKKysrIGIvU291cmNlL1dlYktpdC9XZWJQcm9jZXNz
L0dQVS9tZWRpYS9SZW1vdGVNZWRpYVBsYXllclN0YXRlLmgKQEAgLTUzLDcgKzUzLDcgQEAgc3Ry
dWN0IFJlbW90ZU1lZGlhUGxheWVyU3RhdGUgewogICAgIGRvdWJsZSBtaW5GYXN0UmV2ZXJzZVJh
dGUgeyAwIH07CiAgICAgZG91YmxlIHNlZWthYmxlVGltZVJhbmdlc0xhc3RNb2RpZmllZFRpbWUg
eyAwIH07CiAgICAgZG91YmxlIGxpdmVVcGRhdGVJbnRlcnZhbCB7IDAgfTsKLSAgICB1bnNpZ25l
ZCBsb25nIGxvbmcgdG90YWxCeXRlcyB7IDAgfTsKKyAgICB1bnNpZ25lZCBsb25nIHRvdGFsQnl0
ZXMgeyAwIH07CiAgICAgT3B0aW9uYWw8Ym9vbD4gd291bGRUYWludERvY3VtZW50U2VjdXJpdHlP
cmlnaW4geyB0cnVlIH07CiAgICAgYm9vbCBwYXVzZWQgeyB0cnVlIH07CiAgICAgYm9vbCBsb2Fk
aW5nUHJvZ3Jlc3NlZCB7IGZhbHNlIH07CkBAIC0xOTIsNyArMTkyLDEwIEBAIHN0cnVjdCBSZW1v
dGVNZWRpYVBsYXllclN0YXRlIHsKICAgICAgICAgaWYgKCFsaXZlVXBkYXRlSW50ZXJ2YWwpCiAg
ICAgICAgICAgICByZXR1cm4gV1RGOjpudWxsb3B0OwogCi0gICAgICAgIE9wdGlvbmFsPHVuc2ln
bmVkIGxvbmcgbG9uZz4gdG90YWxCeXRlczsKKyAgICAgICAgLy8gSEFDSyh2aWN0b3IpOiBJIGRv
bid0IGtub3cgaG93IHRvIHByb3Blcmx5IGZpeCB0aGlzIGVycm9yOgorICAgICAgICAvLyBlcnJv
cjogbm8gbWF0Y2hpbmcgZnVuY3Rpb24gZm9yIGNhbGwgdG8g4oCYSVBDOjpBcmd1bWVudENvZGVy
PGxvbmcgbG9uZyB1bnNpZ25lZCBpbnQ+OjpkZWNvZGUoSVBDOjpEZWNvZGVyJiwgbG9uZyBsb25n
IHVuc2lnbmVkIGludCYp4oCZCisgICAgICAgIC8vIGFueSBndWlkYW5jZSBpcyB2ZXJ5IHdlbGNv
bWVkCisgICAgICAgIE9wdGlvbmFsPHVuc2lnbmVkIGxvbmc+IHRvdGFsQnl0ZXM7CiAgICAgICAg
IGRlY29kZXIgPj4gdG90YWxCeXRlczsKICAgICAgICAgaWYgKCF0b3RhbEJ5dGVzKQogICAgICAg
ICAgICAgcmV0dXJuIFdURjo6bnVsbG9wdDsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvV2Vi
UHJvY2Vzcy9HUFUvbWVkaWEvVGV4dFRyYWNrUHJpdmF0ZVJlbW90ZS5oIGIvU291cmNlL1dlYktp
dC9XZWJQcm9jZXNzL0dQVS9tZWRpYS9UZXh0VHJhY2tQcml2YXRlUmVtb3RlLmgKaW5kZXggYjA3
MDY0MmYzNjA0OTVmZWI4YmExN2Y5ZDc1MmQxYzlkY2JjNjM4Yi4uYjk1MDM0YmYyNjk1ODFhYTdl
OWJmNmRhOTBmMjE5Njk0Y2IwY2Y2NCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9XZWJQcm9j
ZXNzL0dQVS9tZWRpYS9UZXh0VHJhY2tQcml2YXRlUmVtb3RlLmgKKysrIGIvU291cmNlL1dlYktp
dC9XZWJQcm9jZXNzL0dQVS9tZWRpYS9UZXh0VHJhY2tQcml2YXRlUmVtb3RlLmgKQEAgLTU3LDgg
KzU3LDggQEAgcHVibGljOgogCiAgICAgdm9pZCBhZGREYXRhQ3VlKE1lZGlhVGltZSYmIHN0YXJ0
LCBNZWRpYVRpbWUmJiBlbmQsIElQQzo6RGF0YVJlZmVyZW5jZSYmKTsKIAotICAgIHVzaW5nIFNl
cmlhbGl6ZWRQbGF0Zm9ybURhdGFDdWVWYWx1ZSA9IFdlYkNvcmU6OlNlcmlhbGl6ZWRQbGF0Zm9y
bURhdGFDdWVWYWx1ZTsKICNpZiBFTkFCTEUoREFUQUNVRV9WQUxVRSkKKyAgICB1c2luZyBTZXJp
YWxpemVkUGxhdGZvcm1EYXRhQ3VlVmFsdWUgPSBXZWJDb3JlOjpTZXJpYWxpemVkUGxhdGZvcm1E
YXRhQ3VlVmFsdWU7CiAgICAgdm9pZCBhZGREYXRhQ3VlV2l0aFR5cGUoTWVkaWFUaW1lJiYgc3Rh
cnQsIE1lZGlhVGltZSYmIGVuZCwgU2VyaWFsaXplZFBsYXRmb3JtRGF0YUN1ZVZhbHVlJiYsIFN0
cmluZyYmKTsKICAgICB2b2lkIHVwZGF0ZURhdGFDdWUoTWVkaWFUaW1lJiYgc3RhcnQsIE1lZGlh
VGltZSYmIGVuZCwgU2VyaWFsaXplZFBsYXRmb3JtRGF0YUN1ZVZhbHVlJiYpOwogICAgIHZvaWQg
cmVtb3ZlRGF0YUN1ZShNZWRpYVRpbWUmJiBzdGFydCwgTWVkaWFUaW1lJiYgZW5kLCBTZXJpYWxp
emVkUGxhdGZvcm1EYXRhQ3VlVmFsdWUmJik7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1dl
YlByb2Nlc3MvR1BVL21lZGlhL1ZpZGVvTGF5ZXJSZW1vdGUuaCBiL1NvdXJjZS9XZWJLaXQvV2Vi
UHJvY2Vzcy9HUFUvbWVkaWEvVmlkZW9MYXllclJlbW90ZS5oCmluZGV4IGY2NGVmZjZjOGVkNmJi
MjAxOWYzYWRiZTFhYmY1NmE2NjE1Y2U1ZGMuLjhkNzVjZTFmYjI5NjRlYmIxMzljNzViZjIxNTg0
MzJhZjc0MTZhZWYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9HUFUvbWVk
aWEvVmlkZW9MYXllclJlbW90ZS5oCisrKyBiL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9HUFUv
bWVkaWEvVmlkZW9MYXllclJlbW90ZS5oCkBAIC0yNSw3ICsyNSw3IEBACiAKICNwcmFnbWEgb25j
ZQogCi0jaWYgRU5BQkxFKEdQVV9QUk9DRVNTKQorI2lmIEVOQUJMRShHUFVfUFJPQ0VTUykgJiYg
UExBVEZPUk0oQ09DT0EpCiAKICNpbmNsdWRlICJMYXllckhvc3RpbmdDb250ZXh0LmgiCiAjaW5j
bHVkZSA8d3RmL1JldGFpblB0ci5oPgpkaWZmIC0tZ2l0IGEvU291cmNlL2NtYWtlL09wdGlvbnNH
VEsuY21ha2UgYi9Tb3VyY2UvY21ha2UvT3B0aW9uc0dUSy5jbWFrZQppbmRleCBkODgxMzNjNmMx
ZGNiNTU1NGZmYTYxZWU4YzA4YzgyNDE4MWVlMmRlLi44ZGMxYzI4OTUzOWU1YzQyNDIxZDM5OWNk
MTMzNWYxMWZjZWY2NDI4IDEwMDY0NAotLS0gYS9Tb3VyY2UvY21ha2UvT3B0aW9uc0dUSy5jbWFr
ZQorKysgYi9Tb3VyY2UvY21ha2UvT3B0aW9uc0dUSy5jbWFrZQpAQCAtMTUxLDEyICsxNTEsMTYg
QEAgV0VCS0lUX09QVElPTl9ERUZBVUxUX1BPUlRfVkFMVUUoRU5BQkxFX1dFQkRSSVZFUiBQVUJM
SUMgT04pCiAjIENoYW5naW5nIHRoZXNlIG9wdGlvbnMgaXMgY29tcGxldGVseSB1bnN1cHBvcnRl
ZC4KIFdFQktJVF9PUFRJT05fREVGQVVMVF9QT1JUX1ZBTFVFKEVOQUJMRV9BVVRPQ0FQSVRBTEla
RSBQUklWQVRFIE9OKQogV0VCS0lUX09QVElPTl9ERUZBVUxUX1BPUlRfVkFMVUUoRU5BQkxFX0NP
TlRFTlRfRVhURU5TSU9OUyBQUklWQVRFIE9OKQorV0VCS0lUX09QVElPTl9ERUZBVUxUX1BPUlRf
VkFMVUUoRU5BQkxFX0NTU19DT05JQ19HUkFESUVOVFMgUFJJVkFURSBPTikKK1dFQktJVF9PUFRJ
T05fREVGQVVMVF9QT1JUX1ZBTFVFKEVOQUJMRV9DU1NfUEFJTlRJTkdfQVBJIFBSSVZBVEUgJHtF
TkFCTEVfRVhQRVJJTUVOVEFMX0ZFQVRVUkVTfSkKK1dFQktJVF9PUFRJT05fREVGQVVMVF9QT1JU
X1ZBTFVFKEVOQUJMRV9DU1NfVFlQRURfT00gUFJJVkFURSAke0VOQUJMRV9FWFBFUklNRU5UQUxf
RkVBVFVSRVN9KQogV0VCS0lUX09QVElPTl9ERUZBVUxUX1BPUlRfVkFMVUUoRU5BQkxFX0NVUlNP
Ul9WSVNJQklMSVRZIFBSSVZBVEUgT04pCiBXRUJLSVRfT1BUSU9OX0RFRkFVTFRfUE9SVF9WQUxV
RShFTkFCTEVfREFSS19NT0RFX0NTUyBQUklWQVRFIE9OKQogV0VCS0lUX09QVElPTl9ERUZBVUxU
X1BPUlRfVkFMVUUoRU5BQkxFX0RBVEFMSVNUX0VMRU1FTlQgUFJJVkFURSBPTikKIFdFQktJVF9P
UFRJT05fREVGQVVMVF9QT1JUX1ZBTFVFKEVOQUJMRV9ET1dOTE9BRF9BVFRSSUJVVEUgUFJJVkFU
RSBPTikKIFdFQktJVF9PUFRJT05fREVGQVVMVF9QT1JUX1ZBTFVFKEVOQUJMRV9FTkNSWVBURURf
TUVESUEgUFJJVkFURSAke0VOQUJMRV9FWFBFUklNRU5UQUxfRkVBVFVSRVN9KQogV0VCS0lUX09Q
VElPTl9ERUZBVUxUX1BPUlRfVkFMVUUoRU5BQkxFX0ZUUERJUiBQUklWQVRFIE9GRikKK1dFQktJ
VF9PUFRJT05fREVGQVVMVF9QT1JUX1ZBTFVFKEVOQUJMRV9HUFVfUFJPQ0VTUyBQUklWQVRFICR7
RU5BQkxFX0VYUEVSSU1FTlRBTF9GRUFUVVJFU30pCiBXRUJLSVRfT1BUSU9OX0RFRkFVTFRfUE9S
VF9WQUxVRShFTkFCTEVfSU5QVVRfVFlQRV9DT0xPUiBQUklWQVRFIE9OKQogV0VCS0lUX09QVElP
Tl9ERUZBVUxUX1BPUlRfVkFMVUUoRU5BQkxFX0xBWU9VVF9GT1JNQVRUSU5HX0NPTlRFWFQgUFJJ
VkFURSAke0VOQUJMRV9FWFBFUklNRU5UQUxfRkVBVFVSRVN9KQogV0VCS0lUX09QVElPTl9ERUZB
VUxUX1BPUlRfVkFMVUUoRU5BQkxFX01FRElBX1NUUkVBTSBQUklWQVRFICR7RU5BQkxFX0VYUEVS
SU1FTlRBTF9GRUFUVVJFU30pCkBAIC0xNjgsOSArMTcyLDYgQEAgV0VCS0lUX09QVElPTl9ERUZB
VUxUX1BPUlRfVkFMVUUoRU5BQkxFX1BPSU5URVJfTE9DSyBQUklWQVRFIE9OKQogV0VCS0lUX09Q
VElPTl9ERUZBVUxUX1BPUlRfVkFMVUUoRU5BQkxFX1NFUlZJQ0VfV09SS0VSIFBSSVZBVEUgT04p
CiBXRUJLSVRfT1BUSU9OX0RFRkFVTFRfUE9SVF9WQUxVRShFTkFCTEVfU0hBUkVBQkxFX1JFU09V
UkNFIFBVQkxJQyBPTikKIFdFQktJVF9PUFRJT05fREVGQVVMVF9QT1JUX1ZBTFVFKEVOQUJMRV9X
RUJfUlRDIFBSSVZBVEUgJHtFTkFCTEVfRVhQRVJJTUVOVEFMX0ZFQVRVUkVTfSkKLVdFQktJVF9P
UFRJT05fREVGQVVMVF9QT1JUX1ZBTFVFKEVOQUJMRV9DU1NfUEFJTlRJTkdfQVBJIFBSSVZBVEUg
JHtFTkFCTEVfRVhQRVJJTUVOVEFMX0ZFQVRVUkVTfSkKLVdFQktJVF9PUFRJT05fREVGQVVMVF9Q
T1JUX1ZBTFVFKEVOQUJMRV9DU1NfVFlQRURfT00gUFJJVkFURSAke0VOQUJMRV9FWFBFUklNRU5U
QUxfRkVBVFVSRVN9KQotV0VCS0lUX09QVElPTl9ERUZBVUxUX1BPUlRfVkFMVUUoRU5BQkxFX0NT
U19DT05JQ19HUkFESUVOVFMgUFJJVkFURSBPTikKIAogaW5jbHVkZShHU3RyZWFtZXJEZXBlbmRl
bmNpZXMpCiAKZGlmZiAtLWdpdCBhL0NoYW5nZUxvZyBiL0NoYW5nZUxvZwppbmRleCBlODgyOTYw
MTc4MThmZjQ4Y2Y4YTVkMGI4ZDkzM2ExNjQ2MTJjYWU2Li4yNmUyMDkzNTQ0OTE0MGFjODgyMjZl
OGRhMjVlMGZlZTk0ZTIwMjBlIDEwMDY0NAotLS0gYS9DaGFuZ2VMb2cKKysrIGIvQ2hhbmdlTG9n
CkBAIC0xLDMgKzEsMTQgQEAKKzIwMjAtMDMtMTAgIFbDrWN0b3IgTWFudWVsIErDoXF1ZXogTGVh
bCAgPHZqYXF1ZXpAaWdhbGlhLmNvbT4KKworICAgICAgICBbR1BVUF1bR1RLXSBjb21waWxlIEdQ
VVByb2Nlc3MgaW4gR1RLIHBvcnQKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hv
d19idWcuY2dpP2lkPTIwODgxNAorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEp
LgorCisgICAgICAgIEVuYWJsZSBHUFVQcm9jZXNzIGFzIGFuIGV4cGVyaW1lbnRhbCBvcHRpb24g
aW4gR1RLIHBvcnQuCisKKyAgICAgICAgKiBTb3VyY2UvY21ha2UvT3B0aW9uc0dUSy5jbWFrZToK
KwogMjAyMC0wMy0wOSAgRG9uIE9sbXN0ZWFkICA8ZG9uLm9sbXN0ZWFkQHNvbnkuY29tPgogCiAg
ICAgICAgIEFkZCBzY3JpcHQgdG8gc2VhcmNoIGZvciBmZWF0dXJlIGRlZmluZXMK
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>394477</attachid>
            <date>2020-03-25 02:26:23 -0700</date>
            <delta_ts>2020-03-25 03:11:24 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-208814-20200325102621.patch</filename>
            <type>text/plain</type>
            <size>16140</size>
            <attacher name="Víctor M. Jáquez L.">vjaquez</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjU4OTc0CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L0No
YW5nZUxvZyBiL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCmluZGV4IGMxY2FiNmUzNjdhZTVkNWNk
NjE5NjRlMTRiY2JlOGRlZDE1Nzg5ZDEuLmJhNTQxY2VjMDI5M2U3NzVlMzI2ZjYyZDYzOWQ2Njcx
N2QyYWI1MzAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCisrKyBiL1NvdXJj
ZS9XZWJLaXQvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsNTEgQEAKKzIwMjAtMDMtMjUgIFbDrWN0b3Ig
TWFudWVsIErDoXF1ZXogTGVhbCAgPHZqYXF1ZXpAaWdhbGlhLmNvbT4KKworICAgICAgICBbR1BV
UF1bR1RLXSBjb21waWxlIEdQVVByb2Nlc3MgaW4gR1RLIHBvcnQKKyAgICAgICAgaHR0cHM6Ly9i
dWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIwODgxNAorCisgICAgICAgIFJldmlld2Vk
IGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIEVuYWJsZSBHUFVQcm9jZXNzIGNvbXBpbGF0
aW9uIGluIFdlYktpdEdUSy4KKworICAgICAgICBObyBuZXcgdGVzdHMgcmVxdWlyZWQuCisKKyAg
ICAgICAgKiBHUFVQcm9jZXNzL0dQVUNvbm5lY3Rpb25Ub1dlYlByb2Nlc3MuY3BwOiBndWFyZAor
ICAgICAgICBVc2VyTWVkaWFDYXB0dXJlTWFuYWdlclByb3h5IGZvciBDb2NvYSBwbGF0Zm9ybSBv
bmx5LgorICAgICAgICAoV2ViS2l0OjpHUFVDb25uZWN0aW9uVG9XZWJQcm9jZXNzOjpkaXNwYXRj
aE1lc3NhZ2UpOiBndWFyZAorICAgICAgICBtZXNzYWdlcyBmcm9tIFVzZXJNZWRpYUNhcHR1cmVN
YW5hZ2VyUHJveHkgZm9yIENvY29hIHBsYXRmb3JtLAorICAgICAgICBtb3ZpbmcgdXAgdGhpcyBn
dWFyZCBhcHBsaWVkIGFsc28gZm9yIHZpZGVvIHRyYWNrLgorICAgICAgICAoV2ViS2l0OjpHUFVD
b25uZWN0aW9uVG9XZWJQcm9jZXNzOjpzZXRPcmllbnRhdGlvbkZvck1lZGlhQ2FwdHVyZSk6Cisg
ICAgICAgIGd1YXJkIHRoZSBjb250ZW50IG9mIHRoaXMgZnVuY3Rpb24gZm9yIENvY29hIHBsYXRm
b3JtLCBzaW5jZSBpdCBpcworICAgICAgICBjYWxsaW5nIGEgVXNlck1lZGlhQ2FwdHVyZU1hbmFn
ZXJQcm94eSBvYmplY3QuCisgICAgICAgIChXZWJLaXQ6OkdQVUNvbm5lY3Rpb25Ub1dlYlByb2Nl
c3M6Om1lZGlhS2V5U3RvcmFnZURpcmVjdG9yeSk6CisgICAgICAgIHJlbW92ZWQgZ3VhcmQgZm9y
IHRoaXMgZnVuY3Rpb24gb2YgRU5DUllQVEVEX01FRElBIGxlYXZpbmcgb25seQorICAgICAgICBM
RUdBQ1lfRU5DUllQVEVEX01FRElBLCBzaW5jZSBpdCdzIHdlcmUgaXQgaXMgZGVmaW5lZC4KKyAg
ICAgICAgKiBHUFVQcm9jZXNzL0dQVVByb2Nlc3MuY3BwOiBpbnN0ZWFkIG9mIGluY2x1ZGluZwor
ICAgICAgICBNb2NrUmVhbHRpbWVNZWRpYVNvdXJjZUNlbnRlci5oLCB3aGljaCBpdCBpcyBub3Qg
dXNlZCB0aGVyZSwgYWRkZWQKKyAgICAgICAgTW9ja0F1ZGlvU2hhcmVkVW5pdC5oIHdoZXJlIGFy
ZSBkZWZpbmVkIHRoZSB1c2VkIHN5bWJvbHMuCisgICAgICAgICogR1BVUHJvY2Vzcy9tZWRpYS9S
ZW1vdGVNZWRpYVBsYXllclByb3h5LmNwcDogcmVtb3ZlZAorICAgICAgICBMYXllckhvc3RpbmdD
b250ZXh0LmggaW5jbHVkZSBzaW5jZSBpdCBpcyBub3QgdXNlZC4KKyAgICAgICAgKiBHUFVQcm9j
ZXNzL21lZGlhL1JlbW90ZU1lZGlhUGxheWVyUHJveHkuaDogZ3VhcmQKKyAgICAgICAgTGF5ZXJI
b3N0aW5nQ29udGV4dCBpbnN0YW5jZXMgZm9yIENvY29hIHBsYXRmb3JtLgorICAgICAgICAqIEdQ
VVByb2Nlc3MvbWVkaWEvUmVtb3RlTWVkaWFQbGF5ZXJQcm94eS5tZXNzYWdlcy5pbjogZ3VhcmQK
KyAgICAgICAgUHJlcGFyZUZvclBsYXliYWNrIG1lc3NhZ2UgdG8gQ29jb2EgcGxhdGZvcm0gb25s
eSwgc2luY2UgaXQKKyAgICAgICAgcmV0dXJucyBpZHMgdGhhdCBhcmUgQ29jb2Egc3BlY2lmaWMu
IE90aGVycyBwb3J0cyBzaG91bGQgZGVmaW5lCisgICAgICAgIGl0cyBvd24gbWVzc2FnZS4KKyAg
ICAgICAgKiBXZWJQcm9jZXNzL0dQVS9HUFVQcm9jZXNzQ29ubmVjdGlvbi5jcHA6IGd1YXJkCisg
ICAgICAgIFVzZXJNZWRpYUNhcHR1cmVNYW5hZ2VyIGZvciBDb2NvYSBwbGF0Zm9ybSBvbmx5Lgor
ICAgICAgICAoV2ViS2l0OjpHUFVQcm9jZXNzQ29ubmVjdGlvbjo6ZGlzcGF0Y2hNZXNzYWdlKTog
Z3VhcmQgbWVzc2FnZXMKKyAgICAgICAgZm9tciBVc2VyTWVkaWFDYXB0dXJlTWFuYWdlciBmb3Ig
Q29jb2EgcGxhdGZvcm0sIG1vdmluZyB1cCB0aGlzCisgICAgICAgIGd1YXJkIGFwcGxpZWQgYWxz
byBmb3IgdmlkZW8gdHJhY2suCisgICAgICAgICogV2ViUHJvY2Vzcy9HUFUvbWVkaWEvTWVkaWFQ
bGF5ZXJQcml2YXRlUmVtb3RlLmNwcDoKKyAgICAgICAgKFdlYktpdDo6TWVkaWFQbGF5ZXJQcml2
YXRlUmVtb3RlOjpwcmVwYXJlRm9yUGxheWJhY2spOiBndWFyZCB0aGUKKyAgICAgICAgY29udGVu
dCBvZiB0aGlzIGZ1bmN0aW9uIHNpbmNlIGl0IHVzZXMgYSBwcmV2aW91c2x5IGd1YXJkZWQgSVBD
CisgICAgICAgIGNhbGwuCisgICAgICAgICogV2ViUHJvY2Vzcy9HUFUvbWVkaWEvTWVkaWFQbGF5
ZXJQcml2YXRlUmVtb3RlLmg6IGd1YXJkIGluY2x1ZGUKKyAgICAgICAgb2YgTGF5ZXJIb3N0aW5n
Q29udGV4dC5oIGZvciBDb2NvYSBwbGF0Zm9ybSBvbmx5LCBhbmQgYSBtZW1lYmVyCisgICAgICAg
IHZhcmlhYmxlIHdpdGggYSB0eXBlIGRlZmluZWQgdGhlcmUuCisgICAgICAgICogV2ViUHJvY2Vz
cy9HUFUvbWVkaWEvVmlkZW9MYXllclJlbW90ZS5oOiBndWFyZCB0aGUgd2hvbGUgaW5jbHVkZQor
ICAgICAgICBmaWxlIGZvciBDb2NvYSBwbGF0Zm9ybSBvbmx5LgorCiAyMDIwLTAzLTI0ICBEYW5p
ZWwgQmF0ZXMgIDxkYWJhdGVzQGFwcGxlLmNvbT4KIAogICAgICAgICBVbnJldmlld2VkLCByZXZl
cnRpbmcgcjI1ODk0NS4KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvR1BVUHJvY2Vzcy9HUFVD
b25uZWN0aW9uVG9XZWJQcm9jZXNzLmNwcCBiL1NvdXJjZS9XZWJLaXQvR1BVUHJvY2Vzcy9HUFVD
b25uZWN0aW9uVG9XZWJQcm9jZXNzLmNwcAppbmRleCAyNmY3MzgwY2E1MjJhZmQ4NDAyYzY1MzNl
OTM3Nzc1NDY1MzEzMDhiLi40MzFjMzM5MjE2NjgwNGVjMzA4MWZiYzZjYWRhYjQ1NDEzYTQxMDA0
IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L0dQVVByb2Nlc3MvR1BVQ29ubmVjdGlvblRvV2Vi
UHJvY2Vzcy5jcHAKKysrIGIvU291cmNlL1dlYktpdC9HUFVQcm9jZXNzL0dQVUNvbm5lY3Rpb25U
b1dlYlByb2Nlc3MuY3BwCkBAIC03Myw3ICs3Myw3IEBACiAjaW5jbHVkZSAiUmVtb3RlQ0RNUHJv
eHlNZXNzYWdlcy5oIgogI2VuZGlmCiAKLSNpZiBFTkFCTEUoTUVESUFfU1RSRUFNKQorI2lmIFBM
QVRGT1JNKENPQ09BKSAmJiBFTkFCTEUoTUVESUFfU1RSRUFNKQogI2luY2x1ZGUgIlVzZXJNZWRp
YUNhcHR1cmVNYW5hZ2VyUHJveHkuaCIKICNpbmNsdWRlICJVc2VyTWVkaWFDYXB0dXJlTWFuYWdl
clByb3h5TWVzc2FnZXMuaCIKICNlbmRpZgpAQCAtMzY0LDcgKzM2NCw3IEBAIGJvb2wgR1BVQ29u
bmVjdGlvblRvV2ViUHJvY2Vzczo6ZGlzcGF0Y2hNZXNzYWdlKElQQzo6Q29ubmVjdGlvbiYgY29u
bmVjdGlvbiwgSVBDCiAgICAgICAgIHJlbW90ZU1lZGlhUmVzb3VyY2VNYW5hZ2VyKCkuZGlkUmVj
ZWl2ZU1lc3NhZ2UoY29ubmVjdGlvbiwgZGVjb2Rlcik7CiAgICAgICAgIHJldHVybiB0cnVlOwog
ICAgIH0KLSNpZiBFTkFCTEUoTUVESUFfU1RSRUFNKQorI2lmIFBMQVRGT1JNKENPQ09BKSAmJiBF
TkFCTEUoTUVESUFfU1RSRUFNKQogICAgIGlmIChkZWNvZGVyLm1lc3NhZ2VSZWNlaXZlck5hbWUo
KSA9PSBNZXNzYWdlczo6VXNlck1lZGlhQ2FwdHVyZU1hbmFnZXJQcm94eTo6bWVzc2FnZVJlY2Vp
dmVyTmFtZSgpKSB7CiAgICAgICAgIHVzZXJNZWRpYUNhcHR1cmVNYW5hZ2VyUHJveHkoKS5kaWRS
ZWNlaXZlTWVzc2FnZUZyb21HUFVQcm9jZXNzKGNvbm5lY3Rpb24sIGRlY29kZXIpOwogICAgICAg
ICByZXR1cm4gdHJ1ZTsKQEAgLTM3Nyw3ICszNzcsNyBAQCBib29sIEdQVUNvbm5lY3Rpb25Ub1dl
YlByb2Nlc3M6OmRpc3BhdGNoTWVzc2FnZShJUEM6OkNvbm5lY3Rpb24mIGNvbm5lY3Rpb24sIElQ
QwogICAgICAgICBtZWRpYVJlY29yZGVyTWFuYWdlcigpLmRpZFJlY2VpdmVSZW1vdGVNZWRpYVJl
Y29yZGVyTWVzc2FnZShjb25uZWN0aW9uLCBkZWNvZGVyKTsKICAgICAgICAgcmV0dXJuIHRydWU7
CiAgICAgfQotI2lmIFBMQVRGT1JNKENPQ09BKSAmJiBFTkFCTEUoVklERU9fVFJBQ0spCisjaWYg
RU5BQkxFKFZJREVPX1RSQUNLKQogICAgIGlmIChkZWNvZGVyLm1lc3NhZ2VSZWNlaXZlck5hbWUo
KSA9PSBNZXNzYWdlczo6UmVtb3RlQXVkaW9NZWRpYVN0cmVhbVRyYWNrUmVuZGVyZXJNYW5hZ2Vy
OjptZXNzYWdlUmVjZWl2ZXJOYW1lKCkpIHsKICAgICAgICAgYXVkaW9UcmFja1JlbmRlcmVyTWFu
YWdlcigpLmRpZFJlY2VpdmVNZXNzYWdlRnJvbVdlYlByb2Nlc3MoY29ubmVjdGlvbiwgZGVjb2Rl
cik7CiAgICAgICAgIHJldHVybiB0cnVlOwpAQCAtNDk3LDcgKzQ5Nyw3IEBAIGNvbnN0IFN0cmlu
ZyYgR1BVQ29ubmVjdGlvblRvV2ViUHJvY2Vzczo6bWVkaWFDYWNoZURpcmVjdG9yeSgpIGNvbnN0
CiAgICAgcmV0dXJuIG1fZ3B1UHJvY2Vzcy0+bWVkaWFDYWNoZURpcmVjdG9yeShtX3Nlc3Npb25J
RCk7CiB9CiAKLSNpZiBFTkFCTEUoRU5DUllQVEVEX01FRElBKSB8fCBFTkFCTEUoTEVHQUNZX0VO
Q1JZUFRFRF9NRURJQSkKKyNpZiBFTkFCTEUoTEVHQUNZX0VOQ1JZUFRFRF9NRURJQSkKIGNvbnN0
IFN0cmluZyYgR1BVQ29ubmVjdGlvblRvV2ViUHJvY2Vzczo6bWVkaWFLZXlzU3RvcmFnZURpcmVj
dG9yeSgpIGNvbnN0CiB7CiAgICAgcmV0dXJuIG1fZ3B1UHJvY2Vzcy0+bWVkaWFLZXlzU3RvcmFn
ZURpcmVjdG9yeShtX3Nlc3Npb25JRCk7CkBAIC01MDcsNyArNTA3LDkgQEAgY29uc3QgU3RyaW5n
JiBHUFVDb25uZWN0aW9uVG9XZWJQcm9jZXNzOjptZWRpYUtleXNTdG9yYWdlRGlyZWN0b3J5KCkg
Y29uc3QKICNpZiBFTkFCTEUoTUVESUFfU1RSRUFNKQogdm9pZCBHUFVDb25uZWN0aW9uVG9XZWJQ
cm9jZXNzOjpzZXRPcmllbnRhdGlvbkZvck1lZGlhQ2FwdHVyZSh1aW50NjRfdCBvcmllbnRhdGlv
bikKIHsKKyNpZiBQTEFURk9STShDT0NPQSkKICAgICB1c2VyTWVkaWFDYXB0dXJlTWFuYWdlclBy
b3h5KCkuc2V0T3JpZW50YXRpb24ob3JpZW50YXRpb24pOworI2VuZGlmCiB9CiAKIHZvaWQgR1BV
Q29ubmVjdGlvblRvV2ViUHJvY2Vzczo6dXBkYXRlQ2FwdHVyZUFjY2Vzcyhib29sIGFsbG93QXVk
aW9DYXB0dXJlLCBib29sIGFsbG93VmlkZW9DYXB0dXJlLCBib29sIGFsbG93RGlzcGxheUNhcHR1
cmUpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L0dQVVByb2Nlc3MvR1BVUHJvY2Vzcy5jcHAg
Yi9Tb3VyY2UvV2ViS2l0L0dQVVByb2Nlc3MvR1BVUHJvY2Vzcy5jcHAKaW5kZXggZWYyMzk1ZWM1
OWY3NTU5YjE1MThiNjk2ZWYzNjU4MjQ2YzkzZDI5Ni4uMTJmZGQ5NmM5NWMyNDAyNmI0NjkzZWNj
ZGUzOWQ4ODIyM2ZlM2EwYyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9HUFVQcm9jZXNzL0dQ
VVByb2Nlc3MuY3BwCisrKyBiL1NvdXJjZS9XZWJLaXQvR1BVUHJvY2Vzcy9HUFVQcm9jZXNzLmNw
cApAQCAtNTYsNyArNTYsNyBAQAogI2VuZGlmCiAKICNpZiBFTkFCTEUoTUVESUFfU1RSRUFNKQot
I2luY2x1ZGUgPFdlYkNvcmUvTW9ja0F1ZGlvU2hhcmVkVW5pdC5oPgorI2luY2x1ZGUgPFdlYkNv
cmUvTW9ja1JlYWx0aW1lTWVkaWFTb3VyY2VDZW50ZXIuaD4KICNlbmRpZgogCiBuYW1lc3BhY2Ug
V2ViS2l0IHsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvR1BVUHJvY2Vzcy9tZWRpYS9SZW1v
dGVNZWRpYVBsYXllclByb3h5LmNwcCBiL1NvdXJjZS9XZWJLaXQvR1BVUHJvY2Vzcy9tZWRpYS9S
ZW1vdGVNZWRpYVBsYXllclByb3h5LmNwcAppbmRleCBmNjQyOWYyYmQxNTQyMTY0MWVmZGE3Njc2
ZDAwMzg3OWRhNzAyY2NjLi45MjY4OGYzMzMwZjBkZGQzOGU2YjQ3MjkzNDJkN2QwMDBiMTY5OTA5
IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L0dQVVByb2Nlc3MvbWVkaWEvUmVtb3RlTWVkaWFQ
bGF5ZXJQcm94eS5jcHAKKysrIGIvU291cmNlL1dlYktpdC9HUFVQcm9jZXNzL21lZGlhL1JlbW90
ZU1lZGlhUGxheWVyUHJveHkuY3BwCkBAIC0zMCw3ICszMCw2IEBACiAKICNpbmNsdWRlICJEYXRh
UmVmZXJlbmNlLmgiCiAjaW5jbHVkZSAiR1BVQ29ubmVjdGlvblRvV2ViUHJvY2Vzcy5oIgotI2lu
Y2x1ZGUgIkxheWVySG9zdGluZ0NvbnRleHQuaCIKICNpbmNsdWRlICJNZWRpYVBsYXllclByaXZh
dGVSZW1vdGVNZXNzYWdlcy5oIgogI2luY2x1ZGUgIlJlbW90ZUF1ZGlvVHJhY2tQcm94eS5oIgog
I2luY2x1ZGUgIlJlbW90ZUxlZ2FjeUNETUZhY3RvcnlQcm94eS5oIgpkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYktpdC9HUFVQcm9jZXNzL21lZGlhL1JlbW90ZU1lZGlhUGxheWVyUHJveHkuaCBiL1Nv
dXJjZS9XZWJLaXQvR1BVUHJvY2Vzcy9tZWRpYS9SZW1vdGVNZWRpYVBsYXllclByb3h5LmgKaW5k
ZXggZDBhN2FjMTcwZGIzNWQzYzllNzBkNjZjM2UyMzNiNjFmYjAyODIzYi4uOWQwOTRjZGFlOWM4
OTNiMThhYzQ4NTJmNDQ0OTE0YzVlZjZkYTU5OCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9H
UFVQcm9jZXNzL21lZGlhL1JlbW90ZU1lZGlhUGxheWVyUHJveHkuaAorKysgYi9Tb3VyY2UvV2Vi
S2l0L0dQVVByb2Nlc3MvbWVkaWEvUmVtb3RlTWVkaWFQbGF5ZXJQcm94eS5oCkBAIC0yNzgsOCAr
Mjc4LDEwIEBAIHByaXZhdGU6CiAgICAgUmVmUHRyPFNhbmRib3hFeHRlbnNpb24+IG1fc2FuZGJv
eEV4dGVuc2lvbjsKICAgICBSZWY8SVBDOjpDb25uZWN0aW9uPiBtX3dlYlByb2Nlc3NDb25uZWN0
aW9uOwogICAgIFJlZlB0cjxXZWJDb3JlOjpNZWRpYVBsYXllcj4gbV9wbGF5ZXI7CisjaWYgUExB
VEZPUk0oQ09DT0EpCiAgICAgc3RkOjp1bmlxdWVfcHRyPExheWVySG9zdGluZ0NvbnRleHQ+IG1f
aW5saW5lTGF5ZXJIb3N0aW5nQ29udGV4dDsKICAgICBzdGQ6OnVuaXF1ZV9wdHI8TGF5ZXJIb3N0
aW5nQ29udGV4dD4gbV9mdWxsc2NyZWVuTGF5ZXJIb3N0aW5nQ29udGV4dDsKKyNlbmRpZgogICAg
IFJlbW90ZU1lZGlhUGxheWVyTWFuYWdlclByb3h5JiBtX21hbmFnZXI7CiAgICAgV2ViQ29yZTo6
TWVkaWFQbGF5ZXJFbnVtczo6TWVkaWFFbmdpbmVJZGVudGlmaWVyIG1fZW5naW5lSWRlbnRpZmll
cjsKICAgICBWZWN0b3I8V2ViQ29yZTo6Q29udGVudFR5cGU+IG1fdHlwZXNSZXF1aXJpbmdIYXJk
d2FyZVN1cHBvcnQ7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L0dQVVByb2Nlc3MvbWVkaWEv
UmVtb3RlTWVkaWFQbGF5ZXJQcm94eS5tZXNzYWdlcy5pbiBiL1NvdXJjZS9XZWJLaXQvR1BVUHJv
Y2Vzcy9tZWRpYS9SZW1vdGVNZWRpYVBsYXllclByb3h5Lm1lc3NhZ2VzLmluCmluZGV4IGIwMjJm
NTZlNTAyODE4OTMzYjI3MTc5Y2FiMzI3NmVlOTU3N2YyNTguLmVlZmI4Y2QxNDQyNzY3M2QyZWMw
YmJmY2QwZTY3MjZmYzhhMDE1MjMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvR1BVUHJvY2Vz
cy9tZWRpYS9SZW1vdGVNZWRpYVBsYXllclByb3h5Lm1lc3NhZ2VzLmluCisrKyBiL1NvdXJjZS9X
ZWJLaXQvR1BVUHJvY2Vzcy9tZWRpYS9SZW1vdGVNZWRpYVBsYXllclByb3h5Lm1lc3NhZ2VzLmlu
CkBAIC0yNCw3ICsyNCw5IEBACiAjaWYgRU5BQkxFKEdQVV9QUk9DRVNTKQogCiBtZXNzYWdlcyAt
PiBSZW1vdGVNZWRpYVBsYXllclByb3h5IE5vdFJlZkNvdW50ZWQgeworI2lmIFBMQVRGT1JNKENP
Q09BKQogICAgIFByZXBhcmVGb3JQbGF5YmFjayhib29sIHByaXZhdGVNb2RlLCBlbnVtOnVpbnQ4
X3QgV2ViQ29yZTo6TWVkaWFQbGF5ZXJFbnVtczo6UHJlbG9hZCBwcmVsb2FkLCBib29sIHByZXNl
cnZlc1BpdGNoLCBib29sIHByZXBhcmVGb3JSZW5kZXJpbmcsIGZsb2F0IHZpZGVvQ29udGVudFNj
YWxlKSAtPiAoT3B0aW9uYWw8V2ViS2l0OjpMYXllckhvc3RpbmdDb250ZXh0SUQ+IGlubGluZUxh
eWVySG9zdGluZ0NvbnRleHRJZCwgT3B0aW9uYWw8V2ViS2l0OjpMYXllckhvc3RpbmdDb250ZXh0
SUQ+IGZ1bGxzY3JlZW5MYXllckhvc3RpbmdDb250ZXh0SWQpIEFzeW5jCisjZW5kaWYKIAogICAg
IExvYWQoVVJMIHVybCwgT3B0aW9uYWw8V2ViS2l0OjpTYW5kYm94RXh0ZW5zaW9uOjpIYW5kbGU+
IHNhbmRib3hFeHRlbnNpb24sIFdlYkNvcmU6OkNvbnRlbnRUeXBlIGNvbnRlbnRUeXBlLCBTdHJp
bmcga2V5U3lzdGVtKSAtPiAoc3RydWN0IFdlYktpdDo6UmVtb3RlTWVkaWFQbGF5ZXJDb25maWd1
cmF0aW9uIHBsYXllckNvbmZpZ3VyYXRpb24pIEFzeW5jCiAgICAgQ2FuY2VsTG9hZCgpCmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvR1BVL0dQVVByb2Nlc3NDb25uZWN0aW9u
LmNwcCBiL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9HUFUvR1BVUHJvY2Vzc0Nvbm5lY3Rpb24u
Y3BwCmluZGV4IGRkODVkMTdhNDYwMWMxMjY1Yjg4ODVmYzk5NDg1MjAwMjIwMTBiMGUuLmRiZTU4
MTk5ZTQ3YzZhNmU1MGIxOTAxYTViM2UyYzNiZWRlMTIwMjEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJLaXQvV2ViUHJvY2Vzcy9HUFUvR1BVUHJvY2Vzc0Nvbm5lY3Rpb24uY3BwCisrKyBiL1NvdXJj
ZS9XZWJLaXQvV2ViUHJvY2Vzcy9HUFUvR1BVUHJvY2Vzc0Nvbm5lY3Rpb24uY3BwCkBAIC01MCw3
ICs1MCw3IEBACiAjaW5jbHVkZSAiUmVtb3RlQ0RNSW5zdGFuY2VTZXNzaW9uTWVzc2FnZXMuaCIK
ICNlbmRpZgogCi0jaWYgRU5BQkxFKE1FRElBX1NUUkVBTSkKKyNpZiBQTEFURk9STShDT0NPQSkg
JiYgRU5BQkxFKE1FRElBX1NUUkVBTSkKICNpbmNsdWRlICJVc2VyTWVkaWFDYXB0dXJlTWFuYWdl
ci5oIgogI2luY2x1ZGUgIlVzZXJNZWRpYUNhcHR1cmVNYW5hZ2VyTWVzc2FnZXMuaCIKICNlbmRp
ZgpAQCAtMTEyLDE5ICsxMTIsMTkgQEAgYm9vbCBHUFVQcm9jZXNzQ29ubmVjdGlvbjo6ZGlzcGF0
Y2hNZXNzYWdlKElQQzo6Q29ubmVjdGlvbiYgY29ubmVjdGlvbiwgSVBDOjpEZWMKICAgICAgICAg
cmV0dXJuIHRydWU7CiAgICAgfQogCi0jaWYgRU5BQkxFKE1FRElBX1NUUkVBTSkKKyNpZiBQTEFU
Rk9STShDT0NPQSkgJiYgRU5BQkxFKE1FRElBX1NUUkVBTSkKICAgICBpZiAoZGVjb2Rlci5tZXNz
YWdlUmVjZWl2ZXJOYW1lKCkgPT0gTWVzc2FnZXM6OlVzZXJNZWRpYUNhcHR1cmVNYW5hZ2VyOjpt
ZXNzYWdlUmVjZWl2ZXJOYW1lKCkpIHsKICAgICAgICAgaWYgKGF1dG8qIGNhcHR1cmVNYW5hZ2Vy
ID0gV2ViUHJvY2Vzczo6c2luZ2xldG9uKCkuc3VwcGxlbWVudDxVc2VyTWVkaWFDYXB0dXJlTWFu
YWdlcj4oKSkKICAgICAgICAgICAgIGNhcHR1cmVNYW5hZ2VyLT5kaWRSZWNlaXZlTWVzc2FnZUZy
b21HUFVQcm9jZXNzKGNvbm5lY3Rpb24sIGRlY29kZXIpOwogICAgICAgICByZXR1cm4gdHJ1ZTsK
ICAgICB9Ci0jaWYgUExBVEZPUk0oQ09DT0EpICYmIEVOQUJMRShWSURFT19UUkFDSykKKyNpZiBF
TkFCTEUoVklERU9fVFJBQ0spCiAgICAgaWYgKGRlY29kZXIubWVzc2FnZVJlY2VpdmVyTmFtZSgp
ID09IE1lc3NhZ2VzOjpTYW1wbGVCdWZmZXJEaXNwbGF5TGF5ZXI6Om1lc3NhZ2VSZWNlaXZlck5h
bWUoKSkgewogICAgICAgICBzYW1wbGVCdWZmZXJEaXNwbGF5TGF5ZXJNYW5hZ2VyKCkuZGlkUmVj
ZWl2ZUxheWVyTWVzc2FnZShjb25uZWN0aW9uLCBkZWNvZGVyKTsKICAgICAgICAgcmV0dXJuIHRy
dWU7CiAgICAgfQotI2VuZGlmIC8vIFBMQVRGT1JNKENPQ09BKSAmJiBFTkFCTEUoVklERU9fVFJB
Q0spCi0jZW5kaWYgLy8gRU5BQkxFKE1FRElBX1NUUkVBTSkKKyNlbmRpZiAvLyBFTkFCTEUoVklE
RU9fVFJBQ0spCisjZW5kaWYgLy8gUExBVEZPUk0oQ09DT0EpICYmIEVOQUJMRShNRURJQV9TVFJF
QU0pCiAjaWYgVVNFKExJQldFQlJUQykgJiYgUExBVEZPUk0oQ09DT0EpCiAgICAgaWYgKGRlY29k
ZXIubWVzc2FnZVJlY2VpdmVyTmFtZSgpID09IE1lc3NhZ2VzOjpMaWJXZWJSVENDb2RlY3M6Om1l
c3NhZ2VSZWNlaXZlck5hbWUoKSkgewogICAgICAgICBXZWJQcm9jZXNzOjpzaW5nbGV0b24oKS5s
aWJXZWJSVENDb2RlY3MoKS5kaWRSZWNlaXZlTWVzc2FnZShjb25uZWN0aW9uLCBkZWNvZGVyKTsK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9HUFUvbWVkaWEvTWVkaWFQbGF5
ZXJQcml2YXRlUmVtb3RlLmNwcCBiL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9HUFUvbWVkaWEv
TWVkaWFQbGF5ZXJQcml2YXRlUmVtb3RlLmNwcAppbmRleCA2ODhjNDcxZWM4Mjc3MGNhZmIyYWEw
OWNjOTg4ZGUwMGNlODljYWJmLi4yYmQ0MWNmOTQ0NWYxOTg0MDkyYzAwNGY3ZWEzNjg3MWQ2ZDRk
ZGUxIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvR1BVL21lZGlhL01lZGlh
UGxheWVyUHJpdmF0ZVJlbW90ZS5jcHAKKysrIGIvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL0dQ
VS9tZWRpYS9NZWRpYVBsYXllclByaXZhdGVSZW1vdGUuY3BwCkBAIC0xMTksNiArMTE5LDcgQEAg
TWVkaWFQbGF5ZXJQcml2YXRlUmVtb3RlOjp+TWVkaWFQbGF5ZXJQcml2YXRlUmVtb3RlKCkKIAog
dm9pZCBNZWRpYVBsYXllclByaXZhdGVSZW1vdGU6OnByZXBhcmVGb3JQbGF5YmFjayhib29sIHBy
aXZhdGVNb2RlLCBNZWRpYVBsYXllcjo6UHJlbG9hZCBwcmVsb2FkLCBib29sIHByZXNlcnZlc1Bp
dGNoLCBib29sIHByZXBhcmUpCiB7CisjaWYgUExBVEZPUk0oQ09DT0EpCiAgICAgYXV0byBzY2Fs
ZSA9IG1fcGxheWVyLT5wbGF5ZXJDb250ZW50c1NjYWxlKCk7CiAKICAgICBjb25uZWN0aW9uKCku
c2VuZFdpdGhBc3luY1JlcGx5KE1lc3NhZ2VzOjpSZW1vdGVNZWRpYVBsYXllclByb3h5OjpQcmVw
YXJlRm9yUGxheWJhY2socHJpdmF0ZU1vZGUsIHByZWxvYWQsIHByZXNlcnZlc1BpdGNoLCBwcmVw
YXJlLCBzY2FsZSksIFt3ZWFrVGhpcyA9IG1ha2VXZWFrUHRyKCp0aGlzKSwgdGhpc10oYXV0byBp
bmxpbmVMYXllckhvc3RpbmdDb250ZXh0SWQsIGF1dG8gZnVsbHNjcmVlbkxheWVySG9zdGluZ0Nv
bnRleHRJZCkgbXV0YWJsZSB7CkBAIC0xMzIsNiArMTMzLDcgQEAgdm9pZCBNZWRpYVBsYXllclBy
aXZhdGVSZW1vdGU6OnByZXBhcmVGb3JQbGF5YmFjayhib29sIHByaXZhdGVNb2RlLCBNZWRpYVBs
YXllcjoKIAogICAgICAgICBtX2Z1bGxzY3JlZW5MYXllckhvc3RpbmdDb250ZXh0SWQgPSBmdWxs
c2NyZWVuTGF5ZXJIb3N0aW5nQ29udGV4dElkOwogICAgIH0sIG1faWQpOworI2VuZGlmCiB9CiAK
IHZvaWQgTWVkaWFQbGF5ZXJQcml2YXRlUmVtb3RlOjpNZWRpYVBsYXllclByaXZhdGVSZW1vdGU6
OmxvYWQoY29uc3QgVVJMJiB1cmwsIGNvbnN0IENvbnRlbnRUeXBlJiBjb250ZW50VHlwZSwgY29u
c3QgU3RyaW5nJiBrZXlTeXN0ZW0pCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nl
c3MvR1BVL21lZGlhL01lZGlhUGxheWVyUHJpdmF0ZVJlbW90ZS5oIGIvU291cmNlL1dlYktpdC9X
ZWJQcm9jZXNzL0dQVS9tZWRpYS9NZWRpYVBsYXllclByaXZhdGVSZW1vdGUuaAppbmRleCA3ZWM4
YjhlYTIxZWM5N2E0NDcwMGFhNmQ2MjU1ZGViMDMyYjRmYWY0Li40OWI0MTVlYzYxYmNjZmU0ZTM2
OGFlYzU3NTNlMDQ1MjliY2JlZDJlIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nl
c3MvR1BVL21lZGlhL01lZGlhUGxheWVyUHJpdmF0ZVJlbW90ZS5oCisrKyBiL1NvdXJjZS9XZWJL
aXQvV2ViUHJvY2Vzcy9HUFUvbWVkaWEvTWVkaWFQbGF5ZXJQcml2YXRlUmVtb3RlLmgKQEAgLTI3
LDcgKzI3LDYgQEAKIAogI2lmIEVOQUJMRShHUFVfUFJPQ0VTUykKIAotI2luY2x1ZGUgIkxheWVy
SG9zdGluZ0NvbnRleHQuaCIKICNpbmNsdWRlICJSZW1vdGVNZWRpYVBsYXllckNvbmZpZ3VyYXRp
b24uaCIKICNpbmNsdWRlICJSZW1vdGVNZWRpYVBsYXllck1hbmFnZXIuaCIKICNpbmNsdWRlICJS
ZW1vdGVNZWRpYVBsYXllclN0YXRlLmgiCkBAIC00MCw2ICszOSwxMCBAQAogI2luY2x1ZGUgPHd0
Zi9NZWRpYVRpbWUuaD4KICNpbmNsdWRlIDx3dGYvV2Vha1B0ci5oPgogCisjaWYgUExBVEZPUk0o
Q09DT0EpCisjaW5jbHVkZSAiTGF5ZXJIb3N0aW5nQ29udGV4dC5oIgorI2VuZGlmCisKIG5hbWVz
cGFjZSBXVEYgewogY2xhc3MgTWFjaFNlbmRSaWdodDsKIH0KQEAgLTM1OSw3ICszNjIsOSBAQCBw
cml2YXRlOgogICAgIFJlZlB0cjxXZWJDb3JlOjpQbGF0Zm9ybU1lZGlhUmVzb3VyY2VMb2FkZXI+
IG1fbWVkaWFSZXNvdXJjZUxvYWRlcjsKICAgICBQbGF0Zm9ybUxheWVyQ29udGFpbmVyIG1fdmlk
ZW9JbmxpbmVMYXllcjsKICAgICBQbGF0Zm9ybUxheWVyQ29udGFpbmVyIG1fdmlkZW9GdWxsc2Ny
ZWVuTGF5ZXI7CisjaWYgUExBVEZPUk0oQ09DT0EpCiAgICAgT3B0aW9uYWw8TGF5ZXJIb3N0aW5n
Q29udGV4dElEPiBtX2Z1bGxzY3JlZW5MYXllckhvc3RpbmdDb250ZXh0SWQ7CisjZW5kaWYKICAg
ICBSZW1vdGVNZWRpYVBsYXllck1hbmFnZXImIG1fbWFuYWdlcjsKICAgICBXZWJDb3JlOjpNZWRp
YVBsYXllckVudW1zOjpNZWRpYUVuZ2luZUlkZW50aWZpZXIgbV9yZW1vdGVFbmdpbmVJZGVudGlm
aWVyOwogICAgIE1lZGlhUGxheWVyUHJpdmF0ZVJlbW90ZUlkZW50aWZpZXIgbV9pZDsKZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9HUFUvbWVkaWEvVmlkZW9MYXllclJlbW90
ZS5oIGIvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL0dQVS9tZWRpYS9WaWRlb0xheWVyUmVtb3Rl
LmgKaW5kZXggOTk2YjNmNTYwNDNhNTk5ZDczNmZkNDA5NDNiOWFhOWJiMmQwYTdhOS4uOWU5OTgw
N2RmNGRiNjRjYTlkNjMwNGNjMThhMDYxMzIyMDFmYjJkZCAxMDA2NDQKLS0tIGEvU291cmNlL1dl
YktpdC9XZWJQcm9jZXNzL0dQVS9tZWRpYS9WaWRlb0xheWVyUmVtb3RlLmgKKysrIGIvU291cmNl
L1dlYktpdC9XZWJQcm9jZXNzL0dQVS9tZWRpYS9WaWRlb0xheWVyUmVtb3RlLmgKQEAgLTI1LDcg
KzI1LDcgQEAKIAogI3ByYWdtYSBvbmNlCiAKLSNpZiBFTkFCTEUoR1BVX1BST0NFU1MpCisjaWYg
UExBVEZPUk0oQ09DT0EpICYmIEVOQUJMRShHUFVfUFJPQ0VTUykKIAogI2luY2x1ZGUgIkxheWVy
SG9zdGluZ0NvbnRleHQuaCIKICNpbmNsdWRlIDxXZWJDb3JlL1BsYXRmb3JtTGF5ZXIuaD4KZGlm
ZiAtLWdpdCBhL1NvdXJjZS9jbWFrZS9PcHRpb25zR1RLLmNtYWtlIGIvU291cmNlL2NtYWtlL09w
dGlvbnNHVEsuY21ha2UKaW5kZXggNGY0MDM0NjdmNzk1ZjBmNjY4NzFkM2Q5MTcxY2QzODE5Y2E0
OTk1Yi4uOGU0ZmRhODM2ZDlmMjZmMGNlNWI2ZWFmNTEyYWFmNzE0OGQyY2M1ZCAxMDA2NDQKLS0t
IGEvU291cmNlL2NtYWtlL09wdGlvbnNHVEsuY21ha2UKKysrIGIvU291cmNlL2NtYWtlL09wdGlv
bnNHVEsuY21ha2UKQEAgLTE1NywxMiArMTU3LDE2IEBAIFdFQktJVF9PUFRJT05fREVGQVVMVF9Q
T1JUX1ZBTFVFKEVOQUJMRV9XRUJEUklWRVIgUFVCTElDIE9OKQogIyBDaGFuZ2luZyB0aGVzZSBv
cHRpb25zIGlzIGNvbXBsZXRlbHkgdW5zdXBwb3J0ZWQuCiBXRUJLSVRfT1BUSU9OX0RFRkFVTFRf
UE9SVF9WQUxVRShFTkFCTEVfQVVUT0NBUElUQUxJWkUgUFJJVkFURSBPTikKIFdFQktJVF9PUFRJ
T05fREVGQVVMVF9QT1JUX1ZBTFVFKEVOQUJMRV9DT05URU5UX0VYVEVOU0lPTlMgUFJJVkFURSBP
TikKK1dFQktJVF9PUFRJT05fREVGQVVMVF9QT1JUX1ZBTFVFKEVOQUJMRV9DU1NfQ09OSUNfR1JB
RElFTlRTIFBSSVZBVEUgT04pCitXRUJLSVRfT1BUSU9OX0RFRkFVTFRfUE9SVF9WQUxVRShFTkFC
TEVfQ1NTX1BBSU5USU5HX0FQSSBQUklWQVRFICR7RU5BQkxFX0VYUEVSSU1FTlRBTF9GRUFUVVJF
U30pCitXRUJLSVRfT1BUSU9OX0RFRkFVTFRfUE9SVF9WQUxVRShFTkFCTEVfQ1NTX1RZUEVEX09N
IFBSSVZBVEUgJHtFTkFCTEVfRVhQRVJJTUVOVEFMX0ZFQVRVUkVTfSkKIFdFQktJVF9PUFRJT05f
REVGQVVMVF9QT1JUX1ZBTFVFKEVOQUJMRV9DVVJTT1JfVklTSUJJTElUWSBQUklWQVRFIE9OKQog
V0VCS0lUX09QVElPTl9ERUZBVUxUX1BPUlRfVkFMVUUoRU5BQkxFX0RBUktfTU9ERV9DU1MgUFJJ
VkFURSBPTikKIFdFQktJVF9PUFRJT05fREVGQVVMVF9QT1JUX1ZBTFVFKEVOQUJMRV9EQVRBTElT
VF9FTEVNRU5UIFBSSVZBVEUgT04pCiBXRUJLSVRfT1BUSU9OX0RFRkFVTFRfUE9SVF9WQUxVRShF
TkFCTEVfRE9XTkxPQURfQVRUUklCVVRFIFBSSVZBVEUgT04pCiBXRUJLSVRfT1BUSU9OX0RFRkFV
TFRfUE9SVF9WQUxVRShFTkFCTEVfRU5DUllQVEVEX01FRElBIFBSSVZBVEUgJHtFTkFCTEVfRVhQ
RVJJTUVOVEFMX0ZFQVRVUkVTfSkKIFdFQktJVF9PUFRJT05fREVGQVVMVF9QT1JUX1ZBTFVFKEVO
QUJMRV9GVFBESVIgUFJJVkFURSBPRkYpCitXRUJLSVRfT1BUSU9OX0RFRkFVTFRfUE9SVF9WQUxV
RShFTkFCTEVfR1BVX1BST0NFU1MgUFJJVkFURSAke0VOQUJMRV9FWFBFUklNRU5UQUxfRkVBVFVS
RVN9KQogV0VCS0lUX09QVElPTl9ERUZBVUxUX1BPUlRfVkFMVUUoRU5BQkxFX0lOUFVUX1RZUEVf
Q09MT1IgUFJJVkFURSBPTikKIFdFQktJVF9PUFRJT05fREVGQVVMVF9QT1JUX1ZBTFVFKEVOQUJM
RV9MQVlPVVRfRk9STUFUVElOR19DT05URVhUIFBSSVZBVEUgJHtFTkFCTEVfRVhQRVJJTUVOVEFM
X0ZFQVRVUkVTfSkKIFdFQktJVF9PUFRJT05fREVGQVVMVF9QT1JUX1ZBTFVFKEVOQUJMRV9NRURJ
QV9TVFJFQU0gUFJJVkFURSAke0VOQUJMRV9FWFBFUklNRU5UQUxfRkVBVFVSRVN9KQpAQCAtMTc0
LDkgKzE3OCw2IEBAIFdFQktJVF9PUFRJT05fREVGQVVMVF9QT1JUX1ZBTFVFKEVOQUJMRV9QT0lO
VEVSX0xPQ0sgUFJJVkFURSBPTikKIFdFQktJVF9PUFRJT05fREVGQVVMVF9QT1JUX1ZBTFVFKEVO
QUJMRV9TRVJWSUNFX1dPUktFUiBQUklWQVRFIE9OKQogV0VCS0lUX09QVElPTl9ERUZBVUxUX1BP
UlRfVkFMVUUoRU5BQkxFX1NIQVJFQUJMRV9SRVNPVVJDRSBQVUJMSUMgT04pCiBXRUJLSVRfT1BU
SU9OX0RFRkFVTFRfUE9SVF9WQUxVRShFTkFCTEVfV0VCX1JUQyBQUklWQVRFICR7RU5BQkxFX0VY
UEVSSU1FTlRBTF9GRUFUVVJFU30pCi1XRUJLSVRfT1BUSU9OX0RFRkFVTFRfUE9SVF9WQUxVRShF
TkFCTEVfQ1NTX1BBSU5USU5HX0FQSSBQUklWQVRFICR7RU5BQkxFX0VYUEVSSU1FTlRBTF9GRUFU
VVJFU30pCi1XRUJLSVRfT1BUSU9OX0RFRkFVTFRfUE9SVF9WQUxVRShFTkFCTEVfQ1NTX1RZUEVE
X09NIFBSSVZBVEUgJHtFTkFCTEVfRVhQRVJJTUVOVEFMX0ZFQVRVUkVTfSkKLVdFQktJVF9PUFRJ
T05fREVGQVVMVF9QT1JUX1ZBTFVFKEVOQUJMRV9DU1NfQ09OSUNfR1JBRElFTlRTIFBSSVZBVEUg
T04pCiAKIGluY2x1ZGUoR1N0cmVhbWVyRGVwZW5kZW5jaWVzKQogCmRpZmYgLS1naXQgYS9DaGFu
Z2VMb2cgYi9DaGFuZ2VMb2cKaW5kZXggNmFiZTA0ZGY4OGIyOWUwOTdhYTgxNTc0MWJkMjRjZGJi
NmM4NTViYS4uMDhiNGM0MmRkNzNkYjU4NGM5ZmZlZWI5NDU3OGQwOGU0MTY2MWViOCAxMDA2NDQK
LS0tIGEvQ2hhbmdlTG9nCisrKyBiL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE3IEBACisyMDIwLTAz
LTI1ICBWw61jdG9yIE1hbnVlbCBKw6FxdWV6IExlYWwgIDx2amFxdWV6QGlnYWxpYS5jb20+CisK
KyAgICAgICAgW0dQVVBdW0dUS10gY29tcGlsZSBHUFVQcm9jZXNzIGluIEdUSyBwb3J0CisgICAg
ICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMDg4MTQKKworICAg
ICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBFbmFibGUgR1BVUHJv
Y2VzcyBjb21waWxhdGlvbiBpbiBXZWJLaXRHVEsgYXMgYW4gZXhwZXJpbWVudGFsCisgICAgICAg
IGZlYXR1cmUuCisKKyAgICAgICAgKiBTb3VyY2UvY21ha2UvT3B0aW9uc0dUSy5jbWFrZTogc29y
dCBhbHBoYWJldGljYWxseSBXZWJLaXQKKyAgICAgICAgb3B0aW9ucyBmb3IgR1RLIHBvcnQgYW5k
IGVuYWJsZSBHUFVfUFJPQ0VTUyBpZiBleHBlcmltZW50YWwKKyAgICAgICAgZmVhdHVyZXMgYXJl
IGVuYWJsZWQuCisKIDIwMjAtMDMtMjMgIE1pY2hhZWwgQ2F0YW56YXJvICA8bWNhdGFuemFyb0Bn
bm9tZS5vcmc+CiAKICAgICAgICAgW0dUS10gQWxsb3cgZGlzdHJpYnV0b3JzIHRvIGJyYW5kIHVz
ZXIgYWdlbnQK
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>394479</attachid>
            <date>2020-03-25 03:11:30 -0700</date>
            <delta_ts>2020-03-25 05:00:32 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-208814-20200325111128.patch</filename>
            <type>text/plain</type>
            <size>16316</size>
            <attacher name="Víctor M. Jáquez L.">vjaquez</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjU4OTc0CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L0No
YW5nZUxvZyBiL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCmluZGV4IGMxY2FiNmUzNjdhZTVkNWNk
NjE5NjRlMTRiY2JlOGRlZDE1Nzg5ZDEuLjJkMTNhZDEzOThiMjVmMmQ4YTQ0N2JiNjc4MzhmN2Vh
NjMxYjg2YzUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCisrKyBiL1NvdXJj
ZS9XZWJLaXQvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsNTEgQEAKKzIwMjAtMDMtMjUgIFbDrWN0b3Ig
TWFudWVsIErDoXF1ZXogTGVhbCAgPHZqYXF1ZXpAaWdhbGlhLmNvbT4KKworICAgICAgICBbR1BV
UF1bR1RLXSBjb21waWxlIEdQVVByb2Nlc3MgaW4gR1RLIHBvcnQKKyAgICAgICAgaHR0cHM6Ly9i
dWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIwODgxNAorCisgICAgICAgIFJldmlld2Vk
IGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIEVuYWJsZSBHUFVQcm9jZXNzIGNvbXBpbGF0
aW9uIGluIFdlYktpdEdUSy4KKworICAgICAgICBObyBuZXcgdGVzdHMgcmVxdWlyZWQuCisKKyAg
ICAgICAgKiBHUFVQcm9jZXNzL0dQVUNvbm5lY3Rpb25Ub1dlYlByb2Nlc3MuY3BwOiBndWFyZAor
ICAgICAgICBVc2VyTWVkaWFDYXB0dXJlTWFuYWdlclByb3h5IGZvciBDb2NvYSBwbGF0Zm9ybSBv
bmx5LgorICAgICAgICAoV2ViS2l0OjpHUFVDb25uZWN0aW9uVG9XZWJQcm9jZXNzOjpkaXNwYXRj
aE1lc3NhZ2UpOiBndWFyZAorICAgICAgICBtZXNzYWdlcyBmcm9tIFVzZXJNZWRpYUNhcHR1cmVN
YW5hZ2VyUHJveHkgZm9yIENvY29hIHBsYXRmb3JtLAorICAgICAgICBtb3ZpbmcgdXAgdGhpcyBn
dWFyZCBhcHBsaWVkIGFsc28gZm9yIHZpZGVvIHRyYWNrLgorICAgICAgICAoV2ViS2l0OjpHUFVD
b25uZWN0aW9uVG9XZWJQcm9jZXNzOjpzZXRPcmllbnRhdGlvbkZvck1lZGlhQ2FwdHVyZSk6Cisg
ICAgICAgIGd1YXJkIHRoZSBjb250ZW50IG9mIHRoaXMgZnVuY3Rpb24gZm9yIENvY29hIHBsYXRm
b3JtLCBzaW5jZSBpdCBpcworICAgICAgICBjYWxsaW5nIGEgVXNlck1lZGlhQ2FwdHVyZU1hbmFn
ZXJQcm94eSBvYmplY3QuCisgICAgICAgIChXZWJLaXQ6OkdQVUNvbm5lY3Rpb25Ub1dlYlByb2Nl
c3M6Om1lZGlhS2V5U3RvcmFnZURpcmVjdG9yeSk6CisgICAgICAgIHJlbW92ZWQgZ3VhcmQgZm9y
IHRoaXMgZnVuY3Rpb24gb2YgRU5DUllQVEVEX01FRElBIGxlYXZpbmcgb25seQorICAgICAgICBM
RUdBQ1lfRU5DUllQVEVEX01FRElBLCBzaW5jZSBpdCdzIHdlcmUgaXQgaXMgZGVmaW5lZC4KKyAg
ICAgICAgKiBHUFVQcm9jZXNzL0dQVVByb2Nlc3MuY3BwOiBpbnN0ZWFkIG9mIGluY2x1ZGluZwor
ICAgICAgICBNb2NrUmVhbHRpbWVNZWRpYVNvdXJjZUNlbnRlci5oLCB3aGljaCBpdCBpcyBub3Qg
dXNlZCB0aGVyZSwgYWRkZWQKKyAgICAgICAgTW9ja0F1ZGlvU2hhcmVkVW5pdC5oIHdoZXJlIGFy
ZSBkZWZpbmVkIHRoZSB1c2VkIHN5bWJvbHMuCisgICAgICAgICogR1BVUHJvY2Vzcy9tZWRpYS9S
ZW1vdGVNZWRpYVBsYXllclByb3h5LmNwcDogZ3VhcmQKKyAgICAgICAgTGF5ZXJIb3N0aW5nQ29u
dGV4dC5oIGZvciBDb2NvYSBwbGF0Zm9ybS4KKyAgICAgICAgKiBHUFVQcm9jZXNzL21lZGlhL1Jl
bW90ZU1lZGlhUGxheWVyUHJveHkuaDogZ3VhcmQKKyAgICAgICAgTGF5ZXJIb3N0aW5nQ29udGV4
dCBpbnN0YW5jZXMgZm9yIENvY29hIHBsYXRmb3JtLgorICAgICAgICAqIEdQVVByb2Nlc3MvbWVk
aWEvUmVtb3RlTWVkaWFQbGF5ZXJQcm94eS5tZXNzYWdlcy5pbjogZ3VhcmQKKyAgICAgICAgUHJl
cGFyZUZvclBsYXliYWNrIG1lc3NhZ2UgdG8gQ29jb2EgcGxhdGZvcm0gb25seSwgc2luY2UgaXQK
KyAgICAgICAgcmV0dXJucyBpZHMgdGhhdCBhcmUgQ29jb2Egc3BlY2lmaWMuIE90aGVycyBwb3J0
cyBzaG91bGQgZGVmaW5lCisgICAgICAgIGl0cyBvd24gbWVzc2FnZS4KKyAgICAgICAgKiBXZWJQ
cm9jZXNzL0dQVS9HUFVQcm9jZXNzQ29ubmVjdGlvbi5jcHA6IGd1YXJkCisgICAgICAgIFVzZXJN
ZWRpYUNhcHR1cmVNYW5hZ2VyIGZvciBDb2NvYSBwbGF0Zm9ybSBvbmx5LgorICAgICAgICAoV2Vi
S2l0OjpHUFVQcm9jZXNzQ29ubmVjdGlvbjo6ZGlzcGF0Y2hNZXNzYWdlKTogZ3VhcmQgbWVzc2Fn
ZXMKKyAgICAgICAgZm9tciBVc2VyTWVkaWFDYXB0dXJlTWFuYWdlciBmb3IgQ29jb2EgcGxhdGZv
cm0sIG1vdmluZyB1cCB0aGlzCisgICAgICAgIGd1YXJkIGFwcGxpZWQgYWxzbyBmb3IgdmlkZW8g
dHJhY2suCisgICAgICAgICogV2ViUHJvY2Vzcy9HUFUvbWVkaWEvTWVkaWFQbGF5ZXJQcml2YXRl
UmVtb3RlLmNwcDoKKyAgICAgICAgKFdlYktpdDo6TWVkaWFQbGF5ZXJQcml2YXRlUmVtb3RlOjpw
cmVwYXJlRm9yUGxheWJhY2spOiBndWFyZCB0aGUKKyAgICAgICAgY29udGVudCBvZiB0aGlzIGZ1
bmN0aW9uIHNpbmNlIGl0IHVzZXMgYSBwcmV2aW91c2x5IGd1YXJkZWQgSVBDCisgICAgICAgIGNh
bGwuCisgICAgICAgICogV2ViUHJvY2Vzcy9HUFUvbWVkaWEvTWVkaWFQbGF5ZXJQcml2YXRlUmVt
b3RlLmg6IGd1YXJkIGluY2x1ZGUKKyAgICAgICAgb2YgTGF5ZXJIb3N0aW5nQ29udGV4dC5oIGZv
ciBDb2NvYSBwbGF0Zm9ybSBvbmx5LCBhbmQgYSBtZW1lYmVyCisgICAgICAgIHZhcmlhYmxlIHdp
dGggYSB0eXBlIGRlZmluZWQgdGhlcmUuCisgICAgICAgICogV2ViUHJvY2Vzcy9HUFUvbWVkaWEv
VmlkZW9MYXllclJlbW90ZS5oOiBndWFyZCB0aGUgd2hvbGUgaW5jbHVkZQorICAgICAgICBmaWxl
IGZvciBDb2NvYSBwbGF0Zm9ybSBvbmx5LgorCiAyMDIwLTAzLTI0ICBEYW5pZWwgQmF0ZXMgIDxk
YWJhdGVzQGFwcGxlLmNvbT4KIAogICAgICAgICBVbnJldmlld2VkLCByZXZlcnRpbmcgcjI1ODk0
NS4KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvR1BVUHJvY2Vzcy9HUFVDb25uZWN0aW9uVG9X
ZWJQcm9jZXNzLmNwcCBiL1NvdXJjZS9XZWJLaXQvR1BVUHJvY2Vzcy9HUFVDb25uZWN0aW9uVG9X
ZWJQcm9jZXNzLmNwcAppbmRleCAyNmY3MzgwY2E1MjJhZmQ4NDAyYzY1MzNlOTM3Nzc1NDY1MzEz
MDhiLi40MzFjMzM5MjE2NjgwNGVjMzA4MWZiYzZjYWRhYjQ1NDEzYTQxMDA0IDEwMDY0NAotLS0g
YS9Tb3VyY2UvV2ViS2l0L0dQVVByb2Nlc3MvR1BVQ29ubmVjdGlvblRvV2ViUHJvY2Vzcy5jcHAK
KysrIGIvU291cmNlL1dlYktpdC9HUFVQcm9jZXNzL0dQVUNvbm5lY3Rpb25Ub1dlYlByb2Nlc3Mu
Y3BwCkBAIC03Myw3ICs3Myw3IEBACiAjaW5jbHVkZSAiUmVtb3RlQ0RNUHJveHlNZXNzYWdlcy5o
IgogI2VuZGlmCiAKLSNpZiBFTkFCTEUoTUVESUFfU1RSRUFNKQorI2lmIFBMQVRGT1JNKENPQ09B
KSAmJiBFTkFCTEUoTUVESUFfU1RSRUFNKQogI2luY2x1ZGUgIlVzZXJNZWRpYUNhcHR1cmVNYW5h
Z2VyUHJveHkuaCIKICNpbmNsdWRlICJVc2VyTWVkaWFDYXB0dXJlTWFuYWdlclByb3h5TWVzc2Fn
ZXMuaCIKICNlbmRpZgpAQCAtMzY0LDcgKzM2NCw3IEBAIGJvb2wgR1BVQ29ubmVjdGlvblRvV2Vi
UHJvY2Vzczo6ZGlzcGF0Y2hNZXNzYWdlKElQQzo6Q29ubmVjdGlvbiYgY29ubmVjdGlvbiwgSVBD
CiAgICAgICAgIHJlbW90ZU1lZGlhUmVzb3VyY2VNYW5hZ2VyKCkuZGlkUmVjZWl2ZU1lc3NhZ2Uo
Y29ubmVjdGlvbiwgZGVjb2Rlcik7CiAgICAgICAgIHJldHVybiB0cnVlOwogICAgIH0KLSNpZiBF
TkFCTEUoTUVESUFfU1RSRUFNKQorI2lmIFBMQVRGT1JNKENPQ09BKSAmJiBFTkFCTEUoTUVESUFf
U1RSRUFNKQogICAgIGlmIChkZWNvZGVyLm1lc3NhZ2VSZWNlaXZlck5hbWUoKSA9PSBNZXNzYWdl
czo6VXNlck1lZGlhQ2FwdHVyZU1hbmFnZXJQcm94eTo6bWVzc2FnZVJlY2VpdmVyTmFtZSgpKSB7
CiAgICAgICAgIHVzZXJNZWRpYUNhcHR1cmVNYW5hZ2VyUHJveHkoKS5kaWRSZWNlaXZlTWVzc2Fn
ZUZyb21HUFVQcm9jZXNzKGNvbm5lY3Rpb24sIGRlY29kZXIpOwogICAgICAgICByZXR1cm4gdHJ1
ZTsKQEAgLTM3Nyw3ICszNzcsNyBAQCBib29sIEdQVUNvbm5lY3Rpb25Ub1dlYlByb2Nlc3M6OmRp
c3BhdGNoTWVzc2FnZShJUEM6OkNvbm5lY3Rpb24mIGNvbm5lY3Rpb24sIElQQwogICAgICAgICBt
ZWRpYVJlY29yZGVyTWFuYWdlcigpLmRpZFJlY2VpdmVSZW1vdGVNZWRpYVJlY29yZGVyTWVzc2Fn
ZShjb25uZWN0aW9uLCBkZWNvZGVyKTsKICAgICAgICAgcmV0dXJuIHRydWU7CiAgICAgfQotI2lm
IFBMQVRGT1JNKENPQ09BKSAmJiBFTkFCTEUoVklERU9fVFJBQ0spCisjaWYgRU5BQkxFKFZJREVP
X1RSQUNLKQogICAgIGlmIChkZWNvZGVyLm1lc3NhZ2VSZWNlaXZlck5hbWUoKSA9PSBNZXNzYWdl
czo6UmVtb3RlQXVkaW9NZWRpYVN0cmVhbVRyYWNrUmVuZGVyZXJNYW5hZ2VyOjptZXNzYWdlUmVj
ZWl2ZXJOYW1lKCkpIHsKICAgICAgICAgYXVkaW9UcmFja1JlbmRlcmVyTWFuYWdlcigpLmRpZFJl
Y2VpdmVNZXNzYWdlRnJvbVdlYlByb2Nlc3MoY29ubmVjdGlvbiwgZGVjb2Rlcik7CiAgICAgICAg
IHJldHVybiB0cnVlOwpAQCAtNDk3LDcgKzQ5Nyw3IEBAIGNvbnN0IFN0cmluZyYgR1BVQ29ubmVj
dGlvblRvV2ViUHJvY2Vzczo6bWVkaWFDYWNoZURpcmVjdG9yeSgpIGNvbnN0CiAgICAgcmV0dXJu
IG1fZ3B1UHJvY2Vzcy0+bWVkaWFDYWNoZURpcmVjdG9yeShtX3Nlc3Npb25JRCk7CiB9CiAKLSNp
ZiBFTkFCTEUoRU5DUllQVEVEX01FRElBKSB8fCBFTkFCTEUoTEVHQUNZX0VOQ1JZUFRFRF9NRURJ
QSkKKyNpZiBFTkFCTEUoTEVHQUNZX0VOQ1JZUFRFRF9NRURJQSkKIGNvbnN0IFN0cmluZyYgR1BV
Q29ubmVjdGlvblRvV2ViUHJvY2Vzczo6bWVkaWFLZXlzU3RvcmFnZURpcmVjdG9yeSgpIGNvbnN0
CiB7CiAgICAgcmV0dXJuIG1fZ3B1UHJvY2Vzcy0+bWVkaWFLZXlzU3RvcmFnZURpcmVjdG9yeSht
X3Nlc3Npb25JRCk7CkBAIC01MDcsNyArNTA3LDkgQEAgY29uc3QgU3RyaW5nJiBHUFVDb25uZWN0
aW9uVG9XZWJQcm9jZXNzOjptZWRpYUtleXNTdG9yYWdlRGlyZWN0b3J5KCkgY29uc3QKICNpZiBF
TkFCTEUoTUVESUFfU1RSRUFNKQogdm9pZCBHUFVDb25uZWN0aW9uVG9XZWJQcm9jZXNzOjpzZXRP
cmllbnRhdGlvbkZvck1lZGlhQ2FwdHVyZSh1aW50NjRfdCBvcmllbnRhdGlvbikKIHsKKyNpZiBQ
TEFURk9STShDT0NPQSkKICAgICB1c2VyTWVkaWFDYXB0dXJlTWFuYWdlclByb3h5KCkuc2V0T3Jp
ZW50YXRpb24ob3JpZW50YXRpb24pOworI2VuZGlmCiB9CiAKIHZvaWQgR1BVQ29ubmVjdGlvblRv
V2ViUHJvY2Vzczo6dXBkYXRlQ2FwdHVyZUFjY2Vzcyhib29sIGFsbG93QXVkaW9DYXB0dXJlLCBi
b29sIGFsbG93VmlkZW9DYXB0dXJlLCBib29sIGFsbG93RGlzcGxheUNhcHR1cmUpCmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViS2l0L0dQVVByb2Nlc3MvR1BVUHJvY2Vzcy5jcHAgYi9Tb3VyY2UvV2Vi
S2l0L0dQVVByb2Nlc3MvR1BVUHJvY2Vzcy5jcHAKaW5kZXggZWYyMzk1ZWM1OWY3NTU5YjE1MThi
Njk2ZWYzNjU4MjQ2YzkzZDI5Ni4uMTJmZGQ5NmM5NWMyNDAyNmI0NjkzZWNjZGUzOWQ4ODIyM2Zl
M2EwYyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9HUFVQcm9jZXNzL0dQVVByb2Nlc3MuY3Bw
CisrKyBiL1NvdXJjZS9XZWJLaXQvR1BVUHJvY2Vzcy9HUFVQcm9jZXNzLmNwcApAQCAtNTYsNyAr
NTYsNyBAQAogI2VuZGlmCiAKICNpZiBFTkFCTEUoTUVESUFfU1RSRUFNKQotI2luY2x1ZGUgPFdl
YkNvcmUvTW9ja0F1ZGlvU2hhcmVkVW5pdC5oPgorI2luY2x1ZGUgPFdlYkNvcmUvTW9ja1JlYWx0
aW1lTWVkaWFTb3VyY2VDZW50ZXIuaD4KICNlbmRpZgogCiBuYW1lc3BhY2UgV2ViS2l0IHsKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvR1BVUHJvY2Vzcy9tZWRpYS9SZW1vdGVNZWRpYVBsYXll
clByb3h5LmNwcCBiL1NvdXJjZS9XZWJLaXQvR1BVUHJvY2Vzcy9tZWRpYS9SZW1vdGVNZWRpYVBs
YXllclByb3h5LmNwcAppbmRleCBmNjQyOWYyYmQxNTQyMTY0MWVmZGE3Njc2ZDAwMzg3OWRhNzAy
Y2NjLi45OTk5MjRjZTg0N2Q0YTdkOWU2NWQxZjZmZmZkZWU1OWQ1OWQzYmY2IDEwMDY0NAotLS0g
YS9Tb3VyY2UvV2ViS2l0L0dQVVByb2Nlc3MvbWVkaWEvUmVtb3RlTWVkaWFQbGF5ZXJQcm94eS5j
cHAKKysrIGIvU291cmNlL1dlYktpdC9HUFVQcm9jZXNzL21lZGlhL1JlbW90ZU1lZGlhUGxheWVy
UHJveHkuY3BwCkBAIC0zMCw3ICszMCw2IEBACiAKICNpbmNsdWRlICJEYXRhUmVmZXJlbmNlLmgi
CiAjaW5jbHVkZSAiR1BVQ29ubmVjdGlvblRvV2ViUHJvY2Vzcy5oIgotI2luY2x1ZGUgIkxheWVy
SG9zdGluZ0NvbnRleHQuaCIKICNpbmNsdWRlICJNZWRpYVBsYXllclByaXZhdGVSZW1vdGVNZXNz
YWdlcy5oIgogI2luY2x1ZGUgIlJlbW90ZUF1ZGlvVHJhY2tQcm94eS5oIgogI2luY2x1ZGUgIlJl
bW90ZUxlZ2FjeUNETUZhY3RvcnlQcm94eS5oIgpAQCAtNTksNiArNTgsMTAgQEAKICNpbmNsdWRl
IDxXZWJDb3JlL01lZGlhUGxheWJhY2tUYXJnZXRNb2NrLmg+CiAjZW5kaWYKIAorI2lmIFBMQVRG
T1JNKENPQ09BKQorI2luY2x1ZGUgIkxheWVySG9zdGluZ0NvbnRleHQuaCIKKyNlbmRpZgorCiBu
YW1lc3BhY2UgV2ViS2l0IHsKIAogdXNpbmcgbmFtZXNwYWNlIFdlYkNvcmU7CmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViS2l0L0dQVVByb2Nlc3MvbWVkaWEvUmVtb3RlTWVkaWFQbGF5ZXJQcm94eS5o
IGIvU291cmNlL1dlYktpdC9HUFVQcm9jZXNzL21lZGlhL1JlbW90ZU1lZGlhUGxheWVyUHJveHku
aAppbmRleCBkMGE3YWMxNzBkYjM1ZDNjOWU3MGQ2NmMzZTIzM2I2MWZiMDI4MjNiLi45ZDA5NGNk
YWU5Yzg5M2IxOGFjNDg1MmY0NDQ5MTRjNWVmNmRhNTk4IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2Vi
S2l0L0dQVVByb2Nlc3MvbWVkaWEvUmVtb3RlTWVkaWFQbGF5ZXJQcm94eS5oCisrKyBiL1NvdXJj
ZS9XZWJLaXQvR1BVUHJvY2Vzcy9tZWRpYS9SZW1vdGVNZWRpYVBsYXllclByb3h5LmgKQEAgLTI3
OCw4ICsyNzgsMTAgQEAgcHJpdmF0ZToKICAgICBSZWZQdHI8U2FuZGJveEV4dGVuc2lvbj4gbV9z
YW5kYm94RXh0ZW5zaW9uOwogICAgIFJlZjxJUEM6OkNvbm5lY3Rpb24+IG1fd2ViUHJvY2Vzc0Nv
bm5lY3Rpb247CiAgICAgUmVmUHRyPFdlYkNvcmU6Ok1lZGlhUGxheWVyPiBtX3BsYXllcjsKKyNp
ZiBQTEFURk9STShDT0NPQSkKICAgICBzdGQ6OnVuaXF1ZV9wdHI8TGF5ZXJIb3N0aW5nQ29udGV4
dD4gbV9pbmxpbmVMYXllckhvc3RpbmdDb250ZXh0OwogICAgIHN0ZDo6dW5pcXVlX3B0cjxMYXll
ckhvc3RpbmdDb250ZXh0PiBtX2Z1bGxzY3JlZW5MYXllckhvc3RpbmdDb250ZXh0OworI2VuZGlm
CiAgICAgUmVtb3RlTWVkaWFQbGF5ZXJNYW5hZ2VyUHJveHkmIG1fbWFuYWdlcjsKICAgICBXZWJD
b3JlOjpNZWRpYVBsYXllckVudW1zOjpNZWRpYUVuZ2luZUlkZW50aWZpZXIgbV9lbmdpbmVJZGVu
dGlmaWVyOwogICAgIFZlY3RvcjxXZWJDb3JlOjpDb250ZW50VHlwZT4gbV90eXBlc1JlcXVpcmlu
Z0hhcmR3YXJlU3VwcG9ydDsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvR1BVUHJvY2Vzcy9t
ZWRpYS9SZW1vdGVNZWRpYVBsYXllclByb3h5Lm1lc3NhZ2VzLmluIGIvU291cmNlL1dlYktpdC9H
UFVQcm9jZXNzL21lZGlhL1JlbW90ZU1lZGlhUGxheWVyUHJveHkubWVzc2FnZXMuaW4KaW5kZXgg
YjAyMmY1NmU1MDI4MTg5MzNiMjcxNzljYWIzMjc2ZWU5NTc3ZjI1OC4uZWVmYjhjZDE0NDI3Njcz
ZDJlYzBiYmZjZDBlNjcyNmZjOGEwMTUyMyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9HUFVQ
cm9jZXNzL21lZGlhL1JlbW90ZU1lZGlhUGxheWVyUHJveHkubWVzc2FnZXMuaW4KKysrIGIvU291
cmNlL1dlYktpdC9HUFVQcm9jZXNzL21lZGlhL1JlbW90ZU1lZGlhUGxheWVyUHJveHkubWVzc2Fn
ZXMuaW4KQEAgLTI0LDcgKzI0LDkgQEAKICNpZiBFTkFCTEUoR1BVX1BST0NFU1MpCiAKIG1lc3Nh
Z2VzIC0+IFJlbW90ZU1lZGlhUGxheWVyUHJveHkgTm90UmVmQ291bnRlZCB7CisjaWYgUExBVEZP
Uk0oQ09DT0EpCiAgICAgUHJlcGFyZUZvclBsYXliYWNrKGJvb2wgcHJpdmF0ZU1vZGUsIGVudW06
dWludDhfdCBXZWJDb3JlOjpNZWRpYVBsYXllckVudW1zOjpQcmVsb2FkIHByZWxvYWQsIGJvb2wg
cHJlc2VydmVzUGl0Y2gsIGJvb2wgcHJlcGFyZUZvclJlbmRlcmluZywgZmxvYXQgdmlkZW9Db250
ZW50U2NhbGUpIC0+IChPcHRpb25hbDxXZWJLaXQ6OkxheWVySG9zdGluZ0NvbnRleHRJRD4gaW5s
aW5lTGF5ZXJIb3N0aW5nQ29udGV4dElkLCBPcHRpb25hbDxXZWJLaXQ6OkxheWVySG9zdGluZ0Nv
bnRleHRJRD4gZnVsbHNjcmVlbkxheWVySG9zdGluZ0NvbnRleHRJZCkgQXN5bmMKKyNlbmRpZgog
CiAgICAgTG9hZChVUkwgdXJsLCBPcHRpb25hbDxXZWJLaXQ6OlNhbmRib3hFeHRlbnNpb246Okhh
bmRsZT4gc2FuZGJveEV4dGVuc2lvbiwgV2ViQ29yZTo6Q29udGVudFR5cGUgY29udGVudFR5cGUs
IFN0cmluZyBrZXlTeXN0ZW0pIC0+IChzdHJ1Y3QgV2ViS2l0OjpSZW1vdGVNZWRpYVBsYXllckNv
bmZpZ3VyYXRpb24gcGxheWVyQ29uZmlndXJhdGlvbikgQXN5bmMKICAgICBDYW5jZWxMb2FkKCkK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9HUFUvR1BVUHJvY2Vzc0Nvbm5l
Y3Rpb24uY3BwIGIvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL0dQVS9HUFVQcm9jZXNzQ29ubmVj
dGlvbi5jcHAKaW5kZXggZGQ4NWQxN2E0NjAxYzEyNjViODg4NWZjOTk0ODUyMDAyMjAxMGIwZS4u
ZGJlNTgxOTllNDdjNmE2ZTUwYjE5MDFhNWIzZTJjM2JlZGUxMjAyMSAxMDA2NDQKLS0tIGEvU291
cmNlL1dlYktpdC9XZWJQcm9jZXNzL0dQVS9HUFVQcm9jZXNzQ29ubmVjdGlvbi5jcHAKKysrIGIv
U291cmNlL1dlYktpdC9XZWJQcm9jZXNzL0dQVS9HUFVQcm9jZXNzQ29ubmVjdGlvbi5jcHAKQEAg
LTUwLDcgKzUwLDcgQEAKICNpbmNsdWRlICJSZW1vdGVDRE1JbnN0YW5jZVNlc3Npb25NZXNzYWdl
cy5oIgogI2VuZGlmCiAKLSNpZiBFTkFCTEUoTUVESUFfU1RSRUFNKQorI2lmIFBMQVRGT1JNKENP
Q09BKSAmJiBFTkFCTEUoTUVESUFfU1RSRUFNKQogI2luY2x1ZGUgIlVzZXJNZWRpYUNhcHR1cmVN
YW5hZ2VyLmgiCiAjaW5jbHVkZSAiVXNlck1lZGlhQ2FwdHVyZU1hbmFnZXJNZXNzYWdlcy5oIgog
I2VuZGlmCkBAIC0xMTIsMTkgKzExMiwxOSBAQCBib29sIEdQVVByb2Nlc3NDb25uZWN0aW9uOjpk
aXNwYXRjaE1lc3NhZ2UoSVBDOjpDb25uZWN0aW9uJiBjb25uZWN0aW9uLCBJUEM6OkRlYwogICAg
ICAgICByZXR1cm4gdHJ1ZTsKICAgICB9CiAKLSNpZiBFTkFCTEUoTUVESUFfU1RSRUFNKQorI2lm
IFBMQVRGT1JNKENPQ09BKSAmJiBFTkFCTEUoTUVESUFfU1RSRUFNKQogICAgIGlmIChkZWNvZGVy
Lm1lc3NhZ2VSZWNlaXZlck5hbWUoKSA9PSBNZXNzYWdlczo6VXNlck1lZGlhQ2FwdHVyZU1hbmFn
ZXI6Om1lc3NhZ2VSZWNlaXZlck5hbWUoKSkgewogICAgICAgICBpZiAoYXV0byogY2FwdHVyZU1h
bmFnZXIgPSBXZWJQcm9jZXNzOjpzaW5nbGV0b24oKS5zdXBwbGVtZW50PFVzZXJNZWRpYUNhcHR1
cmVNYW5hZ2VyPigpKQogICAgICAgICAgICAgY2FwdHVyZU1hbmFnZXItPmRpZFJlY2VpdmVNZXNz
YWdlRnJvbUdQVVByb2Nlc3MoY29ubmVjdGlvbiwgZGVjb2Rlcik7CiAgICAgICAgIHJldHVybiB0
cnVlOwogICAgIH0KLSNpZiBQTEFURk9STShDT0NPQSkgJiYgRU5BQkxFKFZJREVPX1RSQUNLKQor
I2lmIEVOQUJMRShWSURFT19UUkFDSykKICAgICBpZiAoZGVjb2Rlci5tZXNzYWdlUmVjZWl2ZXJO
YW1lKCkgPT0gTWVzc2FnZXM6OlNhbXBsZUJ1ZmZlckRpc3BsYXlMYXllcjo6bWVzc2FnZVJlY2Vp
dmVyTmFtZSgpKSB7CiAgICAgICAgIHNhbXBsZUJ1ZmZlckRpc3BsYXlMYXllck1hbmFnZXIoKS5k
aWRSZWNlaXZlTGF5ZXJNZXNzYWdlKGNvbm5lY3Rpb24sIGRlY29kZXIpOwogICAgICAgICByZXR1
cm4gdHJ1ZTsKICAgICB9Ci0jZW5kaWYgLy8gUExBVEZPUk0oQ09DT0EpICYmIEVOQUJMRShWSURF
T19UUkFDSykKLSNlbmRpZiAvLyBFTkFCTEUoTUVESUFfU1RSRUFNKQorI2VuZGlmIC8vIEVOQUJM
RShWSURFT19UUkFDSykKKyNlbmRpZiAvLyBQTEFURk9STShDT0NPQSkgJiYgRU5BQkxFKE1FRElB
X1NUUkVBTSkKICNpZiBVU0UoTElCV0VCUlRDKSAmJiBQTEFURk9STShDT0NPQSkKICAgICBpZiAo
ZGVjb2Rlci5tZXNzYWdlUmVjZWl2ZXJOYW1lKCkgPT0gTWVzc2FnZXM6OkxpYldlYlJUQ0NvZGVj
czo6bWVzc2FnZVJlY2VpdmVyTmFtZSgpKSB7CiAgICAgICAgIFdlYlByb2Nlc3M6OnNpbmdsZXRv
bigpLmxpYldlYlJUQ0NvZGVjcygpLmRpZFJlY2VpdmVNZXNzYWdlKGNvbm5lY3Rpb24sIGRlY29k
ZXIpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL0dQVS9tZWRpYS9NZWRp
YVBsYXllclByaXZhdGVSZW1vdGUuY3BwIGIvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL0dQVS9t
ZWRpYS9NZWRpYVBsYXllclByaXZhdGVSZW1vdGUuY3BwCmluZGV4IDY4OGM0NzFlYzgyNzcwY2Fm
YjJhYTA5Y2M5ODhkZTAwY2U4OWNhYmYuLjJiZDQxY2Y5NDQ1ZjE5ODQwOTJjMDA0ZjdlYTM2ODcx
ZDZkNGRkZTEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9HUFUvbWVkaWEv
TWVkaWFQbGF5ZXJQcml2YXRlUmVtb3RlLmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nl
c3MvR1BVL21lZGlhL01lZGlhUGxheWVyUHJpdmF0ZVJlbW90ZS5jcHAKQEAgLTExOSw2ICsxMTks
NyBAQCBNZWRpYVBsYXllclByaXZhdGVSZW1vdGU6On5NZWRpYVBsYXllclByaXZhdGVSZW1vdGUo
KQogCiB2b2lkIE1lZGlhUGxheWVyUHJpdmF0ZVJlbW90ZTo6cHJlcGFyZUZvclBsYXliYWNrKGJv
b2wgcHJpdmF0ZU1vZGUsIE1lZGlhUGxheWVyOjpQcmVsb2FkIHByZWxvYWQsIGJvb2wgcHJlc2Vy
dmVzUGl0Y2gsIGJvb2wgcHJlcGFyZSkKIHsKKyNpZiBQTEFURk9STShDT0NPQSkKICAgICBhdXRv
IHNjYWxlID0gbV9wbGF5ZXItPnBsYXllckNvbnRlbnRzU2NhbGUoKTsKIAogICAgIGNvbm5lY3Rp
b24oKS5zZW5kV2l0aEFzeW5jUmVwbHkoTWVzc2FnZXM6OlJlbW90ZU1lZGlhUGxheWVyUHJveHk6
OlByZXBhcmVGb3JQbGF5YmFjayhwcml2YXRlTW9kZSwgcHJlbG9hZCwgcHJlc2VydmVzUGl0Y2gs
IHByZXBhcmUsIHNjYWxlKSwgW3dlYWtUaGlzID0gbWFrZVdlYWtQdHIoKnRoaXMpLCB0aGlzXShh
dXRvIGlubGluZUxheWVySG9zdGluZ0NvbnRleHRJZCwgYXV0byBmdWxsc2NyZWVuTGF5ZXJIb3N0
aW5nQ29udGV4dElkKSBtdXRhYmxlIHsKQEAgLTEzMiw2ICsxMzMsNyBAQCB2b2lkIE1lZGlhUGxh
eWVyUHJpdmF0ZVJlbW90ZTo6cHJlcGFyZUZvclBsYXliYWNrKGJvb2wgcHJpdmF0ZU1vZGUsIE1l
ZGlhUGxheWVyOgogCiAgICAgICAgIG1fZnVsbHNjcmVlbkxheWVySG9zdGluZ0NvbnRleHRJZCA9
IGZ1bGxzY3JlZW5MYXllckhvc3RpbmdDb250ZXh0SWQ7CiAgICAgfSwgbV9pZCk7CisjZW5kaWYK
IH0KIAogdm9pZCBNZWRpYVBsYXllclByaXZhdGVSZW1vdGU6Ok1lZGlhUGxheWVyUHJpdmF0ZVJl
bW90ZTo6bG9hZChjb25zdCBVUkwmIHVybCwgY29uc3QgQ29udGVudFR5cGUmIGNvbnRlbnRUeXBl
LCBjb25zdCBTdHJpbmcmIGtleVN5c3RlbSkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvV2Vi
UHJvY2Vzcy9HUFUvbWVkaWEvTWVkaWFQbGF5ZXJQcml2YXRlUmVtb3RlLmggYi9Tb3VyY2UvV2Vi
S2l0L1dlYlByb2Nlc3MvR1BVL21lZGlhL01lZGlhUGxheWVyUHJpdmF0ZVJlbW90ZS5oCmluZGV4
IDdlYzhiOGVhMjFlYzk3YTQ0NzAwYWE2ZDYyNTVkZWIwMzJiNGZhZjQuLjQ5YjQxNWVjNjFiY2Nm
ZTRlMzY4YWVjNTc1M2UwNDUyOWJjYmVkMmUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvV2Vi
UHJvY2Vzcy9HUFUvbWVkaWEvTWVkaWFQbGF5ZXJQcml2YXRlUmVtb3RlLmgKKysrIGIvU291cmNl
L1dlYktpdC9XZWJQcm9jZXNzL0dQVS9tZWRpYS9NZWRpYVBsYXllclByaXZhdGVSZW1vdGUuaApA
QCAtMjcsNyArMjcsNiBAQAogCiAjaWYgRU5BQkxFKEdQVV9QUk9DRVNTKQogCi0jaW5jbHVkZSAi
TGF5ZXJIb3N0aW5nQ29udGV4dC5oIgogI2luY2x1ZGUgIlJlbW90ZU1lZGlhUGxheWVyQ29uZmln
dXJhdGlvbi5oIgogI2luY2x1ZGUgIlJlbW90ZU1lZGlhUGxheWVyTWFuYWdlci5oIgogI2luY2x1
ZGUgIlJlbW90ZU1lZGlhUGxheWVyU3RhdGUuaCIKQEAgLTQwLDYgKzM5LDEwIEBACiAjaW5jbHVk
ZSA8d3RmL01lZGlhVGltZS5oPgogI2luY2x1ZGUgPHd0Zi9XZWFrUHRyLmg+CiAKKyNpZiBQTEFU
Rk9STShDT0NPQSkKKyNpbmNsdWRlICJMYXllckhvc3RpbmdDb250ZXh0LmgiCisjZW5kaWYKKwog
bmFtZXNwYWNlIFdURiB7CiBjbGFzcyBNYWNoU2VuZFJpZ2h0OwogfQpAQCAtMzU5LDcgKzM2Miw5
IEBAIHByaXZhdGU6CiAgICAgUmVmUHRyPFdlYkNvcmU6OlBsYXRmb3JtTWVkaWFSZXNvdXJjZUxv
YWRlcj4gbV9tZWRpYVJlc291cmNlTG9hZGVyOwogICAgIFBsYXRmb3JtTGF5ZXJDb250YWluZXIg
bV92aWRlb0lubGluZUxheWVyOwogICAgIFBsYXRmb3JtTGF5ZXJDb250YWluZXIgbV92aWRlb0Z1
bGxzY3JlZW5MYXllcjsKKyNpZiBQTEFURk9STShDT0NPQSkKICAgICBPcHRpb25hbDxMYXllckhv
c3RpbmdDb250ZXh0SUQ+IG1fZnVsbHNjcmVlbkxheWVySG9zdGluZ0NvbnRleHRJZDsKKyNlbmRp
ZgogICAgIFJlbW90ZU1lZGlhUGxheWVyTWFuYWdlciYgbV9tYW5hZ2VyOwogICAgIFdlYkNvcmU6
Ok1lZGlhUGxheWVyRW51bXM6Ok1lZGlhRW5naW5lSWRlbnRpZmllciBtX3JlbW90ZUVuZ2luZUlk
ZW50aWZpZXI7CiAgICAgTWVkaWFQbGF5ZXJQcml2YXRlUmVtb3RlSWRlbnRpZmllciBtX2lkOwpk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL0dQVS9tZWRpYS9WaWRlb0xheWVy
UmVtb3RlLmggYi9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvR1BVL21lZGlhL1ZpZGVvTGF5ZXJS
ZW1vdGUuaAppbmRleCA5OTZiM2Y1NjA0M2E1OTlkNzM2ZmQ0MDk0M2I5YWE5YmIyZDBhN2E5Li45
ZTk5ODA3ZGY0ZGI2NGNhOWQ2MzA0Y2MxOGEwNjEzMjIwMWZiMmRkIDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViS2l0L1dlYlByb2Nlc3MvR1BVL21lZGlhL1ZpZGVvTGF5ZXJSZW1vdGUuaAorKysgYi9T
b3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvR1BVL21lZGlhL1ZpZGVvTGF5ZXJSZW1vdGUuaApAQCAt
MjUsNyArMjUsNyBAQAogCiAjcHJhZ21hIG9uY2UKIAotI2lmIEVOQUJMRShHUFVfUFJPQ0VTUykK
KyNpZiBQTEFURk9STShDT0NPQSkgJiYgRU5BQkxFKEdQVV9QUk9DRVNTKQogCiAjaW5jbHVkZSAi
TGF5ZXJIb3N0aW5nQ29udGV4dC5oIgogI2luY2x1ZGUgPFdlYkNvcmUvUGxhdGZvcm1MYXllci5o
PgpkaWZmIC0tZ2l0IGEvU291cmNlL2NtYWtlL09wdGlvbnNHVEsuY21ha2UgYi9Tb3VyY2UvY21h
a2UvT3B0aW9uc0dUSy5jbWFrZQppbmRleCA0ZjQwMzQ2N2Y3OTVmMGY2Njg3MWQzZDkxNzFjZDM4
MTljYTQ5OTViLi44ZTRmZGE4MzZkOWYyNmYwY2U1YjZlYWY1MTJhYWY3MTQ4ZDJjYzVkIDEwMDY0
NAotLS0gYS9Tb3VyY2UvY21ha2UvT3B0aW9uc0dUSy5jbWFrZQorKysgYi9Tb3VyY2UvY21ha2Uv
T3B0aW9uc0dUSy5jbWFrZQpAQCAtMTU3LDEyICsxNTcsMTYgQEAgV0VCS0lUX09QVElPTl9ERUZB
VUxUX1BPUlRfVkFMVUUoRU5BQkxFX1dFQkRSSVZFUiBQVUJMSUMgT04pCiAjIENoYW5naW5nIHRo
ZXNlIG9wdGlvbnMgaXMgY29tcGxldGVseSB1bnN1cHBvcnRlZC4KIFdFQktJVF9PUFRJT05fREVG
QVVMVF9QT1JUX1ZBTFVFKEVOQUJMRV9BVVRPQ0FQSVRBTElaRSBQUklWQVRFIE9OKQogV0VCS0lU
X09QVElPTl9ERUZBVUxUX1BPUlRfVkFMVUUoRU5BQkxFX0NPTlRFTlRfRVhURU5TSU9OUyBQUklW
QVRFIE9OKQorV0VCS0lUX09QVElPTl9ERUZBVUxUX1BPUlRfVkFMVUUoRU5BQkxFX0NTU19DT05J
Q19HUkFESUVOVFMgUFJJVkFURSBPTikKK1dFQktJVF9PUFRJT05fREVGQVVMVF9QT1JUX1ZBTFVF
KEVOQUJMRV9DU1NfUEFJTlRJTkdfQVBJIFBSSVZBVEUgJHtFTkFCTEVfRVhQRVJJTUVOVEFMX0ZF
QVRVUkVTfSkKK1dFQktJVF9PUFRJT05fREVGQVVMVF9QT1JUX1ZBTFVFKEVOQUJMRV9DU1NfVFlQ
RURfT00gUFJJVkFURSAke0VOQUJMRV9FWFBFUklNRU5UQUxfRkVBVFVSRVN9KQogV0VCS0lUX09Q
VElPTl9ERUZBVUxUX1BPUlRfVkFMVUUoRU5BQkxFX0NVUlNPUl9WSVNJQklMSVRZIFBSSVZBVEUg
T04pCiBXRUJLSVRfT1BUSU9OX0RFRkFVTFRfUE9SVF9WQUxVRShFTkFCTEVfREFSS19NT0RFX0NT
UyBQUklWQVRFIE9OKQogV0VCS0lUX09QVElPTl9ERUZBVUxUX1BPUlRfVkFMVUUoRU5BQkxFX0RB
VEFMSVNUX0VMRU1FTlQgUFJJVkFURSBPTikKIFdFQktJVF9PUFRJT05fREVGQVVMVF9QT1JUX1ZB
TFVFKEVOQUJMRV9ET1dOTE9BRF9BVFRSSUJVVEUgUFJJVkFURSBPTikKIFdFQktJVF9PUFRJT05f
REVGQVVMVF9QT1JUX1ZBTFVFKEVOQUJMRV9FTkNSWVBURURfTUVESUEgUFJJVkFURSAke0VOQUJM
RV9FWFBFUklNRU5UQUxfRkVBVFVSRVN9KQogV0VCS0lUX09QVElPTl9ERUZBVUxUX1BPUlRfVkFM
VUUoRU5BQkxFX0ZUUERJUiBQUklWQVRFIE9GRikKK1dFQktJVF9PUFRJT05fREVGQVVMVF9QT1JU
X1ZBTFVFKEVOQUJMRV9HUFVfUFJPQ0VTUyBQUklWQVRFICR7RU5BQkxFX0VYUEVSSU1FTlRBTF9G
RUFUVVJFU30pCiBXRUJLSVRfT1BUSU9OX0RFRkFVTFRfUE9SVF9WQUxVRShFTkFCTEVfSU5QVVRf
VFlQRV9DT0xPUiBQUklWQVRFIE9OKQogV0VCS0lUX09QVElPTl9ERUZBVUxUX1BPUlRfVkFMVUUo
RU5BQkxFX0xBWU9VVF9GT1JNQVRUSU5HX0NPTlRFWFQgUFJJVkFURSAke0VOQUJMRV9FWFBFUklN
RU5UQUxfRkVBVFVSRVN9KQogV0VCS0lUX09QVElPTl9ERUZBVUxUX1BPUlRfVkFMVUUoRU5BQkxF
X01FRElBX1NUUkVBTSBQUklWQVRFICR7RU5BQkxFX0VYUEVSSU1FTlRBTF9GRUFUVVJFU30pCkBA
IC0xNzQsOSArMTc4LDYgQEAgV0VCS0lUX09QVElPTl9ERUZBVUxUX1BPUlRfVkFMVUUoRU5BQkxF
X1BPSU5URVJfTE9DSyBQUklWQVRFIE9OKQogV0VCS0lUX09QVElPTl9ERUZBVUxUX1BPUlRfVkFM
VUUoRU5BQkxFX1NFUlZJQ0VfV09SS0VSIFBSSVZBVEUgT04pCiBXRUJLSVRfT1BUSU9OX0RFRkFV
TFRfUE9SVF9WQUxVRShFTkFCTEVfU0hBUkVBQkxFX1JFU09VUkNFIFBVQkxJQyBPTikKIFdFQktJ
VF9PUFRJT05fREVGQVVMVF9QT1JUX1ZBTFVFKEVOQUJMRV9XRUJfUlRDIFBSSVZBVEUgJHtFTkFC
TEVfRVhQRVJJTUVOVEFMX0ZFQVRVUkVTfSkKLVdFQktJVF9PUFRJT05fREVGQVVMVF9QT1JUX1ZB
TFVFKEVOQUJMRV9DU1NfUEFJTlRJTkdfQVBJIFBSSVZBVEUgJHtFTkFCTEVfRVhQRVJJTUVOVEFM
X0ZFQVRVUkVTfSkKLVdFQktJVF9PUFRJT05fREVGQVVMVF9QT1JUX1ZBTFVFKEVOQUJMRV9DU1Nf
VFlQRURfT00gUFJJVkFURSAke0VOQUJMRV9FWFBFUklNRU5UQUxfRkVBVFVSRVN9KQotV0VCS0lU
X09QVElPTl9ERUZBVUxUX1BPUlRfVkFMVUUoRU5BQkxFX0NTU19DT05JQ19HUkFESUVOVFMgUFJJ
VkFURSBPTikKIAogaW5jbHVkZShHU3RyZWFtZXJEZXBlbmRlbmNpZXMpCiAKZGlmZiAtLWdpdCBh
L0NoYW5nZUxvZyBiL0NoYW5nZUxvZwppbmRleCA2YWJlMDRkZjg4YjI5ZTA5N2FhODE1NzQxYmQy
NGNkYmI2Yzg1NWJhLi4wOGI0YzQyZGQ3M2RiNTg0YzlmZmVlYjk0NTc4ZDA4ZTQxNjYxZWI4IDEw
MDY0NAotLS0gYS9DaGFuZ2VMb2cKKysrIGIvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTcgQEAKKzIw
MjAtMDMtMjUgIFbDrWN0b3IgTWFudWVsIErDoXF1ZXogTGVhbCAgPHZqYXF1ZXpAaWdhbGlhLmNv
bT4KKworICAgICAgICBbR1BVUF1bR1RLXSBjb21waWxlIEdQVVByb2Nlc3MgaW4gR1RLIHBvcnQK
KyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIwODgxNAor
CisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIEVuYWJsZSBH
UFVQcm9jZXNzIGNvbXBpbGF0aW9uIGluIFdlYktpdEdUSyBhcyBhbiBleHBlcmltZW50YWwKKyAg
ICAgICAgZmVhdHVyZS4KKworICAgICAgICAqIFNvdXJjZS9jbWFrZS9PcHRpb25zR1RLLmNtYWtl
OiBzb3J0IGFscGhhYmV0aWNhbGx5IFdlYktpdAorICAgICAgICBvcHRpb25zIGZvciBHVEsgcG9y
dCBhbmQgZW5hYmxlIEdQVV9QUk9DRVNTIGlmIGV4cGVyaW1lbnRhbAorICAgICAgICBmZWF0dXJl
cyBhcmUgZW5hYmxlZC4KKwogMjAyMC0wMy0yMyAgTWljaGFlbCBDYXRhbnphcm8gIDxtY2F0YW56
YXJvQGdub21lLm9yZz4KIAogICAgICAgICBbR1RLXSBBbGxvdyBkaXN0cmlidXRvcnMgdG8gYnJh
bmQgdXNlciBhZ2VudAo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>394483</attachid>
            <date>2020-03-25 05:00:37 -0700</date>
            <delta_ts>2020-04-07 10:16:54 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-208814-20200325130035.patch</filename>
            <type>text/plain</type>
            <size>17877</size>
            <attacher name="Víctor M. Jáquez L.">vjaquez</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjU4OTc0CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L0No
YW5nZUxvZyBiL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCmluZGV4IGMxY2FiNmUzNjdhZTVkNWNk
NjE5NjRlMTRiY2JlOGRlZDE1Nzg5ZDEuLjE5MmVkNzJiNWRjODFiMjAyZmRhYTg3MjY5MTVjZGVh
MGViYmEzODkgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCisrKyBiL1NvdXJj
ZS9XZWJLaXQvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsNTcgQEAKKzIwMjAtMDMtMjUgIFbDrWN0b3Ig
TWFudWVsIErDoXF1ZXogTGVhbCAgPHZqYXF1ZXpAaWdhbGlhLmNvbT4KKworICAgICAgICBbR1BV
UF1bR1RLXSBjb21waWxlIEdQVVByb2Nlc3MgaW4gR1RLIHBvcnQKKyAgICAgICAgaHR0cHM6Ly9i
dWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIwODgxNAorCisgICAgICAgIFJldmlld2Vk
IGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIEVuYWJsZSBHUFVQcm9jZXNzIGNvbXBpbGF0
aW9uIGluIFdlYktpdEdUSyBhcyBleHBlcmltZW50YWwKKyAgICAgICAgZmVhdHVyZS4KKworICAg
ICAgICBObyBuZXcgdGVzdHMgcmVxdWlyZWQuCisKKyAgICAgICAgKiBHUFVQcm9jZXNzL0dQVUNv
bm5lY3Rpb25Ub1dlYlByb2Nlc3MuY3BwOiBndWFyZAorICAgICAgICBVc2VyTWVkaWFDYXB0dXJl
TWFuYWdlclByb3h5IGZvciBDb2NvYSBwbGF0Zm9ybSBvbmx5LgorICAgICAgICAoV2ViS2l0OjpH
UFVDb25uZWN0aW9uVG9XZWJQcm9jZXNzOjpkaXNwYXRjaE1lc3NhZ2UpOiBndWFyZAorICAgICAg
ICBtZXNzYWdlcyBmcm9tIFVzZXJNZWRpYUNhcHR1cmVNYW5hZ2VyUHJveHkgZm9yIENvY29hIHBs
YXRmb3JtLAorICAgICAgICBtb3ZpbmcgdXAgdGhpcyBndWFyZCBmcm9tIHZpZGVvIHRyYWNrIG1l
c3NhZ2VzLgorICAgICAgICAoV2ViS2l0OjpHUFVDb25uZWN0aW9uVG9XZWJQcm9jZXNzOjpzZXRP
cmllbnRhdGlvbkZvck1lZGlhQ2FwdHVyZSk6CisgICAgICAgIGd1YXJkIHRoZSBjb250ZW50IG9m
IHRoaXMgZnVuY3Rpb24gZm9yIENvY29hIHBsYXRmb3JtLCBzaW5jZSBpdCBpcworICAgICAgICBj
YWxsaW5nIGEgVXNlck1lZGlhQ2FwdHVyZU1hbmFnZXJQcm94eSBvYmplY3QuCisgICAgICAgIChX
ZWJLaXQ6OkdQVUNvbm5lY3Rpb25Ub1dlYlByb2Nlc3M6Om1lZGlhS2V5U3RvcmFnZURpcmVjdG9y
eSk6CisgICAgICAgIHJlbW92ZWQgZ3VhcmQgZm9yIHRoaXMgZnVuY3Rpb24gb2YgRU5DUllQVEVE
X01FRElBIGxlYXZpbmcgb25seQorICAgICAgICBMRUdBQ1lfRU5DUllQVEVEX01FRElBLCBzaW5j
ZSBpdCdzIHdlcmUgaXQgaXMgZGVmaW5lZC4KKyAgICAgICAgKiBHUFVQcm9jZXNzL0dQVVByb2Nl
c3MuY3BwOiBpbnN0ZWFkIG9mIGluY2x1ZGluZworICAgICAgICBNb2NrUmVhbHRpbWVNZWRpYVNv
dXJjZUNlbnRlci5oLCB3aGljaCBpdCBpcyBub3QgdXNlZCB0aGVyZSwgYWRkZWQKKyAgICAgICAg
TW9ja0F1ZGlvU2hhcmVkVW5pdC5oIHdoZXJlIGFyZSBkZWZpbmVkIHRoZSB1c2VkIHN5bWJvbHMu
CisgICAgICAgICogR1BVUHJvY2Vzcy9tZWRpYS9SZW1vdGVMZWdhY3lDRE1GYWN0b3J5UHJveHku
Y3BwOiBjaGFuZ2VkIGd1YXJkCisgICAgICAgIGZvciB0aGlzIGZpbGUgZnJvbSBFTkNSWVBURURf
TUVESUEgdG8gTEVHQUNZX0VOQ1JZUFRFRF9NRURJQSB0bworICAgICAgICBtYXRjaCB3aXRoIGl0
cyBoZWFkZXIgZmlsZS4KKyAgICAgICAgKiBHUFVQcm9jZXNzL21lZGlhL1JlbW90ZU1lZGlhUGxh
eWVyUHJveHkuY3BwOiBndWFyZAorICAgICAgICBMYXllckhvc3RpbmdDb250ZXh0IGluc3RhbmNl
cyBmb3IgQ29jb2EgcGxhdGZvcm0uCisgICAgICAgICogR1BVUHJvY2Vzcy9tZWRpYS9SZW1vdGVN
ZWRpYVBsYXllclByb3h5Lmg6IGd1YXJkCisgICAgICAgIExheWVySG9zdGluZ0NvbnRleHQncyBt
ZW1iZXIgaW5zdGFuY2VzIGZvciBDb2NvYSBwbGF0Zm9ybS4KKyAgICAgICAgKiBHUFVQcm9jZXNz
L21lZGlhL1JlbW90ZU1lZGlhUGxheWVyUHJveHkubWVzc2FnZXMuaW46IGd1YXJkCisgICAgICAg
IFByZXBhcmVGb3JQbGF5YmFjayBtZXNzYWdlIHRvIENvY29hIHBsYXRmb3JtIG9ubHksIHNpbmNl
IGl0CisgICAgICAgIHJldHVybnMgaWRzIHRoYXQgYXJlIENvY29hIHNwZWNpZmljLiBPdGhlcnMg
cG9ydHMgc2hvdWxkIGRlZmluZQorICAgICAgICBpdHMgb3duIG1lc3NhZ2UuCisgICAgICAgICog
V2ViUHJvY2Vzcy9HUFUvR1BVUHJvY2Vzc0Nvbm5lY3Rpb24uY3BwOiBndWFyZAorICAgICAgICBV
c2VyTWVkaWFDYXB0dXJlTWFuYWdlciBmb3IgQ29jb2EgcGxhdGZvcm0gb25seS4KKyAgICAgICAg
KFdlYktpdDo6R1BVUHJvY2Vzc0Nvbm5lY3Rpb246OmRpc3BhdGNoTWVzc2FnZSk6IGd1YXJkIG1l
c3NhZ2VzCisgICAgICAgIGZyb20gVXNlck1lZGlhQ2FwdHVyZU1hbmFnZXIgZm9yIENvY29hIHBs
YXRmb3JtLCBtb3ZpbmcgdXAgdGhpcworICAgICAgICBndWFyZCBhcHBsaWVkIGFsc28gZm9yIHZp
ZGVvIHRyYWNrLgorICAgICAgICAqIFdlYlByb2Nlc3MvR1BVL21lZGlhL01lZGlhUGxheWVyUHJp
dmF0ZVJlbW90ZS5jcHA6CisgICAgICAgIChXZWJLaXQ6Ok1lZGlhUGxheWVyUHJpdmF0ZVJlbW90
ZTo6cHJlcGFyZUZvclBsYXliYWNrKTogZ3VhcmQgdGhlCisgICAgICAgIGNvbnRlbnRlIG9mIHRo
aXMgZnVuY3Rpb24gc2luY2UgaXQgc3VzZXMgYSBwcmV2aW91c2x5IGd1YXJkZWQgSVBDCisgICAg
ICAgIGNhbGwuCisgICAgICAgICogV2ViUHJvY2Vzcy9HUFUvbWVkaWEvTWVkaWFQbGF5ZXJQcml2
YXRlUmVtb3RlLmg6IGd1YXJkIGluY2x1ZGUKKyAgICAgICAgb2YgTGF5ZXJIb3N0aW5nQ29udGV4
dC5oIGZvciBDb2NvYSBwbGF0Zm9ybSwgYW5kIGEgbWVtYmVyIHZhcmlhYmxlCisgICAgICAgIHdp
dGggYSB0eXBlIGRlZmluZWQgaW4gdGhhdCBoZWFkZXIuCisgICAgICAgICogV2ViUHJvY2Vzcy9H
UFUvbWVkaWEvUmVtb3RlQ0RNLmNwcDogaW5jbHVkZSBtaXNzaW5nIGhlYWRlcgorICAgICAgICBH
UFVQcm9jZXNzQ29ubmVjdGlvbi5oCisgICAgICAgICogV2ViUHJvY2Vzcy9HUFUvbWVkaWEvVmlk
ZW9MYXllclJlbW90ZS5oOiBndWFyZCB0aGUgd2hvbGUgaW5sY3VkZQorICAgICAgICBmaWxlIGZv
ciBDb2NvYSBwbGF0Zm9ybSBvbmx5LgorCiAyMDIwLTAzLTI0ICBEYW5pZWwgQmF0ZXMgIDxkYWJh
dGVzQGFwcGxlLmNvbT4KIAogICAgICAgICBVbnJldmlld2VkLCByZXZlcnRpbmcgcjI1ODk0NS4K
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvR1BVUHJvY2Vzcy9HUFVDb25uZWN0aW9uVG9XZWJQ
cm9jZXNzLmNwcCBiL1NvdXJjZS9XZWJLaXQvR1BVUHJvY2Vzcy9HUFVDb25uZWN0aW9uVG9XZWJQ
cm9jZXNzLmNwcAppbmRleCAyNmY3MzgwY2E1MjJhZmQ4NDAyYzY1MzNlOTM3Nzc1NDY1MzEzMDhi
Li40MzFjMzM5MjE2NjgwNGVjMzA4MWZiYzZjYWRhYjQ1NDEzYTQxMDA0IDEwMDY0NAotLS0gYS9T
b3VyY2UvV2ViS2l0L0dQVVByb2Nlc3MvR1BVQ29ubmVjdGlvblRvV2ViUHJvY2Vzcy5jcHAKKysr
IGIvU291cmNlL1dlYktpdC9HUFVQcm9jZXNzL0dQVUNvbm5lY3Rpb25Ub1dlYlByb2Nlc3MuY3Bw
CkBAIC03Myw3ICs3Myw3IEBACiAjaW5jbHVkZSAiUmVtb3RlQ0RNUHJveHlNZXNzYWdlcy5oIgog
I2VuZGlmCiAKLSNpZiBFTkFCTEUoTUVESUFfU1RSRUFNKQorI2lmIFBMQVRGT1JNKENPQ09BKSAm
JiBFTkFCTEUoTUVESUFfU1RSRUFNKQogI2luY2x1ZGUgIlVzZXJNZWRpYUNhcHR1cmVNYW5hZ2Vy
UHJveHkuaCIKICNpbmNsdWRlICJVc2VyTWVkaWFDYXB0dXJlTWFuYWdlclByb3h5TWVzc2FnZXMu
aCIKICNlbmRpZgpAQCAtMzY0LDcgKzM2NCw3IEBAIGJvb2wgR1BVQ29ubmVjdGlvblRvV2ViUHJv
Y2Vzczo6ZGlzcGF0Y2hNZXNzYWdlKElQQzo6Q29ubmVjdGlvbiYgY29ubmVjdGlvbiwgSVBDCiAg
ICAgICAgIHJlbW90ZU1lZGlhUmVzb3VyY2VNYW5hZ2VyKCkuZGlkUmVjZWl2ZU1lc3NhZ2UoY29u
bmVjdGlvbiwgZGVjb2Rlcik7CiAgICAgICAgIHJldHVybiB0cnVlOwogICAgIH0KLSNpZiBFTkFC
TEUoTUVESUFfU1RSRUFNKQorI2lmIFBMQVRGT1JNKENPQ09BKSAmJiBFTkFCTEUoTUVESUFfU1RS
RUFNKQogICAgIGlmIChkZWNvZGVyLm1lc3NhZ2VSZWNlaXZlck5hbWUoKSA9PSBNZXNzYWdlczo6
VXNlck1lZGlhQ2FwdHVyZU1hbmFnZXJQcm94eTo6bWVzc2FnZVJlY2VpdmVyTmFtZSgpKSB7CiAg
ICAgICAgIHVzZXJNZWRpYUNhcHR1cmVNYW5hZ2VyUHJveHkoKS5kaWRSZWNlaXZlTWVzc2FnZUZy
b21HUFVQcm9jZXNzKGNvbm5lY3Rpb24sIGRlY29kZXIpOwogICAgICAgICByZXR1cm4gdHJ1ZTsK
QEAgLTM3Nyw3ICszNzcsNyBAQCBib29sIEdQVUNvbm5lY3Rpb25Ub1dlYlByb2Nlc3M6OmRpc3Bh
dGNoTWVzc2FnZShJUEM6OkNvbm5lY3Rpb24mIGNvbm5lY3Rpb24sIElQQwogICAgICAgICBtZWRp
YVJlY29yZGVyTWFuYWdlcigpLmRpZFJlY2VpdmVSZW1vdGVNZWRpYVJlY29yZGVyTWVzc2FnZShj
b25uZWN0aW9uLCBkZWNvZGVyKTsKICAgICAgICAgcmV0dXJuIHRydWU7CiAgICAgfQotI2lmIFBM
QVRGT1JNKENPQ09BKSAmJiBFTkFCTEUoVklERU9fVFJBQ0spCisjaWYgRU5BQkxFKFZJREVPX1RS
QUNLKQogICAgIGlmIChkZWNvZGVyLm1lc3NhZ2VSZWNlaXZlck5hbWUoKSA9PSBNZXNzYWdlczo6
UmVtb3RlQXVkaW9NZWRpYVN0cmVhbVRyYWNrUmVuZGVyZXJNYW5hZ2VyOjptZXNzYWdlUmVjZWl2
ZXJOYW1lKCkpIHsKICAgICAgICAgYXVkaW9UcmFja1JlbmRlcmVyTWFuYWdlcigpLmRpZFJlY2Vp
dmVNZXNzYWdlRnJvbVdlYlByb2Nlc3MoY29ubmVjdGlvbiwgZGVjb2Rlcik7CiAgICAgICAgIHJl
dHVybiB0cnVlOwpAQCAtNDk3LDcgKzQ5Nyw3IEBAIGNvbnN0IFN0cmluZyYgR1BVQ29ubmVjdGlv
blRvV2ViUHJvY2Vzczo6bWVkaWFDYWNoZURpcmVjdG9yeSgpIGNvbnN0CiAgICAgcmV0dXJuIG1f
Z3B1UHJvY2Vzcy0+bWVkaWFDYWNoZURpcmVjdG9yeShtX3Nlc3Npb25JRCk7CiB9CiAKLSNpZiBF
TkFCTEUoRU5DUllQVEVEX01FRElBKSB8fCBFTkFCTEUoTEVHQUNZX0VOQ1JZUFRFRF9NRURJQSkK
KyNpZiBFTkFCTEUoTEVHQUNZX0VOQ1JZUFRFRF9NRURJQSkKIGNvbnN0IFN0cmluZyYgR1BVQ29u
bmVjdGlvblRvV2ViUHJvY2Vzczo6bWVkaWFLZXlzU3RvcmFnZURpcmVjdG9yeSgpIGNvbnN0CiB7
CiAgICAgcmV0dXJuIG1fZ3B1UHJvY2Vzcy0+bWVkaWFLZXlzU3RvcmFnZURpcmVjdG9yeShtX3Nl
c3Npb25JRCk7CkBAIC01MDcsNyArNTA3LDkgQEAgY29uc3QgU3RyaW5nJiBHUFVDb25uZWN0aW9u
VG9XZWJQcm9jZXNzOjptZWRpYUtleXNTdG9yYWdlRGlyZWN0b3J5KCkgY29uc3QKICNpZiBFTkFC
TEUoTUVESUFfU1RSRUFNKQogdm9pZCBHUFVDb25uZWN0aW9uVG9XZWJQcm9jZXNzOjpzZXRPcmll
bnRhdGlvbkZvck1lZGlhQ2FwdHVyZSh1aW50NjRfdCBvcmllbnRhdGlvbikKIHsKKyNpZiBQTEFU
Rk9STShDT0NPQSkKICAgICB1c2VyTWVkaWFDYXB0dXJlTWFuYWdlclByb3h5KCkuc2V0T3JpZW50
YXRpb24ob3JpZW50YXRpb24pOworI2VuZGlmCiB9CiAKIHZvaWQgR1BVQ29ubmVjdGlvblRvV2Vi
UHJvY2Vzczo6dXBkYXRlQ2FwdHVyZUFjY2Vzcyhib29sIGFsbG93QXVkaW9DYXB0dXJlLCBib29s
IGFsbG93VmlkZW9DYXB0dXJlLCBib29sIGFsbG93RGlzcGxheUNhcHR1cmUpCmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViS2l0L0dQVVByb2Nlc3MvR1BVUHJvY2Vzcy5jcHAgYi9Tb3VyY2UvV2ViS2l0
L0dQVVByb2Nlc3MvR1BVUHJvY2Vzcy5jcHAKaW5kZXggZWYyMzk1ZWM1OWY3NTU5YjE1MThiNjk2
ZWYzNjU4MjQ2YzkzZDI5Ni4uMTJmZGQ5NmM5NWMyNDAyNmI0NjkzZWNjZGUzOWQ4ODIyM2ZlM2Ew
YyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9HUFVQcm9jZXNzL0dQVVByb2Nlc3MuY3BwCisr
KyBiL1NvdXJjZS9XZWJLaXQvR1BVUHJvY2Vzcy9HUFVQcm9jZXNzLmNwcApAQCAtNTYsNyArNTYs
NyBAQAogI2VuZGlmCiAKICNpZiBFTkFCTEUoTUVESUFfU1RSRUFNKQotI2luY2x1ZGUgPFdlYkNv
cmUvTW9ja0F1ZGlvU2hhcmVkVW5pdC5oPgorI2luY2x1ZGUgPFdlYkNvcmUvTW9ja1JlYWx0aW1l
TWVkaWFTb3VyY2VDZW50ZXIuaD4KICNlbmRpZgogCiBuYW1lc3BhY2UgV2ViS2l0IHsKZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJLaXQvR1BVUHJvY2Vzcy9tZWRpYS9SZW1vdGVMZWdhY3lDRE1GYWN0
b3J5UHJveHkuY3BwIGIvU291cmNlL1dlYktpdC9HUFVQcm9jZXNzL21lZGlhL1JlbW90ZUxlZ2Fj
eUNETUZhY3RvcnlQcm94eS5jcHAKaW5kZXggMDEyZmU0ZDliZWU0NjRhNTg2NzZiMjA3NWE3ZDY3
OTE3OGJkYzBhZi4uZjVkNTA4M2M4YzA3NWZkYWVlYzdiYjc3MWI1NWE4NTE2OTJiMTViNSAxMDA2
NDQKLS0tIGEvU291cmNlL1dlYktpdC9HUFVQcm9jZXNzL21lZGlhL1JlbW90ZUxlZ2FjeUNETUZh
Y3RvcnlQcm94eS5jcHAKKysrIGIvU291cmNlL1dlYktpdC9HUFVQcm9jZXNzL21lZGlhL1JlbW90
ZUxlZ2FjeUNETUZhY3RvcnlQcm94eS5jcHAKQEAgLTI2LDcgKzI2LDcgQEAKICNpbmNsdWRlICJj
b25maWcuaCIKICNpbmNsdWRlICJSZW1vdGVMZWdhY3lDRE1GYWN0b3J5UHJveHkuaCIKIAotI2lm
IEVOQUJMRShHUFVfUFJPQ0VTUykgJiYgRU5BQkxFKEVOQ1JZUFRFRF9NRURJQSkKKyNpZiBFTkFC
TEUoR1BVX1BST0NFU1MpICYmIEVOQUJMRShMRUdBQ1lfRU5DUllQVEVEX01FRElBKQogCiAjaW5j
bHVkZSAiUmVtb3RlTGVnYWN5Q0RNUHJveHkuaCIKICNpbmNsdWRlICJSZW1vdGVMZWdhY3lDRE1Q
cm94eU1lc3NhZ2VzLmgiCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L0dQVVByb2Nlc3MvbWVk
aWEvUmVtb3RlTWVkaWFQbGF5ZXJQcm94eS5jcHAgYi9Tb3VyY2UvV2ViS2l0L0dQVVByb2Nlc3Mv
bWVkaWEvUmVtb3RlTWVkaWFQbGF5ZXJQcm94eS5jcHAKaW5kZXggZjY0MjlmMmJkMTU0MjE2NDFl
ZmRhNzY3NmQwMDM4NzlkYTcwMmNjYy4uOTk5OTI0Y2U4NDdkNGE3ZDllNjVkMWY2ZmZmZGVlNTlk
NTlkM2JmNiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9HUFVQcm9jZXNzL21lZGlhL1JlbW90
ZU1lZGlhUGxheWVyUHJveHkuY3BwCisrKyBiL1NvdXJjZS9XZWJLaXQvR1BVUHJvY2Vzcy9tZWRp
YS9SZW1vdGVNZWRpYVBsYXllclByb3h5LmNwcApAQCAtMzAsNyArMzAsNiBAQAogCiAjaW5jbHVk
ZSAiRGF0YVJlZmVyZW5jZS5oIgogI2luY2x1ZGUgIkdQVUNvbm5lY3Rpb25Ub1dlYlByb2Nlc3Mu
aCIKLSNpbmNsdWRlICJMYXllckhvc3RpbmdDb250ZXh0LmgiCiAjaW5jbHVkZSAiTWVkaWFQbGF5
ZXJQcml2YXRlUmVtb3RlTWVzc2FnZXMuaCIKICNpbmNsdWRlICJSZW1vdGVBdWRpb1RyYWNrUHJv
eHkuaCIKICNpbmNsdWRlICJSZW1vdGVMZWdhY3lDRE1GYWN0b3J5UHJveHkuaCIKQEAgLTU5LDYg
KzU4LDEwIEBACiAjaW5jbHVkZSA8V2ViQ29yZS9NZWRpYVBsYXliYWNrVGFyZ2V0TW9jay5oPgog
I2VuZGlmCiAKKyNpZiBQTEFURk9STShDT0NPQSkKKyNpbmNsdWRlICJMYXllckhvc3RpbmdDb250
ZXh0LmgiCisjZW5kaWYKKwogbmFtZXNwYWNlIFdlYktpdCB7CiAKIHVzaW5nIG5hbWVzcGFjZSBX
ZWJDb3JlOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9HUFVQcm9jZXNzL21lZGlhL1JlbW90
ZU1lZGlhUGxheWVyUHJveHkuaCBiL1NvdXJjZS9XZWJLaXQvR1BVUHJvY2Vzcy9tZWRpYS9SZW1v
dGVNZWRpYVBsYXllclByb3h5LmgKaW5kZXggZDBhN2FjMTcwZGIzNWQzYzllNzBkNjZjM2UyMzNi
NjFmYjAyODIzYi4uOWQwOTRjZGFlOWM4OTNiMThhYzQ4NTJmNDQ0OTE0YzVlZjZkYTU5OCAxMDA2
NDQKLS0tIGEvU291cmNlL1dlYktpdC9HUFVQcm9jZXNzL21lZGlhL1JlbW90ZU1lZGlhUGxheWVy
UHJveHkuaAorKysgYi9Tb3VyY2UvV2ViS2l0L0dQVVByb2Nlc3MvbWVkaWEvUmVtb3RlTWVkaWFQ
bGF5ZXJQcm94eS5oCkBAIC0yNzgsOCArMjc4LDEwIEBAIHByaXZhdGU6CiAgICAgUmVmUHRyPFNh
bmRib3hFeHRlbnNpb24+IG1fc2FuZGJveEV4dGVuc2lvbjsKICAgICBSZWY8SVBDOjpDb25uZWN0
aW9uPiBtX3dlYlByb2Nlc3NDb25uZWN0aW9uOwogICAgIFJlZlB0cjxXZWJDb3JlOjpNZWRpYVBs
YXllcj4gbV9wbGF5ZXI7CisjaWYgUExBVEZPUk0oQ09DT0EpCiAgICAgc3RkOjp1bmlxdWVfcHRy
PExheWVySG9zdGluZ0NvbnRleHQ+IG1faW5saW5lTGF5ZXJIb3N0aW5nQ29udGV4dDsKICAgICBz
dGQ6OnVuaXF1ZV9wdHI8TGF5ZXJIb3N0aW5nQ29udGV4dD4gbV9mdWxsc2NyZWVuTGF5ZXJIb3N0
aW5nQ29udGV4dDsKKyNlbmRpZgogICAgIFJlbW90ZU1lZGlhUGxheWVyTWFuYWdlclByb3h5JiBt
X21hbmFnZXI7CiAgICAgV2ViQ29yZTo6TWVkaWFQbGF5ZXJFbnVtczo6TWVkaWFFbmdpbmVJZGVu
dGlmaWVyIG1fZW5naW5lSWRlbnRpZmllcjsKICAgICBWZWN0b3I8V2ViQ29yZTo6Q29udGVudFR5
cGU+IG1fdHlwZXNSZXF1aXJpbmdIYXJkd2FyZVN1cHBvcnQ7CmRpZmYgLS1naXQgYS9Tb3VyY2Uv
V2ViS2l0L0dQVVByb2Nlc3MvbWVkaWEvUmVtb3RlTWVkaWFQbGF5ZXJQcm94eS5tZXNzYWdlcy5p
biBiL1NvdXJjZS9XZWJLaXQvR1BVUHJvY2Vzcy9tZWRpYS9SZW1vdGVNZWRpYVBsYXllclByb3h5
Lm1lc3NhZ2VzLmluCmluZGV4IGIwMjJmNTZlNTAyODE4OTMzYjI3MTc5Y2FiMzI3NmVlOTU3N2Yy
NTguLmVlZmI4Y2QxNDQyNzY3M2QyZWMwYmJmY2QwZTY3MjZmYzhhMDE1MjMgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9XZWJLaXQvR1BVUHJvY2Vzcy9tZWRpYS9SZW1vdGVNZWRpYVBsYXllclByb3h5Lm1l
c3NhZ2VzLmluCisrKyBiL1NvdXJjZS9XZWJLaXQvR1BVUHJvY2Vzcy9tZWRpYS9SZW1vdGVNZWRp
YVBsYXllclByb3h5Lm1lc3NhZ2VzLmluCkBAIC0yNCw3ICsyNCw5IEBACiAjaWYgRU5BQkxFKEdQ
VV9QUk9DRVNTKQogCiBtZXNzYWdlcyAtPiBSZW1vdGVNZWRpYVBsYXllclByb3h5IE5vdFJlZkNv
dW50ZWQgeworI2lmIFBMQVRGT1JNKENPQ09BKQogICAgIFByZXBhcmVGb3JQbGF5YmFjayhib29s
IHByaXZhdGVNb2RlLCBlbnVtOnVpbnQ4X3QgV2ViQ29yZTo6TWVkaWFQbGF5ZXJFbnVtczo6UHJl
bG9hZCBwcmVsb2FkLCBib29sIHByZXNlcnZlc1BpdGNoLCBib29sIHByZXBhcmVGb3JSZW5kZXJp
bmcsIGZsb2F0IHZpZGVvQ29udGVudFNjYWxlKSAtPiAoT3B0aW9uYWw8V2ViS2l0OjpMYXllckhv
c3RpbmdDb250ZXh0SUQ+IGlubGluZUxheWVySG9zdGluZ0NvbnRleHRJZCwgT3B0aW9uYWw8V2Vi
S2l0OjpMYXllckhvc3RpbmdDb250ZXh0SUQ+IGZ1bGxzY3JlZW5MYXllckhvc3RpbmdDb250ZXh0
SWQpIEFzeW5jCisjZW5kaWYKIAogICAgIExvYWQoVVJMIHVybCwgT3B0aW9uYWw8V2ViS2l0OjpT
YW5kYm94RXh0ZW5zaW9uOjpIYW5kbGU+IHNhbmRib3hFeHRlbnNpb24sIFdlYkNvcmU6OkNvbnRl
bnRUeXBlIGNvbnRlbnRUeXBlLCBTdHJpbmcga2V5U3lzdGVtKSAtPiAoc3RydWN0IFdlYktpdDo6
UmVtb3RlTWVkaWFQbGF5ZXJDb25maWd1cmF0aW9uIHBsYXllckNvbmZpZ3VyYXRpb24pIEFzeW5j
CiAgICAgQ2FuY2VsTG9hZCgpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3Mv
R1BVL0dQVVByb2Nlc3NDb25uZWN0aW9uLmNwcCBiL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9H
UFUvR1BVUHJvY2Vzc0Nvbm5lY3Rpb24uY3BwCmluZGV4IGRkODVkMTdhNDYwMWMxMjY1Yjg4ODVm
Yzk5NDg1MjAwMjIwMTBiMGUuLmRiZTU4MTk5ZTQ3YzZhNmU1MGIxOTAxYTViM2UyYzNiZWRlMTIw
MjEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9HUFUvR1BVUHJvY2Vzc0Nv
bm5lY3Rpb24uY3BwCisrKyBiL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9HUFUvR1BVUHJvY2Vz
c0Nvbm5lY3Rpb24uY3BwCkBAIC01MCw3ICs1MCw3IEBACiAjaW5jbHVkZSAiUmVtb3RlQ0RNSW5z
dGFuY2VTZXNzaW9uTWVzc2FnZXMuaCIKICNlbmRpZgogCi0jaWYgRU5BQkxFKE1FRElBX1NUUkVB
TSkKKyNpZiBQTEFURk9STShDT0NPQSkgJiYgRU5BQkxFKE1FRElBX1NUUkVBTSkKICNpbmNsdWRl
ICJVc2VyTWVkaWFDYXB0dXJlTWFuYWdlci5oIgogI2luY2x1ZGUgIlVzZXJNZWRpYUNhcHR1cmVN
YW5hZ2VyTWVzc2FnZXMuaCIKICNlbmRpZgpAQCAtMTEyLDE5ICsxMTIsMTkgQEAgYm9vbCBHUFVQ
cm9jZXNzQ29ubmVjdGlvbjo6ZGlzcGF0Y2hNZXNzYWdlKElQQzo6Q29ubmVjdGlvbiYgY29ubmVj
dGlvbiwgSVBDOjpEZWMKICAgICAgICAgcmV0dXJuIHRydWU7CiAgICAgfQogCi0jaWYgRU5BQkxF
KE1FRElBX1NUUkVBTSkKKyNpZiBQTEFURk9STShDT0NPQSkgJiYgRU5BQkxFKE1FRElBX1NUUkVB
TSkKICAgICBpZiAoZGVjb2Rlci5tZXNzYWdlUmVjZWl2ZXJOYW1lKCkgPT0gTWVzc2FnZXM6OlVz
ZXJNZWRpYUNhcHR1cmVNYW5hZ2VyOjptZXNzYWdlUmVjZWl2ZXJOYW1lKCkpIHsKICAgICAgICAg
aWYgKGF1dG8qIGNhcHR1cmVNYW5hZ2VyID0gV2ViUHJvY2Vzczo6c2luZ2xldG9uKCkuc3VwcGxl
bWVudDxVc2VyTWVkaWFDYXB0dXJlTWFuYWdlcj4oKSkKICAgICAgICAgICAgIGNhcHR1cmVNYW5h
Z2VyLT5kaWRSZWNlaXZlTWVzc2FnZUZyb21HUFVQcm9jZXNzKGNvbm5lY3Rpb24sIGRlY29kZXIp
OwogICAgICAgICByZXR1cm4gdHJ1ZTsKICAgICB9Ci0jaWYgUExBVEZPUk0oQ09DT0EpICYmIEVO
QUJMRShWSURFT19UUkFDSykKKyNpZiBFTkFCTEUoVklERU9fVFJBQ0spCiAgICAgaWYgKGRlY29k
ZXIubWVzc2FnZVJlY2VpdmVyTmFtZSgpID09IE1lc3NhZ2VzOjpTYW1wbGVCdWZmZXJEaXNwbGF5
TGF5ZXI6Om1lc3NhZ2VSZWNlaXZlck5hbWUoKSkgewogICAgICAgICBzYW1wbGVCdWZmZXJEaXNw
bGF5TGF5ZXJNYW5hZ2VyKCkuZGlkUmVjZWl2ZUxheWVyTWVzc2FnZShjb25uZWN0aW9uLCBkZWNv
ZGVyKTsKICAgICAgICAgcmV0dXJuIHRydWU7CiAgICAgfQotI2VuZGlmIC8vIFBMQVRGT1JNKENP
Q09BKSAmJiBFTkFCTEUoVklERU9fVFJBQ0spCi0jZW5kaWYgLy8gRU5BQkxFKE1FRElBX1NUUkVB
TSkKKyNlbmRpZiAvLyBFTkFCTEUoVklERU9fVFJBQ0spCisjZW5kaWYgLy8gUExBVEZPUk0oQ09D
T0EpICYmIEVOQUJMRShNRURJQV9TVFJFQU0pCiAjaWYgVVNFKExJQldFQlJUQykgJiYgUExBVEZP
Uk0oQ09DT0EpCiAgICAgaWYgKGRlY29kZXIubWVzc2FnZVJlY2VpdmVyTmFtZSgpID09IE1lc3Nh
Z2VzOjpMaWJXZWJSVENDb2RlY3M6Om1lc3NhZ2VSZWNlaXZlck5hbWUoKSkgewogICAgICAgICBX
ZWJQcm9jZXNzOjpzaW5nbGV0b24oKS5saWJXZWJSVENDb2RlY3MoKS5kaWRSZWNlaXZlTWVzc2Fn
ZShjb25uZWN0aW9uLCBkZWNvZGVyKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvV2ViUHJv
Y2Vzcy9HUFUvbWVkaWEvTWVkaWFQbGF5ZXJQcml2YXRlUmVtb3RlLmNwcCBiL1NvdXJjZS9XZWJL
aXQvV2ViUHJvY2Vzcy9HUFUvbWVkaWEvTWVkaWFQbGF5ZXJQcml2YXRlUmVtb3RlLmNwcAppbmRl
eCA2ODhjNDcxZWM4Mjc3MGNhZmIyYWEwOWNjOTg4ZGUwMGNlODljYWJmLi4yYmQ0MWNmOTQ0NWYx
OTg0MDkyYzAwNGY3ZWEzNjg3MWQ2ZDRkZGUxIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1dl
YlByb2Nlc3MvR1BVL21lZGlhL01lZGlhUGxheWVyUHJpdmF0ZVJlbW90ZS5jcHAKKysrIGIvU291
cmNlL1dlYktpdC9XZWJQcm9jZXNzL0dQVS9tZWRpYS9NZWRpYVBsYXllclByaXZhdGVSZW1vdGUu
Y3BwCkBAIC0xMTksNiArMTE5LDcgQEAgTWVkaWFQbGF5ZXJQcml2YXRlUmVtb3RlOjp+TWVkaWFQ
bGF5ZXJQcml2YXRlUmVtb3RlKCkKIAogdm9pZCBNZWRpYVBsYXllclByaXZhdGVSZW1vdGU6OnBy
ZXBhcmVGb3JQbGF5YmFjayhib29sIHByaXZhdGVNb2RlLCBNZWRpYVBsYXllcjo6UHJlbG9hZCBw
cmVsb2FkLCBib29sIHByZXNlcnZlc1BpdGNoLCBib29sIHByZXBhcmUpCiB7CisjaWYgUExBVEZP
Uk0oQ09DT0EpCiAgICAgYXV0byBzY2FsZSA9IG1fcGxheWVyLT5wbGF5ZXJDb250ZW50c1NjYWxl
KCk7CiAKICAgICBjb25uZWN0aW9uKCkuc2VuZFdpdGhBc3luY1JlcGx5KE1lc3NhZ2VzOjpSZW1v
dGVNZWRpYVBsYXllclByb3h5OjpQcmVwYXJlRm9yUGxheWJhY2socHJpdmF0ZU1vZGUsIHByZWxv
YWQsIHByZXNlcnZlc1BpdGNoLCBwcmVwYXJlLCBzY2FsZSksIFt3ZWFrVGhpcyA9IG1ha2VXZWFr
UHRyKCp0aGlzKSwgdGhpc10oYXV0byBpbmxpbmVMYXllckhvc3RpbmdDb250ZXh0SWQsIGF1dG8g
ZnVsbHNjcmVlbkxheWVySG9zdGluZ0NvbnRleHRJZCkgbXV0YWJsZSB7CkBAIC0xMzIsNiArMTMz
LDcgQEAgdm9pZCBNZWRpYVBsYXllclByaXZhdGVSZW1vdGU6OnByZXBhcmVGb3JQbGF5YmFjayhi
b29sIHByaXZhdGVNb2RlLCBNZWRpYVBsYXllcjoKIAogICAgICAgICBtX2Z1bGxzY3JlZW5MYXll
ckhvc3RpbmdDb250ZXh0SWQgPSBmdWxsc2NyZWVuTGF5ZXJIb3N0aW5nQ29udGV4dElkOwogICAg
IH0sIG1faWQpOworI2VuZGlmCiB9CiAKIHZvaWQgTWVkaWFQbGF5ZXJQcml2YXRlUmVtb3RlOjpN
ZWRpYVBsYXllclByaXZhdGVSZW1vdGU6OmxvYWQoY29uc3QgVVJMJiB1cmwsIGNvbnN0IENvbnRl
bnRUeXBlJiBjb250ZW50VHlwZSwgY29uc3QgU3RyaW5nJiBrZXlTeXN0ZW0pCmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvR1BVL21lZGlhL01lZGlhUGxheWVyUHJpdmF0ZVJl
bW90ZS5oIGIvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL0dQVS9tZWRpYS9NZWRpYVBsYXllclBy
aXZhdGVSZW1vdGUuaAppbmRleCA3ZWM4YjhlYTIxZWM5N2E0NDcwMGFhNmQ2MjU1ZGViMDMyYjRm
YWY0Li40OWI0MTVlYzYxYmNjZmU0ZTM2OGFlYzU3NTNlMDQ1MjliY2JlZDJlIDEwMDY0NAotLS0g
YS9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvR1BVL21lZGlhL01lZGlhUGxheWVyUHJpdmF0ZVJl
bW90ZS5oCisrKyBiL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9HUFUvbWVkaWEvTWVkaWFQbGF5
ZXJQcml2YXRlUmVtb3RlLmgKQEAgLTI3LDcgKzI3LDYgQEAKIAogI2lmIEVOQUJMRShHUFVfUFJP
Q0VTUykKIAotI2luY2x1ZGUgIkxheWVySG9zdGluZ0NvbnRleHQuaCIKICNpbmNsdWRlICJSZW1v
dGVNZWRpYVBsYXllckNvbmZpZ3VyYXRpb24uaCIKICNpbmNsdWRlICJSZW1vdGVNZWRpYVBsYXll
ck1hbmFnZXIuaCIKICNpbmNsdWRlICJSZW1vdGVNZWRpYVBsYXllclN0YXRlLmgiCkBAIC00MCw2
ICszOSwxMCBAQAogI2luY2x1ZGUgPHd0Zi9NZWRpYVRpbWUuaD4KICNpbmNsdWRlIDx3dGYvV2Vh
a1B0ci5oPgogCisjaWYgUExBVEZPUk0oQ09DT0EpCisjaW5jbHVkZSAiTGF5ZXJIb3N0aW5nQ29u
dGV4dC5oIgorI2VuZGlmCisKIG5hbWVzcGFjZSBXVEYgewogY2xhc3MgTWFjaFNlbmRSaWdodDsK
IH0KQEAgLTM1OSw3ICszNjIsOSBAQCBwcml2YXRlOgogICAgIFJlZlB0cjxXZWJDb3JlOjpQbGF0
Zm9ybU1lZGlhUmVzb3VyY2VMb2FkZXI+IG1fbWVkaWFSZXNvdXJjZUxvYWRlcjsKICAgICBQbGF0
Zm9ybUxheWVyQ29udGFpbmVyIG1fdmlkZW9JbmxpbmVMYXllcjsKICAgICBQbGF0Zm9ybUxheWVy
Q29udGFpbmVyIG1fdmlkZW9GdWxsc2NyZWVuTGF5ZXI7CisjaWYgUExBVEZPUk0oQ09DT0EpCiAg
ICAgT3B0aW9uYWw8TGF5ZXJIb3N0aW5nQ29udGV4dElEPiBtX2Z1bGxzY3JlZW5MYXllckhvc3Rp
bmdDb250ZXh0SWQ7CisjZW5kaWYKICAgICBSZW1vdGVNZWRpYVBsYXllck1hbmFnZXImIG1fbWFu
YWdlcjsKICAgICBXZWJDb3JlOjpNZWRpYVBsYXllckVudW1zOjpNZWRpYUVuZ2luZUlkZW50aWZp
ZXIgbV9yZW1vdGVFbmdpbmVJZGVudGlmaWVyOwogICAgIE1lZGlhUGxheWVyUHJpdmF0ZVJlbW90
ZUlkZW50aWZpZXIgbV9pZDsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9H
UFUvbWVkaWEvUmVtb3RlQ0RNLmNwcCBiL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9HUFUvbWVk
aWEvUmVtb3RlQ0RNLmNwcAppbmRleCAwYzkxYjQwZjNiOWM3NWIzYzExMGI2MzZmNjhjYTU3MDVh
MjViNTQ4Li40OWZkMzhkMTgyZTJmOTE1NjMzZmE0MGIzYTE4YTRmNGE1NzlkZTNlIDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvR1BVL21lZGlhL1JlbW90ZUNETS5jcHAKKysr
IGIvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL0dQVS9tZWRpYS9SZW1vdGVDRE0uY3BwCkBAIC0y
OSw2ICsyOSw3IEBACiAjaWYgRU5BQkxFKEdQVV9QUk9DRVNTKSAmJiBFTkFCTEUoRU5DUllQVEVE
X01FRElBKQogCiAjaW5jbHVkZSAiRGF0YVJlZmVyZW5jZS5oIgorI2luY2x1ZGUgIkdQVVByb2Nl
c3NDb25uZWN0aW9uLmgiCiAjaW5jbHVkZSAiUmVtb3RlQ0RNSW5zdGFuY2UuaCIKICNpbmNsdWRl
ICJSZW1vdGVDRE1JbnN0YW5jZUNvbmZpZ3VyYXRpb24uaCIKICNpbmNsdWRlICJSZW1vdGVDRE1J
bnN0YW5jZUlkZW50aWZpZXIuaCIKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vz
cy9HUFUvbWVkaWEvVmlkZW9MYXllclJlbW90ZS5oIGIvU291cmNlL1dlYktpdC9XZWJQcm9jZXNz
L0dQVS9tZWRpYS9WaWRlb0xheWVyUmVtb3RlLmgKaW5kZXggOTk2YjNmNTYwNDNhNTk5ZDczNmZk
NDA5NDNiOWFhOWJiMmQwYTdhOS4uOWU5OTgwN2RmNGRiNjRjYTlkNjMwNGNjMThhMDYxMzIyMDFm
YjJkZCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL0dQVS9tZWRpYS9WaWRl
b0xheWVyUmVtb3RlLmgKKysrIGIvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL0dQVS9tZWRpYS9W
aWRlb0xheWVyUmVtb3RlLmgKQEAgLTI1LDcgKzI1LDcgQEAKIAogI3ByYWdtYSBvbmNlCiAKLSNp
ZiBFTkFCTEUoR1BVX1BST0NFU1MpCisjaWYgUExBVEZPUk0oQ09DT0EpICYmIEVOQUJMRShHUFVf
UFJPQ0VTUykKIAogI2luY2x1ZGUgIkxheWVySG9zdGluZ0NvbnRleHQuaCIKICNpbmNsdWRlIDxX
ZWJDb3JlL1BsYXRmb3JtTGF5ZXIuaD4KZGlmZiAtLWdpdCBhL1NvdXJjZS9jbWFrZS9PcHRpb25z
R1RLLmNtYWtlIGIvU291cmNlL2NtYWtlL09wdGlvbnNHVEsuY21ha2UKaW5kZXggNGY0MDM0Njdm
Nzk1ZjBmNjY4NzFkM2Q5MTcxY2QzODE5Y2E0OTk1Yi4uOGU0ZmRhODM2ZDlmMjZmMGNlNWI2ZWFm
NTEyYWFmNzE0OGQyY2M1ZCAxMDA2NDQKLS0tIGEvU291cmNlL2NtYWtlL09wdGlvbnNHVEsuY21h
a2UKKysrIGIvU291cmNlL2NtYWtlL09wdGlvbnNHVEsuY21ha2UKQEAgLTE1NywxMiArMTU3LDE2
IEBAIFdFQktJVF9PUFRJT05fREVGQVVMVF9QT1JUX1ZBTFVFKEVOQUJMRV9XRUJEUklWRVIgUFVC
TElDIE9OKQogIyBDaGFuZ2luZyB0aGVzZSBvcHRpb25zIGlzIGNvbXBsZXRlbHkgdW5zdXBwb3J0
ZWQuCiBXRUJLSVRfT1BUSU9OX0RFRkFVTFRfUE9SVF9WQUxVRShFTkFCTEVfQVVUT0NBUElUQUxJ
WkUgUFJJVkFURSBPTikKIFdFQktJVF9PUFRJT05fREVGQVVMVF9QT1JUX1ZBTFVFKEVOQUJMRV9D
T05URU5UX0VYVEVOU0lPTlMgUFJJVkFURSBPTikKK1dFQktJVF9PUFRJT05fREVGQVVMVF9QT1JU
X1ZBTFVFKEVOQUJMRV9DU1NfQ09OSUNfR1JBRElFTlRTIFBSSVZBVEUgT04pCitXRUJLSVRfT1BU
SU9OX0RFRkFVTFRfUE9SVF9WQUxVRShFTkFCTEVfQ1NTX1BBSU5USU5HX0FQSSBQUklWQVRFICR7
RU5BQkxFX0VYUEVSSU1FTlRBTF9GRUFUVVJFU30pCitXRUJLSVRfT1BUSU9OX0RFRkFVTFRfUE9S
VF9WQUxVRShFTkFCTEVfQ1NTX1RZUEVEX09NIFBSSVZBVEUgJHtFTkFCTEVfRVhQRVJJTUVOVEFM
X0ZFQVRVUkVTfSkKIFdFQktJVF9PUFRJT05fREVGQVVMVF9QT1JUX1ZBTFVFKEVOQUJMRV9DVVJT
T1JfVklTSUJJTElUWSBQUklWQVRFIE9OKQogV0VCS0lUX09QVElPTl9ERUZBVUxUX1BPUlRfVkFM
VUUoRU5BQkxFX0RBUktfTU9ERV9DU1MgUFJJVkFURSBPTikKIFdFQktJVF9PUFRJT05fREVGQVVM
VF9QT1JUX1ZBTFVFKEVOQUJMRV9EQVRBTElTVF9FTEVNRU5UIFBSSVZBVEUgT04pCiBXRUJLSVRf
T1BUSU9OX0RFRkFVTFRfUE9SVF9WQUxVRShFTkFCTEVfRE9XTkxPQURfQVRUUklCVVRFIFBSSVZB
VEUgT04pCiBXRUJLSVRfT1BUSU9OX0RFRkFVTFRfUE9SVF9WQUxVRShFTkFCTEVfRU5DUllQVEVE
X01FRElBIFBSSVZBVEUgJHtFTkFCTEVfRVhQRVJJTUVOVEFMX0ZFQVRVUkVTfSkKIFdFQktJVF9P
UFRJT05fREVGQVVMVF9QT1JUX1ZBTFVFKEVOQUJMRV9GVFBESVIgUFJJVkFURSBPRkYpCitXRUJL
SVRfT1BUSU9OX0RFRkFVTFRfUE9SVF9WQUxVRShFTkFCTEVfR1BVX1BST0NFU1MgUFJJVkFURSAk
e0VOQUJMRV9FWFBFUklNRU5UQUxfRkVBVFVSRVN9KQogV0VCS0lUX09QVElPTl9ERUZBVUxUX1BP
UlRfVkFMVUUoRU5BQkxFX0lOUFVUX1RZUEVfQ09MT1IgUFJJVkFURSBPTikKIFdFQktJVF9PUFRJ
T05fREVGQVVMVF9QT1JUX1ZBTFVFKEVOQUJMRV9MQVlPVVRfRk9STUFUVElOR19DT05URVhUIFBS
SVZBVEUgJHtFTkFCTEVfRVhQRVJJTUVOVEFMX0ZFQVRVUkVTfSkKIFdFQktJVF9PUFRJT05fREVG
QVVMVF9QT1JUX1ZBTFVFKEVOQUJMRV9NRURJQV9TVFJFQU0gUFJJVkFURSAke0VOQUJMRV9FWFBF
UklNRU5UQUxfRkVBVFVSRVN9KQpAQCAtMTc0LDkgKzE3OCw2IEBAIFdFQktJVF9PUFRJT05fREVG
QVVMVF9QT1JUX1ZBTFVFKEVOQUJMRV9QT0lOVEVSX0xPQ0sgUFJJVkFURSBPTikKIFdFQktJVF9P
UFRJT05fREVGQVVMVF9QT1JUX1ZBTFVFKEVOQUJMRV9TRVJWSUNFX1dPUktFUiBQUklWQVRFIE9O
KQogV0VCS0lUX09QVElPTl9ERUZBVUxUX1BPUlRfVkFMVUUoRU5BQkxFX1NIQVJFQUJMRV9SRVNP
VVJDRSBQVUJMSUMgT04pCiBXRUJLSVRfT1BUSU9OX0RFRkFVTFRfUE9SVF9WQUxVRShFTkFCTEVf
V0VCX1JUQyBQUklWQVRFICR7RU5BQkxFX0VYUEVSSU1FTlRBTF9GRUFUVVJFU30pCi1XRUJLSVRf
T1BUSU9OX0RFRkFVTFRfUE9SVF9WQUxVRShFTkFCTEVfQ1NTX1BBSU5USU5HX0FQSSBQUklWQVRF
ICR7RU5BQkxFX0VYUEVSSU1FTlRBTF9GRUFUVVJFU30pCi1XRUJLSVRfT1BUSU9OX0RFRkFVTFRf
UE9SVF9WQUxVRShFTkFCTEVfQ1NTX1RZUEVEX09NIFBSSVZBVEUgJHtFTkFCTEVfRVhQRVJJTUVO
VEFMX0ZFQVRVUkVTfSkKLVdFQktJVF9PUFRJT05fREVGQVVMVF9QT1JUX1ZBTFVFKEVOQUJMRV9D
U1NfQ09OSUNfR1JBRElFTlRTIFBSSVZBVEUgT04pCiAKIGluY2x1ZGUoR1N0cmVhbWVyRGVwZW5k
ZW5jaWVzKQogCmRpZmYgLS1naXQgYS9DaGFuZ2VMb2cgYi9DaGFuZ2VMb2cKaW5kZXggNmFiZTA0
ZGY4OGIyOWUwOTdhYTgxNTc0MWJkMjRjZGJiNmM4NTViYS4uMDhiNGM0MmRkNzNkYjU4NGM5ZmZl
ZWI5NDU3OGQwOGU0MTY2MWViOCAxMDA2NDQKLS0tIGEvQ2hhbmdlTG9nCisrKyBiL0NoYW5nZUxv
ZwpAQCAtMSwzICsxLDE3IEBACisyMDIwLTAzLTI1ICBWw61jdG9yIE1hbnVlbCBKw6FxdWV6IExl
YWwgIDx2amFxdWV6QGlnYWxpYS5jb20+CisKKyAgICAgICAgW0dQVVBdW0dUS10gY29tcGlsZSBH
UFVQcm9jZXNzIGluIEdUSyBwb3J0CisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3No
b3dfYnVnLmNnaT9pZD0yMDg4MTQKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMh
KS4KKworICAgICAgICBFbmFibGUgR1BVUHJvY2VzcyBjb21waWxhdGlvbiBpbiBXZWJLaXRHVEsg
YXMgYW4gZXhwZXJpbWVudGFsCisgICAgICAgIGZlYXR1cmUuCisKKyAgICAgICAgKiBTb3VyY2Uv
Y21ha2UvT3B0aW9uc0dUSy5jbWFrZTogc29ydCBhbHBoYWJldGljYWxseSBXZWJLaXQKKyAgICAg
ICAgb3B0aW9ucyBmb3IgR1RLIHBvcnQgYW5kIGVuYWJsZSBHUFVfUFJPQ0VTUyBpZiBleHBlcmlt
ZW50YWwKKyAgICAgICAgZmVhdHVyZXMgYXJlIGVuYWJsZWQuCisKIDIwMjAtMDMtMjMgIE1pY2hh
ZWwgQ2F0YW56YXJvICA8bWNhdGFuemFyb0Bnbm9tZS5vcmc+CiAKICAgICAgICAgW0dUS10gQWxs
b3cgZGlzdHJpYnV0b3JzIHRvIGJyYW5kIHVzZXIgYWdlbnQK
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>395701</attachid>
            <date>2020-04-07 10:17:27 -0700</date>
            <delta_ts>2020-04-07 10:40:46 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-208814-20200407191724.patch</filename>
            <type>text/plain</type>
            <size>27530</size>
            <attacher name="Víctor M. Jáquez L.">vjaquez</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjU5NjMxCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L0No
YW5nZUxvZyBiL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCmluZGV4IGM2MDlmNzM3ZDQwYjE2NzEy
ZmY5Zjk4NzMzMWI2Y2I3OWE3NDQxNmEuLmRmOGVhNmMwY2JhOGMwZjA3ZjFlNmEwMzVkMTIwZjA0
MDZjNzU5N2YgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCisrKyBiL1NvdXJj
ZS9XZWJLaXQvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsNzggQEAKKzIwMjAtMDQtMDcgIFbDrWN0b3Ig
TWFudWVsIErDoXF1ZXogTGVhbCAgPHZqYXF1ZXpAaWdhbGlhLmNvbT4KKworICAgICAgICBbR1BV
UF1bR1RLXSBjb21waWxlIEdQVVByb2Nlc3MgaW4gR1RLIHBvcnQKKyAgICAgICAgaHR0cHM6Ly9i
dWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIwODgxNAorCisgICAgICAgIFJldmlld2Vk
IGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIEVuYWJsZSBHUFVQcm9jZXNzIGNvbXBpbGF0
aW9uIGluIFdlYktpdEdUSyBhcyBhbiBleHBlcmltZW50YWwKKyAgICAgICAgZmVhdHVyZQorCisg
ICAgICAgIE5vIG5ldyB0ZXN0cyByZXF1aXJlZC4KKworICAgICAgICAqIEdQVVByb2Nlc3MvR1BV
Q29ubmVjdGlvblRvV2ViUHJvY2Vzcy5jcHA6IGd1YXJkCisgICAgICAgIFVzZXJNZWRpYUNhcHR1
cmVNYW5hZ2VyUHJveHkgZm9yIENvY29hIHBsYXRmb3JtIG9ubHkuCisgICAgICAgIChXZWJLaXQ6
OkdQVUNvbm5lY3Rpb25Ub1dlYlByb2Nlc3M6OmRpc3BhdGNoTWVzc2FnZSk6IGd1YXJkCisgICAg
ICAgIG1lc3NhZ2VzIGZyb20gVXNlck1lZGlhQ2FwdHVyZU1hbmFnZXJQcm94eSBmb3IgQ29jb2Eg
cGxhdGZvcm0sCisgICAgICAgIG1vdmluZyB1cCB0aGlzIGd1YXJkIGZyb20gdmlkZW8gdHJhY2sg
bWVzc2FnZXMuCisgICAgICAgIChXZWJLaXQ6OkdQVUNvbm5lY3Rpb25Ub1dlYlByb2Nlc3M6Om1l
ZGlhS2V5U3RvcmFnZURpcmVjdG9yeSk6CisgICAgICAgIHJlbW92ZWQgZ3VhcmQgZm9yIHRoaXMg
ZnVuY3Rpb24gb2YgRU5DUllQVEVEX01FRElBIGxlYXZpbmcgb25seQorICAgICAgICBMRUdBQ1lf
RU5DUllQVEVEX01FRElBLCBzaW5jZSBpdCdzIHdlcmUgaXQgaXMgZGVmaW5lZC4KKyAgICAgICAg
KFdlYktpdDo6R1BVQ29ubmVjdGlvblRvV2ViUHJvY2Vzczo6c2V0T3JpZW50YXRpb25Gb3JNZWRp
YUNhcHR1cmUpOgorICAgICAgICBndWFyZCB0aGUgY29udGVudCBvZiB0aGlzIGZ1bmN0aW9uIGZv
ciBDb2NvYSBwbGF0Zm9ybSwgc2luY2UgaXQgaXMKKyAgICAgICAgY2FsbGluZyBhIFVzZXJNZWRp
YUNhcHR1cmVNYW5hZ2VyUHJveHkgb2JqZWN0LgorICAgICAgICAqIEdQVVByb2Nlc3MvR1BVUHJv
Y2Vzcy5jcHA6IFJlcGxhY2UgdGhlIGluY2x1ZGVkIGhlYWRlciB0byBtYXRjaAorICAgICAgICB3
aXRoIHRoZSB1c2VkIHN5bWJvbHMgaW4gZmlsZS4KKyAgICAgICAgKiBHUFVQcm9jZXNzL2dzdHJl
YW1lci9HUFVQcm9jZXNzR1N0cmVhbWVyLmNwcDogTmV3IGZpbGUgd2l0aAorICAgICAgICBtb2Nr
dXAgaW1wbGVtZW50YXRpb24uCisgICAgICAgIChXZWJLaXQ6OkdQVVByb2Nlc3M6OmluaXRpYWxp
emVQcm9jZXNzKTogRW1wdHkgZnVuY3Rpb24uCisgICAgICAgIChXZWJLaXQ6OkdQVVByb2Nlc3M6
OmluaXRpYWxpemVQcm9jZXNzTmFtZSk6IEVtcHR5IGZ1bmN0aW9uLgorICAgICAgICAoV2ViS2l0
OjpHUFVQcm9jZXNzOjppbml0aWFsaXplU2FuZGJveCk6IEVtcHR5IGZ1bmN0aW9uLgorICAgICAg
ICAqIEdQVVByb2Nlc3MvZ3N0cmVhbWVyL0dQVVByb2Nlc3NNYWluR1N0cmVhbWVyLmNwcDogTmV3
IGZpbGUgd2l0aAorICAgICAgICBtb2NrdXAgaW1wbGVtZW50YXRpb24uCisgICAgICAgIChXZWJL
aXQ6OmluaXRpYWxpemVBdXhpbGlhcnlQcm9jZXNzPEdQVVByb2Nlc3M+KTogTmV3IGZ1bmN0aW9u
LgorICAgICAgICAoV2ViS2l0OjpHUFVQcm9jZXNzTWFpbik6IE5ldyBmdW5jdGlvbi4KKyAgICAg
ICAgKiBHUFVQcm9jZXNzL21lZGlhL1JlbW90ZUxlZ2FjeUNETUZhY3RvcnlQcm94eS5jcHA6IGNo
YW5nZWQgZ3VhcmQKKyAgICAgICAgZm9yIHRoaXMgZmlsZSBmcm9tIEVOQ1JZUFRFRF9NRURJQSB0
byBMRUdBQ1lfRU5DUllQVEVEX01FRElBIHRvCisgICAgICAgIG1hdGNoIHdpdGggaXRzIGhlYWRl
ciBmaWxlLgorICAgICAgICAqIEdQVVByb2Nlc3MvbWVkaWEvUmVtb3RlTWVkaWFQbGF5ZXJQcm94
eS5jcHA6IGd1YXJkCisgICAgICAgIExheWVySG9zdGluZ0NvbnRleHQgaW5zdGFuY2VzIGZvciBD
b2NvYSBwbGF0Zm9ybS4KKyAgICAgICAgKiBHUFVQcm9jZXNzL21lZGlhL1JlbW90ZU1lZGlhUGxh
eWVyUHJveHkuaDogZ3VhcmQKKyAgICAgICAgTGF5ZXJIb3N0aW5nQ29udGV4dCdzIG1lbWJlciBp
bnN0YW5jZXMgZm9yIENvY29hIHBsYXRmb3JtLgorICAgICAgICAqIEdQVVByb2Nlc3MvbWVkaWEv
UmVtb3RlTWVkaWFQbGF5ZXJQcm94eS5tZXNzYWdlcy5pbjogZ3VhcmQKKyAgICAgICAgUHJlcGFy
ZUZvclBsYXliYWNrIG1lc3NhZ2UgdG8gQ29jb2EgcGxhdGZvcm0gb25seSwgc2luY2UgaXQKKyAg
ICAgICAgcmV0dXJucyBpZHMgdGhhdCBhcmUgQ29jb2Egc3BlY2lmaWMuIE90aGVycyBwb3J0cyBz
aG91bGQgZGVmaW5lCisgICAgICAgIGl0cyBvd24gbWVzc2FnZS4KKyAgICAgICAgKiBHUFVQcm9j
ZXNzL21lZGlhL2dzdHJlYW1lci9SZW1vdGVNZWRpYVBsYXllclByb3h5R1N0cmVhbWVyLmNwcDoK
KyAgICAgICAgTmV3IGZpbGUgd2l0aCBtb2NrdXAgaW1wbGVtZW50YXRpb24uCisgICAgICAgIChX
ZWJLaXQ6OlJlbW90ZU1lZGlhUGxheWVyUHJveHk6Om1lZGlhUGxheWVyRmlyc3RWaWRlb0ZyYW1l
QXZhaWxhYmxlKToKKyAgICAgICAgTmV3IGZ1bmN0aW9uIHRoYXQgcmFpc2Ugbm9JbXBsZW1lbnRl
ZCgpCisgICAgICAgIChXZWJLaXQ6OlJlbW90ZU1lZGlhUGxheWVyUHJveHk6Om1lZGlhUGxheWVy
UmVuZGVyaW5nTW9kZUNoYW5nZWQpOgorICAgICAgICBOZXcgZnVuY3Rpb24gdGhhdCByYWlzZSBu
b0ltcGxlbWVudGVkKCkKKyAgICAgICAgKFdlYktpdDo6UmVtb3RlTWVkaWFQbGF5ZXJQcm94eTo6
ZW50ZXJGdWxsc2NyZWVuKTogTmV3IGZ1bmN0aW9uCisgICAgICAgIHRoYXQgcmFpc2Ugbm9JbXBs
ZW1lbnRlZCgpCisgICAgICAgIChXZWJLaXQ6OlJlbW90ZU1lZGlhUGxheWVyUHJveHk6OmV4aXRG
dWxsc2NyZWVuKTogTmV3IGZ1bmN0aW9uCisgICAgICAgIHRoYXQgcmFpc2Ugbm9JbXBsZW1lbnRl
ZCgpCisgICAgICAgICogU291cmNlcy50eHQ6IEFkZCBtaXNzaW5nCisgICAgICAgIEdQVVByb2Nl
c3MvbWVkaWEvUmVtb3RlQXVkaW9EZXN0aW5hdGlvbk1hbmFnZXIuY3BwCisgICAgICAgICogU291
cmNlc0dUSy50eHQ6IEFkZCB0aGUgbmV3IGZpbGVzLgorICAgICAgICAqIFdlYlByb2Nlc3MvR1BV
L0dQVVByb2Nlc3NDb25uZWN0aW9uLmNwcDogZ3VhcmQKKyAgICAgICAgVXNlck1lZGlhQ2FwdHVy
ZU1hbmFnZXIgZm9yIENvY29hIHBsYXRmb3JtIG9ubHkuCisgICAgICAgIChXZWJLaXQ6OkdQVVBy
b2Nlc3NDb25uZWN0aW9uOjpkaXNwYXRjaE1lc3NhZ2UpOiBndWFyZCBtZXNzYWdlcworICAgICAg
ICBmcm9tIFVzZXJNZWRpYUNhcHR1cmVNYW5hZ2VyIGZvciBDb2NvYSBwbGF0Zm9ybSwgbW92aW5n
IHVwIHRoaXMKKyAgICAgICAgZ3VhcmQgYXBwbGllZCBhbHNvIGZvciB2aWRlbyB0cmFjay4KKyAg
ICAgICAgKiBXZWJQcm9jZXNzL0dQVS9tZWRpYS9NZWRpYVBsYXllclByaXZhdGVSZW1vdGUuY3Bw
OgorICAgICAgICAoV2ViS2l0OjpNZWRpYVBsYXllclByaXZhdGVSZW1vdGU6OnByZXBhcmVGb3JQ
bGF5YmFjayk6IGd1YXJkIHRoZQorICAgICAgICBjb250ZW50ZSBvZiB0aGlzIGZ1bmN0aW9uIHNp
bmNlIGl0IHN1c2VzIGEgcHJldmlvdXNseSBndWFyZGVkIElQQworICAgICAgICBjYWxsLgorICAg
ICAgICAqIFdlYlByb2Nlc3MvR1BVL21lZGlhL01lZGlhUGxheWVyUHJpdmF0ZVJlbW90ZS5oOiBn
dWFyZCBpbmNsdWRlCisgICAgICAgIG9mIExheWVySG9zdGluZ0NvbnRleHQuaCBmb3IgQ29jb2Eg
cGxhdGZvcm0sIGFuZCBhIG1lbWJlciB2YXJpYWJsZQorICAgICAgICB3aXRoIGEgdHlwZSBkZWZp
bmVkIGluIHRoYXQgaGVhZGVyLgorICAgICAgICAqIFdlYlByb2Nlc3MvR1BVL21lZGlhL1JlbW90
ZUNETS5jcHA6IGluY2x1ZGUgbWlzc2luZyBoZWFkZXIKKyAgICAgICAgR1BVUHJvY2Vzc0Nvbm5l
Y3Rpb24uaAorICAgICAgICAqIFdlYlByb2Nlc3MvR1BVL21lZGlhL1ZpZGVvTGF5ZXJSZW1vdGUu
aDogZ3VhcmQgdGhlIHdob2xlIGlubGN1ZGUKKyAgICAgICAgZmlsZSBmb3IgQ29jb2EgcGxhdGZv
cm0gb25seS4KKwogMjAyMC0wNC0wNyAgUm9iIEJ1aXMgIDxyYnVpc0BpZ2FsaWEuY29tPgogCiAg
ICAgICAgIFVzZSBHbG9iYWxGcmFtZUlkZW50aWZpZXIgaW4gTmF2aWdhdGlvbkFjdGlvbgpkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYktpdC9HUFVQcm9jZXNzL0dQVUNvbm5lY3Rpb25Ub1dlYlByb2Nl
c3MuY3BwIGIvU291cmNlL1dlYktpdC9HUFVQcm9jZXNzL0dQVUNvbm5lY3Rpb25Ub1dlYlByb2Nl
c3MuY3BwCmluZGV4IDI2ZjczODBjYTUyMmFmZDg0MDJjNjUzM2U5Mzc3NzU0NjUzMTMwOGIuLjQz
MWMzMzkyMTY2ODA0ZWMzMDgxZmJjNmNhZGFiNDU0MTNhNDEwMDQgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJLaXQvR1BVUHJvY2Vzcy9HUFVDb25uZWN0aW9uVG9XZWJQcm9jZXNzLmNwcAorKysgYi9T
b3VyY2UvV2ViS2l0L0dQVVByb2Nlc3MvR1BVQ29ubmVjdGlvblRvV2ViUHJvY2Vzcy5jcHAKQEAg
LTczLDcgKzczLDcgQEAKICNpbmNsdWRlICJSZW1vdGVDRE1Qcm94eU1lc3NhZ2VzLmgiCiAjZW5k
aWYKIAotI2lmIEVOQUJMRShNRURJQV9TVFJFQU0pCisjaWYgUExBVEZPUk0oQ09DT0EpICYmIEVO
QUJMRShNRURJQV9TVFJFQU0pCiAjaW5jbHVkZSAiVXNlck1lZGlhQ2FwdHVyZU1hbmFnZXJQcm94
eS5oIgogI2luY2x1ZGUgIlVzZXJNZWRpYUNhcHR1cmVNYW5hZ2VyUHJveHlNZXNzYWdlcy5oIgog
I2VuZGlmCkBAIC0zNjQsNyArMzY0LDcgQEAgYm9vbCBHUFVDb25uZWN0aW9uVG9XZWJQcm9jZXNz
OjpkaXNwYXRjaE1lc3NhZ2UoSVBDOjpDb25uZWN0aW9uJiBjb25uZWN0aW9uLCBJUEMKICAgICAg
ICAgcmVtb3RlTWVkaWFSZXNvdXJjZU1hbmFnZXIoKS5kaWRSZWNlaXZlTWVzc2FnZShjb25uZWN0
aW9uLCBkZWNvZGVyKTsKICAgICAgICAgcmV0dXJuIHRydWU7CiAgICAgfQotI2lmIEVOQUJMRShN
RURJQV9TVFJFQU0pCisjaWYgUExBVEZPUk0oQ09DT0EpICYmIEVOQUJMRShNRURJQV9TVFJFQU0p
CiAgICAgaWYgKGRlY29kZXIubWVzc2FnZVJlY2VpdmVyTmFtZSgpID09IE1lc3NhZ2VzOjpVc2Vy
TWVkaWFDYXB0dXJlTWFuYWdlclByb3h5OjptZXNzYWdlUmVjZWl2ZXJOYW1lKCkpIHsKICAgICAg
ICAgdXNlck1lZGlhQ2FwdHVyZU1hbmFnZXJQcm94eSgpLmRpZFJlY2VpdmVNZXNzYWdlRnJvbUdQ
VVByb2Nlc3MoY29ubmVjdGlvbiwgZGVjb2Rlcik7CiAgICAgICAgIHJldHVybiB0cnVlOwpAQCAt
Mzc3LDcgKzM3Nyw3IEBAIGJvb2wgR1BVQ29ubmVjdGlvblRvV2ViUHJvY2Vzczo6ZGlzcGF0Y2hN
ZXNzYWdlKElQQzo6Q29ubmVjdGlvbiYgY29ubmVjdGlvbiwgSVBDCiAgICAgICAgIG1lZGlhUmVj
b3JkZXJNYW5hZ2VyKCkuZGlkUmVjZWl2ZVJlbW90ZU1lZGlhUmVjb3JkZXJNZXNzYWdlKGNvbm5l
Y3Rpb24sIGRlY29kZXIpOwogICAgICAgICByZXR1cm4gdHJ1ZTsKICAgICB9Ci0jaWYgUExBVEZP
Uk0oQ09DT0EpICYmIEVOQUJMRShWSURFT19UUkFDSykKKyNpZiBFTkFCTEUoVklERU9fVFJBQ0sp
CiAgICAgaWYgKGRlY29kZXIubWVzc2FnZVJlY2VpdmVyTmFtZSgpID09IE1lc3NhZ2VzOjpSZW1v
dGVBdWRpb01lZGlhU3RyZWFtVHJhY2tSZW5kZXJlck1hbmFnZXI6Om1lc3NhZ2VSZWNlaXZlck5h
bWUoKSkgewogICAgICAgICBhdWRpb1RyYWNrUmVuZGVyZXJNYW5hZ2VyKCkuZGlkUmVjZWl2ZU1l
c3NhZ2VGcm9tV2ViUHJvY2Vzcyhjb25uZWN0aW9uLCBkZWNvZGVyKTsKICAgICAgICAgcmV0dXJu
IHRydWU7CkBAIC00OTcsNyArNDk3LDcgQEAgY29uc3QgU3RyaW5nJiBHUFVDb25uZWN0aW9uVG9X
ZWJQcm9jZXNzOjptZWRpYUNhY2hlRGlyZWN0b3J5KCkgY29uc3QKICAgICByZXR1cm4gbV9ncHVQ
cm9jZXNzLT5tZWRpYUNhY2hlRGlyZWN0b3J5KG1fc2Vzc2lvbklEKTsKIH0KIAotI2lmIEVOQUJM
RShFTkNSWVBURURfTUVESUEpIHx8IEVOQUJMRShMRUdBQ1lfRU5DUllQVEVEX01FRElBKQorI2lm
IEVOQUJMRShMRUdBQ1lfRU5DUllQVEVEX01FRElBKQogY29uc3QgU3RyaW5nJiBHUFVDb25uZWN0
aW9uVG9XZWJQcm9jZXNzOjptZWRpYUtleXNTdG9yYWdlRGlyZWN0b3J5KCkgY29uc3QKIHsKICAg
ICByZXR1cm4gbV9ncHVQcm9jZXNzLT5tZWRpYUtleXNTdG9yYWdlRGlyZWN0b3J5KG1fc2Vzc2lv
bklEKTsKQEAgLTUwNyw3ICs1MDcsOSBAQCBjb25zdCBTdHJpbmcmIEdQVUNvbm5lY3Rpb25Ub1dl
YlByb2Nlc3M6Om1lZGlhS2V5c1N0b3JhZ2VEaXJlY3RvcnkoKSBjb25zdAogI2lmIEVOQUJMRShN
RURJQV9TVFJFQU0pCiB2b2lkIEdQVUNvbm5lY3Rpb25Ub1dlYlByb2Nlc3M6OnNldE9yaWVudGF0
aW9uRm9yTWVkaWFDYXB0dXJlKHVpbnQ2NF90IG9yaWVudGF0aW9uKQogeworI2lmIFBMQVRGT1JN
KENPQ09BKQogICAgIHVzZXJNZWRpYUNhcHR1cmVNYW5hZ2VyUHJveHkoKS5zZXRPcmllbnRhdGlv
bihvcmllbnRhdGlvbik7CisjZW5kaWYKIH0KIAogdm9pZCBHUFVDb25uZWN0aW9uVG9XZWJQcm9j
ZXNzOjp1cGRhdGVDYXB0dXJlQWNjZXNzKGJvb2wgYWxsb3dBdWRpb0NhcHR1cmUsIGJvb2wgYWxs
b3dWaWRlb0NhcHR1cmUsIGJvb2wgYWxsb3dEaXNwbGF5Q2FwdHVyZSkKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJLaXQvR1BVUHJvY2Vzcy9HUFVQcm9jZXNzLmNwcCBiL1NvdXJjZS9XZWJLaXQvR1BV
UHJvY2Vzcy9HUFVQcm9jZXNzLmNwcAppbmRleCBlZjIzOTVlYzU5Zjc1NTliMTUxOGI2OTZlZjM2
NTgyNDZjOTNkMjk2Li4xMmZkZDk2Yzk1YzI0MDI2YjQ2OTNlY2NkZTM5ZDg4MjIzZmUzYTBjIDEw
MDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L0dQVVByb2Nlc3MvR1BVUHJvY2Vzcy5jcHAKKysrIGIv
U291cmNlL1dlYktpdC9HUFVQcm9jZXNzL0dQVVByb2Nlc3MuY3BwCkBAIC01Niw3ICs1Niw3IEBA
CiAjZW5kaWYKIAogI2lmIEVOQUJMRShNRURJQV9TVFJFQU0pCi0jaW5jbHVkZSA8V2ViQ29yZS9N
b2NrQXVkaW9TaGFyZWRVbml0Lmg+CisjaW5jbHVkZSA8V2ViQ29yZS9Nb2NrUmVhbHRpbWVNZWRp
YVNvdXJjZUNlbnRlci5oPgogI2VuZGlmCiAKIG5hbWVzcGFjZSBXZWJLaXQgewpkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYktpdC9HUFVQcm9jZXNzL2dzdHJlYW1lci9HUFVQcm9jZXNzR1N0cmVhbWVy
LmNwcCBiL1NvdXJjZS9XZWJLaXQvR1BVUHJvY2Vzcy9nc3RyZWFtZXIvR1BVUHJvY2Vzc0dTdHJl
YW1lci5jcHAKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMC4uNGY4ODkyOTI2MWZkYTg4MzQ0MDQ4NTlhMjE5OTBkYmMyNWIy
M2U0MwotLS0gL2Rldi9udWxsCisrKyBiL1NvdXJjZS9XZWJLaXQvR1BVUHJvY2Vzcy9nc3RyZWFt
ZXIvR1BVUHJvY2Vzc0dTdHJlYW1lci5jcHAKQEAgLTAsMCArMSw1MCBAQAorLyoKKyAqIENvcHly
aWdodCAoQykgMjAyMCBJZ2FsaWEgUy5MLgorICoKKyAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2Ug
aW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAorICogbW9kaWZpY2F0
aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25z
CisgKiBhcmUgbWV0OgorICogMS4gUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3Qg
cmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNv
bmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKyAqIDIuIFJlZGlzdHJpYnV0
aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0Cisg
KiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRp
c2NsYWltZXIgaW4gdGhlCisgKiAgICBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlh
bHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgorICoKKyAqIFRISVMgU09GVFdBUkUg
SVMgUFJPVklERUQgQlkgVEhFIENPUFlSSUdIVCBIT0xERVJTIGBgQVMgSVMnJworICogQU5EIEFO
WSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlU
RUQgVE8sCisgKiBUSEUgSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQg
RklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSCisgKiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiBJTiBO
TyBFVkVOVCBTSEFMTCBBUFBMRSBJTkMuIE9SIElUUyBDT05UUklCVVRPUlMKKyAqIEJFIExJQUJM
RSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFS
WSwgT1IKKyAqIENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlU
RUQgVE8sIFBST0NVUkVNRU5UIE9GCisgKiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBM
T1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MKKyAqIElOVEVSUlVQVElP
TikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVS
IElOCisgKiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVCAoSU5DTFVESU5HIE5F
R0xJR0VOQ0UgT1IgT1RIRVJXSVNFKQorICogQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUg
VVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRgorICogVEhFIFBPU1NJQklM
SVRZIE9GIFNVQ0ggREFNQUdFLgorICovCisKKyNpbmNsdWRlICJjb25maWcuaCIKKyNpbmNsdWRl
ICJHUFVQcm9jZXNzLmgiCisKKyNpZiBFTkFCTEUoR1BVX1BST0NFU1MpICYmIFVTRShHU1RSRUFN
RVIpCisKKyNpbmNsdWRlICJHUFVQcm9jZXNzQ3JlYXRpb25QYXJhbWV0ZXJzLmgiCisKK25hbWVz
cGFjZSBXZWJLaXQgeworCit2b2lkIEdQVVByb2Nlc3M6OmluaXRpYWxpemVQcm9jZXNzKGNvbnN0
IEF1eGlsaWFyeVByb2Nlc3NJbml0aWFsaXphdGlvblBhcmFtZXRlcnMmKQoreworfQorCit2b2lk
IEdQVVByb2Nlc3M6OmluaXRpYWxpemVQcm9jZXNzTmFtZShjb25zdCBBdXhpbGlhcnlQcm9jZXNz
SW5pdGlhbGl6YXRpb25QYXJhbWV0ZXJzJikKK3sKK30KKwordm9pZCBHUFVQcm9jZXNzOjppbml0
aWFsaXplU2FuZGJveChjb25zdCBBdXhpbGlhcnlQcm9jZXNzSW5pdGlhbGl6YXRpb25QYXJhbWV0
ZXJzJiwgU2FuZGJveEluaXRpYWxpemF0aW9uUGFyYW1ldGVycyYpCit7Cit9CisKK30gLy8gbmFt
ZXNwYWNlIFdlYktpdAorCisjZW5kaWYgLy8gRU5BQkxFKEdQVV9QUk9DRVNTKQorCmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViS2l0L0dQVVByb2Nlc3MvZ3N0cmVhbWVyL0dQVVByb2Nlc3NNYWluR1N0
cmVhbWVyLmNwcCBiL1NvdXJjZS9XZWJLaXQvR1BVUHJvY2Vzcy9nc3RyZWFtZXIvR1BVUHJvY2Vz
c01haW5HU3RyZWFtZXIuY3BwCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjE1NWFiNmU4OGY1ZjZiNzllZjNiY2Q1ODQ4
N2I3NWM3YTlkZTRkYzYKLS0tIC9kZXYvbnVsbAorKysgYi9Tb3VyY2UvV2ViS2l0L0dQVVByb2Nl
c3MvZ3N0cmVhbWVyL0dQVVByb2Nlc3NNYWluR1N0cmVhbWVyLmNwcApAQCAtMCwwICsxLDYwIEBA
CisvKgorICogQ29weXJpZ2h0IChDKSAyMDIwIElnYWxpYSBTLkwuCisgKgorICogUmVkaXN0cmli
dXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0
CisgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93
aW5nIGNvbmRpdGlvbnMKKyAqIGFyZSBtZXQ6CisgKiAxLiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291
cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0
aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgorICog
Mi4gUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92
ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRo
ZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKKyAqICAgIGRvY3VtZW50YXRpb24gYW5kL29y
IG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCisgKgorICog
VEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBUSEUgQ09QWVJJR0hUIEhPTERFUlMgYGBBUyBJ
UycnCisgKiBBTkQgQU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcs
IEJVVCBOT1QgTElNSVRFRCBUTywKKyAqIFRIRSBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hB
TlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIKKyAqIFBVUlBPU0UgQVJFIERJ
U0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIEFQUExFIElOQy4gT1IgSVRTIENPTlRSSUJVVE9S
UworICogQkUgTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BF
Q0lBTCwgRVhFTVBMQVJZLCBPUgorICogQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcs
IEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YKKyAqIFNVQlNUSVRVVEUgR09PRFMg
T1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUwor
ICogSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZIFRIRU9SWSBPRiBMSUFC
SUxJVFksIFdIRVRIRVIgSU4KKyAqIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JU
IChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpCisgKiBBUklTSU5HIElOIEFOWSBX
QVkgT1VUIE9GIFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GCisg
KiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCisgKi8KKworI2luY2x1ZGUgImNvbmZp
Zy5oIgorI2luY2x1ZGUgIkdQVVByb2Nlc3NNYWluLmgiCisKKyNpZiBFTkFCTEUoR1BVX1BST0NF
U1MpICYmIFVTRShHU1RSRUFNRVIpCisKKyNpbmNsdWRlICJBdXhpbGlhcnlQcm9jZXNzTWFpbi5o
IgorI2luY2x1ZGUgIkdQVVByb2Nlc3MuaCIKKworbmFtZXNwYWNlIFdlYktpdCB7CisKK3N0YXRp
YyBSZWZQdHI8R1BVUHJvY2Vzcz4gZ2xvYmFsR1BVUHJvY2VzczsKKworY2xhc3MgR1BVUHJvY2Vz
c01haW5HU3RyZWFtZXIgZmluYWw6IHB1YmxpYyBBdXhpbGlhcnlQcm9jZXNzTWFpbkJhc2Ugewor
cHVibGljOgorICAgIGJvb2wgcGxhdGZvcm1Jbml0aWFsaXplKCkgb3ZlcnJpZGUKKyAgICB7Cisg
ICAgICAgIHJldHVybiB0cnVlOworICAgIH0KK307CisKK3RlbXBsYXRlPD4KK3ZvaWQgaW5pdGlh
bGl6ZUF1eGlsaWFyeVByb2Nlc3M8R1BVUHJvY2Vzcz4oQXV4aWxpYXJ5UHJvY2Vzc0luaXRpYWxp
emF0aW9uUGFyYW1ldGVycyYmIHBhcmFtZXRlcnMpCit7CisgICAgc3RhdGljIE5ldmVyRGVzdHJv
eWVkPEdQVVByb2Nlc3M+IGdwdVByb2Nlc3MoV1RGTW92ZShwYXJhbWV0ZXJzKSk7CisgICAgZ2xv
YmFsR1BVUHJvY2VzcyA9ICZncHVQcm9jZXNzLmdldCgpOworfQorCitpbnQgR1BVUHJvY2Vzc01h
aW4oaW50IGFyZ2MsIGNoYXIqKiBhcmd2KQoreworICAgIHJldHVybiBBdXhpbGlhcnlQcm9jZXNz
TWFpbjxHUFVQcm9jZXNzLCBHUFVQcm9jZXNzTWFpbkdTdHJlYW1lcj4oYXJnYywgYXJndik7Cit9
CisKK30gLy8gbmFtZXNwYWNlIFdlYktpdAorCisjZW5kaWYgLy8gRU5BQkxFKEdQVV9QUk9DRVNT
KQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9HUFVQcm9jZXNzL21lZGlhL1JlbW90ZUxlZ2Fj
eUNETUZhY3RvcnlQcm94eS5jcHAgYi9Tb3VyY2UvV2ViS2l0L0dQVVByb2Nlc3MvbWVkaWEvUmVt
b3RlTGVnYWN5Q0RNRmFjdG9yeVByb3h5LmNwcAppbmRleCAwMTJmZTRkOWJlZTQ2NGE1ODY3NmIy
MDc1YTdkNjc5MTc4YmRjMGFmLi5mNWQ1MDgzYzhjMDc1ZmRhZWVjN2JiNzcxYjU1YTg1MTY5MmIx
NWI1IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L0dQVVByb2Nlc3MvbWVkaWEvUmVtb3RlTGVn
YWN5Q0RNRmFjdG9yeVByb3h5LmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0L0dQVVByb2Nlc3MvbWVk
aWEvUmVtb3RlTGVnYWN5Q0RNRmFjdG9yeVByb3h5LmNwcApAQCAtMjYsNyArMjYsNyBAQAogI2lu
Y2x1ZGUgImNvbmZpZy5oIgogI2luY2x1ZGUgIlJlbW90ZUxlZ2FjeUNETUZhY3RvcnlQcm94eS5o
IgogCi0jaWYgRU5BQkxFKEdQVV9QUk9DRVNTKSAmJiBFTkFCTEUoRU5DUllQVEVEX01FRElBKQor
I2lmIEVOQUJMRShHUFVfUFJPQ0VTUykgJiYgRU5BQkxFKExFR0FDWV9FTkNSWVBURURfTUVESUEp
CiAKICNpbmNsdWRlICJSZW1vdGVMZWdhY3lDRE1Qcm94eS5oIgogI2luY2x1ZGUgIlJlbW90ZUxl
Z2FjeUNETVByb3h5TWVzc2FnZXMuaCIKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvR1BVUHJv
Y2Vzcy9tZWRpYS9SZW1vdGVNZWRpYVBsYXllclByb3h5LmNwcCBiL1NvdXJjZS9XZWJLaXQvR1BV
UHJvY2Vzcy9tZWRpYS9SZW1vdGVNZWRpYVBsYXllclByb3h5LmNwcAppbmRleCBmNjQyOWYyYmQx
NTQyMTY0MWVmZGE3Njc2ZDAwMzg3OWRhNzAyY2NjLi45OTk5MjRjZTg0N2Q0YTdkOWU2NWQxZjZm
ZmZkZWU1OWQ1OWQzYmY2IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L0dQVVByb2Nlc3MvbWVk
aWEvUmVtb3RlTWVkaWFQbGF5ZXJQcm94eS5jcHAKKysrIGIvU291cmNlL1dlYktpdC9HUFVQcm9j
ZXNzL21lZGlhL1JlbW90ZU1lZGlhUGxheWVyUHJveHkuY3BwCkBAIC0zMCw3ICszMCw2IEBACiAK
ICNpbmNsdWRlICJEYXRhUmVmZXJlbmNlLmgiCiAjaW5jbHVkZSAiR1BVQ29ubmVjdGlvblRvV2Vi
UHJvY2Vzcy5oIgotI2luY2x1ZGUgIkxheWVySG9zdGluZ0NvbnRleHQuaCIKICNpbmNsdWRlICJN
ZWRpYVBsYXllclByaXZhdGVSZW1vdGVNZXNzYWdlcy5oIgogI2luY2x1ZGUgIlJlbW90ZUF1ZGlv
VHJhY2tQcm94eS5oIgogI2luY2x1ZGUgIlJlbW90ZUxlZ2FjeUNETUZhY3RvcnlQcm94eS5oIgpA
QCAtNTksNiArNTgsMTAgQEAKICNpbmNsdWRlIDxXZWJDb3JlL01lZGlhUGxheWJhY2tUYXJnZXRN
b2NrLmg+CiAjZW5kaWYKIAorI2lmIFBMQVRGT1JNKENPQ09BKQorI2luY2x1ZGUgIkxheWVySG9z
dGluZ0NvbnRleHQuaCIKKyNlbmRpZgorCiBuYW1lc3BhY2UgV2ViS2l0IHsKIAogdXNpbmcgbmFt
ZXNwYWNlIFdlYkNvcmU7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L0dQVVByb2Nlc3MvbWVk
aWEvUmVtb3RlTWVkaWFQbGF5ZXJQcm94eS5oIGIvU291cmNlL1dlYktpdC9HUFVQcm9jZXNzL21l
ZGlhL1JlbW90ZU1lZGlhUGxheWVyUHJveHkuaAppbmRleCBkMGE3YWMxNzBkYjM1ZDNjOWU3MGQ2
NmMzZTIzM2I2MWZiMDI4MjNiLi45ZDA5NGNkYWU5Yzg5M2IxOGFjNDg1MmY0NDQ5MTRjNWVmNmRh
NTk4IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L0dQVVByb2Nlc3MvbWVkaWEvUmVtb3RlTWVk
aWFQbGF5ZXJQcm94eS5oCisrKyBiL1NvdXJjZS9XZWJLaXQvR1BVUHJvY2Vzcy9tZWRpYS9SZW1v
dGVNZWRpYVBsYXllclByb3h5LmgKQEAgLTI3OCw4ICsyNzgsMTAgQEAgcHJpdmF0ZToKICAgICBS
ZWZQdHI8U2FuZGJveEV4dGVuc2lvbj4gbV9zYW5kYm94RXh0ZW5zaW9uOwogICAgIFJlZjxJUEM6
OkNvbm5lY3Rpb24+IG1fd2ViUHJvY2Vzc0Nvbm5lY3Rpb247CiAgICAgUmVmUHRyPFdlYkNvcmU6
Ok1lZGlhUGxheWVyPiBtX3BsYXllcjsKKyNpZiBQTEFURk9STShDT0NPQSkKICAgICBzdGQ6OnVu
aXF1ZV9wdHI8TGF5ZXJIb3N0aW5nQ29udGV4dD4gbV9pbmxpbmVMYXllckhvc3RpbmdDb250ZXh0
OwogICAgIHN0ZDo6dW5pcXVlX3B0cjxMYXllckhvc3RpbmdDb250ZXh0PiBtX2Z1bGxzY3JlZW5M
YXllckhvc3RpbmdDb250ZXh0OworI2VuZGlmCiAgICAgUmVtb3RlTWVkaWFQbGF5ZXJNYW5hZ2Vy
UHJveHkmIG1fbWFuYWdlcjsKICAgICBXZWJDb3JlOjpNZWRpYVBsYXllckVudW1zOjpNZWRpYUVu
Z2luZUlkZW50aWZpZXIgbV9lbmdpbmVJZGVudGlmaWVyOwogICAgIFZlY3RvcjxXZWJDb3JlOjpD
b250ZW50VHlwZT4gbV90eXBlc1JlcXVpcmluZ0hhcmR3YXJlU3VwcG9ydDsKZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJLaXQvR1BVUHJvY2Vzcy9tZWRpYS9SZW1vdGVNZWRpYVBsYXllclByb3h5Lm1l
c3NhZ2VzLmluIGIvU291cmNlL1dlYktpdC9HUFVQcm9jZXNzL21lZGlhL1JlbW90ZU1lZGlhUGxh
eWVyUHJveHkubWVzc2FnZXMuaW4KaW5kZXggYjAyMmY1NmU1MDI4MTg5MzNiMjcxNzljYWIzMjc2
ZWU5NTc3ZjI1OC4uZWVmYjhjZDE0NDI3NjczZDJlYzBiYmZjZDBlNjcyNmZjOGEwMTUyMyAxMDA2
NDQKLS0tIGEvU291cmNlL1dlYktpdC9HUFVQcm9jZXNzL21lZGlhL1JlbW90ZU1lZGlhUGxheWVy
UHJveHkubWVzc2FnZXMuaW4KKysrIGIvU291cmNlL1dlYktpdC9HUFVQcm9jZXNzL21lZGlhL1Jl
bW90ZU1lZGlhUGxheWVyUHJveHkubWVzc2FnZXMuaW4KQEAgLTI0LDcgKzI0LDkgQEAKICNpZiBF
TkFCTEUoR1BVX1BST0NFU1MpCiAKIG1lc3NhZ2VzIC0+IFJlbW90ZU1lZGlhUGxheWVyUHJveHkg
Tm90UmVmQ291bnRlZCB7CisjaWYgUExBVEZPUk0oQ09DT0EpCiAgICAgUHJlcGFyZUZvclBsYXli
YWNrKGJvb2wgcHJpdmF0ZU1vZGUsIGVudW06dWludDhfdCBXZWJDb3JlOjpNZWRpYVBsYXllckVu
dW1zOjpQcmVsb2FkIHByZWxvYWQsIGJvb2wgcHJlc2VydmVzUGl0Y2gsIGJvb2wgcHJlcGFyZUZv
clJlbmRlcmluZywgZmxvYXQgdmlkZW9Db250ZW50U2NhbGUpIC0+IChPcHRpb25hbDxXZWJLaXQ6
OkxheWVySG9zdGluZ0NvbnRleHRJRD4gaW5saW5lTGF5ZXJIb3N0aW5nQ29udGV4dElkLCBPcHRp
b25hbDxXZWJLaXQ6OkxheWVySG9zdGluZ0NvbnRleHRJRD4gZnVsbHNjcmVlbkxheWVySG9zdGlu
Z0NvbnRleHRJZCkgQXN5bmMKKyNlbmRpZgogCiAgICAgTG9hZChVUkwgdXJsLCBPcHRpb25hbDxX
ZWJLaXQ6OlNhbmRib3hFeHRlbnNpb246OkhhbmRsZT4gc2FuZGJveEV4dGVuc2lvbiwgV2ViQ29y
ZTo6Q29udGVudFR5cGUgY29udGVudFR5cGUsIFN0cmluZyBrZXlTeXN0ZW0pIC0+IChzdHJ1Y3Qg
V2ViS2l0OjpSZW1vdGVNZWRpYVBsYXllckNvbmZpZ3VyYXRpb24gcGxheWVyQ29uZmlndXJhdGlv
bikgQXN5bmMKICAgICBDYW5jZWxMb2FkKCkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvR1BV
UHJvY2Vzcy9tZWRpYS9nc3RyZWFtZXIvUmVtb3RlTWVkaWFQbGF5ZXJQcm94eUdTdHJlYW1lci5j
cHAgYi9Tb3VyY2UvV2ViS2l0L0dQVVByb2Nlc3MvbWVkaWEvZ3N0cmVhbWVyL1JlbW90ZU1lZGlh
UGxheWVyUHJveHlHU3RyZWFtZXIuY3BwCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjI3ZjlhMjIyYzg0YWRhM2JlYjQ3
MmQwMDc4OTE5ZWI0NmM3YzdlYTQKLS0tIC9kZXYvbnVsbAorKysgYi9Tb3VyY2UvV2ViS2l0L0dQ
VVByb2Nlc3MvbWVkaWEvZ3N0cmVhbWVyL1JlbW90ZU1lZGlhUGxheWVyUHJveHlHU3RyZWFtZXIu
Y3BwCkBAIC0wLDAgKzEsNTggQEAKKy8qCisgKiBDb3B5cmlnaHQgKEMpIDIwMjAgSWdhbGlhIFMu
TC4KKyAqCisgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZv
cm1zLCB3aXRoIG9yIHdpdGhvdXQKKyAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92
aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucworICogYXJlIG1ldDoKKyAqIDEuIFJl
ZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJp
Z2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93
aW5nIGRpc2NsYWltZXIuCisgKiAyLiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVz
dCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qg
b2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQorICogICAg
ZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRp
c3RyaWJ1dGlvbi4KKyAqCisgKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIFRIRSBDT1BZ
UklHSFQgSE9MREVSUyBgYEFTIElTJycKKyAqIEFORCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdB
UlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLAorICogVEhFIElNUExJRUQg
V0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxB
UgorICogUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgQVBQTEUgSU5D
LiBPUiBJVFMgQ09OVFJJQlVUT1JTCisgKiBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElS
RUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SCisgKiBDT05TRVFVRU5USUFM
IERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRgor
ICogU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBS
T0ZJVFM7IE9SIEJVU0lORVNTCisgKiBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBP
TiBBTlkgVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTgorICogQ09OVFJBQ1QsIFNUUklD
VCBMSUFCSUxJVFksIE9SIFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkK
KyAqIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBF
VkVOIElGIEFEVklTRUQgT0YKKyAqIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KKyAq
LworCisjaW5jbHVkZSAiY29uZmlnLmgiCisjaW5jbHVkZSAiUmVtb3RlTWVkaWFQbGF5ZXJQcm94
eS5oIgorCisjaWYgRU5BQkxFKEdQVV9QUk9DRVNTKSAmJiBVU0UoR1NUUkVBTUVSKQorCisjaW5j
bHVkZSA8V2ViQ29yZS9Ob3RJbXBsZW1lbnRlZC5oPgorCituYW1lc3BhY2UgV2ViS2l0IHsKKwor
dm9pZCBSZW1vdGVNZWRpYVBsYXllclByb3h5OjptZWRpYVBsYXllckZpcnN0VmlkZW9GcmFtZUF2
YWlsYWJsZSgpCit7CisgICAgbm90SW1wbGVtZW50ZWQoKTsKK30KKwordm9pZCBSZW1vdGVNZWRp
YVBsYXllclByb3h5OjptZWRpYVBsYXllclJlbmRlcmluZ01vZGVDaGFuZ2VkKCkKK3sKKyAgICBu
b3RJbXBsZW1lbnRlZCgpOworfQorCit2b2lkIFJlbW90ZU1lZGlhUGxheWVyUHJveHk6OmVudGVy
RnVsbHNjcmVlbihDb21wbGV0aW9uSGFuZGxlcjx2b2lkKCk+JiYgY29tcGxldGlvbkhhbmRsZXIp
Cit7CisgICAgbm90SW1wbGVtZW50ZWQoKTsKK30KKwordm9pZCBSZW1vdGVNZWRpYVBsYXllclBy
b3h5OjpleGl0RnVsbHNjcmVlbihDb21wbGV0aW9uSGFuZGxlcjx2b2lkKCk+JiYgY29tcGxldGlv
bkhhbmRsZXIpCit7CisgICAgbm90SW1wbGVtZW50ZWQoKTsKK30KKworfSAvLyBuYW1lc3BhY2Ug
V2ViS2l0CisKKworI2VuZGlmIC8vIEVOQUJMRShHUFVfUFJPQ0VTUykKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJLaXQvU291cmNlcy50eHQgYi9Tb3VyY2UvV2ViS2l0L1NvdXJjZXMudHh0CmluZGV4
IGRmZGFlMmEzMzIyZmM3ZmJhYzVjNTY2ODc3Y2EyMWUyODk0NzFlYzAuLjVlMTI5ZWRjZDY0NDgz
NjA1ODRhYmQ4ZWY0ZjIzYTc2ZmQ1NDJlMWEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvU291
cmNlcy50eHQKKysrIGIvU291cmNlL1dlYktpdC9Tb3VyY2VzLnR4dApAQCAtMjYsNiArMjYsNyBA
QCBHUFVQcm9jZXNzL0dQVUNvbm5lY3Rpb25Ub1dlYlByb2Nlc3MuY3BwCiBHUFVQcm9jZXNzL0dQ
VVByb2Nlc3NDcmVhdGlvblBhcmFtZXRlcnMuY3BwCiBHUFVQcm9jZXNzL2dyYXBoaWNzL1JlbW90
ZUltYWdlQnVmZmVyTWVzc2FnZUhhbmRsZXJQcm94eS5jcHAKIEdQVVByb2Nlc3MvZ3JhcGhpY3Mv
UmVtb3RlUmVuZGVyaW5nQmFja2VuZFByb3h5LmNwcAorR1BVUHJvY2Vzcy9tZWRpYS9SZW1vdGVB
dWRpb0Rlc3RpbmF0aW9uTWFuYWdlci5jcHAKIEdQVVByb2Nlc3MvbWVkaWEvUmVtb3RlQXVkaW9T
ZXNzaW9uUHJveHkuY3BwCiBHUFVQcm9jZXNzL21lZGlhL1JlbW90ZUF1ZGlvU2Vzc2lvblByb3h5
TWFuYWdlci5jcHAKIEdQVVByb2Nlc3MvbWVkaWEvUmVtb3RlQXVkaW9UcmFja1Byb3h5LmNwcApk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9Tb3VyY2VzR1RLLnR4dCBiL1NvdXJjZS9XZWJLaXQv
U291cmNlc0dUSy50eHQKaW5kZXggZWJhMzQ2MTRmZTBmZGNlZTUzYzFlZGM0ZTk0MGM0MWJiZDI0
MDI3Yy4uNGI0MjlkMzc1MDEwNWRhYjg2M2NjMDM4YjFhNDAwOGFlNzc2MjVhZSAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYktpdC9Tb3VyY2VzR1RLLnR4dAorKysgYi9Tb3VyY2UvV2ViS2l0L1NvdXJj
ZXNHVEsudHh0CkBAIC0yMSw2ICsyMSwxMCBAQAogLy8gQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBP
RiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRgogLy8gVEhFIFBP
U1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgogCitHUFVQcm9jZXNzL2dzdHJlYW1lci9HUFVQcm9j
ZXNzR1N0cmVhbWVyLmNwcAorR1BVUHJvY2Vzcy9nc3RyZWFtZXIvR1BVUHJvY2Vzc01haW5HU3Ry
ZWFtZXIuY3BwCitHUFVQcm9jZXNzL21lZGlhL2dzdHJlYW1lci9SZW1vdGVNZWRpYVBsYXllclBy
b3h5R1N0cmVhbWVyLmNwcAorCiBOZXR3b3JrUHJvY2Vzcy9DbGFzc2lmaWVyL1dlYlJlc291cmNl
TG9hZFN0YXRpc3RpY3NTdG9yZS5jcHAKIE5ldHdvcmtQcm9jZXNzL0NsYXNzaWZpZXIvV2ViUmVz
b3VyY2VMb2FkU3RhdGlzdGljc1RlbGVtZXRyeS5jcHAKIApkaWZmIC0tZ2l0IGEvU291cmNlL1dl
YktpdC9XZWJQcm9jZXNzL0dQVS9HUFVQcm9jZXNzQ29ubmVjdGlvbi5jcHAgYi9Tb3VyY2UvV2Vi
S2l0L1dlYlByb2Nlc3MvR1BVL0dQVVByb2Nlc3NDb25uZWN0aW9uLmNwcAppbmRleCBkZDg1ZDE3
YTQ2MDFjMTI2NWI4ODg1ZmM5OTQ4NTIwMDIyMDEwYjBlLi5kYmU1ODE5OWU0N2M2YTZlNTBiMTkw
MWE1YjNlMmMzYmVkZTEyMDIxIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3Mv
R1BVL0dQVVByb2Nlc3NDb25uZWN0aW9uLmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nl
c3MvR1BVL0dQVVByb2Nlc3NDb25uZWN0aW9uLmNwcApAQCAtNTAsNyArNTAsNyBAQAogI2luY2x1
ZGUgIlJlbW90ZUNETUluc3RhbmNlU2Vzc2lvbk1lc3NhZ2VzLmgiCiAjZW5kaWYKIAotI2lmIEVO
QUJMRShNRURJQV9TVFJFQU0pCisjaWYgUExBVEZPUk0oQ09DT0EpICYmIEVOQUJMRShNRURJQV9T
VFJFQU0pCiAjaW5jbHVkZSAiVXNlck1lZGlhQ2FwdHVyZU1hbmFnZXIuaCIKICNpbmNsdWRlICJV
c2VyTWVkaWFDYXB0dXJlTWFuYWdlck1lc3NhZ2VzLmgiCiAjZW5kaWYKQEAgLTExMiwxOSArMTEy
LDE5IEBAIGJvb2wgR1BVUHJvY2Vzc0Nvbm5lY3Rpb246OmRpc3BhdGNoTWVzc2FnZShJUEM6OkNv
bm5lY3Rpb24mIGNvbm5lY3Rpb24sIElQQzo6RGVjCiAgICAgICAgIHJldHVybiB0cnVlOwogICAg
IH0KIAotI2lmIEVOQUJMRShNRURJQV9TVFJFQU0pCisjaWYgUExBVEZPUk0oQ09DT0EpICYmIEVO
QUJMRShNRURJQV9TVFJFQU0pCiAgICAgaWYgKGRlY29kZXIubWVzc2FnZVJlY2VpdmVyTmFtZSgp
ID09IE1lc3NhZ2VzOjpVc2VyTWVkaWFDYXB0dXJlTWFuYWdlcjo6bWVzc2FnZVJlY2VpdmVyTmFt
ZSgpKSB7CiAgICAgICAgIGlmIChhdXRvKiBjYXB0dXJlTWFuYWdlciA9IFdlYlByb2Nlc3M6OnNp
bmdsZXRvbigpLnN1cHBsZW1lbnQ8VXNlck1lZGlhQ2FwdHVyZU1hbmFnZXI+KCkpCiAgICAgICAg
ICAgICBjYXB0dXJlTWFuYWdlci0+ZGlkUmVjZWl2ZU1lc3NhZ2VGcm9tR1BVUHJvY2Vzcyhjb25u
ZWN0aW9uLCBkZWNvZGVyKTsKICAgICAgICAgcmV0dXJuIHRydWU7CiAgICAgfQotI2lmIFBMQVRG
T1JNKENPQ09BKSAmJiBFTkFCTEUoVklERU9fVFJBQ0spCisjaWYgRU5BQkxFKFZJREVPX1RSQUNL
KQogICAgIGlmIChkZWNvZGVyLm1lc3NhZ2VSZWNlaXZlck5hbWUoKSA9PSBNZXNzYWdlczo6U2Ft
cGxlQnVmZmVyRGlzcGxheUxheWVyOjptZXNzYWdlUmVjZWl2ZXJOYW1lKCkpIHsKICAgICAgICAg
c2FtcGxlQnVmZmVyRGlzcGxheUxheWVyTWFuYWdlcigpLmRpZFJlY2VpdmVMYXllck1lc3NhZ2Uo
Y29ubmVjdGlvbiwgZGVjb2Rlcik7CiAgICAgICAgIHJldHVybiB0cnVlOwogICAgIH0KLSNlbmRp
ZiAvLyBQTEFURk9STShDT0NPQSkgJiYgRU5BQkxFKFZJREVPX1RSQUNLKQotI2VuZGlmIC8vIEVO
QUJMRShNRURJQV9TVFJFQU0pCisjZW5kaWYgLy8gRU5BQkxFKFZJREVPX1RSQUNLKQorI2VuZGlm
IC8vIFBMQVRGT1JNKENPQ09BKSAmJiBFTkFCTEUoTUVESUFfU1RSRUFNKQogI2lmIFVTRShMSUJX
RUJSVEMpICYmIFBMQVRGT1JNKENPQ09BKQogICAgIGlmIChkZWNvZGVyLm1lc3NhZ2VSZWNlaXZl
ck5hbWUoKSA9PSBNZXNzYWdlczo6TGliV2ViUlRDQ29kZWNzOjptZXNzYWdlUmVjZWl2ZXJOYW1l
KCkpIHsKICAgICAgICAgV2ViUHJvY2Vzczo6c2luZ2xldG9uKCkubGliV2ViUlRDQ29kZWNzKCku
ZGlkUmVjZWl2ZU1lc3NhZ2UoY29ubmVjdGlvbiwgZGVjb2Rlcik7CmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViS2l0L1dlYlByb2Nlc3MvR1BVL21lZGlhL01lZGlhUGxheWVyUHJpdmF0ZVJlbW90ZS5j
cHAgYi9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvR1BVL21lZGlhL01lZGlhUGxheWVyUHJpdmF0
ZVJlbW90ZS5jcHAKaW5kZXggNjg4YzQ3MWVjODI3NzBjYWZiMmFhMDljYzk4OGRlMDBjZTg5Y2Fi
Zi4uMmJkNDFjZjk0NDVmMTk4NDA5MmMwMDRmN2VhMzY4NzFkNmQ0ZGRlMSAxMDA2NDQKLS0tIGEv
U291cmNlL1dlYktpdC9XZWJQcm9jZXNzL0dQVS9tZWRpYS9NZWRpYVBsYXllclByaXZhdGVSZW1v
dGUuY3BwCisrKyBiL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9HUFUvbWVkaWEvTWVkaWFQbGF5
ZXJQcml2YXRlUmVtb3RlLmNwcApAQCAtMTE5LDYgKzExOSw3IEBAIE1lZGlhUGxheWVyUHJpdmF0
ZVJlbW90ZTo6fk1lZGlhUGxheWVyUHJpdmF0ZVJlbW90ZSgpCiAKIHZvaWQgTWVkaWFQbGF5ZXJQ
cml2YXRlUmVtb3RlOjpwcmVwYXJlRm9yUGxheWJhY2soYm9vbCBwcml2YXRlTW9kZSwgTWVkaWFQ
bGF5ZXI6OlByZWxvYWQgcHJlbG9hZCwgYm9vbCBwcmVzZXJ2ZXNQaXRjaCwgYm9vbCBwcmVwYXJl
KQogeworI2lmIFBMQVRGT1JNKENPQ09BKQogICAgIGF1dG8gc2NhbGUgPSBtX3BsYXllci0+cGxh
eWVyQ29udGVudHNTY2FsZSgpOwogCiAgICAgY29ubmVjdGlvbigpLnNlbmRXaXRoQXN5bmNSZXBs
eShNZXNzYWdlczo6UmVtb3RlTWVkaWFQbGF5ZXJQcm94eTo6UHJlcGFyZUZvclBsYXliYWNrKHBy
aXZhdGVNb2RlLCBwcmVsb2FkLCBwcmVzZXJ2ZXNQaXRjaCwgcHJlcGFyZSwgc2NhbGUpLCBbd2Vh
a1RoaXMgPSBtYWtlV2Vha1B0cigqdGhpcyksIHRoaXNdKGF1dG8gaW5saW5lTGF5ZXJIb3N0aW5n
Q29udGV4dElkLCBhdXRvIGZ1bGxzY3JlZW5MYXllckhvc3RpbmdDb250ZXh0SWQpIG11dGFibGUg
ewpAQCAtMTMyLDYgKzEzMyw3IEBAIHZvaWQgTWVkaWFQbGF5ZXJQcml2YXRlUmVtb3RlOjpwcmVw
YXJlRm9yUGxheWJhY2soYm9vbCBwcml2YXRlTW9kZSwgTWVkaWFQbGF5ZXI6CiAKICAgICAgICAg
bV9mdWxsc2NyZWVuTGF5ZXJIb3N0aW5nQ29udGV4dElkID0gZnVsbHNjcmVlbkxheWVySG9zdGlu
Z0NvbnRleHRJZDsKICAgICB9LCBtX2lkKTsKKyNlbmRpZgogfQogCiB2b2lkIE1lZGlhUGxheWVy
UHJpdmF0ZVJlbW90ZTo6TWVkaWFQbGF5ZXJQcml2YXRlUmVtb3RlOjpsb2FkKGNvbnN0IFVSTCYg
dXJsLCBjb25zdCBDb250ZW50VHlwZSYgY29udGVudFR5cGUsIGNvbnN0IFN0cmluZyYga2V5U3lz
dGVtKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL0dQVS9tZWRpYS9NZWRp
YVBsYXllclByaXZhdGVSZW1vdGUuaCBiL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9HUFUvbWVk
aWEvTWVkaWFQbGF5ZXJQcml2YXRlUmVtb3RlLmgKaW5kZXggN2VjOGI4ZWEyMWVjOTdhNDQ3MDBh
YTZkNjI1NWRlYjAzMmI0ZmFmNC4uNDliNDE1ZWM2MWJjY2ZlNGUzNjhhZWM1NzUzZTA0NTI5YmNi
ZWQyZSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL0dQVS9tZWRpYS9NZWRp
YVBsYXllclByaXZhdGVSZW1vdGUuaAorKysgYi9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvR1BV
L21lZGlhL01lZGlhUGxheWVyUHJpdmF0ZVJlbW90ZS5oCkBAIC0yNyw3ICsyNyw2IEBACiAKICNp
ZiBFTkFCTEUoR1BVX1BST0NFU1MpCiAKLSNpbmNsdWRlICJMYXllckhvc3RpbmdDb250ZXh0Lmgi
CiAjaW5jbHVkZSAiUmVtb3RlTWVkaWFQbGF5ZXJDb25maWd1cmF0aW9uLmgiCiAjaW5jbHVkZSAi
UmVtb3RlTWVkaWFQbGF5ZXJNYW5hZ2VyLmgiCiAjaW5jbHVkZSAiUmVtb3RlTWVkaWFQbGF5ZXJT
dGF0ZS5oIgpAQCAtNDAsNiArMzksMTAgQEAKICNpbmNsdWRlIDx3dGYvTWVkaWFUaW1lLmg+CiAj
aW5jbHVkZSA8d3RmL1dlYWtQdHIuaD4KIAorI2lmIFBMQVRGT1JNKENPQ09BKQorI2luY2x1ZGUg
IkxheWVySG9zdGluZ0NvbnRleHQuaCIKKyNlbmRpZgorCiBuYW1lc3BhY2UgV1RGIHsKIGNsYXNz
IE1hY2hTZW5kUmlnaHQ7CiB9CkBAIC0zNTksNyArMzYyLDkgQEAgcHJpdmF0ZToKICAgICBSZWZQ
dHI8V2ViQ29yZTo6UGxhdGZvcm1NZWRpYVJlc291cmNlTG9hZGVyPiBtX21lZGlhUmVzb3VyY2VM
b2FkZXI7CiAgICAgUGxhdGZvcm1MYXllckNvbnRhaW5lciBtX3ZpZGVvSW5saW5lTGF5ZXI7CiAg
ICAgUGxhdGZvcm1MYXllckNvbnRhaW5lciBtX3ZpZGVvRnVsbHNjcmVlbkxheWVyOworI2lmIFBM
QVRGT1JNKENPQ09BKQogICAgIE9wdGlvbmFsPExheWVySG9zdGluZ0NvbnRleHRJRD4gbV9mdWxs
c2NyZWVuTGF5ZXJIb3N0aW5nQ29udGV4dElkOworI2VuZGlmCiAgICAgUmVtb3RlTWVkaWFQbGF5
ZXJNYW5hZ2VyJiBtX21hbmFnZXI7CiAgICAgV2ViQ29yZTo6TWVkaWFQbGF5ZXJFbnVtczo6TWVk
aWFFbmdpbmVJZGVudGlmaWVyIG1fcmVtb3RlRW5naW5lSWRlbnRpZmllcjsKICAgICBNZWRpYVBs
YXllclByaXZhdGVSZW1vdGVJZGVudGlmaWVyIG1faWQ7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
S2l0L1dlYlByb2Nlc3MvR1BVL21lZGlhL1JlbW90ZUNETS5jcHAgYi9Tb3VyY2UvV2ViS2l0L1dl
YlByb2Nlc3MvR1BVL21lZGlhL1JlbW90ZUNETS5jcHAKaW5kZXggMGM5MWI0MGYzYjljNzViM2Mx
MTBiNjM2ZjY4Y2E1NzA1YTI1YjU0OC4uNDlmZDM4ZDE4MmUyZjkxNTYzM2ZhNDBiM2ExOGE0ZjRh
NTc5ZGUzZSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL0dQVS9tZWRpYS9S
ZW1vdGVDRE0uY3BwCisrKyBiL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9HUFUvbWVkaWEvUmVt
b3RlQ0RNLmNwcApAQCAtMjksNiArMjksNyBAQAogI2lmIEVOQUJMRShHUFVfUFJPQ0VTUykgJiYg
RU5BQkxFKEVOQ1JZUFRFRF9NRURJQSkKIAogI2luY2x1ZGUgIkRhdGFSZWZlcmVuY2UuaCIKKyNp
bmNsdWRlICJHUFVQcm9jZXNzQ29ubmVjdGlvbi5oIgogI2luY2x1ZGUgIlJlbW90ZUNETUluc3Rh
bmNlLmgiCiAjaW5jbHVkZSAiUmVtb3RlQ0RNSW5zdGFuY2VDb25maWd1cmF0aW9uLmgiCiAjaW5j
bHVkZSAiUmVtb3RlQ0RNSW5zdGFuY2VJZGVudGlmaWVyLmgiCmRpZmYgLS1naXQgYS9Tb3VyY2Uv
V2ViS2l0L1dlYlByb2Nlc3MvR1BVL21lZGlhL1ZpZGVvTGF5ZXJSZW1vdGUuaCBiL1NvdXJjZS9X
ZWJLaXQvV2ViUHJvY2Vzcy9HUFUvbWVkaWEvVmlkZW9MYXllclJlbW90ZS5oCmluZGV4IDk5NmIz
ZjU2MDQzYTU5OWQ3MzZmZDQwOTQzYjlhYTliYjJkMGE3YTkuLjllOTk4MDdkZjRkYjY0Y2E5ZDYz
MDRjYzE4YTA2MTMyMjAxZmIyZGQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vz
cy9HUFUvbWVkaWEvVmlkZW9MYXllclJlbW90ZS5oCisrKyBiL1NvdXJjZS9XZWJLaXQvV2ViUHJv
Y2Vzcy9HUFUvbWVkaWEvVmlkZW9MYXllclJlbW90ZS5oCkBAIC0yNSw3ICsyNSw3IEBACiAKICNw
cmFnbWEgb25jZQogCi0jaWYgRU5BQkxFKEdQVV9QUk9DRVNTKQorI2lmIFBMQVRGT1JNKENPQ09B
KSAmJiBFTkFCTEUoR1BVX1BST0NFU1MpCiAKICNpbmNsdWRlICJMYXllckhvc3RpbmdDb250ZXh0
LmgiCiAjaW5jbHVkZSA8V2ViQ29yZS9QbGF0Zm9ybUxheWVyLmg+CmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvY21ha2UvT3B0aW9uc0dUSy5jbWFrZSBiL1NvdXJjZS9jbWFrZS9PcHRpb25zR1RLLmNtYWtl
CmluZGV4IDJiNTQ2ZWIwNGZmNWRlYjkzNjk4ZjM5MzlmMDBiMDFiZTBlZTlhYjQuLjdhMzkwMzJk
N2MzOGQyNTQ4YjE4ZGI3MThlYTliNmExZmIzYjRlYTQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9jbWFr
ZS9PcHRpb25zR1RLLmNtYWtlCisrKyBiL1NvdXJjZS9jbWFrZS9PcHRpb25zR1RLLmNtYWtlCkBA
IC0xNTcsMTIgKzE1NywxNiBAQCBXRUJLSVRfT1BUSU9OX0RFRkFVTFRfUE9SVF9WQUxVRShFTkFC
TEVfV0VCRFJJVkVSIFBVQkxJQyBPTikKICMgQ2hhbmdpbmcgdGhlc2Ugb3B0aW9ucyBpcyBjb21w
bGV0ZWx5IHVuc3VwcG9ydGVkLgogV0VCS0lUX09QVElPTl9ERUZBVUxUX1BPUlRfVkFMVUUoRU5B
QkxFX0FVVE9DQVBJVEFMSVpFIFBSSVZBVEUgT04pCiBXRUJLSVRfT1BUSU9OX0RFRkFVTFRfUE9S
VF9WQUxVRShFTkFCTEVfQ09OVEVOVF9FWFRFTlNJT05TIFBSSVZBVEUgT04pCitXRUJLSVRfT1BU
SU9OX0RFRkFVTFRfUE9SVF9WQUxVRShFTkFCTEVfQ1NTX0NPTklDX0dSQURJRU5UUyBQUklWQVRF
IE9OKQorV0VCS0lUX09QVElPTl9ERUZBVUxUX1BPUlRfVkFMVUUoRU5BQkxFX0NTU19QQUlOVElO
R19BUEkgUFJJVkFURSAke0VOQUJMRV9FWFBFUklNRU5UQUxfRkVBVFVSRVN9KQorV0VCS0lUX09Q
VElPTl9ERUZBVUxUX1BPUlRfVkFMVUUoRU5BQkxFX0NTU19UWVBFRF9PTSBQUklWQVRFICR7RU5B
QkxFX0VYUEVSSU1FTlRBTF9GRUFUVVJFU30pCiBXRUJLSVRfT1BUSU9OX0RFRkFVTFRfUE9SVF9W
QUxVRShFTkFCTEVfQ1VSU09SX1ZJU0lCSUxJVFkgUFJJVkFURSBPTikKIFdFQktJVF9PUFRJT05f
REVGQVVMVF9QT1JUX1ZBTFVFKEVOQUJMRV9EQVJLX01PREVfQ1NTIFBSSVZBVEUgT04pCiBXRUJL
SVRfT1BUSU9OX0RFRkFVTFRfUE9SVF9WQUxVRShFTkFCTEVfREFUQUxJU1RfRUxFTUVOVCBQUklW
QVRFIE9OKQogV0VCS0lUX09QVElPTl9ERUZBVUxUX1BPUlRfVkFMVUUoRU5BQkxFX0RPV05MT0FE
X0FUVFJJQlVURSBQUklWQVRFIE9OKQogV0VCS0lUX09QVElPTl9ERUZBVUxUX1BPUlRfVkFMVUUo
RU5BQkxFX0VOQ1JZUFRFRF9NRURJQSBQUklWQVRFICR7RU5BQkxFX0VYUEVSSU1FTlRBTF9GRUFU
VVJFU30pCiBXRUJLSVRfT1BUSU9OX0RFRkFVTFRfUE9SVF9WQUxVRShFTkFCTEVfRlRQRElSIFBS
SVZBVEUgT0ZGKQorV0VCS0lUX09QVElPTl9ERUZBVUxUX1BPUlRfVkFMVUUoRU5BQkxFX0dQVV9Q
Uk9DRVNTIFBSSVZBVEUgJHtFTkFCTEVfRVhQRVJJTUVOVEFMX0ZFQVRVUkVTfSkKIFdFQktJVF9P
UFRJT05fREVGQVVMVF9QT1JUX1ZBTFVFKEVOQUJMRV9JTlBVVF9UWVBFX0NPTE9SIFBSSVZBVEUg
T04pCiBXRUJLSVRfT1BUSU9OX0RFRkFVTFRfUE9SVF9WQUxVRShFTkFCTEVfTEFZT1VUX0ZPUk1B
VFRJTkdfQ09OVEVYVCBQUklWQVRFICR7RU5BQkxFX0VYUEVSSU1FTlRBTF9GRUFUVVJFU30pCiBX
RUJLSVRfT1BUSU9OX0RFRkFVTFRfUE9SVF9WQUxVRShFTkFCTEVfTUVESUFfU1RSRUFNIFBSSVZB
VEUgJHtFTkFCTEVfRVhQRVJJTUVOVEFMX0ZFQVRVUkVTfSkKQEAgLTE3NCw5ICsxNzgsNiBAQCBX
RUJLSVRfT1BUSU9OX0RFRkFVTFRfUE9SVF9WQUxVRShFTkFCTEVfUE9JTlRFUl9MT0NLIFBSSVZB
VEUgT04pCiBXRUJLSVRfT1BUSU9OX0RFRkFVTFRfUE9SVF9WQUxVRShFTkFCTEVfU0VSVklDRV9X
T1JLRVIgUFJJVkFURSBPTikKIFdFQktJVF9PUFRJT05fREVGQVVMVF9QT1JUX1ZBTFVFKEVOQUJM
RV9TSEFSRUFCTEVfUkVTT1VSQ0UgUFVCTElDIE9OKQogV0VCS0lUX09QVElPTl9ERUZBVUxUX1BP
UlRfVkFMVUUoRU5BQkxFX1dFQl9SVEMgUFJJVkFURSAke0VOQUJMRV9FWFBFUklNRU5UQUxfRkVB
VFVSRVN9KQotV0VCS0lUX09QVElPTl9ERUZBVUxUX1BPUlRfVkFMVUUoRU5BQkxFX0NTU19QQUlO
VElOR19BUEkgUFJJVkFURSAke0VOQUJMRV9FWFBFUklNRU5UQUxfRkVBVFVSRVN9KQotV0VCS0lU
X09QVElPTl9ERUZBVUxUX1BPUlRfVkFMVUUoRU5BQkxFX0NTU19UWVBFRF9PTSBQUklWQVRFICR7
RU5BQkxFX0VYUEVSSU1FTlRBTF9GRUFUVVJFU30pCi1XRUJLSVRfT1BUSU9OX0RFRkFVTFRfUE9S
VF9WQUxVRShFTkFCTEVfQ1NTX0NPTklDX0dSQURJRU5UUyBQUklWQVRFIE9OKQogCiBpbmNsdWRl
KEdTdHJlYW1lckRlcGVuZGVuY2llcykKIApkaWZmIC0tZ2l0IGEvQ2hhbmdlTG9nIGIvQ2hhbmdl
TG9nCmluZGV4IDU0NDZlNzZlZjUxZTg1NGE0Zjc4NDhhYWZiOTY0ZGNjODg5MjBlZGIuLjYxMDll
NDMxMTQxZTc4NmNlNDNhNDc2Njg3YjE2YTA3ZmU4NDNkOWMgMTAwNjQ0Ci0tLSBhL0NoYW5nZUxv
ZworKysgYi9DaGFuZ2VMb2cKQEAgLTEsMyArMSwxNyBAQAorMjAyMC0wNC0wNyAgVsOtY3RvciBN
YW51ZWwgSsOhcXVleiBMZWFsICA8dmphcXVlekBpZ2FsaWEuY29tPgorCisgICAgICAgIFtHUFVQ
XVtHVEtdIGNvbXBpbGUgR1BVUHJvY2VzcyBpbiBHVEsgcG9ydAorICAgICAgICBodHRwczovL2J1
Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjA4ODE0CisKKyAgICAgICAgUmV2aWV3ZWQg
YnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgRW5hYmxlIEdQVVByb2Nlc3MgY29tcGlsYXRp
b24gaW4gV2ViS2l0R1RLIGFzIGFuIGV4cGVyaW1lbnRhbAorICAgICAgICBmZWF0dXJlCisKKyAg
ICAgICAgKiBTb3VyY2UvY21ha2UvT3B0aW9uc0dUSy5jbWFrZTogc29ydCBhbHBoYWJldGljYWxs
eSBXZWJLaXQKKyAgICAgICAgb3B0aW9ucyBmb3IgR1RLIHBvcnQgYW5kIGVuYWJsZSBHUFVfUFJP
Q0VTUyBpZiBleHBlcmltZW50YWwKKyAgICAgICAgZmVhdHVyZXMgb3B0aW9uIGlzIGVuYWJsZWQu
CisKIDIwMjAtMDQtMDYgIERvbiBPbG1zdGVhZCAgPGRvbi5vbG1zdGVhZEBzb255LmNvbT4KIAog
ICAgICAgICBbQ01ha2VdIFVzZSBXRUJLSVRfRVhFQ1VUQUJMRSBpbiBEdW1wUmVuZGVyVHJlZQo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>395704</attachid>
            <date>2020-04-07 10:40:52 -0700</date>
            <delta_ts>2020-04-08 02:52:47 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-208814-20200407194050.patch</filename>
            <type>text/plain</type>
            <size>26908</size>
            <attacher name="Víctor M. Jáquez L.">vjaquez</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjU5NjMxCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L0No
YW5nZUxvZyBiL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCmluZGV4IGM2MDlmNzM3ZDQwYjE2NzEy
ZmY5Zjk4NzMzMWI2Y2I3OWE3NDQxNmEuLjdlNzFlODgxMWExMjQxNmU4OWViNWIwZmNhYTVlOWRl
YmM5ZDI1YjYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCisrKyBiL1NvdXJj
ZS9XZWJLaXQvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsNzcgQEAKKzIwMjAtMDQtMDcgIFbDrWN0b3Ig
TWFudWVsIErDoXF1ZXogTGVhbCAgPHZqYXF1ZXpAaWdhbGlhLmNvbT4KKworICAgICAgICBbR1BV
UF1bR1RLXSBjb21waWxlIEdQVVByb2Nlc3MgaW4gR1RLIHBvcnQKKyAgICAgICAgaHR0cHM6Ly9i
dWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIwODgxNAorCisgICAgICAgIFJldmlld2Vk
IGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIEVuYWJsZSBHUFVQcm9jZXNzIGNvbXBpbGF0
aW9uIGluIFdlYktpdEdUSyBhcyBhbiBleHBlcmltZW50YWwKKyAgICAgICAgZmVhdHVyZQorCisg
ICAgICAgIE5vIG5ldyB0ZXN0cyByZXF1aXJlZC4KKworICAgICAgICAqIEdQVVByb2Nlc3MvR1BV
Q29ubmVjdGlvblRvV2ViUHJvY2Vzcy5jcHA6IGd1YXJkCisgICAgICAgIFVzZXJNZWRpYUNhcHR1
cmVNYW5hZ2VyUHJveHkgZm9yIENvY29hIHBsYXRmb3JtIG9ubHkuCisgICAgICAgIChXZWJLaXQ6
OkdQVUNvbm5lY3Rpb25Ub1dlYlByb2Nlc3M6OmRpc3BhdGNoTWVzc2FnZSk6IGd1YXJkCisgICAg
ICAgIG1lc3NhZ2VzIGZyb20gVXNlck1lZGlhQ2FwdHVyZU1hbmFnZXJQcm94eSBmb3IgQ29jb2Eg
cGxhdGZvcm0sCisgICAgICAgIG1vdmluZyB1cCB0aGlzIGd1YXJkIGZyb20gdmlkZW8gdHJhY2sg
bWVzc2FnZXMuCisgICAgICAgIChXZWJLaXQ6OkdQVUNvbm5lY3Rpb25Ub1dlYlByb2Nlc3M6Om1l
ZGlhS2V5U3RvcmFnZURpcmVjdG9yeSk6CisgICAgICAgIHJlbW92ZWQgZ3VhcmQgZm9yIHRoaXMg
ZnVuY3Rpb24gb2YgRU5DUllQVEVEX01FRElBIGxlYXZpbmcgb25seQorICAgICAgICBMRUdBQ1lf
RU5DUllQVEVEX01FRElBLCBzaW5jZSBpdCdzIHdlcmUgaXQgaXMgZGVmaW5lZC4KKyAgICAgICAg
KFdlYktpdDo6R1BVQ29ubmVjdGlvblRvV2ViUHJvY2Vzczo6c2V0T3JpZW50YXRpb25Gb3JNZWRp
YUNhcHR1cmUpOgorICAgICAgICBndWFyZCB0aGUgY29udGVudCBvZiB0aGlzIGZ1bmN0aW9uIGZv
ciBDb2NvYSBwbGF0Zm9ybSwgc2luY2UgaXQgaXMKKyAgICAgICAgY2FsbGluZyBhIFVzZXJNZWRp
YUNhcHR1cmVNYW5hZ2VyUHJveHkgb2JqZWN0LgorICAgICAgICAqIEdQVVByb2Nlc3MvR1BVUHJv
Y2Vzcy5jcHA6IFJlcGxhY2UgdGhlIGluY2x1ZGVkIGhlYWRlciB0byBtYXRjaAorICAgICAgICB3
aXRoIHRoZSB1c2VkIHN5bWJvbHMgaW4gZmlsZS4KKyAgICAgICAgKiBHUFVQcm9jZXNzL2dzdHJl
YW1lci9HUFVQcm9jZXNzR1N0cmVhbWVyLmNwcDogTmV3IGZpbGUgd2l0aAorICAgICAgICBtb2Nr
dXAgaW1wbGVtZW50YXRpb24uCisgICAgICAgIChXZWJLaXQ6OkdQVVByb2Nlc3M6OmluaXRpYWxp
emVQcm9jZXNzKTogRW1wdHkgZnVuY3Rpb24uCisgICAgICAgIChXZWJLaXQ6OkdQVVByb2Nlc3M6
OmluaXRpYWxpemVQcm9jZXNzTmFtZSk6IEVtcHR5IGZ1bmN0aW9uLgorICAgICAgICAoV2ViS2l0
OjpHUFVQcm9jZXNzOjppbml0aWFsaXplU2FuZGJveCk6IEVtcHR5IGZ1bmN0aW9uLgorICAgICAg
ICAqIEdQVVByb2Nlc3MvZ3N0cmVhbWVyL0dQVVByb2Nlc3NNYWluR1N0cmVhbWVyLmNwcDogTmV3
IGZpbGUgd2l0aAorICAgICAgICBtb2NrdXAgaW1wbGVtZW50YXRpb24uCisgICAgICAgIChXZWJL
aXQ6OmluaXRpYWxpemVBdXhpbGlhcnlQcm9jZXNzPEdQVVByb2Nlc3M+KTogTmV3IGZ1bmN0aW9u
LgorICAgICAgICAoV2ViS2l0OjpHUFVQcm9jZXNzTWFpbik6IE5ldyBmdW5jdGlvbi4KKyAgICAg
ICAgKiBHUFVQcm9jZXNzL21lZGlhL1JlbW90ZUxlZ2FjeUNETUZhY3RvcnlQcm94eS5jcHA6IGNo
YW5nZWQgZ3VhcmQKKyAgICAgICAgZm9yIHRoaXMgZmlsZSBmcm9tIEVOQ1JZUFRFRF9NRURJQSB0
byBMRUdBQ1lfRU5DUllQVEVEX01FRElBIHRvCisgICAgICAgIG1hdGNoIHdpdGggaXRzIGhlYWRl
ciBmaWxlLgorICAgICAgICAqIEdQVVByb2Nlc3MvbWVkaWEvUmVtb3RlTWVkaWFQbGF5ZXJQcm94
eS5jcHA6IGd1YXJkCisgICAgICAgIExheWVySG9zdGluZ0NvbnRleHQgaW5zdGFuY2VzIGZvciBD
b2NvYSBwbGF0Zm9ybS4KKyAgICAgICAgKiBHUFVQcm9jZXNzL21lZGlhL1JlbW90ZU1lZGlhUGxh
eWVyUHJveHkuaDogZ3VhcmQKKyAgICAgICAgTGF5ZXJIb3N0aW5nQ29udGV4dCdzIG1lbWJlciBp
bnN0YW5jZXMgZm9yIENvY29hIHBsYXRmb3JtLgorICAgICAgICAqIEdQVVByb2Nlc3MvbWVkaWEv
UmVtb3RlTWVkaWFQbGF5ZXJQcm94eS5tZXNzYWdlcy5pbjogZ3VhcmQKKyAgICAgICAgUHJlcGFy
ZUZvclBsYXliYWNrIG1lc3NhZ2UgdG8gQ29jb2EgcGxhdGZvcm0gb25seSwgc2luY2UgaXQKKyAg
ICAgICAgcmV0dXJucyBpZHMgdGhhdCBhcmUgQ29jb2Egc3BlY2lmaWMuIE90aGVycyBwb3J0cyBz
aG91bGQgZGVmaW5lCisgICAgICAgIGl0cyBvd24gbWVzc2FnZS4KKyAgICAgICAgKiBHUFVQcm9j
ZXNzL21lZGlhL2dzdHJlYW1lci9SZW1vdGVNZWRpYVBsYXllclByb3h5R1N0cmVhbWVyLmNwcDoK
KyAgICAgICAgTmV3IGZpbGUgd2l0aCBtb2NrdXAgaW1wbGVtZW50YXRpb24uCisgICAgICAgIChX
ZWJLaXQ6OlJlbW90ZU1lZGlhUGxheWVyUHJveHk6Om1lZGlhUGxheWVyRmlyc3RWaWRlb0ZyYW1l
QXZhaWxhYmxlKToKKyAgICAgICAgTmV3IGZ1bmN0aW9uIHRoYXQgcmFpc2Ugbm9JbXBsZW1lbnRl
ZCgpCisgICAgICAgIChXZWJLaXQ6OlJlbW90ZU1lZGlhUGxheWVyUHJveHk6Om1lZGlhUGxheWVy
UmVuZGVyaW5nTW9kZUNoYW5nZWQpOgorICAgICAgICBOZXcgZnVuY3Rpb24gdGhhdCByYWlzZSBu
b0ltcGxlbWVudGVkKCkKKyAgICAgICAgKFdlYktpdDo6UmVtb3RlTWVkaWFQbGF5ZXJQcm94eTo6
ZW50ZXJGdWxsc2NyZWVuKTogTmV3IGZ1bmN0aW9uCisgICAgICAgIHRoYXQgcmFpc2Ugbm9JbXBs
ZW1lbnRlZCgpCisgICAgICAgIChXZWJLaXQ6OlJlbW90ZU1lZGlhUGxheWVyUHJveHk6OmV4aXRG
dWxsc2NyZWVuKTogTmV3IGZ1bmN0aW9uCisgICAgICAgIHRoYXQgcmFpc2Ugbm9JbXBsZW1lbnRl
ZCgpCisgICAgICAgICogU291cmNlc0dUSy50eHQ6IEFkZCB0aGUgbmV3IGZpbGVzIGFuZAorICAg
ICAgICBHUFVQcm9jZXNzL21lZGlhL1JlbW90ZUF1ZGlvRGVzdGluYXRpb25NYW5hZ2VyLmNwcAor
ICAgICAgICAqIFdlYlByb2Nlc3MvR1BVL0dQVVByb2Nlc3NDb25uZWN0aW9uLmNwcDogZ3VhcmQK
KyAgICAgICAgVXNlck1lZGlhQ2FwdHVyZU1hbmFnZXIgZm9yIENvY29hIHBsYXRmb3JtIG9ubHku
CisgICAgICAgIChXZWJLaXQ6OkdQVVByb2Nlc3NDb25uZWN0aW9uOjpkaXNwYXRjaE1lc3NhZ2Up
OiBndWFyZCBtZXNzYWdlcworICAgICAgICBmcm9tIFVzZXJNZWRpYUNhcHR1cmVNYW5hZ2VyIGZv
ciBDb2NvYSBwbGF0Zm9ybSwgbW92aW5nIHVwIHRoaXMKKyAgICAgICAgZ3VhcmQgYXBwbGllZCBh
bHNvIGZvciB2aWRlbyB0cmFjay4KKyAgICAgICAgKiBXZWJQcm9jZXNzL0dQVS9tZWRpYS9NZWRp
YVBsYXllclByaXZhdGVSZW1vdGUuY3BwOgorICAgICAgICAoV2ViS2l0OjpNZWRpYVBsYXllclBy
aXZhdGVSZW1vdGU6OnByZXBhcmVGb3JQbGF5YmFjayk6IGd1YXJkIHRoZQorICAgICAgICBjb250
ZW50ZSBvZiB0aGlzIGZ1bmN0aW9uIHNpbmNlIGl0IHN1c2VzIGEgcHJldmlvdXNseSBndWFyZGVk
IElQQworICAgICAgICBjYWxsLgorICAgICAgICAqIFdlYlByb2Nlc3MvR1BVL21lZGlhL01lZGlh
UGxheWVyUHJpdmF0ZVJlbW90ZS5oOiBndWFyZCBpbmNsdWRlCisgICAgICAgIG9mIExheWVySG9z
dGluZ0NvbnRleHQuaCBmb3IgQ29jb2EgcGxhdGZvcm0sIGFuZCBhIG1lbWJlciB2YXJpYWJsZQor
ICAgICAgICB3aXRoIGEgdHlwZSBkZWZpbmVkIGluIHRoYXQgaGVhZGVyLgorICAgICAgICAqIFdl
YlByb2Nlc3MvR1BVL21lZGlhL1JlbW90ZUNETS5jcHA6IGluY2x1ZGUgbWlzc2luZyBoZWFkZXIK
KyAgICAgICAgR1BVUHJvY2Vzc0Nvbm5lY3Rpb24uaAorICAgICAgICAqIFdlYlByb2Nlc3MvR1BV
L21lZGlhL1ZpZGVvTGF5ZXJSZW1vdGUuaDogZ3VhcmQgdGhlIHdob2xlIGlubGN1ZGUKKyAgICAg
ICAgZmlsZSBmb3IgQ29jb2EgcGxhdGZvcm0gb25seS4KKwogMjAyMC0wNC0wNyAgUm9iIEJ1aXMg
IDxyYnVpc0BpZ2FsaWEuY29tPgogCiAgICAgICAgIFVzZSBHbG9iYWxGcmFtZUlkZW50aWZpZXIg
aW4gTmF2aWdhdGlvbkFjdGlvbgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9HUFVQcm9jZXNz
L0dQVUNvbm5lY3Rpb25Ub1dlYlByb2Nlc3MuY3BwIGIvU291cmNlL1dlYktpdC9HUFVQcm9jZXNz
L0dQVUNvbm5lY3Rpb25Ub1dlYlByb2Nlc3MuY3BwCmluZGV4IDI2ZjczODBjYTUyMmFmZDg0MDJj
NjUzM2U5Mzc3NzU0NjUzMTMwOGIuLjQzMWMzMzkyMTY2ODA0ZWMzMDgxZmJjNmNhZGFiNDU0MTNh
NDEwMDQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvR1BVUHJvY2Vzcy9HUFVDb25uZWN0aW9u
VG9XZWJQcm9jZXNzLmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0L0dQVVByb2Nlc3MvR1BVQ29ubmVj
dGlvblRvV2ViUHJvY2Vzcy5jcHAKQEAgLTczLDcgKzczLDcgQEAKICNpbmNsdWRlICJSZW1vdGVD
RE1Qcm94eU1lc3NhZ2VzLmgiCiAjZW5kaWYKIAotI2lmIEVOQUJMRShNRURJQV9TVFJFQU0pCisj
aWYgUExBVEZPUk0oQ09DT0EpICYmIEVOQUJMRShNRURJQV9TVFJFQU0pCiAjaW5jbHVkZSAiVXNl
ck1lZGlhQ2FwdHVyZU1hbmFnZXJQcm94eS5oIgogI2luY2x1ZGUgIlVzZXJNZWRpYUNhcHR1cmVN
YW5hZ2VyUHJveHlNZXNzYWdlcy5oIgogI2VuZGlmCkBAIC0zNjQsNyArMzY0LDcgQEAgYm9vbCBH
UFVDb25uZWN0aW9uVG9XZWJQcm9jZXNzOjpkaXNwYXRjaE1lc3NhZ2UoSVBDOjpDb25uZWN0aW9u
JiBjb25uZWN0aW9uLCBJUEMKICAgICAgICAgcmVtb3RlTWVkaWFSZXNvdXJjZU1hbmFnZXIoKS5k
aWRSZWNlaXZlTWVzc2FnZShjb25uZWN0aW9uLCBkZWNvZGVyKTsKICAgICAgICAgcmV0dXJuIHRy
dWU7CiAgICAgfQotI2lmIEVOQUJMRShNRURJQV9TVFJFQU0pCisjaWYgUExBVEZPUk0oQ09DT0Ep
ICYmIEVOQUJMRShNRURJQV9TVFJFQU0pCiAgICAgaWYgKGRlY29kZXIubWVzc2FnZVJlY2VpdmVy
TmFtZSgpID09IE1lc3NhZ2VzOjpVc2VyTWVkaWFDYXB0dXJlTWFuYWdlclByb3h5OjptZXNzYWdl
UmVjZWl2ZXJOYW1lKCkpIHsKICAgICAgICAgdXNlck1lZGlhQ2FwdHVyZU1hbmFnZXJQcm94eSgp
LmRpZFJlY2VpdmVNZXNzYWdlRnJvbUdQVVByb2Nlc3MoY29ubmVjdGlvbiwgZGVjb2Rlcik7CiAg
ICAgICAgIHJldHVybiB0cnVlOwpAQCAtMzc3LDcgKzM3Nyw3IEBAIGJvb2wgR1BVQ29ubmVjdGlv
blRvV2ViUHJvY2Vzczo6ZGlzcGF0Y2hNZXNzYWdlKElQQzo6Q29ubmVjdGlvbiYgY29ubmVjdGlv
biwgSVBDCiAgICAgICAgIG1lZGlhUmVjb3JkZXJNYW5hZ2VyKCkuZGlkUmVjZWl2ZVJlbW90ZU1l
ZGlhUmVjb3JkZXJNZXNzYWdlKGNvbm5lY3Rpb24sIGRlY29kZXIpOwogICAgICAgICByZXR1cm4g
dHJ1ZTsKICAgICB9Ci0jaWYgUExBVEZPUk0oQ09DT0EpICYmIEVOQUJMRShWSURFT19UUkFDSykK
KyNpZiBFTkFCTEUoVklERU9fVFJBQ0spCiAgICAgaWYgKGRlY29kZXIubWVzc2FnZVJlY2VpdmVy
TmFtZSgpID09IE1lc3NhZ2VzOjpSZW1vdGVBdWRpb01lZGlhU3RyZWFtVHJhY2tSZW5kZXJlck1h
bmFnZXI6Om1lc3NhZ2VSZWNlaXZlck5hbWUoKSkgewogICAgICAgICBhdWRpb1RyYWNrUmVuZGVy
ZXJNYW5hZ2VyKCkuZGlkUmVjZWl2ZU1lc3NhZ2VGcm9tV2ViUHJvY2Vzcyhjb25uZWN0aW9uLCBk
ZWNvZGVyKTsKICAgICAgICAgcmV0dXJuIHRydWU7CkBAIC00OTcsNyArNDk3LDcgQEAgY29uc3Qg
U3RyaW5nJiBHUFVDb25uZWN0aW9uVG9XZWJQcm9jZXNzOjptZWRpYUNhY2hlRGlyZWN0b3J5KCkg
Y29uc3QKICAgICByZXR1cm4gbV9ncHVQcm9jZXNzLT5tZWRpYUNhY2hlRGlyZWN0b3J5KG1fc2Vz
c2lvbklEKTsKIH0KIAotI2lmIEVOQUJMRShFTkNSWVBURURfTUVESUEpIHx8IEVOQUJMRShMRUdB
Q1lfRU5DUllQVEVEX01FRElBKQorI2lmIEVOQUJMRShMRUdBQ1lfRU5DUllQVEVEX01FRElBKQog
Y29uc3QgU3RyaW5nJiBHUFVDb25uZWN0aW9uVG9XZWJQcm9jZXNzOjptZWRpYUtleXNTdG9yYWdl
RGlyZWN0b3J5KCkgY29uc3QKIHsKICAgICByZXR1cm4gbV9ncHVQcm9jZXNzLT5tZWRpYUtleXNT
dG9yYWdlRGlyZWN0b3J5KG1fc2Vzc2lvbklEKTsKQEAgLTUwNyw3ICs1MDcsOSBAQCBjb25zdCBT
dHJpbmcmIEdQVUNvbm5lY3Rpb25Ub1dlYlByb2Nlc3M6Om1lZGlhS2V5c1N0b3JhZ2VEaXJlY3Rv
cnkoKSBjb25zdAogI2lmIEVOQUJMRShNRURJQV9TVFJFQU0pCiB2b2lkIEdQVUNvbm5lY3Rpb25U
b1dlYlByb2Nlc3M6OnNldE9yaWVudGF0aW9uRm9yTWVkaWFDYXB0dXJlKHVpbnQ2NF90IG9yaWVu
dGF0aW9uKQogeworI2lmIFBMQVRGT1JNKENPQ09BKQogICAgIHVzZXJNZWRpYUNhcHR1cmVNYW5h
Z2VyUHJveHkoKS5zZXRPcmllbnRhdGlvbihvcmllbnRhdGlvbik7CisjZW5kaWYKIH0KIAogdm9p
ZCBHUFVDb25uZWN0aW9uVG9XZWJQcm9jZXNzOjp1cGRhdGVDYXB0dXJlQWNjZXNzKGJvb2wgYWxs
b3dBdWRpb0NhcHR1cmUsIGJvb2wgYWxsb3dWaWRlb0NhcHR1cmUsIGJvb2wgYWxsb3dEaXNwbGF5
Q2FwdHVyZSkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvR1BVUHJvY2Vzcy9HUFVQcm9jZXNz
LmNwcCBiL1NvdXJjZS9XZWJLaXQvR1BVUHJvY2Vzcy9HUFVQcm9jZXNzLmNwcAppbmRleCBlZjIz
OTVlYzU5Zjc1NTliMTUxOGI2OTZlZjM2NTgyNDZjOTNkMjk2Li4xMmZkZDk2Yzk1YzI0MDI2YjQ2
OTNlY2NkZTM5ZDg4MjIzZmUzYTBjIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L0dQVVByb2Nl
c3MvR1BVUHJvY2Vzcy5jcHAKKysrIGIvU291cmNlL1dlYktpdC9HUFVQcm9jZXNzL0dQVVByb2Nl
c3MuY3BwCkBAIC01Niw3ICs1Niw3IEBACiAjZW5kaWYKIAogI2lmIEVOQUJMRShNRURJQV9TVFJF
QU0pCi0jaW5jbHVkZSA8V2ViQ29yZS9Nb2NrQXVkaW9TaGFyZWRVbml0Lmg+CisjaW5jbHVkZSA8
V2ViQ29yZS9Nb2NrUmVhbHRpbWVNZWRpYVNvdXJjZUNlbnRlci5oPgogI2VuZGlmCiAKIG5hbWVz
cGFjZSBXZWJLaXQgewpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9HUFVQcm9jZXNzL2dzdHJl
YW1lci9HUFVQcm9jZXNzR1N0cmVhbWVyLmNwcCBiL1NvdXJjZS9XZWJLaXQvR1BVUHJvY2Vzcy9n
c3RyZWFtZXIvR1BVUHJvY2Vzc0dTdHJlYW1lci5jcHAKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5k
ZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uNGY4ODkyOTI2MWZk
YTg4MzQ0MDQ4NTlhMjE5OTBkYmMyNWIyM2U0MwotLS0gL2Rldi9udWxsCisrKyBiL1NvdXJjZS9X
ZWJLaXQvR1BVUHJvY2Vzcy9nc3RyZWFtZXIvR1BVUHJvY2Vzc0dTdHJlYW1lci5jcHAKQEAgLTAs
MCArMSw1MCBAQAorLyoKKyAqIENvcHlyaWdodCAoQykgMjAyMCBJZ2FsaWEgUy5MLgorICoKKyAq
IFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGgg
b3Igd2l0aG91dAorICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQg
dGhlIGZvbGxvd2luZyBjb25kaXRpb25zCisgKiBhcmUgbWV0OgorICogMS4gUmVkaXN0cmlidXRp
b25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAg
IG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xh
aW1lci4KKyAqIDIuIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVj
ZSB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRp
b25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCisgKiAgICBkb2N1bWVudGF0
aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9u
LgorICoKKyAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgVEhFIENPUFlSSUdIVCBIT0xE
RVJTIGBgQVMgSVMnJworICogQU5EIEFOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywg
SU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sCisgKiBUSEUgSU1QTElFRCBXQVJSQU5USUVT
IE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSCisgKiBQVVJQ
T1NFIEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBBUFBMRSBJTkMuIE9SIElUUyBD
T05UUklCVVRPUlMKKyAqIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lE
RU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IKKyAqIENPTlNFUVVFTlRJQUwgREFNQUdFUyAo
SU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GCisgKiBTVUJTVElU
VVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1Ig
QlVTSU5FU1MKKyAqIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVP
UlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOCisgKiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElU
WSwgT1IgVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKQorICogQVJJU0lO
RyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURW
SVNFRCBPRgorICogVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgorICovCisKKyNpbmNs
dWRlICJjb25maWcuaCIKKyNpbmNsdWRlICJHUFVQcm9jZXNzLmgiCisKKyNpZiBFTkFCTEUoR1BV
X1BST0NFU1MpICYmIFVTRShHU1RSRUFNRVIpCisKKyNpbmNsdWRlICJHUFVQcm9jZXNzQ3JlYXRp
b25QYXJhbWV0ZXJzLmgiCisKK25hbWVzcGFjZSBXZWJLaXQgeworCit2b2lkIEdQVVByb2Nlc3M6
OmluaXRpYWxpemVQcm9jZXNzKGNvbnN0IEF1eGlsaWFyeVByb2Nlc3NJbml0aWFsaXphdGlvblBh
cmFtZXRlcnMmKQoreworfQorCit2b2lkIEdQVVByb2Nlc3M6OmluaXRpYWxpemVQcm9jZXNzTmFt
ZShjb25zdCBBdXhpbGlhcnlQcm9jZXNzSW5pdGlhbGl6YXRpb25QYXJhbWV0ZXJzJikKK3sKK30K
Kwordm9pZCBHUFVQcm9jZXNzOjppbml0aWFsaXplU2FuZGJveChjb25zdCBBdXhpbGlhcnlQcm9j
ZXNzSW5pdGlhbGl6YXRpb25QYXJhbWV0ZXJzJiwgU2FuZGJveEluaXRpYWxpemF0aW9uUGFyYW1l
dGVycyYpCit7Cit9CisKK30gLy8gbmFtZXNwYWNlIFdlYktpdAorCisjZW5kaWYgLy8gRU5BQkxF
KEdQVV9QUk9DRVNTKQorCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L0dQVVByb2Nlc3MvZ3N0
cmVhbWVyL0dQVVByb2Nlc3NNYWluR1N0cmVhbWVyLmNwcCBiL1NvdXJjZS9XZWJLaXQvR1BVUHJv
Y2Vzcy9nc3RyZWFtZXIvR1BVUHJvY2Vzc01haW5HU3RyZWFtZXIuY3BwCm5ldyBmaWxlIG1vZGUg
MTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjE1
NWFiNmU4OGY1ZjZiNzllZjNiY2Q1ODQ4N2I3NWM3YTlkZTRkYzYKLS0tIC9kZXYvbnVsbAorKysg
Yi9Tb3VyY2UvV2ViS2l0L0dQVVByb2Nlc3MvZ3N0cmVhbWVyL0dQVVByb2Nlc3NNYWluR1N0cmVh
bWVyLmNwcApAQCAtMCwwICsxLDYwIEBACisvKgorICogQ29weXJpZ2h0IChDKSAyMDIwIElnYWxp
YSBTLkwuCisgKgorICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFy
eSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CisgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQg
cHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKKyAqIGFyZSBtZXQ6CisgKiAx
LiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNv
cHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZv
bGxvd2luZyBkaXNjbGFpbWVyLgorICogMi4gUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3Jt
IG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBs
aXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKKyAq
ICAgIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRo
ZSBkaXN0cmlidXRpb24uCisgKgorICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBUSEUg
Q09QWVJJR0hUIEhPTERFUlMgYGBBUyBJUycnCisgKiBBTkQgQU5ZIEVYUFJFU1MgT1IgSU1QTElF
RCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywKKyAqIFRIRSBJTVBM
SUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJ
Q1VMQVIKKyAqIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIEFQUExF
IElOQy4gT1IgSVRTIENPTlRSSUJVVE9SUworICogQkUgTElBQkxFIEZPUiBBTlkgRElSRUNULCBJ
TkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUgorICogQ09OU0VRVUVO
VElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQg
T0YKKyAqIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLCBEQVRBLCBP
UiBQUk9GSVRTOyBPUiBCVVNJTkVTUworICogSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBB
TkQgT04gQU5ZIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4KKyAqIENPTlRSQUNULCBT
VFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJ
U0UpCisgKiBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FS
RSwgRVZFTiBJRiBBRFZJU0VEIE9GCisgKiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0Uu
CisgKi8KKworI2luY2x1ZGUgImNvbmZpZy5oIgorI2luY2x1ZGUgIkdQVVByb2Nlc3NNYWluLmgi
CisKKyNpZiBFTkFCTEUoR1BVX1BST0NFU1MpICYmIFVTRShHU1RSRUFNRVIpCisKKyNpbmNsdWRl
ICJBdXhpbGlhcnlQcm9jZXNzTWFpbi5oIgorI2luY2x1ZGUgIkdQVVByb2Nlc3MuaCIKKworbmFt
ZXNwYWNlIFdlYktpdCB7CisKK3N0YXRpYyBSZWZQdHI8R1BVUHJvY2Vzcz4gZ2xvYmFsR1BVUHJv
Y2VzczsKKworY2xhc3MgR1BVUHJvY2Vzc01haW5HU3RyZWFtZXIgZmluYWw6IHB1YmxpYyBBdXhp
bGlhcnlQcm9jZXNzTWFpbkJhc2UgeworcHVibGljOgorICAgIGJvb2wgcGxhdGZvcm1Jbml0aWFs
aXplKCkgb3ZlcnJpZGUKKyAgICB7CisgICAgICAgIHJldHVybiB0cnVlOworICAgIH0KK307CisK
K3RlbXBsYXRlPD4KK3ZvaWQgaW5pdGlhbGl6ZUF1eGlsaWFyeVByb2Nlc3M8R1BVUHJvY2Vzcz4o
QXV4aWxpYXJ5UHJvY2Vzc0luaXRpYWxpemF0aW9uUGFyYW1ldGVycyYmIHBhcmFtZXRlcnMpCit7
CisgICAgc3RhdGljIE5ldmVyRGVzdHJveWVkPEdQVVByb2Nlc3M+IGdwdVByb2Nlc3MoV1RGTW92
ZShwYXJhbWV0ZXJzKSk7CisgICAgZ2xvYmFsR1BVUHJvY2VzcyA9ICZncHVQcm9jZXNzLmdldCgp
OworfQorCitpbnQgR1BVUHJvY2Vzc01haW4oaW50IGFyZ2MsIGNoYXIqKiBhcmd2KQoreworICAg
IHJldHVybiBBdXhpbGlhcnlQcm9jZXNzTWFpbjxHUFVQcm9jZXNzLCBHUFVQcm9jZXNzTWFpbkdT
dHJlYW1lcj4oYXJnYywgYXJndik7Cit9CisKK30gLy8gbmFtZXNwYWNlIFdlYktpdAorCisjZW5k
aWYgLy8gRU5BQkxFKEdQVV9QUk9DRVNTKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9HUFVQ
cm9jZXNzL21lZGlhL1JlbW90ZUxlZ2FjeUNETUZhY3RvcnlQcm94eS5jcHAgYi9Tb3VyY2UvV2Vi
S2l0L0dQVVByb2Nlc3MvbWVkaWEvUmVtb3RlTGVnYWN5Q0RNRmFjdG9yeVByb3h5LmNwcAppbmRl
eCAwMTJmZTRkOWJlZTQ2NGE1ODY3NmIyMDc1YTdkNjc5MTc4YmRjMGFmLi5mNWQ1MDgzYzhjMDc1
ZmRhZWVjN2JiNzcxYjU1YTg1MTY5MmIxNWI1IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L0dQ
VVByb2Nlc3MvbWVkaWEvUmVtb3RlTGVnYWN5Q0RNRmFjdG9yeVByb3h5LmNwcAorKysgYi9Tb3Vy
Y2UvV2ViS2l0L0dQVVByb2Nlc3MvbWVkaWEvUmVtb3RlTGVnYWN5Q0RNRmFjdG9yeVByb3h5LmNw
cApAQCAtMjYsNyArMjYsNyBAQAogI2luY2x1ZGUgImNvbmZpZy5oIgogI2luY2x1ZGUgIlJlbW90
ZUxlZ2FjeUNETUZhY3RvcnlQcm94eS5oIgogCi0jaWYgRU5BQkxFKEdQVV9QUk9DRVNTKSAmJiBF
TkFCTEUoRU5DUllQVEVEX01FRElBKQorI2lmIEVOQUJMRShHUFVfUFJPQ0VTUykgJiYgRU5BQkxF
KExFR0FDWV9FTkNSWVBURURfTUVESUEpCiAKICNpbmNsdWRlICJSZW1vdGVMZWdhY3lDRE1Qcm94
eS5oIgogI2luY2x1ZGUgIlJlbW90ZUxlZ2FjeUNETVByb3h5TWVzc2FnZXMuaCIKZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJLaXQvR1BVUHJvY2Vzcy9tZWRpYS9SZW1vdGVNZWRpYVBsYXllclByb3h5
LmNwcCBiL1NvdXJjZS9XZWJLaXQvR1BVUHJvY2Vzcy9tZWRpYS9SZW1vdGVNZWRpYVBsYXllclBy
b3h5LmNwcAppbmRleCBmNjQyOWYyYmQxNTQyMTY0MWVmZGE3Njc2ZDAwMzg3OWRhNzAyY2NjLi45
OTk5MjRjZTg0N2Q0YTdkOWU2NWQxZjZmZmZkZWU1OWQ1OWQzYmY2IDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViS2l0L0dQVVByb2Nlc3MvbWVkaWEvUmVtb3RlTWVkaWFQbGF5ZXJQcm94eS5jcHAKKysr
IGIvU291cmNlL1dlYktpdC9HUFVQcm9jZXNzL21lZGlhL1JlbW90ZU1lZGlhUGxheWVyUHJveHku
Y3BwCkBAIC0zMCw3ICszMCw2IEBACiAKICNpbmNsdWRlICJEYXRhUmVmZXJlbmNlLmgiCiAjaW5j
bHVkZSAiR1BVQ29ubmVjdGlvblRvV2ViUHJvY2Vzcy5oIgotI2luY2x1ZGUgIkxheWVySG9zdGlu
Z0NvbnRleHQuaCIKICNpbmNsdWRlICJNZWRpYVBsYXllclByaXZhdGVSZW1vdGVNZXNzYWdlcy5o
IgogI2luY2x1ZGUgIlJlbW90ZUF1ZGlvVHJhY2tQcm94eS5oIgogI2luY2x1ZGUgIlJlbW90ZUxl
Z2FjeUNETUZhY3RvcnlQcm94eS5oIgpAQCAtNTksNiArNTgsMTAgQEAKICNpbmNsdWRlIDxXZWJD
b3JlL01lZGlhUGxheWJhY2tUYXJnZXRNb2NrLmg+CiAjZW5kaWYKIAorI2lmIFBMQVRGT1JNKENP
Q09BKQorI2luY2x1ZGUgIkxheWVySG9zdGluZ0NvbnRleHQuaCIKKyNlbmRpZgorCiBuYW1lc3Bh
Y2UgV2ViS2l0IHsKIAogdXNpbmcgbmFtZXNwYWNlIFdlYkNvcmU7CmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViS2l0L0dQVVByb2Nlc3MvbWVkaWEvUmVtb3RlTWVkaWFQbGF5ZXJQcm94eS5oIGIvU291
cmNlL1dlYktpdC9HUFVQcm9jZXNzL21lZGlhL1JlbW90ZU1lZGlhUGxheWVyUHJveHkuaAppbmRl
eCBkMGE3YWMxNzBkYjM1ZDNjOWU3MGQ2NmMzZTIzM2I2MWZiMDI4MjNiLi45ZDA5NGNkYWU5Yzg5
M2IxOGFjNDg1MmY0NDQ5MTRjNWVmNmRhNTk4IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L0dQ
VVByb2Nlc3MvbWVkaWEvUmVtb3RlTWVkaWFQbGF5ZXJQcm94eS5oCisrKyBiL1NvdXJjZS9XZWJL
aXQvR1BVUHJvY2Vzcy9tZWRpYS9SZW1vdGVNZWRpYVBsYXllclByb3h5LmgKQEAgLTI3OCw4ICsy
NzgsMTAgQEAgcHJpdmF0ZToKICAgICBSZWZQdHI8U2FuZGJveEV4dGVuc2lvbj4gbV9zYW5kYm94
RXh0ZW5zaW9uOwogICAgIFJlZjxJUEM6OkNvbm5lY3Rpb24+IG1fd2ViUHJvY2Vzc0Nvbm5lY3Rp
b247CiAgICAgUmVmUHRyPFdlYkNvcmU6Ok1lZGlhUGxheWVyPiBtX3BsYXllcjsKKyNpZiBQTEFU
Rk9STShDT0NPQSkKICAgICBzdGQ6OnVuaXF1ZV9wdHI8TGF5ZXJIb3N0aW5nQ29udGV4dD4gbV9p
bmxpbmVMYXllckhvc3RpbmdDb250ZXh0OwogICAgIHN0ZDo6dW5pcXVlX3B0cjxMYXllckhvc3Rp
bmdDb250ZXh0PiBtX2Z1bGxzY3JlZW5MYXllckhvc3RpbmdDb250ZXh0OworI2VuZGlmCiAgICAg
UmVtb3RlTWVkaWFQbGF5ZXJNYW5hZ2VyUHJveHkmIG1fbWFuYWdlcjsKICAgICBXZWJDb3JlOjpN
ZWRpYVBsYXllckVudW1zOjpNZWRpYUVuZ2luZUlkZW50aWZpZXIgbV9lbmdpbmVJZGVudGlmaWVy
OwogICAgIFZlY3RvcjxXZWJDb3JlOjpDb250ZW50VHlwZT4gbV90eXBlc1JlcXVpcmluZ0hhcmR3
YXJlU3VwcG9ydDsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvR1BVUHJvY2Vzcy9tZWRpYS9S
ZW1vdGVNZWRpYVBsYXllclByb3h5Lm1lc3NhZ2VzLmluIGIvU291cmNlL1dlYktpdC9HUFVQcm9j
ZXNzL21lZGlhL1JlbW90ZU1lZGlhUGxheWVyUHJveHkubWVzc2FnZXMuaW4KaW5kZXggYjAyMmY1
NmU1MDI4MTg5MzNiMjcxNzljYWIzMjc2ZWU5NTc3ZjI1OC4uZWVmYjhjZDE0NDI3NjczZDJlYzBi
YmZjZDBlNjcyNmZjOGEwMTUyMyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9HUFVQcm9jZXNz
L21lZGlhL1JlbW90ZU1lZGlhUGxheWVyUHJveHkubWVzc2FnZXMuaW4KKysrIGIvU291cmNlL1dl
YktpdC9HUFVQcm9jZXNzL21lZGlhL1JlbW90ZU1lZGlhUGxheWVyUHJveHkubWVzc2FnZXMuaW4K
QEAgLTI0LDcgKzI0LDkgQEAKICNpZiBFTkFCTEUoR1BVX1BST0NFU1MpCiAKIG1lc3NhZ2VzIC0+
IFJlbW90ZU1lZGlhUGxheWVyUHJveHkgTm90UmVmQ291bnRlZCB7CisjaWYgUExBVEZPUk0oQ09D
T0EpCiAgICAgUHJlcGFyZUZvclBsYXliYWNrKGJvb2wgcHJpdmF0ZU1vZGUsIGVudW06dWludDhf
dCBXZWJDb3JlOjpNZWRpYVBsYXllckVudW1zOjpQcmVsb2FkIHByZWxvYWQsIGJvb2wgcHJlc2Vy
dmVzUGl0Y2gsIGJvb2wgcHJlcGFyZUZvclJlbmRlcmluZywgZmxvYXQgdmlkZW9Db250ZW50U2Nh
bGUpIC0+IChPcHRpb25hbDxXZWJLaXQ6OkxheWVySG9zdGluZ0NvbnRleHRJRD4gaW5saW5lTGF5
ZXJIb3N0aW5nQ29udGV4dElkLCBPcHRpb25hbDxXZWJLaXQ6OkxheWVySG9zdGluZ0NvbnRleHRJ
RD4gZnVsbHNjcmVlbkxheWVySG9zdGluZ0NvbnRleHRJZCkgQXN5bmMKKyNlbmRpZgogCiAgICAg
TG9hZChVUkwgdXJsLCBPcHRpb25hbDxXZWJLaXQ6OlNhbmRib3hFeHRlbnNpb246OkhhbmRsZT4g
c2FuZGJveEV4dGVuc2lvbiwgV2ViQ29yZTo6Q29udGVudFR5cGUgY29udGVudFR5cGUsIFN0cmlu
ZyBrZXlTeXN0ZW0pIC0+IChzdHJ1Y3QgV2ViS2l0OjpSZW1vdGVNZWRpYVBsYXllckNvbmZpZ3Vy
YXRpb24gcGxheWVyQ29uZmlndXJhdGlvbikgQXN5bmMKICAgICBDYW5jZWxMb2FkKCkKZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJLaXQvR1BVUHJvY2Vzcy9tZWRpYS9nc3RyZWFtZXIvUmVtb3RlTWVk
aWFQbGF5ZXJQcm94eUdTdHJlYW1lci5jcHAgYi9Tb3VyY2UvV2ViS2l0L0dQVVByb2Nlc3MvbWVk
aWEvZ3N0cmVhbWVyL1JlbW90ZU1lZGlhUGxheWVyUHJveHlHU3RyZWFtZXIuY3BwCm5ldyBmaWxl
IG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAuLjI3ZjlhMjIyYzg0YWRhM2JlYjQ3MmQwMDc4OTE5ZWI0NmM3YzdlYTQKLS0tIC9kZXYvbnVs
bAorKysgYi9Tb3VyY2UvV2ViS2l0L0dQVVByb2Nlc3MvbWVkaWEvZ3N0cmVhbWVyL1JlbW90ZU1l
ZGlhUGxheWVyUHJveHlHU3RyZWFtZXIuY3BwCkBAIC0wLDAgKzEsNTggQEAKKy8qCisgKiBDb3B5
cmlnaHQgKEMpIDIwMjAgSWdhbGlhIFMuTC4KKyAqCisgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNl
IGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKKyAqIG1vZGlmaWNh
dGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9u
cworICogYXJlIG1ldDoKKyAqIDEuIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0
IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBj
b25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisgKiAyLiBSZWRpc3RyaWJ1
dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAor
ICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBk
aXNjbGFpbWVyIGluIHRoZQorICogICAgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJp
YWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KKyAqCisgKiBUSElTIFNPRlRXQVJF
IElTIFBST1ZJREVEIEJZIFRIRSBDT1BZUklHSFQgSE9MREVSUyBgYEFTIElTJycKKyAqIEFORCBB
TlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1J
VEVEIFRPLAorICogVEhFIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5E
IEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUgorICogUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4g
Tk8gRVZFTlQgU0hBTEwgQVBQTEUgSU5DLiBPUiBJVFMgQ09OVFJJQlVUT1JTCisgKiBCRSBMSUFC
TEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExB
UlksIE9SCisgKiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1J
VEVEIFRPLCBQUk9DVVJFTUVOVCBPRgorICogU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsg
TE9TUyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTCisgKiBJTlRFUlJVUFRJ
T04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhF
UiBJTgorICogQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQgKElOQ0xVRElORyBO
RUdMSUdFTkNFIE9SIE9USEVSV0lTRSkKKyAqIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhF
IFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YKKyAqIFRIRSBQT1NTSUJJ
TElUWSBPRiBTVUNIIERBTUFHRS4KKyAqLworCisjaW5jbHVkZSAiY29uZmlnLmgiCisjaW5jbHVk
ZSAiUmVtb3RlTWVkaWFQbGF5ZXJQcm94eS5oIgorCisjaWYgRU5BQkxFKEdQVV9QUk9DRVNTKSAm
JiBVU0UoR1NUUkVBTUVSKQorCisjaW5jbHVkZSA8V2ViQ29yZS9Ob3RJbXBsZW1lbnRlZC5oPgor
CituYW1lc3BhY2UgV2ViS2l0IHsKKwordm9pZCBSZW1vdGVNZWRpYVBsYXllclByb3h5OjptZWRp
YVBsYXllckZpcnN0VmlkZW9GcmFtZUF2YWlsYWJsZSgpCit7CisgICAgbm90SW1wbGVtZW50ZWQo
KTsKK30KKwordm9pZCBSZW1vdGVNZWRpYVBsYXllclByb3h5OjptZWRpYVBsYXllclJlbmRlcmlu
Z01vZGVDaGFuZ2VkKCkKK3sKKyAgICBub3RJbXBsZW1lbnRlZCgpOworfQorCit2b2lkIFJlbW90
ZU1lZGlhUGxheWVyUHJveHk6OmVudGVyRnVsbHNjcmVlbihDb21wbGV0aW9uSGFuZGxlcjx2b2lk
KCk+JiYgY29tcGxldGlvbkhhbmRsZXIpCit7CisgICAgbm90SW1wbGVtZW50ZWQoKTsKK30KKwor
dm9pZCBSZW1vdGVNZWRpYVBsYXllclByb3h5OjpleGl0RnVsbHNjcmVlbihDb21wbGV0aW9uSGFu
ZGxlcjx2b2lkKCk+JiYgY29tcGxldGlvbkhhbmRsZXIpCit7CisgICAgbm90SW1wbGVtZW50ZWQo
KTsKK30KKworfSAvLyBuYW1lc3BhY2UgV2ViS2l0CisKKworI2VuZGlmIC8vIEVOQUJMRShHUFVf
UFJPQ0VTUykKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvU291cmNlc0dUSy50eHQgYi9Tb3Vy
Y2UvV2ViS2l0L1NvdXJjZXNHVEsudHh0CmluZGV4IGViYTM0NjE0ZmUwZmRjZWU1M2MxZWRjNGU5
NDBjNDFiYmQyNDAyN2MuLjVlYTc1ODhhOTljODViYTI2MWYwMWMxZWVlYjgyZWRhMmJkMjBjMTMg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvU291cmNlc0dUSy50eHQKKysrIGIvU291cmNlL1dl
YktpdC9Tb3VyY2VzR1RLLnR4dApAQCAtMjEsNiArMjEsMTEgQEAKIC8vIEFSSVNJTkcgSU4gQU5Z
IFdBWSBPVVQgT0YgVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YK
IC8vIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KIAorR1BVUHJvY2Vzcy9nc3RyZWFt
ZXIvR1BVUHJvY2Vzc0dTdHJlYW1lci5jcHAKK0dQVVByb2Nlc3MvZ3N0cmVhbWVyL0dQVVByb2Nl
c3NNYWluR1N0cmVhbWVyLmNwcAorR1BVUHJvY2Vzcy9tZWRpYS9nc3RyZWFtZXIvUmVtb3RlTWVk
aWFQbGF5ZXJQcm94eUdTdHJlYW1lci5jcHAKK0dQVVByb2Nlc3MvbWVkaWEvUmVtb3RlQXVkaW9E
ZXN0aW5hdGlvbk1hbmFnZXIuY3BwCisKIE5ldHdvcmtQcm9jZXNzL0NsYXNzaWZpZXIvV2ViUmVz
b3VyY2VMb2FkU3RhdGlzdGljc1N0b3JlLmNwcAogTmV0d29ya1Byb2Nlc3MvQ2xhc3NpZmllci9X
ZWJSZXNvdXJjZUxvYWRTdGF0aXN0aWNzVGVsZW1ldHJ5LmNwcAogCmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViS2l0L1dlYlByb2Nlc3MvR1BVL0dQVVByb2Nlc3NDb25uZWN0aW9uLmNwcCBiL1NvdXJj
ZS9XZWJLaXQvV2ViUHJvY2Vzcy9HUFUvR1BVUHJvY2Vzc0Nvbm5lY3Rpb24uY3BwCmluZGV4IGRk
ODVkMTdhNDYwMWMxMjY1Yjg4ODVmYzk5NDg1MjAwMjIwMTBiMGUuLmRiZTU4MTk5ZTQ3YzZhNmU1
MGIxOTAxYTViM2UyYzNiZWRlMTIwMjEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvV2ViUHJv
Y2Vzcy9HUFUvR1BVUHJvY2Vzc0Nvbm5lY3Rpb24uY3BwCisrKyBiL1NvdXJjZS9XZWJLaXQvV2Vi
UHJvY2Vzcy9HUFUvR1BVUHJvY2Vzc0Nvbm5lY3Rpb24uY3BwCkBAIC01MCw3ICs1MCw3IEBACiAj
aW5jbHVkZSAiUmVtb3RlQ0RNSW5zdGFuY2VTZXNzaW9uTWVzc2FnZXMuaCIKICNlbmRpZgogCi0j
aWYgRU5BQkxFKE1FRElBX1NUUkVBTSkKKyNpZiBQTEFURk9STShDT0NPQSkgJiYgRU5BQkxFKE1F
RElBX1NUUkVBTSkKICNpbmNsdWRlICJVc2VyTWVkaWFDYXB0dXJlTWFuYWdlci5oIgogI2luY2x1
ZGUgIlVzZXJNZWRpYUNhcHR1cmVNYW5hZ2VyTWVzc2FnZXMuaCIKICNlbmRpZgpAQCAtMTEyLDE5
ICsxMTIsMTkgQEAgYm9vbCBHUFVQcm9jZXNzQ29ubmVjdGlvbjo6ZGlzcGF0Y2hNZXNzYWdlKElQ
Qzo6Q29ubmVjdGlvbiYgY29ubmVjdGlvbiwgSVBDOjpEZWMKICAgICAgICAgcmV0dXJuIHRydWU7
CiAgICAgfQogCi0jaWYgRU5BQkxFKE1FRElBX1NUUkVBTSkKKyNpZiBQTEFURk9STShDT0NPQSkg
JiYgRU5BQkxFKE1FRElBX1NUUkVBTSkKICAgICBpZiAoZGVjb2Rlci5tZXNzYWdlUmVjZWl2ZXJO
YW1lKCkgPT0gTWVzc2FnZXM6OlVzZXJNZWRpYUNhcHR1cmVNYW5hZ2VyOjptZXNzYWdlUmVjZWl2
ZXJOYW1lKCkpIHsKICAgICAgICAgaWYgKGF1dG8qIGNhcHR1cmVNYW5hZ2VyID0gV2ViUHJvY2Vz
czo6c2luZ2xldG9uKCkuc3VwcGxlbWVudDxVc2VyTWVkaWFDYXB0dXJlTWFuYWdlcj4oKSkKICAg
ICAgICAgICAgIGNhcHR1cmVNYW5hZ2VyLT5kaWRSZWNlaXZlTWVzc2FnZUZyb21HUFVQcm9jZXNz
KGNvbm5lY3Rpb24sIGRlY29kZXIpOwogICAgICAgICByZXR1cm4gdHJ1ZTsKICAgICB9Ci0jaWYg
UExBVEZPUk0oQ09DT0EpICYmIEVOQUJMRShWSURFT19UUkFDSykKKyNpZiBFTkFCTEUoVklERU9f
VFJBQ0spCiAgICAgaWYgKGRlY29kZXIubWVzc2FnZVJlY2VpdmVyTmFtZSgpID09IE1lc3NhZ2Vz
OjpTYW1wbGVCdWZmZXJEaXNwbGF5TGF5ZXI6Om1lc3NhZ2VSZWNlaXZlck5hbWUoKSkgewogICAg
ICAgICBzYW1wbGVCdWZmZXJEaXNwbGF5TGF5ZXJNYW5hZ2VyKCkuZGlkUmVjZWl2ZUxheWVyTWVz
c2FnZShjb25uZWN0aW9uLCBkZWNvZGVyKTsKICAgICAgICAgcmV0dXJuIHRydWU7CiAgICAgfQot
I2VuZGlmIC8vIFBMQVRGT1JNKENPQ09BKSAmJiBFTkFCTEUoVklERU9fVFJBQ0spCi0jZW5kaWYg
Ly8gRU5BQkxFKE1FRElBX1NUUkVBTSkKKyNlbmRpZiAvLyBFTkFCTEUoVklERU9fVFJBQ0spCisj
ZW5kaWYgLy8gUExBVEZPUk0oQ09DT0EpICYmIEVOQUJMRShNRURJQV9TVFJFQU0pCiAjaWYgVVNF
KExJQldFQlJUQykgJiYgUExBVEZPUk0oQ09DT0EpCiAgICAgaWYgKGRlY29kZXIubWVzc2FnZVJl
Y2VpdmVyTmFtZSgpID09IE1lc3NhZ2VzOjpMaWJXZWJSVENDb2RlY3M6Om1lc3NhZ2VSZWNlaXZl
ck5hbWUoKSkgewogICAgICAgICBXZWJQcm9jZXNzOjpzaW5nbGV0b24oKS5saWJXZWJSVENDb2Rl
Y3MoKS5kaWRSZWNlaXZlTWVzc2FnZShjb25uZWN0aW9uLCBkZWNvZGVyKTsKZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9HUFUvbWVkaWEvTWVkaWFQbGF5ZXJQcml2YXRlUmVt
b3RlLmNwcCBiL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9HUFUvbWVkaWEvTWVkaWFQbGF5ZXJQ
cml2YXRlUmVtb3RlLmNwcAppbmRleCA2ODhjNDcxZWM4Mjc3MGNhZmIyYWEwOWNjOTg4ZGUwMGNl
ODljYWJmLi4yYmQ0MWNmOTQ0NWYxOTg0MDkyYzAwNGY3ZWEzNjg3MWQ2ZDRkZGUxIDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvR1BVL21lZGlhL01lZGlhUGxheWVyUHJpdmF0
ZVJlbW90ZS5jcHAKKysrIGIvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL0dQVS9tZWRpYS9NZWRp
YVBsYXllclByaXZhdGVSZW1vdGUuY3BwCkBAIC0xMTksNiArMTE5LDcgQEAgTWVkaWFQbGF5ZXJQ
cml2YXRlUmVtb3RlOjp+TWVkaWFQbGF5ZXJQcml2YXRlUmVtb3RlKCkKIAogdm9pZCBNZWRpYVBs
YXllclByaXZhdGVSZW1vdGU6OnByZXBhcmVGb3JQbGF5YmFjayhib29sIHByaXZhdGVNb2RlLCBN
ZWRpYVBsYXllcjo6UHJlbG9hZCBwcmVsb2FkLCBib29sIHByZXNlcnZlc1BpdGNoLCBib29sIHBy
ZXBhcmUpCiB7CisjaWYgUExBVEZPUk0oQ09DT0EpCiAgICAgYXV0byBzY2FsZSA9IG1fcGxheWVy
LT5wbGF5ZXJDb250ZW50c1NjYWxlKCk7CiAKICAgICBjb25uZWN0aW9uKCkuc2VuZFdpdGhBc3lu
Y1JlcGx5KE1lc3NhZ2VzOjpSZW1vdGVNZWRpYVBsYXllclByb3h5OjpQcmVwYXJlRm9yUGxheWJh
Y2socHJpdmF0ZU1vZGUsIHByZWxvYWQsIHByZXNlcnZlc1BpdGNoLCBwcmVwYXJlLCBzY2FsZSks
IFt3ZWFrVGhpcyA9IG1ha2VXZWFrUHRyKCp0aGlzKSwgdGhpc10oYXV0byBpbmxpbmVMYXllckhv
c3RpbmdDb250ZXh0SWQsIGF1dG8gZnVsbHNjcmVlbkxheWVySG9zdGluZ0NvbnRleHRJZCkgbXV0
YWJsZSB7CkBAIC0xMzIsNiArMTMzLDcgQEAgdm9pZCBNZWRpYVBsYXllclByaXZhdGVSZW1vdGU6
OnByZXBhcmVGb3JQbGF5YmFjayhib29sIHByaXZhdGVNb2RlLCBNZWRpYVBsYXllcjoKIAogICAg
ICAgICBtX2Z1bGxzY3JlZW5MYXllckhvc3RpbmdDb250ZXh0SWQgPSBmdWxsc2NyZWVuTGF5ZXJI
b3N0aW5nQ29udGV4dElkOwogICAgIH0sIG1faWQpOworI2VuZGlmCiB9CiAKIHZvaWQgTWVkaWFQ
bGF5ZXJQcml2YXRlUmVtb3RlOjpNZWRpYVBsYXllclByaXZhdGVSZW1vdGU6OmxvYWQoY29uc3Qg
VVJMJiB1cmwsIGNvbnN0IENvbnRlbnRUeXBlJiBjb250ZW50VHlwZSwgY29uc3QgU3RyaW5nJiBr
ZXlTeXN0ZW0pCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvR1BVL21lZGlh
L01lZGlhUGxheWVyUHJpdmF0ZVJlbW90ZS5oIGIvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL0dQ
VS9tZWRpYS9NZWRpYVBsYXllclByaXZhdGVSZW1vdGUuaAppbmRleCA3ZWM4YjhlYTIxZWM5N2E0
NDcwMGFhNmQ2MjU1ZGViMDMyYjRmYWY0Li40OWI0MTVlYzYxYmNjZmU0ZTM2OGFlYzU3NTNlMDQ1
MjliY2JlZDJlIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvR1BVL21lZGlh
L01lZGlhUGxheWVyUHJpdmF0ZVJlbW90ZS5oCisrKyBiL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vz
cy9HUFUvbWVkaWEvTWVkaWFQbGF5ZXJQcml2YXRlUmVtb3RlLmgKQEAgLTI3LDcgKzI3LDYgQEAK
IAogI2lmIEVOQUJMRShHUFVfUFJPQ0VTUykKIAotI2luY2x1ZGUgIkxheWVySG9zdGluZ0NvbnRl
eHQuaCIKICNpbmNsdWRlICJSZW1vdGVNZWRpYVBsYXllckNvbmZpZ3VyYXRpb24uaCIKICNpbmNs
dWRlICJSZW1vdGVNZWRpYVBsYXllck1hbmFnZXIuaCIKICNpbmNsdWRlICJSZW1vdGVNZWRpYVBs
YXllclN0YXRlLmgiCkBAIC00MCw2ICszOSwxMCBAQAogI2luY2x1ZGUgPHd0Zi9NZWRpYVRpbWUu
aD4KICNpbmNsdWRlIDx3dGYvV2Vha1B0ci5oPgogCisjaWYgUExBVEZPUk0oQ09DT0EpCisjaW5j
bHVkZSAiTGF5ZXJIb3N0aW5nQ29udGV4dC5oIgorI2VuZGlmCisKIG5hbWVzcGFjZSBXVEYgewog
Y2xhc3MgTWFjaFNlbmRSaWdodDsKIH0KQEAgLTM1OSw3ICszNjIsOSBAQCBwcml2YXRlOgogICAg
IFJlZlB0cjxXZWJDb3JlOjpQbGF0Zm9ybU1lZGlhUmVzb3VyY2VMb2FkZXI+IG1fbWVkaWFSZXNv
dXJjZUxvYWRlcjsKICAgICBQbGF0Zm9ybUxheWVyQ29udGFpbmVyIG1fdmlkZW9JbmxpbmVMYXll
cjsKICAgICBQbGF0Zm9ybUxheWVyQ29udGFpbmVyIG1fdmlkZW9GdWxsc2NyZWVuTGF5ZXI7Cisj
aWYgUExBVEZPUk0oQ09DT0EpCiAgICAgT3B0aW9uYWw8TGF5ZXJIb3N0aW5nQ29udGV4dElEPiBt
X2Z1bGxzY3JlZW5MYXllckhvc3RpbmdDb250ZXh0SWQ7CisjZW5kaWYKICAgICBSZW1vdGVNZWRp
YVBsYXllck1hbmFnZXImIG1fbWFuYWdlcjsKICAgICBXZWJDb3JlOjpNZWRpYVBsYXllckVudW1z
OjpNZWRpYUVuZ2luZUlkZW50aWZpZXIgbV9yZW1vdGVFbmdpbmVJZGVudGlmaWVyOwogICAgIE1l
ZGlhUGxheWVyUHJpdmF0ZVJlbW90ZUlkZW50aWZpZXIgbV9pZDsKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJLaXQvV2ViUHJvY2Vzcy9HUFUvbWVkaWEvUmVtb3RlQ0RNLmNwcCBiL1NvdXJjZS9XZWJL
aXQvV2ViUHJvY2Vzcy9HUFUvbWVkaWEvUmVtb3RlQ0RNLmNwcAppbmRleCAwYzkxYjQwZjNiOWM3
NWIzYzExMGI2MzZmNjhjYTU3MDVhMjViNTQ4Li40OWZkMzhkMTgyZTJmOTE1NjMzZmE0MGIzYTE4
YTRmNGE1NzlkZTNlIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvR1BVL21l
ZGlhL1JlbW90ZUNETS5jcHAKKysrIGIvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL0dQVS9tZWRp
YS9SZW1vdGVDRE0uY3BwCkBAIC0yOSw2ICsyOSw3IEBACiAjaWYgRU5BQkxFKEdQVV9QUk9DRVNT
KSAmJiBFTkFCTEUoRU5DUllQVEVEX01FRElBKQogCiAjaW5jbHVkZSAiRGF0YVJlZmVyZW5jZS5o
IgorI2luY2x1ZGUgIkdQVVByb2Nlc3NDb25uZWN0aW9uLmgiCiAjaW5jbHVkZSAiUmVtb3RlQ0RN
SW5zdGFuY2UuaCIKICNpbmNsdWRlICJSZW1vdGVDRE1JbnN0YW5jZUNvbmZpZ3VyYXRpb24uaCIK
ICNpbmNsdWRlICJSZW1vdGVDRE1JbnN0YW5jZUlkZW50aWZpZXIuaCIKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9HUFUvbWVkaWEvVmlkZW9MYXllclJlbW90ZS5oIGIvU291
cmNlL1dlYktpdC9XZWJQcm9jZXNzL0dQVS9tZWRpYS9WaWRlb0xheWVyUmVtb3RlLmgKaW5kZXgg
OTk2YjNmNTYwNDNhNTk5ZDczNmZkNDA5NDNiOWFhOWJiMmQwYTdhOS4uOWU5OTgwN2RmNGRiNjRj
YTlkNjMwNGNjMThhMDYxMzIyMDFmYjJkZCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9XZWJQ
cm9jZXNzL0dQVS9tZWRpYS9WaWRlb0xheWVyUmVtb3RlLmgKKysrIGIvU291cmNlL1dlYktpdC9X
ZWJQcm9jZXNzL0dQVS9tZWRpYS9WaWRlb0xheWVyUmVtb3RlLmgKQEAgLTI1LDcgKzI1LDcgQEAK
IAogI3ByYWdtYSBvbmNlCiAKLSNpZiBFTkFCTEUoR1BVX1BST0NFU1MpCisjaWYgUExBVEZPUk0o
Q09DT0EpICYmIEVOQUJMRShHUFVfUFJPQ0VTUykKIAogI2luY2x1ZGUgIkxheWVySG9zdGluZ0Nv
bnRleHQuaCIKICNpbmNsdWRlIDxXZWJDb3JlL1BsYXRmb3JtTGF5ZXIuaD4KZGlmZiAtLWdpdCBh
L1NvdXJjZS9jbWFrZS9PcHRpb25zR1RLLmNtYWtlIGIvU291cmNlL2NtYWtlL09wdGlvbnNHVEsu
Y21ha2UKaW5kZXggMmI1NDZlYjA0ZmY1ZGViOTM2OThmMzkzOWYwMGIwMWJlMGVlOWFiNC4uN2Ez
OTAzMmQ3YzM4ZDI1NDhiMThkYjcxOGVhOWI2YTFmYjNiNGVhNCAxMDA2NDQKLS0tIGEvU291cmNl
L2NtYWtlL09wdGlvbnNHVEsuY21ha2UKKysrIGIvU291cmNlL2NtYWtlL09wdGlvbnNHVEsuY21h
a2UKQEAgLTE1NywxMiArMTU3LDE2IEBAIFdFQktJVF9PUFRJT05fREVGQVVMVF9QT1JUX1ZBTFVF
KEVOQUJMRV9XRUJEUklWRVIgUFVCTElDIE9OKQogIyBDaGFuZ2luZyB0aGVzZSBvcHRpb25zIGlz
IGNvbXBsZXRlbHkgdW5zdXBwb3J0ZWQuCiBXRUJLSVRfT1BUSU9OX0RFRkFVTFRfUE9SVF9WQUxV
RShFTkFCTEVfQVVUT0NBUElUQUxJWkUgUFJJVkFURSBPTikKIFdFQktJVF9PUFRJT05fREVGQVVM
VF9QT1JUX1ZBTFVFKEVOQUJMRV9DT05URU5UX0VYVEVOU0lPTlMgUFJJVkFURSBPTikKK1dFQktJ
VF9PUFRJT05fREVGQVVMVF9QT1JUX1ZBTFVFKEVOQUJMRV9DU1NfQ09OSUNfR1JBRElFTlRTIFBS
SVZBVEUgT04pCitXRUJLSVRfT1BUSU9OX0RFRkFVTFRfUE9SVF9WQUxVRShFTkFCTEVfQ1NTX1BB
SU5USU5HX0FQSSBQUklWQVRFICR7RU5BQkxFX0VYUEVSSU1FTlRBTF9GRUFUVVJFU30pCitXRUJL
SVRfT1BUSU9OX0RFRkFVTFRfUE9SVF9WQUxVRShFTkFCTEVfQ1NTX1RZUEVEX09NIFBSSVZBVEUg
JHtFTkFCTEVfRVhQRVJJTUVOVEFMX0ZFQVRVUkVTfSkKIFdFQktJVF9PUFRJT05fREVGQVVMVF9Q
T1JUX1ZBTFVFKEVOQUJMRV9DVVJTT1JfVklTSUJJTElUWSBQUklWQVRFIE9OKQogV0VCS0lUX09Q
VElPTl9ERUZBVUxUX1BPUlRfVkFMVUUoRU5BQkxFX0RBUktfTU9ERV9DU1MgUFJJVkFURSBPTikK
IFdFQktJVF9PUFRJT05fREVGQVVMVF9QT1JUX1ZBTFVFKEVOQUJMRV9EQVRBTElTVF9FTEVNRU5U
IFBSSVZBVEUgT04pCiBXRUJLSVRfT1BUSU9OX0RFRkFVTFRfUE9SVF9WQUxVRShFTkFCTEVfRE9X
TkxPQURfQVRUUklCVVRFIFBSSVZBVEUgT04pCiBXRUJLSVRfT1BUSU9OX0RFRkFVTFRfUE9SVF9W
QUxVRShFTkFCTEVfRU5DUllQVEVEX01FRElBIFBSSVZBVEUgJHtFTkFCTEVfRVhQRVJJTUVOVEFM
X0ZFQVRVUkVTfSkKIFdFQktJVF9PUFRJT05fREVGQVVMVF9QT1JUX1ZBTFVFKEVOQUJMRV9GVFBE
SVIgUFJJVkFURSBPRkYpCitXRUJLSVRfT1BUSU9OX0RFRkFVTFRfUE9SVF9WQUxVRShFTkFCTEVf
R1BVX1BST0NFU1MgUFJJVkFURSAke0VOQUJMRV9FWFBFUklNRU5UQUxfRkVBVFVSRVN9KQogV0VC
S0lUX09QVElPTl9ERUZBVUxUX1BPUlRfVkFMVUUoRU5BQkxFX0lOUFVUX1RZUEVfQ09MT1IgUFJJ
VkFURSBPTikKIFdFQktJVF9PUFRJT05fREVGQVVMVF9QT1JUX1ZBTFVFKEVOQUJMRV9MQVlPVVRf
Rk9STUFUVElOR19DT05URVhUIFBSSVZBVEUgJHtFTkFCTEVfRVhQRVJJTUVOVEFMX0ZFQVRVUkVT
fSkKIFdFQktJVF9PUFRJT05fREVGQVVMVF9QT1JUX1ZBTFVFKEVOQUJMRV9NRURJQV9TVFJFQU0g
UFJJVkFURSAke0VOQUJMRV9FWFBFUklNRU5UQUxfRkVBVFVSRVN9KQpAQCAtMTc0LDkgKzE3OCw2
IEBAIFdFQktJVF9PUFRJT05fREVGQVVMVF9QT1JUX1ZBTFVFKEVOQUJMRV9QT0lOVEVSX0xPQ0sg
UFJJVkFURSBPTikKIFdFQktJVF9PUFRJT05fREVGQVVMVF9QT1JUX1ZBTFVFKEVOQUJMRV9TRVJW
SUNFX1dPUktFUiBQUklWQVRFIE9OKQogV0VCS0lUX09QVElPTl9ERUZBVUxUX1BPUlRfVkFMVUUo
RU5BQkxFX1NIQVJFQUJMRV9SRVNPVVJDRSBQVUJMSUMgT04pCiBXRUJLSVRfT1BUSU9OX0RFRkFV
TFRfUE9SVF9WQUxVRShFTkFCTEVfV0VCX1JUQyBQUklWQVRFICR7RU5BQkxFX0VYUEVSSU1FTlRB
TF9GRUFUVVJFU30pCi1XRUJLSVRfT1BUSU9OX0RFRkFVTFRfUE9SVF9WQUxVRShFTkFCTEVfQ1NT
X1BBSU5USU5HX0FQSSBQUklWQVRFICR7RU5BQkxFX0VYUEVSSU1FTlRBTF9GRUFUVVJFU30pCi1X
RUJLSVRfT1BUSU9OX0RFRkFVTFRfUE9SVF9WQUxVRShFTkFCTEVfQ1NTX1RZUEVEX09NIFBSSVZB
VEUgJHtFTkFCTEVfRVhQRVJJTUVOVEFMX0ZFQVRVUkVTfSkKLVdFQktJVF9PUFRJT05fREVGQVVM
VF9QT1JUX1ZBTFVFKEVOQUJMRV9DU1NfQ09OSUNfR1JBRElFTlRTIFBSSVZBVEUgT04pCiAKIGlu
Y2x1ZGUoR1N0cmVhbWVyRGVwZW5kZW5jaWVzKQogCmRpZmYgLS1naXQgYS9DaGFuZ2VMb2cgYi9D
aGFuZ2VMb2cKaW5kZXggNTQ0NmU3NmVmNTFlODU0YTRmNzg0OGFhZmI5NjRkY2M4ODkyMGVkYi4u
NjEwOWU0MzExNDFlNzg2Y2U0M2E0NzY2ODdiMTZhMDdmZTg0M2Q5YyAxMDA2NDQKLS0tIGEvQ2hh
bmdlTG9nCisrKyBiL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE3IEBACisyMDIwLTA0LTA3ICBWw61j
dG9yIE1hbnVlbCBKw6FxdWV6IExlYWwgIDx2amFxdWV6QGlnYWxpYS5jb20+CisKKyAgICAgICAg
W0dQVVBdW0dUS10gY29tcGlsZSBHUFVQcm9jZXNzIGluIEdUSyBwb3J0CisgICAgICAgIGh0dHBz
Oi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMDg4MTQKKworICAgICAgICBSZXZp
ZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBFbmFibGUgR1BVUHJvY2VzcyBjb21w
aWxhdGlvbiBpbiBXZWJLaXRHVEsgYXMgYW4gZXhwZXJpbWVudGFsCisgICAgICAgIGZlYXR1cmUK
KworICAgICAgICAqIFNvdXJjZS9jbWFrZS9PcHRpb25zR1RLLmNtYWtlOiBzb3J0IGFscGhhYmV0
aWNhbGx5IFdlYktpdAorICAgICAgICBvcHRpb25zIGZvciBHVEsgcG9ydCBhbmQgZW5hYmxlIEdQ
VV9QUk9DRVNTIGlmIGV4cGVyaW1lbnRhbAorICAgICAgICBmZWF0dXJlcyBvcHRpb24gaXMgZW5h
YmxlZC4KKwogMjAyMC0wNC0wNiAgRG9uIE9sbXN0ZWFkICA8ZG9uLm9sbXN0ZWFkQHNvbnkuY29t
PgogCiAgICAgICAgIFtDTWFrZV0gVXNlIFdFQktJVF9FWEVDVVRBQkxFIGluIER1bXBSZW5kZXJU
cmVlCg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>395785</attachid>
            <date>2020-04-08 02:52:52 -0700</date>
            <delta_ts>2020-04-08 08:10:42 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-208814-20200408115251.patch</filename>
            <type>text/plain</type>
            <size>23816</size>
            <attacher name="Víctor M. Jáquez L.">vjaquez</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjU5NzExCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L0No
YW5nZUxvZyBiL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCmluZGV4IGYzMWFiNjliMGJiNWY1MWVk
MTdlNmQ4NWIxYmMyZGY4NWIzNTQxMmUuLjcyNWRjYWU0NzgyOWNjYjhjZDUxMDAwODZiZWQ5MTgx
OWQ0ZjVmNjYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCisrKyBiL1NvdXJj
ZS9XZWJLaXQvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsNjMgQEAKKzIwMjAtMDQtMDggIFbDrWN0b3Ig
TWFudWVsIErDoXF1ZXogTGVhbCAgPHZqYXF1ZXpAaWdhbGlhLmNvbT4KKworICAgICAgICBbR1BV
UF1bR1RLXSBjb21waWxlIEdQVVByb2Nlc3MgaW4gR1RLIHBvcnQKKyAgICAgICAgaHR0cHM6Ly9i
dWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIwODgxNAorCisgICAgICAgIFJldmlld2Vk
IGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIEVuYWJsZSBHUFVQcm9jZXNzIGNvbXBpbGF0
aW9uIGluIFdlYktpdEdUSyBhcyBhbiBleHBlcmltZW50YWwKKyAgICAgICAgZmVhdHVyZQorCisg
ICAgICAgIE5vIG5ldyB0ZXN0cyByZXF1aXJlZC4KKworICAgICAgICAqIEdQVVByb2Nlc3MvR1BV
Q29ubmVjdGlvblRvV2ViUHJvY2Vzcy5jcHA6IGd1YXJkCisgICAgICAgIFVzZXJNZWRpYUNhcHR1
cmVNYW5hZ2VyUHJveHkgZm9yIENvY29hIHBsYXRmb3JtIG9ubHkuCisgICAgICAgIChXZWJLaXQ6
OkdQVUNvbm5lY3Rpb25Ub1dlYlByb2Nlc3M6OmRpc3BhdGNoTWVzc2FnZSk6IGd1YXJkCisgICAg
ICAgIG1lc3NhZ2VzIGZyb20gVXNlck1lZGlhQ2FwdHVyZU1hbmFnZXJQcm94eSBmb3IgQ29jb2Eg
cGxhdGZvcm0sCisgICAgICAgIG1vdmluZyB1cCB0aGlzIGd1YXJkIGZyb20gdmlkZW8gdHJhY2sg
bWVzc2FnZXMuCisgICAgICAgIChXZWJLaXQ6OkdQVUNvbm5lY3Rpb25Ub1dlYlByb2Nlc3M6Om1l
ZGlhS2V5U3RvcmFnZURpcmVjdG9yeSk6CisgICAgICAgIHJlbW92ZWQgZ3VhcmQgZm9yIHRoaXMg
ZnVuY3Rpb24gb2YgRU5DUllQVEVEX01FRElBIGxlYXZpbmcgb25seQorICAgICAgICBMRUdBQ1lf
RU5DUllQVEVEX01FRElBLCBzaW5jZSBpdCdzIHdlcmUgaXQgaXMgZGVmaW5lZC4KKyAgICAgICAg
KFdlYktpdDo6R1BVQ29ubmVjdGlvblRvV2ViUHJvY2Vzczo6c2V0T3JpZW50YXRpb25Gb3JNZWRp
YUNhcHR1cmUpOgorICAgICAgICBndWFyZCB0aGUgY29udGVudCBvZiB0aGlzIGZ1bmN0aW9uIGZv
ciBDb2NvYSBwbGF0Zm9ybSwgc2luY2UgaXQgaXMKKyAgICAgICAgY2FsbGluZyBhIFVzZXJNZWRp
YUNhcHR1cmVNYW5hZ2VyUHJveHkgb2JqZWN0LgorICAgICAgICAqIEdQVVByb2Nlc3MvR1BVUHJv
Y2Vzcy5jcHA6IFJlcGxhY2UgdGhlIGluY2x1ZGVkIGhlYWRlciB0byBtYXRjaAorICAgICAgICB3
aXRoIHRoZSB1c2VkIHN5bWJvbHMgaW4gZmlsZS4KKyAgICAgICAgKiBHUFVQcm9jZXNzL2dzdHJl
YW1lci9HUFVQcm9jZXNzR1N0cmVhbWVyLmNwcDogQWRkZWQuCisgICAgICAgIChXZWJLaXQ6OkdQ
VVByb2Nlc3M6OmluaXRpYWxpemVQcm9jZXNzKTogRW1wdHkgZnVuY3Rpb24uCisgICAgICAgIChX
ZWJLaXQ6OkdQVVByb2Nlc3M6OmluaXRpYWxpemVQcm9jZXNzTmFtZSk6IEVtcHR5IGZ1bmN0aW9u
LgorICAgICAgICAoV2ViS2l0OjpHUFVQcm9jZXNzOjppbml0aWFsaXplU2FuZGJveCk6IEVtcHR5
IGZ1bmN0aW9uLgorICAgICAgICAqIEdQVVByb2Nlc3MvZ3N0cmVhbWVyL0dQVVByb2Nlc3NNYWlu
R1N0cmVhbWVyLmNwcDogQWRkZWQuCisgICAgICAgIChXZWJLaXQ6OmluaXRpYWxpemVBdXhpbGlh
cnlQcm9jZXNzPEdQVVByb2Nlc3M+KTogTmV3IGZ1bmN0aW9uLgorICAgICAgICAoV2ViS2l0OjpH
UFVQcm9jZXNzTWFpbik6IE5ldyBmdW5jdGlvbi4KKyAgICAgICAgKiBHUFVQcm9jZXNzL21lZGlh
L1JlbW90ZUxlZ2FjeUNETUZhY3RvcnlQcm94eS5jcHA6IGNoYW5nZWQgZ3VhcmQKKyAgICAgICAg
Zm9yIHRoaXMgZmlsZSBmcm9tIEVOQ1JZUFRFRF9NRURJQSB0byBMRUdBQ1lfRU5DUllQVEVEX01F
RElBIHRvCisgICAgICAgIG1hdGNoIHdpdGggaXRzIGhlYWRlciBmaWxlLgorICAgICAgICAqIEdQ
VVByb2Nlc3MvbWVkaWEvZ3N0cmVhbWVyL1JlbW90ZU1lZGlhUGxheWVyUHJveHlHU3RyZWFtZXIu
Y3BwOiBBZGRlZC4KKyAgICAgICAgKFdlYktpdDo6UmVtb3RlTWVkaWFQbGF5ZXJQcm94eTo6cHJl
cGFyZUZvclBsYXliYWNrKToKKyAgICAgICAgTmV3IGZ1bmN0aW9uIHRoYXQgcmFpc2Ugbm9JbXBs
ZW1lbnRlZCgpCisgICAgICAgIChXZWJLaXQ6OlJlbW90ZU1lZGlhUGxheWVyUHJveHk6Om1lZGlh
UGxheWVyRmlyc3RWaWRlb0ZyYW1lQXZhaWxhYmxlKToKKyAgICAgICAgTmV3IGZ1bmN0aW9uIHRo
YXQgcmFpc2Ugbm9JbXBsZW1lbnRlZCgpCisgICAgICAgIChXZWJLaXQ6OlJlbW90ZU1lZGlhUGxh
eWVyUHJveHk6Om1lZGlhUGxheWVyUmVuZGVyaW5nTW9kZUNoYW5nZWQpOgorICAgICAgICBOZXcg
ZnVuY3Rpb24gdGhhdCByYWlzZSBub0ltcGxlbWVudGVkKCkKKyAgICAgICAgKFdlYktpdDo6UmVt
b3RlTWVkaWFQbGF5ZXJQcm94eTo6ZW50ZXJGdWxsc2NyZWVuKTogTmV3IGZ1bmN0aW9uCisgICAg
ICAgIHRoYXQgcmFpc2Ugbm9JbXBsZW1lbnRlZCgpCisgICAgICAgIChXZWJLaXQ6OlJlbW90ZU1l
ZGlhUGxheWVyUHJveHk6OmV4aXRGdWxsc2NyZWVuKTogTmV3IGZ1bmN0aW9uCisgICAgICAgIHRo
YXQgcmFpc2Ugbm9JbXBsZW1lbnRlZCgpCisgICAgICAgICogUGxhdGZvcm1HVEsuY21ha2U6IGFk
ZCBQbGF0Zm9ybS9nZW5lcmljIGhlYWRlciBkaXJlY3RvcnkuCisgICAgICAgICogU291cmNlc0dU
Sy50eHQ6IEFkZCB0aGUgbmV3IGZpbGVzIGFuZAorICAgICAgICBHUFVQcm9jZXNzL21lZGlhL1Jl
bW90ZUF1ZGlvRGVzdGluYXRpb25NYW5hZ2VyLmNwcAorICAgICAgICAqIFdlYlByb2Nlc3MvR1BV
L0dQVVByb2Nlc3NDb25uZWN0aW9uLmNwcDogZ3VhcmQKKyAgICAgICAgVXNlck1lZGlhQ2FwdHVy
ZU1hbmFnZXIgZm9yIENvY29hIHBsYXRmb3JtIG9ubHkuCisgICAgICAgIChXZWJLaXQ6OkdQVVBy
b2Nlc3NDb25uZWN0aW9uOjpkaXNwYXRjaE1lc3NhZ2UpOiBndWFyZCBtZXNzYWdlcworICAgICAg
ICBmcm9tIFVzZXJNZWRpYUNhcHR1cmVNYW5hZ2VyIGZvciBDb2NvYSBwbGF0Zm9ybSwgbW92aW5n
IHVwIHRoaXMKKyAgICAgICAgZ3VhcmQgYXBwbGllZCBhbHNvIGZvciB2aWRlbyB0cmFjay4KKyAg
ICAgICAgKiBXZWJQcm9jZXNzL0dQVS9tZWRpYS9SZW1vdGVDRE0uY3BwOiBpbmNsdWRlIG1pc3Np
bmcgaGVhZGVyCisgICAgICAgIEdQVVByb2Nlc3NDb25uZWN0aW9uLmgKKyAgICAgICAgKiBXZWJQ
cm9jZXNzL0dQVS9tZWRpYS9nc3RyZWFtZXIvVmlkZW9MYXllclJlbW90ZUdTdHJlYW1lci5jcHA6
IEFkZGVkLgorICAgICAgICAoV2ViS2l0OjpjcmVhdGVWaWRlb0xheWVyUmVtb3RlKTogTmV3IGZ1
bmN0aW9uCisgICAgICAgIHRoYXQgcmFpc2Ugbm9JbXBsZW1lbnRlZCgpCisKIDIwMjAtMDQtMDgg
IEtlaXRoIFJvbGxpbiAgPGtyb2xsaW5AYXBwbGUuY29tPgogCiAgICAgICAgIEVuYWJsZSB0aGUg
dXNlIG9mIFhDQnVpbGQgYnkgZGVmYXVsdCBpbiBBcHBsZSBidWlsZHMKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJLaXQvR1BVUHJvY2Vzcy9HUFVDb25uZWN0aW9uVG9XZWJQcm9jZXNzLmNwcCBiL1Nv
dXJjZS9XZWJLaXQvR1BVUHJvY2Vzcy9HUFVDb25uZWN0aW9uVG9XZWJQcm9jZXNzLmNwcAppbmRl
eCAyNmY3MzgwY2E1MjJhZmQ4NDAyYzY1MzNlOTM3Nzc1NDY1MzEzMDhiLi40MzFjMzM5MjE2Njgw
NGVjMzA4MWZiYzZjYWRhYjQ1NDEzYTQxMDA0IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L0dQ
VVByb2Nlc3MvR1BVQ29ubmVjdGlvblRvV2ViUHJvY2Vzcy5jcHAKKysrIGIvU291cmNlL1dlYktp
dC9HUFVQcm9jZXNzL0dQVUNvbm5lY3Rpb25Ub1dlYlByb2Nlc3MuY3BwCkBAIC03Myw3ICs3Myw3
IEBACiAjaW5jbHVkZSAiUmVtb3RlQ0RNUHJveHlNZXNzYWdlcy5oIgogI2VuZGlmCiAKLSNpZiBF
TkFCTEUoTUVESUFfU1RSRUFNKQorI2lmIFBMQVRGT1JNKENPQ09BKSAmJiBFTkFCTEUoTUVESUFf
U1RSRUFNKQogI2luY2x1ZGUgIlVzZXJNZWRpYUNhcHR1cmVNYW5hZ2VyUHJveHkuaCIKICNpbmNs
dWRlICJVc2VyTWVkaWFDYXB0dXJlTWFuYWdlclByb3h5TWVzc2FnZXMuaCIKICNlbmRpZgpAQCAt
MzY0LDcgKzM2NCw3IEBAIGJvb2wgR1BVQ29ubmVjdGlvblRvV2ViUHJvY2Vzczo6ZGlzcGF0Y2hN
ZXNzYWdlKElQQzo6Q29ubmVjdGlvbiYgY29ubmVjdGlvbiwgSVBDCiAgICAgICAgIHJlbW90ZU1l
ZGlhUmVzb3VyY2VNYW5hZ2VyKCkuZGlkUmVjZWl2ZU1lc3NhZ2UoY29ubmVjdGlvbiwgZGVjb2Rl
cik7CiAgICAgICAgIHJldHVybiB0cnVlOwogICAgIH0KLSNpZiBFTkFCTEUoTUVESUFfU1RSRUFN
KQorI2lmIFBMQVRGT1JNKENPQ09BKSAmJiBFTkFCTEUoTUVESUFfU1RSRUFNKQogICAgIGlmIChk
ZWNvZGVyLm1lc3NhZ2VSZWNlaXZlck5hbWUoKSA9PSBNZXNzYWdlczo6VXNlck1lZGlhQ2FwdHVy
ZU1hbmFnZXJQcm94eTo6bWVzc2FnZVJlY2VpdmVyTmFtZSgpKSB7CiAgICAgICAgIHVzZXJNZWRp
YUNhcHR1cmVNYW5hZ2VyUHJveHkoKS5kaWRSZWNlaXZlTWVzc2FnZUZyb21HUFVQcm9jZXNzKGNv
bm5lY3Rpb24sIGRlY29kZXIpOwogICAgICAgICByZXR1cm4gdHJ1ZTsKQEAgLTM3Nyw3ICszNzcs
NyBAQCBib29sIEdQVUNvbm5lY3Rpb25Ub1dlYlByb2Nlc3M6OmRpc3BhdGNoTWVzc2FnZShJUEM6
OkNvbm5lY3Rpb24mIGNvbm5lY3Rpb24sIElQQwogICAgICAgICBtZWRpYVJlY29yZGVyTWFuYWdl
cigpLmRpZFJlY2VpdmVSZW1vdGVNZWRpYVJlY29yZGVyTWVzc2FnZShjb25uZWN0aW9uLCBkZWNv
ZGVyKTsKICAgICAgICAgcmV0dXJuIHRydWU7CiAgICAgfQotI2lmIFBMQVRGT1JNKENPQ09BKSAm
JiBFTkFCTEUoVklERU9fVFJBQ0spCisjaWYgRU5BQkxFKFZJREVPX1RSQUNLKQogICAgIGlmIChk
ZWNvZGVyLm1lc3NhZ2VSZWNlaXZlck5hbWUoKSA9PSBNZXNzYWdlczo6UmVtb3RlQXVkaW9NZWRp
YVN0cmVhbVRyYWNrUmVuZGVyZXJNYW5hZ2VyOjptZXNzYWdlUmVjZWl2ZXJOYW1lKCkpIHsKICAg
ICAgICAgYXVkaW9UcmFja1JlbmRlcmVyTWFuYWdlcigpLmRpZFJlY2VpdmVNZXNzYWdlRnJvbVdl
YlByb2Nlc3MoY29ubmVjdGlvbiwgZGVjb2Rlcik7CiAgICAgICAgIHJldHVybiB0cnVlOwpAQCAt
NDk3LDcgKzQ5Nyw3IEBAIGNvbnN0IFN0cmluZyYgR1BVQ29ubmVjdGlvblRvV2ViUHJvY2Vzczo6
bWVkaWFDYWNoZURpcmVjdG9yeSgpIGNvbnN0CiAgICAgcmV0dXJuIG1fZ3B1UHJvY2Vzcy0+bWVk
aWFDYWNoZURpcmVjdG9yeShtX3Nlc3Npb25JRCk7CiB9CiAKLSNpZiBFTkFCTEUoRU5DUllQVEVE
X01FRElBKSB8fCBFTkFCTEUoTEVHQUNZX0VOQ1JZUFRFRF9NRURJQSkKKyNpZiBFTkFCTEUoTEVH
QUNZX0VOQ1JZUFRFRF9NRURJQSkKIGNvbnN0IFN0cmluZyYgR1BVQ29ubmVjdGlvblRvV2ViUHJv
Y2Vzczo6bWVkaWFLZXlzU3RvcmFnZURpcmVjdG9yeSgpIGNvbnN0CiB7CiAgICAgcmV0dXJuIG1f
Z3B1UHJvY2Vzcy0+bWVkaWFLZXlzU3RvcmFnZURpcmVjdG9yeShtX3Nlc3Npb25JRCk7CkBAIC01
MDcsNyArNTA3LDkgQEAgY29uc3QgU3RyaW5nJiBHUFVDb25uZWN0aW9uVG9XZWJQcm9jZXNzOjpt
ZWRpYUtleXNTdG9yYWdlRGlyZWN0b3J5KCkgY29uc3QKICNpZiBFTkFCTEUoTUVESUFfU1RSRUFN
KQogdm9pZCBHUFVDb25uZWN0aW9uVG9XZWJQcm9jZXNzOjpzZXRPcmllbnRhdGlvbkZvck1lZGlh
Q2FwdHVyZSh1aW50NjRfdCBvcmllbnRhdGlvbikKIHsKKyNpZiBQTEFURk9STShDT0NPQSkKICAg
ICB1c2VyTWVkaWFDYXB0dXJlTWFuYWdlclByb3h5KCkuc2V0T3JpZW50YXRpb24ob3JpZW50YXRp
b24pOworI2VuZGlmCiB9CiAKIHZvaWQgR1BVQ29ubmVjdGlvblRvV2ViUHJvY2Vzczo6dXBkYXRl
Q2FwdHVyZUFjY2Vzcyhib29sIGFsbG93QXVkaW9DYXB0dXJlLCBib29sIGFsbG93VmlkZW9DYXB0
dXJlLCBib29sIGFsbG93RGlzcGxheUNhcHR1cmUpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0
L0dQVVByb2Nlc3MvR1BVUHJvY2Vzcy5jcHAgYi9Tb3VyY2UvV2ViS2l0L0dQVVByb2Nlc3MvR1BV
UHJvY2Vzcy5jcHAKaW5kZXggZWYyMzk1ZWM1OWY3NTU5YjE1MThiNjk2ZWYzNjU4MjQ2YzkzZDI5
Ni4uMTJmZGQ5NmM5NWMyNDAyNmI0NjkzZWNjZGUzOWQ4ODIyM2ZlM2EwYyAxMDA2NDQKLS0tIGEv
U291cmNlL1dlYktpdC9HUFVQcm9jZXNzL0dQVVByb2Nlc3MuY3BwCisrKyBiL1NvdXJjZS9XZWJL
aXQvR1BVUHJvY2Vzcy9HUFVQcm9jZXNzLmNwcApAQCAtNTYsNyArNTYsNyBAQAogI2VuZGlmCiAK
ICNpZiBFTkFCTEUoTUVESUFfU1RSRUFNKQotI2luY2x1ZGUgPFdlYkNvcmUvTW9ja0F1ZGlvU2hh
cmVkVW5pdC5oPgorI2luY2x1ZGUgPFdlYkNvcmUvTW9ja1JlYWx0aW1lTWVkaWFTb3VyY2VDZW50
ZXIuaD4KICNlbmRpZgogCiBuYW1lc3BhY2UgV2ViS2l0IHsKZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJLaXQvR1BVUHJvY2Vzcy9nc3RyZWFtZXIvR1BVUHJvY2Vzc0dTdHJlYW1lci5jcHAgYi9Tb3Vy
Y2UvV2ViS2l0L0dQVVByb2Nlc3MvZ3N0cmVhbWVyL0dQVVByb2Nlc3NHU3RyZWFtZXIuY3BwCm5l
dyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAuLjRmODg5MjkyNjFmZGE4ODM0NDA0ODU5YTIxOTkwZGJjMjViMjNlNDMKLS0tIC9k
ZXYvbnVsbAorKysgYi9Tb3VyY2UvV2ViS2l0L0dQVVByb2Nlc3MvZ3N0cmVhbWVyL0dQVVByb2Nl
c3NHU3RyZWFtZXIuY3BwCkBAIC0wLDAgKzEsNTAgQEAKKy8qCisgKiBDb3B5cmlnaHQgKEMpIDIw
MjAgSWdhbGlhIFMuTC4KKyAqCisgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBh
bmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKKyAqIG1vZGlmaWNhdGlvbiwgYXJlIHBl
cm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucworICogYXJlIG1l
dDoKKyAqIDEuIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUg
YWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFu
ZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisgKiAyLiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmlu
YXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNl
LCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGlu
IHRoZQorICogICAgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVk
IHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KKyAqCisgKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVE
IEJZIFRIRSBDT1BZUklHSFQgSE9MREVSUyBgYEFTIElTJycKKyAqIEFORCBBTlkgRVhQUkVTUyBP
UiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLAorICog
VEhFIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9S
IEEgUEFSVElDVUxBUgorICogUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hB
TEwgQVBQTEUgSU5DLiBPUiBJVFMgQ09OVFJJQlVUT1JTCisgKiBCRSBMSUFCTEUgRk9SIEFOWSBE
SVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SCisgKiBD
T05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9D
VVJFTUVOVCBPRgorICogU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0Us
IERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTCisgKiBJTlRFUlJVUFRJT04pIEhPV0VWRVIg
Q0FVU0VEIEFORCBPTiBBTlkgVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTgorICogQ09O
VFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNFIE9S
IE9USEVSV0lTRSkKKyAqIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRSBPRiBUSElT
IFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YKKyAqIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNI
IERBTUFHRS4KKyAqLworCisjaW5jbHVkZSAiY29uZmlnLmgiCisjaW5jbHVkZSAiR1BVUHJvY2Vz
cy5oIgorCisjaWYgRU5BQkxFKEdQVV9QUk9DRVNTKSAmJiBVU0UoR1NUUkVBTUVSKQorCisjaW5j
bHVkZSAiR1BVUHJvY2Vzc0NyZWF0aW9uUGFyYW1ldGVycy5oIgorCituYW1lc3BhY2UgV2ViS2l0
IHsKKwordm9pZCBHUFVQcm9jZXNzOjppbml0aWFsaXplUHJvY2Vzcyhjb25zdCBBdXhpbGlhcnlQ
cm9jZXNzSW5pdGlhbGl6YXRpb25QYXJhbWV0ZXJzJikKK3sKK30KKwordm9pZCBHUFVQcm9jZXNz
Ojppbml0aWFsaXplUHJvY2Vzc05hbWUoY29uc3QgQXV4aWxpYXJ5UHJvY2Vzc0luaXRpYWxpemF0
aW9uUGFyYW1ldGVycyYpCit7Cit9CisKK3ZvaWQgR1BVUHJvY2Vzczo6aW5pdGlhbGl6ZVNhbmRi
b3goY29uc3QgQXV4aWxpYXJ5UHJvY2Vzc0luaXRpYWxpemF0aW9uUGFyYW1ldGVycyYsIFNhbmRi
b3hJbml0aWFsaXphdGlvblBhcmFtZXRlcnMmKQoreworfQorCit9IC8vIG5hbWVzcGFjZSBXZWJL
aXQKKworI2VuZGlmIC8vIEVOQUJMRShHUFVfUFJPQ0VTUykKKwpkaWZmIC0tZ2l0IGEvU291cmNl
L1dlYktpdC9HUFVQcm9jZXNzL2dzdHJlYW1lci9HUFVQcm9jZXNzTWFpbkdTdHJlYW1lci5jcHAg
Yi9Tb3VyY2UvV2ViS2l0L0dQVVByb2Nlc3MvZ3N0cmVhbWVyL0dQVVByb2Nlc3NNYWluR1N0cmVh
bWVyLmNwcApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwLi4xNTVhYjZlODhmNWY2Yjc5ZWYzYmNkNTg0ODdiNzVjN2E5ZGU0
ZGM2Ci0tLSAvZGV2L251bGwKKysrIGIvU291cmNlL1dlYktpdC9HUFVQcm9jZXNzL2dzdHJlYW1l
ci9HUFVQcm9jZXNzTWFpbkdTdHJlYW1lci5jcHAKQEAgLTAsMCArMSw2MCBAQAorLyoKKyAqIENv
cHlyaWdodCAoQykgMjAyMCBJZ2FsaWEgUy5MLgorICoKKyAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1
c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAorICogbW9kaWZp
Y2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRp
b25zCisgKiBhcmUgbWV0OgorICogMS4gUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11
c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9m
IGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKyAqIDIuIFJlZGlzdHJp
YnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0
CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5n
IGRpc2NsYWltZXIgaW4gdGhlCisgKiAgICBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRl
cmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgorICoKKyAqIFRISVMgU09GVFdB
UkUgSVMgUFJPVklERUQgQlkgVEhFIENPUFlSSUdIVCBIT0xERVJTIGBgQVMgSVMnJworICogQU5E
IEFOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJ
TUlURUQgVE8sCisgKiBUSEUgSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBB
TkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSCisgKiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiBJ
TiBOTyBFVkVOVCBTSEFMTCBBUFBMRSBJTkMuIE9SIElUUyBDT05UUklCVVRPUlMKKyAqIEJFIExJ
QUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1Q
TEFSWSwgT1IKKyAqIENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJ
TUlURUQgVE8sIFBST0NVUkVNRU5UIE9GCisgKiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VT
OyBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MKKyAqIElOVEVSUlVQ
VElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVU
SEVSIElOCisgKiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVCAoSU5DTFVESU5H
IE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKQorICogQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBU
SEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRgorICogVEhFIFBPU1NJ
QklMSVRZIE9GIFNVQ0ggREFNQUdFLgorICovCisKKyNpbmNsdWRlICJjb25maWcuaCIKKyNpbmNs
dWRlICJHUFVQcm9jZXNzTWFpbi5oIgorCisjaWYgRU5BQkxFKEdQVV9QUk9DRVNTKSAmJiBVU0Uo
R1NUUkVBTUVSKQorCisjaW5jbHVkZSAiQXV4aWxpYXJ5UHJvY2Vzc01haW4uaCIKKyNpbmNsdWRl
ICJHUFVQcm9jZXNzLmgiCisKK25hbWVzcGFjZSBXZWJLaXQgeworCitzdGF0aWMgUmVmUHRyPEdQ
VVByb2Nlc3M+IGdsb2JhbEdQVVByb2Nlc3M7CisKK2NsYXNzIEdQVVByb2Nlc3NNYWluR1N0cmVh
bWVyIGZpbmFsOiBwdWJsaWMgQXV4aWxpYXJ5UHJvY2Vzc01haW5CYXNlIHsKK3B1YmxpYzoKKyAg
ICBib29sIHBsYXRmb3JtSW5pdGlhbGl6ZSgpIG92ZXJyaWRlCisgICAgeworICAgICAgICByZXR1
cm4gdHJ1ZTsKKyAgICB9Cit9OworCit0ZW1wbGF0ZTw+Cit2b2lkIGluaXRpYWxpemVBdXhpbGlh
cnlQcm9jZXNzPEdQVVByb2Nlc3M+KEF1eGlsaWFyeVByb2Nlc3NJbml0aWFsaXphdGlvblBhcmFt
ZXRlcnMmJiBwYXJhbWV0ZXJzKQoreworICAgIHN0YXRpYyBOZXZlckRlc3Ryb3llZDxHUFVQcm9j
ZXNzPiBncHVQcm9jZXNzKFdURk1vdmUocGFyYW1ldGVycykpOworICAgIGdsb2JhbEdQVVByb2Nl
c3MgPSAmZ3B1UHJvY2Vzcy5nZXQoKTsKK30KKworaW50IEdQVVByb2Nlc3NNYWluKGludCBhcmdj
LCBjaGFyKiogYXJndikKK3sKKyAgICByZXR1cm4gQXV4aWxpYXJ5UHJvY2Vzc01haW48R1BVUHJv
Y2VzcywgR1BVUHJvY2Vzc01haW5HU3RyZWFtZXI+KGFyZ2MsIGFyZ3YpOworfQorCit9IC8vIG5h
bWVzcGFjZSBXZWJLaXQKKworI2VuZGlmIC8vIEVOQUJMRShHUFVfUFJPQ0VTUykKZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJLaXQvR1BVUHJvY2Vzcy9tZWRpYS9SZW1vdGVMZWdhY3lDRE1GYWN0b3J5
UHJveHkuY3BwIGIvU291cmNlL1dlYktpdC9HUFVQcm9jZXNzL21lZGlhL1JlbW90ZUxlZ2FjeUNE
TUZhY3RvcnlQcm94eS5jcHAKaW5kZXggMDEyZmU0ZDliZWU0NjRhNTg2NzZiMjA3NWE3ZDY3OTE3
OGJkYzBhZi4uZjVkNTA4M2M4YzA3NWZkYWVlYzdiYjc3MWI1NWE4NTE2OTJiMTViNSAxMDA2NDQK
LS0tIGEvU291cmNlL1dlYktpdC9HUFVQcm9jZXNzL21lZGlhL1JlbW90ZUxlZ2FjeUNETUZhY3Rv
cnlQcm94eS5jcHAKKysrIGIvU291cmNlL1dlYktpdC9HUFVQcm9jZXNzL21lZGlhL1JlbW90ZUxl
Z2FjeUNETUZhY3RvcnlQcm94eS5jcHAKQEAgLTI2LDcgKzI2LDcgQEAKICNpbmNsdWRlICJjb25m
aWcuaCIKICNpbmNsdWRlICJSZW1vdGVMZWdhY3lDRE1GYWN0b3J5UHJveHkuaCIKIAotI2lmIEVO
QUJMRShHUFVfUFJPQ0VTUykgJiYgRU5BQkxFKEVOQ1JZUFRFRF9NRURJQSkKKyNpZiBFTkFCTEUo
R1BVX1BST0NFU1MpICYmIEVOQUJMRShMRUdBQ1lfRU5DUllQVEVEX01FRElBKQogCiAjaW5jbHVk
ZSAiUmVtb3RlTGVnYWN5Q0RNUHJveHkuaCIKICNpbmNsdWRlICJSZW1vdGVMZWdhY3lDRE1Qcm94
eU1lc3NhZ2VzLmgiCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L0dQVVByb2Nlc3MvbWVkaWEv
Z3N0cmVhbWVyL1JlbW90ZU1lZGlhUGxheWVyUHJveHlHU3RyZWFtZXIuY3BwIGIvU291cmNlL1dl
YktpdC9HUFVQcm9jZXNzL21lZGlhL2dzdHJlYW1lci9SZW1vdGVNZWRpYVBsYXllclByb3h5R1N0
cmVhbWVyLmNwcApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwLi45MjcxMDAwYzkzNWY2ZmNiOWQyZDc2M2RjMmNiZDRhODMy
NTMzYzU2Ci0tLSAvZGV2L251bGwKKysrIGIvU291cmNlL1dlYktpdC9HUFVQcm9jZXNzL21lZGlh
L2dzdHJlYW1lci9SZW1vdGVNZWRpYVBsYXllclByb3h5R1N0cmVhbWVyLmNwcApAQCAtMCwwICsx
LDY0IEBACisvKgorICogQ29weXJpZ2h0IChDKSAyMDIwIElnYWxpYSBTLkwuCisgKgorICogUmVk
aXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3
aXRob3V0CisgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUg
Zm9sbG93aW5nIGNvbmRpdGlvbnMKKyAqIGFyZSBtZXQ6CisgKiAxLiBSZWRpc3RyaWJ1dGlvbnMg
b2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90
aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVy
LgorICogMi4gUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRo
ZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMg
YW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKKyAqICAgIGRvY3VtZW50YXRpb24g
YW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCisg
KgorICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBUSEUgQ09QWVJJR0hUIEhPTERFUlMg
YGBBUyBJUycnCisgKiBBTkQgQU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNM
VURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywKKyAqIFRIRSBJTVBMSUVEIFdBUlJBTlRJRVMgT0Yg
TUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIKKyAqIFBVUlBPU0Ug
QVJFIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIEFQUExFIElOQy4gT1IgSVRTIENPTlRS
SUJVVE9SUworICogQkUgTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRB
TCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUgorICogQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNM
VURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YKKyAqIFNVQlNUSVRVVEUg
R09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJ
TkVTUworICogSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZIFRIRU9SWSBP
RiBMSUFCSUxJVFksIFdIRVRIRVIgSU4KKyAqIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBP
UiBUT1JUIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpCisgKiBBUklTSU5HIElO
IEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VE
IE9GCisgKiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCisgKi8KKworI2luY2x1ZGUg
ImNvbmZpZy5oIgorI2luY2x1ZGUgIlJlbW90ZU1lZGlhUGxheWVyUHJveHkuaCIKKworI2lmIEVO
QUJMRShHUFVfUFJPQ0VTUykgJiYgVVNFKEdTVFJFQU1FUikKKworI2luY2x1ZGUgIkxheWVySG9z
dGluZ0NvbnRleHQuaCIKKyNpbmNsdWRlIDxXZWJDb3JlL05vdEltcGxlbWVudGVkLmg+CisKK25h
bWVzcGFjZSBXZWJLaXQgeworCit2b2lkIFJlbW90ZU1lZGlhUGxheWVyUHJveHk6OnByZXBhcmVG
b3JQbGF5YmFjayhib29sLCBXZWJDb3JlOjpNZWRpYVBsYXllckVudW1zOjpQcmVsb2FkLCBib29s
LCBib29sLCBmbG9hdCB2aWRlb0NvbnRlbnRTY2FsZSwgQ29tcGxldGlvbkhhbmRsZXI8dm9pZChP
cHRpb25hbDxMYXllckhvc3RpbmdDb250ZXh0SUQ+JiYgaW5saW5lTGF5ZXJIb3N0aW5nQ29udGV4
dElkLCBPcHRpb25hbDxMYXllckhvc3RpbmdDb250ZXh0SUQ+JiYgZnVsbHNjcmVlbkxheWVySG9z
dGluZ0NvbnRleHRJZCk+JiYpCit7CisgICAgbm90SW1wbGVtZW50ZWQoKTsKK30KKwordm9pZCBS
ZW1vdGVNZWRpYVBsYXllclByb3h5OjptZWRpYVBsYXllckZpcnN0VmlkZW9GcmFtZUF2YWlsYWJs
ZSgpCit7CisgICAgbm90SW1wbGVtZW50ZWQoKTsKK30KKwordm9pZCBSZW1vdGVNZWRpYVBsYXll
clByb3h5OjptZWRpYVBsYXllclJlbmRlcmluZ01vZGVDaGFuZ2VkKCkKK3sKKyAgICBub3RJbXBs
ZW1lbnRlZCgpOworfQorCit2b2lkIFJlbW90ZU1lZGlhUGxheWVyUHJveHk6OmVudGVyRnVsbHNj
cmVlbihDb21wbGV0aW9uSGFuZGxlcjx2b2lkKCk+JiYgY29tcGxldGlvbkhhbmRsZXIpCit7Cisg
ICAgbm90SW1wbGVtZW50ZWQoKTsKK30KKwordm9pZCBSZW1vdGVNZWRpYVBsYXllclByb3h5Ojpl
eGl0RnVsbHNjcmVlbihDb21wbGV0aW9uSGFuZGxlcjx2b2lkKCk+JiYgY29tcGxldGlvbkhhbmRs
ZXIpCit7CisgICAgbm90SW1wbGVtZW50ZWQoKTsKK30KKworfSAvLyBuYW1lc3BhY2UgV2ViS2l0
CisKKworI2VuZGlmIC8vIEVOQUJMRShHUFVfUFJPQ0VTUykKZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJLaXQvUGxhdGZvcm1HVEsuY21ha2UgYi9Tb3VyY2UvV2ViS2l0L1BsYXRmb3JtR1RLLmNtYWtl
CmluZGV4IDRmYzZlYzBmM2RmNWQ1MWZhNDMzNGY0MTNjYjAzZmI2MDkwMzQ4NTkuLmU1MjkzNTVm
NGM0OTkwMTU2MGEzMmQ5ZTBkOWY1NDVhYTA4MDE1OTYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJL
aXQvUGxhdGZvcm1HVEsuY21ha2UKKysrIGIvU291cmNlL1dlYktpdC9QbGF0Zm9ybUdUSy5jbWFr
ZQpAQCAtMzgwLDYgKzM4MCw3IEBAIGxpc3QoQVBQRU5EIFdlYktpdF9JTkNMVURFX0RJUkVDVE9S
SUVTCiAgICAgIiR7V0VCS0lUX0RJUn0vUGxhdGZvcm0vSVBDL2dsaWIiCiAgICAgIiR7V0VCS0lU
X0RJUn0vUGxhdGZvcm0vSVBDL3VuaXgiCiAgICAgIiR7V0VCS0lUX0RJUn0vUGxhdGZvcm0vY2xh
c3NpZmllciIKKyAgICAiJHtXRUJLSVRfRElSfS9QbGF0Zm9ybS9nZW5lcmljIgogICAgICIke1dF
QktJVF9ESVJ9L1NoYXJlZC9BUEkvYy9ndGsiCiAgICAgIiR7V0VCS0lUX0RJUn0vU2hhcmVkL0FQ
SS9nbGliIgogICAgICIke1dFQktJVF9ESVJ9L1NoYXJlZC9Db29yZGluYXRlZEdyYXBoaWNzIgpk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9Tb3VyY2VzR1RLLnR4dCBiL1NvdXJjZS9XZWJLaXQv
U291cmNlc0dUSy50eHQKaW5kZXggZWJhMzQ2MTRmZTBmZGNlZTUzYzFlZGM0ZTk0MGM0MWJiZDI0
MDI3Yy4uMjViMjM3NGZiMDQ1Njk2NmZhYmRlMDI5YjA4ZGQyOWQzYWI0MTJmOCAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYktpdC9Tb3VyY2VzR1RLLnR4dAorKysgYi9Tb3VyY2UvV2ViS2l0L1NvdXJj
ZXNHVEsudHh0CkBAIC0yMSw2ICsyMSwxMyBAQAogLy8gQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBP
RiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRgogLy8gVEhFIFBP
U1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgogCitHUFVQcm9jZXNzL2dzdHJlYW1lci9HUFVQcm9j
ZXNzR1N0cmVhbWVyLmNwcAorR1BVUHJvY2Vzcy9nc3RyZWFtZXIvR1BVUHJvY2Vzc01haW5HU3Ry
ZWFtZXIuY3BwCisKK0dQVVByb2Nlc3MvbWVkaWEvUmVtb3RlQXVkaW9EZXN0aW5hdGlvbk1hbmFn
ZXIuY3BwCisKK0dQVVByb2Nlc3MvbWVkaWEvZ3N0cmVhbWVyL1JlbW90ZU1lZGlhUGxheWVyUHJv
eHlHU3RyZWFtZXIuY3BwCisKIE5ldHdvcmtQcm9jZXNzL0NsYXNzaWZpZXIvV2ViUmVzb3VyY2VM
b2FkU3RhdGlzdGljc1N0b3JlLmNwcAogTmV0d29ya1Byb2Nlc3MvQ2xhc3NpZmllci9XZWJSZXNv
dXJjZUxvYWRTdGF0aXN0aWNzVGVsZW1ldHJ5LmNwcAogCkBAIC0yNjksNiArMjc2LDggQEAgVUlQ
cm9jZXNzL2d0ay9XZWJQcmVmZXJlbmNlc0d0ay5jcHAKIFVJUHJvY2Vzcy9zb3VwL1dlYkNvb2tp
ZU1hbmFnZXJQcm94eVNvdXAuY3BwCiBVSVByb2Nlc3Mvc291cC9XZWJQcm9jZXNzUG9vbFNvdXAu
Y3BwCiAKK1dlYlByb2Nlc3MvR1BVL21lZGlhL2dzdHJlYW1lci9WaWRlb0xheWVyUmVtb3RlR1N0
cmVhbWVyLmNwcAorCiBXZWJQcm9jZXNzL0luamVjdGVkQnVuZGxlL0FQSS9nbGliL0RPTS9ET01P
YmplY3RDYWNoZS5jcHAgQG5vLXVuaWZ5CiBXZWJQcm9jZXNzL0luamVjdGVkQnVuZGxlL0FQSS9n
bGliL0RPTS9XZWJLaXRET01Eb2N1bWVudC5jcHAgQG5vLXVuaWZ5CiBXZWJQcm9jZXNzL0luamVj
dGVkQnVuZGxlL0FQSS9nbGliL0RPTS9XZWJLaXRET01FbGVtZW50LmNwcCBAbm8tdW5pZnkKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9HUFUvR1BVUHJvY2Vzc0Nvbm5lY3Rp
b24uY3BwIGIvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL0dQVS9HUFVQcm9jZXNzQ29ubmVjdGlv
bi5jcHAKaW5kZXggZGQ4NWQxN2E0NjAxYzEyNjViODg4NWZjOTk0ODUyMDAyMjAxMGIwZS4uZGJl
NTgxOTllNDdjNmE2ZTUwYjE5MDFhNWIzZTJjM2JlZGUxMjAyMSAxMDA2NDQKLS0tIGEvU291cmNl
L1dlYktpdC9XZWJQcm9jZXNzL0dQVS9HUFVQcm9jZXNzQ29ubmVjdGlvbi5jcHAKKysrIGIvU291
cmNlL1dlYktpdC9XZWJQcm9jZXNzL0dQVS9HUFVQcm9jZXNzQ29ubmVjdGlvbi5jcHAKQEAgLTUw
LDcgKzUwLDcgQEAKICNpbmNsdWRlICJSZW1vdGVDRE1JbnN0YW5jZVNlc3Npb25NZXNzYWdlcy5o
IgogI2VuZGlmCiAKLSNpZiBFTkFCTEUoTUVESUFfU1RSRUFNKQorI2lmIFBMQVRGT1JNKENPQ09B
KSAmJiBFTkFCTEUoTUVESUFfU1RSRUFNKQogI2luY2x1ZGUgIlVzZXJNZWRpYUNhcHR1cmVNYW5h
Z2VyLmgiCiAjaW5jbHVkZSAiVXNlck1lZGlhQ2FwdHVyZU1hbmFnZXJNZXNzYWdlcy5oIgogI2Vu
ZGlmCkBAIC0xMTIsMTkgKzExMiwxOSBAQCBib29sIEdQVVByb2Nlc3NDb25uZWN0aW9uOjpkaXNw
YXRjaE1lc3NhZ2UoSVBDOjpDb25uZWN0aW9uJiBjb25uZWN0aW9uLCBJUEM6OkRlYwogICAgICAg
ICByZXR1cm4gdHJ1ZTsKICAgICB9CiAKLSNpZiBFTkFCTEUoTUVESUFfU1RSRUFNKQorI2lmIFBM
QVRGT1JNKENPQ09BKSAmJiBFTkFCTEUoTUVESUFfU1RSRUFNKQogICAgIGlmIChkZWNvZGVyLm1l
c3NhZ2VSZWNlaXZlck5hbWUoKSA9PSBNZXNzYWdlczo6VXNlck1lZGlhQ2FwdHVyZU1hbmFnZXI6
Om1lc3NhZ2VSZWNlaXZlck5hbWUoKSkgewogICAgICAgICBpZiAoYXV0byogY2FwdHVyZU1hbmFn
ZXIgPSBXZWJQcm9jZXNzOjpzaW5nbGV0b24oKS5zdXBwbGVtZW50PFVzZXJNZWRpYUNhcHR1cmVN
YW5hZ2VyPigpKQogICAgICAgICAgICAgY2FwdHVyZU1hbmFnZXItPmRpZFJlY2VpdmVNZXNzYWdl
RnJvbUdQVVByb2Nlc3MoY29ubmVjdGlvbiwgZGVjb2Rlcik7CiAgICAgICAgIHJldHVybiB0cnVl
OwogICAgIH0KLSNpZiBQTEFURk9STShDT0NPQSkgJiYgRU5BQkxFKFZJREVPX1RSQUNLKQorI2lm
IEVOQUJMRShWSURFT19UUkFDSykKICAgICBpZiAoZGVjb2Rlci5tZXNzYWdlUmVjZWl2ZXJOYW1l
KCkgPT0gTWVzc2FnZXM6OlNhbXBsZUJ1ZmZlckRpc3BsYXlMYXllcjo6bWVzc2FnZVJlY2VpdmVy
TmFtZSgpKSB7CiAgICAgICAgIHNhbXBsZUJ1ZmZlckRpc3BsYXlMYXllck1hbmFnZXIoKS5kaWRS
ZWNlaXZlTGF5ZXJNZXNzYWdlKGNvbm5lY3Rpb24sIGRlY29kZXIpOwogICAgICAgICByZXR1cm4g
dHJ1ZTsKICAgICB9Ci0jZW5kaWYgLy8gUExBVEZPUk0oQ09DT0EpICYmIEVOQUJMRShWSURFT19U
UkFDSykKLSNlbmRpZiAvLyBFTkFCTEUoTUVESUFfU1RSRUFNKQorI2VuZGlmIC8vIEVOQUJMRShW
SURFT19UUkFDSykKKyNlbmRpZiAvLyBQTEFURk9STShDT0NPQSkgJiYgRU5BQkxFKE1FRElBX1NU
UkVBTSkKICNpZiBVU0UoTElCV0VCUlRDKSAmJiBQTEFURk9STShDT0NPQSkKICAgICBpZiAoZGVj
b2Rlci5tZXNzYWdlUmVjZWl2ZXJOYW1lKCkgPT0gTWVzc2FnZXM6OkxpYldlYlJUQ0NvZGVjczo6
bWVzc2FnZVJlY2VpdmVyTmFtZSgpKSB7CiAgICAgICAgIFdlYlByb2Nlc3M6OnNpbmdsZXRvbigp
LmxpYldlYlJUQ0NvZGVjcygpLmRpZFJlY2VpdmVNZXNzYWdlKGNvbm5lY3Rpb24sIGRlY29kZXIp
OwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL0dQVS9tZWRpYS9SZW1vdGVD
RE0uY3BwIGIvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL0dQVS9tZWRpYS9SZW1vdGVDRE0uY3Bw
CmluZGV4IDBjOTFiNDBmM2I5Yzc1YjNjMTEwYjYzNmY2OGNhNTcwNWEyNWI1NDguLjQ5ZmQzOGQx
ODJlMmY5MTU2MzNmYTQwYjNhMThhNGY0YTU3OWRlM2UgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJL
aXQvV2ViUHJvY2Vzcy9HUFUvbWVkaWEvUmVtb3RlQ0RNLmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0
L1dlYlByb2Nlc3MvR1BVL21lZGlhL1JlbW90ZUNETS5jcHAKQEAgLTI5LDYgKzI5LDcgQEAKICNp
ZiBFTkFCTEUoR1BVX1BST0NFU1MpICYmIEVOQUJMRShFTkNSWVBURURfTUVESUEpCiAKICNpbmNs
dWRlICJEYXRhUmVmZXJlbmNlLmgiCisjaW5jbHVkZSAiR1BVUHJvY2Vzc0Nvbm5lY3Rpb24uaCIK
ICNpbmNsdWRlICJSZW1vdGVDRE1JbnN0YW5jZS5oIgogI2luY2x1ZGUgIlJlbW90ZUNETUluc3Rh
bmNlQ29uZmlndXJhdGlvbi5oIgogI2luY2x1ZGUgIlJlbW90ZUNETUluc3RhbmNlSWRlbnRpZmll
ci5oIgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL0dQVS9tZWRpYS9nc3Ry
ZWFtZXIvVmlkZW9MYXllclJlbW90ZUdTdHJlYW1lci5jcHAgYi9Tb3VyY2UvV2ViS2l0L1dlYlBy
b2Nlc3MvR1BVL21lZGlhL2dzdHJlYW1lci9WaWRlb0xheWVyUmVtb3RlR1N0cmVhbWVyLmNwcApu
ZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwLi4zMzg5YWZjYWMyMDk1ZjNjMDc0NTcyYTdlOWY2NDJjNGJmNDU3NGIyCi0tLSAv
ZGV2L251bGwKKysrIGIvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL0dQVS9tZWRpYS9nc3RyZWFt
ZXIvVmlkZW9MYXllclJlbW90ZUdTdHJlYW1lci5jcHAKQEAgLTAsMCArMSw0MyBAQAorLyoKKyAq
IENvcHlyaWdodCAoQykgMjAyMCBJZ2FsaWEgUy5MLgorICoKKyAqIFJlZGlzdHJpYnV0aW9uIGFu
ZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAorICogbW9k
aWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25k
aXRpb25zCisgKiBhcmUgbWV0OgorICogMS4gUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2Rl
IG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0
IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKyAqIDIuIFJlZGlz
dHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJp
Z2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93
aW5nIGRpc2NsYWltZXIgaW4gdGhlCisgKiAgICBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBt
YXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgorICoKKyAqIFRISVMgU09G
VFdBUkUgSVMgUFJPVklERUQgQlkgVEhFIENPUFlSSUdIVCBIT0xERVJTIGBgQVMgSVMnJworICog
QU5EIEFOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9U
IExJTUlURUQgVE8sCisgKiBUSEUgSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElU
WSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSCisgKiBQVVJQT1NFIEFSRSBESVNDTEFJTUVE
LiBJTiBOTyBFVkVOVCBTSEFMTCBBUFBMRSBJTkMuIE9SIElUUyBDT05UUklCVVRPUlMKKyAqIEJF
IExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVY
RU1QTEFSWSwgT1IKKyAqIENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9U
IExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GCisgKiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJ
Q0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MKKyAqIElOVEVS
UlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkgT0YgTElBQklMSVRZLCBX
SEVUSEVSIElOCisgKiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVCAoSU5DTFVE
SU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKQorICogQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBP
RiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRgorICogVEhFIFBP
U1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgorICovCisKKyNpbmNsdWRlICJjb25maWcuaCIKKyNp
bmNsdWRlICJWaWRlb0xheWVyUmVtb3RlLmgiCisKKyNpZiBFTkFCTEUoR1BVX1BST0NFU1MpCisK
KyNpbmNsdWRlIDxXZWJDb3JlL05vdEltcGxlbWVudGVkLmg+CisKK25hbWVzcGFjZSBXZWJLaXQg
eworCitQbGF0Zm9ybUxheWVyQ29udGFpbmVyIGNyZWF0ZVZpZGVvTGF5ZXJSZW1vdGUoTWVkaWFQ
bGF5ZXJQcml2YXRlUmVtb3RlKiBtZWRpYVBsYXllclByaXZhdGVSZW1vdGUsIExheWVySG9zdGlu
Z0NvbnRleHRJRCBjb250ZXh0SWQpCit7CisgICAgbm90SW1wbGVtZW50ZWQoKTsKKyAgICByZXR1
cm4gbnVsbHB0cjsKK30KKworfQorCisjZW5kaWYKZGlmZiAtLWdpdCBhL1NvdXJjZS9jbWFrZS9P
cHRpb25zR1RLLmNtYWtlIGIvU291cmNlL2NtYWtlL09wdGlvbnNHVEsuY21ha2UKaW5kZXggNmZm
OGMzOTkyMmE0ZjMxMjliNjg3YWUwZjlkMTVkZTNlZGM2NGUwMy4uMDk5NDUzZDg1MzVmMjM5MTE5
NjM2Yjc0MmViM2UzMGZkZTE0ODU5MyAxMDA2NDQKLS0tIGEvU291cmNlL2NtYWtlL09wdGlvbnNH
VEsuY21ha2UKKysrIGIvU291cmNlL2NtYWtlL09wdGlvbnNHVEsuY21ha2UKQEAgLTE1NiwxMiAr
MTU2LDE2IEBAIFdFQktJVF9PUFRJT05fREVGQVVMVF9QT1JUX1ZBTFVFKEVOQUJMRV9XRUJEUklW
RVIgUFVCTElDIE9OKQogIyBDaGFuZ2luZyB0aGVzZSBvcHRpb25zIGlzIGNvbXBsZXRlbHkgdW5z
dXBwb3J0ZWQuCiBXRUJLSVRfT1BUSU9OX0RFRkFVTFRfUE9SVF9WQUxVRShFTkFCTEVfQVVUT0NB
UElUQUxJWkUgUFJJVkFURSBPTikKIFdFQktJVF9PUFRJT05fREVGQVVMVF9QT1JUX1ZBTFVFKEVO
QUJMRV9DT05URU5UX0VYVEVOU0lPTlMgUFJJVkFURSBPTikKK1dFQktJVF9PUFRJT05fREVGQVVM
VF9QT1JUX1ZBTFVFKEVOQUJMRV9DU1NfQ09OSUNfR1JBRElFTlRTIFBSSVZBVEUgT04pCitXRUJL
SVRfT1BUSU9OX0RFRkFVTFRfUE9SVF9WQUxVRShFTkFCTEVfQ1NTX1BBSU5USU5HX0FQSSBQUklW
QVRFICR7RU5BQkxFX0VYUEVSSU1FTlRBTF9GRUFUVVJFU30pCitXRUJLSVRfT1BUSU9OX0RFRkFV
TFRfUE9SVF9WQUxVRShFTkFCTEVfQ1NTX1RZUEVEX09NIFBSSVZBVEUgJHtFTkFCTEVfRVhQRVJJ
TUVOVEFMX0ZFQVRVUkVTfSkKIFdFQktJVF9PUFRJT05fREVGQVVMVF9QT1JUX1ZBTFVFKEVOQUJM
RV9DVVJTT1JfVklTSUJJTElUWSBQUklWQVRFIE9OKQogV0VCS0lUX09QVElPTl9ERUZBVUxUX1BP
UlRfVkFMVUUoRU5BQkxFX0RBUktfTU9ERV9DU1MgUFJJVkFURSBPTikKIFdFQktJVF9PUFRJT05f
REVGQVVMVF9QT1JUX1ZBTFVFKEVOQUJMRV9EQVRBTElTVF9FTEVNRU5UIFBSSVZBVEUgT04pCiBX
RUJLSVRfT1BUSU9OX0RFRkFVTFRfUE9SVF9WQUxVRShFTkFCTEVfRE9XTkxPQURfQVRUUklCVVRF
IFBSSVZBVEUgT04pCiBXRUJLSVRfT1BUSU9OX0RFRkFVTFRfUE9SVF9WQUxVRShFTkFCTEVfRU5D
UllQVEVEX01FRElBIFBSSVZBVEUgJHtFTkFCTEVfRVhQRVJJTUVOVEFMX0ZFQVRVUkVTfSkKIFdF
QktJVF9PUFRJT05fREVGQVVMVF9QT1JUX1ZBTFVFKEVOQUJMRV9GVFBESVIgUFJJVkFURSBPRkYp
CitXRUJLSVRfT1BUSU9OX0RFRkFVTFRfUE9SVF9WQUxVRShFTkFCTEVfR1BVX1BST0NFU1MgUFJJ
VkFURSAke0VOQUJMRV9FWFBFUklNRU5UQUxfRkVBVFVSRVN9KQogV0VCS0lUX09QVElPTl9ERUZB
VUxUX1BPUlRfVkFMVUUoRU5BQkxFX0lOUFVUX1RZUEVfQ09MT1IgUFJJVkFURSBPTikKIFdFQktJ
VF9PUFRJT05fREVGQVVMVF9QT1JUX1ZBTFVFKEVOQUJMRV9MQVlPVVRfRk9STUFUVElOR19DT05U
RVhUIFBSSVZBVEUgJHtFTkFCTEVfRVhQRVJJTUVOVEFMX0ZFQVRVUkVTfSkKIFdFQktJVF9PUFRJ
T05fREVGQVVMVF9QT1JUX1ZBTFVFKEVOQUJMRV9NRURJQV9TVFJFQU0gUFJJVkFURSAke0VOQUJM
RV9FWFBFUklNRU5UQUxfRkVBVFVSRVN9KQpAQCAtMTczLDkgKzE3Nyw2IEBAIFdFQktJVF9PUFRJ
T05fREVGQVVMVF9QT1JUX1ZBTFVFKEVOQUJMRV9QT0lOVEVSX0xPQ0sgUFJJVkFURSBPTikKIFdF
QktJVF9PUFRJT05fREVGQVVMVF9QT1JUX1ZBTFVFKEVOQUJMRV9TRVJWSUNFX1dPUktFUiBQUklW
QVRFIE9OKQogV0VCS0lUX09QVElPTl9ERUZBVUxUX1BPUlRfVkFMVUUoRU5BQkxFX1NIQVJFQUJM
RV9SRVNPVVJDRSBQVUJMSUMgT04pCiBXRUJLSVRfT1BUSU9OX0RFRkFVTFRfUE9SVF9WQUxVRShF
TkFCTEVfV0VCX1JUQyBQUklWQVRFICR7RU5BQkxFX0VYUEVSSU1FTlRBTF9GRUFUVVJFU30pCi1X
RUJLSVRfT1BUSU9OX0RFRkFVTFRfUE9SVF9WQUxVRShFTkFCTEVfQ1NTX1BBSU5USU5HX0FQSSBQ
UklWQVRFICR7RU5BQkxFX0VYUEVSSU1FTlRBTF9GRUFUVVJFU30pCi1XRUJLSVRfT1BUSU9OX0RF
RkFVTFRfUE9SVF9WQUxVRShFTkFCTEVfQ1NTX1RZUEVEX09NIFBSSVZBVEUgJHtFTkFCTEVfRVhQ
RVJJTUVOVEFMX0ZFQVRVUkVTfSkKLVdFQktJVF9PUFRJT05fREVGQVVMVF9QT1JUX1ZBTFVFKEVO
QUJMRV9DU1NfQ09OSUNfR1JBRElFTlRTIFBSSVZBVEUgT04pCiAKIGluY2x1ZGUoR1N0cmVhbWVy
RGVwZW5kZW5jaWVzKQogCmRpZmYgLS1naXQgYS9DaGFuZ2VMb2cgYi9DaGFuZ2VMb2cKaW5kZXgg
MWM4MWM4N2M5MWVkNzIwYjBkYzYzOTFlMDMwMjFmMmQwN2FlZjU3NC4uNThmZWQzNDc1MmM5NjU4
NmNkNjE3MDJhZmZhMzdmZjczMjMxYTBlZCAxMDA2NDQKLS0tIGEvQ2hhbmdlTG9nCisrKyBiL0No
YW5nZUxvZwpAQCAtMSwzICsxLDE3IEBACisyMDIwLTA0LTA4ICBWw61jdG9yIE1hbnVlbCBKw6Fx
dWV6IExlYWwgIDx2amFxdWV6QGlnYWxpYS5jb20+CisKKyAgICAgICAgW0dQVVBdW0dUS10gY29t
cGlsZSBHUFVQcm9jZXNzIGluIEdUSyBwb3J0CisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQu
b3JnL3Nob3dfYnVnLmNnaT9pZD0yMDg4MTQKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkg
KE9PUFMhKS4KKworICAgICAgICBFbmFibGUgR1BVUHJvY2VzcyBjb21waWxhdGlvbiBpbiBXZWJL
aXRHVEsgYXMgYW4gZXhwZXJpbWVudGFsCisgICAgICAgIGZlYXR1cmUKKworICAgICAgICAqIFNv
dXJjZS9jbWFrZS9PcHRpb25zR1RLLmNtYWtlOiBzb3J0IGFscGhhYmV0aWNhbGx5IFdlYktpdAor
ICAgICAgICBvcHRpb25zIGZvciBHVEsgcG9ydCBhbmQgZW5hYmxlIEdQVV9QUk9DRVNTIGlmIGV4
cGVyaW1lbnRhbAorICAgICAgICBmZWF0dXJlcyBvcHRpb24gaXMgZW5hYmxlZC4KKwogMjAyMC0w
NC0wOCAgS2VpdGggUm9sbGluICA8a3JvbGxpbkBhcHBsZS5jb20+CiAKICAgICAgICAgRW5hYmxl
IHRoZSB1c2Ugb2YgWENCdWlsZCBieSBkZWZhdWx0IGluIEFwcGxlIGJ1aWxkcwo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>395809</attachid>
            <date>2020-04-08 08:10:47 -0700</date>
            <delta_ts>2020-04-22 02:12:21 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-208814-20200408171046.patch</filename>
            <type>text/plain</type>
            <size>24094</size>
            <attacher name="Víctor M. Jáquez L.">vjaquez</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjU5NzExCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L0No
YW5nZUxvZyBiL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCmluZGV4IGYzMWFiNjliMGJiNWY1MWVk
MTdlNmQ4NWIxYmMyZGY4NWIzNTQxMmUuLjcyNWRjYWU0NzgyOWNjYjhjZDUxMDAwODZiZWQ5MTgx
OWQ0ZjVmNjYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCisrKyBiL1NvdXJj
ZS9XZWJLaXQvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsNjMgQEAKKzIwMjAtMDQtMDggIFbDrWN0b3Ig
TWFudWVsIErDoXF1ZXogTGVhbCAgPHZqYXF1ZXpAaWdhbGlhLmNvbT4KKworICAgICAgICBbR1BV
UF1bR1RLXSBjb21waWxlIEdQVVByb2Nlc3MgaW4gR1RLIHBvcnQKKyAgICAgICAgaHR0cHM6Ly9i
dWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIwODgxNAorCisgICAgICAgIFJldmlld2Vk
IGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIEVuYWJsZSBHUFVQcm9jZXNzIGNvbXBpbGF0
aW9uIGluIFdlYktpdEdUSyBhcyBhbiBleHBlcmltZW50YWwKKyAgICAgICAgZmVhdHVyZQorCisg
ICAgICAgIE5vIG5ldyB0ZXN0cyByZXF1aXJlZC4KKworICAgICAgICAqIEdQVVByb2Nlc3MvR1BV
Q29ubmVjdGlvblRvV2ViUHJvY2Vzcy5jcHA6IGd1YXJkCisgICAgICAgIFVzZXJNZWRpYUNhcHR1
cmVNYW5hZ2VyUHJveHkgZm9yIENvY29hIHBsYXRmb3JtIG9ubHkuCisgICAgICAgIChXZWJLaXQ6
OkdQVUNvbm5lY3Rpb25Ub1dlYlByb2Nlc3M6OmRpc3BhdGNoTWVzc2FnZSk6IGd1YXJkCisgICAg
ICAgIG1lc3NhZ2VzIGZyb20gVXNlck1lZGlhQ2FwdHVyZU1hbmFnZXJQcm94eSBmb3IgQ29jb2Eg
cGxhdGZvcm0sCisgICAgICAgIG1vdmluZyB1cCB0aGlzIGd1YXJkIGZyb20gdmlkZW8gdHJhY2sg
bWVzc2FnZXMuCisgICAgICAgIChXZWJLaXQ6OkdQVUNvbm5lY3Rpb25Ub1dlYlByb2Nlc3M6Om1l
ZGlhS2V5U3RvcmFnZURpcmVjdG9yeSk6CisgICAgICAgIHJlbW92ZWQgZ3VhcmQgZm9yIHRoaXMg
ZnVuY3Rpb24gb2YgRU5DUllQVEVEX01FRElBIGxlYXZpbmcgb25seQorICAgICAgICBMRUdBQ1lf
RU5DUllQVEVEX01FRElBLCBzaW5jZSBpdCdzIHdlcmUgaXQgaXMgZGVmaW5lZC4KKyAgICAgICAg
KFdlYktpdDo6R1BVQ29ubmVjdGlvblRvV2ViUHJvY2Vzczo6c2V0T3JpZW50YXRpb25Gb3JNZWRp
YUNhcHR1cmUpOgorICAgICAgICBndWFyZCB0aGUgY29udGVudCBvZiB0aGlzIGZ1bmN0aW9uIGZv
ciBDb2NvYSBwbGF0Zm9ybSwgc2luY2UgaXQgaXMKKyAgICAgICAgY2FsbGluZyBhIFVzZXJNZWRp
YUNhcHR1cmVNYW5hZ2VyUHJveHkgb2JqZWN0LgorICAgICAgICAqIEdQVVByb2Nlc3MvR1BVUHJv
Y2Vzcy5jcHA6IFJlcGxhY2UgdGhlIGluY2x1ZGVkIGhlYWRlciB0byBtYXRjaAorICAgICAgICB3
aXRoIHRoZSB1c2VkIHN5bWJvbHMgaW4gZmlsZS4KKyAgICAgICAgKiBHUFVQcm9jZXNzL2dzdHJl
YW1lci9HUFVQcm9jZXNzR1N0cmVhbWVyLmNwcDogQWRkZWQuCisgICAgICAgIChXZWJLaXQ6OkdQ
VVByb2Nlc3M6OmluaXRpYWxpemVQcm9jZXNzKTogRW1wdHkgZnVuY3Rpb24uCisgICAgICAgIChX
ZWJLaXQ6OkdQVVByb2Nlc3M6OmluaXRpYWxpemVQcm9jZXNzTmFtZSk6IEVtcHR5IGZ1bmN0aW9u
LgorICAgICAgICAoV2ViS2l0OjpHUFVQcm9jZXNzOjppbml0aWFsaXplU2FuZGJveCk6IEVtcHR5
IGZ1bmN0aW9uLgorICAgICAgICAqIEdQVVByb2Nlc3MvZ3N0cmVhbWVyL0dQVVByb2Nlc3NNYWlu
R1N0cmVhbWVyLmNwcDogQWRkZWQuCisgICAgICAgIChXZWJLaXQ6OmluaXRpYWxpemVBdXhpbGlh
cnlQcm9jZXNzPEdQVVByb2Nlc3M+KTogTmV3IGZ1bmN0aW9uLgorICAgICAgICAoV2ViS2l0OjpH
UFVQcm9jZXNzTWFpbik6IE5ldyBmdW5jdGlvbi4KKyAgICAgICAgKiBHUFVQcm9jZXNzL21lZGlh
L1JlbW90ZUxlZ2FjeUNETUZhY3RvcnlQcm94eS5jcHA6IGNoYW5nZWQgZ3VhcmQKKyAgICAgICAg
Zm9yIHRoaXMgZmlsZSBmcm9tIEVOQ1JZUFRFRF9NRURJQSB0byBMRUdBQ1lfRU5DUllQVEVEX01F
RElBIHRvCisgICAgICAgIG1hdGNoIHdpdGggaXRzIGhlYWRlciBmaWxlLgorICAgICAgICAqIEdQ
VVByb2Nlc3MvbWVkaWEvZ3N0cmVhbWVyL1JlbW90ZU1lZGlhUGxheWVyUHJveHlHU3RyZWFtZXIu
Y3BwOiBBZGRlZC4KKyAgICAgICAgKFdlYktpdDo6UmVtb3RlTWVkaWFQbGF5ZXJQcm94eTo6cHJl
cGFyZUZvclBsYXliYWNrKToKKyAgICAgICAgTmV3IGZ1bmN0aW9uIHRoYXQgcmFpc2Ugbm9JbXBs
ZW1lbnRlZCgpCisgICAgICAgIChXZWJLaXQ6OlJlbW90ZU1lZGlhUGxheWVyUHJveHk6Om1lZGlh
UGxheWVyRmlyc3RWaWRlb0ZyYW1lQXZhaWxhYmxlKToKKyAgICAgICAgTmV3IGZ1bmN0aW9uIHRo
YXQgcmFpc2Ugbm9JbXBsZW1lbnRlZCgpCisgICAgICAgIChXZWJLaXQ6OlJlbW90ZU1lZGlhUGxh
eWVyUHJveHk6Om1lZGlhUGxheWVyUmVuZGVyaW5nTW9kZUNoYW5nZWQpOgorICAgICAgICBOZXcg
ZnVuY3Rpb24gdGhhdCByYWlzZSBub0ltcGxlbWVudGVkKCkKKyAgICAgICAgKFdlYktpdDo6UmVt
b3RlTWVkaWFQbGF5ZXJQcm94eTo6ZW50ZXJGdWxsc2NyZWVuKTogTmV3IGZ1bmN0aW9uCisgICAg
ICAgIHRoYXQgcmFpc2Ugbm9JbXBsZW1lbnRlZCgpCisgICAgICAgIChXZWJLaXQ6OlJlbW90ZU1l
ZGlhUGxheWVyUHJveHk6OmV4aXRGdWxsc2NyZWVuKTogTmV3IGZ1bmN0aW9uCisgICAgICAgIHRo
YXQgcmFpc2Ugbm9JbXBsZW1lbnRlZCgpCisgICAgICAgICogUGxhdGZvcm1HVEsuY21ha2U6IGFk
ZCBQbGF0Zm9ybS9nZW5lcmljIGhlYWRlciBkaXJlY3RvcnkuCisgICAgICAgICogU291cmNlc0dU
Sy50eHQ6IEFkZCB0aGUgbmV3IGZpbGVzIGFuZAorICAgICAgICBHUFVQcm9jZXNzL21lZGlhL1Jl
bW90ZUF1ZGlvRGVzdGluYXRpb25NYW5hZ2VyLmNwcAorICAgICAgICAqIFdlYlByb2Nlc3MvR1BV
L0dQVVByb2Nlc3NDb25uZWN0aW9uLmNwcDogZ3VhcmQKKyAgICAgICAgVXNlck1lZGlhQ2FwdHVy
ZU1hbmFnZXIgZm9yIENvY29hIHBsYXRmb3JtIG9ubHkuCisgICAgICAgIChXZWJLaXQ6OkdQVVBy
b2Nlc3NDb25uZWN0aW9uOjpkaXNwYXRjaE1lc3NhZ2UpOiBndWFyZCBtZXNzYWdlcworICAgICAg
ICBmcm9tIFVzZXJNZWRpYUNhcHR1cmVNYW5hZ2VyIGZvciBDb2NvYSBwbGF0Zm9ybSwgbW92aW5n
IHVwIHRoaXMKKyAgICAgICAgZ3VhcmQgYXBwbGllZCBhbHNvIGZvciB2aWRlbyB0cmFjay4KKyAg
ICAgICAgKiBXZWJQcm9jZXNzL0dQVS9tZWRpYS9SZW1vdGVDRE0uY3BwOiBpbmNsdWRlIG1pc3Np
bmcgaGVhZGVyCisgICAgICAgIEdQVVByb2Nlc3NDb25uZWN0aW9uLmgKKyAgICAgICAgKiBXZWJQ
cm9jZXNzL0dQVS9tZWRpYS9nc3RyZWFtZXIvVmlkZW9MYXllclJlbW90ZUdTdHJlYW1lci5jcHA6
IEFkZGVkLgorICAgICAgICAoV2ViS2l0OjpjcmVhdGVWaWRlb0xheWVyUmVtb3RlKTogTmV3IGZ1
bmN0aW9uCisgICAgICAgIHRoYXQgcmFpc2Ugbm9JbXBsZW1lbnRlZCgpCisKIDIwMjAtMDQtMDgg
IEtlaXRoIFJvbGxpbiAgPGtyb2xsaW5AYXBwbGUuY29tPgogCiAgICAgICAgIEVuYWJsZSB0aGUg
dXNlIG9mIFhDQnVpbGQgYnkgZGVmYXVsdCBpbiBBcHBsZSBidWlsZHMKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJLaXQvR1BVUHJvY2Vzcy9HUFVDb25uZWN0aW9uVG9XZWJQcm9jZXNzLmNwcCBiL1Nv
dXJjZS9XZWJLaXQvR1BVUHJvY2Vzcy9HUFVDb25uZWN0aW9uVG9XZWJQcm9jZXNzLmNwcAppbmRl
eCAyNmY3MzgwY2E1MjJhZmQ4NDAyYzY1MzNlOTM3Nzc1NDY1MzEzMDhiLi40MzFjMzM5MjE2Njgw
NGVjMzA4MWZiYzZjYWRhYjQ1NDEzYTQxMDA0IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L0dQ
VVByb2Nlc3MvR1BVQ29ubmVjdGlvblRvV2ViUHJvY2Vzcy5jcHAKKysrIGIvU291cmNlL1dlYktp
dC9HUFVQcm9jZXNzL0dQVUNvbm5lY3Rpb25Ub1dlYlByb2Nlc3MuY3BwCkBAIC03Myw3ICs3Myw3
IEBACiAjaW5jbHVkZSAiUmVtb3RlQ0RNUHJveHlNZXNzYWdlcy5oIgogI2VuZGlmCiAKLSNpZiBF
TkFCTEUoTUVESUFfU1RSRUFNKQorI2lmIFBMQVRGT1JNKENPQ09BKSAmJiBFTkFCTEUoTUVESUFf
U1RSRUFNKQogI2luY2x1ZGUgIlVzZXJNZWRpYUNhcHR1cmVNYW5hZ2VyUHJveHkuaCIKICNpbmNs
dWRlICJVc2VyTWVkaWFDYXB0dXJlTWFuYWdlclByb3h5TWVzc2FnZXMuaCIKICNlbmRpZgpAQCAt
MzY0LDcgKzM2NCw3IEBAIGJvb2wgR1BVQ29ubmVjdGlvblRvV2ViUHJvY2Vzczo6ZGlzcGF0Y2hN
ZXNzYWdlKElQQzo6Q29ubmVjdGlvbiYgY29ubmVjdGlvbiwgSVBDCiAgICAgICAgIHJlbW90ZU1l
ZGlhUmVzb3VyY2VNYW5hZ2VyKCkuZGlkUmVjZWl2ZU1lc3NhZ2UoY29ubmVjdGlvbiwgZGVjb2Rl
cik7CiAgICAgICAgIHJldHVybiB0cnVlOwogICAgIH0KLSNpZiBFTkFCTEUoTUVESUFfU1RSRUFN
KQorI2lmIFBMQVRGT1JNKENPQ09BKSAmJiBFTkFCTEUoTUVESUFfU1RSRUFNKQogICAgIGlmIChk
ZWNvZGVyLm1lc3NhZ2VSZWNlaXZlck5hbWUoKSA9PSBNZXNzYWdlczo6VXNlck1lZGlhQ2FwdHVy
ZU1hbmFnZXJQcm94eTo6bWVzc2FnZVJlY2VpdmVyTmFtZSgpKSB7CiAgICAgICAgIHVzZXJNZWRp
YUNhcHR1cmVNYW5hZ2VyUHJveHkoKS5kaWRSZWNlaXZlTWVzc2FnZUZyb21HUFVQcm9jZXNzKGNv
bm5lY3Rpb24sIGRlY29kZXIpOwogICAgICAgICByZXR1cm4gdHJ1ZTsKQEAgLTM3Nyw3ICszNzcs
NyBAQCBib29sIEdQVUNvbm5lY3Rpb25Ub1dlYlByb2Nlc3M6OmRpc3BhdGNoTWVzc2FnZShJUEM6
OkNvbm5lY3Rpb24mIGNvbm5lY3Rpb24sIElQQwogICAgICAgICBtZWRpYVJlY29yZGVyTWFuYWdl
cigpLmRpZFJlY2VpdmVSZW1vdGVNZWRpYVJlY29yZGVyTWVzc2FnZShjb25uZWN0aW9uLCBkZWNv
ZGVyKTsKICAgICAgICAgcmV0dXJuIHRydWU7CiAgICAgfQotI2lmIFBMQVRGT1JNKENPQ09BKSAm
JiBFTkFCTEUoVklERU9fVFJBQ0spCisjaWYgRU5BQkxFKFZJREVPX1RSQUNLKQogICAgIGlmIChk
ZWNvZGVyLm1lc3NhZ2VSZWNlaXZlck5hbWUoKSA9PSBNZXNzYWdlczo6UmVtb3RlQXVkaW9NZWRp
YVN0cmVhbVRyYWNrUmVuZGVyZXJNYW5hZ2VyOjptZXNzYWdlUmVjZWl2ZXJOYW1lKCkpIHsKICAg
ICAgICAgYXVkaW9UcmFja1JlbmRlcmVyTWFuYWdlcigpLmRpZFJlY2VpdmVNZXNzYWdlRnJvbVdl
YlByb2Nlc3MoY29ubmVjdGlvbiwgZGVjb2Rlcik7CiAgICAgICAgIHJldHVybiB0cnVlOwpAQCAt
NDk3LDcgKzQ5Nyw3IEBAIGNvbnN0IFN0cmluZyYgR1BVQ29ubmVjdGlvblRvV2ViUHJvY2Vzczo6
bWVkaWFDYWNoZURpcmVjdG9yeSgpIGNvbnN0CiAgICAgcmV0dXJuIG1fZ3B1UHJvY2Vzcy0+bWVk
aWFDYWNoZURpcmVjdG9yeShtX3Nlc3Npb25JRCk7CiB9CiAKLSNpZiBFTkFCTEUoRU5DUllQVEVE
X01FRElBKSB8fCBFTkFCTEUoTEVHQUNZX0VOQ1JZUFRFRF9NRURJQSkKKyNpZiBFTkFCTEUoTEVH
QUNZX0VOQ1JZUFRFRF9NRURJQSkKIGNvbnN0IFN0cmluZyYgR1BVQ29ubmVjdGlvblRvV2ViUHJv
Y2Vzczo6bWVkaWFLZXlzU3RvcmFnZURpcmVjdG9yeSgpIGNvbnN0CiB7CiAgICAgcmV0dXJuIG1f
Z3B1UHJvY2Vzcy0+bWVkaWFLZXlzU3RvcmFnZURpcmVjdG9yeShtX3Nlc3Npb25JRCk7CkBAIC01
MDcsNyArNTA3LDkgQEAgY29uc3QgU3RyaW5nJiBHUFVDb25uZWN0aW9uVG9XZWJQcm9jZXNzOjpt
ZWRpYUtleXNTdG9yYWdlRGlyZWN0b3J5KCkgY29uc3QKICNpZiBFTkFCTEUoTUVESUFfU1RSRUFN
KQogdm9pZCBHUFVDb25uZWN0aW9uVG9XZWJQcm9jZXNzOjpzZXRPcmllbnRhdGlvbkZvck1lZGlh
Q2FwdHVyZSh1aW50NjRfdCBvcmllbnRhdGlvbikKIHsKKyNpZiBQTEFURk9STShDT0NPQSkKICAg
ICB1c2VyTWVkaWFDYXB0dXJlTWFuYWdlclByb3h5KCkuc2V0T3JpZW50YXRpb24ob3JpZW50YXRp
b24pOworI2VuZGlmCiB9CiAKIHZvaWQgR1BVQ29ubmVjdGlvblRvV2ViUHJvY2Vzczo6dXBkYXRl
Q2FwdHVyZUFjY2Vzcyhib29sIGFsbG93QXVkaW9DYXB0dXJlLCBib29sIGFsbG93VmlkZW9DYXB0
dXJlLCBib29sIGFsbG93RGlzcGxheUNhcHR1cmUpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0
L0dQVVByb2Nlc3MvR1BVUHJvY2Vzcy5jcHAgYi9Tb3VyY2UvV2ViS2l0L0dQVVByb2Nlc3MvR1BV
UHJvY2Vzcy5jcHAKaW5kZXggZWYyMzk1ZWM1OWY3NTU5YjE1MThiNjk2ZWYzNjU4MjQ2YzkzZDI5
Ni4uMTJmZGQ5NmM5NWMyNDAyNmI0NjkzZWNjZGUzOWQ4ODIyM2ZlM2EwYyAxMDA2NDQKLS0tIGEv
U291cmNlL1dlYktpdC9HUFVQcm9jZXNzL0dQVVByb2Nlc3MuY3BwCisrKyBiL1NvdXJjZS9XZWJL
aXQvR1BVUHJvY2Vzcy9HUFVQcm9jZXNzLmNwcApAQCAtNTYsNyArNTYsNyBAQAogI2VuZGlmCiAK
ICNpZiBFTkFCTEUoTUVESUFfU1RSRUFNKQotI2luY2x1ZGUgPFdlYkNvcmUvTW9ja0F1ZGlvU2hh
cmVkVW5pdC5oPgorI2luY2x1ZGUgPFdlYkNvcmUvTW9ja1JlYWx0aW1lTWVkaWFTb3VyY2VDZW50
ZXIuaD4KICNlbmRpZgogCiBuYW1lc3BhY2UgV2ViS2l0IHsKZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJLaXQvR1BVUHJvY2Vzcy9nc3RyZWFtZXIvR1BVUHJvY2Vzc0dTdHJlYW1lci5jcHAgYi9Tb3Vy
Y2UvV2ViS2l0L0dQVVByb2Nlc3MvZ3N0cmVhbWVyL0dQVVByb2Nlc3NHU3RyZWFtZXIuY3BwCm5l
dyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAuLjRmODg5MjkyNjFmZGE4ODM0NDA0ODU5YTIxOTkwZGJjMjViMjNlNDMKLS0tIC9k
ZXYvbnVsbAorKysgYi9Tb3VyY2UvV2ViS2l0L0dQVVByb2Nlc3MvZ3N0cmVhbWVyL0dQVVByb2Nl
c3NHU3RyZWFtZXIuY3BwCkBAIC0wLDAgKzEsNTAgQEAKKy8qCisgKiBDb3B5cmlnaHQgKEMpIDIw
MjAgSWdhbGlhIFMuTC4KKyAqCisgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBh
bmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKKyAqIG1vZGlmaWNhdGlvbiwgYXJlIHBl
cm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucworICogYXJlIG1l
dDoKKyAqIDEuIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUg
YWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFu
ZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisgKiAyLiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmlu
YXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNl
LCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGlu
IHRoZQorICogICAgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVk
IHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KKyAqCisgKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVE
IEJZIFRIRSBDT1BZUklHSFQgSE9MREVSUyBgYEFTIElTJycKKyAqIEFORCBBTlkgRVhQUkVTUyBP
UiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLAorICog
VEhFIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9S
IEEgUEFSVElDVUxBUgorICogUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hB
TEwgQVBQTEUgSU5DLiBPUiBJVFMgQ09OVFJJQlVUT1JTCisgKiBCRSBMSUFCTEUgRk9SIEFOWSBE
SVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SCisgKiBD
T05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9D
VVJFTUVOVCBPRgorICogU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0Us
IERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTCisgKiBJTlRFUlJVUFRJT04pIEhPV0VWRVIg
Q0FVU0VEIEFORCBPTiBBTlkgVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTgorICogQ09O
VFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNFIE9S
IE9USEVSV0lTRSkKKyAqIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRSBPRiBUSElT
IFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YKKyAqIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNI
IERBTUFHRS4KKyAqLworCisjaW5jbHVkZSAiY29uZmlnLmgiCisjaW5jbHVkZSAiR1BVUHJvY2Vz
cy5oIgorCisjaWYgRU5BQkxFKEdQVV9QUk9DRVNTKSAmJiBVU0UoR1NUUkVBTUVSKQorCisjaW5j
bHVkZSAiR1BVUHJvY2Vzc0NyZWF0aW9uUGFyYW1ldGVycy5oIgorCituYW1lc3BhY2UgV2ViS2l0
IHsKKwordm9pZCBHUFVQcm9jZXNzOjppbml0aWFsaXplUHJvY2Vzcyhjb25zdCBBdXhpbGlhcnlQ
cm9jZXNzSW5pdGlhbGl6YXRpb25QYXJhbWV0ZXJzJikKK3sKK30KKwordm9pZCBHUFVQcm9jZXNz
Ojppbml0aWFsaXplUHJvY2Vzc05hbWUoY29uc3QgQXV4aWxpYXJ5UHJvY2Vzc0luaXRpYWxpemF0
aW9uUGFyYW1ldGVycyYpCit7Cit9CisKK3ZvaWQgR1BVUHJvY2Vzczo6aW5pdGlhbGl6ZVNhbmRi
b3goY29uc3QgQXV4aWxpYXJ5UHJvY2Vzc0luaXRpYWxpemF0aW9uUGFyYW1ldGVycyYsIFNhbmRi
b3hJbml0aWFsaXphdGlvblBhcmFtZXRlcnMmKQoreworfQorCit9IC8vIG5hbWVzcGFjZSBXZWJL
aXQKKworI2VuZGlmIC8vIEVOQUJMRShHUFVfUFJPQ0VTUykKKwpkaWZmIC0tZ2l0IGEvU291cmNl
L1dlYktpdC9HUFVQcm9jZXNzL2dzdHJlYW1lci9HUFVQcm9jZXNzTWFpbkdTdHJlYW1lci5jcHAg
Yi9Tb3VyY2UvV2ViS2l0L0dQVVByb2Nlc3MvZ3N0cmVhbWVyL0dQVVByb2Nlc3NNYWluR1N0cmVh
bWVyLmNwcApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwLi4xNTVhYjZlODhmNWY2Yjc5ZWYzYmNkNTg0ODdiNzVjN2E5ZGU0
ZGM2Ci0tLSAvZGV2L251bGwKKysrIGIvU291cmNlL1dlYktpdC9HUFVQcm9jZXNzL2dzdHJlYW1l
ci9HUFVQcm9jZXNzTWFpbkdTdHJlYW1lci5jcHAKQEAgLTAsMCArMSw2MCBAQAorLyoKKyAqIENv
cHlyaWdodCAoQykgMjAyMCBJZ2FsaWEgUy5MLgorICoKKyAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1
c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAorICogbW9kaWZp
Y2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRp
b25zCisgKiBhcmUgbWV0OgorICogMS4gUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11
c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9m
IGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKyAqIDIuIFJlZGlzdHJp
YnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0
CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5n
IGRpc2NsYWltZXIgaW4gdGhlCisgKiAgICBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRl
cmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgorICoKKyAqIFRISVMgU09GVFdB
UkUgSVMgUFJPVklERUQgQlkgVEhFIENPUFlSSUdIVCBIT0xERVJTIGBgQVMgSVMnJworICogQU5E
IEFOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJ
TUlURUQgVE8sCisgKiBUSEUgSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBB
TkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSCisgKiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiBJ
TiBOTyBFVkVOVCBTSEFMTCBBUFBMRSBJTkMuIE9SIElUUyBDT05UUklCVVRPUlMKKyAqIEJFIExJ
QUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1Q
TEFSWSwgT1IKKyAqIENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJ
TUlURUQgVE8sIFBST0NVUkVNRU5UIE9GCisgKiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VT
OyBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MKKyAqIElOVEVSUlVQ
VElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVU
SEVSIElOCisgKiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVCAoSU5DTFVESU5H
IE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKQorICogQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBU
SEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRgorICogVEhFIFBPU1NJ
QklMSVRZIE9GIFNVQ0ggREFNQUdFLgorICovCisKKyNpbmNsdWRlICJjb25maWcuaCIKKyNpbmNs
dWRlICJHUFVQcm9jZXNzTWFpbi5oIgorCisjaWYgRU5BQkxFKEdQVV9QUk9DRVNTKSAmJiBVU0Uo
R1NUUkVBTUVSKQorCisjaW5jbHVkZSAiQXV4aWxpYXJ5UHJvY2Vzc01haW4uaCIKKyNpbmNsdWRl
ICJHUFVQcm9jZXNzLmgiCisKK25hbWVzcGFjZSBXZWJLaXQgeworCitzdGF0aWMgUmVmUHRyPEdQ
VVByb2Nlc3M+IGdsb2JhbEdQVVByb2Nlc3M7CisKK2NsYXNzIEdQVVByb2Nlc3NNYWluR1N0cmVh
bWVyIGZpbmFsOiBwdWJsaWMgQXV4aWxpYXJ5UHJvY2Vzc01haW5CYXNlIHsKK3B1YmxpYzoKKyAg
ICBib29sIHBsYXRmb3JtSW5pdGlhbGl6ZSgpIG92ZXJyaWRlCisgICAgeworICAgICAgICByZXR1
cm4gdHJ1ZTsKKyAgICB9Cit9OworCit0ZW1wbGF0ZTw+Cit2b2lkIGluaXRpYWxpemVBdXhpbGlh
cnlQcm9jZXNzPEdQVVByb2Nlc3M+KEF1eGlsaWFyeVByb2Nlc3NJbml0aWFsaXphdGlvblBhcmFt
ZXRlcnMmJiBwYXJhbWV0ZXJzKQoreworICAgIHN0YXRpYyBOZXZlckRlc3Ryb3llZDxHUFVQcm9j
ZXNzPiBncHVQcm9jZXNzKFdURk1vdmUocGFyYW1ldGVycykpOworICAgIGdsb2JhbEdQVVByb2Nl
c3MgPSAmZ3B1UHJvY2Vzcy5nZXQoKTsKK30KKworaW50IEdQVVByb2Nlc3NNYWluKGludCBhcmdj
LCBjaGFyKiogYXJndikKK3sKKyAgICByZXR1cm4gQXV4aWxpYXJ5UHJvY2Vzc01haW48R1BVUHJv
Y2VzcywgR1BVUHJvY2Vzc01haW5HU3RyZWFtZXI+KGFyZ2MsIGFyZ3YpOworfQorCit9IC8vIG5h
bWVzcGFjZSBXZWJLaXQKKworI2VuZGlmIC8vIEVOQUJMRShHUFVfUFJPQ0VTUykKZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJLaXQvR1BVUHJvY2Vzcy9tZWRpYS9SZW1vdGVMZWdhY3lDRE1GYWN0b3J5
UHJveHkuY3BwIGIvU291cmNlL1dlYktpdC9HUFVQcm9jZXNzL21lZGlhL1JlbW90ZUxlZ2FjeUNE
TUZhY3RvcnlQcm94eS5jcHAKaW5kZXggMDEyZmU0ZDliZWU0NjRhNTg2NzZiMjA3NWE3ZDY3OTE3
OGJkYzBhZi4uZjVkNTA4M2M4YzA3NWZkYWVlYzdiYjc3MWI1NWE4NTE2OTJiMTViNSAxMDA2NDQK
LS0tIGEvU291cmNlL1dlYktpdC9HUFVQcm9jZXNzL21lZGlhL1JlbW90ZUxlZ2FjeUNETUZhY3Rv
cnlQcm94eS5jcHAKKysrIGIvU291cmNlL1dlYktpdC9HUFVQcm9jZXNzL21lZGlhL1JlbW90ZUxl
Z2FjeUNETUZhY3RvcnlQcm94eS5jcHAKQEAgLTI2LDcgKzI2LDcgQEAKICNpbmNsdWRlICJjb25m
aWcuaCIKICNpbmNsdWRlICJSZW1vdGVMZWdhY3lDRE1GYWN0b3J5UHJveHkuaCIKIAotI2lmIEVO
QUJMRShHUFVfUFJPQ0VTUykgJiYgRU5BQkxFKEVOQ1JZUFRFRF9NRURJQSkKKyNpZiBFTkFCTEUo
R1BVX1BST0NFU1MpICYmIEVOQUJMRShMRUdBQ1lfRU5DUllQVEVEX01FRElBKQogCiAjaW5jbHVk
ZSAiUmVtb3RlTGVnYWN5Q0RNUHJveHkuaCIKICNpbmNsdWRlICJSZW1vdGVMZWdhY3lDRE1Qcm94
eU1lc3NhZ2VzLmgiCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L0dQVVByb2Nlc3MvbWVkaWEv
Z3N0cmVhbWVyL1JlbW90ZU1lZGlhUGxheWVyUHJveHlHU3RyZWFtZXIuY3BwIGIvU291cmNlL1dl
YktpdC9HUFVQcm9jZXNzL21lZGlhL2dzdHJlYW1lci9SZW1vdGVNZWRpYVBsYXllclByb3h5R1N0
cmVhbWVyLmNwcApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwLi45MjcxMDAwYzkzNWY2ZmNiOWQyZDc2M2RjMmNiZDRhODMy
NTMzYzU2Ci0tLSAvZGV2L251bGwKKysrIGIvU291cmNlL1dlYktpdC9HUFVQcm9jZXNzL21lZGlh
L2dzdHJlYW1lci9SZW1vdGVNZWRpYVBsYXllclByb3h5R1N0cmVhbWVyLmNwcApAQCAtMCwwICsx
LDY0IEBACisvKgorICogQ29weXJpZ2h0IChDKSAyMDIwIElnYWxpYSBTLkwuCisgKgorICogUmVk
aXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3
aXRob3V0CisgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUg
Zm9sbG93aW5nIGNvbmRpdGlvbnMKKyAqIGFyZSBtZXQ6CisgKiAxLiBSZWRpc3RyaWJ1dGlvbnMg
b2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90
aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVy
LgorICogMi4gUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRo
ZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMg
YW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKKyAqICAgIGRvY3VtZW50YXRpb24g
YW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCisg
KgorICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBUSEUgQ09QWVJJR0hUIEhPTERFUlMg
YGBBUyBJUycnCisgKiBBTkQgQU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNM
VURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywKKyAqIFRIRSBJTVBMSUVEIFdBUlJBTlRJRVMgT0Yg
TUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIKKyAqIFBVUlBPU0Ug
QVJFIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIEFQUExFIElOQy4gT1IgSVRTIENPTlRS
SUJVVE9SUworICogQkUgTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRB
TCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUgorICogQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNM
VURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YKKyAqIFNVQlNUSVRVVEUg
R09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJ
TkVTUworICogSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZIFRIRU9SWSBP
RiBMSUFCSUxJVFksIFdIRVRIRVIgSU4KKyAqIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBP
UiBUT1JUIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpCisgKiBBUklTSU5HIElO
IEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VE
IE9GCisgKiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCisgKi8KKworI2luY2x1ZGUg
ImNvbmZpZy5oIgorI2luY2x1ZGUgIlJlbW90ZU1lZGlhUGxheWVyUHJveHkuaCIKKworI2lmIEVO
QUJMRShHUFVfUFJPQ0VTUykgJiYgVVNFKEdTVFJFQU1FUikKKworI2luY2x1ZGUgIkxheWVySG9z
dGluZ0NvbnRleHQuaCIKKyNpbmNsdWRlIDxXZWJDb3JlL05vdEltcGxlbWVudGVkLmg+CisKK25h
bWVzcGFjZSBXZWJLaXQgeworCit2b2lkIFJlbW90ZU1lZGlhUGxheWVyUHJveHk6OnByZXBhcmVG
b3JQbGF5YmFjayhib29sLCBXZWJDb3JlOjpNZWRpYVBsYXllckVudW1zOjpQcmVsb2FkLCBib29s
LCBib29sLCBmbG9hdCB2aWRlb0NvbnRlbnRTY2FsZSwgQ29tcGxldGlvbkhhbmRsZXI8dm9pZChP
cHRpb25hbDxMYXllckhvc3RpbmdDb250ZXh0SUQ+JiYgaW5saW5lTGF5ZXJIb3N0aW5nQ29udGV4
dElkLCBPcHRpb25hbDxMYXllckhvc3RpbmdDb250ZXh0SUQ+JiYgZnVsbHNjcmVlbkxheWVySG9z
dGluZ0NvbnRleHRJZCk+JiYpCit7CisgICAgbm90SW1wbGVtZW50ZWQoKTsKK30KKwordm9pZCBS
ZW1vdGVNZWRpYVBsYXllclByb3h5OjptZWRpYVBsYXllckZpcnN0VmlkZW9GcmFtZUF2YWlsYWJs
ZSgpCit7CisgICAgbm90SW1wbGVtZW50ZWQoKTsKK30KKwordm9pZCBSZW1vdGVNZWRpYVBsYXll
clByb3h5OjptZWRpYVBsYXllclJlbmRlcmluZ01vZGVDaGFuZ2VkKCkKK3sKKyAgICBub3RJbXBs
ZW1lbnRlZCgpOworfQorCit2b2lkIFJlbW90ZU1lZGlhUGxheWVyUHJveHk6OmVudGVyRnVsbHNj
cmVlbihDb21wbGV0aW9uSGFuZGxlcjx2b2lkKCk+JiYgY29tcGxldGlvbkhhbmRsZXIpCit7Cisg
ICAgbm90SW1wbGVtZW50ZWQoKTsKK30KKwordm9pZCBSZW1vdGVNZWRpYVBsYXllclByb3h5Ojpl
eGl0RnVsbHNjcmVlbihDb21wbGV0aW9uSGFuZGxlcjx2b2lkKCk+JiYgY29tcGxldGlvbkhhbmRs
ZXIpCit7CisgICAgbm90SW1wbGVtZW50ZWQoKTsKK30KKworfSAvLyBuYW1lc3BhY2UgV2ViS2l0
CisKKworI2VuZGlmIC8vIEVOQUJMRShHUFVfUFJPQ0VTUykKZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJLaXQvUGxhdGZvcm1HVEsuY21ha2UgYi9Tb3VyY2UvV2ViS2l0L1BsYXRmb3JtR1RLLmNtYWtl
CmluZGV4IDRmYzZlYzBmM2RmNWQ1MWZhNDMzNGY0MTNjYjAzZmI2MDkwMzQ4NTkuLmU1MjkzNTVm
NGM0OTkwMTU2MGEzMmQ5ZTBkOWY1NDVhYTA4MDE1OTYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJL
aXQvUGxhdGZvcm1HVEsuY21ha2UKKysrIGIvU291cmNlL1dlYktpdC9QbGF0Zm9ybUdUSy5jbWFr
ZQpAQCAtMzgwLDYgKzM4MCw3IEBAIGxpc3QoQVBQRU5EIFdlYktpdF9JTkNMVURFX0RJUkVDVE9S
SUVTCiAgICAgIiR7V0VCS0lUX0RJUn0vUGxhdGZvcm0vSVBDL2dsaWIiCiAgICAgIiR7V0VCS0lU
X0RJUn0vUGxhdGZvcm0vSVBDL3VuaXgiCiAgICAgIiR7V0VCS0lUX0RJUn0vUGxhdGZvcm0vY2xh
c3NpZmllciIKKyAgICAiJHtXRUJLSVRfRElSfS9QbGF0Zm9ybS9nZW5lcmljIgogICAgICIke1dF
QktJVF9ESVJ9L1NoYXJlZC9BUEkvYy9ndGsiCiAgICAgIiR7V0VCS0lUX0RJUn0vU2hhcmVkL0FQ
SS9nbGliIgogICAgICIke1dFQktJVF9ESVJ9L1NoYXJlZC9Db29yZGluYXRlZEdyYXBoaWNzIgpk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9Tb3VyY2VzR1RLLnR4dCBiL1NvdXJjZS9XZWJLaXQv
U291cmNlc0dUSy50eHQKaW5kZXggZWJhMzQ2MTRmZTBmZGNlZTUzYzFlZGM0ZTk0MGM0MWJiZDI0
MDI3Yy4uMjViMjM3NGZiMDQ1Njk2NmZhYmRlMDI5YjA4ZGQyOWQzYWI0MTJmOCAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYktpdC9Tb3VyY2VzR1RLLnR4dAorKysgYi9Tb3VyY2UvV2ViS2l0L1NvdXJj
ZXNHVEsudHh0CkBAIC0yMSw2ICsyMSwxMyBAQAogLy8gQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBP
RiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRgogLy8gVEhFIFBP
U1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgogCitHUFVQcm9jZXNzL2dzdHJlYW1lci9HUFVQcm9j
ZXNzR1N0cmVhbWVyLmNwcAorR1BVUHJvY2Vzcy9nc3RyZWFtZXIvR1BVUHJvY2Vzc01haW5HU3Ry
ZWFtZXIuY3BwCisKK0dQVVByb2Nlc3MvbWVkaWEvUmVtb3RlQXVkaW9EZXN0aW5hdGlvbk1hbmFn
ZXIuY3BwCisKK0dQVVByb2Nlc3MvbWVkaWEvZ3N0cmVhbWVyL1JlbW90ZU1lZGlhUGxheWVyUHJv
eHlHU3RyZWFtZXIuY3BwCisKIE5ldHdvcmtQcm9jZXNzL0NsYXNzaWZpZXIvV2ViUmVzb3VyY2VM
b2FkU3RhdGlzdGljc1N0b3JlLmNwcAogTmV0d29ya1Byb2Nlc3MvQ2xhc3NpZmllci9XZWJSZXNv
dXJjZUxvYWRTdGF0aXN0aWNzVGVsZW1ldHJ5LmNwcAogCkBAIC0yNjksNiArMjc2LDggQEAgVUlQ
cm9jZXNzL2d0ay9XZWJQcmVmZXJlbmNlc0d0ay5jcHAKIFVJUHJvY2Vzcy9zb3VwL1dlYkNvb2tp
ZU1hbmFnZXJQcm94eVNvdXAuY3BwCiBVSVByb2Nlc3Mvc291cC9XZWJQcm9jZXNzUG9vbFNvdXAu
Y3BwCiAKK1dlYlByb2Nlc3MvR1BVL21lZGlhL2dzdHJlYW1lci9WaWRlb0xheWVyUmVtb3RlR1N0
cmVhbWVyLmNwcAorCiBXZWJQcm9jZXNzL0luamVjdGVkQnVuZGxlL0FQSS9nbGliL0RPTS9ET01P
YmplY3RDYWNoZS5jcHAgQG5vLXVuaWZ5CiBXZWJQcm9jZXNzL0luamVjdGVkQnVuZGxlL0FQSS9n
bGliL0RPTS9XZWJLaXRET01Eb2N1bWVudC5jcHAgQG5vLXVuaWZ5CiBXZWJQcm9jZXNzL0luamVj
dGVkQnVuZGxlL0FQSS9nbGliL0RPTS9XZWJLaXRET01FbGVtZW50LmNwcCBAbm8tdW5pZnkKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9HUFUvR1BVUHJvY2Vzc0Nvbm5lY3Rp
b24uY3BwIGIvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL0dQVS9HUFVQcm9jZXNzQ29ubmVjdGlv
bi5jcHAKaW5kZXggZGQ4NWQxN2E0NjAxYzEyNjViODg4NWZjOTk0ODUyMDAyMjAxMGIwZS4uZGJl
NTgxOTllNDdjNmE2ZTUwYjE5MDFhNWIzZTJjM2JlZGUxMjAyMSAxMDA2NDQKLS0tIGEvU291cmNl
L1dlYktpdC9XZWJQcm9jZXNzL0dQVS9HUFVQcm9jZXNzQ29ubmVjdGlvbi5jcHAKKysrIGIvU291
cmNlL1dlYktpdC9XZWJQcm9jZXNzL0dQVS9HUFVQcm9jZXNzQ29ubmVjdGlvbi5jcHAKQEAgLTUw
LDcgKzUwLDcgQEAKICNpbmNsdWRlICJSZW1vdGVDRE1JbnN0YW5jZVNlc3Npb25NZXNzYWdlcy5o
IgogI2VuZGlmCiAKLSNpZiBFTkFCTEUoTUVESUFfU1RSRUFNKQorI2lmIFBMQVRGT1JNKENPQ09B
KSAmJiBFTkFCTEUoTUVESUFfU1RSRUFNKQogI2luY2x1ZGUgIlVzZXJNZWRpYUNhcHR1cmVNYW5h
Z2VyLmgiCiAjaW5jbHVkZSAiVXNlck1lZGlhQ2FwdHVyZU1hbmFnZXJNZXNzYWdlcy5oIgogI2Vu
ZGlmCkBAIC0xMTIsMTkgKzExMiwxOSBAQCBib29sIEdQVVByb2Nlc3NDb25uZWN0aW9uOjpkaXNw
YXRjaE1lc3NhZ2UoSVBDOjpDb25uZWN0aW9uJiBjb25uZWN0aW9uLCBJUEM6OkRlYwogICAgICAg
ICByZXR1cm4gdHJ1ZTsKICAgICB9CiAKLSNpZiBFTkFCTEUoTUVESUFfU1RSRUFNKQorI2lmIFBM
QVRGT1JNKENPQ09BKSAmJiBFTkFCTEUoTUVESUFfU1RSRUFNKQogICAgIGlmIChkZWNvZGVyLm1l
c3NhZ2VSZWNlaXZlck5hbWUoKSA9PSBNZXNzYWdlczo6VXNlck1lZGlhQ2FwdHVyZU1hbmFnZXI6
Om1lc3NhZ2VSZWNlaXZlck5hbWUoKSkgewogICAgICAgICBpZiAoYXV0byogY2FwdHVyZU1hbmFn
ZXIgPSBXZWJQcm9jZXNzOjpzaW5nbGV0b24oKS5zdXBwbGVtZW50PFVzZXJNZWRpYUNhcHR1cmVN
YW5hZ2VyPigpKQogICAgICAgICAgICAgY2FwdHVyZU1hbmFnZXItPmRpZFJlY2VpdmVNZXNzYWdl
RnJvbUdQVVByb2Nlc3MoY29ubmVjdGlvbiwgZGVjb2Rlcik7CiAgICAgICAgIHJldHVybiB0cnVl
OwogICAgIH0KLSNpZiBQTEFURk9STShDT0NPQSkgJiYgRU5BQkxFKFZJREVPX1RSQUNLKQorI2lm
IEVOQUJMRShWSURFT19UUkFDSykKICAgICBpZiAoZGVjb2Rlci5tZXNzYWdlUmVjZWl2ZXJOYW1l
KCkgPT0gTWVzc2FnZXM6OlNhbXBsZUJ1ZmZlckRpc3BsYXlMYXllcjo6bWVzc2FnZVJlY2VpdmVy
TmFtZSgpKSB7CiAgICAgICAgIHNhbXBsZUJ1ZmZlckRpc3BsYXlMYXllck1hbmFnZXIoKS5kaWRS
ZWNlaXZlTGF5ZXJNZXNzYWdlKGNvbm5lY3Rpb24sIGRlY29kZXIpOwogICAgICAgICByZXR1cm4g
dHJ1ZTsKICAgICB9Ci0jZW5kaWYgLy8gUExBVEZPUk0oQ09DT0EpICYmIEVOQUJMRShWSURFT19U
UkFDSykKLSNlbmRpZiAvLyBFTkFCTEUoTUVESUFfU1RSRUFNKQorI2VuZGlmIC8vIEVOQUJMRShW
SURFT19UUkFDSykKKyNlbmRpZiAvLyBQTEFURk9STShDT0NPQSkgJiYgRU5BQkxFKE1FRElBX1NU
UkVBTSkKICNpZiBVU0UoTElCV0VCUlRDKSAmJiBQTEFURk9STShDT0NPQSkKICAgICBpZiAoZGVj
b2Rlci5tZXNzYWdlUmVjZWl2ZXJOYW1lKCkgPT0gTWVzc2FnZXM6OkxpYldlYlJUQ0NvZGVjczo6
bWVzc2FnZVJlY2VpdmVyTmFtZSgpKSB7CiAgICAgICAgIFdlYlByb2Nlc3M6OnNpbmdsZXRvbigp
LmxpYldlYlJUQ0NvZGVjcygpLmRpZFJlY2VpdmVNZXNzYWdlKGNvbm5lY3Rpb24sIGRlY29kZXIp
OwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL0dQVS9tZWRpYS9SZW1vdGVD
RE0uY3BwIGIvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL0dQVS9tZWRpYS9SZW1vdGVDRE0uY3Bw
CmluZGV4IDBjOTFiNDBmM2I5Yzc1YjNjMTEwYjYzNmY2OGNhNTcwNWEyNWI1NDguLjQ5ZmQzOGQx
ODJlMmY5MTU2MzNmYTQwYjNhMThhNGY0YTU3OWRlM2UgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJL
aXQvV2ViUHJvY2Vzcy9HUFUvbWVkaWEvUmVtb3RlQ0RNLmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0
L1dlYlByb2Nlc3MvR1BVL21lZGlhL1JlbW90ZUNETS5jcHAKQEAgLTI5LDYgKzI5LDcgQEAKICNp
ZiBFTkFCTEUoR1BVX1BST0NFU1MpICYmIEVOQUJMRShFTkNSWVBURURfTUVESUEpCiAKICNpbmNs
dWRlICJEYXRhUmVmZXJlbmNlLmgiCisjaW5jbHVkZSAiR1BVUHJvY2Vzc0Nvbm5lY3Rpb24uaCIK
ICNpbmNsdWRlICJSZW1vdGVDRE1JbnN0YW5jZS5oIgogI2luY2x1ZGUgIlJlbW90ZUNETUluc3Rh
bmNlQ29uZmlndXJhdGlvbi5oIgogI2luY2x1ZGUgIlJlbW90ZUNETUluc3RhbmNlSWRlbnRpZmll
ci5oIgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL0dQVS9tZWRpYS9nc3Ry
ZWFtZXIvVmlkZW9MYXllclJlbW90ZUdTdHJlYW1lci5jcHAgYi9Tb3VyY2UvV2ViS2l0L1dlYlBy
b2Nlc3MvR1BVL21lZGlhL2dzdHJlYW1lci9WaWRlb0xheWVyUmVtb3RlR1N0cmVhbWVyLmNwcApu
ZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwLi4zNjNjM2M0NDBiYjdkYjNiZjJjZmFmYjRkMWY1MmJhZDQ2YmIwMjljCi0tLSAv
ZGV2L251bGwKKysrIGIvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL0dQVS9tZWRpYS9nc3RyZWFt
ZXIvVmlkZW9MYXllclJlbW90ZUdTdHJlYW1lci5jcHAKQEAgLTAsMCArMSw1MiBAQAorLyoKKyAq
IENvcHlyaWdodCAoQykgMjAyMCBJZ2FsaWEgUy5MLgorICoKKyAqIFJlZGlzdHJpYnV0aW9uIGFu
ZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAorICogbW9k
aWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25k
aXRpb25zCisgKiBhcmUgbWV0OgorICogMS4gUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2Rl
IG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0
IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKyAqIDIuIFJlZGlz
dHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJp
Z2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93
aW5nIGRpc2NsYWltZXIgaW4gdGhlCisgKiAgICBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBt
YXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgorICoKKyAqIFRISVMgU09G
VFdBUkUgSVMgUFJPVklERUQgQlkgVEhFIENPUFlSSUdIVCBIT0xERVJTIGBgQVMgSVMnJworICog
QU5EIEFOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9U
IExJTUlURUQgVE8sCisgKiBUSEUgSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElU
WSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSCisgKiBQVVJQT1NFIEFSRSBESVNDTEFJTUVE
LiBJTiBOTyBFVkVOVCBTSEFMTCBBUFBMRSBJTkMuIE9SIElUUyBDT05UUklCVVRPUlMKKyAqIEJF
IExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVY
RU1QTEFSWSwgT1IKKyAqIENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9U
IExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GCisgKiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJ
Q0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MKKyAqIElOVEVS
UlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkgT0YgTElBQklMSVRZLCBX
SEVUSEVSIElOCisgKiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVCAoSU5DTFVE
SU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKQorICogQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBP
RiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRgorICogVEhFIFBP
U1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgorICovCisKKyNpbmNsdWRlICJjb25maWcuaCIKKyNp
bmNsdWRlICJWaWRlb0xheWVyUmVtb3RlLmgiCisKKyNpZiBFTkFCTEUoR1BVX1BST0NFU1MpCisK
KyNpbmNsdWRlIDxXZWJDb3JlL05vdEltcGxlbWVudGVkLmg+CisjaW5jbHVkZSA8V2ViQ29yZS9Q
bGF0Zm9ybUxheWVyLmg+CisKKyNpZiBVU0UoTklDT1NJQSkKKyNpbmNsdWRlIDxXZWJDb3JlL05p
Y29zaWFQbGF0Zm9ybUxheWVyLmg+CisjZWxpZiBVU0UoQ09PUkRJTkFURURfR1JBUEhJQ1MpCisj
aW5jbHVkZSA8V2ViQ29yZS9UZXh0dXJlTWFwcGVyUGxhdGZvcm1MYXllclByb3h5UHJvdmlkZXIu
aD4KKyNlbGlmIFVTRShURVhUVVJFX01BUFBFUikKKyNpbmNsdWRlIDxXZWJDb3JlL1RleHR1cmVN
YXBwZXJQbGF0Zm9ybUxheWVyLmg+CisjZW5kaWYKKworbmFtZXNwYWNlIFdlYktpdCB7CisKK1Bs
YXRmb3JtTGF5ZXJDb250YWluZXIgY3JlYXRlVmlkZW9MYXllclJlbW90ZShNZWRpYVBsYXllclBy
aXZhdGVSZW1vdGUqIG1lZGlhUGxheWVyUHJpdmF0ZVJlbW90ZSwgTGF5ZXJIb3N0aW5nQ29udGV4
dElEIGNvbnRleHRJZCkKK3sKKyAgICBub3RJbXBsZW1lbnRlZCgpOworICAgIHJldHVybiBudWxs
cHRyOworfQorCit9CisKKyNlbmRpZgpkaWZmIC0tZ2l0IGEvU291cmNlL2NtYWtlL09wdGlvbnNH
VEsuY21ha2UgYi9Tb3VyY2UvY21ha2UvT3B0aW9uc0dUSy5jbWFrZQppbmRleCA2ZmY4YzM5OTIy
YTRmMzEyOWI2ODdhZTBmOWQxNWRlM2VkYzY0ZTAzLi4wOTk0NTNkODUzNWYyMzkxMTk2MzZiNzQy
ZWIzZTMwZmRlMTQ4NTkzIDEwMDY0NAotLS0gYS9Tb3VyY2UvY21ha2UvT3B0aW9uc0dUSy5jbWFr
ZQorKysgYi9Tb3VyY2UvY21ha2UvT3B0aW9uc0dUSy5jbWFrZQpAQCAtMTU2LDEyICsxNTYsMTYg
QEAgV0VCS0lUX09QVElPTl9ERUZBVUxUX1BPUlRfVkFMVUUoRU5BQkxFX1dFQkRSSVZFUiBQVUJM
SUMgT04pCiAjIENoYW5naW5nIHRoZXNlIG9wdGlvbnMgaXMgY29tcGxldGVseSB1bnN1cHBvcnRl
ZC4KIFdFQktJVF9PUFRJT05fREVGQVVMVF9QT1JUX1ZBTFVFKEVOQUJMRV9BVVRPQ0FQSVRBTEla
RSBQUklWQVRFIE9OKQogV0VCS0lUX09QVElPTl9ERUZBVUxUX1BPUlRfVkFMVUUoRU5BQkxFX0NP
TlRFTlRfRVhURU5TSU9OUyBQUklWQVRFIE9OKQorV0VCS0lUX09QVElPTl9ERUZBVUxUX1BPUlRf
VkFMVUUoRU5BQkxFX0NTU19DT05JQ19HUkFESUVOVFMgUFJJVkFURSBPTikKK1dFQktJVF9PUFRJ
T05fREVGQVVMVF9QT1JUX1ZBTFVFKEVOQUJMRV9DU1NfUEFJTlRJTkdfQVBJIFBSSVZBVEUgJHtF
TkFCTEVfRVhQRVJJTUVOVEFMX0ZFQVRVUkVTfSkKK1dFQktJVF9PUFRJT05fREVGQVVMVF9QT1JU
X1ZBTFVFKEVOQUJMRV9DU1NfVFlQRURfT00gUFJJVkFURSAke0VOQUJMRV9FWFBFUklNRU5UQUxf
RkVBVFVSRVN9KQogV0VCS0lUX09QVElPTl9ERUZBVUxUX1BPUlRfVkFMVUUoRU5BQkxFX0NVUlNP
Ul9WSVNJQklMSVRZIFBSSVZBVEUgT04pCiBXRUJLSVRfT1BUSU9OX0RFRkFVTFRfUE9SVF9WQUxV
RShFTkFCTEVfREFSS19NT0RFX0NTUyBQUklWQVRFIE9OKQogV0VCS0lUX09QVElPTl9ERUZBVUxU
X1BPUlRfVkFMVUUoRU5BQkxFX0RBVEFMSVNUX0VMRU1FTlQgUFJJVkFURSBPTikKIFdFQktJVF9P
UFRJT05fREVGQVVMVF9QT1JUX1ZBTFVFKEVOQUJMRV9ET1dOTE9BRF9BVFRSSUJVVEUgUFJJVkFU
RSBPTikKIFdFQktJVF9PUFRJT05fREVGQVVMVF9QT1JUX1ZBTFVFKEVOQUJMRV9FTkNSWVBURURf
TUVESUEgUFJJVkFURSAke0VOQUJMRV9FWFBFUklNRU5UQUxfRkVBVFVSRVN9KQogV0VCS0lUX09Q
VElPTl9ERUZBVUxUX1BPUlRfVkFMVUUoRU5BQkxFX0ZUUERJUiBQUklWQVRFIE9GRikKK1dFQktJ
VF9PUFRJT05fREVGQVVMVF9QT1JUX1ZBTFVFKEVOQUJMRV9HUFVfUFJPQ0VTUyBQUklWQVRFICR7
RU5BQkxFX0VYUEVSSU1FTlRBTF9GRUFUVVJFU30pCiBXRUJLSVRfT1BUSU9OX0RFRkFVTFRfUE9S
VF9WQUxVRShFTkFCTEVfSU5QVVRfVFlQRV9DT0xPUiBQUklWQVRFIE9OKQogV0VCS0lUX09QVElP
Tl9ERUZBVUxUX1BPUlRfVkFMVUUoRU5BQkxFX0xBWU9VVF9GT1JNQVRUSU5HX0NPTlRFWFQgUFJJ
VkFURSAke0VOQUJMRV9FWFBFUklNRU5UQUxfRkVBVFVSRVN9KQogV0VCS0lUX09QVElPTl9ERUZB
VUxUX1BPUlRfVkFMVUUoRU5BQkxFX01FRElBX1NUUkVBTSBQUklWQVRFICR7RU5BQkxFX0VYUEVS
SU1FTlRBTF9GRUFUVVJFU30pCkBAIC0xNzMsOSArMTc3LDYgQEAgV0VCS0lUX09QVElPTl9ERUZB
VUxUX1BPUlRfVkFMVUUoRU5BQkxFX1BPSU5URVJfTE9DSyBQUklWQVRFIE9OKQogV0VCS0lUX09Q
VElPTl9ERUZBVUxUX1BPUlRfVkFMVUUoRU5BQkxFX1NFUlZJQ0VfV09SS0VSIFBSSVZBVEUgT04p
CiBXRUJLSVRfT1BUSU9OX0RFRkFVTFRfUE9SVF9WQUxVRShFTkFCTEVfU0hBUkVBQkxFX1JFU09V
UkNFIFBVQkxJQyBPTikKIFdFQktJVF9PUFRJT05fREVGQVVMVF9QT1JUX1ZBTFVFKEVOQUJMRV9X
RUJfUlRDIFBSSVZBVEUgJHtFTkFCTEVfRVhQRVJJTUVOVEFMX0ZFQVRVUkVTfSkKLVdFQktJVF9P
UFRJT05fREVGQVVMVF9QT1JUX1ZBTFVFKEVOQUJMRV9DU1NfUEFJTlRJTkdfQVBJIFBSSVZBVEUg
JHtFTkFCTEVfRVhQRVJJTUVOVEFMX0ZFQVRVUkVTfSkKLVdFQktJVF9PUFRJT05fREVGQVVMVF9Q
T1JUX1ZBTFVFKEVOQUJMRV9DU1NfVFlQRURfT00gUFJJVkFURSAke0VOQUJMRV9FWFBFUklNRU5U
QUxfRkVBVFVSRVN9KQotV0VCS0lUX09QVElPTl9ERUZBVUxUX1BPUlRfVkFMVUUoRU5BQkxFX0NT
U19DT05JQ19HUkFESUVOVFMgUFJJVkFURSBPTikKIAogaW5jbHVkZShHU3RyZWFtZXJEZXBlbmRl
bmNpZXMpCiAKZGlmZiAtLWdpdCBhL0NoYW5nZUxvZyBiL0NoYW5nZUxvZwppbmRleCAxYzgxYzg3
YzkxZWQ3MjBiMGRjNjM5MWUwMzAyMWYyZDA3YWVmNTc0Li41OGZlZDM0NzUyYzk2NTg2Y2Q2MTcw
MmFmZmEzN2ZmNzMyMzFhMGVkIDEwMDY0NAotLS0gYS9DaGFuZ2VMb2cKKysrIGIvQ2hhbmdlTG9n
CkBAIC0xLDMgKzEsMTcgQEAKKzIwMjAtMDQtMDggIFbDrWN0b3IgTWFudWVsIErDoXF1ZXogTGVh
bCAgPHZqYXF1ZXpAaWdhbGlhLmNvbT4KKworICAgICAgICBbR1BVUF1bR1RLXSBjb21waWxlIEdQ
VVByb2Nlc3MgaW4gR1RLIHBvcnQKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hv
d19idWcuY2dpP2lkPTIwODgxNAorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEp
LgorCisgICAgICAgIEVuYWJsZSBHUFVQcm9jZXNzIGNvbXBpbGF0aW9uIGluIFdlYktpdEdUSyBh
cyBhbiBleHBlcmltZW50YWwKKyAgICAgICAgZmVhdHVyZQorCisgICAgICAgICogU291cmNlL2Nt
YWtlL09wdGlvbnNHVEsuY21ha2U6IHNvcnQgYWxwaGFiZXRpY2FsbHkgV2ViS2l0CisgICAgICAg
IG9wdGlvbnMgZm9yIEdUSyBwb3J0IGFuZCBlbmFibGUgR1BVX1BST0NFU1MgaWYgZXhwZXJpbWVu
dGFsCisgICAgICAgIGZlYXR1cmVzIG9wdGlvbiBpcyBlbmFibGVkLgorCiAyMDIwLTA0LTA4ICBL
ZWl0aCBSb2xsaW4gIDxrcm9sbGluQGFwcGxlLmNvbT4KIAogICAgICAgICBFbmFibGUgdGhlIHVz
ZSBvZiBYQ0J1aWxkIGJ5IGRlZmF1bHQgaW4gQXBwbGUgYnVpbGRzCg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>397179</attachid>
            <date>2020-04-22 02:12:26 -0700</date>
            <delta_ts>2020-04-28 09:56:27 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-208814-20200422111224.patch</filename>
            <type>text/plain</type>
            <size>24614</size>
            <attacher name="Víctor M. Jáquez L.">vjaquez</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjYwNTA0CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L0No
YW5nZUxvZyBiL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCmluZGV4IGJmMzE5MzM0OWViOGM2MmYy
M2Y2ZWJiOTJlMWUyMzAyNzA2ZjVhZjkuLmNjMjI4MGNhNWI1M2EyNDcxOWIxNTExMTY2ZTUyY2My
MDRhZDUxNmQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCisrKyBiL1NvdXJj
ZS9XZWJLaXQvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsNjMgQEAKKzIwMjAtMDQtMDggIFbDrWN0b3Ig
TWFudWVsIErDoXF1ZXogTGVhbCAgPHZqYXF1ZXpAaWdhbGlhLmNvbT4KKworICAgICAgICBbR1BV
UF1bR1RLXSBjb21waWxlIEdQVVByb2Nlc3MgaW4gR1RLIHBvcnQKKyAgICAgICAgaHR0cHM6Ly9i
dWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIwODgxNAorCisgICAgICAgIFJldmlld2Vk
IGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIEVuYWJsZSBHUFVQcm9jZXNzIGNvbXBpbGF0
aW9uIGluIFdlYktpdEdUSyBhcyBhbiBleHBlcmltZW50YWwKKyAgICAgICAgZmVhdHVyZQorCisg
ICAgICAgIE5vIG5ldyB0ZXN0cyByZXF1aXJlZC4KKworICAgICAgICAqIEdQVVByb2Nlc3MvR1BV
Q29ubmVjdGlvblRvV2ViUHJvY2Vzcy5jcHA6IGd1YXJkCisgICAgICAgIFVzZXJNZWRpYUNhcHR1
cmVNYW5hZ2VyUHJveHkgZm9yIENvY29hIHBsYXRmb3JtIG9ubHkuCisgICAgICAgIChXZWJLaXQ6
OkdQVUNvbm5lY3Rpb25Ub1dlYlByb2Nlc3M6OmRpc3BhdGNoTWVzc2FnZSk6IGd1YXJkCisgICAg
ICAgIG1lc3NhZ2VzIGZyb20gVXNlck1lZGlhQ2FwdHVyZU1hbmFnZXJQcm94eSBmb3IgQ29jb2Eg
cGxhdGZvcm0sCisgICAgICAgIG1vdmluZyB1cCB0aGlzIGd1YXJkIGZyb20gdmlkZW8gdHJhY2sg
bWVzc2FnZXMuCisgICAgICAgIChXZWJLaXQ6OkdQVUNvbm5lY3Rpb25Ub1dlYlByb2Nlc3M6Om1l
ZGlhS2V5U3RvcmFnZURpcmVjdG9yeSk6CisgICAgICAgIHJlbW92ZWQgZ3VhcmQgZm9yIHRoaXMg
ZnVuY3Rpb24gb2YgRU5DUllQVEVEX01FRElBIGxlYXZpbmcgb25seQorICAgICAgICBMRUdBQ1lf
RU5DUllQVEVEX01FRElBLCBzaW5jZSBpdCdzIHdlcmUgaXQgaXMgZGVmaW5lZC4KKyAgICAgICAg
KFdlYktpdDo6R1BVQ29ubmVjdGlvblRvV2ViUHJvY2Vzczo6c2V0T3JpZW50YXRpb25Gb3JNZWRp
YUNhcHR1cmUpOgorICAgICAgICBndWFyZCB0aGUgY29udGVudCBvZiB0aGlzIGZ1bmN0aW9uIGZv
ciBDb2NvYSBwbGF0Zm9ybSwgc2luY2UgaXQgaXMKKyAgICAgICAgY2FsbGluZyBhIFVzZXJNZWRp
YUNhcHR1cmVNYW5hZ2VyUHJveHkgb2JqZWN0LgorICAgICAgICAqIEdQVVByb2Nlc3MvR1BVUHJv
Y2Vzcy5jcHA6IFJlcGxhY2UgdGhlIGluY2x1ZGVkIGhlYWRlciB0byBtYXRjaAorICAgICAgICB3
aXRoIHRoZSB1c2VkIHN5bWJvbHMgaW4gZmlsZS4KKyAgICAgICAgKiBHUFVQcm9jZXNzL2dzdHJl
YW1lci9HUFVQcm9jZXNzR1N0cmVhbWVyLmNwcDogQWRkZWQuCisgICAgICAgIChXZWJLaXQ6OkdQ
VVByb2Nlc3M6OmluaXRpYWxpemVQcm9jZXNzKTogRW1wdHkgZnVuY3Rpb24uCisgICAgICAgIChX
ZWJLaXQ6OkdQVVByb2Nlc3M6OmluaXRpYWxpemVQcm9jZXNzTmFtZSk6IEVtcHR5IGZ1bmN0aW9u
LgorICAgICAgICAoV2ViS2l0OjpHUFVQcm9jZXNzOjppbml0aWFsaXplU2FuZGJveCk6IEVtcHR5
IGZ1bmN0aW9uLgorICAgICAgICAqIEdQVVByb2Nlc3MvZ3N0cmVhbWVyL0dQVVByb2Nlc3NNYWlu
R1N0cmVhbWVyLmNwcDogQWRkZWQuCisgICAgICAgIChXZWJLaXQ6OmluaXRpYWxpemVBdXhpbGlh
cnlQcm9jZXNzPEdQVVByb2Nlc3M+KTogTmV3IGZ1bmN0aW9uLgorICAgICAgICAoV2ViS2l0OjpH
UFVQcm9jZXNzTWFpbik6IE5ldyBmdW5jdGlvbi4KKyAgICAgICAgKiBHUFVQcm9jZXNzL21lZGlh
L1JlbW90ZUxlZ2FjeUNETUZhY3RvcnlQcm94eS5jcHA6IGNoYW5nZWQgZ3VhcmQKKyAgICAgICAg
Zm9yIHRoaXMgZmlsZSBmcm9tIEVOQ1JZUFRFRF9NRURJQSB0byBMRUdBQ1lfRU5DUllQVEVEX01F
RElBIHRvCisgICAgICAgIG1hdGNoIHdpdGggaXRzIGhlYWRlciBmaWxlLgorICAgICAgICAqIEdQ
VVByb2Nlc3MvbWVkaWEvZ3N0cmVhbWVyL1JlbW90ZU1lZGlhUGxheWVyUHJveHlHU3RyZWFtZXIu
Y3BwOiBBZGRlZC4KKyAgICAgICAgKFdlYktpdDo6UmVtb3RlTWVkaWFQbGF5ZXJQcm94eTo6cHJl
cGFyZUZvclBsYXliYWNrKToKKyAgICAgICAgTmV3IGZ1bmN0aW9uIHRoYXQgcmFpc2Ugbm9JbXBs
ZW1lbnRlZCgpCisgICAgICAgIChXZWJLaXQ6OlJlbW90ZU1lZGlhUGxheWVyUHJveHk6Om1lZGlh
UGxheWVyRmlyc3RWaWRlb0ZyYW1lQXZhaWxhYmxlKToKKyAgICAgICAgTmV3IGZ1bmN0aW9uIHRo
YXQgcmFpc2Ugbm9JbXBsZW1lbnRlZCgpCisgICAgICAgIChXZWJLaXQ6OlJlbW90ZU1lZGlhUGxh
eWVyUHJveHk6Om1lZGlhUGxheWVyUmVuZGVyaW5nTW9kZUNoYW5nZWQpOgorICAgICAgICBOZXcg
ZnVuY3Rpb24gdGhhdCByYWlzZSBub0ltcGxlbWVudGVkKCkKKyAgICAgICAgKFdlYktpdDo6UmVt
b3RlTWVkaWFQbGF5ZXJQcm94eTo6ZW50ZXJGdWxsc2NyZWVuKTogTmV3IGZ1bmN0aW9uCisgICAg
ICAgIHRoYXQgcmFpc2Ugbm9JbXBsZW1lbnRlZCgpCisgICAgICAgIChXZWJLaXQ6OlJlbW90ZU1l
ZGlhUGxheWVyUHJveHk6OmV4aXRGdWxsc2NyZWVuKTogTmV3IGZ1bmN0aW9uCisgICAgICAgIHRo
YXQgcmFpc2Ugbm9JbXBsZW1lbnRlZCgpCisgICAgICAgICogUGxhdGZvcm1HVEsuY21ha2U6IGFk
ZCBQbGF0Zm9ybS9nZW5lcmljIGhlYWRlciBkaXJlY3RvcnkuCisgICAgICAgICogU291cmNlc0dU
Sy50eHQ6IEFkZCB0aGUgbmV3IGZpbGVzIGFuZAorICAgICAgICBHUFVQcm9jZXNzL21lZGlhL1Jl
bW90ZUF1ZGlvRGVzdGluYXRpb25NYW5hZ2VyLmNwcAorICAgICAgICAqIFdlYlByb2Nlc3MvR1BV
L0dQVVByb2Nlc3NDb25uZWN0aW9uLmNwcDogZ3VhcmQKKyAgICAgICAgVXNlck1lZGlhQ2FwdHVy
ZU1hbmFnZXIgZm9yIENvY29hIHBsYXRmb3JtIG9ubHkuCisgICAgICAgIChXZWJLaXQ6OkdQVVBy
b2Nlc3NDb25uZWN0aW9uOjpkaXNwYXRjaE1lc3NhZ2UpOiBndWFyZCBtZXNzYWdlcworICAgICAg
ICBmcm9tIFVzZXJNZWRpYUNhcHR1cmVNYW5hZ2VyIGZvciBDb2NvYSBwbGF0Zm9ybSwgbW92aW5n
IHVwIHRoaXMKKyAgICAgICAgZ3VhcmQgYXBwbGllZCBhbHNvIGZvciB2aWRlbyB0cmFjay4KKyAg
ICAgICAgKiBXZWJQcm9jZXNzL0dQVS9tZWRpYS9SZW1vdGVDRE0uY3BwOiBpbmNsdWRlIG1pc3Np
bmcgaGVhZGVyCisgICAgICAgIEdQVVByb2Nlc3NDb25uZWN0aW9uLmgKKyAgICAgICAgKiBXZWJQ
cm9jZXNzL0dQVS9tZWRpYS9nc3RyZWFtZXIvVmlkZW9MYXllclJlbW90ZUdTdHJlYW1lci5jcHA6
IEFkZGVkLgorICAgICAgICAoV2ViS2l0OjpjcmVhdGVWaWRlb0xheWVyUmVtb3RlKTogTmV3IGZ1
bmN0aW9uCisgICAgICAgIHRoYXQgcmFpc2Ugbm9JbXBsZW1lbnRlZCgpCisKIDIwMjAtMDQtMjEg
IFJ5YW4gSGFkZGFkICA8cnlhbmhhZGRhZEBhcHBsZS5jb20+CiAKICAgICAgICAgVW5yZXZpZXdl
ZCwgcmV2ZXJ0aW5nIHIyNjA0NzguCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L0dQVVByb2Nl
c3MvR1BVQ29ubmVjdGlvblRvV2ViUHJvY2Vzcy5jcHAgYi9Tb3VyY2UvV2ViS2l0L0dQVVByb2Nl
c3MvR1BVQ29ubmVjdGlvblRvV2ViUHJvY2Vzcy5jcHAKaW5kZXggMjZmNzM4MGNhNTIyYWZkODQw
MmM2NTMzZTkzNzc3NTQ2NTMxMzA4Yi4uNDMxYzMzOTIxNjY4MDRlYzMwODFmYmM2Y2FkYWI0NTQx
M2E0MTAwNCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9HUFVQcm9jZXNzL0dQVUNvbm5lY3Rp
b25Ub1dlYlByb2Nlc3MuY3BwCisrKyBiL1NvdXJjZS9XZWJLaXQvR1BVUHJvY2Vzcy9HUFVDb25u
ZWN0aW9uVG9XZWJQcm9jZXNzLmNwcApAQCAtNzMsNyArNzMsNyBAQAogI2luY2x1ZGUgIlJlbW90
ZUNETVByb3h5TWVzc2FnZXMuaCIKICNlbmRpZgogCi0jaWYgRU5BQkxFKE1FRElBX1NUUkVBTSkK
KyNpZiBQTEFURk9STShDT0NPQSkgJiYgRU5BQkxFKE1FRElBX1NUUkVBTSkKICNpbmNsdWRlICJV
c2VyTWVkaWFDYXB0dXJlTWFuYWdlclByb3h5LmgiCiAjaW5jbHVkZSAiVXNlck1lZGlhQ2FwdHVy
ZU1hbmFnZXJQcm94eU1lc3NhZ2VzLmgiCiAjZW5kaWYKQEAgLTM2NCw3ICszNjQsNyBAQCBib29s
IEdQVUNvbm5lY3Rpb25Ub1dlYlByb2Nlc3M6OmRpc3BhdGNoTWVzc2FnZShJUEM6OkNvbm5lY3Rp
b24mIGNvbm5lY3Rpb24sIElQQwogICAgICAgICByZW1vdGVNZWRpYVJlc291cmNlTWFuYWdlcigp
LmRpZFJlY2VpdmVNZXNzYWdlKGNvbm5lY3Rpb24sIGRlY29kZXIpOwogICAgICAgICByZXR1cm4g
dHJ1ZTsKICAgICB9Ci0jaWYgRU5BQkxFKE1FRElBX1NUUkVBTSkKKyNpZiBQTEFURk9STShDT0NP
QSkgJiYgRU5BQkxFKE1FRElBX1NUUkVBTSkKICAgICBpZiAoZGVjb2Rlci5tZXNzYWdlUmVjZWl2
ZXJOYW1lKCkgPT0gTWVzc2FnZXM6OlVzZXJNZWRpYUNhcHR1cmVNYW5hZ2VyUHJveHk6Om1lc3Nh
Z2VSZWNlaXZlck5hbWUoKSkgewogICAgICAgICB1c2VyTWVkaWFDYXB0dXJlTWFuYWdlclByb3h5
KCkuZGlkUmVjZWl2ZU1lc3NhZ2VGcm9tR1BVUHJvY2Vzcyhjb25uZWN0aW9uLCBkZWNvZGVyKTsK
ICAgICAgICAgcmV0dXJuIHRydWU7CkBAIC0zNzcsNyArMzc3LDcgQEAgYm9vbCBHUFVDb25uZWN0
aW9uVG9XZWJQcm9jZXNzOjpkaXNwYXRjaE1lc3NhZ2UoSVBDOjpDb25uZWN0aW9uJiBjb25uZWN0
aW9uLCBJUEMKICAgICAgICAgbWVkaWFSZWNvcmRlck1hbmFnZXIoKS5kaWRSZWNlaXZlUmVtb3Rl
TWVkaWFSZWNvcmRlck1lc3NhZ2UoY29ubmVjdGlvbiwgZGVjb2Rlcik7CiAgICAgICAgIHJldHVy
biB0cnVlOwogICAgIH0KLSNpZiBQTEFURk9STShDT0NPQSkgJiYgRU5BQkxFKFZJREVPX1RSQUNL
KQorI2lmIEVOQUJMRShWSURFT19UUkFDSykKICAgICBpZiAoZGVjb2Rlci5tZXNzYWdlUmVjZWl2
ZXJOYW1lKCkgPT0gTWVzc2FnZXM6OlJlbW90ZUF1ZGlvTWVkaWFTdHJlYW1UcmFja1JlbmRlcmVy
TWFuYWdlcjo6bWVzc2FnZVJlY2VpdmVyTmFtZSgpKSB7CiAgICAgICAgIGF1ZGlvVHJhY2tSZW5k
ZXJlck1hbmFnZXIoKS5kaWRSZWNlaXZlTWVzc2FnZUZyb21XZWJQcm9jZXNzKGNvbm5lY3Rpb24s
IGRlY29kZXIpOwogICAgICAgICByZXR1cm4gdHJ1ZTsKQEAgLTQ5Nyw3ICs0OTcsNyBAQCBjb25z
dCBTdHJpbmcmIEdQVUNvbm5lY3Rpb25Ub1dlYlByb2Nlc3M6Om1lZGlhQ2FjaGVEaXJlY3Rvcnko
KSBjb25zdAogICAgIHJldHVybiBtX2dwdVByb2Nlc3MtPm1lZGlhQ2FjaGVEaXJlY3RvcnkobV9z
ZXNzaW9uSUQpOwogfQogCi0jaWYgRU5BQkxFKEVOQ1JZUFRFRF9NRURJQSkgfHwgRU5BQkxFKExF
R0FDWV9FTkNSWVBURURfTUVESUEpCisjaWYgRU5BQkxFKExFR0FDWV9FTkNSWVBURURfTUVESUEp
CiBjb25zdCBTdHJpbmcmIEdQVUNvbm5lY3Rpb25Ub1dlYlByb2Nlc3M6Om1lZGlhS2V5c1N0b3Jh
Z2VEaXJlY3RvcnkoKSBjb25zdAogewogICAgIHJldHVybiBtX2dwdVByb2Nlc3MtPm1lZGlhS2V5
c1N0b3JhZ2VEaXJlY3RvcnkobV9zZXNzaW9uSUQpOwpAQCAtNTA3LDcgKzUwNyw5IEBAIGNvbnN0
IFN0cmluZyYgR1BVQ29ubmVjdGlvblRvV2ViUHJvY2Vzczo6bWVkaWFLZXlzU3RvcmFnZURpcmVj
dG9yeSgpIGNvbnN0CiAjaWYgRU5BQkxFKE1FRElBX1NUUkVBTSkKIHZvaWQgR1BVQ29ubmVjdGlv
blRvV2ViUHJvY2Vzczo6c2V0T3JpZW50YXRpb25Gb3JNZWRpYUNhcHR1cmUodWludDY0X3Qgb3Jp
ZW50YXRpb24pCiB7CisjaWYgUExBVEZPUk0oQ09DT0EpCiAgICAgdXNlck1lZGlhQ2FwdHVyZU1h
bmFnZXJQcm94eSgpLnNldE9yaWVudGF0aW9uKG9yaWVudGF0aW9uKTsKKyNlbmRpZgogfQogCiB2
b2lkIEdQVUNvbm5lY3Rpb25Ub1dlYlByb2Nlc3M6OnVwZGF0ZUNhcHR1cmVBY2Nlc3MoYm9vbCBh
bGxvd0F1ZGlvQ2FwdHVyZSwgYm9vbCBhbGxvd1ZpZGVvQ2FwdHVyZSwgYm9vbCBhbGxvd0Rpc3Bs
YXlDYXB0dXJlKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9HUFVQcm9jZXNzL0dQVVByb2Nl
c3MuY3BwIGIvU291cmNlL1dlYktpdC9HUFVQcm9jZXNzL0dQVVByb2Nlc3MuY3BwCmluZGV4IDk1
MDc2ZjI2NDEwZDBhNmJjMjJhYTc0MjkyOTU4ODJlMWVkMTY4YWYuLjIzMGI2MmZmODdmMWU2MWNh
NzFlOTg5NzBiYTNkMjE2ZWViYTYxNjQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvR1BVUHJv
Y2Vzcy9HUFVQcm9jZXNzLmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0L0dQVVByb2Nlc3MvR1BVUHJv
Y2Vzcy5jcHAKQEAgLTU2LDcgKzU2LDcgQEAKICNlbmRpZgogCiAjaWYgRU5BQkxFKE1FRElBX1NU
UkVBTSkKLSNpbmNsdWRlIDxXZWJDb3JlL01vY2tBdWRpb1NoYXJlZFVuaXQuaD4KKyNpbmNsdWRl
IDxXZWJDb3JlL01vY2tSZWFsdGltZU1lZGlhU291cmNlQ2VudGVyLmg+CiAjZW5kaWYKIAogbmFt
ZXNwYWNlIFdlYktpdCB7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L0dQVVByb2Nlc3MvZ3N0
cmVhbWVyL0dQVVByb2Nlc3NHU3RyZWFtZXIuY3BwIGIvU291cmNlL1dlYktpdC9HUFVQcm9jZXNz
L2dzdHJlYW1lci9HUFVQcm9jZXNzR1N0cmVhbWVyLmNwcApuZXcgZmlsZSBtb2RlIDEwMDY0NApp
bmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi40Zjg4OTI5MjYx
ZmRhODgzNDQwNDg1OWEyMTk5MGRiYzI1YjIzZTQzCi0tLSAvZGV2L251bGwKKysrIGIvU291cmNl
L1dlYktpdC9HUFVQcm9jZXNzL2dzdHJlYW1lci9HUFVQcm9jZXNzR1N0cmVhbWVyLmNwcApAQCAt
MCwwICsxLDUwIEBACisvKgorICogQ29weXJpZ2h0IChDKSAyMDIwIElnYWxpYSBTLkwuCisgKgor
ICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0
aCBvciB3aXRob3V0CisgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhh
dCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKKyAqIGFyZSBtZXQ6CisgKiAxLiBSZWRpc3RyaWJ1
dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAorICog
ICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNj
bGFpbWVyLgorICogMi4gUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9k
dWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRp
dGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKKyAqICAgIGRvY3VtZW50
YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRp
b24uCisgKgorICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBUSEUgQ09QWVJJR0hUIEhP
TERFUlMgYGBBUyBJUycnCisgKiBBTkQgQU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVT
LCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywKKyAqIFRIRSBJTVBMSUVEIFdBUlJBTlRJ
RVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIKKyAqIFBV
UlBPU0UgQVJFIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIEFQUExFIElOQy4gT1IgSVRT
IENPTlRSSUJVVE9SUworICogQkUgTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5D
SURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUgorICogQ09OU0VRVUVOVElBTCBEQU1BR0VT
IChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YKKyAqIFNVQlNU
SVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBP
UiBCVVNJTkVTUworICogSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZIFRI
RU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4KKyAqIENPTlRSQUNULCBTVFJJQ1QgTElBQklM
SVRZLCBPUiBUT1JUIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpCisgKiBBUklT
SU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBB
RFZJU0VEIE9GCisgKiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCisgKi8KKworI2lu
Y2x1ZGUgImNvbmZpZy5oIgorI2luY2x1ZGUgIkdQVVByb2Nlc3MuaCIKKworI2lmIEVOQUJMRShH
UFVfUFJPQ0VTUykgJiYgVVNFKEdTVFJFQU1FUikKKworI2luY2x1ZGUgIkdQVVByb2Nlc3NDcmVh
dGlvblBhcmFtZXRlcnMuaCIKKworbmFtZXNwYWNlIFdlYktpdCB7CisKK3ZvaWQgR1BVUHJvY2Vz
czo6aW5pdGlhbGl6ZVByb2Nlc3MoY29uc3QgQXV4aWxpYXJ5UHJvY2Vzc0luaXRpYWxpemF0aW9u
UGFyYW1ldGVycyYpCit7Cit9CisKK3ZvaWQgR1BVUHJvY2Vzczo6aW5pdGlhbGl6ZVByb2Nlc3NO
YW1lKGNvbnN0IEF1eGlsaWFyeVByb2Nlc3NJbml0aWFsaXphdGlvblBhcmFtZXRlcnMmKQorewor
fQorCit2b2lkIEdQVVByb2Nlc3M6OmluaXRpYWxpemVTYW5kYm94KGNvbnN0IEF1eGlsaWFyeVBy
b2Nlc3NJbml0aWFsaXphdGlvblBhcmFtZXRlcnMmLCBTYW5kYm94SW5pdGlhbGl6YXRpb25QYXJh
bWV0ZXJzJikKK3sKK30KKworfSAvLyBuYW1lc3BhY2UgV2ViS2l0CisKKyNlbmRpZiAvLyBFTkFC
TEUoR1BVX1BST0NFU1MpCisKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvR1BVUHJvY2Vzcy9n
c3RyZWFtZXIvR1BVUHJvY2Vzc01haW5HU3RyZWFtZXIuY3BwIGIvU291cmNlL1dlYktpdC9HUFVQ
cm9jZXNzL2dzdHJlYW1lci9HUFVQcm9jZXNzTWFpbkdTdHJlYW1lci5jcHAKbmV3IGZpbGUgbW9k
ZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4u
MTU1YWI2ZTg4ZjVmNmI3OWVmM2JjZDU4NDg3Yjc1YzdhOWRlNGRjNgotLS0gL2Rldi9udWxsCisr
KyBiL1NvdXJjZS9XZWJLaXQvR1BVUHJvY2Vzcy9nc3RyZWFtZXIvR1BVUHJvY2Vzc01haW5HU3Ry
ZWFtZXIuY3BwCkBAIC0wLDAgKzEsNjAgQEAKKy8qCisgKiBDb3B5cmlnaHQgKEMpIDIwMjAgSWdh
bGlhIFMuTC4KKyAqCisgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmlu
YXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKKyAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRl
ZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucworICogYXJlIG1ldDoKKyAq
IDEuIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUg
Y29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUg
Zm9sbG93aW5nIGRpc2NsYWltZXIuCisgKiAyLiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZv
cm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlz
IGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQor
ICogICAgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGgg
dGhlIGRpc3RyaWJ1dGlvbi4KKyAqCisgKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIFRI
RSBDT1BZUklHSFQgSE9MREVSUyBgYEFTIElTJycKKyAqIEFORCBBTlkgRVhQUkVTUyBPUiBJTVBM
SUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLAorICogVEhFIElN
UExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFS
VElDVUxBUgorICogUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgQVBQ
TEUgSU5DLiBPUiBJVFMgQ09OVFJJQlVUT1JTCisgKiBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1Qs
IElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SCisgKiBDT05TRVFV
RU5USUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVO
VCBPRgorICogU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsIERBVEEs
IE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTCisgKiBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VE
IEFORCBPTiBBTlkgVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTgorICogQ09OVFJBQ1Qs
IFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVS
V0lTRSkKKyAqIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRSBPRiBUSElTIFNPRlRX
QVJFLCBFVkVOIElGIEFEVklTRUQgT0YKKyAqIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFH
RS4KKyAqLworCisjaW5jbHVkZSAiY29uZmlnLmgiCisjaW5jbHVkZSAiR1BVUHJvY2Vzc01haW4u
aCIKKworI2lmIEVOQUJMRShHUFVfUFJPQ0VTUykgJiYgVVNFKEdTVFJFQU1FUikKKworI2luY2x1
ZGUgIkF1eGlsaWFyeVByb2Nlc3NNYWluLmgiCisjaW5jbHVkZSAiR1BVUHJvY2Vzcy5oIgorCitu
YW1lc3BhY2UgV2ViS2l0IHsKKworc3RhdGljIFJlZlB0cjxHUFVQcm9jZXNzPiBnbG9iYWxHUFVQ
cm9jZXNzOworCitjbGFzcyBHUFVQcm9jZXNzTWFpbkdTdHJlYW1lciBmaW5hbDogcHVibGljIEF1
eGlsaWFyeVByb2Nlc3NNYWluQmFzZSB7CitwdWJsaWM6CisgICAgYm9vbCBwbGF0Zm9ybUluaXRp
YWxpemUoKSBvdmVycmlkZQorICAgIHsKKyAgICAgICAgcmV0dXJuIHRydWU7CisgICAgfQorfTsK
KwordGVtcGxhdGU8Pgordm9pZCBpbml0aWFsaXplQXV4aWxpYXJ5UHJvY2VzczxHUFVQcm9jZXNz
PihBdXhpbGlhcnlQcm9jZXNzSW5pdGlhbGl6YXRpb25QYXJhbWV0ZXJzJiYgcGFyYW1ldGVycykK
K3sKKyAgICBzdGF0aWMgTmV2ZXJEZXN0cm95ZWQ8R1BVUHJvY2Vzcz4gZ3B1UHJvY2VzcyhXVEZN
b3ZlKHBhcmFtZXRlcnMpKTsKKyAgICBnbG9iYWxHUFVQcm9jZXNzID0gJmdwdVByb2Nlc3MuZ2V0
KCk7Cit9CisKK2ludCBHUFVQcm9jZXNzTWFpbihpbnQgYXJnYywgY2hhcioqIGFyZ3YpCit7Cisg
ICAgcmV0dXJuIEF1eGlsaWFyeVByb2Nlc3NNYWluPEdQVVByb2Nlc3MsIEdQVVByb2Nlc3NNYWlu
R1N0cmVhbWVyPihhcmdjLCBhcmd2KTsKK30KKworfSAvLyBuYW1lc3BhY2UgV2ViS2l0CisKKyNl
bmRpZiAvLyBFTkFCTEUoR1BVX1BST0NFU1MpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L0dQ
VVByb2Nlc3MvbWVkaWEvUmVtb3RlTGVnYWN5Q0RNRmFjdG9yeVByb3h5LmNwcCBiL1NvdXJjZS9X
ZWJLaXQvR1BVUHJvY2Vzcy9tZWRpYS9SZW1vdGVMZWdhY3lDRE1GYWN0b3J5UHJveHkuY3BwCmlu
ZGV4IDAxMmZlNGQ5YmVlNDY0YTU4Njc2YjIwNzVhN2Q2NzkxNzhiZGMwYWYuLmY1ZDUwODNjOGMw
NzVmZGFlZWM3YmI3NzFiNTVhODUxNjkyYjE1YjUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQv
R1BVUHJvY2Vzcy9tZWRpYS9SZW1vdGVMZWdhY3lDRE1GYWN0b3J5UHJveHkuY3BwCisrKyBiL1Nv
dXJjZS9XZWJLaXQvR1BVUHJvY2Vzcy9tZWRpYS9SZW1vdGVMZWdhY3lDRE1GYWN0b3J5UHJveHku
Y3BwCkBAIC0yNiw3ICsyNiw3IEBACiAjaW5jbHVkZSAiY29uZmlnLmgiCiAjaW5jbHVkZSAiUmVt
b3RlTGVnYWN5Q0RNRmFjdG9yeVByb3h5LmgiCiAKLSNpZiBFTkFCTEUoR1BVX1BST0NFU1MpICYm
IEVOQUJMRShFTkNSWVBURURfTUVESUEpCisjaWYgRU5BQkxFKEdQVV9QUk9DRVNTKSAmJiBFTkFC
TEUoTEVHQUNZX0VOQ1JZUFRFRF9NRURJQSkKIAogI2luY2x1ZGUgIlJlbW90ZUxlZ2FjeUNETVBy
b3h5LmgiCiAjaW5jbHVkZSAiUmVtb3RlTGVnYWN5Q0RNUHJveHlNZXNzYWdlcy5oIgpkaWZmIC0t
Z2l0IGEvU291cmNlL1dlYktpdC9HUFVQcm9jZXNzL21lZGlhL2dzdHJlYW1lci9SZW1vdGVNZWRp
YVBsYXllclByb3h5R1N0cmVhbWVyLmNwcCBiL1NvdXJjZS9XZWJLaXQvR1BVUHJvY2Vzcy9tZWRp
YS9nc3RyZWFtZXIvUmVtb3RlTWVkaWFQbGF5ZXJQcm94eUdTdHJlYW1lci5jcHAKbmV3IGZpbGUg
bW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MC4uOWYwYmZiODI2MDJjZWIxNWU1YWM3Y2ZmNDVmZjE4MWM3NGUxMGM2NgotLS0gL2Rldi9udWxs
CisrKyBiL1NvdXJjZS9XZWJLaXQvR1BVUHJvY2Vzcy9tZWRpYS9nc3RyZWFtZXIvUmVtb3RlTWVk
aWFQbGF5ZXJQcm94eUdTdHJlYW1lci5jcHAKQEAgLTAsMCArMSw2NiBAQAorLyoKKyAqIENvcHly
aWdodCAoQykgMjAyMCBJZ2FsaWEgUy5MLgorICoKKyAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2Ug
aW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAorICogbW9kaWZpY2F0
aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25z
CisgKiBhcmUgbWV0OgorICogMS4gUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3Qg
cmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNv
bmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKyAqIDIuIFJlZGlzdHJpYnV0
aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0Cisg
KiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRp
c2NsYWltZXIgaW4gdGhlCisgKiAgICBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlh
bHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgorICoKKyAqIFRISVMgU09GVFdBUkUg
SVMgUFJPVklERUQgQlkgVEhFIENPUFlSSUdIVCBIT0xERVJTIGBgQVMgSVMnJworICogQU5EIEFO
WSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlU
RUQgVE8sCisgKiBUSEUgSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQg
RklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSCisgKiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiBJTiBO
TyBFVkVOVCBTSEFMTCBBUFBMRSBJTkMuIE9SIElUUyBDT05UUklCVVRPUlMKKyAqIEJFIExJQUJM
RSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFS
WSwgT1IKKyAqIENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlU
RUQgVE8sIFBST0NVUkVNRU5UIE9GCisgKiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBM
T1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MKKyAqIElOVEVSUlVQVElP
TikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVS
IElOCisgKiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVCAoSU5DTFVESU5HIE5F
R0xJR0VOQ0UgT1IgT1RIRVJXSVNFKQorICogQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUg
VVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRgorICogVEhFIFBPU1NJQklM
SVRZIE9GIFNVQ0ggREFNQUdFLgorICovCisKKyNpbmNsdWRlICJjb25maWcuaCIKKyNpbmNsdWRl
ICJSZW1vdGVNZWRpYVBsYXllclByb3h5LmgiCisKKyNpZiBFTkFCTEUoR1BVX1BST0NFU1MpICYm
IFVTRShHU1RSRUFNRVIpCisKKyNpbmNsdWRlICJMYXllckhvc3RpbmdDb250ZXh0LmgiCisjaW5j
bHVkZSA8V2ViQ29yZS9Ob3RJbXBsZW1lbnRlZC5oPgorCituYW1lc3BhY2UgV2ViS2l0IHsKKwor
dm9pZCBSZW1vdGVNZWRpYVBsYXllclByb3h5OjpwcmVwYXJlRm9yUGxheWJhY2soYm9vbCwgV2Vi
Q29yZTo6TWVkaWFQbGF5ZXJFbnVtczo6UHJlbG9hZCwgYm9vbCwgYm9vbCwgZmxvYXQgdmlkZW9D
b250ZW50U2NhbGUsIENvbXBsZXRpb25IYW5kbGVyPHZvaWQoT3B0aW9uYWw8TGF5ZXJIb3N0aW5n
Q29udGV4dElEPiYmIGlubGluZUxheWVySG9zdGluZ0NvbnRleHRJZCwgT3B0aW9uYWw8TGF5ZXJI
b3N0aW5nQ29udGV4dElEPiYmIGZ1bGxzY3JlZW5MYXllckhvc3RpbmdDb250ZXh0SWQpPiYmKQor
eworICAgIG5vdEltcGxlbWVudGVkKCk7Cit9CisKK3ZvaWQgUmVtb3RlTWVkaWFQbGF5ZXJQcm94
eTo6bWVkaWFQbGF5ZXJGaXJzdFZpZGVvRnJhbWVBdmFpbGFibGUoKQoreworICAgIG5vdEltcGxl
bWVudGVkKCk7Cit9CisKK3ZvaWQgUmVtb3RlTWVkaWFQbGF5ZXJQcm94eTo6bWVkaWFQbGF5ZXJS
ZW5kZXJpbmdNb2RlQ2hhbmdlZCgpCit7CisgICAgbm90SW1wbGVtZW50ZWQoKTsKK30KKworI2lm
IEVOQUJMRShWSURFT19QUkVTRU5UQVRJT05fTU9ERSkKK3ZvaWQgUmVtb3RlTWVkaWFQbGF5ZXJQ
cm94eTo6ZW50ZXJGdWxsc2NyZWVuKENvbXBsZXRpb25IYW5kbGVyPHZvaWQoKT4mJiBjb21wbGV0
aW9uSGFuZGxlcikKK3sKKyAgICBub3RJbXBsZW1lbnRlZCgpOworfQorCit2b2lkIFJlbW90ZU1l
ZGlhUGxheWVyUHJveHk6OmV4aXRGdWxsc2NyZWVuKENvbXBsZXRpb25IYW5kbGVyPHZvaWQoKT4m
JiBjb21wbGV0aW9uSGFuZGxlcikKK3sKKyAgICBub3RJbXBsZW1lbnRlZCgpOworfQorI2VuZGlm
CisKK30gLy8gbmFtZXNwYWNlIFdlYktpdAorCisKKyNlbmRpZiAvLyBFTkFCTEUoR1BVX1BST0NF
U1MpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1BsYXRmb3JtR1RLLmNtYWtlIGIvU291cmNl
L1dlYktpdC9QbGF0Zm9ybUdUSy5jbWFrZQppbmRleCA3OTQ4ZDk4Mjc2ZjZiYjc1MmQ4MTVjOGNm
Zjc4Njk0OTI0NjNkZTQ4Li42MDFhYzE2OGM3NTE1MTcyNzIwM2MxNmZhOTM0MmVjNzY5ZmIwMWY5
IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1BsYXRmb3JtR1RLLmNtYWtlCisrKyBiL1NvdXJj
ZS9XZWJLaXQvUGxhdGZvcm1HVEsuY21ha2UKQEAgLTM4MCw2ICszODAsNyBAQCBsaXN0KEFQUEVO
RCBXZWJLaXRfSU5DTFVERV9ESVJFQ1RPUklFUwogICAgICIke1dFQktJVF9ESVJ9L1BsYXRmb3Jt
L0lQQy9nbGliIgogICAgICIke1dFQktJVF9ESVJ9L1BsYXRmb3JtL0lQQy91bml4IgogICAgICIk
e1dFQktJVF9ESVJ9L1BsYXRmb3JtL2NsYXNzaWZpZXIiCisgICAgIiR7V0VCS0lUX0RJUn0vUGxh
dGZvcm0vZ2VuZXJpYyIKICAgICAiJHtXRUJLSVRfRElSfS9TaGFyZWQvQVBJL2MvZ3RrIgogICAg
ICIke1dFQktJVF9ESVJ9L1NoYXJlZC9BUEkvZ2xpYiIKICAgICAiJHtXRUJLSVRfRElSfS9TaGFy
ZWQvQ29vcmRpbmF0ZWRHcmFwaGljcyIKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvU291cmNl
c0dUSy50eHQgYi9Tb3VyY2UvV2ViS2l0L1NvdXJjZXNHVEsudHh0CmluZGV4IGViYTM0NjE0ZmUw
ZmRjZWU1M2MxZWRjNGU5NDBjNDFiYmQyNDAyN2MuLjI1YjIzNzRmYjA0NTY5NjZmYWJkZTAyOWIw
OGRkMjlkM2FiNDEyZjggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvU291cmNlc0dUSy50eHQK
KysrIGIvU291cmNlL1dlYktpdC9Tb3VyY2VzR1RLLnR4dApAQCAtMjEsNiArMjEsMTMgQEAKIC8v
IEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVO
IElGIEFEVklTRUQgT0YKIC8vIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KIAorR1BV
UHJvY2Vzcy9nc3RyZWFtZXIvR1BVUHJvY2Vzc0dTdHJlYW1lci5jcHAKK0dQVVByb2Nlc3MvZ3N0
cmVhbWVyL0dQVVByb2Nlc3NNYWluR1N0cmVhbWVyLmNwcAorCitHUFVQcm9jZXNzL21lZGlhL1Jl
bW90ZUF1ZGlvRGVzdGluYXRpb25NYW5hZ2VyLmNwcAorCitHUFVQcm9jZXNzL21lZGlhL2dzdHJl
YW1lci9SZW1vdGVNZWRpYVBsYXllclByb3h5R1N0cmVhbWVyLmNwcAorCiBOZXR3b3JrUHJvY2Vz
cy9DbGFzc2lmaWVyL1dlYlJlc291cmNlTG9hZFN0YXRpc3RpY3NTdG9yZS5jcHAKIE5ldHdvcmtQ
cm9jZXNzL0NsYXNzaWZpZXIvV2ViUmVzb3VyY2VMb2FkU3RhdGlzdGljc1RlbGVtZXRyeS5jcHAK
IApAQCAtMjY5LDYgKzI3Niw4IEBAIFVJUHJvY2Vzcy9ndGsvV2ViUHJlZmVyZW5jZXNHdGsuY3Bw
CiBVSVByb2Nlc3Mvc291cC9XZWJDb29raWVNYW5hZ2VyUHJveHlTb3VwLmNwcAogVUlQcm9jZXNz
L3NvdXAvV2ViUHJvY2Vzc1Bvb2xTb3VwLmNwcAogCitXZWJQcm9jZXNzL0dQVS9tZWRpYS9nc3Ry
ZWFtZXIvVmlkZW9MYXllclJlbW90ZUdTdHJlYW1lci5jcHAKKwogV2ViUHJvY2Vzcy9JbmplY3Rl
ZEJ1bmRsZS9BUEkvZ2xpYi9ET00vRE9NT2JqZWN0Q2FjaGUuY3BwIEBuby11bmlmeQogV2ViUHJv
Y2Vzcy9JbmplY3RlZEJ1bmRsZS9BUEkvZ2xpYi9ET00vV2ViS2l0RE9NRG9jdW1lbnQuY3BwIEBu
by11bmlmeQogV2ViUHJvY2Vzcy9JbmplY3RlZEJ1bmRsZS9BUEkvZ2xpYi9ET00vV2ViS2l0RE9N
RWxlbWVudC5jcHAgQG5vLXVuaWZ5CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nl
c3MvR1BVL0dQVVByb2Nlc3NDb25uZWN0aW9uLmNwcCBiL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vz
cy9HUFUvR1BVUHJvY2Vzc0Nvbm5lY3Rpb24uY3BwCmluZGV4IGRkODVkMTdhNDYwMWMxMjY1Yjg4
ODVmYzk5NDg1MjAwMjIwMTBiMGUuLmRiZTU4MTk5ZTQ3YzZhNmU1MGIxOTAxYTViM2UyYzNiZWRl
MTIwMjEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9HUFUvR1BVUHJvY2Vz
c0Nvbm5lY3Rpb24uY3BwCisrKyBiL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9HUFUvR1BVUHJv
Y2Vzc0Nvbm5lY3Rpb24uY3BwCkBAIC01MCw3ICs1MCw3IEBACiAjaW5jbHVkZSAiUmVtb3RlQ0RN
SW5zdGFuY2VTZXNzaW9uTWVzc2FnZXMuaCIKICNlbmRpZgogCi0jaWYgRU5BQkxFKE1FRElBX1NU
UkVBTSkKKyNpZiBQTEFURk9STShDT0NPQSkgJiYgRU5BQkxFKE1FRElBX1NUUkVBTSkKICNpbmNs
dWRlICJVc2VyTWVkaWFDYXB0dXJlTWFuYWdlci5oIgogI2luY2x1ZGUgIlVzZXJNZWRpYUNhcHR1
cmVNYW5hZ2VyTWVzc2FnZXMuaCIKICNlbmRpZgpAQCAtMTEyLDE5ICsxMTIsMTkgQEAgYm9vbCBH
UFVQcm9jZXNzQ29ubmVjdGlvbjo6ZGlzcGF0Y2hNZXNzYWdlKElQQzo6Q29ubmVjdGlvbiYgY29u
bmVjdGlvbiwgSVBDOjpEZWMKICAgICAgICAgcmV0dXJuIHRydWU7CiAgICAgfQogCi0jaWYgRU5B
QkxFKE1FRElBX1NUUkVBTSkKKyNpZiBQTEFURk9STShDT0NPQSkgJiYgRU5BQkxFKE1FRElBX1NU
UkVBTSkKICAgICBpZiAoZGVjb2Rlci5tZXNzYWdlUmVjZWl2ZXJOYW1lKCkgPT0gTWVzc2FnZXM6
OlVzZXJNZWRpYUNhcHR1cmVNYW5hZ2VyOjptZXNzYWdlUmVjZWl2ZXJOYW1lKCkpIHsKICAgICAg
ICAgaWYgKGF1dG8qIGNhcHR1cmVNYW5hZ2VyID0gV2ViUHJvY2Vzczo6c2luZ2xldG9uKCkuc3Vw
cGxlbWVudDxVc2VyTWVkaWFDYXB0dXJlTWFuYWdlcj4oKSkKICAgICAgICAgICAgIGNhcHR1cmVN
YW5hZ2VyLT5kaWRSZWNlaXZlTWVzc2FnZUZyb21HUFVQcm9jZXNzKGNvbm5lY3Rpb24sIGRlY29k
ZXIpOwogICAgICAgICByZXR1cm4gdHJ1ZTsKICAgICB9Ci0jaWYgUExBVEZPUk0oQ09DT0EpICYm
IEVOQUJMRShWSURFT19UUkFDSykKKyNpZiBFTkFCTEUoVklERU9fVFJBQ0spCiAgICAgaWYgKGRl
Y29kZXIubWVzc2FnZVJlY2VpdmVyTmFtZSgpID09IE1lc3NhZ2VzOjpTYW1wbGVCdWZmZXJEaXNw
bGF5TGF5ZXI6Om1lc3NhZ2VSZWNlaXZlck5hbWUoKSkgewogICAgICAgICBzYW1wbGVCdWZmZXJE
aXNwbGF5TGF5ZXJNYW5hZ2VyKCkuZGlkUmVjZWl2ZUxheWVyTWVzc2FnZShjb25uZWN0aW9uLCBk
ZWNvZGVyKTsKICAgICAgICAgcmV0dXJuIHRydWU7CiAgICAgfQotI2VuZGlmIC8vIFBMQVRGT1JN
KENPQ09BKSAmJiBFTkFCTEUoVklERU9fVFJBQ0spCi0jZW5kaWYgLy8gRU5BQkxFKE1FRElBX1NU
UkVBTSkKKyNlbmRpZiAvLyBFTkFCTEUoVklERU9fVFJBQ0spCisjZW5kaWYgLy8gUExBVEZPUk0o
Q09DT0EpICYmIEVOQUJMRShNRURJQV9TVFJFQU0pCiAjaWYgVVNFKExJQldFQlJUQykgJiYgUExB
VEZPUk0oQ09DT0EpCiAgICAgaWYgKGRlY29kZXIubWVzc2FnZVJlY2VpdmVyTmFtZSgpID09IE1l
c3NhZ2VzOjpMaWJXZWJSVENDb2RlY3M6Om1lc3NhZ2VSZWNlaXZlck5hbWUoKSkgewogICAgICAg
ICBXZWJQcm9jZXNzOjpzaW5nbGV0b24oKS5saWJXZWJSVENDb2RlY3MoKS5kaWRSZWNlaXZlTWVz
c2FnZShjb25uZWN0aW9uLCBkZWNvZGVyKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvV2Vi
UHJvY2Vzcy9HUFUvbWVkaWEvUmVtb3RlQ0RNLmNwcCBiL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vz
cy9HUFUvbWVkaWEvUmVtb3RlQ0RNLmNwcAppbmRleCAwYzkxYjQwZjNiOWM3NWIzYzExMGI2MzZm
NjhjYTU3MDVhMjViNTQ4Li40OWZkMzhkMTgyZTJmOTE1NjMzZmE0MGIzYTE4YTRmNGE1NzlkZTNl
IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvR1BVL21lZGlhL1JlbW90ZUNE
TS5jcHAKKysrIGIvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL0dQVS9tZWRpYS9SZW1vdGVDRE0u
Y3BwCkBAIC0yOSw2ICsyOSw3IEBACiAjaWYgRU5BQkxFKEdQVV9QUk9DRVNTKSAmJiBFTkFCTEUo
RU5DUllQVEVEX01FRElBKQogCiAjaW5jbHVkZSAiRGF0YVJlZmVyZW5jZS5oIgorI2luY2x1ZGUg
IkdQVVByb2Nlc3NDb25uZWN0aW9uLmgiCiAjaW5jbHVkZSAiUmVtb3RlQ0RNSW5zdGFuY2UuaCIK
ICNpbmNsdWRlICJSZW1vdGVDRE1JbnN0YW5jZUNvbmZpZ3VyYXRpb24uaCIKICNpbmNsdWRlICJS
ZW1vdGVDRE1JbnN0YW5jZUlkZW50aWZpZXIuaCIKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQv
V2ViUHJvY2Vzcy9HUFUvbWVkaWEvZ3N0cmVhbWVyL1ZpZGVvTGF5ZXJSZW1vdGVHU3RyZWFtZXIu
Y3BwIGIvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL0dQVS9tZWRpYS9nc3RyZWFtZXIvVmlkZW9M
YXllclJlbW90ZUdTdHJlYW1lci5jcHAKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uMzYzYzNjNDQwYmI3ZGIzYmYyY2Zh
ZmI0ZDFmNTJiYWQ0NmJiMDI5YwotLS0gL2Rldi9udWxsCisrKyBiL1NvdXJjZS9XZWJLaXQvV2Vi
UHJvY2Vzcy9HUFUvbWVkaWEvZ3N0cmVhbWVyL1ZpZGVvTGF5ZXJSZW1vdGVHU3RyZWFtZXIuY3Bw
CkBAIC0wLDAgKzEsNTIgQEAKKy8qCisgKiBDb3B5cmlnaHQgKEMpIDIwMjAgSWdhbGlhIFMuTC4K
KyAqCisgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1z
LCB3aXRoIG9yIHdpdGhvdXQKKyAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRl
ZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucworICogYXJlIG1ldDoKKyAqIDEuIFJlZGlz
dHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0
CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5n
IGRpc2NsYWltZXIuCisgKiAyLiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCBy
ZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2Yg
Y29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQorICogICAgZG9j
dW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3Ry
aWJ1dGlvbi4KKyAqCisgKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIFRIRSBDT1BZUklH
SFQgSE9MREVSUyBgYEFTIElTJycKKyAqIEFORCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJB
TlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLAorICogVEhFIElNUExJRUQgV0FS
UkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUgor
ICogUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgQVBQTEUgSU5DLiBP
UiBJVFMgQ09OVFJJQlVUT1JTCisgKiBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNU
LCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SCisgKiBDT05TRVFVRU5USUFMIERB
TUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRgorICog
U1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJ
VFM7IE9SIEJVU0lORVNTCisgKiBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBB
TlkgVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTgorICogQ09OVFJBQ1QsIFNUUklDVCBM
SUFCSUxJVFksIE9SIFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkKKyAq
IEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVO
IElGIEFEVklTRUQgT0YKKyAqIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KKyAqLwor
CisjaW5jbHVkZSAiY29uZmlnLmgiCisjaW5jbHVkZSAiVmlkZW9MYXllclJlbW90ZS5oIgorCisj
aWYgRU5BQkxFKEdQVV9QUk9DRVNTKQorCisjaW5jbHVkZSA8V2ViQ29yZS9Ob3RJbXBsZW1lbnRl
ZC5oPgorI2luY2x1ZGUgPFdlYkNvcmUvUGxhdGZvcm1MYXllci5oPgorCisjaWYgVVNFKE5JQ09T
SUEpCisjaW5jbHVkZSA8V2ViQ29yZS9OaWNvc2lhUGxhdGZvcm1MYXllci5oPgorI2VsaWYgVVNF
KENPT1JESU5BVEVEX0dSQVBISUNTKQorI2luY2x1ZGUgPFdlYkNvcmUvVGV4dHVyZU1hcHBlclBs
YXRmb3JtTGF5ZXJQcm94eVByb3ZpZGVyLmg+CisjZWxpZiBVU0UoVEVYVFVSRV9NQVBQRVIpCisj
aW5jbHVkZSA8V2ViQ29yZS9UZXh0dXJlTWFwcGVyUGxhdGZvcm1MYXllci5oPgorI2VuZGlmCisK
K25hbWVzcGFjZSBXZWJLaXQgeworCitQbGF0Zm9ybUxheWVyQ29udGFpbmVyIGNyZWF0ZVZpZGVv
TGF5ZXJSZW1vdGUoTWVkaWFQbGF5ZXJQcml2YXRlUmVtb3RlKiBtZWRpYVBsYXllclByaXZhdGVS
ZW1vdGUsIExheWVySG9zdGluZ0NvbnRleHRJRCBjb250ZXh0SWQpCit7CisgICAgbm90SW1wbGVt
ZW50ZWQoKTsKKyAgICByZXR1cm4gbnVsbHB0cjsKK30KKworfQorCisjZW5kaWYKZGlmZiAtLWdp
dCBhL1NvdXJjZS9jbWFrZS9PcHRpb25zR1RLLmNtYWtlIGIvU291cmNlL2NtYWtlL09wdGlvbnNH
VEsuY21ha2UKaW5kZXggOTVmYzYwNjA1MGQyOTNjMjVjNjg1ZTQxOWU0NTNkN2U4NzI3Yzc2Yi4u
Y2I1ZTFkYzFkYmRhNjM1OTA3ZTNiMzU5Y2E4NjUzNzVmZmI0NmU2NSAxMDA2NDQKLS0tIGEvU291
cmNlL2NtYWtlL09wdGlvbnNHVEsuY21ha2UKKysrIGIvU291cmNlL2NtYWtlL09wdGlvbnNHVEsu
Y21ha2UKQEAgLTE2NCwxMiArMTY0LDE2IEBAIFdFQktJVF9PUFRJT05fREVGQVVMVF9QT1JUX1ZB
TFVFKEVOQUJMRV9XRUJEUklWRVIgUFVCTElDIE9OKQogIyBDaGFuZ2luZyB0aGVzZSBvcHRpb25z
IGlzIGNvbXBsZXRlbHkgdW5zdXBwb3J0ZWQuCiBXRUJLSVRfT1BUSU9OX0RFRkFVTFRfUE9SVF9W
QUxVRShFTkFCTEVfQVVUT0NBUElUQUxJWkUgUFJJVkFURSBPTikKIFdFQktJVF9PUFRJT05fREVG
QVVMVF9QT1JUX1ZBTFVFKEVOQUJMRV9DT05URU5UX0VYVEVOU0lPTlMgUFJJVkFURSBPTikKK1dF
QktJVF9PUFRJT05fREVGQVVMVF9QT1JUX1ZBTFVFKEVOQUJMRV9DU1NfQ09OSUNfR1JBRElFTlRT
IFBSSVZBVEUgT04pCitXRUJLSVRfT1BUSU9OX0RFRkFVTFRfUE9SVF9WQUxVRShFTkFCTEVfQ1NT
X1BBSU5USU5HX0FQSSBQUklWQVRFICR7RU5BQkxFX0VYUEVSSU1FTlRBTF9GRUFUVVJFU30pCitX
RUJLSVRfT1BUSU9OX0RFRkFVTFRfUE9SVF9WQUxVRShFTkFCTEVfQ1NTX1RZUEVEX09NIFBSSVZB
VEUgJHtFTkFCTEVfRVhQRVJJTUVOVEFMX0ZFQVRVUkVTfSkKIFdFQktJVF9PUFRJT05fREVGQVVM
VF9QT1JUX1ZBTFVFKEVOQUJMRV9DVVJTT1JfVklTSUJJTElUWSBQUklWQVRFIE9OKQogV0VCS0lU
X09QVElPTl9ERUZBVUxUX1BPUlRfVkFMVUUoRU5BQkxFX0RBUktfTU9ERV9DU1MgUFJJVkFURSBP
TikKIFdFQktJVF9PUFRJT05fREVGQVVMVF9QT1JUX1ZBTFVFKEVOQUJMRV9EQVRBTElTVF9FTEVN
RU5UIFBSSVZBVEUgT04pCiBXRUJLSVRfT1BUSU9OX0RFRkFVTFRfUE9SVF9WQUxVRShFTkFCTEVf
RE9XTkxPQURfQVRUUklCVVRFIFBSSVZBVEUgT04pCiBXRUJLSVRfT1BUSU9OX0RFRkFVTFRfUE9S
VF9WQUxVRShFTkFCTEVfRU5DUllQVEVEX01FRElBIFBSSVZBVEUgJHtFTkFCTEVfRVhQRVJJTUVO
VEFMX0ZFQVRVUkVTfSkKIFdFQktJVF9PUFRJT05fREVGQVVMVF9QT1JUX1ZBTFVFKEVOQUJMRV9G
VFBESVIgUFJJVkFURSBPRkYpCitXRUJLSVRfT1BUSU9OX0RFRkFVTFRfUE9SVF9WQUxVRShFTkFC
TEVfR1BVX1BST0NFU1MgUFJJVkFURSAke0VOQUJMRV9FWFBFUklNRU5UQUxfRkVBVFVSRVN9KQog
V0VCS0lUX09QVElPTl9ERUZBVUxUX1BPUlRfVkFMVUUoRU5BQkxFX0lOUFVUX1RZUEVfQ09MT1Ig
UFJJVkFURSBPTikKIFdFQktJVF9PUFRJT05fREVGQVVMVF9QT1JUX1ZBTFVFKEVOQUJMRV9MQVlP
VVRfRk9STUFUVElOR19DT05URVhUIFBSSVZBVEUgJHtFTkFCTEVfRVhQRVJJTUVOVEFMX0ZFQVRV
UkVTfSkKIFdFQktJVF9PUFRJT05fREVGQVVMVF9QT1JUX1ZBTFVFKEVOQUJMRV9NRURJQV9TVFJF
QU0gUFJJVkFURSAke0VOQUJMRV9FWFBFUklNRU5UQUxfRkVBVFVSRVN9KQpAQCAtMTc4LDEzICsx
ODIsMTAgQEAgV0VCS0lUX09QVElPTl9ERUZBVUxUX1BPUlRfVkFMVUUoRU5BQkxFX01PVVNFX0NV
UlNPUl9TQ0FMRSBQUklWQVRFIE9OKQogV0VCS0lUX09QVElPTl9ERUZBVUxUX1BPUlRfVkFMVUUo
RU5BQkxFX05FVFdPUktfQ0FDSEVfU1BFQ1VMQVRJVkVfUkVWQUxJREFUSU9OIFBSSVZBVEUgT04p
CiBXRUJLSVRfT1BUSU9OX0RFRkFVTFRfUE9SVF9WQUxVRShFTkFCTEVfT0ZGU0NSRUVOX0NBTlZB
UyBQUklWQVRFICR7RU5BQkxFX0VYUEVSSU1FTlRBTF9GRUFUVVJFU30pCiBXRUJLSVRfT1BUSU9O
X0RFRkFVTFRfUE9SVF9WQUxVRShFTkFCTEVfUE9JTlRFUl9MT0NLIFBSSVZBVEUgT04pCitXRUJL
SVRfT1BUSU9OX0RFRkFVTFRfUE9SVF9WQUxVRShFTkFCTEVfUkVTT1VSQ0VfTE9BRF9TVEFUSVNU
SUNTIFBSSVZBVEUgT04pCiBXRUJLSVRfT1BUSU9OX0RFRkFVTFRfUE9SVF9WQUxVRShFTkFCTEVf
U0VSVklDRV9XT1JLRVIgUFJJVkFURSBPTikKIFdFQktJVF9PUFRJT05fREVGQVVMVF9QT1JUX1ZB
TFVFKEVOQUJMRV9TSEFSRUFCTEVfUkVTT1VSQ0UgUFVCTElDIE9OKQogV0VCS0lUX09QVElPTl9E
RUZBVUxUX1BPUlRfVkFMVUUoRU5BQkxFX1dFQl9SVEMgUFJJVkFURSAke0VOQUJMRV9FWFBFUklN
RU5UQUxfRkVBVFVSRVN9KQotV0VCS0lUX09QVElPTl9ERUZBVUxUX1BPUlRfVkFMVUUoRU5BQkxF
X0NTU19QQUlOVElOR19BUEkgUFJJVkFURSAke0VOQUJMRV9FWFBFUklNRU5UQUxfRkVBVFVSRVN9
KQotV0VCS0lUX09QVElPTl9ERUZBVUxUX1BPUlRfVkFMVUUoRU5BQkxFX0NTU19UWVBFRF9PTSBQ
UklWQVRFICR7RU5BQkxFX0VYUEVSSU1FTlRBTF9GRUFUVVJFU30pCi1XRUJLSVRfT1BUSU9OX0RF
RkFVTFRfUE9SVF9WQUxVRShFTkFCTEVfQ1NTX0NPTklDX0dSQURJRU5UUyBQUklWQVRFIE9OKQot
V0VCS0lUX09QVElPTl9ERUZBVUxUX1BPUlRfVkFMVUUoRU5BQkxFX1JFU09VUkNFX0xPQURfU1RB
VElTVElDUyBQUklWQVRFIE9OKQogCiBpZiAoVVNFX0dUSzQpCiBXRUJLSVRfT1BUSU9OX0RFRkFV
TFRfUE9SVF9WQUxVRShFTkFCTEVfTkVUU0NBUEVfUExVR0lOX0FQSSBQUklWQVRFIE9GRikKZGlm
ZiAtLWdpdCBhL0NoYW5nZUxvZyBiL0NoYW5nZUxvZwppbmRleCAxYzQ3MTc1ODJmZjk4NzdjMTI4
ZjZiMWM0YTM2NTZmZTM4NjY0Zjk2Li5hMzcyMmE1OWY1MTI1NGY3OTI0Y2I3NzhlNjVkNjUwZGQ5
YmY2ZjgzIDEwMDY0NAotLS0gYS9DaGFuZ2VMb2cKKysrIGIvQ2hhbmdlTG9nCkBAIC0xLDMgKzEs
MTcgQEAKKzIwMjAtMDQtMDggIFbDrWN0b3IgTWFudWVsIErDoXF1ZXogTGVhbCAgPHZqYXF1ZXpA
aWdhbGlhLmNvbT4KKworICAgICAgICBbR1BVUF1bR1RLXSBjb21waWxlIEdQVVByb2Nlc3MgaW4g
R1RLIHBvcnQKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lk
PTIwODgxNAorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAg
IEVuYWJsZSBHUFVQcm9jZXNzIGNvbXBpbGF0aW9uIGluIFdlYktpdEdUSyBhcyBhbiBleHBlcmlt
ZW50YWwKKyAgICAgICAgZmVhdHVyZQorCisgICAgICAgICogU291cmNlL2NtYWtlL09wdGlvbnNH
VEsuY21ha2U6IHNvcnQgYWxwaGFiZXRpY2FsbHkgV2ViS2l0CisgICAgICAgIG9wdGlvbnMgZm9y
IEdUSyBwb3J0IGFuZCBlbmFibGUgR1BVX1BST0NFU1MgaWYgZXhwZXJpbWVudGFsCisgICAgICAg
IGZlYXR1cmVzIG9wdGlvbiBpcyBlbmFibGVkLgorCiAyMDIwLTA0LTIxICBBZHJpYW4gUGVyZXog
ZGUgQ2FzdHJvICA8YXBlcmV6QGlnYWxpYS5jb20+CiAKICAgICAgICAgW0dUS11bQ01ha2VdIE1h
a2UgZ3RrLXVuaXgtcHJpbnQgYSBjb21wb25lbnQgb2YgRmluZEdUSy5jbWFrZQo=
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>397849</attachid>
            <date>2020-04-28 09:56:34 -0700</date>
            <delta_ts>2020-04-29 09:09:08 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-208814-20200428185632.patch</filename>
            <type>text/plain</type>
            <size>24793</size>
            <attacher name="Víctor M. Jáquez L.">vjaquez</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjYwODIwCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L0No
YW5nZUxvZyBiL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCmluZGV4IDc1YmNhYTU5Y2Q5MjZkODM5
ZTBlNjJiZmM3NWI5YTc3NjdmYzU2N2QuLmU2OTljYTkzMjM1MTg4YTkzMmYwMzU2N2U4ZWFkYWYy
MTU5Nzk2MmQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCisrKyBiL1NvdXJj
ZS9XZWJLaXQvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsNjMgQEAKKzIwMjAtMDQtMDggIFbDrWN0b3Ig
TWFudWVsIErDoXF1ZXogTGVhbCAgPHZqYXF1ZXpAaWdhbGlhLmNvbT4KKworICAgICAgICBbR1BV
UF1bR1RLXSBjb21waWxlIEdQVVByb2Nlc3MgaW4gR1RLIHBvcnQKKyAgICAgICAgaHR0cHM6Ly9i
dWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIwODgxNAorCisgICAgICAgIFJldmlld2Vk
IGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIEVuYWJsZSBHUFVQcm9jZXNzIGNvbXBpbGF0
aW9uIGluIFdlYktpdEdUSyBhcyBhbiBleHBlcmltZW50YWwKKyAgICAgICAgZmVhdHVyZQorCisg
ICAgICAgIE5vIG5ldyB0ZXN0cyByZXF1aXJlZC4KKworICAgICAgICAqIEdQVVByb2Nlc3MvR1BV
Q29ubmVjdGlvblRvV2ViUHJvY2Vzcy5jcHA6IGd1YXJkCisgICAgICAgIFVzZXJNZWRpYUNhcHR1
cmVNYW5hZ2VyUHJveHkgZm9yIENvY29hIHBsYXRmb3JtIG9ubHkuCisgICAgICAgIChXZWJLaXQ6
OkdQVUNvbm5lY3Rpb25Ub1dlYlByb2Nlc3M6OmRpc3BhdGNoTWVzc2FnZSk6IGd1YXJkCisgICAg
ICAgIG1lc3NhZ2VzIGZyb20gVXNlck1lZGlhQ2FwdHVyZU1hbmFnZXJQcm94eSBmb3IgQ29jb2Eg
cGxhdGZvcm0sCisgICAgICAgIG1vdmluZyB1cCB0aGlzIGd1YXJkIGZyb20gdmlkZW8gdHJhY2sg
bWVzc2FnZXMuCisgICAgICAgIChXZWJLaXQ6OkdQVUNvbm5lY3Rpb25Ub1dlYlByb2Nlc3M6Om1l
ZGlhS2V5U3RvcmFnZURpcmVjdG9yeSk6CisgICAgICAgIHJlbW92ZWQgZ3VhcmQgZm9yIHRoaXMg
ZnVuY3Rpb24gb2YgRU5DUllQVEVEX01FRElBIGxlYXZpbmcgb25seQorICAgICAgICBMRUdBQ1lf
RU5DUllQVEVEX01FRElBLCBzaW5jZSBpdCdzIHdlcmUgaXQgaXMgZGVmaW5lZC4KKyAgICAgICAg
KFdlYktpdDo6R1BVQ29ubmVjdGlvblRvV2ViUHJvY2Vzczo6c2V0T3JpZW50YXRpb25Gb3JNZWRp
YUNhcHR1cmUpOgorICAgICAgICBndWFyZCB0aGUgY29udGVudCBvZiB0aGlzIGZ1bmN0aW9uIGZv
ciBDb2NvYSBwbGF0Zm9ybSwgc2luY2UgaXQgaXMKKyAgICAgICAgY2FsbGluZyBhIFVzZXJNZWRp
YUNhcHR1cmVNYW5hZ2VyUHJveHkgb2JqZWN0LgorICAgICAgICAqIEdQVVByb2Nlc3MvR1BVUHJv
Y2Vzcy5jcHA6IFJlcGxhY2UgdGhlIGluY2x1ZGVkIGhlYWRlciB0byBtYXRjaAorICAgICAgICB3
aXRoIHRoZSB1c2VkIHN5bWJvbHMgaW4gZmlsZS4KKyAgICAgICAgKiBHUFVQcm9jZXNzL2dzdHJl
YW1lci9HUFVQcm9jZXNzR1N0cmVhbWVyLmNwcDogQWRkZWQuCisgICAgICAgIChXZWJLaXQ6OkdQ
VVByb2Nlc3M6OmluaXRpYWxpemVQcm9jZXNzKTogRW1wdHkgZnVuY3Rpb24uCisgICAgICAgIChX
ZWJLaXQ6OkdQVVByb2Nlc3M6OmluaXRpYWxpemVQcm9jZXNzTmFtZSk6IEVtcHR5IGZ1bmN0aW9u
LgorICAgICAgICAoV2ViS2l0OjpHUFVQcm9jZXNzOjppbml0aWFsaXplU2FuZGJveCk6IEVtcHR5
IGZ1bmN0aW9uLgorICAgICAgICAqIEdQVVByb2Nlc3MvZ3N0cmVhbWVyL0dQVVByb2Nlc3NNYWlu
R1N0cmVhbWVyLmNwcDogQWRkZWQuCisgICAgICAgIChXZWJLaXQ6OmluaXRpYWxpemVBdXhpbGlh
cnlQcm9jZXNzPEdQVVByb2Nlc3M+KTogTmV3IGZ1bmN0aW9uLgorICAgICAgICAoV2ViS2l0OjpH
UFVQcm9jZXNzTWFpbik6IE5ldyBmdW5jdGlvbi4KKyAgICAgICAgKiBHUFVQcm9jZXNzL21lZGlh
L1JlbW90ZUxlZ2FjeUNETUZhY3RvcnlQcm94eS5jcHA6IGNoYW5nZWQgZ3VhcmQKKyAgICAgICAg
Zm9yIHRoaXMgZmlsZSBmcm9tIEVOQ1JZUFRFRF9NRURJQSB0byBMRUdBQ1lfRU5DUllQVEVEX01F
RElBIHRvCisgICAgICAgIG1hdGNoIHdpdGggaXRzIGhlYWRlciBmaWxlLgorICAgICAgICAqIEdQ
VVByb2Nlc3MvbWVkaWEvZ3N0cmVhbWVyL1JlbW90ZU1lZGlhUGxheWVyUHJveHlHU3RyZWFtZXIu
Y3BwOiBBZGRlZC4KKyAgICAgICAgKFdlYktpdDo6UmVtb3RlTWVkaWFQbGF5ZXJQcm94eTo6cHJl
cGFyZUZvclBsYXliYWNrKToKKyAgICAgICAgTmV3IGZ1bmN0aW9uIHRoYXQgcmFpc2VzIG5vSW1w
bGVtZW50ZWQoKQorICAgICAgICAoV2ViS2l0OjpSZW1vdGVNZWRpYVBsYXllclByb3h5OjptZWRp
YVBsYXllckZpcnN0VmlkZW9GcmFtZUF2YWlsYWJsZSk6CisgICAgICAgIE5ldyBmdW5jdGlvbiB0
aGF0IHJhaXNlcyBub0ltcGxlbWVudGVkKCkKKyAgICAgICAgKFdlYktpdDo6UmVtb3RlTWVkaWFQ
bGF5ZXJQcm94eTo6bWVkaWFQbGF5ZXJSZW5kZXJpbmdNb2RlQ2hhbmdlZCk6CisgICAgICAgIE5l
dyBmdW5jdGlvbiB0aGF0IHJhaXNlcyBub0ltcGxlbWVudGVkKCkKKyAgICAgICAgKFdlYktpdDo6
UmVtb3RlTWVkaWFQbGF5ZXJQcm94eTo6ZW50ZXJGdWxsc2NyZWVuKTogTmV3IGZ1bmN0aW9uCisg
ICAgICAgIHRoYXQgcmFpc2VzIG5vSW1wbGVtZW50ZWQoKQorICAgICAgICAoV2ViS2l0OjpSZW1v
dGVNZWRpYVBsYXllclByb3h5OjpleGl0RnVsbHNjcmVlbik6IE5ldyBmdW5jdGlvbgorICAgICAg
ICB0aGF0IHJhaXNlcyBub0ltcGxlbWVudGVkKCkKKyAgICAgICAgKiBQbGF0Zm9ybUdUSy5jbWFr
ZTogYWRkIFBsYXRmb3JtL2dlbmVyaWMgaGVhZGVyIGRpcmVjdG9yeS4KKyAgICAgICAgKiBTb3Vy
Y2VzR1RLLnR4dDogQWRkIHRoZSBuZXcgZmlsZXMgYW5kCisgICAgICAgIEdQVVByb2Nlc3MvbWVk
aWEvUmVtb3RlQXVkaW9EZXN0aW5hdGlvbk1hbmFnZXIuY3BwCisgICAgICAgICogV2ViUHJvY2Vz
cy9HUFUvR1BVUHJvY2Vzc0Nvbm5lY3Rpb24uY3BwOiBndWFyZAorICAgICAgICBVc2VyTWVkaWFD
YXB0dXJlTWFuYWdlciBmb3IgQ29jb2EgcGxhdGZvcm0gb25seS4KKyAgICAgICAgKFdlYktpdDo6
R1BVUHJvY2Vzc0Nvbm5lY3Rpb246OmRpc3BhdGNoTWVzc2FnZSk6IGd1YXJkIG1lc3NhZ2VzCisg
ICAgICAgIGZyb20gVXNlck1lZGlhQ2FwdHVyZU1hbmFnZXIgZm9yIENvY29hIHBsYXRmb3JtLCBt
b3ZpbmcgdXAgdGhpcworICAgICAgICBndWFyZCBhcHBsaWVkIGFsc28gZm9yIHZpZGVvIHRyYWNr
LgorICAgICAgICAqIFdlYlByb2Nlc3MvR1BVL21lZGlhL1JlbW90ZUNETS5jcHA6IGluY2x1ZGUg
bWlzc2luZyBoZWFkZXIKKyAgICAgICAgR1BVUHJvY2Vzc0Nvbm5lY3Rpb24uaAorICAgICAgICAq
IFdlYlByb2Nlc3MvR1BVL21lZGlhL2dzdHJlYW1lci9WaWRlb0xheWVyUmVtb3RlR1N0cmVhbWVy
LmNwcDogQWRkZWQuCisgICAgICAgIChXZWJLaXQ6OmNyZWF0ZVZpZGVvTGF5ZXJSZW1vdGUpOiBO
ZXcgZnVuY3Rpb24KKyAgICAgICAgdGhhdCByYWlzZXMgbm9JbXBsZW1lbnRlZCgpCisKIDIwMjAt
MDQtMjggIFBlciBBcm5lIFZvbGxhbiAgPHB2b2xsYW5AYXBwbGUuY29tPgogCiAgICAgICAgIFtp
T1NdIEZpeCBzYW5kYm94IHZpb2xhdGlvbiB3aGVuIHVwbG9hZGluZyBhIGZpbGUKZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJLaXQvR1BVUHJvY2Vzcy9HUFVDb25uZWN0aW9uVG9XZWJQcm9jZXNzLmNw
cCBiL1NvdXJjZS9XZWJLaXQvR1BVUHJvY2Vzcy9HUFVDb25uZWN0aW9uVG9XZWJQcm9jZXNzLmNw
cAppbmRleCAyNmY3MzgwY2E1MjJhZmQ4NDAyYzY1MzNlOTM3Nzc1NDY1MzEzMDhiLi5kZDkwMDJm
NmIwNDZhYjQyMjZjODI4ODYyYmYwYTJhOGU1ZWYzMjNjIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2Vi
S2l0L0dQVVByb2Nlc3MvR1BVQ29ubmVjdGlvblRvV2ViUHJvY2Vzcy5jcHAKKysrIGIvU291cmNl
L1dlYktpdC9HUFVQcm9jZXNzL0dQVUNvbm5lY3Rpb25Ub1dlYlByb2Nlc3MuY3BwCkBAIC03Myw3
ICs3Myw5IEBACiAjaW5jbHVkZSAiUmVtb3RlQ0RNUHJveHlNZXNzYWdlcy5oIgogI2VuZGlmCiAK
LSNpZiBFTkFCTEUoTUVESUFfU1RSRUFNKQorLy8gRklYTUU6IDxodHRwczovL2J1Z3Mud2Via2l0
Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjExMDg1PgorLy8gVXNlck1lZGlhQ2FwdHVyZU1hbmFnZXJQ
cm94eSBzaG91bGQgbm90IGJlIHBsYXRmb3JtIHNwZWNpZmljCisjaWYgUExBVEZPUk0oQ09DT0Ep
ICYmIEVOQUJMRShNRURJQV9TVFJFQU0pCiAjaW5jbHVkZSAiVXNlck1lZGlhQ2FwdHVyZU1hbmFn
ZXJQcm94eS5oIgogI2luY2x1ZGUgIlVzZXJNZWRpYUNhcHR1cmVNYW5hZ2VyUHJveHlNZXNzYWdl
cy5oIgogI2VuZGlmCkBAIC0zNjQsNyArMzY2LDcgQEAgYm9vbCBHUFVDb25uZWN0aW9uVG9XZWJQ
cm9jZXNzOjpkaXNwYXRjaE1lc3NhZ2UoSVBDOjpDb25uZWN0aW9uJiBjb25uZWN0aW9uLCBJUEMK
ICAgICAgICAgcmVtb3RlTWVkaWFSZXNvdXJjZU1hbmFnZXIoKS5kaWRSZWNlaXZlTWVzc2FnZShj
b25uZWN0aW9uLCBkZWNvZGVyKTsKICAgICAgICAgcmV0dXJuIHRydWU7CiAgICAgfQotI2lmIEVO
QUJMRShNRURJQV9TVFJFQU0pCisjaWYgUExBVEZPUk0oQ09DT0EpICYmIEVOQUJMRShNRURJQV9T
VFJFQU0pCiAgICAgaWYgKGRlY29kZXIubWVzc2FnZVJlY2VpdmVyTmFtZSgpID09IE1lc3NhZ2Vz
OjpVc2VyTWVkaWFDYXB0dXJlTWFuYWdlclByb3h5OjptZXNzYWdlUmVjZWl2ZXJOYW1lKCkpIHsK
ICAgICAgICAgdXNlck1lZGlhQ2FwdHVyZU1hbmFnZXJQcm94eSgpLmRpZFJlY2VpdmVNZXNzYWdl
RnJvbUdQVVByb2Nlc3MoY29ubmVjdGlvbiwgZGVjb2Rlcik7CiAgICAgICAgIHJldHVybiB0cnVl
OwpAQCAtMzc3LDcgKzM3OSw3IEBAIGJvb2wgR1BVQ29ubmVjdGlvblRvV2ViUHJvY2Vzczo6ZGlz
cGF0Y2hNZXNzYWdlKElQQzo6Q29ubmVjdGlvbiYgY29ubmVjdGlvbiwgSVBDCiAgICAgICAgIG1l
ZGlhUmVjb3JkZXJNYW5hZ2VyKCkuZGlkUmVjZWl2ZVJlbW90ZU1lZGlhUmVjb3JkZXJNZXNzYWdl
KGNvbm5lY3Rpb24sIGRlY29kZXIpOwogICAgICAgICByZXR1cm4gdHJ1ZTsKICAgICB9Ci0jaWYg
UExBVEZPUk0oQ09DT0EpICYmIEVOQUJMRShWSURFT19UUkFDSykKKyNpZiBFTkFCTEUoVklERU9f
VFJBQ0spCiAgICAgaWYgKGRlY29kZXIubWVzc2FnZVJlY2VpdmVyTmFtZSgpID09IE1lc3NhZ2Vz
OjpSZW1vdGVBdWRpb01lZGlhU3RyZWFtVHJhY2tSZW5kZXJlck1hbmFnZXI6Om1lc3NhZ2VSZWNl
aXZlck5hbWUoKSkgewogICAgICAgICBhdWRpb1RyYWNrUmVuZGVyZXJNYW5hZ2VyKCkuZGlkUmVj
ZWl2ZU1lc3NhZ2VGcm9tV2ViUHJvY2Vzcyhjb25uZWN0aW9uLCBkZWNvZGVyKTsKICAgICAgICAg
cmV0dXJuIHRydWU7CkBAIC00OTcsNyArNDk5LDcgQEAgY29uc3QgU3RyaW5nJiBHUFVDb25uZWN0
aW9uVG9XZWJQcm9jZXNzOjptZWRpYUNhY2hlRGlyZWN0b3J5KCkgY29uc3QKICAgICByZXR1cm4g
bV9ncHVQcm9jZXNzLT5tZWRpYUNhY2hlRGlyZWN0b3J5KG1fc2Vzc2lvbklEKTsKIH0KIAotI2lm
IEVOQUJMRShFTkNSWVBURURfTUVESUEpIHx8IEVOQUJMRShMRUdBQ1lfRU5DUllQVEVEX01FRElB
KQorI2lmIEVOQUJMRShMRUdBQ1lfRU5DUllQVEVEX01FRElBKQogY29uc3QgU3RyaW5nJiBHUFVD
b25uZWN0aW9uVG9XZWJQcm9jZXNzOjptZWRpYUtleXNTdG9yYWdlRGlyZWN0b3J5KCkgY29uc3QK
IHsKICAgICByZXR1cm4gbV9ncHVQcm9jZXNzLT5tZWRpYUtleXNTdG9yYWdlRGlyZWN0b3J5KG1f
c2Vzc2lvbklEKTsKQEAgLTUwNyw3ICs1MDksMTAgQEAgY29uc3QgU3RyaW5nJiBHUFVDb25uZWN0
aW9uVG9XZWJQcm9jZXNzOjptZWRpYUtleXNTdG9yYWdlRGlyZWN0b3J5KCkgY29uc3QKICNpZiBF
TkFCTEUoTUVESUFfU1RSRUFNKQogdm9pZCBHUFVDb25uZWN0aW9uVG9XZWJQcm9jZXNzOjpzZXRP
cmllbnRhdGlvbkZvck1lZGlhQ2FwdHVyZSh1aW50NjRfdCBvcmllbnRhdGlvbikKIHsKKy8vIEZJ
WE1FOiA8aHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIxMTA4NT4KKyNp
ZiBQTEFURk9STShDT0NPQSkKICAgICB1c2VyTWVkaWFDYXB0dXJlTWFuYWdlclByb3h5KCkuc2V0
T3JpZW50YXRpb24ob3JpZW50YXRpb24pOworI2VuZGlmCiB9CiAKIHZvaWQgR1BVQ29ubmVjdGlv
blRvV2ViUHJvY2Vzczo6dXBkYXRlQ2FwdHVyZUFjY2Vzcyhib29sIGFsbG93QXVkaW9DYXB0dXJl
LCBib29sIGFsbG93VmlkZW9DYXB0dXJlLCBib29sIGFsbG93RGlzcGxheUNhcHR1cmUpCmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViS2l0L0dQVVByb2Nlc3MvR1BVUHJvY2Vzcy5jcHAgYi9Tb3VyY2Uv
V2ViS2l0L0dQVVByb2Nlc3MvR1BVUHJvY2Vzcy5jcHAKaW5kZXggOTUwNzZmMjY0MTBkMGE2YmMy
MmFhNzQyOTI5NTg4MmUxZWQxNjhhZi4uMjMwYjYyZmY4N2YxZTYxY2E3MWU5ODk3MGJhM2QyMTZl
ZWJhNjE2NCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9HUFVQcm9jZXNzL0dQVVByb2Nlc3Mu
Y3BwCisrKyBiL1NvdXJjZS9XZWJLaXQvR1BVUHJvY2Vzcy9HUFVQcm9jZXNzLmNwcApAQCAtNTYs
NyArNTYsNyBAQAogI2VuZGlmCiAKICNpZiBFTkFCTEUoTUVESUFfU1RSRUFNKQotI2luY2x1ZGUg
PFdlYkNvcmUvTW9ja0F1ZGlvU2hhcmVkVW5pdC5oPgorI2luY2x1ZGUgPFdlYkNvcmUvTW9ja1Jl
YWx0aW1lTWVkaWFTb3VyY2VDZW50ZXIuaD4KICNlbmRpZgogCiBuYW1lc3BhY2UgV2ViS2l0IHsK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvR1BVUHJvY2Vzcy9nc3RyZWFtZXIvR1BVUHJvY2Vz
c0dTdHJlYW1lci5jcHAgYi9Tb3VyY2UvV2ViS2l0L0dQVVByb2Nlc3MvZ3N0cmVhbWVyL0dQVVBy
b2Nlc3NHU3RyZWFtZXIuY3BwCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjRmODg5MjkyNjFmZGE4ODM0NDA0ODU5YTIx
OTkwZGJjMjViMjNlNDMKLS0tIC9kZXYvbnVsbAorKysgYi9Tb3VyY2UvV2ViS2l0L0dQVVByb2Nl
c3MvZ3N0cmVhbWVyL0dQVVByb2Nlc3NHU3RyZWFtZXIuY3BwCkBAIC0wLDAgKzEsNTAgQEAKKy8q
CisgKiBDb3B5cmlnaHQgKEMpIDIwMjAgSWdhbGlhIFMuTC4KKyAqCisgKiBSZWRpc3RyaWJ1dGlv
biBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKKyAq
IG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcg
Y29uZGl0aW9ucworICogYXJlIG1ldDoKKyAqIDEuIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2Ug
Y29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMg
bGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisgKiAyLiBS
ZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNv
cHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZv
bGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQorICogICAgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3Ro
ZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KKyAqCisgKiBUSElT
IFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIFRIRSBDT1BZUklHSFQgSE9MREVSUyBgYEFTIElTJycK
KyAqIEFORCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVU
IE5PVCBMSU1JVEVEIFRPLAorICogVEhFIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFC
SUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUgorICogUFVSUE9TRSBBUkUgRElTQ0xB
SU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgQVBQTEUgSU5DLiBPUiBJVFMgQ09OVFJJQlVUT1JTCisg
KiBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFM
LCBFWEVNUExBUlksIE9SCisgKiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVU
IE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRgorICogU1VCU1RJVFVURSBHT09EUyBPUiBT
RVJWSUNFUzsgTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTCisgKiBJ
TlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhFT1JZIE9GIExJQUJJTElU
WSwgV0hFVEhFUiBJTgorICogQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQgKElO
Q0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkKKyAqIEFSSVNJTkcgSU4gQU5ZIFdBWSBP
VVQgT0YgVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YKKyAqIFRI
RSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KKyAqLworCisjaW5jbHVkZSAiY29uZmlnLmgi
CisjaW5jbHVkZSAiR1BVUHJvY2Vzcy5oIgorCisjaWYgRU5BQkxFKEdQVV9QUk9DRVNTKSAmJiBV
U0UoR1NUUkVBTUVSKQorCisjaW5jbHVkZSAiR1BVUHJvY2Vzc0NyZWF0aW9uUGFyYW1ldGVycy5o
IgorCituYW1lc3BhY2UgV2ViS2l0IHsKKwordm9pZCBHUFVQcm9jZXNzOjppbml0aWFsaXplUHJv
Y2Vzcyhjb25zdCBBdXhpbGlhcnlQcm9jZXNzSW5pdGlhbGl6YXRpb25QYXJhbWV0ZXJzJikKK3sK
K30KKwordm9pZCBHUFVQcm9jZXNzOjppbml0aWFsaXplUHJvY2Vzc05hbWUoY29uc3QgQXV4aWxp
YXJ5UHJvY2Vzc0luaXRpYWxpemF0aW9uUGFyYW1ldGVycyYpCit7Cit9CisKK3ZvaWQgR1BVUHJv
Y2Vzczo6aW5pdGlhbGl6ZVNhbmRib3goY29uc3QgQXV4aWxpYXJ5UHJvY2Vzc0luaXRpYWxpemF0
aW9uUGFyYW1ldGVycyYsIFNhbmRib3hJbml0aWFsaXphdGlvblBhcmFtZXRlcnMmKQoreworfQor
Cit9IC8vIG5hbWVzcGFjZSBXZWJLaXQKKworI2VuZGlmIC8vIEVOQUJMRShHUFVfUFJPQ0VTUykK
KwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9HUFVQcm9jZXNzL2dzdHJlYW1lci9HUFVQcm9j
ZXNzTWFpbkdTdHJlYW1lci5jcHAgYi9Tb3VyY2UvV2ViS2l0L0dQVVByb2Nlc3MvZ3N0cmVhbWVy
L0dQVVByb2Nlc3NNYWluR1N0cmVhbWVyLmNwcApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi4xNTVhYjZlODhmNWY2Yjc5
ZWYzYmNkNTg0ODdiNzVjN2E5ZGU0ZGM2Ci0tLSAvZGV2L251bGwKKysrIGIvU291cmNlL1dlYktp
dC9HUFVQcm9jZXNzL2dzdHJlYW1lci9HUFVQcm9jZXNzTWFpbkdTdHJlYW1lci5jcHAKQEAgLTAs
MCArMSw2MCBAQAorLyoKKyAqIENvcHlyaWdodCAoQykgMjAyMCBJZ2FsaWEgUy5MLgorICoKKyAq
IFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGgg
b3Igd2l0aG91dAorICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQg
dGhlIGZvbGxvd2luZyBjb25kaXRpb25zCisgKiBhcmUgbWV0OgorICogMS4gUmVkaXN0cmlidXRp
b25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAg
IG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xh
aW1lci4KKyAqIDIuIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVj
ZSB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRp
b25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCisgKiAgICBkb2N1bWVudGF0
aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9u
LgorICoKKyAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgVEhFIENPUFlSSUdIVCBIT0xE
RVJTIGBgQVMgSVMnJworICogQU5EIEFOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywg
SU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sCisgKiBUSEUgSU1QTElFRCBXQVJSQU5USUVT
IE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSCisgKiBQVVJQ
T1NFIEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBBUFBMRSBJTkMuIE9SIElUUyBD
T05UUklCVVRPUlMKKyAqIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lE
RU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IKKyAqIENPTlNFUVVFTlRJQUwgREFNQUdFUyAo
SU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GCisgKiBTVUJTVElU
VVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1Ig
QlVTSU5FU1MKKyAqIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVP
UlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOCisgKiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElU
WSwgT1IgVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKQorICogQVJJU0lO
RyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURW
SVNFRCBPRgorICogVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgorICovCisKKyNpbmNs
dWRlICJjb25maWcuaCIKKyNpbmNsdWRlICJHUFVQcm9jZXNzTWFpbi5oIgorCisjaWYgRU5BQkxF
KEdQVV9QUk9DRVNTKSAmJiBVU0UoR1NUUkVBTUVSKQorCisjaW5jbHVkZSAiQXV4aWxpYXJ5UHJv
Y2Vzc01haW4uaCIKKyNpbmNsdWRlICJHUFVQcm9jZXNzLmgiCisKK25hbWVzcGFjZSBXZWJLaXQg
eworCitzdGF0aWMgUmVmUHRyPEdQVVByb2Nlc3M+IGdsb2JhbEdQVVByb2Nlc3M7CisKK2NsYXNz
IEdQVVByb2Nlc3NNYWluR1N0cmVhbWVyIGZpbmFsOiBwdWJsaWMgQXV4aWxpYXJ5UHJvY2Vzc01h
aW5CYXNlIHsKK3B1YmxpYzoKKyAgICBib29sIHBsYXRmb3JtSW5pdGlhbGl6ZSgpIG92ZXJyaWRl
CisgICAgeworICAgICAgICByZXR1cm4gdHJ1ZTsKKyAgICB9Cit9OworCit0ZW1wbGF0ZTw+Cit2
b2lkIGluaXRpYWxpemVBdXhpbGlhcnlQcm9jZXNzPEdQVVByb2Nlc3M+KEF1eGlsaWFyeVByb2Nl
c3NJbml0aWFsaXphdGlvblBhcmFtZXRlcnMmJiBwYXJhbWV0ZXJzKQoreworICAgIHN0YXRpYyBO
ZXZlckRlc3Ryb3llZDxHUFVQcm9jZXNzPiBncHVQcm9jZXNzKFdURk1vdmUocGFyYW1ldGVycykp
OworICAgIGdsb2JhbEdQVVByb2Nlc3MgPSAmZ3B1UHJvY2Vzcy5nZXQoKTsKK30KKworaW50IEdQ
VVByb2Nlc3NNYWluKGludCBhcmdjLCBjaGFyKiogYXJndikKK3sKKyAgICByZXR1cm4gQXV4aWxp
YXJ5UHJvY2Vzc01haW48R1BVUHJvY2VzcywgR1BVUHJvY2Vzc01haW5HU3RyZWFtZXI+KGFyZ2Ms
IGFyZ3YpOworfQorCit9IC8vIG5hbWVzcGFjZSBXZWJLaXQKKworI2VuZGlmIC8vIEVOQUJMRShH
UFVfUFJPQ0VTUykKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvR1BVUHJvY2Vzcy9tZWRpYS9S
ZW1vdGVMZWdhY3lDRE1GYWN0b3J5UHJveHkuY3BwIGIvU291cmNlL1dlYktpdC9HUFVQcm9jZXNz
L21lZGlhL1JlbW90ZUxlZ2FjeUNETUZhY3RvcnlQcm94eS5jcHAKaW5kZXggMDEyZmU0ZDliZWU0
NjRhNTg2NzZiMjA3NWE3ZDY3OTE3OGJkYzBhZi4uZjVkNTA4M2M4YzA3NWZkYWVlYzdiYjc3MWI1
NWE4NTE2OTJiMTViNSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9HUFVQcm9jZXNzL21lZGlh
L1JlbW90ZUxlZ2FjeUNETUZhY3RvcnlQcm94eS5jcHAKKysrIGIvU291cmNlL1dlYktpdC9HUFVQ
cm9jZXNzL21lZGlhL1JlbW90ZUxlZ2FjeUNETUZhY3RvcnlQcm94eS5jcHAKQEAgLTI2LDcgKzI2
LDcgQEAKICNpbmNsdWRlICJjb25maWcuaCIKICNpbmNsdWRlICJSZW1vdGVMZWdhY3lDRE1GYWN0
b3J5UHJveHkuaCIKIAotI2lmIEVOQUJMRShHUFVfUFJPQ0VTUykgJiYgRU5BQkxFKEVOQ1JZUFRF
RF9NRURJQSkKKyNpZiBFTkFCTEUoR1BVX1BST0NFU1MpICYmIEVOQUJMRShMRUdBQ1lfRU5DUllQ
VEVEX01FRElBKQogCiAjaW5jbHVkZSAiUmVtb3RlTGVnYWN5Q0RNUHJveHkuaCIKICNpbmNsdWRl
ICJSZW1vdGVMZWdhY3lDRE1Qcm94eU1lc3NhZ2VzLmgiCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
S2l0L0dQVVByb2Nlc3MvbWVkaWEvZ3N0cmVhbWVyL1JlbW90ZU1lZGlhUGxheWVyUHJveHlHU3Ry
ZWFtZXIuY3BwIGIvU291cmNlL1dlYktpdC9HUFVQcm9jZXNzL21lZGlhL2dzdHJlYW1lci9SZW1v
dGVNZWRpYVBsYXllclByb3h5R1N0cmVhbWVyLmNwcApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRl
eCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi45ZjBiZmI4MjYwMmNl
YjE1ZTVhYzdjZmY0NWZmMTgxYzc0ZTEwYzY2Ci0tLSAvZGV2L251bGwKKysrIGIvU291cmNlL1dl
YktpdC9HUFVQcm9jZXNzL21lZGlhL2dzdHJlYW1lci9SZW1vdGVNZWRpYVBsYXllclByb3h5R1N0
cmVhbWVyLmNwcApAQCAtMCwwICsxLDY2IEBACisvKgorICogQ29weXJpZ2h0IChDKSAyMDIwIEln
YWxpYSBTLkwuCisgKgorICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJp
bmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CisgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0
ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKKyAqIGFyZSBtZXQ6Cisg
KiAxLiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3Zl
IGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhl
IGZvbGxvd2luZyBkaXNjbGFpbWVyLgorICogMi4gUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBm
b3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhp
cyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUK
KyAqICAgIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRo
IHRoZSBkaXN0cmlidXRpb24uCisgKgorICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBU
SEUgQ09QWVJJR0hUIEhPTERFUlMgYGBBUyBJUycnCisgKiBBTkQgQU5ZIEVYUFJFU1MgT1IgSU1Q
TElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywKKyAqIFRIRSBJ
TVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBB
UlRJQ1VMQVIKKyAqIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIEFQ
UExFIElOQy4gT1IgSVRTIENPTlRSSUJVVE9SUworICogQkUgTElBQkxFIEZPUiBBTlkgRElSRUNU
LCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUgorICogQ09OU0VR
VUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1F
TlQgT0YKKyAqIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLCBEQVRB
LCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUworICogSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNF
RCBBTkQgT04gQU5ZIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4KKyAqIENPTlRSQUNU
LCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhF
UldJU0UpCisgKiBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UgT0YgVEhJUyBTT0ZU
V0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GCisgKiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1B
R0UuCisgKi8KKworI2luY2x1ZGUgImNvbmZpZy5oIgorI2luY2x1ZGUgIlJlbW90ZU1lZGlhUGxh
eWVyUHJveHkuaCIKKworI2lmIEVOQUJMRShHUFVfUFJPQ0VTUykgJiYgVVNFKEdTVFJFQU1FUikK
KworI2luY2x1ZGUgIkxheWVySG9zdGluZ0NvbnRleHQuaCIKKyNpbmNsdWRlIDxXZWJDb3JlL05v
dEltcGxlbWVudGVkLmg+CisKK25hbWVzcGFjZSBXZWJLaXQgeworCit2b2lkIFJlbW90ZU1lZGlh
UGxheWVyUHJveHk6OnByZXBhcmVGb3JQbGF5YmFjayhib29sLCBXZWJDb3JlOjpNZWRpYVBsYXll
ckVudW1zOjpQcmVsb2FkLCBib29sLCBib29sLCBmbG9hdCB2aWRlb0NvbnRlbnRTY2FsZSwgQ29t
cGxldGlvbkhhbmRsZXI8dm9pZChPcHRpb25hbDxMYXllckhvc3RpbmdDb250ZXh0SUQ+JiYgaW5s
aW5lTGF5ZXJIb3N0aW5nQ29udGV4dElkLCBPcHRpb25hbDxMYXllckhvc3RpbmdDb250ZXh0SUQ+
JiYgZnVsbHNjcmVlbkxheWVySG9zdGluZ0NvbnRleHRJZCk+JiYpCit7CisgICAgbm90SW1wbGVt
ZW50ZWQoKTsKK30KKwordm9pZCBSZW1vdGVNZWRpYVBsYXllclByb3h5OjptZWRpYVBsYXllckZp
cnN0VmlkZW9GcmFtZUF2YWlsYWJsZSgpCit7CisgICAgbm90SW1wbGVtZW50ZWQoKTsKK30KKwor
dm9pZCBSZW1vdGVNZWRpYVBsYXllclByb3h5OjptZWRpYVBsYXllclJlbmRlcmluZ01vZGVDaGFu
Z2VkKCkKK3sKKyAgICBub3RJbXBsZW1lbnRlZCgpOworfQorCisjaWYgRU5BQkxFKFZJREVPX1BS
RVNFTlRBVElPTl9NT0RFKQordm9pZCBSZW1vdGVNZWRpYVBsYXllclByb3h5OjplbnRlckZ1bGxz
Y3JlZW4oQ29tcGxldGlvbkhhbmRsZXI8dm9pZCgpPiYmIGNvbXBsZXRpb25IYW5kbGVyKQorewor
ICAgIG5vdEltcGxlbWVudGVkKCk7Cit9CisKK3ZvaWQgUmVtb3RlTWVkaWFQbGF5ZXJQcm94eTo6
ZXhpdEZ1bGxzY3JlZW4oQ29tcGxldGlvbkhhbmRsZXI8dm9pZCgpPiYmIGNvbXBsZXRpb25IYW5k
bGVyKQoreworICAgIG5vdEltcGxlbWVudGVkKCk7Cit9CisjZW5kaWYKKworfSAvLyBuYW1lc3Bh
Y2UgV2ViS2l0CisKKworI2VuZGlmIC8vIEVOQUJMRShHUFVfUFJPQ0VTUykKZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJLaXQvUGxhdGZvcm1HVEsuY21ha2UgYi9Tb3VyY2UvV2ViS2l0L1BsYXRmb3Jt
R1RLLmNtYWtlCmluZGV4IDk2MzFiOTlkYjY5NmNiZDUyZTBjNTU3NzQwODg4ZmU5MjJhODM5ODQu
LmMwODNmMzJkMTkyZDk3ZGJlOGU5NDkyZjA3M2UxMDYxMDk5ZTAxYjUgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9XZWJLaXQvUGxhdGZvcm1HVEsuY21ha2UKKysrIGIvU291cmNlL1dlYktpdC9QbGF0Zm9y
bUdUSy5jbWFrZQpAQCAtMzk3LDYgKzM5Nyw3IEBAIGxpc3QoQVBQRU5EIFdlYktpdF9JTkNMVURF
X0RJUkVDVE9SSUVTCiAgICAgIiR7V0VCS0lUX0RJUn0vUGxhdGZvcm0vSVBDL2dsaWIiCiAgICAg
IiR7V0VCS0lUX0RJUn0vUGxhdGZvcm0vSVBDL3VuaXgiCiAgICAgIiR7V0VCS0lUX0RJUn0vUGxh
dGZvcm0vY2xhc3NpZmllciIKKyAgICAiJHtXRUJLSVRfRElSfS9QbGF0Zm9ybS9nZW5lcmljIgog
ICAgICIke1dFQktJVF9ESVJ9L1NoYXJlZC9BUEkvYy9ndGsiCiAgICAgIiR7V0VCS0lUX0RJUn0v
U2hhcmVkL0FQSS9nbGliIgogICAgICIke1dFQktJVF9ESVJ9L1NoYXJlZC9Db29yZGluYXRlZEdy
YXBoaWNzIgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9Tb3VyY2VzR1RLLnR4dCBiL1NvdXJj
ZS9XZWJLaXQvU291cmNlc0dUSy50eHQKaW5kZXggNTY0OGI3Zjg1MzM0MTQwYjFlMzc2NmE5M2Uw
NTA4ZGVmN2NkNzg3YS4uM2ZiY2I0MTQ4NDUwMGFhZGU5NzFlZGY4YTZmNGIyZTZjZmE0MDBlZSAx
MDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9Tb3VyY2VzR1RLLnR4dAorKysgYi9Tb3VyY2UvV2Vi
S2l0L1NvdXJjZXNHVEsudHh0CkBAIC0yMSw2ICsyMSwxMyBAQAogLy8gQVJJU0lORyBJTiBBTlkg
V0FZIE9VVCBPRiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRgog
Ly8gVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgogCitHUFVQcm9jZXNzL2dzdHJlYW1l
ci9HUFVQcm9jZXNzR1N0cmVhbWVyLmNwcAorR1BVUHJvY2Vzcy9nc3RyZWFtZXIvR1BVUHJvY2Vz
c01haW5HU3RyZWFtZXIuY3BwCisKK0dQVVByb2Nlc3MvbWVkaWEvUmVtb3RlQXVkaW9EZXN0aW5h
dGlvbk1hbmFnZXIuY3BwCisKK0dQVVByb2Nlc3MvbWVkaWEvZ3N0cmVhbWVyL1JlbW90ZU1lZGlh
UGxheWVyUHJveHlHU3RyZWFtZXIuY3BwCisKIE5ldHdvcmtQcm9jZXNzL0NsYXNzaWZpZXIvV2Vi
UmVzb3VyY2VMb2FkU3RhdGlzdGljc1N0b3JlLmNwcAogTmV0d29ya1Byb2Nlc3MvQ2xhc3NpZmll
ci9XZWJSZXNvdXJjZUxvYWRTdGF0aXN0aWNzVGVsZW1ldHJ5LmNwcAogCkBAIC0yNjcsNiArMjc0
LDggQEAgVUlQcm9jZXNzL2d0ay9XZWJQcmVmZXJlbmNlc0d0ay5jcHAKIFVJUHJvY2Vzcy9zb3Vw
L1dlYkNvb2tpZU1hbmFnZXJQcm94eVNvdXAuY3BwCiBVSVByb2Nlc3Mvc291cC9XZWJQcm9jZXNz
UG9vbFNvdXAuY3BwCiAKK1dlYlByb2Nlc3MvR1BVL21lZGlhL2dzdHJlYW1lci9WaWRlb0xheWVy
UmVtb3RlR1N0cmVhbWVyLmNwcAorCiBXZWJQcm9jZXNzL0luamVjdGVkQnVuZGxlL0FQSS9nbGli
L0RPTS9ET01PYmplY3RDYWNoZS5jcHAgQG5vLXVuaWZ5CiBXZWJQcm9jZXNzL0luamVjdGVkQnVu
ZGxlL0FQSS9nbGliL0RPTS9XZWJLaXRET01Eb2N1bWVudC5jcHAgQG5vLXVuaWZ5CiBXZWJQcm9j
ZXNzL0luamVjdGVkQnVuZGxlL0FQSS9nbGliL0RPTS9XZWJLaXRET01FbGVtZW50LmNwcCBAbm8t
dW5pZnkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9HUFUvR1BVUHJvY2Vz
c0Nvbm5lY3Rpb24uY3BwIGIvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL0dQVS9HUFVQcm9jZXNz
Q29ubmVjdGlvbi5jcHAKaW5kZXggZGQ4NWQxN2E0NjAxYzEyNjViODg4NWZjOTk0ODUyMDAyMjAx
MGIwZS4uZGJlNTgxOTllNDdjNmE2ZTUwYjE5MDFhNWIzZTJjM2JlZGUxMjAyMSAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL0dQVS9HUFVQcm9jZXNzQ29ubmVjdGlvbi5jcHAK
KysrIGIvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL0dQVS9HUFVQcm9jZXNzQ29ubmVjdGlvbi5j
cHAKQEAgLTUwLDcgKzUwLDcgQEAKICNpbmNsdWRlICJSZW1vdGVDRE1JbnN0YW5jZVNlc3Npb25N
ZXNzYWdlcy5oIgogI2VuZGlmCiAKLSNpZiBFTkFCTEUoTUVESUFfU1RSRUFNKQorI2lmIFBMQVRG
T1JNKENPQ09BKSAmJiBFTkFCTEUoTUVESUFfU1RSRUFNKQogI2luY2x1ZGUgIlVzZXJNZWRpYUNh
cHR1cmVNYW5hZ2VyLmgiCiAjaW5jbHVkZSAiVXNlck1lZGlhQ2FwdHVyZU1hbmFnZXJNZXNzYWdl
cy5oIgogI2VuZGlmCkBAIC0xMTIsMTkgKzExMiwxOSBAQCBib29sIEdQVVByb2Nlc3NDb25uZWN0
aW9uOjpkaXNwYXRjaE1lc3NhZ2UoSVBDOjpDb25uZWN0aW9uJiBjb25uZWN0aW9uLCBJUEM6OkRl
YwogICAgICAgICByZXR1cm4gdHJ1ZTsKICAgICB9CiAKLSNpZiBFTkFCTEUoTUVESUFfU1RSRUFN
KQorI2lmIFBMQVRGT1JNKENPQ09BKSAmJiBFTkFCTEUoTUVESUFfU1RSRUFNKQogICAgIGlmIChk
ZWNvZGVyLm1lc3NhZ2VSZWNlaXZlck5hbWUoKSA9PSBNZXNzYWdlczo6VXNlck1lZGlhQ2FwdHVy
ZU1hbmFnZXI6Om1lc3NhZ2VSZWNlaXZlck5hbWUoKSkgewogICAgICAgICBpZiAoYXV0byogY2Fw
dHVyZU1hbmFnZXIgPSBXZWJQcm9jZXNzOjpzaW5nbGV0b24oKS5zdXBwbGVtZW50PFVzZXJNZWRp
YUNhcHR1cmVNYW5hZ2VyPigpKQogICAgICAgICAgICAgY2FwdHVyZU1hbmFnZXItPmRpZFJlY2Vp
dmVNZXNzYWdlRnJvbUdQVVByb2Nlc3MoY29ubmVjdGlvbiwgZGVjb2Rlcik7CiAgICAgICAgIHJl
dHVybiB0cnVlOwogICAgIH0KLSNpZiBQTEFURk9STShDT0NPQSkgJiYgRU5BQkxFKFZJREVPX1RS
QUNLKQorI2lmIEVOQUJMRShWSURFT19UUkFDSykKICAgICBpZiAoZGVjb2Rlci5tZXNzYWdlUmVj
ZWl2ZXJOYW1lKCkgPT0gTWVzc2FnZXM6OlNhbXBsZUJ1ZmZlckRpc3BsYXlMYXllcjo6bWVzc2Fn
ZVJlY2VpdmVyTmFtZSgpKSB7CiAgICAgICAgIHNhbXBsZUJ1ZmZlckRpc3BsYXlMYXllck1hbmFn
ZXIoKS5kaWRSZWNlaXZlTGF5ZXJNZXNzYWdlKGNvbm5lY3Rpb24sIGRlY29kZXIpOwogICAgICAg
ICByZXR1cm4gdHJ1ZTsKICAgICB9Ci0jZW5kaWYgLy8gUExBVEZPUk0oQ09DT0EpICYmIEVOQUJM
RShWSURFT19UUkFDSykKLSNlbmRpZiAvLyBFTkFCTEUoTUVESUFfU1RSRUFNKQorI2VuZGlmIC8v
IEVOQUJMRShWSURFT19UUkFDSykKKyNlbmRpZiAvLyBQTEFURk9STShDT0NPQSkgJiYgRU5BQkxF
KE1FRElBX1NUUkVBTSkKICNpZiBVU0UoTElCV0VCUlRDKSAmJiBQTEFURk9STShDT0NPQSkKICAg
ICBpZiAoZGVjb2Rlci5tZXNzYWdlUmVjZWl2ZXJOYW1lKCkgPT0gTWVzc2FnZXM6OkxpYldlYlJU
Q0NvZGVjczo6bWVzc2FnZVJlY2VpdmVyTmFtZSgpKSB7CiAgICAgICAgIFdlYlByb2Nlc3M6OnNp
bmdsZXRvbigpLmxpYldlYlJUQ0NvZGVjcygpLmRpZFJlY2VpdmVNZXNzYWdlKGNvbm5lY3Rpb24s
IGRlY29kZXIpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL0dQVS9tZWRp
YS9SZW1vdGVDRE0uY3BwIGIvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL0dQVS9tZWRpYS9SZW1v
dGVDRE0uY3BwCmluZGV4IDBjOTFiNDBmM2I5Yzc1YjNjMTEwYjYzNmY2OGNhNTcwNWEyNWI1NDgu
LjQ5ZmQzOGQxODJlMmY5MTU2MzNmYTQwYjNhMThhNGY0YTU3OWRlM2UgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9HUFUvbWVkaWEvUmVtb3RlQ0RNLmNwcAorKysgYi9Tb3Vy
Y2UvV2ViS2l0L1dlYlByb2Nlc3MvR1BVL21lZGlhL1JlbW90ZUNETS5jcHAKQEAgLTI5LDYgKzI5
LDcgQEAKICNpZiBFTkFCTEUoR1BVX1BST0NFU1MpICYmIEVOQUJMRShFTkNSWVBURURfTUVESUEp
CiAKICNpbmNsdWRlICJEYXRhUmVmZXJlbmNlLmgiCisjaW5jbHVkZSAiR1BVUHJvY2Vzc0Nvbm5l
Y3Rpb24uaCIKICNpbmNsdWRlICJSZW1vdGVDRE1JbnN0YW5jZS5oIgogI2luY2x1ZGUgIlJlbW90
ZUNETUluc3RhbmNlQ29uZmlndXJhdGlvbi5oIgogI2luY2x1ZGUgIlJlbW90ZUNETUluc3RhbmNl
SWRlbnRpZmllci5oIgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL0dQVS9t
ZWRpYS9nc3RyZWFtZXIvVmlkZW9MYXllclJlbW90ZUdTdHJlYW1lci5jcHAgYi9Tb3VyY2UvV2Vi
S2l0L1dlYlByb2Nlc3MvR1BVL21lZGlhL2dzdHJlYW1lci9WaWRlb0xheWVyUmVtb3RlR1N0cmVh
bWVyLmNwcApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwLi4zNjNjM2M0NDBiYjdkYjNiZjJjZmFmYjRkMWY1MmJhZDQ2YmIw
MjljCi0tLSAvZGV2L251bGwKKysrIGIvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL0dQVS9tZWRp
YS9nc3RyZWFtZXIvVmlkZW9MYXllclJlbW90ZUdTdHJlYW1lci5jcHAKQEAgLTAsMCArMSw1MiBA
QAorLyoKKyAqIENvcHlyaWdodCAoQykgMjAyMCBJZ2FsaWEgUy5MLgorICoKKyAqIFJlZGlzdHJp
YnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91
dAorICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxv
d2luZyBjb25kaXRpb25zCisgKiBhcmUgbWV0OgorICogMS4gUmVkaXN0cmlidXRpb25zIG9mIHNv
dXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwg
dGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKyAq
IDIuIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJv
dmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0
aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCisgKiAgICBkb2N1bWVudGF0aW9uIGFuZC9v
ciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgorICoKKyAq
IFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgVEhFIENPUFlSSUdIVCBIT0xERVJTIGBgQVMg
SVMnJworICogQU5EIEFOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5H
LCBCVVQgTk9UIExJTUlURUQgVE8sCisgKiBUSEUgSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNI
QU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSCisgKiBQVVJQT1NFIEFSRSBE
SVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBBUFBMRSBJTkMuIE9SIElUUyBDT05UUklCVVRP
UlMKKyAqIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQ
RUNJQUwsIEVYRU1QTEFSWSwgT1IKKyAqIENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5H
LCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GCisgKiBTVUJTVElUVVRFIEdPT0RT
IE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MK
KyAqIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkgT0YgTElB
QklMSVRZLCBXSEVUSEVSIElOCisgKiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9S
VCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKQorICogQVJJU0lORyBJTiBBTlkg
V0FZIE9VVCBPRiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRgor
ICogVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgorICovCisKKyNpbmNsdWRlICJjb25m
aWcuaCIKKyNpbmNsdWRlICJWaWRlb0xheWVyUmVtb3RlLmgiCisKKyNpZiBFTkFCTEUoR1BVX1BS
T0NFU1MpCisKKyNpbmNsdWRlIDxXZWJDb3JlL05vdEltcGxlbWVudGVkLmg+CisjaW5jbHVkZSA8
V2ViQ29yZS9QbGF0Zm9ybUxheWVyLmg+CisKKyNpZiBVU0UoTklDT1NJQSkKKyNpbmNsdWRlIDxX
ZWJDb3JlL05pY29zaWFQbGF0Zm9ybUxheWVyLmg+CisjZWxpZiBVU0UoQ09PUkRJTkFURURfR1JB
UEhJQ1MpCisjaW5jbHVkZSA8V2ViQ29yZS9UZXh0dXJlTWFwcGVyUGxhdGZvcm1MYXllclByb3h5
UHJvdmlkZXIuaD4KKyNlbGlmIFVTRShURVhUVVJFX01BUFBFUikKKyNpbmNsdWRlIDxXZWJDb3Jl
L1RleHR1cmVNYXBwZXJQbGF0Zm9ybUxheWVyLmg+CisjZW5kaWYKKworbmFtZXNwYWNlIFdlYktp
dCB7CisKK1BsYXRmb3JtTGF5ZXJDb250YWluZXIgY3JlYXRlVmlkZW9MYXllclJlbW90ZShNZWRp
YVBsYXllclByaXZhdGVSZW1vdGUqIG1lZGlhUGxheWVyUHJpdmF0ZVJlbW90ZSwgTGF5ZXJIb3N0
aW5nQ29udGV4dElEIGNvbnRleHRJZCkKK3sKKyAgICBub3RJbXBsZW1lbnRlZCgpOworICAgIHJl
dHVybiBudWxscHRyOworfQorCit9CisKKyNlbmRpZgpkaWZmIC0tZ2l0IGEvU291cmNlL2NtYWtl
L09wdGlvbnNHVEsuY21ha2UgYi9Tb3VyY2UvY21ha2UvT3B0aW9uc0dUSy5jbWFrZQppbmRleCBk
ZTQxMWM5NzkzMWVmNmZmZjVhZjYxODk4OTU2M2VjZjRhNTNmZWExLi4wM2I4MzAzZDVhNzM4MTli
MjFkZTE0MThiY2ZkMmM5ZmVhY2EzODMyIDEwMDY0NAotLS0gYS9Tb3VyY2UvY21ha2UvT3B0aW9u
c0dUSy5jbWFrZQorKysgYi9Tb3VyY2UvY21ha2UvT3B0aW9uc0dUSy5jbWFrZQpAQCAtMTY4LDEy
ICsxNjgsMTYgQEAgV0VCS0lUX09QVElPTl9ERUZBVUxUX1BPUlRfVkFMVUUoRU5BQkxFX1dFQkRS
SVZFUiBQVUJMSUMgT04pCiAjIENoYW5naW5nIHRoZXNlIG9wdGlvbnMgaXMgY29tcGxldGVseSB1
bnN1cHBvcnRlZC4KIFdFQktJVF9PUFRJT05fREVGQVVMVF9QT1JUX1ZBTFVFKEVOQUJMRV9BVVRP
Q0FQSVRBTElaRSBQUklWQVRFIE9OKQogV0VCS0lUX09QVElPTl9ERUZBVUxUX1BPUlRfVkFMVUUo
RU5BQkxFX0NPTlRFTlRfRVhURU5TSU9OUyBQUklWQVRFIE9OKQorV0VCS0lUX09QVElPTl9ERUZB
VUxUX1BPUlRfVkFMVUUoRU5BQkxFX0NTU19DT05JQ19HUkFESUVOVFMgUFJJVkFURSBPTikKK1dF
QktJVF9PUFRJT05fREVGQVVMVF9QT1JUX1ZBTFVFKEVOQUJMRV9DU1NfUEFJTlRJTkdfQVBJIFBS
SVZBVEUgJHtFTkFCTEVfRVhQRVJJTUVOVEFMX0ZFQVRVUkVTfSkKK1dFQktJVF9PUFRJT05fREVG
QVVMVF9QT1JUX1ZBTFVFKEVOQUJMRV9DU1NfVFlQRURfT00gUFJJVkFURSAke0VOQUJMRV9FWFBF
UklNRU5UQUxfRkVBVFVSRVN9KQogV0VCS0lUX09QVElPTl9ERUZBVUxUX1BPUlRfVkFMVUUoRU5B
QkxFX0NVUlNPUl9WSVNJQklMSVRZIFBSSVZBVEUgT04pCiBXRUJLSVRfT1BUSU9OX0RFRkFVTFRf
UE9SVF9WQUxVRShFTkFCTEVfREFSS19NT0RFX0NTUyBQUklWQVRFIE9OKQogV0VCS0lUX09QVElP
Tl9ERUZBVUxUX1BPUlRfVkFMVUUoRU5BQkxFX0RBVEFMSVNUX0VMRU1FTlQgUFJJVkFURSBPTikK
IFdFQktJVF9PUFRJT05fREVGQVVMVF9QT1JUX1ZBTFVFKEVOQUJMRV9ET1dOTE9BRF9BVFRSSUJV
VEUgUFJJVkFURSBPTikKIFdFQktJVF9PUFRJT05fREVGQVVMVF9QT1JUX1ZBTFVFKEVOQUJMRV9F
TkNSWVBURURfTUVESUEgUFJJVkFURSAke0VOQUJMRV9FWFBFUklNRU5UQUxfRkVBVFVSRVN9KQog
V0VCS0lUX09QVElPTl9ERUZBVUxUX1BPUlRfVkFMVUUoRU5BQkxFX0ZUUERJUiBQUklWQVRFIE9G
RikKK1dFQktJVF9PUFRJT05fREVGQVVMVF9QT1JUX1ZBTFVFKEVOQUJMRV9HUFVfUFJPQ0VTUyBQ
UklWQVRFICR7RU5BQkxFX0VYUEVSSU1FTlRBTF9GRUFUVVJFU30pCiBXRUJLSVRfT1BUSU9OX0RF
RkFVTFRfUE9SVF9WQUxVRShFTkFCTEVfSU5QVVRfVFlQRV9DT0xPUiBQUklWQVRFIE9OKQogV0VC
S0lUX09QVElPTl9ERUZBVUxUX1BPUlRfVkFMVUUoRU5BQkxFX0xBWU9VVF9GT1JNQVRUSU5HX0NP
TlRFWFQgUFJJVkFURSAke0VOQUJMRV9FWFBFUklNRU5UQUxfRkVBVFVSRVN9KQogV0VCS0lUX09Q
VElPTl9ERUZBVUxUX1BPUlRfVkFMVUUoRU5BQkxFX01FRElBX1NUUkVBTSBQUklWQVRFICR7RU5B
QkxFX0VYUEVSSU1FTlRBTF9GRUFUVVJFU30pCkBAIC0xODIsMTMgKzE4NiwxMCBAQCBXRUJLSVRf
T1BUSU9OX0RFRkFVTFRfUE9SVF9WQUxVRShFTkFCTEVfTU9VU0VfQ1VSU09SX1NDQUxFIFBSSVZB
VEUgT04pCiBXRUJLSVRfT1BUSU9OX0RFRkFVTFRfUE9SVF9WQUxVRShFTkFCTEVfTkVUV09SS19D
QUNIRV9TUEVDVUxBVElWRV9SRVZBTElEQVRJT04gUFJJVkFURSBPTikKIFdFQktJVF9PUFRJT05f
REVGQVVMVF9QT1JUX1ZBTFVFKEVOQUJMRV9PRkZTQ1JFRU5fQ0FOVkFTIFBSSVZBVEUgJHtFTkFC
TEVfRVhQRVJJTUVOVEFMX0ZFQVRVUkVTfSkKIFdFQktJVF9PUFRJT05fREVGQVVMVF9QT1JUX1ZB
TFVFKEVOQUJMRV9QT0lOVEVSX0xPQ0sgUFJJVkFURSBPTikKK1dFQktJVF9PUFRJT05fREVGQVVM
VF9QT1JUX1ZBTFVFKEVOQUJMRV9SRVNPVVJDRV9MT0FEX1NUQVRJU1RJQ1MgUFJJVkFURSBPTikK
IFdFQktJVF9PUFRJT05fREVGQVVMVF9QT1JUX1ZBTFVFKEVOQUJMRV9TRVJWSUNFX1dPUktFUiBQ
UklWQVRFIE9OKQogV0VCS0lUX09QVElPTl9ERUZBVUxUX1BPUlRfVkFMVUUoRU5BQkxFX1NIQVJF
QUJMRV9SRVNPVVJDRSBQVUJMSUMgT04pCiBXRUJLSVRfT1BUSU9OX0RFRkFVTFRfUE9SVF9WQUxV
RShFTkFCTEVfV0VCX1JUQyBQUklWQVRFICR7RU5BQkxFX0VYUEVSSU1FTlRBTF9GRUFUVVJFU30p
Ci1XRUJLSVRfT1BUSU9OX0RFRkFVTFRfUE9SVF9WQUxVRShFTkFCTEVfQ1NTX1BBSU5USU5HX0FQ
SSBQUklWQVRFICR7RU5BQkxFX0VYUEVSSU1FTlRBTF9GRUFUVVJFU30pCi1XRUJLSVRfT1BUSU9O
X0RFRkFVTFRfUE9SVF9WQUxVRShFTkFCTEVfQ1NTX1RZUEVEX09NIFBSSVZBVEUgJHtFTkFCTEVf
RVhQRVJJTUVOVEFMX0ZFQVRVUkVTfSkKLVdFQktJVF9PUFRJT05fREVGQVVMVF9QT1JUX1ZBTFVF
KEVOQUJMRV9DU1NfQ09OSUNfR1JBRElFTlRTIFBSSVZBVEUgT04pCi1XRUJLSVRfT1BUSU9OX0RF
RkFVTFRfUE9SVF9WQUxVRShFTkFCTEVfUkVTT1VSQ0VfTE9BRF9TVEFUSVNUSUNTIFBSSVZBVEUg
T04pCiAKIGlmIChVU0VfR1RLNCkKIFdFQktJVF9PUFRJT05fREVGQVVMVF9QT1JUX1ZBTFVFKEVO
QUJMRV9ORVRTQ0FQRV9QTFVHSU5fQVBJIFBSSVZBVEUgT0ZGKQpkaWZmIC0tZ2l0IGEvQ2hhbmdl
TG9nIGIvQ2hhbmdlTG9nCmluZGV4IDYyMmY5ZWRmNWI4YzVlYWE0N2ViODIzNzMzOGU2N2UyMTlj
YzcxM2YuLjNlNGU1ZDhhYWQyYzg5NTc0YmEwYWU3OGU0Y2JmYzczZWMzZTYxYTMgMTAwNjQ0Ci0t
LSBhL0NoYW5nZUxvZworKysgYi9DaGFuZ2VMb2cKQEAgLTEsMyArMSwxNyBAQAorMjAyMC0wNC0w
OCAgVsOtY3RvciBNYW51ZWwgSsOhcXVleiBMZWFsICA8dmphcXVlekBpZ2FsaWEuY29tPgorCisg
ICAgICAgIFtHUFVQXVtHVEtdIGNvbXBpbGUgR1BVUHJvY2VzcyBpbiBHVEsgcG9ydAorICAgICAg
ICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjA4ODE0CisKKyAgICAg
ICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgRW5hYmxlIEdQVVByb2Nl
c3MgY29tcGlsYXRpb24gaW4gV2ViS2l0R1RLIGFzIGFuIGV4cGVyaW1lbnRhbAorICAgICAgICBm
ZWF0dXJlCisKKyAgICAgICAgKiBTb3VyY2UvY21ha2UvT3B0aW9uc0dUSy5jbWFrZTogc29ydCBh
bHBoYWJldGljYWxseSBXZWJLaXQKKyAgICAgICAgb3B0aW9ucyBmb3IgR1RLIHBvcnQgYW5kIGVu
YWJsZSBHUFVfUFJPQ0VTUyBpZiBleHBlcmltZW50YWwKKyAgICAgICAgZmVhdHVyZXMgb3B0aW9u
IGlzIGVuYWJsZWQuCisKIDIwMjAtMDQtMjcgIFBoaWxpcHBlIE5vcm1hbmQgIDxwbm9ybWFuZEBp
Z2FsaWEuY29tPgogCiAgICAgICAgIFtHVEtdIEVOQUJMRShPUEVOR0wpIHJlbW1hbnRzLi4uCg==
</data>

          </attachment>
      

    </bug>

</bugzilla>