<?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>125574</bug_id>
          
          <creation_ts>2013-12-11 07:19:27 -0800</creation_ts>
          <short_desc>Adding RTCPeerConnectionErrorCallback</short_desc>
          <delta_ts>2014-05-19 09:08:13 -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>WebCore Misc.</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>
          <dependson>125568</dependson>
          <blocked>124288</blocked>
    
    <blocked>125655</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="Thiago de Barros Lacerda">thiago.lacerda</reporter>
          <assigned_to name="Thiago de Barros Lacerda">thiago.lacerda</assigned_to>
          <cc>buildbot</cc>
    
    <cc>cdumez</cc>
    
    <cc>commit-queue</cc>
    
    <cc>eric.carlson</cc>
    
    <cc>esprehn+autocc</cc>
    
    <cc>glenn</cc>
    
    <cc>gyuyoung.kim</cc>
    
    <cc>hta</cc>
    
    <cc>jer.noble</cc>
    
    <cc>kondapallykalyan</cc>
    
    <cc>pnormand</cc>
    
    <cc>rakuco</cc>
    
    <cc>rego+ews</cc>
    
    <cc>rniwa</cc>
    
    <cc>tommyw</cc>
    
    <cc>xan.lopez</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>958708</commentid>
    <comment_count>0</comment_count>
    <who name="Thiago de Barros Lacerda">thiago.lacerda</who>
    <bug_when>2013-12-11 07:19:27 -0800</bug_when>
    <thetext>According to the spec there should be a RTCPeerConnectionErrorCallback function type for createOffer/Answer, setLocal/RemoteDescription and updateIce function calls.
This callback must handle a DOMError object.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>958726</commentid>
    <comment_count>1</comment_count>
      <attachid>218967</attachid>
    <who name="Thiago de Barros Lacerda">thiago.lacerda</who>
    <bug_when>2013-12-11 07:49:21 -0800</bug_when>
    <thetext>Created attachment 218967
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>958727</commentid>
    <comment_count>2</comment_count>
      <attachid>218967</attachid>
    <who name="Philippe Normand">pnormand</who>
    <bug_when>2013-12-11 07:54:46 -0800</bug_when>
    <thetext>Comment on attachment 218967
Patch

Seems like this is not rebased on top of ToT ?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>958729</commentid>
    <comment_count>3</comment_count>
    <who name="Philippe Normand">pnormand</who>
    <bug_when>2013-12-11 07:56:40 -0800</bug_when>
    <thetext>Looks good otherwise</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>958730</commentid>
    <comment_count>4</comment_count>
    <who name="Thiago de Barros Lacerda">thiago.lacerda</who>
    <bug_when>2013-12-11 08:03:01 -0800</bug_when>
    <thetext>(In reply to comment #3)
&gt; Looks good otherwise

Hey Philippe, that&apos;s because it depends on https://bugs.webkit.org/show_bug.cgi?id=125568.
Could you take a look on it as well?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>958747</commentid>
    <comment_count>5</comment_count>
      <attachid>218968</attachid>
    <who name="Thiago de Barros Lacerda">thiago.lacerda</who>
    <bug_when>2013-12-11 08:45:14 -0800</bug_when>
    <thetext>Created attachment 218968
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>958756</commentid>
    <comment_count>6</comment_count>
      <attachid>218968</attachid>
    <who name="Build Bot">buildbot</who>
    <bug_when>2013-12-11 09:20:18 -0800</bug_when>
    <thetext>Comment on attachment 218968
Patch

Attachment 218968 did not pass mac-wk2-ews (mac-wk2):
Output: http://webkit-queues.appspot.com/results/47308534</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>958758</commentid>
    <comment_count>7</comment_count>
      <attachid>218972</attachid>
    <who name="Philippe Normand">pnormand</who>
    <bug_when>2013-12-11 09:20:37 -0800</bug_when>
    <thetext>Created attachment 218972
Patch

with Xcode project update</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>958762</commentid>
    <comment_count>8</comment_count>
      <attachid>218968</attachid>
    <who name="Philippe Normand">pnormand</who>
    <bug_when>2013-12-11 09:25:25 -0800</bug_when>
    <thetext>Comment on attachment 218968
Patch

Didn&apos;t pass mac EWS</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>958772</commentid>
    <comment_count>9</comment_count>
      <attachid>218972</attachid>
    <who name="Build Bot">buildbot</who>
    <bug_when>2013-12-11 09:55:54 -0800</bug_when>
    <thetext>Comment on attachment 218972
Patch

Attachment 218972 did not pass mac-wk2-ews (mac-wk2):
Output: http://webkit-queues.appspot.com/results/47348348</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>958776</commentid>
    <comment_count>10</comment_count>
      <attachid>218972</attachid>
    <who name="Build Bot">buildbot</who>
    <bug_when>2013-12-11 10:04:58 -0800</bug_when>
    <thetext>Comment on attachment 218972
Patch

Attachment 218972 did not pass win-ews (win):
Output: http://webkit-queues.appspot.com/results/47208575</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>958783</commentid>
    <comment_count>11</comment_count>
      <attachid>218972</attachid>
    <who name="Build Bot">buildbot</who>
    <bug_when>2013-12-11 10:21:10 -0800</bug_when>
    <thetext>Comment on attachment 218972
Patch

Attachment 218972 did not pass mac-ews (mac):
Output: http://webkit-queues.appspot.com/results/45888560</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>958802</commentid>
    <comment_count>12</comment_count>
      <attachid>218978</attachid>
    <who name="Philippe Normand">pnormand</who>
    <bug_when>2013-12-11 11:02:35 -0800</bug_when>
    <thetext>Created attachment 218978
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>958833</commentid>
    <comment_count>13</comment_count>
      <attachid>218978</attachid>
    <who name="Build Bot">buildbot</who>
    <bug_when>2013-12-11 11:40:19 -0800</bug_when>
    <thetext>Comment on attachment 218978
Patch

Attachment 218978 did not pass mac-wk2-ews (mac-wk2):
Output: http://webkit-queues.appspot.com/results/47438176</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>958860</commentid>
    <comment_count>14</comment_count>
      <attachid>218978</attachid>
    <who name="Build Bot">buildbot</who>
    <bug_when>2013-12-11 12:24:42 -0800</bug_when>
    <thetext>Comment on attachment 218978
Patch

Attachment 218978 did not pass mac-ews (mac):
Output: http://webkit-queues.appspot.com/results/45658027</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>958871</commentid>
    <comment_count>15</comment_count>
      <attachid>218978</attachid>
    <who name="Build Bot">buildbot</who>
    <bug_when>2013-12-11 13:07:24 -0800</bug_when>
    <thetext>Comment on attachment 218978
Patch

Attachment 218978 did not pass mac-ews (mac):
Output: http://webkit-queues.appspot.com/results/47008146</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>958875</commentid>
    <comment_count>16</comment_count>
      <attachid>218978</attachid>
    <who name="Eric Carlson">eric.carlson</who>
    <bug_when>2013-12-11 13:14:10 -0800</bug_when>
    <thetext>Comment on attachment 218978
Patch

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

&gt; LayoutTests/fast/mediastream/RTCPeerConnection-createOffer.html:26
&gt;                  errorReason = reason;
&gt; -                shouldBe(&apos;errorReason&apos;, &apos;&quot;TEST_ERROR&quot;&apos;);
&gt; +                shouldBe(&apos;errorReason.name&apos;, &apos;&quot;IncompatibleConstraintsError&quot;&apos;);

Is it possible to create tests for the other new errors?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>959148</commentid>
    <comment_count>17</comment_count>
      <attachid>219069</attachid>
    <who name="Philippe Normand">pnormand</who>
    <bug_when>2013-12-12 03:39:11 -0800</bug_when>
    <thetext>Created attachment 219069
Patch

with Xcode project update</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>959183</commentid>
    <comment_count>18</comment_count>
    <who name="Thiago de Barros Lacerda">thiago.lacerda</who>
    <bug_when>2013-12-12 06:12:41 -0800</bug_when>
    <thetext>(In reply to comment #16)
&gt; (From update of attachment 218978 [details])
&gt; View in context: https://bugs.webkit.org/attachment.cgi?id=218978&amp;action=review
&gt; 
&gt; &gt; LayoutTests/fast/mediastream/RTCPeerConnection-createOffer.html:26
&gt; &gt;                  errorReason = reason;
&gt; &gt; -                shouldBe(&apos;errorReason&apos;, &apos;&quot;TEST_ERROR&quot;&apos;);
&gt; &gt; +                shouldBe(&apos;errorReason.name&apos;, &apos;&quot;IncompatibleConstraintsError&quot;&apos;);
&gt; 
&gt; Is it possible to create tests for the other new errors?

Yes Eric, I&apos;m now working on a patch for them. I didn&apos;t not put on this because it would increase the size of the patch too much. Are you OK with another patch?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>959191</commentid>
    <comment_count>19</comment_count>
    <who name="Eric Carlson">eric.carlson</who>
    <bug_when>2013-12-12 07:24:41 -0800</bug_when>
    <thetext>(In reply to comment #18)
&gt; (In reply to comment #16)
&gt; &gt; (From update of attachment 218978 [details] [details])
&gt; &gt; View in context: https://bugs.webkit.org/attachment.cgi?id=218978&amp;action=review
&gt; &gt; 
&gt; &gt; &gt; LayoutTests/fast/mediastream/RTCPeerConnection-createOffer.html:26
&gt; &gt; &gt;                  errorReason = reason;
&gt; &gt; &gt; -                shouldBe(&apos;errorReason&apos;, &apos;&quot;TEST_ERROR&quot;&apos;);
&gt; &gt; &gt; +                shouldBe(&apos;errorReason.name&apos;, &apos;&quot;IncompatibleConstraintsError&quot;&apos;);
&gt; &gt; 
&gt; &gt; Is it possible to create tests for the other new errors?
&gt; 
&gt; Yes Eric, I&apos;m now working on a patch for them. I didn&apos;t not put on this because it would increase the size of the patch too much. Are you OK with another patch?

That seems fine. Please include a FIXME: with a bug number so someone reading the patch knows what the plan is.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>959321</commentid>
    <comment_count>20</comment_count>
      <attachid>219113</attachid>
    <who name="Thiago de Barros Lacerda">thiago.lacerda</who>
    <bug_when>2013-12-12 13:23:48 -0800</bug_when>
    <thetext>Created attachment 219113
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>959501</commentid>
    <comment_count>21</comment_count>
    <who name="Philippe Normand">pnormand</who>
    <bug_when>2013-12-12 23:51:10 -0800</bug_when>
    <thetext>Seems like  a FIXME is missing or we assume it&apos;s the bug blocked by this one?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>959519</commentid>
    <comment_count>22</comment_count>
    <who name="Thiago de Barros Lacerda">thiago.lacerda</who>
    <bug_when>2013-12-13 01:49:49 -0800</bug_when>
    <thetext>(In reply to comment #21)
&gt; Seems like  a FIXME is missing or we assume it&apos;s the bug blocked by this one?

It&apos;s the bug blocked by this one</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>959613</commentid>
    <comment_count>23</comment_count>
      <attachid>219113</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2013-12-13 12:01:33 -0800</bug_when>
    <thetext>Comment on attachment 219113
Patch

Clearing flags on attachment: 219113

Committed r160553: &lt;http://trac.webkit.org/changeset/160553&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>959614</commentid>
    <comment_count>24</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2013-12-13 12:01:39 -0800</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>218967</attachid>
            <date>2013-12-11 07:49:21 -0800</date>
            <delta_ts>2013-12-11 08:45:08 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-125574-20131211124919.patch</filename>
            <type>text/plain</type>
            <size>45221</size>
            <attacher name="Thiago de Barros Lacerda">thiago.lacerda</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTYwNDI5CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggZjI4YzU4ZWYzM2JhMDQ1
YzYxYzk1MGU1NzAxZGE1ZTdkNGE3MWEzNC4uZTZlOWMxNTkzNzk3MmY1NmZkYmI2Y2ZmNTA1M2Jj
NGRmMWRlNDEzMiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDU1IEBACisyMDEzLTEyLTExICBUaGlh
Z28gZGUgQmFycm9zIExhY2VyZGEgIDx0aGlhZ28ubGFjZXJkYUBvcGVuYm9zc2Eub3JnPgorCisg
ICAgICAgIEFkZGluZyBSVENQZWVyQ29ubmVjdGlvbkVycm9yQ2FsbGJhY2sKKyAgICAgICAgaHR0
cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTEyNTU3NAorCisgICAgICAgIFJl
dmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIEFjY29yZGluZyB0byB0aGUgc3Bl
YyB0aGVyZSBzaG91bGQgYmUgYSBSVENQZWVyQ29ubmVjdGlvbkVycm9yQ2FsbGJhY2sgZnVuY3Rp
b24gdHlwZSBmb3IgY3JlYXRlT2ZmZXIvQW5zd2VyLAorICAgICAgICBzZXRMb2NhbC9SZW1vdGVE
ZXNjcmlwdGlvbiBhbmQgdXBkYXRlSWNlIGZ1bmN0aW9uIGNhbGxzLiBUaGlzIGNhbGxiYWNrIG11
c3QgaGFuZGxlIGEgRE9NRXJyb3Igb2JqZWN0LgorCisgICAgICAgIEV4aXN0aW5nIHRlc3RzIHdl
cmUgdXBkYXRlZC4KKworICAgICAgICAqIENNYWtlTGlzdHMudHh0OgorICAgICAgICAqIEdOVW1h
a2VmaWxlLmxpc3QuYW06CisgICAgICAgICogTW9kdWxlcy9tZWRpYXN0cmVhbS9SVENQZWVyQ29u
bmVjdGlvbi5jcHA6CisgICAgICAgIChXZWJDb3JlOjpSVENQZWVyQ29ubmVjdGlvbjo6Y3JlYXRl
T2ZmZXIpOgorICAgICAgICAoV2ViQ29yZTo6UlRDUGVlckNvbm5lY3Rpb246OmNyZWF0ZUFuc3dl
cik6CisgICAgICAgIChXZWJDb3JlOjpSVENQZWVyQ29ubmVjdGlvbjo6c2V0TG9jYWxEZXNjcmlw
dGlvbik6CisgICAgICAgIChXZWJDb3JlOjpSVENQZWVyQ29ubmVjdGlvbjo6c2V0UmVtb3RlRGVz
Y3JpcHRpb24pOgorICAgICAgICAoV2ViQ29yZTo6UlRDUGVlckNvbm5lY3Rpb246OmFkZEljZUNh
bmRpZGF0ZSk6CisgICAgICAgICogTW9kdWxlcy9tZWRpYXN0cmVhbS9SVENFcnJvckNhbGxiYWNr
Lmg6IFJlbW92ZWQuCisgICAgICAgICogTW9kdWxlcy9tZWRpYXN0cmVhbS9SVENFcnJvckNhbGxi
YWNrLmlkbDogUmVtb3ZlZC4KKyAgICAgICAgKiBNb2R1bGVzL21lZGlhc3RyZWFtL1JUQ1BlZXJD
b25uZWN0aW9uLmg6CisgICAgICAgICogTW9kdWxlcy9tZWRpYXN0cmVhbS9SVENQZWVyQ29ubmVj
dGlvbi5pZGw6CisgICAgICAgICogTW9kdWxlcy9tZWRpYXN0cmVhbS9SVENQZWVyQ29ubmVjdGlv
bkVycm9yQ2FsbGJhY2suaDogQWRkZWQuCisgICAgICAgICogTW9kdWxlcy9tZWRpYXN0cmVhbS9S
VENQZWVyQ29ubmVjdGlvbkVycm9yQ2FsbGJhY2suaWRsOiBBZGRlZC4KKyAgICAgICAgKiBNb2R1
bGVzL21lZGlhc3RyZWFtL1JUQ1Nlc3Npb25EZXNjcmlwdGlvblJlcXVlc3RJbXBsLmNwcDoKKyAg
ICAgICAgKFdlYkNvcmU6OlJUQ1Nlc3Npb25EZXNjcmlwdGlvblJlcXVlc3RJbXBsOjpjcmVhdGUp
OgorICAgICAgICAoV2ViQ29yZTo6UlRDU2Vzc2lvbkRlc2NyaXB0aW9uUmVxdWVzdEltcGw6OlJU
Q1Nlc3Npb25EZXNjcmlwdGlvblJlcXVlc3RJbXBsKToKKyAgICAgICAgKFdlYkNvcmU6OlJUQ1Nl
c3Npb25EZXNjcmlwdGlvblJlcXVlc3RJbXBsOjpyZXF1ZXN0RmFpbGVkKToKKyAgICAgICAgKiBN
b2R1bGVzL21lZGlhc3RyZWFtL1JUQ1Nlc3Npb25EZXNjcmlwdGlvblJlcXVlc3RJbXBsLmg6Cisg
ICAgICAgICogTW9kdWxlcy9tZWRpYXN0cmVhbS9SVENWb2lkUmVxdWVzdEltcGwuY3BwOgorICAg
ICAgICAoV2ViQ29yZTo6UlRDVm9pZFJlcXVlc3RJbXBsOjpjcmVhdGUpOgorICAgICAgICAoV2Vi
Q29yZTo6UlRDVm9pZFJlcXVlc3RJbXBsOjpSVENWb2lkUmVxdWVzdEltcGwpOgorICAgICAgICAo
V2ViQ29yZTo6UlRDVm9pZFJlcXVlc3RJbXBsOjpyZXF1ZXN0RmFpbGVkKToKKyAgICAgICAgKiBN
b2R1bGVzL21lZGlhc3RyZWFtL1JUQ1ZvaWRSZXF1ZXN0SW1wbC5oOgorICAgICAgICAqIHBsYXRm
b3JtL21lZGlhc3RyZWFtL1JUQ1BlZXJDb25uZWN0aW9uSGFuZGxlci5jcHA6CisgICAgICAgIChX
ZWJDb3JlOjpSVENQZWVyQ29ubmVjdGlvbkhhbmRsZXI6OmluY29tcGF0aWJsZUNvbnN0cmFpbnRz
RXJyb3JOYW1lKToKKyAgICAgICAgKFdlYkNvcmU6OlJUQ1BlZXJDb25uZWN0aW9uSGFuZGxlcjo6
aW52YWxpZFNlc3Npb25EZXNjcmlwdGlvbkVycm9yTmFtZSk6CisgICAgICAgIChXZWJDb3JlOjpS
VENQZWVyQ29ubmVjdGlvbkhhbmRsZXI6OmluY29tcGF0aWJsZVNlc3Npb25EZXNjcmlwdGlvbkVy
cm9yTmFtZSk6CisgICAgICAgIChXZWJDb3JlOjpSVENQZWVyQ29ubmVjdGlvbkhhbmRsZXI6Omlu
dGVybmFsRXJyb3JOYW1lKToKKyAgICAgICAgKiBwbGF0Zm9ybS9tZWRpYXN0cmVhbS9SVENQZWVy
Q29ubmVjdGlvbkhhbmRsZXIuaDoKKyAgICAgICAgKiBwbGF0Zm9ybS9tb2NrL1JUQ05vdGlmaWVy
c01vY2suY3BwOgorICAgICAgICAoV2ViQ29yZTo6U2Vzc2lvblJlcXVlc3ROb3RpZmllcjo6U2Vz
c2lvblJlcXVlc3ROb3RpZmllcik6CisgICAgICAgIChXZWJDb3JlOjpTZXNzaW9uUmVxdWVzdE5v
dGlmaWVyOjpmaXJlKToKKyAgICAgICAgKFdlYkNvcmU6OlZvaWRSZXF1ZXN0Tm90aWZpZXI6OlZv
aWRSZXF1ZXN0Tm90aWZpZXIpOgorICAgICAgICAoV2ViQ29yZTo6Vm9pZFJlcXVlc3ROb3RpZmll
cjo6ZmlyZSk6CisgICAgICAgICogcGxhdGZvcm0vbW9jay9SVENOb3RpZmllcnNNb2NrLmg6Cisg
ICAgICAgICogcGxhdGZvcm0vbW9jay9SVENQZWVyQ29ubmVjdGlvbkhhbmRsZXJNb2NrLmNwcDoK
KyAgICAgICAgKFdlYkNvcmU6OlJUQ1BlZXJDb25uZWN0aW9uSGFuZGxlck1vY2s6OmNyZWF0ZU9m
ZmVyKToKKyAgICAgICAgKFdlYkNvcmU6OlJUQ1BlZXJDb25uZWN0aW9uSGFuZGxlck1vY2s6OmNy
ZWF0ZUFuc3dlcik6CisKIDIwMTMtMTItMTEgIFJvYiBCdWlzICA8cm9iLmJ1aXNAc2Ftc3VuZy5j
b20+CiAKICAgICAgICAgW0NTUyBTaGFwZXNdIFRha2UgaW50byBhY2NvdW50IGZpbGwtcnVsZSBm
b3IgcG9seWdvbiBpbnRlcnBvbGF0aW9uCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9DTWFr
ZUxpc3RzLnR4dCBiL1NvdXJjZS9XZWJDb3JlL0NNYWtlTGlzdHMudHh0CmluZGV4IGNhN2M0ODNi
Yzk1OTE5MDNjNWEwNGVhMWMyMTNiOGI3ZjE4MDYwMWMuLjc4ODVmOWIyMTM3NmRlZGNjMDI0NTJj
MmUxMDE2ZDRkODdlNzllMDQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL0NNYWtlTGlzdHMu
dHh0CisrKyBiL1NvdXJjZS9XZWJDb3JlL0NNYWtlTGlzdHMudHh0CkBAIC0yMTAsNyArMjEwLDcg
QEAgc2V0KFdlYkNvcmVfSURMX0ZJTEVTCiAgICAgTW9kdWxlcy9tZWRpYXN0cmVhbS9SVENEVE1G
VG9uZUNoYW5nZUV2ZW50LmlkbAogICAgIE1vZHVsZXMvbWVkaWFzdHJlYW0vUlRDRGF0YUNoYW5u
ZWwuaWRsCiAgICAgTW9kdWxlcy9tZWRpYXN0cmVhbS9SVENEYXRhQ2hhbm5lbEV2ZW50LmlkbAot
ICAgIE1vZHVsZXMvbWVkaWFzdHJlYW0vUlRDRXJyb3JDYWxsYmFjay5pZGwKKyAgICBNb2R1bGVz
L21lZGlhc3RyZWFtL1JUQ1BlZXJDb25uZWN0aW9uRXJyb3JDYWxsYmFjay5pZGwKICAgICBNb2R1
bGVzL21lZGlhc3RyZWFtL1JUQ0ljZUNhbmRpZGF0ZS5pZGwKICAgICBNb2R1bGVzL21lZGlhc3Ry
ZWFtL1JUQ0ljZUNhbmRpZGF0ZUV2ZW50LmlkbAogICAgIE1vZHVsZXMvbWVkaWFzdHJlYW0vUlRD
UGVlckNvbm5lY3Rpb24uaWRsCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9HTlVtYWtlZmls
ZS5saXN0LmFtIGIvU291cmNlL1dlYkNvcmUvR05VbWFrZWZpbGUubGlzdC5hbQppbmRleCBjOWEy
ZGZhMmIwMDIyNThkM2Y4MGEyYjVmZTM2YmJhYjdkZmI3OGI1Li5mMGMxMjJkNjA5MjkwZTljNDA1
OGQwYzdlZjQyMTdkZGRmZDhmNjJhIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9HTlVtYWtl
ZmlsZS5saXN0LmFtCisrKyBiL1NvdXJjZS9XZWJDb3JlL0dOVW1ha2VmaWxlLmxpc3QuYW0KQEAg
LTYxMSw4ICs2MTEsOCBAQCB3ZWJjb3JlX2J1aWx0X3NvdXJjZXMgKz0gXAogCURlcml2ZWRTb3Vy
Y2VzL1dlYkNvcmUvSlNSVENEYXRhQ2hhbm5lbC5oIFwKIAlEZXJpdmVkU291cmNlcy9XZWJDb3Jl
L0pTUlRDRGF0YUNoYW5uZWxFdmVudC5jcHAgXAogCURlcml2ZWRTb3VyY2VzL1dlYkNvcmUvSlNS
VENEYXRhQ2hhbm5lbEV2ZW50LmggXAotCURlcml2ZWRTb3VyY2VzL1dlYkNvcmUvSlNSVENFcnJv
ckNhbGxiYWNrLmNwcCBcCi0JRGVyaXZlZFNvdXJjZXMvV2ViQ29yZS9KU1JUQ0Vycm9yQ2FsbGJh
Y2suaCBcCisJRGVyaXZlZFNvdXJjZXMvV2ViQ29yZS9KU1JUQ1BlZXJDb25uZWN0aW9uRXJyb3JD
YWxsYmFjay5jcHAgXAorCURlcml2ZWRTb3VyY2VzL1dlYkNvcmUvSlNSVENQZWVyQ29ubmVjdGlv
bkVycm9yQ2FsbGJhY2suaCBcCiAJRGVyaXZlZFNvdXJjZXMvV2ViQ29yZS9KU1JUQ0ljZUNhbmRp
ZGF0ZS5jcHAgXAogCURlcml2ZWRTb3VyY2VzL1dlYkNvcmUvSlNSVENJY2VDYW5kaWRhdGUuaCBc
CiAJRGVyaXZlZFNvdXJjZXMvV2ViQ29yZS9KU1JUQ0ljZUNhbmRpZGF0ZUV2ZW50LmNwcCBcCkBA
IC0xMjI3LDcgKzEyMjcsNyBAQCBkb21fYmluZGluZ19pZGxzICs9IFwKIAkkKFdlYkNvcmUpL01v
ZHVsZXMvbWVkaWFzdHJlYW0vUlRDRFRNRlRvbmVDaGFuZ2VFdmVudC5pZGwgXAogCSQoV2ViQ29y
ZSkvTW9kdWxlcy9tZWRpYXN0cmVhbS9SVENEYXRhQ2hhbm5lbC5pZGwgXAogCSQoV2ViQ29yZSkv
TW9kdWxlcy9tZWRpYXN0cmVhbS9SVENEYXRhQ2hhbm5lbEV2ZW50LmlkbCBcCi0JJChXZWJDb3Jl
KS9Nb2R1bGVzL21lZGlhc3RyZWFtL1JUQ0Vycm9yQ2FsbGJhY2suaWRsIFwKKwkkKFdlYkNvcmUp
L01vZHVsZXMvbWVkaWFzdHJlYW0vUlRDUGVlckNvbm5lY3Rpb25FcnJvckNhbGxiYWNrLmlkbCBc
CiAJJChXZWJDb3JlKS9Nb2R1bGVzL21lZGlhc3RyZWFtL1JUQ0ljZUNhbmRpZGF0ZS5pZGwgXAog
CSQoV2ViQ29yZSkvTW9kdWxlcy9tZWRpYXN0cmVhbS9SVENJY2VDYW5kaWRhdGVFdmVudC5pZGwg
XAogCSQoV2ViQ29yZSkvTW9kdWxlcy9tZWRpYXN0cmVhbS9SVENQZWVyQ29ubmVjdGlvbi5pZGwg
XApAQCAtMTkzNiw3ICsxOTM2LDcgQEAgd2ViY29yZV9tb2R1bGVzX3NvdXJjZXMgKz0gXAogCVNv
dXJjZS9XZWJDb3JlL01vZHVsZXMvbWVkaWFzdHJlYW0vUlRDRGF0YUNoYW5uZWwuaCBcCiAJU291
cmNlL1dlYkNvcmUvTW9kdWxlcy9tZWRpYXN0cmVhbS9SVENEYXRhQ2hhbm5lbEV2ZW50LmNwcCBc
CiAJU291cmNlL1dlYkNvcmUvTW9kdWxlcy9tZWRpYXN0cmVhbS9SVENEYXRhQ2hhbm5lbEV2ZW50
LmggXAotCVNvdXJjZS9XZWJDb3JlL01vZHVsZXMvbWVkaWFzdHJlYW0vUlRDRXJyb3JDYWxsYmFj
ay5oIFwKKwlTb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL21lZGlhc3RyZWFtL1JUQ1BlZXJDb25uZWN0
aW9uRXJyb3JDYWxsYmFjay5oIFwKIAlTb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL21lZGlhc3RyZWFt
L1JUQ0ljZUNhbmRpZGF0ZS5jcHAgXAogCVNvdXJjZS9XZWJDb3JlL01vZHVsZXMvbWVkaWFzdHJl
YW0vUlRDSWNlQ2FuZGlkYXRlLmggXAogCVNvdXJjZS9XZWJDb3JlL01vZHVsZXMvbWVkaWFzdHJl
YW0vUlRDSWNlQ2FuZGlkYXRlRXZlbnQuY3BwIFwKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3Jl
L01vZHVsZXMvbWVkaWFzdHJlYW0vUlRDRXJyb3JDYWxsYmFjay5oIGIvU291cmNlL1dlYkNvcmUv
TW9kdWxlcy9tZWRpYXN0cmVhbS9SVENFcnJvckNhbGxiYWNrLmgKZGVsZXRlZCBmaWxlIG1vZGUg
MTAwNjQ0CmluZGV4IDY0NGU1NmYwYmVhNzBkNTNlNDlmMjg5ZTRhZmY2MTU3ZGEzZWZiZGMuLjAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAKLS0tIGEvU291cmNlL1dlYkNv
cmUvTW9kdWxlcy9tZWRpYXN0cmVhbS9SVENFcnJvckNhbGxiYWNrLmgKKysrIC9kZXYvbnVsbApA
QCAtMSw1MSArMCwwIEBACi0vKgotICogQ29weXJpZ2h0IChDKSAyMDEyIEdvb2dsZSBJbmMuIEFs
bCByaWdodHMgcmVzZXJ2ZWQuCi0gKgotICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3Vy
Y2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0Ci0gKiBtb2RpZmljYXRpb24sIGFy
ZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKLSAqIGFy
ZSBtZXQ6Ci0gKgotICogMS4gUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0
YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKLSAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRp
dGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KLSAqIDIuIFJlZGlzdHJpYnV0aW9u
cyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0Ci0gKiAg
ICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2Ns
YWltZXIKLSAqICAgIGluIHRoZSBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMg
cHJvdmlkZWQgd2l0aCB0aGUKLSAqICAgIGRpc3RyaWJ1dGlvbi4KLSAqIDMuIE5laXRoZXIgdGhl
IG5hbWUgb2YgR29vZ2xlIEluYy4gbm9yIHRoZSBuYW1lcyBvZiBpdHMgY29udHJpYnV0b3JzCi0g
KiAgICBtYXkgYmUgdXNlZCB0byBlbmRvcnNlIG9yIHByb21vdGUgcHJvZHVjdHMgZGVyaXZlZCBm
cm9tIHRoaXMKLSAqICAgIHNvZnR3YXJlIHdpdGhvdXQgc3BlY2lmaWMgcHJpb3Igd3JpdHRlbiBw
ZXJtaXNzaW9uLgotICoKLSAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgVEhFIENPUFlS
SUdIVCBIT0xERVJTIEFORCBDT05UUklCVVRPUlMKLSAqICJBUyBJUyIgQU5EIEFOWSBFWFBSRVNT
IE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UCi0gKiBMSU1JVEVEIFRP
LCBUSEUgSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBG
T1IKLSAqIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBT
SEFMTCBUSEUgQ09QWVJJR0hUCi0gKiBPV05FUiBPUiBDT05UUklCVVRPUlMgQkUgTElBQkxFIEZP
UiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwKLSAqIFNQRUNJQUwsIEVYRU1QTEFS
WSwgT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QKLSAqIExJTUlU
RUQgVE8sIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1Mg
T0YgVVNFLAotICogREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBI
T1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZCi0gKiBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVS
IElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUCi0gKiAoSU5DTFVESU5HIE5F
R0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UK
LSAqIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkg
T0YgU1VDSCBEQU1BR0UuCi0gKi8KLQotI2lmbmRlZiBSVENFcnJvckNhbGxiYWNrX2gKLSNkZWZp
bmUgUlRDRXJyb3JDYWxsYmFja19oCi0KLSNpZiBFTkFCTEUoTUVESUFfU1RSRUFNKQotCi0jaW5j
bHVkZSA8d3RmL1JlZkNvdW50ZWQuaD4KLSNpbmNsdWRlIDx3dGYvdGV4dC9XVEZTdHJpbmcuaD4K
LQotbmFtZXNwYWNlIFdlYkNvcmUgewotCi1jbGFzcyBSVENFcnJvckNhbGxiYWNrIDogcHVibGlj
IFJlZkNvdW50ZWQ8UlRDRXJyb3JDYWxsYmFjaz4gewotcHVibGljOgotICAgIHZpcnR1YWwgflJU
Q0Vycm9yQ2FsbGJhY2soKSB7IH0KLSAgICB2aXJ0dWFsIGJvb2wgaGFuZGxlRXZlbnQoY29uc3Qg
U3RyaW5nJiBlcnJvckluZm9ybWF0aW9uKSA9IDA7Ci19OwotCi19IC8vIG5hbWVzcGFjZSBXZWJD
b3JlCi0KLSNlbmRpZiAvLyBFTkFCTEUoTUVESUFfU1RSRUFNKQotCi0jZW5kaWYgLy8gUlRDRXJy
b3JDYWxsYmFja19oCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL21lZGlhc3Ry
ZWFtL1JUQ0Vycm9yQ2FsbGJhY2suaWRsIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9tZWRpYXN0
cmVhbS9SVENFcnJvckNhbGxiYWNrLmlkbApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXgg
YTJkNDY1M2Q3MDBjMWE0MDMwMDk1N2I2NTI0ZmI5MzA1NzE1MDAzYi4uMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL21l
ZGlhc3RyZWFtL1JUQ0Vycm9yQ2FsbGJhY2suaWRsCisrKyAvZGV2L251bGwKQEAgLTEsMzYgKzAs
MCBAQAotLyoKLSAqIENvcHlyaWdodCAoQykgMjAxMiBHb29nbGUgSW5jLiBBbGwgcmlnaHRzIHJl
c2VydmVkLgotICoKLSAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5h
cnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAotICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVk
IHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCi0gKiBhcmUgbWV0OgotICoK
LSAqIDEuIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJv
dmUgY29weXJpZ2h0Ci0gKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0
aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCi0gKiAyLiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5
IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAotICogICAgbm90aWNlLCB0
aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyCi0gKiAg
ICBpbiB0aGUgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdp
dGggdGhlCi0gKiAgICBkaXN0cmlidXRpb24uCi0gKiAzLiBOZWl0aGVyIHRoZSBuYW1lIG9mIEdv
b2dsZSBJbmMuIG5vciB0aGUgbmFtZXMgb2YgaXRzIGNvbnRyaWJ1dG9ycwotICogICAgbWF5IGJl
IHVzZWQgdG8gZW5kb3JzZSBvciBwcm9tb3RlIHByb2R1Y3RzIGRlcml2ZWQgZnJvbSB0aGlzCi0g
KiAgICBzb2Z0d2FyZSB3aXRob3V0IHNwZWNpZmljIHByaW9yIHdyaXR0ZW4gcGVybWlzc2lvbi4K
LSAqCi0gKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIFRIRSBDT1BZUklHSFQgSE9MREVS
UyBBTkQgQ09OVFJJQlVUT1JTCi0gKiAiQVMgSVMiIEFORCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVE
IFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVAotICogTElNSVRFRCBUTywgVEhFIElNUExJ
RUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SCi0gKiBBIFBB
UlRJQ1VMQVIgUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgVEhFIENP
UFlSSUdIVAotICogT1dORVIgT1IgQ09OVFJJQlVUT1JTIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVD
VCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsCi0gKiBTUEVDSUFMLCBFWEVNUExBUlksIE9SIENPTlNF
UVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UCi0gKiBMSU1JVEVEIFRPLCBQUk9D
VVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwKLSAq
IERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVT
RUQgQU5EIE9OIEFOWQotICogVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFD
VCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVAotICogKElOQ0xVRElORyBORUdMSUdFTkNFIE9S
IE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFCi0gKiBPRiBUSElT
IFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFN
QUdFLgotICovCi0KLVsKLSAgICBDb25kaXRpb25hbD1NRURJQV9TVFJFQU0sCi1dIGNhbGxiYWNr
IGludGVyZmFjZSBSVENFcnJvckNhbGxiYWNrIHsKLSAgICBib29sZWFuIGhhbmRsZUV2ZW50KERP
TVN0cmluZyBlcnJvckluZm9ybWF0aW9uKTsKLX07Ci0KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJD
b3JlL01vZHVsZXMvbWVkaWFzdHJlYW0vUlRDUGVlckNvbm5lY3Rpb24uY3BwIGIvU291cmNlL1dl
YkNvcmUvTW9kdWxlcy9tZWRpYXN0cmVhbS9SVENQZWVyQ29ubmVjdGlvbi5jcHAKaW5kZXggODM1
YWUyMzAwZTdmMmM1Yjc1MmE3ZmI3NjZkZDIxMWViNmU2ODM3Mi4uN2UzNGUxMzgwMzQ1NGI5ODY3
MmE5ZmMzY2IzNTc3ZGE4Zjg0NTYwZiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvTW9kdWxl
cy9tZWRpYXN0cmVhbS9SVENQZWVyQ29ubmVjdGlvbi5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUv
TW9kdWxlcy9tZWRpYXN0cmVhbS9SVENQZWVyQ29ubmVjdGlvbi5jcHAKQEAgLTQ5LDEwICs0OSwx
MCBAQAogI2luY2x1ZGUgIlJUQ0RhdGFDaGFubmVsLmgiCiAjaW5jbHVkZSAiUlRDRGF0YUNoYW5u
ZWxFdmVudC5oIgogI2luY2x1ZGUgIlJUQ0RhdGFDaGFubmVsSGFuZGxlci5oIgotI2luY2x1ZGUg
IlJUQ0Vycm9yQ2FsbGJhY2suaCIKICNpbmNsdWRlICJSVENJY2VDYW5kaWRhdGUuaCIKICNpbmNs
dWRlICJSVENJY2VDYW5kaWRhdGVEZXNjcmlwdG9yLmgiCiAjaW5jbHVkZSAiUlRDSWNlQ2FuZGlk
YXRlRXZlbnQuaCIKKyNpbmNsdWRlICJSVENQZWVyQ29ubmVjdGlvbkVycm9yQ2FsbGJhY2suaCIK
ICNpbmNsdWRlICJSVENTZXNzaW9uRGVzY3JpcHRpb24uaCIKICNpbmNsdWRlICJSVENTZXNzaW9u
RGVzY3JpcHRpb25DYWxsYmFjay5oIgogI2luY2x1ZGUgIlJUQ1Nlc3Npb25EZXNjcmlwdGlvbkRl
c2NyaXB0b3IuaCIKQEAgLTE3MCw3ICsxNzAsNyBAQCBSVENQZWVyQ29ubmVjdGlvbjo6flJUQ1Bl
ZXJDb25uZWN0aW9uKCkKICAgICAgICAgKCpzdHJlYW0pLT5yZW1vdmVPYnNlcnZlcih0aGlzKTsK
IH0KIAotdm9pZCBSVENQZWVyQ29ubmVjdGlvbjo6Y3JlYXRlT2ZmZXIoUGFzc1JlZlB0cjxSVENT
ZXNzaW9uRGVzY3JpcHRpb25DYWxsYmFjaz4gc3VjY2Vzc0NhbGxiYWNrLCBQYXNzUmVmUHRyPFJU
Q0Vycm9yQ2FsbGJhY2s+IGVycm9yQ2FsbGJhY2ssIGNvbnN0IERpY3Rpb25hcnkmIG1lZGlhQ29u
c3RyYWludHMsIEV4Y2VwdGlvbkNvZGUmIGVjKQordm9pZCBSVENQZWVyQ29ubmVjdGlvbjo6Y3Jl
YXRlT2ZmZXIoUGFzc1JlZlB0cjxSVENTZXNzaW9uRGVzY3JpcHRpb25DYWxsYmFjaz4gc3VjY2Vz
c0NhbGxiYWNrLCBQYXNzUmVmUHRyPFJUQ1BlZXJDb25uZWN0aW9uRXJyb3JDYWxsYmFjaz4gZXJy
b3JDYWxsYmFjaywgY29uc3QgRGljdGlvbmFyeSYgbWVkaWFDb25zdHJhaW50cywgRXhjZXB0aW9u
Q29kZSYgZWMpCiB7CiAgICAgaWYgKG1fc2lnbmFsaW5nU3RhdGUgPT0gU2lnbmFsaW5nU3RhdGVD
bG9zZWQpIHsKICAgICAgICAgZWMgPSBJTlZBTElEX1NUQVRFX0VSUjsKQEAgLTE5MCw3ICsxOTAs
NyBAQCB2b2lkIFJUQ1BlZXJDb25uZWN0aW9uOjpjcmVhdGVPZmZlcihQYXNzUmVmUHRyPFJUQ1Nl
c3Npb25EZXNjcmlwdGlvbkNhbGxiYWNrPiBzdQogICAgIG1fcGVlckhhbmRsZXItPmNyZWF0ZU9m
ZmVyKHJlcXVlc3QucmVsZWFzZSgpLCBjb25zdHJhaW50cyk7CiB9CiAKLXZvaWQgUlRDUGVlckNv
bm5lY3Rpb246OmNyZWF0ZUFuc3dlcihQYXNzUmVmUHRyPFJUQ1Nlc3Npb25EZXNjcmlwdGlvbkNh
bGxiYWNrPiBzdWNjZXNzQ2FsbGJhY2ssIFBhc3NSZWZQdHI8UlRDRXJyb3JDYWxsYmFjaz4gZXJy
b3JDYWxsYmFjaywgY29uc3QgRGljdGlvbmFyeSYgbWVkaWFDb25zdHJhaW50cywgRXhjZXB0aW9u
Q29kZSYgZWMpCit2b2lkIFJUQ1BlZXJDb25uZWN0aW9uOjpjcmVhdGVBbnN3ZXIoUGFzc1JlZlB0
cjxSVENTZXNzaW9uRGVzY3JpcHRpb25DYWxsYmFjaz4gc3VjY2Vzc0NhbGxiYWNrLCBQYXNzUmVm
UHRyPFJUQ1BlZXJDb25uZWN0aW9uRXJyb3JDYWxsYmFjaz4gZXJyb3JDYWxsYmFjaywgY29uc3Qg
RGljdGlvbmFyeSYgbWVkaWFDb25zdHJhaW50cywgRXhjZXB0aW9uQ29kZSYgZWMpCiB7CiAgICAg
aWYgKG1fc2lnbmFsaW5nU3RhdGUgPT0gU2lnbmFsaW5nU3RhdGVDbG9zZWQpIHsKICAgICAgICAg
ZWMgPSBJTlZBTElEX1NUQVRFX0VSUjsKQEAgLTIxMCw3ICsyMTAsNyBAQCB2b2lkIFJUQ1BlZXJD
b25uZWN0aW9uOjpjcmVhdGVBbnN3ZXIoUGFzc1JlZlB0cjxSVENTZXNzaW9uRGVzY3JpcHRpb25D
YWxsYmFjaz4gcwogICAgIG1fcGVlckhhbmRsZXItPmNyZWF0ZUFuc3dlcihyZXF1ZXN0LnJlbGVh
c2UoKSwgY29uc3RyYWludHMucmVsZWFzZSgpKTsKIH0KIAotdm9pZCBSVENQZWVyQ29ubmVjdGlv
bjo6c2V0TG9jYWxEZXNjcmlwdGlvbihQYXNzUmVmUHRyPFJUQ1Nlc3Npb25EZXNjcmlwdGlvbj4g
cHJwU2Vzc2lvbkRlc2NyaXB0aW9uLCBQYXNzUmVmUHRyPFZvaWRDYWxsYmFjaz4gc3VjY2Vzc0Nh
bGxiYWNrLCBQYXNzUmVmUHRyPFJUQ0Vycm9yQ2FsbGJhY2s+IGVycm9yQ2FsbGJhY2ssIEV4Y2Vw
dGlvbkNvZGUmIGVjKQordm9pZCBSVENQZWVyQ29ubmVjdGlvbjo6c2V0TG9jYWxEZXNjcmlwdGlv
bihQYXNzUmVmUHRyPFJUQ1Nlc3Npb25EZXNjcmlwdGlvbj4gcHJwU2Vzc2lvbkRlc2NyaXB0aW9u
LCBQYXNzUmVmUHRyPFZvaWRDYWxsYmFjaz4gc3VjY2Vzc0NhbGxiYWNrLCBQYXNzUmVmUHRyPFJU
Q1BlZXJDb25uZWN0aW9uRXJyb3JDYWxsYmFjaz4gZXJyb3JDYWxsYmFjaywgRXhjZXB0aW9uQ29k
ZSYgZWMpCiB7CiAgICAgaWYgKG1fc2lnbmFsaW5nU3RhdGUgPT0gU2lnbmFsaW5nU3RhdGVDbG9z
ZWQpIHsKICAgICAgICAgZWMgPSBJTlZBTElEX1NUQVRFX0VSUjsKQEAgLTIzOSw3ICsyMzksNyBA
QCBQYXNzUmVmUHRyPFJUQ1Nlc3Npb25EZXNjcmlwdGlvbj4gUlRDUGVlckNvbm5lY3Rpb246Omxv
Y2FsRGVzY3JpcHRpb24oRXhjZXB0aW9uQwogICAgIHJldHVybiBzZXNzaW9uRGVzY3JpcHRpb24u
cmVsZWFzZSgpOwogfQogCi12b2lkIFJUQ1BlZXJDb25uZWN0aW9uOjpzZXRSZW1vdGVEZXNjcmlw
dGlvbihQYXNzUmVmUHRyPFJUQ1Nlc3Npb25EZXNjcmlwdGlvbj4gcHJwU2Vzc2lvbkRlc2NyaXB0
aW9uLCBQYXNzUmVmUHRyPFZvaWRDYWxsYmFjaz4gc3VjY2Vzc0NhbGxiYWNrLCBQYXNzUmVmUHRy
PFJUQ0Vycm9yQ2FsbGJhY2s+IGVycm9yQ2FsbGJhY2ssIEV4Y2VwdGlvbkNvZGUmIGVjKQordm9p
ZCBSVENQZWVyQ29ubmVjdGlvbjo6c2V0UmVtb3RlRGVzY3JpcHRpb24oUGFzc1JlZlB0cjxSVENT
ZXNzaW9uRGVzY3JpcHRpb24+IHBycFNlc3Npb25EZXNjcmlwdGlvbiwgUGFzc1JlZlB0cjxWb2lk
Q2FsbGJhY2s+IHN1Y2Nlc3NDYWxsYmFjaywgUGFzc1JlZlB0cjxSVENQZWVyQ29ubmVjdGlvbkVy
cm9yQ2FsbGJhY2s+IGVycm9yQ2FsbGJhY2ssIEV4Y2VwdGlvbkNvZGUmIGVjKQogewogICAgIGlm
IChtX3NpZ25hbGluZ1N0YXRlID09IFNpZ25hbGluZ1N0YXRlQ2xvc2VkKSB7CiAgICAgICAgIGVj
ID0gSU5WQUxJRF9TVEFURV9FUlI7CkBAIC0yODgsNyArMjg4LDcgQEAgdm9pZCBSVENQZWVyQ29u
bmVjdGlvbjo6dXBkYXRlSWNlKGNvbnN0IERpY3Rpb25hcnkmIHJ0Y0NvbmZpZ3VyYXRpb24sIGNv
bnN0IERpY3QKICAgICAgICAgZWMgPSBTWU5UQVhfRVJSOwogfQogCi12b2lkIFJUQ1BlZXJDb25u
ZWN0aW9uOjphZGRJY2VDYW5kaWRhdGUoUlRDSWNlQ2FuZGlkYXRlKiBpY2VDYW5kaWRhdGUsIFBh
c3NSZWZQdHI8Vm9pZENhbGxiYWNrPiBzdWNjZXNzQ2FsbGJhY2ssIFBhc3NSZWZQdHI8UlRDRXJy
b3JDYWxsYmFjaz4gZXJyb3JDYWxsYmFjaywgRXhjZXB0aW9uQ29kZSYgZWMpCit2b2lkIFJUQ1Bl
ZXJDb25uZWN0aW9uOjphZGRJY2VDYW5kaWRhdGUoUlRDSWNlQ2FuZGlkYXRlKiBpY2VDYW5kaWRh
dGUsIFBhc3NSZWZQdHI8Vm9pZENhbGxiYWNrPiBzdWNjZXNzQ2FsbGJhY2ssIFBhc3NSZWZQdHI8
UlRDUGVlckNvbm5lY3Rpb25FcnJvckNhbGxiYWNrPiBlcnJvckNhbGxiYWNrLCBFeGNlcHRpb25D
b2RlJiBlYykKIHsKICAgICBpZiAobV9zaWduYWxpbmdTdGF0ZSA9PSBTaWduYWxpbmdTdGF0ZUNs
b3NlZCkgewogICAgICAgICBlYyA9IElOVkFMSURfU1RBVEVfRVJSOwpkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYkNvcmUvTW9kdWxlcy9tZWRpYXN0cmVhbS9SVENQZWVyQ29ubmVjdGlvbi5oIGIvU291
cmNlL1dlYkNvcmUvTW9kdWxlcy9tZWRpYXN0cmVhbS9SVENQZWVyQ29ubmVjdGlvbi5oCmluZGV4
IDQzYjk2YzM2ZTFjZjc5MmMwMDRjZTY5NjBkYTZmNjAyODgwYTRlOGYuLjBlOGRjM2M2MDM1MzAx
NzU5YzkwODdmZjNiMDg5YmIyZTA0ZDNjZTggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL01v
ZHVsZXMvbWVkaWFzdHJlYW0vUlRDUGVlckNvbm5lY3Rpb24uaAorKysgYi9Tb3VyY2UvV2ViQ29y
ZS9Nb2R1bGVzL21lZGlhc3RyZWFtL1JUQ1BlZXJDb25uZWN0aW9uLmgKQEAgLTUzLDcgKzUzLDcg
QEAgY2xhc3MgTWVkaWFTdHJlYW1UcmFjazsKIGNsYXNzIFJUQ0NvbmZpZ3VyYXRpb247CiBjbGFz
cyBSVENEVE1GU2VuZGVyOwogY2xhc3MgUlRDRGF0YUNoYW5uZWw7Ci1jbGFzcyBSVENFcnJvckNh
bGxiYWNrOworY2xhc3MgUlRDUGVlckNvbm5lY3Rpb25FcnJvckNhbGxiYWNrOwogY2xhc3MgUlRD
U2Vzc2lvbkRlc2NyaXB0aW9uOwogY2xhc3MgUlRDU2Vzc2lvbkRlc2NyaXB0aW9uQ2FsbGJhY2s7
CiBjbGFzcyBSVENTdGF0c0NhbGxiYWNrOwpAQCAtNjQsMjEgKzY0LDIxIEBAIHB1YmxpYzoKICAg
ICBzdGF0aWMgUGFzc1JlZlB0cjxSVENQZWVyQ29ubmVjdGlvbj4gY3JlYXRlKFNjcmlwdEV4ZWN1
dGlvbkNvbnRleHQmLCBjb25zdCBEaWN0aW9uYXJ5JiBydGNDb25maWd1cmF0aW9uLCBjb25zdCBE
aWN0aW9uYXJ5JiBtZWRpYUNvbnN0cmFpbnRzLCBFeGNlcHRpb25Db2RlJik7CiAgICAgflJUQ1Bl
ZXJDb25uZWN0aW9uKCk7CiAKLSAgICB2b2lkIGNyZWF0ZU9mZmVyKFBhc3NSZWZQdHI8UlRDU2Vz
c2lvbkRlc2NyaXB0aW9uQ2FsbGJhY2s+LCBQYXNzUmVmUHRyPFJUQ0Vycm9yQ2FsbGJhY2s+LCBj
b25zdCBEaWN0aW9uYXJ5JiBtZWRpYUNvbnN0cmFpbnRzLCBFeGNlcHRpb25Db2RlJik7CisgICAg
dm9pZCBjcmVhdGVPZmZlcihQYXNzUmVmUHRyPFJUQ1Nlc3Npb25EZXNjcmlwdGlvbkNhbGxiYWNr
PiwgUGFzc1JlZlB0cjxSVENQZWVyQ29ubmVjdGlvbkVycm9yQ2FsbGJhY2s+LCBjb25zdCBEaWN0
aW9uYXJ5JiBtZWRpYUNvbnN0cmFpbnRzLCBFeGNlcHRpb25Db2RlJik7CiAKLSAgICB2b2lkIGNy
ZWF0ZUFuc3dlcihQYXNzUmVmUHRyPFJUQ1Nlc3Npb25EZXNjcmlwdGlvbkNhbGxiYWNrPiwgUGFz
c1JlZlB0cjxSVENFcnJvckNhbGxiYWNrPiwgY29uc3QgRGljdGlvbmFyeSYgbWVkaWFDb25zdHJh
aW50cywgRXhjZXB0aW9uQ29kZSYpOworICAgIHZvaWQgY3JlYXRlQW5zd2VyKFBhc3NSZWZQdHI8
UlRDU2Vzc2lvbkRlc2NyaXB0aW9uQ2FsbGJhY2s+LCBQYXNzUmVmUHRyPFJUQ1BlZXJDb25uZWN0
aW9uRXJyb3JDYWxsYmFjaz4sIGNvbnN0IERpY3Rpb25hcnkmIG1lZGlhQ29uc3RyYWludHMsIEV4
Y2VwdGlvbkNvZGUmKTsKIAotICAgIHZvaWQgc2V0TG9jYWxEZXNjcmlwdGlvbihQYXNzUmVmUHRy
PFJUQ1Nlc3Npb25EZXNjcmlwdGlvbj4sIFBhc3NSZWZQdHI8Vm9pZENhbGxiYWNrPiwgUGFzc1Jl
ZlB0cjxSVENFcnJvckNhbGxiYWNrPiwgRXhjZXB0aW9uQ29kZSYpOworICAgIHZvaWQgc2V0TG9j
YWxEZXNjcmlwdGlvbihQYXNzUmVmUHRyPFJUQ1Nlc3Npb25EZXNjcmlwdGlvbj4sIFBhc3NSZWZQ
dHI8Vm9pZENhbGxiYWNrPiwgUGFzc1JlZlB0cjxSVENQZWVyQ29ubmVjdGlvbkVycm9yQ2FsbGJh
Y2s+LCBFeGNlcHRpb25Db2RlJik7CiAgICAgUGFzc1JlZlB0cjxSVENTZXNzaW9uRGVzY3JpcHRp
b24+IGxvY2FsRGVzY3JpcHRpb24oRXhjZXB0aW9uQ29kZSYpOwogCi0gICAgdm9pZCBzZXRSZW1v
dGVEZXNjcmlwdGlvbihQYXNzUmVmUHRyPFJUQ1Nlc3Npb25EZXNjcmlwdGlvbj4sIFBhc3NSZWZQ
dHI8Vm9pZENhbGxiYWNrPiwgUGFzc1JlZlB0cjxSVENFcnJvckNhbGxiYWNrPiwgRXhjZXB0aW9u
Q29kZSYpOworICAgIHZvaWQgc2V0UmVtb3RlRGVzY3JpcHRpb24oUGFzc1JlZlB0cjxSVENTZXNz
aW9uRGVzY3JpcHRpb24+LCBQYXNzUmVmUHRyPFZvaWRDYWxsYmFjaz4sIFBhc3NSZWZQdHI8UlRD
UGVlckNvbm5lY3Rpb25FcnJvckNhbGxiYWNrPiwgRXhjZXB0aW9uQ29kZSYpOwogICAgIFBhc3NS
ZWZQdHI8UlRDU2Vzc2lvbkRlc2NyaXB0aW9uPiByZW1vdGVEZXNjcmlwdGlvbihFeGNlcHRpb25D
b2RlJik7CiAKICAgICBTdHJpbmcgc2lnbmFsaW5nU3RhdGUoKSBjb25zdDsKIAogICAgIHZvaWQg
dXBkYXRlSWNlKGNvbnN0IERpY3Rpb25hcnkmIHJ0Y0NvbmZpZ3VyYXRpb24sIGNvbnN0IERpY3Rp
b25hcnkmIG1lZGlhQ29uc3RyYWludHMsIEV4Y2VwdGlvbkNvZGUmKTsKIAotICAgIHZvaWQgYWRk
SWNlQ2FuZGlkYXRlKFJUQ0ljZUNhbmRpZGF0ZSosIFBhc3NSZWZQdHI8Vm9pZENhbGxiYWNrPiwg
UGFzc1JlZlB0cjxSVENFcnJvckNhbGxiYWNrPiwgRXhjZXB0aW9uQ29kZSYpOworICAgIHZvaWQg
YWRkSWNlQ2FuZGlkYXRlKFJUQ0ljZUNhbmRpZGF0ZSosIFBhc3NSZWZQdHI8Vm9pZENhbGxiYWNr
PiwgUGFzc1JlZlB0cjxSVENQZWVyQ29ubmVjdGlvbkVycm9yQ2FsbGJhY2s+LCBFeGNlcHRpb25D
b2RlJik7CiAKICAgICBTdHJpbmcgaWNlR2F0aGVyaW5nU3RhdGUoKSBjb25zdDsKIApkaWZmIC0t
Z2l0IGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9tZWRpYXN0cmVhbS9SVENQZWVyQ29ubmVjdGlv
bi5pZGwgYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL21lZGlhc3RyZWFtL1JUQ1BlZXJDb25uZWN0
aW9uLmlkbAppbmRleCA2ZjI2MzEzZjVkNTQ5ZjA2YTVhNzQzYzRlNjZlOTJkOTI5YTJkNTRiLi4x
ZDYwMTdmNjVmNmRlNzcyZDViNzI4NTRhZTQ0MGY0ZTdkNjAxOTEwIDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViQ29yZS9Nb2R1bGVzL21lZGlhc3RyZWFtL1JUQ1BlZXJDb25uZWN0aW9uLmlkbAorKysg
Yi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL21lZGlhc3RyZWFtL1JUQ1BlZXJDb25uZWN0aW9uLmlk
bApAQCAtMzksMjEgKzM5LDIxIEBACiAgICAgRXZlbnRUYXJnZXQsCiAgICAgSW50ZXJmYWNlTmFt
ZT13ZWJraXRSVENQZWVyQ29ubmVjdGlvbiwKIF0gaW50ZXJmYWNlIFJUQ1BlZXJDb25uZWN0aW9u
IHsKLSAgICBbUmFpc2VzRXhjZXB0aW9uXSB2b2lkIGNyZWF0ZU9mZmVyKFJUQ1Nlc3Npb25EZXNj
cmlwdGlvbkNhbGxiYWNrIHN1Y2Nlc3NDYWxsYmFjaywgW0RlZmF1bHQ9VW5kZWZpbmVkXSBvcHRp
b25hbCBSVENFcnJvckNhbGxiYWNrIGZhaWx1cmVDYWxsYmFjaywgb3B0aW9uYWwgRGljdGlvbmFy
eSBtZWRpYUNvbnN0cmFpbnRzKTsKKyAgICBbUmFpc2VzRXhjZXB0aW9uXSB2b2lkIGNyZWF0ZU9m
ZmVyKFJUQ1Nlc3Npb25EZXNjcmlwdGlvbkNhbGxiYWNrIHN1Y2Nlc3NDYWxsYmFjaywgW0RlZmF1
bHQ9VW5kZWZpbmVkXSBvcHRpb25hbCBSVENQZWVyQ29ubmVjdGlvbkVycm9yQ2FsbGJhY2sgZmFp
bHVyZUNhbGxiYWNrLCBvcHRpb25hbCBEaWN0aW9uYXJ5IG1lZGlhQ29uc3RyYWludHMpOwogCi0g
ICAgW1JhaXNlc0V4Y2VwdGlvbl0gdm9pZCBjcmVhdGVBbnN3ZXIoUlRDU2Vzc2lvbkRlc2NyaXB0
aW9uQ2FsbGJhY2sgc3VjY2Vzc0NhbGxiYWNrLCBbRGVmYXVsdD1VbmRlZmluZWRdIG9wdGlvbmFs
IFJUQ0Vycm9yQ2FsbGJhY2sgZmFpbHVyZUNhbGxiYWNrLCBvcHRpb25hbCBEaWN0aW9uYXJ5IG1l
ZGlhQ29uc3RyYWludHMpOworICAgIFtSYWlzZXNFeGNlcHRpb25dIHZvaWQgY3JlYXRlQW5zd2Vy
KFJUQ1Nlc3Npb25EZXNjcmlwdGlvbkNhbGxiYWNrIHN1Y2Nlc3NDYWxsYmFjaywgW0RlZmF1bHQ9
VW5kZWZpbmVkXSBvcHRpb25hbCBSVENQZWVyQ29ubmVjdGlvbkVycm9yQ2FsbGJhY2sgZmFpbHVy
ZUNhbGxiYWNrLCBvcHRpb25hbCBEaWN0aW9uYXJ5IG1lZGlhQ29uc3RyYWludHMpOwogCi0gICAg
W1JhaXNlc0V4Y2VwdGlvbl0gdm9pZCBzZXRMb2NhbERlc2NyaXB0aW9uKFJUQ1Nlc3Npb25EZXNj
cmlwdGlvbiBkZXNjcmlwdGlvbiwgW0RlZmF1bHQ9VW5kZWZpbmVkXSBvcHRpb25hbCBWb2lkQ2Fs
bGJhY2sgc3VjY2Vzc0NhbGxiYWNrLCBbRGVmYXVsdD1VbmRlZmluZWRdIG9wdGlvbmFsIFJUQ0Vy
cm9yQ2FsbGJhY2sgZmFpbHVyZUNhbGxiYWNrKTsKKyAgICBbUmFpc2VzRXhjZXB0aW9uXSB2b2lk
IHNldExvY2FsRGVzY3JpcHRpb24oUlRDU2Vzc2lvbkRlc2NyaXB0aW9uIGRlc2NyaXB0aW9uLCBb
RGVmYXVsdD1VbmRlZmluZWRdIG9wdGlvbmFsIFZvaWRDYWxsYmFjayBzdWNjZXNzQ2FsbGJhY2ss
IFtEZWZhdWx0PVVuZGVmaW5lZF0gb3B0aW9uYWwgUlRDUGVlckNvbm5lY3Rpb25FcnJvckNhbGxi
YWNrIGZhaWx1cmVDYWxsYmFjayk7CiAgICAgW0dldHRlclJhaXNlc0V4Y2VwdGlvbl0gcmVhZG9u
bHkgYXR0cmlidXRlIFJUQ1Nlc3Npb25EZXNjcmlwdGlvbiBsb2NhbERlc2NyaXB0aW9uOwogCi0g
ICAgW1JhaXNlc0V4Y2VwdGlvbl0gdm9pZCBzZXRSZW1vdGVEZXNjcmlwdGlvbihSVENTZXNzaW9u
RGVzY3JpcHRpb24gZGVzY3JpcHRpb24sIFtEZWZhdWx0PVVuZGVmaW5lZF0gb3B0aW9uYWwgVm9p
ZENhbGxiYWNrIHN1Y2Nlc3NDYWxsYmFjaywgW0RlZmF1bHQ9VW5kZWZpbmVkXSBvcHRpb25hbCBS
VENFcnJvckNhbGxiYWNrIGZhaWx1cmVDYWxsYmFjayk7CisgICAgW1JhaXNlc0V4Y2VwdGlvbl0g
dm9pZCBzZXRSZW1vdGVEZXNjcmlwdGlvbihSVENTZXNzaW9uRGVzY3JpcHRpb24gZGVzY3JpcHRp
b24sIFtEZWZhdWx0PVVuZGVmaW5lZF0gb3B0aW9uYWwgVm9pZENhbGxiYWNrIHN1Y2Nlc3NDYWxs
YmFjaywgW0RlZmF1bHQ9VW5kZWZpbmVkXSBvcHRpb25hbCBSVENQZWVyQ29ubmVjdGlvbkVycm9y
Q2FsbGJhY2sgZmFpbHVyZUNhbGxiYWNrKTsKICAgICBbR2V0dGVyUmFpc2VzRXhjZXB0aW9uXSBy
ZWFkb25seSBhdHRyaWJ1dGUgUlRDU2Vzc2lvbkRlc2NyaXB0aW9uIHJlbW90ZURlc2NyaXB0aW9u
OwogCiAgICAgcmVhZG9ubHkgYXR0cmlidXRlIERPTVN0cmluZyBzaWduYWxpbmdTdGF0ZTsKIAog
ICAgIFtSYWlzZXNFeGNlcHRpb25dIHZvaWQgdXBkYXRlSWNlKG9wdGlvbmFsIERpY3Rpb25hcnkg
Y29uZmlndXJhdGlvbiwgb3B0aW9uYWwgRGljdGlvbmFyeSBtZWRpYUNvbnN0cmFpbnRzKTsKIAot
ICAgIFtSYWlzZXNFeGNlcHRpb25dIHZvaWQgYWRkSWNlQ2FuZGlkYXRlKFJUQ0ljZUNhbmRpZGF0
ZSBjYW5kaWRhdGUsIFZvaWRDYWxsYmFjayBzdWNjZXNzQ2FsbGJhY2ssIFJUQ0Vycm9yQ2FsbGJh
Y2sgZmFpbHVyZUNhbGxiYWNrKTsKKyAgICBbUmFpc2VzRXhjZXB0aW9uXSB2b2lkIGFkZEljZUNh
bmRpZGF0ZShSVENJY2VDYW5kaWRhdGUgY2FuZGlkYXRlLCBWb2lkQ2FsbGJhY2sgc3VjY2Vzc0Nh
bGxiYWNrLCBSVENQZWVyQ29ubmVjdGlvbkVycm9yQ2FsbGJhY2sgZmFpbHVyZUNhbGxiYWNrKTsK
IAogICAgIHJlYWRvbmx5IGF0dHJpYnV0ZSBET01TdHJpbmcgaWNlR2F0aGVyaW5nU3RhdGU7CiAg
ICAgcmVhZG9ubHkgYXR0cmlidXRlIERPTVN0cmluZyBpY2VDb25uZWN0aW9uU3RhdGU7CmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL21lZGlhc3RyZWFtL1JUQ1BlZXJDb25uZWN0
aW9uRXJyb3JDYWxsYmFjay5oIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9tZWRpYXN0cmVhbS9S
VENQZWVyQ29ubmVjdGlvbkVycm9yQ2FsbGJhY2suaApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRl
eCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5jMmFlY2JhMGE0Y2Q5
YWE5ZjJlNzI2MTA3ZmU2ZmQxNzFmMjA1ZWVjCi0tLSAvZGV2L251bGwKKysrIGIvU291cmNlL1dl
YkNvcmUvTW9kdWxlcy9tZWRpYXN0cmVhbS9SVENQZWVyQ29ubmVjdGlvbkVycm9yQ2FsbGJhY2su
aApAQCAtMCwwICsxLDQ2IEBACisvKgorICogQ29weXJpZ2h0IChDKSAyMDEzIE5va2lhIENvcnBv
cmF0aW9uIGFuZC9vciBpdHMgc3Vic2lkaWFyeSgtaWVzKS4KKyAqCisgKiBSZWRpc3RyaWJ1dGlv
biBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKKyAq
IG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcg
Y29uZGl0aW9ucworICogYXJlIG1ldDoKKyAqIDEuIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2Ug
Y29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMg
bGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisgKiAyLiBS
ZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNv
cHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZv
bGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQorICogICAgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3Ro
ZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KKyAqCisgKiBUSElT
IFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIFRIRSBDT1BZUklHSFQgSE9MREVSUyBBTkQgQ09OVFJJ
QlVUT1JTCisgKiAiQVMgSVMiIEFORCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMs
IElOQ0xVRElORywgQlVUIE5PVAorICogTElNSVRFRCBUTywgVEhFIElNUExJRUQgV0FSUkFOVElF
UyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SCisgKiBBIFBBUlRJQ1VMQVIgUFVS
UE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgVEhFIENPUFlSSUdIVAorICog
T1dORVIgT1IgQ09OVFJJQlVUT1JTIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1Qs
IElOQ0lERU5UQUwsCisgKiBTUEVDSUFMLCBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwgREFN
QUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UCisgKiBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRiBT
VUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwKKyAqIERBVEEsIE9SIFBS
T0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFO
WQorICogVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJ
QUJJTElUWSwgT1IgVE9SVAorICogKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkg
QVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFCisgKiBPRiBUSElTIFNPRlRXQVJFLCBF
VkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgorICovCisK
KyNpZm5kZWYgUlRDUGVlckNvbm5lY3Rpb25FcnJvckNhbGxiYWNrX2gKKyNkZWZpbmUgUlRDUGVl
ckNvbm5lY3Rpb25FcnJvckNhbGxiYWNrX2gKKworI2lmIEVOQUJMRShNRURJQV9TVFJFQU0pCisK
KyNpbmNsdWRlICJET01FcnJvci5oIgorI2luY2x1ZGUgPHd0Zi9SZWZDb3VudGVkLmg+CisKK25h
bWVzcGFjZSBXZWJDb3JlIHsKKworY2xhc3MgUlRDUGVlckNvbm5lY3Rpb25FcnJvckNhbGxiYWNr
IDogcHVibGljIFJlZkNvdW50ZWQ8UlRDUGVlckNvbm5lY3Rpb25FcnJvckNhbGxiYWNrPiB7Citw
dWJsaWM6CisgICAgdmlydHVhbCB+UlRDUGVlckNvbm5lY3Rpb25FcnJvckNhbGxiYWNrKCkgeyB9
CisgICAgdmlydHVhbCBib29sIGhhbmRsZUV2ZW50KERPTUVycm9yKikgPSAwOworfTsKKworfSAv
LyBuYW1lc3BhY2UgV2ViQ29yZQorCisjZW5kaWYgLy8gRU5BQkxFKE1FRElBX1NUUkVBTSkKKwor
I2VuZGlmIC8vIFJUQ1BlZXJDb25uZWN0aW9uRXJyb3JDYWxsYmFja19oCmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViQ29yZS9Nb2R1bGVzL21lZGlhc3RyZWFtL1JUQ1BlZXJDb25uZWN0aW9uRXJyb3JD
YWxsYmFjay5pZGwgYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL21lZGlhc3RyZWFtL1JUQ1BlZXJD
b25uZWN0aW9uRXJyb3JDYWxsYmFjay5pZGwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uNGI4N2FkN2ZmMDRlMzczY2E0
YzAwMzVkYTJmNjQyOGJmMjhmMDcyMgotLS0gL2Rldi9udWxsCisrKyBiL1NvdXJjZS9XZWJDb3Jl
L01vZHVsZXMvbWVkaWFzdHJlYW0vUlRDUGVlckNvbm5lY3Rpb25FcnJvckNhbGxiYWNrLmlkbApA
QCAtMCwwICsxLDMxIEBACisvKgorICogQ29weXJpZ2h0IChDKSAyMDEzIE5va2lhIENvcnBvcmF0
aW9uIGFuZC9vciBpdHMgc3Vic2lkaWFyeSgtaWVzKS4KKyAqCisgKiBSZWRpc3RyaWJ1dGlvbiBh
bmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKKyAqIG1v
ZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29u
ZGl0aW9ucworICogYXJlIG1ldDoKKyAqIDEuIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29k
ZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlz
dCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisgKiAyLiBSZWRp
c3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHly
aWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxv
d2luZyBkaXNjbGFpbWVyIGluIHRoZQorICogICAgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIg
bWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KKyAqCisgKiBUSElTIFNP
RlRXQVJFIElTIFBST1ZJREVEIEJZIFRIRSBDT1BZUklHSFQgSE9MREVSUyBBTkQgQ09OVFJJQlVU
T1JTCisgKiAiQVMgSVMiIEFORCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElO
Q0xVRElORywgQlVUIE5PVAorICogTElNSVRFRCBUTywgVEhFIElNUExJRUQgV0FSUkFOVElFUyBP
RiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SCisgKiBBIFBBUlRJQ1VMQVIgUFVSUE9T
RSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgVEhFIENPUFlSSUdIVAorICogT1dO
RVIgT1IgQ09OVFJJQlVUT1JTIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElO
Q0lERU5UQUwsCisgKiBTUEVDSUFMLCBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwgREFNQUdF
UyAoSU5DTFVESU5HLCBCVVQgTk9UCisgKiBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRiBTVUJT
VElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwKKyAqIERBVEEsIE9SIFBST0ZJ
VFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWQor
ICogVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJ
TElUWSwgT1IgVE9SVAorICogKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJ
U0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFCisgKiBPRiBUSElTIFNPRlRXQVJFLCBFVkVO
IElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgorICovCisKK1sK
KyAgICBDb25kaXRpb25hbD1NRURJQV9TVFJFQU0sCitdIGNhbGxiYWNrIGludGVyZmFjZSBSVENQ
ZWVyQ29ubmVjdGlvbkVycm9yQ2FsbGJhY2sgeworICAgIGJvb2xlYW4gaGFuZGxlRXZlbnQoRE9N
RXJyb3IgZXJyb3IpOworfTsKKwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9t
ZWRpYXN0cmVhbS9SVENTZXNzaW9uRGVzY3JpcHRpb25SZXF1ZXN0SW1wbC5jcHAgYi9Tb3VyY2Uv
V2ViQ29yZS9Nb2R1bGVzL21lZGlhc3RyZWFtL1JUQ1Nlc3Npb25EZXNjcmlwdGlvblJlcXVlc3RJ
bXBsLmNwcAppbmRleCA0MDgxZTkzNGFhMjQ1MTI5YzhkOWFhMDc1OTEwZTg4ZTA2NWYyY2M2Li44
NzJhNTRlMThhMTE4NTg1MDE2NDYzMDBjMzBjNTEyYTQxNGIzMTcxIDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViQ29yZS9Nb2R1bGVzL21lZGlhc3RyZWFtL1JUQ1Nlc3Npb25EZXNjcmlwdGlvblJlcXVl
c3RJbXBsLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL21lZGlhc3RyZWFtL1JUQ1Nl
c3Npb25EZXNjcmlwdGlvblJlcXVlc3RJbXBsLmNwcApAQCAtMSw1ICsxLDYgQEAKIC8qCiAgKiBD
b3B5cmlnaHQgKEMpIDIwMTIgR29vZ2xlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAqIENv
cHlyaWdodCAoQykgMjAxMyBOb2tpYSBDb3Jwb3JhdGlvbiBhbmQvb3IgaXRzIHN1YnNpZGlhcnko
LWllcykuCiAgKgogICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFy
eSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CiAgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQg
cHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKQEAgLTM0LDIyICszNSwyMiBA
QAogCiAjaW5jbHVkZSAiUlRDU2Vzc2lvbkRlc2NyaXB0aW9uUmVxdWVzdEltcGwuaCIKIAotI2lu
Y2x1ZGUgIlJUQ0Vycm9yQ2FsbGJhY2suaCIKICNpbmNsdWRlICJSVENQZWVyQ29ubmVjdGlvbi5o
IgorI2luY2x1ZGUgIlJUQ1BlZXJDb25uZWN0aW9uRXJyb3JDYWxsYmFjay5oIgogI2luY2x1ZGUg
IlJUQ1Nlc3Npb25EZXNjcmlwdGlvbi5oIgogI2luY2x1ZGUgIlJUQ1Nlc3Npb25EZXNjcmlwdGlv
bkNhbGxiYWNrLmgiCiAjaW5jbHVkZSAiUlRDU2Vzc2lvbkRlc2NyaXB0aW9uRGVzY3JpcHRvci5o
IgogCiBuYW1lc3BhY2UgV2ViQ29yZSB7CiAKLVBhc3NSZWZQdHI8UlRDU2Vzc2lvbkRlc2NyaXB0
aW9uUmVxdWVzdEltcGw+IFJUQ1Nlc3Npb25EZXNjcmlwdGlvblJlcXVlc3RJbXBsOjpjcmVhdGUo
U2NyaXB0RXhlY3V0aW9uQ29udGV4dCogY29udGV4dCwgUGFzc1JlZlB0cjxSVENTZXNzaW9uRGVz
Y3JpcHRpb25DYWxsYmFjaz4gc3VjY2Vzc0NhbGxiYWNrLCBQYXNzUmVmUHRyPFJUQ0Vycm9yQ2Fs
bGJhY2s+IGVycm9yQ2FsbGJhY2spCitQYXNzUmVmUHRyPFJUQ1Nlc3Npb25EZXNjcmlwdGlvblJl
cXVlc3RJbXBsPiBSVENTZXNzaW9uRGVzY3JpcHRpb25SZXF1ZXN0SW1wbDo6Y3JlYXRlKFNjcmlw
dEV4ZWN1dGlvbkNvbnRleHQqIGNvbnRleHQsIFBhc3NSZWZQdHI8UlRDU2Vzc2lvbkRlc2NyaXB0
aW9uQ2FsbGJhY2s+IHN1Y2Nlc3NDYWxsYmFjaywgUGFzc1JlZlB0cjxSVENQZWVyQ29ubmVjdGlv
bkVycm9yQ2FsbGJhY2s+IGVycm9yQ2FsbGJhY2spCiB7CiAgICAgUmVmUHRyPFJUQ1Nlc3Npb25E
ZXNjcmlwdGlvblJlcXVlc3RJbXBsPiByZXF1ZXN0ID0gYWRvcHRSZWYobmV3IFJUQ1Nlc3Npb25E
ZXNjcmlwdGlvblJlcXVlc3RJbXBsKGNvbnRleHQsIHN1Y2Nlc3NDYWxsYmFjaywgZXJyb3JDYWxs
YmFjaykpOwogICAgIHJlcXVlc3QtPnN1c3BlbmRJZk5lZWRlZCgpOwogICAgIHJldHVybiByZXF1
ZXN0LnJlbGVhc2UoKTsKIH0KIAotUlRDU2Vzc2lvbkRlc2NyaXB0aW9uUmVxdWVzdEltcGw6OlJU
Q1Nlc3Npb25EZXNjcmlwdGlvblJlcXVlc3RJbXBsKFNjcmlwdEV4ZWN1dGlvbkNvbnRleHQqIGNv
bnRleHQsIFBhc3NSZWZQdHI8UlRDU2Vzc2lvbkRlc2NyaXB0aW9uQ2FsbGJhY2s+IHN1Y2Nlc3ND
YWxsYmFjaywgUGFzc1JlZlB0cjxSVENFcnJvckNhbGxiYWNrPiBlcnJvckNhbGxiYWNrKQorUlRD
U2Vzc2lvbkRlc2NyaXB0aW9uUmVxdWVzdEltcGw6OlJUQ1Nlc3Npb25EZXNjcmlwdGlvblJlcXVl
c3RJbXBsKFNjcmlwdEV4ZWN1dGlvbkNvbnRleHQqIGNvbnRleHQsIFBhc3NSZWZQdHI8UlRDU2Vz
c2lvbkRlc2NyaXB0aW9uQ2FsbGJhY2s+IHN1Y2Nlc3NDYWxsYmFjaywgUGFzc1JlZlB0cjxSVENQ
ZWVyQ29ubmVjdGlvbkVycm9yQ2FsbGJhY2s+IGVycm9yQ2FsbGJhY2spCiAgICAgOiBBY3RpdmVE
T01PYmplY3QoY29udGV4dCkKICAgICAsIG1fc3VjY2Vzc0NhbGxiYWNrKHN1Y2Nlc3NDYWxsYmFj
aykKICAgICAsIG1fZXJyb3JDYWxsYmFjayhlcnJvckNhbGxiYWNrKQpAQCAtNzMsNyArNzQsNyBA
QCB2b2lkIFJUQ1Nlc3Npb25EZXNjcmlwdGlvblJlcXVlc3RJbXBsOjpyZXF1ZXN0U3VjY2VlZGVk
KFBhc3NSZWZQdHI8UlRDU2Vzc2lvbkRlcwogdm9pZCBSVENTZXNzaW9uRGVzY3JpcHRpb25SZXF1
ZXN0SW1wbDo6cmVxdWVzdEZhaWxlZChjb25zdCBTdHJpbmcmIGVycm9yKQogewogICAgIGlmICht
X2Vycm9yQ2FsbGJhY2spCi0gICAgICAgIG1fZXJyb3JDYWxsYmFjay0+aGFuZGxlRXZlbnQoZXJy
b3IpOworICAgICAgICBtX2Vycm9yQ2FsbGJhY2stPmhhbmRsZUV2ZW50KERPTUVycm9yOjpjcmVh
dGUoZXJyb3IpLmdldCgpKTsKIAogICAgIGNsZWFyKCk7CiB9CmRpZmYgLS1naXQgYS9Tb3VyY2Uv
V2ViQ29yZS9Nb2R1bGVzL21lZGlhc3RyZWFtL1JUQ1Nlc3Npb25EZXNjcmlwdGlvblJlcXVlc3RJ
bXBsLmggYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL21lZGlhc3RyZWFtL1JUQ1Nlc3Npb25EZXNj
cmlwdGlvblJlcXVlc3RJbXBsLmgKaW5kZXggZDFiY2VlMDEzNTEzYWE2N2MyYjA3NmE5MDUwMWVj
ZTg1NjJlMTZlMC4uMjlkZTY0NzM5MTk5NmExZDVlZDI1M2NjMzY1ZDU0ZmNhNDhiMzk1MSAxMDA2
NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9tZWRpYXN0cmVhbS9SVENTZXNzaW9uRGVz
Y3JpcHRpb25SZXF1ZXN0SW1wbC5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvbWVkaWFz
dHJlYW0vUlRDU2Vzc2lvbkRlc2NyaXB0aW9uUmVxdWVzdEltcGwuaApAQCAtMSw1ICsxLDYgQEAK
IC8qCiAgKiBDb3B5cmlnaHQgKEMpIDIwMTIgR29vZ2xlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZl
ZC4KKyAqIENvcHlyaWdodCAoQykgMjAxMyBOb2tpYSBDb3Jwb3JhdGlvbiBhbmQvb3IgaXRzIHN1
YnNpZGlhcnkoLWllcykuCiAgKgogICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2Ug
YW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CiAgKiBtb2RpZmljYXRpb24sIGFyZSBw
ZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKQEAgLTM4LDEz
ICszOSwxMyBAQAogCiBuYW1lc3BhY2UgV2ViQ29yZSB7CiAKLWNsYXNzIFJUQ0Vycm9yQ2FsbGJh
Y2s7CitjbGFzcyBSVENQZWVyQ29ubmVjdGlvbkVycm9yQ2FsbGJhY2s7CiBjbGFzcyBSVENQZWVy
Q29ubmVjdGlvbjsKIGNsYXNzIFJUQ1Nlc3Npb25EZXNjcmlwdGlvbkNhbGxiYWNrOwogCiBjbGFz
cyBSVENTZXNzaW9uRGVzY3JpcHRpb25SZXF1ZXN0SW1wbCA6IHB1YmxpYyBSVENTZXNzaW9uRGVz
Y3JpcHRpb25SZXF1ZXN0LCBwdWJsaWMgQWN0aXZlRE9NT2JqZWN0IHsKIHB1YmxpYzoKLSAgICBz
dGF0aWMgUGFzc1JlZlB0cjxSVENTZXNzaW9uRGVzY3JpcHRpb25SZXF1ZXN0SW1wbD4gY3JlYXRl
KFNjcmlwdEV4ZWN1dGlvbkNvbnRleHQqLCBQYXNzUmVmUHRyPFJUQ1Nlc3Npb25EZXNjcmlwdGlv
bkNhbGxiYWNrPiwgUGFzc1JlZlB0cjxSVENFcnJvckNhbGxiYWNrPik7CisgICAgc3RhdGljIFBh
c3NSZWZQdHI8UlRDU2Vzc2lvbkRlc2NyaXB0aW9uUmVxdWVzdEltcGw+IGNyZWF0ZShTY3JpcHRF
eGVjdXRpb25Db250ZXh0KiwgUGFzc1JlZlB0cjxSVENTZXNzaW9uRGVzY3JpcHRpb25DYWxsYmFj
az4sIFBhc3NSZWZQdHI8UlRDUGVlckNvbm5lY3Rpb25FcnJvckNhbGxiYWNrPik7CiAgICAgdmly
dHVhbCB+UlRDU2Vzc2lvbkRlc2NyaXB0aW9uUmVxdWVzdEltcGwoKTsKIAogICAgIHZpcnR1YWwg
dm9pZCByZXF1ZXN0U3VjY2VlZGVkKFBhc3NSZWZQdHI8UlRDU2Vzc2lvbkRlc2NyaXB0aW9uRGVz
Y3JpcHRvcj4pIE9WRVJSSURFOwpAQCAtNTQsMTIgKzU1LDEyIEBAIHB1YmxpYzoKICAgICB2aXJ0
dWFsIHZvaWQgc3RvcCgpIE9WRVJSSURFOwogCiBwcml2YXRlOgotICAgIFJUQ1Nlc3Npb25EZXNj
cmlwdGlvblJlcXVlc3RJbXBsKFNjcmlwdEV4ZWN1dGlvbkNvbnRleHQqLCBQYXNzUmVmUHRyPFJU
Q1Nlc3Npb25EZXNjcmlwdGlvbkNhbGxiYWNrPiwgUGFzc1JlZlB0cjxSVENFcnJvckNhbGxiYWNr
Pik7CisgICAgUlRDU2Vzc2lvbkRlc2NyaXB0aW9uUmVxdWVzdEltcGwoU2NyaXB0RXhlY3V0aW9u
Q29udGV4dCosIFBhc3NSZWZQdHI8UlRDU2Vzc2lvbkRlc2NyaXB0aW9uQ2FsbGJhY2s+LCBQYXNz
UmVmUHRyPFJUQ1BlZXJDb25uZWN0aW9uRXJyb3JDYWxsYmFjaz4pOwogCiAgICAgdm9pZCBjbGVh
cigpOwogCiAgICAgUmVmUHRyPFJUQ1Nlc3Npb25EZXNjcmlwdGlvbkNhbGxiYWNrPiBtX3N1Y2Nl
c3NDYWxsYmFjazsKLSAgICBSZWZQdHI8UlRDRXJyb3JDYWxsYmFjaz4gbV9lcnJvckNhbGxiYWNr
OworICAgIFJlZlB0cjxSVENQZWVyQ29ubmVjdGlvbkVycm9yQ2FsbGJhY2s+IG1fZXJyb3JDYWxs
YmFjazsKIH07CiAKIH0gLy8gbmFtZXNwYWNlIFdlYkNvcmUKZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJDb3JlL01vZHVsZXMvbWVkaWFzdHJlYW0vUlRDVm9pZFJlcXVlc3RJbXBsLmNwcCBiL1NvdXJj
ZS9XZWJDb3JlL01vZHVsZXMvbWVkaWFzdHJlYW0vUlRDVm9pZFJlcXVlc3RJbXBsLmNwcAppbmRl
eCAxNTBlM2U5ZmZiYTcyNmM4NGE3Y2I3ZTY0YWY0MmVhNzJkYTllMTJmLi4xMTYxMTU4MThiMmU5
NjY0ZmNhMTE1ZmI4MDgzNTYxMDFhZjJhNzM0IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9N
b2R1bGVzL21lZGlhc3RyZWFtL1JUQ1ZvaWRSZXF1ZXN0SW1wbC5jcHAKKysrIGIvU291cmNlL1dl
YkNvcmUvTW9kdWxlcy9tZWRpYXN0cmVhbS9SVENWb2lkUmVxdWVzdEltcGwuY3BwCkBAIC0xLDUg
KzEsNiBAQAogLyoKICAqIENvcHlyaWdodCAoQykgMjAxMiBHb29nbGUgSW5jLiBBbGwgcmlnaHRz
IHJlc2VydmVkLgorICogQ29weXJpZ2h0IChDKSAyMDEzIE5va2lhIENvcnBvcmF0aW9uIGFuZC9v
ciBpdHMgc3Vic2lkaWFyeSgtaWVzKS4KICAqCiAgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGlu
IHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKICAqIG1vZGlmaWNhdGlv
biwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucwpA
QCAtMzQsMjAgKzM1LDIxIEBACiAKICNpbmNsdWRlICJSVENWb2lkUmVxdWVzdEltcGwuaCIKIAot
I2luY2x1ZGUgIlJUQ0Vycm9yQ2FsbGJhY2suaCIKKyNpbmNsdWRlICJET01FcnJvci5oIgogI2lu
Y2x1ZGUgIlJUQ1BlZXJDb25uZWN0aW9uLmgiCisjaW5jbHVkZSAiUlRDUGVlckNvbm5lY3Rpb25F
cnJvckNhbGxiYWNrLmgiCiAjaW5jbHVkZSAiVm9pZENhbGxiYWNrLmgiCiAKIG5hbWVzcGFjZSBX
ZWJDb3JlIHsKIAotUGFzc1JlZlB0cjxSVENWb2lkUmVxdWVzdEltcGw+IFJUQ1ZvaWRSZXF1ZXN0
SW1wbDo6Y3JlYXRlKFNjcmlwdEV4ZWN1dGlvbkNvbnRleHQqIGNvbnRleHQsIFBhc3NSZWZQdHI8
Vm9pZENhbGxiYWNrPiBzdWNjZXNzQ2FsbGJhY2ssIFBhc3NSZWZQdHI8UlRDRXJyb3JDYWxsYmFj
az4gZXJyb3JDYWxsYmFjaykKK1Bhc3NSZWZQdHI8UlRDVm9pZFJlcXVlc3RJbXBsPiBSVENWb2lk
UmVxdWVzdEltcGw6OmNyZWF0ZShTY3JpcHRFeGVjdXRpb25Db250ZXh0KiBjb250ZXh0LCBQYXNz
UmVmUHRyPFZvaWRDYWxsYmFjaz4gc3VjY2Vzc0NhbGxiYWNrLCBQYXNzUmVmUHRyPFJUQ1BlZXJD
b25uZWN0aW9uRXJyb3JDYWxsYmFjaz4gZXJyb3JDYWxsYmFjaykKIHsKICAgICBSZWZQdHI8UlRD
Vm9pZFJlcXVlc3RJbXBsPiByZXF1ZXN0ID0gYWRvcHRSZWYobmV3IFJUQ1ZvaWRSZXF1ZXN0SW1w
bChjb250ZXh0LCBzdWNjZXNzQ2FsbGJhY2ssIGVycm9yQ2FsbGJhY2spKTsKICAgICByZXF1ZXN0
LT5zdXNwZW5kSWZOZWVkZWQoKTsKICAgICByZXR1cm4gcmVxdWVzdC5yZWxlYXNlKCk7CiB9CiAK
LVJUQ1ZvaWRSZXF1ZXN0SW1wbDo6UlRDVm9pZFJlcXVlc3RJbXBsKFNjcmlwdEV4ZWN1dGlvbkNv
bnRleHQqIGNvbnRleHQsIFBhc3NSZWZQdHI8Vm9pZENhbGxiYWNrPiBzdWNjZXNzQ2FsbGJhY2ss
IFBhc3NSZWZQdHI8UlRDRXJyb3JDYWxsYmFjaz4gZXJyb3JDYWxsYmFjaykKK1JUQ1ZvaWRSZXF1
ZXN0SW1wbDo6UlRDVm9pZFJlcXVlc3RJbXBsKFNjcmlwdEV4ZWN1dGlvbkNvbnRleHQqIGNvbnRl
eHQsIFBhc3NSZWZQdHI8Vm9pZENhbGxiYWNrPiBzdWNjZXNzQ2FsbGJhY2ssIFBhc3NSZWZQdHI8
UlRDUGVlckNvbm5lY3Rpb25FcnJvckNhbGxiYWNrPiBlcnJvckNhbGxiYWNrKQogICAgIDogQWN0
aXZlRE9NT2JqZWN0KGNvbnRleHQpCiAgICAgLCBtX3N1Y2Nlc3NDYWxsYmFjayhzdWNjZXNzQ2Fs
bGJhY2spCiAgICAgLCBtX2Vycm9yQ2FsbGJhY2soZXJyb3JDYWxsYmFjaykKQEAgLTY5LDcgKzcx
LDcgQEAgdm9pZCBSVENWb2lkUmVxdWVzdEltcGw6OnJlcXVlc3RTdWNjZWVkZWQoKQogdm9pZCBS
VENWb2lkUmVxdWVzdEltcGw6OnJlcXVlc3RGYWlsZWQoY29uc3QgU3RyaW5nJiBlcnJvcikKIHsK
ICAgICBpZiAobV9lcnJvckNhbGxiYWNrLmdldCgpKQotICAgICAgICBtX2Vycm9yQ2FsbGJhY2st
PmhhbmRsZUV2ZW50KGVycm9yKTsKKyAgICAgICAgbV9lcnJvckNhbGxiYWNrLT5oYW5kbGVFdmVu
dChET01FcnJvcjo6Y3JlYXRlKGVycm9yKS5nZXQoKSk7CiAKICAgICBjbGVhcigpOwogfQpkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9tZWRpYXN0cmVhbS9SVENWb2lkUmVxdWVz
dEltcGwuaCBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvbWVkaWFzdHJlYW0vUlRDVm9pZFJlcXVl
c3RJbXBsLmgKaW5kZXggNjU3YWJmYzdjNmIzMjkyYTUzMzRjNDE5Y2YyYTQ3ZTI5MmY3MmNiNi4u
MjI3NTgzMzg2ZThiMDRiNzVhYzVlNDQ3ZTgyMmVlMmQzYTliZTVhMCAxMDA2NDQKLS0tIGEvU291
cmNlL1dlYkNvcmUvTW9kdWxlcy9tZWRpYXN0cmVhbS9SVENWb2lkUmVxdWVzdEltcGwuaAorKysg
Yi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL21lZGlhc3RyZWFtL1JUQ1ZvaWRSZXF1ZXN0SW1wbC5o
CkBAIC0xLDUgKzEsNiBAQAogLyoKICAqIENvcHlyaWdodCAoQykgMjAxMiBHb29nbGUgSW5jLiBB
bGwgcmlnaHRzIHJlc2VydmVkLgorICogQ29weXJpZ2h0IChDKSAyMDEzIE5va2lhIENvcnBvcmF0
aW9uIGFuZC9vciBpdHMgc3Vic2lkaWFyeSgtaWVzKS4KICAqCiAgKiBSZWRpc3RyaWJ1dGlvbiBh
bmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKICAqIG1v
ZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29u
ZGl0aW9ucwpAQCAtMzgsMTIgKzM5LDEyIEBACiAKIG5hbWVzcGFjZSBXZWJDb3JlIHsKIAotY2xh
c3MgUlRDRXJyb3JDYWxsYmFjazsKK2NsYXNzIFJUQ1BlZXJDb25uZWN0aW9uRXJyb3JDYWxsYmFj
azsKIGNsYXNzIFZvaWRDYWxsYmFjazsKIAogY2xhc3MgUlRDVm9pZFJlcXVlc3RJbXBsIDogcHVi
bGljIFJUQ1ZvaWRSZXF1ZXN0LCBwdWJsaWMgQWN0aXZlRE9NT2JqZWN0IHsKIHB1YmxpYzoKLSAg
ICBzdGF0aWMgUGFzc1JlZlB0cjxSVENWb2lkUmVxdWVzdEltcGw+IGNyZWF0ZShTY3JpcHRFeGVj
dXRpb25Db250ZXh0KiwgUGFzc1JlZlB0cjxWb2lkQ2FsbGJhY2s+LCBQYXNzUmVmUHRyPFJUQ0Vy
cm9yQ2FsbGJhY2s+KTsKKyAgICBzdGF0aWMgUGFzc1JlZlB0cjxSVENWb2lkUmVxdWVzdEltcGw+
IGNyZWF0ZShTY3JpcHRFeGVjdXRpb25Db250ZXh0KiwgUGFzc1JlZlB0cjxWb2lkQ2FsbGJhY2s+
LCBQYXNzUmVmUHRyPFJUQ1BlZXJDb25uZWN0aW9uRXJyb3JDYWxsYmFjaz4pOwogICAgIHZpcnR1
YWwgflJUQ1ZvaWRSZXF1ZXN0SW1wbCgpOwogCiAgICAgdmlydHVhbCB2b2lkIHJlcXVlc3RTdWNj
ZWVkZWQoKTsKQEAgLTUzLDEyICs1NCwxMiBAQCBwdWJsaWM6CiAgICAgdmlydHVhbCB2b2lkIHN0
b3AoKSBPVkVSUklERTsKIAogcHJpdmF0ZToKLSAgICBSVENWb2lkUmVxdWVzdEltcGwoU2NyaXB0
RXhlY3V0aW9uQ29udGV4dCosIFBhc3NSZWZQdHI8Vm9pZENhbGxiYWNrPiwgUGFzc1JlZlB0cjxS
VENFcnJvckNhbGxiYWNrPik7CisgICAgUlRDVm9pZFJlcXVlc3RJbXBsKFNjcmlwdEV4ZWN1dGlv
bkNvbnRleHQqLCBQYXNzUmVmUHRyPFZvaWRDYWxsYmFjaz4sIFBhc3NSZWZQdHI8UlRDUGVlckNv
bm5lY3Rpb25FcnJvckNhbGxiYWNrPik7CiAKICAgICB2b2lkIGNsZWFyKCk7CiAKICAgICBSZWZQ
dHI8Vm9pZENhbGxiYWNrPiBtX3N1Y2Nlc3NDYWxsYmFjazsKLSAgICBSZWZQdHI8UlRDRXJyb3JD
YWxsYmFjaz4gbV9lcnJvckNhbGxiYWNrOworICAgIFJlZlB0cjxSVENQZWVyQ29ubmVjdGlvbkVy
cm9yQ2FsbGJhY2s+IG1fZXJyb3JDYWxsYmFjazsKIH07CiAKIH0gLy8gbmFtZXNwYWNlIFdlYkNv
cmUKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL21lZGlhc3RyZWFtL1JUQ1Bl
ZXJDb25uZWN0aW9uSGFuZGxlci5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9tZWRpYXN0
cmVhbS9SVENQZWVyQ29ubmVjdGlvbkhhbmRsZXIuY3BwCmluZGV4IDUyYjg2ZTE3ZjI0NWQzNmI1
NmI1OWQ4ZDMzY2M5MzE3Y2EyNzlhYWQuLmY1YTM2YTNiZTQ3ODcyZTBlYzA4M2NmMmQwZmFkNzBh
OGIwMWVjYWUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL21lZGlhc3RyZWFt
L1JUQ1BlZXJDb25uZWN0aW9uSGFuZGxlci5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZv
cm0vbWVkaWFzdHJlYW0vUlRDUGVlckNvbm5lY3Rpb25IYW5kbGVyLmNwcApAQCAtMSw1ICsxLDYg
QEAKIC8qCiAgKiBDb3B5cmlnaHQgKEMpIDIwMTIgR29vZ2xlIEluYy4gQWxsIHJpZ2h0cyByZXNl
cnZlZC4KKyAqIENvcHlyaWdodCAoQykgMjAxMyBOb2tpYSBDb3Jwb3JhdGlvbiBhbmQvb3IgaXRz
IHN1YnNpZGlhcnkoLWllcykuCiAgKgogICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3Vy
Y2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CiAgKiBtb2RpZmljYXRpb24sIGFy
ZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMgYXJlCkBA
IC0zNCw2ICszNSw4IEBACiAKICNpbmNsdWRlICJSVENQZWVyQ29ubmVjdGlvbkhhbmRsZXIuaCIK
IAorI2luY2x1ZGUgPHd0Zi9OZXZlckRlc3Ryb3llZC5oPgorCiBuYW1lc3BhY2UgV2ViQ29yZSB7
CiBjbGFzcyBSVENQZWVyQ29ubmVjdGlvbkhhbmRsZXJDbGllbnQ7CiAKQEAgLTQ0LDYgKzQ3LDMw
IEBAIHN0YXRpYyBzdGQ6OnVuaXF1ZV9wdHI8UlRDUGVlckNvbm5lY3Rpb25IYW5kbGVyPiBjcmVh
dGVIYW5kbGVyKFJUQ1BlZXJDb25uZWN0aW9uCiAKIENyZWF0ZVBlZXJDb25uZWN0aW9uSGFuZGxl
ciBSVENQZWVyQ29ubmVjdGlvbkhhbmRsZXI6OmNyZWF0ZSA9IGNyZWF0ZUhhbmRsZXI7CiAKK2Nv
bnN0IEF0b21pY1N0cmluZyYgUlRDUGVlckNvbm5lY3Rpb25IYW5kbGVyOjppbmNvbXBhdGlibGVD
b25zdHJhaW50c0Vycm9yTmFtZSgpCit7CisgICAgc3RhdGljIE5ldmVyRGVzdHJveWVkPEF0b21p
Y1N0cmluZz4gaW5jb21wYXRpYmxlQ29uc3RyYWludHMoIkluY29tcGF0aWJsZUNvbnN0cmFpbnRz
RXJyb3IiLCBBdG9taWNTdHJpbmc6OkNvbnN0cnVjdEZyb21MaXRlcmFsKTsKKyAgICByZXR1cm4g
aW5jb21wYXRpYmxlQ29uc3RyYWludHM7Cit9CisKK2NvbnN0IEF0b21pY1N0cmluZyYgUlRDUGVl
ckNvbm5lY3Rpb25IYW5kbGVyOjppbnZhbGlkU2Vzc2lvbkRlc2NyaXB0aW9uRXJyb3JOYW1lKCkK
K3sKKyAgICBzdGF0aWMgTmV2ZXJEZXN0cm95ZWQ8QXRvbWljU3RyaW5nPiBpbnZhbGlkU2Vzc2lv
bkRlc2NyaXB0aW9uKCJJbnZhbGlkU2Vzc2lvbkRlc2NyaXB0aW9uRXJyb3IiLCBBdG9taWNTdHJp
bmc6OkNvbnN0cnVjdEZyb21MaXRlcmFsKTsKKyAgICByZXR1cm4gaW52YWxpZFNlc3Npb25EZXNj
cmlwdGlvbjsKK30KKworY29uc3QgQXRvbWljU3RyaW5nJiBSVENQZWVyQ29ubmVjdGlvbkhhbmRs
ZXI6OmluY29tcGF0aWJsZVNlc3Npb25EZXNjcmlwdGlvbkVycm9yTmFtZSgpCit7CisgICAgc3Rh
dGljIE5ldmVyRGVzdHJveWVkPEF0b21pY1N0cmluZz4gaW5jb21wYXRpYmxlU2Vzc2lvbkRlc2Ny
aXB0aW9uKCJJbmNvbXBhdGlibGVTZXNzaW9uRGVzY3JpcHRpb25FcnJvciIsIEF0b21pY1N0cmlu
Zzo6Q29uc3RydWN0RnJvbUxpdGVyYWwpOworICAgIHJldHVybiBpbmNvbXBhdGlibGVTZXNzaW9u
RGVzY3JpcHRpb247Cit9CisKK2NvbnN0IEF0b21pY1N0cmluZyYgUlRDUGVlckNvbm5lY3Rpb25I
YW5kbGVyOjppbnRlcm5hbEVycm9yTmFtZSgpCit7CisgICAgc3RhdGljIE5ldmVyRGVzdHJveWVk
PEF0b21pY1N0cmluZz4gaW50ZXJuYWwoImludGVybmFsRXJyb3IiLCBBdG9taWNTdHJpbmc6OkNv
bnN0cnVjdEZyb21MaXRlcmFsKTsKKyAgICByZXR1cm4gaW50ZXJuYWw7Cit9CisKIH0gLy8gbmFt
ZXNwYWNlIFdlYkNvcmUKIAogI2VuZGlmIC8vIEVOQUJMRShNRURJQV9TVFJFQU0pCmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9tZWRpYXN0cmVhbS9SVENQZWVyQ29ubmVjdGlv
bkhhbmRsZXIuaCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL21lZGlhc3RyZWFtL1JUQ1BlZXJD
b25uZWN0aW9uSGFuZGxlci5oCmluZGV4IDAxNjA1YThiMzczZjgzYjlmNGQ5NTllZDZlNzgzZWU5
YzJkOTg1ODAuLjk1NGFjYjlhMzI1ZGVhNWVjZGMyYjQ2MmRkMjAwNzc1NWFmNmZmNzYgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL21lZGlhc3RyZWFtL1JUQ1BlZXJDb25uZWN0
aW9uSGFuZGxlci5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL21lZGlhc3RyZWFtL1JU
Q1BlZXJDb25uZWN0aW9uSGFuZGxlci5oCkBAIC0xLDUgKzEsNiBAQAogLyoKICAqIENvcHlyaWdo
dCAoQykgMjAxMiBHb29nbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICogQ29weXJpZ2h0
IChDKSAyMDEzIE5va2lhIENvcnBvcmF0aW9uIGFuZC9vciBpdHMgc3Vic2lkaWFyeSgtaWVzKS4K
ICAqCiAgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1z
LCB3aXRoIG9yIHdpdGhvdXQKICAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRl
ZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucwpAQCAtNzQsNiArNzUsMTEgQEAgcHVibGlj
OgogICAgIHN0YXRpYyBDcmVhdGVQZWVyQ29ubmVjdGlvbkhhbmRsZXIgY3JlYXRlOwogICAgIHZp
cnR1YWwgflJUQ1BlZXJDb25uZWN0aW9uSGFuZGxlcigpIHsgfQogCisgICAgc3RhdGljIGNvbnN0
IEF0b21pY1N0cmluZyYgaW5jb21wYXRpYmxlQ29uc3RyYWludHNFcnJvck5hbWUoKTsKKyAgICBz
dGF0aWMgY29uc3QgQXRvbWljU3RyaW5nJiBpbnZhbGlkU2Vzc2lvbkRlc2NyaXB0aW9uRXJyb3JO
YW1lKCk7CisgICAgc3RhdGljIGNvbnN0IEF0b21pY1N0cmluZyYgaW5jb21wYXRpYmxlU2Vzc2lv
bkRlc2NyaXB0aW9uRXJyb3JOYW1lKCk7CisgICAgc3RhdGljIGNvbnN0IEF0b21pY1N0cmluZyYg
aW50ZXJuYWxFcnJvck5hbWUoKTsKKwogICAgIHZpcnR1YWwgYm9vbCBpbml0aWFsaXplKFBhc3NS
ZWZQdHI8UlRDQ29uZmlndXJhdGlvbj4sIFBhc3NSZWZQdHI8TWVkaWFDb25zdHJhaW50cz4pID0g
MDsKIAogICAgIHZpcnR1YWwgdm9pZCBjcmVhdGVPZmZlcihQYXNzUmVmUHRyPFJUQ1Nlc3Npb25E
ZXNjcmlwdGlvblJlcXVlc3Q+LCBQYXNzUmVmUHRyPE1lZGlhQ29uc3RyYWludHM+KSA9IDA7CmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9tb2NrL1JUQ05vdGlmaWVyc01vY2su
Y3BwIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbW9jay9SVENOb3RpZmllcnNNb2NrLmNwcApp
bmRleCAwMjNmNDYzNDlkZDc0ZWYyMGY1MzA1M2RjNmQ3ODE0MzhiOTVhMmJkLi4wYzgwNjU5NmM3
YmMwMTY2Njc4NTgyY2UzZDVmNDA3YzEwMDcyMjBiIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29y
ZS9wbGF0Zm9ybS9tb2NrL1JUQ05vdGlmaWVyc01vY2suY3BwCisrKyBiL1NvdXJjZS9XZWJDb3Jl
L3BsYXRmb3JtL21vY2svUlRDTm90aWZpZXJzTW9jay5jcHAKQEAgLTI5LDYgKzI5LDcgQEAKIAog
I2luY2x1ZGUgIlJUQ05vdGlmaWVyc01vY2suaCIKIAorI2luY2x1ZGUgIkRPTUVycm9yLmgiCiAj
aW5jbHVkZSAiUlRDRGF0YUNoYW5uZWxIYW5kbGVyTW9jay5oIgogI2luY2x1ZGUgIlJUQ1Nlc3Np
b25EZXNjcmlwdGlvbkRlc2NyaXB0b3IuaCIKICNpbmNsdWRlICJSVENTZXNzaW9uRGVzY3JpcHRp
b25SZXF1ZXN0LmgiCkBAIC0zNiw5ICszNywxMCBAQAogCiBuYW1lc3BhY2UgV2ViQ29yZSB7CiAK
LVNlc3Npb25SZXF1ZXN0Tm90aWZpZXI6OlNlc3Npb25SZXF1ZXN0Tm90aWZpZXIoUGFzc1JlZlB0
cjxSVENTZXNzaW9uRGVzY3JpcHRpb25SZXF1ZXN0PiByZXF1ZXN0LCBQYXNzUmVmUHRyPFJUQ1Nl
c3Npb25EZXNjcmlwdGlvbkRlc2NyaXB0b3I+IGRlc2NyaXB0b3IpCitTZXNzaW9uUmVxdWVzdE5v
dGlmaWVyOjpTZXNzaW9uUmVxdWVzdE5vdGlmaWVyKFBhc3NSZWZQdHI8UlRDU2Vzc2lvbkRlc2Ny
aXB0aW9uUmVxdWVzdD4gcmVxdWVzdCwgUGFzc1JlZlB0cjxSVENTZXNzaW9uRGVzY3JpcHRpb25E
ZXNjcmlwdG9yPiBkZXNjcmlwdG9yLCBjb25zdCBTdHJpbmcmIGVycm9yTmFtZSkKICAgICA6IG1f
cmVxdWVzdChyZXF1ZXN0KQogICAgICwgbV9kZXNjcmlwdG9yKGRlc2NyaXB0b3IpCisgICAgLCBt
X2Vycm9yTmFtZShlcnJvck5hbWUpCiB7CiB9CiAKQEAgLTQ3LDEyICs0OSwxMyBAQCB2b2lkIFNl
c3Npb25SZXF1ZXN0Tm90aWZpZXI6OmZpcmUoKQogICAgIGlmIChtX2Rlc2NyaXB0b3IpCiAgICAg
ICAgIG1fcmVxdWVzdC0+cmVxdWVzdFN1Y2NlZWRlZChtX2Rlc2NyaXB0b3IpOwogICAgIGVsc2UK
LSAgICAgICAgbV9yZXF1ZXN0LT5yZXF1ZXN0RmFpbGVkKCJURVNUX0VSUk9SIik7CisgICAgICAg
IG1fcmVxdWVzdC0+cmVxdWVzdEZhaWxlZChtX2Vycm9yTmFtZSk7CiB9CiAKLVZvaWRSZXF1ZXN0
Tm90aWZpZXI6OlZvaWRSZXF1ZXN0Tm90aWZpZXIoUGFzc1JlZlB0cjxSVENWb2lkUmVxdWVzdD4g
cmVxdWVzdCwgYm9vbCBzdWNjZXNzKQorVm9pZFJlcXVlc3ROb3RpZmllcjo6Vm9pZFJlcXVlc3RO
b3RpZmllcihQYXNzUmVmUHRyPFJUQ1ZvaWRSZXF1ZXN0PiByZXF1ZXN0LCBib29sIHN1Y2Nlc3Ms
IGNvbnN0IFN0cmluZyYgZXJyb3JOYW1lKQogICAgIDogbV9yZXF1ZXN0KHJlcXVlc3QpCiAgICAg
LCBtX3N1Y2Nlc3Moc3VjY2VzcykKKyAgICAsIG1fZXJyb3JOYW1lKGVycm9yTmFtZSkKIHsKIH0K
IApAQCAtNjEsNyArNjQsNyBAQCB2b2lkIFZvaWRSZXF1ZXN0Tm90aWZpZXI6OmZpcmUoKQogICAg
IGlmIChtX3N1Y2Nlc3MpCiAgICAgICAgIG1fcmVxdWVzdC0+cmVxdWVzdFN1Y2NlZWRlZCgpOwog
ICAgIGVsc2UKLSAgICAgICAgbV9yZXF1ZXN0LT5yZXF1ZXN0RmFpbGVkKCJURVNUX0VSUk9SIik7
CisgICAgICAgIG1fcmVxdWVzdC0+cmVxdWVzdEZhaWxlZChtX2Vycm9yTmFtZSk7CiB9CiAKIElj
ZUNvbm5lY3Rpb25Ob3RpZmllcjo6SWNlQ29ubmVjdGlvbk5vdGlmaWVyKFJUQ1BlZXJDb25uZWN0
aW9uSGFuZGxlckNsaWVudCogY2xpZW50LCBSVENQZWVyQ29ubmVjdGlvbkhhbmRsZXJDbGllbnQ6
OkljZUNvbm5lY3Rpb25TdGF0ZSBjb25uZWN0aW9uU3RhdGUsIFJUQ1BlZXJDb25uZWN0aW9uSGFu
ZGxlckNsaWVudDo6SWNlR2F0aGVyaW5nU3RhdGUgZ2F0aGVyaW5nU3RhdGUpCmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9tb2NrL1JUQ05vdGlmaWVyc01vY2suaCBiL1NvdXJj
ZS9XZWJDb3JlL3BsYXRmb3JtL21vY2svUlRDTm90aWZpZXJzTW9jay5oCmluZGV4IDk1OTdhZmMx
OWU2MzZlNDkxMWJkYWQ1N2JmZDA5NTU2YWFmNzg3ODcuLmVlMDVjMjRiZWRkMTFkYzg0MDg4ZjBh
MGIwY2ExZmMyZmI0YjZjMzggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL21v
Y2svUlRDTm90aWZpZXJzTW9jay5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL21vY2sv
UlRDTm90aWZpZXJzTW9jay5oCkBAIC0zMyw2ICszMyw3IEBACiAjaW5jbHVkZSAiVGltZXJFdmVu
dEJhc2VkTW9jay5oIgogI2luY2x1ZGUgPHd0Zi9QYXNzUmVmUHRyLmg+CiAjaW5jbHVkZSA8d3Rm
L1JlZlB0ci5oPgorI2luY2x1ZGUgPHd0Zi90ZXh0L1dURlN0cmluZy5oPgogCiBuYW1lc3BhY2Ug
V2ViQ29yZSB7CiAKQEAgLTQyLDI0ICs0MywyNiBAQCBjbGFzcyBSVENWb2lkUmVxdWVzdDsKIAog
Y2xhc3MgU2Vzc2lvblJlcXVlc3ROb3RpZmllciA6IHB1YmxpYyBNb2NrTm90aWZpZXIgewogcHVi
bGljOgotICAgIFNlc3Npb25SZXF1ZXN0Tm90aWZpZXIoUGFzc1JlZlB0cjxSVENTZXNzaW9uRGVz
Y3JpcHRpb25SZXF1ZXN0PiwgUGFzc1JlZlB0cjxSVENTZXNzaW9uRGVzY3JpcHRpb25EZXNjcmlw
dG9yPik7CisgICAgU2Vzc2lvblJlcXVlc3ROb3RpZmllcihQYXNzUmVmUHRyPFJUQ1Nlc3Npb25E
ZXNjcmlwdGlvblJlcXVlc3Q+LCBQYXNzUmVmUHRyPFJUQ1Nlc3Npb25EZXNjcmlwdGlvbkRlc2Ny
aXB0b3I+LCBjb25zdCBTdHJpbmcmID0gZW1wdHlTdHJpbmcoKSk7CiAKICAgICB2b2lkIGZpcmUo
KSBPVkVSUklERTsKIAogcHJpdmF0ZToKICAgICBSZWZQdHI8UlRDU2Vzc2lvbkRlc2NyaXB0aW9u
UmVxdWVzdD4gbV9yZXF1ZXN0OwogICAgIFJlZlB0cjxSVENTZXNzaW9uRGVzY3JpcHRpb25EZXNj
cmlwdG9yPiBtX2Rlc2NyaXB0b3I7CisgICAgU3RyaW5nIG1fZXJyb3JOYW1lOwogfTsKIAogY2xh
c3MgVm9pZFJlcXVlc3ROb3RpZmllciA6IHB1YmxpYyBNb2NrTm90aWZpZXIgewogcHVibGljOgot
ICAgIFZvaWRSZXF1ZXN0Tm90aWZpZXIoUGFzc1JlZlB0cjxSVENWb2lkUmVxdWVzdD4sIGJvb2wp
OworICAgIFZvaWRSZXF1ZXN0Tm90aWZpZXIoUGFzc1JlZlB0cjxSVENWb2lkUmVxdWVzdD4sIGJv
b2wsIGNvbnN0IFN0cmluZyYgPSBlbXB0eVN0cmluZygpKTsKIAogICAgIHZvaWQgZmlyZSgpIE9W
RVJSSURFOwogCiBwcml2YXRlOgogICAgIFJlZlB0cjxSVENWb2lkUmVxdWVzdD4gbV9yZXF1ZXN0
OwogICAgIGJvb2wgbV9zdWNjZXNzOworICAgIFN0cmluZyBtX2Vycm9yTmFtZTsKIH07CiAKIGNs
YXNzIEljZUNvbm5lY3Rpb25Ob3RpZmllciA6IHB1YmxpYyBNb2NrTm90aWZpZXIgewpkaWZmIC0t
Z2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbW9jay9SVENQZWVyQ29ubmVjdGlvbkhhbmRs
ZXJNb2NrLmNwcCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL21vY2svUlRDUGVlckNvbm5lY3Rp
b25IYW5kbGVyTW9jay5jcHAKaW5kZXggZDVhMmE3OGVkNDhjOGUwYzczYzYxZWM2MzdkNjgyNjli
ODI4MTQ2NC4uNmMyZDU1YjZmY2M2Mjk5ODY1ZjA4ZmFiZGI0MWVhMmEyYzE2NjljNCAxMDA2NDQK
LS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbW9jay9SVENQZWVyQ29ubmVjdGlvbkhhbmRs
ZXJNb2NrLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9tb2NrL1JUQ1BlZXJDb25u
ZWN0aW9uSGFuZGxlck1vY2suY3BwCkBAIC02Nyw3ICs2Nyw3IEBAIHZvaWQgUlRDUGVlckNvbm5l
Y3Rpb25IYW5kbGVyTW9jazo6Y3JlYXRlT2ZmZXIoUGFzc1JlZlB0cjxSVENTZXNzaW9uRGVzY3Jp
cHRpb25SCiAgICAgU3RyaW5nIHN1Y2NlZWRWYWx1ZTsKICAgICBSZWZQdHI8U2Vzc2lvblJlcXVl
c3ROb3RpZmllcj4gbm90aWZpZXI7CiAgICAgaWYgKGNvbnN0cmFpbnRzLT5nZXRNYW5kYXRvcnlD
b25zdHJhaW50VmFsdWUoInN1Y2NlZWQiLCBzdWNjZWVkVmFsdWUpICYmIHN1Y2NlZWRWYWx1ZSA9
PSAiZmFsc2UiKQotICAgICAgICBub3RpZmllciA9IGFkb3B0UmVmKG5ldyBTZXNzaW9uUmVxdWVz
dE5vdGlmaWVyKHJlcXVlc3QsIDApKTsKKyAgICAgICAgbm90aWZpZXIgPSBhZG9wdFJlZihuZXcg
U2Vzc2lvblJlcXVlc3ROb3RpZmllcihyZXF1ZXN0LCAwLCBSVENQZWVyQ29ubmVjdGlvbkhhbmRs
ZXI6OmluY29tcGF0aWJsZUNvbnN0cmFpbnRzRXJyb3JOYW1lKCkpKTsKICAgICBlbHNlCiAgICAg
ICAgIG5vdGlmaWVyID0gYWRvcHRSZWYobmV3IFNlc3Npb25SZXF1ZXN0Tm90aWZpZXIocmVxdWVz
dCwgUlRDU2Vzc2lvbkRlc2NyaXB0aW9uRGVzY3JpcHRvcjo6Y3JlYXRlKCJvZmZlciIsICJsb2Nh
bCIpKSk7CiAKQEAgLTgwLDcgKzgwLDcgQEAgdm9pZCBSVENQZWVyQ29ubmVjdGlvbkhhbmRsZXJN
b2NrOjpjcmVhdGVBbnN3ZXIoUGFzc1JlZlB0cjxSVENTZXNzaW9uRGVzY3JpcHRpb24KICAgICAv
LyBXZSBjYW4gb25seSBjcmVhdGUgYW4gYW5zd2VyIGlmIHdlIGhhdmUgYWxyZWFkeSBoYWQgYW4g
b2ZmZXIgYW5kIHRoZSByZW1vdGUgc2Vzc2lvbiBkZXNjcmlwdGlvbiBpcyBzdG9yZWQuCiAgICAg
U3RyaW5nIHN1Y2NlZWRWYWx1ZTsKICAgICBpZiAoY29uc3RyYWludHMtPmdldE1hbmRhdG9yeUNv
bnN0cmFpbnRWYWx1ZSgic3VjY2VlZCIsIHN1Y2NlZWRWYWx1ZSkgJiYgc3VjY2VlZFZhbHVlID09
ICJmYWxzZSIpCi0gICAgICAgIG5vdGlmaWVyID0gYWRvcHRSZWYobmV3IFNlc3Npb25SZXF1ZXN0
Tm90aWZpZXIocmVxdWVzdCwgMCkpOworICAgICAgICBub3RpZmllciA9IGFkb3B0UmVmKG5ldyBT
ZXNzaW9uUmVxdWVzdE5vdGlmaWVyKHJlcXVlc3QsIDAsIFJUQ1BlZXJDb25uZWN0aW9uSGFuZGxl
cjo6aW5jb21wYXRpYmxlQ29uc3RyYWludHNFcnJvck5hbWUoKSkpOwogICAgIGVsc2UKICAgICAg
ICAgbm90aWZpZXIgPSBhZG9wdFJlZihuZXcgU2Vzc2lvblJlcXVlc3ROb3RpZmllcihyZXF1ZXN0
LCBSVENTZXNzaW9uRGVzY3JpcHRpb25EZXNjcmlwdG9yOjpjcmVhdGUoImFuc3dlciIsICJsb2Nh
bCIpKSk7CiAKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL0NoYW5nZUxvZyBiL0xheW91dFRlc3Rz
L0NoYW5nZUxvZwppbmRleCA4MDA2ZTUzNzQ4OGZjYzlkMWVhMjBhYWYzMjAwMmNjZGFiZjJmYWU4
Li45YjRmMGI0ODcxZTNjMjEyZGUzMjc2NDYwNTUyZTliZmUzZTFlOTJmIDEwMDY0NAotLS0gYS9M
YXlvdXRUZXN0cy9DaGFuZ2VMb2cKKysrIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCkBAIC0xLDMg
KzEsMTggQEAKKzIwMTMtMTItMTEgIFRoaWFnbyBkZSBCYXJyb3MgTGFjZXJkYSAgPHRoaWFnby5s
YWNlcmRhQG9wZW5ib3NzYS5vcmc+CisKKyAgICAgICAgQWRkaW5nIFJUQ1BlZXJDb25uZWN0aW9u
RXJyb3JDYWxsYmFjaworICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5j
Z2k/aWQ9MTI1NTc0CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAg
ICAgICAgQWNjb3JkaW5nIHRvIHRoZSBzcGVjIHRoZXJlIHNob3VsZCBiZSBhIFJUQ1BlZXJDb25u
ZWN0aW9uRXJyb3JDYWxsYmFjayBmdW5jdGlvbiB0eXBlIGZvciBjcmVhdGVPZmZlci9BbnN3ZXIs
CisgICAgICAgIHNldExvY2FsL1JlbW90ZURlc2NyaXB0aW9uIGFuZCB1cGRhdGVJY2UgZnVuY3Rp
b24gY2FsbHMuIFRoaXMgY2FsbGJhY2sgbXVzdCBoYW5kbGUgYSBET01FcnJvciBvYmplY3QuCisK
KyAgICAgICAgKiBmYXN0L21lZGlhc3RyZWFtL1JUQ1BlZXJDb25uZWN0aW9uLWNyZWF0ZUFuc3dl
ci1leHBlY3RlZC50eHQ6CisgICAgICAgICogZmFzdC9tZWRpYXN0cmVhbS9SVENQZWVyQ29ubmVj
dGlvbi1jcmVhdGVBbnN3ZXIuaHRtbDoKKyAgICAgICAgKiBmYXN0L21lZGlhc3RyZWFtL1JUQ1Bl
ZXJDb25uZWN0aW9uLWNyZWF0ZU9mZmVyLWV4cGVjdGVkLnR4dDoKKyAgICAgICAgKiBmYXN0L21l
ZGlhc3RyZWFtL1JUQ1BlZXJDb25uZWN0aW9uLWNyZWF0ZU9mZmVyLmh0bWw6CisKIDIwMTMtMTIt
MTEgIFJvYiBCdWlzICA8cm9iLmJ1aXNAc2Ftc3VuZy5jb20+CiAKICAgICAgICAgW0NTUyBTaGFw
ZXNdIFRha2UgaW50byBhY2NvdW50IGZpbGwtcnVsZSBmb3IgcG9seWdvbiBpbnRlcnBvbGF0aW9u
CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L21lZGlhc3RyZWFtL1JUQ1BlZXJDb25uZWN0
aW9uLWNyZWF0ZUFuc3dlci1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9mYXN0L21lZGlhc3Ry
ZWFtL1JUQ1BlZXJDb25uZWN0aW9uLWNyZWF0ZUFuc3dlci1leHBlY3RlZC50eHQKaW5kZXggZThj
YTY0NjFlMGJmMTYwZWZjYTRiNDk5NzFjMDNkMzdkMDE3ZTcxMy4uOGUwMWM5MjllNTRmMTZmNjNh
MDBmMDI3NWJmMDU0ZDcxMGFjYmJiYSAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvZmFzdC9tZWRp
YXN0cmVhbS9SVENQZWVyQ29ubmVjdGlvbi1jcmVhdGVBbnN3ZXItZXhwZWN0ZWQudHh0CisrKyBi
L0xheW91dFRlc3RzL2Zhc3QvbWVkaWFzdHJlYW0vUlRDUGVlckNvbm5lY3Rpb24tY3JlYXRlQW5z
d2VyLWV4cGVjdGVkLnR4dApAQCAtOSw2ICs5LDcgQEAgUEFTUyBwYy5zZXRSZW1vdGVEZXNjcmlw
dGlvbihzZXNzaW9uRGVzY3JpcHRpb24sIHNldERlc2NyaXB0aW9uU3VjY2VlZGVkLCBzZXREZXMK
IFBBU1Mgc2V0UmVtb3RlRGVzY3JpcHRpb24gc3VjY2VlZGVkLgogUEFTUyBwYy5jcmVhdGVBbnN3
ZXIocmVxdWVzdFN1Y2NlZWRlZDIsIHJlcXVlc3RGYWlsZWQyLCB7bWFuZGF0b3J5Onsic3VjY2Vl
ZCI6ZmFsc2V9fSk7IGRpZCBub3QgdGhyb3cgZXhjZXB0aW9uLgogUEFTUyBjcmVhdGVBbnN3ZXIg
cmVxdWVzdCBmYWlsZWQuCitQQVNTIGVycm9yUmVhc29uLm5hbWUgaXMgIkluY29tcGF0aWJsZUNv
bnN0cmFpbnRzRXJyb3IiCiBQQVNTIHBjLmNyZWF0ZUFuc3dlcihyZXF1ZXN0U3VjY2VlZGVkMywg
cmVxdWVzdEZhaWxlZDMpOyBkaWQgbm90IHRocm93IGV4Y2VwdGlvbi4KIFBBU1MgY3JlYXRlQW5z
d2VyIHJlcXVlc3Qgc3VjY2VlZGVkLgogUEFTUyBzZXNzaW9uRGVzY3JpcHRpb24udHlwZSBpcyAi
YW5zd2VyIgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9tZWRpYXN0cmVhbS9SVENQZWVy
Q29ubmVjdGlvbi1jcmVhdGVBbnN3ZXIuaHRtbCBiL0xheW91dFRlc3RzL2Zhc3QvbWVkaWFzdHJl
YW0vUlRDUGVlckNvbm5lY3Rpb24tY3JlYXRlQW5zd2VyLmh0bWwKaW5kZXggZGIzNjEzYmQyMTYy
OTY5YTU3ODljYjZiZDRhZWYzODAyMzBhOGUwZi4uOTNmNDk1ZDUxMzExNTc5Y2VmZWRhMDZhOWY2
MTg1YzhlMDhhYTY3MCAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvZmFzdC9tZWRpYXN0cmVhbS9S
VENQZWVyQ29ubmVjdGlvbi1jcmVhdGVBbnN3ZXIuaHRtbAorKysgYi9MYXlvdXRUZXN0cy9mYXN0
L21lZGlhc3RyZWFtL1JUQ1BlZXJDb25uZWN0aW9uLWNyZWF0ZUFuc3dlci5odG1sCkBAIC00MCw2
ICs0MCw5IEBACiAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgdGVzdFBhc3NlZCgnY3Jl
YXRlQW5zd2VyIHJlcXVlc3QgZmFpbGVkLicpOwogCisgICAgICAgICAgICAgICAgZXJyb3JSZWFz
b24gPSByZWFzb247CisgICAgICAgICAgICAgICAgc2hvdWxkQmUoJ2Vycm9yUmVhc29uLm5hbWUn
LCAnIkluY29tcGF0aWJsZUNvbnN0cmFpbnRzRXJyb3IiJyk7CisKICAgICAgICAgICAgICAgICBz
aG91bGROb3RUaHJvdygncGMuY3JlYXRlQW5zd2VyKHJlcXVlc3RTdWNjZWVkZWQzLCByZXF1ZXN0
RmFpbGVkMyk7Jyk7CiAgICAgICAgICAgICB9CiAKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zh
c3QvbWVkaWFzdHJlYW0vUlRDUGVlckNvbm5lY3Rpb24tY3JlYXRlT2ZmZXItZXhwZWN0ZWQudHh0
IGIvTGF5b3V0VGVzdHMvZmFzdC9tZWRpYXN0cmVhbS9SVENQZWVyQ29ubmVjdGlvbi1jcmVhdGVP
ZmZlci1leHBlY3RlZC50eHQKaW5kZXggMTQ4NjczMDViOTE3YmFlMTM3ZGJkYWU1ODJkYjQ0YTNi
MmY0YjFkNy4uNTVhZWVkODlkNmI2YTg5NWU4NDUxNTJlNTJkZjc0ZGY3NzMyODhiZSAxMDA2NDQK
LS0tIGEvTGF5b3V0VGVzdHMvZmFzdC9tZWRpYXN0cmVhbS9SVENQZWVyQ29ubmVjdGlvbi1jcmVh
dGVPZmZlci1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC9tZWRpYXN0cmVhbS9S
VENQZWVyQ29ubmVjdGlvbi1jcmVhdGVPZmZlci1leHBlY3RlZC50eHQKQEAgLTgsNyArOCw3IEBA
IFBBU1MgY3JlYXRlT2ZmZXIgcmVxdWVzdCBzdWNjZWVkZWQuCiBQQVNTIHNlc3Npb25EZXNjcmlw
dGlvbi50eXBlIGlzICJvZmZlciIKIFBBU1MgcGMuY3JlYXRlT2ZmZXIocmVxdWVzdFN1Y2NlZWRl
ZDIsIHJlcXVlc3RGYWlsZWQyLCB7bWFuZGF0b3J5Onsic3VjY2VlZCI6ZmFsc2V9fSk7IGRpZCBu
b3QgdGhyb3cgZXhjZXB0aW9uLgogUEFTUyBjcmVhdGVPZmZlciByZXF1ZXN0IGZhaWxlZC4KLVBB
U1MgZXJyb3JSZWFzb24gaXMgIlRFU1RfRVJST1IiCitQQVNTIGVycm9yUmVhc29uLm5hbWUgaXMg
IkluY29tcGF0aWJsZUNvbnN0cmFpbnRzRXJyb3IiCiBQQVNTIHBjLmNyZWF0ZU9mZmVyKHJlcXVl
c3RTdWNjZWVkZWQzLCByZXF1ZXN0RmFpbGVkMSk7IGRpZCBub3QgdGhyb3cgZXhjZXB0aW9uLgog
UEFTUyBjcmVhdGVPZmZlciByZXF1ZXN0IHN1Y2NlZWRlZC4KIFBBU1Mgc2Vzc2lvbkRlc2NyaXB0
aW9uLnR5cGUgaXMgIm9mZmVyIgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9tZWRpYXN0
cmVhbS9SVENQZWVyQ29ubmVjdGlvbi1jcmVhdGVPZmZlci5odG1sIGIvTGF5b3V0VGVzdHMvZmFz
dC9tZWRpYXN0cmVhbS9SVENQZWVyQ29ubmVjdGlvbi1jcmVhdGVPZmZlci5odG1sCmluZGV4IDJk
NmU4ZTA2MWQ0ZGZkMWFmZTdiMWE1MTY4ZDA3NDkwMWRkYjI0NjkuLmQ2ZDc3M2VkMDhiYzU5YzVj
NjA1OGU5MGVhYjY1NTVlOWI5NThiY2IgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2Zhc3QvbWVk
aWFzdHJlYW0vUlRDUGVlckNvbm5lY3Rpb24tY3JlYXRlT2ZmZXIuaHRtbAorKysgYi9MYXlvdXRU
ZXN0cy9mYXN0L21lZGlhc3RyZWFtL1JUQ1BlZXJDb25uZWN0aW9uLWNyZWF0ZU9mZmVyLmh0bWwK
QEAgLTIzLDcgKzIzLDcgQEAKICAgICAgICAgICAgICAgICB0ZXN0UGFzc2VkKCdjcmVhdGVPZmZl
ciByZXF1ZXN0IGZhaWxlZC4nKTsKIAogICAgICAgICAgICAgICAgIGVycm9yUmVhc29uID0gcmVh
c29uOwotICAgICAgICAgICAgICAgIHNob3VsZEJlKCdlcnJvclJlYXNvbicsICciVEVTVF9FUlJP
UiInKTsKKyAgICAgICAgICAgICAgICBzaG91bGRCZSgnZXJyb3JSZWFzb24ubmFtZScsICciSW5j
b21wYXRpYmxlQ29uc3RyYWludHNFcnJvciInKTsKIAogICAgICAgICAgICAgICAgIHNob3VsZE5v
dFRocm93KCdwYy5jcmVhdGVPZmZlcihyZXF1ZXN0U3VjY2VlZGVkMywgcmVxdWVzdEZhaWxlZDEp
OycpOwogICAgICAgICAgICAgfQo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>218968</attachid>
            <date>2013-12-11 08:45:14 -0800</date>
            <delta_ts>2013-12-11 09:25:46 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-125574-20131211134512.patch</filename>
            <type>text/plain</type>
            <size>45353</size>
            <attacher name="Thiago de Barros Lacerda">thiago.lacerda</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTYwNDM2CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggOWJiZWVmZTlmMGM2ZjEw
YTMyZTM5OGZkNWRkMTA1MmM1MTZlMDc1NC4uYmU5MjBhZjc1ZTJhM2Q4NmIzMzVhZTY3NDA4MjRj
OTg0N2ViODA4MiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSw1ICsxLDU3IEBACiAyMDEzLTEyLTExICBUaGlh
Z28gZGUgQmFycm9zIExhY2VyZGEgIDx0aGlhZ28ubGFjZXJkYUBvcGVuYm9zc2Eub3JnPgogCisg
ICAgICAgIEFkZGluZyBSVENQZWVyQ29ubmVjdGlvbkVycm9yQ2FsbGJhY2sKKyAgICAgICAgaHR0
cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTEyNTU3NAorCisgICAgICAgIFJl
dmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIEFjY29yZGluZyB0byB0aGUgc3Bl
YyB0aGVyZSBzaG91bGQgYmUgYSBSVENQZWVyQ29ubmVjdGlvbkVycm9yQ2FsbGJhY2sgZnVuY3Rp
b24gdHlwZSBmb3IgY3JlYXRlT2ZmZXIvQW5zd2VyLAorICAgICAgICBzZXRMb2NhbC9SZW1vdGVE
ZXNjcmlwdGlvbiBhbmQgdXBkYXRlSWNlIGZ1bmN0aW9uIGNhbGxzLiBUaGlzIGNhbGxiYWNrIG11
c3QgaGFuZGxlIGEgRE9NRXJyb3Igb2JqZWN0LgorCisgICAgICAgIEV4aXN0aW5nIHRlc3RzIHdl
cmUgdXBkYXRlZC4KKworICAgICAgICAqIENNYWtlTGlzdHMudHh0OgorICAgICAgICAqIEdOVW1h
a2VmaWxlLmxpc3QuYW06CisgICAgICAgICogTW9kdWxlcy9tZWRpYXN0cmVhbS9SVENQZWVyQ29u
bmVjdGlvbi5jcHA6CisgICAgICAgIChXZWJDb3JlOjpSVENQZWVyQ29ubmVjdGlvbjo6Y3JlYXRl
T2ZmZXIpOgorICAgICAgICAoV2ViQ29yZTo6UlRDUGVlckNvbm5lY3Rpb246OmNyZWF0ZUFuc3dl
cik6CisgICAgICAgIChXZWJDb3JlOjpSVENQZWVyQ29ubmVjdGlvbjo6c2V0TG9jYWxEZXNjcmlw
dGlvbik6CisgICAgICAgIChXZWJDb3JlOjpSVENQZWVyQ29ubmVjdGlvbjo6c2V0UmVtb3RlRGVz
Y3JpcHRpb24pOgorICAgICAgICAoV2ViQ29yZTo6UlRDUGVlckNvbm5lY3Rpb246OmFkZEljZUNh
bmRpZGF0ZSk6CisgICAgICAgICogTW9kdWxlcy9tZWRpYXN0cmVhbS9SVENFcnJvckNhbGxiYWNr
Lmg6IFJlbW92ZWQuCisgICAgICAgICogTW9kdWxlcy9tZWRpYXN0cmVhbS9SVENFcnJvckNhbGxi
YWNrLmlkbDogUmVtb3ZlZC4KKyAgICAgICAgKiBNb2R1bGVzL21lZGlhc3RyZWFtL1JUQ1BlZXJD
b25uZWN0aW9uLmg6CisgICAgICAgICogTW9kdWxlcy9tZWRpYXN0cmVhbS9SVENQZWVyQ29ubmVj
dGlvbi5pZGw6CisgICAgICAgICogTW9kdWxlcy9tZWRpYXN0cmVhbS9SVENQZWVyQ29ubmVjdGlv
bkVycm9yQ2FsbGJhY2suaDogQWRkZWQuCisgICAgICAgICogTW9kdWxlcy9tZWRpYXN0cmVhbS9S
VENQZWVyQ29ubmVjdGlvbkVycm9yQ2FsbGJhY2suaWRsOiBBZGRlZC4KKyAgICAgICAgKiBNb2R1
bGVzL21lZGlhc3RyZWFtL1JUQ1Nlc3Npb25EZXNjcmlwdGlvblJlcXVlc3RJbXBsLmNwcDoKKyAg
ICAgICAgKFdlYkNvcmU6OlJUQ1Nlc3Npb25EZXNjcmlwdGlvblJlcXVlc3RJbXBsOjpjcmVhdGUp
OgorICAgICAgICAoV2ViQ29yZTo6UlRDU2Vzc2lvbkRlc2NyaXB0aW9uUmVxdWVzdEltcGw6OlJU
Q1Nlc3Npb25EZXNjcmlwdGlvblJlcXVlc3RJbXBsKToKKyAgICAgICAgKFdlYkNvcmU6OlJUQ1Nl
c3Npb25EZXNjcmlwdGlvblJlcXVlc3RJbXBsOjpyZXF1ZXN0RmFpbGVkKToKKyAgICAgICAgKiBN
b2R1bGVzL21lZGlhc3RyZWFtL1JUQ1Nlc3Npb25EZXNjcmlwdGlvblJlcXVlc3RJbXBsLmg6Cisg
ICAgICAgICogTW9kdWxlcy9tZWRpYXN0cmVhbS9SVENWb2lkUmVxdWVzdEltcGwuY3BwOgorICAg
ICAgICAoV2ViQ29yZTo6UlRDVm9pZFJlcXVlc3RJbXBsOjpjcmVhdGUpOgorICAgICAgICAoV2Vi
Q29yZTo6UlRDVm9pZFJlcXVlc3RJbXBsOjpSVENWb2lkUmVxdWVzdEltcGwpOgorICAgICAgICAo
V2ViQ29yZTo6UlRDVm9pZFJlcXVlc3RJbXBsOjpyZXF1ZXN0RmFpbGVkKToKKyAgICAgICAgKiBN
b2R1bGVzL21lZGlhc3RyZWFtL1JUQ1ZvaWRSZXF1ZXN0SW1wbC5oOgorICAgICAgICAqIHBsYXRm
b3JtL21lZGlhc3RyZWFtL1JUQ1BlZXJDb25uZWN0aW9uSGFuZGxlci5jcHA6CisgICAgICAgIChX
ZWJDb3JlOjpSVENQZWVyQ29ubmVjdGlvbkhhbmRsZXI6OmluY29tcGF0aWJsZUNvbnN0cmFpbnRz
RXJyb3JOYW1lKToKKyAgICAgICAgKFdlYkNvcmU6OlJUQ1BlZXJDb25uZWN0aW9uSGFuZGxlcjo6
aW52YWxpZFNlc3Npb25EZXNjcmlwdGlvbkVycm9yTmFtZSk6CisgICAgICAgIChXZWJDb3JlOjpS
VENQZWVyQ29ubmVjdGlvbkhhbmRsZXI6OmluY29tcGF0aWJsZVNlc3Npb25EZXNjcmlwdGlvbkVy
cm9yTmFtZSk6CisgICAgICAgIChXZWJDb3JlOjpSVENQZWVyQ29ubmVjdGlvbkhhbmRsZXI6Omlu
dGVybmFsRXJyb3JOYW1lKToKKyAgICAgICAgKiBwbGF0Zm9ybS9tZWRpYXN0cmVhbS9SVENQZWVy
Q29ubmVjdGlvbkhhbmRsZXIuaDoKKyAgICAgICAgKiBwbGF0Zm9ybS9tb2NrL1JUQ05vdGlmaWVy
c01vY2suY3BwOgorICAgICAgICAoV2ViQ29yZTo6U2Vzc2lvblJlcXVlc3ROb3RpZmllcjo6U2Vz
c2lvblJlcXVlc3ROb3RpZmllcik6CisgICAgICAgIChXZWJDb3JlOjpTZXNzaW9uUmVxdWVzdE5v
dGlmaWVyOjpmaXJlKToKKyAgICAgICAgKFdlYkNvcmU6OlZvaWRSZXF1ZXN0Tm90aWZpZXI6OlZv
aWRSZXF1ZXN0Tm90aWZpZXIpOgorICAgICAgICAoV2ViQ29yZTo6Vm9pZFJlcXVlc3ROb3RpZmll
cjo6ZmlyZSk6CisgICAgICAgICogcGxhdGZvcm0vbW9jay9SVENOb3RpZmllcnNNb2NrLmg6Cisg
ICAgICAgICogcGxhdGZvcm0vbW9jay9SVENQZWVyQ29ubmVjdGlvbkhhbmRsZXJNb2NrLmNwcDoK
KyAgICAgICAgKFdlYkNvcmU6OlJUQ1BlZXJDb25uZWN0aW9uSGFuZGxlck1vY2s6OmNyZWF0ZU9m
ZmVyKToKKyAgICAgICAgKFdlYkNvcmU6OlJUQ1BlZXJDb25uZWN0aW9uSGFuZGxlck1vY2s6OmNy
ZWF0ZUFuc3dlcik6CisKKzIwMTMtMTItMTEgIFRoaWFnbyBkZSBCYXJyb3MgTGFjZXJkYSAgPHRo
aWFnby5sYWNlcmRhQG9wZW5ib3NzYS5vcmc+CisKICAgICAgICAgSW1wcm92aW5nIGNyZWF0ZU9m
ZmVyIGFuZCBjcmVhdGVBbnN3ZXIgTGF5b3V0VGVzdHMKICAgICAgICAgaHR0cHM6Ly9idWdzLndl
YmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTEyNTU2OAogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
Q29yZS9DTWFrZUxpc3RzLnR4dCBiL1NvdXJjZS9XZWJDb3JlL0NNYWtlTGlzdHMudHh0CmluZGV4
IGNhN2M0ODNiYzk1OTE5MDNjNWEwNGVhMWMyMTNiOGI3ZjE4MDYwMWMuLjc4ODVmOWIyMTM3NmRl
ZGNjMDI0NTJjMmUxMDE2ZDRkODdlNzllMDQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL0NN
YWtlTGlzdHMudHh0CisrKyBiL1NvdXJjZS9XZWJDb3JlL0NNYWtlTGlzdHMudHh0CkBAIC0yMTAs
NyArMjEwLDcgQEAgc2V0KFdlYkNvcmVfSURMX0ZJTEVTCiAgICAgTW9kdWxlcy9tZWRpYXN0cmVh
bS9SVENEVE1GVG9uZUNoYW5nZUV2ZW50LmlkbAogICAgIE1vZHVsZXMvbWVkaWFzdHJlYW0vUlRD
RGF0YUNoYW5uZWwuaWRsCiAgICAgTW9kdWxlcy9tZWRpYXN0cmVhbS9SVENEYXRhQ2hhbm5lbEV2
ZW50LmlkbAotICAgIE1vZHVsZXMvbWVkaWFzdHJlYW0vUlRDRXJyb3JDYWxsYmFjay5pZGwKKyAg
ICBNb2R1bGVzL21lZGlhc3RyZWFtL1JUQ1BlZXJDb25uZWN0aW9uRXJyb3JDYWxsYmFjay5pZGwK
ICAgICBNb2R1bGVzL21lZGlhc3RyZWFtL1JUQ0ljZUNhbmRpZGF0ZS5pZGwKICAgICBNb2R1bGVz
L21lZGlhc3RyZWFtL1JUQ0ljZUNhbmRpZGF0ZUV2ZW50LmlkbAogICAgIE1vZHVsZXMvbWVkaWFz
dHJlYW0vUlRDUGVlckNvbm5lY3Rpb24uaWRsCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9H
TlVtYWtlZmlsZS5saXN0LmFtIGIvU291cmNlL1dlYkNvcmUvR05VbWFrZWZpbGUubGlzdC5hbQpp
bmRleCBjOWEyZGZhMmIwMDIyNThkM2Y4MGEyYjVmZTM2YmJhYjdkZmI3OGI1Li5mMGMxMjJkNjA5
MjkwZTljNDA1OGQwYzdlZjQyMTdkZGRmZDhmNjJhIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29y
ZS9HTlVtYWtlZmlsZS5saXN0LmFtCisrKyBiL1NvdXJjZS9XZWJDb3JlL0dOVW1ha2VmaWxlLmxp
c3QuYW0KQEAgLTYxMSw4ICs2MTEsOCBAQCB3ZWJjb3JlX2J1aWx0X3NvdXJjZXMgKz0gXAogCURl
cml2ZWRTb3VyY2VzL1dlYkNvcmUvSlNSVENEYXRhQ2hhbm5lbC5oIFwKIAlEZXJpdmVkU291cmNl
cy9XZWJDb3JlL0pTUlRDRGF0YUNoYW5uZWxFdmVudC5jcHAgXAogCURlcml2ZWRTb3VyY2VzL1dl
YkNvcmUvSlNSVENEYXRhQ2hhbm5lbEV2ZW50LmggXAotCURlcml2ZWRTb3VyY2VzL1dlYkNvcmUv
SlNSVENFcnJvckNhbGxiYWNrLmNwcCBcCi0JRGVyaXZlZFNvdXJjZXMvV2ViQ29yZS9KU1JUQ0Vy
cm9yQ2FsbGJhY2suaCBcCisJRGVyaXZlZFNvdXJjZXMvV2ViQ29yZS9KU1JUQ1BlZXJDb25uZWN0
aW9uRXJyb3JDYWxsYmFjay5jcHAgXAorCURlcml2ZWRTb3VyY2VzL1dlYkNvcmUvSlNSVENQZWVy
Q29ubmVjdGlvbkVycm9yQ2FsbGJhY2suaCBcCiAJRGVyaXZlZFNvdXJjZXMvV2ViQ29yZS9KU1JU
Q0ljZUNhbmRpZGF0ZS5jcHAgXAogCURlcml2ZWRTb3VyY2VzL1dlYkNvcmUvSlNSVENJY2VDYW5k
aWRhdGUuaCBcCiAJRGVyaXZlZFNvdXJjZXMvV2ViQ29yZS9KU1JUQ0ljZUNhbmRpZGF0ZUV2ZW50
LmNwcCBcCkBAIC0xMjI3LDcgKzEyMjcsNyBAQCBkb21fYmluZGluZ19pZGxzICs9IFwKIAkkKFdl
YkNvcmUpL01vZHVsZXMvbWVkaWFzdHJlYW0vUlRDRFRNRlRvbmVDaGFuZ2VFdmVudC5pZGwgXAog
CSQoV2ViQ29yZSkvTW9kdWxlcy9tZWRpYXN0cmVhbS9SVENEYXRhQ2hhbm5lbC5pZGwgXAogCSQo
V2ViQ29yZSkvTW9kdWxlcy9tZWRpYXN0cmVhbS9SVENEYXRhQ2hhbm5lbEV2ZW50LmlkbCBcCi0J
JChXZWJDb3JlKS9Nb2R1bGVzL21lZGlhc3RyZWFtL1JUQ0Vycm9yQ2FsbGJhY2suaWRsIFwKKwkk
KFdlYkNvcmUpL01vZHVsZXMvbWVkaWFzdHJlYW0vUlRDUGVlckNvbm5lY3Rpb25FcnJvckNhbGxi
YWNrLmlkbCBcCiAJJChXZWJDb3JlKS9Nb2R1bGVzL21lZGlhc3RyZWFtL1JUQ0ljZUNhbmRpZGF0
ZS5pZGwgXAogCSQoV2ViQ29yZSkvTW9kdWxlcy9tZWRpYXN0cmVhbS9SVENJY2VDYW5kaWRhdGVF
dmVudC5pZGwgXAogCSQoV2ViQ29yZSkvTW9kdWxlcy9tZWRpYXN0cmVhbS9SVENQZWVyQ29ubmVj
dGlvbi5pZGwgXApAQCAtMTkzNiw3ICsxOTM2LDcgQEAgd2ViY29yZV9tb2R1bGVzX3NvdXJjZXMg
Kz0gXAogCVNvdXJjZS9XZWJDb3JlL01vZHVsZXMvbWVkaWFzdHJlYW0vUlRDRGF0YUNoYW5uZWwu
aCBcCiAJU291cmNlL1dlYkNvcmUvTW9kdWxlcy9tZWRpYXN0cmVhbS9SVENEYXRhQ2hhbm5lbEV2
ZW50LmNwcCBcCiAJU291cmNlL1dlYkNvcmUvTW9kdWxlcy9tZWRpYXN0cmVhbS9SVENEYXRhQ2hh
bm5lbEV2ZW50LmggXAotCVNvdXJjZS9XZWJDb3JlL01vZHVsZXMvbWVkaWFzdHJlYW0vUlRDRXJy
b3JDYWxsYmFjay5oIFwKKwlTb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL21lZGlhc3RyZWFtL1JUQ1Bl
ZXJDb25uZWN0aW9uRXJyb3JDYWxsYmFjay5oIFwKIAlTb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL21l
ZGlhc3RyZWFtL1JUQ0ljZUNhbmRpZGF0ZS5jcHAgXAogCVNvdXJjZS9XZWJDb3JlL01vZHVsZXMv
bWVkaWFzdHJlYW0vUlRDSWNlQ2FuZGlkYXRlLmggXAogCVNvdXJjZS9XZWJDb3JlL01vZHVsZXMv
bWVkaWFzdHJlYW0vUlRDSWNlQ2FuZGlkYXRlRXZlbnQuY3BwIFwKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJDb3JlL01vZHVsZXMvbWVkaWFzdHJlYW0vUlRDRXJyb3JDYWxsYmFjay5oIGIvU291cmNl
L1dlYkNvcmUvTW9kdWxlcy9tZWRpYXN0cmVhbS9SVENFcnJvckNhbGxiYWNrLmgKZGVsZXRlZCBm
aWxlIG1vZGUgMTAwNjQ0CmluZGV4IDY0NGU1NmYwYmVhNzBkNTNlNDlmMjg5ZTRhZmY2MTU3ZGEz
ZWZiZGMuLjAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAKLS0tIGEvU291
cmNlL1dlYkNvcmUvTW9kdWxlcy9tZWRpYXN0cmVhbS9SVENFcnJvckNhbGxiYWNrLmgKKysrIC9k
ZXYvbnVsbApAQCAtMSw1MSArMCwwIEBACi0vKgotICogQ29weXJpZ2h0IChDKSAyMDEyIEdvb2ds
ZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi0gKgotICogUmVkaXN0cmlidXRpb24gYW5kIHVz
ZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0Ci0gKiBtb2RpZmlj
YXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlv
bnMKLSAqIGFyZSBtZXQ6Ci0gKgotICogMS4gUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2Rl
IG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKLSAqICAgIG5vdGljZSwgdGhpcyBsaXN0
IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KLSAqIDIuIFJlZGlz
dHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJp
Z2h0Ci0gKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93
aW5nIGRpc2NsYWltZXIKLSAqICAgIGluIHRoZSBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBt
YXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUKLSAqICAgIGRpc3RyaWJ1dGlvbi4KLSAqIDMuIE5l
aXRoZXIgdGhlIG5hbWUgb2YgR29vZ2xlIEluYy4gbm9yIHRoZSBuYW1lcyBvZiBpdHMgY29udHJp
YnV0b3JzCi0gKiAgICBtYXkgYmUgdXNlZCB0byBlbmRvcnNlIG9yIHByb21vdGUgcHJvZHVjdHMg
ZGVyaXZlZCBmcm9tIHRoaXMKLSAqICAgIHNvZnR3YXJlIHdpdGhvdXQgc3BlY2lmaWMgcHJpb3Ig
d3JpdHRlbiBwZXJtaXNzaW9uLgotICoKLSAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkg
VEhFIENPUFlSSUdIVCBIT0xERVJTIEFORCBDT05UUklCVVRPUlMKLSAqICJBUyBJUyIgQU5EIEFO
WSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UCi0gKiBM
SU1JVEVEIFRPLCBUSEUgSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQg
RklUTkVTUyBGT1IKLSAqIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiBJTiBO
TyBFVkVOVCBTSEFMTCBUSEUgQ09QWVJJR0hUCi0gKiBPV05FUiBPUiBDT05UUklCVVRPUlMgQkUg
TElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwKLSAqIFNQRUNJQUws
IEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QK
LSAqIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklD
RVM7IExPU1MgT0YgVVNFLAotICogREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJS
VVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZCi0gKiBUSEVPUlkgT0YgTElBQklMSVRZ
LCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUCi0gKiAoSU5D
TFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9G
IFRIRSBVU0UKLSAqIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9T
U0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCi0gKi8KLQotI2lmbmRlZiBSVENFcnJvckNhbGxiYWNr
X2gKLSNkZWZpbmUgUlRDRXJyb3JDYWxsYmFja19oCi0KLSNpZiBFTkFCTEUoTUVESUFfU1RSRUFN
KQotCi0jaW5jbHVkZSA8d3RmL1JlZkNvdW50ZWQuaD4KLSNpbmNsdWRlIDx3dGYvdGV4dC9XVEZT
dHJpbmcuaD4KLQotbmFtZXNwYWNlIFdlYkNvcmUgewotCi1jbGFzcyBSVENFcnJvckNhbGxiYWNr
IDogcHVibGljIFJlZkNvdW50ZWQ8UlRDRXJyb3JDYWxsYmFjaz4gewotcHVibGljOgotICAgIHZp
cnR1YWwgflJUQ0Vycm9yQ2FsbGJhY2soKSB7IH0KLSAgICB2aXJ0dWFsIGJvb2wgaGFuZGxlRXZl
bnQoY29uc3QgU3RyaW5nJiBlcnJvckluZm9ybWF0aW9uKSA9IDA7Ci19OwotCi19IC8vIG5hbWVz
cGFjZSBXZWJDb3JlCi0KLSNlbmRpZiAvLyBFTkFCTEUoTUVESUFfU1RSRUFNKQotCi0jZW5kaWYg
Ly8gUlRDRXJyb3JDYWxsYmFja19oCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVz
L21lZGlhc3RyZWFtL1JUQ0Vycm9yQ2FsbGJhY2suaWRsIGIvU291cmNlL1dlYkNvcmUvTW9kdWxl
cy9tZWRpYXN0cmVhbS9SVENFcnJvckNhbGxiYWNrLmlkbApkZWxldGVkIGZpbGUgbW9kZSAxMDA2
NDQKaW5kZXggYTJkNDY1M2Q3MDBjMWE0MDMwMDk1N2I2NTI0ZmI5MzA1NzE1MDAzYi4uMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9N
b2R1bGVzL21lZGlhc3RyZWFtL1JUQ0Vycm9yQ2FsbGJhY2suaWRsCisrKyAvZGV2L251bGwKQEAg
LTEsMzYgKzAsMCBAQAotLyoKLSAqIENvcHlyaWdodCAoQykgMjAxMiBHb29nbGUgSW5jLiBBbGwg
cmlnaHRzIHJlc2VydmVkLgotICoKLSAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNl
IGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAotICogbW9kaWZpY2F0aW9uLCBhcmUg
cGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCi0gKiBhcmUg
bWV0OgotICoKLSAqIDEuIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFp
biB0aGUgYWJvdmUgY29weXJpZ2h0Ci0gKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRp
b25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCi0gKiAyLiBSZWRpc3RyaWJ1dGlvbnMg
aW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAotICogICAg
bm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFp
bWVyCi0gKiAgICBpbiB0aGUgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHBy
b3ZpZGVkIHdpdGggdGhlCi0gKiAgICBkaXN0cmlidXRpb24uCi0gKiAzLiBOZWl0aGVyIHRoZSBu
YW1lIG9mIEdvb2dsZSBJbmMuIG5vciB0aGUgbmFtZXMgb2YgaXRzIGNvbnRyaWJ1dG9ycwotICog
ICAgbWF5IGJlIHVzZWQgdG8gZW5kb3JzZSBvciBwcm9tb3RlIHByb2R1Y3RzIGRlcml2ZWQgZnJv
bSB0aGlzCi0gKiAgICBzb2Z0d2FyZSB3aXRob3V0IHNwZWNpZmljIHByaW9yIHdyaXR0ZW4gcGVy
bWlzc2lvbi4KLSAqCi0gKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIFRIRSBDT1BZUklH
SFQgSE9MREVSUyBBTkQgQ09OVFJJQlVUT1JTCi0gKiAiQVMgSVMiIEFORCBBTlkgRVhQUkVTUyBP
UiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVAotICogTElNSVRFRCBUTywg
VEhFIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9S
Ci0gKiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hB
TEwgVEhFIENPUFlSSUdIVAotICogT1dORVIgT1IgQ09OVFJJQlVUT1JTIEJFIExJQUJMRSBGT1Ig
QU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsCi0gKiBTUEVDSUFMLCBFWEVNUExBUlks
IE9SIENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UCi0gKiBMSU1JVEVE
IFRPLCBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9G
IFVTRSwKLSAqIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9X
RVZFUiBDQVVTRUQgQU5EIE9OIEFOWQotICogVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJ
TiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVAotICogKElOQ0xVRElORyBORUdM
SUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFCi0g
KiBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9G
IFNVQ0ggREFNQUdFLgotICovCi0KLVsKLSAgICBDb25kaXRpb25hbD1NRURJQV9TVFJFQU0sCi1d
IGNhbGxiYWNrIGludGVyZmFjZSBSVENFcnJvckNhbGxiYWNrIHsKLSAgICBib29sZWFuIGhhbmRs
ZUV2ZW50KERPTVN0cmluZyBlcnJvckluZm9ybWF0aW9uKTsKLX07Ci0KZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJDb3JlL01vZHVsZXMvbWVkaWFzdHJlYW0vUlRDUGVlckNvbm5lY3Rpb24uY3BwIGIv
U291cmNlL1dlYkNvcmUvTW9kdWxlcy9tZWRpYXN0cmVhbS9SVENQZWVyQ29ubmVjdGlvbi5jcHAK
aW5kZXggODM1YWUyMzAwZTdmMmM1Yjc1MmE3ZmI3NjZkZDIxMWViNmU2ODM3Mi4uN2UzNGUxMzgw
MzQ1NGI5ODY3MmE5ZmMzY2IzNTc3ZGE4Zjg0NTYwZiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNv
cmUvTW9kdWxlcy9tZWRpYXN0cmVhbS9SVENQZWVyQ29ubmVjdGlvbi5jcHAKKysrIGIvU291cmNl
L1dlYkNvcmUvTW9kdWxlcy9tZWRpYXN0cmVhbS9SVENQZWVyQ29ubmVjdGlvbi5jcHAKQEAgLTQ5
LDEwICs0OSwxMCBAQAogI2luY2x1ZGUgIlJUQ0RhdGFDaGFubmVsLmgiCiAjaW5jbHVkZSAiUlRD
RGF0YUNoYW5uZWxFdmVudC5oIgogI2luY2x1ZGUgIlJUQ0RhdGFDaGFubmVsSGFuZGxlci5oIgot
I2luY2x1ZGUgIlJUQ0Vycm9yQ2FsbGJhY2suaCIKICNpbmNsdWRlICJSVENJY2VDYW5kaWRhdGUu
aCIKICNpbmNsdWRlICJSVENJY2VDYW5kaWRhdGVEZXNjcmlwdG9yLmgiCiAjaW5jbHVkZSAiUlRD
SWNlQ2FuZGlkYXRlRXZlbnQuaCIKKyNpbmNsdWRlICJSVENQZWVyQ29ubmVjdGlvbkVycm9yQ2Fs
bGJhY2suaCIKICNpbmNsdWRlICJSVENTZXNzaW9uRGVzY3JpcHRpb24uaCIKICNpbmNsdWRlICJS
VENTZXNzaW9uRGVzY3JpcHRpb25DYWxsYmFjay5oIgogI2luY2x1ZGUgIlJUQ1Nlc3Npb25EZXNj
cmlwdGlvbkRlc2NyaXB0b3IuaCIKQEAgLTE3MCw3ICsxNzAsNyBAQCBSVENQZWVyQ29ubmVjdGlv
bjo6flJUQ1BlZXJDb25uZWN0aW9uKCkKICAgICAgICAgKCpzdHJlYW0pLT5yZW1vdmVPYnNlcnZl
cih0aGlzKTsKIH0KIAotdm9pZCBSVENQZWVyQ29ubmVjdGlvbjo6Y3JlYXRlT2ZmZXIoUGFzc1Jl
ZlB0cjxSVENTZXNzaW9uRGVzY3JpcHRpb25DYWxsYmFjaz4gc3VjY2Vzc0NhbGxiYWNrLCBQYXNz
UmVmUHRyPFJUQ0Vycm9yQ2FsbGJhY2s+IGVycm9yQ2FsbGJhY2ssIGNvbnN0IERpY3Rpb25hcnkm
IG1lZGlhQ29uc3RyYWludHMsIEV4Y2VwdGlvbkNvZGUmIGVjKQordm9pZCBSVENQZWVyQ29ubmVj
dGlvbjo6Y3JlYXRlT2ZmZXIoUGFzc1JlZlB0cjxSVENTZXNzaW9uRGVzY3JpcHRpb25DYWxsYmFj
az4gc3VjY2Vzc0NhbGxiYWNrLCBQYXNzUmVmUHRyPFJUQ1BlZXJDb25uZWN0aW9uRXJyb3JDYWxs
YmFjaz4gZXJyb3JDYWxsYmFjaywgY29uc3QgRGljdGlvbmFyeSYgbWVkaWFDb25zdHJhaW50cywg
RXhjZXB0aW9uQ29kZSYgZWMpCiB7CiAgICAgaWYgKG1fc2lnbmFsaW5nU3RhdGUgPT0gU2lnbmFs
aW5nU3RhdGVDbG9zZWQpIHsKICAgICAgICAgZWMgPSBJTlZBTElEX1NUQVRFX0VSUjsKQEAgLTE5
MCw3ICsxOTAsNyBAQCB2b2lkIFJUQ1BlZXJDb25uZWN0aW9uOjpjcmVhdGVPZmZlcihQYXNzUmVm
UHRyPFJUQ1Nlc3Npb25EZXNjcmlwdGlvbkNhbGxiYWNrPiBzdQogICAgIG1fcGVlckhhbmRsZXIt
PmNyZWF0ZU9mZmVyKHJlcXVlc3QucmVsZWFzZSgpLCBjb25zdHJhaW50cyk7CiB9CiAKLXZvaWQg
UlRDUGVlckNvbm5lY3Rpb246OmNyZWF0ZUFuc3dlcihQYXNzUmVmUHRyPFJUQ1Nlc3Npb25EZXNj
cmlwdGlvbkNhbGxiYWNrPiBzdWNjZXNzQ2FsbGJhY2ssIFBhc3NSZWZQdHI8UlRDRXJyb3JDYWxs
YmFjaz4gZXJyb3JDYWxsYmFjaywgY29uc3QgRGljdGlvbmFyeSYgbWVkaWFDb25zdHJhaW50cywg
RXhjZXB0aW9uQ29kZSYgZWMpCit2b2lkIFJUQ1BlZXJDb25uZWN0aW9uOjpjcmVhdGVBbnN3ZXIo
UGFzc1JlZlB0cjxSVENTZXNzaW9uRGVzY3JpcHRpb25DYWxsYmFjaz4gc3VjY2Vzc0NhbGxiYWNr
LCBQYXNzUmVmUHRyPFJUQ1BlZXJDb25uZWN0aW9uRXJyb3JDYWxsYmFjaz4gZXJyb3JDYWxsYmFj
aywgY29uc3QgRGljdGlvbmFyeSYgbWVkaWFDb25zdHJhaW50cywgRXhjZXB0aW9uQ29kZSYgZWMp
CiB7CiAgICAgaWYgKG1fc2lnbmFsaW5nU3RhdGUgPT0gU2lnbmFsaW5nU3RhdGVDbG9zZWQpIHsK
ICAgICAgICAgZWMgPSBJTlZBTElEX1NUQVRFX0VSUjsKQEAgLTIxMCw3ICsyMTAsNyBAQCB2b2lk
IFJUQ1BlZXJDb25uZWN0aW9uOjpjcmVhdGVBbnN3ZXIoUGFzc1JlZlB0cjxSVENTZXNzaW9uRGVz
Y3JpcHRpb25DYWxsYmFjaz4gcwogICAgIG1fcGVlckhhbmRsZXItPmNyZWF0ZUFuc3dlcihyZXF1
ZXN0LnJlbGVhc2UoKSwgY29uc3RyYWludHMucmVsZWFzZSgpKTsKIH0KIAotdm9pZCBSVENQZWVy
Q29ubmVjdGlvbjo6c2V0TG9jYWxEZXNjcmlwdGlvbihQYXNzUmVmUHRyPFJUQ1Nlc3Npb25EZXNj
cmlwdGlvbj4gcHJwU2Vzc2lvbkRlc2NyaXB0aW9uLCBQYXNzUmVmUHRyPFZvaWRDYWxsYmFjaz4g
c3VjY2Vzc0NhbGxiYWNrLCBQYXNzUmVmUHRyPFJUQ0Vycm9yQ2FsbGJhY2s+IGVycm9yQ2FsbGJh
Y2ssIEV4Y2VwdGlvbkNvZGUmIGVjKQordm9pZCBSVENQZWVyQ29ubmVjdGlvbjo6c2V0TG9jYWxE
ZXNjcmlwdGlvbihQYXNzUmVmUHRyPFJUQ1Nlc3Npb25EZXNjcmlwdGlvbj4gcHJwU2Vzc2lvbkRl
c2NyaXB0aW9uLCBQYXNzUmVmUHRyPFZvaWRDYWxsYmFjaz4gc3VjY2Vzc0NhbGxiYWNrLCBQYXNz
UmVmUHRyPFJUQ1BlZXJDb25uZWN0aW9uRXJyb3JDYWxsYmFjaz4gZXJyb3JDYWxsYmFjaywgRXhj
ZXB0aW9uQ29kZSYgZWMpCiB7CiAgICAgaWYgKG1fc2lnbmFsaW5nU3RhdGUgPT0gU2lnbmFsaW5n
U3RhdGVDbG9zZWQpIHsKICAgICAgICAgZWMgPSBJTlZBTElEX1NUQVRFX0VSUjsKQEAgLTIzOSw3
ICsyMzksNyBAQCBQYXNzUmVmUHRyPFJUQ1Nlc3Npb25EZXNjcmlwdGlvbj4gUlRDUGVlckNvbm5l
Y3Rpb246OmxvY2FsRGVzY3JpcHRpb24oRXhjZXB0aW9uQwogICAgIHJldHVybiBzZXNzaW9uRGVz
Y3JpcHRpb24ucmVsZWFzZSgpOwogfQogCi12b2lkIFJUQ1BlZXJDb25uZWN0aW9uOjpzZXRSZW1v
dGVEZXNjcmlwdGlvbihQYXNzUmVmUHRyPFJUQ1Nlc3Npb25EZXNjcmlwdGlvbj4gcHJwU2Vzc2lv
bkRlc2NyaXB0aW9uLCBQYXNzUmVmUHRyPFZvaWRDYWxsYmFjaz4gc3VjY2Vzc0NhbGxiYWNrLCBQ
YXNzUmVmUHRyPFJUQ0Vycm9yQ2FsbGJhY2s+IGVycm9yQ2FsbGJhY2ssIEV4Y2VwdGlvbkNvZGUm
IGVjKQordm9pZCBSVENQZWVyQ29ubmVjdGlvbjo6c2V0UmVtb3RlRGVzY3JpcHRpb24oUGFzc1Jl
ZlB0cjxSVENTZXNzaW9uRGVzY3JpcHRpb24+IHBycFNlc3Npb25EZXNjcmlwdGlvbiwgUGFzc1Jl
ZlB0cjxWb2lkQ2FsbGJhY2s+IHN1Y2Nlc3NDYWxsYmFjaywgUGFzc1JlZlB0cjxSVENQZWVyQ29u
bmVjdGlvbkVycm9yQ2FsbGJhY2s+IGVycm9yQ2FsbGJhY2ssIEV4Y2VwdGlvbkNvZGUmIGVjKQog
ewogICAgIGlmIChtX3NpZ25hbGluZ1N0YXRlID09IFNpZ25hbGluZ1N0YXRlQ2xvc2VkKSB7CiAg
ICAgICAgIGVjID0gSU5WQUxJRF9TVEFURV9FUlI7CkBAIC0yODgsNyArMjg4LDcgQEAgdm9pZCBS
VENQZWVyQ29ubmVjdGlvbjo6dXBkYXRlSWNlKGNvbnN0IERpY3Rpb25hcnkmIHJ0Y0NvbmZpZ3Vy
YXRpb24sIGNvbnN0IERpY3QKICAgICAgICAgZWMgPSBTWU5UQVhfRVJSOwogfQogCi12b2lkIFJU
Q1BlZXJDb25uZWN0aW9uOjphZGRJY2VDYW5kaWRhdGUoUlRDSWNlQ2FuZGlkYXRlKiBpY2VDYW5k
aWRhdGUsIFBhc3NSZWZQdHI8Vm9pZENhbGxiYWNrPiBzdWNjZXNzQ2FsbGJhY2ssIFBhc3NSZWZQ
dHI8UlRDRXJyb3JDYWxsYmFjaz4gZXJyb3JDYWxsYmFjaywgRXhjZXB0aW9uQ29kZSYgZWMpCit2
b2lkIFJUQ1BlZXJDb25uZWN0aW9uOjphZGRJY2VDYW5kaWRhdGUoUlRDSWNlQ2FuZGlkYXRlKiBp
Y2VDYW5kaWRhdGUsIFBhc3NSZWZQdHI8Vm9pZENhbGxiYWNrPiBzdWNjZXNzQ2FsbGJhY2ssIFBh
c3NSZWZQdHI8UlRDUGVlckNvbm5lY3Rpb25FcnJvckNhbGxiYWNrPiBlcnJvckNhbGxiYWNrLCBF
eGNlcHRpb25Db2RlJiBlYykKIHsKICAgICBpZiAobV9zaWduYWxpbmdTdGF0ZSA9PSBTaWduYWxp
bmdTdGF0ZUNsb3NlZCkgewogICAgICAgICBlYyA9IElOVkFMSURfU1RBVEVfRVJSOwpkaWZmIC0t
Z2l0IGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9tZWRpYXN0cmVhbS9SVENQZWVyQ29ubmVjdGlv
bi5oIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9tZWRpYXN0cmVhbS9SVENQZWVyQ29ubmVjdGlv
bi5oCmluZGV4IDQzYjk2YzM2ZTFjZjc5MmMwMDRjZTY5NjBkYTZmNjAyODgwYTRlOGYuLjBlOGRj
M2M2MDM1MzAxNzU5YzkwODdmZjNiMDg5YmIyZTA0ZDNjZTggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJDb3JlL01vZHVsZXMvbWVkaWFzdHJlYW0vUlRDUGVlckNvbm5lY3Rpb24uaAorKysgYi9Tb3Vy
Y2UvV2ViQ29yZS9Nb2R1bGVzL21lZGlhc3RyZWFtL1JUQ1BlZXJDb25uZWN0aW9uLmgKQEAgLTUz
LDcgKzUzLDcgQEAgY2xhc3MgTWVkaWFTdHJlYW1UcmFjazsKIGNsYXNzIFJUQ0NvbmZpZ3VyYXRp
b247CiBjbGFzcyBSVENEVE1GU2VuZGVyOwogY2xhc3MgUlRDRGF0YUNoYW5uZWw7Ci1jbGFzcyBS
VENFcnJvckNhbGxiYWNrOworY2xhc3MgUlRDUGVlckNvbm5lY3Rpb25FcnJvckNhbGxiYWNrOwog
Y2xhc3MgUlRDU2Vzc2lvbkRlc2NyaXB0aW9uOwogY2xhc3MgUlRDU2Vzc2lvbkRlc2NyaXB0aW9u
Q2FsbGJhY2s7CiBjbGFzcyBSVENTdGF0c0NhbGxiYWNrOwpAQCAtNjQsMjEgKzY0LDIxIEBAIHB1
YmxpYzoKICAgICBzdGF0aWMgUGFzc1JlZlB0cjxSVENQZWVyQ29ubmVjdGlvbj4gY3JlYXRlKFNj
cmlwdEV4ZWN1dGlvbkNvbnRleHQmLCBjb25zdCBEaWN0aW9uYXJ5JiBydGNDb25maWd1cmF0aW9u
LCBjb25zdCBEaWN0aW9uYXJ5JiBtZWRpYUNvbnN0cmFpbnRzLCBFeGNlcHRpb25Db2RlJik7CiAg
ICAgflJUQ1BlZXJDb25uZWN0aW9uKCk7CiAKLSAgICB2b2lkIGNyZWF0ZU9mZmVyKFBhc3NSZWZQ
dHI8UlRDU2Vzc2lvbkRlc2NyaXB0aW9uQ2FsbGJhY2s+LCBQYXNzUmVmUHRyPFJUQ0Vycm9yQ2Fs
bGJhY2s+LCBjb25zdCBEaWN0aW9uYXJ5JiBtZWRpYUNvbnN0cmFpbnRzLCBFeGNlcHRpb25Db2Rl
Jik7CisgICAgdm9pZCBjcmVhdGVPZmZlcihQYXNzUmVmUHRyPFJUQ1Nlc3Npb25EZXNjcmlwdGlv
bkNhbGxiYWNrPiwgUGFzc1JlZlB0cjxSVENQZWVyQ29ubmVjdGlvbkVycm9yQ2FsbGJhY2s+LCBj
b25zdCBEaWN0aW9uYXJ5JiBtZWRpYUNvbnN0cmFpbnRzLCBFeGNlcHRpb25Db2RlJik7CiAKLSAg
ICB2b2lkIGNyZWF0ZUFuc3dlcihQYXNzUmVmUHRyPFJUQ1Nlc3Npb25EZXNjcmlwdGlvbkNhbGxi
YWNrPiwgUGFzc1JlZlB0cjxSVENFcnJvckNhbGxiYWNrPiwgY29uc3QgRGljdGlvbmFyeSYgbWVk
aWFDb25zdHJhaW50cywgRXhjZXB0aW9uQ29kZSYpOworICAgIHZvaWQgY3JlYXRlQW5zd2VyKFBh
c3NSZWZQdHI8UlRDU2Vzc2lvbkRlc2NyaXB0aW9uQ2FsbGJhY2s+LCBQYXNzUmVmUHRyPFJUQ1Bl
ZXJDb25uZWN0aW9uRXJyb3JDYWxsYmFjaz4sIGNvbnN0IERpY3Rpb25hcnkmIG1lZGlhQ29uc3Ry
YWludHMsIEV4Y2VwdGlvbkNvZGUmKTsKIAotICAgIHZvaWQgc2V0TG9jYWxEZXNjcmlwdGlvbihQ
YXNzUmVmUHRyPFJUQ1Nlc3Npb25EZXNjcmlwdGlvbj4sIFBhc3NSZWZQdHI8Vm9pZENhbGxiYWNr
PiwgUGFzc1JlZlB0cjxSVENFcnJvckNhbGxiYWNrPiwgRXhjZXB0aW9uQ29kZSYpOworICAgIHZv
aWQgc2V0TG9jYWxEZXNjcmlwdGlvbihQYXNzUmVmUHRyPFJUQ1Nlc3Npb25EZXNjcmlwdGlvbj4s
IFBhc3NSZWZQdHI8Vm9pZENhbGxiYWNrPiwgUGFzc1JlZlB0cjxSVENQZWVyQ29ubmVjdGlvbkVy
cm9yQ2FsbGJhY2s+LCBFeGNlcHRpb25Db2RlJik7CiAgICAgUGFzc1JlZlB0cjxSVENTZXNzaW9u
RGVzY3JpcHRpb24+IGxvY2FsRGVzY3JpcHRpb24oRXhjZXB0aW9uQ29kZSYpOwogCi0gICAgdm9p
ZCBzZXRSZW1vdGVEZXNjcmlwdGlvbihQYXNzUmVmUHRyPFJUQ1Nlc3Npb25EZXNjcmlwdGlvbj4s
IFBhc3NSZWZQdHI8Vm9pZENhbGxiYWNrPiwgUGFzc1JlZlB0cjxSVENFcnJvckNhbGxiYWNrPiwg
RXhjZXB0aW9uQ29kZSYpOworICAgIHZvaWQgc2V0UmVtb3RlRGVzY3JpcHRpb24oUGFzc1JlZlB0
cjxSVENTZXNzaW9uRGVzY3JpcHRpb24+LCBQYXNzUmVmUHRyPFZvaWRDYWxsYmFjaz4sIFBhc3NS
ZWZQdHI8UlRDUGVlckNvbm5lY3Rpb25FcnJvckNhbGxiYWNrPiwgRXhjZXB0aW9uQ29kZSYpOwog
ICAgIFBhc3NSZWZQdHI8UlRDU2Vzc2lvbkRlc2NyaXB0aW9uPiByZW1vdGVEZXNjcmlwdGlvbihF
eGNlcHRpb25Db2RlJik7CiAKICAgICBTdHJpbmcgc2lnbmFsaW5nU3RhdGUoKSBjb25zdDsKIAog
ICAgIHZvaWQgdXBkYXRlSWNlKGNvbnN0IERpY3Rpb25hcnkmIHJ0Y0NvbmZpZ3VyYXRpb24sIGNv
bnN0IERpY3Rpb25hcnkmIG1lZGlhQ29uc3RyYWludHMsIEV4Y2VwdGlvbkNvZGUmKTsKIAotICAg
IHZvaWQgYWRkSWNlQ2FuZGlkYXRlKFJUQ0ljZUNhbmRpZGF0ZSosIFBhc3NSZWZQdHI8Vm9pZENh
bGxiYWNrPiwgUGFzc1JlZlB0cjxSVENFcnJvckNhbGxiYWNrPiwgRXhjZXB0aW9uQ29kZSYpOwor
ICAgIHZvaWQgYWRkSWNlQ2FuZGlkYXRlKFJUQ0ljZUNhbmRpZGF0ZSosIFBhc3NSZWZQdHI8Vm9p
ZENhbGxiYWNrPiwgUGFzc1JlZlB0cjxSVENQZWVyQ29ubmVjdGlvbkVycm9yQ2FsbGJhY2s+LCBF
eGNlcHRpb25Db2RlJik7CiAKICAgICBTdHJpbmcgaWNlR2F0aGVyaW5nU3RhdGUoKSBjb25zdDsK
IApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9tZWRpYXN0cmVhbS9SVENQZWVy
Q29ubmVjdGlvbi5pZGwgYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL21lZGlhc3RyZWFtL1JUQ1Bl
ZXJDb25uZWN0aW9uLmlkbAppbmRleCA2ZjI2MzEzZjVkNTQ5ZjA2YTVhNzQzYzRlNjZlOTJkOTI5
YTJkNTRiLi4xZDYwMTdmNjVmNmRlNzcyZDViNzI4NTRhZTQ0MGY0ZTdkNjAxOTEwIDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL21lZGlhc3RyZWFtL1JUQ1BlZXJDb25uZWN0aW9u
LmlkbAorKysgYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL21lZGlhc3RyZWFtL1JUQ1BlZXJDb25u
ZWN0aW9uLmlkbApAQCAtMzksMjEgKzM5LDIxIEBACiAgICAgRXZlbnRUYXJnZXQsCiAgICAgSW50
ZXJmYWNlTmFtZT13ZWJraXRSVENQZWVyQ29ubmVjdGlvbiwKIF0gaW50ZXJmYWNlIFJUQ1BlZXJD
b25uZWN0aW9uIHsKLSAgICBbUmFpc2VzRXhjZXB0aW9uXSB2b2lkIGNyZWF0ZU9mZmVyKFJUQ1Nl
c3Npb25EZXNjcmlwdGlvbkNhbGxiYWNrIHN1Y2Nlc3NDYWxsYmFjaywgW0RlZmF1bHQ9VW5kZWZp
bmVkXSBvcHRpb25hbCBSVENFcnJvckNhbGxiYWNrIGZhaWx1cmVDYWxsYmFjaywgb3B0aW9uYWwg
RGljdGlvbmFyeSBtZWRpYUNvbnN0cmFpbnRzKTsKKyAgICBbUmFpc2VzRXhjZXB0aW9uXSB2b2lk
IGNyZWF0ZU9mZmVyKFJUQ1Nlc3Npb25EZXNjcmlwdGlvbkNhbGxiYWNrIHN1Y2Nlc3NDYWxsYmFj
aywgW0RlZmF1bHQ9VW5kZWZpbmVkXSBvcHRpb25hbCBSVENQZWVyQ29ubmVjdGlvbkVycm9yQ2Fs
bGJhY2sgZmFpbHVyZUNhbGxiYWNrLCBvcHRpb25hbCBEaWN0aW9uYXJ5IG1lZGlhQ29uc3RyYWlu
dHMpOwogCi0gICAgW1JhaXNlc0V4Y2VwdGlvbl0gdm9pZCBjcmVhdGVBbnN3ZXIoUlRDU2Vzc2lv
bkRlc2NyaXB0aW9uQ2FsbGJhY2sgc3VjY2Vzc0NhbGxiYWNrLCBbRGVmYXVsdD1VbmRlZmluZWRd
IG9wdGlvbmFsIFJUQ0Vycm9yQ2FsbGJhY2sgZmFpbHVyZUNhbGxiYWNrLCBvcHRpb25hbCBEaWN0
aW9uYXJ5IG1lZGlhQ29uc3RyYWludHMpOworICAgIFtSYWlzZXNFeGNlcHRpb25dIHZvaWQgY3Jl
YXRlQW5zd2VyKFJUQ1Nlc3Npb25EZXNjcmlwdGlvbkNhbGxiYWNrIHN1Y2Nlc3NDYWxsYmFjaywg
W0RlZmF1bHQ9VW5kZWZpbmVkXSBvcHRpb25hbCBSVENQZWVyQ29ubmVjdGlvbkVycm9yQ2FsbGJh
Y2sgZmFpbHVyZUNhbGxiYWNrLCBvcHRpb25hbCBEaWN0aW9uYXJ5IG1lZGlhQ29uc3RyYWludHMp
OwogCi0gICAgW1JhaXNlc0V4Y2VwdGlvbl0gdm9pZCBzZXRMb2NhbERlc2NyaXB0aW9uKFJUQ1Nl
c3Npb25EZXNjcmlwdGlvbiBkZXNjcmlwdGlvbiwgW0RlZmF1bHQ9VW5kZWZpbmVkXSBvcHRpb25h
bCBWb2lkQ2FsbGJhY2sgc3VjY2Vzc0NhbGxiYWNrLCBbRGVmYXVsdD1VbmRlZmluZWRdIG9wdGlv
bmFsIFJUQ0Vycm9yQ2FsbGJhY2sgZmFpbHVyZUNhbGxiYWNrKTsKKyAgICBbUmFpc2VzRXhjZXB0
aW9uXSB2b2lkIHNldExvY2FsRGVzY3JpcHRpb24oUlRDU2Vzc2lvbkRlc2NyaXB0aW9uIGRlc2Ny
aXB0aW9uLCBbRGVmYXVsdD1VbmRlZmluZWRdIG9wdGlvbmFsIFZvaWRDYWxsYmFjayBzdWNjZXNz
Q2FsbGJhY2ssIFtEZWZhdWx0PVVuZGVmaW5lZF0gb3B0aW9uYWwgUlRDUGVlckNvbm5lY3Rpb25F
cnJvckNhbGxiYWNrIGZhaWx1cmVDYWxsYmFjayk7CiAgICAgW0dldHRlclJhaXNlc0V4Y2VwdGlv
bl0gcmVhZG9ubHkgYXR0cmlidXRlIFJUQ1Nlc3Npb25EZXNjcmlwdGlvbiBsb2NhbERlc2NyaXB0
aW9uOwogCi0gICAgW1JhaXNlc0V4Y2VwdGlvbl0gdm9pZCBzZXRSZW1vdGVEZXNjcmlwdGlvbihS
VENTZXNzaW9uRGVzY3JpcHRpb24gZGVzY3JpcHRpb24sIFtEZWZhdWx0PVVuZGVmaW5lZF0gb3B0
aW9uYWwgVm9pZENhbGxiYWNrIHN1Y2Nlc3NDYWxsYmFjaywgW0RlZmF1bHQ9VW5kZWZpbmVkXSBv
cHRpb25hbCBSVENFcnJvckNhbGxiYWNrIGZhaWx1cmVDYWxsYmFjayk7CisgICAgW1JhaXNlc0V4
Y2VwdGlvbl0gdm9pZCBzZXRSZW1vdGVEZXNjcmlwdGlvbihSVENTZXNzaW9uRGVzY3JpcHRpb24g
ZGVzY3JpcHRpb24sIFtEZWZhdWx0PVVuZGVmaW5lZF0gb3B0aW9uYWwgVm9pZENhbGxiYWNrIHN1
Y2Nlc3NDYWxsYmFjaywgW0RlZmF1bHQ9VW5kZWZpbmVkXSBvcHRpb25hbCBSVENQZWVyQ29ubmVj
dGlvbkVycm9yQ2FsbGJhY2sgZmFpbHVyZUNhbGxiYWNrKTsKICAgICBbR2V0dGVyUmFpc2VzRXhj
ZXB0aW9uXSByZWFkb25seSBhdHRyaWJ1dGUgUlRDU2Vzc2lvbkRlc2NyaXB0aW9uIHJlbW90ZURl
c2NyaXB0aW9uOwogCiAgICAgcmVhZG9ubHkgYXR0cmlidXRlIERPTVN0cmluZyBzaWduYWxpbmdT
dGF0ZTsKIAogICAgIFtSYWlzZXNFeGNlcHRpb25dIHZvaWQgdXBkYXRlSWNlKG9wdGlvbmFsIERp
Y3Rpb25hcnkgY29uZmlndXJhdGlvbiwgb3B0aW9uYWwgRGljdGlvbmFyeSBtZWRpYUNvbnN0cmFp
bnRzKTsKIAotICAgIFtSYWlzZXNFeGNlcHRpb25dIHZvaWQgYWRkSWNlQ2FuZGlkYXRlKFJUQ0lj
ZUNhbmRpZGF0ZSBjYW5kaWRhdGUsIFZvaWRDYWxsYmFjayBzdWNjZXNzQ2FsbGJhY2ssIFJUQ0Vy
cm9yQ2FsbGJhY2sgZmFpbHVyZUNhbGxiYWNrKTsKKyAgICBbUmFpc2VzRXhjZXB0aW9uXSB2b2lk
IGFkZEljZUNhbmRpZGF0ZShSVENJY2VDYW5kaWRhdGUgY2FuZGlkYXRlLCBWb2lkQ2FsbGJhY2sg
c3VjY2Vzc0NhbGxiYWNrLCBSVENQZWVyQ29ubmVjdGlvbkVycm9yQ2FsbGJhY2sgZmFpbHVyZUNh
bGxiYWNrKTsKIAogICAgIHJlYWRvbmx5IGF0dHJpYnV0ZSBET01TdHJpbmcgaWNlR2F0aGVyaW5n
U3RhdGU7CiAgICAgcmVhZG9ubHkgYXR0cmlidXRlIERPTVN0cmluZyBpY2VDb25uZWN0aW9uU3Rh
dGU7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL21lZGlhc3RyZWFtL1JUQ1Bl
ZXJDb25uZWN0aW9uRXJyb3JDYWxsYmFjay5oIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9tZWRp
YXN0cmVhbS9SVENQZWVyQ29ubmVjdGlvbkVycm9yQ2FsbGJhY2suaApuZXcgZmlsZSBtb2RlIDEw
MDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5jMmFl
Y2JhMGE0Y2Q5YWE5ZjJlNzI2MTA3ZmU2ZmQxNzFmMjA1ZWVjCi0tLSAvZGV2L251bGwKKysrIGIv
U291cmNlL1dlYkNvcmUvTW9kdWxlcy9tZWRpYXN0cmVhbS9SVENQZWVyQ29ubmVjdGlvbkVycm9y
Q2FsbGJhY2suaApAQCAtMCwwICsxLDQ2IEBACisvKgorICogQ29weXJpZ2h0IChDKSAyMDEzIE5v
a2lhIENvcnBvcmF0aW9uIGFuZC9vciBpdHMgc3Vic2lkaWFyeSgtaWVzKS4KKyAqCisgKiBSZWRp
c3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdp
dGhvdXQKKyAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBm
b2xsb3dpbmcgY29uZGl0aW9ucworICogYXJlIG1ldDoKKyAqIDEuIFJlZGlzdHJpYnV0aW9ucyBv
ZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3Rp
Y2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIu
CisgKiAyLiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhl
IGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBh
bmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQorICogICAgZG9jdW1lbnRhdGlvbiBh
bmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KKyAq
CisgKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIFRIRSBDT1BZUklHSFQgSE9MREVSUyBB
TkQgQ09OVFJJQlVUT1JTCisgKiAiQVMgSVMiIEFORCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdB
UlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVAorICogTElNSVRFRCBUTywgVEhFIElNUExJRUQg
V0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SCisgKiBBIFBBUlRJ
Q1VMQVIgUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgVEhFIENPUFlS
SUdIVAorICogT1dORVIgT1IgQ09OVFJJQlVUT1JTIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwg
SU5ESVJFQ1QsIElOQ0lERU5UQUwsCisgKiBTUEVDSUFMLCBFWEVNUExBUlksIE9SIENPTlNFUVVF
TlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UCisgKiBMSU1JVEVEIFRPLCBQUk9DVVJF
TUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwKKyAqIERB
VEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQg
QU5EIE9OIEFOWQorICogVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwg
U1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVAorICogKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9U
SEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFCisgKiBPRiBUSElTIFNP
RlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdF
LgorICovCisKKyNpZm5kZWYgUlRDUGVlckNvbm5lY3Rpb25FcnJvckNhbGxiYWNrX2gKKyNkZWZp
bmUgUlRDUGVlckNvbm5lY3Rpb25FcnJvckNhbGxiYWNrX2gKKworI2lmIEVOQUJMRShNRURJQV9T
VFJFQU0pCisKKyNpbmNsdWRlICJET01FcnJvci5oIgorI2luY2x1ZGUgPHd0Zi9SZWZDb3VudGVk
Lmg+CisKK25hbWVzcGFjZSBXZWJDb3JlIHsKKworY2xhc3MgUlRDUGVlckNvbm5lY3Rpb25FcnJv
ckNhbGxiYWNrIDogcHVibGljIFJlZkNvdW50ZWQ8UlRDUGVlckNvbm5lY3Rpb25FcnJvckNhbGxi
YWNrPiB7CitwdWJsaWM6CisgICAgdmlydHVhbCB+UlRDUGVlckNvbm5lY3Rpb25FcnJvckNhbGxi
YWNrKCkgeyB9CisgICAgdmlydHVhbCBib29sIGhhbmRsZUV2ZW50KERPTUVycm9yKikgPSAwOwor
fTsKKworfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQorCisjZW5kaWYgLy8gRU5BQkxFKE1FRElBX1NU
UkVBTSkKKworI2VuZGlmIC8vIFJUQ1BlZXJDb25uZWN0aW9uRXJyb3JDYWxsYmFja19oCmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL21lZGlhc3RyZWFtL1JUQ1BlZXJDb25uZWN0
aW9uRXJyb3JDYWxsYmFjay5pZGwgYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL21lZGlhc3RyZWFt
L1JUQ1BlZXJDb25uZWN0aW9uRXJyb3JDYWxsYmFjay5pZGwKbmV3IGZpbGUgbW9kZSAxMDA2NDQK
aW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uNGI4N2FkN2Zm
MDRlMzczY2E0YzAwMzVkYTJmNjQyOGJmMjhmMDcyMgotLS0gL2Rldi9udWxsCisrKyBiL1NvdXJj
ZS9XZWJDb3JlL01vZHVsZXMvbWVkaWFzdHJlYW0vUlRDUGVlckNvbm5lY3Rpb25FcnJvckNhbGxi
YWNrLmlkbApAQCAtMCwwICsxLDMxIEBACisvKgorICogQ29weXJpZ2h0IChDKSAyMDEzIE5va2lh
IENvcnBvcmF0aW9uIGFuZC9vciBpdHMgc3Vic2lkaWFyeSgtaWVzKS4KKyAqCisgKiBSZWRpc3Ry
aWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhv
dXQKKyAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xs
b3dpbmcgY29uZGl0aW9ucworICogYXJlIG1ldDoKKyAqIDEuIFJlZGlzdHJpYnV0aW9ucyBvZiBz
b3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2Us
IHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisg
KiAyLiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFi
b3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQg
dGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQorICogICAgZG9jdW1lbnRhdGlvbiBhbmQv
b3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KKyAqCisg
KiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIFRIRSBDT1BZUklHSFQgSE9MREVSUyBBTkQg
Q09OVFJJQlVUT1JTCisgKiAiQVMgSVMiIEFORCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJB
TlRJRVMsIElOQ0xVRElORywgQlVUIE5PVAorICogTElNSVRFRCBUTywgVEhFIElNUExJRUQgV0FS
UkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SCisgKiBBIFBBUlRJQ1VM
QVIgUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgVEhFIENPUFlSSUdI
VAorICogT1dORVIgT1IgQ09OVFJJQlVUT1JTIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5E
SVJFQ1QsIElOQ0lERU5UQUwsCisgKiBTUEVDSUFMLCBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJ
QUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UCisgKiBMSU1JVEVEIFRPLCBQUk9DVVJFTUVO
VCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwKKyAqIERBVEEs
IE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5E
IE9OIEFOWQorICogVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RS
SUNUIExJQUJJTElUWSwgT1IgVE9SVAorICogKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVS
V0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFCisgKiBPRiBUSElTIFNPRlRX
QVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgor
ICovCisKK1sKKyAgICBDb25kaXRpb25hbD1NRURJQV9TVFJFQU0sCitdIGNhbGxiYWNrIGludGVy
ZmFjZSBSVENQZWVyQ29ubmVjdGlvbkVycm9yQ2FsbGJhY2sgeworICAgIGJvb2xlYW4gaGFuZGxl
RXZlbnQoRE9NRXJyb3IgZXJyb3IpOworfTsKKwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUv
TW9kdWxlcy9tZWRpYXN0cmVhbS9SVENTZXNzaW9uRGVzY3JpcHRpb25SZXF1ZXN0SW1wbC5jcHAg
Yi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL21lZGlhc3RyZWFtL1JUQ1Nlc3Npb25EZXNjcmlwdGlv
blJlcXVlc3RJbXBsLmNwcAppbmRleCA0MDgxZTkzNGFhMjQ1MTI5YzhkOWFhMDc1OTEwZTg4ZTA2
NWYyY2M2Li44NzJhNTRlMThhMTE4NTg1MDE2NDYzMDBjMzBjNTEyYTQxNGIzMTcxIDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL21lZGlhc3RyZWFtL1JUQ1Nlc3Npb25EZXNjcmlw
dGlvblJlcXVlc3RJbXBsLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL21lZGlhc3Ry
ZWFtL1JUQ1Nlc3Npb25EZXNjcmlwdGlvblJlcXVlc3RJbXBsLmNwcApAQCAtMSw1ICsxLDYgQEAK
IC8qCiAgKiBDb3B5cmlnaHQgKEMpIDIwMTIgR29vZ2xlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZl
ZC4KKyAqIENvcHlyaWdodCAoQykgMjAxMyBOb2tpYSBDb3Jwb3JhdGlvbiBhbmQvb3IgaXRzIHN1
YnNpZGlhcnkoLWllcykuCiAgKgogICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2Ug
YW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CiAgKiBtb2RpZmljYXRpb24sIGFyZSBw
ZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKQEAgLTM0LDIy
ICszNSwyMiBAQAogCiAjaW5jbHVkZSAiUlRDU2Vzc2lvbkRlc2NyaXB0aW9uUmVxdWVzdEltcGwu
aCIKIAotI2luY2x1ZGUgIlJUQ0Vycm9yQ2FsbGJhY2suaCIKICNpbmNsdWRlICJSVENQZWVyQ29u
bmVjdGlvbi5oIgorI2luY2x1ZGUgIlJUQ1BlZXJDb25uZWN0aW9uRXJyb3JDYWxsYmFjay5oIgog
I2luY2x1ZGUgIlJUQ1Nlc3Npb25EZXNjcmlwdGlvbi5oIgogI2luY2x1ZGUgIlJUQ1Nlc3Npb25E
ZXNjcmlwdGlvbkNhbGxiYWNrLmgiCiAjaW5jbHVkZSAiUlRDU2Vzc2lvbkRlc2NyaXB0aW9uRGVz
Y3JpcHRvci5oIgogCiBuYW1lc3BhY2UgV2ViQ29yZSB7CiAKLVBhc3NSZWZQdHI8UlRDU2Vzc2lv
bkRlc2NyaXB0aW9uUmVxdWVzdEltcGw+IFJUQ1Nlc3Npb25EZXNjcmlwdGlvblJlcXVlc3RJbXBs
OjpjcmVhdGUoU2NyaXB0RXhlY3V0aW9uQ29udGV4dCogY29udGV4dCwgUGFzc1JlZlB0cjxSVENT
ZXNzaW9uRGVzY3JpcHRpb25DYWxsYmFjaz4gc3VjY2Vzc0NhbGxiYWNrLCBQYXNzUmVmUHRyPFJU
Q0Vycm9yQ2FsbGJhY2s+IGVycm9yQ2FsbGJhY2spCitQYXNzUmVmUHRyPFJUQ1Nlc3Npb25EZXNj
cmlwdGlvblJlcXVlc3RJbXBsPiBSVENTZXNzaW9uRGVzY3JpcHRpb25SZXF1ZXN0SW1wbDo6Y3Jl
YXRlKFNjcmlwdEV4ZWN1dGlvbkNvbnRleHQqIGNvbnRleHQsIFBhc3NSZWZQdHI8UlRDU2Vzc2lv
bkRlc2NyaXB0aW9uQ2FsbGJhY2s+IHN1Y2Nlc3NDYWxsYmFjaywgUGFzc1JlZlB0cjxSVENQZWVy
Q29ubmVjdGlvbkVycm9yQ2FsbGJhY2s+IGVycm9yQ2FsbGJhY2spCiB7CiAgICAgUmVmUHRyPFJU
Q1Nlc3Npb25EZXNjcmlwdGlvblJlcXVlc3RJbXBsPiByZXF1ZXN0ID0gYWRvcHRSZWYobmV3IFJU
Q1Nlc3Npb25EZXNjcmlwdGlvblJlcXVlc3RJbXBsKGNvbnRleHQsIHN1Y2Nlc3NDYWxsYmFjaywg
ZXJyb3JDYWxsYmFjaykpOwogICAgIHJlcXVlc3QtPnN1c3BlbmRJZk5lZWRlZCgpOwogICAgIHJl
dHVybiByZXF1ZXN0LnJlbGVhc2UoKTsKIH0KIAotUlRDU2Vzc2lvbkRlc2NyaXB0aW9uUmVxdWVz
dEltcGw6OlJUQ1Nlc3Npb25EZXNjcmlwdGlvblJlcXVlc3RJbXBsKFNjcmlwdEV4ZWN1dGlvbkNv
bnRleHQqIGNvbnRleHQsIFBhc3NSZWZQdHI8UlRDU2Vzc2lvbkRlc2NyaXB0aW9uQ2FsbGJhY2s+
IHN1Y2Nlc3NDYWxsYmFjaywgUGFzc1JlZlB0cjxSVENFcnJvckNhbGxiYWNrPiBlcnJvckNhbGxi
YWNrKQorUlRDU2Vzc2lvbkRlc2NyaXB0aW9uUmVxdWVzdEltcGw6OlJUQ1Nlc3Npb25EZXNjcmlw
dGlvblJlcXVlc3RJbXBsKFNjcmlwdEV4ZWN1dGlvbkNvbnRleHQqIGNvbnRleHQsIFBhc3NSZWZQ
dHI8UlRDU2Vzc2lvbkRlc2NyaXB0aW9uQ2FsbGJhY2s+IHN1Y2Nlc3NDYWxsYmFjaywgUGFzc1Jl
ZlB0cjxSVENQZWVyQ29ubmVjdGlvbkVycm9yQ2FsbGJhY2s+IGVycm9yQ2FsbGJhY2spCiAgICAg
OiBBY3RpdmVET01PYmplY3QoY29udGV4dCkKICAgICAsIG1fc3VjY2Vzc0NhbGxiYWNrKHN1Y2Nl
c3NDYWxsYmFjaykKICAgICAsIG1fZXJyb3JDYWxsYmFjayhlcnJvckNhbGxiYWNrKQpAQCAtNzMs
NyArNzQsNyBAQCB2b2lkIFJUQ1Nlc3Npb25EZXNjcmlwdGlvblJlcXVlc3RJbXBsOjpyZXF1ZXN0
U3VjY2VlZGVkKFBhc3NSZWZQdHI8UlRDU2Vzc2lvbkRlcwogdm9pZCBSVENTZXNzaW9uRGVzY3Jp
cHRpb25SZXF1ZXN0SW1wbDo6cmVxdWVzdEZhaWxlZChjb25zdCBTdHJpbmcmIGVycm9yKQogewog
ICAgIGlmIChtX2Vycm9yQ2FsbGJhY2spCi0gICAgICAgIG1fZXJyb3JDYWxsYmFjay0+aGFuZGxl
RXZlbnQoZXJyb3IpOworICAgICAgICBtX2Vycm9yQ2FsbGJhY2stPmhhbmRsZUV2ZW50KERPTUVy
cm9yOjpjcmVhdGUoZXJyb3IpLmdldCgpKTsKIAogICAgIGNsZWFyKCk7CiB9CmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL21lZGlhc3RyZWFtL1JUQ1Nlc3Npb25EZXNjcmlwdGlv
blJlcXVlc3RJbXBsLmggYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL21lZGlhc3RyZWFtL1JUQ1Nl
c3Npb25EZXNjcmlwdGlvblJlcXVlc3RJbXBsLmgKaW5kZXggZDFiY2VlMDEzNTEzYWE2N2MyYjA3
NmE5MDUwMWVjZTg1NjJlMTZlMC4uMjlkZTY0NzM5MTk5NmExZDVlZDI1M2NjMzY1ZDU0ZmNhNDhi
Mzk1MSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9tZWRpYXN0cmVhbS9SVENT
ZXNzaW9uRGVzY3JpcHRpb25SZXF1ZXN0SW1wbC5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL01vZHVs
ZXMvbWVkaWFzdHJlYW0vUlRDU2Vzc2lvbkRlc2NyaXB0aW9uUmVxdWVzdEltcGwuaApAQCAtMSw1
ICsxLDYgQEAKIC8qCiAgKiBDb3B5cmlnaHQgKEMpIDIwMTIgR29vZ2xlIEluYy4gQWxsIHJpZ2h0
cyByZXNlcnZlZC4KKyAqIENvcHlyaWdodCAoQykgMjAxMyBOb2tpYSBDb3Jwb3JhdGlvbiBhbmQv
b3IgaXRzIHN1YnNpZGlhcnkoLWllcykuCiAgKgogICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBp
biBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CiAgKiBtb2RpZmljYXRp
b24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMK
QEAgLTM4LDEzICszOSwxMyBAQAogCiBuYW1lc3BhY2UgV2ViQ29yZSB7CiAKLWNsYXNzIFJUQ0Vy
cm9yQ2FsbGJhY2s7CitjbGFzcyBSVENQZWVyQ29ubmVjdGlvbkVycm9yQ2FsbGJhY2s7CiBjbGFz
cyBSVENQZWVyQ29ubmVjdGlvbjsKIGNsYXNzIFJUQ1Nlc3Npb25EZXNjcmlwdGlvbkNhbGxiYWNr
OwogCiBjbGFzcyBSVENTZXNzaW9uRGVzY3JpcHRpb25SZXF1ZXN0SW1wbCA6IHB1YmxpYyBSVENT
ZXNzaW9uRGVzY3JpcHRpb25SZXF1ZXN0LCBwdWJsaWMgQWN0aXZlRE9NT2JqZWN0IHsKIHB1Ymxp
YzoKLSAgICBzdGF0aWMgUGFzc1JlZlB0cjxSVENTZXNzaW9uRGVzY3JpcHRpb25SZXF1ZXN0SW1w
bD4gY3JlYXRlKFNjcmlwdEV4ZWN1dGlvbkNvbnRleHQqLCBQYXNzUmVmUHRyPFJUQ1Nlc3Npb25E
ZXNjcmlwdGlvbkNhbGxiYWNrPiwgUGFzc1JlZlB0cjxSVENFcnJvckNhbGxiYWNrPik7CisgICAg
c3RhdGljIFBhc3NSZWZQdHI8UlRDU2Vzc2lvbkRlc2NyaXB0aW9uUmVxdWVzdEltcGw+IGNyZWF0
ZShTY3JpcHRFeGVjdXRpb25Db250ZXh0KiwgUGFzc1JlZlB0cjxSVENTZXNzaW9uRGVzY3JpcHRp
b25DYWxsYmFjaz4sIFBhc3NSZWZQdHI8UlRDUGVlckNvbm5lY3Rpb25FcnJvckNhbGxiYWNrPik7
CiAgICAgdmlydHVhbCB+UlRDU2Vzc2lvbkRlc2NyaXB0aW9uUmVxdWVzdEltcGwoKTsKIAogICAg
IHZpcnR1YWwgdm9pZCByZXF1ZXN0U3VjY2VlZGVkKFBhc3NSZWZQdHI8UlRDU2Vzc2lvbkRlc2Ny
aXB0aW9uRGVzY3JpcHRvcj4pIE9WRVJSSURFOwpAQCAtNTQsMTIgKzU1LDEyIEBAIHB1YmxpYzoK
ICAgICB2aXJ0dWFsIHZvaWQgc3RvcCgpIE9WRVJSSURFOwogCiBwcml2YXRlOgotICAgIFJUQ1Nl
c3Npb25EZXNjcmlwdGlvblJlcXVlc3RJbXBsKFNjcmlwdEV4ZWN1dGlvbkNvbnRleHQqLCBQYXNz
UmVmUHRyPFJUQ1Nlc3Npb25EZXNjcmlwdGlvbkNhbGxiYWNrPiwgUGFzc1JlZlB0cjxSVENFcnJv
ckNhbGxiYWNrPik7CisgICAgUlRDU2Vzc2lvbkRlc2NyaXB0aW9uUmVxdWVzdEltcGwoU2NyaXB0
RXhlY3V0aW9uQ29udGV4dCosIFBhc3NSZWZQdHI8UlRDU2Vzc2lvbkRlc2NyaXB0aW9uQ2FsbGJh
Y2s+LCBQYXNzUmVmUHRyPFJUQ1BlZXJDb25uZWN0aW9uRXJyb3JDYWxsYmFjaz4pOwogCiAgICAg
dm9pZCBjbGVhcigpOwogCiAgICAgUmVmUHRyPFJUQ1Nlc3Npb25EZXNjcmlwdGlvbkNhbGxiYWNr
PiBtX3N1Y2Nlc3NDYWxsYmFjazsKLSAgICBSZWZQdHI8UlRDRXJyb3JDYWxsYmFjaz4gbV9lcnJv
ckNhbGxiYWNrOworICAgIFJlZlB0cjxSVENQZWVyQ29ubmVjdGlvbkVycm9yQ2FsbGJhY2s+IG1f
ZXJyb3JDYWxsYmFjazsKIH07CiAKIH0gLy8gbmFtZXNwYWNlIFdlYkNvcmUKZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvbWVkaWFzdHJlYW0vUlRDVm9pZFJlcXVlc3RJbXBsLmNw
cCBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvbWVkaWFzdHJlYW0vUlRDVm9pZFJlcXVlc3RJbXBs
LmNwcAppbmRleCAxNTBlM2U5ZmZiYTcyNmM4NGE3Y2I3ZTY0YWY0MmVhNzJkYTllMTJmLi4xMTYx
MTU4MThiMmU5NjY0ZmNhMTE1ZmI4MDgzNTYxMDFhZjJhNzM0IDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V2ViQ29yZS9Nb2R1bGVzL21lZGlhc3RyZWFtL1JUQ1ZvaWRSZXF1ZXN0SW1wbC5jcHAKKysrIGIv
U291cmNlL1dlYkNvcmUvTW9kdWxlcy9tZWRpYXN0cmVhbS9SVENWb2lkUmVxdWVzdEltcGwuY3Bw
CkBAIC0xLDUgKzEsNiBAQAogLyoKICAqIENvcHlyaWdodCAoQykgMjAxMiBHb29nbGUgSW5jLiBB
bGwgcmlnaHRzIHJlc2VydmVkLgorICogQ29weXJpZ2h0IChDKSAyMDEzIE5va2lhIENvcnBvcmF0
aW9uIGFuZC9vciBpdHMgc3Vic2lkaWFyeSgtaWVzKS4KICAqCiAgKiBSZWRpc3RyaWJ1dGlvbiBh
bmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKICAqIG1v
ZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29u
ZGl0aW9ucwpAQCAtMzQsMjAgKzM1LDIxIEBACiAKICNpbmNsdWRlICJSVENWb2lkUmVxdWVzdElt
cGwuaCIKIAotI2luY2x1ZGUgIlJUQ0Vycm9yQ2FsbGJhY2suaCIKKyNpbmNsdWRlICJET01FcnJv
ci5oIgogI2luY2x1ZGUgIlJUQ1BlZXJDb25uZWN0aW9uLmgiCisjaW5jbHVkZSAiUlRDUGVlckNv
bm5lY3Rpb25FcnJvckNhbGxiYWNrLmgiCiAjaW5jbHVkZSAiVm9pZENhbGxiYWNrLmgiCiAKIG5h
bWVzcGFjZSBXZWJDb3JlIHsKIAotUGFzc1JlZlB0cjxSVENWb2lkUmVxdWVzdEltcGw+IFJUQ1Zv
aWRSZXF1ZXN0SW1wbDo6Y3JlYXRlKFNjcmlwdEV4ZWN1dGlvbkNvbnRleHQqIGNvbnRleHQsIFBh
c3NSZWZQdHI8Vm9pZENhbGxiYWNrPiBzdWNjZXNzQ2FsbGJhY2ssIFBhc3NSZWZQdHI8UlRDRXJy
b3JDYWxsYmFjaz4gZXJyb3JDYWxsYmFjaykKK1Bhc3NSZWZQdHI8UlRDVm9pZFJlcXVlc3RJbXBs
PiBSVENWb2lkUmVxdWVzdEltcGw6OmNyZWF0ZShTY3JpcHRFeGVjdXRpb25Db250ZXh0KiBjb250
ZXh0LCBQYXNzUmVmUHRyPFZvaWRDYWxsYmFjaz4gc3VjY2Vzc0NhbGxiYWNrLCBQYXNzUmVmUHRy
PFJUQ1BlZXJDb25uZWN0aW9uRXJyb3JDYWxsYmFjaz4gZXJyb3JDYWxsYmFjaykKIHsKICAgICBS
ZWZQdHI8UlRDVm9pZFJlcXVlc3RJbXBsPiByZXF1ZXN0ID0gYWRvcHRSZWYobmV3IFJUQ1ZvaWRS
ZXF1ZXN0SW1wbChjb250ZXh0LCBzdWNjZXNzQ2FsbGJhY2ssIGVycm9yQ2FsbGJhY2spKTsKICAg
ICByZXF1ZXN0LT5zdXNwZW5kSWZOZWVkZWQoKTsKICAgICByZXR1cm4gcmVxdWVzdC5yZWxlYXNl
KCk7CiB9CiAKLVJUQ1ZvaWRSZXF1ZXN0SW1wbDo6UlRDVm9pZFJlcXVlc3RJbXBsKFNjcmlwdEV4
ZWN1dGlvbkNvbnRleHQqIGNvbnRleHQsIFBhc3NSZWZQdHI8Vm9pZENhbGxiYWNrPiBzdWNjZXNz
Q2FsbGJhY2ssIFBhc3NSZWZQdHI8UlRDRXJyb3JDYWxsYmFjaz4gZXJyb3JDYWxsYmFjaykKK1JU
Q1ZvaWRSZXF1ZXN0SW1wbDo6UlRDVm9pZFJlcXVlc3RJbXBsKFNjcmlwdEV4ZWN1dGlvbkNvbnRl
eHQqIGNvbnRleHQsIFBhc3NSZWZQdHI8Vm9pZENhbGxiYWNrPiBzdWNjZXNzQ2FsbGJhY2ssIFBh
c3NSZWZQdHI8UlRDUGVlckNvbm5lY3Rpb25FcnJvckNhbGxiYWNrPiBlcnJvckNhbGxiYWNrKQog
ICAgIDogQWN0aXZlRE9NT2JqZWN0KGNvbnRleHQpCiAgICAgLCBtX3N1Y2Nlc3NDYWxsYmFjayhz
dWNjZXNzQ2FsbGJhY2spCiAgICAgLCBtX2Vycm9yQ2FsbGJhY2soZXJyb3JDYWxsYmFjaykKQEAg
LTY5LDcgKzcxLDcgQEAgdm9pZCBSVENWb2lkUmVxdWVzdEltcGw6OnJlcXVlc3RTdWNjZWVkZWQo
KQogdm9pZCBSVENWb2lkUmVxdWVzdEltcGw6OnJlcXVlc3RGYWlsZWQoY29uc3QgU3RyaW5nJiBl
cnJvcikKIHsKICAgICBpZiAobV9lcnJvckNhbGxiYWNrLmdldCgpKQotICAgICAgICBtX2Vycm9y
Q2FsbGJhY2stPmhhbmRsZUV2ZW50KGVycm9yKTsKKyAgICAgICAgbV9lcnJvckNhbGxiYWNrLT5o
YW5kbGVFdmVudChET01FcnJvcjo6Y3JlYXRlKGVycm9yKS5nZXQoKSk7CiAKICAgICBjbGVhcigp
OwogfQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9tZWRpYXN0cmVhbS9SVENW
b2lkUmVxdWVzdEltcGwuaCBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvbWVkaWFzdHJlYW0vUlRD
Vm9pZFJlcXVlc3RJbXBsLmgKaW5kZXggNjU3YWJmYzdjNmIzMjkyYTUzMzRjNDE5Y2YyYTQ3ZTI5
MmY3MmNiNi4uMjI3NTgzMzg2ZThiMDRiNzVhYzVlNDQ3ZTgyMmVlMmQzYTliZTVhMCAxMDA2NDQK
LS0tIGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9tZWRpYXN0cmVhbS9SVENWb2lkUmVxdWVzdElt
cGwuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL21lZGlhc3RyZWFtL1JUQ1ZvaWRSZXF1
ZXN0SW1wbC5oCkBAIC0xLDUgKzEsNiBAQAogLyoKICAqIENvcHlyaWdodCAoQykgMjAxMiBHb29n
bGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICogQ29weXJpZ2h0IChDKSAyMDEzIE5va2lh
IENvcnBvcmF0aW9uIGFuZC9vciBpdHMgc3Vic2lkaWFyeSgtaWVzKS4KICAqCiAgKiBSZWRpc3Ry
aWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhv
dXQKICAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xs
b3dpbmcgY29uZGl0aW9ucwpAQCAtMzgsMTIgKzM5LDEyIEBACiAKIG5hbWVzcGFjZSBXZWJDb3Jl
IHsKIAotY2xhc3MgUlRDRXJyb3JDYWxsYmFjazsKK2NsYXNzIFJUQ1BlZXJDb25uZWN0aW9uRXJy
b3JDYWxsYmFjazsKIGNsYXNzIFZvaWRDYWxsYmFjazsKIAogY2xhc3MgUlRDVm9pZFJlcXVlc3RJ
bXBsIDogcHVibGljIFJUQ1ZvaWRSZXF1ZXN0LCBwdWJsaWMgQWN0aXZlRE9NT2JqZWN0IHsKIHB1
YmxpYzoKLSAgICBzdGF0aWMgUGFzc1JlZlB0cjxSVENWb2lkUmVxdWVzdEltcGw+IGNyZWF0ZShT
Y3JpcHRFeGVjdXRpb25Db250ZXh0KiwgUGFzc1JlZlB0cjxWb2lkQ2FsbGJhY2s+LCBQYXNzUmVm
UHRyPFJUQ0Vycm9yQ2FsbGJhY2s+KTsKKyAgICBzdGF0aWMgUGFzc1JlZlB0cjxSVENWb2lkUmVx
dWVzdEltcGw+IGNyZWF0ZShTY3JpcHRFeGVjdXRpb25Db250ZXh0KiwgUGFzc1JlZlB0cjxWb2lk
Q2FsbGJhY2s+LCBQYXNzUmVmUHRyPFJUQ1BlZXJDb25uZWN0aW9uRXJyb3JDYWxsYmFjaz4pOwog
ICAgIHZpcnR1YWwgflJUQ1ZvaWRSZXF1ZXN0SW1wbCgpOwogCiAgICAgdmlydHVhbCB2b2lkIHJl
cXVlc3RTdWNjZWVkZWQoKTsKQEAgLTUzLDEyICs1NCwxMiBAQCBwdWJsaWM6CiAgICAgdmlydHVh
bCB2b2lkIHN0b3AoKSBPVkVSUklERTsKIAogcHJpdmF0ZToKLSAgICBSVENWb2lkUmVxdWVzdElt
cGwoU2NyaXB0RXhlY3V0aW9uQ29udGV4dCosIFBhc3NSZWZQdHI8Vm9pZENhbGxiYWNrPiwgUGFz
c1JlZlB0cjxSVENFcnJvckNhbGxiYWNrPik7CisgICAgUlRDVm9pZFJlcXVlc3RJbXBsKFNjcmlw
dEV4ZWN1dGlvbkNvbnRleHQqLCBQYXNzUmVmUHRyPFZvaWRDYWxsYmFjaz4sIFBhc3NSZWZQdHI8
UlRDUGVlckNvbm5lY3Rpb25FcnJvckNhbGxiYWNrPik7CiAKICAgICB2b2lkIGNsZWFyKCk7CiAK
ICAgICBSZWZQdHI8Vm9pZENhbGxiYWNrPiBtX3N1Y2Nlc3NDYWxsYmFjazsKLSAgICBSZWZQdHI8
UlRDRXJyb3JDYWxsYmFjaz4gbV9lcnJvckNhbGxiYWNrOworICAgIFJlZlB0cjxSVENQZWVyQ29u
bmVjdGlvbkVycm9yQ2FsbGJhY2s+IG1fZXJyb3JDYWxsYmFjazsKIH07CiAKIH0gLy8gbmFtZXNw
YWNlIFdlYkNvcmUKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL21lZGlhc3Ry
ZWFtL1JUQ1BlZXJDb25uZWN0aW9uSGFuZGxlci5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9y
bS9tZWRpYXN0cmVhbS9SVENQZWVyQ29ubmVjdGlvbkhhbmRsZXIuY3BwCmluZGV4IDUyYjg2ZTE3
ZjI0NWQzNmI1NmI1OWQ4ZDMzY2M5MzE3Y2EyNzlhYWQuLmY1YTM2YTNiZTQ3ODcyZTBlYzA4M2Nm
MmQwZmFkNzBhOGIwMWVjYWUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL21l
ZGlhc3RyZWFtL1JUQ1BlZXJDb25uZWN0aW9uSGFuZGxlci5jcHAKKysrIGIvU291cmNlL1dlYkNv
cmUvcGxhdGZvcm0vbWVkaWFzdHJlYW0vUlRDUGVlckNvbm5lY3Rpb25IYW5kbGVyLmNwcApAQCAt
MSw1ICsxLDYgQEAKIC8qCiAgKiBDb3B5cmlnaHQgKEMpIDIwMTIgR29vZ2xlIEluYy4gQWxsIHJp
Z2h0cyByZXNlcnZlZC4KKyAqIENvcHlyaWdodCAoQykgMjAxMyBOb2tpYSBDb3Jwb3JhdGlvbiBh
bmQvb3IgaXRzIHN1YnNpZGlhcnkoLWllcykuCiAgKgogICogUmVkaXN0cmlidXRpb24gYW5kIHVz
ZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CiAgKiBtb2RpZmlj
YXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlv
bnMgYXJlCkBAIC0zNCw2ICszNSw4IEBACiAKICNpbmNsdWRlICJSVENQZWVyQ29ubmVjdGlvbkhh
bmRsZXIuaCIKIAorI2luY2x1ZGUgPHd0Zi9OZXZlckRlc3Ryb3llZC5oPgorCiBuYW1lc3BhY2Ug
V2ViQ29yZSB7CiBjbGFzcyBSVENQZWVyQ29ubmVjdGlvbkhhbmRsZXJDbGllbnQ7CiAKQEAgLTQ0
LDYgKzQ3LDMwIEBAIHN0YXRpYyBzdGQ6OnVuaXF1ZV9wdHI8UlRDUGVlckNvbm5lY3Rpb25IYW5k
bGVyPiBjcmVhdGVIYW5kbGVyKFJUQ1BlZXJDb25uZWN0aW9uCiAKIENyZWF0ZVBlZXJDb25uZWN0
aW9uSGFuZGxlciBSVENQZWVyQ29ubmVjdGlvbkhhbmRsZXI6OmNyZWF0ZSA9IGNyZWF0ZUhhbmRs
ZXI7CiAKK2NvbnN0IEF0b21pY1N0cmluZyYgUlRDUGVlckNvbm5lY3Rpb25IYW5kbGVyOjppbmNv
bXBhdGlibGVDb25zdHJhaW50c0Vycm9yTmFtZSgpCit7CisgICAgc3RhdGljIE5ldmVyRGVzdHJv
eWVkPEF0b21pY1N0cmluZz4gaW5jb21wYXRpYmxlQ29uc3RyYWludHMoIkluY29tcGF0aWJsZUNv
bnN0cmFpbnRzRXJyb3IiLCBBdG9taWNTdHJpbmc6OkNvbnN0cnVjdEZyb21MaXRlcmFsKTsKKyAg
ICByZXR1cm4gaW5jb21wYXRpYmxlQ29uc3RyYWludHM7Cit9CisKK2NvbnN0IEF0b21pY1N0cmlu
ZyYgUlRDUGVlckNvbm5lY3Rpb25IYW5kbGVyOjppbnZhbGlkU2Vzc2lvbkRlc2NyaXB0aW9uRXJy
b3JOYW1lKCkKK3sKKyAgICBzdGF0aWMgTmV2ZXJEZXN0cm95ZWQ8QXRvbWljU3RyaW5nPiBpbnZh
bGlkU2Vzc2lvbkRlc2NyaXB0aW9uKCJJbnZhbGlkU2Vzc2lvbkRlc2NyaXB0aW9uRXJyb3IiLCBB
dG9taWNTdHJpbmc6OkNvbnN0cnVjdEZyb21MaXRlcmFsKTsKKyAgICByZXR1cm4gaW52YWxpZFNl
c3Npb25EZXNjcmlwdGlvbjsKK30KKworY29uc3QgQXRvbWljU3RyaW5nJiBSVENQZWVyQ29ubmVj
dGlvbkhhbmRsZXI6OmluY29tcGF0aWJsZVNlc3Npb25EZXNjcmlwdGlvbkVycm9yTmFtZSgpCit7
CisgICAgc3RhdGljIE5ldmVyRGVzdHJveWVkPEF0b21pY1N0cmluZz4gaW5jb21wYXRpYmxlU2Vz
c2lvbkRlc2NyaXB0aW9uKCJJbmNvbXBhdGlibGVTZXNzaW9uRGVzY3JpcHRpb25FcnJvciIsIEF0
b21pY1N0cmluZzo6Q29uc3RydWN0RnJvbUxpdGVyYWwpOworICAgIHJldHVybiBpbmNvbXBhdGli
bGVTZXNzaW9uRGVzY3JpcHRpb247Cit9CisKK2NvbnN0IEF0b21pY1N0cmluZyYgUlRDUGVlckNv
bm5lY3Rpb25IYW5kbGVyOjppbnRlcm5hbEVycm9yTmFtZSgpCit7CisgICAgc3RhdGljIE5ldmVy
RGVzdHJveWVkPEF0b21pY1N0cmluZz4gaW50ZXJuYWwoImludGVybmFsRXJyb3IiLCBBdG9taWNT
dHJpbmc6OkNvbnN0cnVjdEZyb21MaXRlcmFsKTsKKyAgICByZXR1cm4gaW50ZXJuYWw7Cit9CisK
IH0gLy8gbmFtZXNwYWNlIFdlYkNvcmUKIAogI2VuZGlmIC8vIEVOQUJMRShNRURJQV9TVFJFQU0p
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9tZWRpYXN0cmVhbS9SVENQZWVy
Q29ubmVjdGlvbkhhbmRsZXIuaCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL21lZGlhc3RyZWFt
L1JUQ1BlZXJDb25uZWN0aW9uSGFuZGxlci5oCmluZGV4IDAxNjA1YThiMzczZjgzYjlmNGQ5NTll
ZDZlNzgzZWU5YzJkOTg1ODAuLjk1NGFjYjlhMzI1ZGVhNWVjZGMyYjQ2MmRkMjAwNzc1NWFmNmZm
NzYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL21lZGlhc3RyZWFtL1JUQ1Bl
ZXJDb25uZWN0aW9uSGFuZGxlci5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL21lZGlh
c3RyZWFtL1JUQ1BlZXJDb25uZWN0aW9uSGFuZGxlci5oCkBAIC0xLDUgKzEsNiBAQAogLyoKICAq
IENvcHlyaWdodCAoQykgMjAxMiBHb29nbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICog
Q29weXJpZ2h0IChDKSAyMDEzIE5va2lhIENvcnBvcmF0aW9uIGFuZC9vciBpdHMgc3Vic2lkaWFy
eSgtaWVzKS4KICAqCiAgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmlu
YXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKICAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRl
ZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucwpAQCAtNzQsNiArNzUsMTEg
QEAgcHVibGljOgogICAgIHN0YXRpYyBDcmVhdGVQZWVyQ29ubmVjdGlvbkhhbmRsZXIgY3JlYXRl
OwogICAgIHZpcnR1YWwgflJUQ1BlZXJDb25uZWN0aW9uSGFuZGxlcigpIHsgfQogCisgICAgc3Rh
dGljIGNvbnN0IEF0b21pY1N0cmluZyYgaW5jb21wYXRpYmxlQ29uc3RyYWludHNFcnJvck5hbWUo
KTsKKyAgICBzdGF0aWMgY29uc3QgQXRvbWljU3RyaW5nJiBpbnZhbGlkU2Vzc2lvbkRlc2NyaXB0
aW9uRXJyb3JOYW1lKCk7CisgICAgc3RhdGljIGNvbnN0IEF0b21pY1N0cmluZyYgaW5jb21wYXRp
YmxlU2Vzc2lvbkRlc2NyaXB0aW9uRXJyb3JOYW1lKCk7CisgICAgc3RhdGljIGNvbnN0IEF0b21p
Y1N0cmluZyYgaW50ZXJuYWxFcnJvck5hbWUoKTsKKwogICAgIHZpcnR1YWwgYm9vbCBpbml0aWFs
aXplKFBhc3NSZWZQdHI8UlRDQ29uZmlndXJhdGlvbj4sIFBhc3NSZWZQdHI8TWVkaWFDb25zdHJh
aW50cz4pID0gMDsKIAogICAgIHZpcnR1YWwgdm9pZCBjcmVhdGVPZmZlcihQYXNzUmVmUHRyPFJU
Q1Nlc3Npb25EZXNjcmlwdGlvblJlcXVlc3Q+LCBQYXNzUmVmUHRyPE1lZGlhQ29uc3RyYWludHM+
KSA9IDA7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9tb2NrL1JUQ05vdGlm
aWVyc01vY2suY3BwIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbW9jay9SVENOb3RpZmllcnNN
b2NrLmNwcAppbmRleCAwMjNmNDYzNDlkZDc0ZWYyMGY1MzA1M2RjNmQ3ODE0MzhiOTVhMmJkLi4w
YzgwNjU5NmM3YmMwMTY2Njc4NTgyY2UzZDVmNDA3YzEwMDcyMjBiIDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViQ29yZS9wbGF0Zm9ybS9tb2NrL1JUQ05vdGlmaWVyc01vY2suY3BwCisrKyBiL1NvdXJj
ZS9XZWJDb3JlL3BsYXRmb3JtL21vY2svUlRDTm90aWZpZXJzTW9jay5jcHAKQEAgLTI5LDYgKzI5
LDcgQEAKIAogI2luY2x1ZGUgIlJUQ05vdGlmaWVyc01vY2suaCIKIAorI2luY2x1ZGUgIkRPTUVy
cm9yLmgiCiAjaW5jbHVkZSAiUlRDRGF0YUNoYW5uZWxIYW5kbGVyTW9jay5oIgogI2luY2x1ZGUg
IlJUQ1Nlc3Npb25EZXNjcmlwdGlvbkRlc2NyaXB0b3IuaCIKICNpbmNsdWRlICJSVENTZXNzaW9u
RGVzY3JpcHRpb25SZXF1ZXN0LmgiCkBAIC0zNiw5ICszNywxMCBAQAogCiBuYW1lc3BhY2UgV2Vi
Q29yZSB7CiAKLVNlc3Npb25SZXF1ZXN0Tm90aWZpZXI6OlNlc3Npb25SZXF1ZXN0Tm90aWZpZXIo
UGFzc1JlZlB0cjxSVENTZXNzaW9uRGVzY3JpcHRpb25SZXF1ZXN0PiByZXF1ZXN0LCBQYXNzUmVm
UHRyPFJUQ1Nlc3Npb25EZXNjcmlwdGlvbkRlc2NyaXB0b3I+IGRlc2NyaXB0b3IpCitTZXNzaW9u
UmVxdWVzdE5vdGlmaWVyOjpTZXNzaW9uUmVxdWVzdE5vdGlmaWVyKFBhc3NSZWZQdHI8UlRDU2Vz
c2lvbkRlc2NyaXB0aW9uUmVxdWVzdD4gcmVxdWVzdCwgUGFzc1JlZlB0cjxSVENTZXNzaW9uRGVz
Y3JpcHRpb25EZXNjcmlwdG9yPiBkZXNjcmlwdG9yLCBjb25zdCBTdHJpbmcmIGVycm9yTmFtZSkK
ICAgICA6IG1fcmVxdWVzdChyZXF1ZXN0KQogICAgICwgbV9kZXNjcmlwdG9yKGRlc2NyaXB0b3Ip
CisgICAgLCBtX2Vycm9yTmFtZShlcnJvck5hbWUpCiB7CiB9CiAKQEAgLTQ3LDEyICs0OSwxMyBA
QCB2b2lkIFNlc3Npb25SZXF1ZXN0Tm90aWZpZXI6OmZpcmUoKQogICAgIGlmIChtX2Rlc2NyaXB0
b3IpCiAgICAgICAgIG1fcmVxdWVzdC0+cmVxdWVzdFN1Y2NlZWRlZChtX2Rlc2NyaXB0b3IpOwog
ICAgIGVsc2UKLSAgICAgICAgbV9yZXF1ZXN0LT5yZXF1ZXN0RmFpbGVkKCJURVNUX0VSUk9SIik7
CisgICAgICAgIG1fcmVxdWVzdC0+cmVxdWVzdEZhaWxlZChtX2Vycm9yTmFtZSk7CiB9CiAKLVZv
aWRSZXF1ZXN0Tm90aWZpZXI6OlZvaWRSZXF1ZXN0Tm90aWZpZXIoUGFzc1JlZlB0cjxSVENWb2lk
UmVxdWVzdD4gcmVxdWVzdCwgYm9vbCBzdWNjZXNzKQorVm9pZFJlcXVlc3ROb3RpZmllcjo6Vm9p
ZFJlcXVlc3ROb3RpZmllcihQYXNzUmVmUHRyPFJUQ1ZvaWRSZXF1ZXN0PiByZXF1ZXN0LCBib29s
IHN1Y2Nlc3MsIGNvbnN0IFN0cmluZyYgZXJyb3JOYW1lKQogICAgIDogbV9yZXF1ZXN0KHJlcXVl
c3QpCiAgICAgLCBtX3N1Y2Nlc3Moc3VjY2VzcykKKyAgICAsIG1fZXJyb3JOYW1lKGVycm9yTmFt
ZSkKIHsKIH0KIApAQCAtNjEsNyArNjQsNyBAQCB2b2lkIFZvaWRSZXF1ZXN0Tm90aWZpZXI6OmZp
cmUoKQogICAgIGlmIChtX3N1Y2Nlc3MpCiAgICAgICAgIG1fcmVxdWVzdC0+cmVxdWVzdFN1Y2Nl
ZWRlZCgpOwogICAgIGVsc2UKLSAgICAgICAgbV9yZXF1ZXN0LT5yZXF1ZXN0RmFpbGVkKCJURVNU
X0VSUk9SIik7CisgICAgICAgIG1fcmVxdWVzdC0+cmVxdWVzdEZhaWxlZChtX2Vycm9yTmFtZSk7
CiB9CiAKIEljZUNvbm5lY3Rpb25Ob3RpZmllcjo6SWNlQ29ubmVjdGlvbk5vdGlmaWVyKFJUQ1Bl
ZXJDb25uZWN0aW9uSGFuZGxlckNsaWVudCogY2xpZW50LCBSVENQZWVyQ29ubmVjdGlvbkhhbmRs
ZXJDbGllbnQ6OkljZUNvbm5lY3Rpb25TdGF0ZSBjb25uZWN0aW9uU3RhdGUsIFJUQ1BlZXJDb25u
ZWN0aW9uSGFuZGxlckNsaWVudDo6SWNlR2F0aGVyaW5nU3RhdGUgZ2F0aGVyaW5nU3RhdGUpCmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9tb2NrL1JUQ05vdGlmaWVyc01vY2su
aCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL21vY2svUlRDTm90aWZpZXJzTW9jay5oCmluZGV4
IDk1OTdhZmMxOWU2MzZlNDkxMWJkYWQ1N2JmZDA5NTU2YWFmNzg3ODcuLmVlMDVjMjRiZWRkMTFk
Yzg0MDg4ZjBhMGIwY2ExZmMyZmI0YjZjMzggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3Bs
YXRmb3JtL21vY2svUlRDTm90aWZpZXJzTW9jay5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRm
b3JtL21vY2svUlRDTm90aWZpZXJzTW9jay5oCkBAIC0zMyw2ICszMyw3IEBACiAjaW5jbHVkZSAi
VGltZXJFdmVudEJhc2VkTW9jay5oIgogI2luY2x1ZGUgPHd0Zi9QYXNzUmVmUHRyLmg+CiAjaW5j
bHVkZSA8d3RmL1JlZlB0ci5oPgorI2luY2x1ZGUgPHd0Zi90ZXh0L1dURlN0cmluZy5oPgogCiBu
YW1lc3BhY2UgV2ViQ29yZSB7CiAKQEAgLTQyLDI0ICs0MywyNiBAQCBjbGFzcyBSVENWb2lkUmVx
dWVzdDsKIAogY2xhc3MgU2Vzc2lvblJlcXVlc3ROb3RpZmllciA6IHB1YmxpYyBNb2NrTm90aWZp
ZXIgewogcHVibGljOgotICAgIFNlc3Npb25SZXF1ZXN0Tm90aWZpZXIoUGFzc1JlZlB0cjxSVENT
ZXNzaW9uRGVzY3JpcHRpb25SZXF1ZXN0PiwgUGFzc1JlZlB0cjxSVENTZXNzaW9uRGVzY3JpcHRp
b25EZXNjcmlwdG9yPik7CisgICAgU2Vzc2lvblJlcXVlc3ROb3RpZmllcihQYXNzUmVmUHRyPFJU
Q1Nlc3Npb25EZXNjcmlwdGlvblJlcXVlc3Q+LCBQYXNzUmVmUHRyPFJUQ1Nlc3Npb25EZXNjcmlw
dGlvbkRlc2NyaXB0b3I+LCBjb25zdCBTdHJpbmcmID0gZW1wdHlTdHJpbmcoKSk7CiAKICAgICB2
b2lkIGZpcmUoKSBPVkVSUklERTsKIAogcHJpdmF0ZToKICAgICBSZWZQdHI8UlRDU2Vzc2lvbkRl
c2NyaXB0aW9uUmVxdWVzdD4gbV9yZXF1ZXN0OwogICAgIFJlZlB0cjxSVENTZXNzaW9uRGVzY3Jp
cHRpb25EZXNjcmlwdG9yPiBtX2Rlc2NyaXB0b3I7CisgICAgU3RyaW5nIG1fZXJyb3JOYW1lOwog
fTsKIAogY2xhc3MgVm9pZFJlcXVlc3ROb3RpZmllciA6IHB1YmxpYyBNb2NrTm90aWZpZXIgewog
cHVibGljOgotICAgIFZvaWRSZXF1ZXN0Tm90aWZpZXIoUGFzc1JlZlB0cjxSVENWb2lkUmVxdWVz
dD4sIGJvb2wpOworICAgIFZvaWRSZXF1ZXN0Tm90aWZpZXIoUGFzc1JlZlB0cjxSVENWb2lkUmVx
dWVzdD4sIGJvb2wsIGNvbnN0IFN0cmluZyYgPSBlbXB0eVN0cmluZygpKTsKIAogICAgIHZvaWQg
ZmlyZSgpIE9WRVJSSURFOwogCiBwcml2YXRlOgogICAgIFJlZlB0cjxSVENWb2lkUmVxdWVzdD4g
bV9yZXF1ZXN0OwogICAgIGJvb2wgbV9zdWNjZXNzOworICAgIFN0cmluZyBtX2Vycm9yTmFtZTsK
IH07CiAKIGNsYXNzIEljZUNvbm5lY3Rpb25Ob3RpZmllciA6IHB1YmxpYyBNb2NrTm90aWZpZXIg
ewpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbW9jay9SVENQZWVyQ29ubmVj
dGlvbkhhbmRsZXJNb2NrLmNwcCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL21vY2svUlRDUGVl
ckNvbm5lY3Rpb25IYW5kbGVyTW9jay5jcHAKaW5kZXggZDVhMmE3OGVkNDhjOGUwYzczYzYxZWM2
MzdkNjgyNjliODI4MTQ2NC4uNmMyZDU1YjZmY2M2Mjk5ODY1ZjA4ZmFiZGI0MWVhMmEyYzE2Njlj
NCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbW9jay9SVENQZWVyQ29ubmVj
dGlvbkhhbmRsZXJNb2NrLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9tb2NrL1JU
Q1BlZXJDb25uZWN0aW9uSGFuZGxlck1vY2suY3BwCkBAIC02Nyw3ICs2Nyw3IEBAIHZvaWQgUlRD
UGVlckNvbm5lY3Rpb25IYW5kbGVyTW9jazo6Y3JlYXRlT2ZmZXIoUGFzc1JlZlB0cjxSVENTZXNz
aW9uRGVzY3JpcHRpb25SCiAgICAgU3RyaW5nIHN1Y2NlZWRWYWx1ZTsKICAgICBSZWZQdHI8U2Vz
c2lvblJlcXVlc3ROb3RpZmllcj4gbm90aWZpZXI7CiAgICAgaWYgKGNvbnN0cmFpbnRzLT5nZXRN
YW5kYXRvcnlDb25zdHJhaW50VmFsdWUoInN1Y2NlZWQiLCBzdWNjZWVkVmFsdWUpICYmIHN1Y2Nl
ZWRWYWx1ZSA9PSAiZmFsc2UiKQotICAgICAgICBub3RpZmllciA9IGFkb3B0UmVmKG5ldyBTZXNz
aW9uUmVxdWVzdE5vdGlmaWVyKHJlcXVlc3QsIDApKTsKKyAgICAgICAgbm90aWZpZXIgPSBhZG9w
dFJlZihuZXcgU2Vzc2lvblJlcXVlc3ROb3RpZmllcihyZXF1ZXN0LCAwLCBSVENQZWVyQ29ubmVj
dGlvbkhhbmRsZXI6OmluY29tcGF0aWJsZUNvbnN0cmFpbnRzRXJyb3JOYW1lKCkpKTsKICAgICBl
bHNlCiAgICAgICAgIG5vdGlmaWVyID0gYWRvcHRSZWYobmV3IFNlc3Npb25SZXF1ZXN0Tm90aWZp
ZXIocmVxdWVzdCwgUlRDU2Vzc2lvbkRlc2NyaXB0aW9uRGVzY3JpcHRvcjo6Y3JlYXRlKCJvZmZl
ciIsICJsb2NhbCIpKSk7CiAKQEAgLTgwLDcgKzgwLDcgQEAgdm9pZCBSVENQZWVyQ29ubmVjdGlv
bkhhbmRsZXJNb2NrOjpjcmVhdGVBbnN3ZXIoUGFzc1JlZlB0cjxSVENTZXNzaW9uRGVzY3JpcHRp
b24KICAgICAvLyBXZSBjYW4gb25seSBjcmVhdGUgYW4gYW5zd2VyIGlmIHdlIGhhdmUgYWxyZWFk
eSBoYWQgYW4gb2ZmZXIgYW5kIHRoZSByZW1vdGUgc2Vzc2lvbiBkZXNjcmlwdGlvbiBpcyBzdG9y
ZWQuCiAgICAgU3RyaW5nIHN1Y2NlZWRWYWx1ZTsKICAgICBpZiAoY29uc3RyYWludHMtPmdldE1h
bmRhdG9yeUNvbnN0cmFpbnRWYWx1ZSgic3VjY2VlZCIsIHN1Y2NlZWRWYWx1ZSkgJiYgc3VjY2Vl
ZFZhbHVlID09ICJmYWxzZSIpCi0gICAgICAgIG5vdGlmaWVyID0gYWRvcHRSZWYobmV3IFNlc3Np
b25SZXF1ZXN0Tm90aWZpZXIocmVxdWVzdCwgMCkpOworICAgICAgICBub3RpZmllciA9IGFkb3B0
UmVmKG5ldyBTZXNzaW9uUmVxdWVzdE5vdGlmaWVyKHJlcXVlc3QsIDAsIFJUQ1BlZXJDb25uZWN0
aW9uSGFuZGxlcjo6aW5jb21wYXRpYmxlQ29uc3RyYWludHNFcnJvck5hbWUoKSkpOwogICAgIGVs
c2UKICAgICAgICAgbm90aWZpZXIgPSBhZG9wdFJlZihuZXcgU2Vzc2lvblJlcXVlc3ROb3RpZmll
cihyZXF1ZXN0LCBSVENTZXNzaW9uRGVzY3JpcHRpb25EZXNjcmlwdG9yOjpjcmVhdGUoImFuc3dl
ciIsICJsb2NhbCIpKSk7CiAKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL0NoYW5nZUxvZyBiL0xh
eW91dFRlc3RzL0NoYW5nZUxvZwppbmRleCA3NjIyY2QwZmI4NjAyZDA2NTBmMGRlNzFhOTYzMmQ5
ODMyMzEyYWQwLi43MWE0OWU3ZjRiYTkwOTBiOTZlOTljM2I0ZWYzNTkyNGQ0MTc3MTcwIDEwMDY0
NAotLS0gYS9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKKysrIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9n
CkBAIC0xLDUgKzEsMjAgQEAKIDIwMTMtMTItMTEgIFRoaWFnbyBkZSBCYXJyb3MgTGFjZXJkYSAg
PHRoaWFnby5sYWNlcmRhQG9wZW5ib3NzYS5vcmc+CiAKKyAgICAgICAgQWRkaW5nIFJUQ1BlZXJD
b25uZWN0aW9uRXJyb3JDYWxsYmFjaworICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9z
aG93X2J1Zy5jZ2k/aWQ9MTI1NTc0CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BT
ISkuCisKKyAgICAgICAgQWNjb3JkaW5nIHRvIHRoZSBzcGVjIHRoZXJlIHNob3VsZCBiZSBhIFJU
Q1BlZXJDb25uZWN0aW9uRXJyb3JDYWxsYmFjayBmdW5jdGlvbiB0eXBlIGZvciBjcmVhdGVPZmZl
ci9BbnN3ZXIsCisgICAgICAgIHNldExvY2FsL1JlbW90ZURlc2NyaXB0aW9uIGFuZCB1cGRhdGVJ
Y2UgZnVuY3Rpb24gY2FsbHMuIFRoaXMgY2FsbGJhY2sgbXVzdCBoYW5kbGUgYSBET01FcnJvciBv
YmplY3QuCisKKyAgICAgICAgKiBmYXN0L21lZGlhc3RyZWFtL1JUQ1BlZXJDb25uZWN0aW9uLWNy
ZWF0ZUFuc3dlci1leHBlY3RlZC50eHQ6CisgICAgICAgICogZmFzdC9tZWRpYXN0cmVhbS9SVENQ
ZWVyQ29ubmVjdGlvbi1jcmVhdGVBbnN3ZXIuaHRtbDoKKyAgICAgICAgKiBmYXN0L21lZGlhc3Ry
ZWFtL1JUQ1BlZXJDb25uZWN0aW9uLWNyZWF0ZU9mZmVyLWV4cGVjdGVkLnR4dDoKKyAgICAgICAg
KiBmYXN0L21lZGlhc3RyZWFtL1JUQ1BlZXJDb25uZWN0aW9uLWNyZWF0ZU9mZmVyLmh0bWw6CisK
KzIwMTMtMTItMTEgIFRoaWFnbyBkZSBCYXJyb3MgTGFjZXJkYSAgPHRoaWFnby5sYWNlcmRhQG9w
ZW5ib3NzYS5vcmc+CisKICAgICAgICAgSW1wcm92aW5nIGNyZWF0ZU9mZmVyIGFuZCBjcmVhdGVB
bnN3ZXIgTGF5b3V0VGVzdHMKICAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19i
dWcuY2dpP2lkPTEyNTU2OAogCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L21lZGlhc3Ry
ZWFtL1JUQ1BlZXJDb25uZWN0aW9uLWNyZWF0ZUFuc3dlci1leHBlY3RlZC50eHQgYi9MYXlvdXRU
ZXN0cy9mYXN0L21lZGlhc3RyZWFtL1JUQ1BlZXJDb25uZWN0aW9uLWNyZWF0ZUFuc3dlci1leHBl
Y3RlZC50eHQKaW5kZXggZThjYTY0NjFlMGJmMTYwZWZjYTRiNDk5NzFjMDNkMzdkMDE3ZTcxMy4u
OGUwMWM5MjllNTRmMTZmNjNhMDBmMDI3NWJmMDU0ZDcxMGFjYmJiYSAxMDA2NDQKLS0tIGEvTGF5
b3V0VGVzdHMvZmFzdC9tZWRpYXN0cmVhbS9SVENQZWVyQ29ubmVjdGlvbi1jcmVhdGVBbnN3ZXIt
ZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL2Zhc3QvbWVkaWFzdHJlYW0vUlRDUGVlckNv
bm5lY3Rpb24tY3JlYXRlQW5zd2VyLWV4cGVjdGVkLnR4dApAQCAtOSw2ICs5LDcgQEAgUEFTUyBw
Yy5zZXRSZW1vdGVEZXNjcmlwdGlvbihzZXNzaW9uRGVzY3JpcHRpb24sIHNldERlc2NyaXB0aW9u
U3VjY2VlZGVkLCBzZXREZXMKIFBBU1Mgc2V0UmVtb3RlRGVzY3JpcHRpb24gc3VjY2VlZGVkLgog
UEFTUyBwYy5jcmVhdGVBbnN3ZXIocmVxdWVzdFN1Y2NlZWRlZDIsIHJlcXVlc3RGYWlsZWQyLCB7
bWFuZGF0b3J5Onsic3VjY2VlZCI6ZmFsc2V9fSk7IGRpZCBub3QgdGhyb3cgZXhjZXB0aW9uLgog
UEFTUyBjcmVhdGVBbnN3ZXIgcmVxdWVzdCBmYWlsZWQuCitQQVNTIGVycm9yUmVhc29uLm5hbWUg
aXMgIkluY29tcGF0aWJsZUNvbnN0cmFpbnRzRXJyb3IiCiBQQVNTIHBjLmNyZWF0ZUFuc3dlcihy
ZXF1ZXN0U3VjY2VlZGVkMywgcmVxdWVzdEZhaWxlZDMpOyBkaWQgbm90IHRocm93IGV4Y2VwdGlv
bi4KIFBBU1MgY3JlYXRlQW5zd2VyIHJlcXVlc3Qgc3VjY2VlZGVkLgogUEFTUyBzZXNzaW9uRGVz
Y3JpcHRpb24udHlwZSBpcyAiYW5zd2VyIgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9t
ZWRpYXN0cmVhbS9SVENQZWVyQ29ubmVjdGlvbi1jcmVhdGVBbnN3ZXIuaHRtbCBiL0xheW91dFRl
c3RzL2Zhc3QvbWVkaWFzdHJlYW0vUlRDUGVlckNvbm5lY3Rpb24tY3JlYXRlQW5zd2VyLmh0bWwK
aW5kZXggZGIzNjEzYmQyMTYyOTY5YTU3ODljYjZiZDRhZWYzODAyMzBhOGUwZi4uOTNmNDk1ZDUx
MzExNTc5Y2VmZWRhMDZhOWY2MTg1YzhlMDhhYTY3MCAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMv
ZmFzdC9tZWRpYXN0cmVhbS9SVENQZWVyQ29ubmVjdGlvbi1jcmVhdGVBbnN3ZXIuaHRtbAorKysg
Yi9MYXlvdXRUZXN0cy9mYXN0L21lZGlhc3RyZWFtL1JUQ1BlZXJDb25uZWN0aW9uLWNyZWF0ZUFu
c3dlci5odG1sCkBAIC00MCw2ICs0MCw5IEBACiAgICAgICAgICAgICB7CiAgICAgICAgICAgICAg
ICAgdGVzdFBhc3NlZCgnY3JlYXRlQW5zd2VyIHJlcXVlc3QgZmFpbGVkLicpOwogCisgICAgICAg
ICAgICAgICAgZXJyb3JSZWFzb24gPSByZWFzb247CisgICAgICAgICAgICAgICAgc2hvdWxkQmUo
J2Vycm9yUmVhc29uLm5hbWUnLCAnIkluY29tcGF0aWJsZUNvbnN0cmFpbnRzRXJyb3IiJyk7CisK
ICAgICAgICAgICAgICAgICBzaG91bGROb3RUaHJvdygncGMuY3JlYXRlQW5zd2VyKHJlcXVlc3RT
dWNjZWVkZWQzLCByZXF1ZXN0RmFpbGVkMyk7Jyk7CiAgICAgICAgICAgICB9CiAKZGlmZiAtLWdp
dCBhL0xheW91dFRlc3RzL2Zhc3QvbWVkaWFzdHJlYW0vUlRDUGVlckNvbm5lY3Rpb24tY3JlYXRl
T2ZmZXItZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvZmFzdC9tZWRpYXN0cmVhbS9SVENQZWVy
Q29ubmVjdGlvbi1jcmVhdGVPZmZlci1leHBlY3RlZC50eHQKaW5kZXggMTQ4NjczMDViOTE3YmFl
MTM3ZGJkYWU1ODJkYjQ0YTNiMmY0YjFkNy4uNTVhZWVkODlkNmI2YTg5NWU4NDUxNTJlNTJkZjc0
ZGY3NzMyODhiZSAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvZmFzdC9tZWRpYXN0cmVhbS9SVENQ
ZWVyQ29ubmVjdGlvbi1jcmVhdGVPZmZlci1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMv
ZmFzdC9tZWRpYXN0cmVhbS9SVENQZWVyQ29ubmVjdGlvbi1jcmVhdGVPZmZlci1leHBlY3RlZC50
eHQKQEAgLTgsNyArOCw3IEBAIFBBU1MgY3JlYXRlT2ZmZXIgcmVxdWVzdCBzdWNjZWVkZWQuCiBQ
QVNTIHNlc3Npb25EZXNjcmlwdGlvbi50eXBlIGlzICJvZmZlciIKIFBBU1MgcGMuY3JlYXRlT2Zm
ZXIocmVxdWVzdFN1Y2NlZWRlZDIsIHJlcXVlc3RGYWlsZWQyLCB7bWFuZGF0b3J5Onsic3VjY2Vl
ZCI6ZmFsc2V9fSk7IGRpZCBub3QgdGhyb3cgZXhjZXB0aW9uLgogUEFTUyBjcmVhdGVPZmZlciBy
ZXF1ZXN0IGZhaWxlZC4KLVBBU1MgZXJyb3JSZWFzb24gaXMgIlRFU1RfRVJST1IiCitQQVNTIGVy
cm9yUmVhc29uLm5hbWUgaXMgIkluY29tcGF0aWJsZUNvbnN0cmFpbnRzRXJyb3IiCiBQQVNTIHBj
LmNyZWF0ZU9mZmVyKHJlcXVlc3RTdWNjZWVkZWQzLCByZXF1ZXN0RmFpbGVkMSk7IGRpZCBub3Qg
dGhyb3cgZXhjZXB0aW9uLgogUEFTUyBjcmVhdGVPZmZlciByZXF1ZXN0IHN1Y2NlZWRlZC4KIFBB
U1Mgc2Vzc2lvbkRlc2NyaXB0aW9uLnR5cGUgaXMgIm9mZmVyIgpkaWZmIC0tZ2l0IGEvTGF5b3V0
VGVzdHMvZmFzdC9tZWRpYXN0cmVhbS9SVENQZWVyQ29ubmVjdGlvbi1jcmVhdGVPZmZlci5odG1s
IGIvTGF5b3V0VGVzdHMvZmFzdC9tZWRpYXN0cmVhbS9SVENQZWVyQ29ubmVjdGlvbi1jcmVhdGVP
ZmZlci5odG1sCmluZGV4IDJkNmU4ZTA2MWQ0ZGZkMWFmZTdiMWE1MTY4ZDA3NDkwMWRkYjI0Njku
LmQ2ZDc3M2VkMDhiYzU5YzVjNjA1OGU5MGVhYjY1NTVlOWI5NThiY2IgMTAwNjQ0Ci0tLSBhL0xh
eW91dFRlc3RzL2Zhc3QvbWVkaWFzdHJlYW0vUlRDUGVlckNvbm5lY3Rpb24tY3JlYXRlT2ZmZXIu
aHRtbAorKysgYi9MYXlvdXRUZXN0cy9mYXN0L21lZGlhc3RyZWFtL1JUQ1BlZXJDb25uZWN0aW9u
LWNyZWF0ZU9mZmVyLmh0bWwKQEAgLTIzLDcgKzIzLDcgQEAKICAgICAgICAgICAgICAgICB0ZXN0
UGFzc2VkKCdjcmVhdGVPZmZlciByZXF1ZXN0IGZhaWxlZC4nKTsKIAogICAgICAgICAgICAgICAg
IGVycm9yUmVhc29uID0gcmVhc29uOwotICAgICAgICAgICAgICAgIHNob3VsZEJlKCdlcnJvclJl
YXNvbicsICciVEVTVF9FUlJPUiInKTsKKyAgICAgICAgICAgICAgICBzaG91bGRCZSgnZXJyb3JS
ZWFzb24ubmFtZScsICciSW5jb21wYXRpYmxlQ29uc3RyYWludHNFcnJvciInKTsKIAogICAgICAg
ICAgICAgICAgIHNob3VsZE5vdFRocm93KCdwYy5jcmVhdGVPZmZlcihyZXF1ZXN0U3VjY2VlZGVk
MywgcmVxdWVzdEZhaWxlZDEpOycpOwogICAgICAgICAgICAgfQo=
</data>
<flag name="review"
          id="242546"
          type_id="1"
          status="-"
          setter="pnormand"
    />
    <flag name="commit-queue"
          id="242547"
          type_id="3"
          status="-"
          setter="buildbot"
    />
          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>218972</attachid>
            <date>2013-12-11 09:20:37 -0800</date>
            <delta_ts>2013-12-11 11:02:26 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-125574-20131211182031.patch</filename>
            <type>text/plain</type>
            <size>54005</size>
            <attacher name="Philippe Normand">pnormand</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTYwNDM3CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggOWJiZWVmZTlmMGM2ZjEw
YTMyZTM5OGZkNWRkMTA1MmM1MTZlMDc1NC4uYmU5MjBhZjc1ZTJhM2Q4NmIzMzVhZTY3NDA4MjRj
OTg0N2ViODA4MiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSw1ICsxLDU3IEBACiAyMDEzLTEyLTExICBUaGlh
Z28gZGUgQmFycm9zIExhY2VyZGEgIDx0aGlhZ28ubGFjZXJkYUBvcGVuYm9zc2Eub3JnPgogCisg
ICAgICAgIEFkZGluZyBSVENQZWVyQ29ubmVjdGlvbkVycm9yQ2FsbGJhY2sKKyAgICAgICAgaHR0
cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTEyNTU3NAorCisgICAgICAgIFJl
dmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIEFjY29yZGluZyB0byB0aGUgc3Bl
YyB0aGVyZSBzaG91bGQgYmUgYSBSVENQZWVyQ29ubmVjdGlvbkVycm9yQ2FsbGJhY2sgZnVuY3Rp
b24gdHlwZSBmb3IgY3JlYXRlT2ZmZXIvQW5zd2VyLAorICAgICAgICBzZXRMb2NhbC9SZW1vdGVE
ZXNjcmlwdGlvbiBhbmQgdXBkYXRlSWNlIGZ1bmN0aW9uIGNhbGxzLiBUaGlzIGNhbGxiYWNrIG11
c3QgaGFuZGxlIGEgRE9NRXJyb3Igb2JqZWN0LgorCisgICAgICAgIEV4aXN0aW5nIHRlc3RzIHdl
cmUgdXBkYXRlZC4KKworICAgICAgICAqIENNYWtlTGlzdHMudHh0OgorICAgICAgICAqIEdOVW1h
a2VmaWxlLmxpc3QuYW06CisgICAgICAgICogTW9kdWxlcy9tZWRpYXN0cmVhbS9SVENQZWVyQ29u
bmVjdGlvbi5jcHA6CisgICAgICAgIChXZWJDb3JlOjpSVENQZWVyQ29ubmVjdGlvbjo6Y3JlYXRl
T2ZmZXIpOgorICAgICAgICAoV2ViQ29yZTo6UlRDUGVlckNvbm5lY3Rpb246OmNyZWF0ZUFuc3dl
cik6CisgICAgICAgIChXZWJDb3JlOjpSVENQZWVyQ29ubmVjdGlvbjo6c2V0TG9jYWxEZXNjcmlw
dGlvbik6CisgICAgICAgIChXZWJDb3JlOjpSVENQZWVyQ29ubmVjdGlvbjo6c2V0UmVtb3RlRGVz
Y3JpcHRpb24pOgorICAgICAgICAoV2ViQ29yZTo6UlRDUGVlckNvbm5lY3Rpb246OmFkZEljZUNh
bmRpZGF0ZSk6CisgICAgICAgICogTW9kdWxlcy9tZWRpYXN0cmVhbS9SVENFcnJvckNhbGxiYWNr
Lmg6IFJlbW92ZWQuCisgICAgICAgICogTW9kdWxlcy9tZWRpYXN0cmVhbS9SVENFcnJvckNhbGxi
YWNrLmlkbDogUmVtb3ZlZC4KKyAgICAgICAgKiBNb2R1bGVzL21lZGlhc3RyZWFtL1JUQ1BlZXJD
b25uZWN0aW9uLmg6CisgICAgICAgICogTW9kdWxlcy9tZWRpYXN0cmVhbS9SVENQZWVyQ29ubmVj
dGlvbi5pZGw6CisgICAgICAgICogTW9kdWxlcy9tZWRpYXN0cmVhbS9SVENQZWVyQ29ubmVjdGlv
bkVycm9yQ2FsbGJhY2suaDogQWRkZWQuCisgICAgICAgICogTW9kdWxlcy9tZWRpYXN0cmVhbS9S
VENQZWVyQ29ubmVjdGlvbkVycm9yQ2FsbGJhY2suaWRsOiBBZGRlZC4KKyAgICAgICAgKiBNb2R1
bGVzL21lZGlhc3RyZWFtL1JUQ1Nlc3Npb25EZXNjcmlwdGlvblJlcXVlc3RJbXBsLmNwcDoKKyAg
ICAgICAgKFdlYkNvcmU6OlJUQ1Nlc3Npb25EZXNjcmlwdGlvblJlcXVlc3RJbXBsOjpjcmVhdGUp
OgorICAgICAgICAoV2ViQ29yZTo6UlRDU2Vzc2lvbkRlc2NyaXB0aW9uUmVxdWVzdEltcGw6OlJU
Q1Nlc3Npb25EZXNjcmlwdGlvblJlcXVlc3RJbXBsKToKKyAgICAgICAgKFdlYkNvcmU6OlJUQ1Nl
c3Npb25EZXNjcmlwdGlvblJlcXVlc3RJbXBsOjpyZXF1ZXN0RmFpbGVkKToKKyAgICAgICAgKiBN
b2R1bGVzL21lZGlhc3RyZWFtL1JUQ1Nlc3Npb25EZXNjcmlwdGlvblJlcXVlc3RJbXBsLmg6Cisg
ICAgICAgICogTW9kdWxlcy9tZWRpYXN0cmVhbS9SVENWb2lkUmVxdWVzdEltcGwuY3BwOgorICAg
ICAgICAoV2ViQ29yZTo6UlRDVm9pZFJlcXVlc3RJbXBsOjpjcmVhdGUpOgorICAgICAgICAoV2Vi
Q29yZTo6UlRDVm9pZFJlcXVlc3RJbXBsOjpSVENWb2lkUmVxdWVzdEltcGwpOgorICAgICAgICAo
V2ViQ29yZTo6UlRDVm9pZFJlcXVlc3RJbXBsOjpyZXF1ZXN0RmFpbGVkKToKKyAgICAgICAgKiBN
b2R1bGVzL21lZGlhc3RyZWFtL1JUQ1ZvaWRSZXF1ZXN0SW1wbC5oOgorICAgICAgICAqIHBsYXRm
b3JtL21lZGlhc3RyZWFtL1JUQ1BlZXJDb25uZWN0aW9uSGFuZGxlci5jcHA6CisgICAgICAgIChX
ZWJDb3JlOjpSVENQZWVyQ29ubmVjdGlvbkhhbmRsZXI6OmluY29tcGF0aWJsZUNvbnN0cmFpbnRz
RXJyb3JOYW1lKToKKyAgICAgICAgKFdlYkNvcmU6OlJUQ1BlZXJDb25uZWN0aW9uSGFuZGxlcjo6
aW52YWxpZFNlc3Npb25EZXNjcmlwdGlvbkVycm9yTmFtZSk6CisgICAgICAgIChXZWJDb3JlOjpS
VENQZWVyQ29ubmVjdGlvbkhhbmRsZXI6OmluY29tcGF0aWJsZVNlc3Npb25EZXNjcmlwdGlvbkVy
cm9yTmFtZSk6CisgICAgICAgIChXZWJDb3JlOjpSVENQZWVyQ29ubmVjdGlvbkhhbmRsZXI6Omlu
dGVybmFsRXJyb3JOYW1lKToKKyAgICAgICAgKiBwbGF0Zm9ybS9tZWRpYXN0cmVhbS9SVENQZWVy
Q29ubmVjdGlvbkhhbmRsZXIuaDoKKyAgICAgICAgKiBwbGF0Zm9ybS9tb2NrL1JUQ05vdGlmaWVy
c01vY2suY3BwOgorICAgICAgICAoV2ViQ29yZTo6U2Vzc2lvblJlcXVlc3ROb3RpZmllcjo6U2Vz
c2lvblJlcXVlc3ROb3RpZmllcik6CisgICAgICAgIChXZWJDb3JlOjpTZXNzaW9uUmVxdWVzdE5v
dGlmaWVyOjpmaXJlKToKKyAgICAgICAgKFdlYkNvcmU6OlZvaWRSZXF1ZXN0Tm90aWZpZXI6OlZv
aWRSZXF1ZXN0Tm90aWZpZXIpOgorICAgICAgICAoV2ViQ29yZTo6Vm9pZFJlcXVlc3ROb3RpZmll
cjo6ZmlyZSk6CisgICAgICAgICogcGxhdGZvcm0vbW9jay9SVENOb3RpZmllcnNNb2NrLmg6Cisg
ICAgICAgICogcGxhdGZvcm0vbW9jay9SVENQZWVyQ29ubmVjdGlvbkhhbmRsZXJNb2NrLmNwcDoK
KyAgICAgICAgKFdlYkNvcmU6OlJUQ1BlZXJDb25uZWN0aW9uSGFuZGxlck1vY2s6OmNyZWF0ZU9m
ZmVyKToKKyAgICAgICAgKFdlYkNvcmU6OlJUQ1BlZXJDb25uZWN0aW9uSGFuZGxlck1vY2s6OmNy
ZWF0ZUFuc3dlcik6CisKKzIwMTMtMTItMTEgIFRoaWFnbyBkZSBCYXJyb3MgTGFjZXJkYSAgPHRo
aWFnby5sYWNlcmRhQG9wZW5ib3NzYS5vcmc+CisKICAgICAgICAgSW1wcm92aW5nIGNyZWF0ZU9m
ZmVyIGFuZCBjcmVhdGVBbnN3ZXIgTGF5b3V0VGVzdHMKICAgICAgICAgaHR0cHM6Ly9idWdzLndl
YmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTEyNTU2OAogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
Q29yZS9DTWFrZUxpc3RzLnR4dCBiL1NvdXJjZS9XZWJDb3JlL0NNYWtlTGlzdHMudHh0CmluZGV4
IGNhN2M0ODNiYzk1OTE5MDNjNWEwNGVhMWMyMTNiOGI3ZjE4MDYwMWMuLjc4ODVmOWIyMTM3NmRl
ZGNjMDI0NTJjMmUxMDE2ZDRkODdlNzllMDQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL0NN
YWtlTGlzdHMudHh0CisrKyBiL1NvdXJjZS9XZWJDb3JlL0NNYWtlTGlzdHMudHh0CkBAIC0yMTAs
NyArMjEwLDcgQEAgc2V0KFdlYkNvcmVfSURMX0ZJTEVTCiAgICAgTW9kdWxlcy9tZWRpYXN0cmVh
bS9SVENEVE1GVG9uZUNoYW5nZUV2ZW50LmlkbAogICAgIE1vZHVsZXMvbWVkaWFzdHJlYW0vUlRD
RGF0YUNoYW5uZWwuaWRsCiAgICAgTW9kdWxlcy9tZWRpYXN0cmVhbS9SVENEYXRhQ2hhbm5lbEV2
ZW50LmlkbAotICAgIE1vZHVsZXMvbWVkaWFzdHJlYW0vUlRDRXJyb3JDYWxsYmFjay5pZGwKKyAg
ICBNb2R1bGVzL21lZGlhc3RyZWFtL1JUQ1BlZXJDb25uZWN0aW9uRXJyb3JDYWxsYmFjay5pZGwK
ICAgICBNb2R1bGVzL21lZGlhc3RyZWFtL1JUQ0ljZUNhbmRpZGF0ZS5pZGwKICAgICBNb2R1bGVz
L21lZGlhc3RyZWFtL1JUQ0ljZUNhbmRpZGF0ZUV2ZW50LmlkbAogICAgIE1vZHVsZXMvbWVkaWFz
dHJlYW0vUlRDUGVlckNvbm5lY3Rpb24uaWRsCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9H
TlVtYWtlZmlsZS5saXN0LmFtIGIvU291cmNlL1dlYkNvcmUvR05VbWFrZWZpbGUubGlzdC5hbQpp
bmRleCBjOWEyZGZhMmIwMDIyNThkM2Y4MGEyYjVmZTM2YmJhYjdkZmI3OGI1Li5mMGMxMjJkNjA5
MjkwZTljNDA1OGQwYzdlZjQyMTdkZGRmZDhmNjJhIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29y
ZS9HTlVtYWtlZmlsZS5saXN0LmFtCisrKyBiL1NvdXJjZS9XZWJDb3JlL0dOVW1ha2VmaWxlLmxp
c3QuYW0KQEAgLTYxMSw4ICs2MTEsOCBAQCB3ZWJjb3JlX2J1aWx0X3NvdXJjZXMgKz0gXAogCURl
cml2ZWRTb3VyY2VzL1dlYkNvcmUvSlNSVENEYXRhQ2hhbm5lbC5oIFwKIAlEZXJpdmVkU291cmNl
cy9XZWJDb3JlL0pTUlRDRGF0YUNoYW5uZWxFdmVudC5jcHAgXAogCURlcml2ZWRTb3VyY2VzL1dl
YkNvcmUvSlNSVENEYXRhQ2hhbm5lbEV2ZW50LmggXAotCURlcml2ZWRTb3VyY2VzL1dlYkNvcmUv
SlNSVENFcnJvckNhbGxiYWNrLmNwcCBcCi0JRGVyaXZlZFNvdXJjZXMvV2ViQ29yZS9KU1JUQ0Vy
cm9yQ2FsbGJhY2suaCBcCisJRGVyaXZlZFNvdXJjZXMvV2ViQ29yZS9KU1JUQ1BlZXJDb25uZWN0
aW9uRXJyb3JDYWxsYmFjay5jcHAgXAorCURlcml2ZWRTb3VyY2VzL1dlYkNvcmUvSlNSVENQZWVy
Q29ubmVjdGlvbkVycm9yQ2FsbGJhY2suaCBcCiAJRGVyaXZlZFNvdXJjZXMvV2ViQ29yZS9KU1JU
Q0ljZUNhbmRpZGF0ZS5jcHAgXAogCURlcml2ZWRTb3VyY2VzL1dlYkNvcmUvSlNSVENJY2VDYW5k
aWRhdGUuaCBcCiAJRGVyaXZlZFNvdXJjZXMvV2ViQ29yZS9KU1JUQ0ljZUNhbmRpZGF0ZUV2ZW50
LmNwcCBcCkBAIC0xMjI3LDcgKzEyMjcsNyBAQCBkb21fYmluZGluZ19pZGxzICs9IFwKIAkkKFdl
YkNvcmUpL01vZHVsZXMvbWVkaWFzdHJlYW0vUlRDRFRNRlRvbmVDaGFuZ2VFdmVudC5pZGwgXAog
CSQoV2ViQ29yZSkvTW9kdWxlcy9tZWRpYXN0cmVhbS9SVENEYXRhQ2hhbm5lbC5pZGwgXAogCSQo
V2ViQ29yZSkvTW9kdWxlcy9tZWRpYXN0cmVhbS9SVENEYXRhQ2hhbm5lbEV2ZW50LmlkbCBcCi0J
JChXZWJDb3JlKS9Nb2R1bGVzL21lZGlhc3RyZWFtL1JUQ0Vycm9yQ2FsbGJhY2suaWRsIFwKKwkk
KFdlYkNvcmUpL01vZHVsZXMvbWVkaWFzdHJlYW0vUlRDUGVlckNvbm5lY3Rpb25FcnJvckNhbGxi
YWNrLmlkbCBcCiAJJChXZWJDb3JlKS9Nb2R1bGVzL21lZGlhc3RyZWFtL1JUQ0ljZUNhbmRpZGF0
ZS5pZGwgXAogCSQoV2ViQ29yZSkvTW9kdWxlcy9tZWRpYXN0cmVhbS9SVENJY2VDYW5kaWRhdGVF
dmVudC5pZGwgXAogCSQoV2ViQ29yZSkvTW9kdWxlcy9tZWRpYXN0cmVhbS9SVENQZWVyQ29ubmVj
dGlvbi5pZGwgXApAQCAtMTkzNiw3ICsxOTM2LDcgQEAgd2ViY29yZV9tb2R1bGVzX3NvdXJjZXMg
Kz0gXAogCVNvdXJjZS9XZWJDb3JlL01vZHVsZXMvbWVkaWFzdHJlYW0vUlRDRGF0YUNoYW5uZWwu
aCBcCiAJU291cmNlL1dlYkNvcmUvTW9kdWxlcy9tZWRpYXN0cmVhbS9SVENEYXRhQ2hhbm5lbEV2
ZW50LmNwcCBcCiAJU291cmNlL1dlYkNvcmUvTW9kdWxlcy9tZWRpYXN0cmVhbS9SVENEYXRhQ2hh
bm5lbEV2ZW50LmggXAotCVNvdXJjZS9XZWJDb3JlL01vZHVsZXMvbWVkaWFzdHJlYW0vUlRDRXJy
b3JDYWxsYmFjay5oIFwKKwlTb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL21lZGlhc3RyZWFtL1JUQ1Bl
ZXJDb25uZWN0aW9uRXJyb3JDYWxsYmFjay5oIFwKIAlTb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL21l
ZGlhc3RyZWFtL1JUQ0ljZUNhbmRpZGF0ZS5jcHAgXAogCVNvdXJjZS9XZWJDb3JlL01vZHVsZXMv
bWVkaWFzdHJlYW0vUlRDSWNlQ2FuZGlkYXRlLmggXAogCVNvdXJjZS9XZWJDb3JlL01vZHVsZXMv
bWVkaWFzdHJlYW0vUlRDSWNlQ2FuZGlkYXRlRXZlbnQuY3BwIFwKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJDb3JlL01vZHVsZXMvbWVkaWFzdHJlYW0vUlRDRXJyb3JDYWxsYmFjay5oIGIvU291cmNl
L1dlYkNvcmUvTW9kdWxlcy9tZWRpYXN0cmVhbS9SVENFcnJvckNhbGxiYWNrLmgKZGVsZXRlZCBm
aWxlIG1vZGUgMTAwNjQ0CmluZGV4IDY0NGU1NmYwYmVhNzBkNTNlNDlmMjg5ZTRhZmY2MTU3ZGEz
ZWZiZGMuLjAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAKLS0tIGEvU291
cmNlL1dlYkNvcmUvTW9kdWxlcy9tZWRpYXN0cmVhbS9SVENFcnJvckNhbGxiYWNrLmgKKysrIC9k
ZXYvbnVsbApAQCAtMSw1MSArMCwwIEBACi0vKgotICogQ29weXJpZ2h0IChDKSAyMDEyIEdvb2ds
ZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi0gKgotICogUmVkaXN0cmlidXRpb24gYW5kIHVz
ZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0Ci0gKiBtb2RpZmlj
YXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlv
bnMKLSAqIGFyZSBtZXQ6Ci0gKgotICogMS4gUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2Rl
IG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKLSAqICAgIG5vdGljZSwgdGhpcyBsaXN0
IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KLSAqIDIuIFJlZGlz
dHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJp
Z2h0Ci0gKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93
aW5nIGRpc2NsYWltZXIKLSAqICAgIGluIHRoZSBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBt
YXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUKLSAqICAgIGRpc3RyaWJ1dGlvbi4KLSAqIDMuIE5l
aXRoZXIgdGhlIG5hbWUgb2YgR29vZ2xlIEluYy4gbm9yIHRoZSBuYW1lcyBvZiBpdHMgY29udHJp
YnV0b3JzCi0gKiAgICBtYXkgYmUgdXNlZCB0byBlbmRvcnNlIG9yIHByb21vdGUgcHJvZHVjdHMg
ZGVyaXZlZCBmcm9tIHRoaXMKLSAqICAgIHNvZnR3YXJlIHdpdGhvdXQgc3BlY2lmaWMgcHJpb3Ig
d3JpdHRlbiBwZXJtaXNzaW9uLgotICoKLSAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkg
VEhFIENPUFlSSUdIVCBIT0xERVJTIEFORCBDT05UUklCVVRPUlMKLSAqICJBUyBJUyIgQU5EIEFO
WSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UCi0gKiBM
SU1JVEVEIFRPLCBUSEUgSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQg
RklUTkVTUyBGT1IKLSAqIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiBJTiBO
TyBFVkVOVCBTSEFMTCBUSEUgQ09QWVJJR0hUCi0gKiBPV05FUiBPUiBDT05UUklCVVRPUlMgQkUg
TElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwKLSAqIFNQRUNJQUws
IEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QK
LSAqIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklD
RVM7IExPU1MgT0YgVVNFLAotICogREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJS
VVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZCi0gKiBUSEVPUlkgT0YgTElBQklMSVRZ
LCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUCi0gKiAoSU5D
TFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9G
IFRIRSBVU0UKLSAqIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9T
U0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCi0gKi8KLQotI2lmbmRlZiBSVENFcnJvckNhbGxiYWNr
X2gKLSNkZWZpbmUgUlRDRXJyb3JDYWxsYmFja19oCi0KLSNpZiBFTkFCTEUoTUVESUFfU1RSRUFN
KQotCi0jaW5jbHVkZSA8d3RmL1JlZkNvdW50ZWQuaD4KLSNpbmNsdWRlIDx3dGYvdGV4dC9XVEZT
dHJpbmcuaD4KLQotbmFtZXNwYWNlIFdlYkNvcmUgewotCi1jbGFzcyBSVENFcnJvckNhbGxiYWNr
IDogcHVibGljIFJlZkNvdW50ZWQ8UlRDRXJyb3JDYWxsYmFjaz4gewotcHVibGljOgotICAgIHZp
cnR1YWwgflJUQ0Vycm9yQ2FsbGJhY2soKSB7IH0KLSAgICB2aXJ0dWFsIGJvb2wgaGFuZGxlRXZl
bnQoY29uc3QgU3RyaW5nJiBlcnJvckluZm9ybWF0aW9uKSA9IDA7Ci19OwotCi19IC8vIG5hbWVz
cGFjZSBXZWJDb3JlCi0KLSNlbmRpZiAvLyBFTkFCTEUoTUVESUFfU1RSRUFNKQotCi0jZW5kaWYg
Ly8gUlRDRXJyb3JDYWxsYmFja19oCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVz
L21lZGlhc3RyZWFtL1JUQ0Vycm9yQ2FsbGJhY2suaWRsIGIvU291cmNlL1dlYkNvcmUvTW9kdWxl
cy9tZWRpYXN0cmVhbS9SVENFcnJvckNhbGxiYWNrLmlkbApkZWxldGVkIGZpbGUgbW9kZSAxMDA2
NDQKaW5kZXggYTJkNDY1M2Q3MDBjMWE0MDMwMDk1N2I2NTI0ZmI5MzA1NzE1MDAzYi4uMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9N
b2R1bGVzL21lZGlhc3RyZWFtL1JUQ0Vycm9yQ2FsbGJhY2suaWRsCisrKyAvZGV2L251bGwKQEAg
LTEsMzYgKzAsMCBAQAotLyoKLSAqIENvcHlyaWdodCAoQykgMjAxMiBHb29nbGUgSW5jLiBBbGwg
cmlnaHRzIHJlc2VydmVkLgotICoKLSAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNl
IGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAotICogbW9kaWZpY2F0aW9uLCBhcmUg
cGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCi0gKiBhcmUg
bWV0OgotICoKLSAqIDEuIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFp
biB0aGUgYWJvdmUgY29weXJpZ2h0Ci0gKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRp
b25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCi0gKiAyLiBSZWRpc3RyaWJ1dGlvbnMg
aW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAotICogICAg
bm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFp
bWVyCi0gKiAgICBpbiB0aGUgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHBy
b3ZpZGVkIHdpdGggdGhlCi0gKiAgICBkaXN0cmlidXRpb24uCi0gKiAzLiBOZWl0aGVyIHRoZSBu
YW1lIG9mIEdvb2dsZSBJbmMuIG5vciB0aGUgbmFtZXMgb2YgaXRzIGNvbnRyaWJ1dG9ycwotICog
ICAgbWF5IGJlIHVzZWQgdG8gZW5kb3JzZSBvciBwcm9tb3RlIHByb2R1Y3RzIGRlcml2ZWQgZnJv
bSB0aGlzCi0gKiAgICBzb2Z0d2FyZSB3aXRob3V0IHNwZWNpZmljIHByaW9yIHdyaXR0ZW4gcGVy
bWlzc2lvbi4KLSAqCi0gKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIFRIRSBDT1BZUklH
SFQgSE9MREVSUyBBTkQgQ09OVFJJQlVUT1JTCi0gKiAiQVMgSVMiIEFORCBBTlkgRVhQUkVTUyBP
UiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVAotICogTElNSVRFRCBUTywg
VEhFIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9S
Ci0gKiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hB
TEwgVEhFIENPUFlSSUdIVAotICogT1dORVIgT1IgQ09OVFJJQlVUT1JTIEJFIExJQUJMRSBGT1Ig
QU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsCi0gKiBTUEVDSUFMLCBFWEVNUExBUlks
IE9SIENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UCi0gKiBMSU1JVEVE
IFRPLCBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9G
IFVTRSwKLSAqIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9X
RVZFUiBDQVVTRUQgQU5EIE9OIEFOWQotICogVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJ
TiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVAotICogKElOQ0xVRElORyBORUdM
SUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFCi0g
KiBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9G
IFNVQ0ggREFNQUdFLgotICovCi0KLVsKLSAgICBDb25kaXRpb25hbD1NRURJQV9TVFJFQU0sCi1d
IGNhbGxiYWNrIGludGVyZmFjZSBSVENFcnJvckNhbGxiYWNrIHsKLSAgICBib29sZWFuIGhhbmRs
ZUV2ZW50KERPTVN0cmluZyBlcnJvckluZm9ybWF0aW9uKTsKLX07Ci0KZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJDb3JlL01vZHVsZXMvbWVkaWFzdHJlYW0vUlRDUGVlckNvbm5lY3Rpb24uY3BwIGIv
U291cmNlL1dlYkNvcmUvTW9kdWxlcy9tZWRpYXN0cmVhbS9SVENQZWVyQ29ubmVjdGlvbi5jcHAK
aW5kZXggODM1YWUyMzAwZTdmMmM1Yjc1MmE3ZmI3NjZkZDIxMWViNmU2ODM3Mi4uN2UzNGUxMzgw
MzQ1NGI5ODY3MmE5ZmMzY2IzNTc3ZGE4Zjg0NTYwZiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNv
cmUvTW9kdWxlcy9tZWRpYXN0cmVhbS9SVENQZWVyQ29ubmVjdGlvbi5jcHAKKysrIGIvU291cmNl
L1dlYkNvcmUvTW9kdWxlcy9tZWRpYXN0cmVhbS9SVENQZWVyQ29ubmVjdGlvbi5jcHAKQEAgLTQ5
LDEwICs0OSwxMCBAQAogI2luY2x1ZGUgIlJUQ0RhdGFDaGFubmVsLmgiCiAjaW5jbHVkZSAiUlRD
RGF0YUNoYW5uZWxFdmVudC5oIgogI2luY2x1ZGUgIlJUQ0RhdGFDaGFubmVsSGFuZGxlci5oIgot
I2luY2x1ZGUgIlJUQ0Vycm9yQ2FsbGJhY2suaCIKICNpbmNsdWRlICJSVENJY2VDYW5kaWRhdGUu
aCIKICNpbmNsdWRlICJSVENJY2VDYW5kaWRhdGVEZXNjcmlwdG9yLmgiCiAjaW5jbHVkZSAiUlRD
SWNlQ2FuZGlkYXRlRXZlbnQuaCIKKyNpbmNsdWRlICJSVENQZWVyQ29ubmVjdGlvbkVycm9yQ2Fs
bGJhY2suaCIKICNpbmNsdWRlICJSVENTZXNzaW9uRGVzY3JpcHRpb24uaCIKICNpbmNsdWRlICJS
VENTZXNzaW9uRGVzY3JpcHRpb25DYWxsYmFjay5oIgogI2luY2x1ZGUgIlJUQ1Nlc3Npb25EZXNj
cmlwdGlvbkRlc2NyaXB0b3IuaCIKQEAgLTE3MCw3ICsxNzAsNyBAQCBSVENQZWVyQ29ubmVjdGlv
bjo6flJUQ1BlZXJDb25uZWN0aW9uKCkKICAgICAgICAgKCpzdHJlYW0pLT5yZW1vdmVPYnNlcnZl
cih0aGlzKTsKIH0KIAotdm9pZCBSVENQZWVyQ29ubmVjdGlvbjo6Y3JlYXRlT2ZmZXIoUGFzc1Jl
ZlB0cjxSVENTZXNzaW9uRGVzY3JpcHRpb25DYWxsYmFjaz4gc3VjY2Vzc0NhbGxiYWNrLCBQYXNz
UmVmUHRyPFJUQ0Vycm9yQ2FsbGJhY2s+IGVycm9yQ2FsbGJhY2ssIGNvbnN0IERpY3Rpb25hcnkm
IG1lZGlhQ29uc3RyYWludHMsIEV4Y2VwdGlvbkNvZGUmIGVjKQordm9pZCBSVENQZWVyQ29ubmVj
dGlvbjo6Y3JlYXRlT2ZmZXIoUGFzc1JlZlB0cjxSVENTZXNzaW9uRGVzY3JpcHRpb25DYWxsYmFj
az4gc3VjY2Vzc0NhbGxiYWNrLCBQYXNzUmVmUHRyPFJUQ1BlZXJDb25uZWN0aW9uRXJyb3JDYWxs
YmFjaz4gZXJyb3JDYWxsYmFjaywgY29uc3QgRGljdGlvbmFyeSYgbWVkaWFDb25zdHJhaW50cywg
RXhjZXB0aW9uQ29kZSYgZWMpCiB7CiAgICAgaWYgKG1fc2lnbmFsaW5nU3RhdGUgPT0gU2lnbmFs
aW5nU3RhdGVDbG9zZWQpIHsKICAgICAgICAgZWMgPSBJTlZBTElEX1NUQVRFX0VSUjsKQEAgLTE5
MCw3ICsxOTAsNyBAQCB2b2lkIFJUQ1BlZXJDb25uZWN0aW9uOjpjcmVhdGVPZmZlcihQYXNzUmVm
UHRyPFJUQ1Nlc3Npb25EZXNjcmlwdGlvbkNhbGxiYWNrPiBzdQogICAgIG1fcGVlckhhbmRsZXIt
PmNyZWF0ZU9mZmVyKHJlcXVlc3QucmVsZWFzZSgpLCBjb25zdHJhaW50cyk7CiB9CiAKLXZvaWQg
UlRDUGVlckNvbm5lY3Rpb246OmNyZWF0ZUFuc3dlcihQYXNzUmVmUHRyPFJUQ1Nlc3Npb25EZXNj
cmlwdGlvbkNhbGxiYWNrPiBzdWNjZXNzQ2FsbGJhY2ssIFBhc3NSZWZQdHI8UlRDRXJyb3JDYWxs
YmFjaz4gZXJyb3JDYWxsYmFjaywgY29uc3QgRGljdGlvbmFyeSYgbWVkaWFDb25zdHJhaW50cywg
RXhjZXB0aW9uQ29kZSYgZWMpCit2b2lkIFJUQ1BlZXJDb25uZWN0aW9uOjpjcmVhdGVBbnN3ZXIo
UGFzc1JlZlB0cjxSVENTZXNzaW9uRGVzY3JpcHRpb25DYWxsYmFjaz4gc3VjY2Vzc0NhbGxiYWNr
LCBQYXNzUmVmUHRyPFJUQ1BlZXJDb25uZWN0aW9uRXJyb3JDYWxsYmFjaz4gZXJyb3JDYWxsYmFj
aywgY29uc3QgRGljdGlvbmFyeSYgbWVkaWFDb25zdHJhaW50cywgRXhjZXB0aW9uQ29kZSYgZWMp
CiB7CiAgICAgaWYgKG1fc2lnbmFsaW5nU3RhdGUgPT0gU2lnbmFsaW5nU3RhdGVDbG9zZWQpIHsK
ICAgICAgICAgZWMgPSBJTlZBTElEX1NUQVRFX0VSUjsKQEAgLTIxMCw3ICsyMTAsNyBAQCB2b2lk
IFJUQ1BlZXJDb25uZWN0aW9uOjpjcmVhdGVBbnN3ZXIoUGFzc1JlZlB0cjxSVENTZXNzaW9uRGVz
Y3JpcHRpb25DYWxsYmFjaz4gcwogICAgIG1fcGVlckhhbmRsZXItPmNyZWF0ZUFuc3dlcihyZXF1
ZXN0LnJlbGVhc2UoKSwgY29uc3RyYWludHMucmVsZWFzZSgpKTsKIH0KIAotdm9pZCBSVENQZWVy
Q29ubmVjdGlvbjo6c2V0TG9jYWxEZXNjcmlwdGlvbihQYXNzUmVmUHRyPFJUQ1Nlc3Npb25EZXNj
cmlwdGlvbj4gcHJwU2Vzc2lvbkRlc2NyaXB0aW9uLCBQYXNzUmVmUHRyPFZvaWRDYWxsYmFjaz4g
c3VjY2Vzc0NhbGxiYWNrLCBQYXNzUmVmUHRyPFJUQ0Vycm9yQ2FsbGJhY2s+IGVycm9yQ2FsbGJh
Y2ssIEV4Y2VwdGlvbkNvZGUmIGVjKQordm9pZCBSVENQZWVyQ29ubmVjdGlvbjo6c2V0TG9jYWxE
ZXNjcmlwdGlvbihQYXNzUmVmUHRyPFJUQ1Nlc3Npb25EZXNjcmlwdGlvbj4gcHJwU2Vzc2lvbkRl
c2NyaXB0aW9uLCBQYXNzUmVmUHRyPFZvaWRDYWxsYmFjaz4gc3VjY2Vzc0NhbGxiYWNrLCBQYXNz
UmVmUHRyPFJUQ1BlZXJDb25uZWN0aW9uRXJyb3JDYWxsYmFjaz4gZXJyb3JDYWxsYmFjaywgRXhj
ZXB0aW9uQ29kZSYgZWMpCiB7CiAgICAgaWYgKG1fc2lnbmFsaW5nU3RhdGUgPT0gU2lnbmFsaW5n
U3RhdGVDbG9zZWQpIHsKICAgICAgICAgZWMgPSBJTlZBTElEX1NUQVRFX0VSUjsKQEAgLTIzOSw3
ICsyMzksNyBAQCBQYXNzUmVmUHRyPFJUQ1Nlc3Npb25EZXNjcmlwdGlvbj4gUlRDUGVlckNvbm5l
Y3Rpb246OmxvY2FsRGVzY3JpcHRpb24oRXhjZXB0aW9uQwogICAgIHJldHVybiBzZXNzaW9uRGVz
Y3JpcHRpb24ucmVsZWFzZSgpOwogfQogCi12b2lkIFJUQ1BlZXJDb25uZWN0aW9uOjpzZXRSZW1v
dGVEZXNjcmlwdGlvbihQYXNzUmVmUHRyPFJUQ1Nlc3Npb25EZXNjcmlwdGlvbj4gcHJwU2Vzc2lv
bkRlc2NyaXB0aW9uLCBQYXNzUmVmUHRyPFZvaWRDYWxsYmFjaz4gc3VjY2Vzc0NhbGxiYWNrLCBQ
YXNzUmVmUHRyPFJUQ0Vycm9yQ2FsbGJhY2s+IGVycm9yQ2FsbGJhY2ssIEV4Y2VwdGlvbkNvZGUm
IGVjKQordm9pZCBSVENQZWVyQ29ubmVjdGlvbjo6c2V0UmVtb3RlRGVzY3JpcHRpb24oUGFzc1Jl
ZlB0cjxSVENTZXNzaW9uRGVzY3JpcHRpb24+IHBycFNlc3Npb25EZXNjcmlwdGlvbiwgUGFzc1Jl
ZlB0cjxWb2lkQ2FsbGJhY2s+IHN1Y2Nlc3NDYWxsYmFjaywgUGFzc1JlZlB0cjxSVENQZWVyQ29u
bmVjdGlvbkVycm9yQ2FsbGJhY2s+IGVycm9yQ2FsbGJhY2ssIEV4Y2VwdGlvbkNvZGUmIGVjKQog
ewogICAgIGlmIChtX3NpZ25hbGluZ1N0YXRlID09IFNpZ25hbGluZ1N0YXRlQ2xvc2VkKSB7CiAg
ICAgICAgIGVjID0gSU5WQUxJRF9TVEFURV9FUlI7CkBAIC0yODgsNyArMjg4LDcgQEAgdm9pZCBS
VENQZWVyQ29ubmVjdGlvbjo6dXBkYXRlSWNlKGNvbnN0IERpY3Rpb25hcnkmIHJ0Y0NvbmZpZ3Vy
YXRpb24sIGNvbnN0IERpY3QKICAgICAgICAgZWMgPSBTWU5UQVhfRVJSOwogfQogCi12b2lkIFJU
Q1BlZXJDb25uZWN0aW9uOjphZGRJY2VDYW5kaWRhdGUoUlRDSWNlQ2FuZGlkYXRlKiBpY2VDYW5k
aWRhdGUsIFBhc3NSZWZQdHI8Vm9pZENhbGxiYWNrPiBzdWNjZXNzQ2FsbGJhY2ssIFBhc3NSZWZQ
dHI8UlRDRXJyb3JDYWxsYmFjaz4gZXJyb3JDYWxsYmFjaywgRXhjZXB0aW9uQ29kZSYgZWMpCit2
b2lkIFJUQ1BlZXJDb25uZWN0aW9uOjphZGRJY2VDYW5kaWRhdGUoUlRDSWNlQ2FuZGlkYXRlKiBp
Y2VDYW5kaWRhdGUsIFBhc3NSZWZQdHI8Vm9pZENhbGxiYWNrPiBzdWNjZXNzQ2FsbGJhY2ssIFBh
c3NSZWZQdHI8UlRDUGVlckNvbm5lY3Rpb25FcnJvckNhbGxiYWNrPiBlcnJvckNhbGxiYWNrLCBF
eGNlcHRpb25Db2RlJiBlYykKIHsKICAgICBpZiAobV9zaWduYWxpbmdTdGF0ZSA9PSBTaWduYWxp
bmdTdGF0ZUNsb3NlZCkgewogICAgICAgICBlYyA9IElOVkFMSURfU1RBVEVfRVJSOwpkaWZmIC0t
Z2l0IGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9tZWRpYXN0cmVhbS9SVENQZWVyQ29ubmVjdGlv
bi5oIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9tZWRpYXN0cmVhbS9SVENQZWVyQ29ubmVjdGlv
bi5oCmluZGV4IDQzYjk2YzM2ZTFjZjc5MmMwMDRjZTY5NjBkYTZmNjAyODgwYTRlOGYuLjBlOGRj
M2M2MDM1MzAxNzU5YzkwODdmZjNiMDg5YmIyZTA0ZDNjZTggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJDb3JlL01vZHVsZXMvbWVkaWFzdHJlYW0vUlRDUGVlckNvbm5lY3Rpb24uaAorKysgYi9Tb3Vy
Y2UvV2ViQ29yZS9Nb2R1bGVzL21lZGlhc3RyZWFtL1JUQ1BlZXJDb25uZWN0aW9uLmgKQEAgLTUz
LDcgKzUzLDcgQEAgY2xhc3MgTWVkaWFTdHJlYW1UcmFjazsKIGNsYXNzIFJUQ0NvbmZpZ3VyYXRp
b247CiBjbGFzcyBSVENEVE1GU2VuZGVyOwogY2xhc3MgUlRDRGF0YUNoYW5uZWw7Ci1jbGFzcyBS
VENFcnJvckNhbGxiYWNrOworY2xhc3MgUlRDUGVlckNvbm5lY3Rpb25FcnJvckNhbGxiYWNrOwog
Y2xhc3MgUlRDU2Vzc2lvbkRlc2NyaXB0aW9uOwogY2xhc3MgUlRDU2Vzc2lvbkRlc2NyaXB0aW9u
Q2FsbGJhY2s7CiBjbGFzcyBSVENTdGF0c0NhbGxiYWNrOwpAQCAtNjQsMjEgKzY0LDIxIEBAIHB1
YmxpYzoKICAgICBzdGF0aWMgUGFzc1JlZlB0cjxSVENQZWVyQ29ubmVjdGlvbj4gY3JlYXRlKFNj
cmlwdEV4ZWN1dGlvbkNvbnRleHQmLCBjb25zdCBEaWN0aW9uYXJ5JiBydGNDb25maWd1cmF0aW9u
LCBjb25zdCBEaWN0aW9uYXJ5JiBtZWRpYUNvbnN0cmFpbnRzLCBFeGNlcHRpb25Db2RlJik7CiAg
ICAgflJUQ1BlZXJDb25uZWN0aW9uKCk7CiAKLSAgICB2b2lkIGNyZWF0ZU9mZmVyKFBhc3NSZWZQ
dHI8UlRDU2Vzc2lvbkRlc2NyaXB0aW9uQ2FsbGJhY2s+LCBQYXNzUmVmUHRyPFJUQ0Vycm9yQ2Fs
bGJhY2s+LCBjb25zdCBEaWN0aW9uYXJ5JiBtZWRpYUNvbnN0cmFpbnRzLCBFeGNlcHRpb25Db2Rl
Jik7CisgICAgdm9pZCBjcmVhdGVPZmZlcihQYXNzUmVmUHRyPFJUQ1Nlc3Npb25EZXNjcmlwdGlv
bkNhbGxiYWNrPiwgUGFzc1JlZlB0cjxSVENQZWVyQ29ubmVjdGlvbkVycm9yQ2FsbGJhY2s+LCBj
b25zdCBEaWN0aW9uYXJ5JiBtZWRpYUNvbnN0cmFpbnRzLCBFeGNlcHRpb25Db2RlJik7CiAKLSAg
ICB2b2lkIGNyZWF0ZUFuc3dlcihQYXNzUmVmUHRyPFJUQ1Nlc3Npb25EZXNjcmlwdGlvbkNhbGxi
YWNrPiwgUGFzc1JlZlB0cjxSVENFcnJvckNhbGxiYWNrPiwgY29uc3QgRGljdGlvbmFyeSYgbWVk
aWFDb25zdHJhaW50cywgRXhjZXB0aW9uQ29kZSYpOworICAgIHZvaWQgY3JlYXRlQW5zd2VyKFBh
c3NSZWZQdHI8UlRDU2Vzc2lvbkRlc2NyaXB0aW9uQ2FsbGJhY2s+LCBQYXNzUmVmUHRyPFJUQ1Bl
ZXJDb25uZWN0aW9uRXJyb3JDYWxsYmFjaz4sIGNvbnN0IERpY3Rpb25hcnkmIG1lZGlhQ29uc3Ry
YWludHMsIEV4Y2VwdGlvbkNvZGUmKTsKIAotICAgIHZvaWQgc2V0TG9jYWxEZXNjcmlwdGlvbihQ
YXNzUmVmUHRyPFJUQ1Nlc3Npb25EZXNjcmlwdGlvbj4sIFBhc3NSZWZQdHI8Vm9pZENhbGxiYWNr
PiwgUGFzc1JlZlB0cjxSVENFcnJvckNhbGxiYWNrPiwgRXhjZXB0aW9uQ29kZSYpOworICAgIHZv
aWQgc2V0TG9jYWxEZXNjcmlwdGlvbihQYXNzUmVmUHRyPFJUQ1Nlc3Npb25EZXNjcmlwdGlvbj4s
IFBhc3NSZWZQdHI8Vm9pZENhbGxiYWNrPiwgUGFzc1JlZlB0cjxSVENQZWVyQ29ubmVjdGlvbkVy
cm9yQ2FsbGJhY2s+LCBFeGNlcHRpb25Db2RlJik7CiAgICAgUGFzc1JlZlB0cjxSVENTZXNzaW9u
RGVzY3JpcHRpb24+IGxvY2FsRGVzY3JpcHRpb24oRXhjZXB0aW9uQ29kZSYpOwogCi0gICAgdm9p
ZCBzZXRSZW1vdGVEZXNjcmlwdGlvbihQYXNzUmVmUHRyPFJUQ1Nlc3Npb25EZXNjcmlwdGlvbj4s
IFBhc3NSZWZQdHI8Vm9pZENhbGxiYWNrPiwgUGFzc1JlZlB0cjxSVENFcnJvckNhbGxiYWNrPiwg
RXhjZXB0aW9uQ29kZSYpOworICAgIHZvaWQgc2V0UmVtb3RlRGVzY3JpcHRpb24oUGFzc1JlZlB0
cjxSVENTZXNzaW9uRGVzY3JpcHRpb24+LCBQYXNzUmVmUHRyPFZvaWRDYWxsYmFjaz4sIFBhc3NS
ZWZQdHI8UlRDUGVlckNvbm5lY3Rpb25FcnJvckNhbGxiYWNrPiwgRXhjZXB0aW9uQ29kZSYpOwog
ICAgIFBhc3NSZWZQdHI8UlRDU2Vzc2lvbkRlc2NyaXB0aW9uPiByZW1vdGVEZXNjcmlwdGlvbihF
eGNlcHRpb25Db2RlJik7CiAKICAgICBTdHJpbmcgc2lnbmFsaW5nU3RhdGUoKSBjb25zdDsKIAog
ICAgIHZvaWQgdXBkYXRlSWNlKGNvbnN0IERpY3Rpb25hcnkmIHJ0Y0NvbmZpZ3VyYXRpb24sIGNv
bnN0IERpY3Rpb25hcnkmIG1lZGlhQ29uc3RyYWludHMsIEV4Y2VwdGlvbkNvZGUmKTsKIAotICAg
IHZvaWQgYWRkSWNlQ2FuZGlkYXRlKFJUQ0ljZUNhbmRpZGF0ZSosIFBhc3NSZWZQdHI8Vm9pZENh
bGxiYWNrPiwgUGFzc1JlZlB0cjxSVENFcnJvckNhbGxiYWNrPiwgRXhjZXB0aW9uQ29kZSYpOwor
ICAgIHZvaWQgYWRkSWNlQ2FuZGlkYXRlKFJUQ0ljZUNhbmRpZGF0ZSosIFBhc3NSZWZQdHI8Vm9p
ZENhbGxiYWNrPiwgUGFzc1JlZlB0cjxSVENQZWVyQ29ubmVjdGlvbkVycm9yQ2FsbGJhY2s+LCBF
eGNlcHRpb25Db2RlJik7CiAKICAgICBTdHJpbmcgaWNlR2F0aGVyaW5nU3RhdGUoKSBjb25zdDsK
IApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9tZWRpYXN0cmVhbS9SVENQZWVy
Q29ubmVjdGlvbi5pZGwgYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL21lZGlhc3RyZWFtL1JUQ1Bl
ZXJDb25uZWN0aW9uLmlkbAppbmRleCA2ZjI2MzEzZjVkNTQ5ZjA2YTVhNzQzYzRlNjZlOTJkOTI5
YTJkNTRiLi4xZDYwMTdmNjVmNmRlNzcyZDViNzI4NTRhZTQ0MGY0ZTdkNjAxOTEwIDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL21lZGlhc3RyZWFtL1JUQ1BlZXJDb25uZWN0aW9u
LmlkbAorKysgYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL21lZGlhc3RyZWFtL1JUQ1BlZXJDb25u
ZWN0aW9uLmlkbApAQCAtMzksMjEgKzM5LDIxIEBACiAgICAgRXZlbnRUYXJnZXQsCiAgICAgSW50
ZXJmYWNlTmFtZT13ZWJraXRSVENQZWVyQ29ubmVjdGlvbiwKIF0gaW50ZXJmYWNlIFJUQ1BlZXJD
b25uZWN0aW9uIHsKLSAgICBbUmFpc2VzRXhjZXB0aW9uXSB2b2lkIGNyZWF0ZU9mZmVyKFJUQ1Nl
c3Npb25EZXNjcmlwdGlvbkNhbGxiYWNrIHN1Y2Nlc3NDYWxsYmFjaywgW0RlZmF1bHQ9VW5kZWZp
bmVkXSBvcHRpb25hbCBSVENFcnJvckNhbGxiYWNrIGZhaWx1cmVDYWxsYmFjaywgb3B0aW9uYWwg
RGljdGlvbmFyeSBtZWRpYUNvbnN0cmFpbnRzKTsKKyAgICBbUmFpc2VzRXhjZXB0aW9uXSB2b2lk
IGNyZWF0ZU9mZmVyKFJUQ1Nlc3Npb25EZXNjcmlwdGlvbkNhbGxiYWNrIHN1Y2Nlc3NDYWxsYmFj
aywgW0RlZmF1bHQ9VW5kZWZpbmVkXSBvcHRpb25hbCBSVENQZWVyQ29ubmVjdGlvbkVycm9yQ2Fs
bGJhY2sgZmFpbHVyZUNhbGxiYWNrLCBvcHRpb25hbCBEaWN0aW9uYXJ5IG1lZGlhQ29uc3RyYWlu
dHMpOwogCi0gICAgW1JhaXNlc0V4Y2VwdGlvbl0gdm9pZCBjcmVhdGVBbnN3ZXIoUlRDU2Vzc2lv
bkRlc2NyaXB0aW9uQ2FsbGJhY2sgc3VjY2Vzc0NhbGxiYWNrLCBbRGVmYXVsdD1VbmRlZmluZWRd
IG9wdGlvbmFsIFJUQ0Vycm9yQ2FsbGJhY2sgZmFpbHVyZUNhbGxiYWNrLCBvcHRpb25hbCBEaWN0
aW9uYXJ5IG1lZGlhQ29uc3RyYWludHMpOworICAgIFtSYWlzZXNFeGNlcHRpb25dIHZvaWQgY3Jl
YXRlQW5zd2VyKFJUQ1Nlc3Npb25EZXNjcmlwdGlvbkNhbGxiYWNrIHN1Y2Nlc3NDYWxsYmFjaywg
W0RlZmF1bHQ9VW5kZWZpbmVkXSBvcHRpb25hbCBSVENQZWVyQ29ubmVjdGlvbkVycm9yQ2FsbGJh
Y2sgZmFpbHVyZUNhbGxiYWNrLCBvcHRpb25hbCBEaWN0aW9uYXJ5IG1lZGlhQ29uc3RyYWludHMp
OwogCi0gICAgW1JhaXNlc0V4Y2VwdGlvbl0gdm9pZCBzZXRMb2NhbERlc2NyaXB0aW9uKFJUQ1Nl
c3Npb25EZXNjcmlwdGlvbiBkZXNjcmlwdGlvbiwgW0RlZmF1bHQ9VW5kZWZpbmVkXSBvcHRpb25h
bCBWb2lkQ2FsbGJhY2sgc3VjY2Vzc0NhbGxiYWNrLCBbRGVmYXVsdD1VbmRlZmluZWRdIG9wdGlv
bmFsIFJUQ0Vycm9yQ2FsbGJhY2sgZmFpbHVyZUNhbGxiYWNrKTsKKyAgICBbUmFpc2VzRXhjZXB0
aW9uXSB2b2lkIHNldExvY2FsRGVzY3JpcHRpb24oUlRDU2Vzc2lvbkRlc2NyaXB0aW9uIGRlc2Ny
aXB0aW9uLCBbRGVmYXVsdD1VbmRlZmluZWRdIG9wdGlvbmFsIFZvaWRDYWxsYmFjayBzdWNjZXNz
Q2FsbGJhY2ssIFtEZWZhdWx0PVVuZGVmaW5lZF0gb3B0aW9uYWwgUlRDUGVlckNvbm5lY3Rpb25F
cnJvckNhbGxiYWNrIGZhaWx1cmVDYWxsYmFjayk7CiAgICAgW0dldHRlclJhaXNlc0V4Y2VwdGlv
bl0gcmVhZG9ubHkgYXR0cmlidXRlIFJUQ1Nlc3Npb25EZXNjcmlwdGlvbiBsb2NhbERlc2NyaXB0
aW9uOwogCi0gICAgW1JhaXNlc0V4Y2VwdGlvbl0gdm9pZCBzZXRSZW1vdGVEZXNjcmlwdGlvbihS
VENTZXNzaW9uRGVzY3JpcHRpb24gZGVzY3JpcHRpb24sIFtEZWZhdWx0PVVuZGVmaW5lZF0gb3B0
aW9uYWwgVm9pZENhbGxiYWNrIHN1Y2Nlc3NDYWxsYmFjaywgW0RlZmF1bHQ9VW5kZWZpbmVkXSBv
cHRpb25hbCBSVENFcnJvckNhbGxiYWNrIGZhaWx1cmVDYWxsYmFjayk7CisgICAgW1JhaXNlc0V4
Y2VwdGlvbl0gdm9pZCBzZXRSZW1vdGVEZXNjcmlwdGlvbihSVENTZXNzaW9uRGVzY3JpcHRpb24g
ZGVzY3JpcHRpb24sIFtEZWZhdWx0PVVuZGVmaW5lZF0gb3B0aW9uYWwgVm9pZENhbGxiYWNrIHN1
Y2Nlc3NDYWxsYmFjaywgW0RlZmF1bHQ9VW5kZWZpbmVkXSBvcHRpb25hbCBSVENQZWVyQ29ubmVj
dGlvbkVycm9yQ2FsbGJhY2sgZmFpbHVyZUNhbGxiYWNrKTsKICAgICBbR2V0dGVyUmFpc2VzRXhj
ZXB0aW9uXSByZWFkb25seSBhdHRyaWJ1dGUgUlRDU2Vzc2lvbkRlc2NyaXB0aW9uIHJlbW90ZURl
c2NyaXB0aW9uOwogCiAgICAgcmVhZG9ubHkgYXR0cmlidXRlIERPTVN0cmluZyBzaWduYWxpbmdT
dGF0ZTsKIAogICAgIFtSYWlzZXNFeGNlcHRpb25dIHZvaWQgdXBkYXRlSWNlKG9wdGlvbmFsIERp
Y3Rpb25hcnkgY29uZmlndXJhdGlvbiwgb3B0aW9uYWwgRGljdGlvbmFyeSBtZWRpYUNvbnN0cmFp
bnRzKTsKIAotICAgIFtSYWlzZXNFeGNlcHRpb25dIHZvaWQgYWRkSWNlQ2FuZGlkYXRlKFJUQ0lj
ZUNhbmRpZGF0ZSBjYW5kaWRhdGUsIFZvaWRDYWxsYmFjayBzdWNjZXNzQ2FsbGJhY2ssIFJUQ0Vy
cm9yQ2FsbGJhY2sgZmFpbHVyZUNhbGxiYWNrKTsKKyAgICBbUmFpc2VzRXhjZXB0aW9uXSB2b2lk
IGFkZEljZUNhbmRpZGF0ZShSVENJY2VDYW5kaWRhdGUgY2FuZGlkYXRlLCBWb2lkQ2FsbGJhY2sg
c3VjY2Vzc0NhbGxiYWNrLCBSVENQZWVyQ29ubmVjdGlvbkVycm9yQ2FsbGJhY2sgZmFpbHVyZUNh
bGxiYWNrKTsKIAogICAgIHJlYWRvbmx5IGF0dHJpYnV0ZSBET01TdHJpbmcgaWNlR2F0aGVyaW5n
U3RhdGU7CiAgICAgcmVhZG9ubHkgYXR0cmlidXRlIERPTVN0cmluZyBpY2VDb25uZWN0aW9uU3Rh
dGU7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL21lZGlhc3RyZWFtL1JUQ1Bl
ZXJDb25uZWN0aW9uRXJyb3JDYWxsYmFjay5oIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9tZWRp
YXN0cmVhbS9SVENQZWVyQ29ubmVjdGlvbkVycm9yQ2FsbGJhY2suaApuZXcgZmlsZSBtb2RlIDEw
MDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5jMmFl
Y2JhMGE0Y2Q5YWE5ZjJlNzI2MTA3ZmU2ZmQxNzFmMjA1ZWVjCi0tLSAvZGV2L251bGwKKysrIGIv
U291cmNlL1dlYkNvcmUvTW9kdWxlcy9tZWRpYXN0cmVhbS9SVENQZWVyQ29ubmVjdGlvbkVycm9y
Q2FsbGJhY2suaApAQCAtMCwwICsxLDQ2IEBACisvKgorICogQ29weXJpZ2h0IChDKSAyMDEzIE5v
a2lhIENvcnBvcmF0aW9uIGFuZC9vciBpdHMgc3Vic2lkaWFyeSgtaWVzKS4KKyAqCisgKiBSZWRp
c3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdp
dGhvdXQKKyAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBm
b2xsb3dpbmcgY29uZGl0aW9ucworICogYXJlIG1ldDoKKyAqIDEuIFJlZGlzdHJpYnV0aW9ucyBv
ZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3Rp
Y2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIu
CisgKiAyLiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhl
IGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBh
bmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQorICogICAgZG9jdW1lbnRhdGlvbiBh
bmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KKyAq
CisgKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIFRIRSBDT1BZUklHSFQgSE9MREVSUyBB
TkQgQ09OVFJJQlVUT1JTCisgKiAiQVMgSVMiIEFORCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdB
UlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVAorICogTElNSVRFRCBUTywgVEhFIElNUExJRUQg
V0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SCisgKiBBIFBBUlRJ
Q1VMQVIgUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgVEhFIENPUFlS
SUdIVAorICogT1dORVIgT1IgQ09OVFJJQlVUT1JTIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwg
SU5ESVJFQ1QsIElOQ0lERU5UQUwsCisgKiBTUEVDSUFMLCBFWEVNUExBUlksIE9SIENPTlNFUVVF
TlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UCisgKiBMSU1JVEVEIFRPLCBQUk9DVVJF
TUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwKKyAqIERB
VEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQg
QU5EIE9OIEFOWQorICogVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwg
U1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVAorICogKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9U
SEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFCisgKiBPRiBUSElTIFNP
RlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdF
LgorICovCisKKyNpZm5kZWYgUlRDUGVlckNvbm5lY3Rpb25FcnJvckNhbGxiYWNrX2gKKyNkZWZp
bmUgUlRDUGVlckNvbm5lY3Rpb25FcnJvckNhbGxiYWNrX2gKKworI2lmIEVOQUJMRShNRURJQV9T
VFJFQU0pCisKKyNpbmNsdWRlICJET01FcnJvci5oIgorI2luY2x1ZGUgPHd0Zi9SZWZDb3VudGVk
Lmg+CisKK25hbWVzcGFjZSBXZWJDb3JlIHsKKworY2xhc3MgUlRDUGVlckNvbm5lY3Rpb25FcnJv
ckNhbGxiYWNrIDogcHVibGljIFJlZkNvdW50ZWQ8UlRDUGVlckNvbm5lY3Rpb25FcnJvckNhbGxi
YWNrPiB7CitwdWJsaWM6CisgICAgdmlydHVhbCB+UlRDUGVlckNvbm5lY3Rpb25FcnJvckNhbGxi
YWNrKCkgeyB9CisgICAgdmlydHVhbCBib29sIGhhbmRsZUV2ZW50KERPTUVycm9yKikgPSAwOwor
fTsKKworfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQorCisjZW5kaWYgLy8gRU5BQkxFKE1FRElBX1NU
UkVBTSkKKworI2VuZGlmIC8vIFJUQ1BlZXJDb25uZWN0aW9uRXJyb3JDYWxsYmFja19oCmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL21lZGlhc3RyZWFtL1JUQ1BlZXJDb25uZWN0
aW9uRXJyb3JDYWxsYmFjay5pZGwgYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL21lZGlhc3RyZWFt
L1JUQ1BlZXJDb25uZWN0aW9uRXJyb3JDYWxsYmFjay5pZGwKbmV3IGZpbGUgbW9kZSAxMDA2NDQK
aW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uNGI4N2FkN2Zm
MDRlMzczY2E0YzAwMzVkYTJmNjQyOGJmMjhmMDcyMgotLS0gL2Rldi9udWxsCisrKyBiL1NvdXJj
ZS9XZWJDb3JlL01vZHVsZXMvbWVkaWFzdHJlYW0vUlRDUGVlckNvbm5lY3Rpb25FcnJvckNhbGxi
YWNrLmlkbApAQCAtMCwwICsxLDMxIEBACisvKgorICogQ29weXJpZ2h0IChDKSAyMDEzIE5va2lh
IENvcnBvcmF0aW9uIGFuZC9vciBpdHMgc3Vic2lkaWFyeSgtaWVzKS4KKyAqCisgKiBSZWRpc3Ry
aWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhv
dXQKKyAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xs
b3dpbmcgY29uZGl0aW9ucworICogYXJlIG1ldDoKKyAqIDEuIFJlZGlzdHJpYnV0aW9ucyBvZiBz
b3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2Us
IHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisg
KiAyLiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFi
b3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQg
dGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQorICogICAgZG9jdW1lbnRhdGlvbiBhbmQv
b3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KKyAqCisg
KiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIFRIRSBDT1BZUklHSFQgSE9MREVSUyBBTkQg
Q09OVFJJQlVUT1JTCisgKiAiQVMgSVMiIEFORCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJB
TlRJRVMsIElOQ0xVRElORywgQlVUIE5PVAorICogTElNSVRFRCBUTywgVEhFIElNUExJRUQgV0FS
UkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SCisgKiBBIFBBUlRJQ1VM
QVIgUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgVEhFIENPUFlSSUdI
VAorICogT1dORVIgT1IgQ09OVFJJQlVUT1JTIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5E
SVJFQ1QsIElOQ0lERU5UQUwsCisgKiBTUEVDSUFMLCBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJ
QUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UCisgKiBMSU1JVEVEIFRPLCBQUk9DVVJFTUVO
VCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwKKyAqIERBVEEs
IE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5E
IE9OIEFOWQorICogVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RS
SUNUIExJQUJJTElUWSwgT1IgVE9SVAorICogKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVS
V0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFCisgKiBPRiBUSElTIFNPRlRX
QVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgor
ICovCisKK1sKKyAgICBDb25kaXRpb25hbD1NRURJQV9TVFJFQU0sCitdIGNhbGxiYWNrIGludGVy
ZmFjZSBSVENQZWVyQ29ubmVjdGlvbkVycm9yQ2FsbGJhY2sgeworICAgIGJvb2xlYW4gaGFuZGxl
RXZlbnQoRE9NRXJyb3IgZXJyb3IpOworfTsKKwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUv
TW9kdWxlcy9tZWRpYXN0cmVhbS9SVENTZXNzaW9uRGVzY3JpcHRpb25SZXF1ZXN0SW1wbC5jcHAg
Yi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL21lZGlhc3RyZWFtL1JUQ1Nlc3Npb25EZXNjcmlwdGlv
blJlcXVlc3RJbXBsLmNwcAppbmRleCA0MDgxZTkzNGFhMjQ1MTI5YzhkOWFhMDc1OTEwZTg4ZTA2
NWYyY2M2Li44NzJhNTRlMThhMTE4NTg1MDE2NDYzMDBjMzBjNTEyYTQxNGIzMTcxIDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL21lZGlhc3RyZWFtL1JUQ1Nlc3Npb25EZXNjcmlw
dGlvblJlcXVlc3RJbXBsLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL21lZGlhc3Ry
ZWFtL1JUQ1Nlc3Npb25EZXNjcmlwdGlvblJlcXVlc3RJbXBsLmNwcApAQCAtMSw1ICsxLDYgQEAK
IC8qCiAgKiBDb3B5cmlnaHQgKEMpIDIwMTIgR29vZ2xlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZl
ZC4KKyAqIENvcHlyaWdodCAoQykgMjAxMyBOb2tpYSBDb3Jwb3JhdGlvbiBhbmQvb3IgaXRzIHN1
YnNpZGlhcnkoLWllcykuCiAgKgogICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2Ug
YW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CiAgKiBtb2RpZmljYXRpb24sIGFyZSBw
ZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKQEAgLTM0LDIy
ICszNSwyMiBAQAogCiAjaW5jbHVkZSAiUlRDU2Vzc2lvbkRlc2NyaXB0aW9uUmVxdWVzdEltcGwu
aCIKIAotI2luY2x1ZGUgIlJUQ0Vycm9yQ2FsbGJhY2suaCIKICNpbmNsdWRlICJSVENQZWVyQ29u
bmVjdGlvbi5oIgorI2luY2x1ZGUgIlJUQ1BlZXJDb25uZWN0aW9uRXJyb3JDYWxsYmFjay5oIgog
I2luY2x1ZGUgIlJUQ1Nlc3Npb25EZXNjcmlwdGlvbi5oIgogI2luY2x1ZGUgIlJUQ1Nlc3Npb25E
ZXNjcmlwdGlvbkNhbGxiYWNrLmgiCiAjaW5jbHVkZSAiUlRDU2Vzc2lvbkRlc2NyaXB0aW9uRGVz
Y3JpcHRvci5oIgogCiBuYW1lc3BhY2UgV2ViQ29yZSB7CiAKLVBhc3NSZWZQdHI8UlRDU2Vzc2lv
bkRlc2NyaXB0aW9uUmVxdWVzdEltcGw+IFJUQ1Nlc3Npb25EZXNjcmlwdGlvblJlcXVlc3RJbXBs
OjpjcmVhdGUoU2NyaXB0RXhlY3V0aW9uQ29udGV4dCogY29udGV4dCwgUGFzc1JlZlB0cjxSVENT
ZXNzaW9uRGVzY3JpcHRpb25DYWxsYmFjaz4gc3VjY2Vzc0NhbGxiYWNrLCBQYXNzUmVmUHRyPFJU
Q0Vycm9yQ2FsbGJhY2s+IGVycm9yQ2FsbGJhY2spCitQYXNzUmVmUHRyPFJUQ1Nlc3Npb25EZXNj
cmlwdGlvblJlcXVlc3RJbXBsPiBSVENTZXNzaW9uRGVzY3JpcHRpb25SZXF1ZXN0SW1wbDo6Y3Jl
YXRlKFNjcmlwdEV4ZWN1dGlvbkNvbnRleHQqIGNvbnRleHQsIFBhc3NSZWZQdHI8UlRDU2Vzc2lv
bkRlc2NyaXB0aW9uQ2FsbGJhY2s+IHN1Y2Nlc3NDYWxsYmFjaywgUGFzc1JlZlB0cjxSVENQZWVy
Q29ubmVjdGlvbkVycm9yQ2FsbGJhY2s+IGVycm9yQ2FsbGJhY2spCiB7CiAgICAgUmVmUHRyPFJU
Q1Nlc3Npb25EZXNjcmlwdGlvblJlcXVlc3RJbXBsPiByZXF1ZXN0ID0gYWRvcHRSZWYobmV3IFJU
Q1Nlc3Npb25EZXNjcmlwdGlvblJlcXVlc3RJbXBsKGNvbnRleHQsIHN1Y2Nlc3NDYWxsYmFjaywg
ZXJyb3JDYWxsYmFjaykpOwogICAgIHJlcXVlc3QtPnN1c3BlbmRJZk5lZWRlZCgpOwogICAgIHJl
dHVybiByZXF1ZXN0LnJlbGVhc2UoKTsKIH0KIAotUlRDU2Vzc2lvbkRlc2NyaXB0aW9uUmVxdWVz
dEltcGw6OlJUQ1Nlc3Npb25EZXNjcmlwdGlvblJlcXVlc3RJbXBsKFNjcmlwdEV4ZWN1dGlvbkNv
bnRleHQqIGNvbnRleHQsIFBhc3NSZWZQdHI8UlRDU2Vzc2lvbkRlc2NyaXB0aW9uQ2FsbGJhY2s+
IHN1Y2Nlc3NDYWxsYmFjaywgUGFzc1JlZlB0cjxSVENFcnJvckNhbGxiYWNrPiBlcnJvckNhbGxi
YWNrKQorUlRDU2Vzc2lvbkRlc2NyaXB0aW9uUmVxdWVzdEltcGw6OlJUQ1Nlc3Npb25EZXNjcmlw
dGlvblJlcXVlc3RJbXBsKFNjcmlwdEV4ZWN1dGlvbkNvbnRleHQqIGNvbnRleHQsIFBhc3NSZWZQ
dHI8UlRDU2Vzc2lvbkRlc2NyaXB0aW9uQ2FsbGJhY2s+IHN1Y2Nlc3NDYWxsYmFjaywgUGFzc1Jl
ZlB0cjxSVENQZWVyQ29ubmVjdGlvbkVycm9yQ2FsbGJhY2s+IGVycm9yQ2FsbGJhY2spCiAgICAg
OiBBY3RpdmVET01PYmplY3QoY29udGV4dCkKICAgICAsIG1fc3VjY2Vzc0NhbGxiYWNrKHN1Y2Nl
c3NDYWxsYmFjaykKICAgICAsIG1fZXJyb3JDYWxsYmFjayhlcnJvckNhbGxiYWNrKQpAQCAtNzMs
NyArNzQsNyBAQCB2b2lkIFJUQ1Nlc3Npb25EZXNjcmlwdGlvblJlcXVlc3RJbXBsOjpyZXF1ZXN0
U3VjY2VlZGVkKFBhc3NSZWZQdHI8UlRDU2Vzc2lvbkRlcwogdm9pZCBSVENTZXNzaW9uRGVzY3Jp
cHRpb25SZXF1ZXN0SW1wbDo6cmVxdWVzdEZhaWxlZChjb25zdCBTdHJpbmcmIGVycm9yKQogewog
ICAgIGlmIChtX2Vycm9yQ2FsbGJhY2spCi0gICAgICAgIG1fZXJyb3JDYWxsYmFjay0+aGFuZGxl
RXZlbnQoZXJyb3IpOworICAgICAgICBtX2Vycm9yQ2FsbGJhY2stPmhhbmRsZUV2ZW50KERPTUVy
cm9yOjpjcmVhdGUoZXJyb3IpLmdldCgpKTsKIAogICAgIGNsZWFyKCk7CiB9CmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL21lZGlhc3RyZWFtL1JUQ1Nlc3Npb25EZXNjcmlwdGlv
blJlcXVlc3RJbXBsLmggYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL21lZGlhc3RyZWFtL1JUQ1Nl
c3Npb25EZXNjcmlwdGlvblJlcXVlc3RJbXBsLmgKaW5kZXggZDFiY2VlMDEzNTEzYWE2N2MyYjA3
NmE5MDUwMWVjZTg1NjJlMTZlMC4uMjlkZTY0NzM5MTk5NmExZDVlZDI1M2NjMzY1ZDU0ZmNhNDhi
Mzk1MSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9tZWRpYXN0cmVhbS9SVENT
ZXNzaW9uRGVzY3JpcHRpb25SZXF1ZXN0SW1wbC5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL01vZHVs
ZXMvbWVkaWFzdHJlYW0vUlRDU2Vzc2lvbkRlc2NyaXB0aW9uUmVxdWVzdEltcGwuaApAQCAtMSw1
ICsxLDYgQEAKIC8qCiAgKiBDb3B5cmlnaHQgKEMpIDIwMTIgR29vZ2xlIEluYy4gQWxsIHJpZ2h0
cyByZXNlcnZlZC4KKyAqIENvcHlyaWdodCAoQykgMjAxMyBOb2tpYSBDb3Jwb3JhdGlvbiBhbmQv
b3IgaXRzIHN1YnNpZGlhcnkoLWllcykuCiAgKgogICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBp
biBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CiAgKiBtb2RpZmljYXRp
b24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMK
QEAgLTM4LDEzICszOSwxMyBAQAogCiBuYW1lc3BhY2UgV2ViQ29yZSB7CiAKLWNsYXNzIFJUQ0Vy
cm9yQ2FsbGJhY2s7CitjbGFzcyBSVENQZWVyQ29ubmVjdGlvbkVycm9yQ2FsbGJhY2s7CiBjbGFz
cyBSVENQZWVyQ29ubmVjdGlvbjsKIGNsYXNzIFJUQ1Nlc3Npb25EZXNjcmlwdGlvbkNhbGxiYWNr
OwogCiBjbGFzcyBSVENTZXNzaW9uRGVzY3JpcHRpb25SZXF1ZXN0SW1wbCA6IHB1YmxpYyBSVENT
ZXNzaW9uRGVzY3JpcHRpb25SZXF1ZXN0LCBwdWJsaWMgQWN0aXZlRE9NT2JqZWN0IHsKIHB1Ymxp
YzoKLSAgICBzdGF0aWMgUGFzc1JlZlB0cjxSVENTZXNzaW9uRGVzY3JpcHRpb25SZXF1ZXN0SW1w
bD4gY3JlYXRlKFNjcmlwdEV4ZWN1dGlvbkNvbnRleHQqLCBQYXNzUmVmUHRyPFJUQ1Nlc3Npb25E
ZXNjcmlwdGlvbkNhbGxiYWNrPiwgUGFzc1JlZlB0cjxSVENFcnJvckNhbGxiYWNrPik7CisgICAg
c3RhdGljIFBhc3NSZWZQdHI8UlRDU2Vzc2lvbkRlc2NyaXB0aW9uUmVxdWVzdEltcGw+IGNyZWF0
ZShTY3JpcHRFeGVjdXRpb25Db250ZXh0KiwgUGFzc1JlZlB0cjxSVENTZXNzaW9uRGVzY3JpcHRp
b25DYWxsYmFjaz4sIFBhc3NSZWZQdHI8UlRDUGVlckNvbm5lY3Rpb25FcnJvckNhbGxiYWNrPik7
CiAgICAgdmlydHVhbCB+UlRDU2Vzc2lvbkRlc2NyaXB0aW9uUmVxdWVzdEltcGwoKTsKIAogICAg
IHZpcnR1YWwgdm9pZCByZXF1ZXN0U3VjY2VlZGVkKFBhc3NSZWZQdHI8UlRDU2Vzc2lvbkRlc2Ny
aXB0aW9uRGVzY3JpcHRvcj4pIE9WRVJSSURFOwpAQCAtNTQsMTIgKzU1LDEyIEBAIHB1YmxpYzoK
ICAgICB2aXJ0dWFsIHZvaWQgc3RvcCgpIE9WRVJSSURFOwogCiBwcml2YXRlOgotICAgIFJUQ1Nl
c3Npb25EZXNjcmlwdGlvblJlcXVlc3RJbXBsKFNjcmlwdEV4ZWN1dGlvbkNvbnRleHQqLCBQYXNz
UmVmUHRyPFJUQ1Nlc3Npb25EZXNjcmlwdGlvbkNhbGxiYWNrPiwgUGFzc1JlZlB0cjxSVENFcnJv
ckNhbGxiYWNrPik7CisgICAgUlRDU2Vzc2lvbkRlc2NyaXB0aW9uUmVxdWVzdEltcGwoU2NyaXB0
RXhlY3V0aW9uQ29udGV4dCosIFBhc3NSZWZQdHI8UlRDU2Vzc2lvbkRlc2NyaXB0aW9uQ2FsbGJh
Y2s+LCBQYXNzUmVmUHRyPFJUQ1BlZXJDb25uZWN0aW9uRXJyb3JDYWxsYmFjaz4pOwogCiAgICAg
dm9pZCBjbGVhcigpOwogCiAgICAgUmVmUHRyPFJUQ1Nlc3Npb25EZXNjcmlwdGlvbkNhbGxiYWNr
PiBtX3N1Y2Nlc3NDYWxsYmFjazsKLSAgICBSZWZQdHI8UlRDRXJyb3JDYWxsYmFjaz4gbV9lcnJv
ckNhbGxiYWNrOworICAgIFJlZlB0cjxSVENQZWVyQ29ubmVjdGlvbkVycm9yQ2FsbGJhY2s+IG1f
ZXJyb3JDYWxsYmFjazsKIH07CiAKIH0gLy8gbmFtZXNwYWNlIFdlYkNvcmUKZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvbWVkaWFzdHJlYW0vUlRDVm9pZFJlcXVlc3RJbXBsLmNw
cCBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvbWVkaWFzdHJlYW0vUlRDVm9pZFJlcXVlc3RJbXBs
LmNwcAppbmRleCAxNTBlM2U5ZmZiYTcyNmM4NGE3Y2I3ZTY0YWY0MmVhNzJkYTllMTJmLi4xMTYx
MTU4MThiMmU5NjY0ZmNhMTE1ZmI4MDgzNTYxMDFhZjJhNzM0IDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V2ViQ29yZS9Nb2R1bGVzL21lZGlhc3RyZWFtL1JUQ1ZvaWRSZXF1ZXN0SW1wbC5jcHAKKysrIGIv
U291cmNlL1dlYkNvcmUvTW9kdWxlcy9tZWRpYXN0cmVhbS9SVENWb2lkUmVxdWVzdEltcGwuY3Bw
CkBAIC0xLDUgKzEsNiBAQAogLyoKICAqIENvcHlyaWdodCAoQykgMjAxMiBHb29nbGUgSW5jLiBB
bGwgcmlnaHRzIHJlc2VydmVkLgorICogQ29weXJpZ2h0IChDKSAyMDEzIE5va2lhIENvcnBvcmF0
aW9uIGFuZC9vciBpdHMgc3Vic2lkaWFyeSgtaWVzKS4KICAqCiAgKiBSZWRpc3RyaWJ1dGlvbiBh
bmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKICAqIG1v
ZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29u
ZGl0aW9ucwpAQCAtMzQsMjAgKzM1LDIxIEBACiAKICNpbmNsdWRlICJSVENWb2lkUmVxdWVzdElt
cGwuaCIKIAotI2luY2x1ZGUgIlJUQ0Vycm9yQ2FsbGJhY2suaCIKKyNpbmNsdWRlICJET01FcnJv
ci5oIgogI2luY2x1ZGUgIlJUQ1BlZXJDb25uZWN0aW9uLmgiCisjaW5jbHVkZSAiUlRDUGVlckNv
bm5lY3Rpb25FcnJvckNhbGxiYWNrLmgiCiAjaW5jbHVkZSAiVm9pZENhbGxiYWNrLmgiCiAKIG5h
bWVzcGFjZSBXZWJDb3JlIHsKIAotUGFzc1JlZlB0cjxSVENWb2lkUmVxdWVzdEltcGw+IFJUQ1Zv
aWRSZXF1ZXN0SW1wbDo6Y3JlYXRlKFNjcmlwdEV4ZWN1dGlvbkNvbnRleHQqIGNvbnRleHQsIFBh
c3NSZWZQdHI8Vm9pZENhbGxiYWNrPiBzdWNjZXNzQ2FsbGJhY2ssIFBhc3NSZWZQdHI8UlRDRXJy
b3JDYWxsYmFjaz4gZXJyb3JDYWxsYmFjaykKK1Bhc3NSZWZQdHI8UlRDVm9pZFJlcXVlc3RJbXBs
PiBSVENWb2lkUmVxdWVzdEltcGw6OmNyZWF0ZShTY3JpcHRFeGVjdXRpb25Db250ZXh0KiBjb250
ZXh0LCBQYXNzUmVmUHRyPFZvaWRDYWxsYmFjaz4gc3VjY2Vzc0NhbGxiYWNrLCBQYXNzUmVmUHRy
PFJUQ1BlZXJDb25uZWN0aW9uRXJyb3JDYWxsYmFjaz4gZXJyb3JDYWxsYmFjaykKIHsKICAgICBS
ZWZQdHI8UlRDVm9pZFJlcXVlc3RJbXBsPiByZXF1ZXN0ID0gYWRvcHRSZWYobmV3IFJUQ1ZvaWRS
ZXF1ZXN0SW1wbChjb250ZXh0LCBzdWNjZXNzQ2FsbGJhY2ssIGVycm9yQ2FsbGJhY2spKTsKICAg
ICByZXF1ZXN0LT5zdXNwZW5kSWZOZWVkZWQoKTsKICAgICByZXR1cm4gcmVxdWVzdC5yZWxlYXNl
KCk7CiB9CiAKLVJUQ1ZvaWRSZXF1ZXN0SW1wbDo6UlRDVm9pZFJlcXVlc3RJbXBsKFNjcmlwdEV4
ZWN1dGlvbkNvbnRleHQqIGNvbnRleHQsIFBhc3NSZWZQdHI8Vm9pZENhbGxiYWNrPiBzdWNjZXNz
Q2FsbGJhY2ssIFBhc3NSZWZQdHI8UlRDRXJyb3JDYWxsYmFjaz4gZXJyb3JDYWxsYmFjaykKK1JU
Q1ZvaWRSZXF1ZXN0SW1wbDo6UlRDVm9pZFJlcXVlc3RJbXBsKFNjcmlwdEV4ZWN1dGlvbkNvbnRl
eHQqIGNvbnRleHQsIFBhc3NSZWZQdHI8Vm9pZENhbGxiYWNrPiBzdWNjZXNzQ2FsbGJhY2ssIFBh
c3NSZWZQdHI8UlRDUGVlckNvbm5lY3Rpb25FcnJvckNhbGxiYWNrPiBlcnJvckNhbGxiYWNrKQog
ICAgIDogQWN0aXZlRE9NT2JqZWN0KGNvbnRleHQpCiAgICAgLCBtX3N1Y2Nlc3NDYWxsYmFjayhz
dWNjZXNzQ2FsbGJhY2spCiAgICAgLCBtX2Vycm9yQ2FsbGJhY2soZXJyb3JDYWxsYmFjaykKQEAg
LTY5LDcgKzcxLDcgQEAgdm9pZCBSVENWb2lkUmVxdWVzdEltcGw6OnJlcXVlc3RTdWNjZWVkZWQo
KQogdm9pZCBSVENWb2lkUmVxdWVzdEltcGw6OnJlcXVlc3RGYWlsZWQoY29uc3QgU3RyaW5nJiBl
cnJvcikKIHsKICAgICBpZiAobV9lcnJvckNhbGxiYWNrLmdldCgpKQotICAgICAgICBtX2Vycm9y
Q2FsbGJhY2stPmhhbmRsZUV2ZW50KGVycm9yKTsKKyAgICAgICAgbV9lcnJvckNhbGxiYWNrLT5o
YW5kbGVFdmVudChET01FcnJvcjo6Y3JlYXRlKGVycm9yKS5nZXQoKSk7CiAKICAgICBjbGVhcigp
OwogfQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9tZWRpYXN0cmVhbS9SVENW
b2lkUmVxdWVzdEltcGwuaCBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvbWVkaWFzdHJlYW0vUlRD
Vm9pZFJlcXVlc3RJbXBsLmgKaW5kZXggNjU3YWJmYzdjNmIzMjkyYTUzMzRjNDE5Y2YyYTQ3ZTI5
MmY3MmNiNi4uMjI3NTgzMzg2ZThiMDRiNzVhYzVlNDQ3ZTgyMmVlMmQzYTliZTVhMCAxMDA2NDQK
LS0tIGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9tZWRpYXN0cmVhbS9SVENWb2lkUmVxdWVzdElt
cGwuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL21lZGlhc3RyZWFtL1JUQ1ZvaWRSZXF1
ZXN0SW1wbC5oCkBAIC0xLDUgKzEsNiBAQAogLyoKICAqIENvcHlyaWdodCAoQykgMjAxMiBHb29n
bGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICogQ29weXJpZ2h0IChDKSAyMDEzIE5va2lh
IENvcnBvcmF0aW9uIGFuZC9vciBpdHMgc3Vic2lkaWFyeSgtaWVzKS4KICAqCiAgKiBSZWRpc3Ry
aWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhv
dXQKICAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xs
b3dpbmcgY29uZGl0aW9ucwpAQCAtMzgsMTIgKzM5LDEyIEBACiAKIG5hbWVzcGFjZSBXZWJDb3Jl
IHsKIAotY2xhc3MgUlRDRXJyb3JDYWxsYmFjazsKK2NsYXNzIFJUQ1BlZXJDb25uZWN0aW9uRXJy
b3JDYWxsYmFjazsKIGNsYXNzIFZvaWRDYWxsYmFjazsKIAogY2xhc3MgUlRDVm9pZFJlcXVlc3RJ
bXBsIDogcHVibGljIFJUQ1ZvaWRSZXF1ZXN0LCBwdWJsaWMgQWN0aXZlRE9NT2JqZWN0IHsKIHB1
YmxpYzoKLSAgICBzdGF0aWMgUGFzc1JlZlB0cjxSVENWb2lkUmVxdWVzdEltcGw+IGNyZWF0ZShT
Y3JpcHRFeGVjdXRpb25Db250ZXh0KiwgUGFzc1JlZlB0cjxWb2lkQ2FsbGJhY2s+LCBQYXNzUmVm
UHRyPFJUQ0Vycm9yQ2FsbGJhY2s+KTsKKyAgICBzdGF0aWMgUGFzc1JlZlB0cjxSVENWb2lkUmVx
dWVzdEltcGw+IGNyZWF0ZShTY3JpcHRFeGVjdXRpb25Db250ZXh0KiwgUGFzc1JlZlB0cjxWb2lk
Q2FsbGJhY2s+LCBQYXNzUmVmUHRyPFJUQ1BlZXJDb25uZWN0aW9uRXJyb3JDYWxsYmFjaz4pOwog
ICAgIHZpcnR1YWwgflJUQ1ZvaWRSZXF1ZXN0SW1wbCgpOwogCiAgICAgdmlydHVhbCB2b2lkIHJl
cXVlc3RTdWNjZWVkZWQoKTsKQEAgLTUzLDEyICs1NCwxMiBAQCBwdWJsaWM6CiAgICAgdmlydHVh
bCB2b2lkIHN0b3AoKSBPVkVSUklERTsKIAogcHJpdmF0ZToKLSAgICBSVENWb2lkUmVxdWVzdElt
cGwoU2NyaXB0RXhlY3V0aW9uQ29udGV4dCosIFBhc3NSZWZQdHI8Vm9pZENhbGxiYWNrPiwgUGFz
c1JlZlB0cjxSVENFcnJvckNhbGxiYWNrPik7CisgICAgUlRDVm9pZFJlcXVlc3RJbXBsKFNjcmlw
dEV4ZWN1dGlvbkNvbnRleHQqLCBQYXNzUmVmUHRyPFZvaWRDYWxsYmFjaz4sIFBhc3NSZWZQdHI8
UlRDUGVlckNvbm5lY3Rpb25FcnJvckNhbGxiYWNrPik7CiAKICAgICB2b2lkIGNsZWFyKCk7CiAK
ICAgICBSZWZQdHI8Vm9pZENhbGxiYWNrPiBtX3N1Y2Nlc3NDYWxsYmFjazsKLSAgICBSZWZQdHI8
UlRDRXJyb3JDYWxsYmFjaz4gbV9lcnJvckNhbGxiYWNrOworICAgIFJlZlB0cjxSVENQZWVyQ29u
bmVjdGlvbkVycm9yQ2FsbGJhY2s+IG1fZXJyb3JDYWxsYmFjazsKIH07CiAKIH0gLy8gbmFtZXNw
YWNlIFdlYkNvcmUKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUueGNvZGVwcm9q
L3Byb2plY3QucGJ4cHJvaiBiL1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUueGNvZGVwcm9qL3Byb2pl
Y3QucGJ4cHJvagppbmRleCA3ZGNjOTBjYjhjNDJkODNkMDViZjdhNTRhZTJjYTExNGZmMGZlNTc3
Li4wN2UzNWRiNDFmMGJhYjFlNTJhYjY1MjEyOGNhNGFhNmI5ZWQ3ZjU3IDEwMDY0NAotLS0gYS9T
b3VyY2UvV2ViQ29yZS9XZWJDb3JlLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2oKKysrIGIvU291
cmNlL1dlYkNvcmUvV2ViQ29yZS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qCkBAIC0yMjgsNyAr
MjI4LDYgQEAKIAkJMDc4RTA5MUYxN0QxNEQxQzAwNDIwQUExIC8qIFJUQ0RhdGFDaGFubmVsRXZl
bnQuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDA3MjIx
QjY3MTdDRUMzMjcwMDg0OEU1MSAvKiBSVENEYXRhQ2hhbm5lbEV2ZW50LmggKi87IHNldHRpbmdz
ID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKIAkJMDc4RTA5MjAxN0QxNEQxQzAw
NDIwQUExIC8qIFJUQ0RUTUZTZW5kZXIuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxk
RmlsZTsgZmlsZVJlZiA9IDA3MjIxQjZBMTdDRUMzMjcwMDg0OEU1MSAvKiBSVENEVE1GU2VuZGVy
LmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKIAkJMDc4
RTA5MjExN0QxNEQxQzAwNDIwQUExIC8qIFJUQ0RUTUZUb25lQ2hhbmdlRXZlbnQuaCBpbiBIZWFk
ZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDA3MjIxQjZEMTdDRUMzMjcw
MDg0OEU1MSAvKiBSVENEVE1GVG9uZUNoYW5nZUV2ZW50LmggKi87IHNldHRpbmdzID0ge0FUVFJJ
QlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKLQkJMDc4RTA5MjIxN0QxNEQxQzAwNDIwQUExIC8q
IFJUQ0Vycm9yQ2FsbGJhY2suaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsg
ZmlsZVJlZiA9IDA3MjIxQjZGMTdDRUMzMjcwMDg0OEU1MSAvKiBSVENFcnJvckNhbGxiYWNrLmgg
Ki87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKIAkJMDc4RTA5
MjMxN0QxNEQxQzAwNDIwQUExIC8qIFJUQ0ljZUNhbmRpZGF0ZS5oIGluIEhlYWRlcnMgKi8gPSB7
aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMDcyMjFCNzIxN0NFQzMyNzAwODQ4RTUxIC8q
IFJUQ0ljZUNhbmRpZGF0ZS5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUs
ICk7IH07IH07CiAJCTA3OEUwOTI0MTdEMTREMUMwMDQyMEFBMSAvKiBSVENJY2VDYW5kaWRhdGVF
dmVudC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMDcy
MjFCNzUxN0NFQzMyNzAwODQ4RTUxIC8qIFJUQ0ljZUNhbmRpZGF0ZUV2ZW50LmggKi87IHNldHRp
bmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKIAkJMDc4RTA5MjUxN0QxNEQx
QzAwNDIwQUExIC8qIFJUQ1BlZXJDb25uZWN0aW9uLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQ
QlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAwNzIyMUI3ODE3Q0VDMzI3MDA4NDhFNTEgLyogUlRDUGVl
ckNvbm5lY3Rpb24uaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9
OyB9OwpAQCAtMTU4Myw2ICsxNTgyLDggQEAKIAkJNEFEMDE3M0MxMjdFODI4NjAwMTUwMzVGIC8q
IEpTSFRNTE91dHB1dEVsZW1lbnQuY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRG
aWxlOyBmaWxlUmVmID0gNEFEMDE3M0ExMjdFODI4NjAwMTUwMzVGIC8qIEpTSFRNTE91dHB1dEVs
ZW1lbnQuY3BwICovOyB9OwogCQk0QUQwMTczRDEyN0U4Mjg2MDAxNTAzNUYgLyogSlNIVE1MT3V0
cHV0RWxlbWVudC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVm
ID0gNEFEMDE3M0IxMjdFODI4NjAwMTUwMzVGIC8qIEpTSFRNTE91dHB1dEVsZW1lbnQuaCAqLzsg
fTsKIAkJNEFFMEJGODkxODM2MDg0NDAwRjM4NTJEIC8qIEpTUlRDSWNlQ2FuZGlkYXRlQ3VzdG9t
LmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDRBRTBC
Rjg4MTgzNjA4MzEwMEYzODUyRCAvKiBKU1JUQ0ljZUNhbmRpZGF0ZUN1c3RvbS5jcHAgKi87IH07
CisJCTRBRjg4MTEzMTg1OEQ1ODAwMDkwNUExOSAvKiBSVENQZWVyQ29ubmVjdGlvbkVycm9yQ2Fs
bGJhY2suaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDRB
Rjg4MTExMTg1OEQ1ODAwMDkwNUExOSAvKiBSVENQZWVyQ29ubmVjdGlvbkVycm9yQ2FsbGJhY2su
aCAqLzsgfTsKKwkJNEFGODgxMTQxODU4RDU4MDAwOTA1QTE5IC8qIFJUQ1BlZXJDb25uZWN0aW9u
RXJyb3JDYWxsYmFjay5pZGwgaW4gUmVzb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsg
ZmlsZVJlZiA9IDRBRjg4MTEyMTg1OEQ1ODAwMDkwNUExOSAvKiBSVENQZWVyQ29ubmVjdGlvbkVy
cm9yQ2FsbGJhY2suaWRsICovOyB9OwogCQk0QjI3MDhDNzBBRjE5RUU0MDA2NTEyN0YgLyogUGFz
dGVib2FyZC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0g
NEIyNzA4QzUwQUYxOUVFNDAwNjUxMjdGIC8qIFBhc3RlYm9hcmQuaCAqLzsgc2V0dGluZ3MgPSB7
QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OwogCQk0QjI3MDk4MzBBRjJFNUUwMDA2NTEy
N0YgLyogUGFzdGVib2FyZE1hYy5tbSBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmls
ZTsgZmlsZVJlZiA9IDRCMjcwOTgxMEFGMkU1RTAwMDY1MTI3RiAvKiBQYXN0ZWJvYXJkTWFjLm1t
ICovOyB9OwogCQk0QjMwNDNDNzBBRTAzNzAzMDBBODI2NDcgLyogU291bmQuaCBpbiBIZWFkZXJz
ICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDRCMzA0M0M2MEFFMDM3MDMwMEE4
MjY0NyAvKiBTb3VuZC5oICovOyB9OwpAQCAtNjczMCw4ICs2NzMxLDYgQEAKIAkJMDcyMjFCNkMx
N0NFQzMyNzAwODQ4RTUxIC8qIFJUQ0RUTUZUb25lQ2hhbmdlRXZlbnQuY3BwICovID0ge2lzYSA9
IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0g
c291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gUlRDRFRNRlRvbmVDaGFuZ2VFdmVudC5jcHA7IHNv
dXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTA3MjIxQjZEMTdDRUMzMjcwMDg0OEU1MSAvKiBS
VENEVE1GVG9uZUNoYW5nZUV2ZW50LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmls
ZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9
IFJUQ0RUTUZUb25lQ2hhbmdlRXZlbnQuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJ
MDcyMjFCNkUxN0NFQzMyNzAwODQ4RTUxIC8qIFJUQ0RUTUZUb25lQ2hhbmdlRXZlbnQuaWRsICov
ID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZp
bGVUeXBlID0gdGV4dDsgcGF0aCA9IFJUQ0RUTUZUb25lQ2hhbmdlRXZlbnQuaWRsOyBzb3VyY2VU
cmVlID0gIjxncm91cD4iOyB9OwotCQkwNzIyMUI2RjE3Q0VDMzI3MDA4NDhFNTEgLyogUlRDRXJy
b3JDYWxsYmFjay5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9
IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBSVENFcnJvckNh
bGxiYWNrLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07Ci0JCTA3MjIxQjcwMTdDRUMzMjcw
MDg0OEU1MSAvKiBSVENFcnJvckNhbGxiYWNrLmlkbCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJl
bmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHRleHQ7IHBhdGggPSBS
VENFcnJvckNhbGxiYWNrLmlkbDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJMDcyMjFC
NzExN0NFQzMyNzAwODQ4RTUxIC8qIFJUQ0ljZUNhbmRpZGF0ZS5jcHAgKi8gPSB7aXNhID0gUEJY
RmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3Vy
Y2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBSVENJY2VDYW5kaWRhdGUuY3BwOyBzb3VyY2VUcmVlID0g
Ijxncm91cD4iOyB9OwogCQkwNzIyMUI3MjE3Q0VDMzI3MDA4NDhFNTEgLyogUlRDSWNlQ2FuZGlk
YXRlLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFz
dEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFJUQ0ljZUNhbmRpZGF0ZS5o
OyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQkwNzIyMUI3MzE3Q0VDMzI3MDA4NDhFNTEg
LyogUlRDSWNlQ2FuZGlkYXRlLmlkbCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxl
RW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHRleHQ7IHBhdGggPSBSVENJY2VDYW5k
aWRhdGUuaWRsOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwpAQCAtODMyOSw2ICs4MzI4LDgg
QEAKIAkJNEFEMDE3M0ExMjdFODI4NjAwMTUwMzVGIC8qIEpTSFRNTE91dHB1dEVsZW1lbnQuY3Bw
ICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93
bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gSlNIVE1MT3V0cHV0RWxlbWVu
dC5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTRBRDAxNzNCMTI3RTgyODYwMDE1
MDM1RiAvKiBKU0hUTUxPdXRwdXRFbGVtZW50LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5j
ZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsg
cGF0aCA9IEpTSFRNTE91dHB1dEVsZW1lbnQuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsK
IAkJNEFFMEJGODgxODM2MDgzMTAwRjM4NTJEIC8qIEpTUlRDSWNlQ2FuZGlkYXRlQ3VzdG9tLmNw
cCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25v
d25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEpTUlRDSWNlQ2FuZGlkYXRl
Q3VzdG9tLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNEFGODgxMTExODU4RDU4
MDAwOTA1QTE5IC8qIFJUQ1BlZXJDb25uZWN0aW9uRXJyb3JDYWxsYmFjay5oICovID0ge2lzYSA9
IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0g
c291cmNlY29kZS5jLmg7IHBhdGggPSBSVENQZWVyQ29ubmVjdGlvbkVycm9yQ2FsbGJhY2suaDsg
c291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNEFGODgxMTIxODU4RDU4MDAwOTA1QTE5IC8q
IFJUQ1BlZXJDb25uZWN0aW9uRXJyb3JDYWxsYmFjay5pZGwgKi8gPSB7aXNhID0gUEJYRmlsZVJl
ZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSB0ZXh0OyBwYXRo
ID0gUlRDUGVlckNvbm5lY3Rpb25FcnJvckNhbGxiYWNrLmlkbDsgc291cmNlVHJlZSA9ICI8Z3Jv
dXA+IjsgfTsKIAkJNEIyNzA4QzUwQUYxOUVFNDAwNjUxMjdGIC8qIFBhc3RlYm9hcmQuaCAqLyA9
IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxl
VHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gUGFzdGVib2FyZC5oOyBzb3VyY2VUcmVlID0g
Ijxncm91cD4iOyB9OwogCQk0QjI3MDk4MTBBRjJFNUUwMDA2NTEyN0YgLyogUGFzdGVib2FyZE1h
Yy5tbSAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0
S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLm9iamNwcDsgcGF0aCA9IFBhc3RlYm9hcmRN
YWMubW07IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTRCMzA0M0M2MEFFMDM3MDMwMEE4
MjY0NyAvKiBTb3VuZC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGlu
ZyA9IDMwOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gU291bmQu
aDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKQEAgLTEzNjY5LDYgKzEzNjcwLDggQEAKIAkJ
MDcyMjFCNDYxN0NFQzMyNzAwODQ4RTUxIC8qIG1lZGlhc3RyZWFtICovID0gewogCQkJaXNhID0g
UEJYR3JvdXA7CiAJCQljaGlsZHJlbiA9ICgKKwkJCQk0QUY4ODExMTE4NThENTgwMDA5MDVBMTkg
LyogUlRDUGVlckNvbm5lY3Rpb25FcnJvckNhbGxiYWNrLmggKi8sCisJCQkJNEFGODgxMTIxODU4
RDU4MDAwOTA1QTE5IC8qIFJUQ1BlZXJDb25uZWN0aW9uRXJyb3JDYWxsYmFjay5pZGwgKi8sCiAJ
CQkJMDc3OUJGMEExODQ1MzE2ODAwMEI2QUU3IC8qIEhUTUxNZWRpYUVsZW1lbnRNZWRpYVN0cmVh
bS5jcHAgKi8sCiAJCQkJMDc3OUJGMEIxODQ1MzE2ODAwMEI2QUU3IC8qIEhUTUxNZWRpYUVsZW1l
bnRNZWRpYVN0cmVhbS5oICovLAogCQkJCTA3NzlCRjBDMTg0NTMxNjgwMDBCNkFFNyAvKiBIVE1M
TWVkaWFFbGVtZW50TWVkaWFTdHJlYW0uaWRsICovLApAQCAtMTM3NDIsOCArMTM3NDUsNiBAQAog
CQkJCTA3MjIxQjZDMTdDRUMzMjcwMDg0OEU1MSAvKiBSVENEVE1GVG9uZUNoYW5nZUV2ZW50LmNw
cCAqLywKIAkJCQkwNzIyMUI2RDE3Q0VDMzI3MDA4NDhFNTEgLyogUlRDRFRNRlRvbmVDaGFuZ2VF
dmVudC5oICovLAogCQkJCTA3MjIxQjZFMTdDRUMzMjcwMDg0OEU1MSAvKiBSVENEVE1GVG9uZUNo
YW5nZUV2ZW50LmlkbCAqLywKLQkJCQkwNzIyMUI2RjE3Q0VDMzI3MDA4NDhFNTEgLyogUlRDRXJy
b3JDYWxsYmFjay5oICovLAotCQkJCTA3MjIxQjcwMTdDRUMzMjcwMDg0OEU1MSAvKiBSVENFcnJv
ckNhbGxiYWNrLmlkbCAqLywKIAkJCQkwNzIyMUI3MTE3Q0VDMzI3MDA4NDhFNTEgLyogUlRDSWNl
Q2FuZGlkYXRlLmNwcCAqLywKIAkJCQkwNzIyMUI3MjE3Q0VDMzI3MDA4NDhFNTEgLyogUlRDSWNl
Q2FuZGlkYXRlLmggKi8sCiAJCQkJMDcyMjFCNzMxN0NFQzMyNzAwODQ4RTUxIC8qIFJUQ0ljZUNh
bmRpZGF0ZS5pZGwgKi8sCkBAIC0yMzg1OCw3ICsyMzg1OSw2IEBACiAJCQkJQjJGQTNEOTMwQUI3
NUE2RjAwMEU1QUM0IC8qIEpTU1ZHRkVUaWxlRWxlbWVudC5oIGluIEhlYWRlcnMgKi8sCiAJCQkJ
QjJGQTNEOTUwQUI3NUE2RjAwMEU1QUM0IC8qIEpTU1ZHRkVUdXJidWxlbmNlRWxlbWVudC5oIGlu
IEhlYWRlcnMgKi8sCiAJCQkJQjJGQTNEOTcwQUI3NUE2RjAwMEU1QUM0IC8qIEpTU1ZHRmlsdGVy
RWxlbWVudC5oIGluIEhlYWRlcnMgKi8sCi0JCQkJMDc4RTA5MjIxN0QxNEQxQzAwNDIwQUExIC8q
IFJUQ0Vycm9yQ2FsbGJhY2suaCBpbiBIZWFkZXJzICovLAogCQkJCUIyN0IyODI2MENFRjBDMDcw
MEQzOUQ1NCAvKiBKU1NWR0ZvbnRFbGVtZW50LmggaW4gSGVhZGVycyAqLywKIAkJCQlBODNCNzkw
NTBDQ0FGRjE1MDAwQjA4MjUgLyogSlNTVkdGb250RmFjZUVsZW1lbnQuaCBpbiBIZWFkZXJzICov
LAogCQkJCUE4M0I3OTAwMENDQUZGMTUwMDBCMDgyNSAvKiBKU1NWR0ZvbnRGYWNlRm9ybWF0RWxl
bWVudC5oIGluIEhlYWRlcnMgKi8sCkBAIC0yNDYzNyw2ICsyNDYzNyw3IEBACiAJCQkJNDk4Nzcw
RTkxMjQyQzUzNTAwMjIyNkJBIC8qIFNoYWRlci5oIGluIEhlYWRlcnMgKi8sCiAJCQkJMEYzREQ0
NTAxMkY1RUExQjAwMEQ5MTkwIC8qIFNoYWRvd0JsdXIuaCBpbiBIZWFkZXJzICovLAogCQkJCUJD
NUVCOEM0MEU4MjAzMUIwMEIyNTk2NSAvKiBTaGFkb3dEYXRhLmggaW4gSGVhZGVycyAqLywKKwkJ
CQk0QUY4ODExMzE4NThENTgwMDA5MDVBMTkgLyogUlRDUGVlckNvbm5lY3Rpb25FcnJvckNhbGxi
YWNrLmggaW4gSGVhZGVycyAqLywKIAkJCQlBNkQxNjk2NDEzNDZCNEMxMDAwRUI3NzAgLyogU2hh
ZG93Um9vdC5oIGluIEhlYWRlcnMgKi8sCiAJCQkJRkQ0NUE5NEYxNzVEM0YzRTAwQzIxRUM4IC8q
IFNoYXBlLmggaW4gSGVhZGVycyAqLywKIAkJCQlGRDQ1QTk1MDE3NUQzRjNFMDBDMjFFQzggLyog
U2hhcGVJbmZvLmggaW4gSGVhZGVycyAqLywKQEAgLTI1NTQwLDYgKzI1NTQxLDcgQEAKIAkJCQk5
MzE1M0JERTE0MTk1OUY0MDBGQ0Y1QkUgLyogZGVsZXRlQnV0dG9uLnBuZyBpbiBSZXNvdXJjZXMg
Ki8sCiAJCQkJOTMxNTNCQ0QxNDE3RkJCRjAwRkNGNUJFIC8qIGRlbGV0ZUJ1dHRvbkAyeC5wbmcg
aW4gUmVzb3VyY2VzICovLAogCQkJCTkzMTUzQkUwMTQxOTVBMjgwMEZDRjVCRSAvKiBkZWxldGVC
dXR0b25QcmVzc2VkLnBuZyBpbiBSZXNvdXJjZXMgKi8sCisJCQkJNEFGODgxMTQxODU4RDU4MDAw
OTA1QTE5IC8qIFJUQ1BlZXJDb25uZWN0aW9uRXJyb3JDYWxsYmFjay5pZGwgaW4gUmVzb3VyY2Vz
ICovLAogCQkJCTkzMTUzQkNGMTQxN0ZCREIwMEZDRjVCRSAvKiBkZWxldGVCdXR0b25QcmVzc2Vk
QDJ4LnBuZyBpbiBSZXNvdXJjZXMgKi8sCiAJCQkJODUxMzZDOTkwQUVENjY1OTAwRjkwQTNEIC8q
IGVhc3RSZXNpemVDdXJzb3IucG5nIGluIFJlc291cmNlcyAqLywKIAkJCQk4NTEzNkM5QTBBRUQ2
NjU5MDBGOTBBM0QgLyogZWFzdFdlc3RSZXNpemVDdXJzb3IucG5nIGluIFJlc291cmNlcyAqLywK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL21lZGlhc3RyZWFtL1JUQ1BlZXJD
b25uZWN0aW9uSGFuZGxlci5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9tZWRpYXN0cmVh
bS9SVENQZWVyQ29ubmVjdGlvbkhhbmRsZXIuY3BwCmluZGV4IDUyYjg2ZTE3ZjI0NWQzNmI1NmI1
OWQ4ZDMzY2M5MzE3Y2EyNzlhYWQuLmY1YTM2YTNiZTQ3ODcyZTBlYzA4M2NmMmQwZmFkNzBhOGIw
MWVjYWUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL21lZGlhc3RyZWFtL1JU
Q1BlZXJDb25uZWN0aW9uSGFuZGxlci5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0v
bWVkaWFzdHJlYW0vUlRDUGVlckNvbm5lY3Rpb25IYW5kbGVyLmNwcApAQCAtMSw1ICsxLDYgQEAK
IC8qCiAgKiBDb3B5cmlnaHQgKEMpIDIwMTIgR29vZ2xlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZl
ZC4KKyAqIENvcHlyaWdodCAoQykgMjAxMyBOb2tpYSBDb3Jwb3JhdGlvbiBhbmQvb3IgaXRzIHN1
YnNpZGlhcnkoLWllcykuCiAgKgogICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2Ug
YW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CiAgKiBtb2RpZmljYXRpb24sIGFyZSBw
ZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMgYXJlCkBAIC0z
NCw2ICszNSw4IEBACiAKICNpbmNsdWRlICJSVENQZWVyQ29ubmVjdGlvbkhhbmRsZXIuaCIKIAor
I2luY2x1ZGUgPHd0Zi9OZXZlckRlc3Ryb3llZC5oPgorCiBuYW1lc3BhY2UgV2ViQ29yZSB7CiBj
bGFzcyBSVENQZWVyQ29ubmVjdGlvbkhhbmRsZXJDbGllbnQ7CiAKQEAgLTQ0LDYgKzQ3LDMwIEBA
IHN0YXRpYyBzdGQ6OnVuaXF1ZV9wdHI8UlRDUGVlckNvbm5lY3Rpb25IYW5kbGVyPiBjcmVhdGVI
YW5kbGVyKFJUQ1BlZXJDb25uZWN0aW9uCiAKIENyZWF0ZVBlZXJDb25uZWN0aW9uSGFuZGxlciBS
VENQZWVyQ29ubmVjdGlvbkhhbmRsZXI6OmNyZWF0ZSA9IGNyZWF0ZUhhbmRsZXI7CiAKK2NvbnN0
IEF0b21pY1N0cmluZyYgUlRDUGVlckNvbm5lY3Rpb25IYW5kbGVyOjppbmNvbXBhdGlibGVDb25z
dHJhaW50c0Vycm9yTmFtZSgpCit7CisgICAgc3RhdGljIE5ldmVyRGVzdHJveWVkPEF0b21pY1N0
cmluZz4gaW5jb21wYXRpYmxlQ29uc3RyYWludHMoIkluY29tcGF0aWJsZUNvbnN0cmFpbnRzRXJy
b3IiLCBBdG9taWNTdHJpbmc6OkNvbnN0cnVjdEZyb21MaXRlcmFsKTsKKyAgICByZXR1cm4gaW5j
b21wYXRpYmxlQ29uc3RyYWludHM7Cit9CisKK2NvbnN0IEF0b21pY1N0cmluZyYgUlRDUGVlckNv
bm5lY3Rpb25IYW5kbGVyOjppbnZhbGlkU2Vzc2lvbkRlc2NyaXB0aW9uRXJyb3JOYW1lKCkKK3sK
KyAgICBzdGF0aWMgTmV2ZXJEZXN0cm95ZWQ8QXRvbWljU3RyaW5nPiBpbnZhbGlkU2Vzc2lvbkRl
c2NyaXB0aW9uKCJJbnZhbGlkU2Vzc2lvbkRlc2NyaXB0aW9uRXJyb3IiLCBBdG9taWNTdHJpbmc6
OkNvbnN0cnVjdEZyb21MaXRlcmFsKTsKKyAgICByZXR1cm4gaW52YWxpZFNlc3Npb25EZXNjcmlw
dGlvbjsKK30KKworY29uc3QgQXRvbWljU3RyaW5nJiBSVENQZWVyQ29ubmVjdGlvbkhhbmRsZXI6
OmluY29tcGF0aWJsZVNlc3Npb25EZXNjcmlwdGlvbkVycm9yTmFtZSgpCit7CisgICAgc3RhdGlj
IE5ldmVyRGVzdHJveWVkPEF0b21pY1N0cmluZz4gaW5jb21wYXRpYmxlU2Vzc2lvbkRlc2NyaXB0
aW9uKCJJbmNvbXBhdGlibGVTZXNzaW9uRGVzY3JpcHRpb25FcnJvciIsIEF0b21pY1N0cmluZzo6
Q29uc3RydWN0RnJvbUxpdGVyYWwpOworICAgIHJldHVybiBpbmNvbXBhdGlibGVTZXNzaW9uRGVz
Y3JpcHRpb247Cit9CisKK2NvbnN0IEF0b21pY1N0cmluZyYgUlRDUGVlckNvbm5lY3Rpb25IYW5k
bGVyOjppbnRlcm5hbEVycm9yTmFtZSgpCit7CisgICAgc3RhdGljIE5ldmVyRGVzdHJveWVkPEF0
b21pY1N0cmluZz4gaW50ZXJuYWwoImludGVybmFsRXJyb3IiLCBBdG9taWNTdHJpbmc6OkNvbnN0
cnVjdEZyb21MaXRlcmFsKTsKKyAgICByZXR1cm4gaW50ZXJuYWw7Cit9CisKIH0gLy8gbmFtZXNw
YWNlIFdlYkNvcmUKIAogI2VuZGlmIC8vIEVOQUJMRShNRURJQV9TVFJFQU0pCmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9tZWRpYXN0cmVhbS9SVENQZWVyQ29ubmVjdGlvbkhh
bmRsZXIuaCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL21lZGlhc3RyZWFtL1JUQ1BlZXJDb25u
ZWN0aW9uSGFuZGxlci5oCmluZGV4IDAxNjA1YThiMzczZjgzYjlmNGQ5NTllZDZlNzgzZWU5YzJk
OTg1ODAuLjk1NGFjYjlhMzI1ZGVhNWVjZGMyYjQ2MmRkMjAwNzc1NWFmNmZmNzYgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL21lZGlhc3RyZWFtL1JUQ1BlZXJDb25uZWN0aW9u
SGFuZGxlci5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL21lZGlhc3RyZWFtL1JUQ1Bl
ZXJDb25uZWN0aW9uSGFuZGxlci5oCkBAIC0xLDUgKzEsNiBAQAogLyoKICAqIENvcHlyaWdodCAo
QykgMjAxMiBHb29nbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICogQ29weXJpZ2h0IChD
KSAyMDEzIE5va2lhIENvcnBvcmF0aW9uIGFuZC9vciBpdHMgc3Vic2lkaWFyeSgtaWVzKS4KICAq
CiAgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3
aXRoIG9yIHdpdGhvdXQKICAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0
aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucwpAQCAtNzQsNiArNzUsMTEgQEAgcHVibGljOgog
ICAgIHN0YXRpYyBDcmVhdGVQZWVyQ29ubmVjdGlvbkhhbmRsZXIgY3JlYXRlOwogICAgIHZpcnR1
YWwgflJUQ1BlZXJDb25uZWN0aW9uSGFuZGxlcigpIHsgfQogCisgICAgc3RhdGljIGNvbnN0IEF0
b21pY1N0cmluZyYgaW5jb21wYXRpYmxlQ29uc3RyYWludHNFcnJvck5hbWUoKTsKKyAgICBzdGF0
aWMgY29uc3QgQXRvbWljU3RyaW5nJiBpbnZhbGlkU2Vzc2lvbkRlc2NyaXB0aW9uRXJyb3JOYW1l
KCk7CisgICAgc3RhdGljIGNvbnN0IEF0b21pY1N0cmluZyYgaW5jb21wYXRpYmxlU2Vzc2lvbkRl
c2NyaXB0aW9uRXJyb3JOYW1lKCk7CisgICAgc3RhdGljIGNvbnN0IEF0b21pY1N0cmluZyYgaW50
ZXJuYWxFcnJvck5hbWUoKTsKKwogICAgIHZpcnR1YWwgYm9vbCBpbml0aWFsaXplKFBhc3NSZWZQ
dHI8UlRDQ29uZmlndXJhdGlvbj4sIFBhc3NSZWZQdHI8TWVkaWFDb25zdHJhaW50cz4pID0gMDsK
IAogICAgIHZpcnR1YWwgdm9pZCBjcmVhdGVPZmZlcihQYXNzUmVmUHRyPFJUQ1Nlc3Npb25EZXNj
cmlwdGlvblJlcXVlc3Q+LCBQYXNzUmVmUHRyPE1lZGlhQ29uc3RyYWludHM+KSA9IDA7CmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9tb2NrL1JUQ05vdGlmaWVyc01vY2suY3Bw
IGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbW9jay9SVENOb3RpZmllcnNNb2NrLmNwcAppbmRl
eCAwMjNmNDYzNDlkZDc0ZWYyMGY1MzA1M2RjNmQ3ODE0MzhiOTVhMmJkLi4wYzgwNjU5NmM3YmMw
MTY2Njc4NTgyY2UzZDVmNDA3YzEwMDcyMjBiIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9w
bGF0Zm9ybS9tb2NrL1JUQ05vdGlmaWVyc01vY2suY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3Bs
YXRmb3JtL21vY2svUlRDTm90aWZpZXJzTW9jay5jcHAKQEAgLTI5LDYgKzI5LDcgQEAKIAogI2lu
Y2x1ZGUgIlJUQ05vdGlmaWVyc01vY2suaCIKIAorI2luY2x1ZGUgIkRPTUVycm9yLmgiCiAjaW5j
bHVkZSAiUlRDRGF0YUNoYW5uZWxIYW5kbGVyTW9jay5oIgogI2luY2x1ZGUgIlJUQ1Nlc3Npb25E
ZXNjcmlwdGlvbkRlc2NyaXB0b3IuaCIKICNpbmNsdWRlICJSVENTZXNzaW9uRGVzY3JpcHRpb25S
ZXF1ZXN0LmgiCkBAIC0zNiw5ICszNywxMCBAQAogCiBuYW1lc3BhY2UgV2ViQ29yZSB7CiAKLVNl
c3Npb25SZXF1ZXN0Tm90aWZpZXI6OlNlc3Npb25SZXF1ZXN0Tm90aWZpZXIoUGFzc1JlZlB0cjxS
VENTZXNzaW9uRGVzY3JpcHRpb25SZXF1ZXN0PiByZXF1ZXN0LCBQYXNzUmVmUHRyPFJUQ1Nlc3Np
b25EZXNjcmlwdGlvbkRlc2NyaXB0b3I+IGRlc2NyaXB0b3IpCitTZXNzaW9uUmVxdWVzdE5vdGlm
aWVyOjpTZXNzaW9uUmVxdWVzdE5vdGlmaWVyKFBhc3NSZWZQdHI8UlRDU2Vzc2lvbkRlc2NyaXB0
aW9uUmVxdWVzdD4gcmVxdWVzdCwgUGFzc1JlZlB0cjxSVENTZXNzaW9uRGVzY3JpcHRpb25EZXNj
cmlwdG9yPiBkZXNjcmlwdG9yLCBjb25zdCBTdHJpbmcmIGVycm9yTmFtZSkKICAgICA6IG1fcmVx
dWVzdChyZXF1ZXN0KQogICAgICwgbV9kZXNjcmlwdG9yKGRlc2NyaXB0b3IpCisgICAgLCBtX2Vy
cm9yTmFtZShlcnJvck5hbWUpCiB7CiB9CiAKQEAgLTQ3LDEyICs0OSwxMyBAQCB2b2lkIFNlc3Np
b25SZXF1ZXN0Tm90aWZpZXI6OmZpcmUoKQogICAgIGlmIChtX2Rlc2NyaXB0b3IpCiAgICAgICAg
IG1fcmVxdWVzdC0+cmVxdWVzdFN1Y2NlZWRlZChtX2Rlc2NyaXB0b3IpOwogICAgIGVsc2UKLSAg
ICAgICAgbV9yZXF1ZXN0LT5yZXF1ZXN0RmFpbGVkKCJURVNUX0VSUk9SIik7CisgICAgICAgIG1f
cmVxdWVzdC0+cmVxdWVzdEZhaWxlZChtX2Vycm9yTmFtZSk7CiB9CiAKLVZvaWRSZXF1ZXN0Tm90
aWZpZXI6OlZvaWRSZXF1ZXN0Tm90aWZpZXIoUGFzc1JlZlB0cjxSVENWb2lkUmVxdWVzdD4gcmVx
dWVzdCwgYm9vbCBzdWNjZXNzKQorVm9pZFJlcXVlc3ROb3RpZmllcjo6Vm9pZFJlcXVlc3ROb3Rp
ZmllcihQYXNzUmVmUHRyPFJUQ1ZvaWRSZXF1ZXN0PiByZXF1ZXN0LCBib29sIHN1Y2Nlc3MsIGNv
bnN0IFN0cmluZyYgZXJyb3JOYW1lKQogICAgIDogbV9yZXF1ZXN0KHJlcXVlc3QpCiAgICAgLCBt
X3N1Y2Nlc3Moc3VjY2VzcykKKyAgICAsIG1fZXJyb3JOYW1lKGVycm9yTmFtZSkKIHsKIH0KIApA
QCAtNjEsNyArNjQsNyBAQCB2b2lkIFZvaWRSZXF1ZXN0Tm90aWZpZXI6OmZpcmUoKQogICAgIGlm
IChtX3N1Y2Nlc3MpCiAgICAgICAgIG1fcmVxdWVzdC0+cmVxdWVzdFN1Y2NlZWRlZCgpOwogICAg
IGVsc2UKLSAgICAgICAgbV9yZXF1ZXN0LT5yZXF1ZXN0RmFpbGVkKCJURVNUX0VSUk9SIik7Cisg
ICAgICAgIG1fcmVxdWVzdC0+cmVxdWVzdEZhaWxlZChtX2Vycm9yTmFtZSk7CiB9CiAKIEljZUNv
bm5lY3Rpb25Ob3RpZmllcjo6SWNlQ29ubmVjdGlvbk5vdGlmaWVyKFJUQ1BlZXJDb25uZWN0aW9u
SGFuZGxlckNsaWVudCogY2xpZW50LCBSVENQZWVyQ29ubmVjdGlvbkhhbmRsZXJDbGllbnQ6Oklj
ZUNvbm5lY3Rpb25TdGF0ZSBjb25uZWN0aW9uU3RhdGUsIFJUQ1BlZXJDb25uZWN0aW9uSGFuZGxl
ckNsaWVudDo6SWNlR2F0aGVyaW5nU3RhdGUgZ2F0aGVyaW5nU3RhdGUpCmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9tb2NrL1JUQ05vdGlmaWVyc01vY2suaCBiL1NvdXJjZS9X
ZWJDb3JlL3BsYXRmb3JtL21vY2svUlRDTm90aWZpZXJzTW9jay5oCmluZGV4IDk1OTdhZmMxOWU2
MzZlNDkxMWJkYWQ1N2JmZDA5NTU2YWFmNzg3ODcuLmVlMDVjMjRiZWRkMTFkYzg0MDg4ZjBhMGIw
Y2ExZmMyZmI0YjZjMzggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL21vY2sv
UlRDTm90aWZpZXJzTW9jay5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL21vY2svUlRD
Tm90aWZpZXJzTW9jay5oCkBAIC0zMyw2ICszMyw3IEBACiAjaW5jbHVkZSAiVGltZXJFdmVudEJh
c2VkTW9jay5oIgogI2luY2x1ZGUgPHd0Zi9QYXNzUmVmUHRyLmg+CiAjaW5jbHVkZSA8d3RmL1Jl
ZlB0ci5oPgorI2luY2x1ZGUgPHd0Zi90ZXh0L1dURlN0cmluZy5oPgogCiBuYW1lc3BhY2UgV2Vi
Q29yZSB7CiAKQEAgLTQyLDI0ICs0MywyNiBAQCBjbGFzcyBSVENWb2lkUmVxdWVzdDsKIAogY2xh
c3MgU2Vzc2lvblJlcXVlc3ROb3RpZmllciA6IHB1YmxpYyBNb2NrTm90aWZpZXIgewogcHVibGlj
OgotICAgIFNlc3Npb25SZXF1ZXN0Tm90aWZpZXIoUGFzc1JlZlB0cjxSVENTZXNzaW9uRGVzY3Jp
cHRpb25SZXF1ZXN0PiwgUGFzc1JlZlB0cjxSVENTZXNzaW9uRGVzY3JpcHRpb25EZXNjcmlwdG9y
Pik7CisgICAgU2Vzc2lvblJlcXVlc3ROb3RpZmllcihQYXNzUmVmUHRyPFJUQ1Nlc3Npb25EZXNj
cmlwdGlvblJlcXVlc3Q+LCBQYXNzUmVmUHRyPFJUQ1Nlc3Npb25EZXNjcmlwdGlvbkRlc2NyaXB0
b3I+LCBjb25zdCBTdHJpbmcmID0gZW1wdHlTdHJpbmcoKSk7CiAKICAgICB2b2lkIGZpcmUoKSBP
VkVSUklERTsKIAogcHJpdmF0ZToKICAgICBSZWZQdHI8UlRDU2Vzc2lvbkRlc2NyaXB0aW9uUmVx
dWVzdD4gbV9yZXF1ZXN0OwogICAgIFJlZlB0cjxSVENTZXNzaW9uRGVzY3JpcHRpb25EZXNjcmlw
dG9yPiBtX2Rlc2NyaXB0b3I7CisgICAgU3RyaW5nIG1fZXJyb3JOYW1lOwogfTsKIAogY2xhc3Mg
Vm9pZFJlcXVlc3ROb3RpZmllciA6IHB1YmxpYyBNb2NrTm90aWZpZXIgewogcHVibGljOgotICAg
IFZvaWRSZXF1ZXN0Tm90aWZpZXIoUGFzc1JlZlB0cjxSVENWb2lkUmVxdWVzdD4sIGJvb2wpOwor
ICAgIFZvaWRSZXF1ZXN0Tm90aWZpZXIoUGFzc1JlZlB0cjxSVENWb2lkUmVxdWVzdD4sIGJvb2ws
IGNvbnN0IFN0cmluZyYgPSBlbXB0eVN0cmluZygpKTsKIAogICAgIHZvaWQgZmlyZSgpIE9WRVJS
SURFOwogCiBwcml2YXRlOgogICAgIFJlZlB0cjxSVENWb2lkUmVxdWVzdD4gbV9yZXF1ZXN0Owog
ICAgIGJvb2wgbV9zdWNjZXNzOworICAgIFN0cmluZyBtX2Vycm9yTmFtZTsKIH07CiAKIGNsYXNz
IEljZUNvbm5lY3Rpb25Ob3RpZmllciA6IHB1YmxpYyBNb2NrTm90aWZpZXIgewpkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbW9jay9SVENQZWVyQ29ubmVjdGlvbkhhbmRsZXJN
b2NrLmNwcCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL21vY2svUlRDUGVlckNvbm5lY3Rpb25I
YW5kbGVyTW9jay5jcHAKaW5kZXggZDVhMmE3OGVkNDhjOGUwYzczYzYxZWM2MzdkNjgyNjliODI4
MTQ2NC4uNmMyZDU1YjZmY2M2Mjk5ODY1ZjA4ZmFiZGI0MWVhMmEyYzE2NjljNCAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbW9jay9SVENQZWVyQ29ubmVjdGlvbkhhbmRsZXJN
b2NrLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9tb2NrL1JUQ1BlZXJDb25uZWN0
aW9uSGFuZGxlck1vY2suY3BwCkBAIC02Nyw3ICs2Nyw3IEBAIHZvaWQgUlRDUGVlckNvbm5lY3Rp
b25IYW5kbGVyTW9jazo6Y3JlYXRlT2ZmZXIoUGFzc1JlZlB0cjxSVENTZXNzaW9uRGVzY3JpcHRp
b25SCiAgICAgU3RyaW5nIHN1Y2NlZWRWYWx1ZTsKICAgICBSZWZQdHI8U2Vzc2lvblJlcXVlc3RO
b3RpZmllcj4gbm90aWZpZXI7CiAgICAgaWYgKGNvbnN0cmFpbnRzLT5nZXRNYW5kYXRvcnlDb25z
dHJhaW50VmFsdWUoInN1Y2NlZWQiLCBzdWNjZWVkVmFsdWUpICYmIHN1Y2NlZWRWYWx1ZSA9PSAi
ZmFsc2UiKQotICAgICAgICBub3RpZmllciA9IGFkb3B0UmVmKG5ldyBTZXNzaW9uUmVxdWVzdE5v
dGlmaWVyKHJlcXVlc3QsIDApKTsKKyAgICAgICAgbm90aWZpZXIgPSBhZG9wdFJlZihuZXcgU2Vz
c2lvblJlcXVlc3ROb3RpZmllcihyZXF1ZXN0LCAwLCBSVENQZWVyQ29ubmVjdGlvbkhhbmRsZXI6
OmluY29tcGF0aWJsZUNvbnN0cmFpbnRzRXJyb3JOYW1lKCkpKTsKICAgICBlbHNlCiAgICAgICAg
IG5vdGlmaWVyID0gYWRvcHRSZWYobmV3IFNlc3Npb25SZXF1ZXN0Tm90aWZpZXIocmVxdWVzdCwg
UlRDU2Vzc2lvbkRlc2NyaXB0aW9uRGVzY3JpcHRvcjo6Y3JlYXRlKCJvZmZlciIsICJsb2NhbCIp
KSk7CiAKQEAgLTgwLDcgKzgwLDcgQEAgdm9pZCBSVENQZWVyQ29ubmVjdGlvbkhhbmRsZXJNb2Nr
OjpjcmVhdGVBbnN3ZXIoUGFzc1JlZlB0cjxSVENTZXNzaW9uRGVzY3JpcHRpb24KICAgICAvLyBX
ZSBjYW4gb25seSBjcmVhdGUgYW4gYW5zd2VyIGlmIHdlIGhhdmUgYWxyZWFkeSBoYWQgYW4gb2Zm
ZXIgYW5kIHRoZSByZW1vdGUgc2Vzc2lvbiBkZXNjcmlwdGlvbiBpcyBzdG9yZWQuCiAgICAgU3Ry
aW5nIHN1Y2NlZWRWYWx1ZTsKICAgICBpZiAoY29uc3RyYWludHMtPmdldE1hbmRhdG9yeUNvbnN0
cmFpbnRWYWx1ZSgic3VjY2VlZCIsIHN1Y2NlZWRWYWx1ZSkgJiYgc3VjY2VlZFZhbHVlID09ICJm
YWxzZSIpCi0gICAgICAgIG5vdGlmaWVyID0gYWRvcHRSZWYobmV3IFNlc3Npb25SZXF1ZXN0Tm90
aWZpZXIocmVxdWVzdCwgMCkpOworICAgICAgICBub3RpZmllciA9IGFkb3B0UmVmKG5ldyBTZXNz
aW9uUmVxdWVzdE5vdGlmaWVyKHJlcXVlc3QsIDAsIFJUQ1BlZXJDb25uZWN0aW9uSGFuZGxlcjo6
aW5jb21wYXRpYmxlQ29uc3RyYWludHNFcnJvck5hbWUoKSkpOwogICAgIGVsc2UKICAgICAgICAg
bm90aWZpZXIgPSBhZG9wdFJlZihuZXcgU2Vzc2lvblJlcXVlc3ROb3RpZmllcihyZXF1ZXN0LCBS
VENTZXNzaW9uRGVzY3JpcHRpb25EZXNjcmlwdG9yOjpjcmVhdGUoImFuc3dlciIsICJsb2NhbCIp
KSk7CiAKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL0NoYW5nZUxvZyBiL0xheW91dFRlc3RzL0No
YW5nZUxvZwppbmRleCA3NjIyY2QwZmI4NjAyZDA2NTBmMGRlNzFhOTYzMmQ5ODMyMzEyYWQwLi43
MWE0OWU3ZjRiYTkwOTBiOTZlOTljM2I0ZWYzNTkyNGQ0MTc3MTcwIDEwMDY0NAotLS0gYS9MYXlv
dXRUZXN0cy9DaGFuZ2VMb2cKKysrIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCkBAIC0xLDUgKzEs
MjAgQEAKIDIwMTMtMTItMTEgIFRoaWFnbyBkZSBCYXJyb3MgTGFjZXJkYSAgPHRoaWFnby5sYWNl
cmRhQG9wZW5ib3NzYS5vcmc+CiAKKyAgICAgICAgQWRkaW5nIFJUQ1BlZXJDb25uZWN0aW9uRXJy
b3JDYWxsYmFjaworICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/
aWQ9MTI1NTc0CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAg
ICAgQWNjb3JkaW5nIHRvIHRoZSBzcGVjIHRoZXJlIHNob3VsZCBiZSBhIFJUQ1BlZXJDb25uZWN0
aW9uRXJyb3JDYWxsYmFjayBmdW5jdGlvbiB0eXBlIGZvciBjcmVhdGVPZmZlci9BbnN3ZXIsCisg
ICAgICAgIHNldExvY2FsL1JlbW90ZURlc2NyaXB0aW9uIGFuZCB1cGRhdGVJY2UgZnVuY3Rpb24g
Y2FsbHMuIFRoaXMgY2FsbGJhY2sgbXVzdCBoYW5kbGUgYSBET01FcnJvciBvYmplY3QuCisKKyAg
ICAgICAgKiBmYXN0L21lZGlhc3RyZWFtL1JUQ1BlZXJDb25uZWN0aW9uLWNyZWF0ZUFuc3dlci1l
eHBlY3RlZC50eHQ6CisgICAgICAgICogZmFzdC9tZWRpYXN0cmVhbS9SVENQZWVyQ29ubmVjdGlv
bi1jcmVhdGVBbnN3ZXIuaHRtbDoKKyAgICAgICAgKiBmYXN0L21lZGlhc3RyZWFtL1JUQ1BlZXJD
b25uZWN0aW9uLWNyZWF0ZU9mZmVyLWV4cGVjdGVkLnR4dDoKKyAgICAgICAgKiBmYXN0L21lZGlh
c3RyZWFtL1JUQ1BlZXJDb25uZWN0aW9uLWNyZWF0ZU9mZmVyLmh0bWw6CisKKzIwMTMtMTItMTEg
IFRoaWFnbyBkZSBCYXJyb3MgTGFjZXJkYSAgPHRoaWFnby5sYWNlcmRhQG9wZW5ib3NzYS5vcmc+
CisKICAgICAgICAgSW1wcm92aW5nIGNyZWF0ZU9mZmVyIGFuZCBjcmVhdGVBbnN3ZXIgTGF5b3V0
VGVzdHMKICAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTEy
NTU2OAogCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L21lZGlhc3RyZWFtL1JUQ1BlZXJD
b25uZWN0aW9uLWNyZWF0ZUFuc3dlci1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9mYXN0L21l
ZGlhc3RyZWFtL1JUQ1BlZXJDb25uZWN0aW9uLWNyZWF0ZUFuc3dlci1leHBlY3RlZC50eHQKaW5k
ZXggZThjYTY0NjFlMGJmMTYwZWZjYTRiNDk5NzFjMDNkMzdkMDE3ZTcxMy4uOGUwMWM5MjllNTRm
MTZmNjNhMDBmMDI3NWJmMDU0ZDcxMGFjYmJiYSAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvZmFz
dC9tZWRpYXN0cmVhbS9SVENQZWVyQ29ubmVjdGlvbi1jcmVhdGVBbnN3ZXItZXhwZWN0ZWQudHh0
CisrKyBiL0xheW91dFRlc3RzL2Zhc3QvbWVkaWFzdHJlYW0vUlRDUGVlckNvbm5lY3Rpb24tY3Jl
YXRlQW5zd2VyLWV4cGVjdGVkLnR4dApAQCAtOSw2ICs5LDcgQEAgUEFTUyBwYy5zZXRSZW1vdGVE
ZXNjcmlwdGlvbihzZXNzaW9uRGVzY3JpcHRpb24sIHNldERlc2NyaXB0aW9uU3VjY2VlZGVkLCBz
ZXREZXMKIFBBU1Mgc2V0UmVtb3RlRGVzY3JpcHRpb24gc3VjY2VlZGVkLgogUEFTUyBwYy5jcmVh
dGVBbnN3ZXIocmVxdWVzdFN1Y2NlZWRlZDIsIHJlcXVlc3RGYWlsZWQyLCB7bWFuZGF0b3J5Onsi
c3VjY2VlZCI6ZmFsc2V9fSk7IGRpZCBub3QgdGhyb3cgZXhjZXB0aW9uLgogUEFTUyBjcmVhdGVB
bnN3ZXIgcmVxdWVzdCBmYWlsZWQuCitQQVNTIGVycm9yUmVhc29uLm5hbWUgaXMgIkluY29tcGF0
aWJsZUNvbnN0cmFpbnRzRXJyb3IiCiBQQVNTIHBjLmNyZWF0ZUFuc3dlcihyZXF1ZXN0U3VjY2Vl
ZGVkMywgcmVxdWVzdEZhaWxlZDMpOyBkaWQgbm90IHRocm93IGV4Y2VwdGlvbi4KIFBBU1MgY3Jl
YXRlQW5zd2VyIHJlcXVlc3Qgc3VjY2VlZGVkLgogUEFTUyBzZXNzaW9uRGVzY3JpcHRpb24udHlw
ZSBpcyAiYW5zd2VyIgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9tZWRpYXN0cmVhbS9S
VENQZWVyQ29ubmVjdGlvbi1jcmVhdGVBbnN3ZXIuaHRtbCBiL0xheW91dFRlc3RzL2Zhc3QvbWVk
aWFzdHJlYW0vUlRDUGVlckNvbm5lY3Rpb24tY3JlYXRlQW5zd2VyLmh0bWwKaW5kZXggZGIzNjEz
YmQyMTYyOTY5YTU3ODljYjZiZDRhZWYzODAyMzBhOGUwZi4uOTNmNDk1ZDUxMzExNTc5Y2VmZWRh
MDZhOWY2MTg1YzhlMDhhYTY3MCAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvZmFzdC9tZWRpYXN0
cmVhbS9SVENQZWVyQ29ubmVjdGlvbi1jcmVhdGVBbnN3ZXIuaHRtbAorKysgYi9MYXlvdXRUZXN0
cy9mYXN0L21lZGlhc3RyZWFtL1JUQ1BlZXJDb25uZWN0aW9uLWNyZWF0ZUFuc3dlci5odG1sCkBA
IC00MCw2ICs0MCw5IEBACiAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgdGVzdFBhc3Nl
ZCgnY3JlYXRlQW5zd2VyIHJlcXVlc3QgZmFpbGVkLicpOwogCisgICAgICAgICAgICAgICAgZXJy
b3JSZWFzb24gPSByZWFzb247CisgICAgICAgICAgICAgICAgc2hvdWxkQmUoJ2Vycm9yUmVhc29u
Lm5hbWUnLCAnIkluY29tcGF0aWJsZUNvbnN0cmFpbnRzRXJyb3IiJyk7CisKICAgICAgICAgICAg
ICAgICBzaG91bGROb3RUaHJvdygncGMuY3JlYXRlQW5zd2VyKHJlcXVlc3RTdWNjZWVkZWQzLCBy
ZXF1ZXN0RmFpbGVkMyk7Jyk7CiAgICAgICAgICAgICB9CiAKZGlmZiAtLWdpdCBhL0xheW91dFRl
c3RzL2Zhc3QvbWVkaWFzdHJlYW0vUlRDUGVlckNvbm5lY3Rpb24tY3JlYXRlT2ZmZXItZXhwZWN0
ZWQudHh0IGIvTGF5b3V0VGVzdHMvZmFzdC9tZWRpYXN0cmVhbS9SVENQZWVyQ29ubmVjdGlvbi1j
cmVhdGVPZmZlci1leHBlY3RlZC50eHQKaW5kZXggMTQ4NjczMDViOTE3YmFlMTM3ZGJkYWU1ODJk
YjQ0YTNiMmY0YjFkNy4uNTVhZWVkODlkNmI2YTg5NWU4NDUxNTJlNTJkZjc0ZGY3NzMyODhiZSAx
MDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvZmFzdC9tZWRpYXN0cmVhbS9SVENQZWVyQ29ubmVjdGlv
bi1jcmVhdGVPZmZlci1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC9tZWRpYXN0
cmVhbS9SVENQZWVyQ29ubmVjdGlvbi1jcmVhdGVPZmZlci1leHBlY3RlZC50eHQKQEAgLTgsNyAr
OCw3IEBAIFBBU1MgY3JlYXRlT2ZmZXIgcmVxdWVzdCBzdWNjZWVkZWQuCiBQQVNTIHNlc3Npb25E
ZXNjcmlwdGlvbi50eXBlIGlzICJvZmZlciIKIFBBU1MgcGMuY3JlYXRlT2ZmZXIocmVxdWVzdFN1
Y2NlZWRlZDIsIHJlcXVlc3RGYWlsZWQyLCB7bWFuZGF0b3J5Onsic3VjY2VlZCI6ZmFsc2V9fSk7
IGRpZCBub3QgdGhyb3cgZXhjZXB0aW9uLgogUEFTUyBjcmVhdGVPZmZlciByZXF1ZXN0IGZhaWxl
ZC4KLVBBU1MgZXJyb3JSZWFzb24gaXMgIlRFU1RfRVJST1IiCitQQVNTIGVycm9yUmVhc29uLm5h
bWUgaXMgIkluY29tcGF0aWJsZUNvbnN0cmFpbnRzRXJyb3IiCiBQQVNTIHBjLmNyZWF0ZU9mZmVy
KHJlcXVlc3RTdWNjZWVkZWQzLCByZXF1ZXN0RmFpbGVkMSk7IGRpZCBub3QgdGhyb3cgZXhjZXB0
aW9uLgogUEFTUyBjcmVhdGVPZmZlciByZXF1ZXN0IHN1Y2NlZWRlZC4KIFBBU1Mgc2Vzc2lvbkRl
c2NyaXB0aW9uLnR5cGUgaXMgIm9mZmVyIgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9t
ZWRpYXN0cmVhbS9SVENQZWVyQ29ubmVjdGlvbi1jcmVhdGVPZmZlci5odG1sIGIvTGF5b3V0VGVz
dHMvZmFzdC9tZWRpYXN0cmVhbS9SVENQZWVyQ29ubmVjdGlvbi1jcmVhdGVPZmZlci5odG1sCmlu
ZGV4IDJkNmU4ZTA2MWQ0ZGZkMWFmZTdiMWE1MTY4ZDA3NDkwMWRkYjI0NjkuLmQ2ZDc3M2VkMDhi
YzU5YzVjNjA1OGU5MGVhYjY1NTVlOWI5NThiY2IgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2Zh
c3QvbWVkaWFzdHJlYW0vUlRDUGVlckNvbm5lY3Rpb24tY3JlYXRlT2ZmZXIuaHRtbAorKysgYi9M
YXlvdXRUZXN0cy9mYXN0L21lZGlhc3RyZWFtL1JUQ1BlZXJDb25uZWN0aW9uLWNyZWF0ZU9mZmVy
Lmh0bWwKQEAgLTIzLDcgKzIzLDcgQEAKICAgICAgICAgICAgICAgICB0ZXN0UGFzc2VkKCdjcmVh
dGVPZmZlciByZXF1ZXN0IGZhaWxlZC4nKTsKIAogICAgICAgICAgICAgICAgIGVycm9yUmVhc29u
ID0gcmVhc29uOwotICAgICAgICAgICAgICAgIHNob3VsZEJlKCdlcnJvclJlYXNvbicsICciVEVT
VF9FUlJPUiInKTsKKyAgICAgICAgICAgICAgICBzaG91bGRCZSgnZXJyb3JSZWFzb24ubmFtZScs
ICciSW5jb21wYXRpYmxlQ29uc3RyYWludHNFcnJvciInKTsKIAogICAgICAgICAgICAgICAgIHNo
b3VsZE5vdFRocm93KCdwYy5jcmVhdGVPZmZlcihyZXF1ZXN0U3VjY2VlZGVkMywgcmVxdWVzdEZh
aWxlZDEpOycpOwogICAgICAgICAgICAgfQo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>218978</attachid>
            <date>2013-12-11 11:02:35 -0800</date>
            <delta_ts>2013-12-12 03:38:57 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-125574-20131211200233.patch</filename>
            <type>text/plain</type>
            <size>52525</size>
            <attacher name="Philippe Normand">pnormand</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTYwNDQxCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggOWJiZWVmZTlmMGM2ZjEw
YTMyZTM5OGZkNWRkMTA1MmM1MTZlMDc1NC4uYmU5MjBhZjc1ZTJhM2Q4NmIzMzVhZTY3NDA4MjRj
OTg0N2ViODA4MiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSw1ICsxLDU3IEBACiAyMDEzLTEyLTExICBUaGlh
Z28gZGUgQmFycm9zIExhY2VyZGEgIDx0aGlhZ28ubGFjZXJkYUBvcGVuYm9zc2Eub3JnPgogCisg
ICAgICAgIEFkZGluZyBSVENQZWVyQ29ubmVjdGlvbkVycm9yQ2FsbGJhY2sKKyAgICAgICAgaHR0
cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTEyNTU3NAorCisgICAgICAgIFJl
dmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIEFjY29yZGluZyB0byB0aGUgc3Bl
YyB0aGVyZSBzaG91bGQgYmUgYSBSVENQZWVyQ29ubmVjdGlvbkVycm9yQ2FsbGJhY2sgZnVuY3Rp
b24gdHlwZSBmb3IgY3JlYXRlT2ZmZXIvQW5zd2VyLAorICAgICAgICBzZXRMb2NhbC9SZW1vdGVE
ZXNjcmlwdGlvbiBhbmQgdXBkYXRlSWNlIGZ1bmN0aW9uIGNhbGxzLiBUaGlzIGNhbGxiYWNrIG11
c3QgaGFuZGxlIGEgRE9NRXJyb3Igb2JqZWN0LgorCisgICAgICAgIEV4aXN0aW5nIHRlc3RzIHdl
cmUgdXBkYXRlZC4KKworICAgICAgICAqIENNYWtlTGlzdHMudHh0OgorICAgICAgICAqIEdOVW1h
a2VmaWxlLmxpc3QuYW06CisgICAgICAgICogTW9kdWxlcy9tZWRpYXN0cmVhbS9SVENQZWVyQ29u
bmVjdGlvbi5jcHA6CisgICAgICAgIChXZWJDb3JlOjpSVENQZWVyQ29ubmVjdGlvbjo6Y3JlYXRl
T2ZmZXIpOgorICAgICAgICAoV2ViQ29yZTo6UlRDUGVlckNvbm5lY3Rpb246OmNyZWF0ZUFuc3dl
cik6CisgICAgICAgIChXZWJDb3JlOjpSVENQZWVyQ29ubmVjdGlvbjo6c2V0TG9jYWxEZXNjcmlw
dGlvbik6CisgICAgICAgIChXZWJDb3JlOjpSVENQZWVyQ29ubmVjdGlvbjo6c2V0UmVtb3RlRGVz
Y3JpcHRpb24pOgorICAgICAgICAoV2ViQ29yZTo6UlRDUGVlckNvbm5lY3Rpb246OmFkZEljZUNh
bmRpZGF0ZSk6CisgICAgICAgICogTW9kdWxlcy9tZWRpYXN0cmVhbS9SVENFcnJvckNhbGxiYWNr
Lmg6IFJlbW92ZWQuCisgICAgICAgICogTW9kdWxlcy9tZWRpYXN0cmVhbS9SVENFcnJvckNhbGxi
YWNrLmlkbDogUmVtb3ZlZC4KKyAgICAgICAgKiBNb2R1bGVzL21lZGlhc3RyZWFtL1JUQ1BlZXJD
b25uZWN0aW9uLmg6CisgICAgICAgICogTW9kdWxlcy9tZWRpYXN0cmVhbS9SVENQZWVyQ29ubmVj
dGlvbi5pZGw6CisgICAgICAgICogTW9kdWxlcy9tZWRpYXN0cmVhbS9SVENQZWVyQ29ubmVjdGlv
bkVycm9yQ2FsbGJhY2suaDogQWRkZWQuCisgICAgICAgICogTW9kdWxlcy9tZWRpYXN0cmVhbS9S
VENQZWVyQ29ubmVjdGlvbkVycm9yQ2FsbGJhY2suaWRsOiBBZGRlZC4KKyAgICAgICAgKiBNb2R1
bGVzL21lZGlhc3RyZWFtL1JUQ1Nlc3Npb25EZXNjcmlwdGlvblJlcXVlc3RJbXBsLmNwcDoKKyAg
ICAgICAgKFdlYkNvcmU6OlJUQ1Nlc3Npb25EZXNjcmlwdGlvblJlcXVlc3RJbXBsOjpjcmVhdGUp
OgorICAgICAgICAoV2ViQ29yZTo6UlRDU2Vzc2lvbkRlc2NyaXB0aW9uUmVxdWVzdEltcGw6OlJU
Q1Nlc3Npb25EZXNjcmlwdGlvblJlcXVlc3RJbXBsKToKKyAgICAgICAgKFdlYkNvcmU6OlJUQ1Nl
c3Npb25EZXNjcmlwdGlvblJlcXVlc3RJbXBsOjpyZXF1ZXN0RmFpbGVkKToKKyAgICAgICAgKiBN
b2R1bGVzL21lZGlhc3RyZWFtL1JUQ1Nlc3Npb25EZXNjcmlwdGlvblJlcXVlc3RJbXBsLmg6Cisg
ICAgICAgICogTW9kdWxlcy9tZWRpYXN0cmVhbS9SVENWb2lkUmVxdWVzdEltcGwuY3BwOgorICAg
ICAgICAoV2ViQ29yZTo6UlRDVm9pZFJlcXVlc3RJbXBsOjpjcmVhdGUpOgorICAgICAgICAoV2Vi
Q29yZTo6UlRDVm9pZFJlcXVlc3RJbXBsOjpSVENWb2lkUmVxdWVzdEltcGwpOgorICAgICAgICAo
V2ViQ29yZTo6UlRDVm9pZFJlcXVlc3RJbXBsOjpyZXF1ZXN0RmFpbGVkKToKKyAgICAgICAgKiBN
b2R1bGVzL21lZGlhc3RyZWFtL1JUQ1ZvaWRSZXF1ZXN0SW1wbC5oOgorICAgICAgICAqIHBsYXRm
b3JtL21lZGlhc3RyZWFtL1JUQ1BlZXJDb25uZWN0aW9uSGFuZGxlci5jcHA6CisgICAgICAgIChX
ZWJDb3JlOjpSVENQZWVyQ29ubmVjdGlvbkhhbmRsZXI6OmluY29tcGF0aWJsZUNvbnN0cmFpbnRz
RXJyb3JOYW1lKToKKyAgICAgICAgKFdlYkNvcmU6OlJUQ1BlZXJDb25uZWN0aW9uSGFuZGxlcjo6
aW52YWxpZFNlc3Npb25EZXNjcmlwdGlvbkVycm9yTmFtZSk6CisgICAgICAgIChXZWJDb3JlOjpS
VENQZWVyQ29ubmVjdGlvbkhhbmRsZXI6OmluY29tcGF0aWJsZVNlc3Npb25EZXNjcmlwdGlvbkVy
cm9yTmFtZSk6CisgICAgICAgIChXZWJDb3JlOjpSVENQZWVyQ29ubmVjdGlvbkhhbmRsZXI6Omlu
dGVybmFsRXJyb3JOYW1lKToKKyAgICAgICAgKiBwbGF0Zm9ybS9tZWRpYXN0cmVhbS9SVENQZWVy
Q29ubmVjdGlvbkhhbmRsZXIuaDoKKyAgICAgICAgKiBwbGF0Zm9ybS9tb2NrL1JUQ05vdGlmaWVy
c01vY2suY3BwOgorICAgICAgICAoV2ViQ29yZTo6U2Vzc2lvblJlcXVlc3ROb3RpZmllcjo6U2Vz
c2lvblJlcXVlc3ROb3RpZmllcik6CisgICAgICAgIChXZWJDb3JlOjpTZXNzaW9uUmVxdWVzdE5v
dGlmaWVyOjpmaXJlKToKKyAgICAgICAgKFdlYkNvcmU6OlZvaWRSZXF1ZXN0Tm90aWZpZXI6OlZv
aWRSZXF1ZXN0Tm90aWZpZXIpOgorICAgICAgICAoV2ViQ29yZTo6Vm9pZFJlcXVlc3ROb3RpZmll
cjo6ZmlyZSk6CisgICAgICAgICogcGxhdGZvcm0vbW9jay9SVENOb3RpZmllcnNNb2NrLmg6Cisg
ICAgICAgICogcGxhdGZvcm0vbW9jay9SVENQZWVyQ29ubmVjdGlvbkhhbmRsZXJNb2NrLmNwcDoK
KyAgICAgICAgKFdlYkNvcmU6OlJUQ1BlZXJDb25uZWN0aW9uSGFuZGxlck1vY2s6OmNyZWF0ZU9m
ZmVyKToKKyAgICAgICAgKFdlYkNvcmU6OlJUQ1BlZXJDb25uZWN0aW9uSGFuZGxlck1vY2s6OmNy
ZWF0ZUFuc3dlcik6CisKKzIwMTMtMTItMTEgIFRoaWFnbyBkZSBCYXJyb3MgTGFjZXJkYSAgPHRo
aWFnby5sYWNlcmRhQG9wZW5ib3NzYS5vcmc+CisKICAgICAgICAgSW1wcm92aW5nIGNyZWF0ZU9m
ZmVyIGFuZCBjcmVhdGVBbnN3ZXIgTGF5b3V0VGVzdHMKICAgICAgICAgaHR0cHM6Ly9idWdzLndl
YmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTEyNTU2OAogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
Q29yZS9DTWFrZUxpc3RzLnR4dCBiL1NvdXJjZS9XZWJDb3JlL0NNYWtlTGlzdHMudHh0CmluZGV4
IGNhN2M0ODNiYzk1OTE5MDNjNWEwNGVhMWMyMTNiOGI3ZjE4MDYwMWMuLjc4ODVmOWIyMTM3NmRl
ZGNjMDI0NTJjMmUxMDE2ZDRkODdlNzllMDQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL0NN
YWtlTGlzdHMudHh0CisrKyBiL1NvdXJjZS9XZWJDb3JlL0NNYWtlTGlzdHMudHh0CkBAIC0yMTAs
NyArMjEwLDcgQEAgc2V0KFdlYkNvcmVfSURMX0ZJTEVTCiAgICAgTW9kdWxlcy9tZWRpYXN0cmVh
bS9SVENEVE1GVG9uZUNoYW5nZUV2ZW50LmlkbAogICAgIE1vZHVsZXMvbWVkaWFzdHJlYW0vUlRD
RGF0YUNoYW5uZWwuaWRsCiAgICAgTW9kdWxlcy9tZWRpYXN0cmVhbS9SVENEYXRhQ2hhbm5lbEV2
ZW50LmlkbAotICAgIE1vZHVsZXMvbWVkaWFzdHJlYW0vUlRDRXJyb3JDYWxsYmFjay5pZGwKKyAg
ICBNb2R1bGVzL21lZGlhc3RyZWFtL1JUQ1BlZXJDb25uZWN0aW9uRXJyb3JDYWxsYmFjay5pZGwK
ICAgICBNb2R1bGVzL21lZGlhc3RyZWFtL1JUQ0ljZUNhbmRpZGF0ZS5pZGwKICAgICBNb2R1bGVz
L21lZGlhc3RyZWFtL1JUQ0ljZUNhbmRpZGF0ZUV2ZW50LmlkbAogICAgIE1vZHVsZXMvbWVkaWFz
dHJlYW0vUlRDUGVlckNvbm5lY3Rpb24uaWRsCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9E
ZXJpdmVkU291cmNlcy5tYWtlIGIvU291cmNlL1dlYkNvcmUvRGVyaXZlZFNvdXJjZXMubWFrZQpp
bmRleCA0OWZjZTBmOTVlMDM4MDM0OTE5MWFkZDljMGRhNDY5ODkxM2Q0ZWM0Li42MTY4ZTJhMzM5
ZDY0NmI4Mzg1MTZiMmQxYzE3OGRmNDk2NzA1ODg1IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29y
ZS9EZXJpdmVkU291cmNlcy5tYWtlCisrKyBiL1NvdXJjZS9XZWJDb3JlL0Rlcml2ZWRTb3VyY2Vz
Lm1ha2UKQEAgLTEyNyw3ICsxMjcsNyBAQCBCSU5ESU5HX0lETFMgPSBcCiAgICAgJChXZWJDb3Jl
KS9Nb2R1bGVzL21lZGlhc3RyZWFtL1JUQ0RUTUZUb25lQ2hhbmdlRXZlbnQuaWRsIFwKICAgICAk
KFdlYkNvcmUpL01vZHVsZXMvbWVkaWFzdHJlYW0vUlRDRGF0YUNoYW5uZWwuaWRsIFwKICAgICAk
KFdlYkNvcmUpL01vZHVsZXMvbWVkaWFzdHJlYW0vUlRDRGF0YUNoYW5uZWxFdmVudC5pZGwgXAot
ICAgICQoV2ViQ29yZSkvTW9kdWxlcy9tZWRpYXN0cmVhbS9SVENFcnJvckNhbGxiYWNrLmlkbCBc
CisgICAgJChXZWJDb3JlKS9Nb2R1bGVzL21lZGlhc3RyZWFtL1JUQ1BlZXJDb25uZWN0aW9uRXJy
b3JDYWxsYmFjay5pZGwgXAogICAgICQoV2ViQ29yZSkvTW9kdWxlcy9tZWRpYXN0cmVhbS9SVENJ
Y2VDYW5kaWRhdGUuaWRsIFwKICAgICAkKFdlYkNvcmUpL01vZHVsZXMvbWVkaWFzdHJlYW0vUlRD
SWNlQ2FuZGlkYXRlRXZlbnQuaWRsIFwKICAgICAkKFdlYkNvcmUpL01vZHVsZXMvbWVkaWFzdHJl
YW0vUlRDUGVlckNvbm5lY3Rpb24uaWRsIFwKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL0dO
VW1ha2VmaWxlLmxpc3QuYW0gYi9Tb3VyY2UvV2ViQ29yZS9HTlVtYWtlZmlsZS5saXN0LmFtCmlu
ZGV4IGM5YTJkZmEyYjAwMjI1OGQzZjgwYTJiNWZlMzZiYmFiN2RmYjc4YjUuLmYwYzEyMmQ2MDky
OTBlOWM0MDU4ZDBjN2VmNDIxN2RkZGZkOGY2MmEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3Jl
L0dOVW1ha2VmaWxlLmxpc3QuYW0KKysrIGIvU291cmNlL1dlYkNvcmUvR05VbWFrZWZpbGUubGlz
dC5hbQpAQCAtNjExLDggKzYxMSw4IEBAIHdlYmNvcmVfYnVpbHRfc291cmNlcyArPSBcCiAJRGVy
aXZlZFNvdXJjZXMvV2ViQ29yZS9KU1JUQ0RhdGFDaGFubmVsLmggXAogCURlcml2ZWRTb3VyY2Vz
L1dlYkNvcmUvSlNSVENEYXRhQ2hhbm5lbEV2ZW50LmNwcCBcCiAJRGVyaXZlZFNvdXJjZXMvV2Vi
Q29yZS9KU1JUQ0RhdGFDaGFubmVsRXZlbnQuaCBcCi0JRGVyaXZlZFNvdXJjZXMvV2ViQ29yZS9K
U1JUQ0Vycm9yQ2FsbGJhY2suY3BwIFwKLQlEZXJpdmVkU291cmNlcy9XZWJDb3JlL0pTUlRDRXJy
b3JDYWxsYmFjay5oIFwKKwlEZXJpdmVkU291cmNlcy9XZWJDb3JlL0pTUlRDUGVlckNvbm5lY3Rp
b25FcnJvckNhbGxiYWNrLmNwcCBcCisJRGVyaXZlZFNvdXJjZXMvV2ViQ29yZS9KU1JUQ1BlZXJD
b25uZWN0aW9uRXJyb3JDYWxsYmFjay5oIFwKIAlEZXJpdmVkU291cmNlcy9XZWJDb3JlL0pTUlRD
SWNlQ2FuZGlkYXRlLmNwcCBcCiAJRGVyaXZlZFNvdXJjZXMvV2ViQ29yZS9KU1JUQ0ljZUNhbmRp
ZGF0ZS5oIFwKIAlEZXJpdmVkU291cmNlcy9XZWJDb3JlL0pTUlRDSWNlQ2FuZGlkYXRlRXZlbnQu
Y3BwIFwKQEAgLTEyMjcsNyArMTIyNyw3IEBAIGRvbV9iaW5kaW5nX2lkbHMgKz0gXAogCSQoV2Vi
Q29yZSkvTW9kdWxlcy9tZWRpYXN0cmVhbS9SVENEVE1GVG9uZUNoYW5nZUV2ZW50LmlkbCBcCiAJ
JChXZWJDb3JlKS9Nb2R1bGVzL21lZGlhc3RyZWFtL1JUQ0RhdGFDaGFubmVsLmlkbCBcCiAJJChX
ZWJDb3JlKS9Nb2R1bGVzL21lZGlhc3RyZWFtL1JUQ0RhdGFDaGFubmVsRXZlbnQuaWRsIFwKLQkk
KFdlYkNvcmUpL01vZHVsZXMvbWVkaWFzdHJlYW0vUlRDRXJyb3JDYWxsYmFjay5pZGwgXAorCSQo
V2ViQ29yZSkvTW9kdWxlcy9tZWRpYXN0cmVhbS9SVENQZWVyQ29ubmVjdGlvbkVycm9yQ2FsbGJh
Y2suaWRsIFwKIAkkKFdlYkNvcmUpL01vZHVsZXMvbWVkaWFzdHJlYW0vUlRDSWNlQ2FuZGlkYXRl
LmlkbCBcCiAJJChXZWJDb3JlKS9Nb2R1bGVzL21lZGlhc3RyZWFtL1JUQ0ljZUNhbmRpZGF0ZUV2
ZW50LmlkbCBcCiAJJChXZWJDb3JlKS9Nb2R1bGVzL21lZGlhc3RyZWFtL1JUQ1BlZXJDb25uZWN0
aW9uLmlkbCBcCkBAIC0xOTM2LDcgKzE5MzYsNyBAQCB3ZWJjb3JlX21vZHVsZXNfc291cmNlcyAr
PSBcCiAJU291cmNlL1dlYkNvcmUvTW9kdWxlcy9tZWRpYXN0cmVhbS9SVENEYXRhQ2hhbm5lbC5o
IFwKIAlTb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL21lZGlhc3RyZWFtL1JUQ0RhdGFDaGFubmVsRXZl
bnQuY3BwIFwKIAlTb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL21lZGlhc3RyZWFtL1JUQ0RhdGFDaGFu
bmVsRXZlbnQuaCBcCi0JU291cmNlL1dlYkNvcmUvTW9kdWxlcy9tZWRpYXN0cmVhbS9SVENFcnJv
ckNhbGxiYWNrLmggXAorCVNvdXJjZS9XZWJDb3JlL01vZHVsZXMvbWVkaWFzdHJlYW0vUlRDUGVl
ckNvbm5lY3Rpb25FcnJvckNhbGxiYWNrLmggXAogCVNvdXJjZS9XZWJDb3JlL01vZHVsZXMvbWVk
aWFzdHJlYW0vUlRDSWNlQ2FuZGlkYXRlLmNwcCBcCiAJU291cmNlL1dlYkNvcmUvTW9kdWxlcy9t
ZWRpYXN0cmVhbS9SVENJY2VDYW5kaWRhdGUuaCBcCiAJU291cmNlL1dlYkNvcmUvTW9kdWxlcy9t
ZWRpYXN0cmVhbS9SVENJY2VDYW5kaWRhdGVFdmVudC5jcHAgXApkaWZmIC0tZ2l0IGEvU291cmNl
L1dlYkNvcmUvTW9kdWxlcy9tZWRpYXN0cmVhbS9SVENFcnJvckNhbGxiYWNrLmggYi9Tb3VyY2Uv
V2ViQ29yZS9Nb2R1bGVzL21lZGlhc3RyZWFtL1JUQ0Vycm9yQ2FsbGJhY2suaApkZWxldGVkIGZp
bGUgbW9kZSAxMDA2NDQKaW5kZXggNjQ0ZTU2ZjBiZWE3MGQ1M2U0OWYyODllNGFmZjYxNTdkYTNl
ZmJkYy4uMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMAotLS0gYS9Tb3Vy
Y2UvV2ViQ29yZS9Nb2R1bGVzL21lZGlhc3RyZWFtL1JUQ0Vycm9yQ2FsbGJhY2suaAorKysgL2Rl
di9udWxsCkBAIC0xLDUxICswLDAgQEAKLS8qCi0gKiBDb3B5cmlnaHQgKEMpIDIwMTIgR29vZ2xl
IEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KLSAqCi0gKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNl
IGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKLSAqIG1vZGlmaWNh
dGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9u
cwotICogYXJlIG1ldDoKLSAqCi0gKiAxLiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUg
bXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAotICogICAgbm90aWNlLCB0aGlzIGxpc3Qg
b2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgotICogMi4gUmVkaXN0
cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmln
aHQKLSAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dp
bmcgZGlzY2xhaW1lcgotICogICAgaW4gdGhlIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1h
dGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZQotICogICAgZGlzdHJpYnV0aW9uLgotICogMy4gTmVp
dGhlciB0aGUgbmFtZSBvZiBHb29nbGUgSW5jLiBub3IgdGhlIG5hbWVzIG9mIGl0cyBjb250cmli
dXRvcnMKLSAqICAgIG1heSBiZSB1c2VkIHRvIGVuZG9yc2Ugb3IgcHJvbW90ZSBwcm9kdWN0cyBk
ZXJpdmVkIGZyb20gdGhpcwotICogICAgc29mdHdhcmUgd2l0aG91dCBzcGVjaWZpYyBwcmlvciB3
cml0dGVuIHBlcm1pc3Npb24uCi0gKgotICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBU
SEUgQ09QWVJJR0hUIEhPTERFUlMgQU5EIENPTlRSSUJVVE9SUwotICogIkFTIElTIiBBTkQgQU5Z
IEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QKLSAqIExJ
TUlURUQgVE8sIFRIRSBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBG
SVRORVNTIEZPUgotICogQSBQQVJUSUNVTEFSIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuIElOIE5P
IEVWRU5UIFNIQUxMIFRIRSBDT1BZUklHSFQKLSAqIE9XTkVSIE9SIENPTlRSSUJVVE9SUyBCRSBM
SUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLAotICogU1BFQ0lBTCwg
RVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVAot
ICogTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNF
UzsgTE9TUyBPRiBVU0UsCi0gKiBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJV
UFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkKLSAqIFRIRU9SWSBPRiBMSUFCSUxJVFks
IFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQKLSAqIChJTkNM
VURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0Yg
VEhFIFVTRQotICogT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NT
SUJJTElUWSBPRiBTVUNIIERBTUFHRS4KLSAqLwotCi0jaWZuZGVmIFJUQ0Vycm9yQ2FsbGJhY2tf
aAotI2RlZmluZSBSVENFcnJvckNhbGxiYWNrX2gKLQotI2lmIEVOQUJMRShNRURJQV9TVFJFQU0p
Ci0KLSNpbmNsdWRlIDx3dGYvUmVmQ291bnRlZC5oPgotI2luY2x1ZGUgPHd0Zi90ZXh0L1dURlN0
cmluZy5oPgotCi1uYW1lc3BhY2UgV2ViQ29yZSB7Ci0KLWNsYXNzIFJUQ0Vycm9yQ2FsbGJhY2sg
OiBwdWJsaWMgUmVmQ291bnRlZDxSVENFcnJvckNhbGxiYWNrPiB7Ci1wdWJsaWM6Ci0gICAgdmly
dHVhbCB+UlRDRXJyb3JDYWxsYmFjaygpIHsgfQotICAgIHZpcnR1YWwgYm9vbCBoYW5kbGVFdmVu
dChjb25zdCBTdHJpbmcmIGVycm9ySW5mb3JtYXRpb24pID0gMDsKLX07Ci0KLX0gLy8gbmFtZXNw
YWNlIFdlYkNvcmUKLQotI2VuZGlmIC8vIEVOQUJMRShNRURJQV9TVFJFQU0pCi0KLSNlbmRpZiAv
LyBSVENFcnJvckNhbGxiYWNrX2gKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMv
bWVkaWFzdHJlYW0vUlRDRXJyb3JDYWxsYmFjay5pZGwgYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVz
L21lZGlhc3RyZWFtL1JUQ0Vycm9yQ2FsbGJhY2suaWRsCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0
NAppbmRleCBhMmQ0NjUzZDcwMGMxYTQwMzAwOTU3YjY1MjRmYjkzMDU3MTUwMDNiLi4wMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwCi0tLSBhL1NvdXJjZS9XZWJDb3JlL01v
ZHVsZXMvbWVkaWFzdHJlYW0vUlRDRXJyb3JDYWxsYmFjay5pZGwKKysrIC9kZXYvbnVsbApAQCAt
MSwzNiArMCwwIEBACi0vKgotICogQ29weXJpZ2h0IChDKSAyMDEyIEdvb2dsZSBJbmMuIEFsbCBy
aWdodHMgcmVzZXJ2ZWQuCi0gKgotICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2Ug
YW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0Ci0gKiBtb2RpZmljYXRpb24sIGFyZSBw
ZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKLSAqIGFyZSBt
ZXQ6Ci0gKgotICogMS4gUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWlu
IHRoZSBhYm92ZSBjb3B5cmlnaHQKLSAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlv
bnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KLSAqIDIuIFJlZGlzdHJpYnV0aW9ucyBp
biBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0Ci0gKiAgICBu
b3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWlt
ZXIKLSAqICAgIGluIHRoZSBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJv
dmlkZWQgd2l0aCB0aGUKLSAqICAgIGRpc3RyaWJ1dGlvbi4KLSAqIDMuIE5laXRoZXIgdGhlIG5h
bWUgb2YgR29vZ2xlIEluYy4gbm9yIHRoZSBuYW1lcyBvZiBpdHMgY29udHJpYnV0b3JzCi0gKiAg
ICBtYXkgYmUgdXNlZCB0byBlbmRvcnNlIG9yIHByb21vdGUgcHJvZHVjdHMgZGVyaXZlZCBmcm9t
IHRoaXMKLSAqICAgIHNvZnR3YXJlIHdpdGhvdXQgc3BlY2lmaWMgcHJpb3Igd3JpdHRlbiBwZXJt
aXNzaW9uLgotICoKLSAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgVEhFIENPUFlSSUdI
VCBIT0xERVJTIEFORCBDT05UUklCVVRPUlMKLSAqICJBUyBJUyIgQU5EIEFOWSBFWFBSRVNTIE9S
IElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UCi0gKiBMSU1JVEVEIFRPLCBU
SEUgSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IK
LSAqIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFM
TCBUSEUgQ09QWVJJR0hUCi0gKiBPV05FUiBPUiBDT05UUklCVVRPUlMgQkUgTElBQkxFIEZPUiBB
TlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwKLSAqIFNQRUNJQUwsIEVYRU1QTEFSWSwg
T1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QKLSAqIExJTUlURUQg
VE8sIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0Yg
VVNFLAotICogREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dF
VkVSIENBVVNFRCBBTkQgT04gQU5ZCi0gKiBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElO
IENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUCi0gKiAoSU5DTFVESU5HIE5FR0xJ
R0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UKLSAq
IE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0Yg
U1VDSCBEQU1BR0UuCi0gKi8KLQotWwotICAgIENvbmRpdGlvbmFsPU1FRElBX1NUUkVBTSwKLV0g
Y2FsbGJhY2sgaW50ZXJmYWNlIFJUQ0Vycm9yQ2FsbGJhY2sgewotICAgIGJvb2xlYW4gaGFuZGxl
RXZlbnQoRE9NU3RyaW5nIGVycm9ySW5mb3JtYXRpb24pOwotfTsKLQpkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYkNvcmUvTW9kdWxlcy9tZWRpYXN0cmVhbS9SVENQZWVyQ29ubmVjdGlvbi5jcHAgYi9T
b3VyY2UvV2ViQ29yZS9Nb2R1bGVzL21lZGlhc3RyZWFtL1JUQ1BlZXJDb25uZWN0aW9uLmNwcApp
bmRleCA4MzVhZTIzMDBlN2YyYzViNzUyYTdmYjc2NmRkMjExZWI2ZTY4MzcyLi43ZTM0ZTEzODAz
NDU0Yjk4NjcyYTlmYzNjYjM1NzdkYThmODQ1NjBmIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29y
ZS9Nb2R1bGVzL21lZGlhc3RyZWFtL1JUQ1BlZXJDb25uZWN0aW9uLmNwcAorKysgYi9Tb3VyY2Uv
V2ViQ29yZS9Nb2R1bGVzL21lZGlhc3RyZWFtL1JUQ1BlZXJDb25uZWN0aW9uLmNwcApAQCAtNDks
MTAgKzQ5LDEwIEBACiAjaW5jbHVkZSAiUlRDRGF0YUNoYW5uZWwuaCIKICNpbmNsdWRlICJSVENE
YXRhQ2hhbm5lbEV2ZW50LmgiCiAjaW5jbHVkZSAiUlRDRGF0YUNoYW5uZWxIYW5kbGVyLmgiCi0j
aW5jbHVkZSAiUlRDRXJyb3JDYWxsYmFjay5oIgogI2luY2x1ZGUgIlJUQ0ljZUNhbmRpZGF0ZS5o
IgogI2luY2x1ZGUgIlJUQ0ljZUNhbmRpZGF0ZURlc2NyaXB0b3IuaCIKICNpbmNsdWRlICJSVENJ
Y2VDYW5kaWRhdGVFdmVudC5oIgorI2luY2x1ZGUgIlJUQ1BlZXJDb25uZWN0aW9uRXJyb3JDYWxs
YmFjay5oIgogI2luY2x1ZGUgIlJUQ1Nlc3Npb25EZXNjcmlwdGlvbi5oIgogI2luY2x1ZGUgIlJU
Q1Nlc3Npb25EZXNjcmlwdGlvbkNhbGxiYWNrLmgiCiAjaW5jbHVkZSAiUlRDU2Vzc2lvbkRlc2Ny
aXB0aW9uRGVzY3JpcHRvci5oIgpAQCAtMTcwLDcgKzE3MCw3IEBAIFJUQ1BlZXJDb25uZWN0aW9u
Ojp+UlRDUGVlckNvbm5lY3Rpb24oKQogICAgICAgICAoKnN0cmVhbSktPnJlbW92ZU9ic2VydmVy
KHRoaXMpOwogfQogCi12b2lkIFJUQ1BlZXJDb25uZWN0aW9uOjpjcmVhdGVPZmZlcihQYXNzUmVm
UHRyPFJUQ1Nlc3Npb25EZXNjcmlwdGlvbkNhbGxiYWNrPiBzdWNjZXNzQ2FsbGJhY2ssIFBhc3NS
ZWZQdHI8UlRDRXJyb3JDYWxsYmFjaz4gZXJyb3JDYWxsYmFjaywgY29uc3QgRGljdGlvbmFyeSYg
bWVkaWFDb25zdHJhaW50cywgRXhjZXB0aW9uQ29kZSYgZWMpCit2b2lkIFJUQ1BlZXJDb25uZWN0
aW9uOjpjcmVhdGVPZmZlcihQYXNzUmVmUHRyPFJUQ1Nlc3Npb25EZXNjcmlwdGlvbkNhbGxiYWNr
PiBzdWNjZXNzQ2FsbGJhY2ssIFBhc3NSZWZQdHI8UlRDUGVlckNvbm5lY3Rpb25FcnJvckNhbGxi
YWNrPiBlcnJvckNhbGxiYWNrLCBjb25zdCBEaWN0aW9uYXJ5JiBtZWRpYUNvbnN0cmFpbnRzLCBF
eGNlcHRpb25Db2RlJiBlYykKIHsKICAgICBpZiAobV9zaWduYWxpbmdTdGF0ZSA9PSBTaWduYWxp
bmdTdGF0ZUNsb3NlZCkgewogICAgICAgICBlYyA9IElOVkFMSURfU1RBVEVfRVJSOwpAQCAtMTkw
LDcgKzE5MCw3IEBAIHZvaWQgUlRDUGVlckNvbm5lY3Rpb246OmNyZWF0ZU9mZmVyKFBhc3NSZWZQ
dHI8UlRDU2Vzc2lvbkRlc2NyaXB0aW9uQ2FsbGJhY2s+IHN1CiAgICAgbV9wZWVySGFuZGxlci0+
Y3JlYXRlT2ZmZXIocmVxdWVzdC5yZWxlYXNlKCksIGNvbnN0cmFpbnRzKTsKIH0KIAotdm9pZCBS
VENQZWVyQ29ubmVjdGlvbjo6Y3JlYXRlQW5zd2VyKFBhc3NSZWZQdHI8UlRDU2Vzc2lvbkRlc2Ny
aXB0aW9uQ2FsbGJhY2s+IHN1Y2Nlc3NDYWxsYmFjaywgUGFzc1JlZlB0cjxSVENFcnJvckNhbGxi
YWNrPiBlcnJvckNhbGxiYWNrLCBjb25zdCBEaWN0aW9uYXJ5JiBtZWRpYUNvbnN0cmFpbnRzLCBF
eGNlcHRpb25Db2RlJiBlYykKK3ZvaWQgUlRDUGVlckNvbm5lY3Rpb246OmNyZWF0ZUFuc3dlcihQ
YXNzUmVmUHRyPFJUQ1Nlc3Npb25EZXNjcmlwdGlvbkNhbGxiYWNrPiBzdWNjZXNzQ2FsbGJhY2ss
IFBhc3NSZWZQdHI8UlRDUGVlckNvbm5lY3Rpb25FcnJvckNhbGxiYWNrPiBlcnJvckNhbGxiYWNr
LCBjb25zdCBEaWN0aW9uYXJ5JiBtZWRpYUNvbnN0cmFpbnRzLCBFeGNlcHRpb25Db2RlJiBlYykK
IHsKICAgICBpZiAobV9zaWduYWxpbmdTdGF0ZSA9PSBTaWduYWxpbmdTdGF0ZUNsb3NlZCkgewog
ICAgICAgICBlYyA9IElOVkFMSURfU1RBVEVfRVJSOwpAQCAtMjEwLDcgKzIxMCw3IEBAIHZvaWQg
UlRDUGVlckNvbm5lY3Rpb246OmNyZWF0ZUFuc3dlcihQYXNzUmVmUHRyPFJUQ1Nlc3Npb25EZXNj
cmlwdGlvbkNhbGxiYWNrPiBzCiAgICAgbV9wZWVySGFuZGxlci0+Y3JlYXRlQW5zd2VyKHJlcXVl
c3QucmVsZWFzZSgpLCBjb25zdHJhaW50cy5yZWxlYXNlKCkpOwogfQogCi12b2lkIFJUQ1BlZXJD
b25uZWN0aW9uOjpzZXRMb2NhbERlc2NyaXB0aW9uKFBhc3NSZWZQdHI8UlRDU2Vzc2lvbkRlc2Ny
aXB0aW9uPiBwcnBTZXNzaW9uRGVzY3JpcHRpb24sIFBhc3NSZWZQdHI8Vm9pZENhbGxiYWNrPiBz
dWNjZXNzQ2FsbGJhY2ssIFBhc3NSZWZQdHI8UlRDRXJyb3JDYWxsYmFjaz4gZXJyb3JDYWxsYmFj
aywgRXhjZXB0aW9uQ29kZSYgZWMpCit2b2lkIFJUQ1BlZXJDb25uZWN0aW9uOjpzZXRMb2NhbERl
c2NyaXB0aW9uKFBhc3NSZWZQdHI8UlRDU2Vzc2lvbkRlc2NyaXB0aW9uPiBwcnBTZXNzaW9uRGVz
Y3JpcHRpb24sIFBhc3NSZWZQdHI8Vm9pZENhbGxiYWNrPiBzdWNjZXNzQ2FsbGJhY2ssIFBhc3NS
ZWZQdHI8UlRDUGVlckNvbm5lY3Rpb25FcnJvckNhbGxiYWNrPiBlcnJvckNhbGxiYWNrLCBFeGNl
cHRpb25Db2RlJiBlYykKIHsKICAgICBpZiAobV9zaWduYWxpbmdTdGF0ZSA9PSBTaWduYWxpbmdT
dGF0ZUNsb3NlZCkgewogICAgICAgICBlYyA9IElOVkFMSURfU1RBVEVfRVJSOwpAQCAtMjM5LDcg
KzIzOSw3IEBAIFBhc3NSZWZQdHI8UlRDU2Vzc2lvbkRlc2NyaXB0aW9uPiBSVENQZWVyQ29ubmVj
dGlvbjo6bG9jYWxEZXNjcmlwdGlvbihFeGNlcHRpb25DCiAgICAgcmV0dXJuIHNlc3Npb25EZXNj
cmlwdGlvbi5yZWxlYXNlKCk7CiB9CiAKLXZvaWQgUlRDUGVlckNvbm5lY3Rpb246OnNldFJlbW90
ZURlc2NyaXB0aW9uKFBhc3NSZWZQdHI8UlRDU2Vzc2lvbkRlc2NyaXB0aW9uPiBwcnBTZXNzaW9u
RGVzY3JpcHRpb24sIFBhc3NSZWZQdHI8Vm9pZENhbGxiYWNrPiBzdWNjZXNzQ2FsbGJhY2ssIFBh
c3NSZWZQdHI8UlRDRXJyb3JDYWxsYmFjaz4gZXJyb3JDYWxsYmFjaywgRXhjZXB0aW9uQ29kZSYg
ZWMpCit2b2lkIFJUQ1BlZXJDb25uZWN0aW9uOjpzZXRSZW1vdGVEZXNjcmlwdGlvbihQYXNzUmVm
UHRyPFJUQ1Nlc3Npb25EZXNjcmlwdGlvbj4gcHJwU2Vzc2lvbkRlc2NyaXB0aW9uLCBQYXNzUmVm
UHRyPFZvaWRDYWxsYmFjaz4gc3VjY2Vzc0NhbGxiYWNrLCBQYXNzUmVmUHRyPFJUQ1BlZXJDb25u
ZWN0aW9uRXJyb3JDYWxsYmFjaz4gZXJyb3JDYWxsYmFjaywgRXhjZXB0aW9uQ29kZSYgZWMpCiB7
CiAgICAgaWYgKG1fc2lnbmFsaW5nU3RhdGUgPT0gU2lnbmFsaW5nU3RhdGVDbG9zZWQpIHsKICAg
ICAgICAgZWMgPSBJTlZBTElEX1NUQVRFX0VSUjsKQEAgLTI4OCw3ICsyODgsNyBAQCB2b2lkIFJU
Q1BlZXJDb25uZWN0aW9uOjp1cGRhdGVJY2UoY29uc3QgRGljdGlvbmFyeSYgcnRjQ29uZmlndXJh
dGlvbiwgY29uc3QgRGljdAogICAgICAgICBlYyA9IFNZTlRBWF9FUlI7CiB9CiAKLXZvaWQgUlRD
UGVlckNvbm5lY3Rpb246OmFkZEljZUNhbmRpZGF0ZShSVENJY2VDYW5kaWRhdGUqIGljZUNhbmRp
ZGF0ZSwgUGFzc1JlZlB0cjxWb2lkQ2FsbGJhY2s+IHN1Y2Nlc3NDYWxsYmFjaywgUGFzc1JlZlB0
cjxSVENFcnJvckNhbGxiYWNrPiBlcnJvckNhbGxiYWNrLCBFeGNlcHRpb25Db2RlJiBlYykKK3Zv
aWQgUlRDUGVlckNvbm5lY3Rpb246OmFkZEljZUNhbmRpZGF0ZShSVENJY2VDYW5kaWRhdGUqIGlj
ZUNhbmRpZGF0ZSwgUGFzc1JlZlB0cjxWb2lkQ2FsbGJhY2s+IHN1Y2Nlc3NDYWxsYmFjaywgUGFz
c1JlZlB0cjxSVENQZWVyQ29ubmVjdGlvbkVycm9yQ2FsbGJhY2s+IGVycm9yQ2FsbGJhY2ssIEV4
Y2VwdGlvbkNvZGUmIGVjKQogewogICAgIGlmIChtX3NpZ25hbGluZ1N0YXRlID09IFNpZ25hbGlu
Z1N0YXRlQ2xvc2VkKSB7CiAgICAgICAgIGVjID0gSU5WQUxJRF9TVEFURV9FUlI7CmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL21lZGlhc3RyZWFtL1JUQ1BlZXJDb25uZWN0aW9u
LmggYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL21lZGlhc3RyZWFtL1JUQ1BlZXJDb25uZWN0aW9u
LmgKaW5kZXggNDNiOTZjMzZlMWNmNzkyYzAwNGNlNjk2MGRhNmY2MDI4ODBhNGU4Zi4uMGU4ZGMz
YzYwMzUzMDE3NTljOTA4N2ZmM2IwODliYjJlMDRkM2NlOCAxMDA2NDQKLS0tIGEvU291cmNlL1dl
YkNvcmUvTW9kdWxlcy9tZWRpYXN0cmVhbS9SVENQZWVyQ29ubmVjdGlvbi5oCisrKyBiL1NvdXJj
ZS9XZWJDb3JlL01vZHVsZXMvbWVkaWFzdHJlYW0vUlRDUGVlckNvbm5lY3Rpb24uaApAQCAtNTMs
NyArNTMsNyBAQCBjbGFzcyBNZWRpYVN0cmVhbVRyYWNrOwogY2xhc3MgUlRDQ29uZmlndXJhdGlv
bjsKIGNsYXNzIFJUQ0RUTUZTZW5kZXI7CiBjbGFzcyBSVENEYXRhQ2hhbm5lbDsKLWNsYXNzIFJU
Q0Vycm9yQ2FsbGJhY2s7CitjbGFzcyBSVENQZWVyQ29ubmVjdGlvbkVycm9yQ2FsbGJhY2s7CiBj
bGFzcyBSVENTZXNzaW9uRGVzY3JpcHRpb247CiBjbGFzcyBSVENTZXNzaW9uRGVzY3JpcHRpb25D
YWxsYmFjazsKIGNsYXNzIFJUQ1N0YXRzQ2FsbGJhY2s7CkBAIC02NCwyMSArNjQsMjEgQEAgcHVi
bGljOgogICAgIHN0YXRpYyBQYXNzUmVmUHRyPFJUQ1BlZXJDb25uZWN0aW9uPiBjcmVhdGUoU2Ny
aXB0RXhlY3V0aW9uQ29udGV4dCYsIGNvbnN0IERpY3Rpb25hcnkmIHJ0Y0NvbmZpZ3VyYXRpb24s
IGNvbnN0IERpY3Rpb25hcnkmIG1lZGlhQ29uc3RyYWludHMsIEV4Y2VwdGlvbkNvZGUmKTsKICAg
ICB+UlRDUGVlckNvbm5lY3Rpb24oKTsKIAotICAgIHZvaWQgY3JlYXRlT2ZmZXIoUGFzc1JlZlB0
cjxSVENTZXNzaW9uRGVzY3JpcHRpb25DYWxsYmFjaz4sIFBhc3NSZWZQdHI8UlRDRXJyb3JDYWxs
YmFjaz4sIGNvbnN0IERpY3Rpb25hcnkmIG1lZGlhQ29uc3RyYWludHMsIEV4Y2VwdGlvbkNvZGUm
KTsKKyAgICB2b2lkIGNyZWF0ZU9mZmVyKFBhc3NSZWZQdHI8UlRDU2Vzc2lvbkRlc2NyaXB0aW9u
Q2FsbGJhY2s+LCBQYXNzUmVmUHRyPFJUQ1BlZXJDb25uZWN0aW9uRXJyb3JDYWxsYmFjaz4sIGNv
bnN0IERpY3Rpb25hcnkmIG1lZGlhQ29uc3RyYWludHMsIEV4Y2VwdGlvbkNvZGUmKTsKIAotICAg
IHZvaWQgY3JlYXRlQW5zd2VyKFBhc3NSZWZQdHI8UlRDU2Vzc2lvbkRlc2NyaXB0aW9uQ2FsbGJh
Y2s+LCBQYXNzUmVmUHRyPFJUQ0Vycm9yQ2FsbGJhY2s+LCBjb25zdCBEaWN0aW9uYXJ5JiBtZWRp
YUNvbnN0cmFpbnRzLCBFeGNlcHRpb25Db2RlJik7CisgICAgdm9pZCBjcmVhdGVBbnN3ZXIoUGFz
c1JlZlB0cjxSVENTZXNzaW9uRGVzY3JpcHRpb25DYWxsYmFjaz4sIFBhc3NSZWZQdHI8UlRDUGVl
ckNvbm5lY3Rpb25FcnJvckNhbGxiYWNrPiwgY29uc3QgRGljdGlvbmFyeSYgbWVkaWFDb25zdHJh
aW50cywgRXhjZXB0aW9uQ29kZSYpOwogCi0gICAgdm9pZCBzZXRMb2NhbERlc2NyaXB0aW9uKFBh
c3NSZWZQdHI8UlRDU2Vzc2lvbkRlc2NyaXB0aW9uPiwgUGFzc1JlZlB0cjxWb2lkQ2FsbGJhY2s+
LCBQYXNzUmVmUHRyPFJUQ0Vycm9yQ2FsbGJhY2s+LCBFeGNlcHRpb25Db2RlJik7CisgICAgdm9p
ZCBzZXRMb2NhbERlc2NyaXB0aW9uKFBhc3NSZWZQdHI8UlRDU2Vzc2lvbkRlc2NyaXB0aW9uPiwg
UGFzc1JlZlB0cjxWb2lkQ2FsbGJhY2s+LCBQYXNzUmVmUHRyPFJUQ1BlZXJDb25uZWN0aW9uRXJy
b3JDYWxsYmFjaz4sIEV4Y2VwdGlvbkNvZGUmKTsKICAgICBQYXNzUmVmUHRyPFJUQ1Nlc3Npb25E
ZXNjcmlwdGlvbj4gbG9jYWxEZXNjcmlwdGlvbihFeGNlcHRpb25Db2RlJik7CiAKLSAgICB2b2lk
IHNldFJlbW90ZURlc2NyaXB0aW9uKFBhc3NSZWZQdHI8UlRDU2Vzc2lvbkRlc2NyaXB0aW9uPiwg
UGFzc1JlZlB0cjxWb2lkQ2FsbGJhY2s+LCBQYXNzUmVmUHRyPFJUQ0Vycm9yQ2FsbGJhY2s+LCBF
eGNlcHRpb25Db2RlJik7CisgICAgdm9pZCBzZXRSZW1vdGVEZXNjcmlwdGlvbihQYXNzUmVmUHRy
PFJUQ1Nlc3Npb25EZXNjcmlwdGlvbj4sIFBhc3NSZWZQdHI8Vm9pZENhbGxiYWNrPiwgUGFzc1Jl
ZlB0cjxSVENQZWVyQ29ubmVjdGlvbkVycm9yQ2FsbGJhY2s+LCBFeGNlcHRpb25Db2RlJik7CiAg
ICAgUGFzc1JlZlB0cjxSVENTZXNzaW9uRGVzY3JpcHRpb24+IHJlbW90ZURlc2NyaXB0aW9uKEV4
Y2VwdGlvbkNvZGUmKTsKIAogICAgIFN0cmluZyBzaWduYWxpbmdTdGF0ZSgpIGNvbnN0OwogCiAg
ICAgdm9pZCB1cGRhdGVJY2UoY29uc3QgRGljdGlvbmFyeSYgcnRjQ29uZmlndXJhdGlvbiwgY29u
c3QgRGljdGlvbmFyeSYgbWVkaWFDb25zdHJhaW50cywgRXhjZXB0aW9uQ29kZSYpOwogCi0gICAg
dm9pZCBhZGRJY2VDYW5kaWRhdGUoUlRDSWNlQ2FuZGlkYXRlKiwgUGFzc1JlZlB0cjxWb2lkQ2Fs
bGJhY2s+LCBQYXNzUmVmUHRyPFJUQ0Vycm9yQ2FsbGJhY2s+LCBFeGNlcHRpb25Db2RlJik7Cisg
ICAgdm9pZCBhZGRJY2VDYW5kaWRhdGUoUlRDSWNlQ2FuZGlkYXRlKiwgUGFzc1JlZlB0cjxWb2lk
Q2FsbGJhY2s+LCBQYXNzUmVmUHRyPFJUQ1BlZXJDb25uZWN0aW9uRXJyb3JDYWxsYmFjaz4sIEV4
Y2VwdGlvbkNvZGUmKTsKIAogICAgIFN0cmluZyBpY2VHYXRoZXJpbmdTdGF0ZSgpIGNvbnN0Owog
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL21lZGlhc3RyZWFtL1JUQ1BlZXJD
b25uZWN0aW9uLmlkbCBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvbWVkaWFzdHJlYW0vUlRDUGVl
ckNvbm5lY3Rpb24uaWRsCmluZGV4IDZmMjYzMTNmNWQ1NDlmMDZhNWE3NDNjNGU2NmU5MmQ5Mjlh
MmQ1NGIuLjFkNjAxN2Y2NWY2ZGU3NzJkNWI3Mjg1NGFlNDQwZjRlN2Q2MDE5MTAgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvbWVkaWFzdHJlYW0vUlRDUGVlckNvbm5lY3Rpb24u
aWRsCisrKyBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvbWVkaWFzdHJlYW0vUlRDUGVlckNvbm5l
Y3Rpb24uaWRsCkBAIC0zOSwyMSArMzksMjEgQEAKICAgICBFdmVudFRhcmdldCwKICAgICBJbnRl
cmZhY2VOYW1lPXdlYmtpdFJUQ1BlZXJDb25uZWN0aW9uLAogXSBpbnRlcmZhY2UgUlRDUGVlckNv
bm5lY3Rpb24gewotICAgIFtSYWlzZXNFeGNlcHRpb25dIHZvaWQgY3JlYXRlT2ZmZXIoUlRDU2Vz
c2lvbkRlc2NyaXB0aW9uQ2FsbGJhY2sgc3VjY2Vzc0NhbGxiYWNrLCBbRGVmYXVsdD1VbmRlZmlu
ZWRdIG9wdGlvbmFsIFJUQ0Vycm9yQ2FsbGJhY2sgZmFpbHVyZUNhbGxiYWNrLCBvcHRpb25hbCBE
aWN0aW9uYXJ5IG1lZGlhQ29uc3RyYWludHMpOworICAgIFtSYWlzZXNFeGNlcHRpb25dIHZvaWQg
Y3JlYXRlT2ZmZXIoUlRDU2Vzc2lvbkRlc2NyaXB0aW9uQ2FsbGJhY2sgc3VjY2Vzc0NhbGxiYWNr
LCBbRGVmYXVsdD1VbmRlZmluZWRdIG9wdGlvbmFsIFJUQ1BlZXJDb25uZWN0aW9uRXJyb3JDYWxs
YmFjayBmYWlsdXJlQ2FsbGJhY2ssIG9wdGlvbmFsIERpY3Rpb25hcnkgbWVkaWFDb25zdHJhaW50
cyk7CiAKLSAgICBbUmFpc2VzRXhjZXB0aW9uXSB2b2lkIGNyZWF0ZUFuc3dlcihSVENTZXNzaW9u
RGVzY3JpcHRpb25DYWxsYmFjayBzdWNjZXNzQ2FsbGJhY2ssIFtEZWZhdWx0PVVuZGVmaW5lZF0g
b3B0aW9uYWwgUlRDRXJyb3JDYWxsYmFjayBmYWlsdXJlQ2FsbGJhY2ssIG9wdGlvbmFsIERpY3Rp
b25hcnkgbWVkaWFDb25zdHJhaW50cyk7CisgICAgW1JhaXNlc0V4Y2VwdGlvbl0gdm9pZCBjcmVh
dGVBbnN3ZXIoUlRDU2Vzc2lvbkRlc2NyaXB0aW9uQ2FsbGJhY2sgc3VjY2Vzc0NhbGxiYWNrLCBb
RGVmYXVsdD1VbmRlZmluZWRdIG9wdGlvbmFsIFJUQ1BlZXJDb25uZWN0aW9uRXJyb3JDYWxsYmFj
ayBmYWlsdXJlQ2FsbGJhY2ssIG9wdGlvbmFsIERpY3Rpb25hcnkgbWVkaWFDb25zdHJhaW50cyk7
CiAKLSAgICBbUmFpc2VzRXhjZXB0aW9uXSB2b2lkIHNldExvY2FsRGVzY3JpcHRpb24oUlRDU2Vz
c2lvbkRlc2NyaXB0aW9uIGRlc2NyaXB0aW9uLCBbRGVmYXVsdD1VbmRlZmluZWRdIG9wdGlvbmFs
IFZvaWRDYWxsYmFjayBzdWNjZXNzQ2FsbGJhY2ssIFtEZWZhdWx0PVVuZGVmaW5lZF0gb3B0aW9u
YWwgUlRDRXJyb3JDYWxsYmFjayBmYWlsdXJlQ2FsbGJhY2spOworICAgIFtSYWlzZXNFeGNlcHRp
b25dIHZvaWQgc2V0TG9jYWxEZXNjcmlwdGlvbihSVENTZXNzaW9uRGVzY3JpcHRpb24gZGVzY3Jp
cHRpb24sIFtEZWZhdWx0PVVuZGVmaW5lZF0gb3B0aW9uYWwgVm9pZENhbGxiYWNrIHN1Y2Nlc3ND
YWxsYmFjaywgW0RlZmF1bHQ9VW5kZWZpbmVkXSBvcHRpb25hbCBSVENQZWVyQ29ubmVjdGlvbkVy
cm9yQ2FsbGJhY2sgZmFpbHVyZUNhbGxiYWNrKTsKICAgICBbR2V0dGVyUmFpc2VzRXhjZXB0aW9u
XSByZWFkb25seSBhdHRyaWJ1dGUgUlRDU2Vzc2lvbkRlc2NyaXB0aW9uIGxvY2FsRGVzY3JpcHRp
b247CiAKLSAgICBbUmFpc2VzRXhjZXB0aW9uXSB2b2lkIHNldFJlbW90ZURlc2NyaXB0aW9uKFJU
Q1Nlc3Npb25EZXNjcmlwdGlvbiBkZXNjcmlwdGlvbiwgW0RlZmF1bHQ9VW5kZWZpbmVkXSBvcHRp
b25hbCBWb2lkQ2FsbGJhY2sgc3VjY2Vzc0NhbGxiYWNrLCBbRGVmYXVsdD1VbmRlZmluZWRdIG9w
dGlvbmFsIFJUQ0Vycm9yQ2FsbGJhY2sgZmFpbHVyZUNhbGxiYWNrKTsKKyAgICBbUmFpc2VzRXhj
ZXB0aW9uXSB2b2lkIHNldFJlbW90ZURlc2NyaXB0aW9uKFJUQ1Nlc3Npb25EZXNjcmlwdGlvbiBk
ZXNjcmlwdGlvbiwgW0RlZmF1bHQ9VW5kZWZpbmVkXSBvcHRpb25hbCBWb2lkQ2FsbGJhY2sgc3Vj
Y2Vzc0NhbGxiYWNrLCBbRGVmYXVsdD1VbmRlZmluZWRdIG9wdGlvbmFsIFJUQ1BlZXJDb25uZWN0
aW9uRXJyb3JDYWxsYmFjayBmYWlsdXJlQ2FsbGJhY2spOwogICAgIFtHZXR0ZXJSYWlzZXNFeGNl
cHRpb25dIHJlYWRvbmx5IGF0dHJpYnV0ZSBSVENTZXNzaW9uRGVzY3JpcHRpb24gcmVtb3RlRGVz
Y3JpcHRpb247CiAKICAgICByZWFkb25seSBhdHRyaWJ1dGUgRE9NU3RyaW5nIHNpZ25hbGluZ1N0
YXRlOwogCiAgICAgW1JhaXNlc0V4Y2VwdGlvbl0gdm9pZCB1cGRhdGVJY2Uob3B0aW9uYWwgRGlj
dGlvbmFyeSBjb25maWd1cmF0aW9uLCBvcHRpb25hbCBEaWN0aW9uYXJ5IG1lZGlhQ29uc3RyYWlu
dHMpOwogCi0gICAgW1JhaXNlc0V4Y2VwdGlvbl0gdm9pZCBhZGRJY2VDYW5kaWRhdGUoUlRDSWNl
Q2FuZGlkYXRlIGNhbmRpZGF0ZSwgVm9pZENhbGxiYWNrIHN1Y2Nlc3NDYWxsYmFjaywgUlRDRXJy
b3JDYWxsYmFjayBmYWlsdXJlQ2FsbGJhY2spOworICAgIFtSYWlzZXNFeGNlcHRpb25dIHZvaWQg
YWRkSWNlQ2FuZGlkYXRlKFJUQ0ljZUNhbmRpZGF0ZSBjYW5kaWRhdGUsIFZvaWRDYWxsYmFjayBz
dWNjZXNzQ2FsbGJhY2ssIFJUQ1BlZXJDb25uZWN0aW9uRXJyb3JDYWxsYmFjayBmYWlsdXJlQ2Fs
bGJhY2spOwogCiAgICAgcmVhZG9ubHkgYXR0cmlidXRlIERPTVN0cmluZyBpY2VHYXRoZXJpbmdT
dGF0ZTsKICAgICByZWFkb25seSBhdHRyaWJ1dGUgRE9NU3RyaW5nIGljZUNvbm5lY3Rpb25TdGF0
ZTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvbWVkaWFzdHJlYW0vUlRDUGVl
ckNvbm5lY3Rpb25FcnJvckNhbGxiYWNrLmggYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL21lZGlh
c3RyZWFtL1JUQ1BlZXJDb25uZWN0aW9uRXJyb3JDYWxsYmFjay5oCm5ldyBmaWxlIG1vZGUgMTAw
NjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmMyYWVj
YmEwYTRjZDlhYTlmMmU3MjYxMDdmZTZmZDE3MWYyMDVlZWMKLS0tIC9kZXYvbnVsbAorKysgYi9T
b3VyY2UvV2ViQ29yZS9Nb2R1bGVzL21lZGlhc3RyZWFtL1JUQ1BlZXJDb25uZWN0aW9uRXJyb3JD
YWxsYmFjay5oCkBAIC0wLDAgKzEsNDYgQEAKKy8qCisgKiBDb3B5cmlnaHQgKEMpIDIwMTMgTm9r
aWEgQ29ycG9yYXRpb24gYW5kL29yIGl0cyBzdWJzaWRpYXJ5KC1pZXMpLgorICoKKyAqIFJlZGlz
dHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0
aG91dAorICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZv
bGxvd2luZyBjb25kaXRpb25zCisgKiBhcmUgbWV0OgorICogMS4gUmVkaXN0cmlidXRpb25zIG9m
IHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGlj
ZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4K
KyAqIDIuIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUg
YWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFu
ZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCisgKiAgICBkb2N1bWVudGF0aW9uIGFu
ZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgorICoK
KyAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgVEhFIENPUFlSSUdIVCBIT0xERVJTIEFO
RCBDT05UUklCVVRPUlMKKyAqICJBUyBJUyIgQU5EIEFOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FS
UkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UCisgKiBMSU1JVEVEIFRPLCBUSEUgSU1QTElFRCBX
QVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IKKyAqIEEgUEFSVElD
VUxBUiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBUSEUgQ09QWVJJ
R0hUCisgKiBPV05FUiBPUiBDT05UUklCVVRPUlMgQkUgTElBQkxFIEZPUiBBTlkgRElSRUNULCBJ
TkRJUkVDVCwgSU5DSURFTlRBTCwKKyAqIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVO
VElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QKKyAqIExJTUlURUQgVE8sIFBST0NVUkVN
RU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLAorICogREFU
QSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBB
TkQgT04gQU5ZCisgKiBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBT
VFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUCisgKiAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RI
RVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UKKyAqIE9GIFRISVMgU09G
VFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0Uu
CisgKi8KKworI2lmbmRlZiBSVENQZWVyQ29ubmVjdGlvbkVycm9yQ2FsbGJhY2tfaAorI2RlZmlu
ZSBSVENQZWVyQ29ubmVjdGlvbkVycm9yQ2FsbGJhY2tfaAorCisjaWYgRU5BQkxFKE1FRElBX1NU
UkVBTSkKKworI2luY2x1ZGUgIkRPTUVycm9yLmgiCisjaW5jbHVkZSA8d3RmL1JlZkNvdW50ZWQu
aD4KKworbmFtZXNwYWNlIFdlYkNvcmUgeworCitjbGFzcyBSVENQZWVyQ29ubmVjdGlvbkVycm9y
Q2FsbGJhY2sgOiBwdWJsaWMgUmVmQ291bnRlZDxSVENQZWVyQ29ubmVjdGlvbkVycm9yQ2FsbGJh
Y2s+IHsKK3B1YmxpYzoKKyAgICB2aXJ0dWFsIH5SVENQZWVyQ29ubmVjdGlvbkVycm9yQ2FsbGJh
Y2soKSB7IH0KKyAgICB2aXJ0dWFsIGJvb2wgaGFuZGxlRXZlbnQoRE9NRXJyb3IqKSA9IDA7Cit9
OworCit9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCisKKyNlbmRpZiAvLyBFTkFCTEUoTUVESUFfU1RS
RUFNKQorCisjZW5kaWYgLy8gUlRDUGVlckNvbm5lY3Rpb25FcnJvckNhbGxiYWNrX2gKZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvbWVkaWFzdHJlYW0vUlRDUGVlckNvbm5lY3Rp
b25FcnJvckNhbGxiYWNrLmlkbCBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvbWVkaWFzdHJlYW0v
UlRDUGVlckNvbm5lY3Rpb25FcnJvckNhbGxiYWNrLmlkbApuZXcgZmlsZSBtb2RlIDEwMDY0NApp
bmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi40Yjg3YWQ3ZmYw
NGUzNzNjYTRjMDAzNWRhMmY2NDI4YmYyOGYwNzIyCi0tLSAvZGV2L251bGwKKysrIGIvU291cmNl
L1dlYkNvcmUvTW9kdWxlcy9tZWRpYXN0cmVhbS9SVENQZWVyQ29ubmVjdGlvbkVycm9yQ2FsbGJh
Y2suaWRsCkBAIC0wLDAgKzEsMzEgQEAKKy8qCisgKiBDb3B5cmlnaHQgKEMpIDIwMTMgTm9raWEg
Q29ycG9yYXRpb24gYW5kL29yIGl0cyBzdWJzaWRpYXJ5KC1pZXMpLgorICoKKyAqIFJlZGlzdHJp
YnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91
dAorICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxv
d2luZyBjb25kaXRpb25zCisgKiBhcmUgbWV0OgorICogMS4gUmVkaXN0cmlidXRpb25zIG9mIHNv
dXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwg
dGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKyAq
IDIuIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJv
dmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0
aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCisgKiAgICBkb2N1bWVudGF0aW9uIGFuZC9v
ciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgorICoKKyAq
IFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgVEhFIENPUFlSSUdIVCBIT0xERVJTIEFORCBD
T05UUklCVVRPUlMKKyAqICJBUyBJUyIgQU5EIEFOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFO
VElFUywgSU5DTFVESU5HLCBCVVQgTk9UCisgKiBMSU1JVEVEIFRPLCBUSEUgSU1QTElFRCBXQVJS
QU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IKKyAqIEEgUEFSVElDVUxB
UiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBUSEUgQ09QWVJJR0hU
CisgKiBPV05FUiBPUiBDT05UUklCVVRPUlMgQkUgTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJ
UkVDVCwgSU5DSURFTlRBTCwKKyAqIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElB
TCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QKKyAqIExJTUlURUQgVE8sIFBST0NVUkVNRU5U
IE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLAorICogREFUQSwg
T1IgUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQg
T04gQU5ZCisgKiBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJ
Q1QgTElBQklMSVRZLCBPUiBUT1JUCisgKiAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJX
SVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UKKyAqIE9GIFRISVMgU09GVFdB
UkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCisg
Ki8KKworWworICAgIENvbmRpdGlvbmFsPU1FRElBX1NUUkVBTSwKK10gY2FsbGJhY2sgaW50ZXJm
YWNlIFJUQ1BlZXJDb25uZWN0aW9uRXJyb3JDYWxsYmFjayB7CisgICAgYm9vbGVhbiBoYW5kbGVF
dmVudChET01FcnJvciBlcnJvcik7Cit9OworCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9N
b2R1bGVzL21lZGlhc3RyZWFtL1JUQ1Nlc3Npb25EZXNjcmlwdGlvblJlcXVlc3RJbXBsLmNwcCBi
L1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvbWVkaWFzdHJlYW0vUlRDU2Vzc2lvbkRlc2NyaXB0aW9u
UmVxdWVzdEltcGwuY3BwCmluZGV4IDQwODFlOTM0YWEyNDUxMjljOGQ5YWEwNzU5MTBlODhlMDY1
ZjJjYzYuLjg3MmE1NGUxOGExMTg1ODUwMTY0NjMwMGMzMGM1MTJhNDE0YjMxNzEgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvbWVkaWFzdHJlYW0vUlRDU2Vzc2lvbkRlc2NyaXB0
aW9uUmVxdWVzdEltcGwuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvbWVkaWFzdHJl
YW0vUlRDU2Vzc2lvbkRlc2NyaXB0aW9uUmVxdWVzdEltcGwuY3BwCkBAIC0xLDUgKzEsNiBAQAog
LyoKICAqIENvcHlyaWdodCAoQykgMjAxMiBHb29nbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVk
LgorICogQ29weXJpZ2h0IChDKSAyMDEzIE5va2lhIENvcnBvcmF0aW9uIGFuZC9vciBpdHMgc3Vi
c2lkaWFyeSgtaWVzKS4KICAqCiAgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBh
bmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKICAqIG1vZGlmaWNhdGlvbiwgYXJlIHBl
cm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucwpAQCAtMzQsMjIg
KzM1LDIyIEBACiAKICNpbmNsdWRlICJSVENTZXNzaW9uRGVzY3JpcHRpb25SZXF1ZXN0SW1wbC5o
IgogCi0jaW5jbHVkZSAiUlRDRXJyb3JDYWxsYmFjay5oIgogI2luY2x1ZGUgIlJUQ1BlZXJDb25u
ZWN0aW9uLmgiCisjaW5jbHVkZSAiUlRDUGVlckNvbm5lY3Rpb25FcnJvckNhbGxiYWNrLmgiCiAj
aW5jbHVkZSAiUlRDU2Vzc2lvbkRlc2NyaXB0aW9uLmgiCiAjaW5jbHVkZSAiUlRDU2Vzc2lvbkRl
c2NyaXB0aW9uQ2FsbGJhY2suaCIKICNpbmNsdWRlICJSVENTZXNzaW9uRGVzY3JpcHRpb25EZXNj
cmlwdG9yLmgiCiAKIG5hbWVzcGFjZSBXZWJDb3JlIHsKIAotUGFzc1JlZlB0cjxSVENTZXNzaW9u
RGVzY3JpcHRpb25SZXF1ZXN0SW1wbD4gUlRDU2Vzc2lvbkRlc2NyaXB0aW9uUmVxdWVzdEltcGw6
OmNyZWF0ZShTY3JpcHRFeGVjdXRpb25Db250ZXh0KiBjb250ZXh0LCBQYXNzUmVmUHRyPFJUQ1Nl
c3Npb25EZXNjcmlwdGlvbkNhbGxiYWNrPiBzdWNjZXNzQ2FsbGJhY2ssIFBhc3NSZWZQdHI8UlRD
RXJyb3JDYWxsYmFjaz4gZXJyb3JDYWxsYmFjaykKK1Bhc3NSZWZQdHI8UlRDU2Vzc2lvbkRlc2Ny
aXB0aW9uUmVxdWVzdEltcGw+IFJUQ1Nlc3Npb25EZXNjcmlwdGlvblJlcXVlc3RJbXBsOjpjcmVh
dGUoU2NyaXB0RXhlY3V0aW9uQ29udGV4dCogY29udGV4dCwgUGFzc1JlZlB0cjxSVENTZXNzaW9u
RGVzY3JpcHRpb25DYWxsYmFjaz4gc3VjY2Vzc0NhbGxiYWNrLCBQYXNzUmVmUHRyPFJUQ1BlZXJD
b25uZWN0aW9uRXJyb3JDYWxsYmFjaz4gZXJyb3JDYWxsYmFjaykKIHsKICAgICBSZWZQdHI8UlRD
U2Vzc2lvbkRlc2NyaXB0aW9uUmVxdWVzdEltcGw+IHJlcXVlc3QgPSBhZG9wdFJlZihuZXcgUlRD
U2Vzc2lvbkRlc2NyaXB0aW9uUmVxdWVzdEltcGwoY29udGV4dCwgc3VjY2Vzc0NhbGxiYWNrLCBl
cnJvckNhbGxiYWNrKSk7CiAgICAgcmVxdWVzdC0+c3VzcGVuZElmTmVlZGVkKCk7CiAgICAgcmV0
dXJuIHJlcXVlc3QucmVsZWFzZSgpOwogfQogCi1SVENTZXNzaW9uRGVzY3JpcHRpb25SZXF1ZXN0
SW1wbDo6UlRDU2Vzc2lvbkRlc2NyaXB0aW9uUmVxdWVzdEltcGwoU2NyaXB0RXhlY3V0aW9uQ29u
dGV4dCogY29udGV4dCwgUGFzc1JlZlB0cjxSVENTZXNzaW9uRGVzY3JpcHRpb25DYWxsYmFjaz4g
c3VjY2Vzc0NhbGxiYWNrLCBQYXNzUmVmUHRyPFJUQ0Vycm9yQ2FsbGJhY2s+IGVycm9yQ2FsbGJh
Y2spCitSVENTZXNzaW9uRGVzY3JpcHRpb25SZXF1ZXN0SW1wbDo6UlRDU2Vzc2lvbkRlc2NyaXB0
aW9uUmVxdWVzdEltcGwoU2NyaXB0RXhlY3V0aW9uQ29udGV4dCogY29udGV4dCwgUGFzc1JlZlB0
cjxSVENTZXNzaW9uRGVzY3JpcHRpb25DYWxsYmFjaz4gc3VjY2Vzc0NhbGxiYWNrLCBQYXNzUmVm
UHRyPFJUQ1BlZXJDb25uZWN0aW9uRXJyb3JDYWxsYmFjaz4gZXJyb3JDYWxsYmFjaykKICAgICA6
IEFjdGl2ZURPTU9iamVjdChjb250ZXh0KQogICAgICwgbV9zdWNjZXNzQ2FsbGJhY2soc3VjY2Vz
c0NhbGxiYWNrKQogICAgICwgbV9lcnJvckNhbGxiYWNrKGVycm9yQ2FsbGJhY2spCkBAIC03Myw3
ICs3NCw3IEBAIHZvaWQgUlRDU2Vzc2lvbkRlc2NyaXB0aW9uUmVxdWVzdEltcGw6OnJlcXVlc3RT
dWNjZWVkZWQoUGFzc1JlZlB0cjxSVENTZXNzaW9uRGVzCiB2b2lkIFJUQ1Nlc3Npb25EZXNjcmlw
dGlvblJlcXVlc3RJbXBsOjpyZXF1ZXN0RmFpbGVkKGNvbnN0IFN0cmluZyYgZXJyb3IpCiB7CiAg
ICAgaWYgKG1fZXJyb3JDYWxsYmFjaykKLSAgICAgICAgbV9lcnJvckNhbGxiYWNrLT5oYW5kbGVF
dmVudChlcnJvcik7CisgICAgICAgIG1fZXJyb3JDYWxsYmFjay0+aGFuZGxlRXZlbnQoRE9NRXJy
b3I6OmNyZWF0ZShlcnJvcikuZ2V0KCkpOwogCiAgICAgY2xlYXIoKTsKIH0KZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvbWVkaWFzdHJlYW0vUlRDU2Vzc2lvbkRlc2NyaXB0aW9u
UmVxdWVzdEltcGwuaCBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvbWVkaWFzdHJlYW0vUlRDU2Vz
c2lvbkRlc2NyaXB0aW9uUmVxdWVzdEltcGwuaAppbmRleCBkMWJjZWUwMTM1MTNhYTY3YzJiMDc2
YTkwNTAxZWNlODU2MmUxNmUwLi4yOWRlNjQ3MzkxOTk2YTFkNWVkMjUzY2MzNjVkNTRmY2E0OGIz
OTUxIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL21lZGlhc3RyZWFtL1JUQ1Nl
c3Npb25EZXNjcmlwdGlvblJlcXVlc3RJbXBsLmgKKysrIGIvU291cmNlL1dlYkNvcmUvTW9kdWxl
cy9tZWRpYXN0cmVhbS9SVENTZXNzaW9uRGVzY3JpcHRpb25SZXF1ZXN0SW1wbC5oCkBAIC0xLDUg
KzEsNiBAQAogLyoKICAqIENvcHlyaWdodCAoQykgMjAxMiBHb29nbGUgSW5jLiBBbGwgcmlnaHRz
IHJlc2VydmVkLgorICogQ29weXJpZ2h0IChDKSAyMDEzIE5va2lhIENvcnBvcmF0aW9uIGFuZC9v
ciBpdHMgc3Vic2lkaWFyeSgtaWVzKS4KICAqCiAgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGlu
IHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKICAqIG1vZGlmaWNhdGlv
biwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucwpA
QCAtMzgsMTMgKzM5LDEzIEBACiAKIG5hbWVzcGFjZSBXZWJDb3JlIHsKIAotY2xhc3MgUlRDRXJy
b3JDYWxsYmFjazsKK2NsYXNzIFJUQ1BlZXJDb25uZWN0aW9uRXJyb3JDYWxsYmFjazsKIGNsYXNz
IFJUQ1BlZXJDb25uZWN0aW9uOwogY2xhc3MgUlRDU2Vzc2lvbkRlc2NyaXB0aW9uQ2FsbGJhY2s7
CiAKIGNsYXNzIFJUQ1Nlc3Npb25EZXNjcmlwdGlvblJlcXVlc3RJbXBsIDogcHVibGljIFJUQ1Nl
c3Npb25EZXNjcmlwdGlvblJlcXVlc3QsIHB1YmxpYyBBY3RpdmVET01PYmplY3QgewogcHVibGlj
OgotICAgIHN0YXRpYyBQYXNzUmVmUHRyPFJUQ1Nlc3Npb25EZXNjcmlwdGlvblJlcXVlc3RJbXBs
PiBjcmVhdGUoU2NyaXB0RXhlY3V0aW9uQ29udGV4dCosIFBhc3NSZWZQdHI8UlRDU2Vzc2lvbkRl
c2NyaXB0aW9uQ2FsbGJhY2s+LCBQYXNzUmVmUHRyPFJUQ0Vycm9yQ2FsbGJhY2s+KTsKKyAgICBz
dGF0aWMgUGFzc1JlZlB0cjxSVENTZXNzaW9uRGVzY3JpcHRpb25SZXF1ZXN0SW1wbD4gY3JlYXRl
KFNjcmlwdEV4ZWN1dGlvbkNvbnRleHQqLCBQYXNzUmVmUHRyPFJUQ1Nlc3Npb25EZXNjcmlwdGlv
bkNhbGxiYWNrPiwgUGFzc1JlZlB0cjxSVENQZWVyQ29ubmVjdGlvbkVycm9yQ2FsbGJhY2s+KTsK
ICAgICB2aXJ0dWFsIH5SVENTZXNzaW9uRGVzY3JpcHRpb25SZXF1ZXN0SW1wbCgpOwogCiAgICAg
dmlydHVhbCB2b2lkIHJlcXVlc3RTdWNjZWVkZWQoUGFzc1JlZlB0cjxSVENTZXNzaW9uRGVzY3Jp
cHRpb25EZXNjcmlwdG9yPikgT1ZFUlJJREU7CkBAIC01NCwxMiArNTUsMTIgQEAgcHVibGljOgog
ICAgIHZpcnR1YWwgdm9pZCBzdG9wKCkgT1ZFUlJJREU7CiAKIHByaXZhdGU6Ci0gICAgUlRDU2Vz
c2lvbkRlc2NyaXB0aW9uUmVxdWVzdEltcGwoU2NyaXB0RXhlY3V0aW9uQ29udGV4dCosIFBhc3NS
ZWZQdHI8UlRDU2Vzc2lvbkRlc2NyaXB0aW9uQ2FsbGJhY2s+LCBQYXNzUmVmUHRyPFJUQ0Vycm9y
Q2FsbGJhY2s+KTsKKyAgICBSVENTZXNzaW9uRGVzY3JpcHRpb25SZXF1ZXN0SW1wbChTY3JpcHRF
eGVjdXRpb25Db250ZXh0KiwgUGFzc1JlZlB0cjxSVENTZXNzaW9uRGVzY3JpcHRpb25DYWxsYmFj
az4sIFBhc3NSZWZQdHI8UlRDUGVlckNvbm5lY3Rpb25FcnJvckNhbGxiYWNrPik7CiAKICAgICB2
b2lkIGNsZWFyKCk7CiAKICAgICBSZWZQdHI8UlRDU2Vzc2lvbkRlc2NyaXB0aW9uQ2FsbGJhY2s+
IG1fc3VjY2Vzc0NhbGxiYWNrOwotICAgIFJlZlB0cjxSVENFcnJvckNhbGxiYWNrPiBtX2Vycm9y
Q2FsbGJhY2s7CisgICAgUmVmUHRyPFJUQ1BlZXJDb25uZWN0aW9uRXJyb3JDYWxsYmFjaz4gbV9l
cnJvckNhbGxiYWNrOwogfTsKIAogfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQpkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYkNvcmUvTW9kdWxlcy9tZWRpYXN0cmVhbS9SVENWb2lkUmVxdWVzdEltcGwuY3Bw
IGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9tZWRpYXN0cmVhbS9SVENWb2lkUmVxdWVzdEltcGwu
Y3BwCmluZGV4IDE1MGUzZTlmZmJhNzI2Yzg0YTdjYjdlNjRhZjQyZWE3MmRhOWUxMmYuLjExNjEx
NTgxOGIyZTk2NjRmY2ExMTVmYjgwODM1NjEwMWFmMmE3MzQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJDb3JlL01vZHVsZXMvbWVkaWFzdHJlYW0vUlRDVm9pZFJlcXVlc3RJbXBsLmNwcAorKysgYi9T
b3VyY2UvV2ViQ29yZS9Nb2R1bGVzL21lZGlhc3RyZWFtL1JUQ1ZvaWRSZXF1ZXN0SW1wbC5jcHAK
QEAgLTEsNSArMSw2IEBACiAvKgogICogQ29weXJpZ2h0IChDKSAyMDEyIEdvb2dsZSBJbmMuIEFs
bCByaWdodHMgcmVzZXJ2ZWQuCisgKiBDb3B5cmlnaHQgKEMpIDIwMTMgTm9raWEgQ29ycG9yYXRp
b24gYW5kL29yIGl0cyBzdWJzaWRpYXJ5KC1pZXMpLgogICoKICAqIFJlZGlzdHJpYnV0aW9uIGFu
ZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAogICogbW9k
aWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25k
aXRpb25zCkBAIC0zNCwyMCArMzUsMjEgQEAKIAogI2luY2x1ZGUgIlJUQ1ZvaWRSZXF1ZXN0SW1w
bC5oIgogCi0jaW5jbHVkZSAiUlRDRXJyb3JDYWxsYmFjay5oIgorI2luY2x1ZGUgIkRPTUVycm9y
LmgiCiAjaW5jbHVkZSAiUlRDUGVlckNvbm5lY3Rpb24uaCIKKyNpbmNsdWRlICJSVENQZWVyQ29u
bmVjdGlvbkVycm9yQ2FsbGJhY2suaCIKICNpbmNsdWRlICJWb2lkQ2FsbGJhY2suaCIKIAogbmFt
ZXNwYWNlIFdlYkNvcmUgewogCi1QYXNzUmVmUHRyPFJUQ1ZvaWRSZXF1ZXN0SW1wbD4gUlRDVm9p
ZFJlcXVlc3RJbXBsOjpjcmVhdGUoU2NyaXB0RXhlY3V0aW9uQ29udGV4dCogY29udGV4dCwgUGFz
c1JlZlB0cjxWb2lkQ2FsbGJhY2s+IHN1Y2Nlc3NDYWxsYmFjaywgUGFzc1JlZlB0cjxSVENFcnJv
ckNhbGxiYWNrPiBlcnJvckNhbGxiYWNrKQorUGFzc1JlZlB0cjxSVENWb2lkUmVxdWVzdEltcGw+
IFJUQ1ZvaWRSZXF1ZXN0SW1wbDo6Y3JlYXRlKFNjcmlwdEV4ZWN1dGlvbkNvbnRleHQqIGNvbnRl
eHQsIFBhc3NSZWZQdHI8Vm9pZENhbGxiYWNrPiBzdWNjZXNzQ2FsbGJhY2ssIFBhc3NSZWZQdHI8
UlRDUGVlckNvbm5lY3Rpb25FcnJvckNhbGxiYWNrPiBlcnJvckNhbGxiYWNrKQogewogICAgIFJl
ZlB0cjxSVENWb2lkUmVxdWVzdEltcGw+IHJlcXVlc3QgPSBhZG9wdFJlZihuZXcgUlRDVm9pZFJl
cXVlc3RJbXBsKGNvbnRleHQsIHN1Y2Nlc3NDYWxsYmFjaywgZXJyb3JDYWxsYmFjaykpOwogICAg
IHJlcXVlc3QtPnN1c3BlbmRJZk5lZWRlZCgpOwogICAgIHJldHVybiByZXF1ZXN0LnJlbGVhc2Uo
KTsKIH0KIAotUlRDVm9pZFJlcXVlc3RJbXBsOjpSVENWb2lkUmVxdWVzdEltcGwoU2NyaXB0RXhl
Y3V0aW9uQ29udGV4dCogY29udGV4dCwgUGFzc1JlZlB0cjxWb2lkQ2FsbGJhY2s+IHN1Y2Nlc3ND
YWxsYmFjaywgUGFzc1JlZlB0cjxSVENFcnJvckNhbGxiYWNrPiBlcnJvckNhbGxiYWNrKQorUlRD
Vm9pZFJlcXVlc3RJbXBsOjpSVENWb2lkUmVxdWVzdEltcGwoU2NyaXB0RXhlY3V0aW9uQ29udGV4
dCogY29udGV4dCwgUGFzc1JlZlB0cjxWb2lkQ2FsbGJhY2s+IHN1Y2Nlc3NDYWxsYmFjaywgUGFz
c1JlZlB0cjxSVENQZWVyQ29ubmVjdGlvbkVycm9yQ2FsbGJhY2s+IGVycm9yQ2FsbGJhY2spCiAg
ICAgOiBBY3RpdmVET01PYmplY3QoY29udGV4dCkKICAgICAsIG1fc3VjY2Vzc0NhbGxiYWNrKHN1
Y2Nlc3NDYWxsYmFjaykKICAgICAsIG1fZXJyb3JDYWxsYmFjayhlcnJvckNhbGxiYWNrKQpAQCAt
NjksNyArNzEsNyBAQCB2b2lkIFJUQ1ZvaWRSZXF1ZXN0SW1wbDo6cmVxdWVzdFN1Y2NlZWRlZCgp
CiB2b2lkIFJUQ1ZvaWRSZXF1ZXN0SW1wbDo6cmVxdWVzdEZhaWxlZChjb25zdCBTdHJpbmcmIGVy
cm9yKQogewogICAgIGlmIChtX2Vycm9yQ2FsbGJhY2suZ2V0KCkpCi0gICAgICAgIG1fZXJyb3JD
YWxsYmFjay0+aGFuZGxlRXZlbnQoZXJyb3IpOworICAgICAgICBtX2Vycm9yQ2FsbGJhY2stPmhh
bmRsZUV2ZW50KERPTUVycm9yOjpjcmVhdGUoZXJyb3IpLmdldCgpKTsKIAogICAgIGNsZWFyKCk7
CiB9CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL21lZGlhc3RyZWFtL1JUQ1Zv
aWRSZXF1ZXN0SW1wbC5oIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9tZWRpYXN0cmVhbS9SVENW
b2lkUmVxdWVzdEltcGwuaAppbmRleCA2NTdhYmZjN2M2YjMyOTJhNTMzNGM0MTljZjJhNDdlMjky
ZjcyY2I2Li4yMjc1ODMzODZlOGIwNGI3NWFjNWU0NDdlODIyZWUyZDNhOWJlNWEwIDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL21lZGlhc3RyZWFtL1JUQ1ZvaWRSZXF1ZXN0SW1w
bC5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvbWVkaWFzdHJlYW0vUlRDVm9pZFJlcXVl
c3RJbXBsLmgKQEAgLTEsNSArMSw2IEBACiAvKgogICogQ29weXJpZ2h0IChDKSAyMDEyIEdvb2ds
ZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKiBDb3B5cmlnaHQgKEMpIDIwMTMgTm9raWEg
Q29ycG9yYXRpb24gYW5kL29yIGl0cyBzdWJzaWRpYXJ5KC1pZXMpLgogICoKICAqIFJlZGlzdHJp
YnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91
dAogICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxv
d2luZyBjb25kaXRpb25zCkBAIC0zOCwxMiArMzksMTIgQEAKIAogbmFtZXNwYWNlIFdlYkNvcmUg
ewogCi1jbGFzcyBSVENFcnJvckNhbGxiYWNrOworY2xhc3MgUlRDUGVlckNvbm5lY3Rpb25FcnJv
ckNhbGxiYWNrOwogY2xhc3MgVm9pZENhbGxiYWNrOwogCiBjbGFzcyBSVENWb2lkUmVxdWVzdElt
cGwgOiBwdWJsaWMgUlRDVm9pZFJlcXVlc3QsIHB1YmxpYyBBY3RpdmVET01PYmplY3QgewogcHVi
bGljOgotICAgIHN0YXRpYyBQYXNzUmVmUHRyPFJUQ1ZvaWRSZXF1ZXN0SW1wbD4gY3JlYXRlKFNj
cmlwdEV4ZWN1dGlvbkNvbnRleHQqLCBQYXNzUmVmUHRyPFZvaWRDYWxsYmFjaz4sIFBhc3NSZWZQ
dHI8UlRDRXJyb3JDYWxsYmFjaz4pOworICAgIHN0YXRpYyBQYXNzUmVmUHRyPFJUQ1ZvaWRSZXF1
ZXN0SW1wbD4gY3JlYXRlKFNjcmlwdEV4ZWN1dGlvbkNvbnRleHQqLCBQYXNzUmVmUHRyPFZvaWRD
YWxsYmFjaz4sIFBhc3NSZWZQdHI8UlRDUGVlckNvbm5lY3Rpb25FcnJvckNhbGxiYWNrPik7CiAg
ICAgdmlydHVhbCB+UlRDVm9pZFJlcXVlc3RJbXBsKCk7CiAKICAgICB2aXJ0dWFsIHZvaWQgcmVx
dWVzdFN1Y2NlZWRlZCgpOwpAQCAtNTMsMTIgKzU0LDEyIEBAIHB1YmxpYzoKICAgICB2aXJ0dWFs
IHZvaWQgc3RvcCgpIE9WRVJSSURFOwogCiBwcml2YXRlOgotICAgIFJUQ1ZvaWRSZXF1ZXN0SW1w
bChTY3JpcHRFeGVjdXRpb25Db250ZXh0KiwgUGFzc1JlZlB0cjxWb2lkQ2FsbGJhY2s+LCBQYXNz
UmVmUHRyPFJUQ0Vycm9yQ2FsbGJhY2s+KTsKKyAgICBSVENWb2lkUmVxdWVzdEltcGwoU2NyaXB0
RXhlY3V0aW9uQ29udGV4dCosIFBhc3NSZWZQdHI8Vm9pZENhbGxiYWNrPiwgUGFzc1JlZlB0cjxS
VENQZWVyQ29ubmVjdGlvbkVycm9yQ2FsbGJhY2s+KTsKIAogICAgIHZvaWQgY2xlYXIoKTsKIAog
ICAgIFJlZlB0cjxWb2lkQ2FsbGJhY2s+IG1fc3VjY2Vzc0NhbGxiYWNrOwotICAgIFJlZlB0cjxS
VENFcnJvckNhbGxiYWNrPiBtX2Vycm9yQ2FsbGJhY2s7CisgICAgUmVmUHRyPFJUQ1BlZXJDb25u
ZWN0aW9uRXJyb3JDYWxsYmFjaz4gbV9lcnJvckNhbGxiYWNrOwogfTsKIAogfSAvLyBuYW1lc3Bh
Y2UgV2ViQ29yZQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvV2ViQ29yZS54Y29kZXByb2ov
cHJvamVjdC5wYnhwcm9qIGIvU291cmNlL1dlYkNvcmUvV2ViQ29yZS54Y29kZXByb2ovcHJvamVj
dC5wYnhwcm9qCmluZGV4IDdkY2M5MGNiOGM0MmQ4M2QwNWJmN2E1NGFlMmNhMTE0ZmYwZmU1Nzcu
LjJiMDIyMzI0MjE0NmZmYjhlNzA0N2U3NjJiODZkNzBmNzg2MmU3NmYgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9XZWJDb3JlL1dlYkNvcmUueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvagorKysgYi9Tb3Vy
Y2UvV2ViQ29yZS9XZWJDb3JlLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2oKQEAgLTIyOCw3ICsy
MjgsNiBAQAogCQkwNzhFMDkxRjE3RDE0RDFDMDA0MjBBQTEgLyogUlRDRGF0YUNoYW5uZWxFdmVu
dC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMDcyMjFC
NjcxN0NFQzMyNzAwODQ4RTUxIC8qIFJUQ0RhdGFDaGFubmVsRXZlbnQuaCAqLzsgc2V0dGluZ3Mg
PSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OwogCQkwNzhFMDkyMDE3RDE0RDFDMDA0
MjBBQTEgLyogUlRDRFRNRlNlbmRlci5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRG
aWxlOyBmaWxlUmVmID0gMDcyMjFCNkExN0NFQzMyNzAwODQ4RTUxIC8qIFJUQ0RUTUZTZW5kZXIu
aCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OwogCQkwNzhF
MDkyMTE3RDE0RDFDMDA0MjBBQTEgLyogUlRDRFRNRlRvbmVDaGFuZ2VFdmVudC5oIGluIEhlYWRl
cnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMDcyMjFCNkQxN0NFQzMyNzAw
ODQ4RTUxIC8qIFJUQ0RUTUZUb25lQ2hhbmdlRXZlbnQuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklC
VVRFUyA9IChQcml2YXRlLCApOyB9OyB9OwotCQkwNzhFMDkyMjE3RDE0RDFDMDA0MjBBQTEgLyog
UlRDRXJyb3JDYWxsYmFjay5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBm
aWxlUmVmID0gMDcyMjFCNkYxN0NFQzMyNzAwODQ4RTUxIC8qIFJUQ0Vycm9yQ2FsbGJhY2suaCAq
Lzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OwogCQkwNzhFMDky
MzE3RDE0RDFDMDA0MjBBQTEgLyogUlRDSWNlQ2FuZGlkYXRlLmggaW4gSGVhZGVycyAqLyA9IHtp
c2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAwNzIyMUI3MjE3Q0VDMzI3MDA4NDhFNTEgLyog
UlRDSWNlQ2FuZGlkYXRlLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwg
KTsgfTsgfTsKIAkJMDc4RTA5MjQxN0QxNEQxQzAwNDIwQUExIC8qIFJUQ0ljZUNhbmRpZGF0ZUV2
ZW50LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAwNzIy
MUI3NTE3Q0VDMzI3MDA4NDhFNTEgLyogUlRDSWNlQ2FuZGlkYXRlRXZlbnQuaCAqLzsgc2V0dGlu
Z3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OwogCQkwNzhFMDkyNTE3RDE0RDFD
MDA0MjBBQTEgLyogUlRDUGVlckNvbm5lY3Rpb24uaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBC
WEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDA3MjIxQjc4MTdDRUMzMjcwMDg0OEU1MSAvKiBSVENQZWVy
Q29ubmVjdGlvbi5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07
IH07CkBAIC02NzMwLDggKzY3MjksNiBAQAogCQkwNzIyMUI2QzE3Q0VDMzI3MDA4NDhFNTEgLyog
UlRDRFRNRlRvbmVDaGFuZ2VFdmVudC5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsg
ZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7
IHBhdGggPSBSVENEVE1GVG9uZUNoYW5nZUV2ZW50LmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+
IjsgfTsKIAkJMDcyMjFCNkQxN0NFQzMyNzAwODQ4RTUxIC8qIFJUQ0RUTUZUb25lQ2hhbmdlRXZl
bnQuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0
S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gUlRDRFRNRlRvbmVDaGFuZ2VF
dmVudC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQkwNzIyMUI2RTE3Q0VDMzI3MDA4
NDhFNTEgLyogUlRDRFRNRlRvbmVDaGFuZ2VFdmVudC5pZGwgKi8gPSB7aXNhID0gUEJYRmlsZVJl
ZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSB0ZXh0OyBwYXRo
ID0gUlRDRFRNRlRvbmVDaGFuZ2VFdmVudC5pZGw7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07
Ci0JCTA3MjIxQjZGMTdDRUMzMjcwMDg0OEU1MSAvKiBSVENFcnJvckNhbGxiYWNrLmggKi8gPSB7
aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5
cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFJUQ0Vycm9yQ2FsbGJhY2suaDsgc291cmNlVHJl
ZSA9ICI8Z3JvdXA+IjsgfTsKLQkJMDcyMjFCNzAxN0NFQzMyNzAwODQ4RTUxIC8qIFJUQ0Vycm9y
Q2FsbGJhY2suaWRsICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9
IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gdGV4dDsgcGF0aCA9IFJUQ0Vycm9yQ2FsbGJhY2suaWRs
OyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQkwNzIyMUI3MTE3Q0VDMzI3MDA4NDhFNTEg
LyogUlRDSWNlQ2FuZGlkYXRlLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxl
RW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0
aCA9IFJUQ0ljZUNhbmRpZGF0ZS5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTA3
MjIxQjcyMTdDRUMzMjcwMDg0OEU1MSAvKiBSVENJY2VDYW5kaWRhdGUuaCAqLyA9IHtpc2EgPSBQ
QlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNv
dXJjZWNvZGUuYy5oOyBwYXRoID0gUlRDSWNlQ2FuZGlkYXRlLmg7IHNvdXJjZVRyZWUgPSAiPGdy
b3VwPiI7IH07CiAJCTA3MjIxQjczMTdDRUMzMjcwMDg0OEU1MSAvKiBSVENJY2VDYW5kaWRhdGUu
aWRsICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RL
bm93bkZpbGVUeXBlID0gdGV4dDsgcGF0aCA9IFJUQ0ljZUNhbmRpZGF0ZS5pZGw7IHNvdXJjZVRy
ZWUgPSAiPGdyb3VwPiI7IH07CkBAIC04MzEyLDYgKzgzMDksOCBAQAogCQk0QTZFOUZDNTEzQzE3
RDU3MDA0NkE3RjggLyogRm9udEZlYXR1cmVTZXR0aW5ncy5jcHAgKi8gPSB7aXNhID0gUEJYRmls
ZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vj
b2RlLmNwcC5jcHA7IHBhdGggPSBGb250RmVhdHVyZVNldHRpbmdzLmNwcDsgc291cmNlVHJlZSA9
ICI8Z3JvdXA+IjsgfTsKIAkJNEE2RTlGQzYxM0MxN0Q1NzAwNDZBN0Y4IC8qIEZvbnRGZWF0dXJl
U2V0dGluZ3MuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBleHBsaWNpdEZpbGVUeXBl
ID0gc291cmNlY29kZS5jLmg7IGZpbGVFbmNvZGluZyA9IDQ7IHBhdGggPSBGb250RmVhdHVyZVNl
dHRpbmdzLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTRBOEM5NkVBMEJFNjkwMzIw
MDRFRUZGMCAvKiBGcmFtZVNlbGVjdGlvbk1hYy5tbSAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJl
bmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNw
cC5vYmpjcHA7IG5hbWUgPSBGcmFtZVNlbGVjdGlvbk1hYy5tbTsgcGF0aCA9IG1hYy9GcmFtZVNl
bGVjdGlvbk1hYy5tbTsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNEE5NzU1MzUxODU4
RUQ5QjAwQkQ2RDE1IC8qIFJUQ1BlZXJDb25uZWN0aW9uRXJyb3JDYWxsYmFjay5oICovID0ge2lz
YSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBl
ID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBSVENQZWVyQ29ubmVjdGlvbkVycm9yQ2FsbGJhY2su
aDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNEE5NzU1MzYxODU4RUQ5QjAwQkQ2RDE1
IC8qIFJUQ1BlZXJDb25uZWN0aW9uRXJyb3JDYWxsYmFjay5pZGwgKi8gPSB7aXNhID0gUEJYRmls
ZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSB0ZXh0OyBw
YXRoID0gUlRDUGVlckNvbm5lY3Rpb25FcnJvckNhbGxiYWNrLmlkbDsgc291cmNlVHJlZSA9ICI8
Z3JvdXA+IjsgfTsKIAkJNEE5Q0M4MTUxNkJCOUFDNjAwRUM2NDVBIC8qIENTU0RlZmF1bHRTdHls
ZVNoZWV0cy5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0g
NDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBDU1NEZWZh
dWx0U3R5bGVTaGVldHMuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQk0QTlDQzgx
NjE2QkI5QUM2MDBFQzY0NUEgLyogQ1NTRGVmYXVsdFN0eWxlU2hlZXRzLmggKi8gPSB7aXNhID0g
UEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBz
b3VyY2Vjb2RlLmMuaDsgcGF0aCA9IENTU0RlZmF1bHRTdHlsZVNoZWV0cy5oOyBzb3VyY2VUcmVl
ID0gIjxncm91cD4iOyB9OwogCQk0QTlDQzgxRTE2QkY5QkI0MDBFQzY0NUEgLyogSW5zcGVjdG9y
Q1NTT01XcmFwcGVycy5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29k
aW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBJ
bnNwZWN0b3JDU1NPTVdyYXBwZXJzLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKQEAg
LTEzNjY5LDYgKzEzNjY4LDggQEAKIAkJMDcyMjFCNDYxN0NFQzMyNzAwODQ4RTUxIC8qIG1lZGlh
c3RyZWFtICovID0gewogCQkJaXNhID0gUEJYR3JvdXA7CiAJCQljaGlsZHJlbiA9ICgKKwkJCQk0
QTk3NTUzNTE4NThFRDlCMDBCRDZEMTUgLyogUlRDUGVlckNvbm5lY3Rpb25FcnJvckNhbGxiYWNr
LmggKi8sCisJCQkJNEE5NzU1MzYxODU4RUQ5QjAwQkQ2RDE1IC8qIFJUQ1BlZXJDb25uZWN0aW9u
RXJyb3JDYWxsYmFjay5pZGwgKi8sCiAJCQkJMDc3OUJGMEExODQ1MzE2ODAwMEI2QUU3IC8qIEhU
TUxNZWRpYUVsZW1lbnRNZWRpYVN0cmVhbS5jcHAgKi8sCiAJCQkJMDc3OUJGMEIxODQ1MzE2ODAw
MEI2QUU3IC8qIEhUTUxNZWRpYUVsZW1lbnRNZWRpYVN0cmVhbS5oICovLAogCQkJCTA3NzlCRjBD
MTg0NTMxNjgwMDBCNkFFNyAvKiBIVE1MTWVkaWFFbGVtZW50TWVkaWFTdHJlYW0uaWRsICovLApA
QCAtMTM3NDIsOCArMTM3NDMsNiBAQAogCQkJCTA3MjIxQjZDMTdDRUMzMjcwMDg0OEU1MSAvKiBS
VENEVE1GVG9uZUNoYW5nZUV2ZW50LmNwcCAqLywKIAkJCQkwNzIyMUI2RDE3Q0VDMzI3MDA4NDhF
NTEgLyogUlRDRFRNRlRvbmVDaGFuZ2VFdmVudC5oICovLAogCQkJCTA3MjIxQjZFMTdDRUMzMjcw
MDg0OEU1MSAvKiBSVENEVE1GVG9uZUNoYW5nZUV2ZW50LmlkbCAqLywKLQkJCQkwNzIyMUI2RjE3
Q0VDMzI3MDA4NDhFNTEgLyogUlRDRXJyb3JDYWxsYmFjay5oICovLAotCQkJCTA3MjIxQjcwMTdD
RUMzMjcwMDg0OEU1MSAvKiBSVENFcnJvckNhbGxiYWNrLmlkbCAqLywKIAkJCQkwNzIyMUI3MTE3
Q0VDMzI3MDA4NDhFNTEgLyogUlRDSWNlQ2FuZGlkYXRlLmNwcCAqLywKIAkJCQkwNzIyMUI3MjE3
Q0VDMzI3MDA4NDhFNTEgLyogUlRDSWNlQ2FuZGlkYXRlLmggKi8sCiAJCQkJMDcyMjFCNzMxN0NF
QzMyNzAwODQ4RTUxIC8qIFJUQ0ljZUNhbmRpZGF0ZS5pZGwgKi8sCkBAIC0yMzg1OCw3ICsyMzg1
Nyw2IEBACiAJCQkJQjJGQTNEOTMwQUI3NUE2RjAwMEU1QUM0IC8qIEpTU1ZHRkVUaWxlRWxlbWVu
dC5oIGluIEhlYWRlcnMgKi8sCiAJCQkJQjJGQTNEOTUwQUI3NUE2RjAwMEU1QUM0IC8qIEpTU1ZH
RkVUdXJidWxlbmNlRWxlbWVudC5oIGluIEhlYWRlcnMgKi8sCiAJCQkJQjJGQTNEOTcwQUI3NUE2
RjAwMEU1QUM0IC8qIEpTU1ZHRmlsdGVyRWxlbWVudC5oIGluIEhlYWRlcnMgKi8sCi0JCQkJMDc4
RTA5MjIxN0QxNEQxQzAwNDIwQUExIC8qIFJUQ0Vycm9yQ2FsbGJhY2suaCBpbiBIZWFkZXJzICov
LAogCQkJCUIyN0IyODI2MENFRjBDMDcwMEQzOUQ1NCAvKiBKU1NWR0ZvbnRFbGVtZW50LmggaW4g
SGVhZGVycyAqLywKIAkJCQlBODNCNzkwNTBDQ0FGRjE1MDAwQjA4MjUgLyogSlNTVkdGb250RmFj
ZUVsZW1lbnQuaCBpbiBIZWFkZXJzICovLAogCQkJCUE4M0I3OTAwMENDQUZGMTUwMDBCMDgyNSAv
KiBKU1NWR0ZvbnRGYWNlRm9ybWF0RWxlbWVudC5oIGluIEhlYWRlcnMgKi8sCmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9tZWRpYXN0cmVhbS9SVENQZWVyQ29ubmVjdGlvbkhh
bmRsZXIuY3BwIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbWVkaWFzdHJlYW0vUlRDUGVlckNv
bm5lY3Rpb25IYW5kbGVyLmNwcAppbmRleCA1MmI4NmUxN2YyNDVkMzZiNTZiNTlkOGQzM2NjOTMx
N2NhMjc5YWFkLi5mNWEzNmEzYmU0Nzg3MmUwZWMwODNjZjJkMGZhZDcwYThiMDFlY2FlIDEwMDY0
NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9tZWRpYXN0cmVhbS9SVENQZWVyQ29ubmVj
dGlvbkhhbmRsZXIuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL21lZGlhc3RyZWFt
L1JUQ1BlZXJDb25uZWN0aW9uSGFuZGxlci5jcHAKQEAgLTEsNSArMSw2IEBACiAvKgogICogQ29w
eXJpZ2h0IChDKSAyMDEyIEdvb2dsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKiBDb3B5
cmlnaHQgKEMpIDIwMTMgTm9raWEgQ29ycG9yYXRpb24gYW5kL29yIGl0cyBzdWJzaWRpYXJ5KC1p
ZXMpLgogICoKICAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkg
Zm9ybXMsIHdpdGggb3Igd2l0aG91dAogICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHBy
b3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zIGFyZQpAQCAtMzQsNiArMzUsOCBA
QAogCiAjaW5jbHVkZSAiUlRDUGVlckNvbm5lY3Rpb25IYW5kbGVyLmgiCiAKKyNpbmNsdWRlIDx3
dGYvTmV2ZXJEZXN0cm95ZWQuaD4KKwogbmFtZXNwYWNlIFdlYkNvcmUgewogY2xhc3MgUlRDUGVl
ckNvbm5lY3Rpb25IYW5kbGVyQ2xpZW50OwogCkBAIC00NCw2ICs0NywzMCBAQCBzdGF0aWMgc3Rk
Ojp1bmlxdWVfcHRyPFJUQ1BlZXJDb25uZWN0aW9uSGFuZGxlcj4gY3JlYXRlSGFuZGxlcihSVENQ
ZWVyQ29ubmVjdGlvbgogCiBDcmVhdGVQZWVyQ29ubmVjdGlvbkhhbmRsZXIgUlRDUGVlckNvbm5l
Y3Rpb25IYW5kbGVyOjpjcmVhdGUgPSBjcmVhdGVIYW5kbGVyOwogCitjb25zdCBBdG9taWNTdHJp
bmcmIFJUQ1BlZXJDb25uZWN0aW9uSGFuZGxlcjo6aW5jb21wYXRpYmxlQ29uc3RyYWludHNFcnJv
ck5hbWUoKQoreworICAgIHN0YXRpYyBOZXZlckRlc3Ryb3llZDxBdG9taWNTdHJpbmc+IGluY29t
cGF0aWJsZUNvbnN0cmFpbnRzKCJJbmNvbXBhdGlibGVDb25zdHJhaW50c0Vycm9yIiwgQXRvbWlj
U3RyaW5nOjpDb25zdHJ1Y3RGcm9tTGl0ZXJhbCk7CisgICAgcmV0dXJuIGluY29tcGF0aWJsZUNv
bnN0cmFpbnRzOworfQorCitjb25zdCBBdG9taWNTdHJpbmcmIFJUQ1BlZXJDb25uZWN0aW9uSGFu
ZGxlcjo6aW52YWxpZFNlc3Npb25EZXNjcmlwdGlvbkVycm9yTmFtZSgpCit7CisgICAgc3RhdGlj
IE5ldmVyRGVzdHJveWVkPEF0b21pY1N0cmluZz4gaW52YWxpZFNlc3Npb25EZXNjcmlwdGlvbigi
SW52YWxpZFNlc3Npb25EZXNjcmlwdGlvbkVycm9yIiwgQXRvbWljU3RyaW5nOjpDb25zdHJ1Y3RG
cm9tTGl0ZXJhbCk7CisgICAgcmV0dXJuIGludmFsaWRTZXNzaW9uRGVzY3JpcHRpb247Cit9CisK
K2NvbnN0IEF0b21pY1N0cmluZyYgUlRDUGVlckNvbm5lY3Rpb25IYW5kbGVyOjppbmNvbXBhdGli
bGVTZXNzaW9uRGVzY3JpcHRpb25FcnJvck5hbWUoKQoreworICAgIHN0YXRpYyBOZXZlckRlc3Ry
b3llZDxBdG9taWNTdHJpbmc+IGluY29tcGF0aWJsZVNlc3Npb25EZXNjcmlwdGlvbigiSW5jb21w
YXRpYmxlU2Vzc2lvbkRlc2NyaXB0aW9uRXJyb3IiLCBBdG9taWNTdHJpbmc6OkNvbnN0cnVjdEZy
b21MaXRlcmFsKTsKKyAgICByZXR1cm4gaW5jb21wYXRpYmxlU2Vzc2lvbkRlc2NyaXB0aW9uOwor
fQorCitjb25zdCBBdG9taWNTdHJpbmcmIFJUQ1BlZXJDb25uZWN0aW9uSGFuZGxlcjo6aW50ZXJu
YWxFcnJvck5hbWUoKQoreworICAgIHN0YXRpYyBOZXZlckRlc3Ryb3llZDxBdG9taWNTdHJpbmc+
IGludGVybmFsKCJpbnRlcm5hbEVycm9yIiwgQXRvbWljU3RyaW5nOjpDb25zdHJ1Y3RGcm9tTGl0
ZXJhbCk7CisgICAgcmV0dXJuIGludGVybmFsOworfQorCiB9IC8vIG5hbWVzcGFjZSBXZWJDb3Jl
CiAKICNlbmRpZiAvLyBFTkFCTEUoTUVESUFfU1RSRUFNKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dl
YkNvcmUvcGxhdGZvcm0vbWVkaWFzdHJlYW0vUlRDUGVlckNvbm5lY3Rpb25IYW5kbGVyLmggYi9T
b3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9tZWRpYXN0cmVhbS9SVENQZWVyQ29ubmVjdGlvbkhhbmRs
ZXIuaAppbmRleCAwMTYwNWE4YjM3M2Y4M2I5ZjRkOTU5ZWQ2ZTc4M2VlOWMyZDk4NTgwLi45NTRh
Y2I5YTMyNWRlYTVlY2RjMmI0NjJkZDIwMDc3NTVhZjZmZjc2IDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V2ViQ29yZS9wbGF0Zm9ybS9tZWRpYXN0cmVhbS9SVENQZWVyQ29ubmVjdGlvbkhhbmRsZXIuaAor
KysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9tZWRpYXN0cmVhbS9SVENQZWVyQ29ubmVjdGlv
bkhhbmRsZXIuaApAQCAtMSw1ICsxLDYgQEAKIC8qCiAgKiBDb3B5cmlnaHQgKEMpIDIwMTIgR29v
Z2xlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAqIENvcHlyaWdodCAoQykgMjAxMyBOb2tp
YSBDb3Jwb3JhdGlvbiBhbmQvb3IgaXRzIHN1YnNpZGlhcnkoLWllcykuCiAgKgogICogUmVkaXN0
cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRo
b3V0CiAgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9s
bG93aW5nIGNvbmRpdGlvbnMKQEAgLTc0LDYgKzc1LDExIEBAIHB1YmxpYzoKICAgICBzdGF0aWMg
Q3JlYXRlUGVlckNvbm5lY3Rpb25IYW5kbGVyIGNyZWF0ZTsKICAgICB2aXJ0dWFsIH5SVENQZWVy
Q29ubmVjdGlvbkhhbmRsZXIoKSB7IH0KIAorICAgIHN0YXRpYyBjb25zdCBBdG9taWNTdHJpbmcm
IGluY29tcGF0aWJsZUNvbnN0cmFpbnRzRXJyb3JOYW1lKCk7CisgICAgc3RhdGljIGNvbnN0IEF0
b21pY1N0cmluZyYgaW52YWxpZFNlc3Npb25EZXNjcmlwdGlvbkVycm9yTmFtZSgpOworICAgIHN0
YXRpYyBjb25zdCBBdG9taWNTdHJpbmcmIGluY29tcGF0aWJsZVNlc3Npb25EZXNjcmlwdGlvbkVy
cm9yTmFtZSgpOworICAgIHN0YXRpYyBjb25zdCBBdG9taWNTdHJpbmcmIGludGVybmFsRXJyb3JO
YW1lKCk7CisKICAgICB2aXJ0dWFsIGJvb2wgaW5pdGlhbGl6ZShQYXNzUmVmUHRyPFJUQ0NvbmZp
Z3VyYXRpb24+LCBQYXNzUmVmUHRyPE1lZGlhQ29uc3RyYWludHM+KSA9IDA7CiAKICAgICB2aXJ0
dWFsIHZvaWQgY3JlYXRlT2ZmZXIoUGFzc1JlZlB0cjxSVENTZXNzaW9uRGVzY3JpcHRpb25SZXF1
ZXN0PiwgUGFzc1JlZlB0cjxNZWRpYUNvbnN0cmFpbnRzPikgPSAwOwpkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYkNvcmUvcGxhdGZvcm0vbW9jay9SVENOb3RpZmllcnNNb2NrLmNwcCBiL1NvdXJjZS9X
ZWJDb3JlL3BsYXRmb3JtL21vY2svUlRDTm90aWZpZXJzTW9jay5jcHAKaW5kZXggMDIzZjQ2MzQ5
ZGQ3NGVmMjBmNTMwNTNkYzZkNzgxNDM4Yjk1YTJiZC4uMGM4MDY1OTZjN2JjMDE2NjY3ODU4MmNl
M2Q1ZjQwN2MxMDA3MjIwYiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbW9j
ay9SVENOb3RpZmllcnNNb2NrLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9tb2Nr
L1JUQ05vdGlmaWVyc01vY2suY3BwCkBAIC0yOSw2ICsyOSw3IEBACiAKICNpbmNsdWRlICJSVENO
b3RpZmllcnNNb2NrLmgiCiAKKyNpbmNsdWRlICJET01FcnJvci5oIgogI2luY2x1ZGUgIlJUQ0Rh
dGFDaGFubmVsSGFuZGxlck1vY2suaCIKICNpbmNsdWRlICJSVENTZXNzaW9uRGVzY3JpcHRpb25E
ZXNjcmlwdG9yLmgiCiAjaW5jbHVkZSAiUlRDU2Vzc2lvbkRlc2NyaXB0aW9uUmVxdWVzdC5oIgpA
QCAtMzYsOSArMzcsMTAgQEAKIAogbmFtZXNwYWNlIFdlYkNvcmUgewogCi1TZXNzaW9uUmVxdWVz
dE5vdGlmaWVyOjpTZXNzaW9uUmVxdWVzdE5vdGlmaWVyKFBhc3NSZWZQdHI8UlRDU2Vzc2lvbkRl
c2NyaXB0aW9uUmVxdWVzdD4gcmVxdWVzdCwgUGFzc1JlZlB0cjxSVENTZXNzaW9uRGVzY3JpcHRp
b25EZXNjcmlwdG9yPiBkZXNjcmlwdG9yKQorU2Vzc2lvblJlcXVlc3ROb3RpZmllcjo6U2Vzc2lv
blJlcXVlc3ROb3RpZmllcihQYXNzUmVmUHRyPFJUQ1Nlc3Npb25EZXNjcmlwdGlvblJlcXVlc3Q+
IHJlcXVlc3QsIFBhc3NSZWZQdHI8UlRDU2Vzc2lvbkRlc2NyaXB0aW9uRGVzY3JpcHRvcj4gZGVz
Y3JpcHRvciwgY29uc3QgU3RyaW5nJiBlcnJvck5hbWUpCiAgICAgOiBtX3JlcXVlc3QocmVxdWVz
dCkKICAgICAsIG1fZGVzY3JpcHRvcihkZXNjcmlwdG9yKQorICAgICwgbV9lcnJvck5hbWUoZXJy
b3JOYW1lKQogewogfQogCkBAIC00NywxMiArNDksMTMgQEAgdm9pZCBTZXNzaW9uUmVxdWVzdE5v
dGlmaWVyOjpmaXJlKCkKICAgICBpZiAobV9kZXNjcmlwdG9yKQogICAgICAgICBtX3JlcXVlc3Qt
PnJlcXVlc3RTdWNjZWVkZWQobV9kZXNjcmlwdG9yKTsKICAgICBlbHNlCi0gICAgICAgIG1fcmVx
dWVzdC0+cmVxdWVzdEZhaWxlZCgiVEVTVF9FUlJPUiIpOworICAgICAgICBtX3JlcXVlc3QtPnJl
cXVlc3RGYWlsZWQobV9lcnJvck5hbWUpOwogfQogCi1Wb2lkUmVxdWVzdE5vdGlmaWVyOjpWb2lk
UmVxdWVzdE5vdGlmaWVyKFBhc3NSZWZQdHI8UlRDVm9pZFJlcXVlc3Q+IHJlcXVlc3QsIGJvb2wg
c3VjY2VzcykKK1ZvaWRSZXF1ZXN0Tm90aWZpZXI6OlZvaWRSZXF1ZXN0Tm90aWZpZXIoUGFzc1Jl
ZlB0cjxSVENWb2lkUmVxdWVzdD4gcmVxdWVzdCwgYm9vbCBzdWNjZXNzLCBjb25zdCBTdHJpbmcm
IGVycm9yTmFtZSkKICAgICA6IG1fcmVxdWVzdChyZXF1ZXN0KQogICAgICwgbV9zdWNjZXNzKHN1
Y2Nlc3MpCisgICAgLCBtX2Vycm9yTmFtZShlcnJvck5hbWUpCiB7CiB9CiAKQEAgLTYxLDcgKzY0
LDcgQEAgdm9pZCBWb2lkUmVxdWVzdE5vdGlmaWVyOjpmaXJlKCkKICAgICBpZiAobV9zdWNjZXNz
KQogICAgICAgICBtX3JlcXVlc3QtPnJlcXVlc3RTdWNjZWVkZWQoKTsKICAgICBlbHNlCi0gICAg
ICAgIG1fcmVxdWVzdC0+cmVxdWVzdEZhaWxlZCgiVEVTVF9FUlJPUiIpOworICAgICAgICBtX3Jl
cXVlc3QtPnJlcXVlc3RGYWlsZWQobV9lcnJvck5hbWUpOwogfQogCiBJY2VDb25uZWN0aW9uTm90
aWZpZXI6OkljZUNvbm5lY3Rpb25Ob3RpZmllcihSVENQZWVyQ29ubmVjdGlvbkhhbmRsZXJDbGll
bnQqIGNsaWVudCwgUlRDUGVlckNvbm5lY3Rpb25IYW5kbGVyQ2xpZW50OjpJY2VDb25uZWN0aW9u
U3RhdGUgY29ubmVjdGlvblN0YXRlLCBSVENQZWVyQ29ubmVjdGlvbkhhbmRsZXJDbGllbnQ6Oklj
ZUdhdGhlcmluZ1N0YXRlIGdhdGhlcmluZ1N0YXRlKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNv
cmUvcGxhdGZvcm0vbW9jay9SVENOb3RpZmllcnNNb2NrLmggYi9Tb3VyY2UvV2ViQ29yZS9wbGF0
Zm9ybS9tb2NrL1JUQ05vdGlmaWVyc01vY2suaAppbmRleCA5NTk3YWZjMTllNjM2ZTQ5MTFiZGFk
NTdiZmQwOTU1NmFhZjc4Nzg3Li5lZTA1YzI0YmVkZDExZGM4NDA4OGYwYTBiMGNhMWZjMmZiNGI2
YzM4IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9tb2NrL1JUQ05vdGlmaWVy
c01vY2suaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9tb2NrL1JUQ05vdGlmaWVyc01v
Y2suaApAQCAtMzMsNiArMzMsNyBAQAogI2luY2x1ZGUgIlRpbWVyRXZlbnRCYXNlZE1vY2suaCIK
ICNpbmNsdWRlIDx3dGYvUGFzc1JlZlB0ci5oPgogI2luY2x1ZGUgPHd0Zi9SZWZQdHIuaD4KKyNp
bmNsdWRlIDx3dGYvdGV4dC9XVEZTdHJpbmcuaD4KIAogbmFtZXNwYWNlIFdlYkNvcmUgewogCkBA
IC00MiwyNCArNDMsMjYgQEAgY2xhc3MgUlRDVm9pZFJlcXVlc3Q7CiAKIGNsYXNzIFNlc3Npb25S
ZXF1ZXN0Tm90aWZpZXIgOiBwdWJsaWMgTW9ja05vdGlmaWVyIHsKIHB1YmxpYzoKLSAgICBTZXNz
aW9uUmVxdWVzdE5vdGlmaWVyKFBhc3NSZWZQdHI8UlRDU2Vzc2lvbkRlc2NyaXB0aW9uUmVxdWVz
dD4sIFBhc3NSZWZQdHI8UlRDU2Vzc2lvbkRlc2NyaXB0aW9uRGVzY3JpcHRvcj4pOworICAgIFNl
c3Npb25SZXF1ZXN0Tm90aWZpZXIoUGFzc1JlZlB0cjxSVENTZXNzaW9uRGVzY3JpcHRpb25SZXF1
ZXN0PiwgUGFzc1JlZlB0cjxSVENTZXNzaW9uRGVzY3JpcHRpb25EZXNjcmlwdG9yPiwgY29uc3Qg
U3RyaW5nJiA9IGVtcHR5U3RyaW5nKCkpOwogCiAgICAgdm9pZCBmaXJlKCkgT1ZFUlJJREU7CiAK
IHByaXZhdGU6CiAgICAgUmVmUHRyPFJUQ1Nlc3Npb25EZXNjcmlwdGlvblJlcXVlc3Q+IG1fcmVx
dWVzdDsKICAgICBSZWZQdHI8UlRDU2Vzc2lvbkRlc2NyaXB0aW9uRGVzY3JpcHRvcj4gbV9kZXNj
cmlwdG9yOworICAgIFN0cmluZyBtX2Vycm9yTmFtZTsKIH07CiAKIGNsYXNzIFZvaWRSZXF1ZXN0
Tm90aWZpZXIgOiBwdWJsaWMgTW9ja05vdGlmaWVyIHsKIHB1YmxpYzoKLSAgICBWb2lkUmVxdWVz
dE5vdGlmaWVyKFBhc3NSZWZQdHI8UlRDVm9pZFJlcXVlc3Q+LCBib29sKTsKKyAgICBWb2lkUmVx
dWVzdE5vdGlmaWVyKFBhc3NSZWZQdHI8UlRDVm9pZFJlcXVlc3Q+LCBib29sLCBjb25zdCBTdHJp
bmcmID0gZW1wdHlTdHJpbmcoKSk7CiAKICAgICB2b2lkIGZpcmUoKSBPVkVSUklERTsKIAogcHJp
dmF0ZToKICAgICBSZWZQdHI8UlRDVm9pZFJlcXVlc3Q+IG1fcmVxdWVzdDsKICAgICBib29sIG1f
c3VjY2VzczsKKyAgICBTdHJpbmcgbV9lcnJvck5hbWU7CiB9OwogCiBjbGFzcyBJY2VDb25uZWN0
aW9uTm90aWZpZXIgOiBwdWJsaWMgTW9ja05vdGlmaWVyIHsKZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJDb3JlL3BsYXRmb3JtL21vY2svUlRDUGVlckNvbm5lY3Rpb25IYW5kbGVyTW9jay5jcHAgYi9T
b3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9tb2NrL1JUQ1BlZXJDb25uZWN0aW9uSGFuZGxlck1vY2su
Y3BwCmluZGV4IGQ1YTJhNzhlZDQ4YzhlMGM3M2M2MWVjNjM3ZDY4MjY5YjgyODE0NjQuLjZjMmQ1
NWI2ZmNjNjI5OTg2NWYwOGZhYmRiNDFlYTJhMmMxNjY5YzQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJDb3JlL3BsYXRmb3JtL21vY2svUlRDUGVlckNvbm5lY3Rpb25IYW5kbGVyTW9jay5jcHAKKysr
IGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbW9jay9SVENQZWVyQ29ubmVjdGlvbkhhbmRsZXJN
b2NrLmNwcApAQCAtNjcsNyArNjcsNyBAQCB2b2lkIFJUQ1BlZXJDb25uZWN0aW9uSGFuZGxlck1v
Y2s6OmNyZWF0ZU9mZmVyKFBhc3NSZWZQdHI8UlRDU2Vzc2lvbkRlc2NyaXB0aW9uUgogICAgIFN0
cmluZyBzdWNjZWVkVmFsdWU7CiAgICAgUmVmUHRyPFNlc3Npb25SZXF1ZXN0Tm90aWZpZXI+IG5v
dGlmaWVyOwogICAgIGlmIChjb25zdHJhaW50cy0+Z2V0TWFuZGF0b3J5Q29uc3RyYWludFZhbHVl
KCJzdWNjZWVkIiwgc3VjY2VlZFZhbHVlKSAmJiBzdWNjZWVkVmFsdWUgPT0gImZhbHNlIikKLSAg
ICAgICAgbm90aWZpZXIgPSBhZG9wdFJlZihuZXcgU2Vzc2lvblJlcXVlc3ROb3RpZmllcihyZXF1
ZXN0LCAwKSk7CisgICAgICAgIG5vdGlmaWVyID0gYWRvcHRSZWYobmV3IFNlc3Npb25SZXF1ZXN0
Tm90aWZpZXIocmVxdWVzdCwgMCwgUlRDUGVlckNvbm5lY3Rpb25IYW5kbGVyOjppbmNvbXBhdGli
bGVDb25zdHJhaW50c0Vycm9yTmFtZSgpKSk7CiAgICAgZWxzZQogICAgICAgICBub3RpZmllciA9
IGFkb3B0UmVmKG5ldyBTZXNzaW9uUmVxdWVzdE5vdGlmaWVyKHJlcXVlc3QsIFJUQ1Nlc3Npb25E
ZXNjcmlwdGlvbkRlc2NyaXB0b3I6OmNyZWF0ZSgib2ZmZXIiLCAibG9jYWwiKSkpOwogCkBAIC04
MCw3ICs4MCw3IEBAIHZvaWQgUlRDUGVlckNvbm5lY3Rpb25IYW5kbGVyTW9jazo6Y3JlYXRlQW5z
d2VyKFBhc3NSZWZQdHI8UlRDU2Vzc2lvbkRlc2NyaXB0aW9uCiAgICAgLy8gV2UgY2FuIG9ubHkg
Y3JlYXRlIGFuIGFuc3dlciBpZiB3ZSBoYXZlIGFscmVhZHkgaGFkIGFuIG9mZmVyIGFuZCB0aGUg
cmVtb3RlIHNlc3Npb24gZGVzY3JpcHRpb24gaXMgc3RvcmVkLgogICAgIFN0cmluZyBzdWNjZWVk
VmFsdWU7CiAgICAgaWYgKGNvbnN0cmFpbnRzLT5nZXRNYW5kYXRvcnlDb25zdHJhaW50VmFsdWUo
InN1Y2NlZWQiLCBzdWNjZWVkVmFsdWUpICYmIHN1Y2NlZWRWYWx1ZSA9PSAiZmFsc2UiKQotICAg
ICAgICBub3RpZmllciA9IGFkb3B0UmVmKG5ldyBTZXNzaW9uUmVxdWVzdE5vdGlmaWVyKHJlcXVl
c3QsIDApKTsKKyAgICAgICAgbm90aWZpZXIgPSBhZG9wdFJlZihuZXcgU2Vzc2lvblJlcXVlc3RO
b3RpZmllcihyZXF1ZXN0LCAwLCBSVENQZWVyQ29ubmVjdGlvbkhhbmRsZXI6OmluY29tcGF0aWJs
ZUNvbnN0cmFpbnRzRXJyb3JOYW1lKCkpKTsKICAgICBlbHNlCiAgICAgICAgIG5vdGlmaWVyID0g
YWRvcHRSZWYobmV3IFNlc3Npb25SZXF1ZXN0Tm90aWZpZXIocmVxdWVzdCwgUlRDU2Vzc2lvbkRl
c2NyaXB0aW9uRGVzY3JpcHRvcjo6Y3JlYXRlKCJhbnN3ZXIiLCAibG9jYWwiKSkpOwogCmRpZmYg
LS1naXQgYS9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cgYi9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKaW5k
ZXggMGE5ZGQ2YmFjN2EwNWYzY2U0YWVmNTg0NzNmOWNhY2ExOTRkYjcwNS4uYzUyNDBiNmYyZWY4
OTA2MWMzZWVmZTZkN2I1YTA4MDFlMzJmYWEwMiAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvQ2hh
bmdlTG9nCisrKyBiL0xheW91dFRlc3RzL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE4IEBACisyMDEz
LTEyLTExICBUaGlhZ28gZGUgQmFycm9zIExhY2VyZGEgIDx0aGlhZ28ubGFjZXJkYUBvcGVuYm9z
c2Eub3JnPgorCisgICAgICAgIEFkZGluZyBSVENQZWVyQ29ubmVjdGlvbkVycm9yQ2FsbGJhY2sK
KyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTEyNTU3NAor
CisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIEFjY29yZGlu
ZyB0byB0aGUgc3BlYyB0aGVyZSBzaG91bGQgYmUgYSBSVENQZWVyQ29ubmVjdGlvbkVycm9yQ2Fs
bGJhY2sgZnVuY3Rpb24gdHlwZSBmb3IgY3JlYXRlT2ZmZXIvQW5zd2VyLAorICAgICAgICBzZXRM
b2NhbC9SZW1vdGVEZXNjcmlwdGlvbiBhbmQgdXBkYXRlSWNlIGZ1bmN0aW9uIGNhbGxzLiBUaGlz
IGNhbGxiYWNrIG11c3QgaGFuZGxlIGEgRE9NRXJyb3Igb2JqZWN0LgorCisgICAgICAgICogZmFz
dC9tZWRpYXN0cmVhbS9SVENQZWVyQ29ubmVjdGlvbi1jcmVhdGVBbnN3ZXItZXhwZWN0ZWQudHh0
OgorICAgICAgICAqIGZhc3QvbWVkaWFzdHJlYW0vUlRDUGVlckNvbm5lY3Rpb24tY3JlYXRlQW5z
d2VyLmh0bWw6CisgICAgICAgICogZmFzdC9tZWRpYXN0cmVhbS9SVENQZWVyQ29ubmVjdGlvbi1j
cmVhdGVPZmZlci1leHBlY3RlZC50eHQ6CisgICAgICAgICogZmFzdC9tZWRpYXN0cmVhbS9SVENQ
ZWVyQ29ubmVjdGlvbi1jcmVhdGVPZmZlci5odG1sOgorCiAyMDEzLTEyLTExICBKYXZpZXIgRmVy
bmFuZGV6ICA8amZlcm5hbmRlekBpZ2FsaWEuY29tPgogCiAgICAgICAgIEFyaXRobWV0aWMgb3Zl
cmZsb3cgd2hlbiBjb21wdXRpbmcgbWF4LWhlaWdodCBDU1MgcHJvcGVydHkgd2l0aCBzdWJwaXhl
bCBsYXlvdXQKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3QvbWVkaWFzdHJlYW0vUlRDUGVl
ckNvbm5lY3Rpb24tY3JlYXRlQW5zd2VyLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2Zhc3Qv
bWVkaWFzdHJlYW0vUlRDUGVlckNvbm5lY3Rpb24tY3JlYXRlQW5zd2VyLWV4cGVjdGVkLnR4dApp
bmRleCBlOGNhNjQ2MWUwYmYxNjBlZmNhNGI0OTk3MWMwM2QzN2QwMTdlNzEzLi44ZTAxYzkyOWU1
NGYxNmY2M2EwMGYwMjc1YmYwNTRkNzEwYWNiYmJhIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9m
YXN0L21lZGlhc3RyZWFtL1JUQ1BlZXJDb25uZWN0aW9uLWNyZWF0ZUFuc3dlci1leHBlY3RlZC50
eHQKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC9tZWRpYXN0cmVhbS9SVENQZWVyQ29ubmVjdGlvbi1j
cmVhdGVBbnN3ZXItZXhwZWN0ZWQudHh0CkBAIC05LDYgKzksNyBAQCBQQVNTIHBjLnNldFJlbW90
ZURlc2NyaXB0aW9uKHNlc3Npb25EZXNjcmlwdGlvbiwgc2V0RGVzY3JpcHRpb25TdWNjZWVkZWQs
IHNldERlcwogUEFTUyBzZXRSZW1vdGVEZXNjcmlwdGlvbiBzdWNjZWVkZWQuCiBQQVNTIHBjLmNy
ZWF0ZUFuc3dlcihyZXF1ZXN0U3VjY2VlZGVkMiwgcmVxdWVzdEZhaWxlZDIsIHttYW5kYXRvcnk6
eyJzdWNjZWVkIjpmYWxzZX19KTsgZGlkIG5vdCB0aHJvdyBleGNlcHRpb24uCiBQQVNTIGNyZWF0
ZUFuc3dlciByZXF1ZXN0IGZhaWxlZC4KK1BBU1MgZXJyb3JSZWFzb24ubmFtZSBpcyAiSW5jb21w
YXRpYmxlQ29uc3RyYWludHNFcnJvciIKIFBBU1MgcGMuY3JlYXRlQW5zd2VyKHJlcXVlc3RTdWNj
ZWVkZWQzLCByZXF1ZXN0RmFpbGVkMyk7IGRpZCBub3QgdGhyb3cgZXhjZXB0aW9uLgogUEFTUyBj
cmVhdGVBbnN3ZXIgcmVxdWVzdCBzdWNjZWVkZWQuCiBQQVNTIHNlc3Npb25EZXNjcmlwdGlvbi50
eXBlIGlzICJhbnN3ZXIiCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L21lZGlhc3RyZWFt
L1JUQ1BlZXJDb25uZWN0aW9uLWNyZWF0ZUFuc3dlci5odG1sIGIvTGF5b3V0VGVzdHMvZmFzdC9t
ZWRpYXN0cmVhbS9SVENQZWVyQ29ubmVjdGlvbi1jcmVhdGVBbnN3ZXIuaHRtbAppbmRleCBkYjM2
MTNiZDIxNjI5NjlhNTc4OWNiNmJkNGFlZjM4MDIzMGE4ZTBmLi45M2Y0OTVkNTEzMTE1NzljZWZl
ZGEwNmE5ZjYxODVjOGUwOGFhNjcwIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9mYXN0L21lZGlh
c3RyZWFtL1JUQ1BlZXJDb25uZWN0aW9uLWNyZWF0ZUFuc3dlci5odG1sCisrKyBiL0xheW91dFRl
c3RzL2Zhc3QvbWVkaWFzdHJlYW0vUlRDUGVlckNvbm5lY3Rpb24tY3JlYXRlQW5zd2VyLmh0bWwK
QEAgLTQwLDYgKzQwLDkgQEAKICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICB0ZXN0UGFz
c2VkKCdjcmVhdGVBbnN3ZXIgcmVxdWVzdCBmYWlsZWQuJyk7CiAKKyAgICAgICAgICAgICAgICBl
cnJvclJlYXNvbiA9IHJlYXNvbjsKKyAgICAgICAgICAgICAgICBzaG91bGRCZSgnZXJyb3JSZWFz
b24ubmFtZScsICciSW5jb21wYXRpYmxlQ29uc3RyYWludHNFcnJvciInKTsKKwogICAgICAgICAg
ICAgICAgIHNob3VsZE5vdFRocm93KCdwYy5jcmVhdGVBbnN3ZXIocmVxdWVzdFN1Y2NlZWRlZDMs
IHJlcXVlc3RGYWlsZWQzKTsnKTsKICAgICAgICAgICAgIH0KIApkaWZmIC0tZ2l0IGEvTGF5b3V0
VGVzdHMvZmFzdC9tZWRpYXN0cmVhbS9SVENQZWVyQ29ubmVjdGlvbi1jcmVhdGVPZmZlci1leHBl
Y3RlZC50eHQgYi9MYXlvdXRUZXN0cy9mYXN0L21lZGlhc3RyZWFtL1JUQ1BlZXJDb25uZWN0aW9u
LWNyZWF0ZU9mZmVyLWV4cGVjdGVkLnR4dAppbmRleCAxNDg2NzMwNWI5MTdiYWUxMzdkYmRhZTU4
MmRiNDRhM2IyZjRiMWQ3Li41NWFlZWQ4OWQ2YjZhODk1ZTg0NTE1MmU1MmRmNzRkZjc3MzI4OGJl
IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9mYXN0L21lZGlhc3RyZWFtL1JUQ1BlZXJDb25uZWN0
aW9uLWNyZWF0ZU9mZmVyLWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9mYXN0L21lZGlh
c3RyZWFtL1JUQ1BlZXJDb25uZWN0aW9uLWNyZWF0ZU9mZmVyLWV4cGVjdGVkLnR4dApAQCAtOCw3
ICs4LDcgQEAgUEFTUyBjcmVhdGVPZmZlciByZXF1ZXN0IHN1Y2NlZWRlZC4KIFBBU1Mgc2Vzc2lv
bkRlc2NyaXB0aW9uLnR5cGUgaXMgIm9mZmVyIgogUEFTUyBwYy5jcmVhdGVPZmZlcihyZXF1ZXN0
U3VjY2VlZGVkMiwgcmVxdWVzdEZhaWxlZDIsIHttYW5kYXRvcnk6eyJzdWNjZWVkIjpmYWxzZX19
KTsgZGlkIG5vdCB0aHJvdyBleGNlcHRpb24uCiBQQVNTIGNyZWF0ZU9mZmVyIHJlcXVlc3QgZmFp
bGVkLgotUEFTUyBlcnJvclJlYXNvbiBpcyAiVEVTVF9FUlJPUiIKK1BBU1MgZXJyb3JSZWFzb24u
bmFtZSBpcyAiSW5jb21wYXRpYmxlQ29uc3RyYWludHNFcnJvciIKIFBBU1MgcGMuY3JlYXRlT2Zm
ZXIocmVxdWVzdFN1Y2NlZWRlZDMsIHJlcXVlc3RGYWlsZWQxKTsgZGlkIG5vdCB0aHJvdyBleGNl
cHRpb24uCiBQQVNTIGNyZWF0ZU9mZmVyIHJlcXVlc3Qgc3VjY2VlZGVkLgogUEFTUyBzZXNzaW9u
RGVzY3JpcHRpb24udHlwZSBpcyAib2ZmZXIiCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0
L21lZGlhc3RyZWFtL1JUQ1BlZXJDb25uZWN0aW9uLWNyZWF0ZU9mZmVyLmh0bWwgYi9MYXlvdXRU
ZXN0cy9mYXN0L21lZGlhc3RyZWFtL1JUQ1BlZXJDb25uZWN0aW9uLWNyZWF0ZU9mZmVyLmh0bWwK
aW5kZXggMmQ2ZThlMDYxZDRkZmQxYWZlN2IxYTUxNjhkMDc0OTAxZGRiMjQ2OS4uZDZkNzczZWQw
OGJjNTljNWM2MDU4ZTkwZWFiNjU1NWU5Yjk1OGJjYiAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMv
ZmFzdC9tZWRpYXN0cmVhbS9SVENQZWVyQ29ubmVjdGlvbi1jcmVhdGVPZmZlci5odG1sCisrKyBi
L0xheW91dFRlc3RzL2Zhc3QvbWVkaWFzdHJlYW0vUlRDUGVlckNvbm5lY3Rpb24tY3JlYXRlT2Zm
ZXIuaHRtbApAQCAtMjMsNyArMjMsNyBAQAogICAgICAgICAgICAgICAgIHRlc3RQYXNzZWQoJ2Ny
ZWF0ZU9mZmVyIHJlcXVlc3QgZmFpbGVkLicpOwogCiAgICAgICAgICAgICAgICAgZXJyb3JSZWFz
b24gPSByZWFzb247Ci0gICAgICAgICAgICAgICAgc2hvdWxkQmUoJ2Vycm9yUmVhc29uJywgJyJU
RVNUX0VSUk9SIicpOworICAgICAgICAgICAgICAgIHNob3VsZEJlKCdlcnJvclJlYXNvbi5uYW1l
JywgJyJJbmNvbXBhdGlibGVDb25zdHJhaW50c0Vycm9yIicpOwogCiAgICAgICAgICAgICAgICAg
c2hvdWxkTm90VGhyb3coJ3BjLmNyZWF0ZU9mZmVyKHJlcXVlc3RTdWNjZWVkZWQzLCByZXF1ZXN0
RmFpbGVkMSk7Jyk7CiAgICAgICAgICAgICB9Cg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>219069</attachid>
            <date>2013-12-12 03:39:11 -0800</date>
            <delta_ts>2013-12-12 13:23:39 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-125574-20131212123903.patch</filename>
            <type>text/plain</type>
            <size>57981</size>
            <attacher name="Philippe Normand">pnormand</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTYwNDgxCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggNmIyYzJlZjE1MDYzMTAz
NWUwMjk4MmZmMzFiNzFkMDRmY2M0ODgxNS4uYzI2MThkMTE3NWE0MzJlYzZlODc4ODIzODhkN2Nk
YmY0YTk4MmFjYyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDU1IEBACisyMDEzLTEyLTEyICBUaGlh
Z28gZGUgQmFycm9zIExhY2VyZGEgIDx0aGlhZ28ubGFjZXJkYUBvcGVuYm9zc2Eub3JnPgorCisg
ICAgICAgIEFkZGluZyBSVENQZWVyQ29ubmVjdGlvbkVycm9yQ2FsbGJhY2sKKyAgICAgICAgaHR0
cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTEyNTU3NAorCisgICAgICAgIFJl
dmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIEFjY29yZGluZyB0byB0aGUgc3Bl
YyB0aGVyZSBzaG91bGQgYmUgYSBSVENQZWVyQ29ubmVjdGlvbkVycm9yQ2FsbGJhY2sgZnVuY3Rp
b24gdHlwZSBmb3IgY3JlYXRlT2ZmZXIvQW5zd2VyLAorICAgICAgICBzZXRMb2NhbC9SZW1vdGVE
ZXNjcmlwdGlvbiBhbmQgdXBkYXRlSWNlIGZ1bmN0aW9uIGNhbGxzLiBUaGlzIGNhbGxiYWNrIG11
c3QgaGFuZGxlIGEgRE9NRXJyb3Igb2JqZWN0LgorCisgICAgICAgIEV4aXN0aW5nIHRlc3RzIHdl
cmUgdXBkYXRlZC4KKworICAgICAgICAqIENNYWtlTGlzdHMudHh0OgorICAgICAgICAqIEdOVW1h
a2VmaWxlLmxpc3QuYW06CisgICAgICAgICogTW9kdWxlcy9tZWRpYXN0cmVhbS9SVENQZWVyQ29u
bmVjdGlvbi5jcHA6CisgICAgICAgIChXZWJDb3JlOjpSVENQZWVyQ29ubmVjdGlvbjo6Y3JlYXRl
T2ZmZXIpOgorICAgICAgICAoV2ViQ29yZTo6UlRDUGVlckNvbm5lY3Rpb246OmNyZWF0ZUFuc3dl
cik6CisgICAgICAgIChXZWJDb3JlOjpSVENQZWVyQ29ubmVjdGlvbjo6c2V0TG9jYWxEZXNjcmlw
dGlvbik6CisgICAgICAgIChXZWJDb3JlOjpSVENQZWVyQ29ubmVjdGlvbjo6c2V0UmVtb3RlRGVz
Y3JpcHRpb24pOgorICAgICAgICAoV2ViQ29yZTo6UlRDUGVlckNvbm5lY3Rpb246OmFkZEljZUNh
bmRpZGF0ZSk6CisgICAgICAgICogTW9kdWxlcy9tZWRpYXN0cmVhbS9SVENFcnJvckNhbGxiYWNr
Lmg6IFJlbW92ZWQuCisgICAgICAgICogTW9kdWxlcy9tZWRpYXN0cmVhbS9SVENFcnJvckNhbGxi
YWNrLmlkbDogUmVtb3ZlZC4KKyAgICAgICAgKiBNb2R1bGVzL21lZGlhc3RyZWFtL1JUQ1BlZXJD
b25uZWN0aW9uLmg6CisgICAgICAgICogTW9kdWxlcy9tZWRpYXN0cmVhbS9SVENQZWVyQ29ubmVj
dGlvbi5pZGw6CisgICAgICAgICogTW9kdWxlcy9tZWRpYXN0cmVhbS9SVENQZWVyQ29ubmVjdGlv
bkVycm9yQ2FsbGJhY2suaDogQWRkZWQuCisgICAgICAgICogTW9kdWxlcy9tZWRpYXN0cmVhbS9S
VENQZWVyQ29ubmVjdGlvbkVycm9yQ2FsbGJhY2suaWRsOiBBZGRlZC4KKyAgICAgICAgKiBNb2R1
bGVzL21lZGlhc3RyZWFtL1JUQ1Nlc3Npb25EZXNjcmlwdGlvblJlcXVlc3RJbXBsLmNwcDoKKyAg
ICAgICAgKFdlYkNvcmU6OlJUQ1Nlc3Npb25EZXNjcmlwdGlvblJlcXVlc3RJbXBsOjpjcmVhdGUp
OgorICAgICAgICAoV2ViQ29yZTo6UlRDU2Vzc2lvbkRlc2NyaXB0aW9uUmVxdWVzdEltcGw6OlJU
Q1Nlc3Npb25EZXNjcmlwdGlvblJlcXVlc3RJbXBsKToKKyAgICAgICAgKFdlYkNvcmU6OlJUQ1Nl
c3Npb25EZXNjcmlwdGlvblJlcXVlc3RJbXBsOjpyZXF1ZXN0RmFpbGVkKToKKyAgICAgICAgKiBN
b2R1bGVzL21lZGlhc3RyZWFtL1JUQ1Nlc3Npb25EZXNjcmlwdGlvblJlcXVlc3RJbXBsLmg6Cisg
ICAgICAgICogTW9kdWxlcy9tZWRpYXN0cmVhbS9SVENWb2lkUmVxdWVzdEltcGwuY3BwOgorICAg
ICAgICAoV2ViQ29yZTo6UlRDVm9pZFJlcXVlc3RJbXBsOjpjcmVhdGUpOgorICAgICAgICAoV2Vi
Q29yZTo6UlRDVm9pZFJlcXVlc3RJbXBsOjpSVENWb2lkUmVxdWVzdEltcGwpOgorICAgICAgICAo
V2ViQ29yZTo6UlRDVm9pZFJlcXVlc3RJbXBsOjpyZXF1ZXN0RmFpbGVkKToKKyAgICAgICAgKiBN
b2R1bGVzL21lZGlhc3RyZWFtL1JUQ1ZvaWRSZXF1ZXN0SW1wbC5oOgorICAgICAgICAqIHBsYXRm
b3JtL21lZGlhc3RyZWFtL1JUQ1BlZXJDb25uZWN0aW9uSGFuZGxlci5jcHA6CisgICAgICAgIChX
ZWJDb3JlOjpSVENQZWVyQ29ubmVjdGlvbkhhbmRsZXI6OmluY29tcGF0aWJsZUNvbnN0cmFpbnRz
RXJyb3JOYW1lKToKKyAgICAgICAgKFdlYkNvcmU6OlJUQ1BlZXJDb25uZWN0aW9uSGFuZGxlcjo6
aW52YWxpZFNlc3Npb25EZXNjcmlwdGlvbkVycm9yTmFtZSk6CisgICAgICAgIChXZWJDb3JlOjpS
VENQZWVyQ29ubmVjdGlvbkhhbmRsZXI6OmluY29tcGF0aWJsZVNlc3Npb25EZXNjcmlwdGlvbkVy
cm9yTmFtZSk6CisgICAgICAgIChXZWJDb3JlOjpSVENQZWVyQ29ubmVjdGlvbkhhbmRsZXI6Omlu
dGVybmFsRXJyb3JOYW1lKToKKyAgICAgICAgKiBwbGF0Zm9ybS9tZWRpYXN0cmVhbS9SVENQZWVy
Q29ubmVjdGlvbkhhbmRsZXIuaDoKKyAgICAgICAgKiBwbGF0Zm9ybS9tb2NrL1JUQ05vdGlmaWVy
c01vY2suY3BwOgorICAgICAgICAoV2ViQ29yZTo6U2Vzc2lvblJlcXVlc3ROb3RpZmllcjo6U2Vz
c2lvblJlcXVlc3ROb3RpZmllcik6CisgICAgICAgIChXZWJDb3JlOjpTZXNzaW9uUmVxdWVzdE5v
dGlmaWVyOjpmaXJlKToKKyAgICAgICAgKFdlYkNvcmU6OlZvaWRSZXF1ZXN0Tm90aWZpZXI6OlZv
aWRSZXF1ZXN0Tm90aWZpZXIpOgorICAgICAgICAoV2ViQ29yZTo6Vm9pZFJlcXVlc3ROb3RpZmll
cjo6ZmlyZSk6CisgICAgICAgICogcGxhdGZvcm0vbW9jay9SVENOb3RpZmllcnNNb2NrLmg6Cisg
ICAgICAgICogcGxhdGZvcm0vbW9jay9SVENQZWVyQ29ubmVjdGlvbkhhbmRsZXJNb2NrLmNwcDoK
KyAgICAgICAgKFdlYkNvcmU6OlJUQ1BlZXJDb25uZWN0aW9uSGFuZGxlck1vY2s6OmNyZWF0ZU9m
ZmVyKToKKyAgICAgICAgKFdlYkNvcmU6OlJUQ1BlZXJDb25uZWN0aW9uSGFuZGxlck1vY2s6OmNy
ZWF0ZUFuc3dlcik6CisKIDIwMTMtMTItMTEgIERhcmluIEFkbGVyICA8ZGFyaW5AYXBwbGUuY29t
PgogCiAgICAgICAgIFN0eWxlUGVuZGluZ0ltYWdlIG5lZWRzIHRvIGNvcnJlY3RseSBtYW5hZ2Ug
dGhlIENTU1ZhbHVlIHBvaW50ZXIgbGlmZXRpbWUKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3Jl
L0NNYWtlTGlzdHMudHh0IGIvU291cmNlL1dlYkNvcmUvQ01ha2VMaXN0cy50eHQKaW5kZXggOTJi
YzMzZjI4NmJhMzU5Y2Q4ZDFiNjk5YTMwZGZkYzc3ZjdlY2Y2MC4uMTg4ODY5YjBmNDdiOWMwYjYy
NTE1NGEzYTMzNDQ0MDhhYzZiYzdjMyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ01ha2VM
aXN0cy50eHQKKysrIGIvU291cmNlL1dlYkNvcmUvQ01ha2VMaXN0cy50eHQKQEAgLTIxMSw3ICsy
MTEsNyBAQCBzZXQoV2ViQ29yZV9JRExfRklMRVMKICAgICBNb2R1bGVzL21lZGlhc3RyZWFtL1JU
Q0RUTUZUb25lQ2hhbmdlRXZlbnQuaWRsCiAgICAgTW9kdWxlcy9tZWRpYXN0cmVhbS9SVENEYXRh
Q2hhbm5lbC5pZGwKICAgICBNb2R1bGVzL21lZGlhc3RyZWFtL1JUQ0RhdGFDaGFubmVsRXZlbnQu
aWRsCi0gICAgTW9kdWxlcy9tZWRpYXN0cmVhbS9SVENFcnJvckNhbGxiYWNrLmlkbAorICAgIE1v
ZHVsZXMvbWVkaWFzdHJlYW0vUlRDUGVlckNvbm5lY3Rpb25FcnJvckNhbGxiYWNrLmlkbAogICAg
IE1vZHVsZXMvbWVkaWFzdHJlYW0vUlRDSWNlQ2FuZGlkYXRlLmlkbAogICAgIE1vZHVsZXMvbWVk
aWFzdHJlYW0vUlRDSWNlQ2FuZGlkYXRlRXZlbnQuaWRsCiAgICAgTW9kdWxlcy9tZWRpYXN0cmVh
bS9SVENQZWVyQ29ubmVjdGlvbi5pZGwKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL0Rlcml2
ZWRTb3VyY2VzLm1ha2UgYi9Tb3VyY2UvV2ViQ29yZS9EZXJpdmVkU291cmNlcy5tYWtlCmluZGV4
IDQ5ZmNlMGY5NWUwMzgwMzQ5MTkxYWRkOWMwZGE0Njk4OTEzZDRlYzQuLjYxNjhlMmEzMzlkNjQ2
YjgzODUxNmIyZDFjMTc4ZGY0OTY3MDU4ODUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL0Rl
cml2ZWRTb3VyY2VzLm1ha2UKKysrIGIvU291cmNlL1dlYkNvcmUvRGVyaXZlZFNvdXJjZXMubWFr
ZQpAQCAtMTI3LDcgKzEyNyw3IEBAIEJJTkRJTkdfSURMUyA9IFwKICAgICAkKFdlYkNvcmUpL01v
ZHVsZXMvbWVkaWFzdHJlYW0vUlRDRFRNRlRvbmVDaGFuZ2VFdmVudC5pZGwgXAogICAgICQoV2Vi
Q29yZSkvTW9kdWxlcy9tZWRpYXN0cmVhbS9SVENEYXRhQ2hhbm5lbC5pZGwgXAogICAgICQoV2Vi
Q29yZSkvTW9kdWxlcy9tZWRpYXN0cmVhbS9SVENEYXRhQ2hhbm5lbEV2ZW50LmlkbCBcCi0gICAg
JChXZWJDb3JlKS9Nb2R1bGVzL21lZGlhc3RyZWFtL1JUQ0Vycm9yQ2FsbGJhY2suaWRsIFwKKyAg
ICAkKFdlYkNvcmUpL01vZHVsZXMvbWVkaWFzdHJlYW0vUlRDUGVlckNvbm5lY3Rpb25FcnJvckNh
bGxiYWNrLmlkbCBcCiAgICAgJChXZWJDb3JlKS9Nb2R1bGVzL21lZGlhc3RyZWFtL1JUQ0ljZUNh
bmRpZGF0ZS5pZGwgXAogICAgICQoV2ViQ29yZSkvTW9kdWxlcy9tZWRpYXN0cmVhbS9SVENJY2VD
YW5kaWRhdGVFdmVudC5pZGwgXAogICAgICQoV2ViQ29yZSkvTW9kdWxlcy9tZWRpYXN0cmVhbS9S
VENQZWVyQ29ubmVjdGlvbi5pZGwgXApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvR05VbWFr
ZWZpbGUubGlzdC5hbSBiL1NvdXJjZS9XZWJDb3JlL0dOVW1ha2VmaWxlLmxpc3QuYW0KaW5kZXgg
Zjk4Njk1NThkN2Q0M2I5NDg5Yjk1YWRhOTAzNzkwM2M0NTVjNTMwMi4uZWIyMmFjNTgyZjBiYTk0
ZTZkMTU1NzYxMTQwYzA0ZmJhZGU4OTk1NSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvR05V
bWFrZWZpbGUubGlzdC5hbQorKysgYi9Tb3VyY2UvV2ViQ29yZS9HTlVtYWtlZmlsZS5saXN0LmFt
CkBAIC02MTEsOCArNjExLDggQEAgd2ViY29yZV9idWlsdF9zb3VyY2VzICs9IFwKIAlEZXJpdmVk
U291cmNlcy9XZWJDb3JlL0pTUlRDRGF0YUNoYW5uZWwuaCBcCiAJRGVyaXZlZFNvdXJjZXMvV2Vi
Q29yZS9KU1JUQ0RhdGFDaGFubmVsRXZlbnQuY3BwIFwKIAlEZXJpdmVkU291cmNlcy9XZWJDb3Jl
L0pTUlRDRGF0YUNoYW5uZWxFdmVudC5oIFwKLQlEZXJpdmVkU291cmNlcy9XZWJDb3JlL0pTUlRD
RXJyb3JDYWxsYmFjay5jcHAgXAotCURlcml2ZWRTb3VyY2VzL1dlYkNvcmUvSlNSVENFcnJvckNh
bGxiYWNrLmggXAorCURlcml2ZWRTb3VyY2VzL1dlYkNvcmUvSlNSVENQZWVyQ29ubmVjdGlvbkVy
cm9yQ2FsbGJhY2suY3BwIFwKKwlEZXJpdmVkU291cmNlcy9XZWJDb3JlL0pTUlRDUGVlckNvbm5l
Y3Rpb25FcnJvckNhbGxiYWNrLmggXAogCURlcml2ZWRTb3VyY2VzL1dlYkNvcmUvSlNSVENJY2VD
YW5kaWRhdGUuY3BwIFwKIAlEZXJpdmVkU291cmNlcy9XZWJDb3JlL0pTUlRDSWNlQ2FuZGlkYXRl
LmggXAogCURlcml2ZWRTb3VyY2VzL1dlYkNvcmUvSlNSVENJY2VDYW5kaWRhdGVFdmVudC5jcHAg
XApAQCAtMTIyNyw3ICsxMjI3LDcgQEAgZG9tX2JpbmRpbmdfaWRscyArPSBcCiAJJChXZWJDb3Jl
KS9Nb2R1bGVzL21lZGlhc3RyZWFtL1JUQ0RUTUZUb25lQ2hhbmdlRXZlbnQuaWRsIFwKIAkkKFdl
YkNvcmUpL01vZHVsZXMvbWVkaWFzdHJlYW0vUlRDRGF0YUNoYW5uZWwuaWRsIFwKIAkkKFdlYkNv
cmUpL01vZHVsZXMvbWVkaWFzdHJlYW0vUlRDRGF0YUNoYW5uZWxFdmVudC5pZGwgXAotCSQoV2Vi
Q29yZSkvTW9kdWxlcy9tZWRpYXN0cmVhbS9SVENFcnJvckNhbGxiYWNrLmlkbCBcCisJJChXZWJD
b3JlKS9Nb2R1bGVzL21lZGlhc3RyZWFtL1JUQ1BlZXJDb25uZWN0aW9uRXJyb3JDYWxsYmFjay5p
ZGwgXAogCSQoV2ViQ29yZSkvTW9kdWxlcy9tZWRpYXN0cmVhbS9SVENJY2VDYW5kaWRhdGUuaWRs
IFwKIAkkKFdlYkNvcmUpL01vZHVsZXMvbWVkaWFzdHJlYW0vUlRDSWNlQ2FuZGlkYXRlRXZlbnQu
aWRsIFwKIAkkKFdlYkNvcmUpL01vZHVsZXMvbWVkaWFzdHJlYW0vUlRDUGVlckNvbm5lY3Rpb24u
aWRsIFwKQEAgLTE5MzYsNyArMTkzNiw3IEBAIHdlYmNvcmVfbW9kdWxlc19zb3VyY2VzICs9IFwK
IAlTb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL21lZGlhc3RyZWFtL1JUQ0RhdGFDaGFubmVsLmggXAog
CVNvdXJjZS9XZWJDb3JlL01vZHVsZXMvbWVkaWFzdHJlYW0vUlRDRGF0YUNoYW5uZWxFdmVudC5j
cHAgXAogCVNvdXJjZS9XZWJDb3JlL01vZHVsZXMvbWVkaWFzdHJlYW0vUlRDRGF0YUNoYW5uZWxF
dmVudC5oIFwKLQlTb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL21lZGlhc3RyZWFtL1JUQ0Vycm9yQ2Fs
bGJhY2suaCBcCisJU291cmNlL1dlYkNvcmUvTW9kdWxlcy9tZWRpYXN0cmVhbS9SVENQZWVyQ29u
bmVjdGlvbkVycm9yQ2FsbGJhY2suaCBcCiAJU291cmNlL1dlYkNvcmUvTW9kdWxlcy9tZWRpYXN0
cmVhbS9SVENJY2VDYW5kaWRhdGUuY3BwIFwKIAlTb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL21lZGlh
c3RyZWFtL1JUQ0ljZUNhbmRpZGF0ZS5oIFwKIAlTb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL21lZGlh
c3RyZWFtL1JUQ0ljZUNhbmRpZGF0ZUV2ZW50LmNwcCBcCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
Q29yZS9Nb2R1bGVzL21lZGlhc3RyZWFtL1JUQ0Vycm9yQ2FsbGJhY2suaCBiL1NvdXJjZS9XZWJD
b3JlL01vZHVsZXMvbWVkaWFzdHJlYW0vUlRDRXJyb3JDYWxsYmFjay5oCmRlbGV0ZWQgZmlsZSBt
b2RlIDEwMDY0NAppbmRleCA2NDRlNTZmMGJlYTcwZDUzZTQ5ZjI4OWU0YWZmNjE1N2RhM2VmYmRj
Li4wMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwCi0tLSBhL1NvdXJjZS9X
ZWJDb3JlL01vZHVsZXMvbWVkaWFzdHJlYW0vUlRDRXJyb3JDYWxsYmFjay5oCisrKyAvZGV2L251
bGwKQEAgLTEsNTEgKzAsMCBAQAotLyoKLSAqIENvcHlyaWdodCAoQykgMjAxMiBHb29nbGUgSW5j
LiBBbGwgcmlnaHRzIHJlc2VydmVkLgotICoKLSAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4g
c291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAotICogbW9kaWZpY2F0aW9u
LCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCi0g
KiBhcmUgbWV0OgotICoKLSAqIDEuIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0
IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0Ci0gKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBj
b25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCi0gKiAyLiBSZWRpc3RyaWJ1
dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAot
ICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBk
aXNjbGFpbWVyCi0gKiAgICBpbiB0aGUgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJp
YWxzIHByb3ZpZGVkIHdpdGggdGhlCi0gKiAgICBkaXN0cmlidXRpb24uCi0gKiAzLiBOZWl0aGVy
IHRoZSBuYW1lIG9mIEdvb2dsZSBJbmMuIG5vciB0aGUgbmFtZXMgb2YgaXRzIGNvbnRyaWJ1dG9y
cwotICogICAgbWF5IGJlIHVzZWQgdG8gZW5kb3JzZSBvciBwcm9tb3RlIHByb2R1Y3RzIGRlcml2
ZWQgZnJvbSB0aGlzCi0gKiAgICBzb2Z0d2FyZSB3aXRob3V0IHNwZWNpZmljIHByaW9yIHdyaXR0
ZW4gcGVybWlzc2lvbi4KLSAqCi0gKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIFRIRSBD
T1BZUklHSFQgSE9MREVSUyBBTkQgQ09OVFJJQlVUT1JTCi0gKiAiQVMgSVMiIEFORCBBTlkgRVhQ
UkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVAotICogTElNSVRF
RCBUTywgVEhFIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5F
U1MgRk9SCi0gKiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZF
TlQgU0hBTEwgVEhFIENPUFlSSUdIVAotICogT1dORVIgT1IgQ09OVFJJQlVUT1JTIEJFIExJQUJM
RSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsCi0gKiBTUEVDSUFMLCBFWEVN
UExBUlksIE9SIENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UCi0gKiBM
SU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBM
T1NTIE9GIFVTRSwKLSAqIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElP
TikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWQotICogVEhFT1JZIE9GIExJQUJJTElUWSwgV0hF
VEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVAotICogKElOQ0xVRElO
RyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUg
VVNFCi0gKiBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklM
SVRZIE9GIFNVQ0ggREFNQUdFLgotICovCi0KLSNpZm5kZWYgUlRDRXJyb3JDYWxsYmFja19oCi0j
ZGVmaW5lIFJUQ0Vycm9yQ2FsbGJhY2tfaAotCi0jaWYgRU5BQkxFKE1FRElBX1NUUkVBTSkKLQot
I2luY2x1ZGUgPHd0Zi9SZWZDb3VudGVkLmg+Ci0jaW5jbHVkZSA8d3RmL3RleHQvV1RGU3RyaW5n
Lmg+Ci0KLW5hbWVzcGFjZSBXZWJDb3JlIHsKLQotY2xhc3MgUlRDRXJyb3JDYWxsYmFjayA6IHB1
YmxpYyBSZWZDb3VudGVkPFJUQ0Vycm9yQ2FsbGJhY2s+IHsKLXB1YmxpYzoKLSAgICB2aXJ0dWFs
IH5SVENFcnJvckNhbGxiYWNrKCkgeyB9Ci0gICAgdmlydHVhbCBib29sIGhhbmRsZUV2ZW50KGNv
bnN0IFN0cmluZyYgZXJyb3JJbmZvcm1hdGlvbikgPSAwOwotfTsKLQotfSAvLyBuYW1lc3BhY2Ug
V2ViQ29yZQotCi0jZW5kaWYgLy8gRU5BQkxFKE1FRElBX1NUUkVBTSkKLQotI2VuZGlmIC8vIFJU
Q0Vycm9yQ2FsbGJhY2tfaApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9tZWRp
YXN0cmVhbS9SVENFcnJvckNhbGxiYWNrLmlkbCBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvbWVk
aWFzdHJlYW0vUlRDRXJyb3JDYWxsYmFjay5pZGwKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0Cmlu
ZGV4IGEyZDQ2NTNkNzAwYzFhNDAzMDA5NTdiNjUyNGZiOTMwNTcxNTAwM2IuLjAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAKLS0tIGEvU291cmNlL1dlYkNvcmUvTW9kdWxl
cy9tZWRpYXN0cmVhbS9SVENFcnJvckNhbGxiYWNrLmlkbAorKysgL2Rldi9udWxsCkBAIC0xLDM2
ICswLDAgQEAKLS8qCi0gKiBDb3B5cmlnaHQgKEMpIDIwMTIgR29vZ2xlIEluYy4gQWxsIHJpZ2h0
cyByZXNlcnZlZC4KLSAqCi0gKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQg
YmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKLSAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1p
dHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucwotICogYXJlIG1ldDoK
LSAqCi0gKiAxLiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhl
IGFib3ZlIGNvcHlyaWdodAotICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBh
bmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgotICogMi4gUmVkaXN0cmlidXRpb25zIGluIGJp
bmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKLSAqICAgIG5vdGlj
ZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lcgot
ICogICAgaW4gdGhlIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRl
ZCB3aXRoIHRoZQotICogICAgZGlzdHJpYnV0aW9uLgotICogMy4gTmVpdGhlciB0aGUgbmFtZSBv
ZiBHb29nbGUgSW5jLiBub3IgdGhlIG5hbWVzIG9mIGl0cyBjb250cmlidXRvcnMKLSAqICAgIG1h
eSBiZSB1c2VkIHRvIGVuZG9yc2Ugb3IgcHJvbW90ZSBwcm9kdWN0cyBkZXJpdmVkIGZyb20gdGhp
cwotICogICAgc29mdHdhcmUgd2l0aG91dCBzcGVjaWZpYyBwcmlvciB3cml0dGVuIHBlcm1pc3Np
b24uCi0gKgotICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBUSEUgQ09QWVJJR0hUIEhP
TERFUlMgQU5EIENPTlRSSUJVVE9SUwotICogIkFTIElTIiBBTkQgQU5ZIEVYUFJFU1MgT1IgSU1Q
TElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QKLSAqIExJTUlURUQgVE8sIFRIRSBJ
TVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUgotICog
QSBQQVJUSUNVTEFSIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIFRI
RSBDT1BZUklHSFQKLSAqIE9XTkVSIE9SIENPTlRSSUJVVE9SUyBCRSBMSUFCTEUgRk9SIEFOWSBE
SVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLAotICogU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUiBD
T05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVAotICogTElNSVRFRCBUTywg
UFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0Us
Ci0gKiBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIg
Q0FVU0VEIEFORCBPTiBBTlkKLSAqIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09O
VFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQKLSAqIChJTkNMVURJTkcgTkVHTElHRU5D
RSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRQotICogT0Yg
VEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNI
IERBTUFHRS4KLSAqLwotCi1bCi0gICAgQ29uZGl0aW9uYWw9TUVESUFfU1RSRUFNLAotXSBjYWxs
YmFjayBpbnRlcmZhY2UgUlRDRXJyb3JDYWxsYmFjayB7Ci0gICAgYm9vbGVhbiBoYW5kbGVFdmVu
dChET01TdHJpbmcgZXJyb3JJbmZvcm1hdGlvbik7Ci19OwotCmRpZmYgLS1naXQgYS9Tb3VyY2Uv
V2ViQ29yZS9Nb2R1bGVzL21lZGlhc3RyZWFtL1JUQ1BlZXJDb25uZWN0aW9uLmNwcCBiL1NvdXJj
ZS9XZWJDb3JlL01vZHVsZXMvbWVkaWFzdHJlYW0vUlRDUGVlckNvbm5lY3Rpb24uY3BwCmluZGV4
IDgzNWFlMjMwMGU3ZjJjNWI3NTJhN2ZiNzY2ZGQyMTFlYjZlNjgzNzIuLjdlMzRlMTM4MDM0NTRi
OTg2NzJhOWZjM2NiMzU3N2RhOGY4NDU2MGYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL01v
ZHVsZXMvbWVkaWFzdHJlYW0vUlRDUGVlckNvbm5lY3Rpb24uY3BwCisrKyBiL1NvdXJjZS9XZWJD
b3JlL01vZHVsZXMvbWVkaWFzdHJlYW0vUlRDUGVlckNvbm5lY3Rpb24uY3BwCkBAIC00OSwxMCAr
NDksMTAgQEAKICNpbmNsdWRlICJSVENEYXRhQ2hhbm5lbC5oIgogI2luY2x1ZGUgIlJUQ0RhdGFD
aGFubmVsRXZlbnQuaCIKICNpbmNsdWRlICJSVENEYXRhQ2hhbm5lbEhhbmRsZXIuaCIKLSNpbmNs
dWRlICJSVENFcnJvckNhbGxiYWNrLmgiCiAjaW5jbHVkZSAiUlRDSWNlQ2FuZGlkYXRlLmgiCiAj
aW5jbHVkZSAiUlRDSWNlQ2FuZGlkYXRlRGVzY3JpcHRvci5oIgogI2luY2x1ZGUgIlJUQ0ljZUNh
bmRpZGF0ZUV2ZW50LmgiCisjaW5jbHVkZSAiUlRDUGVlckNvbm5lY3Rpb25FcnJvckNhbGxiYWNr
LmgiCiAjaW5jbHVkZSAiUlRDU2Vzc2lvbkRlc2NyaXB0aW9uLmgiCiAjaW5jbHVkZSAiUlRDU2Vz
c2lvbkRlc2NyaXB0aW9uQ2FsbGJhY2suaCIKICNpbmNsdWRlICJSVENTZXNzaW9uRGVzY3JpcHRp
b25EZXNjcmlwdG9yLmgiCkBAIC0xNzAsNyArMTcwLDcgQEAgUlRDUGVlckNvbm5lY3Rpb246On5S
VENQZWVyQ29ubmVjdGlvbigpCiAgICAgICAgICgqc3RyZWFtKS0+cmVtb3ZlT2JzZXJ2ZXIodGhp
cyk7CiB9CiAKLXZvaWQgUlRDUGVlckNvbm5lY3Rpb246OmNyZWF0ZU9mZmVyKFBhc3NSZWZQdHI8
UlRDU2Vzc2lvbkRlc2NyaXB0aW9uQ2FsbGJhY2s+IHN1Y2Nlc3NDYWxsYmFjaywgUGFzc1JlZlB0
cjxSVENFcnJvckNhbGxiYWNrPiBlcnJvckNhbGxiYWNrLCBjb25zdCBEaWN0aW9uYXJ5JiBtZWRp
YUNvbnN0cmFpbnRzLCBFeGNlcHRpb25Db2RlJiBlYykKK3ZvaWQgUlRDUGVlckNvbm5lY3Rpb246
OmNyZWF0ZU9mZmVyKFBhc3NSZWZQdHI8UlRDU2Vzc2lvbkRlc2NyaXB0aW9uQ2FsbGJhY2s+IHN1
Y2Nlc3NDYWxsYmFjaywgUGFzc1JlZlB0cjxSVENQZWVyQ29ubmVjdGlvbkVycm9yQ2FsbGJhY2s+
IGVycm9yQ2FsbGJhY2ssIGNvbnN0IERpY3Rpb25hcnkmIG1lZGlhQ29uc3RyYWludHMsIEV4Y2Vw
dGlvbkNvZGUmIGVjKQogewogICAgIGlmIChtX3NpZ25hbGluZ1N0YXRlID09IFNpZ25hbGluZ1N0
YXRlQ2xvc2VkKSB7CiAgICAgICAgIGVjID0gSU5WQUxJRF9TVEFURV9FUlI7CkBAIC0xOTAsNyAr
MTkwLDcgQEAgdm9pZCBSVENQZWVyQ29ubmVjdGlvbjo6Y3JlYXRlT2ZmZXIoUGFzc1JlZlB0cjxS
VENTZXNzaW9uRGVzY3JpcHRpb25DYWxsYmFjaz4gc3UKICAgICBtX3BlZXJIYW5kbGVyLT5jcmVh
dGVPZmZlcihyZXF1ZXN0LnJlbGVhc2UoKSwgY29uc3RyYWludHMpOwogfQogCi12b2lkIFJUQ1Bl
ZXJDb25uZWN0aW9uOjpjcmVhdGVBbnN3ZXIoUGFzc1JlZlB0cjxSVENTZXNzaW9uRGVzY3JpcHRp
b25DYWxsYmFjaz4gc3VjY2Vzc0NhbGxiYWNrLCBQYXNzUmVmUHRyPFJUQ0Vycm9yQ2FsbGJhY2s+
IGVycm9yQ2FsbGJhY2ssIGNvbnN0IERpY3Rpb25hcnkmIG1lZGlhQ29uc3RyYWludHMsIEV4Y2Vw
dGlvbkNvZGUmIGVjKQordm9pZCBSVENQZWVyQ29ubmVjdGlvbjo6Y3JlYXRlQW5zd2VyKFBhc3NS
ZWZQdHI8UlRDU2Vzc2lvbkRlc2NyaXB0aW9uQ2FsbGJhY2s+IHN1Y2Nlc3NDYWxsYmFjaywgUGFz
c1JlZlB0cjxSVENQZWVyQ29ubmVjdGlvbkVycm9yQ2FsbGJhY2s+IGVycm9yQ2FsbGJhY2ssIGNv
bnN0IERpY3Rpb25hcnkmIG1lZGlhQ29uc3RyYWludHMsIEV4Y2VwdGlvbkNvZGUmIGVjKQogewog
ICAgIGlmIChtX3NpZ25hbGluZ1N0YXRlID09IFNpZ25hbGluZ1N0YXRlQ2xvc2VkKSB7CiAgICAg
ICAgIGVjID0gSU5WQUxJRF9TVEFURV9FUlI7CkBAIC0yMTAsNyArMjEwLDcgQEAgdm9pZCBSVENQ
ZWVyQ29ubmVjdGlvbjo6Y3JlYXRlQW5zd2VyKFBhc3NSZWZQdHI8UlRDU2Vzc2lvbkRlc2NyaXB0
aW9uQ2FsbGJhY2s+IHMKICAgICBtX3BlZXJIYW5kbGVyLT5jcmVhdGVBbnN3ZXIocmVxdWVzdC5y
ZWxlYXNlKCksIGNvbnN0cmFpbnRzLnJlbGVhc2UoKSk7CiB9CiAKLXZvaWQgUlRDUGVlckNvbm5l
Y3Rpb246OnNldExvY2FsRGVzY3JpcHRpb24oUGFzc1JlZlB0cjxSVENTZXNzaW9uRGVzY3JpcHRp
b24+IHBycFNlc3Npb25EZXNjcmlwdGlvbiwgUGFzc1JlZlB0cjxWb2lkQ2FsbGJhY2s+IHN1Y2Nl
c3NDYWxsYmFjaywgUGFzc1JlZlB0cjxSVENFcnJvckNhbGxiYWNrPiBlcnJvckNhbGxiYWNrLCBF
eGNlcHRpb25Db2RlJiBlYykKK3ZvaWQgUlRDUGVlckNvbm5lY3Rpb246OnNldExvY2FsRGVzY3Jp
cHRpb24oUGFzc1JlZlB0cjxSVENTZXNzaW9uRGVzY3JpcHRpb24+IHBycFNlc3Npb25EZXNjcmlw
dGlvbiwgUGFzc1JlZlB0cjxWb2lkQ2FsbGJhY2s+IHN1Y2Nlc3NDYWxsYmFjaywgUGFzc1JlZlB0
cjxSVENQZWVyQ29ubmVjdGlvbkVycm9yQ2FsbGJhY2s+IGVycm9yQ2FsbGJhY2ssIEV4Y2VwdGlv
bkNvZGUmIGVjKQogewogICAgIGlmIChtX3NpZ25hbGluZ1N0YXRlID09IFNpZ25hbGluZ1N0YXRl
Q2xvc2VkKSB7CiAgICAgICAgIGVjID0gSU5WQUxJRF9TVEFURV9FUlI7CkBAIC0yMzksNyArMjM5
LDcgQEAgUGFzc1JlZlB0cjxSVENTZXNzaW9uRGVzY3JpcHRpb24+IFJUQ1BlZXJDb25uZWN0aW9u
Ojpsb2NhbERlc2NyaXB0aW9uKEV4Y2VwdGlvbkMKICAgICByZXR1cm4gc2Vzc2lvbkRlc2NyaXB0
aW9uLnJlbGVhc2UoKTsKIH0KIAotdm9pZCBSVENQZWVyQ29ubmVjdGlvbjo6c2V0UmVtb3RlRGVz
Y3JpcHRpb24oUGFzc1JlZlB0cjxSVENTZXNzaW9uRGVzY3JpcHRpb24+IHBycFNlc3Npb25EZXNj
cmlwdGlvbiwgUGFzc1JlZlB0cjxWb2lkQ2FsbGJhY2s+IHN1Y2Nlc3NDYWxsYmFjaywgUGFzc1Jl
ZlB0cjxSVENFcnJvckNhbGxiYWNrPiBlcnJvckNhbGxiYWNrLCBFeGNlcHRpb25Db2RlJiBlYykK
K3ZvaWQgUlRDUGVlckNvbm5lY3Rpb246OnNldFJlbW90ZURlc2NyaXB0aW9uKFBhc3NSZWZQdHI8
UlRDU2Vzc2lvbkRlc2NyaXB0aW9uPiBwcnBTZXNzaW9uRGVzY3JpcHRpb24sIFBhc3NSZWZQdHI8
Vm9pZENhbGxiYWNrPiBzdWNjZXNzQ2FsbGJhY2ssIFBhc3NSZWZQdHI8UlRDUGVlckNvbm5lY3Rp
b25FcnJvckNhbGxiYWNrPiBlcnJvckNhbGxiYWNrLCBFeGNlcHRpb25Db2RlJiBlYykKIHsKICAg
ICBpZiAobV9zaWduYWxpbmdTdGF0ZSA9PSBTaWduYWxpbmdTdGF0ZUNsb3NlZCkgewogICAgICAg
ICBlYyA9IElOVkFMSURfU1RBVEVfRVJSOwpAQCAtMjg4LDcgKzI4OCw3IEBAIHZvaWQgUlRDUGVl
ckNvbm5lY3Rpb246OnVwZGF0ZUljZShjb25zdCBEaWN0aW9uYXJ5JiBydGNDb25maWd1cmF0aW9u
LCBjb25zdCBEaWN0CiAgICAgICAgIGVjID0gU1lOVEFYX0VSUjsKIH0KIAotdm9pZCBSVENQZWVy
Q29ubmVjdGlvbjo6YWRkSWNlQ2FuZGlkYXRlKFJUQ0ljZUNhbmRpZGF0ZSogaWNlQ2FuZGlkYXRl
LCBQYXNzUmVmUHRyPFZvaWRDYWxsYmFjaz4gc3VjY2Vzc0NhbGxiYWNrLCBQYXNzUmVmUHRyPFJU
Q0Vycm9yQ2FsbGJhY2s+IGVycm9yQ2FsbGJhY2ssIEV4Y2VwdGlvbkNvZGUmIGVjKQordm9pZCBS
VENQZWVyQ29ubmVjdGlvbjo6YWRkSWNlQ2FuZGlkYXRlKFJUQ0ljZUNhbmRpZGF0ZSogaWNlQ2Fu
ZGlkYXRlLCBQYXNzUmVmUHRyPFZvaWRDYWxsYmFjaz4gc3VjY2Vzc0NhbGxiYWNrLCBQYXNzUmVm
UHRyPFJUQ1BlZXJDb25uZWN0aW9uRXJyb3JDYWxsYmFjaz4gZXJyb3JDYWxsYmFjaywgRXhjZXB0
aW9uQ29kZSYgZWMpCiB7CiAgICAgaWYgKG1fc2lnbmFsaW5nU3RhdGUgPT0gU2lnbmFsaW5nU3Rh
dGVDbG9zZWQpIHsKICAgICAgICAgZWMgPSBJTlZBTElEX1NUQVRFX0VSUjsKZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvbWVkaWFzdHJlYW0vUlRDUGVlckNvbm5lY3Rpb24uaCBi
L1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvbWVkaWFzdHJlYW0vUlRDUGVlckNvbm5lY3Rpb24uaApp
bmRleCA0M2I5NmMzNmUxY2Y3OTJjMDA0Y2U2OTYwZGE2ZjYwMjg4MGE0ZThmLi4wZThkYzNjNjAz
NTMwMTc1OWM5MDg3ZmYzYjA4OWJiMmUwNGQzY2U4IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29y
ZS9Nb2R1bGVzL21lZGlhc3RyZWFtL1JUQ1BlZXJDb25uZWN0aW9uLmgKKysrIGIvU291cmNlL1dl
YkNvcmUvTW9kdWxlcy9tZWRpYXN0cmVhbS9SVENQZWVyQ29ubmVjdGlvbi5oCkBAIC01Myw3ICs1
Myw3IEBAIGNsYXNzIE1lZGlhU3RyZWFtVHJhY2s7CiBjbGFzcyBSVENDb25maWd1cmF0aW9uOwog
Y2xhc3MgUlRDRFRNRlNlbmRlcjsKIGNsYXNzIFJUQ0RhdGFDaGFubmVsOwotY2xhc3MgUlRDRXJy
b3JDYWxsYmFjazsKK2NsYXNzIFJUQ1BlZXJDb25uZWN0aW9uRXJyb3JDYWxsYmFjazsKIGNsYXNz
IFJUQ1Nlc3Npb25EZXNjcmlwdGlvbjsKIGNsYXNzIFJUQ1Nlc3Npb25EZXNjcmlwdGlvbkNhbGxi
YWNrOwogY2xhc3MgUlRDU3RhdHNDYWxsYmFjazsKQEAgLTY0LDIxICs2NCwyMSBAQCBwdWJsaWM6
CiAgICAgc3RhdGljIFBhc3NSZWZQdHI8UlRDUGVlckNvbm5lY3Rpb24+IGNyZWF0ZShTY3JpcHRF
eGVjdXRpb25Db250ZXh0JiwgY29uc3QgRGljdGlvbmFyeSYgcnRjQ29uZmlndXJhdGlvbiwgY29u
c3QgRGljdGlvbmFyeSYgbWVkaWFDb25zdHJhaW50cywgRXhjZXB0aW9uQ29kZSYpOwogICAgIH5S
VENQZWVyQ29ubmVjdGlvbigpOwogCi0gICAgdm9pZCBjcmVhdGVPZmZlcihQYXNzUmVmUHRyPFJU
Q1Nlc3Npb25EZXNjcmlwdGlvbkNhbGxiYWNrPiwgUGFzc1JlZlB0cjxSVENFcnJvckNhbGxiYWNr
PiwgY29uc3QgRGljdGlvbmFyeSYgbWVkaWFDb25zdHJhaW50cywgRXhjZXB0aW9uQ29kZSYpOwor
ICAgIHZvaWQgY3JlYXRlT2ZmZXIoUGFzc1JlZlB0cjxSVENTZXNzaW9uRGVzY3JpcHRpb25DYWxs
YmFjaz4sIFBhc3NSZWZQdHI8UlRDUGVlckNvbm5lY3Rpb25FcnJvckNhbGxiYWNrPiwgY29uc3Qg
RGljdGlvbmFyeSYgbWVkaWFDb25zdHJhaW50cywgRXhjZXB0aW9uQ29kZSYpOwogCi0gICAgdm9p
ZCBjcmVhdGVBbnN3ZXIoUGFzc1JlZlB0cjxSVENTZXNzaW9uRGVzY3JpcHRpb25DYWxsYmFjaz4s
IFBhc3NSZWZQdHI8UlRDRXJyb3JDYWxsYmFjaz4sIGNvbnN0IERpY3Rpb25hcnkmIG1lZGlhQ29u
c3RyYWludHMsIEV4Y2VwdGlvbkNvZGUmKTsKKyAgICB2b2lkIGNyZWF0ZUFuc3dlcihQYXNzUmVm
UHRyPFJUQ1Nlc3Npb25EZXNjcmlwdGlvbkNhbGxiYWNrPiwgUGFzc1JlZlB0cjxSVENQZWVyQ29u
bmVjdGlvbkVycm9yQ2FsbGJhY2s+LCBjb25zdCBEaWN0aW9uYXJ5JiBtZWRpYUNvbnN0cmFpbnRz
LCBFeGNlcHRpb25Db2RlJik7CiAKLSAgICB2b2lkIHNldExvY2FsRGVzY3JpcHRpb24oUGFzc1Jl
ZlB0cjxSVENTZXNzaW9uRGVzY3JpcHRpb24+LCBQYXNzUmVmUHRyPFZvaWRDYWxsYmFjaz4sIFBh
c3NSZWZQdHI8UlRDRXJyb3JDYWxsYmFjaz4sIEV4Y2VwdGlvbkNvZGUmKTsKKyAgICB2b2lkIHNl
dExvY2FsRGVzY3JpcHRpb24oUGFzc1JlZlB0cjxSVENTZXNzaW9uRGVzY3JpcHRpb24+LCBQYXNz
UmVmUHRyPFZvaWRDYWxsYmFjaz4sIFBhc3NSZWZQdHI8UlRDUGVlckNvbm5lY3Rpb25FcnJvckNh
bGxiYWNrPiwgRXhjZXB0aW9uQ29kZSYpOwogICAgIFBhc3NSZWZQdHI8UlRDU2Vzc2lvbkRlc2Ny
aXB0aW9uPiBsb2NhbERlc2NyaXB0aW9uKEV4Y2VwdGlvbkNvZGUmKTsKIAotICAgIHZvaWQgc2V0
UmVtb3RlRGVzY3JpcHRpb24oUGFzc1JlZlB0cjxSVENTZXNzaW9uRGVzY3JpcHRpb24+LCBQYXNz
UmVmUHRyPFZvaWRDYWxsYmFjaz4sIFBhc3NSZWZQdHI8UlRDRXJyb3JDYWxsYmFjaz4sIEV4Y2Vw
dGlvbkNvZGUmKTsKKyAgICB2b2lkIHNldFJlbW90ZURlc2NyaXB0aW9uKFBhc3NSZWZQdHI8UlRD
U2Vzc2lvbkRlc2NyaXB0aW9uPiwgUGFzc1JlZlB0cjxWb2lkQ2FsbGJhY2s+LCBQYXNzUmVmUHRy
PFJUQ1BlZXJDb25uZWN0aW9uRXJyb3JDYWxsYmFjaz4sIEV4Y2VwdGlvbkNvZGUmKTsKICAgICBQ
YXNzUmVmUHRyPFJUQ1Nlc3Npb25EZXNjcmlwdGlvbj4gcmVtb3RlRGVzY3JpcHRpb24oRXhjZXB0
aW9uQ29kZSYpOwogCiAgICAgU3RyaW5nIHNpZ25hbGluZ1N0YXRlKCkgY29uc3Q7CiAKICAgICB2
b2lkIHVwZGF0ZUljZShjb25zdCBEaWN0aW9uYXJ5JiBydGNDb25maWd1cmF0aW9uLCBjb25zdCBE
aWN0aW9uYXJ5JiBtZWRpYUNvbnN0cmFpbnRzLCBFeGNlcHRpb25Db2RlJik7CiAKLSAgICB2b2lk
IGFkZEljZUNhbmRpZGF0ZShSVENJY2VDYW5kaWRhdGUqLCBQYXNzUmVmUHRyPFZvaWRDYWxsYmFj
az4sIFBhc3NSZWZQdHI8UlRDRXJyb3JDYWxsYmFjaz4sIEV4Y2VwdGlvbkNvZGUmKTsKKyAgICB2
b2lkIGFkZEljZUNhbmRpZGF0ZShSVENJY2VDYW5kaWRhdGUqLCBQYXNzUmVmUHRyPFZvaWRDYWxs
YmFjaz4sIFBhc3NSZWZQdHI8UlRDUGVlckNvbm5lY3Rpb25FcnJvckNhbGxiYWNrPiwgRXhjZXB0
aW9uQ29kZSYpOwogCiAgICAgU3RyaW5nIGljZUdhdGhlcmluZ1N0YXRlKCkgY29uc3Q7CiAKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvbWVkaWFzdHJlYW0vUlRDUGVlckNvbm5l
Y3Rpb24uaWRsIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9tZWRpYXN0cmVhbS9SVENQZWVyQ29u
bmVjdGlvbi5pZGwKaW5kZXggNmYyNjMxM2Y1ZDU0OWYwNmE1YTc0M2M0ZTY2ZTkyZDkyOWEyZDU0
Yi4uMWQ2MDE3ZjY1ZjZkZTc3MmQ1YjcyODU0YWU0NDBmNGU3ZDYwMTkxMCAxMDA2NDQKLS0tIGEv
U291cmNlL1dlYkNvcmUvTW9kdWxlcy9tZWRpYXN0cmVhbS9SVENQZWVyQ29ubmVjdGlvbi5pZGwK
KysrIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9tZWRpYXN0cmVhbS9SVENQZWVyQ29ubmVjdGlv
bi5pZGwKQEAgLTM5LDIxICszOSwyMSBAQAogICAgIEV2ZW50VGFyZ2V0LAogICAgIEludGVyZmFj
ZU5hbWU9d2Via2l0UlRDUGVlckNvbm5lY3Rpb24sCiBdIGludGVyZmFjZSBSVENQZWVyQ29ubmVj
dGlvbiB7Ci0gICAgW1JhaXNlc0V4Y2VwdGlvbl0gdm9pZCBjcmVhdGVPZmZlcihSVENTZXNzaW9u
RGVzY3JpcHRpb25DYWxsYmFjayBzdWNjZXNzQ2FsbGJhY2ssIFtEZWZhdWx0PVVuZGVmaW5lZF0g
b3B0aW9uYWwgUlRDRXJyb3JDYWxsYmFjayBmYWlsdXJlQ2FsbGJhY2ssIG9wdGlvbmFsIERpY3Rp
b25hcnkgbWVkaWFDb25zdHJhaW50cyk7CisgICAgW1JhaXNlc0V4Y2VwdGlvbl0gdm9pZCBjcmVh
dGVPZmZlcihSVENTZXNzaW9uRGVzY3JpcHRpb25DYWxsYmFjayBzdWNjZXNzQ2FsbGJhY2ssIFtE
ZWZhdWx0PVVuZGVmaW5lZF0gb3B0aW9uYWwgUlRDUGVlckNvbm5lY3Rpb25FcnJvckNhbGxiYWNr
IGZhaWx1cmVDYWxsYmFjaywgb3B0aW9uYWwgRGljdGlvbmFyeSBtZWRpYUNvbnN0cmFpbnRzKTsK
IAotICAgIFtSYWlzZXNFeGNlcHRpb25dIHZvaWQgY3JlYXRlQW5zd2VyKFJUQ1Nlc3Npb25EZXNj
cmlwdGlvbkNhbGxiYWNrIHN1Y2Nlc3NDYWxsYmFjaywgW0RlZmF1bHQ9VW5kZWZpbmVkXSBvcHRp
b25hbCBSVENFcnJvckNhbGxiYWNrIGZhaWx1cmVDYWxsYmFjaywgb3B0aW9uYWwgRGljdGlvbmFy
eSBtZWRpYUNvbnN0cmFpbnRzKTsKKyAgICBbUmFpc2VzRXhjZXB0aW9uXSB2b2lkIGNyZWF0ZUFu
c3dlcihSVENTZXNzaW9uRGVzY3JpcHRpb25DYWxsYmFjayBzdWNjZXNzQ2FsbGJhY2ssIFtEZWZh
dWx0PVVuZGVmaW5lZF0gb3B0aW9uYWwgUlRDUGVlckNvbm5lY3Rpb25FcnJvckNhbGxiYWNrIGZh
aWx1cmVDYWxsYmFjaywgb3B0aW9uYWwgRGljdGlvbmFyeSBtZWRpYUNvbnN0cmFpbnRzKTsKIAot
ICAgIFtSYWlzZXNFeGNlcHRpb25dIHZvaWQgc2V0TG9jYWxEZXNjcmlwdGlvbihSVENTZXNzaW9u
RGVzY3JpcHRpb24gZGVzY3JpcHRpb24sIFtEZWZhdWx0PVVuZGVmaW5lZF0gb3B0aW9uYWwgVm9p
ZENhbGxiYWNrIHN1Y2Nlc3NDYWxsYmFjaywgW0RlZmF1bHQ9VW5kZWZpbmVkXSBvcHRpb25hbCBS
VENFcnJvckNhbGxiYWNrIGZhaWx1cmVDYWxsYmFjayk7CisgICAgW1JhaXNlc0V4Y2VwdGlvbl0g
dm9pZCBzZXRMb2NhbERlc2NyaXB0aW9uKFJUQ1Nlc3Npb25EZXNjcmlwdGlvbiBkZXNjcmlwdGlv
biwgW0RlZmF1bHQ9VW5kZWZpbmVkXSBvcHRpb25hbCBWb2lkQ2FsbGJhY2sgc3VjY2Vzc0NhbGxi
YWNrLCBbRGVmYXVsdD1VbmRlZmluZWRdIG9wdGlvbmFsIFJUQ1BlZXJDb25uZWN0aW9uRXJyb3JD
YWxsYmFjayBmYWlsdXJlQ2FsbGJhY2spOwogICAgIFtHZXR0ZXJSYWlzZXNFeGNlcHRpb25dIHJl
YWRvbmx5IGF0dHJpYnV0ZSBSVENTZXNzaW9uRGVzY3JpcHRpb24gbG9jYWxEZXNjcmlwdGlvbjsK
IAotICAgIFtSYWlzZXNFeGNlcHRpb25dIHZvaWQgc2V0UmVtb3RlRGVzY3JpcHRpb24oUlRDU2Vz
c2lvbkRlc2NyaXB0aW9uIGRlc2NyaXB0aW9uLCBbRGVmYXVsdD1VbmRlZmluZWRdIG9wdGlvbmFs
IFZvaWRDYWxsYmFjayBzdWNjZXNzQ2FsbGJhY2ssIFtEZWZhdWx0PVVuZGVmaW5lZF0gb3B0aW9u
YWwgUlRDRXJyb3JDYWxsYmFjayBmYWlsdXJlQ2FsbGJhY2spOworICAgIFtSYWlzZXNFeGNlcHRp
b25dIHZvaWQgc2V0UmVtb3RlRGVzY3JpcHRpb24oUlRDU2Vzc2lvbkRlc2NyaXB0aW9uIGRlc2Ny
aXB0aW9uLCBbRGVmYXVsdD1VbmRlZmluZWRdIG9wdGlvbmFsIFZvaWRDYWxsYmFjayBzdWNjZXNz
Q2FsbGJhY2ssIFtEZWZhdWx0PVVuZGVmaW5lZF0gb3B0aW9uYWwgUlRDUGVlckNvbm5lY3Rpb25F
cnJvckNhbGxiYWNrIGZhaWx1cmVDYWxsYmFjayk7CiAgICAgW0dldHRlclJhaXNlc0V4Y2VwdGlv
bl0gcmVhZG9ubHkgYXR0cmlidXRlIFJUQ1Nlc3Npb25EZXNjcmlwdGlvbiByZW1vdGVEZXNjcmlw
dGlvbjsKIAogICAgIHJlYWRvbmx5IGF0dHJpYnV0ZSBET01TdHJpbmcgc2lnbmFsaW5nU3RhdGU7
CiAKICAgICBbUmFpc2VzRXhjZXB0aW9uXSB2b2lkIHVwZGF0ZUljZShvcHRpb25hbCBEaWN0aW9u
YXJ5IGNvbmZpZ3VyYXRpb24sIG9wdGlvbmFsIERpY3Rpb25hcnkgbWVkaWFDb25zdHJhaW50cyk7
CiAKLSAgICBbUmFpc2VzRXhjZXB0aW9uXSB2b2lkIGFkZEljZUNhbmRpZGF0ZShSVENJY2VDYW5k
aWRhdGUgY2FuZGlkYXRlLCBWb2lkQ2FsbGJhY2sgc3VjY2Vzc0NhbGxiYWNrLCBSVENFcnJvckNh
bGxiYWNrIGZhaWx1cmVDYWxsYmFjayk7CisgICAgW1JhaXNlc0V4Y2VwdGlvbl0gdm9pZCBhZGRJ
Y2VDYW5kaWRhdGUoUlRDSWNlQ2FuZGlkYXRlIGNhbmRpZGF0ZSwgVm9pZENhbGxiYWNrIHN1Y2Nl
c3NDYWxsYmFjaywgUlRDUGVlckNvbm5lY3Rpb25FcnJvckNhbGxiYWNrIGZhaWx1cmVDYWxsYmFj
ayk7CiAKICAgICByZWFkb25seSBhdHRyaWJ1dGUgRE9NU3RyaW5nIGljZUdhdGhlcmluZ1N0YXRl
OwogICAgIHJlYWRvbmx5IGF0dHJpYnV0ZSBET01TdHJpbmcgaWNlQ29ubmVjdGlvblN0YXRlOwpk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9tZWRpYXN0cmVhbS9SVENQZWVyQ29u
bmVjdGlvbkVycm9yQ2FsbGJhY2suaCBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvbWVkaWFzdHJl
YW0vUlRDUGVlckNvbm5lY3Rpb25FcnJvckNhbGxiYWNrLmgKbmV3IGZpbGUgbW9kZSAxMDA2NDQK
aW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uYzJhZWNiYTBh
NGNkOWFhOWYyZTcyNjEwN2ZlNmZkMTcxZjIwNWVlYwotLS0gL2Rldi9udWxsCisrKyBiL1NvdXJj
ZS9XZWJDb3JlL01vZHVsZXMvbWVkaWFzdHJlYW0vUlRDUGVlckNvbm5lY3Rpb25FcnJvckNhbGxi
YWNrLmgKQEAgLTAsMCArMSw0NiBAQAorLyoKKyAqIENvcHlyaWdodCAoQykgMjAxMyBOb2tpYSBD
b3Jwb3JhdGlvbiBhbmQvb3IgaXRzIHN1YnNpZGlhcnkoLWllcykuCisgKgorICogUmVkaXN0cmli
dXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0
CisgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93
aW5nIGNvbmRpdGlvbnMKKyAqIGFyZSBtZXQ6CisgKiAxLiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291
cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0
aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgorICog
Mi4gUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92
ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRo
ZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKKyAqICAgIGRvY3VtZW50YXRpb24gYW5kL29y
IG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCisgKgorICog
VEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBUSEUgQ09QWVJJR0hUIEhPTERFUlMgQU5EIENP
TlRSSUJVVE9SUworICogIkFTIElTIiBBTkQgQU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5U
SUVTLCBJTkNMVURJTkcsIEJVVCBOT1QKKyAqIExJTUlURUQgVE8sIFRIRSBJTVBMSUVEIFdBUlJB
TlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUgorICogQSBQQVJUSUNVTEFS
IFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIFRIRSBDT1BZUklHSFQK
KyAqIE9XTkVSIE9SIENPTlRSSUJVVE9SUyBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElS
RUNULCBJTkNJREVOVEFMLAorICogU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFM
IERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVAorICogTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQg
T0YgU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsCisgKiBEQVRBLCBP
UiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBP
TiBBTlkKKyAqIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklD
VCBMSUFCSUxJVFksIE9SIFRPUlQKKyAqIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJ
U0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRQorICogT0YgVEhJUyBTT0ZUV0FS
RSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KKyAq
LworCisjaWZuZGVmIFJUQ1BlZXJDb25uZWN0aW9uRXJyb3JDYWxsYmFja19oCisjZGVmaW5lIFJU
Q1BlZXJDb25uZWN0aW9uRXJyb3JDYWxsYmFja19oCisKKyNpZiBFTkFCTEUoTUVESUFfU1RSRUFN
KQorCisjaW5jbHVkZSAiRE9NRXJyb3IuaCIKKyNpbmNsdWRlIDx3dGYvUmVmQ291bnRlZC5oPgor
CituYW1lc3BhY2UgV2ViQ29yZSB7CisKK2NsYXNzIFJUQ1BlZXJDb25uZWN0aW9uRXJyb3JDYWxs
YmFjayA6IHB1YmxpYyBSZWZDb3VudGVkPFJUQ1BlZXJDb25uZWN0aW9uRXJyb3JDYWxsYmFjaz4g
eworcHVibGljOgorICAgIHZpcnR1YWwgflJUQ1BlZXJDb25uZWN0aW9uRXJyb3JDYWxsYmFjaygp
IHsgfQorICAgIHZpcnR1YWwgYm9vbCBoYW5kbGVFdmVudChET01FcnJvciopID0gMDsKK307CisK
K30gLy8gbmFtZXNwYWNlIFdlYkNvcmUKKworI2VuZGlmIC8vIEVOQUJMRShNRURJQV9TVFJFQU0p
CisKKyNlbmRpZiAvLyBSVENQZWVyQ29ubmVjdGlvbkVycm9yQ2FsbGJhY2tfaApkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9tZWRpYXN0cmVhbS9SVENQZWVyQ29ubmVjdGlvbkVy
cm9yQ2FsbGJhY2suaWRsIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9tZWRpYXN0cmVhbS9SVENQ
ZWVyQ29ubmVjdGlvbkVycm9yQ2FsbGJhY2suaWRsCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4
IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjRiODdhZDdmZjA0ZTM3
M2NhNGMwMDM1ZGEyZjY0MjhiZjI4ZjA3MjIKLS0tIC9kZXYvbnVsbAorKysgYi9Tb3VyY2UvV2Vi
Q29yZS9Nb2R1bGVzL21lZGlhc3RyZWFtL1JUQ1BlZXJDb25uZWN0aW9uRXJyb3JDYWxsYmFjay5p
ZGwKQEAgLTAsMCArMSwzMSBAQAorLyoKKyAqIENvcHlyaWdodCAoQykgMjAxMyBOb2tpYSBDb3Jw
b3JhdGlvbiBhbmQvb3IgaXRzIHN1YnNpZGlhcnkoLWllcykuCisgKgorICogUmVkaXN0cmlidXRp
b24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0Cisg
KiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5n
IGNvbmRpdGlvbnMKKyAqIGFyZSBtZXQ6CisgKiAxLiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNl
IGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlz
IGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgorICogMi4g
UmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBj
b3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBm
b2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKKyAqICAgIGRvY3VtZW50YXRpb24gYW5kL29yIG90
aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCisgKgorICogVEhJ
UyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBUSEUgQ09QWVJJR0hUIEhPTERFUlMgQU5EIENPTlRS
SUJVVE9SUworICogIkFTIElTIiBBTkQgQU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVT
LCBJTkNMVURJTkcsIEJVVCBOT1QKKyAqIExJTUlURUQgVE8sIFRIRSBJTVBMSUVEIFdBUlJBTlRJ
RVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUgorICogQSBQQVJUSUNVTEFSIFBV
UlBPU0UgQVJFIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIFRIRSBDT1BZUklHSFQKKyAq
IE9XTkVSIE9SIENPTlRSSUJVVE9SUyBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNU
LCBJTkNJREVOVEFMLAorICogU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMIERB
TUFHRVMgKElOQ0xVRElORywgQlVUIE5PVAorICogTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0Yg
U1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsCisgKiBEQVRBLCBPUiBQ
Uk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBB
TlkKKyAqIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBM
SUFCSUxJVFksIE9SIFRPUlQKKyAqIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0Up
IEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRQorICogT0YgVEhJUyBTT0ZUV0FSRSwg
RVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KKyAqLwor
CitbCisgICAgQ29uZGl0aW9uYWw9TUVESUFfU1RSRUFNLAorXSBjYWxsYmFjayBpbnRlcmZhY2Ug
UlRDUGVlckNvbm5lY3Rpb25FcnJvckNhbGxiYWNrIHsKKyAgICBib29sZWFuIGhhbmRsZUV2ZW50
KERPTUVycm9yIGVycm9yKTsKK307CisKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL01vZHVs
ZXMvbWVkaWFzdHJlYW0vUlRDU2Vzc2lvbkRlc2NyaXB0aW9uUmVxdWVzdEltcGwuY3BwIGIvU291
cmNlL1dlYkNvcmUvTW9kdWxlcy9tZWRpYXN0cmVhbS9SVENTZXNzaW9uRGVzY3JpcHRpb25SZXF1
ZXN0SW1wbC5jcHAKaW5kZXggNDA4MWU5MzRhYTI0NTEyOWM4ZDlhYTA3NTkxMGU4OGUwNjVmMmNj
Ni4uODcyYTU0ZTE4YTExODU4NTAxNjQ2MzAwYzMwYzUxMmE0MTRiMzE3MSAxMDA2NDQKLS0tIGEv
U291cmNlL1dlYkNvcmUvTW9kdWxlcy9tZWRpYXN0cmVhbS9SVENTZXNzaW9uRGVzY3JpcHRpb25S
ZXF1ZXN0SW1wbC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9tZWRpYXN0cmVhbS9S
VENTZXNzaW9uRGVzY3JpcHRpb25SZXF1ZXN0SW1wbC5jcHAKQEAgLTEsNSArMSw2IEBACiAvKgog
ICogQ29weXJpZ2h0IChDKSAyMDEyIEdvb2dsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisg
KiBDb3B5cmlnaHQgKEMpIDIwMTMgTm9raWEgQ29ycG9yYXRpb24gYW5kL29yIGl0cyBzdWJzaWRp
YXJ5KC1pZXMpLgogICoKICAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBi
aW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAogICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0
dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCkBAIC0zNCwyMiArMzUs
MjIgQEAKIAogI2luY2x1ZGUgIlJUQ1Nlc3Npb25EZXNjcmlwdGlvblJlcXVlc3RJbXBsLmgiCiAK
LSNpbmNsdWRlICJSVENFcnJvckNhbGxiYWNrLmgiCiAjaW5jbHVkZSAiUlRDUGVlckNvbm5lY3Rp
b24uaCIKKyNpbmNsdWRlICJSVENQZWVyQ29ubmVjdGlvbkVycm9yQ2FsbGJhY2suaCIKICNpbmNs
dWRlICJSVENTZXNzaW9uRGVzY3JpcHRpb24uaCIKICNpbmNsdWRlICJSVENTZXNzaW9uRGVzY3Jp
cHRpb25DYWxsYmFjay5oIgogI2luY2x1ZGUgIlJUQ1Nlc3Npb25EZXNjcmlwdGlvbkRlc2NyaXB0
b3IuaCIKIAogbmFtZXNwYWNlIFdlYkNvcmUgewogCi1QYXNzUmVmUHRyPFJUQ1Nlc3Npb25EZXNj
cmlwdGlvblJlcXVlc3RJbXBsPiBSVENTZXNzaW9uRGVzY3JpcHRpb25SZXF1ZXN0SW1wbDo6Y3Jl
YXRlKFNjcmlwdEV4ZWN1dGlvbkNvbnRleHQqIGNvbnRleHQsIFBhc3NSZWZQdHI8UlRDU2Vzc2lv
bkRlc2NyaXB0aW9uQ2FsbGJhY2s+IHN1Y2Nlc3NDYWxsYmFjaywgUGFzc1JlZlB0cjxSVENFcnJv
ckNhbGxiYWNrPiBlcnJvckNhbGxiYWNrKQorUGFzc1JlZlB0cjxSVENTZXNzaW9uRGVzY3JpcHRp
b25SZXF1ZXN0SW1wbD4gUlRDU2Vzc2lvbkRlc2NyaXB0aW9uUmVxdWVzdEltcGw6OmNyZWF0ZShT
Y3JpcHRFeGVjdXRpb25Db250ZXh0KiBjb250ZXh0LCBQYXNzUmVmUHRyPFJUQ1Nlc3Npb25EZXNj
cmlwdGlvbkNhbGxiYWNrPiBzdWNjZXNzQ2FsbGJhY2ssIFBhc3NSZWZQdHI8UlRDUGVlckNvbm5l
Y3Rpb25FcnJvckNhbGxiYWNrPiBlcnJvckNhbGxiYWNrKQogewogICAgIFJlZlB0cjxSVENTZXNz
aW9uRGVzY3JpcHRpb25SZXF1ZXN0SW1wbD4gcmVxdWVzdCA9IGFkb3B0UmVmKG5ldyBSVENTZXNz
aW9uRGVzY3JpcHRpb25SZXF1ZXN0SW1wbChjb250ZXh0LCBzdWNjZXNzQ2FsbGJhY2ssIGVycm9y
Q2FsbGJhY2spKTsKICAgICByZXF1ZXN0LT5zdXNwZW5kSWZOZWVkZWQoKTsKICAgICByZXR1cm4g
cmVxdWVzdC5yZWxlYXNlKCk7CiB9CiAKLVJUQ1Nlc3Npb25EZXNjcmlwdGlvblJlcXVlc3RJbXBs
OjpSVENTZXNzaW9uRGVzY3JpcHRpb25SZXF1ZXN0SW1wbChTY3JpcHRFeGVjdXRpb25Db250ZXh0
KiBjb250ZXh0LCBQYXNzUmVmUHRyPFJUQ1Nlc3Npb25EZXNjcmlwdGlvbkNhbGxiYWNrPiBzdWNj
ZXNzQ2FsbGJhY2ssIFBhc3NSZWZQdHI8UlRDRXJyb3JDYWxsYmFjaz4gZXJyb3JDYWxsYmFjaykK
K1JUQ1Nlc3Npb25EZXNjcmlwdGlvblJlcXVlc3RJbXBsOjpSVENTZXNzaW9uRGVzY3JpcHRpb25S
ZXF1ZXN0SW1wbChTY3JpcHRFeGVjdXRpb25Db250ZXh0KiBjb250ZXh0LCBQYXNzUmVmUHRyPFJU
Q1Nlc3Npb25EZXNjcmlwdGlvbkNhbGxiYWNrPiBzdWNjZXNzQ2FsbGJhY2ssIFBhc3NSZWZQdHI8
UlRDUGVlckNvbm5lY3Rpb25FcnJvckNhbGxiYWNrPiBlcnJvckNhbGxiYWNrKQogICAgIDogQWN0
aXZlRE9NT2JqZWN0KGNvbnRleHQpCiAgICAgLCBtX3N1Y2Nlc3NDYWxsYmFjayhzdWNjZXNzQ2Fs
bGJhY2spCiAgICAgLCBtX2Vycm9yQ2FsbGJhY2soZXJyb3JDYWxsYmFjaykKQEAgLTczLDcgKzc0
LDcgQEAgdm9pZCBSVENTZXNzaW9uRGVzY3JpcHRpb25SZXF1ZXN0SW1wbDo6cmVxdWVzdFN1Y2Nl
ZWRlZChQYXNzUmVmUHRyPFJUQ1Nlc3Npb25EZXMKIHZvaWQgUlRDU2Vzc2lvbkRlc2NyaXB0aW9u
UmVxdWVzdEltcGw6OnJlcXVlc3RGYWlsZWQoY29uc3QgU3RyaW5nJiBlcnJvcikKIHsKICAgICBp
ZiAobV9lcnJvckNhbGxiYWNrKQotICAgICAgICBtX2Vycm9yQ2FsbGJhY2stPmhhbmRsZUV2ZW50
KGVycm9yKTsKKyAgICAgICAgbV9lcnJvckNhbGxiYWNrLT5oYW5kbGVFdmVudChET01FcnJvcjo6
Y3JlYXRlKGVycm9yKS5nZXQoKSk7CiAKICAgICBjbGVhcigpOwogfQpkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYkNvcmUvTW9kdWxlcy9tZWRpYXN0cmVhbS9SVENTZXNzaW9uRGVzY3JpcHRpb25SZXF1
ZXN0SW1wbC5oIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9tZWRpYXN0cmVhbS9SVENTZXNzaW9u
RGVzY3JpcHRpb25SZXF1ZXN0SW1wbC5oCmluZGV4IGQxYmNlZTAxMzUxM2FhNjdjMmIwNzZhOTA1
MDFlY2U4NTYyZTE2ZTAuLjI5ZGU2NDczOTE5OTZhMWQ1ZWQyNTNjYzM2NWQ1NGZjYTQ4YjM5NTEg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvbWVkaWFzdHJlYW0vUlRDU2Vzc2lv
bkRlc2NyaXB0aW9uUmVxdWVzdEltcGwuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL21l
ZGlhc3RyZWFtL1JUQ1Nlc3Npb25EZXNjcmlwdGlvblJlcXVlc3RJbXBsLmgKQEAgLTEsNSArMSw2
IEBACiAvKgogICogQ29weXJpZ2h0IChDKSAyMDEyIEdvb2dsZSBJbmMuIEFsbCByaWdodHMgcmVz
ZXJ2ZWQuCisgKiBDb3B5cmlnaHQgKEMpIDIwMTMgTm9raWEgQ29ycG9yYXRpb24gYW5kL29yIGl0
cyBzdWJzaWRpYXJ5KC1pZXMpLgogICoKICAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291
cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAogICogbW9kaWZpY2F0aW9uLCBh
cmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCkBAIC0z
OCwxMyArMzksMTMgQEAKIAogbmFtZXNwYWNlIFdlYkNvcmUgewogCi1jbGFzcyBSVENFcnJvckNh
bGxiYWNrOworY2xhc3MgUlRDUGVlckNvbm5lY3Rpb25FcnJvckNhbGxiYWNrOwogY2xhc3MgUlRD
UGVlckNvbm5lY3Rpb247CiBjbGFzcyBSVENTZXNzaW9uRGVzY3JpcHRpb25DYWxsYmFjazsKIAog
Y2xhc3MgUlRDU2Vzc2lvbkRlc2NyaXB0aW9uUmVxdWVzdEltcGwgOiBwdWJsaWMgUlRDU2Vzc2lv
bkRlc2NyaXB0aW9uUmVxdWVzdCwgcHVibGljIEFjdGl2ZURPTU9iamVjdCB7CiBwdWJsaWM6Ci0g
ICAgc3RhdGljIFBhc3NSZWZQdHI8UlRDU2Vzc2lvbkRlc2NyaXB0aW9uUmVxdWVzdEltcGw+IGNy
ZWF0ZShTY3JpcHRFeGVjdXRpb25Db250ZXh0KiwgUGFzc1JlZlB0cjxSVENTZXNzaW9uRGVzY3Jp
cHRpb25DYWxsYmFjaz4sIFBhc3NSZWZQdHI8UlRDRXJyb3JDYWxsYmFjaz4pOworICAgIHN0YXRp
YyBQYXNzUmVmUHRyPFJUQ1Nlc3Npb25EZXNjcmlwdGlvblJlcXVlc3RJbXBsPiBjcmVhdGUoU2Ny
aXB0RXhlY3V0aW9uQ29udGV4dCosIFBhc3NSZWZQdHI8UlRDU2Vzc2lvbkRlc2NyaXB0aW9uQ2Fs
bGJhY2s+LCBQYXNzUmVmUHRyPFJUQ1BlZXJDb25uZWN0aW9uRXJyb3JDYWxsYmFjaz4pOwogICAg
IHZpcnR1YWwgflJUQ1Nlc3Npb25EZXNjcmlwdGlvblJlcXVlc3RJbXBsKCk7CiAKICAgICB2aXJ0
dWFsIHZvaWQgcmVxdWVzdFN1Y2NlZWRlZChQYXNzUmVmUHRyPFJUQ1Nlc3Npb25EZXNjcmlwdGlv
bkRlc2NyaXB0b3I+KSBPVkVSUklERTsKQEAgLTU0LDEyICs1NSwxMiBAQCBwdWJsaWM6CiAgICAg
dmlydHVhbCB2b2lkIHN0b3AoKSBPVkVSUklERTsKIAogcHJpdmF0ZToKLSAgICBSVENTZXNzaW9u
RGVzY3JpcHRpb25SZXF1ZXN0SW1wbChTY3JpcHRFeGVjdXRpb25Db250ZXh0KiwgUGFzc1JlZlB0
cjxSVENTZXNzaW9uRGVzY3JpcHRpb25DYWxsYmFjaz4sIFBhc3NSZWZQdHI8UlRDRXJyb3JDYWxs
YmFjaz4pOworICAgIFJUQ1Nlc3Npb25EZXNjcmlwdGlvblJlcXVlc3RJbXBsKFNjcmlwdEV4ZWN1
dGlvbkNvbnRleHQqLCBQYXNzUmVmUHRyPFJUQ1Nlc3Npb25EZXNjcmlwdGlvbkNhbGxiYWNrPiwg
UGFzc1JlZlB0cjxSVENQZWVyQ29ubmVjdGlvbkVycm9yQ2FsbGJhY2s+KTsKIAogICAgIHZvaWQg
Y2xlYXIoKTsKIAogICAgIFJlZlB0cjxSVENTZXNzaW9uRGVzY3JpcHRpb25DYWxsYmFjaz4gbV9z
dWNjZXNzQ2FsbGJhY2s7Ci0gICAgUmVmUHRyPFJUQ0Vycm9yQ2FsbGJhY2s+IG1fZXJyb3JDYWxs
YmFjazsKKyAgICBSZWZQdHI8UlRDUGVlckNvbm5lY3Rpb25FcnJvckNhbGxiYWNrPiBtX2Vycm9y
Q2FsbGJhY2s7CiB9OwogCiB9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViQ29yZS9Nb2R1bGVzL21lZGlhc3RyZWFtL1JUQ1ZvaWRSZXF1ZXN0SW1wbC5jcHAgYi9T
b3VyY2UvV2ViQ29yZS9Nb2R1bGVzL21lZGlhc3RyZWFtL1JUQ1ZvaWRSZXF1ZXN0SW1wbC5jcHAK
aW5kZXggMTUwZTNlOWZmYmE3MjZjODRhN2NiN2U2NGFmNDJlYTcyZGE5ZTEyZi4uMTE2MTE1ODE4
YjJlOTY2NGZjYTExNWZiODA4MzU2MTAxYWYyYTczNCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNv
cmUvTW9kdWxlcy9tZWRpYXN0cmVhbS9SVENWb2lkUmVxdWVzdEltcGwuY3BwCisrKyBiL1NvdXJj
ZS9XZWJDb3JlL01vZHVsZXMvbWVkaWFzdHJlYW0vUlRDVm9pZFJlcXVlc3RJbXBsLmNwcApAQCAt
MSw1ICsxLDYgQEAKIC8qCiAgKiBDb3B5cmlnaHQgKEMpIDIwMTIgR29vZ2xlIEluYy4gQWxsIHJp
Z2h0cyByZXNlcnZlZC4KKyAqIENvcHlyaWdodCAoQykgMjAxMyBOb2tpYSBDb3Jwb3JhdGlvbiBh
bmQvb3IgaXRzIHN1YnNpZGlhcnkoLWllcykuCiAgKgogICogUmVkaXN0cmlidXRpb24gYW5kIHVz
ZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CiAgKiBtb2RpZmlj
YXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlv
bnMKQEAgLTM0LDIwICszNSwyMSBAQAogCiAjaW5jbHVkZSAiUlRDVm9pZFJlcXVlc3RJbXBsLmgi
CiAKLSNpbmNsdWRlICJSVENFcnJvckNhbGxiYWNrLmgiCisjaW5jbHVkZSAiRE9NRXJyb3IuaCIK
ICNpbmNsdWRlICJSVENQZWVyQ29ubmVjdGlvbi5oIgorI2luY2x1ZGUgIlJUQ1BlZXJDb25uZWN0
aW9uRXJyb3JDYWxsYmFjay5oIgogI2luY2x1ZGUgIlZvaWRDYWxsYmFjay5oIgogCiBuYW1lc3Bh
Y2UgV2ViQ29yZSB7CiAKLVBhc3NSZWZQdHI8UlRDVm9pZFJlcXVlc3RJbXBsPiBSVENWb2lkUmVx
dWVzdEltcGw6OmNyZWF0ZShTY3JpcHRFeGVjdXRpb25Db250ZXh0KiBjb250ZXh0LCBQYXNzUmVm
UHRyPFZvaWRDYWxsYmFjaz4gc3VjY2Vzc0NhbGxiYWNrLCBQYXNzUmVmUHRyPFJUQ0Vycm9yQ2Fs
bGJhY2s+IGVycm9yQ2FsbGJhY2spCitQYXNzUmVmUHRyPFJUQ1ZvaWRSZXF1ZXN0SW1wbD4gUlRD
Vm9pZFJlcXVlc3RJbXBsOjpjcmVhdGUoU2NyaXB0RXhlY3V0aW9uQ29udGV4dCogY29udGV4dCwg
UGFzc1JlZlB0cjxWb2lkQ2FsbGJhY2s+IHN1Y2Nlc3NDYWxsYmFjaywgUGFzc1JlZlB0cjxSVENQ
ZWVyQ29ubmVjdGlvbkVycm9yQ2FsbGJhY2s+IGVycm9yQ2FsbGJhY2spCiB7CiAgICAgUmVmUHRy
PFJUQ1ZvaWRSZXF1ZXN0SW1wbD4gcmVxdWVzdCA9IGFkb3B0UmVmKG5ldyBSVENWb2lkUmVxdWVz
dEltcGwoY29udGV4dCwgc3VjY2Vzc0NhbGxiYWNrLCBlcnJvckNhbGxiYWNrKSk7CiAgICAgcmVx
dWVzdC0+c3VzcGVuZElmTmVlZGVkKCk7CiAgICAgcmV0dXJuIHJlcXVlc3QucmVsZWFzZSgpOwog
fQogCi1SVENWb2lkUmVxdWVzdEltcGw6OlJUQ1ZvaWRSZXF1ZXN0SW1wbChTY3JpcHRFeGVjdXRp
b25Db250ZXh0KiBjb250ZXh0LCBQYXNzUmVmUHRyPFZvaWRDYWxsYmFjaz4gc3VjY2Vzc0NhbGxi
YWNrLCBQYXNzUmVmUHRyPFJUQ0Vycm9yQ2FsbGJhY2s+IGVycm9yQ2FsbGJhY2spCitSVENWb2lk
UmVxdWVzdEltcGw6OlJUQ1ZvaWRSZXF1ZXN0SW1wbChTY3JpcHRFeGVjdXRpb25Db250ZXh0KiBj
b250ZXh0LCBQYXNzUmVmUHRyPFZvaWRDYWxsYmFjaz4gc3VjY2Vzc0NhbGxiYWNrLCBQYXNzUmVm
UHRyPFJUQ1BlZXJDb25uZWN0aW9uRXJyb3JDYWxsYmFjaz4gZXJyb3JDYWxsYmFjaykKICAgICA6
IEFjdGl2ZURPTU9iamVjdChjb250ZXh0KQogICAgICwgbV9zdWNjZXNzQ2FsbGJhY2soc3VjY2Vz
c0NhbGxiYWNrKQogICAgICwgbV9lcnJvckNhbGxiYWNrKGVycm9yQ2FsbGJhY2spCkBAIC02OSw3
ICs3MSw3IEBAIHZvaWQgUlRDVm9pZFJlcXVlc3RJbXBsOjpyZXF1ZXN0U3VjY2VlZGVkKCkKIHZv
aWQgUlRDVm9pZFJlcXVlc3RJbXBsOjpyZXF1ZXN0RmFpbGVkKGNvbnN0IFN0cmluZyYgZXJyb3Ip
CiB7CiAgICAgaWYgKG1fZXJyb3JDYWxsYmFjay5nZXQoKSkKLSAgICAgICAgbV9lcnJvckNhbGxi
YWNrLT5oYW5kbGVFdmVudChlcnJvcik7CisgICAgICAgIG1fZXJyb3JDYWxsYmFjay0+aGFuZGxl
RXZlbnQoRE9NRXJyb3I6OmNyZWF0ZShlcnJvcikuZ2V0KCkpOwogCiAgICAgY2xlYXIoKTsKIH0K
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvbWVkaWFzdHJlYW0vUlRDVm9pZFJl
cXVlc3RJbXBsLmggYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL21lZGlhc3RyZWFtL1JUQ1ZvaWRS
ZXF1ZXN0SW1wbC5oCmluZGV4IDY1N2FiZmM3YzZiMzI5MmE1MzM0YzQxOWNmMmE0N2UyOTJmNzJj
YjYuLjIyNzU4MzM4NmU4YjA0Yjc1YWM1ZTQ0N2U4MjJlZTJkM2E5YmU1YTAgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvbWVkaWFzdHJlYW0vUlRDVm9pZFJlcXVlc3RJbXBsLmgK
KysrIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9tZWRpYXN0cmVhbS9SVENWb2lkUmVxdWVzdElt
cGwuaApAQCAtMSw1ICsxLDYgQEAKIC8qCiAgKiBDb3B5cmlnaHQgKEMpIDIwMTIgR29vZ2xlIElu
Yy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAqIENvcHlyaWdodCAoQykgMjAxMyBOb2tpYSBDb3Jw
b3JhdGlvbiBhbmQvb3IgaXRzIHN1YnNpZGlhcnkoLWllcykuCiAgKgogICogUmVkaXN0cmlidXRp
b24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CiAg
KiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5n
IGNvbmRpdGlvbnMKQEAgLTM4LDEyICszOSwxMiBAQAogCiBuYW1lc3BhY2UgV2ViQ29yZSB7CiAK
LWNsYXNzIFJUQ0Vycm9yQ2FsbGJhY2s7CitjbGFzcyBSVENQZWVyQ29ubmVjdGlvbkVycm9yQ2Fs
bGJhY2s7CiBjbGFzcyBWb2lkQ2FsbGJhY2s7CiAKIGNsYXNzIFJUQ1ZvaWRSZXF1ZXN0SW1wbCA6
IHB1YmxpYyBSVENWb2lkUmVxdWVzdCwgcHVibGljIEFjdGl2ZURPTU9iamVjdCB7CiBwdWJsaWM6
Ci0gICAgc3RhdGljIFBhc3NSZWZQdHI8UlRDVm9pZFJlcXVlc3RJbXBsPiBjcmVhdGUoU2NyaXB0
RXhlY3V0aW9uQ29udGV4dCosIFBhc3NSZWZQdHI8Vm9pZENhbGxiYWNrPiwgUGFzc1JlZlB0cjxS
VENFcnJvckNhbGxiYWNrPik7CisgICAgc3RhdGljIFBhc3NSZWZQdHI8UlRDVm9pZFJlcXVlc3RJ
bXBsPiBjcmVhdGUoU2NyaXB0RXhlY3V0aW9uQ29udGV4dCosIFBhc3NSZWZQdHI8Vm9pZENhbGxi
YWNrPiwgUGFzc1JlZlB0cjxSVENQZWVyQ29ubmVjdGlvbkVycm9yQ2FsbGJhY2s+KTsKICAgICB2
aXJ0dWFsIH5SVENWb2lkUmVxdWVzdEltcGwoKTsKIAogICAgIHZpcnR1YWwgdm9pZCByZXF1ZXN0
U3VjY2VlZGVkKCk7CkBAIC01MywxMiArNTQsMTIgQEAgcHVibGljOgogICAgIHZpcnR1YWwgdm9p
ZCBzdG9wKCkgT1ZFUlJJREU7CiAKIHByaXZhdGU6Ci0gICAgUlRDVm9pZFJlcXVlc3RJbXBsKFNj
cmlwdEV4ZWN1dGlvbkNvbnRleHQqLCBQYXNzUmVmUHRyPFZvaWRDYWxsYmFjaz4sIFBhc3NSZWZQ
dHI8UlRDRXJyb3JDYWxsYmFjaz4pOworICAgIFJUQ1ZvaWRSZXF1ZXN0SW1wbChTY3JpcHRFeGVj
dXRpb25Db250ZXh0KiwgUGFzc1JlZlB0cjxWb2lkQ2FsbGJhY2s+LCBQYXNzUmVmUHRyPFJUQ1Bl
ZXJDb25uZWN0aW9uRXJyb3JDYWxsYmFjaz4pOwogCiAgICAgdm9pZCBjbGVhcigpOwogCiAgICAg
UmVmUHRyPFZvaWRDYWxsYmFjaz4gbV9zdWNjZXNzQ2FsbGJhY2s7Ci0gICAgUmVmUHRyPFJUQ0Vy
cm9yQ2FsbGJhY2s+IG1fZXJyb3JDYWxsYmFjazsKKyAgICBSZWZQdHI8UlRDUGVlckNvbm5lY3Rp
b25FcnJvckNhbGxiYWNrPiBtX2Vycm9yQ2FsbGJhY2s7CiB9OwogCiB9IC8vIG5hbWVzcGFjZSBX
ZWJDb3JlCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9XZWJDb3JlLnhjb2RlcHJvai9wcm9q
ZWN0LnBieHByb2ogYi9Tb3VyY2UvV2ViQ29yZS9XZWJDb3JlLnhjb2RlcHJvai9wcm9qZWN0LnBi
eHByb2oKaW5kZXggYzE0M2VmODU1NzIxMTk1Y2I3ODM5MGRlYmEyODM5MTczZjI2MmEwZi4uYTA5
MGNjZTM5YjRjOTQxOWNkMmIwY2M1ZTE1NTMzMmJkZjU3ZGQ4MCAxMDA2NDQKLS0tIGEvU291cmNl
L1dlYkNvcmUvV2ViQ29yZS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qCisrKyBiL1NvdXJjZS9X
ZWJDb3JlL1dlYkNvcmUueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvagpAQCAtMjI4LDcgKzIyOCw2
IEBACiAJCTA3OEUwOTFGMTdEMTREMUMwMDQyMEFBMSAvKiBSVENEYXRhQ2hhbm5lbEV2ZW50Lmgg
aW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAwNzIyMUI2NzE3
Q0VDMzI3MDA4NDhFNTEgLyogUlRDRGF0YUNoYW5uZWxFdmVudC5oICovOyBzZXR0aW5ncyA9IHtB
VFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CiAJCTA3OEUwOTIwMTdEMTREMUMwMDQyMEFB
MSAvKiBSVENEVE1GU2VuZGVyLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7
IGZpbGVSZWYgPSAwNzIyMUI2QTE3Q0VDMzI3MDA4NDhFNTEgLyogUlRDRFRNRlNlbmRlci5oICov
OyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CiAJCTA3OEUwOTIx
MTdEMTREMUMwMDQyMEFBMSAvKiBSVENEVE1GVG9uZUNoYW5nZUV2ZW50LmggaW4gSGVhZGVycyAq
LyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAwNzIyMUI2RDE3Q0VDMzI3MDA4NDhF
NTEgLyogUlRDRFRNRlRvbmVDaGFuZ2VFdmVudC5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVT
ID0gKFByaXZhdGUsICk7IH07IH07Ci0JCTA3OEUwOTIyMTdEMTREMUMwMDQyMEFBMSAvKiBSVENF
cnJvckNhbGxiYWNrLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVS
ZWYgPSAwNzIyMUI2RjE3Q0VDMzI3MDA4NDhFNTEgLyogUlRDRXJyb3JDYWxsYmFjay5oICovOyBz
ZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CiAJCTA3OEUwOTIzMTdE
MTREMUMwMDQyMEFBMSAvKiBSVENJY2VDYW5kaWRhdGUuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9
IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDA3MjIxQjcyMTdDRUMzMjcwMDg0OEU1MSAvKiBSVENJ
Y2VDYW5kaWRhdGUuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9
OyB9OwogCQkwNzhFMDkyNDE3RDE0RDFDMDA0MjBBQTEgLyogUlRDSWNlQ2FuZGlkYXRlRXZlbnQu
aCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDA3MjIxQjc1
MTdDRUMzMjcwMDg0OEU1MSAvKiBSVENJY2VDYW5kaWRhdGVFdmVudC5oICovOyBzZXR0aW5ncyA9
IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CiAJCTA3OEUwOTI1MTdEMTREMUMwMDQy
MEFBMSAvKiBSVENQZWVyQ29ubmVjdGlvbi5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVp
bGRGaWxlOyBmaWxlUmVmID0gMDcyMjFCNzgxN0NFQzMyNzAwODQ4RTUxIC8qIFJUQ1BlZXJDb25u
ZWN0aW9uLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsK
QEAgLTI3OCw4ICsyNzcsOCBAQAogCQkwNzk2OURCMDE3RDE0MTUxMDA3RkY4NDIgLyogSlNSVENE
VE1GU2VuZGVyLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYg
PSAwNzk2OUQ5NjE3RDE0MTUxMDA3RkY4NDIgLyogSlNSVENEVE1GU2VuZGVyLmggKi87IH07CiAJ
CTA3OTY5REIxMTdEMTQxNTEwMDdGRjg0MiAvKiBKU1JUQ0RUTUZUb25lQ2hhbmdlRXZlbnQuY3Bw
IGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMDc5NjlEOTcx
N0QxNDE1MTAwN0ZGODQyIC8qIEpTUlRDRFRNRlRvbmVDaGFuZ2VFdmVudC5jcHAgKi87IH07CiAJ
CTA3OTY5REIyMTdEMTQxNTEwMDdGRjg0MiAvKiBKU1JUQ0RUTUZUb25lQ2hhbmdlRXZlbnQuaCBp
biBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDA3OTY5RDk4MTdE
MTQxNTEwMDdGRjg0MiAvKiBKU1JUQ0RUTUZUb25lQ2hhbmdlRXZlbnQuaCAqLzsgfTsKLQkJMDc5
NjlEQjMxN0QxNDE1MTAwN0ZGODQyIC8qIEpTUlRDRXJyb3JDYWxsYmFjay5jcHAgaW4gU291cmNl
cyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAwNzk2OUQ5OTE3RDE0MTUxMDA3
RkY4NDIgLyogSlNSVENFcnJvckNhbGxiYWNrLmNwcCAqLzsgfTsKLQkJMDc5NjlEQjQxN0QxNDE1
MTAwN0ZGODQyIC8qIEpTUlRDRXJyb3JDYWxsYmFjay5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0g
UEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMDc5NjlEOUExN0QxNDE1MTAwN0ZGODQyIC8qIEpTUlRD
RXJyb3JDYWxsYmFjay5oICovOyB9OworCQkwNzk2OURCMzE3RDE0MTUxMDA3RkY4NDIgLyogSlNS
VENQZWVyQ29ubmVjdGlvbkVycm9yQ2FsbGJhY2suY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0g
UEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMDc5NjlEOTkxN0QxNDE1MTAwN0ZGODQyIC8qIEpTUlRD
UGVlckNvbm5lY3Rpb25FcnJvckNhbGxiYWNrLmNwcCAqLzsgfTsKKwkJMDc5NjlEQjQxN0QxNDE1
MTAwN0ZGODQyIC8qIEpTUlRDUGVlckNvbm5lY3Rpb25FcnJvckNhbGxiYWNrLmggaW4gSGVhZGVy
cyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAwNzk2OUQ5QTE3RDE0MTUxMDA3
RkY4NDIgLyogSlNSVENQZWVyQ29ubmVjdGlvbkVycm9yQ2FsbGJhY2suaCAqLzsgfTsKIAkJMDc5
NjlEQjUxN0QxNDE1MTAwN0ZGODQyIC8qIEpTUlRDSWNlQ2FuZGlkYXRlLmNwcCBpbiBTb3VyY2Vz
ICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDA3OTY5RDlCMTdEMTQxNTEwMDdG
Rjg0MiAvKiBKU1JUQ0ljZUNhbmRpZGF0ZS5jcHAgKi87IH07CiAJCTA3OTY5REI2MTdEMTQxNTEw
MDdGRjg0MiAvKiBKU1JUQ0ljZUNhbmRpZGF0ZS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJY
QnVpbGRGaWxlOyBmaWxlUmVmID0gMDc5NjlEOUMxN0QxNDE1MTAwN0ZGODQyIC8qIEpTUlRDSWNl
Q2FuZGlkYXRlLmggKi87IH07CiAJCTA3OTY5REI3MTdEMTQxNTEwMDdGRjg0MiAvKiBKU1JUQ0lj
ZUNhbmRpZGF0ZUV2ZW50LmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsg
ZmlsZVJlZiA9IDA3OTY5RDlEMTdEMTQxNTEwMDdGRjg0MiAvKiBKU1JUQ0ljZUNhbmRpZGF0ZUV2
ZW50LmNwcCAqLzsgfTsKQEAgLTY3MjIsOCArNjcyMSw2IEBACiAJCTA3MjIxQjZDMTdDRUMzMjcw
MDg0OEU1MSAvKiBSVENEVE1GVG9uZUNoYW5nZUV2ZW50LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxl
UmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNv
ZGUuY3BwLmNwcDsgcGF0aCA9IFJUQ0RUTUZUb25lQ2hhbmdlRXZlbnQuY3BwOyBzb3VyY2VUcmVl
ID0gIjxncm91cD4iOyB9OwogCQkwNzIyMUI2RDE3Q0VDMzI3MDA4NDhFNTEgLyogUlRDRFRNRlRv
bmVDaGFuZ2VFdmVudC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGlu
ZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBSVENEVE1G
VG9uZUNoYW5nZUV2ZW50Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTA3MjIxQjZF
MTdDRUMzMjcwMDg0OEU1MSAvKiBSVENEVE1GVG9uZUNoYW5nZUV2ZW50LmlkbCAqLyA9IHtpc2Eg
PSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9
IHRleHQ7IHBhdGggPSBSVENEVE1GVG9uZUNoYW5nZUV2ZW50LmlkbDsgc291cmNlVHJlZSA9ICI8
Z3JvdXA+IjsgfTsKLQkJMDcyMjFCNkYxN0NFQzMyNzAwODQ4RTUxIC8qIFJUQ0Vycm9yQ2FsbGJh
Y2suaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0
S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gUlRDRXJyb3JDYWxsYmFjay5o
OyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwotCQkwNzIyMUI3MDE3Q0VDMzI3MDA4NDhFNTEg
LyogUlRDRXJyb3JDYWxsYmFjay5pZGwgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmls
ZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSB0ZXh0OyBwYXRoID0gUlRDRXJyb3JD
YWxsYmFjay5pZGw7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTA3MjIxQjcxMTdDRUMz
MjcwMDg0OEU1MSAvKiBSVENJY2VDYW5kaWRhdGUuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZl
cmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5j
cHAuY3BwOyBwYXRoID0gUlRDSWNlQ2FuZGlkYXRlLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+
IjsgfTsKIAkJMDcyMjFCNzIxN0NFQzMyNzAwODQ4RTUxIC8qIFJUQ0ljZUNhbmRpZGF0ZS5oICov
ID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZp
bGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBSVENJY2VDYW5kaWRhdGUuaDsgc291cmNl
VHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJMDcyMjFCNzMxN0NFQzMyNzAwODQ4RTUxIC8qIFJUQ0lj
ZUNhbmRpZGF0ZS5pZGwgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5n
ID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSB0ZXh0OyBwYXRoID0gUlRDSWNlQ2FuZGlkYXRlLmlk
bDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKQEAgLTY4NTcsOCArNjg1NCw4IEBACiAJCTA3
OTY5RDk2MTdEMTQxNTEwMDdGRjg0MiAvKiBKU1JUQ0RUTUZTZW5kZXIuaCAqLyA9IHtpc2EgPSBQ
QlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNv
dXJjZWNvZGUuYy5oOyBwYXRoID0gSlNSVENEVE1GU2VuZGVyLmg7IHNvdXJjZVRyZWUgPSAiPGdy
b3VwPiI7IH07CiAJCTA3OTY5RDk3MTdEMTQxNTEwMDdGRjg0MiAvKiBKU1JUQ0RUTUZUb25lQ2hh
bmdlRXZlbnQuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9
IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gSlNSVENE
VE1GVG9uZUNoYW5nZUV2ZW50LmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJMDc5
NjlEOTgxN0QxNDE1MTAwN0ZGODQyIC8qIEpTUlRDRFRNRlRvbmVDaGFuZ2VFdmVudC5oICovID0g
e2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVU
eXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBKU1JUQ0RUTUZUb25lQ2hhbmdlRXZlbnQuaDsg
c291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKLQkJMDc5NjlEOTkxN0QxNDE1MTAwN0ZGODQyIC8q
IEpTUlRDRXJyb3JDYWxsYmFjay5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmls
ZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBh
dGggPSBKU1JUQ0Vycm9yQ2FsbGJhY2suY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9Owot
CQkwNzk2OUQ5QTE3RDE0MTUxMDA3RkY4NDIgLyogSlNSVENFcnJvckNhbGxiYWNrLmggKi8gPSB7
aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5
cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEpTUlRDRXJyb3JDYWxsYmFjay5oOyBzb3VyY2VU
cmVlID0gIjxncm91cD4iOyB9OworCQkwNzk2OUQ5OTE3RDE0MTUxMDA3RkY4NDIgLyogSlNSVENQ
ZWVyQ29ubmVjdGlvbkVycm9yQ2FsbGJhY2suY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVu
Y2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAu
Y3BwOyBwYXRoID0gSlNSVENQZWVyQ29ubmVjdGlvbkVycm9yQ2FsbGJhY2suY3BwOyBzb3VyY2VU
cmVlID0gIjxncm91cD4iOyB9OworCQkwNzk2OUQ5QTE3RDE0MTUxMDA3RkY4NDIgLyogSlNSVENQ
ZWVyQ29ubmVjdGlvbkVycm9yQ2FsbGJhY2suaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNl
OyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBw
YXRoID0gSlNSVENQZWVyQ29ubmVjdGlvbkVycm9yQ2FsbGJhY2suaDsgc291cmNlVHJlZSA9ICI8
Z3JvdXA+IjsgfTsKIAkJMDc5NjlEOUIxN0QxNDE1MTAwN0ZGODQyIC8qIEpTUlRDSWNlQ2FuZGlk
YXRlLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBs
YXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEpTUlRDSWNlQ2Fu
ZGlkYXRlLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJMDc5NjlEOUMxN0QxNDE1
MTAwN0ZGODQyIC8qIEpTUlRDSWNlQ2FuZGlkYXRlLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVy
ZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMu
aDsgcGF0aCA9IEpTUlRDSWNlQ2FuZGlkYXRlLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07
CiAJCTA3OTY5RDlEMTdEMTQxNTEwMDdGRjg0MiAvKiBKU1JUQ0ljZUNhbmRpZGF0ZUV2ZW50LmNw
cCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25v
d25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEpTUlRDSWNlQ2FuZGlkYXRl
RXZlbnQuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwpAQCAtODMwNCw2ICs4MzAxLDgg
QEAKIAkJNEE2RTlGQzUxM0MxN0Q1NzAwNDZBN0Y4IC8qIEZvbnRGZWF0dXJlU2V0dGluZ3MuY3Bw
ICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93
bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gRm9udEZlYXR1cmVTZXR0aW5n
cy5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTRBNkU5RkM2MTNDMTdENTcwMDQ2
QTdGOCAvKiBGb250RmVhdHVyZVNldHRpbmdzLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5j
ZTsgZXhwbGljaXRGaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBmaWxlRW5jb2RpbmcgPSA0OyBw
YXRoID0gRm9udEZlYXR1cmVTZXR0aW5ncy5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9Owog
CQk0QThDOTZFQTBCRTY5MDMyMDA0RUVGRjAgLyogRnJhbWVTZWxlY3Rpb25NYWMubW0gKi8gPSB7
aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gMzA7IGxhc3RLbm93bkZpbGVU
eXBlID0gc291cmNlY29kZS5jcHAub2JqY3BwOyBuYW1lID0gRnJhbWVTZWxlY3Rpb25NYWMubW07
IHBhdGggPSBtYWMvRnJhbWVTZWxlY3Rpb25NYWMubW07IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7
IH07CisJCTRBOTc1NTM1MTg1OEVEOUIwMEJENkQxNSAvKiBSVENQZWVyQ29ubmVjdGlvbkVycm9y
Q2FsbGJhY2suaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0
OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gUlRDUGVlckNvbm5l
Y3Rpb25FcnJvckNhbGxiYWNrLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTRBOTc1
NTM2MTg1OEVEOUIwMEJENkQxNSAvKiBSVENQZWVyQ29ubmVjdGlvbkVycm9yQ2FsbGJhY2suaWRs
ICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93
bkZpbGVUeXBlID0gdGV4dDsgcGF0aCA9IFJUQ1BlZXJDb25uZWN0aW9uRXJyb3JDYWxsYmFjay5p
ZGw7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTRBOUNDODE1MTZCQjlBQzYwMEVDNjQ1
QSAvKiBDU1NEZWZhdWx0U3R5bGVTaGVldHMuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVu
Y2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAu
Y3BwOyBwYXRoID0gQ1NTRGVmYXVsdFN0eWxlU2hlZXRzLmNwcDsgc291cmNlVHJlZSA9ICI8Z3Jv
dXA+IjsgfTsKIAkJNEE5Q0M4MTYxNkJCOUFDNjAwRUM2NDVBIC8qIENTU0RlZmF1bHRTdHlsZVNo
ZWV0cy5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxh
c3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBDU1NEZWZhdWx0U3R5bGVT
aGVldHMuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJNEE5Q0M4MUUxNkJGOUJCNDAw
RUM2NDVBIC8qIEluc3BlY3RvckNTU09NV3JhcHBlcnMuY3BwICovID0ge2lzYSA9IFBCWEZpbGVS
ZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29k
ZS5jcHAuY3BwOyBwYXRoID0gSW5zcGVjdG9yQ1NTT01XcmFwcGVycy5jcHA7IHNvdXJjZVRyZWUg
PSAiPGdyb3VwPiI7IH07CkBAIC0xMzY1Myw2ICsxMzY1Miw4IEBACiAJCTA3MjIxQjQ2MTdDRUMz
MjcwMDg0OEU1MSAvKiBtZWRpYXN0cmVhbSAqLyA9IHsKIAkJCWlzYSA9IFBCWEdyb3VwOwogCQkJ
Y2hpbGRyZW4gPSAoCisJCQkJNEE5NzU1MzUxODU4RUQ5QjAwQkQ2RDE1IC8qIFJUQ1BlZXJDb25u
ZWN0aW9uRXJyb3JDYWxsYmFjay5oICovLAorCQkJCTRBOTc1NTM2MTg1OEVEOUIwMEJENkQxNSAv
KiBSVENQZWVyQ29ubmVjdGlvbkVycm9yQ2FsbGJhY2suaWRsICovLAogCQkJCTA3NzlCRjBBMTg0
NTMxNjgwMDBCNkFFNyAvKiBIVE1MTWVkaWFFbGVtZW50TWVkaWFTdHJlYW0uY3BwICovLAogCQkJ
CTA3NzlCRjBCMTg0NTMxNjgwMDBCNkFFNyAvKiBIVE1MTWVkaWFFbGVtZW50TWVkaWFTdHJlYW0u
aCAqLywKIAkJCQkwNzc5QkYwQzE4NDUzMTY4MDAwQjZBRTcgLyogSFRNTE1lZGlhRWxlbWVudE1l
ZGlhU3RyZWFtLmlkbCAqLywKQEAgLTEzNzI2LDggKzEzNzI3LDYgQEAKIAkJCQkwNzIyMUI2QzE3
Q0VDMzI3MDA4NDhFNTEgLyogUlRDRFRNRlRvbmVDaGFuZ2VFdmVudC5jcHAgKi8sCiAJCQkJMDcy
MjFCNkQxN0NFQzMyNzAwODQ4RTUxIC8qIFJUQ0RUTUZUb25lQ2hhbmdlRXZlbnQuaCAqLywKIAkJ
CQkwNzIyMUI2RTE3Q0VDMzI3MDA4NDhFNTEgLyogUlRDRFRNRlRvbmVDaGFuZ2VFdmVudC5pZGwg
Ki8sCi0JCQkJMDcyMjFCNkYxN0NFQzMyNzAwODQ4RTUxIC8qIFJUQ0Vycm9yQ2FsbGJhY2suaCAq
LywKLQkJCQkwNzIyMUI3MDE3Q0VDMzI3MDA4NDhFNTEgLyogUlRDRXJyb3JDYWxsYmFjay5pZGwg
Ki8sCiAJCQkJMDcyMjFCNzExN0NFQzMyNzAwODQ4RTUxIC8qIFJUQ0ljZUNhbmRpZGF0ZS5jcHAg
Ki8sCiAJCQkJMDcyMjFCNzIxN0NFQzMyNzAwODQ4RTUxIC8qIFJUQ0ljZUNhbmRpZGF0ZS5oICov
LAogCQkJCTA3MjIxQjczMTdDRUMzMjcwMDg0OEU1MSAvKiBSVENJY2VDYW5kaWRhdGUuaWRsICov
LApAQCAtMTM4OTYsOCArMTM4OTUsOCBAQAogCQkJCTA3OTY5RDk2MTdEMTQxNTEwMDdGRjg0MiAv
KiBKU1JUQ0RUTUZTZW5kZXIuaCAqLywKIAkJCQkwNzk2OUQ5NzE3RDE0MTUxMDA3RkY4NDIgLyog
SlNSVENEVE1GVG9uZUNoYW5nZUV2ZW50LmNwcCAqLywKIAkJCQkwNzk2OUQ5ODE3RDE0MTUxMDA3
RkY4NDIgLyogSlNSVENEVE1GVG9uZUNoYW5nZUV2ZW50LmggKi8sCi0JCQkJMDc5NjlEOTkxN0Qx
NDE1MTAwN0ZGODQyIC8qIEpTUlRDRXJyb3JDYWxsYmFjay5jcHAgKi8sCi0JCQkJMDc5NjlEOUEx
N0QxNDE1MTAwN0ZGODQyIC8qIEpTUlRDRXJyb3JDYWxsYmFjay5oICovLAorCQkJCTA3OTY5RDk5
MTdEMTQxNTEwMDdGRjg0MiAvKiBKU1JUQ1BlZXJDb25uZWN0aW9uRXJyb3JDYWxsYmFjay5jcHAg
Ki8sCisJCQkJMDc5NjlEOUExN0QxNDE1MTAwN0ZGODQyIC8qIEpTUlRDUGVlckNvbm5lY3Rpb25F
cnJvckNhbGxiYWNrLmggKi8sCiAJCQkJMDc5NjlEOUIxN0QxNDE1MTAwN0ZGODQyIC8qIEpTUlRD
SWNlQ2FuZGlkYXRlLmNwcCAqLywKIAkJCQkwNzk2OUQ5QzE3RDE0MTUxMDA3RkY4NDIgLyogSlNS
VENJY2VDYW5kaWRhdGUuaCAqLywKIAkJCQkwNzk2OUQ5RDE3RDE0MTUxMDA3RkY4NDIgLyogSlNS
VENJY2VDYW5kaWRhdGVFdmVudC5jcHAgKi8sCkBAIC0yMzI0MSw3ICsyMzI0MCw3IEBACiAJCQkJ
QThFQTdDQUYwQTE5MkI5QzAwQThFRjVGIC8qIEhUTUxIUkVsZW1lbnQuaCBpbiBIZWFkZXJzICov
LAogCQkJCUE4NzFERTI3MEExNTJBQzgwMEIxMkE2OCAvKiBIVE1MSHRtbEVsZW1lbnQuaCBpbiBI
ZWFkZXJzICovLAogCQkJCUE4OTU3MEEwMTZFOUJENTkwMDE4NEU1NSAvKiBIVE1MSWRlbnRpZmll
ci5oIGluIEhlYWRlcnMgKi8sCi0JCQkJMDc5NjlEQjQxN0QxNDE1MTAwN0ZGODQyIC8qIEpTUlRD
RXJyb3JDYWxsYmFjay5oIGluIEhlYWRlcnMgKi8sCisJCQkJMDc5NjlEQjQxN0QxNDE1MTAwN0ZG
ODQyIC8qIEpTUlRDUGVlckNvbm5lY3Rpb25FcnJvckNhbGxiYWNrLmggaW4gSGVhZGVycyAqLywK
IAkJCQlBODcxREUyQTBBMTUyQUM4MDBCMTJBNjggLyogSFRNTElGcmFtZUVsZW1lbnQuaCBpbiBI
ZWFkZXJzICovLAogCQkJCUE4RUE3RDJEMEExOTM4NTUwMEE4RUY1RiAvKiBIVE1MSW1hZ2VFbGVt
ZW50LmggaW4gSGVhZGVycyAqLywKIAkJCQlBOEVBN0QyQjBBMTkzODU1MDBBOEVGNUYgLyogSFRN
TEltYWdlTG9hZGVyLmggaW4gSGVhZGVycyAqLywKQEAgLTIzODMxLDcgKzIzODMwLDYgQEAKIAkJ
CQlCMkZBM0Q5MzBBQjc1QTZGMDAwRTVBQzQgLyogSlNTVkdGRVRpbGVFbGVtZW50LmggaW4gSGVh
ZGVycyAqLywKIAkJCQlCMkZBM0Q5NTBBQjc1QTZGMDAwRTVBQzQgLyogSlNTVkdGRVR1cmJ1bGVu
Y2VFbGVtZW50LmggaW4gSGVhZGVycyAqLywKIAkJCQlCMkZBM0Q5NzBBQjc1QTZGMDAwRTVBQzQg
LyogSlNTVkdGaWx0ZXJFbGVtZW50LmggaW4gSGVhZGVycyAqLywKLQkJCQkwNzhFMDkyMjE3RDE0
RDFDMDA0MjBBQTEgLyogUlRDRXJyb3JDYWxsYmFjay5oIGluIEhlYWRlcnMgKi8sCiAJCQkJQjI3
QjI4MjYwQ0VGMEMwNzAwRDM5RDU0IC8qIEpTU1ZHRm9udEVsZW1lbnQuaCBpbiBIZWFkZXJzICov
LAogCQkJCUE4M0I3OTA1MENDQUZGMTUwMDBCMDgyNSAvKiBKU1NWR0ZvbnRGYWNlRWxlbWVudC5o
IGluIEhlYWRlcnMgKi8sCiAJCQkJQTgzQjc5MDAwQ0NBRkYxNTAwMEIwODI1IC8qIEpTU1ZHRm9u
dEZhY2VGb3JtYXRFbGVtZW50LmggaW4gSGVhZGVycyAqLywKQEAgLTI2ODUyLDcgKzI2ODUwLDcg
QEAKIAkJCQk4OTg3ODVGNDEyMkUxRUFDMDAzQUFCREEgLyogSlNGaWxlUmVhZGVyU3luYy5jcHAg
aW4gU291cmNlcyAqLywKIAkJCQlCNkQ5RDI3QzE0RUFDMDg2MDA5MEQ3NUUgLyogSlNGb2N1c0V2
ZW50LmNwcCBpbiBTb3VyY2VzICovLAogCQkJCUZEQTE1RUFCMTJCMDNFRTEwMDNBNTgzQSAvKiBK
U0dhaW5Ob2RlLmNwcCBpbiBTb3VyY2VzICovLAotCQkJCTA3OTY5REIzMTdEMTQxNTEwMDdGRjg0
MiAvKiBKU1JUQ0Vycm9yQ2FsbGJhY2suY3BwIGluIFNvdXJjZXMgKi8sCisJCQkJMDc5NjlEQjMx
N0QxNDE1MTAwN0ZGODQyIC8qIEpTUlRDUGVlckNvbm5lY3Rpb25FcnJvckNhbGxiYWNrLmNwcCBp
biBTb3VyY2VzICovLAogCQkJCUZFODBEQTYzMEU5QzQ3MDMwMDBENkY3NSAvKiBKU0dlb2xvY2F0
aW9uLmNwcCBpbiBTb3VyY2VzICovLAogCQkJCUZFODBEN0FCMEU5QzFFRDIwMDBENkY3NSAvKiBK
U0dlb2xvY2F0aW9uQ3VzdG9tLmNwcCBpbiBTb3VyY2VzICovLAogCQkJCUZFODBEQTY1MEU5QzQ3
MDMwMDBENkY3NSAvKiBKU0dlb3Bvc2l0aW9uLmNwcCBpbiBTb3VyY2VzICovLApkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbWVkaWFzdHJlYW0vUlRDUGVlckNvbm5lY3Rpb25I
YW5kbGVyLmNwcCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL21lZGlhc3RyZWFtL1JUQ1BlZXJD
b25uZWN0aW9uSGFuZGxlci5jcHAKaW5kZXggNTJiODZlMTdmMjQ1ZDM2YjU2YjU5ZDhkMzNjYzkz
MTdjYTI3OWFhZC4uZjVhMzZhM2JlNDc4NzJlMGVjMDgzY2YyZDBmYWQ3MGE4YjAxZWNhZSAxMDA2
NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbWVkaWFzdHJlYW0vUlRDUGVlckNvbm5l
Y3Rpb25IYW5kbGVyLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9tZWRpYXN0cmVh
bS9SVENQZWVyQ29ubmVjdGlvbkhhbmRsZXIuY3BwCkBAIC0xLDUgKzEsNiBAQAogLyoKICAqIENv
cHlyaWdodCAoQykgMjAxMiBHb29nbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICogQ29w
eXJpZ2h0IChDKSAyMDEzIE5va2lhIENvcnBvcmF0aW9uIGFuZC9vciBpdHMgc3Vic2lkaWFyeSgt
aWVzKS4KICAqCiAgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5
IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKICAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBw
cm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucyBhcmUKQEAgLTM0LDYgKzM1LDgg
QEAKIAogI2luY2x1ZGUgIlJUQ1BlZXJDb25uZWN0aW9uSGFuZGxlci5oIgogCisjaW5jbHVkZSA8
d3RmL05ldmVyRGVzdHJveWVkLmg+CisKIG5hbWVzcGFjZSBXZWJDb3JlIHsKIGNsYXNzIFJUQ1Bl
ZXJDb25uZWN0aW9uSGFuZGxlckNsaWVudDsKIApAQCAtNDQsNiArNDcsMzAgQEAgc3RhdGljIHN0
ZDo6dW5pcXVlX3B0cjxSVENQZWVyQ29ubmVjdGlvbkhhbmRsZXI+IGNyZWF0ZUhhbmRsZXIoUlRD
UGVlckNvbm5lY3Rpb24KIAogQ3JlYXRlUGVlckNvbm5lY3Rpb25IYW5kbGVyIFJUQ1BlZXJDb25u
ZWN0aW9uSGFuZGxlcjo6Y3JlYXRlID0gY3JlYXRlSGFuZGxlcjsKIAorY29uc3QgQXRvbWljU3Ry
aW5nJiBSVENQZWVyQ29ubmVjdGlvbkhhbmRsZXI6OmluY29tcGF0aWJsZUNvbnN0cmFpbnRzRXJy
b3JOYW1lKCkKK3sKKyAgICBzdGF0aWMgTmV2ZXJEZXN0cm95ZWQ8QXRvbWljU3RyaW5nPiBpbmNv
bXBhdGlibGVDb25zdHJhaW50cygiSW5jb21wYXRpYmxlQ29uc3RyYWludHNFcnJvciIsIEF0b21p
Y1N0cmluZzo6Q29uc3RydWN0RnJvbUxpdGVyYWwpOworICAgIHJldHVybiBpbmNvbXBhdGlibGVD
b25zdHJhaW50czsKK30KKworY29uc3QgQXRvbWljU3RyaW5nJiBSVENQZWVyQ29ubmVjdGlvbkhh
bmRsZXI6OmludmFsaWRTZXNzaW9uRGVzY3JpcHRpb25FcnJvck5hbWUoKQoreworICAgIHN0YXRp
YyBOZXZlckRlc3Ryb3llZDxBdG9taWNTdHJpbmc+IGludmFsaWRTZXNzaW9uRGVzY3JpcHRpb24o
IkludmFsaWRTZXNzaW9uRGVzY3JpcHRpb25FcnJvciIsIEF0b21pY1N0cmluZzo6Q29uc3RydWN0
RnJvbUxpdGVyYWwpOworICAgIHJldHVybiBpbnZhbGlkU2Vzc2lvbkRlc2NyaXB0aW9uOworfQor
Citjb25zdCBBdG9taWNTdHJpbmcmIFJUQ1BlZXJDb25uZWN0aW9uSGFuZGxlcjo6aW5jb21wYXRp
YmxlU2Vzc2lvbkRlc2NyaXB0aW9uRXJyb3JOYW1lKCkKK3sKKyAgICBzdGF0aWMgTmV2ZXJEZXN0
cm95ZWQ8QXRvbWljU3RyaW5nPiBpbmNvbXBhdGlibGVTZXNzaW9uRGVzY3JpcHRpb24oIkluY29t
cGF0aWJsZVNlc3Npb25EZXNjcmlwdGlvbkVycm9yIiwgQXRvbWljU3RyaW5nOjpDb25zdHJ1Y3RG
cm9tTGl0ZXJhbCk7CisgICAgcmV0dXJuIGluY29tcGF0aWJsZVNlc3Npb25EZXNjcmlwdGlvbjsK
K30KKworY29uc3QgQXRvbWljU3RyaW5nJiBSVENQZWVyQ29ubmVjdGlvbkhhbmRsZXI6OmludGVy
bmFsRXJyb3JOYW1lKCkKK3sKKyAgICBzdGF0aWMgTmV2ZXJEZXN0cm95ZWQ8QXRvbWljU3RyaW5n
PiBpbnRlcm5hbCgiaW50ZXJuYWxFcnJvciIsIEF0b21pY1N0cmluZzo6Q29uc3RydWN0RnJvbUxp
dGVyYWwpOworICAgIHJldHVybiBpbnRlcm5hbDsKK30KKwogfSAvLyBuYW1lc3BhY2UgV2ViQ29y
ZQogCiAjZW5kaWYgLy8gRU5BQkxFKE1FRElBX1NUUkVBTSkKZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJDb3JlL3BsYXRmb3JtL21lZGlhc3RyZWFtL1JUQ1BlZXJDb25uZWN0aW9uSGFuZGxlci5oIGIv
U291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbWVkaWFzdHJlYW0vUlRDUGVlckNvbm5lY3Rpb25IYW5k
bGVyLmgKaW5kZXggMDE2MDVhOGIzNzNmODNiOWY0ZDk1OWVkNmU3ODNlZTljMmQ5ODU4MC4uOTU0
YWNiOWEzMjVkZWE1ZWNkYzJiNDYyZGQyMDA3NzU1YWY2ZmY3NiAxMDA2NDQKLS0tIGEvU291cmNl
L1dlYkNvcmUvcGxhdGZvcm0vbWVkaWFzdHJlYW0vUlRDUGVlckNvbm5lY3Rpb25IYW5kbGVyLmgK
KysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbWVkaWFzdHJlYW0vUlRDUGVlckNvbm5lY3Rp
b25IYW5kbGVyLmgKQEAgLTEsNSArMSw2IEBACiAvKgogICogQ29weXJpZ2h0IChDKSAyMDEyIEdv
b2dsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKiBDb3B5cmlnaHQgKEMpIDIwMTMgTm9r
aWEgQ29ycG9yYXRpb24gYW5kL29yIGl0cyBzdWJzaWRpYXJ5KC1pZXMpLgogICoKICAqIFJlZGlz
dHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0
aG91dAogICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZv
bGxvd2luZyBjb25kaXRpb25zCkBAIC03NCw2ICs3NSwxMSBAQCBwdWJsaWM6CiAgICAgc3RhdGlj
IENyZWF0ZVBlZXJDb25uZWN0aW9uSGFuZGxlciBjcmVhdGU7CiAgICAgdmlydHVhbCB+UlRDUGVl
ckNvbm5lY3Rpb25IYW5kbGVyKCkgeyB9CiAKKyAgICBzdGF0aWMgY29uc3QgQXRvbWljU3RyaW5n
JiBpbmNvbXBhdGlibGVDb25zdHJhaW50c0Vycm9yTmFtZSgpOworICAgIHN0YXRpYyBjb25zdCBB
dG9taWNTdHJpbmcmIGludmFsaWRTZXNzaW9uRGVzY3JpcHRpb25FcnJvck5hbWUoKTsKKyAgICBz
dGF0aWMgY29uc3QgQXRvbWljU3RyaW5nJiBpbmNvbXBhdGlibGVTZXNzaW9uRGVzY3JpcHRpb25F
cnJvck5hbWUoKTsKKyAgICBzdGF0aWMgY29uc3QgQXRvbWljU3RyaW5nJiBpbnRlcm5hbEVycm9y
TmFtZSgpOworCiAgICAgdmlydHVhbCBib29sIGluaXRpYWxpemUoUGFzc1JlZlB0cjxSVENDb25m
aWd1cmF0aW9uPiwgUGFzc1JlZlB0cjxNZWRpYUNvbnN0cmFpbnRzPikgPSAwOwogCiAgICAgdmly
dHVhbCB2b2lkIGNyZWF0ZU9mZmVyKFBhc3NSZWZQdHI8UlRDU2Vzc2lvbkRlc2NyaXB0aW9uUmVx
dWVzdD4sIFBhc3NSZWZQdHI8TWVkaWFDb25zdHJhaW50cz4pID0gMDsKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJDb3JlL3BsYXRmb3JtL21vY2svUlRDTm90aWZpZXJzTW9jay5jcHAgYi9Tb3VyY2Uv
V2ViQ29yZS9wbGF0Zm9ybS9tb2NrL1JUQ05vdGlmaWVyc01vY2suY3BwCmluZGV4IDAyM2Y0NjM0
OWRkNzRlZjIwZjUzMDUzZGM2ZDc4MTQzOGI5NWEyYmQuLjBjODA2NTk2YzdiYzAxNjY2Nzg1ODJj
ZTNkNWY0MDdjMTAwNzIyMGIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL21v
Y2svUlRDTm90aWZpZXJzTW9jay5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbW9j
ay9SVENOb3RpZmllcnNNb2NrLmNwcApAQCAtMjksNiArMjksNyBAQAogCiAjaW5jbHVkZSAiUlRD
Tm90aWZpZXJzTW9jay5oIgogCisjaW5jbHVkZSAiRE9NRXJyb3IuaCIKICNpbmNsdWRlICJSVENE
YXRhQ2hhbm5lbEhhbmRsZXJNb2NrLmgiCiAjaW5jbHVkZSAiUlRDU2Vzc2lvbkRlc2NyaXB0aW9u
RGVzY3JpcHRvci5oIgogI2luY2x1ZGUgIlJUQ1Nlc3Npb25EZXNjcmlwdGlvblJlcXVlc3QuaCIK
QEAgLTM2LDkgKzM3LDEwIEBACiAKIG5hbWVzcGFjZSBXZWJDb3JlIHsKIAotU2Vzc2lvblJlcXVl
c3ROb3RpZmllcjo6U2Vzc2lvblJlcXVlc3ROb3RpZmllcihQYXNzUmVmUHRyPFJUQ1Nlc3Npb25E
ZXNjcmlwdGlvblJlcXVlc3Q+IHJlcXVlc3QsIFBhc3NSZWZQdHI8UlRDU2Vzc2lvbkRlc2NyaXB0
aW9uRGVzY3JpcHRvcj4gZGVzY3JpcHRvcikKK1Nlc3Npb25SZXF1ZXN0Tm90aWZpZXI6OlNlc3Np
b25SZXF1ZXN0Tm90aWZpZXIoUGFzc1JlZlB0cjxSVENTZXNzaW9uRGVzY3JpcHRpb25SZXF1ZXN0
PiByZXF1ZXN0LCBQYXNzUmVmUHRyPFJUQ1Nlc3Npb25EZXNjcmlwdGlvbkRlc2NyaXB0b3I+IGRl
c2NyaXB0b3IsIGNvbnN0IFN0cmluZyYgZXJyb3JOYW1lKQogICAgIDogbV9yZXF1ZXN0KHJlcXVl
c3QpCiAgICAgLCBtX2Rlc2NyaXB0b3IoZGVzY3JpcHRvcikKKyAgICAsIG1fZXJyb3JOYW1lKGVy
cm9yTmFtZSkKIHsKIH0KIApAQCAtNDcsMTIgKzQ5LDEzIEBAIHZvaWQgU2Vzc2lvblJlcXVlc3RO
b3RpZmllcjo6ZmlyZSgpCiAgICAgaWYgKG1fZGVzY3JpcHRvcikKICAgICAgICAgbV9yZXF1ZXN0
LT5yZXF1ZXN0U3VjY2VlZGVkKG1fZGVzY3JpcHRvcik7CiAgICAgZWxzZQotICAgICAgICBtX3Jl
cXVlc3QtPnJlcXVlc3RGYWlsZWQoIlRFU1RfRVJST1IiKTsKKyAgICAgICAgbV9yZXF1ZXN0LT5y
ZXF1ZXN0RmFpbGVkKG1fZXJyb3JOYW1lKTsKIH0KIAotVm9pZFJlcXVlc3ROb3RpZmllcjo6Vm9p
ZFJlcXVlc3ROb3RpZmllcihQYXNzUmVmUHRyPFJUQ1ZvaWRSZXF1ZXN0PiByZXF1ZXN0LCBib29s
IHN1Y2Nlc3MpCitWb2lkUmVxdWVzdE5vdGlmaWVyOjpWb2lkUmVxdWVzdE5vdGlmaWVyKFBhc3NS
ZWZQdHI8UlRDVm9pZFJlcXVlc3Q+IHJlcXVlc3QsIGJvb2wgc3VjY2VzcywgY29uc3QgU3RyaW5n
JiBlcnJvck5hbWUpCiAgICAgOiBtX3JlcXVlc3QocmVxdWVzdCkKICAgICAsIG1fc3VjY2Vzcyhz
dWNjZXNzKQorICAgICwgbV9lcnJvck5hbWUoZXJyb3JOYW1lKQogewogfQogCkBAIC02MSw3ICs2
NCw3IEBAIHZvaWQgVm9pZFJlcXVlc3ROb3RpZmllcjo6ZmlyZSgpCiAgICAgaWYgKG1fc3VjY2Vz
cykKICAgICAgICAgbV9yZXF1ZXN0LT5yZXF1ZXN0U3VjY2VlZGVkKCk7CiAgICAgZWxzZQotICAg
ICAgICBtX3JlcXVlc3QtPnJlcXVlc3RGYWlsZWQoIlRFU1RfRVJST1IiKTsKKyAgICAgICAgbV9y
ZXF1ZXN0LT5yZXF1ZXN0RmFpbGVkKG1fZXJyb3JOYW1lKTsKIH0KIAogSWNlQ29ubmVjdGlvbk5v
dGlmaWVyOjpJY2VDb25uZWN0aW9uTm90aWZpZXIoUlRDUGVlckNvbm5lY3Rpb25IYW5kbGVyQ2xp
ZW50KiBjbGllbnQsIFJUQ1BlZXJDb25uZWN0aW9uSGFuZGxlckNsaWVudDo6SWNlQ29ubmVjdGlv
blN0YXRlIGNvbm5lY3Rpb25TdGF0ZSwgUlRDUGVlckNvbm5lY3Rpb25IYW5kbGVyQ2xpZW50OjpJ
Y2VHYXRoZXJpbmdTdGF0ZSBnYXRoZXJpbmdTdGF0ZSkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJD
b3JlL3BsYXRmb3JtL21vY2svUlRDTm90aWZpZXJzTW9jay5oIGIvU291cmNlL1dlYkNvcmUvcGxh
dGZvcm0vbW9jay9SVENOb3RpZmllcnNNb2NrLmgKaW5kZXggOTU5N2FmYzE5ZTYzNmU0OTExYmRh
ZDU3YmZkMDk1NTZhYWY3ODc4Ny4uZWUwNWMyNGJlZGQxMWRjODQwODhmMGEwYjBjYTFmYzJmYjRi
NmMzOCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbW9jay9SVENOb3RpZmll
cnNNb2NrLmgKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbW9jay9SVENOb3RpZmllcnNN
b2NrLmgKQEAgLTMzLDYgKzMzLDcgQEAKICNpbmNsdWRlICJUaW1lckV2ZW50QmFzZWRNb2NrLmgi
CiAjaW5jbHVkZSA8d3RmL1Bhc3NSZWZQdHIuaD4KICNpbmNsdWRlIDx3dGYvUmVmUHRyLmg+Cisj
aW5jbHVkZSA8d3RmL3RleHQvV1RGU3RyaW5nLmg+CiAKIG5hbWVzcGFjZSBXZWJDb3JlIHsKIApA
QCAtNDIsMjQgKzQzLDI2IEBAIGNsYXNzIFJUQ1ZvaWRSZXF1ZXN0OwogCiBjbGFzcyBTZXNzaW9u
UmVxdWVzdE5vdGlmaWVyIDogcHVibGljIE1vY2tOb3RpZmllciB7CiBwdWJsaWM6Ci0gICAgU2Vz
c2lvblJlcXVlc3ROb3RpZmllcihQYXNzUmVmUHRyPFJUQ1Nlc3Npb25EZXNjcmlwdGlvblJlcXVl
c3Q+LCBQYXNzUmVmUHRyPFJUQ1Nlc3Npb25EZXNjcmlwdGlvbkRlc2NyaXB0b3I+KTsKKyAgICBT
ZXNzaW9uUmVxdWVzdE5vdGlmaWVyKFBhc3NSZWZQdHI8UlRDU2Vzc2lvbkRlc2NyaXB0aW9uUmVx
dWVzdD4sIFBhc3NSZWZQdHI8UlRDU2Vzc2lvbkRlc2NyaXB0aW9uRGVzY3JpcHRvcj4sIGNvbnN0
IFN0cmluZyYgPSBlbXB0eVN0cmluZygpKTsKIAogICAgIHZvaWQgZmlyZSgpIE9WRVJSSURFOwog
CiBwcml2YXRlOgogICAgIFJlZlB0cjxSVENTZXNzaW9uRGVzY3JpcHRpb25SZXF1ZXN0PiBtX3Jl
cXVlc3Q7CiAgICAgUmVmUHRyPFJUQ1Nlc3Npb25EZXNjcmlwdGlvbkRlc2NyaXB0b3I+IG1fZGVz
Y3JpcHRvcjsKKyAgICBTdHJpbmcgbV9lcnJvck5hbWU7CiB9OwogCiBjbGFzcyBWb2lkUmVxdWVz
dE5vdGlmaWVyIDogcHVibGljIE1vY2tOb3RpZmllciB7CiBwdWJsaWM6Ci0gICAgVm9pZFJlcXVl
c3ROb3RpZmllcihQYXNzUmVmUHRyPFJUQ1ZvaWRSZXF1ZXN0PiwgYm9vbCk7CisgICAgVm9pZFJl
cXVlc3ROb3RpZmllcihQYXNzUmVmUHRyPFJUQ1ZvaWRSZXF1ZXN0PiwgYm9vbCwgY29uc3QgU3Ry
aW5nJiA9IGVtcHR5U3RyaW5nKCkpOwogCiAgICAgdm9pZCBmaXJlKCkgT1ZFUlJJREU7CiAKIHBy
aXZhdGU6CiAgICAgUmVmUHRyPFJUQ1ZvaWRSZXF1ZXN0PiBtX3JlcXVlc3Q7CiAgICAgYm9vbCBt
X3N1Y2Nlc3M7CisgICAgU3RyaW5nIG1fZXJyb3JOYW1lOwogfTsKIAogY2xhc3MgSWNlQ29ubmVj
dGlvbk5vdGlmaWVyIDogcHVibGljIE1vY2tOb3RpZmllciB7CmRpZmYgLS1naXQgYS9Tb3VyY2Uv
V2ViQ29yZS9wbGF0Zm9ybS9tb2NrL1JUQ1BlZXJDb25uZWN0aW9uSGFuZGxlck1vY2suY3BwIGIv
U291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbW9jay9SVENQZWVyQ29ubmVjdGlvbkhhbmRsZXJNb2Nr
LmNwcAppbmRleCBkNWEyYTc4ZWQ0OGM4ZTBjNzNjNjFlYzYzN2Q2ODI2OWI4MjgxNDY0Li42YzJk
NTViNmZjYzYyOTk4NjVmMDhmYWJkYjQxZWEyYTJjMTY2OWM0IDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V2ViQ29yZS9wbGF0Zm9ybS9tb2NrL1JUQ1BlZXJDb25uZWN0aW9uSGFuZGxlck1vY2suY3BwCisr
KyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL21vY2svUlRDUGVlckNvbm5lY3Rpb25IYW5kbGVy
TW9jay5jcHAKQEAgLTY3LDcgKzY3LDcgQEAgdm9pZCBSVENQZWVyQ29ubmVjdGlvbkhhbmRsZXJN
b2NrOjpjcmVhdGVPZmZlcihQYXNzUmVmUHRyPFJUQ1Nlc3Npb25EZXNjcmlwdGlvblIKICAgICBT
dHJpbmcgc3VjY2VlZFZhbHVlOwogICAgIFJlZlB0cjxTZXNzaW9uUmVxdWVzdE5vdGlmaWVyPiBu
b3RpZmllcjsKICAgICBpZiAoY29uc3RyYWludHMtPmdldE1hbmRhdG9yeUNvbnN0cmFpbnRWYWx1
ZSgic3VjY2VlZCIsIHN1Y2NlZWRWYWx1ZSkgJiYgc3VjY2VlZFZhbHVlID09ICJmYWxzZSIpCi0g
ICAgICAgIG5vdGlmaWVyID0gYWRvcHRSZWYobmV3IFNlc3Npb25SZXF1ZXN0Tm90aWZpZXIocmVx
dWVzdCwgMCkpOworICAgICAgICBub3RpZmllciA9IGFkb3B0UmVmKG5ldyBTZXNzaW9uUmVxdWVz
dE5vdGlmaWVyKHJlcXVlc3QsIDAsIFJUQ1BlZXJDb25uZWN0aW9uSGFuZGxlcjo6aW5jb21wYXRp
YmxlQ29uc3RyYWludHNFcnJvck5hbWUoKSkpOwogICAgIGVsc2UKICAgICAgICAgbm90aWZpZXIg
PSBhZG9wdFJlZihuZXcgU2Vzc2lvblJlcXVlc3ROb3RpZmllcihyZXF1ZXN0LCBSVENTZXNzaW9u
RGVzY3JpcHRpb25EZXNjcmlwdG9yOjpjcmVhdGUoIm9mZmVyIiwgImxvY2FsIikpKTsKIApAQCAt
ODAsNyArODAsNyBAQCB2b2lkIFJUQ1BlZXJDb25uZWN0aW9uSGFuZGxlck1vY2s6OmNyZWF0ZUFu
c3dlcihQYXNzUmVmUHRyPFJUQ1Nlc3Npb25EZXNjcmlwdGlvbgogICAgIC8vIFdlIGNhbiBvbmx5
IGNyZWF0ZSBhbiBhbnN3ZXIgaWYgd2UgaGF2ZSBhbHJlYWR5IGhhZCBhbiBvZmZlciBhbmQgdGhl
IHJlbW90ZSBzZXNzaW9uIGRlc2NyaXB0aW9uIGlzIHN0b3JlZC4KICAgICBTdHJpbmcgc3VjY2Vl
ZFZhbHVlOwogICAgIGlmIChjb25zdHJhaW50cy0+Z2V0TWFuZGF0b3J5Q29uc3RyYWludFZhbHVl
KCJzdWNjZWVkIiwgc3VjY2VlZFZhbHVlKSAmJiBzdWNjZWVkVmFsdWUgPT0gImZhbHNlIikKLSAg
ICAgICAgbm90aWZpZXIgPSBhZG9wdFJlZihuZXcgU2Vzc2lvblJlcXVlc3ROb3RpZmllcihyZXF1
ZXN0LCAwKSk7CisgICAgICAgIG5vdGlmaWVyID0gYWRvcHRSZWYobmV3IFNlc3Npb25SZXF1ZXN0
Tm90aWZpZXIocmVxdWVzdCwgMCwgUlRDUGVlckNvbm5lY3Rpb25IYW5kbGVyOjppbmNvbXBhdGli
bGVDb25zdHJhaW50c0Vycm9yTmFtZSgpKSk7CiAgICAgZWxzZQogICAgICAgICBub3RpZmllciA9
IGFkb3B0UmVmKG5ldyBTZXNzaW9uUmVxdWVzdE5vdGlmaWVyKHJlcXVlc3QsIFJUQ1Nlc3Npb25E
ZXNjcmlwdGlvbkRlc2NyaXB0b3I6OmNyZWF0ZSgiYW5zd2VyIiwgImxvY2FsIikpKTsKIApkaWZm
IC0tZ2l0IGEvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCmlu
ZGV4IGY3MDIxMGQ2MjI3OGI4MDcwN2M4ZTI4YWI3ZTVmNmJmNTEyYWNmZjEuLjNhMzNjY2M4MDJm
MzQxZjg5NTQwZWM4ZmMxZjA4NjdhOTgxNjQyNTcgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL0No
YW5nZUxvZworKysgYi9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKQEAgLTEsMyArMSwxOCBAQAorMjAx
My0xMi0xMiAgVGhpYWdvIGRlIEJhcnJvcyBMYWNlcmRhICA8dGhpYWdvLmxhY2VyZGFAb3BlbmJv
c3NhLm9yZz4KKworICAgICAgICBBZGRpbmcgUlRDUGVlckNvbm5lY3Rpb25FcnJvckNhbGxiYWNr
CisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xMjU1NzQK
KworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBBY2NvcmRp
bmcgdG8gdGhlIHNwZWMgdGhlcmUgc2hvdWxkIGJlIGEgUlRDUGVlckNvbm5lY3Rpb25FcnJvckNh
bGxiYWNrIGZ1bmN0aW9uIHR5cGUgZm9yIGNyZWF0ZU9mZmVyL0Fuc3dlciwKKyAgICAgICAgc2V0
TG9jYWwvUmVtb3RlRGVzY3JpcHRpb24gYW5kIHVwZGF0ZUljZSBmdW5jdGlvbiBjYWxscy4gVGhp
cyBjYWxsYmFjayBtdXN0IGhhbmRsZSBhIERPTUVycm9yIG9iamVjdC4KKworICAgICAgICAqIGZh
c3QvbWVkaWFzdHJlYW0vUlRDUGVlckNvbm5lY3Rpb24tY3JlYXRlQW5zd2VyLWV4cGVjdGVkLnR4
dDoKKyAgICAgICAgKiBmYXN0L21lZGlhc3RyZWFtL1JUQ1BlZXJDb25uZWN0aW9uLWNyZWF0ZUFu
c3dlci5odG1sOgorICAgICAgICAqIGZhc3QvbWVkaWFzdHJlYW0vUlRDUGVlckNvbm5lY3Rpb24t
Y3JlYXRlT2ZmZXItZXhwZWN0ZWQudHh0OgorICAgICAgICAqIGZhc3QvbWVkaWFzdHJlYW0vUlRD
UGVlckNvbm5lY3Rpb24tY3JlYXRlT2ZmZXIuaHRtbDoKKwogMjAxMy0xMi0xMSAgRGFyaW4gQWRs
ZXIgIDxkYXJpbkBhcHBsZS5jb20+CiAKICAgICAgICAgU3R5bGVQZW5kaW5nSW1hZ2UgbmVlZHMg
dG8gY29ycmVjdGx5IG1hbmFnZSB0aGUgQ1NTVmFsdWUgcG9pbnRlciBsaWZldGltZQpkaWZmIC0t
Z2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9tZWRpYXN0cmVhbS9SVENQZWVyQ29ubmVjdGlvbi1jcmVh
dGVBbnN3ZXItZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvZmFzdC9tZWRpYXN0cmVhbS9SVENQ
ZWVyQ29ubmVjdGlvbi1jcmVhdGVBbnN3ZXItZXhwZWN0ZWQudHh0CmluZGV4IGU4Y2E2NDYxZTBi
ZjE2MGVmY2E0YjQ5OTcxYzAzZDM3ZDAxN2U3MTMuLjhlMDFjOTI5ZTU0ZjE2ZjYzYTAwZjAyNzVi
ZjA1NGQ3MTBhY2JiYmEgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2Zhc3QvbWVkaWFzdHJlYW0v
UlRDUGVlckNvbm5lY3Rpb24tY3JlYXRlQW5zd2VyLWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRU
ZXN0cy9mYXN0L21lZGlhc3RyZWFtL1JUQ1BlZXJDb25uZWN0aW9uLWNyZWF0ZUFuc3dlci1leHBl
Y3RlZC50eHQKQEAgLTksNiArOSw3IEBAIFBBU1MgcGMuc2V0UmVtb3RlRGVzY3JpcHRpb24oc2Vz
c2lvbkRlc2NyaXB0aW9uLCBzZXREZXNjcmlwdGlvblN1Y2NlZWRlZCwgc2V0RGVzCiBQQVNTIHNl
dFJlbW90ZURlc2NyaXB0aW9uIHN1Y2NlZWRlZC4KIFBBU1MgcGMuY3JlYXRlQW5zd2VyKHJlcXVl
c3RTdWNjZWVkZWQyLCByZXF1ZXN0RmFpbGVkMiwge21hbmRhdG9yeTp7InN1Y2NlZWQiOmZhbHNl
fX0pOyBkaWQgbm90IHRocm93IGV4Y2VwdGlvbi4KIFBBU1MgY3JlYXRlQW5zd2VyIHJlcXVlc3Qg
ZmFpbGVkLgorUEFTUyBlcnJvclJlYXNvbi5uYW1lIGlzICJJbmNvbXBhdGlibGVDb25zdHJhaW50
c0Vycm9yIgogUEFTUyBwYy5jcmVhdGVBbnN3ZXIocmVxdWVzdFN1Y2NlZWRlZDMsIHJlcXVlc3RG
YWlsZWQzKTsgZGlkIG5vdCB0aHJvdyBleGNlcHRpb24uCiBQQVNTIGNyZWF0ZUFuc3dlciByZXF1
ZXN0IHN1Y2NlZWRlZC4KIFBBU1Mgc2Vzc2lvbkRlc2NyaXB0aW9uLnR5cGUgaXMgImFuc3dlciIK
ZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3QvbWVkaWFzdHJlYW0vUlRDUGVlckNvbm5lY3Rp
b24tY3JlYXRlQW5zd2VyLmh0bWwgYi9MYXlvdXRUZXN0cy9mYXN0L21lZGlhc3RyZWFtL1JUQ1Bl
ZXJDb25uZWN0aW9uLWNyZWF0ZUFuc3dlci5odG1sCmluZGV4IGRiMzYxM2JkMjE2Mjk2OWE1Nzg5
Y2I2YmQ0YWVmMzgwMjMwYThlMGYuLjkzZjQ5NWQ1MTMxMTU3OWNlZmVkYTA2YTlmNjE4NWM4ZTA4
YWE2NzAgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2Zhc3QvbWVkaWFzdHJlYW0vUlRDUGVlckNv
bm5lY3Rpb24tY3JlYXRlQW5zd2VyLmh0bWwKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC9tZWRpYXN0
cmVhbS9SVENQZWVyQ29ubmVjdGlvbi1jcmVhdGVBbnN3ZXIuaHRtbApAQCAtNDAsNiArNDAsOSBA
QAogICAgICAgICAgICAgewogICAgICAgICAgICAgICAgIHRlc3RQYXNzZWQoJ2NyZWF0ZUFuc3dl
ciByZXF1ZXN0IGZhaWxlZC4nKTsKIAorICAgICAgICAgICAgICAgIGVycm9yUmVhc29uID0gcmVh
c29uOworICAgICAgICAgICAgICAgIHNob3VsZEJlKCdlcnJvclJlYXNvbi5uYW1lJywgJyJJbmNv
bXBhdGlibGVDb25zdHJhaW50c0Vycm9yIicpOworCiAgICAgICAgICAgICAgICAgc2hvdWxkTm90
VGhyb3coJ3BjLmNyZWF0ZUFuc3dlcihyZXF1ZXN0U3VjY2VlZGVkMywgcmVxdWVzdEZhaWxlZDMp
OycpOwogICAgICAgICAgICAgfQogCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L21lZGlh
c3RyZWFtL1JUQ1BlZXJDb25uZWN0aW9uLWNyZWF0ZU9mZmVyLWV4cGVjdGVkLnR4dCBiL0xheW91
dFRlc3RzL2Zhc3QvbWVkaWFzdHJlYW0vUlRDUGVlckNvbm5lY3Rpb24tY3JlYXRlT2ZmZXItZXhw
ZWN0ZWQudHh0CmluZGV4IDE0ODY3MzA1YjkxN2JhZTEzN2RiZGFlNTgyZGI0NGEzYjJmNGIxZDcu
LjU1YWVlZDg5ZDZiNmE4OTVlODQ1MTUyZTUyZGY3NGRmNzczMjg4YmUgMTAwNjQ0Ci0tLSBhL0xh
eW91dFRlc3RzL2Zhc3QvbWVkaWFzdHJlYW0vUlRDUGVlckNvbm5lY3Rpb24tY3JlYXRlT2ZmZXIt
ZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL2Zhc3QvbWVkaWFzdHJlYW0vUlRDUGVlckNv
bm5lY3Rpb24tY3JlYXRlT2ZmZXItZXhwZWN0ZWQudHh0CkBAIC04LDcgKzgsNyBAQCBQQVNTIGNy
ZWF0ZU9mZmVyIHJlcXVlc3Qgc3VjY2VlZGVkLgogUEFTUyBzZXNzaW9uRGVzY3JpcHRpb24udHlw
ZSBpcyAib2ZmZXIiCiBQQVNTIHBjLmNyZWF0ZU9mZmVyKHJlcXVlc3RTdWNjZWVkZWQyLCByZXF1
ZXN0RmFpbGVkMiwge21hbmRhdG9yeTp7InN1Y2NlZWQiOmZhbHNlfX0pOyBkaWQgbm90IHRocm93
IGV4Y2VwdGlvbi4KIFBBU1MgY3JlYXRlT2ZmZXIgcmVxdWVzdCBmYWlsZWQuCi1QQVNTIGVycm9y
UmVhc29uIGlzICJURVNUX0VSUk9SIgorUEFTUyBlcnJvclJlYXNvbi5uYW1lIGlzICJJbmNvbXBh
dGlibGVDb25zdHJhaW50c0Vycm9yIgogUEFTUyBwYy5jcmVhdGVPZmZlcihyZXF1ZXN0U3VjY2Vl
ZGVkMywgcmVxdWVzdEZhaWxlZDEpOyBkaWQgbm90IHRocm93IGV4Y2VwdGlvbi4KIFBBU1MgY3Jl
YXRlT2ZmZXIgcmVxdWVzdCBzdWNjZWVkZWQuCiBQQVNTIHNlc3Npb25EZXNjcmlwdGlvbi50eXBl
IGlzICJvZmZlciIKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3QvbWVkaWFzdHJlYW0vUlRD
UGVlckNvbm5lY3Rpb24tY3JlYXRlT2ZmZXIuaHRtbCBiL0xheW91dFRlc3RzL2Zhc3QvbWVkaWFz
dHJlYW0vUlRDUGVlckNvbm5lY3Rpb24tY3JlYXRlT2ZmZXIuaHRtbAppbmRleCAyZDZlOGUwNjFk
NGRmZDFhZmU3YjFhNTE2OGQwNzQ5MDFkZGIyNDY5Li5kNmQ3NzNlZDA4YmM1OWM1YzYwNThlOTBl
YWI2NTU1ZTliOTU4YmNiIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9mYXN0L21lZGlhc3RyZWFt
L1JUQ1BlZXJDb25uZWN0aW9uLWNyZWF0ZU9mZmVyLmh0bWwKKysrIGIvTGF5b3V0VGVzdHMvZmFz
dC9tZWRpYXN0cmVhbS9SVENQZWVyQ29ubmVjdGlvbi1jcmVhdGVPZmZlci5odG1sCkBAIC0yMyw3
ICsyMyw3IEBACiAgICAgICAgICAgICAgICAgdGVzdFBhc3NlZCgnY3JlYXRlT2ZmZXIgcmVxdWVz
dCBmYWlsZWQuJyk7CiAKICAgICAgICAgICAgICAgICBlcnJvclJlYXNvbiA9IHJlYXNvbjsKLSAg
ICAgICAgICAgICAgICBzaG91bGRCZSgnZXJyb3JSZWFzb24nLCAnIlRFU1RfRVJST1IiJyk7Cisg
ICAgICAgICAgICAgICAgc2hvdWxkQmUoJ2Vycm9yUmVhc29uLm5hbWUnLCAnIkluY29tcGF0aWJs
ZUNvbnN0cmFpbnRzRXJyb3IiJyk7CiAKICAgICAgICAgICAgICAgICBzaG91bGROb3RUaHJvdygn
cGMuY3JlYXRlT2ZmZXIocmVxdWVzdFN1Y2NlZWRlZDMsIHJlcXVlc3RGYWlsZWQxKTsnKTsKICAg
ICAgICAgICAgIH0K
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>219113</attachid>
            <date>2013-12-12 13:23:48 -0800</date>
            <delta_ts>2013-12-13 12:01:33 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-125574-20131212182346.patch</filename>
            <type>text/plain</type>
            <size>58152</size>
            <attacher name="Thiago de Barros Lacerda">thiago.lacerda</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTYwNTA0CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggNjJlNTE1MGJiY2ZjYzRl
NDM1MTlhOTJmYWRlNWMyNzhjZWUwYjY4YS4uMTMzYWQ3ZDEyMDBiNmNhMjBhNTMyM2YzOTc1YTI5
NGE3OWJjYjZkZSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDU2IEBACisyMDEzLTEyLTExICBUaGlh
Z28gZGUgQmFycm9zIExhY2VyZGEgIDx0aGlhZ28ubGFjZXJkYUBvcGVuYm9zc2Eub3JnPgorCisg
ICAgICAgIEFkZGluZyBSVENQZWVyQ29ubmVjdGlvbkVycm9yQ2FsbGJhY2sKKyAgICAgICAgaHR0
cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTEyNTU3NAorCisgICAgICAgIFJl
dmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIEFjY29yZGluZyB0byB0aGUgc3Bl
YyB0aGVyZSBzaG91bGQgYmUgYSBSVENQZWVyQ29ubmVjdGlvbkVycm9yQ2FsbGJhY2sgZnVuY3Rp
b24gdHlwZSBmb3IgY3JlYXRlT2ZmZXIvQW5zd2VyLAorICAgICAgICBzZXRMb2NhbC9SZW1vdGVE
ZXNjcmlwdGlvbiBhbmQgdXBkYXRlSWNlIGZ1bmN0aW9uIGNhbGxzLiBUaGlzIGNhbGxiYWNrIG11
c3QgaGFuZGxlIGEgRE9NRXJyb3Igb2JqZWN0LgorCisgICAgICAgIEV4aXN0aW5nIHRlc3RzIHdl
cmUgdXBkYXRlZC4KKworICAgICAgICAqIENNYWtlTGlzdHMudHh0OgorICAgICAgICAqIEdOVW1h
a2VmaWxlLmxpc3QuYW06CisgICAgICAgICogTW9kdWxlcy9tZWRpYXN0cmVhbS9SVENQZWVyQ29u
bmVjdGlvbi5jcHA6CisgICAgICAgIChXZWJDb3JlOjpSVENQZWVyQ29ubmVjdGlvbjo6Y3JlYXRl
T2ZmZXIpOgorICAgICAgICAoV2ViQ29yZTo6UlRDUGVlckNvbm5lY3Rpb246OmNyZWF0ZUFuc3dl
cik6CisgICAgICAgIChXZWJDb3JlOjpSVENQZWVyQ29ubmVjdGlvbjo6c2V0TG9jYWxEZXNjcmlw
dGlvbik6CisgICAgICAgIChXZWJDb3JlOjpSVENQZWVyQ29ubmVjdGlvbjo6c2V0UmVtb3RlRGVz
Y3JpcHRpb24pOgorICAgICAgICAoV2ViQ29yZTo6UlRDUGVlckNvbm5lY3Rpb246OmFkZEljZUNh
bmRpZGF0ZSk6CisgICAgICAgICogTW9kdWxlcy9tZWRpYXN0cmVhbS9SVENFcnJvckNhbGxiYWNr
Lmg6IFJlbW92ZWQuCisgICAgICAgICogTW9kdWxlcy9tZWRpYXN0cmVhbS9SVENFcnJvckNhbGxi
YWNrLmlkbDogUmVtb3ZlZC4KKyAgICAgICAgKiBNb2R1bGVzL21lZGlhc3RyZWFtL1JUQ1BlZXJD
b25uZWN0aW9uLmg6CisgICAgICAgICogTW9kdWxlcy9tZWRpYXN0cmVhbS9SVENQZWVyQ29ubmVj
dGlvbi5pZGw6CisgICAgICAgICogTW9kdWxlcy9tZWRpYXN0cmVhbS9SVENQZWVyQ29ubmVjdGlv
bkVycm9yQ2FsbGJhY2suaDogQWRkZWQuCisgICAgICAgICogTW9kdWxlcy9tZWRpYXN0cmVhbS9S
VENQZWVyQ29ubmVjdGlvbkVycm9yQ2FsbGJhY2suaWRsOiBBZGRlZC4KKyAgICAgICAgKiBNb2R1
bGVzL21lZGlhc3RyZWFtL1JUQ1Nlc3Npb25EZXNjcmlwdGlvblJlcXVlc3RJbXBsLmNwcDoKKyAg
ICAgICAgKFdlYkNvcmU6OlJUQ1Nlc3Npb25EZXNjcmlwdGlvblJlcXVlc3RJbXBsOjpjcmVhdGUp
OgorICAgICAgICAoV2ViQ29yZTo6UlRDU2Vzc2lvbkRlc2NyaXB0aW9uUmVxdWVzdEltcGw6OlJU
Q1Nlc3Npb25EZXNjcmlwdGlvblJlcXVlc3RJbXBsKToKKyAgICAgICAgKFdlYkNvcmU6OlJUQ1Nl
c3Npb25EZXNjcmlwdGlvblJlcXVlc3RJbXBsOjpyZXF1ZXN0RmFpbGVkKToKKyAgICAgICAgKiBN
b2R1bGVzL21lZGlhc3RyZWFtL1JUQ1Nlc3Npb25EZXNjcmlwdGlvblJlcXVlc3RJbXBsLmg6Cisg
ICAgICAgICogTW9kdWxlcy9tZWRpYXN0cmVhbS9SVENWb2lkUmVxdWVzdEltcGwuY3BwOgorICAg
ICAgICAoV2ViQ29yZTo6UlRDVm9pZFJlcXVlc3RJbXBsOjpjcmVhdGUpOgorICAgICAgICAoV2Vi
Q29yZTo6UlRDVm9pZFJlcXVlc3RJbXBsOjpSVENWb2lkUmVxdWVzdEltcGwpOgorICAgICAgICAo
V2ViQ29yZTo6UlRDVm9pZFJlcXVlc3RJbXBsOjpyZXF1ZXN0RmFpbGVkKToKKyAgICAgICAgKiBN
b2R1bGVzL21lZGlhc3RyZWFtL1JUQ1ZvaWRSZXF1ZXN0SW1wbC5oOgorICAgICAgICAqIFdlYkNv
cmUueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvajoKKyAgICAgICAgKiBwbGF0Zm9ybS9tZWRpYXN0
cmVhbS9SVENQZWVyQ29ubmVjdGlvbkhhbmRsZXIuY3BwOgorICAgICAgICAoV2ViQ29yZTo6UlRD
UGVlckNvbm5lY3Rpb25IYW5kbGVyOjppbmNvbXBhdGlibGVDb25zdHJhaW50c0Vycm9yTmFtZSk6
CisgICAgICAgIChXZWJDb3JlOjpSVENQZWVyQ29ubmVjdGlvbkhhbmRsZXI6OmludmFsaWRTZXNz
aW9uRGVzY3JpcHRpb25FcnJvck5hbWUpOgorICAgICAgICAoV2ViQ29yZTo6UlRDUGVlckNvbm5l
Y3Rpb25IYW5kbGVyOjppbmNvbXBhdGlibGVTZXNzaW9uRGVzY3JpcHRpb25FcnJvck5hbWUpOgor
ICAgICAgICAoV2ViQ29yZTo6UlRDUGVlckNvbm5lY3Rpb25IYW5kbGVyOjppbnRlcm5hbEVycm9y
TmFtZSk6CisgICAgICAgICogcGxhdGZvcm0vbWVkaWFzdHJlYW0vUlRDUGVlckNvbm5lY3Rpb25I
YW5kbGVyLmg6CisgICAgICAgICogcGxhdGZvcm0vbW9jay9SVENOb3RpZmllcnNNb2NrLmNwcDoK
KyAgICAgICAgKFdlYkNvcmU6OlNlc3Npb25SZXF1ZXN0Tm90aWZpZXI6OlNlc3Npb25SZXF1ZXN0
Tm90aWZpZXIpOgorICAgICAgICAoV2ViQ29yZTo6U2Vzc2lvblJlcXVlc3ROb3RpZmllcjo6Zmly
ZSk6CisgICAgICAgIChXZWJDb3JlOjpWb2lkUmVxdWVzdE5vdGlmaWVyOjpWb2lkUmVxdWVzdE5v
dGlmaWVyKToKKyAgICAgICAgKFdlYkNvcmU6OlZvaWRSZXF1ZXN0Tm90aWZpZXI6OmZpcmUpOgor
ICAgICAgICAqIHBsYXRmb3JtL21vY2svUlRDTm90aWZpZXJzTW9jay5oOgorICAgICAgICAqIHBs
YXRmb3JtL21vY2svUlRDUGVlckNvbm5lY3Rpb25IYW5kbGVyTW9jay5jcHA6CisgICAgICAgIChX
ZWJDb3JlOjpSVENQZWVyQ29ubmVjdGlvbkhhbmRsZXJNb2NrOjpjcmVhdGVPZmZlcik6CisgICAg
ICAgIChXZWJDb3JlOjpSVENQZWVyQ29ubmVjdGlvbkhhbmRsZXJNb2NrOjpjcmVhdGVBbnN3ZXIp
OgorCiAyMDEzLTEyLTEyICBBbGV4ZXkgUHJvc2t1cnlha292ICA8YXBAYXBwbGUuY29tPgogCiAg
ICAgICAgIEFkZCBzdXBwb3J0IGZvciBSU0FFUy1QS0NTMS12MV81CmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViQ29yZS9DTWFrZUxpc3RzLnR4dCBiL1NvdXJjZS9XZWJDb3JlL0NNYWtlTGlzdHMudHh0
CmluZGV4IDkyYmMzM2YyODZiYTM1OWNkOGQxYjY5OWEzMGRmZGM3N2Y3ZWNmNjAuLjE4ODg2OWIw
ZjQ3YjljMGI2MjUxNTRhM2EzMzQ0NDA4YWM2YmM3YzMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJD
b3JlL0NNYWtlTGlzdHMudHh0CisrKyBiL1NvdXJjZS9XZWJDb3JlL0NNYWtlTGlzdHMudHh0CkBA
IC0yMTEsNyArMjExLDcgQEAgc2V0KFdlYkNvcmVfSURMX0ZJTEVTCiAgICAgTW9kdWxlcy9tZWRp
YXN0cmVhbS9SVENEVE1GVG9uZUNoYW5nZUV2ZW50LmlkbAogICAgIE1vZHVsZXMvbWVkaWFzdHJl
YW0vUlRDRGF0YUNoYW5uZWwuaWRsCiAgICAgTW9kdWxlcy9tZWRpYXN0cmVhbS9SVENEYXRhQ2hh
bm5lbEV2ZW50LmlkbAotICAgIE1vZHVsZXMvbWVkaWFzdHJlYW0vUlRDRXJyb3JDYWxsYmFjay5p
ZGwKKyAgICBNb2R1bGVzL21lZGlhc3RyZWFtL1JUQ1BlZXJDb25uZWN0aW9uRXJyb3JDYWxsYmFj
ay5pZGwKICAgICBNb2R1bGVzL21lZGlhc3RyZWFtL1JUQ0ljZUNhbmRpZGF0ZS5pZGwKICAgICBN
b2R1bGVzL21lZGlhc3RyZWFtL1JUQ0ljZUNhbmRpZGF0ZUV2ZW50LmlkbAogICAgIE1vZHVsZXMv
bWVkaWFzdHJlYW0vUlRDUGVlckNvbm5lY3Rpb24uaWRsCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
Q29yZS9EZXJpdmVkU291cmNlcy5tYWtlIGIvU291cmNlL1dlYkNvcmUvRGVyaXZlZFNvdXJjZXMu
bWFrZQppbmRleCA0OWZjZTBmOTVlMDM4MDM0OTE5MWFkZDljMGRhNDY5ODkxM2Q0ZWM0Li5mMDE3
YjdmM2NhM2ZjZDRlNWY5Mjc3ZDJhN2JiZTliNjdhOWQwZTQ5IDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V2ViQ29yZS9EZXJpdmVkU291cmNlcy5tYWtlCisrKyBiL1NvdXJjZS9XZWJDb3JlL0Rlcml2ZWRT
b3VyY2VzLm1ha2UKQEAgLTEyNywxMCArMTI3LDEwIEBAIEJJTkRJTkdfSURMUyA9IFwKICAgICAk
KFdlYkNvcmUpL01vZHVsZXMvbWVkaWFzdHJlYW0vUlRDRFRNRlRvbmVDaGFuZ2VFdmVudC5pZGwg
XAogICAgICQoV2ViQ29yZSkvTW9kdWxlcy9tZWRpYXN0cmVhbS9SVENEYXRhQ2hhbm5lbC5pZGwg
XAogICAgICQoV2ViQ29yZSkvTW9kdWxlcy9tZWRpYXN0cmVhbS9SVENEYXRhQ2hhbm5lbEV2ZW50
LmlkbCBcCi0gICAgJChXZWJDb3JlKS9Nb2R1bGVzL21lZGlhc3RyZWFtL1JUQ0Vycm9yQ2FsbGJh
Y2suaWRsIFwKICAgICAkKFdlYkNvcmUpL01vZHVsZXMvbWVkaWFzdHJlYW0vUlRDSWNlQ2FuZGlk
YXRlLmlkbCBcCiAgICAgJChXZWJDb3JlKS9Nb2R1bGVzL21lZGlhc3RyZWFtL1JUQ0ljZUNhbmRp
ZGF0ZUV2ZW50LmlkbCBcCiAgICAgJChXZWJDb3JlKS9Nb2R1bGVzL21lZGlhc3RyZWFtL1JUQ1Bl
ZXJDb25uZWN0aW9uLmlkbCBcCisgICAgJChXZWJDb3JlKS9Nb2R1bGVzL21lZGlhc3RyZWFtL1JU
Q1BlZXJDb25uZWN0aW9uRXJyb3JDYWxsYmFjay5pZGwgXAogICAgICQoV2ViQ29yZSkvTW9kdWxl
cy9tZWRpYXN0cmVhbS9SVENTZXNzaW9uRGVzY3JpcHRpb24uaWRsIFwKICAgICAkKFdlYkNvcmUp
L01vZHVsZXMvbWVkaWFzdHJlYW0vUlRDU2Vzc2lvbkRlc2NyaXB0aW9uQ2FsbGJhY2suaWRsIFwK
ICAgICAkKFdlYkNvcmUpL01vZHVsZXMvbWVkaWFzdHJlYW0vUlRDU3RhdHNDYWxsYmFjay5pZGwg
XApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvR05VbWFrZWZpbGUubGlzdC5hbSBiL1NvdXJj
ZS9XZWJDb3JlL0dOVW1ha2VmaWxlLmxpc3QuYW0KaW5kZXggODQ2MzlkOWQ3YjRjMjA0OTU1MTY4
NGU4MzA3MzdhMzlhZTUzMzE4Mi4uZjk4ZDkzOGRiY2UzNTc0ZTQ2MDhkY2EzMTMzNTgzMzczMTI4
OTNjMyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvR05VbWFrZWZpbGUubGlzdC5hbQorKysg
Yi9Tb3VyY2UvV2ViQ29yZS9HTlVtYWtlZmlsZS5saXN0LmFtCkBAIC02MTEsOCArNjExLDggQEAg
d2ViY29yZV9idWlsdF9zb3VyY2VzICs9IFwKIAlEZXJpdmVkU291cmNlcy9XZWJDb3JlL0pTUlRD
RGF0YUNoYW5uZWwuaCBcCiAJRGVyaXZlZFNvdXJjZXMvV2ViQ29yZS9KU1JUQ0RhdGFDaGFubmVs
RXZlbnQuY3BwIFwKIAlEZXJpdmVkU291cmNlcy9XZWJDb3JlL0pTUlRDRGF0YUNoYW5uZWxFdmVu
dC5oIFwKLQlEZXJpdmVkU291cmNlcy9XZWJDb3JlL0pTUlRDRXJyb3JDYWxsYmFjay5jcHAgXAot
CURlcml2ZWRTb3VyY2VzL1dlYkNvcmUvSlNSVENFcnJvckNhbGxiYWNrLmggXAorCURlcml2ZWRT
b3VyY2VzL1dlYkNvcmUvSlNSVENQZWVyQ29ubmVjdGlvbkVycm9yQ2FsbGJhY2suY3BwIFwKKwlE
ZXJpdmVkU291cmNlcy9XZWJDb3JlL0pTUlRDUGVlckNvbm5lY3Rpb25FcnJvckNhbGxiYWNrLmgg
XAogCURlcml2ZWRTb3VyY2VzL1dlYkNvcmUvSlNSVENJY2VDYW5kaWRhdGUuY3BwIFwKIAlEZXJp
dmVkU291cmNlcy9XZWJDb3JlL0pTUlRDSWNlQ2FuZGlkYXRlLmggXAogCURlcml2ZWRTb3VyY2Vz
L1dlYkNvcmUvSlNSVENJY2VDYW5kaWRhdGVFdmVudC5jcHAgXApAQCAtMTIyNyw3ICsxMjI3LDcg
QEAgZG9tX2JpbmRpbmdfaWRscyArPSBcCiAJJChXZWJDb3JlKS9Nb2R1bGVzL21lZGlhc3RyZWFt
L1JUQ0RUTUZUb25lQ2hhbmdlRXZlbnQuaWRsIFwKIAkkKFdlYkNvcmUpL01vZHVsZXMvbWVkaWFz
dHJlYW0vUlRDRGF0YUNoYW5uZWwuaWRsIFwKIAkkKFdlYkNvcmUpL01vZHVsZXMvbWVkaWFzdHJl
YW0vUlRDRGF0YUNoYW5uZWxFdmVudC5pZGwgXAotCSQoV2ViQ29yZSkvTW9kdWxlcy9tZWRpYXN0
cmVhbS9SVENFcnJvckNhbGxiYWNrLmlkbCBcCisJJChXZWJDb3JlKS9Nb2R1bGVzL21lZGlhc3Ry
ZWFtL1JUQ1BlZXJDb25uZWN0aW9uRXJyb3JDYWxsYmFjay5pZGwgXAogCSQoV2ViQ29yZSkvTW9k
dWxlcy9tZWRpYXN0cmVhbS9SVENJY2VDYW5kaWRhdGUuaWRsIFwKIAkkKFdlYkNvcmUpL01vZHVs
ZXMvbWVkaWFzdHJlYW0vUlRDSWNlQ2FuZGlkYXRlRXZlbnQuaWRsIFwKIAkkKFdlYkNvcmUpL01v
ZHVsZXMvbWVkaWFzdHJlYW0vUlRDUGVlckNvbm5lY3Rpb24uaWRsIFwKQEAgLTE5MzYsNyArMTkz
Niw3IEBAIHdlYmNvcmVfbW9kdWxlc19zb3VyY2VzICs9IFwKIAlTb3VyY2UvV2ViQ29yZS9Nb2R1
bGVzL21lZGlhc3RyZWFtL1JUQ0RhdGFDaGFubmVsLmggXAogCVNvdXJjZS9XZWJDb3JlL01vZHVs
ZXMvbWVkaWFzdHJlYW0vUlRDRGF0YUNoYW5uZWxFdmVudC5jcHAgXAogCVNvdXJjZS9XZWJDb3Jl
L01vZHVsZXMvbWVkaWFzdHJlYW0vUlRDRGF0YUNoYW5uZWxFdmVudC5oIFwKLQlTb3VyY2UvV2Vi
Q29yZS9Nb2R1bGVzL21lZGlhc3RyZWFtL1JUQ0Vycm9yQ2FsbGJhY2suaCBcCisJU291cmNlL1dl
YkNvcmUvTW9kdWxlcy9tZWRpYXN0cmVhbS9SVENQZWVyQ29ubmVjdGlvbkVycm9yQ2FsbGJhY2su
aCBcCiAJU291cmNlL1dlYkNvcmUvTW9kdWxlcy9tZWRpYXN0cmVhbS9SVENJY2VDYW5kaWRhdGUu
Y3BwIFwKIAlTb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL21lZGlhc3RyZWFtL1JUQ0ljZUNhbmRpZGF0
ZS5oIFwKIAlTb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL21lZGlhc3RyZWFtL1JUQ0ljZUNhbmRpZGF0
ZUV2ZW50LmNwcCBcCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL21lZGlhc3Ry
ZWFtL1JUQ0Vycm9yQ2FsbGJhY2suaCBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvbWVkaWFzdHJl
YW0vUlRDRXJyb3JDYWxsYmFjay5oCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCA2NDRl
NTZmMGJlYTcwZDUzZTQ5ZjI4OWU0YWZmNjE1N2RhM2VmYmRjLi4wMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwCi0tLSBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvbWVkaWFz
dHJlYW0vUlRDRXJyb3JDYWxsYmFjay5oCisrKyAvZGV2L251bGwKQEAgLTEsNTEgKzAsMCBAQAot
LyoKLSAqIENvcHlyaWdodCAoQykgMjAxMiBHb29nbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVk
LgotICoKLSAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9y
bXMsIHdpdGggb3Igd2l0aG91dAotICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3Zp
ZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCi0gKiBhcmUgbWV0OgotICoKLSAqIDEu
IFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29w
eXJpZ2h0Ci0gKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9s
bG93aW5nIGRpc2NsYWltZXIuCi0gKiAyLiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0g
bXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAotICogICAgbm90aWNlLCB0aGlzIGxp
c3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyCi0gKiAgICBpbiB0
aGUgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhl
Ci0gKiAgICBkaXN0cmlidXRpb24uCi0gKiAzLiBOZWl0aGVyIHRoZSBuYW1lIG9mIEdvb2dsZSBJ
bmMuIG5vciB0aGUgbmFtZXMgb2YgaXRzIGNvbnRyaWJ1dG9ycwotICogICAgbWF5IGJlIHVzZWQg
dG8gZW5kb3JzZSBvciBwcm9tb3RlIHByb2R1Y3RzIGRlcml2ZWQgZnJvbSB0aGlzCi0gKiAgICBz
b2Z0d2FyZSB3aXRob3V0IHNwZWNpZmljIHByaW9yIHdyaXR0ZW4gcGVybWlzc2lvbi4KLSAqCi0g
KiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIFRIRSBDT1BZUklHSFQgSE9MREVSUyBBTkQg
Q09OVFJJQlVUT1JTCi0gKiAiQVMgSVMiIEFORCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJB
TlRJRVMsIElOQ0xVRElORywgQlVUIE5PVAotICogTElNSVRFRCBUTywgVEhFIElNUExJRUQgV0FS
UkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SCi0gKiBBIFBBUlRJQ1VM
QVIgUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgVEhFIENPUFlSSUdI
VAotICogT1dORVIgT1IgQ09OVFJJQlVUT1JTIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5E
SVJFQ1QsIElOQ0lERU5UQUwsCi0gKiBTUEVDSUFMLCBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJ
QUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UCi0gKiBMSU1JVEVEIFRPLCBQUk9DVVJFTUVO
VCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwKLSAqIERBVEEs
IE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5E
IE9OIEFOWQotICogVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RS
SUNUIExJQUJJTElUWSwgT1IgVE9SVAotICogKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVS
V0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFCi0gKiBPRiBUSElTIFNPRlRX
QVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgot
ICovCi0KLSNpZm5kZWYgUlRDRXJyb3JDYWxsYmFja19oCi0jZGVmaW5lIFJUQ0Vycm9yQ2FsbGJh
Y2tfaAotCi0jaWYgRU5BQkxFKE1FRElBX1NUUkVBTSkKLQotI2luY2x1ZGUgPHd0Zi9SZWZDb3Vu
dGVkLmg+Ci0jaW5jbHVkZSA8d3RmL3RleHQvV1RGU3RyaW5nLmg+Ci0KLW5hbWVzcGFjZSBXZWJD
b3JlIHsKLQotY2xhc3MgUlRDRXJyb3JDYWxsYmFjayA6IHB1YmxpYyBSZWZDb3VudGVkPFJUQ0Vy
cm9yQ2FsbGJhY2s+IHsKLXB1YmxpYzoKLSAgICB2aXJ0dWFsIH5SVENFcnJvckNhbGxiYWNrKCkg
eyB9Ci0gICAgdmlydHVhbCBib29sIGhhbmRsZUV2ZW50KGNvbnN0IFN0cmluZyYgZXJyb3JJbmZv
cm1hdGlvbikgPSAwOwotfTsKLQotfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQotCi0jZW5kaWYgLy8g
RU5BQkxFKE1FRElBX1NUUkVBTSkKLQotI2VuZGlmIC8vIFJUQ0Vycm9yQ2FsbGJhY2tfaApkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9tZWRpYXN0cmVhbS9SVENFcnJvckNhbGxi
YWNrLmlkbCBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvbWVkaWFzdHJlYW0vUlRDRXJyb3JDYWxs
YmFjay5pZGwKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IGEyZDQ2NTNkNzAwYzFhNDAz
MDA5NTdiNjUyNGZiOTMwNTcxNTAwM2IuLjAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAKLS0tIGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9tZWRpYXN0cmVhbS9SVENFcnJv
ckNhbGxiYWNrLmlkbAorKysgL2Rldi9udWxsCkBAIC0xLDM2ICswLDAgQEAKLS8qCi0gKiBDb3B5
cmlnaHQgKEMpIDIwMTIgR29vZ2xlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KLSAqCi0gKiBS
ZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9y
IHdpdGhvdXQKLSAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRo
ZSBmb2xsb3dpbmcgY29uZGl0aW9ucwotICogYXJlIG1ldDoKLSAqCi0gKiAxLiBSZWRpc3RyaWJ1
dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAotICog
ICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNj
bGFpbWVyLgotICogMi4gUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9k
dWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKLSAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRp
dGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lcgotICogICAgaW4gdGhlIGRvY3VtZW50
YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZQotICogICAgZGlz
dHJpYnV0aW9uLgotICogMy4gTmVpdGhlciB0aGUgbmFtZSBvZiBHb29nbGUgSW5jLiBub3IgdGhl
IG5hbWVzIG9mIGl0cyBjb250cmlidXRvcnMKLSAqICAgIG1heSBiZSB1c2VkIHRvIGVuZG9yc2Ug
b3IgcHJvbW90ZSBwcm9kdWN0cyBkZXJpdmVkIGZyb20gdGhpcwotICogICAgc29mdHdhcmUgd2l0
aG91dCBzcGVjaWZpYyBwcmlvciB3cml0dGVuIHBlcm1pc3Npb24uCi0gKgotICogVEhJUyBTT0ZU
V0FSRSBJUyBQUk9WSURFRCBCWSBUSEUgQ09QWVJJR0hUIEhPTERFUlMgQU5EIENPTlRSSUJVVE9S
UwotICogIkFTIElTIiBBTkQgQU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNM
VURJTkcsIEJVVCBOT1QKLSAqIExJTUlURUQgVE8sIFRIRSBJTVBMSUVEIFdBUlJBTlRJRVMgT0Yg
TUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUgotICogQSBQQVJUSUNVTEFSIFBVUlBPU0Ug
QVJFIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIFRIRSBDT1BZUklHSFQKLSAqIE9XTkVS
IE9SIENPTlRSSUJVVE9SUyBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJ
REVOVEFMLAotICogU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMg
KElOQ0xVRElORywgQlVUIE5PVAotICogTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YgU1VCU1RJ
VFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsCi0gKiBEQVRBLCBPUiBQUk9GSVRT
OyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkKLSAq
IFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJ
VFksIE9SIFRPUlQKLSAqIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJ
TkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRQotICogT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJ
RiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KLSAqLwotCi1bCi0g
ICAgQ29uZGl0aW9uYWw9TUVESUFfU1RSRUFNLAotXSBjYWxsYmFjayBpbnRlcmZhY2UgUlRDRXJy
b3JDYWxsYmFjayB7Ci0gICAgYm9vbGVhbiBoYW5kbGVFdmVudChET01TdHJpbmcgZXJyb3JJbmZv
cm1hdGlvbik7Ci19OwotCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL21lZGlh
c3RyZWFtL1JUQ1BlZXJDb25uZWN0aW9uLmNwcCBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvbWVk
aWFzdHJlYW0vUlRDUGVlckNvbm5lY3Rpb24uY3BwCmluZGV4IDgzNWFlMjMwMGU3ZjJjNWI3NTJh
N2ZiNzY2ZGQyMTFlYjZlNjgzNzIuLjdlMzRlMTM4MDM0NTRiOTg2NzJhOWZjM2NiMzU3N2RhOGY4
NDU2MGYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvbWVkaWFzdHJlYW0vUlRD
UGVlckNvbm5lY3Rpb24uY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvbWVkaWFzdHJl
YW0vUlRDUGVlckNvbm5lY3Rpb24uY3BwCkBAIC00OSwxMCArNDksMTAgQEAKICNpbmNsdWRlICJS
VENEYXRhQ2hhbm5lbC5oIgogI2luY2x1ZGUgIlJUQ0RhdGFDaGFubmVsRXZlbnQuaCIKICNpbmNs
dWRlICJSVENEYXRhQ2hhbm5lbEhhbmRsZXIuaCIKLSNpbmNsdWRlICJSVENFcnJvckNhbGxiYWNr
LmgiCiAjaW5jbHVkZSAiUlRDSWNlQ2FuZGlkYXRlLmgiCiAjaW5jbHVkZSAiUlRDSWNlQ2FuZGlk
YXRlRGVzY3JpcHRvci5oIgogI2luY2x1ZGUgIlJUQ0ljZUNhbmRpZGF0ZUV2ZW50LmgiCisjaW5j
bHVkZSAiUlRDUGVlckNvbm5lY3Rpb25FcnJvckNhbGxiYWNrLmgiCiAjaW5jbHVkZSAiUlRDU2Vz
c2lvbkRlc2NyaXB0aW9uLmgiCiAjaW5jbHVkZSAiUlRDU2Vzc2lvbkRlc2NyaXB0aW9uQ2FsbGJh
Y2suaCIKICNpbmNsdWRlICJSVENTZXNzaW9uRGVzY3JpcHRpb25EZXNjcmlwdG9yLmgiCkBAIC0x
NzAsNyArMTcwLDcgQEAgUlRDUGVlckNvbm5lY3Rpb246On5SVENQZWVyQ29ubmVjdGlvbigpCiAg
ICAgICAgICgqc3RyZWFtKS0+cmVtb3ZlT2JzZXJ2ZXIodGhpcyk7CiB9CiAKLXZvaWQgUlRDUGVl
ckNvbm5lY3Rpb246OmNyZWF0ZU9mZmVyKFBhc3NSZWZQdHI8UlRDU2Vzc2lvbkRlc2NyaXB0aW9u
Q2FsbGJhY2s+IHN1Y2Nlc3NDYWxsYmFjaywgUGFzc1JlZlB0cjxSVENFcnJvckNhbGxiYWNrPiBl
cnJvckNhbGxiYWNrLCBjb25zdCBEaWN0aW9uYXJ5JiBtZWRpYUNvbnN0cmFpbnRzLCBFeGNlcHRp
b25Db2RlJiBlYykKK3ZvaWQgUlRDUGVlckNvbm5lY3Rpb246OmNyZWF0ZU9mZmVyKFBhc3NSZWZQ
dHI8UlRDU2Vzc2lvbkRlc2NyaXB0aW9uQ2FsbGJhY2s+IHN1Y2Nlc3NDYWxsYmFjaywgUGFzc1Jl
ZlB0cjxSVENQZWVyQ29ubmVjdGlvbkVycm9yQ2FsbGJhY2s+IGVycm9yQ2FsbGJhY2ssIGNvbnN0
IERpY3Rpb25hcnkmIG1lZGlhQ29uc3RyYWludHMsIEV4Y2VwdGlvbkNvZGUmIGVjKQogewogICAg
IGlmIChtX3NpZ25hbGluZ1N0YXRlID09IFNpZ25hbGluZ1N0YXRlQ2xvc2VkKSB7CiAgICAgICAg
IGVjID0gSU5WQUxJRF9TVEFURV9FUlI7CkBAIC0xOTAsNyArMTkwLDcgQEAgdm9pZCBSVENQZWVy
Q29ubmVjdGlvbjo6Y3JlYXRlT2ZmZXIoUGFzc1JlZlB0cjxSVENTZXNzaW9uRGVzY3JpcHRpb25D
YWxsYmFjaz4gc3UKICAgICBtX3BlZXJIYW5kbGVyLT5jcmVhdGVPZmZlcihyZXF1ZXN0LnJlbGVh
c2UoKSwgY29uc3RyYWludHMpOwogfQogCi12b2lkIFJUQ1BlZXJDb25uZWN0aW9uOjpjcmVhdGVB
bnN3ZXIoUGFzc1JlZlB0cjxSVENTZXNzaW9uRGVzY3JpcHRpb25DYWxsYmFjaz4gc3VjY2Vzc0Nh
bGxiYWNrLCBQYXNzUmVmUHRyPFJUQ0Vycm9yQ2FsbGJhY2s+IGVycm9yQ2FsbGJhY2ssIGNvbnN0
IERpY3Rpb25hcnkmIG1lZGlhQ29uc3RyYWludHMsIEV4Y2VwdGlvbkNvZGUmIGVjKQordm9pZCBS
VENQZWVyQ29ubmVjdGlvbjo6Y3JlYXRlQW5zd2VyKFBhc3NSZWZQdHI8UlRDU2Vzc2lvbkRlc2Ny
aXB0aW9uQ2FsbGJhY2s+IHN1Y2Nlc3NDYWxsYmFjaywgUGFzc1JlZlB0cjxSVENQZWVyQ29ubmVj
dGlvbkVycm9yQ2FsbGJhY2s+IGVycm9yQ2FsbGJhY2ssIGNvbnN0IERpY3Rpb25hcnkmIG1lZGlh
Q29uc3RyYWludHMsIEV4Y2VwdGlvbkNvZGUmIGVjKQogewogICAgIGlmIChtX3NpZ25hbGluZ1N0
YXRlID09IFNpZ25hbGluZ1N0YXRlQ2xvc2VkKSB7CiAgICAgICAgIGVjID0gSU5WQUxJRF9TVEFU
RV9FUlI7CkBAIC0yMTAsNyArMjEwLDcgQEAgdm9pZCBSVENQZWVyQ29ubmVjdGlvbjo6Y3JlYXRl
QW5zd2VyKFBhc3NSZWZQdHI8UlRDU2Vzc2lvbkRlc2NyaXB0aW9uQ2FsbGJhY2s+IHMKICAgICBt
X3BlZXJIYW5kbGVyLT5jcmVhdGVBbnN3ZXIocmVxdWVzdC5yZWxlYXNlKCksIGNvbnN0cmFpbnRz
LnJlbGVhc2UoKSk7CiB9CiAKLXZvaWQgUlRDUGVlckNvbm5lY3Rpb246OnNldExvY2FsRGVzY3Jp
cHRpb24oUGFzc1JlZlB0cjxSVENTZXNzaW9uRGVzY3JpcHRpb24+IHBycFNlc3Npb25EZXNjcmlw
dGlvbiwgUGFzc1JlZlB0cjxWb2lkQ2FsbGJhY2s+IHN1Y2Nlc3NDYWxsYmFjaywgUGFzc1JlZlB0
cjxSVENFcnJvckNhbGxiYWNrPiBlcnJvckNhbGxiYWNrLCBFeGNlcHRpb25Db2RlJiBlYykKK3Zv
aWQgUlRDUGVlckNvbm5lY3Rpb246OnNldExvY2FsRGVzY3JpcHRpb24oUGFzc1JlZlB0cjxSVENT
ZXNzaW9uRGVzY3JpcHRpb24+IHBycFNlc3Npb25EZXNjcmlwdGlvbiwgUGFzc1JlZlB0cjxWb2lk
Q2FsbGJhY2s+IHN1Y2Nlc3NDYWxsYmFjaywgUGFzc1JlZlB0cjxSVENQZWVyQ29ubmVjdGlvbkVy
cm9yQ2FsbGJhY2s+IGVycm9yQ2FsbGJhY2ssIEV4Y2VwdGlvbkNvZGUmIGVjKQogewogICAgIGlm
IChtX3NpZ25hbGluZ1N0YXRlID09IFNpZ25hbGluZ1N0YXRlQ2xvc2VkKSB7CiAgICAgICAgIGVj
ID0gSU5WQUxJRF9TVEFURV9FUlI7CkBAIC0yMzksNyArMjM5LDcgQEAgUGFzc1JlZlB0cjxSVENT
ZXNzaW9uRGVzY3JpcHRpb24+IFJUQ1BlZXJDb25uZWN0aW9uOjpsb2NhbERlc2NyaXB0aW9uKEV4
Y2VwdGlvbkMKICAgICByZXR1cm4gc2Vzc2lvbkRlc2NyaXB0aW9uLnJlbGVhc2UoKTsKIH0KIAot
dm9pZCBSVENQZWVyQ29ubmVjdGlvbjo6c2V0UmVtb3RlRGVzY3JpcHRpb24oUGFzc1JlZlB0cjxS
VENTZXNzaW9uRGVzY3JpcHRpb24+IHBycFNlc3Npb25EZXNjcmlwdGlvbiwgUGFzc1JlZlB0cjxW
b2lkQ2FsbGJhY2s+IHN1Y2Nlc3NDYWxsYmFjaywgUGFzc1JlZlB0cjxSVENFcnJvckNhbGxiYWNr
PiBlcnJvckNhbGxiYWNrLCBFeGNlcHRpb25Db2RlJiBlYykKK3ZvaWQgUlRDUGVlckNvbm5lY3Rp
b246OnNldFJlbW90ZURlc2NyaXB0aW9uKFBhc3NSZWZQdHI8UlRDU2Vzc2lvbkRlc2NyaXB0aW9u
PiBwcnBTZXNzaW9uRGVzY3JpcHRpb24sIFBhc3NSZWZQdHI8Vm9pZENhbGxiYWNrPiBzdWNjZXNz
Q2FsbGJhY2ssIFBhc3NSZWZQdHI8UlRDUGVlckNvbm5lY3Rpb25FcnJvckNhbGxiYWNrPiBlcnJv
ckNhbGxiYWNrLCBFeGNlcHRpb25Db2RlJiBlYykKIHsKICAgICBpZiAobV9zaWduYWxpbmdTdGF0
ZSA9PSBTaWduYWxpbmdTdGF0ZUNsb3NlZCkgewogICAgICAgICBlYyA9IElOVkFMSURfU1RBVEVf
RVJSOwpAQCAtMjg4LDcgKzI4OCw3IEBAIHZvaWQgUlRDUGVlckNvbm5lY3Rpb246OnVwZGF0ZUlj
ZShjb25zdCBEaWN0aW9uYXJ5JiBydGNDb25maWd1cmF0aW9uLCBjb25zdCBEaWN0CiAgICAgICAg
IGVjID0gU1lOVEFYX0VSUjsKIH0KIAotdm9pZCBSVENQZWVyQ29ubmVjdGlvbjo6YWRkSWNlQ2Fu
ZGlkYXRlKFJUQ0ljZUNhbmRpZGF0ZSogaWNlQ2FuZGlkYXRlLCBQYXNzUmVmUHRyPFZvaWRDYWxs
YmFjaz4gc3VjY2Vzc0NhbGxiYWNrLCBQYXNzUmVmUHRyPFJUQ0Vycm9yQ2FsbGJhY2s+IGVycm9y
Q2FsbGJhY2ssIEV4Y2VwdGlvbkNvZGUmIGVjKQordm9pZCBSVENQZWVyQ29ubmVjdGlvbjo6YWRk
SWNlQ2FuZGlkYXRlKFJUQ0ljZUNhbmRpZGF0ZSogaWNlQ2FuZGlkYXRlLCBQYXNzUmVmUHRyPFZv
aWRDYWxsYmFjaz4gc3VjY2Vzc0NhbGxiYWNrLCBQYXNzUmVmUHRyPFJUQ1BlZXJDb25uZWN0aW9u
RXJyb3JDYWxsYmFjaz4gZXJyb3JDYWxsYmFjaywgRXhjZXB0aW9uQ29kZSYgZWMpCiB7CiAgICAg
aWYgKG1fc2lnbmFsaW5nU3RhdGUgPT0gU2lnbmFsaW5nU3RhdGVDbG9zZWQpIHsKICAgICAgICAg
ZWMgPSBJTlZBTElEX1NUQVRFX0VSUjsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL01vZHVs
ZXMvbWVkaWFzdHJlYW0vUlRDUGVlckNvbm5lY3Rpb24uaCBiL1NvdXJjZS9XZWJDb3JlL01vZHVs
ZXMvbWVkaWFzdHJlYW0vUlRDUGVlckNvbm5lY3Rpb24uaAppbmRleCA0M2I5NmMzNmUxY2Y3OTJj
MDA0Y2U2OTYwZGE2ZjYwMjg4MGE0ZThmLi4wZThkYzNjNjAzNTMwMTc1OWM5MDg3ZmYzYjA4OWJi
MmUwNGQzY2U4IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL21lZGlhc3RyZWFt
L1JUQ1BlZXJDb25uZWN0aW9uLmgKKysrIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9tZWRpYXN0
cmVhbS9SVENQZWVyQ29ubmVjdGlvbi5oCkBAIC01Myw3ICs1Myw3IEBAIGNsYXNzIE1lZGlhU3Ry
ZWFtVHJhY2s7CiBjbGFzcyBSVENDb25maWd1cmF0aW9uOwogY2xhc3MgUlRDRFRNRlNlbmRlcjsK
IGNsYXNzIFJUQ0RhdGFDaGFubmVsOwotY2xhc3MgUlRDRXJyb3JDYWxsYmFjazsKK2NsYXNzIFJU
Q1BlZXJDb25uZWN0aW9uRXJyb3JDYWxsYmFjazsKIGNsYXNzIFJUQ1Nlc3Npb25EZXNjcmlwdGlv
bjsKIGNsYXNzIFJUQ1Nlc3Npb25EZXNjcmlwdGlvbkNhbGxiYWNrOwogY2xhc3MgUlRDU3RhdHND
YWxsYmFjazsKQEAgLTY0LDIxICs2NCwyMSBAQCBwdWJsaWM6CiAgICAgc3RhdGljIFBhc3NSZWZQ
dHI8UlRDUGVlckNvbm5lY3Rpb24+IGNyZWF0ZShTY3JpcHRFeGVjdXRpb25Db250ZXh0JiwgY29u
c3QgRGljdGlvbmFyeSYgcnRjQ29uZmlndXJhdGlvbiwgY29uc3QgRGljdGlvbmFyeSYgbWVkaWFD
b25zdHJhaW50cywgRXhjZXB0aW9uQ29kZSYpOwogICAgIH5SVENQZWVyQ29ubmVjdGlvbigpOwog
Ci0gICAgdm9pZCBjcmVhdGVPZmZlcihQYXNzUmVmUHRyPFJUQ1Nlc3Npb25EZXNjcmlwdGlvbkNh
bGxiYWNrPiwgUGFzc1JlZlB0cjxSVENFcnJvckNhbGxiYWNrPiwgY29uc3QgRGljdGlvbmFyeSYg
bWVkaWFDb25zdHJhaW50cywgRXhjZXB0aW9uQ29kZSYpOworICAgIHZvaWQgY3JlYXRlT2ZmZXIo
UGFzc1JlZlB0cjxSVENTZXNzaW9uRGVzY3JpcHRpb25DYWxsYmFjaz4sIFBhc3NSZWZQdHI8UlRD
UGVlckNvbm5lY3Rpb25FcnJvckNhbGxiYWNrPiwgY29uc3QgRGljdGlvbmFyeSYgbWVkaWFDb25z
dHJhaW50cywgRXhjZXB0aW9uQ29kZSYpOwogCi0gICAgdm9pZCBjcmVhdGVBbnN3ZXIoUGFzc1Jl
ZlB0cjxSVENTZXNzaW9uRGVzY3JpcHRpb25DYWxsYmFjaz4sIFBhc3NSZWZQdHI8UlRDRXJyb3JD
YWxsYmFjaz4sIGNvbnN0IERpY3Rpb25hcnkmIG1lZGlhQ29uc3RyYWludHMsIEV4Y2VwdGlvbkNv
ZGUmKTsKKyAgICB2b2lkIGNyZWF0ZUFuc3dlcihQYXNzUmVmUHRyPFJUQ1Nlc3Npb25EZXNjcmlw
dGlvbkNhbGxiYWNrPiwgUGFzc1JlZlB0cjxSVENQZWVyQ29ubmVjdGlvbkVycm9yQ2FsbGJhY2s+
LCBjb25zdCBEaWN0aW9uYXJ5JiBtZWRpYUNvbnN0cmFpbnRzLCBFeGNlcHRpb25Db2RlJik7CiAK
LSAgICB2b2lkIHNldExvY2FsRGVzY3JpcHRpb24oUGFzc1JlZlB0cjxSVENTZXNzaW9uRGVzY3Jp
cHRpb24+LCBQYXNzUmVmUHRyPFZvaWRDYWxsYmFjaz4sIFBhc3NSZWZQdHI8UlRDRXJyb3JDYWxs
YmFjaz4sIEV4Y2VwdGlvbkNvZGUmKTsKKyAgICB2b2lkIHNldExvY2FsRGVzY3JpcHRpb24oUGFz
c1JlZlB0cjxSVENTZXNzaW9uRGVzY3JpcHRpb24+LCBQYXNzUmVmUHRyPFZvaWRDYWxsYmFjaz4s
IFBhc3NSZWZQdHI8UlRDUGVlckNvbm5lY3Rpb25FcnJvckNhbGxiYWNrPiwgRXhjZXB0aW9uQ29k
ZSYpOwogICAgIFBhc3NSZWZQdHI8UlRDU2Vzc2lvbkRlc2NyaXB0aW9uPiBsb2NhbERlc2NyaXB0
aW9uKEV4Y2VwdGlvbkNvZGUmKTsKIAotICAgIHZvaWQgc2V0UmVtb3RlRGVzY3JpcHRpb24oUGFz
c1JlZlB0cjxSVENTZXNzaW9uRGVzY3JpcHRpb24+LCBQYXNzUmVmUHRyPFZvaWRDYWxsYmFjaz4s
IFBhc3NSZWZQdHI8UlRDRXJyb3JDYWxsYmFjaz4sIEV4Y2VwdGlvbkNvZGUmKTsKKyAgICB2b2lk
IHNldFJlbW90ZURlc2NyaXB0aW9uKFBhc3NSZWZQdHI8UlRDU2Vzc2lvbkRlc2NyaXB0aW9uPiwg
UGFzc1JlZlB0cjxWb2lkQ2FsbGJhY2s+LCBQYXNzUmVmUHRyPFJUQ1BlZXJDb25uZWN0aW9uRXJy
b3JDYWxsYmFjaz4sIEV4Y2VwdGlvbkNvZGUmKTsKICAgICBQYXNzUmVmUHRyPFJUQ1Nlc3Npb25E
ZXNjcmlwdGlvbj4gcmVtb3RlRGVzY3JpcHRpb24oRXhjZXB0aW9uQ29kZSYpOwogCiAgICAgU3Ry
aW5nIHNpZ25hbGluZ1N0YXRlKCkgY29uc3Q7CiAKICAgICB2b2lkIHVwZGF0ZUljZShjb25zdCBE
aWN0aW9uYXJ5JiBydGNDb25maWd1cmF0aW9uLCBjb25zdCBEaWN0aW9uYXJ5JiBtZWRpYUNvbnN0
cmFpbnRzLCBFeGNlcHRpb25Db2RlJik7CiAKLSAgICB2b2lkIGFkZEljZUNhbmRpZGF0ZShSVENJ
Y2VDYW5kaWRhdGUqLCBQYXNzUmVmUHRyPFZvaWRDYWxsYmFjaz4sIFBhc3NSZWZQdHI8UlRDRXJy
b3JDYWxsYmFjaz4sIEV4Y2VwdGlvbkNvZGUmKTsKKyAgICB2b2lkIGFkZEljZUNhbmRpZGF0ZShS
VENJY2VDYW5kaWRhdGUqLCBQYXNzUmVmUHRyPFZvaWRDYWxsYmFjaz4sIFBhc3NSZWZQdHI8UlRD
UGVlckNvbm5lY3Rpb25FcnJvckNhbGxiYWNrPiwgRXhjZXB0aW9uQ29kZSYpOwogCiAgICAgU3Ry
aW5nIGljZUdhdGhlcmluZ1N0YXRlKCkgY29uc3Q7CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJD
b3JlL01vZHVsZXMvbWVkaWFzdHJlYW0vUlRDUGVlckNvbm5lY3Rpb24uaWRsIGIvU291cmNlL1dl
YkNvcmUvTW9kdWxlcy9tZWRpYXN0cmVhbS9SVENQZWVyQ29ubmVjdGlvbi5pZGwKaW5kZXggNmYy
NjMxM2Y1ZDU0OWYwNmE1YTc0M2M0ZTY2ZTkyZDkyOWEyZDU0Yi4uMWQ2MDE3ZjY1ZjZkZTc3MmQ1
YjcyODU0YWU0NDBmNGU3ZDYwMTkxMCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvTW9kdWxl
cy9tZWRpYXN0cmVhbS9SVENQZWVyQ29ubmVjdGlvbi5pZGwKKysrIGIvU291cmNlL1dlYkNvcmUv
TW9kdWxlcy9tZWRpYXN0cmVhbS9SVENQZWVyQ29ubmVjdGlvbi5pZGwKQEAgLTM5LDIxICszOSwy
MSBAQAogICAgIEV2ZW50VGFyZ2V0LAogICAgIEludGVyZmFjZU5hbWU9d2Via2l0UlRDUGVlckNv
bm5lY3Rpb24sCiBdIGludGVyZmFjZSBSVENQZWVyQ29ubmVjdGlvbiB7Ci0gICAgW1JhaXNlc0V4
Y2VwdGlvbl0gdm9pZCBjcmVhdGVPZmZlcihSVENTZXNzaW9uRGVzY3JpcHRpb25DYWxsYmFjayBz
dWNjZXNzQ2FsbGJhY2ssIFtEZWZhdWx0PVVuZGVmaW5lZF0gb3B0aW9uYWwgUlRDRXJyb3JDYWxs
YmFjayBmYWlsdXJlQ2FsbGJhY2ssIG9wdGlvbmFsIERpY3Rpb25hcnkgbWVkaWFDb25zdHJhaW50
cyk7CisgICAgW1JhaXNlc0V4Y2VwdGlvbl0gdm9pZCBjcmVhdGVPZmZlcihSVENTZXNzaW9uRGVz
Y3JpcHRpb25DYWxsYmFjayBzdWNjZXNzQ2FsbGJhY2ssIFtEZWZhdWx0PVVuZGVmaW5lZF0gb3B0
aW9uYWwgUlRDUGVlckNvbm5lY3Rpb25FcnJvckNhbGxiYWNrIGZhaWx1cmVDYWxsYmFjaywgb3B0
aW9uYWwgRGljdGlvbmFyeSBtZWRpYUNvbnN0cmFpbnRzKTsKIAotICAgIFtSYWlzZXNFeGNlcHRp
b25dIHZvaWQgY3JlYXRlQW5zd2VyKFJUQ1Nlc3Npb25EZXNjcmlwdGlvbkNhbGxiYWNrIHN1Y2Nl
c3NDYWxsYmFjaywgW0RlZmF1bHQ9VW5kZWZpbmVkXSBvcHRpb25hbCBSVENFcnJvckNhbGxiYWNr
IGZhaWx1cmVDYWxsYmFjaywgb3B0aW9uYWwgRGljdGlvbmFyeSBtZWRpYUNvbnN0cmFpbnRzKTsK
KyAgICBbUmFpc2VzRXhjZXB0aW9uXSB2b2lkIGNyZWF0ZUFuc3dlcihSVENTZXNzaW9uRGVzY3Jp
cHRpb25DYWxsYmFjayBzdWNjZXNzQ2FsbGJhY2ssIFtEZWZhdWx0PVVuZGVmaW5lZF0gb3B0aW9u
YWwgUlRDUGVlckNvbm5lY3Rpb25FcnJvckNhbGxiYWNrIGZhaWx1cmVDYWxsYmFjaywgb3B0aW9u
YWwgRGljdGlvbmFyeSBtZWRpYUNvbnN0cmFpbnRzKTsKIAotICAgIFtSYWlzZXNFeGNlcHRpb25d
IHZvaWQgc2V0TG9jYWxEZXNjcmlwdGlvbihSVENTZXNzaW9uRGVzY3JpcHRpb24gZGVzY3JpcHRp
b24sIFtEZWZhdWx0PVVuZGVmaW5lZF0gb3B0aW9uYWwgVm9pZENhbGxiYWNrIHN1Y2Nlc3NDYWxs
YmFjaywgW0RlZmF1bHQ9VW5kZWZpbmVkXSBvcHRpb25hbCBSVENFcnJvckNhbGxiYWNrIGZhaWx1
cmVDYWxsYmFjayk7CisgICAgW1JhaXNlc0V4Y2VwdGlvbl0gdm9pZCBzZXRMb2NhbERlc2NyaXB0
aW9uKFJUQ1Nlc3Npb25EZXNjcmlwdGlvbiBkZXNjcmlwdGlvbiwgW0RlZmF1bHQ9VW5kZWZpbmVk
XSBvcHRpb25hbCBWb2lkQ2FsbGJhY2sgc3VjY2Vzc0NhbGxiYWNrLCBbRGVmYXVsdD1VbmRlZmlu
ZWRdIG9wdGlvbmFsIFJUQ1BlZXJDb25uZWN0aW9uRXJyb3JDYWxsYmFjayBmYWlsdXJlQ2FsbGJh
Y2spOwogICAgIFtHZXR0ZXJSYWlzZXNFeGNlcHRpb25dIHJlYWRvbmx5IGF0dHJpYnV0ZSBSVENT
ZXNzaW9uRGVzY3JpcHRpb24gbG9jYWxEZXNjcmlwdGlvbjsKIAotICAgIFtSYWlzZXNFeGNlcHRp
b25dIHZvaWQgc2V0UmVtb3RlRGVzY3JpcHRpb24oUlRDU2Vzc2lvbkRlc2NyaXB0aW9uIGRlc2Ny
aXB0aW9uLCBbRGVmYXVsdD1VbmRlZmluZWRdIG9wdGlvbmFsIFZvaWRDYWxsYmFjayBzdWNjZXNz
Q2FsbGJhY2ssIFtEZWZhdWx0PVVuZGVmaW5lZF0gb3B0aW9uYWwgUlRDRXJyb3JDYWxsYmFjayBm
YWlsdXJlQ2FsbGJhY2spOworICAgIFtSYWlzZXNFeGNlcHRpb25dIHZvaWQgc2V0UmVtb3RlRGVz
Y3JpcHRpb24oUlRDU2Vzc2lvbkRlc2NyaXB0aW9uIGRlc2NyaXB0aW9uLCBbRGVmYXVsdD1VbmRl
ZmluZWRdIG9wdGlvbmFsIFZvaWRDYWxsYmFjayBzdWNjZXNzQ2FsbGJhY2ssIFtEZWZhdWx0PVVu
ZGVmaW5lZF0gb3B0aW9uYWwgUlRDUGVlckNvbm5lY3Rpb25FcnJvckNhbGxiYWNrIGZhaWx1cmVD
YWxsYmFjayk7CiAgICAgW0dldHRlclJhaXNlc0V4Y2VwdGlvbl0gcmVhZG9ubHkgYXR0cmlidXRl
IFJUQ1Nlc3Npb25EZXNjcmlwdGlvbiByZW1vdGVEZXNjcmlwdGlvbjsKIAogICAgIHJlYWRvbmx5
IGF0dHJpYnV0ZSBET01TdHJpbmcgc2lnbmFsaW5nU3RhdGU7CiAKICAgICBbUmFpc2VzRXhjZXB0
aW9uXSB2b2lkIHVwZGF0ZUljZShvcHRpb25hbCBEaWN0aW9uYXJ5IGNvbmZpZ3VyYXRpb24sIG9w
dGlvbmFsIERpY3Rpb25hcnkgbWVkaWFDb25zdHJhaW50cyk7CiAKLSAgICBbUmFpc2VzRXhjZXB0
aW9uXSB2b2lkIGFkZEljZUNhbmRpZGF0ZShSVENJY2VDYW5kaWRhdGUgY2FuZGlkYXRlLCBWb2lk
Q2FsbGJhY2sgc3VjY2Vzc0NhbGxiYWNrLCBSVENFcnJvckNhbGxiYWNrIGZhaWx1cmVDYWxsYmFj
ayk7CisgICAgW1JhaXNlc0V4Y2VwdGlvbl0gdm9pZCBhZGRJY2VDYW5kaWRhdGUoUlRDSWNlQ2Fu
ZGlkYXRlIGNhbmRpZGF0ZSwgVm9pZENhbGxiYWNrIHN1Y2Nlc3NDYWxsYmFjaywgUlRDUGVlckNv
bm5lY3Rpb25FcnJvckNhbGxiYWNrIGZhaWx1cmVDYWxsYmFjayk7CiAKICAgICByZWFkb25seSBh
dHRyaWJ1dGUgRE9NU3RyaW5nIGljZUdhdGhlcmluZ1N0YXRlOwogICAgIHJlYWRvbmx5IGF0dHJp
YnV0ZSBET01TdHJpbmcgaWNlQ29ubmVjdGlvblN0YXRlOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dl
YkNvcmUvTW9kdWxlcy9tZWRpYXN0cmVhbS9SVENQZWVyQ29ubmVjdGlvbkVycm9yQ2FsbGJhY2su
aCBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvbWVkaWFzdHJlYW0vUlRDUGVlckNvbm5lY3Rpb25F
cnJvckNhbGxiYWNrLmgKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uYzJhZWNiYTBhNGNkOWFhOWYyZTcyNjEwN2ZlNmZk
MTcxZjIwNWVlYwotLS0gL2Rldi9udWxsCisrKyBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvbWVk
aWFzdHJlYW0vUlRDUGVlckNvbm5lY3Rpb25FcnJvckNhbGxiYWNrLmgKQEAgLTAsMCArMSw0NiBA
QAorLyoKKyAqIENvcHlyaWdodCAoQykgMjAxMyBOb2tpYSBDb3Jwb3JhdGlvbiBhbmQvb3IgaXRz
IHN1YnNpZGlhcnkoLWllcykuCisgKgorICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3Vy
Y2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CisgKiBtb2RpZmljYXRpb24sIGFy
ZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKKyAqIGFy
ZSBtZXQ6CisgKiAxLiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4g
dGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9u
cyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgorICogMi4gUmVkaXN0cmlidXRpb25zIGlu
IGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5v
dGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1l
ciBpbiB0aGUKKyAqICAgIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92
aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCisgKgorICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9W
SURFRCBCWSBUSEUgQ09QWVJJR0hUIEhPTERFUlMgQU5EIENPTlRSSUJVVE9SUworICogIkFTIElT
IiBBTkQgQU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBO
T1QKKyAqIExJTUlURUQgVE8sIFRIRSBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklM
SVRZIEFORCBGSVRORVNTIEZPUgorICogQSBQQVJUSUNVTEFSIFBVUlBPU0UgQVJFIERJU0NMQUlN
RUQuIElOIE5PIEVWRU5UIFNIQUxMIFRIRSBDT1BZUklHSFQKKyAqIE9XTkVSIE9SIENPTlRSSUJV
VE9SUyBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLAorICog
U1BFQ0lBTCwgRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywg
QlVUIE5PVAorICogTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBP
UiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsCisgKiBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVT
UyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkKKyAqIFRIRU9SWSBPRiBM
SUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQK
KyAqIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdB
WSBPVVQgT0YgVEhFIFVTRQorICogT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9G
IFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KKyAqLworCisjaWZuZGVmIFJUQ1BlZXJD
b25uZWN0aW9uRXJyb3JDYWxsYmFja19oCisjZGVmaW5lIFJUQ1BlZXJDb25uZWN0aW9uRXJyb3JD
YWxsYmFja19oCisKKyNpZiBFTkFCTEUoTUVESUFfU1RSRUFNKQorCisjaW5jbHVkZSAiRE9NRXJy
b3IuaCIKKyNpbmNsdWRlIDx3dGYvUmVmQ291bnRlZC5oPgorCituYW1lc3BhY2UgV2ViQ29yZSB7
CisKK2NsYXNzIFJUQ1BlZXJDb25uZWN0aW9uRXJyb3JDYWxsYmFjayA6IHB1YmxpYyBSZWZDb3Vu
dGVkPFJUQ1BlZXJDb25uZWN0aW9uRXJyb3JDYWxsYmFjaz4geworcHVibGljOgorICAgIHZpcnR1
YWwgflJUQ1BlZXJDb25uZWN0aW9uRXJyb3JDYWxsYmFjaygpIHsgfQorICAgIHZpcnR1YWwgYm9v
bCBoYW5kbGVFdmVudChET01FcnJvciopID0gMDsKK307CisKK30gLy8gbmFtZXNwYWNlIFdlYkNv
cmUKKworI2VuZGlmIC8vIEVOQUJMRShNRURJQV9TVFJFQU0pCisKKyNlbmRpZiAvLyBSVENQZWVy
Q29ubmVjdGlvbkVycm9yQ2FsbGJhY2tfaApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvTW9k
dWxlcy9tZWRpYXN0cmVhbS9SVENQZWVyQ29ubmVjdGlvbkVycm9yQ2FsbGJhY2suaWRsIGIvU291
cmNlL1dlYkNvcmUvTW9kdWxlcy9tZWRpYXN0cmVhbS9SVENQZWVyQ29ubmVjdGlvbkVycm9yQ2Fs
bGJhY2suaWRsCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAuLjRiODdhZDdmZjA0ZTM3M2NhNGMwMDM1ZGEyZjY0MjhiZjI4
ZjA3MjIKLS0tIC9kZXYvbnVsbAorKysgYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL21lZGlhc3Ry
ZWFtL1JUQ1BlZXJDb25uZWN0aW9uRXJyb3JDYWxsYmFjay5pZGwKQEAgLTAsMCArMSwzMSBAQAor
LyoKKyAqIENvcHlyaWdodCAoQykgMjAxMyBOb2tpYSBDb3Jwb3JhdGlvbiBhbmQvb3IgaXRzIHN1
YnNpZGlhcnkoLWllcykuCisgKgorICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2Ug
YW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CisgKiBtb2RpZmljYXRpb24sIGFyZSBw
ZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKKyAqIGFyZSBt
ZXQ6CisgKiAxLiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhl
IGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBh
bmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgorICogMi4gUmVkaXN0cmlidXRpb25zIGluIGJp
bmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGlj
ZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBp
biB0aGUKKyAqICAgIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRl
ZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCisgKgorICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURF
RCBCWSBUSEUgQ09QWVJJR0hUIEhPTERFUlMgQU5EIENPTlRSSUJVVE9SUworICogIkFTIElTIiBB
TkQgQU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QK
KyAqIExJTUlURUQgVE8sIFRIRSBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZ
IEFORCBGSVRORVNTIEZPUgorICogQSBQQVJUSUNVTEFSIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQu
IElOIE5PIEVWRU5UIFNIQUxMIFRIRSBDT1BZUklHSFQKKyAqIE9XTkVSIE9SIENPTlRSSUJVVE9S
UyBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLAorICogU1BF
Q0lBTCwgRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVU
IE5PVAorICogTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUiBT
RVJWSUNFUzsgTE9TUyBPRiBVU0UsCisgKiBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJ
TlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkKKyAqIFRIRU9SWSBPRiBMSUFC
SUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQKKyAq
IChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBP
VVQgT0YgVEhFIFVTRQorICogT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRI
RSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KKyAqLworCitbCisgICAgQ29uZGl0aW9uYWw9
TUVESUFfU1RSRUFNLAorXSBjYWxsYmFjayBpbnRlcmZhY2UgUlRDUGVlckNvbm5lY3Rpb25FcnJv
ckNhbGxiYWNrIHsKKyAgICBib29sZWFuIGhhbmRsZUV2ZW50KERPTUVycm9yIGVycm9yKTsKK307
CisKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvbWVkaWFzdHJlYW0vUlRDU2Vz
c2lvbkRlc2NyaXB0aW9uUmVxdWVzdEltcGwuY3BwIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9t
ZWRpYXN0cmVhbS9SVENTZXNzaW9uRGVzY3JpcHRpb25SZXF1ZXN0SW1wbC5jcHAKaW5kZXggNDA4
MWU5MzRhYTI0NTEyOWM4ZDlhYTA3NTkxMGU4OGUwNjVmMmNjNi4uODcyYTU0ZTE4YTExODU4NTAx
NjQ2MzAwYzMwYzUxMmE0MTRiMzE3MSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvTW9kdWxl
cy9tZWRpYXN0cmVhbS9SVENTZXNzaW9uRGVzY3JpcHRpb25SZXF1ZXN0SW1wbC5jcHAKKysrIGIv
U291cmNlL1dlYkNvcmUvTW9kdWxlcy9tZWRpYXN0cmVhbS9SVENTZXNzaW9uRGVzY3JpcHRpb25S
ZXF1ZXN0SW1wbC5jcHAKQEAgLTEsNSArMSw2IEBACiAvKgogICogQ29weXJpZ2h0IChDKSAyMDEy
IEdvb2dsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKiBDb3B5cmlnaHQgKEMpIDIwMTMg
Tm9raWEgQ29ycG9yYXRpb24gYW5kL29yIGl0cyBzdWJzaWRpYXJ5KC1pZXMpLgogICoKICAqIFJl
ZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Ig
d2l0aG91dAogICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhl
IGZvbGxvd2luZyBjb25kaXRpb25zCkBAIC0zNCwyMiArMzUsMjIgQEAKIAogI2luY2x1ZGUgIlJU
Q1Nlc3Npb25EZXNjcmlwdGlvblJlcXVlc3RJbXBsLmgiCiAKLSNpbmNsdWRlICJSVENFcnJvckNh
bGxiYWNrLmgiCiAjaW5jbHVkZSAiUlRDUGVlckNvbm5lY3Rpb24uaCIKKyNpbmNsdWRlICJSVENQ
ZWVyQ29ubmVjdGlvbkVycm9yQ2FsbGJhY2suaCIKICNpbmNsdWRlICJSVENTZXNzaW9uRGVzY3Jp
cHRpb24uaCIKICNpbmNsdWRlICJSVENTZXNzaW9uRGVzY3JpcHRpb25DYWxsYmFjay5oIgogI2lu
Y2x1ZGUgIlJUQ1Nlc3Npb25EZXNjcmlwdGlvbkRlc2NyaXB0b3IuaCIKIAogbmFtZXNwYWNlIFdl
YkNvcmUgewogCi1QYXNzUmVmUHRyPFJUQ1Nlc3Npb25EZXNjcmlwdGlvblJlcXVlc3RJbXBsPiBS
VENTZXNzaW9uRGVzY3JpcHRpb25SZXF1ZXN0SW1wbDo6Y3JlYXRlKFNjcmlwdEV4ZWN1dGlvbkNv
bnRleHQqIGNvbnRleHQsIFBhc3NSZWZQdHI8UlRDU2Vzc2lvbkRlc2NyaXB0aW9uQ2FsbGJhY2s+
IHN1Y2Nlc3NDYWxsYmFjaywgUGFzc1JlZlB0cjxSVENFcnJvckNhbGxiYWNrPiBlcnJvckNhbGxi
YWNrKQorUGFzc1JlZlB0cjxSVENTZXNzaW9uRGVzY3JpcHRpb25SZXF1ZXN0SW1wbD4gUlRDU2Vz
c2lvbkRlc2NyaXB0aW9uUmVxdWVzdEltcGw6OmNyZWF0ZShTY3JpcHRFeGVjdXRpb25Db250ZXh0
KiBjb250ZXh0LCBQYXNzUmVmUHRyPFJUQ1Nlc3Npb25EZXNjcmlwdGlvbkNhbGxiYWNrPiBzdWNj
ZXNzQ2FsbGJhY2ssIFBhc3NSZWZQdHI8UlRDUGVlckNvbm5lY3Rpb25FcnJvckNhbGxiYWNrPiBl
cnJvckNhbGxiYWNrKQogewogICAgIFJlZlB0cjxSVENTZXNzaW9uRGVzY3JpcHRpb25SZXF1ZXN0
SW1wbD4gcmVxdWVzdCA9IGFkb3B0UmVmKG5ldyBSVENTZXNzaW9uRGVzY3JpcHRpb25SZXF1ZXN0
SW1wbChjb250ZXh0LCBzdWNjZXNzQ2FsbGJhY2ssIGVycm9yQ2FsbGJhY2spKTsKICAgICByZXF1
ZXN0LT5zdXNwZW5kSWZOZWVkZWQoKTsKICAgICByZXR1cm4gcmVxdWVzdC5yZWxlYXNlKCk7CiB9
CiAKLVJUQ1Nlc3Npb25EZXNjcmlwdGlvblJlcXVlc3RJbXBsOjpSVENTZXNzaW9uRGVzY3JpcHRp
b25SZXF1ZXN0SW1wbChTY3JpcHRFeGVjdXRpb25Db250ZXh0KiBjb250ZXh0LCBQYXNzUmVmUHRy
PFJUQ1Nlc3Npb25EZXNjcmlwdGlvbkNhbGxiYWNrPiBzdWNjZXNzQ2FsbGJhY2ssIFBhc3NSZWZQ
dHI8UlRDRXJyb3JDYWxsYmFjaz4gZXJyb3JDYWxsYmFjaykKK1JUQ1Nlc3Npb25EZXNjcmlwdGlv
blJlcXVlc3RJbXBsOjpSVENTZXNzaW9uRGVzY3JpcHRpb25SZXF1ZXN0SW1wbChTY3JpcHRFeGVj
dXRpb25Db250ZXh0KiBjb250ZXh0LCBQYXNzUmVmUHRyPFJUQ1Nlc3Npb25EZXNjcmlwdGlvbkNh
bGxiYWNrPiBzdWNjZXNzQ2FsbGJhY2ssIFBhc3NSZWZQdHI8UlRDUGVlckNvbm5lY3Rpb25FcnJv
ckNhbGxiYWNrPiBlcnJvckNhbGxiYWNrKQogICAgIDogQWN0aXZlRE9NT2JqZWN0KGNvbnRleHQp
CiAgICAgLCBtX3N1Y2Nlc3NDYWxsYmFjayhzdWNjZXNzQ2FsbGJhY2spCiAgICAgLCBtX2Vycm9y
Q2FsbGJhY2soZXJyb3JDYWxsYmFjaykKQEAgLTczLDcgKzc0LDcgQEAgdm9pZCBSVENTZXNzaW9u
RGVzY3JpcHRpb25SZXF1ZXN0SW1wbDo6cmVxdWVzdFN1Y2NlZWRlZChQYXNzUmVmUHRyPFJUQ1Nl
c3Npb25EZXMKIHZvaWQgUlRDU2Vzc2lvbkRlc2NyaXB0aW9uUmVxdWVzdEltcGw6OnJlcXVlc3RG
YWlsZWQoY29uc3QgU3RyaW5nJiBlcnJvcikKIHsKICAgICBpZiAobV9lcnJvckNhbGxiYWNrKQot
ICAgICAgICBtX2Vycm9yQ2FsbGJhY2stPmhhbmRsZUV2ZW50KGVycm9yKTsKKyAgICAgICAgbV9l
cnJvckNhbGxiYWNrLT5oYW5kbGVFdmVudChET01FcnJvcjo6Y3JlYXRlKGVycm9yKS5nZXQoKSk7
CiAKICAgICBjbGVhcigpOwogfQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9t
ZWRpYXN0cmVhbS9SVENTZXNzaW9uRGVzY3JpcHRpb25SZXF1ZXN0SW1wbC5oIGIvU291cmNlL1dl
YkNvcmUvTW9kdWxlcy9tZWRpYXN0cmVhbS9SVENTZXNzaW9uRGVzY3JpcHRpb25SZXF1ZXN0SW1w
bC5oCmluZGV4IGQxYmNlZTAxMzUxM2FhNjdjMmIwNzZhOTA1MDFlY2U4NTYyZTE2ZTAuLjI5ZGU2
NDczOTE5OTZhMWQ1ZWQyNTNjYzM2NWQ1NGZjYTQ4YjM5NTEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJDb3JlL01vZHVsZXMvbWVkaWFzdHJlYW0vUlRDU2Vzc2lvbkRlc2NyaXB0aW9uUmVxdWVzdElt
cGwuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL21lZGlhc3RyZWFtL1JUQ1Nlc3Npb25E
ZXNjcmlwdGlvblJlcXVlc3RJbXBsLmgKQEAgLTEsNSArMSw2IEBACiAvKgogICogQ29weXJpZ2h0
IChDKSAyMDEyIEdvb2dsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKiBDb3B5cmlnaHQg
KEMpIDIwMTMgTm9raWEgQ29ycG9yYXRpb24gYW5kL29yIGl0cyBzdWJzaWRpYXJ5KC1pZXMpLgog
ICoKICAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMs
IHdpdGggb3Igd2l0aG91dAogICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVk
IHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCkBAIC0zOCwxMyArMzksMTMgQEAKIAogbmFt
ZXNwYWNlIFdlYkNvcmUgewogCi1jbGFzcyBSVENFcnJvckNhbGxiYWNrOworY2xhc3MgUlRDUGVl
ckNvbm5lY3Rpb25FcnJvckNhbGxiYWNrOwogY2xhc3MgUlRDUGVlckNvbm5lY3Rpb247CiBjbGFz
cyBSVENTZXNzaW9uRGVzY3JpcHRpb25DYWxsYmFjazsKIAogY2xhc3MgUlRDU2Vzc2lvbkRlc2Ny
aXB0aW9uUmVxdWVzdEltcGwgOiBwdWJsaWMgUlRDU2Vzc2lvbkRlc2NyaXB0aW9uUmVxdWVzdCwg
cHVibGljIEFjdGl2ZURPTU9iamVjdCB7CiBwdWJsaWM6Ci0gICAgc3RhdGljIFBhc3NSZWZQdHI8
UlRDU2Vzc2lvbkRlc2NyaXB0aW9uUmVxdWVzdEltcGw+IGNyZWF0ZShTY3JpcHRFeGVjdXRpb25D
b250ZXh0KiwgUGFzc1JlZlB0cjxSVENTZXNzaW9uRGVzY3JpcHRpb25DYWxsYmFjaz4sIFBhc3NS
ZWZQdHI8UlRDRXJyb3JDYWxsYmFjaz4pOworICAgIHN0YXRpYyBQYXNzUmVmUHRyPFJUQ1Nlc3Np
b25EZXNjcmlwdGlvblJlcXVlc3RJbXBsPiBjcmVhdGUoU2NyaXB0RXhlY3V0aW9uQ29udGV4dCos
IFBhc3NSZWZQdHI8UlRDU2Vzc2lvbkRlc2NyaXB0aW9uQ2FsbGJhY2s+LCBQYXNzUmVmUHRyPFJU
Q1BlZXJDb25uZWN0aW9uRXJyb3JDYWxsYmFjaz4pOwogICAgIHZpcnR1YWwgflJUQ1Nlc3Npb25E
ZXNjcmlwdGlvblJlcXVlc3RJbXBsKCk7CiAKICAgICB2aXJ0dWFsIHZvaWQgcmVxdWVzdFN1Y2Nl
ZWRlZChQYXNzUmVmUHRyPFJUQ1Nlc3Npb25EZXNjcmlwdGlvbkRlc2NyaXB0b3I+KSBPVkVSUklE
RTsKQEAgLTU0LDEyICs1NSwxMiBAQCBwdWJsaWM6CiAgICAgdmlydHVhbCB2b2lkIHN0b3AoKSBP
VkVSUklERTsKIAogcHJpdmF0ZToKLSAgICBSVENTZXNzaW9uRGVzY3JpcHRpb25SZXF1ZXN0SW1w
bChTY3JpcHRFeGVjdXRpb25Db250ZXh0KiwgUGFzc1JlZlB0cjxSVENTZXNzaW9uRGVzY3JpcHRp
b25DYWxsYmFjaz4sIFBhc3NSZWZQdHI8UlRDRXJyb3JDYWxsYmFjaz4pOworICAgIFJUQ1Nlc3Np
b25EZXNjcmlwdGlvblJlcXVlc3RJbXBsKFNjcmlwdEV4ZWN1dGlvbkNvbnRleHQqLCBQYXNzUmVm
UHRyPFJUQ1Nlc3Npb25EZXNjcmlwdGlvbkNhbGxiYWNrPiwgUGFzc1JlZlB0cjxSVENQZWVyQ29u
bmVjdGlvbkVycm9yQ2FsbGJhY2s+KTsKIAogICAgIHZvaWQgY2xlYXIoKTsKIAogICAgIFJlZlB0
cjxSVENTZXNzaW9uRGVzY3JpcHRpb25DYWxsYmFjaz4gbV9zdWNjZXNzQ2FsbGJhY2s7Ci0gICAg
UmVmUHRyPFJUQ0Vycm9yQ2FsbGJhY2s+IG1fZXJyb3JDYWxsYmFjazsKKyAgICBSZWZQdHI8UlRD
UGVlckNvbm5lY3Rpb25FcnJvckNhbGxiYWNrPiBtX2Vycm9yQ2FsbGJhY2s7CiB9OwogCiB9IC8v
IG5hbWVzcGFjZSBXZWJDb3JlCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL21l
ZGlhc3RyZWFtL1JUQ1ZvaWRSZXF1ZXN0SW1wbC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVz
L21lZGlhc3RyZWFtL1JUQ1ZvaWRSZXF1ZXN0SW1wbC5jcHAKaW5kZXggMTUwZTNlOWZmYmE3MjZj
ODRhN2NiN2U2NGFmNDJlYTcyZGE5ZTEyZi4uMTE2MTE1ODE4YjJlOTY2NGZjYTExNWZiODA4MzU2
MTAxYWYyYTczNCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9tZWRpYXN0cmVh
bS9SVENWb2lkUmVxdWVzdEltcGwuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvbWVk
aWFzdHJlYW0vUlRDVm9pZFJlcXVlc3RJbXBsLmNwcApAQCAtMSw1ICsxLDYgQEAKIC8qCiAgKiBD
b3B5cmlnaHQgKEMpIDIwMTIgR29vZ2xlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAqIENv
cHlyaWdodCAoQykgMjAxMyBOb2tpYSBDb3Jwb3JhdGlvbiBhbmQvb3IgaXRzIHN1YnNpZGlhcnko
LWllcykuCiAgKgogICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFy
eSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CiAgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQg
cHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKQEAgLTM0LDIwICszNSwyMSBA
QAogCiAjaW5jbHVkZSAiUlRDVm9pZFJlcXVlc3RJbXBsLmgiCiAKLSNpbmNsdWRlICJSVENFcnJv
ckNhbGxiYWNrLmgiCisjaW5jbHVkZSAiRE9NRXJyb3IuaCIKICNpbmNsdWRlICJSVENQZWVyQ29u
bmVjdGlvbi5oIgorI2luY2x1ZGUgIlJUQ1BlZXJDb25uZWN0aW9uRXJyb3JDYWxsYmFjay5oIgog
I2luY2x1ZGUgIlZvaWRDYWxsYmFjay5oIgogCiBuYW1lc3BhY2UgV2ViQ29yZSB7CiAKLVBhc3NS
ZWZQdHI8UlRDVm9pZFJlcXVlc3RJbXBsPiBSVENWb2lkUmVxdWVzdEltcGw6OmNyZWF0ZShTY3Jp
cHRFeGVjdXRpb25Db250ZXh0KiBjb250ZXh0LCBQYXNzUmVmUHRyPFZvaWRDYWxsYmFjaz4gc3Vj
Y2Vzc0NhbGxiYWNrLCBQYXNzUmVmUHRyPFJUQ0Vycm9yQ2FsbGJhY2s+IGVycm9yQ2FsbGJhY2sp
CitQYXNzUmVmUHRyPFJUQ1ZvaWRSZXF1ZXN0SW1wbD4gUlRDVm9pZFJlcXVlc3RJbXBsOjpjcmVh
dGUoU2NyaXB0RXhlY3V0aW9uQ29udGV4dCogY29udGV4dCwgUGFzc1JlZlB0cjxWb2lkQ2FsbGJh
Y2s+IHN1Y2Nlc3NDYWxsYmFjaywgUGFzc1JlZlB0cjxSVENQZWVyQ29ubmVjdGlvbkVycm9yQ2Fs
bGJhY2s+IGVycm9yQ2FsbGJhY2spCiB7CiAgICAgUmVmUHRyPFJUQ1ZvaWRSZXF1ZXN0SW1wbD4g
cmVxdWVzdCA9IGFkb3B0UmVmKG5ldyBSVENWb2lkUmVxdWVzdEltcGwoY29udGV4dCwgc3VjY2Vz
c0NhbGxiYWNrLCBlcnJvckNhbGxiYWNrKSk7CiAgICAgcmVxdWVzdC0+c3VzcGVuZElmTmVlZGVk
KCk7CiAgICAgcmV0dXJuIHJlcXVlc3QucmVsZWFzZSgpOwogfQogCi1SVENWb2lkUmVxdWVzdElt
cGw6OlJUQ1ZvaWRSZXF1ZXN0SW1wbChTY3JpcHRFeGVjdXRpb25Db250ZXh0KiBjb250ZXh0LCBQ
YXNzUmVmUHRyPFZvaWRDYWxsYmFjaz4gc3VjY2Vzc0NhbGxiYWNrLCBQYXNzUmVmUHRyPFJUQ0Vy
cm9yQ2FsbGJhY2s+IGVycm9yQ2FsbGJhY2spCitSVENWb2lkUmVxdWVzdEltcGw6OlJUQ1ZvaWRS
ZXF1ZXN0SW1wbChTY3JpcHRFeGVjdXRpb25Db250ZXh0KiBjb250ZXh0LCBQYXNzUmVmUHRyPFZv
aWRDYWxsYmFjaz4gc3VjY2Vzc0NhbGxiYWNrLCBQYXNzUmVmUHRyPFJUQ1BlZXJDb25uZWN0aW9u
RXJyb3JDYWxsYmFjaz4gZXJyb3JDYWxsYmFjaykKICAgICA6IEFjdGl2ZURPTU9iamVjdChjb250
ZXh0KQogICAgICwgbV9zdWNjZXNzQ2FsbGJhY2soc3VjY2Vzc0NhbGxiYWNrKQogICAgICwgbV9l
cnJvckNhbGxiYWNrKGVycm9yQ2FsbGJhY2spCkBAIC02OSw3ICs3MSw3IEBAIHZvaWQgUlRDVm9p
ZFJlcXVlc3RJbXBsOjpyZXF1ZXN0U3VjY2VlZGVkKCkKIHZvaWQgUlRDVm9pZFJlcXVlc3RJbXBs
OjpyZXF1ZXN0RmFpbGVkKGNvbnN0IFN0cmluZyYgZXJyb3IpCiB7CiAgICAgaWYgKG1fZXJyb3JD
YWxsYmFjay5nZXQoKSkKLSAgICAgICAgbV9lcnJvckNhbGxiYWNrLT5oYW5kbGVFdmVudChlcnJv
cik7CisgICAgICAgIG1fZXJyb3JDYWxsYmFjay0+aGFuZGxlRXZlbnQoRE9NRXJyb3I6OmNyZWF0
ZShlcnJvcikuZ2V0KCkpOwogCiAgICAgY2xlYXIoKTsKIH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJDb3JlL01vZHVsZXMvbWVkaWFzdHJlYW0vUlRDVm9pZFJlcXVlc3RJbXBsLmggYi9Tb3VyY2Uv
V2ViQ29yZS9Nb2R1bGVzL21lZGlhc3RyZWFtL1JUQ1ZvaWRSZXF1ZXN0SW1wbC5oCmluZGV4IDY1
N2FiZmM3YzZiMzI5MmE1MzM0YzQxOWNmMmE0N2UyOTJmNzJjYjYuLjIyNzU4MzM4NmU4YjA0Yjc1
YWM1ZTQ0N2U4MjJlZTJkM2E5YmU1YTAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL01vZHVs
ZXMvbWVkaWFzdHJlYW0vUlRDVm9pZFJlcXVlc3RJbXBsLmgKKysrIGIvU291cmNlL1dlYkNvcmUv
TW9kdWxlcy9tZWRpYXN0cmVhbS9SVENWb2lkUmVxdWVzdEltcGwuaApAQCAtMSw1ICsxLDYgQEAK
IC8qCiAgKiBDb3B5cmlnaHQgKEMpIDIwMTIgR29vZ2xlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZl
ZC4KKyAqIENvcHlyaWdodCAoQykgMjAxMyBOb2tpYSBDb3Jwb3JhdGlvbiBhbmQvb3IgaXRzIHN1
YnNpZGlhcnkoLWllcykuCiAgKgogICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2Ug
YW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CiAgKiBtb2RpZmljYXRpb24sIGFyZSBw
ZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKQEAgLTM4LDEy
ICszOSwxMiBAQAogCiBuYW1lc3BhY2UgV2ViQ29yZSB7CiAKLWNsYXNzIFJUQ0Vycm9yQ2FsbGJh
Y2s7CitjbGFzcyBSVENQZWVyQ29ubmVjdGlvbkVycm9yQ2FsbGJhY2s7CiBjbGFzcyBWb2lkQ2Fs
bGJhY2s7CiAKIGNsYXNzIFJUQ1ZvaWRSZXF1ZXN0SW1wbCA6IHB1YmxpYyBSVENWb2lkUmVxdWVz
dCwgcHVibGljIEFjdGl2ZURPTU9iamVjdCB7CiBwdWJsaWM6Ci0gICAgc3RhdGljIFBhc3NSZWZQ
dHI8UlRDVm9pZFJlcXVlc3RJbXBsPiBjcmVhdGUoU2NyaXB0RXhlY3V0aW9uQ29udGV4dCosIFBh
c3NSZWZQdHI8Vm9pZENhbGxiYWNrPiwgUGFzc1JlZlB0cjxSVENFcnJvckNhbGxiYWNrPik7Cisg
ICAgc3RhdGljIFBhc3NSZWZQdHI8UlRDVm9pZFJlcXVlc3RJbXBsPiBjcmVhdGUoU2NyaXB0RXhl
Y3V0aW9uQ29udGV4dCosIFBhc3NSZWZQdHI8Vm9pZENhbGxiYWNrPiwgUGFzc1JlZlB0cjxSVENQ
ZWVyQ29ubmVjdGlvbkVycm9yQ2FsbGJhY2s+KTsKICAgICB2aXJ0dWFsIH5SVENWb2lkUmVxdWVz
dEltcGwoKTsKIAogICAgIHZpcnR1YWwgdm9pZCByZXF1ZXN0U3VjY2VlZGVkKCk7CkBAIC01Mywx
MiArNTQsMTIgQEAgcHVibGljOgogICAgIHZpcnR1YWwgdm9pZCBzdG9wKCkgT1ZFUlJJREU7CiAK
IHByaXZhdGU6Ci0gICAgUlRDVm9pZFJlcXVlc3RJbXBsKFNjcmlwdEV4ZWN1dGlvbkNvbnRleHQq
LCBQYXNzUmVmUHRyPFZvaWRDYWxsYmFjaz4sIFBhc3NSZWZQdHI8UlRDRXJyb3JDYWxsYmFjaz4p
OworICAgIFJUQ1ZvaWRSZXF1ZXN0SW1wbChTY3JpcHRFeGVjdXRpb25Db250ZXh0KiwgUGFzc1Jl
ZlB0cjxWb2lkQ2FsbGJhY2s+LCBQYXNzUmVmUHRyPFJUQ1BlZXJDb25uZWN0aW9uRXJyb3JDYWxs
YmFjaz4pOwogCiAgICAgdm9pZCBjbGVhcigpOwogCiAgICAgUmVmUHRyPFZvaWRDYWxsYmFjaz4g
bV9zdWNjZXNzQ2FsbGJhY2s7Ci0gICAgUmVmUHRyPFJUQ0Vycm9yQ2FsbGJhY2s+IG1fZXJyb3JD
YWxsYmFjazsKKyAgICBSZWZQdHI8UlRDUGVlckNvbm5lY3Rpb25FcnJvckNhbGxiYWNrPiBtX2Vy
cm9yQ2FsbGJhY2s7CiB9OwogCiB9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViQ29yZS9XZWJDb3JlLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2ogYi9Tb3VyY2Uv
V2ViQ29yZS9XZWJDb3JlLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2oKaW5kZXggNTIzODBjMjll
NjZhY2ZjYzAwNTJmMzIwZjBjNWZlYmZlZGU3NjkyMC4uZjNhYjNmZjNmMmQ4YjY5ZDBlOGEzOWY5
MmM4MWY4YWRmNGE1YWE4NiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvV2ViQ29yZS54Y29k
ZXByb2ovcHJvamVjdC5wYnhwcm9qCisrKyBiL1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUueGNvZGVw
cm9qL3Byb2plY3QucGJ4cHJvagpAQCAtMjI4LDcgKzIyOCw2IEBACiAJCTA3OEUwOTFGMTdEMTRE
MUMwMDQyMEFBMSAvKiBSVENEYXRhQ2hhbm5lbEV2ZW50LmggaW4gSGVhZGVycyAqLyA9IHtpc2Eg
PSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAwNzIyMUI2NzE3Q0VDMzI3MDA4NDhFNTEgLyogUlRD
RGF0YUNoYW5uZWxFdmVudC5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUs
ICk7IH07IH07CiAJCTA3OEUwOTIwMTdEMTREMUMwMDQyMEFBMSAvKiBSVENEVE1GU2VuZGVyLmgg
aW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAwNzIyMUI2QTE3
Q0VDMzI3MDA4NDhFNTEgLyogUlRDRFRNRlNlbmRlci5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJV
VEVTID0gKFByaXZhdGUsICk7IH07IH07CiAJCTA3OEUwOTIxMTdEMTREMUMwMDQyMEFBMSAvKiBS
VENEVE1GVG9uZUNoYW5nZUV2ZW50LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZp
bGU7IGZpbGVSZWYgPSAwNzIyMUI2RDE3Q0VDMzI3MDA4NDhFNTEgLyogUlRDRFRNRlRvbmVDaGFu
Z2VFdmVudC5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07
Ci0JCTA3OEUwOTIyMTdEMTREMUMwMDQyMEFBMSAvKiBSVENFcnJvckNhbGxiYWNrLmggaW4gSGVh
ZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAwNzIyMUI2RjE3Q0VDMzI3
MDA4NDhFNTEgLyogUlRDRXJyb3JDYWxsYmFjay5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVT
ID0gKFByaXZhdGUsICk7IH07IH07CiAJCTA3OEUwOTIzMTdEMTREMUMwMDQyMEFBMSAvKiBSVENJ
Y2VDYW5kaWRhdGUuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJl
ZiA9IDA3MjIxQjcyMTdDRUMzMjcwMDg0OEU1MSAvKiBSVENJY2VDYW5kaWRhdGUuaCAqLzsgc2V0
dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OwogCQkwNzhFMDkyNDE3RDE0
RDFDMDA0MjBBQTEgLyogUlRDSWNlQ2FuZGlkYXRlRXZlbnQuaCBpbiBIZWFkZXJzICovID0ge2lz
YSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDA3MjIxQjc1MTdDRUMzMjcwMDg0OEU1MSAvKiBS
VENJY2VDYW5kaWRhdGVFdmVudC5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZh
dGUsICk7IH07IH07CiAJCTA3OEUwOTI1MTdEMTREMUMwMDQyMEFBMSAvKiBSVENQZWVyQ29ubmVj
dGlvbi5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMDcy
MjFCNzgxN0NFQzMyNzAwODQ4RTUxIC8qIFJUQ1BlZXJDb25uZWN0aW9uLmggKi87IHNldHRpbmdz
ID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKQEAgLTI3OCw4ICsyNzcsOCBAQAog
CQkwNzk2OURCMDE3RDE0MTUxMDA3RkY4NDIgLyogSlNSVENEVE1GU2VuZGVyLmggaW4gSGVhZGVy
cyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAwNzk2OUQ5NjE3RDE0MTUxMDA3
RkY4NDIgLyogSlNSVENEVE1GU2VuZGVyLmggKi87IH07CiAJCTA3OTY5REIxMTdEMTQxNTEwMDdG
Rjg0MiAvKiBKU1JUQ0RUTUZUb25lQ2hhbmdlRXZlbnQuY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNh
ID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMDc5NjlEOTcxN0QxNDE1MTAwN0ZGODQyIC8qIEpT
UlRDRFRNRlRvbmVDaGFuZ2VFdmVudC5jcHAgKi87IH07CiAJCTA3OTY5REIyMTdEMTQxNTEwMDdG
Rjg0MiAvKiBKU1JUQ0RUTUZUb25lQ2hhbmdlRXZlbnQuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9
IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDA3OTY5RDk4MTdEMTQxNTEwMDdGRjg0MiAvKiBKU1JU
Q0RUTUZUb25lQ2hhbmdlRXZlbnQuaCAqLzsgfTsKLQkJMDc5NjlEQjMxN0QxNDE1MTAwN0ZGODQy
IC8qIEpTUlRDRXJyb3JDYWxsYmFjay5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWls
ZEZpbGU7IGZpbGVSZWYgPSAwNzk2OUQ5OTE3RDE0MTUxMDA3RkY4NDIgLyogSlNSVENFcnJvckNh
bGxiYWNrLmNwcCAqLzsgfTsKLQkJMDc5NjlEQjQxN0QxNDE1MTAwN0ZGODQyIC8qIEpTUlRDRXJy
b3JDYWxsYmFjay5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVm
ID0gMDc5NjlEOUExN0QxNDE1MTAwN0ZGODQyIC8qIEpTUlRDRXJyb3JDYWxsYmFjay5oICovOyB9
OworCQkwNzk2OURCMzE3RDE0MTUxMDA3RkY4NDIgLyogSlNSVENQZWVyQ29ubmVjdGlvbkVycm9y
Q2FsbGJhY2suY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVm
ID0gMDc5NjlEOTkxN0QxNDE1MTAwN0ZGODQyIC8qIEpTUlRDUGVlckNvbm5lY3Rpb25FcnJvckNh
bGxiYWNrLmNwcCAqLzsgfTsKKwkJMDc5NjlEQjQxN0QxNDE1MTAwN0ZGODQyIC8qIEpTUlRDUGVl
ckNvbm5lY3Rpb25FcnJvckNhbGxiYWNrLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWls
ZEZpbGU7IGZpbGVSZWYgPSAwNzk2OUQ5QTE3RDE0MTUxMDA3RkY4NDIgLyogSlNSVENQZWVyQ29u
bmVjdGlvbkVycm9yQ2FsbGJhY2suaCAqLzsgfTsKIAkJMDc5NjlEQjUxN0QxNDE1MTAwN0ZGODQy
IC8qIEpTUlRDSWNlQ2FuZGlkYXRlLmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxk
RmlsZTsgZmlsZVJlZiA9IDA3OTY5RDlCMTdEMTQxNTEwMDdGRjg0MiAvKiBKU1JUQ0ljZUNhbmRp
ZGF0ZS5jcHAgKi87IH07CiAJCTA3OTY5REI2MTdEMTQxNTEwMDdGRjg0MiAvKiBKU1JUQ0ljZUNh
bmRpZGF0ZS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0g
MDc5NjlEOUMxN0QxNDE1MTAwN0ZGODQyIC8qIEpTUlRDSWNlQ2FuZGlkYXRlLmggKi87IH07CiAJ
CTA3OTY5REI3MTdEMTQxNTEwMDdGRjg0MiAvKiBKU1JUQ0ljZUNhbmRpZGF0ZUV2ZW50LmNwcCBp
biBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDA3OTY5RDlEMTdE
MTQxNTEwMDdGRjg0MiAvKiBKU1JUQ0ljZUNhbmRpZGF0ZUV2ZW50LmNwcCAqLzsgfTsKQEAgLTY3
MjgsOCArNjcyNyw2IEBACiAJCTA3MjIxQjZDMTdDRUMzMjcwMDg0OEU1MSAvKiBSVENEVE1GVG9u
ZUNoYW5nZUV2ZW50LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rp
bmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IFJU
Q0RUTUZUb25lQ2hhbmdlRXZlbnQuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQkw
NzIyMUI2RDE3Q0VDMzI3MDA4NDhFNTEgLyogUlRDRFRNRlRvbmVDaGFuZ2VFdmVudC5oICovID0g
e2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVU
eXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBSVENEVE1GVG9uZUNoYW5nZUV2ZW50Lmg7IHNv
dXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTA3MjIxQjZFMTdDRUMzMjcwMDg0OEU1MSAvKiBS
VENEVE1GVG9uZUNoYW5nZUV2ZW50LmlkbCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBm
aWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHRleHQ7IHBhdGggPSBSVENEVE1G
VG9uZUNoYW5nZUV2ZW50LmlkbDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKLQkJMDcyMjFC
NkYxN0NFQzMyNzAwODQ4RTUxIC8qIFJUQ0Vycm9yQ2FsbGJhY2suaCAqLyA9IHtpc2EgPSBQQlhG
aWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJj
ZWNvZGUuYy5oOyBwYXRoID0gUlRDRXJyb3JDYWxsYmFjay5oOyBzb3VyY2VUcmVlID0gIjxncm91
cD4iOyB9OwotCQkwNzIyMUI3MDE3Q0VDMzI3MDA4NDhFNTEgLyogUlRDRXJyb3JDYWxsYmFjay5p
ZGwgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtu
b3duRmlsZVR5cGUgPSB0ZXh0OyBwYXRoID0gUlRDRXJyb3JDYWxsYmFjay5pZGw7IHNvdXJjZVRy
ZWUgPSAiPGdyb3VwPiI7IH07CiAJCTA3MjIxQjcxMTdDRUMzMjcwMDg0OEU1MSAvKiBSVENJY2VD
YW5kaWRhdGUuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9
IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gUlRDSWNl
Q2FuZGlkYXRlLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJMDcyMjFCNzIxN0NF
QzMyNzAwODQ4RTUxIC8qIFJUQ0ljZUNhbmRpZGF0ZS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZl
cmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5j
Lmg7IHBhdGggPSBSVENJY2VDYW5kaWRhdGUuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsK
IAkJMDcyMjFCNzMxN0NFQzMyNzAwODQ4RTUxIC8qIFJUQ0ljZUNhbmRpZGF0ZS5pZGwgKi8gPSB7
aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5
cGUgPSB0ZXh0OyBwYXRoID0gUlRDSWNlQ2FuZGlkYXRlLmlkbDsgc291cmNlVHJlZSA9ICI8Z3Jv
dXA+IjsgfTsKQEAgLTY4NjMsOCArNjg2MCw4IEBACiAJCTA3OTY5RDk2MTdEMTQxNTEwMDdGRjg0
MiAvKiBKU1JUQ0RUTUZTZW5kZXIuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxl
RW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0g
SlNSVENEVE1GU2VuZGVyLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTA3OTY5RDk3
MTdEMTQxNTEwMDdGRjg0MiAvKiBKU1JUQ0RUTUZUb25lQ2hhbmdlRXZlbnQuY3BwICovID0ge2lz
YSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBl
ID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gSlNSVENEVE1GVG9uZUNoYW5nZUV2ZW50LmNw
cDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJMDc5NjlEOTgxN0QxNDE1MTAwN0ZGODQy
IC8qIEpTUlRDRFRNRlRvbmVDaGFuZ2VFdmVudC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVu
Y2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7
IHBhdGggPSBKU1JUQ0RUTUZUb25lQ2hhbmdlRXZlbnQuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+
IjsgfTsKLQkJMDc5NjlEOTkxN0QxNDE1MTAwN0ZGODQyIC8qIEpTUlRDRXJyb3JDYWxsYmFjay5j
cHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtu
b3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBKU1JUQ0Vycm9yQ2FsbGJh
Y2suY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwotCQkwNzk2OUQ5QTE3RDE0MTUxMDA3
RkY4NDIgLyogSlNSVENFcnJvckNhbGxiYWNrLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5j
ZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsg
cGF0aCA9IEpTUlRDRXJyb3JDYWxsYmFjay5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9Owor
CQkwNzk2OUQ5OTE3RDE0MTUxMDA3RkY4NDIgLyogSlNSVENQZWVyQ29ubmVjdGlvbkVycm9yQ2Fs
bGJhY2suY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7
IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gSlNSVENQZWVy
Q29ubmVjdGlvbkVycm9yQ2FsbGJhY2suY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9Owor
CQkwNzk2OUQ5QTE3RDE0MTUxMDA3RkY4NDIgLyogSlNSVENQZWVyQ29ubmVjdGlvbkVycm9yQ2Fs
bGJhY2suaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBs
YXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gSlNSVENQZWVyQ29ubmVj
dGlvbkVycm9yQ2FsbGJhY2suaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJMDc5NjlE
OUIxN0QxNDE1MTAwN0ZGODQyIC8qIEpTUlRDSWNlQ2FuZGlkYXRlLmNwcCAqLyA9IHtpc2EgPSBQ
QlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNv
dXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEpTUlRDSWNlQ2FuZGlkYXRlLmNwcDsgc291cmNlVHJl
ZSA9ICI8Z3JvdXA+IjsgfTsKIAkJMDc5NjlEOUMxN0QxNDE1MTAwN0ZGODQyIC8qIEpTUlRDSWNl
Q2FuZGlkYXRlLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0g
NDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEpTUlRDSWNlQ2Fu
ZGlkYXRlLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTA3OTY5RDlEMTdEMTQxNTEw
MDdGRjg0MiAvKiBKU1JUQ0ljZUNhbmRpZGF0ZUV2ZW50LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxl
UmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNv
ZGUuY3BwLmNwcDsgcGF0aCA9IEpTUlRDSWNlQ2FuZGlkYXRlRXZlbnQuY3BwOyBzb3VyY2VUcmVl
ID0gIjxncm91cD4iOyB9OwpAQCAtODMxMCw2ICs4MzA3LDggQEAKIAkJNEE2RTlGQzUxM0MxN0Q1
NzAwNDZBN0Y4IC8qIEZvbnRGZWF0dXJlU2V0dGluZ3MuY3BwICovID0ge2lzYSA9IFBCWEZpbGVS
ZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29k
ZS5jcHAuY3BwOyBwYXRoID0gRm9udEZlYXR1cmVTZXR0aW5ncy5jcHA7IHNvdXJjZVRyZWUgPSAi
PGdyb3VwPiI7IH07CiAJCTRBNkU5RkM2MTNDMTdENTcwMDQ2QTdGOCAvKiBGb250RmVhdHVyZVNl
dHRpbmdzLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZXhwbGljaXRGaWxlVHlwZSA9
IHNvdXJjZWNvZGUuYy5oOyBmaWxlRW5jb2RpbmcgPSA0OyBwYXRoID0gRm9udEZlYXR1cmVTZXR0
aW5ncy5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQk0QThDOTZFQTBCRTY5MDMyMDA0
RUVGRjAgLyogRnJhbWVTZWxlY3Rpb25NYWMubW0gKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5j
ZTsgZmlsZUVuY29kaW5nID0gMzA7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAu
b2JqY3BwOyBuYW1lID0gRnJhbWVTZWxlY3Rpb25NYWMubW07IHBhdGggPSBtYWMvRnJhbWVTZWxl
Y3Rpb25NYWMubW07IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTRBOTc1NTM1MTg1OEVE
OUIwMEJENkQxNSAvKiBSVENQZWVyQ29ubmVjdGlvbkVycm9yQ2FsbGJhY2suaCAqLyA9IHtpc2Eg
PSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9
IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gUlRDUGVlckNvbm5lY3Rpb25FcnJvckNhbGxiYWNrLmg7
IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTRBOTc1NTM2MTg1OEVEOUIwMEJENkQxNSAv
KiBSVENQZWVyQ29ubmVjdGlvbkVycm9yQ2FsbGJhY2suaWRsICovID0ge2lzYSA9IFBCWEZpbGVS
ZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gdGV4dDsgcGF0
aCA9IFJUQ1BlZXJDb25uZWN0aW9uRXJyb3JDYWxsYmFjay5pZGw7IHNvdXJjZVRyZWUgPSAiPGdy
b3VwPiI7IH07CiAJCTRBOUNDODE1MTZCQjlBQzYwMEVDNjQ1QSAvKiBDU1NEZWZhdWx0U3R5bGVT
aGVldHMuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7
IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gQ1NTRGVmYXVs
dFN0eWxlU2hlZXRzLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJNEE5Q0M4MTYx
NkJCOUFDNjAwRUM2NDVBIC8qIENTU0RlZmF1bHRTdHlsZVNoZWV0cy5oICovID0ge2lzYSA9IFBC
WEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291
cmNlY29kZS5jLmg7IHBhdGggPSBDU1NEZWZhdWx0U3R5bGVTaGVldHMuaDsgc291cmNlVHJlZSA9
ICI8Z3JvdXA+IjsgfTsKIAkJNEE5Q0M4MUUxNkJGOUJCNDAwRUM2NDVBIC8qIEluc3BlY3RvckNT
U09NV3JhcHBlcnMuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGlu
ZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gSW5z
cGVjdG9yQ1NTT01XcmFwcGVycy5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CkBAIC0x
MzY2Niw2ICsxMzY2NSw4IEBACiAJCTA3MjIxQjQ2MTdDRUMzMjcwMDg0OEU1MSAvKiBtZWRpYXN0
cmVhbSAqLyA9IHsKIAkJCWlzYSA9IFBCWEdyb3VwOwogCQkJY2hpbGRyZW4gPSAoCisJCQkJNEE5
NzU1MzUxODU4RUQ5QjAwQkQ2RDE1IC8qIFJUQ1BlZXJDb25uZWN0aW9uRXJyb3JDYWxsYmFjay5o
ICovLAorCQkJCTRBOTc1NTM2MTg1OEVEOUIwMEJENkQxNSAvKiBSVENQZWVyQ29ubmVjdGlvbkVy
cm9yQ2FsbGJhY2suaWRsICovLAogCQkJCTA3NzlCRjBBMTg0NTMxNjgwMDBCNkFFNyAvKiBIVE1M
TWVkaWFFbGVtZW50TWVkaWFTdHJlYW0uY3BwICovLAogCQkJCTA3NzlCRjBCMTg0NTMxNjgwMDBC
NkFFNyAvKiBIVE1MTWVkaWFFbGVtZW50TWVkaWFTdHJlYW0uaCAqLywKIAkJCQkwNzc5QkYwQzE4
NDUzMTY4MDAwQjZBRTcgLyogSFRNTE1lZGlhRWxlbWVudE1lZGlhU3RyZWFtLmlkbCAqLywKQEAg
LTEzNzM5LDggKzEzNzQwLDYgQEAKIAkJCQkwNzIyMUI2QzE3Q0VDMzI3MDA4NDhFNTEgLyogUlRD
RFRNRlRvbmVDaGFuZ2VFdmVudC5jcHAgKi8sCiAJCQkJMDcyMjFCNkQxN0NFQzMyNzAwODQ4RTUx
IC8qIFJUQ0RUTUZUb25lQ2hhbmdlRXZlbnQuaCAqLywKIAkJCQkwNzIyMUI2RTE3Q0VDMzI3MDA4
NDhFNTEgLyogUlRDRFRNRlRvbmVDaGFuZ2VFdmVudC5pZGwgKi8sCi0JCQkJMDcyMjFCNkYxN0NF
QzMyNzAwODQ4RTUxIC8qIFJUQ0Vycm9yQ2FsbGJhY2suaCAqLywKLQkJCQkwNzIyMUI3MDE3Q0VD
MzI3MDA4NDhFNTEgLyogUlRDRXJyb3JDYWxsYmFjay5pZGwgKi8sCiAJCQkJMDcyMjFCNzExN0NF
QzMyNzAwODQ4RTUxIC8qIFJUQ0ljZUNhbmRpZGF0ZS5jcHAgKi8sCiAJCQkJMDcyMjFCNzIxN0NF
QzMyNzAwODQ4RTUxIC8qIFJUQ0ljZUNhbmRpZGF0ZS5oICovLAogCQkJCTA3MjIxQjczMTdDRUMz
MjcwMDg0OEU1MSAvKiBSVENJY2VDYW5kaWRhdGUuaWRsICovLApAQCAtMTM5MDksOCArMTM5MDgs
OCBAQAogCQkJCTA3OTY5RDk2MTdEMTQxNTEwMDdGRjg0MiAvKiBKU1JUQ0RUTUZTZW5kZXIuaCAq
LywKIAkJCQkwNzk2OUQ5NzE3RDE0MTUxMDA3RkY4NDIgLyogSlNSVENEVE1GVG9uZUNoYW5nZUV2
ZW50LmNwcCAqLywKIAkJCQkwNzk2OUQ5ODE3RDE0MTUxMDA3RkY4NDIgLyogSlNSVENEVE1GVG9u
ZUNoYW5nZUV2ZW50LmggKi8sCi0JCQkJMDc5NjlEOTkxN0QxNDE1MTAwN0ZGODQyIC8qIEpTUlRD
RXJyb3JDYWxsYmFjay5jcHAgKi8sCi0JCQkJMDc5NjlEOUExN0QxNDE1MTAwN0ZGODQyIC8qIEpT
UlRDRXJyb3JDYWxsYmFjay5oICovLAorCQkJCTA3OTY5RDk5MTdEMTQxNTEwMDdGRjg0MiAvKiBK
U1JUQ1BlZXJDb25uZWN0aW9uRXJyb3JDYWxsYmFjay5jcHAgKi8sCisJCQkJMDc5NjlEOUExN0Qx
NDE1MTAwN0ZGODQyIC8qIEpTUlRDUGVlckNvbm5lY3Rpb25FcnJvckNhbGxiYWNrLmggKi8sCiAJ
CQkJMDc5NjlEOUIxN0QxNDE1MTAwN0ZGODQyIC8qIEpTUlRDSWNlQ2FuZGlkYXRlLmNwcCAqLywK
IAkJCQkwNzk2OUQ5QzE3RDE0MTUxMDA3RkY4NDIgLyogSlNSVENJY2VDYW5kaWRhdGUuaCAqLywK
IAkJCQkwNzk2OUQ5RDE3RDE0MTUxMDA3RkY4NDIgLyogSlNSVENJY2VDYW5kaWRhdGVFdmVudC5j
cHAgKi8sCkBAIC0yMzI2MCw3ICsyMzI1OSw3IEBACiAJCQkJQThFQTdDQUYwQTE5MkI5QzAwQThF
RjVGIC8qIEhUTUxIUkVsZW1lbnQuaCBpbiBIZWFkZXJzICovLAogCQkJCUE4NzFERTI3MEExNTJB
QzgwMEIxMkE2OCAvKiBIVE1MSHRtbEVsZW1lbnQuaCBpbiBIZWFkZXJzICovLAogCQkJCUE4OTU3
MEEwMTZFOUJENTkwMDE4NEU1NSAvKiBIVE1MSWRlbnRpZmllci5oIGluIEhlYWRlcnMgKi8sCi0J
CQkJMDc5NjlEQjQxN0QxNDE1MTAwN0ZGODQyIC8qIEpTUlRDRXJyb3JDYWxsYmFjay5oIGluIEhl
YWRlcnMgKi8sCisJCQkJMDc5NjlEQjQxN0QxNDE1MTAwN0ZGODQyIC8qIEpTUlRDUGVlckNvbm5l
Y3Rpb25FcnJvckNhbGxiYWNrLmggaW4gSGVhZGVycyAqLywKIAkJCQlBODcxREUyQTBBMTUyQUM4
MDBCMTJBNjggLyogSFRNTElGcmFtZUVsZW1lbnQuaCBpbiBIZWFkZXJzICovLAogCQkJCUE4RUE3
RDJEMEExOTM4NTUwMEE4RUY1RiAvKiBIVE1MSW1hZ2VFbGVtZW50LmggaW4gSGVhZGVycyAqLywK
IAkJCQlBOEVBN0QyQjBBMTkzODU1MDBBOEVGNUYgLyogSFRNTEltYWdlTG9hZGVyLmggaW4gSGVh
ZGVycyAqLywKQEAgLTIzODUwLDcgKzIzODQ5LDYgQEAKIAkJCQlCMkZBM0Q5MzBBQjc1QTZGMDAw
RTVBQzQgLyogSlNTVkdGRVRpbGVFbGVtZW50LmggaW4gSGVhZGVycyAqLywKIAkJCQlCMkZBM0Q5
NTBBQjc1QTZGMDAwRTVBQzQgLyogSlNTVkdGRVR1cmJ1bGVuY2VFbGVtZW50LmggaW4gSGVhZGVy
cyAqLywKIAkJCQlCMkZBM0Q5NzBBQjc1QTZGMDAwRTVBQzQgLyogSlNTVkdGaWx0ZXJFbGVtZW50
LmggaW4gSGVhZGVycyAqLywKLQkJCQkwNzhFMDkyMjE3RDE0RDFDMDA0MjBBQTEgLyogUlRDRXJy
b3JDYWxsYmFjay5oIGluIEhlYWRlcnMgKi8sCiAJCQkJQjI3QjI4MjYwQ0VGMEMwNzAwRDM5RDU0
IC8qIEpTU1ZHRm9udEVsZW1lbnQuaCBpbiBIZWFkZXJzICovLAogCQkJCUE4M0I3OTA1MENDQUZG
MTUwMDBCMDgyNSAvKiBKU1NWR0ZvbnRGYWNlRWxlbWVudC5oIGluIEhlYWRlcnMgKi8sCiAJCQkJ
QTgzQjc5MDAwQ0NBRkYxNTAwMEIwODI1IC8qIEpTU1ZHRm9udEZhY2VGb3JtYXRFbGVtZW50Lmgg
aW4gSGVhZGVycyAqLywKQEAgLTI2ODczLDcgKzI2ODcxLDcgQEAKIAkJCQk4OTg3ODVGNDEyMkUx
RUFDMDAzQUFCREEgLyogSlNGaWxlUmVhZGVyU3luYy5jcHAgaW4gU291cmNlcyAqLywKIAkJCQlC
NkQ5RDI3QzE0RUFDMDg2MDA5MEQ3NUUgLyogSlNGb2N1c0V2ZW50LmNwcCBpbiBTb3VyY2VzICov
LAogCQkJCUZEQTE1RUFCMTJCMDNFRTEwMDNBNTgzQSAvKiBKU0dhaW5Ob2RlLmNwcCBpbiBTb3Vy
Y2VzICovLAotCQkJCTA3OTY5REIzMTdEMTQxNTEwMDdGRjg0MiAvKiBKU1JUQ0Vycm9yQ2FsbGJh
Y2suY3BwIGluIFNvdXJjZXMgKi8sCisJCQkJMDc5NjlEQjMxN0QxNDE1MTAwN0ZGODQyIC8qIEpT
UlRDUGVlckNvbm5lY3Rpb25FcnJvckNhbGxiYWNrLmNwcCBpbiBTb3VyY2VzICovLAogCQkJCUZF
ODBEQTYzMEU5QzQ3MDMwMDBENkY3NSAvKiBKU0dlb2xvY2F0aW9uLmNwcCBpbiBTb3VyY2VzICov
LAogCQkJCUZFODBEN0FCMEU5QzFFRDIwMDBENkY3NSAvKiBKU0dlb2xvY2F0aW9uQ3VzdG9tLmNw
cCBpbiBTb3VyY2VzICovLAogCQkJCUZFODBEQTY1MEU5QzQ3MDMwMDBENkY3NSAvKiBKU0dlb3Bv
c2l0aW9uLmNwcCBpbiBTb3VyY2VzICovLApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxh
dGZvcm0vbWVkaWFzdHJlYW0vUlRDUGVlckNvbm5lY3Rpb25IYW5kbGVyLmNwcCBiL1NvdXJjZS9X
ZWJDb3JlL3BsYXRmb3JtL21lZGlhc3RyZWFtL1JUQ1BlZXJDb25uZWN0aW9uSGFuZGxlci5jcHAK
aW5kZXggNTJiODZlMTdmMjQ1ZDM2YjU2YjU5ZDhkMzNjYzkzMTdjYTI3OWFhZC4uOGYzNmI2MGU1
MDYxMjc3NjAyMzExZTFmYmM0OWI5YTdiOTZkNmRlZSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNv
cmUvcGxhdGZvcm0vbWVkaWFzdHJlYW0vUlRDUGVlckNvbm5lY3Rpb25IYW5kbGVyLmNwcAorKysg
Yi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9tZWRpYXN0cmVhbS9SVENQZWVyQ29ubmVjdGlvbkhh
bmRsZXIuY3BwCkBAIC0xLDUgKzEsNiBAQAogLyoKICAqIENvcHlyaWdodCAoQykgMjAxMiBHb29n
bGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICogQ29weXJpZ2h0IChDKSAyMDEzIE5va2lh
IENvcnBvcmF0aW9uIGFuZC9vciBpdHMgc3Vic2lkaWFyeSgtaWVzKS4KICAqCiAgKiBSZWRpc3Ry
aWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhv
dXQKICAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xs
b3dpbmcgY29uZGl0aW9ucyBhcmUKQEAgLTM0LDYgKzM1LDggQEAKIAogI2luY2x1ZGUgIlJUQ1Bl
ZXJDb25uZWN0aW9uSGFuZGxlci5oIgogCisjaW5jbHVkZSA8d3RmL05ldmVyRGVzdHJveWVkLmg+
CisKIG5hbWVzcGFjZSBXZWJDb3JlIHsKIGNsYXNzIFJUQ1BlZXJDb25uZWN0aW9uSGFuZGxlckNs
aWVudDsKIApAQCAtNDQsNiArNDcsMzAgQEAgc3RhdGljIHN0ZDo6dW5pcXVlX3B0cjxSVENQZWVy
Q29ubmVjdGlvbkhhbmRsZXI+IGNyZWF0ZUhhbmRsZXIoUlRDUGVlckNvbm5lY3Rpb24KIAogQ3Jl
YXRlUGVlckNvbm5lY3Rpb25IYW5kbGVyIFJUQ1BlZXJDb25uZWN0aW9uSGFuZGxlcjo6Y3JlYXRl
ID0gY3JlYXRlSGFuZGxlcjsKIAorY29uc3QgQXRvbWljU3RyaW5nJiBSVENQZWVyQ29ubmVjdGlv
bkhhbmRsZXI6OmluY29tcGF0aWJsZUNvbnN0cmFpbnRzRXJyb3JOYW1lKCkKK3sKKyAgICBzdGF0
aWMgTmV2ZXJEZXN0cm95ZWQ8QXRvbWljU3RyaW5nPiBpbmNvbXBhdGlibGVDb25zdHJhaW50cygi
SW5jb21wYXRpYmxlQ29uc3RyYWludHNFcnJvciIsIEF0b21pY1N0cmluZzo6Q29uc3RydWN0RnJv
bUxpdGVyYWwpOworICAgIHJldHVybiBpbmNvbXBhdGlibGVDb25zdHJhaW50czsKK30KKworY29u
c3QgQXRvbWljU3RyaW5nJiBSVENQZWVyQ29ubmVjdGlvbkhhbmRsZXI6OmludmFsaWRTZXNzaW9u
RGVzY3JpcHRpb25FcnJvck5hbWUoKQoreworICAgIHN0YXRpYyBOZXZlckRlc3Ryb3llZDxBdG9t
aWNTdHJpbmc+IGludmFsaWRTZXNzaW9uRGVzY3JpcHRpb24oIkludmFsaWRTZXNzaW9uRGVzY3Jp
cHRpb25FcnJvciIsIEF0b21pY1N0cmluZzo6Q29uc3RydWN0RnJvbUxpdGVyYWwpOworICAgIHJl
dHVybiBpbnZhbGlkU2Vzc2lvbkRlc2NyaXB0aW9uOworfQorCitjb25zdCBBdG9taWNTdHJpbmcm
IFJUQ1BlZXJDb25uZWN0aW9uSGFuZGxlcjo6aW5jb21wYXRpYmxlU2Vzc2lvbkRlc2NyaXB0aW9u
RXJyb3JOYW1lKCkKK3sKKyAgICBzdGF0aWMgTmV2ZXJEZXN0cm95ZWQ8QXRvbWljU3RyaW5nPiBp
bmNvbXBhdGlibGVTZXNzaW9uRGVzY3JpcHRpb24oIkluY29tcGF0aWJsZVNlc3Npb25EZXNjcmlw
dGlvbkVycm9yIiwgQXRvbWljU3RyaW5nOjpDb25zdHJ1Y3RGcm9tTGl0ZXJhbCk7CisgICAgcmV0
dXJuIGluY29tcGF0aWJsZVNlc3Npb25EZXNjcmlwdGlvbjsKK30KKworY29uc3QgQXRvbWljU3Ry
aW5nJiBSVENQZWVyQ29ubmVjdGlvbkhhbmRsZXI6OmludGVybmFsRXJyb3JOYW1lKCkKK3sKKyAg
ICBzdGF0aWMgTmV2ZXJEZXN0cm95ZWQ8QXRvbWljU3RyaW5nPiBpbnRlcm5hbCgiSW50ZXJuYWxF
cnJvciIsIEF0b21pY1N0cmluZzo6Q29uc3RydWN0RnJvbUxpdGVyYWwpOworICAgIHJldHVybiBp
bnRlcm5hbDsKK30KKwogfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQogCiAjZW5kaWYgLy8gRU5BQkxF
KE1FRElBX1NUUkVBTSkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL21lZGlh
c3RyZWFtL1JUQ1BlZXJDb25uZWN0aW9uSGFuZGxlci5oIGIvU291cmNlL1dlYkNvcmUvcGxhdGZv
cm0vbWVkaWFzdHJlYW0vUlRDUGVlckNvbm5lY3Rpb25IYW5kbGVyLmgKaW5kZXggMDE2MDVhOGIz
NzNmODNiOWY0ZDk1OWVkNmU3ODNlZTljMmQ5ODU4MC4uOTU0YWNiOWEzMjVkZWE1ZWNkYzJiNDYy
ZGQyMDA3NzU1YWY2ZmY3NiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbWVk
aWFzdHJlYW0vUlRDUGVlckNvbm5lY3Rpb25IYW5kbGVyLmgKKysrIGIvU291cmNlL1dlYkNvcmUv
cGxhdGZvcm0vbWVkaWFzdHJlYW0vUlRDUGVlckNvbm5lY3Rpb25IYW5kbGVyLmgKQEAgLTEsNSAr
MSw2IEBACiAvKgogICogQ29weXJpZ2h0IChDKSAyMDEyIEdvb2dsZSBJbmMuIEFsbCByaWdodHMg
cmVzZXJ2ZWQuCisgKiBDb3B5cmlnaHQgKEMpIDIwMTMgTm9raWEgQ29ycG9yYXRpb24gYW5kL29y
IGl0cyBzdWJzaWRpYXJ5KC1pZXMpLgogICoKICAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4g
c291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAogICogbW9kaWZpY2F0aW9u
LCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCkBA
IC03NCw2ICs3NSwxMSBAQCBwdWJsaWM6CiAgICAgc3RhdGljIENyZWF0ZVBlZXJDb25uZWN0aW9u
SGFuZGxlciBjcmVhdGU7CiAgICAgdmlydHVhbCB+UlRDUGVlckNvbm5lY3Rpb25IYW5kbGVyKCkg
eyB9CiAKKyAgICBzdGF0aWMgY29uc3QgQXRvbWljU3RyaW5nJiBpbmNvbXBhdGlibGVDb25zdHJh
aW50c0Vycm9yTmFtZSgpOworICAgIHN0YXRpYyBjb25zdCBBdG9taWNTdHJpbmcmIGludmFsaWRT
ZXNzaW9uRGVzY3JpcHRpb25FcnJvck5hbWUoKTsKKyAgICBzdGF0aWMgY29uc3QgQXRvbWljU3Ry
aW5nJiBpbmNvbXBhdGlibGVTZXNzaW9uRGVzY3JpcHRpb25FcnJvck5hbWUoKTsKKyAgICBzdGF0
aWMgY29uc3QgQXRvbWljU3RyaW5nJiBpbnRlcm5hbEVycm9yTmFtZSgpOworCiAgICAgdmlydHVh
bCBib29sIGluaXRpYWxpemUoUGFzc1JlZlB0cjxSVENDb25maWd1cmF0aW9uPiwgUGFzc1JlZlB0
cjxNZWRpYUNvbnN0cmFpbnRzPikgPSAwOwogCiAgICAgdmlydHVhbCB2b2lkIGNyZWF0ZU9mZmVy
KFBhc3NSZWZQdHI8UlRDU2Vzc2lvbkRlc2NyaXB0aW9uUmVxdWVzdD4sIFBhc3NSZWZQdHI8TWVk
aWFDb25zdHJhaW50cz4pID0gMDsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3Jt
L21vY2svUlRDTm90aWZpZXJzTW9jay5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9tb2Nr
L1JUQ05vdGlmaWVyc01vY2suY3BwCmluZGV4IDAyM2Y0NjM0OWRkNzRlZjIwZjUzMDUzZGM2ZDc4
MTQzOGI5NWEyYmQuLjBjODA2NTk2YzdiYzAxNjY2Nzg1ODJjZTNkNWY0MDdjMTAwNzIyMGIgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL21vY2svUlRDTm90aWZpZXJzTW9jay5j
cHAKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbW9jay9SVENOb3RpZmllcnNNb2NrLmNw
cApAQCAtMjksNiArMjksNyBAQAogCiAjaW5jbHVkZSAiUlRDTm90aWZpZXJzTW9jay5oIgogCisj
aW5jbHVkZSAiRE9NRXJyb3IuaCIKICNpbmNsdWRlICJSVENEYXRhQ2hhbm5lbEhhbmRsZXJNb2Nr
LmgiCiAjaW5jbHVkZSAiUlRDU2Vzc2lvbkRlc2NyaXB0aW9uRGVzY3JpcHRvci5oIgogI2luY2x1
ZGUgIlJUQ1Nlc3Npb25EZXNjcmlwdGlvblJlcXVlc3QuaCIKQEAgLTM2LDkgKzM3LDEwIEBACiAK
IG5hbWVzcGFjZSBXZWJDb3JlIHsKIAotU2Vzc2lvblJlcXVlc3ROb3RpZmllcjo6U2Vzc2lvblJl
cXVlc3ROb3RpZmllcihQYXNzUmVmUHRyPFJUQ1Nlc3Npb25EZXNjcmlwdGlvblJlcXVlc3Q+IHJl
cXVlc3QsIFBhc3NSZWZQdHI8UlRDU2Vzc2lvbkRlc2NyaXB0aW9uRGVzY3JpcHRvcj4gZGVzY3Jp
cHRvcikKK1Nlc3Npb25SZXF1ZXN0Tm90aWZpZXI6OlNlc3Npb25SZXF1ZXN0Tm90aWZpZXIoUGFz
c1JlZlB0cjxSVENTZXNzaW9uRGVzY3JpcHRpb25SZXF1ZXN0PiByZXF1ZXN0LCBQYXNzUmVmUHRy
PFJUQ1Nlc3Npb25EZXNjcmlwdGlvbkRlc2NyaXB0b3I+IGRlc2NyaXB0b3IsIGNvbnN0IFN0cmlu
ZyYgZXJyb3JOYW1lKQogICAgIDogbV9yZXF1ZXN0KHJlcXVlc3QpCiAgICAgLCBtX2Rlc2NyaXB0
b3IoZGVzY3JpcHRvcikKKyAgICAsIG1fZXJyb3JOYW1lKGVycm9yTmFtZSkKIHsKIH0KIApAQCAt
NDcsMTIgKzQ5LDEzIEBAIHZvaWQgU2Vzc2lvblJlcXVlc3ROb3RpZmllcjo6ZmlyZSgpCiAgICAg
aWYgKG1fZGVzY3JpcHRvcikKICAgICAgICAgbV9yZXF1ZXN0LT5yZXF1ZXN0U3VjY2VlZGVkKG1f
ZGVzY3JpcHRvcik7CiAgICAgZWxzZQotICAgICAgICBtX3JlcXVlc3QtPnJlcXVlc3RGYWlsZWQo
IlRFU1RfRVJST1IiKTsKKyAgICAgICAgbV9yZXF1ZXN0LT5yZXF1ZXN0RmFpbGVkKG1fZXJyb3JO
YW1lKTsKIH0KIAotVm9pZFJlcXVlc3ROb3RpZmllcjo6Vm9pZFJlcXVlc3ROb3RpZmllcihQYXNz
UmVmUHRyPFJUQ1ZvaWRSZXF1ZXN0PiByZXF1ZXN0LCBib29sIHN1Y2Nlc3MpCitWb2lkUmVxdWVz
dE5vdGlmaWVyOjpWb2lkUmVxdWVzdE5vdGlmaWVyKFBhc3NSZWZQdHI8UlRDVm9pZFJlcXVlc3Q+
IHJlcXVlc3QsIGJvb2wgc3VjY2VzcywgY29uc3QgU3RyaW5nJiBlcnJvck5hbWUpCiAgICAgOiBt
X3JlcXVlc3QocmVxdWVzdCkKICAgICAsIG1fc3VjY2VzcyhzdWNjZXNzKQorICAgICwgbV9lcnJv
ck5hbWUoZXJyb3JOYW1lKQogewogfQogCkBAIC02MSw3ICs2NCw3IEBAIHZvaWQgVm9pZFJlcXVl
c3ROb3RpZmllcjo6ZmlyZSgpCiAgICAgaWYgKG1fc3VjY2VzcykKICAgICAgICAgbV9yZXF1ZXN0
LT5yZXF1ZXN0U3VjY2VlZGVkKCk7CiAgICAgZWxzZQotICAgICAgICBtX3JlcXVlc3QtPnJlcXVl
c3RGYWlsZWQoIlRFU1RfRVJST1IiKTsKKyAgICAgICAgbV9yZXF1ZXN0LT5yZXF1ZXN0RmFpbGVk
KG1fZXJyb3JOYW1lKTsKIH0KIAogSWNlQ29ubmVjdGlvbk5vdGlmaWVyOjpJY2VDb25uZWN0aW9u
Tm90aWZpZXIoUlRDUGVlckNvbm5lY3Rpb25IYW5kbGVyQ2xpZW50KiBjbGllbnQsIFJUQ1BlZXJD
b25uZWN0aW9uSGFuZGxlckNsaWVudDo6SWNlQ29ubmVjdGlvblN0YXRlIGNvbm5lY3Rpb25TdGF0
ZSwgUlRDUGVlckNvbm5lY3Rpb25IYW5kbGVyQ2xpZW50OjpJY2VHYXRoZXJpbmdTdGF0ZSBnYXRo
ZXJpbmdTdGF0ZSkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL21vY2svUlRD
Tm90aWZpZXJzTW9jay5oIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbW9jay9SVENOb3RpZmll
cnNNb2NrLmgKaW5kZXggOTU5N2FmYzE5ZTYzNmU0OTExYmRhZDU3YmZkMDk1NTZhYWY3ODc4Ny4u
ZWUwNWMyNGJlZGQxMWRjODQwODhmMGEwYjBjYTFmYzJmYjRiNmMzOCAxMDA2NDQKLS0tIGEvU291
cmNlL1dlYkNvcmUvcGxhdGZvcm0vbW9jay9SVENOb3RpZmllcnNNb2NrLmgKKysrIGIvU291cmNl
L1dlYkNvcmUvcGxhdGZvcm0vbW9jay9SVENOb3RpZmllcnNNb2NrLmgKQEAgLTMzLDYgKzMzLDcg
QEAKICNpbmNsdWRlICJUaW1lckV2ZW50QmFzZWRNb2NrLmgiCiAjaW5jbHVkZSA8d3RmL1Bhc3NS
ZWZQdHIuaD4KICNpbmNsdWRlIDx3dGYvUmVmUHRyLmg+CisjaW5jbHVkZSA8d3RmL3RleHQvV1RG
U3RyaW5nLmg+CiAKIG5hbWVzcGFjZSBXZWJDb3JlIHsKIApAQCAtNDIsMjQgKzQzLDI2IEBAIGNs
YXNzIFJUQ1ZvaWRSZXF1ZXN0OwogCiBjbGFzcyBTZXNzaW9uUmVxdWVzdE5vdGlmaWVyIDogcHVi
bGljIE1vY2tOb3RpZmllciB7CiBwdWJsaWM6Ci0gICAgU2Vzc2lvblJlcXVlc3ROb3RpZmllcihQ
YXNzUmVmUHRyPFJUQ1Nlc3Npb25EZXNjcmlwdGlvblJlcXVlc3Q+LCBQYXNzUmVmUHRyPFJUQ1Nl
c3Npb25EZXNjcmlwdGlvbkRlc2NyaXB0b3I+KTsKKyAgICBTZXNzaW9uUmVxdWVzdE5vdGlmaWVy
KFBhc3NSZWZQdHI8UlRDU2Vzc2lvbkRlc2NyaXB0aW9uUmVxdWVzdD4sIFBhc3NSZWZQdHI8UlRD
U2Vzc2lvbkRlc2NyaXB0aW9uRGVzY3JpcHRvcj4sIGNvbnN0IFN0cmluZyYgPSBlbXB0eVN0cmlu
ZygpKTsKIAogICAgIHZvaWQgZmlyZSgpIE9WRVJSSURFOwogCiBwcml2YXRlOgogICAgIFJlZlB0
cjxSVENTZXNzaW9uRGVzY3JpcHRpb25SZXF1ZXN0PiBtX3JlcXVlc3Q7CiAgICAgUmVmUHRyPFJU
Q1Nlc3Npb25EZXNjcmlwdGlvbkRlc2NyaXB0b3I+IG1fZGVzY3JpcHRvcjsKKyAgICBTdHJpbmcg
bV9lcnJvck5hbWU7CiB9OwogCiBjbGFzcyBWb2lkUmVxdWVzdE5vdGlmaWVyIDogcHVibGljIE1v
Y2tOb3RpZmllciB7CiBwdWJsaWM6Ci0gICAgVm9pZFJlcXVlc3ROb3RpZmllcihQYXNzUmVmUHRy
PFJUQ1ZvaWRSZXF1ZXN0PiwgYm9vbCk7CisgICAgVm9pZFJlcXVlc3ROb3RpZmllcihQYXNzUmVm
UHRyPFJUQ1ZvaWRSZXF1ZXN0PiwgYm9vbCwgY29uc3QgU3RyaW5nJiA9IGVtcHR5U3RyaW5nKCkp
OwogCiAgICAgdm9pZCBmaXJlKCkgT1ZFUlJJREU7CiAKIHByaXZhdGU6CiAgICAgUmVmUHRyPFJU
Q1ZvaWRSZXF1ZXN0PiBtX3JlcXVlc3Q7CiAgICAgYm9vbCBtX3N1Y2Nlc3M7CisgICAgU3RyaW5n
IG1fZXJyb3JOYW1lOwogfTsKIAogY2xhc3MgSWNlQ29ubmVjdGlvbk5vdGlmaWVyIDogcHVibGlj
IE1vY2tOb3RpZmllciB7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9tb2Nr
L1JUQ1BlZXJDb25uZWN0aW9uSGFuZGxlck1vY2suY3BwIGIvU291cmNlL1dlYkNvcmUvcGxhdGZv
cm0vbW9jay9SVENQZWVyQ29ubmVjdGlvbkhhbmRsZXJNb2NrLmNwcAppbmRleCBkNWEyYTc4ZWQ0
OGM4ZTBjNzNjNjFlYzYzN2Q2ODI2OWI4MjgxNDY0Li42YzJkNTViNmZjYzYyOTk4NjVmMDhmYWJk
YjQxZWEyYTJjMTY2OWM0IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9tb2Nr
L1JUQ1BlZXJDb25uZWN0aW9uSGFuZGxlck1vY2suY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3Bs
YXRmb3JtL21vY2svUlRDUGVlckNvbm5lY3Rpb25IYW5kbGVyTW9jay5jcHAKQEAgLTY3LDcgKzY3
LDcgQEAgdm9pZCBSVENQZWVyQ29ubmVjdGlvbkhhbmRsZXJNb2NrOjpjcmVhdGVPZmZlcihQYXNz
UmVmUHRyPFJUQ1Nlc3Npb25EZXNjcmlwdGlvblIKICAgICBTdHJpbmcgc3VjY2VlZFZhbHVlOwog
ICAgIFJlZlB0cjxTZXNzaW9uUmVxdWVzdE5vdGlmaWVyPiBub3RpZmllcjsKICAgICBpZiAoY29u
c3RyYWludHMtPmdldE1hbmRhdG9yeUNvbnN0cmFpbnRWYWx1ZSgic3VjY2VlZCIsIHN1Y2NlZWRW
YWx1ZSkgJiYgc3VjY2VlZFZhbHVlID09ICJmYWxzZSIpCi0gICAgICAgIG5vdGlmaWVyID0gYWRv
cHRSZWYobmV3IFNlc3Npb25SZXF1ZXN0Tm90aWZpZXIocmVxdWVzdCwgMCkpOworICAgICAgICBu
b3RpZmllciA9IGFkb3B0UmVmKG5ldyBTZXNzaW9uUmVxdWVzdE5vdGlmaWVyKHJlcXVlc3QsIDAs
IFJUQ1BlZXJDb25uZWN0aW9uSGFuZGxlcjo6aW5jb21wYXRpYmxlQ29uc3RyYWludHNFcnJvck5h
bWUoKSkpOwogICAgIGVsc2UKICAgICAgICAgbm90aWZpZXIgPSBhZG9wdFJlZihuZXcgU2Vzc2lv
blJlcXVlc3ROb3RpZmllcihyZXF1ZXN0LCBSVENTZXNzaW9uRGVzY3JpcHRpb25EZXNjcmlwdG9y
OjpjcmVhdGUoIm9mZmVyIiwgImxvY2FsIikpKTsKIApAQCAtODAsNyArODAsNyBAQCB2b2lkIFJU
Q1BlZXJDb25uZWN0aW9uSGFuZGxlck1vY2s6OmNyZWF0ZUFuc3dlcihQYXNzUmVmUHRyPFJUQ1Nl
c3Npb25EZXNjcmlwdGlvbgogICAgIC8vIFdlIGNhbiBvbmx5IGNyZWF0ZSBhbiBhbnN3ZXIgaWYg
d2UgaGF2ZSBhbHJlYWR5IGhhZCBhbiBvZmZlciBhbmQgdGhlIHJlbW90ZSBzZXNzaW9uIGRlc2Ny
aXB0aW9uIGlzIHN0b3JlZC4KICAgICBTdHJpbmcgc3VjY2VlZFZhbHVlOwogICAgIGlmIChjb25z
dHJhaW50cy0+Z2V0TWFuZGF0b3J5Q29uc3RyYWludFZhbHVlKCJzdWNjZWVkIiwgc3VjY2VlZFZh
bHVlKSAmJiBzdWNjZWVkVmFsdWUgPT0gImZhbHNlIikKLSAgICAgICAgbm90aWZpZXIgPSBhZG9w
dFJlZihuZXcgU2Vzc2lvblJlcXVlc3ROb3RpZmllcihyZXF1ZXN0LCAwKSk7CisgICAgICAgIG5v
dGlmaWVyID0gYWRvcHRSZWYobmV3IFNlc3Npb25SZXF1ZXN0Tm90aWZpZXIocmVxdWVzdCwgMCwg
UlRDUGVlckNvbm5lY3Rpb25IYW5kbGVyOjppbmNvbXBhdGlibGVDb25zdHJhaW50c0Vycm9yTmFt
ZSgpKSk7CiAgICAgZWxzZQogICAgICAgICBub3RpZmllciA9IGFkb3B0UmVmKG5ldyBTZXNzaW9u
UmVxdWVzdE5vdGlmaWVyKHJlcXVlc3QsIFJUQ1Nlc3Npb25EZXNjcmlwdGlvbkRlc2NyaXB0b3I6
OmNyZWF0ZSgiYW5zd2VyIiwgImxvY2FsIikpKTsKIApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMv
Q2hhbmdlTG9nIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCmluZGV4IDE1ODIzMDg4ZmRlZmIxMmZi
NjcwMDU3ZWIyNWYzYjVmZjRkNzgzNWUuLmZkNTIyOTFmYzhjNjg2YWQ2NmFhZGYyMTc3MmQwNjdk
MGE1MzQxZjggMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL0NoYW5nZUxvZworKysgYi9MYXlvdXRU
ZXN0cy9DaGFuZ2VMb2cKQEAgLTEsMyArMSwxOCBAQAorMjAxMy0xMi0xMSAgVGhpYWdvIGRlIEJh
cnJvcyBMYWNlcmRhICA8dGhpYWdvLmxhY2VyZGFAb3BlbmJvc3NhLm9yZz4KKworICAgICAgICBB
ZGRpbmcgUlRDUGVlckNvbm5lY3Rpb25FcnJvckNhbGxiYWNrCisgICAgICAgIGh0dHBzOi8vYnVn
cy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xMjU1NzQKKworICAgICAgICBSZXZpZXdlZCBi
eSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBBY2NvcmRpbmcgdG8gdGhlIHNwZWMgdGhlcmUg
c2hvdWxkIGJlIGEgUlRDUGVlckNvbm5lY3Rpb25FcnJvckNhbGxiYWNrIGZ1bmN0aW9uIHR5cGUg
Zm9yIGNyZWF0ZU9mZmVyL0Fuc3dlciwKKyAgICAgICAgc2V0TG9jYWwvUmVtb3RlRGVzY3JpcHRp
b24gYW5kIHVwZGF0ZUljZSBmdW5jdGlvbiBjYWxscy4gVGhpcyBjYWxsYmFjayBtdXN0IGhhbmRs
ZSBhIERPTUVycm9yIG9iamVjdC4KKworICAgICAgICAqIGZhc3QvbWVkaWFzdHJlYW0vUlRDUGVl
ckNvbm5lY3Rpb24tY3JlYXRlQW5zd2VyLWV4cGVjdGVkLnR4dDoKKyAgICAgICAgKiBmYXN0L21l
ZGlhc3RyZWFtL1JUQ1BlZXJDb25uZWN0aW9uLWNyZWF0ZUFuc3dlci5odG1sOgorICAgICAgICAq
IGZhc3QvbWVkaWFzdHJlYW0vUlRDUGVlckNvbm5lY3Rpb24tY3JlYXRlT2ZmZXItZXhwZWN0ZWQu
dHh0OgorICAgICAgICAqIGZhc3QvbWVkaWFzdHJlYW0vUlRDUGVlckNvbm5lY3Rpb24tY3JlYXRl
T2ZmZXIuaHRtbDoKKwogMjAxMy0xMi0xMiAgQWxleGV5IFByb3NrdXJ5YWtvdiAgPGFwQGFwcGxl
LmNvbT4KIAogICAgICAgICBBZGQgc3VwcG9ydCBmb3IgUlNBRVMtUEtDUzEtdjFfNQpkaWZmIC0t
Z2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9tZWRpYXN0cmVhbS9SVENQZWVyQ29ubmVjdGlvbi1jcmVh
dGVBbnN3ZXItZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvZmFzdC9tZWRpYXN0cmVhbS9SVENQ
ZWVyQ29ubmVjdGlvbi1jcmVhdGVBbnN3ZXItZXhwZWN0ZWQudHh0CmluZGV4IGU4Y2E2NDYxZTBi
ZjE2MGVmY2E0YjQ5OTcxYzAzZDM3ZDAxN2U3MTMuLjhlMDFjOTI5ZTU0ZjE2ZjYzYTAwZjAyNzVi
ZjA1NGQ3MTBhY2JiYmEgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2Zhc3QvbWVkaWFzdHJlYW0v
UlRDUGVlckNvbm5lY3Rpb24tY3JlYXRlQW5zd2VyLWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRU
ZXN0cy9mYXN0L21lZGlhc3RyZWFtL1JUQ1BlZXJDb25uZWN0aW9uLWNyZWF0ZUFuc3dlci1leHBl
Y3RlZC50eHQKQEAgLTksNiArOSw3IEBAIFBBU1MgcGMuc2V0UmVtb3RlRGVzY3JpcHRpb24oc2Vz
c2lvbkRlc2NyaXB0aW9uLCBzZXREZXNjcmlwdGlvblN1Y2NlZWRlZCwgc2V0RGVzCiBQQVNTIHNl
dFJlbW90ZURlc2NyaXB0aW9uIHN1Y2NlZWRlZC4KIFBBU1MgcGMuY3JlYXRlQW5zd2VyKHJlcXVl
c3RTdWNjZWVkZWQyLCByZXF1ZXN0RmFpbGVkMiwge21hbmRhdG9yeTp7InN1Y2NlZWQiOmZhbHNl
fX0pOyBkaWQgbm90IHRocm93IGV4Y2VwdGlvbi4KIFBBU1MgY3JlYXRlQW5zd2VyIHJlcXVlc3Qg
ZmFpbGVkLgorUEFTUyBlcnJvclJlYXNvbi5uYW1lIGlzICJJbmNvbXBhdGlibGVDb25zdHJhaW50
c0Vycm9yIgogUEFTUyBwYy5jcmVhdGVBbnN3ZXIocmVxdWVzdFN1Y2NlZWRlZDMsIHJlcXVlc3RG
YWlsZWQzKTsgZGlkIG5vdCB0aHJvdyBleGNlcHRpb24uCiBQQVNTIGNyZWF0ZUFuc3dlciByZXF1
ZXN0IHN1Y2NlZWRlZC4KIFBBU1Mgc2Vzc2lvbkRlc2NyaXB0aW9uLnR5cGUgaXMgImFuc3dlciIK
ZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3QvbWVkaWFzdHJlYW0vUlRDUGVlckNvbm5lY3Rp
b24tY3JlYXRlQW5zd2VyLmh0bWwgYi9MYXlvdXRUZXN0cy9mYXN0L21lZGlhc3RyZWFtL1JUQ1Bl
ZXJDb25uZWN0aW9uLWNyZWF0ZUFuc3dlci5odG1sCmluZGV4IGRiMzYxM2JkMjE2Mjk2OWE1Nzg5
Y2I2YmQ0YWVmMzgwMjMwYThlMGYuLjkzZjQ5NWQ1MTMxMTU3OWNlZmVkYTA2YTlmNjE4NWM4ZTA4
YWE2NzAgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2Zhc3QvbWVkaWFzdHJlYW0vUlRDUGVlckNv
bm5lY3Rpb24tY3JlYXRlQW5zd2VyLmh0bWwKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC9tZWRpYXN0
cmVhbS9SVENQZWVyQ29ubmVjdGlvbi1jcmVhdGVBbnN3ZXIuaHRtbApAQCAtNDAsNiArNDAsOSBA
QAogICAgICAgICAgICAgewogICAgICAgICAgICAgICAgIHRlc3RQYXNzZWQoJ2NyZWF0ZUFuc3dl
ciByZXF1ZXN0IGZhaWxlZC4nKTsKIAorICAgICAgICAgICAgICAgIGVycm9yUmVhc29uID0gcmVh
c29uOworICAgICAgICAgICAgICAgIHNob3VsZEJlKCdlcnJvclJlYXNvbi5uYW1lJywgJyJJbmNv
bXBhdGlibGVDb25zdHJhaW50c0Vycm9yIicpOworCiAgICAgICAgICAgICAgICAgc2hvdWxkTm90
VGhyb3coJ3BjLmNyZWF0ZUFuc3dlcihyZXF1ZXN0U3VjY2VlZGVkMywgcmVxdWVzdEZhaWxlZDMp
OycpOwogICAgICAgICAgICAgfQogCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L21lZGlh
c3RyZWFtL1JUQ1BlZXJDb25uZWN0aW9uLWNyZWF0ZU9mZmVyLWV4cGVjdGVkLnR4dCBiL0xheW91
dFRlc3RzL2Zhc3QvbWVkaWFzdHJlYW0vUlRDUGVlckNvbm5lY3Rpb24tY3JlYXRlT2ZmZXItZXhw
ZWN0ZWQudHh0CmluZGV4IDE0ODY3MzA1YjkxN2JhZTEzN2RiZGFlNTgyZGI0NGEzYjJmNGIxZDcu
LjU1YWVlZDg5ZDZiNmE4OTVlODQ1MTUyZTUyZGY3NGRmNzczMjg4YmUgMTAwNjQ0Ci0tLSBhL0xh
eW91dFRlc3RzL2Zhc3QvbWVkaWFzdHJlYW0vUlRDUGVlckNvbm5lY3Rpb24tY3JlYXRlT2ZmZXIt
ZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL2Zhc3QvbWVkaWFzdHJlYW0vUlRDUGVlckNv
bm5lY3Rpb24tY3JlYXRlT2ZmZXItZXhwZWN0ZWQudHh0CkBAIC04LDcgKzgsNyBAQCBQQVNTIGNy
ZWF0ZU9mZmVyIHJlcXVlc3Qgc3VjY2VlZGVkLgogUEFTUyBzZXNzaW9uRGVzY3JpcHRpb24udHlw
ZSBpcyAib2ZmZXIiCiBQQVNTIHBjLmNyZWF0ZU9mZmVyKHJlcXVlc3RTdWNjZWVkZWQyLCByZXF1
ZXN0RmFpbGVkMiwge21hbmRhdG9yeTp7InN1Y2NlZWQiOmZhbHNlfX0pOyBkaWQgbm90IHRocm93
IGV4Y2VwdGlvbi4KIFBBU1MgY3JlYXRlT2ZmZXIgcmVxdWVzdCBmYWlsZWQuCi1QQVNTIGVycm9y
UmVhc29uIGlzICJURVNUX0VSUk9SIgorUEFTUyBlcnJvclJlYXNvbi5uYW1lIGlzICJJbmNvbXBh
dGlibGVDb25zdHJhaW50c0Vycm9yIgogUEFTUyBwYy5jcmVhdGVPZmZlcihyZXF1ZXN0U3VjY2Vl
ZGVkMywgcmVxdWVzdEZhaWxlZDEpOyBkaWQgbm90IHRocm93IGV4Y2VwdGlvbi4KIFBBU1MgY3Jl
YXRlT2ZmZXIgcmVxdWVzdCBzdWNjZWVkZWQuCiBQQVNTIHNlc3Npb25EZXNjcmlwdGlvbi50eXBl
IGlzICJvZmZlciIKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3QvbWVkaWFzdHJlYW0vUlRD
UGVlckNvbm5lY3Rpb24tY3JlYXRlT2ZmZXIuaHRtbCBiL0xheW91dFRlc3RzL2Zhc3QvbWVkaWFz
dHJlYW0vUlRDUGVlckNvbm5lY3Rpb24tY3JlYXRlT2ZmZXIuaHRtbAppbmRleCAyZDZlOGUwNjFk
NGRmZDFhZmU3YjFhNTE2OGQwNzQ5MDFkZGIyNDY5Li5kNmQ3NzNlZDA4YmM1OWM1YzYwNThlOTBl
YWI2NTU1ZTliOTU4YmNiIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9mYXN0L21lZGlhc3RyZWFt
L1JUQ1BlZXJDb25uZWN0aW9uLWNyZWF0ZU9mZmVyLmh0bWwKKysrIGIvTGF5b3V0VGVzdHMvZmFz
dC9tZWRpYXN0cmVhbS9SVENQZWVyQ29ubmVjdGlvbi1jcmVhdGVPZmZlci5odG1sCkBAIC0yMyw3
ICsyMyw3IEBACiAgICAgICAgICAgICAgICAgdGVzdFBhc3NlZCgnY3JlYXRlT2ZmZXIgcmVxdWVz
dCBmYWlsZWQuJyk7CiAKICAgICAgICAgICAgICAgICBlcnJvclJlYXNvbiA9IHJlYXNvbjsKLSAg
ICAgICAgICAgICAgICBzaG91bGRCZSgnZXJyb3JSZWFzb24nLCAnIlRFU1RfRVJST1IiJyk7Cisg
ICAgICAgICAgICAgICAgc2hvdWxkQmUoJ2Vycm9yUmVhc29uLm5hbWUnLCAnIkluY29tcGF0aWJs
ZUNvbnN0cmFpbnRzRXJyb3IiJyk7CiAKICAgICAgICAgICAgICAgICBzaG91bGROb3RUaHJvdygn
cGMuY3JlYXRlT2ZmZXIocmVxdWVzdFN1Y2NlZWRlZDMsIHJlcXVlc3RGYWlsZWQxKTsnKTsKICAg
ICAgICAgICAgIH0K
</data>

          </attachment>
      

    </bug>

</bugzilla>