<?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>114330</bug_id>
          
          <creation_ts>2013-04-09 21:02:58 -0700</creation_ts>
          <short_desc>Refactor TextTrack and TextTrackList to make it easier to add audio and video tracks</short_desc>
          <delta_ts>2013-04-12 15:03:18 -0700</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>Media</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords></keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          <blocked>113965</blocked>
          <everconfirmed>0</everconfirmed>
          <reporter name="Brendan Long">b.long</reporter>
          <assigned_to name="Nobody">webkit-unassigned</assigned_to>
          <cc>b.long</cc>
    
    <cc>buildbot</cc>
    
    <cc>commit-queue</cc>
    
    <cc>david.corvoysier</cc>
    
    <cc>eric.carlson</cc>
    
    <cc>esprehn+autocc</cc>
    
    <cc>gyuyoung.kim</cc>
    
    <cc>jer.noble</cc>
    
    <cc>ojan.autocc</cc>
    
    <cc>rakuco</cc>
    
    <cc>rniwa</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>872575</commentid>
    <comment_count>0</comment_count>
    <who name="Brendan Long">b.long</who>
    <bug_when>2013-04-09 21:02:58 -0700</bug_when>
    <thetext>Refactor TextTrack and TextTrackList to make it easier to add audio and video tracks</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>872576</commentid>
    <comment_count>1</comment_count>
    <who name="Brendan Long">b.long</who>
    <bug_when>2013-04-09 21:04:25 -0700</bug_when>
    <thetext>This bug is for some refactoring work we&apos;re doing before adding audio and video tracks in bug #113965.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>872578</commentid>
    <comment_count>2</comment_count>
      <attachid>197201</attachid>
    <who name="Brendan Long">b.long</who>
    <bug_when>2013-04-09 21:12:03 -0700</bug_when>
    <thetext>Created attachment 197201
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>872583</commentid>
    <comment_count>3</comment_count>
      <attachid>197203</attachid>
    <who name="Brendan Long">b.long</who>
    <bug_when>2013-04-09 21:44:37 -0700</bug_when>
    <thetext>Created attachment 197203
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>872585</commentid>
    <comment_count>4</comment_count>
      <attachid>197205</attachid>
    <who name="Brendan Long">b.long</who>
    <bug_when>2013-04-09 21:48:37 -0700</bug_when>
    <thetext>Created attachment 197205
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>872594</commentid>
    <comment_count>5</comment_count>
      <attachid>197205</attachid>
    <who name="Build Bot">buildbot</who>
    <bug_when>2013-04-09 22:00:15 -0700</bug_when>
    <thetext>Comment on attachment 197205
Patch

Attachment 197205 did not pass mac-wk2-ews (mac-wk2):
Output: http://webkit-commit-queue.appspot.com/results/17739013</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>872602</commentid>
    <comment_count>6</comment_count>
      <attachid>197205</attachid>
    <who name="Build Bot">buildbot</who>
    <bug_when>2013-04-09 22:34:17 -0700</bug_when>
    <thetext>Comment on attachment 197205
Patch

Attachment 197205 did not pass mac-ews (mac):
Output: http://webkit-commit-queue.appspot.com/results/17671034</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>872617</commentid>
    <comment_count>7</comment_count>
      <attachid>197205</attachid>
    <who name="Build Bot">buildbot</who>
    <bug_when>2013-04-09 23:18:37 -0700</bug_when>
    <thetext>Comment on attachment 197205
Patch

Attachment 197205 did not pass win-ews (win):
Output: http://webkit-commit-queue.appspot.com/results/17624051</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>872963</commentid>
    <comment_count>8</comment_count>
      <attachid>197316</attachid>
    <who name="Brendan Long">b.long</who>
    <bug_when>2013-04-10 11:06:13 -0700</bug_when>
    <thetext>Created attachment 197316
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>872965</commentid>
    <comment_count>9</comment_count>
    <who name="Brendan Long">b.long</who>
    <bug_when>2013-04-10 11:07:03 -0700</bug_when>
    <thetext>I&apos;m trying to get the Mac and Windows builds to work, but I&apos;m not really sure where to add the .idl files to get them picked up.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>873101</commentid>
    <comment_count>10</comment_count>
    <who name="Brendan Long">b.long</who>
    <bug_when>2013-04-10 12:28:01 -0700</bug_when>
    <thetext>(In reply to comment #9)
&gt; I&apos;m trying to get the Mac and Windows builds to work, but I&apos;m not really sure where to add the .idl files to get them picked up.

Ignore this. This applies to the audio/video tracks, not this change.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>873294</commentid>
    <comment_count>11</comment_count>
      <attachid>197316</attachid>
    <who name="Build Bot">buildbot</who>
    <bug_when>2013-04-10 16:28:06 -0700</bug_when>
    <thetext>Comment on attachment 197316
Patch

Attachment 197316 did not pass mac-ews (mac):
Output: http://webkit-commit-queue.appspot.com/results/17705099

New failing tests:
media/track/track-user-preferences.html
media/track/track-node-add-remove.html</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>873295</commentid>
    <comment_count>12</comment_count>
      <attachid>197415</attachid>
    <who name="Build Bot">buildbot</who>
    <bug_when>2013-04-10 16:28:09 -0700</bug_when>
    <thetext>Created attachment 197415
Archive of layout-test-results from webkit-ews-01 for mac-mountainlion

The attached test failures were seen while running run-webkit-tests on the mac-ews.
Bot: webkit-ews-01  Port: mac-mountainlion  Platform: Mac OS X 10.8.2</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>873413</commentid>
    <comment_count>13</comment_count>
      <attachid>197460</attachid>
    <who name="Brendan Long">b.long</who>
    <bug_when>2013-04-10 18:24:05 -0700</bug_when>
    <thetext>Created attachment 197460
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>873436</commentid>
    <comment_count>14</comment_count>
      <attachid>197466</attachid>
    <who name="Brendan Long">b.long</who>
    <bug_when>2013-04-10 19:58:19 -0700</bug_when>
    <thetext>Created attachment 197466
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>874339</commentid>
    <comment_count>15</comment_count>
      <attachid>197466</attachid>
    <who name="Brendan Long">b.long</who>
    <bug_when>2013-04-11 20:05:52 -0700</bug_when>
    <thetext>Comment on attachment 197466
Patch

This doesn&apos;t build since I added the removetrack event, and I need some time to figure out how to handle some things better.

The most annoying part of this is that Vector&lt;RefPtr&lt;TrackBase&gt; &gt; can&apos;t be cast to Vector&lt;RefPtr&lt;TextTrack&gt; &gt;, which makes TextTrackList.cpp significantly more complicated than it needs to be. I&apos;m thinking I can just make m_elementTracks and m_addTrackTracks(?) into Vector&lt;RefPtr&lt;TrackBase&gt; &gt; also, but it will make the code more complicated. I think if I move the track index and isRendered() code into TrackBase it will work, I just need to make sure that those make sense for audio and video tracks.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>874807</commentid>
    <comment_count>16</comment_count>
    <who name="Brendan Long">b.long</who>
    <bug_when>2013-04-12 09:47:02 -0700</bug_when>
    <thetext>The track index and isRendered() code only makes sense for text tracks, because it&apos;s all related to how to render subtitles.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>874825</commentid>
    <comment_count>17</comment_count>
      <attachid>197865</attachid>
    <who name="Brendan Long">b.long</who>
    <bug_when>2013-04-12 10:25:22 -0700</bug_when>
    <thetext>Created attachment 197865
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>874826</commentid>
    <comment_count>18</comment_count>
    <who name="Brendan Long">b.long</who>
    <bug_when>2013-04-12 10:26:22 -0700</bug_when>
    <thetext>Let me know if you&apos;d prefer that these patches be broken up differently.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>874831</commentid>
    <comment_count>19</comment_count>
    <who name="Jer Noble">jer.noble</who>
    <bug_when>2013-04-12 10:34:00 -0700</bug_when>
    <thetext>I really don&apos;t like all the static_cast&lt;TextTrack*&gt; going on in TextTrackList.  Perhaps add the following to TextTrack.h?:

TextTrack* toTextTrack(TrackBase* track)
{
    ASSERT(track-&gt;type() == TrackBase::TextTrack);
    return static_cast&lt;TextTrack*&gt;(track);
}

Similar functions could go into AudioTrack.h and VideoTrack.h.

Then replace all the explicit casts with calls to toTextTrack(), and if ever another type sneaks into a TextTrackList, it&apos;ll be caught by this assert.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>874838</commentid>
    <comment_count>20</comment_count>
      <attachid>197865</attachid>
    <who name="Eric Carlson">eric.carlson</who>
    <bug_when>2013-04-12 10:41:00 -0700</bug_when>
    <thetext>Comment on attachment 197865
Patch

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

This is really close! 

Thanks for taking this on, refactoring isn&apos;t a lot of fun :-)

&gt; Source/WebCore/ChangeLog:19
&gt; +        (WebCore::HTMLMediaElement::mediaPlayerDidAddTextTrack):
&gt; +        (WebCore::HTMLMediaElement::mediaPlayerDidRemoveTextTrack):
&gt; +        (WebCore::HTMLMediaElement::addTextTrack):
&gt; +        (WebCore::HTMLMediaElement::removeTextTrack):
&gt; +        (WebCore::HTMLMediaElement::removeAllInbandTracks):
&gt; +        (WebCore::HTMLMediaElement::didAddTextTrack):
&gt; +        (WebCore::HTMLMediaElement::didRemoveTextTrack):

Nit: I think it is useful to have brief comments in the ChangeLog detailing what changed in each method.

&gt; Source/WebCore/ChangeLog:21
&gt; +        (WebCore):

Nit: all of these empty entries added by the script can be removed.

&gt; Source/WebCore/html/track/TextTrack.h:87
&gt; +    virtual const AtomicString&amp; defaultKindKeyword() const { return subtitlesKeyword(); }

Nit: OVERRIDE.

&gt; Source/WebCore/html/track/TextTrack.h:169
&gt; +    virtual void refEventTarget() { ref(); }
&gt; +    virtual void derefEventTarget() { deref(); }

OVERRIDE

&gt; Source/WebCore/html/track/TextTrackList.cpp:58
&gt; +    TextTrack* textTrack = static_cast&lt;TextTrack*&gt;(track);

This would be better if you had a toTextTrack() function that ASSERTs when passed the wrong type (see the various toXXX functions in Render classes).</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>874900</commentid>
    <comment_count>21</comment_count>
      <attachid>197877</attachid>
    <who name="Brendan Long">b.long</who>
    <bug_when>2013-04-12 12:27:58 -0700</bug_when>
    <thetext>Created attachment 197877
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>874902</commentid>
    <comment_count>22</comment_count>
    <who name="Brendan Long">b.long</who>
    <bug_when>2013-04-12 12:28:58 -0700</bug_when>
    <thetext>I added toTextTrack() and put some comments in the ChangeLog. I&apos;m not sure if I was too detailed, or not detailed enough. Almost all of the changes involve renaming or changing a TextTrack* to a TrackBase*.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>874907</commentid>
    <comment_count>23</comment_count>
      <attachid>197877</attachid>
    <who name="Jer Noble">jer.noble</who>
    <bug_when>2013-04-12 12:40:22 -0700</bug_when>
    <thetext>Comment on attachment 197877
Patch

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

r+, with nit:

&gt; Source/WebCore/html/track/TextTrack.cpp:574
&gt; +TextTrack* toTextTrack(TrackBase* track)
&gt; +{
&gt; +    ASSERT(track-&gt;type() == TrackBase::TextTrack);
&gt; +    return static_cast&lt;TextTrack*&gt;(track);
&gt;  }

Nit: please put the body of this function into the header file, so it can be inlined.

(If you don&apos;t have committer rights, just upload a new patch named &quot;Patch for Committing&quot; and either Eric or I will cq+ it.)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>874936</commentid>
    <comment_count>24</comment_count>
      <attachid>197881</attachid>
    <who name="Brendan Long">b.long</who>
    <bug_when>2013-04-12 13:52:46 -0700</bug_when>
    <thetext>Created attachment 197881
Patch for committing

I needed to make it inline TextTrack* toTextTrack() to make it compile.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>874981</commentid>
    <comment_count>25</comment_count>
      <attachid>197881</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2013-04-12 15:03:13 -0700</bug_when>
    <thetext>Comment on attachment 197881
Patch for committing

Clearing flags on attachment: 197881

Committed r148305: &lt;http://trac.webkit.org/changeset/148305&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>874982</commentid>
    <comment_count>26</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2013-04-12 15:03:18 -0700</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>197201</attachid>
            <date>2013-04-09 21:12:03 -0700</date>
            <delta_ts>2013-04-09 21:44:32 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-114330-20130409221145.patch</filename>
            <type>text/plain</type>
            <size>51826</size>
            <attacher name="Brendan Long">b.long</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTQ4MDI4CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggNTE5NTFiMjQyMDQ1OWRh
MDViMTYwOTg1YzFkYzhmNzk1OTI0NGVlMy4uMmEyOWZlZjUyYjNmMTRjNDgzNDkxZTM2ZDJjMjli
YmM4NmI0NjAxNyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDEwNiBAQAorMjAxMy0wNC0wOSAgQnJl
bmRhbiBMb25nICA8Yi5sb25nQGNhYmxlbGFicy5jb20+CisKKyAgICAgICAgUmVmYWN0b3IgVGV4
dFRyYWNrIGFuZCBUZXh0VHJhY2tMaXN0IHRvIG1ha2UgaXQgZWFzaWVyIHRvIGFkZCBhdWRpbyBh
bmQgdmlkZW8gdHJhY2tzCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVn
LmNnaT9pZD0xMTQzMzAKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKwor
ICAgICAgICBObyBuZXcgdGVzdHMgYmVjYXVzZSB0aGlzIGlzbid0IG1lYW50IHRvIGNoYW5nZSBh
bnkgZnVuY3Rpb25hbGl0eS4KKworICAgICAgICAqIENNYWtlTGlzdHMudHh0OgorICAgICAgICAq
IFRhcmdldC5wcmk6CisgICAgICAgICogaHRtbC9IVE1MTWVkaWFFbGVtZW50LmNwcDoKKyAgICAg
ICAgKFdlYkNvcmU6OkhUTUxNZWRpYUVsZW1lbnQ6OmNhblBsYXkpOgorICAgICAgICAoV2ViQ29y
ZTo6SFRNTE1lZGlhRWxlbWVudDo6bWVkaWFQbGF5ZXJEaWRBZGRBdWRpb1RyYWNrKToKKyAgICAg
ICAgKFdlYkNvcmUpOgorICAgICAgICAoV2ViQ29yZTo6SFRNTE1lZGlhRWxlbWVudDo6bWVkaWFQ
bGF5ZXJEaWRBZGRUZXh0VHJhY2spOgorICAgICAgICAoV2ViQ29yZTo6SFRNTE1lZGlhRWxlbWVu
dDo6bWVkaWFQbGF5ZXJEaWRSZW1vdmVWaWRlb1RyYWNrKToKKyAgICAgICAgKFdlYkNvcmU6OkhU
TUxNZWRpYUVsZW1lbnQ6OnNldFNlbGVjdGVkVGV4dFRyYWNrKToKKyAgICAgICAgKFdlYkNvcmU6
OkhUTUxNZWRpYUVsZW1lbnQ6OnBsYXRmb3JtVGV4dFRyYWNrTWVudSk6CisgICAgICAgIChXZWJD
b3JlOjpIVE1MTWVkaWFFbGVtZW50OjphZGRBdWRpb1RyYWNrKToKKyAgICAgICAgKFdlYkNvcmU6
OkhUTUxNZWRpYUVsZW1lbnQ6OmFkZFZpZGVvVHJhY2spOgorICAgICAgICAoV2ViQ29yZTo6SFRN
TE1lZGlhRWxlbWVudDo6cmVtb3ZlVGV4dFRyYWNrKToKKyAgICAgICAgKFdlYkNvcmU6OkhUTUxN
ZWRpYUVsZW1lbnQ6OnJlbW92ZUFsbEluYmFuZFRyYWNrcyk6CisgICAgICAgICogaHRtbC9IVE1M
TWVkaWFFbGVtZW50Lmg6CisgICAgICAgIChXZWJDb3JlKToKKyAgICAgICAgKEhUTUxNZWRpYUVs
ZW1lbnQpOgorICAgICAgICAoV2ViQ29yZTo6SFRNTE1lZGlhRWxlbWVudDo6Y3VycmVudGx5QWN0
aXZlQ3Vlcyk6CisgICAgICAgICogaHRtbC9IVE1MVHJhY2tFbGVtZW50LmNwcDoKKyAgICAgICAg
KFdlYkNvcmU6OkhUTUxUcmFja0VsZW1lbnQ6Omluc2VydGVkSW50byk6CisgICAgICAgIChXZWJD
b3JlOjpIVE1MVHJhY2tFbGVtZW50OjpyZW1vdmVkRnJvbSk6CisgICAgICAgICogaHRtbC90cmFj
ay9UZXh0VHJhY2suY3BwOgorICAgICAgICAoV2ViQ29yZTo6VGV4dFRyYWNrOjpUZXh0VHJhY2sp
OgorICAgICAgICAoV2ViQ29yZTo6VGV4dFRyYWNrOjppbnRlcmZhY2VOYW1lKToKKyAgICAgICAg
KFdlYkNvcmUpOgorICAgICAgICAoV2ViQ29yZTo6VGV4dFRyYWNrOjpzY3JpcHRFeGVjdXRpb25D
b250ZXh0KToKKyAgICAgICAgKFdlYkNvcmU6OlRleHRUcmFjazo6ZXZlbnRUYXJnZXREYXRhKToK
KyAgICAgICAgKFdlYkNvcmU6OlRleHRUcmFjazo6ZW5zdXJlRXZlbnRUYXJnZXREYXRhKToKKyAg
ICAgICAgKFdlYkNvcmU6OlRleHRUcmFjazo6aXNWYWxpZEtpbmQpOgorICAgICAgICAoV2ViQ29y
ZTo6VGV4dFRyYWNrOjpzZXRLaW5kKToKKyAgICAgICAgKFdlYkNvcmU6OlRleHRUcmFjazo6aXNS
ZW5kZXJlZCk6CisgICAgICAgIChXZWJDb3JlOjpUZXh0VHJhY2s6OnBsYXRmb3JtVGV4dFRyYWNr
KToKKyAgICAgICAgKFdlYkNvcmU6OlRleHRUcmFjazo6aXNNYWluUHJvZ3JhbUNvbnRlbnQpOgor
ICAgICAgICAqIGh0bWwvdHJhY2svVGV4dFRyYWNrLmg6CisgICAgICAgIChXZWJDb3JlKToKKyAg
ICAgICAgKFRleHRUcmFjayk6CisgICAgICAgIChXZWJDb3JlOjpUZXh0VHJhY2s6OmRlZmF1bHRL
aW5kS2V5d29yZCk6CisgICAgICAgIChXZWJDb3JlOjpUZXh0VHJhY2s6OmNsaWVudCk6CisgICAg
ICAgIChXZWJDb3JlOjpUZXh0VHJhY2s6OnJlZkV2ZW50VGFyZ2V0KToKKyAgICAgICAgKFdlYkNv
cmU6OlRleHRUcmFjazo6ZGVyZWZFdmVudFRhcmdldCk6CisgICAgICAgICogaHRtbC90cmFjay9U
ZXh0VHJhY2tMaXN0LmNwcDoKKyAgICAgICAgKFRleHRUcmFja0xpc3Q6OlRleHRUcmFja0xpc3Qp
OgorICAgICAgICAoVGV4dFRyYWNrTGlzdDo6Z2V0VHJhY2tJbmRleCk6CisgICAgICAgIChUZXh0
VHJhY2tMaXN0OjpnZXRUcmFja0luZGV4UmVsYXRpdmVUb1JlbmRlcmVkVHJhY2tzKToKKyAgICAg
ICAgKFRleHRUcmFja0xpc3Q6Oml0ZW0pOgorICAgICAgICAoVGV4dFRyYWNrTGlzdDo6Z2V0SW5i
YW5kVHJhY2spOgorICAgICAgICAoVGV4dFRyYWNrTGlzdDo6aW52YWxpZGF0ZVRyYWNrSW5kZXhl
c0FmdGVyVHJhY2spOgorICAgICAgICAoVGV4dFRyYWNrTGlzdDo6YXBwZW5kKToKKyAgICAgICAg
KFRleHRUcmFja0xpc3Q6OnJlbW92ZSk6CisgICAgICAgIChUZXh0VHJhY2tMaXN0Ojpjb250YWlu
cyk6CisgICAgICAgICogaHRtbC90cmFjay9UZXh0VHJhY2tMaXN0Lmg6CisgICAgICAgIChXZWJD
b3JlKToKKyAgICAgICAgKFRleHRUcmFja0xpc3QpOgorICAgICAgICAqIGh0bWwvdHJhY2svVHJh
Y2tCYXNlLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlRyYWNrQmFzZTo6VHJhY2tCYXNlKToKKyAg
ICAgICAgKFdlYkNvcmU6OlRyYWNrQmFzZTo6c2V0S2luZCk6CisgICAgICAgICogaHRtbC90cmFj
ay9UcmFja0Jhc2UuaDoKKyAgICAgICAgKFdlYkNvcmUpOgorICAgICAgICAoV2ViQ29yZTo6VHJh
Y2tCYXNlOjpzZXRNZWRpYUVsZW1lbnQpOgorICAgICAgICAoV2ViQ29yZTo6VHJhY2tCYXNlOjpt
ZWRpYUVsZW1lbnQpOgorICAgICAgICAoVHJhY2tCYXNlKToKKyAgICAgICAgKFdlYkNvcmU6OlRy
YWNrQmFzZTo6a2luZCk6CisgICAgICAgIChXZWJDb3JlOjpUcmFja0Jhc2U6OmxhYmVsKToKKyAg
ICAgICAgKFdlYkNvcmU6OlRyYWNrQmFzZTo6c2V0TGFiZWwpOgorICAgICAgICAoV2ViQ29yZTo6
VHJhY2tCYXNlOjpsYW5ndWFnZSk6CisgICAgICAgIChXZWJDb3JlOjpUcmFja0Jhc2U6OnNldExh
bmd1YWdlKToKKyAgICAgICAgKiBodG1sL3RyYWNrL1RyYWNrTGlzdEJhc2UuY3BwOiBBZGRlZC4K
KyAgICAgICAgKFRyYWNrTGlzdEJhc2U6OlRyYWNrTGlzdEJhc2UpOgorICAgICAgICAoVHJhY2tM
aXN0QmFzZTo6flRyYWNrTGlzdEJhc2UpOgorICAgICAgICAoVHJhY2tMaXN0QmFzZTo6bGVuZ3Ro
KToKKyAgICAgICAgKFRyYWNrTGlzdEJhc2U6OmdldFRyYWNrSW5kZXgpOgorICAgICAgICAoVHJh
Y2tMaXN0QmFzZTo6cmVtb3ZlKToKKyAgICAgICAgKFRyYWNrTGlzdEJhc2U6OmNvbnRhaW5zKToK
KyAgICAgICAgKFRyYWNrTGlzdEJhc2U6OnNjaGVkdWxlQWRkVHJhY2tFdmVudCk6CisgICAgICAg
IChUcmFja0xpc3RCYXNlOjpzY2hlZHVsZVJlbW92ZVRyYWNrRXZlbnQpOgorICAgICAgICAoVHJh
Y2tMaXN0QmFzZTo6c2NoZWR1bGVDaGFuZ2VFdmVudCk6CisgICAgICAgIChUcmFja0xpc3RCYXNl
Ojphc3luY0V2ZW50VGltZXJGaXJlZCk6CisgICAgICAgICogaHRtbC90cmFjay9UcmFja0xpc3RC
YXNlLmg6IENvcGllZCBmcm9tIFNvdXJjZS9XZWJDb3JlL2h0bWwvdHJhY2svVGV4dFRyYWNrTGlz
dC5oLgorICAgICAgICAoV2ViQ29yZSk6CisgICAgICAgIChUcmFja0xpc3RCYXNlKToKKyAgICAg
ICAgKFdlYkNvcmU6OlRyYWNrTGlzdEJhc2U6OnNjcmlwdEV4ZWN1dGlvbkNvbnRleHQpOgorICAg
ICAgICAoV2ViQ29yZTo6VHJhY2tMaXN0QmFzZTo6Y2xlYXJPd25lcik6CisgICAgICAgIChXZWJD
b3JlOjpUcmFja0xpc3RCYXNlOjpvd25lcik6CisgICAgICAgIChXZWJDb3JlOjpUcmFja0xpc3RC
YXNlOjppc0ZpcmluZ0V2ZW50TGlzdGVuZXJzKToKKyAgICAgICAgKFdlYkNvcmU6OlRyYWNrTGlz
dEJhc2U6OnJlZkV2ZW50VGFyZ2V0KToKKyAgICAgICAgKFdlYkNvcmU6OlRyYWNrTGlzdEJhc2U6
OmRlcmVmRXZlbnRUYXJnZXQpOgorICAgICAgICAoV2ViQ29yZTo6VHJhY2tMaXN0QmFzZTo6ZXZl
bnRUYXJnZXREYXRhKToKKyAgICAgICAgKFdlYkNvcmU6OlRyYWNrTGlzdEJhc2U6OmVuc3VyZUV2
ZW50VGFyZ2V0RGF0YSk6CisgICAgICAgICogcGxhdGZvcm0vZ3JhcGhpY3MvTWVkaWFQbGF5ZXIu
Y3BwOgorICAgICAgICAoV2ViQ29yZTo6TWVkaWFQbGF5ZXI6OmFkZEF1ZGlvVHJhY2spOgorICAg
ICAgICAoV2ViQ29yZTo6TWVkaWFQbGF5ZXI6OnJlbW92ZUF1ZGlvVHJhY2spOgorICAgICAgICAq
IHBsYXRmb3JtL2dyYXBoaWNzL01lZGlhUGxheWVyLmg6CisgICAgICAgIChNZWRpYVBsYXllckNs
aWVudCk6CisKIDIwMTMtMDQtMDkgIEplZmYgUm9nZXJzICA8anJvZ2Vyc0ByaW0uY29tPgogCiAg
ICAgICAgIEFkZCB3ZWJwIHRvIHN1cHBvcnRlZCBpbWFnZSBtaW1lIHR5cGVzIGlmIFdFQlAgZmVh
dHVyZSBpcyBlbmFibGVkL3VzZWQKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL0NNYWtlTGlz
dHMudHh0IGIvU291cmNlL1dlYkNvcmUvQ01ha2VMaXN0cy50eHQKaW5kZXggNDYxODMyNWEzY2Zh
Y2VhYWQ2ZWFlNzczMGQ2ZWU3MDViYjkwODRhNS4uMTExMDE3YTFjMGY2NGRhY2JjODYyYjlmYTY5
NmY3MzRiOGFkZjdiMyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ01ha2VMaXN0cy50eHQK
KysrIGIvU291cmNlL1dlYkNvcmUvQ01ha2VMaXN0cy50eHQKQEAgLTU0OSwxMiArNTQ5LDYgQEAg
c2V0KFdlYkNvcmVfSURMX0ZJTEVTCiAgICAgaHRtbC9zaGFkb3cvSFRNTENvbnRlbnRFbGVtZW50
LmlkbAogICAgIGh0bWwvc2hhZG93L0hUTUxTaGFkb3dFbGVtZW50LmlkbAogCi0gICAgaHRtbC90
cmFjay9UZXh0VHJhY2suaWRsCi0gICAgaHRtbC90cmFjay9UZXh0VHJhY2tDdWUuaWRsCi0gICAg
aHRtbC90cmFjay9UZXh0VHJhY2tDdWVMaXN0LmlkbAotICAgIGh0bWwvdHJhY2svVGV4dFRyYWNr
TGlzdC5pZGwKLSAgICBodG1sL3RyYWNrL1RyYWNrRXZlbnQuaWRsCi0KICAgICBpbnNwZWN0b3Iv
SW5qZWN0ZWRTY3JpcHRIb3N0LmlkbAogICAgIGluc3BlY3Rvci9JbnNwZWN0b3JGcm9udGVuZEhv
c3QuaWRsCiAgICAgaW5zcGVjdG9yL0phdmFTY3JpcHRDYWxsRnJhbWUuaWRsCkBAIC0xNTkzLDE5
ICsxNTg3LDYgQEAgc2V0KFdlYkNvcmVfU09VUkNFUwogICAgIGh0bWwvc2hhZG93L1NwaW5CdXR0
b25FbGVtZW50LmNwcAogICAgIGh0bWwvc2hhZG93L1RleHRDb250cm9sSW5uZXJFbGVtZW50cy5j
cHAKIAotICAgIGh0bWwvdHJhY2svSW5iYW5kVGV4dFRyYWNrLmNwcAotICAgIGh0bWwvdHJhY2sv
TG9hZGFibGVUZXh0VHJhY2suY3BwCi0gICAgaHRtbC90cmFjay9UZXh0VHJhY2suY3BwCi0gICAg
aHRtbC90cmFjay9UZXh0VHJhY2tDdWUuY3BwCi0gICAgaHRtbC90cmFjay9UZXh0VHJhY2tDdWVH
ZW5lcmljLmNwcAotICAgIGh0bWwvdHJhY2svVGV4dFRyYWNrQ3VlTGlzdC5jcHAKLSAgICBodG1s
L3RyYWNrL1RleHRUcmFja0xpc3QuY3BwCi0gICAgaHRtbC90cmFjay9UcmFja0Jhc2UuY3BwCi0g
ICAgaHRtbC90cmFjay9UcmFja0V2ZW50LmNwcAotICAgIGh0bWwvdHJhY2svV2ViVlRURWxlbWVu
dC5jcHAKLSAgICBodG1sL3RyYWNrL1dlYlZUVFBhcnNlci5jcHAKLSAgICBodG1sL3RyYWNrL1dl
YlZUVFRva2VuaXplci5jcHAKLQogICAgIGluc3BlY3Rvci9Db25zb2xlTWVzc2FnZS5jcHAKICAg
ICBpbnNwZWN0b3IvQ29udGVudFNlYXJjaFV0aWxzLmNwcAogICAgIGluc3BlY3Rvci9ET01FZGl0
b3IuY3BwCkBAIC0xNzM4LDcgKzE3MTksNiBAQCBzZXQoV2ViQ29yZV9TT1VSQ0VTCiAgICAgbG9h
ZGVyL2NhY2hlL0NhY2hlZFNjcmlwdC5jcHAKICAgICBsb2FkZXIvY2FjaGUvQ2FjaGVkU2hhZGVy
LmNwcAogICAgIGxvYWRlci9jYWNoZS9DYWNoZWRTVkdEb2N1bWVudC5jcHAKLSAgICBsb2FkZXIv
Y2FjaGUvQ2FjaGVkVGV4dFRyYWNrLmNwcAogICAgIGxvYWRlci9jYWNoZS9DYWNoZWRYU0xTdHls
ZVNoZWV0LmNwcAogICAgIGxvYWRlci9jYWNoZS9NZW1vcnlDYWNoZS5jcHAKIApAQCAtMjY5Niw3
ICsyNjc2LDMxIEBAIGlmIChFTkFCTEVfV0VCR0wpCiBlbmRpZiAoKQogCiBpZiAoRU5BQkxFX1ZJ
REVPX1RSQUNLKQorICAgIGxpc3QoQVBQRU5EIFdlYkNvcmVfSURMX0ZJTEVTCisgICAgICAgIGh0
bWwvdHJhY2svVGV4dFRyYWNrLmlkbAorICAgICAgICBodG1sL3RyYWNrL1RleHRUcmFja0N1ZS5p
ZGwKKyAgICAgICAgaHRtbC90cmFjay9UZXh0VHJhY2tDdWVMaXN0LmlkbAorICAgICAgICBodG1s
L3RyYWNrL1RleHRUcmFja0xpc3QuaWRsCisgICAgICAgIGh0bWwvdHJhY2svVHJhY2tFdmVudC5p
ZGwKKyAgICApCisKICAgICBsaXN0KEFQUEVORCBXZWJDb3JlX1NPVVJDRVMKKyAgICAgICAgaHRt
bC90cmFjay9JbmJhbmRUZXh0VHJhY2suY3BwCisgICAgICAgIGh0bWwvdHJhY2svTG9hZGFibGVU
ZXh0VHJhY2suY3BwCisgICAgICAgIGh0bWwvdHJhY2svVGV4dFRyYWNrLmNwcAorICAgICAgICBo
dG1sL3RyYWNrL1RleHRUcmFja0N1ZS5jcHAKKyAgICAgICAgaHRtbC90cmFjay9UZXh0VHJhY2tD
dWVHZW5lcmljLmNwcAorICAgICAgICBodG1sL3RyYWNrL1RleHRUcmFja0N1ZUxpc3QuY3BwCisg
ICAgICAgIGh0bWwvdHJhY2svVGV4dFRyYWNrTGlzdC5jcHAKKyAgICAgICAgaHRtbC90cmFjay9U
cmFja0Jhc2UuY3BwCisgICAgICAgIGh0bWwvdHJhY2svVHJhY2tFdmVudC5jcHAKKyAgICAgICAg
aHRtbC90cmFjay9UcmFja0xpc3RCYXNlLmNwcAorICAgICAgICBodG1sL3RyYWNrL1dlYlZUVEVs
ZW1lbnQuY3BwCisgICAgICAgIGh0bWwvdHJhY2svV2ViVlRUUGFyc2VyLmNwcAorICAgICAgICBo
dG1sL3RyYWNrL1dlYlZUVFRva2VuaXplci5jcHAKKworICAgICAgICBsb2FkZXIvY2FjaGUvQ2Fj
aGVkVGV4dFRyYWNrLmNwcAorCiAgICAgICAgIHBsYXRmb3JtL2dyYXBoaWNzL1RleHRUcmFja1Jl
cHJlc2VudGF0aW9uLmNwcAogICAgICkKIGVuZGlmICgpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
Q29yZS9UYXJnZXQucHJpIGIvU291cmNlL1dlYkNvcmUvVGFyZ2V0LnByaQppbmRleCBjOGE0YTk0
ZTU4Zjc2NTQ1MmRiZTA2NzYwNDgwNWE3M2Y2MGVlNzI4Li44NWU4NzYyZGE2ODNjMTU5MDI2ZTRh
MjhhMTdjYTliMmI0ZWE2NTBkIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9UYXJnZXQucHJp
CisrKyBiL1NvdXJjZS9XZWJDb3JlL1RhcmdldC5wcmkKQEAgLTM5NzcsNiArMzk3Nyw3IEBAIGVu
YWJsZT8oVklERU9fVFJBQ0spIHsKICAgICAgICAgaHRtbC90cmFjay9UZXh0VHJhY2tMaXN0Lmgg
XAogICAgICAgICBodG1sL3RyYWNrL1RyYWNrQmFzZS5oIFwKICAgICAgICAgaHRtbC90cmFjay9U
cmFja0V2ZW50LmggXAorICAgICAgICBodG1sL3RyYWNrL1RyYWNrTGlzdEJhc2UuaCBcCiAgICAg
ICAgIGh0bWwvdHJhY2svV2ViVlRUUGFyc2VyLmggXAogICAgICAgICBodG1sL3RyYWNrL1dlYlZU
VFRva2VuLmggXAogICAgICAgICBodG1sL3RyYWNrL1dlYlZUVFRva2VuaXplci5oIFwKQEAgLTQw
MDAsNiArNDAwMSw3IEBAIGVuYWJsZT8oVklERU9fVFJBQ0spIHsKICAgICAgICAgaHRtbC90cmFj
ay9UZXh0VHJhY2tMaXN0LmNwcCBcCiAgICAgICAgIGh0bWwvdHJhY2svVHJhY2tCYXNlLmNwcCBc
CiAgICAgICAgIGh0bWwvdHJhY2svVHJhY2tFdmVudC5jcHAgXAorICAgICAgICBodG1sL3RyYWNr
L1RyYWNrTGlzdEJhc2UuY3BwIFwKICAgICAgICAgaHRtbC90cmFjay9XZWJWVFRFbGVtZW50LmNw
cCBcCiAgICAgICAgIGh0bWwvdHJhY2svV2ViVlRUUGFyc2VyLmNwcCBcCiAgICAgICAgIGh0bWwv
dHJhY2svV2ViVlRUVG9rZW5pemVyLmNwcCBcCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9o
dG1sL0hUTUxNZWRpYUVsZW1lbnQuY3BwIGIvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MTWVkaWFF
bGVtZW50LmNwcAppbmRleCAyNjBkMGE2NzU5ZjUyYTY1MzZkMDYwMzQwNzIyZWY1YTlhNGQ5M2Fj
Li43YzE0YzUzZDY4ZmZkYmQyMzExNTUzZDc4YWI3MWFiNzA2ODU0NTJmIDEwMDY0NAotLS0gYS9T
b3VyY2UvV2ViQ29yZS9odG1sL0hUTUxNZWRpYUVsZW1lbnQuY3BwCisrKyBiL1NvdXJjZS9XZWJD
b3JlL2h0bWwvSFRNTE1lZGlhRWxlbWVudC5jcHAKQEAgLTI3OTIsNyArMjc5Miw3IEBAIGZsb2F0
IEhUTUxNZWRpYUVsZW1lbnQ6OnBlcmNlbnRMb2FkZWQoKSBjb25zdAogCiAjaWYgRU5BQkxFKFZJ
REVPX1RSQUNLKQogCi12b2lkIEhUTUxNZWRpYUVsZW1lbnQ6Om1lZGlhUGxheWVyRGlkQWRkVHJh
Y2soUGFzc1JlZlB0cjxJbmJhbmRUZXh0VHJhY2tQcml2YXRlPiBwcnBUcmFjaykKK3ZvaWQgSFRN
TE1lZGlhRWxlbWVudDo6bWVkaWFQbGF5ZXJEaWRBZGRUZXh0VHJhY2soUGFzc1JlZlB0cjxJbmJh
bmRUZXh0VHJhY2tQcml2YXRlPiBwcnBUcmFjaykKIHsKICAgICBpZiAoIVJ1bnRpbWVFbmFibGVk
RmVhdHVyZXM6OndlYmtpdFZpZGVvVHJhY2tFbmFibGVkKCkpCiAgICAgICAgIHJldHVybjsKQEAg
LTI4MjQsMTAgKzI4MjQsMTAgQEAgdm9pZCBIVE1MTWVkaWFFbGVtZW50OjptZWRpYVBsYXllckRp
ZEFkZFRyYWNrKFBhc3NSZWZQdHI8SW5iYW5kVGV4dFRyYWNrUHJpdmF0ZT4KICAgICAvLyA5LiBG
aXJlIGFuIGV2ZW50IHdpdGggdGhlIG5hbWUgYWRkdHJhY2ssIHRoYXQgZG9lcyBub3QgYnViYmxl
IGFuZCBpcyBub3QgY2FuY2VsYWJsZSwgYW5kIHRoYXQgdXNlcyB0aGUgVHJhY2tFdmVudAogICAg
IC8vIGludGVyZmFjZSwgd2l0aCB0aGUgdHJhY2sgYXR0cmlidXRlIGluaXRpYWxpemVkIHRvIHRo
ZSB0ZXh0IHRyYWNrJ3MgVGV4dFRyYWNrIG9iamVjdCwgYXQgdGhlIG1lZGlhIGVsZW1lbnQncwog
ICAgIC8vIHRleHRUcmFja3MgYXR0cmlidXRlJ3MgVGV4dFRyYWNrTGlzdCBvYmplY3QuCi0gICAg
YWRkVHJhY2sodGV4dFRyYWNrLmdldCgpKTsKKyAgICBhZGRUZXh0VHJhY2sodGV4dFRyYWNrLmdl
dCgpKTsKIH0KIAotdm9pZCBIVE1MTWVkaWFFbGVtZW50OjptZWRpYVBsYXllckRpZFJlbW92ZVRy
YWNrKFBhc3NSZWZQdHI8SW5iYW5kVGV4dFRyYWNrUHJpdmF0ZT4gcHJwVHJhY2spCit2b2lkIEhU
TUxNZWRpYUVsZW1lbnQ6Om1lZGlhUGxheWVyRGlkUmVtb3ZlVGV4dFRyYWNrKFBhc3NSZWZQdHI8
SW5iYW5kVGV4dFRyYWNrUHJpdmF0ZT4gcHJwVHJhY2spCiB7CiAgICAgaWYgKCFSdW50aW1lRW5h
YmxlZEZlYXR1cmVzOjp3ZWJraXRWaWRlb1RyYWNrRW5hYmxlZCgpKQogICAgICAgICByZXR1cm47
CkBAIC0yODM2LDEyICsyODM2LDEyIEBAIHZvaWQgSFRNTE1lZGlhRWxlbWVudDo6bWVkaWFQbGF5
ZXJEaWRSZW1vdmVUcmFjayhQYXNzUmVmUHRyPEluYmFuZFRleHRUcmFja1ByaXZhCiAgICAgICAg
IHJldHVybjsKIAogICAgIC8vIFRoaXMgY2FzdCBpcyBzYWZlIGJlY2F1c2Ugd2UgY3JlYXRlZCB0
aGUgSW5iYW5kVGV4dFRyYWNrIHdpdGggdGhlIEluYmFuZFRleHRUcmFja1ByaXZhdGUKLSAgICAv
LyBwYXNzZWQgdG8gbWVkaWFQbGF5ZXJEaWRBZGRUcmFjay4KKyAgICAvLyBwYXNzZWQgdG8gbWVk
aWFQbGF5ZXJEaWRBZGRUZXh0VHJhY2suCiAgICAgUmVmUHRyPEluYmFuZFRleHRUcmFjaz4gdGV4
dFRyYWNrID0gc3RhdGljX2Nhc3Q8SW5iYW5kVGV4dFRyYWNrKj4ocHJwVHJhY2stPmNsaWVudCgp
KTsKICAgICBpZiAoIXRleHRUcmFjaykKICAgICAgICAgcmV0dXJuOwogCi0gICAgcmVtb3ZlVHJh
Y2sodGV4dFRyYWNrLmdldCgpKTsKKyAgICByZW1vdmVUZXh0VHJhY2sodGV4dFRyYWNrLmdldCgp
KTsKIH0KIAogI2lmIFVTRShQTEFURk9STV9URVhUX1RSQUNLX01FTlUpCkBAIC0yOTIwLDE0ICsy
OTIwLDE0IEBAIHZvaWQgSFRNTE1lZGlhRWxlbWVudDo6Y2xvc2VDYXB0aW9uVHJhY2tzQ2hhbmdl
ZCgpCiAjZW5kaWYKIH0KIAotdm9pZCBIVE1MTWVkaWFFbGVtZW50OjphZGRUcmFjayhUZXh0VHJh
Y2sqIHRyYWNrKQordm9pZCBIVE1MTWVkaWFFbGVtZW50OjphZGRUZXh0VHJhY2soVGV4dFRyYWNr
KiB0cmFjaykKIHsKICAgICB0ZXh0VHJhY2tzKCktPmFwcGVuZCh0cmFjayk7CiAgICAgCiAgICAg
Y2xvc2VDYXB0aW9uVHJhY2tzQ2hhbmdlZCgpOwogfQogCi12b2lkIEhUTUxNZWRpYUVsZW1lbnQ6
OnJlbW92ZVRyYWNrKFRleHRUcmFjayogdHJhY2spCit2b2lkIEhUTUxNZWRpYUVsZW1lbnQ6OnJl
bW92ZVRleHRUcmFjayhUZXh0VHJhY2sqIHRyYWNrKQogewogICAgIFRyYWNrRGlzcGxheVVwZGF0
ZVNjb3BlIHNjb3BlKHRoaXMpOwogICAgIFRleHRUcmFja0N1ZUxpc3QqIGN1ZXMgPSB0cmFjay0+
Y3VlcygpOwpAQCAtMjk0OCw3ICsyOTQ4LDcgQEAgdm9pZCBIVE1MTWVkaWFFbGVtZW50OjpyZW1v
dmVBbGxJbmJhbmRUcmFja3MoKQogICAgICAgICBUZXh0VHJhY2sqIHRyYWNrID0gbV90ZXh0VHJh
Y2tzLT5pdGVtKGkpOwogCiAgICAgICAgIGlmICh0cmFjay0+dHJhY2tUeXBlKCkgPT0gVGV4dFRy
YWNrOjpJbkJhbmQpCi0gICAgICAgICAgICByZW1vdmVUcmFjayh0cmFjayk7CisgICAgICAgICAg
ICByZW1vdmVUZXh0VHJhY2sodHJhY2spOwogICAgIH0KIH0KIApAQCAtMjk3OCw3ICsyOTc4LDcg
QEAgUGFzc1JlZlB0cjxUZXh0VHJhY2s+IEhUTUxNZWRpYUVsZW1lbnQ6OmFkZFRleHRUcmFjayhj
b25zdCBTdHJpbmcmIGtpbmQsIGNvbnN0IFMKICAgICAvLyBmaXJzdCBhcHBlbmQgdGhlIHRyYWNr
IHRvIHRoZSB0ZXh0IHRyYWNrIGxpc3QuCiAKICAgICAvLyA2LiBBZGQgdGhlIG5ldyB0ZXh0IHRy
YWNrIHRvIHRoZSBtZWRpYSBlbGVtZW50J3MgbGlzdCBvZiB0ZXh0IHRyYWNrcy4KLSAgICBhZGRU
cmFjayh0ZXh0VHJhY2suZ2V0KCkpOworICAgIGFkZFRleHRUcmFjayh0ZXh0VHJhY2suZ2V0KCkp
OwogCiAgICAgLy8gLi4uIGl0cyB0ZXh0IHRyYWNrIHJlYWRpbmVzcyBzdGF0ZSB0byB0aGUgdGV4
dCB0cmFjayBsb2FkZWQgc3RhdGUgLi4uCiAgICAgdGV4dFRyYWNrLT5zZXRSZWFkaW5lc3NTdGF0
ZShUZXh0VHJhY2s6OkxvYWRlZCk7CkBAIC0zMDAwLDcgKzMwMDAsNyBAQCBUZXh0VHJhY2tMaXN0
KiBIVE1MTWVkaWFFbGVtZW50Ojp0ZXh0VHJhY2tzKCkKICAgICByZXR1cm4gbV90ZXh0VHJhY2tz
LmdldCgpOwogfQogCi12b2lkIEhUTUxNZWRpYUVsZW1lbnQ6OmRpZEFkZFRyYWNrKEhUTUxUcmFj
a0VsZW1lbnQqIHRyYWNrRWxlbWVudCkKK3ZvaWQgSFRNTE1lZGlhRWxlbWVudDo6ZGlkQWRkVGV4
dFRyYWNrKEhUTUxUcmFja0VsZW1lbnQqIHRyYWNrRWxlbWVudCkKIHsKICAgICBBU1NFUlQodHJh
Y2tFbGVtZW50LT5oYXNUYWdOYW1lKHRyYWNrVGFnKSk7CiAKQEAgLTMwMTUsNyArMzAxNSw3IEBA
IHZvaWQgSFRNTE1lZGlhRWxlbWVudDo6ZGlkQWRkVHJhY2soSFRNTFRyYWNrRWxlbWVudCogdHJh
Y2tFbGVtZW50KQogICAgIGlmICghdGV4dFRyYWNrKQogICAgICAgICByZXR1cm47CiAgICAgCi0g
ICAgYWRkVHJhY2sodGV4dFRyYWNrLmdldCgpKTsKKyAgICBhZGRUZXh0VHJhY2sodGV4dFRyYWNr
LmdldCgpKTsKICAgICAKICAgICAvLyBEbyBub3Qgc2NoZWR1bGUgdGhlIHRyYWNrIGxvYWRpbmcg
dW50aWwgcGFyc2luZyBmaW5pc2hlcyBzbyB3ZSBkb24ndCBzdGFydCBiZWZvcmUgYWxsIHRyYWNr
cwogICAgIC8vIGluIHRoZSBtYXJrdXAgaGF2ZSBiZWVuIGFkZGVkLgpAQCAtMzAyNiw3ICszMDI2
LDcgQEAgdm9pZCBIVE1MTWVkaWFFbGVtZW50OjpkaWRBZGRUcmFjayhIVE1MVHJhY2tFbGVtZW50
KiB0cmFja0VsZW1lbnQpCiAgICAgICAgIG1lZGlhQ29udHJvbHMoKS0+Y2xvc2VkQ2FwdGlvblRy
YWNrc0NoYW5nZWQoKTsKIH0KIAotdm9pZCBIVE1MTWVkaWFFbGVtZW50OjpkaWRSZW1vdmVUcmFj
ayhIVE1MVHJhY2tFbGVtZW50KiB0cmFja0VsZW1lbnQpCit2b2lkIEhUTUxNZWRpYUVsZW1lbnQ6
OmRpZFJlbW92ZVRleHRUcmFjayhIVE1MVHJhY2tFbGVtZW50KiB0cmFja0VsZW1lbnQpCiB7CiAg
ICAgQVNTRVJUKHRyYWNrRWxlbWVudC0+aGFzVGFnTmFtZSh0cmFja1RhZykpOwogCkBAIC0zMDUz
LDcgKzMwNTMsNyBAQCB2b2lkIEhUTUxNZWRpYUVsZW1lbnQ6OmRpZFJlbW92ZVRyYWNrKEhUTUxU
cmFja0VsZW1lbnQqIHRyYWNrRWxlbWVudCkKICAgICAvLyBXaGVuIGEgdHJhY2sgZWxlbWVudCdz
IHBhcmVudCBlbGVtZW50IGNoYW5nZXMgYW5kIHRoZSBvbGQgcGFyZW50IHdhcyBhIG1lZGlhIGVs
ZW1lbnQsIAogICAgIC8vIHRoZW4gdGhlIHVzZXIgYWdlbnQgbXVzdCByZW1vdmUgdGhlIHRyYWNr
IGVsZW1lbnQncyBjb3JyZXNwb25kaW5nIHRleHQgdHJhY2sgZnJvbSB0aGUgCiAgICAgLy8gbWVk
aWEgZWxlbWVudCdzIGxpc3Qgb2YgdGV4dCB0cmFja3MuCi0gICAgcmVtb3ZlVHJhY2sodGV4dFRy
YWNrLmdldCgpKTsKKyAgICByZW1vdmVUZXh0VHJhY2sodGV4dFRyYWNrLmdldCgpKTsKIAogICAg
IHNpemVfdCBpbmRleCA9IG1fdGV4dFRyYWNrc1doZW5SZXNvdXJjZVNlbGVjdGlvbkJlZ2FuLmZp
bmQodGV4dFRyYWNrLmdldCgpKTsKICAgICBpZiAoaW5kZXggIT0gbm90Rm91bmQpCmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxNZWRpYUVsZW1lbnQuaCBiL1NvdXJjZS9XZWJD
b3JlL2h0bWwvSFRNTE1lZGlhRWxlbWVudC5oCmluZGV4IGNhMDE2YzA3ZDQ2ZmYyMTM3ZmEwZTFh
YTg2NzMyNDNiZDEyN2UxOGMuLmJjNzVkMWVlMzQ2YmMxYTgxNTNmMzI5NDNhOGVkMjUxMmZlMWJh
OWMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTE1lZGlhRWxlbWVudC5oCisr
KyBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTE1lZGlhRWxlbWVudC5oCkBAIC01OCw3ICs1OCw2
IEBAIGNsYXNzIE1lZGlhQ29udHJvbGxlcjsKIGNsYXNzIE1lZGlhQ29udHJvbHM7CiBjbGFzcyBN
ZWRpYUVycm9yOwogY2xhc3MgS1VSTDsKLWNsYXNzIFRleHRUcmFja0xpc3Q7CiBjbGFzcyBUaW1l
UmFuZ2VzOwogI2lmIEVOQUJMRShQTFVHSU5fUFJPWFlfRk9SX1ZJREVPKQogY2xhc3MgV2lkZ2V0
OwpAQCAtNzIsNiArNzEsNyBAQCBjbGFzcyBNZWRpYUtleXM7CiAKICNpZiBFTkFCTEUoVklERU9f
VFJBQ0spCiBjbGFzcyBJbmJhbmRUZXh0VHJhY2tQcml2YXRlOworY2xhc3MgVGV4dFRyYWNrTGlz
dDsKIAogdHlwZWRlZiBQT0RJbnRlcnZhbFRyZWU8ZG91YmxlLCBUZXh0VHJhY2tDdWUqPiBDdWVJ
bnRlcnZhbFRyZWU7CiB0eXBlZGVmIEN1ZUludGVydmFsVHJlZTo6SW50ZXJ2YWxUeXBlIEN1ZUlu
dGVydmFsOwpAQCAtMjI5LDE3ICsyMjksMTcgQEAgcHVibGljOgogICAgIFRleHRUcmFja0xpc3Qq
IHRleHRUcmFja3MoKTsKICAgICBDdWVMaXN0IGN1cnJlbnRseUFjdGl2ZUN1ZXMoKSBjb25zdCB7
IHJldHVybiBtX2N1cnJlbnRseUFjdGl2ZUN1ZXM7IH0KIAotICAgIHZvaWQgYWRkVHJhY2soVGV4
dFRyYWNrKik7Ci0gICAgdm9pZCByZW1vdmVUcmFjayhUZXh0VHJhY2sqKTsKKyAgICB2b2lkIGFk
ZFRleHRUcmFjayhUZXh0VHJhY2sqKTsKKyAgICB2b2lkIHJlbW92ZVRleHRUcmFjayhUZXh0VHJh
Y2sqKTsKICAgICB2b2lkIHJlbW92ZUFsbEluYmFuZFRyYWNrcygpOwogICAgIHZvaWQgY2xvc2VD
YXB0aW9uVHJhY2tzQ2hhbmdlZCgpOwogICAgIHZvaWQgbm90aWZ5TWVkaWFQbGF5ZXJPZlRleHRU
cmFja0NoYW5nZXMoKTsKIAotICAgIHZpcnR1YWwgdm9pZCBkaWRBZGRUcmFjayhIVE1MVHJhY2tF
bGVtZW50Kik7Ci0gICAgdmlydHVhbCB2b2lkIGRpZFJlbW92ZVRyYWNrKEhUTUxUcmFja0VsZW1l
bnQqKTsKKyAgICB2aXJ0dWFsIHZvaWQgZGlkQWRkVGV4dFRyYWNrKEhUTUxUcmFja0VsZW1lbnQq
KTsKKyAgICB2aXJ0dWFsIHZvaWQgZGlkUmVtb3ZlVGV4dFRyYWNrKEhUTUxUcmFja0VsZW1lbnQq
KTsKIAotICAgIHZpcnR1YWwgdm9pZCBtZWRpYVBsYXllckRpZEFkZFRyYWNrKFBhc3NSZWZQdHI8
SW5iYW5kVGV4dFRyYWNrUHJpdmF0ZT4pIE9WRVJSSURFOwotICAgIHZpcnR1YWwgdm9pZCBtZWRp
YVBsYXllckRpZFJlbW92ZVRyYWNrKFBhc3NSZWZQdHI8SW5iYW5kVGV4dFRyYWNrUHJpdmF0ZT4p
IE9WRVJSSURFOworICAgIHZpcnR1YWwgdm9pZCBtZWRpYVBsYXllckRpZEFkZFRleHRUcmFjayhQ
YXNzUmVmUHRyPEluYmFuZFRleHRUcmFja1ByaXZhdGU+KSBPVkVSUklERTsKKyAgICB2aXJ0dWFs
IHZvaWQgbWVkaWFQbGF5ZXJEaWRSZW1vdmVUZXh0VHJhY2soUGFzc1JlZlB0cjxJbmJhbmRUZXh0
VHJhY2tQcml2YXRlPikgT1ZFUlJJREU7CiAKICNpZiBVU0UoUExBVEZPUk1fVEVYVF9UUkFDS19N
RU5VKQogICAgIHZpcnR1YWwgdm9pZCBzZXRTZWxlY3RlZFRleHRUcmFjayhQYXNzUmVmUHRyPFBs
YXRmb3JtVGV4dFRyYWNrPikgT1ZFUlJJREU7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9o
dG1sL0hUTUxUcmFja0VsZW1lbnQuY3BwIGIvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MVHJhY2tF
bGVtZW50LmNwcAppbmRleCBmYmJiM2U4NWUwZGE2NzgwMTFhZjg0ZWZjOWE1Nzk5YzYzZjQ2M2Q0
Li4wMTA1ODU1ZmNmMjU3MTk3NDljNTE2MDhiNDY0OTJhMjAxYWMxMzAyIDEwMDY0NAotLS0gYS9T
b3VyY2UvV2ViQ29yZS9odG1sL0hUTUxUcmFja0VsZW1lbnQuY3BwCisrKyBiL1NvdXJjZS9XZWJD
b3JlL2h0bWwvSFRNTFRyYWNrRWxlbWVudC5jcHAKQEAgLTgwLDE0ICs4MCwxNCBAQCBOb2RlOjpJ
bnNlcnRpb25Ob3RpZmljYXRpb25SZXF1ZXN0IEhUTUxUcmFja0VsZW1lbnQ6Omluc2VydGVkSW50
byhDb250YWluZXJOb2RlKgogICAgIEhUTUxFbGVtZW50OjppbnNlcnRlZEludG8oaW5zZXJ0aW9u
UG9pbnQpOwogICAgIEhUTUxNZWRpYUVsZW1lbnQqIHBhcmVudCA9IG1lZGlhRWxlbWVudCgpOwog
ICAgIGlmIChpbnNlcnRpb25Qb2ludCA9PSBwYXJlbnQpCi0gICAgICAgIHBhcmVudC0+ZGlkQWRk
VHJhY2sodGhpcyk7CisgICAgICAgIHBhcmVudC0+ZGlkQWRkVGV4dFRyYWNrKHRoaXMpOwogICAg
IHJldHVybiBJbnNlcnRpb25Eb25lOwogfQogCiB2b2lkIEhUTUxUcmFja0VsZW1lbnQ6OnJlbW92
ZWRGcm9tKENvbnRhaW5lck5vZGUqIGluc2VydGlvblBvaW50KQogewogICAgIGlmICghcGFyZW50
Tm9kZSgpICYmIFdlYkNvcmU6OmlzTWVkaWFFbGVtZW50KGluc2VydGlvblBvaW50KSkKLSAgICAg
ICAgdG9NZWRpYUVsZW1lbnQoaW5zZXJ0aW9uUG9pbnQpLT5kaWRSZW1vdmVUcmFjayh0aGlzKTsK
KyAgICAgICAgdG9NZWRpYUVsZW1lbnQoaW5zZXJ0aW9uUG9pbnQpLT5kaWRSZW1vdmVUZXh0VHJh
Y2sodGhpcyk7CiAgICAgSFRNTEVsZW1lbnQ6OnJlbW92ZWRGcm9tKGluc2VydGlvblBvaW50KTsK
IH0KIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvaHRtbC90cmFjay9UZXh0VHJhY2suY3Bw
IGIvU291cmNlL1dlYkNvcmUvaHRtbC90cmFjay9UZXh0VHJhY2suY3BwCmluZGV4IDNjMjc0YjFl
MTRiOWI5MDYxZmQ4N2Y0MmY4NmFiYTIyZTVjODg0MTAuLjhlMDNmOGUyYWQyNjMwMTQ0MzIwNTVk
MjliM2Y5MjNkOTdkN2IwZjcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvdHJhY2sv
VGV4dFRyYWNrLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL3RyYWNrL1RleHRUcmFjay5j
cHAKQEAgLTEwOCwxNCArMTA4LDEyIEBAIFRleHRUcmFjayogVGV4dFRyYWNrOjpjYXB0aW9uTWVu
dUF1dG9tYXRpY0l0ZW0oKQogfQogCiBUZXh0VHJhY2s6OlRleHRUcmFjayhTY3JpcHRFeGVjdXRp
b25Db250ZXh0KiBjb250ZXh0LCBUZXh0VHJhY2tDbGllbnQqIGNsaWVudCwgY29uc3QgQXRvbWlj
U3RyaW5nJiBraW5kLCBjb25zdCBBdG9taWNTdHJpbmcmIGxhYmVsLCBjb25zdCBBdG9taWNTdHJp
bmcmIGxhbmd1YWdlLCBUZXh0VHJhY2tUeXBlIHR5cGUpCi0gICAgOiBUcmFja0Jhc2UoY29udGV4
dCwgVHJhY2tCYXNlOjpUZXh0VHJhY2spCisgICAgOiBUcmFja0Jhc2UoVHJhY2tCYXNlOjpUZXh0
VHJhY2ssIGxhYmVsLCBsYW5ndWFnZSkKICAgICAsIG1fY3VlcygwKQorICAgICwgbV9zY3JpcHRF
eGVjdXRpb25Db250ZXh0KGNvbnRleHQpCiAjaWYgRU5BQkxFKFdFQlZUVF9SRUdJT05TKQogICAg
ICwgbV9yZWdpb25zKDApCiAjZW5kaWYKLSAgICAsIG1fbWVkaWFFbGVtZW50KDApCi0gICAgLCBt
X2xhYmVsKGxhYmVsKQotICAgICwgbV9sYW5ndWFnZShsYW5ndWFnZSkKICAgICAsIG1fbW9kZShk
aXNhYmxlZEtleXdvcmQoKS5zdHJpbmcoKSkKICAgICAsIG1fY2xpZW50KGNsaWVudCkKICAgICAs
IG1fdHJhY2tUeXBlKHR5cGUpCkBAIC0xNDMsNiArMTQxLDMxIEBAIFRleHRUcmFjazo6flRleHRU
cmFjaygpCiAgICAgY2xlYXJDbGllbnQoKTsKIH0KIAorY29uc3QgQXRvbWljU3RyaW5nJiBUZXh0
VHJhY2s6OmludGVyZmFjZU5hbWUoKSBjb25zdAoreworICAgIHJldHVybiBldmVudE5hbWVzKCku
aW50ZXJmYWNlRm9yVGV4dFRyYWNrOworfQorCitTY3JpcHRFeGVjdXRpb25Db250ZXh0KiBUZXh0
VHJhY2s6OnNjcmlwdEV4ZWN1dGlvbkNvbnRleHQoKSBjb25zdAoreworICAgIHJldHVybiBtX3Nj
cmlwdEV4ZWN1dGlvbkNvbnRleHQ7Cit9CisKK0V2ZW50VGFyZ2V0RGF0YSogVGV4dFRyYWNrOjpl
dmVudFRhcmdldERhdGEoKQoreworICAgIHJldHVybiAmbV9ldmVudFRhcmdldERhdGE7Cit9CisK
K0V2ZW50VGFyZ2V0RGF0YSogVGV4dFRyYWNrOjplbnN1cmVFdmVudFRhcmdldERhdGEoKQorewor
ICAgIHJldHVybiAmbV9ldmVudFRhcmdldERhdGE7Cit9CisKK2Jvb2wgVGV4dFRyYWNrOjppc1Zh
bGlkS2luZChjb25zdCBBdG9taWNTdHJpbmcmIHZhbHVlKSBjb25zdAoreworICAgIHJldHVybiBU
ZXh0VHJhY2s6OmlzVmFsaWRLaW5kS2V5d29yZCh2YWx1ZSk7Cit9CisKIGJvb2wgVGV4dFRyYWNr
Ojppc1ZhbGlkS2luZEtleXdvcmQoY29uc3QgQXRvbWljU3RyaW5nJiB2YWx1ZSkKIHsKICAgICBp
ZiAodmFsdWUgPT0gc3VidGl0bGVzS2V5d29yZCgpKQpAQCAtMTU5LDE2ICsxODIsMTMgQEAgYm9v
bCBUZXh0VHJhY2s6OmlzVmFsaWRLaW5kS2V5d29yZChjb25zdCBBdG9taWNTdHJpbmcmIHZhbHVl
KQogICAgIHJldHVybiBmYWxzZTsKIH0KIAotdm9pZCBUZXh0VHJhY2s6OnNldEtpbmQoY29uc3Qg
QXRvbWljU3RyaW5nJiBraW5kKQordm9pZCBUZXh0VHJhY2s6OnNldEtpbmQoY29uc3QgQXRvbWlj
U3RyaW5nJiBuZXdLaW5kKQogewotICAgIFN0cmluZyBvbGRLaW5kID0gbV9raW5kOworICAgIFN0
cmluZyBvbGRLaW5kID0ga2luZCgpOwogCi0gICAgaWYgKGlzVmFsaWRLaW5kS2V5d29yZChraW5k
KSkKLSAgICAgICAgbV9raW5kID0ga2luZDsKLSAgICBlbHNlCi0gICAgICAgIG1fa2luZCA9IHN1
YnRpdGxlc0tleXdvcmQoKTsKKyAgICBUcmFja0Jhc2U6OnNldEtpbmQobmV3S2luZCk7CiAKLSAg
ICBpZiAobV9jbGllbnQgJiYgb2xkS2luZCAhPSBtX2tpbmQpCisgICAgaWYgKG1fY2xpZW50ICYm
IG9sZEtpbmQgIT0ga2luZCgpKQogICAgICAgICBtX2NsaWVudC0+dGV4dFRyYWNrS2luZENoYW5n
ZWQodGhpcyk7CiB9CiAKQEAgLTQxMSw3ICs0MzEsNyBAQCB2b2lkIFRleHRUcmFjazo6aW52YWxp
ZGF0ZVRyYWNrSW5kZXgoKQogCiBib29sIFRleHRUcmFjazo6aXNSZW5kZXJlZCgpCiB7Ci0gICAg
aWYgKG1fa2luZCAhPSBjYXB0aW9uc0tleXdvcmQoKSAmJiBtX2tpbmQgIT0gc3VidGl0bGVzS2V5
d29yZCgpKQorICAgIGlmIChraW5kKCkgIT0gY2FwdGlvbnNLZXl3b3JkKCkgJiYga2luZCgpICE9
IHN1YnRpdGxlc0tleXdvcmQoKSkKICAgICAgICAgcmV0dXJuIGZhbHNlOwogCiAgICAgaWYgKG1f
bW9kZSAhPSBzaG93aW5nS2V5d29yZCgpKQpAQCAtNTAyLDE3ICs1MjIsMTcgQEAgUGFzc1JlZlB0
cjxQbGF0Zm9ybVRleHRUcmFjaz4gVGV4dFRyYWNrOjpwbGF0Zm9ybVRleHRUcmFjaygpCiAgICAg
aWYgKG1fcGxhdGZvcm1UZXh0VHJhY2spCiAgICAgICAgIHJldHVybiBtX3BsYXRmb3JtVGV4dFRy
YWNrOwogCi0gICAgUGxhdGZvcm1UZXh0VHJhY2s6OlRyYWNrS2luZCBraW5kID0gUGxhdGZvcm1U
ZXh0VHJhY2s6OkNhcHRpb247Ci0gICAgaWYgKG1fa2luZCA9PSBzdWJ0aXRsZXNLZXl3b3JkKCkp
Ci0gICAgICAgIGtpbmQgPSBQbGF0Zm9ybVRleHRUcmFjazo6U3VidGl0bGU7Ci0gICAgZWxzZSBp
ZiAobV9raW5kID09IGNhcHRpb25zS2V5d29yZCgpKQotICAgICAgICBraW5kID0gUGxhdGZvcm1U
ZXh0VHJhY2s6OkNhcHRpb247Ci0gICAgZWxzZSBpZiAobV9raW5kID09IGRlc2NyaXB0aW9uc0tl
eXdvcmQoKSkKLSAgICAgICAga2luZCA9IFBsYXRmb3JtVGV4dFRyYWNrOjpEZXNjcmlwdGlvbjsK
LSAgICBlbHNlIGlmIChtX2tpbmQgPT0gY2hhcHRlcnNLZXl3b3JkKCkpCi0gICAgICAgIGtpbmQg
PSBQbGF0Zm9ybVRleHRUcmFjazo6Q2hhcHRlcjsKLSAgICBlbHNlIGlmIChtX2tpbmQgPT0gbWV0
YWRhdGFLZXl3b3JkKCkpCi0gICAgICAgIGtpbmQgPSBQbGF0Zm9ybVRleHRUcmFjazo6TWV0YURh
dGE7CisgICAgUGxhdGZvcm1UZXh0VHJhY2s6OlRyYWNrS2luZCBwbGF0Zm9ybUtpbmQgPSBQbGF0
Zm9ybVRleHRUcmFjazo6Q2FwdGlvbjsKKyAgICBpZiAoa2luZCgpID09IHN1YnRpdGxlc0tleXdv
cmQoKSkKKyAgICAgICAgcGxhdGZvcm1LaW5kID0gUGxhdGZvcm1UZXh0VHJhY2s6OlN1YnRpdGxl
OworICAgIGVsc2UgaWYgKGtpbmQoKSA9PSBjYXB0aW9uc0tleXdvcmQoKSkKKyAgICAgICAgcGxh
dGZvcm1LaW5kID0gUGxhdGZvcm1UZXh0VHJhY2s6OkNhcHRpb247CisgICAgZWxzZSBpZiAoa2lu
ZCgpID09IGRlc2NyaXB0aW9uc0tleXdvcmQoKSkKKyAgICAgICAgcGxhdGZvcm1LaW5kID0gUGxh
dGZvcm1UZXh0VHJhY2s6OkRlc2NyaXB0aW9uOworICAgIGVsc2UgaWYgKGtpbmQoKSA9PSBjaGFw
dGVyc0tleXdvcmQoKSkKKyAgICAgICAgcGxhdGZvcm1LaW5kID0gUGxhdGZvcm1UZXh0VHJhY2s6
OkNoYXB0ZXI7CisgICAgZWxzZSBpZiAoa2luZCgpID09IG1ldGFkYXRhS2V5d29yZCgpKQorICAg
ICAgICBwbGF0Zm9ybUtpbmQgPSBQbGF0Zm9ybVRleHRUcmFjazo6TWV0YURhdGE7CiAKICAgICBQ
bGF0Zm9ybVRleHRUcmFjazo6VHJhY2tUeXBlIHR5cGUgPSBQbGF0Zm9ybVRleHRUcmFjazo6T3V0
T2ZCYW5kOwogICAgIGlmIChtX3RyYWNrVHlwZSA9PSBUcmFja0VsZW1lbnQpCkBAIC01MjIsNyAr
NTQyLDcgQEAgUGFzc1JlZlB0cjxQbGF0Zm9ybVRleHRUcmFjaz4gVGV4dFRyYWNrOjpwbGF0Zm9y
bVRleHRUcmFjaygpCiAgICAgZWxzZSBpZiAobV90cmFja1R5cGUgPT0gSW5CYW5kKQogICAgICAg
ICB0eXBlID0gUGxhdGZvcm1UZXh0VHJhY2s6OkluQmFuZDsKIAotICAgIG1fcGxhdGZvcm1UZXh0
VHJhY2sgPSBQbGF0Zm9ybVRleHRUcmFjazo6Y3JlYXRlKHRoaXMsIG1fbGFiZWwsIG1fbGFuZ3Vh
Z2UsIGtpbmQsIHR5cGUpOworICAgIG1fcGxhdGZvcm1UZXh0VHJhY2sgPSBQbGF0Zm9ybVRleHRU
cmFjazo6Y3JlYXRlKHRoaXMsIGxhYmVsKCksIGxhbmd1YWdlKCksIHBsYXRmb3JtS2luZCwgdHlw
ZSk7CiAKICAgICByZXR1cm4gbV9wbGF0Zm9ybVRleHRUcmFjazsKIH0KQEAgLTUzNCw3ICs1NTQs
NyBAQCBib29sIFRleHRUcmFjazo6aXNNYWluUHJvZ3JhbUNvbnRlbnQoKSBjb25zdAogICAgIC8v
IGRpcmVjdG9ycyBjb21tZW50YXJ5IGlzIG5vdCAibWFpbiBwcm9ncmFtIiBiZWNhdXNlIGl0IGlz
IG5vdCBlc3NlbnRpYWwgZm9yIHRoZSBwcmVzZW50YXRpb24uIEhUTUw1IGRvZXNuJ3QgaGF2ZQog
ICAgIC8vIGEgd2F5IHRvIGV4cHJlc3MgdGhpcyBpbiBhIG1hY2hpbmUtcmVhYmxlIGZvcm0sIGl0
IGlzIHR5cGljYWxseSBkb25lIHdpdGggdGhlIHRyYWNrIGxhYmVsLCBzbyB3ZSBhc3N1bWUgdGhh
dCBjYXB0aW9uCiAgICAgLy8gdHJhY2tzIGFyZSBtYWluIGNvbnRlbnQgYW5kIGFsbCBvdGhlciB0
cmFjayB0eXBlcyBhcmUgbm90LgotICAgIHJldHVybiBtX2tpbmQgPT0gY2FwdGlvbnNLZXl3b3Jk
KCk7CisgICAgcmV0dXJuIGtpbmQoKSA9PSBjYXB0aW9uc0tleXdvcmQoKTsKIH0KIAogfSAvLyBu
YW1lc3BhY2UgV2ViQ29yZQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvaHRtbC90cmFjay9U
ZXh0VHJhY2suaCBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvdHJhY2svVGV4dFRyYWNrLmgKaW5kZXgg
NTc2OTQ1YmJlNTIxY2Q2YTJmNmZmZmZkMzdlNTZhZDY2NzI2MGZmMy4uNGJhMzBlNzU2NTU0NWYw
NjdiZjkxYmI2OTRiYjM2MTdmZWU3ZmUxMyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvaHRt
bC90cmFjay9UZXh0VHJhY2suaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL3RyYWNrL1RleHRU
cmFjay5oCkBAIC00MSw3ICs0MSw3IEBACiAKIG5hbWVzcGFjZSBXZWJDb3JlIHsKIAotY2xhc3Mg
SFRNTE1lZGlhRWxlbWVudDsKK2NsYXNzIFNjcmlwdEV4ZWN1dGlvbkNvbnRleHQ7CiBjbGFzcyBU
ZXh0VHJhY2s7CiBjbGFzcyBUZXh0VHJhY2tDdWU7CiBjbGFzcyBUZXh0VHJhY2tDdWVMaXN0OwpA
QCAtNjEsNyArNjEsNyBAQCBwdWJsaWM6CiAgICAgdmlydHVhbCB2b2lkIHRleHRUcmFja1JlbW92
ZUN1ZShUZXh0VHJhY2sqLCBQYXNzUmVmUHRyPFRleHRUcmFja0N1ZT4pID0gMDsKIH07CiAKLWNs
YXNzIFRleHRUcmFjayA6IHB1YmxpYyBUcmFja0Jhc2UKK2NsYXNzIFRleHRUcmFjayA6IHB1Ymxp
YyBUcmFja0Jhc2UsIHB1YmxpYyBFdmVudFRhcmdldAogI2lmIFVTRShQTEFURk9STV9URVhUX1RS
QUNLX01FTlUpCiAgICAgLCBwdWJsaWMgUGxhdGZvcm1UZXh0VHJhY2tDbGllbnQKICNlbmRpZgpA
QCAtNzMsMzIgKzczLDI2IEBAIHB1YmxpYzoKICAgICB9CiAgICAgdmlydHVhbCB+VGV4dFRyYWNr
KCk7CiAKKyAgICB2aXJ0dWFsIGNvbnN0IEF0b21pY1N0cmluZyYgaW50ZXJmYWNlTmFtZSgpIGNv
bnN0OworICAgIHZpcnR1YWwgU2NyaXB0RXhlY3V0aW9uQ29udGV4dCogc2NyaXB0RXhlY3V0aW9u
Q29udGV4dCgpIGNvbnN0OworCiAgICAgc3RhdGljIFRleHRUcmFjayogY2FwdGlvbk1lbnVPZmZJ
dGVtKCk7CiAgICAgc3RhdGljIFRleHRUcmFjayogY2FwdGlvbk1lbnVBdXRvbWF0aWNJdGVtKCk7
CiAKLSAgICB2b2lkIHNldE1lZGlhRWxlbWVudChIVE1MTWVkaWFFbGVtZW50KiBlbGVtZW50KSB7
IG1fbWVkaWFFbGVtZW50ID0gZWxlbWVudDsgfQotICAgIEhUTUxNZWRpYUVsZW1lbnQqIG1lZGlh
RWxlbWVudCgpIHsgcmV0dXJuIG1fbWVkaWFFbGVtZW50OyB9Ci0KLSAgICBBdG9taWNTdHJpbmcg
a2luZCgpIGNvbnN0IHsgcmV0dXJuIG1fa2luZDsgfQotICAgIHZvaWQgc2V0S2luZChjb25zdCBB
dG9taWNTdHJpbmcmKTsKLQogICAgIHN0YXRpYyBjb25zdCBBdG9taWNTdHJpbmcmIHN1YnRpdGxl
c0tleXdvcmQoKTsKICAgICBzdGF0aWMgY29uc3QgQXRvbWljU3RyaW5nJiBjYXB0aW9uc0tleXdv
cmQoKTsKICAgICBzdGF0aWMgY29uc3QgQXRvbWljU3RyaW5nJiBkZXNjcmlwdGlvbnNLZXl3b3Jk
KCk7CiAgICAgc3RhdGljIGNvbnN0IEF0b21pY1N0cmluZyYgY2hhcHRlcnNLZXl3b3JkKCk7CiAg
ICAgc3RhdGljIGNvbnN0IEF0b21pY1N0cmluZyYgbWV0YWRhdGFLZXl3b3JkKCk7CisgICAgdmly
dHVhbCBjb25zdCBBdG9taWNTdHJpbmcmIGRlZmF1bHRLaW5kS2V5d29yZCgpIGNvbnN0IHsgcmV0
dXJuIHN1YnRpdGxlc0tleXdvcmQoKTsgfQogICAgIHN0YXRpYyBib29sIGlzVmFsaWRLaW5kS2V5
d29yZChjb25zdCBBdG9taWNTdHJpbmcmKTsKIAotICAgIEF0b21pY1N0cmluZyBsYWJlbCgpIGNv
bnN0IHsgcmV0dXJuIG1fbGFiZWw7IH0KLSAgICB2b2lkIHNldExhYmVsKGNvbnN0IEF0b21pY1N0
cmluZyYgbGFiZWwpIHsgbV9sYWJlbCA9IGxhYmVsOyB9Ci0KLSAgICBBdG9taWNTdHJpbmcgbGFu
Z3VhZ2UoKSBjb25zdCB7IHJldHVybiBtX2xhbmd1YWdlOyB9Ci0gICAgdm9pZCBzZXRMYW5ndWFn
ZShjb25zdCBBdG9taWNTdHJpbmcmIGxhbmd1YWdlKSB7IG1fbGFuZ3VhZ2UgPSBsYW5ndWFnZTsg
fQotCiAgICAgc3RhdGljIGNvbnN0IEF0b21pY1N0cmluZyYgZGlzYWJsZWRLZXl3b3JkKCk7CiAg
ICAgc3RhdGljIGNvbnN0IEF0b21pY1N0cmluZyYgaGlkZGVuS2V5d29yZCgpOwogICAgIHN0YXRp
YyBjb25zdCBBdG9taWNTdHJpbmcmIHNob3dpbmdLZXl3b3JkKCk7CiAKKyAgICB2aXJ0dWFsIHZv
aWQgc2V0S2luZChjb25zdCBBdG9taWNTdHJpbmcmKSBPVkVSUklERTsKKwogICAgIEF0b21pY1N0
cmluZyBtb2RlKCkgY29uc3QgeyByZXR1cm4gbV9tb2RlOyB9CiAgICAgdmlydHVhbCB2b2lkIHNl
dE1vZGUoY29uc3QgQXRvbWljU3RyaW5nJik7CiAKQEAgLTEwOSw4ICsxMDMsOCBAQCBwdWJsaWM6
CiAgICAgVGV4dFRyYWNrQ3VlTGlzdCogY3VlcygpOwogICAgIFRleHRUcmFja0N1ZUxpc3QqIGFj
dGl2ZUN1ZXMoKSBjb25zdDsKIAotICAgIHZvaWQgY2xlYXJDbGllbnQoKSB7IG1fY2xpZW50ID0g
MDsgfQotICAgIFRleHRUcmFja0NsaWVudCogY2xpZW50KCkgeyByZXR1cm4gbV9jbGllbnQ7IH0K
KyAgICB2aXJ0dWFsIHZvaWQgY2xlYXJDbGllbnQoKSBPVkVSUklERSB7IG1fY2xpZW50ID0gMDsg
fQorICAgIFRleHRUcmFja0NsaWVudCogY2xpZW50KCkgY29uc3QgeyByZXR1cm4gbV9jbGllbnQ7
IH0KIAogICAgIHZvaWQgYWRkQ3VlKFBhc3NSZWZQdHI8VGV4dFRyYWNrQ3VlPik7CiAgICAgdm9p
ZCByZW1vdmVDdWUoVGV4dFRyYWNrQ3VlKiwgRXhjZXB0aW9uQ29kZSYpOwpAQCAtMTU0LDE1ICsx
NDgsMjUgQEAgcHVibGljOgogICAgIFBhc3NSZWZQdHI8UGxhdGZvcm1UZXh0VHJhY2s+IHBsYXRm
b3JtVGV4dFRyYWNrKCk7CiAjZW5kaWYKIAorICAgIHVzaW5nIFJlZkNvdW50ZWQ8VHJhY2tCYXNl
Pjo6cmVmOworICAgIHVzaW5nIFJlZkNvdW50ZWQ8VHJhY2tCYXNlPjo6ZGVyZWY7CisKIHByb3Rl
Y3RlZDoKICAgICBUZXh0VHJhY2soU2NyaXB0RXhlY3V0aW9uQ29udGV4dCosIFRleHRUcmFja0Ns
aWVudCosIGNvbnN0IEF0b21pY1N0cmluZyYga2luZCwgY29uc3QgQXRvbWljU3RyaW5nJiBsYWJl
bCwgY29uc3QgQXRvbWljU3RyaW5nJiBsYW5ndWFnZSwgVGV4dFRyYWNrVHlwZSk7CiAjaWYgRU5B
QkxFKFZJREVPX1RSQUNLKSAmJiBFTkFCTEUoV0VCVlRUX1JFR0lPTlMpCiAgICAgVGV4dFRyYWNr
UmVnaW9uTGlzdCogcmVnaW9uTGlzdCgpOwogI2VuZGlmCiAKKyAgICB2aXJ0dWFsIEV2ZW50VGFy
Z2V0RGF0YSogZXZlbnRUYXJnZXREYXRhKCk7CisgICAgdmlydHVhbCBFdmVudFRhcmdldERhdGEq
IGVuc3VyZUV2ZW50VGFyZ2V0RGF0YSgpOworCiAgICAgUmVmUHRyPFRleHRUcmFja0N1ZUxpc3Q+
IG1fY3VlczsKIAogcHJpdmF0ZToKKyAgICB2aXJ0dWFsIGJvb2wgaXNWYWxpZEtpbmQoY29uc3Qg
QXRvbWljU3RyaW5nJikgY29uc3QgT1ZFUlJJREU7CisKKyAgICB2aXJ0dWFsIHZvaWQgcmVmRXZl
bnRUYXJnZXQoKSB7IHJlZigpOyB9CisgICAgdmlydHVhbCB2b2lkIGRlcmVmRXZlbnRUYXJnZXQo
KSB7IGRlcmVmKCk7IH0KIAogI2lmIEVOQUJMRShWSURFT19UUkFDSykgJiYgRU5BQkxFKFdFQlZU
VF9SRUdJT05TKQogICAgIFRleHRUcmFja1JlZ2lvbkxpc3QqIGVuc3VyZVRleHRUcmFja1JlZ2lv
bkxpc3QoKTsKQEAgLTE3NywxMCArMTgxLDggQEAgcHJpdmF0ZToKIAogICAgIFRleHRUcmFja0N1
ZUxpc3QqIGVuc3VyZVRleHRUcmFja0N1ZUxpc3QoKTsKIAotICAgIEhUTUxNZWRpYUVsZW1lbnQq
IG1fbWVkaWFFbGVtZW50OwotICAgIEF0b21pY1N0cmluZyBtX2tpbmQ7Ci0gICAgQXRvbWljU3Ry
aW5nIG1fbGFiZWw7Ci0gICAgQXRvbWljU3RyaW5nIG1fbGFuZ3VhZ2U7CisgICAgU2NyaXB0RXhl
Y3V0aW9uQ29udGV4dCogbV9zY3JpcHRFeGVjdXRpb25Db250ZXh0OworICAgIEV2ZW50VGFyZ2V0
RGF0YSBtX2V2ZW50VGFyZ2V0RGF0YTsKICAgICBBdG9taWNTdHJpbmcgbV9tb2RlOwogICAgIFRl
eHRUcmFja0NsaWVudCogbV9jbGllbnQ7CiAgICAgVGV4dFRyYWNrVHlwZSBtX3RyYWNrVHlwZTsK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvdHJhY2svVGV4dFRyYWNrTGlzdC5jcHAg
Yi9Tb3VyY2UvV2ViQ29yZS9odG1sL3RyYWNrL1RleHRUcmFja0xpc3QuY3BwCmluZGV4IDI5M2Iz
ZDAyNzAxYjA5NTVkMmZhOGI3Njk0ODBkYWNiMDFkN2QwZWMuLmM2YWQyZDE3YmU2OWNlZDgzYjBk
NjQ5ODFiMzM0Y2VkMDc5ZGNmYTcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvdHJh
Y2svVGV4dFRyYWNrTGlzdC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvaHRtbC90cmFjay9UZXh0
VHJhY2tMaXN0LmNwcApAQCAtMzAsMjMgKzMwLDE2IEBACiAjaW5jbHVkZSAiVGV4dFRyYWNrTGlz
dC5oIgogCiAjaW5jbHVkZSAiRXZlbnROYW1lcy5oIgotI2luY2x1ZGUgIkhUTUxNZWRpYUVsZW1l
bnQuaCIKICNpbmNsdWRlICJJbmJhbmRUZXh0VHJhY2suaCIKICNpbmNsdWRlICJJbmJhbmRUZXh0
VHJhY2tQcml2YXRlLmgiCiAjaW5jbHVkZSAiTG9hZGFibGVUZXh0VHJhY2suaCIKLSNpbmNsdWRl
ICJTY3JpcHRFeGVjdXRpb25Db250ZXh0LmgiCiAjaW5jbHVkZSAiVGV4dFRyYWNrLmgiCi0jaW5j
bHVkZSAiVHJhY2tFdmVudC5oIgogCiB1c2luZyBuYW1lc3BhY2UgV2ViQ29yZTsKIAogVGV4dFRy
YWNrTGlzdDo6VGV4dFRyYWNrTGlzdChIVE1MTWVkaWFFbGVtZW50KiBvd25lciwgU2NyaXB0RXhl
Y3V0aW9uQ29udGV4dCogY29udGV4dCkKLSAgICA6IG1fY29udGV4dChjb250ZXh0KQotICAgICwg
bV9vd25lcihvd25lcikKLSAgICAsIG1fcGVuZGluZ0V2ZW50VGltZXIodGhpcywgJlRleHRUcmFj
a0xpc3Q6OmFzeW5jRXZlbnRUaW1lckZpcmVkKQotICAgICwgbV9kaXNwYXRjaGluZ0V2ZW50cygw
KQorICAgIDogVHJhY2tMaXN0QmFzZShvd25lciwgY29udGV4dCkKIHsKLSAgICBBU1NFUlQoY29u
dGV4dC0+aXNEb2N1bWVudCgpKTsKIH0KIAogVGV4dFRyYWNrTGlzdDo6flRleHRUcmFja0xpc3Qo
KQpAQCAtNTgsOCArNTEsMTIgQEAgdW5zaWduZWQgVGV4dFRyYWNrTGlzdDo6bGVuZ3RoKCkgY29u
c3QKICAgICByZXR1cm4gbV9hZGRUcmFja1RyYWNrcy5zaXplKCkgKyBtX2VsZW1lbnRUcmFja3Mu
c2l6ZSgpICsgbV9pbmJhbmRUcmFja3Muc2l6ZSgpOwogfQogCi1pbnQgVGV4dFRyYWNrTGlzdDo6
Z2V0VHJhY2tJbmRleChUZXh0VHJhY2sgKnRleHRUcmFjaykKK2ludCBUZXh0VHJhY2tMaXN0Ojpn
ZXRUcmFja0luZGV4KFRyYWNrQmFzZSAqdHJhY2spCiB7CisgICAgaWYgKHRyYWNrLT50eXBlKCkg
IT0gVHJhY2tCYXNlOjpUZXh0VHJhY2spCisgICAgICAgIHJldHVybiAtMTsKKyAgICBUZXh0VHJh
Y2sqIHRleHRUcmFjayA9IHN0YXRpY19jYXN0PFRleHRUcmFjayo+KHRyYWNrKTsKKwogICAgIGlm
ICh0ZXh0VHJhY2stPnRyYWNrVHlwZSgpID09IFRleHRUcmFjazo6VHJhY2tFbGVtZW50KQogICAg
ICAgICByZXR1cm4gc3RhdGljX2Nhc3Q8TG9hZGFibGVUZXh0VHJhY2sqPih0ZXh0VHJhY2spLT50
cmFja0VsZW1lbnRJbmRleCgpOwogCkBAIC05OCw3ICs5NSw3IEBAIGludCBUZXh0VHJhY2tMaXN0
OjpnZXRUcmFja0luZGV4UmVsYXRpdmVUb1JlbmRlcmVkVHJhY2tzKFRleHRUcmFjayAqdGV4dFRy
YWNrKQogICAgIH0KIAogICAgIGZvciAoc2l6ZV90IGkgPSAwOyBpIDwgbV9pbmJhbmRUcmFja3Mu
c2l6ZSgpOyArK2kpIHsKLSAgICAgICAgaWYgKCFtX2luYmFuZFRyYWNrc1tpXS0+aXNSZW5kZXJl
ZCgpKQorICAgICAgICBpZiAoIWdldEluYmFuZFRyYWNrKGkpLT5pc1JlbmRlcmVkKCkpCiAgICAg
ICAgICAgICBjb250aW51ZTsKICAgICAgICAgCiAgICAgICAgIGlmIChtX2luYmFuZFRyYWNrc1tp
XSA9PSB0ZXh0VHJhY2spCkBAIC0xMTEsNyArMTA4LDcgQEAgaW50IFRleHRUcmFja0xpc3Q6Omdl
dFRyYWNrSW5kZXhSZWxhdGl2ZVRvUmVuZGVyZWRUcmFja3MoVGV4dFRyYWNrICp0ZXh0VHJhY2sp
CiAgICAgcmV0dXJuIC0xOwogfQogCi1UZXh0VHJhY2sqIFRleHRUcmFja0xpc3Q6Oml0ZW0odW5z
aWduZWQgaW5kZXgpCitUZXh0VHJhY2sqIFRleHRUcmFja0xpc3Q6Oml0ZW0odW5zaWduZWQgaW5k
ZXgpIGNvbnN0CiB7CiAgICAgLy8gNC44LjEwLjEyLjEgVGV4dCB0cmFjayBtb2RlbAogICAgIC8v
IFRoZSB0ZXh0IHRyYWNrcyBhcmUgc29ydGVkIGFzIGZvbGxvd3M6CkBAIC0xMjksMzYgKzEyNiw0
NSBAQCBUZXh0VHJhY2sqIFRleHRUcmFja0xpc3Q6Oml0ZW0odW5zaWduZWQgaW5kZXgpCiAKICAg
ICBpbmRleCAtPSBtX2FkZFRyYWNrVHJhY2tzLnNpemUoKTsKICAgICBpZiAoaW5kZXggPCBtX2lu
YmFuZFRyYWNrcy5zaXplKCkpCi0gICAgICAgIHJldHVybiBtX2luYmFuZFRyYWNrc1tpbmRleF0u
Z2V0KCk7CisgICAgICAgIHJldHVybiBnZXRJbmJhbmRUcmFjayhpbmRleCk7CiAKICAgICByZXR1
cm4gMDsKIH0KIAotdm9pZCBUZXh0VHJhY2tMaXN0OjppbnZhbGlkYXRlVHJhY2tJbmRleGVzQWZ0
ZXJUcmFjayhUZXh0VHJhY2sqIHRyYWNrKQorVGV4dFRyYWNrKiBUZXh0VHJhY2tMaXN0OjpnZXRJ
bmJhbmRUcmFjayh1bnNpZ25lZCBpbmRleCkgY29uc3QKIHsKLSAgICBWZWN0b3I8UmVmUHRyPFRl
eHRUcmFjaz4gPiogdHJhY2tzID0gMDsKKyAgICBUcmFja0Jhc2UqIHRyYWNrID0gbV9pbmJhbmRU
cmFja3NbaW5kZXhdLmdldCgpOworICAgIEFTU0VSVCh0cmFjay0+dHlwZSgpID09IFRyYWNrQmFz
ZTo6VGV4dFRyYWNrKTsKKyAgICByZXR1cm4gc3RhdGljX2Nhc3Q8VGV4dFRyYWNrKj4odHJhY2sp
OworfQogCit2b2lkIFRleHRUcmFja0xpc3Q6OmludmFsaWRhdGVUcmFja0luZGV4ZXNBZnRlclRy
YWNrKFRleHRUcmFjayogdHJhY2spCit7CisgICAgc2l6ZV90IGluZGV4ID0gbm90Rm91bmQ7CiAg
ICAgaWYgKHRyYWNrLT50cmFja1R5cGUoKSA9PSBUZXh0VHJhY2s6OlRyYWNrRWxlbWVudCkgewot
ICAgICAgICB0cmFja3MgPSAmbV9lbGVtZW50VHJhY2tzOworICAgICAgICBpbmRleCA9IG1fZWxl
bWVudFRyYWNrcy5maW5kKHRyYWNrKTsKKyAgICAgICAgaWYgKGluZGV4ID09IG5vdEZvdW5kKQor
ICAgICAgICAgICAgcmV0dXJuOworICAgICAgICBmb3IgKHNpemVfdCBpID0gaW5kZXg7IGkgPCBt
X2VsZW1lbnRUcmFja3Muc2l6ZSgpOyArK2kpCisgICAgICAgICAgICBtX2VsZW1lbnRUcmFja3Mu
YXQoaW5kZXgpLT5pbnZhbGlkYXRlVHJhY2tJbmRleCgpOworICAgIH0gZWxzZSBpZiAodHJhY2st
PnRyYWNrVHlwZSgpID09IFRleHRUcmFjazo6QWRkVHJhY2spIHsKKyAgICAgICAgaWYgKGluZGV4
ID09IG5vdEZvdW5kKSB7CisgICAgICAgICAgICBpbmRleCA9IG1fYWRkVHJhY2tUcmFja3MuZmlu
ZCh0cmFjayk7CisgICAgICAgICAgICBpZiAoaW5kZXggPT0gbm90Rm91bmQpCisgICAgICAgICAg
ICAgICAgcmV0dXJuOworICAgICAgICB9CiAgICAgICAgIGZvciAoc2l6ZV90IGkgPSAwOyBpIDwg
bV9hZGRUcmFja1RyYWNrcy5zaXplKCk7ICsraSkKICAgICAgICAgICAgIG1fYWRkVHJhY2tUcmFj
a3NbaV0tPmludmFsaWRhdGVUcmFja0luZGV4KCk7CisgICAgfSBlbHNlIGlmICh0cmFjay0+dHJh
Y2tUeXBlKCkgPT0gVGV4dFRyYWNrOjpJbkJhbmQpIHsKKyAgICAgICAgaWYgKGluZGV4ID09IG5v
dEZvdW5kKSB7CisgICAgICAgICAgICBpbmRleCA9IG1faW5iYW5kVHJhY2tzLmZpbmQodHJhY2sp
OworICAgICAgICAgICAgaWYgKGluZGV4ID09IG5vdEZvdW5kKQorICAgICAgICAgICAgICAgIHJl
dHVybjsKKyAgICAgICAgfQogICAgICAgICBmb3IgKHNpemVfdCBpID0gMDsgaSA8IG1faW5iYW5k
VHJhY2tzLnNpemUoKTsgKytpKQotICAgICAgICAgICAgbV9pbmJhbmRUcmFja3NbaV0tPmludmFs
aWRhdGVUcmFja0luZGV4KCk7Ci0gICAgfSBlbHNlIGlmICh0cmFjay0+dHJhY2tUeXBlKCkgPT0g
VGV4dFRyYWNrOjpBZGRUcmFjaykgewotICAgICAgICB0cmFja3MgPSAmbV9hZGRUcmFja1RyYWNr
czsKLSAgICAgICAgZm9yIChzaXplX3QgaSA9IDA7IGkgPCBtX2luYmFuZFRyYWNrcy5zaXplKCk7
ICsraSkKLSAgICAgICAgICAgIG1faW5iYW5kVHJhY2tzW2ldLT5pbnZhbGlkYXRlVHJhY2tJbmRl
eCgpOwotICAgIH0gZWxzZSBpZiAodHJhY2stPnRyYWNrVHlwZSgpID09IFRleHRUcmFjazo6SW5C
YW5kKQotICAgICAgICB0cmFja3MgPSAmbV9pbmJhbmRUcmFja3M7Ci0gICAgZWxzZQorICAgICAg
ICAgICAgZ2V0SW5iYW5kVHJhY2soaSktPmludmFsaWRhdGVUcmFja0luZGV4KCk7CisgICAgfSBl
bHNlCiAgICAgICAgIEFTU0VSVF9OT1RfUkVBQ0hFRCgpOwotCi0gICAgc2l6ZV90IGluZGV4ID0g
dHJhY2tzLT5maW5kKHRyYWNrKTsKLSAgICBpZiAoaW5kZXggPT0gbm90Rm91bmQpCi0gICAgICAg
IHJldHVybjsKLQotICAgIGZvciAoc2l6ZV90IGkgPSBpbmRleDsgaSA8IHRyYWNrcy0+c2l6ZSgp
OyArK2kpCi0gICAgICAgIHRyYWNrcy0+YXQoaW5kZXgpLT5pbnZhbGlkYXRlVHJhY2tJbmRleCgp
OwogfQogCiB2b2lkIFRleHRUcmFja0xpc3Q6OmFwcGVuZChQYXNzUmVmUHRyPFRleHRUcmFjaz4g
cHJwVHJhY2spCkBAIC0xNzMsNTggKzE3OSw2NyBAQCB2b2lkIFRleHRUcmFja0xpc3Q6OmFwcGVu
ZChQYXNzUmVmUHRyPFRleHRUcmFjaz4gcHJwVHJhY2spCiAgICAgICAgIG1fZWxlbWVudFRyYWNr
cy5pbnNlcnQoaW5kZXgsIHRyYWNrKTsKICAgICB9IGVsc2UgaWYgKHRyYWNrLT50cmFja1R5cGUo
KSA9PSBUZXh0VHJhY2s6OkluQmFuZCkgewogICAgICAgICAvLyBJbnNlcnQgdHJhY2tzIGFkZGVk
IGZvciBpbi1iYW5kIGluIHRoZSBtZWRpYSBmaWxlIG9yZGVyLgotICAgICAgICBzaXplX3QgaW5k
ZXggPSBzdGF0aWNfY2FzdDxJbmJhbmRUZXh0VHJhY2sqPih0cmFjay5nZXQoKSktPmluYmFuZFRy
YWNrSW5kZXgoKTsKKyAgICAgICAgc2l6ZV90IGluZGV4ID0gZHluYW1pY19jYXN0PEluYmFuZFRl
eHRUcmFjayo+KHRyYWNrLmdldCgpKS0+aW5iYW5kVHJhY2tJbmRleCgpOwogICAgICAgICBtX2lu
YmFuZFRyYWNrcy5pbnNlcnQoaW5kZXgsIHRyYWNrKTsKICAgICB9IGVsc2UKICAgICAgICAgQVNT
RVJUX05PVF9SRUFDSEVEKCk7CiAKICAgICBpbnZhbGlkYXRlVHJhY2tJbmRleGVzQWZ0ZXJUcmFj
ayh0cmFjay5nZXQoKSk7CiAKLSAgICBBU1NFUlQoIXRyYWNrLT5tZWRpYUVsZW1lbnQoKSB8fCB0
cmFjay0+bWVkaWFFbGVtZW50KCkgPT0gbV9vd25lcik7Ci0gICAgdHJhY2stPnNldE1lZGlhRWxl
bWVudChtX293bmVyKTsKKyAgICBBU1NFUlQoIXRyYWNrLT5tZWRpYUVsZW1lbnQoKSB8fCB0cmFj
ay0+bWVkaWFFbGVtZW50KCkgPT0gb3duZXIoKSk7CisgICAgdHJhY2stPnNldE1lZGlhRWxlbWVu
dChvd25lcigpKTsKIAogICAgIHNjaGVkdWxlQWRkVHJhY2tFdmVudCh0cmFjay5yZWxlYXNlKCkp
OwogfQogCi12b2lkIFRleHRUcmFja0xpc3Q6OnJlbW92ZShUZXh0VHJhY2sqIHRyYWNrKQordm9p
ZCBUZXh0VHJhY2tMaXN0OjpyZW1vdmUoVHJhY2tCYXNlKiB0cmFjaykKIHsKLSAgICBWZWN0b3I8
UmVmUHRyPFRleHRUcmFjaz4gPiogdHJhY2tzID0gMDsKLQotICAgIGlmICh0cmFjay0+dHJhY2tU
eXBlKCkgPT0gVGV4dFRyYWNrOjpUcmFja0VsZW1lbnQpCi0gICAgICAgIHRyYWNrcyA9ICZtX2Vs
ZW1lbnRUcmFja3M7Ci0gICAgZWxzZSBpZiAodHJhY2stPnRyYWNrVHlwZSgpID09IFRleHRUcmFj
azo6QWRkVHJhY2spCi0gICAgICAgIHRyYWNrcyA9ICZtX2FkZFRyYWNrVHJhY2tzOwotICAgIGVs
c2UgaWYgKHRyYWNrLT50cmFja1R5cGUoKSA9PSBUZXh0VHJhY2s6OkluQmFuZCkKLSAgICAgICAg
dHJhY2tzID0gJm1faW5iYW5kVHJhY2tzOworICAgIGlmICh0cmFjay0+dHlwZSgpICE9IFRyYWNr
QmFzZTo6VGV4dFRyYWNrKQorICAgICAgICByZXR1cm47CisgICAgVGV4dFRyYWNrKiB0ZXh0VHJh
Y2sgPSBzdGF0aWNfY2FzdDxUZXh0VHJhY2sqPih0cmFjayk7CisKKyAgICBzaXplX3QgaW5kZXgg
PSBub3RGb3VuZDsKKyAgICBpZiAodGV4dFRyYWNrLT50cmFja1R5cGUoKSA9PSBUZXh0VHJhY2s6
OlRyYWNrRWxlbWVudCkKKyAgICAgICAgbV9lbGVtZW50VHJhY2tzLmZpbmQodGV4dFRyYWNrKTsK
KyAgICBlbHNlIGlmICh0ZXh0VHJhY2stPnRyYWNrVHlwZSgpID09IFRleHRUcmFjazo6QWRkVHJh
Y2spCisgICAgICAgIG1fYWRkVHJhY2tUcmFja3MuZmluZCh0ZXh0VHJhY2spOworICAgIGVsc2Ug
aWYgKHRleHRUcmFjay0+dHJhY2tUeXBlKCkgPT0gVGV4dFRyYWNrOjpJbkJhbmQpCisgICAgICAg
IG1faW5iYW5kVHJhY2tzLmZpbmQodGV4dFRyYWNrKTsKICAgICBlbHNlCiAgICAgICAgIEFTU0VS
VF9OT1RfUkVBQ0hFRCgpOwogCi0gICAgc2l6ZV90IGluZGV4ID0gdHJhY2tzLT5maW5kKHRyYWNr
KTsKICAgICBpZiAoaW5kZXggPT0gbm90Rm91bmQpCiAgICAgICAgIHJldHVybjsKIAotICAgIGlu
dmFsaWRhdGVUcmFja0luZGV4ZXNBZnRlclRyYWNrKHRyYWNrKTsKKyAgICBpbnZhbGlkYXRlVHJh
Y2tJbmRleGVzQWZ0ZXJUcmFjayh0ZXh0VHJhY2spOwogCi0gICAgQVNTRVJUKHRyYWNrLT5tZWRp
YUVsZW1lbnQoKSA9PSBtX293bmVyKTsKLSAgICB0cmFjay0+c2V0TWVkaWFFbGVtZW50KDApOwor
ICAgIEFTU0VSVCh0cmFjay0+bWVkaWFFbGVtZW50KCkgPT0gb3duZXIoKSk7CisgICAgdGV4dFRy
YWNrLT5zZXRNZWRpYUVsZW1lbnQoMCk7CiAKLSAgICB0cmFja3MtPnJlbW92ZShpbmRleCk7Cisg
ICAgaWYgKHRleHRUcmFjay0+dHJhY2tUeXBlKCkgPT0gVGV4dFRyYWNrOjpUcmFja0VsZW1lbnQp
CisgICAgICAgIG1fZWxlbWVudFRyYWNrcy5yZW1vdmUoaW5kZXgpOworICAgIGVsc2UgaWYgKHRl
eHRUcmFjay0+dHJhY2tUeXBlKCkgPT0gVGV4dFRyYWNrOjpBZGRUcmFjaykKKyAgICAgICAgbV9h
ZGRUcmFja1RyYWNrcy5yZW1vdmUoaW5kZXgpOworICAgIGVsc2UgaWYgKHRleHRUcmFjay0+dHJh
Y2tUeXBlKCkgPT0gVGV4dFRyYWNrOjpJbkJhbmQpCisgICAgICAgIG1faW5iYW5kVHJhY2tzLnJl
bW92ZShpbmRleCk7CisgICAgZWxzZQorICAgICAgICBBU1NFUlRfTk9UX1JFQUNIRUQoKTsKIH0K
IAotYm9vbCBUZXh0VHJhY2tMaXN0Ojpjb250YWlucyhUZXh0VHJhY2sqIHRyYWNrKSBjb25zdAor
Ym9vbCBUZXh0VHJhY2tMaXN0Ojpjb250YWlucyhUcmFja0Jhc2UqIHRyYWNrKSBjb25zdAogewot
ICAgIGNvbnN0IFZlY3RvcjxSZWZQdHI8VGV4dFRyYWNrPiA+KiB0cmFja3MgPSAwOwotICAgIAot
ICAgIGlmICh0cmFjay0+dHJhY2tUeXBlKCkgPT0gVGV4dFRyYWNrOjpUcmFja0VsZW1lbnQpCi0g
ICAgICAgIHRyYWNrcyA9ICZtX2VsZW1lbnRUcmFja3M7Ci0gICAgZWxzZSBpZiAodHJhY2stPnRy
YWNrVHlwZSgpID09IFRleHRUcmFjazo6QWRkVHJhY2spCi0gICAgICAgIHRyYWNrcyA9ICZtX2Fk
ZFRyYWNrVHJhY2tzOwotICAgIGVsc2UgaWYgKHRyYWNrLT50cmFja1R5cGUoKSA9PSBUZXh0VHJh
Y2s6OkluQmFuZCkKLSAgICAgICAgdHJhY2tzID0gJm1faW5iYW5kVHJhY2tzOwotICAgIGVsc2UK
LSAgICAgICAgQVNTRVJUX05PVF9SRUFDSEVEKCk7CisgICAgaWYgKHRyYWNrLT50eXBlKCkgIT0g
VHJhY2tCYXNlOjpUZXh0VHJhY2spCisgICAgICAgIHJldHVybiBmYWxzZTsKKyAgICBUZXh0VHJh
Y2sqIHRleHRUcmFjayA9IHN0YXRpY19jYXN0PFRleHRUcmFjayo+KHRyYWNrKTsKICAgICAKLSAg
ICByZXR1cm4gdHJhY2tzLT5maW5kKHRyYWNrKSAhPSBub3RGb3VuZDsKKyAgICBpZiAodGV4dFRy
YWNrLT50cmFja1R5cGUoKSA9PSBUZXh0VHJhY2s6OlRyYWNrRWxlbWVudCkKKyAgICAgICAgcmV0
dXJuIG1fZWxlbWVudFRyYWNrcy5maW5kKHRyYWNrKSAhPSBub3RGb3VuZDsKKyAgICBpZiAodGV4
dFRyYWNrLT50cmFja1R5cGUoKSA9PSBUZXh0VHJhY2s6OkFkZFRyYWNrKQorICAgICAgICByZXR1
cm4gbV9hZGRUcmFja1RyYWNrcy5maW5kKHRyYWNrKSAhPSBub3RGb3VuZDsKKyAgICBpZiAodGV4
dFRyYWNrLT50cmFja1R5cGUoKSA9PSBUZXh0VHJhY2s6OkluQmFuZCkKKyAgICAgICAgcmV0dXJu
IG1faW5iYW5kVHJhY2tzLmZpbmQodHJhY2spICE9IG5vdEZvdW5kOworICAgIEFTU0VSVF9OT1Rf
UkVBQ0hFRCgpOworICAgIHJldHVybiBmYWxzZTsKIH0KIAogY29uc3QgQXRvbWljU3RyaW5nJiBU
ZXh0VHJhY2tMaXN0OjppbnRlcmZhY2VOYW1lKCkgY29uc3QKQEAgLTIzMiw0MSArMjQ3LDQgQEAg
Y29uc3QgQXRvbWljU3RyaW5nJiBUZXh0VHJhY2tMaXN0OjppbnRlcmZhY2VOYW1lKCkgY29uc3QK
ICAgICByZXR1cm4gZXZlbnROYW1lcygpLmludGVyZmFjZUZvclRleHRUcmFja0xpc3Q7CiB9CiAK
LXZvaWQgVGV4dFRyYWNrTGlzdDo6c2NoZWR1bGVBZGRUcmFja0V2ZW50KFBhc3NSZWZQdHI8VGV4
dFRyYWNrPiB0cmFjaykKLXsKLSAgICAvLyA0LjguMTAuMTIuMyBTb3VyY2luZyBvdXQtb2YtYmFu
ZCB0ZXh0IHRyYWNrcwotICAgIC8vIDQuOC4xMC4xMi40IFRleHQgdHJhY2sgQVBJCi0gICAgLy8g
Li4uIHRoZW4gcXVldWUgYSB0YXNrIHRvIGZpcmUgYW4gZXZlbnQgd2l0aCB0aGUgbmFtZSBhZGR0
cmFjaywgdGhhdCBkb2VzIG5vdCAKLSAgICAvLyBidWJibGUgYW5kIGlzIG5vdCBjYW5jZWxhYmxl
LCBhbmQgdGhhdCB1c2VzIHRoZSBUcmFja0V2ZW50IGludGVyZmFjZSwgd2l0aCAKLSAgICAvLyB0
aGUgdHJhY2sgYXR0cmlidXRlIGluaXRpYWxpemVkIHRvIHRoZSB0ZXh0IHRyYWNrJ3MgVGV4dFRy
YWNrIG9iamVjdCwgYXQgCi0gICAgLy8gdGhlIG1lZGlhIGVsZW1lbnQncyB0ZXh0VHJhY2tzIGF0
dHJpYnV0ZSdzIFRleHRUcmFja0xpc3Qgb2JqZWN0LgotCi0gICAgUmVmUHRyPFRleHRUcmFjaz4g
dHJhY2tSZWYgPSB0cmFjazsKLSAgICBUcmFja0V2ZW50SW5pdCBpbml0aWFsaXplcjsKLSAgICBp
bml0aWFsaXplci50cmFjayA9IHRyYWNrUmVmOwotICAgIGluaXRpYWxpemVyLmJ1YmJsZXMgPSBm
YWxzZTsKLSAgICBpbml0aWFsaXplci5jYW5jZWxhYmxlID0gZmFsc2U7Ci0KLSAgICBtX3BlbmRp
bmdFdmVudHMuYXBwZW5kKFRyYWNrRXZlbnQ6OmNyZWF0ZShldmVudE5hbWVzKCkuYWRkdHJhY2tF
dmVudCwgaW5pdGlhbGl6ZXIpKTsKLSAgICBpZiAoIW1fcGVuZGluZ0V2ZW50VGltZXIuaXNBY3Rp
dmUoKSkKLSAgICAgICAgbV9wZW5kaW5nRXZlbnRUaW1lci5zdGFydE9uZVNob3QoMCk7Ci19Ci0K
LXZvaWQgVGV4dFRyYWNrTGlzdDo6YXN5bmNFdmVudFRpbWVyRmlyZWQoVGltZXI8VGV4dFRyYWNr
TGlzdD4qKQotewotICAgIFZlY3RvcjxSZWZQdHI8RXZlbnQ+ID4gcGVuZGluZ0V2ZW50czsKLQot
ICAgICsrbV9kaXNwYXRjaGluZ0V2ZW50czsKLSAgICBtX3BlbmRpbmdFdmVudHMuc3dhcChwZW5k
aW5nRXZlbnRzKTsKLSAgICBzaXplX3QgY291bnQgPSBwZW5kaW5nRXZlbnRzLnNpemUoKTsKLSAg
ICBmb3IgKHNpemVfdCBpbmRleCA9IDA7IGluZGV4IDwgY291bnQ7ICsraW5kZXgpCi0gICAgICAg
IGRpc3BhdGNoRXZlbnQocGVuZGluZ0V2ZW50c1tpbmRleF0ucmVsZWFzZSgpLCBJR05PUkVfRVhD
RVBUSU9OKTsKLSAgICAtLW1fZGlzcGF0Y2hpbmdFdmVudHM7Ci19Ci0KLU5vZGUqIFRleHRUcmFj
a0xpc3Q6Om93bmVyKCkgY29uc3QKLXsKLSAgICByZXR1cm4gbV9vd25lcjsKLX0KLQogI2VuZGlm
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9odG1sL3RyYWNrL1RleHRUcmFja0xpc3QuaCBi
L1NvdXJjZS9XZWJDb3JlL2h0bWwvdHJhY2svVGV4dFRyYWNrTGlzdC5oCmluZGV4IDFlZTE1Yzkz
Yzk4NzllNWM5YWE1ZTVkNGI2OTFkNDdjMDU0NjJhMjEuLmVmNTI2N2Q0MTU4ZDg1OTA2OTM1NDQw
ZjZjODJmMDg4ZTRlZDMxNDEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvdHJhY2sv
VGV4dFRyYWNrTGlzdC5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvdHJhY2svVGV4dFRyYWNr
TGlzdC5oCkBAIC0yOCwyMSArMjgsMTMgQEAKIAogI2lmIEVOQUJMRShWSURFT19UUkFDSykKIAot
I2luY2x1ZGUgIkV2ZW50TGlzdGVuZXIuaCIKLSNpbmNsdWRlICJFdmVudFRhcmdldC5oIgotI2lu
Y2x1ZGUgIlRpbWVyLmgiCi0jaW5jbHVkZSA8YWxnb3JpdGhtPgotI2luY2x1ZGUgPHd0Zi9QYXNz
UmVmUHRyLmg+Ci0jaW5jbHVkZSA8d3RmL1JlZkNvdW50ZWQuaD4KLSNpbmNsdWRlIDx3dGYvVmVj
dG9yLmg+CisjaW5jbHVkZSAiVHJhY2tMaXN0QmFzZS5oIgogCiBuYW1lc3BhY2UgV2ViQ29yZSB7
CiAKLWNsYXNzIEhUTUxNZWRpYUVsZW1lbnQ7CiBjbGFzcyBUZXh0VHJhY2s7Ci1jbGFzcyBUZXh0
VHJhY2tMaXN0OwogCi1jbGFzcyBUZXh0VHJhY2tMaXN0IDogcHVibGljIFJlZkNvdW50ZWQ8VGV4
dFRyYWNrTGlzdD4sIHB1YmxpYyBFdmVudFRhcmdldCB7CitjbGFzcyBUZXh0VHJhY2tMaXN0IDog
cHVibGljIFRyYWNrTGlzdEJhc2UgewogcHVibGljOgogICAgIHN0YXRpYyBQYXNzUmVmUHRyPFRl
eHRUcmFja0xpc3Q+IGNyZWF0ZShIVE1MTWVkaWFFbGVtZW50KiBvd25lciwgU2NyaXB0RXhlY3V0
aW9uQ29udGV4dCogY29udGV4dCkKICAgICB7CkBAIC01MCw1NCArNDIsMjcgQEAgcHVibGljOgog
ICAgIH0KICAgICB+VGV4dFRyYWNrTGlzdCgpOwogCi0gICAgdW5zaWduZWQgbGVuZ3RoKCkgY29u
c3Q7Ci0gICAgaW50IGdldFRyYWNrSW5kZXgoVGV4dFRyYWNrKik7CiAgICAgaW50IGdldFRyYWNr
SW5kZXhSZWxhdGl2ZVRvUmVuZGVyZWRUcmFja3MoVGV4dFRyYWNrKik7Ci0gICAgYm9vbCBjb250
YWlucyhUZXh0VHJhY2sqKSBjb25zdDsKIAotICAgIFRleHRUcmFjayogaXRlbSh1bnNpZ25lZCBp
bmRleCk7CisgICAgdmlydHVhbCB1bnNpZ25lZCBsZW5ndGgoKSBjb25zdCBPVkVSUklERTsKKyAg
ICB2aXJ0dWFsIGludCBnZXRUcmFja0luZGV4KFRyYWNrQmFzZSopIE9WRVJSSURFOworICAgIHZp
cnR1YWwgYm9vbCBjb250YWlucyhUcmFja0Jhc2UqKSBjb25zdCBPVkVSUklERTsKKworICAgIFRl
eHRUcmFjayogaXRlbSh1bnNpZ25lZCBpbmRleCkgY29uc3Q7CiAgICAgdm9pZCBhcHBlbmQoUGFz
c1JlZlB0cjxUZXh0VHJhY2s+KTsKLSAgICB2b2lkIHJlbW92ZShUZXh0VHJhY2sqKTsKKyAgICB2
aXJ0dWFsIHZvaWQgcmVtb3ZlKFRyYWNrQmFzZSopIE9WRVJSSURFOwogCiAgICAgLy8gRXZlbnRU
YXJnZXQKICAgICB2aXJ0dWFsIGNvbnN0IEF0b21pY1N0cmluZyYgaW50ZXJmYWNlTmFtZSgpIGNv
bnN0OwotICAgIHVzaW5nIFJlZkNvdW50ZWQ8VGV4dFRyYWNrTGlzdD46OnJlZjsKLSAgICB1c2lu
ZyBSZWZDb3VudGVkPFRleHRUcmFja0xpc3Q+OjpkZXJlZjsKLSAgICB2aXJ0dWFsIFNjcmlwdEV4
ZWN1dGlvbkNvbnRleHQqIHNjcmlwdEV4ZWN1dGlvbkNvbnRleHQoKSBjb25zdCB7IHJldHVybiBt
X2NvbnRleHQ7IH0KLQotICAgIERFRklORV9BVFRSSUJVVEVfRVZFTlRfTElTVEVORVIoYWRkdHJh
Y2spOwotCi0gICAgdm9pZCBjbGVhck93bmVyKCkgeyBtX293bmVyID0gMDsgfQotICAgIE5vZGUq
IG93bmVyKCkgY29uc3Q7Ci0KLSAgICBib29sIGlzRmlyaW5nRXZlbnRMaXN0ZW5lcnMoKSB7IHJl
dHVybiBtX2Rpc3BhdGNoaW5nRXZlbnRzOyB9CiAKIHByaXZhdGU6CiAgICAgVGV4dFRyYWNrTGlz
dChIVE1MTWVkaWFFbGVtZW50KiwgU2NyaXB0RXhlY3V0aW9uQ29udGV4dCopOwogCi0gICAgLy8g
RXZlbnRUYXJnZXQKLSAgICB2aXJ0dWFsIHZvaWQgcmVmRXZlbnRUYXJnZXQoKSB7IHJlZigpOyB9
Ci0gICAgdmlydHVhbCB2b2lkIGRlcmVmRXZlbnRUYXJnZXQoKSB7IGRlcmVmKCk7IH0KLSAgICB2
aXJ0dWFsIEV2ZW50VGFyZ2V0RGF0YSogZXZlbnRUYXJnZXREYXRhKCkgeyByZXR1cm4gJm1fZXZl
bnRUYXJnZXREYXRhOyB9Ci0gICAgdmlydHVhbCBFdmVudFRhcmdldERhdGEqIGVuc3VyZUV2ZW50
VGFyZ2V0RGF0YSgpIHsgcmV0dXJuICZtX2V2ZW50VGFyZ2V0RGF0YTsgfQotCi0gICAgdm9pZCBz
Y2hlZHVsZUFkZFRyYWNrRXZlbnQoUGFzc1JlZlB0cjxUZXh0VHJhY2s+KTsKLSAgICB2b2lkIGFz
eW5jRXZlbnRUaW1lckZpcmVkKFRpbWVyPFRleHRUcmFja0xpc3Q+Kik7Ci0KKyAgICBUZXh0VHJh
Y2sqIGdldEluYmFuZFRyYWNrKHVuc2lnbmVkKSBjb25zdDsKICAgICB2b2lkIGludmFsaWRhdGVU
cmFja0luZGV4ZXNBZnRlclRyYWNrKFRleHRUcmFjayopOwogCi0gICAgU2NyaXB0RXhlY3V0aW9u
Q29udGV4dCogbV9jb250ZXh0OwotICAgIEhUTUxNZWRpYUVsZW1lbnQqIG1fb3duZXI7Ci0KLSAg
ICBWZWN0b3I8UmVmUHRyPEV2ZW50PiA+IG1fcGVuZGluZ0V2ZW50czsKLSAgICBUaW1lcjxUZXh0
VHJhY2tMaXN0PiBtX3BlbmRpbmdFdmVudFRpbWVyOwotCi0gICAgRXZlbnRUYXJnZXREYXRhIG1f
ZXZlbnRUYXJnZXREYXRhOwotICAgIFZlY3RvcjxSZWZQdHI8VGV4dFRyYWNrPiA+IG1fYWRkVHJh
Y2tUcmFja3M7Ci0gICAgVmVjdG9yPFJlZlB0cjxUZXh0VHJhY2s+ID4gbV9lbGVtZW50VHJhY2tz
OwotICAgIFZlY3RvcjxSZWZQdHI8VGV4dFRyYWNrPiA+IG1faW5iYW5kVHJhY2tzOwotCi0gICAg
aW50IG1fZGlzcGF0Y2hpbmdFdmVudHM7CisgICAgVmVjdG9yPFJlZlB0cjxXZWJDb3JlOjpUZXh0
VHJhY2s+ID4gbV9hZGRUcmFja1RyYWNrczsKKyAgICBWZWN0b3I8UmVmUHRyPFdlYkNvcmU6OlRl
eHRUcmFjaz4gPiBtX2VsZW1lbnRUcmFja3M7CiB9OwogCiB9IC8vIG5hbWVzcGFjZSBXZWJDb3Jl
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9odG1sL3RyYWNrL1RyYWNrQmFzZS5jcHAgYi9T
b3VyY2UvV2ViQ29yZS9odG1sL3RyYWNrL1RyYWNrQmFzZS5jcHAKaW5kZXggNmEyYzM1ODIzZTYx
OTYyYTM3YzlmOGY0Y2VmZDk4OWRkYWI1MGRmZS4uZGU0ZTM4NTc0Y2Q4MTgwMmE2YWUwMTAxYTMw
MGM2YjI5MGI5ODJhYyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvaHRtbC90cmFjay9UcmFj
a0Jhc2UuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvdHJhY2svVHJhY2tCYXNlLmNwcApA
QCAtMzAsOCArMzAsMTAgQEAKIAogbmFtZXNwYWNlIFdlYkNvcmUgewogCi1UcmFja0Jhc2U6OlRy
YWNrQmFzZShTY3JpcHRFeGVjdXRpb25Db250ZXh0KiBjb250ZXh0LCBUeXBlIHR5cGUpCi0gICAg
OiBtX3NjcmlwdEV4ZWN1dGlvbkNvbnRleHQoY29udGV4dCkKK1RyYWNrQmFzZTo6VHJhY2tCYXNl
KFR5cGUgdHlwZSwgY29uc3QgQXRvbWljU3RyaW5nJiBsYWJlbCwgY29uc3QgQXRvbWljU3RyaW5n
JiBsYW5ndWFnZSkKKyAgICA6IG1fbWVkaWFFbGVtZW50KDApCisgICAgLCBtX2xhYmVsKGxhYmVs
KQorICAgICwgbV9sYW5ndWFnZShsYW5ndWFnZSkKIHsKICAgICBBU1NFUlQodHlwZSAhPSBCYXNl
VHJhY2spOwogICAgIG1fdHlwZSA9IHR5cGU7CkBAIC00MSwyNCArNDMsMTQgQEAgVHJhY2tCYXNl
Ojp+VHJhY2tCYXNlKCkKIHsKIH0KIAotY29uc3QgQXRvbWljU3RyaW5nJiBUcmFja0Jhc2U6Omlu
dGVyZmFjZU5hbWUoKSBjb25zdAordm9pZCBUcmFja0Jhc2U6OnNldEtpbmQoY29uc3QgQXRvbWlj
U3RyaW5nJiBraW5kKQogewotICAgIHJldHVybiBldmVudE5hbWVzKCkuaW50ZXJmYWNlRm9yVGV4
dFRyYWNrOwotfQotCi1TY3JpcHRFeGVjdXRpb25Db250ZXh0KiBUcmFja0Jhc2U6OnNjcmlwdEV4
ZWN1dGlvbkNvbnRleHQoKSBjb25zdAotewotICAgIHJldHVybiBtX3NjcmlwdEV4ZWN1dGlvbkNv
bnRleHQ7Ci19CisgICAgU3RyaW5nIG9sZEtpbmQgPSBtX2tpbmQ7CiAKLUV2ZW50VGFyZ2V0RGF0
YSogVHJhY2tCYXNlOjpldmVudFRhcmdldERhdGEoKQotewotICAgIHJldHVybiAmbV9ldmVudFRh
cmdldERhdGE7Ci19Ci0KLUV2ZW50VGFyZ2V0RGF0YSogVHJhY2tCYXNlOjplbnN1cmVFdmVudFRh
cmdldERhdGEoKQotewotICAgIHJldHVybiAmbV9ldmVudFRhcmdldERhdGE7CisgICAgaWYgKGlz
VmFsaWRLaW5kKGtpbmQpKQorICAgICAgICBtX2tpbmQgPSBraW5kOworICAgIGVsc2UKKyAgICAg
ICAgbV9raW5kID0gZGVmYXVsdEtpbmRLZXl3b3JkKCk7CiB9CiAKIH0gLy8gbmFtZXNwYWNlIFdl
YkNvcmUKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvdHJhY2svVHJhY2tCYXNlLmgg
Yi9Tb3VyY2UvV2ViQ29yZS9odG1sL3RyYWNrL1RyYWNrQmFzZS5oCmluZGV4IGMwMDY2MGYwNTNh
ZDY0OTQxNjU4ZjIwZDc1MDMwY2FiYzkzMjc5ODkuLjU0NjI4OThjMGUwNTdlMjI3MGM5MTQxYTZh
ZDUyYjQzMmRhNzI0OGMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvdHJhY2svVHJh
Y2tCYXNlLmgKKysrIGIvU291cmNlL1dlYkNvcmUvaHRtbC90cmFjay9UcmFja0Jhc2UuaApAQCAt
MzMsMzUgKzMzLDQyIEBACiAKIG5hbWVzcGFjZSBXZWJDb3JlIHsKIAotY2xhc3MgU2NyaXB0RXhl
Y3V0aW9uQ29udGV4dDsKK2NsYXNzIEhUTUxNZWRpYUVsZW1lbnQ7CiAKLWNsYXNzIFRyYWNrQmFz
ZSA6IHB1YmxpYyBSZWZDb3VudGVkPFRyYWNrQmFzZT4sIHB1YmxpYyBFdmVudFRhcmdldCB7Citj
bGFzcyBUcmFja0Jhc2UgOiBwdWJsaWMgUmVmQ291bnRlZDxUcmFja0Jhc2U+IHsKIHB1YmxpYzoK
ICAgICB2aXJ0dWFsIH5UcmFja0Jhc2UoKTsKIAogICAgIGVudW0gVHlwZSB7IEJhc2VUcmFjaywg
VGV4dFRyYWNrLCBBdWRpb1RyYWNrLCBWaWRlb1RyYWNrIH07CiAgICAgVHlwZSB0eXBlKCkgY29u
c3QgeyByZXR1cm4gbV90eXBlOyB9CiAKLSAgICB2aXJ0dWFsIGNvbnN0IEF0b21pY1N0cmluZyYg
aW50ZXJmYWNlTmFtZSgpIGNvbnN0OwotICAgIHZpcnR1YWwgU2NyaXB0RXhlY3V0aW9uQ29udGV4
dCogc2NyaXB0RXhlY3V0aW9uQ29udGV4dCgpIGNvbnN0OwotICAgIAotICAgIHVzaW5nIFJlZkNv
dW50ZWQ8VHJhY2tCYXNlPjo6cmVmOwotICAgIHVzaW5nIFJlZkNvdW50ZWQ8VHJhY2tCYXNlPjo6
ZGVyZWY7CisgICAgdm9pZCBzZXRNZWRpYUVsZW1lbnQoSFRNTE1lZGlhRWxlbWVudCogZWxlbWVu
dCkgeyBtX21lZGlhRWxlbWVudCA9IGVsZW1lbnQ7IH0KKyAgICBIVE1MTWVkaWFFbGVtZW50KiBt
ZWRpYUVsZW1lbnQoKSB7IHJldHVybiBtX21lZGlhRWxlbWVudDsgfQorCisgICAgQXRvbWljU3Ry
aW5nIGtpbmQoKSBjb25zdCB7IHJldHVybiBtX2tpbmQ7IH0KKyAgICB2aXJ0dWFsIHZvaWQgc2V0
S2luZChjb25zdCBBdG9taWNTdHJpbmcmKTsKKworICAgIEF0b21pY1N0cmluZyBsYWJlbCgpIGNv
bnN0IHsgcmV0dXJuIG1fbGFiZWw7IH0KKyAgICB2b2lkIHNldExhYmVsKGNvbnN0IEF0b21pY1N0
cmluZyYgbGFiZWwpIHsgbV9sYWJlbCA9IGxhYmVsOyB9CisKKyAgICBBdG9taWNTdHJpbmcgbGFu
Z3VhZ2UoKSBjb25zdCB7IHJldHVybiBtX2xhbmd1YWdlOyB9CisgICAgdm9pZCBzZXRMYW5ndWFn
ZShjb25zdCBBdG9taWNTdHJpbmcmIGxhbmd1YWdlKSB7IG1fbGFuZ3VhZ2UgPSBsYW5ndWFnZTsg
fQorCisgICAgdmlydHVhbCB2b2lkIGNsZWFyQ2xpZW50KCkgPSAwOwogCiBwcm90ZWN0ZWQ6Ci0g
ICAgVHJhY2tCYXNlKFNjcmlwdEV4ZWN1dGlvbkNvbnRleHQqLCBUeXBlKTsKLSAgICAKLSAgICB2
aXJ0dWFsIEV2ZW50VGFyZ2V0RGF0YSogZXZlbnRUYXJnZXREYXRhKCk7Ci0gICAgdmlydHVhbCBF
dmVudFRhcmdldERhdGEqIGVuc3VyZUV2ZW50VGFyZ2V0RGF0YSgpOworICAgIFRyYWNrQmFzZShU
eXBlLCBjb25zdCBBdG9taWNTdHJpbmcmIGxhYmVsLCBjb25zdCBBdG9taWNTdHJpbmcmIGxhbmd1
YWdlKTsKKworICAgIHZpcnR1YWwgYm9vbCBpc1ZhbGlkS2luZChjb25zdCBBdG9taWNTdHJpbmcm
KSBjb25zdCA9IDA7CisgICAgdmlydHVhbCBjb25zdCBBdG9taWNTdHJpbmcmIGRlZmF1bHRLaW5k
S2V5d29yZCgpIGNvbnN0ID0gMDsKKworICAgIEhUTUxNZWRpYUVsZW1lbnQqIG1fbWVkaWFFbGVt
ZW50OwogCiBwcml2YXRlOgogICAgIFR5cGUgbV90eXBlOwotICAgIAotICAgIHZpcnR1YWwgdm9p
ZCByZWZFdmVudFRhcmdldCgpIHsgcmVmKCk7IH0KLSAgICB2aXJ0dWFsIHZvaWQgZGVyZWZFdmVu
dFRhcmdldCgpIHsgZGVyZWYoKTsgfQotICAgIAotICAgIFNjcmlwdEV4ZWN1dGlvbkNvbnRleHQq
IG1fc2NyaXB0RXhlY3V0aW9uQ29udGV4dDsKLSAgICBFdmVudFRhcmdldERhdGEgbV9ldmVudFRh
cmdldERhdGE7CisgICAgQXRvbWljU3RyaW5nIG1fa2luZDsKKyAgICBBdG9taWNTdHJpbmcgbV9s
YWJlbDsKKyAgICBBdG9taWNTdHJpbmcgbV9sYW5ndWFnZTsKIH07CiAKIH0gLy8gbmFtZXNwYWNl
IFdlYkNvcmUKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvdHJhY2svVHJhY2tMaXN0
QmFzZS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL3RyYWNrL1RyYWNrTGlzdEJhc2UuY3BwCm5l
dyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAuLjFkNTliZDI0YjViNjJmYTg5Mjk5MTdmYTQ2ZjQ2MjUxMDkxN2JhMDQKLS0tIC9k
ZXYvbnVsbAorKysgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL3RyYWNrL1RyYWNrTGlzdEJhc2UuY3Bw
CkBAIC0wLDAgKzEsMTU3IEBACisvKgorICogQ29weXJpZ2h0IChDKSAyMDExLCAyMDEyIEFwcGxl
IEluYy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKgorICogUmVkaXN0cmlidXRpb24gYW5kIHVz
ZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CisgKiBtb2RpZmlj
YXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlv
bnMKKyAqIGFyZSBtZXQ6CisgKiAxLiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVz
dCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2Yg
Y29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgorICogMi4gUmVkaXN0cmli
dXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQK
KyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcg
ZGlzY2xhaW1lciBpbiB0aGUKKyAqICAgIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVy
aWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCisgKgorICogVEhJUyBTT0ZUV0FS
RSBJUyBQUk9WSURFRCBCWSBBUFBMRSBDT01QVVRFUiwgSU5DLiBgYEFTIElTJycgQU5EIEFOWQor
ICogRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1J
VEVEIFRPLCBUSEUKKyAqIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5E
IEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUgorICogUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gIElO
IE5PIEVWRU5UIFNIQUxMIEFQUExFIENPTVBVVEVSLCBJTkMuIE9SCisgKiBDT05UUklCVVRPUlMg
QkUgTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwK
KyAqIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBO
T1QgTElNSVRFRCBUTywKKyAqIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VS
VklDRVM7IExPU1MgT0YgVVNFLCBEQVRBLCBPUgorICogUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5U
RVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZIFRIRU9SWQorICogT0YgTElBQklM
SVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUCisgKiAo
SU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VU
IE9GIFRIRSBVU0UKKyAqIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUg
UE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuIAorICovCisKKyNpbmNsdWRlICJjb25maWcuaCIK
KworI2lmIEVOQUJMRShWSURFT19UUkFDSykKKworI2luY2x1ZGUgIlRyYWNrTGlzdEJhc2UuaCIK
KworI2luY2x1ZGUgIkV2ZW50TmFtZXMuaCIKKyNpbmNsdWRlICJIVE1MTWVkaWFFbGVtZW50Lmgi
CisjaW5jbHVkZSAiU2NyaXB0RXhlY3V0aW9uQ29udGV4dC5oIgorI2luY2x1ZGUgIlRyYWNrQmFz
ZS5oIgorI2luY2x1ZGUgIlRyYWNrRXZlbnQuaCIKKwordXNpbmcgbmFtZXNwYWNlIFdlYkNvcmU7
CisKK1RyYWNrTGlzdEJhc2U6OlRyYWNrTGlzdEJhc2UoSFRNTE1lZGlhRWxlbWVudCogb3duZXIs
IFNjcmlwdEV4ZWN1dGlvbkNvbnRleHQqIGNvbnRleHQpCisgICAgOiBtX2NvbnRleHQoY29udGV4
dCkKKyAgICAsIG1fb3duZXIob3duZXIpCisgICAgLCBtX3BlbmRpbmdFdmVudFRpbWVyKHRoaXMs
ICZUcmFja0xpc3RCYXNlOjphc3luY0V2ZW50VGltZXJGaXJlZCkKKyAgICAsIG1fZGlzcGF0Y2hp
bmdFdmVudHMoMCkKK3sKKyAgICBBU1NFUlQoY29udGV4dC0+aXNEb2N1bWVudCgpKTsKK30KKwor
VHJhY2tMaXN0QmFzZTo6flRyYWNrTGlzdEJhc2UoKQoreworfQorCit1bnNpZ25lZCBUcmFja0xp
c3RCYXNlOjpsZW5ndGgoKSBjb25zdAoreworICAgIHJldHVybiBtX2luYmFuZFRyYWNrcy5zaXpl
KCk7Cit9CisKK2ludCBUcmFja0xpc3RCYXNlOjpnZXRUcmFja0luZGV4KFRyYWNrQmFzZSAqdHJh
Y2spCit7CisgICAgcmV0dXJuIG1faW5iYW5kVHJhY2tzLmZpbmQodHJhY2spOworfQorCit2b2lk
IFRyYWNrTGlzdEJhc2U6OnJlbW92ZShUcmFja0Jhc2UqIHRyYWNrKQoreworICAgIHNpemVfdCBp
bmRleCA9IG1faW5iYW5kVHJhY2tzLmZpbmQodHJhY2spOworICAgIEFTU0VSVChpbmRleCAhPSBu
b3RGb3VuZCk7CisKKyAgICBBU1NFUlQodHJhY2stPm1lZGlhRWxlbWVudCgpID09IG1fb3duZXIp
OworICAgIHRyYWNrLT5zZXRNZWRpYUVsZW1lbnQoMCk7CisKKyAgICBSZWZQdHI8VHJhY2tCYXNl
PiB0cmFja1JlZiA9IG1faW5iYW5kVHJhY2tzW2luZGV4XTsKKworICAgIG1faW5iYW5kVHJhY2tz
LnJlbW92ZShpbmRleCk7CisKKyAgICBzY2hlZHVsZUFkZFRyYWNrRXZlbnQodHJhY2tSZWYucmVs
ZWFzZSgpKTsKK30KKworYm9vbCBUcmFja0xpc3RCYXNlOjpjb250YWlucyhUcmFja0Jhc2UqIHRy
YWNrKSBjb25zdAoreworICAgIHJldHVybiBtX2luYmFuZFRyYWNrcy5maW5kKHRyYWNrKSAhPSBu
b3RGb3VuZDsKK30KKwordm9pZCBUcmFja0xpc3RCYXNlOjpzY2hlZHVsZUFkZFRyYWNrRXZlbnQo
UGFzc1JlZlB0cjxUcmFja0Jhc2U+IHRyYWNrKQoreworICAgIC8vIDQuOC4xMC41IExvYWRpbmcg
dGhlIG1lZGlhIHJlc291cmNlCisgICAgLy8gLi4uCisgICAgLy8gRmlyZSBhIHRydXN0ZWQgZXZl
bnQgd2l0aCB0aGUgbmFtZSBhZGR0cmFjaywgdGhhdCBkb2VzIG5vdCBidWJibGUgYW5kIGlzCisg
ICAgLy8gbm90IGNhbmNlbGFibGUsIGFuZCB0aGF0IHVzZXMgdGhlIFRyYWNrRXZlbnQgaW50ZXJm
YWNlLCB3aXRoIHRoZSB0cmFjaworICAgIC8vIGF0dHJpYnV0ZSBpbml0aWFsaXplZCB0byB0aGUg
bmV3IFQgb2JqZWN0LCBhdCB0aGlzCisgICAgLy8gVHJhY2tMaXN0QmFzZSBvYmplY3QuCisKKyAg
ICBSZWZQdHI8VHJhY2tCYXNlPiB0cmFja1JlZiA9IHRyYWNrOworICAgIFRyYWNrRXZlbnRJbml0
IGluaXRpYWxpemVyOworICAgIGluaXRpYWxpemVyLnRyYWNrID0gdHJhY2tSZWY7CisgICAgaW5p
dGlhbGl6ZXIuYnViYmxlcyA9IGZhbHNlOworICAgIGluaXRpYWxpemVyLmNhbmNlbGFibGUgPSBm
YWxzZTsKKworICAgIG1fcGVuZGluZ0V2ZW50cy5hcHBlbmQoVHJhY2tFdmVudDo6Y3JlYXRlKGV2
ZW50TmFtZXMoKS5hZGR0cmFja0V2ZW50LCBpbml0aWFsaXplcikpOworICAgIGlmICghbV9wZW5k
aW5nRXZlbnRUaW1lci5pc0FjdGl2ZSgpKQorICAgICAgICBtX3BlbmRpbmdFdmVudFRpbWVyLnN0
YXJ0T25lU2hvdCgwKTsKK30KKwordm9pZCBUcmFja0xpc3RCYXNlOjpzY2hlZHVsZVJlbW92ZVRy
YWNrRXZlbnQoUGFzc1JlZlB0cjxUcmFja0Jhc2U+IHRyYWNrKQoreworICAgIC8vIDQuOC4xMC42
IE9mZnNldHMgaW50byB0aGUgbWVkaWEgcmVzb3VyY2UKKyAgICAvLyBJZiBhdCBhbnkgdGltZSB0
aGUgdXNlciBhZ2VudCBsZWFybnMgdGhhdCBhbiBhdWRpbyBvciB2aWRlbyB0cmFjayBoYXMKKyAg
ICAvLyBlbmRlZCBhbmQgYWxsIG1lZGlhIGRhdGEgcmVsYXRpbmcgdG8gdGhhdCB0cmFjayBjb3Jy
ZXNwb25kcyB0byBwYXJ0cyBvZgorICAgIC8vIHRoZSBtZWRpYSB0aW1lbGluZSB0aGF0IGFyZSBi
ZWZvcmUgdGhlIGVhcmxpZXN0IHBvc3NpYmxlIHBvc2l0aW9uLCB0aGUKKyAgICAvLyB1c2VyIGFn
ZW50IG1heSBxdWV1ZSBhIHRhc2sgdG8gcmVtb3ZlIHRoZSB0cmFjayBmcm9tIHRoZSBhdWRpb1Ry
YWNrcworICAgIC8vIGF0dHJpYnV0ZSdzIFRyYWNrTGlzdEJhc2Ugb2JqZWN0IG9yIHRoZSB2aWRl
b1RyYWNrcyBhdHRyaWJ1dGUncworICAgIC8vIFRyYWNrTGlzdEJhc2Ugb2JqZWN0IGFzIGFwcHJv
cHJpYXRlIGFuZCB0aGVuIGZpcmUgYSB0cnVzdGVkIGV2ZW50CisgICAgLy8gd2l0aCB0aGUgbmFt
ZSByZW1vdmV0cmFjaywgdGhhdCBkb2VzIG5vdCBidWJibGUgYW5kIGlzIG5vdCBjYW5jZWxhYmxl
LAorICAgIC8vIGFuZCB0aGF0IHVzZXMgdGhlIFRyYWNrRXZlbnQgaW50ZXJmYWNlLCB3aXRoIHRo
ZSB0cmFjayBhdHRyaWJ1dGUKKyAgICAvLyBpbml0aWFsaXplZCB0byB0aGUgVCBvciBUIG9iamVj
dCByZXByZXNlbnRpbmcgdGhlCisgICAgLy8gdHJhY2ssIGF0IHRoZSBtZWRpYSBlbGVtZW50J3Mg
YWZvcmVtZW50aW9uZWQgVHJhY2tMaXN0QmFzZSBvcgorICAgIC8vIFRyYWNrTGlzdEJhc2Ugb2Jq
ZWN0LgorCisgICAgUmVmUHRyPFRyYWNrQmFzZT4gdHJhY2tSZWYgPSB0cmFjazsKKyAgICBUcmFj
a0V2ZW50SW5pdCBpbml0aWFsaXplcjsKKyAgICBpbml0aWFsaXplci50cmFjayA9IHRyYWNrUmVm
OworICAgIGluaXRpYWxpemVyLmJ1YmJsZXMgPSBmYWxzZTsKKyAgICBpbml0aWFsaXplci5jYW5j
ZWxhYmxlID0gZmFsc2U7CisKKyAgICBtX3BlbmRpbmdFdmVudHMuYXBwZW5kKFRyYWNrRXZlbnQ6
OmNyZWF0ZShldmVudE5hbWVzKCkucmVtb3ZldHJhY2tFdmVudCwgaW5pdGlhbGl6ZXIpKTsKKyAg
ICBpZiAoIW1fcGVuZGluZ0V2ZW50VGltZXIuaXNBY3RpdmUoKSkKKyAgICAgICAgbV9wZW5kaW5n
RXZlbnRUaW1lci5zdGFydE9uZVNob3QoMCk7Cit9CisKK3ZvaWQgVHJhY2tMaXN0QmFzZTo6c2No
ZWR1bGVDaGFuZ2VFdmVudCgpCit7CisgICAgLy8gNC44LjEwLjYgT2Zmc2V0cyBpbnRvIHRoZSBt
ZWRpYSByZXNvdXJjZQorICAgIC8vIFdoZW5ldmVyIGFuIGF1ZGlvIHRyYWNrIGluIGFuIFRyYWNr
TGlzdEJhc2UgaXMgZW5hYmxlZCBvciBkaXNhYmxlZCwgdGhlCisgICAgLy8gdXNlciBhZ2VudCBt
dXN0IHF1ZXVlIGEgdGFzayB0byBmaXJlIGEgc2ltcGxlIGV2ZW50IG5hbWVkIGNoYW5nZSBhdCB0
aGUKKyAgICAvLyBUcmFja0xpc3RCYXNlIG9iamVjdC4KKworICAgIEV2ZW50SW5pdCBpbml0aWFs
aXplcjsKKyAgICBpbml0aWFsaXplci5idWJibGVzID0gZmFsc2U7CisgICAgaW5pdGlhbGl6ZXIu
Y2FuY2VsYWJsZSA9IGZhbHNlOworCisgICAgbV9wZW5kaW5nRXZlbnRzLmFwcGVuZChFdmVudDo6
Y3JlYXRlKGV2ZW50TmFtZXMoKS5jaGFuZ2VFdmVudCwgaW5pdGlhbGl6ZXIpKTsKKyAgICBpZiAo
IW1fcGVuZGluZ0V2ZW50VGltZXIuaXNBY3RpdmUoKSkKKyAgICAgICAgbV9wZW5kaW5nRXZlbnRU
aW1lci5zdGFydE9uZVNob3QoMCk7Cit9CisKK3ZvaWQgVHJhY2tMaXN0QmFzZTo6YXN5bmNFdmVu
dFRpbWVyRmlyZWQoVGltZXI8VHJhY2tMaXN0QmFzZT4qKQoreworICAgIFZlY3RvcjxSZWZQdHI8
RXZlbnQ+ID4gcGVuZGluZ0V2ZW50czsKKworICAgICsrbV9kaXNwYXRjaGluZ0V2ZW50czsKKyAg
ICBtX3BlbmRpbmdFdmVudHMuc3dhcChwZW5kaW5nRXZlbnRzKTsKKyAgICBzaXplX3QgY291bnQg
PSBwZW5kaW5nRXZlbnRzLnNpemUoKTsKKyAgICBmb3IgKHNpemVfdCBpbmRleCA9IDA7IGluZGV4
IDwgY291bnQ7ICsraW5kZXgpCisgICAgICAgIGRpc3BhdGNoRXZlbnQocGVuZGluZ0V2ZW50c1tp
bmRleF0ucmVsZWFzZSgpLCBJR05PUkVfRVhDRVBUSU9OKTsKKyAgICAtLW1fZGlzcGF0Y2hpbmdF
dmVudHM7Cit9CisKKyNlbmRpZgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvaHRtbC90cmFj
ay9UcmFja0xpc3RCYXNlLmggYi9Tb3VyY2UvV2ViQ29yZS9odG1sL3RyYWNrL1RyYWNrTGlzdEJh
c2UuaApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwLi40NWZhNTYyZWI3NGFlNDU5Njc2MmFiMzU1NzMzY2RlNDY1M2Q1Y2Iy
Ci0tLSAvZGV2L251bGwKKysrIGIvU291cmNlL1dlYkNvcmUvaHRtbC90cmFjay9UcmFja0xpc3RC
YXNlLmgKQEAgLTAsMCArMSwxMDEgQEAKKy8qCisgKiBDb3B5cmlnaHQgKEMpIDIwMTEsIDIwMTIg
QXBwbGUgSW5jLiAgQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAqCisgKiBSZWRpc3RyaWJ1dGlvbiBh
bmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKKyAqIG1v
ZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29u
ZGl0aW9ucworICogYXJlIG1ldDoKKyAqIDEuIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29k
ZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlz
dCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisgKiAyLiBSZWRp
c3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHly
aWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxv
d2luZyBkaXNjbGFpbWVyIGluIHRoZQorICogICAgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIg
bWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KKyAqCisgKiBUSElTIFNP
RlRXQVJFIElTIFBST1ZJREVEIEJZIEFQUExFIENPTVBVVEVSLCBJTkMuIGBgQVMgSVMnJyBBTkQg
QU5ZCisgKiBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9U
IExJTUlURUQgVE8sIFRIRQorICogSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElU
WSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSCisgKiBQVVJQT1NFIEFSRSBESVNDTEFJTUVE
LiAgSU4gTk8gRVZFTlQgU0hBTEwgQVBQTEUgQ09NUFVURVIsIElOQy4gT1IKKyAqIENPTlRSSUJV
VE9SUyBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVD
SUFMLAorICogRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywg
QlVUIE5PVCBMSU1JVEVEIFRPLAorICogUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBP
UiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsIERBVEEsIE9SCisgKiBQUk9GSVRTOyBPUiBCVVNJTkVT
UyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhFT1JZCisgKiBPRiBM
SUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQK
KyAqIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdB
WSBPVVQgT0YgVEhFIFVTRQorICogT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9G
IFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4gCisgKi8KKworI2lmbmRlZiBUcmFja0xp
c3RCYXNlX2gKKyNkZWZpbmUgVHJhY2tMaXN0QmFzZV9oCisKKyNpZiBFTkFCTEUoVklERU9fVFJB
Q0spCisKKyNpbmNsdWRlICJFdmVudExpc3RlbmVyLmgiCisjaW5jbHVkZSAiRXZlbnRUYXJnZXQu
aCIKKyNpbmNsdWRlICJUaW1lci5oIgorI2luY2x1ZGUgPHd0Zi9QYXNzUmVmUHRyLmg+CisjaW5j
bHVkZSA8d3RmL1JlZkNvdW50ZWQuaD4KKyNpbmNsdWRlIDx3dGYvVmVjdG9yLmg+CisKK25hbWVz
cGFjZSBXZWJDb3JlIHsKKworY2xhc3MgSFRNTE1lZGlhRWxlbWVudDsKK2NsYXNzIFRyYWNrQmFz
ZTsKKworY2xhc3MgVHJhY2tMaXN0QmFzZSA6IHB1YmxpYyBSZWZDb3VudGVkPFRyYWNrTGlzdEJh
c2U+LCBwdWJsaWMgRXZlbnRUYXJnZXQgeworcHVibGljOgorICAgIH5UcmFja0xpc3RCYXNlKCk7
CisKKyAgICB2aXJ0dWFsIHVuc2lnbmVkIGxlbmd0aCgpIGNvbnN0OworICAgIHZpcnR1YWwgaW50
IGdldFRyYWNrSW5kZXgoVHJhY2tCYXNlKik7CisgICAgdmlydHVhbCBib29sIGNvbnRhaW5zKFRy
YWNrQmFzZSopIGNvbnN0OworICAgIHZpcnR1YWwgdm9pZCByZW1vdmUoVHJhY2tCYXNlKik7CisK
KyAgICAvLyBFdmVudFRhcmdldAorICAgIHZpcnR1YWwgY29uc3QgQXRvbWljU3RyaW5nJiBpbnRl
cmZhY2VOYW1lKCkgY29uc3QgPSAwOworICAgIHVzaW5nIFJlZkNvdW50ZWQ8VHJhY2tMaXN0QmFz
ZT46OnJlZjsKKyAgICB1c2luZyBSZWZDb3VudGVkPFRyYWNrTGlzdEJhc2U+OjpkZXJlZjsKKyAg
ICB2aXJ0dWFsIFNjcmlwdEV4ZWN1dGlvbkNvbnRleHQqIHNjcmlwdEV4ZWN1dGlvbkNvbnRleHQo
KSBjb25zdCB7IHJldHVybiBtX2NvbnRleHQ7IH0KKworICAgIERFRklORV9BVFRSSUJVVEVfRVZF
TlRfTElTVEVORVIoYWRkdHJhY2spOworICAgIERFRklORV9BVFRSSUJVVEVfRVZFTlRfTElTVEVO
RVIoY2hhbmdlKTsKKyAgICBERUZJTkVfQVRUUklCVVRFX0VWRU5UX0xJU1RFTkVSKHJlbW92ZXRy
YWNrKTsKKworICAgIHZvaWQgY2xlYXJPd25lcigpIHsgbV9vd25lciA9IDA7IH0KKyAgICBIVE1M
TWVkaWFFbGVtZW50KiBvd25lcigpIGNvbnN0IHsgcmV0dXJuIG1fb3duZXI7IH0KKworICAgIGJv
b2wgaXNGaXJpbmdFdmVudExpc3RlbmVycygpIHsgcmV0dXJuIG1fZGlzcGF0Y2hpbmdFdmVudHM7
IH0KKworICAgIC8vIE5lZWRzIHRvIGJlIHB1YmxpYyBzbyB0cmFja3MgY2FuIGNhbGwgaXQKKyAg
ICB2b2lkIHNjaGVkdWxlQ2hhbmdlRXZlbnQoKTsKKworcHJvdGVjdGVkOgorICAgIFRyYWNrTGlz
dEJhc2UoSFRNTE1lZGlhRWxlbWVudCosIFNjcmlwdEV4ZWN1dGlvbkNvbnRleHQqKTsKKworICAg
IHZvaWQgc2NoZWR1bGVBZGRUcmFja0V2ZW50KFBhc3NSZWZQdHI8VHJhY2tCYXNlPik7CisgICAg
dm9pZCBzY2hlZHVsZVJlbW92ZVRyYWNrRXZlbnQoUGFzc1JlZlB0cjxUcmFja0Jhc2U+KTsKKwor
ICAgIFZlY3RvcjxSZWZQdHI8VHJhY2tCYXNlPiA+IG1faW5iYW5kVHJhY2tzOworCitwcml2YXRl
OgorICAgIC8vIEV2ZW50VGFyZ2V0CisgICAgdmlydHVhbCB2b2lkIHJlZkV2ZW50VGFyZ2V0KCkg
eyByZWYoKTsgfQorICAgIHZpcnR1YWwgdm9pZCBkZXJlZkV2ZW50VGFyZ2V0KCkgeyBkZXJlZigp
OyB9CisgICAgdmlydHVhbCBFdmVudFRhcmdldERhdGEqIGV2ZW50VGFyZ2V0RGF0YSgpIHsgcmV0
dXJuICZtX2V2ZW50VGFyZ2V0RGF0YTsgfQorICAgIHZpcnR1YWwgRXZlbnRUYXJnZXREYXRhKiBl
bnN1cmVFdmVudFRhcmdldERhdGEoKSB7IHJldHVybiAmbV9ldmVudFRhcmdldERhdGE7IH0KKwor
ICAgIHZvaWQgYXN5bmNFdmVudFRpbWVyRmlyZWQoVGltZXI8VHJhY2tMaXN0QmFzZT4qKTsKKwor
ICAgIFNjcmlwdEV4ZWN1dGlvbkNvbnRleHQqIG1fY29udGV4dDsKKyAgICBIVE1MTWVkaWFFbGVt
ZW50KiBtX293bmVyOworCisgICAgVmVjdG9yPFJlZlB0cjxFdmVudD4gPiBtX3BlbmRpbmdFdmVu
dHM7CisgICAgVGltZXI8VHJhY2tMaXN0QmFzZT4gbV9wZW5kaW5nRXZlbnRUaW1lcjsKKworICAg
IEV2ZW50VGFyZ2V0RGF0YSBtX2V2ZW50VGFyZ2V0RGF0YTsKKworICAgIGludCBtX2Rpc3BhdGNo
aW5nRXZlbnRzOworfTsKKworfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQorCisjZW5kaWYKKyNlbmRp
ZgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvTWVkaWFQbGF5
ZXIuY3BwIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvTWVkaWFQbGF5ZXIuY3Bw
CmluZGV4IDFiZjA2MTg0MTdjODc2NDM3NmQ0MDgyMTM0ODVlZTNiNWMxNDlmNjQuLmZmYzUzNDg1
MzRkMzJjZjc5M2QwMWUzNjRlMTIyOTE5ZWZkMzc2MWIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJD
b3JlL3BsYXRmb3JtL2dyYXBoaWNzL01lZGlhUGxheWVyLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29y
ZS9wbGF0Zm9ybS9ncmFwaGljcy9NZWRpYVBsYXllci5jcHAKQEAgLTExMDIsNyArMTEwMiw3IEBA
IHZvaWQgTWVkaWFQbGF5ZXI6OmFkZFRleHRUcmFjayhQYXNzUmVmUHRyPEluYmFuZFRleHRUcmFj
a1ByaXZhdGU+IHRyYWNrKQogICAgIGlmICghbV9tZWRpYVBsYXllckNsaWVudCkKICAgICAgICAg
cmV0dXJuOwogCi0gICAgbV9tZWRpYVBsYXllckNsaWVudC0+bWVkaWFQbGF5ZXJEaWRBZGRUcmFj
ayh0cmFjayk7CisgICAgbV9tZWRpYVBsYXllckNsaWVudC0+bWVkaWFQbGF5ZXJEaWRBZGRUZXh0
VHJhY2sodHJhY2spOwogfQogCiB2b2lkIE1lZGlhUGxheWVyOjpyZW1vdmVUZXh0VHJhY2soUGFz
c1JlZlB0cjxJbmJhbmRUZXh0VHJhY2tQcml2YXRlPiB0cmFjaykKQEAgLTExMTAsNyArMTExMCw3
IEBAIHZvaWQgTWVkaWFQbGF5ZXI6OnJlbW92ZVRleHRUcmFjayhQYXNzUmVmUHRyPEluYmFuZFRl
eHRUcmFja1ByaXZhdGU+IHRyYWNrKQogICAgIGlmICghbV9tZWRpYVBsYXllckNsaWVudCkKICAg
ICAgICAgcmV0dXJuOwogCi0gICAgbV9tZWRpYVBsYXllckNsaWVudC0+bWVkaWFQbGF5ZXJEaWRS
ZW1vdmVUcmFjayh0cmFjayk7CisgICAgbV9tZWRpYVBsYXllckNsaWVudC0+bWVkaWFQbGF5ZXJE
aWRSZW1vdmVUZXh0VHJhY2sodHJhY2spOwogfQogCiBib29sIE1lZGlhUGxheWVyOjpyZXF1aXJl
c1RleHRUcmFja1JlcHJlc2VudGF0aW9uKCkgY29uc3QKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJD
b3JlL3BsYXRmb3JtL2dyYXBoaWNzL01lZGlhUGxheWVyLmggYi9Tb3VyY2UvV2ViQ29yZS9wbGF0
Zm9ybS9ncmFwaGljcy9NZWRpYVBsYXllci5oCmluZGV4IGUxN2FkNmM5MDA4M2VlNGJkNzYyNTkz
ZGEzZDgxZjQ1NTE2YWFmYzkuLmE4MTExMTg4NWNiMmU0ODRiY2EzMmM4MDkwODY5ODkwNTBiMDQz
NGMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL01lZGlhUGxh
eWVyLmgKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvTWVkaWFQbGF5ZXIu
aApAQCAtMjE4LDggKzIxOCw4IEBAIHB1YmxpYzoKICAgICB2aXJ0dWFsIENhY2hlZFJlc291cmNl
TG9hZGVyKiBtZWRpYVBsYXllckNhY2hlZFJlc291cmNlTG9hZGVyKCkgeyByZXR1cm4gMDsgfQog
CiAjaWYgRU5BQkxFKFZJREVPX1RSQUNLKQotICAgIHZpcnR1YWwgdm9pZCBtZWRpYVBsYXllckRp
ZEFkZFRyYWNrKFBhc3NSZWZQdHI8SW5iYW5kVGV4dFRyYWNrUHJpdmF0ZT4pIHsgfQotICAgIHZp
cnR1YWwgdm9pZCBtZWRpYVBsYXllckRpZFJlbW92ZVRyYWNrKFBhc3NSZWZQdHI8SW5iYW5kVGV4
dFRyYWNrUHJpdmF0ZT4pIHsgfQorICAgIHZpcnR1YWwgdm9pZCBtZWRpYVBsYXllckRpZEFkZFRl
eHRUcmFjayhQYXNzUmVmUHRyPEluYmFuZFRleHRUcmFja1ByaXZhdGU+KSB7IH0KKyAgICB2aXJ0
dWFsIHZvaWQgbWVkaWFQbGF5ZXJEaWRSZW1vdmVUZXh0VHJhY2soUGFzc1JlZlB0cjxJbmJhbmRU
ZXh0VHJhY2tQcml2YXRlPikgeyB9CiAKICAgICB2aXJ0dWFsIHZvaWQgdGV4dFRyYWNrUmVwcmVz
ZW50YXRpb25Cb3VuZHNDaGFuZ2VkKGNvbnN0IEludFJlY3QmKSB7IH0KICAgICB2aXJ0dWFsIHZv
aWQgcGFpbnRUZXh0VHJhY2tSZXByZXNlbnRhdGlvbihHcmFwaGljc0NvbnRleHQqLCBjb25zdCBJ
bnRSZWN0JikgeyB9Cg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>197203</attachid>
            <date>2013-04-09 21:44:37 -0700</date>
            <delta_ts>2013-04-09 21:45:25 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-114330-20130409224418.patch</filename>
            <type>text/plain</type>
            <size>51160</size>
            <attacher name="Brendan Long">b.long</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTQ4MDc0CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggNzU5NmU1YzJiOGIwODFl
NWFmMzk3OThlODdiMWIyYzg0MGRmNDMxYS4uN2E5ZjQwMzgwNjMzMTI4MDlhNGFkYjYwZWU4MGQx
YTEyNzRmMjdjMCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDEwMiBAQAorMjAxMy0wNC0wOSAgQnJl
bmRhbiBMb25nICA8Yi5sb25nQGNhYmxlbGFicy5jb20+CisKKyAgICAgICAgUmVmYWN0b3IgVGV4
dFRyYWNrIGFuZCBUZXh0VHJhY2tMaXN0IHRvIG1ha2UgaXQgZWFzaWVyIHRvIGFkZCBhdWRpbyBh
bmQgdmlkZW8gdHJhY2tzCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVn
LmNnaT9pZD0xMTQzMzAKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKwor
ICAgICAgICBObyBuZXcgdGVzdHMgYmVjYXVzZSB0aGlzIGRvZXNuJ3QgYWRkIG5ldyBmdW5jdGlv
bmFsaXR5LgorCisgICAgICAgICogQ01ha2VMaXN0cy50eHQ6CisgICAgICAgICogVGFyZ2V0LnBy
aToKKyAgICAgICAgKiBodG1sL0hUTUxNZWRpYUVsZW1lbnQuY3BwOgorICAgICAgICAoV2ViQ29y
ZTo6SFRNTE1lZGlhRWxlbWVudDo6bWVkaWFQbGF5ZXJEaWRBZGRUZXh0VHJhY2spOgorICAgICAg
ICAoV2ViQ29yZTo6SFRNTE1lZGlhRWxlbWVudDo6bWVkaWFQbGF5ZXJEaWRSZW1vdmVUZXh0VHJh
Y2spOgorICAgICAgICAoV2ViQ29yZTo6SFRNTE1lZGlhRWxlbWVudDo6YWRkVGV4dFRyYWNrKToK
KyAgICAgICAgKFdlYkNvcmU6OkhUTUxNZWRpYUVsZW1lbnQ6OnJlbW92ZVRleHRUcmFjayk6Cisg
ICAgICAgIChXZWJDb3JlOjpIVE1MTWVkaWFFbGVtZW50OjpyZW1vdmVBbGxJbmJhbmRUcmFja3Mp
OgorICAgICAgICAoV2ViQ29yZTo6SFRNTE1lZGlhRWxlbWVudDo6ZGlkQWRkVGV4dFRyYWNrKToK
KyAgICAgICAgKFdlYkNvcmU6OkhUTUxNZWRpYUVsZW1lbnQ6OmRpZFJlbW92ZVRleHRUcmFjayk6
CisgICAgICAgICogaHRtbC9IVE1MTWVkaWFFbGVtZW50Lmg6CisgICAgICAgIChXZWJDb3JlKToK
KyAgICAgICAgKEhUTUxNZWRpYUVsZW1lbnQpOgorICAgICAgICAqIGh0bWwvSFRNTFRyYWNrRWxl
bWVudC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpIVE1MVHJhY2tFbGVtZW50OjppbnNlcnRlZElu
dG8pOgorICAgICAgICAoV2ViQ29yZTo6SFRNTFRyYWNrRWxlbWVudDo6cmVtb3ZlZEZyb20pOgor
ICAgICAgICAqIGh0bWwvdHJhY2svVGV4dFRyYWNrLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlRl
eHRUcmFjazo6VGV4dFRyYWNrKToKKyAgICAgICAgKFdlYkNvcmU6OlRleHRUcmFjazo6aW50ZXJm
YWNlTmFtZSk6CisgICAgICAgIChXZWJDb3JlKToKKyAgICAgICAgKFdlYkNvcmU6OlRleHRUcmFj
azo6c2NyaXB0RXhlY3V0aW9uQ29udGV4dCk6CisgICAgICAgIChXZWJDb3JlOjpUZXh0VHJhY2s6
OmV2ZW50VGFyZ2V0RGF0YSk6CisgICAgICAgIChXZWJDb3JlOjpUZXh0VHJhY2s6OmVuc3VyZUV2
ZW50VGFyZ2V0RGF0YSk6CisgICAgICAgIChXZWJDb3JlOjpUZXh0VHJhY2s6OmlzVmFsaWRLaW5k
KToKKyAgICAgICAgKFdlYkNvcmU6OlRleHRUcmFjazo6c2V0S2luZCk6CisgICAgICAgIChXZWJD
b3JlOjpUZXh0VHJhY2s6OmlzUmVuZGVyZWQpOgorICAgICAgICAoV2ViQ29yZTo6VGV4dFRyYWNr
OjpwbGF0Zm9ybVRleHRUcmFjayk6CisgICAgICAgIChXZWJDb3JlOjpUZXh0VHJhY2s6OmlzTWFp
blByb2dyYW1Db250ZW50KToKKyAgICAgICAgKiBodG1sL3RyYWNrL1RleHRUcmFjay5oOgorICAg
ICAgICAoV2ViQ29yZSk6CisgICAgICAgIChUZXh0VHJhY2spOgorICAgICAgICAoV2ViQ29yZTo6
VGV4dFRyYWNrOjpkZWZhdWx0S2luZEtleXdvcmQpOgorICAgICAgICAoV2ViQ29yZTo6VGV4dFRy
YWNrOjpjbGllbnQpOgorICAgICAgICAoV2ViQ29yZTo6VGV4dFRyYWNrOjpyZWZFdmVudFRhcmdl
dCk6CisgICAgICAgIChXZWJDb3JlOjpUZXh0VHJhY2s6OmRlcmVmRXZlbnRUYXJnZXQpOgorICAg
ICAgICAqIGh0bWwvdHJhY2svVGV4dFRyYWNrTGlzdC5jcHA6CisgICAgICAgIChUZXh0VHJhY2tM
aXN0OjpUZXh0VHJhY2tMaXN0KToKKyAgICAgICAgKFRleHRUcmFja0xpc3Q6OmdldFRyYWNrSW5k
ZXgpOgorICAgICAgICAoVGV4dFRyYWNrTGlzdDo6Z2V0VHJhY2tJbmRleFJlbGF0aXZlVG9SZW5k
ZXJlZFRyYWNrcyk6CisgICAgICAgIChUZXh0VHJhY2tMaXN0OjppdGVtKToKKyAgICAgICAgKFRl
eHRUcmFja0xpc3Q6OmdldEluYmFuZFRyYWNrKToKKyAgICAgICAgKFRleHRUcmFja0xpc3Q6Omlu
dmFsaWRhdGVUcmFja0luZGV4ZXNBZnRlclRyYWNrKToKKyAgICAgICAgKFRleHRUcmFja0xpc3Q6
OmFwcGVuZCk6CisgICAgICAgIChUZXh0VHJhY2tMaXN0OjpyZW1vdmUpOgorICAgICAgICAoVGV4
dFRyYWNrTGlzdDo6Y29udGFpbnMpOgorICAgICAgICAqIGh0bWwvdHJhY2svVGV4dFRyYWNrTGlz
dC5oOgorICAgICAgICAoV2ViQ29yZSk6CisgICAgICAgIChUZXh0VHJhY2tMaXN0KToKKyAgICAg
ICAgKiBodG1sL3RyYWNrL1RyYWNrQmFzZS5jcHA6CisgICAgICAgIChXZWJDb3JlOjpUcmFja0Jh
c2U6OlRyYWNrQmFzZSk6CisgICAgICAgIChXZWJDb3JlOjpUcmFja0Jhc2U6OnNldEtpbmQpOgor
ICAgICAgICAqIGh0bWwvdHJhY2svVHJhY2tCYXNlLmg6CisgICAgICAgIChXZWJDb3JlKToKKyAg
ICAgICAgKFdlYkNvcmU6OlRyYWNrQmFzZTo6c2V0TWVkaWFFbGVtZW50KToKKyAgICAgICAgKFdl
YkNvcmU6OlRyYWNrQmFzZTo6bWVkaWFFbGVtZW50KToKKyAgICAgICAgKFRyYWNrQmFzZSk6Cisg
ICAgICAgIChXZWJDb3JlOjpUcmFja0Jhc2U6OmtpbmQpOgorICAgICAgICAoV2ViQ29yZTo6VHJh
Y2tCYXNlOjpsYWJlbCk6CisgICAgICAgIChXZWJDb3JlOjpUcmFja0Jhc2U6OnNldExhYmVsKToK
KyAgICAgICAgKFdlYkNvcmU6OlRyYWNrQmFzZTo6bGFuZ3VhZ2UpOgorICAgICAgICAoV2ViQ29y
ZTo6VHJhY2tCYXNlOjpzZXRMYW5ndWFnZSk6CisgICAgICAgICogaHRtbC90cmFjay9UcmFja0xp
c3RCYXNlLmNwcDogQWRkZWQuCisgICAgICAgIChUcmFja0xpc3RCYXNlOjpUcmFja0xpc3RCYXNl
KToKKyAgICAgICAgKFRyYWNrTGlzdEJhc2U6On5UcmFja0xpc3RCYXNlKToKKyAgICAgICAgKFRy
YWNrTGlzdEJhc2U6Omxlbmd0aCk6CisgICAgICAgIChUcmFja0xpc3RCYXNlOjpnZXRUcmFja0lu
ZGV4KToKKyAgICAgICAgKFRyYWNrTGlzdEJhc2U6OnJlbW92ZSk6CisgICAgICAgIChUcmFja0xp
c3RCYXNlOjpjb250YWlucyk6CisgICAgICAgIChUcmFja0xpc3RCYXNlOjpzY2hlZHVsZUFkZFRy
YWNrRXZlbnQpOgorICAgICAgICAoVHJhY2tMaXN0QmFzZTo6c2NoZWR1bGVSZW1vdmVUcmFja0V2
ZW50KToKKyAgICAgICAgKFRyYWNrTGlzdEJhc2U6OnNjaGVkdWxlQ2hhbmdlRXZlbnQpOgorICAg
ICAgICAoVHJhY2tMaXN0QmFzZTo6YXN5bmNFdmVudFRpbWVyRmlyZWQpOgorICAgICAgICAqIGh0
bWwvdHJhY2svVHJhY2tMaXN0QmFzZS5oOiBDb3BpZWQgZnJvbSBTb3VyY2UvV2ViQ29yZS9odG1s
L3RyYWNrL1RleHRUcmFja0xpc3QuaC4KKyAgICAgICAgKFdlYkNvcmUpOgorICAgICAgICAoVHJh
Y2tMaXN0QmFzZSk6CisgICAgICAgIChXZWJDb3JlOjpUcmFja0xpc3RCYXNlOjpzY3JpcHRFeGVj
dXRpb25Db250ZXh0KToKKyAgICAgICAgKFdlYkNvcmU6OlRyYWNrTGlzdEJhc2U6OmNsZWFyT3du
ZXIpOgorICAgICAgICAoV2ViQ29yZTo6VHJhY2tMaXN0QmFzZTo6b3duZXIpOgorICAgICAgICAo
V2ViQ29yZTo6VHJhY2tMaXN0QmFzZTo6aXNGaXJpbmdFdmVudExpc3RlbmVycyk6CisgICAgICAg
IChXZWJDb3JlOjpUcmFja0xpc3RCYXNlOjpyZWZFdmVudFRhcmdldCk6CisgICAgICAgIChXZWJD
b3JlOjpUcmFja0xpc3RCYXNlOjpkZXJlZkV2ZW50VGFyZ2V0KToKKyAgICAgICAgKFdlYkNvcmU6
OlRyYWNrTGlzdEJhc2U6OmV2ZW50VGFyZ2V0RGF0YSk6CisgICAgICAgIChXZWJDb3JlOjpUcmFj
a0xpc3RCYXNlOjplbnN1cmVFdmVudFRhcmdldERhdGEpOgorICAgICAgICAqIHBsYXRmb3JtL2dy
YXBoaWNzL01lZGlhUGxheWVyLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6Ok1lZGlhUGxheWVyOjph
ZGRUZXh0VHJhY2spOgorICAgICAgICAoV2ViQ29yZTo6TWVkaWFQbGF5ZXI6OnJlbW92ZVRleHRU
cmFjayk6CisgICAgICAgICogcGxhdGZvcm0vZ3JhcGhpY3MvTWVkaWFQbGF5ZXIuaDoKKyAgICAg
ICAgKFdlYkNvcmU6Ok1lZGlhUGxheWVyQ2xpZW50OjptZWRpYVBsYXllckRpZEFkZFRleHRUcmFj
ayk6CisgICAgICAgIChXZWJDb3JlOjpNZWRpYVBsYXllckNsaWVudDo6bWVkaWFQbGF5ZXJEaWRS
ZW1vdmVUZXh0VHJhY2spOgorCiAyMDEzLTA0LTA5ICBCZW5qYW1pbiBQb3VsYWluICA8YnBvdWxh
aW5AYXBwbGUuY29tPgogCiAgICAgICAgIFJlbW92ZSBjaHJvbWl1bSBleGNlcHRpb25zIGZyb20g
V2ViQ29yZSdzIGdpdGF0dHJpYnV0ZXMKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL0NNYWtl
TGlzdHMudHh0IGIvU291cmNlL1dlYkNvcmUvQ01ha2VMaXN0cy50eHQKaW5kZXggNDYxODMyNWEz
Y2ZhY2VhYWQ2ZWFlNzczMGQ2ZWU3MDViYjkwODRhNS4uMTExMDE3YTFjMGY2NGRhY2JjODYyYjlm
YTY5NmY3MzRiOGFkZjdiMyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ01ha2VMaXN0cy50
eHQKKysrIGIvU291cmNlL1dlYkNvcmUvQ01ha2VMaXN0cy50eHQKQEAgLTU0OSwxMiArNTQ5LDYg
QEAgc2V0KFdlYkNvcmVfSURMX0ZJTEVTCiAgICAgaHRtbC9zaGFkb3cvSFRNTENvbnRlbnRFbGVt
ZW50LmlkbAogICAgIGh0bWwvc2hhZG93L0hUTUxTaGFkb3dFbGVtZW50LmlkbAogCi0gICAgaHRt
bC90cmFjay9UZXh0VHJhY2suaWRsCi0gICAgaHRtbC90cmFjay9UZXh0VHJhY2tDdWUuaWRsCi0g
ICAgaHRtbC90cmFjay9UZXh0VHJhY2tDdWVMaXN0LmlkbAotICAgIGh0bWwvdHJhY2svVGV4dFRy
YWNrTGlzdC5pZGwKLSAgICBodG1sL3RyYWNrL1RyYWNrRXZlbnQuaWRsCi0KICAgICBpbnNwZWN0
b3IvSW5qZWN0ZWRTY3JpcHRIb3N0LmlkbAogICAgIGluc3BlY3Rvci9JbnNwZWN0b3JGcm9udGVu
ZEhvc3QuaWRsCiAgICAgaW5zcGVjdG9yL0phdmFTY3JpcHRDYWxsRnJhbWUuaWRsCkBAIC0xNTkz
LDE5ICsxNTg3LDYgQEAgc2V0KFdlYkNvcmVfU09VUkNFUwogICAgIGh0bWwvc2hhZG93L1NwaW5C
dXR0b25FbGVtZW50LmNwcAogICAgIGh0bWwvc2hhZG93L1RleHRDb250cm9sSW5uZXJFbGVtZW50
cy5jcHAKIAotICAgIGh0bWwvdHJhY2svSW5iYW5kVGV4dFRyYWNrLmNwcAotICAgIGh0bWwvdHJh
Y2svTG9hZGFibGVUZXh0VHJhY2suY3BwCi0gICAgaHRtbC90cmFjay9UZXh0VHJhY2suY3BwCi0g
ICAgaHRtbC90cmFjay9UZXh0VHJhY2tDdWUuY3BwCi0gICAgaHRtbC90cmFjay9UZXh0VHJhY2tD
dWVHZW5lcmljLmNwcAotICAgIGh0bWwvdHJhY2svVGV4dFRyYWNrQ3VlTGlzdC5jcHAKLSAgICBo
dG1sL3RyYWNrL1RleHRUcmFja0xpc3QuY3BwCi0gICAgaHRtbC90cmFjay9UcmFja0Jhc2UuY3Bw
Ci0gICAgaHRtbC90cmFjay9UcmFja0V2ZW50LmNwcAotICAgIGh0bWwvdHJhY2svV2ViVlRURWxl
bWVudC5jcHAKLSAgICBodG1sL3RyYWNrL1dlYlZUVFBhcnNlci5jcHAKLSAgICBodG1sL3RyYWNr
L1dlYlZUVFRva2VuaXplci5jcHAKLQogICAgIGluc3BlY3Rvci9Db25zb2xlTWVzc2FnZS5jcHAK
ICAgICBpbnNwZWN0b3IvQ29udGVudFNlYXJjaFV0aWxzLmNwcAogICAgIGluc3BlY3Rvci9ET01F
ZGl0b3IuY3BwCkBAIC0xNzM4LDcgKzE3MTksNiBAQCBzZXQoV2ViQ29yZV9TT1VSQ0VTCiAgICAg
bG9hZGVyL2NhY2hlL0NhY2hlZFNjcmlwdC5jcHAKICAgICBsb2FkZXIvY2FjaGUvQ2FjaGVkU2hh
ZGVyLmNwcAogICAgIGxvYWRlci9jYWNoZS9DYWNoZWRTVkdEb2N1bWVudC5jcHAKLSAgICBsb2Fk
ZXIvY2FjaGUvQ2FjaGVkVGV4dFRyYWNrLmNwcAogICAgIGxvYWRlci9jYWNoZS9DYWNoZWRYU0xT
dHlsZVNoZWV0LmNwcAogICAgIGxvYWRlci9jYWNoZS9NZW1vcnlDYWNoZS5jcHAKIApAQCAtMjY5
Niw3ICsyNjc2LDMxIEBAIGlmIChFTkFCTEVfV0VCR0wpCiBlbmRpZiAoKQogCiBpZiAoRU5BQkxF
X1ZJREVPX1RSQUNLKQorICAgIGxpc3QoQVBQRU5EIFdlYkNvcmVfSURMX0ZJTEVTCisgICAgICAg
IGh0bWwvdHJhY2svVGV4dFRyYWNrLmlkbAorICAgICAgICBodG1sL3RyYWNrL1RleHRUcmFja0N1
ZS5pZGwKKyAgICAgICAgaHRtbC90cmFjay9UZXh0VHJhY2tDdWVMaXN0LmlkbAorICAgICAgICBo
dG1sL3RyYWNrL1RleHRUcmFja0xpc3QuaWRsCisgICAgICAgIGh0bWwvdHJhY2svVHJhY2tFdmVu
dC5pZGwKKyAgICApCisKICAgICBsaXN0KEFQUEVORCBXZWJDb3JlX1NPVVJDRVMKKyAgICAgICAg
aHRtbC90cmFjay9JbmJhbmRUZXh0VHJhY2suY3BwCisgICAgICAgIGh0bWwvdHJhY2svTG9hZGFi
bGVUZXh0VHJhY2suY3BwCisgICAgICAgIGh0bWwvdHJhY2svVGV4dFRyYWNrLmNwcAorICAgICAg
ICBodG1sL3RyYWNrL1RleHRUcmFja0N1ZS5jcHAKKyAgICAgICAgaHRtbC90cmFjay9UZXh0VHJh
Y2tDdWVHZW5lcmljLmNwcAorICAgICAgICBodG1sL3RyYWNrL1RleHRUcmFja0N1ZUxpc3QuY3Bw
CisgICAgICAgIGh0bWwvdHJhY2svVGV4dFRyYWNrTGlzdC5jcHAKKyAgICAgICAgaHRtbC90cmFj
ay9UcmFja0Jhc2UuY3BwCisgICAgICAgIGh0bWwvdHJhY2svVHJhY2tFdmVudC5jcHAKKyAgICAg
ICAgaHRtbC90cmFjay9UcmFja0xpc3RCYXNlLmNwcAorICAgICAgICBodG1sL3RyYWNrL1dlYlZU
VEVsZW1lbnQuY3BwCisgICAgICAgIGh0bWwvdHJhY2svV2ViVlRUUGFyc2VyLmNwcAorICAgICAg
ICBodG1sL3RyYWNrL1dlYlZUVFRva2VuaXplci5jcHAKKworICAgICAgICBsb2FkZXIvY2FjaGUv
Q2FjaGVkVGV4dFRyYWNrLmNwcAorCiAgICAgICAgIHBsYXRmb3JtL2dyYXBoaWNzL1RleHRUcmFj
a1JlcHJlc2VudGF0aW9uLmNwcAogICAgICkKIGVuZGlmICgpCmRpZmYgLS1naXQgYS9Tb3VyY2Uv
V2ViQ29yZS9UYXJnZXQucHJpIGIvU291cmNlL1dlYkNvcmUvVGFyZ2V0LnByaQppbmRleCBjOGE0
YTk0ZTU4Zjc2NTQ1MmRiZTA2NzYwNDgwNWE3M2Y2MGVlNzI4Li44NWU4NzYyZGE2ODNjMTU5MDI2
ZTRhMjhhMTdjYTliMmI0ZWE2NTBkIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9UYXJnZXQu
cHJpCisrKyBiL1NvdXJjZS9XZWJDb3JlL1RhcmdldC5wcmkKQEAgLTM5NzcsNiArMzk3Nyw3IEBA
IGVuYWJsZT8oVklERU9fVFJBQ0spIHsKICAgICAgICAgaHRtbC90cmFjay9UZXh0VHJhY2tMaXN0
LmggXAogICAgICAgICBodG1sL3RyYWNrL1RyYWNrQmFzZS5oIFwKICAgICAgICAgaHRtbC90cmFj
ay9UcmFja0V2ZW50LmggXAorICAgICAgICBodG1sL3RyYWNrL1RyYWNrTGlzdEJhc2UuaCBcCiAg
ICAgICAgIGh0bWwvdHJhY2svV2ViVlRUUGFyc2VyLmggXAogICAgICAgICBodG1sL3RyYWNrL1dl
YlZUVFRva2VuLmggXAogICAgICAgICBodG1sL3RyYWNrL1dlYlZUVFRva2VuaXplci5oIFwKQEAg
LTQwMDAsNiArNDAwMSw3IEBAIGVuYWJsZT8oVklERU9fVFJBQ0spIHsKICAgICAgICAgaHRtbC90
cmFjay9UZXh0VHJhY2tMaXN0LmNwcCBcCiAgICAgICAgIGh0bWwvdHJhY2svVHJhY2tCYXNlLmNw
cCBcCiAgICAgICAgIGh0bWwvdHJhY2svVHJhY2tFdmVudC5jcHAgXAorICAgICAgICBodG1sL3Ry
YWNrL1RyYWNrTGlzdEJhc2UuY3BwIFwKICAgICAgICAgaHRtbC90cmFjay9XZWJWVFRFbGVtZW50
LmNwcCBcCiAgICAgICAgIGh0bWwvdHJhY2svV2ViVlRUUGFyc2VyLmNwcCBcCiAgICAgICAgIGh0
bWwvdHJhY2svV2ViVlRUVG9rZW5pemVyLmNwcCBcCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29y
ZS9odG1sL0hUTUxNZWRpYUVsZW1lbnQuY3BwIGIvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MTWVk
aWFFbGVtZW50LmNwcAppbmRleCBkYTFhYjVhNWMyZTc4MTc0MzJiZmFhMzAxMWMwZTk4YzNkMmJj
NzkzLi44ZmM1YTA4YWY4YTAxNDliYWQ3YTViNzM1MGE0ZWJiMzAzNGIyNzc5IDEwMDY0NAotLS0g
YS9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxNZWRpYUVsZW1lbnQuY3BwCisrKyBiL1NvdXJjZS9X
ZWJDb3JlL2h0bWwvSFRNTE1lZGlhRWxlbWVudC5jcHAKQEAgLTI3OTIsNyArMjc5Miw3IEBAIGZs
b2F0IEhUTUxNZWRpYUVsZW1lbnQ6OnBlcmNlbnRMb2FkZWQoKSBjb25zdAogCiAjaWYgRU5BQkxF
KFZJREVPX1RSQUNLKQogCi12b2lkIEhUTUxNZWRpYUVsZW1lbnQ6Om1lZGlhUGxheWVyRGlkQWRk
VHJhY2soUGFzc1JlZlB0cjxJbmJhbmRUZXh0VHJhY2tQcml2YXRlPiBwcnBUcmFjaykKK3ZvaWQg
SFRNTE1lZGlhRWxlbWVudDo6bWVkaWFQbGF5ZXJEaWRBZGRUZXh0VHJhY2soUGFzc1JlZlB0cjxJ
bmJhbmRUZXh0VHJhY2tQcml2YXRlPiBwcnBUcmFjaykKIHsKICAgICBpZiAoIVJ1bnRpbWVFbmFi
bGVkRmVhdHVyZXM6OndlYmtpdFZpZGVvVHJhY2tFbmFibGVkKCkpCiAgICAgICAgIHJldHVybjsK
QEAgLTI4MjQsMTAgKzI4MjQsMTAgQEAgdm9pZCBIVE1MTWVkaWFFbGVtZW50OjptZWRpYVBsYXll
ckRpZEFkZFRyYWNrKFBhc3NSZWZQdHI8SW5iYW5kVGV4dFRyYWNrUHJpdmF0ZT4KICAgICAvLyA5
LiBGaXJlIGFuIGV2ZW50IHdpdGggdGhlIG5hbWUgYWRkdHJhY2ssIHRoYXQgZG9lcyBub3QgYnVi
YmxlIGFuZCBpcyBub3QgY2FuY2VsYWJsZSwgYW5kIHRoYXQgdXNlcyB0aGUgVHJhY2tFdmVudAog
ICAgIC8vIGludGVyZmFjZSwgd2l0aCB0aGUgdHJhY2sgYXR0cmlidXRlIGluaXRpYWxpemVkIHRv
IHRoZSB0ZXh0IHRyYWNrJ3MgVGV4dFRyYWNrIG9iamVjdCwgYXQgdGhlIG1lZGlhIGVsZW1lbnQn
cwogICAgIC8vIHRleHRUcmFja3MgYXR0cmlidXRlJ3MgVGV4dFRyYWNrTGlzdCBvYmplY3QuCi0g
ICAgYWRkVHJhY2sodGV4dFRyYWNrLmdldCgpKTsKKyAgICBhZGRUZXh0VHJhY2sodGV4dFRyYWNr
LmdldCgpKTsKIH0KIAotdm9pZCBIVE1MTWVkaWFFbGVtZW50OjptZWRpYVBsYXllckRpZFJlbW92
ZVRyYWNrKFBhc3NSZWZQdHI8SW5iYW5kVGV4dFRyYWNrUHJpdmF0ZT4gcHJwVHJhY2spCit2b2lk
IEhUTUxNZWRpYUVsZW1lbnQ6Om1lZGlhUGxheWVyRGlkUmVtb3ZlVGV4dFRyYWNrKFBhc3NSZWZQ
dHI8SW5iYW5kVGV4dFRyYWNrUHJpdmF0ZT4gcHJwVHJhY2spCiB7CiAgICAgaWYgKCFSdW50aW1l
RW5hYmxlZEZlYXR1cmVzOjp3ZWJraXRWaWRlb1RyYWNrRW5hYmxlZCgpKQogICAgICAgICByZXR1
cm47CkBAIC0yODM2LDEyICsyODM2LDEyIEBAIHZvaWQgSFRNTE1lZGlhRWxlbWVudDo6bWVkaWFQ
bGF5ZXJEaWRSZW1vdmVUcmFjayhQYXNzUmVmUHRyPEluYmFuZFRleHRUcmFja1ByaXZhCiAgICAg
ICAgIHJldHVybjsKIAogICAgIC8vIFRoaXMgY2FzdCBpcyBzYWZlIGJlY2F1c2Ugd2UgY3JlYXRl
ZCB0aGUgSW5iYW5kVGV4dFRyYWNrIHdpdGggdGhlIEluYmFuZFRleHRUcmFja1ByaXZhdGUKLSAg
ICAvLyBwYXNzZWQgdG8gbWVkaWFQbGF5ZXJEaWRBZGRUcmFjay4KKyAgICAvLyBwYXNzZWQgdG8g
bWVkaWFQbGF5ZXJEaWRBZGRUZXh0VHJhY2suCiAgICAgUmVmUHRyPEluYmFuZFRleHRUcmFjaz4g
dGV4dFRyYWNrID0gc3RhdGljX2Nhc3Q8SW5iYW5kVGV4dFRyYWNrKj4ocHJwVHJhY2stPmNsaWVu
dCgpKTsKICAgICBpZiAoIXRleHRUcmFjaykKICAgICAgICAgcmV0dXJuOwogCi0gICAgcmVtb3Zl
VHJhY2sodGV4dFRyYWNrLmdldCgpKTsKKyAgICByZW1vdmVUZXh0VHJhY2sodGV4dFRyYWNrLmdl
dCgpKTsKIH0KIAogI2lmIFVTRShQTEFURk9STV9URVhUX1RSQUNLX01FTlUpCkBAIC0yOTIwLDE0
ICsyOTIwLDE0IEBAIHZvaWQgSFRNTE1lZGlhRWxlbWVudDo6Y2xvc2VDYXB0aW9uVHJhY2tzQ2hh
bmdlZCgpCiAjZW5kaWYKIH0KIAotdm9pZCBIVE1MTWVkaWFFbGVtZW50OjphZGRUcmFjayhUZXh0
VHJhY2sqIHRyYWNrKQordm9pZCBIVE1MTWVkaWFFbGVtZW50OjphZGRUZXh0VHJhY2soVGV4dFRy
YWNrKiB0cmFjaykKIHsKICAgICB0ZXh0VHJhY2tzKCktPmFwcGVuZCh0cmFjayk7CiAgICAgCiAg
ICAgY2xvc2VDYXB0aW9uVHJhY2tzQ2hhbmdlZCgpOwogfQogCi12b2lkIEhUTUxNZWRpYUVsZW1l
bnQ6OnJlbW92ZVRyYWNrKFRleHRUcmFjayogdHJhY2spCit2b2lkIEhUTUxNZWRpYUVsZW1lbnQ6
OnJlbW92ZVRleHRUcmFjayhUZXh0VHJhY2sqIHRyYWNrKQogewogICAgIFRyYWNrRGlzcGxheVVw
ZGF0ZVNjb3BlIHNjb3BlKHRoaXMpOwogICAgIFRleHRUcmFja0N1ZUxpc3QqIGN1ZXMgPSB0cmFj
ay0+Y3VlcygpOwpAQCAtMjk0OCw3ICsyOTQ4LDcgQEAgdm9pZCBIVE1MTWVkaWFFbGVtZW50Ojpy
ZW1vdmVBbGxJbmJhbmRUcmFja3MoKQogICAgICAgICBUZXh0VHJhY2sqIHRyYWNrID0gbV90ZXh0
VHJhY2tzLT5pdGVtKGkpOwogCiAgICAgICAgIGlmICh0cmFjay0+dHJhY2tUeXBlKCkgPT0gVGV4
dFRyYWNrOjpJbkJhbmQpCi0gICAgICAgICAgICByZW1vdmVUcmFjayh0cmFjayk7CisgICAgICAg
ICAgICByZW1vdmVUZXh0VHJhY2sodHJhY2spOwogICAgIH0KIH0KIApAQCAtMjk3OCw3ICsyOTc4
LDcgQEAgUGFzc1JlZlB0cjxUZXh0VHJhY2s+IEhUTUxNZWRpYUVsZW1lbnQ6OmFkZFRleHRUcmFj
ayhjb25zdCBTdHJpbmcmIGtpbmQsIGNvbnN0IFMKICAgICAvLyBmaXJzdCBhcHBlbmQgdGhlIHRy
YWNrIHRvIHRoZSB0ZXh0IHRyYWNrIGxpc3QuCiAKICAgICAvLyA2LiBBZGQgdGhlIG5ldyB0ZXh0
IHRyYWNrIHRvIHRoZSBtZWRpYSBlbGVtZW50J3MgbGlzdCBvZiB0ZXh0IHRyYWNrcy4KLSAgICBh
ZGRUcmFjayh0ZXh0VHJhY2suZ2V0KCkpOworICAgIGFkZFRleHRUcmFjayh0ZXh0VHJhY2suZ2V0
KCkpOwogCiAgICAgLy8gLi4uIGl0cyB0ZXh0IHRyYWNrIHJlYWRpbmVzcyBzdGF0ZSB0byB0aGUg
dGV4dCB0cmFjayBsb2FkZWQgc3RhdGUgLi4uCiAgICAgdGV4dFRyYWNrLT5zZXRSZWFkaW5lc3NT
dGF0ZShUZXh0VHJhY2s6OkxvYWRlZCk7CkBAIC0zMDAwLDcgKzMwMDAsNyBAQCBUZXh0VHJhY2tM
aXN0KiBIVE1MTWVkaWFFbGVtZW50Ojp0ZXh0VHJhY2tzKCkKICAgICByZXR1cm4gbV90ZXh0VHJh
Y2tzLmdldCgpOwogfQogCi12b2lkIEhUTUxNZWRpYUVsZW1lbnQ6OmRpZEFkZFRyYWNrKEhUTUxU
cmFja0VsZW1lbnQqIHRyYWNrRWxlbWVudCkKK3ZvaWQgSFRNTE1lZGlhRWxlbWVudDo6ZGlkQWRk
VGV4dFRyYWNrKEhUTUxUcmFja0VsZW1lbnQqIHRyYWNrRWxlbWVudCkKIHsKICAgICBBU1NFUlQo
dHJhY2tFbGVtZW50LT5oYXNUYWdOYW1lKHRyYWNrVGFnKSk7CiAKQEAgLTMwMTUsNyArMzAxNSw3
IEBAIHZvaWQgSFRNTE1lZGlhRWxlbWVudDo6ZGlkQWRkVHJhY2soSFRNTFRyYWNrRWxlbWVudCog
dHJhY2tFbGVtZW50KQogICAgIGlmICghdGV4dFRyYWNrKQogICAgICAgICByZXR1cm47CiAgICAg
Ci0gICAgYWRkVHJhY2sodGV4dFRyYWNrLmdldCgpKTsKKyAgICBhZGRUZXh0VHJhY2sodGV4dFRy
YWNrLmdldCgpKTsKICAgICAKICAgICAvLyBEbyBub3Qgc2NoZWR1bGUgdGhlIHRyYWNrIGxvYWRp
bmcgdW50aWwgcGFyc2luZyBmaW5pc2hlcyBzbyB3ZSBkb24ndCBzdGFydCBiZWZvcmUgYWxsIHRy
YWNrcwogICAgIC8vIGluIHRoZSBtYXJrdXAgaGF2ZSBiZWVuIGFkZGVkLgpAQCAtMzAyNiw3ICsz
MDI2LDcgQEAgdm9pZCBIVE1MTWVkaWFFbGVtZW50OjpkaWRBZGRUcmFjayhIVE1MVHJhY2tFbGVt
ZW50KiB0cmFja0VsZW1lbnQpCiAgICAgICAgIG1lZGlhQ29udHJvbHMoKS0+Y2xvc2VkQ2FwdGlv
blRyYWNrc0NoYW5nZWQoKTsKIH0KIAotdm9pZCBIVE1MTWVkaWFFbGVtZW50OjpkaWRSZW1vdmVU
cmFjayhIVE1MVHJhY2tFbGVtZW50KiB0cmFja0VsZW1lbnQpCit2b2lkIEhUTUxNZWRpYUVsZW1l
bnQ6OmRpZFJlbW92ZVRleHRUcmFjayhIVE1MVHJhY2tFbGVtZW50KiB0cmFja0VsZW1lbnQpCiB7
CiAgICAgQVNTRVJUKHRyYWNrRWxlbWVudC0+aGFzVGFnTmFtZSh0cmFja1RhZykpOwogCkBAIC0z
MDUzLDcgKzMwNTMsNyBAQCB2b2lkIEhUTUxNZWRpYUVsZW1lbnQ6OmRpZFJlbW92ZVRyYWNrKEhU
TUxUcmFja0VsZW1lbnQqIHRyYWNrRWxlbWVudCkKICAgICAvLyBXaGVuIGEgdHJhY2sgZWxlbWVu
dCdzIHBhcmVudCBlbGVtZW50IGNoYW5nZXMgYW5kIHRoZSBvbGQgcGFyZW50IHdhcyBhIG1lZGlh
IGVsZW1lbnQsIAogICAgIC8vIHRoZW4gdGhlIHVzZXIgYWdlbnQgbXVzdCByZW1vdmUgdGhlIHRy
YWNrIGVsZW1lbnQncyBjb3JyZXNwb25kaW5nIHRleHQgdHJhY2sgZnJvbSB0aGUgCiAgICAgLy8g
bWVkaWEgZWxlbWVudCdzIGxpc3Qgb2YgdGV4dCB0cmFja3MuCi0gICAgcmVtb3ZlVHJhY2sodGV4
dFRyYWNrLmdldCgpKTsKKyAgICByZW1vdmVUZXh0VHJhY2sodGV4dFRyYWNrLmdldCgpKTsKIAog
ICAgIHNpemVfdCBpbmRleCA9IG1fdGV4dFRyYWNrc1doZW5SZXNvdXJjZVNlbGVjdGlvbkJlZ2Fu
LmZpbmQodGV4dFRyYWNrLmdldCgpKTsKICAgICBpZiAoaW5kZXggIT0gbm90Rm91bmQpCmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxNZWRpYUVsZW1lbnQuaCBiL1NvdXJjZS9X
ZWJDb3JlL2h0bWwvSFRNTE1lZGlhRWxlbWVudC5oCmluZGV4IGNhMDE2YzA3ZDQ2ZmYyMTM3ZmEw
ZTFhYTg2NzMyNDNiZDEyN2UxOGMuLmJjNzVkMWVlMzQ2YmMxYTgxNTNmMzI5NDNhOGVkMjUxMmZl
MWJhOWMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTE1lZGlhRWxlbWVudC5o
CisrKyBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTE1lZGlhRWxlbWVudC5oCkBAIC01OCw3ICs1
OCw2IEBAIGNsYXNzIE1lZGlhQ29udHJvbGxlcjsKIGNsYXNzIE1lZGlhQ29udHJvbHM7CiBjbGFz
cyBNZWRpYUVycm9yOwogY2xhc3MgS1VSTDsKLWNsYXNzIFRleHRUcmFja0xpc3Q7CiBjbGFzcyBU
aW1lUmFuZ2VzOwogI2lmIEVOQUJMRShQTFVHSU5fUFJPWFlfRk9SX1ZJREVPKQogY2xhc3MgV2lk
Z2V0OwpAQCAtNzIsNiArNzEsNyBAQCBjbGFzcyBNZWRpYUtleXM7CiAKICNpZiBFTkFCTEUoVklE
RU9fVFJBQ0spCiBjbGFzcyBJbmJhbmRUZXh0VHJhY2tQcml2YXRlOworY2xhc3MgVGV4dFRyYWNr
TGlzdDsKIAogdHlwZWRlZiBQT0RJbnRlcnZhbFRyZWU8ZG91YmxlLCBUZXh0VHJhY2tDdWUqPiBD
dWVJbnRlcnZhbFRyZWU7CiB0eXBlZGVmIEN1ZUludGVydmFsVHJlZTo6SW50ZXJ2YWxUeXBlIEN1
ZUludGVydmFsOwpAQCAtMjI5LDE3ICsyMjksMTcgQEAgcHVibGljOgogICAgIFRleHRUcmFja0xp
c3QqIHRleHRUcmFja3MoKTsKICAgICBDdWVMaXN0IGN1cnJlbnRseUFjdGl2ZUN1ZXMoKSBjb25z
dCB7IHJldHVybiBtX2N1cnJlbnRseUFjdGl2ZUN1ZXM7IH0KIAotICAgIHZvaWQgYWRkVHJhY2so
VGV4dFRyYWNrKik7Ci0gICAgdm9pZCByZW1vdmVUcmFjayhUZXh0VHJhY2sqKTsKKyAgICB2b2lk
IGFkZFRleHRUcmFjayhUZXh0VHJhY2sqKTsKKyAgICB2b2lkIHJlbW92ZVRleHRUcmFjayhUZXh0
VHJhY2sqKTsKICAgICB2b2lkIHJlbW92ZUFsbEluYmFuZFRyYWNrcygpOwogICAgIHZvaWQgY2xv
c2VDYXB0aW9uVHJhY2tzQ2hhbmdlZCgpOwogICAgIHZvaWQgbm90aWZ5TWVkaWFQbGF5ZXJPZlRl
eHRUcmFja0NoYW5nZXMoKTsKIAotICAgIHZpcnR1YWwgdm9pZCBkaWRBZGRUcmFjayhIVE1MVHJh
Y2tFbGVtZW50Kik7Ci0gICAgdmlydHVhbCB2b2lkIGRpZFJlbW92ZVRyYWNrKEhUTUxUcmFja0Vs
ZW1lbnQqKTsKKyAgICB2aXJ0dWFsIHZvaWQgZGlkQWRkVGV4dFRyYWNrKEhUTUxUcmFja0VsZW1l
bnQqKTsKKyAgICB2aXJ0dWFsIHZvaWQgZGlkUmVtb3ZlVGV4dFRyYWNrKEhUTUxUcmFja0VsZW1l
bnQqKTsKIAotICAgIHZpcnR1YWwgdm9pZCBtZWRpYVBsYXllckRpZEFkZFRyYWNrKFBhc3NSZWZQ
dHI8SW5iYW5kVGV4dFRyYWNrUHJpdmF0ZT4pIE9WRVJSSURFOwotICAgIHZpcnR1YWwgdm9pZCBt
ZWRpYVBsYXllckRpZFJlbW92ZVRyYWNrKFBhc3NSZWZQdHI8SW5iYW5kVGV4dFRyYWNrUHJpdmF0
ZT4pIE9WRVJSSURFOworICAgIHZpcnR1YWwgdm9pZCBtZWRpYVBsYXllckRpZEFkZFRleHRUcmFj
ayhQYXNzUmVmUHRyPEluYmFuZFRleHRUcmFja1ByaXZhdGU+KSBPVkVSUklERTsKKyAgICB2aXJ0
dWFsIHZvaWQgbWVkaWFQbGF5ZXJEaWRSZW1vdmVUZXh0VHJhY2soUGFzc1JlZlB0cjxJbmJhbmRU
ZXh0VHJhY2tQcml2YXRlPikgT1ZFUlJJREU7CiAKICNpZiBVU0UoUExBVEZPUk1fVEVYVF9UUkFD
S19NRU5VKQogICAgIHZpcnR1YWwgdm9pZCBzZXRTZWxlY3RlZFRleHRUcmFjayhQYXNzUmVmUHRy
PFBsYXRmb3JtVGV4dFRyYWNrPikgT1ZFUlJJREU7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29y
ZS9odG1sL0hUTUxUcmFja0VsZW1lbnQuY3BwIGIvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MVHJh
Y2tFbGVtZW50LmNwcAppbmRleCBmYmJiM2U4NWUwZGE2NzgwMTFhZjg0ZWZjOWE1Nzk5YzYzZjQ2
M2Q0Li4wMTA1ODU1ZmNmMjU3MTk3NDljNTE2MDhiNDY0OTJhMjAxYWMxMzAyIDEwMDY0NAotLS0g
YS9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxUcmFja0VsZW1lbnQuY3BwCisrKyBiL1NvdXJjZS9X
ZWJDb3JlL2h0bWwvSFRNTFRyYWNrRWxlbWVudC5jcHAKQEAgLTgwLDE0ICs4MCwxNCBAQCBOb2Rl
OjpJbnNlcnRpb25Ob3RpZmljYXRpb25SZXF1ZXN0IEhUTUxUcmFja0VsZW1lbnQ6Omluc2VydGVk
SW50byhDb250YWluZXJOb2RlKgogICAgIEhUTUxFbGVtZW50OjppbnNlcnRlZEludG8oaW5zZXJ0
aW9uUG9pbnQpOwogICAgIEhUTUxNZWRpYUVsZW1lbnQqIHBhcmVudCA9IG1lZGlhRWxlbWVudCgp
OwogICAgIGlmIChpbnNlcnRpb25Qb2ludCA9PSBwYXJlbnQpCi0gICAgICAgIHBhcmVudC0+ZGlk
QWRkVHJhY2sodGhpcyk7CisgICAgICAgIHBhcmVudC0+ZGlkQWRkVGV4dFRyYWNrKHRoaXMpOwog
ICAgIHJldHVybiBJbnNlcnRpb25Eb25lOwogfQogCiB2b2lkIEhUTUxUcmFja0VsZW1lbnQ6OnJl
bW92ZWRGcm9tKENvbnRhaW5lck5vZGUqIGluc2VydGlvblBvaW50KQogewogICAgIGlmICghcGFy
ZW50Tm9kZSgpICYmIFdlYkNvcmU6OmlzTWVkaWFFbGVtZW50KGluc2VydGlvblBvaW50KSkKLSAg
ICAgICAgdG9NZWRpYUVsZW1lbnQoaW5zZXJ0aW9uUG9pbnQpLT5kaWRSZW1vdmVUcmFjayh0aGlz
KTsKKyAgICAgICAgdG9NZWRpYUVsZW1lbnQoaW5zZXJ0aW9uUG9pbnQpLT5kaWRSZW1vdmVUZXh0
VHJhY2sodGhpcyk7CiAgICAgSFRNTEVsZW1lbnQ6OnJlbW92ZWRGcm9tKGluc2VydGlvblBvaW50
KTsKIH0KIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvaHRtbC90cmFjay9UZXh0VHJhY2su
Y3BwIGIvU291cmNlL1dlYkNvcmUvaHRtbC90cmFjay9UZXh0VHJhY2suY3BwCmluZGV4IDNjMjc0
YjFlMTRiOWI5MDYxZmQ4N2Y0MmY4NmFiYTIyZTVjODg0MTAuLjhlMDNmOGUyYWQyNjMwMTQ0MzIw
NTVkMjliM2Y5MjNkOTdkN2IwZjcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvdHJh
Y2svVGV4dFRyYWNrLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL3RyYWNrL1RleHRUcmFj
ay5jcHAKQEAgLTEwOCwxNCArMTA4LDEyIEBAIFRleHRUcmFjayogVGV4dFRyYWNrOjpjYXB0aW9u
TWVudUF1dG9tYXRpY0l0ZW0oKQogfQogCiBUZXh0VHJhY2s6OlRleHRUcmFjayhTY3JpcHRFeGVj
dXRpb25Db250ZXh0KiBjb250ZXh0LCBUZXh0VHJhY2tDbGllbnQqIGNsaWVudCwgY29uc3QgQXRv
bWljU3RyaW5nJiBraW5kLCBjb25zdCBBdG9taWNTdHJpbmcmIGxhYmVsLCBjb25zdCBBdG9taWNT
dHJpbmcmIGxhbmd1YWdlLCBUZXh0VHJhY2tUeXBlIHR5cGUpCi0gICAgOiBUcmFja0Jhc2UoY29u
dGV4dCwgVHJhY2tCYXNlOjpUZXh0VHJhY2spCisgICAgOiBUcmFja0Jhc2UoVHJhY2tCYXNlOjpU
ZXh0VHJhY2ssIGxhYmVsLCBsYW5ndWFnZSkKICAgICAsIG1fY3VlcygwKQorICAgICwgbV9zY3Jp
cHRFeGVjdXRpb25Db250ZXh0KGNvbnRleHQpCiAjaWYgRU5BQkxFKFdFQlZUVF9SRUdJT05TKQog
ICAgICwgbV9yZWdpb25zKDApCiAjZW5kaWYKLSAgICAsIG1fbWVkaWFFbGVtZW50KDApCi0gICAg
LCBtX2xhYmVsKGxhYmVsKQotICAgICwgbV9sYW5ndWFnZShsYW5ndWFnZSkKICAgICAsIG1fbW9k
ZShkaXNhYmxlZEtleXdvcmQoKS5zdHJpbmcoKSkKICAgICAsIG1fY2xpZW50KGNsaWVudCkKICAg
ICAsIG1fdHJhY2tUeXBlKHR5cGUpCkBAIC0xNDMsNiArMTQxLDMxIEBAIFRleHRUcmFjazo6flRl
eHRUcmFjaygpCiAgICAgY2xlYXJDbGllbnQoKTsKIH0KIAorY29uc3QgQXRvbWljU3RyaW5nJiBU
ZXh0VHJhY2s6OmludGVyZmFjZU5hbWUoKSBjb25zdAoreworICAgIHJldHVybiBldmVudE5hbWVz
KCkuaW50ZXJmYWNlRm9yVGV4dFRyYWNrOworfQorCitTY3JpcHRFeGVjdXRpb25Db250ZXh0KiBU
ZXh0VHJhY2s6OnNjcmlwdEV4ZWN1dGlvbkNvbnRleHQoKSBjb25zdAoreworICAgIHJldHVybiBt
X3NjcmlwdEV4ZWN1dGlvbkNvbnRleHQ7Cit9CisKK0V2ZW50VGFyZ2V0RGF0YSogVGV4dFRyYWNr
OjpldmVudFRhcmdldERhdGEoKQoreworICAgIHJldHVybiAmbV9ldmVudFRhcmdldERhdGE7Cit9
CisKK0V2ZW50VGFyZ2V0RGF0YSogVGV4dFRyYWNrOjplbnN1cmVFdmVudFRhcmdldERhdGEoKQor
eworICAgIHJldHVybiAmbV9ldmVudFRhcmdldERhdGE7Cit9CisKK2Jvb2wgVGV4dFRyYWNrOjpp
c1ZhbGlkS2luZChjb25zdCBBdG9taWNTdHJpbmcmIHZhbHVlKSBjb25zdAoreworICAgIHJldHVy
biBUZXh0VHJhY2s6OmlzVmFsaWRLaW5kS2V5d29yZCh2YWx1ZSk7Cit9CisKIGJvb2wgVGV4dFRy
YWNrOjppc1ZhbGlkS2luZEtleXdvcmQoY29uc3QgQXRvbWljU3RyaW5nJiB2YWx1ZSkKIHsKICAg
ICBpZiAodmFsdWUgPT0gc3VidGl0bGVzS2V5d29yZCgpKQpAQCAtMTU5LDE2ICsxODIsMTMgQEAg
Ym9vbCBUZXh0VHJhY2s6OmlzVmFsaWRLaW5kS2V5d29yZChjb25zdCBBdG9taWNTdHJpbmcmIHZh
bHVlKQogICAgIHJldHVybiBmYWxzZTsKIH0KIAotdm9pZCBUZXh0VHJhY2s6OnNldEtpbmQoY29u
c3QgQXRvbWljU3RyaW5nJiBraW5kKQordm9pZCBUZXh0VHJhY2s6OnNldEtpbmQoY29uc3QgQXRv
bWljU3RyaW5nJiBuZXdLaW5kKQogewotICAgIFN0cmluZyBvbGRLaW5kID0gbV9raW5kOworICAg
IFN0cmluZyBvbGRLaW5kID0ga2luZCgpOwogCi0gICAgaWYgKGlzVmFsaWRLaW5kS2V5d29yZChr
aW5kKSkKLSAgICAgICAgbV9raW5kID0ga2luZDsKLSAgICBlbHNlCi0gICAgICAgIG1fa2luZCA9
IHN1YnRpdGxlc0tleXdvcmQoKTsKKyAgICBUcmFja0Jhc2U6OnNldEtpbmQobmV3S2luZCk7CiAK
LSAgICBpZiAobV9jbGllbnQgJiYgb2xkS2luZCAhPSBtX2tpbmQpCisgICAgaWYgKG1fY2xpZW50
ICYmIG9sZEtpbmQgIT0ga2luZCgpKQogICAgICAgICBtX2NsaWVudC0+dGV4dFRyYWNrS2luZENo
YW5nZWQodGhpcyk7CiB9CiAKQEAgLTQxMSw3ICs0MzEsNyBAQCB2b2lkIFRleHRUcmFjazo6aW52
YWxpZGF0ZVRyYWNrSW5kZXgoKQogCiBib29sIFRleHRUcmFjazo6aXNSZW5kZXJlZCgpCiB7Ci0g
ICAgaWYgKG1fa2luZCAhPSBjYXB0aW9uc0tleXdvcmQoKSAmJiBtX2tpbmQgIT0gc3VidGl0bGVz
S2V5d29yZCgpKQorICAgIGlmIChraW5kKCkgIT0gY2FwdGlvbnNLZXl3b3JkKCkgJiYga2luZCgp
ICE9IHN1YnRpdGxlc0tleXdvcmQoKSkKICAgICAgICAgcmV0dXJuIGZhbHNlOwogCiAgICAgaWYg
KG1fbW9kZSAhPSBzaG93aW5nS2V5d29yZCgpKQpAQCAtNTAyLDE3ICs1MjIsMTcgQEAgUGFzc1Jl
ZlB0cjxQbGF0Zm9ybVRleHRUcmFjaz4gVGV4dFRyYWNrOjpwbGF0Zm9ybVRleHRUcmFjaygpCiAg
ICAgaWYgKG1fcGxhdGZvcm1UZXh0VHJhY2spCiAgICAgICAgIHJldHVybiBtX3BsYXRmb3JtVGV4
dFRyYWNrOwogCi0gICAgUGxhdGZvcm1UZXh0VHJhY2s6OlRyYWNrS2luZCBraW5kID0gUGxhdGZv
cm1UZXh0VHJhY2s6OkNhcHRpb247Ci0gICAgaWYgKG1fa2luZCA9PSBzdWJ0aXRsZXNLZXl3b3Jk
KCkpCi0gICAgICAgIGtpbmQgPSBQbGF0Zm9ybVRleHRUcmFjazo6U3VidGl0bGU7Ci0gICAgZWxz
ZSBpZiAobV9raW5kID09IGNhcHRpb25zS2V5d29yZCgpKQotICAgICAgICBraW5kID0gUGxhdGZv
cm1UZXh0VHJhY2s6OkNhcHRpb247Ci0gICAgZWxzZSBpZiAobV9raW5kID09IGRlc2NyaXB0aW9u
c0tleXdvcmQoKSkKLSAgICAgICAga2luZCA9IFBsYXRmb3JtVGV4dFRyYWNrOjpEZXNjcmlwdGlv
bjsKLSAgICBlbHNlIGlmIChtX2tpbmQgPT0gY2hhcHRlcnNLZXl3b3JkKCkpCi0gICAgICAgIGtp
bmQgPSBQbGF0Zm9ybVRleHRUcmFjazo6Q2hhcHRlcjsKLSAgICBlbHNlIGlmIChtX2tpbmQgPT0g
bWV0YWRhdGFLZXl3b3JkKCkpCi0gICAgICAgIGtpbmQgPSBQbGF0Zm9ybVRleHRUcmFjazo6TWV0
YURhdGE7CisgICAgUGxhdGZvcm1UZXh0VHJhY2s6OlRyYWNrS2luZCBwbGF0Zm9ybUtpbmQgPSBQ
bGF0Zm9ybVRleHRUcmFjazo6Q2FwdGlvbjsKKyAgICBpZiAoa2luZCgpID09IHN1YnRpdGxlc0tl
eXdvcmQoKSkKKyAgICAgICAgcGxhdGZvcm1LaW5kID0gUGxhdGZvcm1UZXh0VHJhY2s6OlN1YnRp
dGxlOworICAgIGVsc2UgaWYgKGtpbmQoKSA9PSBjYXB0aW9uc0tleXdvcmQoKSkKKyAgICAgICAg
cGxhdGZvcm1LaW5kID0gUGxhdGZvcm1UZXh0VHJhY2s6OkNhcHRpb247CisgICAgZWxzZSBpZiAo
a2luZCgpID09IGRlc2NyaXB0aW9uc0tleXdvcmQoKSkKKyAgICAgICAgcGxhdGZvcm1LaW5kID0g
UGxhdGZvcm1UZXh0VHJhY2s6OkRlc2NyaXB0aW9uOworICAgIGVsc2UgaWYgKGtpbmQoKSA9PSBj
aGFwdGVyc0tleXdvcmQoKSkKKyAgICAgICAgcGxhdGZvcm1LaW5kID0gUGxhdGZvcm1UZXh0VHJh
Y2s6OkNoYXB0ZXI7CisgICAgZWxzZSBpZiAoa2luZCgpID09IG1ldGFkYXRhS2V5d29yZCgpKQor
ICAgICAgICBwbGF0Zm9ybUtpbmQgPSBQbGF0Zm9ybVRleHRUcmFjazo6TWV0YURhdGE7CiAKICAg
ICBQbGF0Zm9ybVRleHRUcmFjazo6VHJhY2tUeXBlIHR5cGUgPSBQbGF0Zm9ybVRleHRUcmFjazo6
T3V0T2ZCYW5kOwogICAgIGlmIChtX3RyYWNrVHlwZSA9PSBUcmFja0VsZW1lbnQpCkBAIC01MjIs
NyArNTQyLDcgQEAgUGFzc1JlZlB0cjxQbGF0Zm9ybVRleHRUcmFjaz4gVGV4dFRyYWNrOjpwbGF0
Zm9ybVRleHRUcmFjaygpCiAgICAgZWxzZSBpZiAobV90cmFja1R5cGUgPT0gSW5CYW5kKQogICAg
ICAgICB0eXBlID0gUGxhdGZvcm1UZXh0VHJhY2s6OkluQmFuZDsKIAotICAgIG1fcGxhdGZvcm1U
ZXh0VHJhY2sgPSBQbGF0Zm9ybVRleHRUcmFjazo6Y3JlYXRlKHRoaXMsIG1fbGFiZWwsIG1fbGFu
Z3VhZ2UsIGtpbmQsIHR5cGUpOworICAgIG1fcGxhdGZvcm1UZXh0VHJhY2sgPSBQbGF0Zm9ybVRl
eHRUcmFjazo6Y3JlYXRlKHRoaXMsIGxhYmVsKCksIGxhbmd1YWdlKCksIHBsYXRmb3JtS2luZCwg
dHlwZSk7CiAKICAgICByZXR1cm4gbV9wbGF0Zm9ybVRleHRUcmFjazsKIH0KQEAgLTUzNCw3ICs1
NTQsNyBAQCBib29sIFRleHRUcmFjazo6aXNNYWluUHJvZ3JhbUNvbnRlbnQoKSBjb25zdAogICAg
IC8vIGRpcmVjdG9ycyBjb21tZW50YXJ5IGlzIG5vdCAibWFpbiBwcm9ncmFtIiBiZWNhdXNlIGl0
IGlzIG5vdCBlc3NlbnRpYWwgZm9yIHRoZSBwcmVzZW50YXRpb24uIEhUTUw1IGRvZXNuJ3QgaGF2
ZQogICAgIC8vIGEgd2F5IHRvIGV4cHJlc3MgdGhpcyBpbiBhIG1hY2hpbmUtcmVhYmxlIGZvcm0s
IGl0IGlzIHR5cGljYWxseSBkb25lIHdpdGggdGhlIHRyYWNrIGxhYmVsLCBzbyB3ZSBhc3N1bWUg
dGhhdCBjYXB0aW9uCiAgICAgLy8gdHJhY2tzIGFyZSBtYWluIGNvbnRlbnQgYW5kIGFsbCBvdGhl
ciB0cmFjayB0eXBlcyBhcmUgbm90LgotICAgIHJldHVybiBtX2tpbmQgPT0gY2FwdGlvbnNLZXl3
b3JkKCk7CisgICAgcmV0dXJuIGtpbmQoKSA9PSBjYXB0aW9uc0tleXdvcmQoKTsKIH0KIAogfSAv
LyBuYW1lc3BhY2UgV2ViQ29yZQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvaHRtbC90cmFj
ay9UZXh0VHJhY2suaCBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvdHJhY2svVGV4dFRyYWNrLmgKaW5k
ZXggNTc2OTQ1YmJlNTIxY2Q2YTJmNmZmZmZkMzdlNTZhZDY2NzI2MGZmMy4uNGJhMzBlNzU2NTU0
NWYwNjdiZjkxYmI2OTRiYjM2MTdmZWU3ZmUxMyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUv
aHRtbC90cmFjay9UZXh0VHJhY2suaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL3RyYWNrL1Rl
eHRUcmFjay5oCkBAIC00MSw3ICs0MSw3IEBACiAKIG5hbWVzcGFjZSBXZWJDb3JlIHsKIAotY2xh
c3MgSFRNTE1lZGlhRWxlbWVudDsKK2NsYXNzIFNjcmlwdEV4ZWN1dGlvbkNvbnRleHQ7CiBjbGFz
cyBUZXh0VHJhY2s7CiBjbGFzcyBUZXh0VHJhY2tDdWU7CiBjbGFzcyBUZXh0VHJhY2tDdWVMaXN0
OwpAQCAtNjEsNyArNjEsNyBAQCBwdWJsaWM6CiAgICAgdmlydHVhbCB2b2lkIHRleHRUcmFja1Jl
bW92ZUN1ZShUZXh0VHJhY2sqLCBQYXNzUmVmUHRyPFRleHRUcmFja0N1ZT4pID0gMDsKIH07CiAK
LWNsYXNzIFRleHRUcmFjayA6IHB1YmxpYyBUcmFja0Jhc2UKK2NsYXNzIFRleHRUcmFjayA6IHB1
YmxpYyBUcmFja0Jhc2UsIHB1YmxpYyBFdmVudFRhcmdldAogI2lmIFVTRShQTEFURk9STV9URVhU
X1RSQUNLX01FTlUpCiAgICAgLCBwdWJsaWMgUGxhdGZvcm1UZXh0VHJhY2tDbGllbnQKICNlbmRp
ZgpAQCAtNzMsMzIgKzczLDI2IEBAIHB1YmxpYzoKICAgICB9CiAgICAgdmlydHVhbCB+VGV4dFRy
YWNrKCk7CiAKKyAgICB2aXJ0dWFsIGNvbnN0IEF0b21pY1N0cmluZyYgaW50ZXJmYWNlTmFtZSgp
IGNvbnN0OworICAgIHZpcnR1YWwgU2NyaXB0RXhlY3V0aW9uQ29udGV4dCogc2NyaXB0RXhlY3V0
aW9uQ29udGV4dCgpIGNvbnN0OworCiAgICAgc3RhdGljIFRleHRUcmFjayogY2FwdGlvbk1lbnVP
ZmZJdGVtKCk7CiAgICAgc3RhdGljIFRleHRUcmFjayogY2FwdGlvbk1lbnVBdXRvbWF0aWNJdGVt
KCk7CiAKLSAgICB2b2lkIHNldE1lZGlhRWxlbWVudChIVE1MTWVkaWFFbGVtZW50KiBlbGVtZW50
KSB7IG1fbWVkaWFFbGVtZW50ID0gZWxlbWVudDsgfQotICAgIEhUTUxNZWRpYUVsZW1lbnQqIG1l
ZGlhRWxlbWVudCgpIHsgcmV0dXJuIG1fbWVkaWFFbGVtZW50OyB9Ci0KLSAgICBBdG9taWNTdHJp
bmcga2luZCgpIGNvbnN0IHsgcmV0dXJuIG1fa2luZDsgfQotICAgIHZvaWQgc2V0S2luZChjb25z
dCBBdG9taWNTdHJpbmcmKTsKLQogICAgIHN0YXRpYyBjb25zdCBBdG9taWNTdHJpbmcmIHN1YnRp
dGxlc0tleXdvcmQoKTsKICAgICBzdGF0aWMgY29uc3QgQXRvbWljU3RyaW5nJiBjYXB0aW9uc0tl
eXdvcmQoKTsKICAgICBzdGF0aWMgY29uc3QgQXRvbWljU3RyaW5nJiBkZXNjcmlwdGlvbnNLZXl3
b3JkKCk7CiAgICAgc3RhdGljIGNvbnN0IEF0b21pY1N0cmluZyYgY2hhcHRlcnNLZXl3b3JkKCk7
CiAgICAgc3RhdGljIGNvbnN0IEF0b21pY1N0cmluZyYgbWV0YWRhdGFLZXl3b3JkKCk7CisgICAg
dmlydHVhbCBjb25zdCBBdG9taWNTdHJpbmcmIGRlZmF1bHRLaW5kS2V5d29yZCgpIGNvbnN0IHsg
cmV0dXJuIHN1YnRpdGxlc0tleXdvcmQoKTsgfQogICAgIHN0YXRpYyBib29sIGlzVmFsaWRLaW5k
S2V5d29yZChjb25zdCBBdG9taWNTdHJpbmcmKTsKIAotICAgIEF0b21pY1N0cmluZyBsYWJlbCgp
IGNvbnN0IHsgcmV0dXJuIG1fbGFiZWw7IH0KLSAgICB2b2lkIHNldExhYmVsKGNvbnN0IEF0b21p
Y1N0cmluZyYgbGFiZWwpIHsgbV9sYWJlbCA9IGxhYmVsOyB9Ci0KLSAgICBBdG9taWNTdHJpbmcg
bGFuZ3VhZ2UoKSBjb25zdCB7IHJldHVybiBtX2xhbmd1YWdlOyB9Ci0gICAgdm9pZCBzZXRMYW5n
dWFnZShjb25zdCBBdG9taWNTdHJpbmcmIGxhbmd1YWdlKSB7IG1fbGFuZ3VhZ2UgPSBsYW5ndWFn
ZTsgfQotCiAgICAgc3RhdGljIGNvbnN0IEF0b21pY1N0cmluZyYgZGlzYWJsZWRLZXl3b3JkKCk7
CiAgICAgc3RhdGljIGNvbnN0IEF0b21pY1N0cmluZyYgaGlkZGVuS2V5d29yZCgpOwogICAgIHN0
YXRpYyBjb25zdCBBdG9taWNTdHJpbmcmIHNob3dpbmdLZXl3b3JkKCk7CiAKKyAgICB2aXJ0dWFs
IHZvaWQgc2V0S2luZChjb25zdCBBdG9taWNTdHJpbmcmKSBPVkVSUklERTsKKwogICAgIEF0b21p
Y1N0cmluZyBtb2RlKCkgY29uc3QgeyByZXR1cm4gbV9tb2RlOyB9CiAgICAgdmlydHVhbCB2b2lk
IHNldE1vZGUoY29uc3QgQXRvbWljU3RyaW5nJik7CiAKQEAgLTEwOSw4ICsxMDMsOCBAQCBwdWJs
aWM6CiAgICAgVGV4dFRyYWNrQ3VlTGlzdCogY3VlcygpOwogICAgIFRleHRUcmFja0N1ZUxpc3Qq
IGFjdGl2ZUN1ZXMoKSBjb25zdDsKIAotICAgIHZvaWQgY2xlYXJDbGllbnQoKSB7IG1fY2xpZW50
ID0gMDsgfQotICAgIFRleHRUcmFja0NsaWVudCogY2xpZW50KCkgeyByZXR1cm4gbV9jbGllbnQ7
IH0KKyAgICB2aXJ0dWFsIHZvaWQgY2xlYXJDbGllbnQoKSBPVkVSUklERSB7IG1fY2xpZW50ID0g
MDsgfQorICAgIFRleHRUcmFja0NsaWVudCogY2xpZW50KCkgY29uc3QgeyByZXR1cm4gbV9jbGll
bnQ7IH0KIAogICAgIHZvaWQgYWRkQ3VlKFBhc3NSZWZQdHI8VGV4dFRyYWNrQ3VlPik7CiAgICAg
dm9pZCByZW1vdmVDdWUoVGV4dFRyYWNrQ3VlKiwgRXhjZXB0aW9uQ29kZSYpOwpAQCAtMTU0LDE1
ICsxNDgsMjUgQEAgcHVibGljOgogICAgIFBhc3NSZWZQdHI8UGxhdGZvcm1UZXh0VHJhY2s+IHBs
YXRmb3JtVGV4dFRyYWNrKCk7CiAjZW5kaWYKIAorICAgIHVzaW5nIFJlZkNvdW50ZWQ8VHJhY2tC
YXNlPjo6cmVmOworICAgIHVzaW5nIFJlZkNvdW50ZWQ8VHJhY2tCYXNlPjo6ZGVyZWY7CisKIHBy
b3RlY3RlZDoKICAgICBUZXh0VHJhY2soU2NyaXB0RXhlY3V0aW9uQ29udGV4dCosIFRleHRUcmFj
a0NsaWVudCosIGNvbnN0IEF0b21pY1N0cmluZyYga2luZCwgY29uc3QgQXRvbWljU3RyaW5nJiBs
YWJlbCwgY29uc3QgQXRvbWljU3RyaW5nJiBsYW5ndWFnZSwgVGV4dFRyYWNrVHlwZSk7CiAjaWYg
RU5BQkxFKFZJREVPX1RSQUNLKSAmJiBFTkFCTEUoV0VCVlRUX1JFR0lPTlMpCiAgICAgVGV4dFRy
YWNrUmVnaW9uTGlzdCogcmVnaW9uTGlzdCgpOwogI2VuZGlmCiAKKyAgICB2aXJ0dWFsIEV2ZW50
VGFyZ2V0RGF0YSogZXZlbnRUYXJnZXREYXRhKCk7CisgICAgdmlydHVhbCBFdmVudFRhcmdldERh
dGEqIGVuc3VyZUV2ZW50VGFyZ2V0RGF0YSgpOworCiAgICAgUmVmUHRyPFRleHRUcmFja0N1ZUxp
c3Q+IG1fY3VlczsKIAogcHJpdmF0ZToKKyAgICB2aXJ0dWFsIGJvb2wgaXNWYWxpZEtpbmQoY29u
c3QgQXRvbWljU3RyaW5nJikgY29uc3QgT1ZFUlJJREU7CisKKyAgICB2aXJ0dWFsIHZvaWQgcmVm
RXZlbnRUYXJnZXQoKSB7IHJlZigpOyB9CisgICAgdmlydHVhbCB2b2lkIGRlcmVmRXZlbnRUYXJn
ZXQoKSB7IGRlcmVmKCk7IH0KIAogI2lmIEVOQUJMRShWSURFT19UUkFDSykgJiYgRU5BQkxFKFdF
QlZUVF9SRUdJT05TKQogICAgIFRleHRUcmFja1JlZ2lvbkxpc3QqIGVuc3VyZVRleHRUcmFja1Jl
Z2lvbkxpc3QoKTsKQEAgLTE3NywxMCArMTgxLDggQEAgcHJpdmF0ZToKIAogICAgIFRleHRUcmFj
a0N1ZUxpc3QqIGVuc3VyZVRleHRUcmFja0N1ZUxpc3QoKTsKIAotICAgIEhUTUxNZWRpYUVsZW1l
bnQqIG1fbWVkaWFFbGVtZW50OwotICAgIEF0b21pY1N0cmluZyBtX2tpbmQ7Ci0gICAgQXRvbWlj
U3RyaW5nIG1fbGFiZWw7Ci0gICAgQXRvbWljU3RyaW5nIG1fbGFuZ3VhZ2U7CisgICAgU2NyaXB0
RXhlY3V0aW9uQ29udGV4dCogbV9zY3JpcHRFeGVjdXRpb25Db250ZXh0OworICAgIEV2ZW50VGFy
Z2V0RGF0YSBtX2V2ZW50VGFyZ2V0RGF0YTsKICAgICBBdG9taWNTdHJpbmcgbV9tb2RlOwogICAg
IFRleHRUcmFja0NsaWVudCogbV9jbGllbnQ7CiAgICAgVGV4dFRyYWNrVHlwZSBtX3RyYWNrVHlw
ZTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvdHJhY2svVGV4dFRyYWNrTGlzdC5j
cHAgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL3RyYWNrL1RleHRUcmFja0xpc3QuY3BwCmluZGV4IDhh
ZTU2YzJiMDVlNzRkNjAyOWZiMzRkM2ExZGFjNmQwMDAxNjQ3MjAuLjQyN2U1Y2Y1MTM3ZTBmY2Qw
YTg2NjMxMDU5Y2I0ZDRkMGU1OTNhZTUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2h0bWwv
dHJhY2svVGV4dFRyYWNrTGlzdC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvaHRtbC90cmFjay9U
ZXh0VHJhY2tMaXN0LmNwcApAQCAtMzAsMjMgKzMwLDE2IEBACiAjaW5jbHVkZSAiVGV4dFRyYWNr
TGlzdC5oIgogCiAjaW5jbHVkZSAiRXZlbnROYW1lcy5oIgotI2luY2x1ZGUgIkhUTUxNZWRpYUVs
ZW1lbnQuaCIKICNpbmNsdWRlICJJbmJhbmRUZXh0VHJhY2suaCIKICNpbmNsdWRlICJJbmJhbmRU
ZXh0VHJhY2tQcml2YXRlLmgiCiAjaW5jbHVkZSAiTG9hZGFibGVUZXh0VHJhY2suaCIKLSNpbmNs
dWRlICJTY3JpcHRFeGVjdXRpb25Db250ZXh0LmgiCiAjaW5jbHVkZSAiVGV4dFRyYWNrLmgiCi0j
aW5jbHVkZSAiVHJhY2tFdmVudC5oIgogCiB1c2luZyBuYW1lc3BhY2UgV2ViQ29yZTsKIAogVGV4
dFRyYWNrTGlzdDo6VGV4dFRyYWNrTGlzdChIVE1MTWVkaWFFbGVtZW50KiBvd25lciwgU2NyaXB0
RXhlY3V0aW9uQ29udGV4dCogY29udGV4dCkKLSAgICA6IG1fY29udGV4dChjb250ZXh0KQotICAg
ICwgbV9vd25lcihvd25lcikKLSAgICAsIG1fcGVuZGluZ0V2ZW50VGltZXIodGhpcywgJlRleHRU
cmFja0xpc3Q6OmFzeW5jRXZlbnRUaW1lckZpcmVkKQotICAgICwgbV9kaXNwYXRjaGluZ0V2ZW50
cygwKQorICAgIDogVHJhY2tMaXN0QmFzZShvd25lciwgY29udGV4dCkKIHsKLSAgICBBU1NFUlQo
Y29udGV4dC0+aXNEb2N1bWVudCgpKTsKIH0KIAogVGV4dFRyYWNrTGlzdDo6flRleHRUcmFja0xp
c3QoKQpAQCAtNTgsOCArNTEsMTIgQEAgdW5zaWduZWQgVGV4dFRyYWNrTGlzdDo6bGVuZ3RoKCkg
Y29uc3QKICAgICByZXR1cm4gbV9hZGRUcmFja1RyYWNrcy5zaXplKCkgKyBtX2VsZW1lbnRUcmFj
a3Muc2l6ZSgpICsgbV9pbmJhbmRUcmFja3Muc2l6ZSgpOwogfQogCi1pbnQgVGV4dFRyYWNrTGlz
dDo6Z2V0VHJhY2tJbmRleChUZXh0VHJhY2sgKnRleHRUcmFjaykKK2ludCBUZXh0VHJhY2tMaXN0
OjpnZXRUcmFja0luZGV4KFRyYWNrQmFzZSAqdHJhY2spCiB7CisgICAgaWYgKHRyYWNrLT50eXBl
KCkgIT0gVHJhY2tCYXNlOjpUZXh0VHJhY2spCisgICAgICAgIHJldHVybiAtMTsKKyAgICBUZXh0
VHJhY2sqIHRleHRUcmFjayA9IHN0YXRpY19jYXN0PFRleHRUcmFjayo+KHRyYWNrKTsKKwogICAg
IGlmICh0ZXh0VHJhY2stPnRyYWNrVHlwZSgpID09IFRleHRUcmFjazo6VHJhY2tFbGVtZW50KQog
ICAgICAgICByZXR1cm4gc3RhdGljX2Nhc3Q8TG9hZGFibGVUZXh0VHJhY2sqPih0ZXh0VHJhY2sp
LT50cmFja0VsZW1lbnRJbmRleCgpOwogCkBAIC05OCw3ICs5NSw3IEBAIGludCBUZXh0VHJhY2tM
aXN0OjpnZXRUcmFja0luZGV4UmVsYXRpdmVUb1JlbmRlcmVkVHJhY2tzKFRleHRUcmFjayAqdGV4
dFRyYWNrKQogICAgIH0KIAogICAgIGZvciAoc2l6ZV90IGkgPSAwOyBpIDwgbV9pbmJhbmRUcmFj
a3Muc2l6ZSgpOyArK2kpIHsKLSAgICAgICAgaWYgKCFtX2luYmFuZFRyYWNrc1tpXS0+aXNSZW5k
ZXJlZCgpKQorICAgICAgICBpZiAoIWdldEluYmFuZFRyYWNrKGkpLT5pc1JlbmRlcmVkKCkpCiAg
ICAgICAgICAgICBjb250aW51ZTsKICAgICAgICAgCiAgICAgICAgIGlmIChtX2luYmFuZFRyYWNr
c1tpXSA9PSB0ZXh0VHJhY2spCkBAIC0xMTEsNyArMTA4LDcgQEAgaW50IFRleHRUcmFja0xpc3Q6
OmdldFRyYWNrSW5kZXhSZWxhdGl2ZVRvUmVuZGVyZWRUcmFja3MoVGV4dFRyYWNrICp0ZXh0VHJh
Y2spCiAgICAgcmV0dXJuIC0xOwogfQogCi1UZXh0VHJhY2sqIFRleHRUcmFja0xpc3Q6Oml0ZW0o
dW5zaWduZWQgaW5kZXgpCitUZXh0VHJhY2sqIFRleHRUcmFja0xpc3Q6Oml0ZW0odW5zaWduZWQg
aW5kZXgpIGNvbnN0CiB7CiAgICAgLy8gNC44LjEwLjEyLjEgVGV4dCB0cmFjayBtb2RlbAogICAg
IC8vIFRoZSB0ZXh0IHRyYWNrcyBhcmUgc29ydGVkIGFzIGZvbGxvd3M6CkBAIC0xMjksMzYgKzEy
Niw0NSBAQCBUZXh0VHJhY2sqIFRleHRUcmFja0xpc3Q6Oml0ZW0odW5zaWduZWQgaW5kZXgpCiAK
ICAgICBpbmRleCAtPSBtX2FkZFRyYWNrVHJhY2tzLnNpemUoKTsKICAgICBpZiAoaW5kZXggPCBt
X2luYmFuZFRyYWNrcy5zaXplKCkpCi0gICAgICAgIHJldHVybiBtX2luYmFuZFRyYWNrc1tpbmRl
eF0uZ2V0KCk7CisgICAgICAgIHJldHVybiBnZXRJbmJhbmRUcmFjayhpbmRleCk7CiAKICAgICBy
ZXR1cm4gMDsKIH0KIAotdm9pZCBUZXh0VHJhY2tMaXN0OjppbnZhbGlkYXRlVHJhY2tJbmRleGVz
QWZ0ZXJUcmFjayhUZXh0VHJhY2sqIHRyYWNrKQorVGV4dFRyYWNrKiBUZXh0VHJhY2tMaXN0Ojpn
ZXRJbmJhbmRUcmFjayh1bnNpZ25lZCBpbmRleCkgY29uc3QKIHsKLSAgICBWZWN0b3I8UmVmUHRy
PFRleHRUcmFjaz4gPiogdHJhY2tzID0gMDsKKyAgICBUcmFja0Jhc2UqIHRyYWNrID0gbV9pbmJh
bmRUcmFja3NbaW5kZXhdLmdldCgpOworICAgIEFTU0VSVCh0cmFjay0+dHlwZSgpID09IFRyYWNr
QmFzZTo6VGV4dFRyYWNrKTsKKyAgICByZXR1cm4gc3RhdGljX2Nhc3Q8VGV4dFRyYWNrKj4odHJh
Y2spOworfQogCit2b2lkIFRleHRUcmFja0xpc3Q6OmludmFsaWRhdGVUcmFja0luZGV4ZXNBZnRl
clRyYWNrKFRleHRUcmFjayogdHJhY2spCit7CisgICAgc2l6ZV90IGluZGV4ID0gbm90Rm91bmQ7
CiAgICAgaWYgKHRyYWNrLT50cmFja1R5cGUoKSA9PSBUZXh0VHJhY2s6OlRyYWNrRWxlbWVudCkg
ewotICAgICAgICB0cmFja3MgPSAmbV9lbGVtZW50VHJhY2tzOworICAgICAgICBpbmRleCA9IG1f
ZWxlbWVudFRyYWNrcy5maW5kKHRyYWNrKTsKKyAgICAgICAgaWYgKGluZGV4ID09IG5vdEZvdW5k
KQorICAgICAgICAgICAgcmV0dXJuOworICAgICAgICBmb3IgKHNpemVfdCBpID0gaW5kZXg7IGkg
PCBtX2VsZW1lbnRUcmFja3Muc2l6ZSgpOyArK2kpCisgICAgICAgICAgICBtX2VsZW1lbnRUcmFj
a3MuYXQoaW5kZXgpLT5pbnZhbGlkYXRlVHJhY2tJbmRleCgpOworICAgIH0gZWxzZSBpZiAodHJh
Y2stPnRyYWNrVHlwZSgpID09IFRleHRUcmFjazo6QWRkVHJhY2spIHsKKyAgICAgICAgaWYgKGlu
ZGV4ID09IG5vdEZvdW5kKSB7CisgICAgICAgICAgICBpbmRleCA9IG1fYWRkVHJhY2tUcmFja3Mu
ZmluZCh0cmFjayk7CisgICAgICAgICAgICBpZiAoaW5kZXggPT0gbm90Rm91bmQpCisgICAgICAg
ICAgICAgICAgcmV0dXJuOworICAgICAgICB9CiAgICAgICAgIGZvciAoc2l6ZV90IGkgPSAwOyBp
IDwgbV9hZGRUcmFja1RyYWNrcy5zaXplKCk7ICsraSkKICAgICAgICAgICAgIG1fYWRkVHJhY2tU
cmFja3NbaV0tPmludmFsaWRhdGVUcmFja0luZGV4KCk7CisgICAgfSBlbHNlIGlmICh0cmFjay0+
dHJhY2tUeXBlKCkgPT0gVGV4dFRyYWNrOjpJbkJhbmQpIHsKKyAgICAgICAgaWYgKGluZGV4ID09
IG5vdEZvdW5kKSB7CisgICAgICAgICAgICBpbmRleCA9IG1faW5iYW5kVHJhY2tzLmZpbmQodHJh
Y2spOworICAgICAgICAgICAgaWYgKGluZGV4ID09IG5vdEZvdW5kKQorICAgICAgICAgICAgICAg
IHJldHVybjsKKyAgICAgICAgfQogICAgICAgICBmb3IgKHNpemVfdCBpID0gMDsgaSA8IG1faW5i
YW5kVHJhY2tzLnNpemUoKTsgKytpKQotICAgICAgICAgICAgbV9pbmJhbmRUcmFja3NbaV0tPmlu
dmFsaWRhdGVUcmFja0luZGV4KCk7Ci0gICAgfSBlbHNlIGlmICh0cmFjay0+dHJhY2tUeXBlKCkg
PT0gVGV4dFRyYWNrOjpBZGRUcmFjaykgewotICAgICAgICB0cmFja3MgPSAmbV9hZGRUcmFja1Ry
YWNrczsKLSAgICAgICAgZm9yIChzaXplX3QgaSA9IDA7IGkgPCBtX2luYmFuZFRyYWNrcy5zaXpl
KCk7ICsraSkKLSAgICAgICAgICAgIG1faW5iYW5kVHJhY2tzW2ldLT5pbnZhbGlkYXRlVHJhY2tJ
bmRleCgpOwotICAgIH0gZWxzZSBpZiAodHJhY2stPnRyYWNrVHlwZSgpID09IFRleHRUcmFjazo6
SW5CYW5kKQotICAgICAgICB0cmFja3MgPSAmbV9pbmJhbmRUcmFja3M7Ci0gICAgZWxzZQorICAg
ICAgICAgICAgZ2V0SW5iYW5kVHJhY2soaSktPmludmFsaWRhdGVUcmFja0luZGV4KCk7CisgICAg
fSBlbHNlCiAgICAgICAgIEFTU0VSVF9OT1RfUkVBQ0hFRCgpOwotCi0gICAgc2l6ZV90IGluZGV4
ID0gdHJhY2tzLT5maW5kKHRyYWNrKTsKLSAgICBpZiAoaW5kZXggPT0gbm90Rm91bmQpCi0gICAg
ICAgIHJldHVybjsKLQotICAgIGZvciAoc2l6ZV90IGkgPSBpbmRleDsgaSA8IHRyYWNrcy0+c2l6
ZSgpOyArK2kpCi0gICAgICAgIHRyYWNrcy0+YXQoaW5kZXgpLT5pbnZhbGlkYXRlVHJhY2tJbmRl
eCgpOwogfQogCiB2b2lkIFRleHRUcmFja0xpc3Q6OmFwcGVuZChQYXNzUmVmUHRyPFRleHRUcmFj
az4gcHJwVHJhY2spCkBAIC0xODAsNTEgKzE4Niw2MCBAQCB2b2lkIFRleHRUcmFja0xpc3Q6OmFw
cGVuZChQYXNzUmVmUHRyPFRleHRUcmFjaz4gcHJwVHJhY2spCiAKICAgICBpbnZhbGlkYXRlVHJh
Y2tJbmRleGVzQWZ0ZXJUcmFjayh0cmFjay5nZXQoKSk7CiAKLSAgICBBU1NFUlQoIXRyYWNrLT5t
ZWRpYUVsZW1lbnQoKSB8fCB0cmFjay0+bWVkaWFFbGVtZW50KCkgPT0gbV9vd25lcik7Ci0gICAg
dHJhY2stPnNldE1lZGlhRWxlbWVudChtX293bmVyKTsKKyAgICBBU1NFUlQoIXRyYWNrLT5tZWRp
YUVsZW1lbnQoKSB8fCB0cmFjay0+bWVkaWFFbGVtZW50KCkgPT0gb3duZXIoKSk7CisgICAgdHJh
Y2stPnNldE1lZGlhRWxlbWVudChvd25lcigpKTsKIAogICAgIHNjaGVkdWxlQWRkVHJhY2tFdmVu
dCh0cmFjay5yZWxlYXNlKCkpOwogfQogCi12b2lkIFRleHRUcmFja0xpc3Q6OnJlbW92ZShUZXh0
VHJhY2sqIHRyYWNrKQordm9pZCBUZXh0VHJhY2tMaXN0OjpyZW1vdmUoVHJhY2tCYXNlKiB0cmFj
aykKIHsKLSAgICBWZWN0b3I8UmVmUHRyPFRleHRUcmFjaz4gPiogdHJhY2tzID0gMDsKLQotICAg
IGlmICh0cmFjay0+dHJhY2tUeXBlKCkgPT0gVGV4dFRyYWNrOjpUcmFja0VsZW1lbnQpCi0gICAg
ICAgIHRyYWNrcyA9ICZtX2VsZW1lbnRUcmFja3M7Ci0gICAgZWxzZSBpZiAodHJhY2stPnRyYWNr
VHlwZSgpID09IFRleHRUcmFjazo6QWRkVHJhY2spCi0gICAgICAgIHRyYWNrcyA9ICZtX2FkZFRy
YWNrVHJhY2tzOwotICAgIGVsc2UgaWYgKHRyYWNrLT50cmFja1R5cGUoKSA9PSBUZXh0VHJhY2s6
OkluQmFuZCkKLSAgICAgICAgdHJhY2tzID0gJm1faW5iYW5kVHJhY2tzOworICAgIGlmICh0cmFj
ay0+dHlwZSgpICE9IFRyYWNrQmFzZTo6VGV4dFRyYWNrKQorICAgICAgICByZXR1cm47CisgICAg
VGV4dFRyYWNrKiB0ZXh0VHJhY2sgPSBzdGF0aWNfY2FzdDxUZXh0VHJhY2sqPih0cmFjayk7CisK
KyAgICBzaXplX3QgaW5kZXggPSBub3RGb3VuZDsKKyAgICBpZiAodGV4dFRyYWNrLT50cmFja1R5
cGUoKSA9PSBUZXh0VHJhY2s6OlRyYWNrRWxlbWVudCkKKyAgICAgICAgbV9lbGVtZW50VHJhY2tz
LmZpbmQodGV4dFRyYWNrKTsKKyAgICBlbHNlIGlmICh0ZXh0VHJhY2stPnRyYWNrVHlwZSgpID09
IFRleHRUcmFjazo6QWRkVHJhY2spCisgICAgICAgIG1fYWRkVHJhY2tUcmFja3MuZmluZCh0ZXh0
VHJhY2spOworICAgIGVsc2UgaWYgKHRleHRUcmFjay0+dHJhY2tUeXBlKCkgPT0gVGV4dFRyYWNr
OjpJbkJhbmQpCisgICAgICAgIG1faW5iYW5kVHJhY2tzLmZpbmQodGV4dFRyYWNrKTsKICAgICBl
bHNlCiAgICAgICAgIEFTU0VSVF9OT1RfUkVBQ0hFRCgpOwogCi0gICAgc2l6ZV90IGluZGV4ID0g
dHJhY2tzLT5maW5kKHRyYWNrKTsKICAgICBpZiAoaW5kZXggPT0gbm90Rm91bmQpCiAgICAgICAg
IHJldHVybjsKIAotICAgIGludmFsaWRhdGVUcmFja0luZGV4ZXNBZnRlclRyYWNrKHRyYWNrKTsK
KyAgICBpbnZhbGlkYXRlVHJhY2tJbmRleGVzQWZ0ZXJUcmFjayh0ZXh0VHJhY2spOwogCiAgICAg
QVNTRVJUKCF0cmFjay0+bWVkaWFFbGVtZW50KCkgfHwgdHJhY2stPm1lZGlhRWxlbWVudCgpID09
IG1fb3duZXIpOwogICAgIHRyYWNrLT5zZXRNZWRpYUVsZW1lbnQoMCk7CiAKLSAgICB0cmFja3Mt
PnJlbW92ZShpbmRleCk7CisgICAgaWYgKHRleHRUcmFjay0+dHJhY2tUeXBlKCkgPT0gVGV4dFRy
YWNrOjpUcmFja0VsZW1lbnQpCisgICAgICAgIG1fZWxlbWVudFRyYWNrcy5yZW1vdmUoaW5kZXgp
OworICAgIGVsc2UgaWYgKHRleHRUcmFjay0+dHJhY2tUeXBlKCkgPT0gVGV4dFRyYWNrOjpBZGRU
cmFjaykKKyAgICAgICAgbV9hZGRUcmFja1RyYWNrcy5yZW1vdmUoaW5kZXgpOworICAgIGVsc2Ug
aWYgKHRleHRUcmFjay0+dHJhY2tUeXBlKCkgPT0gVGV4dFRyYWNrOjpJbkJhbmQpCisgICAgICAg
IG1faW5iYW5kVHJhY2tzLnJlbW92ZShpbmRleCk7CisgICAgZWxzZQorICAgICAgICBBU1NFUlRf
Tk9UX1JFQUNIRUQoKTsKIH0KIAotYm9vbCBUZXh0VHJhY2tMaXN0Ojpjb250YWlucyhUZXh0VHJh
Y2sqIHRyYWNrKSBjb25zdAorYm9vbCBUZXh0VHJhY2tMaXN0Ojpjb250YWlucyhUcmFja0Jhc2Uq
IHRyYWNrKSBjb25zdAogewotICAgIGNvbnN0IFZlY3RvcjxSZWZQdHI8VGV4dFRyYWNrPiA+KiB0
cmFja3MgPSAwOwotICAgIAotICAgIGlmICh0cmFjay0+dHJhY2tUeXBlKCkgPT0gVGV4dFRyYWNr
OjpUcmFja0VsZW1lbnQpCi0gICAgICAgIHRyYWNrcyA9ICZtX2VsZW1lbnRUcmFja3M7Ci0gICAg
ZWxzZSBpZiAodHJhY2stPnRyYWNrVHlwZSgpID09IFRleHRUcmFjazo6QWRkVHJhY2spCi0gICAg
ICAgIHRyYWNrcyA9ICZtX2FkZFRyYWNrVHJhY2tzOwotICAgIGVsc2UgaWYgKHRyYWNrLT50cmFj
a1R5cGUoKSA9PSBUZXh0VHJhY2s6OkluQmFuZCkKLSAgICAgICAgdHJhY2tzID0gJm1faW5iYW5k
VHJhY2tzOwotICAgIGVsc2UKLSAgICAgICAgQVNTRVJUX05PVF9SRUFDSEVEKCk7CisgICAgaWYg
KHRyYWNrLT50eXBlKCkgIT0gVHJhY2tCYXNlOjpUZXh0VHJhY2spCisgICAgICAgIHJldHVybiBm
YWxzZTsKKyAgICBUZXh0VHJhY2sqIHRleHRUcmFjayA9IHN0YXRpY19jYXN0PFRleHRUcmFjayo+
KHRyYWNrKTsKICAgICAKLSAgICByZXR1cm4gdHJhY2tzLT5maW5kKHRyYWNrKSAhPSBub3RGb3Vu
ZDsKKyAgICBpZiAodGV4dFRyYWNrLT50cmFja1R5cGUoKSA9PSBUZXh0VHJhY2s6OlRyYWNrRWxl
bWVudCkKKyAgICAgICAgcmV0dXJuIG1fZWxlbWVudFRyYWNrcy5maW5kKHRyYWNrKSAhPSBub3RG
b3VuZDsKKyAgICBpZiAodGV4dFRyYWNrLT50cmFja1R5cGUoKSA9PSBUZXh0VHJhY2s6OkFkZFRy
YWNrKQorICAgICAgICByZXR1cm4gbV9hZGRUcmFja1RyYWNrcy5maW5kKHRyYWNrKSAhPSBub3RG
b3VuZDsKKyAgICBpZiAodGV4dFRyYWNrLT50cmFja1R5cGUoKSA9PSBUZXh0VHJhY2s6OkluQmFu
ZCkKKyAgICAgICAgcmV0dXJuIG1faW5iYW5kVHJhY2tzLmZpbmQodHJhY2spICE9IG5vdEZvdW5k
OworICAgIEFTU0VSVF9OT1RfUkVBQ0hFRCgpOworICAgIHJldHVybiBmYWxzZTsKIH0KIAogY29u
c3QgQXRvbWljU3RyaW5nJiBUZXh0VHJhY2tMaXN0OjppbnRlcmZhY2VOYW1lKCkgY29uc3QKQEAg
LTIzMiw0MSArMjQ3LDQgQEAgY29uc3QgQXRvbWljU3RyaW5nJiBUZXh0VHJhY2tMaXN0OjppbnRl
cmZhY2VOYW1lKCkgY29uc3QKICAgICByZXR1cm4gZXZlbnROYW1lcygpLmludGVyZmFjZUZvclRl
eHRUcmFja0xpc3Q7CiB9CiAKLXZvaWQgVGV4dFRyYWNrTGlzdDo6c2NoZWR1bGVBZGRUcmFja0V2
ZW50KFBhc3NSZWZQdHI8VGV4dFRyYWNrPiB0cmFjaykKLXsKLSAgICAvLyA0LjguMTAuMTIuMyBT
b3VyY2luZyBvdXQtb2YtYmFuZCB0ZXh0IHRyYWNrcwotICAgIC8vIDQuOC4xMC4xMi40IFRleHQg
dHJhY2sgQVBJCi0gICAgLy8gLi4uIHRoZW4gcXVldWUgYSB0YXNrIHRvIGZpcmUgYW4gZXZlbnQg
d2l0aCB0aGUgbmFtZSBhZGR0cmFjaywgdGhhdCBkb2VzIG5vdCAKLSAgICAvLyBidWJibGUgYW5k
IGlzIG5vdCBjYW5jZWxhYmxlLCBhbmQgdGhhdCB1c2VzIHRoZSBUcmFja0V2ZW50IGludGVyZmFj
ZSwgd2l0aCAKLSAgICAvLyB0aGUgdHJhY2sgYXR0cmlidXRlIGluaXRpYWxpemVkIHRvIHRoZSB0
ZXh0IHRyYWNrJ3MgVGV4dFRyYWNrIG9iamVjdCwgYXQgCi0gICAgLy8gdGhlIG1lZGlhIGVsZW1l
bnQncyB0ZXh0VHJhY2tzIGF0dHJpYnV0ZSdzIFRleHRUcmFja0xpc3Qgb2JqZWN0LgotCi0gICAg
UmVmUHRyPFRleHRUcmFjaz4gdHJhY2tSZWYgPSB0cmFjazsKLSAgICBUcmFja0V2ZW50SW5pdCBp
bml0aWFsaXplcjsKLSAgICBpbml0aWFsaXplci50cmFjayA9IHRyYWNrUmVmOwotICAgIGluaXRp
YWxpemVyLmJ1YmJsZXMgPSBmYWxzZTsKLSAgICBpbml0aWFsaXplci5jYW5jZWxhYmxlID0gZmFs
c2U7Ci0KLSAgICBtX3BlbmRpbmdFdmVudHMuYXBwZW5kKFRyYWNrRXZlbnQ6OmNyZWF0ZShldmVu
dE5hbWVzKCkuYWRkdHJhY2tFdmVudCwgaW5pdGlhbGl6ZXIpKTsKLSAgICBpZiAoIW1fcGVuZGlu
Z0V2ZW50VGltZXIuaXNBY3RpdmUoKSkKLSAgICAgICAgbV9wZW5kaW5nRXZlbnRUaW1lci5zdGFy
dE9uZVNob3QoMCk7Ci19Ci0KLXZvaWQgVGV4dFRyYWNrTGlzdDo6YXN5bmNFdmVudFRpbWVyRmly
ZWQoVGltZXI8VGV4dFRyYWNrTGlzdD4qKQotewotICAgIFZlY3RvcjxSZWZQdHI8RXZlbnQ+ID4g
cGVuZGluZ0V2ZW50czsKLQotICAgICsrbV9kaXNwYXRjaGluZ0V2ZW50czsKLSAgICBtX3BlbmRp
bmdFdmVudHMuc3dhcChwZW5kaW5nRXZlbnRzKTsKLSAgICBzaXplX3QgY291bnQgPSBwZW5kaW5n
RXZlbnRzLnNpemUoKTsKLSAgICBmb3IgKHNpemVfdCBpbmRleCA9IDA7IGluZGV4IDwgY291bnQ7
ICsraW5kZXgpCi0gICAgICAgIGRpc3BhdGNoRXZlbnQocGVuZGluZ0V2ZW50c1tpbmRleF0ucmVs
ZWFzZSgpLCBJR05PUkVfRVhDRVBUSU9OKTsKLSAgICAtLW1fZGlzcGF0Y2hpbmdFdmVudHM7Ci19
Ci0KLU5vZGUqIFRleHRUcmFja0xpc3Q6Om93bmVyKCkgY29uc3QKLXsKLSAgICByZXR1cm4gbV9v
d25lcjsKLX0KLQogI2VuZGlmCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9odG1sL3RyYWNr
L1RleHRUcmFja0xpc3QuaCBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvdHJhY2svVGV4dFRyYWNrTGlz
dC5oCmluZGV4IDFlZTE1YzkzYzk4NzllNWM5YWE1ZTVkNGI2OTFkNDdjMDU0NjJhMjEuLmVmNTI2
N2Q0MTU4ZDg1OTA2OTM1NDQwZjZjODJmMDg4ZTRlZDMxNDEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJDb3JlL2h0bWwvdHJhY2svVGV4dFRyYWNrTGlzdC5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2h0
bWwvdHJhY2svVGV4dFRyYWNrTGlzdC5oCkBAIC0yOCwyMSArMjgsMTMgQEAKIAogI2lmIEVOQUJM
RShWSURFT19UUkFDSykKIAotI2luY2x1ZGUgIkV2ZW50TGlzdGVuZXIuaCIKLSNpbmNsdWRlICJF
dmVudFRhcmdldC5oIgotI2luY2x1ZGUgIlRpbWVyLmgiCi0jaW5jbHVkZSA8YWxnb3JpdGhtPgot
I2luY2x1ZGUgPHd0Zi9QYXNzUmVmUHRyLmg+Ci0jaW5jbHVkZSA8d3RmL1JlZkNvdW50ZWQuaD4K
LSNpbmNsdWRlIDx3dGYvVmVjdG9yLmg+CisjaW5jbHVkZSAiVHJhY2tMaXN0QmFzZS5oIgogCiBu
YW1lc3BhY2UgV2ViQ29yZSB7CiAKLWNsYXNzIEhUTUxNZWRpYUVsZW1lbnQ7CiBjbGFzcyBUZXh0
VHJhY2s7Ci1jbGFzcyBUZXh0VHJhY2tMaXN0OwogCi1jbGFzcyBUZXh0VHJhY2tMaXN0IDogcHVi
bGljIFJlZkNvdW50ZWQ8VGV4dFRyYWNrTGlzdD4sIHB1YmxpYyBFdmVudFRhcmdldCB7CitjbGFz
cyBUZXh0VHJhY2tMaXN0IDogcHVibGljIFRyYWNrTGlzdEJhc2UgewogcHVibGljOgogICAgIHN0
YXRpYyBQYXNzUmVmUHRyPFRleHRUcmFja0xpc3Q+IGNyZWF0ZShIVE1MTWVkaWFFbGVtZW50KiBv
d25lciwgU2NyaXB0RXhlY3V0aW9uQ29udGV4dCogY29udGV4dCkKICAgICB7CkBAIC01MCw1NCAr
NDIsMjcgQEAgcHVibGljOgogICAgIH0KICAgICB+VGV4dFRyYWNrTGlzdCgpOwogCi0gICAgdW5z
aWduZWQgbGVuZ3RoKCkgY29uc3Q7Ci0gICAgaW50IGdldFRyYWNrSW5kZXgoVGV4dFRyYWNrKik7
CiAgICAgaW50IGdldFRyYWNrSW5kZXhSZWxhdGl2ZVRvUmVuZGVyZWRUcmFja3MoVGV4dFRyYWNr
Kik7Ci0gICAgYm9vbCBjb250YWlucyhUZXh0VHJhY2sqKSBjb25zdDsKIAotICAgIFRleHRUcmFj
ayogaXRlbSh1bnNpZ25lZCBpbmRleCk7CisgICAgdmlydHVhbCB1bnNpZ25lZCBsZW5ndGgoKSBj
b25zdCBPVkVSUklERTsKKyAgICB2aXJ0dWFsIGludCBnZXRUcmFja0luZGV4KFRyYWNrQmFzZSop
IE9WRVJSSURFOworICAgIHZpcnR1YWwgYm9vbCBjb250YWlucyhUcmFja0Jhc2UqKSBjb25zdCBP
VkVSUklERTsKKworICAgIFRleHRUcmFjayogaXRlbSh1bnNpZ25lZCBpbmRleCkgY29uc3Q7CiAg
ICAgdm9pZCBhcHBlbmQoUGFzc1JlZlB0cjxUZXh0VHJhY2s+KTsKLSAgICB2b2lkIHJlbW92ZShU
ZXh0VHJhY2sqKTsKKyAgICB2aXJ0dWFsIHZvaWQgcmVtb3ZlKFRyYWNrQmFzZSopIE9WRVJSSURF
OwogCiAgICAgLy8gRXZlbnRUYXJnZXQKICAgICB2aXJ0dWFsIGNvbnN0IEF0b21pY1N0cmluZyYg
aW50ZXJmYWNlTmFtZSgpIGNvbnN0OwotICAgIHVzaW5nIFJlZkNvdW50ZWQ8VGV4dFRyYWNrTGlz
dD46OnJlZjsKLSAgICB1c2luZyBSZWZDb3VudGVkPFRleHRUcmFja0xpc3Q+OjpkZXJlZjsKLSAg
ICB2aXJ0dWFsIFNjcmlwdEV4ZWN1dGlvbkNvbnRleHQqIHNjcmlwdEV4ZWN1dGlvbkNvbnRleHQo
KSBjb25zdCB7IHJldHVybiBtX2NvbnRleHQ7IH0KLQotICAgIERFRklORV9BVFRSSUJVVEVfRVZF
TlRfTElTVEVORVIoYWRkdHJhY2spOwotCi0gICAgdm9pZCBjbGVhck93bmVyKCkgeyBtX293bmVy
ID0gMDsgfQotICAgIE5vZGUqIG93bmVyKCkgY29uc3Q7Ci0KLSAgICBib29sIGlzRmlyaW5nRXZl
bnRMaXN0ZW5lcnMoKSB7IHJldHVybiBtX2Rpc3BhdGNoaW5nRXZlbnRzOyB9CiAKIHByaXZhdGU6
CiAgICAgVGV4dFRyYWNrTGlzdChIVE1MTWVkaWFFbGVtZW50KiwgU2NyaXB0RXhlY3V0aW9uQ29u
dGV4dCopOwogCi0gICAgLy8gRXZlbnRUYXJnZXQKLSAgICB2aXJ0dWFsIHZvaWQgcmVmRXZlbnRU
YXJnZXQoKSB7IHJlZigpOyB9Ci0gICAgdmlydHVhbCB2b2lkIGRlcmVmRXZlbnRUYXJnZXQoKSB7
IGRlcmVmKCk7IH0KLSAgICB2aXJ0dWFsIEV2ZW50VGFyZ2V0RGF0YSogZXZlbnRUYXJnZXREYXRh
KCkgeyByZXR1cm4gJm1fZXZlbnRUYXJnZXREYXRhOyB9Ci0gICAgdmlydHVhbCBFdmVudFRhcmdl
dERhdGEqIGVuc3VyZUV2ZW50VGFyZ2V0RGF0YSgpIHsgcmV0dXJuICZtX2V2ZW50VGFyZ2V0RGF0
YTsgfQotCi0gICAgdm9pZCBzY2hlZHVsZUFkZFRyYWNrRXZlbnQoUGFzc1JlZlB0cjxUZXh0VHJh
Y2s+KTsKLSAgICB2b2lkIGFzeW5jRXZlbnRUaW1lckZpcmVkKFRpbWVyPFRleHRUcmFja0xpc3Q+
Kik7Ci0KKyAgICBUZXh0VHJhY2sqIGdldEluYmFuZFRyYWNrKHVuc2lnbmVkKSBjb25zdDsKICAg
ICB2b2lkIGludmFsaWRhdGVUcmFja0luZGV4ZXNBZnRlclRyYWNrKFRleHRUcmFjayopOwogCi0g
ICAgU2NyaXB0RXhlY3V0aW9uQ29udGV4dCogbV9jb250ZXh0OwotICAgIEhUTUxNZWRpYUVsZW1l
bnQqIG1fb3duZXI7Ci0KLSAgICBWZWN0b3I8UmVmUHRyPEV2ZW50PiA+IG1fcGVuZGluZ0V2ZW50
czsKLSAgICBUaW1lcjxUZXh0VHJhY2tMaXN0PiBtX3BlbmRpbmdFdmVudFRpbWVyOwotCi0gICAg
RXZlbnRUYXJnZXREYXRhIG1fZXZlbnRUYXJnZXREYXRhOwotICAgIFZlY3RvcjxSZWZQdHI8VGV4
dFRyYWNrPiA+IG1fYWRkVHJhY2tUcmFja3M7Ci0gICAgVmVjdG9yPFJlZlB0cjxUZXh0VHJhY2s+
ID4gbV9lbGVtZW50VHJhY2tzOwotICAgIFZlY3RvcjxSZWZQdHI8VGV4dFRyYWNrPiA+IG1faW5i
YW5kVHJhY2tzOwotCi0gICAgaW50IG1fZGlzcGF0Y2hpbmdFdmVudHM7CisgICAgVmVjdG9yPFJl
ZlB0cjxXZWJDb3JlOjpUZXh0VHJhY2s+ID4gbV9hZGRUcmFja1RyYWNrczsKKyAgICBWZWN0b3I8
UmVmUHRyPFdlYkNvcmU6OlRleHRUcmFjaz4gPiBtX2VsZW1lbnRUcmFja3M7CiB9OwogCiB9IC8v
IG5hbWVzcGFjZSBXZWJDb3JlCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9odG1sL3RyYWNr
L1RyYWNrQmFzZS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL3RyYWNrL1RyYWNrQmFzZS5jcHAK
aW5kZXggNmEyYzM1ODIzZTYxOTYyYTM3YzlmOGY0Y2VmZDk4OWRkYWI1MGRmZS4uZGU0ZTM4NTc0
Y2Q4MTgwMmE2YWUwMTAxYTMwMGM2YjI5MGI5ODJhYyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNv
cmUvaHRtbC90cmFjay9UcmFja0Jhc2UuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvdHJh
Y2svVHJhY2tCYXNlLmNwcApAQCAtMzAsOCArMzAsMTAgQEAKIAogbmFtZXNwYWNlIFdlYkNvcmUg
ewogCi1UcmFja0Jhc2U6OlRyYWNrQmFzZShTY3JpcHRFeGVjdXRpb25Db250ZXh0KiBjb250ZXh0
LCBUeXBlIHR5cGUpCi0gICAgOiBtX3NjcmlwdEV4ZWN1dGlvbkNvbnRleHQoY29udGV4dCkKK1Ry
YWNrQmFzZTo6VHJhY2tCYXNlKFR5cGUgdHlwZSwgY29uc3QgQXRvbWljU3RyaW5nJiBsYWJlbCwg
Y29uc3QgQXRvbWljU3RyaW5nJiBsYW5ndWFnZSkKKyAgICA6IG1fbWVkaWFFbGVtZW50KDApCisg
ICAgLCBtX2xhYmVsKGxhYmVsKQorICAgICwgbV9sYW5ndWFnZShsYW5ndWFnZSkKIHsKICAgICBB
U1NFUlQodHlwZSAhPSBCYXNlVHJhY2spOwogICAgIG1fdHlwZSA9IHR5cGU7CkBAIC00MSwyNCAr
NDMsMTQgQEAgVHJhY2tCYXNlOjp+VHJhY2tCYXNlKCkKIHsKIH0KIAotY29uc3QgQXRvbWljU3Ry
aW5nJiBUcmFja0Jhc2U6OmludGVyZmFjZU5hbWUoKSBjb25zdAordm9pZCBUcmFja0Jhc2U6OnNl
dEtpbmQoY29uc3QgQXRvbWljU3RyaW5nJiBraW5kKQogewotICAgIHJldHVybiBldmVudE5hbWVz
KCkuaW50ZXJmYWNlRm9yVGV4dFRyYWNrOwotfQotCi1TY3JpcHRFeGVjdXRpb25Db250ZXh0KiBU
cmFja0Jhc2U6OnNjcmlwdEV4ZWN1dGlvbkNvbnRleHQoKSBjb25zdAotewotICAgIHJldHVybiBt
X3NjcmlwdEV4ZWN1dGlvbkNvbnRleHQ7Ci19CisgICAgU3RyaW5nIG9sZEtpbmQgPSBtX2tpbmQ7
CiAKLUV2ZW50VGFyZ2V0RGF0YSogVHJhY2tCYXNlOjpldmVudFRhcmdldERhdGEoKQotewotICAg
IHJldHVybiAmbV9ldmVudFRhcmdldERhdGE7Ci19Ci0KLUV2ZW50VGFyZ2V0RGF0YSogVHJhY2tC
YXNlOjplbnN1cmVFdmVudFRhcmdldERhdGEoKQotewotICAgIHJldHVybiAmbV9ldmVudFRhcmdl
dERhdGE7CisgICAgaWYgKGlzVmFsaWRLaW5kKGtpbmQpKQorICAgICAgICBtX2tpbmQgPSBraW5k
OworICAgIGVsc2UKKyAgICAgICAgbV9raW5kID0gZGVmYXVsdEtpbmRLZXl3b3JkKCk7CiB9CiAK
IH0gLy8gbmFtZXNwYWNlIFdlYkNvcmUKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2h0bWwv
dHJhY2svVHJhY2tCYXNlLmggYi9Tb3VyY2UvV2ViQ29yZS9odG1sL3RyYWNrL1RyYWNrQmFzZS5o
CmluZGV4IGMwMDY2MGYwNTNhZDY0OTQxNjU4ZjIwZDc1MDMwY2FiYzkzMjc5ODkuLjU0NjI4OThj
MGUwNTdlMjI3MGM5MTQxYTZhZDUyYjQzMmRhNzI0OGMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJD
b3JlL2h0bWwvdHJhY2svVHJhY2tCYXNlLmgKKysrIGIvU291cmNlL1dlYkNvcmUvaHRtbC90cmFj
ay9UcmFja0Jhc2UuaApAQCAtMzMsMzUgKzMzLDQyIEBACiAKIG5hbWVzcGFjZSBXZWJDb3JlIHsK
IAotY2xhc3MgU2NyaXB0RXhlY3V0aW9uQ29udGV4dDsKK2NsYXNzIEhUTUxNZWRpYUVsZW1lbnQ7
CiAKLWNsYXNzIFRyYWNrQmFzZSA6IHB1YmxpYyBSZWZDb3VudGVkPFRyYWNrQmFzZT4sIHB1Ymxp
YyBFdmVudFRhcmdldCB7CitjbGFzcyBUcmFja0Jhc2UgOiBwdWJsaWMgUmVmQ291bnRlZDxUcmFj
a0Jhc2U+IHsKIHB1YmxpYzoKICAgICB2aXJ0dWFsIH5UcmFja0Jhc2UoKTsKIAogICAgIGVudW0g
VHlwZSB7IEJhc2VUcmFjaywgVGV4dFRyYWNrLCBBdWRpb1RyYWNrLCBWaWRlb1RyYWNrIH07CiAg
ICAgVHlwZSB0eXBlKCkgY29uc3QgeyByZXR1cm4gbV90eXBlOyB9CiAKLSAgICB2aXJ0dWFsIGNv
bnN0IEF0b21pY1N0cmluZyYgaW50ZXJmYWNlTmFtZSgpIGNvbnN0OwotICAgIHZpcnR1YWwgU2Ny
aXB0RXhlY3V0aW9uQ29udGV4dCogc2NyaXB0RXhlY3V0aW9uQ29udGV4dCgpIGNvbnN0OwotICAg
IAotICAgIHVzaW5nIFJlZkNvdW50ZWQ8VHJhY2tCYXNlPjo6cmVmOwotICAgIHVzaW5nIFJlZkNv
dW50ZWQ8VHJhY2tCYXNlPjo6ZGVyZWY7CisgICAgdm9pZCBzZXRNZWRpYUVsZW1lbnQoSFRNTE1l
ZGlhRWxlbWVudCogZWxlbWVudCkgeyBtX21lZGlhRWxlbWVudCA9IGVsZW1lbnQ7IH0KKyAgICBI
VE1MTWVkaWFFbGVtZW50KiBtZWRpYUVsZW1lbnQoKSB7IHJldHVybiBtX21lZGlhRWxlbWVudDsg
fQorCisgICAgQXRvbWljU3RyaW5nIGtpbmQoKSBjb25zdCB7IHJldHVybiBtX2tpbmQ7IH0KKyAg
ICB2aXJ0dWFsIHZvaWQgc2V0S2luZChjb25zdCBBdG9taWNTdHJpbmcmKTsKKworICAgIEF0b21p
Y1N0cmluZyBsYWJlbCgpIGNvbnN0IHsgcmV0dXJuIG1fbGFiZWw7IH0KKyAgICB2b2lkIHNldExh
YmVsKGNvbnN0IEF0b21pY1N0cmluZyYgbGFiZWwpIHsgbV9sYWJlbCA9IGxhYmVsOyB9CisKKyAg
ICBBdG9taWNTdHJpbmcgbGFuZ3VhZ2UoKSBjb25zdCB7IHJldHVybiBtX2xhbmd1YWdlOyB9Cisg
ICAgdm9pZCBzZXRMYW5ndWFnZShjb25zdCBBdG9taWNTdHJpbmcmIGxhbmd1YWdlKSB7IG1fbGFu
Z3VhZ2UgPSBsYW5ndWFnZTsgfQorCisgICAgdmlydHVhbCB2b2lkIGNsZWFyQ2xpZW50KCkgPSAw
OwogCiBwcm90ZWN0ZWQ6Ci0gICAgVHJhY2tCYXNlKFNjcmlwdEV4ZWN1dGlvbkNvbnRleHQqLCBU
eXBlKTsKLSAgICAKLSAgICB2aXJ0dWFsIEV2ZW50VGFyZ2V0RGF0YSogZXZlbnRUYXJnZXREYXRh
KCk7Ci0gICAgdmlydHVhbCBFdmVudFRhcmdldERhdGEqIGVuc3VyZUV2ZW50VGFyZ2V0RGF0YSgp
OworICAgIFRyYWNrQmFzZShUeXBlLCBjb25zdCBBdG9taWNTdHJpbmcmIGxhYmVsLCBjb25zdCBB
dG9taWNTdHJpbmcmIGxhbmd1YWdlKTsKKworICAgIHZpcnR1YWwgYm9vbCBpc1ZhbGlkS2luZChj
b25zdCBBdG9taWNTdHJpbmcmKSBjb25zdCA9IDA7CisgICAgdmlydHVhbCBjb25zdCBBdG9taWNT
dHJpbmcmIGRlZmF1bHRLaW5kS2V5d29yZCgpIGNvbnN0ID0gMDsKKworICAgIEhUTUxNZWRpYUVs
ZW1lbnQqIG1fbWVkaWFFbGVtZW50OwogCiBwcml2YXRlOgogICAgIFR5cGUgbV90eXBlOwotICAg
IAotICAgIHZpcnR1YWwgdm9pZCByZWZFdmVudFRhcmdldCgpIHsgcmVmKCk7IH0KLSAgICB2aXJ0
dWFsIHZvaWQgZGVyZWZFdmVudFRhcmdldCgpIHsgZGVyZWYoKTsgfQotICAgIAotICAgIFNjcmlw
dEV4ZWN1dGlvbkNvbnRleHQqIG1fc2NyaXB0RXhlY3V0aW9uQ29udGV4dDsKLSAgICBFdmVudFRh
cmdldERhdGEgbV9ldmVudFRhcmdldERhdGE7CisgICAgQXRvbWljU3RyaW5nIG1fa2luZDsKKyAg
ICBBdG9taWNTdHJpbmcgbV9sYWJlbDsKKyAgICBBdG9taWNTdHJpbmcgbV9sYW5ndWFnZTsKIH07
CiAKIH0gLy8gbmFtZXNwYWNlIFdlYkNvcmUKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2h0
bWwvdHJhY2svVHJhY2tMaXN0QmFzZS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL3RyYWNrL1Ry
YWNrTGlzdEJhc2UuY3BwCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjFkNTliZDI0YjViNjJmYTg5Mjk5MTdmYTQ2ZjQ2
MjUxMDkxN2JhMDQKLS0tIC9kZXYvbnVsbAorKysgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL3RyYWNr
L1RyYWNrTGlzdEJhc2UuY3BwCkBAIC0wLDAgKzEsMTU3IEBACisvKgorICogQ29weXJpZ2h0IChD
KSAyMDExLCAyMDEyIEFwcGxlIEluYy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKgorICogUmVk
aXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3
aXRob3V0CisgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUg
Zm9sbG93aW5nIGNvbmRpdGlvbnMKKyAqIGFyZSBtZXQ6CisgKiAxLiBSZWRpc3RyaWJ1dGlvbnMg
b2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90
aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVy
LgorICogMi4gUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRo
ZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMg
YW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKKyAqICAgIGRvY3VtZW50YXRpb24g
YW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCisg
KgorICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBBUFBMRSBDT01QVVRFUiwgSU5DLiBg
YEFTIElTJycgQU5EIEFOWQorICogRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xV
RElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBUSEUKKyAqIElNUExJRUQgV0FSUkFOVElFUyBPRiBN
RVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUgorICogUFVSUE9TRSBB
UkUgRElTQ0xBSU1FRC4gIElOIE5PIEVWRU5UIFNIQUxMIEFQUExFIENPTVBVVEVSLCBJTkMuIE9S
CisgKiBDT05UUklCVVRPUlMgQkUgTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5D
SURFTlRBTCwgU1BFQ0lBTCwKKyAqIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VT
IChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywKKyAqIFBST0NVUkVNRU5UIE9GIFNVQlNU
SVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLCBEQVRBLCBPUgorICogUFJPRklU
UzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZIFRI
RU9SWQorICogT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklM
SVRZLCBPUiBUT1JUCisgKiAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklT
SU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UKKyAqIE9GIFRISVMgU09GVFdBUkUsIEVWRU4g
SUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuIAorICovCisKKyNp
bmNsdWRlICJjb25maWcuaCIKKworI2lmIEVOQUJMRShWSURFT19UUkFDSykKKworI2luY2x1ZGUg
IlRyYWNrTGlzdEJhc2UuaCIKKworI2luY2x1ZGUgIkV2ZW50TmFtZXMuaCIKKyNpbmNsdWRlICJI
VE1MTWVkaWFFbGVtZW50LmgiCisjaW5jbHVkZSAiU2NyaXB0RXhlY3V0aW9uQ29udGV4dC5oIgor
I2luY2x1ZGUgIlRyYWNrQmFzZS5oIgorI2luY2x1ZGUgIlRyYWNrRXZlbnQuaCIKKwordXNpbmcg
bmFtZXNwYWNlIFdlYkNvcmU7CisKK1RyYWNrTGlzdEJhc2U6OlRyYWNrTGlzdEJhc2UoSFRNTE1l
ZGlhRWxlbWVudCogb3duZXIsIFNjcmlwdEV4ZWN1dGlvbkNvbnRleHQqIGNvbnRleHQpCisgICAg
OiBtX2NvbnRleHQoY29udGV4dCkKKyAgICAsIG1fb3duZXIob3duZXIpCisgICAgLCBtX3BlbmRp
bmdFdmVudFRpbWVyKHRoaXMsICZUcmFja0xpc3RCYXNlOjphc3luY0V2ZW50VGltZXJGaXJlZCkK
KyAgICAsIG1fZGlzcGF0Y2hpbmdFdmVudHMoMCkKK3sKKyAgICBBU1NFUlQoY29udGV4dC0+aXNE
b2N1bWVudCgpKTsKK30KKworVHJhY2tMaXN0QmFzZTo6flRyYWNrTGlzdEJhc2UoKQoreworfQor
Cit1bnNpZ25lZCBUcmFja0xpc3RCYXNlOjpsZW5ndGgoKSBjb25zdAoreworICAgIHJldHVybiBt
X2luYmFuZFRyYWNrcy5zaXplKCk7Cit9CisKK2ludCBUcmFja0xpc3RCYXNlOjpnZXRUcmFja0lu
ZGV4KFRyYWNrQmFzZSAqdHJhY2spCit7CisgICAgcmV0dXJuIG1faW5iYW5kVHJhY2tzLmZpbmQo
dHJhY2spOworfQorCit2b2lkIFRyYWNrTGlzdEJhc2U6OnJlbW92ZShUcmFja0Jhc2UqIHRyYWNr
KQoreworICAgIHNpemVfdCBpbmRleCA9IG1faW5iYW5kVHJhY2tzLmZpbmQodHJhY2spOworICAg
IEFTU0VSVChpbmRleCAhPSBub3RGb3VuZCk7CisKKyAgICBBU1NFUlQodHJhY2stPm1lZGlhRWxl
bWVudCgpID09IG1fb3duZXIpOworICAgIHRyYWNrLT5zZXRNZWRpYUVsZW1lbnQoMCk7CisKKyAg
ICBSZWZQdHI8VHJhY2tCYXNlPiB0cmFja1JlZiA9IG1faW5iYW5kVHJhY2tzW2luZGV4XTsKKwor
ICAgIG1faW5iYW5kVHJhY2tzLnJlbW92ZShpbmRleCk7CisKKyAgICBzY2hlZHVsZUFkZFRyYWNr
RXZlbnQodHJhY2tSZWYucmVsZWFzZSgpKTsKK30KKworYm9vbCBUcmFja0xpc3RCYXNlOjpjb250
YWlucyhUcmFja0Jhc2UqIHRyYWNrKSBjb25zdAoreworICAgIHJldHVybiBtX2luYmFuZFRyYWNr
cy5maW5kKHRyYWNrKSAhPSBub3RGb3VuZDsKK30KKwordm9pZCBUcmFja0xpc3RCYXNlOjpzY2hl
ZHVsZUFkZFRyYWNrRXZlbnQoUGFzc1JlZlB0cjxUcmFja0Jhc2U+IHRyYWNrKQoreworICAgIC8v
IDQuOC4xMC41IExvYWRpbmcgdGhlIG1lZGlhIHJlc291cmNlCisgICAgLy8gLi4uCisgICAgLy8g
RmlyZSBhIHRydXN0ZWQgZXZlbnQgd2l0aCB0aGUgbmFtZSBhZGR0cmFjaywgdGhhdCBkb2VzIG5v
dCBidWJibGUgYW5kIGlzCisgICAgLy8gbm90IGNhbmNlbGFibGUsIGFuZCB0aGF0IHVzZXMgdGhl
IFRyYWNrRXZlbnQgaW50ZXJmYWNlLCB3aXRoIHRoZSB0cmFjaworICAgIC8vIGF0dHJpYnV0ZSBp
bml0aWFsaXplZCB0byB0aGUgbmV3IFQgb2JqZWN0LCBhdCB0aGlzCisgICAgLy8gVHJhY2tMaXN0
QmFzZSBvYmplY3QuCisKKyAgICBSZWZQdHI8VHJhY2tCYXNlPiB0cmFja1JlZiA9IHRyYWNrOwor
ICAgIFRyYWNrRXZlbnRJbml0IGluaXRpYWxpemVyOworICAgIGluaXRpYWxpemVyLnRyYWNrID0g
dHJhY2tSZWY7CisgICAgaW5pdGlhbGl6ZXIuYnViYmxlcyA9IGZhbHNlOworICAgIGluaXRpYWxp
emVyLmNhbmNlbGFibGUgPSBmYWxzZTsKKworICAgIG1fcGVuZGluZ0V2ZW50cy5hcHBlbmQoVHJh
Y2tFdmVudDo6Y3JlYXRlKGV2ZW50TmFtZXMoKS5hZGR0cmFja0V2ZW50LCBpbml0aWFsaXplcikp
OworICAgIGlmICghbV9wZW5kaW5nRXZlbnRUaW1lci5pc0FjdGl2ZSgpKQorICAgICAgICBtX3Bl
bmRpbmdFdmVudFRpbWVyLnN0YXJ0T25lU2hvdCgwKTsKK30KKwordm9pZCBUcmFja0xpc3RCYXNl
OjpzY2hlZHVsZVJlbW92ZVRyYWNrRXZlbnQoUGFzc1JlZlB0cjxUcmFja0Jhc2U+IHRyYWNrKQor
eworICAgIC8vIDQuOC4xMC42IE9mZnNldHMgaW50byB0aGUgbWVkaWEgcmVzb3VyY2UKKyAgICAv
LyBJZiBhdCBhbnkgdGltZSB0aGUgdXNlciBhZ2VudCBsZWFybnMgdGhhdCBhbiBhdWRpbyBvciB2
aWRlbyB0cmFjayBoYXMKKyAgICAvLyBlbmRlZCBhbmQgYWxsIG1lZGlhIGRhdGEgcmVsYXRpbmcg
dG8gdGhhdCB0cmFjayBjb3JyZXNwb25kcyB0byBwYXJ0cyBvZgorICAgIC8vIHRoZSBtZWRpYSB0
aW1lbGluZSB0aGF0IGFyZSBiZWZvcmUgdGhlIGVhcmxpZXN0IHBvc3NpYmxlIHBvc2l0aW9uLCB0
aGUKKyAgICAvLyB1c2VyIGFnZW50IG1heSBxdWV1ZSBhIHRhc2sgdG8gcmVtb3ZlIHRoZSB0cmFj
ayBmcm9tIHRoZSBhdWRpb1RyYWNrcworICAgIC8vIGF0dHJpYnV0ZSdzIFRyYWNrTGlzdEJhc2Ug
b2JqZWN0IG9yIHRoZSB2aWRlb1RyYWNrcyBhdHRyaWJ1dGUncworICAgIC8vIFRyYWNrTGlzdEJh
c2Ugb2JqZWN0IGFzIGFwcHJvcHJpYXRlIGFuZCB0aGVuIGZpcmUgYSB0cnVzdGVkIGV2ZW50Cisg
ICAgLy8gd2l0aCB0aGUgbmFtZSByZW1vdmV0cmFjaywgdGhhdCBkb2VzIG5vdCBidWJibGUgYW5k
IGlzIG5vdCBjYW5jZWxhYmxlLAorICAgIC8vIGFuZCB0aGF0IHVzZXMgdGhlIFRyYWNrRXZlbnQg
aW50ZXJmYWNlLCB3aXRoIHRoZSB0cmFjayBhdHRyaWJ1dGUKKyAgICAvLyBpbml0aWFsaXplZCB0
byB0aGUgVCBvciBUIG9iamVjdCByZXByZXNlbnRpbmcgdGhlCisgICAgLy8gdHJhY2ssIGF0IHRo
ZSBtZWRpYSBlbGVtZW50J3MgYWZvcmVtZW50aW9uZWQgVHJhY2tMaXN0QmFzZSBvcgorICAgIC8v
IFRyYWNrTGlzdEJhc2Ugb2JqZWN0LgorCisgICAgUmVmUHRyPFRyYWNrQmFzZT4gdHJhY2tSZWYg
PSB0cmFjazsKKyAgICBUcmFja0V2ZW50SW5pdCBpbml0aWFsaXplcjsKKyAgICBpbml0aWFsaXpl
ci50cmFjayA9IHRyYWNrUmVmOworICAgIGluaXRpYWxpemVyLmJ1YmJsZXMgPSBmYWxzZTsKKyAg
ICBpbml0aWFsaXplci5jYW5jZWxhYmxlID0gZmFsc2U7CisKKyAgICBtX3BlbmRpbmdFdmVudHMu
YXBwZW5kKFRyYWNrRXZlbnQ6OmNyZWF0ZShldmVudE5hbWVzKCkucmVtb3ZldHJhY2tFdmVudCwg
aW5pdGlhbGl6ZXIpKTsKKyAgICBpZiAoIW1fcGVuZGluZ0V2ZW50VGltZXIuaXNBY3RpdmUoKSkK
KyAgICAgICAgbV9wZW5kaW5nRXZlbnRUaW1lci5zdGFydE9uZVNob3QoMCk7Cit9CisKK3ZvaWQg
VHJhY2tMaXN0QmFzZTo6c2NoZWR1bGVDaGFuZ2VFdmVudCgpCit7CisgICAgLy8gNC44LjEwLjYg
T2Zmc2V0cyBpbnRvIHRoZSBtZWRpYSByZXNvdXJjZQorICAgIC8vIFdoZW5ldmVyIGFuIGF1ZGlv
IHRyYWNrIGluIGFuIFRyYWNrTGlzdEJhc2UgaXMgZW5hYmxlZCBvciBkaXNhYmxlZCwgdGhlCisg
ICAgLy8gdXNlciBhZ2VudCBtdXN0IHF1ZXVlIGEgdGFzayB0byBmaXJlIGEgc2ltcGxlIGV2ZW50
IG5hbWVkIGNoYW5nZSBhdCB0aGUKKyAgICAvLyBUcmFja0xpc3RCYXNlIG9iamVjdC4KKworICAg
IEV2ZW50SW5pdCBpbml0aWFsaXplcjsKKyAgICBpbml0aWFsaXplci5idWJibGVzID0gZmFsc2U7
CisgICAgaW5pdGlhbGl6ZXIuY2FuY2VsYWJsZSA9IGZhbHNlOworCisgICAgbV9wZW5kaW5nRXZl
bnRzLmFwcGVuZChFdmVudDo6Y3JlYXRlKGV2ZW50TmFtZXMoKS5jaGFuZ2VFdmVudCwgaW5pdGlh
bGl6ZXIpKTsKKyAgICBpZiAoIW1fcGVuZGluZ0V2ZW50VGltZXIuaXNBY3RpdmUoKSkKKyAgICAg
ICAgbV9wZW5kaW5nRXZlbnRUaW1lci5zdGFydE9uZVNob3QoMCk7Cit9CisKK3ZvaWQgVHJhY2tM
aXN0QmFzZTo6YXN5bmNFdmVudFRpbWVyRmlyZWQoVGltZXI8VHJhY2tMaXN0QmFzZT4qKQorewor
ICAgIFZlY3RvcjxSZWZQdHI8RXZlbnQ+ID4gcGVuZGluZ0V2ZW50czsKKworICAgICsrbV9kaXNw
YXRjaGluZ0V2ZW50czsKKyAgICBtX3BlbmRpbmdFdmVudHMuc3dhcChwZW5kaW5nRXZlbnRzKTsK
KyAgICBzaXplX3QgY291bnQgPSBwZW5kaW5nRXZlbnRzLnNpemUoKTsKKyAgICBmb3IgKHNpemVf
dCBpbmRleCA9IDA7IGluZGV4IDwgY291bnQ7ICsraW5kZXgpCisgICAgICAgIGRpc3BhdGNoRXZl
bnQocGVuZGluZ0V2ZW50c1tpbmRleF0ucmVsZWFzZSgpLCBJR05PUkVfRVhDRVBUSU9OKTsKKyAg
ICAtLW1fZGlzcGF0Y2hpbmdFdmVudHM7Cit9CisKKyNlbmRpZgpkaWZmIC0tZ2l0IGEvU291cmNl
L1dlYkNvcmUvaHRtbC90cmFjay9UcmFja0xpc3RCYXNlLmggYi9Tb3VyY2UvV2ViQ29yZS9odG1s
L3RyYWNrL1RyYWNrTGlzdEJhc2UuaApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi40NWZhNTYyZWI3NGFlNDU5Njc2MmFi
MzU1NzMzY2RlNDY1M2Q1Y2IyCi0tLSAvZGV2L251bGwKKysrIGIvU291cmNlL1dlYkNvcmUvaHRt
bC90cmFjay9UcmFja0xpc3RCYXNlLmgKQEAgLTAsMCArMSwxMDEgQEAKKy8qCisgKiBDb3B5cmln
aHQgKEMpIDIwMTEsIDIwMTIgQXBwbGUgSW5jLiAgQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAqCisg
KiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRo
IG9yIHdpdGhvdXQKKyAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0
IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucworICogYXJlIG1ldDoKKyAqIDEuIFJlZGlzdHJpYnV0
aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAg
ICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2Ns
YWltZXIuCisgKiAyLiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1
Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0
aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQorICogICAgZG9jdW1lbnRh
dGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlv
bi4KKyAqCisgKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIEFQUExFIENPTVBVVEVSLCBJ
TkMuIGBgQVMgSVMnJyBBTkQgQU5ZCisgKiBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywg
SU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFRIRQorICogSU1QTElFRCBXQVJSQU5USUVT
IE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSCisgKiBQVVJQ
T1NFIEFSRSBESVNDTEFJTUVELiAgSU4gTk8gRVZFTlQgU0hBTEwgQVBQTEUgQ09NUFVURVIsIElO
Qy4gT1IKKyAqIENPTlRSSUJVVE9SUyBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNU
LCBJTkNJREVOVEFMLCBTUEVDSUFMLAorICogRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMIERB
TUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLAorICogUFJPQ1VSRU1FTlQgT0Yg
U1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsIERBVEEsIE9SCisgKiBQ
Uk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBB
TlkgVEhFT1JZCisgKiBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBM
SUFCSUxJVFksIE9SIFRPUlQKKyAqIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0Up
IEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRQorICogT0YgVEhJUyBTT0ZUV0FSRSwg
RVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4gCisgKi8K
KworI2lmbmRlZiBUcmFja0xpc3RCYXNlX2gKKyNkZWZpbmUgVHJhY2tMaXN0QmFzZV9oCisKKyNp
ZiBFTkFCTEUoVklERU9fVFJBQ0spCisKKyNpbmNsdWRlICJFdmVudExpc3RlbmVyLmgiCisjaW5j
bHVkZSAiRXZlbnRUYXJnZXQuaCIKKyNpbmNsdWRlICJUaW1lci5oIgorI2luY2x1ZGUgPHd0Zi9Q
YXNzUmVmUHRyLmg+CisjaW5jbHVkZSA8d3RmL1JlZkNvdW50ZWQuaD4KKyNpbmNsdWRlIDx3dGYv
VmVjdG9yLmg+CisKK25hbWVzcGFjZSBXZWJDb3JlIHsKKworY2xhc3MgSFRNTE1lZGlhRWxlbWVu
dDsKK2NsYXNzIFRyYWNrQmFzZTsKKworY2xhc3MgVHJhY2tMaXN0QmFzZSA6IHB1YmxpYyBSZWZD
b3VudGVkPFRyYWNrTGlzdEJhc2U+LCBwdWJsaWMgRXZlbnRUYXJnZXQgeworcHVibGljOgorICAg
IH5UcmFja0xpc3RCYXNlKCk7CisKKyAgICB2aXJ0dWFsIHVuc2lnbmVkIGxlbmd0aCgpIGNvbnN0
OworICAgIHZpcnR1YWwgaW50IGdldFRyYWNrSW5kZXgoVHJhY2tCYXNlKik7CisgICAgdmlydHVh
bCBib29sIGNvbnRhaW5zKFRyYWNrQmFzZSopIGNvbnN0OworICAgIHZpcnR1YWwgdm9pZCByZW1v
dmUoVHJhY2tCYXNlKik7CisKKyAgICAvLyBFdmVudFRhcmdldAorICAgIHZpcnR1YWwgY29uc3Qg
QXRvbWljU3RyaW5nJiBpbnRlcmZhY2VOYW1lKCkgY29uc3QgPSAwOworICAgIHVzaW5nIFJlZkNv
dW50ZWQ8VHJhY2tMaXN0QmFzZT46OnJlZjsKKyAgICB1c2luZyBSZWZDb3VudGVkPFRyYWNrTGlz
dEJhc2U+OjpkZXJlZjsKKyAgICB2aXJ0dWFsIFNjcmlwdEV4ZWN1dGlvbkNvbnRleHQqIHNjcmlw
dEV4ZWN1dGlvbkNvbnRleHQoKSBjb25zdCB7IHJldHVybiBtX2NvbnRleHQ7IH0KKworICAgIERF
RklORV9BVFRSSUJVVEVfRVZFTlRfTElTVEVORVIoYWRkdHJhY2spOworICAgIERFRklORV9BVFRS
SUJVVEVfRVZFTlRfTElTVEVORVIoY2hhbmdlKTsKKyAgICBERUZJTkVfQVRUUklCVVRFX0VWRU5U
X0xJU1RFTkVSKHJlbW92ZXRyYWNrKTsKKworICAgIHZvaWQgY2xlYXJPd25lcigpIHsgbV9vd25l
ciA9IDA7IH0KKyAgICBIVE1MTWVkaWFFbGVtZW50KiBvd25lcigpIGNvbnN0IHsgcmV0dXJuIG1f
b3duZXI7IH0KKworICAgIGJvb2wgaXNGaXJpbmdFdmVudExpc3RlbmVycygpIHsgcmV0dXJuIG1f
ZGlzcGF0Y2hpbmdFdmVudHM7IH0KKworICAgIC8vIE5lZWRzIHRvIGJlIHB1YmxpYyBzbyB0cmFj
a3MgY2FuIGNhbGwgaXQKKyAgICB2b2lkIHNjaGVkdWxlQ2hhbmdlRXZlbnQoKTsKKworcHJvdGVj
dGVkOgorICAgIFRyYWNrTGlzdEJhc2UoSFRNTE1lZGlhRWxlbWVudCosIFNjcmlwdEV4ZWN1dGlv
bkNvbnRleHQqKTsKKworICAgIHZvaWQgc2NoZWR1bGVBZGRUcmFja0V2ZW50KFBhc3NSZWZQdHI8
VHJhY2tCYXNlPik7CisgICAgdm9pZCBzY2hlZHVsZVJlbW92ZVRyYWNrRXZlbnQoUGFzc1JlZlB0
cjxUcmFja0Jhc2U+KTsKKworICAgIFZlY3RvcjxSZWZQdHI8VHJhY2tCYXNlPiA+IG1faW5iYW5k
VHJhY2tzOworCitwcml2YXRlOgorICAgIC8vIEV2ZW50VGFyZ2V0CisgICAgdmlydHVhbCB2b2lk
IHJlZkV2ZW50VGFyZ2V0KCkgeyByZWYoKTsgfQorICAgIHZpcnR1YWwgdm9pZCBkZXJlZkV2ZW50
VGFyZ2V0KCkgeyBkZXJlZigpOyB9CisgICAgdmlydHVhbCBFdmVudFRhcmdldERhdGEqIGV2ZW50
VGFyZ2V0RGF0YSgpIHsgcmV0dXJuICZtX2V2ZW50VGFyZ2V0RGF0YTsgfQorICAgIHZpcnR1YWwg
RXZlbnRUYXJnZXREYXRhKiBlbnN1cmVFdmVudFRhcmdldERhdGEoKSB7IHJldHVybiAmbV9ldmVu
dFRhcmdldERhdGE7IH0KKworICAgIHZvaWQgYXN5bmNFdmVudFRpbWVyRmlyZWQoVGltZXI8VHJh
Y2tMaXN0QmFzZT4qKTsKKworICAgIFNjcmlwdEV4ZWN1dGlvbkNvbnRleHQqIG1fY29udGV4dDsK
KyAgICBIVE1MTWVkaWFFbGVtZW50KiBtX293bmVyOworCisgICAgVmVjdG9yPFJlZlB0cjxFdmVu
dD4gPiBtX3BlbmRpbmdFdmVudHM7CisgICAgVGltZXI8VHJhY2tMaXN0QmFzZT4gbV9wZW5kaW5n
RXZlbnRUaW1lcjsKKworICAgIEV2ZW50VGFyZ2V0RGF0YSBtX2V2ZW50VGFyZ2V0RGF0YTsKKwor
ICAgIGludCBtX2Rpc3BhdGNoaW5nRXZlbnRzOworfTsKKworfSAvLyBuYW1lc3BhY2UgV2ViQ29y
ZQorCisjZW5kaWYKKyNlbmRpZgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0v
Z3JhcGhpY3MvTWVkaWFQbGF5ZXIuY3BwIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhp
Y3MvTWVkaWFQbGF5ZXIuY3BwCmluZGV4IDFiZjA2MTg0MTdjODc2NDM3NmQ0MDgyMTM0ODVlZTNi
NWMxNDlmNjQuLmZmYzUzNDg1MzRkMzJjZjc5M2QwMWUzNjRlMTIyOTE5ZWZkMzc2MWIgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL01lZGlhUGxheWVyLmNwcAor
KysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9NZWRpYVBsYXllci5jcHAKQEAg
LTExMDIsNyArMTEwMiw3IEBAIHZvaWQgTWVkaWFQbGF5ZXI6OmFkZFRleHRUcmFjayhQYXNzUmVm
UHRyPEluYmFuZFRleHRUcmFja1ByaXZhdGU+IHRyYWNrKQogICAgIGlmICghbV9tZWRpYVBsYXll
ckNsaWVudCkKICAgICAgICAgcmV0dXJuOwogCi0gICAgbV9tZWRpYVBsYXllckNsaWVudC0+bWVk
aWFQbGF5ZXJEaWRBZGRUcmFjayh0cmFjayk7CisgICAgbV9tZWRpYVBsYXllckNsaWVudC0+bWVk
aWFQbGF5ZXJEaWRBZGRUZXh0VHJhY2sodHJhY2spOwogfQogCiB2b2lkIE1lZGlhUGxheWVyOjpy
ZW1vdmVUZXh0VHJhY2soUGFzc1JlZlB0cjxJbmJhbmRUZXh0VHJhY2tQcml2YXRlPiB0cmFjaykK
QEAgLTExMTAsNyArMTExMCw3IEBAIHZvaWQgTWVkaWFQbGF5ZXI6OnJlbW92ZVRleHRUcmFjayhQ
YXNzUmVmUHRyPEluYmFuZFRleHRUcmFja1ByaXZhdGU+IHRyYWNrKQogICAgIGlmICghbV9tZWRp
YVBsYXllckNsaWVudCkKICAgICAgICAgcmV0dXJuOwogCi0gICAgbV9tZWRpYVBsYXllckNsaWVu
dC0+bWVkaWFQbGF5ZXJEaWRSZW1vdmVUcmFjayh0cmFjayk7CisgICAgbV9tZWRpYVBsYXllckNs
aWVudC0+bWVkaWFQbGF5ZXJEaWRSZW1vdmVUZXh0VHJhY2sodHJhY2spOwogfQogCiBib29sIE1l
ZGlhUGxheWVyOjpyZXF1aXJlc1RleHRUcmFja1JlcHJlc2VudGF0aW9uKCkgY29uc3QKZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL01lZGlhUGxheWVyLmggYi9T
b3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9NZWRpYVBsYXllci5oCmluZGV4IGUxN2Fk
NmM5MDA4M2VlNGJkNzYyNTkzZGEzZDgxZjQ1NTE2YWFmYzkuLmE4MTExMTg4NWNiMmU0ODRiY2Ez
MmM4MDkwODY5ODkwNTBiMDQzNGMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3Jt
L2dyYXBoaWNzL01lZGlhUGxheWVyLmgKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3Jh
cGhpY3MvTWVkaWFQbGF5ZXIuaApAQCAtMjE4LDggKzIxOCw4IEBAIHB1YmxpYzoKICAgICB2aXJ0
dWFsIENhY2hlZFJlc291cmNlTG9hZGVyKiBtZWRpYVBsYXllckNhY2hlZFJlc291cmNlTG9hZGVy
KCkgeyByZXR1cm4gMDsgfQogCiAjaWYgRU5BQkxFKFZJREVPX1RSQUNLKQotICAgIHZpcnR1YWwg
dm9pZCBtZWRpYVBsYXllckRpZEFkZFRyYWNrKFBhc3NSZWZQdHI8SW5iYW5kVGV4dFRyYWNrUHJp
dmF0ZT4pIHsgfQotICAgIHZpcnR1YWwgdm9pZCBtZWRpYVBsYXllckRpZFJlbW92ZVRyYWNrKFBh
c3NSZWZQdHI8SW5iYW5kVGV4dFRyYWNrUHJpdmF0ZT4pIHsgfQorICAgIHZpcnR1YWwgdm9pZCBt
ZWRpYVBsYXllckRpZEFkZFRleHRUcmFjayhQYXNzUmVmUHRyPEluYmFuZFRleHRUcmFja1ByaXZh
dGU+KSB7IH0KKyAgICB2aXJ0dWFsIHZvaWQgbWVkaWFQbGF5ZXJEaWRSZW1vdmVUZXh0VHJhY2so
UGFzc1JlZlB0cjxJbmJhbmRUZXh0VHJhY2tQcml2YXRlPikgeyB9CiAKICAgICB2aXJ0dWFsIHZv
aWQgdGV4dFRyYWNrUmVwcmVzZW50YXRpb25Cb3VuZHNDaGFuZ2VkKGNvbnN0IEludFJlY3QmKSB7
IH0KICAgICB2aXJ0dWFsIHZvaWQgcGFpbnRUZXh0VHJhY2tSZXByZXNlbnRhdGlvbihHcmFwaGlj
c0NvbnRleHQqLCBjb25zdCBJbnRSZWN0JikgeyB9Cg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>197205</attachid>
            <date>2013-04-09 21:48:37 -0700</date>
            <delta_ts>2013-04-10 11:06:08 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-114330-20130409224819.patch</filename>
            <type>text/plain</type>
            <size>52724</size>
            <attacher name="Brendan Long">b.long</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTQ4MDc0CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggNzU5NmU1YzJiOGIwODFl
NWFmMzk3OThlODdiMWIyYzg0MGRmNDMxYS4uN2E5ZjQwMzgwNjMzMTI4MDlhNGFkYjYwZWU4MGQx
YTEyNzRmMjdjMCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDEwMiBAQAorMjAxMy0wNC0wOSAgQnJl
bmRhbiBMb25nICA8Yi5sb25nQGNhYmxlbGFicy5jb20+CisKKyAgICAgICAgUmVmYWN0b3IgVGV4
dFRyYWNrIGFuZCBUZXh0VHJhY2tMaXN0IHRvIG1ha2UgaXQgZWFzaWVyIHRvIGFkZCBhdWRpbyBh
bmQgdmlkZW8gdHJhY2tzCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVn
LmNnaT9pZD0xMTQzMzAKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKwor
ICAgICAgICBObyBuZXcgdGVzdHMgYmVjYXVzZSB0aGlzIGRvZXNuJ3QgYWRkIG5ldyBmdW5jdGlv
bmFsaXR5LgorCisgICAgICAgICogQ01ha2VMaXN0cy50eHQ6CisgICAgICAgICogVGFyZ2V0LnBy
aToKKyAgICAgICAgKiBodG1sL0hUTUxNZWRpYUVsZW1lbnQuY3BwOgorICAgICAgICAoV2ViQ29y
ZTo6SFRNTE1lZGlhRWxlbWVudDo6bWVkaWFQbGF5ZXJEaWRBZGRUZXh0VHJhY2spOgorICAgICAg
ICAoV2ViQ29yZTo6SFRNTE1lZGlhRWxlbWVudDo6bWVkaWFQbGF5ZXJEaWRSZW1vdmVUZXh0VHJh
Y2spOgorICAgICAgICAoV2ViQ29yZTo6SFRNTE1lZGlhRWxlbWVudDo6YWRkVGV4dFRyYWNrKToK
KyAgICAgICAgKFdlYkNvcmU6OkhUTUxNZWRpYUVsZW1lbnQ6OnJlbW92ZVRleHRUcmFjayk6Cisg
ICAgICAgIChXZWJDb3JlOjpIVE1MTWVkaWFFbGVtZW50OjpyZW1vdmVBbGxJbmJhbmRUcmFja3Mp
OgorICAgICAgICAoV2ViQ29yZTo6SFRNTE1lZGlhRWxlbWVudDo6ZGlkQWRkVGV4dFRyYWNrKToK
KyAgICAgICAgKFdlYkNvcmU6OkhUTUxNZWRpYUVsZW1lbnQ6OmRpZFJlbW92ZVRleHRUcmFjayk6
CisgICAgICAgICogaHRtbC9IVE1MTWVkaWFFbGVtZW50Lmg6CisgICAgICAgIChXZWJDb3JlKToK
KyAgICAgICAgKEhUTUxNZWRpYUVsZW1lbnQpOgorICAgICAgICAqIGh0bWwvSFRNTFRyYWNrRWxl
bWVudC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpIVE1MVHJhY2tFbGVtZW50OjppbnNlcnRlZElu
dG8pOgorICAgICAgICAoV2ViQ29yZTo6SFRNTFRyYWNrRWxlbWVudDo6cmVtb3ZlZEZyb20pOgor
ICAgICAgICAqIGh0bWwvdHJhY2svVGV4dFRyYWNrLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlRl
eHRUcmFjazo6VGV4dFRyYWNrKToKKyAgICAgICAgKFdlYkNvcmU6OlRleHRUcmFjazo6aW50ZXJm
YWNlTmFtZSk6CisgICAgICAgIChXZWJDb3JlKToKKyAgICAgICAgKFdlYkNvcmU6OlRleHRUcmFj
azo6c2NyaXB0RXhlY3V0aW9uQ29udGV4dCk6CisgICAgICAgIChXZWJDb3JlOjpUZXh0VHJhY2s6
OmV2ZW50VGFyZ2V0RGF0YSk6CisgICAgICAgIChXZWJDb3JlOjpUZXh0VHJhY2s6OmVuc3VyZUV2
ZW50VGFyZ2V0RGF0YSk6CisgICAgICAgIChXZWJDb3JlOjpUZXh0VHJhY2s6OmlzVmFsaWRLaW5k
KToKKyAgICAgICAgKFdlYkNvcmU6OlRleHRUcmFjazo6c2V0S2luZCk6CisgICAgICAgIChXZWJD
b3JlOjpUZXh0VHJhY2s6OmlzUmVuZGVyZWQpOgorICAgICAgICAoV2ViQ29yZTo6VGV4dFRyYWNr
OjpwbGF0Zm9ybVRleHRUcmFjayk6CisgICAgICAgIChXZWJDb3JlOjpUZXh0VHJhY2s6OmlzTWFp
blByb2dyYW1Db250ZW50KToKKyAgICAgICAgKiBodG1sL3RyYWNrL1RleHRUcmFjay5oOgorICAg
ICAgICAoV2ViQ29yZSk6CisgICAgICAgIChUZXh0VHJhY2spOgorICAgICAgICAoV2ViQ29yZTo6
VGV4dFRyYWNrOjpkZWZhdWx0S2luZEtleXdvcmQpOgorICAgICAgICAoV2ViQ29yZTo6VGV4dFRy
YWNrOjpjbGllbnQpOgorICAgICAgICAoV2ViQ29yZTo6VGV4dFRyYWNrOjpyZWZFdmVudFRhcmdl
dCk6CisgICAgICAgIChXZWJDb3JlOjpUZXh0VHJhY2s6OmRlcmVmRXZlbnRUYXJnZXQpOgorICAg
ICAgICAqIGh0bWwvdHJhY2svVGV4dFRyYWNrTGlzdC5jcHA6CisgICAgICAgIChUZXh0VHJhY2tM
aXN0OjpUZXh0VHJhY2tMaXN0KToKKyAgICAgICAgKFRleHRUcmFja0xpc3Q6OmdldFRyYWNrSW5k
ZXgpOgorICAgICAgICAoVGV4dFRyYWNrTGlzdDo6Z2V0VHJhY2tJbmRleFJlbGF0aXZlVG9SZW5k
ZXJlZFRyYWNrcyk6CisgICAgICAgIChUZXh0VHJhY2tMaXN0OjppdGVtKToKKyAgICAgICAgKFRl
eHRUcmFja0xpc3Q6OmdldEluYmFuZFRyYWNrKToKKyAgICAgICAgKFRleHRUcmFja0xpc3Q6Omlu
dmFsaWRhdGVUcmFja0luZGV4ZXNBZnRlclRyYWNrKToKKyAgICAgICAgKFRleHRUcmFja0xpc3Q6
OmFwcGVuZCk6CisgICAgICAgIChUZXh0VHJhY2tMaXN0OjpyZW1vdmUpOgorICAgICAgICAoVGV4
dFRyYWNrTGlzdDo6Y29udGFpbnMpOgorICAgICAgICAqIGh0bWwvdHJhY2svVGV4dFRyYWNrTGlz
dC5oOgorICAgICAgICAoV2ViQ29yZSk6CisgICAgICAgIChUZXh0VHJhY2tMaXN0KToKKyAgICAg
ICAgKiBodG1sL3RyYWNrL1RyYWNrQmFzZS5jcHA6CisgICAgICAgIChXZWJDb3JlOjpUcmFja0Jh
c2U6OlRyYWNrQmFzZSk6CisgICAgICAgIChXZWJDb3JlOjpUcmFja0Jhc2U6OnNldEtpbmQpOgor
ICAgICAgICAqIGh0bWwvdHJhY2svVHJhY2tCYXNlLmg6CisgICAgICAgIChXZWJDb3JlKToKKyAg
ICAgICAgKFdlYkNvcmU6OlRyYWNrQmFzZTo6c2V0TWVkaWFFbGVtZW50KToKKyAgICAgICAgKFdl
YkNvcmU6OlRyYWNrQmFzZTo6bWVkaWFFbGVtZW50KToKKyAgICAgICAgKFRyYWNrQmFzZSk6Cisg
ICAgICAgIChXZWJDb3JlOjpUcmFja0Jhc2U6OmtpbmQpOgorICAgICAgICAoV2ViQ29yZTo6VHJh
Y2tCYXNlOjpsYWJlbCk6CisgICAgICAgIChXZWJDb3JlOjpUcmFja0Jhc2U6OnNldExhYmVsKToK
KyAgICAgICAgKFdlYkNvcmU6OlRyYWNrQmFzZTo6bGFuZ3VhZ2UpOgorICAgICAgICAoV2ViQ29y
ZTo6VHJhY2tCYXNlOjpzZXRMYW5ndWFnZSk6CisgICAgICAgICogaHRtbC90cmFjay9UcmFja0xp
c3RCYXNlLmNwcDogQWRkZWQuCisgICAgICAgIChUcmFja0xpc3RCYXNlOjpUcmFja0xpc3RCYXNl
KToKKyAgICAgICAgKFRyYWNrTGlzdEJhc2U6On5UcmFja0xpc3RCYXNlKToKKyAgICAgICAgKFRy
YWNrTGlzdEJhc2U6Omxlbmd0aCk6CisgICAgICAgIChUcmFja0xpc3RCYXNlOjpnZXRUcmFja0lu
ZGV4KToKKyAgICAgICAgKFRyYWNrTGlzdEJhc2U6OnJlbW92ZSk6CisgICAgICAgIChUcmFja0xp
c3RCYXNlOjpjb250YWlucyk6CisgICAgICAgIChUcmFja0xpc3RCYXNlOjpzY2hlZHVsZUFkZFRy
YWNrRXZlbnQpOgorICAgICAgICAoVHJhY2tMaXN0QmFzZTo6c2NoZWR1bGVSZW1vdmVUcmFja0V2
ZW50KToKKyAgICAgICAgKFRyYWNrTGlzdEJhc2U6OnNjaGVkdWxlQ2hhbmdlRXZlbnQpOgorICAg
ICAgICAoVHJhY2tMaXN0QmFzZTo6YXN5bmNFdmVudFRpbWVyRmlyZWQpOgorICAgICAgICAqIGh0
bWwvdHJhY2svVHJhY2tMaXN0QmFzZS5oOiBDb3BpZWQgZnJvbSBTb3VyY2UvV2ViQ29yZS9odG1s
L3RyYWNrL1RleHRUcmFja0xpc3QuaC4KKyAgICAgICAgKFdlYkNvcmUpOgorICAgICAgICAoVHJh
Y2tMaXN0QmFzZSk6CisgICAgICAgIChXZWJDb3JlOjpUcmFja0xpc3RCYXNlOjpzY3JpcHRFeGVj
dXRpb25Db250ZXh0KToKKyAgICAgICAgKFdlYkNvcmU6OlRyYWNrTGlzdEJhc2U6OmNsZWFyT3du
ZXIpOgorICAgICAgICAoV2ViQ29yZTo6VHJhY2tMaXN0QmFzZTo6b3duZXIpOgorICAgICAgICAo
V2ViQ29yZTo6VHJhY2tMaXN0QmFzZTo6aXNGaXJpbmdFdmVudExpc3RlbmVycyk6CisgICAgICAg
IChXZWJDb3JlOjpUcmFja0xpc3RCYXNlOjpyZWZFdmVudFRhcmdldCk6CisgICAgICAgIChXZWJD
b3JlOjpUcmFja0xpc3RCYXNlOjpkZXJlZkV2ZW50VGFyZ2V0KToKKyAgICAgICAgKFdlYkNvcmU6
OlRyYWNrTGlzdEJhc2U6OmV2ZW50VGFyZ2V0RGF0YSk6CisgICAgICAgIChXZWJDb3JlOjpUcmFj
a0xpc3RCYXNlOjplbnN1cmVFdmVudFRhcmdldERhdGEpOgorICAgICAgICAqIHBsYXRmb3JtL2dy
YXBoaWNzL01lZGlhUGxheWVyLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6Ok1lZGlhUGxheWVyOjph
ZGRUZXh0VHJhY2spOgorICAgICAgICAoV2ViQ29yZTo6TWVkaWFQbGF5ZXI6OnJlbW92ZVRleHRU
cmFjayk6CisgICAgICAgICogcGxhdGZvcm0vZ3JhcGhpY3MvTWVkaWFQbGF5ZXIuaDoKKyAgICAg
ICAgKFdlYkNvcmU6Ok1lZGlhUGxheWVyQ2xpZW50OjptZWRpYVBsYXllckRpZEFkZFRleHRUcmFj
ayk6CisgICAgICAgIChXZWJDb3JlOjpNZWRpYVBsYXllckNsaWVudDo6bWVkaWFQbGF5ZXJEaWRS
ZW1vdmVUZXh0VHJhY2spOgorCiAyMDEzLTA0LTA5ICBCZW5qYW1pbiBQb3VsYWluICA8YnBvdWxh
aW5AYXBwbGUuY29tPgogCiAgICAgICAgIFJlbW92ZSBjaHJvbWl1bSBleGNlcHRpb25zIGZyb20g
V2ViQ29yZSdzIGdpdGF0dHJpYnV0ZXMKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL0NNYWtl
TGlzdHMudHh0IGIvU291cmNlL1dlYkNvcmUvQ01ha2VMaXN0cy50eHQKaW5kZXggNDYxODMyNWEz
Y2ZhY2VhYWQ2ZWFlNzczMGQ2ZWU3MDViYjkwODRhNS4uMTExMDE3YTFjMGY2NGRhY2JjODYyYjlm
YTY5NmY3MzRiOGFkZjdiMyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ01ha2VMaXN0cy50
eHQKKysrIGIvU291cmNlL1dlYkNvcmUvQ01ha2VMaXN0cy50eHQKQEAgLTU0OSwxMiArNTQ5LDYg
QEAgc2V0KFdlYkNvcmVfSURMX0ZJTEVTCiAgICAgaHRtbC9zaGFkb3cvSFRNTENvbnRlbnRFbGVt
ZW50LmlkbAogICAgIGh0bWwvc2hhZG93L0hUTUxTaGFkb3dFbGVtZW50LmlkbAogCi0gICAgaHRt
bC90cmFjay9UZXh0VHJhY2suaWRsCi0gICAgaHRtbC90cmFjay9UZXh0VHJhY2tDdWUuaWRsCi0g
ICAgaHRtbC90cmFjay9UZXh0VHJhY2tDdWVMaXN0LmlkbAotICAgIGh0bWwvdHJhY2svVGV4dFRy
YWNrTGlzdC5pZGwKLSAgICBodG1sL3RyYWNrL1RyYWNrRXZlbnQuaWRsCi0KICAgICBpbnNwZWN0
b3IvSW5qZWN0ZWRTY3JpcHRIb3N0LmlkbAogICAgIGluc3BlY3Rvci9JbnNwZWN0b3JGcm9udGVu
ZEhvc3QuaWRsCiAgICAgaW5zcGVjdG9yL0phdmFTY3JpcHRDYWxsRnJhbWUuaWRsCkBAIC0xNTkz
LDE5ICsxNTg3LDYgQEAgc2V0KFdlYkNvcmVfU09VUkNFUwogICAgIGh0bWwvc2hhZG93L1NwaW5C
dXR0b25FbGVtZW50LmNwcAogICAgIGh0bWwvc2hhZG93L1RleHRDb250cm9sSW5uZXJFbGVtZW50
cy5jcHAKIAotICAgIGh0bWwvdHJhY2svSW5iYW5kVGV4dFRyYWNrLmNwcAotICAgIGh0bWwvdHJh
Y2svTG9hZGFibGVUZXh0VHJhY2suY3BwCi0gICAgaHRtbC90cmFjay9UZXh0VHJhY2suY3BwCi0g
ICAgaHRtbC90cmFjay9UZXh0VHJhY2tDdWUuY3BwCi0gICAgaHRtbC90cmFjay9UZXh0VHJhY2tD
dWVHZW5lcmljLmNwcAotICAgIGh0bWwvdHJhY2svVGV4dFRyYWNrQ3VlTGlzdC5jcHAKLSAgICBo
dG1sL3RyYWNrL1RleHRUcmFja0xpc3QuY3BwCi0gICAgaHRtbC90cmFjay9UcmFja0Jhc2UuY3Bw
Ci0gICAgaHRtbC90cmFjay9UcmFja0V2ZW50LmNwcAotICAgIGh0bWwvdHJhY2svV2ViVlRURWxl
bWVudC5jcHAKLSAgICBodG1sL3RyYWNrL1dlYlZUVFBhcnNlci5jcHAKLSAgICBodG1sL3RyYWNr
L1dlYlZUVFRva2VuaXplci5jcHAKLQogICAgIGluc3BlY3Rvci9Db25zb2xlTWVzc2FnZS5jcHAK
ICAgICBpbnNwZWN0b3IvQ29udGVudFNlYXJjaFV0aWxzLmNwcAogICAgIGluc3BlY3Rvci9ET01F
ZGl0b3IuY3BwCkBAIC0xNzM4LDcgKzE3MTksNiBAQCBzZXQoV2ViQ29yZV9TT1VSQ0VTCiAgICAg
bG9hZGVyL2NhY2hlL0NhY2hlZFNjcmlwdC5jcHAKICAgICBsb2FkZXIvY2FjaGUvQ2FjaGVkU2hh
ZGVyLmNwcAogICAgIGxvYWRlci9jYWNoZS9DYWNoZWRTVkdEb2N1bWVudC5jcHAKLSAgICBsb2Fk
ZXIvY2FjaGUvQ2FjaGVkVGV4dFRyYWNrLmNwcAogICAgIGxvYWRlci9jYWNoZS9DYWNoZWRYU0xT
dHlsZVNoZWV0LmNwcAogICAgIGxvYWRlci9jYWNoZS9NZW1vcnlDYWNoZS5jcHAKIApAQCAtMjY5
Niw3ICsyNjc2LDMxIEBAIGlmIChFTkFCTEVfV0VCR0wpCiBlbmRpZiAoKQogCiBpZiAoRU5BQkxF
X1ZJREVPX1RSQUNLKQorICAgIGxpc3QoQVBQRU5EIFdlYkNvcmVfSURMX0ZJTEVTCisgICAgICAg
IGh0bWwvdHJhY2svVGV4dFRyYWNrLmlkbAorICAgICAgICBodG1sL3RyYWNrL1RleHRUcmFja0N1
ZS5pZGwKKyAgICAgICAgaHRtbC90cmFjay9UZXh0VHJhY2tDdWVMaXN0LmlkbAorICAgICAgICBo
dG1sL3RyYWNrL1RleHRUcmFja0xpc3QuaWRsCisgICAgICAgIGh0bWwvdHJhY2svVHJhY2tFdmVu
dC5pZGwKKyAgICApCisKICAgICBsaXN0KEFQUEVORCBXZWJDb3JlX1NPVVJDRVMKKyAgICAgICAg
aHRtbC90cmFjay9JbmJhbmRUZXh0VHJhY2suY3BwCisgICAgICAgIGh0bWwvdHJhY2svTG9hZGFi
bGVUZXh0VHJhY2suY3BwCisgICAgICAgIGh0bWwvdHJhY2svVGV4dFRyYWNrLmNwcAorICAgICAg
ICBodG1sL3RyYWNrL1RleHRUcmFja0N1ZS5jcHAKKyAgICAgICAgaHRtbC90cmFjay9UZXh0VHJh
Y2tDdWVHZW5lcmljLmNwcAorICAgICAgICBodG1sL3RyYWNrL1RleHRUcmFja0N1ZUxpc3QuY3Bw
CisgICAgICAgIGh0bWwvdHJhY2svVGV4dFRyYWNrTGlzdC5jcHAKKyAgICAgICAgaHRtbC90cmFj
ay9UcmFja0Jhc2UuY3BwCisgICAgICAgIGh0bWwvdHJhY2svVHJhY2tFdmVudC5jcHAKKyAgICAg
ICAgaHRtbC90cmFjay9UcmFja0xpc3RCYXNlLmNwcAorICAgICAgICBodG1sL3RyYWNrL1dlYlZU
VEVsZW1lbnQuY3BwCisgICAgICAgIGh0bWwvdHJhY2svV2ViVlRUUGFyc2VyLmNwcAorICAgICAg
ICBodG1sL3RyYWNrL1dlYlZUVFRva2VuaXplci5jcHAKKworICAgICAgICBsb2FkZXIvY2FjaGUv
Q2FjaGVkVGV4dFRyYWNrLmNwcAorCiAgICAgICAgIHBsYXRmb3JtL2dyYXBoaWNzL1RleHRUcmFj
a1JlcHJlc2VudGF0aW9uLmNwcAogICAgICkKIGVuZGlmICgpCmRpZmYgLS1naXQgYS9Tb3VyY2Uv
V2ViQ29yZS9UYXJnZXQucHJpIGIvU291cmNlL1dlYkNvcmUvVGFyZ2V0LnByaQppbmRleCBjOGE0
YTk0ZTU4Zjc2NTQ1MmRiZTA2NzYwNDgwNWE3M2Y2MGVlNzI4Li44NWU4NzYyZGE2ODNjMTU5MDI2
ZTRhMjhhMTdjYTliMmI0ZWE2NTBkIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9UYXJnZXQu
cHJpCisrKyBiL1NvdXJjZS9XZWJDb3JlL1RhcmdldC5wcmkKQEAgLTM5NzcsNiArMzk3Nyw3IEBA
IGVuYWJsZT8oVklERU9fVFJBQ0spIHsKICAgICAgICAgaHRtbC90cmFjay9UZXh0VHJhY2tMaXN0
LmggXAogICAgICAgICBodG1sL3RyYWNrL1RyYWNrQmFzZS5oIFwKICAgICAgICAgaHRtbC90cmFj
ay9UcmFja0V2ZW50LmggXAorICAgICAgICBodG1sL3RyYWNrL1RyYWNrTGlzdEJhc2UuaCBcCiAg
ICAgICAgIGh0bWwvdHJhY2svV2ViVlRUUGFyc2VyLmggXAogICAgICAgICBodG1sL3RyYWNrL1dl
YlZUVFRva2VuLmggXAogICAgICAgICBodG1sL3RyYWNrL1dlYlZUVFRva2VuaXplci5oIFwKQEAg
LTQwMDAsNiArNDAwMSw3IEBAIGVuYWJsZT8oVklERU9fVFJBQ0spIHsKICAgICAgICAgaHRtbC90
cmFjay9UZXh0VHJhY2tMaXN0LmNwcCBcCiAgICAgICAgIGh0bWwvdHJhY2svVHJhY2tCYXNlLmNw
cCBcCiAgICAgICAgIGh0bWwvdHJhY2svVHJhY2tFdmVudC5jcHAgXAorICAgICAgICBodG1sL3Ry
YWNrL1RyYWNrTGlzdEJhc2UuY3BwIFwKICAgICAgICAgaHRtbC90cmFjay9XZWJWVFRFbGVtZW50
LmNwcCBcCiAgICAgICAgIGh0bWwvdHJhY2svV2ViVlRUUGFyc2VyLmNwcCBcCiAgICAgICAgIGh0
bWwvdHJhY2svV2ViVlRUVG9rZW5pemVyLmNwcCBcCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29y
ZS9odG1sL0hUTUxNZWRpYUVsZW1lbnQuY3BwIGIvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MTWVk
aWFFbGVtZW50LmNwcAppbmRleCBkYTFhYjVhNWMyZTc4MTc0MzJiZmFhMzAxMWMwZTk4YzNkMmJj
NzkzLi44ZmM1YTA4YWY4YTAxNDliYWQ3YTViNzM1MGE0ZWJiMzAzNGIyNzc5IDEwMDY0NAotLS0g
YS9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxNZWRpYUVsZW1lbnQuY3BwCisrKyBiL1NvdXJjZS9X
ZWJDb3JlL2h0bWwvSFRNTE1lZGlhRWxlbWVudC5jcHAKQEAgLTI3OTIsNyArMjc5Miw3IEBAIGZs
b2F0IEhUTUxNZWRpYUVsZW1lbnQ6OnBlcmNlbnRMb2FkZWQoKSBjb25zdAogCiAjaWYgRU5BQkxF
KFZJREVPX1RSQUNLKQogCi12b2lkIEhUTUxNZWRpYUVsZW1lbnQ6Om1lZGlhUGxheWVyRGlkQWRk
VHJhY2soUGFzc1JlZlB0cjxJbmJhbmRUZXh0VHJhY2tQcml2YXRlPiBwcnBUcmFjaykKK3ZvaWQg
SFRNTE1lZGlhRWxlbWVudDo6bWVkaWFQbGF5ZXJEaWRBZGRUZXh0VHJhY2soUGFzc1JlZlB0cjxJ
bmJhbmRUZXh0VHJhY2tQcml2YXRlPiBwcnBUcmFjaykKIHsKICAgICBpZiAoIVJ1bnRpbWVFbmFi
bGVkRmVhdHVyZXM6OndlYmtpdFZpZGVvVHJhY2tFbmFibGVkKCkpCiAgICAgICAgIHJldHVybjsK
QEAgLTI4MjQsMTAgKzI4MjQsMTAgQEAgdm9pZCBIVE1MTWVkaWFFbGVtZW50OjptZWRpYVBsYXll
ckRpZEFkZFRyYWNrKFBhc3NSZWZQdHI8SW5iYW5kVGV4dFRyYWNrUHJpdmF0ZT4KICAgICAvLyA5
LiBGaXJlIGFuIGV2ZW50IHdpdGggdGhlIG5hbWUgYWRkdHJhY2ssIHRoYXQgZG9lcyBub3QgYnVi
YmxlIGFuZCBpcyBub3QgY2FuY2VsYWJsZSwgYW5kIHRoYXQgdXNlcyB0aGUgVHJhY2tFdmVudAog
ICAgIC8vIGludGVyZmFjZSwgd2l0aCB0aGUgdHJhY2sgYXR0cmlidXRlIGluaXRpYWxpemVkIHRv
IHRoZSB0ZXh0IHRyYWNrJ3MgVGV4dFRyYWNrIG9iamVjdCwgYXQgdGhlIG1lZGlhIGVsZW1lbnQn
cwogICAgIC8vIHRleHRUcmFja3MgYXR0cmlidXRlJ3MgVGV4dFRyYWNrTGlzdCBvYmplY3QuCi0g
ICAgYWRkVHJhY2sodGV4dFRyYWNrLmdldCgpKTsKKyAgICBhZGRUZXh0VHJhY2sodGV4dFRyYWNr
LmdldCgpKTsKIH0KIAotdm9pZCBIVE1MTWVkaWFFbGVtZW50OjptZWRpYVBsYXllckRpZFJlbW92
ZVRyYWNrKFBhc3NSZWZQdHI8SW5iYW5kVGV4dFRyYWNrUHJpdmF0ZT4gcHJwVHJhY2spCit2b2lk
IEhUTUxNZWRpYUVsZW1lbnQ6Om1lZGlhUGxheWVyRGlkUmVtb3ZlVGV4dFRyYWNrKFBhc3NSZWZQ
dHI8SW5iYW5kVGV4dFRyYWNrUHJpdmF0ZT4gcHJwVHJhY2spCiB7CiAgICAgaWYgKCFSdW50aW1l
RW5hYmxlZEZlYXR1cmVzOjp3ZWJraXRWaWRlb1RyYWNrRW5hYmxlZCgpKQogICAgICAgICByZXR1
cm47CkBAIC0yODM2LDEyICsyODM2LDEyIEBAIHZvaWQgSFRNTE1lZGlhRWxlbWVudDo6bWVkaWFQ
bGF5ZXJEaWRSZW1vdmVUcmFjayhQYXNzUmVmUHRyPEluYmFuZFRleHRUcmFja1ByaXZhCiAgICAg
ICAgIHJldHVybjsKIAogICAgIC8vIFRoaXMgY2FzdCBpcyBzYWZlIGJlY2F1c2Ugd2UgY3JlYXRl
ZCB0aGUgSW5iYW5kVGV4dFRyYWNrIHdpdGggdGhlIEluYmFuZFRleHRUcmFja1ByaXZhdGUKLSAg
ICAvLyBwYXNzZWQgdG8gbWVkaWFQbGF5ZXJEaWRBZGRUcmFjay4KKyAgICAvLyBwYXNzZWQgdG8g
bWVkaWFQbGF5ZXJEaWRBZGRUZXh0VHJhY2suCiAgICAgUmVmUHRyPEluYmFuZFRleHRUcmFjaz4g
dGV4dFRyYWNrID0gc3RhdGljX2Nhc3Q8SW5iYW5kVGV4dFRyYWNrKj4ocHJwVHJhY2stPmNsaWVu
dCgpKTsKICAgICBpZiAoIXRleHRUcmFjaykKICAgICAgICAgcmV0dXJuOwogCi0gICAgcmVtb3Zl
VHJhY2sodGV4dFRyYWNrLmdldCgpKTsKKyAgICByZW1vdmVUZXh0VHJhY2sodGV4dFRyYWNrLmdl
dCgpKTsKIH0KIAogI2lmIFVTRShQTEFURk9STV9URVhUX1RSQUNLX01FTlUpCkBAIC0yOTIwLDE0
ICsyOTIwLDE0IEBAIHZvaWQgSFRNTE1lZGlhRWxlbWVudDo6Y2xvc2VDYXB0aW9uVHJhY2tzQ2hh
bmdlZCgpCiAjZW5kaWYKIH0KIAotdm9pZCBIVE1MTWVkaWFFbGVtZW50OjphZGRUcmFjayhUZXh0
VHJhY2sqIHRyYWNrKQordm9pZCBIVE1MTWVkaWFFbGVtZW50OjphZGRUZXh0VHJhY2soVGV4dFRy
YWNrKiB0cmFjaykKIHsKICAgICB0ZXh0VHJhY2tzKCktPmFwcGVuZCh0cmFjayk7CiAgICAgCiAg
ICAgY2xvc2VDYXB0aW9uVHJhY2tzQ2hhbmdlZCgpOwogfQogCi12b2lkIEhUTUxNZWRpYUVsZW1l
bnQ6OnJlbW92ZVRyYWNrKFRleHRUcmFjayogdHJhY2spCit2b2lkIEhUTUxNZWRpYUVsZW1lbnQ6
OnJlbW92ZVRleHRUcmFjayhUZXh0VHJhY2sqIHRyYWNrKQogewogICAgIFRyYWNrRGlzcGxheVVw
ZGF0ZVNjb3BlIHNjb3BlKHRoaXMpOwogICAgIFRleHRUcmFja0N1ZUxpc3QqIGN1ZXMgPSB0cmFj
ay0+Y3VlcygpOwpAQCAtMjk0OCw3ICsyOTQ4LDcgQEAgdm9pZCBIVE1MTWVkaWFFbGVtZW50Ojpy
ZW1vdmVBbGxJbmJhbmRUcmFja3MoKQogICAgICAgICBUZXh0VHJhY2sqIHRyYWNrID0gbV90ZXh0
VHJhY2tzLT5pdGVtKGkpOwogCiAgICAgICAgIGlmICh0cmFjay0+dHJhY2tUeXBlKCkgPT0gVGV4
dFRyYWNrOjpJbkJhbmQpCi0gICAgICAgICAgICByZW1vdmVUcmFjayh0cmFjayk7CisgICAgICAg
ICAgICByZW1vdmVUZXh0VHJhY2sodHJhY2spOwogICAgIH0KIH0KIApAQCAtMjk3OCw3ICsyOTc4
LDcgQEAgUGFzc1JlZlB0cjxUZXh0VHJhY2s+IEhUTUxNZWRpYUVsZW1lbnQ6OmFkZFRleHRUcmFj
ayhjb25zdCBTdHJpbmcmIGtpbmQsIGNvbnN0IFMKICAgICAvLyBmaXJzdCBhcHBlbmQgdGhlIHRy
YWNrIHRvIHRoZSB0ZXh0IHRyYWNrIGxpc3QuCiAKICAgICAvLyA2LiBBZGQgdGhlIG5ldyB0ZXh0
IHRyYWNrIHRvIHRoZSBtZWRpYSBlbGVtZW50J3MgbGlzdCBvZiB0ZXh0IHRyYWNrcy4KLSAgICBh
ZGRUcmFjayh0ZXh0VHJhY2suZ2V0KCkpOworICAgIGFkZFRleHRUcmFjayh0ZXh0VHJhY2suZ2V0
KCkpOwogCiAgICAgLy8gLi4uIGl0cyB0ZXh0IHRyYWNrIHJlYWRpbmVzcyBzdGF0ZSB0byB0aGUg
dGV4dCB0cmFjayBsb2FkZWQgc3RhdGUgLi4uCiAgICAgdGV4dFRyYWNrLT5zZXRSZWFkaW5lc3NT
dGF0ZShUZXh0VHJhY2s6OkxvYWRlZCk7CkBAIC0zMDAwLDcgKzMwMDAsNyBAQCBUZXh0VHJhY2tM
aXN0KiBIVE1MTWVkaWFFbGVtZW50Ojp0ZXh0VHJhY2tzKCkKICAgICByZXR1cm4gbV90ZXh0VHJh
Y2tzLmdldCgpOwogfQogCi12b2lkIEhUTUxNZWRpYUVsZW1lbnQ6OmRpZEFkZFRyYWNrKEhUTUxU
cmFja0VsZW1lbnQqIHRyYWNrRWxlbWVudCkKK3ZvaWQgSFRNTE1lZGlhRWxlbWVudDo6ZGlkQWRk
VGV4dFRyYWNrKEhUTUxUcmFja0VsZW1lbnQqIHRyYWNrRWxlbWVudCkKIHsKICAgICBBU1NFUlQo
dHJhY2tFbGVtZW50LT5oYXNUYWdOYW1lKHRyYWNrVGFnKSk7CiAKQEAgLTMwMTUsNyArMzAxNSw3
IEBAIHZvaWQgSFRNTE1lZGlhRWxlbWVudDo6ZGlkQWRkVHJhY2soSFRNTFRyYWNrRWxlbWVudCog
dHJhY2tFbGVtZW50KQogICAgIGlmICghdGV4dFRyYWNrKQogICAgICAgICByZXR1cm47CiAgICAg
Ci0gICAgYWRkVHJhY2sodGV4dFRyYWNrLmdldCgpKTsKKyAgICBhZGRUZXh0VHJhY2sodGV4dFRy
YWNrLmdldCgpKTsKICAgICAKICAgICAvLyBEbyBub3Qgc2NoZWR1bGUgdGhlIHRyYWNrIGxvYWRp
bmcgdW50aWwgcGFyc2luZyBmaW5pc2hlcyBzbyB3ZSBkb24ndCBzdGFydCBiZWZvcmUgYWxsIHRy
YWNrcwogICAgIC8vIGluIHRoZSBtYXJrdXAgaGF2ZSBiZWVuIGFkZGVkLgpAQCAtMzAyNiw3ICsz
MDI2LDcgQEAgdm9pZCBIVE1MTWVkaWFFbGVtZW50OjpkaWRBZGRUcmFjayhIVE1MVHJhY2tFbGVt
ZW50KiB0cmFja0VsZW1lbnQpCiAgICAgICAgIG1lZGlhQ29udHJvbHMoKS0+Y2xvc2VkQ2FwdGlv
blRyYWNrc0NoYW5nZWQoKTsKIH0KIAotdm9pZCBIVE1MTWVkaWFFbGVtZW50OjpkaWRSZW1vdmVU
cmFjayhIVE1MVHJhY2tFbGVtZW50KiB0cmFja0VsZW1lbnQpCit2b2lkIEhUTUxNZWRpYUVsZW1l
bnQ6OmRpZFJlbW92ZVRleHRUcmFjayhIVE1MVHJhY2tFbGVtZW50KiB0cmFja0VsZW1lbnQpCiB7
CiAgICAgQVNTRVJUKHRyYWNrRWxlbWVudC0+aGFzVGFnTmFtZSh0cmFja1RhZykpOwogCkBAIC0z
MDUzLDcgKzMwNTMsNyBAQCB2b2lkIEhUTUxNZWRpYUVsZW1lbnQ6OmRpZFJlbW92ZVRyYWNrKEhU
TUxUcmFja0VsZW1lbnQqIHRyYWNrRWxlbWVudCkKICAgICAvLyBXaGVuIGEgdHJhY2sgZWxlbWVu
dCdzIHBhcmVudCBlbGVtZW50IGNoYW5nZXMgYW5kIHRoZSBvbGQgcGFyZW50IHdhcyBhIG1lZGlh
IGVsZW1lbnQsIAogICAgIC8vIHRoZW4gdGhlIHVzZXIgYWdlbnQgbXVzdCByZW1vdmUgdGhlIHRy
YWNrIGVsZW1lbnQncyBjb3JyZXNwb25kaW5nIHRleHQgdHJhY2sgZnJvbSB0aGUgCiAgICAgLy8g
bWVkaWEgZWxlbWVudCdzIGxpc3Qgb2YgdGV4dCB0cmFja3MuCi0gICAgcmVtb3ZlVHJhY2sodGV4
dFRyYWNrLmdldCgpKTsKKyAgICByZW1vdmVUZXh0VHJhY2sodGV4dFRyYWNrLmdldCgpKTsKIAog
ICAgIHNpemVfdCBpbmRleCA9IG1fdGV4dFRyYWNrc1doZW5SZXNvdXJjZVNlbGVjdGlvbkJlZ2Fu
LmZpbmQodGV4dFRyYWNrLmdldCgpKTsKICAgICBpZiAoaW5kZXggIT0gbm90Rm91bmQpCmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxNZWRpYUVsZW1lbnQuaCBiL1NvdXJjZS9X
ZWJDb3JlL2h0bWwvSFRNTE1lZGlhRWxlbWVudC5oCmluZGV4IGNhMDE2YzA3ZDQ2ZmYyMTM3ZmEw
ZTFhYTg2NzMyNDNiZDEyN2UxOGMuLmJjNzVkMWVlMzQ2YmMxYTgxNTNmMzI5NDNhOGVkMjUxMmZl
MWJhOWMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTE1lZGlhRWxlbWVudC5o
CisrKyBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTE1lZGlhRWxlbWVudC5oCkBAIC01OCw3ICs1
OCw2IEBAIGNsYXNzIE1lZGlhQ29udHJvbGxlcjsKIGNsYXNzIE1lZGlhQ29udHJvbHM7CiBjbGFz
cyBNZWRpYUVycm9yOwogY2xhc3MgS1VSTDsKLWNsYXNzIFRleHRUcmFja0xpc3Q7CiBjbGFzcyBU
aW1lUmFuZ2VzOwogI2lmIEVOQUJMRShQTFVHSU5fUFJPWFlfRk9SX1ZJREVPKQogY2xhc3MgV2lk
Z2V0OwpAQCAtNzIsNiArNzEsNyBAQCBjbGFzcyBNZWRpYUtleXM7CiAKICNpZiBFTkFCTEUoVklE
RU9fVFJBQ0spCiBjbGFzcyBJbmJhbmRUZXh0VHJhY2tQcml2YXRlOworY2xhc3MgVGV4dFRyYWNr
TGlzdDsKIAogdHlwZWRlZiBQT0RJbnRlcnZhbFRyZWU8ZG91YmxlLCBUZXh0VHJhY2tDdWUqPiBD
dWVJbnRlcnZhbFRyZWU7CiB0eXBlZGVmIEN1ZUludGVydmFsVHJlZTo6SW50ZXJ2YWxUeXBlIEN1
ZUludGVydmFsOwpAQCAtMjI5LDE3ICsyMjksMTcgQEAgcHVibGljOgogICAgIFRleHRUcmFja0xp
c3QqIHRleHRUcmFja3MoKTsKICAgICBDdWVMaXN0IGN1cnJlbnRseUFjdGl2ZUN1ZXMoKSBjb25z
dCB7IHJldHVybiBtX2N1cnJlbnRseUFjdGl2ZUN1ZXM7IH0KIAotICAgIHZvaWQgYWRkVHJhY2so
VGV4dFRyYWNrKik7Ci0gICAgdm9pZCByZW1vdmVUcmFjayhUZXh0VHJhY2sqKTsKKyAgICB2b2lk
IGFkZFRleHRUcmFjayhUZXh0VHJhY2sqKTsKKyAgICB2b2lkIHJlbW92ZVRleHRUcmFjayhUZXh0
VHJhY2sqKTsKICAgICB2b2lkIHJlbW92ZUFsbEluYmFuZFRyYWNrcygpOwogICAgIHZvaWQgY2xv
c2VDYXB0aW9uVHJhY2tzQ2hhbmdlZCgpOwogICAgIHZvaWQgbm90aWZ5TWVkaWFQbGF5ZXJPZlRl
eHRUcmFja0NoYW5nZXMoKTsKIAotICAgIHZpcnR1YWwgdm9pZCBkaWRBZGRUcmFjayhIVE1MVHJh
Y2tFbGVtZW50Kik7Ci0gICAgdmlydHVhbCB2b2lkIGRpZFJlbW92ZVRyYWNrKEhUTUxUcmFja0Vs
ZW1lbnQqKTsKKyAgICB2aXJ0dWFsIHZvaWQgZGlkQWRkVGV4dFRyYWNrKEhUTUxUcmFja0VsZW1l
bnQqKTsKKyAgICB2aXJ0dWFsIHZvaWQgZGlkUmVtb3ZlVGV4dFRyYWNrKEhUTUxUcmFja0VsZW1l
bnQqKTsKIAotICAgIHZpcnR1YWwgdm9pZCBtZWRpYVBsYXllckRpZEFkZFRyYWNrKFBhc3NSZWZQ
dHI8SW5iYW5kVGV4dFRyYWNrUHJpdmF0ZT4pIE9WRVJSSURFOwotICAgIHZpcnR1YWwgdm9pZCBt
ZWRpYVBsYXllckRpZFJlbW92ZVRyYWNrKFBhc3NSZWZQdHI8SW5iYW5kVGV4dFRyYWNrUHJpdmF0
ZT4pIE9WRVJSSURFOworICAgIHZpcnR1YWwgdm9pZCBtZWRpYVBsYXllckRpZEFkZFRleHRUcmFj
ayhQYXNzUmVmUHRyPEluYmFuZFRleHRUcmFja1ByaXZhdGU+KSBPVkVSUklERTsKKyAgICB2aXJ0
dWFsIHZvaWQgbWVkaWFQbGF5ZXJEaWRSZW1vdmVUZXh0VHJhY2soUGFzc1JlZlB0cjxJbmJhbmRU
ZXh0VHJhY2tQcml2YXRlPikgT1ZFUlJJREU7CiAKICNpZiBVU0UoUExBVEZPUk1fVEVYVF9UUkFD
S19NRU5VKQogICAgIHZpcnR1YWwgdm9pZCBzZXRTZWxlY3RlZFRleHRUcmFjayhQYXNzUmVmUHRy
PFBsYXRmb3JtVGV4dFRyYWNrPikgT1ZFUlJJREU7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29y
ZS9odG1sL0hUTUxUcmFja0VsZW1lbnQuY3BwIGIvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MVHJh
Y2tFbGVtZW50LmNwcAppbmRleCBmYmJiM2U4NWUwZGE2NzgwMTFhZjg0ZWZjOWE1Nzk5YzYzZjQ2
M2Q0Li4wMTA1ODU1ZmNmMjU3MTk3NDljNTE2MDhiNDY0OTJhMjAxYWMxMzAyIDEwMDY0NAotLS0g
YS9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxUcmFja0VsZW1lbnQuY3BwCisrKyBiL1NvdXJjZS9X
ZWJDb3JlL2h0bWwvSFRNTFRyYWNrRWxlbWVudC5jcHAKQEAgLTgwLDE0ICs4MCwxNCBAQCBOb2Rl
OjpJbnNlcnRpb25Ob3RpZmljYXRpb25SZXF1ZXN0IEhUTUxUcmFja0VsZW1lbnQ6Omluc2VydGVk
SW50byhDb250YWluZXJOb2RlKgogICAgIEhUTUxFbGVtZW50OjppbnNlcnRlZEludG8oaW5zZXJ0
aW9uUG9pbnQpOwogICAgIEhUTUxNZWRpYUVsZW1lbnQqIHBhcmVudCA9IG1lZGlhRWxlbWVudCgp
OwogICAgIGlmIChpbnNlcnRpb25Qb2ludCA9PSBwYXJlbnQpCi0gICAgICAgIHBhcmVudC0+ZGlk
QWRkVHJhY2sodGhpcyk7CisgICAgICAgIHBhcmVudC0+ZGlkQWRkVGV4dFRyYWNrKHRoaXMpOwog
ICAgIHJldHVybiBJbnNlcnRpb25Eb25lOwogfQogCiB2b2lkIEhUTUxUcmFja0VsZW1lbnQ6OnJl
bW92ZWRGcm9tKENvbnRhaW5lck5vZGUqIGluc2VydGlvblBvaW50KQogewogICAgIGlmICghcGFy
ZW50Tm9kZSgpICYmIFdlYkNvcmU6OmlzTWVkaWFFbGVtZW50KGluc2VydGlvblBvaW50KSkKLSAg
ICAgICAgdG9NZWRpYUVsZW1lbnQoaW5zZXJ0aW9uUG9pbnQpLT5kaWRSZW1vdmVUcmFjayh0aGlz
KTsKKyAgICAgICAgdG9NZWRpYUVsZW1lbnQoaW5zZXJ0aW9uUG9pbnQpLT5kaWRSZW1vdmVUZXh0
VHJhY2sodGhpcyk7CiAgICAgSFRNTEVsZW1lbnQ6OnJlbW92ZWRGcm9tKGluc2VydGlvblBvaW50
KTsKIH0KIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvaHRtbC90cmFjay9UZXh0VHJhY2su
Y3BwIGIvU291cmNlL1dlYkNvcmUvaHRtbC90cmFjay9UZXh0VHJhY2suY3BwCmluZGV4IDNjMjc0
YjFlMTRiOWI5MDYxZmQ4N2Y0MmY4NmFiYTIyZTVjODg0MTAuLjhlMDNmOGUyYWQyNjMwMTQ0MzIw
NTVkMjliM2Y5MjNkOTdkN2IwZjcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvdHJh
Y2svVGV4dFRyYWNrLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL3RyYWNrL1RleHRUcmFj
ay5jcHAKQEAgLTEwOCwxNCArMTA4LDEyIEBAIFRleHRUcmFjayogVGV4dFRyYWNrOjpjYXB0aW9u
TWVudUF1dG9tYXRpY0l0ZW0oKQogfQogCiBUZXh0VHJhY2s6OlRleHRUcmFjayhTY3JpcHRFeGVj
dXRpb25Db250ZXh0KiBjb250ZXh0LCBUZXh0VHJhY2tDbGllbnQqIGNsaWVudCwgY29uc3QgQXRv
bWljU3RyaW5nJiBraW5kLCBjb25zdCBBdG9taWNTdHJpbmcmIGxhYmVsLCBjb25zdCBBdG9taWNT
dHJpbmcmIGxhbmd1YWdlLCBUZXh0VHJhY2tUeXBlIHR5cGUpCi0gICAgOiBUcmFja0Jhc2UoY29u
dGV4dCwgVHJhY2tCYXNlOjpUZXh0VHJhY2spCisgICAgOiBUcmFja0Jhc2UoVHJhY2tCYXNlOjpU
ZXh0VHJhY2ssIGxhYmVsLCBsYW5ndWFnZSkKICAgICAsIG1fY3VlcygwKQorICAgICwgbV9zY3Jp
cHRFeGVjdXRpb25Db250ZXh0KGNvbnRleHQpCiAjaWYgRU5BQkxFKFdFQlZUVF9SRUdJT05TKQog
ICAgICwgbV9yZWdpb25zKDApCiAjZW5kaWYKLSAgICAsIG1fbWVkaWFFbGVtZW50KDApCi0gICAg
LCBtX2xhYmVsKGxhYmVsKQotICAgICwgbV9sYW5ndWFnZShsYW5ndWFnZSkKICAgICAsIG1fbW9k
ZShkaXNhYmxlZEtleXdvcmQoKS5zdHJpbmcoKSkKICAgICAsIG1fY2xpZW50KGNsaWVudCkKICAg
ICAsIG1fdHJhY2tUeXBlKHR5cGUpCkBAIC0xNDMsNiArMTQxLDMxIEBAIFRleHRUcmFjazo6flRl
eHRUcmFjaygpCiAgICAgY2xlYXJDbGllbnQoKTsKIH0KIAorY29uc3QgQXRvbWljU3RyaW5nJiBU
ZXh0VHJhY2s6OmludGVyZmFjZU5hbWUoKSBjb25zdAoreworICAgIHJldHVybiBldmVudE5hbWVz
KCkuaW50ZXJmYWNlRm9yVGV4dFRyYWNrOworfQorCitTY3JpcHRFeGVjdXRpb25Db250ZXh0KiBU
ZXh0VHJhY2s6OnNjcmlwdEV4ZWN1dGlvbkNvbnRleHQoKSBjb25zdAoreworICAgIHJldHVybiBt
X3NjcmlwdEV4ZWN1dGlvbkNvbnRleHQ7Cit9CisKK0V2ZW50VGFyZ2V0RGF0YSogVGV4dFRyYWNr
OjpldmVudFRhcmdldERhdGEoKQoreworICAgIHJldHVybiAmbV9ldmVudFRhcmdldERhdGE7Cit9
CisKK0V2ZW50VGFyZ2V0RGF0YSogVGV4dFRyYWNrOjplbnN1cmVFdmVudFRhcmdldERhdGEoKQor
eworICAgIHJldHVybiAmbV9ldmVudFRhcmdldERhdGE7Cit9CisKK2Jvb2wgVGV4dFRyYWNrOjpp
c1ZhbGlkS2luZChjb25zdCBBdG9taWNTdHJpbmcmIHZhbHVlKSBjb25zdAoreworICAgIHJldHVy
biBUZXh0VHJhY2s6OmlzVmFsaWRLaW5kS2V5d29yZCh2YWx1ZSk7Cit9CisKIGJvb2wgVGV4dFRy
YWNrOjppc1ZhbGlkS2luZEtleXdvcmQoY29uc3QgQXRvbWljU3RyaW5nJiB2YWx1ZSkKIHsKICAg
ICBpZiAodmFsdWUgPT0gc3VidGl0bGVzS2V5d29yZCgpKQpAQCAtMTU5LDE2ICsxODIsMTMgQEAg
Ym9vbCBUZXh0VHJhY2s6OmlzVmFsaWRLaW5kS2V5d29yZChjb25zdCBBdG9taWNTdHJpbmcmIHZh
bHVlKQogICAgIHJldHVybiBmYWxzZTsKIH0KIAotdm9pZCBUZXh0VHJhY2s6OnNldEtpbmQoY29u
c3QgQXRvbWljU3RyaW5nJiBraW5kKQordm9pZCBUZXh0VHJhY2s6OnNldEtpbmQoY29uc3QgQXRv
bWljU3RyaW5nJiBuZXdLaW5kKQogewotICAgIFN0cmluZyBvbGRLaW5kID0gbV9raW5kOworICAg
IFN0cmluZyBvbGRLaW5kID0ga2luZCgpOwogCi0gICAgaWYgKGlzVmFsaWRLaW5kS2V5d29yZChr
aW5kKSkKLSAgICAgICAgbV9raW5kID0ga2luZDsKLSAgICBlbHNlCi0gICAgICAgIG1fa2luZCA9
IHN1YnRpdGxlc0tleXdvcmQoKTsKKyAgICBUcmFja0Jhc2U6OnNldEtpbmQobmV3S2luZCk7CiAK
LSAgICBpZiAobV9jbGllbnQgJiYgb2xkS2luZCAhPSBtX2tpbmQpCisgICAgaWYgKG1fY2xpZW50
ICYmIG9sZEtpbmQgIT0ga2luZCgpKQogICAgICAgICBtX2NsaWVudC0+dGV4dFRyYWNrS2luZENo
YW5nZWQodGhpcyk7CiB9CiAKQEAgLTQxMSw3ICs0MzEsNyBAQCB2b2lkIFRleHRUcmFjazo6aW52
YWxpZGF0ZVRyYWNrSW5kZXgoKQogCiBib29sIFRleHRUcmFjazo6aXNSZW5kZXJlZCgpCiB7Ci0g
ICAgaWYgKG1fa2luZCAhPSBjYXB0aW9uc0tleXdvcmQoKSAmJiBtX2tpbmQgIT0gc3VidGl0bGVz
S2V5d29yZCgpKQorICAgIGlmIChraW5kKCkgIT0gY2FwdGlvbnNLZXl3b3JkKCkgJiYga2luZCgp
ICE9IHN1YnRpdGxlc0tleXdvcmQoKSkKICAgICAgICAgcmV0dXJuIGZhbHNlOwogCiAgICAgaWYg
KG1fbW9kZSAhPSBzaG93aW5nS2V5d29yZCgpKQpAQCAtNTAyLDE3ICs1MjIsMTcgQEAgUGFzc1Jl
ZlB0cjxQbGF0Zm9ybVRleHRUcmFjaz4gVGV4dFRyYWNrOjpwbGF0Zm9ybVRleHRUcmFjaygpCiAg
ICAgaWYgKG1fcGxhdGZvcm1UZXh0VHJhY2spCiAgICAgICAgIHJldHVybiBtX3BsYXRmb3JtVGV4
dFRyYWNrOwogCi0gICAgUGxhdGZvcm1UZXh0VHJhY2s6OlRyYWNrS2luZCBraW5kID0gUGxhdGZv
cm1UZXh0VHJhY2s6OkNhcHRpb247Ci0gICAgaWYgKG1fa2luZCA9PSBzdWJ0aXRsZXNLZXl3b3Jk
KCkpCi0gICAgICAgIGtpbmQgPSBQbGF0Zm9ybVRleHRUcmFjazo6U3VidGl0bGU7Ci0gICAgZWxz
ZSBpZiAobV9raW5kID09IGNhcHRpb25zS2V5d29yZCgpKQotICAgICAgICBraW5kID0gUGxhdGZv
cm1UZXh0VHJhY2s6OkNhcHRpb247Ci0gICAgZWxzZSBpZiAobV9raW5kID09IGRlc2NyaXB0aW9u
c0tleXdvcmQoKSkKLSAgICAgICAga2luZCA9IFBsYXRmb3JtVGV4dFRyYWNrOjpEZXNjcmlwdGlv
bjsKLSAgICBlbHNlIGlmIChtX2tpbmQgPT0gY2hhcHRlcnNLZXl3b3JkKCkpCi0gICAgICAgIGtp
bmQgPSBQbGF0Zm9ybVRleHRUcmFjazo6Q2hhcHRlcjsKLSAgICBlbHNlIGlmIChtX2tpbmQgPT0g
bWV0YWRhdGFLZXl3b3JkKCkpCi0gICAgICAgIGtpbmQgPSBQbGF0Zm9ybVRleHRUcmFjazo6TWV0
YURhdGE7CisgICAgUGxhdGZvcm1UZXh0VHJhY2s6OlRyYWNrS2luZCBwbGF0Zm9ybUtpbmQgPSBQ
bGF0Zm9ybVRleHRUcmFjazo6Q2FwdGlvbjsKKyAgICBpZiAoa2luZCgpID09IHN1YnRpdGxlc0tl
eXdvcmQoKSkKKyAgICAgICAgcGxhdGZvcm1LaW5kID0gUGxhdGZvcm1UZXh0VHJhY2s6OlN1YnRp
dGxlOworICAgIGVsc2UgaWYgKGtpbmQoKSA9PSBjYXB0aW9uc0tleXdvcmQoKSkKKyAgICAgICAg
cGxhdGZvcm1LaW5kID0gUGxhdGZvcm1UZXh0VHJhY2s6OkNhcHRpb247CisgICAgZWxzZSBpZiAo
a2luZCgpID09IGRlc2NyaXB0aW9uc0tleXdvcmQoKSkKKyAgICAgICAgcGxhdGZvcm1LaW5kID0g
UGxhdGZvcm1UZXh0VHJhY2s6OkRlc2NyaXB0aW9uOworICAgIGVsc2UgaWYgKGtpbmQoKSA9PSBj
aGFwdGVyc0tleXdvcmQoKSkKKyAgICAgICAgcGxhdGZvcm1LaW5kID0gUGxhdGZvcm1UZXh0VHJh
Y2s6OkNoYXB0ZXI7CisgICAgZWxzZSBpZiAoa2luZCgpID09IG1ldGFkYXRhS2V5d29yZCgpKQor
ICAgICAgICBwbGF0Zm9ybUtpbmQgPSBQbGF0Zm9ybVRleHRUcmFjazo6TWV0YURhdGE7CiAKICAg
ICBQbGF0Zm9ybVRleHRUcmFjazo6VHJhY2tUeXBlIHR5cGUgPSBQbGF0Zm9ybVRleHRUcmFjazo6
T3V0T2ZCYW5kOwogICAgIGlmIChtX3RyYWNrVHlwZSA9PSBUcmFja0VsZW1lbnQpCkBAIC01MjIs
NyArNTQyLDcgQEAgUGFzc1JlZlB0cjxQbGF0Zm9ybVRleHRUcmFjaz4gVGV4dFRyYWNrOjpwbGF0
Zm9ybVRleHRUcmFjaygpCiAgICAgZWxzZSBpZiAobV90cmFja1R5cGUgPT0gSW5CYW5kKQogICAg
ICAgICB0eXBlID0gUGxhdGZvcm1UZXh0VHJhY2s6OkluQmFuZDsKIAotICAgIG1fcGxhdGZvcm1U
ZXh0VHJhY2sgPSBQbGF0Zm9ybVRleHRUcmFjazo6Y3JlYXRlKHRoaXMsIG1fbGFiZWwsIG1fbGFu
Z3VhZ2UsIGtpbmQsIHR5cGUpOworICAgIG1fcGxhdGZvcm1UZXh0VHJhY2sgPSBQbGF0Zm9ybVRl
eHRUcmFjazo6Y3JlYXRlKHRoaXMsIGxhYmVsKCksIGxhbmd1YWdlKCksIHBsYXRmb3JtS2luZCwg
dHlwZSk7CiAKICAgICByZXR1cm4gbV9wbGF0Zm9ybVRleHRUcmFjazsKIH0KQEAgLTUzNCw3ICs1
NTQsNyBAQCBib29sIFRleHRUcmFjazo6aXNNYWluUHJvZ3JhbUNvbnRlbnQoKSBjb25zdAogICAg
IC8vIGRpcmVjdG9ycyBjb21tZW50YXJ5IGlzIG5vdCAibWFpbiBwcm9ncmFtIiBiZWNhdXNlIGl0
IGlzIG5vdCBlc3NlbnRpYWwgZm9yIHRoZSBwcmVzZW50YXRpb24uIEhUTUw1IGRvZXNuJ3QgaGF2
ZQogICAgIC8vIGEgd2F5IHRvIGV4cHJlc3MgdGhpcyBpbiBhIG1hY2hpbmUtcmVhYmxlIGZvcm0s
IGl0IGlzIHR5cGljYWxseSBkb25lIHdpdGggdGhlIHRyYWNrIGxhYmVsLCBzbyB3ZSBhc3N1bWUg
dGhhdCBjYXB0aW9uCiAgICAgLy8gdHJhY2tzIGFyZSBtYWluIGNvbnRlbnQgYW5kIGFsbCBvdGhl
ciB0cmFjayB0eXBlcyBhcmUgbm90LgotICAgIHJldHVybiBtX2tpbmQgPT0gY2FwdGlvbnNLZXl3
b3JkKCk7CisgICAgcmV0dXJuIGtpbmQoKSA9PSBjYXB0aW9uc0tleXdvcmQoKTsKIH0KIAogfSAv
LyBuYW1lc3BhY2UgV2ViQ29yZQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvaHRtbC90cmFj
ay9UZXh0VHJhY2suaCBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvdHJhY2svVGV4dFRyYWNrLmgKaW5k
ZXggNTc2OTQ1YmJlNTIxY2Q2YTJmNmZmZmZkMzdlNTZhZDY2NzI2MGZmMy4uNGJhMzBlNzU2NTU0
NWYwNjdiZjkxYmI2OTRiYjM2MTdmZWU3ZmUxMyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUv
aHRtbC90cmFjay9UZXh0VHJhY2suaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL3RyYWNrL1Rl
eHRUcmFjay5oCkBAIC00MSw3ICs0MSw3IEBACiAKIG5hbWVzcGFjZSBXZWJDb3JlIHsKIAotY2xh
c3MgSFRNTE1lZGlhRWxlbWVudDsKK2NsYXNzIFNjcmlwdEV4ZWN1dGlvbkNvbnRleHQ7CiBjbGFz
cyBUZXh0VHJhY2s7CiBjbGFzcyBUZXh0VHJhY2tDdWU7CiBjbGFzcyBUZXh0VHJhY2tDdWVMaXN0
OwpAQCAtNjEsNyArNjEsNyBAQCBwdWJsaWM6CiAgICAgdmlydHVhbCB2b2lkIHRleHRUcmFja1Jl
bW92ZUN1ZShUZXh0VHJhY2sqLCBQYXNzUmVmUHRyPFRleHRUcmFja0N1ZT4pID0gMDsKIH07CiAK
LWNsYXNzIFRleHRUcmFjayA6IHB1YmxpYyBUcmFja0Jhc2UKK2NsYXNzIFRleHRUcmFjayA6IHB1
YmxpYyBUcmFja0Jhc2UsIHB1YmxpYyBFdmVudFRhcmdldAogI2lmIFVTRShQTEFURk9STV9URVhU
X1RSQUNLX01FTlUpCiAgICAgLCBwdWJsaWMgUGxhdGZvcm1UZXh0VHJhY2tDbGllbnQKICNlbmRp
ZgpAQCAtNzMsMzIgKzczLDI2IEBAIHB1YmxpYzoKICAgICB9CiAgICAgdmlydHVhbCB+VGV4dFRy
YWNrKCk7CiAKKyAgICB2aXJ0dWFsIGNvbnN0IEF0b21pY1N0cmluZyYgaW50ZXJmYWNlTmFtZSgp
IGNvbnN0OworICAgIHZpcnR1YWwgU2NyaXB0RXhlY3V0aW9uQ29udGV4dCogc2NyaXB0RXhlY3V0
aW9uQ29udGV4dCgpIGNvbnN0OworCiAgICAgc3RhdGljIFRleHRUcmFjayogY2FwdGlvbk1lbnVP
ZmZJdGVtKCk7CiAgICAgc3RhdGljIFRleHRUcmFjayogY2FwdGlvbk1lbnVBdXRvbWF0aWNJdGVt
KCk7CiAKLSAgICB2b2lkIHNldE1lZGlhRWxlbWVudChIVE1MTWVkaWFFbGVtZW50KiBlbGVtZW50
KSB7IG1fbWVkaWFFbGVtZW50ID0gZWxlbWVudDsgfQotICAgIEhUTUxNZWRpYUVsZW1lbnQqIG1l
ZGlhRWxlbWVudCgpIHsgcmV0dXJuIG1fbWVkaWFFbGVtZW50OyB9Ci0KLSAgICBBdG9taWNTdHJp
bmcga2luZCgpIGNvbnN0IHsgcmV0dXJuIG1fa2luZDsgfQotICAgIHZvaWQgc2V0S2luZChjb25z
dCBBdG9taWNTdHJpbmcmKTsKLQogICAgIHN0YXRpYyBjb25zdCBBdG9taWNTdHJpbmcmIHN1YnRp
dGxlc0tleXdvcmQoKTsKICAgICBzdGF0aWMgY29uc3QgQXRvbWljU3RyaW5nJiBjYXB0aW9uc0tl
eXdvcmQoKTsKICAgICBzdGF0aWMgY29uc3QgQXRvbWljU3RyaW5nJiBkZXNjcmlwdGlvbnNLZXl3
b3JkKCk7CiAgICAgc3RhdGljIGNvbnN0IEF0b21pY1N0cmluZyYgY2hhcHRlcnNLZXl3b3JkKCk7
CiAgICAgc3RhdGljIGNvbnN0IEF0b21pY1N0cmluZyYgbWV0YWRhdGFLZXl3b3JkKCk7CisgICAg
dmlydHVhbCBjb25zdCBBdG9taWNTdHJpbmcmIGRlZmF1bHRLaW5kS2V5d29yZCgpIGNvbnN0IHsg
cmV0dXJuIHN1YnRpdGxlc0tleXdvcmQoKTsgfQogICAgIHN0YXRpYyBib29sIGlzVmFsaWRLaW5k
S2V5d29yZChjb25zdCBBdG9taWNTdHJpbmcmKTsKIAotICAgIEF0b21pY1N0cmluZyBsYWJlbCgp
IGNvbnN0IHsgcmV0dXJuIG1fbGFiZWw7IH0KLSAgICB2b2lkIHNldExhYmVsKGNvbnN0IEF0b21p
Y1N0cmluZyYgbGFiZWwpIHsgbV9sYWJlbCA9IGxhYmVsOyB9Ci0KLSAgICBBdG9taWNTdHJpbmcg
bGFuZ3VhZ2UoKSBjb25zdCB7IHJldHVybiBtX2xhbmd1YWdlOyB9Ci0gICAgdm9pZCBzZXRMYW5n
dWFnZShjb25zdCBBdG9taWNTdHJpbmcmIGxhbmd1YWdlKSB7IG1fbGFuZ3VhZ2UgPSBsYW5ndWFn
ZTsgfQotCiAgICAgc3RhdGljIGNvbnN0IEF0b21pY1N0cmluZyYgZGlzYWJsZWRLZXl3b3JkKCk7
CiAgICAgc3RhdGljIGNvbnN0IEF0b21pY1N0cmluZyYgaGlkZGVuS2V5d29yZCgpOwogICAgIHN0
YXRpYyBjb25zdCBBdG9taWNTdHJpbmcmIHNob3dpbmdLZXl3b3JkKCk7CiAKKyAgICB2aXJ0dWFs
IHZvaWQgc2V0S2luZChjb25zdCBBdG9taWNTdHJpbmcmKSBPVkVSUklERTsKKwogICAgIEF0b21p
Y1N0cmluZyBtb2RlKCkgY29uc3QgeyByZXR1cm4gbV9tb2RlOyB9CiAgICAgdmlydHVhbCB2b2lk
IHNldE1vZGUoY29uc3QgQXRvbWljU3RyaW5nJik7CiAKQEAgLTEwOSw4ICsxMDMsOCBAQCBwdWJs
aWM6CiAgICAgVGV4dFRyYWNrQ3VlTGlzdCogY3VlcygpOwogICAgIFRleHRUcmFja0N1ZUxpc3Qq
IGFjdGl2ZUN1ZXMoKSBjb25zdDsKIAotICAgIHZvaWQgY2xlYXJDbGllbnQoKSB7IG1fY2xpZW50
ID0gMDsgfQotICAgIFRleHRUcmFja0NsaWVudCogY2xpZW50KCkgeyByZXR1cm4gbV9jbGllbnQ7
IH0KKyAgICB2aXJ0dWFsIHZvaWQgY2xlYXJDbGllbnQoKSBPVkVSUklERSB7IG1fY2xpZW50ID0g
MDsgfQorICAgIFRleHRUcmFja0NsaWVudCogY2xpZW50KCkgY29uc3QgeyByZXR1cm4gbV9jbGll
bnQ7IH0KIAogICAgIHZvaWQgYWRkQ3VlKFBhc3NSZWZQdHI8VGV4dFRyYWNrQ3VlPik7CiAgICAg
dm9pZCByZW1vdmVDdWUoVGV4dFRyYWNrQ3VlKiwgRXhjZXB0aW9uQ29kZSYpOwpAQCAtMTU0LDE1
ICsxNDgsMjUgQEAgcHVibGljOgogICAgIFBhc3NSZWZQdHI8UGxhdGZvcm1UZXh0VHJhY2s+IHBs
YXRmb3JtVGV4dFRyYWNrKCk7CiAjZW5kaWYKIAorICAgIHVzaW5nIFJlZkNvdW50ZWQ8VHJhY2tC
YXNlPjo6cmVmOworICAgIHVzaW5nIFJlZkNvdW50ZWQ8VHJhY2tCYXNlPjo6ZGVyZWY7CisKIHBy
b3RlY3RlZDoKICAgICBUZXh0VHJhY2soU2NyaXB0RXhlY3V0aW9uQ29udGV4dCosIFRleHRUcmFj
a0NsaWVudCosIGNvbnN0IEF0b21pY1N0cmluZyYga2luZCwgY29uc3QgQXRvbWljU3RyaW5nJiBs
YWJlbCwgY29uc3QgQXRvbWljU3RyaW5nJiBsYW5ndWFnZSwgVGV4dFRyYWNrVHlwZSk7CiAjaWYg
RU5BQkxFKFZJREVPX1RSQUNLKSAmJiBFTkFCTEUoV0VCVlRUX1JFR0lPTlMpCiAgICAgVGV4dFRy
YWNrUmVnaW9uTGlzdCogcmVnaW9uTGlzdCgpOwogI2VuZGlmCiAKKyAgICB2aXJ0dWFsIEV2ZW50
VGFyZ2V0RGF0YSogZXZlbnRUYXJnZXREYXRhKCk7CisgICAgdmlydHVhbCBFdmVudFRhcmdldERh
dGEqIGVuc3VyZUV2ZW50VGFyZ2V0RGF0YSgpOworCiAgICAgUmVmUHRyPFRleHRUcmFja0N1ZUxp
c3Q+IG1fY3VlczsKIAogcHJpdmF0ZToKKyAgICB2aXJ0dWFsIGJvb2wgaXNWYWxpZEtpbmQoY29u
c3QgQXRvbWljU3RyaW5nJikgY29uc3QgT1ZFUlJJREU7CisKKyAgICB2aXJ0dWFsIHZvaWQgcmVm
RXZlbnRUYXJnZXQoKSB7IHJlZigpOyB9CisgICAgdmlydHVhbCB2b2lkIGRlcmVmRXZlbnRUYXJn
ZXQoKSB7IGRlcmVmKCk7IH0KIAogI2lmIEVOQUJMRShWSURFT19UUkFDSykgJiYgRU5BQkxFKFdF
QlZUVF9SRUdJT05TKQogICAgIFRleHRUcmFja1JlZ2lvbkxpc3QqIGVuc3VyZVRleHRUcmFja1Jl
Z2lvbkxpc3QoKTsKQEAgLTE3NywxMCArMTgxLDggQEAgcHJpdmF0ZToKIAogICAgIFRleHRUcmFj
a0N1ZUxpc3QqIGVuc3VyZVRleHRUcmFja0N1ZUxpc3QoKTsKIAotICAgIEhUTUxNZWRpYUVsZW1l
bnQqIG1fbWVkaWFFbGVtZW50OwotICAgIEF0b21pY1N0cmluZyBtX2tpbmQ7Ci0gICAgQXRvbWlj
U3RyaW5nIG1fbGFiZWw7Ci0gICAgQXRvbWljU3RyaW5nIG1fbGFuZ3VhZ2U7CisgICAgU2NyaXB0
RXhlY3V0aW9uQ29udGV4dCogbV9zY3JpcHRFeGVjdXRpb25Db250ZXh0OworICAgIEV2ZW50VGFy
Z2V0RGF0YSBtX2V2ZW50VGFyZ2V0RGF0YTsKICAgICBBdG9taWNTdHJpbmcgbV9tb2RlOwogICAg
IFRleHRUcmFja0NsaWVudCogbV9jbGllbnQ7CiAgICAgVGV4dFRyYWNrVHlwZSBtX3RyYWNrVHlw
ZTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvdHJhY2svVGV4dFRyYWNrTGlzdC5j
cHAgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL3RyYWNrL1RleHRUcmFja0xpc3QuY3BwCmluZGV4IDhh
ZTU2YzJiMDVlNzRkNjAyOWZiMzRkM2ExZGFjNmQwMDAxNjQ3MjAuLjQyN2U1Y2Y1MTM3ZTBmY2Qw
YTg2NjMxMDU5Y2I0ZDRkMGU1OTNhZTUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2h0bWwv
dHJhY2svVGV4dFRyYWNrTGlzdC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvaHRtbC90cmFjay9U
ZXh0VHJhY2tMaXN0LmNwcApAQCAtMzAsMjMgKzMwLDE2IEBACiAjaW5jbHVkZSAiVGV4dFRyYWNr
TGlzdC5oIgogCiAjaW5jbHVkZSAiRXZlbnROYW1lcy5oIgotI2luY2x1ZGUgIkhUTUxNZWRpYUVs
ZW1lbnQuaCIKICNpbmNsdWRlICJJbmJhbmRUZXh0VHJhY2suaCIKICNpbmNsdWRlICJJbmJhbmRU
ZXh0VHJhY2tQcml2YXRlLmgiCiAjaW5jbHVkZSAiTG9hZGFibGVUZXh0VHJhY2suaCIKLSNpbmNs
dWRlICJTY3JpcHRFeGVjdXRpb25Db250ZXh0LmgiCiAjaW5jbHVkZSAiVGV4dFRyYWNrLmgiCi0j
aW5jbHVkZSAiVHJhY2tFdmVudC5oIgogCiB1c2luZyBuYW1lc3BhY2UgV2ViQ29yZTsKIAogVGV4
dFRyYWNrTGlzdDo6VGV4dFRyYWNrTGlzdChIVE1MTWVkaWFFbGVtZW50KiBvd25lciwgU2NyaXB0
RXhlY3V0aW9uQ29udGV4dCogY29udGV4dCkKLSAgICA6IG1fY29udGV4dChjb250ZXh0KQotICAg
ICwgbV9vd25lcihvd25lcikKLSAgICAsIG1fcGVuZGluZ0V2ZW50VGltZXIodGhpcywgJlRleHRU
cmFja0xpc3Q6OmFzeW5jRXZlbnRUaW1lckZpcmVkKQotICAgICwgbV9kaXNwYXRjaGluZ0V2ZW50
cygwKQorICAgIDogVHJhY2tMaXN0QmFzZShvd25lciwgY29udGV4dCkKIHsKLSAgICBBU1NFUlQo
Y29udGV4dC0+aXNEb2N1bWVudCgpKTsKIH0KIAogVGV4dFRyYWNrTGlzdDo6flRleHRUcmFja0xp
c3QoKQpAQCAtNTgsOCArNTEsMTIgQEAgdW5zaWduZWQgVGV4dFRyYWNrTGlzdDo6bGVuZ3RoKCkg
Y29uc3QKICAgICByZXR1cm4gbV9hZGRUcmFja1RyYWNrcy5zaXplKCkgKyBtX2VsZW1lbnRUcmFj
a3Muc2l6ZSgpICsgbV9pbmJhbmRUcmFja3Muc2l6ZSgpOwogfQogCi1pbnQgVGV4dFRyYWNrTGlz
dDo6Z2V0VHJhY2tJbmRleChUZXh0VHJhY2sgKnRleHRUcmFjaykKK2ludCBUZXh0VHJhY2tMaXN0
OjpnZXRUcmFja0luZGV4KFRyYWNrQmFzZSAqdHJhY2spCiB7CisgICAgaWYgKHRyYWNrLT50eXBl
KCkgIT0gVHJhY2tCYXNlOjpUZXh0VHJhY2spCisgICAgICAgIHJldHVybiAtMTsKKyAgICBUZXh0
VHJhY2sqIHRleHRUcmFjayA9IHN0YXRpY19jYXN0PFRleHRUcmFjayo+KHRyYWNrKTsKKwogICAg
IGlmICh0ZXh0VHJhY2stPnRyYWNrVHlwZSgpID09IFRleHRUcmFjazo6VHJhY2tFbGVtZW50KQog
ICAgICAgICByZXR1cm4gc3RhdGljX2Nhc3Q8TG9hZGFibGVUZXh0VHJhY2sqPih0ZXh0VHJhY2sp
LT50cmFja0VsZW1lbnRJbmRleCgpOwogCkBAIC05OCw3ICs5NSw3IEBAIGludCBUZXh0VHJhY2tM
aXN0OjpnZXRUcmFja0luZGV4UmVsYXRpdmVUb1JlbmRlcmVkVHJhY2tzKFRleHRUcmFjayAqdGV4
dFRyYWNrKQogICAgIH0KIAogICAgIGZvciAoc2l6ZV90IGkgPSAwOyBpIDwgbV9pbmJhbmRUcmFj
a3Muc2l6ZSgpOyArK2kpIHsKLSAgICAgICAgaWYgKCFtX2luYmFuZFRyYWNrc1tpXS0+aXNSZW5k
ZXJlZCgpKQorICAgICAgICBpZiAoIWdldEluYmFuZFRyYWNrKGkpLT5pc1JlbmRlcmVkKCkpCiAg
ICAgICAgICAgICBjb250aW51ZTsKICAgICAgICAgCiAgICAgICAgIGlmIChtX2luYmFuZFRyYWNr
c1tpXSA9PSB0ZXh0VHJhY2spCkBAIC0xMTEsNyArMTA4LDcgQEAgaW50IFRleHRUcmFja0xpc3Q6
OmdldFRyYWNrSW5kZXhSZWxhdGl2ZVRvUmVuZGVyZWRUcmFja3MoVGV4dFRyYWNrICp0ZXh0VHJh
Y2spCiAgICAgcmV0dXJuIC0xOwogfQogCi1UZXh0VHJhY2sqIFRleHRUcmFja0xpc3Q6Oml0ZW0o
dW5zaWduZWQgaW5kZXgpCitUZXh0VHJhY2sqIFRleHRUcmFja0xpc3Q6Oml0ZW0odW5zaWduZWQg
aW5kZXgpIGNvbnN0CiB7CiAgICAgLy8gNC44LjEwLjEyLjEgVGV4dCB0cmFjayBtb2RlbAogICAg
IC8vIFRoZSB0ZXh0IHRyYWNrcyBhcmUgc29ydGVkIGFzIGZvbGxvd3M6CkBAIC0xMjksMzYgKzEy
Niw0NSBAQCBUZXh0VHJhY2sqIFRleHRUcmFja0xpc3Q6Oml0ZW0odW5zaWduZWQgaW5kZXgpCiAK
ICAgICBpbmRleCAtPSBtX2FkZFRyYWNrVHJhY2tzLnNpemUoKTsKICAgICBpZiAoaW5kZXggPCBt
X2luYmFuZFRyYWNrcy5zaXplKCkpCi0gICAgICAgIHJldHVybiBtX2luYmFuZFRyYWNrc1tpbmRl
eF0uZ2V0KCk7CisgICAgICAgIHJldHVybiBnZXRJbmJhbmRUcmFjayhpbmRleCk7CiAKICAgICBy
ZXR1cm4gMDsKIH0KIAotdm9pZCBUZXh0VHJhY2tMaXN0OjppbnZhbGlkYXRlVHJhY2tJbmRleGVz
QWZ0ZXJUcmFjayhUZXh0VHJhY2sqIHRyYWNrKQorVGV4dFRyYWNrKiBUZXh0VHJhY2tMaXN0Ojpn
ZXRJbmJhbmRUcmFjayh1bnNpZ25lZCBpbmRleCkgY29uc3QKIHsKLSAgICBWZWN0b3I8UmVmUHRy
PFRleHRUcmFjaz4gPiogdHJhY2tzID0gMDsKKyAgICBUcmFja0Jhc2UqIHRyYWNrID0gbV9pbmJh
bmRUcmFja3NbaW5kZXhdLmdldCgpOworICAgIEFTU0VSVCh0cmFjay0+dHlwZSgpID09IFRyYWNr
QmFzZTo6VGV4dFRyYWNrKTsKKyAgICByZXR1cm4gc3RhdGljX2Nhc3Q8VGV4dFRyYWNrKj4odHJh
Y2spOworfQogCit2b2lkIFRleHRUcmFja0xpc3Q6OmludmFsaWRhdGVUcmFja0luZGV4ZXNBZnRl
clRyYWNrKFRleHRUcmFjayogdHJhY2spCit7CisgICAgc2l6ZV90IGluZGV4ID0gbm90Rm91bmQ7
CiAgICAgaWYgKHRyYWNrLT50cmFja1R5cGUoKSA9PSBUZXh0VHJhY2s6OlRyYWNrRWxlbWVudCkg
ewotICAgICAgICB0cmFja3MgPSAmbV9lbGVtZW50VHJhY2tzOworICAgICAgICBpbmRleCA9IG1f
ZWxlbWVudFRyYWNrcy5maW5kKHRyYWNrKTsKKyAgICAgICAgaWYgKGluZGV4ID09IG5vdEZvdW5k
KQorICAgICAgICAgICAgcmV0dXJuOworICAgICAgICBmb3IgKHNpemVfdCBpID0gaW5kZXg7IGkg
PCBtX2VsZW1lbnRUcmFja3Muc2l6ZSgpOyArK2kpCisgICAgICAgICAgICBtX2VsZW1lbnRUcmFj
a3MuYXQoaW5kZXgpLT5pbnZhbGlkYXRlVHJhY2tJbmRleCgpOworICAgIH0gZWxzZSBpZiAodHJh
Y2stPnRyYWNrVHlwZSgpID09IFRleHRUcmFjazo6QWRkVHJhY2spIHsKKyAgICAgICAgaWYgKGlu
ZGV4ID09IG5vdEZvdW5kKSB7CisgICAgICAgICAgICBpbmRleCA9IG1fYWRkVHJhY2tUcmFja3Mu
ZmluZCh0cmFjayk7CisgICAgICAgICAgICBpZiAoaW5kZXggPT0gbm90Rm91bmQpCisgICAgICAg
ICAgICAgICAgcmV0dXJuOworICAgICAgICB9CiAgICAgICAgIGZvciAoc2l6ZV90IGkgPSAwOyBp
IDwgbV9hZGRUcmFja1RyYWNrcy5zaXplKCk7ICsraSkKICAgICAgICAgICAgIG1fYWRkVHJhY2tU
cmFja3NbaV0tPmludmFsaWRhdGVUcmFja0luZGV4KCk7CisgICAgfSBlbHNlIGlmICh0cmFjay0+
dHJhY2tUeXBlKCkgPT0gVGV4dFRyYWNrOjpJbkJhbmQpIHsKKyAgICAgICAgaWYgKGluZGV4ID09
IG5vdEZvdW5kKSB7CisgICAgICAgICAgICBpbmRleCA9IG1faW5iYW5kVHJhY2tzLmZpbmQodHJh
Y2spOworICAgICAgICAgICAgaWYgKGluZGV4ID09IG5vdEZvdW5kKQorICAgICAgICAgICAgICAg
IHJldHVybjsKKyAgICAgICAgfQogICAgICAgICBmb3IgKHNpemVfdCBpID0gMDsgaSA8IG1faW5i
YW5kVHJhY2tzLnNpemUoKTsgKytpKQotICAgICAgICAgICAgbV9pbmJhbmRUcmFja3NbaV0tPmlu
dmFsaWRhdGVUcmFja0luZGV4KCk7Ci0gICAgfSBlbHNlIGlmICh0cmFjay0+dHJhY2tUeXBlKCkg
PT0gVGV4dFRyYWNrOjpBZGRUcmFjaykgewotICAgICAgICB0cmFja3MgPSAmbV9hZGRUcmFja1Ry
YWNrczsKLSAgICAgICAgZm9yIChzaXplX3QgaSA9IDA7IGkgPCBtX2luYmFuZFRyYWNrcy5zaXpl
KCk7ICsraSkKLSAgICAgICAgICAgIG1faW5iYW5kVHJhY2tzW2ldLT5pbnZhbGlkYXRlVHJhY2tJ
bmRleCgpOwotICAgIH0gZWxzZSBpZiAodHJhY2stPnRyYWNrVHlwZSgpID09IFRleHRUcmFjazo6
SW5CYW5kKQotICAgICAgICB0cmFja3MgPSAmbV9pbmJhbmRUcmFja3M7Ci0gICAgZWxzZQorICAg
ICAgICAgICAgZ2V0SW5iYW5kVHJhY2soaSktPmludmFsaWRhdGVUcmFja0luZGV4KCk7CisgICAg
fSBlbHNlCiAgICAgICAgIEFTU0VSVF9OT1RfUkVBQ0hFRCgpOwotCi0gICAgc2l6ZV90IGluZGV4
ID0gdHJhY2tzLT5maW5kKHRyYWNrKTsKLSAgICBpZiAoaW5kZXggPT0gbm90Rm91bmQpCi0gICAg
ICAgIHJldHVybjsKLQotICAgIGZvciAoc2l6ZV90IGkgPSBpbmRleDsgaSA8IHRyYWNrcy0+c2l6
ZSgpOyArK2kpCi0gICAgICAgIHRyYWNrcy0+YXQoaW5kZXgpLT5pbnZhbGlkYXRlVHJhY2tJbmRl
eCgpOwogfQogCiB2b2lkIFRleHRUcmFja0xpc3Q6OmFwcGVuZChQYXNzUmVmUHRyPFRleHRUcmFj
az4gcHJwVHJhY2spCkBAIC0xODAsNTEgKzE4Niw2MCBAQCB2b2lkIFRleHRUcmFja0xpc3Q6OmFw
cGVuZChQYXNzUmVmUHRyPFRleHRUcmFjaz4gcHJwVHJhY2spCiAKICAgICBpbnZhbGlkYXRlVHJh
Y2tJbmRleGVzQWZ0ZXJUcmFjayh0cmFjay5nZXQoKSk7CiAKLSAgICBBU1NFUlQoIXRyYWNrLT5t
ZWRpYUVsZW1lbnQoKSB8fCB0cmFjay0+bWVkaWFFbGVtZW50KCkgPT0gbV9vd25lcik7Ci0gICAg
dHJhY2stPnNldE1lZGlhRWxlbWVudChtX293bmVyKTsKKyAgICBBU1NFUlQoIXRyYWNrLT5tZWRp
YUVsZW1lbnQoKSB8fCB0cmFjay0+bWVkaWFFbGVtZW50KCkgPT0gb3duZXIoKSk7CisgICAgdHJh
Y2stPnNldE1lZGlhRWxlbWVudChvd25lcigpKTsKIAogICAgIHNjaGVkdWxlQWRkVHJhY2tFdmVu
dCh0cmFjay5yZWxlYXNlKCkpOwogfQogCi12b2lkIFRleHRUcmFja0xpc3Q6OnJlbW92ZShUZXh0
VHJhY2sqIHRyYWNrKQordm9pZCBUZXh0VHJhY2tMaXN0OjpyZW1vdmUoVHJhY2tCYXNlKiB0cmFj
aykKIHsKLSAgICBWZWN0b3I8UmVmUHRyPFRleHRUcmFjaz4gPiogdHJhY2tzID0gMDsKLQotICAg
IGlmICh0cmFjay0+dHJhY2tUeXBlKCkgPT0gVGV4dFRyYWNrOjpUcmFja0VsZW1lbnQpCi0gICAg
ICAgIHRyYWNrcyA9ICZtX2VsZW1lbnRUcmFja3M7Ci0gICAgZWxzZSBpZiAodHJhY2stPnRyYWNr
VHlwZSgpID09IFRleHRUcmFjazo6QWRkVHJhY2spCi0gICAgICAgIHRyYWNrcyA9ICZtX2FkZFRy
YWNrVHJhY2tzOwotICAgIGVsc2UgaWYgKHRyYWNrLT50cmFja1R5cGUoKSA9PSBUZXh0VHJhY2s6
OkluQmFuZCkKLSAgICAgICAgdHJhY2tzID0gJm1faW5iYW5kVHJhY2tzOworICAgIGlmICh0cmFj
ay0+dHlwZSgpICE9IFRyYWNrQmFzZTo6VGV4dFRyYWNrKQorICAgICAgICByZXR1cm47CisgICAg
VGV4dFRyYWNrKiB0ZXh0VHJhY2sgPSBzdGF0aWNfY2FzdDxUZXh0VHJhY2sqPih0cmFjayk7CisK
KyAgICBzaXplX3QgaW5kZXggPSBub3RGb3VuZDsKKyAgICBpZiAodGV4dFRyYWNrLT50cmFja1R5
cGUoKSA9PSBUZXh0VHJhY2s6OlRyYWNrRWxlbWVudCkKKyAgICAgICAgbV9lbGVtZW50VHJhY2tz
LmZpbmQodGV4dFRyYWNrKTsKKyAgICBlbHNlIGlmICh0ZXh0VHJhY2stPnRyYWNrVHlwZSgpID09
IFRleHRUcmFjazo6QWRkVHJhY2spCisgICAgICAgIG1fYWRkVHJhY2tUcmFja3MuZmluZCh0ZXh0
VHJhY2spOworICAgIGVsc2UgaWYgKHRleHRUcmFjay0+dHJhY2tUeXBlKCkgPT0gVGV4dFRyYWNr
OjpJbkJhbmQpCisgICAgICAgIG1faW5iYW5kVHJhY2tzLmZpbmQodGV4dFRyYWNrKTsKICAgICBl
bHNlCiAgICAgICAgIEFTU0VSVF9OT1RfUkVBQ0hFRCgpOwogCi0gICAgc2l6ZV90IGluZGV4ID0g
dHJhY2tzLT5maW5kKHRyYWNrKTsKICAgICBpZiAoaW5kZXggPT0gbm90Rm91bmQpCiAgICAgICAg
IHJldHVybjsKIAotICAgIGludmFsaWRhdGVUcmFja0luZGV4ZXNBZnRlclRyYWNrKHRyYWNrKTsK
KyAgICBpbnZhbGlkYXRlVHJhY2tJbmRleGVzQWZ0ZXJUcmFjayh0ZXh0VHJhY2spOwogCiAgICAg
QVNTRVJUKCF0cmFjay0+bWVkaWFFbGVtZW50KCkgfHwgdHJhY2stPm1lZGlhRWxlbWVudCgpID09
IG1fb3duZXIpOwogICAgIHRyYWNrLT5zZXRNZWRpYUVsZW1lbnQoMCk7CiAKLSAgICB0cmFja3Mt
PnJlbW92ZShpbmRleCk7CisgICAgaWYgKHRleHRUcmFjay0+dHJhY2tUeXBlKCkgPT0gVGV4dFRy
YWNrOjpUcmFja0VsZW1lbnQpCisgICAgICAgIG1fZWxlbWVudFRyYWNrcy5yZW1vdmUoaW5kZXgp
OworICAgIGVsc2UgaWYgKHRleHRUcmFjay0+dHJhY2tUeXBlKCkgPT0gVGV4dFRyYWNrOjpBZGRU
cmFjaykKKyAgICAgICAgbV9hZGRUcmFja1RyYWNrcy5yZW1vdmUoaW5kZXgpOworICAgIGVsc2Ug
aWYgKHRleHRUcmFjay0+dHJhY2tUeXBlKCkgPT0gVGV4dFRyYWNrOjpJbkJhbmQpCisgICAgICAg
IG1faW5iYW5kVHJhY2tzLnJlbW92ZShpbmRleCk7CisgICAgZWxzZQorICAgICAgICBBU1NFUlRf
Tk9UX1JFQUNIRUQoKTsKIH0KIAotYm9vbCBUZXh0VHJhY2tMaXN0Ojpjb250YWlucyhUZXh0VHJh
Y2sqIHRyYWNrKSBjb25zdAorYm9vbCBUZXh0VHJhY2tMaXN0Ojpjb250YWlucyhUcmFja0Jhc2Uq
IHRyYWNrKSBjb25zdAogewotICAgIGNvbnN0IFZlY3RvcjxSZWZQdHI8VGV4dFRyYWNrPiA+KiB0
cmFja3MgPSAwOwotICAgIAotICAgIGlmICh0cmFjay0+dHJhY2tUeXBlKCkgPT0gVGV4dFRyYWNr
OjpUcmFja0VsZW1lbnQpCi0gICAgICAgIHRyYWNrcyA9ICZtX2VsZW1lbnRUcmFja3M7Ci0gICAg
ZWxzZSBpZiAodHJhY2stPnRyYWNrVHlwZSgpID09IFRleHRUcmFjazo6QWRkVHJhY2spCi0gICAg
ICAgIHRyYWNrcyA9ICZtX2FkZFRyYWNrVHJhY2tzOwotICAgIGVsc2UgaWYgKHRyYWNrLT50cmFj
a1R5cGUoKSA9PSBUZXh0VHJhY2s6OkluQmFuZCkKLSAgICAgICAgdHJhY2tzID0gJm1faW5iYW5k
VHJhY2tzOwotICAgIGVsc2UKLSAgICAgICAgQVNTRVJUX05PVF9SRUFDSEVEKCk7CisgICAgaWYg
KHRyYWNrLT50eXBlKCkgIT0gVHJhY2tCYXNlOjpUZXh0VHJhY2spCisgICAgICAgIHJldHVybiBm
YWxzZTsKKyAgICBUZXh0VHJhY2sqIHRleHRUcmFjayA9IHN0YXRpY19jYXN0PFRleHRUcmFjayo+
KHRyYWNrKTsKICAgICAKLSAgICByZXR1cm4gdHJhY2tzLT5maW5kKHRyYWNrKSAhPSBub3RGb3Vu
ZDsKKyAgICBpZiAodGV4dFRyYWNrLT50cmFja1R5cGUoKSA9PSBUZXh0VHJhY2s6OlRyYWNrRWxl
bWVudCkKKyAgICAgICAgcmV0dXJuIG1fZWxlbWVudFRyYWNrcy5maW5kKHRyYWNrKSAhPSBub3RG
b3VuZDsKKyAgICBpZiAodGV4dFRyYWNrLT50cmFja1R5cGUoKSA9PSBUZXh0VHJhY2s6OkFkZFRy
YWNrKQorICAgICAgICByZXR1cm4gbV9hZGRUcmFja1RyYWNrcy5maW5kKHRyYWNrKSAhPSBub3RG
b3VuZDsKKyAgICBpZiAodGV4dFRyYWNrLT50cmFja1R5cGUoKSA9PSBUZXh0VHJhY2s6OkluQmFu
ZCkKKyAgICAgICAgcmV0dXJuIG1faW5iYW5kVHJhY2tzLmZpbmQodHJhY2spICE9IG5vdEZvdW5k
OworICAgIEFTU0VSVF9OT1RfUkVBQ0hFRCgpOworICAgIHJldHVybiBmYWxzZTsKIH0KIAogY29u
c3QgQXRvbWljU3RyaW5nJiBUZXh0VHJhY2tMaXN0OjppbnRlcmZhY2VOYW1lKCkgY29uc3QKQEAg
LTIzMiw0MSArMjQ3LDQgQEAgY29uc3QgQXRvbWljU3RyaW5nJiBUZXh0VHJhY2tMaXN0OjppbnRl
cmZhY2VOYW1lKCkgY29uc3QKICAgICByZXR1cm4gZXZlbnROYW1lcygpLmludGVyZmFjZUZvclRl
eHRUcmFja0xpc3Q7CiB9CiAKLXZvaWQgVGV4dFRyYWNrTGlzdDo6c2NoZWR1bGVBZGRUcmFja0V2
ZW50KFBhc3NSZWZQdHI8VGV4dFRyYWNrPiB0cmFjaykKLXsKLSAgICAvLyA0LjguMTAuMTIuMyBT
b3VyY2luZyBvdXQtb2YtYmFuZCB0ZXh0IHRyYWNrcwotICAgIC8vIDQuOC4xMC4xMi40IFRleHQg
dHJhY2sgQVBJCi0gICAgLy8gLi4uIHRoZW4gcXVldWUgYSB0YXNrIHRvIGZpcmUgYW4gZXZlbnQg
d2l0aCB0aGUgbmFtZSBhZGR0cmFjaywgdGhhdCBkb2VzIG5vdCAKLSAgICAvLyBidWJibGUgYW5k
IGlzIG5vdCBjYW5jZWxhYmxlLCBhbmQgdGhhdCB1c2VzIHRoZSBUcmFja0V2ZW50IGludGVyZmFj
ZSwgd2l0aCAKLSAgICAvLyB0aGUgdHJhY2sgYXR0cmlidXRlIGluaXRpYWxpemVkIHRvIHRoZSB0
ZXh0IHRyYWNrJ3MgVGV4dFRyYWNrIG9iamVjdCwgYXQgCi0gICAgLy8gdGhlIG1lZGlhIGVsZW1l
bnQncyB0ZXh0VHJhY2tzIGF0dHJpYnV0ZSdzIFRleHRUcmFja0xpc3Qgb2JqZWN0LgotCi0gICAg
UmVmUHRyPFRleHRUcmFjaz4gdHJhY2tSZWYgPSB0cmFjazsKLSAgICBUcmFja0V2ZW50SW5pdCBp
bml0aWFsaXplcjsKLSAgICBpbml0aWFsaXplci50cmFjayA9IHRyYWNrUmVmOwotICAgIGluaXRp
YWxpemVyLmJ1YmJsZXMgPSBmYWxzZTsKLSAgICBpbml0aWFsaXplci5jYW5jZWxhYmxlID0gZmFs
c2U7Ci0KLSAgICBtX3BlbmRpbmdFdmVudHMuYXBwZW5kKFRyYWNrRXZlbnQ6OmNyZWF0ZShldmVu
dE5hbWVzKCkuYWRkdHJhY2tFdmVudCwgaW5pdGlhbGl6ZXIpKTsKLSAgICBpZiAoIW1fcGVuZGlu
Z0V2ZW50VGltZXIuaXNBY3RpdmUoKSkKLSAgICAgICAgbV9wZW5kaW5nRXZlbnRUaW1lci5zdGFy
dE9uZVNob3QoMCk7Ci19Ci0KLXZvaWQgVGV4dFRyYWNrTGlzdDo6YXN5bmNFdmVudFRpbWVyRmly
ZWQoVGltZXI8VGV4dFRyYWNrTGlzdD4qKQotewotICAgIFZlY3RvcjxSZWZQdHI8RXZlbnQ+ID4g
cGVuZGluZ0V2ZW50czsKLQotICAgICsrbV9kaXNwYXRjaGluZ0V2ZW50czsKLSAgICBtX3BlbmRp
bmdFdmVudHMuc3dhcChwZW5kaW5nRXZlbnRzKTsKLSAgICBzaXplX3QgY291bnQgPSBwZW5kaW5n
RXZlbnRzLnNpemUoKTsKLSAgICBmb3IgKHNpemVfdCBpbmRleCA9IDA7IGluZGV4IDwgY291bnQ7
ICsraW5kZXgpCi0gICAgICAgIGRpc3BhdGNoRXZlbnQocGVuZGluZ0V2ZW50c1tpbmRleF0ucmVs
ZWFzZSgpLCBJR05PUkVfRVhDRVBUSU9OKTsKLSAgICAtLW1fZGlzcGF0Y2hpbmdFdmVudHM7Ci19
Ci0KLU5vZGUqIFRleHRUcmFja0xpc3Q6Om93bmVyKCkgY29uc3QKLXsKLSAgICByZXR1cm4gbV9v
d25lcjsKLX0KLQogI2VuZGlmCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9odG1sL3RyYWNr
L1RleHRUcmFja0xpc3QuaCBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvdHJhY2svVGV4dFRyYWNrTGlz
dC5oCmluZGV4IDFlZTE1YzkzYzk4NzllNWM5YWE1ZTVkNGI2OTFkNDdjMDU0NjJhMjEuLmVmNTI2
N2Q0MTU4ZDg1OTA2OTM1NDQwZjZjODJmMDg4ZTRlZDMxNDEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJDb3JlL2h0bWwvdHJhY2svVGV4dFRyYWNrTGlzdC5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2h0
bWwvdHJhY2svVGV4dFRyYWNrTGlzdC5oCkBAIC0yOCwyMSArMjgsMTMgQEAKIAogI2lmIEVOQUJM
RShWSURFT19UUkFDSykKIAotI2luY2x1ZGUgIkV2ZW50TGlzdGVuZXIuaCIKLSNpbmNsdWRlICJF
dmVudFRhcmdldC5oIgotI2luY2x1ZGUgIlRpbWVyLmgiCi0jaW5jbHVkZSA8YWxnb3JpdGhtPgot
I2luY2x1ZGUgPHd0Zi9QYXNzUmVmUHRyLmg+Ci0jaW5jbHVkZSA8d3RmL1JlZkNvdW50ZWQuaD4K
LSNpbmNsdWRlIDx3dGYvVmVjdG9yLmg+CisjaW5jbHVkZSAiVHJhY2tMaXN0QmFzZS5oIgogCiBu
YW1lc3BhY2UgV2ViQ29yZSB7CiAKLWNsYXNzIEhUTUxNZWRpYUVsZW1lbnQ7CiBjbGFzcyBUZXh0
VHJhY2s7Ci1jbGFzcyBUZXh0VHJhY2tMaXN0OwogCi1jbGFzcyBUZXh0VHJhY2tMaXN0IDogcHVi
bGljIFJlZkNvdW50ZWQ8VGV4dFRyYWNrTGlzdD4sIHB1YmxpYyBFdmVudFRhcmdldCB7CitjbGFz
cyBUZXh0VHJhY2tMaXN0IDogcHVibGljIFRyYWNrTGlzdEJhc2UgewogcHVibGljOgogICAgIHN0
YXRpYyBQYXNzUmVmUHRyPFRleHRUcmFja0xpc3Q+IGNyZWF0ZShIVE1MTWVkaWFFbGVtZW50KiBv
d25lciwgU2NyaXB0RXhlY3V0aW9uQ29udGV4dCogY29udGV4dCkKICAgICB7CkBAIC01MCw1NCAr
NDIsMjcgQEAgcHVibGljOgogICAgIH0KICAgICB+VGV4dFRyYWNrTGlzdCgpOwogCi0gICAgdW5z
aWduZWQgbGVuZ3RoKCkgY29uc3Q7Ci0gICAgaW50IGdldFRyYWNrSW5kZXgoVGV4dFRyYWNrKik7
CiAgICAgaW50IGdldFRyYWNrSW5kZXhSZWxhdGl2ZVRvUmVuZGVyZWRUcmFja3MoVGV4dFRyYWNr
Kik7Ci0gICAgYm9vbCBjb250YWlucyhUZXh0VHJhY2sqKSBjb25zdDsKIAotICAgIFRleHRUcmFj
ayogaXRlbSh1bnNpZ25lZCBpbmRleCk7CisgICAgdmlydHVhbCB1bnNpZ25lZCBsZW5ndGgoKSBj
b25zdCBPVkVSUklERTsKKyAgICB2aXJ0dWFsIGludCBnZXRUcmFja0luZGV4KFRyYWNrQmFzZSop
IE9WRVJSSURFOworICAgIHZpcnR1YWwgYm9vbCBjb250YWlucyhUcmFja0Jhc2UqKSBjb25zdCBP
VkVSUklERTsKKworICAgIFRleHRUcmFjayogaXRlbSh1bnNpZ25lZCBpbmRleCkgY29uc3Q7CiAg
ICAgdm9pZCBhcHBlbmQoUGFzc1JlZlB0cjxUZXh0VHJhY2s+KTsKLSAgICB2b2lkIHJlbW92ZShU
ZXh0VHJhY2sqKTsKKyAgICB2aXJ0dWFsIHZvaWQgcmVtb3ZlKFRyYWNrQmFzZSopIE9WRVJSSURF
OwogCiAgICAgLy8gRXZlbnRUYXJnZXQKICAgICB2aXJ0dWFsIGNvbnN0IEF0b21pY1N0cmluZyYg
aW50ZXJmYWNlTmFtZSgpIGNvbnN0OwotICAgIHVzaW5nIFJlZkNvdW50ZWQ8VGV4dFRyYWNrTGlz
dD46OnJlZjsKLSAgICB1c2luZyBSZWZDb3VudGVkPFRleHRUcmFja0xpc3Q+OjpkZXJlZjsKLSAg
ICB2aXJ0dWFsIFNjcmlwdEV4ZWN1dGlvbkNvbnRleHQqIHNjcmlwdEV4ZWN1dGlvbkNvbnRleHQo
KSBjb25zdCB7IHJldHVybiBtX2NvbnRleHQ7IH0KLQotICAgIERFRklORV9BVFRSSUJVVEVfRVZF
TlRfTElTVEVORVIoYWRkdHJhY2spOwotCi0gICAgdm9pZCBjbGVhck93bmVyKCkgeyBtX293bmVy
ID0gMDsgfQotICAgIE5vZGUqIG93bmVyKCkgY29uc3Q7Ci0KLSAgICBib29sIGlzRmlyaW5nRXZl
bnRMaXN0ZW5lcnMoKSB7IHJldHVybiBtX2Rpc3BhdGNoaW5nRXZlbnRzOyB9CiAKIHByaXZhdGU6
CiAgICAgVGV4dFRyYWNrTGlzdChIVE1MTWVkaWFFbGVtZW50KiwgU2NyaXB0RXhlY3V0aW9uQ29u
dGV4dCopOwogCi0gICAgLy8gRXZlbnRUYXJnZXQKLSAgICB2aXJ0dWFsIHZvaWQgcmVmRXZlbnRU
YXJnZXQoKSB7IHJlZigpOyB9Ci0gICAgdmlydHVhbCB2b2lkIGRlcmVmRXZlbnRUYXJnZXQoKSB7
IGRlcmVmKCk7IH0KLSAgICB2aXJ0dWFsIEV2ZW50VGFyZ2V0RGF0YSogZXZlbnRUYXJnZXREYXRh
KCkgeyByZXR1cm4gJm1fZXZlbnRUYXJnZXREYXRhOyB9Ci0gICAgdmlydHVhbCBFdmVudFRhcmdl
dERhdGEqIGVuc3VyZUV2ZW50VGFyZ2V0RGF0YSgpIHsgcmV0dXJuICZtX2V2ZW50VGFyZ2V0RGF0
YTsgfQotCi0gICAgdm9pZCBzY2hlZHVsZUFkZFRyYWNrRXZlbnQoUGFzc1JlZlB0cjxUZXh0VHJh
Y2s+KTsKLSAgICB2b2lkIGFzeW5jRXZlbnRUaW1lckZpcmVkKFRpbWVyPFRleHRUcmFja0xpc3Q+
Kik7Ci0KKyAgICBUZXh0VHJhY2sqIGdldEluYmFuZFRyYWNrKHVuc2lnbmVkKSBjb25zdDsKICAg
ICB2b2lkIGludmFsaWRhdGVUcmFja0luZGV4ZXNBZnRlclRyYWNrKFRleHRUcmFjayopOwogCi0g
ICAgU2NyaXB0RXhlY3V0aW9uQ29udGV4dCogbV9jb250ZXh0OwotICAgIEhUTUxNZWRpYUVsZW1l
bnQqIG1fb3duZXI7Ci0KLSAgICBWZWN0b3I8UmVmUHRyPEV2ZW50PiA+IG1fcGVuZGluZ0V2ZW50
czsKLSAgICBUaW1lcjxUZXh0VHJhY2tMaXN0PiBtX3BlbmRpbmdFdmVudFRpbWVyOwotCi0gICAg
RXZlbnRUYXJnZXREYXRhIG1fZXZlbnRUYXJnZXREYXRhOwotICAgIFZlY3RvcjxSZWZQdHI8VGV4
dFRyYWNrPiA+IG1fYWRkVHJhY2tUcmFja3M7Ci0gICAgVmVjdG9yPFJlZlB0cjxUZXh0VHJhY2s+
ID4gbV9lbGVtZW50VHJhY2tzOwotICAgIFZlY3RvcjxSZWZQdHI8VGV4dFRyYWNrPiA+IG1faW5i
YW5kVHJhY2tzOwotCi0gICAgaW50IG1fZGlzcGF0Y2hpbmdFdmVudHM7CisgICAgVmVjdG9yPFJl
ZlB0cjxXZWJDb3JlOjpUZXh0VHJhY2s+ID4gbV9hZGRUcmFja1RyYWNrczsKKyAgICBWZWN0b3I8
UmVmUHRyPFdlYkNvcmU6OlRleHRUcmFjaz4gPiBtX2VsZW1lbnRUcmFja3M7CiB9OwogCiB9IC8v
IG5hbWVzcGFjZSBXZWJDb3JlCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9odG1sL3RyYWNr
L1RyYWNrQmFzZS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL3RyYWNrL1RyYWNrQmFzZS5jcHAK
aW5kZXggNmEyYzM1ODIzZTYxOTYyYTM3YzlmOGY0Y2VmZDk4OWRkYWI1MGRmZS4uZGU0ZTM4NTc0
Y2Q4MTgwMmE2YWUwMTAxYTMwMGM2YjI5MGI5ODJhYyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNv
cmUvaHRtbC90cmFjay9UcmFja0Jhc2UuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvdHJh
Y2svVHJhY2tCYXNlLmNwcApAQCAtMzAsOCArMzAsMTAgQEAKIAogbmFtZXNwYWNlIFdlYkNvcmUg
ewogCi1UcmFja0Jhc2U6OlRyYWNrQmFzZShTY3JpcHRFeGVjdXRpb25Db250ZXh0KiBjb250ZXh0
LCBUeXBlIHR5cGUpCi0gICAgOiBtX3NjcmlwdEV4ZWN1dGlvbkNvbnRleHQoY29udGV4dCkKK1Ry
YWNrQmFzZTo6VHJhY2tCYXNlKFR5cGUgdHlwZSwgY29uc3QgQXRvbWljU3RyaW5nJiBsYWJlbCwg
Y29uc3QgQXRvbWljU3RyaW5nJiBsYW5ndWFnZSkKKyAgICA6IG1fbWVkaWFFbGVtZW50KDApCisg
ICAgLCBtX2xhYmVsKGxhYmVsKQorICAgICwgbV9sYW5ndWFnZShsYW5ndWFnZSkKIHsKICAgICBB
U1NFUlQodHlwZSAhPSBCYXNlVHJhY2spOwogICAgIG1fdHlwZSA9IHR5cGU7CkBAIC00MSwyNCAr
NDMsMTQgQEAgVHJhY2tCYXNlOjp+VHJhY2tCYXNlKCkKIHsKIH0KIAotY29uc3QgQXRvbWljU3Ry
aW5nJiBUcmFja0Jhc2U6OmludGVyZmFjZU5hbWUoKSBjb25zdAordm9pZCBUcmFja0Jhc2U6OnNl
dEtpbmQoY29uc3QgQXRvbWljU3RyaW5nJiBraW5kKQogewotICAgIHJldHVybiBldmVudE5hbWVz
KCkuaW50ZXJmYWNlRm9yVGV4dFRyYWNrOwotfQotCi1TY3JpcHRFeGVjdXRpb25Db250ZXh0KiBU
cmFja0Jhc2U6OnNjcmlwdEV4ZWN1dGlvbkNvbnRleHQoKSBjb25zdAotewotICAgIHJldHVybiBt
X3NjcmlwdEV4ZWN1dGlvbkNvbnRleHQ7Ci19CisgICAgU3RyaW5nIG9sZEtpbmQgPSBtX2tpbmQ7
CiAKLUV2ZW50VGFyZ2V0RGF0YSogVHJhY2tCYXNlOjpldmVudFRhcmdldERhdGEoKQotewotICAg
IHJldHVybiAmbV9ldmVudFRhcmdldERhdGE7Ci19Ci0KLUV2ZW50VGFyZ2V0RGF0YSogVHJhY2tC
YXNlOjplbnN1cmVFdmVudFRhcmdldERhdGEoKQotewotICAgIHJldHVybiAmbV9ldmVudFRhcmdl
dERhdGE7CisgICAgaWYgKGlzVmFsaWRLaW5kKGtpbmQpKQorICAgICAgICBtX2tpbmQgPSBraW5k
OworICAgIGVsc2UKKyAgICAgICAgbV9raW5kID0gZGVmYXVsdEtpbmRLZXl3b3JkKCk7CiB9CiAK
IH0gLy8gbmFtZXNwYWNlIFdlYkNvcmUKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2h0bWwv
dHJhY2svVHJhY2tCYXNlLmggYi9Tb3VyY2UvV2ViQ29yZS9odG1sL3RyYWNrL1RyYWNrQmFzZS5o
CmluZGV4IGMwMDY2MGYwNTNhZDY0OTQxNjU4ZjIwZDc1MDMwY2FiYzkzMjc5ODkuLjU0NjI4OThj
MGUwNTdlMjI3MGM5MTQxYTZhZDUyYjQzMmRhNzI0OGMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJD
b3JlL2h0bWwvdHJhY2svVHJhY2tCYXNlLmgKKysrIGIvU291cmNlL1dlYkNvcmUvaHRtbC90cmFj
ay9UcmFja0Jhc2UuaApAQCAtMzMsMzUgKzMzLDQyIEBACiAKIG5hbWVzcGFjZSBXZWJDb3JlIHsK
IAotY2xhc3MgU2NyaXB0RXhlY3V0aW9uQ29udGV4dDsKK2NsYXNzIEhUTUxNZWRpYUVsZW1lbnQ7
CiAKLWNsYXNzIFRyYWNrQmFzZSA6IHB1YmxpYyBSZWZDb3VudGVkPFRyYWNrQmFzZT4sIHB1Ymxp
YyBFdmVudFRhcmdldCB7CitjbGFzcyBUcmFja0Jhc2UgOiBwdWJsaWMgUmVmQ291bnRlZDxUcmFj
a0Jhc2U+IHsKIHB1YmxpYzoKICAgICB2aXJ0dWFsIH5UcmFja0Jhc2UoKTsKIAogICAgIGVudW0g
VHlwZSB7IEJhc2VUcmFjaywgVGV4dFRyYWNrLCBBdWRpb1RyYWNrLCBWaWRlb1RyYWNrIH07CiAg
ICAgVHlwZSB0eXBlKCkgY29uc3QgeyByZXR1cm4gbV90eXBlOyB9CiAKLSAgICB2aXJ0dWFsIGNv
bnN0IEF0b21pY1N0cmluZyYgaW50ZXJmYWNlTmFtZSgpIGNvbnN0OwotICAgIHZpcnR1YWwgU2Ny
aXB0RXhlY3V0aW9uQ29udGV4dCogc2NyaXB0RXhlY3V0aW9uQ29udGV4dCgpIGNvbnN0OwotICAg
IAotICAgIHVzaW5nIFJlZkNvdW50ZWQ8VHJhY2tCYXNlPjo6cmVmOwotICAgIHVzaW5nIFJlZkNv
dW50ZWQ8VHJhY2tCYXNlPjo6ZGVyZWY7CisgICAgdm9pZCBzZXRNZWRpYUVsZW1lbnQoSFRNTE1l
ZGlhRWxlbWVudCogZWxlbWVudCkgeyBtX21lZGlhRWxlbWVudCA9IGVsZW1lbnQ7IH0KKyAgICBI
VE1MTWVkaWFFbGVtZW50KiBtZWRpYUVsZW1lbnQoKSB7IHJldHVybiBtX21lZGlhRWxlbWVudDsg
fQorCisgICAgQXRvbWljU3RyaW5nIGtpbmQoKSBjb25zdCB7IHJldHVybiBtX2tpbmQ7IH0KKyAg
ICB2aXJ0dWFsIHZvaWQgc2V0S2luZChjb25zdCBBdG9taWNTdHJpbmcmKTsKKworICAgIEF0b21p
Y1N0cmluZyBsYWJlbCgpIGNvbnN0IHsgcmV0dXJuIG1fbGFiZWw7IH0KKyAgICB2b2lkIHNldExh
YmVsKGNvbnN0IEF0b21pY1N0cmluZyYgbGFiZWwpIHsgbV9sYWJlbCA9IGxhYmVsOyB9CisKKyAg
ICBBdG9taWNTdHJpbmcgbGFuZ3VhZ2UoKSBjb25zdCB7IHJldHVybiBtX2xhbmd1YWdlOyB9Cisg
ICAgdm9pZCBzZXRMYW5ndWFnZShjb25zdCBBdG9taWNTdHJpbmcmIGxhbmd1YWdlKSB7IG1fbGFu
Z3VhZ2UgPSBsYW5ndWFnZTsgfQorCisgICAgdmlydHVhbCB2b2lkIGNsZWFyQ2xpZW50KCkgPSAw
OwogCiBwcm90ZWN0ZWQ6Ci0gICAgVHJhY2tCYXNlKFNjcmlwdEV4ZWN1dGlvbkNvbnRleHQqLCBU
eXBlKTsKLSAgICAKLSAgICB2aXJ0dWFsIEV2ZW50VGFyZ2V0RGF0YSogZXZlbnRUYXJnZXREYXRh
KCk7Ci0gICAgdmlydHVhbCBFdmVudFRhcmdldERhdGEqIGVuc3VyZUV2ZW50VGFyZ2V0RGF0YSgp
OworICAgIFRyYWNrQmFzZShUeXBlLCBjb25zdCBBdG9taWNTdHJpbmcmIGxhYmVsLCBjb25zdCBB
dG9taWNTdHJpbmcmIGxhbmd1YWdlKTsKKworICAgIHZpcnR1YWwgYm9vbCBpc1ZhbGlkS2luZChj
b25zdCBBdG9taWNTdHJpbmcmKSBjb25zdCA9IDA7CisgICAgdmlydHVhbCBjb25zdCBBdG9taWNT
dHJpbmcmIGRlZmF1bHRLaW5kS2V5d29yZCgpIGNvbnN0ID0gMDsKKworICAgIEhUTUxNZWRpYUVs
ZW1lbnQqIG1fbWVkaWFFbGVtZW50OwogCiBwcml2YXRlOgogICAgIFR5cGUgbV90eXBlOwotICAg
IAotICAgIHZpcnR1YWwgdm9pZCByZWZFdmVudFRhcmdldCgpIHsgcmVmKCk7IH0KLSAgICB2aXJ0
dWFsIHZvaWQgZGVyZWZFdmVudFRhcmdldCgpIHsgZGVyZWYoKTsgfQotICAgIAotICAgIFNjcmlw
dEV4ZWN1dGlvbkNvbnRleHQqIG1fc2NyaXB0RXhlY3V0aW9uQ29udGV4dDsKLSAgICBFdmVudFRh
cmdldERhdGEgbV9ldmVudFRhcmdldERhdGE7CisgICAgQXRvbWljU3RyaW5nIG1fa2luZDsKKyAg
ICBBdG9taWNTdHJpbmcgbV9sYWJlbDsKKyAgICBBdG9taWNTdHJpbmcgbV9sYW5ndWFnZTsKIH07
CiAKIH0gLy8gbmFtZXNwYWNlIFdlYkNvcmUKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2h0
bWwvdHJhY2svVHJhY2tMaXN0QmFzZS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL3RyYWNrL1Ry
YWNrTGlzdEJhc2UuY3BwCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjFiODZlOGYzMDJlZDM5MGRmYWIwZTI1MWRmMzE1
MGE0NDI4OWFiMWQKLS0tIC9kZXYvbnVsbAorKysgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL3RyYWNr
L1RyYWNrTGlzdEJhc2UuY3BwCkBAIC0wLDAgKzEsMTgzIEBACisvKgorICogQ29weXJpZ2h0IChD
KSAyMDExLCAyMDEyIEFwcGxlIEluYy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKgorICogUmVk
aXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3
aXRob3V0CisgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUg
Zm9sbG93aW5nIGNvbmRpdGlvbnMKKyAqIGFyZSBtZXQ6CisgKiAxLiBSZWRpc3RyaWJ1dGlvbnMg
b2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90
aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVy
LgorICogMi4gUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRo
ZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMg
YW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKKyAqICAgIGRvY3VtZW50YXRpb24g
YW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCisg
KgorICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBBUFBMRSBDT01QVVRFUiwgSU5DLiBg
YEFTIElTJycgQU5EIEFOWQorICogRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xV
RElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBUSEUKKyAqIElNUExJRUQgV0FSUkFOVElFUyBPRiBN
RVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUgorICogUFVSUE9TRSBB
UkUgRElTQ0xBSU1FRC4gIElOIE5PIEVWRU5UIFNIQUxMIEFQUExFIENPTVBVVEVSLCBJTkMuIE9S
CisgKiBDT05UUklCVVRPUlMgQkUgTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5D
SURFTlRBTCwgU1BFQ0lBTCwKKyAqIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VT
IChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywKKyAqIFBST0NVUkVNRU5UIE9GIFNVQlNU
SVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLCBEQVRBLCBPUgorICogUFJPRklU
UzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZIFRI
RU9SWQorICogT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklM
SVRZLCBPUiBUT1JUCisgKiAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklT
SU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UKKyAqIE9GIFRISVMgU09GVFdBUkUsIEVWRU4g
SUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuIAorICovCisKKyNp
bmNsdWRlICJjb25maWcuaCIKKworI2lmIEVOQUJMRShWSURFT19UUkFDSykKKworI2luY2x1ZGUg
IlRyYWNrTGlzdEJhc2UuaCIKKworI2luY2x1ZGUgIkV2ZW50TmFtZXMuaCIKKyNpbmNsdWRlICJI
VE1MTWVkaWFFbGVtZW50LmgiCisjaW5jbHVkZSAiU2NyaXB0RXhlY3V0aW9uQ29udGV4dC5oIgor
I2luY2x1ZGUgIlRyYWNrQmFzZS5oIgorI2luY2x1ZGUgIlRyYWNrRXZlbnQuaCIKKwordXNpbmcg
bmFtZXNwYWNlIFdlYkNvcmU7CisKK1RyYWNrTGlzdEJhc2U6OlRyYWNrTGlzdEJhc2UoSFRNTE1l
ZGlhRWxlbWVudCogb3duZXIsIFNjcmlwdEV4ZWN1dGlvbkNvbnRleHQqIGNvbnRleHQpCisgICAg
OiBtX2NvbnRleHQoY29udGV4dCkKKyAgICAsIG1fb3duZXIob3duZXIpCisgICAgLCBtX3BlbmRp
bmdFdmVudFRpbWVyKHRoaXMsICZUcmFja0xpc3RCYXNlOjphc3luY0V2ZW50VGltZXJGaXJlZCkK
KyAgICAsIG1fZGlzcGF0Y2hpbmdFdmVudHMoMCkKK3sKKyAgICBBU1NFUlQoY29udGV4dC0+aXNE
b2N1bWVudCgpKTsKK30KKworVHJhY2tMaXN0QmFzZTo6flRyYWNrTGlzdEJhc2UoKQoreworfQor
Cit1bnNpZ25lZCBUcmFja0xpc3RCYXNlOjpsZW5ndGgoKSBjb25zdAoreworICAgIHJldHVybiBt
X2luYmFuZFRyYWNrcy5zaXplKCk7Cit9CisKK2ludCBUcmFja0xpc3RCYXNlOjpnZXRUcmFja0lu
ZGV4KFRyYWNrQmFzZSAqdHJhY2spCit7CisgICAgcmV0dXJuIG1faW5iYW5kVHJhY2tzLmZpbmQo
dHJhY2spOworfQorCit2b2lkIFRyYWNrTGlzdEJhc2U6OnJlbW92ZShUcmFja0Jhc2UqIHRyYWNr
KQoreworICAgIHNpemVfdCBpbmRleCA9IG1faW5iYW5kVHJhY2tzLmZpbmQodHJhY2spOworICAg
IEFTU0VSVChpbmRleCAhPSBub3RGb3VuZCk7CisKKyAgICBBU1NFUlQodHJhY2stPm1lZGlhRWxl
bWVudCgpID09IG1fb3duZXIpOworICAgIHRyYWNrLT5zZXRNZWRpYUVsZW1lbnQoMCk7CisKKyAg
ICBSZWZQdHI8VHJhY2tCYXNlPiB0cmFja1JlZiA9IG1faW5iYW5kVHJhY2tzW2luZGV4XTsKKwor
ICAgIG1faW5iYW5kVHJhY2tzLnJlbW92ZShpbmRleCk7CisKKyAgICBzY2hlZHVsZUFkZFRyYWNr
RXZlbnQodHJhY2tSZWYucmVsZWFzZSgpKTsKK30KKworYm9vbCBUcmFja0xpc3RCYXNlOjpjb250
YWlucyhUcmFja0Jhc2UqIHRyYWNrKSBjb25zdAoreworICAgIHJldHVybiBtX2luYmFuZFRyYWNr
cy5maW5kKHRyYWNrKSAhPSBub3RGb3VuZDsKK30KKwordm9pZCBUcmFja0xpc3RCYXNlOjpzY2hl
ZHVsZUFkZFRyYWNrRXZlbnQoUGFzc1JlZlB0cjxUcmFja0Jhc2U+IHRyYWNrKQoreworICAgIC8v
IDQuOC4xMC41IExvYWRpbmcgdGhlIG1lZGlhIHJlc291cmNlCisgICAgLy8gLi4uCisgICAgLy8g
RmlyZSBhIHRydXN0ZWQgZXZlbnQgd2l0aCB0aGUgbmFtZSBhZGR0cmFjaywgdGhhdCBkb2VzIG5v
dCBidWJibGUgYW5kIGlzCisgICAgLy8gbm90IGNhbmNlbGFibGUsIGFuZCB0aGF0IHVzZXMgdGhl
IFRyYWNrRXZlbnQgaW50ZXJmYWNlLCB3aXRoIHRoZSB0cmFjaworICAgIC8vIGF0dHJpYnV0ZSBp
bml0aWFsaXplZCB0byB0aGUgbmV3IEF1ZGlvVHJhY2sgb2JqZWN0LCBhdCB0aGlzCisgICAgLy8g
QXVkaW9UcmFja0xpc3Qgb2JqZWN0LgorICAgIC8vIC4uLgorICAgIC8vIEZpcmUgYSB0cnVzdGVk
IGV2ZW50IHdpdGggdGhlIG5hbWUgYWRkdHJhY2ssIHRoYXQgZG9lcyBub3QgYnViYmxlIGFuZCBp
cworICAgIC8vIG5vdCBjYW5jZWxhYmxlLCBhbmQgdGhhdCB1c2VzIHRoZSBUcmFja0V2ZW50IGlu
dGVyZmFjZSwgd2l0aCB0aGUgdHJhY2sKKyAgICAvLyBhdHRyaWJ1dGUgaW5pdGlhbGl6ZWQgdG8g
dGhlIG5ldyBWaWRlb1RyYWNrIG9iamVjdCwgYXQgdGhpcworICAgIC8vIFZpZGVvVHJhY2tMaXN0
IG9iamVjdC4KKworICAgIC8vIDQuOC4xMC4xMi4zIFNvdXJjaW5nIG91dC1vZi1iYW5kIHRleHQg
dHJhY2tzCisgICAgLy8gNC44LjEwLjEyLjQgVGV4dCB0cmFjayBBUEkKKyAgICAvLyAuLi4gdGhl
biBxdWV1ZSBhIHRhc2sgdG8gZmlyZSBhbiBldmVudCB3aXRoIHRoZSBuYW1lIGFkZHRyYWNrLCB0
aGF0IGRvZXMgbm90CisgICAgLy8gYnViYmxlIGFuZCBpcyBub3QgY2FuY2VsYWJsZSwgYW5kIHRo
YXQgdXNlcyB0aGUgVHJhY2tFdmVudCBpbnRlcmZhY2UsIHdpdGgKKyAgICAvLyB0aGUgdHJhY2sg
YXR0cmlidXRlIGluaXRpYWxpemVkIHRvIHRoZSB0ZXh0IHRyYWNrJ3MgVGV4dFRyYWNrIG9iamVj
dCwgYXQKKyAgICAvLyB0aGUgbWVkaWEgZWxlbWVudCdzIHRleHRUcmFja3MgYXR0cmlidXRlJ3Mg
VGV4dFRyYWNrTGlzdCBvYmplY3QuIAorCisgICAgUmVmUHRyPFRyYWNrQmFzZT4gdHJhY2tSZWYg
PSB0cmFjazsKKyAgICBUcmFja0V2ZW50SW5pdCBpbml0aWFsaXplcjsKKyAgICBpbml0aWFsaXpl
ci50cmFjayA9IHRyYWNrUmVmOworICAgIGluaXRpYWxpemVyLmJ1YmJsZXMgPSBmYWxzZTsKKyAg
ICBpbml0aWFsaXplci5jYW5jZWxhYmxlID0gZmFsc2U7CisKKyAgICBtX3BlbmRpbmdFdmVudHMu
YXBwZW5kKFRyYWNrRXZlbnQ6OmNyZWF0ZShldmVudE5hbWVzKCkuYWRkdHJhY2tFdmVudCwgaW5p
dGlhbGl6ZXIpKTsKKyAgICBpZiAoIW1fcGVuZGluZ0V2ZW50VGltZXIuaXNBY3RpdmUoKSkKKyAg
ICAgICAgbV9wZW5kaW5nRXZlbnRUaW1lci5zdGFydE9uZVNob3QoMCk7Cit9CisKK3ZvaWQgVHJh
Y2tMaXN0QmFzZTo6c2NoZWR1bGVSZW1vdmVUcmFja0V2ZW50KFBhc3NSZWZQdHI8VHJhY2tCYXNl
PiB0cmFjaykKK3sKKyAgICAvLyA0LjguMTAuNiBPZmZzZXRzIGludG8gdGhlIG1lZGlhIHJlc291
cmNlCisgICAgLy8gSWYgYXQgYW55IHRpbWUgdGhlIHVzZXIgYWdlbnQgbGVhcm5zIHRoYXQgYW4g
YXVkaW8gb3IgdmlkZW8gdHJhY2sgaGFzCisgICAgLy8gZW5kZWQgYW5kIGFsbCBtZWRpYSBkYXRh
IHJlbGF0aW5nIHRvIHRoYXQgdHJhY2sgY29ycmVzcG9uZHMgdG8gcGFydHMgb2YKKyAgICAvLyB0
aGUgbWVkaWEgdGltZWxpbmUgdGhhdCBhcmUgYmVmb3JlIHRoZSBlYXJsaWVzdCBwb3NzaWJsZSBw
b3NpdGlvbiwgdGhlCisgICAgLy8gdXNlciBhZ2VudCBtYXkgcXVldWUgYSB0YXNrIHRvIHJlbW92
ZSB0aGUgdHJhY2sgZnJvbSB0aGUgYXVkaW9UcmFja3MKKyAgICAvLyBhdHRyaWJ1dGUncyBBdWRp
b1RyYWNrTGlzdCBvYmplY3Qgb3IgdGhlIHZpZGVvVHJhY2tzIGF0dHJpYnV0ZSdzCisgICAgLy8g
VmlkZW9UcmFja0xpc3Qgb2JqZWN0IGFzIGFwcHJvcHJpYXRlIGFuZCB0aGVuIGZpcmUgYSB0cnVz
dGVkIGV2ZW50CisgICAgLy8gd2l0aCB0aGUgbmFtZSByZW1vdmV0cmFjaywgdGhhdCBkb2VzIG5v
dCBidWJibGUgYW5kIGlzIG5vdCBjYW5jZWxhYmxlLAorICAgIC8vIGFuZCB0aGF0IHVzZXMgdGhl
IFRyYWNrRXZlbnQgaW50ZXJmYWNlLCB3aXRoIHRoZSB0cmFjayBhdHRyaWJ1dGUKKyAgICAvLyBp
bml0aWFsaXplZCB0byB0aGUgQXVkaW9UcmFjayBvciBWaWRlb1RyYWNrIG9iamVjdCByZXByZXNl
bnRpbmcgdGhlCisgICAgLy8gdHJhY2ssIGF0IHRoZSBtZWRpYSBlbGVtZW50J3MgYWZvcmVtZW50
aW9uZWQgQXVkaW9UcmFja0xpc3Qgb3IKKyAgICAvLyBWaWRlb1RyYWNrTGlzdCBvYmplY3QuCisK
KyAgICAvLyA0LjguMTAuMTIuMyBTb3VyY2luZyBvdXQtb2YtYmFuZCB0ZXh0IHRyYWNrcworICAg
IC8vIFdoZW4gYSB0cmFjayBlbGVtZW50J3MgcGFyZW50IGVsZW1lbnQgY2hhbmdlcyBhbmQgdGhl
IG9sZCBwYXJlbnQgd2FzIGEKKyAgICAvLyBtZWRpYSBlbGVtZW50LCB0aGVuIHRoZSB1c2VyIGFn
ZW50IG11c3QgcmVtb3ZlIHRoZSB0cmFjayBlbGVtZW50J3MKKyAgICAvLyBjb3JyZXNwb25kaW5n
IHRleHQgdHJhY2sgZnJvbSB0aGUgbWVkaWEgZWxlbWVudCdzIGxpc3Qgb2YgdGV4dCB0cmFja3Ms
CisgICAgLy8gYW5kIHRoZW4gcXVldWUgYSB0YXNrIHRvIGZpcmUgYSB0cnVzdGVkIGV2ZW50IHdp
dGggdGhlIG5hbWUgcmVtb3ZldHJhY2ssCisgICAgLy8gdGhhdCBkb2VzIG5vdCBidWJibGUgYW5k
IGlzIG5vdCBjYW5jZWxhYmxlLCBhbmQgdGhhdCB1c2VzIHRoZSBUcmFja0V2ZW50CisgICAgLy8g
aW50ZXJmYWNlLCB3aXRoIHRoZSB0cmFjayBhdHRyaWJ1dGUgaW5pdGlhbGl6ZWQgdG8gdGhlIHRl
eHQgdHJhY2sncworICAgIC8vIFRleHRUcmFjayBvYmplY3QsIGF0IHRoZSBtZWRpYSBlbGVtZW50
J3MgdGV4dFRyYWNrcyBhdHRyaWJ1dGUncworICAgIC8vIFRleHRUcmFja0xpc3Qgb2JqZWN0Lgor
CisgICAgUmVmUHRyPFRyYWNrQmFzZT4gdHJhY2tSZWYgPSB0cmFjazsKKyAgICBUcmFja0V2ZW50
SW5pdCBpbml0aWFsaXplcjsKKyAgICBpbml0aWFsaXplci50cmFjayA9IHRyYWNrUmVmOworICAg
IGluaXRpYWxpemVyLmJ1YmJsZXMgPSBmYWxzZTsKKyAgICBpbml0aWFsaXplci5jYW5jZWxhYmxl
ID0gZmFsc2U7CisKKyAgICBtX3BlbmRpbmdFdmVudHMuYXBwZW5kKFRyYWNrRXZlbnQ6OmNyZWF0
ZShldmVudE5hbWVzKCkucmVtb3ZldHJhY2tFdmVudCwgaW5pdGlhbGl6ZXIpKTsKKyAgICBpZiAo
IW1fcGVuZGluZ0V2ZW50VGltZXIuaXNBY3RpdmUoKSkKKyAgICAgICAgbV9wZW5kaW5nRXZlbnRU
aW1lci5zdGFydE9uZVNob3QoMCk7Cit9CisKK3ZvaWQgVHJhY2tMaXN0QmFzZTo6c2NoZWR1bGVD
aGFuZ2VFdmVudCgpCit7CisgICAgLy8gNC44LjEwLjYgT2Zmc2V0cyBpbnRvIHRoZSBtZWRpYSBy
ZXNvdXJjZQorICAgIC8vIFdoZW5ldmVyIGFuIGF1ZGlvIHRyYWNrIGluIGFuIEF1ZGlvVHJhY2tM
aXN0IGlzIGVuYWJsZWQgb3IgZGlzYWJsZWQsIHRoZQorICAgIC8vIHVzZXIgYWdlbnQgbXVzdCBx
dWV1ZSBhIHRhc2sgdG8gZmlyZSBhIHNpbXBsZSBldmVudCBuYW1lZCBjaGFuZ2UgYXQgdGhlCisg
ICAgLy8gQXVkaW9UcmFja0xpc3Qgb2JqZWN0LgorICAgIC8vIC4uLgorICAgIC8vIFdoZW5ldmVy
IGEgdHJhY2sgaW4gYSBWaWRlb1RyYWNrTGlzdCB0aGF0IHdhcyBwcmV2aW91c2x5IG5vdCBzZWxl
Y3RlZCBpcworICAgIC8vIHNlbGVjdGVkLCB0aGUgdXNlciBhZ2VudCBtdXN0IHF1ZXVlIGEgdGFz
ayB0byBmaXJlIGEgc2ltcGxlIGV2ZW50IG5hbWVkCisgICAgLy8gY2hhbmdlIGF0IHRoZSBWaWRl
b1RyYWNrTGlzdCBvYmplY3QuCisKKyAgICBFdmVudEluaXQgaW5pdGlhbGl6ZXI7CisgICAgaW5p
dGlhbGl6ZXIuYnViYmxlcyA9IGZhbHNlOworICAgIGluaXRpYWxpemVyLmNhbmNlbGFibGUgPSBm
YWxzZTsKKworICAgIG1fcGVuZGluZ0V2ZW50cy5hcHBlbmQoRXZlbnQ6OmNyZWF0ZShldmVudE5h
bWVzKCkuY2hhbmdlRXZlbnQsIGluaXRpYWxpemVyKSk7CisgICAgaWYgKCFtX3BlbmRpbmdFdmVu
dFRpbWVyLmlzQWN0aXZlKCkpCisgICAgICAgIG1fcGVuZGluZ0V2ZW50VGltZXIuc3RhcnRPbmVT
aG90KDApOworfQorCit2b2lkIFRyYWNrTGlzdEJhc2U6OmFzeW5jRXZlbnRUaW1lckZpcmVkKFRp
bWVyPFRyYWNrTGlzdEJhc2U+KikKK3sKKyAgICBWZWN0b3I8UmVmUHRyPEV2ZW50PiA+IHBlbmRp
bmdFdmVudHM7CisKKyAgICArK21fZGlzcGF0Y2hpbmdFdmVudHM7CisgICAgbV9wZW5kaW5nRXZl
bnRzLnN3YXAocGVuZGluZ0V2ZW50cyk7CisgICAgc2l6ZV90IGNvdW50ID0gcGVuZGluZ0V2ZW50
cy5zaXplKCk7CisgICAgZm9yIChzaXplX3QgaW5kZXggPSAwOyBpbmRleCA8IGNvdW50OyArK2lu
ZGV4KQorICAgICAgICBkaXNwYXRjaEV2ZW50KHBlbmRpbmdFdmVudHNbaW5kZXhdLnJlbGVhc2Uo
KSwgSUdOT1JFX0VYQ0VQVElPTik7CisgICAgLS1tX2Rpc3BhdGNoaW5nRXZlbnRzOworfQorCisj
ZW5kaWYKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvdHJhY2svVHJhY2tMaXN0QmFz
ZS5oIGIvU291cmNlL1dlYkNvcmUvaHRtbC90cmFjay9UcmFja0xpc3RCYXNlLmgKbmV3IGZpbGUg
bW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MC4uNDVmYTU2MmViNzRhZTQ1OTY3NjJhYjM1NTczM2NkZTQ2NTNkNWNiMgotLS0gL2Rldi9udWxs
CisrKyBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvdHJhY2svVHJhY2tMaXN0QmFzZS5oCkBAIC0wLDAg
KzEsMTAxIEBACisvKgorICogQ29weXJpZ2h0IChDKSAyMDExLCAyMDEyIEFwcGxlIEluYy4gIEFs
bCByaWdodHMgcmVzZXJ2ZWQuCisgKgorICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3Vy
Y2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CisgKiBtb2RpZmljYXRpb24sIGFy
ZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKKyAqIGFy
ZSBtZXQ6CisgKiAxLiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4g
dGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9u
cyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgorICogMi4gUmVkaXN0cmlidXRpb25zIGlu
IGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5v
dGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1l
ciBpbiB0aGUKKyAqICAgIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92
aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCisgKgorICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9W
SURFRCBCWSBBUFBMRSBDT01QVVRFUiwgSU5DLiBgYEFTIElTJycgQU5EIEFOWQorICogRVhQUkVT
UyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBU
SEUKKyAqIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1Mg
Rk9SIEEgUEFSVElDVUxBUgorICogUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gIElOIE5PIEVWRU5U
IFNIQUxMIEFQUExFIENPTVBVVEVSLCBJTkMuIE9SCisgKiBDT05UUklCVVRPUlMgQkUgTElBQkxF
IEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwKKyAqIEVYRU1Q
TEFSWSwgT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRF
RCBUTywKKyAqIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExP
U1MgT0YgVVNFLCBEQVRBLCBPUgorICogUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9O
KSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZIFRIRU9SWQorICogT0YgTElBQklMSVRZLCBXSEVU
SEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUCisgKiAoSU5DTFVESU5H
IE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBV
U0UKKyAqIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJ
VFkgT0YgU1VDSCBEQU1BR0UuIAorICovCisKKyNpZm5kZWYgVHJhY2tMaXN0QmFzZV9oCisjZGVm
aW5lIFRyYWNrTGlzdEJhc2VfaAorCisjaWYgRU5BQkxFKFZJREVPX1RSQUNLKQorCisjaW5jbHVk
ZSAiRXZlbnRMaXN0ZW5lci5oIgorI2luY2x1ZGUgIkV2ZW50VGFyZ2V0LmgiCisjaW5jbHVkZSAi
VGltZXIuaCIKKyNpbmNsdWRlIDx3dGYvUGFzc1JlZlB0ci5oPgorI2luY2x1ZGUgPHd0Zi9SZWZD
b3VudGVkLmg+CisjaW5jbHVkZSA8d3RmL1ZlY3Rvci5oPgorCituYW1lc3BhY2UgV2ViQ29yZSB7
CisKK2NsYXNzIEhUTUxNZWRpYUVsZW1lbnQ7CitjbGFzcyBUcmFja0Jhc2U7CisKK2NsYXNzIFRy
YWNrTGlzdEJhc2UgOiBwdWJsaWMgUmVmQ291bnRlZDxUcmFja0xpc3RCYXNlPiwgcHVibGljIEV2
ZW50VGFyZ2V0IHsKK3B1YmxpYzoKKyAgICB+VHJhY2tMaXN0QmFzZSgpOworCisgICAgdmlydHVh
bCB1bnNpZ25lZCBsZW5ndGgoKSBjb25zdDsKKyAgICB2aXJ0dWFsIGludCBnZXRUcmFja0luZGV4
KFRyYWNrQmFzZSopOworICAgIHZpcnR1YWwgYm9vbCBjb250YWlucyhUcmFja0Jhc2UqKSBjb25z
dDsKKyAgICB2aXJ0dWFsIHZvaWQgcmVtb3ZlKFRyYWNrQmFzZSopOworCisgICAgLy8gRXZlbnRU
YXJnZXQKKyAgICB2aXJ0dWFsIGNvbnN0IEF0b21pY1N0cmluZyYgaW50ZXJmYWNlTmFtZSgpIGNv
bnN0ID0gMDsKKyAgICB1c2luZyBSZWZDb3VudGVkPFRyYWNrTGlzdEJhc2U+OjpyZWY7CisgICAg
dXNpbmcgUmVmQ291bnRlZDxUcmFja0xpc3RCYXNlPjo6ZGVyZWY7CisgICAgdmlydHVhbCBTY3Jp
cHRFeGVjdXRpb25Db250ZXh0KiBzY3JpcHRFeGVjdXRpb25Db250ZXh0KCkgY29uc3QgeyByZXR1
cm4gbV9jb250ZXh0OyB9CisKKyAgICBERUZJTkVfQVRUUklCVVRFX0VWRU5UX0xJU1RFTkVSKGFk
ZHRyYWNrKTsKKyAgICBERUZJTkVfQVRUUklCVVRFX0VWRU5UX0xJU1RFTkVSKGNoYW5nZSk7Cisg
ICAgREVGSU5FX0FUVFJJQlVURV9FVkVOVF9MSVNURU5FUihyZW1vdmV0cmFjayk7CisKKyAgICB2
b2lkIGNsZWFyT3duZXIoKSB7IG1fb3duZXIgPSAwOyB9CisgICAgSFRNTE1lZGlhRWxlbWVudCog
b3duZXIoKSBjb25zdCB7IHJldHVybiBtX293bmVyOyB9CisKKyAgICBib29sIGlzRmlyaW5nRXZl
bnRMaXN0ZW5lcnMoKSB7IHJldHVybiBtX2Rpc3BhdGNoaW5nRXZlbnRzOyB9CisKKyAgICAvLyBO
ZWVkcyB0byBiZSBwdWJsaWMgc28gdHJhY2tzIGNhbiBjYWxsIGl0CisgICAgdm9pZCBzY2hlZHVs
ZUNoYW5nZUV2ZW50KCk7CisKK3Byb3RlY3RlZDoKKyAgICBUcmFja0xpc3RCYXNlKEhUTUxNZWRp
YUVsZW1lbnQqLCBTY3JpcHRFeGVjdXRpb25Db250ZXh0Kik7CisKKyAgICB2b2lkIHNjaGVkdWxl
QWRkVHJhY2tFdmVudChQYXNzUmVmUHRyPFRyYWNrQmFzZT4pOworICAgIHZvaWQgc2NoZWR1bGVS
ZW1vdmVUcmFja0V2ZW50KFBhc3NSZWZQdHI8VHJhY2tCYXNlPik7CisKKyAgICBWZWN0b3I8UmVm
UHRyPFRyYWNrQmFzZT4gPiBtX2luYmFuZFRyYWNrczsKKworcHJpdmF0ZToKKyAgICAvLyBFdmVu
dFRhcmdldAorICAgIHZpcnR1YWwgdm9pZCByZWZFdmVudFRhcmdldCgpIHsgcmVmKCk7IH0KKyAg
ICB2aXJ0dWFsIHZvaWQgZGVyZWZFdmVudFRhcmdldCgpIHsgZGVyZWYoKTsgfQorICAgIHZpcnR1
YWwgRXZlbnRUYXJnZXREYXRhKiBldmVudFRhcmdldERhdGEoKSB7IHJldHVybiAmbV9ldmVudFRh
cmdldERhdGE7IH0KKyAgICB2aXJ0dWFsIEV2ZW50VGFyZ2V0RGF0YSogZW5zdXJlRXZlbnRUYXJn
ZXREYXRhKCkgeyByZXR1cm4gJm1fZXZlbnRUYXJnZXREYXRhOyB9CisKKyAgICB2b2lkIGFzeW5j
RXZlbnRUaW1lckZpcmVkKFRpbWVyPFRyYWNrTGlzdEJhc2U+Kik7CisKKyAgICBTY3JpcHRFeGVj
dXRpb25Db250ZXh0KiBtX2NvbnRleHQ7CisgICAgSFRNTE1lZGlhRWxlbWVudCogbV9vd25lcjsK
KworICAgIFZlY3RvcjxSZWZQdHI8RXZlbnQ+ID4gbV9wZW5kaW5nRXZlbnRzOworICAgIFRpbWVy
PFRyYWNrTGlzdEJhc2U+IG1fcGVuZGluZ0V2ZW50VGltZXI7CisKKyAgICBFdmVudFRhcmdldERh
dGEgbV9ldmVudFRhcmdldERhdGE7CisKKyAgICBpbnQgbV9kaXNwYXRjaGluZ0V2ZW50czsKK307
CisKK30gLy8gbmFtZXNwYWNlIFdlYkNvcmUKKworI2VuZGlmCisjZW5kaWYKZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL01lZGlhUGxheWVyLmNwcCBiL1NvdXJj
ZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL01lZGlhUGxheWVyLmNwcAppbmRleCAxYmYwNjE4
NDE3Yzg3NjQzNzZkNDA4MjEzNDg1ZWUzYjVjMTQ5ZjY0Li5mZmM1MzQ4NTM0ZDMyY2Y3OTNkMDFl
MzY0ZTEyMjkxOWVmZDM3NjFiIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9n
cmFwaGljcy9NZWRpYVBsYXllci5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3Jh
cGhpY3MvTWVkaWFQbGF5ZXIuY3BwCkBAIC0xMTAyLDcgKzExMDIsNyBAQCB2b2lkIE1lZGlhUGxh
eWVyOjphZGRUZXh0VHJhY2soUGFzc1JlZlB0cjxJbmJhbmRUZXh0VHJhY2tQcml2YXRlPiB0cmFj
aykKICAgICBpZiAoIW1fbWVkaWFQbGF5ZXJDbGllbnQpCiAgICAgICAgIHJldHVybjsKIAotICAg
IG1fbWVkaWFQbGF5ZXJDbGllbnQtPm1lZGlhUGxheWVyRGlkQWRkVHJhY2sodHJhY2spOworICAg
IG1fbWVkaWFQbGF5ZXJDbGllbnQtPm1lZGlhUGxheWVyRGlkQWRkVGV4dFRyYWNrKHRyYWNrKTsK
IH0KIAogdm9pZCBNZWRpYVBsYXllcjo6cmVtb3ZlVGV4dFRyYWNrKFBhc3NSZWZQdHI8SW5iYW5k
VGV4dFRyYWNrUHJpdmF0ZT4gdHJhY2spCkBAIC0xMTEwLDcgKzExMTAsNyBAQCB2b2lkIE1lZGlh
UGxheWVyOjpyZW1vdmVUZXh0VHJhY2soUGFzc1JlZlB0cjxJbmJhbmRUZXh0VHJhY2tQcml2YXRl
PiB0cmFjaykKICAgICBpZiAoIW1fbWVkaWFQbGF5ZXJDbGllbnQpCiAgICAgICAgIHJldHVybjsK
IAotICAgIG1fbWVkaWFQbGF5ZXJDbGllbnQtPm1lZGlhUGxheWVyRGlkUmVtb3ZlVHJhY2sodHJh
Y2spOworICAgIG1fbWVkaWFQbGF5ZXJDbGllbnQtPm1lZGlhUGxheWVyRGlkUmVtb3ZlVGV4dFRy
YWNrKHRyYWNrKTsKIH0KIAogYm9vbCBNZWRpYVBsYXllcjo6cmVxdWlyZXNUZXh0VHJhY2tSZXBy
ZXNlbnRhdGlvbigpIGNvbnN0CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9n
cmFwaGljcy9NZWRpYVBsYXllci5oIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3Mv
TWVkaWFQbGF5ZXIuaAppbmRleCBlMTdhZDZjOTAwODNlZTRiZDc2MjU5M2RhM2Q4MWY0NTUxNmFh
ZmM5Li5hODExMTE4ODVjYjJlNDg0YmNhMzJjODA5MDg2OTg5MDUwYjA0MzRjIDEwMDY0NAotLS0g
YS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9NZWRpYVBsYXllci5oCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL01lZGlhUGxheWVyLmgKQEAgLTIxOCw4ICsy
MTgsOCBAQCBwdWJsaWM6CiAgICAgdmlydHVhbCBDYWNoZWRSZXNvdXJjZUxvYWRlciogbWVkaWFQ
bGF5ZXJDYWNoZWRSZXNvdXJjZUxvYWRlcigpIHsgcmV0dXJuIDA7IH0KIAogI2lmIEVOQUJMRShW
SURFT19UUkFDSykKLSAgICB2aXJ0dWFsIHZvaWQgbWVkaWFQbGF5ZXJEaWRBZGRUcmFjayhQYXNz
UmVmUHRyPEluYmFuZFRleHRUcmFja1ByaXZhdGU+KSB7IH0KLSAgICB2aXJ0dWFsIHZvaWQgbWVk
aWFQbGF5ZXJEaWRSZW1vdmVUcmFjayhQYXNzUmVmUHRyPEluYmFuZFRleHRUcmFja1ByaXZhdGU+
KSB7IH0KKyAgICB2aXJ0dWFsIHZvaWQgbWVkaWFQbGF5ZXJEaWRBZGRUZXh0VHJhY2soUGFzc1Jl
ZlB0cjxJbmJhbmRUZXh0VHJhY2tQcml2YXRlPikgeyB9CisgICAgdmlydHVhbCB2b2lkIG1lZGlh
UGxheWVyRGlkUmVtb3ZlVGV4dFRyYWNrKFBhc3NSZWZQdHI8SW5iYW5kVGV4dFRyYWNrUHJpdmF0
ZT4pIHsgfQogCiAgICAgdmlydHVhbCB2b2lkIHRleHRUcmFja1JlcHJlc2VudGF0aW9uQm91bmRz
Q2hhbmdlZChjb25zdCBJbnRSZWN0JikgeyB9CiAgICAgdmlydHVhbCB2b2lkIHBhaW50VGV4dFRy
YWNrUmVwcmVzZW50YXRpb24oR3JhcGhpY3NDb250ZXh0KiwgY29uc3QgSW50UmVjdCYpIHsgfQo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>197316</attachid>
            <date>2013-04-10 11:06:13 -0700</date>
            <delta_ts>2013-04-10 18:24:01 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-114330-20130410120554.patch</filename>
            <type>text/plain</type>
            <size>58406</size>
            <attacher name="Brendan Long">b.long</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTQ4MDc0CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggNzU5NmU1YzJiOGIwODFl
NWFmMzk3OThlODdiMWIyYzg0MGRmNDMxYS4uN2E5ZjQwMzgwNjMzMTI4MDlhNGFkYjYwZWU4MGQx
YTEyNzRmMjdjMCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDEwMiBAQAorMjAxMy0wNC0wOSAgQnJl
bmRhbiBMb25nICA8Yi5sb25nQGNhYmxlbGFicy5jb20+CisKKyAgICAgICAgUmVmYWN0b3IgVGV4
dFRyYWNrIGFuZCBUZXh0VHJhY2tMaXN0IHRvIG1ha2UgaXQgZWFzaWVyIHRvIGFkZCBhdWRpbyBh
bmQgdmlkZW8gdHJhY2tzCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVn
LmNnaT9pZD0xMTQzMzAKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKwor
ICAgICAgICBObyBuZXcgdGVzdHMgYmVjYXVzZSB0aGlzIGRvZXNuJ3QgYWRkIG5ldyBmdW5jdGlv
bmFsaXR5LgorCisgICAgICAgICogQ01ha2VMaXN0cy50eHQ6CisgICAgICAgICogVGFyZ2V0LnBy
aToKKyAgICAgICAgKiBodG1sL0hUTUxNZWRpYUVsZW1lbnQuY3BwOgorICAgICAgICAoV2ViQ29y
ZTo6SFRNTE1lZGlhRWxlbWVudDo6bWVkaWFQbGF5ZXJEaWRBZGRUZXh0VHJhY2spOgorICAgICAg
ICAoV2ViQ29yZTo6SFRNTE1lZGlhRWxlbWVudDo6bWVkaWFQbGF5ZXJEaWRSZW1vdmVUZXh0VHJh
Y2spOgorICAgICAgICAoV2ViQ29yZTo6SFRNTE1lZGlhRWxlbWVudDo6YWRkVGV4dFRyYWNrKToK
KyAgICAgICAgKFdlYkNvcmU6OkhUTUxNZWRpYUVsZW1lbnQ6OnJlbW92ZVRleHRUcmFjayk6Cisg
ICAgICAgIChXZWJDb3JlOjpIVE1MTWVkaWFFbGVtZW50OjpyZW1vdmVBbGxJbmJhbmRUcmFja3Mp
OgorICAgICAgICAoV2ViQ29yZTo6SFRNTE1lZGlhRWxlbWVudDo6ZGlkQWRkVGV4dFRyYWNrKToK
KyAgICAgICAgKFdlYkNvcmU6OkhUTUxNZWRpYUVsZW1lbnQ6OmRpZFJlbW92ZVRleHRUcmFjayk6
CisgICAgICAgICogaHRtbC9IVE1MTWVkaWFFbGVtZW50Lmg6CisgICAgICAgIChXZWJDb3JlKToK
KyAgICAgICAgKEhUTUxNZWRpYUVsZW1lbnQpOgorICAgICAgICAqIGh0bWwvSFRNTFRyYWNrRWxl
bWVudC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpIVE1MVHJhY2tFbGVtZW50OjppbnNlcnRlZElu
dG8pOgorICAgICAgICAoV2ViQ29yZTo6SFRNTFRyYWNrRWxlbWVudDo6cmVtb3ZlZEZyb20pOgor
ICAgICAgICAqIGh0bWwvdHJhY2svVGV4dFRyYWNrLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlRl
eHRUcmFjazo6VGV4dFRyYWNrKToKKyAgICAgICAgKFdlYkNvcmU6OlRleHRUcmFjazo6aW50ZXJm
YWNlTmFtZSk6CisgICAgICAgIChXZWJDb3JlKToKKyAgICAgICAgKFdlYkNvcmU6OlRleHRUcmFj
azo6c2NyaXB0RXhlY3V0aW9uQ29udGV4dCk6CisgICAgICAgIChXZWJDb3JlOjpUZXh0VHJhY2s6
OmV2ZW50VGFyZ2V0RGF0YSk6CisgICAgICAgIChXZWJDb3JlOjpUZXh0VHJhY2s6OmVuc3VyZUV2
ZW50VGFyZ2V0RGF0YSk6CisgICAgICAgIChXZWJDb3JlOjpUZXh0VHJhY2s6OmlzVmFsaWRLaW5k
KToKKyAgICAgICAgKFdlYkNvcmU6OlRleHRUcmFjazo6c2V0S2luZCk6CisgICAgICAgIChXZWJD
b3JlOjpUZXh0VHJhY2s6OmlzUmVuZGVyZWQpOgorICAgICAgICAoV2ViQ29yZTo6VGV4dFRyYWNr
OjpwbGF0Zm9ybVRleHRUcmFjayk6CisgICAgICAgIChXZWJDb3JlOjpUZXh0VHJhY2s6OmlzTWFp
blByb2dyYW1Db250ZW50KToKKyAgICAgICAgKiBodG1sL3RyYWNrL1RleHRUcmFjay5oOgorICAg
ICAgICAoV2ViQ29yZSk6CisgICAgICAgIChUZXh0VHJhY2spOgorICAgICAgICAoV2ViQ29yZTo6
VGV4dFRyYWNrOjpkZWZhdWx0S2luZEtleXdvcmQpOgorICAgICAgICAoV2ViQ29yZTo6VGV4dFRy
YWNrOjpjbGllbnQpOgorICAgICAgICAoV2ViQ29yZTo6VGV4dFRyYWNrOjpyZWZFdmVudFRhcmdl
dCk6CisgICAgICAgIChXZWJDb3JlOjpUZXh0VHJhY2s6OmRlcmVmRXZlbnRUYXJnZXQpOgorICAg
ICAgICAqIGh0bWwvdHJhY2svVGV4dFRyYWNrTGlzdC5jcHA6CisgICAgICAgIChUZXh0VHJhY2tM
aXN0OjpUZXh0VHJhY2tMaXN0KToKKyAgICAgICAgKFRleHRUcmFja0xpc3Q6OmdldFRyYWNrSW5k
ZXgpOgorICAgICAgICAoVGV4dFRyYWNrTGlzdDo6Z2V0VHJhY2tJbmRleFJlbGF0aXZlVG9SZW5k
ZXJlZFRyYWNrcyk6CisgICAgICAgIChUZXh0VHJhY2tMaXN0OjppdGVtKToKKyAgICAgICAgKFRl
eHRUcmFja0xpc3Q6OmdldEluYmFuZFRyYWNrKToKKyAgICAgICAgKFRleHRUcmFja0xpc3Q6Omlu
dmFsaWRhdGVUcmFja0luZGV4ZXNBZnRlclRyYWNrKToKKyAgICAgICAgKFRleHRUcmFja0xpc3Q6
OmFwcGVuZCk6CisgICAgICAgIChUZXh0VHJhY2tMaXN0OjpyZW1vdmUpOgorICAgICAgICAoVGV4
dFRyYWNrTGlzdDo6Y29udGFpbnMpOgorICAgICAgICAqIGh0bWwvdHJhY2svVGV4dFRyYWNrTGlz
dC5oOgorICAgICAgICAoV2ViQ29yZSk6CisgICAgICAgIChUZXh0VHJhY2tMaXN0KToKKyAgICAg
ICAgKiBodG1sL3RyYWNrL1RyYWNrQmFzZS5jcHA6CisgICAgICAgIChXZWJDb3JlOjpUcmFja0Jh
c2U6OlRyYWNrQmFzZSk6CisgICAgICAgIChXZWJDb3JlOjpUcmFja0Jhc2U6OnNldEtpbmQpOgor
ICAgICAgICAqIGh0bWwvdHJhY2svVHJhY2tCYXNlLmg6CisgICAgICAgIChXZWJDb3JlKToKKyAg
ICAgICAgKFdlYkNvcmU6OlRyYWNrQmFzZTo6c2V0TWVkaWFFbGVtZW50KToKKyAgICAgICAgKFdl
YkNvcmU6OlRyYWNrQmFzZTo6bWVkaWFFbGVtZW50KToKKyAgICAgICAgKFRyYWNrQmFzZSk6Cisg
ICAgICAgIChXZWJDb3JlOjpUcmFja0Jhc2U6OmtpbmQpOgorICAgICAgICAoV2ViQ29yZTo6VHJh
Y2tCYXNlOjpsYWJlbCk6CisgICAgICAgIChXZWJDb3JlOjpUcmFja0Jhc2U6OnNldExhYmVsKToK
KyAgICAgICAgKFdlYkNvcmU6OlRyYWNrQmFzZTo6bGFuZ3VhZ2UpOgorICAgICAgICAoV2ViQ29y
ZTo6VHJhY2tCYXNlOjpzZXRMYW5ndWFnZSk6CisgICAgICAgICogaHRtbC90cmFjay9UcmFja0xp
c3RCYXNlLmNwcDogQWRkZWQuCisgICAgICAgIChUcmFja0xpc3RCYXNlOjpUcmFja0xpc3RCYXNl
KToKKyAgICAgICAgKFRyYWNrTGlzdEJhc2U6On5UcmFja0xpc3RCYXNlKToKKyAgICAgICAgKFRy
YWNrTGlzdEJhc2U6Omxlbmd0aCk6CisgICAgICAgIChUcmFja0xpc3RCYXNlOjpnZXRUcmFja0lu
ZGV4KToKKyAgICAgICAgKFRyYWNrTGlzdEJhc2U6OnJlbW92ZSk6CisgICAgICAgIChUcmFja0xp
c3RCYXNlOjpjb250YWlucyk6CisgICAgICAgIChUcmFja0xpc3RCYXNlOjpzY2hlZHVsZUFkZFRy
YWNrRXZlbnQpOgorICAgICAgICAoVHJhY2tMaXN0QmFzZTo6c2NoZWR1bGVSZW1vdmVUcmFja0V2
ZW50KToKKyAgICAgICAgKFRyYWNrTGlzdEJhc2U6OnNjaGVkdWxlQ2hhbmdlRXZlbnQpOgorICAg
ICAgICAoVHJhY2tMaXN0QmFzZTo6YXN5bmNFdmVudFRpbWVyRmlyZWQpOgorICAgICAgICAqIGh0
bWwvdHJhY2svVHJhY2tMaXN0QmFzZS5oOiBDb3BpZWQgZnJvbSBTb3VyY2UvV2ViQ29yZS9odG1s
L3RyYWNrL1RleHRUcmFja0xpc3QuaC4KKyAgICAgICAgKFdlYkNvcmUpOgorICAgICAgICAoVHJh
Y2tMaXN0QmFzZSk6CisgICAgICAgIChXZWJDb3JlOjpUcmFja0xpc3RCYXNlOjpzY3JpcHRFeGVj
dXRpb25Db250ZXh0KToKKyAgICAgICAgKFdlYkNvcmU6OlRyYWNrTGlzdEJhc2U6OmNsZWFyT3du
ZXIpOgorICAgICAgICAoV2ViQ29yZTo6VHJhY2tMaXN0QmFzZTo6b3duZXIpOgorICAgICAgICAo
V2ViQ29yZTo6VHJhY2tMaXN0QmFzZTo6aXNGaXJpbmdFdmVudExpc3RlbmVycyk6CisgICAgICAg
IChXZWJDb3JlOjpUcmFja0xpc3RCYXNlOjpyZWZFdmVudFRhcmdldCk6CisgICAgICAgIChXZWJD
b3JlOjpUcmFja0xpc3RCYXNlOjpkZXJlZkV2ZW50VGFyZ2V0KToKKyAgICAgICAgKFdlYkNvcmU6
OlRyYWNrTGlzdEJhc2U6OmV2ZW50VGFyZ2V0RGF0YSk6CisgICAgICAgIChXZWJDb3JlOjpUcmFj
a0xpc3RCYXNlOjplbnN1cmVFdmVudFRhcmdldERhdGEpOgorICAgICAgICAqIHBsYXRmb3JtL2dy
YXBoaWNzL01lZGlhUGxheWVyLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6Ok1lZGlhUGxheWVyOjph
ZGRUZXh0VHJhY2spOgorICAgICAgICAoV2ViQ29yZTo6TWVkaWFQbGF5ZXI6OnJlbW92ZVRleHRU
cmFjayk6CisgICAgICAgICogcGxhdGZvcm0vZ3JhcGhpY3MvTWVkaWFQbGF5ZXIuaDoKKyAgICAg
ICAgKFdlYkNvcmU6Ok1lZGlhUGxheWVyQ2xpZW50OjptZWRpYVBsYXllckRpZEFkZFRleHRUcmFj
ayk6CisgICAgICAgIChXZWJDb3JlOjpNZWRpYVBsYXllckNsaWVudDo6bWVkaWFQbGF5ZXJEaWRS
ZW1vdmVUZXh0VHJhY2spOgorCiAyMDEzLTA0LTA5ICBCZW5qYW1pbiBQb3VsYWluICA8YnBvdWxh
aW5AYXBwbGUuY29tPgogCiAgICAgICAgIFJlbW92ZSBjaHJvbWl1bSBleGNlcHRpb25zIGZyb20g
V2ViQ29yZSdzIGdpdGF0dHJpYnV0ZXMKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL0NNYWtl
TGlzdHMudHh0IGIvU291cmNlL1dlYkNvcmUvQ01ha2VMaXN0cy50eHQKaW5kZXggNDYxODMyNWEz
Y2ZhY2VhYWQ2ZWFlNzczMGQ2ZWU3MDViYjkwODRhNS4uMTExMDE3YTFjMGY2NGRhY2JjODYyYjlm
YTY5NmY3MzRiOGFkZjdiMyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ01ha2VMaXN0cy50
eHQKKysrIGIvU291cmNlL1dlYkNvcmUvQ01ha2VMaXN0cy50eHQKQEAgLTU0OSwxMiArNTQ5LDYg
QEAgc2V0KFdlYkNvcmVfSURMX0ZJTEVTCiAgICAgaHRtbC9zaGFkb3cvSFRNTENvbnRlbnRFbGVt
ZW50LmlkbAogICAgIGh0bWwvc2hhZG93L0hUTUxTaGFkb3dFbGVtZW50LmlkbAogCi0gICAgaHRt
bC90cmFjay9UZXh0VHJhY2suaWRsCi0gICAgaHRtbC90cmFjay9UZXh0VHJhY2tDdWUuaWRsCi0g
ICAgaHRtbC90cmFjay9UZXh0VHJhY2tDdWVMaXN0LmlkbAotICAgIGh0bWwvdHJhY2svVGV4dFRy
YWNrTGlzdC5pZGwKLSAgICBodG1sL3RyYWNrL1RyYWNrRXZlbnQuaWRsCi0KICAgICBpbnNwZWN0
b3IvSW5qZWN0ZWRTY3JpcHRIb3N0LmlkbAogICAgIGluc3BlY3Rvci9JbnNwZWN0b3JGcm9udGVu
ZEhvc3QuaWRsCiAgICAgaW5zcGVjdG9yL0phdmFTY3JpcHRDYWxsRnJhbWUuaWRsCkBAIC0xNTkz
LDE5ICsxNTg3LDYgQEAgc2V0KFdlYkNvcmVfU09VUkNFUwogICAgIGh0bWwvc2hhZG93L1NwaW5C
dXR0b25FbGVtZW50LmNwcAogICAgIGh0bWwvc2hhZG93L1RleHRDb250cm9sSW5uZXJFbGVtZW50
cy5jcHAKIAotICAgIGh0bWwvdHJhY2svSW5iYW5kVGV4dFRyYWNrLmNwcAotICAgIGh0bWwvdHJh
Y2svTG9hZGFibGVUZXh0VHJhY2suY3BwCi0gICAgaHRtbC90cmFjay9UZXh0VHJhY2suY3BwCi0g
ICAgaHRtbC90cmFjay9UZXh0VHJhY2tDdWUuY3BwCi0gICAgaHRtbC90cmFjay9UZXh0VHJhY2tD
dWVHZW5lcmljLmNwcAotICAgIGh0bWwvdHJhY2svVGV4dFRyYWNrQ3VlTGlzdC5jcHAKLSAgICBo
dG1sL3RyYWNrL1RleHRUcmFja0xpc3QuY3BwCi0gICAgaHRtbC90cmFjay9UcmFja0Jhc2UuY3Bw
Ci0gICAgaHRtbC90cmFjay9UcmFja0V2ZW50LmNwcAotICAgIGh0bWwvdHJhY2svV2ViVlRURWxl
bWVudC5jcHAKLSAgICBodG1sL3RyYWNrL1dlYlZUVFBhcnNlci5jcHAKLSAgICBodG1sL3RyYWNr
L1dlYlZUVFRva2VuaXplci5jcHAKLQogICAgIGluc3BlY3Rvci9Db25zb2xlTWVzc2FnZS5jcHAK
ICAgICBpbnNwZWN0b3IvQ29udGVudFNlYXJjaFV0aWxzLmNwcAogICAgIGluc3BlY3Rvci9ET01F
ZGl0b3IuY3BwCkBAIC0xNzM4LDcgKzE3MTksNiBAQCBzZXQoV2ViQ29yZV9TT1VSQ0VTCiAgICAg
bG9hZGVyL2NhY2hlL0NhY2hlZFNjcmlwdC5jcHAKICAgICBsb2FkZXIvY2FjaGUvQ2FjaGVkU2hh
ZGVyLmNwcAogICAgIGxvYWRlci9jYWNoZS9DYWNoZWRTVkdEb2N1bWVudC5jcHAKLSAgICBsb2Fk
ZXIvY2FjaGUvQ2FjaGVkVGV4dFRyYWNrLmNwcAogICAgIGxvYWRlci9jYWNoZS9DYWNoZWRYU0xT
dHlsZVNoZWV0LmNwcAogICAgIGxvYWRlci9jYWNoZS9NZW1vcnlDYWNoZS5jcHAKIApAQCAtMjY5
Niw3ICsyNjc2LDMxIEBAIGlmIChFTkFCTEVfV0VCR0wpCiBlbmRpZiAoKQogCiBpZiAoRU5BQkxF
X1ZJREVPX1RSQUNLKQorICAgIGxpc3QoQVBQRU5EIFdlYkNvcmVfSURMX0ZJTEVTCisgICAgICAg
IGh0bWwvdHJhY2svVGV4dFRyYWNrLmlkbAorICAgICAgICBodG1sL3RyYWNrL1RleHRUcmFja0N1
ZS5pZGwKKyAgICAgICAgaHRtbC90cmFjay9UZXh0VHJhY2tDdWVMaXN0LmlkbAorICAgICAgICBo
dG1sL3RyYWNrL1RleHRUcmFja0xpc3QuaWRsCisgICAgICAgIGh0bWwvdHJhY2svVHJhY2tFdmVu
dC5pZGwKKyAgICApCisKICAgICBsaXN0KEFQUEVORCBXZWJDb3JlX1NPVVJDRVMKKyAgICAgICAg
aHRtbC90cmFjay9JbmJhbmRUZXh0VHJhY2suY3BwCisgICAgICAgIGh0bWwvdHJhY2svTG9hZGFi
bGVUZXh0VHJhY2suY3BwCisgICAgICAgIGh0bWwvdHJhY2svVGV4dFRyYWNrLmNwcAorICAgICAg
ICBodG1sL3RyYWNrL1RleHRUcmFja0N1ZS5jcHAKKyAgICAgICAgaHRtbC90cmFjay9UZXh0VHJh
Y2tDdWVHZW5lcmljLmNwcAorICAgICAgICBodG1sL3RyYWNrL1RleHRUcmFja0N1ZUxpc3QuY3Bw
CisgICAgICAgIGh0bWwvdHJhY2svVGV4dFRyYWNrTGlzdC5jcHAKKyAgICAgICAgaHRtbC90cmFj
ay9UcmFja0Jhc2UuY3BwCisgICAgICAgIGh0bWwvdHJhY2svVHJhY2tFdmVudC5jcHAKKyAgICAg
ICAgaHRtbC90cmFjay9UcmFja0xpc3RCYXNlLmNwcAorICAgICAgICBodG1sL3RyYWNrL1dlYlZU
VEVsZW1lbnQuY3BwCisgICAgICAgIGh0bWwvdHJhY2svV2ViVlRUUGFyc2VyLmNwcAorICAgICAg
ICBodG1sL3RyYWNrL1dlYlZUVFRva2VuaXplci5jcHAKKworICAgICAgICBsb2FkZXIvY2FjaGUv
Q2FjaGVkVGV4dFRyYWNrLmNwcAorCiAgICAgICAgIHBsYXRmb3JtL2dyYXBoaWNzL1RleHRUcmFj
a1JlcHJlc2VudGF0aW9uLmNwcAogICAgICkKIGVuZGlmICgpCmRpZmYgLS1naXQgYS9Tb3VyY2Uv
V2ViQ29yZS9UYXJnZXQucHJpIGIvU291cmNlL1dlYkNvcmUvVGFyZ2V0LnByaQppbmRleCBjOGE0
YTk0ZTU4Zjc2NTQ1MmRiZTA2NzYwNDgwNWE3M2Y2MGVlNzI4Li44NWU4NzYyZGE2ODNjMTU5MDI2
ZTRhMjhhMTdjYTliMmI0ZWE2NTBkIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9UYXJnZXQu
cHJpCisrKyBiL1NvdXJjZS9XZWJDb3JlL1RhcmdldC5wcmkKQEAgLTM5NzcsNiArMzk3Nyw3IEBA
IGVuYWJsZT8oVklERU9fVFJBQ0spIHsKICAgICAgICAgaHRtbC90cmFjay9UZXh0VHJhY2tMaXN0
LmggXAogICAgICAgICBodG1sL3RyYWNrL1RyYWNrQmFzZS5oIFwKICAgICAgICAgaHRtbC90cmFj
ay9UcmFja0V2ZW50LmggXAorICAgICAgICBodG1sL3RyYWNrL1RyYWNrTGlzdEJhc2UuaCBcCiAg
ICAgICAgIGh0bWwvdHJhY2svV2ViVlRUUGFyc2VyLmggXAogICAgICAgICBodG1sL3RyYWNrL1dl
YlZUVFRva2VuLmggXAogICAgICAgICBodG1sL3RyYWNrL1dlYlZUVFRva2VuaXplci5oIFwKQEAg
LTQwMDAsNiArNDAwMSw3IEBAIGVuYWJsZT8oVklERU9fVFJBQ0spIHsKICAgICAgICAgaHRtbC90
cmFjay9UZXh0VHJhY2tMaXN0LmNwcCBcCiAgICAgICAgIGh0bWwvdHJhY2svVHJhY2tCYXNlLmNw
cCBcCiAgICAgICAgIGh0bWwvdHJhY2svVHJhY2tFdmVudC5jcHAgXAorICAgICAgICBodG1sL3Ry
YWNrL1RyYWNrTGlzdEJhc2UuY3BwIFwKICAgICAgICAgaHRtbC90cmFjay9XZWJWVFRFbGVtZW50
LmNwcCBcCiAgICAgICAgIGh0bWwvdHJhY2svV2ViVlRUUGFyc2VyLmNwcCBcCiAgICAgICAgIGh0
bWwvdHJhY2svV2ViVlRUVG9rZW5pemVyLmNwcCBcCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29y
ZS9XZWJDb3JlLnZjcHJvai9XZWJDb3JlLnZjcHJvaiBiL1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUu
dmNwcm9qL1dlYkNvcmUudmNwcm9qCmluZGV4IDRhMmI4YWFlY2VlNTEyNzg0ZjI2Y2JiMWUyNWQz
MDQxZGI5OWVlOGYuLmQwOTVjYWUxNDBmNTFiNzVmNzJkZmQwOGZhMzU5MmFhYzRlZjlhMDUgMTAw
NzU1Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUudmNwcm9qL1dlYkNvcmUudmNwcm9qCisr
KyBiL1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUudmNwcm9qL1dlYkNvcmUudmNwcm9qCkBAIC0zMDIy
Miw2ICszMDIyMiwxMCBAQAogCQkJCQk+CiAJCQkJPC9GaWxlPgogCQkJCTxGaWxlCisJCQkJCVJl
bGF0aXZlUGF0aD0iLi5ccGxhdGZvcm1cZ3JhcGhpY3NcSW5iYW5kVGV4dFRyYWNrUHJpdmF0ZS5o
IgorCQkJCQk+CisJCQkJPC9GaWxlPgorCQkJCTxGaWxlCiAJCQkJCVJlbGF0aXZlUGF0aD0iLi5c
cGxhdGZvcm1cZ3JhcGhpY3NcSW50UG9pbnQuaCIKIAkJCQkJPgogCQkJCTwvRmlsZT4KQEAgLTY1
NzQ2LDEwICs2NTc1MCw2IEBACiAJCQkJCT4KIAkJCQk8L0ZpbGU+CiAJCQkJPEZpbGUKLQkJCQkJ
UmVsYXRpdmVQYXRoPSIuLlxodG1sXHRyYWNrXEluYmFuZFRleHRUcmFja1ByaXZhdGUuaCIKLQkJ
CQkJPgotCQkJCTwvRmlsZT4KLQkJCQk8RmlsZQogCQkJCQlSZWxhdGl2ZVBhdGg9Ii4uXGh0bWxc
dHJhY2tcTG9hZGFibGVUZXh0VHJhY2suY3BwIgogCQkJCQk+CiAJCQkJPC9GaWxlPgpAQCAtNjU4
MTQsNiArNjU4MTQsMTQgQEAKIAkJCQkJPgogCQkJCTwvRmlsZT4KIAkJCQk8RmlsZQorCQkJCQlS
ZWxhdGl2ZVBhdGg9Ii4uXGh0bWxcdHJhY2tcVHJhY2tMaXN0QmFzZS5jcHAiCisJCQkJCT4KKwkJ
CQk8L0ZpbGU+CisJCQkJPEZpbGUKKwkJCQkJUmVsYXRpdmVQYXRoPSIuLlxodG1sXHRyYWNrXFRy
YWNrTGlzdEJhc2UuaCIKKwkJCQkJPgorCQkJCTwvRmlsZT4KKwkJCQk8RmlsZQogCQkJCQlSZWxh
dGl2ZVBhdGg9Ii4uXGh0bWxcdHJhY2tcV2ViVlRURWxlbWVudC5jcHAiCiAJCQkJCT4KIAkJCQk8
L0ZpbGU+CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9XZWJDb3JlLnhjb2RlcHJvai9wcm9q
ZWN0LnBieHByb2ogYi9Tb3VyY2UvV2ViQ29yZS9XZWJDb3JlLnhjb2RlcHJvai9wcm9qZWN0LnBi
eHByb2oKaW5kZXggYzgyMjQ0MWY3MzBmMDI5YzBhN2I5ZTgzNmYwOGZkNjgzYjAzYTBhMy4uMzky
YjJhOTU2ZTM4MTkzMDI0MWZkZDk0YmE0Zjc4M2ZkOGE0ZmFkNiAxMDA2NDQKLS0tIGEvU291cmNl
L1dlYkNvcmUvV2ViQ29yZS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qCisrKyBiL1NvdXJjZS9X
ZWJDb3JlL1dlYkNvcmUueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvagpAQCAtNTExMSw2ICs1MTEx
LDggQEAKIAkJQkNGRTJGMTIwQzFCNTgzODAwMjAyMzVGIC8qIEpTUmVjdC5oIGluIEhlYWRlcnMg
Ki8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQkNGRTJGMTAwQzFCNTgzNzAwMjAy
MzVGIC8qIEpTUmVjdC5oICovOyB9OwogCQlCQ0ZGNjQ5MTBFQUQxNUMyMDBDMUQ2RjcgLyogTGVu
Z3RoQm94LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBC
Q0ZGNjQ4RjBFQUQxNUMyMDBDMUQ2RjcgLyogTGVuZ3RoQm94LmggKi87IHNldHRpbmdzID0ge0FU
VFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKIAkJQkNGRjY0OTIwRUFEMTVDMjAwQzFENkY3
IC8qIExlbmd0aFNpemUuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmls
ZVJlZiA9IEJDRkY2NDkwMEVBRDE1QzIwMEMxRDZGNyAvKiBMZW5ndGhTaXplLmggKi87IHNldHRp
bmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJQkU4OEUwQzExNzE1Q0Uy
NjAwNjU4RDk4IC8qIFRyYWNrTGlzdEJhc2UuY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJY
QnVpbGRGaWxlOyBmaWxlUmVmID0gQkU4OEUwQkYxNzE1Q0UyNjAwNjU4RDk4IC8qIFRyYWNrTGlz
dEJhc2UuY3BwICovOyB9OworCQlCRTg4RTBDMjE3MTVDRTI2MDA2NThEOTggLyogVHJhY2tMaXN0
QmFzZS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQkU4
OEUwQzAxNzE1Q0UyNjAwNjU4RDk4IC8qIFRyYWNrTGlzdEJhc2UuaCAqLzsgfTsKIAkJQzA0NkUx
QUMxMjA4QTlGRTAwQkEyQ0Y3IC8qIExvY2FsaXplZFN0cmluZ3MuY3BwIGluIFNvdXJjZXMgKi8g
PSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQzA0NkUxQUIxMjA4QTlGRTAwQkEyQ0Y3
IC8qIExvY2FsaXplZFN0cmluZ3MuY3BwICovOyB9OwogCQlDMEMwNTRDQjExMThDOEU0MDBDRTI2
MzYgLyogQ29kZUdlbmVyYXRvci5wbSBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmls
ZTsgZmlsZVJlZiA9IDkzRjhCMzA1MEEzMDBGRTEwMEY2MUFCOCAvKiBDb2RlR2VuZXJhdG9yLnBt
ICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CiAJCUMwQzA1
NENDMTExOEM4RTQwMENFMjYzNiAvKiBnZW5lcmF0ZS1iaW5kaW5ncy5wbCBpbiBIZWFkZXJzICov
ID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDkzRjhCMzA3MEEzMDBGRUEwMEY2MUFC
OCAvKiBnZW5lcmF0ZS1iaW5kaW5ncy5wbCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQ
cml2YXRlLCApOyB9OyB9OwpAQCAtMTE4MjksNiArMTE4MzEsOCBAQAogCQlCQ0ZGNjQ5MDBFQUQx
NUMyMDBDMUQ2RjcgLyogTGVuZ3RoU2l6ZS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7
IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBh
dGggPSBMZW5ndGhTaXplLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCUJFODU1RjdG
MDcwMUU4MzUwMDIzOTc2OSAvKiBXZWJDb3JlVmlldy5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZl
cmVuY2U7IGZpbGVFbmNvZGluZyA9IDMwOyBpbmRlbnRXaWR0aCA9IDQ7IGxhc3RLbm93bkZpbGVU
eXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBXZWJDb3JlVmlldy5oOyBzb3VyY2VUcmVlID0g
Ijxncm91cD4iOyB0YWJXaWR0aCA9IDg7IHVzZXNUYWJzID0gMDsgfTsKIAkJQkU4NTYwNTEwNzAx
RjkxMTAwMjM5NzY5IC8qIFdlYkNvcmVWaWV3Lm0gKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5j
ZTsgZmlsZUVuY29kaW5nID0gMzA7IGluZGVudFdpZHRoID0gNDsgbGFzdEtub3duRmlsZVR5cGUg
PSBzb3VyY2Vjb2RlLmMub2JqYzsgcGF0aCA9IFdlYkNvcmVWaWV3Lm07IHNvdXJjZVRyZWUgPSAi
PGdyb3VwPiI7IHRhYldpZHRoID0gODsgdXNlc1RhYnMgPSAwOyB9OworCQlCRTg4RTBCRjE3MTVD
RTI2MDA2NThEOTggLyogVHJhY2tMaXN0QmFzZS5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVy
ZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNw
cC5jcHA7IHBhdGggPSBUcmFja0xpc3RCYXNlLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+Ijsg
fTsKKwkJQkU4OEUwQzAxNzE1Q0UyNjAwNjU4RDk4IC8qIFRyYWNrTGlzdEJhc2UuaCAqLyA9IHtp
c2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlw
ZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gVHJhY2tMaXN0QmFzZS5oOyBzb3VyY2VUcmVlID0g
Ijxncm91cD4iOyB9OwogCQlCRTkxRkM4QjA2MTMzNjY2MDA1RTM3OTAgLyogUG9zaXRpb24uaCAq
LyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsgaW5kZW50V2lk
dGggPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gUG9zaXRp
b24uaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgdGFiV2lkdGggPSA4OyB1c2VzVGFicyA9IDA7
IH07CiAJCUJFOTFGQzhDMDYxMzM2NjYwMDVFMzc5MCAvKiBQb3NpdGlvbi5jcHAgKi8gPSB7aXNh
ID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gMzA7IGluZGVudFdpZHRoID0gNDsg
bGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBQb3NpdGlvbi5j
cHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IHRhYldpZHRoID0gODsgdXNlc1RhYnMgPSAwOyB9
OwogCQlCRTk4M0Q5NTA1MkEyRTBBMDA4OTJEODUgLyogV2ViQ29yZUtleWJvYXJkVUlNb2RlLmgg
Ki8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gMzA7IGluZGVudFdp
ZHRoID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFdlYkNv
cmVLZXlib2FyZFVJTW9kZS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB0YWJXaWR0aCA9IDg7
IHVzZXNUYWJzID0gMDsgfTsKQEAgLTE3NjYxLDYgKzE3NjY1LDggQEAKIAkJQjFBRDRFNzcxM0Ex
MkE3MjAwODQ2QjI3IC8qIHRyYWNrICovID0gewogCQkJaXNhID0gUEJYR3JvdXA7CiAJCQljaGls
ZHJlbiA9ICgKKwkJCQlCRTg4RTBCRjE3MTVDRTI2MDA2NThEOTggLyogVHJhY2tMaXN0QmFzZS5j
cHAgKi8sCisJCQkJQkU4OEUwQzAxNzE1Q0UyNjAwNjU4RDk4IC8qIFRyYWNrTGlzdEJhc2UuaCAq
LywKIAkJCQkwNzk0MTc4RjE2NkU4NTVGMDA5NDE2QzIgLyogSW5iYW5kVGV4dFRyYWNrLmNwcCAq
LywKIAkJCQkwNzk0MTc5MDE2NkU4NTVGMDA5NDE2QzIgLyogSW5iYW5kVGV4dFRyYWNrLmggKi8s
CiAJCQkJOTc1OUU5MzQxNEVGMUNGODAwMjZBMkREIC8qIExvYWRhYmxlVGV4dFRyYWNrLmNwcCAq
LywKQEAgLTI0MDM5LDYgKzI0MDQ1LDcgQEAKIAkJCQlFMTgwODEwRjE2RkNFQ0RGMDBCODBEMDcg
LyogV2ViQ29yZVJlc291cmNlSGFuZGxlQXNEZWxlZ2F0ZS5oIGluIEhlYWRlcnMgKi8sCiAJCQkJ
RTE4MDgxMTcxNkZDRjlDQjAwQjgwRDA3IC8qIFN5bmNocm9ub3VzTG9hZGVyQ2xpZW50LmggaW4g
SGVhZGVycyAqLywKIAkJCQlFMTUyNTUxNTE2RkQyMzUwMDAzRDdBREIgLyogV2ViQ29yZVJlc291
cmNlSGFuZGxlQXNPcGVyYXRpb25RdWV1ZURlbGVnYXRlLmggaW4gSGVhZGVycyAqLywKKwkJCQlC
RTg4RTBDMjE3MTVDRTI2MDA2NThEOTggLyogVHJhY2tMaXN0QmFzZS5oIGluIEhlYWRlcnMgKi8s
CiAJCQkpOwogCQkJcnVuT25seUZvckRlcGxveW1lbnRQb3N0cHJvY2Vzc2luZyA9IDA7CiAJCX07
CkBAIC0yNjk4NCw2ICsyNjk5MSw3IEBACiAJCQkJRTE4MDgxMTIxNkZDRjQyRjAwQjgwRDA3IC8q
IFN5bmNocm9ub3VzTG9hZGVyQ2xpZW50LmNwcCBpbiBTb3VyY2VzICovLAogCQkJCUUxODA4MTE2
MTZGQ0Y5Q0IwMEI4MEQwNyAvKiBTeW5jaHJvbm91c0xvYWRlckNsaWVudC5tbSBpbiBTb3VyY2Vz
ICovLAogCQkJCUUxNTI1NTE2MTZGRDIzNTAwMDNEN0FEQiAvKiBXZWJDb3JlUmVzb3VyY2VIYW5k
bGVBc09wZXJhdGlvblF1ZXVlRGVsZWdhdGUubW0gaW4gU291cmNlcyAqLywKKwkJCQlCRTg4RTBD
MTE3MTVDRTI2MDA2NThEOTggLyogVHJhY2tMaXN0QmFzZS5jcHAgaW4gU291cmNlcyAqLywKIAkJ
CSk7CiAJCQlydW5Pbmx5Rm9yRGVwbG95bWVudFBvc3Rwcm9jZXNzaW5nID0gMDsKIAkJfTsKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTE1lZGlhRWxlbWVudC5jcHAgYi9Tb3Vy
Y2UvV2ViQ29yZS9odG1sL0hUTUxNZWRpYUVsZW1lbnQuY3BwCmluZGV4IGRhMWFiNWE1YzJlNzgx
NzQzMmJmYWEzMDExYzBlOThjM2QyYmM3OTMuLjhmYzVhMDhhZjhhMDE0OWJhZDdhNWI3MzUwYTRl
YmIzMDM0YjI3NzkgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTE1lZGlhRWxl
bWVudC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MTWVkaWFFbGVtZW50LmNwcApA
QCAtMjc5Miw3ICsyNzkyLDcgQEAgZmxvYXQgSFRNTE1lZGlhRWxlbWVudDo6cGVyY2VudExvYWRl
ZCgpIGNvbnN0CiAKICNpZiBFTkFCTEUoVklERU9fVFJBQ0spCiAKLXZvaWQgSFRNTE1lZGlhRWxl
bWVudDo6bWVkaWFQbGF5ZXJEaWRBZGRUcmFjayhQYXNzUmVmUHRyPEluYmFuZFRleHRUcmFja1By
aXZhdGU+IHBycFRyYWNrKQordm9pZCBIVE1MTWVkaWFFbGVtZW50OjptZWRpYVBsYXllckRpZEFk
ZFRleHRUcmFjayhQYXNzUmVmUHRyPEluYmFuZFRleHRUcmFja1ByaXZhdGU+IHBycFRyYWNrKQog
ewogICAgIGlmICghUnVudGltZUVuYWJsZWRGZWF0dXJlczo6d2Via2l0VmlkZW9UcmFja0VuYWJs
ZWQoKSkKICAgICAgICAgcmV0dXJuOwpAQCAtMjgyNCwxMCArMjgyNCwxMCBAQCB2b2lkIEhUTUxN
ZWRpYUVsZW1lbnQ6Om1lZGlhUGxheWVyRGlkQWRkVHJhY2soUGFzc1JlZlB0cjxJbmJhbmRUZXh0
VHJhY2tQcml2YXRlPgogICAgIC8vIDkuIEZpcmUgYW4gZXZlbnQgd2l0aCB0aGUgbmFtZSBhZGR0
cmFjaywgdGhhdCBkb2VzIG5vdCBidWJibGUgYW5kIGlzIG5vdCBjYW5jZWxhYmxlLCBhbmQgdGhh
dCB1c2VzIHRoZSBUcmFja0V2ZW50CiAgICAgLy8gaW50ZXJmYWNlLCB3aXRoIHRoZSB0cmFjayBh
dHRyaWJ1dGUgaW5pdGlhbGl6ZWQgdG8gdGhlIHRleHQgdHJhY2sncyBUZXh0VHJhY2sgb2JqZWN0
LCBhdCB0aGUgbWVkaWEgZWxlbWVudCdzCiAgICAgLy8gdGV4dFRyYWNrcyBhdHRyaWJ1dGUncyBU
ZXh0VHJhY2tMaXN0IG9iamVjdC4KLSAgICBhZGRUcmFjayh0ZXh0VHJhY2suZ2V0KCkpOworICAg
IGFkZFRleHRUcmFjayh0ZXh0VHJhY2suZ2V0KCkpOwogfQogCi12b2lkIEhUTUxNZWRpYUVsZW1l
bnQ6Om1lZGlhUGxheWVyRGlkUmVtb3ZlVHJhY2soUGFzc1JlZlB0cjxJbmJhbmRUZXh0VHJhY2tQ
cml2YXRlPiBwcnBUcmFjaykKK3ZvaWQgSFRNTE1lZGlhRWxlbWVudDo6bWVkaWFQbGF5ZXJEaWRS
ZW1vdmVUZXh0VHJhY2soUGFzc1JlZlB0cjxJbmJhbmRUZXh0VHJhY2tQcml2YXRlPiBwcnBUcmFj
aykKIHsKICAgICBpZiAoIVJ1bnRpbWVFbmFibGVkRmVhdHVyZXM6OndlYmtpdFZpZGVvVHJhY2tF
bmFibGVkKCkpCiAgICAgICAgIHJldHVybjsKQEAgLTI4MzYsMTIgKzI4MzYsMTIgQEAgdm9pZCBI
VE1MTWVkaWFFbGVtZW50OjptZWRpYVBsYXllckRpZFJlbW92ZVRyYWNrKFBhc3NSZWZQdHI8SW5i
YW5kVGV4dFRyYWNrUHJpdmEKICAgICAgICAgcmV0dXJuOwogCiAgICAgLy8gVGhpcyBjYXN0IGlz
IHNhZmUgYmVjYXVzZSB3ZSBjcmVhdGVkIHRoZSBJbmJhbmRUZXh0VHJhY2sgd2l0aCB0aGUgSW5i
YW5kVGV4dFRyYWNrUHJpdmF0ZQotICAgIC8vIHBhc3NlZCB0byBtZWRpYVBsYXllckRpZEFkZFRy
YWNrLgorICAgIC8vIHBhc3NlZCB0byBtZWRpYVBsYXllckRpZEFkZFRleHRUcmFjay4KICAgICBS
ZWZQdHI8SW5iYW5kVGV4dFRyYWNrPiB0ZXh0VHJhY2sgPSBzdGF0aWNfY2FzdDxJbmJhbmRUZXh0
VHJhY2sqPihwcnBUcmFjay0+Y2xpZW50KCkpOwogICAgIGlmICghdGV4dFRyYWNrKQogICAgICAg
ICByZXR1cm47CiAKLSAgICByZW1vdmVUcmFjayh0ZXh0VHJhY2suZ2V0KCkpOworICAgIHJlbW92
ZVRleHRUcmFjayh0ZXh0VHJhY2suZ2V0KCkpOwogfQogCiAjaWYgVVNFKFBMQVRGT1JNX1RFWFRf
VFJBQ0tfTUVOVSkKQEAgLTI5MjAsMTQgKzI5MjAsMTQgQEAgdm9pZCBIVE1MTWVkaWFFbGVtZW50
OjpjbG9zZUNhcHRpb25UcmFja3NDaGFuZ2VkKCkKICNlbmRpZgogfQogCi12b2lkIEhUTUxNZWRp
YUVsZW1lbnQ6OmFkZFRyYWNrKFRleHRUcmFjayogdHJhY2spCit2b2lkIEhUTUxNZWRpYUVsZW1l
bnQ6OmFkZFRleHRUcmFjayhUZXh0VHJhY2sqIHRyYWNrKQogewogICAgIHRleHRUcmFja3MoKS0+
YXBwZW5kKHRyYWNrKTsKICAgICAKICAgICBjbG9zZUNhcHRpb25UcmFja3NDaGFuZ2VkKCk7CiB9
CiAKLXZvaWQgSFRNTE1lZGlhRWxlbWVudDo6cmVtb3ZlVHJhY2soVGV4dFRyYWNrKiB0cmFjaykK
K3ZvaWQgSFRNTE1lZGlhRWxlbWVudDo6cmVtb3ZlVGV4dFRyYWNrKFRleHRUcmFjayogdHJhY2sp
CiB7CiAgICAgVHJhY2tEaXNwbGF5VXBkYXRlU2NvcGUgc2NvcGUodGhpcyk7CiAgICAgVGV4dFRy
YWNrQ3VlTGlzdCogY3VlcyA9IHRyYWNrLT5jdWVzKCk7CkBAIC0yOTQ4LDcgKzI5NDgsNyBAQCB2
b2lkIEhUTUxNZWRpYUVsZW1lbnQ6OnJlbW92ZUFsbEluYmFuZFRyYWNrcygpCiAgICAgICAgIFRl
eHRUcmFjayogdHJhY2sgPSBtX3RleHRUcmFja3MtPml0ZW0oaSk7CiAKICAgICAgICAgaWYgKHRy
YWNrLT50cmFja1R5cGUoKSA9PSBUZXh0VHJhY2s6OkluQmFuZCkKLSAgICAgICAgICAgIHJlbW92
ZVRyYWNrKHRyYWNrKTsKKyAgICAgICAgICAgIHJlbW92ZVRleHRUcmFjayh0cmFjayk7CiAgICAg
fQogfQogCkBAIC0yOTc4LDcgKzI5NzgsNyBAQCBQYXNzUmVmUHRyPFRleHRUcmFjaz4gSFRNTE1l
ZGlhRWxlbWVudDo6YWRkVGV4dFRyYWNrKGNvbnN0IFN0cmluZyYga2luZCwgY29uc3QgUwogICAg
IC8vIGZpcnN0IGFwcGVuZCB0aGUgdHJhY2sgdG8gdGhlIHRleHQgdHJhY2sgbGlzdC4KIAogICAg
IC8vIDYuIEFkZCB0aGUgbmV3IHRleHQgdHJhY2sgdG8gdGhlIG1lZGlhIGVsZW1lbnQncyBsaXN0
IG9mIHRleHQgdHJhY2tzLgotICAgIGFkZFRyYWNrKHRleHRUcmFjay5nZXQoKSk7CisgICAgYWRk
VGV4dFRyYWNrKHRleHRUcmFjay5nZXQoKSk7CiAKICAgICAvLyAuLi4gaXRzIHRleHQgdHJhY2sg
cmVhZGluZXNzIHN0YXRlIHRvIHRoZSB0ZXh0IHRyYWNrIGxvYWRlZCBzdGF0ZSAuLi4KICAgICB0
ZXh0VHJhY2stPnNldFJlYWRpbmVzc1N0YXRlKFRleHRUcmFjazo6TG9hZGVkKTsKQEAgLTMwMDAs
NyArMzAwMCw3IEBAIFRleHRUcmFja0xpc3QqIEhUTUxNZWRpYUVsZW1lbnQ6OnRleHRUcmFja3Mo
KQogICAgIHJldHVybiBtX3RleHRUcmFja3MuZ2V0KCk7CiB9CiAKLXZvaWQgSFRNTE1lZGlhRWxl
bWVudDo6ZGlkQWRkVHJhY2soSFRNTFRyYWNrRWxlbWVudCogdHJhY2tFbGVtZW50KQordm9pZCBI
VE1MTWVkaWFFbGVtZW50OjpkaWRBZGRUZXh0VHJhY2soSFRNTFRyYWNrRWxlbWVudCogdHJhY2tF
bGVtZW50KQogewogICAgIEFTU0VSVCh0cmFja0VsZW1lbnQtPmhhc1RhZ05hbWUodHJhY2tUYWcp
KTsKIApAQCAtMzAxNSw3ICszMDE1LDcgQEAgdm9pZCBIVE1MTWVkaWFFbGVtZW50OjpkaWRBZGRU
cmFjayhIVE1MVHJhY2tFbGVtZW50KiB0cmFja0VsZW1lbnQpCiAgICAgaWYgKCF0ZXh0VHJhY2sp
CiAgICAgICAgIHJldHVybjsKICAgICAKLSAgICBhZGRUcmFjayh0ZXh0VHJhY2suZ2V0KCkpOwor
ICAgIGFkZFRleHRUcmFjayh0ZXh0VHJhY2suZ2V0KCkpOwogICAgIAogICAgIC8vIERvIG5vdCBz
Y2hlZHVsZSB0aGUgdHJhY2sgbG9hZGluZyB1bnRpbCBwYXJzaW5nIGZpbmlzaGVzIHNvIHdlIGRv
bid0IHN0YXJ0IGJlZm9yZSBhbGwgdHJhY2tzCiAgICAgLy8gaW4gdGhlIG1hcmt1cCBoYXZlIGJl
ZW4gYWRkZWQuCkBAIC0zMDI2LDcgKzMwMjYsNyBAQCB2b2lkIEhUTUxNZWRpYUVsZW1lbnQ6OmRp
ZEFkZFRyYWNrKEhUTUxUcmFja0VsZW1lbnQqIHRyYWNrRWxlbWVudCkKICAgICAgICAgbWVkaWFD
b250cm9scygpLT5jbG9zZWRDYXB0aW9uVHJhY2tzQ2hhbmdlZCgpOwogfQogCi12b2lkIEhUTUxN
ZWRpYUVsZW1lbnQ6OmRpZFJlbW92ZVRyYWNrKEhUTUxUcmFja0VsZW1lbnQqIHRyYWNrRWxlbWVu
dCkKK3ZvaWQgSFRNTE1lZGlhRWxlbWVudDo6ZGlkUmVtb3ZlVGV4dFRyYWNrKEhUTUxUcmFja0Vs
ZW1lbnQqIHRyYWNrRWxlbWVudCkKIHsKICAgICBBU1NFUlQodHJhY2tFbGVtZW50LT5oYXNUYWdO
YW1lKHRyYWNrVGFnKSk7CiAKQEAgLTMwNTMsNyArMzA1Myw3IEBAIHZvaWQgSFRNTE1lZGlhRWxl
bWVudDo6ZGlkUmVtb3ZlVHJhY2soSFRNTFRyYWNrRWxlbWVudCogdHJhY2tFbGVtZW50KQogICAg
IC8vIFdoZW4gYSB0cmFjayBlbGVtZW50J3MgcGFyZW50IGVsZW1lbnQgY2hhbmdlcyBhbmQgdGhl
IG9sZCBwYXJlbnQgd2FzIGEgbWVkaWEgZWxlbWVudCwgCiAgICAgLy8gdGhlbiB0aGUgdXNlciBh
Z2VudCBtdXN0IHJlbW92ZSB0aGUgdHJhY2sgZWxlbWVudCdzIGNvcnJlc3BvbmRpbmcgdGV4dCB0
cmFjayBmcm9tIHRoZSAKICAgICAvLyBtZWRpYSBlbGVtZW50J3MgbGlzdCBvZiB0ZXh0IHRyYWNr
cy4KLSAgICByZW1vdmVUcmFjayh0ZXh0VHJhY2suZ2V0KCkpOworICAgIHJlbW92ZVRleHRUcmFj
ayh0ZXh0VHJhY2suZ2V0KCkpOwogCiAgICAgc2l6ZV90IGluZGV4ID0gbV90ZXh0VHJhY2tzV2hl
blJlc291cmNlU2VsZWN0aW9uQmVnYW4uZmluZCh0ZXh0VHJhY2suZ2V0KCkpOwogICAgIGlmIChp
bmRleCAhPSBub3RGb3VuZCkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTE1l
ZGlhRWxlbWVudC5oIGIvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MTWVkaWFFbGVtZW50LmgKaW5k
ZXggY2EwMTZjMDdkNDZmZjIxMzdmYTBlMWFhODY3MzI0M2JkMTI3ZTE4Yy4uYmM3NWQxZWUzNDZi
YzFhODE1M2YzMjk0M2E4ZWQyNTEyZmUxYmE5YyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUv
aHRtbC9IVE1MTWVkaWFFbGVtZW50LmgKKysrIGIvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MTWVk
aWFFbGVtZW50LmgKQEAgLTU4LDcgKzU4LDYgQEAgY2xhc3MgTWVkaWFDb250cm9sbGVyOwogY2xh
c3MgTWVkaWFDb250cm9sczsKIGNsYXNzIE1lZGlhRXJyb3I7CiBjbGFzcyBLVVJMOwotY2xhc3Mg
VGV4dFRyYWNrTGlzdDsKIGNsYXNzIFRpbWVSYW5nZXM7CiAjaWYgRU5BQkxFKFBMVUdJTl9QUk9Y
WV9GT1JfVklERU8pCiBjbGFzcyBXaWRnZXQ7CkBAIC03Miw2ICs3MSw3IEBAIGNsYXNzIE1lZGlh
S2V5czsKIAogI2lmIEVOQUJMRShWSURFT19UUkFDSykKIGNsYXNzIEluYmFuZFRleHRUcmFja1By
aXZhdGU7CitjbGFzcyBUZXh0VHJhY2tMaXN0OwogCiB0eXBlZGVmIFBPREludGVydmFsVHJlZTxk
b3VibGUsIFRleHRUcmFja0N1ZSo+IEN1ZUludGVydmFsVHJlZTsKIHR5cGVkZWYgQ3VlSW50ZXJ2
YWxUcmVlOjpJbnRlcnZhbFR5cGUgQ3VlSW50ZXJ2YWw7CkBAIC0yMjksMTcgKzIyOSwxNyBAQCBw
dWJsaWM6CiAgICAgVGV4dFRyYWNrTGlzdCogdGV4dFRyYWNrcygpOwogICAgIEN1ZUxpc3QgY3Vy
cmVudGx5QWN0aXZlQ3VlcygpIGNvbnN0IHsgcmV0dXJuIG1fY3VycmVudGx5QWN0aXZlQ3Vlczsg
fQogCi0gICAgdm9pZCBhZGRUcmFjayhUZXh0VHJhY2sqKTsKLSAgICB2b2lkIHJlbW92ZVRyYWNr
KFRleHRUcmFjayopOworICAgIHZvaWQgYWRkVGV4dFRyYWNrKFRleHRUcmFjayopOworICAgIHZv
aWQgcmVtb3ZlVGV4dFRyYWNrKFRleHRUcmFjayopOwogICAgIHZvaWQgcmVtb3ZlQWxsSW5iYW5k
VHJhY2tzKCk7CiAgICAgdm9pZCBjbG9zZUNhcHRpb25UcmFja3NDaGFuZ2VkKCk7CiAgICAgdm9p
ZCBub3RpZnlNZWRpYVBsYXllck9mVGV4dFRyYWNrQ2hhbmdlcygpOwogCi0gICAgdmlydHVhbCB2
b2lkIGRpZEFkZFRyYWNrKEhUTUxUcmFja0VsZW1lbnQqKTsKLSAgICB2aXJ0dWFsIHZvaWQgZGlk
UmVtb3ZlVHJhY2soSFRNTFRyYWNrRWxlbWVudCopOworICAgIHZpcnR1YWwgdm9pZCBkaWRBZGRU
ZXh0VHJhY2soSFRNTFRyYWNrRWxlbWVudCopOworICAgIHZpcnR1YWwgdm9pZCBkaWRSZW1vdmVU
ZXh0VHJhY2soSFRNTFRyYWNrRWxlbWVudCopOwogCi0gICAgdmlydHVhbCB2b2lkIG1lZGlhUGxh
eWVyRGlkQWRkVHJhY2soUGFzc1JlZlB0cjxJbmJhbmRUZXh0VHJhY2tQcml2YXRlPikgT1ZFUlJJ
REU7Ci0gICAgdmlydHVhbCB2b2lkIG1lZGlhUGxheWVyRGlkUmVtb3ZlVHJhY2soUGFzc1JlZlB0
cjxJbmJhbmRUZXh0VHJhY2tQcml2YXRlPikgT1ZFUlJJREU7CisgICAgdmlydHVhbCB2b2lkIG1l
ZGlhUGxheWVyRGlkQWRkVGV4dFRyYWNrKFBhc3NSZWZQdHI8SW5iYW5kVGV4dFRyYWNrUHJpdmF0
ZT4pIE9WRVJSSURFOworICAgIHZpcnR1YWwgdm9pZCBtZWRpYVBsYXllckRpZFJlbW92ZVRleHRU
cmFjayhQYXNzUmVmUHRyPEluYmFuZFRleHRUcmFja1ByaXZhdGU+KSBPVkVSUklERTsKIAogI2lm
IFVTRShQTEFURk9STV9URVhUX1RSQUNLX01FTlUpCiAgICAgdmlydHVhbCB2b2lkIHNldFNlbGVj
dGVkVGV4dFRyYWNrKFBhc3NSZWZQdHI8UGxhdGZvcm1UZXh0VHJhY2s+KSBPVkVSUklERTsKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTFRyYWNrRWxlbWVudC5jcHAgYi9Tb3Vy
Y2UvV2ViQ29yZS9odG1sL0hUTUxUcmFja0VsZW1lbnQuY3BwCmluZGV4IGZiYmIzZTg1ZTBkYTY3
ODAxMWFmODRlZmM5YTU3OTljNjNmNDYzZDQuLjAxMDU4NTVmY2YyNTcxOTc0OWM1MTYwOGI0NjQ5
MmEyMDFhYzEzMDIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTFRyYWNrRWxl
bWVudC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MVHJhY2tFbGVtZW50LmNwcApA
QCAtODAsMTQgKzgwLDE0IEBAIE5vZGU6Okluc2VydGlvbk5vdGlmaWNhdGlvblJlcXVlc3QgSFRN
TFRyYWNrRWxlbWVudDo6aW5zZXJ0ZWRJbnRvKENvbnRhaW5lck5vZGUqCiAgICAgSFRNTEVsZW1l
bnQ6Omluc2VydGVkSW50byhpbnNlcnRpb25Qb2ludCk7CiAgICAgSFRNTE1lZGlhRWxlbWVudCog
cGFyZW50ID0gbWVkaWFFbGVtZW50KCk7CiAgICAgaWYgKGluc2VydGlvblBvaW50ID09IHBhcmVu
dCkKLSAgICAgICAgcGFyZW50LT5kaWRBZGRUcmFjayh0aGlzKTsKKyAgICAgICAgcGFyZW50LT5k
aWRBZGRUZXh0VHJhY2sodGhpcyk7CiAgICAgcmV0dXJuIEluc2VydGlvbkRvbmU7CiB9CiAKIHZv
aWQgSFRNTFRyYWNrRWxlbWVudDo6cmVtb3ZlZEZyb20oQ29udGFpbmVyTm9kZSogaW5zZXJ0aW9u
UG9pbnQpCiB7CiAgICAgaWYgKCFwYXJlbnROb2RlKCkgJiYgV2ViQ29yZTo6aXNNZWRpYUVsZW1l
bnQoaW5zZXJ0aW9uUG9pbnQpKQotICAgICAgICB0b01lZGlhRWxlbWVudChpbnNlcnRpb25Qb2lu
dCktPmRpZFJlbW92ZVRyYWNrKHRoaXMpOworICAgICAgICB0b01lZGlhRWxlbWVudChpbnNlcnRp
b25Qb2ludCktPmRpZFJlbW92ZVRleHRUcmFjayh0aGlzKTsKICAgICBIVE1MRWxlbWVudDo6cmVt
b3ZlZEZyb20oaW5zZXJ0aW9uUG9pbnQpOwogfQogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29y
ZS9odG1sL3RyYWNrL1RleHRUcmFjay5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL3RyYWNrL1Rl
eHRUcmFjay5jcHAKaW5kZXggM2MyNzRiMWUxNGI5YjkwNjFmZDg3ZjQyZjg2YWJhMjJlNWM4ODQx
MC4uOGUwM2Y4ZTJhZDI2MzAxNDQzMjA1NWQyOWIzZjkyM2Q5N2Q3YjBmNyAxMDA2NDQKLS0tIGEv
U291cmNlL1dlYkNvcmUvaHRtbC90cmFjay9UZXh0VHJhY2suY3BwCisrKyBiL1NvdXJjZS9XZWJD
b3JlL2h0bWwvdHJhY2svVGV4dFRyYWNrLmNwcApAQCAtMTA4LDE0ICsxMDgsMTIgQEAgVGV4dFRy
YWNrKiBUZXh0VHJhY2s6OmNhcHRpb25NZW51QXV0b21hdGljSXRlbSgpCiB9CiAKIFRleHRUcmFj
azo6VGV4dFRyYWNrKFNjcmlwdEV4ZWN1dGlvbkNvbnRleHQqIGNvbnRleHQsIFRleHRUcmFja0Ns
aWVudCogY2xpZW50LCBjb25zdCBBdG9taWNTdHJpbmcmIGtpbmQsIGNvbnN0IEF0b21pY1N0cmlu
ZyYgbGFiZWwsIGNvbnN0IEF0b21pY1N0cmluZyYgbGFuZ3VhZ2UsIFRleHRUcmFja1R5cGUgdHlw
ZSkKLSAgICA6IFRyYWNrQmFzZShjb250ZXh0LCBUcmFja0Jhc2U6OlRleHRUcmFjaykKKyAgICA6
IFRyYWNrQmFzZShUcmFja0Jhc2U6OlRleHRUcmFjaywgbGFiZWwsIGxhbmd1YWdlKQogICAgICwg
bV9jdWVzKDApCisgICAgLCBtX3NjcmlwdEV4ZWN1dGlvbkNvbnRleHQoY29udGV4dCkKICNpZiBF
TkFCTEUoV0VCVlRUX1JFR0lPTlMpCiAgICAgLCBtX3JlZ2lvbnMoMCkKICNlbmRpZgotICAgICwg
bV9tZWRpYUVsZW1lbnQoMCkKLSAgICAsIG1fbGFiZWwobGFiZWwpCi0gICAgLCBtX2xhbmd1YWdl
KGxhbmd1YWdlKQogICAgICwgbV9tb2RlKGRpc2FibGVkS2V5d29yZCgpLnN0cmluZygpKQogICAg
ICwgbV9jbGllbnQoY2xpZW50KQogICAgICwgbV90cmFja1R5cGUodHlwZSkKQEAgLTE0Myw2ICsx
NDEsMzEgQEAgVGV4dFRyYWNrOjp+VGV4dFRyYWNrKCkKICAgICBjbGVhckNsaWVudCgpOwogfQog
Citjb25zdCBBdG9taWNTdHJpbmcmIFRleHRUcmFjazo6aW50ZXJmYWNlTmFtZSgpIGNvbnN0Cit7
CisgICAgcmV0dXJuIGV2ZW50TmFtZXMoKS5pbnRlcmZhY2VGb3JUZXh0VHJhY2s7Cit9CisKK1Nj
cmlwdEV4ZWN1dGlvbkNvbnRleHQqIFRleHRUcmFjazo6c2NyaXB0RXhlY3V0aW9uQ29udGV4dCgp
IGNvbnN0Cit7CisgICAgcmV0dXJuIG1fc2NyaXB0RXhlY3V0aW9uQ29udGV4dDsKK30KKworRXZl
bnRUYXJnZXREYXRhKiBUZXh0VHJhY2s6OmV2ZW50VGFyZ2V0RGF0YSgpCit7CisgICAgcmV0dXJu
ICZtX2V2ZW50VGFyZ2V0RGF0YTsKK30KKworRXZlbnRUYXJnZXREYXRhKiBUZXh0VHJhY2s6OmVu
c3VyZUV2ZW50VGFyZ2V0RGF0YSgpCit7CisgICAgcmV0dXJuICZtX2V2ZW50VGFyZ2V0RGF0YTsK
K30KKworYm9vbCBUZXh0VHJhY2s6OmlzVmFsaWRLaW5kKGNvbnN0IEF0b21pY1N0cmluZyYgdmFs
dWUpIGNvbnN0Cit7CisgICAgcmV0dXJuIFRleHRUcmFjazo6aXNWYWxpZEtpbmRLZXl3b3JkKHZh
bHVlKTsKK30KKwogYm9vbCBUZXh0VHJhY2s6OmlzVmFsaWRLaW5kS2V5d29yZChjb25zdCBBdG9t
aWNTdHJpbmcmIHZhbHVlKQogewogICAgIGlmICh2YWx1ZSA9PSBzdWJ0aXRsZXNLZXl3b3JkKCkp
CkBAIC0xNTksMTYgKzE4MiwxMyBAQCBib29sIFRleHRUcmFjazo6aXNWYWxpZEtpbmRLZXl3b3Jk
KGNvbnN0IEF0b21pY1N0cmluZyYgdmFsdWUpCiAgICAgcmV0dXJuIGZhbHNlOwogfQogCi12b2lk
IFRleHRUcmFjazo6c2V0S2luZChjb25zdCBBdG9taWNTdHJpbmcmIGtpbmQpCit2b2lkIFRleHRU
cmFjazo6c2V0S2luZChjb25zdCBBdG9taWNTdHJpbmcmIG5ld0tpbmQpCiB7Ci0gICAgU3RyaW5n
IG9sZEtpbmQgPSBtX2tpbmQ7CisgICAgU3RyaW5nIG9sZEtpbmQgPSBraW5kKCk7CiAKLSAgICBp
ZiAoaXNWYWxpZEtpbmRLZXl3b3JkKGtpbmQpKQotICAgICAgICBtX2tpbmQgPSBraW5kOwotICAg
IGVsc2UKLSAgICAgICAgbV9raW5kID0gc3VidGl0bGVzS2V5d29yZCgpOworICAgIFRyYWNrQmFz
ZTo6c2V0S2luZChuZXdLaW5kKTsKIAotICAgIGlmIChtX2NsaWVudCAmJiBvbGRLaW5kICE9IG1f
a2luZCkKKyAgICBpZiAobV9jbGllbnQgJiYgb2xkS2luZCAhPSBraW5kKCkpCiAgICAgICAgIG1f
Y2xpZW50LT50ZXh0VHJhY2tLaW5kQ2hhbmdlZCh0aGlzKTsKIH0KIApAQCAtNDExLDcgKzQzMSw3
IEBAIHZvaWQgVGV4dFRyYWNrOjppbnZhbGlkYXRlVHJhY2tJbmRleCgpCiAKIGJvb2wgVGV4dFRy
YWNrOjppc1JlbmRlcmVkKCkKIHsKLSAgICBpZiAobV9raW5kICE9IGNhcHRpb25zS2V5d29yZCgp
ICYmIG1fa2luZCAhPSBzdWJ0aXRsZXNLZXl3b3JkKCkpCisgICAgaWYgKGtpbmQoKSAhPSBjYXB0
aW9uc0tleXdvcmQoKSAmJiBraW5kKCkgIT0gc3VidGl0bGVzS2V5d29yZCgpKQogICAgICAgICBy
ZXR1cm4gZmFsc2U7CiAKICAgICBpZiAobV9tb2RlICE9IHNob3dpbmdLZXl3b3JkKCkpCkBAIC01
MDIsMTcgKzUyMiwxNyBAQCBQYXNzUmVmUHRyPFBsYXRmb3JtVGV4dFRyYWNrPiBUZXh0VHJhY2s6
OnBsYXRmb3JtVGV4dFRyYWNrKCkKICAgICBpZiAobV9wbGF0Zm9ybVRleHRUcmFjaykKICAgICAg
ICAgcmV0dXJuIG1fcGxhdGZvcm1UZXh0VHJhY2s7CiAKLSAgICBQbGF0Zm9ybVRleHRUcmFjazo6
VHJhY2tLaW5kIGtpbmQgPSBQbGF0Zm9ybVRleHRUcmFjazo6Q2FwdGlvbjsKLSAgICBpZiAobV9r
aW5kID09IHN1YnRpdGxlc0tleXdvcmQoKSkKLSAgICAgICAga2luZCA9IFBsYXRmb3JtVGV4dFRy
YWNrOjpTdWJ0aXRsZTsKLSAgICBlbHNlIGlmIChtX2tpbmQgPT0gY2FwdGlvbnNLZXl3b3JkKCkp
Ci0gICAgICAgIGtpbmQgPSBQbGF0Zm9ybVRleHRUcmFjazo6Q2FwdGlvbjsKLSAgICBlbHNlIGlm
IChtX2tpbmQgPT0gZGVzY3JpcHRpb25zS2V5d29yZCgpKQotICAgICAgICBraW5kID0gUGxhdGZv
cm1UZXh0VHJhY2s6OkRlc2NyaXB0aW9uOwotICAgIGVsc2UgaWYgKG1fa2luZCA9PSBjaGFwdGVy
c0tleXdvcmQoKSkKLSAgICAgICAga2luZCA9IFBsYXRmb3JtVGV4dFRyYWNrOjpDaGFwdGVyOwot
ICAgIGVsc2UgaWYgKG1fa2luZCA9PSBtZXRhZGF0YUtleXdvcmQoKSkKLSAgICAgICAga2luZCA9
IFBsYXRmb3JtVGV4dFRyYWNrOjpNZXRhRGF0YTsKKyAgICBQbGF0Zm9ybVRleHRUcmFjazo6VHJh
Y2tLaW5kIHBsYXRmb3JtS2luZCA9IFBsYXRmb3JtVGV4dFRyYWNrOjpDYXB0aW9uOworICAgIGlm
IChraW5kKCkgPT0gc3VidGl0bGVzS2V5d29yZCgpKQorICAgICAgICBwbGF0Zm9ybUtpbmQgPSBQ
bGF0Zm9ybVRleHRUcmFjazo6U3VidGl0bGU7CisgICAgZWxzZSBpZiAoa2luZCgpID09IGNhcHRp
b25zS2V5d29yZCgpKQorICAgICAgICBwbGF0Zm9ybUtpbmQgPSBQbGF0Zm9ybVRleHRUcmFjazo6
Q2FwdGlvbjsKKyAgICBlbHNlIGlmIChraW5kKCkgPT0gZGVzY3JpcHRpb25zS2V5d29yZCgpKQor
ICAgICAgICBwbGF0Zm9ybUtpbmQgPSBQbGF0Zm9ybVRleHRUcmFjazo6RGVzY3JpcHRpb247Cisg
ICAgZWxzZSBpZiAoa2luZCgpID09IGNoYXB0ZXJzS2V5d29yZCgpKQorICAgICAgICBwbGF0Zm9y
bUtpbmQgPSBQbGF0Zm9ybVRleHRUcmFjazo6Q2hhcHRlcjsKKyAgICBlbHNlIGlmIChraW5kKCkg
PT0gbWV0YWRhdGFLZXl3b3JkKCkpCisgICAgICAgIHBsYXRmb3JtS2luZCA9IFBsYXRmb3JtVGV4
dFRyYWNrOjpNZXRhRGF0YTsKIAogICAgIFBsYXRmb3JtVGV4dFRyYWNrOjpUcmFja1R5cGUgdHlw
ZSA9IFBsYXRmb3JtVGV4dFRyYWNrOjpPdXRPZkJhbmQ7CiAgICAgaWYgKG1fdHJhY2tUeXBlID09
IFRyYWNrRWxlbWVudCkKQEAgLTUyMiw3ICs1NDIsNyBAQCBQYXNzUmVmUHRyPFBsYXRmb3JtVGV4
dFRyYWNrPiBUZXh0VHJhY2s6OnBsYXRmb3JtVGV4dFRyYWNrKCkKICAgICBlbHNlIGlmIChtX3Ry
YWNrVHlwZSA9PSBJbkJhbmQpCiAgICAgICAgIHR5cGUgPSBQbGF0Zm9ybVRleHRUcmFjazo6SW5C
YW5kOwogCi0gICAgbV9wbGF0Zm9ybVRleHRUcmFjayA9IFBsYXRmb3JtVGV4dFRyYWNrOjpjcmVh
dGUodGhpcywgbV9sYWJlbCwgbV9sYW5ndWFnZSwga2luZCwgdHlwZSk7CisgICAgbV9wbGF0Zm9y
bVRleHRUcmFjayA9IFBsYXRmb3JtVGV4dFRyYWNrOjpjcmVhdGUodGhpcywgbGFiZWwoKSwgbGFu
Z3VhZ2UoKSwgcGxhdGZvcm1LaW5kLCB0eXBlKTsKIAogICAgIHJldHVybiBtX3BsYXRmb3JtVGV4
dFRyYWNrOwogfQpAQCAtNTM0LDcgKzU1NCw3IEBAIGJvb2wgVGV4dFRyYWNrOjppc01haW5Qcm9n
cmFtQ29udGVudCgpIGNvbnN0CiAgICAgLy8gZGlyZWN0b3JzIGNvbW1lbnRhcnkgaXMgbm90ICJt
YWluIHByb2dyYW0iIGJlY2F1c2UgaXQgaXMgbm90IGVzc2VudGlhbCBmb3IgdGhlIHByZXNlbnRh
dGlvbi4gSFRNTDUgZG9lc24ndCBoYXZlCiAgICAgLy8gYSB3YXkgdG8gZXhwcmVzcyB0aGlzIGlu
IGEgbWFjaGluZS1yZWFibGUgZm9ybSwgaXQgaXMgdHlwaWNhbGx5IGRvbmUgd2l0aCB0aGUgdHJh
Y2sgbGFiZWwsIHNvIHdlIGFzc3VtZSB0aGF0IGNhcHRpb24KICAgICAvLyB0cmFja3MgYXJlIG1h
aW4gY29udGVudCBhbmQgYWxsIG90aGVyIHRyYWNrIHR5cGVzIGFyZSBub3QuCi0gICAgcmV0dXJu
IG1fa2luZCA9PSBjYXB0aW9uc0tleXdvcmQoKTsKKyAgICByZXR1cm4ga2luZCgpID09IGNhcHRp
b25zS2V5d29yZCgpOwogfQogCiB9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViQ29yZS9odG1sL3RyYWNrL1RleHRUcmFjay5oIGIvU291cmNlL1dlYkNvcmUvaHRt
bC90cmFjay9UZXh0VHJhY2suaAppbmRleCA1NzY5NDViYmU1MjFjZDZhMmY2ZmZmZmQzN2U1NmFk
NjY3MjYwZmYzLi40YmEzMGU3NTY1NTQ1ZjA2N2JmOTFiYjY5NGJiMzYxN2ZlZTdmZTEzIDEwMDY0
NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9odG1sL3RyYWNrL1RleHRUcmFjay5oCisrKyBiL1NvdXJj
ZS9XZWJDb3JlL2h0bWwvdHJhY2svVGV4dFRyYWNrLmgKQEAgLTQxLDcgKzQxLDcgQEAKIAogbmFt
ZXNwYWNlIFdlYkNvcmUgewogCi1jbGFzcyBIVE1MTWVkaWFFbGVtZW50OworY2xhc3MgU2NyaXB0
RXhlY3V0aW9uQ29udGV4dDsKIGNsYXNzIFRleHRUcmFjazsKIGNsYXNzIFRleHRUcmFja0N1ZTsK
IGNsYXNzIFRleHRUcmFja0N1ZUxpc3Q7CkBAIC02MSw3ICs2MSw3IEBAIHB1YmxpYzoKICAgICB2
aXJ0dWFsIHZvaWQgdGV4dFRyYWNrUmVtb3ZlQ3VlKFRleHRUcmFjayosIFBhc3NSZWZQdHI8VGV4
dFRyYWNrQ3VlPikgPSAwOwogfTsKIAotY2xhc3MgVGV4dFRyYWNrIDogcHVibGljIFRyYWNrQmFz
ZQorY2xhc3MgVGV4dFRyYWNrIDogcHVibGljIFRyYWNrQmFzZSwgcHVibGljIEV2ZW50VGFyZ2V0
CiAjaWYgVVNFKFBMQVRGT1JNX1RFWFRfVFJBQ0tfTUVOVSkKICAgICAsIHB1YmxpYyBQbGF0Zm9y
bVRleHRUcmFja0NsaWVudAogI2VuZGlmCkBAIC03MywzMiArNzMsMjYgQEAgcHVibGljOgogICAg
IH0KICAgICB2aXJ0dWFsIH5UZXh0VHJhY2soKTsKIAorICAgIHZpcnR1YWwgY29uc3QgQXRvbWlj
U3RyaW5nJiBpbnRlcmZhY2VOYW1lKCkgY29uc3Q7CisgICAgdmlydHVhbCBTY3JpcHRFeGVjdXRp
b25Db250ZXh0KiBzY3JpcHRFeGVjdXRpb25Db250ZXh0KCkgY29uc3Q7CisKICAgICBzdGF0aWMg
VGV4dFRyYWNrKiBjYXB0aW9uTWVudU9mZkl0ZW0oKTsKICAgICBzdGF0aWMgVGV4dFRyYWNrKiBj
YXB0aW9uTWVudUF1dG9tYXRpY0l0ZW0oKTsKIAotICAgIHZvaWQgc2V0TWVkaWFFbGVtZW50KEhU
TUxNZWRpYUVsZW1lbnQqIGVsZW1lbnQpIHsgbV9tZWRpYUVsZW1lbnQgPSBlbGVtZW50OyB9Ci0g
ICAgSFRNTE1lZGlhRWxlbWVudCogbWVkaWFFbGVtZW50KCkgeyByZXR1cm4gbV9tZWRpYUVsZW1l
bnQ7IH0KLQotICAgIEF0b21pY1N0cmluZyBraW5kKCkgY29uc3QgeyByZXR1cm4gbV9raW5kOyB9
Ci0gICAgdm9pZCBzZXRLaW5kKGNvbnN0IEF0b21pY1N0cmluZyYpOwotCiAgICAgc3RhdGljIGNv
bnN0IEF0b21pY1N0cmluZyYgc3VidGl0bGVzS2V5d29yZCgpOwogICAgIHN0YXRpYyBjb25zdCBB
dG9taWNTdHJpbmcmIGNhcHRpb25zS2V5d29yZCgpOwogICAgIHN0YXRpYyBjb25zdCBBdG9taWNT
dHJpbmcmIGRlc2NyaXB0aW9uc0tleXdvcmQoKTsKICAgICBzdGF0aWMgY29uc3QgQXRvbWljU3Ry
aW5nJiBjaGFwdGVyc0tleXdvcmQoKTsKICAgICBzdGF0aWMgY29uc3QgQXRvbWljU3RyaW5nJiBt
ZXRhZGF0YUtleXdvcmQoKTsKKyAgICB2aXJ0dWFsIGNvbnN0IEF0b21pY1N0cmluZyYgZGVmYXVs
dEtpbmRLZXl3b3JkKCkgY29uc3QgeyByZXR1cm4gc3VidGl0bGVzS2V5d29yZCgpOyB9CiAgICAg
c3RhdGljIGJvb2wgaXNWYWxpZEtpbmRLZXl3b3JkKGNvbnN0IEF0b21pY1N0cmluZyYpOwogCi0g
ICAgQXRvbWljU3RyaW5nIGxhYmVsKCkgY29uc3QgeyByZXR1cm4gbV9sYWJlbDsgfQotICAgIHZv
aWQgc2V0TGFiZWwoY29uc3QgQXRvbWljU3RyaW5nJiBsYWJlbCkgeyBtX2xhYmVsID0gbGFiZWw7
IH0KLQotICAgIEF0b21pY1N0cmluZyBsYW5ndWFnZSgpIGNvbnN0IHsgcmV0dXJuIG1fbGFuZ3Vh
Z2U7IH0KLSAgICB2b2lkIHNldExhbmd1YWdlKGNvbnN0IEF0b21pY1N0cmluZyYgbGFuZ3VhZ2Up
IHsgbV9sYW5ndWFnZSA9IGxhbmd1YWdlOyB9Ci0KICAgICBzdGF0aWMgY29uc3QgQXRvbWljU3Ry
aW5nJiBkaXNhYmxlZEtleXdvcmQoKTsKICAgICBzdGF0aWMgY29uc3QgQXRvbWljU3RyaW5nJiBo
aWRkZW5LZXl3b3JkKCk7CiAgICAgc3RhdGljIGNvbnN0IEF0b21pY1N0cmluZyYgc2hvd2luZ0tl
eXdvcmQoKTsKIAorICAgIHZpcnR1YWwgdm9pZCBzZXRLaW5kKGNvbnN0IEF0b21pY1N0cmluZyYp
IE9WRVJSSURFOworCiAgICAgQXRvbWljU3RyaW5nIG1vZGUoKSBjb25zdCB7IHJldHVybiBtX21v
ZGU7IH0KICAgICB2aXJ0dWFsIHZvaWQgc2V0TW9kZShjb25zdCBBdG9taWNTdHJpbmcmKTsKIApA
QCAtMTA5LDggKzEwMyw4IEBAIHB1YmxpYzoKICAgICBUZXh0VHJhY2tDdWVMaXN0KiBjdWVzKCk7
CiAgICAgVGV4dFRyYWNrQ3VlTGlzdCogYWN0aXZlQ3VlcygpIGNvbnN0OwogCi0gICAgdm9pZCBj
bGVhckNsaWVudCgpIHsgbV9jbGllbnQgPSAwOyB9Ci0gICAgVGV4dFRyYWNrQ2xpZW50KiBjbGll
bnQoKSB7IHJldHVybiBtX2NsaWVudDsgfQorICAgIHZpcnR1YWwgdm9pZCBjbGVhckNsaWVudCgp
IE9WRVJSSURFIHsgbV9jbGllbnQgPSAwOyB9CisgICAgVGV4dFRyYWNrQ2xpZW50KiBjbGllbnQo
KSBjb25zdCB7IHJldHVybiBtX2NsaWVudDsgfQogCiAgICAgdm9pZCBhZGRDdWUoUGFzc1JlZlB0
cjxUZXh0VHJhY2tDdWU+KTsKICAgICB2b2lkIHJlbW92ZUN1ZShUZXh0VHJhY2tDdWUqLCBFeGNl
cHRpb25Db2RlJik7CkBAIC0xNTQsMTUgKzE0OCwyNSBAQCBwdWJsaWM6CiAgICAgUGFzc1JlZlB0
cjxQbGF0Zm9ybVRleHRUcmFjaz4gcGxhdGZvcm1UZXh0VHJhY2soKTsKICNlbmRpZgogCisgICAg
dXNpbmcgUmVmQ291bnRlZDxUcmFja0Jhc2U+OjpyZWY7CisgICAgdXNpbmcgUmVmQ291bnRlZDxU
cmFja0Jhc2U+OjpkZXJlZjsKKwogcHJvdGVjdGVkOgogICAgIFRleHRUcmFjayhTY3JpcHRFeGVj
dXRpb25Db250ZXh0KiwgVGV4dFRyYWNrQ2xpZW50KiwgY29uc3QgQXRvbWljU3RyaW5nJiBraW5k
LCBjb25zdCBBdG9taWNTdHJpbmcmIGxhYmVsLCBjb25zdCBBdG9taWNTdHJpbmcmIGxhbmd1YWdl
LCBUZXh0VHJhY2tUeXBlKTsKICNpZiBFTkFCTEUoVklERU9fVFJBQ0spICYmIEVOQUJMRShXRUJW
VFRfUkVHSU9OUykKICAgICBUZXh0VHJhY2tSZWdpb25MaXN0KiByZWdpb25MaXN0KCk7CiAjZW5k
aWYKIAorICAgIHZpcnR1YWwgRXZlbnRUYXJnZXREYXRhKiBldmVudFRhcmdldERhdGEoKTsKKyAg
ICB2aXJ0dWFsIEV2ZW50VGFyZ2V0RGF0YSogZW5zdXJlRXZlbnRUYXJnZXREYXRhKCk7CisKICAg
ICBSZWZQdHI8VGV4dFRyYWNrQ3VlTGlzdD4gbV9jdWVzOwogCiBwcml2YXRlOgorICAgIHZpcnR1
YWwgYm9vbCBpc1ZhbGlkS2luZChjb25zdCBBdG9taWNTdHJpbmcmKSBjb25zdCBPVkVSUklERTsK
KworICAgIHZpcnR1YWwgdm9pZCByZWZFdmVudFRhcmdldCgpIHsgcmVmKCk7IH0KKyAgICB2aXJ0
dWFsIHZvaWQgZGVyZWZFdmVudFRhcmdldCgpIHsgZGVyZWYoKTsgfQogCiAjaWYgRU5BQkxFKFZJ
REVPX1RSQUNLKSAmJiBFTkFCTEUoV0VCVlRUX1JFR0lPTlMpCiAgICAgVGV4dFRyYWNrUmVnaW9u
TGlzdCogZW5zdXJlVGV4dFRyYWNrUmVnaW9uTGlzdCgpOwpAQCAtMTc3LDEwICsxODEsOCBAQCBw
cml2YXRlOgogCiAgICAgVGV4dFRyYWNrQ3VlTGlzdCogZW5zdXJlVGV4dFRyYWNrQ3VlTGlzdCgp
OwogCi0gICAgSFRNTE1lZGlhRWxlbWVudCogbV9tZWRpYUVsZW1lbnQ7Ci0gICAgQXRvbWljU3Ry
aW5nIG1fa2luZDsKLSAgICBBdG9taWNTdHJpbmcgbV9sYWJlbDsKLSAgICBBdG9taWNTdHJpbmcg
bV9sYW5ndWFnZTsKKyAgICBTY3JpcHRFeGVjdXRpb25Db250ZXh0KiBtX3NjcmlwdEV4ZWN1dGlv
bkNvbnRleHQ7CisgICAgRXZlbnRUYXJnZXREYXRhIG1fZXZlbnRUYXJnZXREYXRhOwogICAgIEF0
b21pY1N0cmluZyBtX21vZGU7CiAgICAgVGV4dFRyYWNrQ2xpZW50KiBtX2NsaWVudDsKICAgICBU
ZXh0VHJhY2tUeXBlIG1fdHJhY2tUeXBlOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvaHRt
bC90cmFjay9UZXh0VHJhY2tMaXN0LmNwcCBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvdHJhY2svVGV4
dFRyYWNrTGlzdC5jcHAKaW5kZXggOGFlNTZjMmIwNWU3NGQ2MDI5ZmIzNGQzYTFkYWM2ZDAwMDE2
NDcyMC4uOWE2Y2RiMTE2ZGFmMThhZDYzNjg1ODRiN2JiOTY1NmEzZDlmNTNjMSAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYkNvcmUvaHRtbC90cmFjay9UZXh0VHJhY2tMaXN0LmNwcAorKysgYi9Tb3Vy
Y2UvV2ViQ29yZS9odG1sL3RyYWNrL1RleHRUcmFja0xpc3QuY3BwCkBAIC0zMCwyMyArMzAsMTYg
QEAKICNpbmNsdWRlICJUZXh0VHJhY2tMaXN0LmgiCiAKICNpbmNsdWRlICJFdmVudE5hbWVzLmgi
Ci0jaW5jbHVkZSAiSFRNTE1lZGlhRWxlbWVudC5oIgogI2luY2x1ZGUgIkluYmFuZFRleHRUcmFj
ay5oIgogI2luY2x1ZGUgIkluYmFuZFRleHRUcmFja1ByaXZhdGUuaCIKICNpbmNsdWRlICJMb2Fk
YWJsZVRleHRUcmFjay5oIgotI2luY2x1ZGUgIlNjcmlwdEV4ZWN1dGlvbkNvbnRleHQuaCIKICNp
bmNsdWRlICJUZXh0VHJhY2suaCIKLSNpbmNsdWRlICJUcmFja0V2ZW50LmgiCiAKIHVzaW5nIG5h
bWVzcGFjZSBXZWJDb3JlOwogCiBUZXh0VHJhY2tMaXN0OjpUZXh0VHJhY2tMaXN0KEhUTUxNZWRp
YUVsZW1lbnQqIG93bmVyLCBTY3JpcHRFeGVjdXRpb25Db250ZXh0KiBjb250ZXh0KQotICAgIDog
bV9jb250ZXh0KGNvbnRleHQpCi0gICAgLCBtX293bmVyKG93bmVyKQotICAgICwgbV9wZW5kaW5n
RXZlbnRUaW1lcih0aGlzLCAmVGV4dFRyYWNrTGlzdDo6YXN5bmNFdmVudFRpbWVyRmlyZWQpCi0g
ICAgLCBtX2Rpc3BhdGNoaW5nRXZlbnRzKDApCisgICAgOiBUcmFja0xpc3RCYXNlKG93bmVyLCBj
b250ZXh0KQogewotICAgIEFTU0VSVChjb250ZXh0LT5pc0RvY3VtZW50KCkpOwogfQogCiBUZXh0
VHJhY2tMaXN0Ojp+VGV4dFRyYWNrTGlzdCgpCkBAIC01OCw4ICs1MSwxMiBAQCB1bnNpZ25lZCBU
ZXh0VHJhY2tMaXN0OjpsZW5ndGgoKSBjb25zdAogICAgIHJldHVybiBtX2FkZFRyYWNrVHJhY2tz
LnNpemUoKSArIG1fZWxlbWVudFRyYWNrcy5zaXplKCkgKyBtX2luYmFuZFRyYWNrcy5zaXplKCk7
CiB9CiAKLWludCBUZXh0VHJhY2tMaXN0OjpnZXRUcmFja0luZGV4KFRleHRUcmFjayAqdGV4dFRy
YWNrKQoraW50IFRleHRUcmFja0xpc3Q6OmdldFRyYWNrSW5kZXgoVHJhY2tCYXNlICp0cmFjaykK
IHsKKyAgICBpZiAodHJhY2stPnR5cGUoKSAhPSBUcmFja0Jhc2U6OlRleHRUcmFjaykKKyAgICAg
ICAgcmV0dXJuIC0xOworICAgIFRleHRUcmFjayogdGV4dFRyYWNrID0gc3RhdGljX2Nhc3Q8VGV4
dFRyYWNrKj4odHJhY2spOworCiAgICAgaWYgKHRleHRUcmFjay0+dHJhY2tUeXBlKCkgPT0gVGV4
dFRyYWNrOjpUcmFja0VsZW1lbnQpCiAgICAgICAgIHJldHVybiBzdGF0aWNfY2FzdDxMb2FkYWJs
ZVRleHRUcmFjayo+KHRleHRUcmFjayktPnRyYWNrRWxlbWVudEluZGV4KCk7CiAKQEAgLTk4LDcg
Kzk1LDcgQEAgaW50IFRleHRUcmFja0xpc3Q6OmdldFRyYWNrSW5kZXhSZWxhdGl2ZVRvUmVuZGVy
ZWRUcmFja3MoVGV4dFRyYWNrICp0ZXh0VHJhY2spCiAgICAgfQogCiAgICAgZm9yIChzaXplX3Qg
aSA9IDA7IGkgPCBtX2luYmFuZFRyYWNrcy5zaXplKCk7ICsraSkgewotICAgICAgICBpZiAoIW1f
aW5iYW5kVHJhY2tzW2ldLT5pc1JlbmRlcmVkKCkpCisgICAgICAgIGlmICghZ2V0SW5iYW5kVHJh
Y2soaSktPmlzUmVuZGVyZWQoKSkKICAgICAgICAgICAgIGNvbnRpbnVlOwogICAgICAgICAKICAg
ICAgICAgaWYgKG1faW5iYW5kVHJhY2tzW2ldID09IHRleHRUcmFjaykKQEAgLTExMSw3ICsxMDgs
NyBAQCBpbnQgVGV4dFRyYWNrTGlzdDo6Z2V0VHJhY2tJbmRleFJlbGF0aXZlVG9SZW5kZXJlZFRy
YWNrcyhUZXh0VHJhY2sgKnRleHRUcmFjaykKICAgICByZXR1cm4gLTE7CiB9CiAKLVRleHRUcmFj
ayogVGV4dFRyYWNrTGlzdDo6aXRlbSh1bnNpZ25lZCBpbmRleCkKK1RleHRUcmFjayogVGV4dFRy
YWNrTGlzdDo6aXRlbSh1bnNpZ25lZCBpbmRleCkgY29uc3QKIHsKICAgICAvLyA0LjguMTAuMTIu
MSBUZXh0IHRyYWNrIG1vZGVsCiAgICAgLy8gVGhlIHRleHQgdHJhY2tzIGFyZSBzb3J0ZWQgYXMg
Zm9sbG93czoKQEAgLTEyOSwzNiArMTI2LDQ1IEBAIFRleHRUcmFjayogVGV4dFRyYWNrTGlzdDo6
aXRlbSh1bnNpZ25lZCBpbmRleCkKIAogICAgIGluZGV4IC09IG1fYWRkVHJhY2tUcmFja3Muc2l6
ZSgpOwogICAgIGlmIChpbmRleCA8IG1faW5iYW5kVHJhY2tzLnNpemUoKSkKLSAgICAgICAgcmV0
dXJuIG1faW5iYW5kVHJhY2tzW2luZGV4XS5nZXQoKTsKKyAgICAgICAgcmV0dXJuIGdldEluYmFu
ZFRyYWNrKGluZGV4KTsKIAogICAgIHJldHVybiAwOwogfQogCi12b2lkIFRleHRUcmFja0xpc3Q6
OmludmFsaWRhdGVUcmFja0luZGV4ZXNBZnRlclRyYWNrKFRleHRUcmFjayogdHJhY2spCitUZXh0
VHJhY2sqIFRleHRUcmFja0xpc3Q6OmdldEluYmFuZFRyYWNrKHVuc2lnbmVkIGluZGV4KSBjb25z
dAogewotICAgIFZlY3RvcjxSZWZQdHI8VGV4dFRyYWNrPiA+KiB0cmFja3MgPSAwOworICAgIFRy
YWNrQmFzZSogdHJhY2sgPSBtX2luYmFuZFRyYWNrc1tpbmRleF0uZ2V0KCk7CisgICAgQVNTRVJU
KHRyYWNrLT50eXBlKCkgPT0gVHJhY2tCYXNlOjpUZXh0VHJhY2spOworICAgIHJldHVybiBzdGF0
aWNfY2FzdDxUZXh0VHJhY2sqPih0cmFjayk7Cit9CiAKK3ZvaWQgVGV4dFRyYWNrTGlzdDo6aW52
YWxpZGF0ZVRyYWNrSW5kZXhlc0FmdGVyVHJhY2soVGV4dFRyYWNrKiB0cmFjaykKK3sKKyAgICBz
aXplX3QgaW5kZXggPSBub3RGb3VuZDsKICAgICBpZiAodHJhY2stPnRyYWNrVHlwZSgpID09IFRl
eHRUcmFjazo6VHJhY2tFbGVtZW50KSB7Ci0gICAgICAgIHRyYWNrcyA9ICZtX2VsZW1lbnRUcmFj
a3M7CisgICAgICAgIGluZGV4ID0gbV9lbGVtZW50VHJhY2tzLmZpbmQodHJhY2spOworICAgICAg
ICBpZiAoaW5kZXggPT0gbm90Rm91bmQpCisgICAgICAgICAgICByZXR1cm47CisgICAgICAgIGZv
ciAoc2l6ZV90IGkgPSBpbmRleDsgaSA8IG1fZWxlbWVudFRyYWNrcy5zaXplKCk7ICsraSkKKyAg
ICAgICAgICAgIG1fZWxlbWVudFRyYWNrcy5hdChpbmRleCktPmludmFsaWRhdGVUcmFja0luZGV4
KCk7CisgICAgfSBlbHNlIGlmICh0cmFjay0+dHJhY2tUeXBlKCkgPT0gVGV4dFRyYWNrOjpBZGRU
cmFjaykgeworICAgICAgICBpZiAoaW5kZXggPT0gbm90Rm91bmQpIHsKKyAgICAgICAgICAgIGlu
ZGV4ID0gbV9hZGRUcmFja1RyYWNrcy5maW5kKHRyYWNrKTsKKyAgICAgICAgICAgIGlmIChpbmRl
eCA9PSBub3RGb3VuZCkKKyAgICAgICAgICAgICAgICByZXR1cm47CisgICAgICAgIH0KICAgICAg
ICAgZm9yIChzaXplX3QgaSA9IDA7IGkgPCBtX2FkZFRyYWNrVHJhY2tzLnNpemUoKTsgKytpKQog
ICAgICAgICAgICAgbV9hZGRUcmFja1RyYWNrc1tpXS0+aW52YWxpZGF0ZVRyYWNrSW5kZXgoKTsK
KyAgICB9IGVsc2UgaWYgKHRyYWNrLT50cmFja1R5cGUoKSA9PSBUZXh0VHJhY2s6OkluQmFuZCkg
eworICAgICAgICBpZiAoaW5kZXggPT0gbm90Rm91bmQpIHsKKyAgICAgICAgICAgIGluZGV4ID0g
bV9pbmJhbmRUcmFja3MuZmluZCh0cmFjayk7CisgICAgICAgICAgICBpZiAoaW5kZXggPT0gbm90
Rm91bmQpCisgICAgICAgICAgICAgICAgcmV0dXJuOworICAgICAgICB9CiAgICAgICAgIGZvciAo
c2l6ZV90IGkgPSAwOyBpIDwgbV9pbmJhbmRUcmFja3Muc2l6ZSgpOyArK2kpCi0gICAgICAgICAg
ICBtX2luYmFuZFRyYWNrc1tpXS0+aW52YWxpZGF0ZVRyYWNrSW5kZXgoKTsKLSAgICB9IGVsc2Ug
aWYgKHRyYWNrLT50cmFja1R5cGUoKSA9PSBUZXh0VHJhY2s6OkFkZFRyYWNrKSB7Ci0gICAgICAg
IHRyYWNrcyA9ICZtX2FkZFRyYWNrVHJhY2tzOwotICAgICAgICBmb3IgKHNpemVfdCBpID0gMDsg
aSA8IG1faW5iYW5kVHJhY2tzLnNpemUoKTsgKytpKQotICAgICAgICAgICAgbV9pbmJhbmRUcmFj
a3NbaV0tPmludmFsaWRhdGVUcmFja0luZGV4KCk7Ci0gICAgfSBlbHNlIGlmICh0cmFjay0+dHJh
Y2tUeXBlKCkgPT0gVGV4dFRyYWNrOjpJbkJhbmQpCi0gICAgICAgIHRyYWNrcyA9ICZtX2luYmFu
ZFRyYWNrczsKLSAgICBlbHNlCisgICAgICAgICAgICBnZXRJbmJhbmRUcmFjayhpKS0+aW52YWxp
ZGF0ZVRyYWNrSW5kZXgoKTsKKyAgICB9IGVsc2UKICAgICAgICAgQVNTRVJUX05PVF9SRUFDSEVE
KCk7Ci0KLSAgICBzaXplX3QgaW5kZXggPSB0cmFja3MtPmZpbmQodHJhY2spOwotICAgIGlmIChp
bmRleCA9PSBub3RGb3VuZCkKLSAgICAgICAgcmV0dXJuOwotCi0gICAgZm9yIChzaXplX3QgaSA9
IGluZGV4OyBpIDwgdHJhY2tzLT5zaXplKCk7ICsraSkKLSAgICAgICAgdHJhY2tzLT5hdChpbmRl
eCktPmludmFsaWRhdGVUcmFja0luZGV4KCk7CiB9CiAKIHZvaWQgVGV4dFRyYWNrTGlzdDo6YXBw
ZW5kKFBhc3NSZWZQdHI8VGV4dFRyYWNrPiBwcnBUcmFjaykKQEAgLTE4MCw1MSArMTg2LDYwIEBA
IHZvaWQgVGV4dFRyYWNrTGlzdDo6YXBwZW5kKFBhc3NSZWZQdHI8VGV4dFRyYWNrPiBwcnBUcmFj
aykKIAogICAgIGludmFsaWRhdGVUcmFja0luZGV4ZXNBZnRlclRyYWNrKHRyYWNrLmdldCgpKTsK
IAotICAgIEFTU0VSVCghdHJhY2stPm1lZGlhRWxlbWVudCgpIHx8IHRyYWNrLT5tZWRpYUVsZW1l
bnQoKSA9PSBtX293bmVyKTsKLSAgICB0cmFjay0+c2V0TWVkaWFFbGVtZW50KG1fb3duZXIpOwor
ICAgIEFTU0VSVCghdHJhY2stPm1lZGlhRWxlbWVudCgpIHx8IHRyYWNrLT5tZWRpYUVsZW1lbnQo
KSA9PSBvd25lcigpKTsKKyAgICB0cmFjay0+c2V0TWVkaWFFbGVtZW50KG93bmVyKCkpOwogCiAg
ICAgc2NoZWR1bGVBZGRUcmFja0V2ZW50KHRyYWNrLnJlbGVhc2UoKSk7CiB9CiAKLXZvaWQgVGV4
dFRyYWNrTGlzdDo6cmVtb3ZlKFRleHRUcmFjayogdHJhY2spCit2b2lkIFRleHRUcmFja0xpc3Q6
OnJlbW92ZShUcmFja0Jhc2UqIHRyYWNrKQogewotICAgIFZlY3RvcjxSZWZQdHI8VGV4dFRyYWNr
PiA+KiB0cmFja3MgPSAwOwotCi0gICAgaWYgKHRyYWNrLT50cmFja1R5cGUoKSA9PSBUZXh0VHJh
Y2s6OlRyYWNrRWxlbWVudCkKLSAgICAgICAgdHJhY2tzID0gJm1fZWxlbWVudFRyYWNrczsKLSAg
ICBlbHNlIGlmICh0cmFjay0+dHJhY2tUeXBlKCkgPT0gVGV4dFRyYWNrOjpBZGRUcmFjaykKLSAg
ICAgICAgdHJhY2tzID0gJm1fYWRkVHJhY2tUcmFja3M7Ci0gICAgZWxzZSBpZiAodHJhY2stPnRy
YWNrVHlwZSgpID09IFRleHRUcmFjazo6SW5CYW5kKQotICAgICAgICB0cmFja3MgPSAmbV9pbmJh
bmRUcmFja3M7CisgICAgaWYgKHRyYWNrLT50eXBlKCkgIT0gVHJhY2tCYXNlOjpUZXh0VHJhY2sp
CisgICAgICAgIHJldHVybjsKKyAgICBUZXh0VHJhY2sqIHRleHRUcmFjayA9IHN0YXRpY19jYXN0
PFRleHRUcmFjayo+KHRyYWNrKTsKKworICAgIHNpemVfdCBpbmRleCA9IG5vdEZvdW5kOworICAg
IGlmICh0ZXh0VHJhY2stPnRyYWNrVHlwZSgpID09IFRleHRUcmFjazo6VHJhY2tFbGVtZW50KQor
ICAgICAgICBtX2VsZW1lbnRUcmFja3MuZmluZCh0ZXh0VHJhY2spOworICAgIGVsc2UgaWYgKHRl
eHRUcmFjay0+dHJhY2tUeXBlKCkgPT0gVGV4dFRyYWNrOjpBZGRUcmFjaykKKyAgICAgICAgbV9h
ZGRUcmFja1RyYWNrcy5maW5kKHRleHRUcmFjayk7CisgICAgZWxzZSBpZiAodGV4dFRyYWNrLT50
cmFja1R5cGUoKSA9PSBUZXh0VHJhY2s6OkluQmFuZCkKKyAgICAgICAgbV9pbmJhbmRUcmFja3Mu
ZmluZCh0ZXh0VHJhY2spOwogICAgIGVsc2UKICAgICAgICAgQVNTRVJUX05PVF9SRUFDSEVEKCk7
CiAKLSAgICBzaXplX3QgaW5kZXggPSB0cmFja3MtPmZpbmQodHJhY2spOwogICAgIGlmIChpbmRl
eCA9PSBub3RGb3VuZCkKICAgICAgICAgcmV0dXJuOwogCi0gICAgaW52YWxpZGF0ZVRyYWNrSW5k
ZXhlc0FmdGVyVHJhY2sodHJhY2spOworICAgIGludmFsaWRhdGVUcmFja0luZGV4ZXNBZnRlclRy
YWNrKHRleHRUcmFjayk7CiAKLSAgICBBU1NFUlQoIXRyYWNrLT5tZWRpYUVsZW1lbnQoKSB8fCB0
cmFjay0+bWVkaWFFbGVtZW50KCkgPT0gbV9vd25lcik7CisgICAgQVNTRVJUKCF0cmFjay0+bWVk
aWFFbGVtZW50KCkgfHwgdHJhY2stPm1lZGlhRWxlbWVudCgpID09IG93bmVyKCkpOwogICAgIHRy
YWNrLT5zZXRNZWRpYUVsZW1lbnQoMCk7CiAKLSAgICB0cmFja3MtPnJlbW92ZShpbmRleCk7Cisg
ICAgaWYgKHRleHRUcmFjay0+dHJhY2tUeXBlKCkgPT0gVGV4dFRyYWNrOjpUcmFja0VsZW1lbnQp
CisgICAgICAgIG1fZWxlbWVudFRyYWNrcy5yZW1vdmUoaW5kZXgpOworICAgIGVsc2UgaWYgKHRl
eHRUcmFjay0+dHJhY2tUeXBlKCkgPT0gVGV4dFRyYWNrOjpBZGRUcmFjaykKKyAgICAgICAgbV9h
ZGRUcmFja1RyYWNrcy5yZW1vdmUoaW5kZXgpOworICAgIGVsc2UgaWYgKHRleHRUcmFjay0+dHJh
Y2tUeXBlKCkgPT0gVGV4dFRyYWNrOjpJbkJhbmQpCisgICAgICAgIG1faW5iYW5kVHJhY2tzLnJl
bW92ZShpbmRleCk7CisgICAgZWxzZQorICAgICAgICBBU1NFUlRfTk9UX1JFQUNIRUQoKTsKIH0K
IAotYm9vbCBUZXh0VHJhY2tMaXN0Ojpjb250YWlucyhUZXh0VHJhY2sqIHRyYWNrKSBjb25zdAor
Ym9vbCBUZXh0VHJhY2tMaXN0Ojpjb250YWlucyhUcmFja0Jhc2UqIHRyYWNrKSBjb25zdAogewot
ICAgIGNvbnN0IFZlY3RvcjxSZWZQdHI8VGV4dFRyYWNrPiA+KiB0cmFja3MgPSAwOwotICAgIAot
ICAgIGlmICh0cmFjay0+dHJhY2tUeXBlKCkgPT0gVGV4dFRyYWNrOjpUcmFja0VsZW1lbnQpCi0g
ICAgICAgIHRyYWNrcyA9ICZtX2VsZW1lbnRUcmFja3M7Ci0gICAgZWxzZSBpZiAodHJhY2stPnRy
YWNrVHlwZSgpID09IFRleHRUcmFjazo6QWRkVHJhY2spCi0gICAgICAgIHRyYWNrcyA9ICZtX2Fk
ZFRyYWNrVHJhY2tzOwotICAgIGVsc2UgaWYgKHRyYWNrLT50cmFja1R5cGUoKSA9PSBUZXh0VHJh
Y2s6OkluQmFuZCkKLSAgICAgICAgdHJhY2tzID0gJm1faW5iYW5kVHJhY2tzOwotICAgIGVsc2UK
LSAgICAgICAgQVNTRVJUX05PVF9SRUFDSEVEKCk7CisgICAgaWYgKHRyYWNrLT50eXBlKCkgIT0g
VHJhY2tCYXNlOjpUZXh0VHJhY2spCisgICAgICAgIHJldHVybiBmYWxzZTsKKyAgICBUZXh0VHJh
Y2sqIHRleHRUcmFjayA9IHN0YXRpY19jYXN0PFRleHRUcmFjayo+KHRyYWNrKTsKICAgICAKLSAg
ICByZXR1cm4gdHJhY2tzLT5maW5kKHRyYWNrKSAhPSBub3RGb3VuZDsKKyAgICBpZiAodGV4dFRy
YWNrLT50cmFja1R5cGUoKSA9PSBUZXh0VHJhY2s6OlRyYWNrRWxlbWVudCkKKyAgICAgICAgcmV0
dXJuIG1fZWxlbWVudFRyYWNrcy5maW5kKHRyYWNrKSAhPSBub3RGb3VuZDsKKyAgICBpZiAodGV4
dFRyYWNrLT50cmFja1R5cGUoKSA9PSBUZXh0VHJhY2s6OkFkZFRyYWNrKQorICAgICAgICByZXR1
cm4gbV9hZGRUcmFja1RyYWNrcy5maW5kKHRyYWNrKSAhPSBub3RGb3VuZDsKKyAgICBpZiAodGV4
dFRyYWNrLT50cmFja1R5cGUoKSA9PSBUZXh0VHJhY2s6OkluQmFuZCkKKyAgICAgICAgcmV0dXJu
IG1faW5iYW5kVHJhY2tzLmZpbmQodHJhY2spICE9IG5vdEZvdW5kOworICAgIEFTU0VSVF9OT1Rf
UkVBQ0hFRCgpOworICAgIHJldHVybiBmYWxzZTsKIH0KIAogY29uc3QgQXRvbWljU3RyaW5nJiBU
ZXh0VHJhY2tMaXN0OjppbnRlcmZhY2VOYW1lKCkgY29uc3QKQEAgLTIzMiw0MSArMjQ3LDQgQEAg
Y29uc3QgQXRvbWljU3RyaW5nJiBUZXh0VHJhY2tMaXN0OjppbnRlcmZhY2VOYW1lKCkgY29uc3QK
ICAgICByZXR1cm4gZXZlbnROYW1lcygpLmludGVyZmFjZUZvclRleHRUcmFja0xpc3Q7CiB9CiAK
LXZvaWQgVGV4dFRyYWNrTGlzdDo6c2NoZWR1bGVBZGRUcmFja0V2ZW50KFBhc3NSZWZQdHI8VGV4
dFRyYWNrPiB0cmFjaykKLXsKLSAgICAvLyA0LjguMTAuMTIuMyBTb3VyY2luZyBvdXQtb2YtYmFu
ZCB0ZXh0IHRyYWNrcwotICAgIC8vIDQuOC4xMC4xMi40IFRleHQgdHJhY2sgQVBJCi0gICAgLy8g
Li4uIHRoZW4gcXVldWUgYSB0YXNrIHRvIGZpcmUgYW4gZXZlbnQgd2l0aCB0aGUgbmFtZSBhZGR0
cmFjaywgdGhhdCBkb2VzIG5vdCAKLSAgICAvLyBidWJibGUgYW5kIGlzIG5vdCBjYW5jZWxhYmxl
LCBhbmQgdGhhdCB1c2VzIHRoZSBUcmFja0V2ZW50IGludGVyZmFjZSwgd2l0aCAKLSAgICAvLyB0
aGUgdHJhY2sgYXR0cmlidXRlIGluaXRpYWxpemVkIHRvIHRoZSB0ZXh0IHRyYWNrJ3MgVGV4dFRy
YWNrIG9iamVjdCwgYXQgCi0gICAgLy8gdGhlIG1lZGlhIGVsZW1lbnQncyB0ZXh0VHJhY2tzIGF0
dHJpYnV0ZSdzIFRleHRUcmFja0xpc3Qgb2JqZWN0LgotCi0gICAgUmVmUHRyPFRleHRUcmFjaz4g
dHJhY2tSZWYgPSB0cmFjazsKLSAgICBUcmFja0V2ZW50SW5pdCBpbml0aWFsaXplcjsKLSAgICBp
bml0aWFsaXplci50cmFjayA9IHRyYWNrUmVmOwotICAgIGluaXRpYWxpemVyLmJ1YmJsZXMgPSBm
YWxzZTsKLSAgICBpbml0aWFsaXplci5jYW5jZWxhYmxlID0gZmFsc2U7Ci0KLSAgICBtX3BlbmRp
bmdFdmVudHMuYXBwZW5kKFRyYWNrRXZlbnQ6OmNyZWF0ZShldmVudE5hbWVzKCkuYWRkdHJhY2tF
dmVudCwgaW5pdGlhbGl6ZXIpKTsKLSAgICBpZiAoIW1fcGVuZGluZ0V2ZW50VGltZXIuaXNBY3Rp
dmUoKSkKLSAgICAgICAgbV9wZW5kaW5nRXZlbnRUaW1lci5zdGFydE9uZVNob3QoMCk7Ci19Ci0K
LXZvaWQgVGV4dFRyYWNrTGlzdDo6YXN5bmNFdmVudFRpbWVyRmlyZWQoVGltZXI8VGV4dFRyYWNr
TGlzdD4qKQotewotICAgIFZlY3RvcjxSZWZQdHI8RXZlbnQ+ID4gcGVuZGluZ0V2ZW50czsKLQot
ICAgICsrbV9kaXNwYXRjaGluZ0V2ZW50czsKLSAgICBtX3BlbmRpbmdFdmVudHMuc3dhcChwZW5k
aW5nRXZlbnRzKTsKLSAgICBzaXplX3QgY291bnQgPSBwZW5kaW5nRXZlbnRzLnNpemUoKTsKLSAg
ICBmb3IgKHNpemVfdCBpbmRleCA9IDA7IGluZGV4IDwgY291bnQ7ICsraW5kZXgpCi0gICAgICAg
IGRpc3BhdGNoRXZlbnQocGVuZGluZ0V2ZW50c1tpbmRleF0ucmVsZWFzZSgpLCBJR05PUkVfRVhD
RVBUSU9OKTsKLSAgICAtLW1fZGlzcGF0Y2hpbmdFdmVudHM7Ci19Ci0KLU5vZGUqIFRleHRUcmFj
a0xpc3Q6Om93bmVyKCkgY29uc3QKLXsKLSAgICByZXR1cm4gbV9vd25lcjsKLX0KLQogI2VuZGlm
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9odG1sL3RyYWNrL1RleHRUcmFja0xpc3QuaCBi
L1NvdXJjZS9XZWJDb3JlL2h0bWwvdHJhY2svVGV4dFRyYWNrTGlzdC5oCmluZGV4IDFlZTE1Yzkz
Yzk4NzllNWM5YWE1ZTVkNGI2OTFkNDdjMDU0NjJhMjEuLmVmNTI2N2Q0MTU4ZDg1OTA2OTM1NDQw
ZjZjODJmMDg4ZTRlZDMxNDEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvdHJhY2sv
VGV4dFRyYWNrTGlzdC5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvdHJhY2svVGV4dFRyYWNr
TGlzdC5oCkBAIC0yOCwyMSArMjgsMTMgQEAKIAogI2lmIEVOQUJMRShWSURFT19UUkFDSykKIAot
I2luY2x1ZGUgIkV2ZW50TGlzdGVuZXIuaCIKLSNpbmNsdWRlICJFdmVudFRhcmdldC5oIgotI2lu
Y2x1ZGUgIlRpbWVyLmgiCi0jaW5jbHVkZSA8YWxnb3JpdGhtPgotI2luY2x1ZGUgPHd0Zi9QYXNz
UmVmUHRyLmg+Ci0jaW5jbHVkZSA8d3RmL1JlZkNvdW50ZWQuaD4KLSNpbmNsdWRlIDx3dGYvVmVj
dG9yLmg+CisjaW5jbHVkZSAiVHJhY2tMaXN0QmFzZS5oIgogCiBuYW1lc3BhY2UgV2ViQ29yZSB7
CiAKLWNsYXNzIEhUTUxNZWRpYUVsZW1lbnQ7CiBjbGFzcyBUZXh0VHJhY2s7Ci1jbGFzcyBUZXh0
VHJhY2tMaXN0OwogCi1jbGFzcyBUZXh0VHJhY2tMaXN0IDogcHVibGljIFJlZkNvdW50ZWQ8VGV4
dFRyYWNrTGlzdD4sIHB1YmxpYyBFdmVudFRhcmdldCB7CitjbGFzcyBUZXh0VHJhY2tMaXN0IDog
cHVibGljIFRyYWNrTGlzdEJhc2UgewogcHVibGljOgogICAgIHN0YXRpYyBQYXNzUmVmUHRyPFRl
eHRUcmFja0xpc3Q+IGNyZWF0ZShIVE1MTWVkaWFFbGVtZW50KiBvd25lciwgU2NyaXB0RXhlY3V0
aW9uQ29udGV4dCogY29udGV4dCkKICAgICB7CkBAIC01MCw1NCArNDIsMjcgQEAgcHVibGljOgog
ICAgIH0KICAgICB+VGV4dFRyYWNrTGlzdCgpOwogCi0gICAgdW5zaWduZWQgbGVuZ3RoKCkgY29u
c3Q7Ci0gICAgaW50IGdldFRyYWNrSW5kZXgoVGV4dFRyYWNrKik7CiAgICAgaW50IGdldFRyYWNr
SW5kZXhSZWxhdGl2ZVRvUmVuZGVyZWRUcmFja3MoVGV4dFRyYWNrKik7Ci0gICAgYm9vbCBjb250
YWlucyhUZXh0VHJhY2sqKSBjb25zdDsKIAotICAgIFRleHRUcmFjayogaXRlbSh1bnNpZ25lZCBp
bmRleCk7CisgICAgdmlydHVhbCB1bnNpZ25lZCBsZW5ndGgoKSBjb25zdCBPVkVSUklERTsKKyAg
ICB2aXJ0dWFsIGludCBnZXRUcmFja0luZGV4KFRyYWNrQmFzZSopIE9WRVJSSURFOworICAgIHZp
cnR1YWwgYm9vbCBjb250YWlucyhUcmFja0Jhc2UqKSBjb25zdCBPVkVSUklERTsKKworICAgIFRl
eHRUcmFjayogaXRlbSh1bnNpZ25lZCBpbmRleCkgY29uc3Q7CiAgICAgdm9pZCBhcHBlbmQoUGFz
c1JlZlB0cjxUZXh0VHJhY2s+KTsKLSAgICB2b2lkIHJlbW92ZShUZXh0VHJhY2sqKTsKKyAgICB2
aXJ0dWFsIHZvaWQgcmVtb3ZlKFRyYWNrQmFzZSopIE9WRVJSSURFOwogCiAgICAgLy8gRXZlbnRU
YXJnZXQKICAgICB2aXJ0dWFsIGNvbnN0IEF0b21pY1N0cmluZyYgaW50ZXJmYWNlTmFtZSgpIGNv
bnN0OwotICAgIHVzaW5nIFJlZkNvdW50ZWQ8VGV4dFRyYWNrTGlzdD46OnJlZjsKLSAgICB1c2lu
ZyBSZWZDb3VudGVkPFRleHRUcmFja0xpc3Q+OjpkZXJlZjsKLSAgICB2aXJ0dWFsIFNjcmlwdEV4
ZWN1dGlvbkNvbnRleHQqIHNjcmlwdEV4ZWN1dGlvbkNvbnRleHQoKSBjb25zdCB7IHJldHVybiBt
X2NvbnRleHQ7IH0KLQotICAgIERFRklORV9BVFRSSUJVVEVfRVZFTlRfTElTVEVORVIoYWRkdHJh
Y2spOwotCi0gICAgdm9pZCBjbGVhck93bmVyKCkgeyBtX293bmVyID0gMDsgfQotICAgIE5vZGUq
IG93bmVyKCkgY29uc3Q7Ci0KLSAgICBib29sIGlzRmlyaW5nRXZlbnRMaXN0ZW5lcnMoKSB7IHJl
dHVybiBtX2Rpc3BhdGNoaW5nRXZlbnRzOyB9CiAKIHByaXZhdGU6CiAgICAgVGV4dFRyYWNrTGlz
dChIVE1MTWVkaWFFbGVtZW50KiwgU2NyaXB0RXhlY3V0aW9uQ29udGV4dCopOwogCi0gICAgLy8g
RXZlbnRUYXJnZXQKLSAgICB2aXJ0dWFsIHZvaWQgcmVmRXZlbnRUYXJnZXQoKSB7IHJlZigpOyB9
Ci0gICAgdmlydHVhbCB2b2lkIGRlcmVmRXZlbnRUYXJnZXQoKSB7IGRlcmVmKCk7IH0KLSAgICB2
aXJ0dWFsIEV2ZW50VGFyZ2V0RGF0YSogZXZlbnRUYXJnZXREYXRhKCkgeyByZXR1cm4gJm1fZXZl
bnRUYXJnZXREYXRhOyB9Ci0gICAgdmlydHVhbCBFdmVudFRhcmdldERhdGEqIGVuc3VyZUV2ZW50
VGFyZ2V0RGF0YSgpIHsgcmV0dXJuICZtX2V2ZW50VGFyZ2V0RGF0YTsgfQotCi0gICAgdm9pZCBz
Y2hlZHVsZUFkZFRyYWNrRXZlbnQoUGFzc1JlZlB0cjxUZXh0VHJhY2s+KTsKLSAgICB2b2lkIGFz
eW5jRXZlbnRUaW1lckZpcmVkKFRpbWVyPFRleHRUcmFja0xpc3Q+Kik7Ci0KKyAgICBUZXh0VHJh
Y2sqIGdldEluYmFuZFRyYWNrKHVuc2lnbmVkKSBjb25zdDsKICAgICB2b2lkIGludmFsaWRhdGVU
cmFja0luZGV4ZXNBZnRlclRyYWNrKFRleHRUcmFjayopOwogCi0gICAgU2NyaXB0RXhlY3V0aW9u
Q29udGV4dCogbV9jb250ZXh0OwotICAgIEhUTUxNZWRpYUVsZW1lbnQqIG1fb3duZXI7Ci0KLSAg
ICBWZWN0b3I8UmVmUHRyPEV2ZW50PiA+IG1fcGVuZGluZ0V2ZW50czsKLSAgICBUaW1lcjxUZXh0
VHJhY2tMaXN0PiBtX3BlbmRpbmdFdmVudFRpbWVyOwotCi0gICAgRXZlbnRUYXJnZXREYXRhIG1f
ZXZlbnRUYXJnZXREYXRhOwotICAgIFZlY3RvcjxSZWZQdHI8VGV4dFRyYWNrPiA+IG1fYWRkVHJh
Y2tUcmFja3M7Ci0gICAgVmVjdG9yPFJlZlB0cjxUZXh0VHJhY2s+ID4gbV9lbGVtZW50VHJhY2tz
OwotICAgIFZlY3RvcjxSZWZQdHI8VGV4dFRyYWNrPiA+IG1faW5iYW5kVHJhY2tzOwotCi0gICAg
aW50IG1fZGlzcGF0Y2hpbmdFdmVudHM7CisgICAgVmVjdG9yPFJlZlB0cjxXZWJDb3JlOjpUZXh0
VHJhY2s+ID4gbV9hZGRUcmFja1RyYWNrczsKKyAgICBWZWN0b3I8UmVmUHRyPFdlYkNvcmU6OlRl
eHRUcmFjaz4gPiBtX2VsZW1lbnRUcmFja3M7CiB9OwogCiB9IC8vIG5hbWVzcGFjZSBXZWJDb3Jl
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9odG1sL3RyYWNrL1RyYWNrQmFzZS5jcHAgYi9T
b3VyY2UvV2ViQ29yZS9odG1sL3RyYWNrL1RyYWNrQmFzZS5jcHAKaW5kZXggNmEyYzM1ODIzZTYx
OTYyYTM3YzlmOGY0Y2VmZDk4OWRkYWI1MGRmZS4uZGU0ZTM4NTc0Y2Q4MTgwMmE2YWUwMTAxYTMw
MGM2YjI5MGI5ODJhYyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvaHRtbC90cmFjay9UcmFj
a0Jhc2UuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvdHJhY2svVHJhY2tCYXNlLmNwcApA
QCAtMzAsOCArMzAsMTAgQEAKIAogbmFtZXNwYWNlIFdlYkNvcmUgewogCi1UcmFja0Jhc2U6OlRy
YWNrQmFzZShTY3JpcHRFeGVjdXRpb25Db250ZXh0KiBjb250ZXh0LCBUeXBlIHR5cGUpCi0gICAg
OiBtX3NjcmlwdEV4ZWN1dGlvbkNvbnRleHQoY29udGV4dCkKK1RyYWNrQmFzZTo6VHJhY2tCYXNl
KFR5cGUgdHlwZSwgY29uc3QgQXRvbWljU3RyaW5nJiBsYWJlbCwgY29uc3QgQXRvbWljU3RyaW5n
JiBsYW5ndWFnZSkKKyAgICA6IG1fbWVkaWFFbGVtZW50KDApCisgICAgLCBtX2xhYmVsKGxhYmVs
KQorICAgICwgbV9sYW5ndWFnZShsYW5ndWFnZSkKIHsKICAgICBBU1NFUlQodHlwZSAhPSBCYXNl
VHJhY2spOwogICAgIG1fdHlwZSA9IHR5cGU7CkBAIC00MSwyNCArNDMsMTQgQEAgVHJhY2tCYXNl
Ojp+VHJhY2tCYXNlKCkKIHsKIH0KIAotY29uc3QgQXRvbWljU3RyaW5nJiBUcmFja0Jhc2U6Omlu
dGVyZmFjZU5hbWUoKSBjb25zdAordm9pZCBUcmFja0Jhc2U6OnNldEtpbmQoY29uc3QgQXRvbWlj
U3RyaW5nJiBraW5kKQogewotICAgIHJldHVybiBldmVudE5hbWVzKCkuaW50ZXJmYWNlRm9yVGV4
dFRyYWNrOwotfQotCi1TY3JpcHRFeGVjdXRpb25Db250ZXh0KiBUcmFja0Jhc2U6OnNjcmlwdEV4
ZWN1dGlvbkNvbnRleHQoKSBjb25zdAotewotICAgIHJldHVybiBtX3NjcmlwdEV4ZWN1dGlvbkNv
bnRleHQ7Ci19CisgICAgU3RyaW5nIG9sZEtpbmQgPSBtX2tpbmQ7CiAKLUV2ZW50VGFyZ2V0RGF0
YSogVHJhY2tCYXNlOjpldmVudFRhcmdldERhdGEoKQotewotICAgIHJldHVybiAmbV9ldmVudFRh
cmdldERhdGE7Ci19Ci0KLUV2ZW50VGFyZ2V0RGF0YSogVHJhY2tCYXNlOjplbnN1cmVFdmVudFRh
cmdldERhdGEoKQotewotICAgIHJldHVybiAmbV9ldmVudFRhcmdldERhdGE7CisgICAgaWYgKGlz
VmFsaWRLaW5kKGtpbmQpKQorICAgICAgICBtX2tpbmQgPSBraW5kOworICAgIGVsc2UKKyAgICAg
ICAgbV9raW5kID0gZGVmYXVsdEtpbmRLZXl3b3JkKCk7CiB9CiAKIH0gLy8gbmFtZXNwYWNlIFdl
YkNvcmUKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvdHJhY2svVHJhY2tCYXNlLmgg
Yi9Tb3VyY2UvV2ViQ29yZS9odG1sL3RyYWNrL1RyYWNrQmFzZS5oCmluZGV4IGMwMDY2MGYwNTNh
ZDY0OTQxNjU4ZjIwZDc1MDMwY2FiYzkzMjc5ODkuLjU0NjI4OThjMGUwNTdlMjI3MGM5MTQxYTZh
ZDUyYjQzMmRhNzI0OGMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvdHJhY2svVHJh
Y2tCYXNlLmgKKysrIGIvU291cmNlL1dlYkNvcmUvaHRtbC90cmFjay9UcmFja0Jhc2UuaApAQCAt
MzMsMzUgKzMzLDQyIEBACiAKIG5hbWVzcGFjZSBXZWJDb3JlIHsKIAotY2xhc3MgU2NyaXB0RXhl
Y3V0aW9uQ29udGV4dDsKK2NsYXNzIEhUTUxNZWRpYUVsZW1lbnQ7CiAKLWNsYXNzIFRyYWNrQmFz
ZSA6IHB1YmxpYyBSZWZDb3VudGVkPFRyYWNrQmFzZT4sIHB1YmxpYyBFdmVudFRhcmdldCB7Citj
bGFzcyBUcmFja0Jhc2UgOiBwdWJsaWMgUmVmQ291bnRlZDxUcmFja0Jhc2U+IHsKIHB1YmxpYzoK
ICAgICB2aXJ0dWFsIH5UcmFja0Jhc2UoKTsKIAogICAgIGVudW0gVHlwZSB7IEJhc2VUcmFjaywg
VGV4dFRyYWNrLCBBdWRpb1RyYWNrLCBWaWRlb1RyYWNrIH07CiAgICAgVHlwZSB0eXBlKCkgY29u
c3QgeyByZXR1cm4gbV90eXBlOyB9CiAKLSAgICB2aXJ0dWFsIGNvbnN0IEF0b21pY1N0cmluZyYg
aW50ZXJmYWNlTmFtZSgpIGNvbnN0OwotICAgIHZpcnR1YWwgU2NyaXB0RXhlY3V0aW9uQ29udGV4
dCogc2NyaXB0RXhlY3V0aW9uQ29udGV4dCgpIGNvbnN0OwotICAgIAotICAgIHVzaW5nIFJlZkNv
dW50ZWQ8VHJhY2tCYXNlPjo6cmVmOwotICAgIHVzaW5nIFJlZkNvdW50ZWQ8VHJhY2tCYXNlPjo6
ZGVyZWY7CisgICAgdm9pZCBzZXRNZWRpYUVsZW1lbnQoSFRNTE1lZGlhRWxlbWVudCogZWxlbWVu
dCkgeyBtX21lZGlhRWxlbWVudCA9IGVsZW1lbnQ7IH0KKyAgICBIVE1MTWVkaWFFbGVtZW50KiBt
ZWRpYUVsZW1lbnQoKSB7IHJldHVybiBtX21lZGlhRWxlbWVudDsgfQorCisgICAgQXRvbWljU3Ry
aW5nIGtpbmQoKSBjb25zdCB7IHJldHVybiBtX2tpbmQ7IH0KKyAgICB2aXJ0dWFsIHZvaWQgc2V0
S2luZChjb25zdCBBdG9taWNTdHJpbmcmKTsKKworICAgIEF0b21pY1N0cmluZyBsYWJlbCgpIGNv
bnN0IHsgcmV0dXJuIG1fbGFiZWw7IH0KKyAgICB2b2lkIHNldExhYmVsKGNvbnN0IEF0b21pY1N0
cmluZyYgbGFiZWwpIHsgbV9sYWJlbCA9IGxhYmVsOyB9CisKKyAgICBBdG9taWNTdHJpbmcgbGFu
Z3VhZ2UoKSBjb25zdCB7IHJldHVybiBtX2xhbmd1YWdlOyB9CisgICAgdm9pZCBzZXRMYW5ndWFn
ZShjb25zdCBBdG9taWNTdHJpbmcmIGxhbmd1YWdlKSB7IG1fbGFuZ3VhZ2UgPSBsYW5ndWFnZTsg
fQorCisgICAgdmlydHVhbCB2b2lkIGNsZWFyQ2xpZW50KCkgPSAwOwogCiBwcm90ZWN0ZWQ6Ci0g
ICAgVHJhY2tCYXNlKFNjcmlwdEV4ZWN1dGlvbkNvbnRleHQqLCBUeXBlKTsKLSAgICAKLSAgICB2
aXJ0dWFsIEV2ZW50VGFyZ2V0RGF0YSogZXZlbnRUYXJnZXREYXRhKCk7Ci0gICAgdmlydHVhbCBF
dmVudFRhcmdldERhdGEqIGVuc3VyZUV2ZW50VGFyZ2V0RGF0YSgpOworICAgIFRyYWNrQmFzZShU
eXBlLCBjb25zdCBBdG9taWNTdHJpbmcmIGxhYmVsLCBjb25zdCBBdG9taWNTdHJpbmcmIGxhbmd1
YWdlKTsKKworICAgIHZpcnR1YWwgYm9vbCBpc1ZhbGlkS2luZChjb25zdCBBdG9taWNTdHJpbmcm
KSBjb25zdCA9IDA7CisgICAgdmlydHVhbCBjb25zdCBBdG9taWNTdHJpbmcmIGRlZmF1bHRLaW5k
S2V5d29yZCgpIGNvbnN0ID0gMDsKKworICAgIEhUTUxNZWRpYUVsZW1lbnQqIG1fbWVkaWFFbGVt
ZW50OwogCiBwcml2YXRlOgogICAgIFR5cGUgbV90eXBlOwotICAgIAotICAgIHZpcnR1YWwgdm9p
ZCByZWZFdmVudFRhcmdldCgpIHsgcmVmKCk7IH0KLSAgICB2aXJ0dWFsIHZvaWQgZGVyZWZFdmVu
dFRhcmdldCgpIHsgZGVyZWYoKTsgfQotICAgIAotICAgIFNjcmlwdEV4ZWN1dGlvbkNvbnRleHQq
IG1fc2NyaXB0RXhlY3V0aW9uQ29udGV4dDsKLSAgICBFdmVudFRhcmdldERhdGEgbV9ldmVudFRh
cmdldERhdGE7CisgICAgQXRvbWljU3RyaW5nIG1fa2luZDsKKyAgICBBdG9taWNTdHJpbmcgbV9s
YWJlbDsKKyAgICBBdG9taWNTdHJpbmcgbV9sYW5ndWFnZTsKIH07CiAKIH0gLy8gbmFtZXNwYWNl
IFdlYkNvcmUKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvdHJhY2svVHJhY2tMaXN0
QmFzZS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL3RyYWNrL1RyYWNrTGlzdEJhc2UuY3BwCm5l
dyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAuLjFiODZlOGYzMDJlZDM5MGRmYWIwZTI1MWRmMzE1MGE0NDI4OWFiMWQKLS0tIC9k
ZXYvbnVsbAorKysgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL3RyYWNrL1RyYWNrTGlzdEJhc2UuY3Bw
CkBAIC0wLDAgKzEsMTgzIEBACisvKgorICogQ29weXJpZ2h0IChDKSAyMDExLCAyMDEyIEFwcGxl
IEluYy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKgorICogUmVkaXN0cmlidXRpb24gYW5kIHVz
ZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CisgKiBtb2RpZmlj
YXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlv
bnMKKyAqIGFyZSBtZXQ6CisgKiAxLiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVz
dCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2Yg
Y29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgorICogMi4gUmVkaXN0cmli
dXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQK
KyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcg
ZGlzY2xhaW1lciBpbiB0aGUKKyAqICAgIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVy
aWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCisgKgorICogVEhJUyBTT0ZUV0FS
RSBJUyBQUk9WSURFRCBCWSBBUFBMRSBDT01QVVRFUiwgSU5DLiBgYEFTIElTJycgQU5EIEFOWQor
ICogRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1J
VEVEIFRPLCBUSEUKKyAqIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5E
IEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUgorICogUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gIElO
IE5PIEVWRU5UIFNIQUxMIEFQUExFIENPTVBVVEVSLCBJTkMuIE9SCisgKiBDT05UUklCVVRPUlMg
QkUgTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwK
KyAqIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBO
T1QgTElNSVRFRCBUTywKKyAqIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VS
VklDRVM7IExPU1MgT0YgVVNFLCBEQVRBLCBPUgorICogUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5U
RVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZIFRIRU9SWQorICogT0YgTElBQklM
SVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUCisgKiAo
SU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VU
IE9GIFRIRSBVU0UKKyAqIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUg
UE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuIAorICovCisKKyNpbmNsdWRlICJjb25maWcuaCIK
KworI2lmIEVOQUJMRShWSURFT19UUkFDSykKKworI2luY2x1ZGUgIlRyYWNrTGlzdEJhc2UuaCIK
KworI2luY2x1ZGUgIkV2ZW50TmFtZXMuaCIKKyNpbmNsdWRlICJIVE1MTWVkaWFFbGVtZW50Lmgi
CisjaW5jbHVkZSAiU2NyaXB0RXhlY3V0aW9uQ29udGV4dC5oIgorI2luY2x1ZGUgIlRyYWNrQmFz
ZS5oIgorI2luY2x1ZGUgIlRyYWNrRXZlbnQuaCIKKwordXNpbmcgbmFtZXNwYWNlIFdlYkNvcmU7
CisKK1RyYWNrTGlzdEJhc2U6OlRyYWNrTGlzdEJhc2UoSFRNTE1lZGlhRWxlbWVudCogb3duZXIs
IFNjcmlwdEV4ZWN1dGlvbkNvbnRleHQqIGNvbnRleHQpCisgICAgOiBtX2NvbnRleHQoY29udGV4
dCkKKyAgICAsIG1fb3duZXIob3duZXIpCisgICAgLCBtX3BlbmRpbmdFdmVudFRpbWVyKHRoaXMs
ICZUcmFja0xpc3RCYXNlOjphc3luY0V2ZW50VGltZXJGaXJlZCkKKyAgICAsIG1fZGlzcGF0Y2hp
bmdFdmVudHMoMCkKK3sKKyAgICBBU1NFUlQoY29udGV4dC0+aXNEb2N1bWVudCgpKTsKK30KKwor
VHJhY2tMaXN0QmFzZTo6flRyYWNrTGlzdEJhc2UoKQoreworfQorCit1bnNpZ25lZCBUcmFja0xp
c3RCYXNlOjpsZW5ndGgoKSBjb25zdAoreworICAgIHJldHVybiBtX2luYmFuZFRyYWNrcy5zaXpl
KCk7Cit9CisKK2ludCBUcmFja0xpc3RCYXNlOjpnZXRUcmFja0luZGV4KFRyYWNrQmFzZSAqdHJh
Y2spCit7CisgICAgcmV0dXJuIG1faW5iYW5kVHJhY2tzLmZpbmQodHJhY2spOworfQorCit2b2lk
IFRyYWNrTGlzdEJhc2U6OnJlbW92ZShUcmFja0Jhc2UqIHRyYWNrKQoreworICAgIHNpemVfdCBp
bmRleCA9IG1faW5iYW5kVHJhY2tzLmZpbmQodHJhY2spOworICAgIEFTU0VSVChpbmRleCAhPSBu
b3RGb3VuZCk7CisKKyAgICBBU1NFUlQodHJhY2stPm1lZGlhRWxlbWVudCgpID09IG1fb3duZXIp
OworICAgIHRyYWNrLT5zZXRNZWRpYUVsZW1lbnQoMCk7CisKKyAgICBSZWZQdHI8VHJhY2tCYXNl
PiB0cmFja1JlZiA9IG1faW5iYW5kVHJhY2tzW2luZGV4XTsKKworICAgIG1faW5iYW5kVHJhY2tz
LnJlbW92ZShpbmRleCk7CisKKyAgICBzY2hlZHVsZUFkZFRyYWNrRXZlbnQodHJhY2tSZWYucmVs
ZWFzZSgpKTsKK30KKworYm9vbCBUcmFja0xpc3RCYXNlOjpjb250YWlucyhUcmFja0Jhc2UqIHRy
YWNrKSBjb25zdAoreworICAgIHJldHVybiBtX2luYmFuZFRyYWNrcy5maW5kKHRyYWNrKSAhPSBu
b3RGb3VuZDsKK30KKwordm9pZCBUcmFja0xpc3RCYXNlOjpzY2hlZHVsZUFkZFRyYWNrRXZlbnQo
UGFzc1JlZlB0cjxUcmFja0Jhc2U+IHRyYWNrKQoreworICAgIC8vIDQuOC4xMC41IExvYWRpbmcg
dGhlIG1lZGlhIHJlc291cmNlCisgICAgLy8gLi4uCisgICAgLy8gRmlyZSBhIHRydXN0ZWQgZXZl
bnQgd2l0aCB0aGUgbmFtZSBhZGR0cmFjaywgdGhhdCBkb2VzIG5vdCBidWJibGUgYW5kIGlzCisg
ICAgLy8gbm90IGNhbmNlbGFibGUsIGFuZCB0aGF0IHVzZXMgdGhlIFRyYWNrRXZlbnQgaW50ZXJm
YWNlLCB3aXRoIHRoZSB0cmFjaworICAgIC8vIGF0dHJpYnV0ZSBpbml0aWFsaXplZCB0byB0aGUg
bmV3IEF1ZGlvVHJhY2sgb2JqZWN0LCBhdCB0aGlzCisgICAgLy8gQXVkaW9UcmFja0xpc3Qgb2Jq
ZWN0LgorICAgIC8vIC4uLgorICAgIC8vIEZpcmUgYSB0cnVzdGVkIGV2ZW50IHdpdGggdGhlIG5h
bWUgYWRkdHJhY2ssIHRoYXQgZG9lcyBub3QgYnViYmxlIGFuZCBpcworICAgIC8vIG5vdCBjYW5j
ZWxhYmxlLCBhbmQgdGhhdCB1c2VzIHRoZSBUcmFja0V2ZW50IGludGVyZmFjZSwgd2l0aCB0aGUg
dHJhY2sKKyAgICAvLyBhdHRyaWJ1dGUgaW5pdGlhbGl6ZWQgdG8gdGhlIG5ldyBWaWRlb1RyYWNr
IG9iamVjdCwgYXQgdGhpcworICAgIC8vIFZpZGVvVHJhY2tMaXN0IG9iamVjdC4KKworICAgIC8v
IDQuOC4xMC4xMi4zIFNvdXJjaW5nIG91dC1vZi1iYW5kIHRleHQgdHJhY2tzCisgICAgLy8gNC44
LjEwLjEyLjQgVGV4dCB0cmFjayBBUEkKKyAgICAvLyAuLi4gdGhlbiBxdWV1ZSBhIHRhc2sgdG8g
ZmlyZSBhbiBldmVudCB3aXRoIHRoZSBuYW1lIGFkZHRyYWNrLCB0aGF0IGRvZXMgbm90CisgICAg
Ly8gYnViYmxlIGFuZCBpcyBub3QgY2FuY2VsYWJsZSwgYW5kIHRoYXQgdXNlcyB0aGUgVHJhY2tF
dmVudCBpbnRlcmZhY2UsIHdpdGgKKyAgICAvLyB0aGUgdHJhY2sgYXR0cmlidXRlIGluaXRpYWxp
emVkIHRvIHRoZSB0ZXh0IHRyYWNrJ3MgVGV4dFRyYWNrIG9iamVjdCwgYXQKKyAgICAvLyB0aGUg
bWVkaWEgZWxlbWVudCdzIHRleHRUcmFja3MgYXR0cmlidXRlJ3MgVGV4dFRyYWNrTGlzdCBvYmpl
Y3QuIAorCisgICAgUmVmUHRyPFRyYWNrQmFzZT4gdHJhY2tSZWYgPSB0cmFjazsKKyAgICBUcmFj
a0V2ZW50SW5pdCBpbml0aWFsaXplcjsKKyAgICBpbml0aWFsaXplci50cmFjayA9IHRyYWNrUmVm
OworICAgIGluaXRpYWxpemVyLmJ1YmJsZXMgPSBmYWxzZTsKKyAgICBpbml0aWFsaXplci5jYW5j
ZWxhYmxlID0gZmFsc2U7CisKKyAgICBtX3BlbmRpbmdFdmVudHMuYXBwZW5kKFRyYWNrRXZlbnQ6
OmNyZWF0ZShldmVudE5hbWVzKCkuYWRkdHJhY2tFdmVudCwgaW5pdGlhbGl6ZXIpKTsKKyAgICBp
ZiAoIW1fcGVuZGluZ0V2ZW50VGltZXIuaXNBY3RpdmUoKSkKKyAgICAgICAgbV9wZW5kaW5nRXZl
bnRUaW1lci5zdGFydE9uZVNob3QoMCk7Cit9CisKK3ZvaWQgVHJhY2tMaXN0QmFzZTo6c2NoZWR1
bGVSZW1vdmVUcmFja0V2ZW50KFBhc3NSZWZQdHI8VHJhY2tCYXNlPiB0cmFjaykKK3sKKyAgICAv
LyA0LjguMTAuNiBPZmZzZXRzIGludG8gdGhlIG1lZGlhIHJlc291cmNlCisgICAgLy8gSWYgYXQg
YW55IHRpbWUgdGhlIHVzZXIgYWdlbnQgbGVhcm5zIHRoYXQgYW4gYXVkaW8gb3IgdmlkZW8gdHJh
Y2sgaGFzCisgICAgLy8gZW5kZWQgYW5kIGFsbCBtZWRpYSBkYXRhIHJlbGF0aW5nIHRvIHRoYXQg
dHJhY2sgY29ycmVzcG9uZHMgdG8gcGFydHMgb2YKKyAgICAvLyB0aGUgbWVkaWEgdGltZWxpbmUg
dGhhdCBhcmUgYmVmb3JlIHRoZSBlYXJsaWVzdCBwb3NzaWJsZSBwb3NpdGlvbiwgdGhlCisgICAg
Ly8gdXNlciBhZ2VudCBtYXkgcXVldWUgYSB0YXNrIHRvIHJlbW92ZSB0aGUgdHJhY2sgZnJvbSB0
aGUgYXVkaW9UcmFja3MKKyAgICAvLyBhdHRyaWJ1dGUncyBBdWRpb1RyYWNrTGlzdCBvYmplY3Qg
b3IgdGhlIHZpZGVvVHJhY2tzIGF0dHJpYnV0ZSdzCisgICAgLy8gVmlkZW9UcmFja0xpc3Qgb2Jq
ZWN0IGFzIGFwcHJvcHJpYXRlIGFuZCB0aGVuIGZpcmUgYSB0cnVzdGVkIGV2ZW50CisgICAgLy8g
d2l0aCB0aGUgbmFtZSByZW1vdmV0cmFjaywgdGhhdCBkb2VzIG5vdCBidWJibGUgYW5kIGlzIG5v
dCBjYW5jZWxhYmxlLAorICAgIC8vIGFuZCB0aGF0IHVzZXMgdGhlIFRyYWNrRXZlbnQgaW50ZXJm
YWNlLCB3aXRoIHRoZSB0cmFjayBhdHRyaWJ1dGUKKyAgICAvLyBpbml0aWFsaXplZCB0byB0aGUg
QXVkaW9UcmFjayBvciBWaWRlb1RyYWNrIG9iamVjdCByZXByZXNlbnRpbmcgdGhlCisgICAgLy8g
dHJhY2ssIGF0IHRoZSBtZWRpYSBlbGVtZW50J3MgYWZvcmVtZW50aW9uZWQgQXVkaW9UcmFja0xp
c3Qgb3IKKyAgICAvLyBWaWRlb1RyYWNrTGlzdCBvYmplY3QuCisKKyAgICAvLyA0LjguMTAuMTIu
MyBTb3VyY2luZyBvdXQtb2YtYmFuZCB0ZXh0IHRyYWNrcworICAgIC8vIFdoZW4gYSB0cmFjayBl
bGVtZW50J3MgcGFyZW50IGVsZW1lbnQgY2hhbmdlcyBhbmQgdGhlIG9sZCBwYXJlbnQgd2FzIGEK
KyAgICAvLyBtZWRpYSBlbGVtZW50LCB0aGVuIHRoZSB1c2VyIGFnZW50IG11c3QgcmVtb3ZlIHRo
ZSB0cmFjayBlbGVtZW50J3MKKyAgICAvLyBjb3JyZXNwb25kaW5nIHRleHQgdHJhY2sgZnJvbSB0
aGUgbWVkaWEgZWxlbWVudCdzIGxpc3Qgb2YgdGV4dCB0cmFja3MsCisgICAgLy8gYW5kIHRoZW4g
cXVldWUgYSB0YXNrIHRvIGZpcmUgYSB0cnVzdGVkIGV2ZW50IHdpdGggdGhlIG5hbWUgcmVtb3Zl
dHJhY2ssCisgICAgLy8gdGhhdCBkb2VzIG5vdCBidWJibGUgYW5kIGlzIG5vdCBjYW5jZWxhYmxl
LCBhbmQgdGhhdCB1c2VzIHRoZSBUcmFja0V2ZW50CisgICAgLy8gaW50ZXJmYWNlLCB3aXRoIHRo
ZSB0cmFjayBhdHRyaWJ1dGUgaW5pdGlhbGl6ZWQgdG8gdGhlIHRleHQgdHJhY2sncworICAgIC8v
IFRleHRUcmFjayBvYmplY3QsIGF0IHRoZSBtZWRpYSBlbGVtZW50J3MgdGV4dFRyYWNrcyBhdHRy
aWJ1dGUncworICAgIC8vIFRleHRUcmFja0xpc3Qgb2JqZWN0LgorCisgICAgUmVmUHRyPFRyYWNr
QmFzZT4gdHJhY2tSZWYgPSB0cmFjazsKKyAgICBUcmFja0V2ZW50SW5pdCBpbml0aWFsaXplcjsK
KyAgICBpbml0aWFsaXplci50cmFjayA9IHRyYWNrUmVmOworICAgIGluaXRpYWxpemVyLmJ1YmJs
ZXMgPSBmYWxzZTsKKyAgICBpbml0aWFsaXplci5jYW5jZWxhYmxlID0gZmFsc2U7CisKKyAgICBt
X3BlbmRpbmdFdmVudHMuYXBwZW5kKFRyYWNrRXZlbnQ6OmNyZWF0ZShldmVudE5hbWVzKCkucmVt
b3ZldHJhY2tFdmVudCwgaW5pdGlhbGl6ZXIpKTsKKyAgICBpZiAoIW1fcGVuZGluZ0V2ZW50VGlt
ZXIuaXNBY3RpdmUoKSkKKyAgICAgICAgbV9wZW5kaW5nRXZlbnRUaW1lci5zdGFydE9uZVNob3Qo
MCk7Cit9CisKK3ZvaWQgVHJhY2tMaXN0QmFzZTo6c2NoZWR1bGVDaGFuZ2VFdmVudCgpCit7Cisg
ICAgLy8gNC44LjEwLjYgT2Zmc2V0cyBpbnRvIHRoZSBtZWRpYSByZXNvdXJjZQorICAgIC8vIFdo
ZW5ldmVyIGFuIGF1ZGlvIHRyYWNrIGluIGFuIEF1ZGlvVHJhY2tMaXN0IGlzIGVuYWJsZWQgb3Ig
ZGlzYWJsZWQsIHRoZQorICAgIC8vIHVzZXIgYWdlbnQgbXVzdCBxdWV1ZSBhIHRhc2sgdG8gZmly
ZSBhIHNpbXBsZSBldmVudCBuYW1lZCBjaGFuZ2UgYXQgdGhlCisgICAgLy8gQXVkaW9UcmFja0xp
c3Qgb2JqZWN0LgorICAgIC8vIC4uLgorICAgIC8vIFdoZW5ldmVyIGEgdHJhY2sgaW4gYSBWaWRl
b1RyYWNrTGlzdCB0aGF0IHdhcyBwcmV2aW91c2x5IG5vdCBzZWxlY3RlZCBpcworICAgIC8vIHNl
bGVjdGVkLCB0aGUgdXNlciBhZ2VudCBtdXN0IHF1ZXVlIGEgdGFzayB0byBmaXJlIGEgc2ltcGxl
IGV2ZW50IG5hbWVkCisgICAgLy8gY2hhbmdlIGF0IHRoZSBWaWRlb1RyYWNrTGlzdCBvYmplY3Qu
CisKKyAgICBFdmVudEluaXQgaW5pdGlhbGl6ZXI7CisgICAgaW5pdGlhbGl6ZXIuYnViYmxlcyA9
IGZhbHNlOworICAgIGluaXRpYWxpemVyLmNhbmNlbGFibGUgPSBmYWxzZTsKKworICAgIG1fcGVu
ZGluZ0V2ZW50cy5hcHBlbmQoRXZlbnQ6OmNyZWF0ZShldmVudE5hbWVzKCkuY2hhbmdlRXZlbnQs
IGluaXRpYWxpemVyKSk7CisgICAgaWYgKCFtX3BlbmRpbmdFdmVudFRpbWVyLmlzQWN0aXZlKCkp
CisgICAgICAgIG1fcGVuZGluZ0V2ZW50VGltZXIuc3RhcnRPbmVTaG90KDApOworfQorCit2b2lk
IFRyYWNrTGlzdEJhc2U6OmFzeW5jRXZlbnRUaW1lckZpcmVkKFRpbWVyPFRyYWNrTGlzdEJhc2U+
KikKK3sKKyAgICBWZWN0b3I8UmVmUHRyPEV2ZW50PiA+IHBlbmRpbmdFdmVudHM7CisKKyAgICAr
K21fZGlzcGF0Y2hpbmdFdmVudHM7CisgICAgbV9wZW5kaW5nRXZlbnRzLnN3YXAocGVuZGluZ0V2
ZW50cyk7CisgICAgc2l6ZV90IGNvdW50ID0gcGVuZGluZ0V2ZW50cy5zaXplKCk7CisgICAgZm9y
IChzaXplX3QgaW5kZXggPSAwOyBpbmRleCA8IGNvdW50OyArK2luZGV4KQorICAgICAgICBkaXNw
YXRjaEV2ZW50KHBlbmRpbmdFdmVudHNbaW5kZXhdLnJlbGVhc2UoKSwgSUdOT1JFX0VYQ0VQVElP
Tik7CisgICAgLS1tX2Rpc3BhdGNoaW5nRXZlbnRzOworfQorCisjZW5kaWYKZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJDb3JlL2h0bWwvdHJhY2svVHJhY2tMaXN0QmFzZS5oIGIvU291cmNlL1dlYkNv
cmUvaHRtbC90cmFjay9UcmFja0xpc3RCYXNlLmgKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXgg
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uNDVmYTU2MmViNzRhZTQ1
OTY3NjJhYjM1NTczM2NkZTQ2NTNkNWNiMgotLS0gL2Rldi9udWxsCisrKyBiL1NvdXJjZS9XZWJD
b3JlL2h0bWwvdHJhY2svVHJhY2tMaXN0QmFzZS5oCkBAIC0wLDAgKzEsMTAxIEBACisvKgorICog
Q29weXJpZ2h0IChDKSAyMDExLCAyMDEyIEFwcGxlIEluYy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQu
CisgKgorICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jt
cywgd2l0aCBvciB3aXRob3V0CisgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlk
ZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKKyAqIGFyZSBtZXQ6CisgKiAxLiBSZWRp
c3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdo
dAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2lu
ZyBkaXNjbGFpbWVyLgorICogMi4gUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3Qg
cmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9m
IGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKKyAqICAgIGRv
Y3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0
cmlidXRpb24uCisgKgorICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBBUFBMRSBDT01Q
VVRFUiwgSU5DLiBgYEFTIElTJycgQU5EIEFOWQorICogRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJB
TlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBUSEUKKyAqIElNUExJRUQgV0FS
UkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUgor
ICogUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gIElOIE5PIEVWRU5UIFNIQUxMIEFQUExFIENPTVBV
VEVSLCBJTkMuIE9SCisgKiBDT05UUklCVVRPUlMgQkUgTElBQkxFIEZPUiBBTlkgRElSRUNULCBJ
TkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwKKyAqIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVO
VElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywKKyAqIFBST0NVUkVN
RU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLCBEQVRBLCBP
UgorICogUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBB
TkQgT04gQU5ZIFRIRU9SWQorICogT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBT
VFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUCisgKiAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RI
RVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UKKyAqIE9GIFRISVMgU09G
VFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0Uu
IAorICovCisKKyNpZm5kZWYgVHJhY2tMaXN0QmFzZV9oCisjZGVmaW5lIFRyYWNrTGlzdEJhc2Vf
aAorCisjaWYgRU5BQkxFKFZJREVPX1RSQUNLKQorCisjaW5jbHVkZSAiRXZlbnRMaXN0ZW5lci5o
IgorI2luY2x1ZGUgIkV2ZW50VGFyZ2V0LmgiCisjaW5jbHVkZSAiVGltZXIuaCIKKyNpbmNsdWRl
IDx3dGYvUGFzc1JlZlB0ci5oPgorI2luY2x1ZGUgPHd0Zi9SZWZDb3VudGVkLmg+CisjaW5jbHVk
ZSA8d3RmL1ZlY3Rvci5oPgorCituYW1lc3BhY2UgV2ViQ29yZSB7CisKK2NsYXNzIEhUTUxNZWRp
YUVsZW1lbnQ7CitjbGFzcyBUcmFja0Jhc2U7CisKK2NsYXNzIFRyYWNrTGlzdEJhc2UgOiBwdWJs
aWMgUmVmQ291bnRlZDxUcmFja0xpc3RCYXNlPiwgcHVibGljIEV2ZW50VGFyZ2V0IHsKK3B1Ymxp
YzoKKyAgICB+VHJhY2tMaXN0QmFzZSgpOworCisgICAgdmlydHVhbCB1bnNpZ25lZCBsZW5ndGgo
KSBjb25zdDsKKyAgICB2aXJ0dWFsIGludCBnZXRUcmFja0luZGV4KFRyYWNrQmFzZSopOworICAg
IHZpcnR1YWwgYm9vbCBjb250YWlucyhUcmFja0Jhc2UqKSBjb25zdDsKKyAgICB2aXJ0dWFsIHZv
aWQgcmVtb3ZlKFRyYWNrQmFzZSopOworCisgICAgLy8gRXZlbnRUYXJnZXQKKyAgICB2aXJ0dWFs
IGNvbnN0IEF0b21pY1N0cmluZyYgaW50ZXJmYWNlTmFtZSgpIGNvbnN0ID0gMDsKKyAgICB1c2lu
ZyBSZWZDb3VudGVkPFRyYWNrTGlzdEJhc2U+OjpyZWY7CisgICAgdXNpbmcgUmVmQ291bnRlZDxU
cmFja0xpc3RCYXNlPjo6ZGVyZWY7CisgICAgdmlydHVhbCBTY3JpcHRFeGVjdXRpb25Db250ZXh0
KiBzY3JpcHRFeGVjdXRpb25Db250ZXh0KCkgY29uc3QgeyByZXR1cm4gbV9jb250ZXh0OyB9CisK
KyAgICBERUZJTkVfQVRUUklCVVRFX0VWRU5UX0xJU1RFTkVSKGFkZHRyYWNrKTsKKyAgICBERUZJ
TkVfQVRUUklCVVRFX0VWRU5UX0xJU1RFTkVSKGNoYW5nZSk7CisgICAgREVGSU5FX0FUVFJJQlVU
RV9FVkVOVF9MSVNURU5FUihyZW1vdmV0cmFjayk7CisKKyAgICB2b2lkIGNsZWFyT3duZXIoKSB7
IG1fb3duZXIgPSAwOyB9CisgICAgSFRNTE1lZGlhRWxlbWVudCogb3duZXIoKSBjb25zdCB7IHJl
dHVybiBtX293bmVyOyB9CisKKyAgICBib29sIGlzRmlyaW5nRXZlbnRMaXN0ZW5lcnMoKSB7IHJl
dHVybiBtX2Rpc3BhdGNoaW5nRXZlbnRzOyB9CisKKyAgICAvLyBOZWVkcyB0byBiZSBwdWJsaWMg
c28gdHJhY2tzIGNhbiBjYWxsIGl0CisgICAgdm9pZCBzY2hlZHVsZUNoYW5nZUV2ZW50KCk7CisK
K3Byb3RlY3RlZDoKKyAgICBUcmFja0xpc3RCYXNlKEhUTUxNZWRpYUVsZW1lbnQqLCBTY3JpcHRF
eGVjdXRpb25Db250ZXh0Kik7CisKKyAgICB2b2lkIHNjaGVkdWxlQWRkVHJhY2tFdmVudChQYXNz
UmVmUHRyPFRyYWNrQmFzZT4pOworICAgIHZvaWQgc2NoZWR1bGVSZW1vdmVUcmFja0V2ZW50KFBh
c3NSZWZQdHI8VHJhY2tCYXNlPik7CisKKyAgICBWZWN0b3I8UmVmUHRyPFRyYWNrQmFzZT4gPiBt
X2luYmFuZFRyYWNrczsKKworcHJpdmF0ZToKKyAgICAvLyBFdmVudFRhcmdldAorICAgIHZpcnR1
YWwgdm9pZCByZWZFdmVudFRhcmdldCgpIHsgcmVmKCk7IH0KKyAgICB2aXJ0dWFsIHZvaWQgZGVy
ZWZFdmVudFRhcmdldCgpIHsgZGVyZWYoKTsgfQorICAgIHZpcnR1YWwgRXZlbnRUYXJnZXREYXRh
KiBldmVudFRhcmdldERhdGEoKSB7IHJldHVybiAmbV9ldmVudFRhcmdldERhdGE7IH0KKyAgICB2
aXJ0dWFsIEV2ZW50VGFyZ2V0RGF0YSogZW5zdXJlRXZlbnRUYXJnZXREYXRhKCkgeyByZXR1cm4g
Jm1fZXZlbnRUYXJnZXREYXRhOyB9CisKKyAgICB2b2lkIGFzeW5jRXZlbnRUaW1lckZpcmVkKFRp
bWVyPFRyYWNrTGlzdEJhc2U+Kik7CisKKyAgICBTY3JpcHRFeGVjdXRpb25Db250ZXh0KiBtX2Nv
bnRleHQ7CisgICAgSFRNTE1lZGlhRWxlbWVudCogbV9vd25lcjsKKworICAgIFZlY3RvcjxSZWZQ
dHI8RXZlbnQ+ID4gbV9wZW5kaW5nRXZlbnRzOworICAgIFRpbWVyPFRyYWNrTGlzdEJhc2U+IG1f
cGVuZGluZ0V2ZW50VGltZXI7CisKKyAgICBFdmVudFRhcmdldERhdGEgbV9ldmVudFRhcmdldERh
dGE7CisKKyAgICBpbnQgbV9kaXNwYXRjaGluZ0V2ZW50czsKK307CisKK30gLy8gbmFtZXNwYWNl
IFdlYkNvcmUKKworI2VuZGlmCisjZW5kaWYKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3Bs
YXRmb3JtL2dyYXBoaWNzL01lZGlhUGxheWVyLmNwcCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3Jt
L2dyYXBoaWNzL01lZGlhUGxheWVyLmNwcAppbmRleCAxYmYwNjE4NDE3Yzg3NjQzNzZkNDA4MjEz
NDg1ZWUzYjVjMTQ5ZjY0Li5mZmM1MzQ4NTM0ZDMyY2Y3OTNkMDFlMzY0ZTEyMjkxOWVmZDM3NjFi
IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9NZWRpYVBsYXll
ci5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvTWVkaWFQbGF5ZXIu
Y3BwCkBAIC0xMTAyLDcgKzExMDIsNyBAQCB2b2lkIE1lZGlhUGxheWVyOjphZGRUZXh0VHJhY2so
UGFzc1JlZlB0cjxJbmJhbmRUZXh0VHJhY2tQcml2YXRlPiB0cmFjaykKICAgICBpZiAoIW1fbWVk
aWFQbGF5ZXJDbGllbnQpCiAgICAgICAgIHJldHVybjsKIAotICAgIG1fbWVkaWFQbGF5ZXJDbGll
bnQtPm1lZGlhUGxheWVyRGlkQWRkVHJhY2sodHJhY2spOworICAgIG1fbWVkaWFQbGF5ZXJDbGll
bnQtPm1lZGlhUGxheWVyRGlkQWRkVGV4dFRyYWNrKHRyYWNrKTsKIH0KIAogdm9pZCBNZWRpYVBs
YXllcjo6cmVtb3ZlVGV4dFRyYWNrKFBhc3NSZWZQdHI8SW5iYW5kVGV4dFRyYWNrUHJpdmF0ZT4g
dHJhY2spCkBAIC0xMTEwLDcgKzExMTAsNyBAQCB2b2lkIE1lZGlhUGxheWVyOjpyZW1vdmVUZXh0
VHJhY2soUGFzc1JlZlB0cjxJbmJhbmRUZXh0VHJhY2tQcml2YXRlPiB0cmFjaykKICAgICBpZiAo
IW1fbWVkaWFQbGF5ZXJDbGllbnQpCiAgICAgICAgIHJldHVybjsKIAotICAgIG1fbWVkaWFQbGF5
ZXJDbGllbnQtPm1lZGlhUGxheWVyRGlkUmVtb3ZlVHJhY2sodHJhY2spOworICAgIG1fbWVkaWFQ
bGF5ZXJDbGllbnQtPm1lZGlhUGxheWVyRGlkUmVtb3ZlVGV4dFRyYWNrKHRyYWNrKTsKIH0KIAog
Ym9vbCBNZWRpYVBsYXllcjo6cmVxdWlyZXNUZXh0VHJhY2tSZXByZXNlbnRhdGlvbigpIGNvbnN0
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9NZWRpYVBsYXll
ci5oIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvTWVkaWFQbGF5ZXIuaAppbmRl
eCBlMTdhZDZjOTAwODNlZTRiZDc2MjU5M2RhM2Q4MWY0NTUxNmFhZmM5Li5hODExMTE4ODVjYjJl
NDg0YmNhMzJjODA5MDg2OTg5MDUwYjA0MzRjIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9w
bGF0Zm9ybS9ncmFwaGljcy9NZWRpYVBsYXllci5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRm
b3JtL2dyYXBoaWNzL01lZGlhUGxheWVyLmgKQEAgLTIxOCw4ICsyMTgsOCBAQCBwdWJsaWM6CiAg
ICAgdmlydHVhbCBDYWNoZWRSZXNvdXJjZUxvYWRlciogbWVkaWFQbGF5ZXJDYWNoZWRSZXNvdXJj
ZUxvYWRlcigpIHsgcmV0dXJuIDA7IH0KIAogI2lmIEVOQUJMRShWSURFT19UUkFDSykKLSAgICB2
aXJ0dWFsIHZvaWQgbWVkaWFQbGF5ZXJEaWRBZGRUcmFjayhQYXNzUmVmUHRyPEluYmFuZFRleHRU
cmFja1ByaXZhdGU+KSB7IH0KLSAgICB2aXJ0dWFsIHZvaWQgbWVkaWFQbGF5ZXJEaWRSZW1vdmVU
cmFjayhQYXNzUmVmUHRyPEluYmFuZFRleHRUcmFja1ByaXZhdGU+KSB7IH0KKyAgICB2aXJ0dWFs
IHZvaWQgbWVkaWFQbGF5ZXJEaWRBZGRUZXh0VHJhY2soUGFzc1JlZlB0cjxJbmJhbmRUZXh0VHJh
Y2tQcml2YXRlPikgeyB9CisgICAgdmlydHVhbCB2b2lkIG1lZGlhUGxheWVyRGlkUmVtb3ZlVGV4
dFRyYWNrKFBhc3NSZWZQdHI8SW5iYW5kVGV4dFRyYWNrUHJpdmF0ZT4pIHsgfQogCiAgICAgdmly
dHVhbCB2b2lkIHRleHRUcmFja1JlcHJlc2VudGF0aW9uQm91bmRzQ2hhbmdlZChjb25zdCBJbnRS
ZWN0JikgeyB9CiAgICAgdmlydHVhbCB2b2lkIHBhaW50VGV4dFRyYWNrUmVwcmVzZW50YXRpb24o
R3JhcGhpY3NDb250ZXh0KiwgY29uc3QgSW50UmVjdCYpIHsgfQo=
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="0"
              isprivate="0"
          >
            <attachid>197415</attachid>
            <date>2013-04-10 16:28:09 -0700</date>
            <delta_ts>2013-04-10 16:28:09 -0700</delta_ts>
            <desc>Archive of layout-test-results from webkit-ews-01 for mac-mountainlion</desc>
            <filename>layout-test-results.zip</filename>
            <type>application/zip</type>
            <size>502639</size>
            <attacher name="Build Bot">buildbot</attacher>
            
              <data encoding="base64">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
ZWRpYS1lbGVtZW50cy1zdGRlcnIudHh0VVQJAAOt7mVRre5lUXV4CwABBPUBAAAEUAAAAHPLSSxJ
dUlNzk9JtVJIAdGZeekKqUVF+UVWCpl5yflFRanJJQopiSWJCskZqcnZelwAUEsDBAoAAAAAAGp/
ikIAAAAAAAAAAAAAAAAJABwAZmFzdC94c2wvVVQJAAPH7mVRFvBlUXV4CwABBPUBAAAEUAAAAFBL
AwQUAAIACABpf4pCcv1l8oUAAADpAAAAJQAcAGZhc3QveHNsL3RyYW5zZm9ybS14aHItZG9jLXN0
ZGVyci50eHRVVAkAA8buZVHG7mVRdXgLAAEE9QEAAARQAAAArU4xDsJADNv7inygZGC7GSbYQHRO
21SclLtUuZzU/p6DfoHFsmzL9qRpjUIeNQObqQVYovAPAiK+VGrighdywuvwwIHHW3S8067Vn1y8
4ELFcSuCxkWrTS2+va2fdTo1FSRmhjOwcOLsENOq5l1zwkEhQM00tlFXEKX5T+P9Uc/z90X3AVBL
AwQUAAIACABpf4pCzgkoAo0AAADwAAAAJwAcAGZhc3QveHNsL3hzbHQtYmFkLWltcG9ydC11cmkt
c3RkZXJyLnR4dFVUCQADxu5lUcbuZVF1eAsAAQT1AQAABFAAAACljjEOwjAMRfeewhcoHtgywwQb
iM5O64pITlw5jgS3J9AjsHz5/2dbf9a8JSFPWoDN1AKsSfgnAREfKi1zxRM54Xm64cTxkhyv9Nbm
d65ecaXq+KqCxlWbzX29Ox8jLWPKm5qPzdKhZyCpMByBhTMXh50OnYR9hACtUOwFXEGUln+LFK1t
fn6f9DuR4QNQSwMEFAACAAgAan+KQoFKd61LAAAArAAAADQAHABmYXN0L3hzbC94c2x0LXRyYW5z
Zm9ybS10by1mcmFnbWVudC1jcmFzaC1zdGRlcnIudHh0VVQJAAPH7mVRx+5lUXV4CwABBPUBAAAE
UAAAALXMsQ2AMAxE0T5T3Aq0bOPABVlybGQs5keiYAPqr/e3mKealIaDmZErhhoBUycW0DjphVtS
pRtbcudQ11fEwGHRxb6O4lVt++X6AFBLAwQUAAIACACagIpCleKylbkBAACiAwAAEQAcAGZ1bGxf
cmVzdWx0cy5qc29uVVQJAAMT8GVRFvBlUXV4CwABBPUBAAAEUAAAAJ1STW/bMAz9K4NOG2DNXfed
nYolh2E9DHPa7mYwFt2okS2DpLMEhf/7KDkdNmCHdheDksn3nh7fxXJZf19VV5fr6vm9EWRhs7g3
HToPvwvbxF4ohoBkhwDHDTS7l1vpQurAw4CNoDML8+2iqkxhoJER9J9Zr36sn50ut8A1i0MisxAa
cSqMkOIkiFzYPjq04Jwl7OIeH0tgHpDsyEkfYYuEfYP8aIR/qJsUdSsyZHkPrjA2I3k5ZmP8Ad1n
9QV7SWdSo0hZbJpiKzEX1rcEHVrf2w70k09Ps26aspgWOPOECCozVXewB27ID2JHCokibu4U78nw
hdGlShupyw+DJg87L76/TaXDgH/Xsb/6YlmvQnoaC6jd//EqZeadH4bU+/rs3dvC9GNXE94SMiuJ
mn5eGK8eE41DhmwhMM59nWfOqs4Ko6GMo9R5U7UuQrnK6xjGDrlcgkC5uqnKG9x89VJe5t51Xmph
9kiJSgXMqAMwIyc9H88/qDO65nDCxR424Q8RKTQaN5GjTkmznaOjq/KH1Jgw3r+aUdsAO43Nm8Jo
SBUpWwTJSK5bn3rn0QT50/m2PZFMLz79AlBLAwQKAAAAAAD0fopCAAAAAAAAAAAAAAAABQAcAGh0
dHAvVVQJAAPs7WVRFvBlUXV4CwABBPUBAAAEUAAAAFBLAwQKAAAAAAAMgIpCAAAAAAAAAAAAAAAA
CwAcAGh0dHAvdGVzdHMvVVQJAAMH72VRFvBlUXV4CwABBPUBAAAEUAAAAFBLAwQKAAAAAAD0fopC
AAAAAAAAAAAAAAAAFAAcAGh0dHAvdGVzdHMvYXBwY2FjaGUvVVQJAAPs7WVRFvBlUXV4CwABBPUB
AAAEUAAAAFBLAwQUAAIACAD0fopCIY+9ODIAAAAzAAAAJAAcAGh0dHAvdGVzdHMvYXBwY2FjaGUv
dmlkZW8tc3RkZXJyLnR4dFVUCQAD7O1lUeztZVF1eAsAAQT1AQAABFAAAABzy0ksSXVJTc5PSbVS
SAHRmXnpCqlFRflFVgqZecn5RUWpySUKKYkliQrJGanJ2XpcAFBLAwQKAAAAAABdf4pCAAAAAAAA
AAAAAAAAEAAcAGh0dHAvdGVzdHMvbWlzYy9VVAkAA7LuZVEW8GVRdXgLAAEE9QEAAARQAAAAUEsD
BBQAAgAIAF1/ikIVNTWSegAAALwAAAAqABwAaHR0cC90ZXN0cy9taXNjL3hzbHQtYmFkLWltcG9y
dC1zdGRlcnIudHh0VVQJAAOy7mVRsu5lUXV4CwABBPUBAAAEUAAAAI2OQQ7DIAwE73mFP0Ag7aEV
vyHEVSwZjIyR+vwS5QPVXlY7h9kspREnI6mAqqIRPsQIp1mL3m+P1xpmtvgOIfhCPXvFLkMzdv/t
bG5Ph6PSRM0NpXVuwFQRnoCMBavBTZdJ4l0hwqhpnxoTYEnHf7oqfeTzupcsMS8/UEsDBAoAAAAA
ACSAikIAAAAAAAAAAAAAAAAUABwAaHR0cC90ZXN0cy9zZWN1cml0eS9VVAkAAzTvZVEW8GVRdXgL
AAEE9QEAAARQAAAAUEsDBAoAAAAAABqAikIAAAAAAAAAAAAAAAAqABwAaHR0cC90ZXN0cy9zZWN1
cml0eS9jb250ZW50U2VjdXJpdHlQb2xpY3kvVVQJAAMk72VRFvBlUXV4CwABBPUBAAAEUAAAAFBL
AwQUAAIACAAagIpCY6qsbIIAAACoAAAAQAAcAGh0dHAvdGVzdHMvc2VjdXJpdHkvY29udGVudFNl
Y3VyaXR5UG9saWN5L3hzbC1hbGxvd2VkLXN0ZGVyci50eHRVVAkAAyTvZVEk72VRdXgLAAEE9QEA
AARQAAAALY1BCsMwDATveYVeEDu9pPgVhb4guBtiUCwjKaX+fU0pe1qG2c1ytsKbF6kEVdFEe2HQ
4d5SCMttnePIku4xxmDIlxbvIUt1VH/++0O45B4UJpdmWDDvjPljTFwqaCUwziHQD9gB+DRoekNt
XCeSyp2WOdKOza8xRJuC7GpN1PGavlBLAwQUAAIACAAagIpCY6qsbIIAAACoAAAAUgAcAGh0dHAv
dGVzdHMvc2VjdXJpdHkvY29udGVudFNlY3VyaXR5UG9saWN5L3hzbC11bmFmZmVjdGVkLWJ5LXN0
eWxlLXNyYy0yLXN0ZGVyci50eHRVVAkAAyTvZVEk72VRdXgLAAEE9QEAAARQAAAALY1BCsMwDATv
eYVeEDu9pPgVhb4guBtiUCwjKaX+fU0pe1qG2c1ytsKbF6kEVdFEe2HQ4d5SCMttnePIku4xxmDI
lxbvIUt1VH/++0O45B4UJpdmWDDvjPljTFwqaCUwziHQD9gB+DRoekNtXCeSyp2WOdKOza8xRJuC
7GpN1PGavlBLAwQKAAAAAAAkgIpCAAAAAAAAAAAAAAAAIQAcAGh0dHAvdGVzdHMvc2VjdXJpdHkv
bWl4ZWRDb250ZW50L1VUCQADNO9lURbwZVF1eAsAAQT1AQAABFAAAABQSwMEFAACAAgAJICKQj4y
cCajAQAAeQQAAFcAHABodHRwL3Rlc3RzL3NlY3VyaXR5L21peGVkQ29udGVudC9yZWRpcmVjdC1o
dHRwcy10by1odHRwLWlmcmFtZS1pbi1tYWluLWZyYW1lLWFjdHVhbC50eHRVVAkAAzTvZVE072VR
dXgLAAEE9QEAAARQAAAArZNNb9swDIbv+RVcT9vBdroVWBF0K4Y2WQd0SwAH2JmW2UiIPgyJTpZ/
P9oJ0maHrGkL+6CPl+RD6ZVD4+EhoiPIoDZ1yRh5FsPKJBM82vuA9STESacYuH/EE+NN0rdBtY48
H5Xeoa8tTb0V0Xgl6vSfrEez3QTnzGHB7e7Z1bss64czZA1FsZ8Ps+yr/GfPaPNm+quc3o/h57gs
v30fj2CuCRpcECADVqHlUWXRLyVRaixuqAbjE6k2EqjgWboT2OBAMzejojj/+Dkfync+uhxeDote
aXhTREqhjYqSjGoT80Y31220X7qwdBh3cfHpMc6ZPyRH0Bd6kqQK0fhFrtnZfDCQJm+3eD92bLuI
U27xtEN99a28GckJbjsifQn8M97LgWSuTQKmxBAa8gkQ1sbXYQ2sxWwdlKz5R3+Zbbr3K4Oi5WjU
cgO9fUjxhxx+EyQdWlt3e4sFRVH1ftk7U6G1FaolVKSwTSSVCJ6QyqBb2WEI3d18Piuharmb7Cwv
Rtsn7EmVQFZb+8dgrdSrNh04KjYrAk+8DnEpD4ilNMV88BdQSwMEFAACAAgAJICKQsKXkFITAQAA
ygIAAFUAHABodHRwL3Rlc3RzL3NlY3VyaXR5L21peGVkQ29udGVudC9yZWRpcmVjdC1odHRwcy10
by1odHRwLWlmcmFtZS1pbi1tYWluLWZyYW1lLWRpZmYudHh0VVQJAAM072VRNO9lUXV4CwABBPUB
AAAEUAAAAM2PTUsDMRCG7/srYq/bcTxpDyKL/UBRsLRgz+lmZAeyyZLMLu2/N/tBwYtQvAhhMpO8
PO87AKDw09u2pogrLRrXhz0e6PjGMl3PLVuDO7KkI6HVZ98KCEWBQLG1ErESabB/iRipbAPLGWs+
kVl6J+QEAxkOVAr0ygjihwb4K+iagB3UOpVxolOTlGRu5SRZnuf/LJ4updV2CFcUChbzB5Uv5veq
KDKVKcNmxbFJKV7d4EWTR6Z6hhoYCnrdhh3HauXLtJuTd6/NxodN/5+NVmr2eANju9VSKcTLfAfw
lM5sJO2oJO5oT6GjsJt2SbBt8B1H9k7bH3h1HX7p65rlL4RfVr2S9KKdsfThbGKsuwSLF9I3UEsD
BBQAAgAIACSAikKOqrFUtgEAANcEAABZABwAaHR0cC90ZXN0cy9zZWN1cml0eS9taXhlZENvbnRl
bnQvcmVkaXJlY3QtaHR0cHMtdG8taHR0cC1pZnJhbWUtaW4tbWFpbi1mcmFtZS1leHBlY3RlZC50
eHRVVAkAAzTvZVE072VRdXgLAAEE9QEAAARQAAAArVNNb9NAEL3nVww9wcF2CpWoogJCbUKRShPV
kXoer4fsKutda3fskH/P2LHSBonQALIP+/HmzZvZNxUaB98DVgQJlKbMGQMvgm9NNN6hvfNYznyY
dYhR9Qt4ZpyJ+sarpiLHR6G36EpLc2cFNG0FHf/AepTt2leVOUy4uz27epUk/XKBrCHL9vtxknyU
/+wFZV7P7/P53RS+TfP885fpBJaaoMYVATJg4RueFBbdWohibXFLJRgXSTWBQHnHUp2I9RVo5nqS
Zedv36dj+c4nl+PLcdYjDW+zQNE3QVGUVWlCWuv6UxPshy4sHsZdXLx7iqvMD5IW9ImekRQ+GLdK
NVc2HY2kyJudvK+DtiHilFc8rakPpMi0lFNoKTx0JZFi4fpdn09j/+c3/291nuDlI9C/Ef+CaTyA
LLWJwBQZfE0uAsLGuNJvgLVYuRMlZ+7JvWZH97o1KFgORq23EIaXfJPCI0HUvrFld7daURBU78a9
7xVaW6BaQ0EKm0iSieCZUll0J4MMUXe7XC5yKBruNsNAiY33hL1SJSKL3XAFb63kK7adcFQshgNH
vPFhLePJkppCOvoJUEsDBBQAAgAIACSAikLHPGub8AcAAAMcAABdABwAaHR0cC90ZXN0cy9zZWN1
cml0eS9taXhlZENvbnRlbnQvcmVkaXJlY3QtaHR0cHMtdG8taHR0cC1pZnJhbWUtaW4tbWFpbi1m
cmFtZS1wcmV0dHktZGlmZi5odG1sVVQJAAM072VRNO9lUXV4CwABBPUBAAAEUAAAAMVZa2/byBX9
7l/B2mgMLExSsqSsJSUuGj/Qots2iBe7HxdDzlCceMjhzgxtOW3/e++8KJIiZQFJsBtsRM7jzrnP
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
eoBcNVINqWTwf/RLW72k6c68t/fevWe6ojDicv5fLGw1hv8CUEsDBAoAAAAAAEGAikIAAAAAAAAA
AAAAAAAGABwAbWVkaWEvVVQJAANq72VRFvBlUXV4CwABBPUBAAAEUAAAAFBLAwQUAAIACAAJgIpC
IY+9ODIAAAAzAAAALQAcAG1lZGlhL2NsaWNrLXZvbHVtZS1iYXItbm90LXBhdXNpbmctc3RkZXJy
LnR4dFVUCQADAu9lUQLvZVF1eAsAAQT1AQAABFAAAABzy0ksSXVJTc5PSbVSSAHRmXnpCqlFRflF
VgqZecn5RUWpySUKKYkliQrJGanJ2XpcAFBLAwQUAAIACAAMgIpCBb+yCKsAAAC2BgAAHwAcAG1l
ZGlhL21lZGlhLWNhcHRpb25zLXN0ZGVyci50eHRVVAkAAwjvZVEI72VRdXgLAAEE9QEAAARQAAAA
7ZPRCoJAEEXf+4r5gWItSFkiEA0JCsJ8ix6m3YGWtlXGLe3vi/oGo8TnuXC43DlxxRAICOZSCDmd
QUOni/FjauqxCCa2VGghvV2rnJwmLpjoEEUiDI+wWDGXvJSQZEnpPLV+/wpTUmwlGHdHazSozwFE
K0bxX5IKRldb9N+hxVrv0J87Aylrqu5bpIzNxjhCzhi1Ief7ttO7IT6I1y4n5fv08INag1o/r9YT
UEsDBBQAAgAIABuAikJ9DElurQAAADABAAAqABwAbWVkaWEvbWVkaWEtY29udHJvbGxlci1wbGF5
YmFjay1hY3R1YWwudHh0VVQJAAMm72VRJu9lUXV4CwABBPUBAAAEUAAAAHWPMQvCMBCF9/yK29os
HYQuQgexEUSpIlVcY5q2gZiTNFH6701RsRYc37vv3r1bLdbbOZTqKitA7+DBlVOmgRotGHSq7nM0
EhzCRYLgWsuKADkci1igcRaDYSGDu6okJl+LEnZiRRkLbm6a96616JuWThaTYRbTDzyocDvI854t
S5bDD8t9F0pmGUQ1152MKOw200DhrZXGDf+EVuk46l1xDISo9BUzwWb/OPIEUEsDBBQAAgAIABuA
ikJWyKK9EQEAAAQCAAAoABwAbWVkaWEvbWVkaWEtY29udHJvbGxlci1wbGF5YmFjay1kaWZmLnR4
dFVUCQADJu9lUSfvZVF1eAsAAQT1AQAABFAAAAC1jk1PAjEQhu/9FXODzVIaVNSYkKy6S2IwYGAF
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
dHh0VVQJAAMm72VRJu9lUXV4CwABBPUBAAAEUAAAAEZBSUw6IFRpbWVkIG91dCB3YWl0aW5nIGZv
ciBub3RpZnlEb25lIHRvIGJlIGNhbGxlZApQSwMEFAACAAgAIYCKQiGPvTgyAAAAMwAAACgAHABt
ZWRpYS9tZWRpYS1mdWxsc2NyZWVuLWlubGluZS1zdGRlcnIudHh0VVQJAAMu72VRLu9lUXV4CwAB
BPUBAAAEUAAAAHPLSSxJdUlNzk9JtVJIAdGZeekKqUVF+UVWCpl5yflFRanJJQopiSWJCskZqcnZ
elwAUEsDBAoAAAAAADGAikIAAAAAAAAAAAAAAAAMABwAbWVkaWEvdHJhY2svVVQJAANN72VRFvBl
UXV4CwABBPUBAAAEUAAAAFBLAwQUAAIACAAhgIpCm0j0XgYBAADrAwAALAAcAG1lZGlhL3RyYWNr
L3RyYWNrLW5vZGUtYWRkLXJlbW92ZS1hY3R1YWwudHh0VVQJAAMt72VRLe9lUXV4CwABBPUBAAAE
UAAAANWRTWrDMBCF9zrFnEAk7q4707oQSIipDV2ELGRpEruVpaKf0N6+spTUUGxIuylZCc08vfnm
KReiU0dwhvE3C9o72wkE1yI8bjehjHhPyryq4BTqmjr8cHXUUonq6FroLGTTit1iP3SjNaPxmBEu
R2FzFq6UReMiWmB5ZwaVSw8BJfbDrVNOx67Q3A8V+s+kTAkw2OtTuujAZpI2sP6S9G4GIBsB+Bng
KV+tZ61sq70U0CBkFF5YMKbXZzDpPGQwuu5084rcQX3p79OYiTp5vmQzRJH+8mB0/yOZm1nnStDl
N+j0/MVf58e9reccrT14KT9LZiyKtLZHQuqiquFhuynXRV0Q8gVQSwMEFAACAAgAIYCKQkmexTtM
AQAAlgQAACoAHABtZWRpYS90cmFjay90cmFjay1ub2RlLWFkZC1yZW1vdmUtZGlmZi50eHRVVAkA
Ay3vZVEt72VRdXgLAAEE9QEAAARQAAAA1VHBTsJAEL3vV8y9bksxHrwVtSZEjIQ2cmg4LN0Bqtuu
6c4S+HvbRSRRKsZEEy+zmZ237719wzmH4FErW6IJbgSJIJ4mwRTndwW9HVe2UDKYoEJhMFBiqy1x
QkO8RmMVmaBEWYiAapE/7yqvtEQupGwgpV4jx80L5oTSpw0xz/P+QlPkZIVyilEE/PIsvADP1Shi
MKwM1lRUSxCVBPdk12haYQ2OEooKmg6kzhuvFfkMxoMkgXUhUfuEG0pbmPEVVktaQWHgvAOS9Wft
2NHmvjsYP0XWZ97tYDjqhJiVtkrCHKHvw1Q06l0Os95BXnwpn4WfjR530SIPDjI9f2pWDOl+PttZ
OnLPYLKPu03X8cKi1uWHsP9NPieNhl1kvd8P+7sRhe8RdTjo/Xjd7u/G5jkas7BKbceiNih3X7fI
gEEaJylcP9yPR3Eas1dQSwMEFAACAAgAIYCKQiajB4vVAAAATAMAAC4AHABtZWRpYS90cmFjay90
cmFjay1ub2RlLWFkZC1yZW1vdmUtZXhwZWN0ZWQudHh0VVQJAAMt72VRLe9lUXV4CwABBPUBAAAE
UAAAAMWRzQ7CIAyA7zxFn2Dx5+bN6A4mmi1uN+MBoeriBgaK0beXgcaY+HswnkjbD/qVDqWs1AbI
cLGzoB3ZSiLQFmGczXwaccDyYVHAwed1QnikMrBJjWpDW6gs9B4Ti86yrYaneRKOJ2D3Bq4u4ERZ
NBTUvMueG1QULwLW2LRRpUiHqtTCtZnkz6ZcSTDY6EMMtHczkfWuX5r2nwj0bgLilemPhr72nF/H
bKeKa1kb3fxxHZ/+Rvd9z7unrBMCrV27uj7l3FiUkXPIWJkWJYyyWT5Ny5SxM1BLAwQUAAIACAAh
gIpC0ogFptoIAAD6KwAAMgAcAG1lZGlhL3RyYWNrL3RyYWNrLW5vZGUtYWRkLXJlbW92ZS1wcmV0
dHktZGlmZi5odG1sVVQJAAMt72VRLe9lUXV4CwABBPUBAAAEUAAAAO1aa2/byBX97l9B2GgNLMyH
Xo4lOyoSP9BFs22wNpoPQVAMyaE48ZCjcoa2nLb/vXdeFEmRktJ1jd1sYsQk53kf595zZ+CLVGR0
fnCRYhTDg4sniucHM0ry+xNn9kA4ETh2/nXgwD+BV8KNccQKJAjLZ07OcnyuukJWxLhwQyYEy2bO
YLlyYnjH8fnBfw70cmaRiFFWzJyjYDRVfd4NofiKJInpD1F0vyhYmceuHZqcyZ/6RnoHziiJnaM4
jnVfwnLhJigj9GnmZCxnfIkiI2CGigUBkQc4cwLdtGSgnNKjwBQ0esBKoHTQknQ0GnWsz1HOXY4L
ktQ6OfmC1R71TV2KEzFzAm9i22PClxTBIgKFFLsRplR3PJJYpLBAEPzByIjimOSLaraWz7hHvjU9
ZEQmeQqCiWp4yh5w0dJqMpmc9xkcY20KT/rlHezFzeSEMgSqFGSRiqb35KhLMAEiebUVA/MTAWoG
O9Q2Wrpq3YalHlPQzlV+lHB7LNByLdktjqT/eoGjJjdh04aMwa21O4AqWK70DterJbgY1gfV8Inj
yUdbw17xOIlx+CR/O0rUt5RF9+9RITxQdZaQggs3SgmNew0rt7uF+SfbFitwBq492bGf2cOan+QA
H+yGckgDdhOLOkCLIBGiLqJkAfEhWIdaBZZo/zPKY4qtOcw60oTyO8XaoWs8R2XBpWuk2O0oRCF4
p7Qegz0r4OgAUuJtk6KB8004LAr8dN4CpjfZ5S9tYscTbKeZvaRgWcvYJkfKPaTV/1pmIS4ATbiO
Lt1qBd9MpQa102kjCdpw6UqFNpLH43Er9ja9X+UYudBEh4AOgyrpGxwYeHZBRIvbgNPIJKya4krF
zoSjiaLXLNuSlJTQ2M4mEgMYq0MjTJcFdnWgqi4wpfoEFQqM7l3ZoNclGVrghlNmzrCydUiRNKAc
GEFWABnAq+bNaau8dsjZeNqbdhOcrGNfIgpWrNixFsgdU+Mkbk4FP/P+4VM8Pd9G6dVKJsHU5TAB
0c/WcbyxgBNj2j8DT3dK4//g3JbLJSsEEG1hQAxGzTKcC+784MN+qBQp0/bWZCxrGQC8AIhG1lNq
ghrTQ//VGCkMAkiowTaTnVpMy0yDKL20EnSOHmoay9DKbTF7BmWBaRoGFeW0twa7b92nCuoqmhvb
dMnpsSXWjOk+4vCeCFcUMuK0JbTgjjfk5zU1xkbpIy6QKPnbMgT6rqjQk9HTKY6cIhijISqa/Xbr
hGIVoeuOjH2pWqu8NNJxbMoo+WoLBfneXxH2JY2tldwaFglZYb2OScVBUyUPqfJDh9kmgT8SyAVF
C2rVml9cksd4BUlqi2prDqyJ0KWXSUYNZjszWSyXYpqA7WQl2C9kq52Cnq4FHWgQW/7RX0pY816R
l/msBK6KssbWJClQpiVsxUmzgqjFyGVPpt20zROUmezR0DymUDNCubwHJ51Ob9bwMnTc06kM0eyr
Ksh4szJu1sVmDW2+TQz3VgOxzbN6mzc2KdiTTlDvvbMc2TqSnL6yCW1TzC1BUjvs8AzpMr6ec3NW
QPN5T5Yx+svqi3dtrvWwcR10DaEoxHSGEoiwk43pul0togg5B1UPnX87h+cHFRHX6Ls9myIozlni
iqcl7lzqsFciM7B1wk0xVQmyqkORrEN7OOoow5zbwqPXzl1uqUXHrUrU+1AhUAwURA+ElfyyaoE6
9gvOL2tk2cXztuRoU0ydXGQuB9QqJNjcbr4NEk0SGVkO3EsaAw2ocbCQMdGgC1P29RR9dZ4NS4iq
vJ53LL/H5GGWsMjYkJVC5ot6+IW0VExiugAvCcgCDDawitTJUq0CNcxdivVOvmHaBcgvdRDMEdAX
6tEGatx5IEjmZPGTwQQIGxbsERwOlUCKYK4piojwZBFU6TGemAK+KkXMt80OspCV/4MmidobnXZ5
n5EYDlhaMekgbs/dHYwCdRjj6AFsDxbALV6pH/I2qM4deCNdMq3vPSz7d/jg6OrqqhbSR2c3VzeT
m878BMVlN4qvr6+7pJ7hbAkZquF8U6a1RnrwCpI2Iv96ehacmbwVUYyKf6jywB4FZIs6MaVyyIVv
Lt0ueFSQJfi0iF4fpkIs+cz30We08haMLWDSknAJXdXmUxJy//M/S1w8+QNv7A3NhwelpfeZH85h
XbXe3GmuHLEYu9KH+BHG/Qk8LZ35enxWmwJCmQvBkMVP8IB4ALkR56+P7UngWN4aDub+38GfkLP8
KySQf/3h1v+Aw78QYR5vS0Jj/2fgXcSxD0gBc7oCQ4aFk3tJBfczHBPkAz9E9/q3m0sJAQCuPjy4
UMCUiHpiJUCsQVOa2j3Q8WaPOp/3tctzu8NTqKbj1hB5cnEa9z1yAKSS3I5QJ/11DXE8n4LtoH/e
GAVRvXsMMPPx/EfIZBBxgCMga0fprT8AJEAuyi6Q7lSSiCEvyfTlmeXAWSD7L9ZgEOyhQs8gpcP7
N7e3kLFizNSR/E7KzD2K84VIHcKd0TPLO9hH3sFXyvtx+EnKqgweeerRFls96sLXQvx4bro3VdwP
jxryO/FYG7fdSMM9jPTHPOTL835DXcDpff4eVIKHegfD6a9ed6thpDaFO0PztcuaTXtAGthtDDNo
qyW2KMn2MZm2BFQc85sLXz7U+5sf3+mvfkvIXp6ykkLRgJ2h53xAtQUgLDzz+ZIwe660NxjtY9HR
1wZhsA5C9A0E4fhlg/Dj4FNHANbendq70O/KxvIl8no6f/VxO36WuFXGW8dsbY4M348s/IyjWqNw
5NH6TrcoO8mXTzLKuR5dG7zPxN9yMpjs46ZJv5t+tnWPLHOUYxy1ydaq5zeVCU6/0/HXhvXpdzre
PwJf7WPRV79zOj77Bun4eSwz/dWkp0F3enoWNYfBCwMg+F3WY2ffcD32knac/j8JcLA3Ab6gysPg
eaATfC/l/8dCYrjP5dpw1+UaL6MIc56UlD6BeBzHuo4o8fNeBQ73ueUabrvXeV5x9rkUGW65FLm7
vr1zLv/20/t313fXvwQ/rYe6zL/w9Z/8/hdQSwMEFAACAAgAMICKQsJ5uxuJAQAAswMAAC0AHABt
ZWRpYS90cmFjay90cmFjay11c2VyLXByZWZlcmVuY2VzLWFjdHVhbC50eHRVVAkAA0zvZVFM72VR
dXgLAAEE9QEAAARQAAAAvZNNS8NAEIbv+RVzSwttQL0VPPgRoahVaFFBPGyT2XTpZlZ2J1b/vZNN
AvXrIIiXECaz7/s+s5OLk/nVDFamxhJcw7BThg1VoJ0Hcmz027kjBHawRiiUtVgmKwwM7FWxhSag
h2ePGj1SgSFLkmSJ3NWtoqpRFQY5PoPHlFw6gRTDNF/GF2qf2qdPcipqHsygbeq1A1osWHKtsVAi
CE7v+3n5MjgkUyg8qpg8Hg4tgHgiTbSfkBOL/C5frEbWqXKc5A+3+dkqP4cRviBxxspXyFnwRasI
x8cxxxhuLn9qFbfybcmKMXYfds0dxuFHDDbWfgszpJ+AexEeU7bx0xK1aiynoJi9WTf8M52gCWCk
m07jQHvPWvmteKkAvdp/4h/Netp4uX0i7V0NNVIjMGHjdrJLz2wchVjM9nxi/7UU54x1eDRU4uuN
HgqnWBkimcS94c0ovWjXbpOOnzKJHsJC1V2gz+F/JZpTZU34a9WF8zupKPqqOyxHpy+3bY2MzBEM
fHFIYERUfpV3UEsDBBQAAgAIADCAikIU/gnXFAIAAJ0FAAArABwAbWVkaWEvdHJhY2svdHJhY2st
dXNlci1wcmVmZXJlbmNlcy1kaWZmLnR4dFVUCQADTO9lUU3vZVF1eAsAAQT1AQAABFAAAADNU11v
2jAUfc+vuG+AwMlIO01CqsQ6glR1g2lEZRLiwSQ34M2xkX1T4N/PDl+rKraKh2lCCrLj83GPTxhj
ED1pWZVoowEnHiXTSTTFxaOgw999JWQefUOJ3GIk+U5XxAgtMYO2kmSjEnPBIzI8+7l/ssqiYWuD
BRpUGVqG2zVmhHlIWwra7fY/EeUZVVzWkv0+sG7nBtrdzi30+0F7+PHhcw9S4WjAccOGCxJqCYU2
oDSJYjfQCoE0LBAyLiXmAaTOANRi4MXgN7EwAPfzMnHciT9AO77ZK0Hy/WvyKU0G0KyRX1BVD4Sl
nQmV43ZcHDfucSmUch6mglbNRqKWUthVozUPM8mtHfES4e4OGo0WjB+vph1ps3E7XL0mti5tf0cH
AQaZFG5SraAx9EOuGlA6UhCONQxY8pSM0qbUPG+5xckNPqOikLhZIoXWOAmXqqcvzJ740lmDPN9N
iNPeTfzq9LPIUYeEW0r9xHb2bh6WOj+YX+mNG/JNIG+p4kt8YQsCVl/vbe9wrcY143Rywy1kK7dy
m64THgWLHewj873Zt6IwuqxDCtx3lbmJzu+sr1YPZqbqoOoUZv5fRBhfE2F8IUJ2iPB9D6gyvnPu
y1mT0MqCLopzOpALyxcS7fH9MUitfHDeyBnpAWGd56mO46J42cU/hP1j7fKuw35bkQ7W8r/H0L0K
FV9GOdxoAOMhpMkkdctfUEsDBBQAAgAIADCAikLivHNLBAIAAMkGAAAvABwAbWVkaWEvdHJhY2sv
dHJhY2stdXNlci1wcmVmZXJlbmNlcy1leHBlY3RlZC50eHRVVAkAA0zvZVFM72VRdXgLAAEE9QEA
AARQAAAAxVTBbtpAEL37K+ZmkMBqaHtByiWNI1VVoRJWWwn5sNizZht7F+2OIfn7jtd2gRaSEFXt
BZnxzJt5b944QUdAVmT3UDu0sLEo0aLO0EVBECyQ2ngpdFGLAh2QmcIy1CYcQYhuHC/8g25+pQ1T
rkoazKspNEkdtsMSM8IcVpgJBgQjD/tZftN3CMaQWRSkdNEWO5DGck/UI2lH2nCL+Gs8SwalEfkw
iL9/iT8k8S0McIuaIhK2QIqczRpEuL72cwxh/ulcKnfLHxckCH32pE1uaUyOaZAqy5Nk+ulHYLbM
R+XN+GGOUtQlhSCIrFrVdJ4dU2OCnt147AXtelbC3nMv4aBD+5f03047tn653UTSmgoq1DWTcWuz
g0xsSBntfDA66OPzP3PwI2Hllkrn+DCXfeAGC6U1K/FN0XoQ3jW2W4fDNOLRnZuJqh3o9+EvAo11
USr3t1Fnxu44IvSfuL05WnzedqlYMqOh5+dFAsWgFy+SV3D5IvfJW5WjiQgfKPHOW75Jo8rk3dy8
SOb3kpre60cztX55Nz1x0bBj82Zr/sdBMq2VVo+ds35dwpGvTh+JrUf+K5D+d+kmr5Bu8qR076dA
tW08tr8nI+VeFciVE6uSP8Hd+15Ao88c4qH75lIeWe8JiX9sWOU0eqlzurHyZ/lfvaZocrYoiGe3
ML+DJF4kQfATUEsDBBQAAgAIADGAikJlNx4NewkAABwuAAAzABwAbWVkaWEvdHJhY2svdHJhY2st
dXNlci1wcmVmZXJlbmNlcy1wcmV0dHktZGlmZi5odG1sVVQJAANN72VRTe9lUXV4CwABBPUBAAAE
UAAAAN1aa2/byBX97l8xiNEqWZjU27HkxMXGltHF7jqL2tgUCIJiSA7FiUmOljO0rHT3v/fOiyIp
UlZayW2aIJbIGc7cx7nn3KHzJhJJfHH0JiI4gA8uVjG5OJrGNL0/QdMHyqkgAfrnEYI/gjwKJyA+
y7CgLJ2ilKXkXA15LAtI5nhMCJZMUX/xiAL4ToLzoz+O9HJmEZ/FLJui495wosbcaxqTKxqGZtzD
/v08Y3kaOHZqeCb/ljfSO3AW0wAdB0Ggx0KWCifECY1XU5SwlPEF9o2BCc7mFEzukwT19K0FA+eU
HxmJwaMHogyK+jVLh8Nhw/ocp9zhJKNhaZDTL0TtUd7UiUkopqjnju39gPJFjGERgb2YOD6JYz2w
pIGIYIFe70/GRhwENJ0XT2v7THrkt2qGjMk0jcAwUUyP2APJal6Nx+PztoATokPhyrz8BHtx83AY
MwyuZHQeiWr25KxLCAGmabEVg/BTAW72nnDbeOmodSuRWkbgnaPyKOG2zPBibdkt8WX+WoGjHq7C
pg4Zg1sbdwBVb/God5g9LiDFsD64Rk6QKz/qHraax2lAvJX8iZSp72Lm3/+CM+GCq9OQZlw4fkTj
oDWwcrtbeP5k22IZSSC1J0/sZ/aw4acpwIc4npxSgd3Yog7QIqiPYwfHdA71IViDWxmRaP8rToOY
2HCYdWQI5XVEdELXePbzjMvUSLPrVYg9yE5uMwZ7FsDRBaTM22ZFBeebcJhnZHVeA6Y7fipfOsTI
FezJMLthxpJasA1Hyj1k1G/yxCMZoImU0aXvWsM3qdSgdjKpkKAtlyYqtJU8Go1qtbeZ/YJj5EJj
XQK6DArSNzgw8GyCiDa3AqehIayS48rFRsLRQtEalm0kJS00sbNEYgBjfaiU6SIjji5UNQShVJfg
QkbwvSNv6HVpguekkpQpGhSx9mIsAygn+sAKYANk1XxDdZfXCTkbTVppNyThuvYlomDFQh1Lhdzw
aBAG1Uchz7x9+oRMzrdJerGSIZiyHaYg2tU6CDYWQAGJ258gkyet6X6HbvPFgmUChDYzIIagJglJ
BUffdWE/nIuI6XhrMZa9DABeAER9myn1gJrTIv/FHGkMBkioyZbJTi2mJdPgOL60FjTOHmgZS/Cj
U1P2BNoCc2vQKySnvjXEfes+RVEX1VzZpslOly2IVkxnSbx7KhyRyYrTkdCGI3fAz0tujIzTx1xg
kfN3uQfyXUihK6un0Rz5iGAs9nBWHbdbhzFRFboeSNiX4m7BS0Ndx6aNkl9toyC/t3eEbaSxtZNb
wyKkj0SvY6i4V3XJxar90GW2KeBLClyQ1aBWrPnFoWlAHoGktri21sCSCU1+GTKqKNuZYbFUmmkK
tlGVYD+PPT5p6Ona0L4GsdUffaWMNd8L8TKXhcFFU1bZmoYZTrSFtTqpdhClGrlsYdrN2KygzWRL
I/Mkhp4R2uUdNOl0cr2Gl5HjlkEViOpY0UEGm51xtS82a+jwbWK4tRsILM/qbb63pGBPOr3y6J3V
yNqR5PS1JbRNM7cUSemwwxOs2/gy56Ysg9vnLSxj/JfdF2/aXPth67rXNCXGHomnOIQKO9l4XN9X
iyhBTsHVF+h39OL8qBDiknzXn44xNOcsdMRqQRqXetFqkZlYO+FGJFYEWfShWPahLRp1nBDObePR
GuemtJSq41YR9S5SCBIDDdEDZTm/LO5AH/uFpJclsWzSedty1CWmLC6SywG1CgmW2821QaIhkaHV
wJ2sMdCAHocIWRMVuTBtX0vTV9ZZL4eqSsu8Y/U9oA/TkPkmhiwXki/K5efFuVISMwR4CcEWULC+
daQslmoV6GHuIqJ36hqlnYP90gfBkIAxT882UOPogWLJyeJngwkw1svYEhIOnUCE4VnTFFHhyiao
8GM0Ng180YqYa8sOspGV/3pVEbVvdOrtfUIDOGBpx2SCuD13NygK9GGM4weIPUSA1HSlfMjbkDqn
7w51y7R+72HVvyEHx1dXV6WSPj67vroeXzfyEzSXzSiezWZNVk9JsgCGqiTftGm1mS58BUsrlT+b
nPXODG/5McHZP1R7YI8C8o46MUVyypuueen2hvsZXUBOM//ti0iIBZ92u/gzfnTnjM3hoQXlErrq
XjemHu9+/i0n2arbd0fuwFy40Fq6n/mLC1hXrXeBqiv7LCCOzCFZwry/QKZlMt+OzkqPgFHmhaDH
ghV8QD2A3Zjztx17EujIt4b9i+6vkE/grO4VFrg7+3Db/UC8H6kwH+9yGgfdv4HuYk66gBQIpyMI
MCyc3PNY8G5CAoq7oA/+vf7p5IBvByo2JBlJfcId6GByHLviUYBd/ao5pRdBnc0RdUBvuy8P7giA
VhuX5xZUfdtjJgGZpHaWOuuvu4jOxZ9Tjy/OIYQw6aIyFYq7PLHfOAcEunNx/f0PP03RHYWYSNyh
JYayAXDJM0/KBA1XV1Bmki08YAkANgnMYpAxcMF+lN0pAbBzYYbN3K8OFo/g7PF0vJ6MVX+HMA3a
w3QH+EEKK0hiBZWw4tbj8Z8ZOtjB0GG7ofs1ZriDMaPdjfkapJgPL9tv8e0LT4Nd8jTYkqjZ33+Z
Xd7NrtBLBaufSZr/IEjCP6rDz/vQ3nhHQD1TKMkPVEQvO7N0HlMedV59ctVyN/IY8/Yt6nReofc/
7hmKu6R/MNq7jzcsW8IdnG56aY9Th/B2tIu343ZvHbikQBDQp3SuJTdEHQRNXw6tEkncZ2VN/Q7s
aZVZz9semvEOodmiRhoMv85u7l6Ce8Grr0rczkae7sPIArHkAfphV0DzSoQLbUyMQRUlBMPs68G3
sw+vD+cDnNaD1a1qkKUbgwN6cbZXLx5oQJh6534nWYR/7H1yE2gpNSFEbAnEcUBnJgd3RkIrl4et
LfD6JpqsYW8XCj09TMPw3ybJYX8PQFF95mhq+ktICirAscQc+RFcwU1YVQIFeSukFVG27Lo9VXZJ
2TlINQwHe3AShBLIaG0zl6eNKfqY5SckPQmzT+5hbB9+Ayo2HH37KjYc/z+o2PD0sMQ/eE4VG74+
uDO7qNh+fNlHe3EYyyb7koDxFIk8k0ci5OOF/qUfC8M1u8vXoPL/NHE7boWApQdxbdTbC/FLoK89
ko4chutH/f3oVHGgex+G205z+zH6wOL6eQH6eiBxHQ2fr+c30A8ORzGj0WG96T+vN+PnU7Jn8Ob0
f5X+R3sR2Zsr9P4a3c1u7w5j5CHU8994sWs/1K973nT1fwr/F1BLAwQKAAIAAAAwgIpCJpCk4jQA
AAA0AAAALQAcAG1lZGlhL3RyYWNrL3RyYWNrLXVzZXItcHJlZmVyZW5jZXMtc3RkZXJyLnR4dFVU
CQADTO9lUUzvZVF1eAsAAQT1AQAABFAAAABGQUlMOiBUaW1lZCBvdXQgd2FpdGluZyBmb3Igbm90
aWZ5RG9uZSB0byBiZSBjYWxsZWQKUEsDBBQAAgAIAECAikKlmOOAqwAAALYGAAAbABwAbWVkaWEv
dmlkZW8tc2l6ZS1zdGRlcnIudHh0VVQJAANo72VRaO9lUXV4CwABBPUBAAAEUAAAAO2T0QqCQBBF
3/uK+QFj7SFliUA0JCgI8y16mHYHWtpWGbe0vy/qG4wSn+fC4XLnJDVDKCCcSzGTQkBLp4vxAbVN
IMKprRRayG7XuiCniUsmOsSxiKIjLFbMFS8lpHlaOU+d37/ClJZbCcbd0RoN6nMA0YlJ8pekktE1
Fv13aInWO/Tn3kDKmrr/FhljuzGOkHNGbcj5oe30bogP4rUrSPkhPfyo1qjWz6v1BFBLAwQUAAIA
CABBgIpCSwRRCaEAAABbAwAAIgAcAG1lZGlhL3ZpZGVvLXNvdXJjZS1sb2FkLXN0ZGVyci50eHRV
VAkAA2rvZVFq72VRdXgLAAEE9QEAAARQAAAA3ZHBCoJAFEX3fcX7AWNskSIRiIYEBWHuosVr5kFD
01OeU9rfJ7VuaVBwd/fC4XDTRiBUEM4TNRsCHZ0u1gfUtYEKp67W6CC/XZuS2JBUQnSIYxVFR1is
RGpZJpAVWc2eer8fxpRV2wQs39FZA/pdgOrVJP1JUiXIrUP/HVpqzA79eTSQdrYZ3yIX7DaWCaUQ
NJbY/9tPL0N8kKy5JP1B7wlQSwMECgAAAAAADICKQgAAAAAAAAAAAAAAAAoAHABtZWRpYS9XM0Mv
VVQJAAMH72VRFvBlUXV4CwABBPUBAAAEUAAAAFBLAwQKAAAAAAAJgIpCAAAAAAAAAAAAAAAAEAAc
AG1lZGlhL1czQy9hdWRpby9VVAkAAwLvZVEW8GVRdXgLAAEE9QEAAARQAAAAUEsDBAoAAAAAAAmA
ikIAAAAAAAAAAAAAAAAXABwAbWVkaWEvVzNDL2F1ZGlvL2V2ZW50cy9VVAkAAwLvZVEW8GVRdXgL
AAEE9QEAAARQAAAAUEsDBBQAAgAIAAmAikIhj704MgAAADMAAAAvABwAbWVkaWEvVzNDL2F1ZGlv
L2V2ZW50cy9ldmVudF9jYW5wbGF5LXN0ZGVyci50eHRVVAkAAwLvZVEC72VRdXgLAAEE9QEAAARQ
AAAAc8tJLEl1SU3OT0m1UkgB0Zl56QqpRUX5RVYKmXnJ+UVFqcklCimJJYkKyRmpydl6XABQSwME
CgAAAAAADICKQgAAAAAAAAAAAAAAABAAHABtZWRpYS9XM0MvdmlkZW8vVVQJAAMH72VRFvBlUXV4
CwABBPUBAAAEUAAAAFBLAwQKAAAAAAAMgIpCAAAAAAAAAAAAAAAAFwAcAG1lZGlhL1czQy92aWRl
by9wYXVzZWQvVVQJAAMH72VRFvBlUXV4CwABBPUBAAAEUAAAAFBLAwQUAAIACAAMgIpCIY+9ODIA
AAAzAAAAOgAcAG1lZGlhL1czQy92aWRlby9wYXVzZWQvcGF1c2VkX2ZhbHNlX2R1cmluZ19wbGF5
LXN0ZGVyci50eHRVVAkAAwfvZVEH72VRdXgLAAEE9QEAAARQAAAAc8tJLEl1SU3OT0m1UkgB0Zl5
6QqpRUX5RVYKmXnJ+UVFqcklCimJJYkKyRmpydl6XABQSwMECgAAAAAAF4CKQgAAAAAAAAAAAAAA
AAkAHABwbGF0Zm9ybS9VVAkAAx3vZVEW8GVRdXgLAAEE9QEAAARQAAAAUEsDBAoAAAAAABeAikIA
AAAAAAAAAAAAAAANABwAcGxhdGZvcm0vbWFjL1VUCQADHe9lURbwZVF1eAsAAQT1AQAABFAAAABQ
SwMECgAAAAAAF4CKQgAAAAAAAAAAAAAAABUAHABwbGF0Zm9ybS9tYWMvZWRpdGluZy9VVAkAAx3v
ZVEW8GVRdXgLAAEE9QEAAARQAAAAUEsDBAoAAAAAABeAikIAAAAAAAAAAAAAAAAeABwAcGxhdGZv
cm0vbWFjL2VkaXRpbmcvZGVsZXRpbmcvVVQJAAMd72VRFvBlUXV4CwABBPUBAAAEUAAAAFBLAwQU
AAIACAAXgIpCsf29MdsDAAB0CQAAQwAcAHBsYXRmb3JtL21hYy9lZGl0aW5nL2RlbGV0aW5nL2Rl
bGV0aW9uVUktc2luZ2xlLWluc3RhbmNlLWFjdHVhbC50eHRVVAkAAx3vZVEd72VRdXgLAAEE9QEA
AARQAAAAjVZhb+JGEP1+v2LEfWgiOcgGgw3SfbiUtEVK2jSlJ1WnU7W2J7DNetfd9QY41P/eWRts
Q0LuoiQQ75vZNzPvTRBsixpYCRe+51+C4V8RYt/fjH3/HcADygz1J47rMxDxHeHXQqVPsPtlcXf7
31loA1bZFnbXv83+qrGxF++xURxuRnFYYU9S35/mrbAH6AG8wE0Ju/clvbzED7p4AAcCbWWLW/Os
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
CXCwNwG+oMrD4HmgE3wv5f/HQmK4z+XacNflGi+jCHOelJQ+gXgcx7qOKPHzXgUO97nlGm6713le
cfa5FBluuRS5u769cy7/9tP7d9d3178EP62HutS/8PWf/v4XUEsDBBQAAgAIAJmAikLCebsbiQEA
ALMDAAA1ABwAcmV0cmllcy9tZWRpYS90cmFjay90cmFjay11c2VyLXByZWZlcmVuY2VzLWFjdHVh
bC50eHRVVAkAAxHwZVER8GVRdXgLAAEE9QEAAARQAAAAvZNNS8NAEIbv+RVzSwttQL0VPPgRoahV
aFFBPGyT2XTpZlZ2J1b/vZNNAvXrIIiXECaz7/s+s5OLk/nVDFamxhJcw7BThg1VoJ0Hcmz027kj
BHawRiiUtVgmKwwM7FWxhSagh2ePGj1SgSFLkmSJ3NWtoqpRFQY5PoPHlFw6gRTDNF/GF2qf2qdP
cipqHsygbeq1A1osWHKtsVAiCE7v+3n5MjgkUyg8qpg8Hg4tgHgiTbSfkBOL/C5frEbWqXKc5A+3
+dkqP4cRviBxxspXyFnwRasIx8cxxxhuLn9qFbfybcmKMXYfds0dxuFHDDbWfgszpJ+AexEeU7bx
0xK1aiynoJi9WTf8M52gCWCkm07jQHvPWvmteKkAvdp/4h/Netp4uX0i7V0NNVIjMGHjdrJLz2wc
hVjM9nxi/7UU54x1eDRU4uuNHgqnWBkimcS94c0ovWjXbpOOnzKJHsJC1V2gz+F/JZpTZU34a9WF
8zupKPqqOyxHpy+3bY2MzBEMfHFIYERUfpV3UEsDBBQAAgAIAJmAikLRX7JaGwIAAK0FAAAzABwA
cmV0cmllcy9tZWRpYS90cmFjay90cmFjay11c2VyLXByZWZlcmVuY2VzLWRpZmYudHh0VVQJAAMR
8GVREfBlUXV4CwABBPUBAAAEUAAAAM1TXWvbMBR996+4b2lJZK9uxyBQyLo4ULolYzXtoORBsa8T
bbIUpOsm+fe7ctJmpWQreRjDIKOPc8+5R0dCCEjurG5q9MlQkkyy+9vkHmc3ina/q0bpMvmGGqXH
RMuNbUgQehIOfaPJJw7JKcbXWCqZkJPFz+0oGo9OLB1W6NAU6AWul1gQljGtKep2u/+UXBbUSN1S
DwYgznrn0D3rXcBgEHVHH68/9yFXXAaYA1ZSkTJzqKwDY0lVm6E1CGRhhlBIrbGMIGch0JJBIIPf
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
AAAAAAAFABgAAAAAAAAAEADtQSHiAABmYXN0L1VUBQADxu5lUXV4CwABBPUBAAAEUAAAAFBLAQIe
AwoAAAAAAEV/ikIAAAAAAAAAAAAAAAAMABgAAAAAAAAAEADtQWDiAABmYXN0L2xvYWRlci9VVAUA
A4LuZVF1eAsAAQT1AQAABFAAAABQSwECHgMUAAIACABFf4pCFLlhIqcAAADXAAAALwAYAAAAAAAB
AAAApIGm4gAAZmFzdC9sb2FkZXIvamF2YXNjcmlwdC11cmwtaW4tb2JqZWN0LWFjdHVhbC50eHRV
VAUAA4HuZVF1eAsAAQT1AQAABFAAAABQSwECHgMUAAIACABFf4pCUtFYehABAADXAQAALQAYAAAA
AAABAAAApIG24wAAZmFzdC9sb2FkZXIvamF2YXNjcmlwdC11cmwtaW4tb2JqZWN0LWRpZmYudHh0
VVQFAAOB7mVRdXgLAAEE9QEAAARQAAAAUEsBAh4DFAACAAgARX+KQg4JEGhEAAAASQAAADEAGAAA
AAAAAQAAAKSBLeUAAGZhc3QvbG9hZGVyL2phdmFzY3JpcHQtdXJsLWluLW9iamVjdC1leHBlY3Rl
ZC50eHRVVAUAA4HuZVF1eAsAAQT1AQAABFAAAABQSwECHgMUAAIACABFf4pCguz5tNcHAADdGAAA
NQAYAAAAAAABAAAApIHc5QAAZmFzdC9sb2FkZXIvamF2YXNjcmlwdC11cmwtaW4tb2JqZWN0LXBy
ZXR0eS1kaWZmLmh0bWxVVAUAA4LuZVF1eAsAAQT1AQAABFAAAABQSwECHgMKAAAAAABbf4pCAAAA
AAAAAAAAAAAAGAAYAAAAAAAAABAA7UEi7gAAZmFzdC9zcGF0aWFsLW5hdmlnYXRpb24vVVQFAAOt
7mVRdXgLAAEE9QEAAARQAAAAUEsBAh4DFAACAAgAW3+KQiGPvTgyAAAAMwAAADYAGAAAAAAAAQAA
AKSBdO4AAGZhc3Qvc3BhdGlhbC1uYXZpZ2F0aW9uL3NuYXYtbWVkaWEtZWxlbWVudHMtc3RkZXJy
LnR4dFVUBQADre5lUXV4CwABBPUBAAAEUAAAAFBLAQIeAwoAAAAAAGp/ikIAAAAAAAAAAAAAAAAJ
ABgAAAAAAAAAEADtQRbvAABmYXN0L3hzbC9VVAUAA8fuZVF1eAsAAQT1AQAABFAAAABQSwECHgMU
AAIACABpf4pCcv1l8oUAAADpAAAAJQAYAAAAAAABAAAApIFZ7wAAZmFzdC94c2wvdHJhbnNmb3Jt
LXhoci1kb2Mtc3RkZXJyLnR4dFVUBQADxu5lUXV4CwABBPUBAAAEUAAAAFBLAQIeAxQAAgAIAGl/
ikLOCSgCjQAAAPAAAAAnABgAAAAAAAEAAACkgT3wAABmYXN0L3hzbC94c2x0LWJhZC1pbXBvcnQt
dXJpLXN0ZGVyci50eHRVVAUAA8buZVF1eAsAAQT1AQAABFAAAABQSwECHgMUAAIACABqf4pCgUp3
rUsAAACsAAAANAAYAAAAAAABAAAApIEr8QAAZmFzdC94c2wveHNsdC10cmFuc2Zvcm0tdG8tZnJh
Z21lbnQtY3Jhc2gtc3RkZXJyLnR4dFVUBQADx+5lUXV4CwABBPUBAAAEUAAAAFBLAQIeAxQAAgAI
AJqAikKV4rKVuQEAAKIDAAARABgAAAAAAAEAAACkgeTxAABmdWxsX3Jlc3VsdHMuanNvblVUBQAD
E/BlUXV4CwABBPUBAAAEUAAAAFBLAQIeAwoAAAAAAPR+ikIAAAAAAAAAAAAAAAAFABgAAAAAAAAA
EADtQejzAABodHRwL1VUBQAD7O1lUXV4CwABBPUBAAAEUAAAAFBLAQIeAwoAAAAAAAyAikIAAAAA
AAAAAAAAAAALABgAAAAAAAAAEADtQSf0AABodHRwL3Rlc3RzL1VUBQADB+9lUXV4CwABBPUBAAAE
UAAAAFBLAQIeAwoAAAAAAPR+ikIAAAAAAAAAAAAAAAAUABgAAAAAAAAAEADtQWz0AABodHRwL3Rl
c3RzL2FwcGNhY2hlL1VUBQAD7O1lUXV4CwABBPUBAAAEUAAAAFBLAQIeAxQAAgAIAPR+ikIhj704
MgAAADMAAAAkABgAAAAAAAEAAACkgbr0AABodHRwL3Rlc3RzL2FwcGNhY2hlL3ZpZGVvLXN0ZGVy
ci50eHRVVAUAA+ztZVF1eAsAAQT1AQAABFAAAABQSwECHgMKAAAAAABdf4pCAAAAAAAAAAAAAAAA
EAAYAAAAAAAAABAA7UFK9QAAaHR0cC90ZXN0cy9taXNjL1VUBQADsu5lUXV4CwABBPUBAAAEUAAA
AFBLAQIeAxQAAgAIAF1/ikIVNTWSegAAALwAAAAqABgAAAAAAAEAAACkgZT1AABodHRwL3Rlc3Rz
L21pc2MveHNsdC1iYWQtaW1wb3J0LXN0ZGVyci50eHRVVAUAA7LuZVF1eAsAAQT1AQAABFAAAABQ
SwECHgMKAAAAAAAkgIpCAAAAAAAAAAAAAAAAFAAYAAAAAAAAABAA7UFy9gAAaHR0cC90ZXN0cy9z
ZWN1cml0eS9VVAUAAzTvZVF1eAsAAQT1AQAABFAAAABQSwECHgMKAAAAAAAagIpCAAAAAAAAAAAA
AAAAKgAYAAAAAAAAABAA7UHA9gAAaHR0cC90ZXN0cy9zZWN1cml0eS9jb250ZW50U2VjdXJpdHlQ
b2xpY3kvVVQFAAMk72VRdXgLAAEE9QEAAARQAAAAUEsBAh4DFAACAAgAGoCKQmOqrGyCAAAAqAAA
AEAAGAAAAAAAAQAAAKSBJPcAAGh0dHAvdGVzdHMvc2VjdXJpdHkvY29udGVudFNlY3VyaXR5UG9s
aWN5L3hzbC1hbGxvd2VkLXN0ZGVyci50eHRVVAUAAyTvZVF1eAsAAQT1AQAABFAAAABQSwECHgMU
AAIACAAagIpCY6qsbIIAAACoAAAAUgAYAAAAAAABAAAApIEg+AAAaHR0cC90ZXN0cy9zZWN1cml0
eS9jb250ZW50U2VjdXJpdHlQb2xpY3kveHNsLXVuYWZmZWN0ZWQtYnktc3R5bGUtc3JjLTItc3Rk
ZXJyLnR4dFVUBQADJO9lUXV4CwABBPUBAAAEUAAAAFBLAQIeAwoAAAAAACSAikIAAAAAAAAAAAAA
AAAhABgAAAAAAAAAEADtQS75AABodHRwL3Rlc3RzL3NlY3VyaXR5L21peGVkQ29udGVudC9VVAUA
AzTvZVF1eAsAAQT1AQAABFAAAABQSwECHgMUAAIACAAkgIpCPjJwJqMBAAB5BAAAVwAYAAAAAAAB
AAAApIGJ+QAAaHR0cC90ZXN0cy9zZWN1cml0eS9taXhlZENvbnRlbnQvcmVkaXJlY3QtaHR0cHMt
dG8taHR0cC1pZnJhbWUtaW4tbWFpbi1mcmFtZS1hY3R1YWwudHh0VVQFAAM072VRdXgLAAEE9QEA
AARQAAAAUEsBAh4DFAACAAgAJICKQsKXkFITAQAAygIAAFUAGAAAAAAAAQAAAKSBvfsAAGh0dHAv
dGVzdHMvc2VjdXJpdHkvbWl4ZWRDb250ZW50L3JlZGlyZWN0LWh0dHBzLXRvLWh0dHAtaWZyYW1l
LWluLW1haW4tZnJhbWUtZGlmZi50eHRVVAUAAzTvZVF1eAsAAQT1AQAABFAAAABQSwECHgMUAAIA
CAAkgIpCjqqxVLYBAADXBAAAWQAYAAAAAAABAAAApIFf/QAAaHR0cC90ZXN0cy9zZWN1cml0eS9t
aXhlZENvbnRlbnQvcmVkaXJlY3QtaHR0cHMtdG8taHR0cC1pZnJhbWUtaW4tbWFpbi1mcmFtZS1l
eHBlY3RlZC50eHRVVAUAAzTvZVF1eAsAAQT1AQAABFAAAABQSwECHgMUAAIACAAkgIpCxzxrm/AH
AAADHAAAXQAYAAAAAAABAAAApIGo/wAAaHR0cC90ZXN0cy9zZWN1cml0eS9taXhlZENvbnRlbnQv
cmVkaXJlY3QtaHR0cHMtdG8taHR0cC1pZnJhbWUtaW4tbWFpbi1mcmFtZS1wcmV0dHktZGlmZi5o
dG1sVVQFAAM072VRdXgLAAEE9QEAAARQAAAAUEsBAh4DFAACAAgADICKQmBLZhCRAAAA+wEAAEUA
GAAAAAAAAQAAAKSBLwgBAGh0dHAvdGVzdHMvc2VjdXJpdHkveHNzLURFTklFRC14c2wtZG9jdW1l
bnQtc2VjdXJpdHlPcmlnaW4tc3RkZXJyLnR4dFVUBQADB+9lUXV4CwABBPUBAAAEUAAAAFBLAQIe
AxQAAgAIAIeAikLqinxCYQUAAAUPAAAKABgAAAAAAAEAAACkgT8JAQBodHRwZC5jb25mVVQFAAPu
72VRdXgLAAEE9QEAAARQAAAAUEsBAh4DCgAAAAAAQYCKQgAAAAAAAAAAAAAAAAYAGAAAAAAAAAAQ
AO1B5A4BAG1lZGlhL1VUBQADau9lUXV4CwABBPUBAAAEUAAAAFBLAQIeAxQAAgAIAAmAikIhj704
MgAAADMAAAAtABgAAAAAAAEAAACkgSQPAQBtZWRpYS9jbGljay12b2x1bWUtYmFyLW5vdC1wYXVz
aW5nLXN0ZGVyci50eHRVVAUAAwLvZVF1eAsAAQT1AQAABFAAAABQSwECHgMUAAIACAAMgIpCBb+y
CKsAAAC2BgAAHwAYAAAAAAABAAAApIG9DwEAbWVkaWEvbWVkaWEtY2FwdGlvbnMtc3RkZXJyLnR4
dFVUBQADCO9lUXV4CwABBPUBAAAEUAAAAFBLAQIeAxQAAgAIABuAikJ9DElurQAAADABAAAqABgA
AAAAAAEAAACkgcEQAQBtZWRpYS9tZWRpYS1jb250cm9sbGVyLXBsYXliYWNrLWFjdHVhbC50eHRV
VAUAAybvZVF1eAsAAQT1AQAABFAAAABQSwECHgMUAAIACAAbgIpCVsiivREBAAAEAgAAKAAYAAAA
AAABAAAApIHSEQEAbWVkaWEvbWVkaWEtY29udHJvbGxlci1wbGF5YmFjay1kaWZmLnR4dFVUBQAD
Ju9lUXV4CwABBPUBAAAEUAAAAFBLAQIeAxQAAgAIABuAikL0ijq+mAAAABUBAAAsABgAAAAAAAEA
AACkgUUTAQBtZWRpYS9tZWRpYS1jb250cm9sbGVyLXBsYXliYWNrLWV4cGVjdGVkLnR4dFVUBQAD
Ju9lUXV4CwABBPUBAAAEUAAAAFBLAQIeAxQAAgAIAByAikIDHQNBDggAAKUdAAAwABgAAAAAAAEA
AACkgUMUAQBtZWRpYS9tZWRpYS1jb250cm9sbGVyLXBsYXliYWNrLXByZXR0eS1kaWZmLmh0bWxV
VAUAAyfvZVF1eAsAAQT1AQAABFAAAABQSwECHgMKAAIAAAAbgIpCJpCk4jQAAAA0AAAAKgAYAAAA
AAABAAAApIG7HAEAbWVkaWEvbWVkaWEtY29udHJvbGxlci1wbGF5YmFjay1zdGRlcnIudHh0VVQF
AAMm72VRdXgLAAEE9QEAAARQAAAAUEsBAh4DFAACAAgAIYCKQiGPvTgyAAAAMwAAACgAGAAAAAAA
AQAAAKSBUx0BAG1lZGlhL21lZGlhLWZ1bGxzY3JlZW4taW5saW5lLXN0ZGVyci50eHRVVAUAAy7v
ZVF1eAsAAQT1AQAABFAAAABQSwECHgMKAAAAAAAxgIpCAAAAAAAAAAAAAAAADAAYAAAAAAAAABAA
7UHnHQEAbWVkaWEvdHJhY2svVVQFAANN72VRdXgLAAEE9QEAAARQAAAAUEsBAh4DFAACAAgAIYCK
QptI9F4GAQAA6wMAACwAGAAAAAAAAQAAAKSBLR4BAG1lZGlhL3RyYWNrL3RyYWNrLW5vZGUtYWRk
LXJlbW92ZS1hY3R1YWwudHh0VVQFAAMt72VRdXgLAAEE9QEAAARQAAAAUEsBAh4DFAACAAgAIYCK
QkmexTtMAQAAlgQAACoAGAAAAAAAAQAAAKSBmR8BAG1lZGlhL3RyYWNrL3RyYWNrLW5vZGUtYWRk
LXJlbW92ZS1kaWZmLnR4dFVUBQADLe9lUXV4CwABBPUBAAAEUAAAAFBLAQIeAxQAAgAIACGAikIm
oweL1QAAAEwDAAAuABgAAAAAAAEAAACkgUkhAQBtZWRpYS90cmFjay90cmFjay1ub2RlLWFkZC1y
ZW1vdmUtZXhwZWN0ZWQudHh0VVQFAAMt72VRdXgLAAEE9QEAAARQAAAAUEsBAh4DFAACAAgAIYCK
QtKIBabaCAAA+isAADIAGAAAAAAAAQAAAKSBhiIBAG1lZGlhL3RyYWNrL3RyYWNrLW5vZGUtYWRk
LXJlbW92ZS1wcmV0dHktZGlmZi5odG1sVVQFAAMt72VRdXgLAAEE9QEAAARQAAAAUEsBAh4DFAAC
AAgAMICKQsJ5uxuJAQAAswMAAC0AGAAAAAAAAQAAAKSBzCsBAG1lZGlhL3RyYWNrL3RyYWNrLXVz
ZXItcHJlZmVyZW5jZXMtYWN0dWFsLnR4dFVUBQADTO9lUXV4CwABBPUBAAAEUAAAAFBLAQIeAxQA
AgAIADCAikIU/gnXFAIAAJ0FAAArABgAAAAAAAEAAACkgbwtAQBtZWRpYS90cmFjay90cmFjay11
c2VyLXByZWZlcmVuY2VzLWRpZmYudHh0VVQFAANM72VRdXgLAAEE9QEAAARQAAAAUEsBAh4DFAAC
AAgAMICKQuK8c0sEAgAAyQYAAC8AGAAAAAAAAQAAAKSBNTABAG1lZGlhL3RyYWNrL3RyYWNrLXVz
ZXItcHJlZmVyZW5jZXMtZXhwZWN0ZWQudHh0VVQFAANM72VRdXgLAAEE9QEAAARQAAAAUEsBAh4D
FAACAAgAMYCKQmU3Hg17CQAAHC4AADMAGAAAAAAAAQAAAKSBojIBAG1lZGlhL3RyYWNrL3RyYWNr
LXVzZXItcHJlZmVyZW5jZXMtcHJldHR5LWRpZmYuaHRtbFVUBQADTe9lUXV4CwABBPUBAAAEUAAA
AFBLAQIeAwoAAgAAADCAikImkKTiNAAAADQAAAAtABgAAAAAAAEAAACkgYo8AQBtZWRpYS90cmFj
ay90cmFjay11c2VyLXByZWZlcmVuY2VzLXN0ZGVyci50eHRVVAUAA0zvZVF1eAsAAQT1AQAABFAA
AABQSwECHgMUAAIACABAgIpCpZjjgKsAAAC2BgAAGwAYAAAAAAABAAAApIElPQEAbWVkaWEvdmlk
ZW8tc2l6ZS1zdGRlcnIudHh0VVQFAANo72VRdXgLAAEE9QEAAARQAAAAUEsBAh4DFAACAAgAQYCK
QksEUQmhAAAAWwMAACIAGAAAAAAAAQAAAKSBJT4BAG1lZGlhL3ZpZGVvLXNvdXJjZS1sb2FkLXN0
ZGVyci50eHRVVAUAA2rvZVF1eAsAAQT1AQAABFAAAABQSwECHgMKAAAAAAAMgIpCAAAAAAAAAAAA
AAAACgAYAAAAAAAAABAA7UEiPwEAbWVkaWEvVzNDL1VUBQADB+9lUXV4CwABBPUBAAAEUAAAAFBL
AQIeAwoAAAAAAAmAikIAAAAAAAAAAAAAAAAQABgAAAAAAAAAEADtQWY/AQBtZWRpYS9XM0MvYXVk
aW8vVVQFAAMC72VRdXgLAAEE9QEAAARQAAAAUEsBAh4DCgAAAAAACYCKQgAAAAAAAAAAAAAAABcA
GAAAAAAAAAAQAO1BsD8BAG1lZGlhL1czQy9hdWRpby9ldmVudHMvVVQFAAMC72VRdXgLAAEE9QEA
AARQAAAAUEsBAh4DFAACAAgACYCKQiGPvTgyAAAAMwAAAC8AGAAAAAAAAQAAAKSBAUABAG1lZGlh
L1czQy9hdWRpby9ldmVudHMvZXZlbnRfY2FucGxheS1zdGRlcnIudHh0VVQFAAMC72VRdXgLAAEE
9QEAAARQAAAAUEsBAh4DCgAAAAAADICKQgAAAAAAAAAAAAAAABAAGAAAAAAAAAAQAO1BnEABAG1l
ZGlhL1czQy92aWRlby9VVAUAAwfvZVF1eAsAAQT1AQAABFAAAABQSwECHgMKAAAAAAAMgIpCAAAA
AAAAAAAAAAAAFwAYAAAAAAAAABAA7UHmQAEAbWVkaWEvVzNDL3ZpZGVvL3BhdXNlZC9VVAUAAwfv
ZVF1eAsAAQT1AQAABFAAAABQSwECHgMUAAIACAAMgIpCIY+9ODIAAAAzAAAAOgAYAAAAAAABAAAA
pIE3QQEAbWVkaWEvVzNDL3ZpZGVvL3BhdXNlZC9wYXVzZWRfZmFsc2VfZHVyaW5nX3BsYXktc3Rk
ZXJyLnR4dFVUBQADB+9lUXV4CwABBPUBAAAEUAAAAFBLAQIeAwoAAAAAABeAikIAAAAAAAAAAAAA
AAAJABgAAAAAAAAAEADtQd1BAQBwbGF0Zm9ybS9VVAUAAx3vZVF1eAsAAQT1AQAABFAAAABQSwEC
HgMKAAAAAAAXgIpCAAAAAAAAAAAAAAAADQAYAAAAAAAAABAA7UEgQgEAcGxhdGZvcm0vbWFjL1VU
BQADHe9lUXV4CwABBPUBAAAEUAAAAFBLAQIeAwoAAAAAABeAikIAAAAAAAAAAAAAAAAVABgAAAAA
AAAAEADtQWdCAQBwbGF0Zm9ybS9tYWMvZWRpdGluZy9VVAUAAx3vZVF1eAsAAQT1AQAABFAAAABQ
SwECHgMKAAAAAAAXgIpCAAAAAAAAAAAAAAAAHgAYAAAAAAAAABAA7UG2QgEAcGxhdGZvcm0vbWFj
L2VkaXRpbmcvZGVsZXRpbmcvVVQFAAMd72VRdXgLAAEE9QEAAARQAAAAUEsBAh4DFAACAAgAF4CK
QrH9vTHbAwAAdAkAAEMAGAAAAAAAAQAAAKSBDkMBAHBsYXRmb3JtL21hYy9lZGl0aW5nL2RlbGV0
aW5nL2RlbGV0aW9uVUktc2luZ2xlLWluc3RhbmNlLWFjdHVhbC50eHRVVAUAAx3vZVF1eAsAAQT1
AQAABFAAAABQSwECHgMUAAIACAAXgIpCWrsOp54BAACoAwAAQQAYAAAAAAABAAAApIFmRwEAcGxh
dGZvcm0vbWFjL2VkaXRpbmcvZGVsZXRpbmcvZGVsZXRpb25VSS1zaW5nbGUtaW5zdGFuY2UtZGlm
Zi50eHRVVAUAAx3vZVF1eAsAAQT1AQAABFAAAABQSwECHgMUAAIACAAXgIpCtQ5IZdkDAAB0CQAA
RQAYAAAAAAABAAAApIF/SQEAcGxhdGZvcm0vbWFjL2VkaXRpbmcvZGVsZXRpbmcvZGVsZXRpb25V
SS1zaW5nbGUtaW5zdGFuY2UtZXhwZWN0ZWQudHh0VVQFAAMd72VRdXgLAAEE9QEAAARQAAAAUEsB
Ah4DFAACAAgAF4CKQkAFUtmPCAAAvR4AAEkAGAAAAAAAAQAAAKSB100BAHBsYXRmb3JtL21hYy9l
ZGl0aW5nL2RlbGV0aW5nL2RlbGV0aW9uVUktc2luZ2xlLWluc3RhbmNlLXByZXR0eS1kaWZmLmh0
bWxVVAUAAx3vZVF1eAsAAQT1AQAABFAAAABQSwECHgMUAAIACABXgIpCNhF5XyMCAADTCQAAKwAY
AAAAAAABAAAApIHpVgEAcHl3ZWJzb2NrZXQud3MubG9nLTEwQXByMjAxMy0xNTU1MzEtZXJyLnR4
dFVUBQADlu9lUXV4CwABBPUBAAAEUAAAAFBLAQIeAxQAAgAIAEiAikIbna3QBQEAAI8CAAArABgA
AAAAAAEAAACkgXFZAQBweXdlYnNvY2tldC53cy5sb2ctMTBBcHIyMDEzLTE1NTUzMS1vdXQudHh0
VVQFAAN472VRdXgLAAEE9QEAAARQAAAAUEsBAh4DFAACAAgAmoCKQsowPWybJQAAXqAAAAwAGAAA
AAAAAQAAAKSB21oBAHJlc3VsdHMuaHRtbFVUBQADE/BlUXV4CwABBPUBAAAEUAAAAFBLAQIeAwoA
AAAAAIqAikIAAAAAAAAAAAAAAAAIABgAAAAAAAAAEADtQbyAAQByZXRyaWVzL1VUBQAD8+9lUXV4
CwABBPUBAAAEUAAAAFBLAQIeAwoAAAAAAIqAikIAAAAAAAAAAAAAAAAOABgAAAAAAAAAEADtQf6A
AQByZXRyaWVzL21lZGlhL1VUBQAD8+9lUXV4CwABBPUBAAAEUAAAAFBLAQIeAwoAAAAAAJmAikIA
AAAAAAAAAAAAAAAUABgAAAAAAAAAEADtQUaBAQByZXRyaWVzL21lZGlhL3RyYWNrL1VUBQADEfBl
UXV4CwABBPUBAAAEUAAAAFBLAQIeAxQAAgAIAIqAikKbSPReBgEAAOsDAAA0ABgAAAAAAAEAAACk
gZSBAQByZXRyaWVzL21lZGlhL3RyYWNrL3RyYWNrLW5vZGUtYWRkLXJlbW92ZS1hY3R1YWwudHh0
VVQFAAPz72VRdXgLAAEE9QEAAARQAAAAUEsBAh4DFAACAAgAioCKQlXstt1RAQAApgQAADIAGAAA
AAAAAQAAAKSBCIMBAHJldHJpZXMvbWVkaWEvdHJhY2svdHJhY2stbm9kZS1hZGQtcmVtb3ZlLWRp
ZmYudHh0VVQFAAPz72VRdXgLAAEE9QEAAARQAAAAUEsBAh4DFAACAAgAioCKQiajB4vVAAAATAMA
ADYAGAAAAAAAAQAAAKSBxYQBAHJldHJpZXMvbWVkaWEvdHJhY2svdHJhY2stbm9kZS1hZGQtcmVt
b3ZlLWV4cGVjdGVkLnR4dFVUBQAD8+9lUXV4CwABBPUBAAAEUAAAAFBLAQIeAxQAAgAIAIqAikJq
MUov3wgAAAIsAAA6ABgAAAAAAAEAAACkgQqGAQByZXRyaWVzL21lZGlhL3RyYWNrL3RyYWNrLW5v
ZGUtYWRkLXJlbW92ZS1wcmV0dHktZGlmZi5odG1sVVQFAAPz72VRdXgLAAEE9QEAAARQAAAAUEsB
Ah4DFAACAAgAmYCKQsJ5uxuJAQAAswMAADUAGAAAAAAAAQAAAKSBXY8BAHJldHJpZXMvbWVkaWEv
dHJhY2svdHJhY2stdXNlci1wcmVmZXJlbmNlcy1hY3R1YWwudHh0VVQFAAMR8GVRdXgLAAEE9QEA
AARQAAAAUEsBAh4DFAACAAgAmYCKQtFfslobAgAArQUAADMAGAAAAAAAAQAAAKSBVZEBAHJldHJp
ZXMvbWVkaWEvdHJhY2svdHJhY2stdXNlci1wcmVmZXJlbmNlcy1kaWZmLnR4dFVUBQADEfBlUXV4
CwABBPUBAAAEUAAAAFBLAQIeAxQAAgAIAJmAikLivHNLBAIAAMkGAAA3ABgAAAAAAAEAAACkgd2T
AQByZXRyaWVzL21lZGlhL3RyYWNrL3RyYWNrLXVzZXItcHJlZmVyZW5jZXMtZXhwZWN0ZWQudHh0
VVQFAAMR8GVRdXgLAAEE9QEAAARQAAAAUEsBAh4DFAACAAgAmYCKQsE/J6mBCQAAJC4AADsAGAAA
AAAAAQAAAKSBUpYBAHJldHJpZXMvbWVkaWEvdHJhY2svdHJhY2stdXNlci1wcmVmZXJlbmNlcy1w
cmV0dHktZGlmZi5odG1sVVQFAAMR8GVRdXgLAAEE9QEAAARQAAAAUEsBAh4DFAACAAgAmYCKQlBs
q4RcAAAAZwAAADUAGAAAAAAAAQAAAKSBSKABAHJldHJpZXMvbWVkaWEvdHJhY2svdHJhY2stdXNl
ci1wcmVmZXJlbmNlcy1zdGRlcnIudHh0VVQFAAMR8GVRdXgLAAEE9QEAAARQAAAAUEsBAh4DFAAC
AAgAmoCKQukLMn8V4wUAHdAgAAoAGAAAAAAAAQAAAKSBE6EBAHN0YXRzLmpzb25VVAUAAxPwZVF1
eAsAAQT1AQAABFAAAABQSwECHgMKAAAAAABTgIpCAAAAAAAAAAAAAAAABAAYAAAAAAAAABAA7UFs
hAcAc3ZnL1VUBQADju9lUXV4CwABBPUBAAAEUAAAAFBLAQIeAwoAAAAAAFOAikIAAAAAAAAAAAAA
AAALABgAAAAAAAAAEADtQaqEBwBzdmcvc3Ryb2tlL1VUBQADju9lUXV4CwABBPUBAAAEUAAAAFBL
AQIeAxQAAgAIAFOAikI5Y6+mhAAAAJQAAAAlABgAAAAAAAEAAACkge+EBwBzdmcvc3Ryb2tlL3pl
cm8td2lkdGgtaGFuZy1zdGRlcnIudHh0VVQFAAOO72VRdXgLAAEE9QEAAARQAAAAUEsFBgAAAABZ
AFkAhyUAANKFBwAAAA==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>197460</attachid>
            <date>2013-04-10 18:24:05 -0700</date>
            <delta_ts>2013-04-10 19:58:11 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-114330-20130410192346.patch</filename>
            <type>text/plain</type>
            <size>58316</size>
            <attacher name="Brendan Long">b.long</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTQ4MDc0CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggNzU5NmU1YzJiOGIwODFl
NWFmMzk3OThlODdiMWIyYzg0MGRmNDMxYS4uN2E5ZjQwMzgwNjMzMTI4MDlhNGFkYjYwZWU4MGQx
YTEyNzRmMjdjMCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDEwMiBAQAorMjAxMy0wNC0wOSAgQnJl
bmRhbiBMb25nICA8Yi5sb25nQGNhYmxlbGFicy5jb20+CisKKyAgICAgICAgUmVmYWN0b3IgVGV4
dFRyYWNrIGFuZCBUZXh0VHJhY2tMaXN0IHRvIG1ha2UgaXQgZWFzaWVyIHRvIGFkZCBhdWRpbyBh
bmQgdmlkZW8gdHJhY2tzCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVn
LmNnaT9pZD0xMTQzMzAKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKwor
ICAgICAgICBObyBuZXcgdGVzdHMgYmVjYXVzZSB0aGlzIGRvZXNuJ3QgYWRkIG5ldyBmdW5jdGlv
bmFsaXR5LgorCisgICAgICAgICogQ01ha2VMaXN0cy50eHQ6CisgICAgICAgICogVGFyZ2V0LnBy
aToKKyAgICAgICAgKiBodG1sL0hUTUxNZWRpYUVsZW1lbnQuY3BwOgorICAgICAgICAoV2ViQ29y
ZTo6SFRNTE1lZGlhRWxlbWVudDo6bWVkaWFQbGF5ZXJEaWRBZGRUZXh0VHJhY2spOgorICAgICAg
ICAoV2ViQ29yZTo6SFRNTE1lZGlhRWxlbWVudDo6bWVkaWFQbGF5ZXJEaWRSZW1vdmVUZXh0VHJh
Y2spOgorICAgICAgICAoV2ViQ29yZTo6SFRNTE1lZGlhRWxlbWVudDo6YWRkVGV4dFRyYWNrKToK
KyAgICAgICAgKFdlYkNvcmU6OkhUTUxNZWRpYUVsZW1lbnQ6OnJlbW92ZVRleHRUcmFjayk6Cisg
ICAgICAgIChXZWJDb3JlOjpIVE1MTWVkaWFFbGVtZW50OjpyZW1vdmVBbGxJbmJhbmRUcmFja3Mp
OgorICAgICAgICAoV2ViQ29yZTo6SFRNTE1lZGlhRWxlbWVudDo6ZGlkQWRkVGV4dFRyYWNrKToK
KyAgICAgICAgKFdlYkNvcmU6OkhUTUxNZWRpYUVsZW1lbnQ6OmRpZFJlbW92ZVRleHRUcmFjayk6
CisgICAgICAgICogaHRtbC9IVE1MTWVkaWFFbGVtZW50Lmg6CisgICAgICAgIChXZWJDb3JlKToK
KyAgICAgICAgKEhUTUxNZWRpYUVsZW1lbnQpOgorICAgICAgICAqIGh0bWwvSFRNTFRyYWNrRWxl
bWVudC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpIVE1MVHJhY2tFbGVtZW50OjppbnNlcnRlZElu
dG8pOgorICAgICAgICAoV2ViQ29yZTo6SFRNTFRyYWNrRWxlbWVudDo6cmVtb3ZlZEZyb20pOgor
ICAgICAgICAqIGh0bWwvdHJhY2svVGV4dFRyYWNrLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlRl
eHRUcmFjazo6VGV4dFRyYWNrKToKKyAgICAgICAgKFdlYkNvcmU6OlRleHRUcmFjazo6aW50ZXJm
YWNlTmFtZSk6CisgICAgICAgIChXZWJDb3JlKToKKyAgICAgICAgKFdlYkNvcmU6OlRleHRUcmFj
azo6c2NyaXB0RXhlY3V0aW9uQ29udGV4dCk6CisgICAgICAgIChXZWJDb3JlOjpUZXh0VHJhY2s6
OmV2ZW50VGFyZ2V0RGF0YSk6CisgICAgICAgIChXZWJDb3JlOjpUZXh0VHJhY2s6OmVuc3VyZUV2
ZW50VGFyZ2V0RGF0YSk6CisgICAgICAgIChXZWJDb3JlOjpUZXh0VHJhY2s6OmlzVmFsaWRLaW5k
KToKKyAgICAgICAgKFdlYkNvcmU6OlRleHRUcmFjazo6c2V0S2luZCk6CisgICAgICAgIChXZWJD
b3JlOjpUZXh0VHJhY2s6OmlzUmVuZGVyZWQpOgorICAgICAgICAoV2ViQ29yZTo6VGV4dFRyYWNr
OjpwbGF0Zm9ybVRleHRUcmFjayk6CisgICAgICAgIChXZWJDb3JlOjpUZXh0VHJhY2s6OmlzTWFp
blByb2dyYW1Db250ZW50KToKKyAgICAgICAgKiBodG1sL3RyYWNrL1RleHRUcmFjay5oOgorICAg
ICAgICAoV2ViQ29yZSk6CisgICAgICAgIChUZXh0VHJhY2spOgorICAgICAgICAoV2ViQ29yZTo6
VGV4dFRyYWNrOjpkZWZhdWx0S2luZEtleXdvcmQpOgorICAgICAgICAoV2ViQ29yZTo6VGV4dFRy
YWNrOjpjbGllbnQpOgorICAgICAgICAoV2ViQ29yZTo6VGV4dFRyYWNrOjpyZWZFdmVudFRhcmdl
dCk6CisgICAgICAgIChXZWJDb3JlOjpUZXh0VHJhY2s6OmRlcmVmRXZlbnRUYXJnZXQpOgorICAg
ICAgICAqIGh0bWwvdHJhY2svVGV4dFRyYWNrTGlzdC5jcHA6CisgICAgICAgIChUZXh0VHJhY2tM
aXN0OjpUZXh0VHJhY2tMaXN0KToKKyAgICAgICAgKFRleHRUcmFja0xpc3Q6OmdldFRyYWNrSW5k
ZXgpOgorICAgICAgICAoVGV4dFRyYWNrTGlzdDo6Z2V0VHJhY2tJbmRleFJlbGF0aXZlVG9SZW5k
ZXJlZFRyYWNrcyk6CisgICAgICAgIChUZXh0VHJhY2tMaXN0OjppdGVtKToKKyAgICAgICAgKFRl
eHRUcmFja0xpc3Q6OmdldEluYmFuZFRyYWNrKToKKyAgICAgICAgKFRleHRUcmFja0xpc3Q6Omlu
dmFsaWRhdGVUcmFja0luZGV4ZXNBZnRlclRyYWNrKToKKyAgICAgICAgKFRleHRUcmFja0xpc3Q6
OmFwcGVuZCk6CisgICAgICAgIChUZXh0VHJhY2tMaXN0OjpyZW1vdmUpOgorICAgICAgICAoVGV4
dFRyYWNrTGlzdDo6Y29udGFpbnMpOgorICAgICAgICAqIGh0bWwvdHJhY2svVGV4dFRyYWNrTGlz
dC5oOgorICAgICAgICAoV2ViQ29yZSk6CisgICAgICAgIChUZXh0VHJhY2tMaXN0KToKKyAgICAg
ICAgKiBodG1sL3RyYWNrL1RyYWNrQmFzZS5jcHA6CisgICAgICAgIChXZWJDb3JlOjpUcmFja0Jh
c2U6OlRyYWNrQmFzZSk6CisgICAgICAgIChXZWJDb3JlOjpUcmFja0Jhc2U6OnNldEtpbmQpOgor
ICAgICAgICAqIGh0bWwvdHJhY2svVHJhY2tCYXNlLmg6CisgICAgICAgIChXZWJDb3JlKToKKyAg
ICAgICAgKFdlYkNvcmU6OlRyYWNrQmFzZTo6c2V0TWVkaWFFbGVtZW50KToKKyAgICAgICAgKFdl
YkNvcmU6OlRyYWNrQmFzZTo6bWVkaWFFbGVtZW50KToKKyAgICAgICAgKFRyYWNrQmFzZSk6Cisg
ICAgICAgIChXZWJDb3JlOjpUcmFja0Jhc2U6OmtpbmQpOgorICAgICAgICAoV2ViQ29yZTo6VHJh
Y2tCYXNlOjpsYWJlbCk6CisgICAgICAgIChXZWJDb3JlOjpUcmFja0Jhc2U6OnNldExhYmVsKToK
KyAgICAgICAgKFdlYkNvcmU6OlRyYWNrQmFzZTo6bGFuZ3VhZ2UpOgorICAgICAgICAoV2ViQ29y
ZTo6VHJhY2tCYXNlOjpzZXRMYW5ndWFnZSk6CisgICAgICAgICogaHRtbC90cmFjay9UcmFja0xp
c3RCYXNlLmNwcDogQWRkZWQuCisgICAgICAgIChUcmFja0xpc3RCYXNlOjpUcmFja0xpc3RCYXNl
KToKKyAgICAgICAgKFRyYWNrTGlzdEJhc2U6On5UcmFja0xpc3RCYXNlKToKKyAgICAgICAgKFRy
YWNrTGlzdEJhc2U6Omxlbmd0aCk6CisgICAgICAgIChUcmFja0xpc3RCYXNlOjpnZXRUcmFja0lu
ZGV4KToKKyAgICAgICAgKFRyYWNrTGlzdEJhc2U6OnJlbW92ZSk6CisgICAgICAgIChUcmFja0xp
c3RCYXNlOjpjb250YWlucyk6CisgICAgICAgIChUcmFja0xpc3RCYXNlOjpzY2hlZHVsZUFkZFRy
YWNrRXZlbnQpOgorICAgICAgICAoVHJhY2tMaXN0QmFzZTo6c2NoZWR1bGVSZW1vdmVUcmFja0V2
ZW50KToKKyAgICAgICAgKFRyYWNrTGlzdEJhc2U6OnNjaGVkdWxlQ2hhbmdlRXZlbnQpOgorICAg
ICAgICAoVHJhY2tMaXN0QmFzZTo6YXN5bmNFdmVudFRpbWVyRmlyZWQpOgorICAgICAgICAqIGh0
bWwvdHJhY2svVHJhY2tMaXN0QmFzZS5oOiBDb3BpZWQgZnJvbSBTb3VyY2UvV2ViQ29yZS9odG1s
L3RyYWNrL1RleHRUcmFja0xpc3QuaC4KKyAgICAgICAgKFdlYkNvcmUpOgorICAgICAgICAoVHJh
Y2tMaXN0QmFzZSk6CisgICAgICAgIChXZWJDb3JlOjpUcmFja0xpc3RCYXNlOjpzY3JpcHRFeGVj
dXRpb25Db250ZXh0KToKKyAgICAgICAgKFdlYkNvcmU6OlRyYWNrTGlzdEJhc2U6OmNsZWFyT3du
ZXIpOgorICAgICAgICAoV2ViQ29yZTo6VHJhY2tMaXN0QmFzZTo6b3duZXIpOgorICAgICAgICAo
V2ViQ29yZTo6VHJhY2tMaXN0QmFzZTo6aXNGaXJpbmdFdmVudExpc3RlbmVycyk6CisgICAgICAg
IChXZWJDb3JlOjpUcmFja0xpc3RCYXNlOjpyZWZFdmVudFRhcmdldCk6CisgICAgICAgIChXZWJD
b3JlOjpUcmFja0xpc3RCYXNlOjpkZXJlZkV2ZW50VGFyZ2V0KToKKyAgICAgICAgKFdlYkNvcmU6
OlRyYWNrTGlzdEJhc2U6OmV2ZW50VGFyZ2V0RGF0YSk6CisgICAgICAgIChXZWJDb3JlOjpUcmFj
a0xpc3RCYXNlOjplbnN1cmVFdmVudFRhcmdldERhdGEpOgorICAgICAgICAqIHBsYXRmb3JtL2dy
YXBoaWNzL01lZGlhUGxheWVyLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6Ok1lZGlhUGxheWVyOjph
ZGRUZXh0VHJhY2spOgorICAgICAgICAoV2ViQ29yZTo6TWVkaWFQbGF5ZXI6OnJlbW92ZVRleHRU
cmFjayk6CisgICAgICAgICogcGxhdGZvcm0vZ3JhcGhpY3MvTWVkaWFQbGF5ZXIuaDoKKyAgICAg
ICAgKFdlYkNvcmU6Ok1lZGlhUGxheWVyQ2xpZW50OjptZWRpYVBsYXllckRpZEFkZFRleHRUcmFj
ayk6CisgICAgICAgIChXZWJDb3JlOjpNZWRpYVBsYXllckNsaWVudDo6bWVkaWFQbGF5ZXJEaWRS
ZW1vdmVUZXh0VHJhY2spOgorCiAyMDEzLTA0LTA5ICBCZW5qYW1pbiBQb3VsYWluICA8YnBvdWxh
aW5AYXBwbGUuY29tPgogCiAgICAgICAgIFJlbW92ZSBjaHJvbWl1bSBleGNlcHRpb25zIGZyb20g
V2ViQ29yZSdzIGdpdGF0dHJpYnV0ZXMKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL0NNYWtl
TGlzdHMudHh0IGIvU291cmNlL1dlYkNvcmUvQ01ha2VMaXN0cy50eHQKaW5kZXggNDYxODMyNWEz
Y2ZhY2VhYWQ2ZWFlNzczMGQ2ZWU3MDViYjkwODRhNS4uMTExMDE3YTFjMGY2NGRhY2JjODYyYjlm
YTY5NmY3MzRiOGFkZjdiMyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ01ha2VMaXN0cy50
eHQKKysrIGIvU291cmNlL1dlYkNvcmUvQ01ha2VMaXN0cy50eHQKQEAgLTU0OSwxMiArNTQ5LDYg
QEAgc2V0KFdlYkNvcmVfSURMX0ZJTEVTCiAgICAgaHRtbC9zaGFkb3cvSFRNTENvbnRlbnRFbGVt
ZW50LmlkbAogICAgIGh0bWwvc2hhZG93L0hUTUxTaGFkb3dFbGVtZW50LmlkbAogCi0gICAgaHRt
bC90cmFjay9UZXh0VHJhY2suaWRsCi0gICAgaHRtbC90cmFjay9UZXh0VHJhY2tDdWUuaWRsCi0g
ICAgaHRtbC90cmFjay9UZXh0VHJhY2tDdWVMaXN0LmlkbAotICAgIGh0bWwvdHJhY2svVGV4dFRy
YWNrTGlzdC5pZGwKLSAgICBodG1sL3RyYWNrL1RyYWNrRXZlbnQuaWRsCi0KICAgICBpbnNwZWN0
b3IvSW5qZWN0ZWRTY3JpcHRIb3N0LmlkbAogICAgIGluc3BlY3Rvci9JbnNwZWN0b3JGcm9udGVu
ZEhvc3QuaWRsCiAgICAgaW5zcGVjdG9yL0phdmFTY3JpcHRDYWxsRnJhbWUuaWRsCkBAIC0xNTkz
LDE5ICsxNTg3LDYgQEAgc2V0KFdlYkNvcmVfU09VUkNFUwogICAgIGh0bWwvc2hhZG93L1NwaW5C
dXR0b25FbGVtZW50LmNwcAogICAgIGh0bWwvc2hhZG93L1RleHRDb250cm9sSW5uZXJFbGVtZW50
cy5jcHAKIAotICAgIGh0bWwvdHJhY2svSW5iYW5kVGV4dFRyYWNrLmNwcAotICAgIGh0bWwvdHJh
Y2svTG9hZGFibGVUZXh0VHJhY2suY3BwCi0gICAgaHRtbC90cmFjay9UZXh0VHJhY2suY3BwCi0g
ICAgaHRtbC90cmFjay9UZXh0VHJhY2tDdWUuY3BwCi0gICAgaHRtbC90cmFjay9UZXh0VHJhY2tD
dWVHZW5lcmljLmNwcAotICAgIGh0bWwvdHJhY2svVGV4dFRyYWNrQ3VlTGlzdC5jcHAKLSAgICBo
dG1sL3RyYWNrL1RleHRUcmFja0xpc3QuY3BwCi0gICAgaHRtbC90cmFjay9UcmFja0Jhc2UuY3Bw
Ci0gICAgaHRtbC90cmFjay9UcmFja0V2ZW50LmNwcAotICAgIGh0bWwvdHJhY2svV2ViVlRURWxl
bWVudC5jcHAKLSAgICBodG1sL3RyYWNrL1dlYlZUVFBhcnNlci5jcHAKLSAgICBodG1sL3RyYWNr
L1dlYlZUVFRva2VuaXplci5jcHAKLQogICAgIGluc3BlY3Rvci9Db25zb2xlTWVzc2FnZS5jcHAK
ICAgICBpbnNwZWN0b3IvQ29udGVudFNlYXJjaFV0aWxzLmNwcAogICAgIGluc3BlY3Rvci9ET01F
ZGl0b3IuY3BwCkBAIC0xNzM4LDcgKzE3MTksNiBAQCBzZXQoV2ViQ29yZV9TT1VSQ0VTCiAgICAg
bG9hZGVyL2NhY2hlL0NhY2hlZFNjcmlwdC5jcHAKICAgICBsb2FkZXIvY2FjaGUvQ2FjaGVkU2hh
ZGVyLmNwcAogICAgIGxvYWRlci9jYWNoZS9DYWNoZWRTVkdEb2N1bWVudC5jcHAKLSAgICBsb2Fk
ZXIvY2FjaGUvQ2FjaGVkVGV4dFRyYWNrLmNwcAogICAgIGxvYWRlci9jYWNoZS9DYWNoZWRYU0xT
dHlsZVNoZWV0LmNwcAogICAgIGxvYWRlci9jYWNoZS9NZW1vcnlDYWNoZS5jcHAKIApAQCAtMjY5
Niw3ICsyNjc2LDMxIEBAIGlmIChFTkFCTEVfV0VCR0wpCiBlbmRpZiAoKQogCiBpZiAoRU5BQkxF
X1ZJREVPX1RSQUNLKQorICAgIGxpc3QoQVBQRU5EIFdlYkNvcmVfSURMX0ZJTEVTCisgICAgICAg
IGh0bWwvdHJhY2svVGV4dFRyYWNrLmlkbAorICAgICAgICBodG1sL3RyYWNrL1RleHRUcmFja0N1
ZS5pZGwKKyAgICAgICAgaHRtbC90cmFjay9UZXh0VHJhY2tDdWVMaXN0LmlkbAorICAgICAgICBo
dG1sL3RyYWNrL1RleHRUcmFja0xpc3QuaWRsCisgICAgICAgIGh0bWwvdHJhY2svVHJhY2tFdmVu
dC5pZGwKKyAgICApCisKICAgICBsaXN0KEFQUEVORCBXZWJDb3JlX1NPVVJDRVMKKyAgICAgICAg
aHRtbC90cmFjay9JbmJhbmRUZXh0VHJhY2suY3BwCisgICAgICAgIGh0bWwvdHJhY2svTG9hZGFi
bGVUZXh0VHJhY2suY3BwCisgICAgICAgIGh0bWwvdHJhY2svVGV4dFRyYWNrLmNwcAorICAgICAg
ICBodG1sL3RyYWNrL1RleHRUcmFja0N1ZS5jcHAKKyAgICAgICAgaHRtbC90cmFjay9UZXh0VHJh
Y2tDdWVHZW5lcmljLmNwcAorICAgICAgICBodG1sL3RyYWNrL1RleHRUcmFja0N1ZUxpc3QuY3Bw
CisgICAgICAgIGh0bWwvdHJhY2svVGV4dFRyYWNrTGlzdC5jcHAKKyAgICAgICAgaHRtbC90cmFj
ay9UcmFja0Jhc2UuY3BwCisgICAgICAgIGh0bWwvdHJhY2svVHJhY2tFdmVudC5jcHAKKyAgICAg
ICAgaHRtbC90cmFjay9UcmFja0xpc3RCYXNlLmNwcAorICAgICAgICBodG1sL3RyYWNrL1dlYlZU
VEVsZW1lbnQuY3BwCisgICAgICAgIGh0bWwvdHJhY2svV2ViVlRUUGFyc2VyLmNwcAorICAgICAg
ICBodG1sL3RyYWNrL1dlYlZUVFRva2VuaXplci5jcHAKKworICAgICAgICBsb2FkZXIvY2FjaGUv
Q2FjaGVkVGV4dFRyYWNrLmNwcAorCiAgICAgICAgIHBsYXRmb3JtL2dyYXBoaWNzL1RleHRUcmFj
a1JlcHJlc2VudGF0aW9uLmNwcAogICAgICkKIGVuZGlmICgpCmRpZmYgLS1naXQgYS9Tb3VyY2Uv
V2ViQ29yZS9UYXJnZXQucHJpIGIvU291cmNlL1dlYkNvcmUvVGFyZ2V0LnByaQppbmRleCBjOGE0
YTk0ZTU4Zjc2NTQ1MmRiZTA2NzYwNDgwNWE3M2Y2MGVlNzI4Li44NWU4NzYyZGE2ODNjMTU5MDI2
ZTRhMjhhMTdjYTliMmI0ZWE2NTBkIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9UYXJnZXQu
cHJpCisrKyBiL1NvdXJjZS9XZWJDb3JlL1RhcmdldC5wcmkKQEAgLTM5NzcsNiArMzk3Nyw3IEBA
IGVuYWJsZT8oVklERU9fVFJBQ0spIHsKICAgICAgICAgaHRtbC90cmFjay9UZXh0VHJhY2tMaXN0
LmggXAogICAgICAgICBodG1sL3RyYWNrL1RyYWNrQmFzZS5oIFwKICAgICAgICAgaHRtbC90cmFj
ay9UcmFja0V2ZW50LmggXAorICAgICAgICBodG1sL3RyYWNrL1RyYWNrTGlzdEJhc2UuaCBcCiAg
ICAgICAgIGh0bWwvdHJhY2svV2ViVlRUUGFyc2VyLmggXAogICAgICAgICBodG1sL3RyYWNrL1dl
YlZUVFRva2VuLmggXAogICAgICAgICBodG1sL3RyYWNrL1dlYlZUVFRva2VuaXplci5oIFwKQEAg
LTQwMDAsNiArNDAwMSw3IEBAIGVuYWJsZT8oVklERU9fVFJBQ0spIHsKICAgICAgICAgaHRtbC90
cmFjay9UZXh0VHJhY2tMaXN0LmNwcCBcCiAgICAgICAgIGh0bWwvdHJhY2svVHJhY2tCYXNlLmNw
cCBcCiAgICAgICAgIGh0bWwvdHJhY2svVHJhY2tFdmVudC5jcHAgXAorICAgICAgICBodG1sL3Ry
YWNrL1RyYWNrTGlzdEJhc2UuY3BwIFwKICAgICAgICAgaHRtbC90cmFjay9XZWJWVFRFbGVtZW50
LmNwcCBcCiAgICAgICAgIGh0bWwvdHJhY2svV2ViVlRUUGFyc2VyLmNwcCBcCiAgICAgICAgIGh0
bWwvdHJhY2svV2ViVlRUVG9rZW5pemVyLmNwcCBcCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29y
ZS9XZWJDb3JlLnZjcHJvai9XZWJDb3JlLnZjcHJvaiBiL1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUu
dmNwcm9qL1dlYkNvcmUudmNwcm9qCmluZGV4IDRhMmI4YWFlY2VlNTEyNzg0ZjI2Y2JiMWUyNWQz
MDQxZGI5OWVlOGYuLmQwOTVjYWUxNDBmNTFiNzVmNzJkZmQwOGZhMzU5MmFhYzRlZjlhMDUgMTAw
NzU1Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUudmNwcm9qL1dlYkNvcmUudmNwcm9qCisr
KyBiL1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUudmNwcm9qL1dlYkNvcmUudmNwcm9qCkBAIC0zMDIy
Miw2ICszMDIyMiwxMCBAQAogCQkJCQk+CiAJCQkJPC9GaWxlPgogCQkJCTxGaWxlCisJCQkJCVJl
bGF0aXZlUGF0aD0iLi5ccGxhdGZvcm1cZ3JhcGhpY3NcSW5iYW5kVGV4dFRyYWNrUHJpdmF0ZS5o
IgorCQkJCQk+CisJCQkJPC9GaWxlPgorCQkJCTxGaWxlCiAJCQkJCVJlbGF0aXZlUGF0aD0iLi5c
cGxhdGZvcm1cZ3JhcGhpY3NcSW50UG9pbnQuaCIKIAkJCQkJPgogCQkJCTwvRmlsZT4KQEAgLTY1
NzQ2LDEwICs2NTc1MCw2IEBACiAJCQkJCT4KIAkJCQk8L0ZpbGU+CiAJCQkJPEZpbGUKLQkJCQkJ
UmVsYXRpdmVQYXRoPSIuLlxodG1sXHRyYWNrXEluYmFuZFRleHRUcmFja1ByaXZhdGUuaCIKLQkJ
CQkJPgotCQkJCTwvRmlsZT4KLQkJCQk8RmlsZQogCQkJCQlSZWxhdGl2ZVBhdGg9Ii4uXGh0bWxc
dHJhY2tcTG9hZGFibGVUZXh0VHJhY2suY3BwIgogCQkJCQk+CiAJCQkJPC9GaWxlPgpAQCAtNjU4
MTQsNiArNjU4MTQsMTQgQEAKIAkJCQkJPgogCQkJCTwvRmlsZT4KIAkJCQk8RmlsZQorCQkJCQlS
ZWxhdGl2ZVBhdGg9Ii4uXGh0bWxcdHJhY2tcVHJhY2tMaXN0QmFzZS5jcHAiCisJCQkJCT4KKwkJ
CQk8L0ZpbGU+CisJCQkJPEZpbGUKKwkJCQkJUmVsYXRpdmVQYXRoPSIuLlxodG1sXHRyYWNrXFRy
YWNrTGlzdEJhc2UuaCIKKwkJCQkJPgorCQkJCTwvRmlsZT4KKwkJCQk8RmlsZQogCQkJCQlSZWxh
dGl2ZVBhdGg9Ii4uXGh0bWxcdHJhY2tcV2ViVlRURWxlbWVudC5jcHAiCiAJCQkJCT4KIAkJCQk8
L0ZpbGU+CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9XZWJDb3JlLnhjb2RlcHJvai9wcm9q
ZWN0LnBieHByb2ogYi9Tb3VyY2UvV2ViQ29yZS9XZWJDb3JlLnhjb2RlcHJvai9wcm9qZWN0LnBi
eHByb2oKaW5kZXggYzgyMjQ0MWY3MzBmMDI5YzBhN2I5ZTgzNmYwOGZkNjgzYjAzYTBhMy4uMzky
YjJhOTU2ZTM4MTkzMDI0MWZkZDk0YmE0Zjc4M2ZkOGE0ZmFkNiAxMDA2NDQKLS0tIGEvU291cmNl
L1dlYkNvcmUvV2ViQ29yZS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qCisrKyBiL1NvdXJjZS9X
ZWJDb3JlL1dlYkNvcmUueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvagpAQCAtNTExMSw2ICs1MTEx
LDggQEAKIAkJQkNGRTJGMTIwQzFCNTgzODAwMjAyMzVGIC8qIEpTUmVjdC5oIGluIEhlYWRlcnMg
Ki8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQkNGRTJGMTAwQzFCNTgzNzAwMjAy
MzVGIC8qIEpTUmVjdC5oICovOyB9OwogCQlCQ0ZGNjQ5MTBFQUQxNUMyMDBDMUQ2RjcgLyogTGVu
Z3RoQm94LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBC
Q0ZGNjQ4RjBFQUQxNUMyMDBDMUQ2RjcgLyogTGVuZ3RoQm94LmggKi87IHNldHRpbmdzID0ge0FU
VFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKIAkJQkNGRjY0OTIwRUFEMTVDMjAwQzFENkY3
IC8qIExlbmd0aFNpemUuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmls
ZVJlZiA9IEJDRkY2NDkwMEVBRDE1QzIwMEMxRDZGNyAvKiBMZW5ndGhTaXplLmggKi87IHNldHRp
bmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJQkU4OEUwQzExNzE1Q0Uy
NjAwNjU4RDk4IC8qIFRyYWNrTGlzdEJhc2UuY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJY
QnVpbGRGaWxlOyBmaWxlUmVmID0gQkU4OEUwQkYxNzE1Q0UyNjAwNjU4RDk4IC8qIFRyYWNrTGlz
dEJhc2UuY3BwICovOyB9OworCQlCRTg4RTBDMjE3MTVDRTI2MDA2NThEOTggLyogVHJhY2tMaXN0
QmFzZS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQkU4
OEUwQzAxNzE1Q0UyNjAwNjU4RDk4IC8qIFRyYWNrTGlzdEJhc2UuaCAqLzsgfTsKIAkJQzA0NkUx
QUMxMjA4QTlGRTAwQkEyQ0Y3IC8qIExvY2FsaXplZFN0cmluZ3MuY3BwIGluIFNvdXJjZXMgKi8g
PSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQzA0NkUxQUIxMjA4QTlGRTAwQkEyQ0Y3
IC8qIExvY2FsaXplZFN0cmluZ3MuY3BwICovOyB9OwogCQlDMEMwNTRDQjExMThDOEU0MDBDRTI2
MzYgLyogQ29kZUdlbmVyYXRvci5wbSBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmls
ZTsgZmlsZVJlZiA9IDkzRjhCMzA1MEEzMDBGRTEwMEY2MUFCOCAvKiBDb2RlR2VuZXJhdG9yLnBt
ICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CiAJCUMwQzA1
NENDMTExOEM4RTQwMENFMjYzNiAvKiBnZW5lcmF0ZS1iaW5kaW5ncy5wbCBpbiBIZWFkZXJzICov
ID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDkzRjhCMzA3MEEzMDBGRUEwMEY2MUFC
OCAvKiBnZW5lcmF0ZS1iaW5kaW5ncy5wbCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQ
cml2YXRlLCApOyB9OyB9OwpAQCAtMTE4MjksNiArMTE4MzEsOCBAQAogCQlCQ0ZGNjQ5MDBFQUQx
NUMyMDBDMUQ2RjcgLyogTGVuZ3RoU2l6ZS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7
IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBh
dGggPSBMZW5ndGhTaXplLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCUJFODU1RjdG
MDcwMUU4MzUwMDIzOTc2OSAvKiBXZWJDb3JlVmlldy5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZl
cmVuY2U7IGZpbGVFbmNvZGluZyA9IDMwOyBpbmRlbnRXaWR0aCA9IDQ7IGxhc3RLbm93bkZpbGVU
eXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBXZWJDb3JlVmlldy5oOyBzb3VyY2VUcmVlID0g
Ijxncm91cD4iOyB0YWJXaWR0aCA9IDg7IHVzZXNUYWJzID0gMDsgfTsKIAkJQkU4NTYwNTEwNzAx
RjkxMTAwMjM5NzY5IC8qIFdlYkNvcmVWaWV3Lm0gKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5j
ZTsgZmlsZUVuY29kaW5nID0gMzA7IGluZGVudFdpZHRoID0gNDsgbGFzdEtub3duRmlsZVR5cGUg
PSBzb3VyY2Vjb2RlLmMub2JqYzsgcGF0aCA9IFdlYkNvcmVWaWV3Lm07IHNvdXJjZVRyZWUgPSAi
PGdyb3VwPiI7IHRhYldpZHRoID0gODsgdXNlc1RhYnMgPSAwOyB9OworCQlCRTg4RTBCRjE3MTVD
RTI2MDA2NThEOTggLyogVHJhY2tMaXN0QmFzZS5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVy
ZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNw
cC5jcHA7IHBhdGggPSBUcmFja0xpc3RCYXNlLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+Ijsg
fTsKKwkJQkU4OEUwQzAxNzE1Q0UyNjAwNjU4RDk4IC8qIFRyYWNrTGlzdEJhc2UuaCAqLyA9IHtp
c2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlw
ZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gVHJhY2tMaXN0QmFzZS5oOyBzb3VyY2VUcmVlID0g
Ijxncm91cD4iOyB9OwogCQlCRTkxRkM4QjA2MTMzNjY2MDA1RTM3OTAgLyogUG9zaXRpb24uaCAq
LyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsgaW5kZW50V2lk
dGggPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gUG9zaXRp
b24uaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgdGFiV2lkdGggPSA4OyB1c2VzVGFicyA9IDA7
IH07CiAJCUJFOTFGQzhDMDYxMzM2NjYwMDVFMzc5MCAvKiBQb3NpdGlvbi5jcHAgKi8gPSB7aXNh
ID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gMzA7IGluZGVudFdpZHRoID0gNDsg
bGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBQb3NpdGlvbi5j
cHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IHRhYldpZHRoID0gODsgdXNlc1RhYnMgPSAwOyB9
OwogCQlCRTk4M0Q5NTA1MkEyRTBBMDA4OTJEODUgLyogV2ViQ29yZUtleWJvYXJkVUlNb2RlLmgg
Ki8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gMzA7IGluZGVudFdp
ZHRoID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFdlYkNv
cmVLZXlib2FyZFVJTW9kZS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB0YWJXaWR0aCA9IDg7
IHVzZXNUYWJzID0gMDsgfTsKQEAgLTE3NjYxLDYgKzE3NjY1LDggQEAKIAkJQjFBRDRFNzcxM0Ex
MkE3MjAwODQ2QjI3IC8qIHRyYWNrICovID0gewogCQkJaXNhID0gUEJYR3JvdXA7CiAJCQljaGls
ZHJlbiA9ICgKKwkJCQlCRTg4RTBCRjE3MTVDRTI2MDA2NThEOTggLyogVHJhY2tMaXN0QmFzZS5j
cHAgKi8sCisJCQkJQkU4OEUwQzAxNzE1Q0UyNjAwNjU4RDk4IC8qIFRyYWNrTGlzdEJhc2UuaCAq
LywKIAkJCQkwNzk0MTc4RjE2NkU4NTVGMDA5NDE2QzIgLyogSW5iYW5kVGV4dFRyYWNrLmNwcCAq
LywKIAkJCQkwNzk0MTc5MDE2NkU4NTVGMDA5NDE2QzIgLyogSW5iYW5kVGV4dFRyYWNrLmggKi8s
CiAJCQkJOTc1OUU5MzQxNEVGMUNGODAwMjZBMkREIC8qIExvYWRhYmxlVGV4dFRyYWNrLmNwcCAq
LywKQEAgLTI0MDM5LDYgKzI0MDQ1LDcgQEAKIAkJCQlFMTgwODEwRjE2RkNFQ0RGMDBCODBEMDcg
LyogV2ViQ29yZVJlc291cmNlSGFuZGxlQXNEZWxlZ2F0ZS5oIGluIEhlYWRlcnMgKi8sCiAJCQkJ
RTE4MDgxMTcxNkZDRjlDQjAwQjgwRDA3IC8qIFN5bmNocm9ub3VzTG9hZGVyQ2xpZW50LmggaW4g
SGVhZGVycyAqLywKIAkJCQlFMTUyNTUxNTE2RkQyMzUwMDAzRDdBREIgLyogV2ViQ29yZVJlc291
cmNlSGFuZGxlQXNPcGVyYXRpb25RdWV1ZURlbGVnYXRlLmggaW4gSGVhZGVycyAqLywKKwkJCQlC
RTg4RTBDMjE3MTVDRTI2MDA2NThEOTggLyogVHJhY2tMaXN0QmFzZS5oIGluIEhlYWRlcnMgKi8s
CiAJCQkpOwogCQkJcnVuT25seUZvckRlcGxveW1lbnRQb3N0cHJvY2Vzc2luZyA9IDA7CiAJCX07
CkBAIC0yNjk4NCw2ICsyNjk5MSw3IEBACiAJCQkJRTE4MDgxMTIxNkZDRjQyRjAwQjgwRDA3IC8q
IFN5bmNocm9ub3VzTG9hZGVyQ2xpZW50LmNwcCBpbiBTb3VyY2VzICovLAogCQkJCUUxODA4MTE2
MTZGQ0Y5Q0IwMEI4MEQwNyAvKiBTeW5jaHJvbm91c0xvYWRlckNsaWVudC5tbSBpbiBTb3VyY2Vz
ICovLAogCQkJCUUxNTI1NTE2MTZGRDIzNTAwMDNEN0FEQiAvKiBXZWJDb3JlUmVzb3VyY2VIYW5k
bGVBc09wZXJhdGlvblF1ZXVlRGVsZWdhdGUubW0gaW4gU291cmNlcyAqLywKKwkJCQlCRTg4RTBD
MTE3MTVDRTI2MDA2NThEOTggLyogVHJhY2tMaXN0QmFzZS5jcHAgaW4gU291cmNlcyAqLywKIAkJ
CSk7CiAJCQlydW5Pbmx5Rm9yRGVwbG95bWVudFBvc3Rwcm9jZXNzaW5nID0gMDsKIAkJfTsKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTE1lZGlhRWxlbWVudC5jcHAgYi9Tb3Vy
Y2UvV2ViQ29yZS9odG1sL0hUTUxNZWRpYUVsZW1lbnQuY3BwCmluZGV4IGRhMWFiNWE1YzJlNzgx
NzQzMmJmYWEzMDExYzBlOThjM2QyYmM3OTMuLjhmYzVhMDhhZjhhMDE0OWJhZDdhNWI3MzUwYTRl
YmIzMDM0YjI3NzkgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTE1lZGlhRWxl
bWVudC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MTWVkaWFFbGVtZW50LmNwcApA
QCAtMjc5Miw3ICsyNzkyLDcgQEAgZmxvYXQgSFRNTE1lZGlhRWxlbWVudDo6cGVyY2VudExvYWRl
ZCgpIGNvbnN0CiAKICNpZiBFTkFCTEUoVklERU9fVFJBQ0spCiAKLXZvaWQgSFRNTE1lZGlhRWxl
bWVudDo6bWVkaWFQbGF5ZXJEaWRBZGRUcmFjayhQYXNzUmVmUHRyPEluYmFuZFRleHRUcmFja1By
aXZhdGU+IHBycFRyYWNrKQordm9pZCBIVE1MTWVkaWFFbGVtZW50OjptZWRpYVBsYXllckRpZEFk
ZFRleHRUcmFjayhQYXNzUmVmUHRyPEluYmFuZFRleHRUcmFja1ByaXZhdGU+IHBycFRyYWNrKQog
ewogICAgIGlmICghUnVudGltZUVuYWJsZWRGZWF0dXJlczo6d2Via2l0VmlkZW9UcmFja0VuYWJs
ZWQoKSkKICAgICAgICAgcmV0dXJuOwpAQCAtMjgyNCwxMCArMjgyNCwxMCBAQCB2b2lkIEhUTUxN
ZWRpYUVsZW1lbnQ6Om1lZGlhUGxheWVyRGlkQWRkVHJhY2soUGFzc1JlZlB0cjxJbmJhbmRUZXh0
VHJhY2tQcml2YXRlPgogICAgIC8vIDkuIEZpcmUgYW4gZXZlbnQgd2l0aCB0aGUgbmFtZSBhZGR0
cmFjaywgdGhhdCBkb2VzIG5vdCBidWJibGUgYW5kIGlzIG5vdCBjYW5jZWxhYmxlLCBhbmQgdGhh
dCB1c2VzIHRoZSBUcmFja0V2ZW50CiAgICAgLy8gaW50ZXJmYWNlLCB3aXRoIHRoZSB0cmFjayBh
dHRyaWJ1dGUgaW5pdGlhbGl6ZWQgdG8gdGhlIHRleHQgdHJhY2sncyBUZXh0VHJhY2sgb2JqZWN0
LCBhdCB0aGUgbWVkaWEgZWxlbWVudCdzCiAgICAgLy8gdGV4dFRyYWNrcyBhdHRyaWJ1dGUncyBU
ZXh0VHJhY2tMaXN0IG9iamVjdC4KLSAgICBhZGRUcmFjayh0ZXh0VHJhY2suZ2V0KCkpOworICAg
IGFkZFRleHRUcmFjayh0ZXh0VHJhY2suZ2V0KCkpOwogfQogCi12b2lkIEhUTUxNZWRpYUVsZW1l
bnQ6Om1lZGlhUGxheWVyRGlkUmVtb3ZlVHJhY2soUGFzc1JlZlB0cjxJbmJhbmRUZXh0VHJhY2tQ
cml2YXRlPiBwcnBUcmFjaykKK3ZvaWQgSFRNTE1lZGlhRWxlbWVudDo6bWVkaWFQbGF5ZXJEaWRS
ZW1vdmVUZXh0VHJhY2soUGFzc1JlZlB0cjxJbmJhbmRUZXh0VHJhY2tQcml2YXRlPiBwcnBUcmFj
aykKIHsKICAgICBpZiAoIVJ1bnRpbWVFbmFibGVkRmVhdHVyZXM6OndlYmtpdFZpZGVvVHJhY2tF
bmFibGVkKCkpCiAgICAgICAgIHJldHVybjsKQEAgLTI4MzYsMTIgKzI4MzYsMTIgQEAgdm9pZCBI
VE1MTWVkaWFFbGVtZW50OjptZWRpYVBsYXllckRpZFJlbW92ZVRyYWNrKFBhc3NSZWZQdHI8SW5i
YW5kVGV4dFRyYWNrUHJpdmEKICAgICAgICAgcmV0dXJuOwogCiAgICAgLy8gVGhpcyBjYXN0IGlz
IHNhZmUgYmVjYXVzZSB3ZSBjcmVhdGVkIHRoZSBJbmJhbmRUZXh0VHJhY2sgd2l0aCB0aGUgSW5i
YW5kVGV4dFRyYWNrUHJpdmF0ZQotICAgIC8vIHBhc3NlZCB0byBtZWRpYVBsYXllckRpZEFkZFRy
YWNrLgorICAgIC8vIHBhc3NlZCB0byBtZWRpYVBsYXllckRpZEFkZFRleHRUcmFjay4KICAgICBS
ZWZQdHI8SW5iYW5kVGV4dFRyYWNrPiB0ZXh0VHJhY2sgPSBzdGF0aWNfY2FzdDxJbmJhbmRUZXh0
VHJhY2sqPihwcnBUcmFjay0+Y2xpZW50KCkpOwogICAgIGlmICghdGV4dFRyYWNrKQogICAgICAg
ICByZXR1cm47CiAKLSAgICByZW1vdmVUcmFjayh0ZXh0VHJhY2suZ2V0KCkpOworICAgIHJlbW92
ZVRleHRUcmFjayh0ZXh0VHJhY2suZ2V0KCkpOwogfQogCiAjaWYgVVNFKFBMQVRGT1JNX1RFWFRf
VFJBQ0tfTUVOVSkKQEAgLTI5MjAsMTQgKzI5MjAsMTQgQEAgdm9pZCBIVE1MTWVkaWFFbGVtZW50
OjpjbG9zZUNhcHRpb25UcmFja3NDaGFuZ2VkKCkKICNlbmRpZgogfQogCi12b2lkIEhUTUxNZWRp
YUVsZW1lbnQ6OmFkZFRyYWNrKFRleHRUcmFjayogdHJhY2spCit2b2lkIEhUTUxNZWRpYUVsZW1l
bnQ6OmFkZFRleHRUcmFjayhUZXh0VHJhY2sqIHRyYWNrKQogewogICAgIHRleHRUcmFja3MoKS0+
YXBwZW5kKHRyYWNrKTsKICAgICAKICAgICBjbG9zZUNhcHRpb25UcmFja3NDaGFuZ2VkKCk7CiB9
CiAKLXZvaWQgSFRNTE1lZGlhRWxlbWVudDo6cmVtb3ZlVHJhY2soVGV4dFRyYWNrKiB0cmFjaykK
K3ZvaWQgSFRNTE1lZGlhRWxlbWVudDo6cmVtb3ZlVGV4dFRyYWNrKFRleHRUcmFjayogdHJhY2sp
CiB7CiAgICAgVHJhY2tEaXNwbGF5VXBkYXRlU2NvcGUgc2NvcGUodGhpcyk7CiAgICAgVGV4dFRy
YWNrQ3VlTGlzdCogY3VlcyA9IHRyYWNrLT5jdWVzKCk7CkBAIC0yOTQ4LDcgKzI5NDgsNyBAQCB2
b2lkIEhUTUxNZWRpYUVsZW1lbnQ6OnJlbW92ZUFsbEluYmFuZFRyYWNrcygpCiAgICAgICAgIFRl
eHRUcmFjayogdHJhY2sgPSBtX3RleHRUcmFja3MtPml0ZW0oaSk7CiAKICAgICAgICAgaWYgKHRy
YWNrLT50cmFja1R5cGUoKSA9PSBUZXh0VHJhY2s6OkluQmFuZCkKLSAgICAgICAgICAgIHJlbW92
ZVRyYWNrKHRyYWNrKTsKKyAgICAgICAgICAgIHJlbW92ZVRleHRUcmFjayh0cmFjayk7CiAgICAg
fQogfQogCkBAIC0yOTc4LDcgKzI5NzgsNyBAQCBQYXNzUmVmUHRyPFRleHRUcmFjaz4gSFRNTE1l
ZGlhRWxlbWVudDo6YWRkVGV4dFRyYWNrKGNvbnN0IFN0cmluZyYga2luZCwgY29uc3QgUwogICAg
IC8vIGZpcnN0IGFwcGVuZCB0aGUgdHJhY2sgdG8gdGhlIHRleHQgdHJhY2sgbGlzdC4KIAogICAg
IC8vIDYuIEFkZCB0aGUgbmV3IHRleHQgdHJhY2sgdG8gdGhlIG1lZGlhIGVsZW1lbnQncyBsaXN0
IG9mIHRleHQgdHJhY2tzLgotICAgIGFkZFRyYWNrKHRleHRUcmFjay5nZXQoKSk7CisgICAgYWRk
VGV4dFRyYWNrKHRleHRUcmFjay5nZXQoKSk7CiAKICAgICAvLyAuLi4gaXRzIHRleHQgdHJhY2sg
cmVhZGluZXNzIHN0YXRlIHRvIHRoZSB0ZXh0IHRyYWNrIGxvYWRlZCBzdGF0ZSAuLi4KICAgICB0
ZXh0VHJhY2stPnNldFJlYWRpbmVzc1N0YXRlKFRleHRUcmFjazo6TG9hZGVkKTsKQEAgLTMwMDAs
NyArMzAwMCw3IEBAIFRleHRUcmFja0xpc3QqIEhUTUxNZWRpYUVsZW1lbnQ6OnRleHRUcmFja3Mo
KQogICAgIHJldHVybiBtX3RleHRUcmFja3MuZ2V0KCk7CiB9CiAKLXZvaWQgSFRNTE1lZGlhRWxl
bWVudDo6ZGlkQWRkVHJhY2soSFRNTFRyYWNrRWxlbWVudCogdHJhY2tFbGVtZW50KQordm9pZCBI
VE1MTWVkaWFFbGVtZW50OjpkaWRBZGRUZXh0VHJhY2soSFRNTFRyYWNrRWxlbWVudCogdHJhY2tF
bGVtZW50KQogewogICAgIEFTU0VSVCh0cmFja0VsZW1lbnQtPmhhc1RhZ05hbWUodHJhY2tUYWcp
KTsKIApAQCAtMzAxNSw3ICszMDE1LDcgQEAgdm9pZCBIVE1MTWVkaWFFbGVtZW50OjpkaWRBZGRU
cmFjayhIVE1MVHJhY2tFbGVtZW50KiB0cmFja0VsZW1lbnQpCiAgICAgaWYgKCF0ZXh0VHJhY2sp
CiAgICAgICAgIHJldHVybjsKICAgICAKLSAgICBhZGRUcmFjayh0ZXh0VHJhY2suZ2V0KCkpOwor
ICAgIGFkZFRleHRUcmFjayh0ZXh0VHJhY2suZ2V0KCkpOwogICAgIAogICAgIC8vIERvIG5vdCBz
Y2hlZHVsZSB0aGUgdHJhY2sgbG9hZGluZyB1bnRpbCBwYXJzaW5nIGZpbmlzaGVzIHNvIHdlIGRv
bid0IHN0YXJ0IGJlZm9yZSBhbGwgdHJhY2tzCiAgICAgLy8gaW4gdGhlIG1hcmt1cCBoYXZlIGJl
ZW4gYWRkZWQuCkBAIC0zMDI2LDcgKzMwMjYsNyBAQCB2b2lkIEhUTUxNZWRpYUVsZW1lbnQ6OmRp
ZEFkZFRyYWNrKEhUTUxUcmFja0VsZW1lbnQqIHRyYWNrRWxlbWVudCkKICAgICAgICAgbWVkaWFD
b250cm9scygpLT5jbG9zZWRDYXB0aW9uVHJhY2tzQ2hhbmdlZCgpOwogfQogCi12b2lkIEhUTUxN
ZWRpYUVsZW1lbnQ6OmRpZFJlbW92ZVRyYWNrKEhUTUxUcmFja0VsZW1lbnQqIHRyYWNrRWxlbWVu
dCkKK3ZvaWQgSFRNTE1lZGlhRWxlbWVudDo6ZGlkUmVtb3ZlVGV4dFRyYWNrKEhUTUxUcmFja0Vs
ZW1lbnQqIHRyYWNrRWxlbWVudCkKIHsKICAgICBBU1NFUlQodHJhY2tFbGVtZW50LT5oYXNUYWdO
YW1lKHRyYWNrVGFnKSk7CiAKQEAgLTMwNTMsNyArMzA1Myw3IEBAIHZvaWQgSFRNTE1lZGlhRWxl
bWVudDo6ZGlkUmVtb3ZlVHJhY2soSFRNTFRyYWNrRWxlbWVudCogdHJhY2tFbGVtZW50KQogICAg
IC8vIFdoZW4gYSB0cmFjayBlbGVtZW50J3MgcGFyZW50IGVsZW1lbnQgY2hhbmdlcyBhbmQgdGhl
IG9sZCBwYXJlbnQgd2FzIGEgbWVkaWEgZWxlbWVudCwgCiAgICAgLy8gdGhlbiB0aGUgdXNlciBh
Z2VudCBtdXN0IHJlbW92ZSB0aGUgdHJhY2sgZWxlbWVudCdzIGNvcnJlc3BvbmRpbmcgdGV4dCB0
cmFjayBmcm9tIHRoZSAKICAgICAvLyBtZWRpYSBlbGVtZW50J3MgbGlzdCBvZiB0ZXh0IHRyYWNr
cy4KLSAgICByZW1vdmVUcmFjayh0ZXh0VHJhY2suZ2V0KCkpOworICAgIHJlbW92ZVRleHRUcmFj
ayh0ZXh0VHJhY2suZ2V0KCkpOwogCiAgICAgc2l6ZV90IGluZGV4ID0gbV90ZXh0VHJhY2tzV2hl
blJlc291cmNlU2VsZWN0aW9uQmVnYW4uZmluZCh0ZXh0VHJhY2suZ2V0KCkpOwogICAgIGlmIChp
bmRleCAhPSBub3RGb3VuZCkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTE1l
ZGlhRWxlbWVudC5oIGIvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MTWVkaWFFbGVtZW50LmgKaW5k
ZXggY2EwMTZjMDdkNDZmZjIxMzdmYTBlMWFhODY3MzI0M2JkMTI3ZTE4Yy4uYmM3NWQxZWUzNDZi
YzFhODE1M2YzMjk0M2E4ZWQyNTEyZmUxYmE5YyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUv
aHRtbC9IVE1MTWVkaWFFbGVtZW50LmgKKysrIGIvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MTWVk
aWFFbGVtZW50LmgKQEAgLTU4LDcgKzU4LDYgQEAgY2xhc3MgTWVkaWFDb250cm9sbGVyOwogY2xh
c3MgTWVkaWFDb250cm9sczsKIGNsYXNzIE1lZGlhRXJyb3I7CiBjbGFzcyBLVVJMOwotY2xhc3Mg
VGV4dFRyYWNrTGlzdDsKIGNsYXNzIFRpbWVSYW5nZXM7CiAjaWYgRU5BQkxFKFBMVUdJTl9QUk9Y
WV9GT1JfVklERU8pCiBjbGFzcyBXaWRnZXQ7CkBAIC03Miw2ICs3MSw3IEBAIGNsYXNzIE1lZGlh
S2V5czsKIAogI2lmIEVOQUJMRShWSURFT19UUkFDSykKIGNsYXNzIEluYmFuZFRleHRUcmFja1By
aXZhdGU7CitjbGFzcyBUZXh0VHJhY2tMaXN0OwogCiB0eXBlZGVmIFBPREludGVydmFsVHJlZTxk
b3VibGUsIFRleHRUcmFja0N1ZSo+IEN1ZUludGVydmFsVHJlZTsKIHR5cGVkZWYgQ3VlSW50ZXJ2
YWxUcmVlOjpJbnRlcnZhbFR5cGUgQ3VlSW50ZXJ2YWw7CkBAIC0yMjksMTcgKzIyOSwxNyBAQCBw
dWJsaWM6CiAgICAgVGV4dFRyYWNrTGlzdCogdGV4dFRyYWNrcygpOwogICAgIEN1ZUxpc3QgY3Vy
cmVudGx5QWN0aXZlQ3VlcygpIGNvbnN0IHsgcmV0dXJuIG1fY3VycmVudGx5QWN0aXZlQ3Vlczsg
fQogCi0gICAgdm9pZCBhZGRUcmFjayhUZXh0VHJhY2sqKTsKLSAgICB2b2lkIHJlbW92ZVRyYWNr
KFRleHRUcmFjayopOworICAgIHZvaWQgYWRkVGV4dFRyYWNrKFRleHRUcmFjayopOworICAgIHZv
aWQgcmVtb3ZlVGV4dFRyYWNrKFRleHRUcmFjayopOwogICAgIHZvaWQgcmVtb3ZlQWxsSW5iYW5k
VHJhY2tzKCk7CiAgICAgdm9pZCBjbG9zZUNhcHRpb25UcmFja3NDaGFuZ2VkKCk7CiAgICAgdm9p
ZCBub3RpZnlNZWRpYVBsYXllck9mVGV4dFRyYWNrQ2hhbmdlcygpOwogCi0gICAgdmlydHVhbCB2
b2lkIGRpZEFkZFRyYWNrKEhUTUxUcmFja0VsZW1lbnQqKTsKLSAgICB2aXJ0dWFsIHZvaWQgZGlk
UmVtb3ZlVHJhY2soSFRNTFRyYWNrRWxlbWVudCopOworICAgIHZpcnR1YWwgdm9pZCBkaWRBZGRU
ZXh0VHJhY2soSFRNTFRyYWNrRWxlbWVudCopOworICAgIHZpcnR1YWwgdm9pZCBkaWRSZW1vdmVU
ZXh0VHJhY2soSFRNTFRyYWNrRWxlbWVudCopOwogCi0gICAgdmlydHVhbCB2b2lkIG1lZGlhUGxh
eWVyRGlkQWRkVHJhY2soUGFzc1JlZlB0cjxJbmJhbmRUZXh0VHJhY2tQcml2YXRlPikgT1ZFUlJJ
REU7Ci0gICAgdmlydHVhbCB2b2lkIG1lZGlhUGxheWVyRGlkUmVtb3ZlVHJhY2soUGFzc1JlZlB0
cjxJbmJhbmRUZXh0VHJhY2tQcml2YXRlPikgT1ZFUlJJREU7CisgICAgdmlydHVhbCB2b2lkIG1l
ZGlhUGxheWVyRGlkQWRkVGV4dFRyYWNrKFBhc3NSZWZQdHI8SW5iYW5kVGV4dFRyYWNrUHJpdmF0
ZT4pIE9WRVJSSURFOworICAgIHZpcnR1YWwgdm9pZCBtZWRpYVBsYXllckRpZFJlbW92ZVRleHRU
cmFjayhQYXNzUmVmUHRyPEluYmFuZFRleHRUcmFja1ByaXZhdGU+KSBPVkVSUklERTsKIAogI2lm
IFVTRShQTEFURk9STV9URVhUX1RSQUNLX01FTlUpCiAgICAgdmlydHVhbCB2b2lkIHNldFNlbGVj
dGVkVGV4dFRyYWNrKFBhc3NSZWZQdHI8UGxhdGZvcm1UZXh0VHJhY2s+KSBPVkVSUklERTsKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTFRyYWNrRWxlbWVudC5jcHAgYi9Tb3Vy
Y2UvV2ViQ29yZS9odG1sL0hUTUxUcmFja0VsZW1lbnQuY3BwCmluZGV4IGZiYmIzZTg1ZTBkYTY3
ODAxMWFmODRlZmM5YTU3OTljNjNmNDYzZDQuLjAxMDU4NTVmY2YyNTcxOTc0OWM1MTYwOGI0NjQ5
MmEyMDFhYzEzMDIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTFRyYWNrRWxl
bWVudC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MVHJhY2tFbGVtZW50LmNwcApA
QCAtODAsMTQgKzgwLDE0IEBAIE5vZGU6Okluc2VydGlvbk5vdGlmaWNhdGlvblJlcXVlc3QgSFRN
TFRyYWNrRWxlbWVudDo6aW5zZXJ0ZWRJbnRvKENvbnRhaW5lck5vZGUqCiAgICAgSFRNTEVsZW1l
bnQ6Omluc2VydGVkSW50byhpbnNlcnRpb25Qb2ludCk7CiAgICAgSFRNTE1lZGlhRWxlbWVudCog
cGFyZW50ID0gbWVkaWFFbGVtZW50KCk7CiAgICAgaWYgKGluc2VydGlvblBvaW50ID09IHBhcmVu
dCkKLSAgICAgICAgcGFyZW50LT5kaWRBZGRUcmFjayh0aGlzKTsKKyAgICAgICAgcGFyZW50LT5k
aWRBZGRUZXh0VHJhY2sodGhpcyk7CiAgICAgcmV0dXJuIEluc2VydGlvbkRvbmU7CiB9CiAKIHZv
aWQgSFRNTFRyYWNrRWxlbWVudDo6cmVtb3ZlZEZyb20oQ29udGFpbmVyTm9kZSogaW5zZXJ0aW9u
UG9pbnQpCiB7CiAgICAgaWYgKCFwYXJlbnROb2RlKCkgJiYgV2ViQ29yZTo6aXNNZWRpYUVsZW1l
bnQoaW5zZXJ0aW9uUG9pbnQpKQotICAgICAgICB0b01lZGlhRWxlbWVudChpbnNlcnRpb25Qb2lu
dCktPmRpZFJlbW92ZVRyYWNrKHRoaXMpOworICAgICAgICB0b01lZGlhRWxlbWVudChpbnNlcnRp
b25Qb2ludCktPmRpZFJlbW92ZVRleHRUcmFjayh0aGlzKTsKICAgICBIVE1MRWxlbWVudDo6cmVt
b3ZlZEZyb20oaW5zZXJ0aW9uUG9pbnQpOwogfQogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29y
ZS9odG1sL3RyYWNrL1RleHRUcmFjay5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL3RyYWNrL1Rl
eHRUcmFjay5jcHAKaW5kZXggM2MyNzRiMWUxNGI5YjkwNjFmZDg3ZjQyZjg2YWJhMjJlNWM4ODQx
MC4uOGUwM2Y4ZTJhZDI2MzAxNDQzMjA1NWQyOWIzZjkyM2Q5N2Q3YjBmNyAxMDA2NDQKLS0tIGEv
U291cmNlL1dlYkNvcmUvaHRtbC90cmFjay9UZXh0VHJhY2suY3BwCisrKyBiL1NvdXJjZS9XZWJD
b3JlL2h0bWwvdHJhY2svVGV4dFRyYWNrLmNwcApAQCAtMTA4LDE0ICsxMDgsMTIgQEAgVGV4dFRy
YWNrKiBUZXh0VHJhY2s6OmNhcHRpb25NZW51QXV0b21hdGljSXRlbSgpCiB9CiAKIFRleHRUcmFj
azo6VGV4dFRyYWNrKFNjcmlwdEV4ZWN1dGlvbkNvbnRleHQqIGNvbnRleHQsIFRleHRUcmFja0Ns
aWVudCogY2xpZW50LCBjb25zdCBBdG9taWNTdHJpbmcmIGtpbmQsIGNvbnN0IEF0b21pY1N0cmlu
ZyYgbGFiZWwsIGNvbnN0IEF0b21pY1N0cmluZyYgbGFuZ3VhZ2UsIFRleHRUcmFja1R5cGUgdHlw
ZSkKLSAgICA6IFRyYWNrQmFzZShjb250ZXh0LCBUcmFja0Jhc2U6OlRleHRUcmFjaykKKyAgICA6
IFRyYWNrQmFzZShUcmFja0Jhc2U6OlRleHRUcmFjaywgbGFiZWwsIGxhbmd1YWdlKQogICAgICwg
bV9jdWVzKDApCisgICAgLCBtX3NjcmlwdEV4ZWN1dGlvbkNvbnRleHQoY29udGV4dCkKICNpZiBF
TkFCTEUoV0VCVlRUX1JFR0lPTlMpCiAgICAgLCBtX3JlZ2lvbnMoMCkKICNlbmRpZgotICAgICwg
bV9tZWRpYUVsZW1lbnQoMCkKLSAgICAsIG1fbGFiZWwobGFiZWwpCi0gICAgLCBtX2xhbmd1YWdl
KGxhbmd1YWdlKQogICAgICwgbV9tb2RlKGRpc2FibGVkS2V5d29yZCgpLnN0cmluZygpKQogICAg
ICwgbV9jbGllbnQoY2xpZW50KQogICAgICwgbV90cmFja1R5cGUodHlwZSkKQEAgLTE0Myw2ICsx
NDEsMzEgQEAgVGV4dFRyYWNrOjp+VGV4dFRyYWNrKCkKICAgICBjbGVhckNsaWVudCgpOwogfQog
Citjb25zdCBBdG9taWNTdHJpbmcmIFRleHRUcmFjazo6aW50ZXJmYWNlTmFtZSgpIGNvbnN0Cit7
CisgICAgcmV0dXJuIGV2ZW50TmFtZXMoKS5pbnRlcmZhY2VGb3JUZXh0VHJhY2s7Cit9CisKK1Nj
cmlwdEV4ZWN1dGlvbkNvbnRleHQqIFRleHRUcmFjazo6c2NyaXB0RXhlY3V0aW9uQ29udGV4dCgp
IGNvbnN0Cit7CisgICAgcmV0dXJuIG1fc2NyaXB0RXhlY3V0aW9uQ29udGV4dDsKK30KKworRXZl
bnRUYXJnZXREYXRhKiBUZXh0VHJhY2s6OmV2ZW50VGFyZ2V0RGF0YSgpCit7CisgICAgcmV0dXJu
ICZtX2V2ZW50VGFyZ2V0RGF0YTsKK30KKworRXZlbnRUYXJnZXREYXRhKiBUZXh0VHJhY2s6OmVu
c3VyZUV2ZW50VGFyZ2V0RGF0YSgpCit7CisgICAgcmV0dXJuICZtX2V2ZW50VGFyZ2V0RGF0YTsK
K30KKworYm9vbCBUZXh0VHJhY2s6OmlzVmFsaWRLaW5kKGNvbnN0IEF0b21pY1N0cmluZyYgdmFs
dWUpIGNvbnN0Cit7CisgICAgcmV0dXJuIFRleHRUcmFjazo6aXNWYWxpZEtpbmRLZXl3b3JkKHZh
bHVlKTsKK30KKwogYm9vbCBUZXh0VHJhY2s6OmlzVmFsaWRLaW5kS2V5d29yZChjb25zdCBBdG9t
aWNTdHJpbmcmIHZhbHVlKQogewogICAgIGlmICh2YWx1ZSA9PSBzdWJ0aXRsZXNLZXl3b3JkKCkp
CkBAIC0xNTksMTYgKzE4MiwxMyBAQCBib29sIFRleHRUcmFjazo6aXNWYWxpZEtpbmRLZXl3b3Jk
KGNvbnN0IEF0b21pY1N0cmluZyYgdmFsdWUpCiAgICAgcmV0dXJuIGZhbHNlOwogfQogCi12b2lk
IFRleHRUcmFjazo6c2V0S2luZChjb25zdCBBdG9taWNTdHJpbmcmIGtpbmQpCit2b2lkIFRleHRU
cmFjazo6c2V0S2luZChjb25zdCBBdG9taWNTdHJpbmcmIG5ld0tpbmQpCiB7Ci0gICAgU3RyaW5n
IG9sZEtpbmQgPSBtX2tpbmQ7CisgICAgU3RyaW5nIG9sZEtpbmQgPSBraW5kKCk7CiAKLSAgICBp
ZiAoaXNWYWxpZEtpbmRLZXl3b3JkKGtpbmQpKQotICAgICAgICBtX2tpbmQgPSBraW5kOwotICAg
IGVsc2UKLSAgICAgICAgbV9raW5kID0gc3VidGl0bGVzS2V5d29yZCgpOworICAgIFRyYWNrQmFz
ZTo6c2V0S2luZChuZXdLaW5kKTsKIAotICAgIGlmIChtX2NsaWVudCAmJiBvbGRLaW5kICE9IG1f
a2luZCkKKyAgICBpZiAobV9jbGllbnQgJiYgb2xkS2luZCAhPSBraW5kKCkpCiAgICAgICAgIG1f
Y2xpZW50LT50ZXh0VHJhY2tLaW5kQ2hhbmdlZCh0aGlzKTsKIH0KIApAQCAtNDExLDcgKzQzMSw3
IEBAIHZvaWQgVGV4dFRyYWNrOjppbnZhbGlkYXRlVHJhY2tJbmRleCgpCiAKIGJvb2wgVGV4dFRy
YWNrOjppc1JlbmRlcmVkKCkKIHsKLSAgICBpZiAobV9raW5kICE9IGNhcHRpb25zS2V5d29yZCgp
ICYmIG1fa2luZCAhPSBzdWJ0aXRsZXNLZXl3b3JkKCkpCisgICAgaWYgKGtpbmQoKSAhPSBjYXB0
aW9uc0tleXdvcmQoKSAmJiBraW5kKCkgIT0gc3VidGl0bGVzS2V5d29yZCgpKQogICAgICAgICBy
ZXR1cm4gZmFsc2U7CiAKICAgICBpZiAobV9tb2RlICE9IHNob3dpbmdLZXl3b3JkKCkpCkBAIC01
MDIsMTcgKzUyMiwxNyBAQCBQYXNzUmVmUHRyPFBsYXRmb3JtVGV4dFRyYWNrPiBUZXh0VHJhY2s6
OnBsYXRmb3JtVGV4dFRyYWNrKCkKICAgICBpZiAobV9wbGF0Zm9ybVRleHRUcmFjaykKICAgICAg
ICAgcmV0dXJuIG1fcGxhdGZvcm1UZXh0VHJhY2s7CiAKLSAgICBQbGF0Zm9ybVRleHRUcmFjazo6
VHJhY2tLaW5kIGtpbmQgPSBQbGF0Zm9ybVRleHRUcmFjazo6Q2FwdGlvbjsKLSAgICBpZiAobV9r
aW5kID09IHN1YnRpdGxlc0tleXdvcmQoKSkKLSAgICAgICAga2luZCA9IFBsYXRmb3JtVGV4dFRy
YWNrOjpTdWJ0aXRsZTsKLSAgICBlbHNlIGlmIChtX2tpbmQgPT0gY2FwdGlvbnNLZXl3b3JkKCkp
Ci0gICAgICAgIGtpbmQgPSBQbGF0Zm9ybVRleHRUcmFjazo6Q2FwdGlvbjsKLSAgICBlbHNlIGlm
IChtX2tpbmQgPT0gZGVzY3JpcHRpb25zS2V5d29yZCgpKQotICAgICAgICBraW5kID0gUGxhdGZv
cm1UZXh0VHJhY2s6OkRlc2NyaXB0aW9uOwotICAgIGVsc2UgaWYgKG1fa2luZCA9PSBjaGFwdGVy
c0tleXdvcmQoKSkKLSAgICAgICAga2luZCA9IFBsYXRmb3JtVGV4dFRyYWNrOjpDaGFwdGVyOwot
ICAgIGVsc2UgaWYgKG1fa2luZCA9PSBtZXRhZGF0YUtleXdvcmQoKSkKLSAgICAgICAga2luZCA9
IFBsYXRmb3JtVGV4dFRyYWNrOjpNZXRhRGF0YTsKKyAgICBQbGF0Zm9ybVRleHRUcmFjazo6VHJh
Y2tLaW5kIHBsYXRmb3JtS2luZCA9IFBsYXRmb3JtVGV4dFRyYWNrOjpDYXB0aW9uOworICAgIGlm
IChraW5kKCkgPT0gc3VidGl0bGVzS2V5d29yZCgpKQorICAgICAgICBwbGF0Zm9ybUtpbmQgPSBQ
bGF0Zm9ybVRleHRUcmFjazo6U3VidGl0bGU7CisgICAgZWxzZSBpZiAoa2luZCgpID09IGNhcHRp
b25zS2V5d29yZCgpKQorICAgICAgICBwbGF0Zm9ybUtpbmQgPSBQbGF0Zm9ybVRleHRUcmFjazo6
Q2FwdGlvbjsKKyAgICBlbHNlIGlmIChraW5kKCkgPT0gZGVzY3JpcHRpb25zS2V5d29yZCgpKQor
ICAgICAgICBwbGF0Zm9ybUtpbmQgPSBQbGF0Zm9ybVRleHRUcmFjazo6RGVzY3JpcHRpb247Cisg
ICAgZWxzZSBpZiAoa2luZCgpID09IGNoYXB0ZXJzS2V5d29yZCgpKQorICAgICAgICBwbGF0Zm9y
bUtpbmQgPSBQbGF0Zm9ybVRleHRUcmFjazo6Q2hhcHRlcjsKKyAgICBlbHNlIGlmIChraW5kKCkg
PT0gbWV0YWRhdGFLZXl3b3JkKCkpCisgICAgICAgIHBsYXRmb3JtS2luZCA9IFBsYXRmb3JtVGV4
dFRyYWNrOjpNZXRhRGF0YTsKIAogICAgIFBsYXRmb3JtVGV4dFRyYWNrOjpUcmFja1R5cGUgdHlw
ZSA9IFBsYXRmb3JtVGV4dFRyYWNrOjpPdXRPZkJhbmQ7CiAgICAgaWYgKG1fdHJhY2tUeXBlID09
IFRyYWNrRWxlbWVudCkKQEAgLTUyMiw3ICs1NDIsNyBAQCBQYXNzUmVmUHRyPFBsYXRmb3JtVGV4
dFRyYWNrPiBUZXh0VHJhY2s6OnBsYXRmb3JtVGV4dFRyYWNrKCkKICAgICBlbHNlIGlmIChtX3Ry
YWNrVHlwZSA9PSBJbkJhbmQpCiAgICAgICAgIHR5cGUgPSBQbGF0Zm9ybVRleHRUcmFjazo6SW5C
YW5kOwogCi0gICAgbV9wbGF0Zm9ybVRleHRUcmFjayA9IFBsYXRmb3JtVGV4dFRyYWNrOjpjcmVh
dGUodGhpcywgbV9sYWJlbCwgbV9sYW5ndWFnZSwga2luZCwgdHlwZSk7CisgICAgbV9wbGF0Zm9y
bVRleHRUcmFjayA9IFBsYXRmb3JtVGV4dFRyYWNrOjpjcmVhdGUodGhpcywgbGFiZWwoKSwgbGFu
Z3VhZ2UoKSwgcGxhdGZvcm1LaW5kLCB0eXBlKTsKIAogICAgIHJldHVybiBtX3BsYXRmb3JtVGV4
dFRyYWNrOwogfQpAQCAtNTM0LDcgKzU1NCw3IEBAIGJvb2wgVGV4dFRyYWNrOjppc01haW5Qcm9n
cmFtQ29udGVudCgpIGNvbnN0CiAgICAgLy8gZGlyZWN0b3JzIGNvbW1lbnRhcnkgaXMgbm90ICJt
YWluIHByb2dyYW0iIGJlY2F1c2UgaXQgaXMgbm90IGVzc2VudGlhbCBmb3IgdGhlIHByZXNlbnRh
dGlvbi4gSFRNTDUgZG9lc24ndCBoYXZlCiAgICAgLy8gYSB3YXkgdG8gZXhwcmVzcyB0aGlzIGlu
IGEgbWFjaGluZS1yZWFibGUgZm9ybSwgaXQgaXMgdHlwaWNhbGx5IGRvbmUgd2l0aCB0aGUgdHJh
Y2sgbGFiZWwsIHNvIHdlIGFzc3VtZSB0aGF0IGNhcHRpb24KICAgICAvLyB0cmFja3MgYXJlIG1h
aW4gY29udGVudCBhbmQgYWxsIG90aGVyIHRyYWNrIHR5cGVzIGFyZSBub3QuCi0gICAgcmV0dXJu
IG1fa2luZCA9PSBjYXB0aW9uc0tleXdvcmQoKTsKKyAgICByZXR1cm4ga2luZCgpID09IGNhcHRp
b25zS2V5d29yZCgpOwogfQogCiB9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViQ29yZS9odG1sL3RyYWNrL1RleHRUcmFjay5oIGIvU291cmNlL1dlYkNvcmUvaHRt
bC90cmFjay9UZXh0VHJhY2suaAppbmRleCA1NzY5NDViYmU1MjFjZDZhMmY2ZmZmZmQzN2U1NmFk
NjY3MjYwZmYzLi40YmEzMGU3NTY1NTQ1ZjA2N2JmOTFiYjY5NGJiMzYxN2ZlZTdmZTEzIDEwMDY0
NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9odG1sL3RyYWNrL1RleHRUcmFjay5oCisrKyBiL1NvdXJj
ZS9XZWJDb3JlL2h0bWwvdHJhY2svVGV4dFRyYWNrLmgKQEAgLTQxLDcgKzQxLDcgQEAKIAogbmFt
ZXNwYWNlIFdlYkNvcmUgewogCi1jbGFzcyBIVE1MTWVkaWFFbGVtZW50OworY2xhc3MgU2NyaXB0
RXhlY3V0aW9uQ29udGV4dDsKIGNsYXNzIFRleHRUcmFjazsKIGNsYXNzIFRleHRUcmFja0N1ZTsK
IGNsYXNzIFRleHRUcmFja0N1ZUxpc3Q7CkBAIC02MSw3ICs2MSw3IEBAIHB1YmxpYzoKICAgICB2
aXJ0dWFsIHZvaWQgdGV4dFRyYWNrUmVtb3ZlQ3VlKFRleHRUcmFjayosIFBhc3NSZWZQdHI8VGV4
dFRyYWNrQ3VlPikgPSAwOwogfTsKIAotY2xhc3MgVGV4dFRyYWNrIDogcHVibGljIFRyYWNrQmFz
ZQorY2xhc3MgVGV4dFRyYWNrIDogcHVibGljIFRyYWNrQmFzZSwgcHVibGljIEV2ZW50VGFyZ2V0
CiAjaWYgVVNFKFBMQVRGT1JNX1RFWFRfVFJBQ0tfTUVOVSkKICAgICAsIHB1YmxpYyBQbGF0Zm9y
bVRleHRUcmFja0NsaWVudAogI2VuZGlmCkBAIC03MywzMiArNzMsMjYgQEAgcHVibGljOgogICAg
IH0KICAgICB2aXJ0dWFsIH5UZXh0VHJhY2soKTsKIAorICAgIHZpcnR1YWwgY29uc3QgQXRvbWlj
U3RyaW5nJiBpbnRlcmZhY2VOYW1lKCkgY29uc3Q7CisgICAgdmlydHVhbCBTY3JpcHRFeGVjdXRp
b25Db250ZXh0KiBzY3JpcHRFeGVjdXRpb25Db250ZXh0KCkgY29uc3Q7CisKICAgICBzdGF0aWMg
VGV4dFRyYWNrKiBjYXB0aW9uTWVudU9mZkl0ZW0oKTsKICAgICBzdGF0aWMgVGV4dFRyYWNrKiBj
YXB0aW9uTWVudUF1dG9tYXRpY0l0ZW0oKTsKIAotICAgIHZvaWQgc2V0TWVkaWFFbGVtZW50KEhU
TUxNZWRpYUVsZW1lbnQqIGVsZW1lbnQpIHsgbV9tZWRpYUVsZW1lbnQgPSBlbGVtZW50OyB9Ci0g
ICAgSFRNTE1lZGlhRWxlbWVudCogbWVkaWFFbGVtZW50KCkgeyByZXR1cm4gbV9tZWRpYUVsZW1l
bnQ7IH0KLQotICAgIEF0b21pY1N0cmluZyBraW5kKCkgY29uc3QgeyByZXR1cm4gbV9raW5kOyB9
Ci0gICAgdm9pZCBzZXRLaW5kKGNvbnN0IEF0b21pY1N0cmluZyYpOwotCiAgICAgc3RhdGljIGNv
bnN0IEF0b21pY1N0cmluZyYgc3VidGl0bGVzS2V5d29yZCgpOwogICAgIHN0YXRpYyBjb25zdCBB
dG9taWNTdHJpbmcmIGNhcHRpb25zS2V5d29yZCgpOwogICAgIHN0YXRpYyBjb25zdCBBdG9taWNT
dHJpbmcmIGRlc2NyaXB0aW9uc0tleXdvcmQoKTsKICAgICBzdGF0aWMgY29uc3QgQXRvbWljU3Ry
aW5nJiBjaGFwdGVyc0tleXdvcmQoKTsKICAgICBzdGF0aWMgY29uc3QgQXRvbWljU3RyaW5nJiBt
ZXRhZGF0YUtleXdvcmQoKTsKKyAgICB2aXJ0dWFsIGNvbnN0IEF0b21pY1N0cmluZyYgZGVmYXVs
dEtpbmRLZXl3b3JkKCkgY29uc3QgeyByZXR1cm4gc3VidGl0bGVzS2V5d29yZCgpOyB9CiAgICAg
c3RhdGljIGJvb2wgaXNWYWxpZEtpbmRLZXl3b3JkKGNvbnN0IEF0b21pY1N0cmluZyYpOwogCi0g
ICAgQXRvbWljU3RyaW5nIGxhYmVsKCkgY29uc3QgeyByZXR1cm4gbV9sYWJlbDsgfQotICAgIHZv
aWQgc2V0TGFiZWwoY29uc3QgQXRvbWljU3RyaW5nJiBsYWJlbCkgeyBtX2xhYmVsID0gbGFiZWw7
IH0KLQotICAgIEF0b21pY1N0cmluZyBsYW5ndWFnZSgpIGNvbnN0IHsgcmV0dXJuIG1fbGFuZ3Vh
Z2U7IH0KLSAgICB2b2lkIHNldExhbmd1YWdlKGNvbnN0IEF0b21pY1N0cmluZyYgbGFuZ3VhZ2Up
IHsgbV9sYW5ndWFnZSA9IGxhbmd1YWdlOyB9Ci0KICAgICBzdGF0aWMgY29uc3QgQXRvbWljU3Ry
aW5nJiBkaXNhYmxlZEtleXdvcmQoKTsKICAgICBzdGF0aWMgY29uc3QgQXRvbWljU3RyaW5nJiBo
aWRkZW5LZXl3b3JkKCk7CiAgICAgc3RhdGljIGNvbnN0IEF0b21pY1N0cmluZyYgc2hvd2luZ0tl
eXdvcmQoKTsKIAorICAgIHZpcnR1YWwgdm9pZCBzZXRLaW5kKGNvbnN0IEF0b21pY1N0cmluZyYp
IE9WRVJSSURFOworCiAgICAgQXRvbWljU3RyaW5nIG1vZGUoKSBjb25zdCB7IHJldHVybiBtX21v
ZGU7IH0KICAgICB2aXJ0dWFsIHZvaWQgc2V0TW9kZShjb25zdCBBdG9taWNTdHJpbmcmKTsKIApA
QCAtMTA5LDggKzEwMyw4IEBAIHB1YmxpYzoKICAgICBUZXh0VHJhY2tDdWVMaXN0KiBjdWVzKCk7
CiAgICAgVGV4dFRyYWNrQ3VlTGlzdCogYWN0aXZlQ3VlcygpIGNvbnN0OwogCi0gICAgdm9pZCBj
bGVhckNsaWVudCgpIHsgbV9jbGllbnQgPSAwOyB9Ci0gICAgVGV4dFRyYWNrQ2xpZW50KiBjbGll
bnQoKSB7IHJldHVybiBtX2NsaWVudDsgfQorICAgIHZpcnR1YWwgdm9pZCBjbGVhckNsaWVudCgp
IE9WRVJSSURFIHsgbV9jbGllbnQgPSAwOyB9CisgICAgVGV4dFRyYWNrQ2xpZW50KiBjbGllbnQo
KSBjb25zdCB7IHJldHVybiBtX2NsaWVudDsgfQogCiAgICAgdm9pZCBhZGRDdWUoUGFzc1JlZlB0
cjxUZXh0VHJhY2tDdWU+KTsKICAgICB2b2lkIHJlbW92ZUN1ZShUZXh0VHJhY2tDdWUqLCBFeGNl
cHRpb25Db2RlJik7CkBAIC0xNTQsMTUgKzE0OCwyNSBAQCBwdWJsaWM6CiAgICAgUGFzc1JlZlB0
cjxQbGF0Zm9ybVRleHRUcmFjaz4gcGxhdGZvcm1UZXh0VHJhY2soKTsKICNlbmRpZgogCisgICAg
dXNpbmcgUmVmQ291bnRlZDxUcmFja0Jhc2U+OjpyZWY7CisgICAgdXNpbmcgUmVmQ291bnRlZDxU
cmFja0Jhc2U+OjpkZXJlZjsKKwogcHJvdGVjdGVkOgogICAgIFRleHRUcmFjayhTY3JpcHRFeGVj
dXRpb25Db250ZXh0KiwgVGV4dFRyYWNrQ2xpZW50KiwgY29uc3QgQXRvbWljU3RyaW5nJiBraW5k
LCBjb25zdCBBdG9taWNTdHJpbmcmIGxhYmVsLCBjb25zdCBBdG9taWNTdHJpbmcmIGxhbmd1YWdl
LCBUZXh0VHJhY2tUeXBlKTsKICNpZiBFTkFCTEUoVklERU9fVFJBQ0spICYmIEVOQUJMRShXRUJW
VFRfUkVHSU9OUykKICAgICBUZXh0VHJhY2tSZWdpb25MaXN0KiByZWdpb25MaXN0KCk7CiAjZW5k
aWYKIAorICAgIHZpcnR1YWwgRXZlbnRUYXJnZXREYXRhKiBldmVudFRhcmdldERhdGEoKTsKKyAg
ICB2aXJ0dWFsIEV2ZW50VGFyZ2V0RGF0YSogZW5zdXJlRXZlbnRUYXJnZXREYXRhKCk7CisKICAg
ICBSZWZQdHI8VGV4dFRyYWNrQ3VlTGlzdD4gbV9jdWVzOwogCiBwcml2YXRlOgorICAgIHZpcnR1
YWwgYm9vbCBpc1ZhbGlkS2luZChjb25zdCBBdG9taWNTdHJpbmcmKSBjb25zdCBPVkVSUklERTsK
KworICAgIHZpcnR1YWwgdm9pZCByZWZFdmVudFRhcmdldCgpIHsgcmVmKCk7IH0KKyAgICB2aXJ0
dWFsIHZvaWQgZGVyZWZFdmVudFRhcmdldCgpIHsgZGVyZWYoKTsgfQogCiAjaWYgRU5BQkxFKFZJ
REVPX1RSQUNLKSAmJiBFTkFCTEUoV0VCVlRUX1JFR0lPTlMpCiAgICAgVGV4dFRyYWNrUmVnaW9u
TGlzdCogZW5zdXJlVGV4dFRyYWNrUmVnaW9uTGlzdCgpOwpAQCAtMTc3LDEwICsxODEsOCBAQCBw
cml2YXRlOgogCiAgICAgVGV4dFRyYWNrQ3VlTGlzdCogZW5zdXJlVGV4dFRyYWNrQ3VlTGlzdCgp
OwogCi0gICAgSFRNTE1lZGlhRWxlbWVudCogbV9tZWRpYUVsZW1lbnQ7Ci0gICAgQXRvbWljU3Ry
aW5nIG1fa2luZDsKLSAgICBBdG9taWNTdHJpbmcgbV9sYWJlbDsKLSAgICBBdG9taWNTdHJpbmcg
bV9sYW5ndWFnZTsKKyAgICBTY3JpcHRFeGVjdXRpb25Db250ZXh0KiBtX3NjcmlwdEV4ZWN1dGlv
bkNvbnRleHQ7CisgICAgRXZlbnRUYXJnZXREYXRhIG1fZXZlbnRUYXJnZXREYXRhOwogICAgIEF0
b21pY1N0cmluZyBtX21vZGU7CiAgICAgVGV4dFRyYWNrQ2xpZW50KiBtX2NsaWVudDsKICAgICBU
ZXh0VHJhY2tUeXBlIG1fdHJhY2tUeXBlOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvaHRt
bC90cmFjay9UZXh0VHJhY2tMaXN0LmNwcCBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvdHJhY2svVGV4
dFRyYWNrTGlzdC5jcHAKaW5kZXggOGFlNTZjMmIwNWU3NGQ2MDI5ZmIzNGQzYTFkYWM2ZDAwMDE2
NDcyMC4uZjczYzY4YTZmOGU1MDBkNGY3M2U0YTMxNWM3YmQwYWYzNzFiYTBhMCAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYkNvcmUvaHRtbC90cmFjay9UZXh0VHJhY2tMaXN0LmNwcAorKysgYi9Tb3Vy
Y2UvV2ViQ29yZS9odG1sL3RyYWNrL1RleHRUcmFja0xpc3QuY3BwCkBAIC0zMCwyMyArMzAsMTYg
QEAKICNpbmNsdWRlICJUZXh0VHJhY2tMaXN0LmgiCiAKICNpbmNsdWRlICJFdmVudE5hbWVzLmgi
Ci0jaW5jbHVkZSAiSFRNTE1lZGlhRWxlbWVudC5oIgogI2luY2x1ZGUgIkluYmFuZFRleHRUcmFj
ay5oIgogI2luY2x1ZGUgIkluYmFuZFRleHRUcmFja1ByaXZhdGUuaCIKICNpbmNsdWRlICJMb2Fk
YWJsZVRleHRUcmFjay5oIgotI2luY2x1ZGUgIlNjcmlwdEV4ZWN1dGlvbkNvbnRleHQuaCIKICNp
bmNsdWRlICJUZXh0VHJhY2suaCIKLSNpbmNsdWRlICJUcmFja0V2ZW50LmgiCiAKIHVzaW5nIG5h
bWVzcGFjZSBXZWJDb3JlOwogCiBUZXh0VHJhY2tMaXN0OjpUZXh0VHJhY2tMaXN0KEhUTUxNZWRp
YUVsZW1lbnQqIG93bmVyLCBTY3JpcHRFeGVjdXRpb25Db250ZXh0KiBjb250ZXh0KQotICAgIDog
bV9jb250ZXh0KGNvbnRleHQpCi0gICAgLCBtX293bmVyKG93bmVyKQotICAgICwgbV9wZW5kaW5n
RXZlbnRUaW1lcih0aGlzLCAmVGV4dFRyYWNrTGlzdDo6YXN5bmNFdmVudFRpbWVyRmlyZWQpCi0g
ICAgLCBtX2Rpc3BhdGNoaW5nRXZlbnRzKDApCisgICAgOiBUcmFja0xpc3RCYXNlKG93bmVyLCBj
b250ZXh0KQogewotICAgIEFTU0VSVChjb250ZXh0LT5pc0RvY3VtZW50KCkpOwogfQogCiBUZXh0
VHJhY2tMaXN0Ojp+VGV4dFRyYWNrTGlzdCgpCkBAIC01OCw4ICs1MSwxMiBAQCB1bnNpZ25lZCBU
ZXh0VHJhY2tMaXN0OjpsZW5ndGgoKSBjb25zdAogICAgIHJldHVybiBtX2FkZFRyYWNrVHJhY2tz
LnNpemUoKSArIG1fZWxlbWVudFRyYWNrcy5zaXplKCkgKyBtX2luYmFuZFRyYWNrcy5zaXplKCk7
CiB9CiAKLWludCBUZXh0VHJhY2tMaXN0OjpnZXRUcmFja0luZGV4KFRleHRUcmFjayAqdGV4dFRy
YWNrKQoraW50IFRleHRUcmFja0xpc3Q6OmdldFRyYWNrSW5kZXgoVHJhY2tCYXNlICp0cmFjaykK
IHsKKyAgICBpZiAodHJhY2stPnR5cGUoKSAhPSBUcmFja0Jhc2U6OlRleHRUcmFjaykKKyAgICAg
ICAgcmV0dXJuIC0xOworICAgIFRleHRUcmFjayogdGV4dFRyYWNrID0gc3RhdGljX2Nhc3Q8VGV4
dFRyYWNrKj4odHJhY2spOworCiAgICAgaWYgKHRleHRUcmFjay0+dHJhY2tUeXBlKCkgPT0gVGV4
dFRyYWNrOjpUcmFja0VsZW1lbnQpCiAgICAgICAgIHJldHVybiBzdGF0aWNfY2FzdDxMb2FkYWJs
ZVRleHRUcmFjayo+KHRleHRUcmFjayktPnRyYWNrRWxlbWVudEluZGV4KCk7CiAKQEAgLTk4LDcg
Kzk1LDcgQEAgaW50IFRleHRUcmFja0xpc3Q6OmdldFRyYWNrSW5kZXhSZWxhdGl2ZVRvUmVuZGVy
ZWRUcmFja3MoVGV4dFRyYWNrICp0ZXh0VHJhY2spCiAgICAgfQogCiAgICAgZm9yIChzaXplX3Qg
aSA9IDA7IGkgPCBtX2luYmFuZFRyYWNrcy5zaXplKCk7ICsraSkgewotICAgICAgICBpZiAoIW1f
aW5iYW5kVHJhY2tzW2ldLT5pc1JlbmRlcmVkKCkpCisgICAgICAgIGlmICghZ2V0SW5iYW5kVHJh
Y2soaSktPmlzUmVuZGVyZWQoKSkKICAgICAgICAgICAgIGNvbnRpbnVlOwogICAgICAgICAKICAg
ICAgICAgaWYgKG1faW5iYW5kVHJhY2tzW2ldID09IHRleHRUcmFjaykKQEAgLTExMSw3ICsxMDgs
NyBAQCBpbnQgVGV4dFRyYWNrTGlzdDo6Z2V0VHJhY2tJbmRleFJlbGF0aXZlVG9SZW5kZXJlZFRy
YWNrcyhUZXh0VHJhY2sgKnRleHRUcmFjaykKICAgICByZXR1cm4gLTE7CiB9CiAKLVRleHRUcmFj
ayogVGV4dFRyYWNrTGlzdDo6aXRlbSh1bnNpZ25lZCBpbmRleCkKK1RleHRUcmFjayogVGV4dFRy
YWNrTGlzdDo6aXRlbSh1bnNpZ25lZCBpbmRleCkgY29uc3QKIHsKICAgICAvLyA0LjguMTAuMTIu
MSBUZXh0IHRyYWNrIG1vZGVsCiAgICAgLy8gVGhlIHRleHQgdHJhY2tzIGFyZSBzb3J0ZWQgYXMg
Zm9sbG93czoKQEAgLTEyOSwzNiArMTI2LDQ1IEBAIFRleHRUcmFjayogVGV4dFRyYWNrTGlzdDo6
aXRlbSh1bnNpZ25lZCBpbmRleCkKIAogICAgIGluZGV4IC09IG1fYWRkVHJhY2tUcmFja3Muc2l6
ZSgpOwogICAgIGlmIChpbmRleCA8IG1faW5iYW5kVHJhY2tzLnNpemUoKSkKLSAgICAgICAgcmV0
dXJuIG1faW5iYW5kVHJhY2tzW2luZGV4XS5nZXQoKTsKKyAgICAgICAgcmV0dXJuIGdldEluYmFu
ZFRyYWNrKGluZGV4KTsKIAogICAgIHJldHVybiAwOwogfQogCi12b2lkIFRleHRUcmFja0xpc3Q6
OmludmFsaWRhdGVUcmFja0luZGV4ZXNBZnRlclRyYWNrKFRleHRUcmFjayogdHJhY2spCitUZXh0
VHJhY2sqIFRleHRUcmFja0xpc3Q6OmdldEluYmFuZFRyYWNrKHVuc2lnbmVkIGluZGV4KSBjb25z
dAogewotICAgIFZlY3RvcjxSZWZQdHI8VGV4dFRyYWNrPiA+KiB0cmFja3MgPSAwOworICAgIFRy
YWNrQmFzZSogdHJhY2sgPSBtX2luYmFuZFRyYWNrc1tpbmRleF0uZ2V0KCk7CisgICAgQVNTRVJU
KHRyYWNrLT50eXBlKCkgPT0gVHJhY2tCYXNlOjpUZXh0VHJhY2spOworICAgIHJldHVybiBzdGF0
aWNfY2FzdDxUZXh0VHJhY2sqPih0cmFjayk7Cit9CiAKK3ZvaWQgVGV4dFRyYWNrTGlzdDo6aW52
YWxpZGF0ZVRyYWNrSW5kZXhlc0FmdGVyVHJhY2soVGV4dFRyYWNrKiB0cmFjaykKK3sKKyAgICBz
aXplX3QgaW5kZXggPSBub3RGb3VuZDsKICAgICBpZiAodHJhY2stPnRyYWNrVHlwZSgpID09IFRl
eHRUcmFjazo6VHJhY2tFbGVtZW50KSB7Ci0gICAgICAgIHRyYWNrcyA9ICZtX2VsZW1lbnRUcmFj
a3M7CisgICAgICAgIGluZGV4ID0gbV9lbGVtZW50VHJhY2tzLmZpbmQodHJhY2spOworICAgICAg
ICBpZiAoaW5kZXggPT0gbm90Rm91bmQpCisgICAgICAgICAgICByZXR1cm47CisgICAgICAgIGZv
ciAoc2l6ZV90IGkgPSBpbmRleDsgaSA8IG1fZWxlbWVudFRyYWNrcy5zaXplKCk7ICsraSkKKyAg
ICAgICAgICAgIG1fZWxlbWVudFRyYWNrcy5hdChpbmRleCktPmludmFsaWRhdGVUcmFja0luZGV4
KCk7CisgICAgfSBlbHNlIGlmICh0cmFjay0+dHJhY2tUeXBlKCkgPT0gVGV4dFRyYWNrOjpBZGRU
cmFjaykgeworICAgICAgICBpZiAoaW5kZXggPT0gbm90Rm91bmQpIHsKKyAgICAgICAgICAgIGlu
ZGV4ID0gbV9hZGRUcmFja1RyYWNrcy5maW5kKHRyYWNrKTsKKyAgICAgICAgICAgIGlmIChpbmRl
eCA9PSBub3RGb3VuZCkKKyAgICAgICAgICAgICAgICByZXR1cm47CisgICAgICAgIH0KICAgICAg
ICAgZm9yIChzaXplX3QgaSA9IDA7IGkgPCBtX2FkZFRyYWNrVHJhY2tzLnNpemUoKTsgKytpKQog
ICAgICAgICAgICAgbV9hZGRUcmFja1RyYWNrc1tpXS0+aW52YWxpZGF0ZVRyYWNrSW5kZXgoKTsK
KyAgICB9IGVsc2UgaWYgKHRyYWNrLT50cmFja1R5cGUoKSA9PSBUZXh0VHJhY2s6OkluQmFuZCkg
eworICAgICAgICBpZiAoaW5kZXggPT0gbm90Rm91bmQpIHsKKyAgICAgICAgICAgIGluZGV4ID0g
bV9pbmJhbmRUcmFja3MuZmluZCh0cmFjayk7CisgICAgICAgICAgICBpZiAoaW5kZXggPT0gbm90
Rm91bmQpCisgICAgICAgICAgICAgICAgcmV0dXJuOworICAgICAgICB9CiAgICAgICAgIGZvciAo
c2l6ZV90IGkgPSAwOyBpIDwgbV9pbmJhbmRUcmFja3Muc2l6ZSgpOyArK2kpCi0gICAgICAgICAg
ICBtX2luYmFuZFRyYWNrc1tpXS0+aW52YWxpZGF0ZVRyYWNrSW5kZXgoKTsKLSAgICB9IGVsc2Ug
aWYgKHRyYWNrLT50cmFja1R5cGUoKSA9PSBUZXh0VHJhY2s6OkFkZFRyYWNrKSB7Ci0gICAgICAg
IHRyYWNrcyA9ICZtX2FkZFRyYWNrVHJhY2tzOwotICAgICAgICBmb3IgKHNpemVfdCBpID0gMDsg
aSA8IG1faW5iYW5kVHJhY2tzLnNpemUoKTsgKytpKQotICAgICAgICAgICAgbV9pbmJhbmRUcmFj
a3NbaV0tPmludmFsaWRhdGVUcmFja0luZGV4KCk7Ci0gICAgfSBlbHNlIGlmICh0cmFjay0+dHJh
Y2tUeXBlKCkgPT0gVGV4dFRyYWNrOjpJbkJhbmQpCi0gICAgICAgIHRyYWNrcyA9ICZtX2luYmFu
ZFRyYWNrczsKLSAgICBlbHNlCisgICAgICAgICAgICBnZXRJbmJhbmRUcmFjayhpKS0+aW52YWxp
ZGF0ZVRyYWNrSW5kZXgoKTsKKyAgICB9IGVsc2UKICAgICAgICAgQVNTRVJUX05PVF9SRUFDSEVE
KCk7Ci0KLSAgICBzaXplX3QgaW5kZXggPSB0cmFja3MtPmZpbmQodHJhY2spOwotICAgIGlmIChp
bmRleCA9PSBub3RGb3VuZCkKLSAgICAgICAgcmV0dXJuOwotCi0gICAgZm9yIChzaXplX3QgaSA9
IGluZGV4OyBpIDwgdHJhY2tzLT5zaXplKCk7ICsraSkKLSAgICAgICAgdHJhY2tzLT5hdChpbmRl
eCktPmludmFsaWRhdGVUcmFja0luZGV4KCk7CiB9CiAKIHZvaWQgVGV4dFRyYWNrTGlzdDo6YXBw
ZW5kKFBhc3NSZWZQdHI8VGV4dFRyYWNrPiBwcnBUcmFjaykKQEAgLTE4MCw1MSArMTg2LDYwIEBA
IHZvaWQgVGV4dFRyYWNrTGlzdDo6YXBwZW5kKFBhc3NSZWZQdHI8VGV4dFRyYWNrPiBwcnBUcmFj
aykKIAogICAgIGludmFsaWRhdGVUcmFja0luZGV4ZXNBZnRlclRyYWNrKHRyYWNrLmdldCgpKTsK
IAotICAgIEFTU0VSVCghdHJhY2stPm1lZGlhRWxlbWVudCgpIHx8IHRyYWNrLT5tZWRpYUVsZW1l
bnQoKSA9PSBtX293bmVyKTsKLSAgICB0cmFjay0+c2V0TWVkaWFFbGVtZW50KG1fb3duZXIpOwor
ICAgIEFTU0VSVCghdHJhY2stPm1lZGlhRWxlbWVudCgpIHx8IHRyYWNrLT5tZWRpYUVsZW1lbnQo
KSA9PSBvd25lcigpKTsKKyAgICB0cmFjay0+c2V0TWVkaWFFbGVtZW50KG93bmVyKCkpOwogCiAg
ICAgc2NoZWR1bGVBZGRUcmFja0V2ZW50KHRyYWNrLnJlbGVhc2UoKSk7CiB9CiAKLXZvaWQgVGV4
dFRyYWNrTGlzdDo6cmVtb3ZlKFRleHRUcmFjayogdHJhY2spCit2b2lkIFRleHRUcmFja0xpc3Q6
OnJlbW92ZShUcmFja0Jhc2UqIHRyYWNrKQogewotICAgIFZlY3RvcjxSZWZQdHI8VGV4dFRyYWNr
PiA+KiB0cmFja3MgPSAwOwotCi0gICAgaWYgKHRyYWNrLT50cmFja1R5cGUoKSA9PSBUZXh0VHJh
Y2s6OlRyYWNrRWxlbWVudCkKLSAgICAgICAgdHJhY2tzID0gJm1fZWxlbWVudFRyYWNrczsKLSAg
ICBlbHNlIGlmICh0cmFjay0+dHJhY2tUeXBlKCkgPT0gVGV4dFRyYWNrOjpBZGRUcmFjaykKLSAg
ICAgICAgdHJhY2tzID0gJm1fYWRkVHJhY2tUcmFja3M7Ci0gICAgZWxzZSBpZiAodHJhY2stPnRy
YWNrVHlwZSgpID09IFRleHRUcmFjazo6SW5CYW5kKQotICAgICAgICB0cmFja3MgPSAmbV9pbmJh
bmRUcmFja3M7CisgICAgaWYgKHRyYWNrLT50eXBlKCkgIT0gVHJhY2tCYXNlOjpUZXh0VHJhY2sp
CisgICAgICAgIHJldHVybjsKKyAgICBUZXh0VHJhY2sqIHRleHRUcmFjayA9IHN0YXRpY19jYXN0
PFRleHRUcmFjayo+KHRyYWNrKTsKKworICAgIHNpemVfdCBpbmRleCA9IG5vdEZvdW5kOworICAg
IGlmICh0ZXh0VHJhY2stPnRyYWNrVHlwZSgpID09IFRleHRUcmFjazo6VHJhY2tFbGVtZW50KQor
ICAgICAgICBpbmRleCA9IG1fZWxlbWVudFRyYWNrcy5maW5kKHRleHRUcmFjayk7CisgICAgZWxz
ZSBpZiAodGV4dFRyYWNrLT50cmFja1R5cGUoKSA9PSBUZXh0VHJhY2s6OkFkZFRyYWNrKQorICAg
ICAgICBpbmRleCA9IG1fYWRkVHJhY2tUcmFja3MuZmluZCh0ZXh0VHJhY2spOworICAgIGVsc2Ug
aWYgKHRleHRUcmFjay0+dHJhY2tUeXBlKCkgPT0gVGV4dFRyYWNrOjpJbkJhbmQpCisgICAgICAg
IGluZGV4ID0gbV9pbmJhbmRUcmFja3MuZmluZCh0ZXh0VHJhY2spOwogICAgIGVsc2UKICAgICAg
ICAgQVNTRVJUX05PVF9SRUFDSEVEKCk7CiAKLSAgICBzaXplX3QgaW5kZXggPSB0cmFja3MtPmZp
bmQodHJhY2spOwogICAgIGlmIChpbmRleCA9PSBub3RGb3VuZCkKICAgICAgICAgcmV0dXJuOwog
Ci0gICAgaW52YWxpZGF0ZVRyYWNrSW5kZXhlc0FmdGVyVHJhY2sodHJhY2spOworICAgIGludmFs
aWRhdGVUcmFja0luZGV4ZXNBZnRlclRyYWNrKHRleHRUcmFjayk7CiAKLSAgICBBU1NFUlQoIXRy
YWNrLT5tZWRpYUVsZW1lbnQoKSB8fCB0cmFjay0+bWVkaWFFbGVtZW50KCkgPT0gbV9vd25lcik7
CisgICAgQVNTRVJUKCF0cmFjay0+bWVkaWFFbGVtZW50KCkgfHwgdHJhY2stPm1lZGlhRWxlbWVu
dCgpID09IG93bmVyKCkpOwogICAgIHRyYWNrLT5zZXRNZWRpYUVsZW1lbnQoMCk7CiAKLSAgICB0
cmFja3MtPnJlbW92ZShpbmRleCk7CisgICAgaWYgKHRleHRUcmFjay0+dHJhY2tUeXBlKCkgPT0g
VGV4dFRyYWNrOjpUcmFja0VsZW1lbnQpCisgICAgICAgIG1fZWxlbWVudFRyYWNrcy5yZW1vdmUo
aW5kZXgpOworICAgIGVsc2UgaWYgKHRleHRUcmFjay0+dHJhY2tUeXBlKCkgPT0gVGV4dFRyYWNr
OjpBZGRUcmFjaykKKyAgICAgICAgbV9hZGRUcmFja1RyYWNrcy5yZW1vdmUoaW5kZXgpOworICAg
IGVsc2UgaWYgKHRleHRUcmFjay0+dHJhY2tUeXBlKCkgPT0gVGV4dFRyYWNrOjpJbkJhbmQpCisg
ICAgICAgIG1faW5iYW5kVHJhY2tzLnJlbW92ZShpbmRleCk7CisgICAgZWxzZQorICAgICAgICBB
U1NFUlRfTk9UX1JFQUNIRUQoKTsKIH0KIAotYm9vbCBUZXh0VHJhY2tMaXN0Ojpjb250YWlucyhU
ZXh0VHJhY2sqIHRyYWNrKSBjb25zdAorYm9vbCBUZXh0VHJhY2tMaXN0Ojpjb250YWlucyhUcmFj
a0Jhc2UqIHRyYWNrKSBjb25zdAogewotICAgIGNvbnN0IFZlY3RvcjxSZWZQdHI8VGV4dFRyYWNr
PiA+KiB0cmFja3MgPSAwOwotICAgIAotICAgIGlmICh0cmFjay0+dHJhY2tUeXBlKCkgPT0gVGV4
dFRyYWNrOjpUcmFja0VsZW1lbnQpCi0gICAgICAgIHRyYWNrcyA9ICZtX2VsZW1lbnRUcmFja3M7
Ci0gICAgZWxzZSBpZiAodHJhY2stPnRyYWNrVHlwZSgpID09IFRleHRUcmFjazo6QWRkVHJhY2sp
Ci0gICAgICAgIHRyYWNrcyA9ICZtX2FkZFRyYWNrVHJhY2tzOwotICAgIGVsc2UgaWYgKHRyYWNr
LT50cmFja1R5cGUoKSA9PSBUZXh0VHJhY2s6OkluQmFuZCkKLSAgICAgICAgdHJhY2tzID0gJm1f
aW5iYW5kVHJhY2tzOwotICAgIGVsc2UKLSAgICAgICAgQVNTRVJUX05PVF9SRUFDSEVEKCk7Cisg
ICAgaWYgKHRyYWNrLT50eXBlKCkgIT0gVHJhY2tCYXNlOjpUZXh0VHJhY2spCisgICAgICAgIHJl
dHVybiBmYWxzZTsKKyAgICBUZXh0VHJhY2sqIHRleHRUcmFjayA9IHN0YXRpY19jYXN0PFRleHRU
cmFjayo+KHRyYWNrKTsKICAgICAKLSAgICByZXR1cm4gdHJhY2tzLT5maW5kKHRyYWNrKSAhPSBu
b3RGb3VuZDsKKyAgICBpZiAodGV4dFRyYWNrLT50cmFja1R5cGUoKSA9PSBUZXh0VHJhY2s6OlRy
YWNrRWxlbWVudCkKKyAgICAgICAgcmV0dXJuIG1fZWxlbWVudFRyYWNrcy5maW5kKHRyYWNrKSAh
PSBub3RGb3VuZDsKKyAgICBpZiAodGV4dFRyYWNrLT50cmFja1R5cGUoKSA9PSBUZXh0VHJhY2s6
OkFkZFRyYWNrKQorICAgICAgICByZXR1cm4gbV9hZGRUcmFja1RyYWNrcy5maW5kKHRyYWNrKSAh
PSBub3RGb3VuZDsKKyAgICBpZiAodGV4dFRyYWNrLT50cmFja1R5cGUoKSA9PSBUZXh0VHJhY2s6
OkluQmFuZCkKKyAgICAgICAgcmV0dXJuIG1faW5iYW5kVHJhY2tzLmZpbmQodHJhY2spICE9IG5v
dEZvdW5kOworICAgIEFTU0VSVF9OT1RfUkVBQ0hFRCgpOworICAgIHJldHVybiBmYWxzZTsKIH0K
IAogY29uc3QgQXRvbWljU3RyaW5nJiBUZXh0VHJhY2tMaXN0OjppbnRlcmZhY2VOYW1lKCkgY29u
c3QKQEAgLTIzMiw0MSArMjQ3LDQgQEAgY29uc3QgQXRvbWljU3RyaW5nJiBUZXh0VHJhY2tMaXN0
OjppbnRlcmZhY2VOYW1lKCkgY29uc3QKICAgICByZXR1cm4gZXZlbnROYW1lcygpLmludGVyZmFj
ZUZvclRleHRUcmFja0xpc3Q7CiB9CiAKLXZvaWQgVGV4dFRyYWNrTGlzdDo6c2NoZWR1bGVBZGRU
cmFja0V2ZW50KFBhc3NSZWZQdHI8VGV4dFRyYWNrPiB0cmFjaykKLXsKLSAgICAvLyA0LjguMTAu
MTIuMyBTb3VyY2luZyBvdXQtb2YtYmFuZCB0ZXh0IHRyYWNrcwotICAgIC8vIDQuOC4xMC4xMi40
IFRleHQgdHJhY2sgQVBJCi0gICAgLy8gLi4uIHRoZW4gcXVldWUgYSB0YXNrIHRvIGZpcmUgYW4g
ZXZlbnQgd2l0aCB0aGUgbmFtZSBhZGR0cmFjaywgdGhhdCBkb2VzIG5vdCAKLSAgICAvLyBidWJi
bGUgYW5kIGlzIG5vdCBjYW5jZWxhYmxlLCBhbmQgdGhhdCB1c2VzIHRoZSBUcmFja0V2ZW50IGlu
dGVyZmFjZSwgd2l0aCAKLSAgICAvLyB0aGUgdHJhY2sgYXR0cmlidXRlIGluaXRpYWxpemVkIHRv
IHRoZSB0ZXh0IHRyYWNrJ3MgVGV4dFRyYWNrIG9iamVjdCwgYXQgCi0gICAgLy8gdGhlIG1lZGlh
IGVsZW1lbnQncyB0ZXh0VHJhY2tzIGF0dHJpYnV0ZSdzIFRleHRUcmFja0xpc3Qgb2JqZWN0Lgot
Ci0gICAgUmVmUHRyPFRleHRUcmFjaz4gdHJhY2tSZWYgPSB0cmFjazsKLSAgICBUcmFja0V2ZW50
SW5pdCBpbml0aWFsaXplcjsKLSAgICBpbml0aWFsaXplci50cmFjayA9IHRyYWNrUmVmOwotICAg
IGluaXRpYWxpemVyLmJ1YmJsZXMgPSBmYWxzZTsKLSAgICBpbml0aWFsaXplci5jYW5jZWxhYmxl
ID0gZmFsc2U7Ci0KLSAgICBtX3BlbmRpbmdFdmVudHMuYXBwZW5kKFRyYWNrRXZlbnQ6OmNyZWF0
ZShldmVudE5hbWVzKCkuYWRkdHJhY2tFdmVudCwgaW5pdGlhbGl6ZXIpKTsKLSAgICBpZiAoIW1f
cGVuZGluZ0V2ZW50VGltZXIuaXNBY3RpdmUoKSkKLSAgICAgICAgbV9wZW5kaW5nRXZlbnRUaW1l
ci5zdGFydE9uZVNob3QoMCk7Ci19Ci0KLXZvaWQgVGV4dFRyYWNrTGlzdDo6YXN5bmNFdmVudFRp
bWVyRmlyZWQoVGltZXI8VGV4dFRyYWNrTGlzdD4qKQotewotICAgIFZlY3RvcjxSZWZQdHI8RXZl
bnQ+ID4gcGVuZGluZ0V2ZW50czsKLQotICAgICsrbV9kaXNwYXRjaGluZ0V2ZW50czsKLSAgICBt
X3BlbmRpbmdFdmVudHMuc3dhcChwZW5kaW5nRXZlbnRzKTsKLSAgICBzaXplX3QgY291bnQgPSBw
ZW5kaW5nRXZlbnRzLnNpemUoKTsKLSAgICBmb3IgKHNpemVfdCBpbmRleCA9IDA7IGluZGV4IDwg
Y291bnQ7ICsraW5kZXgpCi0gICAgICAgIGRpc3BhdGNoRXZlbnQocGVuZGluZ0V2ZW50c1tpbmRl
eF0ucmVsZWFzZSgpLCBJR05PUkVfRVhDRVBUSU9OKTsKLSAgICAtLW1fZGlzcGF0Y2hpbmdFdmVu
dHM7Ci19Ci0KLU5vZGUqIFRleHRUcmFja0xpc3Q6Om93bmVyKCkgY29uc3QKLXsKLSAgICByZXR1
cm4gbV9vd25lcjsKLX0KLQogI2VuZGlmCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9odG1s
L3RyYWNrL1RleHRUcmFja0xpc3QuaCBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvdHJhY2svVGV4dFRy
YWNrTGlzdC5oCmluZGV4IDFlZTE1YzkzYzk4NzllNWM5YWE1ZTVkNGI2OTFkNDdjMDU0NjJhMjEu
LjU0OTBkZWI2N2YzZDVmMDdjNDYxNzFiOTNjZjllZTcyZjgyNDhjMjUgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9XZWJDb3JlL2h0bWwvdHJhY2svVGV4dFRyYWNrTGlzdC5oCisrKyBiL1NvdXJjZS9XZWJD
b3JlL2h0bWwvdHJhY2svVGV4dFRyYWNrTGlzdC5oCkBAIC0yOCwyMSArMjgsMTMgQEAKIAogI2lm
IEVOQUJMRShWSURFT19UUkFDSykKIAotI2luY2x1ZGUgIkV2ZW50TGlzdGVuZXIuaCIKLSNpbmNs
dWRlICJFdmVudFRhcmdldC5oIgotI2luY2x1ZGUgIlRpbWVyLmgiCi0jaW5jbHVkZSA8YWxnb3Jp
dGhtPgotI2luY2x1ZGUgPHd0Zi9QYXNzUmVmUHRyLmg+Ci0jaW5jbHVkZSA8d3RmL1JlZkNvdW50
ZWQuaD4KLSNpbmNsdWRlIDx3dGYvVmVjdG9yLmg+CisjaW5jbHVkZSAiVHJhY2tMaXN0QmFzZS5o
IgogCiBuYW1lc3BhY2UgV2ViQ29yZSB7CiAKLWNsYXNzIEhUTUxNZWRpYUVsZW1lbnQ7CiBjbGFz
cyBUZXh0VHJhY2s7Ci1jbGFzcyBUZXh0VHJhY2tMaXN0OwogCi1jbGFzcyBUZXh0VHJhY2tMaXN0
IDogcHVibGljIFJlZkNvdW50ZWQ8VGV4dFRyYWNrTGlzdD4sIHB1YmxpYyBFdmVudFRhcmdldCB7
CitjbGFzcyBUZXh0VHJhY2tMaXN0IDogcHVibGljIFRyYWNrTGlzdEJhc2UgewogcHVibGljOgog
ICAgIHN0YXRpYyBQYXNzUmVmUHRyPFRleHRUcmFja0xpc3Q+IGNyZWF0ZShIVE1MTWVkaWFFbGVt
ZW50KiBvd25lciwgU2NyaXB0RXhlY3V0aW9uQ29udGV4dCogY29udGV4dCkKICAgICB7CkBAIC01
MCw1NCArNDIsMjcgQEAgcHVibGljOgogICAgIH0KICAgICB+VGV4dFRyYWNrTGlzdCgpOwogCi0g
ICAgdW5zaWduZWQgbGVuZ3RoKCkgY29uc3Q7Ci0gICAgaW50IGdldFRyYWNrSW5kZXgoVGV4dFRy
YWNrKik7CiAgICAgaW50IGdldFRyYWNrSW5kZXhSZWxhdGl2ZVRvUmVuZGVyZWRUcmFja3MoVGV4
dFRyYWNrKik7Ci0gICAgYm9vbCBjb250YWlucyhUZXh0VHJhY2sqKSBjb25zdDsKIAotICAgIFRl
eHRUcmFjayogaXRlbSh1bnNpZ25lZCBpbmRleCk7CisgICAgdmlydHVhbCB1bnNpZ25lZCBsZW5n
dGgoKSBjb25zdCBPVkVSUklERTsKKyAgICB2aXJ0dWFsIGludCBnZXRUcmFja0luZGV4KFRyYWNr
QmFzZSopIE9WRVJSSURFOworICAgIHZpcnR1YWwgYm9vbCBjb250YWlucyhUcmFja0Jhc2UqKSBj
b25zdCBPVkVSUklERTsKKworICAgIFRleHRUcmFjayogaXRlbSh1bnNpZ25lZCBpbmRleCkgY29u
c3Q7CiAgICAgdm9pZCBhcHBlbmQoUGFzc1JlZlB0cjxUZXh0VHJhY2s+KTsKLSAgICB2b2lkIHJl
bW92ZShUZXh0VHJhY2sqKTsKKyAgICB2aXJ0dWFsIHZvaWQgcmVtb3ZlKFRyYWNrQmFzZSopIE9W
RVJSSURFOwogCiAgICAgLy8gRXZlbnRUYXJnZXQKICAgICB2aXJ0dWFsIGNvbnN0IEF0b21pY1N0
cmluZyYgaW50ZXJmYWNlTmFtZSgpIGNvbnN0OwotICAgIHVzaW5nIFJlZkNvdW50ZWQ8VGV4dFRy
YWNrTGlzdD46OnJlZjsKLSAgICB1c2luZyBSZWZDb3VudGVkPFRleHRUcmFja0xpc3Q+OjpkZXJl
ZjsKLSAgICB2aXJ0dWFsIFNjcmlwdEV4ZWN1dGlvbkNvbnRleHQqIHNjcmlwdEV4ZWN1dGlvbkNv
bnRleHQoKSBjb25zdCB7IHJldHVybiBtX2NvbnRleHQ7IH0KLQotICAgIERFRklORV9BVFRSSUJV
VEVfRVZFTlRfTElTVEVORVIoYWRkdHJhY2spOwotCi0gICAgdm9pZCBjbGVhck93bmVyKCkgeyBt
X293bmVyID0gMDsgfQotICAgIE5vZGUqIG93bmVyKCkgY29uc3Q7Ci0KLSAgICBib29sIGlzRmly
aW5nRXZlbnRMaXN0ZW5lcnMoKSB7IHJldHVybiBtX2Rpc3BhdGNoaW5nRXZlbnRzOyB9CiAKIHBy
aXZhdGU6CiAgICAgVGV4dFRyYWNrTGlzdChIVE1MTWVkaWFFbGVtZW50KiwgU2NyaXB0RXhlY3V0
aW9uQ29udGV4dCopOwogCi0gICAgLy8gRXZlbnRUYXJnZXQKLSAgICB2aXJ0dWFsIHZvaWQgcmVm
RXZlbnRUYXJnZXQoKSB7IHJlZigpOyB9Ci0gICAgdmlydHVhbCB2b2lkIGRlcmVmRXZlbnRUYXJn
ZXQoKSB7IGRlcmVmKCk7IH0KLSAgICB2aXJ0dWFsIEV2ZW50VGFyZ2V0RGF0YSogZXZlbnRUYXJn
ZXREYXRhKCkgeyByZXR1cm4gJm1fZXZlbnRUYXJnZXREYXRhOyB9Ci0gICAgdmlydHVhbCBFdmVu
dFRhcmdldERhdGEqIGVuc3VyZUV2ZW50VGFyZ2V0RGF0YSgpIHsgcmV0dXJuICZtX2V2ZW50VGFy
Z2V0RGF0YTsgfQotCi0gICAgdm9pZCBzY2hlZHVsZUFkZFRyYWNrRXZlbnQoUGFzc1JlZlB0cjxU
ZXh0VHJhY2s+KTsKLSAgICB2b2lkIGFzeW5jRXZlbnRUaW1lckZpcmVkKFRpbWVyPFRleHRUcmFj
a0xpc3Q+Kik7Ci0KKyAgICBUZXh0VHJhY2sqIGdldEluYmFuZFRyYWNrKHVuc2lnbmVkKSBjb25z
dDsKICAgICB2b2lkIGludmFsaWRhdGVUcmFja0luZGV4ZXNBZnRlclRyYWNrKFRleHRUcmFjayop
OwogCi0gICAgU2NyaXB0RXhlY3V0aW9uQ29udGV4dCogbV9jb250ZXh0OwotICAgIEhUTUxNZWRp
YUVsZW1lbnQqIG1fb3duZXI7Ci0KLSAgICBWZWN0b3I8UmVmUHRyPEV2ZW50PiA+IG1fcGVuZGlu
Z0V2ZW50czsKLSAgICBUaW1lcjxUZXh0VHJhY2tMaXN0PiBtX3BlbmRpbmdFdmVudFRpbWVyOwot
Ci0gICAgRXZlbnRUYXJnZXREYXRhIG1fZXZlbnRUYXJnZXREYXRhOwogICAgIFZlY3RvcjxSZWZQ
dHI8VGV4dFRyYWNrPiA+IG1fYWRkVHJhY2tUcmFja3M7CiAgICAgVmVjdG9yPFJlZlB0cjxUZXh0
VHJhY2s+ID4gbV9lbGVtZW50VHJhY2tzOwotICAgIFZlY3RvcjxSZWZQdHI8VGV4dFRyYWNrPiA+
IG1faW5iYW5kVHJhY2tzOwotCi0gICAgaW50IG1fZGlzcGF0Y2hpbmdFdmVudHM7CiB9OwogCiB9
IC8vIG5hbWVzcGFjZSBXZWJDb3JlCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9odG1sL3Ry
YWNrL1RyYWNrQmFzZS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL3RyYWNrL1RyYWNrQmFzZS5j
cHAKaW5kZXggNmEyYzM1ODIzZTYxOTYyYTM3YzlmOGY0Y2VmZDk4OWRkYWI1MGRmZS4uZGU0ZTM4
NTc0Y2Q4MTgwMmE2YWUwMTAxYTMwMGM2YjI5MGI5ODJhYyAxMDA2NDQKLS0tIGEvU291cmNlL1dl
YkNvcmUvaHRtbC90cmFjay9UcmFja0Jhc2UuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2h0bWwv
dHJhY2svVHJhY2tCYXNlLmNwcApAQCAtMzAsOCArMzAsMTAgQEAKIAogbmFtZXNwYWNlIFdlYkNv
cmUgewogCi1UcmFja0Jhc2U6OlRyYWNrQmFzZShTY3JpcHRFeGVjdXRpb25Db250ZXh0KiBjb250
ZXh0LCBUeXBlIHR5cGUpCi0gICAgOiBtX3NjcmlwdEV4ZWN1dGlvbkNvbnRleHQoY29udGV4dCkK
K1RyYWNrQmFzZTo6VHJhY2tCYXNlKFR5cGUgdHlwZSwgY29uc3QgQXRvbWljU3RyaW5nJiBsYWJl
bCwgY29uc3QgQXRvbWljU3RyaW5nJiBsYW5ndWFnZSkKKyAgICA6IG1fbWVkaWFFbGVtZW50KDAp
CisgICAgLCBtX2xhYmVsKGxhYmVsKQorICAgICwgbV9sYW5ndWFnZShsYW5ndWFnZSkKIHsKICAg
ICBBU1NFUlQodHlwZSAhPSBCYXNlVHJhY2spOwogICAgIG1fdHlwZSA9IHR5cGU7CkBAIC00MSwy
NCArNDMsMTQgQEAgVHJhY2tCYXNlOjp+VHJhY2tCYXNlKCkKIHsKIH0KIAotY29uc3QgQXRvbWlj
U3RyaW5nJiBUcmFja0Jhc2U6OmludGVyZmFjZU5hbWUoKSBjb25zdAordm9pZCBUcmFja0Jhc2U6
OnNldEtpbmQoY29uc3QgQXRvbWljU3RyaW5nJiBraW5kKQogewotICAgIHJldHVybiBldmVudE5h
bWVzKCkuaW50ZXJmYWNlRm9yVGV4dFRyYWNrOwotfQotCi1TY3JpcHRFeGVjdXRpb25Db250ZXh0
KiBUcmFja0Jhc2U6OnNjcmlwdEV4ZWN1dGlvbkNvbnRleHQoKSBjb25zdAotewotICAgIHJldHVy
biBtX3NjcmlwdEV4ZWN1dGlvbkNvbnRleHQ7Ci19CisgICAgU3RyaW5nIG9sZEtpbmQgPSBtX2tp
bmQ7CiAKLUV2ZW50VGFyZ2V0RGF0YSogVHJhY2tCYXNlOjpldmVudFRhcmdldERhdGEoKQotewot
ICAgIHJldHVybiAmbV9ldmVudFRhcmdldERhdGE7Ci19Ci0KLUV2ZW50VGFyZ2V0RGF0YSogVHJh
Y2tCYXNlOjplbnN1cmVFdmVudFRhcmdldERhdGEoKQotewotICAgIHJldHVybiAmbV9ldmVudFRh
cmdldERhdGE7CisgICAgaWYgKGlzVmFsaWRLaW5kKGtpbmQpKQorICAgICAgICBtX2tpbmQgPSBr
aW5kOworICAgIGVsc2UKKyAgICAgICAgbV9raW5kID0gZGVmYXVsdEtpbmRLZXl3b3JkKCk7CiB9
CiAKIH0gLy8gbmFtZXNwYWNlIFdlYkNvcmUKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2h0
bWwvdHJhY2svVHJhY2tCYXNlLmggYi9Tb3VyY2UvV2ViQ29yZS9odG1sL3RyYWNrL1RyYWNrQmFz
ZS5oCmluZGV4IGMwMDY2MGYwNTNhZDY0OTQxNjU4ZjIwZDc1MDMwY2FiYzkzMjc5ODkuLjU0NjI4
OThjMGUwNTdlMjI3MGM5MTQxYTZhZDUyYjQzMmRhNzI0OGMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJDb3JlL2h0bWwvdHJhY2svVHJhY2tCYXNlLmgKKysrIGIvU291cmNlL1dlYkNvcmUvaHRtbC90
cmFjay9UcmFja0Jhc2UuaApAQCAtMzMsMzUgKzMzLDQyIEBACiAKIG5hbWVzcGFjZSBXZWJDb3Jl
IHsKIAotY2xhc3MgU2NyaXB0RXhlY3V0aW9uQ29udGV4dDsKK2NsYXNzIEhUTUxNZWRpYUVsZW1l
bnQ7CiAKLWNsYXNzIFRyYWNrQmFzZSA6IHB1YmxpYyBSZWZDb3VudGVkPFRyYWNrQmFzZT4sIHB1
YmxpYyBFdmVudFRhcmdldCB7CitjbGFzcyBUcmFja0Jhc2UgOiBwdWJsaWMgUmVmQ291bnRlZDxU
cmFja0Jhc2U+IHsKIHB1YmxpYzoKICAgICB2aXJ0dWFsIH5UcmFja0Jhc2UoKTsKIAogICAgIGVu
dW0gVHlwZSB7IEJhc2VUcmFjaywgVGV4dFRyYWNrLCBBdWRpb1RyYWNrLCBWaWRlb1RyYWNrIH07
CiAgICAgVHlwZSB0eXBlKCkgY29uc3QgeyByZXR1cm4gbV90eXBlOyB9CiAKLSAgICB2aXJ0dWFs
IGNvbnN0IEF0b21pY1N0cmluZyYgaW50ZXJmYWNlTmFtZSgpIGNvbnN0OwotICAgIHZpcnR1YWwg
U2NyaXB0RXhlY3V0aW9uQ29udGV4dCogc2NyaXB0RXhlY3V0aW9uQ29udGV4dCgpIGNvbnN0Owot
ICAgIAotICAgIHVzaW5nIFJlZkNvdW50ZWQ8VHJhY2tCYXNlPjo6cmVmOwotICAgIHVzaW5nIFJl
ZkNvdW50ZWQ8VHJhY2tCYXNlPjo6ZGVyZWY7CisgICAgdm9pZCBzZXRNZWRpYUVsZW1lbnQoSFRN
TE1lZGlhRWxlbWVudCogZWxlbWVudCkgeyBtX21lZGlhRWxlbWVudCA9IGVsZW1lbnQ7IH0KKyAg
ICBIVE1MTWVkaWFFbGVtZW50KiBtZWRpYUVsZW1lbnQoKSB7IHJldHVybiBtX21lZGlhRWxlbWVu
dDsgfQorCisgICAgQXRvbWljU3RyaW5nIGtpbmQoKSBjb25zdCB7IHJldHVybiBtX2tpbmQ7IH0K
KyAgICB2aXJ0dWFsIHZvaWQgc2V0S2luZChjb25zdCBBdG9taWNTdHJpbmcmKTsKKworICAgIEF0
b21pY1N0cmluZyBsYWJlbCgpIGNvbnN0IHsgcmV0dXJuIG1fbGFiZWw7IH0KKyAgICB2b2lkIHNl
dExhYmVsKGNvbnN0IEF0b21pY1N0cmluZyYgbGFiZWwpIHsgbV9sYWJlbCA9IGxhYmVsOyB9CisK
KyAgICBBdG9taWNTdHJpbmcgbGFuZ3VhZ2UoKSBjb25zdCB7IHJldHVybiBtX2xhbmd1YWdlOyB9
CisgICAgdm9pZCBzZXRMYW5ndWFnZShjb25zdCBBdG9taWNTdHJpbmcmIGxhbmd1YWdlKSB7IG1f
bGFuZ3VhZ2UgPSBsYW5ndWFnZTsgfQorCisgICAgdmlydHVhbCB2b2lkIGNsZWFyQ2xpZW50KCkg
PSAwOwogCiBwcm90ZWN0ZWQ6Ci0gICAgVHJhY2tCYXNlKFNjcmlwdEV4ZWN1dGlvbkNvbnRleHQq
LCBUeXBlKTsKLSAgICAKLSAgICB2aXJ0dWFsIEV2ZW50VGFyZ2V0RGF0YSogZXZlbnRUYXJnZXRE
YXRhKCk7Ci0gICAgdmlydHVhbCBFdmVudFRhcmdldERhdGEqIGVuc3VyZUV2ZW50VGFyZ2V0RGF0
YSgpOworICAgIFRyYWNrQmFzZShUeXBlLCBjb25zdCBBdG9taWNTdHJpbmcmIGxhYmVsLCBjb25z
dCBBdG9taWNTdHJpbmcmIGxhbmd1YWdlKTsKKworICAgIHZpcnR1YWwgYm9vbCBpc1ZhbGlkS2lu
ZChjb25zdCBBdG9taWNTdHJpbmcmKSBjb25zdCA9IDA7CisgICAgdmlydHVhbCBjb25zdCBBdG9t
aWNTdHJpbmcmIGRlZmF1bHRLaW5kS2V5d29yZCgpIGNvbnN0ID0gMDsKKworICAgIEhUTUxNZWRp
YUVsZW1lbnQqIG1fbWVkaWFFbGVtZW50OwogCiBwcml2YXRlOgogICAgIFR5cGUgbV90eXBlOwot
ICAgIAotICAgIHZpcnR1YWwgdm9pZCByZWZFdmVudFRhcmdldCgpIHsgcmVmKCk7IH0KLSAgICB2
aXJ0dWFsIHZvaWQgZGVyZWZFdmVudFRhcmdldCgpIHsgZGVyZWYoKTsgfQotICAgIAotICAgIFNj
cmlwdEV4ZWN1dGlvbkNvbnRleHQqIG1fc2NyaXB0RXhlY3V0aW9uQ29udGV4dDsKLSAgICBFdmVu
dFRhcmdldERhdGEgbV9ldmVudFRhcmdldERhdGE7CisgICAgQXRvbWljU3RyaW5nIG1fa2luZDsK
KyAgICBBdG9taWNTdHJpbmcgbV9sYWJlbDsKKyAgICBBdG9taWNTdHJpbmcgbV9sYW5ndWFnZTsK
IH07CiAKIH0gLy8gbmFtZXNwYWNlIFdlYkNvcmUKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3Jl
L2h0bWwvdHJhY2svVHJhY2tMaXN0QmFzZS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL3RyYWNr
L1RyYWNrTGlzdEJhc2UuY3BwCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjQ1MDc5NTdmYmViNDc3NjAwODVkM2JmZTUz
ZWE0NDE0NWE1Mjk5ZWQKLS0tIC9kZXYvbnVsbAorKysgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL3Ry
YWNrL1RyYWNrTGlzdEJhc2UuY3BwCkBAIC0wLDAgKzEsMTgzIEBACisvKgorICogQ29weXJpZ2h0
IChDKSAyMDExLCAyMDEyIEFwcGxlIEluYy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKgorICog
UmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBv
ciB3aXRob3V0CisgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0
aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKKyAqIGFyZSBtZXQ6CisgKiAxLiBSZWRpc3RyaWJ1dGlv
bnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAg
bm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFp
bWVyLgorICogMi4gUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNl
IHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlv
bnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKKyAqICAgIGRvY3VtZW50YXRp
b24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24u
CisgKgorICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBBUFBMRSBDT01QVVRFUiwgSU5D
LiBgYEFTIElTJycgQU5EIEFOWQorICogRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElO
Q0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBUSEUKKyAqIElNUExJRUQgV0FSUkFOVElFUyBP
RiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUgorICogUFVSUE9T
RSBBUkUgRElTQ0xBSU1FRC4gIElOIE5PIEVWRU5UIFNIQUxMIEFQUExFIENPTVBVVEVSLCBJTkMu
IE9SCisgKiBDT05UUklCVVRPUlMgQkUgTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwg
SU5DSURFTlRBTCwgU1BFQ0lBTCwKKyAqIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTCBEQU1B
R0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywKKyAqIFBST0NVUkVNRU5UIE9GIFNV
QlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLCBEQVRBLCBPUgorICogUFJP
RklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5Z
IFRIRU9SWQorICogT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElB
QklMSVRZLCBPUiBUT1JUCisgKiAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBB
UklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UKKyAqIE9GIFRISVMgU09GVFdBUkUsIEVW
RU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuIAorICovCisK
KyNpbmNsdWRlICJjb25maWcuaCIKKworI2lmIEVOQUJMRShWSURFT19UUkFDSykKKworI2luY2x1
ZGUgIlRyYWNrTGlzdEJhc2UuaCIKKworI2luY2x1ZGUgIkV2ZW50TmFtZXMuaCIKKyNpbmNsdWRl
ICJIVE1MTWVkaWFFbGVtZW50LmgiCisjaW5jbHVkZSAiU2NyaXB0RXhlY3V0aW9uQ29udGV4dC5o
IgorI2luY2x1ZGUgIlRyYWNrQmFzZS5oIgorI2luY2x1ZGUgIlRyYWNrRXZlbnQuaCIKKwordXNp
bmcgbmFtZXNwYWNlIFdlYkNvcmU7CisKK1RyYWNrTGlzdEJhc2U6OlRyYWNrTGlzdEJhc2UoSFRN
TE1lZGlhRWxlbWVudCogb3duZXIsIFNjcmlwdEV4ZWN1dGlvbkNvbnRleHQqIGNvbnRleHQpCisg
ICAgOiBtX2NvbnRleHQoY29udGV4dCkKKyAgICAsIG1fb3duZXIob3duZXIpCisgICAgLCBtX3Bl
bmRpbmdFdmVudFRpbWVyKHRoaXMsICZUcmFja0xpc3RCYXNlOjphc3luY0V2ZW50VGltZXJGaXJl
ZCkKKyAgICAsIG1fZGlzcGF0Y2hpbmdFdmVudHMoMCkKK3sKKyAgICBBU1NFUlQoY29udGV4dC0+
aXNEb2N1bWVudCgpKTsKK30KKworVHJhY2tMaXN0QmFzZTo6flRyYWNrTGlzdEJhc2UoKQorewor
fQorCit1bnNpZ25lZCBUcmFja0xpc3RCYXNlOjpsZW5ndGgoKSBjb25zdAoreworICAgIHJldHVy
biBtX2luYmFuZFRyYWNrcy5zaXplKCk7Cit9CisKK2ludCBUcmFja0xpc3RCYXNlOjpnZXRUcmFj
a0luZGV4KFRyYWNrQmFzZSAqdHJhY2spCit7CisgICAgcmV0dXJuIG1faW5iYW5kVHJhY2tzLmZp
bmQodHJhY2spOworfQorCit2b2lkIFRyYWNrTGlzdEJhc2U6OnJlbW92ZShUcmFja0Jhc2UqIHRy
YWNrKQoreworICAgIHNpemVfdCBpbmRleCA9IG1faW5iYW5kVHJhY2tzLmZpbmQodHJhY2spOwor
ICAgIEFTU0VSVChpbmRleCAhPSBub3RGb3VuZCk7CisKKyAgICBBU1NFUlQodHJhY2stPm1lZGlh
RWxlbWVudCgpID09IG1fb3duZXIpOworICAgIHRyYWNrLT5zZXRNZWRpYUVsZW1lbnQoMCk7CisK
KyAgICBSZWZQdHI8VHJhY2tCYXNlPiB0cmFja1JlZiA9IG1faW5iYW5kVHJhY2tzW2luZGV4XTsK
KworICAgIG1faW5iYW5kVHJhY2tzLnJlbW92ZShpbmRleCk7CisKKyAgICBzY2hlZHVsZVJlbW92
ZVRyYWNrRXZlbnQodHJhY2tSZWYucmVsZWFzZSgpKTsKK30KKworYm9vbCBUcmFja0xpc3RCYXNl
Ojpjb250YWlucyhUcmFja0Jhc2UqIHRyYWNrKSBjb25zdAoreworICAgIHJldHVybiBtX2luYmFu
ZFRyYWNrcy5maW5kKHRyYWNrKSAhPSBub3RGb3VuZDsKK30KKwordm9pZCBUcmFja0xpc3RCYXNl
OjpzY2hlZHVsZUFkZFRyYWNrRXZlbnQoUGFzc1JlZlB0cjxUcmFja0Jhc2U+IHRyYWNrKQorewor
ICAgIC8vIDQuOC4xMC41IExvYWRpbmcgdGhlIG1lZGlhIHJlc291cmNlCisgICAgLy8gLi4uCisg
ICAgLy8gRmlyZSBhIHRydXN0ZWQgZXZlbnQgd2l0aCB0aGUgbmFtZSBhZGR0cmFjaywgdGhhdCBk
b2VzIG5vdCBidWJibGUgYW5kIGlzCisgICAgLy8gbm90IGNhbmNlbGFibGUsIGFuZCB0aGF0IHVz
ZXMgdGhlIFRyYWNrRXZlbnQgaW50ZXJmYWNlLCB3aXRoIHRoZSB0cmFjaworICAgIC8vIGF0dHJp
YnV0ZSBpbml0aWFsaXplZCB0byB0aGUgbmV3IEF1ZGlvVHJhY2sgb2JqZWN0LCBhdCB0aGlzCisg
ICAgLy8gQXVkaW9UcmFja0xpc3Qgb2JqZWN0LgorICAgIC8vIC4uLgorICAgIC8vIEZpcmUgYSB0
cnVzdGVkIGV2ZW50IHdpdGggdGhlIG5hbWUgYWRkdHJhY2ssIHRoYXQgZG9lcyBub3QgYnViYmxl
IGFuZCBpcworICAgIC8vIG5vdCBjYW5jZWxhYmxlLCBhbmQgdGhhdCB1c2VzIHRoZSBUcmFja0V2
ZW50IGludGVyZmFjZSwgd2l0aCB0aGUgdHJhY2sKKyAgICAvLyBhdHRyaWJ1dGUgaW5pdGlhbGl6
ZWQgdG8gdGhlIG5ldyBWaWRlb1RyYWNrIG9iamVjdCwgYXQgdGhpcworICAgIC8vIFZpZGVvVHJh
Y2tMaXN0IG9iamVjdC4KKworICAgIC8vIDQuOC4xMC4xMi4zIFNvdXJjaW5nIG91dC1vZi1iYW5k
IHRleHQgdHJhY2tzCisgICAgLy8gNC44LjEwLjEyLjQgVGV4dCB0cmFjayBBUEkKKyAgICAvLyAu
Li4gdGhlbiBxdWV1ZSBhIHRhc2sgdG8gZmlyZSBhbiBldmVudCB3aXRoIHRoZSBuYW1lIGFkZHRy
YWNrLCB0aGF0IGRvZXMgbm90CisgICAgLy8gYnViYmxlIGFuZCBpcyBub3QgY2FuY2VsYWJsZSwg
YW5kIHRoYXQgdXNlcyB0aGUgVHJhY2tFdmVudCBpbnRlcmZhY2UsIHdpdGgKKyAgICAvLyB0aGUg
dHJhY2sgYXR0cmlidXRlIGluaXRpYWxpemVkIHRvIHRoZSB0ZXh0IHRyYWNrJ3MgVGV4dFRyYWNr
IG9iamVjdCwgYXQKKyAgICAvLyB0aGUgbWVkaWEgZWxlbWVudCdzIHRleHRUcmFja3MgYXR0cmli
dXRlJ3MgVGV4dFRyYWNrTGlzdCBvYmplY3QuIAorCisgICAgUmVmUHRyPFRyYWNrQmFzZT4gdHJh
Y2tSZWYgPSB0cmFjazsKKyAgICBUcmFja0V2ZW50SW5pdCBpbml0aWFsaXplcjsKKyAgICBpbml0
aWFsaXplci50cmFjayA9IHRyYWNrUmVmOworICAgIGluaXRpYWxpemVyLmJ1YmJsZXMgPSBmYWxz
ZTsKKyAgICBpbml0aWFsaXplci5jYW5jZWxhYmxlID0gZmFsc2U7CisKKyAgICBtX3BlbmRpbmdF
dmVudHMuYXBwZW5kKFRyYWNrRXZlbnQ6OmNyZWF0ZShldmVudE5hbWVzKCkuYWRkdHJhY2tFdmVu
dCwgaW5pdGlhbGl6ZXIpKTsKKyAgICBpZiAoIW1fcGVuZGluZ0V2ZW50VGltZXIuaXNBY3RpdmUo
KSkKKyAgICAgICAgbV9wZW5kaW5nRXZlbnRUaW1lci5zdGFydE9uZVNob3QoMCk7Cit9CisKK3Zv
aWQgVHJhY2tMaXN0QmFzZTo6c2NoZWR1bGVSZW1vdmVUcmFja0V2ZW50KFBhc3NSZWZQdHI8VHJh
Y2tCYXNlPiB0cmFjaykKK3sKKyAgICAvLyA0LjguMTAuNiBPZmZzZXRzIGludG8gdGhlIG1lZGlh
IHJlc291cmNlCisgICAgLy8gSWYgYXQgYW55IHRpbWUgdGhlIHVzZXIgYWdlbnQgbGVhcm5zIHRo
YXQgYW4gYXVkaW8gb3IgdmlkZW8gdHJhY2sgaGFzCisgICAgLy8gZW5kZWQgYW5kIGFsbCBtZWRp
YSBkYXRhIHJlbGF0aW5nIHRvIHRoYXQgdHJhY2sgY29ycmVzcG9uZHMgdG8gcGFydHMgb2YKKyAg
ICAvLyB0aGUgbWVkaWEgdGltZWxpbmUgdGhhdCBhcmUgYmVmb3JlIHRoZSBlYXJsaWVzdCBwb3Nz
aWJsZSBwb3NpdGlvbiwgdGhlCisgICAgLy8gdXNlciBhZ2VudCBtYXkgcXVldWUgYSB0YXNrIHRv
IHJlbW92ZSB0aGUgdHJhY2sgZnJvbSB0aGUgYXVkaW9UcmFja3MKKyAgICAvLyBhdHRyaWJ1dGUn
cyBBdWRpb1RyYWNrTGlzdCBvYmplY3Qgb3IgdGhlIHZpZGVvVHJhY2tzIGF0dHJpYnV0ZSdzCisg
ICAgLy8gVmlkZW9UcmFja0xpc3Qgb2JqZWN0IGFzIGFwcHJvcHJpYXRlIGFuZCB0aGVuIGZpcmUg
YSB0cnVzdGVkIGV2ZW50CisgICAgLy8gd2l0aCB0aGUgbmFtZSByZW1vdmV0cmFjaywgdGhhdCBk
b2VzIG5vdCBidWJibGUgYW5kIGlzIG5vdCBjYW5jZWxhYmxlLAorICAgIC8vIGFuZCB0aGF0IHVz
ZXMgdGhlIFRyYWNrRXZlbnQgaW50ZXJmYWNlLCB3aXRoIHRoZSB0cmFjayBhdHRyaWJ1dGUKKyAg
ICAvLyBpbml0aWFsaXplZCB0byB0aGUgQXVkaW9UcmFjayBvciBWaWRlb1RyYWNrIG9iamVjdCBy
ZXByZXNlbnRpbmcgdGhlCisgICAgLy8gdHJhY2ssIGF0IHRoZSBtZWRpYSBlbGVtZW50J3MgYWZv
cmVtZW50aW9uZWQgQXVkaW9UcmFja0xpc3Qgb3IKKyAgICAvLyBWaWRlb1RyYWNrTGlzdCBvYmpl
Y3QuCisKKyAgICAvLyA0LjguMTAuMTIuMyBTb3VyY2luZyBvdXQtb2YtYmFuZCB0ZXh0IHRyYWNr
cworICAgIC8vIFdoZW4gYSB0cmFjayBlbGVtZW50J3MgcGFyZW50IGVsZW1lbnQgY2hhbmdlcyBh
bmQgdGhlIG9sZCBwYXJlbnQgd2FzIGEKKyAgICAvLyBtZWRpYSBlbGVtZW50LCB0aGVuIHRoZSB1
c2VyIGFnZW50IG11c3QgcmVtb3ZlIHRoZSB0cmFjayBlbGVtZW50J3MKKyAgICAvLyBjb3JyZXNw
b25kaW5nIHRleHQgdHJhY2sgZnJvbSB0aGUgbWVkaWEgZWxlbWVudCdzIGxpc3Qgb2YgdGV4dCB0
cmFja3MsCisgICAgLy8gYW5kIHRoZW4gcXVldWUgYSB0YXNrIHRvIGZpcmUgYSB0cnVzdGVkIGV2
ZW50IHdpdGggdGhlIG5hbWUgcmVtb3ZldHJhY2ssCisgICAgLy8gdGhhdCBkb2VzIG5vdCBidWJi
bGUgYW5kIGlzIG5vdCBjYW5jZWxhYmxlLCBhbmQgdGhhdCB1c2VzIHRoZSBUcmFja0V2ZW50Cisg
ICAgLy8gaW50ZXJmYWNlLCB3aXRoIHRoZSB0cmFjayBhdHRyaWJ1dGUgaW5pdGlhbGl6ZWQgdG8g
dGhlIHRleHQgdHJhY2sncworICAgIC8vIFRleHRUcmFjayBvYmplY3QsIGF0IHRoZSBtZWRpYSBl
bGVtZW50J3MgdGV4dFRyYWNrcyBhdHRyaWJ1dGUncworICAgIC8vIFRleHRUcmFja0xpc3Qgb2Jq
ZWN0LgorCisgICAgUmVmUHRyPFRyYWNrQmFzZT4gdHJhY2tSZWYgPSB0cmFjazsKKyAgICBUcmFj
a0V2ZW50SW5pdCBpbml0aWFsaXplcjsKKyAgICBpbml0aWFsaXplci50cmFjayA9IHRyYWNrUmVm
OworICAgIGluaXRpYWxpemVyLmJ1YmJsZXMgPSBmYWxzZTsKKyAgICBpbml0aWFsaXplci5jYW5j
ZWxhYmxlID0gZmFsc2U7CisKKyAgICBtX3BlbmRpbmdFdmVudHMuYXBwZW5kKFRyYWNrRXZlbnQ6
OmNyZWF0ZShldmVudE5hbWVzKCkucmVtb3ZldHJhY2tFdmVudCwgaW5pdGlhbGl6ZXIpKTsKKyAg
ICBpZiAoIW1fcGVuZGluZ0V2ZW50VGltZXIuaXNBY3RpdmUoKSkKKyAgICAgICAgbV9wZW5kaW5n
RXZlbnRUaW1lci5zdGFydE9uZVNob3QoMCk7Cit9CisKK3ZvaWQgVHJhY2tMaXN0QmFzZTo6c2No
ZWR1bGVDaGFuZ2VFdmVudCgpCit7CisgICAgLy8gNC44LjEwLjYgT2Zmc2V0cyBpbnRvIHRoZSBt
ZWRpYSByZXNvdXJjZQorICAgIC8vIFdoZW5ldmVyIGFuIGF1ZGlvIHRyYWNrIGluIGFuIEF1ZGlv
VHJhY2tMaXN0IGlzIGVuYWJsZWQgb3IgZGlzYWJsZWQsIHRoZQorICAgIC8vIHVzZXIgYWdlbnQg
bXVzdCBxdWV1ZSBhIHRhc2sgdG8gZmlyZSBhIHNpbXBsZSBldmVudCBuYW1lZCBjaGFuZ2UgYXQg
dGhlCisgICAgLy8gQXVkaW9UcmFja0xpc3Qgb2JqZWN0LgorICAgIC8vIC4uLgorICAgIC8vIFdo
ZW5ldmVyIGEgdHJhY2sgaW4gYSBWaWRlb1RyYWNrTGlzdCB0aGF0IHdhcyBwcmV2aW91c2x5IG5v
dCBzZWxlY3RlZCBpcworICAgIC8vIHNlbGVjdGVkLCB0aGUgdXNlciBhZ2VudCBtdXN0IHF1ZXVl
IGEgdGFzayB0byBmaXJlIGEgc2ltcGxlIGV2ZW50IG5hbWVkCisgICAgLy8gY2hhbmdlIGF0IHRo
ZSBWaWRlb1RyYWNrTGlzdCBvYmplY3QuCisKKyAgICBFdmVudEluaXQgaW5pdGlhbGl6ZXI7Cisg
ICAgaW5pdGlhbGl6ZXIuYnViYmxlcyA9IGZhbHNlOworICAgIGluaXRpYWxpemVyLmNhbmNlbGFi
bGUgPSBmYWxzZTsKKworICAgIG1fcGVuZGluZ0V2ZW50cy5hcHBlbmQoRXZlbnQ6OmNyZWF0ZShl
dmVudE5hbWVzKCkuY2hhbmdlRXZlbnQsIGluaXRpYWxpemVyKSk7CisgICAgaWYgKCFtX3BlbmRp
bmdFdmVudFRpbWVyLmlzQWN0aXZlKCkpCisgICAgICAgIG1fcGVuZGluZ0V2ZW50VGltZXIuc3Rh
cnRPbmVTaG90KDApOworfQorCit2b2lkIFRyYWNrTGlzdEJhc2U6OmFzeW5jRXZlbnRUaW1lckZp
cmVkKFRpbWVyPFRyYWNrTGlzdEJhc2U+KikKK3sKKyAgICBWZWN0b3I8UmVmUHRyPEV2ZW50PiA+
IHBlbmRpbmdFdmVudHM7CisKKyAgICArK21fZGlzcGF0Y2hpbmdFdmVudHM7CisgICAgbV9wZW5k
aW5nRXZlbnRzLnN3YXAocGVuZGluZ0V2ZW50cyk7CisgICAgc2l6ZV90IGNvdW50ID0gcGVuZGlu
Z0V2ZW50cy5zaXplKCk7CisgICAgZm9yIChzaXplX3QgaW5kZXggPSAwOyBpbmRleCA8IGNvdW50
OyArK2luZGV4KQorICAgICAgICBkaXNwYXRjaEV2ZW50KHBlbmRpbmdFdmVudHNbaW5kZXhdLnJl
bGVhc2UoKSwgSUdOT1JFX0VYQ0VQVElPTik7CisgICAgLS1tX2Rpc3BhdGNoaW5nRXZlbnRzOwor
fQorCisjZW5kaWYKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvdHJhY2svVHJhY2tM
aXN0QmFzZS5oIGIvU291cmNlL1dlYkNvcmUvaHRtbC90cmFjay9UcmFja0xpc3RCYXNlLmgKbmV3
IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMC4uNDVmYTU2MmViNzRhZTQ1OTY3NjJhYjM1NTczM2NkZTQ2NTNkNWNiMgotLS0gL2Rl
di9udWxsCisrKyBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvdHJhY2svVHJhY2tMaXN0QmFzZS5oCkBA
IC0wLDAgKzEsMTAxIEBACisvKgorICogQ29weXJpZ2h0IChDKSAyMDExLCAyMDEyIEFwcGxlIElu
Yy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKgorICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBp
biBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CisgKiBtb2RpZmljYXRp
b24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMK
KyAqIGFyZSBtZXQ6CisgKiAxLiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCBy
ZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29u
ZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgorICogMi4gUmVkaXN0cmlidXRp
b25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAq
ICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlz
Y2xhaW1lciBpbiB0aGUKKyAqICAgIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFs
cyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCisgKgorICogVEhJUyBTT0ZUV0FSRSBJ
UyBQUk9WSURFRCBCWSBBUFBMRSBDT01QVVRFUiwgSU5DLiBgYEFTIElTJycgQU5EIEFOWQorICog
RVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVE
IFRPLCBUSEUKKyAqIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJ
VE5FU1MgRk9SIEEgUEFSVElDVUxBUgorICogUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gIElOIE5P
IEVWRU5UIFNIQUxMIEFQUExFIENPTVBVVEVSLCBJTkMuIE9SCisgKiBDT05UUklCVVRPUlMgQkUg
TElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwKKyAq
IEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1Qg
TElNSVRFRCBUTywKKyAqIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklD
RVM7IExPU1MgT0YgVVNFLCBEQVRBLCBPUgorICogUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJS
VVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZIFRIRU9SWQorICogT0YgTElBQklMSVRZ
LCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUCisgKiAoSU5D
TFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9G
IFRIRSBVU0UKKyAqIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9T
U0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuIAorICovCisKKyNpZm5kZWYgVHJhY2tMaXN0QmFzZV9o
CisjZGVmaW5lIFRyYWNrTGlzdEJhc2VfaAorCisjaWYgRU5BQkxFKFZJREVPX1RSQUNLKQorCisj
aW5jbHVkZSAiRXZlbnRMaXN0ZW5lci5oIgorI2luY2x1ZGUgIkV2ZW50VGFyZ2V0LmgiCisjaW5j
bHVkZSAiVGltZXIuaCIKKyNpbmNsdWRlIDx3dGYvUGFzc1JlZlB0ci5oPgorI2luY2x1ZGUgPHd0
Zi9SZWZDb3VudGVkLmg+CisjaW5jbHVkZSA8d3RmL1ZlY3Rvci5oPgorCituYW1lc3BhY2UgV2Vi
Q29yZSB7CisKK2NsYXNzIEhUTUxNZWRpYUVsZW1lbnQ7CitjbGFzcyBUcmFja0Jhc2U7CisKK2Ns
YXNzIFRyYWNrTGlzdEJhc2UgOiBwdWJsaWMgUmVmQ291bnRlZDxUcmFja0xpc3RCYXNlPiwgcHVi
bGljIEV2ZW50VGFyZ2V0IHsKK3B1YmxpYzoKKyAgICB+VHJhY2tMaXN0QmFzZSgpOworCisgICAg
dmlydHVhbCB1bnNpZ25lZCBsZW5ndGgoKSBjb25zdDsKKyAgICB2aXJ0dWFsIGludCBnZXRUcmFj
a0luZGV4KFRyYWNrQmFzZSopOworICAgIHZpcnR1YWwgYm9vbCBjb250YWlucyhUcmFja0Jhc2Uq
KSBjb25zdDsKKyAgICB2aXJ0dWFsIHZvaWQgcmVtb3ZlKFRyYWNrQmFzZSopOworCisgICAgLy8g
RXZlbnRUYXJnZXQKKyAgICB2aXJ0dWFsIGNvbnN0IEF0b21pY1N0cmluZyYgaW50ZXJmYWNlTmFt
ZSgpIGNvbnN0ID0gMDsKKyAgICB1c2luZyBSZWZDb3VudGVkPFRyYWNrTGlzdEJhc2U+OjpyZWY7
CisgICAgdXNpbmcgUmVmQ291bnRlZDxUcmFja0xpc3RCYXNlPjo6ZGVyZWY7CisgICAgdmlydHVh
bCBTY3JpcHRFeGVjdXRpb25Db250ZXh0KiBzY3JpcHRFeGVjdXRpb25Db250ZXh0KCkgY29uc3Qg
eyByZXR1cm4gbV9jb250ZXh0OyB9CisKKyAgICBERUZJTkVfQVRUUklCVVRFX0VWRU5UX0xJU1RF
TkVSKGFkZHRyYWNrKTsKKyAgICBERUZJTkVfQVRUUklCVVRFX0VWRU5UX0xJU1RFTkVSKGNoYW5n
ZSk7CisgICAgREVGSU5FX0FUVFJJQlVURV9FVkVOVF9MSVNURU5FUihyZW1vdmV0cmFjayk7CisK
KyAgICB2b2lkIGNsZWFyT3duZXIoKSB7IG1fb3duZXIgPSAwOyB9CisgICAgSFRNTE1lZGlhRWxl
bWVudCogb3duZXIoKSBjb25zdCB7IHJldHVybiBtX293bmVyOyB9CisKKyAgICBib29sIGlzRmly
aW5nRXZlbnRMaXN0ZW5lcnMoKSB7IHJldHVybiBtX2Rpc3BhdGNoaW5nRXZlbnRzOyB9CisKKyAg
ICAvLyBOZWVkcyB0byBiZSBwdWJsaWMgc28gdHJhY2tzIGNhbiBjYWxsIGl0CisgICAgdm9pZCBz
Y2hlZHVsZUNoYW5nZUV2ZW50KCk7CisKK3Byb3RlY3RlZDoKKyAgICBUcmFja0xpc3RCYXNlKEhU
TUxNZWRpYUVsZW1lbnQqLCBTY3JpcHRFeGVjdXRpb25Db250ZXh0Kik7CisKKyAgICB2b2lkIHNj
aGVkdWxlQWRkVHJhY2tFdmVudChQYXNzUmVmUHRyPFRyYWNrQmFzZT4pOworICAgIHZvaWQgc2No
ZWR1bGVSZW1vdmVUcmFja0V2ZW50KFBhc3NSZWZQdHI8VHJhY2tCYXNlPik7CisKKyAgICBWZWN0
b3I8UmVmUHRyPFRyYWNrQmFzZT4gPiBtX2luYmFuZFRyYWNrczsKKworcHJpdmF0ZToKKyAgICAv
LyBFdmVudFRhcmdldAorICAgIHZpcnR1YWwgdm9pZCByZWZFdmVudFRhcmdldCgpIHsgcmVmKCk7
IH0KKyAgICB2aXJ0dWFsIHZvaWQgZGVyZWZFdmVudFRhcmdldCgpIHsgZGVyZWYoKTsgfQorICAg
IHZpcnR1YWwgRXZlbnRUYXJnZXREYXRhKiBldmVudFRhcmdldERhdGEoKSB7IHJldHVybiAmbV9l
dmVudFRhcmdldERhdGE7IH0KKyAgICB2aXJ0dWFsIEV2ZW50VGFyZ2V0RGF0YSogZW5zdXJlRXZl
bnRUYXJnZXREYXRhKCkgeyByZXR1cm4gJm1fZXZlbnRUYXJnZXREYXRhOyB9CisKKyAgICB2b2lk
IGFzeW5jRXZlbnRUaW1lckZpcmVkKFRpbWVyPFRyYWNrTGlzdEJhc2U+Kik7CisKKyAgICBTY3Jp
cHRFeGVjdXRpb25Db250ZXh0KiBtX2NvbnRleHQ7CisgICAgSFRNTE1lZGlhRWxlbWVudCogbV9v
d25lcjsKKworICAgIFZlY3RvcjxSZWZQdHI8RXZlbnQ+ID4gbV9wZW5kaW5nRXZlbnRzOworICAg
IFRpbWVyPFRyYWNrTGlzdEJhc2U+IG1fcGVuZGluZ0V2ZW50VGltZXI7CisKKyAgICBFdmVudFRh
cmdldERhdGEgbV9ldmVudFRhcmdldERhdGE7CisKKyAgICBpbnQgbV9kaXNwYXRjaGluZ0V2ZW50
czsKK307CisKK30gLy8gbmFtZXNwYWNlIFdlYkNvcmUKKworI2VuZGlmCisjZW5kaWYKZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL01lZGlhUGxheWVyLmNwcCBi
L1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL01lZGlhUGxheWVyLmNwcAppbmRleCAx
YmYwNjE4NDE3Yzg3NjQzNzZkNDA4MjEzNDg1ZWUzYjVjMTQ5ZjY0Li5mZmM1MzQ4NTM0ZDMyY2Y3
OTNkMDFlMzY0ZTEyMjkxOWVmZDM3NjFiIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0
Zm9ybS9ncmFwaGljcy9NZWRpYVBsYXllci5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZv
cm0vZ3JhcGhpY3MvTWVkaWFQbGF5ZXIuY3BwCkBAIC0xMTAyLDcgKzExMDIsNyBAQCB2b2lkIE1l
ZGlhUGxheWVyOjphZGRUZXh0VHJhY2soUGFzc1JlZlB0cjxJbmJhbmRUZXh0VHJhY2tQcml2YXRl
PiB0cmFjaykKICAgICBpZiAoIW1fbWVkaWFQbGF5ZXJDbGllbnQpCiAgICAgICAgIHJldHVybjsK
IAotICAgIG1fbWVkaWFQbGF5ZXJDbGllbnQtPm1lZGlhUGxheWVyRGlkQWRkVHJhY2sodHJhY2sp
OworICAgIG1fbWVkaWFQbGF5ZXJDbGllbnQtPm1lZGlhUGxheWVyRGlkQWRkVGV4dFRyYWNrKHRy
YWNrKTsKIH0KIAogdm9pZCBNZWRpYVBsYXllcjo6cmVtb3ZlVGV4dFRyYWNrKFBhc3NSZWZQdHI8
SW5iYW5kVGV4dFRyYWNrUHJpdmF0ZT4gdHJhY2spCkBAIC0xMTEwLDcgKzExMTAsNyBAQCB2b2lk
IE1lZGlhUGxheWVyOjpyZW1vdmVUZXh0VHJhY2soUGFzc1JlZlB0cjxJbmJhbmRUZXh0VHJhY2tQ
cml2YXRlPiB0cmFjaykKICAgICBpZiAoIW1fbWVkaWFQbGF5ZXJDbGllbnQpCiAgICAgICAgIHJl
dHVybjsKIAotICAgIG1fbWVkaWFQbGF5ZXJDbGllbnQtPm1lZGlhUGxheWVyRGlkUmVtb3ZlVHJh
Y2sodHJhY2spOworICAgIG1fbWVkaWFQbGF5ZXJDbGllbnQtPm1lZGlhUGxheWVyRGlkUmVtb3Zl
VGV4dFRyYWNrKHRyYWNrKTsKIH0KIAogYm9vbCBNZWRpYVBsYXllcjo6cmVxdWlyZXNUZXh0VHJh
Y2tSZXByZXNlbnRhdGlvbigpIGNvbnN0CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0
Zm9ybS9ncmFwaGljcy9NZWRpYVBsYXllci5oIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3Jh
cGhpY3MvTWVkaWFQbGF5ZXIuaAppbmRleCBlMTdhZDZjOTAwODNlZTRiZDc2MjU5M2RhM2Q4MWY0
NTUxNmFhZmM5Li5hODExMTE4ODVjYjJlNDg0YmNhMzJjODA5MDg2OTg5MDUwYjA0MzRjIDEwMDY0
NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9NZWRpYVBsYXllci5oCisr
KyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL01lZGlhUGxheWVyLmgKQEAgLTIx
OCw4ICsyMTgsOCBAQCBwdWJsaWM6CiAgICAgdmlydHVhbCBDYWNoZWRSZXNvdXJjZUxvYWRlciog
bWVkaWFQbGF5ZXJDYWNoZWRSZXNvdXJjZUxvYWRlcigpIHsgcmV0dXJuIDA7IH0KIAogI2lmIEVO
QUJMRShWSURFT19UUkFDSykKLSAgICB2aXJ0dWFsIHZvaWQgbWVkaWFQbGF5ZXJEaWRBZGRUcmFj
ayhQYXNzUmVmUHRyPEluYmFuZFRleHRUcmFja1ByaXZhdGU+KSB7IH0KLSAgICB2aXJ0dWFsIHZv
aWQgbWVkaWFQbGF5ZXJEaWRSZW1vdmVUcmFjayhQYXNzUmVmUHRyPEluYmFuZFRleHRUcmFja1By
aXZhdGU+KSB7IH0KKyAgICB2aXJ0dWFsIHZvaWQgbWVkaWFQbGF5ZXJEaWRBZGRUZXh0VHJhY2so
UGFzc1JlZlB0cjxJbmJhbmRUZXh0VHJhY2tQcml2YXRlPikgeyB9CisgICAgdmlydHVhbCB2b2lk
IG1lZGlhUGxheWVyRGlkUmVtb3ZlVGV4dFRyYWNrKFBhc3NSZWZQdHI8SW5iYW5kVGV4dFRyYWNr
UHJpdmF0ZT4pIHsgfQogCiAgICAgdmlydHVhbCB2b2lkIHRleHRUcmFja1JlcHJlc2VudGF0aW9u
Qm91bmRzQ2hhbmdlZChjb25zdCBJbnRSZWN0JikgeyB9CiAgICAgdmlydHVhbCB2b2lkIHBhaW50
VGV4dFRyYWNrUmVwcmVzZW50YXRpb24oR3JhcGhpY3NDb250ZXh0KiwgY29uc3QgSW50UmVjdCYp
IHsgfQo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>197466</attachid>
            <date>2013-04-10 19:58:19 -0700</date>
            <delta_ts>2013-04-11 20:05:51 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-114330-20130410205759.patch</filename>
            <type>text/plain</type>
            <size>58308</size>
            <attacher name="Brendan Long">b.long</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTQ4MTY1CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggMTJjNTMzNjk2YTU5YWZl
OTJiMWY3NmM0Mzg5YTUxMjk2MGYzZDdmZi4uMjQ1ODQ1ZTRmNWE1NjQ0M2MwMjRmMTU3ZDdmOWFl
MTVmYzdhNjQ0ZCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDEwMiBAQAorMjAxMy0wNC0wOSAgQnJl
bmRhbiBMb25nICA8Yi5sb25nQGNhYmxlbGFicy5jb20+CisKKyAgICAgICAgUmVmYWN0b3IgVGV4
dFRyYWNrIGFuZCBUZXh0VHJhY2tMaXN0IHRvIG1ha2UgaXQgZWFzaWVyIHRvIGFkZCBhdWRpbyBh
bmQgdmlkZW8gdHJhY2tzCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVn
LmNnaT9pZD0xMTQzMzAKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKwor
ICAgICAgICBObyBuZXcgdGVzdHMgYmVjYXVzZSB0aGlzIGRvZXNuJ3QgYWRkIG5ldyBmdW5jdGlv
bmFsaXR5LgorCisgICAgICAgICogQ01ha2VMaXN0cy50eHQ6CisgICAgICAgICogVGFyZ2V0LnBy
aToKKyAgICAgICAgKiBodG1sL0hUTUxNZWRpYUVsZW1lbnQuY3BwOgorICAgICAgICAoV2ViQ29y
ZTo6SFRNTE1lZGlhRWxlbWVudDo6bWVkaWFQbGF5ZXJEaWRBZGRUZXh0VHJhY2spOgorICAgICAg
ICAoV2ViQ29yZTo6SFRNTE1lZGlhRWxlbWVudDo6bWVkaWFQbGF5ZXJEaWRSZW1vdmVUZXh0VHJh
Y2spOgorICAgICAgICAoV2ViQ29yZTo6SFRNTE1lZGlhRWxlbWVudDo6YWRkVGV4dFRyYWNrKToK
KyAgICAgICAgKFdlYkNvcmU6OkhUTUxNZWRpYUVsZW1lbnQ6OnJlbW92ZVRleHRUcmFjayk6Cisg
ICAgICAgIChXZWJDb3JlOjpIVE1MTWVkaWFFbGVtZW50OjpyZW1vdmVBbGxJbmJhbmRUcmFja3Mp
OgorICAgICAgICAoV2ViQ29yZTo6SFRNTE1lZGlhRWxlbWVudDo6ZGlkQWRkVGV4dFRyYWNrKToK
KyAgICAgICAgKFdlYkNvcmU6OkhUTUxNZWRpYUVsZW1lbnQ6OmRpZFJlbW92ZVRleHRUcmFjayk6
CisgICAgICAgICogaHRtbC9IVE1MTWVkaWFFbGVtZW50Lmg6CisgICAgICAgIChXZWJDb3JlKToK
KyAgICAgICAgKEhUTUxNZWRpYUVsZW1lbnQpOgorICAgICAgICAqIGh0bWwvSFRNTFRyYWNrRWxl
bWVudC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpIVE1MVHJhY2tFbGVtZW50OjppbnNlcnRlZElu
dG8pOgorICAgICAgICAoV2ViQ29yZTo6SFRNTFRyYWNrRWxlbWVudDo6cmVtb3ZlZEZyb20pOgor
ICAgICAgICAqIGh0bWwvdHJhY2svVGV4dFRyYWNrLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlRl
eHRUcmFjazo6VGV4dFRyYWNrKToKKyAgICAgICAgKFdlYkNvcmU6OlRleHRUcmFjazo6aW50ZXJm
YWNlTmFtZSk6CisgICAgICAgIChXZWJDb3JlKToKKyAgICAgICAgKFdlYkNvcmU6OlRleHRUcmFj
azo6c2NyaXB0RXhlY3V0aW9uQ29udGV4dCk6CisgICAgICAgIChXZWJDb3JlOjpUZXh0VHJhY2s6
OmV2ZW50VGFyZ2V0RGF0YSk6CisgICAgICAgIChXZWJDb3JlOjpUZXh0VHJhY2s6OmVuc3VyZUV2
ZW50VGFyZ2V0RGF0YSk6CisgICAgICAgIChXZWJDb3JlOjpUZXh0VHJhY2s6OmlzVmFsaWRLaW5k
KToKKyAgICAgICAgKFdlYkNvcmU6OlRleHRUcmFjazo6c2V0S2luZCk6CisgICAgICAgIChXZWJD
b3JlOjpUZXh0VHJhY2s6OmlzUmVuZGVyZWQpOgorICAgICAgICAoV2ViQ29yZTo6VGV4dFRyYWNr
OjpwbGF0Zm9ybVRleHRUcmFjayk6CisgICAgICAgIChXZWJDb3JlOjpUZXh0VHJhY2s6OmlzTWFp
blByb2dyYW1Db250ZW50KToKKyAgICAgICAgKiBodG1sL3RyYWNrL1RleHRUcmFjay5oOgorICAg
ICAgICAoV2ViQ29yZSk6CisgICAgICAgIChUZXh0VHJhY2spOgorICAgICAgICAoV2ViQ29yZTo6
VGV4dFRyYWNrOjpkZWZhdWx0S2luZEtleXdvcmQpOgorICAgICAgICAoV2ViQ29yZTo6VGV4dFRy
YWNrOjpjbGllbnQpOgorICAgICAgICAoV2ViQ29yZTo6VGV4dFRyYWNrOjpyZWZFdmVudFRhcmdl
dCk6CisgICAgICAgIChXZWJDb3JlOjpUZXh0VHJhY2s6OmRlcmVmRXZlbnRUYXJnZXQpOgorICAg
ICAgICAqIGh0bWwvdHJhY2svVGV4dFRyYWNrTGlzdC5jcHA6CisgICAgICAgIChUZXh0VHJhY2tM
aXN0OjpUZXh0VHJhY2tMaXN0KToKKyAgICAgICAgKFRleHRUcmFja0xpc3Q6OmdldFRyYWNrSW5k
ZXgpOgorICAgICAgICAoVGV4dFRyYWNrTGlzdDo6Z2V0VHJhY2tJbmRleFJlbGF0aXZlVG9SZW5k
ZXJlZFRyYWNrcyk6CisgICAgICAgIChUZXh0VHJhY2tMaXN0OjppdGVtKToKKyAgICAgICAgKFRl
eHRUcmFja0xpc3Q6OmdldEluYmFuZFRyYWNrKToKKyAgICAgICAgKFRleHRUcmFja0xpc3Q6Omlu
dmFsaWRhdGVUcmFja0luZGV4ZXNBZnRlclRyYWNrKToKKyAgICAgICAgKFRleHRUcmFja0xpc3Q6
OmFwcGVuZCk6CisgICAgICAgIChUZXh0VHJhY2tMaXN0OjpyZW1vdmUpOgorICAgICAgICAoVGV4
dFRyYWNrTGlzdDo6Y29udGFpbnMpOgorICAgICAgICAqIGh0bWwvdHJhY2svVGV4dFRyYWNrTGlz
dC5oOgorICAgICAgICAoV2ViQ29yZSk6CisgICAgICAgIChUZXh0VHJhY2tMaXN0KToKKyAgICAg
ICAgKiBodG1sL3RyYWNrL1RyYWNrQmFzZS5jcHA6CisgICAgICAgIChXZWJDb3JlOjpUcmFja0Jh
c2U6OlRyYWNrQmFzZSk6CisgICAgICAgIChXZWJDb3JlOjpUcmFja0Jhc2U6OnNldEtpbmQpOgor
ICAgICAgICAqIGh0bWwvdHJhY2svVHJhY2tCYXNlLmg6CisgICAgICAgIChXZWJDb3JlKToKKyAg
ICAgICAgKFdlYkNvcmU6OlRyYWNrQmFzZTo6c2V0TWVkaWFFbGVtZW50KToKKyAgICAgICAgKFdl
YkNvcmU6OlRyYWNrQmFzZTo6bWVkaWFFbGVtZW50KToKKyAgICAgICAgKFRyYWNrQmFzZSk6Cisg
ICAgICAgIChXZWJDb3JlOjpUcmFja0Jhc2U6OmtpbmQpOgorICAgICAgICAoV2ViQ29yZTo6VHJh
Y2tCYXNlOjpsYWJlbCk6CisgICAgICAgIChXZWJDb3JlOjpUcmFja0Jhc2U6OnNldExhYmVsKToK
KyAgICAgICAgKFdlYkNvcmU6OlRyYWNrQmFzZTo6bGFuZ3VhZ2UpOgorICAgICAgICAoV2ViQ29y
ZTo6VHJhY2tCYXNlOjpzZXRMYW5ndWFnZSk6CisgICAgICAgICogaHRtbC90cmFjay9UcmFja0xp
c3RCYXNlLmNwcDogQWRkZWQuCisgICAgICAgIChUcmFja0xpc3RCYXNlOjpUcmFja0xpc3RCYXNl
KToKKyAgICAgICAgKFRyYWNrTGlzdEJhc2U6On5UcmFja0xpc3RCYXNlKToKKyAgICAgICAgKFRy
YWNrTGlzdEJhc2U6Omxlbmd0aCk6CisgICAgICAgIChUcmFja0xpc3RCYXNlOjpnZXRUcmFja0lu
ZGV4KToKKyAgICAgICAgKFRyYWNrTGlzdEJhc2U6OnJlbW92ZSk6CisgICAgICAgIChUcmFja0xp
c3RCYXNlOjpjb250YWlucyk6CisgICAgICAgIChUcmFja0xpc3RCYXNlOjpzY2hlZHVsZUFkZFRy
YWNrRXZlbnQpOgorICAgICAgICAoVHJhY2tMaXN0QmFzZTo6c2NoZWR1bGVSZW1vdmVUcmFja0V2
ZW50KToKKyAgICAgICAgKFRyYWNrTGlzdEJhc2U6OnNjaGVkdWxlQ2hhbmdlRXZlbnQpOgorICAg
ICAgICAoVHJhY2tMaXN0QmFzZTo6YXN5bmNFdmVudFRpbWVyRmlyZWQpOgorICAgICAgICAqIGh0
bWwvdHJhY2svVHJhY2tMaXN0QmFzZS5oOiBDb3BpZWQgZnJvbSBTb3VyY2UvV2ViQ29yZS9odG1s
L3RyYWNrL1RleHRUcmFja0xpc3QuaC4KKyAgICAgICAgKFdlYkNvcmUpOgorICAgICAgICAoVHJh
Y2tMaXN0QmFzZSk6CisgICAgICAgIChXZWJDb3JlOjpUcmFja0xpc3RCYXNlOjpzY3JpcHRFeGVj
dXRpb25Db250ZXh0KToKKyAgICAgICAgKFdlYkNvcmU6OlRyYWNrTGlzdEJhc2U6OmNsZWFyT3du
ZXIpOgorICAgICAgICAoV2ViQ29yZTo6VHJhY2tMaXN0QmFzZTo6b3duZXIpOgorICAgICAgICAo
V2ViQ29yZTo6VHJhY2tMaXN0QmFzZTo6aXNGaXJpbmdFdmVudExpc3RlbmVycyk6CisgICAgICAg
IChXZWJDb3JlOjpUcmFja0xpc3RCYXNlOjpyZWZFdmVudFRhcmdldCk6CisgICAgICAgIChXZWJD
b3JlOjpUcmFja0xpc3RCYXNlOjpkZXJlZkV2ZW50VGFyZ2V0KToKKyAgICAgICAgKFdlYkNvcmU6
OlRyYWNrTGlzdEJhc2U6OmV2ZW50VGFyZ2V0RGF0YSk6CisgICAgICAgIChXZWJDb3JlOjpUcmFj
a0xpc3RCYXNlOjplbnN1cmVFdmVudFRhcmdldERhdGEpOgorICAgICAgICAqIHBsYXRmb3JtL2dy
YXBoaWNzL01lZGlhUGxheWVyLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6Ok1lZGlhUGxheWVyOjph
ZGRUZXh0VHJhY2spOgorICAgICAgICAoV2ViQ29yZTo6TWVkaWFQbGF5ZXI6OnJlbW92ZVRleHRU
cmFjayk6CisgICAgICAgICogcGxhdGZvcm0vZ3JhcGhpY3MvTWVkaWFQbGF5ZXIuaDoKKyAgICAg
ICAgKFdlYkNvcmU6Ok1lZGlhUGxheWVyQ2xpZW50OjptZWRpYVBsYXllckRpZEFkZFRleHRUcmFj
ayk6CisgICAgICAgIChXZWJDb3JlOjpNZWRpYVBsYXllckNsaWVudDo6bWVkaWFQbGF5ZXJEaWRS
ZW1vdmVUZXh0VHJhY2spOgorCiAyMDEzLTA0LTEwICBSeW9zdWtlIE5pd2EgIDxybml3YUB3ZWJr
aXQub3JnPgogCiAgICAgICAgIENsZWFudXAgbG9jYWwgdmFyaWFibGVzIGluIEVkaXRvcjo6bWFy
a0FuZFJlcGxhY2VGb3IKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL0NNYWtlTGlzdHMudHh0
IGIvU291cmNlL1dlYkNvcmUvQ01ha2VMaXN0cy50eHQKaW5kZXggNDYxODMyNWEzY2ZhY2VhYWQ2
ZWFlNzczMGQ2ZWU3MDViYjkwODRhNS4uMTExMDE3YTFjMGY2NGRhY2JjODYyYjlmYTY5NmY3MzRi
OGFkZjdiMyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ01ha2VMaXN0cy50eHQKKysrIGIv
U291cmNlL1dlYkNvcmUvQ01ha2VMaXN0cy50eHQKQEAgLTU0OSwxMiArNTQ5LDYgQEAgc2V0KFdl
YkNvcmVfSURMX0ZJTEVTCiAgICAgaHRtbC9zaGFkb3cvSFRNTENvbnRlbnRFbGVtZW50LmlkbAog
ICAgIGh0bWwvc2hhZG93L0hUTUxTaGFkb3dFbGVtZW50LmlkbAogCi0gICAgaHRtbC90cmFjay9U
ZXh0VHJhY2suaWRsCi0gICAgaHRtbC90cmFjay9UZXh0VHJhY2tDdWUuaWRsCi0gICAgaHRtbC90
cmFjay9UZXh0VHJhY2tDdWVMaXN0LmlkbAotICAgIGh0bWwvdHJhY2svVGV4dFRyYWNrTGlzdC5p
ZGwKLSAgICBodG1sL3RyYWNrL1RyYWNrRXZlbnQuaWRsCi0KICAgICBpbnNwZWN0b3IvSW5qZWN0
ZWRTY3JpcHRIb3N0LmlkbAogICAgIGluc3BlY3Rvci9JbnNwZWN0b3JGcm9udGVuZEhvc3QuaWRs
CiAgICAgaW5zcGVjdG9yL0phdmFTY3JpcHRDYWxsRnJhbWUuaWRsCkBAIC0xNTkzLDE5ICsxNTg3
LDYgQEAgc2V0KFdlYkNvcmVfU09VUkNFUwogICAgIGh0bWwvc2hhZG93L1NwaW5CdXR0b25FbGVt
ZW50LmNwcAogICAgIGh0bWwvc2hhZG93L1RleHRDb250cm9sSW5uZXJFbGVtZW50cy5jcHAKIAot
ICAgIGh0bWwvdHJhY2svSW5iYW5kVGV4dFRyYWNrLmNwcAotICAgIGh0bWwvdHJhY2svTG9hZGFi
bGVUZXh0VHJhY2suY3BwCi0gICAgaHRtbC90cmFjay9UZXh0VHJhY2suY3BwCi0gICAgaHRtbC90
cmFjay9UZXh0VHJhY2tDdWUuY3BwCi0gICAgaHRtbC90cmFjay9UZXh0VHJhY2tDdWVHZW5lcmlj
LmNwcAotICAgIGh0bWwvdHJhY2svVGV4dFRyYWNrQ3VlTGlzdC5jcHAKLSAgICBodG1sL3RyYWNr
L1RleHRUcmFja0xpc3QuY3BwCi0gICAgaHRtbC90cmFjay9UcmFja0Jhc2UuY3BwCi0gICAgaHRt
bC90cmFjay9UcmFja0V2ZW50LmNwcAotICAgIGh0bWwvdHJhY2svV2ViVlRURWxlbWVudC5jcHAK
LSAgICBodG1sL3RyYWNrL1dlYlZUVFBhcnNlci5jcHAKLSAgICBodG1sL3RyYWNrL1dlYlZUVFRv
a2VuaXplci5jcHAKLQogICAgIGluc3BlY3Rvci9Db25zb2xlTWVzc2FnZS5jcHAKICAgICBpbnNw
ZWN0b3IvQ29udGVudFNlYXJjaFV0aWxzLmNwcAogICAgIGluc3BlY3Rvci9ET01FZGl0b3IuY3Bw
CkBAIC0xNzM4LDcgKzE3MTksNiBAQCBzZXQoV2ViQ29yZV9TT1VSQ0VTCiAgICAgbG9hZGVyL2Nh
Y2hlL0NhY2hlZFNjcmlwdC5jcHAKICAgICBsb2FkZXIvY2FjaGUvQ2FjaGVkU2hhZGVyLmNwcAog
ICAgIGxvYWRlci9jYWNoZS9DYWNoZWRTVkdEb2N1bWVudC5jcHAKLSAgICBsb2FkZXIvY2FjaGUv
Q2FjaGVkVGV4dFRyYWNrLmNwcAogICAgIGxvYWRlci9jYWNoZS9DYWNoZWRYU0xTdHlsZVNoZWV0
LmNwcAogICAgIGxvYWRlci9jYWNoZS9NZW1vcnlDYWNoZS5jcHAKIApAQCAtMjY5Niw3ICsyNjc2
LDMxIEBAIGlmIChFTkFCTEVfV0VCR0wpCiBlbmRpZiAoKQogCiBpZiAoRU5BQkxFX1ZJREVPX1RS
QUNLKQorICAgIGxpc3QoQVBQRU5EIFdlYkNvcmVfSURMX0ZJTEVTCisgICAgICAgIGh0bWwvdHJh
Y2svVGV4dFRyYWNrLmlkbAorICAgICAgICBodG1sL3RyYWNrL1RleHRUcmFja0N1ZS5pZGwKKyAg
ICAgICAgaHRtbC90cmFjay9UZXh0VHJhY2tDdWVMaXN0LmlkbAorICAgICAgICBodG1sL3RyYWNr
L1RleHRUcmFja0xpc3QuaWRsCisgICAgICAgIGh0bWwvdHJhY2svVHJhY2tFdmVudC5pZGwKKyAg
ICApCisKICAgICBsaXN0KEFQUEVORCBXZWJDb3JlX1NPVVJDRVMKKyAgICAgICAgaHRtbC90cmFj
ay9JbmJhbmRUZXh0VHJhY2suY3BwCisgICAgICAgIGh0bWwvdHJhY2svTG9hZGFibGVUZXh0VHJh
Y2suY3BwCisgICAgICAgIGh0bWwvdHJhY2svVGV4dFRyYWNrLmNwcAorICAgICAgICBodG1sL3Ry
YWNrL1RleHRUcmFja0N1ZS5jcHAKKyAgICAgICAgaHRtbC90cmFjay9UZXh0VHJhY2tDdWVHZW5l
cmljLmNwcAorICAgICAgICBodG1sL3RyYWNrL1RleHRUcmFja0N1ZUxpc3QuY3BwCisgICAgICAg
IGh0bWwvdHJhY2svVGV4dFRyYWNrTGlzdC5jcHAKKyAgICAgICAgaHRtbC90cmFjay9UcmFja0Jh
c2UuY3BwCisgICAgICAgIGh0bWwvdHJhY2svVHJhY2tFdmVudC5jcHAKKyAgICAgICAgaHRtbC90
cmFjay9UcmFja0xpc3RCYXNlLmNwcAorICAgICAgICBodG1sL3RyYWNrL1dlYlZUVEVsZW1lbnQu
Y3BwCisgICAgICAgIGh0bWwvdHJhY2svV2ViVlRUUGFyc2VyLmNwcAorICAgICAgICBodG1sL3Ry
YWNrL1dlYlZUVFRva2VuaXplci5jcHAKKworICAgICAgICBsb2FkZXIvY2FjaGUvQ2FjaGVkVGV4
dFRyYWNrLmNwcAorCiAgICAgICAgIHBsYXRmb3JtL2dyYXBoaWNzL1RleHRUcmFja1JlcHJlc2Vu
dGF0aW9uLmNwcAogICAgICkKIGVuZGlmICgpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9U
YXJnZXQucHJpIGIvU291cmNlL1dlYkNvcmUvVGFyZ2V0LnByaQppbmRleCBjOGE0YTk0ZTU4Zjc2
NTQ1MmRiZTA2NzYwNDgwNWE3M2Y2MGVlNzI4Li44NWU4NzYyZGE2ODNjMTU5MDI2ZTRhMjhhMTdj
YTliMmI0ZWE2NTBkIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9UYXJnZXQucHJpCisrKyBi
L1NvdXJjZS9XZWJDb3JlL1RhcmdldC5wcmkKQEAgLTM5NzcsNiArMzk3Nyw3IEBAIGVuYWJsZT8o
VklERU9fVFJBQ0spIHsKICAgICAgICAgaHRtbC90cmFjay9UZXh0VHJhY2tMaXN0LmggXAogICAg
ICAgICBodG1sL3RyYWNrL1RyYWNrQmFzZS5oIFwKICAgICAgICAgaHRtbC90cmFjay9UcmFja0V2
ZW50LmggXAorICAgICAgICBodG1sL3RyYWNrL1RyYWNrTGlzdEJhc2UuaCBcCiAgICAgICAgIGh0
bWwvdHJhY2svV2ViVlRUUGFyc2VyLmggXAogICAgICAgICBodG1sL3RyYWNrL1dlYlZUVFRva2Vu
LmggXAogICAgICAgICBodG1sL3RyYWNrL1dlYlZUVFRva2VuaXplci5oIFwKQEAgLTQwMDAsNiAr
NDAwMSw3IEBAIGVuYWJsZT8oVklERU9fVFJBQ0spIHsKICAgICAgICAgaHRtbC90cmFjay9UZXh0
VHJhY2tMaXN0LmNwcCBcCiAgICAgICAgIGh0bWwvdHJhY2svVHJhY2tCYXNlLmNwcCBcCiAgICAg
ICAgIGh0bWwvdHJhY2svVHJhY2tFdmVudC5jcHAgXAorICAgICAgICBodG1sL3RyYWNrL1RyYWNr
TGlzdEJhc2UuY3BwIFwKICAgICAgICAgaHRtbC90cmFjay9XZWJWVFRFbGVtZW50LmNwcCBcCiAg
ICAgICAgIGh0bWwvdHJhY2svV2ViVlRUUGFyc2VyLmNwcCBcCiAgICAgICAgIGh0bWwvdHJhY2sv
V2ViVlRUVG9rZW5pemVyLmNwcCBcCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9XZWJDb3Jl
LnZjcHJvai9XZWJDb3JlLnZjcHJvaiBiL1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUudmNwcm9qL1dl
YkNvcmUudmNwcm9qCmluZGV4IDRhMmI4YWFlY2VlNTEyNzg0ZjI2Y2JiMWUyNWQzMDQxZGI5OWVl
OGYuLmQwOTVjYWUxNDBmNTFiNzVmNzJkZmQwOGZhMzU5MmFhYzRlZjlhMDUgMTAwNzU1Ci0tLSBh
L1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUudmNwcm9qL1dlYkNvcmUudmNwcm9qCisrKyBiL1NvdXJj
ZS9XZWJDb3JlL1dlYkNvcmUudmNwcm9qL1dlYkNvcmUudmNwcm9qCkBAIC0zMDIyMiw2ICszMDIy
MiwxMCBAQAogCQkJCQk+CiAJCQkJPC9GaWxlPgogCQkJCTxGaWxlCisJCQkJCVJlbGF0aXZlUGF0
aD0iLi5ccGxhdGZvcm1cZ3JhcGhpY3NcSW5iYW5kVGV4dFRyYWNrUHJpdmF0ZS5oIgorCQkJCQk+
CisJCQkJPC9GaWxlPgorCQkJCTxGaWxlCiAJCQkJCVJlbGF0aXZlUGF0aD0iLi5ccGxhdGZvcm1c
Z3JhcGhpY3NcSW50UG9pbnQuaCIKIAkJCQkJPgogCQkJCTwvRmlsZT4KQEAgLTY1NzQ2LDEwICs2
NTc1MCw2IEBACiAJCQkJCT4KIAkJCQk8L0ZpbGU+CiAJCQkJPEZpbGUKLQkJCQkJUmVsYXRpdmVQ
YXRoPSIuLlxodG1sXHRyYWNrXEluYmFuZFRleHRUcmFja1ByaXZhdGUuaCIKLQkJCQkJPgotCQkJ
CTwvRmlsZT4KLQkJCQk8RmlsZQogCQkJCQlSZWxhdGl2ZVBhdGg9Ii4uXGh0bWxcdHJhY2tcTG9h
ZGFibGVUZXh0VHJhY2suY3BwIgogCQkJCQk+CiAJCQkJPC9GaWxlPgpAQCAtNjU4MTQsNiArNjU4
MTQsMTQgQEAKIAkJCQkJPgogCQkJCTwvRmlsZT4KIAkJCQk8RmlsZQorCQkJCQlSZWxhdGl2ZVBh
dGg9Ii4uXGh0bWxcdHJhY2tcVHJhY2tMaXN0QmFzZS5jcHAiCisJCQkJCT4KKwkJCQk8L0ZpbGU+
CisJCQkJPEZpbGUKKwkJCQkJUmVsYXRpdmVQYXRoPSIuLlxodG1sXHRyYWNrXFRyYWNrTGlzdEJh
c2UuaCIKKwkJCQkJPgorCQkJCTwvRmlsZT4KKwkJCQk8RmlsZQogCQkJCQlSZWxhdGl2ZVBhdGg9
Ii4uXGh0bWxcdHJhY2tcV2ViVlRURWxlbWVudC5jcHAiCiAJCQkJCT4KIAkJCQk8L0ZpbGU+CmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9XZWJDb3JlLnhjb2RlcHJvai9wcm9qZWN0LnBieHBy
b2ogYi9Tb3VyY2UvV2ViQ29yZS9XZWJDb3JlLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2oKaW5k
ZXggYzgyMjQ0MWY3MzBmMDI5YzBhN2I5ZTgzNmYwOGZkNjgzYjAzYTBhMy4uMzkyYjJhOTU2ZTM4
MTkzMDI0MWZkZDk0YmE0Zjc4M2ZkOGE0ZmFkNiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUv
V2ViQ29yZS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qCisrKyBiL1NvdXJjZS9XZWJDb3JlL1dl
YkNvcmUueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvagpAQCAtNTExMSw2ICs1MTExLDggQEAKIAkJ
QkNGRTJGMTIwQzFCNTgzODAwMjAyMzVGIC8qIEpTUmVjdC5oIGluIEhlYWRlcnMgKi8gPSB7aXNh
ID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQkNGRTJGMTAwQzFCNTgzNzAwMjAyMzVGIC8qIEpT
UmVjdC5oICovOyB9OwogCQlCQ0ZGNjQ5MTBFQUQxNUMyMDBDMUQ2RjcgLyogTGVuZ3RoQm94Lmgg
aW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBCQ0ZGNjQ4RjBF
QUQxNUMyMDBDMUQ2RjcgLyogTGVuZ3RoQm94LmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMg
PSAoUHJpdmF0ZSwgKTsgfTsgfTsKIAkJQkNGRjY0OTIwRUFEMTVDMjAwQzFENkY3IC8qIExlbmd0
aFNpemUuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEJD
RkY2NDkwMEVBRDE1QzIwMEMxRDZGNyAvKiBMZW5ndGhTaXplLmggKi87IHNldHRpbmdzID0ge0FU
VFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJQkU4OEUwQzExNzE1Q0UyNjAwNjU4RDk4
IC8qIFRyYWNrTGlzdEJhc2UuY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxl
OyBmaWxlUmVmID0gQkU4OEUwQkYxNzE1Q0UyNjAwNjU4RDk4IC8qIFRyYWNrTGlzdEJhc2UuY3Bw
ICovOyB9OworCQlCRTg4RTBDMjE3MTVDRTI2MDA2NThEOTggLyogVHJhY2tMaXN0QmFzZS5oIGlu
IEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQkU4OEUwQzAxNzE1
Q0UyNjAwNjU4RDk4IC8qIFRyYWNrTGlzdEJhc2UuaCAqLzsgfTsKIAkJQzA0NkUxQUMxMjA4QTlG
RTAwQkEyQ0Y3IC8qIExvY2FsaXplZFN0cmluZ3MuY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0g
UEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQzA0NkUxQUIxMjA4QTlGRTAwQkEyQ0Y3IC8qIExvY2Fs
aXplZFN0cmluZ3MuY3BwICovOyB9OwogCQlDMEMwNTRDQjExMThDOEU0MDBDRTI2MzYgLyogQ29k
ZUdlbmVyYXRvci5wbSBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJl
ZiA9IDkzRjhCMzA1MEEzMDBGRTEwMEY2MUFCOCAvKiBDb2RlR2VuZXJhdG9yLnBtICovOyBzZXR0
aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CiAJCUMwQzA1NENDMTExOEM4
RTQwMENFMjYzNiAvKiBnZW5lcmF0ZS1iaW5kaW5ncy5wbCBpbiBIZWFkZXJzICovID0ge2lzYSA9
IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDkzRjhCMzA3MEEzMDBGRUEwMEY2MUFCOCAvKiBnZW5l
cmF0ZS1iaW5kaW5ncy5wbCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCAp
OyB9OyB9OwpAQCAtMTE4MjksNiArMTE4MzEsOCBAQAogCQlCQ0ZGNjQ5MDBFQUQxNUMyMDBDMUQ2
RjcgLyogTGVuZ3RoU2l6ZS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNv
ZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBMZW5n
dGhTaXplLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCUJFODU1RjdGMDcwMUU4MzUw
MDIzOTc2OSAvKiBXZWJDb3JlVmlldy5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZp
bGVFbmNvZGluZyA9IDMwOyBpbmRlbnRXaWR0aCA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291
cmNlY29kZS5jLmg7IHBhdGggPSBXZWJDb3JlVmlldy5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4i
OyB0YWJXaWR0aCA9IDg7IHVzZXNUYWJzID0gMDsgfTsKIAkJQkU4NTYwNTEwNzAxRjkxMTAwMjM5
NzY5IC8qIFdlYkNvcmVWaWV3Lm0gKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVu
Y29kaW5nID0gMzA7IGluZGVudFdpZHRoID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vj
b2RlLmMub2JqYzsgcGF0aCA9IFdlYkNvcmVWaWV3Lm07IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7
IHRhYldpZHRoID0gODsgdXNlc1RhYnMgPSAwOyB9OworCQlCRTg4RTBCRjE3MTVDRTI2MDA2NThE
OTggLyogVHJhY2tMaXN0QmFzZS5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmls
ZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBh
dGggPSBUcmFja0xpc3RCYXNlLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQkU4
OEUwQzAxNzE1Q0UyNjAwNjU4RDk4IC8qIFRyYWNrTGlzdEJhc2UuaCAqLyA9IHtpc2EgPSBQQlhG
aWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJj
ZWNvZGUuYy5oOyBwYXRoID0gVHJhY2tMaXN0QmFzZS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4i
OyB9OwogCQlCRTkxRkM4QjA2MTMzNjY2MDA1RTM3OTAgLyogUG9zaXRpb24uaCAqLyA9IHtpc2Eg
PSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsgaW5kZW50V2lkdGggPSA0OyBs
YXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gUG9zaXRpb24uaDsgc291
cmNlVHJlZSA9ICI8Z3JvdXA+IjsgdGFiV2lkdGggPSA4OyB1c2VzVGFicyA9IDA7IH07CiAJCUJF
OTFGQzhDMDYxMzM2NjYwMDVFMzc5MCAvKiBQb3NpdGlvbi5jcHAgKi8gPSB7aXNhID0gUEJYRmls
ZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gMzA7IGluZGVudFdpZHRoID0gNDsgbGFzdEtub3du
RmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBQb3NpdGlvbi5jcHA7IHNvdXJj
ZVRyZWUgPSAiPGdyb3VwPiI7IHRhYldpZHRoID0gODsgdXNlc1RhYnMgPSAwOyB9OwogCQlCRTk4
M0Q5NTA1MkEyRTBBMDA4OTJEODUgLyogV2ViQ29yZUtleWJvYXJkVUlNb2RlLmggKi8gPSB7aXNh
ID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gMzA7IGluZGVudFdpZHRoID0gNDsg
bGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFdlYkNvcmVLZXlib2Fy
ZFVJTW9kZS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB0YWJXaWR0aCA9IDg7IHVzZXNUYWJz
ID0gMDsgfTsKQEAgLTE3NjYxLDYgKzE3NjY1LDggQEAKIAkJQjFBRDRFNzcxM0ExMkE3MjAwODQ2
QjI3IC8qIHRyYWNrICovID0gewogCQkJaXNhID0gUEJYR3JvdXA7CiAJCQljaGlsZHJlbiA9ICgK
KwkJCQlCRTg4RTBCRjE3MTVDRTI2MDA2NThEOTggLyogVHJhY2tMaXN0QmFzZS5jcHAgKi8sCisJ
CQkJQkU4OEUwQzAxNzE1Q0UyNjAwNjU4RDk4IC8qIFRyYWNrTGlzdEJhc2UuaCAqLywKIAkJCQkw
Nzk0MTc4RjE2NkU4NTVGMDA5NDE2QzIgLyogSW5iYW5kVGV4dFRyYWNrLmNwcCAqLywKIAkJCQkw
Nzk0MTc5MDE2NkU4NTVGMDA5NDE2QzIgLyogSW5iYW5kVGV4dFRyYWNrLmggKi8sCiAJCQkJOTc1
OUU5MzQxNEVGMUNGODAwMjZBMkREIC8qIExvYWRhYmxlVGV4dFRyYWNrLmNwcCAqLywKQEAgLTI0
MDM5LDYgKzI0MDQ1LDcgQEAKIAkJCQlFMTgwODEwRjE2RkNFQ0RGMDBCODBEMDcgLyogV2ViQ29y
ZVJlc291cmNlSGFuZGxlQXNEZWxlZ2F0ZS5oIGluIEhlYWRlcnMgKi8sCiAJCQkJRTE4MDgxMTcx
NkZDRjlDQjAwQjgwRDA3IC8qIFN5bmNocm9ub3VzTG9hZGVyQ2xpZW50LmggaW4gSGVhZGVycyAq
LywKIAkJCQlFMTUyNTUxNTE2RkQyMzUwMDAzRDdBREIgLyogV2ViQ29yZVJlc291cmNlSGFuZGxl
QXNPcGVyYXRpb25RdWV1ZURlbGVnYXRlLmggaW4gSGVhZGVycyAqLywKKwkJCQlCRTg4RTBDMjE3
MTVDRTI2MDA2NThEOTggLyogVHJhY2tMaXN0QmFzZS5oIGluIEhlYWRlcnMgKi8sCiAJCQkpOwog
CQkJcnVuT25seUZvckRlcGxveW1lbnRQb3N0cHJvY2Vzc2luZyA9IDA7CiAJCX07CkBAIC0yNjk4
NCw2ICsyNjk5MSw3IEBACiAJCQkJRTE4MDgxMTIxNkZDRjQyRjAwQjgwRDA3IC8qIFN5bmNocm9u
b3VzTG9hZGVyQ2xpZW50LmNwcCBpbiBTb3VyY2VzICovLAogCQkJCUUxODA4MTE2MTZGQ0Y5Q0Iw
MEI4MEQwNyAvKiBTeW5jaHJvbm91c0xvYWRlckNsaWVudC5tbSBpbiBTb3VyY2VzICovLAogCQkJ
CUUxNTI1NTE2MTZGRDIzNTAwMDNEN0FEQiAvKiBXZWJDb3JlUmVzb3VyY2VIYW5kbGVBc09wZXJh
dGlvblF1ZXVlRGVsZWdhdGUubW0gaW4gU291cmNlcyAqLywKKwkJCQlCRTg4RTBDMTE3MTVDRTI2
MDA2NThEOTggLyogVHJhY2tMaXN0QmFzZS5jcHAgaW4gU291cmNlcyAqLywKIAkJCSk7CiAJCQly
dW5Pbmx5Rm9yRGVwbG95bWVudFBvc3Rwcm9jZXNzaW5nID0gMDsKIAkJfTsKZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTE1lZGlhRWxlbWVudC5jcHAgYi9Tb3VyY2UvV2ViQ29y
ZS9odG1sL0hUTUxNZWRpYUVsZW1lbnQuY3BwCmluZGV4IGM1YmQ2ZTA4YTIyOWFjYmYxODYzNDgy
MjI5N2Q4ZjRlYjcxNTdjOTUuLjVkZGNkOTI4NDUwZjg4N2ZjNjA5NGNkZWJkMWQzZTQ3ZjZiZDNi
OTMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTE1lZGlhRWxlbWVudC5jcHAK
KysrIGIvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MTWVkaWFFbGVtZW50LmNwcApAQCAtMjc5Miw3
ICsyNzkyLDcgQEAgZG91YmxlIEhUTUxNZWRpYUVsZW1lbnQ6OnBlcmNlbnRMb2FkZWQoKSBjb25z
dAogCiAjaWYgRU5BQkxFKFZJREVPX1RSQUNLKQogCi12b2lkIEhUTUxNZWRpYUVsZW1lbnQ6Om1l
ZGlhUGxheWVyRGlkQWRkVHJhY2soUGFzc1JlZlB0cjxJbmJhbmRUZXh0VHJhY2tQcml2YXRlPiBw
cnBUcmFjaykKK3ZvaWQgSFRNTE1lZGlhRWxlbWVudDo6bWVkaWFQbGF5ZXJEaWRBZGRUZXh0VHJh
Y2soUGFzc1JlZlB0cjxJbmJhbmRUZXh0VHJhY2tQcml2YXRlPiBwcnBUcmFjaykKIHsKICAgICBp
ZiAoIVJ1bnRpbWVFbmFibGVkRmVhdHVyZXM6OndlYmtpdFZpZGVvVHJhY2tFbmFibGVkKCkpCiAg
ICAgICAgIHJldHVybjsKQEAgLTI4MjQsMTAgKzI4MjQsMTAgQEAgdm9pZCBIVE1MTWVkaWFFbGVt
ZW50OjptZWRpYVBsYXllckRpZEFkZFRyYWNrKFBhc3NSZWZQdHI8SW5iYW5kVGV4dFRyYWNrUHJp
dmF0ZT4KICAgICAvLyA5LiBGaXJlIGFuIGV2ZW50IHdpdGggdGhlIG5hbWUgYWRkdHJhY2ssIHRo
YXQgZG9lcyBub3QgYnViYmxlIGFuZCBpcyBub3QgY2FuY2VsYWJsZSwgYW5kIHRoYXQgdXNlcyB0
aGUgVHJhY2tFdmVudAogICAgIC8vIGludGVyZmFjZSwgd2l0aCB0aGUgdHJhY2sgYXR0cmlidXRl
IGluaXRpYWxpemVkIHRvIHRoZSB0ZXh0IHRyYWNrJ3MgVGV4dFRyYWNrIG9iamVjdCwgYXQgdGhl
IG1lZGlhIGVsZW1lbnQncwogICAgIC8vIHRleHRUcmFja3MgYXR0cmlidXRlJ3MgVGV4dFRyYWNr
TGlzdCBvYmplY3QuCi0gICAgYWRkVHJhY2sodGV4dFRyYWNrLmdldCgpKTsKKyAgICBhZGRUZXh0
VHJhY2sodGV4dFRyYWNrLmdldCgpKTsKIH0KIAotdm9pZCBIVE1MTWVkaWFFbGVtZW50OjptZWRp
YVBsYXllckRpZFJlbW92ZVRyYWNrKFBhc3NSZWZQdHI8SW5iYW5kVGV4dFRyYWNrUHJpdmF0ZT4g
cHJwVHJhY2spCit2b2lkIEhUTUxNZWRpYUVsZW1lbnQ6Om1lZGlhUGxheWVyRGlkUmVtb3ZlVGV4
dFRyYWNrKFBhc3NSZWZQdHI8SW5iYW5kVGV4dFRyYWNrUHJpdmF0ZT4gcHJwVHJhY2spCiB7CiAg
ICAgaWYgKCFSdW50aW1lRW5hYmxlZEZlYXR1cmVzOjp3ZWJraXRWaWRlb1RyYWNrRW5hYmxlZCgp
KQogICAgICAgICByZXR1cm47CkBAIC0yODM2LDEyICsyODM2LDEyIEBAIHZvaWQgSFRNTE1lZGlh
RWxlbWVudDo6bWVkaWFQbGF5ZXJEaWRSZW1vdmVUcmFjayhQYXNzUmVmUHRyPEluYmFuZFRleHRU
cmFja1ByaXZhCiAgICAgICAgIHJldHVybjsKIAogICAgIC8vIFRoaXMgY2FzdCBpcyBzYWZlIGJl
Y2F1c2Ugd2UgY3JlYXRlZCB0aGUgSW5iYW5kVGV4dFRyYWNrIHdpdGggdGhlIEluYmFuZFRleHRU
cmFja1ByaXZhdGUKLSAgICAvLyBwYXNzZWQgdG8gbWVkaWFQbGF5ZXJEaWRBZGRUcmFjay4KKyAg
ICAvLyBwYXNzZWQgdG8gbWVkaWFQbGF5ZXJEaWRBZGRUZXh0VHJhY2suCiAgICAgUmVmUHRyPElu
YmFuZFRleHRUcmFjaz4gdGV4dFRyYWNrID0gc3RhdGljX2Nhc3Q8SW5iYW5kVGV4dFRyYWNrKj4o
cHJwVHJhY2stPmNsaWVudCgpKTsKICAgICBpZiAoIXRleHRUcmFjaykKICAgICAgICAgcmV0dXJu
OwogCi0gICAgcmVtb3ZlVHJhY2sodGV4dFRyYWNrLmdldCgpKTsKKyAgICByZW1vdmVUZXh0VHJh
Y2sodGV4dFRyYWNrLmdldCgpKTsKIH0KIAogI2lmIFVTRShQTEFURk9STV9URVhUX1RSQUNLX01F
TlUpCkBAIC0yOTIwLDE0ICsyOTIwLDE0IEBAIHZvaWQgSFRNTE1lZGlhRWxlbWVudDo6Y2xvc2VD
YXB0aW9uVHJhY2tzQ2hhbmdlZCgpCiAjZW5kaWYKIH0KIAotdm9pZCBIVE1MTWVkaWFFbGVtZW50
OjphZGRUcmFjayhUZXh0VHJhY2sqIHRyYWNrKQordm9pZCBIVE1MTWVkaWFFbGVtZW50OjphZGRU
ZXh0VHJhY2soVGV4dFRyYWNrKiB0cmFjaykKIHsKICAgICB0ZXh0VHJhY2tzKCktPmFwcGVuZCh0
cmFjayk7CiAgICAgCiAgICAgY2xvc2VDYXB0aW9uVHJhY2tzQ2hhbmdlZCgpOwogfQogCi12b2lk
IEhUTUxNZWRpYUVsZW1lbnQ6OnJlbW92ZVRyYWNrKFRleHRUcmFjayogdHJhY2spCit2b2lkIEhU
TUxNZWRpYUVsZW1lbnQ6OnJlbW92ZVRleHRUcmFjayhUZXh0VHJhY2sqIHRyYWNrKQogewogICAg
IFRyYWNrRGlzcGxheVVwZGF0ZVNjb3BlIHNjb3BlKHRoaXMpOwogICAgIFRleHRUcmFja0N1ZUxp
c3QqIGN1ZXMgPSB0cmFjay0+Y3VlcygpOwpAQCAtMjk0OCw3ICsyOTQ4LDcgQEAgdm9pZCBIVE1M
TWVkaWFFbGVtZW50OjpyZW1vdmVBbGxJbmJhbmRUcmFja3MoKQogICAgICAgICBUZXh0VHJhY2sq
IHRyYWNrID0gbV90ZXh0VHJhY2tzLT5pdGVtKGkpOwogCiAgICAgICAgIGlmICh0cmFjay0+dHJh
Y2tUeXBlKCkgPT0gVGV4dFRyYWNrOjpJbkJhbmQpCi0gICAgICAgICAgICByZW1vdmVUcmFjayh0
cmFjayk7CisgICAgICAgICAgICByZW1vdmVUZXh0VHJhY2sodHJhY2spOwogICAgIH0KIH0KIApA
QCAtMjk3OCw3ICsyOTc4LDcgQEAgUGFzc1JlZlB0cjxUZXh0VHJhY2s+IEhUTUxNZWRpYUVsZW1l
bnQ6OmFkZFRleHRUcmFjayhjb25zdCBTdHJpbmcmIGtpbmQsIGNvbnN0IFMKICAgICAvLyBmaXJz
dCBhcHBlbmQgdGhlIHRyYWNrIHRvIHRoZSB0ZXh0IHRyYWNrIGxpc3QuCiAKICAgICAvLyA2LiBB
ZGQgdGhlIG5ldyB0ZXh0IHRyYWNrIHRvIHRoZSBtZWRpYSBlbGVtZW50J3MgbGlzdCBvZiB0ZXh0
IHRyYWNrcy4KLSAgICBhZGRUcmFjayh0ZXh0VHJhY2suZ2V0KCkpOworICAgIGFkZFRleHRUcmFj
ayh0ZXh0VHJhY2suZ2V0KCkpOwogCiAgICAgLy8gLi4uIGl0cyB0ZXh0IHRyYWNrIHJlYWRpbmVz
cyBzdGF0ZSB0byB0aGUgdGV4dCB0cmFjayBsb2FkZWQgc3RhdGUgLi4uCiAgICAgdGV4dFRyYWNr
LT5zZXRSZWFkaW5lc3NTdGF0ZShUZXh0VHJhY2s6OkxvYWRlZCk7CkBAIC0zMDAwLDcgKzMwMDAs
NyBAQCBUZXh0VHJhY2tMaXN0KiBIVE1MTWVkaWFFbGVtZW50Ojp0ZXh0VHJhY2tzKCkKICAgICBy
ZXR1cm4gbV90ZXh0VHJhY2tzLmdldCgpOwogfQogCi12b2lkIEhUTUxNZWRpYUVsZW1lbnQ6OmRp
ZEFkZFRyYWNrKEhUTUxUcmFja0VsZW1lbnQqIHRyYWNrRWxlbWVudCkKK3ZvaWQgSFRNTE1lZGlh
RWxlbWVudDo6ZGlkQWRkVGV4dFRyYWNrKEhUTUxUcmFja0VsZW1lbnQqIHRyYWNrRWxlbWVudCkK
IHsKICAgICBBU1NFUlQodHJhY2tFbGVtZW50LT5oYXNUYWdOYW1lKHRyYWNrVGFnKSk7CiAKQEAg
LTMwMTUsNyArMzAxNSw3IEBAIHZvaWQgSFRNTE1lZGlhRWxlbWVudDo6ZGlkQWRkVHJhY2soSFRN
TFRyYWNrRWxlbWVudCogdHJhY2tFbGVtZW50KQogICAgIGlmICghdGV4dFRyYWNrKQogICAgICAg
ICByZXR1cm47CiAgICAgCi0gICAgYWRkVHJhY2sodGV4dFRyYWNrLmdldCgpKTsKKyAgICBhZGRU
ZXh0VHJhY2sodGV4dFRyYWNrLmdldCgpKTsKICAgICAKICAgICAvLyBEbyBub3Qgc2NoZWR1bGUg
dGhlIHRyYWNrIGxvYWRpbmcgdW50aWwgcGFyc2luZyBmaW5pc2hlcyBzbyB3ZSBkb24ndCBzdGFy
dCBiZWZvcmUgYWxsIHRyYWNrcwogICAgIC8vIGluIHRoZSBtYXJrdXAgaGF2ZSBiZWVuIGFkZGVk
LgpAQCAtMzAyNiw3ICszMDI2LDcgQEAgdm9pZCBIVE1MTWVkaWFFbGVtZW50OjpkaWRBZGRUcmFj
ayhIVE1MVHJhY2tFbGVtZW50KiB0cmFja0VsZW1lbnQpCiAgICAgICAgIG1lZGlhQ29udHJvbHMo
KS0+Y2xvc2VkQ2FwdGlvblRyYWNrc0NoYW5nZWQoKTsKIH0KIAotdm9pZCBIVE1MTWVkaWFFbGVt
ZW50OjpkaWRSZW1vdmVUcmFjayhIVE1MVHJhY2tFbGVtZW50KiB0cmFja0VsZW1lbnQpCit2b2lk
IEhUTUxNZWRpYUVsZW1lbnQ6OmRpZFJlbW92ZVRleHRUcmFjayhIVE1MVHJhY2tFbGVtZW50KiB0
cmFja0VsZW1lbnQpCiB7CiAgICAgQVNTRVJUKHRyYWNrRWxlbWVudC0+aGFzVGFnTmFtZSh0cmFj
a1RhZykpOwogCkBAIC0zMDUzLDcgKzMwNTMsNyBAQCB2b2lkIEhUTUxNZWRpYUVsZW1lbnQ6OmRp
ZFJlbW92ZVRyYWNrKEhUTUxUcmFja0VsZW1lbnQqIHRyYWNrRWxlbWVudCkKICAgICAvLyBXaGVu
IGEgdHJhY2sgZWxlbWVudCdzIHBhcmVudCBlbGVtZW50IGNoYW5nZXMgYW5kIHRoZSBvbGQgcGFy
ZW50IHdhcyBhIG1lZGlhIGVsZW1lbnQsIAogICAgIC8vIHRoZW4gdGhlIHVzZXIgYWdlbnQgbXVz
dCByZW1vdmUgdGhlIHRyYWNrIGVsZW1lbnQncyBjb3JyZXNwb25kaW5nIHRleHQgdHJhY2sgZnJv
bSB0aGUgCiAgICAgLy8gbWVkaWEgZWxlbWVudCdzIGxpc3Qgb2YgdGV4dCB0cmFja3MuCi0gICAg
cmVtb3ZlVHJhY2sodGV4dFRyYWNrLmdldCgpKTsKKyAgICByZW1vdmVUZXh0VHJhY2sodGV4dFRy
YWNrLmdldCgpKTsKIAogICAgIHNpemVfdCBpbmRleCA9IG1fdGV4dFRyYWNrc1doZW5SZXNvdXJj
ZVNlbGVjdGlvbkJlZ2FuLmZpbmQodGV4dFRyYWNrLmdldCgpKTsKICAgICBpZiAoaW5kZXggIT0g
bm90Rm91bmQpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxNZWRpYUVsZW1l
bnQuaCBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTE1lZGlhRWxlbWVudC5oCmluZGV4IDhlNTNl
NmYwOWNmMjViOGE5MWQxYzM1YTVkMmU5NTI1NTA0MmE0YWEuLmQwODVlOWRmYjg4NjA0MDdlYWQ5
MTkxZWMyN2NhYjRkOTJiOTc2NjMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRN
TE1lZGlhRWxlbWVudC5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTE1lZGlhRWxlbWVu
dC5oCkBAIC01OCw3ICs1OCw2IEBAIGNsYXNzIE1lZGlhQ29udHJvbGxlcjsKIGNsYXNzIE1lZGlh
Q29udHJvbHM7CiBjbGFzcyBNZWRpYUVycm9yOwogY2xhc3MgS1VSTDsKLWNsYXNzIFRleHRUcmFj
a0xpc3Q7CiBjbGFzcyBUaW1lUmFuZ2VzOwogI2lmIEVOQUJMRShQTFVHSU5fUFJPWFlfRk9SX1ZJ
REVPKQogY2xhc3MgV2lkZ2V0OwpAQCAtNzIsNiArNzEsNyBAQCBjbGFzcyBNZWRpYUtleXM7CiAK
ICNpZiBFTkFCTEUoVklERU9fVFJBQ0spCiBjbGFzcyBJbmJhbmRUZXh0VHJhY2tQcml2YXRlOwor
Y2xhc3MgVGV4dFRyYWNrTGlzdDsKIAogdHlwZWRlZiBQT0RJbnRlcnZhbFRyZWU8ZG91YmxlLCBU
ZXh0VHJhY2tDdWUqPiBDdWVJbnRlcnZhbFRyZWU7CiB0eXBlZGVmIEN1ZUludGVydmFsVHJlZTo6
SW50ZXJ2YWxUeXBlIEN1ZUludGVydmFsOwpAQCAtMjI5LDE3ICsyMjksMTcgQEAgcHVibGljOgog
ICAgIFRleHRUcmFja0xpc3QqIHRleHRUcmFja3MoKTsKICAgICBDdWVMaXN0IGN1cnJlbnRseUFj
dGl2ZUN1ZXMoKSBjb25zdCB7IHJldHVybiBtX2N1cnJlbnRseUFjdGl2ZUN1ZXM7IH0KIAotICAg
IHZvaWQgYWRkVHJhY2soVGV4dFRyYWNrKik7Ci0gICAgdm9pZCByZW1vdmVUcmFjayhUZXh0VHJh
Y2sqKTsKKyAgICB2b2lkIGFkZFRleHRUcmFjayhUZXh0VHJhY2sqKTsKKyAgICB2b2lkIHJlbW92
ZVRleHRUcmFjayhUZXh0VHJhY2sqKTsKICAgICB2b2lkIHJlbW92ZUFsbEluYmFuZFRyYWNrcygp
OwogICAgIHZvaWQgY2xvc2VDYXB0aW9uVHJhY2tzQ2hhbmdlZCgpOwogICAgIHZvaWQgbm90aWZ5
TWVkaWFQbGF5ZXJPZlRleHRUcmFja0NoYW5nZXMoKTsKIAotICAgIHZpcnR1YWwgdm9pZCBkaWRB
ZGRUcmFjayhIVE1MVHJhY2tFbGVtZW50Kik7Ci0gICAgdmlydHVhbCB2b2lkIGRpZFJlbW92ZVRy
YWNrKEhUTUxUcmFja0VsZW1lbnQqKTsKKyAgICB2aXJ0dWFsIHZvaWQgZGlkQWRkVGV4dFRyYWNr
KEhUTUxUcmFja0VsZW1lbnQqKTsKKyAgICB2aXJ0dWFsIHZvaWQgZGlkUmVtb3ZlVGV4dFRyYWNr
KEhUTUxUcmFja0VsZW1lbnQqKTsKIAotICAgIHZpcnR1YWwgdm9pZCBtZWRpYVBsYXllckRpZEFk
ZFRyYWNrKFBhc3NSZWZQdHI8SW5iYW5kVGV4dFRyYWNrUHJpdmF0ZT4pIE9WRVJSSURFOwotICAg
IHZpcnR1YWwgdm9pZCBtZWRpYVBsYXllckRpZFJlbW92ZVRyYWNrKFBhc3NSZWZQdHI8SW5iYW5k
VGV4dFRyYWNrUHJpdmF0ZT4pIE9WRVJSSURFOworICAgIHZpcnR1YWwgdm9pZCBtZWRpYVBsYXll
ckRpZEFkZFRleHRUcmFjayhQYXNzUmVmUHRyPEluYmFuZFRleHRUcmFja1ByaXZhdGU+KSBPVkVS
UklERTsKKyAgICB2aXJ0dWFsIHZvaWQgbWVkaWFQbGF5ZXJEaWRSZW1vdmVUZXh0VHJhY2soUGFz
c1JlZlB0cjxJbmJhbmRUZXh0VHJhY2tQcml2YXRlPikgT1ZFUlJJREU7CiAKICNpZiBVU0UoUExB
VEZPUk1fVEVYVF9UUkFDS19NRU5VKQogICAgIHZpcnR1YWwgdm9pZCBzZXRTZWxlY3RlZFRleHRU
cmFjayhQYXNzUmVmUHRyPFBsYXRmb3JtVGV4dFRyYWNrPikgT1ZFUlJJREU7CmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxUcmFja0VsZW1lbnQuY3BwIGIvU291cmNlL1dlYkNv
cmUvaHRtbC9IVE1MVHJhY2tFbGVtZW50LmNwcAppbmRleCBmYmJiM2U4NWUwZGE2NzgwMTFhZjg0
ZWZjOWE1Nzk5YzYzZjQ2M2Q0Li4wMTA1ODU1ZmNmMjU3MTk3NDljNTE2MDhiNDY0OTJhMjAxYWMx
MzAyIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxUcmFja0VsZW1lbnQuY3Bw
CisrKyBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTFRyYWNrRWxlbWVudC5jcHAKQEAgLTgwLDE0
ICs4MCwxNCBAQCBOb2RlOjpJbnNlcnRpb25Ob3RpZmljYXRpb25SZXF1ZXN0IEhUTUxUcmFja0Vs
ZW1lbnQ6Omluc2VydGVkSW50byhDb250YWluZXJOb2RlKgogICAgIEhUTUxFbGVtZW50OjppbnNl
cnRlZEludG8oaW5zZXJ0aW9uUG9pbnQpOwogICAgIEhUTUxNZWRpYUVsZW1lbnQqIHBhcmVudCA9
IG1lZGlhRWxlbWVudCgpOwogICAgIGlmIChpbnNlcnRpb25Qb2ludCA9PSBwYXJlbnQpCi0gICAg
ICAgIHBhcmVudC0+ZGlkQWRkVHJhY2sodGhpcyk7CisgICAgICAgIHBhcmVudC0+ZGlkQWRkVGV4
dFRyYWNrKHRoaXMpOwogICAgIHJldHVybiBJbnNlcnRpb25Eb25lOwogfQogCiB2b2lkIEhUTUxU
cmFja0VsZW1lbnQ6OnJlbW92ZWRGcm9tKENvbnRhaW5lck5vZGUqIGluc2VydGlvblBvaW50KQog
ewogICAgIGlmICghcGFyZW50Tm9kZSgpICYmIFdlYkNvcmU6OmlzTWVkaWFFbGVtZW50KGluc2Vy
dGlvblBvaW50KSkKLSAgICAgICAgdG9NZWRpYUVsZW1lbnQoaW5zZXJ0aW9uUG9pbnQpLT5kaWRS
ZW1vdmVUcmFjayh0aGlzKTsKKyAgICAgICAgdG9NZWRpYUVsZW1lbnQoaW5zZXJ0aW9uUG9pbnQp
LT5kaWRSZW1vdmVUZXh0VHJhY2sodGhpcyk7CiAgICAgSFRNTEVsZW1lbnQ6OnJlbW92ZWRGcm9t
KGluc2VydGlvblBvaW50KTsKIH0KIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvaHRtbC90
cmFjay9UZXh0VHJhY2suY3BwIGIvU291cmNlL1dlYkNvcmUvaHRtbC90cmFjay9UZXh0VHJhY2su
Y3BwCmluZGV4IDNjMjc0YjFlMTRiOWI5MDYxZmQ4N2Y0MmY4NmFiYTIyZTVjODg0MTAuLjhlMDNm
OGUyYWQyNjMwMTQ0MzIwNTVkMjliM2Y5MjNkOTdkN2IwZjcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJDb3JlL2h0bWwvdHJhY2svVGV4dFRyYWNrLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9odG1s
L3RyYWNrL1RleHRUcmFjay5jcHAKQEAgLTEwOCwxNCArMTA4LDEyIEBAIFRleHRUcmFjayogVGV4
dFRyYWNrOjpjYXB0aW9uTWVudUF1dG9tYXRpY0l0ZW0oKQogfQogCiBUZXh0VHJhY2s6OlRleHRU
cmFjayhTY3JpcHRFeGVjdXRpb25Db250ZXh0KiBjb250ZXh0LCBUZXh0VHJhY2tDbGllbnQqIGNs
aWVudCwgY29uc3QgQXRvbWljU3RyaW5nJiBraW5kLCBjb25zdCBBdG9taWNTdHJpbmcmIGxhYmVs
LCBjb25zdCBBdG9taWNTdHJpbmcmIGxhbmd1YWdlLCBUZXh0VHJhY2tUeXBlIHR5cGUpCi0gICAg
OiBUcmFja0Jhc2UoY29udGV4dCwgVHJhY2tCYXNlOjpUZXh0VHJhY2spCisgICAgOiBUcmFja0Jh
c2UoVHJhY2tCYXNlOjpUZXh0VHJhY2ssIGxhYmVsLCBsYW5ndWFnZSkKICAgICAsIG1fY3Vlcygw
KQorICAgICwgbV9zY3JpcHRFeGVjdXRpb25Db250ZXh0KGNvbnRleHQpCiAjaWYgRU5BQkxFKFdF
QlZUVF9SRUdJT05TKQogICAgICwgbV9yZWdpb25zKDApCiAjZW5kaWYKLSAgICAsIG1fbWVkaWFF
bGVtZW50KDApCi0gICAgLCBtX2xhYmVsKGxhYmVsKQotICAgICwgbV9sYW5ndWFnZShsYW5ndWFn
ZSkKICAgICAsIG1fbW9kZShkaXNhYmxlZEtleXdvcmQoKS5zdHJpbmcoKSkKICAgICAsIG1fY2xp
ZW50KGNsaWVudCkKICAgICAsIG1fdHJhY2tUeXBlKHR5cGUpCkBAIC0xNDMsNiArMTQxLDMxIEBA
IFRleHRUcmFjazo6flRleHRUcmFjaygpCiAgICAgY2xlYXJDbGllbnQoKTsKIH0KIAorY29uc3Qg
QXRvbWljU3RyaW5nJiBUZXh0VHJhY2s6OmludGVyZmFjZU5hbWUoKSBjb25zdAoreworICAgIHJl
dHVybiBldmVudE5hbWVzKCkuaW50ZXJmYWNlRm9yVGV4dFRyYWNrOworfQorCitTY3JpcHRFeGVj
dXRpb25Db250ZXh0KiBUZXh0VHJhY2s6OnNjcmlwdEV4ZWN1dGlvbkNvbnRleHQoKSBjb25zdAor
eworICAgIHJldHVybiBtX3NjcmlwdEV4ZWN1dGlvbkNvbnRleHQ7Cit9CisKK0V2ZW50VGFyZ2V0
RGF0YSogVGV4dFRyYWNrOjpldmVudFRhcmdldERhdGEoKQoreworICAgIHJldHVybiAmbV9ldmVu
dFRhcmdldERhdGE7Cit9CisKK0V2ZW50VGFyZ2V0RGF0YSogVGV4dFRyYWNrOjplbnN1cmVFdmVu
dFRhcmdldERhdGEoKQoreworICAgIHJldHVybiAmbV9ldmVudFRhcmdldERhdGE7Cit9CisKK2Jv
b2wgVGV4dFRyYWNrOjppc1ZhbGlkS2luZChjb25zdCBBdG9taWNTdHJpbmcmIHZhbHVlKSBjb25z
dAoreworICAgIHJldHVybiBUZXh0VHJhY2s6OmlzVmFsaWRLaW5kS2V5d29yZCh2YWx1ZSk7Cit9
CisKIGJvb2wgVGV4dFRyYWNrOjppc1ZhbGlkS2luZEtleXdvcmQoY29uc3QgQXRvbWljU3RyaW5n
JiB2YWx1ZSkKIHsKICAgICBpZiAodmFsdWUgPT0gc3VidGl0bGVzS2V5d29yZCgpKQpAQCAtMTU5
LDE2ICsxODIsMTMgQEAgYm9vbCBUZXh0VHJhY2s6OmlzVmFsaWRLaW5kS2V5d29yZChjb25zdCBB
dG9taWNTdHJpbmcmIHZhbHVlKQogICAgIHJldHVybiBmYWxzZTsKIH0KIAotdm9pZCBUZXh0VHJh
Y2s6OnNldEtpbmQoY29uc3QgQXRvbWljU3RyaW5nJiBraW5kKQordm9pZCBUZXh0VHJhY2s6OnNl
dEtpbmQoY29uc3QgQXRvbWljU3RyaW5nJiBuZXdLaW5kKQogewotICAgIFN0cmluZyBvbGRLaW5k
ID0gbV9raW5kOworICAgIFN0cmluZyBvbGRLaW5kID0ga2luZCgpOwogCi0gICAgaWYgKGlzVmFs
aWRLaW5kS2V5d29yZChraW5kKSkKLSAgICAgICAgbV9raW5kID0ga2luZDsKLSAgICBlbHNlCi0g
ICAgICAgIG1fa2luZCA9IHN1YnRpdGxlc0tleXdvcmQoKTsKKyAgICBUcmFja0Jhc2U6OnNldEtp
bmQobmV3S2luZCk7CiAKLSAgICBpZiAobV9jbGllbnQgJiYgb2xkS2luZCAhPSBtX2tpbmQpCisg
ICAgaWYgKG1fY2xpZW50ICYmIG9sZEtpbmQgIT0ga2luZCgpKQogICAgICAgICBtX2NsaWVudC0+
dGV4dFRyYWNrS2luZENoYW5nZWQodGhpcyk7CiB9CiAKQEAgLTQxMSw3ICs0MzEsNyBAQCB2b2lk
IFRleHRUcmFjazo6aW52YWxpZGF0ZVRyYWNrSW5kZXgoKQogCiBib29sIFRleHRUcmFjazo6aXNS
ZW5kZXJlZCgpCiB7Ci0gICAgaWYgKG1fa2luZCAhPSBjYXB0aW9uc0tleXdvcmQoKSAmJiBtX2tp
bmQgIT0gc3VidGl0bGVzS2V5d29yZCgpKQorICAgIGlmIChraW5kKCkgIT0gY2FwdGlvbnNLZXl3
b3JkKCkgJiYga2luZCgpICE9IHN1YnRpdGxlc0tleXdvcmQoKSkKICAgICAgICAgcmV0dXJuIGZh
bHNlOwogCiAgICAgaWYgKG1fbW9kZSAhPSBzaG93aW5nS2V5d29yZCgpKQpAQCAtNTAyLDE3ICs1
MjIsMTcgQEAgUGFzc1JlZlB0cjxQbGF0Zm9ybVRleHRUcmFjaz4gVGV4dFRyYWNrOjpwbGF0Zm9y
bVRleHRUcmFjaygpCiAgICAgaWYgKG1fcGxhdGZvcm1UZXh0VHJhY2spCiAgICAgICAgIHJldHVy
biBtX3BsYXRmb3JtVGV4dFRyYWNrOwogCi0gICAgUGxhdGZvcm1UZXh0VHJhY2s6OlRyYWNrS2lu
ZCBraW5kID0gUGxhdGZvcm1UZXh0VHJhY2s6OkNhcHRpb247Ci0gICAgaWYgKG1fa2luZCA9PSBz
dWJ0aXRsZXNLZXl3b3JkKCkpCi0gICAgICAgIGtpbmQgPSBQbGF0Zm9ybVRleHRUcmFjazo6U3Vi
dGl0bGU7Ci0gICAgZWxzZSBpZiAobV9raW5kID09IGNhcHRpb25zS2V5d29yZCgpKQotICAgICAg
ICBraW5kID0gUGxhdGZvcm1UZXh0VHJhY2s6OkNhcHRpb247Ci0gICAgZWxzZSBpZiAobV9raW5k
ID09IGRlc2NyaXB0aW9uc0tleXdvcmQoKSkKLSAgICAgICAga2luZCA9IFBsYXRmb3JtVGV4dFRy
YWNrOjpEZXNjcmlwdGlvbjsKLSAgICBlbHNlIGlmIChtX2tpbmQgPT0gY2hhcHRlcnNLZXl3b3Jk
KCkpCi0gICAgICAgIGtpbmQgPSBQbGF0Zm9ybVRleHRUcmFjazo6Q2hhcHRlcjsKLSAgICBlbHNl
IGlmIChtX2tpbmQgPT0gbWV0YWRhdGFLZXl3b3JkKCkpCi0gICAgICAgIGtpbmQgPSBQbGF0Zm9y
bVRleHRUcmFjazo6TWV0YURhdGE7CisgICAgUGxhdGZvcm1UZXh0VHJhY2s6OlRyYWNrS2luZCBw
bGF0Zm9ybUtpbmQgPSBQbGF0Zm9ybVRleHRUcmFjazo6Q2FwdGlvbjsKKyAgICBpZiAoa2luZCgp
ID09IHN1YnRpdGxlc0tleXdvcmQoKSkKKyAgICAgICAgcGxhdGZvcm1LaW5kID0gUGxhdGZvcm1U
ZXh0VHJhY2s6OlN1YnRpdGxlOworICAgIGVsc2UgaWYgKGtpbmQoKSA9PSBjYXB0aW9uc0tleXdv
cmQoKSkKKyAgICAgICAgcGxhdGZvcm1LaW5kID0gUGxhdGZvcm1UZXh0VHJhY2s6OkNhcHRpb247
CisgICAgZWxzZSBpZiAoa2luZCgpID09IGRlc2NyaXB0aW9uc0tleXdvcmQoKSkKKyAgICAgICAg
cGxhdGZvcm1LaW5kID0gUGxhdGZvcm1UZXh0VHJhY2s6OkRlc2NyaXB0aW9uOworICAgIGVsc2Ug
aWYgKGtpbmQoKSA9PSBjaGFwdGVyc0tleXdvcmQoKSkKKyAgICAgICAgcGxhdGZvcm1LaW5kID0g
UGxhdGZvcm1UZXh0VHJhY2s6OkNoYXB0ZXI7CisgICAgZWxzZSBpZiAoa2luZCgpID09IG1ldGFk
YXRhS2V5d29yZCgpKQorICAgICAgICBwbGF0Zm9ybUtpbmQgPSBQbGF0Zm9ybVRleHRUcmFjazo6
TWV0YURhdGE7CiAKICAgICBQbGF0Zm9ybVRleHRUcmFjazo6VHJhY2tUeXBlIHR5cGUgPSBQbGF0
Zm9ybVRleHRUcmFjazo6T3V0T2ZCYW5kOwogICAgIGlmIChtX3RyYWNrVHlwZSA9PSBUcmFja0Vs
ZW1lbnQpCkBAIC01MjIsNyArNTQyLDcgQEAgUGFzc1JlZlB0cjxQbGF0Zm9ybVRleHRUcmFjaz4g
VGV4dFRyYWNrOjpwbGF0Zm9ybVRleHRUcmFjaygpCiAgICAgZWxzZSBpZiAobV90cmFja1R5cGUg
PT0gSW5CYW5kKQogICAgICAgICB0eXBlID0gUGxhdGZvcm1UZXh0VHJhY2s6OkluQmFuZDsKIAot
ICAgIG1fcGxhdGZvcm1UZXh0VHJhY2sgPSBQbGF0Zm9ybVRleHRUcmFjazo6Y3JlYXRlKHRoaXMs
IG1fbGFiZWwsIG1fbGFuZ3VhZ2UsIGtpbmQsIHR5cGUpOworICAgIG1fcGxhdGZvcm1UZXh0VHJh
Y2sgPSBQbGF0Zm9ybVRleHRUcmFjazo6Y3JlYXRlKHRoaXMsIGxhYmVsKCksIGxhbmd1YWdlKCks
IHBsYXRmb3JtS2luZCwgdHlwZSk7CiAKICAgICByZXR1cm4gbV9wbGF0Zm9ybVRleHRUcmFjazsK
IH0KQEAgLTUzNCw3ICs1NTQsNyBAQCBib29sIFRleHRUcmFjazo6aXNNYWluUHJvZ3JhbUNvbnRl
bnQoKSBjb25zdAogICAgIC8vIGRpcmVjdG9ycyBjb21tZW50YXJ5IGlzIG5vdCAibWFpbiBwcm9n
cmFtIiBiZWNhdXNlIGl0IGlzIG5vdCBlc3NlbnRpYWwgZm9yIHRoZSBwcmVzZW50YXRpb24uIEhU
TUw1IGRvZXNuJ3QgaGF2ZQogICAgIC8vIGEgd2F5IHRvIGV4cHJlc3MgdGhpcyBpbiBhIG1hY2hp
bmUtcmVhYmxlIGZvcm0sIGl0IGlzIHR5cGljYWxseSBkb25lIHdpdGggdGhlIHRyYWNrIGxhYmVs
LCBzbyB3ZSBhc3N1bWUgdGhhdCBjYXB0aW9uCiAgICAgLy8gdHJhY2tzIGFyZSBtYWluIGNvbnRl
bnQgYW5kIGFsbCBvdGhlciB0cmFjayB0eXBlcyBhcmUgbm90LgotICAgIHJldHVybiBtX2tpbmQg
PT0gY2FwdGlvbnNLZXl3b3JkKCk7CisgICAgcmV0dXJuIGtpbmQoKSA9PSBjYXB0aW9uc0tleXdv
cmQoKTsKIH0KIAogfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQpkaWZmIC0tZ2l0IGEvU291cmNlL1dl
YkNvcmUvaHRtbC90cmFjay9UZXh0VHJhY2suaCBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvdHJhY2sv
VGV4dFRyYWNrLmgKaW5kZXggNTc2OTQ1YmJlNTIxY2Q2YTJmNmZmZmZkMzdlNTZhZDY2NzI2MGZm
My4uNGJhMzBlNzU2NTU0NWYwNjdiZjkxYmI2OTRiYjM2MTdmZWU3ZmUxMyAxMDA2NDQKLS0tIGEv
U291cmNlL1dlYkNvcmUvaHRtbC90cmFjay9UZXh0VHJhY2suaAorKysgYi9Tb3VyY2UvV2ViQ29y
ZS9odG1sL3RyYWNrL1RleHRUcmFjay5oCkBAIC00MSw3ICs0MSw3IEBACiAKIG5hbWVzcGFjZSBX
ZWJDb3JlIHsKIAotY2xhc3MgSFRNTE1lZGlhRWxlbWVudDsKK2NsYXNzIFNjcmlwdEV4ZWN1dGlv
bkNvbnRleHQ7CiBjbGFzcyBUZXh0VHJhY2s7CiBjbGFzcyBUZXh0VHJhY2tDdWU7CiBjbGFzcyBU
ZXh0VHJhY2tDdWVMaXN0OwpAQCAtNjEsNyArNjEsNyBAQCBwdWJsaWM6CiAgICAgdmlydHVhbCB2
b2lkIHRleHRUcmFja1JlbW92ZUN1ZShUZXh0VHJhY2sqLCBQYXNzUmVmUHRyPFRleHRUcmFja0N1
ZT4pID0gMDsKIH07CiAKLWNsYXNzIFRleHRUcmFjayA6IHB1YmxpYyBUcmFja0Jhc2UKK2NsYXNz
IFRleHRUcmFjayA6IHB1YmxpYyBUcmFja0Jhc2UsIHB1YmxpYyBFdmVudFRhcmdldAogI2lmIFVT
RShQTEFURk9STV9URVhUX1RSQUNLX01FTlUpCiAgICAgLCBwdWJsaWMgUGxhdGZvcm1UZXh0VHJh
Y2tDbGllbnQKICNlbmRpZgpAQCAtNzMsMzIgKzczLDI2IEBAIHB1YmxpYzoKICAgICB9CiAgICAg
dmlydHVhbCB+VGV4dFRyYWNrKCk7CiAKKyAgICB2aXJ0dWFsIGNvbnN0IEF0b21pY1N0cmluZyYg
aW50ZXJmYWNlTmFtZSgpIGNvbnN0OworICAgIHZpcnR1YWwgU2NyaXB0RXhlY3V0aW9uQ29udGV4
dCogc2NyaXB0RXhlY3V0aW9uQ29udGV4dCgpIGNvbnN0OworCiAgICAgc3RhdGljIFRleHRUcmFj
ayogY2FwdGlvbk1lbnVPZmZJdGVtKCk7CiAgICAgc3RhdGljIFRleHRUcmFjayogY2FwdGlvbk1l
bnVBdXRvbWF0aWNJdGVtKCk7CiAKLSAgICB2b2lkIHNldE1lZGlhRWxlbWVudChIVE1MTWVkaWFF
bGVtZW50KiBlbGVtZW50KSB7IG1fbWVkaWFFbGVtZW50ID0gZWxlbWVudDsgfQotICAgIEhUTUxN
ZWRpYUVsZW1lbnQqIG1lZGlhRWxlbWVudCgpIHsgcmV0dXJuIG1fbWVkaWFFbGVtZW50OyB9Ci0K
LSAgICBBdG9taWNTdHJpbmcga2luZCgpIGNvbnN0IHsgcmV0dXJuIG1fa2luZDsgfQotICAgIHZv
aWQgc2V0S2luZChjb25zdCBBdG9taWNTdHJpbmcmKTsKLQogICAgIHN0YXRpYyBjb25zdCBBdG9t
aWNTdHJpbmcmIHN1YnRpdGxlc0tleXdvcmQoKTsKICAgICBzdGF0aWMgY29uc3QgQXRvbWljU3Ry
aW5nJiBjYXB0aW9uc0tleXdvcmQoKTsKICAgICBzdGF0aWMgY29uc3QgQXRvbWljU3RyaW5nJiBk
ZXNjcmlwdGlvbnNLZXl3b3JkKCk7CiAgICAgc3RhdGljIGNvbnN0IEF0b21pY1N0cmluZyYgY2hh
cHRlcnNLZXl3b3JkKCk7CiAgICAgc3RhdGljIGNvbnN0IEF0b21pY1N0cmluZyYgbWV0YWRhdGFL
ZXl3b3JkKCk7CisgICAgdmlydHVhbCBjb25zdCBBdG9taWNTdHJpbmcmIGRlZmF1bHRLaW5kS2V5
d29yZCgpIGNvbnN0IHsgcmV0dXJuIHN1YnRpdGxlc0tleXdvcmQoKTsgfQogICAgIHN0YXRpYyBi
b29sIGlzVmFsaWRLaW5kS2V5d29yZChjb25zdCBBdG9taWNTdHJpbmcmKTsKIAotICAgIEF0b21p
Y1N0cmluZyBsYWJlbCgpIGNvbnN0IHsgcmV0dXJuIG1fbGFiZWw7IH0KLSAgICB2b2lkIHNldExh
YmVsKGNvbnN0IEF0b21pY1N0cmluZyYgbGFiZWwpIHsgbV9sYWJlbCA9IGxhYmVsOyB9Ci0KLSAg
ICBBdG9taWNTdHJpbmcgbGFuZ3VhZ2UoKSBjb25zdCB7IHJldHVybiBtX2xhbmd1YWdlOyB9Ci0g
ICAgdm9pZCBzZXRMYW5ndWFnZShjb25zdCBBdG9taWNTdHJpbmcmIGxhbmd1YWdlKSB7IG1fbGFu
Z3VhZ2UgPSBsYW5ndWFnZTsgfQotCiAgICAgc3RhdGljIGNvbnN0IEF0b21pY1N0cmluZyYgZGlz
YWJsZWRLZXl3b3JkKCk7CiAgICAgc3RhdGljIGNvbnN0IEF0b21pY1N0cmluZyYgaGlkZGVuS2V5
d29yZCgpOwogICAgIHN0YXRpYyBjb25zdCBBdG9taWNTdHJpbmcmIHNob3dpbmdLZXl3b3JkKCk7
CiAKKyAgICB2aXJ0dWFsIHZvaWQgc2V0S2luZChjb25zdCBBdG9taWNTdHJpbmcmKSBPVkVSUklE
RTsKKwogICAgIEF0b21pY1N0cmluZyBtb2RlKCkgY29uc3QgeyByZXR1cm4gbV9tb2RlOyB9CiAg
ICAgdmlydHVhbCB2b2lkIHNldE1vZGUoY29uc3QgQXRvbWljU3RyaW5nJik7CiAKQEAgLTEwOSw4
ICsxMDMsOCBAQCBwdWJsaWM6CiAgICAgVGV4dFRyYWNrQ3VlTGlzdCogY3VlcygpOwogICAgIFRl
eHRUcmFja0N1ZUxpc3QqIGFjdGl2ZUN1ZXMoKSBjb25zdDsKIAotICAgIHZvaWQgY2xlYXJDbGll
bnQoKSB7IG1fY2xpZW50ID0gMDsgfQotICAgIFRleHRUcmFja0NsaWVudCogY2xpZW50KCkgeyBy
ZXR1cm4gbV9jbGllbnQ7IH0KKyAgICB2aXJ0dWFsIHZvaWQgY2xlYXJDbGllbnQoKSBPVkVSUklE
RSB7IG1fY2xpZW50ID0gMDsgfQorICAgIFRleHRUcmFja0NsaWVudCogY2xpZW50KCkgY29uc3Qg
eyByZXR1cm4gbV9jbGllbnQ7IH0KIAogICAgIHZvaWQgYWRkQ3VlKFBhc3NSZWZQdHI8VGV4dFRy
YWNrQ3VlPik7CiAgICAgdm9pZCByZW1vdmVDdWUoVGV4dFRyYWNrQ3VlKiwgRXhjZXB0aW9uQ29k
ZSYpOwpAQCAtMTU0LDE1ICsxNDgsMjUgQEAgcHVibGljOgogICAgIFBhc3NSZWZQdHI8UGxhdGZv
cm1UZXh0VHJhY2s+IHBsYXRmb3JtVGV4dFRyYWNrKCk7CiAjZW5kaWYKIAorICAgIHVzaW5nIFJl
ZkNvdW50ZWQ8VHJhY2tCYXNlPjo6cmVmOworICAgIHVzaW5nIFJlZkNvdW50ZWQ8VHJhY2tCYXNl
Pjo6ZGVyZWY7CisKIHByb3RlY3RlZDoKICAgICBUZXh0VHJhY2soU2NyaXB0RXhlY3V0aW9uQ29u
dGV4dCosIFRleHRUcmFja0NsaWVudCosIGNvbnN0IEF0b21pY1N0cmluZyYga2luZCwgY29uc3Qg
QXRvbWljU3RyaW5nJiBsYWJlbCwgY29uc3QgQXRvbWljU3RyaW5nJiBsYW5ndWFnZSwgVGV4dFRy
YWNrVHlwZSk7CiAjaWYgRU5BQkxFKFZJREVPX1RSQUNLKSAmJiBFTkFCTEUoV0VCVlRUX1JFR0lP
TlMpCiAgICAgVGV4dFRyYWNrUmVnaW9uTGlzdCogcmVnaW9uTGlzdCgpOwogI2VuZGlmCiAKKyAg
ICB2aXJ0dWFsIEV2ZW50VGFyZ2V0RGF0YSogZXZlbnRUYXJnZXREYXRhKCk7CisgICAgdmlydHVh
bCBFdmVudFRhcmdldERhdGEqIGVuc3VyZUV2ZW50VGFyZ2V0RGF0YSgpOworCiAgICAgUmVmUHRy
PFRleHRUcmFja0N1ZUxpc3Q+IG1fY3VlczsKIAogcHJpdmF0ZToKKyAgICB2aXJ0dWFsIGJvb2wg
aXNWYWxpZEtpbmQoY29uc3QgQXRvbWljU3RyaW5nJikgY29uc3QgT1ZFUlJJREU7CisKKyAgICB2
aXJ0dWFsIHZvaWQgcmVmRXZlbnRUYXJnZXQoKSB7IHJlZigpOyB9CisgICAgdmlydHVhbCB2b2lk
IGRlcmVmRXZlbnRUYXJnZXQoKSB7IGRlcmVmKCk7IH0KIAogI2lmIEVOQUJMRShWSURFT19UUkFD
SykgJiYgRU5BQkxFKFdFQlZUVF9SRUdJT05TKQogICAgIFRleHRUcmFja1JlZ2lvbkxpc3QqIGVu
c3VyZVRleHRUcmFja1JlZ2lvbkxpc3QoKTsKQEAgLTE3NywxMCArMTgxLDggQEAgcHJpdmF0ZToK
IAogICAgIFRleHRUcmFja0N1ZUxpc3QqIGVuc3VyZVRleHRUcmFja0N1ZUxpc3QoKTsKIAotICAg
IEhUTUxNZWRpYUVsZW1lbnQqIG1fbWVkaWFFbGVtZW50OwotICAgIEF0b21pY1N0cmluZyBtX2tp
bmQ7Ci0gICAgQXRvbWljU3RyaW5nIG1fbGFiZWw7Ci0gICAgQXRvbWljU3RyaW5nIG1fbGFuZ3Vh
Z2U7CisgICAgU2NyaXB0RXhlY3V0aW9uQ29udGV4dCogbV9zY3JpcHRFeGVjdXRpb25Db250ZXh0
OworICAgIEV2ZW50VGFyZ2V0RGF0YSBtX2V2ZW50VGFyZ2V0RGF0YTsKICAgICBBdG9taWNTdHJp
bmcgbV9tb2RlOwogICAgIFRleHRUcmFja0NsaWVudCogbV9jbGllbnQ7CiAgICAgVGV4dFRyYWNr
VHlwZSBtX3RyYWNrVHlwZTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvdHJhY2sv
VGV4dFRyYWNrTGlzdC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL3RyYWNrL1RleHRUcmFja0xp
c3QuY3BwCmluZGV4IDhhZTU2YzJiMDVlNzRkNjAyOWZiMzRkM2ExZGFjNmQwMDAxNjQ3MjAuLmY3
M2M2OGE2ZjhlNTAwZDRmNzNlNGEzMTVjN2JkMGFmMzcxYmEwYTAgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJDb3JlL2h0bWwvdHJhY2svVGV4dFRyYWNrTGlzdC5jcHAKKysrIGIvU291cmNlL1dlYkNv
cmUvaHRtbC90cmFjay9UZXh0VHJhY2tMaXN0LmNwcApAQCAtMzAsMjMgKzMwLDE2IEBACiAjaW5j
bHVkZSAiVGV4dFRyYWNrTGlzdC5oIgogCiAjaW5jbHVkZSAiRXZlbnROYW1lcy5oIgotI2luY2x1
ZGUgIkhUTUxNZWRpYUVsZW1lbnQuaCIKICNpbmNsdWRlICJJbmJhbmRUZXh0VHJhY2suaCIKICNp
bmNsdWRlICJJbmJhbmRUZXh0VHJhY2tQcml2YXRlLmgiCiAjaW5jbHVkZSAiTG9hZGFibGVUZXh0
VHJhY2suaCIKLSNpbmNsdWRlICJTY3JpcHRFeGVjdXRpb25Db250ZXh0LmgiCiAjaW5jbHVkZSAi
VGV4dFRyYWNrLmgiCi0jaW5jbHVkZSAiVHJhY2tFdmVudC5oIgogCiB1c2luZyBuYW1lc3BhY2Ug
V2ViQ29yZTsKIAogVGV4dFRyYWNrTGlzdDo6VGV4dFRyYWNrTGlzdChIVE1MTWVkaWFFbGVtZW50
KiBvd25lciwgU2NyaXB0RXhlY3V0aW9uQ29udGV4dCogY29udGV4dCkKLSAgICA6IG1fY29udGV4
dChjb250ZXh0KQotICAgICwgbV9vd25lcihvd25lcikKLSAgICAsIG1fcGVuZGluZ0V2ZW50VGlt
ZXIodGhpcywgJlRleHRUcmFja0xpc3Q6OmFzeW5jRXZlbnRUaW1lckZpcmVkKQotICAgICwgbV9k
aXNwYXRjaGluZ0V2ZW50cygwKQorICAgIDogVHJhY2tMaXN0QmFzZShvd25lciwgY29udGV4dCkK
IHsKLSAgICBBU1NFUlQoY29udGV4dC0+aXNEb2N1bWVudCgpKTsKIH0KIAogVGV4dFRyYWNrTGlz
dDo6flRleHRUcmFja0xpc3QoKQpAQCAtNTgsOCArNTEsMTIgQEAgdW5zaWduZWQgVGV4dFRyYWNr
TGlzdDo6bGVuZ3RoKCkgY29uc3QKICAgICByZXR1cm4gbV9hZGRUcmFja1RyYWNrcy5zaXplKCkg
KyBtX2VsZW1lbnRUcmFja3Muc2l6ZSgpICsgbV9pbmJhbmRUcmFja3Muc2l6ZSgpOwogfQogCi1p
bnQgVGV4dFRyYWNrTGlzdDo6Z2V0VHJhY2tJbmRleChUZXh0VHJhY2sgKnRleHRUcmFjaykKK2lu
dCBUZXh0VHJhY2tMaXN0OjpnZXRUcmFja0luZGV4KFRyYWNrQmFzZSAqdHJhY2spCiB7CisgICAg
aWYgKHRyYWNrLT50eXBlKCkgIT0gVHJhY2tCYXNlOjpUZXh0VHJhY2spCisgICAgICAgIHJldHVy
biAtMTsKKyAgICBUZXh0VHJhY2sqIHRleHRUcmFjayA9IHN0YXRpY19jYXN0PFRleHRUcmFjayo+
KHRyYWNrKTsKKwogICAgIGlmICh0ZXh0VHJhY2stPnRyYWNrVHlwZSgpID09IFRleHRUcmFjazo6
VHJhY2tFbGVtZW50KQogICAgICAgICByZXR1cm4gc3RhdGljX2Nhc3Q8TG9hZGFibGVUZXh0VHJh
Y2sqPih0ZXh0VHJhY2spLT50cmFja0VsZW1lbnRJbmRleCgpOwogCkBAIC05OCw3ICs5NSw3IEBA
IGludCBUZXh0VHJhY2tMaXN0OjpnZXRUcmFja0luZGV4UmVsYXRpdmVUb1JlbmRlcmVkVHJhY2tz
KFRleHRUcmFjayAqdGV4dFRyYWNrKQogICAgIH0KIAogICAgIGZvciAoc2l6ZV90IGkgPSAwOyBp
IDwgbV9pbmJhbmRUcmFja3Muc2l6ZSgpOyArK2kpIHsKLSAgICAgICAgaWYgKCFtX2luYmFuZFRy
YWNrc1tpXS0+aXNSZW5kZXJlZCgpKQorICAgICAgICBpZiAoIWdldEluYmFuZFRyYWNrKGkpLT5p
c1JlbmRlcmVkKCkpCiAgICAgICAgICAgICBjb250aW51ZTsKICAgICAgICAgCiAgICAgICAgIGlm
IChtX2luYmFuZFRyYWNrc1tpXSA9PSB0ZXh0VHJhY2spCkBAIC0xMTEsNyArMTA4LDcgQEAgaW50
IFRleHRUcmFja0xpc3Q6OmdldFRyYWNrSW5kZXhSZWxhdGl2ZVRvUmVuZGVyZWRUcmFja3MoVGV4
dFRyYWNrICp0ZXh0VHJhY2spCiAgICAgcmV0dXJuIC0xOwogfQogCi1UZXh0VHJhY2sqIFRleHRU
cmFja0xpc3Q6Oml0ZW0odW5zaWduZWQgaW5kZXgpCitUZXh0VHJhY2sqIFRleHRUcmFja0xpc3Q6
Oml0ZW0odW5zaWduZWQgaW5kZXgpIGNvbnN0CiB7CiAgICAgLy8gNC44LjEwLjEyLjEgVGV4dCB0
cmFjayBtb2RlbAogICAgIC8vIFRoZSB0ZXh0IHRyYWNrcyBhcmUgc29ydGVkIGFzIGZvbGxvd3M6
CkBAIC0xMjksMzYgKzEyNiw0NSBAQCBUZXh0VHJhY2sqIFRleHRUcmFja0xpc3Q6Oml0ZW0odW5z
aWduZWQgaW5kZXgpCiAKICAgICBpbmRleCAtPSBtX2FkZFRyYWNrVHJhY2tzLnNpemUoKTsKICAg
ICBpZiAoaW5kZXggPCBtX2luYmFuZFRyYWNrcy5zaXplKCkpCi0gICAgICAgIHJldHVybiBtX2lu
YmFuZFRyYWNrc1tpbmRleF0uZ2V0KCk7CisgICAgICAgIHJldHVybiBnZXRJbmJhbmRUcmFjayhp
bmRleCk7CiAKICAgICByZXR1cm4gMDsKIH0KIAotdm9pZCBUZXh0VHJhY2tMaXN0OjppbnZhbGlk
YXRlVHJhY2tJbmRleGVzQWZ0ZXJUcmFjayhUZXh0VHJhY2sqIHRyYWNrKQorVGV4dFRyYWNrKiBU
ZXh0VHJhY2tMaXN0OjpnZXRJbmJhbmRUcmFjayh1bnNpZ25lZCBpbmRleCkgY29uc3QKIHsKLSAg
ICBWZWN0b3I8UmVmUHRyPFRleHRUcmFjaz4gPiogdHJhY2tzID0gMDsKKyAgICBUcmFja0Jhc2Uq
IHRyYWNrID0gbV9pbmJhbmRUcmFja3NbaW5kZXhdLmdldCgpOworICAgIEFTU0VSVCh0cmFjay0+
dHlwZSgpID09IFRyYWNrQmFzZTo6VGV4dFRyYWNrKTsKKyAgICByZXR1cm4gc3RhdGljX2Nhc3Q8
VGV4dFRyYWNrKj4odHJhY2spOworfQogCit2b2lkIFRleHRUcmFja0xpc3Q6OmludmFsaWRhdGVU
cmFja0luZGV4ZXNBZnRlclRyYWNrKFRleHRUcmFjayogdHJhY2spCit7CisgICAgc2l6ZV90IGlu
ZGV4ID0gbm90Rm91bmQ7CiAgICAgaWYgKHRyYWNrLT50cmFja1R5cGUoKSA9PSBUZXh0VHJhY2s6
OlRyYWNrRWxlbWVudCkgewotICAgICAgICB0cmFja3MgPSAmbV9lbGVtZW50VHJhY2tzOworICAg
ICAgICBpbmRleCA9IG1fZWxlbWVudFRyYWNrcy5maW5kKHRyYWNrKTsKKyAgICAgICAgaWYgKGlu
ZGV4ID09IG5vdEZvdW5kKQorICAgICAgICAgICAgcmV0dXJuOworICAgICAgICBmb3IgKHNpemVf
dCBpID0gaW5kZXg7IGkgPCBtX2VsZW1lbnRUcmFja3Muc2l6ZSgpOyArK2kpCisgICAgICAgICAg
ICBtX2VsZW1lbnRUcmFja3MuYXQoaW5kZXgpLT5pbnZhbGlkYXRlVHJhY2tJbmRleCgpOworICAg
IH0gZWxzZSBpZiAodHJhY2stPnRyYWNrVHlwZSgpID09IFRleHRUcmFjazo6QWRkVHJhY2spIHsK
KyAgICAgICAgaWYgKGluZGV4ID09IG5vdEZvdW5kKSB7CisgICAgICAgICAgICBpbmRleCA9IG1f
YWRkVHJhY2tUcmFja3MuZmluZCh0cmFjayk7CisgICAgICAgICAgICBpZiAoaW5kZXggPT0gbm90
Rm91bmQpCisgICAgICAgICAgICAgICAgcmV0dXJuOworICAgICAgICB9CiAgICAgICAgIGZvciAo
c2l6ZV90IGkgPSAwOyBpIDwgbV9hZGRUcmFja1RyYWNrcy5zaXplKCk7ICsraSkKICAgICAgICAg
ICAgIG1fYWRkVHJhY2tUcmFja3NbaV0tPmludmFsaWRhdGVUcmFja0luZGV4KCk7CisgICAgfSBl
bHNlIGlmICh0cmFjay0+dHJhY2tUeXBlKCkgPT0gVGV4dFRyYWNrOjpJbkJhbmQpIHsKKyAgICAg
ICAgaWYgKGluZGV4ID09IG5vdEZvdW5kKSB7CisgICAgICAgICAgICBpbmRleCA9IG1faW5iYW5k
VHJhY2tzLmZpbmQodHJhY2spOworICAgICAgICAgICAgaWYgKGluZGV4ID09IG5vdEZvdW5kKQor
ICAgICAgICAgICAgICAgIHJldHVybjsKKyAgICAgICAgfQogICAgICAgICBmb3IgKHNpemVfdCBp
ID0gMDsgaSA8IG1faW5iYW5kVHJhY2tzLnNpemUoKTsgKytpKQotICAgICAgICAgICAgbV9pbmJh
bmRUcmFja3NbaV0tPmludmFsaWRhdGVUcmFja0luZGV4KCk7Ci0gICAgfSBlbHNlIGlmICh0cmFj
ay0+dHJhY2tUeXBlKCkgPT0gVGV4dFRyYWNrOjpBZGRUcmFjaykgewotICAgICAgICB0cmFja3Mg
PSAmbV9hZGRUcmFja1RyYWNrczsKLSAgICAgICAgZm9yIChzaXplX3QgaSA9IDA7IGkgPCBtX2lu
YmFuZFRyYWNrcy5zaXplKCk7ICsraSkKLSAgICAgICAgICAgIG1faW5iYW5kVHJhY2tzW2ldLT5p
bnZhbGlkYXRlVHJhY2tJbmRleCgpOwotICAgIH0gZWxzZSBpZiAodHJhY2stPnRyYWNrVHlwZSgp
ID09IFRleHRUcmFjazo6SW5CYW5kKQotICAgICAgICB0cmFja3MgPSAmbV9pbmJhbmRUcmFja3M7
Ci0gICAgZWxzZQorICAgICAgICAgICAgZ2V0SW5iYW5kVHJhY2soaSktPmludmFsaWRhdGVUcmFj
a0luZGV4KCk7CisgICAgfSBlbHNlCiAgICAgICAgIEFTU0VSVF9OT1RfUkVBQ0hFRCgpOwotCi0g
ICAgc2l6ZV90IGluZGV4ID0gdHJhY2tzLT5maW5kKHRyYWNrKTsKLSAgICBpZiAoaW5kZXggPT0g
bm90Rm91bmQpCi0gICAgICAgIHJldHVybjsKLQotICAgIGZvciAoc2l6ZV90IGkgPSBpbmRleDsg
aSA8IHRyYWNrcy0+c2l6ZSgpOyArK2kpCi0gICAgICAgIHRyYWNrcy0+YXQoaW5kZXgpLT5pbnZh
bGlkYXRlVHJhY2tJbmRleCgpOwogfQogCiB2b2lkIFRleHRUcmFja0xpc3Q6OmFwcGVuZChQYXNz
UmVmUHRyPFRleHRUcmFjaz4gcHJwVHJhY2spCkBAIC0xODAsNTEgKzE4Niw2MCBAQCB2b2lkIFRl
eHRUcmFja0xpc3Q6OmFwcGVuZChQYXNzUmVmUHRyPFRleHRUcmFjaz4gcHJwVHJhY2spCiAKICAg
ICBpbnZhbGlkYXRlVHJhY2tJbmRleGVzQWZ0ZXJUcmFjayh0cmFjay5nZXQoKSk7CiAKLSAgICBB
U1NFUlQoIXRyYWNrLT5tZWRpYUVsZW1lbnQoKSB8fCB0cmFjay0+bWVkaWFFbGVtZW50KCkgPT0g
bV9vd25lcik7Ci0gICAgdHJhY2stPnNldE1lZGlhRWxlbWVudChtX293bmVyKTsKKyAgICBBU1NF
UlQoIXRyYWNrLT5tZWRpYUVsZW1lbnQoKSB8fCB0cmFjay0+bWVkaWFFbGVtZW50KCkgPT0gb3du
ZXIoKSk7CisgICAgdHJhY2stPnNldE1lZGlhRWxlbWVudChvd25lcigpKTsKIAogICAgIHNjaGVk
dWxlQWRkVHJhY2tFdmVudCh0cmFjay5yZWxlYXNlKCkpOwogfQogCi12b2lkIFRleHRUcmFja0xp
c3Q6OnJlbW92ZShUZXh0VHJhY2sqIHRyYWNrKQordm9pZCBUZXh0VHJhY2tMaXN0OjpyZW1vdmUo
VHJhY2tCYXNlKiB0cmFjaykKIHsKLSAgICBWZWN0b3I8UmVmUHRyPFRleHRUcmFjaz4gPiogdHJh
Y2tzID0gMDsKLQotICAgIGlmICh0cmFjay0+dHJhY2tUeXBlKCkgPT0gVGV4dFRyYWNrOjpUcmFj
a0VsZW1lbnQpCi0gICAgICAgIHRyYWNrcyA9ICZtX2VsZW1lbnRUcmFja3M7Ci0gICAgZWxzZSBp
ZiAodHJhY2stPnRyYWNrVHlwZSgpID09IFRleHRUcmFjazo6QWRkVHJhY2spCi0gICAgICAgIHRy
YWNrcyA9ICZtX2FkZFRyYWNrVHJhY2tzOwotICAgIGVsc2UgaWYgKHRyYWNrLT50cmFja1R5cGUo
KSA9PSBUZXh0VHJhY2s6OkluQmFuZCkKLSAgICAgICAgdHJhY2tzID0gJm1faW5iYW5kVHJhY2tz
OworICAgIGlmICh0cmFjay0+dHlwZSgpICE9IFRyYWNrQmFzZTo6VGV4dFRyYWNrKQorICAgICAg
ICByZXR1cm47CisgICAgVGV4dFRyYWNrKiB0ZXh0VHJhY2sgPSBzdGF0aWNfY2FzdDxUZXh0VHJh
Y2sqPih0cmFjayk7CisKKyAgICBzaXplX3QgaW5kZXggPSBub3RGb3VuZDsKKyAgICBpZiAodGV4
dFRyYWNrLT50cmFja1R5cGUoKSA9PSBUZXh0VHJhY2s6OlRyYWNrRWxlbWVudCkKKyAgICAgICAg
aW5kZXggPSBtX2VsZW1lbnRUcmFja3MuZmluZCh0ZXh0VHJhY2spOworICAgIGVsc2UgaWYgKHRl
eHRUcmFjay0+dHJhY2tUeXBlKCkgPT0gVGV4dFRyYWNrOjpBZGRUcmFjaykKKyAgICAgICAgaW5k
ZXggPSBtX2FkZFRyYWNrVHJhY2tzLmZpbmQodGV4dFRyYWNrKTsKKyAgICBlbHNlIGlmICh0ZXh0
VHJhY2stPnRyYWNrVHlwZSgpID09IFRleHRUcmFjazo6SW5CYW5kKQorICAgICAgICBpbmRleCA9
IG1faW5iYW5kVHJhY2tzLmZpbmQodGV4dFRyYWNrKTsKICAgICBlbHNlCiAgICAgICAgIEFTU0VS
VF9OT1RfUkVBQ0hFRCgpOwogCi0gICAgc2l6ZV90IGluZGV4ID0gdHJhY2tzLT5maW5kKHRyYWNr
KTsKICAgICBpZiAoaW5kZXggPT0gbm90Rm91bmQpCiAgICAgICAgIHJldHVybjsKIAotICAgIGlu
dmFsaWRhdGVUcmFja0luZGV4ZXNBZnRlclRyYWNrKHRyYWNrKTsKKyAgICBpbnZhbGlkYXRlVHJh
Y2tJbmRleGVzQWZ0ZXJUcmFjayh0ZXh0VHJhY2spOwogCi0gICAgQVNTRVJUKCF0cmFjay0+bWVk
aWFFbGVtZW50KCkgfHwgdHJhY2stPm1lZGlhRWxlbWVudCgpID09IG1fb3duZXIpOworICAgIEFT
U0VSVCghdHJhY2stPm1lZGlhRWxlbWVudCgpIHx8IHRyYWNrLT5tZWRpYUVsZW1lbnQoKSA9PSBv
d25lcigpKTsKICAgICB0cmFjay0+c2V0TWVkaWFFbGVtZW50KDApOwogCi0gICAgdHJhY2tzLT5y
ZW1vdmUoaW5kZXgpOworICAgIGlmICh0ZXh0VHJhY2stPnRyYWNrVHlwZSgpID09IFRleHRUcmFj
azo6VHJhY2tFbGVtZW50KQorICAgICAgICBtX2VsZW1lbnRUcmFja3MucmVtb3ZlKGluZGV4KTsK
KyAgICBlbHNlIGlmICh0ZXh0VHJhY2stPnRyYWNrVHlwZSgpID09IFRleHRUcmFjazo6QWRkVHJh
Y2spCisgICAgICAgIG1fYWRkVHJhY2tUcmFja3MucmVtb3ZlKGluZGV4KTsKKyAgICBlbHNlIGlm
ICh0ZXh0VHJhY2stPnRyYWNrVHlwZSgpID09IFRleHRUcmFjazo6SW5CYW5kKQorICAgICAgICBt
X2luYmFuZFRyYWNrcy5yZW1vdmUoaW5kZXgpOworICAgIGVsc2UKKyAgICAgICAgQVNTRVJUX05P
VF9SRUFDSEVEKCk7CiB9CiAKLWJvb2wgVGV4dFRyYWNrTGlzdDo6Y29udGFpbnMoVGV4dFRyYWNr
KiB0cmFjaykgY29uc3QKK2Jvb2wgVGV4dFRyYWNrTGlzdDo6Y29udGFpbnMoVHJhY2tCYXNlKiB0
cmFjaykgY29uc3QKIHsKLSAgICBjb25zdCBWZWN0b3I8UmVmUHRyPFRleHRUcmFjaz4gPiogdHJh
Y2tzID0gMDsKLSAgICAKLSAgICBpZiAodHJhY2stPnRyYWNrVHlwZSgpID09IFRleHRUcmFjazo6
VHJhY2tFbGVtZW50KQotICAgICAgICB0cmFja3MgPSAmbV9lbGVtZW50VHJhY2tzOwotICAgIGVs
c2UgaWYgKHRyYWNrLT50cmFja1R5cGUoKSA9PSBUZXh0VHJhY2s6OkFkZFRyYWNrKQotICAgICAg
ICB0cmFja3MgPSAmbV9hZGRUcmFja1RyYWNrczsKLSAgICBlbHNlIGlmICh0cmFjay0+dHJhY2tU
eXBlKCkgPT0gVGV4dFRyYWNrOjpJbkJhbmQpCi0gICAgICAgIHRyYWNrcyA9ICZtX2luYmFuZFRy
YWNrczsKLSAgICBlbHNlCi0gICAgICAgIEFTU0VSVF9OT1RfUkVBQ0hFRCgpOworICAgIGlmICh0
cmFjay0+dHlwZSgpICE9IFRyYWNrQmFzZTo6VGV4dFRyYWNrKQorICAgICAgICByZXR1cm4gZmFs
c2U7CisgICAgVGV4dFRyYWNrKiB0ZXh0VHJhY2sgPSBzdGF0aWNfY2FzdDxUZXh0VHJhY2sqPih0
cmFjayk7CiAgICAgCi0gICAgcmV0dXJuIHRyYWNrcy0+ZmluZCh0cmFjaykgIT0gbm90Rm91bmQ7
CisgICAgaWYgKHRleHRUcmFjay0+dHJhY2tUeXBlKCkgPT0gVGV4dFRyYWNrOjpUcmFja0VsZW1l
bnQpCisgICAgICAgIHJldHVybiBtX2VsZW1lbnRUcmFja3MuZmluZCh0cmFjaykgIT0gbm90Rm91
bmQ7CisgICAgaWYgKHRleHRUcmFjay0+dHJhY2tUeXBlKCkgPT0gVGV4dFRyYWNrOjpBZGRUcmFj
aykKKyAgICAgICAgcmV0dXJuIG1fYWRkVHJhY2tUcmFja3MuZmluZCh0cmFjaykgIT0gbm90Rm91
bmQ7CisgICAgaWYgKHRleHRUcmFjay0+dHJhY2tUeXBlKCkgPT0gVGV4dFRyYWNrOjpJbkJhbmQp
CisgICAgICAgIHJldHVybiBtX2luYmFuZFRyYWNrcy5maW5kKHRyYWNrKSAhPSBub3RGb3VuZDsK
KyAgICBBU1NFUlRfTk9UX1JFQUNIRUQoKTsKKyAgICByZXR1cm4gZmFsc2U7CiB9CiAKIGNvbnN0
IEF0b21pY1N0cmluZyYgVGV4dFRyYWNrTGlzdDo6aW50ZXJmYWNlTmFtZSgpIGNvbnN0CkBAIC0y
MzIsNDEgKzI0Nyw0IEBAIGNvbnN0IEF0b21pY1N0cmluZyYgVGV4dFRyYWNrTGlzdDo6aW50ZXJm
YWNlTmFtZSgpIGNvbnN0CiAgICAgcmV0dXJuIGV2ZW50TmFtZXMoKS5pbnRlcmZhY2VGb3JUZXh0
VHJhY2tMaXN0OwogfQogCi12b2lkIFRleHRUcmFja0xpc3Q6OnNjaGVkdWxlQWRkVHJhY2tFdmVu
dChQYXNzUmVmUHRyPFRleHRUcmFjaz4gdHJhY2spCi17Ci0gICAgLy8gNC44LjEwLjEyLjMgU291
cmNpbmcgb3V0LW9mLWJhbmQgdGV4dCB0cmFja3MKLSAgICAvLyA0LjguMTAuMTIuNCBUZXh0IHRy
YWNrIEFQSQotICAgIC8vIC4uLiB0aGVuIHF1ZXVlIGEgdGFzayB0byBmaXJlIGFuIGV2ZW50IHdp
dGggdGhlIG5hbWUgYWRkdHJhY2ssIHRoYXQgZG9lcyBub3QgCi0gICAgLy8gYnViYmxlIGFuZCBp
cyBub3QgY2FuY2VsYWJsZSwgYW5kIHRoYXQgdXNlcyB0aGUgVHJhY2tFdmVudCBpbnRlcmZhY2Us
IHdpdGggCi0gICAgLy8gdGhlIHRyYWNrIGF0dHJpYnV0ZSBpbml0aWFsaXplZCB0byB0aGUgdGV4
dCB0cmFjaydzIFRleHRUcmFjayBvYmplY3QsIGF0IAotICAgIC8vIHRoZSBtZWRpYSBlbGVtZW50
J3MgdGV4dFRyYWNrcyBhdHRyaWJ1dGUncyBUZXh0VHJhY2tMaXN0IG9iamVjdC4KLQotICAgIFJl
ZlB0cjxUZXh0VHJhY2s+IHRyYWNrUmVmID0gdHJhY2s7Ci0gICAgVHJhY2tFdmVudEluaXQgaW5p
dGlhbGl6ZXI7Ci0gICAgaW5pdGlhbGl6ZXIudHJhY2sgPSB0cmFja1JlZjsKLSAgICBpbml0aWFs
aXplci5idWJibGVzID0gZmFsc2U7Ci0gICAgaW5pdGlhbGl6ZXIuY2FuY2VsYWJsZSA9IGZhbHNl
OwotCi0gICAgbV9wZW5kaW5nRXZlbnRzLmFwcGVuZChUcmFja0V2ZW50OjpjcmVhdGUoZXZlbnRO
YW1lcygpLmFkZHRyYWNrRXZlbnQsIGluaXRpYWxpemVyKSk7Ci0gICAgaWYgKCFtX3BlbmRpbmdF
dmVudFRpbWVyLmlzQWN0aXZlKCkpCi0gICAgICAgIG1fcGVuZGluZ0V2ZW50VGltZXIuc3RhcnRP
bmVTaG90KDApOwotfQotCi12b2lkIFRleHRUcmFja0xpc3Q6OmFzeW5jRXZlbnRUaW1lckZpcmVk
KFRpbWVyPFRleHRUcmFja0xpc3Q+KikKLXsKLSAgICBWZWN0b3I8UmVmUHRyPEV2ZW50PiA+IHBl
bmRpbmdFdmVudHM7Ci0KLSAgICArK21fZGlzcGF0Y2hpbmdFdmVudHM7Ci0gICAgbV9wZW5kaW5n
RXZlbnRzLnN3YXAocGVuZGluZ0V2ZW50cyk7Ci0gICAgc2l6ZV90IGNvdW50ID0gcGVuZGluZ0V2
ZW50cy5zaXplKCk7Ci0gICAgZm9yIChzaXplX3QgaW5kZXggPSAwOyBpbmRleCA8IGNvdW50OyAr
K2luZGV4KQotICAgICAgICBkaXNwYXRjaEV2ZW50KHBlbmRpbmdFdmVudHNbaW5kZXhdLnJlbGVh
c2UoKSwgSUdOT1JFX0VYQ0VQVElPTik7Ci0gICAgLS1tX2Rpc3BhdGNoaW5nRXZlbnRzOwotfQot
Ci1Ob2RlKiBUZXh0VHJhY2tMaXN0Ojpvd25lcigpIGNvbnN0Ci17Ci0gICAgcmV0dXJuIG1fb3du
ZXI7Ci19Ci0KICNlbmRpZgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvaHRtbC90cmFjay9U
ZXh0VHJhY2tMaXN0LmggYi9Tb3VyY2UvV2ViQ29yZS9odG1sL3RyYWNrL1RleHRUcmFja0xpc3Qu
aAppbmRleCAxZWUxNWM5M2M5ODc5ZTVjOWFhNWU1ZDRiNjkxZDQ3YzA1NDYyYTIxLi41NDkwZGVi
NjdmM2Q1ZjA3YzQ2MTcxYjkzY2Y5ZWU3MmY4MjQ4YzI1IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2Vi
Q29yZS9odG1sL3RyYWNrL1RleHRUcmFja0xpc3QuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9odG1s
L3RyYWNrL1RleHRUcmFja0xpc3QuaApAQCAtMjgsMjEgKzI4LDEzIEBACiAKICNpZiBFTkFCTEUo
VklERU9fVFJBQ0spCiAKLSNpbmNsdWRlICJFdmVudExpc3RlbmVyLmgiCi0jaW5jbHVkZSAiRXZl
bnRUYXJnZXQuaCIKLSNpbmNsdWRlICJUaW1lci5oIgotI2luY2x1ZGUgPGFsZ29yaXRobT4KLSNp
bmNsdWRlIDx3dGYvUGFzc1JlZlB0ci5oPgotI2luY2x1ZGUgPHd0Zi9SZWZDb3VudGVkLmg+Ci0j
aW5jbHVkZSA8d3RmL1ZlY3Rvci5oPgorI2luY2x1ZGUgIlRyYWNrTGlzdEJhc2UuaCIKIAogbmFt
ZXNwYWNlIFdlYkNvcmUgewogCi1jbGFzcyBIVE1MTWVkaWFFbGVtZW50OwogY2xhc3MgVGV4dFRy
YWNrOwotY2xhc3MgVGV4dFRyYWNrTGlzdDsKIAotY2xhc3MgVGV4dFRyYWNrTGlzdCA6IHB1Ymxp
YyBSZWZDb3VudGVkPFRleHRUcmFja0xpc3Q+LCBwdWJsaWMgRXZlbnRUYXJnZXQgeworY2xhc3Mg
VGV4dFRyYWNrTGlzdCA6IHB1YmxpYyBUcmFja0xpc3RCYXNlIHsKIHB1YmxpYzoKICAgICBzdGF0
aWMgUGFzc1JlZlB0cjxUZXh0VHJhY2tMaXN0PiBjcmVhdGUoSFRNTE1lZGlhRWxlbWVudCogb3du
ZXIsIFNjcmlwdEV4ZWN1dGlvbkNvbnRleHQqIGNvbnRleHQpCiAgICAgewpAQCAtNTAsNTQgKzQy
LDI3IEBAIHB1YmxpYzoKICAgICB9CiAgICAgflRleHRUcmFja0xpc3QoKTsKIAotICAgIHVuc2ln
bmVkIGxlbmd0aCgpIGNvbnN0OwotICAgIGludCBnZXRUcmFja0luZGV4KFRleHRUcmFjayopOwog
ICAgIGludCBnZXRUcmFja0luZGV4UmVsYXRpdmVUb1JlbmRlcmVkVHJhY2tzKFRleHRUcmFjayop
OwotICAgIGJvb2wgY29udGFpbnMoVGV4dFRyYWNrKikgY29uc3Q7CiAKLSAgICBUZXh0VHJhY2sq
IGl0ZW0odW5zaWduZWQgaW5kZXgpOworICAgIHZpcnR1YWwgdW5zaWduZWQgbGVuZ3RoKCkgY29u
c3QgT1ZFUlJJREU7CisgICAgdmlydHVhbCBpbnQgZ2V0VHJhY2tJbmRleChUcmFja0Jhc2UqKSBP
VkVSUklERTsKKyAgICB2aXJ0dWFsIGJvb2wgY29udGFpbnMoVHJhY2tCYXNlKikgY29uc3QgT1ZF
UlJJREU7CisKKyAgICBUZXh0VHJhY2sqIGl0ZW0odW5zaWduZWQgaW5kZXgpIGNvbnN0OwogICAg
IHZvaWQgYXBwZW5kKFBhc3NSZWZQdHI8VGV4dFRyYWNrPik7Ci0gICAgdm9pZCByZW1vdmUoVGV4
dFRyYWNrKik7CisgICAgdmlydHVhbCB2b2lkIHJlbW92ZShUcmFja0Jhc2UqKSBPVkVSUklERTsK
IAogICAgIC8vIEV2ZW50VGFyZ2V0CiAgICAgdmlydHVhbCBjb25zdCBBdG9taWNTdHJpbmcmIGlu
dGVyZmFjZU5hbWUoKSBjb25zdDsKLSAgICB1c2luZyBSZWZDb3VudGVkPFRleHRUcmFja0xpc3Q+
OjpyZWY7Ci0gICAgdXNpbmcgUmVmQ291bnRlZDxUZXh0VHJhY2tMaXN0Pjo6ZGVyZWY7Ci0gICAg
dmlydHVhbCBTY3JpcHRFeGVjdXRpb25Db250ZXh0KiBzY3JpcHRFeGVjdXRpb25Db250ZXh0KCkg
Y29uc3QgeyByZXR1cm4gbV9jb250ZXh0OyB9Ci0KLSAgICBERUZJTkVfQVRUUklCVVRFX0VWRU5U
X0xJU1RFTkVSKGFkZHRyYWNrKTsKLQotICAgIHZvaWQgY2xlYXJPd25lcigpIHsgbV9vd25lciA9
IDA7IH0KLSAgICBOb2RlKiBvd25lcigpIGNvbnN0OwotCi0gICAgYm9vbCBpc0ZpcmluZ0V2ZW50
TGlzdGVuZXJzKCkgeyByZXR1cm4gbV9kaXNwYXRjaGluZ0V2ZW50czsgfQogCiBwcml2YXRlOgog
ICAgIFRleHRUcmFja0xpc3QoSFRNTE1lZGlhRWxlbWVudCosIFNjcmlwdEV4ZWN1dGlvbkNvbnRl
eHQqKTsKIAotICAgIC8vIEV2ZW50VGFyZ2V0Ci0gICAgdmlydHVhbCB2b2lkIHJlZkV2ZW50VGFy
Z2V0KCkgeyByZWYoKTsgfQotICAgIHZpcnR1YWwgdm9pZCBkZXJlZkV2ZW50VGFyZ2V0KCkgeyBk
ZXJlZigpOyB9Ci0gICAgdmlydHVhbCBFdmVudFRhcmdldERhdGEqIGV2ZW50VGFyZ2V0RGF0YSgp
IHsgcmV0dXJuICZtX2V2ZW50VGFyZ2V0RGF0YTsgfQotICAgIHZpcnR1YWwgRXZlbnRUYXJnZXRE
YXRhKiBlbnN1cmVFdmVudFRhcmdldERhdGEoKSB7IHJldHVybiAmbV9ldmVudFRhcmdldERhdGE7
IH0KLQotICAgIHZvaWQgc2NoZWR1bGVBZGRUcmFja0V2ZW50KFBhc3NSZWZQdHI8VGV4dFRyYWNr
Pik7Ci0gICAgdm9pZCBhc3luY0V2ZW50VGltZXJGaXJlZChUaW1lcjxUZXh0VHJhY2tMaXN0Piop
OwotCisgICAgVGV4dFRyYWNrKiBnZXRJbmJhbmRUcmFjayh1bnNpZ25lZCkgY29uc3Q7CiAgICAg
dm9pZCBpbnZhbGlkYXRlVHJhY2tJbmRleGVzQWZ0ZXJUcmFjayhUZXh0VHJhY2sqKTsKIAotICAg
IFNjcmlwdEV4ZWN1dGlvbkNvbnRleHQqIG1fY29udGV4dDsKLSAgICBIVE1MTWVkaWFFbGVtZW50
KiBtX293bmVyOwotCi0gICAgVmVjdG9yPFJlZlB0cjxFdmVudD4gPiBtX3BlbmRpbmdFdmVudHM7
Ci0gICAgVGltZXI8VGV4dFRyYWNrTGlzdD4gbV9wZW5kaW5nRXZlbnRUaW1lcjsKLQotICAgIEV2
ZW50VGFyZ2V0RGF0YSBtX2V2ZW50VGFyZ2V0RGF0YTsKICAgICBWZWN0b3I8UmVmUHRyPFRleHRU
cmFjaz4gPiBtX2FkZFRyYWNrVHJhY2tzOwogICAgIFZlY3RvcjxSZWZQdHI8VGV4dFRyYWNrPiA+
IG1fZWxlbWVudFRyYWNrczsKLSAgICBWZWN0b3I8UmVmUHRyPFRleHRUcmFjaz4gPiBtX2luYmFu
ZFRyYWNrczsKLQotICAgIGludCBtX2Rpc3BhdGNoaW5nRXZlbnRzOwogfTsKIAogfSAvLyBuYW1l
c3BhY2UgV2ViQ29yZQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvaHRtbC90cmFjay9UcmFj
a0Jhc2UuY3BwIGIvU291cmNlL1dlYkNvcmUvaHRtbC90cmFjay9UcmFja0Jhc2UuY3BwCmluZGV4
IDZhMmMzNTgyM2U2MTk2MmEzN2M5ZjhmNGNlZmQ5ODlkZGFiNTBkZmUuLmRlNGUzODU3NGNkODE4
MDJhNmFlMDEwMWEzMDBjNmIyOTBiOTgyYWMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2h0
bWwvdHJhY2svVHJhY2tCYXNlLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL3RyYWNrL1Ry
YWNrQmFzZS5jcHAKQEAgLTMwLDggKzMwLDEwIEBACiAKIG5hbWVzcGFjZSBXZWJDb3JlIHsKIAot
VHJhY2tCYXNlOjpUcmFja0Jhc2UoU2NyaXB0RXhlY3V0aW9uQ29udGV4dCogY29udGV4dCwgVHlw
ZSB0eXBlKQotICAgIDogbV9zY3JpcHRFeGVjdXRpb25Db250ZXh0KGNvbnRleHQpCitUcmFja0Jh
c2U6OlRyYWNrQmFzZShUeXBlIHR5cGUsIGNvbnN0IEF0b21pY1N0cmluZyYgbGFiZWwsIGNvbnN0
IEF0b21pY1N0cmluZyYgbGFuZ3VhZ2UpCisgICAgOiBtX21lZGlhRWxlbWVudCgwKQorICAgICwg
bV9sYWJlbChsYWJlbCkKKyAgICAsIG1fbGFuZ3VhZ2UobGFuZ3VhZ2UpCiB7CiAgICAgQVNTRVJU
KHR5cGUgIT0gQmFzZVRyYWNrKTsKICAgICBtX3R5cGUgPSB0eXBlOwpAQCAtNDEsMjQgKzQzLDE0
IEBAIFRyYWNrQmFzZTo6flRyYWNrQmFzZSgpCiB7CiB9CiAKLWNvbnN0IEF0b21pY1N0cmluZyYg
VHJhY2tCYXNlOjppbnRlcmZhY2VOYW1lKCkgY29uc3QKK3ZvaWQgVHJhY2tCYXNlOjpzZXRLaW5k
KGNvbnN0IEF0b21pY1N0cmluZyYga2luZCkKIHsKLSAgICByZXR1cm4gZXZlbnROYW1lcygpLmlu
dGVyZmFjZUZvclRleHRUcmFjazsKLX0KLQotU2NyaXB0RXhlY3V0aW9uQ29udGV4dCogVHJhY2tC
YXNlOjpzY3JpcHRFeGVjdXRpb25Db250ZXh0KCkgY29uc3QKLXsKLSAgICByZXR1cm4gbV9zY3Jp
cHRFeGVjdXRpb25Db250ZXh0OwotfQorICAgIFN0cmluZyBvbGRLaW5kID0gbV9raW5kOwogCi1F
dmVudFRhcmdldERhdGEqIFRyYWNrQmFzZTo6ZXZlbnRUYXJnZXREYXRhKCkKLXsKLSAgICByZXR1
cm4gJm1fZXZlbnRUYXJnZXREYXRhOwotfQotCi1FdmVudFRhcmdldERhdGEqIFRyYWNrQmFzZTo6
ZW5zdXJlRXZlbnRUYXJnZXREYXRhKCkKLXsKLSAgICByZXR1cm4gJm1fZXZlbnRUYXJnZXREYXRh
OworICAgIGlmIChpc1ZhbGlkS2luZChraW5kKSkKKyAgICAgICAgbV9raW5kID0ga2luZDsKKyAg
ICBlbHNlCisgICAgICAgIG1fa2luZCA9IGRlZmF1bHRLaW5kS2V5d29yZCgpOwogfQogCiB9IC8v
IG5hbWVzcGFjZSBXZWJDb3JlCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9odG1sL3RyYWNr
L1RyYWNrQmFzZS5oIGIvU291cmNlL1dlYkNvcmUvaHRtbC90cmFjay9UcmFja0Jhc2UuaAppbmRl
eCBjMDA2NjBmMDUzYWQ2NDk0MTY1OGYyMGQ3NTAzMGNhYmM5MzI3OTg5Li41NDYyODk4YzBlMDU3
ZTIyNzBjOTE0MWE2YWQ1MmI0MzJkYTcyNDhjIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9o
dG1sL3RyYWNrL1RyYWNrQmFzZS5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvdHJhY2svVHJh
Y2tCYXNlLmgKQEAgLTMzLDM1ICszMyw0MiBAQAogCiBuYW1lc3BhY2UgV2ViQ29yZSB7CiAKLWNs
YXNzIFNjcmlwdEV4ZWN1dGlvbkNvbnRleHQ7CitjbGFzcyBIVE1MTWVkaWFFbGVtZW50OwogCi1j
bGFzcyBUcmFja0Jhc2UgOiBwdWJsaWMgUmVmQ291bnRlZDxUcmFja0Jhc2U+LCBwdWJsaWMgRXZl
bnRUYXJnZXQgeworY2xhc3MgVHJhY2tCYXNlIDogcHVibGljIFJlZkNvdW50ZWQ8VHJhY2tCYXNl
PiB7CiBwdWJsaWM6CiAgICAgdmlydHVhbCB+VHJhY2tCYXNlKCk7CiAKICAgICBlbnVtIFR5cGUg
eyBCYXNlVHJhY2ssIFRleHRUcmFjaywgQXVkaW9UcmFjaywgVmlkZW9UcmFjayB9OwogICAgIFR5
cGUgdHlwZSgpIGNvbnN0IHsgcmV0dXJuIG1fdHlwZTsgfQogCi0gICAgdmlydHVhbCBjb25zdCBB
dG9taWNTdHJpbmcmIGludGVyZmFjZU5hbWUoKSBjb25zdDsKLSAgICB2aXJ0dWFsIFNjcmlwdEV4
ZWN1dGlvbkNvbnRleHQqIHNjcmlwdEV4ZWN1dGlvbkNvbnRleHQoKSBjb25zdDsKLSAgICAKLSAg
ICB1c2luZyBSZWZDb3VudGVkPFRyYWNrQmFzZT46OnJlZjsKLSAgICB1c2luZyBSZWZDb3VudGVk
PFRyYWNrQmFzZT46OmRlcmVmOworICAgIHZvaWQgc2V0TWVkaWFFbGVtZW50KEhUTUxNZWRpYUVs
ZW1lbnQqIGVsZW1lbnQpIHsgbV9tZWRpYUVsZW1lbnQgPSBlbGVtZW50OyB9CisgICAgSFRNTE1l
ZGlhRWxlbWVudCogbWVkaWFFbGVtZW50KCkgeyByZXR1cm4gbV9tZWRpYUVsZW1lbnQ7IH0KKwor
ICAgIEF0b21pY1N0cmluZyBraW5kKCkgY29uc3QgeyByZXR1cm4gbV9raW5kOyB9CisgICAgdmly
dHVhbCB2b2lkIHNldEtpbmQoY29uc3QgQXRvbWljU3RyaW5nJik7CisKKyAgICBBdG9taWNTdHJp
bmcgbGFiZWwoKSBjb25zdCB7IHJldHVybiBtX2xhYmVsOyB9CisgICAgdm9pZCBzZXRMYWJlbChj
b25zdCBBdG9taWNTdHJpbmcmIGxhYmVsKSB7IG1fbGFiZWwgPSBsYWJlbDsgfQorCisgICAgQXRv
bWljU3RyaW5nIGxhbmd1YWdlKCkgY29uc3QgeyByZXR1cm4gbV9sYW5ndWFnZTsgfQorICAgIHZv
aWQgc2V0TGFuZ3VhZ2UoY29uc3QgQXRvbWljU3RyaW5nJiBsYW5ndWFnZSkgeyBtX2xhbmd1YWdl
ID0gbGFuZ3VhZ2U7IH0KKworICAgIHZpcnR1YWwgdm9pZCBjbGVhckNsaWVudCgpID0gMDsKIAog
cHJvdGVjdGVkOgotICAgIFRyYWNrQmFzZShTY3JpcHRFeGVjdXRpb25Db250ZXh0KiwgVHlwZSk7
Ci0gICAgCi0gICAgdmlydHVhbCBFdmVudFRhcmdldERhdGEqIGV2ZW50VGFyZ2V0RGF0YSgpOwot
ICAgIHZpcnR1YWwgRXZlbnRUYXJnZXREYXRhKiBlbnN1cmVFdmVudFRhcmdldERhdGEoKTsKKyAg
ICBUcmFja0Jhc2UoVHlwZSwgY29uc3QgQXRvbWljU3RyaW5nJiBsYWJlbCwgY29uc3QgQXRvbWlj
U3RyaW5nJiBsYW5ndWFnZSk7CisKKyAgICB2aXJ0dWFsIGJvb2wgaXNWYWxpZEtpbmQoY29uc3Qg
QXRvbWljU3RyaW5nJikgY29uc3QgPSAwOworICAgIHZpcnR1YWwgY29uc3QgQXRvbWljU3RyaW5n
JiBkZWZhdWx0S2luZEtleXdvcmQoKSBjb25zdCA9IDA7CisKKyAgICBIVE1MTWVkaWFFbGVtZW50
KiBtX21lZGlhRWxlbWVudDsKIAogcHJpdmF0ZToKICAgICBUeXBlIG1fdHlwZTsKLSAgICAKLSAg
ICB2aXJ0dWFsIHZvaWQgcmVmRXZlbnRUYXJnZXQoKSB7IHJlZigpOyB9Ci0gICAgdmlydHVhbCB2
b2lkIGRlcmVmRXZlbnRUYXJnZXQoKSB7IGRlcmVmKCk7IH0KLSAgICAKLSAgICBTY3JpcHRFeGVj
dXRpb25Db250ZXh0KiBtX3NjcmlwdEV4ZWN1dGlvbkNvbnRleHQ7Ci0gICAgRXZlbnRUYXJnZXRE
YXRhIG1fZXZlbnRUYXJnZXREYXRhOworICAgIEF0b21pY1N0cmluZyBtX2tpbmQ7CisgICAgQXRv
bWljU3RyaW5nIG1fbGFiZWw7CisgICAgQXRvbWljU3RyaW5nIG1fbGFuZ3VhZ2U7CiB9OwogCiB9
IC8vIG5hbWVzcGFjZSBXZWJDb3JlCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9odG1sL3Ry
YWNrL1RyYWNrTGlzdEJhc2UuY3BwIGIvU291cmNlL1dlYkNvcmUvaHRtbC90cmFjay9UcmFja0xp
c3RCYXNlLmNwcApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwLi40NTA3OTU3ZmJlYjQ3NzYwMDg1ZDNiZmU1M2VhNDQxNDVh
NTI5OWVkCi0tLSAvZGV2L251bGwKKysrIGIvU291cmNlL1dlYkNvcmUvaHRtbC90cmFjay9UcmFj
a0xpc3RCYXNlLmNwcApAQCAtMCwwICsxLDE4MyBAQAorLyoKKyAqIENvcHlyaWdodCAoQykgMjAx
MSwgMjAxMiBBcHBsZSBJbmMuICBBbGwgcmlnaHRzIHJlc2VydmVkLgorICoKKyAqIFJlZGlzdHJp
YnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91
dAorICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxv
d2luZyBjb25kaXRpb25zCisgKiBhcmUgbWV0OgorICogMS4gUmVkaXN0cmlidXRpb25zIG9mIHNv
dXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwg
dGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKyAq
IDIuIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJv
dmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0
aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCisgKiAgICBkb2N1bWVudGF0aW9uIGFuZC9v
ciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgorICoKKyAq
IFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgQVBQTEUgQ09NUFVURVIsIElOQy4gYGBBUyBJ
UycnIEFORCBBTlkKKyAqIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcs
IEJVVCBOT1QgTElNSVRFRCBUTywgVEhFCisgKiBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hB
TlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIKKyAqIFBVUlBPU0UgQVJFIERJ
U0NMQUlNRUQuICBJTiBOTyBFVkVOVCBTSEFMTCBBUFBMRSBDT01QVVRFUiwgSU5DLiBPUgorICog
Q09OVFJJQlVUT1JTIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5U
QUwsIFNQRUNJQUwsCisgKiBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5D
TFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sCisgKiBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRF
IEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1IKKyAqIFBST0ZJVFM7IE9S
IEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkK
KyAqIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwg
T1IgVE9SVAorICogKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJ
TiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFCisgKiBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFE
VklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLiAKKyAqLworCisjaW5jbHVk
ZSAiY29uZmlnLmgiCisKKyNpZiBFTkFCTEUoVklERU9fVFJBQ0spCisKKyNpbmNsdWRlICJUcmFj
a0xpc3RCYXNlLmgiCisKKyNpbmNsdWRlICJFdmVudE5hbWVzLmgiCisjaW5jbHVkZSAiSFRNTE1l
ZGlhRWxlbWVudC5oIgorI2luY2x1ZGUgIlNjcmlwdEV4ZWN1dGlvbkNvbnRleHQuaCIKKyNpbmNs
dWRlICJUcmFja0Jhc2UuaCIKKyNpbmNsdWRlICJUcmFja0V2ZW50LmgiCisKK3VzaW5nIG5hbWVz
cGFjZSBXZWJDb3JlOworCitUcmFja0xpc3RCYXNlOjpUcmFja0xpc3RCYXNlKEhUTUxNZWRpYUVs
ZW1lbnQqIG93bmVyLCBTY3JpcHRFeGVjdXRpb25Db250ZXh0KiBjb250ZXh0KQorICAgIDogbV9j
b250ZXh0KGNvbnRleHQpCisgICAgLCBtX293bmVyKG93bmVyKQorICAgICwgbV9wZW5kaW5nRXZl
bnRUaW1lcih0aGlzLCAmVHJhY2tMaXN0QmFzZTo6YXN5bmNFdmVudFRpbWVyRmlyZWQpCisgICAg
LCBtX2Rpc3BhdGNoaW5nRXZlbnRzKDApCit7CisgICAgQVNTRVJUKGNvbnRleHQtPmlzRG9jdW1l
bnQoKSk7Cit9CisKK1RyYWNrTGlzdEJhc2U6On5UcmFja0xpc3RCYXNlKCkKK3sKK30KKwordW5z
aWduZWQgVHJhY2tMaXN0QmFzZTo6bGVuZ3RoKCkgY29uc3QKK3sKKyAgICByZXR1cm4gbV9pbmJh
bmRUcmFja3Muc2l6ZSgpOworfQorCitpbnQgVHJhY2tMaXN0QmFzZTo6Z2V0VHJhY2tJbmRleChU
cmFja0Jhc2UgKnRyYWNrKQoreworICAgIHJldHVybiBtX2luYmFuZFRyYWNrcy5maW5kKHRyYWNr
KTsKK30KKwordm9pZCBUcmFja0xpc3RCYXNlOjpyZW1vdmUoVHJhY2tCYXNlKiB0cmFjaykKK3sK
KyAgICBzaXplX3QgaW5kZXggPSBtX2luYmFuZFRyYWNrcy5maW5kKHRyYWNrKTsKKyAgICBBU1NF
UlQoaW5kZXggIT0gbm90Rm91bmQpOworCisgICAgQVNTRVJUKHRyYWNrLT5tZWRpYUVsZW1lbnQo
KSA9PSBtX293bmVyKTsKKyAgICB0cmFjay0+c2V0TWVkaWFFbGVtZW50KDApOworCisgICAgUmVm
UHRyPFRyYWNrQmFzZT4gdHJhY2tSZWYgPSBtX2luYmFuZFRyYWNrc1tpbmRleF07CisKKyAgICBt
X2luYmFuZFRyYWNrcy5yZW1vdmUoaW5kZXgpOworCisgICAgc2NoZWR1bGVSZW1vdmVUcmFja0V2
ZW50KHRyYWNrUmVmLnJlbGVhc2UoKSk7Cit9CisKK2Jvb2wgVHJhY2tMaXN0QmFzZTo6Y29udGFp
bnMoVHJhY2tCYXNlKiB0cmFjaykgY29uc3QKK3sKKyAgICByZXR1cm4gbV9pbmJhbmRUcmFja3Mu
ZmluZCh0cmFjaykgIT0gbm90Rm91bmQ7Cit9CisKK3ZvaWQgVHJhY2tMaXN0QmFzZTo6c2NoZWR1
bGVBZGRUcmFja0V2ZW50KFBhc3NSZWZQdHI8VHJhY2tCYXNlPiB0cmFjaykKK3sKKyAgICAvLyA0
LjguMTAuNSBMb2FkaW5nIHRoZSBtZWRpYSByZXNvdXJjZQorICAgIC8vIC4uLgorICAgIC8vIEZp
cmUgYSB0cnVzdGVkIGV2ZW50IHdpdGggdGhlIG5hbWUgYWRkdHJhY2ssIHRoYXQgZG9lcyBub3Qg
YnViYmxlIGFuZCBpcworICAgIC8vIG5vdCBjYW5jZWxhYmxlLCBhbmQgdGhhdCB1c2VzIHRoZSBU
cmFja0V2ZW50IGludGVyZmFjZSwgd2l0aCB0aGUgdHJhY2sKKyAgICAvLyBhdHRyaWJ1dGUgaW5p
dGlhbGl6ZWQgdG8gdGhlIG5ldyBBdWRpb1RyYWNrIG9iamVjdCwgYXQgdGhpcworICAgIC8vIEF1
ZGlvVHJhY2tMaXN0IG9iamVjdC4KKyAgICAvLyAuLi4KKyAgICAvLyBGaXJlIGEgdHJ1c3RlZCBl
dmVudCB3aXRoIHRoZSBuYW1lIGFkZHRyYWNrLCB0aGF0IGRvZXMgbm90IGJ1YmJsZSBhbmQgaXMK
KyAgICAvLyBub3QgY2FuY2VsYWJsZSwgYW5kIHRoYXQgdXNlcyB0aGUgVHJhY2tFdmVudCBpbnRl
cmZhY2UsIHdpdGggdGhlIHRyYWNrCisgICAgLy8gYXR0cmlidXRlIGluaXRpYWxpemVkIHRvIHRo
ZSBuZXcgVmlkZW9UcmFjayBvYmplY3QsIGF0IHRoaXMKKyAgICAvLyBWaWRlb1RyYWNrTGlzdCBv
YmplY3QuCisKKyAgICAvLyA0LjguMTAuMTIuMyBTb3VyY2luZyBvdXQtb2YtYmFuZCB0ZXh0IHRy
YWNrcworICAgIC8vIDQuOC4xMC4xMi40IFRleHQgdHJhY2sgQVBJCisgICAgLy8gLi4uIHRoZW4g
cXVldWUgYSB0YXNrIHRvIGZpcmUgYW4gZXZlbnQgd2l0aCB0aGUgbmFtZSBhZGR0cmFjaywgdGhh
dCBkb2VzIG5vdAorICAgIC8vIGJ1YmJsZSBhbmQgaXMgbm90IGNhbmNlbGFibGUsIGFuZCB0aGF0
IHVzZXMgdGhlIFRyYWNrRXZlbnQgaW50ZXJmYWNlLCB3aXRoCisgICAgLy8gdGhlIHRyYWNrIGF0
dHJpYnV0ZSBpbml0aWFsaXplZCB0byB0aGUgdGV4dCB0cmFjaydzIFRleHRUcmFjayBvYmplY3Qs
IGF0CisgICAgLy8gdGhlIG1lZGlhIGVsZW1lbnQncyB0ZXh0VHJhY2tzIGF0dHJpYnV0ZSdzIFRl
eHRUcmFja0xpc3Qgb2JqZWN0LiAKKworICAgIFJlZlB0cjxUcmFja0Jhc2U+IHRyYWNrUmVmID0g
dHJhY2s7CisgICAgVHJhY2tFdmVudEluaXQgaW5pdGlhbGl6ZXI7CisgICAgaW5pdGlhbGl6ZXIu
dHJhY2sgPSB0cmFja1JlZjsKKyAgICBpbml0aWFsaXplci5idWJibGVzID0gZmFsc2U7CisgICAg
aW5pdGlhbGl6ZXIuY2FuY2VsYWJsZSA9IGZhbHNlOworCisgICAgbV9wZW5kaW5nRXZlbnRzLmFw
cGVuZChUcmFja0V2ZW50OjpjcmVhdGUoZXZlbnROYW1lcygpLmFkZHRyYWNrRXZlbnQsIGluaXRp
YWxpemVyKSk7CisgICAgaWYgKCFtX3BlbmRpbmdFdmVudFRpbWVyLmlzQWN0aXZlKCkpCisgICAg
ICAgIG1fcGVuZGluZ0V2ZW50VGltZXIuc3RhcnRPbmVTaG90KDApOworfQorCit2b2lkIFRyYWNr
TGlzdEJhc2U6OnNjaGVkdWxlUmVtb3ZlVHJhY2tFdmVudChQYXNzUmVmUHRyPFRyYWNrQmFzZT4g
dHJhY2spCit7CisgICAgLy8gNC44LjEwLjYgT2Zmc2V0cyBpbnRvIHRoZSBtZWRpYSByZXNvdXJj
ZQorICAgIC8vIElmIGF0IGFueSB0aW1lIHRoZSB1c2VyIGFnZW50IGxlYXJucyB0aGF0IGFuIGF1
ZGlvIG9yIHZpZGVvIHRyYWNrIGhhcworICAgIC8vIGVuZGVkIGFuZCBhbGwgbWVkaWEgZGF0YSBy
ZWxhdGluZyB0byB0aGF0IHRyYWNrIGNvcnJlc3BvbmRzIHRvIHBhcnRzIG9mCisgICAgLy8gdGhl
IG1lZGlhIHRpbWVsaW5lIHRoYXQgYXJlIGJlZm9yZSB0aGUgZWFybGllc3QgcG9zc2libGUgcG9z
aXRpb24sIHRoZQorICAgIC8vIHVzZXIgYWdlbnQgbWF5IHF1ZXVlIGEgdGFzayB0byByZW1vdmUg
dGhlIHRyYWNrIGZyb20gdGhlIGF1ZGlvVHJhY2tzCisgICAgLy8gYXR0cmlidXRlJ3MgQXVkaW9U
cmFja0xpc3Qgb2JqZWN0IG9yIHRoZSB2aWRlb1RyYWNrcyBhdHRyaWJ1dGUncworICAgIC8vIFZp
ZGVvVHJhY2tMaXN0IG9iamVjdCBhcyBhcHByb3ByaWF0ZSBhbmQgdGhlbiBmaXJlIGEgdHJ1c3Rl
ZCBldmVudAorICAgIC8vIHdpdGggdGhlIG5hbWUgcmVtb3ZldHJhY2ssIHRoYXQgZG9lcyBub3Qg
YnViYmxlIGFuZCBpcyBub3QgY2FuY2VsYWJsZSwKKyAgICAvLyBhbmQgdGhhdCB1c2VzIHRoZSBU
cmFja0V2ZW50IGludGVyZmFjZSwgd2l0aCB0aGUgdHJhY2sgYXR0cmlidXRlCisgICAgLy8gaW5p
dGlhbGl6ZWQgdG8gdGhlIEF1ZGlvVHJhY2sgb3IgVmlkZW9UcmFjayBvYmplY3QgcmVwcmVzZW50
aW5nIHRoZQorICAgIC8vIHRyYWNrLCBhdCB0aGUgbWVkaWEgZWxlbWVudCdzIGFmb3JlbWVudGlv
bmVkIEF1ZGlvVHJhY2tMaXN0IG9yCisgICAgLy8gVmlkZW9UcmFja0xpc3Qgb2JqZWN0LgorCisg
ICAgLy8gNC44LjEwLjEyLjMgU291cmNpbmcgb3V0LW9mLWJhbmQgdGV4dCB0cmFja3MKKyAgICAv
LyBXaGVuIGEgdHJhY2sgZWxlbWVudCdzIHBhcmVudCBlbGVtZW50IGNoYW5nZXMgYW5kIHRoZSBv
bGQgcGFyZW50IHdhcyBhCisgICAgLy8gbWVkaWEgZWxlbWVudCwgdGhlbiB0aGUgdXNlciBhZ2Vu
dCBtdXN0IHJlbW92ZSB0aGUgdHJhY2sgZWxlbWVudCdzCisgICAgLy8gY29ycmVzcG9uZGluZyB0
ZXh0IHRyYWNrIGZyb20gdGhlIG1lZGlhIGVsZW1lbnQncyBsaXN0IG9mIHRleHQgdHJhY2tzLAor
ICAgIC8vIGFuZCB0aGVuIHF1ZXVlIGEgdGFzayB0byBmaXJlIGEgdHJ1c3RlZCBldmVudCB3aXRo
IHRoZSBuYW1lIHJlbW92ZXRyYWNrLAorICAgIC8vIHRoYXQgZG9lcyBub3QgYnViYmxlIGFuZCBp
cyBub3QgY2FuY2VsYWJsZSwgYW5kIHRoYXQgdXNlcyB0aGUgVHJhY2tFdmVudAorICAgIC8vIGlu
dGVyZmFjZSwgd2l0aCB0aGUgdHJhY2sgYXR0cmlidXRlIGluaXRpYWxpemVkIHRvIHRoZSB0ZXh0
IHRyYWNrJ3MKKyAgICAvLyBUZXh0VHJhY2sgb2JqZWN0LCBhdCB0aGUgbWVkaWEgZWxlbWVudCdz
IHRleHRUcmFja3MgYXR0cmlidXRlJ3MKKyAgICAvLyBUZXh0VHJhY2tMaXN0IG9iamVjdC4KKwor
ICAgIFJlZlB0cjxUcmFja0Jhc2U+IHRyYWNrUmVmID0gdHJhY2s7CisgICAgVHJhY2tFdmVudElu
aXQgaW5pdGlhbGl6ZXI7CisgICAgaW5pdGlhbGl6ZXIudHJhY2sgPSB0cmFja1JlZjsKKyAgICBp
bml0aWFsaXplci5idWJibGVzID0gZmFsc2U7CisgICAgaW5pdGlhbGl6ZXIuY2FuY2VsYWJsZSA9
IGZhbHNlOworCisgICAgbV9wZW5kaW5nRXZlbnRzLmFwcGVuZChUcmFja0V2ZW50OjpjcmVhdGUo
ZXZlbnROYW1lcygpLnJlbW92ZXRyYWNrRXZlbnQsIGluaXRpYWxpemVyKSk7CisgICAgaWYgKCFt
X3BlbmRpbmdFdmVudFRpbWVyLmlzQWN0aXZlKCkpCisgICAgICAgIG1fcGVuZGluZ0V2ZW50VGlt
ZXIuc3RhcnRPbmVTaG90KDApOworfQorCit2b2lkIFRyYWNrTGlzdEJhc2U6OnNjaGVkdWxlQ2hh
bmdlRXZlbnQoKQoreworICAgIC8vIDQuOC4xMC42IE9mZnNldHMgaW50byB0aGUgbWVkaWEgcmVz
b3VyY2UKKyAgICAvLyBXaGVuZXZlciBhbiBhdWRpbyB0cmFjayBpbiBhbiBBdWRpb1RyYWNrTGlz
dCBpcyBlbmFibGVkIG9yIGRpc2FibGVkLCB0aGUKKyAgICAvLyB1c2VyIGFnZW50IG11c3QgcXVl
dWUgYSB0YXNrIHRvIGZpcmUgYSBzaW1wbGUgZXZlbnQgbmFtZWQgY2hhbmdlIGF0IHRoZQorICAg
IC8vIEF1ZGlvVHJhY2tMaXN0IG9iamVjdC4KKyAgICAvLyAuLi4KKyAgICAvLyBXaGVuZXZlciBh
IHRyYWNrIGluIGEgVmlkZW9UcmFja0xpc3QgdGhhdCB3YXMgcHJldmlvdXNseSBub3Qgc2VsZWN0
ZWQgaXMKKyAgICAvLyBzZWxlY3RlZCwgdGhlIHVzZXIgYWdlbnQgbXVzdCBxdWV1ZSBhIHRhc2sg
dG8gZmlyZSBhIHNpbXBsZSBldmVudCBuYW1lZAorICAgIC8vIGNoYW5nZSBhdCB0aGUgVmlkZW9U
cmFja0xpc3Qgb2JqZWN0LgorCisgICAgRXZlbnRJbml0IGluaXRpYWxpemVyOworICAgIGluaXRp
YWxpemVyLmJ1YmJsZXMgPSBmYWxzZTsKKyAgICBpbml0aWFsaXplci5jYW5jZWxhYmxlID0gZmFs
c2U7CisKKyAgICBtX3BlbmRpbmdFdmVudHMuYXBwZW5kKEV2ZW50OjpjcmVhdGUoZXZlbnROYW1l
cygpLmNoYW5nZUV2ZW50LCBpbml0aWFsaXplcikpOworICAgIGlmICghbV9wZW5kaW5nRXZlbnRU
aW1lci5pc0FjdGl2ZSgpKQorICAgICAgICBtX3BlbmRpbmdFdmVudFRpbWVyLnN0YXJ0T25lU2hv
dCgwKTsKK30KKwordm9pZCBUcmFja0xpc3RCYXNlOjphc3luY0V2ZW50VGltZXJGaXJlZChUaW1l
cjxUcmFja0xpc3RCYXNlPiopCit7CisgICAgVmVjdG9yPFJlZlB0cjxFdmVudD4gPiBwZW5kaW5n
RXZlbnRzOworCisgICAgKyttX2Rpc3BhdGNoaW5nRXZlbnRzOworICAgIG1fcGVuZGluZ0V2ZW50
cy5zd2FwKHBlbmRpbmdFdmVudHMpOworICAgIHNpemVfdCBjb3VudCA9IHBlbmRpbmdFdmVudHMu
c2l6ZSgpOworICAgIGZvciAoc2l6ZV90IGluZGV4ID0gMDsgaW5kZXggPCBjb3VudDsgKytpbmRl
eCkKKyAgICAgICAgZGlzcGF0Y2hFdmVudChwZW5kaW5nRXZlbnRzW2luZGV4XS5yZWxlYXNlKCks
IElHTk9SRV9FWENFUFRJT04pOworICAgIC0tbV9kaXNwYXRjaGluZ0V2ZW50czsKK30KKworI2Vu
ZGlmCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9odG1sL3RyYWNrL1RyYWNrTGlzdEJhc2Uu
aCBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvdHJhY2svVHJhY2tMaXN0QmFzZS5oCm5ldyBmaWxlIG1v
ZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAu
LjQ1ZmE1NjJlYjc0YWU0NTk2NzYyYWIzNTU3MzNjZGU0NjUzZDVjYjIKLS0tIC9kZXYvbnVsbAor
KysgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL3RyYWNrL1RyYWNrTGlzdEJhc2UuaApAQCAtMCwwICsx
LDEwMSBAQAorLyoKKyAqIENvcHlyaWdodCAoQykgMjAxMSwgMjAxMiBBcHBsZSBJbmMuICBBbGwg
cmlnaHRzIHJlc2VydmVkLgorICoKKyAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNl
IGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAorICogbW9kaWZpY2F0aW9uLCBhcmUg
cGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCisgKiBhcmUg
bWV0OgorICogMS4gUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRo
ZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMg
YW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKyAqIDIuIFJlZGlzdHJpYnV0aW9ucyBpbiBi
aW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3Rp
Y2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIg
aW4gdGhlCisgKiAgICBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlk
ZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgorICoKKyAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklE
RUQgQlkgQVBQTEUgQ09NUFVURVIsIElOQy4gYGBBUyBJUycnIEFORCBBTlkKKyAqIEVYUFJFU1Mg
T1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgVEhF
CisgKiBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZP
UiBBIFBBUlRJQ1VMQVIKKyAqIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuICBJTiBOTyBFVkVOVCBT
SEFMTCBBUFBMRSBDT01QVVRFUiwgSU5DLiBPUgorICogQ09OVFJJQlVUT1JTIEJFIExJQUJMRSBG
T1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsCisgKiBFWEVNUExB
UlksIE9SIENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQg
VE8sCisgKiBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NT
IE9GIFVTRSwgREFUQSwgT1IKKyAqIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikg
SE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkKKyAqIE9GIExJQUJJTElUWSwgV0hFVEhF
UiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVAorICogKElOQ0xVRElORyBO
RUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNF
CisgKiBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZ
IE9GIFNVQ0ggREFNQUdFLiAKKyAqLworCisjaWZuZGVmIFRyYWNrTGlzdEJhc2VfaAorI2RlZmlu
ZSBUcmFja0xpc3RCYXNlX2gKKworI2lmIEVOQUJMRShWSURFT19UUkFDSykKKworI2luY2x1ZGUg
IkV2ZW50TGlzdGVuZXIuaCIKKyNpbmNsdWRlICJFdmVudFRhcmdldC5oIgorI2luY2x1ZGUgIlRp
bWVyLmgiCisjaW5jbHVkZSA8d3RmL1Bhc3NSZWZQdHIuaD4KKyNpbmNsdWRlIDx3dGYvUmVmQ291
bnRlZC5oPgorI2luY2x1ZGUgPHd0Zi9WZWN0b3IuaD4KKworbmFtZXNwYWNlIFdlYkNvcmUgewor
CitjbGFzcyBIVE1MTWVkaWFFbGVtZW50OworY2xhc3MgVHJhY2tCYXNlOworCitjbGFzcyBUcmFj
a0xpc3RCYXNlIDogcHVibGljIFJlZkNvdW50ZWQ8VHJhY2tMaXN0QmFzZT4sIHB1YmxpYyBFdmVu
dFRhcmdldCB7CitwdWJsaWM6CisgICAgflRyYWNrTGlzdEJhc2UoKTsKKworICAgIHZpcnR1YWwg
dW5zaWduZWQgbGVuZ3RoKCkgY29uc3Q7CisgICAgdmlydHVhbCBpbnQgZ2V0VHJhY2tJbmRleChU
cmFja0Jhc2UqKTsKKyAgICB2aXJ0dWFsIGJvb2wgY29udGFpbnMoVHJhY2tCYXNlKikgY29uc3Q7
CisgICAgdmlydHVhbCB2b2lkIHJlbW92ZShUcmFja0Jhc2UqKTsKKworICAgIC8vIEV2ZW50VGFy
Z2V0CisgICAgdmlydHVhbCBjb25zdCBBdG9taWNTdHJpbmcmIGludGVyZmFjZU5hbWUoKSBjb25z
dCA9IDA7CisgICAgdXNpbmcgUmVmQ291bnRlZDxUcmFja0xpc3RCYXNlPjo6cmVmOworICAgIHVz
aW5nIFJlZkNvdW50ZWQ8VHJhY2tMaXN0QmFzZT46OmRlcmVmOworICAgIHZpcnR1YWwgU2NyaXB0
RXhlY3V0aW9uQ29udGV4dCogc2NyaXB0RXhlY3V0aW9uQ29udGV4dCgpIGNvbnN0IHsgcmV0dXJu
IG1fY29udGV4dDsgfQorCisgICAgREVGSU5FX0FUVFJJQlVURV9FVkVOVF9MSVNURU5FUihhZGR0
cmFjayk7CisgICAgREVGSU5FX0FUVFJJQlVURV9FVkVOVF9MSVNURU5FUihjaGFuZ2UpOworICAg
IERFRklORV9BVFRSSUJVVEVfRVZFTlRfTElTVEVORVIocmVtb3ZldHJhY2spOworCisgICAgdm9p
ZCBjbGVhck93bmVyKCkgeyBtX293bmVyID0gMDsgfQorICAgIEhUTUxNZWRpYUVsZW1lbnQqIG93
bmVyKCkgY29uc3QgeyByZXR1cm4gbV9vd25lcjsgfQorCisgICAgYm9vbCBpc0ZpcmluZ0V2ZW50
TGlzdGVuZXJzKCkgeyByZXR1cm4gbV9kaXNwYXRjaGluZ0V2ZW50czsgfQorCisgICAgLy8gTmVl
ZHMgdG8gYmUgcHVibGljIHNvIHRyYWNrcyBjYW4gY2FsbCBpdAorICAgIHZvaWQgc2NoZWR1bGVD
aGFuZ2VFdmVudCgpOworCitwcm90ZWN0ZWQ6CisgICAgVHJhY2tMaXN0QmFzZShIVE1MTWVkaWFF
bGVtZW50KiwgU2NyaXB0RXhlY3V0aW9uQ29udGV4dCopOworCisgICAgdm9pZCBzY2hlZHVsZUFk
ZFRyYWNrRXZlbnQoUGFzc1JlZlB0cjxUcmFja0Jhc2U+KTsKKyAgICB2b2lkIHNjaGVkdWxlUmVt
b3ZlVHJhY2tFdmVudChQYXNzUmVmUHRyPFRyYWNrQmFzZT4pOworCisgICAgVmVjdG9yPFJlZlB0
cjxUcmFja0Jhc2U+ID4gbV9pbmJhbmRUcmFja3M7CisKK3ByaXZhdGU6CisgICAgLy8gRXZlbnRU
YXJnZXQKKyAgICB2aXJ0dWFsIHZvaWQgcmVmRXZlbnRUYXJnZXQoKSB7IHJlZigpOyB9CisgICAg
dmlydHVhbCB2b2lkIGRlcmVmRXZlbnRUYXJnZXQoKSB7IGRlcmVmKCk7IH0KKyAgICB2aXJ0dWFs
IEV2ZW50VGFyZ2V0RGF0YSogZXZlbnRUYXJnZXREYXRhKCkgeyByZXR1cm4gJm1fZXZlbnRUYXJn
ZXREYXRhOyB9CisgICAgdmlydHVhbCBFdmVudFRhcmdldERhdGEqIGVuc3VyZUV2ZW50VGFyZ2V0
RGF0YSgpIHsgcmV0dXJuICZtX2V2ZW50VGFyZ2V0RGF0YTsgfQorCisgICAgdm9pZCBhc3luY0V2
ZW50VGltZXJGaXJlZChUaW1lcjxUcmFja0xpc3RCYXNlPiopOworCisgICAgU2NyaXB0RXhlY3V0
aW9uQ29udGV4dCogbV9jb250ZXh0OworICAgIEhUTUxNZWRpYUVsZW1lbnQqIG1fb3duZXI7CisK
KyAgICBWZWN0b3I8UmVmUHRyPEV2ZW50PiA+IG1fcGVuZGluZ0V2ZW50czsKKyAgICBUaW1lcjxU
cmFja0xpc3RCYXNlPiBtX3BlbmRpbmdFdmVudFRpbWVyOworCisgICAgRXZlbnRUYXJnZXREYXRh
IG1fZXZlbnRUYXJnZXREYXRhOworCisgICAgaW50IG1fZGlzcGF0Y2hpbmdFdmVudHM7Cit9Owor
Cit9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCisKKyNlbmRpZgorI2VuZGlmCmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9NZWRpYVBsYXllci5jcHAgYi9Tb3VyY2Uv
V2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9NZWRpYVBsYXllci5jcHAKaW5kZXggMzM5ZmUzMjA2
ZjMwMmNiNzYyZDI5N2QxZmFlNzVkNDNhMDk1NzQ1Mi4uMzJjZWNmNTRiOGIyMGI3YmY3ZDkyMDZj
YmQ0NzViZDkyM2NhZjBjMiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3Jh
cGhpY3MvTWVkaWFQbGF5ZXIuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBo
aWNzL01lZGlhUGxheWVyLmNwcApAQCAtMTEwMiw3ICsxMTAyLDcgQEAgdm9pZCBNZWRpYVBsYXll
cjo6YWRkVGV4dFRyYWNrKFBhc3NSZWZQdHI8SW5iYW5kVGV4dFRyYWNrUHJpdmF0ZT4gdHJhY2sp
CiAgICAgaWYgKCFtX21lZGlhUGxheWVyQ2xpZW50KQogICAgICAgICByZXR1cm47CiAKLSAgICBt
X21lZGlhUGxheWVyQ2xpZW50LT5tZWRpYVBsYXllckRpZEFkZFRyYWNrKHRyYWNrKTsKKyAgICBt
X21lZGlhUGxheWVyQ2xpZW50LT5tZWRpYVBsYXllckRpZEFkZFRleHRUcmFjayh0cmFjayk7CiB9
CiAKIHZvaWQgTWVkaWFQbGF5ZXI6OnJlbW92ZVRleHRUcmFjayhQYXNzUmVmUHRyPEluYmFuZFRl
eHRUcmFja1ByaXZhdGU+IHRyYWNrKQpAQCAtMTExMCw3ICsxMTEwLDcgQEAgdm9pZCBNZWRpYVBs
YXllcjo6cmVtb3ZlVGV4dFRyYWNrKFBhc3NSZWZQdHI8SW5iYW5kVGV4dFRyYWNrUHJpdmF0ZT4g
dHJhY2spCiAgICAgaWYgKCFtX21lZGlhUGxheWVyQ2xpZW50KQogICAgICAgICByZXR1cm47CiAK
LSAgICBtX21lZGlhUGxheWVyQ2xpZW50LT5tZWRpYVBsYXllckRpZFJlbW92ZVRyYWNrKHRyYWNr
KTsKKyAgICBtX21lZGlhUGxheWVyQ2xpZW50LT5tZWRpYVBsYXllckRpZFJlbW92ZVRleHRUcmFj
ayh0cmFjayk7CiB9CiAKIGJvb2wgTWVkaWFQbGF5ZXI6OnJlcXVpcmVzVGV4dFRyYWNrUmVwcmVz
ZW50YXRpb24oKSBjb25zdApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3Jh
cGhpY3MvTWVkaWFQbGF5ZXIuaCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL01l
ZGlhUGxheWVyLmgKaW5kZXggNDUzZGNmMDI0ODk4NDMyYWEwOGQxMTg5ZTFjZjEzYzg1ZTI3NmMz
NC4uNjFkZjFmNGRlNjhiYzczZmIzNjlkMDVlMGZkYmZjMWJhN2M1NTZmNiAxMDA2NDQKLS0tIGEv
U291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvTWVkaWFQbGF5ZXIuaAorKysgYi9Tb3Vy
Y2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9NZWRpYVBsYXllci5oCkBAIC0yMTgsOCArMjE4
LDggQEAgcHVibGljOgogICAgIHZpcnR1YWwgQ2FjaGVkUmVzb3VyY2VMb2FkZXIqIG1lZGlhUGxh
eWVyQ2FjaGVkUmVzb3VyY2VMb2FkZXIoKSB7IHJldHVybiAwOyB9CiAKICNpZiBFTkFCTEUoVklE
RU9fVFJBQ0spCi0gICAgdmlydHVhbCB2b2lkIG1lZGlhUGxheWVyRGlkQWRkVHJhY2soUGFzc1Jl
ZlB0cjxJbmJhbmRUZXh0VHJhY2tQcml2YXRlPikgeyB9Ci0gICAgdmlydHVhbCB2b2lkIG1lZGlh
UGxheWVyRGlkUmVtb3ZlVHJhY2soUGFzc1JlZlB0cjxJbmJhbmRUZXh0VHJhY2tQcml2YXRlPikg
eyB9CisgICAgdmlydHVhbCB2b2lkIG1lZGlhUGxheWVyRGlkQWRkVGV4dFRyYWNrKFBhc3NSZWZQ
dHI8SW5iYW5kVGV4dFRyYWNrUHJpdmF0ZT4pIHsgfQorICAgIHZpcnR1YWwgdm9pZCBtZWRpYVBs
YXllckRpZFJlbW92ZVRleHRUcmFjayhQYXNzUmVmUHRyPEluYmFuZFRleHRUcmFja1ByaXZhdGU+
KSB7IH0KIAogICAgIHZpcnR1YWwgdm9pZCB0ZXh0VHJhY2tSZXByZXNlbnRhdGlvbkJvdW5kc0No
YW5nZWQoY29uc3QgSW50UmVjdCYpIHsgfQogICAgIHZpcnR1YWwgdm9pZCBwYWludFRleHRUcmFj
a1JlcHJlc2VudGF0aW9uKEdyYXBoaWNzQ29udGV4dCosIGNvbnN0IEludFJlY3QmKSB7IH0K
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>197865</attachid>
            <date>2013-04-12 10:25:22 -0700</date>
            <delta_ts>2013-04-12 12:27:52 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-114330-20130412112500.patch</filename>
            <type>text/plain</type>
            <size>58931</size>
            <attacher name="Brendan Long">b.long</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTQ4Mjc3CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggN2Q3MGVjMTg0OTBlYjk2
YzViOWFlNmVkZWNjODBlOWZiN2Y1OWRhNC4uOThmMzNhNjA0NmMyNTE3MWM3YThjYmZiYzc3NzNj
OGJiNTM4MmNlMSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDEwMiBAQAorMjAxMy0wNC0wOSAgQnJl
bmRhbiBMb25nICA8Yi5sb25nQGNhYmxlbGFicy5jb20+CisKKyAgICAgICAgUmVmYWN0b3IgVGV4
dFRyYWNrIGFuZCBUZXh0VHJhY2tMaXN0IHRvIG1ha2UgaXQgZWFzaWVyIHRvIGFkZCBhdWRpbyBh
bmQgdmlkZW8gdHJhY2tzCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVn
LmNnaT9pZD0xMTQzMzAKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKwor
ICAgICAgICBObyBuZXcgdGVzdHMgYmVjYXVzZSB0aGlzIGRvZXNuJ3QgYWRkIG5ldyBmdW5jdGlv
bmFsaXR5LgorCisgICAgICAgICogQ01ha2VMaXN0cy50eHQ6CisgICAgICAgICogVGFyZ2V0LnBy
aToKKyAgICAgICAgKiBodG1sL0hUTUxNZWRpYUVsZW1lbnQuY3BwOgorICAgICAgICAoV2ViQ29y
ZTo6SFRNTE1lZGlhRWxlbWVudDo6bWVkaWFQbGF5ZXJEaWRBZGRUZXh0VHJhY2spOgorICAgICAg
ICAoV2ViQ29yZTo6SFRNTE1lZGlhRWxlbWVudDo6bWVkaWFQbGF5ZXJEaWRSZW1vdmVUZXh0VHJh
Y2spOgorICAgICAgICAoV2ViQ29yZTo6SFRNTE1lZGlhRWxlbWVudDo6YWRkVGV4dFRyYWNrKToK
KyAgICAgICAgKFdlYkNvcmU6OkhUTUxNZWRpYUVsZW1lbnQ6OnJlbW92ZVRleHRUcmFjayk6Cisg
ICAgICAgIChXZWJDb3JlOjpIVE1MTWVkaWFFbGVtZW50OjpyZW1vdmVBbGxJbmJhbmRUcmFja3Mp
OgorICAgICAgICAoV2ViQ29yZTo6SFRNTE1lZGlhRWxlbWVudDo6ZGlkQWRkVGV4dFRyYWNrKToK
KyAgICAgICAgKFdlYkNvcmU6OkhUTUxNZWRpYUVsZW1lbnQ6OmRpZFJlbW92ZVRleHRUcmFjayk6
CisgICAgICAgICogaHRtbC9IVE1MTWVkaWFFbGVtZW50Lmg6CisgICAgICAgIChXZWJDb3JlKToK
KyAgICAgICAgKEhUTUxNZWRpYUVsZW1lbnQpOgorICAgICAgICAqIGh0bWwvSFRNTFRyYWNrRWxl
bWVudC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpIVE1MVHJhY2tFbGVtZW50OjppbnNlcnRlZElu
dG8pOgorICAgICAgICAoV2ViQ29yZTo6SFRNTFRyYWNrRWxlbWVudDo6cmVtb3ZlZEZyb20pOgor
ICAgICAgICAqIGh0bWwvdHJhY2svVGV4dFRyYWNrLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlRl
eHRUcmFjazo6VGV4dFRyYWNrKToKKyAgICAgICAgKFdlYkNvcmU6OlRleHRUcmFjazo6aW50ZXJm
YWNlTmFtZSk6CisgICAgICAgIChXZWJDb3JlKToKKyAgICAgICAgKFdlYkNvcmU6OlRleHRUcmFj
azo6c2NyaXB0RXhlY3V0aW9uQ29udGV4dCk6CisgICAgICAgIChXZWJDb3JlOjpUZXh0VHJhY2s6
OmV2ZW50VGFyZ2V0RGF0YSk6CisgICAgICAgIChXZWJDb3JlOjpUZXh0VHJhY2s6OmVuc3VyZUV2
ZW50VGFyZ2V0RGF0YSk6CisgICAgICAgIChXZWJDb3JlOjpUZXh0VHJhY2s6OmlzVmFsaWRLaW5k
KToKKyAgICAgICAgKFdlYkNvcmU6OlRleHRUcmFjazo6c2V0S2luZCk6CisgICAgICAgIChXZWJD
b3JlOjpUZXh0VHJhY2s6OmlzUmVuZGVyZWQpOgorICAgICAgICAoV2ViQ29yZTo6VGV4dFRyYWNr
OjpwbGF0Zm9ybVRleHRUcmFjayk6CisgICAgICAgIChXZWJDb3JlOjpUZXh0VHJhY2s6OmlzTWFp
blByb2dyYW1Db250ZW50KToKKyAgICAgICAgKiBodG1sL3RyYWNrL1RleHRUcmFjay5oOgorICAg
ICAgICAoV2ViQ29yZSk6CisgICAgICAgIChUZXh0VHJhY2spOgorICAgICAgICAoV2ViQ29yZTo6
VGV4dFRyYWNrOjpkZWZhdWx0S2luZEtleXdvcmQpOgorICAgICAgICAoV2ViQ29yZTo6VGV4dFRy
YWNrOjpjbGllbnQpOgorICAgICAgICAoV2ViQ29yZTo6VGV4dFRyYWNrOjpyZWZFdmVudFRhcmdl
dCk6CisgICAgICAgIChXZWJDb3JlOjpUZXh0VHJhY2s6OmRlcmVmRXZlbnRUYXJnZXQpOgorICAg
ICAgICAqIGh0bWwvdHJhY2svVGV4dFRyYWNrTGlzdC5jcHA6CisgICAgICAgIChUZXh0VHJhY2tM
aXN0OjpUZXh0VHJhY2tMaXN0KToKKyAgICAgICAgKFRleHRUcmFja0xpc3Q6OmdldFRyYWNrSW5k
ZXgpOgorICAgICAgICAoVGV4dFRyYWNrTGlzdDo6Z2V0VHJhY2tJbmRleFJlbGF0aXZlVG9SZW5k
ZXJlZFRyYWNrcyk6CisgICAgICAgIChUZXh0VHJhY2tMaXN0OjppdGVtKToKKyAgICAgICAgKFRl
eHRUcmFja0xpc3Q6OmdldEluYmFuZFRyYWNrKToKKyAgICAgICAgKFRleHRUcmFja0xpc3Q6Omlu
dmFsaWRhdGVUcmFja0luZGV4ZXNBZnRlclRyYWNrKToKKyAgICAgICAgKFRleHRUcmFja0xpc3Q6
OmFwcGVuZCk6CisgICAgICAgIChUZXh0VHJhY2tMaXN0OjpyZW1vdmUpOgorICAgICAgICAoVGV4
dFRyYWNrTGlzdDo6Y29udGFpbnMpOgorICAgICAgICAqIGh0bWwvdHJhY2svVGV4dFRyYWNrTGlz
dC5oOgorICAgICAgICAoV2ViQ29yZSk6CisgICAgICAgIChUZXh0VHJhY2tMaXN0KToKKyAgICAg
ICAgKiBodG1sL3RyYWNrL1RyYWNrQmFzZS5jcHA6CisgICAgICAgIChXZWJDb3JlOjpUcmFja0Jh
c2U6OlRyYWNrQmFzZSk6CisgICAgICAgIChXZWJDb3JlOjpUcmFja0Jhc2U6OnNldEtpbmQpOgor
ICAgICAgICAqIGh0bWwvdHJhY2svVHJhY2tCYXNlLmg6CisgICAgICAgIChXZWJDb3JlKToKKyAg
ICAgICAgKFdlYkNvcmU6OlRyYWNrQmFzZTo6c2V0TWVkaWFFbGVtZW50KToKKyAgICAgICAgKFdl
YkNvcmU6OlRyYWNrQmFzZTo6bWVkaWFFbGVtZW50KToKKyAgICAgICAgKFRyYWNrQmFzZSk6Cisg
ICAgICAgIChXZWJDb3JlOjpUcmFja0Jhc2U6OmtpbmQpOgorICAgICAgICAoV2ViQ29yZTo6VHJh
Y2tCYXNlOjpsYWJlbCk6CisgICAgICAgIChXZWJDb3JlOjpUcmFja0Jhc2U6OnNldExhYmVsKToK
KyAgICAgICAgKFdlYkNvcmU6OlRyYWNrQmFzZTo6bGFuZ3VhZ2UpOgorICAgICAgICAoV2ViQ29y
ZTo6VHJhY2tCYXNlOjpzZXRMYW5ndWFnZSk6CisgICAgICAgICogaHRtbC90cmFjay9UcmFja0xp
c3RCYXNlLmNwcDogQWRkZWQuCisgICAgICAgIChUcmFja0xpc3RCYXNlOjpUcmFja0xpc3RCYXNl
KToKKyAgICAgICAgKFRyYWNrTGlzdEJhc2U6On5UcmFja0xpc3RCYXNlKToKKyAgICAgICAgKFRy
YWNrTGlzdEJhc2U6Omxlbmd0aCk6CisgICAgICAgIChUcmFja0xpc3RCYXNlOjpnZXRUcmFja0lu
ZGV4KToKKyAgICAgICAgKFRyYWNrTGlzdEJhc2U6OnJlbW92ZSk6CisgICAgICAgIChUcmFja0xp
c3RCYXNlOjpjb250YWlucyk6CisgICAgICAgIChUcmFja0xpc3RCYXNlOjpzY2hlZHVsZUFkZFRy
YWNrRXZlbnQpOgorICAgICAgICAoVHJhY2tMaXN0QmFzZTo6c2NoZWR1bGVSZW1vdmVUcmFja0V2
ZW50KToKKyAgICAgICAgKFRyYWNrTGlzdEJhc2U6OnNjaGVkdWxlQ2hhbmdlRXZlbnQpOgorICAg
ICAgICAoVHJhY2tMaXN0QmFzZTo6YXN5bmNFdmVudFRpbWVyRmlyZWQpOgorICAgICAgICAqIGh0
bWwvdHJhY2svVHJhY2tMaXN0QmFzZS5oOiBDb3BpZWQgZnJvbSBTb3VyY2UvV2ViQ29yZS9odG1s
L3RyYWNrL1RleHRUcmFja0xpc3QuaC4KKyAgICAgICAgKFdlYkNvcmUpOgorICAgICAgICAoVHJh
Y2tMaXN0QmFzZSk6CisgICAgICAgIChXZWJDb3JlOjpUcmFja0xpc3RCYXNlOjpzY3JpcHRFeGVj
dXRpb25Db250ZXh0KToKKyAgICAgICAgKFdlYkNvcmU6OlRyYWNrTGlzdEJhc2U6OmNsZWFyT3du
ZXIpOgorICAgICAgICAoV2ViQ29yZTo6VHJhY2tMaXN0QmFzZTo6b3duZXIpOgorICAgICAgICAo
V2ViQ29yZTo6VHJhY2tMaXN0QmFzZTo6aXNGaXJpbmdFdmVudExpc3RlbmVycyk6CisgICAgICAg
IChXZWJDb3JlOjpUcmFja0xpc3RCYXNlOjpyZWZFdmVudFRhcmdldCk6CisgICAgICAgIChXZWJD
b3JlOjpUcmFja0xpc3RCYXNlOjpkZXJlZkV2ZW50VGFyZ2V0KToKKyAgICAgICAgKFdlYkNvcmU6
OlRyYWNrTGlzdEJhc2U6OmV2ZW50VGFyZ2V0RGF0YSk6CisgICAgICAgIChXZWJDb3JlOjpUcmFj
a0xpc3RCYXNlOjplbnN1cmVFdmVudFRhcmdldERhdGEpOgorICAgICAgICAqIHBsYXRmb3JtL2dy
YXBoaWNzL01lZGlhUGxheWVyLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6Ok1lZGlhUGxheWVyOjph
ZGRUZXh0VHJhY2spOgorICAgICAgICAoV2ViQ29yZTo6TWVkaWFQbGF5ZXI6OnJlbW92ZVRleHRU
cmFjayk6CisgICAgICAgICogcGxhdGZvcm0vZ3JhcGhpY3MvTWVkaWFQbGF5ZXIuaDoKKyAgICAg
ICAgKFdlYkNvcmU6Ok1lZGlhUGxheWVyQ2xpZW50OjptZWRpYVBsYXllckRpZEFkZFRleHRUcmFj
ayk6CisgICAgICAgIChXZWJDb3JlOjpNZWRpYVBsYXllckNsaWVudDo6bWVkaWFQbGF5ZXJEaWRS
ZW1vdmVUZXh0VHJhY2spOgorCiAyMDEzLTA0LTEyICBBbGJlcnRvIEdhcmNpYSAgPGFnYXJjaWFA
aWdhbGlhLmNvbT4KIAogICAgICAgICBbQmxhY2tCZXJyeV0gVXBzdHJlYW0gdGhlIGZpbGVzeXN0
ZW0gY29kZQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvQ01ha2VMaXN0cy50eHQgYi9Tb3Vy
Y2UvV2ViQ29yZS9DTWFrZUxpc3RzLnR4dAppbmRleCA1NjJiNDU2ZjkxY2VhNDc4NzQ0YWU1OWVh
OTVkNDc2ODI3MzA4YjJmLi5jYWIyNDAzNjdlYzJiNjM2MWI0MTFjNGJjY2MxY2FhNDJmOTM1M2Ni
IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9DTWFrZUxpc3RzLnR4dAorKysgYi9Tb3VyY2Uv
V2ViQ29yZS9DTWFrZUxpc3RzLnR4dApAQCAtNTQ5LDEyICs1NDksNiBAQCBzZXQoV2ViQ29yZV9J
RExfRklMRVMKICAgICBodG1sL3NoYWRvdy9IVE1MQ29udGVudEVsZW1lbnQuaWRsCiAgICAgaHRt
bC9zaGFkb3cvSFRNTFNoYWRvd0VsZW1lbnQuaWRsCiAKLSAgICBodG1sL3RyYWNrL1RleHRUcmFj
ay5pZGwKLSAgICBodG1sL3RyYWNrL1RleHRUcmFja0N1ZS5pZGwKLSAgICBodG1sL3RyYWNrL1Rl
eHRUcmFja0N1ZUxpc3QuaWRsCi0gICAgaHRtbC90cmFjay9UZXh0VHJhY2tMaXN0LmlkbAotICAg
IGh0bWwvdHJhY2svVHJhY2tFdmVudC5pZGwKLQogICAgIGluc3BlY3Rvci9JbmplY3RlZFNjcmlw
dEhvc3QuaWRsCiAgICAgaW5zcGVjdG9yL0luc3BlY3RvckZyb250ZW5kSG9zdC5pZGwKICAgICBp
bnNwZWN0b3IvSmF2YVNjcmlwdENhbGxGcmFtZS5pZGwKQEAgLTE1OTMsMTkgKzE1ODcsNiBAQCBz
ZXQoV2ViQ29yZV9TT1VSQ0VTCiAgICAgaHRtbC9zaGFkb3cvU3BpbkJ1dHRvbkVsZW1lbnQuY3Bw
CiAgICAgaHRtbC9zaGFkb3cvVGV4dENvbnRyb2xJbm5lckVsZW1lbnRzLmNwcAogCi0gICAgaHRt
bC90cmFjay9JbmJhbmRUZXh0VHJhY2suY3BwCi0gICAgaHRtbC90cmFjay9Mb2FkYWJsZVRleHRU
cmFjay5jcHAKLSAgICBodG1sL3RyYWNrL1RleHRUcmFjay5jcHAKLSAgICBodG1sL3RyYWNrL1Rl
eHRUcmFja0N1ZS5jcHAKLSAgICBodG1sL3RyYWNrL1RleHRUcmFja0N1ZUdlbmVyaWMuY3BwCi0g
ICAgaHRtbC90cmFjay9UZXh0VHJhY2tDdWVMaXN0LmNwcAotICAgIGh0bWwvdHJhY2svVGV4dFRy
YWNrTGlzdC5jcHAKLSAgICBodG1sL3RyYWNrL1RyYWNrQmFzZS5jcHAKLSAgICBodG1sL3RyYWNr
L1RyYWNrRXZlbnQuY3BwCi0gICAgaHRtbC90cmFjay9XZWJWVFRFbGVtZW50LmNwcAotICAgIGh0
bWwvdHJhY2svV2ViVlRUUGFyc2VyLmNwcAotICAgIGh0bWwvdHJhY2svV2ViVlRUVG9rZW5pemVy
LmNwcAotCiAgICAgaW5zcGVjdG9yL0NvbnNvbGVNZXNzYWdlLmNwcAogICAgIGluc3BlY3Rvci9D
b250ZW50U2VhcmNoVXRpbHMuY3BwCiAgICAgaW5zcGVjdG9yL0RPTUVkaXRvci5jcHAKQEAgLTE3
MzksNyArMTcyMCw2IEBAIHNldChXZWJDb3JlX1NPVVJDRVMKICAgICBsb2FkZXIvY2FjaGUvQ2Fj
aGVkU2hhZGVyLmNwcAogICAgIGxvYWRlci9jYWNoZS9DYWNoZWRTVkdEb2N1bWVudC5jcHAKICAg
ICBsb2FkZXIvY2FjaGUvQ2FjaGVkU1ZHRG9jdW1lbnRSZWZlcmVuY2UuY3BwCi0gICAgbG9hZGVy
L2NhY2hlL0NhY2hlZFRleHRUcmFjay5jcHAKICAgICBsb2FkZXIvY2FjaGUvQ2FjaGVkWFNMU3R5
bGVTaGVldC5jcHAKICAgICBsb2FkZXIvY2FjaGUvTWVtb3J5Q2FjaGUuY3BwCiAKQEAgLTI3MDQs
NyArMjY4NCwzMSBAQCBpZiAoRU5BQkxFX1dFQkdMKQogZW5kaWYgKCkKIAogaWYgKEVOQUJMRV9W
SURFT19UUkFDSykKKyAgICBsaXN0KEFQUEVORCBXZWJDb3JlX0lETF9GSUxFUworICAgICAgICBo
dG1sL3RyYWNrL1RleHRUcmFjay5pZGwKKyAgICAgICAgaHRtbC90cmFjay9UZXh0VHJhY2tDdWUu
aWRsCisgICAgICAgIGh0bWwvdHJhY2svVGV4dFRyYWNrQ3VlTGlzdC5pZGwKKyAgICAgICAgaHRt
bC90cmFjay9UZXh0VHJhY2tMaXN0LmlkbAorICAgICAgICBodG1sL3RyYWNrL1RyYWNrRXZlbnQu
aWRsCisgICAgKQorCiAgICAgbGlzdChBUFBFTkQgV2ViQ29yZV9TT1VSQ0VTCisgICAgICAgIGh0
bWwvdHJhY2svSW5iYW5kVGV4dFRyYWNrLmNwcAorICAgICAgICBodG1sL3RyYWNrL0xvYWRhYmxl
VGV4dFRyYWNrLmNwcAorICAgICAgICBodG1sL3RyYWNrL1RleHRUcmFjay5jcHAKKyAgICAgICAg
aHRtbC90cmFjay9UZXh0VHJhY2tDdWUuY3BwCisgICAgICAgIGh0bWwvdHJhY2svVGV4dFRyYWNr
Q3VlR2VuZXJpYy5jcHAKKyAgICAgICAgaHRtbC90cmFjay9UZXh0VHJhY2tDdWVMaXN0LmNwcAor
ICAgICAgICBodG1sL3RyYWNrL1RleHRUcmFja0xpc3QuY3BwCisgICAgICAgIGh0bWwvdHJhY2sv
VHJhY2tCYXNlLmNwcAorICAgICAgICBodG1sL3RyYWNrL1RyYWNrRXZlbnQuY3BwCisgICAgICAg
IGh0bWwvdHJhY2svVHJhY2tMaXN0QmFzZS5jcHAKKyAgICAgICAgaHRtbC90cmFjay9XZWJWVFRF
bGVtZW50LmNwcAorICAgICAgICBodG1sL3RyYWNrL1dlYlZUVFBhcnNlci5jcHAKKyAgICAgICAg
aHRtbC90cmFjay9XZWJWVFRUb2tlbml6ZXIuY3BwCisKKyAgICAgICAgbG9hZGVyL2NhY2hlL0Nh
Y2hlZFRleHRUcmFjay5jcHAKKwogICAgICAgICBwbGF0Zm9ybS9ncmFwaGljcy9UZXh0VHJhY2tS
ZXByZXNlbnRhdGlvbi5jcHAKICAgICApCiBlbmRpZiAoKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dl
YkNvcmUvVGFyZ2V0LnByaSBiL1NvdXJjZS9XZWJDb3JlL1RhcmdldC5wcmkKaW5kZXggMjZiZWVk
NGEwNDJjODFlMTExZmNmNTk5NGZlNjAzZDRiZmYwOTEzZS4uMGE1M2M5OGQzMTY0ZmNkN2M3OTI3
N2FiMjliZjZmMzVlMmQyYjY1MiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvVGFyZ2V0LnBy
aQorKysgYi9Tb3VyY2UvV2ViQ29yZS9UYXJnZXQucHJpCkBAIC0zOTc4LDYgKzM5NzgsNyBAQCBl
bmFibGU/KFZJREVPX1RSQUNLKSB7CiAgICAgICAgIGh0bWwvdHJhY2svVGV4dFRyYWNrTGlzdC5o
IFwKICAgICAgICAgaHRtbC90cmFjay9UcmFja0Jhc2UuaCBcCiAgICAgICAgIGh0bWwvdHJhY2sv
VHJhY2tFdmVudC5oIFwKKyAgICAgICAgaHRtbC90cmFjay9UcmFja0xpc3RCYXNlLmggXAogICAg
ICAgICBodG1sL3RyYWNrL1dlYlZUVFBhcnNlci5oIFwKICAgICAgICAgaHRtbC90cmFjay9XZWJW
VFRUb2tlbi5oIFwKICAgICAgICAgaHRtbC90cmFjay9XZWJWVFRUb2tlbml6ZXIuaCBcCkBAIC00
MDAxLDYgKzQwMDIsNyBAQCBlbmFibGU/KFZJREVPX1RSQUNLKSB7CiAgICAgICAgIGh0bWwvdHJh
Y2svVGV4dFRyYWNrTGlzdC5jcHAgXAogICAgICAgICBodG1sL3RyYWNrL1RyYWNrQmFzZS5jcHAg
XAogICAgICAgICBodG1sL3RyYWNrL1RyYWNrRXZlbnQuY3BwIFwKKyAgICAgICAgaHRtbC90cmFj
ay9UcmFja0xpc3RCYXNlLmNwcCBcCiAgICAgICAgIGh0bWwvdHJhY2svV2ViVlRURWxlbWVudC5j
cHAgXAogICAgICAgICBodG1sL3RyYWNrL1dlYlZUVFBhcnNlci5jcHAgXAogICAgICAgICBodG1s
L3RyYWNrL1dlYlZUVFRva2VuaXplci5jcHAgXApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUv
V2ViQ29yZS52Y3Byb2ovV2ViQ29yZS52Y3Byb2ogYi9Tb3VyY2UvV2ViQ29yZS9XZWJDb3JlLnZj
cHJvai9XZWJDb3JlLnZjcHJvagppbmRleCBlZGExZjYwYzMwNTUwMGI3OTRjNWRkMTM0YTYwMjM5
YWQ2ZjU0NDVkLi5lMGNkMDliMWZiNDA5MTBlMjJlZDQ5ZDQxZjliZWUxMjNmNGE4OGZlIDEwMDc1
NQotLS0gYS9Tb3VyY2UvV2ViQ29yZS9XZWJDb3JlLnZjcHJvai9XZWJDb3JlLnZjcHJvagorKysg
Yi9Tb3VyY2UvV2ViQ29yZS9XZWJDb3JlLnZjcHJvai9XZWJDb3JlLnZjcHJvagpAQCAtMzAyMzAs
NiArMzAyMzAsMTAgQEAKIAkJCQkJPgogCQkJCTwvRmlsZT4KIAkJCQk8RmlsZQorCQkJCQlSZWxh
dGl2ZVBhdGg9Ii4uXHBsYXRmb3JtXGdyYXBoaWNzXEluYmFuZFRleHRUcmFja1ByaXZhdGUuaCIK
KwkJCQkJPgorCQkJCTwvRmlsZT4KKwkJCQk8RmlsZQogCQkJCQlSZWxhdGl2ZVBhdGg9Ii4uXHBs
YXRmb3JtXGdyYXBoaWNzXEludFBvaW50LmgiCiAJCQkJCT4KIAkJCQk8L0ZpbGU+CkBAIC02NTc1
MCwxMCArNjU3NTQsNiBAQAogCQkJCQk+CiAJCQkJPC9GaWxlPgogCQkJCTxGaWxlCi0JCQkJCVJl
bGF0aXZlUGF0aD0iLi5caHRtbFx0cmFja1xJbmJhbmRUZXh0VHJhY2tQcml2YXRlLmgiCi0JCQkJ
CT4KLQkJCQk8L0ZpbGU+Ci0JCQkJPEZpbGUKIAkJCQkJUmVsYXRpdmVQYXRoPSIuLlxodG1sXHRy
YWNrXExvYWRhYmxlVGV4dFRyYWNrLmNwcCIKIAkJCQkJPgogCQkJCTwvRmlsZT4KQEAgLTY1ODE4
LDYgKzY1ODE4LDE0IEBACiAJCQkJCT4KIAkJCQk8L0ZpbGU+CiAJCQkJPEZpbGUKKwkJCQkJUmVs
YXRpdmVQYXRoPSIuLlxodG1sXHRyYWNrXFRyYWNrTGlzdEJhc2UuY3BwIgorCQkJCQk+CisJCQkJ
PC9GaWxlPgorCQkJCTxGaWxlCisJCQkJCVJlbGF0aXZlUGF0aD0iLi5caHRtbFx0cmFja1xUcmFj
a0xpc3RCYXNlLmgiCisJCQkJCT4KKwkJCQk8L0ZpbGU+CisJCQkJPEZpbGUKIAkJCQkJUmVsYXRp
dmVQYXRoPSIuLlxodG1sXHRyYWNrXFdlYlZUVEVsZW1lbnQuY3BwIgogCQkJCQk+CiAJCQkJPC9G
aWxlPgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvV2ViQ29yZS54Y29kZXByb2ovcHJvamVj
dC5wYnhwcm9qIGIvU291cmNlL1dlYkNvcmUvV2ViQ29yZS54Y29kZXByb2ovcHJvamVjdC5wYnhw
cm9qCmluZGV4IDcwNDg5NjIzMWU0Nzk1OWQzYzMwNDFjYTM4ZjFkMjEyYjZiODBjOTAuLmZjMTc1
Mjk1ODIyOGZiMDZiOGUyZWE4MDYyN2UxNWM0ODIzNGE1ZDMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJDb3JlL1dlYkNvcmUueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvagorKysgYi9Tb3VyY2UvV2Vi
Q29yZS9XZWJDb3JlLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2oKQEAgLTUxMTEsNiArNTExMSw4
IEBACiAJCUJDRkUyRjEyMEMxQjU4MzgwMDIwMjM1RiAvKiBKU1JlY3QuaCBpbiBIZWFkZXJzICov
ID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEJDRkUyRjEwMEMxQjU4MzcwMDIwMjM1
RiAvKiBKU1JlY3QuaCAqLzsgfTsKIAkJQkNGRjY0OTEwRUFEMTVDMjAwQzFENkY3IC8qIExlbmd0
aEJveC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQkNG
RjY0OEYwRUFEMTVDMjAwQzFENkY3IC8qIExlbmd0aEJveC5oICovOyBzZXR0aW5ncyA9IHtBVFRS
SUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CiAJCUJDRkY2NDkyMEVBRDE1QzIwMEMxRDZGNyAv
KiBMZW5ndGhTaXplLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVS
ZWYgPSBCQ0ZGNjQ5MDBFQUQxNUMyMDBDMUQ2RjcgLyogTGVuZ3RoU2l6ZS5oICovOyBzZXR0aW5n
cyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CisJCUJFODhFMEMxMTcxNUNFMjYw
MDY1OEQ5OCAvKiBUcmFja0xpc3RCYXNlLmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1
aWxkRmlsZTsgZmlsZVJlZiA9IEJFODhFMEJGMTcxNUNFMjYwMDY1OEQ5OCAvKiBUcmFja0xpc3RC
YXNlLmNwcCAqLzsgfTsKKwkJQkU4OEUwQzIxNzE1Q0UyNjAwNjU4RDk4IC8qIFRyYWNrTGlzdEJh
c2UuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEJFODhF
MEMwMTcxNUNFMjYwMDY1OEQ5OCAvKiBUcmFja0xpc3RCYXNlLmggKi87IH07CiAJCUMwNDZFMUFD
MTIwOEE5RkUwMEJBMkNGNyAvKiBMb2NhbGl6ZWRTdHJpbmdzLmNwcCBpbiBTb3VyY2VzICovID0g
e2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEMwNDZFMUFCMTIwOEE5RkUwMEJBMkNGNyAv
KiBMb2NhbGl6ZWRTdHJpbmdzLmNwcCAqLzsgfTsKIAkJQzBDMDU0Q0IxMTE4QzhFNDAwQ0UyNjM2
IC8qIENvZGVHZW5lcmF0b3IucG0gaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7
IGZpbGVSZWYgPSA5M0Y4QjMwNTBBMzAwRkUxMDBGNjFBQjggLyogQ29kZUdlbmVyYXRvci5wbSAq
Lzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OwogCQlDMEMwNTRD
QzExMThDOEU0MDBDRTI2MzYgLyogZ2VuZXJhdGUtYmluZGluZ3MucGwgaW4gSGVhZGVycyAqLyA9
IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA5M0Y4QjMwNzBBMzAwRkVBMDBGNjFBQjgg
LyogZ2VuZXJhdGUtYmluZGluZ3MucGwgKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJp
dmF0ZSwgKTsgfTsgfTsKQEAgLTExODM4LDYgKzExODQwLDggQEAKIAkJQkNGRjY0OTAwRUFEMTVD
MjAwQzFENkY3IC8qIExlbmd0aFNpemUuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBm
aWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRo
ID0gTGVuZ3RoU2l6ZS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQlCRTg1NUY3RjA3
MDFFODM1MDAyMzk3NjkgLyogV2ViQ29yZVZpZXcuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJl
bmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsgaW5kZW50V2lkdGggPSA0OyBsYXN0S25vd25GaWxlVHlw
ZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gV2ViQ29yZVZpZXcuaDsgc291cmNlVHJlZSA9ICI8
Z3JvdXA+IjsgdGFiV2lkdGggPSA4OyB1c2VzVGFicyA9IDA7IH07CiAJCUJFODU2MDUxMDcwMUY5
MTEwMDIzOTc2OSAvKiBXZWJDb3JlVmlldy5tICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7
IGZpbGVFbmNvZGluZyA9IDMwOyBpbmRlbnRXaWR0aCA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0g
c291cmNlY29kZS5jLm9iamM7IHBhdGggPSBXZWJDb3JlVmlldy5tOyBzb3VyY2VUcmVlID0gIjxn
cm91cD4iOyB0YWJXaWR0aCA9IDg7IHVzZXNUYWJzID0gMDsgfTsKKwkJQkU4OEUwQkYxNzE1Q0Uy
NjAwNjU4RDk4IC8qIFRyYWNrTGlzdEJhc2UuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVu
Y2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAu
Y3BwOyBwYXRoID0gVHJhY2tMaXN0QmFzZS5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07
CisJCUJFODhFMEMwMTcxNUNFMjYwMDY1OEQ5OCAvKiBUcmFja0xpc3RCYXNlLmggKi8gPSB7aXNh
ID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUg
PSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFRyYWNrTGlzdEJhc2UuaDsgc291cmNlVHJlZSA9ICI8
Z3JvdXA+IjsgfTsKIAkJQkU5MUZDOEIwNjEzMzY2NjAwNUUzNzkwIC8qIFBvc2l0aW9uLmggKi8g
PSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gMzA7IGluZGVudFdpZHRo
ID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFBvc2l0aW9u
Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IHRhYldpZHRoID0gODsgdXNlc1RhYnMgPSAwOyB9
OwogCQlCRTkxRkM4QzA2MTMzNjY2MDA1RTM3OTAgLyogUG9zaXRpb24uY3BwICovID0ge2lzYSA9
IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDMwOyBpbmRlbnRXaWR0aCA9IDQ7IGxh
c3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gUG9zaXRpb24uY3Bw
OyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB0YWJXaWR0aCA9IDg7IHVzZXNUYWJzID0gMDsgfTsK
IAkJQkU5ODNEOTUwNTJBMkUwQTAwODkyRDg1IC8qIFdlYkNvcmVLZXlib2FyZFVJTW9kZS5oICov
ID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDMwOyBpbmRlbnRXaWR0
aCA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBXZWJDb3Jl
S2V5Ym9hcmRVSU1vZGUuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgdGFiV2lkdGggPSA4OyB1
c2VzVGFicyA9IDA7IH07CkBAIC0xNzY4MSw2ICsxNzY4NSw4IEBACiAJCUIxQUQ0RTc3MTNBMTJB
NzIwMDg0NkIyNyAvKiB0cmFjayAqLyA9IHsKIAkJCWlzYSA9IFBCWEdyb3VwOwogCQkJY2hpbGRy
ZW4gPSAoCisJCQkJQkU4OEUwQkYxNzE1Q0UyNjAwNjU4RDk4IC8qIFRyYWNrTGlzdEJhc2UuY3Bw
ICovLAorCQkJCUJFODhFMEMwMTcxNUNFMjYwMDY1OEQ5OCAvKiBUcmFja0xpc3RCYXNlLmggKi8s
CiAJCQkJMDc5NDE3OEYxNjZFODU1RjAwOTQxNkMyIC8qIEluYmFuZFRleHRUcmFjay5jcHAgKi8s
CiAJCQkJMDc5NDE3OTAxNjZFODU1RjAwOTQxNkMyIC8qIEluYmFuZFRleHRUcmFjay5oICovLAog
CQkJCTk3NTlFOTM0MTRFRjFDRjgwMDI2QTJERCAvKiBMb2FkYWJsZVRleHRUcmFjay5jcHAgKi8s
CkBAIC0yNDA2MCw2ICsyNDA2Niw3IEBACiAJCQkJRTE4MDgxMTcxNkZDRjlDQjAwQjgwRDA3IC8q
IFN5bmNocm9ub3VzTG9hZGVyQ2xpZW50LmggaW4gSGVhZGVycyAqLywKIAkJCQlFMTUyNTUxNTE2
RkQyMzUwMDAzRDdBREIgLyogV2ViQ29yZVJlc291cmNlSGFuZGxlQXNPcGVyYXRpb25RdWV1ZURl
bGVnYXRlLmggaW4gSGVhZGVycyAqLywKIAkJCQlFMUI1MzM0OTE3MTdERUUzMDBGMjA1RjkgLyog
Q2FjaGVkUmF3UmVzb3VyY2VDbGllbnQuaCBpbiBIZWFkZXJzICovLAorCQkJCUJFODhFMEMyMTcx
NUNFMjYwMDY1OEQ5OCAvKiBUcmFja0xpc3RCYXNlLmggaW4gSGVhZGVycyAqLywKIAkJCSk7CiAJ
CQlydW5Pbmx5Rm9yRGVwbG95bWVudFBvc3Rwcm9jZXNzaW5nID0gMDsKIAkJfTsKQEAgLTI3MDA2
LDYgKzI3MDEzLDcgQEAKIAkJCQlFMTgwODExNjE2RkNGOUNCMDBCODBEMDcgLyogU3luY2hyb25v
dXNMb2FkZXJDbGllbnQubW0gaW4gU291cmNlcyAqLywKIAkJCQlFMTUyNTUxNjE2RkQyMzUwMDAz
RDdBREIgLyogV2ViQ29yZVJlc291cmNlSGFuZGxlQXNPcGVyYXRpb25RdWV1ZURlbGVnYXRlLm1t
IGluIFNvdXJjZXMgKi8sCiAJCQkJRTFCNTMzNDcxNzE3RDBBMTAwRjIwNUY5IC8qIENhY2hlZFNW
R0RvY3VtZW50UmVmZXJlbmNlLmNwcCBpbiBTb3VyY2VzICovLAorCQkJCUJFODhFMEMxMTcxNUNF
MjYwMDY1OEQ5OCAvKiBUcmFja0xpc3RCYXNlLmNwcCBpbiBTb3VyY2VzICovLAogCQkJKTsKIAkJ
CXJ1bk9ubHlGb3JEZXBsb3ltZW50UG9zdHByb2Nlc3NpbmcgPSAwOwogCQl9OwpkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MTWVkaWFFbGVtZW50LmNwcCBiL1NvdXJjZS9XZWJD
b3JlL2h0bWwvSFRNTE1lZGlhRWxlbWVudC5jcHAKaW5kZXggYzViZDZlMDhhMjI5YWNiZjE4NjM0
ODIyMjk3ZDhmNGViNzE1N2M5NS4uNWRkY2Q5Mjg0NTBmODg3ZmM2MDk0Y2RlYmQxZDNlNDdmNmJk
M2I5MyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MTWVkaWFFbGVtZW50LmNw
cAorKysgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxNZWRpYUVsZW1lbnQuY3BwCkBAIC0yNzky
LDcgKzI3OTIsNyBAQCBkb3VibGUgSFRNTE1lZGlhRWxlbWVudDo6cGVyY2VudExvYWRlZCgpIGNv
bnN0CiAKICNpZiBFTkFCTEUoVklERU9fVFJBQ0spCiAKLXZvaWQgSFRNTE1lZGlhRWxlbWVudDo6
bWVkaWFQbGF5ZXJEaWRBZGRUcmFjayhQYXNzUmVmUHRyPEluYmFuZFRleHRUcmFja1ByaXZhdGU+
IHBycFRyYWNrKQordm9pZCBIVE1MTWVkaWFFbGVtZW50OjptZWRpYVBsYXllckRpZEFkZFRleHRU
cmFjayhQYXNzUmVmUHRyPEluYmFuZFRleHRUcmFja1ByaXZhdGU+IHBycFRyYWNrKQogewogICAg
IGlmICghUnVudGltZUVuYWJsZWRGZWF0dXJlczo6d2Via2l0VmlkZW9UcmFja0VuYWJsZWQoKSkK
ICAgICAgICAgcmV0dXJuOwpAQCAtMjgyNCwxMCArMjgyNCwxMCBAQCB2b2lkIEhUTUxNZWRpYUVs
ZW1lbnQ6Om1lZGlhUGxheWVyRGlkQWRkVHJhY2soUGFzc1JlZlB0cjxJbmJhbmRUZXh0VHJhY2tQ
cml2YXRlPgogICAgIC8vIDkuIEZpcmUgYW4gZXZlbnQgd2l0aCB0aGUgbmFtZSBhZGR0cmFjaywg
dGhhdCBkb2VzIG5vdCBidWJibGUgYW5kIGlzIG5vdCBjYW5jZWxhYmxlLCBhbmQgdGhhdCB1c2Vz
IHRoZSBUcmFja0V2ZW50CiAgICAgLy8gaW50ZXJmYWNlLCB3aXRoIHRoZSB0cmFjayBhdHRyaWJ1
dGUgaW5pdGlhbGl6ZWQgdG8gdGhlIHRleHQgdHJhY2sncyBUZXh0VHJhY2sgb2JqZWN0LCBhdCB0
aGUgbWVkaWEgZWxlbWVudCdzCiAgICAgLy8gdGV4dFRyYWNrcyBhdHRyaWJ1dGUncyBUZXh0VHJh
Y2tMaXN0IG9iamVjdC4KLSAgICBhZGRUcmFjayh0ZXh0VHJhY2suZ2V0KCkpOworICAgIGFkZFRl
eHRUcmFjayh0ZXh0VHJhY2suZ2V0KCkpOwogfQogCi12b2lkIEhUTUxNZWRpYUVsZW1lbnQ6Om1l
ZGlhUGxheWVyRGlkUmVtb3ZlVHJhY2soUGFzc1JlZlB0cjxJbmJhbmRUZXh0VHJhY2tQcml2YXRl
PiBwcnBUcmFjaykKK3ZvaWQgSFRNTE1lZGlhRWxlbWVudDo6bWVkaWFQbGF5ZXJEaWRSZW1vdmVU
ZXh0VHJhY2soUGFzc1JlZlB0cjxJbmJhbmRUZXh0VHJhY2tQcml2YXRlPiBwcnBUcmFjaykKIHsK
ICAgICBpZiAoIVJ1bnRpbWVFbmFibGVkRmVhdHVyZXM6OndlYmtpdFZpZGVvVHJhY2tFbmFibGVk
KCkpCiAgICAgICAgIHJldHVybjsKQEAgLTI4MzYsMTIgKzI4MzYsMTIgQEAgdm9pZCBIVE1MTWVk
aWFFbGVtZW50OjptZWRpYVBsYXllckRpZFJlbW92ZVRyYWNrKFBhc3NSZWZQdHI8SW5iYW5kVGV4
dFRyYWNrUHJpdmEKICAgICAgICAgcmV0dXJuOwogCiAgICAgLy8gVGhpcyBjYXN0IGlzIHNhZmUg
YmVjYXVzZSB3ZSBjcmVhdGVkIHRoZSBJbmJhbmRUZXh0VHJhY2sgd2l0aCB0aGUgSW5iYW5kVGV4
dFRyYWNrUHJpdmF0ZQotICAgIC8vIHBhc3NlZCB0byBtZWRpYVBsYXllckRpZEFkZFRyYWNrLgor
ICAgIC8vIHBhc3NlZCB0byBtZWRpYVBsYXllckRpZEFkZFRleHRUcmFjay4KICAgICBSZWZQdHI8
SW5iYW5kVGV4dFRyYWNrPiB0ZXh0VHJhY2sgPSBzdGF0aWNfY2FzdDxJbmJhbmRUZXh0VHJhY2sq
PihwcnBUcmFjay0+Y2xpZW50KCkpOwogICAgIGlmICghdGV4dFRyYWNrKQogICAgICAgICByZXR1
cm47CiAKLSAgICByZW1vdmVUcmFjayh0ZXh0VHJhY2suZ2V0KCkpOworICAgIHJlbW92ZVRleHRU
cmFjayh0ZXh0VHJhY2suZ2V0KCkpOwogfQogCiAjaWYgVVNFKFBMQVRGT1JNX1RFWFRfVFJBQ0tf
TUVOVSkKQEAgLTI5MjAsMTQgKzI5MjAsMTQgQEAgdm9pZCBIVE1MTWVkaWFFbGVtZW50OjpjbG9z
ZUNhcHRpb25UcmFja3NDaGFuZ2VkKCkKICNlbmRpZgogfQogCi12b2lkIEhUTUxNZWRpYUVsZW1l
bnQ6OmFkZFRyYWNrKFRleHRUcmFjayogdHJhY2spCit2b2lkIEhUTUxNZWRpYUVsZW1lbnQ6OmFk
ZFRleHRUcmFjayhUZXh0VHJhY2sqIHRyYWNrKQogewogICAgIHRleHRUcmFja3MoKS0+YXBwZW5k
KHRyYWNrKTsKICAgICAKICAgICBjbG9zZUNhcHRpb25UcmFja3NDaGFuZ2VkKCk7CiB9CiAKLXZv
aWQgSFRNTE1lZGlhRWxlbWVudDo6cmVtb3ZlVHJhY2soVGV4dFRyYWNrKiB0cmFjaykKK3ZvaWQg
SFRNTE1lZGlhRWxlbWVudDo6cmVtb3ZlVGV4dFRyYWNrKFRleHRUcmFjayogdHJhY2spCiB7CiAg
ICAgVHJhY2tEaXNwbGF5VXBkYXRlU2NvcGUgc2NvcGUodGhpcyk7CiAgICAgVGV4dFRyYWNrQ3Vl
TGlzdCogY3VlcyA9IHRyYWNrLT5jdWVzKCk7CkBAIC0yOTQ4LDcgKzI5NDgsNyBAQCB2b2lkIEhU
TUxNZWRpYUVsZW1lbnQ6OnJlbW92ZUFsbEluYmFuZFRyYWNrcygpCiAgICAgICAgIFRleHRUcmFj
ayogdHJhY2sgPSBtX3RleHRUcmFja3MtPml0ZW0oaSk7CiAKICAgICAgICAgaWYgKHRyYWNrLT50
cmFja1R5cGUoKSA9PSBUZXh0VHJhY2s6OkluQmFuZCkKLSAgICAgICAgICAgIHJlbW92ZVRyYWNr
KHRyYWNrKTsKKyAgICAgICAgICAgIHJlbW92ZVRleHRUcmFjayh0cmFjayk7CiAgICAgfQogfQog
CkBAIC0yOTc4LDcgKzI5NzgsNyBAQCBQYXNzUmVmUHRyPFRleHRUcmFjaz4gSFRNTE1lZGlhRWxl
bWVudDo6YWRkVGV4dFRyYWNrKGNvbnN0IFN0cmluZyYga2luZCwgY29uc3QgUwogICAgIC8vIGZp
cnN0IGFwcGVuZCB0aGUgdHJhY2sgdG8gdGhlIHRleHQgdHJhY2sgbGlzdC4KIAogICAgIC8vIDYu
IEFkZCB0aGUgbmV3IHRleHQgdHJhY2sgdG8gdGhlIG1lZGlhIGVsZW1lbnQncyBsaXN0IG9mIHRl
eHQgdHJhY2tzLgotICAgIGFkZFRyYWNrKHRleHRUcmFjay5nZXQoKSk7CisgICAgYWRkVGV4dFRy
YWNrKHRleHRUcmFjay5nZXQoKSk7CiAKICAgICAvLyAuLi4gaXRzIHRleHQgdHJhY2sgcmVhZGlu
ZXNzIHN0YXRlIHRvIHRoZSB0ZXh0IHRyYWNrIGxvYWRlZCBzdGF0ZSAuLi4KICAgICB0ZXh0VHJh
Y2stPnNldFJlYWRpbmVzc1N0YXRlKFRleHRUcmFjazo6TG9hZGVkKTsKQEAgLTMwMDAsNyArMzAw
MCw3IEBAIFRleHRUcmFja0xpc3QqIEhUTUxNZWRpYUVsZW1lbnQ6OnRleHRUcmFja3MoKQogICAg
IHJldHVybiBtX3RleHRUcmFja3MuZ2V0KCk7CiB9CiAKLXZvaWQgSFRNTE1lZGlhRWxlbWVudDo6
ZGlkQWRkVHJhY2soSFRNTFRyYWNrRWxlbWVudCogdHJhY2tFbGVtZW50KQordm9pZCBIVE1MTWVk
aWFFbGVtZW50OjpkaWRBZGRUZXh0VHJhY2soSFRNTFRyYWNrRWxlbWVudCogdHJhY2tFbGVtZW50
KQogewogICAgIEFTU0VSVCh0cmFja0VsZW1lbnQtPmhhc1RhZ05hbWUodHJhY2tUYWcpKTsKIApA
QCAtMzAxNSw3ICszMDE1LDcgQEAgdm9pZCBIVE1MTWVkaWFFbGVtZW50OjpkaWRBZGRUcmFjayhI
VE1MVHJhY2tFbGVtZW50KiB0cmFja0VsZW1lbnQpCiAgICAgaWYgKCF0ZXh0VHJhY2spCiAgICAg
ICAgIHJldHVybjsKICAgICAKLSAgICBhZGRUcmFjayh0ZXh0VHJhY2suZ2V0KCkpOworICAgIGFk
ZFRleHRUcmFjayh0ZXh0VHJhY2suZ2V0KCkpOwogICAgIAogICAgIC8vIERvIG5vdCBzY2hlZHVs
ZSB0aGUgdHJhY2sgbG9hZGluZyB1bnRpbCBwYXJzaW5nIGZpbmlzaGVzIHNvIHdlIGRvbid0IHN0
YXJ0IGJlZm9yZSBhbGwgdHJhY2tzCiAgICAgLy8gaW4gdGhlIG1hcmt1cCBoYXZlIGJlZW4gYWRk
ZWQuCkBAIC0zMDI2LDcgKzMwMjYsNyBAQCB2b2lkIEhUTUxNZWRpYUVsZW1lbnQ6OmRpZEFkZFRy
YWNrKEhUTUxUcmFja0VsZW1lbnQqIHRyYWNrRWxlbWVudCkKICAgICAgICAgbWVkaWFDb250cm9s
cygpLT5jbG9zZWRDYXB0aW9uVHJhY2tzQ2hhbmdlZCgpOwogfQogCi12b2lkIEhUTUxNZWRpYUVs
ZW1lbnQ6OmRpZFJlbW92ZVRyYWNrKEhUTUxUcmFja0VsZW1lbnQqIHRyYWNrRWxlbWVudCkKK3Zv
aWQgSFRNTE1lZGlhRWxlbWVudDo6ZGlkUmVtb3ZlVGV4dFRyYWNrKEhUTUxUcmFja0VsZW1lbnQq
IHRyYWNrRWxlbWVudCkKIHsKICAgICBBU1NFUlQodHJhY2tFbGVtZW50LT5oYXNUYWdOYW1lKHRy
YWNrVGFnKSk7CiAKQEAgLTMwNTMsNyArMzA1Myw3IEBAIHZvaWQgSFRNTE1lZGlhRWxlbWVudDo6
ZGlkUmVtb3ZlVHJhY2soSFRNTFRyYWNrRWxlbWVudCogdHJhY2tFbGVtZW50KQogICAgIC8vIFdo
ZW4gYSB0cmFjayBlbGVtZW50J3MgcGFyZW50IGVsZW1lbnQgY2hhbmdlcyBhbmQgdGhlIG9sZCBw
YXJlbnQgd2FzIGEgbWVkaWEgZWxlbWVudCwgCiAgICAgLy8gdGhlbiB0aGUgdXNlciBhZ2VudCBt
dXN0IHJlbW92ZSB0aGUgdHJhY2sgZWxlbWVudCdzIGNvcnJlc3BvbmRpbmcgdGV4dCB0cmFjayBm
cm9tIHRoZSAKICAgICAvLyBtZWRpYSBlbGVtZW50J3MgbGlzdCBvZiB0ZXh0IHRyYWNrcy4KLSAg
ICByZW1vdmVUcmFjayh0ZXh0VHJhY2suZ2V0KCkpOworICAgIHJlbW92ZVRleHRUcmFjayh0ZXh0
VHJhY2suZ2V0KCkpOwogCiAgICAgc2l6ZV90IGluZGV4ID0gbV90ZXh0VHJhY2tzV2hlblJlc291
cmNlU2VsZWN0aW9uQmVnYW4uZmluZCh0ZXh0VHJhY2suZ2V0KCkpOwogICAgIGlmIChpbmRleCAh
PSBub3RGb3VuZCkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTE1lZGlhRWxl
bWVudC5oIGIvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MTWVkaWFFbGVtZW50LmgKaW5kZXggOGU1
M2U2ZjA5Y2YyNWI4YTkxZDFjMzVhNWQyZTk1MjU1MDQyYTRhYS4uZDA4NWU5ZGZiODg2MDQwN2Vh
ZDkxOTFlYzI3Y2FiNGQ5MmI5NzY2MyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvaHRtbC9I
VE1MTWVkaWFFbGVtZW50LmgKKysrIGIvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MTWVkaWFFbGVt
ZW50LmgKQEAgLTU4LDcgKzU4LDYgQEAgY2xhc3MgTWVkaWFDb250cm9sbGVyOwogY2xhc3MgTWVk
aWFDb250cm9sczsKIGNsYXNzIE1lZGlhRXJyb3I7CiBjbGFzcyBLVVJMOwotY2xhc3MgVGV4dFRy
YWNrTGlzdDsKIGNsYXNzIFRpbWVSYW5nZXM7CiAjaWYgRU5BQkxFKFBMVUdJTl9QUk9YWV9GT1Jf
VklERU8pCiBjbGFzcyBXaWRnZXQ7CkBAIC03Miw2ICs3MSw3IEBAIGNsYXNzIE1lZGlhS2V5czsK
IAogI2lmIEVOQUJMRShWSURFT19UUkFDSykKIGNsYXNzIEluYmFuZFRleHRUcmFja1ByaXZhdGU7
CitjbGFzcyBUZXh0VHJhY2tMaXN0OwogCiB0eXBlZGVmIFBPREludGVydmFsVHJlZTxkb3VibGUs
IFRleHRUcmFja0N1ZSo+IEN1ZUludGVydmFsVHJlZTsKIHR5cGVkZWYgQ3VlSW50ZXJ2YWxUcmVl
OjpJbnRlcnZhbFR5cGUgQ3VlSW50ZXJ2YWw7CkBAIC0yMjksMTcgKzIyOSwxNyBAQCBwdWJsaWM6
CiAgICAgVGV4dFRyYWNrTGlzdCogdGV4dFRyYWNrcygpOwogICAgIEN1ZUxpc3QgY3VycmVudGx5
QWN0aXZlQ3VlcygpIGNvbnN0IHsgcmV0dXJuIG1fY3VycmVudGx5QWN0aXZlQ3VlczsgfQogCi0g
ICAgdm9pZCBhZGRUcmFjayhUZXh0VHJhY2sqKTsKLSAgICB2b2lkIHJlbW92ZVRyYWNrKFRleHRU
cmFjayopOworICAgIHZvaWQgYWRkVGV4dFRyYWNrKFRleHRUcmFjayopOworICAgIHZvaWQgcmVt
b3ZlVGV4dFRyYWNrKFRleHRUcmFjayopOwogICAgIHZvaWQgcmVtb3ZlQWxsSW5iYW5kVHJhY2tz
KCk7CiAgICAgdm9pZCBjbG9zZUNhcHRpb25UcmFja3NDaGFuZ2VkKCk7CiAgICAgdm9pZCBub3Rp
ZnlNZWRpYVBsYXllck9mVGV4dFRyYWNrQ2hhbmdlcygpOwogCi0gICAgdmlydHVhbCB2b2lkIGRp
ZEFkZFRyYWNrKEhUTUxUcmFja0VsZW1lbnQqKTsKLSAgICB2aXJ0dWFsIHZvaWQgZGlkUmVtb3Zl
VHJhY2soSFRNTFRyYWNrRWxlbWVudCopOworICAgIHZpcnR1YWwgdm9pZCBkaWRBZGRUZXh0VHJh
Y2soSFRNTFRyYWNrRWxlbWVudCopOworICAgIHZpcnR1YWwgdm9pZCBkaWRSZW1vdmVUZXh0VHJh
Y2soSFRNTFRyYWNrRWxlbWVudCopOwogCi0gICAgdmlydHVhbCB2b2lkIG1lZGlhUGxheWVyRGlk
QWRkVHJhY2soUGFzc1JlZlB0cjxJbmJhbmRUZXh0VHJhY2tQcml2YXRlPikgT1ZFUlJJREU7Ci0g
ICAgdmlydHVhbCB2b2lkIG1lZGlhUGxheWVyRGlkUmVtb3ZlVHJhY2soUGFzc1JlZlB0cjxJbmJh
bmRUZXh0VHJhY2tQcml2YXRlPikgT1ZFUlJJREU7CisgICAgdmlydHVhbCB2b2lkIG1lZGlhUGxh
eWVyRGlkQWRkVGV4dFRyYWNrKFBhc3NSZWZQdHI8SW5iYW5kVGV4dFRyYWNrUHJpdmF0ZT4pIE9W
RVJSSURFOworICAgIHZpcnR1YWwgdm9pZCBtZWRpYVBsYXllckRpZFJlbW92ZVRleHRUcmFjayhQ
YXNzUmVmUHRyPEluYmFuZFRleHRUcmFja1ByaXZhdGU+KSBPVkVSUklERTsKIAogI2lmIFVTRShQ
TEFURk9STV9URVhUX1RSQUNLX01FTlUpCiAgICAgdmlydHVhbCB2b2lkIHNldFNlbGVjdGVkVGV4
dFRyYWNrKFBhc3NSZWZQdHI8UGxhdGZvcm1UZXh0VHJhY2s+KSBPVkVSUklERTsKZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTFRyYWNrRWxlbWVudC5jcHAgYi9Tb3VyY2UvV2Vi
Q29yZS9odG1sL0hUTUxUcmFja0VsZW1lbnQuY3BwCmluZGV4IGZiYmIzZTg1ZTBkYTY3ODAxMWFm
ODRlZmM5YTU3OTljNjNmNDYzZDQuLjAxMDU4NTVmY2YyNTcxOTc0OWM1MTYwOGI0NjQ5MmEyMDFh
YzEzMDIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTFRyYWNrRWxlbWVudC5j
cHAKKysrIGIvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MVHJhY2tFbGVtZW50LmNwcApAQCAtODAs
MTQgKzgwLDE0IEBAIE5vZGU6Okluc2VydGlvbk5vdGlmaWNhdGlvblJlcXVlc3QgSFRNTFRyYWNr
RWxlbWVudDo6aW5zZXJ0ZWRJbnRvKENvbnRhaW5lck5vZGUqCiAgICAgSFRNTEVsZW1lbnQ6Omlu
c2VydGVkSW50byhpbnNlcnRpb25Qb2ludCk7CiAgICAgSFRNTE1lZGlhRWxlbWVudCogcGFyZW50
ID0gbWVkaWFFbGVtZW50KCk7CiAgICAgaWYgKGluc2VydGlvblBvaW50ID09IHBhcmVudCkKLSAg
ICAgICAgcGFyZW50LT5kaWRBZGRUcmFjayh0aGlzKTsKKyAgICAgICAgcGFyZW50LT5kaWRBZGRU
ZXh0VHJhY2sodGhpcyk7CiAgICAgcmV0dXJuIEluc2VydGlvbkRvbmU7CiB9CiAKIHZvaWQgSFRN
TFRyYWNrRWxlbWVudDo6cmVtb3ZlZEZyb20oQ29udGFpbmVyTm9kZSogaW5zZXJ0aW9uUG9pbnQp
CiB7CiAgICAgaWYgKCFwYXJlbnROb2RlKCkgJiYgV2ViQ29yZTo6aXNNZWRpYUVsZW1lbnQoaW5z
ZXJ0aW9uUG9pbnQpKQotICAgICAgICB0b01lZGlhRWxlbWVudChpbnNlcnRpb25Qb2ludCktPmRp
ZFJlbW92ZVRyYWNrKHRoaXMpOworICAgICAgICB0b01lZGlhRWxlbWVudChpbnNlcnRpb25Qb2lu
dCktPmRpZFJlbW92ZVRleHRUcmFjayh0aGlzKTsKICAgICBIVE1MRWxlbWVudDo6cmVtb3ZlZEZy
b20oaW5zZXJ0aW9uUG9pbnQpOwogfQogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9odG1s
L3RyYWNrL1RleHRUcmFjay5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL3RyYWNrL1RleHRUcmFj
ay5jcHAKaW5kZXggM2MyNzRiMWUxNGI5YjkwNjFmZDg3ZjQyZjg2YWJhMjJlNWM4ODQxMC4uOGUw
M2Y4ZTJhZDI2MzAxNDQzMjA1NWQyOWIzZjkyM2Q5N2Q3YjBmNyAxMDA2NDQKLS0tIGEvU291cmNl
L1dlYkNvcmUvaHRtbC90cmFjay9UZXh0VHJhY2suY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2h0
bWwvdHJhY2svVGV4dFRyYWNrLmNwcApAQCAtMTA4LDE0ICsxMDgsMTIgQEAgVGV4dFRyYWNrKiBU
ZXh0VHJhY2s6OmNhcHRpb25NZW51QXV0b21hdGljSXRlbSgpCiB9CiAKIFRleHRUcmFjazo6VGV4
dFRyYWNrKFNjcmlwdEV4ZWN1dGlvbkNvbnRleHQqIGNvbnRleHQsIFRleHRUcmFja0NsaWVudCog
Y2xpZW50LCBjb25zdCBBdG9taWNTdHJpbmcmIGtpbmQsIGNvbnN0IEF0b21pY1N0cmluZyYgbGFi
ZWwsIGNvbnN0IEF0b21pY1N0cmluZyYgbGFuZ3VhZ2UsIFRleHRUcmFja1R5cGUgdHlwZSkKLSAg
ICA6IFRyYWNrQmFzZShjb250ZXh0LCBUcmFja0Jhc2U6OlRleHRUcmFjaykKKyAgICA6IFRyYWNr
QmFzZShUcmFja0Jhc2U6OlRleHRUcmFjaywgbGFiZWwsIGxhbmd1YWdlKQogICAgICwgbV9jdWVz
KDApCisgICAgLCBtX3NjcmlwdEV4ZWN1dGlvbkNvbnRleHQoY29udGV4dCkKICNpZiBFTkFCTEUo
V0VCVlRUX1JFR0lPTlMpCiAgICAgLCBtX3JlZ2lvbnMoMCkKICNlbmRpZgotICAgICwgbV9tZWRp
YUVsZW1lbnQoMCkKLSAgICAsIG1fbGFiZWwobGFiZWwpCi0gICAgLCBtX2xhbmd1YWdlKGxhbmd1
YWdlKQogICAgICwgbV9tb2RlKGRpc2FibGVkS2V5d29yZCgpLnN0cmluZygpKQogICAgICwgbV9j
bGllbnQoY2xpZW50KQogICAgICwgbV90cmFja1R5cGUodHlwZSkKQEAgLTE0Myw2ICsxNDEsMzEg
QEAgVGV4dFRyYWNrOjp+VGV4dFRyYWNrKCkKICAgICBjbGVhckNsaWVudCgpOwogfQogCitjb25z
dCBBdG9taWNTdHJpbmcmIFRleHRUcmFjazo6aW50ZXJmYWNlTmFtZSgpIGNvbnN0Cit7CisgICAg
cmV0dXJuIGV2ZW50TmFtZXMoKS5pbnRlcmZhY2VGb3JUZXh0VHJhY2s7Cit9CisKK1NjcmlwdEV4
ZWN1dGlvbkNvbnRleHQqIFRleHRUcmFjazo6c2NyaXB0RXhlY3V0aW9uQ29udGV4dCgpIGNvbnN0
Cit7CisgICAgcmV0dXJuIG1fc2NyaXB0RXhlY3V0aW9uQ29udGV4dDsKK30KKworRXZlbnRUYXJn
ZXREYXRhKiBUZXh0VHJhY2s6OmV2ZW50VGFyZ2V0RGF0YSgpCit7CisgICAgcmV0dXJuICZtX2V2
ZW50VGFyZ2V0RGF0YTsKK30KKworRXZlbnRUYXJnZXREYXRhKiBUZXh0VHJhY2s6OmVuc3VyZUV2
ZW50VGFyZ2V0RGF0YSgpCit7CisgICAgcmV0dXJuICZtX2V2ZW50VGFyZ2V0RGF0YTsKK30KKwor
Ym9vbCBUZXh0VHJhY2s6OmlzVmFsaWRLaW5kKGNvbnN0IEF0b21pY1N0cmluZyYgdmFsdWUpIGNv
bnN0Cit7CisgICAgcmV0dXJuIFRleHRUcmFjazo6aXNWYWxpZEtpbmRLZXl3b3JkKHZhbHVlKTsK
K30KKwogYm9vbCBUZXh0VHJhY2s6OmlzVmFsaWRLaW5kS2V5d29yZChjb25zdCBBdG9taWNTdHJp
bmcmIHZhbHVlKQogewogICAgIGlmICh2YWx1ZSA9PSBzdWJ0aXRsZXNLZXl3b3JkKCkpCkBAIC0x
NTksMTYgKzE4MiwxMyBAQCBib29sIFRleHRUcmFjazo6aXNWYWxpZEtpbmRLZXl3b3JkKGNvbnN0
IEF0b21pY1N0cmluZyYgdmFsdWUpCiAgICAgcmV0dXJuIGZhbHNlOwogfQogCi12b2lkIFRleHRU
cmFjazo6c2V0S2luZChjb25zdCBBdG9taWNTdHJpbmcmIGtpbmQpCit2b2lkIFRleHRUcmFjazo6
c2V0S2luZChjb25zdCBBdG9taWNTdHJpbmcmIG5ld0tpbmQpCiB7Ci0gICAgU3RyaW5nIG9sZEtp
bmQgPSBtX2tpbmQ7CisgICAgU3RyaW5nIG9sZEtpbmQgPSBraW5kKCk7CiAKLSAgICBpZiAoaXNW
YWxpZEtpbmRLZXl3b3JkKGtpbmQpKQotICAgICAgICBtX2tpbmQgPSBraW5kOwotICAgIGVsc2UK
LSAgICAgICAgbV9raW5kID0gc3VidGl0bGVzS2V5d29yZCgpOworICAgIFRyYWNrQmFzZTo6c2V0
S2luZChuZXdLaW5kKTsKIAotICAgIGlmIChtX2NsaWVudCAmJiBvbGRLaW5kICE9IG1fa2luZCkK
KyAgICBpZiAobV9jbGllbnQgJiYgb2xkS2luZCAhPSBraW5kKCkpCiAgICAgICAgIG1fY2xpZW50
LT50ZXh0VHJhY2tLaW5kQ2hhbmdlZCh0aGlzKTsKIH0KIApAQCAtNDExLDcgKzQzMSw3IEBAIHZv
aWQgVGV4dFRyYWNrOjppbnZhbGlkYXRlVHJhY2tJbmRleCgpCiAKIGJvb2wgVGV4dFRyYWNrOjpp
c1JlbmRlcmVkKCkKIHsKLSAgICBpZiAobV9raW5kICE9IGNhcHRpb25zS2V5d29yZCgpICYmIG1f
a2luZCAhPSBzdWJ0aXRsZXNLZXl3b3JkKCkpCisgICAgaWYgKGtpbmQoKSAhPSBjYXB0aW9uc0tl
eXdvcmQoKSAmJiBraW5kKCkgIT0gc3VidGl0bGVzS2V5d29yZCgpKQogICAgICAgICByZXR1cm4g
ZmFsc2U7CiAKICAgICBpZiAobV9tb2RlICE9IHNob3dpbmdLZXl3b3JkKCkpCkBAIC01MDIsMTcg
KzUyMiwxNyBAQCBQYXNzUmVmUHRyPFBsYXRmb3JtVGV4dFRyYWNrPiBUZXh0VHJhY2s6OnBsYXRm
b3JtVGV4dFRyYWNrKCkKICAgICBpZiAobV9wbGF0Zm9ybVRleHRUcmFjaykKICAgICAgICAgcmV0
dXJuIG1fcGxhdGZvcm1UZXh0VHJhY2s7CiAKLSAgICBQbGF0Zm9ybVRleHRUcmFjazo6VHJhY2tL
aW5kIGtpbmQgPSBQbGF0Zm9ybVRleHRUcmFjazo6Q2FwdGlvbjsKLSAgICBpZiAobV9raW5kID09
IHN1YnRpdGxlc0tleXdvcmQoKSkKLSAgICAgICAga2luZCA9IFBsYXRmb3JtVGV4dFRyYWNrOjpT
dWJ0aXRsZTsKLSAgICBlbHNlIGlmIChtX2tpbmQgPT0gY2FwdGlvbnNLZXl3b3JkKCkpCi0gICAg
ICAgIGtpbmQgPSBQbGF0Zm9ybVRleHRUcmFjazo6Q2FwdGlvbjsKLSAgICBlbHNlIGlmIChtX2tp
bmQgPT0gZGVzY3JpcHRpb25zS2V5d29yZCgpKQotICAgICAgICBraW5kID0gUGxhdGZvcm1UZXh0
VHJhY2s6OkRlc2NyaXB0aW9uOwotICAgIGVsc2UgaWYgKG1fa2luZCA9PSBjaGFwdGVyc0tleXdv
cmQoKSkKLSAgICAgICAga2luZCA9IFBsYXRmb3JtVGV4dFRyYWNrOjpDaGFwdGVyOwotICAgIGVs
c2UgaWYgKG1fa2luZCA9PSBtZXRhZGF0YUtleXdvcmQoKSkKLSAgICAgICAga2luZCA9IFBsYXRm
b3JtVGV4dFRyYWNrOjpNZXRhRGF0YTsKKyAgICBQbGF0Zm9ybVRleHRUcmFjazo6VHJhY2tLaW5k
IHBsYXRmb3JtS2luZCA9IFBsYXRmb3JtVGV4dFRyYWNrOjpDYXB0aW9uOworICAgIGlmIChraW5k
KCkgPT0gc3VidGl0bGVzS2V5d29yZCgpKQorICAgICAgICBwbGF0Zm9ybUtpbmQgPSBQbGF0Zm9y
bVRleHRUcmFjazo6U3VidGl0bGU7CisgICAgZWxzZSBpZiAoa2luZCgpID09IGNhcHRpb25zS2V5
d29yZCgpKQorICAgICAgICBwbGF0Zm9ybUtpbmQgPSBQbGF0Zm9ybVRleHRUcmFjazo6Q2FwdGlv
bjsKKyAgICBlbHNlIGlmIChraW5kKCkgPT0gZGVzY3JpcHRpb25zS2V5d29yZCgpKQorICAgICAg
ICBwbGF0Zm9ybUtpbmQgPSBQbGF0Zm9ybVRleHRUcmFjazo6RGVzY3JpcHRpb247CisgICAgZWxz
ZSBpZiAoa2luZCgpID09IGNoYXB0ZXJzS2V5d29yZCgpKQorICAgICAgICBwbGF0Zm9ybUtpbmQg
PSBQbGF0Zm9ybVRleHRUcmFjazo6Q2hhcHRlcjsKKyAgICBlbHNlIGlmIChraW5kKCkgPT0gbWV0
YWRhdGFLZXl3b3JkKCkpCisgICAgICAgIHBsYXRmb3JtS2luZCA9IFBsYXRmb3JtVGV4dFRyYWNr
OjpNZXRhRGF0YTsKIAogICAgIFBsYXRmb3JtVGV4dFRyYWNrOjpUcmFja1R5cGUgdHlwZSA9IFBs
YXRmb3JtVGV4dFRyYWNrOjpPdXRPZkJhbmQ7CiAgICAgaWYgKG1fdHJhY2tUeXBlID09IFRyYWNr
RWxlbWVudCkKQEAgLTUyMiw3ICs1NDIsNyBAQCBQYXNzUmVmUHRyPFBsYXRmb3JtVGV4dFRyYWNr
PiBUZXh0VHJhY2s6OnBsYXRmb3JtVGV4dFRyYWNrKCkKICAgICBlbHNlIGlmIChtX3RyYWNrVHlw
ZSA9PSBJbkJhbmQpCiAgICAgICAgIHR5cGUgPSBQbGF0Zm9ybVRleHRUcmFjazo6SW5CYW5kOwog
Ci0gICAgbV9wbGF0Zm9ybVRleHRUcmFjayA9IFBsYXRmb3JtVGV4dFRyYWNrOjpjcmVhdGUodGhp
cywgbV9sYWJlbCwgbV9sYW5ndWFnZSwga2luZCwgdHlwZSk7CisgICAgbV9wbGF0Zm9ybVRleHRU
cmFjayA9IFBsYXRmb3JtVGV4dFRyYWNrOjpjcmVhdGUodGhpcywgbGFiZWwoKSwgbGFuZ3VhZ2Uo
KSwgcGxhdGZvcm1LaW5kLCB0eXBlKTsKIAogICAgIHJldHVybiBtX3BsYXRmb3JtVGV4dFRyYWNr
OwogfQpAQCAtNTM0LDcgKzU1NCw3IEBAIGJvb2wgVGV4dFRyYWNrOjppc01haW5Qcm9ncmFtQ29u
dGVudCgpIGNvbnN0CiAgICAgLy8gZGlyZWN0b3JzIGNvbW1lbnRhcnkgaXMgbm90ICJtYWluIHBy
b2dyYW0iIGJlY2F1c2UgaXQgaXMgbm90IGVzc2VudGlhbCBmb3IgdGhlIHByZXNlbnRhdGlvbi4g
SFRNTDUgZG9lc24ndCBoYXZlCiAgICAgLy8gYSB3YXkgdG8gZXhwcmVzcyB0aGlzIGluIGEgbWFj
aGluZS1yZWFibGUgZm9ybSwgaXQgaXMgdHlwaWNhbGx5IGRvbmUgd2l0aCB0aGUgdHJhY2sgbGFi
ZWwsIHNvIHdlIGFzc3VtZSB0aGF0IGNhcHRpb24KICAgICAvLyB0cmFja3MgYXJlIG1haW4gY29u
dGVudCBhbmQgYWxsIG90aGVyIHRyYWNrIHR5cGVzIGFyZSBub3QuCi0gICAgcmV0dXJuIG1fa2lu
ZCA9PSBjYXB0aW9uc0tleXdvcmQoKTsKKyAgICByZXR1cm4ga2luZCgpID09IGNhcHRpb25zS2V5
d29yZCgpOwogfQogCiB9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCmRpZmYgLS1naXQgYS9Tb3VyY2Uv
V2ViQ29yZS9odG1sL3RyYWNrL1RleHRUcmFjay5oIGIvU291cmNlL1dlYkNvcmUvaHRtbC90cmFj
ay9UZXh0VHJhY2suaAppbmRleCA1NzY5NDViYmU1MjFjZDZhMmY2ZmZmZmQzN2U1NmFkNjY3MjYw
ZmYzLi40YmEzMGU3NTY1NTQ1ZjA2N2JmOTFiYjY5NGJiMzYxN2ZlZTdmZTEzIDEwMDY0NAotLS0g
YS9Tb3VyY2UvV2ViQ29yZS9odG1sL3RyYWNrL1RleHRUcmFjay5oCisrKyBiL1NvdXJjZS9XZWJD
b3JlL2h0bWwvdHJhY2svVGV4dFRyYWNrLmgKQEAgLTQxLDcgKzQxLDcgQEAKIAogbmFtZXNwYWNl
IFdlYkNvcmUgewogCi1jbGFzcyBIVE1MTWVkaWFFbGVtZW50OworY2xhc3MgU2NyaXB0RXhlY3V0
aW9uQ29udGV4dDsKIGNsYXNzIFRleHRUcmFjazsKIGNsYXNzIFRleHRUcmFja0N1ZTsKIGNsYXNz
IFRleHRUcmFja0N1ZUxpc3Q7CkBAIC02MSw3ICs2MSw3IEBAIHB1YmxpYzoKICAgICB2aXJ0dWFs
IHZvaWQgdGV4dFRyYWNrUmVtb3ZlQ3VlKFRleHRUcmFjayosIFBhc3NSZWZQdHI8VGV4dFRyYWNr
Q3VlPikgPSAwOwogfTsKIAotY2xhc3MgVGV4dFRyYWNrIDogcHVibGljIFRyYWNrQmFzZQorY2xh
c3MgVGV4dFRyYWNrIDogcHVibGljIFRyYWNrQmFzZSwgcHVibGljIEV2ZW50VGFyZ2V0CiAjaWYg
VVNFKFBMQVRGT1JNX1RFWFRfVFJBQ0tfTUVOVSkKICAgICAsIHB1YmxpYyBQbGF0Zm9ybVRleHRU
cmFja0NsaWVudAogI2VuZGlmCkBAIC03MywzMiArNzMsMjYgQEAgcHVibGljOgogICAgIH0KICAg
ICB2aXJ0dWFsIH5UZXh0VHJhY2soKTsKIAorICAgIHZpcnR1YWwgY29uc3QgQXRvbWljU3RyaW5n
JiBpbnRlcmZhY2VOYW1lKCkgY29uc3Q7CisgICAgdmlydHVhbCBTY3JpcHRFeGVjdXRpb25Db250
ZXh0KiBzY3JpcHRFeGVjdXRpb25Db250ZXh0KCkgY29uc3Q7CisKICAgICBzdGF0aWMgVGV4dFRy
YWNrKiBjYXB0aW9uTWVudU9mZkl0ZW0oKTsKICAgICBzdGF0aWMgVGV4dFRyYWNrKiBjYXB0aW9u
TWVudUF1dG9tYXRpY0l0ZW0oKTsKIAotICAgIHZvaWQgc2V0TWVkaWFFbGVtZW50KEhUTUxNZWRp
YUVsZW1lbnQqIGVsZW1lbnQpIHsgbV9tZWRpYUVsZW1lbnQgPSBlbGVtZW50OyB9Ci0gICAgSFRN
TE1lZGlhRWxlbWVudCogbWVkaWFFbGVtZW50KCkgeyByZXR1cm4gbV9tZWRpYUVsZW1lbnQ7IH0K
LQotICAgIEF0b21pY1N0cmluZyBraW5kKCkgY29uc3QgeyByZXR1cm4gbV9raW5kOyB9Ci0gICAg
dm9pZCBzZXRLaW5kKGNvbnN0IEF0b21pY1N0cmluZyYpOwotCiAgICAgc3RhdGljIGNvbnN0IEF0
b21pY1N0cmluZyYgc3VidGl0bGVzS2V5d29yZCgpOwogICAgIHN0YXRpYyBjb25zdCBBdG9taWNT
dHJpbmcmIGNhcHRpb25zS2V5d29yZCgpOwogICAgIHN0YXRpYyBjb25zdCBBdG9taWNTdHJpbmcm
IGRlc2NyaXB0aW9uc0tleXdvcmQoKTsKICAgICBzdGF0aWMgY29uc3QgQXRvbWljU3RyaW5nJiBj
aGFwdGVyc0tleXdvcmQoKTsKICAgICBzdGF0aWMgY29uc3QgQXRvbWljU3RyaW5nJiBtZXRhZGF0
YUtleXdvcmQoKTsKKyAgICB2aXJ0dWFsIGNvbnN0IEF0b21pY1N0cmluZyYgZGVmYXVsdEtpbmRL
ZXl3b3JkKCkgY29uc3QgeyByZXR1cm4gc3VidGl0bGVzS2V5d29yZCgpOyB9CiAgICAgc3RhdGlj
IGJvb2wgaXNWYWxpZEtpbmRLZXl3b3JkKGNvbnN0IEF0b21pY1N0cmluZyYpOwogCi0gICAgQXRv
bWljU3RyaW5nIGxhYmVsKCkgY29uc3QgeyByZXR1cm4gbV9sYWJlbDsgfQotICAgIHZvaWQgc2V0
TGFiZWwoY29uc3QgQXRvbWljU3RyaW5nJiBsYWJlbCkgeyBtX2xhYmVsID0gbGFiZWw7IH0KLQot
ICAgIEF0b21pY1N0cmluZyBsYW5ndWFnZSgpIGNvbnN0IHsgcmV0dXJuIG1fbGFuZ3VhZ2U7IH0K
LSAgICB2b2lkIHNldExhbmd1YWdlKGNvbnN0IEF0b21pY1N0cmluZyYgbGFuZ3VhZ2UpIHsgbV9s
YW5ndWFnZSA9IGxhbmd1YWdlOyB9Ci0KICAgICBzdGF0aWMgY29uc3QgQXRvbWljU3RyaW5nJiBk
aXNhYmxlZEtleXdvcmQoKTsKICAgICBzdGF0aWMgY29uc3QgQXRvbWljU3RyaW5nJiBoaWRkZW5L
ZXl3b3JkKCk7CiAgICAgc3RhdGljIGNvbnN0IEF0b21pY1N0cmluZyYgc2hvd2luZ0tleXdvcmQo
KTsKIAorICAgIHZpcnR1YWwgdm9pZCBzZXRLaW5kKGNvbnN0IEF0b21pY1N0cmluZyYpIE9WRVJS
SURFOworCiAgICAgQXRvbWljU3RyaW5nIG1vZGUoKSBjb25zdCB7IHJldHVybiBtX21vZGU7IH0K
ICAgICB2aXJ0dWFsIHZvaWQgc2V0TW9kZShjb25zdCBBdG9taWNTdHJpbmcmKTsKIApAQCAtMTA5
LDggKzEwMyw4IEBAIHB1YmxpYzoKICAgICBUZXh0VHJhY2tDdWVMaXN0KiBjdWVzKCk7CiAgICAg
VGV4dFRyYWNrQ3VlTGlzdCogYWN0aXZlQ3VlcygpIGNvbnN0OwogCi0gICAgdm9pZCBjbGVhckNs
aWVudCgpIHsgbV9jbGllbnQgPSAwOyB9Ci0gICAgVGV4dFRyYWNrQ2xpZW50KiBjbGllbnQoKSB7
IHJldHVybiBtX2NsaWVudDsgfQorICAgIHZpcnR1YWwgdm9pZCBjbGVhckNsaWVudCgpIE9WRVJS
SURFIHsgbV9jbGllbnQgPSAwOyB9CisgICAgVGV4dFRyYWNrQ2xpZW50KiBjbGllbnQoKSBjb25z
dCB7IHJldHVybiBtX2NsaWVudDsgfQogCiAgICAgdm9pZCBhZGRDdWUoUGFzc1JlZlB0cjxUZXh0
VHJhY2tDdWU+KTsKICAgICB2b2lkIHJlbW92ZUN1ZShUZXh0VHJhY2tDdWUqLCBFeGNlcHRpb25D
b2RlJik7CkBAIC0xNTQsMTUgKzE0OCwyNSBAQCBwdWJsaWM6CiAgICAgUGFzc1JlZlB0cjxQbGF0
Zm9ybVRleHRUcmFjaz4gcGxhdGZvcm1UZXh0VHJhY2soKTsKICNlbmRpZgogCisgICAgdXNpbmcg
UmVmQ291bnRlZDxUcmFja0Jhc2U+OjpyZWY7CisgICAgdXNpbmcgUmVmQ291bnRlZDxUcmFja0Jh
c2U+OjpkZXJlZjsKKwogcHJvdGVjdGVkOgogICAgIFRleHRUcmFjayhTY3JpcHRFeGVjdXRpb25D
b250ZXh0KiwgVGV4dFRyYWNrQ2xpZW50KiwgY29uc3QgQXRvbWljU3RyaW5nJiBraW5kLCBjb25z
dCBBdG9taWNTdHJpbmcmIGxhYmVsLCBjb25zdCBBdG9taWNTdHJpbmcmIGxhbmd1YWdlLCBUZXh0
VHJhY2tUeXBlKTsKICNpZiBFTkFCTEUoVklERU9fVFJBQ0spICYmIEVOQUJMRShXRUJWVFRfUkVH
SU9OUykKICAgICBUZXh0VHJhY2tSZWdpb25MaXN0KiByZWdpb25MaXN0KCk7CiAjZW5kaWYKIAor
ICAgIHZpcnR1YWwgRXZlbnRUYXJnZXREYXRhKiBldmVudFRhcmdldERhdGEoKTsKKyAgICB2aXJ0
dWFsIEV2ZW50VGFyZ2V0RGF0YSogZW5zdXJlRXZlbnRUYXJnZXREYXRhKCk7CisKICAgICBSZWZQ
dHI8VGV4dFRyYWNrQ3VlTGlzdD4gbV9jdWVzOwogCiBwcml2YXRlOgorICAgIHZpcnR1YWwgYm9v
bCBpc1ZhbGlkS2luZChjb25zdCBBdG9taWNTdHJpbmcmKSBjb25zdCBPVkVSUklERTsKKworICAg
IHZpcnR1YWwgdm9pZCByZWZFdmVudFRhcmdldCgpIHsgcmVmKCk7IH0KKyAgICB2aXJ0dWFsIHZv
aWQgZGVyZWZFdmVudFRhcmdldCgpIHsgZGVyZWYoKTsgfQogCiAjaWYgRU5BQkxFKFZJREVPX1RS
QUNLKSAmJiBFTkFCTEUoV0VCVlRUX1JFR0lPTlMpCiAgICAgVGV4dFRyYWNrUmVnaW9uTGlzdCog
ZW5zdXJlVGV4dFRyYWNrUmVnaW9uTGlzdCgpOwpAQCAtMTc3LDEwICsxODEsOCBAQCBwcml2YXRl
OgogCiAgICAgVGV4dFRyYWNrQ3VlTGlzdCogZW5zdXJlVGV4dFRyYWNrQ3VlTGlzdCgpOwogCi0g
ICAgSFRNTE1lZGlhRWxlbWVudCogbV9tZWRpYUVsZW1lbnQ7Ci0gICAgQXRvbWljU3RyaW5nIG1f
a2luZDsKLSAgICBBdG9taWNTdHJpbmcgbV9sYWJlbDsKLSAgICBBdG9taWNTdHJpbmcgbV9sYW5n
dWFnZTsKKyAgICBTY3JpcHRFeGVjdXRpb25Db250ZXh0KiBtX3NjcmlwdEV4ZWN1dGlvbkNvbnRl
eHQ7CisgICAgRXZlbnRUYXJnZXREYXRhIG1fZXZlbnRUYXJnZXREYXRhOwogICAgIEF0b21pY1N0
cmluZyBtX21vZGU7CiAgICAgVGV4dFRyYWNrQ2xpZW50KiBtX2NsaWVudDsKICAgICBUZXh0VHJh
Y2tUeXBlIG1fdHJhY2tUeXBlOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvaHRtbC90cmFj
ay9UZXh0VHJhY2tMaXN0LmNwcCBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvdHJhY2svVGV4dFRyYWNr
TGlzdC5jcHAKaW5kZXggYWI1Mzg5MDEzOTE1N2U5YTE2YjliNjUxNDI5OWFiZTQwZjA2N2FjMy4u
YzlkZmI0MjhmNDAyZTVlMzYzZDE0NTU1NWYyNjEzNzM3NmI4MjViZCAxMDA2NDQKLS0tIGEvU291
cmNlL1dlYkNvcmUvaHRtbC90cmFjay9UZXh0VHJhY2tMaXN0LmNwcAorKysgYi9Tb3VyY2UvV2Vi
Q29yZS9odG1sL3RyYWNrL1RleHRUcmFja0xpc3QuY3BwCkBAIC0zMCwyMyArMzAsMTYgQEAKICNp
bmNsdWRlICJUZXh0VHJhY2tMaXN0LmgiCiAKICNpbmNsdWRlICJFdmVudE5hbWVzLmgiCi0jaW5j
bHVkZSAiSFRNTE1lZGlhRWxlbWVudC5oIgogI2luY2x1ZGUgIkluYmFuZFRleHRUcmFjay5oIgog
I2luY2x1ZGUgIkluYmFuZFRleHRUcmFja1ByaXZhdGUuaCIKICNpbmNsdWRlICJMb2FkYWJsZVRl
eHRUcmFjay5oIgotI2luY2x1ZGUgIlNjcmlwdEV4ZWN1dGlvbkNvbnRleHQuaCIKICNpbmNsdWRl
ICJUZXh0VHJhY2suaCIKLSNpbmNsdWRlICJUcmFja0V2ZW50LmgiCiAKIHVzaW5nIG5hbWVzcGFj
ZSBXZWJDb3JlOwogCiBUZXh0VHJhY2tMaXN0OjpUZXh0VHJhY2tMaXN0KEhUTUxNZWRpYUVsZW1l
bnQqIG93bmVyLCBTY3JpcHRFeGVjdXRpb25Db250ZXh0KiBjb250ZXh0KQotICAgIDogbV9jb250
ZXh0KGNvbnRleHQpCi0gICAgLCBtX293bmVyKG93bmVyKQotICAgICwgbV9wZW5kaW5nRXZlbnRU
aW1lcih0aGlzLCAmVGV4dFRyYWNrTGlzdDo6YXN5bmNFdmVudFRpbWVyRmlyZWQpCi0gICAgLCBt
X2Rpc3BhdGNoaW5nRXZlbnRzKDApCisgICAgOiBUcmFja0xpc3RCYXNlKG93bmVyLCBjb250ZXh0
KQogewotICAgIEFTU0VSVChjb250ZXh0LT5pc0RvY3VtZW50KCkpOwogfQogCiBUZXh0VHJhY2tM
aXN0Ojp+VGV4dFRyYWNrTGlzdCgpCkBAIC01OCw4ICs1MSwxMSBAQCB1bnNpZ25lZCBUZXh0VHJh
Y2tMaXN0OjpsZW5ndGgoKSBjb25zdAogICAgIHJldHVybiBtX2FkZFRyYWNrVHJhY2tzLnNpemUo
KSArIG1fZWxlbWVudFRyYWNrcy5zaXplKCkgKyBtX2luYmFuZFRyYWNrcy5zaXplKCk7CiB9CiAK
LWludCBUZXh0VHJhY2tMaXN0OjpnZXRUcmFja0luZGV4KFRleHRUcmFjayAqdGV4dFRyYWNrKQor
aW50IFRleHRUcmFja0xpc3Q6OmdldFRyYWNrSW5kZXgoVGV4dFRyYWNrICp0cmFjaykKIHsKKyAg
ICBBU1NFUlQodHJhY2stPnR5cGUoKSA9PSBUcmFja0Jhc2U6OlRleHRUcmFjayk7CisKKyAgICBU
ZXh0VHJhY2sqIHRleHRUcmFjayA9IHN0YXRpY19jYXN0PFRleHRUcmFjayo+KHRyYWNrKTsKICAg
ICBpZiAodGV4dFRyYWNrLT50cmFja1R5cGUoKSA9PSBUZXh0VHJhY2s6OlRyYWNrRWxlbWVudCkK
ICAgICAgICAgcmV0dXJuIHN0YXRpY19jYXN0PExvYWRhYmxlVGV4dFRyYWNrKj4odGV4dFRyYWNr
KS0+dHJhY2tFbGVtZW50SW5kZXgoKTsKIApAQCAtODAsMjcgKzc2LDI3IEBAIGludCBUZXh0VHJh
Y2tMaXN0OjpnZXRUcmFja0luZGV4UmVsYXRpdmVUb1JlbmRlcmVkVHJhY2tzKFRleHRUcmFjayAq
dGV4dFRyYWNrKQogICAgIGludCB0cmFja0luZGV4ID0gMDsKIAogICAgIGZvciAoc2l6ZV90IGkg
PSAwOyBpIDwgbV9lbGVtZW50VHJhY2tzLnNpemUoKTsgKytpKSB7Ci0gICAgICAgIGlmICghbV9l
bGVtZW50VHJhY2tzW2ldLT5pc1JlbmRlcmVkKCkpCisgICAgICAgIGlmICghc3RhdGljX2Nhc3Q8
VGV4dFRyYWNrKj4obV9lbGVtZW50VHJhY2tzW2ldLmdldCgpKS0+aXNSZW5kZXJlZCgpKQogICAg
ICAgICAgICAgY29udGludWU7Ci0gICAgICAgIAorCiAgICAgICAgIGlmIChtX2VsZW1lbnRUcmFj
a3NbaV0gPT0gdGV4dFRyYWNrKQogICAgICAgICAgICAgcmV0dXJuIHRyYWNrSW5kZXg7CiAgICAg
ICAgICsrdHJhY2tJbmRleDsKICAgICB9CiAKICAgICBmb3IgKHNpemVfdCBpID0gMDsgaSA8IG1f
YWRkVHJhY2tUcmFja3Muc2l6ZSgpOyArK2kpIHsKLSAgICAgICAgaWYgKCFtX2FkZFRyYWNrVHJh
Y2tzW2ldLT5pc1JlbmRlcmVkKCkpCisgICAgICAgIGlmICghc3RhdGljX2Nhc3Q8VGV4dFRyYWNr
Kj4obV9hZGRUcmFja1RyYWNrc1tpXS5nZXQoKSktPmlzUmVuZGVyZWQoKSkKICAgICAgICAgICAg
IGNvbnRpbnVlOwotICAgICAgICAKKwogICAgICAgICBpZiAobV9hZGRUcmFja1RyYWNrc1tpXSA9
PSB0ZXh0VHJhY2spCiAgICAgICAgICAgICByZXR1cm4gdHJhY2tJbmRleDsKICAgICAgICAgKyt0
cmFja0luZGV4OwogICAgIH0KIAogICAgIGZvciAoc2l6ZV90IGkgPSAwOyBpIDwgbV9pbmJhbmRU
cmFja3Muc2l6ZSgpOyArK2kpIHsKLSAgICAgICAgaWYgKCFtX2luYmFuZFRyYWNrc1tpXS0+aXNS
ZW5kZXJlZCgpKQorICAgICAgICBpZiAoIXN0YXRpY19jYXN0PFRleHRUcmFjayo+KG1faW5iYW5k
VHJhY2tzW2ldLmdldCgpKS0+aXNSZW5kZXJlZCgpKQogICAgICAgICAgICAgY29udGludWU7Ci0g
ICAgICAgIAorCiAgICAgICAgIGlmIChtX2luYmFuZFRyYWNrc1tpXSA9PSB0ZXh0VHJhY2spCiAg
ICAgICAgICAgICByZXR1cm4gdHJhY2tJbmRleDsKICAgICAgICAgKyt0cmFja0luZGV4OwpAQCAt
MTIxLDMzICsxMTcsMzMgQEAgVGV4dFRyYWNrKiBUZXh0VHJhY2tMaXN0OjppdGVtKHVuc2lnbmVk
IGluZGV4KQogICAgIC8vIHJlc291cmNlKSwgaW4gdGhlIG9yZGVyIGRlZmluZWQgYnkgdGhlIG1l
ZGlhIHJlc291cmNlJ3MgZm9ybWF0IHNwZWNpZmljYXRpb24uCiAKICAgICBpZiAoaW5kZXggPCBt
X2VsZW1lbnRUcmFja3Muc2l6ZSgpKQotICAgICAgICByZXR1cm4gbV9lbGVtZW50VHJhY2tzW2lu
ZGV4XS5nZXQoKTsKKyAgICAgICAgcmV0dXJuIHN0YXRpY19jYXN0PFRleHRUcmFjayo+KG1fZWxl
bWVudFRyYWNrc1tpbmRleF0uZ2V0KCkpOwogCiAgICAgaW5kZXggLT0gbV9lbGVtZW50VHJhY2tz
LnNpemUoKTsKICAgICBpZiAoaW5kZXggPCBtX2FkZFRyYWNrVHJhY2tzLnNpemUoKSkKLSAgICAg
ICAgcmV0dXJuIG1fYWRkVHJhY2tUcmFja3NbaW5kZXhdLmdldCgpOworICAgICAgICByZXR1cm4g
c3RhdGljX2Nhc3Q8VGV4dFRyYWNrKj4obV9hZGRUcmFja1RyYWNrc1tpbmRleF0uZ2V0KCkpOwog
CiAgICAgaW5kZXggLT0gbV9hZGRUcmFja1RyYWNrcy5zaXplKCk7CiAgICAgaWYgKGluZGV4IDwg
bV9pbmJhbmRUcmFja3Muc2l6ZSgpKQotICAgICAgICByZXR1cm4gbV9pbmJhbmRUcmFja3NbaW5k
ZXhdLmdldCgpOworICAgICAgICByZXR1cm4gc3RhdGljX2Nhc3Q8VGV4dFRyYWNrKj4obV9pbmJh
bmRUcmFja3NbaW5kZXhdLmdldCgpKTsKIAogICAgIHJldHVybiAwOwogfQogCiB2b2lkIFRleHRU
cmFja0xpc3Q6OmludmFsaWRhdGVUcmFja0luZGV4ZXNBZnRlclRyYWNrKFRleHRUcmFjayogdHJh
Y2spCiB7Ci0gICAgVmVjdG9yPFJlZlB0cjxUZXh0VHJhY2s+ID4qIHRyYWNrcyA9IDA7CisgICAg
VmVjdG9yPFJlZlB0cjxUcmFja0Jhc2U+ID4qIHRyYWNrcyA9IDA7CiAKICAgICBpZiAodHJhY2st
PnRyYWNrVHlwZSgpID09IFRleHRUcmFjazo6VHJhY2tFbGVtZW50KSB7CiAgICAgICAgIHRyYWNr
cyA9ICZtX2VsZW1lbnRUcmFja3M7CiAgICAgICAgIGZvciAoc2l6ZV90IGkgPSAwOyBpIDwgbV9h
ZGRUcmFja1RyYWNrcy5zaXplKCk7ICsraSkKLSAgICAgICAgICAgIG1fYWRkVHJhY2tUcmFja3Nb
aV0tPmludmFsaWRhdGVUcmFja0luZGV4KCk7CisgICAgICAgICAgICBzdGF0aWNfY2FzdDxUZXh0
VHJhY2sqPihtX2FkZFRyYWNrVHJhY2tzW2ldLmdldCgpKS0+aW52YWxpZGF0ZVRyYWNrSW5kZXgo
KTsKICAgICAgICAgZm9yIChzaXplX3QgaSA9IDA7IGkgPCBtX2luYmFuZFRyYWNrcy5zaXplKCk7
ICsraSkKLSAgICAgICAgICAgIG1faW5iYW5kVHJhY2tzW2ldLT5pbnZhbGlkYXRlVHJhY2tJbmRl
eCgpOworICAgICAgICAgICAgc3RhdGljX2Nhc3Q8VGV4dFRyYWNrKj4obV9pbmJhbmRUcmFja3Nb
aV0uZ2V0KCkpLT5pbnZhbGlkYXRlVHJhY2tJbmRleCgpOwogICAgIH0gZWxzZSBpZiAodHJhY2st
PnRyYWNrVHlwZSgpID09IFRleHRUcmFjazo6QWRkVHJhY2spIHsKICAgICAgICAgdHJhY2tzID0g
Jm1fYWRkVHJhY2tUcmFja3M7CiAgICAgICAgIGZvciAoc2l6ZV90IGkgPSAwOyBpIDwgbV9pbmJh
bmRUcmFja3Muc2l6ZSgpOyArK2kpCi0gICAgICAgICAgICBtX2luYmFuZFRyYWNrc1tpXS0+aW52
YWxpZGF0ZVRyYWNrSW5kZXgoKTsKKyAgICAgICAgICAgIHN0YXRpY19jYXN0PFRleHRUcmFjayo+
KG1faW5iYW5kVHJhY2tzW2ldLmdldCgpKS0+aW52YWxpZGF0ZVRyYWNrSW5kZXgoKTsKICAgICB9
IGVsc2UgaWYgKHRyYWNrLT50cmFja1R5cGUoKSA9PSBUZXh0VHJhY2s6OkluQmFuZCkKICAgICAg
ICAgdHJhY2tzID0gJm1faW5iYW5kVHJhY2tzOwogICAgIGVsc2UKQEAgLTE1OCw3ICsxNTQsNyBA
QCB2b2lkIFRleHRUcmFja0xpc3Q6OmludmFsaWRhdGVUcmFja0luZGV4ZXNBZnRlclRyYWNrKFRl
eHRUcmFjayogdHJhY2spCiAgICAgICAgIHJldHVybjsKIAogICAgIGZvciAoc2l6ZV90IGkgPSBp
bmRleDsgaSA8IHRyYWNrcy0+c2l6ZSgpOyArK2kpCi0gICAgICAgIHRyYWNrcy0+YXQoaW5kZXgp
LT5pbnZhbGlkYXRlVHJhY2tJbmRleCgpOworICAgICAgICBzdGF0aWNfY2FzdDxUZXh0VHJhY2sq
Pih0cmFja3MtPmF0KGluZGV4KS5nZXQoKSktPmludmFsaWRhdGVUcmFja0luZGV4KCk7CiB9CiAK
IHZvaWQgVGV4dFRyYWNrTGlzdDo6YXBwZW5kKFBhc3NSZWZQdHI8VGV4dFRyYWNrPiBwcnBUcmFj
aykKQEAgLTE4MCwyMSArMTc2LDIzIEBAIHZvaWQgVGV4dFRyYWNrTGlzdDo6YXBwZW5kKFBhc3NS
ZWZQdHI8VGV4dFRyYWNrPiBwcnBUcmFjaykKIAogICAgIGludmFsaWRhdGVUcmFja0luZGV4ZXNB
ZnRlclRyYWNrKHRyYWNrLmdldCgpKTsKIAotICAgIEFTU0VSVCghdHJhY2stPm1lZGlhRWxlbWVu
dCgpIHx8IHRyYWNrLT5tZWRpYUVsZW1lbnQoKSA9PSBtX293bmVyKTsKLSAgICB0cmFjay0+c2V0
TWVkaWFFbGVtZW50KG1fb3duZXIpOworICAgIEFTU0VSVCghdHJhY2stPm1lZGlhRWxlbWVudCgp
IHx8IHRyYWNrLT5tZWRpYUVsZW1lbnQoKSA9PSBvd25lcigpKTsKKyAgICB0cmFjay0+c2V0TWVk
aWFFbGVtZW50KG93bmVyKCkpOwogCiAgICAgc2NoZWR1bGVBZGRUcmFja0V2ZW50KHRyYWNrLnJl
bGVhc2UoKSk7CiB9CiAKLXZvaWQgVGV4dFRyYWNrTGlzdDo6cmVtb3ZlKFRleHRUcmFjayogdHJh
Y2spCit2b2lkIFRleHRUcmFja0xpc3Q6OnJlbW92ZShUcmFja0Jhc2UqIHRyYWNrKQogewotICAg
IFZlY3RvcjxSZWZQdHI8VGV4dFRyYWNrPiA+KiB0cmFja3MgPSAwOworICAgIEFTU0VSVCh0cmFj
ay0+dHlwZSgpID09IFRyYWNrQmFzZTo6VGV4dFRyYWNrKTsKIAotICAgIGlmICh0cmFjay0+dHJh
Y2tUeXBlKCkgPT0gVGV4dFRyYWNrOjpUcmFja0VsZW1lbnQpCisgICAgVGV4dFRyYWNrKiB0ZXh0
VHJhY2sgPSBzdGF0aWNfY2FzdDxUZXh0VHJhY2sqPih0cmFjayk7CisgICAgVmVjdG9yPFJlZlB0
cjxUcmFja0Jhc2U+ID4qIHRyYWNrcyA9IDA7CisgICAgaWYgKHRleHRUcmFjay0+dHJhY2tUeXBl
KCkgPT0gVGV4dFRyYWNrOjpUcmFja0VsZW1lbnQpCiAgICAgICAgIHRyYWNrcyA9ICZtX2VsZW1l
bnRUcmFja3M7Ci0gICAgZWxzZSBpZiAodHJhY2stPnRyYWNrVHlwZSgpID09IFRleHRUcmFjazo6
QWRkVHJhY2spCisgICAgZWxzZSBpZiAodGV4dFRyYWNrLT50cmFja1R5cGUoKSA9PSBUZXh0VHJh
Y2s6OkFkZFRyYWNrKQogICAgICAgICB0cmFja3MgPSAmbV9hZGRUcmFja1RyYWNrczsKLSAgICBl
bHNlIGlmICh0cmFjay0+dHJhY2tUeXBlKCkgPT0gVGV4dFRyYWNrOjpJbkJhbmQpCisgICAgZWxz
ZSBpZiAodGV4dFRyYWNrLT50cmFja1R5cGUoKSA9PSBUZXh0VHJhY2s6OkluQmFuZCkKICAgICAg
ICAgdHJhY2tzID0gJm1faW5iYW5kVHJhY2tzOwogICAgIGVsc2UKICAgICAgICAgQVNTRVJUX05P
VF9SRUFDSEVEKCk7CkBAIC0yMDMsMjUgKzIwMSwyNyBAQCB2b2lkIFRleHRUcmFja0xpc3Q6OnJl
bW92ZShUZXh0VHJhY2sqIHRyYWNrKQogICAgIGlmIChpbmRleCA9PSBub3RGb3VuZCkKICAgICAg
ICAgcmV0dXJuOwogCi0gICAgaW52YWxpZGF0ZVRyYWNrSW5kZXhlc0FmdGVyVHJhY2sodHJhY2sp
OworICAgIGludmFsaWRhdGVUcmFja0luZGV4ZXNBZnRlclRyYWNrKHRleHRUcmFjayk7CiAKLSAg
ICBBU1NFUlQoIXRyYWNrLT5tZWRpYUVsZW1lbnQoKSB8fCB0cmFjay0+bWVkaWFFbGVtZW50KCkg
PT0gbV9vd25lcik7CisgICAgQVNTRVJUKCF0cmFjay0+bWVkaWFFbGVtZW50KCkgfHwgdHJhY2st
Pm1lZGlhRWxlbWVudCgpID09IG93bmVyKCkpOwogICAgIHRyYWNrLT5zZXRNZWRpYUVsZW1lbnQo
MCk7CiAKLSAgICBSZWZQdHI8VGV4dFRyYWNrPiB0cmFja1JlZiA9ICgqdHJhY2tzKVtpbmRleF07
CisgICAgUmVmUHRyPFRyYWNrQmFzZT4gdHJhY2tSZWYgPSAoKnRyYWNrcylbaW5kZXhdOwogICAg
IHRyYWNrcy0+cmVtb3ZlKGluZGV4KTsKICAgICBzY2hlZHVsZVJlbW92ZVRyYWNrRXZlbnQodHJh
Y2tSZWYucmVsZWFzZSgpKTsKIH0KIAotYm9vbCBUZXh0VHJhY2tMaXN0Ojpjb250YWlucyhUZXh0
VHJhY2sqIHRyYWNrKSBjb25zdAorYm9vbCBUZXh0VHJhY2tMaXN0Ojpjb250YWlucyhUcmFja0Jh
c2UqIHRyYWNrKSBjb25zdAogewotICAgIGNvbnN0IFZlY3RvcjxSZWZQdHI8VGV4dFRyYWNrPiA+
KiB0cmFja3MgPSAwOwotICAgIAotICAgIGlmICh0cmFjay0+dHJhY2tUeXBlKCkgPT0gVGV4dFRy
YWNrOjpUcmFja0VsZW1lbnQpCisgICAgQVNTRVJUKHRyYWNrLT50eXBlKCkgPT0gVHJhY2tCYXNl
OjpUZXh0VHJhY2spOworCisgICAgY29uc3QgVmVjdG9yPFJlZlB0cjxUcmFja0Jhc2U+ID4qIHRy
YWNrcyA9IDA7CisgICAgVGV4dFRyYWNrOjpUZXh0VHJhY2tUeXBlIHR5cGUgPSBzdGF0aWNfY2Fz
dDxUZXh0VHJhY2sqPih0cmFjayktPnRyYWNrVHlwZSgpOworICAgIGlmICh0eXBlID09IFRleHRU
cmFjazo6VHJhY2tFbGVtZW50KQogICAgICAgICB0cmFja3MgPSAmbV9lbGVtZW50VHJhY2tzOwot
ICAgIGVsc2UgaWYgKHRyYWNrLT50cmFja1R5cGUoKSA9PSBUZXh0VHJhY2s6OkFkZFRyYWNrKQor
ICAgIGVsc2UgaWYgKHR5cGUgPT0gVGV4dFRyYWNrOjpBZGRUcmFjaykKICAgICAgICAgdHJhY2tz
ID0gJm1fYWRkVHJhY2tUcmFja3M7Ci0gICAgZWxzZSBpZiAodHJhY2stPnRyYWNrVHlwZSgpID09
IFRleHRUcmFjazo6SW5CYW5kKQorICAgIGVsc2UgaWYgKHR5cGUgPT0gVGV4dFRyYWNrOjpJbkJh
bmQpCiAgICAgICAgIHRyYWNrcyA9ICZtX2luYmFuZFRyYWNrczsKICAgICBlbHNlCiAgICAgICAg
IEFTU0VSVF9OT1RfUkVBQ0hFRCgpOwpAQCAtMjM0LDY0ICsyMzQsNCBAQCBjb25zdCBBdG9taWNT
dHJpbmcmIFRleHRUcmFja0xpc3Q6OmludGVyZmFjZU5hbWUoKSBjb25zdAogICAgIHJldHVybiBl
dmVudE5hbWVzKCkuaW50ZXJmYWNlRm9yVGV4dFRyYWNrTGlzdDsKIH0KIAotdm9pZCBUZXh0VHJh
Y2tMaXN0OjpzY2hlZHVsZUFkZFRyYWNrRXZlbnQoUGFzc1JlZlB0cjxUZXh0VHJhY2s+IHRyYWNr
KQotewotICAgIC8vIDQuOC4xMC4xMi4zIFNvdXJjaW5nIG91dC1vZi1iYW5kIHRleHQgdHJhY2tz
Ci0gICAgLy8gNC44LjEwLjEyLjQgVGV4dCB0cmFjayBBUEkKLSAgICAvLyAuLi4gdGhlbiBxdWV1
ZSBhIHRhc2sgdG8gZmlyZSBhbiBldmVudCB3aXRoIHRoZSBuYW1lIGFkZHRyYWNrLCB0aGF0IGRv
ZXMgbm90IAotICAgIC8vIGJ1YmJsZSBhbmQgaXMgbm90IGNhbmNlbGFibGUsIGFuZCB0aGF0IHVz
ZXMgdGhlIFRyYWNrRXZlbnQgaW50ZXJmYWNlLCB3aXRoIAotICAgIC8vIHRoZSB0cmFjayBhdHRy
aWJ1dGUgaW5pdGlhbGl6ZWQgdG8gdGhlIHRleHQgdHJhY2sncyBUZXh0VHJhY2sgb2JqZWN0LCBh
dCAKLSAgICAvLyB0aGUgbWVkaWEgZWxlbWVudCdzIHRleHRUcmFja3MgYXR0cmlidXRlJ3MgVGV4
dFRyYWNrTGlzdCBvYmplY3QuCi0KLSAgICBSZWZQdHI8VGV4dFRyYWNrPiB0cmFja1JlZiA9IHRy
YWNrOwotICAgIFRyYWNrRXZlbnRJbml0IGluaXRpYWxpemVyOwotICAgIGluaXRpYWxpemVyLnRy
YWNrID0gdHJhY2tSZWY7Ci0gICAgaW5pdGlhbGl6ZXIuYnViYmxlcyA9IGZhbHNlOwotICAgIGlu
aXRpYWxpemVyLmNhbmNlbGFibGUgPSBmYWxzZTsKLQotICAgIG1fcGVuZGluZ0V2ZW50cy5hcHBl
bmQoVHJhY2tFdmVudDo6Y3JlYXRlKGV2ZW50TmFtZXMoKS5hZGR0cmFja0V2ZW50LCBpbml0aWFs
aXplcikpOwotICAgIGlmICghbV9wZW5kaW5nRXZlbnRUaW1lci5pc0FjdGl2ZSgpKQotICAgICAg
ICBtX3BlbmRpbmdFdmVudFRpbWVyLnN0YXJ0T25lU2hvdCgwKTsKLX0KLQotdm9pZCBUZXh0VHJh
Y2tMaXN0OjpzY2hlZHVsZVJlbW92ZVRyYWNrRXZlbnQoUGFzc1JlZlB0cjxUZXh0VHJhY2s+IHRy
YWNrKQotewotICAgIC8vIDQuOC4xMC4xMi4zIFNvdXJjaW5nIG91dC1vZi1iYW5kIHRleHQgdHJh
Y2tzCi0gICAgLy8gV2hlbiBhIHRyYWNrIGVsZW1lbnQncyBwYXJlbnQgZWxlbWVudCBjaGFuZ2Vz
IGFuZCB0aGUgb2xkIHBhcmVudCB3YXMgYQotICAgIC8vIG1lZGlhIGVsZW1lbnQsIHRoZW4gdGhl
IHVzZXIgYWdlbnQgbXVzdCByZW1vdmUgdGhlIHRyYWNrIGVsZW1lbnQncwotICAgIC8vIGNvcnJl
c3BvbmRpbmcgdGV4dCB0cmFjayBmcm9tIHRoZSBtZWRpYSBlbGVtZW50J3MgbGlzdCBvZiB0ZXh0
IHRyYWNrcywKLSAgICAvLyBhbmQgdGhlbiBxdWV1ZSBhIHRhc2sgdG8gZmlyZSBhIHRydXN0ZWQg
ZXZlbnQgd2l0aCB0aGUgbmFtZSByZW1vdmV0cmFjaywKLSAgICAvLyB0aGF0IGRvZXMgbm90IGJ1
YmJsZSBhbmQgaXMgbm90IGNhbmNlbGFibGUsIGFuZCB0aGF0IHVzZXMgdGhlIFRyYWNrRXZlbnQK
LSAgICAvLyBpbnRlcmZhY2UsIHdpdGggdGhlIHRyYWNrIGF0dHJpYnV0ZSBpbml0aWFsaXplZCB0
byB0aGUgdGV4dCB0cmFjaydzCi0gICAgLy8gVGV4dFRyYWNrIG9iamVjdCwgYXQgdGhlIG1lZGlh
IGVsZW1lbnQncyB0ZXh0VHJhY2tzIGF0dHJpYnV0ZSdzCi0gICAgLy8gVGV4dFRyYWNrTGlzdCBv
YmplY3QuCi0KLSAgICBSZWZQdHI8VHJhY2tCYXNlPiB0cmFja1JlZiA9IHRyYWNrOwotICAgIFRy
YWNrRXZlbnRJbml0IGluaXRpYWxpemVyOwotICAgIGluaXRpYWxpemVyLnRyYWNrID0gdHJhY2tS
ZWY7Ci0gICAgaW5pdGlhbGl6ZXIuYnViYmxlcyA9IGZhbHNlOwotICAgIGluaXRpYWxpemVyLmNh
bmNlbGFibGUgPSBmYWxzZTsKLQotICAgIG1fcGVuZGluZ0V2ZW50cy5hcHBlbmQoVHJhY2tFdmVu
dDo6Y3JlYXRlKGV2ZW50TmFtZXMoKS5yZW1vdmV0cmFja0V2ZW50LCBpbml0aWFsaXplcikpOwot
ICAgIGlmICghbV9wZW5kaW5nRXZlbnRUaW1lci5pc0FjdGl2ZSgpKQotICAgICAgICBtX3BlbmRp
bmdFdmVudFRpbWVyLnN0YXJ0T25lU2hvdCgwKTsKLX0KLQotdm9pZCBUZXh0VHJhY2tMaXN0Ojph
c3luY0V2ZW50VGltZXJGaXJlZChUaW1lcjxUZXh0VHJhY2tMaXN0PiopCi17Ci0gICAgVmVjdG9y
PFJlZlB0cjxFdmVudD4gPiBwZW5kaW5nRXZlbnRzOwotCi0gICAgKyttX2Rpc3BhdGNoaW5nRXZl
bnRzOwotICAgIG1fcGVuZGluZ0V2ZW50cy5zd2FwKHBlbmRpbmdFdmVudHMpOwotICAgIHNpemVf
dCBjb3VudCA9IHBlbmRpbmdFdmVudHMuc2l6ZSgpOwotICAgIGZvciAoc2l6ZV90IGluZGV4ID0g
MDsgaW5kZXggPCBjb3VudDsgKytpbmRleCkKLSAgICAgICAgZGlzcGF0Y2hFdmVudChwZW5kaW5n
RXZlbnRzW2luZGV4XS5yZWxlYXNlKCksIElHTk9SRV9FWENFUFRJT04pOwotICAgIC0tbV9kaXNw
YXRjaGluZ0V2ZW50czsKLX0KLQotTm9kZSogVGV4dFRyYWNrTGlzdDo6b3duZXIoKSBjb25zdAot
ewotICAgIHJldHVybiBtX293bmVyOwotfQotCiAjZW5kaWYKZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJDb3JlL2h0bWwvdHJhY2svVGV4dFRyYWNrTGlzdC5oIGIvU291cmNlL1dlYkNvcmUvaHRtbC90
cmFjay9UZXh0VHJhY2tMaXN0LmgKaW5kZXggMzJhNjI1ZWUwZDljNzk2MDdmN2U1YWVhNDI4OGYy
NDU3ZGUxYmUwNC4uNWRkM2JlZjg0NjY5M2I1ZDk4N2ZkZmZmNjZiZDgwMTE1ODM2YjRjMSAxMDA2
NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvaHRtbC90cmFjay9UZXh0VHJhY2tMaXN0LmgKKysrIGIv
U291cmNlL1dlYkNvcmUvaHRtbC90cmFjay9UZXh0VHJhY2tMaXN0LmgKQEAgLTI4LDIxICsyOCwx
MyBAQAogCiAjaWYgRU5BQkxFKFZJREVPX1RSQUNLKQogCi0jaW5jbHVkZSAiRXZlbnRMaXN0ZW5l
ci5oIgotI2luY2x1ZGUgIkV2ZW50VGFyZ2V0LmgiCi0jaW5jbHVkZSAiVGltZXIuaCIKLSNpbmNs
dWRlIDxhbGdvcml0aG0+Ci0jaW5jbHVkZSA8d3RmL1Bhc3NSZWZQdHIuaD4KLSNpbmNsdWRlIDx3
dGYvUmVmQ291bnRlZC5oPgotI2luY2x1ZGUgPHd0Zi9WZWN0b3IuaD4KKyNpbmNsdWRlICJUcmFj
a0xpc3RCYXNlLmgiCiAKIG5hbWVzcGFjZSBXZWJDb3JlIHsKIAotY2xhc3MgSFRNTE1lZGlhRWxl
bWVudDsKIGNsYXNzIFRleHRUcmFjazsKLWNsYXNzIFRleHRUcmFja0xpc3Q7CiAKLWNsYXNzIFRl
eHRUcmFja0xpc3QgOiBwdWJsaWMgUmVmQ291bnRlZDxUZXh0VHJhY2tMaXN0PiwgcHVibGljIEV2
ZW50VGFyZ2V0IHsKK2NsYXNzIFRleHRUcmFja0xpc3QgOiBwdWJsaWMgVHJhY2tMaXN0QmFzZSB7
CiBwdWJsaWM6CiAgICAgc3RhdGljIFBhc3NSZWZQdHI8VGV4dFRyYWNrTGlzdD4gY3JlYXRlKEhU
TUxNZWRpYUVsZW1lbnQqIG93bmVyLCBTY3JpcHRFeGVjdXRpb25Db250ZXh0KiBjb250ZXh0KQog
ICAgIHsKQEAgLTUwLDU2ICs0MiwyNSBAQCBwdWJsaWM6CiAgICAgfQogICAgIH5UZXh0VHJhY2tM
aXN0KCk7CiAKLSAgICB1bnNpZ25lZCBsZW5ndGgoKSBjb25zdDsKKyAgICB2aXJ0dWFsIHVuc2ln
bmVkIGxlbmd0aCgpIGNvbnN0IE9WRVJSSURFOwogICAgIGludCBnZXRUcmFja0luZGV4KFRleHRU
cmFjayopOwogICAgIGludCBnZXRUcmFja0luZGV4UmVsYXRpdmVUb1JlbmRlcmVkVHJhY2tzKFRl
eHRUcmFjayopOwotICAgIGJvb2wgY29udGFpbnMoVGV4dFRyYWNrKikgY29uc3Q7CisgICAgdmly
dHVhbCBib29sIGNvbnRhaW5zKFRyYWNrQmFzZSopIGNvbnN0IE9WRVJSSURFOwogCiAgICAgVGV4
dFRyYWNrKiBpdGVtKHVuc2lnbmVkIGluZGV4KTsKICAgICB2b2lkIGFwcGVuZChQYXNzUmVmUHRy
PFRleHRUcmFjaz4pOwotICAgIHZvaWQgcmVtb3ZlKFRleHRUcmFjayopOworICAgIHZpcnR1YWwg
dm9pZCByZW1vdmUoVHJhY2tCYXNlKikgT1ZFUlJJREU7CiAKICAgICAvLyBFdmVudFRhcmdldAog
ICAgIHZpcnR1YWwgY29uc3QgQXRvbWljU3RyaW5nJiBpbnRlcmZhY2VOYW1lKCkgY29uc3Q7Ci0g
ICAgdXNpbmcgUmVmQ291bnRlZDxUZXh0VHJhY2tMaXN0Pjo6cmVmOwotICAgIHVzaW5nIFJlZkNv
dW50ZWQ8VGV4dFRyYWNrTGlzdD46OmRlcmVmOwotICAgIHZpcnR1YWwgU2NyaXB0RXhlY3V0aW9u
Q29udGV4dCogc2NyaXB0RXhlY3V0aW9uQ29udGV4dCgpIGNvbnN0IHsgcmV0dXJuIG1fY29udGV4
dDsgfQotCi0gICAgREVGSU5FX0FUVFJJQlVURV9FVkVOVF9MSVNURU5FUihhZGR0cmFjayk7Ci0g
ICAgREVGSU5FX0FUVFJJQlVURV9FVkVOVF9MSVNURU5FUihyZW1vdmV0cmFjayk7Ci0KLSAgICB2
b2lkIGNsZWFyT3duZXIoKSB7IG1fb3duZXIgPSAwOyB9Ci0gICAgTm9kZSogb3duZXIoKSBjb25z
dDsKLQotICAgIGJvb2wgaXNGaXJpbmdFdmVudExpc3RlbmVycygpIHsgcmV0dXJuIG1fZGlzcGF0
Y2hpbmdFdmVudHM7IH0KIAogcHJpdmF0ZToKICAgICBUZXh0VHJhY2tMaXN0KEhUTUxNZWRpYUVs
ZW1lbnQqLCBTY3JpcHRFeGVjdXRpb25Db250ZXh0Kik7CiAKLSAgICAvLyBFdmVudFRhcmdldAot
ICAgIHZpcnR1YWwgdm9pZCByZWZFdmVudFRhcmdldCgpIHsgcmVmKCk7IH0KLSAgICB2aXJ0dWFs
IHZvaWQgZGVyZWZFdmVudFRhcmdldCgpIHsgZGVyZWYoKTsgfQotICAgIHZpcnR1YWwgRXZlbnRU
YXJnZXREYXRhKiBldmVudFRhcmdldERhdGEoKSB7IHJldHVybiAmbV9ldmVudFRhcmdldERhdGE7
IH0KLSAgICB2aXJ0dWFsIEV2ZW50VGFyZ2V0RGF0YSogZW5zdXJlRXZlbnRUYXJnZXREYXRhKCkg
eyByZXR1cm4gJm1fZXZlbnRUYXJnZXREYXRhOyB9Ci0KLSAgICB2b2lkIHNjaGVkdWxlQWRkVHJh
Y2tFdmVudChQYXNzUmVmUHRyPFRleHRUcmFjaz4pOwotICAgIHZvaWQgc2NoZWR1bGVSZW1vdmVU
cmFja0V2ZW50KFBhc3NSZWZQdHI8VGV4dFRyYWNrPik7Ci0gICAgdm9pZCBhc3luY0V2ZW50VGlt
ZXJGaXJlZChUaW1lcjxUZXh0VHJhY2tMaXN0PiopOwotCiAgICAgdm9pZCBpbnZhbGlkYXRlVHJh
Y2tJbmRleGVzQWZ0ZXJUcmFjayhUZXh0VHJhY2sqKTsKIAotICAgIFNjcmlwdEV4ZWN1dGlvbkNv
bnRleHQqIG1fY29udGV4dDsKLSAgICBIVE1MTWVkaWFFbGVtZW50KiBtX293bmVyOwotCi0gICAg
VmVjdG9yPFJlZlB0cjxFdmVudD4gPiBtX3BlbmRpbmdFdmVudHM7Ci0gICAgVGltZXI8VGV4dFRy
YWNrTGlzdD4gbV9wZW5kaW5nRXZlbnRUaW1lcjsKLQotICAgIEV2ZW50VGFyZ2V0RGF0YSBtX2V2
ZW50VGFyZ2V0RGF0YTsKLSAgICBWZWN0b3I8UmVmUHRyPFRleHRUcmFjaz4gPiBtX2FkZFRyYWNr
VHJhY2tzOwotICAgIFZlY3RvcjxSZWZQdHI8VGV4dFRyYWNrPiA+IG1fZWxlbWVudFRyYWNrczsK
LSAgICBWZWN0b3I8UmVmUHRyPFRleHRUcmFjaz4gPiBtX2luYmFuZFRyYWNrczsKLQotICAgIGlu
dCBtX2Rpc3BhdGNoaW5nRXZlbnRzOworICAgIFZlY3RvcjxSZWZQdHI8VHJhY2tCYXNlPiA+IG1f
YWRkVHJhY2tUcmFja3M7CisgICAgVmVjdG9yPFJlZlB0cjxUcmFja0Jhc2U+ID4gbV9lbGVtZW50
VHJhY2tzOwogfTsKIAogfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQpkaWZmIC0tZ2l0IGEvU291cmNl
L1dlYkNvcmUvaHRtbC90cmFjay9UcmFja0Jhc2UuY3BwIGIvU291cmNlL1dlYkNvcmUvaHRtbC90
cmFjay9UcmFja0Jhc2UuY3BwCmluZGV4IDZhMmMzNTgyM2U2MTk2MmEzN2M5ZjhmNGNlZmQ5ODlk
ZGFiNTBkZmUuLmRlNGUzODU3NGNkODE4MDJhNmFlMDEwMWEzMDBjNmIyOTBiOTgyYWMgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvdHJhY2svVHJhY2tCYXNlLmNwcAorKysgYi9Tb3Vy
Y2UvV2ViQ29yZS9odG1sL3RyYWNrL1RyYWNrQmFzZS5jcHAKQEAgLTMwLDggKzMwLDEwIEBACiAK
IG5hbWVzcGFjZSBXZWJDb3JlIHsKIAotVHJhY2tCYXNlOjpUcmFja0Jhc2UoU2NyaXB0RXhlY3V0
aW9uQ29udGV4dCogY29udGV4dCwgVHlwZSB0eXBlKQotICAgIDogbV9zY3JpcHRFeGVjdXRpb25D
b250ZXh0KGNvbnRleHQpCitUcmFja0Jhc2U6OlRyYWNrQmFzZShUeXBlIHR5cGUsIGNvbnN0IEF0
b21pY1N0cmluZyYgbGFiZWwsIGNvbnN0IEF0b21pY1N0cmluZyYgbGFuZ3VhZ2UpCisgICAgOiBt
X21lZGlhRWxlbWVudCgwKQorICAgICwgbV9sYWJlbChsYWJlbCkKKyAgICAsIG1fbGFuZ3VhZ2Uo
bGFuZ3VhZ2UpCiB7CiAgICAgQVNTRVJUKHR5cGUgIT0gQmFzZVRyYWNrKTsKICAgICBtX3R5cGUg
PSB0eXBlOwpAQCAtNDEsMjQgKzQzLDE0IEBAIFRyYWNrQmFzZTo6flRyYWNrQmFzZSgpCiB7CiB9
CiAKLWNvbnN0IEF0b21pY1N0cmluZyYgVHJhY2tCYXNlOjppbnRlcmZhY2VOYW1lKCkgY29uc3QK
K3ZvaWQgVHJhY2tCYXNlOjpzZXRLaW5kKGNvbnN0IEF0b21pY1N0cmluZyYga2luZCkKIHsKLSAg
ICByZXR1cm4gZXZlbnROYW1lcygpLmludGVyZmFjZUZvclRleHRUcmFjazsKLX0KLQotU2NyaXB0
RXhlY3V0aW9uQ29udGV4dCogVHJhY2tCYXNlOjpzY3JpcHRFeGVjdXRpb25Db250ZXh0KCkgY29u
c3QKLXsKLSAgICByZXR1cm4gbV9zY3JpcHRFeGVjdXRpb25Db250ZXh0OwotfQorICAgIFN0cmlu
ZyBvbGRLaW5kID0gbV9raW5kOwogCi1FdmVudFRhcmdldERhdGEqIFRyYWNrQmFzZTo6ZXZlbnRU
YXJnZXREYXRhKCkKLXsKLSAgICByZXR1cm4gJm1fZXZlbnRUYXJnZXREYXRhOwotfQotCi1FdmVu
dFRhcmdldERhdGEqIFRyYWNrQmFzZTo6ZW5zdXJlRXZlbnRUYXJnZXREYXRhKCkKLXsKLSAgICBy
ZXR1cm4gJm1fZXZlbnRUYXJnZXREYXRhOworICAgIGlmIChpc1ZhbGlkS2luZChraW5kKSkKKyAg
ICAgICAgbV9raW5kID0ga2luZDsKKyAgICBlbHNlCisgICAgICAgIG1fa2luZCA9IGRlZmF1bHRL
aW5kS2V5d29yZCgpOwogfQogCiB9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViQ29yZS9odG1sL3RyYWNrL1RyYWNrQmFzZS5oIGIvU291cmNlL1dlYkNvcmUvaHRt
bC90cmFjay9UcmFja0Jhc2UuaAppbmRleCBjMDA2NjBmMDUzYWQ2NDk0MTY1OGYyMGQ3NTAzMGNh
YmM5MzI3OTg5Li41NDYyODk4YzBlMDU3ZTIyNzBjOTE0MWE2YWQ1MmI0MzJkYTcyNDhjIDEwMDY0
NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9odG1sL3RyYWNrL1RyYWNrQmFzZS5oCisrKyBiL1NvdXJj
ZS9XZWJDb3JlL2h0bWwvdHJhY2svVHJhY2tCYXNlLmgKQEAgLTMzLDM1ICszMyw0MiBAQAogCiBu
YW1lc3BhY2UgV2ViQ29yZSB7CiAKLWNsYXNzIFNjcmlwdEV4ZWN1dGlvbkNvbnRleHQ7CitjbGFz
cyBIVE1MTWVkaWFFbGVtZW50OwogCi1jbGFzcyBUcmFja0Jhc2UgOiBwdWJsaWMgUmVmQ291bnRl
ZDxUcmFja0Jhc2U+LCBwdWJsaWMgRXZlbnRUYXJnZXQgeworY2xhc3MgVHJhY2tCYXNlIDogcHVi
bGljIFJlZkNvdW50ZWQ8VHJhY2tCYXNlPiB7CiBwdWJsaWM6CiAgICAgdmlydHVhbCB+VHJhY2tC
YXNlKCk7CiAKICAgICBlbnVtIFR5cGUgeyBCYXNlVHJhY2ssIFRleHRUcmFjaywgQXVkaW9UcmFj
aywgVmlkZW9UcmFjayB9OwogICAgIFR5cGUgdHlwZSgpIGNvbnN0IHsgcmV0dXJuIG1fdHlwZTsg
fQogCi0gICAgdmlydHVhbCBjb25zdCBBdG9taWNTdHJpbmcmIGludGVyZmFjZU5hbWUoKSBjb25z
dDsKLSAgICB2aXJ0dWFsIFNjcmlwdEV4ZWN1dGlvbkNvbnRleHQqIHNjcmlwdEV4ZWN1dGlvbkNv
bnRleHQoKSBjb25zdDsKLSAgICAKLSAgICB1c2luZyBSZWZDb3VudGVkPFRyYWNrQmFzZT46OnJl
ZjsKLSAgICB1c2luZyBSZWZDb3VudGVkPFRyYWNrQmFzZT46OmRlcmVmOworICAgIHZvaWQgc2V0
TWVkaWFFbGVtZW50KEhUTUxNZWRpYUVsZW1lbnQqIGVsZW1lbnQpIHsgbV9tZWRpYUVsZW1lbnQg
PSBlbGVtZW50OyB9CisgICAgSFRNTE1lZGlhRWxlbWVudCogbWVkaWFFbGVtZW50KCkgeyByZXR1
cm4gbV9tZWRpYUVsZW1lbnQ7IH0KKworICAgIEF0b21pY1N0cmluZyBraW5kKCkgY29uc3QgeyBy
ZXR1cm4gbV9raW5kOyB9CisgICAgdmlydHVhbCB2b2lkIHNldEtpbmQoY29uc3QgQXRvbWljU3Ry
aW5nJik7CisKKyAgICBBdG9taWNTdHJpbmcgbGFiZWwoKSBjb25zdCB7IHJldHVybiBtX2xhYmVs
OyB9CisgICAgdm9pZCBzZXRMYWJlbChjb25zdCBBdG9taWNTdHJpbmcmIGxhYmVsKSB7IG1fbGFi
ZWwgPSBsYWJlbDsgfQorCisgICAgQXRvbWljU3RyaW5nIGxhbmd1YWdlKCkgY29uc3QgeyByZXR1
cm4gbV9sYW5ndWFnZTsgfQorICAgIHZvaWQgc2V0TGFuZ3VhZ2UoY29uc3QgQXRvbWljU3RyaW5n
JiBsYW5ndWFnZSkgeyBtX2xhbmd1YWdlID0gbGFuZ3VhZ2U7IH0KKworICAgIHZpcnR1YWwgdm9p
ZCBjbGVhckNsaWVudCgpID0gMDsKIAogcHJvdGVjdGVkOgotICAgIFRyYWNrQmFzZShTY3JpcHRF
eGVjdXRpb25Db250ZXh0KiwgVHlwZSk7Ci0gICAgCi0gICAgdmlydHVhbCBFdmVudFRhcmdldERh
dGEqIGV2ZW50VGFyZ2V0RGF0YSgpOwotICAgIHZpcnR1YWwgRXZlbnRUYXJnZXREYXRhKiBlbnN1
cmVFdmVudFRhcmdldERhdGEoKTsKKyAgICBUcmFja0Jhc2UoVHlwZSwgY29uc3QgQXRvbWljU3Ry
aW5nJiBsYWJlbCwgY29uc3QgQXRvbWljU3RyaW5nJiBsYW5ndWFnZSk7CisKKyAgICB2aXJ0dWFs
IGJvb2wgaXNWYWxpZEtpbmQoY29uc3QgQXRvbWljU3RyaW5nJikgY29uc3QgPSAwOworICAgIHZp
cnR1YWwgY29uc3QgQXRvbWljU3RyaW5nJiBkZWZhdWx0S2luZEtleXdvcmQoKSBjb25zdCA9IDA7
CisKKyAgICBIVE1MTWVkaWFFbGVtZW50KiBtX21lZGlhRWxlbWVudDsKIAogcHJpdmF0ZToKICAg
ICBUeXBlIG1fdHlwZTsKLSAgICAKLSAgICB2aXJ0dWFsIHZvaWQgcmVmRXZlbnRUYXJnZXQoKSB7
IHJlZigpOyB9Ci0gICAgdmlydHVhbCB2b2lkIGRlcmVmRXZlbnRUYXJnZXQoKSB7IGRlcmVmKCk7
IH0KLSAgICAKLSAgICBTY3JpcHRFeGVjdXRpb25Db250ZXh0KiBtX3NjcmlwdEV4ZWN1dGlvbkNv
bnRleHQ7Ci0gICAgRXZlbnRUYXJnZXREYXRhIG1fZXZlbnRUYXJnZXREYXRhOworICAgIEF0b21p
Y1N0cmluZyBtX2tpbmQ7CisgICAgQXRvbWljU3RyaW5nIG1fbGFiZWw7CisgICAgQXRvbWljU3Ry
aW5nIG1fbGFuZ3VhZ2U7CiB9OwogCiB9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViQ29yZS9odG1sL3RyYWNrL1RyYWNrTGlzdEJhc2UuY3BwIGIvU291cmNlL1dl
YkNvcmUvaHRtbC90cmFjay9UcmFja0xpc3RCYXNlLmNwcApuZXcgZmlsZSBtb2RlIDEwMDY0NApp
bmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi41YzUwYmNiMDNm
NDY4ZWU1ZjJiNjBjMDIyMTI4NDZjMzNhNWQzODY5Ci0tLSAvZGV2L251bGwKKysrIGIvU291cmNl
L1dlYkNvcmUvaHRtbC90cmFjay9UcmFja0xpc3RCYXNlLmNwcApAQCAtMCwwICsxLDE3OCBAQAor
LyoKKyAqIENvcHlyaWdodCAoQykgMjAxMSwgMjAxMiBBcHBsZSBJbmMuICBBbGwgcmlnaHRzIHJl
c2VydmVkLgorICoKKyAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5h
cnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAorICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVk
IHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCisgKiBhcmUgbWV0OgorICog
MS4gUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBj
b3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBm
b2xsb3dpbmcgZGlzY2xhaW1lci4KKyAqIDIuIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9y
bSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMg
bGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCisg
KiAgICBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0
aGUgZGlzdHJpYnV0aW9uLgorICoKKyAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgQVBQ
TEUgQ09NUFVURVIsIElOQy4gYGBBUyBJUycnIEFORCBBTlkKKyAqIEVYUFJFU1MgT1IgSU1QTElF
RCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgVEhFCisgKiBJTVBM
SUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJ
Q1VMQVIKKyAqIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuICBJTiBOTyBFVkVOVCBTSEFMTCBBUFBM
RSBDT01QVVRFUiwgSU5DLiBPUgorICogQ09OVFJJQlVUT1JTIEJFIExJQUJMRSBGT1IgQU5ZIERJ
UkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsCisgKiBFWEVNUExBUlksIE9SIENP
TlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sCisgKiBQ
Uk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwg
REFUQSwgT1IKKyAqIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBD
QVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkKKyAqIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05U
UkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVAorICogKElOQ0xVRElORyBORUdMSUdFTkNF
IE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFCisgKiBPRiBU
SElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0gg
REFNQUdFLiAKKyAqLworCisjaW5jbHVkZSAiY29uZmlnLmgiCisKKyNpZiBFTkFCTEUoVklERU9f
VFJBQ0spCisKKyNpbmNsdWRlICJUcmFja0xpc3RCYXNlLmgiCisKKyNpbmNsdWRlICJFdmVudE5h
bWVzLmgiCisjaW5jbHVkZSAiSFRNTE1lZGlhRWxlbWVudC5oIgorI2luY2x1ZGUgIlNjcmlwdEV4
ZWN1dGlvbkNvbnRleHQuaCIKKyNpbmNsdWRlICJUcmFja0Jhc2UuaCIKKyNpbmNsdWRlICJUcmFj
a0V2ZW50LmgiCisKK3VzaW5nIG5hbWVzcGFjZSBXZWJDb3JlOworCitUcmFja0xpc3RCYXNlOjpU
cmFja0xpc3RCYXNlKEhUTUxNZWRpYUVsZW1lbnQqIG93bmVyLCBTY3JpcHRFeGVjdXRpb25Db250
ZXh0KiBjb250ZXh0KQorICAgIDogbV9jb250ZXh0KGNvbnRleHQpCisgICAgLCBtX293bmVyKG93
bmVyKQorICAgICwgbV9wZW5kaW5nRXZlbnRUaW1lcih0aGlzLCAmVHJhY2tMaXN0QmFzZTo6YXN5
bmNFdmVudFRpbWVyRmlyZWQpCisgICAgLCBtX2Rpc3BhdGNoaW5nRXZlbnRzKDApCit7CisgICAg
QVNTRVJUKGNvbnRleHQtPmlzRG9jdW1lbnQoKSk7Cit9CisKK1RyYWNrTGlzdEJhc2U6On5UcmFj
a0xpc3RCYXNlKCkKK3sKK30KKwordW5zaWduZWQgVHJhY2tMaXN0QmFzZTo6bGVuZ3RoKCkgY29u
c3QKK3sKKyAgICByZXR1cm4gbV9pbmJhbmRUcmFja3Muc2l6ZSgpOworfQorCit2b2lkIFRyYWNr
TGlzdEJhc2U6OnJlbW92ZShUcmFja0Jhc2UqIHRyYWNrKQoreworICAgIHNpemVfdCBpbmRleCA9
IG1faW5iYW5kVHJhY2tzLmZpbmQodHJhY2spOworICAgIEFTU0VSVChpbmRleCAhPSBub3RGb3Vu
ZCk7CisKKyAgICBBU1NFUlQodHJhY2stPm1lZGlhRWxlbWVudCgpID09IG1fb3duZXIpOworICAg
IHRyYWNrLT5zZXRNZWRpYUVsZW1lbnQoMCk7CisKKyAgICBSZWZQdHI8VHJhY2tCYXNlPiB0cmFj
a1JlZiA9IG1faW5iYW5kVHJhY2tzW2luZGV4XTsKKworICAgIG1faW5iYW5kVHJhY2tzLnJlbW92
ZShpbmRleCk7CisKKyAgICBzY2hlZHVsZVJlbW92ZVRyYWNrRXZlbnQodHJhY2tSZWYucmVsZWFz
ZSgpKTsKK30KKworYm9vbCBUcmFja0xpc3RCYXNlOjpjb250YWlucyhUcmFja0Jhc2UqIHRyYWNr
KSBjb25zdAoreworICAgIHJldHVybiBtX2luYmFuZFRyYWNrcy5maW5kKHRyYWNrKSAhPSBub3RG
b3VuZDsKK30KKwordm9pZCBUcmFja0xpc3RCYXNlOjpzY2hlZHVsZUFkZFRyYWNrRXZlbnQoUGFz
c1JlZlB0cjxUcmFja0Jhc2U+IHRyYWNrKQoreworICAgIC8vIDQuOC4xMC41IExvYWRpbmcgdGhl
IG1lZGlhIHJlc291cmNlCisgICAgLy8gLi4uCisgICAgLy8gRmlyZSBhIHRydXN0ZWQgZXZlbnQg
d2l0aCB0aGUgbmFtZSBhZGR0cmFjaywgdGhhdCBkb2VzIG5vdCBidWJibGUgYW5kIGlzCisgICAg
Ly8gbm90IGNhbmNlbGFibGUsIGFuZCB0aGF0IHVzZXMgdGhlIFRyYWNrRXZlbnQgaW50ZXJmYWNl
LCB3aXRoIHRoZSB0cmFjaworICAgIC8vIGF0dHJpYnV0ZSBpbml0aWFsaXplZCB0byB0aGUgbmV3
IEF1ZGlvVHJhY2sgb2JqZWN0LCBhdCB0aGlzCisgICAgLy8gQXVkaW9UcmFja0xpc3Qgb2JqZWN0
LgorICAgIC8vIC4uLgorICAgIC8vIEZpcmUgYSB0cnVzdGVkIGV2ZW50IHdpdGggdGhlIG5hbWUg
YWRkdHJhY2ssIHRoYXQgZG9lcyBub3QgYnViYmxlIGFuZCBpcworICAgIC8vIG5vdCBjYW5jZWxh
YmxlLCBhbmQgdGhhdCB1c2VzIHRoZSBUcmFja0V2ZW50IGludGVyZmFjZSwgd2l0aCB0aGUgdHJh
Y2sKKyAgICAvLyBhdHRyaWJ1dGUgaW5pdGlhbGl6ZWQgdG8gdGhlIG5ldyBWaWRlb1RyYWNrIG9i
amVjdCwgYXQgdGhpcworICAgIC8vIFZpZGVvVHJhY2tMaXN0IG9iamVjdC4KKworICAgIC8vIDQu
OC4xMC4xMi4zIFNvdXJjaW5nIG91dC1vZi1iYW5kIHRleHQgdHJhY2tzCisgICAgLy8gNC44LjEw
LjEyLjQgVGV4dCB0cmFjayBBUEkKKyAgICAvLyAuLi4gdGhlbiBxdWV1ZSBhIHRhc2sgdG8gZmly
ZSBhbiBldmVudCB3aXRoIHRoZSBuYW1lIGFkZHRyYWNrLCB0aGF0IGRvZXMgbm90CisgICAgLy8g
YnViYmxlIGFuZCBpcyBub3QgY2FuY2VsYWJsZSwgYW5kIHRoYXQgdXNlcyB0aGUgVHJhY2tFdmVu
dCBpbnRlcmZhY2UsIHdpdGgKKyAgICAvLyB0aGUgdHJhY2sgYXR0cmlidXRlIGluaXRpYWxpemVk
IHRvIHRoZSB0ZXh0IHRyYWNrJ3MgVGV4dFRyYWNrIG9iamVjdCwgYXQKKyAgICAvLyB0aGUgbWVk
aWEgZWxlbWVudCdzIHRleHRUcmFja3MgYXR0cmlidXRlJ3MgVGV4dFRyYWNrTGlzdCBvYmplY3Qu
IAorCisgICAgUmVmUHRyPFRyYWNrQmFzZT4gdHJhY2tSZWYgPSB0cmFjazsKKyAgICBUcmFja0V2
ZW50SW5pdCBpbml0aWFsaXplcjsKKyAgICBpbml0aWFsaXplci50cmFjayA9IHRyYWNrUmVmOwor
ICAgIGluaXRpYWxpemVyLmJ1YmJsZXMgPSBmYWxzZTsKKyAgICBpbml0aWFsaXplci5jYW5jZWxh
YmxlID0gZmFsc2U7CisKKyAgICBtX3BlbmRpbmdFdmVudHMuYXBwZW5kKFRyYWNrRXZlbnQ6OmNy
ZWF0ZShldmVudE5hbWVzKCkuYWRkdHJhY2tFdmVudCwgaW5pdGlhbGl6ZXIpKTsKKyAgICBpZiAo
IW1fcGVuZGluZ0V2ZW50VGltZXIuaXNBY3RpdmUoKSkKKyAgICAgICAgbV9wZW5kaW5nRXZlbnRU
aW1lci5zdGFydE9uZVNob3QoMCk7Cit9CisKK3ZvaWQgVHJhY2tMaXN0QmFzZTo6c2NoZWR1bGVS
ZW1vdmVUcmFja0V2ZW50KFBhc3NSZWZQdHI8VHJhY2tCYXNlPiB0cmFjaykKK3sKKyAgICAvLyA0
LjguMTAuNiBPZmZzZXRzIGludG8gdGhlIG1lZGlhIHJlc291cmNlCisgICAgLy8gSWYgYXQgYW55
IHRpbWUgdGhlIHVzZXIgYWdlbnQgbGVhcm5zIHRoYXQgYW4gYXVkaW8gb3IgdmlkZW8gdHJhY2sg
aGFzCisgICAgLy8gZW5kZWQgYW5kIGFsbCBtZWRpYSBkYXRhIHJlbGF0aW5nIHRvIHRoYXQgdHJh
Y2sgY29ycmVzcG9uZHMgdG8gcGFydHMgb2YKKyAgICAvLyB0aGUgbWVkaWEgdGltZWxpbmUgdGhh
dCBhcmUgYmVmb3JlIHRoZSBlYXJsaWVzdCBwb3NzaWJsZSBwb3NpdGlvbiwgdGhlCisgICAgLy8g
dXNlciBhZ2VudCBtYXkgcXVldWUgYSB0YXNrIHRvIHJlbW92ZSB0aGUgdHJhY2sgZnJvbSB0aGUg
YXVkaW9UcmFja3MKKyAgICAvLyBhdHRyaWJ1dGUncyBBdWRpb1RyYWNrTGlzdCBvYmplY3Qgb3Ig
dGhlIHZpZGVvVHJhY2tzIGF0dHJpYnV0ZSdzCisgICAgLy8gVmlkZW9UcmFja0xpc3Qgb2JqZWN0
IGFzIGFwcHJvcHJpYXRlIGFuZCB0aGVuIGZpcmUgYSB0cnVzdGVkIGV2ZW50CisgICAgLy8gd2l0
aCB0aGUgbmFtZSByZW1vdmV0cmFjaywgdGhhdCBkb2VzIG5vdCBidWJibGUgYW5kIGlzIG5vdCBj
YW5jZWxhYmxlLAorICAgIC8vIGFuZCB0aGF0IHVzZXMgdGhlIFRyYWNrRXZlbnQgaW50ZXJmYWNl
LCB3aXRoIHRoZSB0cmFjayBhdHRyaWJ1dGUKKyAgICAvLyBpbml0aWFsaXplZCB0byB0aGUgQXVk
aW9UcmFjayBvciBWaWRlb1RyYWNrIG9iamVjdCByZXByZXNlbnRpbmcgdGhlCisgICAgLy8gdHJh
Y2ssIGF0IHRoZSBtZWRpYSBlbGVtZW50J3MgYWZvcmVtZW50aW9uZWQgQXVkaW9UcmFja0xpc3Qg
b3IKKyAgICAvLyBWaWRlb1RyYWNrTGlzdCBvYmplY3QuCisKKyAgICAvLyA0LjguMTAuMTIuMyBT
b3VyY2luZyBvdXQtb2YtYmFuZCB0ZXh0IHRyYWNrcworICAgIC8vIFdoZW4gYSB0cmFjayBlbGVt
ZW50J3MgcGFyZW50IGVsZW1lbnQgY2hhbmdlcyBhbmQgdGhlIG9sZCBwYXJlbnQgd2FzIGEKKyAg
ICAvLyBtZWRpYSBlbGVtZW50LCB0aGVuIHRoZSB1c2VyIGFnZW50IG11c3QgcmVtb3ZlIHRoZSB0
cmFjayBlbGVtZW50J3MKKyAgICAvLyBjb3JyZXNwb25kaW5nIHRleHQgdHJhY2sgZnJvbSB0aGUg
bWVkaWEgZWxlbWVudCdzIGxpc3Qgb2YgdGV4dCB0cmFja3MsCisgICAgLy8gYW5kIHRoZW4gcXVl
dWUgYSB0YXNrIHRvIGZpcmUgYSB0cnVzdGVkIGV2ZW50IHdpdGggdGhlIG5hbWUgcmVtb3ZldHJh
Y2ssCisgICAgLy8gdGhhdCBkb2VzIG5vdCBidWJibGUgYW5kIGlzIG5vdCBjYW5jZWxhYmxlLCBh
bmQgdGhhdCB1c2VzIHRoZSBUcmFja0V2ZW50CisgICAgLy8gaW50ZXJmYWNlLCB3aXRoIHRoZSB0
cmFjayBhdHRyaWJ1dGUgaW5pdGlhbGl6ZWQgdG8gdGhlIHRleHQgdHJhY2sncworICAgIC8vIFRl
eHRUcmFjayBvYmplY3QsIGF0IHRoZSBtZWRpYSBlbGVtZW50J3MgdGV4dFRyYWNrcyBhdHRyaWJ1
dGUncworICAgIC8vIFRleHRUcmFja0xpc3Qgb2JqZWN0LgorCisgICAgUmVmUHRyPFRyYWNrQmFz
ZT4gdHJhY2tSZWYgPSB0cmFjazsKKyAgICBUcmFja0V2ZW50SW5pdCBpbml0aWFsaXplcjsKKyAg
ICBpbml0aWFsaXplci50cmFjayA9IHRyYWNrUmVmOworICAgIGluaXRpYWxpemVyLmJ1YmJsZXMg
PSBmYWxzZTsKKyAgICBpbml0aWFsaXplci5jYW5jZWxhYmxlID0gZmFsc2U7CisKKyAgICBtX3Bl
bmRpbmdFdmVudHMuYXBwZW5kKFRyYWNrRXZlbnQ6OmNyZWF0ZShldmVudE5hbWVzKCkucmVtb3Zl
dHJhY2tFdmVudCwgaW5pdGlhbGl6ZXIpKTsKKyAgICBpZiAoIW1fcGVuZGluZ0V2ZW50VGltZXIu
aXNBY3RpdmUoKSkKKyAgICAgICAgbV9wZW5kaW5nRXZlbnRUaW1lci5zdGFydE9uZVNob3QoMCk7
Cit9CisKK3ZvaWQgVHJhY2tMaXN0QmFzZTo6c2NoZWR1bGVDaGFuZ2VFdmVudCgpCit7CisgICAg
Ly8gNC44LjEwLjYgT2Zmc2V0cyBpbnRvIHRoZSBtZWRpYSByZXNvdXJjZQorICAgIC8vIFdoZW5l
dmVyIGFuIGF1ZGlvIHRyYWNrIGluIGFuIEF1ZGlvVHJhY2tMaXN0IGlzIGVuYWJsZWQgb3IgZGlz
YWJsZWQsIHRoZQorICAgIC8vIHVzZXIgYWdlbnQgbXVzdCBxdWV1ZSBhIHRhc2sgdG8gZmlyZSBh
IHNpbXBsZSBldmVudCBuYW1lZCBjaGFuZ2UgYXQgdGhlCisgICAgLy8gQXVkaW9UcmFja0xpc3Qg
b2JqZWN0LgorICAgIC8vIC4uLgorICAgIC8vIFdoZW5ldmVyIGEgdHJhY2sgaW4gYSBWaWRlb1Ry
YWNrTGlzdCB0aGF0IHdhcyBwcmV2aW91c2x5IG5vdCBzZWxlY3RlZCBpcworICAgIC8vIHNlbGVj
dGVkLCB0aGUgdXNlciBhZ2VudCBtdXN0IHF1ZXVlIGEgdGFzayB0byBmaXJlIGEgc2ltcGxlIGV2
ZW50IG5hbWVkCisgICAgLy8gY2hhbmdlIGF0IHRoZSBWaWRlb1RyYWNrTGlzdCBvYmplY3QuCisK
KyAgICBFdmVudEluaXQgaW5pdGlhbGl6ZXI7CisgICAgaW5pdGlhbGl6ZXIuYnViYmxlcyA9IGZh
bHNlOworICAgIGluaXRpYWxpemVyLmNhbmNlbGFibGUgPSBmYWxzZTsKKworICAgIG1fcGVuZGlu
Z0V2ZW50cy5hcHBlbmQoRXZlbnQ6OmNyZWF0ZShldmVudE5hbWVzKCkuY2hhbmdlRXZlbnQsIGlu
aXRpYWxpemVyKSk7CisgICAgaWYgKCFtX3BlbmRpbmdFdmVudFRpbWVyLmlzQWN0aXZlKCkpCisg
ICAgICAgIG1fcGVuZGluZ0V2ZW50VGltZXIuc3RhcnRPbmVTaG90KDApOworfQorCit2b2lkIFRy
YWNrTGlzdEJhc2U6OmFzeW5jRXZlbnRUaW1lckZpcmVkKFRpbWVyPFRyYWNrTGlzdEJhc2U+KikK
K3sKKyAgICBWZWN0b3I8UmVmUHRyPEV2ZW50PiA+IHBlbmRpbmdFdmVudHM7CisKKyAgICArK21f
ZGlzcGF0Y2hpbmdFdmVudHM7CisgICAgbV9wZW5kaW5nRXZlbnRzLnN3YXAocGVuZGluZ0V2ZW50
cyk7CisgICAgc2l6ZV90IGNvdW50ID0gcGVuZGluZ0V2ZW50cy5zaXplKCk7CisgICAgZm9yIChz
aXplX3QgaW5kZXggPSAwOyBpbmRleCA8IGNvdW50OyArK2luZGV4KQorICAgICAgICBkaXNwYXRj
aEV2ZW50KHBlbmRpbmdFdmVudHNbaW5kZXhdLnJlbGVhc2UoKSwgSUdOT1JFX0VYQ0VQVElPTik7
CisgICAgLS1tX2Rpc3BhdGNoaW5nRXZlbnRzOworfQorCisjZW5kaWYKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJDb3JlL2h0bWwvdHJhY2svVHJhY2tMaXN0QmFzZS5oIGIvU291cmNlL1dlYkNvcmUv
aHRtbC90cmFjay9UcmFja0xpc3RCYXNlLmgKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uYjU0NGY1MDAyNDYyMDVhMzhm
OTRmOTdhMWJhZTRkYjViZDVjZjE4MQotLS0gL2Rldi9udWxsCisrKyBiL1NvdXJjZS9XZWJDb3Jl
L2h0bWwvdHJhY2svVHJhY2tMaXN0QmFzZS5oCkBAIC0wLDAgKzEsMTAxIEBACisvKgorICogQ29w
eXJpZ2h0IChDKSAyMDExLCAyMDEyIEFwcGxlIEluYy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisg
KgorICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywg
d2l0aCBvciB3aXRob3V0CisgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQg
dGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKKyAqIGFyZSBtZXQ6CisgKiAxLiBSZWRpc3Ry
aWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAor
ICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBk
aXNjbGFpbWVyLgorICogMi4gUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVw
cm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNv
bmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKKyAqICAgIGRvY3Vt
ZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmli
dXRpb24uCisgKgorICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBBUFBMRSBDT01QVVRF
UiwgSU5DLiBgYEFTIElTJycgQU5EIEFOWQorICogRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJ
RVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBUSEUKKyAqIElNUExJRUQgV0FSUkFO
VElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUgorICog
UFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gIElOIE5PIEVWRU5UIFNIQUxMIEFQUExFIENPTVBVVEVS
LCBJTkMuIE9SCisgKiBDT05UUklCVVRPUlMgQkUgTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJ
UkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwKKyAqIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElB
TCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywKKyAqIFBST0NVUkVNRU5U
IE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLCBEQVRBLCBPUgor
ICogUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQg
T04gQU5ZIFRIRU9SWQorICogT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJ
Q1QgTElBQklMSVRZLCBPUiBUT1JUCisgKiAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJX
SVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UKKyAqIE9GIFRISVMgU09GVFdB
UkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuIAor
ICovCisKKyNpZm5kZWYgVHJhY2tMaXN0QmFzZV9oCisjZGVmaW5lIFRyYWNrTGlzdEJhc2VfaAor
CisjaWYgRU5BQkxFKFZJREVPX1RSQUNLKQorCisjaW5jbHVkZSAiRXZlbnRMaXN0ZW5lci5oIgor
I2luY2x1ZGUgIkV2ZW50VGFyZ2V0LmgiCisjaW5jbHVkZSAiVGltZXIuaCIKKyNpbmNsdWRlIDx3
dGYvUGFzc1JlZlB0ci5oPgorI2luY2x1ZGUgPHd0Zi9SZWZDb3VudGVkLmg+CisjaW5jbHVkZSA8
d3RmL1ZlY3Rvci5oPgorCituYW1lc3BhY2UgV2ViQ29yZSB7CisKK2NsYXNzIEhUTUxNZWRpYUVs
ZW1lbnQ7CitjbGFzcyBUcmFja0Jhc2U7CisKK2NsYXNzIFRyYWNrTGlzdEJhc2UgOiBwdWJsaWMg
UmVmQ291bnRlZDxUcmFja0xpc3RCYXNlPiwgcHVibGljIEV2ZW50VGFyZ2V0IHsKK3B1YmxpYzoK
KyAgICB+VHJhY2tMaXN0QmFzZSgpOworCisgICAgdmlydHVhbCB1bnNpZ25lZCBsZW5ndGgoKSBj
b25zdDsKKyAgICB2aXJ0dWFsIGJvb2wgY29udGFpbnMoVHJhY2tCYXNlKikgY29uc3Q7CisgICAg
dmlydHVhbCB2b2lkIHJlbW92ZShUcmFja0Jhc2UqKTsKKworICAgIC8vIEV2ZW50VGFyZ2V0Cisg
ICAgdmlydHVhbCBjb25zdCBBdG9taWNTdHJpbmcmIGludGVyZmFjZU5hbWUoKSBjb25zdCA9IDA7
CisgICAgdXNpbmcgUmVmQ291bnRlZDxUcmFja0xpc3RCYXNlPjo6cmVmOworICAgIHVzaW5nIFJl
ZkNvdW50ZWQ8VHJhY2tMaXN0QmFzZT46OmRlcmVmOworICAgIHZpcnR1YWwgU2NyaXB0RXhlY3V0
aW9uQ29udGV4dCogc2NyaXB0RXhlY3V0aW9uQ29udGV4dCgpIGNvbnN0IHsgcmV0dXJuIG1fY29u
dGV4dDsgfQorCisgICAgREVGSU5FX0FUVFJJQlVURV9FVkVOVF9MSVNURU5FUihhZGR0cmFjayk7
CisgICAgREVGSU5FX0FUVFJJQlVURV9FVkVOVF9MSVNURU5FUihjaGFuZ2UpOworICAgIERFRklO
RV9BVFRSSUJVVEVfRVZFTlRfTElTVEVORVIocmVtb3ZldHJhY2spOworCisgICAgdm9pZCBjbGVh
ck93bmVyKCkgeyBtX293bmVyID0gMDsgfQorICAgIEhUTUxNZWRpYUVsZW1lbnQqIG93bmVyKCkg
Y29uc3QgeyByZXR1cm4gbV9vd25lcjsgfQorCisgICAgYm9vbCBpc0ZpcmluZ0V2ZW50TGlzdGVu
ZXJzKCkgeyByZXR1cm4gbV9kaXNwYXRjaGluZ0V2ZW50czsgfQorCisgICAgLy8gTmVlZHMgdG8g
YmUgcHVibGljIHNvIHRyYWNrcyBjYW4gY2FsbCBpdAorICAgIHZvaWQgc2NoZWR1bGVDaGFuZ2VF
dmVudCgpOworCitwcm90ZWN0ZWQ6CisgICAgVHJhY2tMaXN0QmFzZShIVE1MTWVkaWFFbGVtZW50
KiwgU2NyaXB0RXhlY3V0aW9uQ29udGV4dCopOworCisgICAgdm9pZCBzY2hlZHVsZUFkZFRyYWNr
RXZlbnQoUGFzc1JlZlB0cjxUcmFja0Jhc2U+KTsKKyAgICB2b2lkIHNjaGVkdWxlUmVtb3ZlVHJh
Y2tFdmVudChQYXNzUmVmUHRyPFRyYWNrQmFzZT4pOworCisgICAgVmVjdG9yPFJlZlB0cjxUcmFj
a0Jhc2U+ID4gbV9pbmJhbmRUcmFja3M7CisKK3ByaXZhdGU6CisKKyAgICAvLyBFdmVudFRhcmdl
dAorICAgIHZpcnR1YWwgdm9pZCByZWZFdmVudFRhcmdldCgpIHsgcmVmKCk7IH0KKyAgICB2aXJ0
dWFsIHZvaWQgZGVyZWZFdmVudFRhcmdldCgpIHsgZGVyZWYoKTsgfQorICAgIHZpcnR1YWwgRXZl
bnRUYXJnZXREYXRhKiBldmVudFRhcmdldERhdGEoKSB7IHJldHVybiAmbV9ldmVudFRhcmdldERh
dGE7IH0KKyAgICB2aXJ0dWFsIEV2ZW50VGFyZ2V0RGF0YSogZW5zdXJlRXZlbnRUYXJnZXREYXRh
KCkgeyByZXR1cm4gJm1fZXZlbnRUYXJnZXREYXRhOyB9CisKKyAgICB2b2lkIGFzeW5jRXZlbnRU
aW1lckZpcmVkKFRpbWVyPFRyYWNrTGlzdEJhc2U+Kik7CisKKyAgICBTY3JpcHRFeGVjdXRpb25D
b250ZXh0KiBtX2NvbnRleHQ7CisgICAgSFRNTE1lZGlhRWxlbWVudCogbV9vd25lcjsKKworICAg
IFZlY3RvcjxSZWZQdHI8RXZlbnQ+ID4gbV9wZW5kaW5nRXZlbnRzOworICAgIFRpbWVyPFRyYWNr
TGlzdEJhc2U+IG1fcGVuZGluZ0V2ZW50VGltZXI7CisKKyAgICBFdmVudFRhcmdldERhdGEgbV9l
dmVudFRhcmdldERhdGE7CisKKyAgICBpbnQgbV9kaXNwYXRjaGluZ0V2ZW50czsKK307CisKK30g
Ly8gbmFtZXNwYWNlIFdlYkNvcmUKKworI2VuZGlmCisjZW5kaWYKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL01lZGlhUGxheWVyLmNwcCBiL1NvdXJjZS9XZWJD
b3JlL3BsYXRmb3JtL2dyYXBoaWNzL01lZGlhUGxheWVyLmNwcAppbmRleCAzMzlmZTMyMDZmMzAy
Y2I3NjJkMjk3ZDFmYWU3NWQ0M2EwOTU3NDUyLi4zMmNlY2Y1NGI4YjIwYjdiZjdkOTIwNmNiZDQ3
NWJkOTIzY2FmMGMyIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGlj
cy9NZWRpYVBsYXllci5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3Mv
TWVkaWFQbGF5ZXIuY3BwCkBAIC0xMTAyLDcgKzExMDIsNyBAQCB2b2lkIE1lZGlhUGxheWVyOjph
ZGRUZXh0VHJhY2soUGFzc1JlZlB0cjxJbmJhbmRUZXh0VHJhY2tQcml2YXRlPiB0cmFjaykKICAg
ICBpZiAoIW1fbWVkaWFQbGF5ZXJDbGllbnQpCiAgICAgICAgIHJldHVybjsKIAotICAgIG1fbWVk
aWFQbGF5ZXJDbGllbnQtPm1lZGlhUGxheWVyRGlkQWRkVHJhY2sodHJhY2spOworICAgIG1fbWVk
aWFQbGF5ZXJDbGllbnQtPm1lZGlhUGxheWVyRGlkQWRkVGV4dFRyYWNrKHRyYWNrKTsKIH0KIAog
dm9pZCBNZWRpYVBsYXllcjo6cmVtb3ZlVGV4dFRyYWNrKFBhc3NSZWZQdHI8SW5iYW5kVGV4dFRy
YWNrUHJpdmF0ZT4gdHJhY2spCkBAIC0xMTEwLDcgKzExMTAsNyBAQCB2b2lkIE1lZGlhUGxheWVy
OjpyZW1vdmVUZXh0VHJhY2soUGFzc1JlZlB0cjxJbmJhbmRUZXh0VHJhY2tQcml2YXRlPiB0cmFj
aykKICAgICBpZiAoIW1fbWVkaWFQbGF5ZXJDbGllbnQpCiAgICAgICAgIHJldHVybjsKIAotICAg
IG1fbWVkaWFQbGF5ZXJDbGllbnQtPm1lZGlhUGxheWVyRGlkUmVtb3ZlVHJhY2sodHJhY2spOwor
ICAgIG1fbWVkaWFQbGF5ZXJDbGllbnQtPm1lZGlhUGxheWVyRGlkUmVtb3ZlVGV4dFRyYWNrKHRy
YWNrKTsKIH0KIAogYm9vbCBNZWRpYVBsYXllcjo6cmVxdWlyZXNUZXh0VHJhY2tSZXByZXNlbnRh
dGlvbigpIGNvbnN0CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGlj
cy9NZWRpYVBsYXllci5oIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvTWVkaWFQ
bGF5ZXIuaAppbmRleCA0NTNkY2YwMjQ4OTg0MzJhYTA4ZDExODllMWNmMTNjODVlMjc2YzM0Li42
MWRmMWY0ZGU2OGJjNzNmYjM2OWQwNWUwZmRiZmMxYmE3YzU1NmY2IDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9NZWRpYVBsYXllci5oCisrKyBiL1NvdXJjZS9X
ZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL01lZGlhUGxheWVyLmgKQEAgLTIxOCw4ICsyMTgsOCBA
QCBwdWJsaWM6CiAgICAgdmlydHVhbCBDYWNoZWRSZXNvdXJjZUxvYWRlciogbWVkaWFQbGF5ZXJD
YWNoZWRSZXNvdXJjZUxvYWRlcigpIHsgcmV0dXJuIDA7IH0KIAogI2lmIEVOQUJMRShWSURFT19U
UkFDSykKLSAgICB2aXJ0dWFsIHZvaWQgbWVkaWFQbGF5ZXJEaWRBZGRUcmFjayhQYXNzUmVmUHRy
PEluYmFuZFRleHRUcmFja1ByaXZhdGU+KSB7IH0KLSAgICB2aXJ0dWFsIHZvaWQgbWVkaWFQbGF5
ZXJEaWRSZW1vdmVUcmFjayhQYXNzUmVmUHRyPEluYmFuZFRleHRUcmFja1ByaXZhdGU+KSB7IH0K
KyAgICB2aXJ0dWFsIHZvaWQgbWVkaWFQbGF5ZXJEaWRBZGRUZXh0VHJhY2soUGFzc1JlZlB0cjxJ
bmJhbmRUZXh0VHJhY2tQcml2YXRlPikgeyB9CisgICAgdmlydHVhbCB2b2lkIG1lZGlhUGxheWVy
RGlkUmVtb3ZlVGV4dFRyYWNrKFBhc3NSZWZQdHI8SW5iYW5kVGV4dFRyYWNrUHJpdmF0ZT4pIHsg
fQogCiAgICAgdmlydHVhbCB2b2lkIHRleHRUcmFja1JlcHJlc2VudGF0aW9uQm91bmRzQ2hhbmdl
ZChjb25zdCBJbnRSZWN0JikgeyB9CiAgICAgdmlydHVhbCB2b2lkIHBhaW50VGV4dFRyYWNrUmVw
cmVzZW50YXRpb24oR3JhcGhpY3NDb250ZXh0KiwgY29uc3QgSW50UmVjdCYpIHsgfQo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>197877</attachid>
            <date>2013-04-12 12:27:58 -0700</date>
            <delta_ts>2013-04-12 13:52:42 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-114330-20130412132736.patch</filename>
            <type>text/plain</type>
            <size>59879</size>
            <attacher name="Brendan Long">b.long</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTQ4Mjg2CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggMzEyZGY0NjllNDk0YzY3
MDA3ZjJkYzBkN2YxZjk1ZDU2Y2Q4NGFiYy4uYWUzZDk5NzdmZTAzMGU3ZTk3ZWEwMDY1MWNmZjY5
MzliZThiNzU3ZiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDk4IEBACisyMDEzLTA0LTEyICBCcmVu
ZGFuIExvbmcgIDxiLmxvbmdAY2FibGVsYWJzLmNvbT4KKworICAgICAgICBSZWZhY3RvciBUZXh0
VHJhY2sgYW5kIFRleHRUcmFja0xpc3QgdG8gbWFrZSBpdCBlYXNpZXIgdG8gYWRkIGF1ZGlvIGFu
ZCB2aWRlbyB0cmFja3MKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcu
Y2dpP2lkPTExNDMzMAorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisg
ICAgICAgIE5vIG5ldyB0ZXN0cyBiZWNhdXNlIHRoaXMgZG9lc24ndCBhZGQgbmV3IGZ1bmN0aW9u
YWxpdHkuCisKKyAgICAgICAgKiBDTWFrZUxpc3RzLnR4dDogT25seSBjb21waWxlIHRleHQgdHJh
Y2sgZmlsZXMgaWYgRU5BQkxFKFZJREVPX1RSQUNLKSwgYW5kIGFkZCBUcmFja0xpc3RCYXNlCisg
ICAgICAgICogVGFyZ2V0LnByaTogQWRkIFRyYWNrTGlzdEJhc2UKKyAgICAgICAgKiBXZWJDb3Jl
LnZjcHJvai9XZWJDb3JlLnZjcHJvajogQ29ycmVjdCBJbmJhbmRUZXh0VHJhY2tQcml2YXRlLmgn
cyBsb2NhdGlvbiBhbmQgYWRkIFRyYWNrTGlzdEJhc2UKKyAgICAgICAgKiBXZWJDb3JlLnhjb2Rl
cHJvai9wcm9qZWN0LnBieHByb2o6IEFkZCBUcmFja0xpc3RCYXNlCisgICAgICAgICogaHRtbC9I
VE1MTWVkaWFFbGVtZW50LmNwcDogUmVuYW1lZCAidHJhY2siIGZ1bmN0aW9ucyB0byAidGV4dFRy
YWNrIgorICAgICAgICAoV2ViQ29yZTo6SFRNTE1lZGlhRWxlbWVudDo6bWVkaWFQbGF5ZXJEaWRB
ZGRUZXh0VHJhY2spOiBSZW5hbWVkLgorICAgICAgICAoV2ViQ29yZTo6SFRNTE1lZGlhRWxlbWVu
dDo6bWVkaWFQbGF5ZXJEaWRSZW1vdmVUZXh0VHJhY2spOiBSZW5hbWVkLgorICAgICAgICAoV2Vi
Q29yZTo6SFRNTE1lZGlhRWxlbWVudDo6YWRkVGV4dFRyYWNrKTogUmVuYW1lZC4KKyAgICAgICAg
KFdlYkNvcmU6OkhUTUxNZWRpYUVsZW1lbnQ6OnJlbW92ZVRleHRUcmFjayk6IFJlbmFtZWQuCisg
ICAgICAgIChXZWJDb3JlOjpIVE1MTWVkaWFFbGVtZW50OjpyZW1vdmVBbGxJbmJhbmRUcmFja3Mp
OiBVc2UgcmVuYW1lZCBmdW5jdGlvbnMuCisgICAgICAgIChXZWJDb3JlOjpIVE1MTWVkaWFFbGVt
ZW50OjpkaWRBZGRUZXh0VHJhY2spOiBSZW5hbWVkLgorICAgICAgICAoV2ViQ29yZTo6SFRNTE1l
ZGlhRWxlbWVudDo6ZGlkUmVtb3ZlVGV4dFRyYWNrKTogUmVuYW1lZC4KKyAgICAgICAgKiBodG1s
L0hUTUxNZWRpYUVsZW1lbnQuaDoKKyAgICAgICAgUmVuYW1lZCAidHJhY2siIGZ1bmN0aW9ucyB0
byAidGV4dFRyYWNrIiBhbmQgb25seSBmb3J3YXJkLWRlY2xhcmUgVGV4dFRyYWNrTGlzdCBpZiBF
TkFCTEUoVklERU9fVFJBQ0spCisgICAgICAgICogaHRtbC9IVE1MVHJhY2tFbGVtZW50LmNwcDog
UmVuYW1lZCAidHJhY2siIGZ1bmN0aW9ucyB0byAidGV4dFRyYWNrIgorICAgICAgICAoV2ViQ29y
ZTo6SFRNTFRyYWNrRWxlbWVudDo6aW5zZXJ0ZWRJbnRvKToKKyAgICAgICAgKFdlYkNvcmU6OkhU
TUxUcmFja0VsZW1lbnQ6OnJlbW92ZWRGcm9tKToKKyAgICAgICAgKiBodG1sL3RyYWNrL1RleHRU
cmFjay5jcHA6IE1vdmUgbWVkaWEgZWxlbWVudCwgbGFiZWwsIGxhbmd1YWdlIGFuZCBraW5kIGlu
dG8gVHJhY2tCYXNlLCBtb3ZlIEV2ZW50VGFyZ2V0IGZ1bmN0aW9ucyBpbnRvIFRleHRUcmFjaywg
YWRkIHRvVGV4dFRyYWNrKCkgZnVuY3Rpb25zCisgICAgICAgIChXZWJDb3JlOjpUZXh0VHJhY2s6
OlRleHRUcmFjayk6IEFkZGVkLgorICAgICAgICAoV2ViQ29yZTo6VGV4dFRyYWNrOjppbnRlcmZh
Y2VOYW1lKTogQWRkZWQuCisgICAgICAgIChXZWJDb3JlOjpUZXh0VHJhY2s6OnNjcmlwdEV4ZWN1
dGlvbkNvbnRleHQpOiBBZGRlZC4KKyAgICAgICAgKFdlYkNvcmU6OlRleHRUcmFjazo6ZXZlbnRU
YXJnZXREYXRhKTogQWRkZWQuCisgICAgICAgIChXZWJDb3JlOjpUZXh0VHJhY2s6OmVuc3VyZUV2
ZW50VGFyZ2V0RGF0YSk6IEFkZGVkLgorICAgICAgICAoV2ViQ29yZTo6VGV4dFRyYWNrOjppc1Zh
bGlkS2luZCk6IEFkZGVkIHRvIHN1cHBvcnQgVHJhY2tCYXNlOjpzZXRLaW5kKCkKKyAgICAgICAg
KFdlYkNvcmU6OlRleHRUcmFjazo6c2V0S2luZCk6IE92ZXJyaWRlIHRvIHN1cHBvcnQgdGV4dFRy
YWNrS2luZENoYW5nZWQoKQorICAgICAgICAoV2ViQ29yZTo6VGV4dFRyYWNrOjppc1JlbmRlcmVk
KTogVXNlIGtpbmQoKSwgbGFiZWwoKSBhbmQgbGFuZ3VhZ2UoKSBpbnN0ZWFkIG9mIG1fa2luZCwg
ZXRjLgorICAgICAgICAoV2ViQ29yZTo6VGV4dFRyYWNrOjpwbGF0Zm9ybVRleHRUcmFjayk6IERp
dHRvLgorICAgICAgICAoV2ViQ29yZTo6VGV4dFRyYWNrOjppc01haW5Qcm9ncmFtQ29udGVudCk6
IERpdHRvLgorICAgICAgICAoV2ViQ29yZTo6dG9UZXh0VHJhY2spOiBBZGRlZC4KKyAgICAgICAg
KiBodG1sL3RyYWNrL1RleHRUcmFjay5oOgorICAgICAgICBTYW1lIGFzIFRleHRUcmFjay5jcHAs
IHBsdXMgYWRkZWQgZGVmYXVsdEtpbmRLZXl3b3JkKCkgc28gVHJhY2tCYXNlOjpzZXRLaW5kKCkg
d2lsbCB3b3JrLgorICAgICAgICAqIGh0bWwvdHJhY2svVGV4dFRyYWNrTGlzdC5jcHA6CisgICAg
ICAgIE1vdmUgZnVuY3Rpb25hbGl0eSBpbnRvIFRyYWNrTGlzdEJhc2UsIGFkZCB0b1RleHRUcmFj
aygpIGNhc3RzLCB1c2UKKyAgICAgICAgVHJhY2tCYXNlIHdoZXJlIG5lY2Vzc3NhcnkgYW5kIHVz
ZSBvd25lcigpIGluc3RlYWQgb2YgbV9vd25lci4KKworICAgICAgICBNb3ZlZCBFdmVudFRhcmdl
dCBmdW5jdGlvbnMgaW50byBUcmFja0xpc3RCYXNlLgorICAgICAgICAoVGV4dFRyYWNrTGlzdDo6
VGV4dFRyYWNrTGlzdCk6CisgICAgICAgIChUZXh0VHJhY2tMaXN0OjpnZXRUcmFja0luZGV4UmVs
YXRpdmVUb1JlbmRlcmVkVHJhY2tzKToKKyAgICAgICAgKFRleHRUcmFja0xpc3Q6Oml0ZW0pOgor
ICAgICAgICAoVGV4dFRyYWNrTGlzdDo6aW52YWxpZGF0ZVRyYWNrSW5kZXhlc0FmdGVyVHJhY2sp
OgorICAgICAgICAoVGV4dFRyYWNrTGlzdDo6YXBwZW5kKToKKyAgICAgICAgKFRleHRUcmFja0xp
c3Q6OnJlbW92ZSk6CisgICAgICAgIChUZXh0VHJhY2tMaXN0Ojpjb250YWlucyk6CisgICAgICAg
ICogaHRtbC90cmFjay9UZXh0VHJhY2tMaXN0Lmg6CisgICAgICAgIE1vdmUgRXZlbnRUYXJnZXQs
IFJlZkNvdW50ZWQgYW5kIG1faW5iYW5kVHJhY2tzIGludG8gVHJhY2tMaXN0QmFzZS4KKyAgICAg
ICAgT3ZlcnJpZGUgbGVuZ3RoKCksIGNvbnRhaW5zKCkgYW5kIHJlbW92ZSgpLgorICAgICAgICAq
IGh0bWwvdHJhY2svVHJhY2tCYXNlLmNwcDogUmVtb3ZlIEV2ZW50VGFyZ2V0IGZ1bmN0aW9ucy4K
KyAgICAgICAgKFdlYkNvcmU6OlRyYWNrQmFzZTo6VHJhY2tCYXNlKToKKyAgICAgICAgUmVtb3Zl
IEV2ZW50VGFyZ2V0LCBhZGQgbGFiZWwgYW5kIGxhbmd1YWdlCisgICAgICAgIChXZWJDb3JlOjpU
cmFja0Jhc2U6OnNldEtpbmQpOiBBZGRlZAorICAgICAgICAqIGh0bWwvdHJhY2svVHJhY2tCYXNl
Lmg6CisgICAgICAgIERvbid0IGV4dGVuZCBFdmVudFRhcmdldCAoQXVkaW9UcmFjayBhbmQgVmlk
ZW9UcmFjayBhcmVuJ3QpLiBIYW5kbGUKKyAgICAgICAga2luZCwgbGFiZWwsIGxhbmd1YWdlIGFu
ZCBtZWRpYSBlbGVtZW50LgorICAgICAgICAoV2ViQ29yZTo6VHJhY2tCYXNlOjpzZXRNZWRpYUVs
ZW1lbnQpOiBBZGRlZC4KKyAgICAgICAgKFdlYkNvcmU6OlRyYWNrQmFzZTo6bWVkaWFFbGVtZW50
KTogQWRkZWQuCisgICAgICAgIChXZWJDb3JlOjpUcmFja0Jhc2U6OmtpbmQpOiBBZGRlZC4KKyAg
ICAgICAgKFdlYkNvcmU6OlRyYWNrQmFzZTo6bGFiZWwpOiBBZGRlZC4KKyAgICAgICAgKFdlYkNv
cmU6OlRyYWNrQmFzZTo6c2V0TGFiZWwpOiBBZGRlZC4KKyAgICAgICAgKFdlYkNvcmU6OlRyYWNr
QmFzZTo6bGFuZ3VhZ2UpOiBBZGRlZC4KKyAgICAgICAgKFdlYkNvcmU6OlRyYWNrQmFzZTo6c2V0
TGFuZ3VhZ2UpOiBBZGRlZC4KKyAgICAgICAgKiBodG1sL3RyYWNrL1RyYWNrTGlzdEJhc2UuY3Bw
OgorICAgICAgICBBZGRlZC4gSGFuZGxlcyBmdW5jdGlvbmFsaXR5IGNvbW1vbiB0byBUZXh0VHJh
Y2tMaXN0LCBBdWRpb1RyYWNrTGlzdCBhbmQKKyAgICAgICAgVmlkZW9UcmFja0xpc3QuCisgICAg
ICAgIChUcmFja0xpc3RCYXNlOjpUcmFja0xpc3RCYXNlKTogQWRkZWQuCisgICAgICAgIChUcmFj
a0xpc3RCYXNlOjp+VHJhY2tMaXN0QmFzZSk6IEFkZGVkLgorICAgICAgICAoVHJhY2tMaXN0QmFz
ZTo6bGVuZ3RoKTogQWRkZWQuCisgICAgICAgIChUcmFja0xpc3RCYXNlOjpyZW1vdmUpOiBBZGRl
ZC4KKyAgICAgICAgKFRyYWNrTGlzdEJhc2U6OmNvbnRhaW5zKTogQWRkZWQuCisgICAgICAgIChU
cmFja0xpc3RCYXNlOjpzY2hlZHVsZUFkZFRyYWNrRXZlbnQpOiBBZGRlZC4KKyAgICAgICAgKFRy
YWNrTGlzdEJhc2U6OnNjaGVkdWxlUmVtb3ZlVHJhY2tFdmVudCk6IEFkZGVkLgorICAgICAgICAo
VHJhY2tMaXN0QmFzZTo6c2NoZWR1bGVDaGFuZ2VFdmVudCk6IEFkZGVkLgorICAgICAgICAoVHJh
Y2tMaXN0QmFzZTo6YXN5bmNFdmVudFRpbWVyRmlyZWQpOiBBZGRlZC4KKyAgICAgICAgKiBodG1s
L3RyYWNrL1RyYWNrTGlzdEJhc2UuaDoKKyAgICAgICAgQ29waWVkIGZyb20gU291cmNlL1dlYkNv
cmUvaHRtbC90cmFjay9UZXh0VHJhY2tMaXN0LmguIEhhbmRsZXMKKyAgICAgICAgZnVuY3Rpb25h
bGl0eSBjb21tb24gdG8gVGV4dFRyYWNrTGlzdCwgQXVkaW9UcmFja0xpc3QgYW5kIFZpZGVvVHJh
Y2tMaXN0LgorICAgICAgICAoV2ViQ29yZTo6VHJhY2tMaXN0QmFzZTo6c2NyaXB0RXhlY3V0aW9u
Q29udGV4dCk6IEFkZGVkLgorICAgICAgICAoV2ViQ29yZTo6VHJhY2tMaXN0QmFzZTo6Y2xlYXJP
d25lcik6IEFkZGVkLgorICAgICAgICAoV2ViQ29yZTo6VHJhY2tMaXN0QmFzZTo6b3duZXIpOiBB
ZGRlZC4KKyAgICAgICAgKFdlYkNvcmU6OlRyYWNrTGlzdEJhc2U6OmlzRmlyaW5nRXZlbnRMaXN0
ZW5lcnMpOiBBZGRlZC4KKyAgICAgICAgKiBwbGF0Zm9ybS9ncmFwaGljcy9NZWRpYVBsYXllci5j
cHA6CisgICAgICAgIChXZWJDb3JlOjpNZWRpYVBsYXllcjo6YWRkVGV4dFRyYWNrKTogUmVuYW1l
ZCAod2FzIGFkZFRyYWNrKQorICAgICAgICAoV2ViQ29yZTo6TWVkaWFQbGF5ZXI6OnJlbW92ZVRl
eHRUcmFjayk6IFJlbmFtZWQgKHdhcyByZW1vdmVUcmFjaykKKyAgICAgICAgKiBwbGF0Zm9ybS9n
cmFwaGljcy9NZWRpYVBsYXllci5oOgorICAgICAgICAoV2ViQ29yZTo6TWVkaWFQbGF5ZXJDbGll
bnQ6Om1lZGlhUGxheWVyRGlkQWRkVGV4dFRyYWNrKTogUmVuYW1lZCAod2FzIG1lZGlhUGxheWVy
RGlkQWRkVHJhY2spCisgICAgICAgIChXZWJDb3JlOjpNZWRpYVBsYXllckNsaWVudDo6bWVkaWFQ
bGF5ZXJEaWRSZW1vdmVUZXh0VHJhY2spOiBSZW5hbWVkICh3YXMgbWVkaWFQbGF5ZXJEaWRSZW1v
dmVUcmFjaykKKwogMjAxMy0wNC0xMiAgRXJpYyBDYXJsc29uICA8ZXJpYy5jYXJsc29uQGFwcGxl
LmNvbT4KIAogICAgICAgICBTdXBwb3J0ICJmb3JjZWQiIHN1YnRpdGxlcwpkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYkNvcmUvQ01ha2VMaXN0cy50eHQgYi9Tb3VyY2UvV2ViQ29yZS9DTWFrZUxpc3Rz
LnR4dAppbmRleCA1NjJiNDU2ZjkxY2VhNDc4NzQ0YWU1OWVhOTVkNDc2ODI3MzA4YjJmLi5jYWIy
NDAzNjdlYzJiNjM2MWI0MTFjNGJjY2MxY2FhNDJmOTM1M2NiIDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V2ViQ29yZS9DTWFrZUxpc3RzLnR4dAorKysgYi9Tb3VyY2UvV2ViQ29yZS9DTWFrZUxpc3RzLnR4
dApAQCAtNTQ5LDEyICs1NDksNiBAQCBzZXQoV2ViQ29yZV9JRExfRklMRVMKICAgICBodG1sL3No
YWRvdy9IVE1MQ29udGVudEVsZW1lbnQuaWRsCiAgICAgaHRtbC9zaGFkb3cvSFRNTFNoYWRvd0Vs
ZW1lbnQuaWRsCiAKLSAgICBodG1sL3RyYWNrL1RleHRUcmFjay5pZGwKLSAgICBodG1sL3RyYWNr
L1RleHRUcmFja0N1ZS5pZGwKLSAgICBodG1sL3RyYWNrL1RleHRUcmFja0N1ZUxpc3QuaWRsCi0g
ICAgaHRtbC90cmFjay9UZXh0VHJhY2tMaXN0LmlkbAotICAgIGh0bWwvdHJhY2svVHJhY2tFdmVu
dC5pZGwKLQogICAgIGluc3BlY3Rvci9JbmplY3RlZFNjcmlwdEhvc3QuaWRsCiAgICAgaW5zcGVj
dG9yL0luc3BlY3RvckZyb250ZW5kSG9zdC5pZGwKICAgICBpbnNwZWN0b3IvSmF2YVNjcmlwdENh
bGxGcmFtZS5pZGwKQEAgLTE1OTMsMTkgKzE1ODcsNiBAQCBzZXQoV2ViQ29yZV9TT1VSQ0VTCiAg
ICAgaHRtbC9zaGFkb3cvU3BpbkJ1dHRvbkVsZW1lbnQuY3BwCiAgICAgaHRtbC9zaGFkb3cvVGV4
dENvbnRyb2xJbm5lckVsZW1lbnRzLmNwcAogCi0gICAgaHRtbC90cmFjay9JbmJhbmRUZXh0VHJh
Y2suY3BwCi0gICAgaHRtbC90cmFjay9Mb2FkYWJsZVRleHRUcmFjay5jcHAKLSAgICBodG1sL3Ry
YWNrL1RleHRUcmFjay5jcHAKLSAgICBodG1sL3RyYWNrL1RleHRUcmFja0N1ZS5jcHAKLSAgICBo
dG1sL3RyYWNrL1RleHRUcmFja0N1ZUdlbmVyaWMuY3BwCi0gICAgaHRtbC90cmFjay9UZXh0VHJh
Y2tDdWVMaXN0LmNwcAotICAgIGh0bWwvdHJhY2svVGV4dFRyYWNrTGlzdC5jcHAKLSAgICBodG1s
L3RyYWNrL1RyYWNrQmFzZS5jcHAKLSAgICBodG1sL3RyYWNrL1RyYWNrRXZlbnQuY3BwCi0gICAg
aHRtbC90cmFjay9XZWJWVFRFbGVtZW50LmNwcAotICAgIGh0bWwvdHJhY2svV2ViVlRUUGFyc2Vy
LmNwcAotICAgIGh0bWwvdHJhY2svV2ViVlRUVG9rZW5pemVyLmNwcAotCiAgICAgaW5zcGVjdG9y
L0NvbnNvbGVNZXNzYWdlLmNwcAogICAgIGluc3BlY3Rvci9Db250ZW50U2VhcmNoVXRpbHMuY3Bw
CiAgICAgaW5zcGVjdG9yL0RPTUVkaXRvci5jcHAKQEAgLTE3MzksNyArMTcyMCw2IEBAIHNldChX
ZWJDb3JlX1NPVVJDRVMKICAgICBsb2FkZXIvY2FjaGUvQ2FjaGVkU2hhZGVyLmNwcAogICAgIGxv
YWRlci9jYWNoZS9DYWNoZWRTVkdEb2N1bWVudC5jcHAKICAgICBsb2FkZXIvY2FjaGUvQ2FjaGVk
U1ZHRG9jdW1lbnRSZWZlcmVuY2UuY3BwCi0gICAgbG9hZGVyL2NhY2hlL0NhY2hlZFRleHRUcmFj
ay5jcHAKICAgICBsb2FkZXIvY2FjaGUvQ2FjaGVkWFNMU3R5bGVTaGVldC5jcHAKICAgICBsb2Fk
ZXIvY2FjaGUvTWVtb3J5Q2FjaGUuY3BwCiAKQEAgLTI3MDQsNyArMjY4NCwzMSBAQCBpZiAoRU5B
QkxFX1dFQkdMKQogZW5kaWYgKCkKIAogaWYgKEVOQUJMRV9WSURFT19UUkFDSykKKyAgICBsaXN0
KEFQUEVORCBXZWJDb3JlX0lETF9GSUxFUworICAgICAgICBodG1sL3RyYWNrL1RleHRUcmFjay5p
ZGwKKyAgICAgICAgaHRtbC90cmFjay9UZXh0VHJhY2tDdWUuaWRsCisgICAgICAgIGh0bWwvdHJh
Y2svVGV4dFRyYWNrQ3VlTGlzdC5pZGwKKyAgICAgICAgaHRtbC90cmFjay9UZXh0VHJhY2tMaXN0
LmlkbAorICAgICAgICBodG1sL3RyYWNrL1RyYWNrRXZlbnQuaWRsCisgICAgKQorCiAgICAgbGlz
dChBUFBFTkQgV2ViQ29yZV9TT1VSQ0VTCisgICAgICAgIGh0bWwvdHJhY2svSW5iYW5kVGV4dFRy
YWNrLmNwcAorICAgICAgICBodG1sL3RyYWNrL0xvYWRhYmxlVGV4dFRyYWNrLmNwcAorICAgICAg
ICBodG1sL3RyYWNrL1RleHRUcmFjay5jcHAKKyAgICAgICAgaHRtbC90cmFjay9UZXh0VHJhY2tD
dWUuY3BwCisgICAgICAgIGh0bWwvdHJhY2svVGV4dFRyYWNrQ3VlR2VuZXJpYy5jcHAKKyAgICAg
ICAgaHRtbC90cmFjay9UZXh0VHJhY2tDdWVMaXN0LmNwcAorICAgICAgICBodG1sL3RyYWNrL1Rl
eHRUcmFja0xpc3QuY3BwCisgICAgICAgIGh0bWwvdHJhY2svVHJhY2tCYXNlLmNwcAorICAgICAg
ICBodG1sL3RyYWNrL1RyYWNrRXZlbnQuY3BwCisgICAgICAgIGh0bWwvdHJhY2svVHJhY2tMaXN0
QmFzZS5jcHAKKyAgICAgICAgaHRtbC90cmFjay9XZWJWVFRFbGVtZW50LmNwcAorICAgICAgICBo
dG1sL3RyYWNrL1dlYlZUVFBhcnNlci5jcHAKKyAgICAgICAgaHRtbC90cmFjay9XZWJWVFRUb2tl
bml6ZXIuY3BwCisKKyAgICAgICAgbG9hZGVyL2NhY2hlL0NhY2hlZFRleHRUcmFjay5jcHAKKwog
ICAgICAgICBwbGF0Zm9ybS9ncmFwaGljcy9UZXh0VHJhY2tSZXByZXNlbnRhdGlvbi5jcHAKICAg
ICApCiBlbmRpZiAoKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvVGFyZ2V0LnByaSBiL1Nv
dXJjZS9XZWJDb3JlL1RhcmdldC5wcmkKaW5kZXggMjZiZWVkNGEwNDJjODFlMTExZmNmNTk5NGZl
NjAzZDRiZmYwOTEzZS4uMGE1M2M5OGQzMTY0ZmNkN2M3OTI3N2FiMjliZjZmMzVlMmQyYjY1MiAx
MDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvVGFyZ2V0LnByaQorKysgYi9Tb3VyY2UvV2ViQ29y
ZS9UYXJnZXQucHJpCkBAIC0zOTc4LDYgKzM5NzgsNyBAQCBlbmFibGU/KFZJREVPX1RSQUNLKSB7
CiAgICAgICAgIGh0bWwvdHJhY2svVGV4dFRyYWNrTGlzdC5oIFwKICAgICAgICAgaHRtbC90cmFj
ay9UcmFja0Jhc2UuaCBcCiAgICAgICAgIGh0bWwvdHJhY2svVHJhY2tFdmVudC5oIFwKKyAgICAg
ICAgaHRtbC90cmFjay9UcmFja0xpc3RCYXNlLmggXAogICAgICAgICBodG1sL3RyYWNrL1dlYlZU
VFBhcnNlci5oIFwKICAgICAgICAgaHRtbC90cmFjay9XZWJWVFRUb2tlbi5oIFwKICAgICAgICAg
aHRtbC90cmFjay9XZWJWVFRUb2tlbml6ZXIuaCBcCkBAIC00MDAxLDYgKzQwMDIsNyBAQCBlbmFi
bGU/KFZJREVPX1RSQUNLKSB7CiAgICAgICAgIGh0bWwvdHJhY2svVGV4dFRyYWNrTGlzdC5jcHAg
XAogICAgICAgICBodG1sL3RyYWNrL1RyYWNrQmFzZS5jcHAgXAogICAgICAgICBodG1sL3RyYWNr
L1RyYWNrRXZlbnQuY3BwIFwKKyAgICAgICAgaHRtbC90cmFjay9UcmFja0xpc3RCYXNlLmNwcCBc
CiAgICAgICAgIGh0bWwvdHJhY2svV2ViVlRURWxlbWVudC5jcHAgXAogICAgICAgICBodG1sL3Ry
YWNrL1dlYlZUVFBhcnNlci5jcHAgXAogICAgICAgICBodG1sL3RyYWNrL1dlYlZUVFRva2VuaXpl
ci5jcHAgXApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvV2ViQ29yZS52Y3Byb2ovV2ViQ29y
ZS52Y3Byb2ogYi9Tb3VyY2UvV2ViQ29yZS9XZWJDb3JlLnZjcHJvai9XZWJDb3JlLnZjcHJvagpp
bmRleCBlZGExZjYwYzMwNTUwMGI3OTRjNWRkMTM0YTYwMjM5YWQ2ZjU0NDVkLi5lMGNkMDliMWZi
NDA5MTBlMjJlZDQ5ZDQxZjliZWUxMjNmNGE4OGZlIDEwMDc1NQotLS0gYS9Tb3VyY2UvV2ViQ29y
ZS9XZWJDb3JlLnZjcHJvai9XZWJDb3JlLnZjcHJvagorKysgYi9Tb3VyY2UvV2ViQ29yZS9XZWJD
b3JlLnZjcHJvai9XZWJDb3JlLnZjcHJvagpAQCAtMzAyMzAsNiArMzAyMzAsMTAgQEAKIAkJCQkJ
PgogCQkJCTwvRmlsZT4KIAkJCQk8RmlsZQorCQkJCQlSZWxhdGl2ZVBhdGg9Ii4uXHBsYXRmb3Jt
XGdyYXBoaWNzXEluYmFuZFRleHRUcmFja1ByaXZhdGUuaCIKKwkJCQkJPgorCQkJCTwvRmlsZT4K
KwkJCQk8RmlsZQogCQkJCQlSZWxhdGl2ZVBhdGg9Ii4uXHBsYXRmb3JtXGdyYXBoaWNzXEludFBv
aW50LmgiCiAJCQkJCT4KIAkJCQk8L0ZpbGU+CkBAIC02NTc1MCwxMCArNjU3NTQsNiBAQAogCQkJ
CQk+CiAJCQkJPC9GaWxlPgogCQkJCTxGaWxlCi0JCQkJCVJlbGF0aXZlUGF0aD0iLi5caHRtbFx0
cmFja1xJbmJhbmRUZXh0VHJhY2tQcml2YXRlLmgiCi0JCQkJCT4KLQkJCQk8L0ZpbGU+Ci0JCQkJ
PEZpbGUKIAkJCQkJUmVsYXRpdmVQYXRoPSIuLlxodG1sXHRyYWNrXExvYWRhYmxlVGV4dFRyYWNr
LmNwcCIKIAkJCQkJPgogCQkJCTwvRmlsZT4KQEAgLTY1ODE4LDYgKzY1ODE4LDE0IEBACiAJCQkJ
CT4KIAkJCQk8L0ZpbGU+CiAJCQkJPEZpbGUKKwkJCQkJUmVsYXRpdmVQYXRoPSIuLlxodG1sXHRy
YWNrXFRyYWNrTGlzdEJhc2UuY3BwIgorCQkJCQk+CisJCQkJPC9GaWxlPgorCQkJCTxGaWxlCisJ
CQkJCVJlbGF0aXZlUGF0aD0iLi5caHRtbFx0cmFja1xUcmFja0xpc3RCYXNlLmgiCisJCQkJCT4K
KwkJCQk8L0ZpbGU+CisJCQkJPEZpbGUKIAkJCQkJUmVsYXRpdmVQYXRoPSIuLlxodG1sXHRyYWNr
XFdlYlZUVEVsZW1lbnQuY3BwIgogCQkJCQk+CiAJCQkJPC9GaWxlPgpkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYkNvcmUvV2ViQ29yZS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qIGIvU291cmNlL1dl
YkNvcmUvV2ViQ29yZS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qCmluZGV4IDcwNDg5NjIzMWU0
Nzk1OWQzYzMwNDFjYTM4ZjFkMjEyYjZiODBjOTAuLmZjMTc1Mjk1ODIyOGZiMDZiOGUyZWE4MDYy
N2UxNWM0ODIzNGE1ZDMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUueGNvZGVw
cm9qL3Byb2plY3QucGJ4cHJvagorKysgYi9Tb3VyY2UvV2ViQ29yZS9XZWJDb3JlLnhjb2RlcHJv
ai9wcm9qZWN0LnBieHByb2oKQEAgLTUxMTEsNiArNTExMSw4IEBACiAJCUJDRkUyRjEyMEMxQjU4
MzgwMDIwMjM1RiAvKiBKU1JlY3QuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmls
ZTsgZmlsZVJlZiA9IEJDRkUyRjEwMEMxQjU4MzcwMDIwMjM1RiAvKiBKU1JlY3QuaCAqLzsgfTsK
IAkJQkNGRjY0OTEwRUFEMTVDMjAwQzFENkY3IC8qIExlbmd0aEJveC5oIGluIEhlYWRlcnMgKi8g
PSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQkNGRjY0OEYwRUFEMTVDMjAwQzFENkY3
IC8qIExlbmd0aEJveC5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7
IH07IH07CiAJCUJDRkY2NDkyMEVBRDE1QzIwMEMxRDZGNyAvKiBMZW5ndGhTaXplLmggaW4gSGVh
ZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBCQ0ZGNjQ5MDBFQUQxNUMy
MDBDMUQ2RjcgLyogTGVuZ3RoU2l6ZS5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFBy
aXZhdGUsICk7IH07IH07CisJCUJFODhFMEMxMTcxNUNFMjYwMDY1OEQ5OCAvKiBUcmFja0xpc3RC
YXNlLmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEJF
ODhFMEJGMTcxNUNFMjYwMDY1OEQ5OCAvKiBUcmFja0xpc3RCYXNlLmNwcCAqLzsgfTsKKwkJQkU4
OEUwQzIxNzE1Q0UyNjAwNjU4RDk4IC8qIFRyYWNrTGlzdEJhc2UuaCBpbiBIZWFkZXJzICovID0g
e2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEJFODhFMEMwMTcxNUNFMjYwMDY1OEQ5OCAv
KiBUcmFja0xpc3RCYXNlLmggKi87IH07CiAJCUMwNDZFMUFDMTIwOEE5RkUwMEJBMkNGNyAvKiBM
b2NhbGl6ZWRTdHJpbmdzLmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsg
ZmlsZVJlZiA9IEMwNDZFMUFCMTIwOEE5RkUwMEJBMkNGNyAvKiBMb2NhbGl6ZWRTdHJpbmdzLmNw
cCAqLzsgfTsKIAkJQzBDMDU0Q0IxMTE4QzhFNDAwQ0UyNjM2IC8qIENvZGVHZW5lcmF0b3IucG0g
aW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA5M0Y4QjMwNTBB
MzAwRkUxMDBGNjFBQjggLyogQ29kZUdlbmVyYXRvci5wbSAqLzsgc2V0dGluZ3MgPSB7QVRUUklC
VVRFUyA9IChQcml2YXRlLCApOyB9OyB9OwogCQlDMEMwNTRDQzExMThDOEU0MDBDRTI2MzYgLyog
Z2VuZXJhdGUtYmluZGluZ3MucGwgaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7
IGZpbGVSZWYgPSA5M0Y4QjMwNzBBMzAwRkVBMDBGNjFBQjggLyogZ2VuZXJhdGUtYmluZGluZ3Mu
cGwgKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKQEAgLTEx
ODM4LDYgKzExODQwLDggQEAKIAkJQkNGRjY0OTAwRUFEMTVDMjAwQzFENkY3IC8qIExlbmd0aFNp
emUuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0
S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gTGVuZ3RoU2l6ZS5oOyBzb3Vy
Y2VUcmVlID0gIjxncm91cD4iOyB9OwogCQlCRTg1NUY3RjA3MDFFODM1MDAyMzk3NjkgLyogV2Vi
Q29yZVZpZXcuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSAz
MDsgaW5kZW50V2lkdGggPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBw
YXRoID0gV2ViQ29yZVZpZXcuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgdGFiV2lkdGggPSA4
OyB1c2VzVGFicyA9IDA7IH07CiAJCUJFODU2MDUxMDcwMUY5MTEwMDIzOTc2OSAvKiBXZWJDb3Jl
Vmlldy5tICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDMwOyBp
bmRlbnRXaWR0aCA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLm9iamM7IHBh
dGggPSBXZWJDb3JlVmlldy5tOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB0YWJXaWR0aCA9IDg7
IHVzZXNUYWJzID0gMDsgfTsKKwkJQkU4OEUwQkYxNzE1Q0UyNjAwNjU4RDk4IC8qIFRyYWNrTGlz
dEJhc2UuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7
IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gVHJhY2tMaXN0
QmFzZS5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUJFODhFMEMwMTcxNUNFMjYw
MDY1OEQ5OCAvKiBUcmFja0xpc3RCYXNlLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsg
ZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0
aCA9IFRyYWNrTGlzdEJhc2UuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJQkU5MUZD
OEIwNjEzMzY2NjAwNUUzNzkwIC8qIFBvc2l0aW9uLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVy
ZW5jZTsgZmlsZUVuY29kaW5nID0gMzA7IGluZGVudFdpZHRoID0gNDsgbGFzdEtub3duRmlsZVR5
cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFBvc2l0aW9uLmg7IHNvdXJjZVRyZWUgPSAiPGdy
b3VwPiI7IHRhYldpZHRoID0gODsgdXNlc1RhYnMgPSAwOyB9OwogCQlCRTkxRkM4QzA2MTMzNjY2
MDA1RTM3OTAgLyogUG9zaXRpb24uY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZp
bGVFbmNvZGluZyA9IDMwOyBpbmRlbnRXaWR0aCA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291
cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gUG9zaXRpb24uY3BwOyBzb3VyY2VUcmVlID0gIjxncm91
cD4iOyB0YWJXaWR0aCA9IDg7IHVzZXNUYWJzID0gMDsgfTsKIAkJQkU5ODNEOTUwNTJBMkUwQTAw
ODkyRDg1IC8qIFdlYkNvcmVLZXlib2FyZFVJTW9kZS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZl
cmVuY2U7IGZpbGVFbmNvZGluZyA9IDMwOyBpbmRlbnRXaWR0aCA9IDQ7IGxhc3RLbm93bkZpbGVU
eXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBXZWJDb3JlS2V5Ym9hcmRVSU1vZGUuaDsgc291
cmNlVHJlZSA9ICI8Z3JvdXA+IjsgdGFiV2lkdGggPSA4OyB1c2VzVGFicyA9IDA7IH07CkBAIC0x
NzY4MSw2ICsxNzY4NSw4IEBACiAJCUIxQUQ0RTc3MTNBMTJBNzIwMDg0NkIyNyAvKiB0cmFjayAq
LyA9IHsKIAkJCWlzYSA9IFBCWEdyb3VwOwogCQkJY2hpbGRyZW4gPSAoCisJCQkJQkU4OEUwQkYx
NzE1Q0UyNjAwNjU4RDk4IC8qIFRyYWNrTGlzdEJhc2UuY3BwICovLAorCQkJCUJFODhFMEMwMTcx
NUNFMjYwMDY1OEQ5OCAvKiBUcmFja0xpc3RCYXNlLmggKi8sCiAJCQkJMDc5NDE3OEYxNjZFODU1
RjAwOTQxNkMyIC8qIEluYmFuZFRleHRUcmFjay5jcHAgKi8sCiAJCQkJMDc5NDE3OTAxNjZFODU1
RjAwOTQxNkMyIC8qIEluYmFuZFRleHRUcmFjay5oICovLAogCQkJCTk3NTlFOTM0MTRFRjFDRjgw
MDI2QTJERCAvKiBMb2FkYWJsZVRleHRUcmFjay5jcHAgKi8sCkBAIC0yNDA2MCw2ICsyNDA2Niw3
IEBACiAJCQkJRTE4MDgxMTcxNkZDRjlDQjAwQjgwRDA3IC8qIFN5bmNocm9ub3VzTG9hZGVyQ2xp
ZW50LmggaW4gSGVhZGVycyAqLywKIAkJCQlFMTUyNTUxNTE2RkQyMzUwMDAzRDdBREIgLyogV2Vi
Q29yZVJlc291cmNlSGFuZGxlQXNPcGVyYXRpb25RdWV1ZURlbGVnYXRlLmggaW4gSGVhZGVycyAq
LywKIAkJCQlFMUI1MzM0OTE3MTdERUUzMDBGMjA1RjkgLyogQ2FjaGVkUmF3UmVzb3VyY2VDbGll
bnQuaCBpbiBIZWFkZXJzICovLAorCQkJCUJFODhFMEMyMTcxNUNFMjYwMDY1OEQ5OCAvKiBUcmFj
a0xpc3RCYXNlLmggaW4gSGVhZGVycyAqLywKIAkJCSk7CiAJCQlydW5Pbmx5Rm9yRGVwbG95bWVu
dFBvc3Rwcm9jZXNzaW5nID0gMDsKIAkJfTsKQEAgLTI3MDA2LDYgKzI3MDEzLDcgQEAKIAkJCQlF
MTgwODExNjE2RkNGOUNCMDBCODBEMDcgLyogU3luY2hyb25vdXNMb2FkZXJDbGllbnQubW0gaW4g
U291cmNlcyAqLywKIAkJCQlFMTUyNTUxNjE2RkQyMzUwMDAzRDdBREIgLyogV2ViQ29yZVJlc291
cmNlSGFuZGxlQXNPcGVyYXRpb25RdWV1ZURlbGVnYXRlLm1tIGluIFNvdXJjZXMgKi8sCiAJCQkJ
RTFCNTMzNDcxNzE3RDBBMTAwRjIwNUY5IC8qIENhY2hlZFNWR0RvY3VtZW50UmVmZXJlbmNlLmNw
cCBpbiBTb3VyY2VzICovLAorCQkJCUJFODhFMEMxMTcxNUNFMjYwMDY1OEQ5OCAvKiBUcmFja0xp
c3RCYXNlLmNwcCBpbiBTb3VyY2VzICovLAogCQkJKTsKIAkJCXJ1bk9ubHlGb3JEZXBsb3ltZW50
UG9zdHByb2Nlc3NpbmcgPSAwOwogCQl9OwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvaHRt
bC9IVE1MTWVkaWFFbGVtZW50LmNwcCBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTE1lZGlhRWxl
bWVudC5jcHAKaW5kZXggYTdiNTFhNjc0ZGVjNTBkYjUyZjFkZWYxYmQyNDk3ZGJhYjYzMjRiNC4u
YjhiZTg0ZjFhZTcwOGJhNzhmZWI1OWVkNWEyNzU1NDI5ZjI5Mjk5ZSAxMDA2NDQKLS0tIGEvU291
cmNlL1dlYkNvcmUvaHRtbC9IVE1MTWVkaWFFbGVtZW50LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29y
ZS9odG1sL0hUTUxNZWRpYUVsZW1lbnQuY3BwCkBAIC0yNzkyLDcgKzI3OTIsNyBAQCBkb3VibGUg
SFRNTE1lZGlhRWxlbWVudDo6cGVyY2VudExvYWRlZCgpIGNvbnN0CiAKICNpZiBFTkFCTEUoVklE
RU9fVFJBQ0spCiAKLXZvaWQgSFRNTE1lZGlhRWxlbWVudDo6bWVkaWFQbGF5ZXJEaWRBZGRUcmFj
ayhQYXNzUmVmUHRyPEluYmFuZFRleHRUcmFja1ByaXZhdGU+IHBycFRyYWNrKQordm9pZCBIVE1M
TWVkaWFFbGVtZW50OjptZWRpYVBsYXllckRpZEFkZFRleHRUcmFjayhQYXNzUmVmUHRyPEluYmFu
ZFRleHRUcmFja1ByaXZhdGU+IHBycFRyYWNrKQogewogICAgIGlmICghUnVudGltZUVuYWJsZWRG
ZWF0dXJlczo6d2Via2l0VmlkZW9UcmFja0VuYWJsZWQoKSkKICAgICAgICAgcmV0dXJuOwpAQCAt
MjgyNCwxMCArMjgyNCwxMCBAQCB2b2lkIEhUTUxNZWRpYUVsZW1lbnQ6Om1lZGlhUGxheWVyRGlk
QWRkVHJhY2soUGFzc1JlZlB0cjxJbmJhbmRUZXh0VHJhY2tQcml2YXRlPgogICAgIC8vIDkuIEZp
cmUgYW4gZXZlbnQgd2l0aCB0aGUgbmFtZSBhZGR0cmFjaywgdGhhdCBkb2VzIG5vdCBidWJibGUg
YW5kIGlzIG5vdCBjYW5jZWxhYmxlLCBhbmQgdGhhdCB1c2VzIHRoZSBUcmFja0V2ZW50CiAgICAg
Ly8gaW50ZXJmYWNlLCB3aXRoIHRoZSB0cmFjayBhdHRyaWJ1dGUgaW5pdGlhbGl6ZWQgdG8gdGhl
IHRleHQgdHJhY2sncyBUZXh0VHJhY2sgb2JqZWN0LCBhdCB0aGUgbWVkaWEgZWxlbWVudCdzCiAg
ICAgLy8gdGV4dFRyYWNrcyBhdHRyaWJ1dGUncyBUZXh0VHJhY2tMaXN0IG9iamVjdC4KLSAgICBh
ZGRUcmFjayh0ZXh0VHJhY2suZ2V0KCkpOworICAgIGFkZFRleHRUcmFjayh0ZXh0VHJhY2suZ2V0
KCkpOwogfQogCi12b2lkIEhUTUxNZWRpYUVsZW1lbnQ6Om1lZGlhUGxheWVyRGlkUmVtb3ZlVHJh
Y2soUGFzc1JlZlB0cjxJbmJhbmRUZXh0VHJhY2tQcml2YXRlPiBwcnBUcmFjaykKK3ZvaWQgSFRN
TE1lZGlhRWxlbWVudDo6bWVkaWFQbGF5ZXJEaWRSZW1vdmVUZXh0VHJhY2soUGFzc1JlZlB0cjxJ
bmJhbmRUZXh0VHJhY2tQcml2YXRlPiBwcnBUcmFjaykKIHsKICAgICBpZiAoIVJ1bnRpbWVFbmFi
bGVkRmVhdHVyZXM6OndlYmtpdFZpZGVvVHJhY2tFbmFibGVkKCkpCiAgICAgICAgIHJldHVybjsK
QEAgLTI4MzYsMTIgKzI4MzYsMTIgQEAgdm9pZCBIVE1MTWVkaWFFbGVtZW50OjptZWRpYVBsYXll
ckRpZFJlbW92ZVRyYWNrKFBhc3NSZWZQdHI8SW5iYW5kVGV4dFRyYWNrUHJpdmEKICAgICAgICAg
cmV0dXJuOwogCiAgICAgLy8gVGhpcyBjYXN0IGlzIHNhZmUgYmVjYXVzZSB3ZSBjcmVhdGVkIHRo
ZSBJbmJhbmRUZXh0VHJhY2sgd2l0aCB0aGUgSW5iYW5kVGV4dFRyYWNrUHJpdmF0ZQotICAgIC8v
IHBhc3NlZCB0byBtZWRpYVBsYXllckRpZEFkZFRyYWNrLgorICAgIC8vIHBhc3NlZCB0byBtZWRp
YVBsYXllckRpZEFkZFRleHRUcmFjay4KICAgICBSZWZQdHI8SW5iYW5kVGV4dFRyYWNrPiB0ZXh0
VHJhY2sgPSBzdGF0aWNfY2FzdDxJbmJhbmRUZXh0VHJhY2sqPihwcnBUcmFjay0+Y2xpZW50KCkp
OwogICAgIGlmICghdGV4dFRyYWNrKQogICAgICAgICByZXR1cm47CiAKLSAgICByZW1vdmVUcmFj
ayh0ZXh0VHJhY2suZ2V0KCkpOworICAgIHJlbW92ZVRleHRUcmFjayh0ZXh0VHJhY2suZ2V0KCkp
OwogfQogCiAjaWYgVVNFKFBMQVRGT1JNX1RFWFRfVFJBQ0tfTUVOVSkKQEAgLTI5MjAsMTQgKzI5
MjAsMTQgQEAgdm9pZCBIVE1MTWVkaWFFbGVtZW50OjpjbG9zZUNhcHRpb25UcmFja3NDaGFuZ2Vk
KCkKICNlbmRpZgogfQogCi12b2lkIEhUTUxNZWRpYUVsZW1lbnQ6OmFkZFRyYWNrKFRleHRUcmFj
ayogdHJhY2spCit2b2lkIEhUTUxNZWRpYUVsZW1lbnQ6OmFkZFRleHRUcmFjayhUZXh0VHJhY2sq
IHRyYWNrKQogewogICAgIHRleHRUcmFja3MoKS0+YXBwZW5kKHRyYWNrKTsKICAgICAKICAgICBj
bG9zZUNhcHRpb25UcmFja3NDaGFuZ2VkKCk7CiB9CiAKLXZvaWQgSFRNTE1lZGlhRWxlbWVudDo6
cmVtb3ZlVHJhY2soVGV4dFRyYWNrKiB0cmFjaykKK3ZvaWQgSFRNTE1lZGlhRWxlbWVudDo6cmVt
b3ZlVGV4dFRyYWNrKFRleHRUcmFjayogdHJhY2spCiB7CiAgICAgVHJhY2tEaXNwbGF5VXBkYXRl
U2NvcGUgc2NvcGUodGhpcyk7CiAgICAgVGV4dFRyYWNrQ3VlTGlzdCogY3VlcyA9IHRyYWNrLT5j
dWVzKCk7CkBAIC0yOTQ4LDcgKzI5NDgsNyBAQCB2b2lkIEhUTUxNZWRpYUVsZW1lbnQ6OnJlbW92
ZUFsbEluYmFuZFRyYWNrcygpCiAgICAgICAgIFRleHRUcmFjayogdHJhY2sgPSBtX3RleHRUcmFj
a3MtPml0ZW0oaSk7CiAKICAgICAgICAgaWYgKHRyYWNrLT50cmFja1R5cGUoKSA9PSBUZXh0VHJh
Y2s6OkluQmFuZCkKLSAgICAgICAgICAgIHJlbW92ZVRyYWNrKHRyYWNrKTsKKyAgICAgICAgICAg
IHJlbW92ZVRleHRUcmFjayh0cmFjayk7CiAgICAgfQogfQogCkBAIC0yOTc4LDcgKzI5NzgsNyBA
QCBQYXNzUmVmUHRyPFRleHRUcmFjaz4gSFRNTE1lZGlhRWxlbWVudDo6YWRkVGV4dFRyYWNrKGNv
bnN0IFN0cmluZyYga2luZCwgY29uc3QgUwogICAgIC8vIGZpcnN0IGFwcGVuZCB0aGUgdHJhY2sg
dG8gdGhlIHRleHQgdHJhY2sgbGlzdC4KIAogICAgIC8vIDYuIEFkZCB0aGUgbmV3IHRleHQgdHJh
Y2sgdG8gdGhlIG1lZGlhIGVsZW1lbnQncyBsaXN0IG9mIHRleHQgdHJhY2tzLgotICAgIGFkZFRy
YWNrKHRleHRUcmFjay5nZXQoKSk7CisgICAgYWRkVGV4dFRyYWNrKHRleHRUcmFjay5nZXQoKSk7
CiAKICAgICAvLyAuLi4gaXRzIHRleHQgdHJhY2sgcmVhZGluZXNzIHN0YXRlIHRvIHRoZSB0ZXh0
IHRyYWNrIGxvYWRlZCBzdGF0ZSAuLi4KICAgICB0ZXh0VHJhY2stPnNldFJlYWRpbmVzc1N0YXRl
KFRleHRUcmFjazo6TG9hZGVkKTsKQEAgLTMwMDAsNyArMzAwMCw3IEBAIFRleHRUcmFja0xpc3Qq
IEhUTUxNZWRpYUVsZW1lbnQ6OnRleHRUcmFja3MoKQogICAgIHJldHVybiBtX3RleHRUcmFja3Mu
Z2V0KCk7CiB9CiAKLXZvaWQgSFRNTE1lZGlhRWxlbWVudDo6ZGlkQWRkVHJhY2soSFRNTFRyYWNr
RWxlbWVudCogdHJhY2tFbGVtZW50KQordm9pZCBIVE1MTWVkaWFFbGVtZW50OjpkaWRBZGRUZXh0
VHJhY2soSFRNTFRyYWNrRWxlbWVudCogdHJhY2tFbGVtZW50KQogewogICAgIEFTU0VSVCh0cmFj
a0VsZW1lbnQtPmhhc1RhZ05hbWUodHJhY2tUYWcpKTsKIApAQCAtMzAxNSw3ICszMDE1LDcgQEAg
dm9pZCBIVE1MTWVkaWFFbGVtZW50OjpkaWRBZGRUcmFjayhIVE1MVHJhY2tFbGVtZW50KiB0cmFj
a0VsZW1lbnQpCiAgICAgaWYgKCF0ZXh0VHJhY2spCiAgICAgICAgIHJldHVybjsKICAgICAKLSAg
ICBhZGRUcmFjayh0ZXh0VHJhY2suZ2V0KCkpOworICAgIGFkZFRleHRUcmFjayh0ZXh0VHJhY2su
Z2V0KCkpOwogICAgIAogICAgIC8vIERvIG5vdCBzY2hlZHVsZSB0aGUgdHJhY2sgbG9hZGluZyB1
bnRpbCBwYXJzaW5nIGZpbmlzaGVzIHNvIHdlIGRvbid0IHN0YXJ0IGJlZm9yZSBhbGwgdHJhY2tz
CiAgICAgLy8gaW4gdGhlIG1hcmt1cCBoYXZlIGJlZW4gYWRkZWQuCkBAIC0zMDI2LDcgKzMwMjYs
NyBAQCB2b2lkIEhUTUxNZWRpYUVsZW1lbnQ6OmRpZEFkZFRyYWNrKEhUTUxUcmFja0VsZW1lbnQq
IHRyYWNrRWxlbWVudCkKICAgICAgICAgbWVkaWFDb250cm9scygpLT5jbG9zZWRDYXB0aW9uVHJh
Y2tzQ2hhbmdlZCgpOwogfQogCi12b2lkIEhUTUxNZWRpYUVsZW1lbnQ6OmRpZFJlbW92ZVRyYWNr
KEhUTUxUcmFja0VsZW1lbnQqIHRyYWNrRWxlbWVudCkKK3ZvaWQgSFRNTE1lZGlhRWxlbWVudDo6
ZGlkUmVtb3ZlVGV4dFRyYWNrKEhUTUxUcmFja0VsZW1lbnQqIHRyYWNrRWxlbWVudCkKIHsKICAg
ICBBU1NFUlQodHJhY2tFbGVtZW50LT5oYXNUYWdOYW1lKHRyYWNrVGFnKSk7CiAKQEAgLTMwNTMs
NyArMzA1Myw3IEBAIHZvaWQgSFRNTE1lZGlhRWxlbWVudDo6ZGlkUmVtb3ZlVHJhY2soSFRNTFRy
YWNrRWxlbWVudCogdHJhY2tFbGVtZW50KQogICAgIC8vIFdoZW4gYSB0cmFjayBlbGVtZW50J3Mg
cGFyZW50IGVsZW1lbnQgY2hhbmdlcyBhbmQgdGhlIG9sZCBwYXJlbnQgd2FzIGEgbWVkaWEgZWxl
bWVudCwgCiAgICAgLy8gdGhlbiB0aGUgdXNlciBhZ2VudCBtdXN0IHJlbW92ZSB0aGUgdHJhY2sg
ZWxlbWVudCdzIGNvcnJlc3BvbmRpbmcgdGV4dCB0cmFjayBmcm9tIHRoZSAKICAgICAvLyBtZWRp
YSBlbGVtZW50J3MgbGlzdCBvZiB0ZXh0IHRyYWNrcy4KLSAgICByZW1vdmVUcmFjayh0ZXh0VHJh
Y2suZ2V0KCkpOworICAgIHJlbW92ZVRleHRUcmFjayh0ZXh0VHJhY2suZ2V0KCkpOwogCiAgICAg
c2l6ZV90IGluZGV4ID0gbV90ZXh0VHJhY2tzV2hlblJlc291cmNlU2VsZWN0aW9uQmVnYW4uZmlu
ZCh0ZXh0VHJhY2suZ2V0KCkpOwogICAgIGlmIChpbmRleCAhPSBub3RGb3VuZCkKZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTE1lZGlhRWxlbWVudC5oIGIvU291cmNlL1dlYkNv
cmUvaHRtbC9IVE1MTWVkaWFFbGVtZW50LmgKaW5kZXggOGU1M2U2ZjA5Y2YyNWI4YTkxZDFjMzVh
NWQyZTk1MjU1MDQyYTRhYS4uZDA4NWU5ZGZiODg2MDQwN2VhZDkxOTFlYzI3Y2FiNGQ5MmI5NzY2
MyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MTWVkaWFFbGVtZW50LmgKKysr
IGIvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MTWVkaWFFbGVtZW50LmgKQEAgLTU4LDcgKzU4LDYg
QEAgY2xhc3MgTWVkaWFDb250cm9sbGVyOwogY2xhc3MgTWVkaWFDb250cm9sczsKIGNsYXNzIE1l
ZGlhRXJyb3I7CiBjbGFzcyBLVVJMOwotY2xhc3MgVGV4dFRyYWNrTGlzdDsKIGNsYXNzIFRpbWVS
YW5nZXM7CiAjaWYgRU5BQkxFKFBMVUdJTl9QUk9YWV9GT1JfVklERU8pCiBjbGFzcyBXaWRnZXQ7
CkBAIC03Miw2ICs3MSw3IEBAIGNsYXNzIE1lZGlhS2V5czsKIAogI2lmIEVOQUJMRShWSURFT19U
UkFDSykKIGNsYXNzIEluYmFuZFRleHRUcmFja1ByaXZhdGU7CitjbGFzcyBUZXh0VHJhY2tMaXN0
OwogCiB0eXBlZGVmIFBPREludGVydmFsVHJlZTxkb3VibGUsIFRleHRUcmFja0N1ZSo+IEN1ZUlu
dGVydmFsVHJlZTsKIHR5cGVkZWYgQ3VlSW50ZXJ2YWxUcmVlOjpJbnRlcnZhbFR5cGUgQ3VlSW50
ZXJ2YWw7CkBAIC0yMjksMTcgKzIyOSwxNyBAQCBwdWJsaWM6CiAgICAgVGV4dFRyYWNrTGlzdCog
dGV4dFRyYWNrcygpOwogICAgIEN1ZUxpc3QgY3VycmVudGx5QWN0aXZlQ3VlcygpIGNvbnN0IHsg
cmV0dXJuIG1fY3VycmVudGx5QWN0aXZlQ3VlczsgfQogCi0gICAgdm9pZCBhZGRUcmFjayhUZXh0
VHJhY2sqKTsKLSAgICB2b2lkIHJlbW92ZVRyYWNrKFRleHRUcmFjayopOworICAgIHZvaWQgYWRk
VGV4dFRyYWNrKFRleHRUcmFjayopOworICAgIHZvaWQgcmVtb3ZlVGV4dFRyYWNrKFRleHRUcmFj
ayopOwogICAgIHZvaWQgcmVtb3ZlQWxsSW5iYW5kVHJhY2tzKCk7CiAgICAgdm9pZCBjbG9zZUNh
cHRpb25UcmFja3NDaGFuZ2VkKCk7CiAgICAgdm9pZCBub3RpZnlNZWRpYVBsYXllck9mVGV4dFRy
YWNrQ2hhbmdlcygpOwogCi0gICAgdmlydHVhbCB2b2lkIGRpZEFkZFRyYWNrKEhUTUxUcmFja0Vs
ZW1lbnQqKTsKLSAgICB2aXJ0dWFsIHZvaWQgZGlkUmVtb3ZlVHJhY2soSFRNTFRyYWNrRWxlbWVu
dCopOworICAgIHZpcnR1YWwgdm9pZCBkaWRBZGRUZXh0VHJhY2soSFRNTFRyYWNrRWxlbWVudCop
OworICAgIHZpcnR1YWwgdm9pZCBkaWRSZW1vdmVUZXh0VHJhY2soSFRNTFRyYWNrRWxlbWVudCop
OwogCi0gICAgdmlydHVhbCB2b2lkIG1lZGlhUGxheWVyRGlkQWRkVHJhY2soUGFzc1JlZlB0cjxJ
bmJhbmRUZXh0VHJhY2tQcml2YXRlPikgT1ZFUlJJREU7Ci0gICAgdmlydHVhbCB2b2lkIG1lZGlh
UGxheWVyRGlkUmVtb3ZlVHJhY2soUGFzc1JlZlB0cjxJbmJhbmRUZXh0VHJhY2tQcml2YXRlPikg
T1ZFUlJJREU7CisgICAgdmlydHVhbCB2b2lkIG1lZGlhUGxheWVyRGlkQWRkVGV4dFRyYWNrKFBh
c3NSZWZQdHI8SW5iYW5kVGV4dFRyYWNrUHJpdmF0ZT4pIE9WRVJSSURFOworICAgIHZpcnR1YWwg
dm9pZCBtZWRpYVBsYXllckRpZFJlbW92ZVRleHRUcmFjayhQYXNzUmVmUHRyPEluYmFuZFRleHRU
cmFja1ByaXZhdGU+KSBPVkVSUklERTsKIAogI2lmIFVTRShQTEFURk9STV9URVhUX1RSQUNLX01F
TlUpCiAgICAgdmlydHVhbCB2b2lkIHNldFNlbGVjdGVkVGV4dFRyYWNrKFBhc3NSZWZQdHI8UGxh
dGZvcm1UZXh0VHJhY2s+KSBPVkVSUklERTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2h0
bWwvSFRNTFRyYWNrRWxlbWVudC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxUcmFja0Vs
ZW1lbnQuY3BwCmluZGV4IGZiYmIzZTg1ZTBkYTY3ODAxMWFmODRlZmM5YTU3OTljNjNmNDYzZDQu
LjAxMDU4NTVmY2YyNTcxOTc0OWM1MTYwOGI0NjQ5MmEyMDFhYzEzMDIgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9XZWJDb3JlL2h0bWwvSFRNTFRyYWNrRWxlbWVudC5jcHAKKysrIGIvU291cmNlL1dlYkNv
cmUvaHRtbC9IVE1MVHJhY2tFbGVtZW50LmNwcApAQCAtODAsMTQgKzgwLDE0IEBAIE5vZGU6Oklu
c2VydGlvbk5vdGlmaWNhdGlvblJlcXVlc3QgSFRNTFRyYWNrRWxlbWVudDo6aW5zZXJ0ZWRJbnRv
KENvbnRhaW5lck5vZGUqCiAgICAgSFRNTEVsZW1lbnQ6Omluc2VydGVkSW50byhpbnNlcnRpb25Q
b2ludCk7CiAgICAgSFRNTE1lZGlhRWxlbWVudCogcGFyZW50ID0gbWVkaWFFbGVtZW50KCk7CiAg
ICAgaWYgKGluc2VydGlvblBvaW50ID09IHBhcmVudCkKLSAgICAgICAgcGFyZW50LT5kaWRBZGRU
cmFjayh0aGlzKTsKKyAgICAgICAgcGFyZW50LT5kaWRBZGRUZXh0VHJhY2sodGhpcyk7CiAgICAg
cmV0dXJuIEluc2VydGlvbkRvbmU7CiB9CiAKIHZvaWQgSFRNTFRyYWNrRWxlbWVudDo6cmVtb3Zl
ZEZyb20oQ29udGFpbmVyTm9kZSogaW5zZXJ0aW9uUG9pbnQpCiB7CiAgICAgaWYgKCFwYXJlbnRO
b2RlKCkgJiYgV2ViQ29yZTo6aXNNZWRpYUVsZW1lbnQoaW5zZXJ0aW9uUG9pbnQpKQotICAgICAg
ICB0b01lZGlhRWxlbWVudChpbnNlcnRpb25Qb2ludCktPmRpZFJlbW92ZVRyYWNrKHRoaXMpOwor
ICAgICAgICB0b01lZGlhRWxlbWVudChpbnNlcnRpb25Qb2ludCktPmRpZFJlbW92ZVRleHRUcmFj
ayh0aGlzKTsKICAgICBIVE1MRWxlbWVudDo6cmVtb3ZlZEZyb20oaW5zZXJ0aW9uUG9pbnQpOwog
fQogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9odG1sL3RyYWNrL1RleHRUcmFjay5jcHAg
Yi9Tb3VyY2UvV2ViQ29yZS9odG1sL3RyYWNrL1RleHRUcmFjay5jcHAKaW5kZXggMzE5ZGRlYTg1
OTVhNDYyN2E2ZTE1ZDhiZWVjMzIwY2E4OWViNTVmYS4uMDcyMmJkYmFlZGU5ZGNhM2FiZTQwMTcy
OGE4NmNhZTk4NzBkMGI0ZSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvaHRtbC90cmFjay9U
ZXh0VHJhY2suY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvdHJhY2svVGV4dFRyYWNrLmNw
cApAQCAtMTE0LDE0ICsxMTQsMTIgQEAgVGV4dFRyYWNrKiBUZXh0VHJhY2s6OmNhcHRpb25NZW51
QXV0b21hdGljSXRlbSgpCiB9CiAKIFRleHRUcmFjazo6VGV4dFRyYWNrKFNjcmlwdEV4ZWN1dGlv
bkNvbnRleHQqIGNvbnRleHQsIFRleHRUcmFja0NsaWVudCogY2xpZW50LCBjb25zdCBBdG9taWNT
dHJpbmcmIGtpbmQsIGNvbnN0IEF0b21pY1N0cmluZyYgbGFiZWwsIGNvbnN0IEF0b21pY1N0cmlu
ZyYgbGFuZ3VhZ2UsIFRleHRUcmFja1R5cGUgdHlwZSkKLSAgICA6IFRyYWNrQmFzZShjb250ZXh0
LCBUcmFja0Jhc2U6OlRleHRUcmFjaykKKyAgICA6IFRyYWNrQmFzZShUcmFja0Jhc2U6OlRleHRU
cmFjaywgbGFiZWwsIGxhbmd1YWdlKQogICAgICwgbV9jdWVzKDApCisgICAgLCBtX3NjcmlwdEV4
ZWN1dGlvbkNvbnRleHQoY29udGV4dCkKICNpZiBFTkFCTEUoV0VCVlRUX1JFR0lPTlMpCiAgICAg
LCBtX3JlZ2lvbnMoMCkKICNlbmRpZgotICAgICwgbV9tZWRpYUVsZW1lbnQoMCkKLSAgICAsIG1f
bGFiZWwobGFiZWwpCi0gICAgLCBtX2xhbmd1YWdlKGxhbmd1YWdlKQogICAgICwgbV9tb2RlKGRp
c2FibGVkS2V5d29yZCgpLnN0cmluZygpKQogICAgICwgbV9jbGllbnQoY2xpZW50KQogICAgICwg
bV90cmFja1R5cGUodHlwZSkKQEAgLTE0OSw2ICsxNDcsMzEgQEAgVGV4dFRyYWNrOjp+VGV4dFRy
YWNrKCkKICAgICBjbGVhckNsaWVudCgpOwogfQogCitjb25zdCBBdG9taWNTdHJpbmcmIFRleHRU
cmFjazo6aW50ZXJmYWNlTmFtZSgpIGNvbnN0Cit7CisgICAgcmV0dXJuIGV2ZW50TmFtZXMoKS5p
bnRlcmZhY2VGb3JUZXh0VHJhY2s7Cit9CisKK1NjcmlwdEV4ZWN1dGlvbkNvbnRleHQqIFRleHRU
cmFjazo6c2NyaXB0RXhlY3V0aW9uQ29udGV4dCgpIGNvbnN0Cit7CisgICAgcmV0dXJuIG1fc2Ny
aXB0RXhlY3V0aW9uQ29udGV4dDsKK30KKworRXZlbnRUYXJnZXREYXRhKiBUZXh0VHJhY2s6OmV2
ZW50VGFyZ2V0RGF0YSgpCit7CisgICAgcmV0dXJuICZtX2V2ZW50VGFyZ2V0RGF0YTsKK30KKwor
RXZlbnRUYXJnZXREYXRhKiBUZXh0VHJhY2s6OmVuc3VyZUV2ZW50VGFyZ2V0RGF0YSgpCit7Cisg
ICAgcmV0dXJuICZtX2V2ZW50VGFyZ2V0RGF0YTsKK30KKworYm9vbCBUZXh0VHJhY2s6OmlzVmFs
aWRLaW5kKGNvbnN0IEF0b21pY1N0cmluZyYgdmFsdWUpIGNvbnN0Cit7CisgICAgcmV0dXJuIFRl
eHRUcmFjazo6aXNWYWxpZEtpbmRLZXl3b3JkKHZhbHVlKTsKK30KKwogYm9vbCBUZXh0VHJhY2s6
OmlzVmFsaWRLaW5kS2V5d29yZChjb25zdCBBdG9taWNTdHJpbmcmIHZhbHVlKQogewogICAgIGlm
ICh2YWx1ZSA9PSBzdWJ0aXRsZXNLZXl3b3JkKCkpCkBAIC0xNjcsMTYgKzE5MCwxMyBAQCBib29s
IFRleHRUcmFjazo6aXNWYWxpZEtpbmRLZXl3b3JkKGNvbnN0IEF0b21pY1N0cmluZyYgdmFsdWUp
CiAgICAgcmV0dXJuIGZhbHNlOwogfQogCi12b2lkIFRleHRUcmFjazo6c2V0S2luZChjb25zdCBB
dG9taWNTdHJpbmcmIGtpbmQpCit2b2lkIFRleHRUcmFjazo6c2V0S2luZChjb25zdCBBdG9taWNT
dHJpbmcmIG5ld0tpbmQpCiB7Ci0gICAgU3RyaW5nIG9sZEtpbmQgPSBtX2tpbmQ7CisgICAgU3Ry
aW5nIG9sZEtpbmQgPSBraW5kKCk7CiAKLSAgICBpZiAoaXNWYWxpZEtpbmRLZXl3b3JkKGtpbmQp
KQotICAgICAgICBtX2tpbmQgPSBraW5kOwotICAgIGVsc2UKLSAgICAgICAgbV9raW5kID0gc3Vi
dGl0bGVzS2V5d29yZCgpOworICAgIFRyYWNrQmFzZTo6c2V0S2luZChuZXdLaW5kKTsKIAotICAg
IGlmIChtX2NsaWVudCAmJiBvbGRLaW5kICE9IG1fa2luZCkKKyAgICBpZiAobV9jbGllbnQgJiYg
b2xkS2luZCAhPSBraW5kKCkpCiAgICAgICAgIG1fY2xpZW50LT50ZXh0VHJhY2tLaW5kQ2hhbmdl
ZCh0aGlzKTsKIH0KIApAQCAtNDE5LDcgKzQzOSw3IEBAIHZvaWQgVGV4dFRyYWNrOjppbnZhbGlk
YXRlVHJhY2tJbmRleCgpCiAKIGJvb2wgVGV4dFRyYWNrOjppc1JlbmRlcmVkKCkKIHsKLSAgICBp
ZiAobV9raW5kICE9IGNhcHRpb25zS2V5d29yZCgpICYmIG1fa2luZCAhPSBzdWJ0aXRsZXNLZXl3
b3JkKCkpCisgICAgaWYgKGtpbmQoKSAhPSBjYXB0aW9uc0tleXdvcmQoKSAmJiBraW5kKCkgIT0g
c3VidGl0bGVzS2V5d29yZCgpKQogICAgICAgICByZXR1cm4gZmFsc2U7CiAKICAgICBpZiAobV9t
b2RlICE9IHNob3dpbmdLZXl3b3JkKCkpCkBAIC01MTAsMTkgKzUzMCwxOSBAQCBQYXNzUmVmUHRy
PFBsYXRmb3JtVGV4dFRyYWNrPiBUZXh0VHJhY2s6OnBsYXRmb3JtVGV4dFRyYWNrKCkKICAgICBp
ZiAobV9wbGF0Zm9ybVRleHRUcmFjaykKICAgICAgICAgcmV0dXJuIG1fcGxhdGZvcm1UZXh0VHJh
Y2s7CiAKLSAgICBQbGF0Zm9ybVRleHRUcmFjazo6VHJhY2tLaW5kIGtpbmQgPSBQbGF0Zm9ybVRl
eHRUcmFjazo6Q2FwdGlvbjsKLSAgICBpZiAobV9raW5kID09IHN1YnRpdGxlc0tleXdvcmQoKSkK
LSAgICAgICAga2luZCA9IFBsYXRmb3JtVGV4dFRyYWNrOjpTdWJ0aXRsZTsKLSAgICBlbHNlIGlm
IChtX2tpbmQgPT0gY2FwdGlvbnNLZXl3b3JkKCkpCi0gICAgICAgIGtpbmQgPSBQbGF0Zm9ybVRl
eHRUcmFjazo6Q2FwdGlvbjsKLSAgICBlbHNlIGlmIChtX2tpbmQgPT0gZGVzY3JpcHRpb25zS2V5
d29yZCgpKQotICAgICAgICBraW5kID0gUGxhdGZvcm1UZXh0VHJhY2s6OkRlc2NyaXB0aW9uOwot
ICAgIGVsc2UgaWYgKG1fa2luZCA9PSBjaGFwdGVyc0tleXdvcmQoKSkKLSAgICAgICAga2luZCA9
IFBsYXRmb3JtVGV4dFRyYWNrOjpDaGFwdGVyOwotICAgIGVsc2UgaWYgKG1fa2luZCA9PSBtZXRh
ZGF0YUtleXdvcmQoKSkKLSAgICAgICAga2luZCA9IFBsYXRmb3JtVGV4dFRyYWNrOjpNZXRhRGF0
YTsKLSAgICBlbHNlIGlmIChtX2tpbmQgPT0gZm9yY2VkS2V5d29yZCgpKQotICAgICAgICBraW5k
ID0gUGxhdGZvcm1UZXh0VHJhY2s6OkZvcmNlZDsKKyAgICBQbGF0Zm9ybVRleHRUcmFjazo6VHJh
Y2tLaW5kIHBsYXRmb3JtS2luZCA9IFBsYXRmb3JtVGV4dFRyYWNrOjpDYXB0aW9uOworICAgIGlm
IChraW5kKCkgPT0gc3VidGl0bGVzS2V5d29yZCgpKQorICAgICAgICBwbGF0Zm9ybUtpbmQgPSBQ
bGF0Zm9ybVRleHRUcmFjazo6U3VidGl0bGU7CisgICAgZWxzZSBpZiAoa2luZCgpID09IGNhcHRp
b25zS2V5d29yZCgpKQorICAgICAgICBwbGF0Zm9ybUtpbmQgPSBQbGF0Zm9ybVRleHRUcmFjazo6
Q2FwdGlvbjsKKyAgICBlbHNlIGlmIChraW5kKCkgPT0gZGVzY3JpcHRpb25zS2V5d29yZCgpKQor
ICAgICAgICBwbGF0Zm9ybUtpbmQgPSBQbGF0Zm9ybVRleHRUcmFjazo6RGVzY3JpcHRpb247Cisg
ICAgZWxzZSBpZiAoa2luZCgpID09IGNoYXB0ZXJzS2V5d29yZCgpKQorICAgICAgICBwbGF0Zm9y
bUtpbmQgPSBQbGF0Zm9ybVRleHRUcmFjazo6Q2hhcHRlcjsKKyAgICBlbHNlIGlmIChraW5kKCkg
PT0gbWV0YWRhdGFLZXl3b3JkKCkpCisgICAgICAgIHBsYXRmb3JtS2luZCA9IFBsYXRmb3JtVGV4
dFRyYWNrOjpNZXRhRGF0YTsKKyAgICBlbHNlIGlmIChraW5kKCkgPT0gZm9yY2VkS2V5d29yZCgp
KQorICAgICAgICBwbGF0Zm9ybUtpbmQgPSBQbGF0Zm9ybVRleHRUcmFjazo6Rm9yY2VkOwogCiAg
ICAgUGxhdGZvcm1UZXh0VHJhY2s6OlRyYWNrVHlwZSB0eXBlID0gUGxhdGZvcm1UZXh0VHJhY2s6
Ok91dE9mQmFuZDsKICAgICBpZiAobV90cmFja1R5cGUgPT0gVHJhY2tFbGVtZW50KQpAQCAtNTMy
LDcgKzU1Miw3IEBAIFBhc3NSZWZQdHI8UGxhdGZvcm1UZXh0VHJhY2s+IFRleHRUcmFjazo6cGxh
dGZvcm1UZXh0VHJhY2soKQogICAgIGVsc2UgaWYgKG1fdHJhY2tUeXBlID09IEluQmFuZCkKICAg
ICAgICAgdHlwZSA9IFBsYXRmb3JtVGV4dFRyYWNrOjpJbkJhbmQ7CiAKLSAgICBtX3BsYXRmb3Jt
VGV4dFRyYWNrID0gUGxhdGZvcm1UZXh0VHJhY2s6OmNyZWF0ZSh0aGlzLCBtX2xhYmVsLCBtX2xh
bmd1YWdlLCBraW5kLCB0eXBlKTsKKyAgICBtX3BsYXRmb3JtVGV4dFRyYWNrID0gUGxhdGZvcm1U
ZXh0VHJhY2s6OmNyZWF0ZSh0aGlzLCBsYWJlbCgpLCBsYW5ndWFnZSgpLCBwbGF0Zm9ybUtpbmQs
IHR5cGUpOwogCiAgICAgcmV0dXJuIG1fcGxhdGZvcm1UZXh0VHJhY2s7CiB9CkBAIC01NDQsNyAr
NTY0LDEzIEBAIGJvb2wgVGV4dFRyYWNrOjppc01haW5Qcm9ncmFtQ29udGVudCgpIGNvbnN0CiAg
ICAgLy8gZGlyZWN0b3JzIGNvbW1lbnRhcnkgaXMgbm90ICJtYWluIHByb2dyYW0iIGJlY2F1c2Ug
aXQgaXMgbm90IGVzc2VudGlhbCBmb3IgdGhlIHByZXNlbnRhdGlvbi4gSFRNTDUgZG9lc24ndCBo
YXZlCiAgICAgLy8gYSB3YXkgdG8gZXhwcmVzcyB0aGlzIGluIGEgbWFjaGluZS1yZWFibGUgZm9y
bSwgaXQgaXMgdHlwaWNhbGx5IGRvbmUgd2l0aCB0aGUgdHJhY2sgbGFiZWwsIHNvIHdlIGFzc3Vt
ZSB0aGF0IGNhcHRpb24KICAgICAvLyB0cmFja3MgYXJlIG1haW4gY29udGVudCBhbmQgYWxsIG90
aGVyIHRyYWNrIHR5cGVzIGFyZSBub3QuCi0gICAgcmV0dXJuIG1fa2luZCA9PSBjYXB0aW9uc0tl
eXdvcmQoKTsKKyAgICByZXR1cm4ga2luZCgpID09IGNhcHRpb25zS2V5d29yZCgpOworfQorCitU
ZXh0VHJhY2sqIHRvVGV4dFRyYWNrKFRyYWNrQmFzZSogdHJhY2spCit7CisgICAgQVNTRVJUKHRy
YWNrLT50eXBlKCkgPT0gVHJhY2tCYXNlOjpUZXh0VHJhY2spOworICAgIHJldHVybiBzdGF0aWNf
Y2FzdDxUZXh0VHJhY2sqPih0cmFjayk7CiB9CiAKIH0gLy8gbmFtZXNwYWNlIFdlYkNvcmUKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvdHJhY2svVGV4dFRyYWNrLmggYi9Tb3VyY2Uv
V2ViQ29yZS9odG1sL3RyYWNrL1RleHRUcmFjay5oCmluZGV4IGUyZWI2NjM5MWYwZjcyMzU1YTli
MzA0NGNlNDhlNGQxMzYzMTc1ZjguLmQzNzJmZTg0MjZhYzZkNjg3MGNhODA0Nzg3OWM4YTUzOWE4
M2UzYmQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvdHJhY2svVGV4dFRyYWNrLmgK
KysrIGIvU291cmNlL1dlYkNvcmUvaHRtbC90cmFjay9UZXh0VHJhY2suaApAQCAtNDEsNyArNDEs
NyBAQAogCiBuYW1lc3BhY2UgV2ViQ29yZSB7CiAKLWNsYXNzIEhUTUxNZWRpYUVsZW1lbnQ7Citj
bGFzcyBTY3JpcHRFeGVjdXRpb25Db250ZXh0OwogY2xhc3MgVGV4dFRyYWNrOwogY2xhc3MgVGV4
dFRyYWNrQ3VlOwogY2xhc3MgVGV4dFRyYWNrQ3VlTGlzdDsKQEAgLTYxLDcgKzYxLDcgQEAgcHVi
bGljOgogICAgIHZpcnR1YWwgdm9pZCB0ZXh0VHJhY2tSZW1vdmVDdWUoVGV4dFRyYWNrKiwgUGFz
c1JlZlB0cjxUZXh0VHJhY2tDdWU+KSA9IDA7CiB9OwogCi1jbGFzcyBUZXh0VHJhY2sgOiBwdWJs
aWMgVHJhY2tCYXNlCitjbGFzcyBUZXh0VHJhY2sgOiBwdWJsaWMgVHJhY2tCYXNlLCBwdWJsaWMg
RXZlbnRUYXJnZXQKICNpZiBVU0UoUExBVEZPUk1fVEVYVF9UUkFDS19NRU5VKQogICAgICwgcHVi
bGljIFBsYXRmb3JtVGV4dFRyYWNrQ2xpZW50CiAjZW5kaWYKQEAgLTczLDMzICs3MywyNyBAQCBw
dWJsaWM6CiAgICAgfQogICAgIHZpcnR1YWwgflRleHRUcmFjaygpOwogCisgICAgdmlydHVhbCBj
b25zdCBBdG9taWNTdHJpbmcmIGludGVyZmFjZU5hbWUoKSBjb25zdDsKKyAgICB2aXJ0dWFsIFNj
cmlwdEV4ZWN1dGlvbkNvbnRleHQqIHNjcmlwdEV4ZWN1dGlvbkNvbnRleHQoKSBjb25zdDsKKwog
ICAgIHN0YXRpYyBUZXh0VHJhY2sqIGNhcHRpb25NZW51T2ZmSXRlbSgpOwogICAgIHN0YXRpYyBU
ZXh0VHJhY2sqIGNhcHRpb25NZW51QXV0b21hdGljSXRlbSgpOwogCi0gICAgdm9pZCBzZXRNZWRp
YUVsZW1lbnQoSFRNTE1lZGlhRWxlbWVudCogZWxlbWVudCkgeyBtX21lZGlhRWxlbWVudCA9IGVs
ZW1lbnQ7IH0KLSAgICBIVE1MTWVkaWFFbGVtZW50KiBtZWRpYUVsZW1lbnQoKSB7IHJldHVybiBt
X21lZGlhRWxlbWVudDsgfQotCi0gICAgQXRvbWljU3RyaW5nIGtpbmQoKSBjb25zdCB7IHJldHVy
biBtX2tpbmQ7IH0KLSAgICB2b2lkIHNldEtpbmQoY29uc3QgQXRvbWljU3RyaW5nJik7Ci0KICAg
ICBzdGF0aWMgY29uc3QgQXRvbWljU3RyaW5nJiBzdWJ0aXRsZXNLZXl3b3JkKCk7CiAgICAgc3Rh
dGljIGNvbnN0IEF0b21pY1N0cmluZyYgY2FwdGlvbnNLZXl3b3JkKCk7CiAgICAgc3RhdGljIGNv
bnN0IEF0b21pY1N0cmluZyYgZGVzY3JpcHRpb25zS2V5d29yZCgpOwogICAgIHN0YXRpYyBjb25z
dCBBdG9taWNTdHJpbmcmIGNoYXB0ZXJzS2V5d29yZCgpOwogICAgIHN0YXRpYyBjb25zdCBBdG9t
aWNTdHJpbmcmIG1ldGFkYXRhS2V5d29yZCgpOwogICAgIHN0YXRpYyBjb25zdCBBdG9taWNTdHJp
bmcmIGZvcmNlZEtleXdvcmQoKTsKKyAgICB2aXJ0dWFsIGNvbnN0IEF0b21pY1N0cmluZyYgZGVm
YXVsdEtpbmRLZXl3b3JkKCkgY29uc3QgT1ZFUlJJREUgeyByZXR1cm4gc3VidGl0bGVzS2V5d29y
ZCgpOyB9CiAgICAgc3RhdGljIGJvb2wgaXNWYWxpZEtpbmRLZXl3b3JkKGNvbnN0IEF0b21pY1N0
cmluZyYpOwogCi0gICAgQXRvbWljU3RyaW5nIGxhYmVsKCkgY29uc3QgeyByZXR1cm4gbV9sYWJl
bDsgfQotICAgIHZvaWQgc2V0TGFiZWwoY29uc3QgQXRvbWljU3RyaW5nJiBsYWJlbCkgeyBtX2xh
YmVsID0gbGFiZWw7IH0KLQotICAgIEF0b21pY1N0cmluZyBsYW5ndWFnZSgpIGNvbnN0IHsgcmV0
dXJuIG1fbGFuZ3VhZ2U7IH0KLSAgICB2b2lkIHNldExhbmd1YWdlKGNvbnN0IEF0b21pY1N0cmlu
ZyYgbGFuZ3VhZ2UpIHsgbV9sYW5ndWFnZSA9IGxhbmd1YWdlOyB9Ci0KICAgICBzdGF0aWMgY29u
c3QgQXRvbWljU3RyaW5nJiBkaXNhYmxlZEtleXdvcmQoKTsKICAgICBzdGF0aWMgY29uc3QgQXRv
bWljU3RyaW5nJiBoaWRkZW5LZXl3b3JkKCk7CiAgICAgc3RhdGljIGNvbnN0IEF0b21pY1N0cmlu
ZyYgc2hvd2luZ0tleXdvcmQoKTsKIAorICAgIHZpcnR1YWwgdm9pZCBzZXRLaW5kKGNvbnN0IEF0
b21pY1N0cmluZyYpIE9WRVJSSURFOworCiAgICAgQXRvbWljU3RyaW5nIG1vZGUoKSBjb25zdCB7
IHJldHVybiBtX21vZGU7IH0KICAgICB2aXJ0dWFsIHZvaWQgc2V0TW9kZShjb25zdCBBdG9taWNT
dHJpbmcmKTsKIApAQCAtMTEwLDcgKzEwNCw3IEBAIHB1YmxpYzoKICAgICBUZXh0VHJhY2tDdWVM
aXN0KiBjdWVzKCk7CiAgICAgVGV4dFRyYWNrQ3VlTGlzdCogYWN0aXZlQ3VlcygpIGNvbnN0Owog
Ci0gICAgdm9pZCBjbGVhckNsaWVudCgpIHsgbV9jbGllbnQgPSAwOyB9CisgICAgdmlydHVhbCB2
b2lkIGNsZWFyQ2xpZW50KCkgT1ZFUlJJREUgeyBtX2NsaWVudCA9IDA7IH0KICAgICBUZXh0VHJh
Y2tDbGllbnQqIGNsaWVudCgpIHsgcmV0dXJuIG1fY2xpZW50OyB9CiAKICAgICB2b2lkIGFkZEN1
ZShQYXNzUmVmUHRyPFRleHRUcmFja0N1ZT4pOwpAQCAtMTU1LDE1ICsxNDksMjUgQEAgcHVibGlj
OgogICAgIFBhc3NSZWZQdHI8UGxhdGZvcm1UZXh0VHJhY2s+IHBsYXRmb3JtVGV4dFRyYWNrKCk7
CiAjZW5kaWYKIAorICAgIHVzaW5nIFJlZkNvdW50ZWQ8VHJhY2tCYXNlPjo6cmVmOworICAgIHVz
aW5nIFJlZkNvdW50ZWQ8VHJhY2tCYXNlPjo6ZGVyZWY7CisKIHByb3RlY3RlZDoKICAgICBUZXh0
VHJhY2soU2NyaXB0RXhlY3V0aW9uQ29udGV4dCosIFRleHRUcmFja0NsaWVudCosIGNvbnN0IEF0
b21pY1N0cmluZyYga2luZCwgY29uc3QgQXRvbWljU3RyaW5nJiBsYWJlbCwgY29uc3QgQXRvbWlj
U3RyaW5nJiBsYW5ndWFnZSwgVGV4dFRyYWNrVHlwZSk7CiAjaWYgRU5BQkxFKFZJREVPX1RSQUNL
KSAmJiBFTkFCTEUoV0VCVlRUX1JFR0lPTlMpCiAgICAgVGV4dFRyYWNrUmVnaW9uTGlzdCogcmVn
aW9uTGlzdCgpOwogI2VuZGlmCiAKKyAgICB2aXJ0dWFsIEV2ZW50VGFyZ2V0RGF0YSogZXZlbnRU
YXJnZXREYXRhKCkgT1ZFUlJJREU7CisgICAgdmlydHVhbCBFdmVudFRhcmdldERhdGEqIGVuc3Vy
ZUV2ZW50VGFyZ2V0RGF0YSgpIE9WRVJSSURFOworCiAgICAgUmVmUHRyPFRleHRUcmFja0N1ZUxp
c3Q+IG1fY3VlczsKIAogcHJpdmF0ZToKKyAgICB2aXJ0dWFsIGJvb2wgaXNWYWxpZEtpbmQoY29u
c3QgQXRvbWljU3RyaW5nJikgY29uc3QgT1ZFUlJJREU7CisKKyAgICB2aXJ0dWFsIHZvaWQgcmVm
RXZlbnRUYXJnZXQoKSBPVkVSUklERSB7IHJlZigpOyB9CisgICAgdmlydHVhbCB2b2lkIGRlcmVm
RXZlbnRUYXJnZXQoKSBPVkVSUklERSB7IGRlcmVmKCk7IH0KIAogI2lmIEVOQUJMRShWSURFT19U
UkFDSykgJiYgRU5BQkxFKFdFQlZUVF9SRUdJT05TKQogICAgIFRleHRUcmFja1JlZ2lvbkxpc3Qq
IGVuc3VyZVRleHRUcmFja1JlZ2lvbkxpc3QoKTsKQEAgLTE3OCwxMCArMTgyLDggQEAgcHJpdmF0
ZToKIAogICAgIFRleHRUcmFja0N1ZUxpc3QqIGVuc3VyZVRleHRUcmFja0N1ZUxpc3QoKTsKIAot
ICAgIEhUTUxNZWRpYUVsZW1lbnQqIG1fbWVkaWFFbGVtZW50OwotICAgIEF0b21pY1N0cmluZyBt
X2tpbmQ7Ci0gICAgQXRvbWljU3RyaW5nIG1fbGFiZWw7Ci0gICAgQXRvbWljU3RyaW5nIG1fbGFu
Z3VhZ2U7CisgICAgU2NyaXB0RXhlY3V0aW9uQ29udGV4dCogbV9zY3JpcHRFeGVjdXRpb25Db250
ZXh0OworICAgIEV2ZW50VGFyZ2V0RGF0YSBtX2V2ZW50VGFyZ2V0RGF0YTsKICAgICBBdG9taWNT
dHJpbmcgbV9tb2RlOwogICAgIFRleHRUcmFja0NsaWVudCogbV9jbGllbnQ7CiAgICAgVGV4dFRy
YWNrVHlwZSBtX3RyYWNrVHlwZTsKQEAgLTE5MSw2ICsxOTMsOCBAQCBwcml2YXRlOgogICAgIGJv
b2wgbV9oYXNCZWVuQ29uZmlndXJlZDsKIH07CiAKK1RleHRUcmFjayogdG9UZXh0VHJhY2soVHJh
Y2tCYXNlKik7CisKIH0gLy8gbmFtZXNwYWNlIFdlYkNvcmUKIAogI2VuZGlmCmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViQ29yZS9odG1sL3RyYWNrL1RleHRUcmFja0xpc3QuY3BwIGIvU291cmNlL1dl
YkNvcmUvaHRtbC90cmFjay9UZXh0VHJhY2tMaXN0LmNwcAppbmRleCBhYjUzODkwMTM5MTU3ZTlh
MTZiOWI2NTE0Mjk5YWJlNDBmMDY3YWMzLi5iYzA5OWIwNzM0MjE0Y2QwYTQyOTQ3ZDc5MjE0NWMz
ZmUxZDFjNTVhIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9odG1sL3RyYWNrL1RleHRUcmFj
a0xpc3QuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvdHJhY2svVGV4dFRyYWNrTGlzdC5j
cHAKQEAgLTMwLDIzICszMCwxNiBAQAogI2luY2x1ZGUgIlRleHRUcmFja0xpc3QuaCIKIAogI2lu
Y2x1ZGUgIkV2ZW50TmFtZXMuaCIKLSNpbmNsdWRlICJIVE1MTWVkaWFFbGVtZW50LmgiCiAjaW5j
bHVkZSAiSW5iYW5kVGV4dFRyYWNrLmgiCiAjaW5jbHVkZSAiSW5iYW5kVGV4dFRyYWNrUHJpdmF0
ZS5oIgogI2luY2x1ZGUgIkxvYWRhYmxlVGV4dFRyYWNrLmgiCi0jaW5jbHVkZSAiU2NyaXB0RXhl
Y3V0aW9uQ29udGV4dC5oIgogI2luY2x1ZGUgIlRleHRUcmFjay5oIgotI2luY2x1ZGUgIlRyYWNr
RXZlbnQuaCIKIAogdXNpbmcgbmFtZXNwYWNlIFdlYkNvcmU7CiAKIFRleHRUcmFja0xpc3Q6OlRl
eHRUcmFja0xpc3QoSFRNTE1lZGlhRWxlbWVudCogb3duZXIsIFNjcmlwdEV4ZWN1dGlvbkNvbnRl
eHQqIGNvbnRleHQpCi0gICAgOiBtX2NvbnRleHQoY29udGV4dCkKLSAgICAsIG1fb3duZXIob3du
ZXIpCi0gICAgLCBtX3BlbmRpbmdFdmVudFRpbWVyKHRoaXMsICZUZXh0VHJhY2tMaXN0Ojphc3lu
Y0V2ZW50VGltZXJGaXJlZCkKLSAgICAsIG1fZGlzcGF0Y2hpbmdFdmVudHMoMCkKKyAgICA6IFRy
YWNrTGlzdEJhc2Uob3duZXIsIGNvbnRleHQpCiB7Ci0gICAgQVNTRVJUKGNvbnRleHQtPmlzRG9j
dW1lbnQoKSk7CiB9CiAKIFRleHRUcmFja0xpc3Q6On5UZXh0VHJhY2tMaXN0KCkKQEAgLTgwLDI3
ICs3MywyNyBAQCBpbnQgVGV4dFRyYWNrTGlzdDo6Z2V0VHJhY2tJbmRleFJlbGF0aXZlVG9SZW5k
ZXJlZFRyYWNrcyhUZXh0VHJhY2sgKnRleHRUcmFjaykKICAgICBpbnQgdHJhY2tJbmRleCA9IDA7
CiAKICAgICBmb3IgKHNpemVfdCBpID0gMDsgaSA8IG1fZWxlbWVudFRyYWNrcy5zaXplKCk7ICsr
aSkgewotICAgICAgICBpZiAoIW1fZWxlbWVudFRyYWNrc1tpXS0+aXNSZW5kZXJlZCgpKQorICAg
ICAgICBpZiAoIXRvVGV4dFRyYWNrKG1fZWxlbWVudFRyYWNrc1tpXS5nZXQoKSktPmlzUmVuZGVy
ZWQoKSkKICAgICAgICAgICAgIGNvbnRpbnVlOwotICAgICAgICAKKwogICAgICAgICBpZiAobV9l
bGVtZW50VHJhY2tzW2ldID09IHRleHRUcmFjaykKICAgICAgICAgICAgIHJldHVybiB0cmFja0lu
ZGV4OwogICAgICAgICArK3RyYWNrSW5kZXg7CiAgICAgfQogCiAgICAgZm9yIChzaXplX3QgaSA9
IDA7IGkgPCBtX2FkZFRyYWNrVHJhY2tzLnNpemUoKTsgKytpKSB7Ci0gICAgICAgIGlmICghbV9h
ZGRUcmFja1RyYWNrc1tpXS0+aXNSZW5kZXJlZCgpKQorICAgICAgICBpZiAoIXRvVGV4dFRyYWNr
KG1fYWRkVHJhY2tUcmFja3NbaV0uZ2V0KCkpLT5pc1JlbmRlcmVkKCkpCiAgICAgICAgICAgICBj
b250aW51ZTsKLSAgICAgICAgCisKICAgICAgICAgaWYgKG1fYWRkVHJhY2tUcmFja3NbaV0gPT0g
dGV4dFRyYWNrKQogICAgICAgICAgICAgcmV0dXJuIHRyYWNrSW5kZXg7CiAgICAgICAgICsrdHJh
Y2tJbmRleDsKICAgICB9CiAKICAgICBmb3IgKHNpemVfdCBpID0gMDsgaSA8IG1faW5iYW5kVHJh
Y2tzLnNpemUoKTsgKytpKSB7Ci0gICAgICAgIGlmICghbV9pbmJhbmRUcmFja3NbaV0tPmlzUmVu
ZGVyZWQoKSkKKyAgICAgICAgaWYgKCF0b1RleHRUcmFjayhtX2luYmFuZFRyYWNrc1tpXS5nZXQo
KSktPmlzUmVuZGVyZWQoKSkKICAgICAgICAgICAgIGNvbnRpbnVlOwotICAgICAgICAKKwogICAg
ICAgICBpZiAobV9pbmJhbmRUcmFja3NbaV0gPT0gdGV4dFRyYWNrKQogICAgICAgICAgICAgcmV0
dXJuIHRyYWNrSW5kZXg7CiAgICAgICAgICsrdHJhY2tJbmRleDsKQEAgLTEyMSwzMyArMTE0LDMz
IEBAIFRleHRUcmFjayogVGV4dFRyYWNrTGlzdDo6aXRlbSh1bnNpZ25lZCBpbmRleCkKICAgICAv
LyByZXNvdXJjZSksIGluIHRoZSBvcmRlciBkZWZpbmVkIGJ5IHRoZSBtZWRpYSByZXNvdXJjZSdz
IGZvcm1hdCBzcGVjaWZpY2F0aW9uLgogCiAgICAgaWYgKGluZGV4IDwgbV9lbGVtZW50VHJhY2tz
LnNpemUoKSkKLSAgICAgICAgcmV0dXJuIG1fZWxlbWVudFRyYWNrc1tpbmRleF0uZ2V0KCk7Cisg
ICAgICAgIHJldHVybiB0b1RleHRUcmFjayhtX2VsZW1lbnRUcmFja3NbaW5kZXhdLmdldCgpKTsK
IAogICAgIGluZGV4IC09IG1fZWxlbWVudFRyYWNrcy5zaXplKCk7CiAgICAgaWYgKGluZGV4IDwg
bV9hZGRUcmFja1RyYWNrcy5zaXplKCkpCi0gICAgICAgIHJldHVybiBtX2FkZFRyYWNrVHJhY2tz
W2luZGV4XS5nZXQoKTsKKyAgICAgICAgcmV0dXJuIHRvVGV4dFRyYWNrKG1fYWRkVHJhY2tUcmFj
a3NbaW5kZXhdLmdldCgpKTsKIAogICAgIGluZGV4IC09IG1fYWRkVHJhY2tUcmFja3Muc2l6ZSgp
OwogICAgIGlmIChpbmRleCA8IG1faW5iYW5kVHJhY2tzLnNpemUoKSkKLSAgICAgICAgcmV0dXJu
IG1faW5iYW5kVHJhY2tzW2luZGV4XS5nZXQoKTsKKyAgICAgICAgcmV0dXJuIHRvVGV4dFRyYWNr
KG1faW5iYW5kVHJhY2tzW2luZGV4XS5nZXQoKSk7CiAKICAgICByZXR1cm4gMDsKIH0KIAogdm9p
ZCBUZXh0VHJhY2tMaXN0OjppbnZhbGlkYXRlVHJhY2tJbmRleGVzQWZ0ZXJUcmFjayhUZXh0VHJh
Y2sqIHRyYWNrKQogewotICAgIFZlY3RvcjxSZWZQdHI8VGV4dFRyYWNrPiA+KiB0cmFja3MgPSAw
OworICAgIFZlY3RvcjxSZWZQdHI8VHJhY2tCYXNlPiA+KiB0cmFja3MgPSAwOwogCiAgICAgaWYg
KHRyYWNrLT50cmFja1R5cGUoKSA9PSBUZXh0VHJhY2s6OlRyYWNrRWxlbWVudCkgewogICAgICAg
ICB0cmFja3MgPSAmbV9lbGVtZW50VHJhY2tzOwogICAgICAgICBmb3IgKHNpemVfdCBpID0gMDsg
aSA8IG1fYWRkVHJhY2tUcmFja3Muc2l6ZSgpOyArK2kpCi0gICAgICAgICAgICBtX2FkZFRyYWNr
VHJhY2tzW2ldLT5pbnZhbGlkYXRlVHJhY2tJbmRleCgpOworICAgICAgICAgICAgdG9UZXh0VHJh
Y2sobV9hZGRUcmFja1RyYWNrc1tpXS5nZXQoKSktPmludmFsaWRhdGVUcmFja0luZGV4KCk7CiAg
ICAgICAgIGZvciAoc2l6ZV90IGkgPSAwOyBpIDwgbV9pbmJhbmRUcmFja3Muc2l6ZSgpOyArK2kp
Ci0gICAgICAgICAgICBtX2luYmFuZFRyYWNrc1tpXS0+aW52YWxpZGF0ZVRyYWNrSW5kZXgoKTsK
KyAgICAgICAgICAgIHRvVGV4dFRyYWNrKG1faW5iYW5kVHJhY2tzW2ldLmdldCgpKS0+aW52YWxp
ZGF0ZVRyYWNrSW5kZXgoKTsKICAgICB9IGVsc2UgaWYgKHRyYWNrLT50cmFja1R5cGUoKSA9PSBU
ZXh0VHJhY2s6OkFkZFRyYWNrKSB7CiAgICAgICAgIHRyYWNrcyA9ICZtX2FkZFRyYWNrVHJhY2tz
OwogICAgICAgICBmb3IgKHNpemVfdCBpID0gMDsgaSA8IG1faW5iYW5kVHJhY2tzLnNpemUoKTsg
KytpKQotICAgICAgICAgICAgbV9pbmJhbmRUcmFja3NbaV0tPmludmFsaWRhdGVUcmFja0luZGV4
KCk7CisgICAgICAgICAgICB0b1RleHRUcmFjayhtX2luYmFuZFRyYWNrc1tpXS5nZXQoKSktPmlu
dmFsaWRhdGVUcmFja0luZGV4KCk7CiAgICAgfSBlbHNlIGlmICh0cmFjay0+dHJhY2tUeXBlKCkg
PT0gVGV4dFRyYWNrOjpJbkJhbmQpCiAgICAgICAgIHRyYWNrcyA9ICZtX2luYmFuZFRyYWNrczsK
ICAgICBlbHNlCkBAIC0xNTgsNyArMTUxLDcgQEAgdm9pZCBUZXh0VHJhY2tMaXN0OjppbnZhbGlk
YXRlVHJhY2tJbmRleGVzQWZ0ZXJUcmFjayhUZXh0VHJhY2sqIHRyYWNrKQogICAgICAgICByZXR1
cm47CiAKICAgICBmb3IgKHNpemVfdCBpID0gaW5kZXg7IGkgPCB0cmFja3MtPnNpemUoKTsgKytp
KQotICAgICAgICB0cmFja3MtPmF0KGluZGV4KS0+aW52YWxpZGF0ZVRyYWNrSW5kZXgoKTsKKyAg
ICAgICAgdG9UZXh0VHJhY2sodHJhY2tzLT5hdChpbmRleCkuZ2V0KCkpLT5pbnZhbGlkYXRlVHJh
Y2tJbmRleCgpOwogfQogCiB2b2lkIFRleHRUcmFja0xpc3Q6OmFwcGVuZChQYXNzUmVmUHRyPFRl
eHRUcmFjaz4gcHJwVHJhY2spCkBAIC0xODAsMjEgKzE3MywyMSBAQCB2b2lkIFRleHRUcmFja0xp
c3Q6OmFwcGVuZChQYXNzUmVmUHRyPFRleHRUcmFjaz4gcHJwVHJhY2spCiAKICAgICBpbnZhbGlk
YXRlVHJhY2tJbmRleGVzQWZ0ZXJUcmFjayh0cmFjay5nZXQoKSk7CiAKLSAgICBBU1NFUlQoIXRy
YWNrLT5tZWRpYUVsZW1lbnQoKSB8fCB0cmFjay0+bWVkaWFFbGVtZW50KCkgPT0gbV9vd25lcik7
Ci0gICAgdHJhY2stPnNldE1lZGlhRWxlbWVudChtX293bmVyKTsKKyAgICBBU1NFUlQoIXRyYWNr
LT5tZWRpYUVsZW1lbnQoKSB8fCB0cmFjay0+bWVkaWFFbGVtZW50KCkgPT0gb3duZXIoKSk7Cisg
ICAgdHJhY2stPnNldE1lZGlhRWxlbWVudChvd25lcigpKTsKIAogICAgIHNjaGVkdWxlQWRkVHJh
Y2tFdmVudCh0cmFjay5yZWxlYXNlKCkpOwogfQogCi12b2lkIFRleHRUcmFja0xpc3Q6OnJlbW92
ZShUZXh0VHJhY2sqIHRyYWNrKQordm9pZCBUZXh0VHJhY2tMaXN0OjpyZW1vdmUoVHJhY2tCYXNl
KiB0cmFjaykKIHsKLSAgICBWZWN0b3I8UmVmUHRyPFRleHRUcmFjaz4gPiogdHJhY2tzID0gMDsK
LQotICAgIGlmICh0cmFjay0+dHJhY2tUeXBlKCkgPT0gVGV4dFRyYWNrOjpUcmFja0VsZW1lbnQp
CisgICAgVGV4dFRyYWNrKiB0ZXh0VHJhY2sgPSB0b1RleHRUcmFjayh0cmFjayk7CisgICAgVmVj
dG9yPFJlZlB0cjxUcmFja0Jhc2U+ID4qIHRyYWNrcyA9IDA7CisgICAgaWYgKHRleHRUcmFjay0+
dHJhY2tUeXBlKCkgPT0gVGV4dFRyYWNrOjpUcmFja0VsZW1lbnQpCiAgICAgICAgIHRyYWNrcyA9
ICZtX2VsZW1lbnRUcmFja3M7Ci0gICAgZWxzZSBpZiAodHJhY2stPnRyYWNrVHlwZSgpID09IFRl
eHRUcmFjazo6QWRkVHJhY2spCisgICAgZWxzZSBpZiAodGV4dFRyYWNrLT50cmFja1R5cGUoKSA9
PSBUZXh0VHJhY2s6OkFkZFRyYWNrKQogICAgICAgICB0cmFja3MgPSAmbV9hZGRUcmFja1RyYWNr
czsKLSAgICBlbHNlIGlmICh0cmFjay0+dHJhY2tUeXBlKCkgPT0gVGV4dFRyYWNrOjpJbkJhbmQp
CisgICAgZWxzZSBpZiAodGV4dFRyYWNrLT50cmFja1R5cGUoKSA9PSBUZXh0VHJhY2s6OkluQmFu
ZCkKICAgICAgICAgdHJhY2tzID0gJm1faW5iYW5kVHJhY2tzOwogICAgIGVsc2UKICAgICAgICAg
QVNTRVJUX05PVF9SRUFDSEVEKCk7CkBAIC0yMDMsMjUgKzE5NiwyNSBAQCB2b2lkIFRleHRUcmFj
a0xpc3Q6OnJlbW92ZShUZXh0VHJhY2sqIHRyYWNrKQogICAgIGlmIChpbmRleCA9PSBub3RGb3Vu
ZCkKICAgICAgICAgcmV0dXJuOwogCi0gICAgaW52YWxpZGF0ZVRyYWNrSW5kZXhlc0FmdGVyVHJh
Y2sodHJhY2spOworICAgIGludmFsaWRhdGVUcmFja0luZGV4ZXNBZnRlclRyYWNrKHRleHRUcmFj
ayk7CiAKLSAgICBBU1NFUlQoIXRyYWNrLT5tZWRpYUVsZW1lbnQoKSB8fCB0cmFjay0+bWVkaWFF
bGVtZW50KCkgPT0gbV9vd25lcik7CisgICAgQVNTRVJUKCF0cmFjay0+bWVkaWFFbGVtZW50KCkg
fHwgdHJhY2stPm1lZGlhRWxlbWVudCgpID09IG93bmVyKCkpOwogICAgIHRyYWNrLT5zZXRNZWRp
YUVsZW1lbnQoMCk7CiAKLSAgICBSZWZQdHI8VGV4dFRyYWNrPiB0cmFja1JlZiA9ICgqdHJhY2tz
KVtpbmRleF07CisgICAgUmVmUHRyPFRyYWNrQmFzZT4gdHJhY2tSZWYgPSAoKnRyYWNrcylbaW5k
ZXhdOwogICAgIHRyYWNrcy0+cmVtb3ZlKGluZGV4KTsKICAgICBzY2hlZHVsZVJlbW92ZVRyYWNr
RXZlbnQodHJhY2tSZWYucmVsZWFzZSgpKTsKIH0KIAotYm9vbCBUZXh0VHJhY2tMaXN0Ojpjb250
YWlucyhUZXh0VHJhY2sqIHRyYWNrKSBjb25zdAorYm9vbCBUZXh0VHJhY2tMaXN0Ojpjb250YWlu
cyhUcmFja0Jhc2UqIHRyYWNrKSBjb25zdAogewotICAgIGNvbnN0IFZlY3RvcjxSZWZQdHI8VGV4
dFRyYWNrPiA+KiB0cmFja3MgPSAwOwotICAgIAotICAgIGlmICh0cmFjay0+dHJhY2tUeXBlKCkg
PT0gVGV4dFRyYWNrOjpUcmFja0VsZW1lbnQpCisgICAgY29uc3QgVmVjdG9yPFJlZlB0cjxUcmFj
a0Jhc2U+ID4qIHRyYWNrcyA9IDA7CisgICAgVGV4dFRyYWNrOjpUZXh0VHJhY2tUeXBlIHR5cGUg
PSB0b1RleHRUcmFjayh0cmFjayktPnRyYWNrVHlwZSgpOworICAgIGlmICh0eXBlID09IFRleHRU
cmFjazo6VHJhY2tFbGVtZW50KQogICAgICAgICB0cmFja3MgPSAmbV9lbGVtZW50VHJhY2tzOwot
ICAgIGVsc2UgaWYgKHRyYWNrLT50cmFja1R5cGUoKSA9PSBUZXh0VHJhY2s6OkFkZFRyYWNrKQor
ICAgIGVsc2UgaWYgKHR5cGUgPT0gVGV4dFRyYWNrOjpBZGRUcmFjaykKICAgICAgICAgdHJhY2tz
ID0gJm1fYWRkVHJhY2tUcmFja3M7Ci0gICAgZWxzZSBpZiAodHJhY2stPnRyYWNrVHlwZSgpID09
IFRleHRUcmFjazo6SW5CYW5kKQorICAgIGVsc2UgaWYgKHR5cGUgPT0gVGV4dFRyYWNrOjpJbkJh
bmQpCiAgICAgICAgIHRyYWNrcyA9ICZtX2luYmFuZFRyYWNrczsKICAgICBlbHNlCiAgICAgICAg
IEFTU0VSVF9OT1RfUkVBQ0hFRCgpOwpAQCAtMjM0LDY0ICsyMjcsNCBAQCBjb25zdCBBdG9taWNT
dHJpbmcmIFRleHRUcmFja0xpc3Q6OmludGVyZmFjZU5hbWUoKSBjb25zdAogICAgIHJldHVybiBl
dmVudE5hbWVzKCkuaW50ZXJmYWNlRm9yVGV4dFRyYWNrTGlzdDsKIH0KIAotdm9pZCBUZXh0VHJh
Y2tMaXN0OjpzY2hlZHVsZUFkZFRyYWNrRXZlbnQoUGFzc1JlZlB0cjxUZXh0VHJhY2s+IHRyYWNr
KQotewotICAgIC8vIDQuOC4xMC4xMi4zIFNvdXJjaW5nIG91dC1vZi1iYW5kIHRleHQgdHJhY2tz
Ci0gICAgLy8gNC44LjEwLjEyLjQgVGV4dCB0cmFjayBBUEkKLSAgICAvLyAuLi4gdGhlbiBxdWV1
ZSBhIHRhc2sgdG8gZmlyZSBhbiBldmVudCB3aXRoIHRoZSBuYW1lIGFkZHRyYWNrLCB0aGF0IGRv
ZXMgbm90IAotICAgIC8vIGJ1YmJsZSBhbmQgaXMgbm90IGNhbmNlbGFibGUsIGFuZCB0aGF0IHVz
ZXMgdGhlIFRyYWNrRXZlbnQgaW50ZXJmYWNlLCB3aXRoIAotICAgIC8vIHRoZSB0cmFjayBhdHRy
aWJ1dGUgaW5pdGlhbGl6ZWQgdG8gdGhlIHRleHQgdHJhY2sncyBUZXh0VHJhY2sgb2JqZWN0LCBh
dCAKLSAgICAvLyB0aGUgbWVkaWEgZWxlbWVudCdzIHRleHRUcmFja3MgYXR0cmlidXRlJ3MgVGV4
dFRyYWNrTGlzdCBvYmplY3QuCi0KLSAgICBSZWZQdHI8VGV4dFRyYWNrPiB0cmFja1JlZiA9IHRy
YWNrOwotICAgIFRyYWNrRXZlbnRJbml0IGluaXRpYWxpemVyOwotICAgIGluaXRpYWxpemVyLnRy
YWNrID0gdHJhY2tSZWY7Ci0gICAgaW5pdGlhbGl6ZXIuYnViYmxlcyA9IGZhbHNlOwotICAgIGlu
aXRpYWxpemVyLmNhbmNlbGFibGUgPSBmYWxzZTsKLQotICAgIG1fcGVuZGluZ0V2ZW50cy5hcHBl
bmQoVHJhY2tFdmVudDo6Y3JlYXRlKGV2ZW50TmFtZXMoKS5hZGR0cmFja0V2ZW50LCBpbml0aWFs
aXplcikpOwotICAgIGlmICghbV9wZW5kaW5nRXZlbnRUaW1lci5pc0FjdGl2ZSgpKQotICAgICAg
ICBtX3BlbmRpbmdFdmVudFRpbWVyLnN0YXJ0T25lU2hvdCgwKTsKLX0KLQotdm9pZCBUZXh0VHJh
Y2tMaXN0OjpzY2hlZHVsZVJlbW92ZVRyYWNrRXZlbnQoUGFzc1JlZlB0cjxUZXh0VHJhY2s+IHRy
YWNrKQotewotICAgIC8vIDQuOC4xMC4xMi4zIFNvdXJjaW5nIG91dC1vZi1iYW5kIHRleHQgdHJh
Y2tzCi0gICAgLy8gV2hlbiBhIHRyYWNrIGVsZW1lbnQncyBwYXJlbnQgZWxlbWVudCBjaGFuZ2Vz
IGFuZCB0aGUgb2xkIHBhcmVudCB3YXMgYQotICAgIC8vIG1lZGlhIGVsZW1lbnQsIHRoZW4gdGhl
IHVzZXIgYWdlbnQgbXVzdCByZW1vdmUgdGhlIHRyYWNrIGVsZW1lbnQncwotICAgIC8vIGNvcnJl
c3BvbmRpbmcgdGV4dCB0cmFjayBmcm9tIHRoZSBtZWRpYSBlbGVtZW50J3MgbGlzdCBvZiB0ZXh0
IHRyYWNrcywKLSAgICAvLyBhbmQgdGhlbiBxdWV1ZSBhIHRhc2sgdG8gZmlyZSBhIHRydXN0ZWQg
ZXZlbnQgd2l0aCB0aGUgbmFtZSByZW1vdmV0cmFjaywKLSAgICAvLyB0aGF0IGRvZXMgbm90IGJ1
YmJsZSBhbmQgaXMgbm90IGNhbmNlbGFibGUsIGFuZCB0aGF0IHVzZXMgdGhlIFRyYWNrRXZlbnQK
LSAgICAvLyBpbnRlcmZhY2UsIHdpdGggdGhlIHRyYWNrIGF0dHJpYnV0ZSBpbml0aWFsaXplZCB0
byB0aGUgdGV4dCB0cmFjaydzCi0gICAgLy8gVGV4dFRyYWNrIG9iamVjdCwgYXQgdGhlIG1lZGlh
IGVsZW1lbnQncyB0ZXh0VHJhY2tzIGF0dHJpYnV0ZSdzCi0gICAgLy8gVGV4dFRyYWNrTGlzdCBv
YmplY3QuCi0KLSAgICBSZWZQdHI8VHJhY2tCYXNlPiB0cmFja1JlZiA9IHRyYWNrOwotICAgIFRy
YWNrRXZlbnRJbml0IGluaXRpYWxpemVyOwotICAgIGluaXRpYWxpemVyLnRyYWNrID0gdHJhY2tS
ZWY7Ci0gICAgaW5pdGlhbGl6ZXIuYnViYmxlcyA9IGZhbHNlOwotICAgIGluaXRpYWxpemVyLmNh
bmNlbGFibGUgPSBmYWxzZTsKLQotICAgIG1fcGVuZGluZ0V2ZW50cy5hcHBlbmQoVHJhY2tFdmVu
dDo6Y3JlYXRlKGV2ZW50TmFtZXMoKS5yZW1vdmV0cmFja0V2ZW50LCBpbml0aWFsaXplcikpOwot
ICAgIGlmICghbV9wZW5kaW5nRXZlbnRUaW1lci5pc0FjdGl2ZSgpKQotICAgICAgICBtX3BlbmRp
bmdFdmVudFRpbWVyLnN0YXJ0T25lU2hvdCgwKTsKLX0KLQotdm9pZCBUZXh0VHJhY2tMaXN0Ojph
c3luY0V2ZW50VGltZXJGaXJlZChUaW1lcjxUZXh0VHJhY2tMaXN0PiopCi17Ci0gICAgVmVjdG9y
PFJlZlB0cjxFdmVudD4gPiBwZW5kaW5nRXZlbnRzOwotCi0gICAgKyttX2Rpc3BhdGNoaW5nRXZl
bnRzOwotICAgIG1fcGVuZGluZ0V2ZW50cy5zd2FwKHBlbmRpbmdFdmVudHMpOwotICAgIHNpemVf
dCBjb3VudCA9IHBlbmRpbmdFdmVudHMuc2l6ZSgpOwotICAgIGZvciAoc2l6ZV90IGluZGV4ID0g
MDsgaW5kZXggPCBjb3VudDsgKytpbmRleCkKLSAgICAgICAgZGlzcGF0Y2hFdmVudChwZW5kaW5n
RXZlbnRzW2luZGV4XS5yZWxlYXNlKCksIElHTk9SRV9FWENFUFRJT04pOwotICAgIC0tbV9kaXNw
YXRjaGluZ0V2ZW50czsKLX0KLQotTm9kZSogVGV4dFRyYWNrTGlzdDo6b3duZXIoKSBjb25zdAot
ewotICAgIHJldHVybiBtX293bmVyOwotfQotCiAjZW5kaWYKZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJDb3JlL2h0bWwvdHJhY2svVGV4dFRyYWNrTGlzdC5oIGIvU291cmNlL1dlYkNvcmUvaHRtbC90
cmFjay9UZXh0VHJhY2tMaXN0LmgKaW5kZXggMzJhNjI1ZWUwZDljNzk2MDdmN2U1YWVhNDI4OGYy
NDU3ZGUxYmUwNC4uNWRkM2JlZjg0NjY5M2I1ZDk4N2ZkZmZmNjZiZDgwMTE1ODM2YjRjMSAxMDA2
NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvaHRtbC90cmFjay9UZXh0VHJhY2tMaXN0LmgKKysrIGIv
U291cmNlL1dlYkNvcmUvaHRtbC90cmFjay9UZXh0VHJhY2tMaXN0LmgKQEAgLTI4LDIxICsyOCwx
MyBAQAogCiAjaWYgRU5BQkxFKFZJREVPX1RSQUNLKQogCi0jaW5jbHVkZSAiRXZlbnRMaXN0ZW5l
ci5oIgotI2luY2x1ZGUgIkV2ZW50VGFyZ2V0LmgiCi0jaW5jbHVkZSAiVGltZXIuaCIKLSNpbmNs
dWRlIDxhbGdvcml0aG0+Ci0jaW5jbHVkZSA8d3RmL1Bhc3NSZWZQdHIuaD4KLSNpbmNsdWRlIDx3
dGYvUmVmQ291bnRlZC5oPgotI2luY2x1ZGUgPHd0Zi9WZWN0b3IuaD4KKyNpbmNsdWRlICJUcmFj
a0xpc3RCYXNlLmgiCiAKIG5hbWVzcGFjZSBXZWJDb3JlIHsKIAotY2xhc3MgSFRNTE1lZGlhRWxl
bWVudDsKIGNsYXNzIFRleHRUcmFjazsKLWNsYXNzIFRleHRUcmFja0xpc3Q7CiAKLWNsYXNzIFRl
eHRUcmFja0xpc3QgOiBwdWJsaWMgUmVmQ291bnRlZDxUZXh0VHJhY2tMaXN0PiwgcHVibGljIEV2
ZW50VGFyZ2V0IHsKK2NsYXNzIFRleHRUcmFja0xpc3QgOiBwdWJsaWMgVHJhY2tMaXN0QmFzZSB7
CiBwdWJsaWM6CiAgICAgc3RhdGljIFBhc3NSZWZQdHI8VGV4dFRyYWNrTGlzdD4gY3JlYXRlKEhU
TUxNZWRpYUVsZW1lbnQqIG93bmVyLCBTY3JpcHRFeGVjdXRpb25Db250ZXh0KiBjb250ZXh0KQog
ICAgIHsKQEAgLTUwLDU2ICs0MiwyNSBAQCBwdWJsaWM6CiAgICAgfQogICAgIH5UZXh0VHJhY2tM
aXN0KCk7CiAKLSAgICB1bnNpZ25lZCBsZW5ndGgoKSBjb25zdDsKKyAgICB2aXJ0dWFsIHVuc2ln
bmVkIGxlbmd0aCgpIGNvbnN0IE9WRVJSSURFOwogICAgIGludCBnZXRUcmFja0luZGV4KFRleHRU
cmFjayopOwogICAgIGludCBnZXRUcmFja0luZGV4UmVsYXRpdmVUb1JlbmRlcmVkVHJhY2tzKFRl
eHRUcmFjayopOwotICAgIGJvb2wgY29udGFpbnMoVGV4dFRyYWNrKikgY29uc3Q7CisgICAgdmly
dHVhbCBib29sIGNvbnRhaW5zKFRyYWNrQmFzZSopIGNvbnN0IE9WRVJSSURFOwogCiAgICAgVGV4
dFRyYWNrKiBpdGVtKHVuc2lnbmVkIGluZGV4KTsKICAgICB2b2lkIGFwcGVuZChQYXNzUmVmUHRy
PFRleHRUcmFjaz4pOwotICAgIHZvaWQgcmVtb3ZlKFRleHRUcmFjayopOworICAgIHZpcnR1YWwg
dm9pZCByZW1vdmUoVHJhY2tCYXNlKikgT1ZFUlJJREU7CiAKICAgICAvLyBFdmVudFRhcmdldAog
ICAgIHZpcnR1YWwgY29uc3QgQXRvbWljU3RyaW5nJiBpbnRlcmZhY2VOYW1lKCkgY29uc3Q7Ci0g
ICAgdXNpbmcgUmVmQ291bnRlZDxUZXh0VHJhY2tMaXN0Pjo6cmVmOwotICAgIHVzaW5nIFJlZkNv
dW50ZWQ8VGV4dFRyYWNrTGlzdD46OmRlcmVmOwotICAgIHZpcnR1YWwgU2NyaXB0RXhlY3V0aW9u
Q29udGV4dCogc2NyaXB0RXhlY3V0aW9uQ29udGV4dCgpIGNvbnN0IHsgcmV0dXJuIG1fY29udGV4
dDsgfQotCi0gICAgREVGSU5FX0FUVFJJQlVURV9FVkVOVF9MSVNURU5FUihhZGR0cmFjayk7Ci0g
ICAgREVGSU5FX0FUVFJJQlVURV9FVkVOVF9MSVNURU5FUihyZW1vdmV0cmFjayk7Ci0KLSAgICB2
b2lkIGNsZWFyT3duZXIoKSB7IG1fb3duZXIgPSAwOyB9Ci0gICAgTm9kZSogb3duZXIoKSBjb25z
dDsKLQotICAgIGJvb2wgaXNGaXJpbmdFdmVudExpc3RlbmVycygpIHsgcmV0dXJuIG1fZGlzcGF0
Y2hpbmdFdmVudHM7IH0KIAogcHJpdmF0ZToKICAgICBUZXh0VHJhY2tMaXN0KEhUTUxNZWRpYUVs
ZW1lbnQqLCBTY3JpcHRFeGVjdXRpb25Db250ZXh0Kik7CiAKLSAgICAvLyBFdmVudFRhcmdldAot
ICAgIHZpcnR1YWwgdm9pZCByZWZFdmVudFRhcmdldCgpIHsgcmVmKCk7IH0KLSAgICB2aXJ0dWFs
IHZvaWQgZGVyZWZFdmVudFRhcmdldCgpIHsgZGVyZWYoKTsgfQotICAgIHZpcnR1YWwgRXZlbnRU
YXJnZXREYXRhKiBldmVudFRhcmdldERhdGEoKSB7IHJldHVybiAmbV9ldmVudFRhcmdldERhdGE7
IH0KLSAgICB2aXJ0dWFsIEV2ZW50VGFyZ2V0RGF0YSogZW5zdXJlRXZlbnRUYXJnZXREYXRhKCkg
eyByZXR1cm4gJm1fZXZlbnRUYXJnZXREYXRhOyB9Ci0KLSAgICB2b2lkIHNjaGVkdWxlQWRkVHJh
Y2tFdmVudChQYXNzUmVmUHRyPFRleHRUcmFjaz4pOwotICAgIHZvaWQgc2NoZWR1bGVSZW1vdmVU
cmFja0V2ZW50KFBhc3NSZWZQdHI8VGV4dFRyYWNrPik7Ci0gICAgdm9pZCBhc3luY0V2ZW50VGlt
ZXJGaXJlZChUaW1lcjxUZXh0VHJhY2tMaXN0PiopOwotCiAgICAgdm9pZCBpbnZhbGlkYXRlVHJh
Y2tJbmRleGVzQWZ0ZXJUcmFjayhUZXh0VHJhY2sqKTsKIAotICAgIFNjcmlwdEV4ZWN1dGlvbkNv
bnRleHQqIG1fY29udGV4dDsKLSAgICBIVE1MTWVkaWFFbGVtZW50KiBtX293bmVyOwotCi0gICAg
VmVjdG9yPFJlZlB0cjxFdmVudD4gPiBtX3BlbmRpbmdFdmVudHM7Ci0gICAgVGltZXI8VGV4dFRy
YWNrTGlzdD4gbV9wZW5kaW5nRXZlbnRUaW1lcjsKLQotICAgIEV2ZW50VGFyZ2V0RGF0YSBtX2V2
ZW50VGFyZ2V0RGF0YTsKLSAgICBWZWN0b3I8UmVmUHRyPFRleHRUcmFjaz4gPiBtX2FkZFRyYWNr
VHJhY2tzOwotICAgIFZlY3RvcjxSZWZQdHI8VGV4dFRyYWNrPiA+IG1fZWxlbWVudFRyYWNrczsK
LSAgICBWZWN0b3I8UmVmUHRyPFRleHRUcmFjaz4gPiBtX2luYmFuZFRyYWNrczsKLQotICAgIGlu
dCBtX2Rpc3BhdGNoaW5nRXZlbnRzOworICAgIFZlY3RvcjxSZWZQdHI8VHJhY2tCYXNlPiA+IG1f
YWRkVHJhY2tUcmFja3M7CisgICAgVmVjdG9yPFJlZlB0cjxUcmFja0Jhc2U+ID4gbV9lbGVtZW50
VHJhY2tzOwogfTsKIAogfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQpkaWZmIC0tZ2l0IGEvU291cmNl
L1dlYkNvcmUvaHRtbC90cmFjay9UcmFja0Jhc2UuY3BwIGIvU291cmNlL1dlYkNvcmUvaHRtbC90
cmFjay9UcmFja0Jhc2UuY3BwCmluZGV4IDZhMmMzNTgyM2U2MTk2MmEzN2M5ZjhmNGNlZmQ5ODlk
ZGFiNTBkZmUuLmRlNGUzODU3NGNkODE4MDJhNmFlMDEwMWEzMDBjNmIyOTBiOTgyYWMgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvdHJhY2svVHJhY2tCYXNlLmNwcAorKysgYi9Tb3Vy
Y2UvV2ViQ29yZS9odG1sL3RyYWNrL1RyYWNrQmFzZS5jcHAKQEAgLTMwLDggKzMwLDEwIEBACiAK
IG5hbWVzcGFjZSBXZWJDb3JlIHsKIAotVHJhY2tCYXNlOjpUcmFja0Jhc2UoU2NyaXB0RXhlY3V0
aW9uQ29udGV4dCogY29udGV4dCwgVHlwZSB0eXBlKQotICAgIDogbV9zY3JpcHRFeGVjdXRpb25D
b250ZXh0KGNvbnRleHQpCitUcmFja0Jhc2U6OlRyYWNrQmFzZShUeXBlIHR5cGUsIGNvbnN0IEF0
b21pY1N0cmluZyYgbGFiZWwsIGNvbnN0IEF0b21pY1N0cmluZyYgbGFuZ3VhZ2UpCisgICAgOiBt
X21lZGlhRWxlbWVudCgwKQorICAgICwgbV9sYWJlbChsYWJlbCkKKyAgICAsIG1fbGFuZ3VhZ2Uo
bGFuZ3VhZ2UpCiB7CiAgICAgQVNTRVJUKHR5cGUgIT0gQmFzZVRyYWNrKTsKICAgICBtX3R5cGUg
PSB0eXBlOwpAQCAtNDEsMjQgKzQzLDE0IEBAIFRyYWNrQmFzZTo6flRyYWNrQmFzZSgpCiB7CiB9
CiAKLWNvbnN0IEF0b21pY1N0cmluZyYgVHJhY2tCYXNlOjppbnRlcmZhY2VOYW1lKCkgY29uc3QK
K3ZvaWQgVHJhY2tCYXNlOjpzZXRLaW5kKGNvbnN0IEF0b21pY1N0cmluZyYga2luZCkKIHsKLSAg
ICByZXR1cm4gZXZlbnROYW1lcygpLmludGVyZmFjZUZvclRleHRUcmFjazsKLX0KLQotU2NyaXB0
RXhlY3V0aW9uQ29udGV4dCogVHJhY2tCYXNlOjpzY3JpcHRFeGVjdXRpb25Db250ZXh0KCkgY29u
c3QKLXsKLSAgICByZXR1cm4gbV9zY3JpcHRFeGVjdXRpb25Db250ZXh0OwotfQorICAgIFN0cmlu
ZyBvbGRLaW5kID0gbV9raW5kOwogCi1FdmVudFRhcmdldERhdGEqIFRyYWNrQmFzZTo6ZXZlbnRU
YXJnZXREYXRhKCkKLXsKLSAgICByZXR1cm4gJm1fZXZlbnRUYXJnZXREYXRhOwotfQotCi1FdmVu
dFRhcmdldERhdGEqIFRyYWNrQmFzZTo6ZW5zdXJlRXZlbnRUYXJnZXREYXRhKCkKLXsKLSAgICBy
ZXR1cm4gJm1fZXZlbnRUYXJnZXREYXRhOworICAgIGlmIChpc1ZhbGlkS2luZChraW5kKSkKKyAg
ICAgICAgbV9raW5kID0ga2luZDsKKyAgICBlbHNlCisgICAgICAgIG1fa2luZCA9IGRlZmF1bHRL
aW5kS2V5d29yZCgpOwogfQogCiB9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViQ29yZS9odG1sL3RyYWNrL1RyYWNrQmFzZS5oIGIvU291cmNlL1dlYkNvcmUvaHRt
bC90cmFjay9UcmFja0Jhc2UuaAppbmRleCBjMDA2NjBmMDUzYWQ2NDk0MTY1OGYyMGQ3NTAzMGNh
YmM5MzI3OTg5Li41NDYyODk4YzBlMDU3ZTIyNzBjOTE0MWE2YWQ1MmI0MzJkYTcyNDhjIDEwMDY0
NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9odG1sL3RyYWNrL1RyYWNrQmFzZS5oCisrKyBiL1NvdXJj
ZS9XZWJDb3JlL2h0bWwvdHJhY2svVHJhY2tCYXNlLmgKQEAgLTMzLDM1ICszMyw0MiBAQAogCiBu
YW1lc3BhY2UgV2ViQ29yZSB7CiAKLWNsYXNzIFNjcmlwdEV4ZWN1dGlvbkNvbnRleHQ7CitjbGFz
cyBIVE1MTWVkaWFFbGVtZW50OwogCi1jbGFzcyBUcmFja0Jhc2UgOiBwdWJsaWMgUmVmQ291bnRl
ZDxUcmFja0Jhc2U+LCBwdWJsaWMgRXZlbnRUYXJnZXQgeworY2xhc3MgVHJhY2tCYXNlIDogcHVi
bGljIFJlZkNvdW50ZWQ8VHJhY2tCYXNlPiB7CiBwdWJsaWM6CiAgICAgdmlydHVhbCB+VHJhY2tC
YXNlKCk7CiAKICAgICBlbnVtIFR5cGUgeyBCYXNlVHJhY2ssIFRleHRUcmFjaywgQXVkaW9UcmFj
aywgVmlkZW9UcmFjayB9OwogICAgIFR5cGUgdHlwZSgpIGNvbnN0IHsgcmV0dXJuIG1fdHlwZTsg
fQogCi0gICAgdmlydHVhbCBjb25zdCBBdG9taWNTdHJpbmcmIGludGVyZmFjZU5hbWUoKSBjb25z
dDsKLSAgICB2aXJ0dWFsIFNjcmlwdEV4ZWN1dGlvbkNvbnRleHQqIHNjcmlwdEV4ZWN1dGlvbkNv
bnRleHQoKSBjb25zdDsKLSAgICAKLSAgICB1c2luZyBSZWZDb3VudGVkPFRyYWNrQmFzZT46OnJl
ZjsKLSAgICB1c2luZyBSZWZDb3VudGVkPFRyYWNrQmFzZT46OmRlcmVmOworICAgIHZvaWQgc2V0
TWVkaWFFbGVtZW50KEhUTUxNZWRpYUVsZW1lbnQqIGVsZW1lbnQpIHsgbV9tZWRpYUVsZW1lbnQg
PSBlbGVtZW50OyB9CisgICAgSFRNTE1lZGlhRWxlbWVudCogbWVkaWFFbGVtZW50KCkgeyByZXR1
cm4gbV9tZWRpYUVsZW1lbnQ7IH0KKworICAgIEF0b21pY1N0cmluZyBraW5kKCkgY29uc3QgeyBy
ZXR1cm4gbV9raW5kOyB9CisgICAgdmlydHVhbCB2b2lkIHNldEtpbmQoY29uc3QgQXRvbWljU3Ry
aW5nJik7CisKKyAgICBBdG9taWNTdHJpbmcgbGFiZWwoKSBjb25zdCB7IHJldHVybiBtX2xhYmVs
OyB9CisgICAgdm9pZCBzZXRMYWJlbChjb25zdCBBdG9taWNTdHJpbmcmIGxhYmVsKSB7IG1fbGFi
ZWwgPSBsYWJlbDsgfQorCisgICAgQXRvbWljU3RyaW5nIGxhbmd1YWdlKCkgY29uc3QgeyByZXR1
cm4gbV9sYW5ndWFnZTsgfQorICAgIHZvaWQgc2V0TGFuZ3VhZ2UoY29uc3QgQXRvbWljU3RyaW5n
JiBsYW5ndWFnZSkgeyBtX2xhbmd1YWdlID0gbGFuZ3VhZ2U7IH0KKworICAgIHZpcnR1YWwgdm9p
ZCBjbGVhckNsaWVudCgpID0gMDsKIAogcHJvdGVjdGVkOgotICAgIFRyYWNrQmFzZShTY3JpcHRF
eGVjdXRpb25Db250ZXh0KiwgVHlwZSk7Ci0gICAgCi0gICAgdmlydHVhbCBFdmVudFRhcmdldERh
dGEqIGV2ZW50VGFyZ2V0RGF0YSgpOwotICAgIHZpcnR1YWwgRXZlbnRUYXJnZXREYXRhKiBlbnN1
cmVFdmVudFRhcmdldERhdGEoKTsKKyAgICBUcmFja0Jhc2UoVHlwZSwgY29uc3QgQXRvbWljU3Ry
aW5nJiBsYWJlbCwgY29uc3QgQXRvbWljU3RyaW5nJiBsYW5ndWFnZSk7CisKKyAgICB2aXJ0dWFs
IGJvb2wgaXNWYWxpZEtpbmQoY29uc3QgQXRvbWljU3RyaW5nJikgY29uc3QgPSAwOworICAgIHZp
cnR1YWwgY29uc3QgQXRvbWljU3RyaW5nJiBkZWZhdWx0S2luZEtleXdvcmQoKSBjb25zdCA9IDA7
CisKKyAgICBIVE1MTWVkaWFFbGVtZW50KiBtX21lZGlhRWxlbWVudDsKIAogcHJpdmF0ZToKICAg
ICBUeXBlIG1fdHlwZTsKLSAgICAKLSAgICB2aXJ0dWFsIHZvaWQgcmVmRXZlbnRUYXJnZXQoKSB7
IHJlZigpOyB9Ci0gICAgdmlydHVhbCB2b2lkIGRlcmVmRXZlbnRUYXJnZXQoKSB7IGRlcmVmKCk7
IH0KLSAgICAKLSAgICBTY3JpcHRFeGVjdXRpb25Db250ZXh0KiBtX3NjcmlwdEV4ZWN1dGlvbkNv
bnRleHQ7Ci0gICAgRXZlbnRUYXJnZXREYXRhIG1fZXZlbnRUYXJnZXREYXRhOworICAgIEF0b21p
Y1N0cmluZyBtX2tpbmQ7CisgICAgQXRvbWljU3RyaW5nIG1fbGFiZWw7CisgICAgQXRvbWljU3Ry
aW5nIG1fbGFuZ3VhZ2U7CiB9OwogCiB9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViQ29yZS9odG1sL3RyYWNrL1RyYWNrTGlzdEJhc2UuY3BwIGIvU291cmNlL1dl
YkNvcmUvaHRtbC90cmFjay9UcmFja0xpc3RCYXNlLmNwcApuZXcgZmlsZSBtb2RlIDEwMDY0NApp
bmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi41YzUwYmNiMDNm
NDY4ZWU1ZjJiNjBjMDIyMTI4NDZjMzNhNWQzODY5Ci0tLSAvZGV2L251bGwKKysrIGIvU291cmNl
L1dlYkNvcmUvaHRtbC90cmFjay9UcmFja0xpc3RCYXNlLmNwcApAQCAtMCwwICsxLDE3OCBAQAor
LyoKKyAqIENvcHlyaWdodCAoQykgMjAxMSwgMjAxMiBBcHBsZSBJbmMuICBBbGwgcmlnaHRzIHJl
c2VydmVkLgorICoKKyAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5h
cnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAorICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVk
IHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCisgKiBhcmUgbWV0OgorICog
MS4gUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBj
b3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBm
b2xsb3dpbmcgZGlzY2xhaW1lci4KKyAqIDIuIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9y
bSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMg
bGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCisg
KiAgICBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0
aGUgZGlzdHJpYnV0aW9uLgorICoKKyAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgQVBQ
TEUgQ09NUFVURVIsIElOQy4gYGBBUyBJUycnIEFORCBBTlkKKyAqIEVYUFJFU1MgT1IgSU1QTElF
RCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgVEhFCisgKiBJTVBM
SUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJ
Q1VMQVIKKyAqIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuICBJTiBOTyBFVkVOVCBTSEFMTCBBUFBM
RSBDT01QVVRFUiwgSU5DLiBPUgorICogQ09OVFJJQlVUT1JTIEJFIExJQUJMRSBGT1IgQU5ZIERJ
UkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsCisgKiBFWEVNUExBUlksIE9SIENP
TlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sCisgKiBQ
Uk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwg
REFUQSwgT1IKKyAqIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBD
QVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkKKyAqIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05U
UkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVAorICogKElOQ0xVRElORyBORUdMSUdFTkNF
IE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFCisgKiBPRiBU
SElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0gg
REFNQUdFLiAKKyAqLworCisjaW5jbHVkZSAiY29uZmlnLmgiCisKKyNpZiBFTkFCTEUoVklERU9f
VFJBQ0spCisKKyNpbmNsdWRlICJUcmFja0xpc3RCYXNlLmgiCisKKyNpbmNsdWRlICJFdmVudE5h
bWVzLmgiCisjaW5jbHVkZSAiSFRNTE1lZGlhRWxlbWVudC5oIgorI2luY2x1ZGUgIlNjcmlwdEV4
ZWN1dGlvbkNvbnRleHQuaCIKKyNpbmNsdWRlICJUcmFja0Jhc2UuaCIKKyNpbmNsdWRlICJUcmFj
a0V2ZW50LmgiCisKK3VzaW5nIG5hbWVzcGFjZSBXZWJDb3JlOworCitUcmFja0xpc3RCYXNlOjpU
cmFja0xpc3RCYXNlKEhUTUxNZWRpYUVsZW1lbnQqIG93bmVyLCBTY3JpcHRFeGVjdXRpb25Db250
ZXh0KiBjb250ZXh0KQorICAgIDogbV9jb250ZXh0KGNvbnRleHQpCisgICAgLCBtX293bmVyKG93
bmVyKQorICAgICwgbV9wZW5kaW5nRXZlbnRUaW1lcih0aGlzLCAmVHJhY2tMaXN0QmFzZTo6YXN5
bmNFdmVudFRpbWVyRmlyZWQpCisgICAgLCBtX2Rpc3BhdGNoaW5nRXZlbnRzKDApCit7CisgICAg
QVNTRVJUKGNvbnRleHQtPmlzRG9jdW1lbnQoKSk7Cit9CisKK1RyYWNrTGlzdEJhc2U6On5UcmFj
a0xpc3RCYXNlKCkKK3sKK30KKwordW5zaWduZWQgVHJhY2tMaXN0QmFzZTo6bGVuZ3RoKCkgY29u
c3QKK3sKKyAgICByZXR1cm4gbV9pbmJhbmRUcmFja3Muc2l6ZSgpOworfQorCit2b2lkIFRyYWNr
TGlzdEJhc2U6OnJlbW92ZShUcmFja0Jhc2UqIHRyYWNrKQoreworICAgIHNpemVfdCBpbmRleCA9
IG1faW5iYW5kVHJhY2tzLmZpbmQodHJhY2spOworICAgIEFTU0VSVChpbmRleCAhPSBub3RGb3Vu
ZCk7CisKKyAgICBBU1NFUlQodHJhY2stPm1lZGlhRWxlbWVudCgpID09IG1fb3duZXIpOworICAg
IHRyYWNrLT5zZXRNZWRpYUVsZW1lbnQoMCk7CisKKyAgICBSZWZQdHI8VHJhY2tCYXNlPiB0cmFj
a1JlZiA9IG1faW5iYW5kVHJhY2tzW2luZGV4XTsKKworICAgIG1faW5iYW5kVHJhY2tzLnJlbW92
ZShpbmRleCk7CisKKyAgICBzY2hlZHVsZVJlbW92ZVRyYWNrRXZlbnQodHJhY2tSZWYucmVsZWFz
ZSgpKTsKK30KKworYm9vbCBUcmFja0xpc3RCYXNlOjpjb250YWlucyhUcmFja0Jhc2UqIHRyYWNr
KSBjb25zdAoreworICAgIHJldHVybiBtX2luYmFuZFRyYWNrcy5maW5kKHRyYWNrKSAhPSBub3RG
b3VuZDsKK30KKwordm9pZCBUcmFja0xpc3RCYXNlOjpzY2hlZHVsZUFkZFRyYWNrRXZlbnQoUGFz
c1JlZlB0cjxUcmFja0Jhc2U+IHRyYWNrKQoreworICAgIC8vIDQuOC4xMC41IExvYWRpbmcgdGhl
IG1lZGlhIHJlc291cmNlCisgICAgLy8gLi4uCisgICAgLy8gRmlyZSBhIHRydXN0ZWQgZXZlbnQg
d2l0aCB0aGUgbmFtZSBhZGR0cmFjaywgdGhhdCBkb2VzIG5vdCBidWJibGUgYW5kIGlzCisgICAg
Ly8gbm90IGNhbmNlbGFibGUsIGFuZCB0aGF0IHVzZXMgdGhlIFRyYWNrRXZlbnQgaW50ZXJmYWNl
LCB3aXRoIHRoZSB0cmFjaworICAgIC8vIGF0dHJpYnV0ZSBpbml0aWFsaXplZCB0byB0aGUgbmV3
IEF1ZGlvVHJhY2sgb2JqZWN0LCBhdCB0aGlzCisgICAgLy8gQXVkaW9UcmFja0xpc3Qgb2JqZWN0
LgorICAgIC8vIC4uLgorICAgIC8vIEZpcmUgYSB0cnVzdGVkIGV2ZW50IHdpdGggdGhlIG5hbWUg
YWRkdHJhY2ssIHRoYXQgZG9lcyBub3QgYnViYmxlIGFuZCBpcworICAgIC8vIG5vdCBjYW5jZWxh
YmxlLCBhbmQgdGhhdCB1c2VzIHRoZSBUcmFja0V2ZW50IGludGVyZmFjZSwgd2l0aCB0aGUgdHJh
Y2sKKyAgICAvLyBhdHRyaWJ1dGUgaW5pdGlhbGl6ZWQgdG8gdGhlIG5ldyBWaWRlb1RyYWNrIG9i
amVjdCwgYXQgdGhpcworICAgIC8vIFZpZGVvVHJhY2tMaXN0IG9iamVjdC4KKworICAgIC8vIDQu
OC4xMC4xMi4zIFNvdXJjaW5nIG91dC1vZi1iYW5kIHRleHQgdHJhY2tzCisgICAgLy8gNC44LjEw
LjEyLjQgVGV4dCB0cmFjayBBUEkKKyAgICAvLyAuLi4gdGhlbiBxdWV1ZSBhIHRhc2sgdG8gZmly
ZSBhbiBldmVudCB3aXRoIHRoZSBuYW1lIGFkZHRyYWNrLCB0aGF0IGRvZXMgbm90CisgICAgLy8g
YnViYmxlIGFuZCBpcyBub3QgY2FuY2VsYWJsZSwgYW5kIHRoYXQgdXNlcyB0aGUgVHJhY2tFdmVu
dCBpbnRlcmZhY2UsIHdpdGgKKyAgICAvLyB0aGUgdHJhY2sgYXR0cmlidXRlIGluaXRpYWxpemVk
IHRvIHRoZSB0ZXh0IHRyYWNrJ3MgVGV4dFRyYWNrIG9iamVjdCwgYXQKKyAgICAvLyB0aGUgbWVk
aWEgZWxlbWVudCdzIHRleHRUcmFja3MgYXR0cmlidXRlJ3MgVGV4dFRyYWNrTGlzdCBvYmplY3Qu
IAorCisgICAgUmVmUHRyPFRyYWNrQmFzZT4gdHJhY2tSZWYgPSB0cmFjazsKKyAgICBUcmFja0V2
ZW50SW5pdCBpbml0aWFsaXplcjsKKyAgICBpbml0aWFsaXplci50cmFjayA9IHRyYWNrUmVmOwor
ICAgIGluaXRpYWxpemVyLmJ1YmJsZXMgPSBmYWxzZTsKKyAgICBpbml0aWFsaXplci5jYW5jZWxh
YmxlID0gZmFsc2U7CisKKyAgICBtX3BlbmRpbmdFdmVudHMuYXBwZW5kKFRyYWNrRXZlbnQ6OmNy
ZWF0ZShldmVudE5hbWVzKCkuYWRkdHJhY2tFdmVudCwgaW5pdGlhbGl6ZXIpKTsKKyAgICBpZiAo
IW1fcGVuZGluZ0V2ZW50VGltZXIuaXNBY3RpdmUoKSkKKyAgICAgICAgbV9wZW5kaW5nRXZlbnRU
aW1lci5zdGFydE9uZVNob3QoMCk7Cit9CisKK3ZvaWQgVHJhY2tMaXN0QmFzZTo6c2NoZWR1bGVS
ZW1vdmVUcmFja0V2ZW50KFBhc3NSZWZQdHI8VHJhY2tCYXNlPiB0cmFjaykKK3sKKyAgICAvLyA0
LjguMTAuNiBPZmZzZXRzIGludG8gdGhlIG1lZGlhIHJlc291cmNlCisgICAgLy8gSWYgYXQgYW55
IHRpbWUgdGhlIHVzZXIgYWdlbnQgbGVhcm5zIHRoYXQgYW4gYXVkaW8gb3IgdmlkZW8gdHJhY2sg
aGFzCisgICAgLy8gZW5kZWQgYW5kIGFsbCBtZWRpYSBkYXRhIHJlbGF0aW5nIHRvIHRoYXQgdHJh
Y2sgY29ycmVzcG9uZHMgdG8gcGFydHMgb2YKKyAgICAvLyB0aGUgbWVkaWEgdGltZWxpbmUgdGhh
dCBhcmUgYmVmb3JlIHRoZSBlYXJsaWVzdCBwb3NzaWJsZSBwb3NpdGlvbiwgdGhlCisgICAgLy8g
dXNlciBhZ2VudCBtYXkgcXVldWUgYSB0YXNrIHRvIHJlbW92ZSB0aGUgdHJhY2sgZnJvbSB0aGUg
YXVkaW9UcmFja3MKKyAgICAvLyBhdHRyaWJ1dGUncyBBdWRpb1RyYWNrTGlzdCBvYmplY3Qgb3Ig
dGhlIHZpZGVvVHJhY2tzIGF0dHJpYnV0ZSdzCisgICAgLy8gVmlkZW9UcmFja0xpc3Qgb2JqZWN0
IGFzIGFwcHJvcHJpYXRlIGFuZCB0aGVuIGZpcmUgYSB0cnVzdGVkIGV2ZW50CisgICAgLy8gd2l0
aCB0aGUgbmFtZSByZW1vdmV0cmFjaywgdGhhdCBkb2VzIG5vdCBidWJibGUgYW5kIGlzIG5vdCBj
YW5jZWxhYmxlLAorICAgIC8vIGFuZCB0aGF0IHVzZXMgdGhlIFRyYWNrRXZlbnQgaW50ZXJmYWNl
LCB3aXRoIHRoZSB0cmFjayBhdHRyaWJ1dGUKKyAgICAvLyBpbml0aWFsaXplZCB0byB0aGUgQXVk
aW9UcmFjayBvciBWaWRlb1RyYWNrIG9iamVjdCByZXByZXNlbnRpbmcgdGhlCisgICAgLy8gdHJh
Y2ssIGF0IHRoZSBtZWRpYSBlbGVtZW50J3MgYWZvcmVtZW50aW9uZWQgQXVkaW9UcmFja0xpc3Qg
b3IKKyAgICAvLyBWaWRlb1RyYWNrTGlzdCBvYmplY3QuCisKKyAgICAvLyA0LjguMTAuMTIuMyBT
b3VyY2luZyBvdXQtb2YtYmFuZCB0ZXh0IHRyYWNrcworICAgIC8vIFdoZW4gYSB0cmFjayBlbGVt
ZW50J3MgcGFyZW50IGVsZW1lbnQgY2hhbmdlcyBhbmQgdGhlIG9sZCBwYXJlbnQgd2FzIGEKKyAg
ICAvLyBtZWRpYSBlbGVtZW50LCB0aGVuIHRoZSB1c2VyIGFnZW50IG11c3QgcmVtb3ZlIHRoZSB0
cmFjayBlbGVtZW50J3MKKyAgICAvLyBjb3JyZXNwb25kaW5nIHRleHQgdHJhY2sgZnJvbSB0aGUg
bWVkaWEgZWxlbWVudCdzIGxpc3Qgb2YgdGV4dCB0cmFja3MsCisgICAgLy8gYW5kIHRoZW4gcXVl
dWUgYSB0YXNrIHRvIGZpcmUgYSB0cnVzdGVkIGV2ZW50IHdpdGggdGhlIG5hbWUgcmVtb3ZldHJh
Y2ssCisgICAgLy8gdGhhdCBkb2VzIG5vdCBidWJibGUgYW5kIGlzIG5vdCBjYW5jZWxhYmxlLCBh
bmQgdGhhdCB1c2VzIHRoZSBUcmFja0V2ZW50CisgICAgLy8gaW50ZXJmYWNlLCB3aXRoIHRoZSB0
cmFjayBhdHRyaWJ1dGUgaW5pdGlhbGl6ZWQgdG8gdGhlIHRleHQgdHJhY2sncworICAgIC8vIFRl
eHRUcmFjayBvYmplY3QsIGF0IHRoZSBtZWRpYSBlbGVtZW50J3MgdGV4dFRyYWNrcyBhdHRyaWJ1
dGUncworICAgIC8vIFRleHRUcmFja0xpc3Qgb2JqZWN0LgorCisgICAgUmVmUHRyPFRyYWNrQmFz
ZT4gdHJhY2tSZWYgPSB0cmFjazsKKyAgICBUcmFja0V2ZW50SW5pdCBpbml0aWFsaXplcjsKKyAg
ICBpbml0aWFsaXplci50cmFjayA9IHRyYWNrUmVmOworICAgIGluaXRpYWxpemVyLmJ1YmJsZXMg
PSBmYWxzZTsKKyAgICBpbml0aWFsaXplci5jYW5jZWxhYmxlID0gZmFsc2U7CisKKyAgICBtX3Bl
bmRpbmdFdmVudHMuYXBwZW5kKFRyYWNrRXZlbnQ6OmNyZWF0ZShldmVudE5hbWVzKCkucmVtb3Zl
dHJhY2tFdmVudCwgaW5pdGlhbGl6ZXIpKTsKKyAgICBpZiAoIW1fcGVuZGluZ0V2ZW50VGltZXIu
aXNBY3RpdmUoKSkKKyAgICAgICAgbV9wZW5kaW5nRXZlbnRUaW1lci5zdGFydE9uZVNob3QoMCk7
Cit9CisKK3ZvaWQgVHJhY2tMaXN0QmFzZTo6c2NoZWR1bGVDaGFuZ2VFdmVudCgpCit7CisgICAg
Ly8gNC44LjEwLjYgT2Zmc2V0cyBpbnRvIHRoZSBtZWRpYSByZXNvdXJjZQorICAgIC8vIFdoZW5l
dmVyIGFuIGF1ZGlvIHRyYWNrIGluIGFuIEF1ZGlvVHJhY2tMaXN0IGlzIGVuYWJsZWQgb3IgZGlz
YWJsZWQsIHRoZQorICAgIC8vIHVzZXIgYWdlbnQgbXVzdCBxdWV1ZSBhIHRhc2sgdG8gZmlyZSBh
IHNpbXBsZSBldmVudCBuYW1lZCBjaGFuZ2UgYXQgdGhlCisgICAgLy8gQXVkaW9UcmFja0xpc3Qg
b2JqZWN0LgorICAgIC8vIC4uLgorICAgIC8vIFdoZW5ldmVyIGEgdHJhY2sgaW4gYSBWaWRlb1Ry
YWNrTGlzdCB0aGF0IHdhcyBwcmV2aW91c2x5IG5vdCBzZWxlY3RlZCBpcworICAgIC8vIHNlbGVj
dGVkLCB0aGUgdXNlciBhZ2VudCBtdXN0IHF1ZXVlIGEgdGFzayB0byBmaXJlIGEgc2ltcGxlIGV2
ZW50IG5hbWVkCisgICAgLy8gY2hhbmdlIGF0IHRoZSBWaWRlb1RyYWNrTGlzdCBvYmplY3QuCisK
KyAgICBFdmVudEluaXQgaW5pdGlhbGl6ZXI7CisgICAgaW5pdGlhbGl6ZXIuYnViYmxlcyA9IGZh
bHNlOworICAgIGluaXRpYWxpemVyLmNhbmNlbGFibGUgPSBmYWxzZTsKKworICAgIG1fcGVuZGlu
Z0V2ZW50cy5hcHBlbmQoRXZlbnQ6OmNyZWF0ZShldmVudE5hbWVzKCkuY2hhbmdlRXZlbnQsIGlu
aXRpYWxpemVyKSk7CisgICAgaWYgKCFtX3BlbmRpbmdFdmVudFRpbWVyLmlzQWN0aXZlKCkpCisg
ICAgICAgIG1fcGVuZGluZ0V2ZW50VGltZXIuc3RhcnRPbmVTaG90KDApOworfQorCit2b2lkIFRy
YWNrTGlzdEJhc2U6OmFzeW5jRXZlbnRUaW1lckZpcmVkKFRpbWVyPFRyYWNrTGlzdEJhc2U+KikK
K3sKKyAgICBWZWN0b3I8UmVmUHRyPEV2ZW50PiA+IHBlbmRpbmdFdmVudHM7CisKKyAgICArK21f
ZGlzcGF0Y2hpbmdFdmVudHM7CisgICAgbV9wZW5kaW5nRXZlbnRzLnN3YXAocGVuZGluZ0V2ZW50
cyk7CisgICAgc2l6ZV90IGNvdW50ID0gcGVuZGluZ0V2ZW50cy5zaXplKCk7CisgICAgZm9yIChz
aXplX3QgaW5kZXggPSAwOyBpbmRleCA8IGNvdW50OyArK2luZGV4KQorICAgICAgICBkaXNwYXRj
aEV2ZW50KHBlbmRpbmdFdmVudHNbaW5kZXhdLnJlbGVhc2UoKSwgSUdOT1JFX0VYQ0VQVElPTik7
CisgICAgLS1tX2Rpc3BhdGNoaW5nRXZlbnRzOworfQorCisjZW5kaWYKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJDb3JlL2h0bWwvdHJhY2svVHJhY2tMaXN0QmFzZS5oIGIvU291cmNlL1dlYkNvcmUv
aHRtbC90cmFjay9UcmFja0xpc3RCYXNlLmgKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uYmFlN2E5ZjA0Mjg5MDFmZDNl
YTIwNjFjNTY5MjY3MmM4NGMzZDFkYgotLS0gL2Rldi9udWxsCisrKyBiL1NvdXJjZS9XZWJDb3Jl
L2h0bWwvdHJhY2svVHJhY2tMaXN0QmFzZS5oCkBAIC0wLDAgKzEsMTAxIEBACisvKgorICogQ29w
eXJpZ2h0IChDKSAyMDExLCAyMDEyIEFwcGxlIEluYy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisg
KgorICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywg
d2l0aCBvciB3aXRob3V0CisgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQg
dGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKKyAqIGFyZSBtZXQ6CisgKiAxLiBSZWRpc3Ry
aWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAor
ICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBk
aXNjbGFpbWVyLgorICogMi4gUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVw
cm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNv
bmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKKyAqICAgIGRvY3Vt
ZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmli
dXRpb24uCisgKgorICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBBUFBMRSBDT01QVVRF
UiwgSU5DLiBgYEFTIElTJycgQU5EIEFOWQorICogRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJ
RVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBUSEUKKyAqIElNUExJRUQgV0FSUkFO
VElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUgorICog
UFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gIElOIE5PIEVWRU5UIFNIQUxMIEFQUExFIENPTVBVVEVS
LCBJTkMuIE9SCisgKiBDT05UUklCVVRPUlMgQkUgTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJ
UkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwKKyAqIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElB
TCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywKKyAqIFBST0NVUkVNRU5U
IE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLCBEQVRBLCBPUgor
ICogUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQg
T04gQU5ZIFRIRU9SWQorICogT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJ
Q1QgTElBQklMSVRZLCBPUiBUT1JUCisgKiAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJX
SVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UKKyAqIE9GIFRISVMgU09GVFdB
UkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuIAor
ICovCisKKyNpZm5kZWYgVHJhY2tMaXN0QmFzZV9oCisjZGVmaW5lIFRyYWNrTGlzdEJhc2VfaAor
CisjaWYgRU5BQkxFKFZJREVPX1RSQUNLKQorCisjaW5jbHVkZSAiRXZlbnRMaXN0ZW5lci5oIgor
I2luY2x1ZGUgIkV2ZW50VGFyZ2V0LmgiCisjaW5jbHVkZSAiVGltZXIuaCIKKyNpbmNsdWRlIDx3
dGYvUGFzc1JlZlB0ci5oPgorI2luY2x1ZGUgPHd0Zi9SZWZDb3VudGVkLmg+CisjaW5jbHVkZSA8
d3RmL1ZlY3Rvci5oPgorCituYW1lc3BhY2UgV2ViQ29yZSB7CisKK2NsYXNzIEhUTUxNZWRpYUVs
ZW1lbnQ7CitjbGFzcyBUcmFja0Jhc2U7CisKK2NsYXNzIFRyYWNrTGlzdEJhc2UgOiBwdWJsaWMg
UmVmQ291bnRlZDxUcmFja0xpc3RCYXNlPiwgcHVibGljIEV2ZW50VGFyZ2V0IHsKK3B1YmxpYzoK
KyAgICB+VHJhY2tMaXN0QmFzZSgpOworCisgICAgdmlydHVhbCB1bnNpZ25lZCBsZW5ndGgoKSBj
b25zdDsKKyAgICB2aXJ0dWFsIGJvb2wgY29udGFpbnMoVHJhY2tCYXNlKikgY29uc3Q7CisgICAg
dmlydHVhbCB2b2lkIHJlbW92ZShUcmFja0Jhc2UqKTsKKworICAgIC8vIEV2ZW50VGFyZ2V0Cisg
ICAgdmlydHVhbCBjb25zdCBBdG9taWNTdHJpbmcmIGludGVyZmFjZU5hbWUoKSBjb25zdCA9IDA7
CisgICAgdXNpbmcgUmVmQ291bnRlZDxUcmFja0xpc3RCYXNlPjo6cmVmOworICAgIHVzaW5nIFJl
ZkNvdW50ZWQ8VHJhY2tMaXN0QmFzZT46OmRlcmVmOworICAgIHZpcnR1YWwgU2NyaXB0RXhlY3V0
aW9uQ29udGV4dCogc2NyaXB0RXhlY3V0aW9uQ29udGV4dCgpIGNvbnN0IHsgcmV0dXJuIG1fY29u
dGV4dDsgfQorCisgICAgREVGSU5FX0FUVFJJQlVURV9FVkVOVF9MSVNURU5FUihhZGR0cmFjayk7
CisgICAgREVGSU5FX0FUVFJJQlVURV9FVkVOVF9MSVNURU5FUihjaGFuZ2UpOworICAgIERFRklO
RV9BVFRSSUJVVEVfRVZFTlRfTElTVEVORVIocmVtb3ZldHJhY2spOworCisgICAgdm9pZCBjbGVh
ck93bmVyKCkgeyBtX293bmVyID0gMDsgfQorICAgIEhUTUxNZWRpYUVsZW1lbnQqIG93bmVyKCkg
Y29uc3QgeyByZXR1cm4gbV9vd25lcjsgfQorCisgICAgYm9vbCBpc0ZpcmluZ0V2ZW50TGlzdGVu
ZXJzKCkgeyByZXR1cm4gbV9kaXNwYXRjaGluZ0V2ZW50czsgfQorCisgICAgLy8gTmVlZHMgdG8g
YmUgcHVibGljIHNvIHRyYWNrcyBjYW4gY2FsbCBpdAorICAgIHZvaWQgc2NoZWR1bGVDaGFuZ2VF
dmVudCgpOworCitwcm90ZWN0ZWQ6CisgICAgVHJhY2tMaXN0QmFzZShIVE1MTWVkaWFFbGVtZW50
KiwgU2NyaXB0RXhlY3V0aW9uQ29udGV4dCopOworCisgICAgdm9pZCBzY2hlZHVsZUFkZFRyYWNr
RXZlbnQoUGFzc1JlZlB0cjxUcmFja0Jhc2U+KTsKKyAgICB2b2lkIHNjaGVkdWxlUmVtb3ZlVHJh
Y2tFdmVudChQYXNzUmVmUHRyPFRyYWNrQmFzZT4pOworCisgICAgVmVjdG9yPFJlZlB0cjxUcmFj
a0Jhc2U+ID4gbV9pbmJhbmRUcmFja3M7CisKK3ByaXZhdGU6CisKKyAgICAvLyBFdmVudFRhcmdl
dAorICAgIHZpcnR1YWwgdm9pZCByZWZFdmVudFRhcmdldCgpIE9WRVJSSURFIHsgcmVmKCk7IH0K
KyAgICB2aXJ0dWFsIHZvaWQgZGVyZWZFdmVudFRhcmdldCgpIE9WRVJSSURFIHsgZGVyZWYoKTsg
fQorICAgIHZpcnR1YWwgRXZlbnRUYXJnZXREYXRhKiBldmVudFRhcmdldERhdGEoKSBPVkVSUklE
RSB7IHJldHVybiAmbV9ldmVudFRhcmdldERhdGE7IH0KKyAgICB2aXJ0dWFsIEV2ZW50VGFyZ2V0
RGF0YSogZW5zdXJlRXZlbnRUYXJnZXREYXRhKCkgT1ZFUlJJREUgeyByZXR1cm4gJm1fZXZlbnRU
YXJnZXREYXRhOyB9CisKKyAgICB2b2lkIGFzeW5jRXZlbnRUaW1lckZpcmVkKFRpbWVyPFRyYWNr
TGlzdEJhc2U+Kik7CisKKyAgICBTY3JpcHRFeGVjdXRpb25Db250ZXh0KiBtX2NvbnRleHQ7Cisg
ICAgSFRNTE1lZGlhRWxlbWVudCogbV9vd25lcjsKKworICAgIFZlY3RvcjxSZWZQdHI8RXZlbnQ+
ID4gbV9wZW5kaW5nRXZlbnRzOworICAgIFRpbWVyPFRyYWNrTGlzdEJhc2U+IG1fcGVuZGluZ0V2
ZW50VGltZXI7CisKKyAgICBFdmVudFRhcmdldERhdGEgbV9ldmVudFRhcmdldERhdGE7CisKKyAg
ICBpbnQgbV9kaXNwYXRjaGluZ0V2ZW50czsKK307CisKK30gLy8gbmFtZXNwYWNlIFdlYkNvcmUK
KworI2VuZGlmCisjZW5kaWYKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dy
YXBoaWNzL01lZGlhUGxheWVyLmNwcCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNz
L01lZGlhUGxheWVyLmNwcAppbmRleCAzMzlmZTMyMDZmMzAyY2I3NjJkMjk3ZDFmYWU3NWQ0M2Ew
OTU3NDUyLi4zMmNlY2Y1NGI4YjIwYjdiZjdkOTIwNmNiZDQ3NWJkOTIzY2FmMGMyIDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9NZWRpYVBsYXllci5jcHAKKysr
IGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvTWVkaWFQbGF5ZXIuY3BwCkBAIC0x
MTAyLDcgKzExMDIsNyBAQCB2b2lkIE1lZGlhUGxheWVyOjphZGRUZXh0VHJhY2soUGFzc1JlZlB0
cjxJbmJhbmRUZXh0VHJhY2tQcml2YXRlPiB0cmFjaykKICAgICBpZiAoIW1fbWVkaWFQbGF5ZXJD
bGllbnQpCiAgICAgICAgIHJldHVybjsKIAotICAgIG1fbWVkaWFQbGF5ZXJDbGllbnQtPm1lZGlh
UGxheWVyRGlkQWRkVHJhY2sodHJhY2spOworICAgIG1fbWVkaWFQbGF5ZXJDbGllbnQtPm1lZGlh
UGxheWVyRGlkQWRkVGV4dFRyYWNrKHRyYWNrKTsKIH0KIAogdm9pZCBNZWRpYVBsYXllcjo6cmVt
b3ZlVGV4dFRyYWNrKFBhc3NSZWZQdHI8SW5iYW5kVGV4dFRyYWNrUHJpdmF0ZT4gdHJhY2spCkBA
IC0xMTEwLDcgKzExMTAsNyBAQCB2b2lkIE1lZGlhUGxheWVyOjpyZW1vdmVUZXh0VHJhY2soUGFz
c1JlZlB0cjxJbmJhbmRUZXh0VHJhY2tQcml2YXRlPiB0cmFjaykKICAgICBpZiAoIW1fbWVkaWFQ
bGF5ZXJDbGllbnQpCiAgICAgICAgIHJldHVybjsKIAotICAgIG1fbWVkaWFQbGF5ZXJDbGllbnQt
Pm1lZGlhUGxheWVyRGlkUmVtb3ZlVHJhY2sodHJhY2spOworICAgIG1fbWVkaWFQbGF5ZXJDbGll
bnQtPm1lZGlhUGxheWVyRGlkUmVtb3ZlVGV4dFRyYWNrKHRyYWNrKTsKIH0KIAogYm9vbCBNZWRp
YVBsYXllcjo6cmVxdWlyZXNUZXh0VHJhY2tSZXByZXNlbnRhdGlvbigpIGNvbnN0CmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9NZWRpYVBsYXllci5oIGIvU291
cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvTWVkaWFQbGF5ZXIuaAppbmRleCA0NTNkY2Yw
MjQ4OTg0MzJhYTA4ZDExODllMWNmMTNjODVlMjc2YzM0Li42MWRmMWY0ZGU2OGJjNzNmYjM2OWQw
NWUwZmRiZmMxYmE3YzU1NmY2IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9n
cmFwaGljcy9NZWRpYVBsYXllci5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBo
aWNzL01lZGlhUGxheWVyLmgKQEAgLTIxOCw4ICsyMTgsOCBAQCBwdWJsaWM6CiAgICAgdmlydHVh
bCBDYWNoZWRSZXNvdXJjZUxvYWRlciogbWVkaWFQbGF5ZXJDYWNoZWRSZXNvdXJjZUxvYWRlcigp
IHsgcmV0dXJuIDA7IH0KIAogI2lmIEVOQUJMRShWSURFT19UUkFDSykKLSAgICB2aXJ0dWFsIHZv
aWQgbWVkaWFQbGF5ZXJEaWRBZGRUcmFjayhQYXNzUmVmUHRyPEluYmFuZFRleHRUcmFja1ByaXZh
dGU+KSB7IH0KLSAgICB2aXJ0dWFsIHZvaWQgbWVkaWFQbGF5ZXJEaWRSZW1vdmVUcmFjayhQYXNz
UmVmUHRyPEluYmFuZFRleHRUcmFja1ByaXZhdGU+KSB7IH0KKyAgICB2aXJ0dWFsIHZvaWQgbWVk
aWFQbGF5ZXJEaWRBZGRUZXh0VHJhY2soUGFzc1JlZlB0cjxJbmJhbmRUZXh0VHJhY2tQcml2YXRl
PikgeyB9CisgICAgdmlydHVhbCB2b2lkIG1lZGlhUGxheWVyRGlkUmVtb3ZlVGV4dFRyYWNrKFBh
c3NSZWZQdHI8SW5iYW5kVGV4dFRyYWNrUHJpdmF0ZT4pIHsgfQogCiAgICAgdmlydHVhbCB2b2lk
IHRleHRUcmFja1JlcHJlc2VudGF0aW9uQm91bmRzQ2hhbmdlZChjb25zdCBJbnRSZWN0JikgeyB9
CiAgICAgdmlydHVhbCB2b2lkIHBhaW50VGV4dFRyYWNrUmVwcmVzZW50YXRpb24oR3JhcGhpY3ND
b250ZXh0KiwgY29uc3QgSW50UmVjdCYpIHsgfQo=
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>197881</attachid>
            <date>2013-04-12 13:52:46 -0700</date>
            <delta_ts>2013-04-12 15:03:13 -0700</delta_ts>
            <desc>Patch for committing</desc>
            <filename>bug-114330-20130412145224.patch</filename>
            <type>text/plain</type>
            <size>59824</size>
            <attacher name="Brendan Long">b.long</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTQ4Mjg2CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggMzEyZGY0NjllNDk0YzY3
MDA3ZjJkYzBkN2YxZjk1ZDU2Y2Q4NGFiYy4uMzUxYjc4MzQ4NTdmY2QwNDQ3YjI3MjA4MGU3MTE2
ODQwNWM4YzU3NyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDk5IEBACisyMDEzLTA0LTEyICBCcmVu
ZGFuIExvbmcgIDxiLmxvbmdAY2FibGVsYWJzLmNvbT4KKworICAgICAgICBSZWZhY3RvciBUZXh0
VHJhY2sgYW5kIFRleHRUcmFja0xpc3QgdG8gbWFrZSBpdCBlYXNpZXIgdG8gYWRkIGF1ZGlvIGFu
ZCB2aWRlbyB0cmFja3MKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcu
Y2dpP2lkPTExNDMzMAorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisg
ICAgICAgIE5vIG5ldyB0ZXN0cyBiZWNhdXNlIHRoaXMgZG9lc24ndCBhZGQgbmV3IGZ1bmN0aW9u
YWxpdHkuCisKKyAgICAgICAgKiBDTWFrZUxpc3RzLnR4dDogT25seSBjb21waWxlIHRleHQgdHJh
Y2sgZmlsZXMgaWYgRU5BQkxFKFZJREVPX1RSQUNLKSwgYW5kIGFkZCBUcmFja0xpc3RCYXNlCisg
ICAgICAgICogVGFyZ2V0LnByaTogQWRkIFRyYWNrTGlzdEJhc2UKKyAgICAgICAgKiBXZWJDb3Jl
LnZjcHJvai9XZWJDb3JlLnZjcHJvajogQ29ycmVjdCBJbmJhbmRUZXh0VHJhY2tQcml2YXRlLmgn
cyBsb2NhdGlvbiBhbmQgYWRkIFRyYWNrTGlzdEJhc2UKKyAgICAgICAgKiBXZWJDb3JlLnhjb2Rl
cHJvai9wcm9qZWN0LnBieHByb2o6IEFkZCBUcmFja0xpc3RCYXNlCisgICAgICAgICogaHRtbC9I
VE1MTWVkaWFFbGVtZW50LmNwcDogUmVuYW1lZCAidHJhY2siIGZ1bmN0aW9ucyB0byAidGV4dFRy
YWNrIgorICAgICAgICAoV2ViQ29yZTo6SFRNTE1lZGlhRWxlbWVudDo6bWVkaWFQbGF5ZXJEaWRB
ZGRUZXh0VHJhY2spOiBSZW5hbWVkLgorICAgICAgICAoV2ViQ29yZTo6SFRNTE1lZGlhRWxlbWVu
dDo6bWVkaWFQbGF5ZXJEaWRSZW1vdmVUZXh0VHJhY2spOiBSZW5hbWVkLgorICAgICAgICAoV2Vi
Q29yZTo6SFRNTE1lZGlhRWxlbWVudDo6YWRkVGV4dFRyYWNrKTogUmVuYW1lZC4KKyAgICAgICAg
KFdlYkNvcmU6OkhUTUxNZWRpYUVsZW1lbnQ6OnJlbW92ZVRleHRUcmFjayk6IFJlbmFtZWQuCisg
ICAgICAgIChXZWJDb3JlOjpIVE1MTWVkaWFFbGVtZW50OjpyZW1vdmVBbGxJbmJhbmRUcmFja3Mp
OiBVc2UgcmVuYW1lZCBmdW5jdGlvbnMuCisgICAgICAgIChXZWJDb3JlOjpIVE1MTWVkaWFFbGVt
ZW50OjpkaWRBZGRUZXh0VHJhY2spOiBSZW5hbWVkLgorICAgICAgICAoV2ViQ29yZTo6SFRNTE1l
ZGlhRWxlbWVudDo6ZGlkUmVtb3ZlVGV4dFRyYWNrKTogUmVuYW1lZC4KKyAgICAgICAgKiBodG1s
L0hUTUxNZWRpYUVsZW1lbnQuaDoKKyAgICAgICAgUmVuYW1lZCAidHJhY2siIGZ1bmN0aW9ucyB0
byAidGV4dFRyYWNrIiBhbmQgb25seSBmb3J3YXJkLWRlY2xhcmUgVGV4dFRyYWNrTGlzdCBpZiBF
TkFCTEUoVklERU9fVFJBQ0spCisgICAgICAgICogaHRtbC9IVE1MVHJhY2tFbGVtZW50LmNwcDog
UmVuYW1lZCAidHJhY2siIGZ1bmN0aW9ucyB0byAidGV4dFRyYWNrIgorICAgICAgICAoV2ViQ29y
ZTo6SFRNTFRyYWNrRWxlbWVudDo6aW5zZXJ0ZWRJbnRvKToKKyAgICAgICAgKFdlYkNvcmU6OkhU
TUxUcmFja0VsZW1lbnQ6OnJlbW92ZWRGcm9tKToKKyAgICAgICAgKiBodG1sL3RyYWNrL1RleHRU
cmFjay5jcHA6CisgICAgICAgIE1vdmUgbWVkaWEgZWxlbWVudCwgbGFiZWwsIGxhbmd1YWdlIGFu
ZCBraW5kIGludG8gVHJhY2tCYXNlIGFuZCBtb3ZlIEV2ZW50VGFyZ2V0IGZ1bmN0aW9ucyBpbnRv
IFRleHRUcmFjay4KKyAgICAgICAgKFdlYkNvcmU6OlRleHRUcmFjazo6VGV4dFRyYWNrKTogQWRk
ZWQuCisgICAgICAgIChXZWJDb3JlOjpUZXh0VHJhY2s6OmludGVyZmFjZU5hbWUpOiBBZGRlZC4K
KyAgICAgICAgKFdlYkNvcmU6OlRleHRUcmFjazo6c2NyaXB0RXhlY3V0aW9uQ29udGV4dCk6IEFk
ZGVkLgorICAgICAgICAoV2ViQ29yZTo6VGV4dFRyYWNrOjpldmVudFRhcmdldERhdGEpOiBBZGRl
ZC4KKyAgICAgICAgKFdlYkNvcmU6OlRleHRUcmFjazo6ZW5zdXJlRXZlbnRUYXJnZXREYXRhKTog
QWRkZWQuCisgICAgICAgIChXZWJDb3JlOjpUZXh0VHJhY2s6OmlzVmFsaWRLaW5kKTogQWRkZWQg
dG8gc3VwcG9ydCBUcmFja0Jhc2U6OnNldEtpbmQoKQorICAgICAgICAoV2ViQ29yZTo6VGV4dFRy
YWNrOjpzZXRLaW5kKTogT3ZlcnJpZGUgdG8gc3VwcG9ydCB0ZXh0VHJhY2tLaW5kQ2hhbmdlZCgp
CisgICAgICAgIChXZWJDb3JlOjpUZXh0VHJhY2s6OmlzUmVuZGVyZWQpOiBVc2Uga2luZCgpLCBs
YWJlbCgpIGFuZCBsYW5ndWFnZSgpIGluc3RlYWQgb2YgbV9raW5kLCBldGMuCisgICAgICAgIChX
ZWJDb3JlOjpUZXh0VHJhY2s6OnBsYXRmb3JtVGV4dFRyYWNrKTogRGl0dG8uCisgICAgICAgIChX
ZWJDb3JlOjpUZXh0VHJhY2s6OmlzTWFpblByb2dyYW1Db250ZW50KTogRGl0dG8uCisgICAgICAg
ICogaHRtbC90cmFjay9UZXh0VHJhY2suaDoKKyAgICAgICAgU2FtZSBhcyBUZXh0VHJhY2suY3Bw
LCBwbHVzIGFkZGVkIGRlZmF1bHRLaW5kS2V5d29yZCgpIHNvIFRyYWNrQmFzZTo6c2V0S2luZCgp
IHdpbGwgd29yayBhbmQgYWRkZWQKKyAgICAgICAgdG9UZXh0VHJhY2soKS4KKyAgICAgICAgKiBo
dG1sL3RyYWNrL1RleHRUcmFja0xpc3QuY3BwOgorICAgICAgICBNb3ZlIGZ1bmN0aW9uYWxpdHkg
aW50byBUcmFja0xpc3RCYXNlLCBhZGQgdG9UZXh0VHJhY2soKSBjYXN0cywgdXNlCisgICAgICAg
IFRyYWNrQmFzZSB3aGVyZSBuZWNlc3NzYXJ5IGFuZCB1c2Ugb3duZXIoKSBpbnN0ZWFkIG9mIG1f
b3duZXIuCisKKyAgICAgICAgTW92ZWQgRXZlbnRUYXJnZXQgZnVuY3Rpb25zIGludG8gVHJhY2tM
aXN0QmFzZS4KKyAgICAgICAgKFRleHRUcmFja0xpc3Q6OlRleHRUcmFja0xpc3QpOgorICAgICAg
ICAoVGV4dFRyYWNrTGlzdDo6Z2V0VHJhY2tJbmRleFJlbGF0aXZlVG9SZW5kZXJlZFRyYWNrcyk6
CisgICAgICAgIChUZXh0VHJhY2tMaXN0OjppdGVtKToKKyAgICAgICAgKFRleHRUcmFja0xpc3Q6
OmludmFsaWRhdGVUcmFja0luZGV4ZXNBZnRlclRyYWNrKToKKyAgICAgICAgKFRleHRUcmFja0xp
c3Q6OmFwcGVuZCk6CisgICAgICAgIChUZXh0VHJhY2tMaXN0OjpyZW1vdmUpOgorICAgICAgICAo
VGV4dFRyYWNrTGlzdDo6Y29udGFpbnMpOgorICAgICAgICAqIGh0bWwvdHJhY2svVGV4dFRyYWNr
TGlzdC5oOgorICAgICAgICBNb3ZlIEV2ZW50VGFyZ2V0LCBSZWZDb3VudGVkIGFuZCBtX2luYmFu
ZFRyYWNrcyBpbnRvIFRyYWNrTGlzdEJhc2UuCisgICAgICAgIE92ZXJyaWRlIGxlbmd0aCgpLCBj
b250YWlucygpIGFuZCByZW1vdmUoKS4KKyAgICAgICAgKiBodG1sL3RyYWNrL1RyYWNrQmFzZS5j
cHA6IFJlbW92ZSBFdmVudFRhcmdldCBmdW5jdGlvbnMuCisgICAgICAgIChXZWJDb3JlOjpUcmFj
a0Jhc2U6OlRyYWNrQmFzZSk6CisgICAgICAgIFJlbW92ZSBFdmVudFRhcmdldCwgYWRkIGxhYmVs
IGFuZCBsYW5ndWFnZQorICAgICAgICAoV2ViQ29yZTo6VHJhY2tCYXNlOjpzZXRLaW5kKTogQWRk
ZWQKKyAgICAgICAgKiBodG1sL3RyYWNrL1RyYWNrQmFzZS5oOgorICAgICAgICBEb24ndCBleHRl
bmQgRXZlbnRUYXJnZXQgKEF1ZGlvVHJhY2sgYW5kIFZpZGVvVHJhY2sgYXJlbid0KS4gSGFuZGxl
CisgICAgICAgIGtpbmQsIGxhYmVsLCBsYW5ndWFnZSBhbmQgbWVkaWEgZWxlbWVudC4KKyAgICAg
ICAgKFdlYkNvcmU6OlRyYWNrQmFzZTo6c2V0TWVkaWFFbGVtZW50KTogQWRkZWQuCisgICAgICAg
IChXZWJDb3JlOjpUcmFja0Jhc2U6Om1lZGlhRWxlbWVudCk6IEFkZGVkLgorICAgICAgICAoV2Vi
Q29yZTo6VHJhY2tCYXNlOjpraW5kKTogQWRkZWQuCisgICAgICAgIChXZWJDb3JlOjpUcmFja0Jh
c2U6OmxhYmVsKTogQWRkZWQuCisgICAgICAgIChXZWJDb3JlOjpUcmFja0Jhc2U6OnNldExhYmVs
KTogQWRkZWQuCisgICAgICAgIChXZWJDb3JlOjpUcmFja0Jhc2U6Omxhbmd1YWdlKTogQWRkZWQu
CisgICAgICAgIChXZWJDb3JlOjpUcmFja0Jhc2U6OnNldExhbmd1YWdlKTogQWRkZWQuCisgICAg
ICAgICogaHRtbC90cmFjay9UcmFja0xpc3RCYXNlLmNwcDoKKyAgICAgICAgQWRkZWQuIEhhbmRs
ZXMgZnVuY3Rpb25hbGl0eSBjb21tb24gdG8gVGV4dFRyYWNrTGlzdCwgQXVkaW9UcmFja0xpc3Qg
YW5kCisgICAgICAgIFZpZGVvVHJhY2tMaXN0LgorICAgICAgICAoVHJhY2tMaXN0QmFzZTo6VHJh
Y2tMaXN0QmFzZSk6IEFkZGVkLgorICAgICAgICAoVHJhY2tMaXN0QmFzZTo6flRyYWNrTGlzdEJh
c2UpOiBBZGRlZC4KKyAgICAgICAgKFRyYWNrTGlzdEJhc2U6Omxlbmd0aCk6IEFkZGVkLgorICAg
ICAgICAoVHJhY2tMaXN0QmFzZTo6cmVtb3ZlKTogQWRkZWQuCisgICAgICAgIChUcmFja0xpc3RC
YXNlOjpjb250YWlucyk6IEFkZGVkLgorICAgICAgICAoVHJhY2tMaXN0QmFzZTo6c2NoZWR1bGVB
ZGRUcmFja0V2ZW50KTogQWRkZWQuCisgICAgICAgIChUcmFja0xpc3RCYXNlOjpzY2hlZHVsZVJl
bW92ZVRyYWNrRXZlbnQpOiBBZGRlZC4KKyAgICAgICAgKFRyYWNrTGlzdEJhc2U6OnNjaGVkdWxl
Q2hhbmdlRXZlbnQpOiBBZGRlZC4KKyAgICAgICAgKFRyYWNrTGlzdEJhc2U6OmFzeW5jRXZlbnRU
aW1lckZpcmVkKTogQWRkZWQuCisgICAgICAgICogaHRtbC90cmFjay9UcmFja0xpc3RCYXNlLmg6
CisgICAgICAgIENvcGllZCBmcm9tIFNvdXJjZS9XZWJDb3JlL2h0bWwvdHJhY2svVGV4dFRyYWNr
TGlzdC5oLiBIYW5kbGVzCisgICAgICAgIGZ1bmN0aW9uYWxpdHkgY29tbW9uIHRvIFRleHRUcmFj
a0xpc3QsIEF1ZGlvVHJhY2tMaXN0IGFuZCBWaWRlb1RyYWNrTGlzdC4KKyAgICAgICAgKFdlYkNv
cmU6OlRyYWNrTGlzdEJhc2U6OnNjcmlwdEV4ZWN1dGlvbkNvbnRleHQpOiBBZGRlZC4KKyAgICAg
ICAgKFdlYkNvcmU6OlRyYWNrTGlzdEJhc2U6OmNsZWFyT3duZXIpOiBBZGRlZC4KKyAgICAgICAg
KFdlYkNvcmU6OlRyYWNrTGlzdEJhc2U6Om93bmVyKTogQWRkZWQuCisgICAgICAgIChXZWJDb3Jl
OjpUcmFja0xpc3RCYXNlOjppc0ZpcmluZ0V2ZW50TGlzdGVuZXJzKTogQWRkZWQuCisgICAgICAg
ICogcGxhdGZvcm0vZ3JhcGhpY3MvTWVkaWFQbGF5ZXIuY3BwOgorICAgICAgICAoV2ViQ29yZTo6
TWVkaWFQbGF5ZXI6OmFkZFRleHRUcmFjayk6IFJlbmFtZWQgKHdhcyBhZGRUcmFjaykKKyAgICAg
ICAgKFdlYkNvcmU6Ok1lZGlhUGxheWVyOjpyZW1vdmVUZXh0VHJhY2spOiBSZW5hbWVkICh3YXMg
cmVtb3ZlVHJhY2spCisgICAgICAgICogcGxhdGZvcm0vZ3JhcGhpY3MvTWVkaWFQbGF5ZXIuaDoK
KyAgICAgICAgKFdlYkNvcmU6Ok1lZGlhUGxheWVyQ2xpZW50OjptZWRpYVBsYXllckRpZEFkZFRl
eHRUcmFjayk6IFJlbmFtZWQgKHdhcyBtZWRpYVBsYXllckRpZEFkZFRyYWNrKQorICAgICAgICAo
V2ViQ29yZTo6TWVkaWFQbGF5ZXJDbGllbnQ6Om1lZGlhUGxheWVyRGlkUmVtb3ZlVGV4dFRyYWNr
KTogUmVuYW1lZCAod2FzIG1lZGlhUGxheWVyRGlkUmVtb3ZlVHJhY2spCisKIDIwMTMtMDQtMTIg
IEVyaWMgQ2FybHNvbiAgPGVyaWMuY2FybHNvbkBhcHBsZS5jb20+CiAKICAgICAgICAgU3VwcG9y
dCAiZm9yY2VkIiBzdWJ0aXRsZXMKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL0NNYWtlTGlz
dHMudHh0IGIvU291cmNlL1dlYkNvcmUvQ01ha2VMaXN0cy50eHQKaW5kZXggNTYyYjQ1NmY5MWNl
YTQ3ODc0NGFlNTllYTk1ZDQ3NjgyNzMwOGIyZi4uY2FiMjQwMzY3ZWMyYjYzNjFiNDExYzRiY2Nj
MWNhYTQyZjkzNTNjYiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ01ha2VMaXN0cy50eHQK
KysrIGIvU291cmNlL1dlYkNvcmUvQ01ha2VMaXN0cy50eHQKQEAgLTU0OSwxMiArNTQ5LDYgQEAg
c2V0KFdlYkNvcmVfSURMX0ZJTEVTCiAgICAgaHRtbC9zaGFkb3cvSFRNTENvbnRlbnRFbGVtZW50
LmlkbAogICAgIGh0bWwvc2hhZG93L0hUTUxTaGFkb3dFbGVtZW50LmlkbAogCi0gICAgaHRtbC90
cmFjay9UZXh0VHJhY2suaWRsCi0gICAgaHRtbC90cmFjay9UZXh0VHJhY2tDdWUuaWRsCi0gICAg
aHRtbC90cmFjay9UZXh0VHJhY2tDdWVMaXN0LmlkbAotICAgIGh0bWwvdHJhY2svVGV4dFRyYWNr
TGlzdC5pZGwKLSAgICBodG1sL3RyYWNrL1RyYWNrRXZlbnQuaWRsCi0KICAgICBpbnNwZWN0b3Iv
SW5qZWN0ZWRTY3JpcHRIb3N0LmlkbAogICAgIGluc3BlY3Rvci9JbnNwZWN0b3JGcm9udGVuZEhv
c3QuaWRsCiAgICAgaW5zcGVjdG9yL0phdmFTY3JpcHRDYWxsRnJhbWUuaWRsCkBAIC0xNTkzLDE5
ICsxNTg3LDYgQEAgc2V0KFdlYkNvcmVfU09VUkNFUwogICAgIGh0bWwvc2hhZG93L1NwaW5CdXR0
b25FbGVtZW50LmNwcAogICAgIGh0bWwvc2hhZG93L1RleHRDb250cm9sSW5uZXJFbGVtZW50cy5j
cHAKIAotICAgIGh0bWwvdHJhY2svSW5iYW5kVGV4dFRyYWNrLmNwcAotICAgIGh0bWwvdHJhY2sv
TG9hZGFibGVUZXh0VHJhY2suY3BwCi0gICAgaHRtbC90cmFjay9UZXh0VHJhY2suY3BwCi0gICAg
aHRtbC90cmFjay9UZXh0VHJhY2tDdWUuY3BwCi0gICAgaHRtbC90cmFjay9UZXh0VHJhY2tDdWVH
ZW5lcmljLmNwcAotICAgIGh0bWwvdHJhY2svVGV4dFRyYWNrQ3VlTGlzdC5jcHAKLSAgICBodG1s
L3RyYWNrL1RleHRUcmFja0xpc3QuY3BwCi0gICAgaHRtbC90cmFjay9UcmFja0Jhc2UuY3BwCi0g
ICAgaHRtbC90cmFjay9UcmFja0V2ZW50LmNwcAotICAgIGh0bWwvdHJhY2svV2ViVlRURWxlbWVu
dC5jcHAKLSAgICBodG1sL3RyYWNrL1dlYlZUVFBhcnNlci5jcHAKLSAgICBodG1sL3RyYWNrL1dl
YlZUVFRva2VuaXplci5jcHAKLQogICAgIGluc3BlY3Rvci9Db25zb2xlTWVzc2FnZS5jcHAKICAg
ICBpbnNwZWN0b3IvQ29udGVudFNlYXJjaFV0aWxzLmNwcAogICAgIGluc3BlY3Rvci9ET01FZGl0
b3IuY3BwCkBAIC0xNzM5LDcgKzE3MjAsNiBAQCBzZXQoV2ViQ29yZV9TT1VSQ0VTCiAgICAgbG9h
ZGVyL2NhY2hlL0NhY2hlZFNoYWRlci5jcHAKICAgICBsb2FkZXIvY2FjaGUvQ2FjaGVkU1ZHRG9j
dW1lbnQuY3BwCiAgICAgbG9hZGVyL2NhY2hlL0NhY2hlZFNWR0RvY3VtZW50UmVmZXJlbmNlLmNw
cAotICAgIGxvYWRlci9jYWNoZS9DYWNoZWRUZXh0VHJhY2suY3BwCiAgICAgbG9hZGVyL2NhY2hl
L0NhY2hlZFhTTFN0eWxlU2hlZXQuY3BwCiAgICAgbG9hZGVyL2NhY2hlL01lbW9yeUNhY2hlLmNw
cAogCkBAIC0yNzA0LDcgKzI2ODQsMzEgQEAgaWYgKEVOQUJMRV9XRUJHTCkKIGVuZGlmICgpCiAK
IGlmIChFTkFCTEVfVklERU9fVFJBQ0spCisgICAgbGlzdChBUFBFTkQgV2ViQ29yZV9JRExfRklM
RVMKKyAgICAgICAgaHRtbC90cmFjay9UZXh0VHJhY2suaWRsCisgICAgICAgIGh0bWwvdHJhY2sv
VGV4dFRyYWNrQ3VlLmlkbAorICAgICAgICBodG1sL3RyYWNrL1RleHRUcmFja0N1ZUxpc3QuaWRs
CisgICAgICAgIGh0bWwvdHJhY2svVGV4dFRyYWNrTGlzdC5pZGwKKyAgICAgICAgaHRtbC90cmFj
ay9UcmFja0V2ZW50LmlkbAorICAgICkKKwogICAgIGxpc3QoQVBQRU5EIFdlYkNvcmVfU09VUkNF
UworICAgICAgICBodG1sL3RyYWNrL0luYmFuZFRleHRUcmFjay5jcHAKKyAgICAgICAgaHRtbC90
cmFjay9Mb2FkYWJsZVRleHRUcmFjay5jcHAKKyAgICAgICAgaHRtbC90cmFjay9UZXh0VHJhY2su
Y3BwCisgICAgICAgIGh0bWwvdHJhY2svVGV4dFRyYWNrQ3VlLmNwcAorICAgICAgICBodG1sL3Ry
YWNrL1RleHRUcmFja0N1ZUdlbmVyaWMuY3BwCisgICAgICAgIGh0bWwvdHJhY2svVGV4dFRyYWNr
Q3VlTGlzdC5jcHAKKyAgICAgICAgaHRtbC90cmFjay9UZXh0VHJhY2tMaXN0LmNwcAorICAgICAg
ICBodG1sL3RyYWNrL1RyYWNrQmFzZS5jcHAKKyAgICAgICAgaHRtbC90cmFjay9UcmFja0V2ZW50
LmNwcAorICAgICAgICBodG1sL3RyYWNrL1RyYWNrTGlzdEJhc2UuY3BwCisgICAgICAgIGh0bWwv
dHJhY2svV2ViVlRURWxlbWVudC5jcHAKKyAgICAgICAgaHRtbC90cmFjay9XZWJWVFRQYXJzZXIu
Y3BwCisgICAgICAgIGh0bWwvdHJhY2svV2ViVlRUVG9rZW5pemVyLmNwcAorCisgICAgICAgIGxv
YWRlci9jYWNoZS9DYWNoZWRUZXh0VHJhY2suY3BwCisKICAgICAgICAgcGxhdGZvcm0vZ3JhcGhp
Y3MvVGV4dFRyYWNrUmVwcmVzZW50YXRpb24uY3BwCiAgICAgKQogZW5kaWYgKCkKZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJDb3JlL1RhcmdldC5wcmkgYi9Tb3VyY2UvV2ViQ29yZS9UYXJnZXQucHJp
CmluZGV4IDI2YmVlZDRhMDQyYzgxZTExMWZjZjU5OTRmZTYwM2Q0YmZmMDkxM2UuLjBhNTNjOThk
MzE2NGZjZDdjNzkyNzdhYjI5YmY2ZjM1ZTJkMmI2NTIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJD
b3JlL1RhcmdldC5wcmkKKysrIGIvU291cmNlL1dlYkNvcmUvVGFyZ2V0LnByaQpAQCAtMzk3OCw2
ICszOTc4LDcgQEAgZW5hYmxlPyhWSURFT19UUkFDSykgewogICAgICAgICBodG1sL3RyYWNrL1Rl
eHRUcmFja0xpc3QuaCBcCiAgICAgICAgIGh0bWwvdHJhY2svVHJhY2tCYXNlLmggXAogICAgICAg
ICBodG1sL3RyYWNrL1RyYWNrRXZlbnQuaCBcCisgICAgICAgIGh0bWwvdHJhY2svVHJhY2tMaXN0
QmFzZS5oIFwKICAgICAgICAgaHRtbC90cmFjay9XZWJWVFRQYXJzZXIuaCBcCiAgICAgICAgIGh0
bWwvdHJhY2svV2ViVlRUVG9rZW4uaCBcCiAgICAgICAgIGh0bWwvdHJhY2svV2ViVlRUVG9rZW5p
emVyLmggXApAQCAtNDAwMSw2ICs0MDAyLDcgQEAgZW5hYmxlPyhWSURFT19UUkFDSykgewogICAg
ICAgICBodG1sL3RyYWNrL1RleHRUcmFja0xpc3QuY3BwIFwKICAgICAgICAgaHRtbC90cmFjay9U
cmFja0Jhc2UuY3BwIFwKICAgICAgICAgaHRtbC90cmFjay9UcmFja0V2ZW50LmNwcCBcCisgICAg
ICAgIGh0bWwvdHJhY2svVHJhY2tMaXN0QmFzZS5jcHAgXAogICAgICAgICBodG1sL3RyYWNrL1dl
YlZUVEVsZW1lbnQuY3BwIFwKICAgICAgICAgaHRtbC90cmFjay9XZWJWVFRQYXJzZXIuY3BwIFwK
ICAgICAgICAgaHRtbC90cmFjay9XZWJWVFRUb2tlbml6ZXIuY3BwIFwKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJDb3JlL1dlYkNvcmUudmNwcm9qL1dlYkNvcmUudmNwcm9qIGIvU291cmNlL1dlYkNv
cmUvV2ViQ29yZS52Y3Byb2ovV2ViQ29yZS52Y3Byb2oKaW5kZXggZWRhMWY2MGMzMDU1MDBiNzk0
YzVkZDEzNGE2MDIzOWFkNmY1NDQ1ZC4uZTBjZDA5YjFmYjQwOTEwZTIyZWQ0OWQ0MWY5YmVlMTIz
ZjRhODhmZSAxMDA3NTUKLS0tIGEvU291cmNlL1dlYkNvcmUvV2ViQ29yZS52Y3Byb2ovV2ViQ29y
ZS52Y3Byb2oKKysrIGIvU291cmNlL1dlYkNvcmUvV2ViQ29yZS52Y3Byb2ovV2ViQ29yZS52Y3By
b2oKQEAgLTMwMjMwLDYgKzMwMjMwLDEwIEBACiAJCQkJCT4KIAkJCQk8L0ZpbGU+CiAJCQkJPEZp
bGUKKwkJCQkJUmVsYXRpdmVQYXRoPSIuLlxwbGF0Zm9ybVxncmFwaGljc1xJbmJhbmRUZXh0VHJh
Y2tQcml2YXRlLmgiCisJCQkJCT4KKwkJCQk8L0ZpbGU+CisJCQkJPEZpbGUKIAkJCQkJUmVsYXRp
dmVQYXRoPSIuLlxwbGF0Zm9ybVxncmFwaGljc1xJbnRQb2ludC5oIgogCQkJCQk+CiAJCQkJPC9G
aWxlPgpAQCAtNjU3NTAsMTAgKzY1NzU0LDYgQEAKIAkJCQkJPgogCQkJCTwvRmlsZT4KIAkJCQk8
RmlsZQotCQkJCQlSZWxhdGl2ZVBhdGg9Ii4uXGh0bWxcdHJhY2tcSW5iYW5kVGV4dFRyYWNrUHJp
dmF0ZS5oIgotCQkJCQk+Ci0JCQkJPC9GaWxlPgotCQkJCTxGaWxlCiAJCQkJCVJlbGF0aXZlUGF0
aD0iLi5caHRtbFx0cmFja1xMb2FkYWJsZVRleHRUcmFjay5jcHAiCiAJCQkJCT4KIAkJCQk8L0Zp
bGU+CkBAIC02NTgxOCw2ICs2NTgxOCwxNCBAQAogCQkJCQk+CiAJCQkJPC9GaWxlPgogCQkJCTxG
aWxlCisJCQkJCVJlbGF0aXZlUGF0aD0iLi5caHRtbFx0cmFja1xUcmFja0xpc3RCYXNlLmNwcCIK
KwkJCQkJPgorCQkJCTwvRmlsZT4KKwkJCQk8RmlsZQorCQkJCQlSZWxhdGl2ZVBhdGg9Ii4uXGh0
bWxcdHJhY2tcVHJhY2tMaXN0QmFzZS5oIgorCQkJCQk+CisJCQkJPC9GaWxlPgorCQkJCTxGaWxl
CiAJCQkJCVJlbGF0aXZlUGF0aD0iLi5caHRtbFx0cmFja1xXZWJWVFRFbGVtZW50LmNwcCIKIAkJ
CQkJPgogCQkJCTwvRmlsZT4KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUueGNv
ZGVwcm9qL3Byb2plY3QucGJ4cHJvaiBiL1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUueGNvZGVwcm9q
L3Byb2plY3QucGJ4cHJvagppbmRleCA3MDQ4OTYyMzFlNDc5NTlkM2MzMDQxY2EzOGYxZDIxMmI2
YjgwYzkwLi5mYzE3NTI5NTgyMjhmYjA2YjhlMmVhODA2MjdlMTVjNDgyMzRhNWQzIDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViQ29yZS9XZWJDb3JlLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2oKKysr
IGIvU291cmNlL1dlYkNvcmUvV2ViQ29yZS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qCkBAIC01
MTExLDYgKzUxMTEsOCBAQAogCQlCQ0ZFMkYxMjBDMUI1ODM4MDAyMDIzNUYgLyogSlNSZWN0Lmgg
aW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBCQ0ZFMkYxMDBD
MUI1ODM3MDAyMDIzNUYgLyogSlNSZWN0LmggKi87IH07CiAJCUJDRkY2NDkxMEVBRDE1QzIwMEMx
RDZGNyAvKiBMZW5ndGhCb3guaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsg
ZmlsZVJlZiA9IEJDRkY2NDhGMEVBRDE1QzIwMEMxRDZGNyAvKiBMZW5ndGhCb3guaCAqLzsgc2V0
dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OwogCQlCQ0ZGNjQ5MjBFQUQx
NUMyMDBDMUQ2RjcgLyogTGVuZ3RoU2l6ZS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVp
bGRGaWxlOyBmaWxlUmVmID0gQkNGRjY0OTAwRUFEMTVDMjAwQzFENkY3IC8qIExlbmd0aFNpemUu
aCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OworCQlCRTg4
RTBDMTE3MTVDRTI2MDA2NThEOTggLyogVHJhY2tMaXN0QmFzZS5jcHAgaW4gU291cmNlcyAqLyA9
IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBCRTg4RTBCRjE3MTVDRTI2MDA2NThEOTgg
LyogVHJhY2tMaXN0QmFzZS5jcHAgKi87IH07CisJCUJFODhFMEMyMTcxNUNFMjYwMDY1OEQ5OCAv
KiBUcmFja0xpc3RCYXNlLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZp
bGVSZWYgPSBCRTg4RTBDMDE3MTVDRTI2MDA2NThEOTggLyogVHJhY2tMaXN0QmFzZS5oICovOyB9
OwogCQlDMDQ2RTFBQzEyMDhBOUZFMDBCQTJDRjcgLyogTG9jYWxpemVkU3RyaW5ncy5jcHAgaW4g
U291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBDMDQ2RTFBQjEyMDhB
OUZFMDBCQTJDRjcgLyogTG9jYWxpemVkU3RyaW5ncy5jcHAgKi87IH07CiAJCUMwQzA1NENCMTEx
OEM4RTQwMENFMjYzNiAvKiBDb2RlR2VuZXJhdG9yLnBtIGluIEhlYWRlcnMgKi8gPSB7aXNhID0g
UEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gOTNGOEIzMDUwQTMwMEZFMTAwRjYxQUI4IC8qIENvZGVH
ZW5lcmF0b3IucG0gKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsg
fTsKIAkJQzBDMDU0Q0MxMTE4QzhFNDAwQ0UyNjM2IC8qIGdlbmVyYXRlLWJpbmRpbmdzLnBsIGlu
IEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gOTNGOEIzMDcwQTMw
MEZFQTAwRjYxQUI4IC8qIGdlbmVyYXRlLWJpbmRpbmdzLnBsICovOyBzZXR0aW5ncyA9IHtBVFRS
SUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CkBAIC0xMTgzOCw2ICsxMTg0MCw4IEBACiAJCUJD
RkY2NDkwMEVBRDE1QzIwMEMxRDZGNyAvKiBMZW5ndGhTaXplLmggKi8gPSB7aXNhID0gUEJYRmls
ZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vj
b2RlLmMuaDsgcGF0aCA9IExlbmd0aFNpemUuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsK
IAkJQkU4NTVGN0YwNzAxRTgzNTAwMjM5NzY5IC8qIFdlYkNvcmVWaWV3LmggKi8gPSB7aXNhID0g
UEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gMzA7IGluZGVudFdpZHRoID0gNDsgbGFz
dEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFdlYkNvcmVWaWV3Lmg7IHNv
dXJjZVRyZWUgPSAiPGdyb3VwPiI7IHRhYldpZHRoID0gODsgdXNlc1RhYnMgPSAwOyB9OwogCQlC
RTg1NjA1MTA3MDFGOTExMDAyMzk3NjkgLyogV2ViQ29yZVZpZXcubSAqLyA9IHtpc2EgPSBQQlhG
aWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsgaW5kZW50V2lkdGggPSA0OyBsYXN0S25v
d25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5vYmpjOyBwYXRoID0gV2ViQ29yZVZpZXcubTsgc291
cmNlVHJlZSA9ICI8Z3JvdXA+IjsgdGFiV2lkdGggPSA4OyB1c2VzVGFicyA9IDA7IH07CisJCUJF
ODhFMEJGMTcxNUNFMjYwMDY1OEQ5OCAvKiBUcmFja0xpc3RCYXNlLmNwcCAqLyA9IHtpc2EgPSBQ
QlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNv
dXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IFRyYWNrTGlzdEJhc2UuY3BwOyBzb3VyY2VUcmVlID0g
Ijxncm91cD4iOyB9OworCQlCRTg4RTBDMDE3MTVDRTI2MDA2NThEOTggLyogVHJhY2tMaXN0QmFz
ZS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RL
bm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBUcmFja0xpc3RCYXNlLmg7IHNv
dXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCUJFOTFGQzhCMDYxMzM2NjYwMDVFMzc5MCAvKiBQ
b3NpdGlvbi5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDMw
OyBpbmRlbnRXaWR0aCA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBh
dGggPSBQb3NpdGlvbi5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB0YWJXaWR0aCA9IDg7IHVz
ZXNUYWJzID0gMDsgfTsKIAkJQkU5MUZDOEMwNjEzMzY2NjAwNUUzNzkwIC8qIFBvc2l0aW9uLmNw
cCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsgaW5kZW50
V2lkdGggPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9
IFBvc2l0aW9uLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgdGFiV2lkdGggPSA4OyB1c2Vz
VGFicyA9IDA7IH07CiAJCUJFOTgzRDk1MDUyQTJFMEEwMDg5MkQ4NSAvKiBXZWJDb3JlS2V5Ym9h
cmRVSU1vZGUuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSAz
MDsgaW5kZW50V2lkdGggPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBw
YXRoID0gV2ViQ29yZUtleWJvYXJkVUlNb2RlLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IHRh
YldpZHRoID0gODsgdXNlc1RhYnMgPSAwOyB9OwpAQCAtMTc2ODEsNiArMTc2ODUsOCBAQAogCQlC
MUFENEU3NzEzQTEyQTcyMDA4NDZCMjcgLyogdHJhY2sgKi8gPSB7CiAJCQlpc2EgPSBQQlhHcm91
cDsKIAkJCWNoaWxkcmVuID0gKAorCQkJCUJFODhFMEJGMTcxNUNFMjYwMDY1OEQ5OCAvKiBUcmFj
a0xpc3RCYXNlLmNwcCAqLywKKwkJCQlCRTg4RTBDMDE3MTVDRTI2MDA2NThEOTggLyogVHJhY2tM
aXN0QmFzZS5oICovLAogCQkJCTA3OTQxNzhGMTY2RTg1NUYwMDk0MTZDMiAvKiBJbmJhbmRUZXh0
VHJhY2suY3BwICovLAogCQkJCTA3OTQxNzkwMTY2RTg1NUYwMDk0MTZDMiAvKiBJbmJhbmRUZXh0
VHJhY2suaCAqLywKIAkJCQk5NzU5RTkzNDE0RUYxQ0Y4MDAyNkEyREQgLyogTG9hZGFibGVUZXh0
VHJhY2suY3BwICovLApAQCAtMjQwNjAsNiArMjQwNjYsNyBAQAogCQkJCUUxODA4MTE3MTZGQ0Y5
Q0IwMEI4MEQwNyAvKiBTeW5jaHJvbm91c0xvYWRlckNsaWVudC5oIGluIEhlYWRlcnMgKi8sCiAJ
CQkJRTE1MjU1MTUxNkZEMjM1MDAwM0Q3QURCIC8qIFdlYkNvcmVSZXNvdXJjZUhhbmRsZUFzT3Bl
cmF0aW9uUXVldWVEZWxlZ2F0ZS5oIGluIEhlYWRlcnMgKi8sCiAJCQkJRTFCNTMzNDkxNzE3REVF
MzAwRjIwNUY5IC8qIENhY2hlZFJhd1Jlc291cmNlQ2xpZW50LmggaW4gSGVhZGVycyAqLywKKwkJ
CQlCRTg4RTBDMjE3MTVDRTI2MDA2NThEOTggLyogVHJhY2tMaXN0QmFzZS5oIGluIEhlYWRlcnMg
Ki8sCiAJCQkpOwogCQkJcnVuT25seUZvckRlcGxveW1lbnRQb3N0cHJvY2Vzc2luZyA9IDA7CiAJ
CX07CkBAIC0yNzAwNiw2ICsyNzAxMyw3IEBACiAJCQkJRTE4MDgxMTYxNkZDRjlDQjAwQjgwRDA3
IC8qIFN5bmNocm9ub3VzTG9hZGVyQ2xpZW50Lm1tIGluIFNvdXJjZXMgKi8sCiAJCQkJRTE1MjU1
MTYxNkZEMjM1MDAwM0Q3QURCIC8qIFdlYkNvcmVSZXNvdXJjZUhhbmRsZUFzT3BlcmF0aW9uUXVl
dWVEZWxlZ2F0ZS5tbSBpbiBTb3VyY2VzICovLAogCQkJCUUxQjUzMzQ3MTcxN0QwQTEwMEYyMDVG
OSAvKiBDYWNoZWRTVkdEb2N1bWVudFJlZmVyZW5jZS5jcHAgaW4gU291cmNlcyAqLywKKwkJCQlC
RTg4RTBDMTE3MTVDRTI2MDA2NThEOTggLyogVHJhY2tMaXN0QmFzZS5jcHAgaW4gU291cmNlcyAq
LywKIAkJCSk7CiAJCQlydW5Pbmx5Rm9yRGVwbG95bWVudFBvc3Rwcm9jZXNzaW5nID0gMDsKIAkJ
fTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTE1lZGlhRWxlbWVudC5jcHAg
Yi9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxNZWRpYUVsZW1lbnQuY3BwCmluZGV4IGE3YjUxYTY3
NGRlYzUwZGI1MmYxZGVmMWJkMjQ5N2RiYWI2MzI0YjQuLmI4YmU4NGYxYWU3MDhiYTc4ZmViNTll
ZDVhMjc1NTQyOWYyOTI5OWUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTE1l
ZGlhRWxlbWVudC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MTWVkaWFFbGVtZW50
LmNwcApAQCAtMjc5Miw3ICsyNzkyLDcgQEAgZG91YmxlIEhUTUxNZWRpYUVsZW1lbnQ6OnBlcmNl
bnRMb2FkZWQoKSBjb25zdAogCiAjaWYgRU5BQkxFKFZJREVPX1RSQUNLKQogCi12b2lkIEhUTUxN
ZWRpYUVsZW1lbnQ6Om1lZGlhUGxheWVyRGlkQWRkVHJhY2soUGFzc1JlZlB0cjxJbmJhbmRUZXh0
VHJhY2tQcml2YXRlPiBwcnBUcmFjaykKK3ZvaWQgSFRNTE1lZGlhRWxlbWVudDo6bWVkaWFQbGF5
ZXJEaWRBZGRUZXh0VHJhY2soUGFzc1JlZlB0cjxJbmJhbmRUZXh0VHJhY2tQcml2YXRlPiBwcnBU
cmFjaykKIHsKICAgICBpZiAoIVJ1bnRpbWVFbmFibGVkRmVhdHVyZXM6OndlYmtpdFZpZGVvVHJh
Y2tFbmFibGVkKCkpCiAgICAgICAgIHJldHVybjsKQEAgLTI4MjQsMTAgKzI4MjQsMTAgQEAgdm9p
ZCBIVE1MTWVkaWFFbGVtZW50OjptZWRpYVBsYXllckRpZEFkZFRyYWNrKFBhc3NSZWZQdHI8SW5i
YW5kVGV4dFRyYWNrUHJpdmF0ZT4KICAgICAvLyA5LiBGaXJlIGFuIGV2ZW50IHdpdGggdGhlIG5h
bWUgYWRkdHJhY2ssIHRoYXQgZG9lcyBub3QgYnViYmxlIGFuZCBpcyBub3QgY2FuY2VsYWJsZSwg
YW5kIHRoYXQgdXNlcyB0aGUgVHJhY2tFdmVudAogICAgIC8vIGludGVyZmFjZSwgd2l0aCB0aGUg
dHJhY2sgYXR0cmlidXRlIGluaXRpYWxpemVkIHRvIHRoZSB0ZXh0IHRyYWNrJ3MgVGV4dFRyYWNr
IG9iamVjdCwgYXQgdGhlIG1lZGlhIGVsZW1lbnQncwogICAgIC8vIHRleHRUcmFja3MgYXR0cmli
dXRlJ3MgVGV4dFRyYWNrTGlzdCBvYmplY3QuCi0gICAgYWRkVHJhY2sodGV4dFRyYWNrLmdldCgp
KTsKKyAgICBhZGRUZXh0VHJhY2sodGV4dFRyYWNrLmdldCgpKTsKIH0KIAotdm9pZCBIVE1MTWVk
aWFFbGVtZW50OjptZWRpYVBsYXllckRpZFJlbW92ZVRyYWNrKFBhc3NSZWZQdHI8SW5iYW5kVGV4
dFRyYWNrUHJpdmF0ZT4gcHJwVHJhY2spCit2b2lkIEhUTUxNZWRpYUVsZW1lbnQ6Om1lZGlhUGxh
eWVyRGlkUmVtb3ZlVGV4dFRyYWNrKFBhc3NSZWZQdHI8SW5iYW5kVGV4dFRyYWNrUHJpdmF0ZT4g
cHJwVHJhY2spCiB7CiAgICAgaWYgKCFSdW50aW1lRW5hYmxlZEZlYXR1cmVzOjp3ZWJraXRWaWRl
b1RyYWNrRW5hYmxlZCgpKQogICAgICAgICByZXR1cm47CkBAIC0yODM2LDEyICsyODM2LDEyIEBA
IHZvaWQgSFRNTE1lZGlhRWxlbWVudDo6bWVkaWFQbGF5ZXJEaWRSZW1vdmVUcmFjayhQYXNzUmVm
UHRyPEluYmFuZFRleHRUcmFja1ByaXZhCiAgICAgICAgIHJldHVybjsKIAogICAgIC8vIFRoaXMg
Y2FzdCBpcyBzYWZlIGJlY2F1c2Ugd2UgY3JlYXRlZCB0aGUgSW5iYW5kVGV4dFRyYWNrIHdpdGgg
dGhlIEluYmFuZFRleHRUcmFja1ByaXZhdGUKLSAgICAvLyBwYXNzZWQgdG8gbWVkaWFQbGF5ZXJE
aWRBZGRUcmFjay4KKyAgICAvLyBwYXNzZWQgdG8gbWVkaWFQbGF5ZXJEaWRBZGRUZXh0VHJhY2su
CiAgICAgUmVmUHRyPEluYmFuZFRleHRUcmFjaz4gdGV4dFRyYWNrID0gc3RhdGljX2Nhc3Q8SW5i
YW5kVGV4dFRyYWNrKj4ocHJwVHJhY2stPmNsaWVudCgpKTsKICAgICBpZiAoIXRleHRUcmFjaykK
ICAgICAgICAgcmV0dXJuOwogCi0gICAgcmVtb3ZlVHJhY2sodGV4dFRyYWNrLmdldCgpKTsKKyAg
ICByZW1vdmVUZXh0VHJhY2sodGV4dFRyYWNrLmdldCgpKTsKIH0KIAogI2lmIFVTRShQTEFURk9S
TV9URVhUX1RSQUNLX01FTlUpCkBAIC0yOTIwLDE0ICsyOTIwLDE0IEBAIHZvaWQgSFRNTE1lZGlh
RWxlbWVudDo6Y2xvc2VDYXB0aW9uVHJhY2tzQ2hhbmdlZCgpCiAjZW5kaWYKIH0KIAotdm9pZCBI
VE1MTWVkaWFFbGVtZW50OjphZGRUcmFjayhUZXh0VHJhY2sqIHRyYWNrKQordm9pZCBIVE1MTWVk
aWFFbGVtZW50OjphZGRUZXh0VHJhY2soVGV4dFRyYWNrKiB0cmFjaykKIHsKICAgICB0ZXh0VHJh
Y2tzKCktPmFwcGVuZCh0cmFjayk7CiAgICAgCiAgICAgY2xvc2VDYXB0aW9uVHJhY2tzQ2hhbmdl
ZCgpOwogfQogCi12b2lkIEhUTUxNZWRpYUVsZW1lbnQ6OnJlbW92ZVRyYWNrKFRleHRUcmFjayog
dHJhY2spCit2b2lkIEhUTUxNZWRpYUVsZW1lbnQ6OnJlbW92ZVRleHRUcmFjayhUZXh0VHJhY2sq
IHRyYWNrKQogewogICAgIFRyYWNrRGlzcGxheVVwZGF0ZVNjb3BlIHNjb3BlKHRoaXMpOwogICAg
IFRleHRUcmFja0N1ZUxpc3QqIGN1ZXMgPSB0cmFjay0+Y3VlcygpOwpAQCAtMjk0OCw3ICsyOTQ4
LDcgQEAgdm9pZCBIVE1MTWVkaWFFbGVtZW50OjpyZW1vdmVBbGxJbmJhbmRUcmFja3MoKQogICAg
ICAgICBUZXh0VHJhY2sqIHRyYWNrID0gbV90ZXh0VHJhY2tzLT5pdGVtKGkpOwogCiAgICAgICAg
IGlmICh0cmFjay0+dHJhY2tUeXBlKCkgPT0gVGV4dFRyYWNrOjpJbkJhbmQpCi0gICAgICAgICAg
ICByZW1vdmVUcmFjayh0cmFjayk7CisgICAgICAgICAgICByZW1vdmVUZXh0VHJhY2sodHJhY2sp
OwogICAgIH0KIH0KIApAQCAtMjk3OCw3ICsyOTc4LDcgQEAgUGFzc1JlZlB0cjxUZXh0VHJhY2s+
IEhUTUxNZWRpYUVsZW1lbnQ6OmFkZFRleHRUcmFjayhjb25zdCBTdHJpbmcmIGtpbmQsIGNvbnN0
IFMKICAgICAvLyBmaXJzdCBhcHBlbmQgdGhlIHRyYWNrIHRvIHRoZSB0ZXh0IHRyYWNrIGxpc3Qu
CiAKICAgICAvLyA2LiBBZGQgdGhlIG5ldyB0ZXh0IHRyYWNrIHRvIHRoZSBtZWRpYSBlbGVtZW50
J3MgbGlzdCBvZiB0ZXh0IHRyYWNrcy4KLSAgICBhZGRUcmFjayh0ZXh0VHJhY2suZ2V0KCkpOwor
ICAgIGFkZFRleHRUcmFjayh0ZXh0VHJhY2suZ2V0KCkpOwogCiAgICAgLy8gLi4uIGl0cyB0ZXh0
IHRyYWNrIHJlYWRpbmVzcyBzdGF0ZSB0byB0aGUgdGV4dCB0cmFjayBsb2FkZWQgc3RhdGUgLi4u
CiAgICAgdGV4dFRyYWNrLT5zZXRSZWFkaW5lc3NTdGF0ZShUZXh0VHJhY2s6OkxvYWRlZCk7CkBA
IC0zMDAwLDcgKzMwMDAsNyBAQCBUZXh0VHJhY2tMaXN0KiBIVE1MTWVkaWFFbGVtZW50Ojp0ZXh0
VHJhY2tzKCkKICAgICByZXR1cm4gbV90ZXh0VHJhY2tzLmdldCgpOwogfQogCi12b2lkIEhUTUxN
ZWRpYUVsZW1lbnQ6OmRpZEFkZFRyYWNrKEhUTUxUcmFja0VsZW1lbnQqIHRyYWNrRWxlbWVudCkK
K3ZvaWQgSFRNTE1lZGlhRWxlbWVudDo6ZGlkQWRkVGV4dFRyYWNrKEhUTUxUcmFja0VsZW1lbnQq
IHRyYWNrRWxlbWVudCkKIHsKICAgICBBU1NFUlQodHJhY2tFbGVtZW50LT5oYXNUYWdOYW1lKHRy
YWNrVGFnKSk7CiAKQEAgLTMwMTUsNyArMzAxNSw3IEBAIHZvaWQgSFRNTE1lZGlhRWxlbWVudDo6
ZGlkQWRkVHJhY2soSFRNTFRyYWNrRWxlbWVudCogdHJhY2tFbGVtZW50KQogICAgIGlmICghdGV4
dFRyYWNrKQogICAgICAgICByZXR1cm47CiAgICAgCi0gICAgYWRkVHJhY2sodGV4dFRyYWNrLmdl
dCgpKTsKKyAgICBhZGRUZXh0VHJhY2sodGV4dFRyYWNrLmdldCgpKTsKICAgICAKICAgICAvLyBE
byBub3Qgc2NoZWR1bGUgdGhlIHRyYWNrIGxvYWRpbmcgdW50aWwgcGFyc2luZyBmaW5pc2hlcyBz
byB3ZSBkb24ndCBzdGFydCBiZWZvcmUgYWxsIHRyYWNrcwogICAgIC8vIGluIHRoZSBtYXJrdXAg
aGF2ZSBiZWVuIGFkZGVkLgpAQCAtMzAyNiw3ICszMDI2LDcgQEAgdm9pZCBIVE1MTWVkaWFFbGVt
ZW50OjpkaWRBZGRUcmFjayhIVE1MVHJhY2tFbGVtZW50KiB0cmFja0VsZW1lbnQpCiAgICAgICAg
IG1lZGlhQ29udHJvbHMoKS0+Y2xvc2VkQ2FwdGlvblRyYWNrc0NoYW5nZWQoKTsKIH0KIAotdm9p
ZCBIVE1MTWVkaWFFbGVtZW50OjpkaWRSZW1vdmVUcmFjayhIVE1MVHJhY2tFbGVtZW50KiB0cmFj
a0VsZW1lbnQpCit2b2lkIEhUTUxNZWRpYUVsZW1lbnQ6OmRpZFJlbW92ZVRleHRUcmFjayhIVE1M
VHJhY2tFbGVtZW50KiB0cmFja0VsZW1lbnQpCiB7CiAgICAgQVNTRVJUKHRyYWNrRWxlbWVudC0+
aGFzVGFnTmFtZSh0cmFja1RhZykpOwogCkBAIC0zMDUzLDcgKzMwNTMsNyBAQCB2b2lkIEhUTUxN
ZWRpYUVsZW1lbnQ6OmRpZFJlbW92ZVRyYWNrKEhUTUxUcmFja0VsZW1lbnQqIHRyYWNrRWxlbWVu
dCkKICAgICAvLyBXaGVuIGEgdHJhY2sgZWxlbWVudCdzIHBhcmVudCBlbGVtZW50IGNoYW5nZXMg
YW5kIHRoZSBvbGQgcGFyZW50IHdhcyBhIG1lZGlhIGVsZW1lbnQsIAogICAgIC8vIHRoZW4gdGhl
IHVzZXIgYWdlbnQgbXVzdCByZW1vdmUgdGhlIHRyYWNrIGVsZW1lbnQncyBjb3JyZXNwb25kaW5n
IHRleHQgdHJhY2sgZnJvbSB0aGUgCiAgICAgLy8gbWVkaWEgZWxlbWVudCdzIGxpc3Qgb2YgdGV4
dCB0cmFja3MuCi0gICAgcmVtb3ZlVHJhY2sodGV4dFRyYWNrLmdldCgpKTsKKyAgICByZW1vdmVU
ZXh0VHJhY2sodGV4dFRyYWNrLmdldCgpKTsKIAogICAgIHNpemVfdCBpbmRleCA9IG1fdGV4dFRy
YWNrc1doZW5SZXNvdXJjZVNlbGVjdGlvbkJlZ2FuLmZpbmQodGV4dFRyYWNrLmdldCgpKTsKICAg
ICBpZiAoaW5kZXggIT0gbm90Rm91bmQpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9odG1s
L0hUTUxNZWRpYUVsZW1lbnQuaCBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTE1lZGlhRWxlbWVu
dC5oCmluZGV4IDhlNTNlNmYwOWNmMjViOGE5MWQxYzM1YTVkMmU5NTI1NTA0MmE0YWEuLmQwODVl
OWRmYjg4NjA0MDdlYWQ5MTkxZWMyN2NhYjRkOTJiOTc2NjMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJDb3JlL2h0bWwvSFRNTE1lZGlhRWxlbWVudC5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2h0bWwv
SFRNTE1lZGlhRWxlbWVudC5oCkBAIC01OCw3ICs1OCw2IEBAIGNsYXNzIE1lZGlhQ29udHJvbGxl
cjsKIGNsYXNzIE1lZGlhQ29udHJvbHM7CiBjbGFzcyBNZWRpYUVycm9yOwogY2xhc3MgS1VSTDsK
LWNsYXNzIFRleHRUcmFja0xpc3Q7CiBjbGFzcyBUaW1lUmFuZ2VzOwogI2lmIEVOQUJMRShQTFVH
SU5fUFJPWFlfRk9SX1ZJREVPKQogY2xhc3MgV2lkZ2V0OwpAQCAtNzIsNiArNzEsNyBAQCBjbGFz
cyBNZWRpYUtleXM7CiAKICNpZiBFTkFCTEUoVklERU9fVFJBQ0spCiBjbGFzcyBJbmJhbmRUZXh0
VHJhY2tQcml2YXRlOworY2xhc3MgVGV4dFRyYWNrTGlzdDsKIAogdHlwZWRlZiBQT0RJbnRlcnZh
bFRyZWU8ZG91YmxlLCBUZXh0VHJhY2tDdWUqPiBDdWVJbnRlcnZhbFRyZWU7CiB0eXBlZGVmIEN1
ZUludGVydmFsVHJlZTo6SW50ZXJ2YWxUeXBlIEN1ZUludGVydmFsOwpAQCAtMjI5LDE3ICsyMjks
MTcgQEAgcHVibGljOgogICAgIFRleHRUcmFja0xpc3QqIHRleHRUcmFja3MoKTsKICAgICBDdWVM
aXN0IGN1cnJlbnRseUFjdGl2ZUN1ZXMoKSBjb25zdCB7IHJldHVybiBtX2N1cnJlbnRseUFjdGl2
ZUN1ZXM7IH0KIAotICAgIHZvaWQgYWRkVHJhY2soVGV4dFRyYWNrKik7Ci0gICAgdm9pZCByZW1v
dmVUcmFjayhUZXh0VHJhY2sqKTsKKyAgICB2b2lkIGFkZFRleHRUcmFjayhUZXh0VHJhY2sqKTsK
KyAgICB2b2lkIHJlbW92ZVRleHRUcmFjayhUZXh0VHJhY2sqKTsKICAgICB2b2lkIHJlbW92ZUFs
bEluYmFuZFRyYWNrcygpOwogICAgIHZvaWQgY2xvc2VDYXB0aW9uVHJhY2tzQ2hhbmdlZCgpOwog
ICAgIHZvaWQgbm90aWZ5TWVkaWFQbGF5ZXJPZlRleHRUcmFja0NoYW5nZXMoKTsKIAotICAgIHZp
cnR1YWwgdm9pZCBkaWRBZGRUcmFjayhIVE1MVHJhY2tFbGVtZW50Kik7Ci0gICAgdmlydHVhbCB2
b2lkIGRpZFJlbW92ZVRyYWNrKEhUTUxUcmFja0VsZW1lbnQqKTsKKyAgICB2aXJ0dWFsIHZvaWQg
ZGlkQWRkVGV4dFRyYWNrKEhUTUxUcmFja0VsZW1lbnQqKTsKKyAgICB2aXJ0dWFsIHZvaWQgZGlk
UmVtb3ZlVGV4dFRyYWNrKEhUTUxUcmFja0VsZW1lbnQqKTsKIAotICAgIHZpcnR1YWwgdm9pZCBt
ZWRpYVBsYXllckRpZEFkZFRyYWNrKFBhc3NSZWZQdHI8SW5iYW5kVGV4dFRyYWNrUHJpdmF0ZT4p
IE9WRVJSSURFOwotICAgIHZpcnR1YWwgdm9pZCBtZWRpYVBsYXllckRpZFJlbW92ZVRyYWNrKFBh
c3NSZWZQdHI8SW5iYW5kVGV4dFRyYWNrUHJpdmF0ZT4pIE9WRVJSSURFOworICAgIHZpcnR1YWwg
dm9pZCBtZWRpYVBsYXllckRpZEFkZFRleHRUcmFjayhQYXNzUmVmUHRyPEluYmFuZFRleHRUcmFj
a1ByaXZhdGU+KSBPVkVSUklERTsKKyAgICB2aXJ0dWFsIHZvaWQgbWVkaWFQbGF5ZXJEaWRSZW1v
dmVUZXh0VHJhY2soUGFzc1JlZlB0cjxJbmJhbmRUZXh0VHJhY2tQcml2YXRlPikgT1ZFUlJJREU7
CiAKICNpZiBVU0UoUExBVEZPUk1fVEVYVF9UUkFDS19NRU5VKQogICAgIHZpcnR1YWwgdm9pZCBz
ZXRTZWxlY3RlZFRleHRUcmFjayhQYXNzUmVmUHRyPFBsYXRmb3JtVGV4dFRyYWNrPikgT1ZFUlJJ
REU7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxUcmFja0VsZW1lbnQuY3Bw
IGIvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MVHJhY2tFbGVtZW50LmNwcAppbmRleCBmYmJiM2U4
NWUwZGE2NzgwMTFhZjg0ZWZjOWE1Nzk5YzYzZjQ2M2Q0Li4wMTA1ODU1ZmNmMjU3MTk3NDljNTE2
MDhiNDY0OTJhMjAxYWMxMzAyIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxU
cmFja0VsZW1lbnQuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTFRyYWNrRWxlbWVu
dC5jcHAKQEAgLTgwLDE0ICs4MCwxNCBAQCBOb2RlOjpJbnNlcnRpb25Ob3RpZmljYXRpb25SZXF1
ZXN0IEhUTUxUcmFja0VsZW1lbnQ6Omluc2VydGVkSW50byhDb250YWluZXJOb2RlKgogICAgIEhU
TUxFbGVtZW50OjppbnNlcnRlZEludG8oaW5zZXJ0aW9uUG9pbnQpOwogICAgIEhUTUxNZWRpYUVs
ZW1lbnQqIHBhcmVudCA9IG1lZGlhRWxlbWVudCgpOwogICAgIGlmIChpbnNlcnRpb25Qb2ludCA9
PSBwYXJlbnQpCi0gICAgICAgIHBhcmVudC0+ZGlkQWRkVHJhY2sodGhpcyk7CisgICAgICAgIHBh
cmVudC0+ZGlkQWRkVGV4dFRyYWNrKHRoaXMpOwogICAgIHJldHVybiBJbnNlcnRpb25Eb25lOwog
fQogCiB2b2lkIEhUTUxUcmFja0VsZW1lbnQ6OnJlbW92ZWRGcm9tKENvbnRhaW5lck5vZGUqIGlu
c2VydGlvblBvaW50KQogewogICAgIGlmICghcGFyZW50Tm9kZSgpICYmIFdlYkNvcmU6OmlzTWVk
aWFFbGVtZW50KGluc2VydGlvblBvaW50KSkKLSAgICAgICAgdG9NZWRpYUVsZW1lbnQoaW5zZXJ0
aW9uUG9pbnQpLT5kaWRSZW1vdmVUcmFjayh0aGlzKTsKKyAgICAgICAgdG9NZWRpYUVsZW1lbnQo
aW5zZXJ0aW9uUG9pbnQpLT5kaWRSZW1vdmVUZXh0VHJhY2sodGhpcyk7CiAgICAgSFRNTEVsZW1l
bnQ6OnJlbW92ZWRGcm9tKGluc2VydGlvblBvaW50KTsKIH0KIApkaWZmIC0tZ2l0IGEvU291cmNl
L1dlYkNvcmUvaHRtbC90cmFjay9UZXh0VHJhY2suY3BwIGIvU291cmNlL1dlYkNvcmUvaHRtbC90
cmFjay9UZXh0VHJhY2suY3BwCmluZGV4IDMxOWRkZWE4NTk1YTQ2MjdhNmUxNWQ4YmVlYzMyMGNh
ODllYjU1ZmEuLmY1NDYwZTAxYmMzY2ExOTMyYzQxMDNhZTZhYWYzZjg4Y2FkMzQ0ZGYgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvdHJhY2svVGV4dFRyYWNrLmNwcAorKysgYi9Tb3Vy
Y2UvV2ViQ29yZS9odG1sL3RyYWNrL1RleHRUcmFjay5jcHAKQEAgLTExNCwxNCArMTE0LDEyIEBA
IFRleHRUcmFjayogVGV4dFRyYWNrOjpjYXB0aW9uTWVudUF1dG9tYXRpY0l0ZW0oKQogfQogCiBU
ZXh0VHJhY2s6OlRleHRUcmFjayhTY3JpcHRFeGVjdXRpb25Db250ZXh0KiBjb250ZXh0LCBUZXh0
VHJhY2tDbGllbnQqIGNsaWVudCwgY29uc3QgQXRvbWljU3RyaW5nJiBraW5kLCBjb25zdCBBdG9t
aWNTdHJpbmcmIGxhYmVsLCBjb25zdCBBdG9taWNTdHJpbmcmIGxhbmd1YWdlLCBUZXh0VHJhY2tU
eXBlIHR5cGUpCi0gICAgOiBUcmFja0Jhc2UoY29udGV4dCwgVHJhY2tCYXNlOjpUZXh0VHJhY2sp
CisgICAgOiBUcmFja0Jhc2UoVHJhY2tCYXNlOjpUZXh0VHJhY2ssIGxhYmVsLCBsYW5ndWFnZSkK
ICAgICAsIG1fY3VlcygwKQorICAgICwgbV9zY3JpcHRFeGVjdXRpb25Db250ZXh0KGNvbnRleHQp
CiAjaWYgRU5BQkxFKFdFQlZUVF9SRUdJT05TKQogICAgICwgbV9yZWdpb25zKDApCiAjZW5kaWYK
LSAgICAsIG1fbWVkaWFFbGVtZW50KDApCi0gICAgLCBtX2xhYmVsKGxhYmVsKQotICAgICwgbV9s
YW5ndWFnZShsYW5ndWFnZSkKICAgICAsIG1fbW9kZShkaXNhYmxlZEtleXdvcmQoKS5zdHJpbmco
KSkKICAgICAsIG1fY2xpZW50KGNsaWVudCkKICAgICAsIG1fdHJhY2tUeXBlKHR5cGUpCkBAIC0x
NDksNiArMTQ3LDMxIEBAIFRleHRUcmFjazo6flRleHRUcmFjaygpCiAgICAgY2xlYXJDbGllbnQo
KTsKIH0KIAorY29uc3QgQXRvbWljU3RyaW5nJiBUZXh0VHJhY2s6OmludGVyZmFjZU5hbWUoKSBj
b25zdAoreworICAgIHJldHVybiBldmVudE5hbWVzKCkuaW50ZXJmYWNlRm9yVGV4dFRyYWNrOwor
fQorCitTY3JpcHRFeGVjdXRpb25Db250ZXh0KiBUZXh0VHJhY2s6OnNjcmlwdEV4ZWN1dGlvbkNv
bnRleHQoKSBjb25zdAoreworICAgIHJldHVybiBtX3NjcmlwdEV4ZWN1dGlvbkNvbnRleHQ7Cit9
CisKK0V2ZW50VGFyZ2V0RGF0YSogVGV4dFRyYWNrOjpldmVudFRhcmdldERhdGEoKQoreworICAg
IHJldHVybiAmbV9ldmVudFRhcmdldERhdGE7Cit9CisKK0V2ZW50VGFyZ2V0RGF0YSogVGV4dFRy
YWNrOjplbnN1cmVFdmVudFRhcmdldERhdGEoKQoreworICAgIHJldHVybiAmbV9ldmVudFRhcmdl
dERhdGE7Cit9CisKK2Jvb2wgVGV4dFRyYWNrOjppc1ZhbGlkS2luZChjb25zdCBBdG9taWNTdHJp
bmcmIHZhbHVlKSBjb25zdAoreworICAgIHJldHVybiBUZXh0VHJhY2s6OmlzVmFsaWRLaW5kS2V5
d29yZCh2YWx1ZSk7Cit9CisKIGJvb2wgVGV4dFRyYWNrOjppc1ZhbGlkS2luZEtleXdvcmQoY29u
c3QgQXRvbWljU3RyaW5nJiB2YWx1ZSkKIHsKICAgICBpZiAodmFsdWUgPT0gc3VidGl0bGVzS2V5
d29yZCgpKQpAQCAtMTY3LDE2ICsxOTAsMTMgQEAgYm9vbCBUZXh0VHJhY2s6OmlzVmFsaWRLaW5k
S2V5d29yZChjb25zdCBBdG9taWNTdHJpbmcmIHZhbHVlKQogICAgIHJldHVybiBmYWxzZTsKIH0K
IAotdm9pZCBUZXh0VHJhY2s6OnNldEtpbmQoY29uc3QgQXRvbWljU3RyaW5nJiBraW5kKQordm9p
ZCBUZXh0VHJhY2s6OnNldEtpbmQoY29uc3QgQXRvbWljU3RyaW5nJiBuZXdLaW5kKQogewotICAg
IFN0cmluZyBvbGRLaW5kID0gbV9raW5kOworICAgIFN0cmluZyBvbGRLaW5kID0ga2luZCgpOwog
Ci0gICAgaWYgKGlzVmFsaWRLaW5kS2V5d29yZChraW5kKSkKLSAgICAgICAgbV9raW5kID0ga2lu
ZDsKLSAgICBlbHNlCi0gICAgICAgIG1fa2luZCA9IHN1YnRpdGxlc0tleXdvcmQoKTsKKyAgICBU
cmFja0Jhc2U6OnNldEtpbmQobmV3S2luZCk7CiAKLSAgICBpZiAobV9jbGllbnQgJiYgb2xkS2lu
ZCAhPSBtX2tpbmQpCisgICAgaWYgKG1fY2xpZW50ICYmIG9sZEtpbmQgIT0ga2luZCgpKQogICAg
ICAgICBtX2NsaWVudC0+dGV4dFRyYWNrS2luZENoYW5nZWQodGhpcyk7CiB9CiAKQEAgLTQxOSw3
ICs0MzksNyBAQCB2b2lkIFRleHRUcmFjazo6aW52YWxpZGF0ZVRyYWNrSW5kZXgoKQogCiBib29s
IFRleHRUcmFjazo6aXNSZW5kZXJlZCgpCiB7Ci0gICAgaWYgKG1fa2luZCAhPSBjYXB0aW9uc0tl
eXdvcmQoKSAmJiBtX2tpbmQgIT0gc3VidGl0bGVzS2V5d29yZCgpKQorICAgIGlmIChraW5kKCkg
IT0gY2FwdGlvbnNLZXl3b3JkKCkgJiYga2luZCgpICE9IHN1YnRpdGxlc0tleXdvcmQoKSkKICAg
ICAgICAgcmV0dXJuIGZhbHNlOwogCiAgICAgaWYgKG1fbW9kZSAhPSBzaG93aW5nS2V5d29yZCgp
KQpAQCAtNTEwLDE5ICs1MzAsMTkgQEAgUGFzc1JlZlB0cjxQbGF0Zm9ybVRleHRUcmFjaz4gVGV4
dFRyYWNrOjpwbGF0Zm9ybVRleHRUcmFjaygpCiAgICAgaWYgKG1fcGxhdGZvcm1UZXh0VHJhY2sp
CiAgICAgICAgIHJldHVybiBtX3BsYXRmb3JtVGV4dFRyYWNrOwogCi0gICAgUGxhdGZvcm1UZXh0
VHJhY2s6OlRyYWNrS2luZCBraW5kID0gUGxhdGZvcm1UZXh0VHJhY2s6OkNhcHRpb247Ci0gICAg
aWYgKG1fa2luZCA9PSBzdWJ0aXRsZXNLZXl3b3JkKCkpCi0gICAgICAgIGtpbmQgPSBQbGF0Zm9y
bVRleHRUcmFjazo6U3VidGl0bGU7Ci0gICAgZWxzZSBpZiAobV9raW5kID09IGNhcHRpb25zS2V5
d29yZCgpKQotICAgICAgICBraW5kID0gUGxhdGZvcm1UZXh0VHJhY2s6OkNhcHRpb247Ci0gICAg
ZWxzZSBpZiAobV9raW5kID09IGRlc2NyaXB0aW9uc0tleXdvcmQoKSkKLSAgICAgICAga2luZCA9
IFBsYXRmb3JtVGV4dFRyYWNrOjpEZXNjcmlwdGlvbjsKLSAgICBlbHNlIGlmIChtX2tpbmQgPT0g
Y2hhcHRlcnNLZXl3b3JkKCkpCi0gICAgICAgIGtpbmQgPSBQbGF0Zm9ybVRleHRUcmFjazo6Q2hh
cHRlcjsKLSAgICBlbHNlIGlmIChtX2tpbmQgPT0gbWV0YWRhdGFLZXl3b3JkKCkpCi0gICAgICAg
IGtpbmQgPSBQbGF0Zm9ybVRleHRUcmFjazo6TWV0YURhdGE7Ci0gICAgZWxzZSBpZiAobV9raW5k
ID09IGZvcmNlZEtleXdvcmQoKSkKLSAgICAgICAga2luZCA9IFBsYXRmb3JtVGV4dFRyYWNrOjpG
b3JjZWQ7CisgICAgUGxhdGZvcm1UZXh0VHJhY2s6OlRyYWNrS2luZCBwbGF0Zm9ybUtpbmQgPSBQ
bGF0Zm9ybVRleHRUcmFjazo6Q2FwdGlvbjsKKyAgICBpZiAoa2luZCgpID09IHN1YnRpdGxlc0tl
eXdvcmQoKSkKKyAgICAgICAgcGxhdGZvcm1LaW5kID0gUGxhdGZvcm1UZXh0VHJhY2s6OlN1YnRp
dGxlOworICAgIGVsc2UgaWYgKGtpbmQoKSA9PSBjYXB0aW9uc0tleXdvcmQoKSkKKyAgICAgICAg
cGxhdGZvcm1LaW5kID0gUGxhdGZvcm1UZXh0VHJhY2s6OkNhcHRpb247CisgICAgZWxzZSBpZiAo
a2luZCgpID09IGRlc2NyaXB0aW9uc0tleXdvcmQoKSkKKyAgICAgICAgcGxhdGZvcm1LaW5kID0g
UGxhdGZvcm1UZXh0VHJhY2s6OkRlc2NyaXB0aW9uOworICAgIGVsc2UgaWYgKGtpbmQoKSA9PSBj
aGFwdGVyc0tleXdvcmQoKSkKKyAgICAgICAgcGxhdGZvcm1LaW5kID0gUGxhdGZvcm1UZXh0VHJh
Y2s6OkNoYXB0ZXI7CisgICAgZWxzZSBpZiAoa2luZCgpID09IG1ldGFkYXRhS2V5d29yZCgpKQor
ICAgICAgICBwbGF0Zm9ybUtpbmQgPSBQbGF0Zm9ybVRleHRUcmFjazo6TWV0YURhdGE7CisgICAg
ZWxzZSBpZiAoa2luZCgpID09IGZvcmNlZEtleXdvcmQoKSkKKyAgICAgICAgcGxhdGZvcm1LaW5k
ID0gUGxhdGZvcm1UZXh0VHJhY2s6OkZvcmNlZDsKIAogICAgIFBsYXRmb3JtVGV4dFRyYWNrOjpU
cmFja1R5cGUgdHlwZSA9IFBsYXRmb3JtVGV4dFRyYWNrOjpPdXRPZkJhbmQ7CiAgICAgaWYgKG1f
dHJhY2tUeXBlID09IFRyYWNrRWxlbWVudCkKQEAgLTUzMiw3ICs1NTIsNyBAQCBQYXNzUmVmUHRy
PFBsYXRmb3JtVGV4dFRyYWNrPiBUZXh0VHJhY2s6OnBsYXRmb3JtVGV4dFRyYWNrKCkKICAgICBl
bHNlIGlmIChtX3RyYWNrVHlwZSA9PSBJbkJhbmQpCiAgICAgICAgIHR5cGUgPSBQbGF0Zm9ybVRl
eHRUcmFjazo6SW5CYW5kOwogCi0gICAgbV9wbGF0Zm9ybVRleHRUcmFjayA9IFBsYXRmb3JtVGV4
dFRyYWNrOjpjcmVhdGUodGhpcywgbV9sYWJlbCwgbV9sYW5ndWFnZSwga2luZCwgdHlwZSk7Cisg
ICAgbV9wbGF0Zm9ybVRleHRUcmFjayA9IFBsYXRmb3JtVGV4dFRyYWNrOjpjcmVhdGUodGhpcywg
bGFiZWwoKSwgbGFuZ3VhZ2UoKSwgcGxhdGZvcm1LaW5kLCB0eXBlKTsKIAogICAgIHJldHVybiBt
X3BsYXRmb3JtVGV4dFRyYWNrOwogfQpAQCAtNTQ0LDcgKzU2NCw3IEBAIGJvb2wgVGV4dFRyYWNr
Ojppc01haW5Qcm9ncmFtQ29udGVudCgpIGNvbnN0CiAgICAgLy8gZGlyZWN0b3JzIGNvbW1lbnRh
cnkgaXMgbm90ICJtYWluIHByb2dyYW0iIGJlY2F1c2UgaXQgaXMgbm90IGVzc2VudGlhbCBmb3Ig
dGhlIHByZXNlbnRhdGlvbi4gSFRNTDUgZG9lc24ndCBoYXZlCiAgICAgLy8gYSB3YXkgdG8gZXhw
cmVzcyB0aGlzIGluIGEgbWFjaGluZS1yZWFibGUgZm9ybSwgaXQgaXMgdHlwaWNhbGx5IGRvbmUg
d2l0aCB0aGUgdHJhY2sgbGFiZWwsIHNvIHdlIGFzc3VtZSB0aGF0IGNhcHRpb24KICAgICAvLyB0
cmFja3MgYXJlIG1haW4gY29udGVudCBhbmQgYWxsIG90aGVyIHRyYWNrIHR5cGVzIGFyZSBub3Qu
Ci0gICAgcmV0dXJuIG1fa2luZCA9PSBjYXB0aW9uc0tleXdvcmQoKTsKKyAgICByZXR1cm4ga2lu
ZCgpID09IGNhcHRpb25zS2V5d29yZCgpOwogfQogCiB9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9odG1sL3RyYWNrL1RleHRUcmFjay5oIGIvU291cmNl
L1dlYkNvcmUvaHRtbC90cmFjay9UZXh0VHJhY2suaAppbmRleCBlMmViNjYzOTFmMGY3MjM1NWE5
YjMwNDRjZTQ4ZTRkMTM2MzE3NWY4Li45NGFiN2UzMzNkNDIxMGIxZGVkMzVmODhmZmY5YTNlNWEw
N2NkODhmIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9odG1sL3RyYWNrL1RleHRUcmFjay5o
CisrKyBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvdHJhY2svVGV4dFRyYWNrLmgKQEAgLTQxLDcgKzQx
LDcgQEAKIAogbmFtZXNwYWNlIFdlYkNvcmUgewogCi1jbGFzcyBIVE1MTWVkaWFFbGVtZW50Owor
Y2xhc3MgU2NyaXB0RXhlY3V0aW9uQ29udGV4dDsKIGNsYXNzIFRleHRUcmFjazsKIGNsYXNzIFRl
eHRUcmFja0N1ZTsKIGNsYXNzIFRleHRUcmFja0N1ZUxpc3Q7CkBAIC02MSw3ICs2MSw3IEBAIHB1
YmxpYzoKICAgICB2aXJ0dWFsIHZvaWQgdGV4dFRyYWNrUmVtb3ZlQ3VlKFRleHRUcmFjayosIFBh
c3NSZWZQdHI8VGV4dFRyYWNrQ3VlPikgPSAwOwogfTsKIAotY2xhc3MgVGV4dFRyYWNrIDogcHVi
bGljIFRyYWNrQmFzZQorY2xhc3MgVGV4dFRyYWNrIDogcHVibGljIFRyYWNrQmFzZSwgcHVibGlj
IEV2ZW50VGFyZ2V0CiAjaWYgVVNFKFBMQVRGT1JNX1RFWFRfVFJBQ0tfTUVOVSkKICAgICAsIHB1
YmxpYyBQbGF0Zm9ybVRleHRUcmFja0NsaWVudAogI2VuZGlmCkBAIC03MywzMyArNzMsMjcgQEAg
cHVibGljOgogICAgIH0KICAgICB2aXJ0dWFsIH5UZXh0VHJhY2soKTsKIAorICAgIHZpcnR1YWwg
Y29uc3QgQXRvbWljU3RyaW5nJiBpbnRlcmZhY2VOYW1lKCkgY29uc3Q7CisgICAgdmlydHVhbCBT
Y3JpcHRFeGVjdXRpb25Db250ZXh0KiBzY3JpcHRFeGVjdXRpb25Db250ZXh0KCkgY29uc3Q7CisK
ICAgICBzdGF0aWMgVGV4dFRyYWNrKiBjYXB0aW9uTWVudU9mZkl0ZW0oKTsKICAgICBzdGF0aWMg
VGV4dFRyYWNrKiBjYXB0aW9uTWVudUF1dG9tYXRpY0l0ZW0oKTsKIAotICAgIHZvaWQgc2V0TWVk
aWFFbGVtZW50KEhUTUxNZWRpYUVsZW1lbnQqIGVsZW1lbnQpIHsgbV9tZWRpYUVsZW1lbnQgPSBl
bGVtZW50OyB9Ci0gICAgSFRNTE1lZGlhRWxlbWVudCogbWVkaWFFbGVtZW50KCkgeyByZXR1cm4g
bV9tZWRpYUVsZW1lbnQ7IH0KLQotICAgIEF0b21pY1N0cmluZyBraW5kKCkgY29uc3QgeyByZXR1
cm4gbV9raW5kOyB9Ci0gICAgdm9pZCBzZXRLaW5kKGNvbnN0IEF0b21pY1N0cmluZyYpOwotCiAg
ICAgc3RhdGljIGNvbnN0IEF0b21pY1N0cmluZyYgc3VidGl0bGVzS2V5d29yZCgpOwogICAgIHN0
YXRpYyBjb25zdCBBdG9taWNTdHJpbmcmIGNhcHRpb25zS2V5d29yZCgpOwogICAgIHN0YXRpYyBj
b25zdCBBdG9taWNTdHJpbmcmIGRlc2NyaXB0aW9uc0tleXdvcmQoKTsKICAgICBzdGF0aWMgY29u
c3QgQXRvbWljU3RyaW5nJiBjaGFwdGVyc0tleXdvcmQoKTsKICAgICBzdGF0aWMgY29uc3QgQXRv
bWljU3RyaW5nJiBtZXRhZGF0YUtleXdvcmQoKTsKICAgICBzdGF0aWMgY29uc3QgQXRvbWljU3Ry
aW5nJiBmb3JjZWRLZXl3b3JkKCk7CisgICAgdmlydHVhbCBjb25zdCBBdG9taWNTdHJpbmcmIGRl
ZmF1bHRLaW5kS2V5d29yZCgpIGNvbnN0IE9WRVJSSURFIHsgcmV0dXJuIHN1YnRpdGxlc0tleXdv
cmQoKTsgfQogICAgIHN0YXRpYyBib29sIGlzVmFsaWRLaW5kS2V5d29yZChjb25zdCBBdG9taWNT
dHJpbmcmKTsKIAotICAgIEF0b21pY1N0cmluZyBsYWJlbCgpIGNvbnN0IHsgcmV0dXJuIG1fbGFi
ZWw7IH0KLSAgICB2b2lkIHNldExhYmVsKGNvbnN0IEF0b21pY1N0cmluZyYgbGFiZWwpIHsgbV9s
YWJlbCA9IGxhYmVsOyB9Ci0KLSAgICBBdG9taWNTdHJpbmcgbGFuZ3VhZ2UoKSBjb25zdCB7IHJl
dHVybiBtX2xhbmd1YWdlOyB9Ci0gICAgdm9pZCBzZXRMYW5ndWFnZShjb25zdCBBdG9taWNTdHJp
bmcmIGxhbmd1YWdlKSB7IG1fbGFuZ3VhZ2UgPSBsYW5ndWFnZTsgfQotCiAgICAgc3RhdGljIGNv
bnN0IEF0b21pY1N0cmluZyYgZGlzYWJsZWRLZXl3b3JkKCk7CiAgICAgc3RhdGljIGNvbnN0IEF0
b21pY1N0cmluZyYgaGlkZGVuS2V5d29yZCgpOwogICAgIHN0YXRpYyBjb25zdCBBdG9taWNTdHJp
bmcmIHNob3dpbmdLZXl3b3JkKCk7CiAKKyAgICB2aXJ0dWFsIHZvaWQgc2V0S2luZChjb25zdCBB
dG9taWNTdHJpbmcmKSBPVkVSUklERTsKKwogICAgIEF0b21pY1N0cmluZyBtb2RlKCkgY29uc3Qg
eyByZXR1cm4gbV9tb2RlOyB9CiAgICAgdmlydHVhbCB2b2lkIHNldE1vZGUoY29uc3QgQXRvbWlj
U3RyaW5nJik7CiAKQEAgLTExMCw3ICsxMDQsNyBAQCBwdWJsaWM6CiAgICAgVGV4dFRyYWNrQ3Vl
TGlzdCogY3VlcygpOwogICAgIFRleHRUcmFja0N1ZUxpc3QqIGFjdGl2ZUN1ZXMoKSBjb25zdDsK
IAotICAgIHZvaWQgY2xlYXJDbGllbnQoKSB7IG1fY2xpZW50ID0gMDsgfQorICAgIHZpcnR1YWwg
dm9pZCBjbGVhckNsaWVudCgpIE9WRVJSSURFIHsgbV9jbGllbnQgPSAwOyB9CiAgICAgVGV4dFRy
YWNrQ2xpZW50KiBjbGllbnQoKSB7IHJldHVybiBtX2NsaWVudDsgfQogCiAgICAgdm9pZCBhZGRD
dWUoUGFzc1JlZlB0cjxUZXh0VHJhY2tDdWU+KTsKQEAgLTE1NSwxNSArMTQ5LDI1IEBAIHB1Ymxp
YzoKICAgICBQYXNzUmVmUHRyPFBsYXRmb3JtVGV4dFRyYWNrPiBwbGF0Zm9ybVRleHRUcmFjaygp
OwogI2VuZGlmCiAKKyAgICB1c2luZyBSZWZDb3VudGVkPFRyYWNrQmFzZT46OnJlZjsKKyAgICB1
c2luZyBSZWZDb3VudGVkPFRyYWNrQmFzZT46OmRlcmVmOworCiBwcm90ZWN0ZWQ6CiAgICAgVGV4
dFRyYWNrKFNjcmlwdEV4ZWN1dGlvbkNvbnRleHQqLCBUZXh0VHJhY2tDbGllbnQqLCBjb25zdCBB
dG9taWNTdHJpbmcmIGtpbmQsIGNvbnN0IEF0b21pY1N0cmluZyYgbGFiZWwsIGNvbnN0IEF0b21p
Y1N0cmluZyYgbGFuZ3VhZ2UsIFRleHRUcmFja1R5cGUpOwogI2lmIEVOQUJMRShWSURFT19UUkFD
SykgJiYgRU5BQkxFKFdFQlZUVF9SRUdJT05TKQogICAgIFRleHRUcmFja1JlZ2lvbkxpc3QqIHJl
Z2lvbkxpc3QoKTsKICNlbmRpZgogCisgICAgdmlydHVhbCBFdmVudFRhcmdldERhdGEqIGV2ZW50
VGFyZ2V0RGF0YSgpIE9WRVJSSURFOworICAgIHZpcnR1YWwgRXZlbnRUYXJnZXREYXRhKiBlbnN1
cmVFdmVudFRhcmdldERhdGEoKSBPVkVSUklERTsKKwogICAgIFJlZlB0cjxUZXh0VHJhY2tDdWVM
aXN0PiBtX2N1ZXM7CiAKIHByaXZhdGU6CisgICAgdmlydHVhbCBib29sIGlzVmFsaWRLaW5kKGNv
bnN0IEF0b21pY1N0cmluZyYpIGNvbnN0IE9WRVJSSURFOworCisgICAgdmlydHVhbCB2b2lkIHJl
ZkV2ZW50VGFyZ2V0KCkgT1ZFUlJJREUgeyByZWYoKTsgfQorICAgIHZpcnR1YWwgdm9pZCBkZXJl
ZkV2ZW50VGFyZ2V0KCkgT1ZFUlJJREUgeyBkZXJlZigpOyB9CiAKICNpZiBFTkFCTEUoVklERU9f
VFJBQ0spICYmIEVOQUJMRShXRUJWVFRfUkVHSU9OUykKICAgICBUZXh0VHJhY2tSZWdpb25MaXN0
KiBlbnN1cmVUZXh0VHJhY2tSZWdpb25MaXN0KCk7CkBAIC0xNzgsMTAgKzE4Miw4IEBAIHByaXZh
dGU6CiAKICAgICBUZXh0VHJhY2tDdWVMaXN0KiBlbnN1cmVUZXh0VHJhY2tDdWVMaXN0KCk7CiAK
LSAgICBIVE1MTWVkaWFFbGVtZW50KiBtX21lZGlhRWxlbWVudDsKLSAgICBBdG9taWNTdHJpbmcg
bV9raW5kOwotICAgIEF0b21pY1N0cmluZyBtX2xhYmVsOwotICAgIEF0b21pY1N0cmluZyBtX2xh
bmd1YWdlOworICAgIFNjcmlwdEV4ZWN1dGlvbkNvbnRleHQqIG1fc2NyaXB0RXhlY3V0aW9uQ29u
dGV4dDsKKyAgICBFdmVudFRhcmdldERhdGEgbV9ldmVudFRhcmdldERhdGE7CiAgICAgQXRvbWlj
U3RyaW5nIG1fbW9kZTsKICAgICBUZXh0VHJhY2tDbGllbnQqIG1fY2xpZW50OwogICAgIFRleHRU
cmFja1R5cGUgbV90cmFja1R5cGU7CkBAIC0xOTEsNiArMTkzLDEyIEBAIHByaXZhdGU6CiAgICAg
Ym9vbCBtX2hhc0JlZW5Db25maWd1cmVkOwogfTsKIAoraW5saW5lIFRleHRUcmFjayogdG9UZXh0
VHJhY2soVHJhY2tCYXNlKiB0cmFjaykKK3sKKyAgICBBU1NFUlQodHJhY2stPnR5cGUoKSA9PSBU
cmFja0Jhc2U6OlRleHRUcmFjayk7CisgICAgcmV0dXJuIHN0YXRpY19jYXN0PFRleHRUcmFjayo+
KHRyYWNrKTsKK30KKwogfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQogCiAjZW5kaWYKZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvdHJhY2svVGV4dFRyYWNrTGlzdC5jcHAgYi9Tb3VyY2Uv
V2ViQ29yZS9odG1sL3RyYWNrL1RleHRUcmFja0xpc3QuY3BwCmluZGV4IGFiNTM4OTAxMzkxNTdl
OWExNmI5YjY1MTQyOTlhYmU0MGYwNjdhYzMuLmJjMDk5YjA3MzQyMTRjZDBhNDI5NDdkNzkyMTQ1
YzNmZTFkMWM1NWEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvdHJhY2svVGV4dFRy
YWNrTGlzdC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvaHRtbC90cmFjay9UZXh0VHJhY2tMaXN0
LmNwcApAQCAtMzAsMjMgKzMwLDE2IEBACiAjaW5jbHVkZSAiVGV4dFRyYWNrTGlzdC5oIgogCiAj
aW5jbHVkZSAiRXZlbnROYW1lcy5oIgotI2luY2x1ZGUgIkhUTUxNZWRpYUVsZW1lbnQuaCIKICNp
bmNsdWRlICJJbmJhbmRUZXh0VHJhY2suaCIKICNpbmNsdWRlICJJbmJhbmRUZXh0VHJhY2tQcml2
YXRlLmgiCiAjaW5jbHVkZSAiTG9hZGFibGVUZXh0VHJhY2suaCIKLSNpbmNsdWRlICJTY3JpcHRF
eGVjdXRpb25Db250ZXh0LmgiCiAjaW5jbHVkZSAiVGV4dFRyYWNrLmgiCi0jaW5jbHVkZSAiVHJh
Y2tFdmVudC5oIgogCiB1c2luZyBuYW1lc3BhY2UgV2ViQ29yZTsKIAogVGV4dFRyYWNrTGlzdDo6
VGV4dFRyYWNrTGlzdChIVE1MTWVkaWFFbGVtZW50KiBvd25lciwgU2NyaXB0RXhlY3V0aW9uQ29u
dGV4dCogY29udGV4dCkKLSAgICA6IG1fY29udGV4dChjb250ZXh0KQotICAgICwgbV9vd25lcihv
d25lcikKLSAgICAsIG1fcGVuZGluZ0V2ZW50VGltZXIodGhpcywgJlRleHRUcmFja0xpc3Q6OmFz
eW5jRXZlbnRUaW1lckZpcmVkKQotICAgICwgbV9kaXNwYXRjaGluZ0V2ZW50cygwKQorICAgIDog
VHJhY2tMaXN0QmFzZShvd25lciwgY29udGV4dCkKIHsKLSAgICBBU1NFUlQoY29udGV4dC0+aXNE
b2N1bWVudCgpKTsKIH0KIAogVGV4dFRyYWNrTGlzdDo6flRleHRUcmFja0xpc3QoKQpAQCAtODAs
MjcgKzczLDI3IEBAIGludCBUZXh0VHJhY2tMaXN0OjpnZXRUcmFja0luZGV4UmVsYXRpdmVUb1Jl
bmRlcmVkVHJhY2tzKFRleHRUcmFjayAqdGV4dFRyYWNrKQogICAgIGludCB0cmFja0luZGV4ID0g
MDsKIAogICAgIGZvciAoc2l6ZV90IGkgPSAwOyBpIDwgbV9lbGVtZW50VHJhY2tzLnNpemUoKTsg
KytpKSB7Ci0gICAgICAgIGlmICghbV9lbGVtZW50VHJhY2tzW2ldLT5pc1JlbmRlcmVkKCkpCisg
ICAgICAgIGlmICghdG9UZXh0VHJhY2sobV9lbGVtZW50VHJhY2tzW2ldLmdldCgpKS0+aXNSZW5k
ZXJlZCgpKQogICAgICAgICAgICAgY29udGludWU7Ci0gICAgICAgIAorCiAgICAgICAgIGlmICht
X2VsZW1lbnRUcmFja3NbaV0gPT0gdGV4dFRyYWNrKQogICAgICAgICAgICAgcmV0dXJuIHRyYWNr
SW5kZXg7CiAgICAgICAgICsrdHJhY2tJbmRleDsKICAgICB9CiAKICAgICBmb3IgKHNpemVfdCBp
ID0gMDsgaSA8IG1fYWRkVHJhY2tUcmFja3Muc2l6ZSgpOyArK2kpIHsKLSAgICAgICAgaWYgKCFt
X2FkZFRyYWNrVHJhY2tzW2ldLT5pc1JlbmRlcmVkKCkpCisgICAgICAgIGlmICghdG9UZXh0VHJh
Y2sobV9hZGRUcmFja1RyYWNrc1tpXS5nZXQoKSktPmlzUmVuZGVyZWQoKSkKICAgICAgICAgICAg
IGNvbnRpbnVlOwotICAgICAgICAKKwogICAgICAgICBpZiAobV9hZGRUcmFja1RyYWNrc1tpXSA9
PSB0ZXh0VHJhY2spCiAgICAgICAgICAgICByZXR1cm4gdHJhY2tJbmRleDsKICAgICAgICAgKyt0
cmFja0luZGV4OwogICAgIH0KIAogICAgIGZvciAoc2l6ZV90IGkgPSAwOyBpIDwgbV9pbmJhbmRU
cmFja3Muc2l6ZSgpOyArK2kpIHsKLSAgICAgICAgaWYgKCFtX2luYmFuZFRyYWNrc1tpXS0+aXNS
ZW5kZXJlZCgpKQorICAgICAgICBpZiAoIXRvVGV4dFRyYWNrKG1faW5iYW5kVHJhY2tzW2ldLmdl
dCgpKS0+aXNSZW5kZXJlZCgpKQogICAgICAgICAgICAgY29udGludWU7Ci0gICAgICAgIAorCiAg
ICAgICAgIGlmIChtX2luYmFuZFRyYWNrc1tpXSA9PSB0ZXh0VHJhY2spCiAgICAgICAgICAgICBy
ZXR1cm4gdHJhY2tJbmRleDsKICAgICAgICAgKyt0cmFja0luZGV4OwpAQCAtMTIxLDMzICsxMTQs
MzMgQEAgVGV4dFRyYWNrKiBUZXh0VHJhY2tMaXN0OjppdGVtKHVuc2lnbmVkIGluZGV4KQogICAg
IC8vIHJlc291cmNlKSwgaW4gdGhlIG9yZGVyIGRlZmluZWQgYnkgdGhlIG1lZGlhIHJlc291cmNl
J3MgZm9ybWF0IHNwZWNpZmljYXRpb24uCiAKICAgICBpZiAoaW5kZXggPCBtX2VsZW1lbnRUcmFj
a3Muc2l6ZSgpKQotICAgICAgICByZXR1cm4gbV9lbGVtZW50VHJhY2tzW2luZGV4XS5nZXQoKTsK
KyAgICAgICAgcmV0dXJuIHRvVGV4dFRyYWNrKG1fZWxlbWVudFRyYWNrc1tpbmRleF0uZ2V0KCkp
OwogCiAgICAgaW5kZXggLT0gbV9lbGVtZW50VHJhY2tzLnNpemUoKTsKICAgICBpZiAoaW5kZXgg
PCBtX2FkZFRyYWNrVHJhY2tzLnNpemUoKSkKLSAgICAgICAgcmV0dXJuIG1fYWRkVHJhY2tUcmFj
a3NbaW5kZXhdLmdldCgpOworICAgICAgICByZXR1cm4gdG9UZXh0VHJhY2sobV9hZGRUcmFja1Ry
YWNrc1tpbmRleF0uZ2V0KCkpOwogCiAgICAgaW5kZXggLT0gbV9hZGRUcmFja1RyYWNrcy5zaXpl
KCk7CiAgICAgaWYgKGluZGV4IDwgbV9pbmJhbmRUcmFja3Muc2l6ZSgpKQotICAgICAgICByZXR1
cm4gbV9pbmJhbmRUcmFja3NbaW5kZXhdLmdldCgpOworICAgICAgICByZXR1cm4gdG9UZXh0VHJh
Y2sobV9pbmJhbmRUcmFja3NbaW5kZXhdLmdldCgpKTsKIAogICAgIHJldHVybiAwOwogfQogCiB2
b2lkIFRleHRUcmFja0xpc3Q6OmludmFsaWRhdGVUcmFja0luZGV4ZXNBZnRlclRyYWNrKFRleHRU
cmFjayogdHJhY2spCiB7Ci0gICAgVmVjdG9yPFJlZlB0cjxUZXh0VHJhY2s+ID4qIHRyYWNrcyA9
IDA7CisgICAgVmVjdG9yPFJlZlB0cjxUcmFja0Jhc2U+ID4qIHRyYWNrcyA9IDA7CiAKICAgICBp
ZiAodHJhY2stPnRyYWNrVHlwZSgpID09IFRleHRUcmFjazo6VHJhY2tFbGVtZW50KSB7CiAgICAg
ICAgIHRyYWNrcyA9ICZtX2VsZW1lbnRUcmFja3M7CiAgICAgICAgIGZvciAoc2l6ZV90IGkgPSAw
OyBpIDwgbV9hZGRUcmFja1RyYWNrcy5zaXplKCk7ICsraSkKLSAgICAgICAgICAgIG1fYWRkVHJh
Y2tUcmFja3NbaV0tPmludmFsaWRhdGVUcmFja0luZGV4KCk7CisgICAgICAgICAgICB0b1RleHRU
cmFjayhtX2FkZFRyYWNrVHJhY2tzW2ldLmdldCgpKS0+aW52YWxpZGF0ZVRyYWNrSW5kZXgoKTsK
ICAgICAgICAgZm9yIChzaXplX3QgaSA9IDA7IGkgPCBtX2luYmFuZFRyYWNrcy5zaXplKCk7ICsr
aSkKLSAgICAgICAgICAgIG1faW5iYW5kVHJhY2tzW2ldLT5pbnZhbGlkYXRlVHJhY2tJbmRleCgp
OworICAgICAgICAgICAgdG9UZXh0VHJhY2sobV9pbmJhbmRUcmFja3NbaV0uZ2V0KCkpLT5pbnZh
bGlkYXRlVHJhY2tJbmRleCgpOwogICAgIH0gZWxzZSBpZiAodHJhY2stPnRyYWNrVHlwZSgpID09
IFRleHRUcmFjazo6QWRkVHJhY2spIHsKICAgICAgICAgdHJhY2tzID0gJm1fYWRkVHJhY2tUcmFj
a3M7CiAgICAgICAgIGZvciAoc2l6ZV90IGkgPSAwOyBpIDwgbV9pbmJhbmRUcmFja3Muc2l6ZSgp
OyArK2kpCi0gICAgICAgICAgICBtX2luYmFuZFRyYWNrc1tpXS0+aW52YWxpZGF0ZVRyYWNrSW5k
ZXgoKTsKKyAgICAgICAgICAgIHRvVGV4dFRyYWNrKG1faW5iYW5kVHJhY2tzW2ldLmdldCgpKS0+
aW52YWxpZGF0ZVRyYWNrSW5kZXgoKTsKICAgICB9IGVsc2UgaWYgKHRyYWNrLT50cmFja1R5cGUo
KSA9PSBUZXh0VHJhY2s6OkluQmFuZCkKICAgICAgICAgdHJhY2tzID0gJm1faW5iYW5kVHJhY2tz
OwogICAgIGVsc2UKQEAgLTE1OCw3ICsxNTEsNyBAQCB2b2lkIFRleHRUcmFja0xpc3Q6OmludmFs
aWRhdGVUcmFja0luZGV4ZXNBZnRlclRyYWNrKFRleHRUcmFjayogdHJhY2spCiAgICAgICAgIHJl
dHVybjsKIAogICAgIGZvciAoc2l6ZV90IGkgPSBpbmRleDsgaSA8IHRyYWNrcy0+c2l6ZSgpOyAr
K2kpCi0gICAgICAgIHRyYWNrcy0+YXQoaW5kZXgpLT5pbnZhbGlkYXRlVHJhY2tJbmRleCgpOwor
ICAgICAgICB0b1RleHRUcmFjayh0cmFja3MtPmF0KGluZGV4KS5nZXQoKSktPmludmFsaWRhdGVU
cmFja0luZGV4KCk7CiB9CiAKIHZvaWQgVGV4dFRyYWNrTGlzdDo6YXBwZW5kKFBhc3NSZWZQdHI8
VGV4dFRyYWNrPiBwcnBUcmFjaykKQEAgLTE4MCwyMSArMTczLDIxIEBAIHZvaWQgVGV4dFRyYWNr
TGlzdDo6YXBwZW5kKFBhc3NSZWZQdHI8VGV4dFRyYWNrPiBwcnBUcmFjaykKIAogICAgIGludmFs
aWRhdGVUcmFja0luZGV4ZXNBZnRlclRyYWNrKHRyYWNrLmdldCgpKTsKIAotICAgIEFTU0VSVCgh
dHJhY2stPm1lZGlhRWxlbWVudCgpIHx8IHRyYWNrLT5tZWRpYUVsZW1lbnQoKSA9PSBtX293bmVy
KTsKLSAgICB0cmFjay0+c2V0TWVkaWFFbGVtZW50KG1fb3duZXIpOworICAgIEFTU0VSVCghdHJh
Y2stPm1lZGlhRWxlbWVudCgpIHx8IHRyYWNrLT5tZWRpYUVsZW1lbnQoKSA9PSBvd25lcigpKTsK
KyAgICB0cmFjay0+c2V0TWVkaWFFbGVtZW50KG93bmVyKCkpOwogCiAgICAgc2NoZWR1bGVBZGRU
cmFja0V2ZW50KHRyYWNrLnJlbGVhc2UoKSk7CiB9CiAKLXZvaWQgVGV4dFRyYWNrTGlzdDo6cmVt
b3ZlKFRleHRUcmFjayogdHJhY2spCit2b2lkIFRleHRUcmFja0xpc3Q6OnJlbW92ZShUcmFja0Jh
c2UqIHRyYWNrKQogewotICAgIFZlY3RvcjxSZWZQdHI8VGV4dFRyYWNrPiA+KiB0cmFja3MgPSAw
OwotCi0gICAgaWYgKHRyYWNrLT50cmFja1R5cGUoKSA9PSBUZXh0VHJhY2s6OlRyYWNrRWxlbWVu
dCkKKyAgICBUZXh0VHJhY2sqIHRleHRUcmFjayA9IHRvVGV4dFRyYWNrKHRyYWNrKTsKKyAgICBW
ZWN0b3I8UmVmUHRyPFRyYWNrQmFzZT4gPiogdHJhY2tzID0gMDsKKyAgICBpZiAodGV4dFRyYWNr
LT50cmFja1R5cGUoKSA9PSBUZXh0VHJhY2s6OlRyYWNrRWxlbWVudCkKICAgICAgICAgdHJhY2tz
ID0gJm1fZWxlbWVudFRyYWNrczsKLSAgICBlbHNlIGlmICh0cmFjay0+dHJhY2tUeXBlKCkgPT0g
VGV4dFRyYWNrOjpBZGRUcmFjaykKKyAgICBlbHNlIGlmICh0ZXh0VHJhY2stPnRyYWNrVHlwZSgp
ID09IFRleHRUcmFjazo6QWRkVHJhY2spCiAgICAgICAgIHRyYWNrcyA9ICZtX2FkZFRyYWNrVHJh
Y2tzOwotICAgIGVsc2UgaWYgKHRyYWNrLT50cmFja1R5cGUoKSA9PSBUZXh0VHJhY2s6OkluQmFu
ZCkKKyAgICBlbHNlIGlmICh0ZXh0VHJhY2stPnRyYWNrVHlwZSgpID09IFRleHRUcmFjazo6SW5C
YW5kKQogICAgICAgICB0cmFja3MgPSAmbV9pbmJhbmRUcmFja3M7CiAgICAgZWxzZQogICAgICAg
ICBBU1NFUlRfTk9UX1JFQUNIRUQoKTsKQEAgLTIwMywyNSArMTk2LDI1IEBAIHZvaWQgVGV4dFRy
YWNrTGlzdDo6cmVtb3ZlKFRleHRUcmFjayogdHJhY2spCiAgICAgaWYgKGluZGV4ID09IG5vdEZv
dW5kKQogICAgICAgICByZXR1cm47CiAKLSAgICBpbnZhbGlkYXRlVHJhY2tJbmRleGVzQWZ0ZXJU
cmFjayh0cmFjayk7CisgICAgaW52YWxpZGF0ZVRyYWNrSW5kZXhlc0FmdGVyVHJhY2sodGV4dFRy
YWNrKTsKIAotICAgIEFTU0VSVCghdHJhY2stPm1lZGlhRWxlbWVudCgpIHx8IHRyYWNrLT5tZWRp
YUVsZW1lbnQoKSA9PSBtX293bmVyKTsKKyAgICBBU1NFUlQoIXRyYWNrLT5tZWRpYUVsZW1lbnQo
KSB8fCB0cmFjay0+bWVkaWFFbGVtZW50KCkgPT0gb3duZXIoKSk7CiAgICAgdHJhY2stPnNldE1l
ZGlhRWxlbWVudCgwKTsKIAotICAgIFJlZlB0cjxUZXh0VHJhY2s+IHRyYWNrUmVmID0gKCp0cmFj
a3MpW2luZGV4XTsKKyAgICBSZWZQdHI8VHJhY2tCYXNlPiB0cmFja1JlZiA9ICgqdHJhY2tzKVtp
bmRleF07CiAgICAgdHJhY2tzLT5yZW1vdmUoaW5kZXgpOwogICAgIHNjaGVkdWxlUmVtb3ZlVHJh
Y2tFdmVudCh0cmFja1JlZi5yZWxlYXNlKCkpOwogfQogCi1ib29sIFRleHRUcmFja0xpc3Q6OmNv
bnRhaW5zKFRleHRUcmFjayogdHJhY2spIGNvbnN0Citib29sIFRleHRUcmFja0xpc3Q6OmNvbnRh
aW5zKFRyYWNrQmFzZSogdHJhY2spIGNvbnN0CiB7Ci0gICAgY29uc3QgVmVjdG9yPFJlZlB0cjxU
ZXh0VHJhY2s+ID4qIHRyYWNrcyA9IDA7Ci0gICAgCi0gICAgaWYgKHRyYWNrLT50cmFja1R5cGUo
KSA9PSBUZXh0VHJhY2s6OlRyYWNrRWxlbWVudCkKKyAgICBjb25zdCBWZWN0b3I8UmVmUHRyPFRy
YWNrQmFzZT4gPiogdHJhY2tzID0gMDsKKyAgICBUZXh0VHJhY2s6OlRleHRUcmFja1R5cGUgdHlw
ZSA9IHRvVGV4dFRyYWNrKHRyYWNrKS0+dHJhY2tUeXBlKCk7CisgICAgaWYgKHR5cGUgPT0gVGV4
dFRyYWNrOjpUcmFja0VsZW1lbnQpCiAgICAgICAgIHRyYWNrcyA9ICZtX2VsZW1lbnRUcmFja3M7
Ci0gICAgZWxzZSBpZiAodHJhY2stPnRyYWNrVHlwZSgpID09IFRleHRUcmFjazo6QWRkVHJhY2sp
CisgICAgZWxzZSBpZiAodHlwZSA9PSBUZXh0VHJhY2s6OkFkZFRyYWNrKQogICAgICAgICB0cmFj
a3MgPSAmbV9hZGRUcmFja1RyYWNrczsKLSAgICBlbHNlIGlmICh0cmFjay0+dHJhY2tUeXBlKCkg
PT0gVGV4dFRyYWNrOjpJbkJhbmQpCisgICAgZWxzZSBpZiAodHlwZSA9PSBUZXh0VHJhY2s6Oklu
QmFuZCkKICAgICAgICAgdHJhY2tzID0gJm1faW5iYW5kVHJhY2tzOwogICAgIGVsc2UKICAgICAg
ICAgQVNTRVJUX05PVF9SRUFDSEVEKCk7CkBAIC0yMzQsNjQgKzIyNyw0IEBAIGNvbnN0IEF0b21p
Y1N0cmluZyYgVGV4dFRyYWNrTGlzdDo6aW50ZXJmYWNlTmFtZSgpIGNvbnN0CiAgICAgcmV0dXJu
IGV2ZW50TmFtZXMoKS5pbnRlcmZhY2VGb3JUZXh0VHJhY2tMaXN0OwogfQogCi12b2lkIFRleHRU
cmFja0xpc3Q6OnNjaGVkdWxlQWRkVHJhY2tFdmVudChQYXNzUmVmUHRyPFRleHRUcmFjaz4gdHJh
Y2spCi17Ci0gICAgLy8gNC44LjEwLjEyLjMgU291cmNpbmcgb3V0LW9mLWJhbmQgdGV4dCB0cmFj
a3MKLSAgICAvLyA0LjguMTAuMTIuNCBUZXh0IHRyYWNrIEFQSQotICAgIC8vIC4uLiB0aGVuIHF1
ZXVlIGEgdGFzayB0byBmaXJlIGFuIGV2ZW50IHdpdGggdGhlIG5hbWUgYWRkdHJhY2ssIHRoYXQg
ZG9lcyBub3QgCi0gICAgLy8gYnViYmxlIGFuZCBpcyBub3QgY2FuY2VsYWJsZSwgYW5kIHRoYXQg
dXNlcyB0aGUgVHJhY2tFdmVudCBpbnRlcmZhY2UsIHdpdGggCi0gICAgLy8gdGhlIHRyYWNrIGF0
dHJpYnV0ZSBpbml0aWFsaXplZCB0byB0aGUgdGV4dCB0cmFjaydzIFRleHRUcmFjayBvYmplY3Qs
IGF0IAotICAgIC8vIHRoZSBtZWRpYSBlbGVtZW50J3MgdGV4dFRyYWNrcyBhdHRyaWJ1dGUncyBU
ZXh0VHJhY2tMaXN0IG9iamVjdC4KLQotICAgIFJlZlB0cjxUZXh0VHJhY2s+IHRyYWNrUmVmID0g
dHJhY2s7Ci0gICAgVHJhY2tFdmVudEluaXQgaW5pdGlhbGl6ZXI7Ci0gICAgaW5pdGlhbGl6ZXIu
dHJhY2sgPSB0cmFja1JlZjsKLSAgICBpbml0aWFsaXplci5idWJibGVzID0gZmFsc2U7Ci0gICAg
aW5pdGlhbGl6ZXIuY2FuY2VsYWJsZSA9IGZhbHNlOwotCi0gICAgbV9wZW5kaW5nRXZlbnRzLmFw
cGVuZChUcmFja0V2ZW50OjpjcmVhdGUoZXZlbnROYW1lcygpLmFkZHRyYWNrRXZlbnQsIGluaXRp
YWxpemVyKSk7Ci0gICAgaWYgKCFtX3BlbmRpbmdFdmVudFRpbWVyLmlzQWN0aXZlKCkpCi0gICAg
ICAgIG1fcGVuZGluZ0V2ZW50VGltZXIuc3RhcnRPbmVTaG90KDApOwotfQotCi12b2lkIFRleHRU
cmFja0xpc3Q6OnNjaGVkdWxlUmVtb3ZlVHJhY2tFdmVudChQYXNzUmVmUHRyPFRleHRUcmFjaz4g
dHJhY2spCi17Ci0gICAgLy8gNC44LjEwLjEyLjMgU291cmNpbmcgb3V0LW9mLWJhbmQgdGV4dCB0
cmFja3MKLSAgICAvLyBXaGVuIGEgdHJhY2sgZWxlbWVudCdzIHBhcmVudCBlbGVtZW50IGNoYW5n
ZXMgYW5kIHRoZSBvbGQgcGFyZW50IHdhcyBhCi0gICAgLy8gbWVkaWEgZWxlbWVudCwgdGhlbiB0
aGUgdXNlciBhZ2VudCBtdXN0IHJlbW92ZSB0aGUgdHJhY2sgZWxlbWVudCdzCi0gICAgLy8gY29y
cmVzcG9uZGluZyB0ZXh0IHRyYWNrIGZyb20gdGhlIG1lZGlhIGVsZW1lbnQncyBsaXN0IG9mIHRl
eHQgdHJhY2tzLAotICAgIC8vIGFuZCB0aGVuIHF1ZXVlIGEgdGFzayB0byBmaXJlIGEgdHJ1c3Rl
ZCBldmVudCB3aXRoIHRoZSBuYW1lIHJlbW92ZXRyYWNrLAotICAgIC8vIHRoYXQgZG9lcyBub3Qg
YnViYmxlIGFuZCBpcyBub3QgY2FuY2VsYWJsZSwgYW5kIHRoYXQgdXNlcyB0aGUgVHJhY2tFdmVu
dAotICAgIC8vIGludGVyZmFjZSwgd2l0aCB0aGUgdHJhY2sgYXR0cmlidXRlIGluaXRpYWxpemVk
IHRvIHRoZSB0ZXh0IHRyYWNrJ3MKLSAgICAvLyBUZXh0VHJhY2sgb2JqZWN0LCBhdCB0aGUgbWVk
aWEgZWxlbWVudCdzIHRleHRUcmFja3MgYXR0cmlidXRlJ3MKLSAgICAvLyBUZXh0VHJhY2tMaXN0
IG9iamVjdC4KLQotICAgIFJlZlB0cjxUcmFja0Jhc2U+IHRyYWNrUmVmID0gdHJhY2s7Ci0gICAg
VHJhY2tFdmVudEluaXQgaW5pdGlhbGl6ZXI7Ci0gICAgaW5pdGlhbGl6ZXIudHJhY2sgPSB0cmFj
a1JlZjsKLSAgICBpbml0aWFsaXplci5idWJibGVzID0gZmFsc2U7Ci0gICAgaW5pdGlhbGl6ZXIu
Y2FuY2VsYWJsZSA9IGZhbHNlOwotCi0gICAgbV9wZW5kaW5nRXZlbnRzLmFwcGVuZChUcmFja0V2
ZW50OjpjcmVhdGUoZXZlbnROYW1lcygpLnJlbW92ZXRyYWNrRXZlbnQsIGluaXRpYWxpemVyKSk7
Ci0gICAgaWYgKCFtX3BlbmRpbmdFdmVudFRpbWVyLmlzQWN0aXZlKCkpCi0gICAgICAgIG1fcGVu
ZGluZ0V2ZW50VGltZXIuc3RhcnRPbmVTaG90KDApOwotfQotCi12b2lkIFRleHRUcmFja0xpc3Q6
OmFzeW5jRXZlbnRUaW1lckZpcmVkKFRpbWVyPFRleHRUcmFja0xpc3Q+KikKLXsKLSAgICBWZWN0
b3I8UmVmUHRyPEV2ZW50PiA+IHBlbmRpbmdFdmVudHM7Ci0KLSAgICArK21fZGlzcGF0Y2hpbmdF
dmVudHM7Ci0gICAgbV9wZW5kaW5nRXZlbnRzLnN3YXAocGVuZGluZ0V2ZW50cyk7Ci0gICAgc2l6
ZV90IGNvdW50ID0gcGVuZGluZ0V2ZW50cy5zaXplKCk7Ci0gICAgZm9yIChzaXplX3QgaW5kZXgg
PSAwOyBpbmRleCA8IGNvdW50OyArK2luZGV4KQotICAgICAgICBkaXNwYXRjaEV2ZW50KHBlbmRp
bmdFdmVudHNbaW5kZXhdLnJlbGVhc2UoKSwgSUdOT1JFX0VYQ0VQVElPTik7Ci0gICAgLS1tX2Rp
c3BhdGNoaW5nRXZlbnRzOwotfQotCi1Ob2RlKiBUZXh0VHJhY2tMaXN0Ojpvd25lcigpIGNvbnN0
Ci17Ci0gICAgcmV0dXJuIG1fb3duZXI7Ci19Ci0KICNlbmRpZgpkaWZmIC0tZ2l0IGEvU291cmNl
L1dlYkNvcmUvaHRtbC90cmFjay9UZXh0VHJhY2tMaXN0LmggYi9Tb3VyY2UvV2ViQ29yZS9odG1s
L3RyYWNrL1RleHRUcmFja0xpc3QuaAppbmRleCAzMmE2MjVlZTBkOWM3OTYwN2Y3ZTVhZWE0Mjg4
ZjI0NTdkZTFiZTA0Li41ZGQzYmVmODQ2NjkzYjVkOTg3ZmRmZmY2NmJkODAxMTU4MzZiNGMxIDEw
MDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9odG1sL3RyYWNrL1RleHRUcmFja0xpc3QuaAorKysg
Yi9Tb3VyY2UvV2ViQ29yZS9odG1sL3RyYWNrL1RleHRUcmFja0xpc3QuaApAQCAtMjgsMjEgKzI4
LDEzIEBACiAKICNpZiBFTkFCTEUoVklERU9fVFJBQ0spCiAKLSNpbmNsdWRlICJFdmVudExpc3Rl
bmVyLmgiCi0jaW5jbHVkZSAiRXZlbnRUYXJnZXQuaCIKLSNpbmNsdWRlICJUaW1lci5oIgotI2lu
Y2x1ZGUgPGFsZ29yaXRobT4KLSNpbmNsdWRlIDx3dGYvUGFzc1JlZlB0ci5oPgotI2luY2x1ZGUg
PHd0Zi9SZWZDb3VudGVkLmg+Ci0jaW5jbHVkZSA8d3RmL1ZlY3Rvci5oPgorI2luY2x1ZGUgIlRy
YWNrTGlzdEJhc2UuaCIKIAogbmFtZXNwYWNlIFdlYkNvcmUgewogCi1jbGFzcyBIVE1MTWVkaWFF
bGVtZW50OwogY2xhc3MgVGV4dFRyYWNrOwotY2xhc3MgVGV4dFRyYWNrTGlzdDsKIAotY2xhc3Mg
VGV4dFRyYWNrTGlzdCA6IHB1YmxpYyBSZWZDb3VudGVkPFRleHRUcmFja0xpc3Q+LCBwdWJsaWMg
RXZlbnRUYXJnZXQgeworY2xhc3MgVGV4dFRyYWNrTGlzdCA6IHB1YmxpYyBUcmFja0xpc3RCYXNl
IHsKIHB1YmxpYzoKICAgICBzdGF0aWMgUGFzc1JlZlB0cjxUZXh0VHJhY2tMaXN0PiBjcmVhdGUo
SFRNTE1lZGlhRWxlbWVudCogb3duZXIsIFNjcmlwdEV4ZWN1dGlvbkNvbnRleHQqIGNvbnRleHQp
CiAgICAgewpAQCAtNTAsNTYgKzQyLDI1IEBAIHB1YmxpYzoKICAgICB9CiAgICAgflRleHRUcmFj
a0xpc3QoKTsKIAotICAgIHVuc2lnbmVkIGxlbmd0aCgpIGNvbnN0OworICAgIHZpcnR1YWwgdW5z
aWduZWQgbGVuZ3RoKCkgY29uc3QgT1ZFUlJJREU7CiAgICAgaW50IGdldFRyYWNrSW5kZXgoVGV4
dFRyYWNrKik7CiAgICAgaW50IGdldFRyYWNrSW5kZXhSZWxhdGl2ZVRvUmVuZGVyZWRUcmFja3Mo
VGV4dFRyYWNrKik7Ci0gICAgYm9vbCBjb250YWlucyhUZXh0VHJhY2sqKSBjb25zdDsKKyAgICB2
aXJ0dWFsIGJvb2wgY29udGFpbnMoVHJhY2tCYXNlKikgY29uc3QgT1ZFUlJJREU7CiAKICAgICBU
ZXh0VHJhY2sqIGl0ZW0odW5zaWduZWQgaW5kZXgpOwogICAgIHZvaWQgYXBwZW5kKFBhc3NSZWZQ
dHI8VGV4dFRyYWNrPik7Ci0gICAgdm9pZCByZW1vdmUoVGV4dFRyYWNrKik7CisgICAgdmlydHVh
bCB2b2lkIHJlbW92ZShUcmFja0Jhc2UqKSBPVkVSUklERTsKIAogICAgIC8vIEV2ZW50VGFyZ2V0
CiAgICAgdmlydHVhbCBjb25zdCBBdG9taWNTdHJpbmcmIGludGVyZmFjZU5hbWUoKSBjb25zdDsK
LSAgICB1c2luZyBSZWZDb3VudGVkPFRleHRUcmFja0xpc3Q+OjpyZWY7Ci0gICAgdXNpbmcgUmVm
Q291bnRlZDxUZXh0VHJhY2tMaXN0Pjo6ZGVyZWY7Ci0gICAgdmlydHVhbCBTY3JpcHRFeGVjdXRp
b25Db250ZXh0KiBzY3JpcHRFeGVjdXRpb25Db250ZXh0KCkgY29uc3QgeyByZXR1cm4gbV9jb250
ZXh0OyB9Ci0KLSAgICBERUZJTkVfQVRUUklCVVRFX0VWRU5UX0xJU1RFTkVSKGFkZHRyYWNrKTsK
LSAgICBERUZJTkVfQVRUUklCVVRFX0VWRU5UX0xJU1RFTkVSKHJlbW92ZXRyYWNrKTsKLQotICAg
IHZvaWQgY2xlYXJPd25lcigpIHsgbV9vd25lciA9IDA7IH0KLSAgICBOb2RlKiBvd25lcigpIGNv
bnN0OwotCi0gICAgYm9vbCBpc0ZpcmluZ0V2ZW50TGlzdGVuZXJzKCkgeyByZXR1cm4gbV9kaXNw
YXRjaGluZ0V2ZW50czsgfQogCiBwcml2YXRlOgogICAgIFRleHRUcmFja0xpc3QoSFRNTE1lZGlh
RWxlbWVudCosIFNjcmlwdEV4ZWN1dGlvbkNvbnRleHQqKTsKIAotICAgIC8vIEV2ZW50VGFyZ2V0
Ci0gICAgdmlydHVhbCB2b2lkIHJlZkV2ZW50VGFyZ2V0KCkgeyByZWYoKTsgfQotICAgIHZpcnR1
YWwgdm9pZCBkZXJlZkV2ZW50VGFyZ2V0KCkgeyBkZXJlZigpOyB9Ci0gICAgdmlydHVhbCBFdmVu
dFRhcmdldERhdGEqIGV2ZW50VGFyZ2V0RGF0YSgpIHsgcmV0dXJuICZtX2V2ZW50VGFyZ2V0RGF0
YTsgfQotICAgIHZpcnR1YWwgRXZlbnRUYXJnZXREYXRhKiBlbnN1cmVFdmVudFRhcmdldERhdGEo
KSB7IHJldHVybiAmbV9ldmVudFRhcmdldERhdGE7IH0KLQotICAgIHZvaWQgc2NoZWR1bGVBZGRU
cmFja0V2ZW50KFBhc3NSZWZQdHI8VGV4dFRyYWNrPik7Ci0gICAgdm9pZCBzY2hlZHVsZVJlbW92
ZVRyYWNrRXZlbnQoUGFzc1JlZlB0cjxUZXh0VHJhY2s+KTsKLSAgICB2b2lkIGFzeW5jRXZlbnRU
aW1lckZpcmVkKFRpbWVyPFRleHRUcmFja0xpc3Q+Kik7Ci0KICAgICB2b2lkIGludmFsaWRhdGVU
cmFja0luZGV4ZXNBZnRlclRyYWNrKFRleHRUcmFjayopOwogCi0gICAgU2NyaXB0RXhlY3V0aW9u
Q29udGV4dCogbV9jb250ZXh0OwotICAgIEhUTUxNZWRpYUVsZW1lbnQqIG1fb3duZXI7Ci0KLSAg
ICBWZWN0b3I8UmVmUHRyPEV2ZW50PiA+IG1fcGVuZGluZ0V2ZW50czsKLSAgICBUaW1lcjxUZXh0
VHJhY2tMaXN0PiBtX3BlbmRpbmdFdmVudFRpbWVyOwotCi0gICAgRXZlbnRUYXJnZXREYXRhIG1f
ZXZlbnRUYXJnZXREYXRhOwotICAgIFZlY3RvcjxSZWZQdHI8VGV4dFRyYWNrPiA+IG1fYWRkVHJh
Y2tUcmFja3M7Ci0gICAgVmVjdG9yPFJlZlB0cjxUZXh0VHJhY2s+ID4gbV9lbGVtZW50VHJhY2tz
OwotICAgIFZlY3RvcjxSZWZQdHI8VGV4dFRyYWNrPiA+IG1faW5iYW5kVHJhY2tzOwotCi0gICAg
aW50IG1fZGlzcGF0Y2hpbmdFdmVudHM7CisgICAgVmVjdG9yPFJlZlB0cjxUcmFja0Jhc2U+ID4g
bV9hZGRUcmFja1RyYWNrczsKKyAgICBWZWN0b3I8UmVmUHRyPFRyYWNrQmFzZT4gPiBtX2VsZW1l
bnRUcmFja3M7CiB9OwogCiB9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViQ29yZS9odG1sL3RyYWNrL1RyYWNrQmFzZS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9odG1s
L3RyYWNrL1RyYWNrQmFzZS5jcHAKaW5kZXggNmEyYzM1ODIzZTYxOTYyYTM3YzlmOGY0Y2VmZDk4
OWRkYWI1MGRmZS4uZGU0ZTM4NTc0Y2Q4MTgwMmE2YWUwMTAxYTMwMGM2YjI5MGI5ODJhYyAxMDA2
NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvaHRtbC90cmFjay9UcmFja0Jhc2UuY3BwCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL2h0bWwvdHJhY2svVHJhY2tCYXNlLmNwcApAQCAtMzAsOCArMzAsMTAgQEAK
IAogbmFtZXNwYWNlIFdlYkNvcmUgewogCi1UcmFja0Jhc2U6OlRyYWNrQmFzZShTY3JpcHRFeGVj
dXRpb25Db250ZXh0KiBjb250ZXh0LCBUeXBlIHR5cGUpCi0gICAgOiBtX3NjcmlwdEV4ZWN1dGlv
bkNvbnRleHQoY29udGV4dCkKK1RyYWNrQmFzZTo6VHJhY2tCYXNlKFR5cGUgdHlwZSwgY29uc3Qg
QXRvbWljU3RyaW5nJiBsYWJlbCwgY29uc3QgQXRvbWljU3RyaW5nJiBsYW5ndWFnZSkKKyAgICA6
IG1fbWVkaWFFbGVtZW50KDApCisgICAgLCBtX2xhYmVsKGxhYmVsKQorICAgICwgbV9sYW5ndWFn
ZShsYW5ndWFnZSkKIHsKICAgICBBU1NFUlQodHlwZSAhPSBCYXNlVHJhY2spOwogICAgIG1fdHlw
ZSA9IHR5cGU7CkBAIC00MSwyNCArNDMsMTQgQEAgVHJhY2tCYXNlOjp+VHJhY2tCYXNlKCkKIHsK
IH0KIAotY29uc3QgQXRvbWljU3RyaW5nJiBUcmFja0Jhc2U6OmludGVyZmFjZU5hbWUoKSBjb25z
dAordm9pZCBUcmFja0Jhc2U6OnNldEtpbmQoY29uc3QgQXRvbWljU3RyaW5nJiBraW5kKQogewot
ICAgIHJldHVybiBldmVudE5hbWVzKCkuaW50ZXJmYWNlRm9yVGV4dFRyYWNrOwotfQotCi1TY3Jp
cHRFeGVjdXRpb25Db250ZXh0KiBUcmFja0Jhc2U6OnNjcmlwdEV4ZWN1dGlvbkNvbnRleHQoKSBj
b25zdAotewotICAgIHJldHVybiBtX3NjcmlwdEV4ZWN1dGlvbkNvbnRleHQ7Ci19CisgICAgU3Ry
aW5nIG9sZEtpbmQgPSBtX2tpbmQ7CiAKLUV2ZW50VGFyZ2V0RGF0YSogVHJhY2tCYXNlOjpldmVu
dFRhcmdldERhdGEoKQotewotICAgIHJldHVybiAmbV9ldmVudFRhcmdldERhdGE7Ci19Ci0KLUV2
ZW50VGFyZ2V0RGF0YSogVHJhY2tCYXNlOjplbnN1cmVFdmVudFRhcmdldERhdGEoKQotewotICAg
IHJldHVybiAmbV9ldmVudFRhcmdldERhdGE7CisgICAgaWYgKGlzVmFsaWRLaW5kKGtpbmQpKQor
ICAgICAgICBtX2tpbmQgPSBraW5kOworICAgIGVsc2UKKyAgICAgICAgbV9raW5kID0gZGVmYXVs
dEtpbmRLZXl3b3JkKCk7CiB9CiAKIH0gLy8gbmFtZXNwYWNlIFdlYkNvcmUKZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJDb3JlL2h0bWwvdHJhY2svVHJhY2tCYXNlLmggYi9Tb3VyY2UvV2ViQ29yZS9o
dG1sL3RyYWNrL1RyYWNrQmFzZS5oCmluZGV4IGMwMDY2MGYwNTNhZDY0OTQxNjU4ZjIwZDc1MDMw
Y2FiYzkzMjc5ODkuLjU0NjI4OThjMGUwNTdlMjI3MGM5MTQxYTZhZDUyYjQzMmRhNzI0OGMgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvdHJhY2svVHJhY2tCYXNlLmgKKysrIGIvU291
cmNlL1dlYkNvcmUvaHRtbC90cmFjay9UcmFja0Jhc2UuaApAQCAtMzMsMzUgKzMzLDQyIEBACiAK
IG5hbWVzcGFjZSBXZWJDb3JlIHsKIAotY2xhc3MgU2NyaXB0RXhlY3V0aW9uQ29udGV4dDsKK2Ns
YXNzIEhUTUxNZWRpYUVsZW1lbnQ7CiAKLWNsYXNzIFRyYWNrQmFzZSA6IHB1YmxpYyBSZWZDb3Vu
dGVkPFRyYWNrQmFzZT4sIHB1YmxpYyBFdmVudFRhcmdldCB7CitjbGFzcyBUcmFja0Jhc2UgOiBw
dWJsaWMgUmVmQ291bnRlZDxUcmFja0Jhc2U+IHsKIHB1YmxpYzoKICAgICB2aXJ0dWFsIH5UcmFj
a0Jhc2UoKTsKIAogICAgIGVudW0gVHlwZSB7IEJhc2VUcmFjaywgVGV4dFRyYWNrLCBBdWRpb1Ry
YWNrLCBWaWRlb1RyYWNrIH07CiAgICAgVHlwZSB0eXBlKCkgY29uc3QgeyByZXR1cm4gbV90eXBl
OyB9CiAKLSAgICB2aXJ0dWFsIGNvbnN0IEF0b21pY1N0cmluZyYgaW50ZXJmYWNlTmFtZSgpIGNv
bnN0OwotICAgIHZpcnR1YWwgU2NyaXB0RXhlY3V0aW9uQ29udGV4dCogc2NyaXB0RXhlY3V0aW9u
Q29udGV4dCgpIGNvbnN0OwotICAgIAotICAgIHVzaW5nIFJlZkNvdW50ZWQ8VHJhY2tCYXNlPjo6
cmVmOwotICAgIHVzaW5nIFJlZkNvdW50ZWQ8VHJhY2tCYXNlPjo6ZGVyZWY7CisgICAgdm9pZCBz
ZXRNZWRpYUVsZW1lbnQoSFRNTE1lZGlhRWxlbWVudCogZWxlbWVudCkgeyBtX21lZGlhRWxlbWVu
dCA9IGVsZW1lbnQ7IH0KKyAgICBIVE1MTWVkaWFFbGVtZW50KiBtZWRpYUVsZW1lbnQoKSB7IHJl
dHVybiBtX21lZGlhRWxlbWVudDsgfQorCisgICAgQXRvbWljU3RyaW5nIGtpbmQoKSBjb25zdCB7
IHJldHVybiBtX2tpbmQ7IH0KKyAgICB2aXJ0dWFsIHZvaWQgc2V0S2luZChjb25zdCBBdG9taWNT
dHJpbmcmKTsKKworICAgIEF0b21pY1N0cmluZyBsYWJlbCgpIGNvbnN0IHsgcmV0dXJuIG1fbGFi
ZWw7IH0KKyAgICB2b2lkIHNldExhYmVsKGNvbnN0IEF0b21pY1N0cmluZyYgbGFiZWwpIHsgbV9s
YWJlbCA9IGxhYmVsOyB9CisKKyAgICBBdG9taWNTdHJpbmcgbGFuZ3VhZ2UoKSBjb25zdCB7IHJl
dHVybiBtX2xhbmd1YWdlOyB9CisgICAgdm9pZCBzZXRMYW5ndWFnZShjb25zdCBBdG9taWNTdHJp
bmcmIGxhbmd1YWdlKSB7IG1fbGFuZ3VhZ2UgPSBsYW5ndWFnZTsgfQorCisgICAgdmlydHVhbCB2
b2lkIGNsZWFyQ2xpZW50KCkgPSAwOwogCiBwcm90ZWN0ZWQ6Ci0gICAgVHJhY2tCYXNlKFNjcmlw
dEV4ZWN1dGlvbkNvbnRleHQqLCBUeXBlKTsKLSAgICAKLSAgICB2aXJ0dWFsIEV2ZW50VGFyZ2V0
RGF0YSogZXZlbnRUYXJnZXREYXRhKCk7Ci0gICAgdmlydHVhbCBFdmVudFRhcmdldERhdGEqIGVu
c3VyZUV2ZW50VGFyZ2V0RGF0YSgpOworICAgIFRyYWNrQmFzZShUeXBlLCBjb25zdCBBdG9taWNT
dHJpbmcmIGxhYmVsLCBjb25zdCBBdG9taWNTdHJpbmcmIGxhbmd1YWdlKTsKKworICAgIHZpcnR1
YWwgYm9vbCBpc1ZhbGlkS2luZChjb25zdCBBdG9taWNTdHJpbmcmKSBjb25zdCA9IDA7CisgICAg
dmlydHVhbCBjb25zdCBBdG9taWNTdHJpbmcmIGRlZmF1bHRLaW5kS2V5d29yZCgpIGNvbnN0ID0g
MDsKKworICAgIEhUTUxNZWRpYUVsZW1lbnQqIG1fbWVkaWFFbGVtZW50OwogCiBwcml2YXRlOgog
ICAgIFR5cGUgbV90eXBlOwotICAgIAotICAgIHZpcnR1YWwgdm9pZCByZWZFdmVudFRhcmdldCgp
IHsgcmVmKCk7IH0KLSAgICB2aXJ0dWFsIHZvaWQgZGVyZWZFdmVudFRhcmdldCgpIHsgZGVyZWYo
KTsgfQotICAgIAotICAgIFNjcmlwdEV4ZWN1dGlvbkNvbnRleHQqIG1fc2NyaXB0RXhlY3V0aW9u
Q29udGV4dDsKLSAgICBFdmVudFRhcmdldERhdGEgbV9ldmVudFRhcmdldERhdGE7CisgICAgQXRv
bWljU3RyaW5nIG1fa2luZDsKKyAgICBBdG9taWNTdHJpbmcgbV9sYWJlbDsKKyAgICBBdG9taWNT
dHJpbmcgbV9sYW5ndWFnZTsKIH07CiAKIH0gLy8gbmFtZXNwYWNlIFdlYkNvcmUKZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvdHJhY2svVHJhY2tMaXN0QmFzZS5jcHAgYi9Tb3VyY2Uv
V2ViQ29yZS9odG1sL3RyYWNrL1RyYWNrTGlzdEJhc2UuY3BwCm5ldyBmaWxlIG1vZGUgMTAwNjQ0
CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjVjNTBiY2Iw
M2Y0NjhlZTVmMmI2MGMwMjIxMjg0NmMzM2E1ZDM4NjkKLS0tIC9kZXYvbnVsbAorKysgYi9Tb3Vy
Y2UvV2ViQ29yZS9odG1sL3RyYWNrL1RyYWNrTGlzdEJhc2UuY3BwCkBAIC0wLDAgKzEsMTc4IEBA
CisvKgorICogQ29weXJpZ2h0IChDKSAyMDExLCAyMDEyIEFwcGxlIEluYy4gIEFsbCByaWdodHMg
cmVzZXJ2ZWQuCisgKgorICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJp
bmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CisgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0
ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKKyAqIGFyZSBtZXQ6Cisg
KiAxLiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3Zl
IGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhl
IGZvbGxvd2luZyBkaXNjbGFpbWVyLgorICogMi4gUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBm
b3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhp
cyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUK
KyAqICAgIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRo
IHRoZSBkaXN0cmlidXRpb24uCisgKgorICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBB
UFBMRSBDT01QVVRFUiwgSU5DLiBgYEFTIElTJycgQU5EIEFOWQorICogRVhQUkVTUyBPUiBJTVBM
SUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBUSEUKKyAqIElN
UExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFS
VElDVUxBUgorICogUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gIElOIE5PIEVWRU5UIFNIQUxMIEFQ
UExFIENPTVBVVEVSLCBJTkMuIE9SCisgKiBDT05UUklCVVRPUlMgQkUgTElBQkxFIEZPUiBBTlkg
RElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwKKyAqIEVYRU1QTEFSWSwgT1Ig
Q09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywKKyAq
IFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNF
LCBEQVRBLCBPUgorICogUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVS
IENBVVNFRCBBTkQgT04gQU5ZIFRIRU9SWQorICogT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENP
TlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUCisgKiAoSU5DTFVESU5HIE5FR0xJR0VO
Q0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UKKyAqIE9G
IFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VD
SCBEQU1BR0UuIAorICovCisKKyNpbmNsdWRlICJjb25maWcuaCIKKworI2lmIEVOQUJMRShWSURF
T19UUkFDSykKKworI2luY2x1ZGUgIlRyYWNrTGlzdEJhc2UuaCIKKworI2luY2x1ZGUgIkV2ZW50
TmFtZXMuaCIKKyNpbmNsdWRlICJIVE1MTWVkaWFFbGVtZW50LmgiCisjaW5jbHVkZSAiU2NyaXB0
RXhlY3V0aW9uQ29udGV4dC5oIgorI2luY2x1ZGUgIlRyYWNrQmFzZS5oIgorI2luY2x1ZGUgIlRy
YWNrRXZlbnQuaCIKKwordXNpbmcgbmFtZXNwYWNlIFdlYkNvcmU7CisKK1RyYWNrTGlzdEJhc2U6
OlRyYWNrTGlzdEJhc2UoSFRNTE1lZGlhRWxlbWVudCogb3duZXIsIFNjcmlwdEV4ZWN1dGlvbkNv
bnRleHQqIGNvbnRleHQpCisgICAgOiBtX2NvbnRleHQoY29udGV4dCkKKyAgICAsIG1fb3duZXIo
b3duZXIpCisgICAgLCBtX3BlbmRpbmdFdmVudFRpbWVyKHRoaXMsICZUcmFja0xpc3RCYXNlOjph
c3luY0V2ZW50VGltZXJGaXJlZCkKKyAgICAsIG1fZGlzcGF0Y2hpbmdFdmVudHMoMCkKK3sKKyAg
ICBBU1NFUlQoY29udGV4dC0+aXNEb2N1bWVudCgpKTsKK30KKworVHJhY2tMaXN0QmFzZTo6flRy
YWNrTGlzdEJhc2UoKQoreworfQorCit1bnNpZ25lZCBUcmFja0xpc3RCYXNlOjpsZW5ndGgoKSBj
b25zdAoreworICAgIHJldHVybiBtX2luYmFuZFRyYWNrcy5zaXplKCk7Cit9CisKK3ZvaWQgVHJh
Y2tMaXN0QmFzZTo6cmVtb3ZlKFRyYWNrQmFzZSogdHJhY2spCit7CisgICAgc2l6ZV90IGluZGV4
ID0gbV9pbmJhbmRUcmFja3MuZmluZCh0cmFjayk7CisgICAgQVNTRVJUKGluZGV4ICE9IG5vdEZv
dW5kKTsKKworICAgIEFTU0VSVCh0cmFjay0+bWVkaWFFbGVtZW50KCkgPT0gbV9vd25lcik7Cisg
ICAgdHJhY2stPnNldE1lZGlhRWxlbWVudCgwKTsKKworICAgIFJlZlB0cjxUcmFja0Jhc2U+IHRy
YWNrUmVmID0gbV9pbmJhbmRUcmFja3NbaW5kZXhdOworCisgICAgbV9pbmJhbmRUcmFja3MucmVt
b3ZlKGluZGV4KTsKKworICAgIHNjaGVkdWxlUmVtb3ZlVHJhY2tFdmVudCh0cmFja1JlZi5yZWxl
YXNlKCkpOworfQorCitib29sIFRyYWNrTGlzdEJhc2U6OmNvbnRhaW5zKFRyYWNrQmFzZSogdHJh
Y2spIGNvbnN0Cit7CisgICAgcmV0dXJuIG1faW5iYW5kVHJhY2tzLmZpbmQodHJhY2spICE9IG5v
dEZvdW5kOworfQorCit2b2lkIFRyYWNrTGlzdEJhc2U6OnNjaGVkdWxlQWRkVHJhY2tFdmVudChQ
YXNzUmVmUHRyPFRyYWNrQmFzZT4gdHJhY2spCit7CisgICAgLy8gNC44LjEwLjUgTG9hZGluZyB0
aGUgbWVkaWEgcmVzb3VyY2UKKyAgICAvLyAuLi4KKyAgICAvLyBGaXJlIGEgdHJ1c3RlZCBldmVu
dCB3aXRoIHRoZSBuYW1lIGFkZHRyYWNrLCB0aGF0IGRvZXMgbm90IGJ1YmJsZSBhbmQgaXMKKyAg
ICAvLyBub3QgY2FuY2VsYWJsZSwgYW5kIHRoYXQgdXNlcyB0aGUgVHJhY2tFdmVudCBpbnRlcmZh
Y2UsIHdpdGggdGhlIHRyYWNrCisgICAgLy8gYXR0cmlidXRlIGluaXRpYWxpemVkIHRvIHRoZSBu
ZXcgQXVkaW9UcmFjayBvYmplY3QsIGF0IHRoaXMKKyAgICAvLyBBdWRpb1RyYWNrTGlzdCBvYmpl
Y3QuCisgICAgLy8gLi4uCisgICAgLy8gRmlyZSBhIHRydXN0ZWQgZXZlbnQgd2l0aCB0aGUgbmFt
ZSBhZGR0cmFjaywgdGhhdCBkb2VzIG5vdCBidWJibGUgYW5kIGlzCisgICAgLy8gbm90IGNhbmNl
bGFibGUsIGFuZCB0aGF0IHVzZXMgdGhlIFRyYWNrRXZlbnQgaW50ZXJmYWNlLCB3aXRoIHRoZSB0
cmFjaworICAgIC8vIGF0dHJpYnV0ZSBpbml0aWFsaXplZCB0byB0aGUgbmV3IFZpZGVvVHJhY2sg
b2JqZWN0LCBhdCB0aGlzCisgICAgLy8gVmlkZW9UcmFja0xpc3Qgb2JqZWN0LgorCisgICAgLy8g
NC44LjEwLjEyLjMgU291cmNpbmcgb3V0LW9mLWJhbmQgdGV4dCB0cmFja3MKKyAgICAvLyA0Ljgu
MTAuMTIuNCBUZXh0IHRyYWNrIEFQSQorICAgIC8vIC4uLiB0aGVuIHF1ZXVlIGEgdGFzayB0byBm
aXJlIGFuIGV2ZW50IHdpdGggdGhlIG5hbWUgYWRkdHJhY2ssIHRoYXQgZG9lcyBub3QKKyAgICAv
LyBidWJibGUgYW5kIGlzIG5vdCBjYW5jZWxhYmxlLCBhbmQgdGhhdCB1c2VzIHRoZSBUcmFja0V2
ZW50IGludGVyZmFjZSwgd2l0aAorICAgIC8vIHRoZSB0cmFjayBhdHRyaWJ1dGUgaW5pdGlhbGl6
ZWQgdG8gdGhlIHRleHQgdHJhY2sncyBUZXh0VHJhY2sgb2JqZWN0LCBhdAorICAgIC8vIHRoZSBt
ZWRpYSBlbGVtZW50J3MgdGV4dFRyYWNrcyBhdHRyaWJ1dGUncyBUZXh0VHJhY2tMaXN0IG9iamVj
dC4gCisKKyAgICBSZWZQdHI8VHJhY2tCYXNlPiB0cmFja1JlZiA9IHRyYWNrOworICAgIFRyYWNr
RXZlbnRJbml0IGluaXRpYWxpemVyOworICAgIGluaXRpYWxpemVyLnRyYWNrID0gdHJhY2tSZWY7
CisgICAgaW5pdGlhbGl6ZXIuYnViYmxlcyA9IGZhbHNlOworICAgIGluaXRpYWxpemVyLmNhbmNl
bGFibGUgPSBmYWxzZTsKKworICAgIG1fcGVuZGluZ0V2ZW50cy5hcHBlbmQoVHJhY2tFdmVudDo6
Y3JlYXRlKGV2ZW50TmFtZXMoKS5hZGR0cmFja0V2ZW50LCBpbml0aWFsaXplcikpOworICAgIGlm
ICghbV9wZW5kaW5nRXZlbnRUaW1lci5pc0FjdGl2ZSgpKQorICAgICAgICBtX3BlbmRpbmdFdmVu
dFRpbWVyLnN0YXJ0T25lU2hvdCgwKTsKK30KKwordm9pZCBUcmFja0xpc3RCYXNlOjpzY2hlZHVs
ZVJlbW92ZVRyYWNrRXZlbnQoUGFzc1JlZlB0cjxUcmFja0Jhc2U+IHRyYWNrKQoreworICAgIC8v
IDQuOC4xMC42IE9mZnNldHMgaW50byB0aGUgbWVkaWEgcmVzb3VyY2UKKyAgICAvLyBJZiBhdCBh
bnkgdGltZSB0aGUgdXNlciBhZ2VudCBsZWFybnMgdGhhdCBhbiBhdWRpbyBvciB2aWRlbyB0cmFj
ayBoYXMKKyAgICAvLyBlbmRlZCBhbmQgYWxsIG1lZGlhIGRhdGEgcmVsYXRpbmcgdG8gdGhhdCB0
cmFjayBjb3JyZXNwb25kcyB0byBwYXJ0cyBvZgorICAgIC8vIHRoZSBtZWRpYSB0aW1lbGluZSB0
aGF0IGFyZSBiZWZvcmUgdGhlIGVhcmxpZXN0IHBvc3NpYmxlIHBvc2l0aW9uLCB0aGUKKyAgICAv
LyB1c2VyIGFnZW50IG1heSBxdWV1ZSBhIHRhc2sgdG8gcmVtb3ZlIHRoZSB0cmFjayBmcm9tIHRo
ZSBhdWRpb1RyYWNrcworICAgIC8vIGF0dHJpYnV0ZSdzIEF1ZGlvVHJhY2tMaXN0IG9iamVjdCBv
ciB0aGUgdmlkZW9UcmFja3MgYXR0cmlidXRlJ3MKKyAgICAvLyBWaWRlb1RyYWNrTGlzdCBvYmpl
Y3QgYXMgYXBwcm9wcmlhdGUgYW5kIHRoZW4gZmlyZSBhIHRydXN0ZWQgZXZlbnQKKyAgICAvLyB3
aXRoIHRoZSBuYW1lIHJlbW92ZXRyYWNrLCB0aGF0IGRvZXMgbm90IGJ1YmJsZSBhbmQgaXMgbm90
IGNhbmNlbGFibGUsCisgICAgLy8gYW5kIHRoYXQgdXNlcyB0aGUgVHJhY2tFdmVudCBpbnRlcmZh
Y2UsIHdpdGggdGhlIHRyYWNrIGF0dHJpYnV0ZQorICAgIC8vIGluaXRpYWxpemVkIHRvIHRoZSBB
dWRpb1RyYWNrIG9yIFZpZGVvVHJhY2sgb2JqZWN0IHJlcHJlc2VudGluZyB0aGUKKyAgICAvLyB0
cmFjaywgYXQgdGhlIG1lZGlhIGVsZW1lbnQncyBhZm9yZW1lbnRpb25lZCBBdWRpb1RyYWNrTGlz
dCBvcgorICAgIC8vIFZpZGVvVHJhY2tMaXN0IG9iamVjdC4KKworICAgIC8vIDQuOC4xMC4xMi4z
IFNvdXJjaW5nIG91dC1vZi1iYW5kIHRleHQgdHJhY2tzCisgICAgLy8gV2hlbiBhIHRyYWNrIGVs
ZW1lbnQncyBwYXJlbnQgZWxlbWVudCBjaGFuZ2VzIGFuZCB0aGUgb2xkIHBhcmVudCB3YXMgYQor
ICAgIC8vIG1lZGlhIGVsZW1lbnQsIHRoZW4gdGhlIHVzZXIgYWdlbnQgbXVzdCByZW1vdmUgdGhl
IHRyYWNrIGVsZW1lbnQncworICAgIC8vIGNvcnJlc3BvbmRpbmcgdGV4dCB0cmFjayBmcm9tIHRo
ZSBtZWRpYSBlbGVtZW50J3MgbGlzdCBvZiB0ZXh0IHRyYWNrcywKKyAgICAvLyBhbmQgdGhlbiBx
dWV1ZSBhIHRhc2sgdG8gZmlyZSBhIHRydXN0ZWQgZXZlbnQgd2l0aCB0aGUgbmFtZSByZW1vdmV0
cmFjaywKKyAgICAvLyB0aGF0IGRvZXMgbm90IGJ1YmJsZSBhbmQgaXMgbm90IGNhbmNlbGFibGUs
IGFuZCB0aGF0IHVzZXMgdGhlIFRyYWNrRXZlbnQKKyAgICAvLyBpbnRlcmZhY2UsIHdpdGggdGhl
IHRyYWNrIGF0dHJpYnV0ZSBpbml0aWFsaXplZCB0byB0aGUgdGV4dCB0cmFjaydzCisgICAgLy8g
VGV4dFRyYWNrIG9iamVjdCwgYXQgdGhlIG1lZGlhIGVsZW1lbnQncyB0ZXh0VHJhY2tzIGF0dHJp
YnV0ZSdzCisgICAgLy8gVGV4dFRyYWNrTGlzdCBvYmplY3QuCisKKyAgICBSZWZQdHI8VHJhY2tC
YXNlPiB0cmFja1JlZiA9IHRyYWNrOworICAgIFRyYWNrRXZlbnRJbml0IGluaXRpYWxpemVyOwor
ICAgIGluaXRpYWxpemVyLnRyYWNrID0gdHJhY2tSZWY7CisgICAgaW5pdGlhbGl6ZXIuYnViYmxl
cyA9IGZhbHNlOworICAgIGluaXRpYWxpemVyLmNhbmNlbGFibGUgPSBmYWxzZTsKKworICAgIG1f
cGVuZGluZ0V2ZW50cy5hcHBlbmQoVHJhY2tFdmVudDo6Y3JlYXRlKGV2ZW50TmFtZXMoKS5yZW1v
dmV0cmFja0V2ZW50LCBpbml0aWFsaXplcikpOworICAgIGlmICghbV9wZW5kaW5nRXZlbnRUaW1l
ci5pc0FjdGl2ZSgpKQorICAgICAgICBtX3BlbmRpbmdFdmVudFRpbWVyLnN0YXJ0T25lU2hvdCgw
KTsKK30KKwordm9pZCBUcmFja0xpc3RCYXNlOjpzY2hlZHVsZUNoYW5nZUV2ZW50KCkKK3sKKyAg
ICAvLyA0LjguMTAuNiBPZmZzZXRzIGludG8gdGhlIG1lZGlhIHJlc291cmNlCisgICAgLy8gV2hl
bmV2ZXIgYW4gYXVkaW8gdHJhY2sgaW4gYW4gQXVkaW9UcmFja0xpc3QgaXMgZW5hYmxlZCBvciBk
aXNhYmxlZCwgdGhlCisgICAgLy8gdXNlciBhZ2VudCBtdXN0IHF1ZXVlIGEgdGFzayB0byBmaXJl
IGEgc2ltcGxlIGV2ZW50IG5hbWVkIGNoYW5nZSBhdCB0aGUKKyAgICAvLyBBdWRpb1RyYWNrTGlz
dCBvYmplY3QuCisgICAgLy8gLi4uCisgICAgLy8gV2hlbmV2ZXIgYSB0cmFjayBpbiBhIFZpZGVv
VHJhY2tMaXN0IHRoYXQgd2FzIHByZXZpb3VzbHkgbm90IHNlbGVjdGVkIGlzCisgICAgLy8gc2Vs
ZWN0ZWQsIHRoZSB1c2VyIGFnZW50IG11c3QgcXVldWUgYSB0YXNrIHRvIGZpcmUgYSBzaW1wbGUg
ZXZlbnQgbmFtZWQKKyAgICAvLyBjaGFuZ2UgYXQgdGhlIFZpZGVvVHJhY2tMaXN0IG9iamVjdC4K
KworICAgIEV2ZW50SW5pdCBpbml0aWFsaXplcjsKKyAgICBpbml0aWFsaXplci5idWJibGVzID0g
ZmFsc2U7CisgICAgaW5pdGlhbGl6ZXIuY2FuY2VsYWJsZSA9IGZhbHNlOworCisgICAgbV9wZW5k
aW5nRXZlbnRzLmFwcGVuZChFdmVudDo6Y3JlYXRlKGV2ZW50TmFtZXMoKS5jaGFuZ2VFdmVudCwg
aW5pdGlhbGl6ZXIpKTsKKyAgICBpZiAoIW1fcGVuZGluZ0V2ZW50VGltZXIuaXNBY3RpdmUoKSkK
KyAgICAgICAgbV9wZW5kaW5nRXZlbnRUaW1lci5zdGFydE9uZVNob3QoMCk7Cit9CisKK3ZvaWQg
VHJhY2tMaXN0QmFzZTo6YXN5bmNFdmVudFRpbWVyRmlyZWQoVGltZXI8VHJhY2tMaXN0QmFzZT4q
KQoreworICAgIFZlY3RvcjxSZWZQdHI8RXZlbnQ+ID4gcGVuZGluZ0V2ZW50czsKKworICAgICsr
bV9kaXNwYXRjaGluZ0V2ZW50czsKKyAgICBtX3BlbmRpbmdFdmVudHMuc3dhcChwZW5kaW5nRXZl
bnRzKTsKKyAgICBzaXplX3QgY291bnQgPSBwZW5kaW5nRXZlbnRzLnNpemUoKTsKKyAgICBmb3Ig
KHNpemVfdCBpbmRleCA9IDA7IGluZGV4IDwgY291bnQ7ICsraW5kZXgpCisgICAgICAgIGRpc3Bh
dGNoRXZlbnQocGVuZGluZ0V2ZW50c1tpbmRleF0ucmVsZWFzZSgpLCBJR05PUkVfRVhDRVBUSU9O
KTsKKyAgICAtLW1fZGlzcGF0Y2hpbmdFdmVudHM7Cit9CisKKyNlbmRpZgpkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYkNvcmUvaHRtbC90cmFjay9UcmFja0xpc3RCYXNlLmggYi9Tb3VyY2UvV2ViQ29y
ZS9odG1sL3RyYWNrL1RyYWNrTGlzdEJhc2UuaApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5iYWU3YTlmMDQyODkwMWZk
M2VhMjA2MWM1NjkyNjcyYzg0YzNkMWRiCi0tLSAvZGV2L251bGwKKysrIGIvU291cmNlL1dlYkNv
cmUvaHRtbC90cmFjay9UcmFja0xpc3RCYXNlLmgKQEAgLTAsMCArMSwxMDEgQEAKKy8qCisgKiBD
b3B5cmlnaHQgKEMpIDIwMTEsIDIwMTIgQXBwbGUgSW5jLiAgQWxsIHJpZ2h0cyByZXNlcnZlZC4K
KyAqCisgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1z
LCB3aXRoIG9yIHdpdGhvdXQKKyAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRl
ZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucworICogYXJlIG1ldDoKKyAqIDEuIFJlZGlz
dHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0
CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5n
IGRpc2NsYWltZXIuCisgKiAyLiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCBy
ZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2Yg
Y29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQorICogICAgZG9j
dW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3Ry
aWJ1dGlvbi4KKyAqCisgKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIEFQUExFIENPTVBV
VEVSLCBJTkMuIGBgQVMgSVMnJyBBTkQgQU5ZCisgKiBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFO
VElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFRIRQorICogSU1QTElFRCBXQVJS
QU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSCisg
KiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiAgSU4gTk8gRVZFTlQgU0hBTEwgQVBQTEUgQ09NUFVU
RVIsIElOQy4gT1IKKyAqIENPTlRSSUJVVE9SUyBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElO
RElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLAorICogRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5U
SUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLAorICogUFJPQ1VSRU1F
TlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsIERBVEEsIE9S
CisgKiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFO
RCBPTiBBTlkgVEhFT1JZCisgKiBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNU
UklDVCBMSUFCSUxJVFksIE9SIFRPUlQKKyAqIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhF
UldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRQorICogT0YgVEhJUyBTT0ZU
V0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4g
CisgKi8KKworI2lmbmRlZiBUcmFja0xpc3RCYXNlX2gKKyNkZWZpbmUgVHJhY2tMaXN0QmFzZV9o
CisKKyNpZiBFTkFCTEUoVklERU9fVFJBQ0spCisKKyNpbmNsdWRlICJFdmVudExpc3RlbmVyLmgi
CisjaW5jbHVkZSAiRXZlbnRUYXJnZXQuaCIKKyNpbmNsdWRlICJUaW1lci5oIgorI2luY2x1ZGUg
PHd0Zi9QYXNzUmVmUHRyLmg+CisjaW5jbHVkZSA8d3RmL1JlZkNvdW50ZWQuaD4KKyNpbmNsdWRl
IDx3dGYvVmVjdG9yLmg+CisKK25hbWVzcGFjZSBXZWJDb3JlIHsKKworY2xhc3MgSFRNTE1lZGlh
RWxlbWVudDsKK2NsYXNzIFRyYWNrQmFzZTsKKworY2xhc3MgVHJhY2tMaXN0QmFzZSA6IHB1Ymxp
YyBSZWZDb3VudGVkPFRyYWNrTGlzdEJhc2U+LCBwdWJsaWMgRXZlbnRUYXJnZXQgeworcHVibGlj
OgorICAgIH5UcmFja0xpc3RCYXNlKCk7CisKKyAgICB2aXJ0dWFsIHVuc2lnbmVkIGxlbmd0aCgp
IGNvbnN0OworICAgIHZpcnR1YWwgYm9vbCBjb250YWlucyhUcmFja0Jhc2UqKSBjb25zdDsKKyAg
ICB2aXJ0dWFsIHZvaWQgcmVtb3ZlKFRyYWNrQmFzZSopOworCisgICAgLy8gRXZlbnRUYXJnZXQK
KyAgICB2aXJ0dWFsIGNvbnN0IEF0b21pY1N0cmluZyYgaW50ZXJmYWNlTmFtZSgpIGNvbnN0ID0g
MDsKKyAgICB1c2luZyBSZWZDb3VudGVkPFRyYWNrTGlzdEJhc2U+OjpyZWY7CisgICAgdXNpbmcg
UmVmQ291bnRlZDxUcmFja0xpc3RCYXNlPjo6ZGVyZWY7CisgICAgdmlydHVhbCBTY3JpcHRFeGVj
dXRpb25Db250ZXh0KiBzY3JpcHRFeGVjdXRpb25Db250ZXh0KCkgY29uc3QgeyByZXR1cm4gbV9j
b250ZXh0OyB9CisKKyAgICBERUZJTkVfQVRUUklCVVRFX0VWRU5UX0xJU1RFTkVSKGFkZHRyYWNr
KTsKKyAgICBERUZJTkVfQVRUUklCVVRFX0VWRU5UX0xJU1RFTkVSKGNoYW5nZSk7CisgICAgREVG
SU5FX0FUVFJJQlVURV9FVkVOVF9MSVNURU5FUihyZW1vdmV0cmFjayk7CisKKyAgICB2b2lkIGNs
ZWFyT3duZXIoKSB7IG1fb3duZXIgPSAwOyB9CisgICAgSFRNTE1lZGlhRWxlbWVudCogb3duZXIo
KSBjb25zdCB7IHJldHVybiBtX293bmVyOyB9CisKKyAgICBib29sIGlzRmlyaW5nRXZlbnRMaXN0
ZW5lcnMoKSB7IHJldHVybiBtX2Rpc3BhdGNoaW5nRXZlbnRzOyB9CisKKyAgICAvLyBOZWVkcyB0
byBiZSBwdWJsaWMgc28gdHJhY2tzIGNhbiBjYWxsIGl0CisgICAgdm9pZCBzY2hlZHVsZUNoYW5n
ZUV2ZW50KCk7CisKK3Byb3RlY3RlZDoKKyAgICBUcmFja0xpc3RCYXNlKEhUTUxNZWRpYUVsZW1l
bnQqLCBTY3JpcHRFeGVjdXRpb25Db250ZXh0Kik7CisKKyAgICB2b2lkIHNjaGVkdWxlQWRkVHJh
Y2tFdmVudChQYXNzUmVmUHRyPFRyYWNrQmFzZT4pOworICAgIHZvaWQgc2NoZWR1bGVSZW1vdmVU
cmFja0V2ZW50KFBhc3NSZWZQdHI8VHJhY2tCYXNlPik7CisKKyAgICBWZWN0b3I8UmVmUHRyPFRy
YWNrQmFzZT4gPiBtX2luYmFuZFRyYWNrczsKKworcHJpdmF0ZToKKworICAgIC8vIEV2ZW50VGFy
Z2V0CisgICAgdmlydHVhbCB2b2lkIHJlZkV2ZW50VGFyZ2V0KCkgT1ZFUlJJREUgeyByZWYoKTsg
fQorICAgIHZpcnR1YWwgdm9pZCBkZXJlZkV2ZW50VGFyZ2V0KCkgT1ZFUlJJREUgeyBkZXJlZigp
OyB9CisgICAgdmlydHVhbCBFdmVudFRhcmdldERhdGEqIGV2ZW50VGFyZ2V0RGF0YSgpIE9WRVJS
SURFIHsgcmV0dXJuICZtX2V2ZW50VGFyZ2V0RGF0YTsgfQorICAgIHZpcnR1YWwgRXZlbnRUYXJn
ZXREYXRhKiBlbnN1cmVFdmVudFRhcmdldERhdGEoKSBPVkVSUklERSB7IHJldHVybiAmbV9ldmVu
dFRhcmdldERhdGE7IH0KKworICAgIHZvaWQgYXN5bmNFdmVudFRpbWVyRmlyZWQoVGltZXI8VHJh
Y2tMaXN0QmFzZT4qKTsKKworICAgIFNjcmlwdEV4ZWN1dGlvbkNvbnRleHQqIG1fY29udGV4dDsK
KyAgICBIVE1MTWVkaWFFbGVtZW50KiBtX293bmVyOworCisgICAgVmVjdG9yPFJlZlB0cjxFdmVu
dD4gPiBtX3BlbmRpbmdFdmVudHM7CisgICAgVGltZXI8VHJhY2tMaXN0QmFzZT4gbV9wZW5kaW5n
RXZlbnRUaW1lcjsKKworICAgIEV2ZW50VGFyZ2V0RGF0YSBtX2V2ZW50VGFyZ2V0RGF0YTsKKwor
ICAgIGludCBtX2Rpc3BhdGNoaW5nRXZlbnRzOworfTsKKworfSAvLyBuYW1lc3BhY2UgV2ViQ29y
ZQorCisjZW5kaWYKKyNlbmRpZgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0v
Z3JhcGhpY3MvTWVkaWFQbGF5ZXIuY3BwIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhp
Y3MvTWVkaWFQbGF5ZXIuY3BwCmluZGV4IDMzOWZlMzIwNmYzMDJjYjc2MmQyOTdkMWZhZTc1ZDQz
YTA5NTc0NTIuLjMyY2VjZjU0YjhiMjBiN2JmN2Q5MjA2Y2JkNDc1YmQ5MjNjYWYwYzIgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL01lZGlhUGxheWVyLmNwcAor
KysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9NZWRpYVBsYXllci5jcHAKQEAg
LTExMDIsNyArMTEwMiw3IEBAIHZvaWQgTWVkaWFQbGF5ZXI6OmFkZFRleHRUcmFjayhQYXNzUmVm
UHRyPEluYmFuZFRleHRUcmFja1ByaXZhdGU+IHRyYWNrKQogICAgIGlmICghbV9tZWRpYVBsYXll
ckNsaWVudCkKICAgICAgICAgcmV0dXJuOwogCi0gICAgbV9tZWRpYVBsYXllckNsaWVudC0+bWVk
aWFQbGF5ZXJEaWRBZGRUcmFjayh0cmFjayk7CisgICAgbV9tZWRpYVBsYXllckNsaWVudC0+bWVk
aWFQbGF5ZXJEaWRBZGRUZXh0VHJhY2sodHJhY2spOwogfQogCiB2b2lkIE1lZGlhUGxheWVyOjpy
ZW1vdmVUZXh0VHJhY2soUGFzc1JlZlB0cjxJbmJhbmRUZXh0VHJhY2tQcml2YXRlPiB0cmFjaykK
QEAgLTExMTAsNyArMTExMCw3IEBAIHZvaWQgTWVkaWFQbGF5ZXI6OnJlbW92ZVRleHRUcmFjayhQ
YXNzUmVmUHRyPEluYmFuZFRleHRUcmFja1ByaXZhdGU+IHRyYWNrKQogICAgIGlmICghbV9tZWRp
YVBsYXllckNsaWVudCkKICAgICAgICAgcmV0dXJuOwogCi0gICAgbV9tZWRpYVBsYXllckNsaWVu
dC0+bWVkaWFQbGF5ZXJEaWRSZW1vdmVUcmFjayh0cmFjayk7CisgICAgbV9tZWRpYVBsYXllckNs
aWVudC0+bWVkaWFQbGF5ZXJEaWRSZW1vdmVUZXh0VHJhY2sodHJhY2spOwogfQogCiBib29sIE1l
ZGlhUGxheWVyOjpyZXF1aXJlc1RleHRUcmFja1JlcHJlc2VudGF0aW9uKCkgY29uc3QKZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL01lZGlhUGxheWVyLmggYi9T
b3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9NZWRpYVBsYXllci5oCmluZGV4IDQ1M2Rj
ZjAyNDg5ODQzMmFhMDhkMTE4OWUxY2YxM2M4NWUyNzZjMzQuLjYxZGYxZjRkZTY4YmM3M2ZiMzY5
ZDA1ZTBmZGJmYzFiYTdjNTU2ZjYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3Jt
L2dyYXBoaWNzL01lZGlhUGxheWVyLmgKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3Jh
cGhpY3MvTWVkaWFQbGF5ZXIuaApAQCAtMjE4LDggKzIxOCw4IEBAIHB1YmxpYzoKICAgICB2aXJ0
dWFsIENhY2hlZFJlc291cmNlTG9hZGVyKiBtZWRpYVBsYXllckNhY2hlZFJlc291cmNlTG9hZGVy
KCkgeyByZXR1cm4gMDsgfQogCiAjaWYgRU5BQkxFKFZJREVPX1RSQUNLKQotICAgIHZpcnR1YWwg
dm9pZCBtZWRpYVBsYXllckRpZEFkZFRyYWNrKFBhc3NSZWZQdHI8SW5iYW5kVGV4dFRyYWNrUHJp
dmF0ZT4pIHsgfQotICAgIHZpcnR1YWwgdm9pZCBtZWRpYVBsYXllckRpZFJlbW92ZVRyYWNrKFBh
c3NSZWZQdHI8SW5iYW5kVGV4dFRyYWNrUHJpdmF0ZT4pIHsgfQorICAgIHZpcnR1YWwgdm9pZCBt
ZWRpYVBsYXllckRpZEFkZFRleHRUcmFjayhQYXNzUmVmUHRyPEluYmFuZFRleHRUcmFja1ByaXZh
dGU+KSB7IH0KKyAgICB2aXJ0dWFsIHZvaWQgbWVkaWFQbGF5ZXJEaWRSZW1vdmVUZXh0VHJhY2so
UGFzc1JlZlB0cjxJbmJhbmRUZXh0VHJhY2tQcml2YXRlPikgeyB9CiAKICAgICB2aXJ0dWFsIHZv
aWQgdGV4dFRyYWNrUmVwcmVzZW50YXRpb25Cb3VuZHNDaGFuZ2VkKGNvbnN0IEludFJlY3QmKSB7
IH0KICAgICB2aXJ0dWFsIHZvaWQgcGFpbnRUZXh0VHJhY2tSZXByZXNlbnRhdGlvbihHcmFwaGlj
c0NvbnRleHQqLCBjb25zdCBJbnRSZWN0JikgeyB9Cg==
</data>

          </attachment>
      

    </bug>

</bugzilla>