<?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>149499</bug_id>
          
          <creation_ts>2015-09-23 05:47:51 -0700</creation_ts>
          <short_desc>Move webkitGetUserMedia to JS Builtin</short_desc>
          <delta_ts>2015-11-03 05:44:53 -0800</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>WebKit 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>150163</dependson>
          
          <everconfirmed>1</everconfirmed>
          <reporter name="youenn fablet">youennf</reporter>
          <assigned_to name="youenn fablet">youennf</assigned_to>
          <cc>adam.bergkvist</cc>
    
    <cc>commit-queue</cc>
    
    <cc>darin</cc>
    
    <cc>eric.carlson</cc>
    
    <cc>ggaren</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1128299</commentid>
    <comment_count>0</comment_count>
    <who name="youenn fablet">youennf</who>
    <bug_when>2015-09-23 05:47:51 -0700</bug_when>
    <thetext>This may remove code to move to JS builtin.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1131955</commentid>
    <comment_count>1</comment_count>
      <attachid>262781</attachid>
    <who name="youenn fablet">youennf</who>
    <bug_when>2015-10-09 11:10:25 -0700</bug_when>
    <thetext>Created attachment 262781
WIP</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1132313</commentid>
    <comment_count>2</comment_count>
      <attachid>262889</attachid>
    <who name="youenn fablet">youennf</who>
    <bug_when>2015-10-12 08:58:51 -0700</bug_when>
    <thetext>Created attachment 262889
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1132314</commentid>
    <comment_count>3</comment_count>
    <who name="youenn fablet">youennf</who>
    <bug_when>2015-10-12 09:04:25 -0700</bug_when>
    <thetext>(In reply to comment #2)
&gt; Created attachment 262889 [details]
&gt; Patch

Patch is migrating webkitGetUserMedia to js builtins.
It also fixes the code generator to properly handle builtins in partial interfaces.
I can split that as a different bug if that eases the review.

adambe, if this patch is going to the trunk, next step might be to remove
DOMPromiseWithCallback which would not be used in WebKit trunk code any longer.
Let me know your thoughts about it.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1132340</commentid>
    <comment_count>4</comment_count>
      <attachid>262896</attachid>
    <who name="youenn fablet">youennf</who>
    <bug_when>2015-10-12 10:13:33 -0700</bug_when>
    <thetext>Created attachment 262896
Fixing Win build</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1132710</commentid>
    <comment_count>5</comment_count>
    <who name="Adam Bergkvist">adam.bergkvist</who>
    <bug_when>2015-10-13 00:03:18 -0700</bug_when>
    <thetext>With the move to JSBulitins for RTCPeerConnection I&apos;m not using DOMPromiseWithCallback anymore. So please go ahead.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1132737</commentid>
    <comment_count>6</comment_count>
      <attachid>262896</attachid>
    <who name="Adam Bergkvist">adam.bergkvist</who>
    <bug_when>2015-10-13 02:18:56 -0700</bug_when>
    <thetext>Comment on attachment 262896
Fixing Win build

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

&gt; Source/WebCore/Modules/mediastream/NavigatorUserMedia.js:30
&gt; +    if (arguments.length != 3)

Perhaps we should use &apos;arguments.length &lt; 3&apos; here to not explicitly disallow calling with more than 3 arguments.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1132740</commentid>
    <comment_count>7</comment_count>
      <attachid>262896</attachid>
    <who name="Adam Bergkvist">adam.bergkvist</who>
    <bug_when>2015-10-13 03:10:36 -0700</bug_when>
    <thetext>Comment on attachment 262896
Fixing Win build

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

&gt; Source/WebCore/bindings/js/JSDOMWindowBase.cpp:102
&gt; +        GlobalPropertyInfo(clientData.builtinNames().readableStreamClosedPrivateName(), jsNumber(1), DontDelete | ReadOnly),

This one ended up outside the ENABLE(STREAMS_API) guard.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1132758</commentid>
    <comment_count>8</comment_count>
      <attachid>262986</attachid>
    <who name="youenn fablet">youennf</who>
    <bug_when>2015-10-13 05:49:25 -0700</bug_when>
    <thetext>Created attachment 262986
Addressing Adam comments</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1132759</commentid>
    <comment_count>9</comment_count>
    <who name="youenn fablet">youennf</who>
    <bug_when>2015-10-13 05:52:18 -0700</bug_when>
    <thetext>(In reply to comment #8)
&gt; Created attachment 262986 [details]
&gt; Addressing Adam comments

Thanks Adam.
Patch fixed accordingly.

I also added a fixme in the js file, as we should probably raise a DOM unsupported exception (like done in the custom binding) in lieu of a TypeError.

We might actually want to add a @DOMException() accessible from JS builtins to create DOM exceptions.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1132860</commentid>
    <comment_count>10</comment_count>
      <attachid>262986</attachid>
    <who name="youenn fablet">youennf</who>
    <bug_when>2015-10-13 12:19:26 -0700</bug_when>
    <thetext>Comment on attachment 262986
Addressing Adam comments

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

&gt; Source/WebCore/ChangeLog:20
&gt; +        This is done afterwards when calling navigator.MediaDevices.@getUserMedia.

This comment is no longer true. I will remove it when landing or in a next patch.

&gt; Source/WebCore/Modules/mediastream/NavigatorUserMedia.js:32
&gt; +

Implementing consistently in JS builtins the checks done by what would be the WebIDL generated code may not always be easy.
This may cause small behavior differences when migrating an existing function to JS builtins, as can be seen from this case.
I wonder whether this is good enough or whether a better solution should be found out.

&gt; Source/WebCore/bindings/js/JSDOMWindowBase.cpp:101
&gt; +        GlobalPropertyInfo(clientData.builtinNames().getUserMediaPrivateName(), getUserMediaFunction, DontDelete | ReadOnly),

Adding getUserMedia to a private slot in JSDOMWindowBase is a temporary solution.
JSMediaDevicesPrototype should have a private symbol slot for it instead.
This is quite straightforward for the binding generator to handle this, using a [Private] extended keyword for instance.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1133454</commentid>
    <comment_count>11</comment_count>
    <who name="youenn fablet">youennf</who>
    <bug_when>2015-10-15 06:46:05 -0700</bug_when>
    <thetext>&gt; Adding getUserMedia to a private slot in JSDOMWindowBase is a temporary
&gt; solution.
&gt; JSMediaDevicesPrototype should have a private symbol slot for it instead.
&gt; This is quite straightforward for the binding generator to handle this,
&gt; using a [Private] extended keyword for instance.

I gave a try at the [Private] approach.
It can be found in bug 150167.

I also splitted the changes to the binding generator in bug 150163 to ease the review.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1133794</commentid>
    <comment_count>12</comment_count>
    <who name="Adam Bergkvist">adam.bergkvist</who>
    <bug_when>2015-10-16 01:03:02 -0700</bug_when>
    <thetext>(In reply to comment #10)
&gt; 
&gt; Implementing consistently in JS builtins the checks done by what would be
&gt; the WebIDL generated code may not always be easy.
&gt; This may cause small behavior differences when migrating an existing
&gt; function to JS builtins, as can be seen from this case.
&gt; I wonder whether this is good enough or whether a better solution should be
&gt; found out.
&gt; 

Implementing complete type checking routines in JS is quite a large task, but we could perhaps start with a smaller set of reusable helper functions.

For example:

throwIfNotEnoughArguments(requiredArgCount);</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1134566</commentid>
    <comment_count>13</comment_count>
      <attachid>263479</attachid>
    <who name="youenn fablet">youennf</who>
    <bug_when>2015-10-19 06:54:35 -0700</bug_when>
    <thetext>Created attachment 263479
Rebasing</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1134567</commentid>
    <comment_count>14</comment_count>
    <who name="youenn fablet">youennf</who>
    <bug_when>2015-10-19 07:02:00 -0700</bug_when>
    <thetext>(In reply to comment #12)
&gt; (In reply to comment #10)
&gt; &gt; 
&gt; &gt; Implementing consistently in JS builtins the checks done by what would be
&gt; &gt; the WebIDL generated code may not always be easy.
&gt; &gt; This may cause small behavior differences when migrating an existing
&gt; &gt; function to JS builtins, as can be seen from this case.
&gt; &gt; I wonder whether this is good enough or whether a better solution should be
&gt; &gt; found out.
&gt; &gt; 
&gt; 
&gt; Implementing complete type checking routines in JS is quite a large task,
&gt; but we could perhaps start with a smaller set of reusable helper functions.
&gt; 
&gt; For example:
&gt; 
&gt; throwIfNotEnoughArguments(requiredArgCount);

That might be handy indeed.
Uploaded patch is keeping the previous version argument checking code.
Let&apos;s continue discussing the level of fidelity we actually want.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1138525</commentid>
    <comment_count>15</comment_count>
      <attachid>264575</attachid>
    <who name="youenn fablet">youennf</who>
    <bug_when>2015-11-02 05:21:23 -0800</bug_when>
    <thetext>Created attachment 264575
Rebbasing</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1138530</commentid>
    <comment_count>16</comment_count>
      <attachid>264576</attachid>
    <who name="youenn fablet">youennf</who>
    <bug_when>2015-11-02 05:40:21 -0800</bug_when>
    <thetext>Created attachment 264576
Rebasing</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1138538</commentid>
    <comment_count>17</comment_count>
      <attachid>264580</attachid>
    <who name="youenn fablet">youennf</who>
    <bug_when>2015-11-02 05:56:08 -0800</bug_when>
    <thetext>Created attachment 264580
Fixing build</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1138550</commentid>
    <comment_count>18</comment_count>
      <attachid>264586</attachid>
    <who name="youenn fablet">youennf</who>
    <bug_when>2015-11-02 06:59:00 -0800</bug_when>
    <thetext>Created attachment 264586
Adding missing CMake file</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1138843</commentid>
    <comment_count>19</comment_count>
      <attachid>264586</attachid>
    <who name="Darin Adler">darin</who>
    <bug_when>2015-11-02 21:50:58 -0800</bug_when>
    <thetext>Comment on attachment 264586
Adding missing CMake file

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

This looks fine. I can’t help thinking we are writing too much checking code and should find a simpler way to deal with type checking of both &quot;this&quot; and of arguments.

&gt; Source/WebCore/Modules/mediastream/NavigatorUserMedia.js:30
&gt; +    // FIXME: We should raise a DOM unsupported exception if there is no navigator and properly detect whether method is not called on a Navigator object.

Best way to document this would probably be test cases. Not even sure we need the FIXME if we had those test cases and documented them well.

&gt; Source/WebCore/Modules/mediastream/NavigatorUserMedia.js:43
&gt; +    if (arguments.length &lt; 3)
&gt; +        throw new @TypeError(&quot;Not enough arguments&quot;);
&gt; +
&gt; +    if (options !== Object(options))
&gt; +        throw new @TypeError(&quot;Argument 1 (options) to Navigator.webkitGetUserMedia must be an object&quot;);
&gt; +
&gt; +    if (typeof successCallback !== &quot;function&quot;)
&gt; +        throw new @TypeError(&quot;Argument 2 (&apos;successCallback&apos;) to Navigator.webkitGetUserMedia must be a function&quot;);
&gt; +    if (typeof errorCallback !== &quot;function&quot;)
&gt; +        throw new @TypeError(&quot;Argument 3 (&apos;errorCallback&apos;) to Navigator.webkitGetUserMedia must be a function&quot;);

I don’t have a real sense of how important it is to do all these checks. Seems a bit unnatural to check things that the next level down is perfectly able to check well enough.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1138913</commentid>
    <comment_count>20</comment_count>
    <who name="youenn fablet">youennf</who>
    <bug_when>2015-11-03 04:59:06 -0800</bug_when>
    <thetext>Thanks for the review.

(In reply to comment #19)
&gt; Comment on attachment 264586 [details]
&gt; Adding missing CMake file
&gt; 
&gt; View in context:
&gt; https://bugs.webkit.org/attachment.cgi?id=264586&amp;action=review
&gt; 
&gt; This looks fine. I can’t help thinking we are writing too much checking code
&gt; and should find a simpler way to deal with type checking of both &quot;this&quot; and
&gt; of arguments.

We can do type check in different ways.
We can  mimic C++ checks (as done in current code).
If we want to continue into that direction, code could probably be generated based on the WebIDL.
That would ensure consistency across all built-ins APIs (and also with native APIs).

Another option is to do only the checks that are required for the code.
Taking NavigatorUserMedia.webkitGetUserMedia as an example, we really need only to check that successCallback and errorCallback are functions.
- &apos;options&apos; check is done by MediaDevices.@getUserMediaFromJS (check will be done in a different order than its C++ version).
- &apos;this&apos; check will be done when accessing this.mediaDevices.@getUserMediaFromJS (&quot;object is null&quot; exception raising).
- &apos;disconnected frame error case&apos; will also be done when accessing this.mediaDevices (&quot;object is null&quot; exception raising).
In all cases, we got an exception, but error message or type would be different compared to its C++ counterpart. 

JS code would be down to:
function webkitGetUserMedia(options, successCallback, errorCallback)
{
    &quot;use strict&quot;;

    if (typeof successCallback !== &quot;function&quot;)
        throw new @TypeError(&quot;Argument 2 (&apos;successCallback&apos;) to Navigator.webkitGetUserMedia must be a function&quot;);
    if (typeof errorCallback !== &quot;function&quot;)
        throw new @TypeError(&quot;Argument 3 (&apos;errorCallback&apos;) to Navigator.webkitGetUserMedia must be a function&quot;);

    this.mediaDevices.@getUserMediaFromJS(options).then(successCallback, errorCallback);
}

&gt; &gt; Source/WebCore/Modules/mediastream/NavigatorUserMedia.js:30
&gt; &gt; +    // FIXME: We should raise a DOM unsupported exception if there is no navigator and properly detect whether method is not called on a Navigator object.
&gt; 
&gt; Best way to document this would probably be test cases. Not even sure we
&gt; need the FIXME if we had those test cases and documented them well.

This is somehow documented by rebased LayoutTests/http/tests/media/media-stream/disconnected-frame-already-expected.txt</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1138915</commentid>
    <comment_count>21</comment_count>
      <attachid>264586</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2015-11-03 05:44:48 -0800</bug_when>
    <thetext>Comment on attachment 264586
Adding missing CMake file

Clearing flags on attachment: 264586

Committed r191949: &lt;http://trac.webkit.org/changeset/191949&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1138916</commentid>
    <comment_count>22</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2015-11-03 05:44:53 -0800</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>262781</attachid>
            <date>2015-10-09 11:10:25 -0700</date>
            <delta_ts>2015-10-12 08:58:45 -0700</delta_ts>
            <desc>WIP</desc>
            <filename>bug-149499-20151009200951.patch</filename>
            <type>text/plain</type>
            <size>66711</size>
            <attacher name="youenn fablet">youennf</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTkwODAxCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggOTg1NjcwNzJiYWRlMzZl
YjY5Njc5OGY1NTJlNTBlYTQ1ODcwZjMzOC4uYTUwYzAyNzcwMDRkYWZjMjQ1NTc1ZjQ5NTg1OGZi
ZTNjNWM4MDJkNiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDQ2IEBACisyMDE1LTEwLTA5ICBZb3Vl
bm4gRmFibGV0ICA8eW91ZW5uLmZhYmxldEBjcmYuY2Fub24uZnI+CisKKyAgICAgICAgTW92ZSB3
ZWJraXRHZXRVc2VyTWVkaWEgdG8gSlMgQnVpbHRpbgorICAgICAgICBodHRwczovL2J1Z3Mud2Vi
a2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTQ5NDk5CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9C
T0RZIChPT1BTISkuCisKKyAgICAgICAgV0lQLgorCisgICAgICAgICogQ01ha2VMaXN0cy50eHQ6
CisgICAgICAgICogRGVyaXZlZFNvdXJjZXMubWFrZToKKyAgICAgICAgKiBNb2R1bGVzL21lZGlh
c3RyZWFtL05hdmlnYXRvclVzZXJNZWRpYS5pZGw6CisgICAgICAgICogTW9kdWxlcy9tZWRpYXN0
cmVhbS9OYXZpZ2F0b3JVc2VyTWVkaWEuanM6IENvcGllZCBmcm9tIFNvdXJjZS9XZWJDb3JlL2Jp
bmRpbmdzL3NjcmlwdHMvdGVzdC9PYmpDL0RPTVRlc3RJbnRlcmZhY2UuaC4KKyAgICAgICAgKHdl
YmtpdEdldFVzZXJNZWRpYSk6CisgICAgICAgICogTW9kdWxlcy9tZWRpYXN0cmVhbS9OYXZpZ2F0
b3JVc2VyTWVkaWFFcnJvckNhbGxiYWNrLmg6IFJlbW92ZWQuCisgICAgICAgICogTW9kdWxlcy9t
ZWRpYXN0cmVhbS9OYXZpZ2F0b3JVc2VyTWVkaWFFcnJvckNhbGxiYWNrLmlkbDogUmVtb3ZlZC4K
KyAgICAgICAgKiBNb2R1bGVzL21lZGlhc3RyZWFtL05hdmlnYXRvclVzZXJNZWRpYVN1Y2Nlc3ND
YWxsYmFjay5oOiBSZW1vdmVkLgorICAgICAgICAqIE1vZHVsZXMvbWVkaWFzdHJlYW0vTmF2aWdh
dG9yVXNlck1lZGlhU3VjY2Vzc0NhbGxiYWNrLmlkbDogUmVtb3ZlZC4KKyAgICAgICAgKiBNb2R1
bGVzL21lZGlhc3RyZWFtL1VzZXJNZWRpYVJlcXVlc3QuY3BwOgorICAgICAgICAqIE1vZHVsZXMv
bWVkaWFzdHJlYW0vVXNlck1lZGlhUmVxdWVzdC5oOgorICAgICAgICAqIFdlYkNvcmUueGNvZGVw
cm9qL3Byb2plY3QucGJ4cHJvajoKKyAgICAgICAgKiBiaW5kaW5ncy9qcy9KU05hdmlnYXRvckN1
c3RvbS5jcHA6CisgICAgICAgICogYmluZGluZ3MvanMvV2ViQ29yZUpTQnVpbHRpbnMuY3BwOgor
ICAgICAgICAqIGJpbmRpbmdzL2pzL1dlYkNvcmVKU0J1aWx0aW5zLmg6CisgICAgICAgIChXZWJD
b3JlOjpKU0J1aWx0aW5GdW5jdGlvbnM6OkpTQnVpbHRpbkZ1bmN0aW9ucyk6CisgICAgICAgIChX
ZWJDb3JlOjpKU0J1aWx0aW5GdW5jdGlvbnM6Om5hdmlnYXRvclVzZXJNZWRpYUJ1aWx0aW5zKToK
KyAgICAgICAgKiBiaW5kaW5ncy9zY3JpcHRzL0NvZGVHZW5lcmF0b3JKUy5wbToKKyAgICAgICAg
KEdldEF0dHJpYnV0ZUdldHRlck5hbWUpOgorICAgICAgICAoR2V0QXR0cmlidXRlU2V0dGVyTmFt
ZSk6CisgICAgICAgIChHZXRGdW5jdGlvbk5hbWUpOgorICAgICAgICAoR2VuZXJhdGVDb25zdHJ1
Y3RvckhlbHBlck1ldGhvZHMpOgorICAgICAgICAoR2V0SlNCdWlsdGluRnVuY3Rpb25OYW1lKToK
KyAgICAgICAgKEdldEpTQnVpbHRpbkZ1bmN0aW9uTmFtZUZyb21TdHJpbmcpOgorICAgICAgICAo
R2V0SlNCdWlsdGluU2NvcGVOYW1lKToKKyAgICAgICAgKEFkZEpTQnVpbHRpbkluY2x1ZGVzSWZO
ZWVkZWQpOgorICAgICAgICAqIGJpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RJbnRlcmZh
Y2UuY3BwOgorICAgICAgICAqIGJpbmRpbmdzL3NjcmlwdHMvdGVzdC9PYmpDL0RPTVRlc3RJbnRl
cmZhY2UuaDoKKyAgICAgICAgKiBiaW5kaW5ncy9zY3JpcHRzL3Rlc3QvT2JqQy9ET01UZXN0SW50
ZXJmYWNlLm1tOgorICAgICAgICAoLVtET01UZXN0SW50ZXJmYWNlIGJ1aWx0aW5BdHRyaWJ1dGVd
KToKKyAgICAgICAgKC1bRE9NVGVzdEludGVyZmFjZSBzZXRCdWlsdGluQXR0cmlidXRlOl0pOgor
ICAgICAgICAoLVtET01UZXN0SW50ZXJmYWNlIGJ1aWx0aW5GdW5jdGlvbl0pOgorICAgICAgICAq
IGJpbmRpbmdzL3NjcmlwdHMvdGVzdC9UZXN0U3VwcGxlbWVudGFsLmlkbDoKKwogMjAxNS0xMC0w
OCAgV2Vuc29uIEhzaWVoICA8d2Vuc29uX2hzaWVoQGFwcGxlLmNvbT4KIAogICAgICAgICBCYWNr
Z3JvdW5kcyBibGVlZCBvdXQgb2YgbmF0aXZlbHkgcmVuZGVyZWQgdGV4dCBmaWVsZHMKZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJDb3JlL0NNYWtlTGlzdHMudHh0IGIvU291cmNlL1dlYkNvcmUvQ01h
a2VMaXN0cy50eHQKaW5kZXggMzZmZDY0ZTE3MGJkN2FlYjI2MjZjMmQ4N2IzMzg2MTI3NjlmNGM4
Ni4uMDlkNTcwYzA1YzViMTM2YTg2MGI2MjVkMWZmZjQ1NTBhZDU5MDFmMSAxMDA2NDQKLS0tIGEv
U291cmNlL1dlYkNvcmUvQ01ha2VMaXN0cy50eHQKKysrIGIvU291cmNlL1dlYkNvcmUvQ01ha2VM
aXN0cy50eHQKQEAgLTI0MSw4ICsyNDEsNiBAQCBzZXQoV2ViQ29yZV9OT05fU1ZHX0lETF9GSUxF
UwogICAgIE1vZHVsZXMvbWVkaWFzdHJlYW0vTmF2aWdhdG9yTWVkaWFEZXZpY2VzLmlkbAogICAg
IE1vZHVsZXMvbWVkaWFzdHJlYW0vTmF2aWdhdG9yVXNlck1lZGlhLmlkbAogICAgIE1vZHVsZXMv
bWVkaWFzdHJlYW0vTmF2aWdhdG9yVXNlck1lZGlhRXJyb3IuaWRsCi0gICAgTW9kdWxlcy9tZWRp
YXN0cmVhbS9OYXZpZ2F0b3JVc2VyTWVkaWFFcnJvckNhbGxiYWNrLmlkbAotICAgIE1vZHVsZXMv
bWVkaWFzdHJlYW0vTmF2aWdhdG9yVXNlck1lZGlhU3VjY2Vzc0NhbGxiYWNrLmlkbAogICAgIE1v
ZHVsZXMvbWVkaWFzdHJlYW0vUlRDQ29uZmlndXJhdGlvbi5pZGwKICAgICBNb2R1bGVzL21lZGlh
c3RyZWFtL1JUQ0RUTUZTZW5kZXIuaWRsCiAgICAgTW9kdWxlcy9tZWRpYXN0cmVhbS9SVENEVE1G
VG9uZUNoYW5nZUV2ZW50LmlkbApAQCAtMTE5NCw3ICsxMTkyLDYgQEAgc2V0KFdlYkNvcmVfU09V
UkNFUwogICAgIGJpbmRpbmdzL2pzL0pTTXV0YXRpb25DYWxsYmFjay5jcHAKICAgICBiaW5kaW5n
cy9qcy9KU011dGF0aW9uT2JzZXJ2ZXJDdXN0b20uY3BwCiAgICAgYmluZGluZ3MvanMvSlNOYW1l
ZE5vZGVNYXBDdXN0b20uY3BwCi0gICAgYmluZGluZ3MvanMvSlNOYXZpZ2F0b3JDdXN0b20uY3Bw
CiAgICAgYmluZGluZ3MvanMvSlNOb2RlQ3VzdG9tLmNwcAogICAgIGJpbmRpbmdzL2pzL0pTTm9k
ZUZpbHRlckN1c3RvbS5jcHAKICAgICBiaW5kaW5ncy9qcy9KU05vZGVJdGVyYXRvckN1c3RvbS5j
cHAKQEAgLTMzNDYsNiArMzM0Myw3IEBAIHNldChERURJQ0FURURXT1JLRVJHTE9CQUxTQ09QRV9D
T05TVFJVQ1RPUlNfRklMRSAke0RFUklWRURfU09VUkNFU19XRUJDT1JFX0RJUn0vCiBzZXQoSURM
X0FUVFJJQlVURVNfRklMRSAke1dFQkNPUkVfRElSfS9iaW5kaW5ncy9zY3JpcHRzL0lETEF0dHJp
YnV0ZXMudHh0KQogCiBzZXQoV0VCQ09SRV9KU19CVUlMVElOUworICAgICR7V0VCQ09SRV9ESVJ9
L01vZHVsZXMvbWVkaWFzdHJlYW0vTmF2aWdhdG9yVXNlck1lZGlhLmpzCiAgICAgJHtXRUJDT1JF
X0RJUn0vTW9kdWxlcy9zdHJlYW1zL0J5dGVMZW5ndGhRdWV1aW5nU3RyYXRlZ3kuanMKICAgICAk
e1dFQkNPUkVfRElSfS9Nb2R1bGVzL3N0cmVhbXMvQ291bnRRdWV1aW5nU3RyYXRlZ3kuanMKICAg
ICAke1dFQkNPUkVfRElSfS9Nb2R1bGVzL3N0cmVhbXMvUmVhZGFibGVTdHJlYW0uanMKZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJDb3JlL0Rlcml2ZWRTb3VyY2VzLm1ha2UgYi9Tb3VyY2UvV2ViQ29y
ZS9EZXJpdmVkU291cmNlcy5tYWtlCmluZGV4IDQ2NjU0ZjJhZDMxODg5ZGIzNDI1N2JmZDhjOGZh
YzkzZTJkZjA0YjUuLjI5M2MxOWZlNTE0ODA0ZDQ4Njk5NzNkYzcxMTA5MjVhYTBmMTg1MDcgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL0Rlcml2ZWRTb3VyY2VzLm1ha2UKKysrIGIvU291cmNl
L1dlYkNvcmUvRGVyaXZlZFNvdXJjZXMubWFrZQpAQCAtMTM3LDggKzEzNyw2IEBAIE5PTl9TVkdf
QklORElOR19JRExTID0gXAogICAgICQoV2ViQ29yZSkvTW9kdWxlcy9tZWRpYXN0cmVhbS9OYXZp
Z2F0b3JNZWRpYURldmljZXMuaWRsIFwKICAgICAkKFdlYkNvcmUpL01vZHVsZXMvbWVkaWFzdHJl
YW0vTmF2aWdhdG9yVXNlck1lZGlhLmlkbCBcCiAgICAgJChXZWJDb3JlKS9Nb2R1bGVzL21lZGlh
c3RyZWFtL05hdmlnYXRvclVzZXJNZWRpYUVycm9yLmlkbCBcCi0gICAgJChXZWJDb3JlKS9Nb2R1
bGVzL21lZGlhc3RyZWFtL05hdmlnYXRvclVzZXJNZWRpYUVycm9yQ2FsbGJhY2suaWRsIFwKLSAg
ICAkKFdlYkNvcmUpL01vZHVsZXMvbWVkaWFzdHJlYW0vTmF2aWdhdG9yVXNlck1lZGlhU3VjY2Vz
c0NhbGxiYWNrLmlkbCBcCiAgICAgJChXZWJDb3JlKS9Nb2R1bGVzL21lZGlhc3RyZWFtL1JUQ0Nv
bmZpZ3VyYXRpb24uaWRsIFwKICAgICAkKFdlYkNvcmUpL01vZHVsZXMvbWVkaWFzdHJlYW0vUlRD
RFRNRlNlbmRlci5pZGwgXAogICAgICQoV2ViQ29yZSkvTW9kdWxlcy9tZWRpYXN0cmVhbS9SVENE
VE1GVG9uZUNoYW5nZUV2ZW50LmlkbCBcCkBAIC0xMjUyLDYgKzEyNTAsNyBAQCBXZWJSZXBsYXlJ
bnB1dHMuaCA6ICQoSU5QVVRfR0VORVJBVE9SX1NQRUNJRklDQVRJT05TKSAkKElOUFVUX0dFTkVS
QVRPUl9TQ1JJUFRTKQogIyBXZWJDb3JlIEpTIEJ1aWx0aW5zCiAKIFdFQkNPUkVfSlNfQlVJTFRJ
TlMgPSBcCisgICAgJChXZWJDb3JlKS9Nb2R1bGVzL21lZGlhc3RyZWFtL05hdmlnYXRvclVzZXJN
ZWRpYS5qcyBcCiAgICAgJChXZWJDb3JlKS9Nb2R1bGVzL3N0cmVhbXMvQnl0ZUxlbmd0aFF1ZXVp
bmdTdHJhdGVneS5qcyBcCiAgICAgJChXZWJDb3JlKS9Nb2R1bGVzL3N0cmVhbXMvQ291bnRRdWV1
aW5nU3RyYXRlZ3kuanMgXAogICAgICQoV2ViQ29yZSkvTW9kdWxlcy9zdHJlYW1zL1JlYWRhYmxl
U3RyZWFtLmpzIFwKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvbWVkaWFzdHJl
YW0vTmF2aWdhdG9yVXNlck1lZGlhLmlkbCBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvbWVkaWFz
dHJlYW0vTmF2aWdhdG9yVXNlck1lZGlhLmlkbAppbmRleCA0YzY1Y2I3YWUxMmM0M2FhNGIzOTRm
ZjNkM2VmNGM5ZjkxNjVmODY1Li40NmM4OWM1ZTAyMGQ3OTM3ZDlhNTQzMjBjYmI1MzJkNTg2OWMy
MDBhIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL21lZGlhc3RyZWFtL05hdmln
YXRvclVzZXJNZWRpYS5pZGwKKysrIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9tZWRpYXN0cmVh
bS9OYXZpZ2F0b3JVc2VyTWVkaWEuaWRsCkBAIC0yMCw4ICsyMCw2IEBACiBbCiAgICAgQ29uZGl0
aW9uYWw9TUVESUFfU1RSRUFNLAogXSBwYXJ0aWFsIGludGVyZmFjZSBOYXZpZ2F0b3IgewotICAg
IFtDdXN0b20sIFJhaXNlc0V4Y2VwdGlvbl0gdm9pZCB3ZWJraXRHZXRVc2VyTWVkaWEoRGljdGlv
bmFyeSBvcHRpb25zLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgIE5hdmlnYXRvclVzZXJNZWRpYVN1Y2Nlc3NDYWxsYmFjayBzdWNjZXNzQ2FsbGJhY2ss
Ci0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgb3B0aW9u
YWwgTmF2aWdhdG9yVXNlck1lZGlhRXJyb3JDYWxsYmFjayBlcnJvckNhbGxiYWNrKTsKKyAgICBb
SlNCdWlsdGluXSB2b2lkIHdlYmtpdEdldFVzZXJNZWRpYSgpOwogfTsKIApkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYkNvcmUvTW9kdWxlcy9tZWRpYXN0cmVhbS9OYXZpZ2F0b3JVc2VyTWVkaWEuanMg
Yi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL21lZGlhc3RyZWFtL05hdmlnYXRvclVzZXJNZWRpYS5q
cwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwLi44OWQ1ZTAyNWUxMThmMzk2OTkyNzM2YjRkYTkwNDI4YWI1N2Q0ZTkyCi0t
LSAvZGV2L251bGwKKysrIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9tZWRpYXN0cmVhbS9OYXZp
Z2F0b3JVc2VyTWVkaWEuanMKQEAgLTAsMCArMSw0MiBAQAorLyoKKyAqIENvcHlyaWdodCAoQykg
MjAxNSBDYW5vbiBJbmMuCisgKgorICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2Ug
YW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CisgKiBtb2RpZmljYXRpb24sIGFyZSBw
ZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKKyAqIGFyZSBt
ZXQ6CisgKiAxLiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhl
IGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBh
bmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgorICogMi4gUmVkaXN0cmlidXRpb25zIGluIGJp
bmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGlj
ZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBp
biB0aGUKKyAqICAgIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRl
ZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCisgKgorICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURF
RCBCWSBBUFBMRSBJTkMuIGBgQVMgSVMnJyBBTkQgQU5ZCisgKiBFWFBSRVNTIE9SIElNUExJRUQg
V0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFRIRQorICogSU1QTElF
RCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNV
TEFSCisgKiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiAgSU4gTk8gRVZFTlQgU0hBTEwgQVBQTEUg
SU5DLiBPUgorICogQ09OVFJJQlVUT1JTIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJF
Q1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsCisgKiBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwg
REFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sCisgKiBQUk9DVVJFTUVOVCBP
RiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1IKKyAq
IFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9O
IEFOWSBUSEVPUlkKKyAqIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNU
IExJQUJJTElUWSwgT1IgVE9SVAorICogKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lT
RSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFCisgKiBPRiBUSElTIFNPRlRXQVJF
LCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgorICov
CisKK2Z1bmN0aW9uIHdlYmtpdEdldFVzZXJNZWRpYShvcHRpb25zLCBzdWNjZXNzQ2FsbGJhY2ss
IGVycm9yQ2FsbGJhY2spCit7CisgICAgInVzZSBzdHJpY3QiOworCisgICAgaWYgKGFyZ3VtZW50
cy5sZW5ndGggIT0gMykKKyAgICAgICAgdGhyb3cgbmV3IEBUeXBlRXJyb3IoIk5vdCBlbm91Z2gg
YXJndW1lbnRzIik7CisKKyAgICBpZiAob3B0aW9ucyAhPT0gT2JqZWN0KG9wdGlvbnMpKQorICAg
ICAgICB0aHJvdyBuZXcgQFR5cGVFcnJvcigiRmlyc3QgYXJndW1lbnQgbXVzdCBiZSBhbiBvYmpl
Y3QiKTsKKworICAgIGlmICh0eXBlb2Ygc3VjY2Vzc0NhbGxiYWNrICE9PSAiZnVuY3Rpb24iKQor
ICAgICAgICB0aHJvdyBuZXcgQFR5cGVFcnJvcigiU2Vjb25kIGFyZ3VtZW50IG11c3QgYmUgYSBm
dW5jdGlvbiIpOworICAgIGlmICh0eXBlb2YgZXJyb3JDYWxsYmFjayAhPT0gImZ1bmN0aW9uIikK
KyAgICAgICAgdGhyb3cgbmV3IEBUeXBlRXJyb3IoIlRoaXJkIGFyZ3VtZW50IG11c3QgYmUgYSBm
dW5jdGlvbiIpOworCisgICBuYXZpZ2F0b3IubWVkaWFEZXZpY2VzLmdldFVzZXJNZWRpYShvcHRp
b25zKS50aGVuKHN1Y2Nlc3NDYWxsYmFjaywgZXJyb3JDYWxsYmFjayk7Cit9CmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL21lZGlhc3RyZWFtL05hdmlnYXRvclVzZXJNZWRpYUVy
cm9yQ2FsbGJhY2suaCBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvbWVkaWFzdHJlYW0vTmF2aWdh
dG9yVXNlck1lZGlhRXJyb3JDYWxsYmFjay5oCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRl
eCBkZDNjOGIzMmI2ZWM3YzgwNjFkNjI0MjExM2U5ZDA4NjQxZjVhYTA5Li4wMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwCi0tLSBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMv
bWVkaWFzdHJlYW0vTmF2aWdhdG9yVXNlck1lZGlhRXJyb3JDYWxsYmFjay5oCisrKyAvZGV2L251
bGwKQEAgLTEsNDUgKzAsMCBAQAotLyoKLSAqIENvcHlyaWdodCAoQykgMjAxMSBHb29nbGUgSW5j
LiBBbGwgcmlnaHRzIHJlc2VydmVkLgotICoKLSAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4g
c291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAotICogbW9kaWZpY2F0aW9u
LCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCi0g
KiBhcmUgbWV0OgotICogMS4gIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJl
dGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0Ci0gKiAgICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29u
ZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgotICogMi4gIFJlZGlzdHJpYnV0
aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0Ci0g
KiAgICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBk
aXNjbGFpbWVyIGluIHRoZQotICogICAgIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVy
aWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCi0gKgotICogVEhJUyBTT0ZUV0FS
RSBJUyBQUk9WSURFRCBCWSBBUFBMRSBJTkMuIEFORCBJVFMgQ09OVFJJQlVUT1JTIGBgQVMgSVMn
JyBBTkQgQU5ZCi0gKiBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBC
VVQgTk9UIExJTUlURUQgVE8sIFRIRSBJTVBMSUVECi0gKiBXQVJSQU5USUVTIE9GIE1FUkNIQU5U
QUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UgQVJFCi0gKiBESVND
TEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBBUFBMRSBJTkMuIE9SIElUUyBDT05UUklCVVRPUlMg
QkUgTElBQkxFIEZPUiBBTlkKLSAqIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJ
QUwsIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTCi0gKiAoSU5DTFVESU5HLCBC
VVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VS
VklDRVM7Ci0gKiBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5U
RVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04KLSAqIEFOWSBUSEVPUlkgT0YgTElBQklM
SVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUCi0gKiAo
SU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VU
IE9GIFRIRSBVU0UgT0YgVEhJUwotICogU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUg
UE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCi0gKi8KLQotI2lmbmRlZiBOYXZpZ2F0b3JVc2Vy
TWVkaWFFcnJvckNhbGxiYWNrX2gKLSNkZWZpbmUgTmF2aWdhdG9yVXNlck1lZGlhRXJyb3JDYWxs
YmFja19oCi0KLSNpZiBFTkFCTEUoTUVESUFfU1RSRUFNKQotCi0jaW5jbHVkZSAiTmF2aWdhdG9y
VXNlck1lZGlhRXJyb3IuaCIKLSNpbmNsdWRlIDx3dGYvUmVmQ291bnRlZC5oPgotCi1uYW1lc3Bh
Y2UgV2ViQ29yZSB7Ci0KLWNsYXNzIE5hdmlnYXRvclVzZXJNZWRpYUVycm9yQ2FsbGJhY2sgOiBw
dWJsaWMgUmVmQ291bnRlZDxOYXZpZ2F0b3JVc2VyTWVkaWFFcnJvckNhbGxiYWNrPiB7Ci1wdWJs
aWM6Ci0gICAgdmlydHVhbCB+TmF2aWdhdG9yVXNlck1lZGlhRXJyb3JDYWxsYmFjaygpIHsgfQot
ICAgIHZpcnR1YWwgYm9vbCBoYW5kbGVFdmVudChOYXZpZ2F0b3JVc2VyTWVkaWFFcnJvciopID0g
MDsKLX07Ci0KLX0gLy8gbmFtZXNwYWNlIFdlYkNvcmUKLQotI2VuZGlmIC8vIEVOQUJMRShNRURJ
QV9TVFJFQU0pCi0KLSNlbmRpZiAvLyBOYXZpZ2F0b3JVc2VyTWVkaWFFcnJvckNhbGxiYWNrX2gK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvbWVkaWFzdHJlYW0vTmF2aWdhdG9y
VXNlck1lZGlhRXJyb3JDYWxsYmFjay5pZGwgYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL21lZGlh
c3RyZWFtL05hdmlnYXRvclVzZXJNZWRpYUVycm9yQ2FsbGJhY2suaWRsCmRlbGV0ZWQgZmlsZSBt
b2RlIDEwMDY0NAppbmRleCBmMGFjN2RkMWJmOWEzZmUyZDJmY2YyMDEzZDY2MDQ3Y2VmM2M2ZmQx
Li4wMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwCi0tLSBhL1NvdXJjZS9X
ZWJDb3JlL01vZHVsZXMvbWVkaWFzdHJlYW0vTmF2aWdhdG9yVXNlck1lZGlhRXJyb3JDYWxsYmFj
ay5pZGwKKysrIC9kZXYvbnVsbApAQCAtMSwzMSArMCwwIEBACi0vKgotICogQ29weXJpZ2h0IChD
KSAyMDExIEdvb2dsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi0gKgotICogUmVkaXN0cmli
dXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0
Ci0gKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93
aW5nIGNvbmRpdGlvbnMKLSAqIGFyZSBtZXQ6Ci0gKiAxLiAgUmVkaXN0cmlidXRpb25zIG9mIHNv
dXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKLSAqICAgICBub3RpY2Us
IHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCi0g
KiAyLiAgUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBh
Ym92ZSBjb3B5cmlnaHQKLSAqICAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFu
ZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCi0gKiAgICAgZG9jdW1lbnRhdGlvbiBh
bmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KLSAq
Ci0gKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIEFQUExFIElOQy4gQU5EIElUUyBDT05U
UklCVVRPUlMgYGBBUyBJUycnIEFORCBBTlkKLSAqIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5U
SUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgVEhFIElNUExJRUQKLSAqIFdBUlJB
TlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVS
UE9TRSBBUkUKLSAqIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIEFQUExFIElOQy4gT1Ig
SVRTIENPTlRSSUJVVE9SUyBCRSBMSUFCTEUgRk9SIEFOWQotICogRElSRUNULCBJTkRJUkVDVCwg
SU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMK
LSAqIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YgU1VCU1RJ
VFVURSBHT09EUyBPUiBTRVJWSUNFUzsKLSAqIExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRT
OyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTgotICogQU5Z
IFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJ
VFksIE9SIFRPUlQKLSAqIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJ
TkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRSBPRiBUSElTCi0gKiBTT0ZUV0FSRSwgRVZFTiBJ
RiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KLSAqLwotCi1bCi0g
ICAgQ29uZGl0aW9uYWw9TUVESUFfU1RSRUFNLAotICAgIENhbGxiYWNrPUZ1bmN0aW9uT25seSwK
LV0gY2FsbGJhY2sgaW50ZXJmYWNlIE5hdmlnYXRvclVzZXJNZWRpYUVycm9yQ2FsbGJhY2sgewot
ICAgIGJvb2xlYW4gaGFuZGxlRXZlbnQoTmF2aWdhdG9yVXNlck1lZGlhRXJyb3IgZXJyb3IpOwot
fTsKLQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9tZWRpYXN0cmVhbS9OYXZp
Z2F0b3JVc2VyTWVkaWFTdWNjZXNzQ2FsbGJhY2suaCBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMv
bWVkaWFzdHJlYW0vTmF2aWdhdG9yVXNlck1lZGlhU3VjY2Vzc0NhbGxiYWNrLmgKZGVsZXRlZCBm
aWxlIG1vZGUgMTAwNjQ0CmluZGV4IDlmNDU2ZWFkYzZhZTQ5NDE4NmNmMDdjNmUyYTUyZTA0NzYz
Zjk5OTAuLjAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAKLS0tIGEvU291
cmNlL1dlYkNvcmUvTW9kdWxlcy9tZWRpYXN0cmVhbS9OYXZpZ2F0b3JVc2VyTWVkaWFTdWNjZXNz
Q2FsbGJhY2suaAorKysgL2Rldi9udWxsCkBAIC0xLDQ2ICswLDAgQEAKLS8qCi0gKiBDb3B5cmln
aHQgKEMpIDIwMTEgR29vZ2xlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KLSAqCi0gKiBSZWRp
c3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdp
dGhvdXQKLSAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBm
b2xsb3dpbmcgY29uZGl0aW9ucwotICogYXJlIG1ldDoKLSAqIDEuICBSZWRpc3RyaWJ1dGlvbnMg
b2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAotICogICAgIG5v
dGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1l
ci4KLSAqIDIuICBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2Ug
dGhlIGFib3ZlIGNvcHlyaWdodAotICogICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlv
bnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKLSAqICAgICBkb2N1bWVudGF0
aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9u
LgotICoKLSAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgQVBQTEUgSU5DLiBBTkQgSVRT
IENPTlRSSUJVVE9SUyBgYEFTIElTJycgQU5EIEFOWQotICogRVhQUkVTUyBPUiBJTVBMSUVEIFdB
UlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBUSEUgSU1QTElFRAotICog
V0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxB
UiBQVVJQT1NFIEFSRQotICogRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgQVBQTEUgSU5D
LiBPUiBJVFMgQ09OVFJJQlVUT1JTIEJFIExJQUJMRSBGT1IgQU5ZCi0gKiBESVJFQ1QsIElORElS
RUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwgREFN
QUdFUwotICogKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRiBT
VUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOwotICogTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBS
T0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OCi0g
KiBBTlkgVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJ
QUJJTElUWSwgT1IgVE9SVAotICogKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkg
QVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFIE9GIFRISVMKLSAqIFNPRlRXQVJFLCBF
VkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgotICovCi0K
LSNpZm5kZWYgTmF2aWdhdG9yVXNlck1lZGlhU3VjY2Vzc0NhbGxiYWNrX2gKLSNkZWZpbmUgTmF2
aWdhdG9yVXNlck1lZGlhU3VjY2Vzc0NhbGxiYWNrX2gKLQotI2lmIEVOQUJMRShNRURJQV9TVFJF
QU0pCi0KLSNpbmNsdWRlIDx3dGYvUmVmQ291bnRlZC5oPgotCi1uYW1lc3BhY2UgV2ViQ29yZSB7
Ci0KLWNsYXNzIE1lZGlhU3RyZWFtOwotCi1jbGFzcyBOYXZpZ2F0b3JVc2VyTWVkaWFTdWNjZXNz
Q2FsbGJhY2sgOiBwdWJsaWMgUmVmQ291bnRlZDxOYXZpZ2F0b3JVc2VyTWVkaWFTdWNjZXNzQ2Fs
bGJhY2s+IHsKLXB1YmxpYzoKLSAgICB2aXJ0dWFsIH5OYXZpZ2F0b3JVc2VyTWVkaWFTdWNjZXNz
Q2FsbGJhY2soKSB7IH0KLSAgICB2aXJ0dWFsIGJvb2wgaGFuZGxlRXZlbnQoTWVkaWFTdHJlYW0q
KSA9IDA7Ci19OwotCi19IC8vIG5hbWVzcGFjZSBXZWJDb3JlCi0KLSNlbmRpZiAvLyBFTkFCTEUo
TUVESUFfU1RSRUFNKQotCi0jZW5kaWYgLy8gTmF2aWdhdG9yVXNlck1lZGlhU3VjY2Vzc0NhbGxi
YWNrX2gKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvbWVkaWFzdHJlYW0vTmF2
aWdhdG9yVXNlck1lZGlhU3VjY2Vzc0NhbGxiYWNrLmlkbCBiL1NvdXJjZS9XZWJDb3JlL01vZHVs
ZXMvbWVkaWFzdHJlYW0vTmF2aWdhdG9yVXNlck1lZGlhU3VjY2Vzc0NhbGxiYWNrLmlkbApkZWxl
dGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMmQxOTBjZjJlYjE5MjIwOTU4YThjZThiY2JmNzhk
MzQ0Y2ZkMmU1MC4uMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMAotLS0g
YS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL21lZGlhc3RyZWFtL05hdmlnYXRvclVzZXJNZWRpYVN1
Y2Nlc3NDYWxsYmFjay5pZGwKKysrIC9kZXYvbnVsbApAQCAtMSwzMSArMCwwIEBACi0vKgotICog
Q29weXJpZ2h0IChDKSAyMDExIEdvb2dsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi0gKgot
ICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0
aCBvciB3aXRob3V0Ci0gKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhh
dCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKLSAqIGFyZSBtZXQ6Ci0gKiAxLiAgUmVkaXN0cmli
dXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKLSAq
ICAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRp
c2NsYWltZXIuCi0gKiAyLiAgUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVw
cm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKLSAqICAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBj
b25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCi0gKiAgICAgZG9j
dW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3Ry
aWJ1dGlvbi4KLSAqCi0gKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIEFQUExFIElOQy4g
QU5EIElUUyBDT05UUklCVVRPUlMgYGBBUyBJUycnIEFORCBBTlkKLSAqIEVYUFJFU1MgT1IgSU1Q
TElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgVEhFIElNUExJ
RUQKLSAqIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBB
UlRJQ1VMQVIgUFVSUE9TRSBBUkUKLSAqIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIEFQ
UExFIElOQy4gT1IgSVRTIENPTlRSSUJVVE9SUyBCRSBMSUFCTEUgRk9SIEFOWQotICogRElSRUNU
LCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5U
SUFMIERBTUFHRVMKLSAqIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1F
TlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsKLSAqIExPU1MgT0YgVVNFLCBEQVRB
LCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFO
RCBPTgotICogQU5ZIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNU
UklDVCBMSUFCSUxJVFksIE9SIFRPUlQKLSAqIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhF
UldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRSBPRiBUSElTCi0gKiBTT0ZU
V0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4K
LSAqLwotCi1bCi0gICAgQ29uZGl0aW9uYWw9TUVESUFfU1RSRUFNLAotICAgIENhbGxiYWNrPUZ1
bmN0aW9uT25seSwKLV0gY2FsbGJhY2sgaW50ZXJmYWNlIE5hdmlnYXRvclVzZXJNZWRpYVN1Y2Nl
c3NDYWxsYmFjayB7Ci0gICAgYm9vbGVhbiBoYW5kbGVFdmVudChNZWRpYVN0cmVhbSBzdHJlYW0p
OwotfTsKLQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9tZWRpYXN0cmVhbS9V
c2VyTWVkaWFSZXF1ZXN0LmNwcCBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvbWVkaWFzdHJlYW0v
VXNlck1lZGlhUmVxdWVzdC5jcHAKaW5kZXggYzNmMzM4MGZhYmJmYmUxNWMzMTYyZjNiNzNkNzQ2
YmVhYTY3N2ZhMy4uZDNmYzNiZmFhN2UyOWE4YTMxZDc3MTM5Y2FjYjc5Y2RhNDNlODcxNyAxMDA2
NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9tZWRpYXN0cmVhbS9Vc2VyTWVkaWFSZXF1
ZXN0LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL21lZGlhc3RyZWFtL1VzZXJNZWRp
YVJlcXVlc3QuY3BwCkBAIC00Nyw4ICs0Nyw2IEBACiAjaW5jbHVkZSAiTWVkaWFDb25zdHJhaW50
c0ltcGwuaCIKICNpbmNsdWRlICJNZWRpYVN0cmVhbS5oIgogI2luY2x1ZGUgIk1lZGlhU3RyZWFt
UHJpdmF0ZS5oIgotI2luY2x1ZGUgIk5hdmlnYXRvclVzZXJNZWRpYUVycm9yQ2FsbGJhY2suaCIK
LSNpbmNsdWRlICJOYXZpZ2F0b3JVc2VyTWVkaWFTdWNjZXNzQ2FsbGJhY2suaCIKICNpbmNsdWRl
ICJSZWFsdGltZU1lZGlhU291cmNlQ2VudGVyLmgiCiAjaW5jbHVkZSAiU2VjdXJpdHlPcmlnaW4u
aCIKICNpbmNsdWRlICJVc2VyTWVkaWFDb250cm9sbGVyLmgiCmRpZmYgLS1naXQgYS9Tb3VyY2Uv
V2ViQ29yZS9Nb2R1bGVzL21lZGlhc3RyZWFtL1VzZXJNZWRpYVJlcXVlc3QuaCBiL1NvdXJjZS9X
ZWJDb3JlL01vZHVsZXMvbWVkaWFzdHJlYW0vVXNlck1lZGlhUmVxdWVzdC5oCmluZGV4IGRkMjAx
MTNjYWM1NWQ3MTRlM2RjMjUzNTE0YWI0MDNlNzI2MzgyMTYuLmVjZWE1OWE2Y2E2Y2U3YjM0MWNk
YzA3NDcxYWFmMjQ5ZTJiZTUxNjcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMv
bWVkaWFzdHJlYW0vVXNlck1lZGlhUmVxdWVzdC5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL01vZHVs
ZXMvbWVkaWFzdHJlYW0vVXNlck1lZGlhUmVxdWVzdC5oCkBAIC00OSw4ICs0OSw2IEBAIGNsYXNz
IERvY3VtZW50OwogY2xhc3MgRnJhbWU7CiBjbGFzcyBNZWRpYUNvbnN0cmFpbnRzOwogY2xhc3Mg
TWVkaWFTdHJlYW1Qcml2YXRlOwotY2xhc3MgTmF2aWdhdG9yVXNlck1lZGlhRXJyb3JDYWxsYmFj
azsKLWNsYXNzIE5hdmlnYXRvclVzZXJNZWRpYVN1Y2Nlc3NDYWxsYmFjazsKIGNsYXNzIFVzZXJN
ZWRpYUNvbnRyb2xsZXI7CiBjbGFzcyBTZWN1cml0eU9yaWdpbjsKIApkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYkNvcmUvV2ViQ29yZS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qIGIvU291cmNlL1dl
YkNvcmUvV2ViQ29yZS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qCmluZGV4IDQ4ZDVkMGY0ZmU4
MGMyMjk4ZDI3NGY3ODI3MTVmOTQ2MWZmNGQ0MDguLjc3YTFmYzk5MmRmZGQxOTU3ODcwZWE2NWVl
ZTI0YjczYTYwNTJjM2UgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUueGNvZGVw
cm9qL3Byb2plY3QucGJ4cHJvagorKysgYi9Tb3VyY2UvV2ViQ29yZS9XZWJDb3JlLnhjb2RlcHJv
ai9wcm9qZWN0LnBieHByb2oKQEAgLTE1Myw3ICsxNTMsNiBAQAogCQkwNzM3OTRFMjE5RUUyRDFC
MDBFNUEwNDUgLyogTWVkaWFDb25zdHJhaW50c01vY2suaCBpbiBIZWFkZXJzICovID0ge2lzYSA9
IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDA3Mzc5NEUwMTlFRTJEMUIwMEU1QTA0NSAvKiBNZWRp
YUNvbnN0cmFpbnRzTW9jay5oICovOyB9OwogCQkwNzM3OTRFNTE5RUUyRkYyMDBFNUEwNDUgLyog
SlNSVENDb25maWd1cmF0aW9uLmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmls
ZTsgZmlsZVJlZiA9IDA3Mzc5NEUzMTlFRTJGRjIwMEU1QTA0NSAvKiBKU1JUQ0NvbmZpZ3VyYXRp
b24uY3BwICovOyB9OwogCQkwNzM3OTRFNjE5RUUyRkYyMDBFNUEwNDUgLyogSlNSVENDb25maWd1
cmF0aW9uLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAw
NzM3OTRFNDE5RUUyRkYyMDBFNUEwNDUgLyogSlNSVENDb25maWd1cmF0aW9uLmggKi87IH07Ci0J
CTA3Mzc5NEU4MTlFRTMzNUMwMEU1QTA0NSAvKiBKU05hdmlnYXRvckN1c3RvbS5jcHAgaW4gU291
cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAwNzM3OTRFNzE5RUUzMzVD
MDBFNUEwNDUgLyogSlNOYXZpZ2F0b3JDdXN0b20uY3BwICovOyB9OwogCQkwNzM3OTRFQjE5RUUz
NDFFMDBFNUEwNDUgLyogSlNSVENJY2VTZXJ2ZXIuY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0g
UEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMDczNzk0RTkxOUVFMzQxRTAwRTVBMDQ1IC8qIEpTUlRD
SWNlU2VydmVyLmNwcCAqLzsgfTsKIAkJMDczNzk0RUMxOUVFMzQxRTAwRTVBMDQ1IC8qIEpTUlRD
SWNlU2VydmVyLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYg
PSAwNzM3OTRFQTE5RUUzNDFFMDBFNUEwNDUgLyogSlNSVENJY2VTZXJ2ZXIuaCAqLzsgfTsKIAkJ
MDczNzk0RjExOUVFMzdCQjAwRTVBMDQ1IC8qIFJUQ1BlZXJDb25uZWN0aW9uSGFuZGxlck1vY2su
Y3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMDczNzk0
RUYxOUVFMzdCQjAwRTVBMDQ1IC8qIFJUQ1BlZXJDb25uZWN0aW9uSGFuZGxlck1vY2suY3BwICov
OyB9OwpAQCAtMTczLDEwICsxNzIsNiBAQAogCQkwNzNCRTM0MTE3RDE3RTAxMDAyQkQ0MzEgLyog
SlNOYXZpZ2F0b3JVc2VyTWVkaWEuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmls
ZTsgZmlsZVJlZiA9IDA3M0JFMzNGMTdEMTdFMDEwMDJCRDQzMSAvKiBKU05hdmlnYXRvclVzZXJN
ZWRpYS5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CiAJ
CTA3M0JFMzQ4MTdEMTdFN0EwMDJCRDQzMSAvKiBKU05hdmlnYXRvclVzZXJNZWRpYUVycm9yLmNw
cCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDA3M0JFMzQy
MTdEMTdFN0EwMDJCRDQzMSAvKiBKU05hdmlnYXRvclVzZXJNZWRpYUVycm9yLmNwcCAqLzsgfTsK
IAkJMDczQkUzNDkxN0QxN0U3QTAwMkJENDMxIC8qIEpTTmF2aWdhdG9yVXNlck1lZGlhRXJyb3Iu
aCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDA3M0JFMzQz
MTdEMTdFN0EwMDJCRDQzMSAvKiBKU05hdmlnYXRvclVzZXJNZWRpYUVycm9yLmggKi87IH07Ci0J
CTA3M0JFMzRBMTdEMTdFN0EwMDJCRDQzMSAvKiBKU05hdmlnYXRvclVzZXJNZWRpYUVycm9yQ2Fs
bGJhY2suY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0g
MDczQkUzNDQxN0QxN0U3QTAwMkJENDMxIC8qIEpTTmF2aWdhdG9yVXNlck1lZGlhRXJyb3JDYWxs
YmFjay5jcHAgKi87IH07Ci0JCTA3M0JFMzRCMTdEMTdFN0EwMDJCRDQzMSAvKiBKU05hdmlnYXRv
clVzZXJNZWRpYUVycm9yQ2FsbGJhY2suaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxk
RmlsZTsgZmlsZVJlZiA9IDA3M0JFMzQ1MTdEMTdFN0EwMDJCRDQzMSAvKiBKU05hdmlnYXRvclVz
ZXJNZWRpYUVycm9yQ2FsbGJhY2suaCAqLzsgfTsKLQkJMDczQkUzNEMxN0QxN0U3QTAwMkJENDMx
IC8qIEpTTmF2aWdhdG9yVXNlck1lZGlhU3VjY2Vzc0NhbGxiYWNrLmNwcCBpbiBTb3VyY2VzICov
ID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDA3M0JFMzQ2MTdEMTdFN0EwMDJCRDQz
MSAvKiBKU05hdmlnYXRvclVzZXJNZWRpYVN1Y2Nlc3NDYWxsYmFjay5jcHAgKi87IH07Ci0JCTA3
M0JFMzREMTdEMTdFN0EwMDJCRDQzMSAvKiBKU05hdmlnYXRvclVzZXJNZWRpYVN1Y2Nlc3NDYWxs
YmFjay5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMDcz
QkUzNDcxN0QxN0U3QTAwMkJENDMxIC8qIEpTTmF2aWdhdG9yVXNlck1lZGlhU3VjY2Vzc0NhbGxi
YWNrLmggKi87IH07CiAJCTA3M0JFMzRFMTdEMTgwQjIwMDJCRDQzMSAvKiBSVENTZXNzaW9uRGVz
Y3JpcHRpb25EZXNjcmlwdG9yLmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmls
ZTsgZmlsZVJlZiA9IDA3MjIxQkFCMTdDRjBBRDQwMDg0OEU1MSAvKiBSVENTZXNzaW9uRGVzY3Jp
cHRpb25EZXNjcmlwdG9yLmNwcCAqLzsgfTsKIAkJMDczQkUzNEYxN0QxODE4MzAwMkJENDMxIC8q
IFJUQ0ljZUNhbmRpZGF0ZURlc2NyaXB0b3IuY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJY
QnVpbGRGaWxlOyBmaWxlUmVmID0gMDcyMjFCQTYxN0NGMEFENDAwODQ4RTUxIC8qIFJUQ0ljZUNh
bmRpZGF0ZURlc2NyaXB0b3IuY3BwICovOyB9OwogCQkwNzNCRTM1MDE3RDE4MUE2MDAyQkQ0MzEg
LyogUlRDUGVlckNvbm5lY3Rpb25IYW5kbGVyLmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBC
WEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDA3MjIxQkE4MTdDRjBBRDQwMDg0OEU1MSAvKiBSVENQZWVy
Q29ubmVjdGlvbkhhbmRsZXIuY3BwICovOyB9OwpAQCAtMjQwLDggKzIzNSw2IEBACiAJCTA3OEUw
OTE4MTdEMTREMUMwMDQyMEFBMSAvKiBNZWRpYVN0cmVhbVRyYWNrLmggaW4gSGVhZGVycyAqLyA9
IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAwNzIyMUI1NTE3Q0VDMzI3MDA4NDhFNTEg
LyogTWVkaWFTdHJlYW1UcmFjay5oICovOyB9OwogCQkwNzhFMDkxOTE3RDE0RDFDMDA0MjBBQTEg
LyogTWVkaWFTdHJlYW1UcmFja0V2ZW50LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWls
ZEZpbGU7IGZpbGVSZWYgPSAwNzIyMUI1ODE3Q0VDMzI3MDA4NDhFNTEgLyogTWVkaWFTdHJlYW1U
cmFja0V2ZW50LmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsg
fTsKIAkJMDc4RTA5MUIxN0QxNEQxQzAwNDIwQUExIC8qIE5hdmlnYXRvclVzZXJNZWRpYUVycm9y
LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAwNzIyMUI1
RDE3Q0VDMzI3MDA4NDhFNTEgLyogTmF2aWdhdG9yVXNlck1lZGlhRXJyb3IuaCAqLzsgc2V0dGlu
Z3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OwotCQkwNzhFMDkxQzE3RDE0RDFD
MDA0MjBBQTEgLyogTmF2aWdhdG9yVXNlck1lZGlhRXJyb3JDYWxsYmFjay5oIGluIEhlYWRlcnMg
Ki8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMDcyMjFCNUYxN0NFQzMyNzAwODQ4
RTUxIC8qIE5hdmlnYXRvclVzZXJNZWRpYUVycm9yQ2FsbGJhY2suaCAqLzsgc2V0dGluZ3MgPSB7
QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OwotCQkwNzhFMDkxRDE3RDE0RDFDMDA0MjBB
QTEgLyogTmF2aWdhdG9yVXNlck1lZGlhU3VjY2Vzc0NhbGxiYWNrLmggaW4gSGVhZGVycyAqLyA9
IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAwNzIyMUI2MTE3Q0VDMzI3MDA4NDhFNTEg
LyogTmF2aWdhdG9yVXNlck1lZGlhU3VjY2Vzc0NhbGxiYWNrLmggKi87IHNldHRpbmdzID0ge0FU
VFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKIAkJMDc4RTA5MUUxN0QxNEQxQzAwNDIwQUEx
IC8qIFJUQ0RhdGFDaGFubmVsLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7
IGZpbGVSZWYgPSAwNzIyMUI2NDE3Q0VDMzI3MDA4NDhFNTEgLyogUlRDRGF0YUNoYW5uZWwuaCAq
Lzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OwogCQkwNzhFMDkx
RjE3RDE0RDFDMDA0MjBBQTEgLyogUlRDRGF0YUNoYW5uZWxFdmVudC5oIGluIEhlYWRlcnMgKi8g
PSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMDcyMjFCNjcxN0NFQzMyNzAwODQ4RTUx
IC8qIFJUQ0RhdGFDaGFubmVsRXZlbnQuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQ
cml2YXRlLCApOyB9OyB9OwogCQkwNzhFMDkyMDE3RDE0RDFDMDA0MjBBQTEgLyogUlRDRFRNRlNl
bmRlci5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMDcy
MjFCNkExN0NFQzMyNzAwODQ4RTUxIC8qIFJUQ0RUTUZTZW5kZXIuaCAqLzsgc2V0dGluZ3MgPSB7
QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OwpAQCAtNzMwOCwxMCArNzMwMSw2IEBACiAJ
CTA3MjIxQjVDMTdDRUMzMjcwMDg0OEU1MSAvKiBOYXZpZ2F0b3JVc2VyTWVkaWEuaWRsICovID0g
e2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVU
eXBlID0gdGV4dDsgcGF0aCA9IE5hdmlnYXRvclVzZXJNZWRpYS5pZGw7IHNvdXJjZVRyZWUgPSAi
PGdyb3VwPiI7IH07CiAJCTA3MjIxQjVEMTdDRUMzMjcwMDg0OEU1MSAvKiBOYXZpZ2F0b3JVc2Vy
TWVkaWFFcnJvci5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9
IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBOYXZpZ2F0b3JV
c2VyTWVkaWFFcnJvci5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQkwNzIyMUI1RTE3
Q0VDMzI3MDA4NDhFNTEgLyogTmF2aWdhdG9yVXNlck1lZGlhRXJyb3IuaWRsICovID0ge2lzYSA9
IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0g
dGV4dDsgcGF0aCA9IE5hdmlnYXRvclVzZXJNZWRpYUVycm9yLmlkbDsgc291cmNlVHJlZSA9ICI8
Z3JvdXA+IjsgfTsKLQkJMDcyMjFCNUYxN0NFQzMyNzAwODQ4RTUxIC8qIE5hdmlnYXRvclVzZXJN
ZWRpYUVycm9yQ2FsbGJhY2suaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5j
b2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gTmF2
aWdhdG9yVXNlck1lZGlhRXJyb3JDYWxsYmFjay5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9
OwotCQkwNzIyMUI2MDE3Q0VDMzI3MDA4NDhFNTEgLyogTmF2aWdhdG9yVXNlck1lZGlhRXJyb3JD
YWxsYmFjay5pZGwgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0g
NDsgbGFzdEtub3duRmlsZVR5cGUgPSB0ZXh0OyBwYXRoID0gTmF2aWdhdG9yVXNlck1lZGlhRXJy
b3JDYWxsYmFjay5pZGw7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07Ci0JCTA3MjIxQjYxMTdD
RUMzMjcwMDg0OEU1MSAvKiBOYXZpZ2F0b3JVc2VyTWVkaWFTdWNjZXNzQ2FsbGJhY2suaCAqLyA9
IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxl
VHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gTmF2aWdhdG9yVXNlck1lZGlhU3VjY2Vzc0Nh
bGxiYWNrLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07Ci0JCTA3MjIxQjYyMTdDRUMzMjcw
MDg0OEU1MSAvKiBOYXZpZ2F0b3JVc2VyTWVkaWFTdWNjZXNzQ2FsbGJhY2suaWRsICovID0ge2lz
YSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBl
ID0gdGV4dDsgcGF0aCA9IE5hdmlnYXRvclVzZXJNZWRpYVN1Y2Nlc3NDYWxsYmFjay5pZGw7IHNv
dXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTA3MjIxQjYzMTdDRUMzMjcwMDg0OEU1MSAvKiBS
VENEYXRhQ2hhbm5lbC5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29k
aW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBS
VENEYXRhQ2hhbm5lbC5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTA3MjIxQjY0
MTdDRUMzMjcwMDg0OEU1MSAvKiBSVENEYXRhQ2hhbm5lbC5oICovID0ge2lzYSA9IFBCWEZpbGVS
ZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29k
ZS5jLmg7IHBhdGggPSBSVENEYXRhQ2hhbm5lbC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9
OwogCQkwNzIyMUI2NTE3Q0VDMzI3MDA4NDhFNTEgLyogUlRDRGF0YUNoYW5uZWwuaWRsICovID0g
e2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVU
eXBlID0gdGV4dDsgcGF0aCA9IFJUQ0RhdGFDaGFubmVsLmlkbDsgc291cmNlVHJlZSA9ICI8Z3Jv
dXA+IjsgfTsKQEAgLTc0MDEsNyArNzM5MCw2IEBACiAJCTA3Mzc5NEUwMTlFRTJEMUIwMEU1QTA0
NSAvKiBNZWRpYUNvbnN0cmFpbnRzTW9jay5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7
IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBh
dGggPSBNZWRpYUNvbnN0cmFpbnRzTW9jay5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9Owog
CQkwNzM3OTRFMzE5RUUyRkYyMDBFNUEwNDUgLyogSlNSVENDb25maWd1cmF0aW9uLmNwcCAqLyA9
IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxl
VHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEpTUlRDQ29uZmlndXJhdGlvbi5jcHA7
IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTA3Mzc5NEU0MTlFRTJGRjIwMEU1QTA0NSAv
KiBKU1JUQ0NvbmZpZ3VyYXRpb24uaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxl
RW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0g
SlNSVENDb25maWd1cmF0aW9uLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07Ci0JCTA3Mzc5
NEU3MTlFRTMzNUMwMEU1QTA0NSAvKiBKU05hdmlnYXRvckN1c3RvbS5jcHAgKi8gPSB7aXNhID0g
UEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBz
b3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBKU05hdmlnYXRvckN1c3RvbS5jcHA7IHNvdXJjZVRy
ZWUgPSAiPGdyb3VwPiI7IH07CiAJCTA3Mzc5NEU5MTlFRTM0MUUwMEU1QTA0NSAvKiBKU1JUQ0lj
ZVNlcnZlci5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0g
NDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBKU1JUQ0lj
ZVNlcnZlci5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTA3Mzc5NEVBMTlFRTM0
MUUwMEU1QTA0NSAvKiBKU1JUQ0ljZVNlcnZlci5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVu
Y2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7
IHBhdGggPSBKU1JUQ0ljZVNlcnZlci5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQkw
NzM3OTRFRDE5RUUzNjQyMDBFNUEwNDUgLyogRE9NVVJMTWVkaWFTdHJlYW0uY3BwICovID0ge2lz
YSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBl
ID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gRE9NVVJMTWVkaWFTdHJlYW0uY3BwOyBzb3Vy
Y2VUcmVlID0gIjxncm91cD4iOyB9OwpAQCAtNzQyMywxMCArNzQxMSw2IEBACiAJCTA3M0JFMzNG
MTdEMTdFMDEwMDJCRDQzMSAvKiBKU05hdmlnYXRvclVzZXJNZWRpYS5oICovID0ge2lzYSA9IFBC
WEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291
cmNlY29kZS5jLmg7IHBhdGggPSBKU05hdmlnYXRvclVzZXJNZWRpYS5oOyBzb3VyY2VUcmVlID0g
Ijxncm91cD4iOyB9OwogCQkwNzNCRTM0MjE3RDE3RTdBMDAyQkQ0MzEgLyogSlNOYXZpZ2F0b3JV
c2VyTWVkaWFFcnJvci5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29k
aW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBK
U05hdmlnYXRvclVzZXJNZWRpYUVycm9yLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsK
IAkJMDczQkUzNDMxN0QxN0U3QTAwMkJENDMxIC8qIEpTTmF2aWdhdG9yVXNlck1lZGlhRXJyb3Iu
aCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25v
d25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gSlNOYXZpZ2F0b3JVc2VyTWVkaWFF
cnJvci5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwotCQkwNzNCRTM0NDE3RDE3RTdBMDAy
QkQ0MzEgLyogSlNOYXZpZ2F0b3JVc2VyTWVkaWFFcnJvckNhbGxiYWNrLmNwcCAqLyA9IHtpc2Eg
PSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9
IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEpTTmF2aWdhdG9yVXNlck1lZGlhRXJyb3JDYWxs
YmFjay5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07Ci0JCTA3M0JFMzQ1MTdEMTdFN0Ew
MDJCRDQzMSAvKiBKU05hdmlnYXRvclVzZXJNZWRpYUVycm9yQ2FsbGJhY2suaCAqLyA9IHtpc2Eg
PSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9
IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gSlNOYXZpZ2F0b3JVc2VyTWVkaWFFcnJvckNhbGxiYWNr
Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07Ci0JCTA3M0JFMzQ2MTdEMTdFN0EwMDJCRDQz
MSAvKiBKU05hdmlnYXRvclVzZXJNZWRpYVN1Y2Nlc3NDYWxsYmFjay5jcHAgKi8gPSB7aXNhID0g
UEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBz
b3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBKU05hdmlnYXRvclVzZXJNZWRpYVN1Y2Nlc3NDYWxs
YmFjay5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07Ci0JCTA3M0JFMzQ3MTdEMTdFN0Ew
MDJCRDQzMSAvKiBKU05hdmlnYXRvclVzZXJNZWRpYVN1Y2Nlc3NDYWxsYmFjay5oICovID0ge2lz
YSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBl
ID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBKU05hdmlnYXRvclVzZXJNZWRpYVN1Y2Nlc3NDYWxs
YmFjay5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQkwNzRFODJCODE4QTY5RjBFMDA3
RUY1NEMgLyogUGxhdGZvcm1UaW1lUmFuZ2VzLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJl
bmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3Bw
LmNwcDsgcGF0aCA9IFBsYXRmb3JtVGltZVJhbmdlcy5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3Vw
PiI7IH07CiAJCTA3NEU4MkI5MThBNjlGMEUwMDdFRjU0QyAvKiBQbGF0Zm9ybVRpbWVSYW5nZXMu
aCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25v
d25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gUGxhdGZvcm1UaW1lUmFuZ2VzLmg7
IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTA3NTM4NjAwMTQ0ODlFOTgwMEI3ODQ1MiAv
KiBDYWNoZWRUZXh0VHJhY2suY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVF
bmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRo
ID0gQ2FjaGVkVGV4dFRyYWNrLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKQEAgLTE0
OTY2LDEwICsxNDk1MCw2IEBACiAJCQkJMDcwMzI3RjcxN0VBNEFBRjAwQ0UxMzE4IC8qIE5hdmln
YXRvclVzZXJNZWRpYUVycm9yLmNwcCAqLywKIAkJCQkwNzIyMUI1RDE3Q0VDMzI3MDA4NDhFNTEg
LyogTmF2aWdhdG9yVXNlck1lZGlhRXJyb3IuaCAqLywKIAkJCQkwNzIyMUI1RTE3Q0VDMzI3MDA4
NDhFNTEgLyogTmF2aWdhdG9yVXNlck1lZGlhRXJyb3IuaWRsICovLAotCQkJCTA3MjIxQjVGMTdD
RUMzMjcwMDg0OEU1MSAvKiBOYXZpZ2F0b3JVc2VyTWVkaWFFcnJvckNhbGxiYWNrLmggKi8sCi0J
CQkJMDcyMjFCNjAxN0NFQzMyNzAwODQ4RTUxIC8qIE5hdmlnYXRvclVzZXJNZWRpYUVycm9yQ2Fs
bGJhY2suaWRsICovLAotCQkJCTA3MjIxQjYxMTdDRUMzMjcwMDg0OEU1MSAvKiBOYXZpZ2F0b3JV
c2VyTWVkaWFTdWNjZXNzQ2FsbGJhY2suaCAqLywKLQkJCQkwNzIyMUI2MjE3Q0VDMzI3MDA4NDhF
NTEgLyogTmF2aWdhdG9yVXNlck1lZGlhU3VjY2Vzc0NhbGxiYWNrLmlkbCAqLywKIAkJCQkwN0FC
OTk2NTE4REEzQzAxMDAxODc3MUUgLyogUlRDQ29uZmlndXJhdGlvbi5oICovLAogCQkJCTA3QUI5
OTY2MThEQTNDMDEwMDE4NzcxRSAvKiBSVENDb25maWd1cmF0aW9uLmlkbCAqLywKIAkJCQkwNzIy
MUI2MzE3Q0VDMzI3MDA4NDhFNTEgLyogUlRDRGF0YUNoYW5uZWwuY3BwICovLApAQCAtMTUxNjcs
MTAgKzE1MTQ3LDYgQEAKIAkJCQkwNzNCRTMzRjE3RDE3RTAxMDAyQkQ0MzEgLyogSlNOYXZpZ2F0
b3JVc2VyTWVkaWEuaCAqLywKIAkJCQkwNzNCRTM0MjE3RDE3RTdBMDAyQkQ0MzEgLyogSlNOYXZp
Z2F0b3JVc2VyTWVkaWFFcnJvci5jcHAgKi8sCiAJCQkJMDczQkUzNDMxN0QxN0U3QTAwMkJENDMx
IC8qIEpTTmF2aWdhdG9yVXNlck1lZGlhRXJyb3IuaCAqLywKLQkJCQkwNzNCRTM0NDE3RDE3RTdB
MDAyQkQ0MzEgLyogSlNOYXZpZ2F0b3JVc2VyTWVkaWFFcnJvckNhbGxiYWNrLmNwcCAqLywKLQkJ
CQkwNzNCRTM0NTE3RDE3RTdBMDAyQkQ0MzEgLyogSlNOYXZpZ2F0b3JVc2VyTWVkaWFFcnJvckNh
bGxiYWNrLmggKi8sCi0JCQkJMDczQkUzNDYxN0QxN0U3QTAwMkJENDMxIC8qIEpTTmF2aWdhdG9y
VXNlck1lZGlhU3VjY2Vzc0NhbGxiYWNrLmNwcCAqLywKLQkJCQkwNzNCRTM0NzE3RDE3RTdBMDAy
QkQ0MzEgLyogSlNOYXZpZ2F0b3JVc2VyTWVkaWFTdWNjZXNzQ2FsbGJhY2suaCAqLywKIAkJCQkw
NzM3OTRFMzE5RUUyRkYyMDBFNUEwNDUgLyogSlNSVENDb25maWd1cmF0aW9uLmNwcCAqLywKIAkJ
CQkwNzM3OTRFNDE5RUUyRkYyMDBFNUEwNDUgLyogSlNSVENDb25maWd1cmF0aW9uLmggKi8sCiAJ
CQkJMDc5NjlEOTExN0QxNDE1MTAwN0ZGODQyIC8qIEpTUlRDRGF0YUNoYW5uZWwuY3BwICovLApA
QCAtMjE4MTcsNyArMjE3OTMsNiBAQAogCQkJCUExRTVCMzFEMUFBRDFEQTQwMDZFQkVGQiAvKiBK
U01vY2tDb250ZW50RmlsdGVyU2V0dGluZ3NDdXN0b20uY3BwICovLAogCQkJCUM2RjA5MTdFMTQz
QTJCQjkwMDY4NTg0OSAvKiBKU011dGF0aW9uT2JzZXJ2ZXJDdXN0b20uY3BwICovLAogCQkJCUJD
RDlDMjVGMEMxN0FBNjcwMDVDOTBBMiAvKiBKU05hbWVkTm9kZU1hcEN1c3RvbS5jcHAgKi8sCi0J
CQkJMDczNzk0RTcxOUVFMzM1QzAwRTVBMDQ1IC8qIEpTTmF2aWdhdG9yQ3VzdG9tLmNwcCAqLywK
IAkJCQlCQ0Q5QzI2MDBDMTdBQTY3MDA1QzkwQTIgLyogSlNOb2RlQ3VzdG9tLmNwcCAqLywKIAkJ
CQlCQzk0MzlDMjExNkNGNDk0MDA0OEM3NTAgLyogSlNOb2RlQ3VzdG9tLmggKi8sCiAJCQkJMUE3
NTBERDMwQTkwRTcyOTAwMEZGMjE1IC8qIEpTTm9kZUl0ZXJhdG9yQ3VzdG9tLmNwcCAqLywKQEAg
LTI1ODk3LDggKzI1ODcyLDYgQEAKIAkJCQlBOUQyNDdGODBENzU3RTM0MDBGREY5NTkgLyogSlNO
YXZpZ2F0b3IuaCBpbiBIZWFkZXJzICovLAogCQkJCTA3M0JFMzQxMTdEMTdFMDEwMDJCRDQzMSAv
KiBKU05hdmlnYXRvclVzZXJNZWRpYS5oIGluIEhlYWRlcnMgKi8sCiAJCQkJMDczQkUzNDkxN0Qx
N0U3QTAwMkJENDMxIC8qIEpTTmF2aWdhdG9yVXNlck1lZGlhRXJyb3IuaCBpbiBIZWFkZXJzICov
LAotCQkJCTA3M0JFMzRCMTdEMTdFN0EwMDJCRDQzMSAvKiBKU05hdmlnYXRvclVzZXJNZWRpYUVy
cm9yQ2FsbGJhY2suaCBpbiBIZWFkZXJzICovLAotCQkJCTA3M0JFMzREMTdEMTdFN0EwMDJCRDQz
MSAvKiBKU05hdmlnYXRvclVzZXJNZWRpYVN1Y2Nlc3NDYWxsYmFjay5oIGluIEhlYWRlcnMgKi8s
CiAJCQkJQkM5NDM5QzMxMTZDRjQ5NDAwNDhDNzUwIC8qIEpTTm9kZUN1c3RvbS5oIGluIEhlYWRl
cnMgKi8sCiAJCQkJMTQxMTVCNzMwOUY4NENENjAwQ0E0RkMxIC8qIEpTTm9kZUZpbHRlci5oIGlu
IEhlYWRlcnMgKi8sCiAJCQkJMUE3NTBEOEUwQTkwRTUyMTAwMEZGMjE1IC8qIEpTTm9kZUl0ZXJh
dG9yLmggaW4gSGVhZGVycyAqLywKQEAgLTI2NDQ2LDggKzI2NDE5LDYgQEAKIAkJCQk5NzExNDYw
NDE0RUYwMDlBMDA2NzRGRDkgLyogTmF2aWdhdG9yR2VvbG9jYXRpb24uaCBpbiBIZWFkZXJzICov
LAogCQkJCTVFQTcyNUQ2MUFDQUJENTcwMEVBRDE3QiAvKiBOYXZpZ2F0b3JNZWRpYURldmljZXMu
aCBpbiBIZWFkZXJzICovLAogCQkJCTA3OEUwOTFCMTdEMTREMUMwMDQyMEFBMSAvKiBOYXZpZ2F0
b3JVc2VyTWVkaWFFcnJvci5oIGluIEhlYWRlcnMgKi8sCi0JCQkJMDc4RTA5MUMxN0QxNEQxQzAw
NDIwQUExIC8qIE5hdmlnYXRvclVzZXJNZWRpYUVycm9yQ2FsbGJhY2suaCBpbiBIZWFkZXJzICov
LAotCQkJCTA3OEUwOTFEMTdEMTREMUMwMDQyMEFBMSAvKiBOYXZpZ2F0b3JVc2VyTWVkaWFTdWNj
ZXNzQ2FsbGJhY2suaCBpbiBIZWFkZXJzICovLAogCQkJCUExOUQ5MzQ2MUE5RkVDNzIwMEI0NkMy
NCAvKiBORUZpbHRlclNvdXJjZVNQSS5oIGluIEhlYWRlcnMgKi8sCiAJCQkJOEEzMDlDOUYxMjM5
NTBCRTAwQ0I5MjA0IC8qIE5lc3RpbmdMZXZlbEluY3JlbWVudGVyLmggaW4gSGVhZGVycyAqLywK
IAkJCQk2NTZEMzc0MzBBREJBNURFMDBBNDU1NEQgLyogTmV0c2NhcGVQbHVnSW5TdHJlYW1Mb2Fk
ZXIuaCBpbiBIZWFkZXJzICovLApAQCAtMjk1MzgsMTEgKzI5NTA5LDggQEAKIAkJCQlCQ0Q5QzJD
MDBDMTdCNjlFMDA1QzkwQTIgLyogSlNOYW1lZE5vZGVNYXAuY3BwIGluIFNvdXJjZXMgKi8sCiAJ
CQkJQkNEOUMyNjMwQzE3QUE2NzAwNUM5MEEyIC8qIEpTTmFtZWROb2RlTWFwQ3VzdG9tLmNwcCBp
biBTb3VyY2VzICovLAogCQkJCUE5RDI0N0Y3MEQ3NTdFMzQwMEZERjk1OSAvKiBKU05hdmlnYXRv
ci5jcHAgaW4gU291cmNlcyAqLywKLQkJCQkwNzM3OTRFODE5RUUzMzVDMDBFNUEwNDUgLyogSlNO
YXZpZ2F0b3JDdXN0b20uY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJMDczQkUzNDAxN0QxN0UwMTAw
MkJENDMxIC8qIEpTTmF2aWdhdG9yVXNlck1lZGlhLmNwcCBpbiBTb3VyY2VzICovLAogCQkJCTA3
M0JFMzQ4MTdEMTdFN0EwMDJCRDQzMSAvKiBKU05hdmlnYXRvclVzZXJNZWRpYUVycm9yLmNwcCBp
biBTb3VyY2VzICovLAotCQkJCTA3M0JFMzRBMTdEMTdFN0EwMDJCRDQzMSAvKiBKU05hdmlnYXRv
clVzZXJNZWRpYUVycm9yQ2FsbGJhY2suY3BwIGluIFNvdXJjZXMgKi8sCi0JCQkJMDczQkUzNEMx
N0QxN0U3QTAwMkJENDMxIC8qIEpTTmF2aWdhdG9yVXNlck1lZGlhU3VjY2Vzc0NhbGxiYWNrLmNw
cCBpbiBTb3VyY2VzICovLAogCQkJCTE0REMwRDM3MDlGRUQwNzMwMDdCMDIzNSAvKiBKU05vZGUu
Y3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJQkNEOUMyNjQwQzE3QUE2NzAwNUM5MEEyIC8qIEpTTm9k
ZUN1c3RvbS5jcHAgaW4gU291cmNlcyAqLywKIAkJCQkxNDExNUI3MjA5Rjg0Q0Q2MDBDQTRGQzEg
LyogSlNOb2RlRmlsdGVyLmNwcCBpbiBTb3VyY2VzICovLApkaWZmIC0tZ2l0IGEvU291cmNlL1dl
YkNvcmUvYmluZGluZ3MvanMvSlNOYXZpZ2F0b3JDdXN0b20uY3BwIGIvU291cmNlL1dlYkNvcmUv
YmluZGluZ3MvanMvSlNOYXZpZ2F0b3JDdXN0b20uY3BwCmluZGV4IDNkNWZlMTI0ODY0ODYzNGE2
NGExZDg5NzVjNGFjMWJjM2QxYmQ5YjguLmUzZjIxNDA1YzZjNjM5MjJmYThjYTdhMWNmYzVhZDE5
OTI2YzlmMzkgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0pTTmF2aWdh
dG9yQ3VzdG9tLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9KU05hdmlnYXRv
ckN1c3RvbS5jcHAKQEAgLTI3LDc3ICsyNyw2IEBACiAjaW5jbHVkZSAiY29uZmlnLmgiCiAKICNp
ZiBFTkFCTEUoTUVESUFfU1RSRUFNKQotI2luY2x1ZGUgIkpTTmF2aWdhdG9yLmgiCiAKLSNpbmNs
dWRlICJEaWN0aW9uYXJ5LmgiCi0jaW5jbHVkZSAiRG9jdW1lbnQuaCIKLSNpbmNsdWRlICJFeGNl
cHRpb25Db2RlLmgiCi0jaW5jbHVkZSAiRnJhbWUuaCIKLSNpbmNsdWRlICJKU05hdmlnYXRvclVz
ZXJNZWRpYUVycm9yQ2FsbGJhY2suaCIKLSNpbmNsdWRlICJKU05hdmlnYXRvclVzZXJNZWRpYVN1
Y2Nlc3NDYWxsYmFjay5oIgotI2luY2x1ZGUgIk1lZGlhU3RyZWFtLmgiCi0jaW5jbHVkZSAiVXNl
ck1lZGlhUmVxdWVzdC5oIgotCi11c2luZyBuYW1lc3BhY2UgSlNDOwotCi1uYW1lc3BhY2UgV2Vi
Q29yZSB7Ci0KLUpTVmFsdWUgSlNOYXZpZ2F0b3I6OndlYmtpdEdldFVzZXJNZWRpYShFeGVjU3Rh
dGUmIHN0YXRlKQotewotICAgIGlmIChzdGF0ZS5hcmd1bWVudENvdW50KCkgPCAzKSB7Ci0gICAg
ICAgIHRocm93Vk1FcnJvcigmc3RhdGUsIGNyZWF0ZU5vdEVub3VnaEFyZ3VtZW50c0Vycm9yKCZz
dGF0ZSkpOwotICAgICAgICByZXR1cm4ganNVbmRlZmluZWQoKTsKLSAgICB9Ci0KLSAgICBEaWN0
aW9uYXJ5IG9wdGlvbnMoJnN0YXRlLCBzdGF0ZS5hcmd1bWVudCgwKSk7Ci0gICAgaWYgKHN0YXRl
LmhhZEV4Y2VwdGlvbigpKQotICAgICAgICByZXR1cm4ganNVbmRlZmluZWQoKTsKLQotICAgIGlm
ICghb3B0aW9ucy5pc09iamVjdCgpKSB7Ci0gICAgICAgIHRocm93Vk1FcnJvcigmc3RhdGUsIGNy
ZWF0ZVR5cGVFcnJvcigmc3RhdGUsICJGaXJzdCBhcmd1bWVudCBvZiB3ZWJraXRHZXRVc2VyTWVk
aWEgbXVzdCBiZSBhIHZhbGlkIERpY3Rpb25hcnkiKSk7Ci0gICAgICAgIHJldHVybiBqc1VuZGVm
aW5lZCgpOwotICAgIH0KLQotICAgIGlmICghc3RhdGUuYXJndW1lbnQoMSkuaXNGdW5jdGlvbigp
KSB7Ci0gICAgICAgIHRocm93Vk1UeXBlRXJyb3IoJnN0YXRlLCAiQXJndW1lbnQgMiAoJ3N1Y2Nl
c3NDYWxsYmFjaycpIHRvIE5hdmlnYXRvci53ZWJraXRHZXRVc2VyTWVkaWEgbXVzdCBiZSBhIGZ1
bmN0aW9uIik7Ci0gICAgICAgIHJldHVybiBqc1VuZGVmaW5lZCgpOwotICAgIH0KLQotICAgIGlm
ICghc3RhdGUuYXJndW1lbnQoMikuaXNGdW5jdGlvbigpKSB7Ci0gICAgICAgIHRocm93Vk1UeXBl
RXJyb3IoJnN0YXRlLCAiQXJndW1lbnQgMyAoJ2Vycm9yQ2FsbGJhY2snKSB0byBOYXZpZ2F0b3Iu
d2Via2l0R2V0VXNlck1lZGlhIG11c3QgYmUgYSBmdW5jdGlvbiIpOwotICAgICAgICByZXR1cm4g
anNVbmRlZmluZWQoKTsKLSAgICB9Ci0KLSAgICBpZiAoIWltcGwoKS5mcmFtZSgpKSB7Ci0gICAg
ICAgIHNldERPTUV4Y2VwdGlvbigmc3RhdGUsIE5PVF9TVVBQT1JURURfRVJSKTsKLSAgICAgICAg
cmV0dXJuIGpzVW5kZWZpbmVkKCk7Ci0gICAgfQotCi0gICAgLy8gV2UgZG8gbm90IG5lZWQgdG8g
cHJvdGVjdCB0aGUgY29udGV4dCAoaS5lLiBkb2N1bWVudCkgaGVyZSBhcyBVc2VyTWVkaWFSZXF1
ZXN0IGlzIG9ic2VydmluZyBjb250ZXh0IGRlc3RydWN0aW9uIGFuZCB3aWxsIGNoZWNrIHZhbGlk
aXR5IGJlZm9yZSByZXNvbHZpbmcvcmVqZWN0aW5nIHByb21pc2UuCi0gICAgRG9jdW1lbnQqIGRv
Y3VtZW50ID0gaW1wbCgpLmZyYW1lKCktPmRvY3VtZW50KCk7Ci0KLSAgICBSZWZQdHI8TmF2aWdh
dG9yVXNlck1lZGlhU3VjY2Vzc0NhbGxiYWNrPiBzdWNjZXNzQ2FsbGJhY2sgPSBKU05hdmlnYXRv
clVzZXJNZWRpYVN1Y2Nlc3NDYWxsYmFjazo6Y3JlYXRlKGFzT2JqZWN0KHN0YXRlLnVuY2hlY2tl
ZEFyZ3VtZW50KDEpKSwgZ2xvYmFsT2JqZWN0KCkpOwotICAgIGF1dG8gcmVzb2x2ZUNhbGxiYWNr
ID0gW3N1Y2Nlc3NDYWxsYmFjaywgZG9jdW1lbnRdKGNvbnN0IFJlZlB0cjxNZWRpYVN0cmVhbT4m
IHN0cmVhbSkgbXV0YWJsZSB7Ci0gICAgICAgIFJlZlB0cjxNZWRpYVN0cmVhbT4gcHJvdGVjdGVk
U3RyZWFtID0gc3RyZWFtOwotICAgICAgICBkb2N1bWVudC0+cG9zdFRhc2soW3N1Y2Nlc3NDYWxs
YmFjaywgcHJvdGVjdGVkU3RyZWFtXShTY3JpcHRFeGVjdXRpb25Db250ZXh0JikgewotICAgICAg
ICAgICAgc3VjY2Vzc0NhbGxiYWNrLT5oYW5kbGVFdmVudChwcm90ZWN0ZWRTdHJlYW0uZ2V0KCkp
OwotICAgICAgICB9KTsKLSAgICB9OwotCi0gICAgUmVmUHRyPE5hdmlnYXRvclVzZXJNZWRpYUVy
cm9yQ2FsbGJhY2s+IGVycm9yQ2FsbGJhY2sgPSBKU05hdmlnYXRvclVzZXJNZWRpYUVycm9yQ2Fs
bGJhY2s6OmNyZWF0ZShhc09iamVjdChzdGF0ZS51bmNoZWNrZWRBcmd1bWVudCgyKSksIGdsb2Jh
bE9iamVjdCgpKTsKLSAgICBhdXRvIHJlamVjdENhbGxiYWNrID0gW2Vycm9yQ2FsbGJhY2ssIGRv
Y3VtZW50XShjb25zdCBSZWZQdHI8TmF2aWdhdG9yVXNlck1lZGlhRXJyb3I+JiBlcnJvcikgbXV0
YWJsZSB7Ci0gICAgICAgIFJlZlB0cjxOYXZpZ2F0b3JVc2VyTWVkaWFFcnJvcj4gcHJvdGVjdGVk
RXJyb3IgPSBlcnJvcjsKLSAgICAgICAgZG9jdW1lbnQtPnBvc3RUYXNrKFtlcnJvckNhbGxiYWNr
LCBwcm90ZWN0ZWRFcnJvcl0oU2NyaXB0RXhlY3V0aW9uQ29udGV4dCYpIHsKLSAgICAgICAgICAg
IGVycm9yQ2FsbGJhY2stPmhhbmRsZUV2ZW50KHByb3RlY3RlZEVycm9yLmdldCgpKTsKLSAgICAg
ICAgfSk7Ci0gICAgfTsKLQotICAgIEV4Y2VwdGlvbkNvZGUgZWMgPSAwOwotICAgIFVzZXJNZWRp
YVJlcXVlc3Q6OnN0YXJ0KGRvY3VtZW50LCBvcHRpb25zLCBNZWRpYURldmljZXM6OlByb21pc2Uo
V1RGOjptb3ZlKHJlc29sdmVDYWxsYmFjayksIFdURjo6bW92ZShyZWplY3RDYWxsYmFjaykpLCBl
Yyk7Ci0gICAgc2V0RE9NRXhjZXB0aW9uKCZzdGF0ZSwgZWMpOwotICAgIHJldHVybiBqc1VuZGVm
aW5lZCgpOwotfQotCi19IC8vIG5hbWVzcGFjZSBXZWJDb3JlCiAKICNlbmRpZiAvLyBFTkFCTEUo
TUVESUFfU1RSRUFNKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvV2Vi
Q29yZUpTQnVpbHRpbnMuY3BwIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvV2ViQ29yZUpT
QnVpbHRpbnMuY3BwCmluZGV4IDIzZDQyMWRiMDk1YzE4NzIxMDg4MDQ1NTgwMWY1YzI4YjZkNTQ3
MzEuLjBiYjNlMmNhMmI1ZTA0NzZjOTFhMmQ1OTVkNjU2NWRhZTNjN2Y0ZWYgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL1dlYkNvcmVKU0J1aWx0aW5zLmNwcAorKysgYi9T
b3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9XZWJDb3JlSlNCdWlsdGlucy5jcHAKQEAgLTI1LDMg
KzI1LDYgQEAKICNpbmNsdWRlICJSZWFkYWJsZVN0cmVhbUludGVybmFsc0J1aWx0aW5zLmNwcCIK
ICNpbmNsdWRlICJSZWFkYWJsZVN0cmVhbVJlYWRlckJ1aWx0aW5zLmNwcCIKICNlbmRpZgorI2lm
IEVOQUJMRShNRURJQV9TVFJFQU0pCisjaW5jbHVkZSAiTmF2aWdhdG9yVXNlck1lZGlhQnVpbHRp
bnMuY3BwIgorI2VuZGlmCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9X
ZWJDb3JlSlNCdWlsdGlucy5oIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvV2ViQ29yZUpT
QnVpbHRpbnMuaAppbmRleCA3ZjJmM2Y3OWI3ZDA3Yjg1OTQ0YTY0OGMwYWE0MzgwZmQzY2U2OWVm
Li4xMWY3YzIxYWY0ZjhkNGIzYzg5Y2E5YmU5ZTkwYTZjYjJlZWY3YmI2IDEwMDY0NAotLS0gYS9T
b3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9XZWJDb3JlSlNCdWlsdGlucy5oCisrKyBiL1NvdXJj
ZS9XZWJDb3JlL2JpbmRpbmdzL2pzL1dlYkNvcmVKU0J1aWx0aW5zLmgKQEAgLTI3LDYgKzI3LDEw
IEBACiAjaW5jbHVkZSAiUmVhZGFibGVTdHJlYW1SZWFkZXJCdWlsdGluc1dyYXBwZXIuaCIKICNl
bmRpZgogCisjaWYgRU5BQkxFKE1FRElBX1NUUkVBTSkKKyNpbmNsdWRlICJOYXZpZ2F0b3JVc2Vy
TWVkaWFCdWlsdGluc1dyYXBwZXIuaCIKKyNlbmRpZgorCiAKICNpbmNsdWRlIDxydW50aW1lL1ZN
Lmg+CiAKQEAgLTQ0LDYgKzQ4LDkgQEAgcHVibGljOgogICAgICAgICAsIG1fcmVhZGFibGVTdHJl
YW1JbnRlcm5hbHNCdWlsdGlucygmdm0pCiAgICAgICAgICwgbV9yZWFkYWJsZVN0cmVhbVJlYWRl
ckJ1aWx0aW5zKCZ2bSkKICNlbmRpZgorI2lmIEVOQUJMRShNRURJQV9TVFJFQU0pCisgICAgICAg
ICwgbV9uYXZpZ2F0b3JVc2VyTWVkaWFCdWlsdGlucygmdm0pCisjZW5kaWYKICAgICB7CiAjaWYg
RU5BQkxFKFNUUkVBTVNfQVBJKQogICAgICAgICBtX3JlYWRhYmxlU3RyZWFtSW50ZXJuYWxzQnVp
bHRpbnMuZXhwb3J0TmFtZXMoKTsKQEAgLTU3LDYgKzY0LDkgQEAgcHVibGljOgogICAgIFJlYWRh
YmxlU3RyZWFtSW50ZXJuYWxzQnVpbHRpbnNXcmFwcGVyJiByZWFkYWJsZVN0cmVhbUludGVybmFs
c0J1aWx0aW5zKCkgeyByZXR1cm4gbV9yZWFkYWJsZVN0cmVhbUludGVybmFsc0J1aWx0aW5zO30K
ICAgICBSZWFkYWJsZVN0cmVhbVJlYWRlckJ1aWx0aW5zV3JhcHBlciYgcmVhZGFibGVTdHJlYW1S
ZWFkZXJCdWlsdGlucygpIHsgcmV0dXJuIG1fcmVhZGFibGVTdHJlYW1SZWFkZXJCdWlsdGluczt9
CiAjZW5kaWYKKyNpZiBFTkFCTEUoTUVESUFfU1RSRUFNKQorICAgIE5hdmlnYXRvclVzZXJNZWRp
YUJ1aWx0aW5zV3JhcHBlciYgbmF2aWdhdG9yVXNlck1lZGlhQnVpbHRpbnMoKSB7IHJldHVybiBt
X25hdmlnYXRvclVzZXJNZWRpYUJ1aWx0aW5zO30KKyNlbmRpZgogCiBwcml2YXRlOgogICAgIEpT
Qzo6Vk0mIHZtOwpAQCAtNjgsNiArNzgsOSBAQCBwcml2YXRlOgogICAgIFJlYWRhYmxlU3RyZWFt
SW50ZXJuYWxzQnVpbHRpbnNXcmFwcGVyIG1fcmVhZGFibGVTdHJlYW1JbnRlcm5hbHNCdWlsdGlu
czsKICAgICBSZWFkYWJsZVN0cmVhbVJlYWRlckJ1aWx0aW5zV3JhcHBlciBtX3JlYWRhYmxlU3Ry
ZWFtUmVhZGVyQnVpbHRpbnM7CiAjZW5kaWYKKyNpZiBFTkFCTEUoTUVESUFfU1RSRUFNKQorICAg
IE5hdmlnYXRvclVzZXJNZWRpYUJ1aWx0aW5zV3JhcHBlciBtX25hdmlnYXRvclVzZXJNZWRpYUJ1
aWx0aW5zOworI2VuZGlmCiAKIH07CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRp
bmdzL3NjcmlwdHMvQ29kZUdlbmVyYXRvckpTLnBtIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mv
c2NyaXB0cy9Db2RlR2VuZXJhdG9ySlMucG0KaW5kZXggNWYwYjE1MTM0NDIwMzc5MDBjN2RmYjEy
NTM2ZmMwN2Q1YmZjMmE1MS4uNjViNzA0NWUyZjU2ZDU2ODA5ZWQzZmE3MjBlZmU1YjA4N2YwMjAw
YSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy9Db2RlR2VuZXJh
dG9ySlMucG0KKysrIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy9Db2RlR2VuZXJh
dG9ySlMucG0KQEAgLTU3MSw3ICs1NzEsNyBAQCBzdWIgR2V0QXR0cmlidXRlR2V0dGVyTmFtZQog
ICAgICAgICByZXR1cm4gJGNvZGVHZW5lcmF0b3ItPldLX2xjZmlyc3QoJGNsYXNzTmFtZSkgLiAi
Q29uc3RydWN0b3IiIC4gJGNvZGVHZW5lcmF0b3ItPldLX3VjZmlyc3QoJGF0dHJpYnV0ZS0+c2ln
bmF0dXJlLT5uYW1lKTsKICAgICB9CiAgICAgaWYgKCRhdHRyaWJ1dGUtPnNpZ25hdHVyZS0+ZXh0
ZW5kZWRBdHRyaWJ1dGVzLT57IkpTQnVpbHRpbiJ9KSB7Ci0gICAgICAgIHJldHVybiBHZXRKU0J1
aWx0aW5GdW5jdGlvbk5hbWUoJGNsYXNzTmFtZSwgJGF0dHJpYnV0ZS0+c2lnbmF0dXJlLT5uYW1l
KTsKKyAgICAgICAgcmV0dXJuIEdldEpTQnVpbHRpbkZ1bmN0aW9uTmFtZSgkY2xhc3NOYW1lLCAk
YXR0cmlidXRlKTsKICAgICB9CiAgICAgcmV0dXJuICJqcyIgLiAkaW50ZXJmYWNlTmFtZSAuICRj
b2RlR2VuZXJhdG9yLT5XS191Y2ZpcnN0KCRhdHRyaWJ1dGUtPnNpZ25hdHVyZS0+bmFtZSkgLiAo
JGF0dHJpYnV0ZS0+c2lnbmF0dXJlLT50eXBlID1+IC9Db25zdHJ1Y3RvciQvID8gIkNvbnN0cnVj
dG9yIiA6ICIiKTsKIH0KQEAgLTU4MywxNyArNTgzLDExIEBAIHN1YiBHZXRBdHRyaWJ1dGVTZXR0
ZXJOYW1lCiAgICAgICAgIHJldHVybiAic2V0IiAuICRjb2RlR2VuZXJhdG9yLT5XS191Y2ZpcnN0
KCRjbGFzc05hbWUpIC4gIkNvbnN0cnVjdG9yIiAuICRjb2RlR2VuZXJhdG9yLT5XS191Y2ZpcnN0
KCRhdHRyaWJ1dGUtPnNpZ25hdHVyZS0+bmFtZSk7CiAgICAgfQogICAgIGlmICgkYXR0cmlidXRl
LT5zaWduYXR1cmUtPmV4dGVuZGVkQXR0cmlidXRlcy0+eyJKU0J1aWx0aW4ifSkgewotICAgICAg
ICByZXR1cm4gInNldCIgLiAkY29kZUdlbmVyYXRvci0+V0tfdWNmaXJzdChHZXRKU0J1aWx0aW5G
dW5jdGlvbk5hbWUoJGNsYXNzTmFtZSwgJGF0dHJpYnV0ZS0+c2lnbmF0dXJlLT5uYW1lKSk7Cisg
ICAgICAgIHJldHVybiAic2V0IiAuICRjb2RlR2VuZXJhdG9yLT5XS191Y2ZpcnN0KEdldEpTQnVp
bHRpbkZ1bmN0aW9uTmFtZSgkY2xhc3NOYW1lLCAkYXR0cmlidXRlKSk7CiAgICAgfQogICAgIHJl
dHVybiAic2V0SlMiIC4gJGludGVyZmFjZU5hbWUgLiAkY29kZUdlbmVyYXRvci0+V0tfdWNmaXJz
dCgkYXR0cmlidXRlLT5zaWduYXR1cmUtPm5hbWUpIC4gKCRhdHRyaWJ1dGUtPnNpZ25hdHVyZS0+
dHlwZSA9fiAvQ29uc3RydWN0b3IkLyA/ICJDb25zdHJ1Y3RvciIgOiAiIik7CiB9CiAKLXN1YiBH
ZXRKU0J1aWx0aW5GdW5jdGlvbk5hbWUKLXsKLSAgICBteSAoJGNsYXNzTmFtZSwgJGZ1bmN0aW9u
TmFtZSkgPSBAXzsKLSAgICByZXR1cm4gJGNvZGVHZW5lcmF0b3ItPldLX2xjZmlyc3Qoc3Vic3Ry
ICRjbGFzc05hbWUsIDIpIC4gJGNvZGVHZW5lcmF0b3ItPldLX3VjZmlyc3QoJGZ1bmN0aW9uTmFt
ZSkgLiAiQ29kZUdlbmVyYXRvciI7Ci19Ci0KIHN1YiBHZXRGdW5jdGlvbk5hbWUKIHsKICAgICBt
eSAoJGNsYXNzTmFtZSwgJGZ1bmN0aW9uKSA9IEBfOwpAQCAtNjA0LDcgKzU5OCw3IEBAIHN1YiBH
ZXRGdW5jdGlvbk5hbWUKICAgICB9CiAKICAgICBpZiAoJGZ1bmN0aW9uLT5zaWduYXR1cmUtPmV4
dGVuZGVkQXR0cmlidXRlcy0+eyJKU0J1aWx0aW4ifSkgewotICAgICAgICByZXR1cm4gR2V0SlNC
dWlsdGluRnVuY3Rpb25OYW1lKCRjbGFzc05hbWUsICRmdW5jdGlvbi0+c2lnbmF0dXJlLT5uYW1l
KTsKKyAgICAgICAgcmV0dXJuIEdldEpTQnVpbHRpbkZ1bmN0aW9uTmFtZSgkY2xhc3NOYW1lLCAk
ZnVuY3Rpb24pOwogICAgIH0KIAogICAgIG15ICRraW5kID0gJGZ1bmN0aW9uLT5pc1N0YXRpYyA/
ICJDb25zdHJ1Y3RvciIgOiAiUHJvdG90eXBlIjsKQEAgLTUwMDAsNyArNDk5NCw3IEBAIHN1YiBH
ZW5lcmF0ZUNvbnN0cnVjdG9ySGVscGVyTWV0aG9kcwogICAgIH0KIAogICAgIGlmICgkaW50ZXJm
YWNlLT5leHRlbmRlZEF0dHJpYnV0ZXMtPnsiSlNCdWlsdGluQ29uc3RydWN0b3IifSkgewotICAg
ICAgICBteSAkaW5pdGlhbGl6ZUZ1bmN0aW9uTmFtZSA9IEdldEpTQnVpbHRpbkZ1bmN0aW9uTmFt
ZSgke2NsYXNzTmFtZX0sICJpbml0aWFsaXplIiAuICR7aW50ZXJmYWNlTmFtZX0pOworICAgICAg
ICBteSAkaW5pdGlhbGl6ZUZ1bmN0aW9uTmFtZSA9IEdldEpTQnVpbHRpbkZ1bmN0aW9uTmFtZUZy
b21TdHJpbmcoJHtpbnRlcmZhY2VOYW1lfSwgImluaXRpYWxpemUiIC4gJHtpbnRlcmZhY2VOYW1l
fSk7CiAgICAgICAgIHB1c2goQCRvdXRwdXRBcnJheSwgIiAgICBzZXRJbml0aWFsaXplRnVuY3Rp
b24odm0sICpKU0M6OkpTRnVuY3Rpb246OmNyZWF0ZUJ1aWx0aW5GdW5jdGlvbih2bSwgJHtpbml0
aWFsaXplRnVuY3Rpb25OYW1lfSh2bSksICZnbG9iYWxPYmplY3QpKTtcbiIpOwogICAgIH0KIApA
QCAtNTA5OSwyNSArNTA5Myw0NSBAQCBzdWIgQ29tcHV0ZUZ1bmN0aW9uU3BlY2lhbAogICAgIHJl
dHVybiAoQHNwZWNpYWxzID4gMCkgPyBqb2luKCIgfCAiLCBAc3BlY2lhbHMpIDogIjAiOwogfQog
Ci1zdWIgQWRkSlNCdWlsdGluSW5jbHVkZXNJZk5lZWRlZCgpCitzdWIgR2V0SlNCdWlsdGluRnVu
Y3Rpb25OYW1lCit7CisgICAgbXkgKCRjbGFzc05hbWUsICRmdW5jdGlvbikgPSBAXzsKKyAgICBt
eSAkc2NvcGVOYW1lID0gc3Vic3RyICRjbGFzc05hbWUsIDI7CisgICAgJHNjb3BlTmFtZSA9ICRm
dW5jdGlvbi0+c2lnbmF0dXJlLT5leHRlbmRlZEF0dHJpYnV0ZXMtPnsiSW1wbGVtZW50ZWRCeSJ9
IGlmICRmdW5jdGlvbi0+c2lnbmF0dXJlLT5leHRlbmRlZEF0dHJpYnV0ZXMtPnsiSW1wbGVtZW50
ZWRCeSJ9OworICAgIHJldHVybiBHZXRKU0J1aWx0aW5GdW5jdGlvbk5hbWVGcm9tU3RyaW5nKCRz
Y29wZU5hbWUsICRmdW5jdGlvbi0+c2lnbmF0dXJlLT5uYW1lKTsKK30KKworc3ViIEdldEpTQnVp
bHRpbkZ1bmN0aW9uTmFtZUZyb21TdHJpbmcKK3sKKyAgICBteSAoJHNjb3BlTmFtZSwgJGZ1bmN0
aW9uTmFtZSkgPSBAXzsKKyAgICByZXR1cm4gJGNvZGVHZW5lcmF0b3ItPldLX2xjZmlyc3QoJHNj
b3BlTmFtZSkgLiAkY29kZUdlbmVyYXRvci0+V0tfdWNmaXJzdCgkZnVuY3Rpb25OYW1lKSAuICJD
b2RlR2VuZXJhdG9yIjsKK30KKworc3ViIEdldEpTQnVpbHRpblNjb3BlTmFtZQogewogICAgIG15
ICRpbnRlcmZhY2UgPSBzaGlmdDsKKyAgICBteSAkb2JqZWN0ID0gc2hpZnQ7CisKKyAgICByZXR1
cm4gJG9iamVjdC0+c2lnbmF0dXJlLT5leHRlbmRlZEF0dHJpYnV0ZXMtPnsiSW1wbGVtZW50ZWRC
eSJ9IGlmICRvYmplY3QtPnNpZ25hdHVyZS0+ZXh0ZW5kZWRBdHRyaWJ1dGVzLT57IkltcGxlbWVu
dGVkQnkifTsKKyAgICByZXR1cm4gJGludGVyZmFjZS0+bmFtZTsKK30KIAotICAgIG15ICRpbmNs
dWRlID0gJGludGVyZmFjZS0+bmFtZSAuICJCdWlsdGlucy5oIjsKK3N1YiBBZGRKU0J1aWx0aW5J
bmNsdWRlc0lmTmVlZGVkKCkKK3sKKyAgICBteSAkaW50ZXJmYWNlID0gc2hpZnQ7CiAKICAgICBp
ZiAoJGludGVyZmFjZS0+ZXh0ZW5kZWRBdHRyaWJ1dGVzLT57IkpTQnVpbHRpbkNvbnN0cnVjdG9y
In0pIHsKLSAgICAgICAgQWRkVG9JbXBsSW5jbHVkZXMoJGluY2x1ZGUpOworICAgICAgICBBZGRU
b0ltcGxJbmNsdWRlcygkaW50ZXJmYWNlLT5uYW1lIC4gIkJ1aWx0aW5zLmgiKTsKICAgICAgICAg
cmV0dXJuOwogICAgIH0KIAogICAgIGZvcmVhY2ggbXkgJGZ1bmN0aW9uIChAeyRpbnRlcmZhY2Ut
PmZ1bmN0aW9uc30pIHsKLSAgICAgICAgQWRkVG9JbXBsSW5jbHVkZXMoJGluY2x1ZGUsICRmdW5j
dGlvbi0+c2lnbmF0dXJlLT5leHRlbmRlZEF0dHJpYnV0ZXMtPnsiQ29uZGl0aW9uYWwifSkgaWYg
JGZ1bmN0aW9uLT5zaWduYXR1cmUtPmV4dGVuZGVkQXR0cmlidXRlcy0+eyJKU0J1aWx0aW4ifTsK
KyAgICAgICAgQWRkVG9JbXBsSW5jbHVkZXMoR2V0SlNCdWlsdGluU2NvcGVOYW1lKCRpbnRlcmZh
Y2UsICRmdW5jdGlvbikgLiAiQnVpbHRpbnMuaCIsICRmdW5jdGlvbi0+c2lnbmF0dXJlLT5leHRl
bmRlZEF0dHJpYnV0ZXMtPnsiQ29uZGl0aW9uYWwifSkgaWYgJGZ1bmN0aW9uLT5zaWduYXR1cmUt
PmV4dGVuZGVkQXR0cmlidXRlcy0+eyJKU0J1aWx0aW4ifTsKICAgICB9CiAKICAgICBmb3JlYWNo
IG15ICRhdHRyaWJ1dGUgKEB7JGludGVyZmFjZS0+YXR0cmlidXRlc30pIHsKLSAgICAgICAgQWRk
VG9JbXBsSW5jbHVkZXMoJGluY2x1ZGUsICRhdHRyaWJ1dGUtPnNpZ25hdHVyZS0+ZXh0ZW5kZWRB
dHRyaWJ1dGVzLT57IkNvbmRpdGlvbmFsIn0pIGlmICRhdHRyaWJ1dGUtPnNpZ25hdHVyZS0+ZXh0
ZW5kZWRBdHRyaWJ1dGVzLT57IkpTQnVpbHRpbiJ9OworICAgICAgICBBZGRUb0ltcGxJbmNsdWRl
cyhHZXRKU0J1aWx0aW5TY29wZU5hbWUoJGludGVyZmFjZSwgJGF0dHJpYnV0ZSkgLiAiQnVpbHRp
bnMuaCIsICRhdHRyaWJ1dGUtPnNpZ25hdHVyZS0+ZXh0ZW5kZWRBdHRyaWJ1dGVzLT57IkNvbmRp
dGlvbmFsIn0pIGlmICRhdHRyaWJ1dGUtPnNpZ25hdHVyZS0+ZXh0ZW5kZWRBdHRyaWJ1dGVzLT57
IkpTQnVpbHRpbiJ9OwogICAgIH0KLQogfQogCiAxOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNv
cmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdEludGVyZmFjZS5jcHAgYi9Tb3VyY2Uv
V2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0SW50ZXJmYWNlLmNwcAppbmRl
eCAxYTBlYjE1YTgxZGFjZjQ4ZDA1ZGVkMGY3MWE1OGU5NjJkZTFiZTQ2Li42MjFlZDAyMTJlZmNi
YjJlNDhiYWVlMWIzZTQyMTY4MTU4ZjBkODcxIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9i
aW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0SW50ZXJmYWNlLmNwcAorKysgYi9Tb3VyY2Uv
V2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0SW50ZXJmYWNlLmNwcApAQCAt
MzEsNiArMzEsMTAgQEAKICNpbmNsdWRlIDxydW50aW1lL0Vycm9yLmg+CiAjaW5jbHVkZSA8d3Rm
L0dldFB0ci5oPgogCisjaWYgRU5BQkxFKENvbmRpdGlvbjExKSB8fCBFTkFCTEUoQ29uZGl0aW9u
MTIpCisjaW5jbHVkZSAiVGVzdFN1cHBsZW1lbnRhbEJ1aWx0aW5zLmgiCisjZW5kaWYKKwogI2lm
IEVOQUJMRShDb25kaXRpb24xMSkgfHwgRU5BQkxFKENvbmRpdGlvbjEyKSB8fCBFTkFCTEUoQ29u
ZGl0aW9uMjIpIHx8IEVOQUJMRShDb25kaXRpb24yMykKICNpbmNsdWRlICJKU05vZGUuaCIKICNp
bmNsdWRlICJKU1Rlc3RPYmouaCIKQEAgLTM0Nyw2ICszNTEsMTEgQEAgc3RhdGljIGNvbnN0IEhh
c2hUYWJsZVZhbHVlIEpTVGVzdEludGVyZmFjZVByb3RvdHlwZVRhYmxlVmFsdWVzW10gPQogI2Vs
c2UKICAgICB7IDAsIDAsIE5vSW50cmluc2ljLCB7IDAsIDAgfSB9LAogI2VuZGlmCisjaWYgRU5B
QkxFKENvbmRpdGlvbjExKSB8fCBFTkFCTEUoQ29uZGl0aW9uMTIpCisgICAgeyAiYnVpbHRpbkF0
dHJpYnV0ZSIsIEFjY2Vzc29yIHwgQnVpbHRpbiwgTm9JbnRyaW5zaWMsIHsgKGludHB0cl90KXN0
YXRpY19jYXN0PEJ1aWx0aW5HZW5lcmF0b3I+KHRlc3RTdXBwbGVtZW50YWxCdWlsdGluQXR0cmli
dXRlQ29kZUdlbmVyYXRvciksIChpbnRwdHJfdCkgKHNldFRlc3RTdXBwbGVtZW50YWxCdWlsdGlu
QXR0cmlidXRlQ29kZUdlbmVyYXRvcikgfSB9LAorI2Vsc2UKKyAgICB7IDAsIDAsIE5vSW50cmlu
c2ljLCB7IDAsIDAgfSB9LAorI2VuZGlmCiAjaWYgRU5BQkxFKENvbmRpdGlvbjIyKSB8fCBFTkFC
TEUoQ29uZGl0aW9uMjMpCiAgICAgeyAiSU1QTEVNRU5UU0NPTlNUQU5UMSIsIERvbnREZWxldGUg
fCBSZWFkT25seSB8IENvbnN0YW50SW50ZWdlciwgTm9JbnRyaW5zaWMsIHsgKGxvbmcgbG9uZyko
MSkgfSB9LAogI2Vsc2UKQEAgLTM5Nyw2ICs0MDYsMTEgQEAgc3RhdGljIGNvbnN0IEhhc2hUYWJs
ZVZhbHVlIEpTVGVzdEludGVyZmFjZVByb3RvdHlwZVRhYmxlVmFsdWVzW10gPQogI2Vsc2UKICAg
ICB7IDAsIDAsIE5vSW50cmluc2ljLCB7IDAsIDAgfSB9LAogI2VuZGlmCisjaWYgRU5BQkxFKENv
bmRpdGlvbjExKSB8fCBFTkFCTEUoQ29uZGl0aW9uMTIpCisgICAgeyAiYnVpbHRpbkZ1bmN0aW9u
IiwgSlNDOjpCdWlsdGluLCBOb0ludHJpbnNpYywgeyAoaW50cHRyX3Qpc3RhdGljX2Nhc3Q8QnVp
bHRpbkdlbmVyYXRvcj4odGVzdFN1cHBsZW1lbnRhbEJ1aWx0aW5GdW5jdGlvbkNvZGVHZW5lcmF0
b3IpLCAoaW50cHRyX3QpICgwKSB9IH0sCisjZWxzZQorICAgIHsgMCwgMCwgTm9JbnRyaW5zaWMs
IHsgMCwgMCB9IH0sCisjZW5kaWYKIH07CiAKIGNvbnN0IENsYXNzSW5mbyBKU1Rlc3RJbnRlcmZh
Y2VQcm90b3R5cGU6OnNfaW5mbyA9IHsgIlRlc3RJbnRlcmZhY2VQcm90b3R5cGUiLCAmQmFzZTo6
c19pbmZvLCAwLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdEludGVyZmFjZVByb3RvdHlwZSkg
fTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9PYmpD
L0RPTVRlc3RJbnRlcmZhY2UuaCBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVz
dC9PYmpDL0RPTVRlc3RJbnRlcmZhY2UuaAppbmRleCBjMDViYTk5NTVjYTQ0NTI1NjQzODg4MzJi
YmQ3ZTlmZGRkMTYzNGZjLi5mYmE4MjYwMmI2ZDNkNGQ4NzY5N2RlYjljZjI3MTJiZTc1NGRmMTc0
IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvT2JqQy9E
T01UZXN0SW50ZXJmYWNlLmgKKysrIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90
ZXN0L09iakMvRE9NVGVzdEludGVyZmFjZS5oCkBAIC00NCw0ICs0NCw1IEBAIFdFQkNPUkVfRVhQ
T1JUIEBpbnRlcmZhY2UgRE9NVGVzdEludGVyZmFjZSA6IERPTU9iamVjdAogQHByb3BlcnR5IChj
b3B5KSBOU1N0cmluZyAqc3VwcGxlbWVudGFsU3RyMjsKIEBwcm9wZXJ0eSAoY29weSkgTlNTdHJp
bmcgKnN1cHBsZW1lbnRhbFN0cjM7CiBAcHJvcGVydHkgKHN0cm9uZykgRE9NTm9kZSAqc3VwcGxl
bWVudGFsTm9kZTsKK0Bwcm9wZXJ0eSB1bnNpZ25lZCBzaG9ydCBidWlsdGluQXR0cmlidXRlOwog
QGVuZApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L09i
akMvRE9NVGVzdEludGVyZmFjZS5tbSBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMv
dGVzdC9PYmpDL0RPTVRlc3RJbnRlcmZhY2UubW0KaW5kZXggYTY1ODdjNzEzNzA4YTgyYTBiYjcy
ZTJlNGNmN2JkYWQwZjk5YzdhZS4uNDk4NzFiZTI3MWZhNTA3NzQ2MGIwYTU1MmY2ZTk2YjA5NTQw
MDY5YyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L09i
akMvRE9NVGVzdEludGVyZmFjZS5tbQorKysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3Jp
cHRzL3Rlc3QvT2JqQy9ET01UZXN0SW50ZXJmYWNlLm1tCkBAIC0xNzIsNiArMTcyLDIwIEBAIC0g
KHZvaWQpc2V0U3VwcGxlbWVudGFsTm9kZTooRE9NTm9kZSAqKW5ld1N1cHBsZW1lbnRhbE5vZGUK
IH0KICNlbmRpZgogCisjaWYgRU5BQkxFKENvbmRpdGlvbjExKSB8fCBFTkFCTEUoQ29uZGl0aW9u
MTIpCistICh1bnNpZ25lZCBzaG9ydClidWlsdGluQXR0cmlidXRlCit7CisgICAgV2ViQ29yZTo6
SlNNYWluVGhyZWFkTnVsbFN0YXRlIHN0YXRlOworICAgIHJldHVybiBUZXN0U3VwcGxlbWVudGFs
OjpidWlsdGluQXR0cmlidXRlKElNUEwpOworfQorCistICh2b2lkKXNldEJ1aWx0aW5BdHRyaWJ1
dGU6KHVuc2lnbmVkIHNob3J0KW5ld0J1aWx0aW5BdHRyaWJ1dGUKK3sKKyAgICBXZWJDb3JlOjpK
U01haW5UaHJlYWROdWxsU3RhdGUgc3RhdGU7CisgICAgVGVzdFN1cHBsZW1lbnRhbDo6c2V0QnVp
bHRpbkF0dHJpYnV0ZShJTVBMLCBuZXdCdWlsdGluQXR0cmlidXRlKTsKK30KKyNlbmRpZgorCiAK
ICNpZiBFTkFCTEUoQ29uZGl0aW9uMjIpIHx8IEVOQUJMRShDb25kaXRpb24yMykKIC0gKHZvaWQp
aW1wbGVtZW50c01ldGhvZDEKQEAgLTI1OCw2ICsyNzIsMTYgQEAgLSAodm9pZClzdXBwbGVtZW50
YWxNZXRob2Q0CiAKICNlbmRpZgogCisKKyNpZiBFTkFCTEUoQ29uZGl0aW9uMTEpIHx8IEVOQUJM
RShDb25kaXRpb24xMikKKy0gKHZvaWQpYnVpbHRpbkZ1bmN0aW9uCit7CisgICAgV2ViQ29yZTo6
SlNNYWluVGhyZWFkTnVsbFN0YXRlIHN0YXRlOworICAgIFRlc3RTdXBwbGVtZW50YWw6OmJ1aWx0
aW5GdW5jdGlvbihJTVBMKTsKK30KKworI2VuZGlmCisKIEBlbmQKIAogV2ViQ29yZTo6VGVzdElu
dGVyZmFjZSogY29yZShET01UZXN0SW50ZXJmYWNlICp3cmFwcGVyKQpkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L1Rlc3RTdXBwbGVtZW50YWwuaWRsIGIv
U291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L1Rlc3RTdXBwbGVtZW50YWwuaWRs
CmluZGV4IDcxMzUxZWYxYzI2ZThiYmUzZDQxM2M3NTcwMDJiYzJjNDIzNjczYTcuLjE5NTU1YzJi
ZjdhZTNjZWI3ZjU2NTVmZWRmNGU5OTg5OGJlN2JhMTQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJD
b3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9UZXN0U3VwcGxlbWVudGFsLmlkbAorKysgYi9Tb3Vy
Y2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvVGVzdFN1cHBsZW1lbnRhbC5pZGwKQEAg
LTQ1LDQgKzQ1LDcgQEAKIAogICAgIGNvbnN0IHVuc2lnbmVkIHNob3J0IFNVUFBMRU1FTlRBTENP
TlNUQU5UMSA9IDE7CiAgICAgW1JlZmxlY3Q9Q09OU1RfSU1QTF0gY29uc3QgdW5zaWduZWQgc2hv
cnQgU1VQUExFTUVOVEFMQ09OU1RBTlQyID0gMjsKKworICAgIFtKU0J1aWx0aW5dIHZvaWQgYnVp
bHRpbkZ1bmN0aW9uKCk7CisgICAgW0pTQnVpbHRpbiwgUmVhZE9ubHldIGF0dHJpYnV0ZSB1bnNp
Z25lZCBzaG9ydCBidWlsdGluQXR0cmlidXRlOwogfTsKZGlmZiAtLWdpdCBhL0xheW91dFRlc3Rz
L0NoYW5nZUxvZyBiL0xheW91dFRlc3RzL0NoYW5nZUxvZwppbmRleCAzMGVlMGFhZWJiMzY3ODcy
MTdkYTg3NzU5MzRmNjU0NGM3MGQ1NmM0Li5iOTQ3ZDNjMGQ1MWIzNjIzMjg1YTExMDAwODA4NDQ5
NDkyZDI1M2NhIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKKysrIGIvTGF5b3V0
VGVzdHMvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTggQEAKKzIwMTUtMTAtMDkgIFlvdWVubiBGYWJs
ZXQgIDx5b3Vlbm4uZmFibGV0QGNyZi5jYW5vbi5mcj4KKworICAgICAgICBNb3ZlIHdlYmtpdEdl
dFVzZXJNZWRpYSB0byBKUyBCdWlsdGluCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3Jn
L3Nob3dfYnVnLmNnaT9pZD0xNDk0OTkKKworICAgICAgICBXSVAuCisKKyAgICAgICAgKiBmYXN0
L21lZGlhc3RyZWFtL01lZGlhU3RyZWFtLWFkZC1lbmRlZC10cmFja3MtZXhwZWN0ZWQudHh0Ogor
ICAgICAgICAqIGZhc3QvbWVkaWFzdHJlYW0vTWVkaWFTdHJlYW0tYWRkLXRyYWNrcy10by1pbmFj
dGl2ZS1zdHJlYW0tZXhwZWN0ZWQudHh0OgorICAgICAgICAqIGZhc3QvbWVkaWFzdHJlYW0vTWVk
aWFTdHJlYW0tY29uc3RydWN0LXdpdGgtZW5kZWQtdHJhY2tzLWV4cGVjdGVkLnR4dDoKKyAgICAg
ICAgKiBmYXN0L21lZGlhc3RyZWFtL01lZGlhU3RyZWFtQ29uc3RydWN0b3ItZXhwZWN0ZWQudHh0
OgorICAgICAgICAqIGZhc3QvbWVkaWFzdHJlYW0vYXJndW1lbnQtdHlwZXMtZXhwZWN0ZWQudHh0
OgorICAgICAgICAqIGZhc3QvbWVkaWFzdHJlYW0vZ2V0dXNlcm1lZGlhLWV4cGVjdGVkLnR4dDoK
KyAgICAgICAgKiBmYXN0L21lZGlhc3RyZWFtL2dldHVzZXJtZWRpYS5odG1sOgorCiAyMDE1LTEw
LTA4ICBXZW5zb24gSHNpZWggIDx3ZW5zb25faHNpZWhAYXBwbGUuY29tPgogCiAgICAgICAgIEJh
Y2tncm91bmRzIGJsZWVkIG91dCBvZiBuYXRpdmVseSByZW5kZXJlZCB0ZXh0IGZpZWxkcwpkaWZm
IC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9tZWRpYXN0cmVhbS9NZWRpYVN0cmVhbS1hZGQtZW5k
ZWQtdHJhY2tzLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2Zhc3QvbWVkaWFzdHJlYW0vTWVk
aWFTdHJlYW0tYWRkLWVuZGVkLXRyYWNrcy1leHBlY3RlZC50eHQKaW5kZXggZmY3NmZmODE3NzM5
NjM0OGNkMWE4MjlkYTYyZTg3NmI2NTc1YzM1OC4uOWMzNWEzYmFjNTRkYzdlOTJkY2IxODQxNDMx
ZGIyOThmYjIyNjgxOSAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvZmFzdC9tZWRpYXN0cmVhbS9N
ZWRpYVN0cmVhbS1hZGQtZW5kZWQtdHJhY2tzLWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0
cy9mYXN0L21lZGlhc3RyZWFtL01lZGlhU3RyZWFtLWFkZC1lbmRlZC10cmFja3MtZXhwZWN0ZWQu
dHh0CkBAIC05LDE1ICs5LDcgQEAgUEFTUyBzdHJlYW0xLmdldFZpZGVvVHJhY2tzKCkubGVuZ3Ro
IGlzIDEKICoqKiBzdG9wIGF1ZGlvVHJhY2sKIFBBU1MgYXVkaW9UcmFjay5yZWFkeVN0YXRlIGlz
ICJlbmRlZCIKICoqKiBjb25zdHJ1Y3QgbmV3ICdlbXB0eScgc3RyZWFtMgotUEFTUyBzdHJlYW0y
LmdldFRyYWNrcygpLmxlbmd0aCBpcyAwCi1QQVNTIHN0cmVhbTIuYWN0aXZlIGlzIGZhbHNlCi0q
KiogYWRkIGVuZGVkIGF1ZGlvVHJhY2sgdG8gc3RyZWFtMgotKioqIHNjaGVkdWxlIGNvbnRpbnVh
dGlvbiBvZiB0ZXN0Ci0qKiogZXh0cmFjdCB2aWRlb1RyYWNrIChhbmQgdmVyaWZ5IGxpdmVuZXNz
KQotUEFTUyB2aWRlb1RyYWNrLnJlYWR5U3RhdGUgaXMgImxpdmUiCi0qKiogYWRkIGxpdmUgdmlk
ZW9UcmFjayB0byBzdHJlYW0yCi0qKiogc3RyZWFtMiBpcyBhY3RpdmUgYWdhaW4KLVBBU1Mgc3Ry
ZWFtMi5hY3RpdmUgaXMgdHJ1ZQorRkFJTCBnZXRVc2VyTWVkaWEgZmFpbGVkOlJlZmVyZW5jZUVy
cm9yOiBDYW4ndCBmaW5kIHZhcmlhYmxlOiB3ZWJraXRNZWRpYVN0cmVhbQogUEFTUyBzdWNjZXNz
ZnVsbHlQYXJzZWQgaXMgdHJ1ZQogCiBURVNUIENPTVBMRVRFCmRpZmYgLS1naXQgYS9MYXlvdXRU
ZXN0cy9mYXN0L21lZGlhc3RyZWFtL01lZGlhU3RyZWFtLWFkZC10cmFja3MtdG8taW5hY3RpdmUt
c3RyZWFtLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2Zhc3QvbWVkaWFzdHJlYW0vTWVkaWFT
dHJlYW0tYWRkLXRyYWNrcy10by1pbmFjdGl2ZS1zdHJlYW0tZXhwZWN0ZWQudHh0CmluZGV4IDll
MTBmYzFmYTg0MDVjZTkwYWU2NjkwNzg5YzYyZTlmNzM3YzRiMTcuLmM3MGI1NmM3ZmUyOThjOTI0
MjI1ODY3NzA1YWU3YmRiYTZmZDc0NWYgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2Zhc3QvbWVk
aWFzdHJlYW0vTWVkaWFTdHJlYW0tYWRkLXRyYWNrcy10by1pbmFjdGl2ZS1zdHJlYW0tZXhwZWN0
ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL2Zhc3QvbWVkaWFzdHJlYW0vTWVkaWFTdHJlYW0tYWRk
LXRyYWNrcy10by1pbmFjdGl2ZS1zdHJlYW0tZXhwZWN0ZWQudHh0CkBAIC0zLDEwICszLDcgQEAg
VGVzdCBhZGRpbmcgdHJhY2tzIHRvIGluYWN0aXZlIE1lZGlhU3RyZWFtLgogT24gc3VjY2Vzcywg
eW91IHdpbGwgc2VlIGEgc2VyaWVzIG9mICJQQVNTIiBtZXNzYWdlcywgZm9sbG93ZWQgYnkgIlRF
U1QgQ09NUExFVEUiLgogCiAKLU1lZGlhU3RyZWFtIHdpdGhvdXQgdHJhY2tzIGNyZWF0ZWQuCi1Q
QVNTIHN0cmVhbTIuZ2V0QXVkaW9UcmFja3MoKS5sZW5ndGggaXMgMAotQWRkaW5nIHRyYWNrcyB0
byBpbmFjdGl2ZSBzdHJlYW0KLVBBU1Mgc3RyZWFtMi5nZXRBdWRpb1RyYWNrcygpLmxlbmd0aCBp
cyAxCitGQUlMIGdldFVzZXJNZWRpYSBmYWlsZWQ6UmVmZXJlbmNlRXJyb3I6IENhbid0IGZpbmQg
dmFyaWFibGU6IHdlYmtpdE1lZGlhU3RyZWFtCiBQQVNTIHN1Y2Nlc3NmdWxseVBhcnNlZCBpcyB0
cnVlCiAKIFRFU1QgQ09NUExFVEUKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3QvbWVkaWFz
dHJlYW0vTWVkaWFTdHJlYW0tY29uc3RydWN0LXdpdGgtZW5kZWQtdHJhY2tzLWV4cGVjdGVkLnR4
dCBiL0xheW91dFRlc3RzL2Zhc3QvbWVkaWFzdHJlYW0vTWVkaWFTdHJlYW0tY29uc3RydWN0LXdp
dGgtZW5kZWQtdHJhY2tzLWV4cGVjdGVkLnR4dAppbmRleCBmZDVlYjMzNjdjY2I4OGE1NmNkOTZm
MThjOGM2NDYzYmYyNjFmYWQzLi4zYzMxMDg4MzMyOGMxZTlkNmM1ZTQxNTE3MzFhZTY2ODdjZDI4
N2NkIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9mYXN0L21lZGlhc3RyZWFtL01lZGlhU3RyZWFt
LWNvbnN0cnVjdC13aXRoLWVuZGVkLXRyYWNrcy1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVz
dHMvZmFzdC9tZWRpYXN0cmVhbS9NZWRpYVN0cmVhbS1jb25zdHJ1Y3Qtd2l0aC1lbmRlZC10cmFj
a3MtZXhwZWN0ZWQudHh0CkBAIC03LDEyICs3LDcgQEAgUEFTUyB2aWRlb1RyYWNrLnJlYWR5U3Rh
dGUgaXMgbm90ICJlbmRlZCIKIFBBU1MgYXVkaW9UcmFjay5yZWFkeVN0YXRlIGlzIG5vdCAiZW5k
ZWQiCiBQQVNTIHZpZGVvVHJhY2sucmVhZHlTdGF0ZSBpcyAiZW5kZWQiCiBQQVNTIGF1ZGlvVHJh
Y2sucmVhZHlTdGF0ZSBpcyAiZW5kZWQiCi1QQVNTIHR5cGVvZiBuZXdNZWRpYVN0cmVhbS5hY3Rp
dmUgaXMgJ2Jvb2xlYW4nCi1QQVNTIG5ld01lZGlhU3RyZWFtLmFjdGl2ZSBpcyBmYWxzZQotUEFT
UyBtZWRpYVN0cmVhbS5pZCBpcyBub3QgbmV3TWVkaWFTdHJlYW0uaWQKLVBBU1MgdHlwZW9mIG1l
ZGlhU3RyZWFtQ29weS5hY3RpdmUgaXMgJ2Jvb2xlYW4nCi1QQVNTIG1lZGlhU3RyZWFtQ29weS5h
Y3RpdmUgaXMgZmFsc2UKLVBBU1MgbWVkaWFTdHJlYW1Db3B5LmlkIGlzIG5vdCBuZXdNZWRpYVN0
cmVhbS5pZAorRkFJTCBnZXRVc2VyTWVkaWEgZmFpbGVkOlJlZmVyZW5jZUVycm9yOiBDYW4ndCBm
aW5kIHZhcmlhYmxlOiB3ZWJraXRNZWRpYVN0cmVhbQogUEFTUyBzdWNjZXNzZnVsbHlQYXJzZWQg
aXMgdHJ1ZQogCiBURVNUIENPTVBMRVRFCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L21l
ZGlhc3RyZWFtL01lZGlhU3RyZWFtQ29uc3RydWN0b3ItZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVz
dHMvZmFzdC9tZWRpYXN0cmVhbS9NZWRpYVN0cmVhbUNvbnN0cnVjdG9yLWV4cGVjdGVkLnR4dApp
bmRleCBiNWYwNzg4Njg4MWU0ZWQ0YzBkN2I3MmYyZWVmZDcxMzY2MjQ4YTZmLi4xNDllOWFlZGQ5
YjY3NTE4NDQ4NDRlZGQ2MmNlNWIzZTY0YTZmMzNkIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9m
YXN0L21lZGlhc3RyZWFtL01lZGlhU3RyZWFtQ29uc3RydWN0b3ItZXhwZWN0ZWQudHh0CisrKyBi
L0xheW91dFRlc3RzL2Zhc3QvbWVkaWFzdHJlYW0vTWVkaWFTdHJlYW1Db25zdHJ1Y3Rvci1leHBl
Y3RlZC50eHQKQEAgLTYsNzggKzYsMTggQEAgT24gc3VjY2VzcywgeW91IHdpbGwgc2VlIGEgc2Vy
aWVzIG9mICJQQVNTIiBtZXNzYWdlcywgZm9sbG93ZWQgYnkgIlRFU1QgQ09NUExFVEUKIFBBU1Mg
R290IGxvY2FsIHN0cmVhbS4KIFBBU1MgbG9jYWxTdHJlYW0uZ2V0QXVkaW9UcmFja3MoKS5sZW5n
dGggaXMgMQogUEFTUyBsb2NhbFN0cmVhbS5nZXRWaWRlb1RyYWNrcygpLmxlbmd0aCBpcyAxCi1Q
QVNTIHR5cGVvZiB3ZWJraXRNZWRpYVN0cmVhbSA9PT0gJ29iamVjdCcgaXMgdHJ1ZQorRkFJTCB0
eXBlb2Ygd2Via2l0TWVkaWFTdHJlYW0gPT09ICdvYmplY3QnIHNob3VsZCBiZSB0cnVlLiBXYXMg
ZmFsc2UuCiBQQVNTIGNoZWNrSWRBdHRyaWJ1dGUobG9jYWxTdHJlYW0uaWQpIGlzIHRydWUKLVBB
U1MgbmV3IHdlYmtpdE1lZGlhU3RyZWFtKGRvY3VtZW50KSB0aHJldyBleGNlcHRpb24gVHlwZUVy
cm9yOiBUeXBlIGVycm9yLgotUEFTUyBuZXcgd2Via2l0TWVkaWFTdHJlYW0oW2RvY3VtZW50XSkg
dGhyZXcgZXhjZXB0aW9uIFR5cGVFcnJvcjogSW52YWxpZCBBcnJheSBlbGVtZW50IHR5cGUuCi1Q
QVNTIG5ldyB3ZWJraXRNZWRpYVN0cmVhbShbc3RyZWFtLmdldEF1ZGlvVHJhY2tzKClbMF0sIGRv
Y3VtZW50XSkgdGhyZXcgZXhjZXB0aW9uIFR5cGVFcnJvcjogSW52YWxpZCBBcnJheSBlbGVtZW50
IHR5cGUuCi1QQVNTIG5ldyB3ZWJraXRNZWRpYVN0cmVhbShbbnVsbF0pIHRocmV3IGV4Y2VwdGlv
biBUeXBlRXJyb3I6IEludmFsaWQgQXJyYXkgZWxlbWVudCB0eXBlLgotUEFTUyBuZXcgd2Via2l0
TWVkaWFTdHJlYW0oW3VuZGVmaW5lZF0pIHRocmV3IGV4Y2VwdGlvbiBUeXBlRXJyb3I6IEludmFs
aWQgQXJyYXkgZWxlbWVudCB0eXBlLgotUEFTUyBuZXcgd2Via2l0TWVkaWFTdHJlYW0obnVsbCkg
dGhyZXcgZXhjZXB0aW9uIFR5cGVFcnJvcjogVHlwZSBlcnJvci4KLVBBU1MgbmV3IHdlYmtpdE1l
ZGlhU3RyZWFtKHVuZGVmaW5lZCkgdGhyZXcgZXhjZXB0aW9uIFR5cGVFcnJvcjogVHlwZSBlcnJv
ci4KK1BBU1MgbmV3IHdlYmtpdE1lZGlhU3RyZWFtKGRvY3VtZW50KSB0aHJldyBleGNlcHRpb24g
UmVmZXJlbmNlRXJyb3I6IENhbid0IGZpbmQgdmFyaWFibGU6IHdlYmtpdE1lZGlhU3RyZWFtLgor
UEFTUyBuZXcgd2Via2l0TWVkaWFTdHJlYW0oW2RvY3VtZW50XSkgdGhyZXcgZXhjZXB0aW9uIFJl
ZmVyZW5jZUVycm9yOiBDYW4ndCBmaW5kIHZhcmlhYmxlOiB3ZWJraXRNZWRpYVN0cmVhbS4KK1BB
U1MgbmV3IHdlYmtpdE1lZGlhU3RyZWFtKFtzdHJlYW0uZ2V0QXVkaW9UcmFja3MoKVswXSwgZG9j
dW1lbnRdKSB0aHJldyBleGNlcHRpb24gUmVmZXJlbmNlRXJyb3I6IENhbid0IGZpbmQgdmFyaWFi
bGU6IHdlYmtpdE1lZGlhU3RyZWFtLgorUEFTUyBuZXcgd2Via2l0TWVkaWFTdHJlYW0oW251bGxd
KSB0aHJldyBleGNlcHRpb24gUmVmZXJlbmNlRXJyb3I6IENhbid0IGZpbmQgdmFyaWFibGU6IHdl
YmtpdE1lZGlhU3RyZWFtLgorUEFTUyBuZXcgd2Via2l0TWVkaWFTdHJlYW0oW3VuZGVmaW5lZF0p
IHRocmV3IGV4Y2VwdGlvbiBSZWZlcmVuY2VFcnJvcjogQ2FuJ3QgZmluZCB2YXJpYWJsZTogd2Vi
a2l0TWVkaWFTdHJlYW0uCitQQVNTIG5ldyB3ZWJraXRNZWRpYVN0cmVhbShudWxsKSB0aHJldyBl
eGNlcHRpb24gUmVmZXJlbmNlRXJyb3I6IENhbid0IGZpbmQgdmFyaWFibGU6IHdlYmtpdE1lZGlh
U3RyZWFtLgorUEFTUyBuZXcgd2Via2l0TWVkaWFTdHJlYW0odW5kZWZpbmVkKSB0aHJldyBleGNl
cHRpb24gUmVmZXJlbmNlRXJyb3I6IENhbid0IGZpbmQgdmFyaWFibGU6IHdlYmtpdE1lZGlhU3Ry
ZWFtLgogCiAqKiogdGVzdGluZyAibmV3IHdlYmtpdE1lZGlhU3RyZWFtKCkiCi1QQVNTIFN0cmVh
bSBjb25zdHJ1Y3RlZAotUEFTUyBbb2JqZWN0IHdlYmtpdE1lZGlhU3RyZWFtXSBpcyBub24tbnVs
bC4KLVBBU1MgW29iamVjdCB3ZWJraXRNZWRpYVN0cmVhbV0gaXMgZGVmaW5lZC4KLVBBU1MgbmV3
U3RyZWFtLmNvbnN0cnVjdG9yLnRvU3RyaW5nKCkgaXMgJ1tvYmplY3Qgd2Via2l0TWVkaWFTdHJl
YW1Db25zdHJ1Y3Rvcl0nCi1QQVNTIG5ld1N0cmVhbS5nZXRBdWRpb1RyYWNrcygpLmxlbmd0aCBp
cyBuQXVkaW8KLVBBU1MgbmV3U3RyZWFtLmdldFZpZGVvVHJhY2tzKCkubGVuZ3RoIGlzIG5WaWRl
bwotUEFTUyBjaGVja0lkQXR0cmlidXRlKG5ld1N0cmVhbS5pZCkgaXMgdHJ1ZQotCi0qKiogdGVz
dGluZyAibmV3IHdlYmtpdE1lZGlhU3RyZWFtKFtdKSIKLVBBU1MgU3RyZWFtIGNvbnN0cnVjdGVk
Ci1QQVNTIFtvYmplY3Qgd2Via2l0TWVkaWFTdHJlYW1dIGlzIG5vbi1udWxsLgotUEFTUyBbb2Jq
ZWN0IHdlYmtpdE1lZGlhU3RyZWFtXSBpcyBkZWZpbmVkLgotUEFTUyBuZXdTdHJlYW0uY29uc3Ry
dWN0b3IudG9TdHJpbmcoKSBpcyAnW29iamVjdCB3ZWJraXRNZWRpYVN0cmVhbUNvbnN0cnVjdG9y
XScKLVBBU1MgbmV3U3RyZWFtLmdldEF1ZGlvVHJhY2tzKCkubGVuZ3RoIGlzIG5BdWRpbwotUEFT
UyBuZXdTdHJlYW0uZ2V0VmlkZW9UcmFja3MoKS5sZW5ndGggaXMgblZpZGVvCi1QQVNTIGNoZWNr
SWRBdHRyaWJ1dGUobmV3U3RyZWFtLmlkKSBpcyB0cnVlCi0KLSoqKiB0ZXN0aW5nICJuZXcgd2Vi
a2l0TWVkaWFTdHJlYW0oc3RyZWFtKSIKLVBBU1MgU3RyZWFtIGNvbnN0cnVjdGVkCi1QQVNTIFtv
YmplY3Qgd2Via2l0TWVkaWFTdHJlYW1dIGlzIG5vbi1udWxsLgotUEFTUyBbb2JqZWN0IHdlYmtp
dE1lZGlhU3RyZWFtXSBpcyBkZWZpbmVkLgotUEFTUyBuZXdTdHJlYW0uY29uc3RydWN0b3IudG9T
dHJpbmcoKSBpcyAnW29iamVjdCB3ZWJraXRNZWRpYVN0cmVhbUNvbnN0cnVjdG9yXScKLVBBU1Mg
bmV3U3RyZWFtLmdldEF1ZGlvVHJhY2tzKCkubGVuZ3RoIGlzIG5BdWRpbwotUEFTUyBuZXdTdHJl
YW0uZ2V0VmlkZW9UcmFja3MoKS5sZW5ndGggaXMgblZpZGVvCi1QQVNTIGNoZWNrSWRBdHRyaWJ1
dGUobmV3U3RyZWFtLmlkKSBpcyB0cnVlCi0KLSoqKiB0ZXN0aW5nICJuZXcgd2Via2l0TWVkaWFT
dHJlYW0oW3N0cmVhbS5nZXRBdWRpb1RyYWNrcygpWzBdXSkiCi1QQVNTIFN0cmVhbSBjb25zdHJ1
Y3RlZAotUEFTUyBbb2JqZWN0IHdlYmtpdE1lZGlhU3RyZWFtXSBpcyBub24tbnVsbC4KLVBBU1Mg
W29iamVjdCB3ZWJraXRNZWRpYVN0cmVhbV0gaXMgZGVmaW5lZC4KLVBBU1MgbmV3U3RyZWFtLmNv
bnN0cnVjdG9yLnRvU3RyaW5nKCkgaXMgJ1tvYmplY3Qgd2Via2l0TWVkaWFTdHJlYW1Db25zdHJ1
Y3Rvcl0nCi1QQVNTIG5ld1N0cmVhbS5nZXRBdWRpb1RyYWNrcygpLmxlbmd0aCBpcyBuQXVkaW8K
LVBBU1MgbmV3U3RyZWFtLmdldFZpZGVvVHJhY2tzKCkubGVuZ3RoIGlzIG5WaWRlbwotUEFTUyBj
aGVja0lkQXR0cmlidXRlKG5ld1N0cmVhbS5pZCkgaXMgdHJ1ZQotCi0qKiogdGVzdGluZyAibmV3
IHdlYmtpdE1lZGlhU3RyZWFtKFtzdHJlYW0uZ2V0VmlkZW9UcmFja3MoKVswXV0pIgotUEFTUyBT
dHJlYW0gY29uc3RydWN0ZWQKLVBBU1MgW29iamVjdCB3ZWJraXRNZWRpYVN0cmVhbV0gaXMgbm9u
LW51bGwuCi1QQVNTIFtvYmplY3Qgd2Via2l0TWVkaWFTdHJlYW1dIGlzIGRlZmluZWQuCi1QQVNT
IG5ld1N0cmVhbS5jb25zdHJ1Y3Rvci50b1N0cmluZygpIGlzICdbb2JqZWN0IHdlYmtpdE1lZGlh
U3RyZWFtQ29uc3RydWN0b3JdJwotUEFTUyBuZXdTdHJlYW0uZ2V0QXVkaW9UcmFja3MoKS5sZW5n
dGggaXMgbkF1ZGlvCi1QQVNTIG5ld1N0cmVhbS5nZXRWaWRlb1RyYWNrcygpLmxlbmd0aCBpcyBu
VmlkZW8KLVBBU1MgY2hlY2tJZEF0dHJpYnV0ZShuZXdTdHJlYW0uaWQpIGlzIHRydWUKLQotKioq
IHRlc3RpbmcgIm5ldyB3ZWJraXRNZWRpYVN0cmVhbShbc3RyZWFtLmdldEF1ZGlvVHJhY2tzKClb
MF0sIHN0cmVhbS5nZXRWaWRlb1RyYWNrcygpWzBdXSkiCi1QQVNTIFN0cmVhbSBjb25zdHJ1Y3Rl
ZAotUEFTUyBbb2JqZWN0IHdlYmtpdE1lZGlhU3RyZWFtXSBpcyBub24tbnVsbC4KLVBBU1MgW29i
amVjdCB3ZWJraXRNZWRpYVN0cmVhbV0gaXMgZGVmaW5lZC4KLVBBU1MgbmV3U3RyZWFtLmNvbnN0
cnVjdG9yLnRvU3RyaW5nKCkgaXMgJ1tvYmplY3Qgd2Via2l0TWVkaWFTdHJlYW1Db25zdHJ1Y3Rv
cl0nCi1QQVNTIG5ld1N0cmVhbS5nZXRBdWRpb1RyYWNrcygpLmxlbmd0aCBpcyBuQXVkaW8KLVBB
U1MgbmV3U3RyZWFtLmdldFZpZGVvVHJhY2tzKCkubGVuZ3RoIGlzIG5WaWRlbwotUEFTUyBjaGVj
a0lkQXR0cmlidXRlKG5ld1N0cmVhbS5pZCkgaXMgdHJ1ZQotCi0qKiogdGVzdGluZyAibmV3IHdl
YmtpdE1lZGlhU3RyZWFtKFtzdHJlYW0uZ2V0VmlkZW9UcmFja3MoKVswXSwgc3RyZWFtLmdldEF1
ZGlvVHJhY2tzKClbMF0sIHN0cmVhbS5nZXRWaWRlb1RyYWNrcygpWzBdXSkiCi1QQVNTIFN0cmVh
bSBjb25zdHJ1Y3RlZAotUEFTUyBbb2JqZWN0IHdlYmtpdE1lZGlhU3RyZWFtXSBpcyBub24tbnVs
bC4KLVBBU1MgW29iamVjdCB3ZWJraXRNZWRpYVN0cmVhbV0gaXMgZGVmaW5lZC4KLVBBU1MgbmV3
U3RyZWFtLmNvbnN0cnVjdG9yLnRvU3RyaW5nKCkgaXMgJ1tvYmplY3Qgd2Via2l0TWVkaWFTdHJl
YW1Db25zdHJ1Y3Rvcl0nCi1QQVNTIG5ld1N0cmVhbS5nZXRBdWRpb1RyYWNrcygpLmxlbmd0aCBp
cyBuQXVkaW8KLVBBU1MgbmV3U3RyZWFtLmdldFZpZGVvVHJhY2tzKCkubGVuZ3RoIGlzIG5WaWRl
bwotUEFTUyBjaGVja0lkQXR0cmlidXRlKG5ld1N0cmVhbS5pZCkgaXMgdHJ1ZQorRkFJTCBnZXRV
c2VyTWVkaWEgZmFpbGVkOlJlZmVyZW5jZUVycm9yOiBDYW4ndCBmaW5kIHZhcmlhYmxlOiB3ZWJr
aXRNZWRpYVN0cmVhbQogUEFTUyBzdWNjZXNzZnVsbHlQYXJzZWQgaXMgdHJ1ZQogCiBURVNUIENP
TVBMRVRFCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L21lZGlhc3RyZWFtL2FyZ3VtZW50
LXR5cGVzLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2Zhc3QvbWVkaWFzdHJlYW0vYXJndW1l
bnQtdHlwZXMtZXhwZWN0ZWQudHh0CmluZGV4IDQyMjRkNDAyMDIyOTlmMDAyMTJlMjcyMWYyMWU0
MzNmY2Q1ZTI5MjQuLmI2YTFlY2ZkMDMwN2MwNzc5NjAyYjVkNjk3NDU5NTk4NmM2Y2ZhZDkgMTAw
NjQ0Ci0tLSBhL0xheW91dFRlc3RzL2Zhc3QvbWVkaWFzdHJlYW0vYXJndW1lbnQtdHlwZXMtZXhw
ZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL2Zhc3QvbWVkaWFzdHJlYW0vYXJndW1lbnQtdHlw
ZXMtZXhwZWN0ZWQudHh0CkBAIC0zMCwxOCArMzAsMTggQEAgUEFTUyBuYXZpZ2F0b3Iud2Via2l0
R2V0VXNlck1lZGlhKHt2aWRlbzogdHJ1ZX0sIHRydWUpIHRocmV3IGV4Y2VwdGlvbiBUeXBlRXJy
b3IKIFBBU1MgbmF2aWdhdG9yLndlYmtpdEdldFVzZXJNZWRpYSh7dmlkZW86IHRydWV9LCA0Mikg
dGhyZXcgZXhjZXB0aW9uIFR5cGVFcnJvcjogTm90IGVub3VnaCBhcmd1bWVudHMuCiBQQVNTIG5h
dmlnYXRvci53ZWJraXRHZXRVc2VyTWVkaWEoe3ZpZGVvOiB0cnVlfSwgSW5maW5pdHkpIHRocmV3
IGV4Y2VwdGlvbiBUeXBlRXJyb3I6IE5vdCBlbm91Z2ggYXJndW1lbnRzLgogUEFTUyBuYXZpZ2F0
b3Iud2Via2l0R2V0VXNlck1lZGlhKHt2aWRlbzogdHJ1ZX0sIC1JbmZpbml0eSkgdGhyZXcgZXhj
ZXB0aW9uIFR5cGVFcnJvcjogTm90IGVub3VnaCBhcmd1bWVudHMuCi1QQVNTIG5hdmlnYXRvci53
ZWJraXRHZXRVc2VyTWVkaWEoeyB9LCBlbXB0eUZ1bmN0aW9uLCBlbXB0eUZ1bmN0aW9uKSB0aHJl
dyBleGNlcHRpb24gRXJyb3I6IE5vdFN1cHBvcnRlZEVycm9yOiBET00gRXhjZXB0aW9uIDkuCitG
QUlMIG5hdmlnYXRvci53ZWJraXRHZXRVc2VyTWVkaWEoeyB9LCBlbXB0eUZ1bmN0aW9uLCBlbXB0
eUZ1bmN0aW9uKSBzaG91bGQgdGhyb3cgRXJyb3I6IE5vdFN1cHBvcnRlZEVycm9yOiBET00gRXhj
ZXB0aW9uIDkuIFdhcyB1bmRlZmluZWQuCiBQQVNTIG5hdmlnYXRvci53ZWJraXRHZXRVc2VyTWVk
aWEoe3ZpZGVvOiB0cnVlfSwgZW1wdHlGdW5jdGlvbiwgZW1wdHlGdW5jdGlvbikgZGlkIG5vdCB0
aHJvdyBleGNlcHRpb24uCi1QQVNTIG5hdmlnYXRvci53ZWJraXRHZXRVc2VyTWVkaWEoe3ZpZGVv
OiB0cnVlfSwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkKSB0aHJldyBleGNlcHRpb24gVHlwZUVy
cm9yOiBBcmd1bWVudCAzICgnZXJyb3JDYWxsYmFjaycpIHRvIE5hdmlnYXRvci53ZWJraXRHZXRV
c2VyTWVkaWEgbXVzdCBiZSBhIGZ1bmN0aW9uLgotUEFTUyBuYXZpZ2F0b3Iud2Via2l0R2V0VXNl
ck1lZGlhKHthdWRpbzp0cnVlLCB2aWRlbzp0cnVlfSwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVk
KSB0aHJldyBleGNlcHRpb24gVHlwZUVycm9yOiBBcmd1bWVudCAzICgnZXJyb3JDYWxsYmFjaycp
IHRvIE5hdmlnYXRvci53ZWJraXRHZXRVc2VyTWVkaWEgbXVzdCBiZSBhIGZ1bmN0aW9uLgotUEFT
UyBuYXZpZ2F0b3Iud2Via2l0R2V0VXNlck1lZGlhKHthdWRpbzp0cnVlfSwgZW1wdHlGdW5jdGlv
biwgdW5kZWZpbmVkKSB0aHJldyBleGNlcHRpb24gVHlwZUVycm9yOiBBcmd1bWVudCAzICgnZXJy
b3JDYWxsYmFjaycpIHRvIE5hdmlnYXRvci53ZWJraXRHZXRVc2VyTWVkaWEgbXVzdCBiZSBhIGZ1
bmN0aW9uLgotUEFTUyBuYXZpZ2F0b3Iud2Via2l0R2V0VXNlck1lZGlhKHt2aWRlbzogdHJ1ZX0s
IGVtcHR5RnVuY3Rpb24sICJ2aWRlbyIpIHRocmV3IGV4Y2VwdGlvbiBUeXBlRXJyb3I6IEFyZ3Vt
ZW50IDMgKCdlcnJvckNhbGxiYWNrJykgdG8gTmF2aWdhdG9yLndlYmtpdEdldFVzZXJNZWRpYSBt
dXN0IGJlIGEgZnVuY3Rpb24uCi1QQVNTIG5hdmlnYXRvci53ZWJraXRHZXRVc2VyTWVkaWEoe3Zp
ZGVvOiB0cnVlfSwgZW1wdHlGdW5jdGlvbiwgbnVsbCkgdGhyZXcgZXhjZXB0aW9uIFR5cGVFcnJv
cjogQXJndW1lbnQgMyAoJ2Vycm9yQ2FsbGJhY2snKSB0byBOYXZpZ2F0b3Iud2Via2l0R2V0VXNl
ck1lZGlhIG11c3QgYmUgYSBmdW5jdGlvbi4KLVBBU1MgbmF2aWdhdG9yLndlYmtpdEdldFVzZXJN
ZWRpYSh7dmlkZW86IHRydWV9LCBlbXB0eUZ1bmN0aW9uLCB7fSkgdGhyZXcgZXhjZXB0aW9uIFR5
cGVFcnJvcjogQXJndW1lbnQgMyAoJ2Vycm9yQ2FsbGJhY2snKSB0byBOYXZpZ2F0b3Iud2Via2l0
R2V0VXNlck1lZGlhIG11c3QgYmUgYSBmdW5jdGlvbi4KLVBBU1MgbmF2aWdhdG9yLndlYmtpdEdl
dFVzZXJNZWRpYSh7dmlkZW86IHRydWV9LCBlbXB0eUZ1bmN0aW9uLCB0cnVlKSB0aHJldyBleGNl
cHRpb24gVHlwZUVycm9yOiBBcmd1bWVudCAzICgnZXJyb3JDYWxsYmFjaycpIHRvIE5hdmlnYXRv
ci53ZWJraXRHZXRVc2VyTWVkaWEgbXVzdCBiZSBhIGZ1bmN0aW9uLgotUEFTUyBuYXZpZ2F0b3Iu
d2Via2l0R2V0VXNlck1lZGlhKHt2aWRlbzogdHJ1ZX0sIGVtcHR5RnVuY3Rpb24sIDQyKSB0aHJl
dyBleGNlcHRpb24gVHlwZUVycm9yOiBBcmd1bWVudCAzICgnZXJyb3JDYWxsYmFjaycpIHRvIE5h
dmlnYXRvci53ZWJraXRHZXRVc2VyTWVkaWEgbXVzdCBiZSBhIGZ1bmN0aW9uLgotUEFTUyBuYXZp
Z2F0b3Iud2Via2l0R2V0VXNlck1lZGlhKHt2aWRlbzogdHJ1ZX0sIGVtcHR5RnVuY3Rpb24sIElu
ZmluaXR5KSB0aHJldyBleGNlcHRpb24gVHlwZUVycm9yOiBBcmd1bWVudCAzICgnZXJyb3JDYWxs
YmFjaycpIHRvIE5hdmlnYXRvci53ZWJraXRHZXRVc2VyTWVkaWEgbXVzdCBiZSBhIGZ1bmN0aW9u
LgotUEFTUyBuYXZpZ2F0b3Iud2Via2l0R2V0VXNlck1lZGlhKHt2aWRlbzogdHJ1ZX0sIGVtcHR5
RnVuY3Rpb24sIC1JbmZpbml0eSkgdGhyZXcgZXhjZXB0aW9uIFR5cGVFcnJvcjogQXJndW1lbnQg
MyAoJ2Vycm9yQ2FsbGJhY2snKSB0byBOYXZpZ2F0b3Iud2Via2l0R2V0VXNlck1lZGlhIG11c3Qg
YmUgYSBmdW5jdGlvbi4KK0ZBSUwgbmF2aWdhdG9yLndlYmtpdEdldFVzZXJNZWRpYSh7dmlkZW86
IHRydWV9LCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQpIHNob3VsZCB0aHJvdyBUeXBlRXJyb3I6
IEFyZ3VtZW50IDMgKCdlcnJvckNhbGxiYWNrJykgdG8gTmF2aWdhdG9yLndlYmtpdEdldFVzZXJN
ZWRpYSBtdXN0IGJlIGEgZnVuY3Rpb24uIFRocmV3IGV4Y2VwdGlvbiBUeXBlRXJyb3I6IFRoaXJk
IGFyZ3VtZW50IG11c3QgYmUgYSBmdW5jdGlvbi4KK0ZBSUwgbmF2aWdhdG9yLndlYmtpdEdldFVz
ZXJNZWRpYSh7YXVkaW86dHJ1ZSwgdmlkZW86dHJ1ZX0sIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5l
ZCkgc2hvdWxkIHRocm93IFR5cGVFcnJvcjogQXJndW1lbnQgMyAoJ2Vycm9yQ2FsbGJhY2snKSB0
byBOYXZpZ2F0b3Iud2Via2l0R2V0VXNlck1lZGlhIG11c3QgYmUgYSBmdW5jdGlvbi4gVGhyZXcg
ZXhjZXB0aW9uIFR5cGVFcnJvcjogVGhpcmQgYXJndW1lbnQgbXVzdCBiZSBhIGZ1bmN0aW9uLgor
RkFJTCBuYXZpZ2F0b3Iud2Via2l0R2V0VXNlck1lZGlhKHthdWRpbzp0cnVlfSwgZW1wdHlGdW5j
dGlvbiwgdW5kZWZpbmVkKSBzaG91bGQgdGhyb3cgVHlwZUVycm9yOiBBcmd1bWVudCAzICgnZXJy
b3JDYWxsYmFjaycpIHRvIE5hdmlnYXRvci53ZWJraXRHZXRVc2VyTWVkaWEgbXVzdCBiZSBhIGZ1
bmN0aW9uLiBUaHJldyBleGNlcHRpb24gVHlwZUVycm9yOiBUaGlyZCBhcmd1bWVudCBtdXN0IGJl
IGEgZnVuY3Rpb24uCitGQUlMIG5hdmlnYXRvci53ZWJraXRHZXRVc2VyTWVkaWEoe3ZpZGVvOiB0
cnVlfSwgZW1wdHlGdW5jdGlvbiwgInZpZGVvIikgc2hvdWxkIHRocm93IFR5cGVFcnJvcjogQXJn
dW1lbnQgMyAoJ2Vycm9yQ2FsbGJhY2snKSB0byBOYXZpZ2F0b3Iud2Via2l0R2V0VXNlck1lZGlh
IG11c3QgYmUgYSBmdW5jdGlvbi4gVGhyZXcgZXhjZXB0aW9uIFR5cGVFcnJvcjogVGhpcmQgYXJn
dW1lbnQgbXVzdCBiZSBhIGZ1bmN0aW9uLgorRkFJTCBuYXZpZ2F0b3Iud2Via2l0R2V0VXNlck1l
ZGlhKHt2aWRlbzogdHJ1ZX0sIGVtcHR5RnVuY3Rpb24sIG51bGwpIHNob3VsZCB0aHJvdyBUeXBl
RXJyb3I6IEFyZ3VtZW50IDMgKCdlcnJvckNhbGxiYWNrJykgdG8gTmF2aWdhdG9yLndlYmtpdEdl
dFVzZXJNZWRpYSBtdXN0IGJlIGEgZnVuY3Rpb24uIFRocmV3IGV4Y2VwdGlvbiBUeXBlRXJyb3I6
IFRoaXJkIGFyZ3VtZW50IG11c3QgYmUgYSBmdW5jdGlvbi4KK0ZBSUwgbmF2aWdhdG9yLndlYmtp
dEdldFVzZXJNZWRpYSh7dmlkZW86IHRydWV9LCBlbXB0eUZ1bmN0aW9uLCB7fSkgc2hvdWxkIHRo
cm93IFR5cGVFcnJvcjogQXJndW1lbnQgMyAoJ2Vycm9yQ2FsbGJhY2snKSB0byBOYXZpZ2F0b3Iu
d2Via2l0R2V0VXNlck1lZGlhIG11c3QgYmUgYSBmdW5jdGlvbi4gVGhyZXcgZXhjZXB0aW9uIFR5
cGVFcnJvcjogVGhpcmQgYXJndW1lbnQgbXVzdCBiZSBhIGZ1bmN0aW9uLgorRkFJTCBuYXZpZ2F0
b3Iud2Via2l0R2V0VXNlck1lZGlhKHt2aWRlbzogdHJ1ZX0sIGVtcHR5RnVuY3Rpb24sIHRydWUp
IHNob3VsZCB0aHJvdyBUeXBlRXJyb3I6IEFyZ3VtZW50IDMgKCdlcnJvckNhbGxiYWNrJykgdG8g
TmF2aWdhdG9yLndlYmtpdEdldFVzZXJNZWRpYSBtdXN0IGJlIGEgZnVuY3Rpb24uIFRocmV3IGV4
Y2VwdGlvbiBUeXBlRXJyb3I6IFRoaXJkIGFyZ3VtZW50IG11c3QgYmUgYSBmdW5jdGlvbi4KK0ZB
SUwgbmF2aWdhdG9yLndlYmtpdEdldFVzZXJNZWRpYSh7dmlkZW86IHRydWV9LCBlbXB0eUZ1bmN0
aW9uLCA0Mikgc2hvdWxkIHRocm93IFR5cGVFcnJvcjogQXJndW1lbnQgMyAoJ2Vycm9yQ2FsbGJh
Y2snKSB0byBOYXZpZ2F0b3Iud2Via2l0R2V0VXNlck1lZGlhIG11c3QgYmUgYSBmdW5jdGlvbi4g
VGhyZXcgZXhjZXB0aW9uIFR5cGVFcnJvcjogVGhpcmQgYXJndW1lbnQgbXVzdCBiZSBhIGZ1bmN0
aW9uLgorRkFJTCBuYXZpZ2F0b3Iud2Via2l0R2V0VXNlck1lZGlhKHt2aWRlbzogdHJ1ZX0sIGVt
cHR5RnVuY3Rpb24sIEluZmluaXR5KSBzaG91bGQgdGhyb3cgVHlwZUVycm9yOiBBcmd1bWVudCAz
ICgnZXJyb3JDYWxsYmFjaycpIHRvIE5hdmlnYXRvci53ZWJraXRHZXRVc2VyTWVkaWEgbXVzdCBi
ZSBhIGZ1bmN0aW9uLiBUaHJldyBleGNlcHRpb24gVHlwZUVycm9yOiBUaGlyZCBhcmd1bWVudCBt
dXN0IGJlIGEgZnVuY3Rpb24uCitGQUlMIG5hdmlnYXRvci53ZWJraXRHZXRVc2VyTWVkaWEoe3Zp
ZGVvOiB0cnVlfSwgZW1wdHlGdW5jdGlvbiwgLUluZmluaXR5KSBzaG91bGQgdGhyb3cgVHlwZUVy
cm9yOiBBcmd1bWVudCAzICgnZXJyb3JDYWxsYmFjaycpIHRvIE5hdmlnYXRvci53ZWJraXRHZXRV
c2VyTWVkaWEgbXVzdCBiZSBhIGZ1bmN0aW9uLiBUaHJldyBleGNlcHRpb24gVHlwZUVycm9yOiBU
aGlyZCBhcmd1bWVudCBtdXN0IGJlIGEgZnVuY3Rpb24uCiBQQVNTIHN1Y2Nlc3NmdWxseVBhcnNl
ZCBpcyB0cnVlCiAKIFRFU1QgQ09NUExFVEUKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3Qv
bWVkaWFzdHJlYW0vZ2V0dXNlcm1lZGlhLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2Zhc3Qv
bWVkaWFzdHJlYW0vZ2V0dXNlcm1lZGlhLWV4cGVjdGVkLnR4dAppbmRleCBkY2E1ZmI5NjFjZjZl
YjVmNDQ1YWI0NTBhYTBiM2U1MmQ0MTA3MDhhLi44YWZmMzk3OTk1YTVmNzZkNjU3NDA4YTE1ZTMy
NTIxYTBmMGIyMjVlIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9mYXN0L21lZGlhc3RyZWFtL2dl
dHVzZXJtZWRpYS1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC9tZWRpYXN0cmVh
bS9nZXR1c2VybWVkaWEtZXhwZWN0ZWQudHh0CkBAIC0zLDMzICszLDM0IEBAIFRlc3RzIHdlYmtp
dEdldFVzZXJNZWRpYS4KIE9uIHN1Y2Nlc3MsIHlvdSB3aWxsIHNlZSBhIHNlcmllcyBvZiAiUEFT
UyIgbWVzc2FnZXMsIGZvbGxvd2VkIGJ5ICJURVNUIENPTVBMRVRFIi4KIAogCi1QQVNTIG5hdmln
YXRvci53ZWJraXRHZXRVc2VyTWVkaWEoe2F1ZGlvOmZhbHNlLCB2aWRlbzpmYWxzZX0sIGVycm9y
LCBlcnJvcik7IHRocmV3IGV4Y2VwdGlvbiBFcnJvcjogTm90U3VwcG9ydGVkRXJyb3I6IERPTSBF
eGNlcHRpb24gOS4KLVBBU1MgbmF2aWdhdG9yLndlYmtpdEdldFVzZXJNZWRpYSh7YXVkaW86ZmFs
c2UsIHZpZGVvOmZhbHNlfSwgZXJyb3IsIG51bGwpOyB0aHJldyBleGNlcHRpb24gVHlwZUVycm9y
OiBBcmd1bWVudCAzICgnZXJyb3JDYWxsYmFjaycpIHRvIE5hdmlnYXRvci53ZWJraXRHZXRVc2Vy
TWVkaWEgbXVzdCBiZSBhIGZ1bmN0aW9uLgorUEFTUyBuYXZpZ2F0b3Iud2Via2l0R2V0VXNlck1l
ZGlhKHthdWRpbzpmYWxzZSwgdmlkZW86ZmFsc2V9LCBlcnJvciwgZXhwZWN0ZWRFcnJvcik7IGRp
ZCBub3QgdGhyb3cgZXhjZXB0aW9uLgorUEFTUyBuYXZpZ2F0b3Iud2Via2l0R2V0VXNlck1lZGlh
KHthdWRpbzpmYWxzZSwgdmlkZW86ZmFsc2V9LCBlcnJvciwgbnVsbCk7IHRocmV3IGV4Y2VwdGlv
biBUeXBlRXJyb3I6IFRoaXJkIGFyZ3VtZW50IG11c3QgYmUgYSBmdW5jdGlvbi4KIFBBU1MgbmF2
aWdhdG9yLndlYmtpdEdldFVzZXJNZWRpYSh7YXVkaW86dHJ1ZX0sIGdvdFN0cmVhbTEsIGVycm9y
KTsgZGlkIG5vdCB0aHJvdyBleGNlcHRpb24uCitQQVNTIEVycm9yIGNhbGxiYWNrIGNhbGxlZC4K
IFBBU1MgU3RyZWFtIGdlbmVyYXRlZC4KIFBBU1Mgc3RyZWFtLmdldEF1ZGlvVHJhY2tzKCkubGVu
Z3RoIGlzIDEKIFBBU1Mgc3RyZWFtLmdldFZpZGVvVHJhY2tzKCkubGVuZ3RoIGlzIDAKLVBBU1Mg
bmF2aWdhdG9yLndlYmtpdEdldFVzZXJNZWRpYSh7dmlkZW86dHJ1ZX0sIGdvdFN0cmVhbTIsIG51
bGwpOyB0aHJldyBleGNlcHRpb24gVHlwZUVycm9yOiBBcmd1bWVudCAzICgnZXJyb3JDYWxsYmFj
aycpIHRvIE5hdmlnYXRvci53ZWJraXRHZXRVc2VyTWVkaWEgbXVzdCBiZSBhIGZ1bmN0aW9uLgor
UEFTUyBuYXZpZ2F0b3Iud2Via2l0R2V0VXNlck1lZGlhKHt2aWRlbzp0cnVlfSwgZ290U3RyZWFt
MiwgbnVsbCk7IHRocmV3IGV4Y2VwdGlvbiBUeXBlRXJyb3I6IFRoaXJkIGFyZ3VtZW50IG11c3Qg
YmUgYSBmdW5jdGlvbi4KIFBBU1MgbmF2aWdhdG9yLndlYmtpdEdldFVzZXJNZWRpYSh7dmlkZW86
dHJ1ZX0sIGdvdFN0cmVhbTIsIGVycm9yKTsgZGlkIG5vdCB0aHJvdyBleGNlcHRpb24uCiBQQVNT
IFN0cmVhbSBnZW5lcmF0ZWQuCiBQQVNTIHN0cmVhbS5nZXRBdWRpb1RyYWNrcygpLmxlbmd0aCBp
cyAwCiBQQVNTIHN0cmVhbS5nZXRWaWRlb1RyYWNrcygpLmxlbmd0aCBpcyAxCi1QQVNTIG5hdmln
YXRvci53ZWJraXRHZXRVc2VyTWVkaWEoe2F1ZGlvOnRydWUsIHZpZGVvOnRydWV9LCBnb3RTdHJl
YW0zLCBudWxsKTsgdGhyZXcgZXhjZXB0aW9uIFR5cGVFcnJvcjogQXJndW1lbnQgMyAoJ2Vycm9y
Q2FsbGJhY2snKSB0byBOYXZpZ2F0b3Iud2Via2l0R2V0VXNlck1lZGlhIG11c3QgYmUgYSBmdW5j
dGlvbi4KK1BBU1MgbmF2aWdhdG9yLndlYmtpdEdldFVzZXJNZWRpYSh7YXVkaW86dHJ1ZSwgdmlk
ZW86dHJ1ZX0sIGdvdFN0cmVhbTMsIG51bGwpOyB0aHJldyBleGNlcHRpb24gVHlwZUVycm9yOiBU
aGlyZCBhcmd1bWVudCBtdXN0IGJlIGEgZnVuY3Rpb24uCiBQQVNTIG5hdmlnYXRvci53ZWJraXRH
ZXRVc2VyTWVkaWEoe2F1ZGlvOnRydWUsIHZpZGVvOnRydWV9LCBnb3RTdHJlYW0zLCBlcnJvcik7
IGRpZCBub3QgdGhyb3cgZXhjZXB0aW9uLgogUEFTUyBTdHJlYW0gZ2VuZXJhdGVkLgogUEFTUyBz
dHJlYW0uZ2V0QXVkaW9UcmFja3MoKS5sZW5ndGggaXMgMQogUEFTUyBzdHJlYW0uZ2V0VmlkZW9U
cmFja3MoKS5sZW5ndGggaXMgMQotUEFTUyBuYXZpZ2F0b3Iud2Via2l0R2V0VXNlck1lZGlhKHth
dWRpbzp7bWFuZGF0b3J5Ont9LCBvcHRpb25hbDpbXX0sIHZpZGVvOnRydWV9LCBnb3RTdHJlYW00
LCBudWxsKTsgdGhyZXcgZXhjZXB0aW9uIFR5cGVFcnJvcjogQXJndW1lbnQgMyAoJ2Vycm9yQ2Fs
bGJhY2snKSB0byBOYXZpZ2F0b3Iud2Via2l0R2V0VXNlck1lZGlhIG11c3QgYmUgYSBmdW5jdGlv
bi4KK1BBU1MgbmF2aWdhdG9yLndlYmtpdEdldFVzZXJNZWRpYSh7YXVkaW86e21hbmRhdG9yeTp7
fSwgb3B0aW9uYWw6W119LCB2aWRlbzp0cnVlfSwgZ290U3RyZWFtNCwgbnVsbCk7IHRocmV3IGV4
Y2VwdGlvbiBUeXBlRXJyb3I6IFRoaXJkIGFyZ3VtZW50IG11c3QgYmUgYSBmdW5jdGlvbi4KIFBB
U1MgbmF2aWdhdG9yLndlYmtpdEdldFVzZXJNZWRpYSh7YXVkaW86e21hbmRhdG9yeTp7fSwgb3B0
aW9uYWw6W119LCB2aWRlbzp0cnVlfSwgZ290U3RyZWFtNCwgZXJyb3IpOyBkaWQgbm90IHRocm93
IGV4Y2VwdGlvbi4KIFBBU1MgU3RyZWFtIGdlbmVyYXRlZC4KIFBBU1Mgc3RyZWFtLmdldEF1ZGlv
VHJhY2tzKCkubGVuZ3RoIGlzIDEKIFBBU1Mgc3RyZWFtLmdldFZpZGVvVHJhY2tzKCkubGVuZ3Ro
IGlzIDEKLVBBU1MgbmF2aWdhdG9yLndlYmtpdEdldFVzZXJNZWRpYSh7YXVkaW86e21hbmRhdG9y
eTp7J3ZhbGlkX2J1dF91bnN1cHBvcnRlZF8xJzowfSwgb3B0aW9uYWw6W119LCB2aWRlbzp0cnVl
fSwgZ290U3RyZWFtSW5FcnJvciwgbnVsbCk7IHRocmV3IGV4Y2VwdGlvbiBUeXBlRXJyb3I6IEFy
Z3VtZW50IDMgKCdlcnJvckNhbGxiYWNrJykgdG8gTmF2aWdhdG9yLndlYmtpdEdldFVzZXJNZWRp
YSBtdXN0IGJlIGEgZnVuY3Rpb24uCitQQVNTIG5hdmlnYXRvci53ZWJraXRHZXRVc2VyTWVkaWEo
e2F1ZGlvOnttYW5kYXRvcnk6eyd2YWxpZF9idXRfdW5zdXBwb3J0ZWRfMSc6MH0sIG9wdGlvbmFs
OltdfSwgdmlkZW86dHJ1ZX0sIGdvdFN0cmVhbUluRXJyb3IsIG51bGwpOyB0aHJldyBleGNlcHRp
b24gVHlwZUVycm9yOiBUaGlyZCBhcmd1bWVudCBtdXN0IGJlIGEgZnVuY3Rpb24uCiBQQVNTIG5h
dmlnYXRvci53ZWJraXRHZXRVc2VyTWVkaWEoe2F1ZGlvOnttYW5kYXRvcnk6eyd2YWxpZF9idXRf
dW5zdXBwb3J0ZWRfMSc6MH0sIG9wdGlvbmFsOltdfSwgdmlkZW86dHJ1ZX0sIGdvdFN0cmVhbUlu
RXJyb3IsIGVycm9yMSk7IGRpZCBub3QgdGhyb3cgZXhjZXB0aW9uLgogUEFTUyBFcnJvciBjYWxs
YmFjayBjYWxsZWQuCiBQQVNTIGVycm9yQXJnLm5hbWUgaXMgIkNvbnN0cmFpbnROb3RTYXRpc2Zp
ZWRFcnJvciIKIFBBU1MgZXJyb3JBcmcuY29uc3RyYWludE5hbWUgaXMgInZhbGlkX2J1dF91bnN1
cHBvcnRlZF8xIgotUEFTUyBuYXZpZ2F0b3Iud2Via2l0R2V0VXNlck1lZGlhKHthdWRpbzp7bWFu
ZGF0b3J5OnsndmFsaWRfYW5kX3N1cHBvcnRlZF8xJzoxfSwgb3B0aW9uYWw6W3sndmFsaWRfYnV0
X3Vuc3VwcG9ydGVkXzEnOjB9XX0sIHZpZGVvOnRydWV9LCBnb3RTdHJlYW01LCAwKTsgdGhyZXcg
ZXhjZXB0aW9uIFR5cGVFcnJvcjogQXJndW1lbnQgMyAoJ2Vycm9yQ2FsbGJhY2snKSB0byBOYXZp
Z2F0b3Iud2Via2l0R2V0VXNlck1lZGlhIG11c3QgYmUgYSBmdW5jdGlvbi4KK1BBU1MgbmF2aWdh
dG9yLndlYmtpdEdldFVzZXJNZWRpYSh7YXVkaW86e21hbmRhdG9yeTp7J3ZhbGlkX2FuZF9zdXBw
b3J0ZWRfMSc6MX0sIG9wdGlvbmFsOlt7J3ZhbGlkX2J1dF91bnN1cHBvcnRlZF8xJzowfV19LCB2
aWRlbzp0cnVlfSwgZ290U3RyZWFtNSwgMCk7IHRocmV3IGV4Y2VwdGlvbiBUeXBlRXJyb3I6IFRo
aXJkIGFyZ3VtZW50IG11c3QgYmUgYSBmdW5jdGlvbi4KIFBBU1MgbmF2aWdhdG9yLndlYmtpdEdl
dFVzZXJNZWRpYSh7YXVkaW86e21hbmRhdG9yeTp7J3ZhbGlkX2FuZF9zdXBwb3J0ZWRfMSc6MX0s
IG9wdGlvbmFsOlt7J3ZhbGlkX2J1dF91bnN1cHBvcnRlZF8xJzowfV19LCB2aWRlbzp0cnVlfSwg
Z290U3RyZWFtNSwgZXJyb3IpOyBkaWQgbm90IHRocm93IGV4Y2VwdGlvbi4KIFBBU1MgU3RyZWFt
IGdlbmVyYXRlZC4KIFBBU1Mgc3RyZWFtLmdldEF1ZGlvVHJhY2tzKCkubGVuZ3RoIGlzIDEKZGlm
ZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3QvbWVkaWFzdHJlYW0vZ2V0dXNlcm1lZGlhLmh0bWwg
Yi9MYXlvdXRUZXN0cy9mYXN0L21lZGlhc3RyZWFtL2dldHVzZXJtZWRpYS5odG1sCmluZGV4IDEz
ZmFlMTMwNjcyYmQxNTQ0ZWI3YmE2YzJlZTFiMWQ4NDdhNDlkNTEuLmUzMzgzOWYxZTQ3MzlmYmI5
NzI2ZjEzMDA3NzQ4YjE1OGQ0ZDA5MjggMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2Zhc3QvbWVk
aWFzdHJlYW0vZ2V0dXNlcm1lZGlhLmh0bWwKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC9tZWRpYXN0
cmVhbS9nZXR1c2VybWVkaWEuaHRtbApAQCAtMjQsNiArMjQsMTAgQEAKICAgICAgICAgICAgICAg
ICBmaW5pc2hKU1Rlc3QoKTsKICAgICAgICAgICAgIH0KIAorICAgICAgICAgICAgZnVuY3Rpb24g
ZXhwZWN0ZWRFcnJvcigpIHsKKyAgICAgICAgICAgICAgICB0ZXN0UGFzc2VkKCdFcnJvciBjYWxs
YmFjayBjYWxsZWQuJyk7CisgICAgICAgICAgICB9CisKICAgICAgICAgICAgIGZ1bmN0aW9uIGdv
dFN0cmVhbUluRXJyb3IocykgewogICAgICAgICAgICAgICAgIHRlc3RGYWlsZWQoJ1N0cmVhbSBn
ZW5lcmF0ZWQuJyk7CiAgICAgICAgICAgICAgICAgZmluaXNoSlNUZXN0KCk7CkBAIC04Nyw3ICs5
MSw3IEBACiAgICAgICAgICAgICAgICAgc2hvdWxkTm90VGhyb3coIm5hdmlnYXRvci53ZWJraXRH
ZXRVc2VyTWVkaWEoe3ZpZGVvOnRydWV9LCBnb3RTdHJlYW0yLCBlcnJvcik7IikKICAgICAgICAg
ICAgIH0KIAotICAgICAgICAgICAgc2hvdWxkVGhyb3coIm5hdmlnYXRvci53ZWJraXRHZXRVc2Vy
TWVkaWEoe2F1ZGlvOmZhbHNlLCB2aWRlbzpmYWxzZX0sIGVycm9yLCBlcnJvcik7IikKKyAgICAg
ICAgICAgIHNob3VsZE5vdFRocm93KCJuYXZpZ2F0b3Iud2Via2l0R2V0VXNlck1lZGlhKHthdWRp
bzpmYWxzZSwgdmlkZW86ZmFsc2V9LCBlcnJvciwgZXhwZWN0ZWRFcnJvcik7IikKICAgICAgICAg
ICAgIHNob3VsZFRocm93KCJuYXZpZ2F0b3Iud2Via2l0R2V0VXNlck1lZGlhKHthdWRpbzpmYWxz
ZSwgdmlkZW86ZmFsc2V9LCBlcnJvciwgbnVsbCk7IikKIAogICAgICAgICAgICAgc2V0VXNlck1l
ZGlhUGVybWlzc2lvbih0cnVlKTsK
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>262889</attachid>
            <date>2015-10-12 08:58:51 -0700</date>
            <delta_ts>2015-10-12 10:13:25 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-149499-20151012125814.patch</filename>
            <type>text/plain</type>
            <size>61216</size>
            <attacher name="youenn fablet">youennf</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTkwODUwCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggYjhmNGI2M2RiZjcwYjFk
NGE1NzA1ODQyYmM1ZDhlZGZjYjAwYmM0Zi4uNzkyOGU5ZGNjNmZmNDJjNDVkYmIyYTQxZDk4OTQ2
NTVlMGQ0Y2ZlNCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDY0IEBACisyMDE1LTEwLTEyICBZb3Vl
bm4gRmFibGV0ICA8eW91ZW5uLmZhYmxldEBjcmYuY2Fub24uZnI+CisKKyAgICAgICAgTW92ZSB3
ZWJraXRHZXRVc2VyTWVkaWEgdG8gSlMgQnVpbHRpbgorICAgICAgICBodHRwczovL2J1Z3Mud2Vi
a2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTQ5NDk5CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9C
T0RZIChPT1BTISkuCisKKyAgICAgICAgSW1wbGVtZW50ZWQgd2Via2l0R2V0VXNlck1lZGlhIGFz
IGEgSlNCdWlsdGluIHdyYXBwZXIgYXJvdW5kIG5hdmlnYXRvci5tZWRpYURldmljZXMuZ2V0VXNl
ck1lZGlhLgorICAgICAgICBBZGRlZCBhIHByaXZhdGUgc3ltYm9sIHRvIHJlZmVyIHRvIG5hdmln
YXRvci5NZWRpYURldmljZXMuZ2V0VXNlck1lZGlhIHVzZWQgYnkgdGhlIEpTIGJ1aWx0aW4gd3Jh
cHBlci4KKworICAgICAgICBSZW1vdmVkIGNwcCBiYXNlZCB2ZXJzaW9uLgorCisgICAgICAgIFVw
ZGF0ZWQgY29kZSBnZW5lcmF0b3IgdG8gc3VwcG9ydCBKU0J1aWx0aW4gZm9yIHBhcnRpYWwgaW50
ZXJmYWNlczogdGhlIGpzIGZpbGUKKyAgICAgICAgaXMgc3RpbGwgbmFtZWQgdGhlIHNhbWUgYXMg
dGhlIElETCBmaWxlIChleGNlcHQgZm9yIHRoZSBqcyBleHRlbnNpb24pIGNvbnRhaW5pbmcgdGhl
IHBhcnRpYWwgaW50ZXJmYWNlIGRlZmluaXRpb24uCisgICAgICAgIFRoaXMgYWxsb3dzIGNsZWFu
ZXIgY29kZSBoYW5kbGluZyAoa2VlcGluZyBmZWF0dXJlIGNvbmRpdGlvbmFsIGUuZy4pCisKKyAg
ICAgICAgVGhlIGpzIGJ1aWx0aW5nIGltcGxlbWVudGF0aW9uIGNoZWNrcyBmb3IgYXJndW1lbnQg
YnV0IGRvZXMgbm90IHJhaXNlIGV4Y2VwdGlvbiB3aGVuIHRoZSByZXF1ZXN0IGlzIG5vdCBzdXBw
b3J0ZWQuCisgICAgICAgIFRoZSBlcnJvciBjYWxsYmFjayBpcyBjYWxsZWQgaW5zdGVhZCwgaW4g
YW4gYXN5bmNocm9ub3VzIGZhc2hpb24uCisgICAgICAgIFRoZSBqcyBidWlsdGluIGltcGxlbWVu
dGF0aW9uIGRvZXMgbm90IGNoZWNrIGZpcnN0IHRoYXQgaXQgaXMgY2FsbGVkIG9uIG5hdmlnYXRv
ciwgY29udHJhcnkgdG8gdGhlIGNwcCBpbXBsZW1lbnRhdGlvbi4KKyAgICAgICAgVGhpcyBpcyBk
b25lIGFmdGVyd2FyZHMgd2hlbiBjYWxsaW5nIG5hdmlnYXRvci5NZWRpYURldmljZXMuQGdldFVz
ZXJNZWRpYS4KKworICAgICAgICBDb3ZlcmVkIGJ5IGV4aXN0aW5nIGFuZCBtb2RpZmllZCB0ZXN0
cy4KKworICAgICAgICAqIENNYWtlTGlzdHMudHh0OgorICAgICAgICAqIERlcml2ZWRTb3VyY2Vz
Lm1ha2U6CisgICAgICAgICogTW9kdWxlcy9tZWRpYXN0cmVhbS9OYXZpZ2F0b3JVc2VyTWVkaWEu
aWRsOgorICAgICAgICAqIE1vZHVsZXMvbWVkaWFzdHJlYW0vTmF2aWdhdG9yVXNlck1lZGlhLmpz
OgorICAgICAgICAod2Via2l0R2V0VXNlck1lZGlhKToKKyAgICAgICAgKiBNb2R1bGVzL21lZGlh
c3RyZWFtL05hdmlnYXRvclVzZXJNZWRpYUVycm9yQ2FsbGJhY2suaDogUmVtb3ZlZC4KKyAgICAg
ICAgKiBNb2R1bGVzL21lZGlhc3RyZWFtL05hdmlnYXRvclVzZXJNZWRpYUVycm9yQ2FsbGJhY2su
aWRsOiBSZW1vdmVkLgorICAgICAgICAqIE1vZHVsZXMvbWVkaWFzdHJlYW0vTmF2aWdhdG9yVXNl
ck1lZGlhU3VjY2Vzc0NhbGxiYWNrLmg6IFJlbW92ZWQuCisgICAgICAgICogTW9kdWxlcy9tZWRp
YXN0cmVhbS9OYXZpZ2F0b3JVc2VyTWVkaWFTdWNjZXNzQ2FsbGJhY2suaWRsOiBSZW1vdmVkLgor
ICAgICAgICAqIE1vZHVsZXMvbWVkaWFzdHJlYW0vVXNlck1lZGlhUmVxdWVzdC5jcHA6CisgICAg
ICAgICogTW9kdWxlcy9tZWRpYXN0cmVhbS9Vc2VyTWVkaWFSZXF1ZXN0Lmg6CisgICAgICAgICog
V2ViQ29yZS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qOgorICAgICAgICAqIGJpbmRpbmdzL2pz
L0pTRE9NV2luZG93QmFzZS5jcHA6CisgICAgICAgIChXZWJDb3JlOjpKU0RPTVdpbmRvd0Jhc2U6
OmZpbmlzaENyZWF0aW9uKToKKyAgICAgICAgKiBiaW5kaW5ncy9qcy9KU05hdmlnYXRvckN1c3Rv
bS5jcHA6CisgICAgICAgICogYmluZGluZ3MvanMvV2ViQ29yZUJ1aWx0aW5OYW1lcy5oOgorICAg
ICAgICAqIGJpbmRpbmdzL2pzL1dlYkNvcmVKU0J1aWx0aW5zLmNwcDoKKyAgICAgICAgKiBiaW5k
aW5ncy9qcy9XZWJDb3JlSlNCdWlsdGlucy5oOgorICAgICAgICAoV2ViQ29yZTo6SlNCdWlsdGlu
RnVuY3Rpb25zOjpKU0J1aWx0aW5GdW5jdGlvbnMpOgorICAgICAgICAoV2ViQ29yZTo6SlNCdWls
dGluRnVuY3Rpb25zOjpuYXZpZ2F0b3JVc2VyTWVkaWFCdWlsdGlucyk6CisgICAgICAgICogYmlu
ZGluZ3Mvc2NyaXB0cy9Db2RlR2VuZXJhdG9ySlMucG06CisgICAgICAgIChHZXRBdHRyaWJ1dGVH
ZXR0ZXJOYW1lKToKKyAgICAgICAgKEdldEF0dHJpYnV0ZVNldHRlck5hbWUpOgorICAgICAgICAo
R2V0RnVuY3Rpb25OYW1lKToKKyAgICAgICAgKEdlbmVyYXRlQ29uc3RydWN0b3JIZWxwZXJNZXRo
b2RzKToKKyAgICAgICAgKEdldEpTQnVpbHRpbkZ1bmN0aW9uTmFtZSk6CisgICAgICAgIChHZXRK
U0J1aWx0aW5GdW5jdGlvbk5hbWVGcm9tU3RyaW5nKToKKyAgICAgICAgKEdldEpTQnVpbHRpblNj
b3BlTmFtZSk6CisgICAgICAgIChBZGRKU0J1aWx0aW5JbmNsdWRlc0lmTmVlZGVkKToKKyAgICAg
ICAgKEdldFNwZWNpYWxBY2Nlc3NvckZ1bmN0aW9uRm9yVHlwZSk6IERlbGV0ZWQuCisgICAgICAg
ICogYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdEludGVyZmFjZS5jcHA6CisgICAgICAg
ICogYmluZGluZ3Mvc2NyaXB0cy90ZXN0L09iakMvRE9NVGVzdEludGVyZmFjZS5oOgorICAgICAg
ICAqIGJpbmRpbmdzL3NjcmlwdHMvdGVzdC9PYmpDL0RPTVRlc3RJbnRlcmZhY2UubW06CisgICAg
ICAgICgtW0RPTVRlc3RJbnRlcmZhY2UgYnVpbHRpbkF0dHJpYnV0ZV0pOgorICAgICAgICAoLVtE
T01UZXN0SW50ZXJmYWNlIHNldEJ1aWx0aW5BdHRyaWJ1dGU6XSk6CisgICAgICAgICgtW0RPTVRl
c3RJbnRlcmZhY2UgYnVpbHRpbkZ1bmN0aW9uXSk6CisgICAgICAgICogYmluZGluZ3Mvc2NyaXB0
cy90ZXN0L1Rlc3RTdXBwbGVtZW50YWwuaWRsOgorCiAyMDE1LTEwLTExICBCcmlhbiBCdXJnICA8
YmJ1cmdAYXBwbGUuY29tPgogCiAgICAgICAgIEFkZCBtaXNzaW5nIGJ1aWx0aW5zIGZpbGVzIHRv
IHRoZSBYY29kZSBwcm9qZWN0cwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvQ01ha2VMaXN0
cy50eHQgYi9Tb3VyY2UvV2ViQ29yZS9DTWFrZUxpc3RzLnR4dAppbmRleCA4MjQwODc0YmMzMjUw
ZGNjOTdiMDlmZDc0YWMwYzhlZDAzNmQyMGM1Li5jZDMyODlhZDNkNTlkNjk2ZjQwZmZlZmFjNGE1
NTlmODIzZDE2MmViIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9DTWFrZUxpc3RzLnR4dAor
KysgYi9Tb3VyY2UvV2ViQ29yZS9DTWFrZUxpc3RzLnR4dApAQCAtMjQxLDggKzI0MSw2IEBAIHNl
dChXZWJDb3JlX05PTl9TVkdfSURMX0ZJTEVTCiAgICAgTW9kdWxlcy9tZWRpYXN0cmVhbS9OYXZp
Z2F0b3JNZWRpYURldmljZXMuaWRsCiAgICAgTW9kdWxlcy9tZWRpYXN0cmVhbS9OYXZpZ2F0b3JV
c2VyTWVkaWEuaWRsCiAgICAgTW9kdWxlcy9tZWRpYXN0cmVhbS9OYXZpZ2F0b3JVc2VyTWVkaWFF
cnJvci5pZGwKLSAgICBNb2R1bGVzL21lZGlhc3RyZWFtL05hdmlnYXRvclVzZXJNZWRpYUVycm9y
Q2FsbGJhY2suaWRsCi0gICAgTW9kdWxlcy9tZWRpYXN0cmVhbS9OYXZpZ2F0b3JVc2VyTWVkaWFT
dWNjZXNzQ2FsbGJhY2suaWRsCiAgICAgTW9kdWxlcy9tZWRpYXN0cmVhbS9SVENDb25maWd1cmF0
aW9uLmlkbAogICAgIE1vZHVsZXMvbWVkaWFzdHJlYW0vUlRDRFRNRlNlbmRlci5pZGwKICAgICBN
b2R1bGVzL21lZGlhc3RyZWFtL1JUQ0RUTUZUb25lQ2hhbmdlRXZlbnQuaWRsCkBAIC0xMTk0LDcg
KzExOTIsNiBAQCBzZXQoV2ViQ29yZV9TT1VSQ0VTCiAgICAgYmluZGluZ3MvanMvSlNNdXRhdGlv
bkNhbGxiYWNrLmNwcAogICAgIGJpbmRpbmdzL2pzL0pTTXV0YXRpb25PYnNlcnZlckN1c3RvbS5j
cHAKICAgICBiaW5kaW5ncy9qcy9KU05hbWVkTm9kZU1hcEN1c3RvbS5jcHAKLSAgICBiaW5kaW5n
cy9qcy9KU05hdmlnYXRvckN1c3RvbS5jcHAKICAgICBiaW5kaW5ncy9qcy9KU05vZGVDdXN0b20u
Y3BwCiAgICAgYmluZGluZ3MvanMvSlNOb2RlRmlsdGVyQ3VzdG9tLmNwcAogICAgIGJpbmRpbmdz
L2pzL0pTTm9kZUl0ZXJhdG9yQ3VzdG9tLmNwcApAQCAtMzM0Niw2ICszMzQzLDcgQEAgc2V0KERF
RElDQVRFRFdPUktFUkdMT0JBTFNDT1BFX0NPTlNUUlVDVE9SU19GSUxFICR7REVSSVZFRF9TT1VS
Q0VTX1dFQkNPUkVfRElSfS8KIHNldChJRExfQVRUUklCVVRFU19GSUxFICR7V0VCQ09SRV9ESVJ9
L2JpbmRpbmdzL3NjcmlwdHMvSURMQXR0cmlidXRlcy50eHQpCiAKIHNldChXRUJDT1JFX0pTX0JV
SUxUSU5TCisgICAgJHtXRUJDT1JFX0RJUn0vTW9kdWxlcy9tZWRpYXN0cmVhbS9OYXZpZ2F0b3JV
c2VyTWVkaWEuanMKICAgICAke1dFQkNPUkVfRElSfS9Nb2R1bGVzL3N0cmVhbXMvQnl0ZUxlbmd0
aFF1ZXVpbmdTdHJhdGVneS5qcwogICAgICR7V0VCQ09SRV9ESVJ9L01vZHVsZXMvc3RyZWFtcy9D
b3VudFF1ZXVpbmdTdHJhdGVneS5qcwogICAgICR7V0VCQ09SRV9ESVJ9L01vZHVsZXMvc3RyZWFt
cy9SZWFkYWJsZVN0cmVhbS5qcwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvRGVyaXZlZFNv
dXJjZXMubWFrZSBiL1NvdXJjZS9XZWJDb3JlL0Rlcml2ZWRTb3VyY2VzLm1ha2UKaW5kZXggNDY2
NTRmMmFkMzE4ODlkYjM0MjU3YmZkOGM4ZmFjOTNlMmRmMDRiNS4uMjkzYzE5ZmU1MTQ4MDRkNDg2
OTk3M2RjNzExMDkyNWFhMGYxODUwNyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvRGVyaXZl
ZFNvdXJjZXMubWFrZQorKysgYi9Tb3VyY2UvV2ViQ29yZS9EZXJpdmVkU291cmNlcy5tYWtlCkBA
IC0xMzcsOCArMTM3LDYgQEAgTk9OX1NWR19CSU5ESU5HX0lETFMgPSBcCiAgICAgJChXZWJDb3Jl
KS9Nb2R1bGVzL21lZGlhc3RyZWFtL05hdmlnYXRvck1lZGlhRGV2aWNlcy5pZGwgXAogICAgICQo
V2ViQ29yZSkvTW9kdWxlcy9tZWRpYXN0cmVhbS9OYXZpZ2F0b3JVc2VyTWVkaWEuaWRsIFwKICAg
ICAkKFdlYkNvcmUpL01vZHVsZXMvbWVkaWFzdHJlYW0vTmF2aWdhdG9yVXNlck1lZGlhRXJyb3Iu
aWRsIFwKLSAgICAkKFdlYkNvcmUpL01vZHVsZXMvbWVkaWFzdHJlYW0vTmF2aWdhdG9yVXNlck1l
ZGlhRXJyb3JDYWxsYmFjay5pZGwgXAotICAgICQoV2ViQ29yZSkvTW9kdWxlcy9tZWRpYXN0cmVh
bS9OYXZpZ2F0b3JVc2VyTWVkaWFTdWNjZXNzQ2FsbGJhY2suaWRsIFwKICAgICAkKFdlYkNvcmUp
L01vZHVsZXMvbWVkaWFzdHJlYW0vUlRDQ29uZmlndXJhdGlvbi5pZGwgXAogICAgICQoV2ViQ29y
ZSkvTW9kdWxlcy9tZWRpYXN0cmVhbS9SVENEVE1GU2VuZGVyLmlkbCBcCiAgICAgJChXZWJDb3Jl
KS9Nb2R1bGVzL21lZGlhc3RyZWFtL1JUQ0RUTUZUb25lQ2hhbmdlRXZlbnQuaWRsIFwKQEAgLTEy
NTIsNiArMTI1MCw3IEBAIFdlYlJlcGxheUlucHV0cy5oIDogJChJTlBVVF9HRU5FUkFUT1JfU1BF
Q0lGSUNBVElPTlMpICQoSU5QVVRfR0VORVJBVE9SX1NDUklQVFMpCiAjIFdlYkNvcmUgSlMgQnVp
bHRpbnMKIAogV0VCQ09SRV9KU19CVUlMVElOUyA9IFwKKyAgICAkKFdlYkNvcmUpL01vZHVsZXMv
bWVkaWFzdHJlYW0vTmF2aWdhdG9yVXNlck1lZGlhLmpzIFwKICAgICAkKFdlYkNvcmUpL01vZHVs
ZXMvc3RyZWFtcy9CeXRlTGVuZ3RoUXVldWluZ1N0cmF0ZWd5LmpzIFwKICAgICAkKFdlYkNvcmUp
L01vZHVsZXMvc3RyZWFtcy9Db3VudFF1ZXVpbmdTdHJhdGVneS5qcyBcCiAgICAgJChXZWJDb3Jl
KS9Nb2R1bGVzL3N0cmVhbXMvUmVhZGFibGVTdHJlYW0uanMgXApkaWZmIC0tZ2l0IGEvU291cmNl
L1dlYkNvcmUvTW9kdWxlcy9tZWRpYXN0cmVhbS9OYXZpZ2F0b3JVc2VyTWVkaWEuaWRsIGIvU291
cmNlL1dlYkNvcmUvTW9kdWxlcy9tZWRpYXN0cmVhbS9OYXZpZ2F0b3JVc2VyTWVkaWEuaWRsCmlu
ZGV4IDRjNjVjYjdhZTEyYzQzYWE0YjM5NGZmM2QzZWY0YzlmOTE2NWY4NjUuLjNhYTQ5M2YwZjk1
OWJhZDIyOWJlMWM5NGE4ZjExYmE1Mjk0NTE3YTAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3Jl
L01vZHVsZXMvbWVkaWFzdHJlYW0vTmF2aWdhdG9yVXNlck1lZGlhLmlkbAorKysgYi9Tb3VyY2Uv
V2ViQ29yZS9Nb2R1bGVzL21lZGlhc3RyZWFtL05hdmlnYXRvclVzZXJNZWRpYS5pZGwKQEAgLTIw
LDggKzIwLDYgQEAKIFsKICAgICBDb25kaXRpb25hbD1NRURJQV9TVFJFQU0sCiBdIHBhcnRpYWwg
aW50ZXJmYWNlIE5hdmlnYXRvciB7Ci0gICAgW0N1c3RvbSwgUmFpc2VzRXhjZXB0aW9uXSB2b2lk
IHdlYmtpdEdldFVzZXJNZWRpYShEaWN0aW9uYXJ5IG9wdGlvbnMsCi0gICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgTmF2aWdhdG9yVXNlck1lZGlhU3VjY2Vz
c0NhbGxiYWNrIHN1Y2Nlc3NDYWxsYmFjaywKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICBvcHRpb25hbCBOYXZpZ2F0b3JVc2VyTWVkaWFFcnJvckNhbGxi
YWNrIGVycm9yQ2FsbGJhY2spOworICAgIFtKU0J1aWx0aW5dIHZvaWQgd2Via2l0R2V0VXNlck1l
ZGlhKERpY3Rpb25hcnkgb2JqZWN0LCBhbnkgc3VjY2Vzc0NhbGxiYWNrLCBhbnkgZXJyb3JDYWxs
YmFjayk7CiB9OwogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL21lZGlhc3Ry
ZWFtL05hdmlnYXRvclVzZXJNZWRpYS5qcyBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvbWVkaWFz
dHJlYW0vTmF2aWdhdG9yVXNlck1lZGlhLmpzCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmU0MzFmMTI5ZGZlMGVhY2Vl
MTNlMzdmZWMzZGQ0YmIyMDdlODZhMDAKLS0tIC9kZXYvbnVsbAorKysgYi9Tb3VyY2UvV2ViQ29y
ZS9Nb2R1bGVzL21lZGlhc3RyZWFtL05hdmlnYXRvclVzZXJNZWRpYS5qcwpAQCAtMCwwICsxLDQ1
IEBACisvKgorICogQ29weXJpZ2h0IChDKSAyMDE1IENhbm9uIEluYy4KKyAqCisgKiBSZWRpc3Ry
aWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhv
dXQKKyAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xs
b3dpbmcgY29uZGl0aW9ucworICogYXJlIG1ldDoKKyAqIDEuIFJlZGlzdHJpYnV0aW9ucyBvZiBz
b3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2Us
IHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisg
KiAyLiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFi
b3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQg
dGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQorICogICAgZG9jdW1lbnRhdGlvbiBhbmQv
b3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KKyAqCisg
KiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIEFQUExFIElOQy4gYGBBUyBJUycnIEFORCBB
TlkKKyAqIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1Qg
TElNSVRFRCBUTywgVEhFCisgKiBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZ
IEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIKKyAqIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQu
ICBJTiBOTyBFVkVOVCBTSEFMTCBBUFBMRSBJTkMuIE9SCisgKiBDT05UUklCVVRPUlMgQkUgTElB
QkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwKKyAqIEVY
RU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElN
SVRFRCBUTywKKyAqIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7
IExPU1MgT0YgVVNFLCBEQVRBLCBPUgorICogUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBU
SU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZIFRIRU9SWQorICogT0YgTElBQklMSVRZLCBX
SEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUCisgKiAoSU5DTFVE
SU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRI
RSBVU0UKKyAqIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lC
SUxJVFkgT0YgU1VDSCBEQU1BR0UuCisgKi8KKworZnVuY3Rpb24gd2Via2l0R2V0VXNlck1lZGlh
KG9wdGlvbnMsIHN1Y2Nlc3NDYWxsYmFjaywgZXJyb3JDYWxsYmFjaykKK3sKKyAgICAidXNlIHN0
cmljdCI7CisKKyAgICBpZiAoYXJndW1lbnRzLmxlbmd0aCAhPSAzKQorICAgICAgICB0aHJvdyBu
ZXcgQFR5cGVFcnJvcigiTm90IGVub3VnaCBhcmd1bWVudHMiKTsKKworICAgIGlmIChvcHRpb25z
ICE9PSBPYmplY3Qob3B0aW9ucykpCisgICAgICAgIHRocm93IG5ldyBAVHlwZUVycm9yKCJBcmd1
bWVudCAxIChvcHRpb25zKSB0byBOYXZpZ2F0b3Iud2Via2l0R2V0VXNlck1lZGlhIG11c3QgYmUg
YW4gb2JqZWN0Iik7CisKKyAgICBpZiAodHlwZW9mIHN1Y2Nlc3NDYWxsYmFjayAhPT0gImZ1bmN0
aW9uIikKKyAgICAgICAgdGhyb3cgbmV3IEBUeXBlRXJyb3IoIkFyZ3VtZW50IDIgKCdzdWNjZXNz
Q2FsbGJhY2snKSB0byBOYXZpZ2F0b3Iud2Via2l0R2V0VXNlck1lZGlhIG11c3QgYmUgYSBmdW5j
dGlvbiIpOworICAgIGlmICh0eXBlb2YgZXJyb3JDYWxsYmFjayAhPT0gImZ1bmN0aW9uIikKKyAg
ICAgICAgdGhyb3cgbmV3IEBUeXBlRXJyb3IoIkFyZ3VtZW50IDMgKCdlcnJvckNhbGxiYWNrJykg
dG8gTmF2aWdhdG9yLndlYmtpdEdldFVzZXJNZWRpYSBtdXN0IGJlIGEgZnVuY3Rpb24iKTsKKwor
ICAgaWYgKCFuYXZpZ2F0b3IpCisgICAgICAgIHRocm93IG5ldyBAVHlwZUVycm9yKCJUaGUgaW1w
bGVtZW50YXRpb24gZGlkIG5vdCBzdXBwb3J0IHRoZSByZXF1ZXN0ZWQgdHlwZSBvZiBvYmplY3Qg
b3Igb3BlcmF0aW9uLiIpOworCisgICBAZ2V0VXNlck1lZGlhLkBjYWxsKG5hdmlnYXRvci5tZWRp
YURldmljZXMsIG9wdGlvbnMpLnRoZW4oc3VjY2Vzc0NhbGxiYWNrLCBlcnJvckNhbGxiYWNrKTsK
K30KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvbWVkaWFzdHJlYW0vTmF2aWdh
dG9yVXNlck1lZGlhRXJyb3JDYWxsYmFjay5oIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9tZWRp
YXN0cmVhbS9OYXZpZ2F0b3JVc2VyTWVkaWFFcnJvckNhbGxiYWNrLmgKZGVsZXRlZCBmaWxlIG1v
ZGUgMTAwNjQ0CmluZGV4IGRkM2M4YjMyYjZlYzdjODA2MWQ2MjQyMTEzZTlkMDg2NDFmNWFhMDku
LjAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAKLS0tIGEvU291cmNlL1dl
YkNvcmUvTW9kdWxlcy9tZWRpYXN0cmVhbS9OYXZpZ2F0b3JVc2VyTWVkaWFFcnJvckNhbGxiYWNr
LmgKKysrIC9kZXYvbnVsbApAQCAtMSw0NSArMCwwIEBACi0vKgotICogQ29weXJpZ2h0IChDKSAy
MDExIEdvb2dsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi0gKgotICogUmVkaXN0cmlidXRp
b24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0Ci0g
KiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5n
IGNvbmRpdGlvbnMKLSAqIGFyZSBtZXQ6Ci0gKiAxLiAgUmVkaXN0cmlidXRpb25zIG9mIHNvdXJj
ZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKLSAqICAgICBub3RpY2UsIHRo
aXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCi0gKiAy
LiAgUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92
ZSBjb3B5cmlnaHQKLSAqICAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0
aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCi0gKiAgICAgZG9jdW1lbnRhdGlvbiBhbmQv
b3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KLSAqCi0g
KiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIEFQUExFIElOQy4gQU5EIElUUyBDT05UUklC
VVRPUlMgYGBBUyBJUycnIEFORCBBTlkKLSAqIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVT
LCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgVEhFIElNUExJRUQKLSAqIFdBUlJBTlRJ
RVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9T
RSBBUkUKLSAqIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIEFQUExFIElOQy4gT1IgSVRT
IENPTlRSSUJVVE9SUyBCRSBMSUFCTEUgRk9SIEFOWQotICogRElSRUNULCBJTkRJUkVDVCwgSU5D
SURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMKLSAq
IChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVU
RSBHT09EUyBPUiBTRVJWSUNFUzsKLSAqIExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBP
UiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTgotICogQU5ZIFRI
RU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFks
IE9SIFRPUlQKLSAqIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcg
SU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRSBPRiBUSElTCi0gKiBTT0ZUV0FSRSwgRVZFTiBJRiBB
RFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KLSAqLwotCi0jaWZuZGVm
IE5hdmlnYXRvclVzZXJNZWRpYUVycm9yQ2FsbGJhY2tfaAotI2RlZmluZSBOYXZpZ2F0b3JVc2Vy
TWVkaWFFcnJvckNhbGxiYWNrX2gKLQotI2lmIEVOQUJMRShNRURJQV9TVFJFQU0pCi0KLSNpbmNs
dWRlICJOYXZpZ2F0b3JVc2VyTWVkaWFFcnJvci5oIgotI2luY2x1ZGUgPHd0Zi9SZWZDb3VudGVk
Lmg+Ci0KLW5hbWVzcGFjZSBXZWJDb3JlIHsKLQotY2xhc3MgTmF2aWdhdG9yVXNlck1lZGlhRXJy
b3JDYWxsYmFjayA6IHB1YmxpYyBSZWZDb3VudGVkPE5hdmlnYXRvclVzZXJNZWRpYUVycm9yQ2Fs
bGJhY2s+IHsKLXB1YmxpYzoKLSAgICB2aXJ0dWFsIH5OYXZpZ2F0b3JVc2VyTWVkaWFFcnJvckNh
bGxiYWNrKCkgeyB9Ci0gICAgdmlydHVhbCBib29sIGhhbmRsZUV2ZW50KE5hdmlnYXRvclVzZXJN
ZWRpYUVycm9yKikgPSAwOwotfTsKLQotfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQotCi0jZW5kaWYg
Ly8gRU5BQkxFKE1FRElBX1NUUkVBTSkKLQotI2VuZGlmIC8vIE5hdmlnYXRvclVzZXJNZWRpYUVy
cm9yQ2FsbGJhY2tfaApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9tZWRpYXN0
cmVhbS9OYXZpZ2F0b3JVc2VyTWVkaWFFcnJvckNhbGxiYWNrLmlkbCBiL1NvdXJjZS9XZWJDb3Jl
L01vZHVsZXMvbWVkaWFzdHJlYW0vTmF2aWdhdG9yVXNlck1lZGlhRXJyb3JDYWxsYmFjay5pZGwK
ZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IGYwYWM3ZGQxYmY5YTNmZTJkMmZjZjIwMTNk
NjYwNDdjZWYzYzZmZDEuLjAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAK
LS0tIGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9tZWRpYXN0cmVhbS9OYXZpZ2F0b3JVc2VyTWVk
aWFFcnJvckNhbGxiYWNrLmlkbAorKysgL2Rldi9udWxsCkBAIC0xLDMxICswLDAgQEAKLS8qCi0g
KiBDb3B5cmlnaHQgKEMpIDIwMTEgR29vZ2xlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KLSAq
Ci0gKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3
aXRoIG9yIHdpdGhvdXQKLSAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0
aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucwotICogYXJlIG1ldDoKLSAqIDEuICBSZWRpc3Ry
aWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAot
ICogICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcg
ZGlzY2xhaW1lci4KLSAqIDIuICBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCBy
ZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAotICogICAgIG5vdGljZSwgdGhpcyBsaXN0IG9m
IGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKLSAqICAgICBk
b2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlz
dHJpYnV0aW9uLgotICoKLSAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgQVBQTEUgSU5D
LiBBTkQgSVRTIENPTlRSSUJVVE9SUyBgYEFTIElTJycgQU5EIEFOWQotICogRVhQUkVTUyBPUiBJ
TVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBUSEUgSU1Q
TElFRAotICogV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEg
UEFSVElDVUxBUiBQVVJQT1NFIEFSRQotICogRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwg
QVBQTEUgSU5DLiBPUiBJVFMgQ09OVFJJQlVUT1JTIEJFIExJQUJMRSBGT1IgQU5ZCi0gKiBESVJF
Q1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SIENPTlNFUVVF
TlRJQUwgREFNQUdFUwotICogKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJF
TUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOwotICogTE9TUyBPRiBVU0UsIERB
VEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQg
QU5EIE9OCi0gKiBBTlkgVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwg
U1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVAotICogKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9U
SEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFIE9GIFRISVMKLSAqIFNP
RlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdF
LgotICovCi0KLVsKLSAgICBDb25kaXRpb25hbD1NRURJQV9TVFJFQU0sCi0gICAgQ2FsbGJhY2s9
RnVuY3Rpb25Pbmx5LAotXSBjYWxsYmFjayBpbnRlcmZhY2UgTmF2aWdhdG9yVXNlck1lZGlhRXJy
b3JDYWxsYmFjayB7Ci0gICAgYm9vbGVhbiBoYW5kbGVFdmVudChOYXZpZ2F0b3JVc2VyTWVkaWFF
cnJvciBlcnJvcik7Ci19OwotCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL21l
ZGlhc3RyZWFtL05hdmlnYXRvclVzZXJNZWRpYVN1Y2Nlc3NDYWxsYmFjay5oIGIvU291cmNlL1dl
YkNvcmUvTW9kdWxlcy9tZWRpYXN0cmVhbS9OYXZpZ2F0b3JVc2VyTWVkaWFTdWNjZXNzQ2FsbGJh
Y2suaApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggOWY0NTZlYWRjNmFlNDk0MTg2Y2Yw
N2M2ZTJhNTJlMDQ3NjNmOTk5MC4uMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL21lZGlhc3RyZWFtL05hdmlnYXRvclVz
ZXJNZWRpYVN1Y2Nlc3NDYWxsYmFjay5oCisrKyAvZGV2L251bGwKQEAgLTEsNDYgKzAsMCBAQAot
LyoKLSAqIENvcHlyaWdodCAoQykgMjAxMSBHb29nbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVk
LgotICoKLSAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9y
bXMsIHdpdGggb3Igd2l0aG91dAotICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3Zp
ZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCi0gKiBhcmUgbWV0OgotICogMS4gIFJl
ZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJp
Z2h0Ci0gKiAgICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxv
d2luZyBkaXNjbGFpbWVyLgotICogMi4gIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBt
dXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0Ci0gKiAgICAgbm90aWNlLCB0aGlzIGxp
c3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQotICog
ICAgIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRo
ZSBkaXN0cmlidXRpb24uCi0gKgotICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBBUFBM
RSBJTkMuIEFORCBJVFMgQ09OVFJJQlVUT1JTIGBgQVMgSVMnJyBBTkQgQU5ZCi0gKiBFWFBSRVNT
IE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFRI
RSBJTVBMSUVECi0gKiBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBG
T1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UgQVJFCi0gKiBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBT
SEFMTCBBUFBMRSBJTkMuIE9SIElUUyBDT05UUklCVVRPUlMgQkUgTElBQkxFIEZPUiBBTlkKLSAq
IERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IgQ09O
U0VRVUVOVElBTCBEQU1BR0VTCi0gKiAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBS
T0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7Ci0gKiBMT1NTIE9GIFVT
RSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENB
VVNFRCBBTkQgT04KLSAqIEFOWSBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRS
QUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUCi0gKiAoSU5DTFVESU5HIE5FR0xJR0VOQ0Ug
T1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UgT0YgVEhJUwot
ICogU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBE
QU1BR0UuCi0gKi8KLQotI2lmbmRlZiBOYXZpZ2F0b3JVc2VyTWVkaWFTdWNjZXNzQ2FsbGJhY2tf
aAotI2RlZmluZSBOYXZpZ2F0b3JVc2VyTWVkaWFTdWNjZXNzQ2FsbGJhY2tfaAotCi0jaWYgRU5B
QkxFKE1FRElBX1NUUkVBTSkKLQotI2luY2x1ZGUgPHd0Zi9SZWZDb3VudGVkLmg+Ci0KLW5hbWVz
cGFjZSBXZWJDb3JlIHsKLQotY2xhc3MgTWVkaWFTdHJlYW07Ci0KLWNsYXNzIE5hdmlnYXRvclVz
ZXJNZWRpYVN1Y2Nlc3NDYWxsYmFjayA6IHB1YmxpYyBSZWZDb3VudGVkPE5hdmlnYXRvclVzZXJN
ZWRpYVN1Y2Nlc3NDYWxsYmFjaz4gewotcHVibGljOgotICAgIHZpcnR1YWwgfk5hdmlnYXRvclVz
ZXJNZWRpYVN1Y2Nlc3NDYWxsYmFjaygpIHsgfQotICAgIHZpcnR1YWwgYm9vbCBoYW5kbGVFdmVu
dChNZWRpYVN0cmVhbSopID0gMDsKLX07Ci0KLX0gLy8gbmFtZXNwYWNlIFdlYkNvcmUKLQotI2Vu
ZGlmIC8vIEVOQUJMRShNRURJQV9TVFJFQU0pCi0KLSNlbmRpZiAvLyBOYXZpZ2F0b3JVc2VyTWVk
aWFTdWNjZXNzQ2FsbGJhY2tfaApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9t
ZWRpYXN0cmVhbS9OYXZpZ2F0b3JVc2VyTWVkaWFTdWNjZXNzQ2FsbGJhY2suaWRsIGIvU291cmNl
L1dlYkNvcmUvTW9kdWxlcy9tZWRpYXN0cmVhbS9OYXZpZ2F0b3JVc2VyTWVkaWFTdWNjZXNzQ2Fs
bGJhY2suaWRsCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAyZDE5MGNmMmViMTkyMjA5
NThhOGNlOGJjYmY3OGQzNDRjZmQyZTUwLi4wMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwCi0tLSBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvbWVkaWFzdHJlYW0vTmF2aWdh
dG9yVXNlck1lZGlhU3VjY2Vzc0NhbGxiYWNrLmlkbAorKysgL2Rldi9udWxsCkBAIC0xLDMxICsw
LDAgQEAKLS8qCi0gKiBDb3B5cmlnaHQgKEMpIDIwMTEgR29vZ2xlIEluYy4gQWxsIHJpZ2h0cyBy
ZXNlcnZlZC4KLSAqCi0gKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmlu
YXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKLSAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRl
ZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucwotICogYXJlIG1ldDoKLSAq
IDEuICBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3Zl
IGNvcHlyaWdodAotICogICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRo
ZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KLSAqIDIuICBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5
IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAotICogICAgIG5vdGljZSwg
dGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0
aGUKLSAqICAgICBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQg
d2l0aCB0aGUgZGlzdHJpYnV0aW9uLgotICoKLSAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQg
QlkgQVBQTEUgSU5DLiBBTkQgSVRTIENPTlRSSUJVVE9SUyBgYEFTIElTJycgQU5EIEFOWQotICog
RVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVE
IFRPLCBUSEUgSU1QTElFRAotICogV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJ
VE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFSRQotICogRElTQ0xBSU1FRC4gSU4gTk8g
RVZFTlQgU0hBTEwgQVBQTEUgSU5DLiBPUiBJVFMgQ09OVFJJQlVUT1JTIEJFIExJQUJMRSBGT1Ig
QU5ZCi0gKiBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlks
IE9SIENPTlNFUVVFTlRJQUwgREFNQUdFUwotICogKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVE
IFRPLCBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOwotICogTE9T
UyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9X
RVZFUiBDQVVTRUQgQU5EIE9OCi0gKiBBTlkgVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJ
TiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVAotICogKElOQ0xVRElORyBORUdM
SUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFIE9G
IFRISVMKLSAqIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9G
IFNVQ0ggREFNQUdFLgotICovCi0KLVsKLSAgICBDb25kaXRpb25hbD1NRURJQV9TVFJFQU0sCi0g
ICAgQ2FsbGJhY2s9RnVuY3Rpb25Pbmx5LAotXSBjYWxsYmFjayBpbnRlcmZhY2UgTmF2aWdhdG9y
VXNlck1lZGlhU3VjY2Vzc0NhbGxiYWNrIHsKLSAgICBib29sZWFuIGhhbmRsZUV2ZW50KE1lZGlh
U3RyZWFtIHN0cmVhbSk7Ci19OwotCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVz
L21lZGlhc3RyZWFtL1VzZXJNZWRpYVJlcXVlc3QuY3BwIGIvU291cmNlL1dlYkNvcmUvTW9kdWxl
cy9tZWRpYXN0cmVhbS9Vc2VyTWVkaWFSZXF1ZXN0LmNwcAppbmRleCBjM2YzMzgwZmFiYmZiZTE1
YzMxNjJmM2I3M2Q3NDZiZWFhNjc3ZmEzLi5kM2ZjM2JmYWE3ZTI5YThhMzFkNzcxMzljYWNiNzlj
ZGE0M2U4NzE3IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL21lZGlhc3RyZWFt
L1VzZXJNZWRpYVJlcXVlc3QuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvbWVkaWFz
dHJlYW0vVXNlck1lZGlhUmVxdWVzdC5jcHAKQEAgLTQ3LDggKzQ3LDYgQEAKICNpbmNsdWRlICJN
ZWRpYUNvbnN0cmFpbnRzSW1wbC5oIgogI2luY2x1ZGUgIk1lZGlhU3RyZWFtLmgiCiAjaW5jbHVk
ZSAiTWVkaWFTdHJlYW1Qcml2YXRlLmgiCi0jaW5jbHVkZSAiTmF2aWdhdG9yVXNlck1lZGlhRXJy
b3JDYWxsYmFjay5oIgotI2luY2x1ZGUgIk5hdmlnYXRvclVzZXJNZWRpYVN1Y2Nlc3NDYWxsYmFj
ay5oIgogI2luY2x1ZGUgIlJlYWx0aW1lTWVkaWFTb3VyY2VDZW50ZXIuaCIKICNpbmNsdWRlICJT
ZWN1cml0eU9yaWdpbi5oIgogI2luY2x1ZGUgIlVzZXJNZWRpYUNvbnRyb2xsZXIuaCIKZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvbWVkaWFzdHJlYW0vVXNlck1lZGlhUmVxdWVz
dC5oIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9tZWRpYXN0cmVhbS9Vc2VyTWVkaWFSZXF1ZXN0
LmgKaW5kZXggZGQyMDExM2NhYzU1ZDcxNGUzZGMyNTM1MTRhYjQwM2U3MjYzODIxNi4uZWNlYTU5
YTZjYTZjZTdiMzQxY2RjMDc0NzFhYWYyNDllMmJlNTE2NyAxMDA2NDQKLS0tIGEvU291cmNlL1dl
YkNvcmUvTW9kdWxlcy9tZWRpYXN0cmVhbS9Vc2VyTWVkaWFSZXF1ZXN0LmgKKysrIGIvU291cmNl
L1dlYkNvcmUvTW9kdWxlcy9tZWRpYXN0cmVhbS9Vc2VyTWVkaWFSZXF1ZXN0LmgKQEAgLTQ5LDgg
KzQ5LDYgQEAgY2xhc3MgRG9jdW1lbnQ7CiBjbGFzcyBGcmFtZTsKIGNsYXNzIE1lZGlhQ29uc3Ry
YWludHM7CiBjbGFzcyBNZWRpYVN0cmVhbVByaXZhdGU7Ci1jbGFzcyBOYXZpZ2F0b3JVc2VyTWVk
aWFFcnJvckNhbGxiYWNrOwotY2xhc3MgTmF2aWdhdG9yVXNlck1lZGlhU3VjY2Vzc0NhbGxiYWNr
OwogY2xhc3MgVXNlck1lZGlhQ29udHJvbGxlcjsKIGNsYXNzIFNlY3VyaXR5T3JpZ2luOwogCmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9XZWJDb3JlLnhjb2RlcHJvai9wcm9qZWN0LnBieHBy
b2ogYi9Tb3VyY2UvV2ViQ29yZS9XZWJDb3JlLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2oKaW5k
ZXggYTk4MTkzM2MyOGJjYTA0ZTViODU5ODdhMTNhNjlkYWJjZWMyZmMwZS4uNzYxOGViMDhmMWQ4
ZjAyYWRhY2NmYTAyNTcxNTA0NDVjMTMxMDZlYSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUv
V2ViQ29yZS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qCisrKyBiL1NvdXJjZS9XZWJDb3JlL1dl
YkNvcmUueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvagpAQCAtMTUzLDcgKzE1Myw2IEBACiAJCTA3
Mzc5NEUyMTlFRTJEMUIwMEU1QTA0NSAvKiBNZWRpYUNvbnN0cmFpbnRzTW9jay5oIGluIEhlYWRl
cnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMDczNzk0RTAxOUVFMkQxQjAw
RTVBMDQ1IC8qIE1lZGlhQ29uc3RyYWludHNNb2NrLmggKi87IH07CiAJCTA3Mzc5NEU1MTlFRTJG
RjIwMEU1QTA0NSAvKiBKU1JUQ0NvbmZpZ3VyYXRpb24uY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNh
ID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMDczNzk0RTMxOUVFMkZGMjAwRTVBMDQ1IC8qIEpT
UlRDQ29uZmlndXJhdGlvbi5jcHAgKi87IH07CiAJCTA3Mzc5NEU2MTlFRTJGRjIwMEU1QTA0NSAv
KiBKU1JUQ0NvbmZpZ3VyYXRpb24uaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmls
ZTsgZmlsZVJlZiA9IDA3Mzc5NEU0MTlFRTJGRjIwMEU1QTA0NSAvKiBKU1JUQ0NvbmZpZ3VyYXRp
b24uaCAqLzsgfTsKLQkJMDczNzk0RTgxOUVFMzM1QzAwRTVBMDQ1IC8qIEpTTmF2aWdhdG9yQ3Vz
dG9tLmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDA3
Mzc5NEU3MTlFRTMzNUMwMEU1QTA0NSAvKiBKU05hdmlnYXRvckN1c3RvbS5jcHAgKi87IH07CiAJ
CTA3Mzc5NEVCMTlFRTM0MUUwMEU1QTA0NSAvKiBKU1JUQ0ljZVNlcnZlci5jcHAgaW4gU291cmNl
cyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAwNzM3OTRFOTE5RUUzNDFFMDBF
NUEwNDUgLyogSlNSVENJY2VTZXJ2ZXIuY3BwICovOyB9OwogCQkwNzM3OTRFQzE5RUUzNDFFMDBF
NUEwNDUgLyogSlNSVENJY2VTZXJ2ZXIuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxk
RmlsZTsgZmlsZVJlZiA9IDA3Mzc5NEVBMTlFRTM0MUUwMEU1QTA0NSAvKiBKU1JUQ0ljZVNlcnZl
ci5oICovOyB9OwogCQkwNzM3OTRGMTE5RUUzN0JCMDBFNUEwNDUgLyogUlRDUGVlckNvbm5lY3Rp
b25IYW5kbGVyTW9jay5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZp
bGVSZWYgPSAwNzM3OTRFRjE5RUUzN0JCMDBFNUEwNDUgLyogUlRDUGVlckNvbm5lY3Rpb25IYW5k
bGVyTW9jay5jcHAgKi87IH07CkBAIC0xNzMsMTAgKzE3Miw2IEBACiAJCTA3M0JFMzQxMTdEMTdF
MDEwMDJCRDQzMSAvKiBKU05hdmlnYXRvclVzZXJNZWRpYS5oIGluIEhlYWRlcnMgKi8gPSB7aXNh
ID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMDczQkUzM0YxN0QxN0UwMTAwMkJENDMxIC8qIEpT
TmF2aWdhdG9yVXNlck1lZGlhLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0
ZSwgKTsgfTsgfTsKIAkJMDczQkUzNDgxN0QxN0U3QTAwMkJENDMxIC8qIEpTTmF2aWdhdG9yVXNl
ck1lZGlhRXJyb3IuY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxl
UmVmID0gMDczQkUzNDIxN0QxN0U3QTAwMkJENDMxIC8qIEpTTmF2aWdhdG9yVXNlck1lZGlhRXJy
b3IuY3BwICovOyB9OwogCQkwNzNCRTM0OTE3RDE3RTdBMDAyQkQ0MzEgLyogSlNOYXZpZ2F0b3JV
c2VyTWVkaWFFcnJvci5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxl
UmVmID0gMDczQkUzNDMxN0QxN0U3QTAwMkJENDMxIC8qIEpTTmF2aWdhdG9yVXNlck1lZGlhRXJy
b3IuaCAqLzsgfTsKLQkJMDczQkUzNEExN0QxN0U3QTAwMkJENDMxIC8qIEpTTmF2aWdhdG9yVXNl
ck1lZGlhRXJyb3JDYWxsYmFjay5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZp
bGU7IGZpbGVSZWYgPSAwNzNCRTM0NDE3RDE3RTdBMDAyQkQ0MzEgLyogSlNOYXZpZ2F0b3JVc2Vy
TWVkaWFFcnJvckNhbGxiYWNrLmNwcCAqLzsgfTsKLQkJMDczQkUzNEIxN0QxN0U3QTAwMkJENDMx
IC8qIEpTTmF2aWdhdG9yVXNlck1lZGlhRXJyb3JDYWxsYmFjay5oIGluIEhlYWRlcnMgKi8gPSB7
aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMDczQkUzNDUxN0QxN0U3QTAwMkJENDMxIC8q
IEpTTmF2aWdhdG9yVXNlck1lZGlhRXJyb3JDYWxsYmFjay5oICovOyB9OwotCQkwNzNCRTM0QzE3
RDE3RTdBMDAyQkQ0MzEgLyogSlNOYXZpZ2F0b3JVc2VyTWVkaWFTdWNjZXNzQ2FsbGJhY2suY3Bw
IGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMDczQkUzNDYx
N0QxN0U3QTAwMkJENDMxIC8qIEpTTmF2aWdhdG9yVXNlck1lZGlhU3VjY2Vzc0NhbGxiYWNrLmNw
cCAqLzsgfTsKLQkJMDczQkUzNEQxN0QxN0U3QTAwMkJENDMxIC8qIEpTTmF2aWdhdG9yVXNlck1l
ZGlhU3VjY2Vzc0NhbGxiYWNrLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7
IGZpbGVSZWYgPSAwNzNCRTM0NzE3RDE3RTdBMDAyQkQ0MzEgLyogSlNOYXZpZ2F0b3JVc2VyTWVk
aWFTdWNjZXNzQ2FsbGJhY2suaCAqLzsgfTsKIAkJMDczQkUzNEUxN0QxODBCMjAwMkJENDMxIC8q
IFJUQ1Nlc3Npb25EZXNjcmlwdGlvbkRlc2NyaXB0b3IuY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNh
ID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMDcyMjFCQUIxN0NGMEFENDAwODQ4RTUxIC8qIFJU
Q1Nlc3Npb25EZXNjcmlwdGlvbkRlc2NyaXB0b3IuY3BwICovOyB9OwogCQkwNzNCRTM0RjE3RDE4
MTgzMDAyQkQ0MzEgLyogUlRDSWNlQ2FuZGlkYXRlRGVzY3JpcHRvci5jcHAgaW4gU291cmNlcyAq
LyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAwNzIyMUJBNjE3Q0YwQUQ0MDA4NDhF
NTEgLyogUlRDSWNlQ2FuZGlkYXRlRGVzY3JpcHRvci5jcHAgKi87IH07CiAJCTA3M0JFMzUwMTdE
MTgxQTYwMDJCRDQzMSAvKiBSVENQZWVyQ29ubmVjdGlvbkhhbmRsZXIuY3BwIGluIFNvdXJjZXMg
Ki8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMDcyMjFCQTgxN0NGMEFENDAwODQ4
RTUxIC8qIFJUQ1BlZXJDb25uZWN0aW9uSGFuZGxlci5jcHAgKi87IH07CkBAIC0yNDAsOCArMjM1
LDYgQEAKIAkJMDc4RTA5MTgxN0QxNEQxQzAwNDIwQUExIC8qIE1lZGlhU3RyZWFtVHJhY2suaCBp
biBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDA3MjIxQjU1MTdD
RUMzMjcwMDg0OEU1MSAvKiBNZWRpYVN0cmVhbVRyYWNrLmggKi87IH07CiAJCTA3OEUwOTE5MTdE
MTREMUMwMDQyMEFBMSAvKiBNZWRpYVN0cmVhbVRyYWNrRXZlbnQuaCBpbiBIZWFkZXJzICovID0g
e2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDA3MjIxQjU4MTdDRUMzMjcwMDg0OEU1MSAv
KiBNZWRpYVN0cmVhbVRyYWNrRXZlbnQuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQ
cml2YXRlLCApOyB9OyB9OwogCQkwNzhFMDkxQjE3RDE0RDFDMDA0MjBBQTEgLyogTmF2aWdhdG9y
VXNlck1lZGlhRXJyb3IuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmls
ZVJlZiA9IDA3MjIxQjVEMTdDRUMzMjcwMDg0OEU1MSAvKiBOYXZpZ2F0b3JVc2VyTWVkaWFFcnJv
ci5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07Ci0JCTA3
OEUwOTFDMTdEMTREMUMwMDQyMEFBMSAvKiBOYXZpZ2F0b3JVc2VyTWVkaWFFcnJvckNhbGxiYWNr
LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAwNzIyMUI1
RjE3Q0VDMzI3MDA4NDhFNTEgLyogTmF2aWdhdG9yVXNlck1lZGlhRXJyb3JDYWxsYmFjay5oICov
OyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07Ci0JCTA3OEUwOTFE
MTdEMTREMUMwMDQyMEFBMSAvKiBOYXZpZ2F0b3JVc2VyTWVkaWFTdWNjZXNzQ2FsbGJhY2suaCBp
biBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDA3MjIxQjYxMTdD
RUMzMjcwMDg0OEU1MSAvKiBOYXZpZ2F0b3JVc2VyTWVkaWFTdWNjZXNzQ2FsbGJhY2suaCAqLzsg
c2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OwogCQkwNzhFMDkxRTE3
RDE0RDFDMDA0MjBBQTEgLyogUlRDRGF0YUNoYW5uZWwuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9
IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDA3MjIxQjY0MTdDRUMzMjcwMDg0OEU1MSAvKiBSVENE
YXRhQ2hhbm5lbC5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07
IH07CiAJCTA3OEUwOTFGMTdEMTREMUMwMDQyMEFBMSAvKiBSVENEYXRhQ2hhbm5lbEV2ZW50Lmgg
aW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAwNzIyMUI2NzE3
Q0VDMzI3MDA4NDhFNTEgLyogUlRDRGF0YUNoYW5uZWxFdmVudC5oICovOyBzZXR0aW5ncyA9IHtB
VFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CiAJCTA3OEUwOTIwMTdEMTREMUMwMDQyMEFB
MSAvKiBSVENEVE1GU2VuZGVyLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7
IGZpbGVSZWYgPSAwNzIyMUI2QTE3Q0VDMzI3MDA4NDhFNTEgLyogUlRDRFRNRlNlbmRlci5oICov
OyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CkBAIC03MzA0LDEw
ICs3Mjk3LDYgQEAKIAkJMDcyMjFCNUMxN0NFQzMyNzAwODQ4RTUxIC8qIE5hdmlnYXRvclVzZXJN
ZWRpYS5pZGwgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsg
bGFzdEtub3duRmlsZVR5cGUgPSB0ZXh0OyBwYXRoID0gTmF2aWdhdG9yVXNlck1lZGlhLmlkbDsg
c291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJMDcyMjFCNUQxN0NFQzMyNzAwODQ4RTUxIC8q
IE5hdmlnYXRvclVzZXJNZWRpYUVycm9yLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsg
ZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0
aCA9IE5hdmlnYXRvclVzZXJNZWRpYUVycm9yLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07
CiAJCTA3MjIxQjVFMTdDRUMzMjcwMDg0OEU1MSAvKiBOYXZpZ2F0b3JVc2VyTWVkaWFFcnJvci5p
ZGwgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtu
b3duRmlsZVR5cGUgPSB0ZXh0OyBwYXRoID0gTmF2aWdhdG9yVXNlck1lZGlhRXJyb3IuaWRsOyBz
b3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwotCQkwNzIyMUI1RjE3Q0VDMzI3MDA4NDhFNTEgLyog
TmF2aWdhdG9yVXNlck1lZGlhRXJyb3JDYWxsYmFjay5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZl
cmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5j
Lmg7IHBhdGggPSBOYXZpZ2F0b3JVc2VyTWVkaWFFcnJvckNhbGxiYWNrLmg7IHNvdXJjZVRyZWUg
PSAiPGdyb3VwPiI7IH07Ci0JCTA3MjIxQjYwMTdDRUMzMjcwMDg0OEU1MSAvKiBOYXZpZ2F0b3JV
c2VyTWVkaWFFcnJvckNhbGxiYWNrLmlkbCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBm
aWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHRleHQ7IHBhdGggPSBOYXZpZ2F0
b3JVc2VyTWVkaWFFcnJvckNhbGxiYWNrLmlkbDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsK
LQkJMDcyMjFCNjExN0NFQzMyNzAwODQ4RTUxIC8qIE5hdmlnYXRvclVzZXJNZWRpYVN1Y2Nlc3ND
YWxsYmFjay5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7
IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBOYXZpZ2F0b3JVc2Vy
TWVkaWFTdWNjZXNzQ2FsbGJhY2suaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKLQkJMDcy
MjFCNjIxN0NFQzMyNzAwODQ4RTUxIC8qIE5hdmlnYXRvclVzZXJNZWRpYVN1Y2Nlc3NDYWxsYmFj
ay5pZGwgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFz
dEtub3duRmlsZVR5cGUgPSB0ZXh0OyBwYXRoID0gTmF2aWdhdG9yVXNlck1lZGlhU3VjY2Vzc0Nh
bGxiYWNrLmlkbDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJMDcyMjFCNjMxN0NFQzMy
NzAwODQ4RTUxIC8qIFJUQ0RhdGFDaGFubmVsLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJl
bmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3Bw
LmNwcDsgcGF0aCA9IFJUQ0RhdGFDaGFubmVsLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+Ijsg
fTsKIAkJMDcyMjFCNjQxN0NFQzMyNzAwODQ4RTUxIC8qIFJUQ0RhdGFDaGFubmVsLmggKi8gPSB7
aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5
cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFJUQ0RhdGFDaGFubmVsLmg7IHNvdXJjZVRyZWUg
PSAiPGdyb3VwPiI7IH07CiAJCTA3MjIxQjY1MTdDRUMzMjcwMDg0OEU1MSAvKiBSVENEYXRhQ2hh
bm5lbC5pZGwgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsg
bGFzdEtub3duRmlsZVR5cGUgPSB0ZXh0OyBwYXRoID0gUlRDRGF0YUNoYW5uZWwuaWRsOyBzb3Vy
Y2VUcmVlID0gIjxncm91cD4iOyB9OwpAQCAtNzM5Nyw3ICs3Mzg2LDYgQEAKIAkJMDczNzk0RTAx
OUVFMkQxQjAwRTVBMDQ1IC8qIE1lZGlhQ29uc3RyYWludHNNb2NrLmggKi8gPSB7aXNhID0gUEJY
RmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3Vy
Y2Vjb2RlLmMuaDsgcGF0aCA9IE1lZGlhQ29uc3RyYWludHNNb2NrLmg7IHNvdXJjZVRyZWUgPSAi
PGdyb3VwPiI7IH07CiAJCTA3Mzc5NEUzMTlFRTJGRjIwMEU1QTA0NSAvKiBKU1JUQ0NvbmZpZ3Vy
YXRpb24uY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7
IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gSlNSVENDb25m
aWd1cmF0aW9uLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJMDczNzk0RTQxOUVF
MkZGMjAwRTVBMDQ1IC8qIEpTUlRDQ29uZmlndXJhdGlvbi5oICovID0ge2lzYSA9IFBCWEZpbGVS
ZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29k
ZS5jLmg7IHBhdGggPSBKU1JUQ0NvbmZpZ3VyYXRpb24uaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+
IjsgfTsKLQkJMDczNzk0RTcxOUVFMzM1QzAwRTVBMDQ1IC8qIEpTTmF2aWdhdG9yQ3VzdG9tLmNw
cCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25v
d25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEpTTmF2aWdhdG9yQ3VzdG9t
LmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJMDczNzk0RTkxOUVFMzQxRTAwRTVB
MDQ1IC8qIEpTUlRDSWNlU2VydmVyLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBm
aWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsg
cGF0aCA9IEpTUlRDSWNlU2VydmVyLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJ
MDczNzk0RUExOUVFMzQxRTAwRTVBMDQ1IC8qIEpTUlRDSWNlU2VydmVyLmggKi8gPSB7aXNhID0g
UEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBz
b3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEpTUlRDSWNlU2VydmVyLmg7IHNvdXJjZVRyZWUgPSAiPGdy
b3VwPiI7IH07CiAJCTA3Mzc5NEVEMTlFRTM2NDIwMEU1QTA0NSAvKiBET01VUkxNZWRpYVN0cmVh
bS5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFz
dEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBET01VUkxNZWRpYVN0
cmVhbS5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CkBAIC03NDE5LDEwICs3NDA3LDYg
QEAKIAkJMDczQkUzM0YxN0QxN0UwMTAwMkJENDMxIC8qIEpTTmF2aWdhdG9yVXNlck1lZGlhLmgg
Ki8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3du
RmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEpTTmF2aWdhdG9yVXNlck1lZGlhLmg7
IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTA3M0JFMzQyMTdEMTdFN0EwMDJCRDQzMSAv
KiBKU05hdmlnYXRvclVzZXJNZWRpYUVycm9yLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJl
bmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3Bw
LmNwcDsgcGF0aCA9IEpTTmF2aWdhdG9yVXNlck1lZGlhRXJyb3IuY3BwOyBzb3VyY2VUcmVlID0g
Ijxncm91cD4iOyB9OwogCQkwNzNCRTM0MzE3RDE3RTdBMDAyQkQ0MzEgLyogSlNOYXZpZ2F0b3JV
c2VyTWVkaWFFcnJvci5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGlu
ZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBKU05hdmln
YXRvclVzZXJNZWRpYUVycm9yLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07Ci0JCTA3M0JF
MzQ0MTdEMTdFN0EwMDJCRDQzMSAvKiBKU05hdmlnYXRvclVzZXJNZWRpYUVycm9yQ2FsbGJhY2su
Y3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RL
bm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gSlNOYXZpZ2F0b3JVc2Vy
TWVkaWFFcnJvckNhbGxiYWNrLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKLQkJMDcz
QkUzNDUxN0QxN0U3QTAwMkJENDMxIC8qIEpTTmF2aWdhdG9yVXNlck1lZGlhRXJyb3JDYWxsYmFj
ay5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RL
bm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBKU05hdmlnYXRvclVzZXJNZWRp
YUVycm9yQ2FsbGJhY2suaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKLQkJMDczQkUzNDYx
N0QxN0U3QTAwMkJENDMxIC8qIEpTTmF2aWdhdG9yVXNlck1lZGlhU3VjY2Vzc0NhbGxiYWNrLmNw
cCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25v
d25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEpTTmF2aWdhdG9yVXNlck1l
ZGlhU3VjY2Vzc0NhbGxiYWNrLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKLQkJMDcz
QkUzNDcxN0QxN0U3QTAwMkJENDMxIC8qIEpTTmF2aWdhdG9yVXNlck1lZGlhU3VjY2Vzc0NhbGxi
YWNrLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFz
dEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEpTTmF2aWdhdG9yVXNlck1l
ZGlhU3VjY2Vzc0NhbGxiYWNrLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTA3NEU4
MkI4MThBNjlGMEUwMDdFRjU0QyAvKiBQbGF0Zm9ybVRpbWVSYW5nZXMuY3BwICovID0ge2lzYSA9
IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0g
c291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gUGxhdGZvcm1UaW1lUmFuZ2VzLmNwcDsgc291cmNl
VHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJMDc0RTgyQjkxOEE2OUYwRTAwN0VGNTRDIC8qIFBsYXRm
b3JtVGltZVJhbmdlcy5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGlu
ZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBQbGF0Zm9y
bVRpbWVSYW5nZXMuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJMDc1Mzg2MDAxNDQ4
OUU5ODAwQjc4NDUyIC8qIENhY2hlZFRleHRUcmFjay5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJl
ZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2Rl
LmNwcC5jcHA7IHBhdGggPSBDYWNoZWRUZXh0VHJhY2suY3BwOyBzb3VyY2VUcmVlID0gIjxncm91
cD4iOyB9OwpAQCAtODgwNiw2ICs4NzkwLDcgQEAKIAkJNDE5QkU3NTMxQkM3RjNEQjAwRTFDODVC
IC8qIFdlYkNvcmVKU0J1aWx0aW5JbnRlcm5hbHMuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJl
bmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5o
OyBwYXRoID0gV2ViQ29yZUpTQnVpbHRpbkludGVybmFscy5oOyBzb3VyY2VUcmVlID0gIjxncm91
cD4iOyB9OwogCQk0MTlCRTc1NDFCQzdGM0RCMDBFMUM4NUIgLyogV2ViQ29yZUpTQnVpbHRpbnMu
Y3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RL
bm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gV2ViQ29yZUpTQnVpbHRp
bnMuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQk0MTlCRTc1NTFCQzdGM0RCMDBF
MUM4NUIgLyogV2ViQ29yZUpTQnVpbHRpbnMuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNl
OyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBw
YXRoID0gV2ViQ29yZUpTQnVpbHRpbnMuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJ
NDE5QkU3NUExQkNCRDNFRDAwRTFDODVCIC8qIE5hdmlnYXRvclVzZXJNZWRpYS5qcyAqLyA9IHtp
c2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlw
ZSA9IHNvdXJjZWNvZGUuamF2YXNjcmlwdDsgcGF0aCA9IE5hdmlnYXRvclVzZXJNZWRpYS5qczsg
c291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJNDE5RkFGQUQxQUJBQkNENTAwNUI4MjhCIC8q
IFJlYWRhYmxlU3RyZWFtUmVhZGVyLmlkbCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBm
aWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHRleHQ7IHBhdGggPSBSZWFkYWJs
ZVN0cmVhbVJlYWRlci5pZGw7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTQxQTAyM0VE
MUEzOURCNzkwMEY3MjJDRiAvKiBSZWFkYWJsZVN0cmVhbS5pZGwgKi8gPSB7aXNhID0gUEJYRmls
ZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSB0ZXh0OyBw
YXRoID0gUmVhZGFibGVTdHJlYW0uaWRsOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQk0
MUEzRDU4QzEwMUMxNTJEMDAzMTZEMDcgLyogRGVkaWNhdGVkV29ya2VyVGhyZWFkLmNwcCAqLyA9
IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxl
VHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IERlZGljYXRlZFdvcmtlclRocmVhZC5j
cHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CkBAIC0xNDk3NiwxMyArMTQ5NjEsMTAgQEAK
IAkJCQk1RUE3MjVDQjFBQ0FCQ0I1MDBFQUQxN0IgLyogTmF2aWdhdG9yTWVkaWFEZXZpY2VzLmgg
Ki8sCiAJCQkJNUVBNzI1Q0MxQUNBQkNCNTAwRUFEMTdCIC8qIE5hdmlnYXRvck1lZGlhRGV2aWNl
cy5pZGwgKi8sCiAJCQkJMDcyMjFCNUMxN0NFQzMyNzAwODQ4RTUxIC8qIE5hdmlnYXRvclVzZXJN
ZWRpYS5pZGwgKi8sCisJCQkJNDE5QkU3NUExQkNCRDNFRDAwRTFDODVCIC8qIE5hdmlnYXRvclVz
ZXJNZWRpYS5qcyAqLywKIAkJCQkwNzAzMjdGNzE3RUE0QUFGMDBDRTEzMTggLyogTmF2aWdhdG9y
VXNlck1lZGlhRXJyb3IuY3BwICovLAogCQkJCTA3MjIxQjVEMTdDRUMzMjcwMDg0OEU1MSAvKiBO
YXZpZ2F0b3JVc2VyTWVkaWFFcnJvci5oICovLAogCQkJCTA3MjIxQjVFMTdDRUMzMjcwMDg0OEU1
MSAvKiBOYXZpZ2F0b3JVc2VyTWVkaWFFcnJvci5pZGwgKi8sCi0JCQkJMDcyMjFCNUYxN0NFQzMy
NzAwODQ4RTUxIC8qIE5hdmlnYXRvclVzZXJNZWRpYUVycm9yQ2FsbGJhY2suaCAqLywKLQkJCQkw
NzIyMUI2MDE3Q0VDMzI3MDA4NDhFNTEgLyogTmF2aWdhdG9yVXNlck1lZGlhRXJyb3JDYWxsYmFj
ay5pZGwgKi8sCi0JCQkJMDcyMjFCNjExN0NFQzMyNzAwODQ4RTUxIC8qIE5hdmlnYXRvclVzZXJN
ZWRpYVN1Y2Nlc3NDYWxsYmFjay5oICovLAotCQkJCTA3MjIxQjYyMTdDRUMzMjcwMDg0OEU1MSAv
KiBOYXZpZ2F0b3JVc2VyTWVkaWFTdWNjZXNzQ2FsbGJhY2suaWRsICovLAogCQkJCTA3QUI5OTY1
MThEQTNDMDEwMDE4NzcxRSAvKiBSVENDb25maWd1cmF0aW9uLmggKi8sCiAJCQkJMDdBQjk5NjYx
OERBM0MwMTAwMTg3NzFFIC8qIFJUQ0NvbmZpZ3VyYXRpb24uaWRsICovLAogCQkJCTA3MjIxQjYz
MTdDRUMzMjcwMDg0OEU1MSAvKiBSVENEYXRhQ2hhbm5lbC5jcHAgKi8sCkBAIC0xNTE4MCwxMCAr
MTUxNjIsNiBAQAogCQkJCTA3M0JFMzNGMTdEMTdFMDEwMDJCRDQzMSAvKiBKU05hdmlnYXRvclVz
ZXJNZWRpYS5oICovLAogCQkJCTA3M0JFMzQyMTdEMTdFN0EwMDJCRDQzMSAvKiBKU05hdmlnYXRv
clVzZXJNZWRpYUVycm9yLmNwcCAqLywKIAkJCQkwNzNCRTM0MzE3RDE3RTdBMDAyQkQ0MzEgLyog
SlNOYXZpZ2F0b3JVc2VyTWVkaWFFcnJvci5oICovLAotCQkJCTA3M0JFMzQ0MTdEMTdFN0EwMDJC
RDQzMSAvKiBKU05hdmlnYXRvclVzZXJNZWRpYUVycm9yQ2FsbGJhY2suY3BwICovLAotCQkJCTA3
M0JFMzQ1MTdEMTdFN0EwMDJCRDQzMSAvKiBKU05hdmlnYXRvclVzZXJNZWRpYUVycm9yQ2FsbGJh
Y2suaCAqLywKLQkJCQkwNzNCRTM0NjE3RDE3RTdBMDAyQkQ0MzEgLyogSlNOYXZpZ2F0b3JVc2Vy
TWVkaWFTdWNjZXNzQ2FsbGJhY2suY3BwICovLAotCQkJCTA3M0JFMzQ3MTdEMTdFN0EwMDJCRDQz
MSAvKiBKU05hdmlnYXRvclVzZXJNZWRpYVN1Y2Nlc3NDYWxsYmFjay5oICovLAogCQkJCTA3Mzc5
NEUzMTlFRTJGRjIwMEU1QTA0NSAvKiBKU1JUQ0NvbmZpZ3VyYXRpb24uY3BwICovLAogCQkJCTA3
Mzc5NEU0MTlFRTJGRjIwMEU1QTA0NSAvKiBKU1JUQ0NvbmZpZ3VyYXRpb24uaCAqLywKIAkJCQkw
Nzk2OUQ5MTE3RDE0MTUxMDA3RkY4NDIgLyogSlNSVENEYXRhQ2hhbm5lbC5jcHAgKi8sCkBAIC0y
MTg0Nyw3ICsyMTgyNSw2IEBACiAJCQkJQTFFNUIzMUQxQUFEMURBNDAwNkVCRUZCIC8qIEpTTW9j
a0NvbnRlbnRGaWx0ZXJTZXR0aW5nc0N1c3RvbS5jcHAgKi8sCiAJCQkJQzZGMDkxN0UxNDNBMkJC
OTAwNjg1ODQ5IC8qIEpTTXV0YXRpb25PYnNlcnZlckN1c3RvbS5jcHAgKi8sCiAJCQkJQkNEOUMy
NUYwQzE3QUE2NzAwNUM5MEEyIC8qIEpTTmFtZWROb2RlTWFwQ3VzdG9tLmNwcCAqLywKLQkJCQkw
NzM3OTRFNzE5RUUzMzVDMDBFNUEwNDUgLyogSlNOYXZpZ2F0b3JDdXN0b20uY3BwICovLAogCQkJ
CUJDRDlDMjYwMEMxN0FBNjcwMDVDOTBBMiAvKiBKU05vZGVDdXN0b20uY3BwICovLAogCQkJCUJD
OTQzOUMyMTE2Q0Y0OTQwMDQ4Qzc1MCAvKiBKU05vZGVDdXN0b20uaCAqLywKIAkJCQkxQTc1MERE
MzBBOTBFNzI5MDAwRkYyMTUgLyogSlNOb2RlSXRlcmF0b3JDdXN0b20uY3BwICovLApAQCAtMjU5
MjUsOCArMjU5MDIsNiBAQAogCQkJCUE5RDI0N0Y4MEQ3NTdFMzQwMEZERjk1OSAvKiBKU05hdmln
YXRvci5oIGluIEhlYWRlcnMgKi8sCiAJCQkJMDczQkUzNDExN0QxN0UwMTAwMkJENDMxIC8qIEpT
TmF2aWdhdG9yVXNlck1lZGlhLmggaW4gSGVhZGVycyAqLywKIAkJCQkwNzNCRTM0OTE3RDE3RTdB
MDAyQkQ0MzEgLyogSlNOYXZpZ2F0b3JVc2VyTWVkaWFFcnJvci5oIGluIEhlYWRlcnMgKi8sCi0J
CQkJMDczQkUzNEIxN0QxN0U3QTAwMkJENDMxIC8qIEpTTmF2aWdhdG9yVXNlck1lZGlhRXJyb3JD
YWxsYmFjay5oIGluIEhlYWRlcnMgKi8sCi0JCQkJMDczQkUzNEQxN0QxN0U3QTAwMkJENDMxIC8q
IEpTTmF2aWdhdG9yVXNlck1lZGlhU3VjY2Vzc0NhbGxiYWNrLmggaW4gSGVhZGVycyAqLywKIAkJ
CQlCQzk0MzlDMzExNkNGNDk0MDA0OEM3NTAgLyogSlNOb2RlQ3VzdG9tLmggaW4gSGVhZGVycyAq
LywKIAkJCQkxNDExNUI3MzA5Rjg0Q0Q2MDBDQTRGQzEgLyogSlNOb2RlRmlsdGVyLmggaW4gSGVh
ZGVycyAqLywKIAkJCQkxQTc1MEQ4RTBBOTBFNTIxMDAwRkYyMTUgLyogSlNOb2RlSXRlcmF0b3Iu
aCBpbiBIZWFkZXJzICovLApAQCAtMjY0NzQsOCArMjY0NDksNiBAQAogCQkJCTk3MTE0NjA0MTRF
RjAwOUEwMDY3NEZEOSAvKiBOYXZpZ2F0b3JHZW9sb2NhdGlvbi5oIGluIEhlYWRlcnMgKi8sCiAJ
CQkJNUVBNzI1RDYxQUNBQkQ1NzAwRUFEMTdCIC8qIE5hdmlnYXRvck1lZGlhRGV2aWNlcy5oIGlu
IEhlYWRlcnMgKi8sCiAJCQkJMDc4RTA5MUIxN0QxNEQxQzAwNDIwQUExIC8qIE5hdmlnYXRvclVz
ZXJNZWRpYUVycm9yLmggaW4gSGVhZGVycyAqLywKLQkJCQkwNzhFMDkxQzE3RDE0RDFDMDA0MjBB
QTEgLyogTmF2aWdhdG9yVXNlck1lZGlhRXJyb3JDYWxsYmFjay5oIGluIEhlYWRlcnMgKi8sCi0J
CQkJMDc4RTA5MUQxN0QxNEQxQzAwNDIwQUExIC8qIE5hdmlnYXRvclVzZXJNZWRpYVN1Y2Nlc3ND
YWxsYmFjay5oIGluIEhlYWRlcnMgKi8sCiAJCQkJQTE5RDkzNDYxQTlGRUM3MjAwQjQ2QzI0IC8q
IE5FRmlsdGVyU291cmNlU1BJLmggaW4gSGVhZGVycyAqLywKIAkJCQk4QTMwOUM5RjEyMzk1MEJF
MDBDQjkyMDQgLyogTmVzdGluZ0xldmVsSW5jcmVtZW50ZXIuaCBpbiBIZWFkZXJzICovLAogCQkJ
CTY1NkQzNzQzMEFEQkE1REUwMEE0NTU0RCAvKiBOZXRzY2FwZVBsdWdJblN0cmVhbUxvYWRlci5o
IGluIEhlYWRlcnMgKi8sCkBAIC0yOTU2NCwxMSArMjk1MzcsOCBAQAogCQkJCUJDRDlDMkMwMEMx
N0I2OUUwMDVDOTBBMiAvKiBKU05hbWVkTm9kZU1hcC5jcHAgaW4gU291cmNlcyAqLywKIAkJCQlC
Q0Q5QzI2MzBDMTdBQTY3MDA1QzkwQTIgLyogSlNOYW1lZE5vZGVNYXBDdXN0b20uY3BwIGluIFNv
dXJjZXMgKi8sCiAJCQkJQTlEMjQ3RjcwRDc1N0UzNDAwRkRGOTU5IC8qIEpTTmF2aWdhdG9yLmNw
cCBpbiBTb3VyY2VzICovLAotCQkJCTA3Mzc5NEU4MTlFRTMzNUMwMEU1QTA0NSAvKiBKU05hdmln
YXRvckN1c3RvbS5jcHAgaW4gU291cmNlcyAqLywKIAkJCQkwNzNCRTM0MDE3RDE3RTAxMDAyQkQ0
MzEgLyogSlNOYXZpZ2F0b3JVc2VyTWVkaWEuY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJMDczQkUz
NDgxN0QxN0U3QTAwMkJENDMxIC8qIEpTTmF2aWdhdG9yVXNlck1lZGlhRXJyb3IuY3BwIGluIFNv
dXJjZXMgKi8sCi0JCQkJMDczQkUzNEExN0QxN0U3QTAwMkJENDMxIC8qIEpTTmF2aWdhdG9yVXNl
ck1lZGlhRXJyb3JDYWxsYmFjay5jcHAgaW4gU291cmNlcyAqLywKLQkJCQkwNzNCRTM0QzE3RDE3
RTdBMDAyQkQ0MzEgLyogSlNOYXZpZ2F0b3JVc2VyTWVkaWFTdWNjZXNzQ2FsbGJhY2suY3BwIGlu
IFNvdXJjZXMgKi8sCiAJCQkJMTREQzBEMzcwOUZFRDA3MzAwN0IwMjM1IC8qIEpTTm9kZS5jcHAg
aW4gU291cmNlcyAqLywKIAkJCQlCQ0Q5QzI2NDBDMTdBQTY3MDA1QzkwQTIgLyogSlNOb2RlQ3Vz
dG9tLmNwcCBpbiBTb3VyY2VzICovLAogCQkJCTE0MTE1QjcyMDlGODRDRDYwMENBNEZDMSAvKiBK
U05vZGVGaWx0ZXIuY3BwIGluIFNvdXJjZXMgKi8sCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29y
ZS9iaW5kaW5ncy9qcy9KU0RPTVdpbmRvd0Jhc2UuY3BwIGIvU291cmNlL1dlYkNvcmUvYmluZGlu
Z3MvanMvSlNET01XaW5kb3dCYXNlLmNwcAppbmRleCAyYWY5Nzk5ZWQxZWJlZDRmYjljYjhkOTRm
Njc2OGFjOTU2MmNmYzAyLi42MTJkMGJhYzZmODY5ZjQ0YzAwMWVjODE3YWE4NWJkMzRmMTg3NDkw
IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9KU0RPTVdpbmRvd0Jhc2Uu
Y3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0pTRE9NV2luZG93QmFzZS5jcHAK
QEAgLTMsNiArMyw3IEBACiAgKiAgQ29weXJpZ2h0IChDKSAyMDA2IEpvbiBTaGllciAoanNoaWVy
QGlhc3RhdGUuZWR1KQogICogIENvcHlyaWdodCAoQykgMjAwMy0yMDA5LCAyMDE0IEFwcGxlIElu
Yy4gQWxsIHJpZ2h0cyByZXNldmVkLgogICogIENvcHlyaWdodCAoQykgMjAwNiBBbGV4ZXkgUHJv
c2t1cnlha292IChhcEB3ZWJraXQub3JnKQorICogIENvcHlyaWdodCAoYykgMjAxNSBDYW5vbiBJ
bmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCiAgKgogICogIFRoaXMgbGlicmFyeSBpcyBmcmVlIHNv
ZnR3YXJlOyB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IKICAqICBtb2RpZnkgaXQgdW5k
ZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUgTGVzc2VyIEdlbmVyYWwgUHVibGljCkBAIC01Miw2ICs1
MywxMiBAQAogI2luY2x1ZGUgIlJlYWRhYmxlU3RyZWFtSW50ZXJuYWxzQnVpbHRpbnMuaCIKICNl
bmRpZgogCisjaW5jbHVkZSAiSlNYTUxIdHRwUmVxdWVzdC5oIgorCisjaWYgRU5BQkxFKE1FRElB
X1NUUkVBTSkKKyNpbmNsdWRlICJKU01lZGlhRGV2aWNlcy5oIgorI2VuZGlmCisKIHVzaW5nIG5h
bWVzcGFjZSBKU0M7CiAKIG5hbWVzcGFjZSBXZWJDb3JlIHsKQEAgLTgxLDE5ICs4OCwyOSBAQCB2
b2lkIEpTRE9NV2luZG93QmFzZTo6ZmluaXNoQ3JlYXRpb24oVk0mIHZtLCBKU0RPTVdpbmRvd1No
ZWxsKiBzaGVsbCkKIAogICAgIG1fcHJpdmF0ZUZ1bmN0aW9ucy5pbml0KCp0aGlzKTsKIAorI2lm
IEVOQUJMRShNRURJQV9TVFJFQU0pIHwgRU5BQkxFKE1FRElBX1NUUkVBTVNfQVBJKQorICAgIEpT
Vk1DbGllbnREYXRhJiBjbGllbnREYXRhID0gKnN0YXRpY19jYXN0PEpTVk1DbGllbnREYXRhKj4o
dm0uY2xpZW50RGF0YSk7CisjZW5kaWYKKyNpZiBFTkFCTEUoTUVESUFfU1RSRUFNKQorICAgIEpT
VmFsdWUgZ2V0VXNlck1lZGlhRnVuY3Rpb24gPSBnZXRET01Qcm90b3R5cGU8SlNNZWRpYURldmlj
ZXM+KHZtLCB0aGlzKS0+Z2V0KGdsb2JhbEV4ZWMoKSwgY2xpZW50RGF0YS5idWlsdGluTmFtZXMo
KS5nZXRVc2VyTWVkaWFQdWJsaWNOYW1lKCkpOworICAgIEFTU0VSVCghIWdldFVzZXJNZWRpYUZ1
bmN0aW9uKTsKKyNlbmRpZgorCiAgICAgR2xvYmFsUHJvcGVydHlJbmZvIHN0YXRpY0dsb2JhbHNb
XSA9IHsKICAgICAgICAgR2xvYmFsUHJvcGVydHlJbmZvKHZtLnByb3BlcnR5TmFtZXMtPmRvY3Vt
ZW50LCBqc051bGwoKSwgRG9udERlbGV0ZSB8IFJlYWRPbmx5KSwKICAgICAgICAgR2xvYmFsUHJv
cGVydHlJbmZvKHZtLnByb3BlcnR5TmFtZXMtPndpbmRvdywgbV9zaGVsbCwgRG9udERlbGV0ZSB8
IFJlYWRPbmx5KSwKKyAgICAgICAgR2xvYmFsUHJvcGVydHlJbmZvKGNsaWVudERhdGEuYnVpbHRp
bk5hbWVzKCkucmVhZGFibGVTdHJlYW1DbG9zZWRQcml2YXRlTmFtZSgpLCBqc051bWJlcigxKSwg
RG9udERlbGV0ZSB8IFJlYWRPbmx5KSwKKyNpZiBFTkFCTEUoTUVESUFfU1RSRUFNKQorICAgICAg
ICBHbG9iYWxQcm9wZXJ0eUluZm8oY2xpZW50RGF0YS5idWlsdGluTmFtZXMoKS5nZXRVc2VyTWVk
aWFQcml2YXRlTmFtZSgpLCBnZXRVc2VyTWVkaWFGdW5jdGlvbiwgRG9udERlbGV0ZSB8IFJlYWRP
bmx5KSwKKyNlbmRpZgogI2lmIEVOQUJMRShTVFJFQU1TX0FQSSkKLSAgICAgICAgR2xvYmFsUHJv
cGVydHlJbmZvKHN0YXRpY19jYXN0PEpTVk1DbGllbnREYXRhKj4odm0uY2xpZW50RGF0YSktPmJ1
aWx0aW5OYW1lcygpLnJlYWRhYmxlU3RyZWFtQ2xvc2VkUHJpdmF0ZU5hbWUoKSwganNOdW1iZXIo
MSksIERvbnREZWxldGUgfCBSZWFkT25seSksCi0gICAgICAgIEdsb2JhbFByb3BlcnR5SW5mbyhz
dGF0aWNfY2FzdDxKU1ZNQ2xpZW50RGF0YSo+KHZtLmNsaWVudERhdGEpLT5idWlsdGluTmFtZXMo
KS5yZWFkYWJsZVN0cmVhbUVycm9yZWRQcml2YXRlTmFtZSgpLCBqc051bWJlcigyKSwgRG9udERl
bGV0ZSB8IFJlYWRPbmx5KSwKLSAgICAgICAgR2xvYmFsUHJvcGVydHlJbmZvKHN0YXRpY19jYXN0
PEpTVk1DbGllbnREYXRhKj4odm0uY2xpZW50RGF0YSktPmJ1aWx0aW5OYW1lcygpLnJlYWRhYmxl
U3RyZWFtUmVhZGFibGVQcml2YXRlTmFtZSgpLCBqc051bWJlcigzKSwgRG9udERlbGV0ZSB8IFJl
YWRPbmx5KSwKLSAgICAgICAgR2xvYmFsUHJvcGVydHlJbmZvKHN0YXRpY19jYXN0PEpTVk1DbGll
bnREYXRhKj4odm0uY2xpZW50RGF0YSktPmJ1aWx0aW5OYW1lcygpLlJlYWRhYmxlU3RyZWFtQ29u
dHJvbGxlclByaXZhdGVOYW1lKCksIGNyZWF0ZVJlYWRhYmxlU3RyZWFtQ29udHJvbGxlclByaXZh
dGVDb25zdHJ1Y3Rvcih2bSwgKnRoaXMpLCBEb250RGVsZXRlIHwgUmVhZE9ubHkpLAotICAgICAg
ICBHbG9iYWxQcm9wZXJ0eUluZm8oc3RhdGljX2Nhc3Q8SlNWTUNsaWVudERhdGEqPih2bS5jbGll
bnREYXRhKS0+YnVpbHRpbk5hbWVzKCkuUmVhZGFibGVTdHJlYW1SZWFkZXJQcml2YXRlTmFtZSgp
LCBjcmVhdGVSZWFkYWJsZVN0cmVhbVJlYWRlclByaXZhdGVDb25zdHJ1Y3Rvcih2bSwgKnRoaXMp
LCBEb250RGVsZXRlIHwgUmVhZE9ubHkpLAorICAgICAgICBHbG9iYWxQcm9wZXJ0eUluZm8oY2xp
ZW50RGF0YS5idWlsdGluTmFtZXMoKS5yZWFkYWJsZVN0cmVhbUVycm9yZWRQcml2YXRlTmFtZSgp
LCBqc051bWJlcigyKSwgRG9udERlbGV0ZSB8IFJlYWRPbmx5KSwKKyAgICAgICAgR2xvYmFsUHJv
cGVydHlJbmZvKGNsaWVudERhdGEuYnVpbHRpbk5hbWVzKCkucmVhZGFibGVTdHJlYW1SZWFkYWJs
ZVByaXZhdGVOYW1lKCksIGpzTnVtYmVyKDMpLCBEb250RGVsZXRlIHwgUmVhZE9ubHkpLAorICAg
ICAgICBHbG9iYWxQcm9wZXJ0eUluZm8oY2xpZW50RGF0YS5idWlsdGluTmFtZXMoKS5SZWFkYWJs
ZVN0cmVhbUNvbnRyb2xsZXJQcml2YXRlTmFtZSgpLCBjcmVhdGVSZWFkYWJsZVN0cmVhbUNvbnRy
b2xsZXJQcml2YXRlQ29uc3RydWN0b3Iodm0sICp0aGlzKSwgRG9udERlbGV0ZSB8IFJlYWRPbmx5
KSwKKyAgICAgICAgR2xvYmFsUHJvcGVydHlJbmZvKGNsaWVudERhdGEuYnVpbHRpbk5hbWVzKCku
UmVhZGFibGVTdHJlYW1SZWFkZXJQcml2YXRlTmFtZSgpLCBjcmVhdGVSZWFkYWJsZVN0cmVhbVJl
YWRlclByaXZhdGVDb25zdHJ1Y3Rvcih2bSwgKnRoaXMpLCBEb250RGVsZXRlIHwgUmVhZE9ubHkp
LAogI2RlZmluZSBERUNMQVJFX0dMT0JBTF9TVEFUSUMobmFtZSlcCiAgICAgICAgIEdsb2JhbFBy
b3BlcnR5SW5mbyhcCi0gICAgICAgICAgICBzdGF0aWNfY2FzdDxKU1ZNQ2xpZW50RGF0YSo+KHZt
LmNsaWVudERhdGEpLT5idWlsdGluRnVuY3Rpb25zKCkucmVhZGFibGVTdHJlYW1JbnRlcm5hbHNC
dWlsdGlucygpLm5hbWUjI1ByaXZhdGVOYW1lKCksIFwKLSAgICAgICAgICAgIG1fcHJpdmF0ZUZ1
bmN0aW9ucy5yZWFkYWJsZVN0cmVhbUludGVybmFscygpLm1fIyNuYW1lIyNGdW5jdGlvbi5nZXQo
KSAsIERvbnREZWxldGUgfCBSZWFkT25seSksCisgICAgICAgICAgICBjbGllbnREYXRhLmJ1aWx0
aW5GdW5jdGlvbnMoKS5yZWFkYWJsZVN0cmVhbUludGVybmFsc0J1aWx0aW5zKCkubmFtZSMjUHJp
dmF0ZU5hbWUoKSwgbV9wcml2YXRlRnVuY3Rpb25zLnJlYWRhYmxlU3RyZWFtSW50ZXJuYWxzKCku
bV8jI25hbWUjI0Z1bmN0aW9uLmdldCgpICwgRG9udERlbGV0ZSB8IFJlYWRPbmx5KSwKICAgICAg
ICAgV0VCQ09SRVJFQURBQkxFU1RSRUFNSU5URVJOQUxTX0ZPUkVBQ0hfQlVJTFRJTl9GVU5DVElP
Tl9OQU1FKERFQ0xBUkVfR0xPQkFMX1NUQVRJQykKICN1bmRlZiBERUNMQVJFX0dMT0JBTF9TVEFU
SUMKICNlbmRpZgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvSlNOYXZp
Z2F0b3JDdXN0b20uY3BwIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvSlNOYXZpZ2F0b3JD
dXN0b20uY3BwCmluZGV4IDNkNWZlMTI0ODY0ODYzNGE2NGExZDg5NzVjNGFjMWJjM2QxYmQ5Yjgu
LmUzZjIxNDA1YzZjNjM5MjJmYThjYTdhMWNmYzVhZDE5OTI2YzlmMzkgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0pTTmF2aWdhdG9yQ3VzdG9tLmNwcAorKysgYi9Tb3Vy
Y2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9KU05hdmlnYXRvckN1c3RvbS5jcHAKQEAgLTI3LDc3ICsy
Nyw2IEBACiAjaW5jbHVkZSAiY29uZmlnLmgiCiAKICNpZiBFTkFCTEUoTUVESUFfU1RSRUFNKQot
I2luY2x1ZGUgIkpTTmF2aWdhdG9yLmgiCiAKLSNpbmNsdWRlICJEaWN0aW9uYXJ5LmgiCi0jaW5j
bHVkZSAiRG9jdW1lbnQuaCIKLSNpbmNsdWRlICJFeGNlcHRpb25Db2RlLmgiCi0jaW5jbHVkZSAi
RnJhbWUuaCIKLSNpbmNsdWRlICJKU05hdmlnYXRvclVzZXJNZWRpYUVycm9yQ2FsbGJhY2suaCIK
LSNpbmNsdWRlICJKU05hdmlnYXRvclVzZXJNZWRpYVN1Y2Nlc3NDYWxsYmFjay5oIgotI2luY2x1
ZGUgIk1lZGlhU3RyZWFtLmgiCi0jaW5jbHVkZSAiVXNlck1lZGlhUmVxdWVzdC5oIgotCi11c2lu
ZyBuYW1lc3BhY2UgSlNDOwotCi1uYW1lc3BhY2UgV2ViQ29yZSB7Ci0KLUpTVmFsdWUgSlNOYXZp
Z2F0b3I6OndlYmtpdEdldFVzZXJNZWRpYShFeGVjU3RhdGUmIHN0YXRlKQotewotICAgIGlmIChz
dGF0ZS5hcmd1bWVudENvdW50KCkgPCAzKSB7Ci0gICAgICAgIHRocm93Vk1FcnJvcigmc3RhdGUs
IGNyZWF0ZU5vdEVub3VnaEFyZ3VtZW50c0Vycm9yKCZzdGF0ZSkpOwotICAgICAgICByZXR1cm4g
anNVbmRlZmluZWQoKTsKLSAgICB9Ci0KLSAgICBEaWN0aW9uYXJ5IG9wdGlvbnMoJnN0YXRlLCBz
dGF0ZS5hcmd1bWVudCgwKSk7Ci0gICAgaWYgKHN0YXRlLmhhZEV4Y2VwdGlvbigpKQotICAgICAg
ICByZXR1cm4ganNVbmRlZmluZWQoKTsKLQotICAgIGlmICghb3B0aW9ucy5pc09iamVjdCgpKSB7
Ci0gICAgICAgIHRocm93Vk1FcnJvcigmc3RhdGUsIGNyZWF0ZVR5cGVFcnJvcigmc3RhdGUsICJG
aXJzdCBhcmd1bWVudCBvZiB3ZWJraXRHZXRVc2VyTWVkaWEgbXVzdCBiZSBhIHZhbGlkIERpY3Rp
b25hcnkiKSk7Ci0gICAgICAgIHJldHVybiBqc1VuZGVmaW5lZCgpOwotICAgIH0KLQotICAgIGlm
ICghc3RhdGUuYXJndW1lbnQoMSkuaXNGdW5jdGlvbigpKSB7Ci0gICAgICAgIHRocm93Vk1UeXBl
RXJyb3IoJnN0YXRlLCAiQXJndW1lbnQgMiAoJ3N1Y2Nlc3NDYWxsYmFjaycpIHRvIE5hdmlnYXRv
ci53ZWJraXRHZXRVc2VyTWVkaWEgbXVzdCBiZSBhIGZ1bmN0aW9uIik7Ci0gICAgICAgIHJldHVy
biBqc1VuZGVmaW5lZCgpOwotICAgIH0KLQotICAgIGlmICghc3RhdGUuYXJndW1lbnQoMikuaXNG
dW5jdGlvbigpKSB7Ci0gICAgICAgIHRocm93Vk1UeXBlRXJyb3IoJnN0YXRlLCAiQXJndW1lbnQg
MyAoJ2Vycm9yQ2FsbGJhY2snKSB0byBOYXZpZ2F0b3Iud2Via2l0R2V0VXNlck1lZGlhIG11c3Qg
YmUgYSBmdW5jdGlvbiIpOwotICAgICAgICByZXR1cm4ganNVbmRlZmluZWQoKTsKLSAgICB9Ci0K
LSAgICBpZiAoIWltcGwoKS5mcmFtZSgpKSB7Ci0gICAgICAgIHNldERPTUV4Y2VwdGlvbigmc3Rh
dGUsIE5PVF9TVVBQT1JURURfRVJSKTsKLSAgICAgICAgcmV0dXJuIGpzVW5kZWZpbmVkKCk7Ci0g
ICAgfQotCi0gICAgLy8gV2UgZG8gbm90IG5lZWQgdG8gcHJvdGVjdCB0aGUgY29udGV4dCAoaS5l
LiBkb2N1bWVudCkgaGVyZSBhcyBVc2VyTWVkaWFSZXF1ZXN0IGlzIG9ic2VydmluZyBjb250ZXh0
IGRlc3RydWN0aW9uIGFuZCB3aWxsIGNoZWNrIHZhbGlkaXR5IGJlZm9yZSByZXNvbHZpbmcvcmVq
ZWN0aW5nIHByb21pc2UuCi0gICAgRG9jdW1lbnQqIGRvY3VtZW50ID0gaW1wbCgpLmZyYW1lKCkt
PmRvY3VtZW50KCk7Ci0KLSAgICBSZWZQdHI8TmF2aWdhdG9yVXNlck1lZGlhU3VjY2Vzc0NhbGxi
YWNrPiBzdWNjZXNzQ2FsbGJhY2sgPSBKU05hdmlnYXRvclVzZXJNZWRpYVN1Y2Nlc3NDYWxsYmFj
azo6Y3JlYXRlKGFzT2JqZWN0KHN0YXRlLnVuY2hlY2tlZEFyZ3VtZW50KDEpKSwgZ2xvYmFsT2Jq
ZWN0KCkpOwotICAgIGF1dG8gcmVzb2x2ZUNhbGxiYWNrID0gW3N1Y2Nlc3NDYWxsYmFjaywgZG9j
dW1lbnRdKGNvbnN0IFJlZlB0cjxNZWRpYVN0cmVhbT4mIHN0cmVhbSkgbXV0YWJsZSB7Ci0gICAg
ICAgIFJlZlB0cjxNZWRpYVN0cmVhbT4gcHJvdGVjdGVkU3RyZWFtID0gc3RyZWFtOwotICAgICAg
ICBkb2N1bWVudC0+cG9zdFRhc2soW3N1Y2Nlc3NDYWxsYmFjaywgcHJvdGVjdGVkU3RyZWFtXShT
Y3JpcHRFeGVjdXRpb25Db250ZXh0JikgewotICAgICAgICAgICAgc3VjY2Vzc0NhbGxiYWNrLT5o
YW5kbGVFdmVudChwcm90ZWN0ZWRTdHJlYW0uZ2V0KCkpOwotICAgICAgICB9KTsKLSAgICB9Owot
Ci0gICAgUmVmUHRyPE5hdmlnYXRvclVzZXJNZWRpYUVycm9yQ2FsbGJhY2s+IGVycm9yQ2FsbGJh
Y2sgPSBKU05hdmlnYXRvclVzZXJNZWRpYUVycm9yQ2FsbGJhY2s6OmNyZWF0ZShhc09iamVjdChz
dGF0ZS51bmNoZWNrZWRBcmd1bWVudCgyKSksIGdsb2JhbE9iamVjdCgpKTsKLSAgICBhdXRvIHJl
amVjdENhbGxiYWNrID0gW2Vycm9yQ2FsbGJhY2ssIGRvY3VtZW50XShjb25zdCBSZWZQdHI8TmF2
aWdhdG9yVXNlck1lZGlhRXJyb3I+JiBlcnJvcikgbXV0YWJsZSB7Ci0gICAgICAgIFJlZlB0cjxO
YXZpZ2F0b3JVc2VyTWVkaWFFcnJvcj4gcHJvdGVjdGVkRXJyb3IgPSBlcnJvcjsKLSAgICAgICAg
ZG9jdW1lbnQtPnBvc3RUYXNrKFtlcnJvckNhbGxiYWNrLCBwcm90ZWN0ZWRFcnJvcl0oU2NyaXB0
RXhlY3V0aW9uQ29udGV4dCYpIHsKLSAgICAgICAgICAgIGVycm9yQ2FsbGJhY2stPmhhbmRsZUV2
ZW50KHByb3RlY3RlZEVycm9yLmdldCgpKTsKLSAgICAgICAgfSk7Ci0gICAgfTsKLQotICAgIEV4
Y2VwdGlvbkNvZGUgZWMgPSAwOwotICAgIFVzZXJNZWRpYVJlcXVlc3Q6OnN0YXJ0KGRvY3VtZW50
LCBvcHRpb25zLCBNZWRpYURldmljZXM6OlByb21pc2UoV1RGOjptb3ZlKHJlc29sdmVDYWxsYmFj
ayksIFdURjo6bW92ZShyZWplY3RDYWxsYmFjaykpLCBlYyk7Ci0gICAgc2V0RE9NRXhjZXB0aW9u
KCZzdGF0ZSwgZWMpOwotICAgIHJldHVybiBqc1VuZGVmaW5lZCgpOwotfQotCi19IC8vIG5hbWVz
cGFjZSBXZWJDb3JlCiAKICNlbmRpZiAvLyBFTkFCTEUoTUVESUFfU1RSRUFNKQpkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvV2ViQ29yZUJ1aWx0aW5OYW1lcy5oIGIvU291
cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvV2ViQ29yZUJ1aWx0aW5OYW1lcy5oCmluZGV4IGU5OWUw
NjlmZWNjYzg1NjBhODA3YTJjNmZjMzRjM2Q5YTI2MDk0OTMuLmVkZTBlNDE3NTg0MTBiYzM2MmM4
YzQzOWJhOWZmMjEyYWFmNmIzYmIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdz
L2pzL1dlYkNvcmVCdWlsdGluTmFtZXMuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9q
cy9XZWJDb3JlQnVpbHRpbk5hbWVzLmgKQEAgLTI3LDYgKzI3LDcgQEAKIG5hbWVzcGFjZSBXZWJD
b3JlIHsKIAogI2RlZmluZSBXRUJDT1JFX0NPTU1PTl9QUklWQVRFX0lERU5USUZJRVJTX0VBQ0hf
UFJPUEVSVFlfTkFNRShtYWNybylcCisgICAgbWFjcm8oZ2V0VXNlck1lZGlhKSBcCiAgICAgbWFj
cm8oc3RhdGUpIFwKICAgICBtYWNybyh1bmRlcmx5aW5nU291cmNlKSBcCiAgICAgbWFjcm8ocXVl
dWUpIFwKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL1dlYkNvcmVKU0J1
aWx0aW5zLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL1dlYkNvcmVKU0J1aWx0aW5z
LmNwcAppbmRleCAyM2Q0MjFkYjA5NWMxODcyMTA4ODA0NTU4MDFmNWMyOGI2ZDU0NzMxLi4wYmIz
ZTJjYTJiNWUwNDc2YzkxYTJkNTk1ZDY1NjVkYWUzYzdmNGVmIDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V2ViQ29yZS9iaW5kaW5ncy9qcy9XZWJDb3JlSlNCdWlsdGlucy5jcHAKKysrIGIvU291cmNlL1dl
YkNvcmUvYmluZGluZ3MvanMvV2ViQ29yZUpTQnVpbHRpbnMuY3BwCkBAIC0yNSwzICsyNSw2IEBA
CiAjaW5jbHVkZSAiUmVhZGFibGVTdHJlYW1JbnRlcm5hbHNCdWlsdGlucy5jcHAiCiAjaW5jbHVk
ZSAiUmVhZGFibGVTdHJlYW1SZWFkZXJCdWlsdGlucy5jcHAiCiAjZW5kaWYKKyNpZiBFTkFCTEUo
TUVESUFfU1RSRUFNKQorI2luY2x1ZGUgIk5hdmlnYXRvclVzZXJNZWRpYUJ1aWx0aW5zLmNwcCIK
KyNlbmRpZgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvV2ViQ29yZUpT
QnVpbHRpbnMuaCBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL1dlYkNvcmVKU0J1aWx0aW5z
LmgKaW5kZXggN2YyZjNmNzliN2QwN2I4NTk0NGE2NDhjMGFhNDM4MGZkM2NlNjllZi4uOTg4Mzgy
MTc3NTExMjBhMzk4MWMyYWEyNDQ4YjU4OTNmYzY5ODMzNSAxMDA2NDQKLS0tIGEvU291cmNlL1dl
YkNvcmUvYmluZGluZ3MvanMvV2ViQ29yZUpTQnVpbHRpbnMuaAorKysgYi9Tb3VyY2UvV2ViQ29y
ZS9iaW5kaW5ncy9qcy9XZWJDb3JlSlNCdWlsdGlucy5oCkBAIC0yNyw2ICsyNyw5IEBACiAjaW5j
bHVkZSAiUmVhZGFibGVTdHJlYW1SZWFkZXJCdWlsdGluc1dyYXBwZXIuaCIKICNlbmRpZgogCisj
aWYgRU5BQkxFKE1FRElBX1NUUkVBTSkKKyNpbmNsdWRlICJOYXZpZ2F0b3JVc2VyTWVkaWFCdWls
dGluc1dyYXBwZXIuaCIKKyNlbmRpZgogCiAjaW5jbHVkZSA8cnVudGltZS9WTS5oPgogCkBAIC00
NCw2ICs0Nyw5IEBAIHB1YmxpYzoKICAgICAgICAgLCBtX3JlYWRhYmxlU3RyZWFtSW50ZXJuYWxz
QnVpbHRpbnMoJnZtKQogICAgICAgICAsIG1fcmVhZGFibGVTdHJlYW1SZWFkZXJCdWlsdGlucygm
dm0pCiAjZW5kaWYKKyNpZiBFTkFCTEUoTUVESUFfU1RSRUFNKQorICAgICAgICAsIG1fbmF2aWdh
dG9yVXNlck1lZGlhQnVpbHRpbnMoJnZtKQorI2VuZGlmCiAgICAgewogI2lmIEVOQUJMRShTVFJF
QU1TX0FQSSkKICAgICAgICAgbV9yZWFkYWJsZVN0cmVhbUludGVybmFsc0J1aWx0aW5zLmV4cG9y
dE5hbWVzKCk7CkBAIC01Nyw2ICs2Myw5IEBAIHB1YmxpYzoKICAgICBSZWFkYWJsZVN0cmVhbUlu
dGVybmFsc0J1aWx0aW5zV3JhcHBlciYgcmVhZGFibGVTdHJlYW1JbnRlcm5hbHNCdWlsdGlucygp
IHsgcmV0dXJuIG1fcmVhZGFibGVTdHJlYW1JbnRlcm5hbHNCdWlsdGluczt9CiAgICAgUmVhZGFi
bGVTdHJlYW1SZWFkZXJCdWlsdGluc1dyYXBwZXImIHJlYWRhYmxlU3RyZWFtUmVhZGVyQnVpbHRp
bnMoKSB7IHJldHVybiBtX3JlYWRhYmxlU3RyZWFtUmVhZGVyQnVpbHRpbnM7fQogI2VuZGlmCisj
aWYgRU5BQkxFKE1FRElBX1NUUkVBTSkKKyAgICBOYXZpZ2F0b3JVc2VyTWVkaWFCdWlsdGluc1dy
YXBwZXImIG5hdmlnYXRvclVzZXJNZWRpYUJ1aWx0aW5zKCkgeyByZXR1cm4gbV9uYXZpZ2F0b3JV
c2VyTWVkaWFCdWlsdGluczt9CisjZW5kaWYKIAogcHJpdmF0ZToKICAgICBKU0M6OlZNJiB2bTsK
QEAgLTY4LDYgKzc3LDkgQEAgcHJpdmF0ZToKICAgICBSZWFkYWJsZVN0cmVhbUludGVybmFsc0J1
aWx0aW5zV3JhcHBlciBtX3JlYWRhYmxlU3RyZWFtSW50ZXJuYWxzQnVpbHRpbnM7CiAgICAgUmVh
ZGFibGVTdHJlYW1SZWFkZXJCdWlsdGluc1dyYXBwZXIgbV9yZWFkYWJsZVN0cmVhbVJlYWRlckJ1
aWx0aW5zOwogI2VuZGlmCisjaWYgRU5BQkxFKE1FRElBX1NUUkVBTSkKKyAgICBOYXZpZ2F0b3JV
c2VyTWVkaWFCdWlsdGluc1dyYXBwZXIgbV9uYXZpZ2F0b3JVc2VyTWVkaWFCdWlsdGluczsKKyNl
bmRpZgogCiB9OwogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRz
L0NvZGVHZW5lcmF0b3JKUy5wbSBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvQ29k
ZUdlbmVyYXRvckpTLnBtCmluZGV4IDRkZDg3ZGMwNDhlMWM2YjJjNzg0OTVmN2UyYzI0NWNjNWI5
NmIyMWUuLjZhM2IxMGRhMzQyNDQ0MmFhZTQ4NWUyYzQ3MWQwOTNiOGY4ZjcyNTQgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvQ29kZUdlbmVyYXRvckpTLnBtCisr
KyBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvQ29kZUdlbmVyYXRvckpTLnBtCkBA
IC0xMSw2ICsxMSw3IEBACiAjIENvcHlyaWdodCAoQykgMjAxMiBFcmljc3NvbiBBQi4gQWxsIHJp
Z2h0cyByZXNlcnZlZC4KICMgQ29weXJpZ2h0IChDKSAyMDA3LCAyMDA4LCAyMDA5LCAyMDEyIEdv
b2dsZSBJbmMuCiAjIENvcHlyaWdodCAoQykgMjAxMyBTYW1zdW5nIEVsZWN0cm9uaWNzLiBBbGwg
cmlnaHRzIHJlc2VydmVkLgorIyBDb3B5cmlnaHQgKEMpIDIwMTUgQ2Fub24gSW5jLiBBbGwgcmln
aHRzIHJlc2VydmVkLgogIwogIyBUaGlzIGxpYnJhcnkgaXMgZnJlZSBzb2Z0d2FyZTsgeW91IGNh
biByZWRpc3RyaWJ1dGUgaXQgYW5kL29yCiAjIG1vZGlmeSBpdCB1bmRlciB0aGUgdGVybXMgb2Yg
dGhlIEdOVSBMaWJyYXJ5IEdlbmVyYWwgUHVibGljCkBAIC01NzEsNyArNTcyLDcgQEAgc3ViIEdl
dEF0dHJpYnV0ZUdldHRlck5hbWUKICAgICAgICAgcmV0dXJuICRjb2RlR2VuZXJhdG9yLT5XS19s
Y2ZpcnN0KCRjbGFzc05hbWUpIC4gIkNvbnN0cnVjdG9yIiAuICRjb2RlR2VuZXJhdG9yLT5XS191
Y2ZpcnN0KCRhdHRyaWJ1dGUtPnNpZ25hdHVyZS0+bmFtZSk7CiAgICAgfQogICAgIGlmICgkYXR0
cmlidXRlLT5zaWduYXR1cmUtPmV4dGVuZGVkQXR0cmlidXRlcy0+eyJKU0J1aWx0aW4ifSkgewot
ICAgICAgICByZXR1cm4gR2V0SlNCdWlsdGluRnVuY3Rpb25OYW1lKCRjbGFzc05hbWUsICRhdHRy
aWJ1dGUtPnNpZ25hdHVyZS0+bmFtZSk7CisgICAgICAgIHJldHVybiBHZXRKU0J1aWx0aW5GdW5j
dGlvbk5hbWUoJGNsYXNzTmFtZSwgJGF0dHJpYnV0ZSk7CiAgICAgfQogICAgIHJldHVybiAianMi
IC4gJGludGVyZmFjZU5hbWUgLiAkY29kZUdlbmVyYXRvci0+V0tfdWNmaXJzdCgkYXR0cmlidXRl
LT5zaWduYXR1cmUtPm5hbWUpIC4gKCRhdHRyaWJ1dGUtPnNpZ25hdHVyZS0+dHlwZSA9fiAvQ29u
c3RydWN0b3IkLyA/ICJDb25zdHJ1Y3RvciIgOiAiIik7CiB9CkBAIC01ODMsMjggKzU4NCwxNyBA
QCBzdWIgR2V0QXR0cmlidXRlU2V0dGVyTmFtZQogICAgICAgICByZXR1cm4gInNldCIgLiAkY29k
ZUdlbmVyYXRvci0+V0tfdWNmaXJzdCgkY2xhc3NOYW1lKSAuICJDb25zdHJ1Y3RvciIgLiAkY29k
ZUdlbmVyYXRvci0+V0tfdWNmaXJzdCgkYXR0cmlidXRlLT5zaWduYXR1cmUtPm5hbWUpOwogICAg
IH0KICAgICBpZiAoJGF0dHJpYnV0ZS0+c2lnbmF0dXJlLT5leHRlbmRlZEF0dHJpYnV0ZXMtPnsi
SlNCdWlsdGluIn0pIHsKLSAgICAgICAgcmV0dXJuICJzZXQiIC4gJGNvZGVHZW5lcmF0b3ItPldL
X3VjZmlyc3QoR2V0SlNCdWlsdGluRnVuY3Rpb25OYW1lKCRjbGFzc05hbWUsICRhdHRyaWJ1dGUt
PnNpZ25hdHVyZS0+bmFtZSkpOworICAgICAgICByZXR1cm4gInNldCIgLiAkY29kZUdlbmVyYXRv
ci0+V0tfdWNmaXJzdChHZXRKU0J1aWx0aW5GdW5jdGlvbk5hbWUoJGNsYXNzTmFtZSwgJGF0dHJp
YnV0ZSkpOwogICAgIH0KICAgICByZXR1cm4gInNldEpTIiAuICRpbnRlcmZhY2VOYW1lIC4gJGNv
ZGVHZW5lcmF0b3ItPldLX3VjZmlyc3QoJGF0dHJpYnV0ZS0+c2lnbmF0dXJlLT5uYW1lKSAuICgk
YXR0cmlidXRlLT5zaWduYXR1cmUtPnR5cGUgPX4gL0NvbnN0cnVjdG9yJC8gPyAiQ29uc3RydWN0
b3IiIDogIiIpOwogfQogCi1zdWIgR2V0SlNCdWlsdGluRnVuY3Rpb25OYW1lCi17Ci0gICAgbXkg
KCRjbGFzc05hbWUsICRmdW5jdGlvbk5hbWUpID0gQF87Ci0gICAgcmV0dXJuICRjb2RlR2VuZXJh
dG9yLT5XS19sY2ZpcnN0KHN1YnN0ciAkY2xhc3NOYW1lLCAyKSAuICRjb2RlR2VuZXJhdG9yLT5X
S191Y2ZpcnN0KCRmdW5jdGlvbk5hbWUpIC4gIkNvZGVHZW5lcmF0b3IiOwotfQotCiBzdWIgR2V0
RnVuY3Rpb25OYW1lCiB7CiAgICAgbXkgKCRjbGFzc05hbWUsICRmdW5jdGlvbikgPSBAXzsKIAot
ICAgIG15ICRzY29wZU5hbWUgPSAkZnVuY3Rpb24tPnNpZ25hdHVyZS0+ZXh0ZW5kZWRBdHRyaWJ1
dGVzLT57IkltcGxlbWVudGVkQnkifTsKLSAgICBpZiAoISRzY29wZU5hbWUpIHsKLSAgICAgICAg
JHNjb3BlTmFtZSA9IHN1YnN0ciAkY2xhc3NOYW1lLCAyOwotICAgIH0KLQogICAgIGlmICgkZnVu
Y3Rpb24tPnNpZ25hdHVyZS0+ZXh0ZW5kZWRBdHRyaWJ1dGVzLT57IkpTQnVpbHRpbiJ9KSB7Ci0g
ICAgICAgIHJldHVybiBHZXRKU0J1aWx0aW5GdW5jdGlvbk5hbWUoJGNsYXNzTmFtZSwgJGZ1bmN0
aW9uLT5zaWduYXR1cmUtPm5hbWUpOworICAgICAgICByZXR1cm4gR2V0SlNCdWlsdGluRnVuY3Rp
b25OYW1lKCRjbGFzc05hbWUsICRmdW5jdGlvbik7CiAgICAgfQogCiAgICAgbXkgJGtpbmQgPSAk
ZnVuY3Rpb24tPmlzU3RhdGljID8gIkNvbnN0cnVjdG9yIiA6ICJQcm90b3R5cGUiOwpAQCAtNTAw
MCw3ICs0OTkwLDcgQEAgc3ViIEdlbmVyYXRlQ29uc3RydWN0b3JIZWxwZXJNZXRob2RzCiAgICAg
fQogCiAgICAgaWYgKCRpbnRlcmZhY2UtPmV4dGVuZGVkQXR0cmlidXRlcy0+eyJKU0J1aWx0aW5D
b25zdHJ1Y3RvciJ9KSB7Ci0gICAgICAgIG15ICRpbml0aWFsaXplRnVuY3Rpb25OYW1lID0gR2V0
SlNCdWlsdGluRnVuY3Rpb25OYW1lKCR7Y2xhc3NOYW1lfSwgImluaXRpYWxpemUiIC4gJHtpbnRl
cmZhY2VOYW1lfSk7CisgICAgICAgIG15ICRpbml0aWFsaXplRnVuY3Rpb25OYW1lID0gR2V0SlNC
dWlsdGluRnVuY3Rpb25OYW1lRnJvbVN0cmluZygke2ludGVyZmFjZU5hbWV9LCAiaW5pdGlhbGl6
ZSIgLiAke2ludGVyZmFjZU5hbWV9KTsKICAgICAgICAgcHVzaChAJG91dHB1dEFycmF5LCAiICAg
IHNldEluaXRpYWxpemVGdW5jdGlvbih2bSwgKkpTQzo6SlNGdW5jdGlvbjo6Y3JlYXRlQnVpbHRp
bkZ1bmN0aW9uKHZtLCAke2luaXRpYWxpemVGdW5jdGlvbk5hbWV9KHZtKSwgJmdsb2JhbE9iamVj
dCkpO1xuIik7CiAgICAgfQogCkBAIC01MTAxLDI1ICs1MDkxLDQ1IEBAIHN1YiBDb21wdXRlRnVu
Y3Rpb25TcGVjaWFsCiAgICAgcmV0dXJuIChAc3BlY2lhbHMgPiAwKSA/IGpvaW4oIiB8ICIsIEBz
cGVjaWFscykgOiAiMCI7CiB9CiAKLXN1YiBBZGRKU0J1aWx0aW5JbmNsdWRlc0lmTmVlZGVkKCkK
K3N1YiBHZXRKU0J1aWx0aW5GdW5jdGlvbk5hbWUKK3sKKyAgICBteSAoJGNsYXNzTmFtZSwgJGZ1
bmN0aW9uKSA9IEBfOworICAgIG15ICRzY29wZU5hbWUgPSAkZnVuY3Rpb24tPnNpZ25hdHVyZS0+
ZXh0ZW5kZWRBdHRyaWJ1dGVzLT57IkltcGxlbWVudGVkQnkifTsKKyAgICAkc2NvcGVOYW1lID0g
c3Vic3RyICRjbGFzc05hbWUsIDIgdW5sZXNzICRzY29wZU5hbWU7CisgICAgcmV0dXJuIEdldEpT
QnVpbHRpbkZ1bmN0aW9uTmFtZUZyb21TdHJpbmcoJHNjb3BlTmFtZSwgJGZ1bmN0aW9uLT5zaWdu
YXR1cmUtPm5hbWUpOworfQorCitzdWIgR2V0SlNCdWlsdGluRnVuY3Rpb25OYW1lRnJvbVN0cmlu
ZworeworICAgIG15ICgkc2NvcGVOYW1lLCAkZnVuY3Rpb25OYW1lKSA9IEBfOworICAgIHJldHVy
biAkY29kZUdlbmVyYXRvci0+V0tfbGNmaXJzdCgkc2NvcGVOYW1lKSAuICRjb2RlR2VuZXJhdG9y
LT5XS191Y2ZpcnN0KCRmdW5jdGlvbk5hbWUpIC4gIkNvZGVHZW5lcmF0b3IiOworfQorCitzdWIg
R2V0SlNCdWlsdGluU2NvcGVOYW1lCiB7CiAgICAgbXkgJGludGVyZmFjZSA9IHNoaWZ0OworICAg
IG15ICRvYmplY3QgPSBzaGlmdDsKIAotICAgIG15ICRpbmNsdWRlID0gJGludGVyZmFjZS0+bmFt
ZSAuICJCdWlsdGlucy5oIjsKKyAgICByZXR1cm4gJG9iamVjdC0+c2lnbmF0dXJlLT5leHRlbmRl
ZEF0dHJpYnV0ZXMtPnsiSW1wbGVtZW50ZWRCeSJ9IGlmICRvYmplY3QtPnNpZ25hdHVyZS0+ZXh0
ZW5kZWRBdHRyaWJ1dGVzLT57IkltcGxlbWVudGVkQnkifTsKKyAgICByZXR1cm4gJGludGVyZmFj
ZS0+bmFtZTsKK30KKworc3ViIEFkZEpTQnVpbHRpbkluY2x1ZGVzSWZOZWVkZWQoKQoreworICAg
IG15ICRpbnRlcmZhY2UgPSBzaGlmdDsKIAogICAgIGlmICgkaW50ZXJmYWNlLT5leHRlbmRlZEF0
dHJpYnV0ZXMtPnsiSlNCdWlsdGluQ29uc3RydWN0b3IifSkgewotICAgICAgICBBZGRUb0ltcGxJ
bmNsdWRlcygkaW5jbHVkZSk7CisgICAgICAgIEFkZFRvSW1wbEluY2x1ZGVzKCRpbnRlcmZhY2Ut
Pm5hbWUgLiAiQnVpbHRpbnMuaCIpOwogICAgICAgICByZXR1cm47CiAgICAgfQogCiAgICAgZm9y
ZWFjaCBteSAkZnVuY3Rpb24gKEB7JGludGVyZmFjZS0+ZnVuY3Rpb25zfSkgewotICAgICAgICBB
ZGRUb0ltcGxJbmNsdWRlcygkaW5jbHVkZSwgJGZ1bmN0aW9uLT5zaWduYXR1cmUtPmV4dGVuZGVk
QXR0cmlidXRlcy0+eyJDb25kaXRpb25hbCJ9KSBpZiAkZnVuY3Rpb24tPnNpZ25hdHVyZS0+ZXh0
ZW5kZWRBdHRyaWJ1dGVzLT57IkpTQnVpbHRpbiJ9OworICAgICAgICBBZGRUb0ltcGxJbmNsdWRl
cyhHZXRKU0J1aWx0aW5TY29wZU5hbWUoJGludGVyZmFjZSwgJGZ1bmN0aW9uKSAuICJCdWlsdGlu
cy5oIiwgJGZ1bmN0aW9uLT5zaWduYXR1cmUtPmV4dGVuZGVkQXR0cmlidXRlcy0+eyJDb25kaXRp
b25hbCJ9KSBpZiAkZnVuY3Rpb24tPnNpZ25hdHVyZS0+ZXh0ZW5kZWRBdHRyaWJ1dGVzLT57IkpT
QnVpbHRpbiJ9OwogICAgIH0KIAogICAgIGZvcmVhY2ggbXkgJGF0dHJpYnV0ZSAoQHskaW50ZXJm
YWNlLT5hdHRyaWJ1dGVzfSkgewotICAgICAgICBBZGRUb0ltcGxJbmNsdWRlcygkaW5jbHVkZSwg
JGF0dHJpYnV0ZS0+c2lnbmF0dXJlLT5leHRlbmRlZEF0dHJpYnV0ZXMtPnsiQ29uZGl0aW9uYWwi
fSkgaWYgJGF0dHJpYnV0ZS0+c2lnbmF0dXJlLT5leHRlbmRlZEF0dHJpYnV0ZXMtPnsiSlNCdWls
dGluIn07CisgICAgICAgIEFkZFRvSW1wbEluY2x1ZGVzKEdldEpTQnVpbHRpblNjb3BlTmFtZSgk
aW50ZXJmYWNlLCAkYXR0cmlidXRlKSAuICJCdWlsdGlucy5oIiwgJGF0dHJpYnV0ZS0+c2lnbmF0
dXJlLT5leHRlbmRlZEF0dHJpYnV0ZXMtPnsiQ29uZGl0aW9uYWwifSkgaWYgJGF0dHJpYnV0ZS0+
c2lnbmF0dXJlLT5leHRlbmRlZEF0dHJpYnV0ZXMtPnsiSlNCdWlsdGluIn07CiAgICAgfQotCiB9
CiAKIDE7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3Qv
SlMvSlNUZXN0SW50ZXJmYWNlLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMv
dGVzdC9KUy9KU1Rlc3RJbnRlcmZhY2UuY3BwCmluZGV4IGMxZmQ1NDkzYTlhMDg1MzNhMzE3MGRj
MWIzOGFlNjNhMjI2NWY1MzcuLjk4ZjEyZWZhYTgzYTQxNmE4YzA1MmMyZDEzMjRhMDFhZGRiMzYx
MzMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9K
U1Rlc3RJbnRlcmZhY2UuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMv
dGVzdC9KUy9KU1Rlc3RJbnRlcmZhY2UuY3BwCkBAIC0zMSw2ICszMSwxMCBAQAogI2luY2x1ZGUg
PHJ1bnRpbWUvRXJyb3IuaD4KICNpbmNsdWRlIDx3dGYvR2V0UHRyLmg+CiAKKyNpZiBFTkFCTEUo
Q29uZGl0aW9uMTEpIHx8IEVOQUJMRShDb25kaXRpb24xMikKKyNpbmNsdWRlICJUZXN0U3VwcGxl
bWVudGFsQnVpbHRpbnMuaCIKKyNlbmRpZgorCiAjaWYgRU5BQkxFKENvbmRpdGlvbjExKSB8fCBF
TkFCTEUoQ29uZGl0aW9uMTIpIHx8IEVOQUJMRShDb25kaXRpb24yMikgfHwgRU5BQkxFKENvbmRp
dGlvbjIzKQogI2luY2x1ZGUgIkpTTm9kZS5oIgogI2luY2x1ZGUgIkpTVGVzdE9iai5oIgpAQCAt
MzQ4LDYgKzM1MiwxMSBAQCBzdGF0aWMgY29uc3QgSGFzaFRhYmxlVmFsdWUgSlNUZXN0SW50ZXJm
YWNlUHJvdG90eXBlVGFibGVWYWx1ZXNbXSA9CiAjZWxzZQogICAgIHsgMCwgMCwgTm9JbnRyaW5z
aWMsIHsgMCwgMCB9IH0sCiAjZW5kaWYKKyNpZiBFTkFCTEUoQ29uZGl0aW9uMTEpIHx8IEVOQUJM
RShDb25kaXRpb24xMikKKyAgICB7ICJidWlsdGluQXR0cmlidXRlIiwgQWNjZXNzb3IgfCBCdWls
dGluLCBOb0ludHJpbnNpYywgeyAoaW50cHRyX3Qpc3RhdGljX2Nhc3Q8QnVpbHRpbkdlbmVyYXRv
cj4odGVzdFN1cHBsZW1lbnRhbEJ1aWx0aW5BdHRyaWJ1dGVDb2RlR2VuZXJhdG9yKSwgKGludHB0
cl90KSAoc2V0VGVzdFN1cHBsZW1lbnRhbEJ1aWx0aW5BdHRyaWJ1dGVDb2RlR2VuZXJhdG9yKSB9
IH0sCisjZWxzZQorICAgIHsgMCwgMCwgTm9JbnRyaW5zaWMsIHsgMCwgMCB9IH0sCisjZW5kaWYK
ICNpZiBFTkFCTEUoQ29uZGl0aW9uMjIpIHx8IEVOQUJMRShDb25kaXRpb24yMykKICAgICB7ICJJ
TVBMRU1FTlRTQ09OU1RBTlQxIiwgRG9udERlbGV0ZSB8IFJlYWRPbmx5IHwgQ29uc3RhbnRJbnRl
Z2VyLCBOb0ludHJpbnNpYywgeyAobG9uZyBsb25nKSgxKSB9IH0sCiAjZWxzZQpAQCAtMzk4LDYg
KzQwNywxMSBAQCBzdGF0aWMgY29uc3QgSGFzaFRhYmxlVmFsdWUgSlNUZXN0SW50ZXJmYWNlUHJv
dG90eXBlVGFibGVWYWx1ZXNbXSA9CiAjZWxzZQogICAgIHsgMCwgMCwgTm9JbnRyaW5zaWMsIHsg
MCwgMCB9IH0sCiAjZW5kaWYKKyNpZiBFTkFCTEUoQ29uZGl0aW9uMTEpIHx8IEVOQUJMRShDb25k
aXRpb24xMikKKyAgICB7ICJidWlsdGluRnVuY3Rpb24iLCBKU0M6OkJ1aWx0aW4sIE5vSW50cmlu
c2ljLCB7IChpbnRwdHJfdClzdGF0aWNfY2FzdDxCdWlsdGluR2VuZXJhdG9yPih0ZXN0U3VwcGxl
bWVudGFsQnVpbHRpbkZ1bmN0aW9uQ29kZUdlbmVyYXRvciksIChpbnRwdHJfdCkgKDApIH0gfSwK
KyNlbHNlCisgICAgeyAwLCAwLCBOb0ludHJpbnNpYywgeyAwLCAwIH0gfSwKKyNlbmRpZgogfTsK
IAogY29uc3QgQ2xhc3NJbmZvIEpTVGVzdEludGVyZmFjZVByb3RvdHlwZTo6c19pbmZvID0geyAi
VGVzdEludGVyZmFjZVByb3RvdHlwZSIsICZCYXNlOjpzX2luZm8sIDAsIENSRUFURV9NRVRIT0Rf
VEFCTEUoSlNUZXN0SW50ZXJmYWNlUHJvdG90eXBlKSB9OwpkaWZmIC0tZ2l0IGEvU291cmNlL1dl
YkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L09iakMvRE9NVGVzdEludGVyZmFjZS5oIGIvU291
cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L09iakMvRE9NVGVzdEludGVyZmFjZS5o
CmluZGV4IGMwNWJhOTk1NWNhNDQ1MjU2NDM4ODgzMmJiZDdlOWZkZGQxNjM0ZmMuLmZiYTgyNjAy
YjZkM2Q0ZDg3Njk3ZGViOWNmMjcxMmJlNzU0ZGYxNzQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJD
b3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9PYmpDL0RPTVRlc3RJbnRlcmZhY2UuaAorKysgYi9T
b3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvT2JqQy9ET01UZXN0SW50ZXJmYWNl
LmgKQEAgLTQ0LDQgKzQ0LDUgQEAgV0VCQ09SRV9FWFBPUlQgQGludGVyZmFjZSBET01UZXN0SW50
ZXJmYWNlIDogRE9NT2JqZWN0CiBAcHJvcGVydHkgKGNvcHkpIE5TU3RyaW5nICpzdXBwbGVtZW50
YWxTdHIyOwogQHByb3BlcnR5IChjb3B5KSBOU1N0cmluZyAqc3VwcGxlbWVudGFsU3RyMzsKIEBw
cm9wZXJ0eSAoc3Ryb25nKSBET01Ob2RlICpzdXBwbGVtZW50YWxOb2RlOworQHByb3BlcnR5IHVu
c2lnbmVkIHNob3J0IGJ1aWx0aW5BdHRyaWJ1dGU7CiBAZW5kCmRpZmYgLS1naXQgYS9Tb3VyY2Uv
V2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvT2JqQy9ET01UZXN0SW50ZXJmYWNlLm1tIGIv
U291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L09iakMvRE9NVGVzdEludGVyZmFj
ZS5tbQppbmRleCBhNjU4N2M3MTM3MDhhODJhMGJiNzJlMmU0Y2Y3YmRhZDBmOTljN2FlLi40OTg3
MWJlMjcxZmE1MDc3NDYwYjBhNTUyZjZlOTZiMDk1NDAwNjljIDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvT2JqQy9ET01UZXN0SW50ZXJmYWNlLm1tCisr
KyBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9PYmpDL0RPTVRlc3RJbnRl
cmZhY2UubW0KQEAgLTE3Miw2ICsxNzIsMjAgQEAKIH0KICNlbmRpZgogCisjaWYgRU5BQkxFKENv
bmRpdGlvbjExKSB8fCBFTkFCTEUoQ29uZGl0aW9uMTIpCistICh1bnNpZ25lZCBzaG9ydClidWls
dGluQXR0cmlidXRlCit7CisgICAgV2ViQ29yZTo6SlNNYWluVGhyZWFkTnVsbFN0YXRlIHN0YXRl
OworICAgIHJldHVybiBUZXN0U3VwcGxlbWVudGFsOjpidWlsdGluQXR0cmlidXRlKElNUEwpOwor
fQorCistICh2b2lkKXNldEJ1aWx0aW5BdHRyaWJ1dGU6KHVuc2lnbmVkIHNob3J0KW5ld0J1aWx0
aW5BdHRyaWJ1dGUKK3sKKyAgICBXZWJDb3JlOjpKU01haW5UaHJlYWROdWxsU3RhdGUgc3RhdGU7
CisgICAgVGVzdFN1cHBsZW1lbnRhbDo6c2V0QnVpbHRpbkF0dHJpYnV0ZShJTVBMLCBuZXdCdWls
dGluQXR0cmlidXRlKTsKK30KKyNlbmRpZgorCiAKICNpZiBFTkFCTEUoQ29uZGl0aW9uMjIpIHx8
IEVOQUJMRShDb25kaXRpb24yMykKIC0gKHZvaWQpaW1wbGVtZW50c01ldGhvZDEKQEAgLTI1OCw2
ICsyNzIsMTYgQEAKIAogI2VuZGlmCiAKKworI2lmIEVOQUJMRShDb25kaXRpb24xMSkgfHwgRU5B
QkxFKENvbmRpdGlvbjEyKQorLSAodm9pZClidWlsdGluRnVuY3Rpb24KK3sKKyAgICBXZWJDb3Jl
OjpKU01haW5UaHJlYWROdWxsU3RhdGUgc3RhdGU7CisgICAgVGVzdFN1cHBsZW1lbnRhbDo6YnVp
bHRpbkZ1bmN0aW9uKElNUEwpOworfQorCisjZW5kaWYKKwogQGVuZAogCiBXZWJDb3JlOjpUZXN0
SW50ZXJmYWNlKiBjb3JlKERPTVRlc3RJbnRlcmZhY2UgKndyYXBwZXIpCmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvVGVzdFN1cHBsZW1lbnRhbC5pZGwg
Yi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvVGVzdFN1cHBsZW1lbnRhbC5p
ZGwKaW5kZXggNzEzNTFlZjFjMjZlOGJiZTNkNDEzYzc1NzAwMmJjMmM0MjM2NzNhNy4uMTk1NTVj
MmJmN2FlM2NlYjdmNTY1NWZlZGY0ZTk5ODk4YmU3YmExNCAxMDA2NDQKLS0tIGEvU291cmNlL1dl
YkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L1Rlc3RTdXBwbGVtZW50YWwuaWRsCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9UZXN0U3VwcGxlbWVudGFsLmlkbApA
QCAtNDUsNCArNDUsNyBAQAogCiAgICAgY29uc3QgdW5zaWduZWQgc2hvcnQgU1VQUExFTUVOVEFM
Q09OU1RBTlQxID0gMTsKICAgICBbUmVmbGVjdD1DT05TVF9JTVBMXSBjb25zdCB1bnNpZ25lZCBz
aG9ydCBTVVBQTEVNRU5UQUxDT05TVEFOVDIgPSAyOworCisgICAgW0pTQnVpbHRpbl0gdm9pZCBi
dWlsdGluRnVuY3Rpb24oKTsKKyAgICBbSlNCdWlsdGluLCBSZWFkT25seV0gYXR0cmlidXRlIHVu
c2lnbmVkIHNob3J0IGJ1aWx0aW5BdHRyaWJ1dGU7CiB9OwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVz
dHMvQ2hhbmdlTG9nIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCmluZGV4IDhlNTYxMWZlMmQ5YTVj
OTQ3OGVlZWYyMzc1YjI3YmY2ZGExNmRkMjguLjAwMTVjNzYyYzQ5OGM0ZDA1NzI4MDk2ZTY2YzZl
YTU2YjYxMWJlZjIgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL0NoYW5nZUxvZworKysgYi9MYXlv
dXRUZXN0cy9DaGFuZ2VMb2cKQEAgLTEsMyArMSwxNiBAQAorMjAxNS0xMC0xMiAgWW91ZW5uIEZh
YmxldCAgPHlvdWVubi5mYWJsZXRAY3JmLmNhbm9uLmZyPgorCisgICAgICAgIE1vdmUgd2Via2l0
R2V0VXNlck1lZGlhIHRvIEpTIEJ1aWx0aW4KKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5v
cmcvc2hvd19idWcuY2dpP2lkPTE0OTQ5OQorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAo
T09QUyEpLgorCisgICAgICAgICogZmFzdC9tZWRpYXN0cmVhbS9hcmd1bWVudC10eXBlcy1leHBl
Y3RlZC50eHQ6CisgICAgICAgICogZmFzdC9tZWRpYXN0cmVhbS9nZXR1c2VybWVkaWEtZXhwZWN0
ZWQudHh0OgorICAgICAgICAqIGZhc3QvbWVkaWFzdHJlYW0vZ2V0dXNlcm1lZGlhLmh0bWw6Cisg
ICAgICAgICogZmFzdC9tZWRpYXN0cmVhbS9zY3JpcHQtdGVzdHMvYXJndW1lbnQtdHlwZXMuanM6
CisgICAgICAgICogaHR0cC90ZXN0cy9tZWRpYS9tZWRpYS1zdHJlYW0vZGlzY29ubmVjdGVkLWZy
YW1lLWFscmVhZHktZXhwZWN0ZWQudHh0OgorCiAyMDE1LTEwLTExICBNeWxlcyBDLiBNYXhmaWVs
ZCAgPG1tYXhmaWVsZEBhcHBsZS5jb20+CiAKICAgICAgICAgVGVzdCBmb250LXZhcmlhbnQtKiBh
bmQgZm9udC1mZWF0dXJlLXNldHRpbmdzIHdpdGggbW9ja2VkIHByZWluc3RhbGxlZCBmb250cwpk
aWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9tZWRpYXN0cmVhbS9hcmd1bWVudC10eXBlcy1l
eHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9mYXN0L21lZGlhc3RyZWFtL2FyZ3VtZW50LXR5cGVz
LWV4cGVjdGVkLnR4dAppbmRleCA0MjI0ZDQwMjAyMjk5ZjAwMjEyZTI3MjFmMjFlNDMzZmNkNWUy
OTI0Li41Y2JjNDg1ODgyNzYyOWJjZjQ4NGU2ZjY0MTJmNTlmZTEwMzRjMWNmIDEwMDY0NAotLS0g
YS9MYXlvdXRUZXN0cy9mYXN0L21lZGlhc3RyZWFtL2FyZ3VtZW50LXR5cGVzLWV4cGVjdGVkLnR4
dAorKysgYi9MYXlvdXRUZXN0cy9mYXN0L21lZGlhc3RyZWFtL2FyZ3VtZW50LXR5cGVzLWV4cGVj
dGVkLnR4dApAQCAtMzAsNyArMzAsNyBAQCBQQVNTIG5hdmlnYXRvci53ZWJraXRHZXRVc2VyTWVk
aWEoe3ZpZGVvOiB0cnVlfSwgdHJ1ZSkgdGhyZXcgZXhjZXB0aW9uIFR5cGVFcnJvcgogUEFTUyBu
YXZpZ2F0b3Iud2Via2l0R2V0VXNlck1lZGlhKHt2aWRlbzogdHJ1ZX0sIDQyKSB0aHJldyBleGNl
cHRpb24gVHlwZUVycm9yOiBOb3QgZW5vdWdoIGFyZ3VtZW50cy4KIFBBU1MgbmF2aWdhdG9yLndl
YmtpdEdldFVzZXJNZWRpYSh7dmlkZW86IHRydWV9LCBJbmZpbml0eSkgdGhyZXcgZXhjZXB0aW9u
IFR5cGVFcnJvcjogTm90IGVub3VnaCBhcmd1bWVudHMuCiBQQVNTIG5hdmlnYXRvci53ZWJraXRH
ZXRVc2VyTWVkaWEoe3ZpZGVvOiB0cnVlfSwgLUluZmluaXR5KSB0aHJldyBleGNlcHRpb24gVHlw
ZUVycm9yOiBOb3QgZW5vdWdoIGFyZ3VtZW50cy4KLVBBU1MgbmF2aWdhdG9yLndlYmtpdEdldFVz
ZXJNZWRpYSh7IH0sIGVtcHR5RnVuY3Rpb24sIGVtcHR5RnVuY3Rpb24pIHRocmV3IGV4Y2VwdGlv
biBFcnJvcjogTm90U3VwcG9ydGVkRXJyb3I6IERPTSBFeGNlcHRpb24gOS4KK1BBU1MgbmF2aWdh
dG9yLndlYmtpdEdldFVzZXJNZWRpYSh7IH0sIGVtcHR5RnVuY3Rpb24sIGVtcHR5RnVuY3Rpb24p
IGRpZCBub3QgdGhyb3cgZXhjZXB0aW9uLgogUEFTUyBuYXZpZ2F0b3Iud2Via2l0R2V0VXNlck1l
ZGlhKHt2aWRlbzogdHJ1ZX0sIGVtcHR5RnVuY3Rpb24sIGVtcHR5RnVuY3Rpb24pIGRpZCBub3Qg
dGhyb3cgZXhjZXB0aW9uLgogUEFTUyBuYXZpZ2F0b3Iud2Via2l0R2V0VXNlck1lZGlhKHt2aWRl
bzogdHJ1ZX0sIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5lZCkgdGhyZXcgZXhjZXB0aW9uIFR5cGVF
cnJvcjogQXJndW1lbnQgMyAoJ2Vycm9yQ2FsbGJhY2snKSB0byBOYXZpZ2F0b3Iud2Via2l0R2V0
VXNlck1lZGlhIG11c3QgYmUgYSBmdW5jdGlvbi4KIFBBU1MgbmF2aWdhdG9yLndlYmtpdEdldFVz
ZXJNZWRpYSh7YXVkaW86dHJ1ZSwgdmlkZW86dHJ1ZX0sIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5l
ZCkgdGhyZXcgZXhjZXB0aW9uIFR5cGVFcnJvcjogQXJndW1lbnQgMyAoJ2Vycm9yQ2FsbGJhY2sn
KSB0byBOYXZpZ2F0b3Iud2Via2l0R2V0VXNlck1lZGlhIG11c3QgYmUgYSBmdW5jdGlvbi4KZGlm
ZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3QvbWVkaWFzdHJlYW0vZ2V0dXNlcm1lZGlhLWV4cGVj
dGVkLnR4dCBiL0xheW91dFRlc3RzL2Zhc3QvbWVkaWFzdHJlYW0vZ2V0dXNlcm1lZGlhLWV4cGVj
dGVkLnR4dAppbmRleCBkY2E1ZmI5NjFjZjZlYjVmNDQ1YWI0NTBhYTBiM2U1MmQ0MTA3MDhhLi5k
NmNmZWI0OTBjYzAyMTYwZmRkZDNhMjNmODMwM2YyYWU1YzdkYTA2IDEwMDY0NAotLS0gYS9MYXlv
dXRUZXN0cy9mYXN0L21lZGlhc3RyZWFtL2dldHVzZXJtZWRpYS1leHBlY3RlZC50eHQKKysrIGIv
TGF5b3V0VGVzdHMvZmFzdC9tZWRpYXN0cmVhbS9nZXR1c2VybWVkaWEtZXhwZWN0ZWQudHh0CkBA
IC0zLDkgKzMsMTAgQEAgVGVzdHMgd2Via2l0R2V0VXNlck1lZGlhLgogT24gc3VjY2VzcywgeW91
IHdpbGwgc2VlIGEgc2VyaWVzIG9mICJQQVNTIiBtZXNzYWdlcywgZm9sbG93ZWQgYnkgIlRFU1Qg
Q09NUExFVEUiLgogCiAKLVBBU1MgbmF2aWdhdG9yLndlYmtpdEdldFVzZXJNZWRpYSh7YXVkaW86
ZmFsc2UsIHZpZGVvOmZhbHNlfSwgZXJyb3IsIGVycm9yKTsgdGhyZXcgZXhjZXB0aW9uIEVycm9y
OiBOb3RTdXBwb3J0ZWRFcnJvcjogRE9NIEV4Y2VwdGlvbiA5LgorUEFTUyBuYXZpZ2F0b3Iud2Vi
a2l0R2V0VXNlck1lZGlhKHthdWRpbzpmYWxzZSwgdmlkZW86ZmFsc2V9LCBlcnJvciwgZXhwZWN0
ZWRFcnJvcik7IGRpZCBub3QgdGhyb3cgZXhjZXB0aW9uLgogUEFTUyBuYXZpZ2F0b3Iud2Via2l0
R2V0VXNlck1lZGlhKHthdWRpbzpmYWxzZSwgdmlkZW86ZmFsc2V9LCBlcnJvciwgbnVsbCk7IHRo
cmV3IGV4Y2VwdGlvbiBUeXBlRXJyb3I6IEFyZ3VtZW50IDMgKCdlcnJvckNhbGxiYWNrJykgdG8g
TmF2aWdhdG9yLndlYmtpdEdldFVzZXJNZWRpYSBtdXN0IGJlIGEgZnVuY3Rpb24uCiBQQVNTIG5h
dmlnYXRvci53ZWJraXRHZXRVc2VyTWVkaWEoe2F1ZGlvOnRydWV9LCBnb3RTdHJlYW0xLCBlcnJv
cik7IGRpZCBub3QgdGhyb3cgZXhjZXB0aW9uLgorUEFTUyBFcnJvciBjYWxsYmFjayBjYWxsZWQu
CiBQQVNTIFN0cmVhbSBnZW5lcmF0ZWQuCiBQQVNTIHN0cmVhbS5nZXRBdWRpb1RyYWNrcygpLmxl
bmd0aCBpcyAxCiBQQVNTIHN0cmVhbS5nZXRWaWRlb1RyYWNrcygpLmxlbmd0aCBpcyAwCmRpZmYg
LS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L21lZGlhc3RyZWFtL2dldHVzZXJtZWRpYS5odG1sIGIv
TGF5b3V0VGVzdHMvZmFzdC9tZWRpYXN0cmVhbS9nZXR1c2VybWVkaWEuaHRtbAppbmRleCAxM2Zh
ZTEzMDY3MmJkMTU0NGViN2JhNmMyZWUxYjFkODQ3YTQ5ZDUxLi5lMzM4MzlmMWU0NzM5ZmJiOTcy
NmYxMzAwNzc0OGIxNThkNGQwOTI4IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9mYXN0L21lZGlh
c3RyZWFtL2dldHVzZXJtZWRpYS5odG1sCisrKyBiL0xheW91dFRlc3RzL2Zhc3QvbWVkaWFzdHJl
YW0vZ2V0dXNlcm1lZGlhLmh0bWwKQEAgLTI0LDYgKzI0LDEwIEBACiAgICAgICAgICAgICAgICAg
ZmluaXNoSlNUZXN0KCk7CiAgICAgICAgICAgICB9CiAKKyAgICAgICAgICAgIGZ1bmN0aW9uIGV4
cGVjdGVkRXJyb3IoKSB7CisgICAgICAgICAgICAgICAgdGVzdFBhc3NlZCgnRXJyb3IgY2FsbGJh
Y2sgY2FsbGVkLicpOworICAgICAgICAgICAgfQorCiAgICAgICAgICAgICBmdW5jdGlvbiBnb3RT
dHJlYW1JbkVycm9yKHMpIHsKICAgICAgICAgICAgICAgICB0ZXN0RmFpbGVkKCdTdHJlYW0gZ2Vu
ZXJhdGVkLicpOwogICAgICAgICAgICAgICAgIGZpbmlzaEpTVGVzdCgpOwpAQCAtODcsNyArOTEs
NyBAQAogICAgICAgICAgICAgICAgIHNob3VsZE5vdFRocm93KCJuYXZpZ2F0b3Iud2Via2l0R2V0
VXNlck1lZGlhKHt2aWRlbzp0cnVlfSwgZ290U3RyZWFtMiwgZXJyb3IpOyIpCiAgICAgICAgICAg
ICB9CiAKLSAgICAgICAgICAgIHNob3VsZFRocm93KCJuYXZpZ2F0b3Iud2Via2l0R2V0VXNlck1l
ZGlhKHthdWRpbzpmYWxzZSwgdmlkZW86ZmFsc2V9LCBlcnJvciwgZXJyb3IpOyIpCisgICAgICAg
ICAgICBzaG91bGROb3RUaHJvdygibmF2aWdhdG9yLndlYmtpdEdldFVzZXJNZWRpYSh7YXVkaW86
ZmFsc2UsIHZpZGVvOmZhbHNlfSwgZXJyb3IsIGV4cGVjdGVkRXJyb3IpOyIpCiAgICAgICAgICAg
ICBzaG91bGRUaHJvdygibmF2aWdhdG9yLndlYmtpdEdldFVzZXJNZWRpYSh7YXVkaW86ZmFsc2Us
IHZpZGVvOmZhbHNlfSwgZXJyb3IsIG51bGwpOyIpCiAKICAgICAgICAgICAgIHNldFVzZXJNZWRp
YVBlcm1pc3Npb24odHJ1ZSk7CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L21lZGlhc3Ry
ZWFtL3NjcmlwdC10ZXN0cy9hcmd1bWVudC10eXBlcy5qcyBiL0xheW91dFRlc3RzL2Zhc3QvbWVk
aWFzdHJlYW0vc2NyaXB0LXRlc3RzL2FyZ3VtZW50LXR5cGVzLmpzCmluZGV4IDExYWRmODkzNjc3
ZDFiYjJhNzg0ZTk2NGQ5MjdjZGE0YmFhMzc3OTMuLmZmMDhiNDAwNjk0ODQ3MTU4YWQ1NjFjYzVm
MzM4ZjRkMjZiNDYyMDUgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2Zhc3QvbWVkaWFzdHJlYW0v
c2NyaXB0LXRlc3RzL2FyZ3VtZW50LXR5cGVzLmpzCisrKyBiL0xheW91dFRlc3RzL2Zhc3QvbWVk
aWFzdHJlYW0vc2NyaXB0LXRlc3RzL2FyZ3VtZW50LXR5cGVzLmpzCkBAIC01NCw3ICs1NCw3IEBA
IHRlc3QoJ25hdmlnYXRvci53ZWJraXRHZXRVc2VyTWVkaWEoe3ZpZGVvOiB0cnVlfSwgSW5maW5p
dHkpJywgdHJ1ZSk7CiB0ZXN0KCduYXZpZ2F0b3Iud2Via2l0R2V0VXNlck1lZGlhKHt2aWRlbzog
dHJ1ZX0sIC1JbmZpbml0eSknLCB0cnVlKTsKIAogLy8gMyBBcmd1bWVudHMuCi10ZXN0KCduYXZp
Z2F0b3Iud2Via2l0R2V0VXNlck1lZGlhKHsgfSwgZW1wdHlGdW5jdGlvbiwgZW1wdHlGdW5jdGlv
biknLCB0cnVlLCBub3RTdXBwb3J0ZWRFcnJvcik7Cit0ZXN0KCduYXZpZ2F0b3Iud2Via2l0R2V0
VXNlck1lZGlhKHsgfSwgZW1wdHlGdW5jdGlvbiwgZW1wdHlGdW5jdGlvbiknLCBmYWxzZSk7CiB0
ZXN0KCduYXZpZ2F0b3Iud2Via2l0R2V0VXNlck1lZGlhKHt2aWRlbzogdHJ1ZX0sIGVtcHR5RnVu
Y3Rpb24sIGVtcHR5RnVuY3Rpb24pJywgZmFsc2UpOwogdGVzdCgnbmF2aWdhdG9yLndlYmtpdEdl
dFVzZXJNZWRpYSh7dmlkZW86IHRydWV9LCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQpJywgdHJ1
ZSwgZXJyb3JDYWxsYmFja0Vycm9yKTsKIHRlc3QoJ25hdmlnYXRvci53ZWJraXRHZXRVc2VyTWVk
aWEoe2F1ZGlvOnRydWUsIHZpZGVvOnRydWV9LCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQpJywg
dHJ1ZSwgZXJyb3JDYWxsYmFja0Vycm9yKTsKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2h0dHAv
dGVzdHMvbWVkaWEvbWVkaWEtc3RyZWFtL2Rpc2Nvbm5lY3RlZC1mcmFtZS1hbHJlYWR5LWV4cGVj
dGVkLnR4dCBiL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvbWVkaWEvbWVkaWEtc3RyZWFtL2Rpc2Nv
bm5lY3RlZC1mcmFtZS1hbHJlYWR5LWV4cGVjdGVkLnR4dAppbmRleCBlNTA1ZGI5YjJjN2ViNjM5
MzNmOWVmMTA1YjMwZDkyNWQwOTZkNTcxLi4yYWMzMTQ3NzcyZWFlMTYzMzQzOGZkYWZhZDUzMGE1
ZjUyNThiYjRkIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL21lZGlhL21lZGlh
LXN0cmVhbS9kaXNjb25uZWN0ZWQtZnJhbWUtYWxyZWFkeS1leHBlY3RlZC50eHQKKysrIGIvTGF5
b3V0VGVzdHMvaHR0cC90ZXN0cy9tZWRpYS9tZWRpYS1zdHJlYW0vZGlzY29ubmVjdGVkLWZyYW1l
LWFscmVhZHktZXhwZWN0ZWQudHh0CkBAIC0xLDQgKzEsNCBAQAotQ09OU09MRSBNRVNTQUdFOiBs
aW5lIDI0OiBOb3RTdXBwb3J0ZWRFcnJvcjogRE9NIEV4Y2VwdGlvbiA5OiBUaGUgaW1wbGVtZW50
YXRpb24gZGlkIG5vdCBzdXBwb3J0IHRoZSByZXF1ZXN0ZWQgdHlwZSBvZiBvYmplY3Qgb3Igb3Bl
cmF0aW9uLgorQ09OU09MRSBNRVNTQUdFOiBsaW5lIDI0OiBUeXBlRXJyb3I6IFRoZSBpbXBsZW1l
bnRhdGlvbiBkaWQgbm90IHN1cHBvcnQgdGhlIHJlcXVlc3RlZCB0eXBlIG9mIG9iamVjdCBvciBv
cGVyYXRpb24uCiBUZXN0cyB0aGF0IHdoZW4gYSBnZXRVc2VyTWVkaWEgcmVxdWVzdCBpcyBtYWRl
IGFmdGVyIGl0cyBmcmFtZSBoYXMgYmVlbiBkaXNjb25uZWN0ZWQsIG5vIGNhbGxiYWNrcyBhcmUg
bWFkZSBhbmQgbm8gY3Jhc2ggb2NjdXJzLgogCiBPbiBzdWNjZXNzLCB5b3Ugd2lsbCBzZWUgYSBz
ZXJpZXMgb2YgIlBBU1MiIG1lc3NhZ2VzLCBmb2xsb3dlZCBieSAiVEVTVCBDT01QTEVURSIuCg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>262896</attachid>
            <date>2015-10-12 10:13:33 -0700</date>
            <delta_ts>2015-10-13 05:49:19 -0700</delta_ts>
            <desc>Fixing Win build</desc>
            <filename>bug-149499-20151012141256.patch</filename>
            <type>text/plain</type>
            <size>61211</size>
            <attacher name="youenn fablet">youennf</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTkwODUwCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggYjhmNGI2M2RiZjcwYjFk
NGE1NzA1ODQyYmM1ZDhlZGZjYjAwYmM0Zi4uNzkyOGU5ZGNjNmZmNDJjNDVkYmIyYTQxZDk4OTQ2
NTVlMGQ0Y2ZlNCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDY0IEBACisyMDE1LTEwLTEyICBZb3Vl
bm4gRmFibGV0ICA8eW91ZW5uLmZhYmxldEBjcmYuY2Fub24uZnI+CisKKyAgICAgICAgTW92ZSB3
ZWJraXRHZXRVc2VyTWVkaWEgdG8gSlMgQnVpbHRpbgorICAgICAgICBodHRwczovL2J1Z3Mud2Vi
a2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTQ5NDk5CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9C
T0RZIChPT1BTISkuCisKKyAgICAgICAgSW1wbGVtZW50ZWQgd2Via2l0R2V0VXNlck1lZGlhIGFz
IGEgSlNCdWlsdGluIHdyYXBwZXIgYXJvdW5kIG5hdmlnYXRvci5tZWRpYURldmljZXMuZ2V0VXNl
ck1lZGlhLgorICAgICAgICBBZGRlZCBhIHByaXZhdGUgc3ltYm9sIHRvIHJlZmVyIHRvIG5hdmln
YXRvci5NZWRpYURldmljZXMuZ2V0VXNlck1lZGlhIHVzZWQgYnkgdGhlIEpTIGJ1aWx0aW4gd3Jh
cHBlci4KKworICAgICAgICBSZW1vdmVkIGNwcCBiYXNlZCB2ZXJzaW9uLgorCisgICAgICAgIFVw
ZGF0ZWQgY29kZSBnZW5lcmF0b3IgdG8gc3VwcG9ydCBKU0J1aWx0aW4gZm9yIHBhcnRpYWwgaW50
ZXJmYWNlczogdGhlIGpzIGZpbGUKKyAgICAgICAgaXMgc3RpbGwgbmFtZWQgdGhlIHNhbWUgYXMg
dGhlIElETCBmaWxlIChleGNlcHQgZm9yIHRoZSBqcyBleHRlbnNpb24pIGNvbnRhaW5pbmcgdGhl
IHBhcnRpYWwgaW50ZXJmYWNlIGRlZmluaXRpb24uCisgICAgICAgIFRoaXMgYWxsb3dzIGNsZWFu
ZXIgY29kZSBoYW5kbGluZyAoa2VlcGluZyBmZWF0dXJlIGNvbmRpdGlvbmFsIGUuZy4pCisKKyAg
ICAgICAgVGhlIGpzIGJ1aWx0aW5nIGltcGxlbWVudGF0aW9uIGNoZWNrcyBmb3IgYXJndW1lbnQg
YnV0IGRvZXMgbm90IHJhaXNlIGV4Y2VwdGlvbiB3aGVuIHRoZSByZXF1ZXN0IGlzIG5vdCBzdXBw
b3J0ZWQuCisgICAgICAgIFRoZSBlcnJvciBjYWxsYmFjayBpcyBjYWxsZWQgaW5zdGVhZCwgaW4g
YW4gYXN5bmNocm9ub3VzIGZhc2hpb24uCisgICAgICAgIFRoZSBqcyBidWlsdGluIGltcGxlbWVu
dGF0aW9uIGRvZXMgbm90IGNoZWNrIGZpcnN0IHRoYXQgaXQgaXMgY2FsbGVkIG9uIG5hdmlnYXRv
ciwgY29udHJhcnkgdG8gdGhlIGNwcCBpbXBsZW1lbnRhdGlvbi4KKyAgICAgICAgVGhpcyBpcyBk
b25lIGFmdGVyd2FyZHMgd2hlbiBjYWxsaW5nIG5hdmlnYXRvci5NZWRpYURldmljZXMuQGdldFVz
ZXJNZWRpYS4KKworICAgICAgICBDb3ZlcmVkIGJ5IGV4aXN0aW5nIGFuZCBtb2RpZmllZCB0ZXN0
cy4KKworICAgICAgICAqIENNYWtlTGlzdHMudHh0OgorICAgICAgICAqIERlcml2ZWRTb3VyY2Vz
Lm1ha2U6CisgICAgICAgICogTW9kdWxlcy9tZWRpYXN0cmVhbS9OYXZpZ2F0b3JVc2VyTWVkaWEu
aWRsOgorICAgICAgICAqIE1vZHVsZXMvbWVkaWFzdHJlYW0vTmF2aWdhdG9yVXNlck1lZGlhLmpz
OgorICAgICAgICAod2Via2l0R2V0VXNlck1lZGlhKToKKyAgICAgICAgKiBNb2R1bGVzL21lZGlh
c3RyZWFtL05hdmlnYXRvclVzZXJNZWRpYUVycm9yQ2FsbGJhY2suaDogUmVtb3ZlZC4KKyAgICAg
ICAgKiBNb2R1bGVzL21lZGlhc3RyZWFtL05hdmlnYXRvclVzZXJNZWRpYUVycm9yQ2FsbGJhY2su
aWRsOiBSZW1vdmVkLgorICAgICAgICAqIE1vZHVsZXMvbWVkaWFzdHJlYW0vTmF2aWdhdG9yVXNl
ck1lZGlhU3VjY2Vzc0NhbGxiYWNrLmg6IFJlbW92ZWQuCisgICAgICAgICogTW9kdWxlcy9tZWRp
YXN0cmVhbS9OYXZpZ2F0b3JVc2VyTWVkaWFTdWNjZXNzQ2FsbGJhY2suaWRsOiBSZW1vdmVkLgor
ICAgICAgICAqIE1vZHVsZXMvbWVkaWFzdHJlYW0vVXNlck1lZGlhUmVxdWVzdC5jcHA6CisgICAg
ICAgICogTW9kdWxlcy9tZWRpYXN0cmVhbS9Vc2VyTWVkaWFSZXF1ZXN0Lmg6CisgICAgICAgICog
V2ViQ29yZS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qOgorICAgICAgICAqIGJpbmRpbmdzL2pz
L0pTRE9NV2luZG93QmFzZS5jcHA6CisgICAgICAgIChXZWJDb3JlOjpKU0RPTVdpbmRvd0Jhc2U6
OmZpbmlzaENyZWF0aW9uKToKKyAgICAgICAgKiBiaW5kaW5ncy9qcy9KU05hdmlnYXRvckN1c3Rv
bS5jcHA6CisgICAgICAgICogYmluZGluZ3MvanMvV2ViQ29yZUJ1aWx0aW5OYW1lcy5oOgorICAg
ICAgICAqIGJpbmRpbmdzL2pzL1dlYkNvcmVKU0J1aWx0aW5zLmNwcDoKKyAgICAgICAgKiBiaW5k
aW5ncy9qcy9XZWJDb3JlSlNCdWlsdGlucy5oOgorICAgICAgICAoV2ViQ29yZTo6SlNCdWlsdGlu
RnVuY3Rpb25zOjpKU0J1aWx0aW5GdW5jdGlvbnMpOgorICAgICAgICAoV2ViQ29yZTo6SlNCdWls
dGluRnVuY3Rpb25zOjpuYXZpZ2F0b3JVc2VyTWVkaWFCdWlsdGlucyk6CisgICAgICAgICogYmlu
ZGluZ3Mvc2NyaXB0cy9Db2RlR2VuZXJhdG9ySlMucG06CisgICAgICAgIChHZXRBdHRyaWJ1dGVH
ZXR0ZXJOYW1lKToKKyAgICAgICAgKEdldEF0dHJpYnV0ZVNldHRlck5hbWUpOgorICAgICAgICAo
R2V0RnVuY3Rpb25OYW1lKToKKyAgICAgICAgKEdlbmVyYXRlQ29uc3RydWN0b3JIZWxwZXJNZXRo
b2RzKToKKyAgICAgICAgKEdldEpTQnVpbHRpbkZ1bmN0aW9uTmFtZSk6CisgICAgICAgIChHZXRK
U0J1aWx0aW5GdW5jdGlvbk5hbWVGcm9tU3RyaW5nKToKKyAgICAgICAgKEdldEpTQnVpbHRpblNj
b3BlTmFtZSk6CisgICAgICAgIChBZGRKU0J1aWx0aW5JbmNsdWRlc0lmTmVlZGVkKToKKyAgICAg
ICAgKEdldFNwZWNpYWxBY2Nlc3NvckZ1bmN0aW9uRm9yVHlwZSk6IERlbGV0ZWQuCisgICAgICAg
ICogYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdEludGVyZmFjZS5jcHA6CisgICAgICAg
ICogYmluZGluZ3Mvc2NyaXB0cy90ZXN0L09iakMvRE9NVGVzdEludGVyZmFjZS5oOgorICAgICAg
ICAqIGJpbmRpbmdzL3NjcmlwdHMvdGVzdC9PYmpDL0RPTVRlc3RJbnRlcmZhY2UubW06CisgICAg
ICAgICgtW0RPTVRlc3RJbnRlcmZhY2UgYnVpbHRpbkF0dHJpYnV0ZV0pOgorICAgICAgICAoLVtE
T01UZXN0SW50ZXJmYWNlIHNldEJ1aWx0aW5BdHRyaWJ1dGU6XSk6CisgICAgICAgICgtW0RPTVRl
c3RJbnRlcmZhY2UgYnVpbHRpbkZ1bmN0aW9uXSk6CisgICAgICAgICogYmluZGluZ3Mvc2NyaXB0
cy90ZXN0L1Rlc3RTdXBwbGVtZW50YWwuaWRsOgorCiAyMDE1LTEwLTExICBCcmlhbiBCdXJnICA8
YmJ1cmdAYXBwbGUuY29tPgogCiAgICAgICAgIEFkZCBtaXNzaW5nIGJ1aWx0aW5zIGZpbGVzIHRv
IHRoZSBYY29kZSBwcm9qZWN0cwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvQ01ha2VMaXN0
cy50eHQgYi9Tb3VyY2UvV2ViQ29yZS9DTWFrZUxpc3RzLnR4dAppbmRleCA4MjQwODc0YmMzMjUw
ZGNjOTdiMDlmZDc0YWMwYzhlZDAzNmQyMGM1Li5jZDMyODlhZDNkNTlkNjk2ZjQwZmZlZmFjNGE1
NTlmODIzZDE2MmViIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9DTWFrZUxpc3RzLnR4dAor
KysgYi9Tb3VyY2UvV2ViQ29yZS9DTWFrZUxpc3RzLnR4dApAQCAtMjQxLDggKzI0MSw2IEBAIHNl
dChXZWJDb3JlX05PTl9TVkdfSURMX0ZJTEVTCiAgICAgTW9kdWxlcy9tZWRpYXN0cmVhbS9OYXZp
Z2F0b3JNZWRpYURldmljZXMuaWRsCiAgICAgTW9kdWxlcy9tZWRpYXN0cmVhbS9OYXZpZ2F0b3JV
c2VyTWVkaWEuaWRsCiAgICAgTW9kdWxlcy9tZWRpYXN0cmVhbS9OYXZpZ2F0b3JVc2VyTWVkaWFF
cnJvci5pZGwKLSAgICBNb2R1bGVzL21lZGlhc3RyZWFtL05hdmlnYXRvclVzZXJNZWRpYUVycm9y
Q2FsbGJhY2suaWRsCi0gICAgTW9kdWxlcy9tZWRpYXN0cmVhbS9OYXZpZ2F0b3JVc2VyTWVkaWFT
dWNjZXNzQ2FsbGJhY2suaWRsCiAgICAgTW9kdWxlcy9tZWRpYXN0cmVhbS9SVENDb25maWd1cmF0
aW9uLmlkbAogICAgIE1vZHVsZXMvbWVkaWFzdHJlYW0vUlRDRFRNRlNlbmRlci5pZGwKICAgICBN
b2R1bGVzL21lZGlhc3RyZWFtL1JUQ0RUTUZUb25lQ2hhbmdlRXZlbnQuaWRsCkBAIC0xMTk0LDcg
KzExOTIsNiBAQCBzZXQoV2ViQ29yZV9TT1VSQ0VTCiAgICAgYmluZGluZ3MvanMvSlNNdXRhdGlv
bkNhbGxiYWNrLmNwcAogICAgIGJpbmRpbmdzL2pzL0pTTXV0YXRpb25PYnNlcnZlckN1c3RvbS5j
cHAKICAgICBiaW5kaW5ncy9qcy9KU05hbWVkTm9kZU1hcEN1c3RvbS5jcHAKLSAgICBiaW5kaW5n
cy9qcy9KU05hdmlnYXRvckN1c3RvbS5jcHAKICAgICBiaW5kaW5ncy9qcy9KU05vZGVDdXN0b20u
Y3BwCiAgICAgYmluZGluZ3MvanMvSlNOb2RlRmlsdGVyQ3VzdG9tLmNwcAogICAgIGJpbmRpbmdz
L2pzL0pTTm9kZUl0ZXJhdG9yQ3VzdG9tLmNwcApAQCAtMzM0Niw2ICszMzQzLDcgQEAgc2V0KERF
RElDQVRFRFdPUktFUkdMT0JBTFNDT1BFX0NPTlNUUlVDVE9SU19GSUxFICR7REVSSVZFRF9TT1VS
Q0VTX1dFQkNPUkVfRElSfS8KIHNldChJRExfQVRUUklCVVRFU19GSUxFICR7V0VCQ09SRV9ESVJ9
L2JpbmRpbmdzL3NjcmlwdHMvSURMQXR0cmlidXRlcy50eHQpCiAKIHNldChXRUJDT1JFX0pTX0JV
SUxUSU5TCisgICAgJHtXRUJDT1JFX0RJUn0vTW9kdWxlcy9tZWRpYXN0cmVhbS9OYXZpZ2F0b3JV
c2VyTWVkaWEuanMKICAgICAke1dFQkNPUkVfRElSfS9Nb2R1bGVzL3N0cmVhbXMvQnl0ZUxlbmd0
aFF1ZXVpbmdTdHJhdGVneS5qcwogICAgICR7V0VCQ09SRV9ESVJ9L01vZHVsZXMvc3RyZWFtcy9D
b3VudFF1ZXVpbmdTdHJhdGVneS5qcwogICAgICR7V0VCQ09SRV9ESVJ9L01vZHVsZXMvc3RyZWFt
cy9SZWFkYWJsZVN0cmVhbS5qcwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvRGVyaXZlZFNv
dXJjZXMubWFrZSBiL1NvdXJjZS9XZWJDb3JlL0Rlcml2ZWRTb3VyY2VzLm1ha2UKaW5kZXggNDY2
NTRmMmFkMzE4ODlkYjM0MjU3YmZkOGM4ZmFjOTNlMmRmMDRiNS4uMjkzYzE5ZmU1MTQ4MDRkNDg2
OTk3M2RjNzExMDkyNWFhMGYxODUwNyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvRGVyaXZl
ZFNvdXJjZXMubWFrZQorKysgYi9Tb3VyY2UvV2ViQ29yZS9EZXJpdmVkU291cmNlcy5tYWtlCkBA
IC0xMzcsOCArMTM3LDYgQEAgTk9OX1NWR19CSU5ESU5HX0lETFMgPSBcCiAgICAgJChXZWJDb3Jl
KS9Nb2R1bGVzL21lZGlhc3RyZWFtL05hdmlnYXRvck1lZGlhRGV2aWNlcy5pZGwgXAogICAgICQo
V2ViQ29yZSkvTW9kdWxlcy9tZWRpYXN0cmVhbS9OYXZpZ2F0b3JVc2VyTWVkaWEuaWRsIFwKICAg
ICAkKFdlYkNvcmUpL01vZHVsZXMvbWVkaWFzdHJlYW0vTmF2aWdhdG9yVXNlck1lZGlhRXJyb3Iu
aWRsIFwKLSAgICAkKFdlYkNvcmUpL01vZHVsZXMvbWVkaWFzdHJlYW0vTmF2aWdhdG9yVXNlck1l
ZGlhRXJyb3JDYWxsYmFjay5pZGwgXAotICAgICQoV2ViQ29yZSkvTW9kdWxlcy9tZWRpYXN0cmVh
bS9OYXZpZ2F0b3JVc2VyTWVkaWFTdWNjZXNzQ2FsbGJhY2suaWRsIFwKICAgICAkKFdlYkNvcmUp
L01vZHVsZXMvbWVkaWFzdHJlYW0vUlRDQ29uZmlndXJhdGlvbi5pZGwgXAogICAgICQoV2ViQ29y
ZSkvTW9kdWxlcy9tZWRpYXN0cmVhbS9SVENEVE1GU2VuZGVyLmlkbCBcCiAgICAgJChXZWJDb3Jl
KS9Nb2R1bGVzL21lZGlhc3RyZWFtL1JUQ0RUTUZUb25lQ2hhbmdlRXZlbnQuaWRsIFwKQEAgLTEy
NTIsNiArMTI1MCw3IEBAIFdlYlJlcGxheUlucHV0cy5oIDogJChJTlBVVF9HRU5FUkFUT1JfU1BF
Q0lGSUNBVElPTlMpICQoSU5QVVRfR0VORVJBVE9SX1NDUklQVFMpCiAjIFdlYkNvcmUgSlMgQnVp
bHRpbnMKIAogV0VCQ09SRV9KU19CVUlMVElOUyA9IFwKKyAgICAkKFdlYkNvcmUpL01vZHVsZXMv
bWVkaWFzdHJlYW0vTmF2aWdhdG9yVXNlck1lZGlhLmpzIFwKICAgICAkKFdlYkNvcmUpL01vZHVs
ZXMvc3RyZWFtcy9CeXRlTGVuZ3RoUXVldWluZ1N0cmF0ZWd5LmpzIFwKICAgICAkKFdlYkNvcmUp
L01vZHVsZXMvc3RyZWFtcy9Db3VudFF1ZXVpbmdTdHJhdGVneS5qcyBcCiAgICAgJChXZWJDb3Jl
KS9Nb2R1bGVzL3N0cmVhbXMvUmVhZGFibGVTdHJlYW0uanMgXApkaWZmIC0tZ2l0IGEvU291cmNl
L1dlYkNvcmUvTW9kdWxlcy9tZWRpYXN0cmVhbS9OYXZpZ2F0b3JVc2VyTWVkaWEuaWRsIGIvU291
cmNlL1dlYkNvcmUvTW9kdWxlcy9tZWRpYXN0cmVhbS9OYXZpZ2F0b3JVc2VyTWVkaWEuaWRsCmlu
ZGV4IDRjNjVjYjdhZTEyYzQzYWE0YjM5NGZmM2QzZWY0YzlmOTE2NWY4NjUuLjNhYTQ5M2YwZjk1
OWJhZDIyOWJlMWM5NGE4ZjExYmE1Mjk0NTE3YTAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3Jl
L01vZHVsZXMvbWVkaWFzdHJlYW0vTmF2aWdhdG9yVXNlck1lZGlhLmlkbAorKysgYi9Tb3VyY2Uv
V2ViQ29yZS9Nb2R1bGVzL21lZGlhc3RyZWFtL05hdmlnYXRvclVzZXJNZWRpYS5pZGwKQEAgLTIw
LDggKzIwLDYgQEAKIFsKICAgICBDb25kaXRpb25hbD1NRURJQV9TVFJFQU0sCiBdIHBhcnRpYWwg
aW50ZXJmYWNlIE5hdmlnYXRvciB7Ci0gICAgW0N1c3RvbSwgUmFpc2VzRXhjZXB0aW9uXSB2b2lk
IHdlYmtpdEdldFVzZXJNZWRpYShEaWN0aW9uYXJ5IG9wdGlvbnMsCi0gICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgTmF2aWdhdG9yVXNlck1lZGlhU3VjY2Vz
c0NhbGxiYWNrIHN1Y2Nlc3NDYWxsYmFjaywKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICBvcHRpb25hbCBOYXZpZ2F0b3JVc2VyTWVkaWFFcnJvckNhbGxi
YWNrIGVycm9yQ2FsbGJhY2spOworICAgIFtKU0J1aWx0aW5dIHZvaWQgd2Via2l0R2V0VXNlck1l
ZGlhKERpY3Rpb25hcnkgb2JqZWN0LCBhbnkgc3VjY2Vzc0NhbGxiYWNrLCBhbnkgZXJyb3JDYWxs
YmFjayk7CiB9OwogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL21lZGlhc3Ry
ZWFtL05hdmlnYXRvclVzZXJNZWRpYS5qcyBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvbWVkaWFz
dHJlYW0vTmF2aWdhdG9yVXNlck1lZGlhLmpzCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmU0MzFmMTI5ZGZlMGVhY2Vl
MTNlMzdmZWMzZGQ0YmIyMDdlODZhMDAKLS0tIC9kZXYvbnVsbAorKysgYi9Tb3VyY2UvV2ViQ29y
ZS9Nb2R1bGVzL21lZGlhc3RyZWFtL05hdmlnYXRvclVzZXJNZWRpYS5qcwpAQCAtMCwwICsxLDQ1
IEBACisvKgorICogQ29weXJpZ2h0IChDKSAyMDE1IENhbm9uIEluYy4KKyAqCisgKiBSZWRpc3Ry
aWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhv
dXQKKyAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xs
b3dpbmcgY29uZGl0aW9ucworICogYXJlIG1ldDoKKyAqIDEuIFJlZGlzdHJpYnV0aW9ucyBvZiBz
b3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2Us
IHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisg
KiAyLiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFi
b3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQg
dGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQorICogICAgZG9jdW1lbnRhdGlvbiBhbmQv
b3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KKyAqCisg
KiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIEFQUExFIElOQy4gYGBBUyBJUycnIEFORCBB
TlkKKyAqIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1Qg
TElNSVRFRCBUTywgVEhFCisgKiBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZ
IEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIKKyAqIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQu
ICBJTiBOTyBFVkVOVCBTSEFMTCBBUFBMRSBJTkMuIE9SCisgKiBDT05UUklCVVRPUlMgQkUgTElB
QkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwKKyAqIEVY
RU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElN
SVRFRCBUTywKKyAqIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7
IExPU1MgT0YgVVNFLCBEQVRBLCBPUgorICogUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBU
SU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZIFRIRU9SWQorICogT0YgTElBQklMSVRZLCBX
SEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUCisgKiAoSU5DTFVE
SU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRI
RSBVU0UKKyAqIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lC
SUxJVFkgT0YgU1VDSCBEQU1BR0UuCisgKi8KKworZnVuY3Rpb24gd2Via2l0R2V0VXNlck1lZGlh
KG9wdGlvbnMsIHN1Y2Nlc3NDYWxsYmFjaywgZXJyb3JDYWxsYmFjaykKK3sKKyAgICAidXNlIHN0
cmljdCI7CisKKyAgICBpZiAoYXJndW1lbnRzLmxlbmd0aCAhPSAzKQorICAgICAgICB0aHJvdyBu
ZXcgQFR5cGVFcnJvcigiTm90IGVub3VnaCBhcmd1bWVudHMiKTsKKworICAgIGlmIChvcHRpb25z
ICE9PSBPYmplY3Qob3B0aW9ucykpCisgICAgICAgIHRocm93IG5ldyBAVHlwZUVycm9yKCJBcmd1
bWVudCAxIChvcHRpb25zKSB0byBOYXZpZ2F0b3Iud2Via2l0R2V0VXNlck1lZGlhIG11c3QgYmUg
YW4gb2JqZWN0Iik7CisKKyAgICBpZiAodHlwZW9mIHN1Y2Nlc3NDYWxsYmFjayAhPT0gImZ1bmN0
aW9uIikKKyAgICAgICAgdGhyb3cgbmV3IEBUeXBlRXJyb3IoIkFyZ3VtZW50IDIgKCdzdWNjZXNz
Q2FsbGJhY2snKSB0byBOYXZpZ2F0b3Iud2Via2l0R2V0VXNlck1lZGlhIG11c3QgYmUgYSBmdW5j
dGlvbiIpOworICAgIGlmICh0eXBlb2YgZXJyb3JDYWxsYmFjayAhPT0gImZ1bmN0aW9uIikKKyAg
ICAgICAgdGhyb3cgbmV3IEBUeXBlRXJyb3IoIkFyZ3VtZW50IDMgKCdlcnJvckNhbGxiYWNrJykg
dG8gTmF2aWdhdG9yLndlYmtpdEdldFVzZXJNZWRpYSBtdXN0IGJlIGEgZnVuY3Rpb24iKTsKKwor
ICAgaWYgKCFuYXZpZ2F0b3IpCisgICAgICAgIHRocm93IG5ldyBAVHlwZUVycm9yKCJUaGUgaW1w
bGVtZW50YXRpb24gZGlkIG5vdCBzdXBwb3J0IHRoZSByZXF1ZXN0ZWQgdHlwZSBvZiBvYmplY3Qg
b3Igb3BlcmF0aW9uLiIpOworCisgICBAZ2V0VXNlck1lZGlhLkBjYWxsKG5hdmlnYXRvci5tZWRp
YURldmljZXMsIG9wdGlvbnMpLnRoZW4oc3VjY2Vzc0NhbGxiYWNrLCBlcnJvckNhbGxiYWNrKTsK
K30KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvbWVkaWFzdHJlYW0vTmF2aWdh
dG9yVXNlck1lZGlhRXJyb3JDYWxsYmFjay5oIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9tZWRp
YXN0cmVhbS9OYXZpZ2F0b3JVc2VyTWVkaWFFcnJvckNhbGxiYWNrLmgKZGVsZXRlZCBmaWxlIG1v
ZGUgMTAwNjQ0CmluZGV4IGRkM2M4YjMyYjZlYzdjODA2MWQ2MjQyMTEzZTlkMDg2NDFmNWFhMDku
LjAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAKLS0tIGEvU291cmNlL1dl
YkNvcmUvTW9kdWxlcy9tZWRpYXN0cmVhbS9OYXZpZ2F0b3JVc2VyTWVkaWFFcnJvckNhbGxiYWNr
LmgKKysrIC9kZXYvbnVsbApAQCAtMSw0NSArMCwwIEBACi0vKgotICogQ29weXJpZ2h0IChDKSAy
MDExIEdvb2dsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi0gKgotICogUmVkaXN0cmlidXRp
b24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0Ci0g
KiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5n
IGNvbmRpdGlvbnMKLSAqIGFyZSBtZXQ6Ci0gKiAxLiAgUmVkaXN0cmlidXRpb25zIG9mIHNvdXJj
ZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKLSAqICAgICBub3RpY2UsIHRo
aXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCi0gKiAy
LiAgUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92
ZSBjb3B5cmlnaHQKLSAqICAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0
aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCi0gKiAgICAgZG9jdW1lbnRhdGlvbiBhbmQv
b3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KLSAqCi0g
KiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIEFQUExFIElOQy4gQU5EIElUUyBDT05UUklC
VVRPUlMgYGBBUyBJUycnIEFORCBBTlkKLSAqIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVT
LCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgVEhFIElNUExJRUQKLSAqIFdBUlJBTlRJ
RVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9T
RSBBUkUKLSAqIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIEFQUExFIElOQy4gT1IgSVRT
IENPTlRSSUJVVE9SUyBCRSBMSUFCTEUgRk9SIEFOWQotICogRElSRUNULCBJTkRJUkVDVCwgSU5D
SURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMKLSAq
IChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVU
RSBHT09EUyBPUiBTRVJWSUNFUzsKLSAqIExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBP
UiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTgotICogQU5ZIFRI
RU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFks
IE9SIFRPUlQKLSAqIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcg
SU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRSBPRiBUSElTCi0gKiBTT0ZUV0FSRSwgRVZFTiBJRiBB
RFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KLSAqLwotCi0jaWZuZGVm
IE5hdmlnYXRvclVzZXJNZWRpYUVycm9yQ2FsbGJhY2tfaAotI2RlZmluZSBOYXZpZ2F0b3JVc2Vy
TWVkaWFFcnJvckNhbGxiYWNrX2gKLQotI2lmIEVOQUJMRShNRURJQV9TVFJFQU0pCi0KLSNpbmNs
dWRlICJOYXZpZ2F0b3JVc2VyTWVkaWFFcnJvci5oIgotI2luY2x1ZGUgPHd0Zi9SZWZDb3VudGVk
Lmg+Ci0KLW5hbWVzcGFjZSBXZWJDb3JlIHsKLQotY2xhc3MgTmF2aWdhdG9yVXNlck1lZGlhRXJy
b3JDYWxsYmFjayA6IHB1YmxpYyBSZWZDb3VudGVkPE5hdmlnYXRvclVzZXJNZWRpYUVycm9yQ2Fs
bGJhY2s+IHsKLXB1YmxpYzoKLSAgICB2aXJ0dWFsIH5OYXZpZ2F0b3JVc2VyTWVkaWFFcnJvckNh
bGxiYWNrKCkgeyB9Ci0gICAgdmlydHVhbCBib29sIGhhbmRsZUV2ZW50KE5hdmlnYXRvclVzZXJN
ZWRpYUVycm9yKikgPSAwOwotfTsKLQotfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQotCi0jZW5kaWYg
Ly8gRU5BQkxFKE1FRElBX1NUUkVBTSkKLQotI2VuZGlmIC8vIE5hdmlnYXRvclVzZXJNZWRpYUVy
cm9yQ2FsbGJhY2tfaApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9tZWRpYXN0
cmVhbS9OYXZpZ2F0b3JVc2VyTWVkaWFFcnJvckNhbGxiYWNrLmlkbCBiL1NvdXJjZS9XZWJDb3Jl
L01vZHVsZXMvbWVkaWFzdHJlYW0vTmF2aWdhdG9yVXNlck1lZGlhRXJyb3JDYWxsYmFjay5pZGwK
ZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IGYwYWM3ZGQxYmY5YTNmZTJkMmZjZjIwMTNk
NjYwNDdjZWYzYzZmZDEuLjAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAK
LS0tIGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9tZWRpYXN0cmVhbS9OYXZpZ2F0b3JVc2VyTWVk
aWFFcnJvckNhbGxiYWNrLmlkbAorKysgL2Rldi9udWxsCkBAIC0xLDMxICswLDAgQEAKLS8qCi0g
KiBDb3B5cmlnaHQgKEMpIDIwMTEgR29vZ2xlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KLSAq
Ci0gKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3
aXRoIG9yIHdpdGhvdXQKLSAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0
aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucwotICogYXJlIG1ldDoKLSAqIDEuICBSZWRpc3Ry
aWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAot
ICogICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcg
ZGlzY2xhaW1lci4KLSAqIDIuICBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCBy
ZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAotICogICAgIG5vdGljZSwgdGhpcyBsaXN0IG9m
IGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKLSAqICAgICBk
b2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlz
dHJpYnV0aW9uLgotICoKLSAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgQVBQTEUgSU5D
LiBBTkQgSVRTIENPTlRSSUJVVE9SUyBgYEFTIElTJycgQU5EIEFOWQotICogRVhQUkVTUyBPUiBJ
TVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBUSEUgSU1Q
TElFRAotICogV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEg
UEFSVElDVUxBUiBQVVJQT1NFIEFSRQotICogRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwg
QVBQTEUgSU5DLiBPUiBJVFMgQ09OVFJJQlVUT1JTIEJFIExJQUJMRSBGT1IgQU5ZCi0gKiBESVJF
Q1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SIENPTlNFUVVF
TlRJQUwgREFNQUdFUwotICogKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJF
TUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOwotICogTE9TUyBPRiBVU0UsIERB
VEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQg
QU5EIE9OCi0gKiBBTlkgVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwg
U1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVAotICogKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9U
SEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFIE9GIFRISVMKLSAqIFNP
RlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdF
LgotICovCi0KLVsKLSAgICBDb25kaXRpb25hbD1NRURJQV9TVFJFQU0sCi0gICAgQ2FsbGJhY2s9
RnVuY3Rpb25Pbmx5LAotXSBjYWxsYmFjayBpbnRlcmZhY2UgTmF2aWdhdG9yVXNlck1lZGlhRXJy
b3JDYWxsYmFjayB7Ci0gICAgYm9vbGVhbiBoYW5kbGVFdmVudChOYXZpZ2F0b3JVc2VyTWVkaWFF
cnJvciBlcnJvcik7Ci19OwotCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL21l
ZGlhc3RyZWFtL05hdmlnYXRvclVzZXJNZWRpYVN1Y2Nlc3NDYWxsYmFjay5oIGIvU291cmNlL1dl
YkNvcmUvTW9kdWxlcy9tZWRpYXN0cmVhbS9OYXZpZ2F0b3JVc2VyTWVkaWFTdWNjZXNzQ2FsbGJh
Y2suaApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggOWY0NTZlYWRjNmFlNDk0MTg2Y2Yw
N2M2ZTJhNTJlMDQ3NjNmOTk5MC4uMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL21lZGlhc3RyZWFtL05hdmlnYXRvclVz
ZXJNZWRpYVN1Y2Nlc3NDYWxsYmFjay5oCisrKyAvZGV2L251bGwKQEAgLTEsNDYgKzAsMCBAQAot
LyoKLSAqIENvcHlyaWdodCAoQykgMjAxMSBHb29nbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVk
LgotICoKLSAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9y
bXMsIHdpdGggb3Igd2l0aG91dAotICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3Zp
ZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCi0gKiBhcmUgbWV0OgotICogMS4gIFJl
ZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJp
Z2h0Ci0gKiAgICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxv
d2luZyBkaXNjbGFpbWVyLgotICogMi4gIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBt
dXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0Ci0gKiAgICAgbm90aWNlLCB0aGlzIGxp
c3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQotICog
ICAgIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRo
ZSBkaXN0cmlidXRpb24uCi0gKgotICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBBUFBM
RSBJTkMuIEFORCBJVFMgQ09OVFJJQlVUT1JTIGBgQVMgSVMnJyBBTkQgQU5ZCi0gKiBFWFBSRVNT
IE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFRI
RSBJTVBMSUVECi0gKiBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBG
T1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UgQVJFCi0gKiBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBT
SEFMTCBBUFBMRSBJTkMuIE9SIElUUyBDT05UUklCVVRPUlMgQkUgTElBQkxFIEZPUiBBTlkKLSAq
IERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IgQ09O
U0VRVUVOVElBTCBEQU1BR0VTCi0gKiAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBS
T0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7Ci0gKiBMT1NTIE9GIFVT
RSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENB
VVNFRCBBTkQgT04KLSAqIEFOWSBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRS
QUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUCi0gKiAoSU5DTFVESU5HIE5FR0xJR0VOQ0Ug
T1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UgT0YgVEhJUwot
ICogU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBE
QU1BR0UuCi0gKi8KLQotI2lmbmRlZiBOYXZpZ2F0b3JVc2VyTWVkaWFTdWNjZXNzQ2FsbGJhY2tf
aAotI2RlZmluZSBOYXZpZ2F0b3JVc2VyTWVkaWFTdWNjZXNzQ2FsbGJhY2tfaAotCi0jaWYgRU5B
QkxFKE1FRElBX1NUUkVBTSkKLQotI2luY2x1ZGUgPHd0Zi9SZWZDb3VudGVkLmg+Ci0KLW5hbWVz
cGFjZSBXZWJDb3JlIHsKLQotY2xhc3MgTWVkaWFTdHJlYW07Ci0KLWNsYXNzIE5hdmlnYXRvclVz
ZXJNZWRpYVN1Y2Nlc3NDYWxsYmFjayA6IHB1YmxpYyBSZWZDb3VudGVkPE5hdmlnYXRvclVzZXJN
ZWRpYVN1Y2Nlc3NDYWxsYmFjaz4gewotcHVibGljOgotICAgIHZpcnR1YWwgfk5hdmlnYXRvclVz
ZXJNZWRpYVN1Y2Nlc3NDYWxsYmFjaygpIHsgfQotICAgIHZpcnR1YWwgYm9vbCBoYW5kbGVFdmVu
dChNZWRpYVN0cmVhbSopID0gMDsKLX07Ci0KLX0gLy8gbmFtZXNwYWNlIFdlYkNvcmUKLQotI2Vu
ZGlmIC8vIEVOQUJMRShNRURJQV9TVFJFQU0pCi0KLSNlbmRpZiAvLyBOYXZpZ2F0b3JVc2VyTWVk
aWFTdWNjZXNzQ2FsbGJhY2tfaApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9t
ZWRpYXN0cmVhbS9OYXZpZ2F0b3JVc2VyTWVkaWFTdWNjZXNzQ2FsbGJhY2suaWRsIGIvU291cmNl
L1dlYkNvcmUvTW9kdWxlcy9tZWRpYXN0cmVhbS9OYXZpZ2F0b3JVc2VyTWVkaWFTdWNjZXNzQ2Fs
bGJhY2suaWRsCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAyZDE5MGNmMmViMTkyMjA5
NThhOGNlOGJjYmY3OGQzNDRjZmQyZTUwLi4wMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwCi0tLSBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvbWVkaWFzdHJlYW0vTmF2aWdh
dG9yVXNlck1lZGlhU3VjY2Vzc0NhbGxiYWNrLmlkbAorKysgL2Rldi9udWxsCkBAIC0xLDMxICsw
LDAgQEAKLS8qCi0gKiBDb3B5cmlnaHQgKEMpIDIwMTEgR29vZ2xlIEluYy4gQWxsIHJpZ2h0cyBy
ZXNlcnZlZC4KLSAqCi0gKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmlu
YXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKLSAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRl
ZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucwotICogYXJlIG1ldDoKLSAq
IDEuICBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3Zl
IGNvcHlyaWdodAotICogICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRo
ZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KLSAqIDIuICBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5
IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAotICogICAgIG5vdGljZSwg
dGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0
aGUKLSAqICAgICBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQg
d2l0aCB0aGUgZGlzdHJpYnV0aW9uLgotICoKLSAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQg
QlkgQVBQTEUgSU5DLiBBTkQgSVRTIENPTlRSSUJVVE9SUyBgYEFTIElTJycgQU5EIEFOWQotICog
RVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVE
IFRPLCBUSEUgSU1QTElFRAotICogV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJ
VE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFSRQotICogRElTQ0xBSU1FRC4gSU4gTk8g
RVZFTlQgU0hBTEwgQVBQTEUgSU5DLiBPUiBJVFMgQ09OVFJJQlVUT1JTIEJFIExJQUJMRSBGT1Ig
QU5ZCi0gKiBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlks
IE9SIENPTlNFUVVFTlRJQUwgREFNQUdFUwotICogKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVE
IFRPLCBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOwotICogTE9T
UyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9X
RVZFUiBDQVVTRUQgQU5EIE9OCi0gKiBBTlkgVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJ
TiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVAotICogKElOQ0xVRElORyBORUdM
SUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFIE9G
IFRISVMKLSAqIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9G
IFNVQ0ggREFNQUdFLgotICovCi0KLVsKLSAgICBDb25kaXRpb25hbD1NRURJQV9TVFJFQU0sCi0g
ICAgQ2FsbGJhY2s9RnVuY3Rpb25Pbmx5LAotXSBjYWxsYmFjayBpbnRlcmZhY2UgTmF2aWdhdG9y
VXNlck1lZGlhU3VjY2Vzc0NhbGxiYWNrIHsKLSAgICBib29sZWFuIGhhbmRsZUV2ZW50KE1lZGlh
U3RyZWFtIHN0cmVhbSk7Ci19OwotCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVz
L21lZGlhc3RyZWFtL1VzZXJNZWRpYVJlcXVlc3QuY3BwIGIvU291cmNlL1dlYkNvcmUvTW9kdWxl
cy9tZWRpYXN0cmVhbS9Vc2VyTWVkaWFSZXF1ZXN0LmNwcAppbmRleCBjM2YzMzgwZmFiYmZiZTE1
YzMxNjJmM2I3M2Q3NDZiZWFhNjc3ZmEzLi5kM2ZjM2JmYWE3ZTI5YThhMzFkNzcxMzljYWNiNzlj
ZGE0M2U4NzE3IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL21lZGlhc3RyZWFt
L1VzZXJNZWRpYVJlcXVlc3QuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvbWVkaWFz
dHJlYW0vVXNlck1lZGlhUmVxdWVzdC5jcHAKQEAgLTQ3LDggKzQ3LDYgQEAKICNpbmNsdWRlICJN
ZWRpYUNvbnN0cmFpbnRzSW1wbC5oIgogI2luY2x1ZGUgIk1lZGlhU3RyZWFtLmgiCiAjaW5jbHVk
ZSAiTWVkaWFTdHJlYW1Qcml2YXRlLmgiCi0jaW5jbHVkZSAiTmF2aWdhdG9yVXNlck1lZGlhRXJy
b3JDYWxsYmFjay5oIgotI2luY2x1ZGUgIk5hdmlnYXRvclVzZXJNZWRpYVN1Y2Nlc3NDYWxsYmFj
ay5oIgogI2luY2x1ZGUgIlJlYWx0aW1lTWVkaWFTb3VyY2VDZW50ZXIuaCIKICNpbmNsdWRlICJT
ZWN1cml0eU9yaWdpbi5oIgogI2luY2x1ZGUgIlVzZXJNZWRpYUNvbnRyb2xsZXIuaCIKZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvbWVkaWFzdHJlYW0vVXNlck1lZGlhUmVxdWVz
dC5oIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9tZWRpYXN0cmVhbS9Vc2VyTWVkaWFSZXF1ZXN0
LmgKaW5kZXggZGQyMDExM2NhYzU1ZDcxNGUzZGMyNTM1MTRhYjQwM2U3MjYzODIxNi4uZWNlYTU5
YTZjYTZjZTdiMzQxY2RjMDc0NzFhYWYyNDllMmJlNTE2NyAxMDA2NDQKLS0tIGEvU291cmNlL1dl
YkNvcmUvTW9kdWxlcy9tZWRpYXN0cmVhbS9Vc2VyTWVkaWFSZXF1ZXN0LmgKKysrIGIvU291cmNl
L1dlYkNvcmUvTW9kdWxlcy9tZWRpYXN0cmVhbS9Vc2VyTWVkaWFSZXF1ZXN0LmgKQEAgLTQ5LDgg
KzQ5LDYgQEAgY2xhc3MgRG9jdW1lbnQ7CiBjbGFzcyBGcmFtZTsKIGNsYXNzIE1lZGlhQ29uc3Ry
YWludHM7CiBjbGFzcyBNZWRpYVN0cmVhbVByaXZhdGU7Ci1jbGFzcyBOYXZpZ2F0b3JVc2VyTWVk
aWFFcnJvckNhbGxiYWNrOwotY2xhc3MgTmF2aWdhdG9yVXNlck1lZGlhU3VjY2Vzc0NhbGxiYWNr
OwogY2xhc3MgVXNlck1lZGlhQ29udHJvbGxlcjsKIGNsYXNzIFNlY3VyaXR5T3JpZ2luOwogCmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9XZWJDb3JlLnhjb2RlcHJvai9wcm9qZWN0LnBieHBy
b2ogYi9Tb3VyY2UvV2ViQ29yZS9XZWJDb3JlLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2oKaW5k
ZXggYTk4MTkzM2MyOGJjYTA0ZTViODU5ODdhMTNhNjlkYWJjZWMyZmMwZS4uNzYxOGViMDhmMWQ4
ZjAyYWRhY2NmYTAyNTcxNTA0NDVjMTMxMDZlYSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUv
V2ViQ29yZS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qCisrKyBiL1NvdXJjZS9XZWJDb3JlL1dl
YkNvcmUueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvagpAQCAtMTUzLDcgKzE1Myw2IEBACiAJCTA3
Mzc5NEUyMTlFRTJEMUIwMEU1QTA0NSAvKiBNZWRpYUNvbnN0cmFpbnRzTW9jay5oIGluIEhlYWRl
cnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMDczNzk0RTAxOUVFMkQxQjAw
RTVBMDQ1IC8qIE1lZGlhQ29uc3RyYWludHNNb2NrLmggKi87IH07CiAJCTA3Mzc5NEU1MTlFRTJG
RjIwMEU1QTA0NSAvKiBKU1JUQ0NvbmZpZ3VyYXRpb24uY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNh
ID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMDczNzk0RTMxOUVFMkZGMjAwRTVBMDQ1IC8qIEpT
UlRDQ29uZmlndXJhdGlvbi5jcHAgKi87IH07CiAJCTA3Mzc5NEU2MTlFRTJGRjIwMEU1QTA0NSAv
KiBKU1JUQ0NvbmZpZ3VyYXRpb24uaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmls
ZTsgZmlsZVJlZiA9IDA3Mzc5NEU0MTlFRTJGRjIwMEU1QTA0NSAvKiBKU1JUQ0NvbmZpZ3VyYXRp
b24uaCAqLzsgfTsKLQkJMDczNzk0RTgxOUVFMzM1QzAwRTVBMDQ1IC8qIEpTTmF2aWdhdG9yQ3Vz
dG9tLmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDA3
Mzc5NEU3MTlFRTMzNUMwMEU1QTA0NSAvKiBKU05hdmlnYXRvckN1c3RvbS5jcHAgKi87IH07CiAJ
CTA3Mzc5NEVCMTlFRTM0MUUwMEU1QTA0NSAvKiBKU1JUQ0ljZVNlcnZlci5jcHAgaW4gU291cmNl
cyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAwNzM3OTRFOTE5RUUzNDFFMDBF
NUEwNDUgLyogSlNSVENJY2VTZXJ2ZXIuY3BwICovOyB9OwogCQkwNzM3OTRFQzE5RUUzNDFFMDBF
NUEwNDUgLyogSlNSVENJY2VTZXJ2ZXIuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxk
RmlsZTsgZmlsZVJlZiA9IDA3Mzc5NEVBMTlFRTM0MUUwMEU1QTA0NSAvKiBKU1JUQ0ljZVNlcnZl
ci5oICovOyB9OwogCQkwNzM3OTRGMTE5RUUzN0JCMDBFNUEwNDUgLyogUlRDUGVlckNvbm5lY3Rp
b25IYW5kbGVyTW9jay5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZp
bGVSZWYgPSAwNzM3OTRFRjE5RUUzN0JCMDBFNUEwNDUgLyogUlRDUGVlckNvbm5lY3Rpb25IYW5k
bGVyTW9jay5jcHAgKi87IH07CkBAIC0xNzMsMTAgKzE3Miw2IEBACiAJCTA3M0JFMzQxMTdEMTdF
MDEwMDJCRDQzMSAvKiBKU05hdmlnYXRvclVzZXJNZWRpYS5oIGluIEhlYWRlcnMgKi8gPSB7aXNh
ID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMDczQkUzM0YxN0QxN0UwMTAwMkJENDMxIC8qIEpT
TmF2aWdhdG9yVXNlck1lZGlhLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0
ZSwgKTsgfTsgfTsKIAkJMDczQkUzNDgxN0QxN0U3QTAwMkJENDMxIC8qIEpTTmF2aWdhdG9yVXNl
ck1lZGlhRXJyb3IuY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxl
UmVmID0gMDczQkUzNDIxN0QxN0U3QTAwMkJENDMxIC8qIEpTTmF2aWdhdG9yVXNlck1lZGlhRXJy
b3IuY3BwICovOyB9OwogCQkwNzNCRTM0OTE3RDE3RTdBMDAyQkQ0MzEgLyogSlNOYXZpZ2F0b3JV
c2VyTWVkaWFFcnJvci5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxl
UmVmID0gMDczQkUzNDMxN0QxN0U3QTAwMkJENDMxIC8qIEpTTmF2aWdhdG9yVXNlck1lZGlhRXJy
b3IuaCAqLzsgfTsKLQkJMDczQkUzNEExN0QxN0U3QTAwMkJENDMxIC8qIEpTTmF2aWdhdG9yVXNl
ck1lZGlhRXJyb3JDYWxsYmFjay5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZp
bGU7IGZpbGVSZWYgPSAwNzNCRTM0NDE3RDE3RTdBMDAyQkQ0MzEgLyogSlNOYXZpZ2F0b3JVc2Vy
TWVkaWFFcnJvckNhbGxiYWNrLmNwcCAqLzsgfTsKLQkJMDczQkUzNEIxN0QxN0U3QTAwMkJENDMx
IC8qIEpTTmF2aWdhdG9yVXNlck1lZGlhRXJyb3JDYWxsYmFjay5oIGluIEhlYWRlcnMgKi8gPSB7
aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMDczQkUzNDUxN0QxN0U3QTAwMkJENDMxIC8q
IEpTTmF2aWdhdG9yVXNlck1lZGlhRXJyb3JDYWxsYmFjay5oICovOyB9OwotCQkwNzNCRTM0QzE3
RDE3RTdBMDAyQkQ0MzEgLyogSlNOYXZpZ2F0b3JVc2VyTWVkaWFTdWNjZXNzQ2FsbGJhY2suY3Bw
IGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMDczQkUzNDYx
N0QxN0U3QTAwMkJENDMxIC8qIEpTTmF2aWdhdG9yVXNlck1lZGlhU3VjY2Vzc0NhbGxiYWNrLmNw
cCAqLzsgfTsKLQkJMDczQkUzNEQxN0QxN0U3QTAwMkJENDMxIC8qIEpTTmF2aWdhdG9yVXNlck1l
ZGlhU3VjY2Vzc0NhbGxiYWNrLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7
IGZpbGVSZWYgPSAwNzNCRTM0NzE3RDE3RTdBMDAyQkQ0MzEgLyogSlNOYXZpZ2F0b3JVc2VyTWVk
aWFTdWNjZXNzQ2FsbGJhY2suaCAqLzsgfTsKIAkJMDczQkUzNEUxN0QxODBCMjAwMkJENDMxIC8q
IFJUQ1Nlc3Npb25EZXNjcmlwdGlvbkRlc2NyaXB0b3IuY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNh
ID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMDcyMjFCQUIxN0NGMEFENDAwODQ4RTUxIC8qIFJU
Q1Nlc3Npb25EZXNjcmlwdGlvbkRlc2NyaXB0b3IuY3BwICovOyB9OwogCQkwNzNCRTM0RjE3RDE4
MTgzMDAyQkQ0MzEgLyogUlRDSWNlQ2FuZGlkYXRlRGVzY3JpcHRvci5jcHAgaW4gU291cmNlcyAq
LyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAwNzIyMUJBNjE3Q0YwQUQ0MDA4NDhF
NTEgLyogUlRDSWNlQ2FuZGlkYXRlRGVzY3JpcHRvci5jcHAgKi87IH07CiAJCTA3M0JFMzUwMTdE
MTgxQTYwMDJCRDQzMSAvKiBSVENQZWVyQ29ubmVjdGlvbkhhbmRsZXIuY3BwIGluIFNvdXJjZXMg
Ki8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMDcyMjFCQTgxN0NGMEFENDAwODQ4
RTUxIC8qIFJUQ1BlZXJDb25uZWN0aW9uSGFuZGxlci5jcHAgKi87IH07CkBAIC0yNDAsOCArMjM1
LDYgQEAKIAkJMDc4RTA5MTgxN0QxNEQxQzAwNDIwQUExIC8qIE1lZGlhU3RyZWFtVHJhY2suaCBp
biBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDA3MjIxQjU1MTdD
RUMzMjcwMDg0OEU1MSAvKiBNZWRpYVN0cmVhbVRyYWNrLmggKi87IH07CiAJCTA3OEUwOTE5MTdE
MTREMUMwMDQyMEFBMSAvKiBNZWRpYVN0cmVhbVRyYWNrRXZlbnQuaCBpbiBIZWFkZXJzICovID0g
e2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDA3MjIxQjU4MTdDRUMzMjcwMDg0OEU1MSAv
KiBNZWRpYVN0cmVhbVRyYWNrRXZlbnQuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQ
cml2YXRlLCApOyB9OyB9OwogCQkwNzhFMDkxQjE3RDE0RDFDMDA0MjBBQTEgLyogTmF2aWdhdG9y
VXNlck1lZGlhRXJyb3IuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmls
ZVJlZiA9IDA3MjIxQjVEMTdDRUMzMjcwMDg0OEU1MSAvKiBOYXZpZ2F0b3JVc2VyTWVkaWFFcnJv
ci5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07Ci0JCTA3
OEUwOTFDMTdEMTREMUMwMDQyMEFBMSAvKiBOYXZpZ2F0b3JVc2VyTWVkaWFFcnJvckNhbGxiYWNr
LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAwNzIyMUI1
RjE3Q0VDMzI3MDA4NDhFNTEgLyogTmF2aWdhdG9yVXNlck1lZGlhRXJyb3JDYWxsYmFjay5oICov
OyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07Ci0JCTA3OEUwOTFE
MTdEMTREMUMwMDQyMEFBMSAvKiBOYXZpZ2F0b3JVc2VyTWVkaWFTdWNjZXNzQ2FsbGJhY2suaCBp
biBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDA3MjIxQjYxMTdD
RUMzMjcwMDg0OEU1MSAvKiBOYXZpZ2F0b3JVc2VyTWVkaWFTdWNjZXNzQ2FsbGJhY2suaCAqLzsg
c2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OwogCQkwNzhFMDkxRTE3
RDE0RDFDMDA0MjBBQTEgLyogUlRDRGF0YUNoYW5uZWwuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9
IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDA3MjIxQjY0MTdDRUMzMjcwMDg0OEU1MSAvKiBSVENE
YXRhQ2hhbm5lbC5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07
IH07CiAJCTA3OEUwOTFGMTdEMTREMUMwMDQyMEFBMSAvKiBSVENEYXRhQ2hhbm5lbEV2ZW50Lmgg
aW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAwNzIyMUI2NzE3
Q0VDMzI3MDA4NDhFNTEgLyogUlRDRGF0YUNoYW5uZWxFdmVudC5oICovOyBzZXR0aW5ncyA9IHtB
VFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CiAJCTA3OEUwOTIwMTdEMTREMUMwMDQyMEFB
MSAvKiBSVENEVE1GU2VuZGVyLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7
IGZpbGVSZWYgPSAwNzIyMUI2QTE3Q0VDMzI3MDA4NDhFNTEgLyogUlRDRFRNRlNlbmRlci5oICov
OyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CkBAIC03MzA0LDEw
ICs3Mjk3LDYgQEAKIAkJMDcyMjFCNUMxN0NFQzMyNzAwODQ4RTUxIC8qIE5hdmlnYXRvclVzZXJN
ZWRpYS5pZGwgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsg
bGFzdEtub3duRmlsZVR5cGUgPSB0ZXh0OyBwYXRoID0gTmF2aWdhdG9yVXNlck1lZGlhLmlkbDsg
c291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJMDcyMjFCNUQxN0NFQzMyNzAwODQ4RTUxIC8q
IE5hdmlnYXRvclVzZXJNZWRpYUVycm9yLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsg
ZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0
aCA9IE5hdmlnYXRvclVzZXJNZWRpYUVycm9yLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07
CiAJCTA3MjIxQjVFMTdDRUMzMjcwMDg0OEU1MSAvKiBOYXZpZ2F0b3JVc2VyTWVkaWFFcnJvci5p
ZGwgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtu
b3duRmlsZVR5cGUgPSB0ZXh0OyBwYXRoID0gTmF2aWdhdG9yVXNlck1lZGlhRXJyb3IuaWRsOyBz
b3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwotCQkwNzIyMUI1RjE3Q0VDMzI3MDA4NDhFNTEgLyog
TmF2aWdhdG9yVXNlck1lZGlhRXJyb3JDYWxsYmFjay5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZl
cmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5j
Lmg7IHBhdGggPSBOYXZpZ2F0b3JVc2VyTWVkaWFFcnJvckNhbGxiYWNrLmg7IHNvdXJjZVRyZWUg
PSAiPGdyb3VwPiI7IH07Ci0JCTA3MjIxQjYwMTdDRUMzMjcwMDg0OEU1MSAvKiBOYXZpZ2F0b3JV
c2VyTWVkaWFFcnJvckNhbGxiYWNrLmlkbCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBm
aWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHRleHQ7IHBhdGggPSBOYXZpZ2F0
b3JVc2VyTWVkaWFFcnJvckNhbGxiYWNrLmlkbDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsK
LQkJMDcyMjFCNjExN0NFQzMyNzAwODQ4RTUxIC8qIE5hdmlnYXRvclVzZXJNZWRpYVN1Y2Nlc3ND
YWxsYmFjay5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7
IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBOYXZpZ2F0b3JVc2Vy
TWVkaWFTdWNjZXNzQ2FsbGJhY2suaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKLQkJMDcy
MjFCNjIxN0NFQzMyNzAwODQ4RTUxIC8qIE5hdmlnYXRvclVzZXJNZWRpYVN1Y2Nlc3NDYWxsYmFj
ay5pZGwgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFz
dEtub3duRmlsZVR5cGUgPSB0ZXh0OyBwYXRoID0gTmF2aWdhdG9yVXNlck1lZGlhU3VjY2Vzc0Nh
bGxiYWNrLmlkbDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJMDcyMjFCNjMxN0NFQzMy
NzAwODQ4RTUxIC8qIFJUQ0RhdGFDaGFubmVsLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJl
bmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3Bw
LmNwcDsgcGF0aCA9IFJUQ0RhdGFDaGFubmVsLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+Ijsg
fTsKIAkJMDcyMjFCNjQxN0NFQzMyNzAwODQ4RTUxIC8qIFJUQ0RhdGFDaGFubmVsLmggKi8gPSB7
aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5
cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFJUQ0RhdGFDaGFubmVsLmg7IHNvdXJjZVRyZWUg
PSAiPGdyb3VwPiI7IH07CiAJCTA3MjIxQjY1MTdDRUMzMjcwMDg0OEU1MSAvKiBSVENEYXRhQ2hh
bm5lbC5pZGwgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsg
bGFzdEtub3duRmlsZVR5cGUgPSB0ZXh0OyBwYXRoID0gUlRDRGF0YUNoYW5uZWwuaWRsOyBzb3Vy
Y2VUcmVlID0gIjxncm91cD4iOyB9OwpAQCAtNzM5Nyw3ICs3Mzg2LDYgQEAKIAkJMDczNzk0RTAx
OUVFMkQxQjAwRTVBMDQ1IC8qIE1lZGlhQ29uc3RyYWludHNNb2NrLmggKi8gPSB7aXNhID0gUEJY
RmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3Vy
Y2Vjb2RlLmMuaDsgcGF0aCA9IE1lZGlhQ29uc3RyYWludHNNb2NrLmg7IHNvdXJjZVRyZWUgPSAi
PGdyb3VwPiI7IH07CiAJCTA3Mzc5NEUzMTlFRTJGRjIwMEU1QTA0NSAvKiBKU1JUQ0NvbmZpZ3Vy
YXRpb24uY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7
IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gSlNSVENDb25m
aWd1cmF0aW9uLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJMDczNzk0RTQxOUVF
MkZGMjAwRTVBMDQ1IC8qIEpTUlRDQ29uZmlndXJhdGlvbi5oICovID0ge2lzYSA9IFBCWEZpbGVS
ZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29k
ZS5jLmg7IHBhdGggPSBKU1JUQ0NvbmZpZ3VyYXRpb24uaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+
IjsgfTsKLQkJMDczNzk0RTcxOUVFMzM1QzAwRTVBMDQ1IC8qIEpTTmF2aWdhdG9yQ3VzdG9tLmNw
cCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25v
d25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEpTTmF2aWdhdG9yQ3VzdG9t
LmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJMDczNzk0RTkxOUVFMzQxRTAwRTVB
MDQ1IC8qIEpTUlRDSWNlU2VydmVyLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBm
aWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsg
cGF0aCA9IEpTUlRDSWNlU2VydmVyLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJ
MDczNzk0RUExOUVFMzQxRTAwRTVBMDQ1IC8qIEpTUlRDSWNlU2VydmVyLmggKi8gPSB7aXNhID0g
UEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBz
b3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEpTUlRDSWNlU2VydmVyLmg7IHNvdXJjZVRyZWUgPSAiPGdy
b3VwPiI7IH07CiAJCTA3Mzc5NEVEMTlFRTM2NDIwMEU1QTA0NSAvKiBET01VUkxNZWRpYVN0cmVh
bS5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFz
dEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBET01VUkxNZWRpYVN0
cmVhbS5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CkBAIC03NDE5LDEwICs3NDA3LDYg
QEAKIAkJMDczQkUzM0YxN0QxN0UwMTAwMkJENDMxIC8qIEpTTmF2aWdhdG9yVXNlck1lZGlhLmgg
Ki8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3du
RmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEpTTmF2aWdhdG9yVXNlck1lZGlhLmg7
IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTA3M0JFMzQyMTdEMTdFN0EwMDJCRDQzMSAv
KiBKU05hdmlnYXRvclVzZXJNZWRpYUVycm9yLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJl
bmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3Bw
LmNwcDsgcGF0aCA9IEpTTmF2aWdhdG9yVXNlck1lZGlhRXJyb3IuY3BwOyBzb3VyY2VUcmVlID0g
Ijxncm91cD4iOyB9OwogCQkwNzNCRTM0MzE3RDE3RTdBMDAyQkQ0MzEgLyogSlNOYXZpZ2F0b3JV
c2VyTWVkaWFFcnJvci5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGlu
ZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBKU05hdmln
YXRvclVzZXJNZWRpYUVycm9yLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07Ci0JCTA3M0JF
MzQ0MTdEMTdFN0EwMDJCRDQzMSAvKiBKU05hdmlnYXRvclVzZXJNZWRpYUVycm9yQ2FsbGJhY2su
Y3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RL
bm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gSlNOYXZpZ2F0b3JVc2Vy
TWVkaWFFcnJvckNhbGxiYWNrLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKLQkJMDcz
QkUzNDUxN0QxN0U3QTAwMkJENDMxIC8qIEpTTmF2aWdhdG9yVXNlck1lZGlhRXJyb3JDYWxsYmFj
ay5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RL
bm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBKU05hdmlnYXRvclVzZXJNZWRp
YUVycm9yQ2FsbGJhY2suaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKLQkJMDczQkUzNDYx
N0QxN0U3QTAwMkJENDMxIC8qIEpTTmF2aWdhdG9yVXNlck1lZGlhU3VjY2Vzc0NhbGxiYWNrLmNw
cCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25v
d25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEpTTmF2aWdhdG9yVXNlck1l
ZGlhU3VjY2Vzc0NhbGxiYWNrLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKLQkJMDcz
QkUzNDcxN0QxN0U3QTAwMkJENDMxIC8qIEpTTmF2aWdhdG9yVXNlck1lZGlhU3VjY2Vzc0NhbGxi
YWNrLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFz
dEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEpTTmF2aWdhdG9yVXNlck1l
ZGlhU3VjY2Vzc0NhbGxiYWNrLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTA3NEU4
MkI4MThBNjlGMEUwMDdFRjU0QyAvKiBQbGF0Zm9ybVRpbWVSYW5nZXMuY3BwICovID0ge2lzYSA9
IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0g
c291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gUGxhdGZvcm1UaW1lUmFuZ2VzLmNwcDsgc291cmNl
VHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJMDc0RTgyQjkxOEE2OUYwRTAwN0VGNTRDIC8qIFBsYXRm
b3JtVGltZVJhbmdlcy5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGlu
ZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBQbGF0Zm9y
bVRpbWVSYW5nZXMuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJMDc1Mzg2MDAxNDQ4
OUU5ODAwQjc4NDUyIC8qIENhY2hlZFRleHRUcmFjay5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJl
ZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2Rl
LmNwcC5jcHA7IHBhdGggPSBDYWNoZWRUZXh0VHJhY2suY3BwOyBzb3VyY2VUcmVlID0gIjxncm91
cD4iOyB9OwpAQCAtODgwNiw2ICs4NzkwLDcgQEAKIAkJNDE5QkU3NTMxQkM3RjNEQjAwRTFDODVC
IC8qIFdlYkNvcmVKU0J1aWx0aW5JbnRlcm5hbHMuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJl
bmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5o
OyBwYXRoID0gV2ViQ29yZUpTQnVpbHRpbkludGVybmFscy5oOyBzb3VyY2VUcmVlID0gIjxncm91
cD4iOyB9OwogCQk0MTlCRTc1NDFCQzdGM0RCMDBFMUM4NUIgLyogV2ViQ29yZUpTQnVpbHRpbnMu
Y3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RL
bm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gV2ViQ29yZUpTQnVpbHRp
bnMuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQk0MTlCRTc1NTFCQzdGM0RCMDBF
MUM4NUIgLyogV2ViQ29yZUpTQnVpbHRpbnMuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNl
OyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBw
YXRoID0gV2ViQ29yZUpTQnVpbHRpbnMuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJ
NDE5QkU3NUExQkNCRDNFRDAwRTFDODVCIC8qIE5hdmlnYXRvclVzZXJNZWRpYS5qcyAqLyA9IHtp
c2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlw
ZSA9IHNvdXJjZWNvZGUuamF2YXNjcmlwdDsgcGF0aCA9IE5hdmlnYXRvclVzZXJNZWRpYS5qczsg
c291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJNDE5RkFGQUQxQUJBQkNENTAwNUI4MjhCIC8q
IFJlYWRhYmxlU3RyZWFtUmVhZGVyLmlkbCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBm
aWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHRleHQ7IHBhdGggPSBSZWFkYWJs
ZVN0cmVhbVJlYWRlci5pZGw7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTQxQTAyM0VE
MUEzOURCNzkwMEY3MjJDRiAvKiBSZWFkYWJsZVN0cmVhbS5pZGwgKi8gPSB7aXNhID0gUEJYRmls
ZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSB0ZXh0OyBw
YXRoID0gUmVhZGFibGVTdHJlYW0uaWRsOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQk0
MUEzRDU4QzEwMUMxNTJEMDAzMTZEMDcgLyogRGVkaWNhdGVkV29ya2VyVGhyZWFkLmNwcCAqLyA9
IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxl
VHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IERlZGljYXRlZFdvcmtlclRocmVhZC5j
cHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CkBAIC0xNDk3NiwxMyArMTQ5NjEsMTAgQEAK
IAkJCQk1RUE3MjVDQjFBQ0FCQ0I1MDBFQUQxN0IgLyogTmF2aWdhdG9yTWVkaWFEZXZpY2VzLmgg
Ki8sCiAJCQkJNUVBNzI1Q0MxQUNBQkNCNTAwRUFEMTdCIC8qIE5hdmlnYXRvck1lZGlhRGV2aWNl
cy5pZGwgKi8sCiAJCQkJMDcyMjFCNUMxN0NFQzMyNzAwODQ4RTUxIC8qIE5hdmlnYXRvclVzZXJN
ZWRpYS5pZGwgKi8sCisJCQkJNDE5QkU3NUExQkNCRDNFRDAwRTFDODVCIC8qIE5hdmlnYXRvclVz
ZXJNZWRpYS5qcyAqLywKIAkJCQkwNzAzMjdGNzE3RUE0QUFGMDBDRTEzMTggLyogTmF2aWdhdG9y
VXNlck1lZGlhRXJyb3IuY3BwICovLAogCQkJCTA3MjIxQjVEMTdDRUMzMjcwMDg0OEU1MSAvKiBO
YXZpZ2F0b3JVc2VyTWVkaWFFcnJvci5oICovLAogCQkJCTA3MjIxQjVFMTdDRUMzMjcwMDg0OEU1
MSAvKiBOYXZpZ2F0b3JVc2VyTWVkaWFFcnJvci5pZGwgKi8sCi0JCQkJMDcyMjFCNUYxN0NFQzMy
NzAwODQ4RTUxIC8qIE5hdmlnYXRvclVzZXJNZWRpYUVycm9yQ2FsbGJhY2suaCAqLywKLQkJCQkw
NzIyMUI2MDE3Q0VDMzI3MDA4NDhFNTEgLyogTmF2aWdhdG9yVXNlck1lZGlhRXJyb3JDYWxsYmFj
ay5pZGwgKi8sCi0JCQkJMDcyMjFCNjExN0NFQzMyNzAwODQ4RTUxIC8qIE5hdmlnYXRvclVzZXJN
ZWRpYVN1Y2Nlc3NDYWxsYmFjay5oICovLAotCQkJCTA3MjIxQjYyMTdDRUMzMjcwMDg0OEU1MSAv
KiBOYXZpZ2F0b3JVc2VyTWVkaWFTdWNjZXNzQ2FsbGJhY2suaWRsICovLAogCQkJCTA3QUI5OTY1
MThEQTNDMDEwMDE4NzcxRSAvKiBSVENDb25maWd1cmF0aW9uLmggKi8sCiAJCQkJMDdBQjk5NjYx
OERBM0MwMTAwMTg3NzFFIC8qIFJUQ0NvbmZpZ3VyYXRpb24uaWRsICovLAogCQkJCTA3MjIxQjYz
MTdDRUMzMjcwMDg0OEU1MSAvKiBSVENEYXRhQ2hhbm5lbC5jcHAgKi8sCkBAIC0xNTE4MCwxMCAr
MTUxNjIsNiBAQAogCQkJCTA3M0JFMzNGMTdEMTdFMDEwMDJCRDQzMSAvKiBKU05hdmlnYXRvclVz
ZXJNZWRpYS5oICovLAogCQkJCTA3M0JFMzQyMTdEMTdFN0EwMDJCRDQzMSAvKiBKU05hdmlnYXRv
clVzZXJNZWRpYUVycm9yLmNwcCAqLywKIAkJCQkwNzNCRTM0MzE3RDE3RTdBMDAyQkQ0MzEgLyog
SlNOYXZpZ2F0b3JVc2VyTWVkaWFFcnJvci5oICovLAotCQkJCTA3M0JFMzQ0MTdEMTdFN0EwMDJC
RDQzMSAvKiBKU05hdmlnYXRvclVzZXJNZWRpYUVycm9yQ2FsbGJhY2suY3BwICovLAotCQkJCTA3
M0JFMzQ1MTdEMTdFN0EwMDJCRDQzMSAvKiBKU05hdmlnYXRvclVzZXJNZWRpYUVycm9yQ2FsbGJh
Y2suaCAqLywKLQkJCQkwNzNCRTM0NjE3RDE3RTdBMDAyQkQ0MzEgLyogSlNOYXZpZ2F0b3JVc2Vy
TWVkaWFTdWNjZXNzQ2FsbGJhY2suY3BwICovLAotCQkJCTA3M0JFMzQ3MTdEMTdFN0EwMDJCRDQz
MSAvKiBKU05hdmlnYXRvclVzZXJNZWRpYVN1Y2Nlc3NDYWxsYmFjay5oICovLAogCQkJCTA3Mzc5
NEUzMTlFRTJGRjIwMEU1QTA0NSAvKiBKU1JUQ0NvbmZpZ3VyYXRpb24uY3BwICovLAogCQkJCTA3
Mzc5NEU0MTlFRTJGRjIwMEU1QTA0NSAvKiBKU1JUQ0NvbmZpZ3VyYXRpb24uaCAqLywKIAkJCQkw
Nzk2OUQ5MTE3RDE0MTUxMDA3RkY4NDIgLyogSlNSVENEYXRhQ2hhbm5lbC5jcHAgKi8sCkBAIC0y
MTg0Nyw3ICsyMTgyNSw2IEBACiAJCQkJQTFFNUIzMUQxQUFEMURBNDAwNkVCRUZCIC8qIEpTTW9j
a0NvbnRlbnRGaWx0ZXJTZXR0aW5nc0N1c3RvbS5jcHAgKi8sCiAJCQkJQzZGMDkxN0UxNDNBMkJC
OTAwNjg1ODQ5IC8qIEpTTXV0YXRpb25PYnNlcnZlckN1c3RvbS5jcHAgKi8sCiAJCQkJQkNEOUMy
NUYwQzE3QUE2NzAwNUM5MEEyIC8qIEpTTmFtZWROb2RlTWFwQ3VzdG9tLmNwcCAqLywKLQkJCQkw
NzM3OTRFNzE5RUUzMzVDMDBFNUEwNDUgLyogSlNOYXZpZ2F0b3JDdXN0b20uY3BwICovLAogCQkJ
CUJDRDlDMjYwMEMxN0FBNjcwMDVDOTBBMiAvKiBKU05vZGVDdXN0b20uY3BwICovLAogCQkJCUJD
OTQzOUMyMTE2Q0Y0OTQwMDQ4Qzc1MCAvKiBKU05vZGVDdXN0b20uaCAqLywKIAkJCQkxQTc1MERE
MzBBOTBFNzI5MDAwRkYyMTUgLyogSlNOb2RlSXRlcmF0b3JDdXN0b20uY3BwICovLApAQCAtMjU5
MjUsOCArMjU5MDIsNiBAQAogCQkJCUE5RDI0N0Y4MEQ3NTdFMzQwMEZERjk1OSAvKiBKU05hdmln
YXRvci5oIGluIEhlYWRlcnMgKi8sCiAJCQkJMDczQkUzNDExN0QxN0UwMTAwMkJENDMxIC8qIEpT
TmF2aWdhdG9yVXNlck1lZGlhLmggaW4gSGVhZGVycyAqLywKIAkJCQkwNzNCRTM0OTE3RDE3RTdB
MDAyQkQ0MzEgLyogSlNOYXZpZ2F0b3JVc2VyTWVkaWFFcnJvci5oIGluIEhlYWRlcnMgKi8sCi0J
CQkJMDczQkUzNEIxN0QxN0U3QTAwMkJENDMxIC8qIEpTTmF2aWdhdG9yVXNlck1lZGlhRXJyb3JD
YWxsYmFjay5oIGluIEhlYWRlcnMgKi8sCi0JCQkJMDczQkUzNEQxN0QxN0U3QTAwMkJENDMxIC8q
IEpTTmF2aWdhdG9yVXNlck1lZGlhU3VjY2Vzc0NhbGxiYWNrLmggaW4gSGVhZGVycyAqLywKIAkJ
CQlCQzk0MzlDMzExNkNGNDk0MDA0OEM3NTAgLyogSlNOb2RlQ3VzdG9tLmggaW4gSGVhZGVycyAq
LywKIAkJCQkxNDExNUI3MzA5Rjg0Q0Q2MDBDQTRGQzEgLyogSlNOb2RlRmlsdGVyLmggaW4gSGVh
ZGVycyAqLywKIAkJCQkxQTc1MEQ4RTBBOTBFNTIxMDAwRkYyMTUgLyogSlNOb2RlSXRlcmF0b3Iu
aCBpbiBIZWFkZXJzICovLApAQCAtMjY0NzQsOCArMjY0NDksNiBAQAogCQkJCTk3MTE0NjA0MTRF
RjAwOUEwMDY3NEZEOSAvKiBOYXZpZ2F0b3JHZW9sb2NhdGlvbi5oIGluIEhlYWRlcnMgKi8sCiAJ
CQkJNUVBNzI1RDYxQUNBQkQ1NzAwRUFEMTdCIC8qIE5hdmlnYXRvck1lZGlhRGV2aWNlcy5oIGlu
IEhlYWRlcnMgKi8sCiAJCQkJMDc4RTA5MUIxN0QxNEQxQzAwNDIwQUExIC8qIE5hdmlnYXRvclVz
ZXJNZWRpYUVycm9yLmggaW4gSGVhZGVycyAqLywKLQkJCQkwNzhFMDkxQzE3RDE0RDFDMDA0MjBB
QTEgLyogTmF2aWdhdG9yVXNlck1lZGlhRXJyb3JDYWxsYmFjay5oIGluIEhlYWRlcnMgKi8sCi0J
CQkJMDc4RTA5MUQxN0QxNEQxQzAwNDIwQUExIC8qIE5hdmlnYXRvclVzZXJNZWRpYVN1Y2Nlc3ND
YWxsYmFjay5oIGluIEhlYWRlcnMgKi8sCiAJCQkJQTE5RDkzNDYxQTlGRUM3MjAwQjQ2QzI0IC8q
IE5FRmlsdGVyU291cmNlU1BJLmggaW4gSGVhZGVycyAqLywKIAkJCQk4QTMwOUM5RjEyMzk1MEJF
MDBDQjkyMDQgLyogTmVzdGluZ0xldmVsSW5jcmVtZW50ZXIuaCBpbiBIZWFkZXJzICovLAogCQkJ
CTY1NkQzNzQzMEFEQkE1REUwMEE0NTU0RCAvKiBOZXRzY2FwZVBsdWdJblN0cmVhbUxvYWRlci5o
IGluIEhlYWRlcnMgKi8sCkBAIC0yOTU2NCwxMSArMjk1MzcsOCBAQAogCQkJCUJDRDlDMkMwMEMx
N0I2OUUwMDVDOTBBMiAvKiBKU05hbWVkTm9kZU1hcC5jcHAgaW4gU291cmNlcyAqLywKIAkJCQlC
Q0Q5QzI2MzBDMTdBQTY3MDA1QzkwQTIgLyogSlNOYW1lZE5vZGVNYXBDdXN0b20uY3BwIGluIFNv
dXJjZXMgKi8sCiAJCQkJQTlEMjQ3RjcwRDc1N0UzNDAwRkRGOTU5IC8qIEpTTmF2aWdhdG9yLmNw
cCBpbiBTb3VyY2VzICovLAotCQkJCTA3Mzc5NEU4MTlFRTMzNUMwMEU1QTA0NSAvKiBKU05hdmln
YXRvckN1c3RvbS5jcHAgaW4gU291cmNlcyAqLywKIAkJCQkwNzNCRTM0MDE3RDE3RTAxMDAyQkQ0
MzEgLyogSlNOYXZpZ2F0b3JVc2VyTWVkaWEuY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJMDczQkUz
NDgxN0QxN0U3QTAwMkJENDMxIC8qIEpTTmF2aWdhdG9yVXNlck1lZGlhRXJyb3IuY3BwIGluIFNv
dXJjZXMgKi8sCi0JCQkJMDczQkUzNEExN0QxN0U3QTAwMkJENDMxIC8qIEpTTmF2aWdhdG9yVXNl
ck1lZGlhRXJyb3JDYWxsYmFjay5jcHAgaW4gU291cmNlcyAqLywKLQkJCQkwNzNCRTM0QzE3RDE3
RTdBMDAyQkQ0MzEgLyogSlNOYXZpZ2F0b3JVc2VyTWVkaWFTdWNjZXNzQ2FsbGJhY2suY3BwIGlu
IFNvdXJjZXMgKi8sCiAJCQkJMTREQzBEMzcwOUZFRDA3MzAwN0IwMjM1IC8qIEpTTm9kZS5jcHAg
aW4gU291cmNlcyAqLywKIAkJCQlCQ0Q5QzI2NDBDMTdBQTY3MDA1QzkwQTIgLyogSlNOb2RlQ3Vz
dG9tLmNwcCBpbiBTb3VyY2VzICovLAogCQkJCTE0MTE1QjcyMDlGODRDRDYwMENBNEZDMSAvKiBK
U05vZGVGaWx0ZXIuY3BwIGluIFNvdXJjZXMgKi8sCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29y
ZS9iaW5kaW5ncy9qcy9KU0RPTVdpbmRvd0Jhc2UuY3BwIGIvU291cmNlL1dlYkNvcmUvYmluZGlu
Z3MvanMvSlNET01XaW5kb3dCYXNlLmNwcAppbmRleCAyYWY5Nzk5ZWQxZWJlZDRmYjljYjhkOTRm
Njc2OGFjOTU2MmNmYzAyLi5jNmQzZDEyZDMwZTQ3NDJkMjIzOWFjYmY4NmFiMGE4YmJkMzQ2ZDhm
IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9KU0RPTVdpbmRvd0Jhc2Uu
Y3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0pTRE9NV2luZG93QmFzZS5jcHAK
QEAgLTMsNiArMyw3IEBACiAgKiAgQ29weXJpZ2h0IChDKSAyMDA2IEpvbiBTaGllciAoanNoaWVy
QGlhc3RhdGUuZWR1KQogICogIENvcHlyaWdodCAoQykgMjAwMy0yMDA5LCAyMDE0IEFwcGxlIElu
Yy4gQWxsIHJpZ2h0cyByZXNldmVkLgogICogIENvcHlyaWdodCAoQykgMjAwNiBBbGV4ZXkgUHJv
c2t1cnlha292IChhcEB3ZWJraXQub3JnKQorICogIENvcHlyaWdodCAoYykgMjAxNSBDYW5vbiBJ
bmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCiAgKgogICogIFRoaXMgbGlicmFyeSBpcyBmcmVlIHNv
ZnR3YXJlOyB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IKICAqICBtb2RpZnkgaXQgdW5k
ZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUgTGVzc2VyIEdlbmVyYWwgUHVibGljCkBAIC01Miw2ICs1
MywxMiBAQAogI2luY2x1ZGUgIlJlYWRhYmxlU3RyZWFtSW50ZXJuYWxzQnVpbHRpbnMuaCIKICNl
bmRpZgogCisjaW5jbHVkZSAiSlNYTUxIdHRwUmVxdWVzdC5oIgorCisjaWYgRU5BQkxFKE1FRElB
X1NUUkVBTSkKKyNpbmNsdWRlICJKU01lZGlhRGV2aWNlcy5oIgorI2VuZGlmCisKIHVzaW5nIG5h
bWVzcGFjZSBKU0M7CiAKIG5hbWVzcGFjZSBXZWJDb3JlIHsKQEAgLTgxLDE5ICs4OCwyOSBAQCB2
b2lkIEpTRE9NV2luZG93QmFzZTo6ZmluaXNoQ3JlYXRpb24oVk0mIHZtLCBKU0RPTVdpbmRvd1No
ZWxsKiBzaGVsbCkKIAogICAgIG1fcHJpdmF0ZUZ1bmN0aW9ucy5pbml0KCp0aGlzKTsKIAorI2lm
IEVOQUJMRShNRURJQV9TVFJFQU0pIHx8IEVOQUJMRShTVFJFQU1TX0FQSSkKKyAgICBKU1ZNQ2xp
ZW50RGF0YSYgY2xpZW50RGF0YSA9ICpzdGF0aWNfY2FzdDxKU1ZNQ2xpZW50RGF0YSo+KHZtLmNs
aWVudERhdGEpOworI2VuZGlmCisjaWYgRU5BQkxFKE1FRElBX1NUUkVBTSkKKyAgICBKU1ZhbHVl
IGdldFVzZXJNZWRpYUZ1bmN0aW9uID0gZ2V0RE9NUHJvdG90eXBlPEpTTWVkaWFEZXZpY2VzPih2
bSwgdGhpcyktPmdldChnbG9iYWxFeGVjKCksIGNsaWVudERhdGEuYnVpbHRpbk5hbWVzKCkuZ2V0
VXNlck1lZGlhUHVibGljTmFtZSgpKTsKKyAgICBBU1NFUlQoISFnZXRVc2VyTWVkaWFGdW5jdGlv
bik7CisjZW5kaWYKKwogICAgIEdsb2JhbFByb3BlcnR5SW5mbyBzdGF0aWNHbG9iYWxzW10gPSB7
CiAgICAgICAgIEdsb2JhbFByb3BlcnR5SW5mbyh2bS5wcm9wZXJ0eU5hbWVzLT5kb2N1bWVudCwg
anNOdWxsKCksIERvbnREZWxldGUgfCBSZWFkT25seSksCiAgICAgICAgIEdsb2JhbFByb3BlcnR5
SW5mbyh2bS5wcm9wZXJ0eU5hbWVzLT53aW5kb3csIG1fc2hlbGwsIERvbnREZWxldGUgfCBSZWFk
T25seSksCisgICAgICAgIEdsb2JhbFByb3BlcnR5SW5mbyhjbGllbnREYXRhLmJ1aWx0aW5OYW1l
cygpLnJlYWRhYmxlU3RyZWFtQ2xvc2VkUHJpdmF0ZU5hbWUoKSwganNOdW1iZXIoMSksIERvbnRE
ZWxldGUgfCBSZWFkT25seSksCisjaWYgRU5BQkxFKE1FRElBX1NUUkVBTSkKKyAgICAgICAgR2xv
YmFsUHJvcGVydHlJbmZvKGNsaWVudERhdGEuYnVpbHRpbk5hbWVzKCkuZ2V0VXNlck1lZGlhUHJp
dmF0ZU5hbWUoKSwgZ2V0VXNlck1lZGlhRnVuY3Rpb24sIERvbnREZWxldGUgfCBSZWFkT25seSks
CisjZW5kaWYKICNpZiBFTkFCTEUoU1RSRUFNU19BUEkpCi0gICAgICAgIEdsb2JhbFByb3BlcnR5
SW5mbyhzdGF0aWNfY2FzdDxKU1ZNQ2xpZW50RGF0YSo+KHZtLmNsaWVudERhdGEpLT5idWlsdGlu
TmFtZXMoKS5yZWFkYWJsZVN0cmVhbUNsb3NlZFByaXZhdGVOYW1lKCksIGpzTnVtYmVyKDEpLCBE
b250RGVsZXRlIHwgUmVhZE9ubHkpLAotICAgICAgICBHbG9iYWxQcm9wZXJ0eUluZm8oc3RhdGlj
X2Nhc3Q8SlNWTUNsaWVudERhdGEqPih2bS5jbGllbnREYXRhKS0+YnVpbHRpbk5hbWVzKCkucmVh
ZGFibGVTdHJlYW1FcnJvcmVkUHJpdmF0ZU5hbWUoKSwganNOdW1iZXIoMiksIERvbnREZWxldGUg
fCBSZWFkT25seSksCi0gICAgICAgIEdsb2JhbFByb3BlcnR5SW5mbyhzdGF0aWNfY2FzdDxKU1ZN
Q2xpZW50RGF0YSo+KHZtLmNsaWVudERhdGEpLT5idWlsdGluTmFtZXMoKS5yZWFkYWJsZVN0cmVh
bVJlYWRhYmxlUHJpdmF0ZU5hbWUoKSwganNOdW1iZXIoMyksIERvbnREZWxldGUgfCBSZWFkT25s
eSksCi0gICAgICAgIEdsb2JhbFByb3BlcnR5SW5mbyhzdGF0aWNfY2FzdDxKU1ZNQ2xpZW50RGF0
YSo+KHZtLmNsaWVudERhdGEpLT5idWlsdGluTmFtZXMoKS5SZWFkYWJsZVN0cmVhbUNvbnRyb2xs
ZXJQcml2YXRlTmFtZSgpLCBjcmVhdGVSZWFkYWJsZVN0cmVhbUNvbnRyb2xsZXJQcml2YXRlQ29u
c3RydWN0b3Iodm0sICp0aGlzKSwgRG9udERlbGV0ZSB8IFJlYWRPbmx5KSwKLSAgICAgICAgR2xv
YmFsUHJvcGVydHlJbmZvKHN0YXRpY19jYXN0PEpTVk1DbGllbnREYXRhKj4odm0uY2xpZW50RGF0
YSktPmJ1aWx0aW5OYW1lcygpLlJlYWRhYmxlU3RyZWFtUmVhZGVyUHJpdmF0ZU5hbWUoKSwgY3Jl
YXRlUmVhZGFibGVTdHJlYW1SZWFkZXJQcml2YXRlQ29uc3RydWN0b3Iodm0sICp0aGlzKSwgRG9u
dERlbGV0ZSB8IFJlYWRPbmx5KSwKKyAgICAgICAgR2xvYmFsUHJvcGVydHlJbmZvKGNsaWVudERh
dGEuYnVpbHRpbk5hbWVzKCkucmVhZGFibGVTdHJlYW1FcnJvcmVkUHJpdmF0ZU5hbWUoKSwganNO
dW1iZXIoMiksIERvbnREZWxldGUgfCBSZWFkT25seSksCisgICAgICAgIEdsb2JhbFByb3BlcnR5
SW5mbyhjbGllbnREYXRhLmJ1aWx0aW5OYW1lcygpLnJlYWRhYmxlU3RyZWFtUmVhZGFibGVQcml2
YXRlTmFtZSgpLCBqc051bWJlcigzKSwgRG9udERlbGV0ZSB8IFJlYWRPbmx5KSwKKyAgICAgICAg
R2xvYmFsUHJvcGVydHlJbmZvKGNsaWVudERhdGEuYnVpbHRpbk5hbWVzKCkuUmVhZGFibGVTdHJl
YW1Db250cm9sbGVyUHJpdmF0ZU5hbWUoKSwgY3JlYXRlUmVhZGFibGVTdHJlYW1Db250cm9sbGVy
UHJpdmF0ZUNvbnN0cnVjdG9yKHZtLCAqdGhpcyksIERvbnREZWxldGUgfCBSZWFkT25seSksCisg
ICAgICAgIEdsb2JhbFByb3BlcnR5SW5mbyhjbGllbnREYXRhLmJ1aWx0aW5OYW1lcygpLlJlYWRh
YmxlU3RyZWFtUmVhZGVyUHJpdmF0ZU5hbWUoKSwgY3JlYXRlUmVhZGFibGVTdHJlYW1SZWFkZXJQ
cml2YXRlQ29uc3RydWN0b3Iodm0sICp0aGlzKSwgRG9udERlbGV0ZSB8IFJlYWRPbmx5KSwKICNk
ZWZpbmUgREVDTEFSRV9HTE9CQUxfU1RBVElDKG5hbWUpXAogICAgICAgICBHbG9iYWxQcm9wZXJ0
eUluZm8oXAotICAgICAgICAgICAgc3RhdGljX2Nhc3Q8SlNWTUNsaWVudERhdGEqPih2bS5jbGll
bnREYXRhKS0+YnVpbHRpbkZ1bmN0aW9ucygpLnJlYWRhYmxlU3RyZWFtSW50ZXJuYWxzQnVpbHRp
bnMoKS5uYW1lIyNQcml2YXRlTmFtZSgpLCBcCi0gICAgICAgICAgICBtX3ByaXZhdGVGdW5jdGlv
bnMucmVhZGFibGVTdHJlYW1JbnRlcm5hbHMoKS5tXyMjbmFtZSMjRnVuY3Rpb24uZ2V0KCkgLCBE
b250RGVsZXRlIHwgUmVhZE9ubHkpLAorICAgICAgICAgICAgY2xpZW50RGF0YS5idWlsdGluRnVu
Y3Rpb25zKCkucmVhZGFibGVTdHJlYW1JbnRlcm5hbHNCdWlsdGlucygpLm5hbWUjI1ByaXZhdGVO
YW1lKCksIG1fcHJpdmF0ZUZ1bmN0aW9ucy5yZWFkYWJsZVN0cmVhbUludGVybmFscygpLm1fIyNu
YW1lIyNGdW5jdGlvbi5nZXQoKSAsIERvbnREZWxldGUgfCBSZWFkT25seSksCiAgICAgICAgIFdF
QkNPUkVSRUFEQUJMRVNUUkVBTUlOVEVSTkFMU19GT1JFQUNIX0JVSUxUSU5fRlVOQ1RJT05fTkFN
RShERUNMQVJFX0dMT0JBTF9TVEFUSUMpCiAjdW5kZWYgREVDTEFSRV9HTE9CQUxfU1RBVElDCiAj
ZW5kaWYKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0pTTmF2aWdhdG9y
Q3VzdG9tLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0pTTmF2aWdhdG9yQ3VzdG9t
LmNwcAppbmRleCAzZDVmZTEyNDg2NDg2MzRhNjRhMWQ4OTc1YzRhYzFiYzNkMWJkOWI4Li5lM2Yy
MTQwNWM2YzYzOTIyZmE4Y2E3YTFjZmM1YWQxOTkyNmM5ZjM5IDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V2ViQ29yZS9iaW5kaW5ncy9qcy9KU05hdmlnYXRvckN1c3RvbS5jcHAKKysrIGIvU291cmNlL1dl
YkNvcmUvYmluZGluZ3MvanMvSlNOYXZpZ2F0b3JDdXN0b20uY3BwCkBAIC0yNyw3NyArMjcsNiBA
QAogI2luY2x1ZGUgImNvbmZpZy5oIgogCiAjaWYgRU5BQkxFKE1FRElBX1NUUkVBTSkKLSNpbmNs
dWRlICJKU05hdmlnYXRvci5oIgogCi0jaW5jbHVkZSAiRGljdGlvbmFyeS5oIgotI2luY2x1ZGUg
IkRvY3VtZW50LmgiCi0jaW5jbHVkZSAiRXhjZXB0aW9uQ29kZS5oIgotI2luY2x1ZGUgIkZyYW1l
LmgiCi0jaW5jbHVkZSAiSlNOYXZpZ2F0b3JVc2VyTWVkaWFFcnJvckNhbGxiYWNrLmgiCi0jaW5j
bHVkZSAiSlNOYXZpZ2F0b3JVc2VyTWVkaWFTdWNjZXNzQ2FsbGJhY2suaCIKLSNpbmNsdWRlICJN
ZWRpYVN0cmVhbS5oIgotI2luY2x1ZGUgIlVzZXJNZWRpYVJlcXVlc3QuaCIKLQotdXNpbmcgbmFt
ZXNwYWNlIEpTQzsKLQotbmFtZXNwYWNlIFdlYkNvcmUgewotCi1KU1ZhbHVlIEpTTmF2aWdhdG9y
Ojp3ZWJraXRHZXRVc2VyTWVkaWEoRXhlY1N0YXRlJiBzdGF0ZSkKLXsKLSAgICBpZiAoc3RhdGUu
YXJndW1lbnRDb3VudCgpIDwgMykgewotICAgICAgICB0aHJvd1ZNRXJyb3IoJnN0YXRlLCBjcmVh
dGVOb3RFbm91Z2hBcmd1bWVudHNFcnJvcigmc3RhdGUpKTsKLSAgICAgICAgcmV0dXJuIGpzVW5k
ZWZpbmVkKCk7Ci0gICAgfQotCi0gICAgRGljdGlvbmFyeSBvcHRpb25zKCZzdGF0ZSwgc3RhdGUu
YXJndW1lbnQoMCkpOwotICAgIGlmIChzdGF0ZS5oYWRFeGNlcHRpb24oKSkKLSAgICAgICAgcmV0
dXJuIGpzVW5kZWZpbmVkKCk7Ci0KLSAgICBpZiAoIW9wdGlvbnMuaXNPYmplY3QoKSkgewotICAg
ICAgICB0aHJvd1ZNRXJyb3IoJnN0YXRlLCBjcmVhdGVUeXBlRXJyb3IoJnN0YXRlLCAiRmlyc3Qg
YXJndW1lbnQgb2Ygd2Via2l0R2V0VXNlck1lZGlhIG11c3QgYmUgYSB2YWxpZCBEaWN0aW9uYXJ5
IikpOwotICAgICAgICByZXR1cm4ganNVbmRlZmluZWQoKTsKLSAgICB9Ci0KLSAgICBpZiAoIXN0
YXRlLmFyZ3VtZW50KDEpLmlzRnVuY3Rpb24oKSkgewotICAgICAgICB0aHJvd1ZNVHlwZUVycm9y
KCZzdGF0ZSwgIkFyZ3VtZW50IDIgKCdzdWNjZXNzQ2FsbGJhY2snKSB0byBOYXZpZ2F0b3Iud2Vi
a2l0R2V0VXNlck1lZGlhIG11c3QgYmUgYSBmdW5jdGlvbiIpOwotICAgICAgICByZXR1cm4ganNV
bmRlZmluZWQoKTsKLSAgICB9Ci0KLSAgICBpZiAoIXN0YXRlLmFyZ3VtZW50KDIpLmlzRnVuY3Rp
b24oKSkgewotICAgICAgICB0aHJvd1ZNVHlwZUVycm9yKCZzdGF0ZSwgIkFyZ3VtZW50IDMgKCdl
cnJvckNhbGxiYWNrJykgdG8gTmF2aWdhdG9yLndlYmtpdEdldFVzZXJNZWRpYSBtdXN0IGJlIGEg
ZnVuY3Rpb24iKTsKLSAgICAgICAgcmV0dXJuIGpzVW5kZWZpbmVkKCk7Ci0gICAgfQotCi0gICAg
aWYgKCFpbXBsKCkuZnJhbWUoKSkgewotICAgICAgICBzZXRET01FeGNlcHRpb24oJnN0YXRlLCBO
T1RfU1VQUE9SVEVEX0VSUik7Ci0gICAgICAgIHJldHVybiBqc1VuZGVmaW5lZCgpOwotICAgIH0K
LQotICAgIC8vIFdlIGRvIG5vdCBuZWVkIHRvIHByb3RlY3QgdGhlIGNvbnRleHQgKGkuZS4gZG9j
dW1lbnQpIGhlcmUgYXMgVXNlck1lZGlhUmVxdWVzdCBpcyBvYnNlcnZpbmcgY29udGV4dCBkZXN0
cnVjdGlvbiBhbmQgd2lsbCBjaGVjayB2YWxpZGl0eSBiZWZvcmUgcmVzb2x2aW5nL3JlamVjdGlu
ZyBwcm9taXNlLgotICAgIERvY3VtZW50KiBkb2N1bWVudCA9IGltcGwoKS5mcmFtZSgpLT5kb2N1
bWVudCgpOwotCi0gICAgUmVmUHRyPE5hdmlnYXRvclVzZXJNZWRpYVN1Y2Nlc3NDYWxsYmFjaz4g
c3VjY2Vzc0NhbGxiYWNrID0gSlNOYXZpZ2F0b3JVc2VyTWVkaWFTdWNjZXNzQ2FsbGJhY2s6OmNy
ZWF0ZShhc09iamVjdChzdGF0ZS51bmNoZWNrZWRBcmd1bWVudCgxKSksIGdsb2JhbE9iamVjdCgp
KTsKLSAgICBhdXRvIHJlc29sdmVDYWxsYmFjayA9IFtzdWNjZXNzQ2FsbGJhY2ssIGRvY3VtZW50
XShjb25zdCBSZWZQdHI8TWVkaWFTdHJlYW0+JiBzdHJlYW0pIG11dGFibGUgewotICAgICAgICBS
ZWZQdHI8TWVkaWFTdHJlYW0+IHByb3RlY3RlZFN0cmVhbSA9IHN0cmVhbTsKLSAgICAgICAgZG9j
dW1lbnQtPnBvc3RUYXNrKFtzdWNjZXNzQ2FsbGJhY2ssIHByb3RlY3RlZFN0cmVhbV0oU2NyaXB0
RXhlY3V0aW9uQ29udGV4dCYpIHsKLSAgICAgICAgICAgIHN1Y2Nlc3NDYWxsYmFjay0+aGFuZGxl
RXZlbnQocHJvdGVjdGVkU3RyZWFtLmdldCgpKTsKLSAgICAgICAgfSk7Ci0gICAgfTsKLQotICAg
IFJlZlB0cjxOYXZpZ2F0b3JVc2VyTWVkaWFFcnJvckNhbGxiYWNrPiBlcnJvckNhbGxiYWNrID0g
SlNOYXZpZ2F0b3JVc2VyTWVkaWFFcnJvckNhbGxiYWNrOjpjcmVhdGUoYXNPYmplY3Qoc3RhdGUu
dW5jaGVja2VkQXJndW1lbnQoMikpLCBnbG9iYWxPYmplY3QoKSk7Ci0gICAgYXV0byByZWplY3RD
YWxsYmFjayA9IFtlcnJvckNhbGxiYWNrLCBkb2N1bWVudF0oY29uc3QgUmVmUHRyPE5hdmlnYXRv
clVzZXJNZWRpYUVycm9yPiYgZXJyb3IpIG11dGFibGUgewotICAgICAgICBSZWZQdHI8TmF2aWdh
dG9yVXNlck1lZGlhRXJyb3I+IHByb3RlY3RlZEVycm9yID0gZXJyb3I7Ci0gICAgICAgIGRvY3Vt
ZW50LT5wb3N0VGFzayhbZXJyb3JDYWxsYmFjaywgcHJvdGVjdGVkRXJyb3JdKFNjcmlwdEV4ZWN1
dGlvbkNvbnRleHQmKSB7Ci0gICAgICAgICAgICBlcnJvckNhbGxiYWNrLT5oYW5kbGVFdmVudChw
cm90ZWN0ZWRFcnJvci5nZXQoKSk7Ci0gICAgICAgIH0pOwotICAgIH07Ci0KLSAgICBFeGNlcHRp
b25Db2RlIGVjID0gMDsKLSAgICBVc2VyTWVkaWFSZXF1ZXN0OjpzdGFydChkb2N1bWVudCwgb3B0
aW9ucywgTWVkaWFEZXZpY2VzOjpQcm9taXNlKFdURjo6bW92ZShyZXNvbHZlQ2FsbGJhY2spLCBX
VEY6Om1vdmUocmVqZWN0Q2FsbGJhY2spKSwgZWMpOwotICAgIHNldERPTUV4Y2VwdGlvbigmc3Rh
dGUsIGVjKTsKLSAgICByZXR1cm4ganNVbmRlZmluZWQoKTsKLX0KLQotfSAvLyBuYW1lc3BhY2Ug
V2ViQ29yZQogCiAjZW5kaWYgLy8gRU5BQkxFKE1FRElBX1NUUkVBTSkKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL1dlYkNvcmVCdWlsdGluTmFtZXMuaCBiL1NvdXJjZS9X
ZWJDb3JlL2JpbmRpbmdzL2pzL1dlYkNvcmVCdWlsdGluTmFtZXMuaAppbmRleCBlOTllMDY5ZmVj
Y2M4NTYwYTgwN2EyYzZmYzM0YzNkOWEyNjA5NDkzLi5lZGUwZTQxNzU4NDEwYmMzNjJjOGM0Mzli
YTlmZjIxMmFhZjZiM2JiIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9X
ZWJDb3JlQnVpbHRpbk5hbWVzLmgKKysrIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvV2Vi
Q29yZUJ1aWx0aW5OYW1lcy5oCkBAIC0yNyw2ICsyNyw3IEBACiBuYW1lc3BhY2UgV2ViQ29yZSB7
CiAKICNkZWZpbmUgV0VCQ09SRV9DT01NT05fUFJJVkFURV9JREVOVElGSUVSU19FQUNIX1BST1BF
UlRZX05BTUUobWFjcm8pXAorICAgIG1hY3JvKGdldFVzZXJNZWRpYSkgXAogICAgIG1hY3JvKHN0
YXRlKSBcCiAgICAgbWFjcm8odW5kZXJseWluZ1NvdXJjZSkgXAogICAgIG1hY3JvKHF1ZXVlKSBc
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9XZWJDb3JlSlNCdWlsdGlu
cy5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9XZWJDb3JlSlNCdWlsdGlucy5jcHAK
aW5kZXggMjNkNDIxZGIwOTVjMTg3MjEwODgwNDU1ODAxZjVjMjhiNmQ1NDczMS4uMGJiM2UyY2Ey
YjVlMDQ3NmM5MWEyZDU5NWQ2NTY1ZGFlM2M3ZjRlZiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNv
cmUvYmluZGluZ3MvanMvV2ViQ29yZUpTQnVpbHRpbnMuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3Jl
L2JpbmRpbmdzL2pzL1dlYkNvcmVKU0J1aWx0aW5zLmNwcApAQCAtMjUsMyArMjUsNiBAQAogI2lu
Y2x1ZGUgIlJlYWRhYmxlU3RyZWFtSW50ZXJuYWxzQnVpbHRpbnMuY3BwIgogI2luY2x1ZGUgIlJl
YWRhYmxlU3RyZWFtUmVhZGVyQnVpbHRpbnMuY3BwIgogI2VuZGlmCisjaWYgRU5BQkxFKE1FRElB
X1NUUkVBTSkKKyNpbmNsdWRlICJOYXZpZ2F0b3JVc2VyTWVkaWFCdWlsdGlucy5jcHAiCisjZW5k
aWYKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL1dlYkNvcmVKU0J1aWx0
aW5zLmggYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9XZWJDb3JlSlNCdWlsdGlucy5oCmlu
ZGV4IDdmMmYzZjc5YjdkMDdiODU5NDRhNjQ4YzBhYTQzODBmZDNjZTY5ZWYuLjk4ODM4MjE3NzUx
MTIwYTM5ODFjMmFhMjQ0OGI1ODkzZmM2OTgzMzUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3Jl
L2JpbmRpbmdzL2pzL1dlYkNvcmVKU0J1aWx0aW5zLmgKKysrIGIvU291cmNlL1dlYkNvcmUvYmlu
ZGluZ3MvanMvV2ViQ29yZUpTQnVpbHRpbnMuaApAQCAtMjcsNiArMjcsOSBAQAogI2luY2x1ZGUg
IlJlYWRhYmxlU3RyZWFtUmVhZGVyQnVpbHRpbnNXcmFwcGVyLmgiCiAjZW5kaWYKIAorI2lmIEVO
QUJMRShNRURJQV9TVFJFQU0pCisjaW5jbHVkZSAiTmF2aWdhdG9yVXNlck1lZGlhQnVpbHRpbnNX
cmFwcGVyLmgiCisjZW5kaWYKIAogI2luY2x1ZGUgPHJ1bnRpbWUvVk0uaD4KIApAQCAtNDQsNiAr
NDcsOSBAQCBwdWJsaWM6CiAgICAgICAgICwgbV9yZWFkYWJsZVN0cmVhbUludGVybmFsc0J1aWx0
aW5zKCZ2bSkKICAgICAgICAgLCBtX3JlYWRhYmxlU3RyZWFtUmVhZGVyQnVpbHRpbnMoJnZtKQog
I2VuZGlmCisjaWYgRU5BQkxFKE1FRElBX1NUUkVBTSkKKyAgICAgICAgLCBtX25hdmlnYXRvclVz
ZXJNZWRpYUJ1aWx0aW5zKCZ2bSkKKyNlbmRpZgogICAgIHsKICNpZiBFTkFCTEUoU1RSRUFNU19B
UEkpCiAgICAgICAgIG1fcmVhZGFibGVTdHJlYW1JbnRlcm5hbHNCdWlsdGlucy5leHBvcnROYW1l
cygpOwpAQCAtNTcsNiArNjMsOSBAQCBwdWJsaWM6CiAgICAgUmVhZGFibGVTdHJlYW1JbnRlcm5h
bHNCdWlsdGluc1dyYXBwZXImIHJlYWRhYmxlU3RyZWFtSW50ZXJuYWxzQnVpbHRpbnMoKSB7IHJl
dHVybiBtX3JlYWRhYmxlU3RyZWFtSW50ZXJuYWxzQnVpbHRpbnM7fQogICAgIFJlYWRhYmxlU3Ry
ZWFtUmVhZGVyQnVpbHRpbnNXcmFwcGVyJiByZWFkYWJsZVN0cmVhbVJlYWRlckJ1aWx0aW5zKCkg
eyByZXR1cm4gbV9yZWFkYWJsZVN0cmVhbVJlYWRlckJ1aWx0aW5zO30KICNlbmRpZgorI2lmIEVO
QUJMRShNRURJQV9TVFJFQU0pCisgICAgTmF2aWdhdG9yVXNlck1lZGlhQnVpbHRpbnNXcmFwcGVy
JiBuYXZpZ2F0b3JVc2VyTWVkaWFCdWlsdGlucygpIHsgcmV0dXJuIG1fbmF2aWdhdG9yVXNlck1l
ZGlhQnVpbHRpbnM7fQorI2VuZGlmCiAKIHByaXZhdGU6CiAgICAgSlNDOjpWTSYgdm07CkBAIC02
OCw2ICs3Nyw5IEBAIHByaXZhdGU6CiAgICAgUmVhZGFibGVTdHJlYW1JbnRlcm5hbHNCdWlsdGlu
c1dyYXBwZXIgbV9yZWFkYWJsZVN0cmVhbUludGVybmFsc0J1aWx0aW5zOwogICAgIFJlYWRhYmxl
U3RyZWFtUmVhZGVyQnVpbHRpbnNXcmFwcGVyIG1fcmVhZGFibGVTdHJlYW1SZWFkZXJCdWlsdGlu
czsKICNlbmRpZgorI2lmIEVOQUJMRShNRURJQV9TVFJFQU0pCisgICAgTmF2aWdhdG9yVXNlck1l
ZGlhQnVpbHRpbnNXcmFwcGVyIG1fbmF2aWdhdG9yVXNlck1lZGlhQnVpbHRpbnM7CisjZW5kaWYK
IAogfTsKIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy9Db2Rl
R2VuZXJhdG9ySlMucG0gYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL0NvZGVHZW5l
cmF0b3JKUy5wbQppbmRleCA0ZGQ4N2RjMDQ4ZTFjNmIyYzc4NDk1ZjdlMmMyNDVjYzViOTZiMjFl
Li42YTNiMTBkYTM0MjQ0NDJhYWU0ODVlMmM0NzFkMDkzYjhmOGY3MjU0IDEwMDY0NAotLS0gYS9T
b3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL0NvZGVHZW5lcmF0b3JKUy5wbQorKysgYi9T
b3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL0NvZGVHZW5lcmF0b3JKUy5wbQpAQCAtMTEs
NiArMTEsNyBAQAogIyBDb3B5cmlnaHQgKEMpIDIwMTIgRXJpY3Nzb24gQUIuIEFsbCByaWdodHMg
cmVzZXJ2ZWQuCiAjIENvcHlyaWdodCAoQykgMjAwNywgMjAwOCwgMjAwOSwgMjAxMiBHb29nbGUg
SW5jLgogIyBDb3B5cmlnaHQgKEMpIDIwMTMgU2Ftc3VuZyBFbGVjdHJvbmljcy4gQWxsIHJpZ2h0
cyByZXNlcnZlZC4KKyMgQ29weXJpZ2h0IChDKSAyMDE1IENhbm9uIEluYy4gQWxsIHJpZ2h0cyBy
ZXNlcnZlZC4KICMKICMgVGhpcyBsaWJyYXJ5IGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVk
aXN0cmlidXRlIGl0IGFuZC9vcgogIyBtb2RpZnkgaXQgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBH
TlUgTGlicmFyeSBHZW5lcmFsIFB1YmxpYwpAQCAtNTcxLDcgKzU3Miw3IEBAIHN1YiBHZXRBdHRy
aWJ1dGVHZXR0ZXJOYW1lCiAgICAgICAgIHJldHVybiAkY29kZUdlbmVyYXRvci0+V0tfbGNmaXJz
dCgkY2xhc3NOYW1lKSAuICJDb25zdHJ1Y3RvciIgLiAkY29kZUdlbmVyYXRvci0+V0tfdWNmaXJz
dCgkYXR0cmlidXRlLT5zaWduYXR1cmUtPm5hbWUpOwogICAgIH0KICAgICBpZiAoJGF0dHJpYnV0
ZS0+c2lnbmF0dXJlLT5leHRlbmRlZEF0dHJpYnV0ZXMtPnsiSlNCdWlsdGluIn0pIHsKLSAgICAg
ICAgcmV0dXJuIEdldEpTQnVpbHRpbkZ1bmN0aW9uTmFtZSgkY2xhc3NOYW1lLCAkYXR0cmlidXRl
LT5zaWduYXR1cmUtPm5hbWUpOworICAgICAgICByZXR1cm4gR2V0SlNCdWlsdGluRnVuY3Rpb25O
YW1lKCRjbGFzc05hbWUsICRhdHRyaWJ1dGUpOwogICAgIH0KICAgICByZXR1cm4gImpzIiAuICRp
bnRlcmZhY2VOYW1lIC4gJGNvZGVHZW5lcmF0b3ItPldLX3VjZmlyc3QoJGF0dHJpYnV0ZS0+c2ln
bmF0dXJlLT5uYW1lKSAuICgkYXR0cmlidXRlLT5zaWduYXR1cmUtPnR5cGUgPX4gL0NvbnN0cnVj
dG9yJC8gPyAiQ29uc3RydWN0b3IiIDogIiIpOwogfQpAQCAtNTgzLDI4ICs1ODQsMTcgQEAgc3Vi
IEdldEF0dHJpYnV0ZVNldHRlck5hbWUKICAgICAgICAgcmV0dXJuICJzZXQiIC4gJGNvZGVHZW5l
cmF0b3ItPldLX3VjZmlyc3QoJGNsYXNzTmFtZSkgLiAiQ29uc3RydWN0b3IiIC4gJGNvZGVHZW5l
cmF0b3ItPldLX3VjZmlyc3QoJGF0dHJpYnV0ZS0+c2lnbmF0dXJlLT5uYW1lKTsKICAgICB9CiAg
ICAgaWYgKCRhdHRyaWJ1dGUtPnNpZ25hdHVyZS0+ZXh0ZW5kZWRBdHRyaWJ1dGVzLT57IkpTQnVp
bHRpbiJ9KSB7Ci0gICAgICAgIHJldHVybiAic2V0IiAuICRjb2RlR2VuZXJhdG9yLT5XS191Y2Zp
cnN0KEdldEpTQnVpbHRpbkZ1bmN0aW9uTmFtZSgkY2xhc3NOYW1lLCAkYXR0cmlidXRlLT5zaWdu
YXR1cmUtPm5hbWUpKTsKKyAgICAgICAgcmV0dXJuICJzZXQiIC4gJGNvZGVHZW5lcmF0b3ItPldL
X3VjZmlyc3QoR2V0SlNCdWlsdGluRnVuY3Rpb25OYW1lKCRjbGFzc05hbWUsICRhdHRyaWJ1dGUp
KTsKICAgICB9CiAgICAgcmV0dXJuICJzZXRKUyIgLiAkaW50ZXJmYWNlTmFtZSAuICRjb2RlR2Vu
ZXJhdG9yLT5XS191Y2ZpcnN0KCRhdHRyaWJ1dGUtPnNpZ25hdHVyZS0+bmFtZSkgLiAoJGF0dHJp
YnV0ZS0+c2lnbmF0dXJlLT50eXBlID1+IC9Db25zdHJ1Y3RvciQvID8gIkNvbnN0cnVjdG9yIiA6
ICIiKTsKIH0KIAotc3ViIEdldEpTQnVpbHRpbkZ1bmN0aW9uTmFtZQotewotICAgIG15ICgkY2xh
c3NOYW1lLCAkZnVuY3Rpb25OYW1lKSA9IEBfOwotICAgIHJldHVybiAkY29kZUdlbmVyYXRvci0+
V0tfbGNmaXJzdChzdWJzdHIgJGNsYXNzTmFtZSwgMikgLiAkY29kZUdlbmVyYXRvci0+V0tfdWNm
aXJzdCgkZnVuY3Rpb25OYW1lKSAuICJDb2RlR2VuZXJhdG9yIjsKLX0KLQogc3ViIEdldEZ1bmN0
aW9uTmFtZQogewogICAgIG15ICgkY2xhc3NOYW1lLCAkZnVuY3Rpb24pID0gQF87CiAKLSAgICBt
eSAkc2NvcGVOYW1lID0gJGZ1bmN0aW9uLT5zaWduYXR1cmUtPmV4dGVuZGVkQXR0cmlidXRlcy0+
eyJJbXBsZW1lbnRlZEJ5In07Ci0gICAgaWYgKCEkc2NvcGVOYW1lKSB7Ci0gICAgICAgICRzY29w
ZU5hbWUgPSBzdWJzdHIgJGNsYXNzTmFtZSwgMjsKLSAgICB9Ci0KICAgICBpZiAoJGZ1bmN0aW9u
LT5zaWduYXR1cmUtPmV4dGVuZGVkQXR0cmlidXRlcy0+eyJKU0J1aWx0aW4ifSkgewotICAgICAg
ICByZXR1cm4gR2V0SlNCdWlsdGluRnVuY3Rpb25OYW1lKCRjbGFzc05hbWUsICRmdW5jdGlvbi0+
c2lnbmF0dXJlLT5uYW1lKTsKKyAgICAgICAgcmV0dXJuIEdldEpTQnVpbHRpbkZ1bmN0aW9uTmFt
ZSgkY2xhc3NOYW1lLCAkZnVuY3Rpb24pOwogICAgIH0KIAogICAgIG15ICRraW5kID0gJGZ1bmN0
aW9uLT5pc1N0YXRpYyA/ICJDb25zdHJ1Y3RvciIgOiAiUHJvdG90eXBlIjsKQEAgLTUwMDAsNyAr
NDk5MCw3IEBAIHN1YiBHZW5lcmF0ZUNvbnN0cnVjdG9ySGVscGVyTWV0aG9kcwogICAgIH0KIAog
ICAgIGlmICgkaW50ZXJmYWNlLT5leHRlbmRlZEF0dHJpYnV0ZXMtPnsiSlNCdWlsdGluQ29uc3Ry
dWN0b3IifSkgewotICAgICAgICBteSAkaW5pdGlhbGl6ZUZ1bmN0aW9uTmFtZSA9IEdldEpTQnVp
bHRpbkZ1bmN0aW9uTmFtZSgke2NsYXNzTmFtZX0sICJpbml0aWFsaXplIiAuICR7aW50ZXJmYWNl
TmFtZX0pOworICAgICAgICBteSAkaW5pdGlhbGl6ZUZ1bmN0aW9uTmFtZSA9IEdldEpTQnVpbHRp
bkZ1bmN0aW9uTmFtZUZyb21TdHJpbmcoJHtpbnRlcmZhY2VOYW1lfSwgImluaXRpYWxpemUiIC4g
JHtpbnRlcmZhY2VOYW1lfSk7CiAgICAgICAgIHB1c2goQCRvdXRwdXRBcnJheSwgIiAgICBzZXRJ
bml0aWFsaXplRnVuY3Rpb24odm0sICpKU0M6OkpTRnVuY3Rpb246OmNyZWF0ZUJ1aWx0aW5GdW5j
dGlvbih2bSwgJHtpbml0aWFsaXplRnVuY3Rpb25OYW1lfSh2bSksICZnbG9iYWxPYmplY3QpKTtc
biIpOwogICAgIH0KIApAQCAtNTEwMSwyNSArNTA5MSw0NSBAQCBzdWIgQ29tcHV0ZUZ1bmN0aW9u
U3BlY2lhbAogICAgIHJldHVybiAoQHNwZWNpYWxzID4gMCkgPyBqb2luKCIgfCAiLCBAc3BlY2lh
bHMpIDogIjAiOwogfQogCi1zdWIgQWRkSlNCdWlsdGluSW5jbHVkZXNJZk5lZWRlZCgpCitzdWIg
R2V0SlNCdWlsdGluRnVuY3Rpb25OYW1lCit7CisgICAgbXkgKCRjbGFzc05hbWUsICRmdW5jdGlv
bikgPSBAXzsKKyAgICBteSAkc2NvcGVOYW1lID0gJGZ1bmN0aW9uLT5zaWduYXR1cmUtPmV4dGVu
ZGVkQXR0cmlidXRlcy0+eyJJbXBsZW1lbnRlZEJ5In07CisgICAgJHNjb3BlTmFtZSA9IHN1YnN0
ciAkY2xhc3NOYW1lLCAyIHVubGVzcyAkc2NvcGVOYW1lOworICAgIHJldHVybiBHZXRKU0J1aWx0
aW5GdW5jdGlvbk5hbWVGcm9tU3RyaW5nKCRzY29wZU5hbWUsICRmdW5jdGlvbi0+c2lnbmF0dXJl
LT5uYW1lKTsKK30KKworc3ViIEdldEpTQnVpbHRpbkZ1bmN0aW9uTmFtZUZyb21TdHJpbmcKK3sK
KyAgICBteSAoJHNjb3BlTmFtZSwgJGZ1bmN0aW9uTmFtZSkgPSBAXzsKKyAgICByZXR1cm4gJGNv
ZGVHZW5lcmF0b3ItPldLX2xjZmlyc3QoJHNjb3BlTmFtZSkgLiAkY29kZUdlbmVyYXRvci0+V0tf
dWNmaXJzdCgkZnVuY3Rpb25OYW1lKSAuICJDb2RlR2VuZXJhdG9yIjsKK30KKworc3ViIEdldEpT
QnVpbHRpblNjb3BlTmFtZQogewogICAgIG15ICRpbnRlcmZhY2UgPSBzaGlmdDsKKyAgICBteSAk
b2JqZWN0ID0gc2hpZnQ7CiAKLSAgICBteSAkaW5jbHVkZSA9ICRpbnRlcmZhY2UtPm5hbWUgLiAi
QnVpbHRpbnMuaCI7CisgICAgcmV0dXJuICRvYmplY3QtPnNpZ25hdHVyZS0+ZXh0ZW5kZWRBdHRy
aWJ1dGVzLT57IkltcGxlbWVudGVkQnkifSBpZiAkb2JqZWN0LT5zaWduYXR1cmUtPmV4dGVuZGVk
QXR0cmlidXRlcy0+eyJJbXBsZW1lbnRlZEJ5In07CisgICAgcmV0dXJuICRpbnRlcmZhY2UtPm5h
bWU7Cit9CisKK3N1YiBBZGRKU0J1aWx0aW5JbmNsdWRlc0lmTmVlZGVkKCkKK3sKKyAgICBteSAk
aW50ZXJmYWNlID0gc2hpZnQ7CiAKICAgICBpZiAoJGludGVyZmFjZS0+ZXh0ZW5kZWRBdHRyaWJ1
dGVzLT57IkpTQnVpbHRpbkNvbnN0cnVjdG9yIn0pIHsKLSAgICAgICAgQWRkVG9JbXBsSW5jbHVk
ZXMoJGluY2x1ZGUpOworICAgICAgICBBZGRUb0ltcGxJbmNsdWRlcygkaW50ZXJmYWNlLT5uYW1l
IC4gIkJ1aWx0aW5zLmgiKTsKICAgICAgICAgcmV0dXJuOwogICAgIH0KIAogICAgIGZvcmVhY2gg
bXkgJGZ1bmN0aW9uIChAeyRpbnRlcmZhY2UtPmZ1bmN0aW9uc30pIHsKLSAgICAgICAgQWRkVG9J
bXBsSW5jbHVkZXMoJGluY2x1ZGUsICRmdW5jdGlvbi0+c2lnbmF0dXJlLT5leHRlbmRlZEF0dHJp
YnV0ZXMtPnsiQ29uZGl0aW9uYWwifSkgaWYgJGZ1bmN0aW9uLT5zaWduYXR1cmUtPmV4dGVuZGVk
QXR0cmlidXRlcy0+eyJKU0J1aWx0aW4ifTsKKyAgICAgICAgQWRkVG9JbXBsSW5jbHVkZXMoR2V0
SlNCdWlsdGluU2NvcGVOYW1lKCRpbnRlcmZhY2UsICRmdW5jdGlvbikgLiAiQnVpbHRpbnMuaCIs
ICRmdW5jdGlvbi0+c2lnbmF0dXJlLT5leHRlbmRlZEF0dHJpYnV0ZXMtPnsiQ29uZGl0aW9uYWwi
fSkgaWYgJGZ1bmN0aW9uLT5zaWduYXR1cmUtPmV4dGVuZGVkQXR0cmlidXRlcy0+eyJKU0J1aWx0
aW4ifTsKICAgICB9CiAKICAgICBmb3JlYWNoIG15ICRhdHRyaWJ1dGUgKEB7JGludGVyZmFjZS0+
YXR0cmlidXRlc30pIHsKLSAgICAgICAgQWRkVG9JbXBsSW5jbHVkZXMoJGluY2x1ZGUsICRhdHRy
aWJ1dGUtPnNpZ25hdHVyZS0+ZXh0ZW5kZWRBdHRyaWJ1dGVzLT57IkNvbmRpdGlvbmFsIn0pIGlm
ICRhdHRyaWJ1dGUtPnNpZ25hdHVyZS0+ZXh0ZW5kZWRBdHRyaWJ1dGVzLT57IkpTQnVpbHRpbiJ9
OworICAgICAgICBBZGRUb0ltcGxJbmNsdWRlcyhHZXRKU0J1aWx0aW5TY29wZU5hbWUoJGludGVy
ZmFjZSwgJGF0dHJpYnV0ZSkgLiAiQnVpbHRpbnMuaCIsICRhdHRyaWJ1dGUtPnNpZ25hdHVyZS0+
ZXh0ZW5kZWRBdHRyaWJ1dGVzLT57IkNvbmRpdGlvbmFsIn0pIGlmICRhdHRyaWJ1dGUtPnNpZ25h
dHVyZS0+ZXh0ZW5kZWRBdHRyaWJ1dGVzLT57IkpTQnVpbHRpbiJ9OwogICAgIH0KLQogfQogCiAx
OwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pT
VGVzdEludGVyZmFjZS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3Qv
SlMvSlNUZXN0SW50ZXJmYWNlLmNwcAppbmRleCBjMWZkNTQ5M2E5YTA4NTMzYTMxNzBkYzFiMzhh
ZTYzYTIyNjVmNTM3Li45OGYxMmVmYWE4M2E0MTZhOGMwNTJjMmQxMzI0YTAxYWRkYjM2MTMzIDEw
MDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0
SW50ZXJmYWNlLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3Qv
SlMvSlNUZXN0SW50ZXJmYWNlLmNwcApAQCAtMzEsNiArMzEsMTAgQEAKICNpbmNsdWRlIDxydW50
aW1lL0Vycm9yLmg+CiAjaW5jbHVkZSA8d3RmL0dldFB0ci5oPgogCisjaWYgRU5BQkxFKENvbmRp
dGlvbjExKSB8fCBFTkFCTEUoQ29uZGl0aW9uMTIpCisjaW5jbHVkZSAiVGVzdFN1cHBsZW1lbnRh
bEJ1aWx0aW5zLmgiCisjZW5kaWYKKwogI2lmIEVOQUJMRShDb25kaXRpb24xMSkgfHwgRU5BQkxF
KENvbmRpdGlvbjEyKSB8fCBFTkFCTEUoQ29uZGl0aW9uMjIpIHx8IEVOQUJMRShDb25kaXRpb24y
MykKICNpbmNsdWRlICJKU05vZGUuaCIKICNpbmNsdWRlICJKU1Rlc3RPYmouaCIKQEAgLTM0OCw2
ICszNTIsMTEgQEAgc3RhdGljIGNvbnN0IEhhc2hUYWJsZVZhbHVlIEpTVGVzdEludGVyZmFjZVBy
b3RvdHlwZVRhYmxlVmFsdWVzW10gPQogI2Vsc2UKICAgICB7IDAsIDAsIE5vSW50cmluc2ljLCB7
IDAsIDAgfSB9LAogI2VuZGlmCisjaWYgRU5BQkxFKENvbmRpdGlvbjExKSB8fCBFTkFCTEUoQ29u
ZGl0aW9uMTIpCisgICAgeyAiYnVpbHRpbkF0dHJpYnV0ZSIsIEFjY2Vzc29yIHwgQnVpbHRpbiwg
Tm9JbnRyaW5zaWMsIHsgKGludHB0cl90KXN0YXRpY19jYXN0PEJ1aWx0aW5HZW5lcmF0b3I+KHRl
c3RTdXBwbGVtZW50YWxCdWlsdGluQXR0cmlidXRlQ29kZUdlbmVyYXRvciksIChpbnRwdHJfdCkg
KHNldFRlc3RTdXBwbGVtZW50YWxCdWlsdGluQXR0cmlidXRlQ29kZUdlbmVyYXRvcikgfSB9LAor
I2Vsc2UKKyAgICB7IDAsIDAsIE5vSW50cmluc2ljLCB7IDAsIDAgfSB9LAorI2VuZGlmCiAjaWYg
RU5BQkxFKENvbmRpdGlvbjIyKSB8fCBFTkFCTEUoQ29uZGl0aW9uMjMpCiAgICAgeyAiSU1QTEVN
RU5UU0NPTlNUQU5UMSIsIERvbnREZWxldGUgfCBSZWFkT25seSB8IENvbnN0YW50SW50ZWdlciwg
Tm9JbnRyaW5zaWMsIHsgKGxvbmcgbG9uZykoMSkgfSB9LAogI2Vsc2UKQEAgLTM5OCw2ICs0MDcs
MTEgQEAgc3RhdGljIGNvbnN0IEhhc2hUYWJsZVZhbHVlIEpTVGVzdEludGVyZmFjZVByb3RvdHlw
ZVRhYmxlVmFsdWVzW10gPQogI2Vsc2UKICAgICB7IDAsIDAsIE5vSW50cmluc2ljLCB7IDAsIDAg
fSB9LAogI2VuZGlmCisjaWYgRU5BQkxFKENvbmRpdGlvbjExKSB8fCBFTkFCTEUoQ29uZGl0aW9u
MTIpCisgICAgeyAiYnVpbHRpbkZ1bmN0aW9uIiwgSlNDOjpCdWlsdGluLCBOb0ludHJpbnNpYywg
eyAoaW50cHRyX3Qpc3RhdGljX2Nhc3Q8QnVpbHRpbkdlbmVyYXRvcj4odGVzdFN1cHBsZW1lbnRh
bEJ1aWx0aW5GdW5jdGlvbkNvZGVHZW5lcmF0b3IpLCAoaW50cHRyX3QpICgwKSB9IH0sCisjZWxz
ZQorICAgIHsgMCwgMCwgTm9JbnRyaW5zaWMsIHsgMCwgMCB9IH0sCisjZW5kaWYKIH07CiAKIGNv
bnN0IENsYXNzSW5mbyBKU1Rlc3RJbnRlcmZhY2VQcm90b3R5cGU6OnNfaW5mbyA9IHsgIlRlc3RJ
bnRlcmZhY2VQcm90b3R5cGUiLCAmQmFzZTo6c19pbmZvLCAwLCBDUkVBVEVfTUVUSE9EX1RBQkxF
KEpTVGVzdEludGVyZmFjZVByb3RvdHlwZSkgfTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3Jl
L2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9PYmpDL0RPTVRlc3RJbnRlcmZhY2UuaCBiL1NvdXJjZS9X
ZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9PYmpDL0RPTVRlc3RJbnRlcmZhY2UuaAppbmRl
eCBjMDViYTk5NTVjYTQ0NTI1NjQzODg4MzJiYmQ3ZTlmZGRkMTYzNGZjLi5mYmE4MjYwMmI2ZDNk
NGQ4NzY5N2RlYjljZjI3MTJiZTc1NGRmMTc0IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9i
aW5kaW5ncy9zY3JpcHRzL3Rlc3QvT2JqQy9ET01UZXN0SW50ZXJmYWNlLmgKKysrIGIvU291cmNl
L1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L09iakMvRE9NVGVzdEludGVyZmFjZS5oCkBA
IC00NCw0ICs0NCw1IEBAIFdFQkNPUkVfRVhQT1JUIEBpbnRlcmZhY2UgRE9NVGVzdEludGVyZmFj
ZSA6IERPTU9iamVjdAogQHByb3BlcnR5IChjb3B5KSBOU1N0cmluZyAqc3VwcGxlbWVudGFsU3Ry
MjsKIEBwcm9wZXJ0eSAoY29weSkgTlNTdHJpbmcgKnN1cHBsZW1lbnRhbFN0cjM7CiBAcHJvcGVy
dHkgKHN0cm9uZykgRE9NTm9kZSAqc3VwcGxlbWVudGFsTm9kZTsKK0Bwcm9wZXJ0eSB1bnNpZ25l
ZCBzaG9ydCBidWlsdGluQXR0cmlidXRlOwogQGVuZApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNv
cmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L09iakMvRE9NVGVzdEludGVyZmFjZS5tbSBiL1NvdXJj
ZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9PYmpDL0RPTVRlc3RJbnRlcmZhY2UubW0K
aW5kZXggYTY1ODdjNzEzNzA4YTgyYTBiYjcyZTJlNGNmN2JkYWQwZjk5YzdhZS4uNDk4NzFiZTI3
MWZhNTA3NzQ2MGIwYTU1MmY2ZTk2YjA5NTQwMDY5YyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNv
cmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L09iakMvRE9NVGVzdEludGVyZmFjZS5tbQorKysgYi9T
b3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvT2JqQy9ET01UZXN0SW50ZXJmYWNl
Lm1tCkBAIC0xNzIsNiArMTcyLDIwIEBACiB9CiAjZW5kaWYKIAorI2lmIEVOQUJMRShDb25kaXRp
b24xMSkgfHwgRU5BQkxFKENvbmRpdGlvbjEyKQorLSAodW5zaWduZWQgc2hvcnQpYnVpbHRpbkF0
dHJpYnV0ZQoreworICAgIFdlYkNvcmU6OkpTTWFpblRocmVhZE51bGxTdGF0ZSBzdGF0ZTsKKyAg
ICByZXR1cm4gVGVzdFN1cHBsZW1lbnRhbDo6YnVpbHRpbkF0dHJpYnV0ZShJTVBMKTsKK30KKwor
LSAodm9pZClzZXRCdWlsdGluQXR0cmlidXRlOih1bnNpZ25lZCBzaG9ydCluZXdCdWlsdGluQXR0
cmlidXRlCit7CisgICAgV2ViQ29yZTo6SlNNYWluVGhyZWFkTnVsbFN0YXRlIHN0YXRlOworICAg
IFRlc3RTdXBwbGVtZW50YWw6OnNldEJ1aWx0aW5BdHRyaWJ1dGUoSU1QTCwgbmV3QnVpbHRpbkF0
dHJpYnV0ZSk7Cit9CisjZW5kaWYKKwogCiAjaWYgRU5BQkxFKENvbmRpdGlvbjIyKSB8fCBFTkFC
TEUoQ29uZGl0aW9uMjMpCiAtICh2b2lkKWltcGxlbWVudHNNZXRob2QxCkBAIC0yNTgsNiArMjcy
LDE2IEBACiAKICNlbmRpZgogCisKKyNpZiBFTkFCTEUoQ29uZGl0aW9uMTEpIHx8IEVOQUJMRShD
b25kaXRpb24xMikKKy0gKHZvaWQpYnVpbHRpbkZ1bmN0aW9uCit7CisgICAgV2ViQ29yZTo6SlNN
YWluVGhyZWFkTnVsbFN0YXRlIHN0YXRlOworICAgIFRlc3RTdXBwbGVtZW50YWw6OmJ1aWx0aW5G
dW5jdGlvbihJTVBMKTsKK30KKworI2VuZGlmCisKIEBlbmQKIAogV2ViQ29yZTo6VGVzdEludGVy
ZmFjZSogY29yZShET01UZXN0SW50ZXJmYWNlICp3cmFwcGVyKQpkaWZmIC0tZ2l0IGEvU291cmNl
L1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L1Rlc3RTdXBwbGVtZW50YWwuaWRsIGIvU291
cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L1Rlc3RTdXBwbGVtZW50YWwuaWRsCmlu
ZGV4IDcxMzUxZWYxYzI2ZThiYmUzZDQxM2M3NTcwMDJiYzJjNDIzNjczYTcuLjE5NTU1YzJiZjdh
ZTNjZWI3ZjU2NTVmZWRmNGU5OTg5OGJlN2JhMTQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3Jl
L2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9UZXN0U3VwcGxlbWVudGFsLmlkbAorKysgYi9Tb3VyY2Uv
V2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvVGVzdFN1cHBsZW1lbnRhbC5pZGwKQEAgLTQ1
LDQgKzQ1LDcgQEAKIAogICAgIGNvbnN0IHVuc2lnbmVkIHNob3J0IFNVUFBMRU1FTlRBTENPTlNU
QU5UMSA9IDE7CiAgICAgW1JlZmxlY3Q9Q09OU1RfSU1QTF0gY29uc3QgdW5zaWduZWQgc2hvcnQg
U1VQUExFTUVOVEFMQ09OU1RBTlQyID0gMjsKKworICAgIFtKU0J1aWx0aW5dIHZvaWQgYnVpbHRp
bkZ1bmN0aW9uKCk7CisgICAgW0pTQnVpbHRpbiwgUmVhZE9ubHldIGF0dHJpYnV0ZSB1bnNpZ25l
ZCBzaG9ydCBidWlsdGluQXR0cmlidXRlOwogfTsKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL0No
YW5nZUxvZyBiL0xheW91dFRlc3RzL0NoYW5nZUxvZwppbmRleCA4ZTU2MTFmZTJkOWE1Yzk0Nzhl
ZWVmMjM3NWIyN2JmNmRhMTZkZDI4Li4wMDE1Yzc2MmM0OThjNGQwNTcyODA5NmU2NmM2ZWE1NmI2
MTFiZWYyIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKKysrIGIvTGF5b3V0VGVz
dHMvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTYgQEAKKzIwMTUtMTAtMTIgIFlvdWVubiBGYWJsZXQg
IDx5b3Vlbm4uZmFibGV0QGNyZi5jYW5vbi5mcj4KKworICAgICAgICBNb3ZlIHdlYmtpdEdldFVz
ZXJNZWRpYSB0byBKUyBCdWlsdGluCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3No
b3dfYnVnLmNnaT9pZD0xNDk0OTkKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMh
KS4KKworICAgICAgICAqIGZhc3QvbWVkaWFzdHJlYW0vYXJndW1lbnQtdHlwZXMtZXhwZWN0ZWQu
dHh0OgorICAgICAgICAqIGZhc3QvbWVkaWFzdHJlYW0vZ2V0dXNlcm1lZGlhLWV4cGVjdGVkLnR4
dDoKKyAgICAgICAgKiBmYXN0L21lZGlhc3RyZWFtL2dldHVzZXJtZWRpYS5odG1sOgorICAgICAg
ICAqIGZhc3QvbWVkaWFzdHJlYW0vc2NyaXB0LXRlc3RzL2FyZ3VtZW50LXR5cGVzLmpzOgorICAg
ICAgICAqIGh0dHAvdGVzdHMvbWVkaWEvbWVkaWEtc3RyZWFtL2Rpc2Nvbm5lY3RlZC1mcmFtZS1h
bHJlYWR5LWV4cGVjdGVkLnR4dDoKKwogMjAxNS0xMC0xMSAgTXlsZXMgQy4gTWF4ZmllbGQgIDxt
bWF4ZmllbGRAYXBwbGUuY29tPgogCiAgICAgICAgIFRlc3QgZm9udC12YXJpYW50LSogYW5kIGZv
bnQtZmVhdHVyZS1zZXR0aW5ncyB3aXRoIG1vY2tlZCBwcmVpbnN0YWxsZWQgZm9udHMKZGlmZiAt
LWdpdCBhL0xheW91dFRlc3RzL2Zhc3QvbWVkaWFzdHJlYW0vYXJndW1lbnQtdHlwZXMtZXhwZWN0
ZWQudHh0IGIvTGF5b3V0VGVzdHMvZmFzdC9tZWRpYXN0cmVhbS9hcmd1bWVudC10eXBlcy1leHBl
Y3RlZC50eHQKaW5kZXggNDIyNGQ0MDIwMjI5OWYwMDIxMmUyNzIxZjIxZTQzM2ZjZDVlMjkyNC4u
NWNiYzQ4NTg4Mjc2MjliY2Y0ODRlNmY2NDEyZjU5ZmUxMDM0YzFjZiAxMDA2NDQKLS0tIGEvTGF5
b3V0VGVzdHMvZmFzdC9tZWRpYXN0cmVhbS9hcmd1bWVudC10eXBlcy1leHBlY3RlZC50eHQKKysr
IGIvTGF5b3V0VGVzdHMvZmFzdC9tZWRpYXN0cmVhbS9hcmd1bWVudC10eXBlcy1leHBlY3RlZC50
eHQKQEAgLTMwLDcgKzMwLDcgQEAgUEFTUyBuYXZpZ2F0b3Iud2Via2l0R2V0VXNlck1lZGlhKHt2
aWRlbzogdHJ1ZX0sIHRydWUpIHRocmV3IGV4Y2VwdGlvbiBUeXBlRXJyb3IKIFBBU1MgbmF2aWdh
dG9yLndlYmtpdEdldFVzZXJNZWRpYSh7dmlkZW86IHRydWV9LCA0MikgdGhyZXcgZXhjZXB0aW9u
IFR5cGVFcnJvcjogTm90IGVub3VnaCBhcmd1bWVudHMuCiBQQVNTIG5hdmlnYXRvci53ZWJraXRH
ZXRVc2VyTWVkaWEoe3ZpZGVvOiB0cnVlfSwgSW5maW5pdHkpIHRocmV3IGV4Y2VwdGlvbiBUeXBl
RXJyb3I6IE5vdCBlbm91Z2ggYXJndW1lbnRzLgogUEFTUyBuYXZpZ2F0b3Iud2Via2l0R2V0VXNl
ck1lZGlhKHt2aWRlbzogdHJ1ZX0sIC1JbmZpbml0eSkgdGhyZXcgZXhjZXB0aW9uIFR5cGVFcnJv
cjogTm90IGVub3VnaCBhcmd1bWVudHMuCi1QQVNTIG5hdmlnYXRvci53ZWJraXRHZXRVc2VyTWVk
aWEoeyB9LCBlbXB0eUZ1bmN0aW9uLCBlbXB0eUZ1bmN0aW9uKSB0aHJldyBleGNlcHRpb24gRXJy
b3I6IE5vdFN1cHBvcnRlZEVycm9yOiBET00gRXhjZXB0aW9uIDkuCitQQVNTIG5hdmlnYXRvci53
ZWJraXRHZXRVc2VyTWVkaWEoeyB9LCBlbXB0eUZ1bmN0aW9uLCBlbXB0eUZ1bmN0aW9uKSBkaWQg
bm90IHRocm93IGV4Y2VwdGlvbi4KIFBBU1MgbmF2aWdhdG9yLndlYmtpdEdldFVzZXJNZWRpYSh7
dmlkZW86IHRydWV9LCBlbXB0eUZ1bmN0aW9uLCBlbXB0eUZ1bmN0aW9uKSBkaWQgbm90IHRocm93
IGV4Y2VwdGlvbi4KIFBBU1MgbmF2aWdhdG9yLndlYmtpdEdldFVzZXJNZWRpYSh7dmlkZW86IHRy
dWV9LCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQpIHRocmV3IGV4Y2VwdGlvbiBUeXBlRXJyb3I6
IEFyZ3VtZW50IDMgKCdlcnJvckNhbGxiYWNrJykgdG8gTmF2aWdhdG9yLndlYmtpdEdldFVzZXJN
ZWRpYSBtdXN0IGJlIGEgZnVuY3Rpb24uCiBQQVNTIG5hdmlnYXRvci53ZWJraXRHZXRVc2VyTWVk
aWEoe2F1ZGlvOnRydWUsIHZpZGVvOnRydWV9LCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQpIHRo
cmV3IGV4Y2VwdGlvbiBUeXBlRXJyb3I6IEFyZ3VtZW50IDMgKCdlcnJvckNhbGxiYWNrJykgdG8g
TmF2aWdhdG9yLndlYmtpdEdldFVzZXJNZWRpYSBtdXN0IGJlIGEgZnVuY3Rpb24uCmRpZmYgLS1n
aXQgYS9MYXlvdXRUZXN0cy9mYXN0L21lZGlhc3RyZWFtL2dldHVzZXJtZWRpYS1leHBlY3RlZC50
eHQgYi9MYXlvdXRUZXN0cy9mYXN0L21lZGlhc3RyZWFtL2dldHVzZXJtZWRpYS1leHBlY3RlZC50
eHQKaW5kZXggZGNhNWZiOTYxY2Y2ZWI1ZjQ0NWFiNDUwYWEwYjNlNTJkNDEwNzA4YS4uZDZjZmVi
NDkwY2MwMjE2MGZkZGQzYTIzZjgzMDNmMmFlNWM3ZGEwNiAxMDA2NDQKLS0tIGEvTGF5b3V0VGVz
dHMvZmFzdC9tZWRpYXN0cmVhbS9nZXR1c2VybWVkaWEtZXhwZWN0ZWQudHh0CisrKyBiL0xheW91
dFRlc3RzL2Zhc3QvbWVkaWFzdHJlYW0vZ2V0dXNlcm1lZGlhLWV4cGVjdGVkLnR4dApAQCAtMyw5
ICszLDEwIEBAIFRlc3RzIHdlYmtpdEdldFVzZXJNZWRpYS4KIE9uIHN1Y2Nlc3MsIHlvdSB3aWxs
IHNlZSBhIHNlcmllcyBvZiAiUEFTUyIgbWVzc2FnZXMsIGZvbGxvd2VkIGJ5ICJURVNUIENPTVBM
RVRFIi4KIAogCi1QQVNTIG5hdmlnYXRvci53ZWJraXRHZXRVc2VyTWVkaWEoe2F1ZGlvOmZhbHNl
LCB2aWRlbzpmYWxzZX0sIGVycm9yLCBlcnJvcik7IHRocmV3IGV4Y2VwdGlvbiBFcnJvcjogTm90
U3VwcG9ydGVkRXJyb3I6IERPTSBFeGNlcHRpb24gOS4KK1BBU1MgbmF2aWdhdG9yLndlYmtpdEdl
dFVzZXJNZWRpYSh7YXVkaW86ZmFsc2UsIHZpZGVvOmZhbHNlfSwgZXJyb3IsIGV4cGVjdGVkRXJy
b3IpOyBkaWQgbm90IHRocm93IGV4Y2VwdGlvbi4KIFBBU1MgbmF2aWdhdG9yLndlYmtpdEdldFVz
ZXJNZWRpYSh7YXVkaW86ZmFsc2UsIHZpZGVvOmZhbHNlfSwgZXJyb3IsIG51bGwpOyB0aHJldyBl
eGNlcHRpb24gVHlwZUVycm9yOiBBcmd1bWVudCAzICgnZXJyb3JDYWxsYmFjaycpIHRvIE5hdmln
YXRvci53ZWJraXRHZXRVc2VyTWVkaWEgbXVzdCBiZSBhIGZ1bmN0aW9uLgogUEFTUyBuYXZpZ2F0
b3Iud2Via2l0R2V0VXNlck1lZGlhKHthdWRpbzp0cnVlfSwgZ290U3RyZWFtMSwgZXJyb3IpOyBk
aWQgbm90IHRocm93IGV4Y2VwdGlvbi4KK1BBU1MgRXJyb3IgY2FsbGJhY2sgY2FsbGVkLgogUEFT
UyBTdHJlYW0gZ2VuZXJhdGVkLgogUEFTUyBzdHJlYW0uZ2V0QXVkaW9UcmFja3MoKS5sZW5ndGgg
aXMgMQogUEFTUyBzdHJlYW0uZ2V0VmlkZW9UcmFja3MoKS5sZW5ndGggaXMgMApkaWZmIC0tZ2l0
IGEvTGF5b3V0VGVzdHMvZmFzdC9tZWRpYXN0cmVhbS9nZXR1c2VybWVkaWEuaHRtbCBiL0xheW91
dFRlc3RzL2Zhc3QvbWVkaWFzdHJlYW0vZ2V0dXNlcm1lZGlhLmh0bWwKaW5kZXggMTNmYWUxMzA2
NzJiZDE1NDRlYjdiYTZjMmVlMWIxZDg0N2E0OWQ1MS4uZTMzODM5ZjFlNDczOWZiYjk3MjZmMTMw
MDc3NDhiMTU4ZDRkMDkyOCAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvZmFzdC9tZWRpYXN0cmVh
bS9nZXR1c2VybWVkaWEuaHRtbAorKysgYi9MYXlvdXRUZXN0cy9mYXN0L21lZGlhc3RyZWFtL2dl
dHVzZXJtZWRpYS5odG1sCkBAIC0yNCw2ICsyNCwxMCBAQAogICAgICAgICAgICAgICAgIGZpbmlz
aEpTVGVzdCgpOwogICAgICAgICAgICAgfQogCisgICAgICAgICAgICBmdW5jdGlvbiBleHBlY3Rl
ZEVycm9yKCkgeworICAgICAgICAgICAgICAgIHRlc3RQYXNzZWQoJ0Vycm9yIGNhbGxiYWNrIGNh
bGxlZC4nKTsKKyAgICAgICAgICAgIH0KKwogICAgICAgICAgICAgZnVuY3Rpb24gZ290U3RyZWFt
SW5FcnJvcihzKSB7CiAgICAgICAgICAgICAgICAgdGVzdEZhaWxlZCgnU3RyZWFtIGdlbmVyYXRl
ZC4nKTsKICAgICAgICAgICAgICAgICBmaW5pc2hKU1Rlc3QoKTsKQEAgLTg3LDcgKzkxLDcgQEAK
ICAgICAgICAgICAgICAgICBzaG91bGROb3RUaHJvdygibmF2aWdhdG9yLndlYmtpdEdldFVzZXJN
ZWRpYSh7dmlkZW86dHJ1ZX0sIGdvdFN0cmVhbTIsIGVycm9yKTsiKQogICAgICAgICAgICAgfQog
Ci0gICAgICAgICAgICBzaG91bGRUaHJvdygibmF2aWdhdG9yLndlYmtpdEdldFVzZXJNZWRpYSh7
YXVkaW86ZmFsc2UsIHZpZGVvOmZhbHNlfSwgZXJyb3IsIGVycm9yKTsiKQorICAgICAgICAgICAg
c2hvdWxkTm90VGhyb3coIm5hdmlnYXRvci53ZWJraXRHZXRVc2VyTWVkaWEoe2F1ZGlvOmZhbHNl
LCB2aWRlbzpmYWxzZX0sIGVycm9yLCBleHBlY3RlZEVycm9yKTsiKQogICAgICAgICAgICAgc2hv
dWxkVGhyb3coIm5hdmlnYXRvci53ZWJraXRHZXRVc2VyTWVkaWEoe2F1ZGlvOmZhbHNlLCB2aWRl
bzpmYWxzZX0sIGVycm9yLCBudWxsKTsiKQogCiAgICAgICAgICAgICBzZXRVc2VyTWVkaWFQZXJt
aXNzaW9uKHRydWUpOwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9tZWRpYXN0cmVhbS9z
Y3JpcHQtdGVzdHMvYXJndW1lbnQtdHlwZXMuanMgYi9MYXlvdXRUZXN0cy9mYXN0L21lZGlhc3Ry
ZWFtL3NjcmlwdC10ZXN0cy9hcmd1bWVudC10eXBlcy5qcwppbmRleCAxMWFkZjg5MzY3N2QxYmIy
YTc4NGU5NjRkOTI3Y2RhNGJhYTM3NzkzLi5mZjA4YjQwMDY5NDg0NzE1OGFkNTYxY2M1ZjMzOGY0
ZDI2YjQ2MjA1IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9mYXN0L21lZGlhc3RyZWFtL3Njcmlw
dC10ZXN0cy9hcmd1bWVudC10eXBlcy5qcworKysgYi9MYXlvdXRUZXN0cy9mYXN0L21lZGlhc3Ry
ZWFtL3NjcmlwdC10ZXN0cy9hcmd1bWVudC10eXBlcy5qcwpAQCAtNTQsNyArNTQsNyBAQCB0ZXN0
KCduYXZpZ2F0b3Iud2Via2l0R2V0VXNlck1lZGlhKHt2aWRlbzogdHJ1ZX0sIEluZmluaXR5KScs
IHRydWUpOwogdGVzdCgnbmF2aWdhdG9yLndlYmtpdEdldFVzZXJNZWRpYSh7dmlkZW86IHRydWV9
LCAtSW5maW5pdHkpJywgdHJ1ZSk7CiAKIC8vIDMgQXJndW1lbnRzLgotdGVzdCgnbmF2aWdhdG9y
LndlYmtpdEdldFVzZXJNZWRpYSh7IH0sIGVtcHR5RnVuY3Rpb24sIGVtcHR5RnVuY3Rpb24pJywg
dHJ1ZSwgbm90U3VwcG9ydGVkRXJyb3IpOwordGVzdCgnbmF2aWdhdG9yLndlYmtpdEdldFVzZXJN
ZWRpYSh7IH0sIGVtcHR5RnVuY3Rpb24sIGVtcHR5RnVuY3Rpb24pJywgZmFsc2UpOwogdGVzdCgn
bmF2aWdhdG9yLndlYmtpdEdldFVzZXJNZWRpYSh7dmlkZW86IHRydWV9LCBlbXB0eUZ1bmN0aW9u
LCBlbXB0eUZ1bmN0aW9uKScsIGZhbHNlKTsKIHRlc3QoJ25hdmlnYXRvci53ZWJraXRHZXRVc2Vy
TWVkaWEoe3ZpZGVvOiB0cnVlfSwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkKScsIHRydWUsIGVy
cm9yQ2FsbGJhY2tFcnJvcik7CiB0ZXN0KCduYXZpZ2F0b3Iud2Via2l0R2V0VXNlck1lZGlhKHth
dWRpbzp0cnVlLCB2aWRlbzp0cnVlfSwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkKScsIHRydWUs
IGVycm9yQ2FsbGJhY2tFcnJvcik7CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9odHRwL3Rlc3Rz
L21lZGlhL21lZGlhLXN0cmVhbS9kaXNjb25uZWN0ZWQtZnJhbWUtYWxyZWFkeS1leHBlY3RlZC50
eHQgYi9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL21lZGlhL21lZGlhLXN0cmVhbS9kaXNjb25uZWN0
ZWQtZnJhbWUtYWxyZWFkeS1leHBlY3RlZC50eHQKaW5kZXggZTUwNWRiOWIyYzdlYjYzOTMzZjll
ZjEwNWIzMGQ5MjVkMDk2ZDU3MS4uMmFjMzE0Nzc3MmVhZTE2MzM0MzhmZGFmYWQ1MzBhNWY1MjU4
YmI0ZCAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9tZWRpYS9tZWRpYS1zdHJl
YW0vZGlzY29ubmVjdGVkLWZyYW1lLWFscmVhZHktZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRl
c3RzL2h0dHAvdGVzdHMvbWVkaWEvbWVkaWEtc3RyZWFtL2Rpc2Nvbm5lY3RlZC1mcmFtZS1hbHJl
YWR5LWV4cGVjdGVkLnR4dApAQCAtMSw0ICsxLDQgQEAKLUNPTlNPTEUgTUVTU0FHRTogbGluZSAy
NDogTm90U3VwcG9ydGVkRXJyb3I6IERPTSBFeGNlcHRpb24gOTogVGhlIGltcGxlbWVudGF0aW9u
IGRpZCBub3Qgc3VwcG9ydCB0aGUgcmVxdWVzdGVkIHR5cGUgb2Ygb2JqZWN0IG9yIG9wZXJhdGlv
bi4KK0NPTlNPTEUgTUVTU0FHRTogbGluZSAyNDogVHlwZUVycm9yOiBUaGUgaW1wbGVtZW50YXRp
b24gZGlkIG5vdCBzdXBwb3J0IHRoZSByZXF1ZXN0ZWQgdHlwZSBvZiBvYmplY3Qgb3Igb3BlcmF0
aW9uLgogVGVzdHMgdGhhdCB3aGVuIGEgZ2V0VXNlck1lZGlhIHJlcXVlc3QgaXMgbWFkZSBhZnRl
ciBpdHMgZnJhbWUgaGFzIGJlZW4gZGlzY29ubmVjdGVkLCBubyBjYWxsYmFja3MgYXJlIG1hZGUg
YW5kIG5vIGNyYXNoIG9jY3Vycy4KIAogT24gc3VjY2VzcywgeW91IHdpbGwgc2VlIGEgc2VyaWVz
IG9mICJQQVNTIiBtZXNzYWdlcywgZm9sbG93ZWQgYnkgIlRFU1QgQ09NUExFVEUiLgo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>262986</attachid>
            <date>2015-10-13 05:49:25 -0700</date>
            <delta_ts>2015-10-19 06:54:27 -0700</delta_ts>
            <desc>Addressing Adam comments</desc>
            <filename>bug-149499-20151013144848.patch</filename>
            <type>text/plain</type>
            <size>61230</size>
            <attacher name="youenn fablet">youennf</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTkwOTI3CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggZDRjMWQ1YjgwZjFmMDAy
MDkwYmVmMTVkZGM4ODE5ZDM1MjczZjZhNC4uNGZiOGY1ZWUyMzRkMmJlOGU1YzBlZWRjNTJhZTRl
YzM5YjI0YjY2ZSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDY0IEBACisyMDE1LTEwLTEzICBZb3Vl
bm4gRmFibGV0ICA8eW91ZW5uLmZhYmxldEBjcmYuY2Fub24uZnI+CisKKyAgICAgICAgTW92ZSB3
ZWJraXRHZXRVc2VyTWVkaWEgdG8gSlMgQnVpbHRpbgorICAgICAgICBodHRwczovL2J1Z3Mud2Vi
a2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTQ5NDk5CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9C
T0RZIChPT1BTISkuCisKKyAgICAgICAgSW1wbGVtZW50ZWQgd2Via2l0R2V0VXNlck1lZGlhIGFz
IGEgSlNCdWlsdGluIHdyYXBwZXIgYXJvdW5kIG5hdmlnYXRvci5tZWRpYURldmljZXMuZ2V0VXNl
ck1lZGlhLgorICAgICAgICBBZGRlZCBhIHByaXZhdGUgc3ltYm9sIHRvIHJlZmVyIHRvIG5hdmln
YXRvci5NZWRpYURldmljZXMuZ2V0VXNlck1lZGlhIHVzZWQgYnkgdGhlIEpTIGJ1aWx0aW4gd3Jh
cHBlci4KKworICAgICAgICBSZW1vdmVkIGNwcCBiYXNlZCB2ZXJzaW9uLgorCisgICAgICAgIFVw
ZGF0ZWQgY29kZSBnZW5lcmF0b3IgdG8gc3VwcG9ydCBKU0J1aWx0aW4gZm9yIHBhcnRpYWwgaW50
ZXJmYWNlczogdGhlIGpzIGZpbGUKKyAgICAgICAgaXMgc3RpbGwgbmFtZWQgdGhlIHNhbWUgYXMg
dGhlIElETCBmaWxlIChleGNlcHQgZm9yIHRoZSBqcyBleHRlbnNpb24pIGNvbnRhaW5pbmcgdGhl
IHBhcnRpYWwgaW50ZXJmYWNlIGRlZmluaXRpb24uCisgICAgICAgIFRoaXMgYWxsb3dzIGNsZWFu
ZXIgY29kZSBoYW5kbGluZyAoa2VlcGluZyBmZWF0dXJlIGNvbmRpdGlvbmFsIGUuZy4pCisKKyAg
ICAgICAgVGhlIGpzIGJ1aWx0aW5nIGltcGxlbWVudGF0aW9uIGNoZWNrcyBmb3IgYXJndW1lbnQg
YnV0IGRvZXMgbm90IHJhaXNlIGV4Y2VwdGlvbiB3aGVuIHRoZSByZXF1ZXN0IGlzIG5vdCBzdXBw
b3J0ZWQuCisgICAgICAgIFRoZSBlcnJvciBjYWxsYmFjayBpcyBjYWxsZWQgaW5zdGVhZCwgaW4g
YW4gYXN5bmNocm9ub3VzIGZhc2hpb24uCisgICAgICAgIFRoZSBqcyBidWlsdGluIGltcGxlbWVu
dGF0aW9uIGRvZXMgbm90IGNoZWNrIGZpcnN0IHRoYXQgaXQgaXMgY2FsbGVkIG9uIG5hdmlnYXRv
ciwgY29udHJhcnkgdG8gdGhlIGNwcCBpbXBsZW1lbnRhdGlvbi4KKyAgICAgICAgVGhpcyBpcyBk
b25lIGFmdGVyd2FyZHMgd2hlbiBjYWxsaW5nIG5hdmlnYXRvci5NZWRpYURldmljZXMuQGdldFVz
ZXJNZWRpYS4KKworICAgICAgICBDb3ZlcmVkIGJ5IGV4aXN0aW5nIGFuZCBtb2RpZmllZCB0ZXN0
cy4KKworICAgICAgICAqIENNYWtlTGlzdHMudHh0OgorICAgICAgICAqIERlcml2ZWRTb3VyY2Vz
Lm1ha2U6CisgICAgICAgICogTW9kdWxlcy9tZWRpYXN0cmVhbS9OYXZpZ2F0b3JVc2VyTWVkaWEu
aWRsOgorICAgICAgICAqIE1vZHVsZXMvbWVkaWFzdHJlYW0vTmF2aWdhdG9yVXNlck1lZGlhLmpz
OgorICAgICAgICAod2Via2l0R2V0VXNlck1lZGlhKToKKyAgICAgICAgKiBNb2R1bGVzL21lZGlh
c3RyZWFtL05hdmlnYXRvclVzZXJNZWRpYUVycm9yQ2FsbGJhY2suaDogUmVtb3ZlZC4KKyAgICAg
ICAgKiBNb2R1bGVzL21lZGlhc3RyZWFtL05hdmlnYXRvclVzZXJNZWRpYUVycm9yQ2FsbGJhY2su
aWRsOiBSZW1vdmVkLgorICAgICAgICAqIE1vZHVsZXMvbWVkaWFzdHJlYW0vTmF2aWdhdG9yVXNl
ck1lZGlhU3VjY2Vzc0NhbGxiYWNrLmg6IFJlbW92ZWQuCisgICAgICAgICogTW9kdWxlcy9tZWRp
YXN0cmVhbS9OYXZpZ2F0b3JVc2VyTWVkaWFTdWNjZXNzQ2FsbGJhY2suaWRsOiBSZW1vdmVkLgor
ICAgICAgICAqIE1vZHVsZXMvbWVkaWFzdHJlYW0vVXNlck1lZGlhUmVxdWVzdC5jcHA6CisgICAg
ICAgICogTW9kdWxlcy9tZWRpYXN0cmVhbS9Vc2VyTWVkaWFSZXF1ZXN0Lmg6CisgICAgICAgICog
V2ViQ29yZS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qOgorICAgICAgICAqIGJpbmRpbmdzL2pz
L0pTRE9NV2luZG93QmFzZS5jcHA6CisgICAgICAgIChXZWJDb3JlOjpKU0RPTVdpbmRvd0Jhc2U6
OmZpbmlzaENyZWF0aW9uKToKKyAgICAgICAgKiBiaW5kaW5ncy9qcy9KU05hdmlnYXRvckN1c3Rv
bS5jcHA6CisgICAgICAgICogYmluZGluZ3MvanMvV2ViQ29yZUJ1aWx0aW5OYW1lcy5oOgorICAg
ICAgICAqIGJpbmRpbmdzL2pzL1dlYkNvcmVKU0J1aWx0aW5zLmNwcDoKKyAgICAgICAgKiBiaW5k
aW5ncy9qcy9XZWJDb3JlSlNCdWlsdGlucy5oOgorICAgICAgICAoV2ViQ29yZTo6SlNCdWlsdGlu
RnVuY3Rpb25zOjpKU0J1aWx0aW5GdW5jdGlvbnMpOgorICAgICAgICAoV2ViQ29yZTo6SlNCdWls
dGluRnVuY3Rpb25zOjpuYXZpZ2F0b3JVc2VyTWVkaWFCdWlsdGlucyk6CisgICAgICAgICogYmlu
ZGluZ3Mvc2NyaXB0cy9Db2RlR2VuZXJhdG9ySlMucG06CisgICAgICAgIChHZXRBdHRyaWJ1dGVH
ZXR0ZXJOYW1lKToKKyAgICAgICAgKEdldEF0dHJpYnV0ZVNldHRlck5hbWUpOgorICAgICAgICAo
R2V0RnVuY3Rpb25OYW1lKToKKyAgICAgICAgKEdlbmVyYXRlQ29uc3RydWN0b3JIZWxwZXJNZXRo
b2RzKToKKyAgICAgICAgKEdldEpTQnVpbHRpbkZ1bmN0aW9uTmFtZSk6CisgICAgICAgIChHZXRK
U0J1aWx0aW5GdW5jdGlvbk5hbWVGcm9tU3RyaW5nKToKKyAgICAgICAgKEdldEpTQnVpbHRpblNj
b3BlTmFtZSk6CisgICAgICAgIChBZGRKU0J1aWx0aW5JbmNsdWRlc0lmTmVlZGVkKToKKyAgICAg
ICAgKEdldFNwZWNpYWxBY2Nlc3NvckZ1bmN0aW9uRm9yVHlwZSk6IERlbGV0ZWQuCisgICAgICAg
ICogYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdEludGVyZmFjZS5jcHA6CisgICAgICAg
ICogYmluZGluZ3Mvc2NyaXB0cy90ZXN0L09iakMvRE9NVGVzdEludGVyZmFjZS5oOgorICAgICAg
ICAqIGJpbmRpbmdzL3NjcmlwdHMvdGVzdC9PYmpDL0RPTVRlc3RJbnRlcmZhY2UubW06CisgICAg
ICAgICgtW0RPTVRlc3RJbnRlcmZhY2UgYnVpbHRpbkF0dHJpYnV0ZV0pOgorICAgICAgICAoLVtE
T01UZXN0SW50ZXJmYWNlIHNldEJ1aWx0aW5BdHRyaWJ1dGU6XSk6CisgICAgICAgICgtW0RPTVRl
c3RJbnRlcmZhY2UgYnVpbHRpbkZ1bmN0aW9uXSk6CisgICAgICAgICogYmluZGluZ3Mvc2NyaXB0
cy90ZXN0L1Rlc3RTdXBwbGVtZW50YWwuaWRsOgorCiAyMDE1LTEwLTEyICBKYWVodW4gTGltICA8
bGphZWh1bi5saW1Ac2Ftc3VuZy5jb20+CiAKICAgICAgICAgVW5yZXZpZXdlZCwgZml4IGRlYnVn
IGJ1aWxkIHdhcm5pbmcuCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9DTWFrZUxpc3RzLnR4
dCBiL1NvdXJjZS9XZWJDb3JlL0NNYWtlTGlzdHMudHh0CmluZGV4IDZlYmMzMWM1YmJiODYzYjNm
ODQ0Yjk5MDkzM2MxYTQ5M2M2OGJjYzUuLjhjZGIxODg2YTAyNzIwNzc3OGY2NjFkYmNkMjQ5ZTM4
NTI2ZDFkZmMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL0NNYWtlTGlzdHMudHh0CisrKyBi
L1NvdXJjZS9XZWJDb3JlL0NNYWtlTGlzdHMudHh0CkBAIC0yNDEsOCArMjQxLDYgQEAgc2V0KFdl
YkNvcmVfTk9OX1NWR19JRExfRklMRVMKICAgICBNb2R1bGVzL21lZGlhc3RyZWFtL05hdmlnYXRv
ck1lZGlhRGV2aWNlcy5pZGwKICAgICBNb2R1bGVzL21lZGlhc3RyZWFtL05hdmlnYXRvclVzZXJN
ZWRpYS5pZGwKICAgICBNb2R1bGVzL21lZGlhc3RyZWFtL05hdmlnYXRvclVzZXJNZWRpYUVycm9y
LmlkbAotICAgIE1vZHVsZXMvbWVkaWFzdHJlYW0vTmF2aWdhdG9yVXNlck1lZGlhRXJyb3JDYWxs
YmFjay5pZGwKLSAgICBNb2R1bGVzL21lZGlhc3RyZWFtL05hdmlnYXRvclVzZXJNZWRpYVN1Y2Nl
c3NDYWxsYmFjay5pZGwKICAgICBNb2R1bGVzL21lZGlhc3RyZWFtL1JUQ0NvbmZpZ3VyYXRpb24u
aWRsCiAgICAgTW9kdWxlcy9tZWRpYXN0cmVhbS9SVENEVE1GU2VuZGVyLmlkbAogICAgIE1vZHVs
ZXMvbWVkaWFzdHJlYW0vUlRDRFRNRlRvbmVDaGFuZ2VFdmVudC5pZGwKQEAgLTEyMDEsNyArMTE5
OSw2IEBAIHNldChXZWJDb3JlX1NPVVJDRVMKICAgICBiaW5kaW5ncy9qcy9KU011dGF0aW9uQ2Fs
bGJhY2suY3BwCiAgICAgYmluZGluZ3MvanMvSlNNdXRhdGlvbk9ic2VydmVyQ3VzdG9tLmNwcAog
ICAgIGJpbmRpbmdzL2pzL0pTTmFtZWROb2RlTWFwQ3VzdG9tLmNwcAotICAgIGJpbmRpbmdzL2pz
L0pTTmF2aWdhdG9yQ3VzdG9tLmNwcAogICAgIGJpbmRpbmdzL2pzL0pTTm9kZUN1c3RvbS5jcHAK
ICAgICBiaW5kaW5ncy9qcy9KU05vZGVGaWx0ZXJDdXN0b20uY3BwCiAgICAgYmluZGluZ3MvanMv
SlNOb2RlSXRlcmF0b3JDdXN0b20uY3BwCkBAIC0zMzUzLDYgKzMzNTAsNyBAQCBzZXQoREVESUNB
VEVEV09SS0VSR0xPQkFMU0NPUEVfQ09OU1RSVUNUT1JTX0ZJTEUgJHtERVJJVkVEX1NPVVJDRVNf
V0VCQ09SRV9ESVJ9Lwogc2V0KElETF9BVFRSSUJVVEVTX0ZJTEUgJHtXRUJDT1JFX0RJUn0vYmlu
ZGluZ3Mvc2NyaXB0cy9JRExBdHRyaWJ1dGVzLnR4dCkKIAogc2V0KFdFQkNPUkVfSlNfQlVJTFRJ
TlMKKyAgICAke1dFQkNPUkVfRElSfS9Nb2R1bGVzL21lZGlhc3RyZWFtL05hdmlnYXRvclVzZXJN
ZWRpYS5qcwogICAgICR7V0VCQ09SRV9ESVJ9L01vZHVsZXMvc3RyZWFtcy9CeXRlTGVuZ3RoUXVl
dWluZ1N0cmF0ZWd5LmpzCiAgICAgJHtXRUJDT1JFX0RJUn0vTW9kdWxlcy9zdHJlYW1zL0NvdW50
UXVldWluZ1N0cmF0ZWd5LmpzCiAgICAgJHtXRUJDT1JFX0RJUn0vTW9kdWxlcy9zdHJlYW1zL1Jl
YWRhYmxlU3RyZWFtLmpzCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9EZXJpdmVkU291cmNl
cy5tYWtlIGIvU291cmNlL1dlYkNvcmUvRGVyaXZlZFNvdXJjZXMubWFrZQppbmRleCA0NjY1NGYy
YWQzMTg4OWRiMzQyNTdiZmQ4YzhmYWM5M2UyZGYwNGI1Li4yOTNjMTlmZTUxNDgwNGQ0ODY5OTcz
ZGM3MTEwOTI1YWEwZjE4NTA3IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9EZXJpdmVkU291
cmNlcy5tYWtlCisrKyBiL1NvdXJjZS9XZWJDb3JlL0Rlcml2ZWRTb3VyY2VzLm1ha2UKQEAgLTEz
Nyw4ICsxMzcsNiBAQCBOT05fU1ZHX0JJTkRJTkdfSURMUyA9IFwKICAgICAkKFdlYkNvcmUpL01v
ZHVsZXMvbWVkaWFzdHJlYW0vTmF2aWdhdG9yTWVkaWFEZXZpY2VzLmlkbCBcCiAgICAgJChXZWJD
b3JlKS9Nb2R1bGVzL21lZGlhc3RyZWFtL05hdmlnYXRvclVzZXJNZWRpYS5pZGwgXAogICAgICQo
V2ViQ29yZSkvTW9kdWxlcy9tZWRpYXN0cmVhbS9OYXZpZ2F0b3JVc2VyTWVkaWFFcnJvci5pZGwg
XAotICAgICQoV2ViQ29yZSkvTW9kdWxlcy9tZWRpYXN0cmVhbS9OYXZpZ2F0b3JVc2VyTWVkaWFF
cnJvckNhbGxiYWNrLmlkbCBcCi0gICAgJChXZWJDb3JlKS9Nb2R1bGVzL21lZGlhc3RyZWFtL05h
dmlnYXRvclVzZXJNZWRpYVN1Y2Nlc3NDYWxsYmFjay5pZGwgXAogICAgICQoV2ViQ29yZSkvTW9k
dWxlcy9tZWRpYXN0cmVhbS9SVENDb25maWd1cmF0aW9uLmlkbCBcCiAgICAgJChXZWJDb3JlKS9N
b2R1bGVzL21lZGlhc3RyZWFtL1JUQ0RUTUZTZW5kZXIuaWRsIFwKICAgICAkKFdlYkNvcmUpL01v
ZHVsZXMvbWVkaWFzdHJlYW0vUlRDRFRNRlRvbmVDaGFuZ2VFdmVudC5pZGwgXApAQCAtMTI1Miw2
ICsxMjUwLDcgQEAgV2ViUmVwbGF5SW5wdXRzLmggOiAkKElOUFVUX0dFTkVSQVRPUl9TUEVDSUZJ
Q0FUSU9OUykgJChJTlBVVF9HRU5FUkFUT1JfU0NSSVBUUykKICMgV2ViQ29yZSBKUyBCdWlsdGlu
cwogCiBXRUJDT1JFX0pTX0JVSUxUSU5TID0gXAorICAgICQoV2ViQ29yZSkvTW9kdWxlcy9tZWRp
YXN0cmVhbS9OYXZpZ2F0b3JVc2VyTWVkaWEuanMgXAogICAgICQoV2ViQ29yZSkvTW9kdWxlcy9z
dHJlYW1zL0J5dGVMZW5ndGhRdWV1aW5nU3RyYXRlZ3kuanMgXAogICAgICQoV2ViQ29yZSkvTW9k
dWxlcy9zdHJlYW1zL0NvdW50UXVldWluZ1N0cmF0ZWd5LmpzIFwKICAgICAkKFdlYkNvcmUpL01v
ZHVsZXMvc3RyZWFtcy9SZWFkYWJsZVN0cmVhbS5qcyBcCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
Q29yZS9Nb2R1bGVzL21lZGlhc3RyZWFtL05hdmlnYXRvclVzZXJNZWRpYS5pZGwgYi9Tb3VyY2Uv
V2ViQ29yZS9Nb2R1bGVzL21lZGlhc3RyZWFtL05hdmlnYXRvclVzZXJNZWRpYS5pZGwKaW5kZXgg
NGM2NWNiN2FlMTJjNDNhYTRiMzk0ZmYzZDNlZjRjOWY5MTY1Zjg2NS4uM2FhNDkzZjBmOTU5YmFk
MjI5YmUxYzk0YThmMTFiYTUyOTQ1MTdhMCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvTW9k
dWxlcy9tZWRpYXN0cmVhbS9OYXZpZ2F0b3JVc2VyTWVkaWEuaWRsCisrKyBiL1NvdXJjZS9XZWJD
b3JlL01vZHVsZXMvbWVkaWFzdHJlYW0vTmF2aWdhdG9yVXNlck1lZGlhLmlkbApAQCAtMjAsOCAr
MjAsNiBAQAogWwogICAgIENvbmRpdGlvbmFsPU1FRElBX1NUUkVBTSwKIF0gcGFydGlhbCBpbnRl
cmZhY2UgTmF2aWdhdG9yIHsKLSAgICBbQ3VzdG9tLCBSYWlzZXNFeGNlcHRpb25dIHZvaWQgd2Vi
a2l0R2V0VXNlck1lZGlhKERpY3Rpb25hcnkgb3B0aW9ucywKLSAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICBOYXZpZ2F0b3JVc2VyTWVkaWFTdWNjZXNzQ2Fs
bGJhY2sgc3VjY2Vzc0NhbGxiYWNrLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgIG9wdGlvbmFsIE5hdmlnYXRvclVzZXJNZWRpYUVycm9yQ2FsbGJhY2sg
ZXJyb3JDYWxsYmFjayk7CisgICAgW0pTQnVpbHRpbl0gdm9pZCB3ZWJraXRHZXRVc2VyTWVkaWEo
RGljdGlvbmFyeSBvYmplY3QsIGFueSBzdWNjZXNzQ2FsbGJhY2ssIGFueSBlcnJvckNhbGxiYWNr
KTsKIH07CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvbWVkaWFzdHJlYW0v
TmF2aWdhdG9yVXNlck1lZGlhLmpzIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9tZWRpYXN0cmVh
bS9OYXZpZ2F0b3JVc2VyTWVkaWEuanMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uODcxN2YxOWZkMmE4MGYwMTEwY2Qy
MzNkYmI3NTMwNDYxZjA2NGZlYQotLS0gL2Rldi9udWxsCisrKyBiL1NvdXJjZS9XZWJDb3JlL01v
ZHVsZXMvbWVkaWFzdHJlYW0vTmF2aWdhdG9yVXNlck1lZGlhLmpzCkBAIC0wLDAgKzEsNDYgQEAK
Ky8qCisgKiBDb3B5cmlnaHQgKEMpIDIwMTUgQ2Fub24gSW5jLgorICoKKyAqIFJlZGlzdHJpYnV0
aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAor
ICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2lu
ZyBjb25kaXRpb25zCisgKiBhcmUgbWV0OgorICogMS4gUmVkaXN0cmlidXRpb25zIG9mIHNvdXJj
ZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhp
cyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKyAqIDIu
IFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUg
Y29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUg
Zm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCisgKiAgICBkb2N1bWVudGF0aW9uIGFuZC9vciBv
dGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgorICoKKyAqIFRI
SVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgQVBQTEUgSU5DLiBgYEFTIElTJycgQU5EIEFOWQor
ICogRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1J
VEVEIFRPLCBUSEUKKyAqIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5E
IEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUgorICogUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gIElO
IE5PIEVWRU5UIFNIQUxMIEFQUExFIElOQy4gT1IKKyAqIENPTlRSSUJVVE9SUyBCRSBMSUFCTEUg
Rk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLAorICogRVhFTVBM
QVJZLCBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVE
IFRPLAorICogUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9T
UyBPRiBVU0UsIERBVEEsIE9SCisgKiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04p
IEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhFT1JZCisgKiBPRiBMSUFCSUxJVFksIFdIRVRI
RVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQKKyAqIChJTkNMVURJTkcg
TkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVT
RQorICogT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElU
WSBPRiBTVUNIIERBTUFHRS4KKyAqLworCitmdW5jdGlvbiB3ZWJraXRHZXRVc2VyTWVkaWEob3B0
aW9ucywgc3VjY2Vzc0NhbGxiYWNrLCBlcnJvckNhbGxiYWNrKQoreworICAgICJ1c2Ugc3RyaWN0
IjsKKworICAgIGlmIChhcmd1bWVudHMubGVuZ3RoIDwgMykKKyAgICAgICAgdGhyb3cgbmV3IEBU
eXBlRXJyb3IoIk5vdCBlbm91Z2ggYXJndW1lbnRzIik7CisKKyAgICBpZiAob3B0aW9ucyAhPT0g
T2JqZWN0KG9wdGlvbnMpKQorICAgICAgICB0aHJvdyBuZXcgQFR5cGVFcnJvcigiQXJndW1lbnQg
MSAob3B0aW9ucykgdG8gTmF2aWdhdG9yLndlYmtpdEdldFVzZXJNZWRpYSBtdXN0IGJlIGFuIG9i
amVjdCIpOworCisgICAgaWYgKHR5cGVvZiBzdWNjZXNzQ2FsbGJhY2sgIT09ICJmdW5jdGlvbiIp
CisgICAgICAgIHRocm93IG5ldyBAVHlwZUVycm9yKCJBcmd1bWVudCAyICgnc3VjY2Vzc0NhbGxi
YWNrJykgdG8gTmF2aWdhdG9yLndlYmtpdEdldFVzZXJNZWRpYSBtdXN0IGJlIGEgZnVuY3Rpb24i
KTsKKyAgICBpZiAodHlwZW9mIGVycm9yQ2FsbGJhY2sgIT09ICJmdW5jdGlvbiIpCisgICAgICAg
IHRocm93IG5ldyBAVHlwZUVycm9yKCJBcmd1bWVudCAzICgnZXJyb3JDYWxsYmFjaycpIHRvIE5h
dmlnYXRvci53ZWJraXRHZXRVc2VyTWVkaWEgbXVzdCBiZSBhIGZ1bmN0aW9uIik7CisKKyAgICAv
LyBGSVhNRTogV2Ugc2hvdWxkIHJhaXNlIGEgRE9NIHVuc3VwcG9ydGVkIGV4Y2VwdGlvbiBpZiB0
aGVyZSBpcyBubyBuYXZpZ2F0b3IuCisgICAgaWYgKCFuYXZpZ2F0b3IpCisgICAgICAgIHRocm93
IG5ldyBAVHlwZUVycm9yKCJUaGUgaW1wbGVtZW50YXRpb24gZGlkIG5vdCBzdXBwb3J0IHRoZSBy
ZXF1ZXN0ZWQgdHlwZSBvZiBvYmplY3Qgb3Igb3BlcmF0aW9uLiIpOworCisgICAgQGdldFVzZXJN
ZWRpYS5AY2FsbChuYXZpZ2F0b3IubWVkaWFEZXZpY2VzLCBvcHRpb25zKS50aGVuKHN1Y2Nlc3ND
YWxsYmFjaywgZXJyb3JDYWxsYmFjayk7Cit9CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9N
b2R1bGVzL21lZGlhc3RyZWFtL05hdmlnYXRvclVzZXJNZWRpYUVycm9yQ2FsbGJhY2suaCBiL1Nv
dXJjZS9XZWJDb3JlL01vZHVsZXMvbWVkaWFzdHJlYW0vTmF2aWdhdG9yVXNlck1lZGlhRXJyb3JD
YWxsYmFjay5oCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCBkZDNjOGIzMmI2ZWM3Yzgw
NjFkNjI0MjExM2U5ZDA4NjQxZjVhYTA5Li4wMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwCi0tLSBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvbWVkaWFzdHJlYW0vTmF2aWdh
dG9yVXNlck1lZGlhRXJyb3JDYWxsYmFjay5oCisrKyAvZGV2L251bGwKQEAgLTEsNDUgKzAsMCBA
QAotLyoKLSAqIENvcHlyaWdodCAoQykgMjAxMSBHb29nbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2Vy
dmVkLgotICoKLSAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkg
Zm9ybXMsIHdpdGggb3Igd2l0aG91dAotICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHBy
b3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCi0gKiBhcmUgbWV0OgotICogMS4g
IFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29w
eXJpZ2h0Ci0gKiAgICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZv
bGxvd2luZyBkaXNjbGFpbWVyLgotICogMi4gIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9y
bSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0Ci0gKiAgICAgbm90aWNlLCB0aGlz
IGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQot
ICogICAgIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRo
IHRoZSBkaXN0cmlidXRpb24uCi0gKgotICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBB
UFBMRSBJTkMuIEFORCBJVFMgQ09OVFJJQlVUT1JTIGBgQVMgSVMnJyBBTkQgQU5ZCi0gKiBFWFBS
RVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8s
IFRIRSBJTVBMSUVECi0gKiBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVT
UyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UgQVJFCi0gKiBESVNDTEFJTUVELiBJTiBOTyBFVkVO
VCBTSEFMTCBBUFBMRSBJTkMuIE9SIElUUyBDT05UUklCVVRPUlMgQkUgTElBQkxFIEZPUiBBTlkK
LSAqIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1Ig
Q09OU0VRVUVOVElBTCBEQU1BR0VTCi0gKiAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8s
IFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7Ci0gKiBMT1NTIE9G
IFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVS
IENBVVNFRCBBTkQgT04KLSAqIEFOWSBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENP
TlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUCi0gKiAoSU5DTFVESU5HIE5FR0xJR0VO
Q0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UgT0YgVEhJ
UwotICogU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VD
SCBEQU1BR0UuCi0gKi8KLQotI2lmbmRlZiBOYXZpZ2F0b3JVc2VyTWVkaWFFcnJvckNhbGxiYWNr
X2gKLSNkZWZpbmUgTmF2aWdhdG9yVXNlck1lZGlhRXJyb3JDYWxsYmFja19oCi0KLSNpZiBFTkFC
TEUoTUVESUFfU1RSRUFNKQotCi0jaW5jbHVkZSAiTmF2aWdhdG9yVXNlck1lZGlhRXJyb3IuaCIK
LSNpbmNsdWRlIDx3dGYvUmVmQ291bnRlZC5oPgotCi1uYW1lc3BhY2UgV2ViQ29yZSB7Ci0KLWNs
YXNzIE5hdmlnYXRvclVzZXJNZWRpYUVycm9yQ2FsbGJhY2sgOiBwdWJsaWMgUmVmQ291bnRlZDxO
YXZpZ2F0b3JVc2VyTWVkaWFFcnJvckNhbGxiYWNrPiB7Ci1wdWJsaWM6Ci0gICAgdmlydHVhbCB+
TmF2aWdhdG9yVXNlck1lZGlhRXJyb3JDYWxsYmFjaygpIHsgfQotICAgIHZpcnR1YWwgYm9vbCBo
YW5kbGVFdmVudChOYXZpZ2F0b3JVc2VyTWVkaWFFcnJvciopID0gMDsKLX07Ci0KLX0gLy8gbmFt
ZXNwYWNlIFdlYkNvcmUKLQotI2VuZGlmIC8vIEVOQUJMRShNRURJQV9TVFJFQU0pCi0KLSNlbmRp
ZiAvLyBOYXZpZ2F0b3JVc2VyTWVkaWFFcnJvckNhbGxiYWNrX2gKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJDb3JlL01vZHVsZXMvbWVkaWFzdHJlYW0vTmF2aWdhdG9yVXNlck1lZGlhRXJyb3JDYWxs
YmFjay5pZGwgYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL21lZGlhc3RyZWFtL05hdmlnYXRvclVz
ZXJNZWRpYUVycm9yQ2FsbGJhY2suaWRsCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCBm
MGFjN2RkMWJmOWEzZmUyZDJmY2YyMDEzZDY2MDQ3Y2VmM2M2ZmQxLi4wMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwCi0tLSBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvbWVk
aWFzdHJlYW0vTmF2aWdhdG9yVXNlck1lZGlhRXJyb3JDYWxsYmFjay5pZGwKKysrIC9kZXYvbnVs
bApAQCAtMSwzMSArMCwwIEBACi0vKgotICogQ29weXJpZ2h0IChDKSAyMDExIEdvb2dsZSBJbmMu
IEFsbCByaWdodHMgcmVzZXJ2ZWQuCi0gKgotICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBz
b3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0Ci0gKiBtb2RpZmljYXRpb24s
IGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKLSAq
IGFyZSBtZXQ6Ci0gKiAxLiAgUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0
YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKLSAqICAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25k
aXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCi0gKiAyLiAgUmVkaXN0cmlidXRp
b25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKLSAq
ICAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRp
c2NsYWltZXIgaW4gdGhlCi0gKiAgICAgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJp
YWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KLSAqCi0gKiBUSElTIFNPRlRXQVJF
IElTIFBST1ZJREVEIEJZIEFQUExFIElOQy4gQU5EIElUUyBDT05UUklCVVRPUlMgYGBBUyBJUycn
IEFORCBBTlkKLSAqIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJV
VCBOT1QgTElNSVRFRCBUTywgVEhFIElNUExJRUQKLSAqIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRB
QklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBUkUKLSAqIERJU0NM
QUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIEFQUExFIElOQy4gT1IgSVRTIENPTlRSSUJVVE9SUyBC
RSBMSUFCTEUgRk9SIEFOWQotICogRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lB
TCwgRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMKLSAqIChJTkNMVURJTkcsIEJV
VCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUiBTRVJW
SUNFUzsKLSAqIExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRF
UlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTgotICogQU5ZIFRIRU9SWSBPRiBMSUFCSUxJ
VFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQKLSAqIChJ
TkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQg
T0YgVEhFIFVTRSBPRiBUSElTCi0gKiBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQ
T1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KLSAqLwotCi1bCi0gICAgQ29uZGl0aW9uYWw9TUVE
SUFfU1RSRUFNLAotICAgIENhbGxiYWNrPUZ1bmN0aW9uT25seSwKLV0gY2FsbGJhY2sgaW50ZXJm
YWNlIE5hdmlnYXRvclVzZXJNZWRpYUVycm9yQ2FsbGJhY2sgewotICAgIGJvb2xlYW4gaGFuZGxl
RXZlbnQoTmF2aWdhdG9yVXNlck1lZGlhRXJyb3IgZXJyb3IpOwotfTsKLQpkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYkNvcmUvTW9kdWxlcy9tZWRpYXN0cmVhbS9OYXZpZ2F0b3JVc2VyTWVkaWFTdWNj
ZXNzQ2FsbGJhY2suaCBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvbWVkaWFzdHJlYW0vTmF2aWdh
dG9yVXNlck1lZGlhU3VjY2Vzc0NhbGxiYWNrLmgKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0Cmlu
ZGV4IDlmNDU2ZWFkYzZhZTQ5NDE4NmNmMDdjNmUyYTUyZTA0NzYzZjk5OTAuLjAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAKLS0tIGEvU291cmNlL1dlYkNvcmUvTW9kdWxl
cy9tZWRpYXN0cmVhbS9OYXZpZ2F0b3JVc2VyTWVkaWFTdWNjZXNzQ2FsbGJhY2suaAorKysgL2Rl
di9udWxsCkBAIC0xLDQ2ICswLDAgQEAKLS8qCi0gKiBDb3B5cmlnaHQgKEMpIDIwMTEgR29vZ2xl
IEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KLSAqCi0gKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNl
IGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKLSAqIG1vZGlmaWNh
dGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9u
cwotICogYXJlIG1ldDoKLSAqIDEuICBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVz
dCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAotICogICAgIG5vdGljZSwgdGhpcyBsaXN0IG9m
IGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KLSAqIDIuICBSZWRpc3Ry
aWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdo
dAotICogICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dp
bmcgZGlzY2xhaW1lciBpbiB0aGUKLSAqICAgICBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBt
YXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgotICoKLSAqIFRISVMgU09G
VFdBUkUgSVMgUFJPVklERUQgQlkgQVBQTEUgSU5DLiBBTkQgSVRTIENPTlRSSUJVVE9SUyBgYEFT
IElTJycgQU5EIEFOWQotICogRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElO
RywgQlVUIE5PVCBMSU1JVEVEIFRPLCBUSEUgSU1QTElFRAotICogV0FSUkFOVElFUyBPRiBNRVJD
SEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFSRQotICog
RElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgQVBQTEUgSU5DLiBPUiBJVFMgQ09OVFJJQlVU
T1JTIEJFIExJQUJMRSBGT1IgQU5ZCi0gKiBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBT
UEVDSUFMLCBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwgREFNQUdFUwotICogKElOQ0xVRElO
RywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9S
IFNFUlZJQ0VTOwotICogTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNT
IElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OCi0gKiBBTlkgVEhFT1JZIE9GIExJ
QUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVAot
ICogKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZ
IE9VVCBPRiBUSEUgVVNFIE9GIFRISVMKLSAqIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0Yg
VEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgotICovCi0KLSNpZm5kZWYgTmF2aWdhdG9y
VXNlck1lZGlhU3VjY2Vzc0NhbGxiYWNrX2gKLSNkZWZpbmUgTmF2aWdhdG9yVXNlck1lZGlhU3Vj
Y2Vzc0NhbGxiYWNrX2gKLQotI2lmIEVOQUJMRShNRURJQV9TVFJFQU0pCi0KLSNpbmNsdWRlIDx3
dGYvUmVmQ291bnRlZC5oPgotCi1uYW1lc3BhY2UgV2ViQ29yZSB7Ci0KLWNsYXNzIE1lZGlhU3Ry
ZWFtOwotCi1jbGFzcyBOYXZpZ2F0b3JVc2VyTWVkaWFTdWNjZXNzQ2FsbGJhY2sgOiBwdWJsaWMg
UmVmQ291bnRlZDxOYXZpZ2F0b3JVc2VyTWVkaWFTdWNjZXNzQ2FsbGJhY2s+IHsKLXB1YmxpYzoK
LSAgICB2aXJ0dWFsIH5OYXZpZ2F0b3JVc2VyTWVkaWFTdWNjZXNzQ2FsbGJhY2soKSB7IH0KLSAg
ICB2aXJ0dWFsIGJvb2wgaGFuZGxlRXZlbnQoTWVkaWFTdHJlYW0qKSA9IDA7Ci19OwotCi19IC8v
IG5hbWVzcGFjZSBXZWJDb3JlCi0KLSNlbmRpZiAvLyBFTkFCTEUoTUVESUFfU1RSRUFNKQotCi0j
ZW5kaWYgLy8gTmF2aWdhdG9yVXNlck1lZGlhU3VjY2Vzc0NhbGxiYWNrX2gKZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvbWVkaWFzdHJlYW0vTmF2aWdhdG9yVXNlck1lZGlhU3Vj
Y2Vzc0NhbGxiYWNrLmlkbCBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvbWVkaWFzdHJlYW0vTmF2
aWdhdG9yVXNlck1lZGlhU3VjY2Vzc0NhbGxiYWNrLmlkbApkZWxldGVkIGZpbGUgbW9kZSAxMDA2
NDQKaW5kZXggMmQxOTBjZjJlYjE5MjIwOTU4YThjZThiY2JmNzhkMzQ0Y2ZkMmU1MC4uMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9N
b2R1bGVzL21lZGlhc3RyZWFtL05hdmlnYXRvclVzZXJNZWRpYVN1Y2Nlc3NDYWxsYmFjay5pZGwK
KysrIC9kZXYvbnVsbApAQCAtMSwzMSArMCwwIEBACi0vKgotICogQ29weXJpZ2h0IChDKSAyMDEx
IEdvb2dsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi0gKgotICogUmVkaXN0cmlidXRpb24g
YW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0Ci0gKiBt
b2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNv
bmRpdGlvbnMKLSAqIGFyZSBtZXQ6Ci0gKiAxLiAgUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBj
b2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKLSAqICAgICBub3RpY2UsIHRoaXMg
bGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCi0gKiAyLiAg
UmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBj
b3B5cmlnaHQKLSAqICAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUg
Zm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCi0gKiAgICAgZG9jdW1lbnRhdGlvbiBhbmQvb3Ig
b3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KLSAqCi0gKiBU
SElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIEFQUExFIElOQy4gQU5EIElUUyBDT05UUklCVVRP
UlMgYGBBUyBJUycnIEFORCBBTlkKLSAqIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJ
TkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgVEhFIElNUExJRUQKLSAqIFdBUlJBTlRJRVMg
T0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBB
UkUKLSAqIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIEFQUExFIElOQy4gT1IgSVRTIENP
TlRSSUJVVE9SUyBCRSBMSUFCTEUgRk9SIEFOWQotICogRElSRUNULCBJTkRJUkVDVCwgSU5DSURF
TlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMKLSAqIChJ
TkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBH
T09EUyBPUiBTRVJWSUNFUzsKLSAqIExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBC
VVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTgotICogQU5ZIFRIRU9S
WSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9S
IFRPUlQKLSAqIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4g
QU5ZIFdBWSBPVVQgT0YgVEhFIFVTRSBPRiBUSElTCi0gKiBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJ
U0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KLSAqLwotCi1bCi0gICAgQ29u
ZGl0aW9uYWw9TUVESUFfU1RSRUFNLAotICAgIENhbGxiYWNrPUZ1bmN0aW9uT25seSwKLV0gY2Fs
bGJhY2sgaW50ZXJmYWNlIE5hdmlnYXRvclVzZXJNZWRpYVN1Y2Nlc3NDYWxsYmFjayB7Ci0gICAg
Ym9vbGVhbiBoYW5kbGVFdmVudChNZWRpYVN0cmVhbSBzdHJlYW0pOwotfTsKLQpkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9tZWRpYXN0cmVhbS9Vc2VyTWVkaWFSZXF1ZXN0LmNw
cCBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvbWVkaWFzdHJlYW0vVXNlck1lZGlhUmVxdWVzdC5j
cHAKaW5kZXggYzNmMzM4MGZhYmJmYmUxNWMzMTYyZjNiNzNkNzQ2YmVhYTY3N2ZhMy4uZDNmYzNi
ZmFhN2UyOWE4YTMxZDc3MTM5Y2FjYjc5Y2RhNDNlODcxNyAxMDA2NDQKLS0tIGEvU291cmNlL1dl
YkNvcmUvTW9kdWxlcy9tZWRpYXN0cmVhbS9Vc2VyTWVkaWFSZXF1ZXN0LmNwcAorKysgYi9Tb3Vy
Y2UvV2ViQ29yZS9Nb2R1bGVzL21lZGlhc3RyZWFtL1VzZXJNZWRpYVJlcXVlc3QuY3BwCkBAIC00
Nyw4ICs0Nyw2IEBACiAjaW5jbHVkZSAiTWVkaWFDb25zdHJhaW50c0ltcGwuaCIKICNpbmNsdWRl
ICJNZWRpYVN0cmVhbS5oIgogI2luY2x1ZGUgIk1lZGlhU3RyZWFtUHJpdmF0ZS5oIgotI2luY2x1
ZGUgIk5hdmlnYXRvclVzZXJNZWRpYUVycm9yQ2FsbGJhY2suaCIKLSNpbmNsdWRlICJOYXZpZ2F0
b3JVc2VyTWVkaWFTdWNjZXNzQ2FsbGJhY2suaCIKICNpbmNsdWRlICJSZWFsdGltZU1lZGlhU291
cmNlQ2VudGVyLmgiCiAjaW5jbHVkZSAiU2VjdXJpdHlPcmlnaW4uaCIKICNpbmNsdWRlICJVc2Vy
TWVkaWFDb250cm9sbGVyLmgiCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL21l
ZGlhc3RyZWFtL1VzZXJNZWRpYVJlcXVlc3QuaCBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvbWVk
aWFzdHJlYW0vVXNlck1lZGlhUmVxdWVzdC5oCmluZGV4IGRkMjAxMTNjYWM1NWQ3MTRlM2RjMjUz
NTE0YWI0MDNlNzI2MzgyMTYuLmVjZWE1OWE2Y2E2Y2U3YjM0MWNkYzA3NDcxYWFmMjQ5ZTJiZTUx
NjcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvbWVkaWFzdHJlYW0vVXNlck1l
ZGlhUmVxdWVzdC5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvbWVkaWFzdHJlYW0vVXNl
ck1lZGlhUmVxdWVzdC5oCkBAIC00OSw4ICs0OSw2IEBAIGNsYXNzIERvY3VtZW50OwogY2xhc3Mg
RnJhbWU7CiBjbGFzcyBNZWRpYUNvbnN0cmFpbnRzOwogY2xhc3MgTWVkaWFTdHJlYW1Qcml2YXRl
OwotY2xhc3MgTmF2aWdhdG9yVXNlck1lZGlhRXJyb3JDYWxsYmFjazsKLWNsYXNzIE5hdmlnYXRv
clVzZXJNZWRpYVN1Y2Nlc3NDYWxsYmFjazsKIGNsYXNzIFVzZXJNZWRpYUNvbnRyb2xsZXI7CiBj
bGFzcyBTZWN1cml0eU9yaWdpbjsKIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvV2ViQ29y
ZS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qIGIvU291cmNlL1dlYkNvcmUvV2ViQ29yZS54Y29k
ZXByb2ovcHJvamVjdC5wYnhwcm9qCmluZGV4IGY1MDE2ZDMyNDExOWU1NzNlYjc5ZjQxYWE4NjA3
Mzk2MzJjYzNkMjkuLmNkMzY3ODAwMjIyYTU0MGI5YTk1N2VkOTMzODM0MzU0NDU5MmI2OGYgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJv
agorKysgYi9Tb3VyY2UvV2ViQ29yZS9XZWJDb3JlLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2oK
QEAgLTE1Myw3ICsxNTMsNiBAQAogCQkwNzM3OTRFMjE5RUUyRDFCMDBFNUEwNDUgLyogTWVkaWFD
b25zdHJhaW50c01vY2suaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmls
ZVJlZiA9IDA3Mzc5NEUwMTlFRTJEMUIwMEU1QTA0NSAvKiBNZWRpYUNvbnN0cmFpbnRzTW9jay5o
ICovOyB9OwogCQkwNzM3OTRFNTE5RUUyRkYyMDBFNUEwNDUgLyogSlNSVENDb25maWd1cmF0aW9u
LmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDA3Mzc5
NEUzMTlFRTJGRjIwMEU1QTA0NSAvKiBKU1JUQ0NvbmZpZ3VyYXRpb24uY3BwICovOyB9OwogCQkw
NzM3OTRFNjE5RUUyRkYyMDBFNUEwNDUgLyogSlNSVENDb25maWd1cmF0aW9uLmggaW4gSGVhZGVy
cyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAwNzM3OTRFNDE5RUUyRkYyMDBF
NUEwNDUgLyogSlNSVENDb25maWd1cmF0aW9uLmggKi87IH07Ci0JCTA3Mzc5NEU4MTlFRTMzNUMw
MEU1QTA0NSAvKiBKU05hdmlnYXRvckN1c3RvbS5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQ
QlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAwNzM3OTRFNzE5RUUzMzVDMDBFNUEwNDUgLyogSlNOYXZp
Z2F0b3JDdXN0b20uY3BwICovOyB9OwogCQkwNzM3OTRFQjE5RUUzNDFFMDBFNUEwNDUgLyogSlNS
VENJY2VTZXJ2ZXIuY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxl
UmVmID0gMDczNzk0RTkxOUVFMzQxRTAwRTVBMDQ1IC8qIEpTUlRDSWNlU2VydmVyLmNwcCAqLzsg
fTsKIAkJMDczNzk0RUMxOUVFMzQxRTAwRTVBMDQ1IC8qIEpTUlRDSWNlU2VydmVyLmggaW4gSGVh
ZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAwNzM3OTRFQTE5RUUzNDFF
MDBFNUEwNDUgLyogSlNSVENJY2VTZXJ2ZXIuaCAqLzsgfTsKIAkJMDczNzk0RjExOUVFMzdCQjAw
RTVBMDQ1IC8qIFJUQ1BlZXJDb25uZWN0aW9uSGFuZGxlck1vY2suY3BwIGluIFNvdXJjZXMgKi8g
PSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMDczNzk0RUYxOUVFMzdCQjAwRTVBMDQ1
IC8qIFJUQ1BlZXJDb25uZWN0aW9uSGFuZGxlck1vY2suY3BwICovOyB9OwpAQCAtMTczLDEwICsx
NzIsNiBAQAogCQkwNzNCRTM0MTE3RDE3RTAxMDAyQkQ0MzEgLyogSlNOYXZpZ2F0b3JVc2VyTWVk
aWEuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDA3M0JF
MzNGMTdEMTdFMDEwMDJCRDQzMSAvKiBKU05hdmlnYXRvclVzZXJNZWRpYS5oICovOyBzZXR0aW5n
cyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CiAJCTA3M0JFMzQ4MTdEMTdFN0Ew
MDJCRDQzMSAvKiBKU05hdmlnYXRvclVzZXJNZWRpYUVycm9yLmNwcCBpbiBTb3VyY2VzICovID0g
e2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDA3M0JFMzQyMTdEMTdFN0EwMDJCRDQzMSAv
KiBKU05hdmlnYXRvclVzZXJNZWRpYUVycm9yLmNwcCAqLzsgfTsKIAkJMDczQkUzNDkxN0QxN0U3
QTAwMkJENDMxIC8qIEpTTmF2aWdhdG9yVXNlck1lZGlhRXJyb3IuaCBpbiBIZWFkZXJzICovID0g
e2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDA3M0JFMzQzMTdEMTdFN0EwMDJCRDQzMSAv
KiBKU05hdmlnYXRvclVzZXJNZWRpYUVycm9yLmggKi87IH07Ci0JCTA3M0JFMzRBMTdEMTdFN0Ew
MDJCRDQzMSAvKiBKU05hdmlnYXRvclVzZXJNZWRpYUVycm9yQ2FsbGJhY2suY3BwIGluIFNvdXJj
ZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMDczQkUzNDQxN0QxN0U3QTAw
MkJENDMxIC8qIEpTTmF2aWdhdG9yVXNlck1lZGlhRXJyb3JDYWxsYmFjay5jcHAgKi87IH07Ci0J
CTA3M0JFMzRCMTdEMTdFN0EwMDJCRDQzMSAvKiBKU05hdmlnYXRvclVzZXJNZWRpYUVycm9yQ2Fs
bGJhY2suaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDA3
M0JFMzQ1MTdEMTdFN0EwMDJCRDQzMSAvKiBKU05hdmlnYXRvclVzZXJNZWRpYUVycm9yQ2FsbGJh
Y2suaCAqLzsgfTsKLQkJMDczQkUzNEMxN0QxN0U3QTAwMkJENDMxIC8qIEpTTmF2aWdhdG9yVXNl
ck1lZGlhU3VjY2Vzc0NhbGxiYWNrLmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxk
RmlsZTsgZmlsZVJlZiA9IDA3M0JFMzQ2MTdEMTdFN0EwMDJCRDQzMSAvKiBKU05hdmlnYXRvclVz
ZXJNZWRpYVN1Y2Nlc3NDYWxsYmFjay5jcHAgKi87IH07Ci0JCTA3M0JFMzREMTdEMTdFN0EwMDJC
RDQzMSAvKiBKU05hdmlnYXRvclVzZXJNZWRpYVN1Y2Nlc3NDYWxsYmFjay5oIGluIEhlYWRlcnMg
Ki8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMDczQkUzNDcxN0QxN0U3QTAwMkJE
NDMxIC8qIEpTTmF2aWdhdG9yVXNlck1lZGlhU3VjY2Vzc0NhbGxiYWNrLmggKi87IH07CiAJCTA3
M0JFMzRFMTdEMTgwQjIwMDJCRDQzMSAvKiBSVENTZXNzaW9uRGVzY3JpcHRpb25EZXNjcmlwdG9y
LmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDA3MjIx
QkFCMTdDRjBBRDQwMDg0OEU1MSAvKiBSVENTZXNzaW9uRGVzY3JpcHRpb25EZXNjcmlwdG9yLmNw
cCAqLzsgfTsKIAkJMDczQkUzNEYxN0QxODE4MzAwMkJENDMxIC8qIFJUQ0ljZUNhbmRpZGF0ZURl
c2NyaXB0b3IuY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVm
ID0gMDcyMjFCQTYxN0NGMEFENDAwODQ4RTUxIC8qIFJUQ0ljZUNhbmRpZGF0ZURlc2NyaXB0b3Iu
Y3BwICovOyB9OwogCQkwNzNCRTM1MDE3RDE4MUE2MDAyQkQ0MzEgLyogUlRDUGVlckNvbm5lY3Rp
b25IYW5kbGVyLmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJl
ZiA9IDA3MjIxQkE4MTdDRjBBRDQwMDg0OEU1MSAvKiBSVENQZWVyQ29ubmVjdGlvbkhhbmRsZXIu
Y3BwICovOyB9OwpAQCAtMjQwLDggKzIzNSw2IEBACiAJCTA3OEUwOTE4MTdEMTREMUMwMDQyMEFB
MSAvKiBNZWRpYVN0cmVhbVRyYWNrLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZp
bGU7IGZpbGVSZWYgPSAwNzIyMUI1NTE3Q0VDMzI3MDA4NDhFNTEgLyogTWVkaWFTdHJlYW1UcmFj
ay5oICovOyB9OwogCQkwNzhFMDkxOTE3RDE0RDFDMDA0MjBBQTEgLyogTWVkaWFTdHJlYW1UcmFj
a0V2ZW50LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAw
NzIyMUI1ODE3Q0VDMzI3MDA4NDhFNTEgLyogTWVkaWFTdHJlYW1UcmFja0V2ZW50LmggKi87IHNl
dHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKIAkJMDc4RTA5MUIxN0Qx
NEQxQzAwNDIwQUExIC8qIE5hdmlnYXRvclVzZXJNZWRpYUVycm9yLmggaW4gSGVhZGVycyAqLyA9
IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAwNzIyMUI1RDE3Q0VDMzI3MDA4NDhFNTEg
LyogTmF2aWdhdG9yVXNlck1lZGlhRXJyb3IuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9
IChQcml2YXRlLCApOyB9OyB9OwotCQkwNzhFMDkxQzE3RDE0RDFDMDA0MjBBQTEgLyogTmF2aWdh
dG9yVXNlck1lZGlhRXJyb3JDYWxsYmFjay5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVp
bGRGaWxlOyBmaWxlUmVmID0gMDcyMjFCNUYxN0NFQzMyNzAwODQ4RTUxIC8qIE5hdmlnYXRvclVz
ZXJNZWRpYUVycm9yQ2FsbGJhY2suaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2
YXRlLCApOyB9OyB9OwotCQkwNzhFMDkxRDE3RDE0RDFDMDA0MjBBQTEgLyogTmF2aWdhdG9yVXNl
ck1lZGlhU3VjY2Vzc0NhbGxiYWNrLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZp
bGU7IGZpbGVSZWYgPSAwNzIyMUI2MTE3Q0VDMzI3MDA4NDhFNTEgLyogTmF2aWdhdG9yVXNlck1l
ZGlhU3VjY2Vzc0NhbGxiYWNrLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0
ZSwgKTsgfTsgfTsKIAkJMDc4RTA5MUUxN0QxNEQxQzAwNDIwQUExIC8qIFJUQ0RhdGFDaGFubmVs
LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAwNzIyMUI2
NDE3Q0VDMzI3MDA4NDhFNTEgLyogUlRDRGF0YUNoYW5uZWwuaCAqLzsgc2V0dGluZ3MgPSB7QVRU
UklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OwogCQkwNzhFMDkxRjE3RDE0RDFDMDA0MjBBQTEg
LyogUlRDRGF0YUNoYW5uZWxFdmVudC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRG
aWxlOyBmaWxlUmVmID0gMDcyMjFCNjcxN0NFQzMyNzAwODQ4RTUxIC8qIFJUQ0RhdGFDaGFubmVs
RXZlbnQuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9Owog
CQkwNzhFMDkyMDE3RDE0RDFDMDA0MjBBQTEgLyogUlRDRFRNRlNlbmRlci5oIGluIEhlYWRlcnMg
Ki8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMDcyMjFCNkExN0NFQzMyNzAwODQ4
RTUxIC8qIFJUQ0RUTUZTZW5kZXIuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2
YXRlLCApOyB9OyB9OwpAQCAtNzMxOCwxMCArNzMxMSw2IEBACiAJCTA3MjIxQjVDMTdDRUMzMjcw
MDg0OEU1MSAvKiBOYXZpZ2F0b3JVc2VyTWVkaWEuaWRsICovID0ge2lzYSA9IFBCWEZpbGVSZWZl
cmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gdGV4dDsgcGF0aCA9
IE5hdmlnYXRvclVzZXJNZWRpYS5pZGw7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTA3
MjIxQjVEMTdDRUMzMjcwMDg0OEU1MSAvKiBOYXZpZ2F0b3JVc2VyTWVkaWFFcnJvci5oICovID0g
e2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVU
eXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBOYXZpZ2F0b3JVc2VyTWVkaWFFcnJvci5oOyBz
b3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQkwNzIyMUI1RTE3Q0VDMzI3MDA4NDhFNTEgLyog
TmF2aWdhdG9yVXNlck1lZGlhRXJyb3IuaWRsICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7
IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gdGV4dDsgcGF0aCA9IE5hdmln
YXRvclVzZXJNZWRpYUVycm9yLmlkbDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKLQkJMDcy
MjFCNUYxN0NFQzMyNzAwODQ4RTUxIC8qIE5hdmlnYXRvclVzZXJNZWRpYUVycm9yQ2FsbGJhY2su
aCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25v
d25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gTmF2aWdhdG9yVXNlck1lZGlhRXJy
b3JDYWxsYmFjay5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwotCQkwNzIyMUI2MDE3Q0VD
MzI3MDA4NDhFNTEgLyogTmF2aWdhdG9yVXNlck1lZGlhRXJyb3JDYWxsYmFjay5pZGwgKi8gPSB7
aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5
cGUgPSB0ZXh0OyBwYXRoID0gTmF2aWdhdG9yVXNlck1lZGlhRXJyb3JDYWxsYmFjay5pZGw7IHNv
dXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07Ci0JCTA3MjIxQjYxMTdDRUMzMjcwMDg0OEU1MSAvKiBO
YXZpZ2F0b3JVc2VyTWVkaWFTdWNjZXNzQ2FsbGJhY2suaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVm
ZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUu
Yy5oOyBwYXRoID0gTmF2aWdhdG9yVXNlck1lZGlhU3VjY2Vzc0NhbGxiYWNrLmg7IHNvdXJjZVRy
ZWUgPSAiPGdyb3VwPiI7IH07Ci0JCTA3MjIxQjYyMTdDRUMzMjcwMDg0OEU1MSAvKiBOYXZpZ2F0
b3JVc2VyTWVkaWFTdWNjZXNzQ2FsbGJhY2suaWRsICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVu
Y2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gdGV4dDsgcGF0aCA9IE5h
dmlnYXRvclVzZXJNZWRpYVN1Y2Nlc3NDYWxsYmFjay5pZGw7IHNvdXJjZVRyZWUgPSAiPGdyb3Vw
PiI7IH07CiAJCTA3MjIxQjYzMTdDRUMzMjcwMDg0OEU1MSAvKiBSVENEYXRhQ2hhbm5lbC5jcHAg
Ki8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3du
RmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBSVENEYXRhQ2hhbm5lbC5jcHA7
IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTA3MjIxQjY0MTdDRUMzMjcwMDg0OEU1MSAv
KiBSVENEYXRhQ2hhbm5lbC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNv
ZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBSVENE
YXRhQ2hhbm5lbC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQkwNzIyMUI2NTE3Q0VD
MzI3MDA4NDhFNTEgLyogUlRDRGF0YUNoYW5uZWwuaWRsICovID0ge2lzYSA9IFBCWEZpbGVSZWZl
cmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gdGV4dDsgcGF0aCA9
IFJUQ0RhdGFDaGFubmVsLmlkbDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKQEAgLTc0MTEs
NyArNzQwMCw2IEBACiAJCTA3Mzc5NEUwMTlFRTJEMUIwMEU1QTA0NSAvKiBNZWRpYUNvbnN0cmFp
bnRzTW9jay5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7
IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBNZWRpYUNvbnN0cmFp
bnRzTW9jay5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQkwNzM3OTRFMzE5RUUyRkYy
MDBFNUEwNDUgLyogSlNSVENDb25maWd1cmF0aW9uLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVm
ZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUu
Y3BwLmNwcDsgcGF0aCA9IEpTUlRDQ29uZmlndXJhdGlvbi5jcHA7IHNvdXJjZVRyZWUgPSAiPGdy
b3VwPiI7IH07CiAJCTA3Mzc5NEU0MTlFRTJGRjIwMEU1QTA0NSAvKiBKU1JUQ0NvbmZpZ3VyYXRp
b24uaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0
S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gSlNSVENDb25maWd1cmF0aW9u
Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07Ci0JCTA3Mzc5NEU3MTlFRTMzNUMwMEU1QTA0
NSAvKiBKU05hdmlnYXRvckN1c3RvbS5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsg
ZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7
IHBhdGggPSBKU05hdmlnYXRvckN1c3RvbS5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07
CiAJCTA3Mzc5NEU5MTlFRTM0MUUwMEU1QTA0NSAvKiBKU1JUQ0ljZVNlcnZlci5jcHAgKi8gPSB7
aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5
cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBKU1JUQ0ljZVNlcnZlci5jcHA7IHNvdXJj
ZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTA3Mzc5NEVBMTlFRTM0MUUwMEU1QTA0NSAvKiBKU1JU
Q0ljZVNlcnZlci5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9
IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBKU1JUQ0ljZVNl
cnZlci5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQkwNzM3OTRFRDE5RUUzNjQyMDBF
NUEwNDUgLyogRE9NVVJMTWVkaWFTdHJlYW0uY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVu
Y2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAu
Y3BwOyBwYXRoID0gRE9NVVJMTWVkaWFTdHJlYW0uY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4i
OyB9OwpAQCAtNzQzMywxMCArNzQyMSw2IEBACiAJCTA3M0JFMzNGMTdEMTdFMDEwMDJCRDQzMSAv
KiBKU05hdmlnYXRvclVzZXJNZWRpYS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZp
bGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGgg
PSBKU05hdmlnYXRvclVzZXJNZWRpYS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQkw
NzNCRTM0MjE3RDE3RTdBMDAyQkQ0MzEgLyogSlNOYXZpZ2F0b3JVc2VyTWVkaWFFcnJvci5jcHAg
Ki8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3du
RmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBKU05hdmlnYXRvclVzZXJNZWRp
YUVycm9yLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJMDczQkUzNDMxN0QxN0U3
QTAwMkJENDMxIC8qIEpTTmF2aWdhdG9yVXNlck1lZGlhRXJyb3IuaCAqLyA9IHtpc2EgPSBQQlhG
aWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJj
ZWNvZGUuYy5oOyBwYXRoID0gSlNOYXZpZ2F0b3JVc2VyTWVkaWFFcnJvci5oOyBzb3VyY2VUcmVl
ID0gIjxncm91cD4iOyB9OwotCQkwNzNCRTM0NDE3RDE3RTdBMDAyQkQ0MzEgLyogSlNOYXZpZ2F0
b3JVc2VyTWVkaWFFcnJvckNhbGxiYWNrLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNl
OyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNw
cDsgcGF0aCA9IEpTTmF2aWdhdG9yVXNlck1lZGlhRXJyb3JDYWxsYmFjay5jcHA7IHNvdXJjZVRy
ZWUgPSAiPGdyb3VwPiI7IH07Ci0JCTA3M0JFMzQ1MTdEMTdFN0EwMDJCRDQzMSAvKiBKU05hdmln
YXRvclVzZXJNZWRpYUVycm9yQ2FsbGJhY2suaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNl
OyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBw
YXRoID0gSlNOYXZpZ2F0b3JVc2VyTWVkaWFFcnJvckNhbGxiYWNrLmg7IHNvdXJjZVRyZWUgPSAi
PGdyb3VwPiI7IH07Ci0JCTA3M0JFMzQ2MTdEMTdFN0EwMDJCRDQzMSAvKiBKU05hdmlnYXRvclVz
ZXJNZWRpYVN1Y2Nlc3NDYWxsYmFjay5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsg
ZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7
IHBhdGggPSBKU05hdmlnYXRvclVzZXJNZWRpYVN1Y2Nlc3NDYWxsYmFjay5jcHA7IHNvdXJjZVRy
ZWUgPSAiPGdyb3VwPiI7IH07Ci0JCTA3M0JFMzQ3MTdEMTdFN0EwMDJCRDQzMSAvKiBKU05hdmln
YXRvclVzZXJNZWRpYVN1Y2Nlc3NDYWxsYmFjay5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVu
Y2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7
IHBhdGggPSBKU05hdmlnYXRvclVzZXJNZWRpYVN1Y2Nlc3NDYWxsYmFjay5oOyBzb3VyY2VUcmVl
ID0gIjxncm91cD4iOyB9OwogCQkwNzRFODJCODE4QTY5RjBFMDA3RUY1NEMgLyogUGxhdGZvcm1U
aW1lUmFuZ2VzLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rpbmcg
PSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IFBsYXRm
b3JtVGltZVJhbmdlcy5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTA3NEU4MkI5
MThBNjlGMEUwMDdFRjU0QyAvKiBQbGF0Zm9ybVRpbWVSYW5nZXMuaCAqLyA9IHtpc2EgPSBQQlhG
aWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJj
ZWNvZGUuYy5oOyBwYXRoID0gUGxhdGZvcm1UaW1lUmFuZ2VzLmg7IHNvdXJjZVRyZWUgPSAiPGdy
b3VwPiI7IH07CiAJCTA3NTM4NjAwMTQ0ODlFOTgwMEI3ODQ1MiAvKiBDYWNoZWRUZXh0VHJhY2su
Y3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RL
bm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gQ2FjaGVkVGV4dFRyYWNr
LmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKQEAgLTg4MjAsNiArODgwNCw3IEBACiAJ
CTQxOUJFNzUzMUJDN0YzREIwMEUxQzg1QiAvKiBXZWJDb3JlSlNCdWlsdGluSW50ZXJuYWxzLmgg
Ki8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3du
RmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFdlYkNvcmVKU0J1aWx0aW5JbnRlcm5h
bHMuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJNDE5QkU3NTQxQkM3RjNEQjAwRTFD
ODVCIC8qIFdlYkNvcmVKU0J1aWx0aW5zLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNl
OyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNw
cDsgcGF0aCA9IFdlYkNvcmVKU0J1aWx0aW5zLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+Ijsg
fTsKIAkJNDE5QkU3NTUxQkM3RjNEQjAwRTFDODVCIC8qIFdlYkNvcmVKU0J1aWx0aW5zLmggKi8g
PSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmls
ZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFdlYkNvcmVKU0J1aWx0aW5zLmg7IHNvdXJj
ZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTQxOUJFNzVBMUJDQkQzRUQwMEUxQzg1QiAvKiBOYXZp
Z2F0b3JVc2VyTWVkaWEuanMgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29k
aW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmphdmFzY3JpcHQ7IHBhdGgg
PSBOYXZpZ2F0b3JVc2VyTWVkaWEuanM7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTQx
OUZBRkFEMUFCQUJDRDUwMDVCODI4QiAvKiBSZWFkYWJsZVN0cmVhbVJlYWRlci5pZGwgKi8gPSB7
aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5
cGUgPSB0ZXh0OyBwYXRoID0gUmVhZGFibGVTdHJlYW1SZWFkZXIuaWRsOyBzb3VyY2VUcmVlID0g
Ijxncm91cD4iOyB9OwogCQk0MUEwMjNFRDFBMzlEQjc5MDBGNzIyQ0YgLyogUmVhZGFibGVTdHJl
YW0uaWRsICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxh
c3RLbm93bkZpbGVUeXBlID0gdGV4dDsgcGF0aCA9IFJlYWRhYmxlU3RyZWFtLmlkbDsgc291cmNl
VHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJNDFBM0Q1OEMxMDFDMTUyRDAwMzE2RDA3IC8qIERlZGlj
YXRlZFdvcmtlclRocmVhZC5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVu
Y29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGgg
PSBEZWRpY2F0ZWRXb3JrZXJUaHJlYWQuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwpA
QCAtMTUwMDQsMTMgKzE0OTg5LDEwIEBACiAJCQkJNUVBNzI1Q0IxQUNBQkNCNTAwRUFEMTdCIC8q
IE5hdmlnYXRvck1lZGlhRGV2aWNlcy5oICovLAogCQkJCTVFQTcyNUNDMUFDQUJDQjUwMEVBRDE3
QiAvKiBOYXZpZ2F0b3JNZWRpYURldmljZXMuaWRsICovLAogCQkJCTA3MjIxQjVDMTdDRUMzMjcw
MDg0OEU1MSAvKiBOYXZpZ2F0b3JVc2VyTWVkaWEuaWRsICovLAorCQkJCTQxOUJFNzVBMUJDQkQz
RUQwMEUxQzg1QiAvKiBOYXZpZ2F0b3JVc2VyTWVkaWEuanMgKi8sCiAJCQkJMDcwMzI3RjcxN0VB
NEFBRjAwQ0UxMzE4IC8qIE5hdmlnYXRvclVzZXJNZWRpYUVycm9yLmNwcCAqLywKIAkJCQkwNzIy
MUI1RDE3Q0VDMzI3MDA4NDhFNTEgLyogTmF2aWdhdG9yVXNlck1lZGlhRXJyb3IuaCAqLywKIAkJ
CQkwNzIyMUI1RTE3Q0VDMzI3MDA4NDhFNTEgLyogTmF2aWdhdG9yVXNlck1lZGlhRXJyb3IuaWRs
ICovLAotCQkJCTA3MjIxQjVGMTdDRUMzMjcwMDg0OEU1MSAvKiBOYXZpZ2F0b3JVc2VyTWVkaWFF
cnJvckNhbGxiYWNrLmggKi8sCi0JCQkJMDcyMjFCNjAxN0NFQzMyNzAwODQ4RTUxIC8qIE5hdmln
YXRvclVzZXJNZWRpYUVycm9yQ2FsbGJhY2suaWRsICovLAotCQkJCTA3MjIxQjYxMTdDRUMzMjcw
MDg0OEU1MSAvKiBOYXZpZ2F0b3JVc2VyTWVkaWFTdWNjZXNzQ2FsbGJhY2suaCAqLywKLQkJCQkw
NzIyMUI2MjE3Q0VDMzI3MDA4NDhFNTEgLyogTmF2aWdhdG9yVXNlck1lZGlhU3VjY2Vzc0NhbGxi
YWNrLmlkbCAqLywKIAkJCQkwN0FCOTk2NTE4REEzQzAxMDAxODc3MUUgLyogUlRDQ29uZmlndXJh
dGlvbi5oICovLAogCQkJCTA3QUI5OTY2MThEQTNDMDEwMDE4NzcxRSAvKiBSVENDb25maWd1cmF0
aW9uLmlkbCAqLywKIAkJCQkwNzIyMUI2MzE3Q0VDMzI3MDA4NDhFNTEgLyogUlRDRGF0YUNoYW5u
ZWwuY3BwICovLApAQCAtMTUyMDgsMTAgKzE1MTkwLDYgQEAKIAkJCQkwNzNCRTMzRjE3RDE3RTAx
MDAyQkQ0MzEgLyogSlNOYXZpZ2F0b3JVc2VyTWVkaWEuaCAqLywKIAkJCQkwNzNCRTM0MjE3RDE3
RTdBMDAyQkQ0MzEgLyogSlNOYXZpZ2F0b3JVc2VyTWVkaWFFcnJvci5jcHAgKi8sCiAJCQkJMDcz
QkUzNDMxN0QxN0U3QTAwMkJENDMxIC8qIEpTTmF2aWdhdG9yVXNlck1lZGlhRXJyb3IuaCAqLywK
LQkJCQkwNzNCRTM0NDE3RDE3RTdBMDAyQkQ0MzEgLyogSlNOYXZpZ2F0b3JVc2VyTWVkaWFFcnJv
ckNhbGxiYWNrLmNwcCAqLywKLQkJCQkwNzNCRTM0NTE3RDE3RTdBMDAyQkQ0MzEgLyogSlNOYXZp
Z2F0b3JVc2VyTWVkaWFFcnJvckNhbGxiYWNrLmggKi8sCi0JCQkJMDczQkUzNDYxN0QxN0U3QTAw
MkJENDMxIC8qIEpTTmF2aWdhdG9yVXNlck1lZGlhU3VjY2Vzc0NhbGxiYWNrLmNwcCAqLywKLQkJ
CQkwNzNCRTM0NzE3RDE3RTdBMDAyQkQ0MzEgLyogSlNOYXZpZ2F0b3JVc2VyTWVkaWFTdWNjZXNz
Q2FsbGJhY2suaCAqLywKIAkJCQkwNzM3OTRFMzE5RUUyRkYyMDBFNUEwNDUgLyogSlNSVENDb25m
aWd1cmF0aW9uLmNwcCAqLywKIAkJCQkwNzM3OTRFNDE5RUUyRkYyMDBFNUEwNDUgLyogSlNSVEND
b25maWd1cmF0aW9uLmggKi8sCiAJCQkJMDc5NjlEOTExN0QxNDE1MTAwN0ZGODQyIC8qIEpTUlRD
RGF0YUNoYW5uZWwuY3BwICovLApAQCAtMjE4ODksNyArMjE4NjcsNiBAQAogCQkJCUExRTVCMzFE
MUFBRDFEQTQwMDZFQkVGQiAvKiBKU01vY2tDb250ZW50RmlsdGVyU2V0dGluZ3NDdXN0b20uY3Bw
ICovLAogCQkJCUM2RjA5MTdFMTQzQTJCQjkwMDY4NTg0OSAvKiBKU011dGF0aW9uT2JzZXJ2ZXJD
dXN0b20uY3BwICovLAogCQkJCUJDRDlDMjVGMEMxN0FBNjcwMDVDOTBBMiAvKiBKU05hbWVkTm9k
ZU1hcEN1c3RvbS5jcHAgKi8sCi0JCQkJMDczNzk0RTcxOUVFMzM1QzAwRTVBMDQ1IC8qIEpTTmF2
aWdhdG9yQ3VzdG9tLmNwcCAqLywKIAkJCQlCQ0Q5QzI2MDBDMTdBQTY3MDA1QzkwQTIgLyogSlNO
b2RlQ3VzdG9tLmNwcCAqLywKIAkJCQlCQzk0MzlDMjExNkNGNDk0MDA0OEM3NTAgLyogSlNOb2Rl
Q3VzdG9tLmggKi8sCiAJCQkJMUE3NTBERDMwQTkwRTcyOTAwMEZGMjE1IC8qIEpTTm9kZUl0ZXJh
dG9yQ3VzdG9tLmNwcCAqLywKQEAgLTI1OTY4LDggKzI1OTQ1LDYgQEAKIAkJCQlBOUQyNDdGODBE
NzU3RTM0MDBGREY5NTkgLyogSlNOYXZpZ2F0b3IuaCBpbiBIZWFkZXJzICovLAogCQkJCTA3M0JF
MzQxMTdEMTdFMDEwMDJCRDQzMSAvKiBKU05hdmlnYXRvclVzZXJNZWRpYS5oIGluIEhlYWRlcnMg
Ki8sCiAJCQkJMDczQkUzNDkxN0QxN0U3QTAwMkJENDMxIC8qIEpTTmF2aWdhdG9yVXNlck1lZGlh
RXJyb3IuaCBpbiBIZWFkZXJzICovLAotCQkJCTA3M0JFMzRCMTdEMTdFN0EwMDJCRDQzMSAvKiBK
U05hdmlnYXRvclVzZXJNZWRpYUVycm9yQ2FsbGJhY2suaCBpbiBIZWFkZXJzICovLAotCQkJCTA3
M0JFMzREMTdEMTdFN0EwMDJCRDQzMSAvKiBKU05hdmlnYXRvclVzZXJNZWRpYVN1Y2Nlc3NDYWxs
YmFjay5oIGluIEhlYWRlcnMgKi8sCiAJCQkJQkM5NDM5QzMxMTZDRjQ5NDAwNDhDNzUwIC8qIEpT
Tm9kZUN1c3RvbS5oIGluIEhlYWRlcnMgKi8sCiAJCQkJMTQxMTVCNzMwOUY4NENENjAwQ0E0RkMx
IC8qIEpTTm9kZUZpbHRlci5oIGluIEhlYWRlcnMgKi8sCiAJCQkJMUE3NTBEOEUwQTkwRTUyMTAw
MEZGMjE1IC8qIEpTTm9kZUl0ZXJhdG9yLmggaW4gSGVhZGVycyAqLywKQEAgLTI2NTE5LDggKzI2
NDk0LDYgQEAKIAkJCQk5NzExNDYwNDE0RUYwMDlBMDA2NzRGRDkgLyogTmF2aWdhdG9yR2VvbG9j
YXRpb24uaCBpbiBIZWFkZXJzICovLAogCQkJCTVFQTcyNUQ2MUFDQUJENTcwMEVBRDE3QiAvKiBO
YXZpZ2F0b3JNZWRpYURldmljZXMuaCBpbiBIZWFkZXJzICovLAogCQkJCTA3OEUwOTFCMTdEMTRE
MUMwMDQyMEFBMSAvKiBOYXZpZ2F0b3JVc2VyTWVkaWFFcnJvci5oIGluIEhlYWRlcnMgKi8sCi0J
CQkJMDc4RTA5MUMxN0QxNEQxQzAwNDIwQUExIC8qIE5hdmlnYXRvclVzZXJNZWRpYUVycm9yQ2Fs
bGJhY2suaCBpbiBIZWFkZXJzICovLAotCQkJCTA3OEUwOTFEMTdEMTREMUMwMDQyMEFBMSAvKiBO
YXZpZ2F0b3JVc2VyTWVkaWFTdWNjZXNzQ2FsbGJhY2suaCBpbiBIZWFkZXJzICovLAogCQkJCUEx
OUQ5MzQ2MUE5RkVDNzIwMEI0NkMyNCAvKiBORUZpbHRlclNvdXJjZVNQSS5oIGluIEhlYWRlcnMg
Ki8sCiAJCQkJOEEzMDlDOUYxMjM5NTBCRTAwQ0I5MjA0IC8qIE5lc3RpbmdMZXZlbEluY3JlbWVu
dGVyLmggaW4gSGVhZGVycyAqLywKIAkJCQk2NTZEMzc0MzBBREJBNURFMDBBNDU1NEQgLyogTmV0
c2NhcGVQbHVnSW5TdHJlYW1Mb2FkZXIuaCBpbiBIZWFkZXJzICovLApAQCAtMjk2MTksMTEgKzI5
NTkyLDggQEAKIAkJCQlCQ0Q5QzJDMDBDMTdCNjlFMDA1QzkwQTIgLyogSlNOYW1lZE5vZGVNYXAu
Y3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJQkNEOUMyNjMwQzE3QUE2NzAwNUM5MEEyIC8qIEpTTmFt
ZWROb2RlTWFwQ3VzdG9tLmNwcCBpbiBTb3VyY2VzICovLAogCQkJCUE5RDI0N0Y3MEQ3NTdFMzQw
MEZERjk1OSAvKiBKU05hdmlnYXRvci5jcHAgaW4gU291cmNlcyAqLywKLQkJCQkwNzM3OTRFODE5
RUUzMzVDMDBFNUEwNDUgLyogSlNOYXZpZ2F0b3JDdXN0b20uY3BwIGluIFNvdXJjZXMgKi8sCiAJ
CQkJMDczQkUzNDAxN0QxN0UwMTAwMkJENDMxIC8qIEpTTmF2aWdhdG9yVXNlck1lZGlhLmNwcCBp
biBTb3VyY2VzICovLAogCQkJCTA3M0JFMzQ4MTdEMTdFN0EwMDJCRDQzMSAvKiBKU05hdmlnYXRv
clVzZXJNZWRpYUVycm9yLmNwcCBpbiBTb3VyY2VzICovLAotCQkJCTA3M0JFMzRBMTdEMTdFN0Ew
MDJCRDQzMSAvKiBKU05hdmlnYXRvclVzZXJNZWRpYUVycm9yQ2FsbGJhY2suY3BwIGluIFNvdXJj
ZXMgKi8sCi0JCQkJMDczQkUzNEMxN0QxN0U3QTAwMkJENDMxIC8qIEpTTmF2aWdhdG9yVXNlck1l
ZGlhU3VjY2Vzc0NhbGxiYWNrLmNwcCBpbiBTb3VyY2VzICovLAogCQkJCTE0REMwRDM3MDlGRUQw
NzMwMDdCMDIzNSAvKiBKU05vZGUuY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJQkNEOUMyNjQwQzE3
QUE2NzAwNUM5MEEyIC8qIEpTTm9kZUN1c3RvbS5jcHAgaW4gU291cmNlcyAqLywKIAkJCQkxNDEx
NUI3MjA5Rjg0Q0Q2MDBDQTRGQzEgLyogSlNOb2RlRmlsdGVyLmNwcCBpbiBTb3VyY2VzICovLApk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvSlNET01XaW5kb3dCYXNlLmNw
cCBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0pTRE9NV2luZG93QmFzZS5jcHAKaW5kZXgg
MmFmOTc5OWVkMWViZWQ0ZmI5Y2I4ZDk0ZjY3NjhhYzk1NjJjZmMwMi4uYTU4YjI5NWQ3MzJmMzQx
MTRmM2M2ZDVmYjFlZGMyMDJjZGE0ZjliNCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYmlu
ZGluZ3MvanMvSlNET01XaW5kb3dCYXNlLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5n
cy9qcy9KU0RPTVdpbmRvd0Jhc2UuY3BwCkBAIC0zLDYgKzMsNyBAQAogICogIENvcHlyaWdodCAo
QykgMjAwNiBKb24gU2hpZXIgKGpzaGllckBpYXN0YXRlLmVkdSkKICAqICBDb3B5cmlnaHQgKEMp
IDIwMDMtMjAwOSwgMjAxNCBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXZlZC4KICAqICBDb3B5
cmlnaHQgKEMpIDIwMDYgQWxleGV5IFByb3NrdXJ5YWtvdiAoYXBAd2Via2l0Lm9yZykKKyAqICBD
b3B5cmlnaHQgKGMpIDIwMTUgQ2Fub24gSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgogICoKICAq
ICBUaGlzIGxpYnJhcnkgaXMgZnJlZSBzb2Z0d2FyZTsgeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQg
YW5kL29yCiAgKiAgbW9kaWZ5IGl0IHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05VIExlc3NlciBH
ZW5lcmFsIFB1YmxpYwpAQCAtNTIsNiArNTMsMTAgQEAKICNpbmNsdWRlICJSZWFkYWJsZVN0cmVh
bUludGVybmFsc0J1aWx0aW5zLmgiCiAjZW5kaWYKIAorI2lmIEVOQUJMRShNRURJQV9TVFJFQU0p
CisjaW5jbHVkZSAiSlNNZWRpYURldmljZXMuaCIKKyNlbmRpZgorCiB1c2luZyBuYW1lc3BhY2Ug
SlNDOwogCiBuYW1lc3BhY2UgV2ViQ29yZSB7CkBAIC04MSwxOSArODYsMjkgQEAgdm9pZCBKU0RP
TVdpbmRvd0Jhc2U6OmZpbmlzaENyZWF0aW9uKFZNJiB2bSwgSlNET01XaW5kb3dTaGVsbCogc2hl
bGwpCiAKICAgICBtX3ByaXZhdGVGdW5jdGlvbnMuaW5pdCgqdGhpcyk7CiAKKyNpZiBFTkFCTEUo
TUVESUFfU1RSRUFNKSB8fCBFTkFCTEUoU1RSRUFNU19BUEkpCisgICAgSlNWTUNsaWVudERhdGEm
IGNsaWVudERhdGEgPSAqc3RhdGljX2Nhc3Q8SlNWTUNsaWVudERhdGEqPih2bS5jbGllbnREYXRh
KTsKKyNlbmRpZgorI2lmIEVOQUJMRShNRURJQV9TVFJFQU0pCisgICAgSlNWYWx1ZSBnZXRVc2Vy
TWVkaWFGdW5jdGlvbiA9IGdldERPTVByb3RvdHlwZTxKU01lZGlhRGV2aWNlcz4odm0sIHRoaXMp
LT5nZXQoZ2xvYmFsRXhlYygpLCBjbGllbnREYXRhLmJ1aWx0aW5OYW1lcygpLmdldFVzZXJNZWRp
YVB1YmxpY05hbWUoKSk7CisgICAgQVNTRVJUKCEhZ2V0VXNlck1lZGlhRnVuY3Rpb24pOworI2Vu
ZGlmCisKICAgICBHbG9iYWxQcm9wZXJ0eUluZm8gc3RhdGljR2xvYmFsc1tdID0gewogICAgICAg
ICBHbG9iYWxQcm9wZXJ0eUluZm8odm0ucHJvcGVydHlOYW1lcy0+ZG9jdW1lbnQsIGpzTnVsbCgp
LCBEb250RGVsZXRlIHwgUmVhZE9ubHkpLAogICAgICAgICBHbG9iYWxQcm9wZXJ0eUluZm8odm0u
cHJvcGVydHlOYW1lcy0+d2luZG93LCBtX3NoZWxsLCBEb250RGVsZXRlIHwgUmVhZE9ubHkpLAor
I2lmIEVOQUJMRShNRURJQV9TVFJFQU0pCisgICAgICAgIEdsb2JhbFByb3BlcnR5SW5mbyhjbGll
bnREYXRhLmJ1aWx0aW5OYW1lcygpLmdldFVzZXJNZWRpYVByaXZhdGVOYW1lKCksIGdldFVzZXJN
ZWRpYUZ1bmN0aW9uLCBEb250RGVsZXRlIHwgUmVhZE9ubHkpLAorI2VuZGlmCiAjaWYgRU5BQkxF
KFNUUkVBTVNfQVBJKQotICAgICAgICBHbG9iYWxQcm9wZXJ0eUluZm8oc3RhdGljX2Nhc3Q8SlNW
TUNsaWVudERhdGEqPih2bS5jbGllbnREYXRhKS0+YnVpbHRpbk5hbWVzKCkucmVhZGFibGVTdHJl
YW1DbG9zZWRQcml2YXRlTmFtZSgpLCBqc051bWJlcigxKSwgRG9udERlbGV0ZSB8IFJlYWRPbmx5
KSwKLSAgICAgICAgR2xvYmFsUHJvcGVydHlJbmZvKHN0YXRpY19jYXN0PEpTVk1DbGllbnREYXRh
Kj4odm0uY2xpZW50RGF0YSktPmJ1aWx0aW5OYW1lcygpLnJlYWRhYmxlU3RyZWFtRXJyb3JlZFBy
aXZhdGVOYW1lKCksIGpzTnVtYmVyKDIpLCBEb250RGVsZXRlIHwgUmVhZE9ubHkpLAotICAgICAg
ICBHbG9iYWxQcm9wZXJ0eUluZm8oc3RhdGljX2Nhc3Q8SlNWTUNsaWVudERhdGEqPih2bS5jbGll
bnREYXRhKS0+YnVpbHRpbk5hbWVzKCkucmVhZGFibGVTdHJlYW1SZWFkYWJsZVByaXZhdGVOYW1l
KCksIGpzTnVtYmVyKDMpLCBEb250RGVsZXRlIHwgUmVhZE9ubHkpLAotICAgICAgICBHbG9iYWxQ
cm9wZXJ0eUluZm8oc3RhdGljX2Nhc3Q8SlNWTUNsaWVudERhdGEqPih2bS5jbGllbnREYXRhKS0+
YnVpbHRpbk5hbWVzKCkuUmVhZGFibGVTdHJlYW1Db250cm9sbGVyUHJpdmF0ZU5hbWUoKSwgY3Jl
YXRlUmVhZGFibGVTdHJlYW1Db250cm9sbGVyUHJpdmF0ZUNvbnN0cnVjdG9yKHZtLCAqdGhpcyks
IERvbnREZWxldGUgfCBSZWFkT25seSksCi0gICAgICAgIEdsb2JhbFByb3BlcnR5SW5mbyhzdGF0
aWNfY2FzdDxKU1ZNQ2xpZW50RGF0YSo+KHZtLmNsaWVudERhdGEpLT5idWlsdGluTmFtZXMoKS5S
ZWFkYWJsZVN0cmVhbVJlYWRlclByaXZhdGVOYW1lKCksIGNyZWF0ZVJlYWRhYmxlU3RyZWFtUmVh
ZGVyUHJpdmF0ZUNvbnN0cnVjdG9yKHZtLCAqdGhpcyksIERvbnREZWxldGUgfCBSZWFkT25seSks
CisgICAgICAgIEdsb2JhbFByb3BlcnR5SW5mbyhjbGllbnREYXRhLmJ1aWx0aW5OYW1lcygpLnJl
YWRhYmxlU3RyZWFtQ2xvc2VkUHJpdmF0ZU5hbWUoKSwganNOdW1iZXIoMSksIERvbnREZWxldGUg
fCBSZWFkT25seSksCisgICAgICAgIEdsb2JhbFByb3BlcnR5SW5mbyhjbGllbnREYXRhLmJ1aWx0
aW5OYW1lcygpLnJlYWRhYmxlU3RyZWFtRXJyb3JlZFByaXZhdGVOYW1lKCksIGpzTnVtYmVyKDIp
LCBEb250RGVsZXRlIHwgUmVhZE9ubHkpLAorICAgICAgICBHbG9iYWxQcm9wZXJ0eUluZm8oY2xp
ZW50RGF0YS5idWlsdGluTmFtZXMoKS5yZWFkYWJsZVN0cmVhbVJlYWRhYmxlUHJpdmF0ZU5hbWUo
KSwganNOdW1iZXIoMyksIERvbnREZWxldGUgfCBSZWFkT25seSksCisgICAgICAgIEdsb2JhbFBy
b3BlcnR5SW5mbyhjbGllbnREYXRhLmJ1aWx0aW5OYW1lcygpLlJlYWRhYmxlU3RyZWFtQ29udHJv
bGxlclByaXZhdGVOYW1lKCksIGNyZWF0ZVJlYWRhYmxlU3RyZWFtQ29udHJvbGxlclByaXZhdGVD
b25zdHJ1Y3Rvcih2bSwgKnRoaXMpLCBEb250RGVsZXRlIHwgUmVhZE9ubHkpLAorICAgICAgICBH
bG9iYWxQcm9wZXJ0eUluZm8oY2xpZW50RGF0YS5idWlsdGluTmFtZXMoKS5SZWFkYWJsZVN0cmVh
bVJlYWRlclByaXZhdGVOYW1lKCksIGNyZWF0ZVJlYWRhYmxlU3RyZWFtUmVhZGVyUHJpdmF0ZUNv
bnN0cnVjdG9yKHZtLCAqdGhpcyksIERvbnREZWxldGUgfCBSZWFkT25seSksCiAjZGVmaW5lIERF
Q0xBUkVfR0xPQkFMX1NUQVRJQyhuYW1lKVwKICAgICAgICAgR2xvYmFsUHJvcGVydHlJbmZvKFwK
LSAgICAgICAgICAgIHN0YXRpY19jYXN0PEpTVk1DbGllbnREYXRhKj4odm0uY2xpZW50RGF0YSkt
PmJ1aWx0aW5GdW5jdGlvbnMoKS5yZWFkYWJsZVN0cmVhbUludGVybmFsc0J1aWx0aW5zKCkubmFt
ZSMjUHJpdmF0ZU5hbWUoKSwgXAotICAgICAgICAgICAgbV9wcml2YXRlRnVuY3Rpb25zLnJlYWRh
YmxlU3RyZWFtSW50ZXJuYWxzKCkubV8jI25hbWUjI0Z1bmN0aW9uLmdldCgpICwgRG9udERlbGV0
ZSB8IFJlYWRPbmx5KSwKKyAgICAgICAgICAgIGNsaWVudERhdGEuYnVpbHRpbkZ1bmN0aW9ucygp
LnJlYWRhYmxlU3RyZWFtSW50ZXJuYWxzQnVpbHRpbnMoKS5uYW1lIyNQcml2YXRlTmFtZSgpLCBt
X3ByaXZhdGVGdW5jdGlvbnMucmVhZGFibGVTdHJlYW1JbnRlcm5hbHMoKS5tXyMjbmFtZSMjRnVu
Y3Rpb24uZ2V0KCkgLCBEb250RGVsZXRlIHwgUmVhZE9ubHkpLAogICAgICAgICBXRUJDT1JFUkVB
REFCTEVTVFJFQU1JTlRFUk5BTFNfRk9SRUFDSF9CVUlMVElOX0ZVTkNUSU9OX05BTUUoREVDTEFS
RV9HTE9CQUxfU1RBVElDKQogI3VuZGVmIERFQ0xBUkVfR0xPQkFMX1NUQVRJQwogI2VuZGlmCmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9KU05hdmlnYXRvckN1c3RvbS5j
cHAgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9KU05hdmlnYXRvckN1c3RvbS5jcHAKaW5k
ZXggM2Q1ZmUxMjQ4NjQ4NjM0YTY0YTFkODk3NWM0YWMxYmMzZDFiZDliOC4uZTNmMjE0MDVjNmM2
MzkyMmZhOGNhN2ExY2ZjNWFkMTk5MjZjOWYzOSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUv
YmluZGluZ3MvanMvSlNOYXZpZ2F0b3JDdXN0b20uY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2Jp
bmRpbmdzL2pzL0pTTmF2aWdhdG9yQ3VzdG9tLmNwcApAQCAtMjcsNzcgKzI3LDYgQEAKICNpbmNs
dWRlICJjb25maWcuaCIKIAogI2lmIEVOQUJMRShNRURJQV9TVFJFQU0pCi0jaW5jbHVkZSAiSlNO
YXZpZ2F0b3IuaCIKIAotI2luY2x1ZGUgIkRpY3Rpb25hcnkuaCIKLSNpbmNsdWRlICJEb2N1bWVu
dC5oIgotI2luY2x1ZGUgIkV4Y2VwdGlvbkNvZGUuaCIKLSNpbmNsdWRlICJGcmFtZS5oIgotI2lu
Y2x1ZGUgIkpTTmF2aWdhdG9yVXNlck1lZGlhRXJyb3JDYWxsYmFjay5oIgotI2luY2x1ZGUgIkpT
TmF2aWdhdG9yVXNlck1lZGlhU3VjY2Vzc0NhbGxiYWNrLmgiCi0jaW5jbHVkZSAiTWVkaWFTdHJl
YW0uaCIKLSNpbmNsdWRlICJVc2VyTWVkaWFSZXF1ZXN0LmgiCi0KLXVzaW5nIG5hbWVzcGFjZSBK
U0M7Ci0KLW5hbWVzcGFjZSBXZWJDb3JlIHsKLQotSlNWYWx1ZSBKU05hdmlnYXRvcjo6d2Via2l0
R2V0VXNlck1lZGlhKEV4ZWNTdGF0ZSYgc3RhdGUpCi17Ci0gICAgaWYgKHN0YXRlLmFyZ3VtZW50
Q291bnQoKSA8IDMpIHsKLSAgICAgICAgdGhyb3dWTUVycm9yKCZzdGF0ZSwgY3JlYXRlTm90RW5v
dWdoQXJndW1lbnRzRXJyb3IoJnN0YXRlKSk7Ci0gICAgICAgIHJldHVybiBqc1VuZGVmaW5lZCgp
OwotICAgIH0KLQotICAgIERpY3Rpb25hcnkgb3B0aW9ucygmc3RhdGUsIHN0YXRlLmFyZ3VtZW50
KDApKTsKLSAgICBpZiAoc3RhdGUuaGFkRXhjZXB0aW9uKCkpCi0gICAgICAgIHJldHVybiBqc1Vu
ZGVmaW5lZCgpOwotCi0gICAgaWYgKCFvcHRpb25zLmlzT2JqZWN0KCkpIHsKLSAgICAgICAgdGhy
b3dWTUVycm9yKCZzdGF0ZSwgY3JlYXRlVHlwZUVycm9yKCZzdGF0ZSwgIkZpcnN0IGFyZ3VtZW50
IG9mIHdlYmtpdEdldFVzZXJNZWRpYSBtdXN0IGJlIGEgdmFsaWQgRGljdGlvbmFyeSIpKTsKLSAg
ICAgICAgcmV0dXJuIGpzVW5kZWZpbmVkKCk7Ci0gICAgfQotCi0gICAgaWYgKCFzdGF0ZS5hcmd1
bWVudCgxKS5pc0Z1bmN0aW9uKCkpIHsKLSAgICAgICAgdGhyb3dWTVR5cGVFcnJvcigmc3RhdGUs
ICJBcmd1bWVudCAyICgnc3VjY2Vzc0NhbGxiYWNrJykgdG8gTmF2aWdhdG9yLndlYmtpdEdldFVz
ZXJNZWRpYSBtdXN0IGJlIGEgZnVuY3Rpb24iKTsKLSAgICAgICAgcmV0dXJuIGpzVW5kZWZpbmVk
KCk7Ci0gICAgfQotCi0gICAgaWYgKCFzdGF0ZS5hcmd1bWVudCgyKS5pc0Z1bmN0aW9uKCkpIHsK
LSAgICAgICAgdGhyb3dWTVR5cGVFcnJvcigmc3RhdGUsICJBcmd1bWVudCAzICgnZXJyb3JDYWxs
YmFjaycpIHRvIE5hdmlnYXRvci53ZWJraXRHZXRVc2VyTWVkaWEgbXVzdCBiZSBhIGZ1bmN0aW9u
Iik7Ci0gICAgICAgIHJldHVybiBqc1VuZGVmaW5lZCgpOwotICAgIH0KLQotICAgIGlmICghaW1w
bCgpLmZyYW1lKCkpIHsKLSAgICAgICAgc2V0RE9NRXhjZXB0aW9uKCZzdGF0ZSwgTk9UX1NVUFBP
UlRFRF9FUlIpOwotICAgICAgICByZXR1cm4ganNVbmRlZmluZWQoKTsKLSAgICB9Ci0KLSAgICAv
LyBXZSBkbyBub3QgbmVlZCB0byBwcm90ZWN0IHRoZSBjb250ZXh0IChpLmUuIGRvY3VtZW50KSBo
ZXJlIGFzIFVzZXJNZWRpYVJlcXVlc3QgaXMgb2JzZXJ2aW5nIGNvbnRleHQgZGVzdHJ1Y3Rpb24g
YW5kIHdpbGwgY2hlY2sgdmFsaWRpdHkgYmVmb3JlIHJlc29sdmluZy9yZWplY3RpbmcgcHJvbWlz
ZS4KLSAgICBEb2N1bWVudCogZG9jdW1lbnQgPSBpbXBsKCkuZnJhbWUoKS0+ZG9jdW1lbnQoKTsK
LQotICAgIFJlZlB0cjxOYXZpZ2F0b3JVc2VyTWVkaWFTdWNjZXNzQ2FsbGJhY2s+IHN1Y2Nlc3ND
YWxsYmFjayA9IEpTTmF2aWdhdG9yVXNlck1lZGlhU3VjY2Vzc0NhbGxiYWNrOjpjcmVhdGUoYXNP
YmplY3Qoc3RhdGUudW5jaGVja2VkQXJndW1lbnQoMSkpLCBnbG9iYWxPYmplY3QoKSk7Ci0gICAg
YXV0byByZXNvbHZlQ2FsbGJhY2sgPSBbc3VjY2Vzc0NhbGxiYWNrLCBkb2N1bWVudF0oY29uc3Qg
UmVmUHRyPE1lZGlhU3RyZWFtPiYgc3RyZWFtKSBtdXRhYmxlIHsKLSAgICAgICAgUmVmUHRyPE1l
ZGlhU3RyZWFtPiBwcm90ZWN0ZWRTdHJlYW0gPSBzdHJlYW07Ci0gICAgICAgIGRvY3VtZW50LT5w
b3N0VGFzayhbc3VjY2Vzc0NhbGxiYWNrLCBwcm90ZWN0ZWRTdHJlYW1dKFNjcmlwdEV4ZWN1dGlv
bkNvbnRleHQmKSB7Ci0gICAgICAgICAgICBzdWNjZXNzQ2FsbGJhY2stPmhhbmRsZUV2ZW50KHBy
b3RlY3RlZFN0cmVhbS5nZXQoKSk7Ci0gICAgICAgIH0pOwotICAgIH07Ci0KLSAgICBSZWZQdHI8
TmF2aWdhdG9yVXNlck1lZGlhRXJyb3JDYWxsYmFjaz4gZXJyb3JDYWxsYmFjayA9IEpTTmF2aWdh
dG9yVXNlck1lZGlhRXJyb3JDYWxsYmFjazo6Y3JlYXRlKGFzT2JqZWN0KHN0YXRlLnVuY2hlY2tl
ZEFyZ3VtZW50KDIpKSwgZ2xvYmFsT2JqZWN0KCkpOwotICAgIGF1dG8gcmVqZWN0Q2FsbGJhY2sg
PSBbZXJyb3JDYWxsYmFjaywgZG9jdW1lbnRdKGNvbnN0IFJlZlB0cjxOYXZpZ2F0b3JVc2VyTWVk
aWFFcnJvcj4mIGVycm9yKSBtdXRhYmxlIHsKLSAgICAgICAgUmVmUHRyPE5hdmlnYXRvclVzZXJN
ZWRpYUVycm9yPiBwcm90ZWN0ZWRFcnJvciA9IGVycm9yOwotICAgICAgICBkb2N1bWVudC0+cG9z
dFRhc2soW2Vycm9yQ2FsbGJhY2ssIHByb3RlY3RlZEVycm9yXShTY3JpcHRFeGVjdXRpb25Db250
ZXh0JikgewotICAgICAgICAgICAgZXJyb3JDYWxsYmFjay0+aGFuZGxlRXZlbnQocHJvdGVjdGVk
RXJyb3IuZ2V0KCkpOwotICAgICAgICB9KTsKLSAgICB9OwotCi0gICAgRXhjZXB0aW9uQ29kZSBl
YyA9IDA7Ci0gICAgVXNlck1lZGlhUmVxdWVzdDo6c3RhcnQoZG9jdW1lbnQsIG9wdGlvbnMsIE1l
ZGlhRGV2aWNlczo6UHJvbWlzZShXVEY6Om1vdmUocmVzb2x2ZUNhbGxiYWNrKSwgV1RGOjptb3Zl
KHJlamVjdENhbGxiYWNrKSksIGVjKTsKLSAgICBzZXRET01FeGNlcHRpb24oJnN0YXRlLCBlYyk7
Ci0gICAgcmV0dXJuIGpzVW5kZWZpbmVkKCk7Ci19Ci0KLX0gLy8gbmFtZXNwYWNlIFdlYkNvcmUK
IAogI2VuZGlmIC8vIEVOQUJMRShNRURJQV9TVFJFQU0pCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
Q29yZS9iaW5kaW5ncy9qcy9XZWJDb3JlQnVpbHRpbk5hbWVzLmggYi9Tb3VyY2UvV2ViQ29yZS9i
aW5kaW5ncy9qcy9XZWJDb3JlQnVpbHRpbk5hbWVzLmgKaW5kZXggZTk5ZTA2OWZlY2NjODU2MGE4
MDdhMmM2ZmMzNGMzZDlhMjYwOTQ5My4uZWRlMGU0MTc1ODQxMGJjMzYyYzhjNDM5YmE5ZmYyMTJh
YWY2YjNiYiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvV2ViQ29yZUJ1
aWx0aW5OYW1lcy5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL1dlYkNvcmVCdWls
dGluTmFtZXMuaApAQCAtMjcsNiArMjcsNyBAQAogbmFtZXNwYWNlIFdlYkNvcmUgewogCiAjZGVm
aW5lIFdFQkNPUkVfQ09NTU9OX1BSSVZBVEVfSURFTlRJRklFUlNfRUFDSF9QUk9QRVJUWV9OQU1F
KG1hY3JvKVwKKyAgICBtYWNybyhnZXRVc2VyTWVkaWEpIFwKICAgICBtYWNybyhzdGF0ZSkgXAog
ICAgIG1hY3JvKHVuZGVybHlpbmdTb3VyY2UpIFwKICAgICBtYWNybyhxdWV1ZSkgXApkaWZmIC0t
Z2l0IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvV2ViQ29yZUpTQnVpbHRpbnMuY3BwIGIv
U291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvV2ViQ29yZUpTQnVpbHRpbnMuY3BwCmluZGV4IDIz
ZDQyMWRiMDk1YzE4NzIxMDg4MDQ1NTgwMWY1YzI4YjZkNTQ3MzEuLjBiYjNlMmNhMmI1ZTA0NzZj
OTFhMmQ1OTVkNjU2NWRhZTNjN2Y0ZWYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2JpbmRp
bmdzL2pzL1dlYkNvcmVKU0J1aWx0aW5zLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5n
cy9qcy9XZWJDb3JlSlNCdWlsdGlucy5jcHAKQEAgLTI1LDMgKzI1LDYgQEAKICNpbmNsdWRlICJS
ZWFkYWJsZVN0cmVhbUludGVybmFsc0J1aWx0aW5zLmNwcCIKICNpbmNsdWRlICJSZWFkYWJsZVN0
cmVhbVJlYWRlckJ1aWx0aW5zLmNwcCIKICNlbmRpZgorI2lmIEVOQUJMRShNRURJQV9TVFJFQU0p
CisjaW5jbHVkZSAiTmF2aWdhdG9yVXNlck1lZGlhQnVpbHRpbnMuY3BwIgorI2VuZGlmCmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9XZWJDb3JlSlNCdWlsdGlucy5oIGIv
U291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvV2ViQ29yZUpTQnVpbHRpbnMuaAppbmRleCA3ZjJm
M2Y3OWI3ZDA3Yjg1OTQ0YTY0OGMwYWE0MzgwZmQzY2U2OWVmLi45ODgzODIxNzc1MTEyMGEzOTgx
YzJhYTI0NDhiNTg5M2ZjNjk4MzM1IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5n
cy9qcy9XZWJDb3JlSlNCdWlsdGlucy5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pz
L1dlYkNvcmVKU0J1aWx0aW5zLmgKQEAgLTI3LDYgKzI3LDkgQEAKICNpbmNsdWRlICJSZWFkYWJs
ZVN0cmVhbVJlYWRlckJ1aWx0aW5zV3JhcHBlci5oIgogI2VuZGlmCiAKKyNpZiBFTkFCTEUoTUVE
SUFfU1RSRUFNKQorI2luY2x1ZGUgIk5hdmlnYXRvclVzZXJNZWRpYUJ1aWx0aW5zV3JhcHBlci5o
IgorI2VuZGlmCiAKICNpbmNsdWRlIDxydW50aW1lL1ZNLmg+CiAKQEAgLTQ0LDYgKzQ3LDkgQEAg
cHVibGljOgogICAgICAgICAsIG1fcmVhZGFibGVTdHJlYW1JbnRlcm5hbHNCdWlsdGlucygmdm0p
CiAgICAgICAgICwgbV9yZWFkYWJsZVN0cmVhbVJlYWRlckJ1aWx0aW5zKCZ2bSkKICNlbmRpZgor
I2lmIEVOQUJMRShNRURJQV9TVFJFQU0pCisgICAgICAgICwgbV9uYXZpZ2F0b3JVc2VyTWVkaWFC
dWlsdGlucygmdm0pCisjZW5kaWYKICAgICB7CiAjaWYgRU5BQkxFKFNUUkVBTVNfQVBJKQogICAg
ICAgICBtX3JlYWRhYmxlU3RyZWFtSW50ZXJuYWxzQnVpbHRpbnMuZXhwb3J0TmFtZXMoKTsKQEAg
LTU3LDYgKzYzLDkgQEAgcHVibGljOgogICAgIFJlYWRhYmxlU3RyZWFtSW50ZXJuYWxzQnVpbHRp
bnNXcmFwcGVyJiByZWFkYWJsZVN0cmVhbUludGVybmFsc0J1aWx0aW5zKCkgeyByZXR1cm4gbV9y
ZWFkYWJsZVN0cmVhbUludGVybmFsc0J1aWx0aW5zO30KICAgICBSZWFkYWJsZVN0cmVhbVJlYWRl
ckJ1aWx0aW5zV3JhcHBlciYgcmVhZGFibGVTdHJlYW1SZWFkZXJCdWlsdGlucygpIHsgcmV0dXJu
IG1fcmVhZGFibGVTdHJlYW1SZWFkZXJCdWlsdGluczt9CiAjZW5kaWYKKyNpZiBFTkFCTEUoTUVE
SUFfU1RSRUFNKQorICAgIE5hdmlnYXRvclVzZXJNZWRpYUJ1aWx0aW5zV3JhcHBlciYgbmF2aWdh
dG9yVXNlck1lZGlhQnVpbHRpbnMoKSB7IHJldHVybiBtX25hdmlnYXRvclVzZXJNZWRpYUJ1aWx0
aW5zO30KKyNlbmRpZgogCiBwcml2YXRlOgogICAgIEpTQzo6Vk0mIHZtOwpAQCAtNjgsNiArNzcs
OSBAQCBwcml2YXRlOgogICAgIFJlYWRhYmxlU3RyZWFtSW50ZXJuYWxzQnVpbHRpbnNXcmFwcGVy
IG1fcmVhZGFibGVTdHJlYW1JbnRlcm5hbHNCdWlsdGluczsKICAgICBSZWFkYWJsZVN0cmVhbVJl
YWRlckJ1aWx0aW5zV3JhcHBlciBtX3JlYWRhYmxlU3RyZWFtUmVhZGVyQnVpbHRpbnM7CiAjZW5k
aWYKKyNpZiBFTkFCTEUoTUVESUFfU1RSRUFNKQorICAgIE5hdmlnYXRvclVzZXJNZWRpYUJ1aWx0
aW5zV3JhcHBlciBtX25hdmlnYXRvclVzZXJNZWRpYUJ1aWx0aW5zOworI2VuZGlmCiAKIH07CiAK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvQ29kZUdlbmVyYXRv
ckpTLnBtIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy9Db2RlR2VuZXJhdG9ySlMu
cG0KaW5kZXggNGRkODdkYzA0OGUxYzZiMmM3ODQ5NWY3ZTJjMjQ1Y2M1Yjk2YjIxZS4uNmEzYjEw
ZGEzNDI0NDQyYWFlNDg1ZTJjNDcxZDA5M2I4ZjhmNzI1NCAxMDA2NDQKLS0tIGEvU291cmNlL1dl
YkNvcmUvYmluZGluZ3Mvc2NyaXB0cy9Db2RlR2VuZXJhdG9ySlMucG0KKysrIGIvU291cmNlL1dl
YkNvcmUvYmluZGluZ3Mvc2NyaXB0cy9Db2RlR2VuZXJhdG9ySlMucG0KQEAgLTExLDYgKzExLDcg
QEAKICMgQ29weXJpZ2h0IChDKSAyMDEyIEVyaWNzc29uIEFCLiBBbGwgcmlnaHRzIHJlc2VydmVk
LgogIyBDb3B5cmlnaHQgKEMpIDIwMDcsIDIwMDgsIDIwMDksIDIwMTIgR29vZ2xlIEluYy4KICMg
Q29weXJpZ2h0IChDKSAyMDEzIFNhbXN1bmcgRWxlY3Ryb25pY3MuIEFsbCByaWdodHMgcmVzZXJ2
ZWQuCisjIENvcHlyaWdodCAoQykgMjAxNSBDYW5vbiBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQu
CiAjCiAjIFRoaXMgbGlicmFyeSBpcyBmcmVlIHNvZnR3YXJlOyB5b3UgY2FuIHJlZGlzdHJpYnV0
ZSBpdCBhbmQvb3IKICMgbW9kaWZ5IGl0IHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05VIExpYnJh
cnkgR2VuZXJhbCBQdWJsaWMKQEAgLTU3MSw3ICs1NzIsNyBAQCBzdWIgR2V0QXR0cmlidXRlR2V0
dGVyTmFtZQogICAgICAgICByZXR1cm4gJGNvZGVHZW5lcmF0b3ItPldLX2xjZmlyc3QoJGNsYXNz
TmFtZSkgLiAiQ29uc3RydWN0b3IiIC4gJGNvZGVHZW5lcmF0b3ItPldLX3VjZmlyc3QoJGF0dHJp
YnV0ZS0+c2lnbmF0dXJlLT5uYW1lKTsKICAgICB9CiAgICAgaWYgKCRhdHRyaWJ1dGUtPnNpZ25h
dHVyZS0+ZXh0ZW5kZWRBdHRyaWJ1dGVzLT57IkpTQnVpbHRpbiJ9KSB7Ci0gICAgICAgIHJldHVy
biBHZXRKU0J1aWx0aW5GdW5jdGlvbk5hbWUoJGNsYXNzTmFtZSwgJGF0dHJpYnV0ZS0+c2lnbmF0
dXJlLT5uYW1lKTsKKyAgICAgICAgcmV0dXJuIEdldEpTQnVpbHRpbkZ1bmN0aW9uTmFtZSgkY2xh
c3NOYW1lLCAkYXR0cmlidXRlKTsKICAgICB9CiAgICAgcmV0dXJuICJqcyIgLiAkaW50ZXJmYWNl
TmFtZSAuICRjb2RlR2VuZXJhdG9yLT5XS191Y2ZpcnN0KCRhdHRyaWJ1dGUtPnNpZ25hdHVyZS0+
bmFtZSkgLiAoJGF0dHJpYnV0ZS0+c2lnbmF0dXJlLT50eXBlID1+IC9Db25zdHJ1Y3RvciQvID8g
IkNvbnN0cnVjdG9yIiA6ICIiKTsKIH0KQEAgLTU4MywyOCArNTg0LDE3IEBAIHN1YiBHZXRBdHRy
aWJ1dGVTZXR0ZXJOYW1lCiAgICAgICAgIHJldHVybiAic2V0IiAuICRjb2RlR2VuZXJhdG9yLT5X
S191Y2ZpcnN0KCRjbGFzc05hbWUpIC4gIkNvbnN0cnVjdG9yIiAuICRjb2RlR2VuZXJhdG9yLT5X
S191Y2ZpcnN0KCRhdHRyaWJ1dGUtPnNpZ25hdHVyZS0+bmFtZSk7CiAgICAgfQogICAgIGlmICgk
YXR0cmlidXRlLT5zaWduYXR1cmUtPmV4dGVuZGVkQXR0cmlidXRlcy0+eyJKU0J1aWx0aW4ifSkg
ewotICAgICAgICByZXR1cm4gInNldCIgLiAkY29kZUdlbmVyYXRvci0+V0tfdWNmaXJzdChHZXRK
U0J1aWx0aW5GdW5jdGlvbk5hbWUoJGNsYXNzTmFtZSwgJGF0dHJpYnV0ZS0+c2lnbmF0dXJlLT5u
YW1lKSk7CisgICAgICAgIHJldHVybiAic2V0IiAuICRjb2RlR2VuZXJhdG9yLT5XS191Y2ZpcnN0
KEdldEpTQnVpbHRpbkZ1bmN0aW9uTmFtZSgkY2xhc3NOYW1lLCAkYXR0cmlidXRlKSk7CiAgICAg
fQogICAgIHJldHVybiAic2V0SlMiIC4gJGludGVyZmFjZU5hbWUgLiAkY29kZUdlbmVyYXRvci0+
V0tfdWNmaXJzdCgkYXR0cmlidXRlLT5zaWduYXR1cmUtPm5hbWUpIC4gKCRhdHRyaWJ1dGUtPnNp
Z25hdHVyZS0+dHlwZSA9fiAvQ29uc3RydWN0b3IkLyA/ICJDb25zdHJ1Y3RvciIgOiAiIik7CiB9
CiAKLXN1YiBHZXRKU0J1aWx0aW5GdW5jdGlvbk5hbWUKLXsKLSAgICBteSAoJGNsYXNzTmFtZSwg
JGZ1bmN0aW9uTmFtZSkgPSBAXzsKLSAgICByZXR1cm4gJGNvZGVHZW5lcmF0b3ItPldLX2xjZmly
c3Qoc3Vic3RyICRjbGFzc05hbWUsIDIpIC4gJGNvZGVHZW5lcmF0b3ItPldLX3VjZmlyc3QoJGZ1
bmN0aW9uTmFtZSkgLiAiQ29kZUdlbmVyYXRvciI7Ci19Ci0KIHN1YiBHZXRGdW5jdGlvbk5hbWUK
IHsKICAgICBteSAoJGNsYXNzTmFtZSwgJGZ1bmN0aW9uKSA9IEBfOwogCi0gICAgbXkgJHNjb3Bl
TmFtZSA9ICRmdW5jdGlvbi0+c2lnbmF0dXJlLT5leHRlbmRlZEF0dHJpYnV0ZXMtPnsiSW1wbGVt
ZW50ZWRCeSJ9OwotICAgIGlmICghJHNjb3BlTmFtZSkgewotICAgICAgICAkc2NvcGVOYW1lID0g
c3Vic3RyICRjbGFzc05hbWUsIDI7Ci0gICAgfQotCiAgICAgaWYgKCRmdW5jdGlvbi0+c2lnbmF0
dXJlLT5leHRlbmRlZEF0dHJpYnV0ZXMtPnsiSlNCdWlsdGluIn0pIHsKLSAgICAgICAgcmV0dXJu
IEdldEpTQnVpbHRpbkZ1bmN0aW9uTmFtZSgkY2xhc3NOYW1lLCAkZnVuY3Rpb24tPnNpZ25hdHVy
ZS0+bmFtZSk7CisgICAgICAgIHJldHVybiBHZXRKU0J1aWx0aW5GdW5jdGlvbk5hbWUoJGNsYXNz
TmFtZSwgJGZ1bmN0aW9uKTsKICAgICB9CiAKICAgICBteSAka2luZCA9ICRmdW5jdGlvbi0+aXNT
dGF0aWMgPyAiQ29uc3RydWN0b3IiIDogIlByb3RvdHlwZSI7CkBAIC01MDAwLDcgKzQ5OTAsNyBA
QCBzdWIgR2VuZXJhdGVDb25zdHJ1Y3RvckhlbHBlck1ldGhvZHMKICAgICB9CiAKICAgICBpZiAo
JGludGVyZmFjZS0+ZXh0ZW5kZWRBdHRyaWJ1dGVzLT57IkpTQnVpbHRpbkNvbnN0cnVjdG9yIn0p
IHsKLSAgICAgICAgbXkgJGluaXRpYWxpemVGdW5jdGlvbk5hbWUgPSBHZXRKU0J1aWx0aW5GdW5j
dGlvbk5hbWUoJHtjbGFzc05hbWV9LCAiaW5pdGlhbGl6ZSIgLiAke2ludGVyZmFjZU5hbWV9KTsK
KyAgICAgICAgbXkgJGluaXRpYWxpemVGdW5jdGlvbk5hbWUgPSBHZXRKU0J1aWx0aW5GdW5jdGlv
bk5hbWVGcm9tU3RyaW5nKCR7aW50ZXJmYWNlTmFtZX0sICJpbml0aWFsaXplIiAuICR7aW50ZXJm
YWNlTmFtZX0pOwogICAgICAgICBwdXNoKEAkb3V0cHV0QXJyYXksICIgICAgc2V0SW5pdGlhbGl6
ZUZ1bmN0aW9uKHZtLCAqSlNDOjpKU0Z1bmN0aW9uOjpjcmVhdGVCdWlsdGluRnVuY3Rpb24odm0s
ICR7aW5pdGlhbGl6ZUZ1bmN0aW9uTmFtZX0odm0pLCAmZ2xvYmFsT2JqZWN0KSk7XG4iKTsKICAg
ICB9CiAKQEAgLTUxMDEsMjUgKzUwOTEsNDUgQEAgc3ViIENvbXB1dGVGdW5jdGlvblNwZWNpYWwK
ICAgICByZXR1cm4gKEBzcGVjaWFscyA+IDApID8gam9pbigiIHwgIiwgQHNwZWNpYWxzKSA6ICIw
IjsKIH0KIAotc3ViIEFkZEpTQnVpbHRpbkluY2x1ZGVzSWZOZWVkZWQoKQorc3ViIEdldEpTQnVp
bHRpbkZ1bmN0aW9uTmFtZQoreworICAgIG15ICgkY2xhc3NOYW1lLCAkZnVuY3Rpb24pID0gQF87
CisgICAgbXkgJHNjb3BlTmFtZSA9ICRmdW5jdGlvbi0+c2lnbmF0dXJlLT5leHRlbmRlZEF0dHJp
YnV0ZXMtPnsiSW1wbGVtZW50ZWRCeSJ9OworICAgICRzY29wZU5hbWUgPSBzdWJzdHIgJGNsYXNz
TmFtZSwgMiB1bmxlc3MgJHNjb3BlTmFtZTsKKyAgICByZXR1cm4gR2V0SlNCdWlsdGluRnVuY3Rp
b25OYW1lRnJvbVN0cmluZygkc2NvcGVOYW1lLCAkZnVuY3Rpb24tPnNpZ25hdHVyZS0+bmFtZSk7
Cit9CisKK3N1YiBHZXRKU0J1aWx0aW5GdW5jdGlvbk5hbWVGcm9tU3RyaW5nCit7CisgICAgbXkg
KCRzY29wZU5hbWUsICRmdW5jdGlvbk5hbWUpID0gQF87CisgICAgcmV0dXJuICRjb2RlR2VuZXJh
dG9yLT5XS19sY2ZpcnN0KCRzY29wZU5hbWUpIC4gJGNvZGVHZW5lcmF0b3ItPldLX3VjZmlyc3Qo
JGZ1bmN0aW9uTmFtZSkgLiAiQ29kZUdlbmVyYXRvciI7Cit9CisKK3N1YiBHZXRKU0J1aWx0aW5T
Y29wZU5hbWUKIHsKICAgICBteSAkaW50ZXJmYWNlID0gc2hpZnQ7CisgICAgbXkgJG9iamVjdCA9
IHNoaWZ0OwogCi0gICAgbXkgJGluY2x1ZGUgPSAkaW50ZXJmYWNlLT5uYW1lIC4gIkJ1aWx0aW5z
LmgiOworICAgIHJldHVybiAkb2JqZWN0LT5zaWduYXR1cmUtPmV4dGVuZGVkQXR0cmlidXRlcy0+
eyJJbXBsZW1lbnRlZEJ5In0gaWYgJG9iamVjdC0+c2lnbmF0dXJlLT5leHRlbmRlZEF0dHJpYnV0
ZXMtPnsiSW1wbGVtZW50ZWRCeSJ9OworICAgIHJldHVybiAkaW50ZXJmYWNlLT5uYW1lOworfQor
CitzdWIgQWRkSlNCdWlsdGluSW5jbHVkZXNJZk5lZWRlZCgpCit7CisgICAgbXkgJGludGVyZmFj
ZSA9IHNoaWZ0OwogCiAgICAgaWYgKCRpbnRlcmZhY2UtPmV4dGVuZGVkQXR0cmlidXRlcy0+eyJK
U0J1aWx0aW5Db25zdHJ1Y3RvciJ9KSB7Ci0gICAgICAgIEFkZFRvSW1wbEluY2x1ZGVzKCRpbmNs
dWRlKTsKKyAgICAgICAgQWRkVG9JbXBsSW5jbHVkZXMoJGludGVyZmFjZS0+bmFtZSAuICJCdWls
dGlucy5oIik7CiAgICAgICAgIHJldHVybjsKICAgICB9CiAKICAgICBmb3JlYWNoIG15ICRmdW5j
dGlvbiAoQHskaW50ZXJmYWNlLT5mdW5jdGlvbnN9KSB7Ci0gICAgICAgIEFkZFRvSW1wbEluY2x1
ZGVzKCRpbmNsdWRlLCAkZnVuY3Rpb24tPnNpZ25hdHVyZS0+ZXh0ZW5kZWRBdHRyaWJ1dGVzLT57
IkNvbmRpdGlvbmFsIn0pIGlmICRmdW5jdGlvbi0+c2lnbmF0dXJlLT5leHRlbmRlZEF0dHJpYnV0
ZXMtPnsiSlNCdWlsdGluIn07CisgICAgICAgIEFkZFRvSW1wbEluY2x1ZGVzKEdldEpTQnVpbHRp
blNjb3BlTmFtZSgkaW50ZXJmYWNlLCAkZnVuY3Rpb24pIC4gIkJ1aWx0aW5zLmgiLCAkZnVuY3Rp
b24tPnNpZ25hdHVyZS0+ZXh0ZW5kZWRBdHRyaWJ1dGVzLT57IkNvbmRpdGlvbmFsIn0pIGlmICRm
dW5jdGlvbi0+c2lnbmF0dXJlLT5leHRlbmRlZEF0dHJpYnV0ZXMtPnsiSlNCdWlsdGluIn07CiAg
ICAgfQogCiAgICAgZm9yZWFjaCBteSAkYXR0cmlidXRlIChAeyRpbnRlcmZhY2UtPmF0dHJpYnV0
ZXN9KSB7Ci0gICAgICAgIEFkZFRvSW1wbEluY2x1ZGVzKCRpbmNsdWRlLCAkYXR0cmlidXRlLT5z
aWduYXR1cmUtPmV4dGVuZGVkQXR0cmlidXRlcy0+eyJDb25kaXRpb25hbCJ9KSBpZiAkYXR0cmli
dXRlLT5zaWduYXR1cmUtPmV4dGVuZGVkQXR0cmlidXRlcy0+eyJKU0J1aWx0aW4ifTsKKyAgICAg
ICAgQWRkVG9JbXBsSW5jbHVkZXMoR2V0SlNCdWlsdGluU2NvcGVOYW1lKCRpbnRlcmZhY2UsICRh
dHRyaWJ1dGUpIC4gIkJ1aWx0aW5zLmgiLCAkYXR0cmlidXRlLT5zaWduYXR1cmUtPmV4dGVuZGVk
QXR0cmlidXRlcy0+eyJDb25kaXRpb25hbCJ9KSBpZiAkYXR0cmlidXRlLT5zaWduYXR1cmUtPmV4
dGVuZGVkQXR0cmlidXRlcy0+eyJKU0J1aWx0aW4ifTsKICAgICB9Ci0KIH0KIAogMTsKZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RJbnRl
cmZhY2UuY3BwIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVz
dEludGVyZmFjZS5jcHAKaW5kZXggYzFmZDU0OTNhOWEwODUzM2EzMTcwZGMxYjM4YWU2M2EyMjY1
ZjUzNy4uOThmMTJlZmFhODNhNDE2YThjMDUyYzJkMTMyNGEwMWFkZGIzNjEzMyAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdEludGVyZmFj
ZS5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVz
dEludGVyZmFjZS5jcHAKQEAgLTMxLDYgKzMxLDEwIEBACiAjaW5jbHVkZSA8cnVudGltZS9FcnJv
ci5oPgogI2luY2x1ZGUgPHd0Zi9HZXRQdHIuaD4KIAorI2lmIEVOQUJMRShDb25kaXRpb24xMSkg
fHwgRU5BQkxFKENvbmRpdGlvbjEyKQorI2luY2x1ZGUgIlRlc3RTdXBwbGVtZW50YWxCdWlsdGlu
cy5oIgorI2VuZGlmCisKICNpZiBFTkFCTEUoQ29uZGl0aW9uMTEpIHx8IEVOQUJMRShDb25kaXRp
b24xMikgfHwgRU5BQkxFKENvbmRpdGlvbjIyKSB8fCBFTkFCTEUoQ29uZGl0aW9uMjMpCiAjaW5j
bHVkZSAiSlNOb2RlLmgiCiAjaW5jbHVkZSAiSlNUZXN0T2JqLmgiCkBAIC0zNDgsNiArMzUyLDEx
IEBAIHN0YXRpYyBjb25zdCBIYXNoVGFibGVWYWx1ZSBKU1Rlc3RJbnRlcmZhY2VQcm90b3R5cGVU
YWJsZVZhbHVlc1tdID0KICNlbHNlCiAgICAgeyAwLCAwLCBOb0ludHJpbnNpYywgeyAwLCAwIH0g
fSwKICNlbmRpZgorI2lmIEVOQUJMRShDb25kaXRpb24xMSkgfHwgRU5BQkxFKENvbmRpdGlvbjEy
KQorICAgIHsgImJ1aWx0aW5BdHRyaWJ1dGUiLCBBY2Nlc3NvciB8IEJ1aWx0aW4sIE5vSW50cmlu
c2ljLCB7IChpbnRwdHJfdClzdGF0aWNfY2FzdDxCdWlsdGluR2VuZXJhdG9yPih0ZXN0U3VwcGxl
bWVudGFsQnVpbHRpbkF0dHJpYnV0ZUNvZGVHZW5lcmF0b3IpLCAoaW50cHRyX3QpIChzZXRUZXN0
U3VwcGxlbWVudGFsQnVpbHRpbkF0dHJpYnV0ZUNvZGVHZW5lcmF0b3IpIH0gfSwKKyNlbHNlCisg
ICAgeyAwLCAwLCBOb0ludHJpbnNpYywgeyAwLCAwIH0gfSwKKyNlbmRpZgogI2lmIEVOQUJMRShD
b25kaXRpb24yMikgfHwgRU5BQkxFKENvbmRpdGlvbjIzKQogICAgIHsgIklNUExFTUVOVFNDT05T
VEFOVDEiLCBEb250RGVsZXRlIHwgUmVhZE9ubHkgfCBDb25zdGFudEludGVnZXIsIE5vSW50cmlu
c2ljLCB7IChsb25nIGxvbmcpKDEpIH0gfSwKICNlbHNlCkBAIC0zOTgsNiArNDA3LDExIEBAIHN0
YXRpYyBjb25zdCBIYXNoVGFibGVWYWx1ZSBKU1Rlc3RJbnRlcmZhY2VQcm90b3R5cGVUYWJsZVZh
bHVlc1tdID0KICNlbHNlCiAgICAgeyAwLCAwLCBOb0ludHJpbnNpYywgeyAwLCAwIH0gfSwKICNl
bmRpZgorI2lmIEVOQUJMRShDb25kaXRpb24xMSkgfHwgRU5BQkxFKENvbmRpdGlvbjEyKQorICAg
IHsgImJ1aWx0aW5GdW5jdGlvbiIsIEpTQzo6QnVpbHRpbiwgTm9JbnRyaW5zaWMsIHsgKGludHB0
cl90KXN0YXRpY19jYXN0PEJ1aWx0aW5HZW5lcmF0b3I+KHRlc3RTdXBwbGVtZW50YWxCdWlsdGlu
RnVuY3Rpb25Db2RlR2VuZXJhdG9yKSwgKGludHB0cl90KSAoMCkgfSB9LAorI2Vsc2UKKyAgICB7
IDAsIDAsIE5vSW50cmluc2ljLCB7IDAsIDAgfSB9LAorI2VuZGlmCiB9OwogCiBjb25zdCBDbGFz
c0luZm8gSlNUZXN0SW50ZXJmYWNlUHJvdG90eXBlOjpzX2luZm8gPSB7ICJUZXN0SW50ZXJmYWNl
UHJvdG90eXBlIiwgJkJhc2U6OnNfaW5mbywgMCwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3RJ
bnRlcmZhY2VQcm90b3R5cGUpIH07CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5n
cy9zY3JpcHRzL3Rlc3QvT2JqQy9ET01UZXN0SW50ZXJmYWNlLmggYi9Tb3VyY2UvV2ViQ29yZS9i
aW5kaW5ncy9zY3JpcHRzL3Rlc3QvT2JqQy9ET01UZXN0SW50ZXJmYWNlLmgKaW5kZXggYzA1YmE5
OTU1Y2E0NDUyNTY0Mzg4ODMyYmJkN2U5ZmRkZDE2MzRmYy4uZmJhODI2MDJiNmQzZDRkODc2OTdk
ZWI5Y2YyNzEyYmU3NTRkZjE3NCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mv
c2NyaXB0cy90ZXN0L09iakMvRE9NVGVzdEludGVyZmFjZS5oCisrKyBiL1NvdXJjZS9XZWJDb3Jl
L2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9PYmpDL0RPTVRlc3RJbnRlcmZhY2UuaApAQCAtNDQsNCAr
NDQsNSBAQCBXRUJDT1JFX0VYUE9SVCBAaW50ZXJmYWNlIERPTVRlc3RJbnRlcmZhY2UgOiBET01P
YmplY3QKIEBwcm9wZXJ0eSAoY29weSkgTlNTdHJpbmcgKnN1cHBsZW1lbnRhbFN0cjI7CiBAcHJv
cGVydHkgKGNvcHkpIE5TU3RyaW5nICpzdXBwbGVtZW50YWxTdHIzOwogQHByb3BlcnR5IChzdHJv
bmcpIERPTU5vZGUgKnN1cHBsZW1lbnRhbE5vZGU7CitAcHJvcGVydHkgdW5zaWduZWQgc2hvcnQg
YnVpbHRpbkF0dHJpYnV0ZTsKIEBlbmQKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRp
bmdzL3NjcmlwdHMvdGVzdC9PYmpDL0RPTVRlc3RJbnRlcmZhY2UubW0gYi9Tb3VyY2UvV2ViQ29y
ZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvT2JqQy9ET01UZXN0SW50ZXJmYWNlLm1tCmluZGV4IGE2
NTg3YzcxMzcwOGE4MmEwYmI3MmUyZTRjZjdiZGFkMGY5OWM3YWUuLjQ5ODcxYmUyNzFmYTUwNzc0
NjBiMGE1NTJmNmU5NmIwOTU0MDA2OWMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2JpbmRp
bmdzL3NjcmlwdHMvdGVzdC9PYmpDL0RPTVRlc3RJbnRlcmZhY2UubW0KKysrIGIvU291cmNlL1dl
YkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L09iakMvRE9NVGVzdEludGVyZmFjZS5tbQpAQCAt
MTcyLDYgKzE3MiwyMCBAQAogfQogI2VuZGlmCiAKKyNpZiBFTkFCTEUoQ29uZGl0aW9uMTEpIHx8
IEVOQUJMRShDb25kaXRpb24xMikKKy0gKHVuc2lnbmVkIHNob3J0KWJ1aWx0aW5BdHRyaWJ1dGUK
K3sKKyAgICBXZWJDb3JlOjpKU01haW5UaHJlYWROdWxsU3RhdGUgc3RhdGU7CisgICAgcmV0dXJu
IFRlc3RTdXBwbGVtZW50YWw6OmJ1aWx0aW5BdHRyaWJ1dGUoSU1QTCk7Cit9CisKKy0gKHZvaWQp
c2V0QnVpbHRpbkF0dHJpYnV0ZToodW5zaWduZWQgc2hvcnQpbmV3QnVpbHRpbkF0dHJpYnV0ZQor
eworICAgIFdlYkNvcmU6OkpTTWFpblRocmVhZE51bGxTdGF0ZSBzdGF0ZTsKKyAgICBUZXN0U3Vw
cGxlbWVudGFsOjpzZXRCdWlsdGluQXR0cmlidXRlKElNUEwsIG5ld0J1aWx0aW5BdHRyaWJ1dGUp
OworfQorI2VuZGlmCisKIAogI2lmIEVOQUJMRShDb25kaXRpb24yMikgfHwgRU5BQkxFKENvbmRp
dGlvbjIzKQogLSAodm9pZClpbXBsZW1lbnRzTWV0aG9kMQpAQCAtMjU4LDYgKzI3MiwxNiBAQAog
CiAjZW5kaWYKIAorCisjaWYgRU5BQkxFKENvbmRpdGlvbjExKSB8fCBFTkFCTEUoQ29uZGl0aW9u
MTIpCistICh2b2lkKWJ1aWx0aW5GdW5jdGlvbgoreworICAgIFdlYkNvcmU6OkpTTWFpblRocmVh
ZE51bGxTdGF0ZSBzdGF0ZTsKKyAgICBUZXN0U3VwcGxlbWVudGFsOjpidWlsdGluRnVuY3Rpb24o
SU1QTCk7Cit9CisKKyNlbmRpZgorCiBAZW5kCiAKIFdlYkNvcmU6OlRlc3RJbnRlcmZhY2UqIGNv
cmUoRE9NVGVzdEludGVyZmFjZSAqd3JhcHBlcikKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3Jl
L2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9UZXN0U3VwcGxlbWVudGFsLmlkbCBiL1NvdXJjZS9XZWJD
b3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9UZXN0U3VwcGxlbWVudGFsLmlkbAppbmRleCA3MTM1
MWVmMWMyNmU4YmJlM2Q0MTNjNzU3MDAyYmMyYzQyMzY3M2E3Li4xOTU1NWMyYmY3YWUzY2ViN2Y1
NjU1ZmVkZjRlOTk4OThiZTdiYTE0IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5n
cy9zY3JpcHRzL3Rlc3QvVGVzdFN1cHBsZW1lbnRhbC5pZGwKKysrIGIvU291cmNlL1dlYkNvcmUv
YmluZGluZ3Mvc2NyaXB0cy90ZXN0L1Rlc3RTdXBwbGVtZW50YWwuaWRsCkBAIC00NSw0ICs0NSw3
IEBACiAKICAgICBjb25zdCB1bnNpZ25lZCBzaG9ydCBTVVBQTEVNRU5UQUxDT05TVEFOVDEgPSAx
OwogICAgIFtSZWZsZWN0PUNPTlNUX0lNUExdIGNvbnN0IHVuc2lnbmVkIHNob3J0IFNVUFBMRU1F
TlRBTENPTlNUQU5UMiA9IDI7CisKKyAgICBbSlNCdWlsdGluXSB2b2lkIGJ1aWx0aW5GdW5jdGlv
bigpOworICAgIFtKU0J1aWx0aW4sIFJlYWRPbmx5XSBhdHRyaWJ1dGUgdW5zaWduZWQgc2hvcnQg
YnVpbHRpbkF0dHJpYnV0ZTsKIH07CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cg
Yi9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKaW5kZXggMGIwZjQyMDJiY2I2NDU5MTAyMDU4ODhhMDY5
YjQwYzQ3YzEzZjQ5YS4uNDdlMGZlMDc5M2I0NTg1NTRkMjcwZTEzNzU1MTViN2ZjNGQ5MmQ1NSAx
MDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCisrKyBiL0xheW91dFRlc3RzL0NoYW5n
ZUxvZwpAQCAtMSwzICsxLDE2IEBACisyMDE1LTEwLTEzICBZb3Vlbm4gRmFibGV0ICA8eW91ZW5u
LmZhYmxldEBjcmYuY2Fub24uZnI+CisKKyAgICAgICAgTW92ZSB3ZWJraXRHZXRVc2VyTWVkaWEg
dG8gSlMgQnVpbHRpbgorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5j
Z2k/aWQ9MTQ5NDk5CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAg
ICAgICAgKiBmYXN0L21lZGlhc3RyZWFtL2FyZ3VtZW50LXR5cGVzLWV4cGVjdGVkLnR4dDoKKyAg
ICAgICAgKiBmYXN0L21lZGlhc3RyZWFtL2dldHVzZXJtZWRpYS1leHBlY3RlZC50eHQ6CisgICAg
ICAgICogZmFzdC9tZWRpYXN0cmVhbS9nZXR1c2VybWVkaWEuaHRtbDoKKyAgICAgICAgKiBmYXN0
L21lZGlhc3RyZWFtL3NjcmlwdC10ZXN0cy9hcmd1bWVudC10eXBlcy5qczoKKyAgICAgICAgKiBo
dHRwL3Rlc3RzL21lZGlhL21lZGlhLXN0cmVhbS9kaXNjb25uZWN0ZWQtZnJhbWUtYWxyZWFkeS1l
eHBlY3RlZC50eHQ6CisKIDIwMTUtMTAtMTIgIFphbGFuIEJ1anRhcyAgPHphbGFuQGFwcGxlLmNv
bT4KIAogICAgICAgICBbV2luXSBVcGRhdGUgYW5vbnltb3VzIHRhYmxlIHJlc3VsdHMgZm9yIFdp
bmRvd3MgcG9ydC4gCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L21lZGlhc3RyZWFtL2Fy
Z3VtZW50LXR5cGVzLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2Zhc3QvbWVkaWFzdHJlYW0v
YXJndW1lbnQtdHlwZXMtZXhwZWN0ZWQudHh0CmluZGV4IDQyMjRkNDAyMDIyOTlmMDAyMTJlMjcy
MWYyMWU0MzNmY2Q1ZTI5MjQuLjVjYmM0ODU4ODI3NjI5YmNmNDg0ZTZmNjQxMmY1OWZlMTAzNGMx
Y2YgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2Zhc3QvbWVkaWFzdHJlYW0vYXJndW1lbnQtdHlw
ZXMtZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL2Zhc3QvbWVkaWFzdHJlYW0vYXJndW1l
bnQtdHlwZXMtZXhwZWN0ZWQudHh0CkBAIC0zMCw3ICszMCw3IEBAIFBBU1MgbmF2aWdhdG9yLndl
YmtpdEdldFVzZXJNZWRpYSh7dmlkZW86IHRydWV9LCB0cnVlKSB0aHJldyBleGNlcHRpb24gVHlw
ZUVycm9yCiBQQVNTIG5hdmlnYXRvci53ZWJraXRHZXRVc2VyTWVkaWEoe3ZpZGVvOiB0cnVlfSwg
NDIpIHRocmV3IGV4Y2VwdGlvbiBUeXBlRXJyb3I6IE5vdCBlbm91Z2ggYXJndW1lbnRzLgogUEFT
UyBuYXZpZ2F0b3Iud2Via2l0R2V0VXNlck1lZGlhKHt2aWRlbzogdHJ1ZX0sIEluZmluaXR5KSB0
aHJldyBleGNlcHRpb24gVHlwZUVycm9yOiBOb3QgZW5vdWdoIGFyZ3VtZW50cy4KIFBBU1MgbmF2
aWdhdG9yLndlYmtpdEdldFVzZXJNZWRpYSh7dmlkZW86IHRydWV9LCAtSW5maW5pdHkpIHRocmV3
IGV4Y2VwdGlvbiBUeXBlRXJyb3I6IE5vdCBlbm91Z2ggYXJndW1lbnRzLgotUEFTUyBuYXZpZ2F0
b3Iud2Via2l0R2V0VXNlck1lZGlhKHsgfSwgZW1wdHlGdW5jdGlvbiwgZW1wdHlGdW5jdGlvbikg
dGhyZXcgZXhjZXB0aW9uIEVycm9yOiBOb3RTdXBwb3J0ZWRFcnJvcjogRE9NIEV4Y2VwdGlvbiA5
LgorUEFTUyBuYXZpZ2F0b3Iud2Via2l0R2V0VXNlck1lZGlhKHsgfSwgZW1wdHlGdW5jdGlvbiwg
ZW1wdHlGdW5jdGlvbikgZGlkIG5vdCB0aHJvdyBleGNlcHRpb24uCiBQQVNTIG5hdmlnYXRvci53
ZWJraXRHZXRVc2VyTWVkaWEoe3ZpZGVvOiB0cnVlfSwgZW1wdHlGdW5jdGlvbiwgZW1wdHlGdW5j
dGlvbikgZGlkIG5vdCB0aHJvdyBleGNlcHRpb24uCiBQQVNTIG5hdmlnYXRvci53ZWJraXRHZXRV
c2VyTWVkaWEoe3ZpZGVvOiB0cnVlfSwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkKSB0aHJldyBl
eGNlcHRpb24gVHlwZUVycm9yOiBBcmd1bWVudCAzICgnZXJyb3JDYWxsYmFjaycpIHRvIE5hdmln
YXRvci53ZWJraXRHZXRVc2VyTWVkaWEgbXVzdCBiZSBhIGZ1bmN0aW9uLgogUEFTUyBuYXZpZ2F0
b3Iud2Via2l0R2V0VXNlck1lZGlhKHthdWRpbzp0cnVlLCB2aWRlbzp0cnVlfSwgZW1wdHlGdW5j
dGlvbiwgdW5kZWZpbmVkKSB0aHJldyBleGNlcHRpb24gVHlwZUVycm9yOiBBcmd1bWVudCAzICgn
ZXJyb3JDYWxsYmFjaycpIHRvIE5hdmlnYXRvci53ZWJraXRHZXRVc2VyTWVkaWEgbXVzdCBiZSBh
IGZ1bmN0aW9uLgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9tZWRpYXN0cmVhbS9nZXR1
c2VybWVkaWEtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvZmFzdC9tZWRpYXN0cmVhbS9nZXR1
c2VybWVkaWEtZXhwZWN0ZWQudHh0CmluZGV4IGRjYTVmYjk2MWNmNmViNWY0NDVhYjQ1MGFhMGIz
ZTUyZDQxMDcwOGEuLmQ2Y2ZlYjQ5MGNjMDIxNjBmZGRkM2EyM2Y4MzAzZjJhZTVjN2RhMDYgMTAw
NjQ0Ci0tLSBhL0xheW91dFRlc3RzL2Zhc3QvbWVkaWFzdHJlYW0vZ2V0dXNlcm1lZGlhLWV4cGVj
dGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9mYXN0L21lZGlhc3RyZWFtL2dldHVzZXJtZWRpYS1l
eHBlY3RlZC50eHQKQEAgLTMsOSArMywxMCBAQCBUZXN0cyB3ZWJraXRHZXRVc2VyTWVkaWEuCiBP
biBzdWNjZXNzLCB5b3Ugd2lsbCBzZWUgYSBzZXJpZXMgb2YgIlBBU1MiIG1lc3NhZ2VzLCBmb2xs
b3dlZCBieSAiVEVTVCBDT01QTEVURSIuCiAKIAotUEFTUyBuYXZpZ2F0b3Iud2Via2l0R2V0VXNl
ck1lZGlhKHthdWRpbzpmYWxzZSwgdmlkZW86ZmFsc2V9LCBlcnJvciwgZXJyb3IpOyB0aHJldyBl
eGNlcHRpb24gRXJyb3I6IE5vdFN1cHBvcnRlZEVycm9yOiBET00gRXhjZXB0aW9uIDkuCitQQVNT
IG5hdmlnYXRvci53ZWJraXRHZXRVc2VyTWVkaWEoe2F1ZGlvOmZhbHNlLCB2aWRlbzpmYWxzZX0s
IGVycm9yLCBleHBlY3RlZEVycm9yKTsgZGlkIG5vdCB0aHJvdyBleGNlcHRpb24uCiBQQVNTIG5h
dmlnYXRvci53ZWJraXRHZXRVc2VyTWVkaWEoe2F1ZGlvOmZhbHNlLCB2aWRlbzpmYWxzZX0sIGVy
cm9yLCBudWxsKTsgdGhyZXcgZXhjZXB0aW9uIFR5cGVFcnJvcjogQXJndW1lbnQgMyAoJ2Vycm9y
Q2FsbGJhY2snKSB0byBOYXZpZ2F0b3Iud2Via2l0R2V0VXNlck1lZGlhIG11c3QgYmUgYSBmdW5j
dGlvbi4KIFBBU1MgbmF2aWdhdG9yLndlYmtpdEdldFVzZXJNZWRpYSh7YXVkaW86dHJ1ZX0sIGdv
dFN0cmVhbTEsIGVycm9yKTsgZGlkIG5vdCB0aHJvdyBleGNlcHRpb24uCitQQVNTIEVycm9yIGNh
bGxiYWNrIGNhbGxlZC4KIFBBU1MgU3RyZWFtIGdlbmVyYXRlZC4KIFBBU1Mgc3RyZWFtLmdldEF1
ZGlvVHJhY2tzKCkubGVuZ3RoIGlzIDEKIFBBU1Mgc3RyZWFtLmdldFZpZGVvVHJhY2tzKCkubGVu
Z3RoIGlzIDAKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3QvbWVkaWFzdHJlYW0vZ2V0dXNl
cm1lZGlhLmh0bWwgYi9MYXlvdXRUZXN0cy9mYXN0L21lZGlhc3RyZWFtL2dldHVzZXJtZWRpYS5o
dG1sCmluZGV4IDEzZmFlMTMwNjcyYmQxNTQ0ZWI3YmE2YzJlZTFiMWQ4NDdhNDlkNTEuLmUzMzgz
OWYxZTQ3MzlmYmI5NzI2ZjEzMDA3NzQ4YjE1OGQ0ZDA5MjggMTAwNjQ0Ci0tLSBhL0xheW91dFRl
c3RzL2Zhc3QvbWVkaWFzdHJlYW0vZ2V0dXNlcm1lZGlhLmh0bWwKKysrIGIvTGF5b3V0VGVzdHMv
ZmFzdC9tZWRpYXN0cmVhbS9nZXR1c2VybWVkaWEuaHRtbApAQCAtMjQsNiArMjQsMTAgQEAKICAg
ICAgICAgICAgICAgICBmaW5pc2hKU1Rlc3QoKTsKICAgICAgICAgICAgIH0KIAorICAgICAgICAg
ICAgZnVuY3Rpb24gZXhwZWN0ZWRFcnJvcigpIHsKKyAgICAgICAgICAgICAgICB0ZXN0UGFzc2Vk
KCdFcnJvciBjYWxsYmFjayBjYWxsZWQuJyk7CisgICAgICAgICAgICB9CisKICAgICAgICAgICAg
IGZ1bmN0aW9uIGdvdFN0cmVhbUluRXJyb3IocykgewogICAgICAgICAgICAgICAgIHRlc3RGYWls
ZWQoJ1N0cmVhbSBnZW5lcmF0ZWQuJyk7CiAgICAgICAgICAgICAgICAgZmluaXNoSlNUZXN0KCk7
CkBAIC04Nyw3ICs5MSw3IEBACiAgICAgICAgICAgICAgICAgc2hvdWxkTm90VGhyb3coIm5hdmln
YXRvci53ZWJraXRHZXRVc2VyTWVkaWEoe3ZpZGVvOnRydWV9LCBnb3RTdHJlYW0yLCBlcnJvcik7
IikKICAgICAgICAgICAgIH0KIAotICAgICAgICAgICAgc2hvdWxkVGhyb3coIm5hdmlnYXRvci53
ZWJraXRHZXRVc2VyTWVkaWEoe2F1ZGlvOmZhbHNlLCB2aWRlbzpmYWxzZX0sIGVycm9yLCBlcnJv
cik7IikKKyAgICAgICAgICAgIHNob3VsZE5vdFRocm93KCJuYXZpZ2F0b3Iud2Via2l0R2V0VXNl
ck1lZGlhKHthdWRpbzpmYWxzZSwgdmlkZW86ZmFsc2V9LCBlcnJvciwgZXhwZWN0ZWRFcnJvcik7
IikKICAgICAgICAgICAgIHNob3VsZFRocm93KCJuYXZpZ2F0b3Iud2Via2l0R2V0VXNlck1lZGlh
KHthdWRpbzpmYWxzZSwgdmlkZW86ZmFsc2V9LCBlcnJvciwgbnVsbCk7IikKIAogICAgICAgICAg
ICAgc2V0VXNlck1lZGlhUGVybWlzc2lvbih0cnVlKTsKZGlmZiAtLWdpdCBhL0xheW91dFRlc3Rz
L2Zhc3QvbWVkaWFzdHJlYW0vc2NyaXB0LXRlc3RzL2FyZ3VtZW50LXR5cGVzLmpzIGIvTGF5b3V0
VGVzdHMvZmFzdC9tZWRpYXN0cmVhbS9zY3JpcHQtdGVzdHMvYXJndW1lbnQtdHlwZXMuanMKaW5k
ZXggMTFhZGY4OTM2NzdkMWJiMmE3ODRlOTY0ZDkyN2NkYTRiYWEzNzc5My4uZmYwOGI0MDA2OTQ4
NDcxNThhZDU2MWNjNWYzMzhmNGQyNmI0NjIwNSAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvZmFz
dC9tZWRpYXN0cmVhbS9zY3JpcHQtdGVzdHMvYXJndW1lbnQtdHlwZXMuanMKKysrIGIvTGF5b3V0
VGVzdHMvZmFzdC9tZWRpYXN0cmVhbS9zY3JpcHQtdGVzdHMvYXJndW1lbnQtdHlwZXMuanMKQEAg
LTU0LDcgKzU0LDcgQEAgdGVzdCgnbmF2aWdhdG9yLndlYmtpdEdldFVzZXJNZWRpYSh7dmlkZW86
IHRydWV9LCBJbmZpbml0eSknLCB0cnVlKTsKIHRlc3QoJ25hdmlnYXRvci53ZWJraXRHZXRVc2Vy
TWVkaWEoe3ZpZGVvOiB0cnVlfSwgLUluZmluaXR5KScsIHRydWUpOwogCiAvLyAzIEFyZ3VtZW50
cy4KLXRlc3QoJ25hdmlnYXRvci53ZWJraXRHZXRVc2VyTWVkaWEoeyB9LCBlbXB0eUZ1bmN0aW9u
LCBlbXB0eUZ1bmN0aW9uKScsIHRydWUsIG5vdFN1cHBvcnRlZEVycm9yKTsKK3Rlc3QoJ25hdmln
YXRvci53ZWJraXRHZXRVc2VyTWVkaWEoeyB9LCBlbXB0eUZ1bmN0aW9uLCBlbXB0eUZ1bmN0aW9u
KScsIGZhbHNlKTsKIHRlc3QoJ25hdmlnYXRvci53ZWJraXRHZXRVc2VyTWVkaWEoe3ZpZGVvOiB0
cnVlfSwgZW1wdHlGdW5jdGlvbiwgZW1wdHlGdW5jdGlvbiknLCBmYWxzZSk7CiB0ZXN0KCduYXZp
Z2F0b3Iud2Via2l0R2V0VXNlck1lZGlhKHt2aWRlbzogdHJ1ZX0sIGVtcHR5RnVuY3Rpb24sIHVu
ZGVmaW5lZCknLCB0cnVlLCBlcnJvckNhbGxiYWNrRXJyb3IpOwogdGVzdCgnbmF2aWdhdG9yLndl
YmtpdEdldFVzZXJNZWRpYSh7YXVkaW86dHJ1ZSwgdmlkZW86dHJ1ZX0sIGVtcHR5RnVuY3Rpb24s
IHVuZGVmaW5lZCknLCB0cnVlLCBlcnJvckNhbGxiYWNrRXJyb3IpOwpkaWZmIC0tZ2l0IGEvTGF5
b3V0VGVzdHMvaHR0cC90ZXN0cy9tZWRpYS9tZWRpYS1zdHJlYW0vZGlzY29ubmVjdGVkLWZyYW1l
LWFscmVhZHktZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9tZWRpYS9tZWRp
YS1zdHJlYW0vZGlzY29ubmVjdGVkLWZyYW1lLWFscmVhZHktZXhwZWN0ZWQudHh0CmluZGV4IGU1
MDVkYjliMmM3ZWI2MzkzM2Y5ZWYxMDViMzBkOTI1ZDA5NmQ1NzEuLjJhYzMxNDc3NzJlYWUxNjMz
NDM4ZmRhZmFkNTMwYTVmNTI1OGJiNGQgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2h0dHAvdGVz
dHMvbWVkaWEvbWVkaWEtc3RyZWFtL2Rpc2Nvbm5lY3RlZC1mcmFtZS1hbHJlYWR5LWV4cGVjdGVk
LnR4dAorKysgYi9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL21lZGlhL21lZGlhLXN0cmVhbS9kaXNj
b25uZWN0ZWQtZnJhbWUtYWxyZWFkeS1leHBlY3RlZC50eHQKQEAgLTEsNCArMSw0IEBACi1DT05T
T0xFIE1FU1NBR0U6IGxpbmUgMjQ6IE5vdFN1cHBvcnRlZEVycm9yOiBET00gRXhjZXB0aW9uIDk6
IFRoZSBpbXBsZW1lbnRhdGlvbiBkaWQgbm90IHN1cHBvcnQgdGhlIHJlcXVlc3RlZCB0eXBlIG9m
IG9iamVjdCBvciBvcGVyYXRpb24uCitDT05TT0xFIE1FU1NBR0U6IGxpbmUgMjQ6IFR5cGVFcnJv
cjogVGhlIGltcGxlbWVudGF0aW9uIGRpZCBub3Qgc3VwcG9ydCB0aGUgcmVxdWVzdGVkIHR5cGUg
b2Ygb2JqZWN0IG9yIG9wZXJhdGlvbi4KIFRlc3RzIHRoYXQgd2hlbiBhIGdldFVzZXJNZWRpYSBy
ZXF1ZXN0IGlzIG1hZGUgYWZ0ZXIgaXRzIGZyYW1lIGhhcyBiZWVuIGRpc2Nvbm5lY3RlZCwgbm8g
Y2FsbGJhY2tzIGFyZSBtYWRlIGFuZCBubyBjcmFzaCBvY2N1cnMuCiAKIE9uIHN1Y2Nlc3MsIHlv
dSB3aWxsIHNlZSBhIHNlcmllcyBvZiAiUEFTUyIgbWVzc2FnZXMsIGZvbGxvd2VkIGJ5ICJURVNU
IENPTVBMRVRFIi4K
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>263479</attachid>
            <date>2015-10-19 06:54:35 -0700</date>
            <delta_ts>2015-11-02 05:21:16 -0800</delta_ts>
            <desc>Rebasing</desc>
            <filename>bug-149499-20151019155350.patch</filename>
            <type>text/plain</type>
            <size>50731</size>
            <attacher name="youenn fablet">youennf</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTkxMjg4CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggOWQ0ZWI5NDM0MTgyYzgz
NTRmZmIzZGJjZTBlMGNhODgxMjgxZWMyMi4uOTY0M2RiMGYzMTFjZmViYjljNzc1ZDljNTVhYjMz
MTQzMTZkZWYyOSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSw1ICsxLDQzIEBACiAyMDE1LTEwLTE5ICBZb3Vl
bm4gRmFibGV0ICA8eW91ZW5uLmZhYmxldEBjcmYuY2Fub24uZnI+CiAKKyAgICAgICAgTW92ZSB3
ZWJraXRHZXRVc2VyTWVkaWEgdG8gSlMgQnVpbHRpbgorICAgICAgICBodHRwczovL2J1Z3Mud2Vi
a2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTQ5NDk5CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9C
T0RZIChPT1BTISkuCisKKyAgICAgICAgSW1wbGVtZW50ZWQgd2Via2l0R2V0VXNlck1lZGlhIGFz
IGEgSlNCdWlsdGluIHdyYXBwZXIgYXJvdW5kIG5hdmlnYXRvci5tZWRpYURldmljZXMuZ2V0VXNl
ck1lZGlhLgorCisgICAgICAgIFJlbW92ZWQgY3BwIGJhc2VkIHZlcnNpb24uCisKKyAgICAgICAg
VGhlIGpzIGJ1aWx0aW5nIGltcGxlbWVudGF0aW9uIGNoZWNrcyBmb3IgYXJndW1lbnQgYnV0IGRv
ZXMgbm90IHJhaXNlIGV4Y2VwdGlvbiB3aGVuIHRoZSByZXF1ZXN0IGlzIG5vdCBzdXBwb3J0ZWQu
CisgICAgICAgIFRoZSBlcnJvciBjYWxsYmFjayBpcyBjYWxsZWQgaW5zdGVhZCwgaW4gYW4gYXN5
bmNocm9ub3VzIGZhc2hpb24uCisgICAgICAgIFRoZSBqcyBidWlsdGluIGltcGxlbWVudGF0aW9u
IGRvZXMgbm90IGNoZWNrIGZpcnN0IHRoYXQgaXQgaXMgY2FsbGVkIG9uIG5hdmlnYXRvciwgY29u
dHJhcnkgdG8gdGhlIGNwcCBpbXBsZW1lbnRhdGlvbi4KKyAgICAgICAgVGhpcyBpcyBkb25lIGFm
dGVyd2FyZHMgd2hlbiBjYWxsaW5nIG5hdmlnYXRvci5NZWRpYURldmljZXMuQGdldFVzZXJNZWRp
YS4KKworICAgICAgICBDb3ZlcmVkIGJ5IGV4aXN0aW5nIGFuZCBtb2RpZmllZCB0ZXN0cy4KKwor
ICAgICAgICAqIENNYWtlTGlzdHMudHh0OiBBZGRpbmcgTmF2aWdhdG9yVXNlck1lZGlhLmpzIGFz
IGJ1aWx0LWluIEpTIGZpbGUuCisgICAgICAgICogRGVyaXZlZFNvdXJjZXMubWFrZTogRGl0dG8u
CisgICAgICAgICogTW9kdWxlcy9tZWRpYXN0cmVhbS9OYXZpZ2F0b3JVc2VyTWVkaWEuaWRsOiBN
YWtpbmcgd2Via2l0R2V0VXNlck1lZGlhIEpTQnVpbHRpbgorICAgICAgICAqIE1vZHVsZXMvbWVk
aWFzdHJlYW0vTmF2aWdhdG9yVXNlck1lZGlhLmpzOgorICAgICAgICAod2Via2l0R2V0VXNlck1l
ZGlhKToKKyAgICAgICAgKiBNb2R1bGVzL21lZGlhc3RyZWFtL05hdmlnYXRvclVzZXJNZWRpYUVy
cm9yQ2FsbGJhY2suaDogUmVtb3ZlZC4KKyAgICAgICAgKiBNb2R1bGVzL21lZGlhc3RyZWFtL05h
dmlnYXRvclVzZXJNZWRpYUVycm9yQ2FsbGJhY2suaWRsOiBSZW1vdmVkLgorICAgICAgICAqIE1v
ZHVsZXMvbWVkaWFzdHJlYW0vTmF2aWdhdG9yVXNlck1lZGlhU3VjY2Vzc0NhbGxiYWNrLmg6IFJl
bW92ZWQuCisgICAgICAgICogTW9kdWxlcy9tZWRpYXN0cmVhbS9OYXZpZ2F0b3JVc2VyTWVkaWFT
dWNjZXNzQ2FsbGJhY2suaWRsOiBSZW1vdmVkLgorICAgICAgICAqIE1vZHVsZXMvbWVkaWFzdHJl
YW0vVXNlck1lZGlhUmVxdWVzdC5jcHA6CisgICAgICAgICogTW9kdWxlcy9tZWRpYXN0cmVhbS9V
c2VyTWVkaWFSZXF1ZXN0Lmg6CisgICAgICAgICogV2ViQ29yZS54Y29kZXByb2ovcHJvamVjdC5w
Ynhwcm9qOgorICAgICAgICAqIGJpbmRpbmdzL2pzL0pTRE9NV2luZG93QmFzZS5jcHA6CisgICAg
ICAgIChXZWJDb3JlOjpKU0RPTVdpbmRvd0Jhc2U6OmZpbmlzaENyZWF0aW9uKTogU3R5bGUgbW9k
aWZpY2F0aW9ucy4KKyAgICAgICAgKiBiaW5kaW5ncy9qcy9KU05hdmlnYXRvckN1c3RvbS5jcHA6
IFJlbW92ZWQuCisgICAgICAgICogYmluZGluZ3MvanMvV2ViQ29yZUpTQnVpbHRpbnMuY3BwOiBB
ZGRpbmcgc3VwcG9ydCBmb3IgTmF2aWdhdG9yVXNlck1lZGlhLmpzIGJ1aWx0LWluIEpTIGZpbGUu
CisgICAgICAgICogYmluZGluZ3MvanMvV2ViQ29yZUpTQnVpbHRpbnMuaDogRGl0dG8uCisgICAg
ICAgIChXZWJDb3JlOjpKU0J1aWx0aW5GdW5jdGlvbnM6OkpTQnVpbHRpbkZ1bmN0aW9ucyk6Cisg
ICAgICAgIChXZWJDb3JlOjpKU0J1aWx0aW5GdW5jdGlvbnM6Om5hdmlnYXRvclVzZXJNZWRpYUJ1
aWx0aW5zKToKKworMjAxNS0xMC0xOSAgWW91ZW5uIEZhYmxldCAgPHlvdWVubi5mYWJsZXRAY3Jm
LmNhbm9uLmZyPgorCiAgICAgICAgIEJpbmRpbmcgZ2VuZXJhdG9yIHNob3VsZCBnZW5lcmF0ZSBu
YW1lcyBmb3IgSlNCdWlsdGlucyBwYXJ0aWFsIGludGVyZmFjZSBtZXRob2RzIHVzaW5nIEltcGxl
bWVudGVkQnkgdmFsdWUKICAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcu
Y2dpP2lkPTE1MDE2MwogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9DTWFrZUxpc3RzLnR4
dCBiL1NvdXJjZS9XZWJDb3JlL0NNYWtlTGlzdHMudHh0CmluZGV4IGVhMDczNzU4N2I2NGVhMjFl
YjEwMTczZGVmNTgxOTY1NzNlNjljNzIuLmVlMmVkMmQyYzI3NTYzNTEwNTYwYzRkMWJlZDVlOTE0
YWU1NmYxYjcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL0NNYWtlTGlzdHMudHh0CisrKyBi
L1NvdXJjZS9XZWJDb3JlL0NNYWtlTGlzdHMudHh0CkBAIC0yNDEsOCArMjQxLDYgQEAgc2V0KFdl
YkNvcmVfTk9OX1NWR19JRExfRklMRVMKICAgICBNb2R1bGVzL21lZGlhc3RyZWFtL05hdmlnYXRv
ck1lZGlhRGV2aWNlcy5pZGwKICAgICBNb2R1bGVzL21lZGlhc3RyZWFtL05hdmlnYXRvclVzZXJN
ZWRpYS5pZGwKICAgICBNb2R1bGVzL21lZGlhc3RyZWFtL05hdmlnYXRvclVzZXJNZWRpYUVycm9y
LmlkbAotICAgIE1vZHVsZXMvbWVkaWFzdHJlYW0vTmF2aWdhdG9yVXNlck1lZGlhRXJyb3JDYWxs
YmFjay5pZGwKLSAgICBNb2R1bGVzL21lZGlhc3RyZWFtL05hdmlnYXRvclVzZXJNZWRpYVN1Y2Nl
c3NDYWxsYmFjay5pZGwKICAgICBNb2R1bGVzL21lZGlhc3RyZWFtL1JUQ0NvbmZpZ3VyYXRpb24u
aWRsCiAgICAgTW9kdWxlcy9tZWRpYXN0cmVhbS9SVENEVE1GU2VuZGVyLmlkbAogICAgIE1vZHVs
ZXMvbWVkaWFzdHJlYW0vUlRDRFRNRlRvbmVDaGFuZ2VFdmVudC5pZGwKQEAgLTEyMDQsNyArMTIw
Miw2IEBAIHNldChXZWJDb3JlX1NPVVJDRVMKICAgICBiaW5kaW5ncy9qcy9KU011dGF0aW9uQ2Fs
bGJhY2suY3BwCiAgICAgYmluZGluZ3MvanMvSlNNdXRhdGlvbk9ic2VydmVyQ3VzdG9tLmNwcAog
ICAgIGJpbmRpbmdzL2pzL0pTTmFtZWROb2RlTWFwQ3VzdG9tLmNwcAotICAgIGJpbmRpbmdzL2pz
L0pTTmF2aWdhdG9yQ3VzdG9tLmNwcAogICAgIGJpbmRpbmdzL2pzL0pTTm9kZUN1c3RvbS5jcHAK
ICAgICBiaW5kaW5ncy9qcy9KU05vZGVGaWx0ZXJDdXN0b20uY3BwCiAgICAgYmluZGluZ3MvanMv
SlNOb2RlSXRlcmF0b3JDdXN0b20uY3BwCkBAIC0zMzY0LDYgKzMzNjEsNyBAQCBzZXQoSURMX0FU
VFJJQlVURVNfRklMRSAke1dFQkNPUkVfRElSfS9iaW5kaW5ncy9zY3JpcHRzL0lETEF0dHJpYnV0
ZXMudHh0KQogCiBzZXQoV0VCQ09SRV9KU19CVUlMVElOUwogICAgICR7V0VCQ09SRV9ESVJ9L01v
ZHVsZXMvbWVkaWFzdHJlYW0vTWVkaWFEZXZpY2VzLmpzCisgICAgJHtXRUJDT1JFX0RJUn0vTW9k
dWxlcy9tZWRpYXN0cmVhbS9OYXZpZ2F0b3JVc2VyTWVkaWEuanMKICAgICAke1dFQkNPUkVfRElS
fS9Nb2R1bGVzL3N0cmVhbXMvQnl0ZUxlbmd0aFF1ZXVpbmdTdHJhdGVneS5qcwogICAgICR7V0VC
Q09SRV9ESVJ9L01vZHVsZXMvc3RyZWFtcy9Db3VudFF1ZXVpbmdTdHJhdGVneS5qcwogICAgICR7
V0VCQ09SRV9ESVJ9L01vZHVsZXMvc3RyZWFtcy9SZWFkYWJsZVN0cmVhbS5qcwpkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYkNvcmUvRGVyaXZlZFNvdXJjZXMubWFrZSBiL1NvdXJjZS9XZWJDb3JlL0Rl
cml2ZWRTb3VyY2VzLm1ha2UKaW5kZXggM2M1Zjg1ZmI4ODIzNzc3ZTM2YzUxYWE1ZGU2ODUxMDM4
MzYzNDYyNS4uYTZiMTNkNGRmZDlhZjA1NmQxYmVmYjdiYzczNDEyZTVlMWEzMzFmOSAxMDA2NDQK
LS0tIGEvU291cmNlL1dlYkNvcmUvRGVyaXZlZFNvdXJjZXMubWFrZQorKysgYi9Tb3VyY2UvV2Vi
Q29yZS9EZXJpdmVkU291cmNlcy5tYWtlCkBAIC0xMzcsOCArMTM3LDYgQEAgTk9OX1NWR19CSU5E
SU5HX0lETFMgPSBcCiAgICAgJChXZWJDb3JlKS9Nb2R1bGVzL21lZGlhc3RyZWFtL05hdmlnYXRv
ck1lZGlhRGV2aWNlcy5pZGwgXAogICAgICQoV2ViQ29yZSkvTW9kdWxlcy9tZWRpYXN0cmVhbS9O
YXZpZ2F0b3JVc2VyTWVkaWEuaWRsIFwKICAgICAkKFdlYkNvcmUpL01vZHVsZXMvbWVkaWFzdHJl
YW0vTmF2aWdhdG9yVXNlck1lZGlhRXJyb3IuaWRsIFwKLSAgICAkKFdlYkNvcmUpL01vZHVsZXMv
bWVkaWFzdHJlYW0vTmF2aWdhdG9yVXNlck1lZGlhRXJyb3JDYWxsYmFjay5pZGwgXAotICAgICQo
V2ViQ29yZSkvTW9kdWxlcy9tZWRpYXN0cmVhbS9OYXZpZ2F0b3JVc2VyTWVkaWFTdWNjZXNzQ2Fs
bGJhY2suaWRsIFwKICAgICAkKFdlYkNvcmUpL01vZHVsZXMvbWVkaWFzdHJlYW0vUlRDQ29uZmln
dXJhdGlvbi5pZGwgXAogICAgICQoV2ViQ29yZSkvTW9kdWxlcy9tZWRpYXN0cmVhbS9SVENEVE1G
U2VuZGVyLmlkbCBcCiAgICAgJChXZWJDb3JlKS9Nb2R1bGVzL21lZGlhc3RyZWFtL1JUQ0RUTUZU
b25lQ2hhbmdlRXZlbnQuaWRsIFwKQEAgLTEyNTYsNiArMTI1NCw3IEBAIFdlYlJlcGxheUlucHV0
cy5oIDogJChJTlBVVF9HRU5FUkFUT1JfU1BFQ0lGSUNBVElPTlMpICQoSU5QVVRfR0VORVJBVE9S
X1NDUklQVFMpCiAKIFdFQkNPUkVfSlNfQlVJTFRJTlMgPSBcCiAgICAgJChXZWJDb3JlKS9Nb2R1
bGVzL21lZGlhc3RyZWFtL01lZGlhRGV2aWNlcy5qcyBcCisgICAgJChXZWJDb3JlKS9Nb2R1bGVz
L21lZGlhc3RyZWFtL05hdmlnYXRvclVzZXJNZWRpYS5qcyBcCiAgICAgJChXZWJDb3JlKS9Nb2R1
bGVzL3N0cmVhbXMvQnl0ZUxlbmd0aFF1ZXVpbmdTdHJhdGVneS5qcyBcCiAgICAgJChXZWJDb3Jl
KS9Nb2R1bGVzL3N0cmVhbXMvQ291bnRRdWV1aW5nU3RyYXRlZ3kuanMgXAogICAgICQoV2ViQ29y
ZSkvTW9kdWxlcy9zdHJlYW1zL1JlYWRhYmxlU3RyZWFtLmpzIFwKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJDb3JlL01vZHVsZXMvbWVkaWFzdHJlYW0vTmF2aWdhdG9yVXNlck1lZGlhLmlkbCBiL1Nv
dXJjZS9XZWJDb3JlL01vZHVsZXMvbWVkaWFzdHJlYW0vTmF2aWdhdG9yVXNlck1lZGlhLmlkbApp
bmRleCA0YzY1Y2I3YWUxMmM0M2FhNGIzOTRmZjNkM2VmNGM5ZjkxNjVmODY1Li4zYWE0OTNmMGY5
NTliYWQyMjliZTFjOTRhOGYxMWJhNTI5NDUxN2EwIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29y
ZS9Nb2R1bGVzL21lZGlhc3RyZWFtL05hdmlnYXRvclVzZXJNZWRpYS5pZGwKKysrIGIvU291cmNl
L1dlYkNvcmUvTW9kdWxlcy9tZWRpYXN0cmVhbS9OYXZpZ2F0b3JVc2VyTWVkaWEuaWRsCkBAIC0y
MCw4ICsyMCw2IEBACiBbCiAgICAgQ29uZGl0aW9uYWw9TUVESUFfU1RSRUFNLAogXSBwYXJ0aWFs
IGludGVyZmFjZSBOYXZpZ2F0b3IgewotICAgIFtDdXN0b20sIFJhaXNlc0V4Y2VwdGlvbl0gdm9p
ZCB3ZWJraXRHZXRVc2VyTWVkaWEoRGljdGlvbmFyeSBvcHRpb25zLAotICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIE5hdmlnYXRvclVzZXJNZWRpYVN1Y2Nl
c3NDYWxsYmFjayBzdWNjZXNzQ2FsbGJhY2ssCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgb3B0aW9uYWwgTmF2aWdhdG9yVXNlck1lZGlhRXJyb3JDYWxs
YmFjayBlcnJvckNhbGxiYWNrKTsKKyAgICBbSlNCdWlsdGluXSB2b2lkIHdlYmtpdEdldFVzZXJN
ZWRpYShEaWN0aW9uYXJ5IG9iamVjdCwgYW55IHN1Y2Nlc3NDYWxsYmFjaywgYW55IGVycm9yQ2Fs
bGJhY2spOwogfTsKIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9tZWRpYXN0
cmVhbS9OYXZpZ2F0b3JVc2VyTWVkaWEuanMgYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL21lZGlh
c3RyZWFtL05hdmlnYXRvclVzZXJNZWRpYS5qcwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi44MWE1MzJlZjY4NzM5NTQ2
Zjg3YjFkZjAwZmEwZTY0NmMzNGRhOTgwCi0tLSAvZGV2L251bGwKKysrIGIvU291cmNlL1dlYkNv
cmUvTW9kdWxlcy9tZWRpYXN0cmVhbS9OYXZpZ2F0b3JVc2VyTWVkaWEuanMKQEAgLTAsMCArMSw0
NiBAQAorLyoKKyAqIENvcHlyaWdodCAoQykgMjAxNSBDYW5vbiBJbmMuCisgKgorICogUmVkaXN0
cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRo
b3V0CisgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9s
bG93aW5nIGNvbmRpdGlvbnMKKyAqIGFyZSBtZXQ6CisgKiAxLiBSZWRpc3RyaWJ1dGlvbnMgb2Yg
c291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNl
LCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgor
ICogMi4gUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBh
Ym92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5k
IHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKKyAqICAgIGRvY3VtZW50YXRpb24gYW5k
L29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCisgKgor
ICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBBUFBMRSBJTkMuIGBgQVMgSVMnJyBBTkQg
QU5ZCisgKiBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9U
IExJTUlURUQgVE8sIFRIRQorICogSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElU
WSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSCisgKiBQVVJQT1NFIEFSRSBESVNDTEFJTUVE
LiAgSU4gTk8gRVZFTlQgU0hBTEwgQVBQTEUgSU5DLiBPUgorICogQ09OVFJJQlVUT1JTIEJFIExJ
QUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsCisgKiBF
WEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJ
TUlURUQgVE8sCisgKiBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VT
OyBMT1NTIE9GIFVTRSwgREFUQSwgT1IKKyAqIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQ
VElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkKKyAqIE9GIExJQUJJTElUWSwg
V0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVAorICogKElOQ0xV
RElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBU
SEUgVVNFCisgKiBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJ
QklMSVRZIE9GIFNVQ0ggREFNQUdFLgorICovCisKK2Z1bmN0aW9uIHdlYmtpdEdldFVzZXJNZWRp
YShvcHRpb25zLCBzdWNjZXNzQ2FsbGJhY2ssIGVycm9yQ2FsbGJhY2spCit7CisgICAgInVzZSBz
dHJpY3QiOworCisgICAgaWYgKGFyZ3VtZW50cy5sZW5ndGggPCAzKQorICAgICAgICB0aHJvdyBu
ZXcgQFR5cGVFcnJvcigiTm90IGVub3VnaCBhcmd1bWVudHMiKTsKKworICAgIGlmIChvcHRpb25z
ICE9PSBPYmplY3Qob3B0aW9ucykpCisgICAgICAgIHRocm93IG5ldyBAVHlwZUVycm9yKCJBcmd1
bWVudCAxIChvcHRpb25zKSB0byBOYXZpZ2F0b3Iud2Via2l0R2V0VXNlck1lZGlhIG11c3QgYmUg
YW4gb2JqZWN0Iik7CisKKyAgICBpZiAodHlwZW9mIHN1Y2Nlc3NDYWxsYmFjayAhPT0gImZ1bmN0
aW9uIikKKyAgICAgICAgdGhyb3cgbmV3IEBUeXBlRXJyb3IoIkFyZ3VtZW50IDIgKCdzdWNjZXNz
Q2FsbGJhY2snKSB0byBOYXZpZ2F0b3Iud2Via2l0R2V0VXNlck1lZGlhIG11c3QgYmUgYSBmdW5j
dGlvbiIpOworICAgIGlmICh0eXBlb2YgZXJyb3JDYWxsYmFjayAhPT0gImZ1bmN0aW9uIikKKyAg
ICAgICAgdGhyb3cgbmV3IEBUeXBlRXJyb3IoIkFyZ3VtZW50IDMgKCdlcnJvckNhbGxiYWNrJykg
dG8gTmF2aWdhdG9yLndlYmtpdEdldFVzZXJNZWRpYSBtdXN0IGJlIGEgZnVuY3Rpb24iKTsKKwor
ICAgIC8vIEZJWE1FOiBXZSBzaG91bGQgcmFpc2UgYSBET00gdW5zdXBwb3J0ZWQgZXhjZXB0aW9u
IGlmIHRoZXJlIGlzIG5vIG5hdmlnYXRvci4KKyAgICBpZiAoIW5hdmlnYXRvcikKKyAgICAgICAg
dGhyb3cgbmV3IEBUeXBlRXJyb3IoIlRoZSBpbXBsZW1lbnRhdGlvbiBkaWQgbm90IHN1cHBvcnQg
dGhlIHJlcXVlc3RlZCB0eXBlIG9mIG9iamVjdCBvciBvcGVyYXRpb24uIik7CisKKyAgICBuYXZp
Z2F0b3IubWVkaWFEZXZpY2VzLkBnZXRVc2VyTWVkaWFGcm9tSlMuQGNhbGwobmF2aWdhdG9yLm1l
ZGlhRGV2aWNlcywgb3B0aW9ucykudGhlbihzdWNjZXNzQ2FsbGJhY2ssIGVycm9yQ2FsbGJhY2sp
OworfQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9tZWRpYXN0cmVhbS9OYXZp
Z2F0b3JVc2VyTWVkaWFFcnJvckNhbGxiYWNrLmggYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL21l
ZGlhc3RyZWFtL05hdmlnYXRvclVzZXJNZWRpYUVycm9yQ2FsbGJhY2suaApkZWxldGVkIGZpbGUg
bW9kZSAxMDA2NDQKaW5kZXggZGQzYzhiMzJiNmVjN2M4MDYxZDYyNDIxMTNlOWQwODY0MWY1YWEw
OS4uMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMAotLS0gYS9Tb3VyY2Uv
V2ViQ29yZS9Nb2R1bGVzL21lZGlhc3RyZWFtL05hdmlnYXRvclVzZXJNZWRpYUVycm9yQ2FsbGJh
Y2suaAorKysgL2Rldi9udWxsCkBAIC0xLDQ1ICswLDAgQEAKLS8qCi0gKiBDb3B5cmlnaHQgKEMp
IDIwMTEgR29vZ2xlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KLSAqCi0gKiBSZWRpc3RyaWJ1
dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQK
LSAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dp
bmcgY29uZGl0aW9ucwotICogYXJlIG1ldDoKLSAqIDEuICBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291
cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAotICogICAgIG5vdGljZSwg
dGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KLSAq
IDIuICBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFi
b3ZlIGNvcHlyaWdodAotICogICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5k
IHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKLSAqICAgICBkb2N1bWVudGF0aW9uIGFu
ZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgotICoK
LSAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgQVBQTEUgSU5DLiBBTkQgSVRTIENPTlRS
SUJVVE9SUyBgYEFTIElTJycgQU5EIEFOWQotICogRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJ
RVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBUSEUgSU1QTElFRAotICogV0FSUkFO
VElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQ
T1NFIEFSRQotICogRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgQVBQTEUgSU5DLiBPUiBJ
VFMgQ09OVFJJQlVUT1JTIEJFIExJQUJMRSBGT1IgQU5ZCi0gKiBESVJFQ1QsIElORElSRUNULCBJ
TkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwgREFNQUdFUwot
ICogKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRiBTVUJTVElU
VVRFIEdPT0RTIE9SIFNFUlZJQ0VTOwotICogTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7
IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OCi0gKiBBTlkg
VEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElU
WSwgT1IgVE9SVAotICogKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lO
RyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFIE9GIFRISVMKLSAqIFNPRlRXQVJFLCBFVkVOIElG
IEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgotICovCi0KLSNpZm5k
ZWYgTmF2aWdhdG9yVXNlck1lZGlhRXJyb3JDYWxsYmFja19oCi0jZGVmaW5lIE5hdmlnYXRvclVz
ZXJNZWRpYUVycm9yQ2FsbGJhY2tfaAotCi0jaWYgRU5BQkxFKE1FRElBX1NUUkVBTSkKLQotI2lu
Y2x1ZGUgIk5hdmlnYXRvclVzZXJNZWRpYUVycm9yLmgiCi0jaW5jbHVkZSA8d3RmL1JlZkNvdW50
ZWQuaD4KLQotbmFtZXNwYWNlIFdlYkNvcmUgewotCi1jbGFzcyBOYXZpZ2F0b3JVc2VyTWVkaWFF
cnJvckNhbGxiYWNrIDogcHVibGljIFJlZkNvdW50ZWQ8TmF2aWdhdG9yVXNlck1lZGlhRXJyb3JD
YWxsYmFjaz4gewotcHVibGljOgotICAgIHZpcnR1YWwgfk5hdmlnYXRvclVzZXJNZWRpYUVycm9y
Q2FsbGJhY2soKSB7IH0KLSAgICB2aXJ0dWFsIGJvb2wgaGFuZGxlRXZlbnQoTmF2aWdhdG9yVXNl
ck1lZGlhRXJyb3IqKSA9IDA7Ci19OwotCi19IC8vIG5hbWVzcGFjZSBXZWJDb3JlCi0KLSNlbmRp
ZiAvLyBFTkFCTEUoTUVESUFfU1RSRUFNKQotCi0jZW5kaWYgLy8gTmF2aWdhdG9yVXNlck1lZGlh
RXJyb3JDYWxsYmFja19oCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL21lZGlh
c3RyZWFtL05hdmlnYXRvclVzZXJNZWRpYUVycm9yQ2FsbGJhY2suaWRsIGIvU291cmNlL1dlYkNv
cmUvTW9kdWxlcy9tZWRpYXN0cmVhbS9OYXZpZ2F0b3JVc2VyTWVkaWFFcnJvckNhbGxiYWNrLmlk
bApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggZjBhYzdkZDFiZjlhM2ZlMmQyZmNmMjAx
M2Q2NjA0N2NlZjNjNmZkMS4uMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL21lZGlhc3RyZWFtL05hdmlnYXRvclVzZXJN
ZWRpYUVycm9yQ2FsbGJhY2suaWRsCisrKyAvZGV2L251bGwKQEAgLTEsMzEgKzAsMCBAQAotLyoK
LSAqIENvcHlyaWdodCAoQykgMjAxMSBHb29nbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgot
ICoKLSAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMs
IHdpdGggb3Igd2l0aG91dAotICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVk
IHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCi0gKiBhcmUgbWV0OgotICogMS4gIFJlZGlz
dHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0
Ci0gKiAgICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2lu
ZyBkaXNjbGFpbWVyLgotICogMi4gIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0
IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0Ci0gKiAgICAgbm90aWNlLCB0aGlzIGxpc3Qg
b2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQotICogICAg
IGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBk
aXN0cmlidXRpb24uCi0gKgotICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBBUFBMRSBJ
TkMuIEFORCBJVFMgQ09OVFJJQlVUT1JTIGBgQVMgSVMnJyBBTkQgQU5ZCi0gKiBFWFBSRVNTIE9S
IElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFRIRSBJ
TVBMSUVECi0gKiBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1Ig
QSBQQVJUSUNVTEFSIFBVUlBPU0UgQVJFCi0gKiBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFM
TCBBUFBMRSBJTkMuIE9SIElUUyBDT05UUklCVVRPUlMgQkUgTElBQkxFIEZPUiBBTlkKLSAqIERJ
UkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IgQ09OU0VR
VUVOVElBTCBEQU1BR0VTCi0gKiAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NV
UkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7Ci0gKiBMT1NTIE9GIFVTRSwg
REFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNF
RCBBTkQgT04KLSAqIEFOWSBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNU
LCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUCi0gKiAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1Ig
T1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UgT0YgVEhJUwotICog
U09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1B
R0UuCi0gKi8KLQotWwotICAgIENvbmRpdGlvbmFsPU1FRElBX1NUUkVBTSwKLSAgICBDYWxsYmFj
az1GdW5jdGlvbk9ubHksCi1dIGNhbGxiYWNrIGludGVyZmFjZSBOYXZpZ2F0b3JVc2VyTWVkaWFF
cnJvckNhbGxiYWNrIHsKLSAgICBib29sZWFuIGhhbmRsZUV2ZW50KE5hdmlnYXRvclVzZXJNZWRp
YUVycm9yIGVycm9yKTsKLX07Ci0KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMv
bWVkaWFzdHJlYW0vTmF2aWdhdG9yVXNlck1lZGlhU3VjY2Vzc0NhbGxiYWNrLmggYi9Tb3VyY2Uv
V2ViQ29yZS9Nb2R1bGVzL21lZGlhc3RyZWFtL05hdmlnYXRvclVzZXJNZWRpYVN1Y2Nlc3NDYWxs
YmFjay5oCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCA5ZjQ1NmVhZGM2YWU0OTQxODZj
ZjA3YzZlMmE1MmUwNDc2M2Y5OTkwLi4wMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwCi0tLSBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvbWVkaWFzdHJlYW0vTmF2aWdhdG9y
VXNlck1lZGlhU3VjY2Vzc0NhbGxiYWNrLmgKKysrIC9kZXYvbnVsbApAQCAtMSw0NiArMCwwIEBA
Ci0vKgotICogQ29weXJpZ2h0IChDKSAyMDExIEdvb2dsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2
ZWQuCi0gKgotICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBm
b3Jtcywgd2l0aCBvciB3aXRob3V0Ci0gKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJv
dmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKLSAqIGFyZSBtZXQ6Ci0gKiAxLiAg
UmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5
cmlnaHQKLSAqICAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9s
bG93aW5nIGRpc2NsYWltZXIuCi0gKiAyLiAgUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3Jt
IG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKLSAqICAgICBub3RpY2UsIHRoaXMg
bGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCi0g
KiAgICAgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGgg
dGhlIGRpc3RyaWJ1dGlvbi4KLSAqCi0gKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIEFQ
UExFIElOQy4gQU5EIElUUyBDT05UUklCVVRPUlMgYGBBUyBJUycnIEFORCBBTlkKLSAqIEVYUFJF
U1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywg
VEhFIElNUExJRUQKLSAqIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNT
IEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBUkUKLSAqIERJU0NMQUlNRUQuIElOIE5PIEVWRU5U
IFNIQUxMIEFQUExFIElOQy4gT1IgSVRTIENPTlRSSUJVVE9SUyBCRSBMSUFCTEUgRk9SIEFOWQot
ICogRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUiBD
T05TRVFVRU5USUFMIERBTUFHRVMKLSAqIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywg
UFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsKLSAqIExPU1MgT0Yg
VVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIg
Q0FVU0VEIEFORCBPTgotICogQU5ZIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09O
VFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQKLSAqIChJTkNMVURJTkcgTkVHTElHRU5D
RSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRSBPRiBUSElT
Ci0gKiBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNI
IERBTUFHRS4KLSAqLwotCi0jaWZuZGVmIE5hdmlnYXRvclVzZXJNZWRpYVN1Y2Nlc3NDYWxsYmFj
a19oCi0jZGVmaW5lIE5hdmlnYXRvclVzZXJNZWRpYVN1Y2Nlc3NDYWxsYmFja19oCi0KLSNpZiBF
TkFCTEUoTUVESUFfU1RSRUFNKQotCi0jaW5jbHVkZSA8d3RmL1JlZkNvdW50ZWQuaD4KLQotbmFt
ZXNwYWNlIFdlYkNvcmUgewotCi1jbGFzcyBNZWRpYVN0cmVhbTsKLQotY2xhc3MgTmF2aWdhdG9y
VXNlck1lZGlhU3VjY2Vzc0NhbGxiYWNrIDogcHVibGljIFJlZkNvdW50ZWQ8TmF2aWdhdG9yVXNl
ck1lZGlhU3VjY2Vzc0NhbGxiYWNrPiB7Ci1wdWJsaWM6Ci0gICAgdmlydHVhbCB+TmF2aWdhdG9y
VXNlck1lZGlhU3VjY2Vzc0NhbGxiYWNrKCkgeyB9Ci0gICAgdmlydHVhbCBib29sIGhhbmRsZUV2
ZW50KE1lZGlhU3RyZWFtKikgPSAwOwotfTsKLQotfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQotCi0j
ZW5kaWYgLy8gRU5BQkxFKE1FRElBX1NUUkVBTSkKLQotI2VuZGlmIC8vIE5hdmlnYXRvclVzZXJN
ZWRpYVN1Y2Nlc3NDYWxsYmFja19oCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVz
L21lZGlhc3RyZWFtL05hdmlnYXRvclVzZXJNZWRpYVN1Y2Nlc3NDYWxsYmFjay5pZGwgYi9Tb3Vy
Y2UvV2ViQ29yZS9Nb2R1bGVzL21lZGlhc3RyZWFtL05hdmlnYXRvclVzZXJNZWRpYVN1Y2Nlc3ND
YWxsYmFjay5pZGwKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDJkMTkwY2YyZWIxOTIy
MDk1OGE4Y2U4YmNiZjc4ZDM0NGNmZDJlNTAuLjAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAKLS0tIGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9tZWRpYXN0cmVhbS9OYXZp
Z2F0b3JVc2VyTWVkaWFTdWNjZXNzQ2FsbGJhY2suaWRsCisrKyAvZGV2L251bGwKQEAgLTEsMzEg
KzAsMCBAQAotLyoKLSAqIENvcHlyaWdodCAoQykgMjAxMSBHb29nbGUgSW5jLiBBbGwgcmlnaHRz
IHJlc2VydmVkLgotICoKLSAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBi
aW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAotICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0
dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCi0gKiBhcmUgbWV0Ogot
ICogMS4gIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJv
dmUgY29weXJpZ2h0Ci0gKiAgICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQg
dGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgotICogMi4gIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5h
cnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0Ci0gKiAgICAgbm90aWNl
LCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGlu
IHRoZQotICogICAgIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRl
ZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCi0gKgotICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURF
RCBCWSBBUFBMRSBJTkMuIEFORCBJVFMgQ09OVFJJQlVUT1JTIGBgQVMgSVMnJyBBTkQgQU5ZCi0g
KiBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlU
RUQgVE8sIFRIRSBJTVBMSUVECi0gKiBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQg
RklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UgQVJFCi0gKiBESVNDTEFJTUVELiBJTiBO
TyBFVkVOVCBTSEFMTCBBUFBMRSBJTkMuIE9SIElUUyBDT05UUklCVVRPUlMgQkUgTElBQkxFIEZP
UiBBTlkKLSAqIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFS
WSwgT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTCi0gKiAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlU
RUQgVE8sIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7Ci0gKiBM
T1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBI
T1dFVkVSIENBVVNFRCBBTkQgT04KLSAqIEFOWSBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVS
IElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUCi0gKiAoSU5DTFVESU5HIE5F
R0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0Ug
T0YgVEhJUwotICogU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkg
T0YgU1VDSCBEQU1BR0UuCi0gKi8KLQotWwotICAgIENvbmRpdGlvbmFsPU1FRElBX1NUUkVBTSwK
LSAgICBDYWxsYmFjaz1GdW5jdGlvbk9ubHksCi1dIGNhbGxiYWNrIGludGVyZmFjZSBOYXZpZ2F0
b3JVc2VyTWVkaWFTdWNjZXNzQ2FsbGJhY2sgewotICAgIGJvb2xlYW4gaGFuZGxlRXZlbnQoTWVk
aWFTdHJlYW0gc3RyZWFtKTsKLX07Ci0KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL01vZHVs
ZXMvbWVkaWFzdHJlYW0vVXNlck1lZGlhUmVxdWVzdC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1
bGVzL21lZGlhc3RyZWFtL1VzZXJNZWRpYVJlcXVlc3QuY3BwCmluZGV4IGMzZjMzODBmYWJiZmJl
MTVjMzE2MmYzYjczZDc0NmJlYWE2NzdmYTMuLmQzZmMzYmZhYTdlMjlhOGEzMWQ3NzEzOWNhY2I3
OWNkYTQzZTg3MTcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvbWVkaWFzdHJl
YW0vVXNlck1lZGlhUmVxdWVzdC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9tZWRp
YXN0cmVhbS9Vc2VyTWVkaWFSZXF1ZXN0LmNwcApAQCAtNDcsOCArNDcsNiBAQAogI2luY2x1ZGUg
Ik1lZGlhQ29uc3RyYWludHNJbXBsLmgiCiAjaW5jbHVkZSAiTWVkaWFTdHJlYW0uaCIKICNpbmNs
dWRlICJNZWRpYVN0cmVhbVByaXZhdGUuaCIKLSNpbmNsdWRlICJOYXZpZ2F0b3JVc2VyTWVkaWFF
cnJvckNhbGxiYWNrLmgiCi0jaW5jbHVkZSAiTmF2aWdhdG9yVXNlck1lZGlhU3VjY2Vzc0NhbGxi
YWNrLmgiCiAjaW5jbHVkZSAiUmVhbHRpbWVNZWRpYVNvdXJjZUNlbnRlci5oIgogI2luY2x1ZGUg
IlNlY3VyaXR5T3JpZ2luLmgiCiAjaW5jbHVkZSAiVXNlck1lZGlhQ29udHJvbGxlci5oIgpkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9tZWRpYXN0cmVhbS9Vc2VyTWVkaWFSZXF1
ZXN0LmggYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL21lZGlhc3RyZWFtL1VzZXJNZWRpYVJlcXVl
c3QuaAppbmRleCBkZDIwMTEzY2FjNTVkNzE0ZTNkYzI1MzUxNGFiNDAzZTcyNjM4MjE2Li5lY2Vh
NTlhNmNhNmNlN2IzNDFjZGMwNzQ3MWFhZjI0OWUyYmU1MTY3IDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V2ViQ29yZS9Nb2R1bGVzL21lZGlhc3RyZWFtL1VzZXJNZWRpYVJlcXVlc3QuaAorKysgYi9Tb3Vy
Y2UvV2ViQ29yZS9Nb2R1bGVzL21lZGlhc3RyZWFtL1VzZXJNZWRpYVJlcXVlc3QuaApAQCAtNDks
OCArNDksNiBAQCBjbGFzcyBEb2N1bWVudDsKIGNsYXNzIEZyYW1lOwogY2xhc3MgTWVkaWFDb25z
dHJhaW50czsKIGNsYXNzIE1lZGlhU3RyZWFtUHJpdmF0ZTsKLWNsYXNzIE5hdmlnYXRvclVzZXJN
ZWRpYUVycm9yQ2FsbGJhY2s7Ci1jbGFzcyBOYXZpZ2F0b3JVc2VyTWVkaWFTdWNjZXNzQ2FsbGJh
Y2s7CiBjbGFzcyBVc2VyTWVkaWFDb250cm9sbGVyOwogY2xhc3MgU2VjdXJpdHlPcmlnaW47CiAK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUueGNvZGVwcm9qL3Byb2plY3QucGJ4
cHJvaiBiL1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvagpp
bmRleCBiZjBmZTY1ODM1YzdlOTY2Yjc1ODBhYmIzOGRmMjM2ZWI2ZGU4ZTg5Li5iMmVmODVkNTg2
Y2E2NzI0ZmMzMjk1YzYwMmFkNGYwMDQ1M2RlYTcxIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29y
ZS9XZWJDb3JlLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2oKKysrIGIvU291cmNlL1dlYkNvcmUv
V2ViQ29yZS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qCkBAIC0xNTMsNyArMTUzLDYgQEAKIAkJ
MDczNzk0RTIxOUVFMkQxQjAwRTVBMDQ1IC8qIE1lZGlhQ29uc3RyYWludHNNb2NrLmggaW4gSGVh
ZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAwNzM3OTRFMDE5RUUyRDFC
MDBFNUEwNDUgLyogTWVkaWFDb25zdHJhaW50c01vY2suaCAqLzsgfTsKIAkJMDczNzk0RTUxOUVF
MkZGMjAwRTVBMDQ1IC8qIEpTUlRDQ29uZmlndXJhdGlvbi5jcHAgaW4gU291cmNlcyAqLyA9IHtp
c2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAwNzM3OTRFMzE5RUUyRkYyMDBFNUEwNDUgLyog
SlNSVENDb25maWd1cmF0aW9uLmNwcCAqLzsgfTsKIAkJMDczNzk0RTYxOUVFMkZGMjAwRTVBMDQ1
IC8qIEpTUlRDQ29uZmlndXJhdGlvbi5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRG
aWxlOyBmaWxlUmVmID0gMDczNzk0RTQxOUVFMkZGMjAwRTVBMDQ1IC8qIEpTUlRDQ29uZmlndXJh
dGlvbi5oICovOyB9OwotCQkwNzM3OTRFODE5RUUzMzVDMDBFNUEwNDUgLyogSlNOYXZpZ2F0b3JD
dXN0b20uY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0g
MDczNzk0RTcxOUVFMzM1QzAwRTVBMDQ1IC8qIEpTTmF2aWdhdG9yQ3VzdG9tLmNwcCAqLzsgfTsK
IAkJMDczNzk0RUIxOUVFMzQxRTAwRTVBMDQ1IC8qIEpTUlRDSWNlU2VydmVyLmNwcCBpbiBTb3Vy
Y2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDA3Mzc5NEU5MTlFRTM0MUUw
MEU1QTA0NSAvKiBKU1JUQ0ljZVNlcnZlci5jcHAgKi87IH07CiAJCTA3Mzc5NEVDMTlFRTM0MUUw
MEU1QTA0NSAvKiBKU1JUQ0ljZVNlcnZlci5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVp
bGRGaWxlOyBmaWxlUmVmID0gMDczNzk0RUExOUVFMzQxRTAwRTVBMDQ1IC8qIEpTUlRDSWNlU2Vy
dmVyLmggKi87IH07CiAJCTA3Mzc5NEYxMTlFRTM3QkIwMEU1QTA0NSAvKiBSVENQZWVyQ29ubmVj
dGlvbkhhbmRsZXJNb2NrLmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsg
ZmlsZVJlZiA9IDA3Mzc5NEVGMTlFRTM3QkIwMEU1QTA0NSAvKiBSVENQZWVyQ29ubmVjdGlvbkhh
bmRsZXJNb2NrLmNwcCAqLzsgfTsKQEAgLTE3MywxMCArMTcyLDYgQEAKIAkJMDczQkUzNDExN0Qx
N0UwMTAwMkJENDMxIC8qIEpTTmF2aWdhdG9yVXNlck1lZGlhLmggaW4gSGVhZGVycyAqLyA9IHtp
c2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAwNzNCRTMzRjE3RDE3RTAxMDAyQkQ0MzEgLyog
SlNOYXZpZ2F0b3JVc2VyTWVkaWEuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2
YXRlLCApOyB9OyB9OwogCQkwNzNCRTM0ODE3RDE3RTdBMDAyQkQ0MzEgLyogSlNOYXZpZ2F0b3JV
c2VyTWVkaWFFcnJvci5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZp
bGVSZWYgPSAwNzNCRTM0MjE3RDE3RTdBMDAyQkQ0MzEgLyogSlNOYXZpZ2F0b3JVc2VyTWVkaWFF
cnJvci5jcHAgKi87IH07CiAJCTA3M0JFMzQ5MTdEMTdFN0EwMDJCRDQzMSAvKiBKU05hdmlnYXRv
clVzZXJNZWRpYUVycm9yLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZp
bGVSZWYgPSAwNzNCRTM0MzE3RDE3RTdBMDAyQkQ0MzEgLyogSlNOYXZpZ2F0b3JVc2VyTWVkaWFF
cnJvci5oICovOyB9OwotCQkwNzNCRTM0QTE3RDE3RTdBMDAyQkQ0MzEgLyogSlNOYXZpZ2F0b3JV
c2VyTWVkaWFFcnJvckNhbGxiYWNrLmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxk
RmlsZTsgZmlsZVJlZiA9IDA3M0JFMzQ0MTdEMTdFN0EwMDJCRDQzMSAvKiBKU05hdmlnYXRvclVz
ZXJNZWRpYUVycm9yQ2FsbGJhY2suY3BwICovOyB9OwotCQkwNzNCRTM0QjE3RDE3RTdBMDAyQkQ0
MzEgLyogSlNOYXZpZ2F0b3JVc2VyTWVkaWFFcnJvckNhbGxiYWNrLmggaW4gSGVhZGVycyAqLyA9
IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAwNzNCRTM0NTE3RDE3RTdBMDAyQkQ0MzEg
LyogSlNOYXZpZ2F0b3JVc2VyTWVkaWFFcnJvckNhbGxiYWNrLmggKi87IH07Ci0JCTA3M0JFMzRD
MTdEMTdFN0EwMDJCRDQzMSAvKiBKU05hdmlnYXRvclVzZXJNZWRpYVN1Y2Nlc3NDYWxsYmFjay5j
cHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAwNzNCRTM0
NjE3RDE3RTdBMDAyQkQ0MzEgLyogSlNOYXZpZ2F0b3JVc2VyTWVkaWFTdWNjZXNzQ2FsbGJhY2su
Y3BwICovOyB9OwotCQkwNzNCRTM0RDE3RDE3RTdBMDAyQkQ0MzEgLyogSlNOYXZpZ2F0b3JVc2Vy
TWVkaWFTdWNjZXNzQ2FsbGJhY2suaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmls
ZTsgZmlsZVJlZiA9IDA3M0JFMzQ3MTdEMTdFN0EwMDJCRDQzMSAvKiBKU05hdmlnYXRvclVzZXJN
ZWRpYVN1Y2Nlc3NDYWxsYmFjay5oICovOyB9OwogCQkwNzNCRTM0RTE3RDE4MEIyMDAyQkQ0MzEg
LyogUlRDU2Vzc2lvbkRlc2NyaXB0aW9uRGVzY3JpcHRvci5jcHAgaW4gU291cmNlcyAqLyA9IHtp
c2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAwNzIyMUJBQjE3Q0YwQUQ0MDA4NDhFNTEgLyog
UlRDU2Vzc2lvbkRlc2NyaXB0aW9uRGVzY3JpcHRvci5jcHAgKi87IH07CiAJCTA3M0JFMzRGMTdE
MTgxODMwMDJCRDQzMSAvKiBSVENJY2VDYW5kaWRhdGVEZXNjcmlwdG9yLmNwcCBpbiBTb3VyY2Vz
ICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDA3MjIxQkE2MTdDRjBBRDQwMDg0
OEU1MSAvKiBSVENJY2VDYW5kaWRhdGVEZXNjcmlwdG9yLmNwcCAqLzsgfTsKIAkJMDczQkUzNTAx
N0QxODFBNjAwMkJENDMxIC8qIFJUQ1BlZXJDb25uZWN0aW9uSGFuZGxlci5jcHAgaW4gU291cmNl
cyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAwNzIyMUJBODE3Q0YwQUQ0MDA4
NDhFNTEgLyogUlRDUGVlckNvbm5lY3Rpb25IYW5kbGVyLmNwcCAqLzsgfTsKQEAgLTI0MCw4ICsy
MzUsNiBAQAogCQkwNzhFMDkxODE3RDE0RDFDMDA0MjBBQTEgLyogTWVkaWFTdHJlYW1UcmFjay5o
IGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMDcyMjFCNTUx
N0NFQzMyNzAwODQ4RTUxIC8qIE1lZGlhU3RyZWFtVHJhY2suaCAqLzsgfTsKIAkJMDc4RTA5MTkx
N0QxNEQxQzAwNDIwQUExIC8qIE1lZGlhU3RyZWFtVHJhY2tFdmVudC5oIGluIEhlYWRlcnMgKi8g
PSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMDcyMjFCNTgxN0NFQzMyNzAwODQ4RTUx
IC8qIE1lZGlhU3RyZWFtVHJhY2tFdmVudC5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0g
KFByaXZhdGUsICk7IH07IH07CiAJCTA3OEUwOTFCMTdEMTREMUMwMDQyMEFBMSAvKiBOYXZpZ2F0
b3JVc2VyTWVkaWFFcnJvci5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBm
aWxlUmVmID0gMDcyMjFCNUQxN0NFQzMyNzAwODQ4RTUxIC8qIE5hdmlnYXRvclVzZXJNZWRpYUVy
cm9yLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKLQkJ
MDc4RTA5MUMxN0QxNEQxQzAwNDIwQUExIC8qIE5hdmlnYXRvclVzZXJNZWRpYUVycm9yQ2FsbGJh
Y2suaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDA3MjIx
QjVGMTdDRUMzMjcwMDg0OEU1MSAvKiBOYXZpZ2F0b3JVc2VyTWVkaWFFcnJvckNhbGxiYWNrLmgg
Ki87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKLQkJMDc4RTA5
MUQxN0QxNEQxQzAwNDIwQUExIC8qIE5hdmlnYXRvclVzZXJNZWRpYVN1Y2Nlc3NDYWxsYmFjay5o
IGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMDcyMjFCNjEx
N0NFQzMyNzAwODQ4RTUxIC8qIE5hdmlnYXRvclVzZXJNZWRpYVN1Y2Nlc3NDYWxsYmFjay5oICov
OyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CiAJCTA3OEUwOTFF
MTdEMTREMUMwMDQyMEFBMSAvKiBSVENEYXRhQ2hhbm5lbC5oIGluIEhlYWRlcnMgKi8gPSB7aXNh
ID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMDcyMjFCNjQxN0NFQzMyNzAwODQ4RTUxIC8qIFJU
Q0RhdGFDaGFubmVsLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsg
fTsgfTsKIAkJMDc4RTA5MUYxN0QxNEQxQzAwNDIwQUExIC8qIFJUQ0RhdGFDaGFubmVsRXZlbnQu
aCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDA3MjIxQjY3
MTdDRUMzMjcwMDg0OEU1MSAvKiBSVENEYXRhQ2hhbm5lbEV2ZW50LmggKi87IHNldHRpbmdzID0g
e0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKIAkJMDc4RTA5MjAxN0QxNEQxQzAwNDIw
QUExIC8qIFJUQ0RUTUZTZW5kZXIuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmls
ZTsgZmlsZVJlZiA9IDA3MjIxQjZBMTdDRUMzMjcwMDg0OEU1MSAvKiBSVENEVE1GU2VuZGVyLmgg
Ki87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKQEAgLTczNDIs
MTAgKzczMzUsNiBAQAogCQkwNzIyMUI1QzE3Q0VDMzI3MDA4NDhFNTEgLyogTmF2aWdhdG9yVXNl
ck1lZGlhLmlkbCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0
OyBsYXN0S25vd25GaWxlVHlwZSA9IHRleHQ7IHBhdGggPSBOYXZpZ2F0b3JVc2VyTWVkaWEuaWRs
OyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQkwNzIyMUI1RDE3Q0VDMzI3MDA4NDhFNTEg
LyogTmF2aWdhdG9yVXNlck1lZGlhRXJyb3IuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNl
OyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBw
YXRoID0gTmF2aWdhdG9yVXNlck1lZGlhRXJyb3IuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+Ijsg
fTsKIAkJMDcyMjFCNUUxN0NFQzMyNzAwODQ4RTUxIC8qIE5hdmlnYXRvclVzZXJNZWRpYUVycm9y
LmlkbCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0
S25vd25GaWxlVHlwZSA9IHRleHQ7IHBhdGggPSBOYXZpZ2F0b3JVc2VyTWVkaWFFcnJvci5pZGw7
IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07Ci0JCTA3MjIxQjVGMTdDRUMzMjcwMDg0OEU1MSAv
KiBOYXZpZ2F0b3JVc2VyTWVkaWFFcnJvckNhbGxiYWNrLmggKi8gPSB7aXNhID0gUEJYRmlsZVJl
ZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2Rl
LmMuaDsgcGF0aCA9IE5hdmlnYXRvclVzZXJNZWRpYUVycm9yQ2FsbGJhY2suaDsgc291cmNlVHJl
ZSA9ICI8Z3JvdXA+IjsgfTsKLQkJMDcyMjFCNjAxN0NFQzMyNzAwODQ4RTUxIC8qIE5hdmlnYXRv
clVzZXJNZWRpYUVycm9yQ2FsbGJhY2suaWRsICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7
IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gdGV4dDsgcGF0aCA9IE5hdmln
YXRvclVzZXJNZWRpYUVycm9yQ2FsbGJhY2suaWRsOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9
OwotCQkwNzIyMUI2MTE3Q0VDMzI3MDA4NDhFNTEgLyogTmF2aWdhdG9yVXNlck1lZGlhU3VjY2Vz
c0NhbGxiYWNrLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0g
NDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IE5hdmlnYXRvclVz
ZXJNZWRpYVN1Y2Nlc3NDYWxsYmFjay5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwotCQkw
NzIyMUI2MjE3Q0VDMzI3MDA4NDhFNTEgLyogTmF2aWdhdG9yVXNlck1lZGlhU3VjY2Vzc0NhbGxi
YWNrLmlkbCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBs
YXN0S25vd25GaWxlVHlwZSA9IHRleHQ7IHBhdGggPSBOYXZpZ2F0b3JVc2VyTWVkaWFTdWNjZXNz
Q2FsbGJhY2suaWRsOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQkwNzIyMUI2MzE3Q0VD
MzI3MDA4NDhFNTEgLyogUlRDRGF0YUNoYW5uZWwuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZl
cmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5j
cHAuY3BwOyBwYXRoID0gUlRDRGF0YUNoYW5uZWwuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4i
OyB9OwogCQkwNzIyMUI2NDE3Q0VDMzI3MDA4NDhFNTEgLyogUlRDRGF0YUNoYW5uZWwuaCAqLyA9
IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxl
VHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gUlRDRGF0YUNoYW5uZWwuaDsgc291cmNlVHJl
ZSA9ICI8Z3JvdXA+IjsgfTsKIAkJMDcyMjFCNjUxN0NFQzMyNzAwODQ4RTUxIC8qIFJUQ0RhdGFD
aGFubmVsLmlkbCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0
OyBsYXN0S25vd25GaWxlVHlwZSA9IHRleHQ7IHBhdGggPSBSVENEYXRhQ2hhbm5lbC5pZGw7IHNv
dXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CkBAIC03NDM1LDcgKzc0MjQsNiBAQAogCQkwNzM3OTRF
MDE5RUUyRDFCMDBFNUEwNDUgLyogTWVkaWFDb25zdHJhaW50c01vY2suaCAqLyA9IHtpc2EgPSBQ
QlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNv
dXJjZWNvZGUuYy5oOyBwYXRoID0gTWVkaWFDb25zdHJhaW50c01vY2suaDsgc291cmNlVHJlZSA9
ICI8Z3JvdXA+IjsgfTsKIAkJMDczNzk0RTMxOUVFMkZGMjAwRTVBMDQ1IC8qIEpTUlRDQ29uZmln
dXJhdGlvbi5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0g
NDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBKU1JUQ0Nv
bmZpZ3VyYXRpb24uY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQkwNzM3OTRFNDE5
RUUyRkYyMDBFNUEwNDUgLyogSlNSVENDb25maWd1cmF0aW9uLmggKi8gPSB7aXNhID0gUEJYRmls
ZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vj
b2RlLmMuaDsgcGF0aCA9IEpTUlRDQ29uZmlndXJhdGlvbi5oOyBzb3VyY2VUcmVlID0gIjxncm91
cD4iOyB9OwotCQkwNzM3OTRFNzE5RUUzMzVDMDBFNUEwNDUgLyogSlNOYXZpZ2F0b3JDdXN0b20u
Y3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RL
bm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gSlNOYXZpZ2F0b3JDdXN0
b20uY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQkwNzM3OTRFOTE5RUUzNDFFMDBF
NUEwNDUgLyogSlNSVENJY2VTZXJ2ZXIuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7
IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3Bw
OyBwYXRoID0gSlNSVENJY2VTZXJ2ZXIuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9Owog
CQkwNzM3OTRFQTE5RUUzNDFFMDBFNUEwNDUgLyogSlNSVENJY2VTZXJ2ZXIuaCAqLyA9IHtpc2Eg
PSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9
IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gSlNSVENJY2VTZXJ2ZXIuaDsgc291cmNlVHJlZSA9ICI8
Z3JvdXA+IjsgfTsKIAkJMDczNzk0RUQxOUVFMzY0MjAwRTVBMDQ1IC8qIERPTVVSTE1lZGlhU3Ry
ZWFtLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBs
YXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IERPTVVSTE1lZGlh
U3RyZWFtLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKQEAgLTc0NTcsMTAgKzc0NDUs
NiBAQAogCQkwNzNCRTMzRjE3RDE3RTAxMDAyQkQ0MzEgLyogSlNOYXZpZ2F0b3JVc2VyTWVkaWEu
aCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25v
d25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gSlNOYXZpZ2F0b3JVc2VyTWVkaWEu
aDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJMDczQkUzNDIxN0QxN0U3QTAwMkJENDMx
IC8qIEpTTmF2aWdhdG9yVXNlck1lZGlhRXJyb3IuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZl
cmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5j
cHAuY3BwOyBwYXRoID0gSlNOYXZpZ2F0b3JVc2VyTWVkaWFFcnJvci5jcHA7IHNvdXJjZVRyZWUg
PSAiPGdyb3VwPiI7IH07CiAJCTA3M0JFMzQzMTdEMTdFN0EwMDJCRDQzMSAvKiBKU05hdmlnYXRv
clVzZXJNZWRpYUVycm9yLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29k
aW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEpTTmF2
aWdhdG9yVXNlck1lZGlhRXJyb3IuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKLQkJMDcz
QkUzNDQxN0QxN0U3QTAwMkJENDMxIC8qIEpTTmF2aWdhdG9yVXNlck1lZGlhRXJyb3JDYWxsYmFj
ay5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFz
dEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBKU05hdmlnYXRvclVz
ZXJNZWRpYUVycm9yQ2FsbGJhY2suY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwotCQkw
NzNCRTM0NTE3RDE3RTdBMDAyQkQ0MzEgLyogSlNOYXZpZ2F0b3JVc2VyTWVkaWFFcnJvckNhbGxi
YWNrLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFz
dEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEpTTmF2aWdhdG9yVXNlck1l
ZGlhRXJyb3JDYWxsYmFjay5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwotCQkwNzNCRTM0
NjE3RDE3RTdBMDAyQkQ0MzEgLyogSlNOYXZpZ2F0b3JVc2VyTWVkaWFTdWNjZXNzQ2FsbGJhY2su
Y3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RL
bm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gSlNOYXZpZ2F0b3JVc2Vy
TWVkaWFTdWNjZXNzQ2FsbGJhY2suY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwotCQkw
NzNCRTM0NzE3RDE3RTdBMDAyQkQ0MzEgLyogSlNOYXZpZ2F0b3JVc2VyTWVkaWFTdWNjZXNzQ2Fs
bGJhY2suaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBs
YXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gSlNOYXZpZ2F0b3JVc2Vy
TWVkaWFTdWNjZXNzQ2FsbGJhY2suaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJMDc0
RTgyQjgxOEE2OUYwRTAwN0VGNTRDIC8qIFBsYXRmb3JtVGltZVJhbmdlcy5jcHAgKi8gPSB7aXNh
ID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUg
PSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBQbGF0Zm9ybVRpbWVSYW5nZXMuY3BwOyBzb3Vy
Y2VUcmVlID0gIjxncm91cD4iOyB9OwogCQkwNzRFODJCOTE4QTY5RjBFMDA3RUY1NEMgLyogUGxh
dGZvcm1UaW1lUmFuZ2VzLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29k
aW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFBsYXRm
b3JtVGltZVJhbmdlcy5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQkwNzUzODYwMDE0
NDg5RTk4MDBCNzg0NTIgLyogQ2FjaGVkVGV4dFRyYWNrLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxl
UmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNv
ZGUuY3BwLmNwcDsgcGF0aCA9IENhY2hlZFRleHRUcmFjay5jcHA7IHNvdXJjZVRyZWUgPSAiPGdy
b3VwPiI7IH07CkBAIC04ODUwLDYgKzg4MzQsNyBAQAogCQk0MTlCRTc1MzFCQzdGM0RCMDBFMUM4
NUIgLyogV2ViQ29yZUpTQnVpbHRpbkludGVybmFscy5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZl
cmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5j
Lmg7IHBhdGggPSBXZWJDb3JlSlNCdWlsdGluSW50ZXJuYWxzLmg7IHNvdXJjZVRyZWUgPSAiPGdy
b3VwPiI7IH07CiAJCTQxOUJFNzU0MUJDN0YzREIwMEUxQzg1QiAvKiBXZWJDb3JlSlNCdWlsdGlu
cy5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFz
dEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBXZWJDb3JlSlNCdWls
dGlucy5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTQxOUJFNzU1MUJDN0YzREIw
MEUxQzg1QiAvKiBXZWJDb3JlSlNCdWlsdGlucy5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVu
Y2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7
IHBhdGggPSBXZWJDb3JlSlNCdWlsdGlucy5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9Owor
CQk0MTlCRTc1QTFCQ0JEM0VEMDBFMUM4NUIgLyogTmF2aWdhdG9yVXNlck1lZGlhLmpzICovID0g
e2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVU
eXBlID0gc291cmNlY29kZS5qYXZhc2NyaXB0OyBwYXRoID0gTmF2aWdhdG9yVXNlck1lZGlhLmpz
OyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQk0MTlGQUZBRDFBQkFCQ0Q1MDA1QjgyOEIg
LyogUmVhZGFibGVTdHJlYW1SZWFkZXIuaWRsICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7
IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gdGV4dDsgcGF0aCA9IFJlYWRh
YmxlU3RyZWFtUmVhZGVyLmlkbDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJNDFBMDIz
RUQxQTM5REI3OTAwRjcyMkNGIC8qIFJlYWRhYmxlU3RyZWFtLmlkbCAqLyA9IHtpc2EgPSBQQlhG
aWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHRleHQ7
IHBhdGggPSBSZWFkYWJsZVN0cmVhbS5pZGw7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJ
CTQxQTAyM0VEMUEzOURCNzkwMEY3MjJERiAvKiBXcml0YWJsZVN0cmVhbS5pZGwgKi8gPSB7aXNh
ID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUg
PSB0ZXh0OyBwYXRoID0gV3JpdGFibGVTdHJlYW0uaWRsOyBzb3VyY2VUcmVlID0gIjxncm91cD4i
OyB9OwpAQCAtMTUwNTgsMTMgKzE1MDQzLDEwIEBACiAJCQkJNUVBNzI1Q0IxQUNBQkNCNTAwRUFE
MTdCIC8qIE5hdmlnYXRvck1lZGlhRGV2aWNlcy5oICovLAogCQkJCTVFQTcyNUNDMUFDQUJDQjUw
MEVBRDE3QiAvKiBOYXZpZ2F0b3JNZWRpYURldmljZXMuaWRsICovLAogCQkJCTA3MjIxQjVDMTdD
RUMzMjcwMDg0OEU1MSAvKiBOYXZpZ2F0b3JVc2VyTWVkaWEuaWRsICovLAorCQkJCTQxOUJFNzVB
MUJDQkQzRUQwMEUxQzg1QiAvKiBOYXZpZ2F0b3JVc2VyTWVkaWEuanMgKi8sCiAJCQkJMDcwMzI3
RjcxN0VBNEFBRjAwQ0UxMzE4IC8qIE5hdmlnYXRvclVzZXJNZWRpYUVycm9yLmNwcCAqLywKIAkJ
CQkwNzIyMUI1RDE3Q0VDMzI3MDA4NDhFNTEgLyogTmF2aWdhdG9yVXNlck1lZGlhRXJyb3IuaCAq
LywKIAkJCQkwNzIyMUI1RTE3Q0VDMzI3MDA4NDhFNTEgLyogTmF2aWdhdG9yVXNlck1lZGlhRXJy
b3IuaWRsICovLAotCQkJCTA3MjIxQjVGMTdDRUMzMjcwMDg0OEU1MSAvKiBOYXZpZ2F0b3JVc2Vy
TWVkaWFFcnJvckNhbGxiYWNrLmggKi8sCi0JCQkJMDcyMjFCNjAxN0NFQzMyNzAwODQ4RTUxIC8q
IE5hdmlnYXRvclVzZXJNZWRpYUVycm9yQ2FsbGJhY2suaWRsICovLAotCQkJCTA3MjIxQjYxMTdD
RUMzMjcwMDg0OEU1MSAvKiBOYXZpZ2F0b3JVc2VyTWVkaWFTdWNjZXNzQ2FsbGJhY2suaCAqLywK
LQkJCQkwNzIyMUI2MjE3Q0VDMzI3MDA4NDhFNTEgLyogTmF2aWdhdG9yVXNlck1lZGlhU3VjY2Vz
c0NhbGxiYWNrLmlkbCAqLywKIAkJCQkwN0FCOTk2NTE4REEzQzAxMDAxODc3MUUgLyogUlRDQ29u
ZmlndXJhdGlvbi5oICovLAogCQkJCTA3QUI5OTY2MThEQTNDMDEwMDE4NzcxRSAvKiBSVENDb25m
aWd1cmF0aW9uLmlkbCAqLywKIAkJCQkwNzIyMUI2MzE3Q0VDMzI3MDA4NDhFNTEgLyogUlRDRGF0
YUNoYW5uZWwuY3BwICovLApAQCAtMTUyNjIsMTAgKzE1MjQ0LDYgQEAKIAkJCQkwNzNCRTMzRjE3
RDE3RTAxMDAyQkQ0MzEgLyogSlNOYXZpZ2F0b3JVc2VyTWVkaWEuaCAqLywKIAkJCQkwNzNCRTM0
MjE3RDE3RTdBMDAyQkQ0MzEgLyogSlNOYXZpZ2F0b3JVc2VyTWVkaWFFcnJvci5jcHAgKi8sCiAJ
CQkJMDczQkUzNDMxN0QxN0U3QTAwMkJENDMxIC8qIEpTTmF2aWdhdG9yVXNlck1lZGlhRXJyb3Iu
aCAqLywKLQkJCQkwNzNCRTM0NDE3RDE3RTdBMDAyQkQ0MzEgLyogSlNOYXZpZ2F0b3JVc2VyTWVk
aWFFcnJvckNhbGxiYWNrLmNwcCAqLywKLQkJCQkwNzNCRTM0NTE3RDE3RTdBMDAyQkQ0MzEgLyog
SlNOYXZpZ2F0b3JVc2VyTWVkaWFFcnJvckNhbGxiYWNrLmggKi8sCi0JCQkJMDczQkUzNDYxN0Qx
N0U3QTAwMkJENDMxIC8qIEpTTmF2aWdhdG9yVXNlck1lZGlhU3VjY2Vzc0NhbGxiYWNrLmNwcCAq
LywKLQkJCQkwNzNCRTM0NzE3RDE3RTdBMDAyQkQ0MzEgLyogSlNOYXZpZ2F0b3JVc2VyTWVkaWFT
dWNjZXNzQ2FsbGJhY2suaCAqLywKIAkJCQkwNzM3OTRFMzE5RUUyRkYyMDBFNUEwNDUgLyogSlNS
VENDb25maWd1cmF0aW9uLmNwcCAqLywKIAkJCQkwNzM3OTRFNDE5RUUyRkYyMDBFNUEwNDUgLyog
SlNSVENDb25maWd1cmF0aW9uLmggKi8sCiAJCQkJMDc5NjlEOTExN0QxNDE1MTAwN0ZGODQyIC8q
IEpTUlRDRGF0YUNoYW5uZWwuY3BwICovLApAQCAtMjE5NjQsNyArMjE5NDIsNiBAQAogCQkJCUEx
RTVCMzFEMUFBRDFEQTQwMDZFQkVGQiAvKiBKU01vY2tDb250ZW50RmlsdGVyU2V0dGluZ3NDdXN0
b20uY3BwICovLAogCQkJCUM2RjA5MTdFMTQzQTJCQjkwMDY4NTg0OSAvKiBKU011dGF0aW9uT2Jz
ZXJ2ZXJDdXN0b20uY3BwICovLAogCQkJCUJDRDlDMjVGMEMxN0FBNjcwMDVDOTBBMiAvKiBKU05h
bWVkTm9kZU1hcEN1c3RvbS5jcHAgKi8sCi0JCQkJMDczNzk0RTcxOUVFMzM1QzAwRTVBMDQ1IC8q
IEpTTmF2aWdhdG9yQ3VzdG9tLmNwcCAqLywKIAkJCQlCQ0Q5QzI2MDBDMTdBQTY3MDA1QzkwQTIg
LyogSlNOb2RlQ3VzdG9tLmNwcCAqLywKIAkJCQlCQzk0MzlDMjExNkNGNDk0MDA0OEM3NTAgLyog
SlNOb2RlQ3VzdG9tLmggKi8sCiAJCQkJMUE3NTBERDMwQTkwRTcyOTAwMEZGMjE1IC8qIEpTTm9k
ZUl0ZXJhdG9yQ3VzdG9tLmNwcCAqLywKQEAgLTI2MDgyLDggKzI2MDU5LDYgQEAKIAkJCQlBOUQy
NDdGODBENzU3RTM0MDBGREY5NTkgLyogSlNOYXZpZ2F0b3IuaCBpbiBIZWFkZXJzICovLAogCQkJ
CTA3M0JFMzQxMTdEMTdFMDEwMDJCRDQzMSAvKiBKU05hdmlnYXRvclVzZXJNZWRpYS5oIGluIEhl
YWRlcnMgKi8sCiAJCQkJMDczQkUzNDkxN0QxN0U3QTAwMkJENDMxIC8qIEpTTmF2aWdhdG9yVXNl
ck1lZGlhRXJyb3IuaCBpbiBIZWFkZXJzICovLAotCQkJCTA3M0JFMzRCMTdEMTdFN0EwMDJCRDQz
MSAvKiBKU05hdmlnYXRvclVzZXJNZWRpYUVycm9yQ2FsbGJhY2suaCBpbiBIZWFkZXJzICovLAot
CQkJCTA3M0JFMzREMTdEMTdFN0EwMDJCRDQzMSAvKiBKU05hdmlnYXRvclVzZXJNZWRpYVN1Y2Nl
c3NDYWxsYmFjay5oIGluIEhlYWRlcnMgKi8sCiAJCQkJQkM5NDM5QzMxMTZDRjQ5NDAwNDhDNzUw
IC8qIEpTTm9kZUN1c3RvbS5oIGluIEhlYWRlcnMgKi8sCiAJCQkJMTQxMTVCNzMwOUY4NENENjAw
Q0E0RkMxIC8qIEpTTm9kZUZpbHRlci5oIGluIEhlYWRlcnMgKi8sCiAJCQkJMUE3NTBEOEUwQTkw
RTUyMTAwMEZGMjE1IC8qIEpTTm9kZUl0ZXJhdG9yLmggaW4gSGVhZGVycyAqLywKQEAgLTI2NjE4
LDggKzI2NTkzLDYgQEAKIAkJCQk5NzExNDYwNDE0RUYwMDlBMDA2NzRGRDkgLyogTmF2aWdhdG9y
R2VvbG9jYXRpb24uaCBpbiBIZWFkZXJzICovLAogCQkJCTVFQTcyNUQ2MUFDQUJENTcwMEVBRDE3
QiAvKiBOYXZpZ2F0b3JNZWRpYURldmljZXMuaCBpbiBIZWFkZXJzICovLAogCQkJCTA3OEUwOTFC
MTdEMTREMUMwMDQyMEFBMSAvKiBOYXZpZ2F0b3JVc2VyTWVkaWFFcnJvci5oIGluIEhlYWRlcnMg
Ki8sCi0JCQkJMDc4RTA5MUMxN0QxNEQxQzAwNDIwQUExIC8qIE5hdmlnYXRvclVzZXJNZWRpYUVy
cm9yQ2FsbGJhY2suaCBpbiBIZWFkZXJzICovLAotCQkJCTA3OEUwOTFEMTdEMTREMUMwMDQyMEFB
MSAvKiBOYXZpZ2F0b3JVc2VyTWVkaWFTdWNjZXNzQ2FsbGJhY2suaCBpbiBIZWFkZXJzICovLAog
CQkJCUExOUQ5MzQ2MUE5RkVDNzIwMEI0NkMyNCAvKiBORUZpbHRlclNvdXJjZVNQSS5oIGluIEhl
YWRlcnMgKi8sCiAJCQkJOEEzMDlDOUYxMjM5NTBCRTAwQ0I5MjA0IC8qIE5lc3RpbmdMZXZlbElu
Y3JlbWVudGVyLmggaW4gSGVhZGVycyAqLywKIAkJCQk2NTZEMzc0MzBBREJBNURFMDBBNDU1NEQg
LyogTmV0c2NhcGVQbHVnSW5TdHJlYW1Mb2FkZXIuaCBpbiBIZWFkZXJzICovLApAQCAtMjk3MzMs
MTEgKzI5NzA2LDggQEAKIAkJCQlCQ0Q5QzJDMDBDMTdCNjlFMDA1QzkwQTIgLyogSlNOYW1lZE5v
ZGVNYXAuY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJQkNEOUMyNjMwQzE3QUE2NzAwNUM5MEEyIC8q
IEpTTmFtZWROb2RlTWFwQ3VzdG9tLmNwcCBpbiBTb3VyY2VzICovLAogCQkJCUE5RDI0N0Y3MEQ3
NTdFMzQwMEZERjk1OSAvKiBKU05hdmlnYXRvci5jcHAgaW4gU291cmNlcyAqLywKLQkJCQkwNzM3
OTRFODE5RUUzMzVDMDBFNUEwNDUgLyogSlNOYXZpZ2F0b3JDdXN0b20uY3BwIGluIFNvdXJjZXMg
Ki8sCiAJCQkJMDczQkUzNDAxN0QxN0UwMTAwMkJENDMxIC8qIEpTTmF2aWdhdG9yVXNlck1lZGlh
LmNwcCBpbiBTb3VyY2VzICovLAogCQkJCTA3M0JFMzQ4MTdEMTdFN0EwMDJCRDQzMSAvKiBKU05h
dmlnYXRvclVzZXJNZWRpYUVycm9yLmNwcCBpbiBTb3VyY2VzICovLAotCQkJCTA3M0JFMzRBMTdE
MTdFN0EwMDJCRDQzMSAvKiBKU05hdmlnYXRvclVzZXJNZWRpYUVycm9yQ2FsbGJhY2suY3BwIGlu
IFNvdXJjZXMgKi8sCi0JCQkJMDczQkUzNEMxN0QxN0U3QTAwMkJENDMxIC8qIEpTTmF2aWdhdG9y
VXNlck1lZGlhU3VjY2Vzc0NhbGxiYWNrLmNwcCBpbiBTb3VyY2VzICovLAogCQkJCTE0REMwRDM3
MDlGRUQwNzMwMDdCMDIzNSAvKiBKU05vZGUuY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJQkNEOUMy
NjQwQzE3QUE2NzAwNUM5MEEyIC8qIEpTTm9kZUN1c3RvbS5jcHAgaW4gU291cmNlcyAqLywKIAkJ
CQkxNDExNUI3MjA5Rjg0Q0Q2MDBDQTRGQzEgLyogSlNOb2RlRmlsdGVyLmNwcCBpbiBTb3VyY2Vz
ICovLApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvSlNET01XaW5kb3dC
YXNlLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0pTRE9NV2luZG93QmFzZS5jcHAK
aW5kZXggMmFmOTc5OWVkMWViZWQ0ZmI5Y2I4ZDk0ZjY3NjhhYzk1NjJjZmMwMi4uZmYyOTExN2Zi
NDkyYmRhNmQxZjliZTJjYTI4YzRhZjBkNmI5YzlkMyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNv
cmUvYmluZGluZ3MvanMvSlNET01XaW5kb3dCYXNlLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9i
aW5kaW5ncy9qcy9KU0RPTVdpbmRvd0Jhc2UuY3BwCkBAIC0zLDYgKzMsNyBAQAogICogIENvcHly
aWdodCAoQykgMjAwNiBKb24gU2hpZXIgKGpzaGllckBpYXN0YXRlLmVkdSkKICAqICBDb3B5cmln
aHQgKEMpIDIwMDMtMjAwOSwgMjAxNCBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXZlZC4KICAq
ICBDb3B5cmlnaHQgKEMpIDIwMDYgQWxleGV5IFByb3NrdXJ5YWtvdiAoYXBAd2Via2l0Lm9yZykK
KyAqICBDb3B5cmlnaHQgKGMpIDIwMTUgQ2Fub24gSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgog
ICoKICAqICBUaGlzIGxpYnJhcnkgaXMgZnJlZSBzb2Z0d2FyZTsgeW91IGNhbiByZWRpc3RyaWJ1
dGUgaXQgYW5kL29yCiAgKiAgbW9kaWZ5IGl0IHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05VIExl
c3NlciBHZW5lcmFsIFB1YmxpYwpAQCAtODEsMTkgKzgyLDIyIEBAIHZvaWQgSlNET01XaW5kb3dC
YXNlOjpmaW5pc2hDcmVhdGlvbihWTSYgdm0sIEpTRE9NV2luZG93U2hlbGwqIHNoZWxsKQogCiAg
ICAgbV9wcml2YXRlRnVuY3Rpb25zLmluaXQoKnRoaXMpOwogCisjaWYgRU5BQkxFKFNUUkVBTVNf
QVBJKQorICAgIEpTVk1DbGllbnREYXRhJiBjbGllbnREYXRhID0gKnN0YXRpY19jYXN0PEpTVk1D
bGllbnREYXRhKj4odm0uY2xpZW50RGF0YSk7CisjZW5kaWYKKwogICAgIEdsb2JhbFByb3BlcnR5
SW5mbyBzdGF0aWNHbG9iYWxzW10gPSB7CiAgICAgICAgIEdsb2JhbFByb3BlcnR5SW5mbyh2bS5w
cm9wZXJ0eU5hbWVzLT5kb2N1bWVudCwganNOdWxsKCksIERvbnREZWxldGUgfCBSZWFkT25seSks
CiAgICAgICAgIEdsb2JhbFByb3BlcnR5SW5mbyh2bS5wcm9wZXJ0eU5hbWVzLT53aW5kb3csIG1f
c2hlbGwsIERvbnREZWxldGUgfCBSZWFkT25seSksCiAjaWYgRU5BQkxFKFNUUkVBTVNfQVBJKQot
ICAgICAgICBHbG9iYWxQcm9wZXJ0eUluZm8oc3RhdGljX2Nhc3Q8SlNWTUNsaWVudERhdGEqPih2
bS5jbGllbnREYXRhKS0+YnVpbHRpbk5hbWVzKCkucmVhZGFibGVTdHJlYW1DbG9zZWRQcml2YXRl
TmFtZSgpLCBqc051bWJlcigxKSwgRG9udERlbGV0ZSB8IFJlYWRPbmx5KSwKLSAgICAgICAgR2xv
YmFsUHJvcGVydHlJbmZvKHN0YXRpY19jYXN0PEpTVk1DbGllbnREYXRhKj4odm0uY2xpZW50RGF0
YSktPmJ1aWx0aW5OYW1lcygpLnJlYWRhYmxlU3RyZWFtRXJyb3JlZFByaXZhdGVOYW1lKCksIGpz
TnVtYmVyKDIpLCBEb250RGVsZXRlIHwgUmVhZE9ubHkpLAotICAgICAgICBHbG9iYWxQcm9wZXJ0
eUluZm8oc3RhdGljX2Nhc3Q8SlNWTUNsaWVudERhdGEqPih2bS5jbGllbnREYXRhKS0+YnVpbHRp
bk5hbWVzKCkucmVhZGFibGVTdHJlYW1SZWFkYWJsZVByaXZhdGVOYW1lKCksIGpzTnVtYmVyKDMp
LCBEb250RGVsZXRlIHwgUmVhZE9ubHkpLAotICAgICAgICBHbG9iYWxQcm9wZXJ0eUluZm8oc3Rh
dGljX2Nhc3Q8SlNWTUNsaWVudERhdGEqPih2bS5jbGllbnREYXRhKS0+YnVpbHRpbk5hbWVzKCku
UmVhZGFibGVTdHJlYW1Db250cm9sbGVyUHJpdmF0ZU5hbWUoKSwgY3JlYXRlUmVhZGFibGVTdHJl
YW1Db250cm9sbGVyUHJpdmF0ZUNvbnN0cnVjdG9yKHZtLCAqdGhpcyksIERvbnREZWxldGUgfCBS
ZWFkT25seSksCi0gICAgICAgIEdsb2JhbFByb3BlcnR5SW5mbyhzdGF0aWNfY2FzdDxKU1ZNQ2xp
ZW50RGF0YSo+KHZtLmNsaWVudERhdGEpLT5idWlsdGluTmFtZXMoKS5SZWFkYWJsZVN0cmVhbVJl
YWRlclByaXZhdGVOYW1lKCksIGNyZWF0ZVJlYWRhYmxlU3RyZWFtUmVhZGVyUHJpdmF0ZUNvbnN0
cnVjdG9yKHZtLCAqdGhpcyksIERvbnREZWxldGUgfCBSZWFkT25seSksCisgICAgICAgIEdsb2Jh
bFByb3BlcnR5SW5mbyhjbGllbnREYXRhLmJ1aWx0aW5OYW1lcygpLnJlYWRhYmxlU3RyZWFtQ2xv
c2VkUHJpdmF0ZU5hbWUoKSwganNOdW1iZXIoMSksIERvbnREZWxldGUgfCBSZWFkT25seSksCisg
ICAgICAgIEdsb2JhbFByb3BlcnR5SW5mbyhjbGllbnREYXRhLmJ1aWx0aW5OYW1lcygpLnJlYWRh
YmxlU3RyZWFtRXJyb3JlZFByaXZhdGVOYW1lKCksIGpzTnVtYmVyKDIpLCBEb250RGVsZXRlIHwg
UmVhZE9ubHkpLAorICAgICAgICBHbG9iYWxQcm9wZXJ0eUluZm8oY2xpZW50RGF0YS5idWlsdGlu
TmFtZXMoKS5yZWFkYWJsZVN0cmVhbVJlYWRhYmxlUHJpdmF0ZU5hbWUoKSwganNOdW1iZXIoMyks
IERvbnREZWxldGUgfCBSZWFkT25seSksCisgICAgICAgIEdsb2JhbFByb3BlcnR5SW5mbyhjbGll
bnREYXRhLmJ1aWx0aW5OYW1lcygpLlJlYWRhYmxlU3RyZWFtQ29udHJvbGxlclByaXZhdGVOYW1l
KCksIGNyZWF0ZVJlYWRhYmxlU3RyZWFtQ29udHJvbGxlclByaXZhdGVDb25zdHJ1Y3Rvcih2bSwg
KnRoaXMpLCBEb250RGVsZXRlIHwgUmVhZE9ubHkpLAorICAgICAgICBHbG9iYWxQcm9wZXJ0eUlu
Zm8oY2xpZW50RGF0YS5idWlsdGluTmFtZXMoKS5SZWFkYWJsZVN0cmVhbVJlYWRlclByaXZhdGVO
YW1lKCksIGNyZWF0ZVJlYWRhYmxlU3RyZWFtUmVhZGVyUHJpdmF0ZUNvbnN0cnVjdG9yKHZtLCAq
dGhpcyksIERvbnREZWxldGUgfCBSZWFkT25seSksCiAjZGVmaW5lIERFQ0xBUkVfR0xPQkFMX1NU
QVRJQyhuYW1lKVwKICAgICAgICAgR2xvYmFsUHJvcGVydHlJbmZvKFwKLSAgICAgICAgICAgIHN0
YXRpY19jYXN0PEpTVk1DbGllbnREYXRhKj4odm0uY2xpZW50RGF0YSktPmJ1aWx0aW5GdW5jdGlv
bnMoKS5yZWFkYWJsZVN0cmVhbUludGVybmFsc0J1aWx0aW5zKCkubmFtZSMjUHJpdmF0ZU5hbWUo
KSwgXAotICAgICAgICAgICAgbV9wcml2YXRlRnVuY3Rpb25zLnJlYWRhYmxlU3RyZWFtSW50ZXJu
YWxzKCkubV8jI25hbWUjI0Z1bmN0aW9uLmdldCgpICwgRG9udERlbGV0ZSB8IFJlYWRPbmx5KSwK
KyAgICAgICAgICAgIGNsaWVudERhdGEuYnVpbHRpbkZ1bmN0aW9ucygpLnJlYWRhYmxlU3RyZWFt
SW50ZXJuYWxzQnVpbHRpbnMoKS5uYW1lIyNQcml2YXRlTmFtZSgpLCBtX3ByaXZhdGVGdW5jdGlv
bnMucmVhZGFibGVTdHJlYW1JbnRlcm5hbHMoKS5tXyMjbmFtZSMjRnVuY3Rpb24uZ2V0KCkgLCBE
b250RGVsZXRlIHwgUmVhZE9ubHkpLAogICAgICAgICBXRUJDT1JFUkVBREFCTEVTVFJFQU1JTlRF
Uk5BTFNfRk9SRUFDSF9CVUlMVElOX0ZVTkNUSU9OX05BTUUoREVDTEFSRV9HTE9CQUxfU1RBVElD
KQogI3VuZGVmIERFQ0xBUkVfR0xPQkFMX1NUQVRJQwogI2VuZGlmCmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9KU05hdmlnYXRvckN1c3RvbS5jcHAgYi9Tb3VyY2UvV2Vi
Q29yZS9iaW5kaW5ncy9qcy9KU05hdmlnYXRvckN1c3RvbS5jcHAKZGVsZXRlZCBmaWxlIG1vZGUg
MTAwNjQ0CmluZGV4IDNkNWZlMTI0ODY0ODYzNGE2NGExZDg5NzVjNGFjMWJjM2QxYmQ5YjguLjAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAKLS0tIGEvU291cmNlL1dlYkNv
cmUvYmluZGluZ3MvanMvSlNOYXZpZ2F0b3JDdXN0b20uY3BwCisrKyAvZGV2L251bGwKQEAgLTEs
MTAzICswLDAgQEAKLS8qCi0gKiBDb3B5cmlnaHQgKEMpIDIwMTMgTm9raWEgQ29ycG9yYXRpb24g
YW5kL29yIGl0cyBzdWJzaWRpYXJ5KC1pZXMpLgotICogQ29weXJpZ2h0IChDKSAyMDE1IENhbm9u
IElOQy4KLSAqCi0gKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5
IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKLSAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBw
cm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucwotICogYXJlIG1ldDoKLSAqIDEu
IFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29w
eXJpZ2h0Ci0gKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9s
bG93aW5nIGRpc2NsYWltZXIuCi0gKiAyLiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0g
bXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAotICogICAgbm90aWNlLCB0aGlzIGxp
c3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQotICog
ICAgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhl
IGRpc3RyaWJ1dGlvbi4KLSAqCi0gKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIFRIRSBD
T1BZUklHSFQgSE9MREVSUyBBTkQgQ09OVFJJQlVUT1JTCi0gKiAiQVMgSVMiIEFORCBBTlkgRVhQ
UkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVAotICogTElNSVRF
RCBUTywgVEhFIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5F
U1MgRk9SCi0gKiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZF
TlQgU0hBTEwgVEhFIENPUFlSSUdIVAotICogT1dORVIgT1IgQ09OVFJJQlVUT1JTIEJFIExJQUJM
RSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsCi0gKiBTUEVDSUFMLCBFWEVN
UExBUlksIE9SIENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UCi0gKiBM
SU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBM
T1NTIE9GIFVTRSwKLSAqIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElP
TikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWQotICogVEhFT1JZIE9GIExJQUJJTElUWSwgV0hF
VEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVAotICogKElOQ0xVRElO
RyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUg
VVNFCi0gKiBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklM
SVRZIE9GIFNVQ0ggREFNQUdFLgotICovCi0KLSNpbmNsdWRlICJjb25maWcuaCIKLQotI2lmIEVO
QUJMRShNRURJQV9TVFJFQU0pCi0jaW5jbHVkZSAiSlNOYXZpZ2F0b3IuaCIKLQotI2luY2x1ZGUg
IkRpY3Rpb25hcnkuaCIKLSNpbmNsdWRlICJEb2N1bWVudC5oIgotI2luY2x1ZGUgIkV4Y2VwdGlv
bkNvZGUuaCIKLSNpbmNsdWRlICJGcmFtZS5oIgotI2luY2x1ZGUgIkpTTmF2aWdhdG9yVXNlck1l
ZGlhRXJyb3JDYWxsYmFjay5oIgotI2luY2x1ZGUgIkpTTmF2aWdhdG9yVXNlck1lZGlhU3VjY2Vz
c0NhbGxiYWNrLmgiCi0jaW5jbHVkZSAiTWVkaWFTdHJlYW0uaCIKLSNpbmNsdWRlICJVc2VyTWVk
aWFSZXF1ZXN0LmgiCi0KLXVzaW5nIG5hbWVzcGFjZSBKU0M7Ci0KLW5hbWVzcGFjZSBXZWJDb3Jl
IHsKLQotSlNWYWx1ZSBKU05hdmlnYXRvcjo6d2Via2l0R2V0VXNlck1lZGlhKEV4ZWNTdGF0ZSYg
c3RhdGUpCi17Ci0gICAgaWYgKHN0YXRlLmFyZ3VtZW50Q291bnQoKSA8IDMpIHsKLSAgICAgICAg
dGhyb3dWTUVycm9yKCZzdGF0ZSwgY3JlYXRlTm90RW5vdWdoQXJndW1lbnRzRXJyb3IoJnN0YXRl
KSk7Ci0gICAgICAgIHJldHVybiBqc1VuZGVmaW5lZCgpOwotICAgIH0KLQotICAgIERpY3Rpb25h
cnkgb3B0aW9ucygmc3RhdGUsIHN0YXRlLmFyZ3VtZW50KDApKTsKLSAgICBpZiAoc3RhdGUuaGFk
RXhjZXB0aW9uKCkpCi0gICAgICAgIHJldHVybiBqc1VuZGVmaW5lZCgpOwotCi0gICAgaWYgKCFv
cHRpb25zLmlzT2JqZWN0KCkpIHsKLSAgICAgICAgdGhyb3dWTUVycm9yKCZzdGF0ZSwgY3JlYXRl
VHlwZUVycm9yKCZzdGF0ZSwgIkZpcnN0IGFyZ3VtZW50IG9mIHdlYmtpdEdldFVzZXJNZWRpYSBt
dXN0IGJlIGEgdmFsaWQgRGljdGlvbmFyeSIpKTsKLSAgICAgICAgcmV0dXJuIGpzVW5kZWZpbmVk
KCk7Ci0gICAgfQotCi0gICAgaWYgKCFzdGF0ZS5hcmd1bWVudCgxKS5pc0Z1bmN0aW9uKCkpIHsK
LSAgICAgICAgdGhyb3dWTVR5cGVFcnJvcigmc3RhdGUsICJBcmd1bWVudCAyICgnc3VjY2Vzc0Nh
bGxiYWNrJykgdG8gTmF2aWdhdG9yLndlYmtpdEdldFVzZXJNZWRpYSBtdXN0IGJlIGEgZnVuY3Rp
b24iKTsKLSAgICAgICAgcmV0dXJuIGpzVW5kZWZpbmVkKCk7Ci0gICAgfQotCi0gICAgaWYgKCFz
dGF0ZS5hcmd1bWVudCgyKS5pc0Z1bmN0aW9uKCkpIHsKLSAgICAgICAgdGhyb3dWTVR5cGVFcnJv
cigmc3RhdGUsICJBcmd1bWVudCAzICgnZXJyb3JDYWxsYmFjaycpIHRvIE5hdmlnYXRvci53ZWJr
aXRHZXRVc2VyTWVkaWEgbXVzdCBiZSBhIGZ1bmN0aW9uIik7Ci0gICAgICAgIHJldHVybiBqc1Vu
ZGVmaW5lZCgpOwotICAgIH0KLQotICAgIGlmICghaW1wbCgpLmZyYW1lKCkpIHsKLSAgICAgICAg
c2V0RE9NRXhjZXB0aW9uKCZzdGF0ZSwgTk9UX1NVUFBPUlRFRF9FUlIpOwotICAgICAgICByZXR1
cm4ganNVbmRlZmluZWQoKTsKLSAgICB9Ci0KLSAgICAvLyBXZSBkbyBub3QgbmVlZCB0byBwcm90
ZWN0IHRoZSBjb250ZXh0IChpLmUuIGRvY3VtZW50KSBoZXJlIGFzIFVzZXJNZWRpYVJlcXVlc3Qg
aXMgb2JzZXJ2aW5nIGNvbnRleHQgZGVzdHJ1Y3Rpb24gYW5kIHdpbGwgY2hlY2sgdmFsaWRpdHkg
YmVmb3JlIHJlc29sdmluZy9yZWplY3RpbmcgcHJvbWlzZS4KLSAgICBEb2N1bWVudCogZG9jdW1l
bnQgPSBpbXBsKCkuZnJhbWUoKS0+ZG9jdW1lbnQoKTsKLQotICAgIFJlZlB0cjxOYXZpZ2F0b3JV
c2VyTWVkaWFTdWNjZXNzQ2FsbGJhY2s+IHN1Y2Nlc3NDYWxsYmFjayA9IEpTTmF2aWdhdG9yVXNl
ck1lZGlhU3VjY2Vzc0NhbGxiYWNrOjpjcmVhdGUoYXNPYmplY3Qoc3RhdGUudW5jaGVja2VkQXJn
dW1lbnQoMSkpLCBnbG9iYWxPYmplY3QoKSk7Ci0gICAgYXV0byByZXNvbHZlQ2FsbGJhY2sgPSBb
c3VjY2Vzc0NhbGxiYWNrLCBkb2N1bWVudF0oY29uc3QgUmVmUHRyPE1lZGlhU3RyZWFtPiYgc3Ry
ZWFtKSBtdXRhYmxlIHsKLSAgICAgICAgUmVmUHRyPE1lZGlhU3RyZWFtPiBwcm90ZWN0ZWRTdHJl
YW0gPSBzdHJlYW07Ci0gICAgICAgIGRvY3VtZW50LT5wb3N0VGFzayhbc3VjY2Vzc0NhbGxiYWNr
LCBwcm90ZWN0ZWRTdHJlYW1dKFNjcmlwdEV4ZWN1dGlvbkNvbnRleHQmKSB7Ci0gICAgICAgICAg
ICBzdWNjZXNzQ2FsbGJhY2stPmhhbmRsZUV2ZW50KHByb3RlY3RlZFN0cmVhbS5nZXQoKSk7Ci0g
ICAgICAgIH0pOwotICAgIH07Ci0KLSAgICBSZWZQdHI8TmF2aWdhdG9yVXNlck1lZGlhRXJyb3JD
YWxsYmFjaz4gZXJyb3JDYWxsYmFjayA9IEpTTmF2aWdhdG9yVXNlck1lZGlhRXJyb3JDYWxsYmFj
azo6Y3JlYXRlKGFzT2JqZWN0KHN0YXRlLnVuY2hlY2tlZEFyZ3VtZW50KDIpKSwgZ2xvYmFsT2Jq
ZWN0KCkpOwotICAgIGF1dG8gcmVqZWN0Q2FsbGJhY2sgPSBbZXJyb3JDYWxsYmFjaywgZG9jdW1l
bnRdKGNvbnN0IFJlZlB0cjxOYXZpZ2F0b3JVc2VyTWVkaWFFcnJvcj4mIGVycm9yKSBtdXRhYmxl
IHsKLSAgICAgICAgUmVmUHRyPE5hdmlnYXRvclVzZXJNZWRpYUVycm9yPiBwcm90ZWN0ZWRFcnJv
ciA9IGVycm9yOwotICAgICAgICBkb2N1bWVudC0+cG9zdFRhc2soW2Vycm9yQ2FsbGJhY2ssIHBy
b3RlY3RlZEVycm9yXShTY3JpcHRFeGVjdXRpb25Db250ZXh0JikgewotICAgICAgICAgICAgZXJy
b3JDYWxsYmFjay0+aGFuZGxlRXZlbnQocHJvdGVjdGVkRXJyb3IuZ2V0KCkpOwotICAgICAgICB9
KTsKLSAgICB9OwotCi0gICAgRXhjZXB0aW9uQ29kZSBlYyA9IDA7Ci0gICAgVXNlck1lZGlhUmVx
dWVzdDo6c3RhcnQoZG9jdW1lbnQsIG9wdGlvbnMsIE1lZGlhRGV2aWNlczo6UHJvbWlzZShXVEY6
Om1vdmUocmVzb2x2ZUNhbGxiYWNrKSwgV1RGOjptb3ZlKHJlamVjdENhbGxiYWNrKSksIGVjKTsK
LSAgICBzZXRET01FeGNlcHRpb24oJnN0YXRlLCBlYyk7Ci0gICAgcmV0dXJuIGpzVW5kZWZpbmVk
KCk7Ci19Ci0KLX0gLy8gbmFtZXNwYWNlIFdlYkNvcmUKLQotI2VuZGlmIC8vIEVOQUJMRShNRURJ
QV9TVFJFQU0pCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9XZWJDb3Jl
SlNCdWlsdGlucy5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9XZWJDb3JlSlNCdWls
dGlucy5jcHAKaW5kZXggNDFmZTZlNDJkNWQwN2UxNmU3MjdmZDM5MDYyMGVhNmUwYWVmYTA4ZC4u
ZjhiYmM5NWVmOWJlNzYwYWQ3MGEzM2E5MGNhOGRiMDczZDY0ZTZjMCAxMDA2NDQKLS0tIGEvU291
cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvV2ViQ29yZUpTQnVpbHRpbnMuY3BwCisrKyBiL1NvdXJj
ZS9XZWJDb3JlL2JpbmRpbmdzL2pzL1dlYkNvcmVKU0J1aWx0aW5zLmNwcApAQCAtMzksMyArMzks
NiBAQAogI2luY2x1ZGUgIlJlYWRhYmxlU3RyZWFtUmVhZGVyQnVpbHRpbnMuY3BwIgogI2luY2x1
ZGUgIldyaXRhYmxlU3RyZWFtQnVpbHRpbnMuY3BwIgogI2VuZGlmCisjaWYgRU5BQkxFKE1FRElB
X1NUUkVBTSkKKyNpbmNsdWRlICJOYXZpZ2F0b3JVc2VyTWVkaWFCdWlsdGlucy5jcHAiCisjZW5k
aWYKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL1dlYkNvcmVKU0J1aWx0
aW5zLmggYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9XZWJDb3JlSlNCdWlsdGlucy5oCmlu
ZGV4IDRkMTQxZmYwMmEzZTYwMmJkYmFhNTRiOWQ3MjJiN2QwMTgyZTRjYjQuLjkzNDkyMDBlZGEw
NGViNDBjMjhjMDUyNjQ2NzVkNmJkYTA4MzI5M2YgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3Jl
L2JpbmRpbmdzL2pzL1dlYkNvcmVKU0J1aWx0aW5zLmgKKysrIGIvU291cmNlL1dlYkNvcmUvYmlu
ZGluZ3MvanMvV2ViQ29yZUpTQnVpbHRpbnMuaApAQCAtMjksNiArMjksNyBAQAogCiAjaWYgRU5B
QkxFKE1FRElBX1NUUkVBTSkKICNpbmNsdWRlICJNZWRpYURldmljZXNCdWlsdGluc1dyYXBwZXIu
aCIKKyNpbmNsdWRlICJOYXZpZ2F0b3JVc2VyTWVkaWFCdWlsdGluc1dyYXBwZXIuaCIKICNlbmRp
ZgogCiAjaWYgRU5BQkxFKFNUUkVBTVNfQVBJKQpAQCAtNjAsNiArNjEsNyBAQCBwdWJsaWM6CiAj
ZW5kaWYKICNpZiBFTkFCTEUoTUVESUFfU1RSRUFNKQogICAgICAgICAsIG1fbWVkaWFEZXZpY2Vz
QnVpbHRpbnMoJnZtKQorICAgICAgICAsIG1fbmF2aWdhdG9yVXNlck1lZGlhQnVpbHRpbnMoJnZt
KQogI2VuZGlmCiAgICAgewogI2lmIEVOQUJMRShTVFJFQU1TX0FQSSkKQEAgLTc3LDYgKzc5LDcg
QEAgcHVibGljOgogI2VuZGlmCiAjaWYgRU5BQkxFKE1FRElBX1NUUkVBTSkKICAgICBNZWRpYURl
dmljZXNCdWlsdGluc1dyYXBwZXImIG1lZGlhRGV2aWNlc0J1aWx0aW5zKCkgeyByZXR1cm4gbV9t
ZWRpYURldmljZXNCdWlsdGluczsgfQorICAgIE5hdmlnYXRvclVzZXJNZWRpYUJ1aWx0aW5zV3Jh
cHBlciYgbmF2aWdhdG9yVXNlck1lZGlhQnVpbHRpbnMoKSB7IHJldHVybiBtX25hdmlnYXRvclVz
ZXJNZWRpYUJ1aWx0aW5zO30KICNlbmRpZgogCiBwcml2YXRlOgpAQCAtOTIsNiArOTUsNyBAQCBw
cml2YXRlOgogI2VuZGlmCiAjaWYgRU5BQkxFKE1FRElBX1NUUkVBTSkKICAgICBNZWRpYURldmlj
ZXNCdWlsdGluc1dyYXBwZXIgbV9tZWRpYURldmljZXNCdWlsdGluczsKKyAgICBOYXZpZ2F0b3JV
c2VyTWVkaWFCdWlsdGluc1dyYXBwZXIgbV9uYXZpZ2F0b3JVc2VyTWVkaWFCdWlsdGluczsKICNl
bmRpZgogCiB9OwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nIGIvTGF5b3V0VGVz
dHMvQ2hhbmdlTG9nCmluZGV4IGM1MDFhODU0NmVhYjExMDI2MTdiMjZhNDJhYTFiMGYxZGQ3ZWJh
N2QuLjI3ZjdlZTBjZjA1NDFkNmNiMjYzMmRmOGJjOTJlYzcyZDg0ZTg1NmIgMTAwNjQ0Ci0tLSBh
L0xheW91dFRlc3RzL0NoYW5nZUxvZworKysgYi9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKQEAgLTEs
NSArMSwxOCBAQAogMjAxNS0xMC0xOSAgWW91ZW5uIEZhYmxldCAgPHlvdWVubi5mYWJsZXRAY3Jm
LmNhbm9uLmZyPgogCisgICAgICAgIE1vdmUgd2Via2l0R2V0VXNlck1lZGlhIHRvIEpTIEJ1aWx0
aW4KKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE0OTQ5
OQorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgICogZmFz
dC9tZWRpYXN0cmVhbS9hcmd1bWVudC10eXBlcy1leHBlY3RlZC50eHQ6CisgICAgICAgICogZmFz
dC9tZWRpYXN0cmVhbS9nZXR1c2VybWVkaWEtZXhwZWN0ZWQudHh0OgorICAgICAgICAqIGZhc3Qv
bWVkaWFzdHJlYW0vZ2V0dXNlcm1lZGlhLmh0bWw6CisgICAgICAgICogZmFzdC9tZWRpYXN0cmVh
bS9zY3JpcHQtdGVzdHMvYXJndW1lbnQtdHlwZXMuanM6CisgICAgICAgICogaHR0cC90ZXN0cy9t
ZWRpYS9tZWRpYS1zdHJlYW0vZGlzY29ubmVjdGVkLWZyYW1lLWFscmVhZHktZXhwZWN0ZWQudHh0
OgorCisyMDE1LTEwLTE5ICBZb3Vlbm4gRmFibGV0ICA8eW91ZW5uLmZhYmxldEBjcmYuY2Fub24u
ZnI+CisKICAgICAgICAgW1N0cmVhbXMgQVBJXSBJbXBsZW1lbnQgUmVhZGFibGVTdHJlYW0gdGVl
CiAgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xNDYzMTUK
IApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9tZWRpYXN0cmVhbS9hcmd1bWVudC10eXBl
cy1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9mYXN0L21lZGlhc3RyZWFtL2FyZ3VtZW50LXR5
cGVzLWV4cGVjdGVkLnR4dAppbmRleCA0MjI0ZDQwMjAyMjk5ZjAwMjEyZTI3MjFmMjFlNDMzZmNk
NWUyOTI0Li41Y2JjNDg1ODgyNzYyOWJjZjQ4NGU2ZjY0MTJmNTlmZTEwMzRjMWNmIDEwMDY0NAot
LS0gYS9MYXlvdXRUZXN0cy9mYXN0L21lZGlhc3RyZWFtL2FyZ3VtZW50LXR5cGVzLWV4cGVjdGVk
LnR4dAorKysgYi9MYXlvdXRUZXN0cy9mYXN0L21lZGlhc3RyZWFtL2FyZ3VtZW50LXR5cGVzLWV4
cGVjdGVkLnR4dApAQCAtMzAsNyArMzAsNyBAQCBQQVNTIG5hdmlnYXRvci53ZWJraXRHZXRVc2Vy
TWVkaWEoe3ZpZGVvOiB0cnVlfSwgdHJ1ZSkgdGhyZXcgZXhjZXB0aW9uIFR5cGVFcnJvcgogUEFT
UyBuYXZpZ2F0b3Iud2Via2l0R2V0VXNlck1lZGlhKHt2aWRlbzogdHJ1ZX0sIDQyKSB0aHJldyBl
eGNlcHRpb24gVHlwZUVycm9yOiBOb3QgZW5vdWdoIGFyZ3VtZW50cy4KIFBBU1MgbmF2aWdhdG9y
LndlYmtpdEdldFVzZXJNZWRpYSh7dmlkZW86IHRydWV9LCBJbmZpbml0eSkgdGhyZXcgZXhjZXB0
aW9uIFR5cGVFcnJvcjogTm90IGVub3VnaCBhcmd1bWVudHMuCiBQQVNTIG5hdmlnYXRvci53ZWJr
aXRHZXRVc2VyTWVkaWEoe3ZpZGVvOiB0cnVlfSwgLUluZmluaXR5KSB0aHJldyBleGNlcHRpb24g
VHlwZUVycm9yOiBOb3QgZW5vdWdoIGFyZ3VtZW50cy4KLVBBU1MgbmF2aWdhdG9yLndlYmtpdEdl
dFVzZXJNZWRpYSh7IH0sIGVtcHR5RnVuY3Rpb24sIGVtcHR5RnVuY3Rpb24pIHRocmV3IGV4Y2Vw
dGlvbiBFcnJvcjogTm90U3VwcG9ydGVkRXJyb3I6IERPTSBFeGNlcHRpb24gOS4KK1BBU1MgbmF2
aWdhdG9yLndlYmtpdEdldFVzZXJNZWRpYSh7IH0sIGVtcHR5RnVuY3Rpb24sIGVtcHR5RnVuY3Rp
b24pIGRpZCBub3QgdGhyb3cgZXhjZXB0aW9uLgogUEFTUyBuYXZpZ2F0b3Iud2Via2l0R2V0VXNl
ck1lZGlhKHt2aWRlbzogdHJ1ZX0sIGVtcHR5RnVuY3Rpb24sIGVtcHR5RnVuY3Rpb24pIGRpZCBu
b3QgdGhyb3cgZXhjZXB0aW9uLgogUEFTUyBuYXZpZ2F0b3Iud2Via2l0R2V0VXNlck1lZGlhKHt2
aWRlbzogdHJ1ZX0sIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5lZCkgdGhyZXcgZXhjZXB0aW9uIFR5
cGVFcnJvcjogQXJndW1lbnQgMyAoJ2Vycm9yQ2FsbGJhY2snKSB0byBOYXZpZ2F0b3Iud2Via2l0
R2V0VXNlck1lZGlhIG11c3QgYmUgYSBmdW5jdGlvbi4KIFBBU1MgbmF2aWdhdG9yLndlYmtpdEdl
dFVzZXJNZWRpYSh7YXVkaW86dHJ1ZSwgdmlkZW86dHJ1ZX0sIGVtcHR5RnVuY3Rpb24sIHVuZGVm
aW5lZCkgdGhyZXcgZXhjZXB0aW9uIFR5cGVFcnJvcjogQXJndW1lbnQgMyAoJ2Vycm9yQ2FsbGJh
Y2snKSB0byBOYXZpZ2F0b3Iud2Via2l0R2V0VXNlck1lZGlhIG11c3QgYmUgYSBmdW5jdGlvbi4K
ZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3QvbWVkaWFzdHJlYW0vZ2V0dXNlcm1lZGlhLWV4
cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2Zhc3QvbWVkaWFzdHJlYW0vZ2V0dXNlcm1lZGlhLWV4
cGVjdGVkLnR4dAppbmRleCBkY2E1ZmI5NjFjZjZlYjVmNDQ1YWI0NTBhYTBiM2U1MmQ0MTA3MDhh
Li5kNmNmZWI0OTBjYzAyMTYwZmRkZDNhMjNmODMwM2YyYWU1YzdkYTA2IDEwMDY0NAotLS0gYS9M
YXlvdXRUZXN0cy9mYXN0L21lZGlhc3RyZWFtL2dldHVzZXJtZWRpYS1leHBlY3RlZC50eHQKKysr
IGIvTGF5b3V0VGVzdHMvZmFzdC9tZWRpYXN0cmVhbS9nZXR1c2VybWVkaWEtZXhwZWN0ZWQudHh0
CkBAIC0zLDkgKzMsMTAgQEAgVGVzdHMgd2Via2l0R2V0VXNlck1lZGlhLgogT24gc3VjY2Vzcywg
eW91IHdpbGwgc2VlIGEgc2VyaWVzIG9mICJQQVNTIiBtZXNzYWdlcywgZm9sbG93ZWQgYnkgIlRF
U1QgQ09NUExFVEUiLgogCiAKLVBBU1MgbmF2aWdhdG9yLndlYmtpdEdldFVzZXJNZWRpYSh7YXVk
aW86ZmFsc2UsIHZpZGVvOmZhbHNlfSwgZXJyb3IsIGVycm9yKTsgdGhyZXcgZXhjZXB0aW9uIEVy
cm9yOiBOb3RTdXBwb3J0ZWRFcnJvcjogRE9NIEV4Y2VwdGlvbiA5LgorUEFTUyBuYXZpZ2F0b3Iu
d2Via2l0R2V0VXNlck1lZGlhKHthdWRpbzpmYWxzZSwgdmlkZW86ZmFsc2V9LCBlcnJvciwgZXhw
ZWN0ZWRFcnJvcik7IGRpZCBub3QgdGhyb3cgZXhjZXB0aW9uLgogUEFTUyBuYXZpZ2F0b3Iud2Vi
a2l0R2V0VXNlck1lZGlhKHthdWRpbzpmYWxzZSwgdmlkZW86ZmFsc2V9LCBlcnJvciwgbnVsbCk7
IHRocmV3IGV4Y2VwdGlvbiBUeXBlRXJyb3I6IEFyZ3VtZW50IDMgKCdlcnJvckNhbGxiYWNrJykg
dG8gTmF2aWdhdG9yLndlYmtpdEdldFVzZXJNZWRpYSBtdXN0IGJlIGEgZnVuY3Rpb24uCiBQQVNT
IG5hdmlnYXRvci53ZWJraXRHZXRVc2VyTWVkaWEoe2F1ZGlvOnRydWV9LCBnb3RTdHJlYW0xLCBl
cnJvcik7IGRpZCBub3QgdGhyb3cgZXhjZXB0aW9uLgorUEFTUyBFcnJvciBjYWxsYmFjayBjYWxs
ZWQuCiBQQVNTIFN0cmVhbSBnZW5lcmF0ZWQuCiBQQVNTIHN0cmVhbS5nZXRBdWRpb1RyYWNrcygp
Lmxlbmd0aCBpcyAxCiBQQVNTIHN0cmVhbS5nZXRWaWRlb1RyYWNrcygpLmxlbmd0aCBpcyAwCmRp
ZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L21lZGlhc3RyZWFtL2dldHVzZXJtZWRpYS5odG1s
IGIvTGF5b3V0VGVzdHMvZmFzdC9tZWRpYXN0cmVhbS9nZXR1c2VybWVkaWEuaHRtbAppbmRleCAx
M2ZhZTEzMDY3MmJkMTU0NGViN2JhNmMyZWUxYjFkODQ3YTQ5ZDUxLi5lMzM4MzlmMWU0NzM5ZmJi
OTcyNmYxMzAwNzc0OGIxNThkNGQwOTI4IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9mYXN0L21l
ZGlhc3RyZWFtL2dldHVzZXJtZWRpYS5odG1sCisrKyBiL0xheW91dFRlc3RzL2Zhc3QvbWVkaWFz
dHJlYW0vZ2V0dXNlcm1lZGlhLmh0bWwKQEAgLTI0LDYgKzI0LDEwIEBACiAgICAgICAgICAgICAg
ICAgZmluaXNoSlNUZXN0KCk7CiAgICAgICAgICAgICB9CiAKKyAgICAgICAgICAgIGZ1bmN0aW9u
IGV4cGVjdGVkRXJyb3IoKSB7CisgICAgICAgICAgICAgICAgdGVzdFBhc3NlZCgnRXJyb3IgY2Fs
bGJhY2sgY2FsbGVkLicpOworICAgICAgICAgICAgfQorCiAgICAgICAgICAgICBmdW5jdGlvbiBn
b3RTdHJlYW1JbkVycm9yKHMpIHsKICAgICAgICAgICAgICAgICB0ZXN0RmFpbGVkKCdTdHJlYW0g
Z2VuZXJhdGVkLicpOwogICAgICAgICAgICAgICAgIGZpbmlzaEpTVGVzdCgpOwpAQCAtODcsNyAr
OTEsNyBAQAogICAgICAgICAgICAgICAgIHNob3VsZE5vdFRocm93KCJuYXZpZ2F0b3Iud2Via2l0
R2V0VXNlck1lZGlhKHt2aWRlbzp0cnVlfSwgZ290U3RyZWFtMiwgZXJyb3IpOyIpCiAgICAgICAg
ICAgICB9CiAKLSAgICAgICAgICAgIHNob3VsZFRocm93KCJuYXZpZ2F0b3Iud2Via2l0R2V0VXNl
ck1lZGlhKHthdWRpbzpmYWxzZSwgdmlkZW86ZmFsc2V9LCBlcnJvciwgZXJyb3IpOyIpCisgICAg
ICAgICAgICBzaG91bGROb3RUaHJvdygibmF2aWdhdG9yLndlYmtpdEdldFVzZXJNZWRpYSh7YXVk
aW86ZmFsc2UsIHZpZGVvOmZhbHNlfSwgZXJyb3IsIGV4cGVjdGVkRXJyb3IpOyIpCiAgICAgICAg
ICAgICBzaG91bGRUaHJvdygibmF2aWdhdG9yLndlYmtpdEdldFVzZXJNZWRpYSh7YXVkaW86ZmFs
c2UsIHZpZGVvOmZhbHNlfSwgZXJyb3IsIG51bGwpOyIpCiAKICAgICAgICAgICAgIHNldFVzZXJN
ZWRpYVBlcm1pc3Npb24odHJ1ZSk7CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L21lZGlh
c3RyZWFtL3NjcmlwdC10ZXN0cy9hcmd1bWVudC10eXBlcy5qcyBiL0xheW91dFRlc3RzL2Zhc3Qv
bWVkaWFzdHJlYW0vc2NyaXB0LXRlc3RzL2FyZ3VtZW50LXR5cGVzLmpzCmluZGV4IDExYWRmODkz
Njc3ZDFiYjJhNzg0ZTk2NGQ5MjdjZGE0YmFhMzc3OTMuLmZmMDhiNDAwNjk0ODQ3MTU4YWQ1NjFj
YzVmMzM4ZjRkMjZiNDYyMDUgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2Zhc3QvbWVkaWFzdHJl
YW0vc2NyaXB0LXRlc3RzL2FyZ3VtZW50LXR5cGVzLmpzCisrKyBiL0xheW91dFRlc3RzL2Zhc3Qv
bWVkaWFzdHJlYW0vc2NyaXB0LXRlc3RzL2FyZ3VtZW50LXR5cGVzLmpzCkBAIC01NCw3ICs1NCw3
IEBAIHRlc3QoJ25hdmlnYXRvci53ZWJraXRHZXRVc2VyTWVkaWEoe3ZpZGVvOiB0cnVlfSwgSW5m
aW5pdHkpJywgdHJ1ZSk7CiB0ZXN0KCduYXZpZ2F0b3Iud2Via2l0R2V0VXNlck1lZGlhKHt2aWRl
bzogdHJ1ZX0sIC1JbmZpbml0eSknLCB0cnVlKTsKIAogLy8gMyBBcmd1bWVudHMuCi10ZXN0KCdu
YXZpZ2F0b3Iud2Via2l0R2V0VXNlck1lZGlhKHsgfSwgZW1wdHlGdW5jdGlvbiwgZW1wdHlGdW5j
dGlvbiknLCB0cnVlLCBub3RTdXBwb3J0ZWRFcnJvcik7Cit0ZXN0KCduYXZpZ2F0b3Iud2Via2l0
R2V0VXNlck1lZGlhKHsgfSwgZW1wdHlGdW5jdGlvbiwgZW1wdHlGdW5jdGlvbiknLCBmYWxzZSk7
CiB0ZXN0KCduYXZpZ2F0b3Iud2Via2l0R2V0VXNlck1lZGlhKHt2aWRlbzogdHJ1ZX0sIGVtcHR5
RnVuY3Rpb24sIGVtcHR5RnVuY3Rpb24pJywgZmFsc2UpOwogdGVzdCgnbmF2aWdhdG9yLndlYmtp
dEdldFVzZXJNZWRpYSh7dmlkZW86IHRydWV9LCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQpJywg
dHJ1ZSwgZXJyb3JDYWxsYmFja0Vycm9yKTsKIHRlc3QoJ25hdmlnYXRvci53ZWJraXRHZXRVc2Vy
TWVkaWEoe2F1ZGlvOnRydWUsIHZpZGVvOnRydWV9LCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQp
JywgdHJ1ZSwgZXJyb3JDYWxsYmFja0Vycm9yKTsKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2h0
dHAvdGVzdHMvbWVkaWEvbWVkaWEtc3RyZWFtL2Rpc2Nvbm5lY3RlZC1mcmFtZS1hbHJlYWR5LWV4
cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvbWVkaWEvbWVkaWEtc3RyZWFtL2Rp
c2Nvbm5lY3RlZC1mcmFtZS1hbHJlYWR5LWV4cGVjdGVkLnR4dAppbmRleCBlNTA1ZGI5YjJjN2Vi
NjM5MzNmOWVmMTA1YjMwZDkyNWQwOTZkNTcxLi4yYWMzMTQ3NzcyZWFlMTYzMzQzOGZkYWZhZDUz
MGE1ZjUyNThiYjRkIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL21lZGlhL21l
ZGlhLXN0cmVhbS9kaXNjb25uZWN0ZWQtZnJhbWUtYWxyZWFkeS1leHBlY3RlZC50eHQKKysrIGIv
TGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9tZWRpYS9tZWRpYS1zdHJlYW0vZGlzY29ubmVjdGVkLWZy
YW1lLWFscmVhZHktZXhwZWN0ZWQudHh0CkBAIC0xLDQgKzEsNCBAQAotQ09OU09MRSBNRVNTQUdF
OiBsaW5lIDI0OiBOb3RTdXBwb3J0ZWRFcnJvcjogRE9NIEV4Y2VwdGlvbiA5OiBUaGUgaW1wbGVt
ZW50YXRpb24gZGlkIG5vdCBzdXBwb3J0IHRoZSByZXF1ZXN0ZWQgdHlwZSBvZiBvYmplY3Qgb3Ig
b3BlcmF0aW9uLgorQ09OU09MRSBNRVNTQUdFOiBsaW5lIDI0OiBUeXBlRXJyb3I6IFRoZSBpbXBs
ZW1lbnRhdGlvbiBkaWQgbm90IHN1cHBvcnQgdGhlIHJlcXVlc3RlZCB0eXBlIG9mIG9iamVjdCBv
ciBvcGVyYXRpb24uCiBUZXN0cyB0aGF0IHdoZW4gYSBnZXRVc2VyTWVkaWEgcmVxdWVzdCBpcyBt
YWRlIGFmdGVyIGl0cyBmcmFtZSBoYXMgYmVlbiBkaXNjb25uZWN0ZWQsIG5vIGNhbGxiYWNrcyBh
cmUgbWFkZSBhbmQgbm8gY3Jhc2ggb2NjdXJzLgogCiBPbiBzdWNjZXNzLCB5b3Ugd2lsbCBzZWUg
YSBzZXJpZXMgb2YgIlBBU1MiIG1lc3NhZ2VzLCBmb2xsb3dlZCBieSAiVEVTVCBDT01QTEVURSIu
Cg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>264575</attachid>
            <date>2015-11-02 05:21:23 -0800</date>
            <delta_ts>2015-11-02 05:40:14 -0800</delta_ts>
            <desc>Rebbasing</desc>
            <filename>bug-149499-20151102142013.patch</filename>
            <type>text/plain</type>
            <size>52069</size>
            <attacher name="youenn fablet">youennf</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTkxODgwCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggMmE3MTA0YmUyYWYzOTAy
YmY4ZDFlMjA3NzE4MWNkZWY1NDQxODE3Yy4uMWJkZjljYTcyOTc1YjlkNmE2OTY3YmE3ZWJhYjY5
ZGUxNWVkNWRhZiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDQxIEBACisyMDE1LTEwLTE5ICBZb3Vl
bm4gRmFibGV0ICA8eW91ZW5uLmZhYmxldEBjcmYuY2Fub24uZnI+CisKKyAgICAgICAgTW92ZSB3
ZWJraXRHZXRVc2VyTWVkaWEgdG8gSlMgQnVpbHRpbgorICAgICAgICBodHRwczovL2J1Z3Mud2Vi
a2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTQ5NDk5CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9C
T0RZIChPT1BTISkuCisKKyAgICAgICAgSW1wbGVtZW50ZWQgd2Via2l0R2V0VXNlck1lZGlhIGFz
IGEgSlNCdWlsdGluIHdyYXBwZXIgYXJvdW5kIG5hdmlnYXRvci5tZWRpYURldmljZXMuZ2V0VXNl
ck1lZGlhLgorCisgICAgICAgIFJlbW92ZWQgY3BwIGJhc2VkIHZlcnNpb24uCisKKyAgICAgICAg
VGhlIGpzIGJ1aWx0aW5nIGltcGxlbWVudGF0aW9uIGNoZWNrcyBmb3IgYXJndW1lbnQgYnV0IGRv
ZXMgbm90IHJhaXNlIGV4Y2VwdGlvbiB3aGVuIHRoZSByZXF1ZXN0IGlzIG5vdCBzdXBwb3J0ZWQu
CisgICAgICAgIFRoZSBlcnJvciBjYWxsYmFjayBpcyBjYWxsZWQgaW5zdGVhZCwgaW4gYW4gYXN5
bmNocm9ub3VzIGZhc2hpb24uCisgICAgICAgIFRoZSBqcyBidWlsdGluIGltcGxlbWVudGF0aW9u
IGRvZXMgbm90IGNoZWNrIGZpcnN0IHRoYXQgaXQgaXMgY2FsbGVkIG9uIG5hdmlnYXRvciwgY29u
dHJhcnkgdG8gdGhlIGNwcCBpbXBsZW1lbnRhdGlvbi4KKyAgICAgICAgVGhpcyBpcyBkb25lIGFm
dGVyd2FyZHMgd2hlbiBjYWxsaW5nIG5hdmlnYXRvci5NZWRpYURldmljZXMuQGdldFVzZXJNZWRp
YS4KKworICAgICAgICBDb3ZlcmVkIGJ5IGV4aXN0aW5nIGFuZCBtb2RpZmllZCB0ZXN0cy4KKwor
ICAgICAgICAqIENNYWtlTGlzdHMudHh0OiBBZGRpbmcgTmF2aWdhdG9yVXNlck1lZGlhLmpzIGFz
IGJ1aWx0LWluIEpTIGZpbGUuCisgICAgICAgICogRGVyaXZlZFNvdXJjZXMubWFrZTogRGl0dG8u
CisgICAgICAgICogTW9kdWxlcy9tZWRpYXN0cmVhbS9OYXZpZ2F0b3JVc2VyTWVkaWEuaWRsOiBN
YWtpbmcgd2Via2l0R2V0VXNlck1lZGlhIEpTQnVpbHRpbgorICAgICAgICAqIE1vZHVsZXMvbWVk
aWFzdHJlYW0vTmF2aWdhdG9yVXNlck1lZGlhLmpzOgorICAgICAgICAod2Via2l0R2V0VXNlck1l
ZGlhKToKKyAgICAgICAgKiBNb2R1bGVzL21lZGlhc3RyZWFtL05hdmlnYXRvclVzZXJNZWRpYUVy
cm9yQ2FsbGJhY2suaDogUmVtb3ZlZC4KKyAgICAgICAgKiBNb2R1bGVzL21lZGlhc3RyZWFtL05h
dmlnYXRvclVzZXJNZWRpYUVycm9yQ2FsbGJhY2suaWRsOiBSZW1vdmVkLgorICAgICAgICAqIE1v
ZHVsZXMvbWVkaWFzdHJlYW0vTmF2aWdhdG9yVXNlck1lZGlhU3VjY2Vzc0NhbGxiYWNrLmg6IFJl
bW92ZWQuCisgICAgICAgICogTW9kdWxlcy9tZWRpYXN0cmVhbS9OYXZpZ2F0b3JVc2VyTWVkaWFT
dWNjZXNzQ2FsbGJhY2suaWRsOiBSZW1vdmVkLgorICAgICAgICAqIE1vZHVsZXMvbWVkaWFzdHJl
YW0vVXNlck1lZGlhUmVxdWVzdC5jcHA6CisgICAgICAgICogTW9kdWxlcy9tZWRpYXN0cmVhbS9V
c2VyTWVkaWFSZXF1ZXN0Lmg6CisgICAgICAgICogV2ViQ29yZS54Y29kZXByb2ovcHJvamVjdC5w
Ynhwcm9qOgorICAgICAgICAqIGJpbmRpbmdzL2pzL0pTRE9NV2luZG93QmFzZS5jcHA6CisgICAg
ICAgIChXZWJDb3JlOjpKU0RPTVdpbmRvd0Jhc2U6OmZpbmlzaENyZWF0aW9uKTogU3R5bGUgbW9k
aWZpY2F0aW9ucy4KKyAgICAgICAgKiBiaW5kaW5ncy9qcy9KU05hdmlnYXRvckN1c3RvbS5jcHA6
IFJlbW92ZWQuCisgICAgICAgICogYmluZGluZ3MvanMvV2ViQ29yZUpTQnVpbHRpbnMuY3BwOiBB
ZGRpbmcgc3VwcG9ydCBmb3IgTmF2aWdhdG9yVXNlck1lZGlhLmpzIGJ1aWx0LWluIEpTIGZpbGUu
CisgICAgICAgICogYmluZGluZ3MvanMvV2ViQ29yZUpTQnVpbHRpbnMuaDogRGl0dG8uCisgICAg
ICAgIChXZWJDb3JlOjpKU0J1aWx0aW5GdW5jdGlvbnM6OkpTQnVpbHRpbkZ1bmN0aW9ucyk6Cisg
ICAgICAgIChXZWJDb3JlOjpKU0J1aWx0aW5GdW5jdGlvbnM6Om5hdmlnYXRvclVzZXJNZWRpYUJ1
aWx0aW5zKToKKwogMjAxNS0xMC0yOSAgU2VyZ2lvIFZpbGxhciBTZW5pbiAgPHN2aWxsYXJAaWdh
bGlhLmNvbT4KIAogICAgICAgICBbQ1NTIEdyaWQgTGF5b3V0XSBtaW4tY29udGVudCByb3cgZG9l
cyBub3QgYWx3YXlzIHNocmluawpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvQ01ha2VMaXN0
cy50eHQgYi9Tb3VyY2UvV2ViQ29yZS9DTWFrZUxpc3RzLnR4dAppbmRleCBjYWFkYjk1MDAxMzI1
NmM5Y2ZlNDBlNjM0MGI0MmQyZTJjZmY0MDNhLi42OTkxODViMmQ3NTk1MDA1MTBlZGNmYjc0ODlj
ODcwYjI2MDc0OWJkIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9DTWFrZUxpc3RzLnR4dAor
KysgYi9Tb3VyY2UvV2ViQ29yZS9DTWFrZUxpc3RzLnR4dApAQCAtMjQxLDggKzI0MSw2IEBAIHNl
dChXZWJDb3JlX05PTl9TVkdfSURMX0ZJTEVTCiAgICAgTW9kdWxlcy9tZWRpYXN0cmVhbS9OYXZp
Z2F0b3JNZWRpYURldmljZXMuaWRsCiAgICAgTW9kdWxlcy9tZWRpYXN0cmVhbS9OYXZpZ2F0b3JV
c2VyTWVkaWEuaWRsCiAgICAgTW9kdWxlcy9tZWRpYXN0cmVhbS9OYXZpZ2F0b3JVc2VyTWVkaWFF
cnJvci5pZGwKLSAgICBNb2R1bGVzL21lZGlhc3RyZWFtL05hdmlnYXRvclVzZXJNZWRpYUVycm9y
Q2FsbGJhY2suaWRsCi0gICAgTW9kdWxlcy9tZWRpYXN0cmVhbS9OYXZpZ2F0b3JVc2VyTWVkaWFT
dWNjZXNzQ2FsbGJhY2suaWRsCiAgICAgTW9kdWxlcy9tZWRpYXN0cmVhbS9SVENDb25maWd1cmF0
aW9uLmlkbAogICAgIE1vZHVsZXMvbWVkaWFzdHJlYW0vUlRDRFRNRlNlbmRlci5pZGwKICAgICBN
b2R1bGVzL21lZGlhc3RyZWFtL1JUQ0RUTUZUb25lQ2hhbmdlRXZlbnQuaWRsCkBAIC0xMjAxLDcg
KzExOTksNiBAQCBzZXQoV2ViQ29yZV9TT1VSQ0VTCiAgICAgYmluZGluZ3MvanMvSlNNdXRhdGlv
bkNhbGxiYWNrLmNwcAogICAgIGJpbmRpbmdzL2pzL0pTTXV0YXRpb25PYnNlcnZlckN1c3RvbS5j
cHAKICAgICBiaW5kaW5ncy9qcy9KU05hbWVkTm9kZU1hcEN1c3RvbS5jcHAKLSAgICBiaW5kaW5n
cy9qcy9KU05hdmlnYXRvckN1c3RvbS5jcHAKICAgICBiaW5kaW5ncy9qcy9KU05vZGVDdXN0b20u
Y3BwCiAgICAgYmluZGluZ3MvanMvSlNOb2RlRmlsdGVyQ3VzdG9tLmNwcAogICAgIGJpbmRpbmdz
L2pzL0pTTm9kZUl0ZXJhdG9yQ3VzdG9tLmNwcApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUv
RGVyaXZlZFNvdXJjZXMubWFrZSBiL1NvdXJjZS9XZWJDb3JlL0Rlcml2ZWRTb3VyY2VzLm1ha2UK
aW5kZXggZGZkYTJmMjdmZmI5NzYwN2FiMGFjMzA2ZTY3NDZiOTg0OWU4MTk1NS4uNTI0MjVmODY1
MDU5M2IyNmI1MTFkMDM2MjZhNTZkNWNhZDJkZmVjNSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNv
cmUvRGVyaXZlZFNvdXJjZXMubWFrZQorKysgYi9Tb3VyY2UvV2ViQ29yZS9EZXJpdmVkU291cmNl
cy5tYWtlCkBAIC0xMzcsOCArMTM3LDYgQEAgTk9OX1NWR19CSU5ESU5HX0lETFMgPSBcCiAgICAg
JChXZWJDb3JlKS9Nb2R1bGVzL21lZGlhc3RyZWFtL05hdmlnYXRvck1lZGlhRGV2aWNlcy5pZGwg
XAogICAgICQoV2ViQ29yZSkvTW9kdWxlcy9tZWRpYXN0cmVhbS9OYXZpZ2F0b3JVc2VyTWVkaWEu
aWRsIFwKICAgICAkKFdlYkNvcmUpL01vZHVsZXMvbWVkaWFzdHJlYW0vTmF2aWdhdG9yVXNlck1l
ZGlhRXJyb3IuaWRsIFwKLSAgICAkKFdlYkNvcmUpL01vZHVsZXMvbWVkaWFzdHJlYW0vTmF2aWdh
dG9yVXNlck1lZGlhRXJyb3JDYWxsYmFjay5pZGwgXAotICAgICQoV2ViQ29yZSkvTW9kdWxlcy9t
ZWRpYXN0cmVhbS9OYXZpZ2F0b3JVc2VyTWVkaWFTdWNjZXNzQ2FsbGJhY2suaWRsIFwKICAgICAk
KFdlYkNvcmUpL01vZHVsZXMvbWVkaWFzdHJlYW0vUlRDQ29uZmlndXJhdGlvbi5pZGwgXAogICAg
ICQoV2ViQ29yZSkvTW9kdWxlcy9tZWRpYXN0cmVhbS9SVENEVE1GU2VuZGVyLmlkbCBcCiAgICAg
JChXZWJDb3JlKS9Nb2R1bGVzL21lZGlhc3RyZWFtL1JUQ0RUTUZUb25lQ2hhbmdlRXZlbnQuaWRs
IFwKQEAgLTEyNTcsNiArMTI1NSw3IEBAIFdlYlJlcGxheUlucHV0cy5oIDogJChJTlBVVF9HRU5F
UkFUT1JfU1BFQ0lGSUNBVElPTlMpICQoSU5QVVRfR0VORVJBVE9SX1NDUklQVFMpCiAKIFdlYkNv
cmVfQlVJTFRJTlNfU09VUkNFUyA9IFwKICAgICAkKFdlYkNvcmUpL01vZHVsZXMvbWVkaWFzdHJl
YW0vTWVkaWFEZXZpY2VzLmpzIFwKKyAgICAkKFdlYkNvcmUpL01vZHVsZXMvbWVkaWFzdHJlYW0v
TmF2aWdhdG9yVXNlck1lZGlhLmpzIFwKICAgICAkKFdlYkNvcmUpL01vZHVsZXMvc3RyZWFtcy9C
eXRlTGVuZ3RoUXVldWluZ1N0cmF0ZWd5LmpzIFwKICAgICAkKFdlYkNvcmUpL01vZHVsZXMvc3Ry
ZWFtcy9Db3VudFF1ZXVpbmdTdHJhdGVneS5qcyBcCiAgICAgJChXZWJDb3JlKS9Nb2R1bGVzL3N0
cmVhbXMvUmVhZGFibGVTdHJlYW0uanMgXApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvTW9k
dWxlcy9tZWRpYXN0cmVhbS9OYXZpZ2F0b3JVc2VyTWVkaWEuaWRsIGIvU291cmNlL1dlYkNvcmUv
TW9kdWxlcy9tZWRpYXN0cmVhbS9OYXZpZ2F0b3JVc2VyTWVkaWEuaWRsCmluZGV4IDRjNjVjYjdh
ZTEyYzQzYWE0YjM5NGZmM2QzZWY0YzlmOTE2NWY4NjUuLjNhYTQ5M2YwZjk1OWJhZDIyOWJlMWM5
NGE4ZjExYmE1Mjk0NTE3YTAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvbWVk
aWFzdHJlYW0vTmF2aWdhdG9yVXNlck1lZGlhLmlkbAorKysgYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1
bGVzL21lZGlhc3RyZWFtL05hdmlnYXRvclVzZXJNZWRpYS5pZGwKQEAgLTIwLDggKzIwLDYgQEAK
IFsKICAgICBDb25kaXRpb25hbD1NRURJQV9TVFJFQU0sCiBdIHBhcnRpYWwgaW50ZXJmYWNlIE5h
dmlnYXRvciB7Ci0gICAgW0N1c3RvbSwgUmFpc2VzRXhjZXB0aW9uXSB2b2lkIHdlYmtpdEdldFVz
ZXJNZWRpYShEaWN0aW9uYXJ5IG9wdGlvbnMsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgTmF2aWdhdG9yVXNlck1lZGlhU3VjY2Vzc0NhbGxiYWNrIHN1
Y2Nlc3NDYWxsYmFjaywKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICBvcHRpb25hbCBOYXZpZ2F0b3JVc2VyTWVkaWFFcnJvckNhbGxiYWNrIGVycm9yQ2Fs
bGJhY2spOworICAgIFtKU0J1aWx0aW5dIHZvaWQgd2Via2l0R2V0VXNlck1lZGlhKERpY3Rpb25h
cnkgb2JqZWN0LCBhbnkgc3VjY2Vzc0NhbGxiYWNrLCBhbnkgZXJyb3JDYWxsYmFjayk7CiB9Owog
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL21lZGlhc3RyZWFtL05hdmlnYXRv
clVzZXJNZWRpYS5qcyBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvbWVkaWFzdHJlYW0vTmF2aWdh
dG9yVXNlck1lZGlhLmpzCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjk1NzlhYzYzNWE3M2I0ZmE0Mjg5YzUxYzMxMjNl
YzUxZjQxODQ1ZDUKLS0tIC9kZXYvbnVsbAorKysgYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL21l
ZGlhc3RyZWFtL05hdmlnYXRvclVzZXJNZWRpYS5qcwpAQCAtMCwwICsxLDQ2IEBACisvKgorICog
Q29weXJpZ2h0IChDKSAyMDE1IENhbm9uIEluYy4KKyAqCisgKiBSZWRpc3RyaWJ1dGlvbiBhbmQg
dXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKKyAqIG1vZGlm
aWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0
aW9ucworICogYXJlIG1ldDoKKyAqIDEuIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBt
dXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBv
ZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisgKiAyLiBSZWRpc3Ry
aWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdo
dAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2lu
ZyBkaXNjbGFpbWVyIGluIHRoZQorICogICAgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0
ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KKyAqCisgKiBUSElTIFNPRlRX
QVJFIElTIFBST1ZJREVEIEJZIEFQUExFIElOQy4gYGBBUyBJUycnIEFORCBBTlkKKyAqIEVYUFJF
U1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywg
VEhFCisgKiBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNT
IEZPUiBBIFBBUlRJQ1VMQVIKKyAqIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuICBJTiBOTyBFVkVO
VCBTSEFMTCBBUFBMRSBJTkMuIE9SCisgKiBDT05UUklCVVRPUlMgQkUgTElBQkxFIEZPUiBBTlkg
RElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwKKyAqIEVYRU1QTEFSWSwgT1Ig
Q09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywKKyAq
IFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNF
LCBEQVRBLCBPUgorICogUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVS
IENBVVNFRCBBTkQgT04gQU5ZIFRIRU9SWQorICogT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENP
TlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUCisgKiAoSU5DTFVESU5HIE5FR0xJR0VO
Q0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UKKyAqIE9G
IFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VD
SCBEQU1BR0UuCisgKi8KKworZnVuY3Rpb24gd2Via2l0R2V0VXNlck1lZGlhKG9wdGlvbnMsIHN1
Y2Nlc3NDYWxsYmFjaywgZXJyb3JDYWxsYmFjaykKK3sKKyAgICAidXNlIHN0cmljdCI7CisKKyAg
ICAvLyBGSVhNRTogV2Ugc2hvdWxkIHJhaXNlIGEgRE9NIHVuc3VwcG9ydGVkIGV4Y2VwdGlvbiBp
ZiB0aGVyZSBpcyBubyBuYXZpZ2F0b3IgYW5kIHByb3Blcmx5IGRldGVjdCB3aGV0aGVyIG1ldGhv
ZCBpcyBub3QgY2FsbGVkIG9uIGEgTmF2aWdhdG9yIG9iamVjdC4KKyAgICBpZiAoISh0aGlzLm1l
ZGlhRGV2aWNlcyAmJiB0aGlzLm1lZGlhRGV2aWNlcy5AZ2V0VXNlck1lZGlhRnJvbUpTKSkKKyAg
ICAgICAgdGhyb3cgbmV3IEBUeXBlRXJyb3IoIlRoZSBpbXBsZW1lbnRhdGlvbiBkaWQgbm90IHN1
cHBvcnQgdGhlIHJlcXVlc3RlZCB0eXBlIG9mIG9iamVjdCBvciBvcGVyYXRpb24uIik7CisKKyAg
ICBpZiAoYXJndW1lbnRzLmxlbmd0aCA8IDMpCisgICAgICAgIHRocm93IG5ldyBAVHlwZUVycm9y
KCJOb3QgZW5vdWdoIGFyZ3VtZW50cyIpOworCisgICAgaWYgKG9wdGlvbnMgIT09IE9iamVjdChv
cHRpb25zKSkKKyAgICAgICAgdGhyb3cgbmV3IEBUeXBlRXJyb3IoIkFyZ3VtZW50IDEgKG9wdGlv
bnMpIHRvIE5hdmlnYXRvci53ZWJraXRHZXRVc2VyTWVkaWEgbXVzdCBiZSBhbiBvYmplY3QiKTsK
KworICAgIGlmICh0eXBlb2Ygc3VjY2Vzc0NhbGxiYWNrICE9PSAiZnVuY3Rpb24iKQorICAgICAg
ICB0aHJvdyBuZXcgQFR5cGVFcnJvcigiQXJndW1lbnQgMiAoJ3N1Y2Nlc3NDYWxsYmFjaycpIHRv
IE5hdmlnYXRvci53ZWJraXRHZXRVc2VyTWVkaWEgbXVzdCBiZSBhIGZ1bmN0aW9uIik7CisgICAg
aWYgKHR5cGVvZiBlcnJvckNhbGxiYWNrICE9PSAiZnVuY3Rpb24iKQorICAgICAgICB0aHJvdyBu
ZXcgQFR5cGVFcnJvcigiQXJndW1lbnQgMyAoJ2Vycm9yQ2FsbGJhY2snKSB0byBOYXZpZ2F0b3Iu
d2Via2l0R2V0VXNlck1lZGlhIG11c3QgYmUgYSBmdW5jdGlvbiIpOworCisgICAgdGhpcy5tZWRp
YURldmljZXMuQGdldFVzZXJNZWRpYUZyb21KUyhvcHRpb25zKS50aGVuKHN1Y2Nlc3NDYWxsYmFj
aywgZXJyb3JDYWxsYmFjayk7Cit9CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVz
L21lZGlhc3RyZWFtL05hdmlnYXRvclVzZXJNZWRpYUVycm9yQ2FsbGJhY2suaCBiL1NvdXJjZS9X
ZWJDb3JlL01vZHVsZXMvbWVkaWFzdHJlYW0vTmF2aWdhdG9yVXNlck1lZGlhRXJyb3JDYWxsYmFj
ay5oCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCBkZDNjOGIzMmI2ZWM3YzgwNjFkNjI0
MjExM2U5ZDA4NjQxZjVhYTA5Li4wMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwCi0tLSBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvbWVkaWFzdHJlYW0vTmF2aWdhdG9yVXNl
ck1lZGlhRXJyb3JDYWxsYmFjay5oCisrKyAvZGV2L251bGwKQEAgLTEsNDUgKzAsMCBAQAotLyoK
LSAqIENvcHlyaWdodCAoQykgMjAxMSBHb29nbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgot
ICoKLSAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMs
IHdpdGggb3Igd2l0aG91dAotICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVk
IHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCi0gKiBhcmUgbWV0OgotICogMS4gIFJlZGlz
dHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0
Ci0gKiAgICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2lu
ZyBkaXNjbGFpbWVyLgotICogMi4gIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0
IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0Ci0gKiAgICAgbm90aWNlLCB0aGlzIGxpc3Qg
b2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQotICogICAg
IGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBk
aXN0cmlidXRpb24uCi0gKgotICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBBUFBMRSBJ
TkMuIEFORCBJVFMgQ09OVFJJQlVUT1JTIGBgQVMgSVMnJyBBTkQgQU5ZCi0gKiBFWFBSRVNTIE9S
IElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFRIRSBJ
TVBMSUVECi0gKiBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1Ig
QSBQQVJUSUNVTEFSIFBVUlBPU0UgQVJFCi0gKiBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFM
TCBBUFBMRSBJTkMuIE9SIElUUyBDT05UUklCVVRPUlMgQkUgTElBQkxFIEZPUiBBTlkKLSAqIERJ
UkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IgQ09OU0VR
VUVOVElBTCBEQU1BR0VTCi0gKiAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NV
UkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7Ci0gKiBMT1NTIE9GIFVTRSwg
REFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNF
RCBBTkQgT04KLSAqIEFOWSBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNU
LCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUCi0gKiAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1Ig
T1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UgT0YgVEhJUwotICog
U09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1B
R0UuCi0gKi8KLQotI2lmbmRlZiBOYXZpZ2F0b3JVc2VyTWVkaWFFcnJvckNhbGxiYWNrX2gKLSNk
ZWZpbmUgTmF2aWdhdG9yVXNlck1lZGlhRXJyb3JDYWxsYmFja19oCi0KLSNpZiBFTkFCTEUoTUVE
SUFfU1RSRUFNKQotCi0jaW5jbHVkZSAiTmF2aWdhdG9yVXNlck1lZGlhRXJyb3IuaCIKLSNpbmNs
dWRlIDx3dGYvUmVmQ291bnRlZC5oPgotCi1uYW1lc3BhY2UgV2ViQ29yZSB7Ci0KLWNsYXNzIE5h
dmlnYXRvclVzZXJNZWRpYUVycm9yQ2FsbGJhY2sgOiBwdWJsaWMgUmVmQ291bnRlZDxOYXZpZ2F0
b3JVc2VyTWVkaWFFcnJvckNhbGxiYWNrPiB7Ci1wdWJsaWM6Ci0gICAgdmlydHVhbCB+TmF2aWdh
dG9yVXNlck1lZGlhRXJyb3JDYWxsYmFjaygpIHsgfQotICAgIHZpcnR1YWwgYm9vbCBoYW5kbGVF
dmVudChOYXZpZ2F0b3JVc2VyTWVkaWFFcnJvciopID0gMDsKLX07Ci0KLX0gLy8gbmFtZXNwYWNl
IFdlYkNvcmUKLQotI2VuZGlmIC8vIEVOQUJMRShNRURJQV9TVFJFQU0pCi0KLSNlbmRpZiAvLyBO
YXZpZ2F0b3JVc2VyTWVkaWFFcnJvckNhbGxiYWNrX2gKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJD
b3JlL01vZHVsZXMvbWVkaWFzdHJlYW0vTmF2aWdhdG9yVXNlck1lZGlhRXJyb3JDYWxsYmFjay5p
ZGwgYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL21lZGlhc3RyZWFtL05hdmlnYXRvclVzZXJNZWRp
YUVycm9yQ2FsbGJhY2suaWRsCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCBmMGFjN2Rk
MWJmOWEzZmUyZDJmY2YyMDEzZDY2MDQ3Y2VmM2M2ZmQxLi4wMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwCi0tLSBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvbWVkaWFzdHJl
YW0vTmF2aWdhdG9yVXNlck1lZGlhRXJyb3JDYWxsYmFjay5pZGwKKysrIC9kZXYvbnVsbApAQCAt
MSwzMSArMCwwIEBACi0vKgotICogQ29weXJpZ2h0IChDKSAyMDExIEdvb2dsZSBJbmMuIEFsbCBy
aWdodHMgcmVzZXJ2ZWQuCi0gKgotICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2Ug
YW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0Ci0gKiBtb2RpZmljYXRpb24sIGFyZSBw
ZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKLSAqIGFyZSBt
ZXQ6Ci0gKiAxLiAgUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRo
ZSBhYm92ZSBjb3B5cmlnaHQKLSAqICAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25z
IGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCi0gKiAyLiAgUmVkaXN0cmlidXRpb25zIGlu
IGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKLSAqICAgICBu
b3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWlt
ZXIgaW4gdGhlCi0gKiAgICAgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHBy
b3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KLSAqCi0gKiBUSElTIFNPRlRXQVJFIElTIFBS
T1ZJREVEIEJZIEFQUExFIElOQy4gQU5EIElUUyBDT05UUklCVVRPUlMgYGBBUyBJUycnIEFORCBB
TlkKLSAqIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1Qg
TElNSVRFRCBUTywgVEhFIElNUExJRUQKLSAqIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZ
IEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBUkUKLSAqIERJU0NMQUlNRUQu
IElOIE5PIEVWRU5UIFNIQUxMIEFQUExFIElOQy4gT1IgSVRTIENPTlRSSUJVVE9SUyBCRSBMSUFC
TEUgRk9SIEFOWQotICogRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhF
TVBMQVJZLCBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMKLSAqIChJTkNMVURJTkcsIEJVVCBOT1Qg
TElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsK
LSAqIExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJ
T04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTgotICogQU5ZIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdI
RVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQKLSAqIChJTkNMVURJ
TkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhF
IFVTRSBPRiBUSElTCi0gKiBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJ
TElUWSBPRiBTVUNIIERBTUFHRS4KLSAqLwotCi1bCi0gICAgQ29uZGl0aW9uYWw9TUVESUFfU1RS
RUFNLAotICAgIENhbGxiYWNrPUZ1bmN0aW9uT25seSwKLV0gY2FsbGJhY2sgaW50ZXJmYWNlIE5h
dmlnYXRvclVzZXJNZWRpYUVycm9yQ2FsbGJhY2sgewotICAgIGJvb2xlYW4gaGFuZGxlRXZlbnQo
TmF2aWdhdG9yVXNlck1lZGlhRXJyb3IgZXJyb3IpOwotfTsKLQpkaWZmIC0tZ2l0IGEvU291cmNl
L1dlYkNvcmUvTW9kdWxlcy9tZWRpYXN0cmVhbS9OYXZpZ2F0b3JVc2VyTWVkaWFTdWNjZXNzQ2Fs
bGJhY2suaCBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvbWVkaWFzdHJlYW0vTmF2aWdhdG9yVXNl
ck1lZGlhU3VjY2Vzc0NhbGxiYWNrLmgKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDlm
NDU2ZWFkYzZhZTQ5NDE4NmNmMDdjNmUyYTUyZTA0NzYzZjk5OTAuLjAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAKLS0tIGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9tZWRp
YXN0cmVhbS9OYXZpZ2F0b3JVc2VyTWVkaWFTdWNjZXNzQ2FsbGJhY2suaAorKysgL2Rldi9udWxs
CkBAIC0xLDQ2ICswLDAgQEAKLS8qCi0gKiBDb3B5cmlnaHQgKEMpIDIwMTEgR29vZ2xlIEluYy4g
QWxsIHJpZ2h0cyByZXNlcnZlZC4KLSAqCi0gKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNv
dXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKLSAqIG1vZGlmaWNhdGlvbiwg
YXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucwotICog
YXJlIG1ldDoKLSAqIDEuICBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRh
aW4gdGhlIGFib3ZlIGNvcHlyaWdodAotICogICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRp
dGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KLSAqIDIuICBSZWRpc3RyaWJ1dGlv
bnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAotICog
ICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlz
Y2xhaW1lciBpbiB0aGUKLSAqICAgICBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlh
bHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgotICoKLSAqIFRISVMgU09GVFdBUkUg
SVMgUFJPVklERUQgQlkgQVBQTEUgSU5DLiBBTkQgSVRTIENPTlRSSUJVVE9SUyBgYEFTIElTJycg
QU5EIEFOWQotICogRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVU
IE5PVCBMSU1JVEVEIFRPLCBUSEUgSU1QTElFRAotICogV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFC
SUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFSRQotICogRElTQ0xB
SU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgQVBQTEUgSU5DLiBPUiBJVFMgQ09OVFJJQlVUT1JTIEJF
IExJQUJMRSBGT1IgQU5ZCi0gKiBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFM
LCBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwgREFNQUdFUwotICogKElOQ0xVRElORywgQlVU
IE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJ
Q0VTOwotICogTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVS
UlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OCi0gKiBBTlkgVEhFT1JZIE9GIExJQUJJTElU
WSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVAotICogKElO
Q0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBP
RiBUSEUgVVNFIE9GIFRISVMKLSAqIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBP
U1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgotICovCi0KLSNpZm5kZWYgTmF2aWdhdG9yVXNlck1l
ZGlhU3VjY2Vzc0NhbGxiYWNrX2gKLSNkZWZpbmUgTmF2aWdhdG9yVXNlck1lZGlhU3VjY2Vzc0Nh
bGxiYWNrX2gKLQotI2lmIEVOQUJMRShNRURJQV9TVFJFQU0pCi0KLSNpbmNsdWRlIDx3dGYvUmVm
Q291bnRlZC5oPgotCi1uYW1lc3BhY2UgV2ViQ29yZSB7Ci0KLWNsYXNzIE1lZGlhU3RyZWFtOwot
Ci1jbGFzcyBOYXZpZ2F0b3JVc2VyTWVkaWFTdWNjZXNzQ2FsbGJhY2sgOiBwdWJsaWMgUmVmQ291
bnRlZDxOYXZpZ2F0b3JVc2VyTWVkaWFTdWNjZXNzQ2FsbGJhY2s+IHsKLXB1YmxpYzoKLSAgICB2
aXJ0dWFsIH5OYXZpZ2F0b3JVc2VyTWVkaWFTdWNjZXNzQ2FsbGJhY2soKSB7IH0KLSAgICB2aXJ0
dWFsIGJvb2wgaGFuZGxlRXZlbnQoTWVkaWFTdHJlYW0qKSA9IDA7Ci19OwotCi19IC8vIG5hbWVz
cGFjZSBXZWJDb3JlCi0KLSNlbmRpZiAvLyBFTkFCTEUoTUVESUFfU1RSRUFNKQotCi0jZW5kaWYg
Ly8gTmF2aWdhdG9yVXNlck1lZGlhU3VjY2Vzc0NhbGxiYWNrX2gKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJDb3JlL01vZHVsZXMvbWVkaWFzdHJlYW0vTmF2aWdhdG9yVXNlck1lZGlhU3VjY2Vzc0Nh
bGxiYWNrLmlkbCBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvbWVkaWFzdHJlYW0vTmF2aWdhdG9y
VXNlck1lZGlhU3VjY2Vzc0NhbGxiYWNrLmlkbApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5k
ZXggMmQxOTBjZjJlYjE5MjIwOTU4YThjZThiY2JmNzhkMzQ0Y2ZkMmU1MC4uMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVz
L21lZGlhc3RyZWFtL05hdmlnYXRvclVzZXJNZWRpYVN1Y2Nlc3NDYWxsYmFjay5pZGwKKysrIC9k
ZXYvbnVsbApAQCAtMSwzMSArMCwwIEBACi0vKgotICogQ29weXJpZ2h0IChDKSAyMDExIEdvb2ds
ZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi0gKgotICogUmVkaXN0cmlidXRpb24gYW5kIHVz
ZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0Ci0gKiBtb2RpZmlj
YXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlv
bnMKLSAqIGFyZSBtZXQ6Ci0gKiAxLiAgUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11
c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKLSAqICAgICBub3RpY2UsIHRoaXMgbGlzdCBv
ZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCi0gKiAyLiAgUmVkaXN0
cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmln
aHQKLSAqICAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93
aW5nIGRpc2NsYWltZXIgaW4gdGhlCi0gKiAgICAgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIg
bWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KLSAqCi0gKiBUSElTIFNP
RlRXQVJFIElTIFBST1ZJREVEIEJZIEFQUExFIElOQy4gQU5EIElUUyBDT05UUklCVVRPUlMgYGBB
UyBJUycnIEFORCBBTlkKLSAqIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJ
TkcsIEJVVCBOT1QgTElNSVRFRCBUTywgVEhFIElNUExJRUQKLSAqIFdBUlJBTlRJRVMgT0YgTUVS
Q0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBUkUKLSAq
IERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIEFQUExFIElOQy4gT1IgSVRTIENPTlRSSUJV
VE9SUyBCRSBMSUFCTEUgRk9SIEFOWQotICogRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwg
U1BFQ0lBTCwgRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMKLSAqIChJTkNMVURJ
TkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBP
UiBTRVJWSUNFUzsKLSAqIExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVT
UyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTgotICogQU5ZIFRIRU9SWSBPRiBM
SUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQK
LSAqIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdB
WSBPVVQgT0YgVEhFIFVTRSBPRiBUSElTCi0gKiBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9G
IFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KLSAqLwotCi1bCi0gICAgQ29uZGl0aW9u
YWw9TUVESUFfU1RSRUFNLAotICAgIENhbGxiYWNrPUZ1bmN0aW9uT25seSwKLV0gY2FsbGJhY2sg
aW50ZXJmYWNlIE5hdmlnYXRvclVzZXJNZWRpYVN1Y2Nlc3NDYWxsYmFjayB7Ci0gICAgYm9vbGVh
biBoYW5kbGVFdmVudChNZWRpYVN0cmVhbSBzdHJlYW0pOwotfTsKLQpkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYkNvcmUvTW9kdWxlcy9tZWRpYXN0cmVhbS9Vc2VyTWVkaWFSZXF1ZXN0LmNwcCBiL1Nv
dXJjZS9XZWJDb3JlL01vZHVsZXMvbWVkaWFzdHJlYW0vVXNlck1lZGlhUmVxdWVzdC5jcHAKaW5k
ZXggYzNmMzM4MGZhYmJmYmUxNWMzMTYyZjNiNzNkNzQ2YmVhYTY3N2ZhMy4uZDNmYzNiZmFhN2Uy
OWE4YTMxZDc3MTM5Y2FjYjc5Y2RhNDNlODcxNyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUv
TW9kdWxlcy9tZWRpYXN0cmVhbS9Vc2VyTWVkaWFSZXF1ZXN0LmNwcAorKysgYi9Tb3VyY2UvV2Vi
Q29yZS9Nb2R1bGVzL21lZGlhc3RyZWFtL1VzZXJNZWRpYVJlcXVlc3QuY3BwCkBAIC00Nyw4ICs0
Nyw2IEBACiAjaW5jbHVkZSAiTWVkaWFDb25zdHJhaW50c0ltcGwuaCIKICNpbmNsdWRlICJNZWRp
YVN0cmVhbS5oIgogI2luY2x1ZGUgIk1lZGlhU3RyZWFtUHJpdmF0ZS5oIgotI2luY2x1ZGUgIk5h
dmlnYXRvclVzZXJNZWRpYUVycm9yQ2FsbGJhY2suaCIKLSNpbmNsdWRlICJOYXZpZ2F0b3JVc2Vy
TWVkaWFTdWNjZXNzQ2FsbGJhY2suaCIKICNpbmNsdWRlICJSZWFsdGltZU1lZGlhU291cmNlQ2Vu
dGVyLmgiCiAjaW5jbHVkZSAiU2VjdXJpdHlPcmlnaW4uaCIKICNpbmNsdWRlICJVc2VyTWVkaWFD
b250cm9sbGVyLmgiCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL21lZGlhc3Ry
ZWFtL1VzZXJNZWRpYVJlcXVlc3QuaCBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvbWVkaWFzdHJl
YW0vVXNlck1lZGlhUmVxdWVzdC5oCmluZGV4IGRkMjAxMTNjYWM1NWQ3MTRlM2RjMjUzNTE0YWI0
MDNlNzI2MzgyMTYuLmVjZWE1OWE2Y2E2Y2U3YjM0MWNkYzA3NDcxYWFmMjQ5ZTJiZTUxNjcgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvbWVkaWFzdHJlYW0vVXNlck1lZGlhUmVx
dWVzdC5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvbWVkaWFzdHJlYW0vVXNlck1lZGlh
UmVxdWVzdC5oCkBAIC00OSw4ICs0OSw2IEBAIGNsYXNzIERvY3VtZW50OwogY2xhc3MgRnJhbWU7
CiBjbGFzcyBNZWRpYUNvbnN0cmFpbnRzOwogY2xhc3MgTWVkaWFTdHJlYW1Qcml2YXRlOwotY2xh
c3MgTmF2aWdhdG9yVXNlck1lZGlhRXJyb3JDYWxsYmFjazsKLWNsYXNzIE5hdmlnYXRvclVzZXJN
ZWRpYVN1Y2Nlc3NDYWxsYmFjazsKIGNsYXNzIFVzZXJNZWRpYUNvbnRyb2xsZXI7CiBjbGFzcyBT
ZWN1cml0eU9yaWdpbjsKIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvV2ViQ29yZS54Y29k
ZXByb2ovcHJvamVjdC5wYnhwcm9qIGIvU291cmNlL1dlYkNvcmUvV2ViQ29yZS54Y29kZXByb2ov
cHJvamVjdC5wYnhwcm9qCmluZGV4IGVmNzkzZTExMmViNTdlY2VkMjQ2ZGVjNGMzYzZiNWVjNjBi
MDQxOGEuLjc5OGY3MWQyMjIyYjY4Y2Y2OTRhZTE1MmZmMDI2YjNmYWE4ZWEzZWYgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvagorKysg
Yi9Tb3VyY2UvV2ViQ29yZS9XZWJDb3JlLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2oKQEAgLTE1
Myw3ICsxNTMsNiBAQAogCQkwNzM3OTRFMjE5RUUyRDFCMDBFNUEwNDUgLyogTWVkaWFDb25zdHJh
aW50c01vY2suaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9
IDA3Mzc5NEUwMTlFRTJEMUIwMEU1QTA0NSAvKiBNZWRpYUNvbnN0cmFpbnRzTW9jay5oICovOyB9
OwogCQkwNzM3OTRFNTE5RUUyRkYyMDBFNUEwNDUgLyogSlNSVENDb25maWd1cmF0aW9uLmNwcCBp
biBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDA3Mzc5NEUzMTlF
RTJGRjIwMEU1QTA0NSAvKiBKU1JUQ0NvbmZpZ3VyYXRpb24uY3BwICovOyB9OwogCQkwNzM3OTRF
NjE5RUUyRkYyMDBFNUEwNDUgLyogSlNSVENDb25maWd1cmF0aW9uLmggaW4gSGVhZGVycyAqLyA9
IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAwNzM3OTRFNDE5RUUyRkYyMDBFNUEwNDUg
LyogSlNSVENDb25maWd1cmF0aW9uLmggKi87IH07Ci0JCTA3Mzc5NEU4MTlFRTMzNUMwMEU1QTA0
NSAvKiBKU05hdmlnYXRvckN1c3RvbS5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWls
ZEZpbGU7IGZpbGVSZWYgPSAwNzM3OTRFNzE5RUUzMzVDMDBFNUEwNDUgLyogSlNOYXZpZ2F0b3JD
dXN0b20uY3BwICovOyB9OwogCQkwNzM3OTRFQjE5RUUzNDFFMDBFNUEwNDUgLyogSlNSVENJY2VT
ZXJ2ZXIuY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0g
MDczNzk0RTkxOUVFMzQxRTAwRTVBMDQ1IC8qIEpTUlRDSWNlU2VydmVyLmNwcCAqLzsgfTsKIAkJ
MDczNzk0RUMxOUVFMzQxRTAwRTVBMDQ1IC8qIEpTUlRDSWNlU2VydmVyLmggaW4gSGVhZGVycyAq
LyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAwNzM3OTRFQTE5RUUzNDFFMDBFNUEw
NDUgLyogSlNSVENJY2VTZXJ2ZXIuaCAqLzsgfTsKIAkJMDczNzk0RjExOUVFMzdCQjAwRTVBMDQ1
IC8qIFJUQ1BlZXJDb25uZWN0aW9uSGFuZGxlck1vY2suY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNh
ID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMDczNzk0RUYxOUVFMzdCQjAwRTVBMDQ1IC8qIFJU
Q1BlZXJDb25uZWN0aW9uSGFuZGxlck1vY2suY3BwICovOyB9OwpAQCAtMTczLDEwICsxNzIsNiBA
QAogCQkwNzNCRTM0MTE3RDE3RTAxMDAyQkQ0MzEgLyogSlNOYXZpZ2F0b3JVc2VyTWVkaWEuaCBp
biBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDA3M0JFMzNGMTdE
MTdFMDEwMDJCRDQzMSAvKiBKU05hdmlnYXRvclVzZXJNZWRpYS5oICovOyBzZXR0aW5ncyA9IHtB
VFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CiAJCTA3M0JFMzQ4MTdEMTdFN0EwMDJCRDQz
MSAvKiBKU05hdmlnYXRvclVzZXJNZWRpYUVycm9yLmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9
IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDA3M0JFMzQyMTdEMTdFN0EwMDJCRDQzMSAvKiBKU05h
dmlnYXRvclVzZXJNZWRpYUVycm9yLmNwcCAqLzsgfTsKIAkJMDczQkUzNDkxN0QxN0U3QTAwMkJE
NDMxIC8qIEpTTmF2aWdhdG9yVXNlck1lZGlhRXJyb3IuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9
IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDA3M0JFMzQzMTdEMTdFN0EwMDJCRDQzMSAvKiBKU05h
dmlnYXRvclVzZXJNZWRpYUVycm9yLmggKi87IH07Ci0JCTA3M0JFMzRBMTdEMTdFN0EwMDJCRDQz
MSAvKiBKU05hdmlnYXRvclVzZXJNZWRpYUVycm9yQ2FsbGJhY2suY3BwIGluIFNvdXJjZXMgKi8g
PSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMDczQkUzNDQxN0QxN0U3QTAwMkJENDMx
IC8qIEpTTmF2aWdhdG9yVXNlck1lZGlhRXJyb3JDYWxsYmFjay5jcHAgKi87IH07Ci0JCTA3M0JF
MzRCMTdEMTdFN0EwMDJCRDQzMSAvKiBKU05hdmlnYXRvclVzZXJNZWRpYUVycm9yQ2FsbGJhY2su
aCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDA3M0JFMzQ1
MTdEMTdFN0EwMDJCRDQzMSAvKiBKU05hdmlnYXRvclVzZXJNZWRpYUVycm9yQ2FsbGJhY2suaCAq
LzsgfTsKLQkJMDczQkUzNEMxN0QxN0U3QTAwMkJENDMxIC8qIEpTTmF2aWdhdG9yVXNlck1lZGlh
U3VjY2Vzc0NhbGxiYWNrLmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsg
ZmlsZVJlZiA9IDA3M0JFMzQ2MTdEMTdFN0EwMDJCRDQzMSAvKiBKU05hdmlnYXRvclVzZXJNZWRp
YVN1Y2Nlc3NDYWxsYmFjay5jcHAgKi87IH07Ci0JCTA3M0JFMzREMTdEMTdFN0EwMDJCRDQzMSAv
KiBKU05hdmlnYXRvclVzZXJNZWRpYVN1Y2Nlc3NDYWxsYmFjay5oIGluIEhlYWRlcnMgKi8gPSB7
aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMDczQkUzNDcxN0QxN0U3QTAwMkJENDMxIC8q
IEpTTmF2aWdhdG9yVXNlck1lZGlhU3VjY2Vzc0NhbGxiYWNrLmggKi87IH07CiAJCTA3M0JFMzRF
MTdEMTgwQjIwMDJCRDQzMSAvKiBSVENTZXNzaW9uRGVzY3JpcHRpb25EZXNjcmlwdG9yLmNwcCBp
biBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDA3MjIxQkFCMTdD
RjBBRDQwMDg0OEU1MSAvKiBSVENTZXNzaW9uRGVzY3JpcHRpb25EZXNjcmlwdG9yLmNwcCAqLzsg
fTsKIAkJMDczQkUzNEYxN0QxODE4MzAwMkJENDMxIC8qIFJUQ0ljZUNhbmRpZGF0ZURlc2NyaXB0
b3IuY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMDcy
MjFCQTYxN0NGMEFENDAwODQ4RTUxIC8qIFJUQ0ljZUNhbmRpZGF0ZURlc2NyaXB0b3IuY3BwICov
OyB9OwogCQkwNzNCRTM1MDE3RDE4MUE2MDAyQkQ0MzEgLyogUlRDUGVlckNvbm5lY3Rpb25IYW5k
bGVyLmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDA3
MjIxQkE4MTdDRjBBRDQwMDg0OEU1MSAvKiBSVENQZWVyQ29ubmVjdGlvbkhhbmRsZXIuY3BwICov
OyB9OwpAQCAtMjQwLDggKzIzNSw2IEBACiAJCTA3OEUwOTE4MTdEMTREMUMwMDQyMEFBMSAvKiBN
ZWRpYVN0cmVhbVRyYWNrLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZp
bGVSZWYgPSAwNzIyMUI1NTE3Q0VDMzI3MDA4NDhFNTEgLyogTWVkaWFTdHJlYW1UcmFjay5oICov
OyB9OwogCQkwNzhFMDkxOTE3RDE0RDFDMDA0MjBBQTEgLyogTWVkaWFTdHJlYW1UcmFja0V2ZW50
LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAwNzIyMUI1
ODE3Q0VDMzI3MDA4NDhFNTEgLyogTWVkaWFTdHJlYW1UcmFja0V2ZW50LmggKi87IHNldHRpbmdz
ID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKIAkJMDc4RTA5MUIxN0QxNEQxQzAw
NDIwQUExIC8qIE5hdmlnYXRvclVzZXJNZWRpYUVycm9yLmggaW4gSGVhZGVycyAqLyA9IHtpc2Eg
PSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAwNzIyMUI1RDE3Q0VDMzI3MDA4NDhFNTEgLyogTmF2
aWdhdG9yVXNlck1lZGlhRXJyb3IuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2
YXRlLCApOyB9OyB9OwotCQkwNzhFMDkxQzE3RDE0RDFDMDA0MjBBQTEgLyogTmF2aWdhdG9yVXNl
ck1lZGlhRXJyb3JDYWxsYmFjay5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxl
OyBmaWxlUmVmID0gMDcyMjFCNUYxN0NFQzMyNzAwODQ4RTUxIC8qIE5hdmlnYXRvclVzZXJNZWRp
YUVycm9yQ2FsbGJhY2suaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCAp
OyB9OyB9OwotCQkwNzhFMDkxRDE3RDE0RDFDMDA0MjBBQTEgLyogTmF2aWdhdG9yVXNlck1lZGlh
U3VjY2Vzc0NhbGxiYWNrLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZp
bGVSZWYgPSAwNzIyMUI2MTE3Q0VDMzI3MDA4NDhFNTEgLyogTmF2aWdhdG9yVXNlck1lZGlhU3Vj
Y2Vzc0NhbGxiYWNrLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsg
fTsgfTsKIAkJMDc4RTA5MUUxN0QxNEQxQzAwNDIwQUExIC8qIFJUQ0RhdGFDaGFubmVsLmggaW4g
SGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAwNzIyMUI2NDE3Q0VD
MzI3MDA4NDhFNTEgLyogUlRDRGF0YUNoYW5uZWwuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRF
UyA9IChQcml2YXRlLCApOyB9OyB9OwogCQkwNzhFMDkxRjE3RDE0RDFDMDA0MjBBQTEgLyogUlRD
RGF0YUNoYW5uZWxFdmVudC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBm
aWxlUmVmID0gMDcyMjFCNjcxN0NFQzMyNzAwODQ4RTUxIC8qIFJUQ0RhdGFDaGFubmVsRXZlbnQu
aCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OwogCQkwNzhF
MDkyMDE3RDE0RDFDMDA0MjBBQTEgLyogUlRDRFRNRlNlbmRlci5oIGluIEhlYWRlcnMgKi8gPSB7
aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMDcyMjFCNkExN0NFQzMyNzAwODQ4RTUxIC8q
IFJUQ0RUTUZTZW5kZXIuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCAp
OyB9OyB9OwpAQCAtNzM1OCwxMCArNzM1MSw2IEBACiAJCTA3MjIxQjVDMTdDRUMzMjcwMDg0OEU1
MSAvKiBOYXZpZ2F0b3JVc2VyTWVkaWEuaWRsICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7
IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gdGV4dDsgcGF0aCA9IE5hdmln
YXRvclVzZXJNZWRpYS5pZGw7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTA3MjIxQjVE
MTdDRUMzMjcwMDg0OEU1MSAvKiBOYXZpZ2F0b3JVc2VyTWVkaWFFcnJvci5oICovID0ge2lzYSA9
IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0g
c291cmNlY29kZS5jLmg7IHBhdGggPSBOYXZpZ2F0b3JVc2VyTWVkaWFFcnJvci5oOyBzb3VyY2VU
cmVlID0gIjxncm91cD4iOyB9OwogCQkwNzIyMUI1RTE3Q0VDMzI3MDA4NDhFNTEgLyogTmF2aWdh
dG9yVXNlck1lZGlhRXJyb3IuaWRsICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVF
bmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gdGV4dDsgcGF0aCA9IE5hdmlnYXRvclVz
ZXJNZWRpYUVycm9yLmlkbDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKLQkJMDcyMjFCNUYx
N0NFQzMyNzAwODQ4RTUxIC8qIE5hdmlnYXRvclVzZXJNZWRpYUVycm9yQ2FsbGJhY2suaCAqLyA9
IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxl
VHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gTmF2aWdhdG9yVXNlck1lZGlhRXJyb3JDYWxs
YmFjay5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwotCQkwNzIyMUI2MDE3Q0VDMzI3MDA4
NDhFNTEgLyogTmF2aWdhdG9yVXNlck1lZGlhRXJyb3JDYWxsYmFjay5pZGwgKi8gPSB7aXNhID0g
UEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSB0
ZXh0OyBwYXRoID0gTmF2aWdhdG9yVXNlck1lZGlhRXJyb3JDYWxsYmFjay5pZGw7IHNvdXJjZVRy
ZWUgPSAiPGdyb3VwPiI7IH07Ci0JCTA3MjIxQjYxMTdDRUMzMjcwMDg0OEU1MSAvKiBOYXZpZ2F0
b3JVc2VyTWVkaWFTdWNjZXNzQ2FsbGJhY2suaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNl
OyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBw
YXRoID0gTmF2aWdhdG9yVXNlck1lZGlhU3VjY2Vzc0NhbGxiYWNrLmg7IHNvdXJjZVRyZWUgPSAi
PGdyb3VwPiI7IH07Ci0JCTA3MjIxQjYyMTdDRUMzMjcwMDg0OEU1MSAvKiBOYXZpZ2F0b3JVc2Vy
TWVkaWFTdWNjZXNzQ2FsbGJhY2suaWRsICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZp
bGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gdGV4dDsgcGF0aCA9IE5hdmlnYXRv
clVzZXJNZWRpYVN1Y2Nlc3NDYWxsYmFjay5pZGw7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07
CiAJCTA3MjIxQjYzMTdDRUMzMjcwMDg0OEU1MSAvKiBSVENEYXRhQ2hhbm5lbC5jcHAgKi8gPSB7
aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5
cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBSVENEYXRhQ2hhbm5lbC5jcHA7IHNvdXJj
ZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTA3MjIxQjY0MTdDRUMzMjcwMDg0OEU1MSAvKiBSVENE
YXRhQ2hhbm5lbC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9
IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBSVENEYXRhQ2hh
bm5lbC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQkwNzIyMUI2NTE3Q0VDMzI3MDA4
NDhFNTEgLyogUlRDRGF0YUNoYW5uZWwuaWRsICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7
IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gdGV4dDsgcGF0aCA9IFJUQ0Rh
dGFDaGFubmVsLmlkbDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKQEAgLTc0NTEsNyArNzQ0
MCw2IEBACiAJCTA3Mzc5NEUwMTlFRTJEMUIwMEU1QTA0NSAvKiBNZWRpYUNvbnN0cmFpbnRzTW9j
ay5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RL
bm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBNZWRpYUNvbnN0cmFpbnRzTW9j
ay5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQkwNzM3OTRFMzE5RUUyRkYyMDBFNUEw
NDUgLyogSlNSVENDb25maWd1cmF0aW9uLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNl
OyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNw
cDsgcGF0aCA9IEpTUlRDQ29uZmlndXJhdGlvbi5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7
IH07CiAJCTA3Mzc5NEU0MTlFRTJGRjIwMEU1QTA0NSAvKiBKU1JUQ0NvbmZpZ3VyYXRpb24uaCAq
LyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25G
aWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gSlNSVENDb25maWd1cmF0aW9uLmg7IHNv
dXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07Ci0JCTA3Mzc5NEU3MTlFRTMzNUMwMEU1QTA0NSAvKiBK
U05hdmlnYXRvckN1c3RvbS5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVu
Y29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGgg
PSBKU05hdmlnYXRvckN1c3RvbS5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTA3
Mzc5NEU5MTlFRTM0MUUwMEU1QTA0NSAvKiBKU1JUQ0ljZVNlcnZlci5jcHAgKi8gPSB7aXNhID0g
UEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBz
b3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBKU1JUQ0ljZVNlcnZlci5jcHA7IHNvdXJjZVRyZWUg
PSAiPGdyb3VwPiI7IH07CiAJCTA3Mzc5NEVBMTlFRTM0MUUwMEU1QTA0NSAvKiBKU1JUQ0ljZVNl
cnZlci5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxh
c3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBKU1JUQ0ljZVNlcnZlci5o
OyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQkwNzM3OTRFRDE5RUUzNjQyMDBFNUEwNDUg
LyogRE9NVVJMTWVkaWFTdHJlYW0uY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZp
bGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBw
YXRoID0gRE9NVVJMTWVkaWFTdHJlYW0uY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwpA
QCAtNzQ3MywxMCArNzQ2MSw2IEBACiAJCTA3M0JFMzNGMTdEMTdFMDEwMDJCRDQzMSAvKiBKU05h
dmlnYXRvclVzZXJNZWRpYS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNv
ZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBKU05h
dmlnYXRvclVzZXJNZWRpYS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQkwNzNCRTM0
MjE3RDE3RTdBMDAyQkQ0MzEgLyogSlNOYXZpZ2F0b3JVc2VyTWVkaWFFcnJvci5jcHAgKi8gPSB7
aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5
cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBKU05hdmlnYXRvclVzZXJNZWRpYUVycm9y
LmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJMDczQkUzNDMxN0QxN0U3QTAwMkJE
NDMxIC8qIEpTTmF2aWdhdG9yVXNlck1lZGlhRXJyb3IuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVm
ZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUu
Yy5oOyBwYXRoID0gSlNOYXZpZ2F0b3JVc2VyTWVkaWFFcnJvci5oOyBzb3VyY2VUcmVlID0gIjxn
cm91cD4iOyB9OwotCQkwNzNCRTM0NDE3RDE3RTdBMDAyQkQ0MzEgLyogSlNOYXZpZ2F0b3JVc2Vy
TWVkaWFFcnJvckNhbGxiYWNrLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxl
RW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0
aCA9IEpTTmF2aWdhdG9yVXNlck1lZGlhRXJyb3JDYWxsYmFjay5jcHA7IHNvdXJjZVRyZWUgPSAi
PGdyb3VwPiI7IH07Ci0JCTA3M0JFMzQ1MTdEMTdFN0EwMDJCRDQzMSAvKiBKU05hdmlnYXRvclVz
ZXJNZWRpYUVycm9yQ2FsbGJhY2suaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxl
RW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0g
SlNOYXZpZ2F0b3JVc2VyTWVkaWFFcnJvckNhbGxiYWNrLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3Vw
PiI7IH07Ci0JCTA3M0JFMzQ2MTdEMTdFN0EwMDJCRDQzMSAvKiBKU05hdmlnYXRvclVzZXJNZWRp
YVN1Y2Nlc3NDYWxsYmFjay5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVu
Y29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGgg
PSBKU05hdmlnYXRvclVzZXJNZWRpYVN1Y2Nlc3NDYWxsYmFjay5jcHA7IHNvdXJjZVRyZWUgPSAi
PGdyb3VwPiI7IH07Ci0JCTA3M0JFMzQ3MTdEMTdFN0EwMDJCRDQzMSAvKiBKU05hdmlnYXRvclVz
ZXJNZWRpYVN1Y2Nlc3NDYWxsYmFjay5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZp
bGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGgg
PSBKU05hdmlnYXRvclVzZXJNZWRpYVN1Y2Nlc3NDYWxsYmFjay5oOyBzb3VyY2VUcmVlID0gIjxn
cm91cD4iOyB9OwogCQkwNzRFODJCODE4QTY5RjBFMDA3RUY1NEMgLyogUGxhdGZvcm1UaW1lUmFu
Z2VzLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBs
YXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IFBsYXRmb3JtVGlt
ZVJhbmdlcy5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTA3NEU4MkI5MThBNjlG
MEUwMDdFRjU0QyAvKiBQbGF0Zm9ybVRpbWVSYW5nZXMuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVm
ZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUu
Yy5oOyBwYXRoID0gUGxhdGZvcm1UaW1lUmFuZ2VzLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7
IH07CiAJCTA3NTM4NjAwMTQ0ODlFOTgwMEI3ODQ1MiAvKiBDYWNoZWRUZXh0VHJhY2suY3BwICov
ID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZp
bGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gQ2FjaGVkVGV4dFRyYWNrLmNwcDsg
c291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKQEAgLTg4NjUsNiArODg0OSw3IEBACiAJCTQxOUJF
NzUzMUJDN0YzREIwMEUxQzg1QiAvKiBXZWJDb3JlSlNCdWlsdGluSW50ZXJuYWxzLmggKi8gPSB7
aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5
cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFdlYkNvcmVKU0J1aWx0aW5JbnRlcm5hbHMuaDsg
c291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJNDE5QkU3NTQxQkM3RjNEQjAwRTFDODVCIC8q
IFdlYkNvcmVKU0J1aWx0aW5zLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxl
RW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0
aCA9IFdlYkNvcmVKU0J1aWx0aW5zLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJ
NDE5QkU3NTUxQkM3RjNEQjAwRTFDODVCIC8qIFdlYkNvcmVKU0J1aWx0aW5zLmggKi8gPSB7aXNh
ID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUg
PSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFdlYkNvcmVKU0J1aWx0aW5zLmg7IHNvdXJjZVRyZWUg
PSAiPGdyb3VwPiI7IH07CisJCTQxOUJFNzVBMUJDQkQzRUQwMEUxQzg1QiAvKiBOYXZpZ2F0b3JV
c2VyTWVkaWEuanMgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0g
NDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmphdmFzY3JpcHQ7IHBhdGggPSBOYXZp
Z2F0b3JVc2VyTWVkaWEuanM7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTQxOUZBRkFE
MUFCQUJDRDUwMDVCODI4QiAvKiBSZWFkYWJsZVN0cmVhbVJlYWRlci5pZGwgKi8gPSB7aXNhID0g
UEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSB0
ZXh0OyBwYXRoID0gUmVhZGFibGVTdHJlYW1SZWFkZXIuaWRsOyBzb3VyY2VUcmVlID0gIjxncm91
cD4iOyB9OwogCQk0MUEwMjNFRDFBMzlEQjc5MDBGNzIyQ0YgLyogUmVhZGFibGVTdHJlYW0uaWRs
ICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93
bkZpbGVUeXBlID0gdGV4dDsgcGF0aCA9IFJlYWRhYmxlU3RyZWFtLmlkbDsgc291cmNlVHJlZSA9
ICI8Z3JvdXA+IjsgfTsKIAkJNDFBMDIzRUQxQTM5REI3OTAwRjcyMkRGIC8qIFdyaXRhYmxlU3Ry
ZWFtLmlkbCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBs
YXN0S25vd25GaWxlVHlwZSA9IHRleHQ7IHBhdGggPSBXcml0YWJsZVN0cmVhbS5pZGw7IHNvdXJj
ZVRyZWUgPSAiPGdyb3VwPiI7IH07CkBAIC0xNTA4OCwxMyArMTUwNzMsMTAgQEAKIAkJCQk1RUE3
MjVDQjFBQ0FCQ0I1MDBFQUQxN0IgLyogTmF2aWdhdG9yTWVkaWFEZXZpY2VzLmggKi8sCiAJCQkJ
NUVBNzI1Q0MxQUNBQkNCNTAwRUFEMTdCIC8qIE5hdmlnYXRvck1lZGlhRGV2aWNlcy5pZGwgKi8s
CiAJCQkJMDcyMjFCNUMxN0NFQzMyNzAwODQ4RTUxIC8qIE5hdmlnYXRvclVzZXJNZWRpYS5pZGwg
Ki8sCisJCQkJNDE5QkU3NUExQkNCRDNFRDAwRTFDODVCIC8qIE5hdmlnYXRvclVzZXJNZWRpYS5q
cyAqLywKIAkJCQkwNzAzMjdGNzE3RUE0QUFGMDBDRTEzMTggLyogTmF2aWdhdG9yVXNlck1lZGlh
RXJyb3IuY3BwICovLAogCQkJCTA3MjIxQjVEMTdDRUMzMjcwMDg0OEU1MSAvKiBOYXZpZ2F0b3JV
c2VyTWVkaWFFcnJvci5oICovLAogCQkJCTA3MjIxQjVFMTdDRUMzMjcwMDg0OEU1MSAvKiBOYXZp
Z2F0b3JVc2VyTWVkaWFFcnJvci5pZGwgKi8sCi0JCQkJMDcyMjFCNUYxN0NFQzMyNzAwODQ4RTUx
IC8qIE5hdmlnYXRvclVzZXJNZWRpYUVycm9yQ2FsbGJhY2suaCAqLywKLQkJCQkwNzIyMUI2MDE3
Q0VDMzI3MDA4NDhFNTEgLyogTmF2aWdhdG9yVXNlck1lZGlhRXJyb3JDYWxsYmFjay5pZGwgKi8s
Ci0JCQkJMDcyMjFCNjExN0NFQzMyNzAwODQ4RTUxIC8qIE5hdmlnYXRvclVzZXJNZWRpYVN1Y2Nl
c3NDYWxsYmFjay5oICovLAotCQkJCTA3MjIxQjYyMTdDRUMzMjcwMDg0OEU1MSAvKiBOYXZpZ2F0
b3JVc2VyTWVkaWFTdWNjZXNzQ2FsbGJhY2suaWRsICovLAogCQkJCTA3QUI5OTY1MThEQTNDMDEw
MDE4NzcxRSAvKiBSVENDb25maWd1cmF0aW9uLmggKi8sCiAJCQkJMDdBQjk5NjYxOERBM0MwMTAw
MTg3NzFFIC8qIFJUQ0NvbmZpZ3VyYXRpb24uaWRsICovLAogCQkJCTA3MjIxQjYzMTdDRUMzMjcw
MDg0OEU1MSAvKiBSVENEYXRhQ2hhbm5lbC5jcHAgKi8sCkBAIC0xNTI5MiwxMCArMTUyNzQsNiBA
QAogCQkJCTA3M0JFMzNGMTdEMTdFMDEwMDJCRDQzMSAvKiBKU05hdmlnYXRvclVzZXJNZWRpYS5o
ICovLAogCQkJCTA3M0JFMzQyMTdEMTdFN0EwMDJCRDQzMSAvKiBKU05hdmlnYXRvclVzZXJNZWRp
YUVycm9yLmNwcCAqLywKIAkJCQkwNzNCRTM0MzE3RDE3RTdBMDAyQkQ0MzEgLyogSlNOYXZpZ2F0
b3JVc2VyTWVkaWFFcnJvci5oICovLAotCQkJCTA3M0JFMzQ0MTdEMTdFN0EwMDJCRDQzMSAvKiBK
U05hdmlnYXRvclVzZXJNZWRpYUVycm9yQ2FsbGJhY2suY3BwICovLAotCQkJCTA3M0JFMzQ1MTdE
MTdFN0EwMDJCRDQzMSAvKiBKU05hdmlnYXRvclVzZXJNZWRpYUVycm9yQ2FsbGJhY2suaCAqLywK
LQkJCQkwNzNCRTM0NjE3RDE3RTdBMDAyQkQ0MzEgLyogSlNOYXZpZ2F0b3JVc2VyTWVkaWFTdWNj
ZXNzQ2FsbGJhY2suY3BwICovLAotCQkJCTA3M0JFMzQ3MTdEMTdFN0EwMDJCRDQzMSAvKiBKU05h
dmlnYXRvclVzZXJNZWRpYVN1Y2Nlc3NDYWxsYmFjay5oICovLAogCQkJCTA3Mzc5NEUzMTlFRTJG
RjIwMEU1QTA0NSAvKiBKU1JUQ0NvbmZpZ3VyYXRpb24uY3BwICovLAogCQkJCTA3Mzc5NEU0MTlF
RTJGRjIwMEU1QTA0NSAvKiBKU1JUQ0NvbmZpZ3VyYXRpb24uaCAqLywKIAkJCQkwNzk2OUQ5MTE3
RDE0MTUxMDA3RkY4NDIgLyogSlNSVENEYXRhQ2hhbm5lbC5jcHAgKi8sCkBAIC0yMjAxMCw3ICsy
MTk4OCw2IEBACiAJCQkJQTFFNUIzMUQxQUFEMURBNDAwNkVCRUZCIC8qIEpTTW9ja0NvbnRlbnRG
aWx0ZXJTZXR0aW5nc0N1c3RvbS5jcHAgKi8sCiAJCQkJQzZGMDkxN0UxNDNBMkJCOTAwNjg1ODQ5
IC8qIEpTTXV0YXRpb25PYnNlcnZlckN1c3RvbS5jcHAgKi8sCiAJCQkJQkNEOUMyNUYwQzE3QUE2
NzAwNUM5MEEyIC8qIEpTTmFtZWROb2RlTWFwQ3VzdG9tLmNwcCAqLywKLQkJCQkwNzM3OTRFNzE5
RUUzMzVDMDBFNUEwNDUgLyogSlNOYXZpZ2F0b3JDdXN0b20uY3BwICovLAogCQkJCUJDRDlDMjYw
MEMxN0FBNjcwMDVDOTBBMiAvKiBKU05vZGVDdXN0b20uY3BwICovLAogCQkJCUJDOTQzOUMyMTE2
Q0Y0OTQwMDQ4Qzc1MCAvKiBKU05vZGVDdXN0b20uaCAqLywKIAkJCQkxQTc1MEREMzBBOTBFNzI5
MDAwRkYyMTUgLyogSlNOb2RlSXRlcmF0b3JDdXN0b20uY3BwICovLApAQCAtMjYxMzEsOCArMjYx
MDgsNiBAQAogCQkJCUE5RDI0N0Y4MEQ3NTdFMzQwMEZERjk1OSAvKiBKU05hdmlnYXRvci5oIGlu
IEhlYWRlcnMgKi8sCiAJCQkJMDczQkUzNDExN0QxN0UwMTAwMkJENDMxIC8qIEpTTmF2aWdhdG9y
VXNlck1lZGlhLmggaW4gSGVhZGVycyAqLywKIAkJCQkwNzNCRTM0OTE3RDE3RTdBMDAyQkQ0MzEg
LyogSlNOYXZpZ2F0b3JVc2VyTWVkaWFFcnJvci5oIGluIEhlYWRlcnMgKi8sCi0JCQkJMDczQkUz
NEIxN0QxN0U3QTAwMkJENDMxIC8qIEpTTmF2aWdhdG9yVXNlck1lZGlhRXJyb3JDYWxsYmFjay5o
IGluIEhlYWRlcnMgKi8sCi0JCQkJMDczQkUzNEQxN0QxN0U3QTAwMkJENDMxIC8qIEpTTmF2aWdh
dG9yVXNlck1lZGlhU3VjY2Vzc0NhbGxiYWNrLmggaW4gSGVhZGVycyAqLywKIAkJCQlCQzk0MzlD
MzExNkNGNDk0MDA0OEM3NTAgLyogSlNOb2RlQ3VzdG9tLmggaW4gSGVhZGVycyAqLywKIAkJCQkx
NDExNUI3MzA5Rjg0Q0Q2MDBDQTRGQzEgLyogSlNOb2RlRmlsdGVyLmggaW4gSGVhZGVycyAqLywK
IAkJCQkxQTc1MEQ4RTBBOTBFNTIxMDAwRkYyMTUgLyogSlNOb2RlSXRlcmF0b3IuaCBpbiBIZWFk
ZXJzICovLApAQCAtMjY2NjgsOCArMjY2NDMsNiBAQAogCQkJCTk3MTE0NjA0MTRFRjAwOUEwMDY3
NEZEOSAvKiBOYXZpZ2F0b3JHZW9sb2NhdGlvbi5oIGluIEhlYWRlcnMgKi8sCiAJCQkJNUVBNzI1
RDYxQUNBQkQ1NzAwRUFEMTdCIC8qIE5hdmlnYXRvck1lZGlhRGV2aWNlcy5oIGluIEhlYWRlcnMg
Ki8sCiAJCQkJMDc4RTA5MUIxN0QxNEQxQzAwNDIwQUExIC8qIE5hdmlnYXRvclVzZXJNZWRpYUVy
cm9yLmggaW4gSGVhZGVycyAqLywKLQkJCQkwNzhFMDkxQzE3RDE0RDFDMDA0MjBBQTEgLyogTmF2
aWdhdG9yVXNlck1lZGlhRXJyb3JDYWxsYmFjay5oIGluIEhlYWRlcnMgKi8sCi0JCQkJMDc4RTA5
MUQxN0QxNEQxQzAwNDIwQUExIC8qIE5hdmlnYXRvclVzZXJNZWRpYVN1Y2Nlc3NDYWxsYmFjay5o
IGluIEhlYWRlcnMgKi8sCiAJCQkJQTE5RDkzNDYxQTlGRUM3MjAwQjQ2QzI0IC8qIE5FRmlsdGVy
U291cmNlU1BJLmggaW4gSGVhZGVycyAqLywKIAkJCQk4QTMwOUM5RjEyMzk1MEJFMDBDQjkyMDQg
LyogTmVzdGluZ0xldmVsSW5jcmVtZW50ZXIuaCBpbiBIZWFkZXJzICovLAogCQkJCTY1NkQzNzQz
MEFEQkE1REUwMEE0NTU0RCAvKiBOZXRzY2FwZVBsdWdJblN0cmVhbUxvYWRlci5oIGluIEhlYWRl
cnMgKi8sCkBAIC0yOTc5NCwxMSArMjk3NjcsOCBAQAogCQkJCUJDRDlDMkMwMEMxN0I2OUUwMDVD
OTBBMiAvKiBKU05hbWVkTm9kZU1hcC5jcHAgaW4gU291cmNlcyAqLywKIAkJCQlCQ0Q5QzI2MzBD
MTdBQTY3MDA1QzkwQTIgLyogSlNOYW1lZE5vZGVNYXBDdXN0b20uY3BwIGluIFNvdXJjZXMgKi8s
CiAJCQkJQTlEMjQ3RjcwRDc1N0UzNDAwRkRGOTU5IC8qIEpTTmF2aWdhdG9yLmNwcCBpbiBTb3Vy
Y2VzICovLAotCQkJCTA3Mzc5NEU4MTlFRTMzNUMwMEU1QTA0NSAvKiBKU05hdmlnYXRvckN1c3Rv
bS5jcHAgaW4gU291cmNlcyAqLywKIAkJCQkwNzNCRTM0MDE3RDE3RTAxMDAyQkQ0MzEgLyogSlNO
YXZpZ2F0b3JVc2VyTWVkaWEuY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJMDczQkUzNDgxN0QxN0U3
QTAwMkJENDMxIC8qIEpTTmF2aWdhdG9yVXNlck1lZGlhRXJyb3IuY3BwIGluIFNvdXJjZXMgKi8s
Ci0JCQkJMDczQkUzNEExN0QxN0U3QTAwMkJENDMxIC8qIEpTTmF2aWdhdG9yVXNlck1lZGlhRXJy
b3JDYWxsYmFjay5jcHAgaW4gU291cmNlcyAqLywKLQkJCQkwNzNCRTM0QzE3RDE3RTdBMDAyQkQ0
MzEgLyogSlNOYXZpZ2F0b3JVc2VyTWVkaWFTdWNjZXNzQ2FsbGJhY2suY3BwIGluIFNvdXJjZXMg
Ki8sCiAJCQkJMTREQzBEMzcwOUZFRDA3MzAwN0IwMjM1IC8qIEpTTm9kZS5jcHAgaW4gU291cmNl
cyAqLywKIAkJCQlCQ0Q5QzI2NDBDMTdBQTY3MDA1QzkwQTIgLyogSlNOb2RlQ3VzdG9tLmNwcCBp
biBTb3VyY2VzICovLAogCQkJCTE0MTE1QjcyMDlGODRDRDYwMENBNEZDMSAvKiBKU05vZGVGaWx0
ZXIuY3BwIGluIFNvdXJjZXMgKi8sCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5n
cy9qcy9KU0RPTVdpbmRvd0Jhc2UuY3BwIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvSlNE
T01XaW5kb3dCYXNlLmNwcAppbmRleCA2NGFhYjZlMGQzM2E5MDZkM2MwMjE2YjFjN2VjZThmOGU4
OGI5NzEwLi5iMjEyMDQ3ZmMwOWNkNDc4NGM1NDEzYzQ3NTlkMjEzMzI5MjRlMjZlIDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9KU0RPTVdpbmRvd0Jhc2UuY3BwCisrKyBi
L1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0pTRE9NV2luZG93QmFzZS5jcHAKQEAgLTMsNiAr
Myw3IEBACiAgKiAgQ29weXJpZ2h0IChDKSAyMDA2IEpvbiBTaGllciAoanNoaWVyQGlhc3RhdGUu
ZWR1KQogICogIENvcHlyaWdodCAoQykgMjAwMy0yMDA5LCAyMDE0IEFwcGxlIEluYy4gQWxsIHJp
Z2h0cyByZXNldmVkLgogICogIENvcHlyaWdodCAoQykgMjAwNiBBbGV4ZXkgUHJvc2t1cnlha292
IChhcEB3ZWJraXQub3JnKQorICogIENvcHlyaWdodCAoYykgMjAxNSBDYW5vbiBJbmMuIEFsbCBy
aWdodHMgcmVzZXJ2ZWQuCiAgKgogICogIFRoaXMgbGlicmFyeSBpcyBmcmVlIHNvZnR3YXJlOyB5
b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IKICAqICBtb2RpZnkgaXQgdW5kZXIgdGhlIHRl
cm1zIG9mIHRoZSBHTlUgTGVzc2VyIEdlbmVyYWwgUHVibGljCkBAIC04MywzNCArODQsMzUgQEAg
dm9pZCBKU0RPTVdpbmRvd0Jhc2U6OmZpbmlzaENyZWF0aW9uKFZNJiB2bSwgSlNET01XaW5kb3dT
aGVsbCogc2hlbGwpCiAKICAgICBtX3ByaXZhdGVGdW5jdGlvbnMuaW5pdCgqdGhpcyk7CiAKKyNp
ZiBFTkFCTEUoU1RSRUFNU19BUEkpCisgICAgSlNWTUNsaWVudERhdGEmIGNsaWVudERhdGEgPSAq
c3RhdGljX2Nhc3Q8SlNWTUNsaWVudERhdGEqPih2bS5jbGllbnREYXRhKTsKKyNlbmRpZgorCiAg
ICAgR2xvYmFsUHJvcGVydHlJbmZvIHN0YXRpY0dsb2JhbHNbXSA9IHsKICAgICAgICAgR2xvYmFs
UHJvcGVydHlJbmZvKHZtLnByb3BlcnR5TmFtZXMtPmRvY3VtZW50LCBqc051bGwoKSwgRG9udERl
bGV0ZSB8IFJlYWRPbmx5KSwKICAgICAgICAgR2xvYmFsUHJvcGVydHlJbmZvKHZtLnByb3BlcnR5
TmFtZXMtPndpbmRvdywgbV9zaGVsbCwgRG9udERlbGV0ZSB8IFJlYWRPbmx5KSwKICNpZiBFTkFC
TEUoU1RSRUFNU19BUEkpCi0gICAgICAgIEdsb2JhbFByb3BlcnR5SW5mbyhzdGF0aWNfY2FzdDxK
U1ZNQ2xpZW50RGF0YSo+KHZtLmNsaWVudERhdGEpLT5idWlsdGluTmFtZXMoKS5zdHJlYW1DbG9z
ZWRQcml2YXRlTmFtZSgpLCBqc051bWJlcigxKSwgRG9udERlbGV0ZSB8IFJlYWRPbmx5KSwKLSAg
ICAgICAgR2xvYmFsUHJvcGVydHlJbmZvKHN0YXRpY19jYXN0PEpTVk1DbGllbnREYXRhKj4odm0u
Y2xpZW50RGF0YSktPmJ1aWx0aW5OYW1lcygpLnN0cmVhbUNsb3NpbmdQcml2YXRlTmFtZSgpLCBq
c051bWJlcigyKSwgRG9udERlbGV0ZSB8IFJlYWRPbmx5KSwKLSAgICAgICAgR2xvYmFsUHJvcGVy
dHlJbmZvKHN0YXRpY19jYXN0PEpTVk1DbGllbnREYXRhKj4odm0uY2xpZW50RGF0YSktPmJ1aWx0
aW5OYW1lcygpLnN0cmVhbUVycm9yZWRQcml2YXRlTmFtZSgpLCBqc051bWJlcigzKSwgRG9udERl
bGV0ZSB8IFJlYWRPbmx5KSwKLSAgICAgICAgR2xvYmFsUHJvcGVydHlJbmZvKHN0YXRpY19jYXN0
PEpTVk1DbGllbnREYXRhKj4odm0uY2xpZW50RGF0YSktPmJ1aWx0aW5OYW1lcygpLnN0cmVhbVJl
YWRhYmxlUHJpdmF0ZU5hbWUoKSwganNOdW1iZXIoNCksIERvbnREZWxldGUgfCBSZWFkT25seSks
Ci0gICAgICAgIEdsb2JhbFByb3BlcnR5SW5mbyhzdGF0aWNfY2FzdDxKU1ZNQ2xpZW50RGF0YSo+
KHZtLmNsaWVudERhdGEpLT5idWlsdGluTmFtZXMoKS5zdHJlYW1XYWl0aW5nUHJpdmF0ZU5hbWUo
KSwganNOdW1iZXIoNSksIERvbnREZWxldGUgfCBSZWFkT25seSksCi0gICAgICAgIEdsb2JhbFBy
b3BlcnR5SW5mbyhzdGF0aWNfY2FzdDxKU1ZNQ2xpZW50RGF0YSo+KHZtLmNsaWVudERhdGEpLT5i
dWlsdGluTmFtZXMoKS5zdHJlYW1Xcml0YWJsZVByaXZhdGVOYW1lKCksIGpzTnVtYmVyKDYpLCBE
b250RGVsZXRlIHwgUmVhZE9ubHkpLAotICAgICAgICBHbG9iYWxQcm9wZXJ0eUluZm8oc3RhdGlj
X2Nhc3Q8SlNWTUNsaWVudERhdGEqPih2bS5jbGllbnREYXRhKS0+YnVpbHRpbk5hbWVzKCkuUmVh
ZGFibGVTdHJlYW1Db250cm9sbGVyUHJpdmF0ZU5hbWUoKSwgY3JlYXRlUmVhZGFibGVTdHJlYW1D
b250cm9sbGVyUHJpdmF0ZUNvbnN0cnVjdG9yKHZtLCAqdGhpcyksIERvbnREZWxldGUgfCBSZWFk
T25seSksCi0gICAgICAgIEdsb2JhbFByb3BlcnR5SW5mbyhzdGF0aWNfY2FzdDxKU1ZNQ2xpZW50
RGF0YSo+KHZtLmNsaWVudERhdGEpLT5idWlsdGluTmFtZXMoKS5SZWFkYWJsZVN0cmVhbVJlYWRl
clByaXZhdGVOYW1lKCksIGNyZWF0ZVJlYWRhYmxlU3RyZWFtUmVhZGVyUHJpdmF0ZUNvbnN0cnVj
dG9yKHZtLCAqdGhpcyksIERvbnREZWxldGUgfCBSZWFkT25seSksCisgICAgICAgIEdsb2JhbFBy
b3BlcnR5SW5mbyhjbGllbnREYXRhLmJ1aWx0aW5OYW1lcygpLnN0cmVhbUNsb3NlZFByaXZhdGVO
YW1lKCksIGpzTnVtYmVyKDEpLCBEb250RGVsZXRlIHwgUmVhZE9ubHkpLAorICAgICAgICBHbG9i
YWxQcm9wZXJ0eUluZm8oY2xpZW50RGF0YS5idWlsdGluTmFtZXMoKS5zdHJlYW1DbG9zaW5nUHJp
dmF0ZU5hbWUoKSwganNOdW1iZXIoMiksIERvbnREZWxldGUgfCBSZWFkT25seSksCisgICAgICAg
IEdsb2JhbFByb3BlcnR5SW5mbyhjbGllbnREYXRhLmJ1aWx0aW5OYW1lcygpLnN0cmVhbUVycm9y
ZWRQcml2YXRlTmFtZSgpLCBqc051bWJlcigzKSwgRG9udERlbGV0ZSB8IFJlYWRPbmx5KSwKKyAg
ICAgICAgR2xvYmFsUHJvcGVydHlJbmZvKGNsaWVudERhdGEuYnVpbHRpbk5hbWVzKCkuc3RyZWFt
UmVhZGFibGVQcml2YXRlTmFtZSgpLCBqc051bWJlcig0KSwgRG9udERlbGV0ZSB8IFJlYWRPbmx5
KSwKKyAgICAgICAgR2xvYmFsUHJvcGVydHlJbmZvKGNsaWVudERhdGEuYnVpbHRpbk5hbWVzKCku
c3RyZWFtV2FpdGluZ1ByaXZhdGVOYW1lKCksIGpzTnVtYmVyKDUpLCBEb250RGVsZXRlIHwgUmVh
ZE9ubHkpLAorICAgICAgICBHbG9iYWxQcm9wZXJ0eUluZm8oY2xpZW50RGF0YS5idWlsdGluTmFt
ZXMoKS5zdHJlYW1Xcml0YWJsZVByaXZhdGVOYW1lKCksIGpzTnVtYmVyKDYpLCBEb250RGVsZXRl
IHwgUmVhZE9ubHkpLAorICAgICAgICBHbG9iYWxQcm9wZXJ0eUluZm8oY2xpZW50RGF0YS5idWls
dGluTmFtZXMoKS5SZWFkYWJsZVN0cmVhbUNvbnRyb2xsZXJQcml2YXRlTmFtZSgpLCBjcmVhdGVS
ZWFkYWJsZVN0cmVhbUNvbnRyb2xsZXJQcml2YXRlQ29uc3RydWN0b3Iodm0sICp0aGlzKSwgRG9u
dERlbGV0ZSB8IFJlYWRPbmx5KSwKKyAgICAgICAgR2xvYmFsUHJvcGVydHlJbmZvKGNsaWVudERh
dGEuYnVpbHRpbk5hbWVzKCkuUmVhZGFibGVTdHJlYW1SZWFkZXJQcml2YXRlTmFtZSgpLCBjcmVh
dGVSZWFkYWJsZVN0cmVhbVJlYWRlclByaXZhdGVDb25zdHJ1Y3Rvcih2bSwgKnRoaXMpLCBEb250
RGVsZXRlIHwgUmVhZE9ubHkpLAogI2RlZmluZSBERUNMQVJFX0dMT0JBTF9TVEFUSUMobmFtZSlc
CiAgICAgICAgIEdsb2JhbFByb3BlcnR5SW5mbyhcCi0gICAgICAgICAgICBzdGF0aWNfY2FzdDxK
U1ZNQ2xpZW50RGF0YSo+KHZtLmNsaWVudERhdGEpLT5idWlsdGluRnVuY3Rpb25zKCkucmVhZGFi
bGVTdHJlYW1JbnRlcm5hbHNCdWlsdGlucygpLm5hbWUjI1ByaXZhdGVOYW1lKCksIFwKLSAgICAg
ICAgICAgIG1fcHJpdmF0ZUZ1bmN0aW9ucy5yZWFkYWJsZVN0cmVhbUludGVybmFscygpLm1fIyNu
YW1lIyNGdW5jdGlvbi5nZXQoKSAsIERvbnREZWxldGUgfCBSZWFkT25seSksCisgICAgICAgICAg
ICBjbGllbnREYXRhLmJ1aWx0aW5GdW5jdGlvbnMoKS5yZWFkYWJsZVN0cmVhbUludGVybmFsc0J1
aWx0aW5zKCkubmFtZSMjUHJpdmF0ZU5hbWUoKSwgbV9wcml2YXRlRnVuY3Rpb25zLnJlYWRhYmxl
U3RyZWFtSW50ZXJuYWxzKCkubV8jI25hbWUjI0Z1bmN0aW9uLmdldCgpICwgRG9udERlbGV0ZSB8
IFJlYWRPbmx5KSwKICAgICAgICAgV0VCQ09SRV9GT1JFQUNIX1JFQURBQkxFU1RSRUFNSU5URVJO
QUxTX0JVSUxUSU5fRlVOQ1RJT05fTkFNRShERUNMQVJFX0dMT0JBTF9TVEFUSUMpCiAjdW5kZWYg
REVDTEFSRV9HTE9CQUxfU1RBVElDCiAjZGVmaW5lIERFQ0xBUkVfR0xPQkFMX1NUQVRJQyhuYW1l
KVwKICAgICAgICAgR2xvYmFsUHJvcGVydHlJbmZvKFwKLSAgICAgICAgICAgIHN0YXRpY19jYXN0
PEpTVk1DbGllbnREYXRhKj4odm0uY2xpZW50RGF0YSktPmJ1aWx0aW5GdW5jdGlvbnMoKS5zdHJl
YW1JbnRlcm5hbHNCdWlsdGlucygpLm5hbWUjI1ByaXZhdGVOYW1lKCksIFwKLSAgICAgICAgICAg
IG1fcHJpdmF0ZUZ1bmN0aW9ucy5zdHJlYW1JbnRlcm5hbHMoKS5tXyMjbmFtZSMjRnVuY3Rpb24u
Z2V0KCkgLCBEb250RGVsZXRlIHwgUmVhZE9ubHkpLAorICAgICAgICAgICAgY2xpZW50RGF0YS5i
dWlsdGluRnVuY3Rpb25zKCkuc3RyZWFtSW50ZXJuYWxzQnVpbHRpbnMoKS5uYW1lIyNQcml2YXRl
TmFtZSgpLCBtX3ByaXZhdGVGdW5jdGlvbnMuc3RyZWFtSW50ZXJuYWxzKCkubV8jI25hbWUjI0Z1
bmN0aW9uLmdldCgpICwgRG9udERlbGV0ZSB8IFJlYWRPbmx5KSwKICAgICAgICAgV0VCQ09SRV9G
T1JFQUNIX1NUUkVBTUlOVEVSTkFMU19CVUlMVElOX0ZVTkNUSU9OX05BTUUoREVDTEFSRV9HTE9C
QUxfU1RBVElDKQogI3VuZGVmIERFQ0xBUkVfR0xPQkFMX1NUQVRJQwogI2RlZmluZSBERUNMQVJF
X0dMT0JBTF9TVEFUSUMobmFtZSlcCiAgICAgICAgIEdsb2JhbFByb3BlcnR5SW5mbyhcCi0gICAg
ICAgICAgICBzdGF0aWNfY2FzdDxKU1ZNQ2xpZW50RGF0YSo+KHZtLmNsaWVudERhdGEpLT5idWls
dGluRnVuY3Rpb25zKCkud3JpdGFibGVTdHJlYW1JbnRlcm5hbHNCdWlsdGlucygpLm5hbWUjI1By
aXZhdGVOYW1lKCksIFwKLSAgICAgICAgICAgIG1fcHJpdmF0ZUZ1bmN0aW9ucy53cml0YWJsZVN0
cmVhbUludGVybmFscygpLm1fIyNuYW1lIyNGdW5jdGlvbi5nZXQoKSAsIERvbnREZWxldGUgfCBS
ZWFkT25seSksCisgICAgICAgICAgICBjbGllbnREYXRhLmJ1aWx0aW5GdW5jdGlvbnMoKS53cml0
YWJsZVN0cmVhbUludGVybmFsc0J1aWx0aW5zKCkubmFtZSMjUHJpdmF0ZU5hbWUoKSwgbV9wcml2
YXRlRnVuY3Rpb25zLndyaXRhYmxlU3RyZWFtSW50ZXJuYWxzKCkubV8jI25hbWUjI0Z1bmN0aW9u
LmdldCgpICwgRG9udERlbGV0ZSB8IFJlYWRPbmx5KSwKICAgICAgICAgV0VCQ09SRV9GT1JFQUNI
X1dSSVRBQkxFU1RSRUFNSU5URVJOQUxTX0JVSUxUSU5fRlVOQ1RJT05fTkFNRShERUNMQVJFX0dM
T0JBTF9TVEFUSUMpCiAjdW5kZWYgREVDTEFSRV9HTE9CQUxfU1RBVElDCiAjZW5kaWYKZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0pTTmF2aWdhdG9yQ3VzdG9tLmNwcCBi
L1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0pTTmF2aWdhdG9yQ3VzdG9tLmNwcApkZWxldGVk
IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggM2Q1ZmUxMjQ4NjQ4NjM0YTY0YTFkODk3NWM0YWMxYmMz
ZDFiZDliOC4uMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMAotLS0gYS9T
b3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9KU05hdmlnYXRvckN1c3RvbS5jcHAKKysrIC9kZXYv
bnVsbApAQCAtMSwxMDMgKzAsMCBAQAotLyoKLSAqIENvcHlyaWdodCAoQykgMjAxMyBOb2tpYSBD
b3Jwb3JhdGlvbiBhbmQvb3IgaXRzIHN1YnNpZGlhcnkoLWllcykuCi0gKiBDb3B5cmlnaHQgKEMp
IDIwMTUgQ2Fub24gSU5DLgotICoKLSAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNl
IGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAotICogbW9kaWZpY2F0aW9uLCBhcmUg
cGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCi0gKiBhcmUg
bWV0OgotICogMS4gUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRo
ZSBhYm92ZSBjb3B5cmlnaHQKLSAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMg
YW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KLSAqIDIuIFJlZGlzdHJpYnV0aW9ucyBpbiBi
aW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0Ci0gKiAgICBub3Rp
Y2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIg
aW4gdGhlCi0gKiAgICBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlk
ZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgotICoKLSAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklE
RUQgQlkgVEhFIENPUFlSSUdIVCBIT0xERVJTIEFORCBDT05UUklCVVRPUlMKLSAqICJBUyBJUyIg
QU5EIEFOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9U
Ci0gKiBMSU1JVEVEIFRPLCBUSEUgSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElU
WSBBTkQgRklUTkVTUyBGT1IKLSAqIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFSRSBESVNDTEFJTUVE
LiBJTiBOTyBFVkVOVCBTSEFMTCBUSEUgQ09QWVJJR0hUCi0gKiBPV05FUiBPUiBDT05UUklCVVRP
UlMgQkUgTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwKLSAqIFNQ
RUNJQUwsIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJV
VCBOT1QKLSAqIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1Ig
U0VSVklDRVM7IExPU1MgT0YgVVNFLAotICogREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1Mg
SU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZCi0gKiBUSEVPUlkgT0YgTElB
QklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUCi0g
KiAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkg
T1VUIE9GIFRIRSBVU0UKLSAqIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBU
SEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCi0gKi8KLQotI2luY2x1ZGUgImNvbmZpZy5o
IgotCi0jaWYgRU5BQkxFKE1FRElBX1NUUkVBTSkKLSNpbmNsdWRlICJKU05hdmlnYXRvci5oIgot
Ci0jaW5jbHVkZSAiRGljdGlvbmFyeS5oIgotI2luY2x1ZGUgIkRvY3VtZW50LmgiCi0jaW5jbHVk
ZSAiRXhjZXB0aW9uQ29kZS5oIgotI2luY2x1ZGUgIkZyYW1lLmgiCi0jaW5jbHVkZSAiSlNOYXZp
Z2F0b3JVc2VyTWVkaWFFcnJvckNhbGxiYWNrLmgiCi0jaW5jbHVkZSAiSlNOYXZpZ2F0b3JVc2Vy
TWVkaWFTdWNjZXNzQ2FsbGJhY2suaCIKLSNpbmNsdWRlICJNZWRpYVN0cmVhbS5oIgotI2luY2x1
ZGUgIlVzZXJNZWRpYVJlcXVlc3QuaCIKLQotdXNpbmcgbmFtZXNwYWNlIEpTQzsKLQotbmFtZXNw
YWNlIFdlYkNvcmUgewotCi1KU1ZhbHVlIEpTTmF2aWdhdG9yOjp3ZWJraXRHZXRVc2VyTWVkaWEo
RXhlY1N0YXRlJiBzdGF0ZSkKLXsKLSAgICBpZiAoc3RhdGUuYXJndW1lbnRDb3VudCgpIDwgMykg
ewotICAgICAgICB0aHJvd1ZNRXJyb3IoJnN0YXRlLCBjcmVhdGVOb3RFbm91Z2hBcmd1bWVudHNF
cnJvcigmc3RhdGUpKTsKLSAgICAgICAgcmV0dXJuIGpzVW5kZWZpbmVkKCk7Ci0gICAgfQotCi0g
ICAgRGljdGlvbmFyeSBvcHRpb25zKCZzdGF0ZSwgc3RhdGUuYXJndW1lbnQoMCkpOwotICAgIGlm
IChzdGF0ZS5oYWRFeGNlcHRpb24oKSkKLSAgICAgICAgcmV0dXJuIGpzVW5kZWZpbmVkKCk7Ci0K
LSAgICBpZiAoIW9wdGlvbnMuaXNPYmplY3QoKSkgewotICAgICAgICB0aHJvd1ZNRXJyb3IoJnN0
YXRlLCBjcmVhdGVUeXBlRXJyb3IoJnN0YXRlLCAiRmlyc3QgYXJndW1lbnQgb2Ygd2Via2l0R2V0
VXNlck1lZGlhIG11c3QgYmUgYSB2YWxpZCBEaWN0aW9uYXJ5IikpOwotICAgICAgICByZXR1cm4g
anNVbmRlZmluZWQoKTsKLSAgICB9Ci0KLSAgICBpZiAoIXN0YXRlLmFyZ3VtZW50KDEpLmlzRnVu
Y3Rpb24oKSkgewotICAgICAgICB0aHJvd1ZNVHlwZUVycm9yKCZzdGF0ZSwgIkFyZ3VtZW50IDIg
KCdzdWNjZXNzQ2FsbGJhY2snKSB0byBOYXZpZ2F0b3Iud2Via2l0R2V0VXNlck1lZGlhIG11c3Qg
YmUgYSBmdW5jdGlvbiIpOwotICAgICAgICByZXR1cm4ganNVbmRlZmluZWQoKTsKLSAgICB9Ci0K
LSAgICBpZiAoIXN0YXRlLmFyZ3VtZW50KDIpLmlzRnVuY3Rpb24oKSkgewotICAgICAgICB0aHJv
d1ZNVHlwZUVycm9yKCZzdGF0ZSwgIkFyZ3VtZW50IDMgKCdlcnJvckNhbGxiYWNrJykgdG8gTmF2
aWdhdG9yLndlYmtpdEdldFVzZXJNZWRpYSBtdXN0IGJlIGEgZnVuY3Rpb24iKTsKLSAgICAgICAg
cmV0dXJuIGpzVW5kZWZpbmVkKCk7Ci0gICAgfQotCi0gICAgaWYgKCFpbXBsKCkuZnJhbWUoKSkg
ewotICAgICAgICBzZXRET01FeGNlcHRpb24oJnN0YXRlLCBOT1RfU1VQUE9SVEVEX0VSUik7Ci0g
ICAgICAgIHJldHVybiBqc1VuZGVmaW5lZCgpOwotICAgIH0KLQotICAgIC8vIFdlIGRvIG5vdCBu
ZWVkIHRvIHByb3RlY3QgdGhlIGNvbnRleHQgKGkuZS4gZG9jdW1lbnQpIGhlcmUgYXMgVXNlck1l
ZGlhUmVxdWVzdCBpcyBvYnNlcnZpbmcgY29udGV4dCBkZXN0cnVjdGlvbiBhbmQgd2lsbCBjaGVj
ayB2YWxpZGl0eSBiZWZvcmUgcmVzb2x2aW5nL3JlamVjdGluZyBwcm9taXNlLgotICAgIERvY3Vt
ZW50KiBkb2N1bWVudCA9IGltcGwoKS5mcmFtZSgpLT5kb2N1bWVudCgpOwotCi0gICAgUmVmUHRy
PE5hdmlnYXRvclVzZXJNZWRpYVN1Y2Nlc3NDYWxsYmFjaz4gc3VjY2Vzc0NhbGxiYWNrID0gSlNO
YXZpZ2F0b3JVc2VyTWVkaWFTdWNjZXNzQ2FsbGJhY2s6OmNyZWF0ZShhc09iamVjdChzdGF0ZS51
bmNoZWNrZWRBcmd1bWVudCgxKSksIGdsb2JhbE9iamVjdCgpKTsKLSAgICBhdXRvIHJlc29sdmVD
YWxsYmFjayA9IFtzdWNjZXNzQ2FsbGJhY2ssIGRvY3VtZW50XShjb25zdCBSZWZQdHI8TWVkaWFT
dHJlYW0+JiBzdHJlYW0pIG11dGFibGUgewotICAgICAgICBSZWZQdHI8TWVkaWFTdHJlYW0+IHBy
b3RlY3RlZFN0cmVhbSA9IHN0cmVhbTsKLSAgICAgICAgZG9jdW1lbnQtPnBvc3RUYXNrKFtzdWNj
ZXNzQ2FsbGJhY2ssIHByb3RlY3RlZFN0cmVhbV0oU2NyaXB0RXhlY3V0aW9uQ29udGV4dCYpIHsK
LSAgICAgICAgICAgIHN1Y2Nlc3NDYWxsYmFjay0+aGFuZGxlRXZlbnQocHJvdGVjdGVkU3RyZWFt
LmdldCgpKTsKLSAgICAgICAgfSk7Ci0gICAgfTsKLQotICAgIFJlZlB0cjxOYXZpZ2F0b3JVc2Vy
TWVkaWFFcnJvckNhbGxiYWNrPiBlcnJvckNhbGxiYWNrID0gSlNOYXZpZ2F0b3JVc2VyTWVkaWFF
cnJvckNhbGxiYWNrOjpjcmVhdGUoYXNPYmplY3Qoc3RhdGUudW5jaGVja2VkQXJndW1lbnQoMikp
LCBnbG9iYWxPYmplY3QoKSk7Ci0gICAgYXV0byByZWplY3RDYWxsYmFjayA9IFtlcnJvckNhbGxi
YWNrLCBkb2N1bWVudF0oY29uc3QgUmVmUHRyPE5hdmlnYXRvclVzZXJNZWRpYUVycm9yPiYgZXJy
b3IpIG11dGFibGUgewotICAgICAgICBSZWZQdHI8TmF2aWdhdG9yVXNlck1lZGlhRXJyb3I+IHBy
b3RlY3RlZEVycm9yID0gZXJyb3I7Ci0gICAgICAgIGRvY3VtZW50LT5wb3N0VGFzayhbZXJyb3JD
YWxsYmFjaywgcHJvdGVjdGVkRXJyb3JdKFNjcmlwdEV4ZWN1dGlvbkNvbnRleHQmKSB7Ci0gICAg
ICAgICAgICBlcnJvckNhbGxiYWNrLT5oYW5kbGVFdmVudChwcm90ZWN0ZWRFcnJvci5nZXQoKSk7
Ci0gICAgICAgIH0pOwotICAgIH07Ci0KLSAgICBFeGNlcHRpb25Db2RlIGVjID0gMDsKLSAgICBV
c2VyTWVkaWFSZXF1ZXN0OjpzdGFydChkb2N1bWVudCwgb3B0aW9ucywgTWVkaWFEZXZpY2VzOjpQ
cm9taXNlKFdURjo6bW92ZShyZXNvbHZlQ2FsbGJhY2spLCBXVEY6Om1vdmUocmVqZWN0Q2FsbGJh
Y2spKSwgZWMpOwotICAgIHNldERPTUV4Y2VwdGlvbigmc3RhdGUsIGVjKTsKLSAgICByZXR1cm4g
anNVbmRlZmluZWQoKTsKLX0KLQotfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQotCi0jZW5kaWYgLy8g
RU5BQkxFKE1FRElBX1NUUkVBTSkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdz
L2pzL1dlYkNvcmVKU0J1aWx0aW5zLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL1dl
YkNvcmVKU0J1aWx0aW5zLmNwcAppbmRleCBhZGYxMGU4N2E3ZWJjM2NhOWNjN2NmOGJmOGNkZDIy
NTBhM2FkYjdlLi5mODI4MTBlMjY4ZDg1Nzc3ZTYwYWIyNjlkMGQ1OGFkZjMzY2IwNDQ0IDEwMDY0
NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9XZWJDb3JlSlNCdWlsdGlucy5jcHAK
KysrIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvV2ViQ29yZUpTQnVpbHRpbnMuY3BwCkBA
IC00MSwzICs0MSw2IEBACiAjaW5jbHVkZSAiV3JpdGFibGVTdHJlYW1CdWlsdGlucy5jcHAiCiAj
aW5jbHVkZSAiV3JpdGFibGVTdHJlYW1JbnRlcm5hbHNCdWlsdGlucy5jcHAiCiAjZW5kaWYKKyNp
ZiBFTkFCTEUoTUVESUFfU1RSRUFNKQorI2luY2x1ZGUgIk5hdmlnYXRvclVzZXJNZWRpYUJ1aWx0
aW5zLmNwcCIKKyNlbmRpZgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMv
V2ViQ29yZUpTQnVpbHRpbnMuaCBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL1dlYkNvcmVK
U0J1aWx0aW5zLmgKaW5kZXggYWE3OWExMzJlYWZiMWU5ZjIxNmYzODU3NTliNzQ3ODlkZTU5NmI2
MC4uNWRjMGJmMTQ3NWJhMWI0M2NkMTE5ZDRiMGU3OWVjMWZmNDUxMTNhZCAxMDA2NDQKLS0tIGEv
U291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvV2ViQ29yZUpTQnVpbHRpbnMuaAorKysgYi9Tb3Vy
Y2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9XZWJDb3JlSlNCdWlsdGlucy5oCkBAIC02NCw2ICs2NCw3
IEBAIHB1YmxpYzoKICNlbmRpZgogI2lmIEVOQUJMRShNRURJQV9TVFJFQU0pCiAgICAgICAgICwg
bV9tZWRpYURldmljZXNCdWlsdGlucygmdm0pCisgICAgICAgICwgbV9uYXZpZ2F0b3JVc2VyTWVk
aWFCdWlsdGlucygmdm0pCiAjZW5kaWYKICAgICB7CiAjaWYgRU5BQkxFKFNUUkVBTVNfQVBJKQpA
QCAtODUsNiArODYsNyBAQCBwdWJsaWM6CiAjZW5kaWYKICNpZiBFTkFCTEUoTUVESUFfU1RSRUFN
KQogICAgIE1lZGlhRGV2aWNlc0J1aWx0aW5zV3JhcHBlciYgbWVkaWFEZXZpY2VzQnVpbHRpbnMo
KSB7IHJldHVybiBtX21lZGlhRGV2aWNlc0J1aWx0aW5zOyB9CisgICAgTmF2aWdhdG9yVXNlck1l
ZGlhQnVpbHRpbnNXcmFwcGVyJiBuYXZpZ2F0b3JVc2VyTWVkaWFCdWlsdGlucygpIHsgcmV0dXJu
IG1fbmF2aWdhdG9yVXNlck1lZGlhQnVpbHRpbnM7fQogI2VuZGlmCiAKIHByaXZhdGU6CkBAIC0x
MDIsNiArMTA0LDcgQEAgcHJpdmF0ZToKICNlbmRpZgogI2lmIEVOQUJMRShNRURJQV9TVFJFQU0p
CiAgICAgTWVkaWFEZXZpY2VzQnVpbHRpbnNXcmFwcGVyIG1fbWVkaWFEZXZpY2VzQnVpbHRpbnM7
CisgICAgTmF2aWdhdG9yVXNlck1lZGlhQnVpbHRpbnNXcmFwcGVyIG1fbmF2aWdhdG9yVXNlck1l
ZGlhQnVpbHRpbnM7CiAjZW5kaWYKIAogfTsKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL0NoYW5n
ZUxvZyBiL0xheW91dFRlc3RzL0NoYW5nZUxvZwppbmRleCBhMjY3ZGI2NjE0ZGRjYjljMDY0MjI4
YWZlZDEyN2Y2NTM1N2ZmZTE3Li44MDU3NTZkZTY3M2U5NWY5Y2VlMzQ1YjI0NzE2ZTQzYzlkM2My
Y2U1IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKKysrIGIvTGF5b3V0VGVzdHMv
Q2hhbmdlTG9nCkBAIC0xLDMgKzEsMTYgQEAKKzIwMTUtMTAtMTkgIFlvdWVubiBGYWJsZXQgIDx5
b3Vlbm4uZmFibGV0QGNyZi5jYW5vbi5mcj4KKworICAgICAgICBNb3ZlIHdlYmtpdEdldFVzZXJN
ZWRpYSB0byBKUyBCdWlsdGluCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3df
YnVnLmNnaT9pZD0xNDk0OTkKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4K
KworICAgICAgICAqIGZhc3QvbWVkaWFzdHJlYW0vYXJndW1lbnQtdHlwZXMtZXhwZWN0ZWQudHh0
OgorICAgICAgICAqIGZhc3QvbWVkaWFzdHJlYW0vZ2V0dXNlcm1lZGlhLWV4cGVjdGVkLnR4dDoK
KyAgICAgICAgKiBmYXN0L21lZGlhc3RyZWFtL2dldHVzZXJtZWRpYS5odG1sOgorICAgICAgICAq
IGZhc3QvbWVkaWFzdHJlYW0vc2NyaXB0LXRlc3RzL2FyZ3VtZW50LXR5cGVzLmpzOgorICAgICAg
ICAqIGh0dHAvdGVzdHMvbWVkaWEvbWVkaWEtc3RyZWFtL2Rpc2Nvbm5lY3RlZC1mcmFtZS1hbHJl
YWR5LWV4cGVjdGVkLnR4dDoKKwogMjAxNS0xMC0yOSAgU2VyZ2lvIFZpbGxhciBTZW5pbiAgPHN2
aWxsYXJAaWdhbGlhLmNvbT4KIAogICAgICAgICBbQ1NTIEdyaWQgTGF5b3V0XSBtaW4tY29udGVu
dCByb3cgZG9lcyBub3QgYWx3YXlzIHNocmluawpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFz
dC9tZWRpYXN0cmVhbS9hcmd1bWVudC10eXBlcy1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9m
YXN0L21lZGlhc3RyZWFtL2FyZ3VtZW50LXR5cGVzLWV4cGVjdGVkLnR4dAppbmRleCA0MjI0ZDQw
MjAyMjk5ZjAwMjEyZTI3MjFmMjFlNDMzZmNkNWUyOTI0Li41Y2JjNDg1ODgyNzYyOWJjZjQ4NGU2
ZjY0MTJmNTlmZTEwMzRjMWNmIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9mYXN0L21lZGlhc3Ry
ZWFtL2FyZ3VtZW50LXR5cGVzLWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9mYXN0L21l
ZGlhc3RyZWFtL2FyZ3VtZW50LXR5cGVzLWV4cGVjdGVkLnR4dApAQCAtMzAsNyArMzAsNyBAQCBQ
QVNTIG5hdmlnYXRvci53ZWJraXRHZXRVc2VyTWVkaWEoe3ZpZGVvOiB0cnVlfSwgdHJ1ZSkgdGhy
ZXcgZXhjZXB0aW9uIFR5cGVFcnJvcgogUEFTUyBuYXZpZ2F0b3Iud2Via2l0R2V0VXNlck1lZGlh
KHt2aWRlbzogdHJ1ZX0sIDQyKSB0aHJldyBleGNlcHRpb24gVHlwZUVycm9yOiBOb3QgZW5vdWdo
IGFyZ3VtZW50cy4KIFBBU1MgbmF2aWdhdG9yLndlYmtpdEdldFVzZXJNZWRpYSh7dmlkZW86IHRy
dWV9LCBJbmZpbml0eSkgdGhyZXcgZXhjZXB0aW9uIFR5cGVFcnJvcjogTm90IGVub3VnaCBhcmd1
bWVudHMuCiBQQVNTIG5hdmlnYXRvci53ZWJraXRHZXRVc2VyTWVkaWEoe3ZpZGVvOiB0cnVlfSwg
LUluZmluaXR5KSB0aHJldyBleGNlcHRpb24gVHlwZUVycm9yOiBOb3QgZW5vdWdoIGFyZ3VtZW50
cy4KLVBBU1MgbmF2aWdhdG9yLndlYmtpdEdldFVzZXJNZWRpYSh7IH0sIGVtcHR5RnVuY3Rpb24s
IGVtcHR5RnVuY3Rpb24pIHRocmV3IGV4Y2VwdGlvbiBFcnJvcjogTm90U3VwcG9ydGVkRXJyb3I6
IERPTSBFeGNlcHRpb24gOS4KK1BBU1MgbmF2aWdhdG9yLndlYmtpdEdldFVzZXJNZWRpYSh7IH0s
IGVtcHR5RnVuY3Rpb24sIGVtcHR5RnVuY3Rpb24pIGRpZCBub3QgdGhyb3cgZXhjZXB0aW9uLgog
UEFTUyBuYXZpZ2F0b3Iud2Via2l0R2V0VXNlck1lZGlhKHt2aWRlbzogdHJ1ZX0sIGVtcHR5RnVu
Y3Rpb24sIGVtcHR5RnVuY3Rpb24pIGRpZCBub3QgdGhyb3cgZXhjZXB0aW9uLgogUEFTUyBuYXZp
Z2F0b3Iud2Via2l0R2V0VXNlck1lZGlhKHt2aWRlbzogdHJ1ZX0sIGVtcHR5RnVuY3Rpb24sIHVu
ZGVmaW5lZCkgdGhyZXcgZXhjZXB0aW9uIFR5cGVFcnJvcjogQXJndW1lbnQgMyAoJ2Vycm9yQ2Fs
bGJhY2snKSB0byBOYXZpZ2F0b3Iud2Via2l0R2V0VXNlck1lZGlhIG11c3QgYmUgYSBmdW5jdGlv
bi4KIFBBU1MgbmF2aWdhdG9yLndlYmtpdEdldFVzZXJNZWRpYSh7YXVkaW86dHJ1ZSwgdmlkZW86
dHJ1ZX0sIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5lZCkgdGhyZXcgZXhjZXB0aW9uIFR5cGVFcnJv
cjogQXJndW1lbnQgMyAoJ2Vycm9yQ2FsbGJhY2snKSB0byBOYXZpZ2F0b3Iud2Via2l0R2V0VXNl
ck1lZGlhIG11c3QgYmUgYSBmdW5jdGlvbi4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3Qv
bWVkaWFzdHJlYW0vZ2V0dXNlcm1lZGlhLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2Zhc3Qv
bWVkaWFzdHJlYW0vZ2V0dXNlcm1lZGlhLWV4cGVjdGVkLnR4dAppbmRleCBkY2E1ZmI5NjFjZjZl
YjVmNDQ1YWI0NTBhYTBiM2U1MmQ0MTA3MDhhLi5kNmNmZWI0OTBjYzAyMTYwZmRkZDNhMjNmODMw
M2YyYWU1YzdkYTA2IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9mYXN0L21lZGlhc3RyZWFtL2dl
dHVzZXJtZWRpYS1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC9tZWRpYXN0cmVh
bS9nZXR1c2VybWVkaWEtZXhwZWN0ZWQudHh0CkBAIC0zLDkgKzMsMTAgQEAgVGVzdHMgd2Via2l0
R2V0VXNlck1lZGlhLgogT24gc3VjY2VzcywgeW91IHdpbGwgc2VlIGEgc2VyaWVzIG9mICJQQVNT
IiBtZXNzYWdlcywgZm9sbG93ZWQgYnkgIlRFU1QgQ09NUExFVEUiLgogCiAKLVBBU1MgbmF2aWdh
dG9yLndlYmtpdEdldFVzZXJNZWRpYSh7YXVkaW86ZmFsc2UsIHZpZGVvOmZhbHNlfSwgZXJyb3Is
IGVycm9yKTsgdGhyZXcgZXhjZXB0aW9uIEVycm9yOiBOb3RTdXBwb3J0ZWRFcnJvcjogRE9NIEV4
Y2VwdGlvbiA5LgorUEFTUyBuYXZpZ2F0b3Iud2Via2l0R2V0VXNlck1lZGlhKHthdWRpbzpmYWxz
ZSwgdmlkZW86ZmFsc2V9LCBlcnJvciwgZXhwZWN0ZWRFcnJvcik7IGRpZCBub3QgdGhyb3cgZXhj
ZXB0aW9uLgogUEFTUyBuYXZpZ2F0b3Iud2Via2l0R2V0VXNlck1lZGlhKHthdWRpbzpmYWxzZSwg
dmlkZW86ZmFsc2V9LCBlcnJvciwgbnVsbCk7IHRocmV3IGV4Y2VwdGlvbiBUeXBlRXJyb3I6IEFy
Z3VtZW50IDMgKCdlcnJvckNhbGxiYWNrJykgdG8gTmF2aWdhdG9yLndlYmtpdEdldFVzZXJNZWRp
YSBtdXN0IGJlIGEgZnVuY3Rpb24uCiBQQVNTIG5hdmlnYXRvci53ZWJraXRHZXRVc2VyTWVkaWEo
e2F1ZGlvOnRydWV9LCBnb3RTdHJlYW0xLCBlcnJvcik7IGRpZCBub3QgdGhyb3cgZXhjZXB0aW9u
LgorUEFTUyBFcnJvciBjYWxsYmFjayBjYWxsZWQuCiBQQVNTIFN0cmVhbSBnZW5lcmF0ZWQuCiBQ
QVNTIHN0cmVhbS5nZXRBdWRpb1RyYWNrcygpLmxlbmd0aCBpcyAxCiBQQVNTIHN0cmVhbS5nZXRW
aWRlb1RyYWNrcygpLmxlbmd0aCBpcyAwCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L21l
ZGlhc3RyZWFtL2dldHVzZXJtZWRpYS5odG1sIGIvTGF5b3V0VGVzdHMvZmFzdC9tZWRpYXN0cmVh
bS9nZXR1c2VybWVkaWEuaHRtbAppbmRleCAxM2ZhZTEzMDY3MmJkMTU0NGViN2JhNmMyZWUxYjFk
ODQ3YTQ5ZDUxLi5lMzM4MzlmMWU0NzM5ZmJiOTcyNmYxMzAwNzc0OGIxNThkNGQwOTI4IDEwMDY0
NAotLS0gYS9MYXlvdXRUZXN0cy9mYXN0L21lZGlhc3RyZWFtL2dldHVzZXJtZWRpYS5odG1sCisr
KyBiL0xheW91dFRlc3RzL2Zhc3QvbWVkaWFzdHJlYW0vZ2V0dXNlcm1lZGlhLmh0bWwKQEAgLTI0
LDYgKzI0LDEwIEBACiAgICAgICAgICAgICAgICAgZmluaXNoSlNUZXN0KCk7CiAgICAgICAgICAg
ICB9CiAKKyAgICAgICAgICAgIGZ1bmN0aW9uIGV4cGVjdGVkRXJyb3IoKSB7CisgICAgICAgICAg
ICAgICAgdGVzdFBhc3NlZCgnRXJyb3IgY2FsbGJhY2sgY2FsbGVkLicpOworICAgICAgICAgICAg
fQorCiAgICAgICAgICAgICBmdW5jdGlvbiBnb3RTdHJlYW1JbkVycm9yKHMpIHsKICAgICAgICAg
ICAgICAgICB0ZXN0RmFpbGVkKCdTdHJlYW0gZ2VuZXJhdGVkLicpOwogICAgICAgICAgICAgICAg
IGZpbmlzaEpTVGVzdCgpOwpAQCAtODcsNyArOTEsNyBAQAogICAgICAgICAgICAgICAgIHNob3Vs
ZE5vdFRocm93KCJuYXZpZ2F0b3Iud2Via2l0R2V0VXNlck1lZGlhKHt2aWRlbzp0cnVlfSwgZ290
U3RyZWFtMiwgZXJyb3IpOyIpCiAgICAgICAgICAgICB9CiAKLSAgICAgICAgICAgIHNob3VsZFRo
cm93KCJuYXZpZ2F0b3Iud2Via2l0R2V0VXNlck1lZGlhKHthdWRpbzpmYWxzZSwgdmlkZW86ZmFs
c2V9LCBlcnJvciwgZXJyb3IpOyIpCisgICAgICAgICAgICBzaG91bGROb3RUaHJvdygibmF2aWdh
dG9yLndlYmtpdEdldFVzZXJNZWRpYSh7YXVkaW86ZmFsc2UsIHZpZGVvOmZhbHNlfSwgZXJyb3Is
IGV4cGVjdGVkRXJyb3IpOyIpCiAgICAgICAgICAgICBzaG91bGRUaHJvdygibmF2aWdhdG9yLndl
YmtpdEdldFVzZXJNZWRpYSh7YXVkaW86ZmFsc2UsIHZpZGVvOmZhbHNlfSwgZXJyb3IsIG51bGwp
OyIpCiAKICAgICAgICAgICAgIHNldFVzZXJNZWRpYVBlcm1pc3Npb24odHJ1ZSk7CmRpZmYgLS1n
aXQgYS9MYXlvdXRUZXN0cy9mYXN0L21lZGlhc3RyZWFtL3NjcmlwdC10ZXN0cy9hcmd1bWVudC10
eXBlcy5qcyBiL0xheW91dFRlc3RzL2Zhc3QvbWVkaWFzdHJlYW0vc2NyaXB0LXRlc3RzL2FyZ3Vt
ZW50LXR5cGVzLmpzCmluZGV4IDExYWRmODkzNjc3ZDFiYjJhNzg0ZTk2NGQ5MjdjZGE0YmFhMzc3
OTMuLmZmMDhiNDAwNjk0ODQ3MTU4YWQ1NjFjYzVmMzM4ZjRkMjZiNDYyMDUgMTAwNjQ0Ci0tLSBh
L0xheW91dFRlc3RzL2Zhc3QvbWVkaWFzdHJlYW0vc2NyaXB0LXRlc3RzL2FyZ3VtZW50LXR5cGVz
LmpzCisrKyBiL0xheW91dFRlc3RzL2Zhc3QvbWVkaWFzdHJlYW0vc2NyaXB0LXRlc3RzL2FyZ3Vt
ZW50LXR5cGVzLmpzCkBAIC01NCw3ICs1NCw3IEBAIHRlc3QoJ25hdmlnYXRvci53ZWJraXRHZXRV
c2VyTWVkaWEoe3ZpZGVvOiB0cnVlfSwgSW5maW5pdHkpJywgdHJ1ZSk7CiB0ZXN0KCduYXZpZ2F0
b3Iud2Via2l0R2V0VXNlck1lZGlhKHt2aWRlbzogdHJ1ZX0sIC1JbmZpbml0eSknLCB0cnVlKTsK
IAogLy8gMyBBcmd1bWVudHMuCi10ZXN0KCduYXZpZ2F0b3Iud2Via2l0R2V0VXNlck1lZGlhKHsg
fSwgZW1wdHlGdW5jdGlvbiwgZW1wdHlGdW5jdGlvbiknLCB0cnVlLCBub3RTdXBwb3J0ZWRFcnJv
cik7Cit0ZXN0KCduYXZpZ2F0b3Iud2Via2l0R2V0VXNlck1lZGlhKHsgfSwgZW1wdHlGdW5jdGlv
biwgZW1wdHlGdW5jdGlvbiknLCBmYWxzZSk7CiB0ZXN0KCduYXZpZ2F0b3Iud2Via2l0R2V0VXNl
ck1lZGlhKHt2aWRlbzogdHJ1ZX0sIGVtcHR5RnVuY3Rpb24sIGVtcHR5RnVuY3Rpb24pJywgZmFs
c2UpOwogdGVzdCgnbmF2aWdhdG9yLndlYmtpdEdldFVzZXJNZWRpYSh7dmlkZW86IHRydWV9LCBl
bXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQpJywgdHJ1ZSwgZXJyb3JDYWxsYmFja0Vycm9yKTsKIHRl
c3QoJ25hdmlnYXRvci53ZWJraXRHZXRVc2VyTWVkaWEoe2F1ZGlvOnRydWUsIHZpZGVvOnRydWV9
LCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQpJywgdHJ1ZSwgZXJyb3JDYWxsYmFja0Vycm9yKTsK
ZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvbWVkaWEvbWVkaWEtc3RyZWFtL2Rp
c2Nvbm5lY3RlZC1mcmFtZS1hbHJlYWR5LWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2h0dHAv
dGVzdHMvbWVkaWEvbWVkaWEtc3RyZWFtL2Rpc2Nvbm5lY3RlZC1mcmFtZS1hbHJlYWR5LWV4cGVj
dGVkLnR4dAppbmRleCBlNTA1ZGI5YjJjN2ViNjM5MzNmOWVmMTA1YjMwZDkyNWQwOTZkNTcxLi4y
YWMzMTQ3NzcyZWFlMTYzMzQzOGZkYWZhZDUzMGE1ZjUyNThiYjRkIDEwMDY0NAotLS0gYS9MYXlv
dXRUZXN0cy9odHRwL3Rlc3RzL21lZGlhL21lZGlhLXN0cmVhbS9kaXNjb25uZWN0ZWQtZnJhbWUt
YWxyZWFkeS1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9tZWRpYS9t
ZWRpYS1zdHJlYW0vZGlzY29ubmVjdGVkLWZyYW1lLWFscmVhZHktZXhwZWN0ZWQudHh0CkBAIC0x
LDQgKzEsNCBAQAotQ09OU09MRSBNRVNTQUdFOiBsaW5lIDI0OiBOb3RTdXBwb3J0ZWRFcnJvcjog
RE9NIEV4Y2VwdGlvbiA5OiBUaGUgaW1wbGVtZW50YXRpb24gZGlkIG5vdCBzdXBwb3J0IHRoZSBy
ZXF1ZXN0ZWQgdHlwZSBvZiBvYmplY3Qgb3Igb3BlcmF0aW9uLgorQ09OU09MRSBNRVNTQUdFOiBs
aW5lIDI0OiBUeXBlRXJyb3I6IFRoZSBpbXBsZW1lbnRhdGlvbiBkaWQgbm90IHN1cHBvcnQgdGhl
IHJlcXVlc3RlZCB0eXBlIG9mIG9iamVjdCBvciBvcGVyYXRpb24uCiBUZXN0cyB0aGF0IHdoZW4g
YSBnZXRVc2VyTWVkaWEgcmVxdWVzdCBpcyBtYWRlIGFmdGVyIGl0cyBmcmFtZSBoYXMgYmVlbiBk
aXNjb25uZWN0ZWQsIG5vIGNhbGxiYWNrcyBhcmUgbWFkZSBhbmQgbm8gY3Jhc2ggb2NjdXJzLgog
CiBPbiBzdWNjZXNzLCB5b3Ugd2lsbCBzZWUgYSBzZXJpZXMgb2YgIlBBU1MiIG1lc3NhZ2VzLCBm
b2xsb3dlZCBieSAiVEVTVCBDT01QTEVURSIuCg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>264576</attachid>
            <date>2015-11-02 05:40:21 -0800</date>
            <delta_ts>2015-11-02 05:56:01 -0800</delta_ts>
            <desc>Rebasing</desc>
            <filename>bug-149499-20151102143910.patch</filename>
            <type>text/plain</type>
            <size>52069</size>
            <attacher name="youenn fablet">youennf</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTkxODg3CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggZjgwMmY5YTgzYzFmMmQ4
Y2E4MTBiMWE1ZjM1ODBjZWNiNDA0NDMwZS4uNDA1NGZhYjUwMWViYzA5YjkyOTU0ZTEyNjMyZGQ4
MWYzYWRkMGFjMCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDQxIEBACisyMDE1LTEwLTE5ICBZb3Vl
bm4gRmFibGV0ICA8eW91ZW5uLmZhYmxldEBjcmYuY2Fub24uZnI+CisKKyAgICAgICAgTW92ZSB3
ZWJraXRHZXRVc2VyTWVkaWEgdG8gSlMgQnVpbHRpbgorICAgICAgICBodHRwczovL2J1Z3Mud2Vi
a2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTQ5NDk5CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9C
T0RZIChPT1BTISkuCisKKyAgICAgICAgSW1wbGVtZW50ZWQgd2Via2l0R2V0VXNlck1lZGlhIGFz
IGEgSlNCdWlsdGluIHdyYXBwZXIgYXJvdW5kIG5hdmlnYXRvci5tZWRpYURldmljZXMuZ2V0VXNl
ck1lZGlhLgorCisgICAgICAgIFJlbW92ZWQgY3BwIGJhc2VkIHZlcnNpb24uCisKKyAgICAgICAg
VGhlIGpzIGJ1aWx0aW5nIGltcGxlbWVudGF0aW9uIGNoZWNrcyBmb3IgYXJndW1lbnQgYnV0IGRv
ZXMgbm90IHJhaXNlIGV4Y2VwdGlvbiB3aGVuIHRoZSByZXF1ZXN0IGlzIG5vdCBzdXBwb3J0ZWQu
CisgICAgICAgIFRoZSBlcnJvciBjYWxsYmFjayBpcyBjYWxsZWQgaW5zdGVhZCwgaW4gYW4gYXN5
bmNocm9ub3VzIGZhc2hpb24uCisgICAgICAgIFRoZSBqcyBidWlsdGluIGltcGxlbWVudGF0aW9u
IGRvZXMgbm90IGNoZWNrIGZpcnN0IHRoYXQgaXQgaXMgY2FsbGVkIG9uIG5hdmlnYXRvciwgY29u
dHJhcnkgdG8gdGhlIGNwcCBpbXBsZW1lbnRhdGlvbi4KKyAgICAgICAgVGhpcyBpcyBkb25lIGFm
dGVyd2FyZHMgd2hlbiBjYWxsaW5nIG5hdmlnYXRvci5NZWRpYURldmljZXMuQGdldFVzZXJNZWRp
YS4KKworICAgICAgICBDb3ZlcmVkIGJ5IGV4aXN0aW5nIGFuZCBtb2RpZmllZCB0ZXN0cy4KKwor
ICAgICAgICAqIENNYWtlTGlzdHMudHh0OiBBZGRpbmcgTmF2aWdhdG9yVXNlck1lZGlhLmpzIGFz
IGJ1aWx0LWluIEpTIGZpbGUuCisgICAgICAgICogRGVyaXZlZFNvdXJjZXMubWFrZTogRGl0dG8u
CisgICAgICAgICogTW9kdWxlcy9tZWRpYXN0cmVhbS9OYXZpZ2F0b3JVc2VyTWVkaWEuaWRsOiBN
YWtpbmcgd2Via2l0R2V0VXNlck1lZGlhIEpTQnVpbHRpbgorICAgICAgICAqIE1vZHVsZXMvbWVk
aWFzdHJlYW0vTmF2aWdhdG9yVXNlck1lZGlhLmpzOgorICAgICAgICAod2Via2l0R2V0VXNlck1l
ZGlhKToKKyAgICAgICAgKiBNb2R1bGVzL21lZGlhc3RyZWFtL05hdmlnYXRvclVzZXJNZWRpYUVy
cm9yQ2FsbGJhY2suaDogUmVtb3ZlZC4KKyAgICAgICAgKiBNb2R1bGVzL21lZGlhc3RyZWFtL05h
dmlnYXRvclVzZXJNZWRpYUVycm9yQ2FsbGJhY2suaWRsOiBSZW1vdmVkLgorICAgICAgICAqIE1v
ZHVsZXMvbWVkaWFzdHJlYW0vTmF2aWdhdG9yVXNlck1lZGlhU3VjY2Vzc0NhbGxiYWNrLmg6IFJl
bW92ZWQuCisgICAgICAgICogTW9kdWxlcy9tZWRpYXN0cmVhbS9OYXZpZ2F0b3JVc2VyTWVkaWFT
dWNjZXNzQ2FsbGJhY2suaWRsOiBSZW1vdmVkLgorICAgICAgICAqIE1vZHVsZXMvbWVkaWFzdHJl
YW0vVXNlck1lZGlhUmVxdWVzdC5jcHA6CisgICAgICAgICogTW9kdWxlcy9tZWRpYXN0cmVhbS9V
c2VyTWVkaWFSZXF1ZXN0Lmg6CisgICAgICAgICogV2ViQ29yZS54Y29kZXByb2ovcHJvamVjdC5w
Ynhwcm9qOgorICAgICAgICAqIGJpbmRpbmdzL2pzL0pTRE9NV2luZG93QmFzZS5jcHA6CisgICAg
ICAgIChXZWJDb3JlOjpKU0RPTVdpbmRvd0Jhc2U6OmZpbmlzaENyZWF0aW9uKTogU3R5bGUgbW9k
aWZpY2F0aW9ucy4KKyAgICAgICAgKiBiaW5kaW5ncy9qcy9KU05hdmlnYXRvckN1c3RvbS5jcHA6
IFJlbW92ZWQuCisgICAgICAgICogYmluZGluZ3MvanMvV2ViQ29yZUpTQnVpbHRpbnMuY3BwOiBB
ZGRpbmcgc3VwcG9ydCBmb3IgTmF2aWdhdG9yVXNlck1lZGlhLmpzIGJ1aWx0LWluIEpTIGZpbGUu
CisgICAgICAgICogYmluZGluZ3MvanMvV2ViQ29yZUpTQnVpbHRpbnMuaDogRGl0dG8uCisgICAg
ICAgIChXZWJDb3JlOjpKU0J1aWx0aW5GdW5jdGlvbnM6OkpTQnVpbHRpbkZ1bmN0aW9ucyk6Cisg
ICAgICAgIChXZWJDb3JlOjpKU0J1aWx0aW5GdW5jdGlvbnM6Om5hdmlnYXRvclVzZXJNZWRpYUJ1
aWx0aW5zKToKKwogMjAxNS0xMS0wMiAgWW91ZW5uIEZhYmxldCAgPHlvdWVubi5mYWJsZXRAY3Jm
LmNhbm9uLmZyPgogCiAgICAgICAgIFJlbmFtZSBKU0RPTVdyYXBwZXIuaW1wbCB0byBKU0RPTVdy
YXBwZXIud3JhcHBlZApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvQ01ha2VMaXN0cy50eHQg
Yi9Tb3VyY2UvV2ViQ29yZS9DTWFrZUxpc3RzLnR4dAppbmRleCBjYWFkYjk1MDAxMzI1NmM5Y2Zl
NDBlNjM0MGI0MmQyZTJjZmY0MDNhLi42OTkxODViMmQ3NTk1MDA1MTBlZGNmYjc0ODljODcwYjI2
MDc0OWJkIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9DTWFrZUxpc3RzLnR4dAorKysgYi9T
b3VyY2UvV2ViQ29yZS9DTWFrZUxpc3RzLnR4dApAQCAtMjQxLDggKzI0MSw2IEBAIHNldChXZWJD
b3JlX05PTl9TVkdfSURMX0ZJTEVTCiAgICAgTW9kdWxlcy9tZWRpYXN0cmVhbS9OYXZpZ2F0b3JN
ZWRpYURldmljZXMuaWRsCiAgICAgTW9kdWxlcy9tZWRpYXN0cmVhbS9OYXZpZ2F0b3JVc2VyTWVk
aWEuaWRsCiAgICAgTW9kdWxlcy9tZWRpYXN0cmVhbS9OYXZpZ2F0b3JVc2VyTWVkaWFFcnJvci5p
ZGwKLSAgICBNb2R1bGVzL21lZGlhc3RyZWFtL05hdmlnYXRvclVzZXJNZWRpYUVycm9yQ2FsbGJh
Y2suaWRsCi0gICAgTW9kdWxlcy9tZWRpYXN0cmVhbS9OYXZpZ2F0b3JVc2VyTWVkaWFTdWNjZXNz
Q2FsbGJhY2suaWRsCiAgICAgTW9kdWxlcy9tZWRpYXN0cmVhbS9SVENDb25maWd1cmF0aW9uLmlk
bAogICAgIE1vZHVsZXMvbWVkaWFzdHJlYW0vUlRDRFRNRlNlbmRlci5pZGwKICAgICBNb2R1bGVz
L21lZGlhc3RyZWFtL1JUQ0RUTUZUb25lQ2hhbmdlRXZlbnQuaWRsCkBAIC0xMjAxLDcgKzExOTks
NiBAQCBzZXQoV2ViQ29yZV9TT1VSQ0VTCiAgICAgYmluZGluZ3MvanMvSlNNdXRhdGlvbkNhbGxi
YWNrLmNwcAogICAgIGJpbmRpbmdzL2pzL0pTTXV0YXRpb25PYnNlcnZlckN1c3RvbS5jcHAKICAg
ICBiaW5kaW5ncy9qcy9KU05hbWVkTm9kZU1hcEN1c3RvbS5jcHAKLSAgICBiaW5kaW5ncy9qcy9K
U05hdmlnYXRvckN1c3RvbS5jcHAKICAgICBiaW5kaW5ncy9qcy9KU05vZGVDdXN0b20uY3BwCiAg
ICAgYmluZGluZ3MvanMvSlNOb2RlRmlsdGVyQ3VzdG9tLmNwcAogICAgIGJpbmRpbmdzL2pzL0pT
Tm9kZUl0ZXJhdG9yQ3VzdG9tLmNwcApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvRGVyaXZl
ZFNvdXJjZXMubWFrZSBiL1NvdXJjZS9XZWJDb3JlL0Rlcml2ZWRTb3VyY2VzLm1ha2UKaW5kZXgg
ZGZkYTJmMjdmZmI5NzYwN2FiMGFjMzA2ZTY3NDZiOTg0OWU4MTk1NS4uNTI0MjVmODY1MDU5M2Iy
NmI1MTFkMDM2MjZhNTZkNWNhZDJkZmVjNSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvRGVy
aXZlZFNvdXJjZXMubWFrZQorKysgYi9Tb3VyY2UvV2ViQ29yZS9EZXJpdmVkU291cmNlcy5tYWtl
CkBAIC0xMzcsOCArMTM3LDYgQEAgTk9OX1NWR19CSU5ESU5HX0lETFMgPSBcCiAgICAgJChXZWJD
b3JlKS9Nb2R1bGVzL21lZGlhc3RyZWFtL05hdmlnYXRvck1lZGlhRGV2aWNlcy5pZGwgXAogICAg
ICQoV2ViQ29yZSkvTW9kdWxlcy9tZWRpYXN0cmVhbS9OYXZpZ2F0b3JVc2VyTWVkaWEuaWRsIFwK
ICAgICAkKFdlYkNvcmUpL01vZHVsZXMvbWVkaWFzdHJlYW0vTmF2aWdhdG9yVXNlck1lZGlhRXJy
b3IuaWRsIFwKLSAgICAkKFdlYkNvcmUpL01vZHVsZXMvbWVkaWFzdHJlYW0vTmF2aWdhdG9yVXNl
ck1lZGlhRXJyb3JDYWxsYmFjay5pZGwgXAotICAgICQoV2ViQ29yZSkvTW9kdWxlcy9tZWRpYXN0
cmVhbS9OYXZpZ2F0b3JVc2VyTWVkaWFTdWNjZXNzQ2FsbGJhY2suaWRsIFwKICAgICAkKFdlYkNv
cmUpL01vZHVsZXMvbWVkaWFzdHJlYW0vUlRDQ29uZmlndXJhdGlvbi5pZGwgXAogICAgICQoV2Vi
Q29yZSkvTW9kdWxlcy9tZWRpYXN0cmVhbS9SVENEVE1GU2VuZGVyLmlkbCBcCiAgICAgJChXZWJD
b3JlKS9Nb2R1bGVzL21lZGlhc3RyZWFtL1JUQ0RUTUZUb25lQ2hhbmdlRXZlbnQuaWRsIFwKQEAg
LTEyNTcsNiArMTI1NSw3IEBAIFdlYlJlcGxheUlucHV0cy5oIDogJChJTlBVVF9HRU5FUkFUT1Jf
U1BFQ0lGSUNBVElPTlMpICQoSU5QVVRfR0VORVJBVE9SX1NDUklQVFMpCiAKIFdlYkNvcmVfQlVJ
TFRJTlNfU09VUkNFUyA9IFwKICAgICAkKFdlYkNvcmUpL01vZHVsZXMvbWVkaWFzdHJlYW0vTWVk
aWFEZXZpY2VzLmpzIFwKKyAgICAkKFdlYkNvcmUpL01vZHVsZXMvbWVkaWFzdHJlYW0vTmF2aWdh
dG9yVXNlck1lZGlhLmpzIFwKICAgICAkKFdlYkNvcmUpL01vZHVsZXMvc3RyZWFtcy9CeXRlTGVu
Z3RoUXVldWluZ1N0cmF0ZWd5LmpzIFwKICAgICAkKFdlYkNvcmUpL01vZHVsZXMvc3RyZWFtcy9D
b3VudFF1ZXVpbmdTdHJhdGVneS5qcyBcCiAgICAgJChXZWJDb3JlKS9Nb2R1bGVzL3N0cmVhbXMv
UmVhZGFibGVTdHJlYW0uanMgXApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9t
ZWRpYXN0cmVhbS9OYXZpZ2F0b3JVc2VyTWVkaWEuaWRsIGIvU291cmNlL1dlYkNvcmUvTW9kdWxl
cy9tZWRpYXN0cmVhbS9OYXZpZ2F0b3JVc2VyTWVkaWEuaWRsCmluZGV4IDRjNjVjYjdhZTEyYzQz
YWE0YjM5NGZmM2QzZWY0YzlmOTE2NWY4NjUuLjNhYTQ5M2YwZjk1OWJhZDIyOWJlMWM5NGE4ZjEx
YmE1Mjk0NTE3YTAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvbWVkaWFzdHJl
YW0vTmF2aWdhdG9yVXNlck1lZGlhLmlkbAorKysgYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL21l
ZGlhc3RyZWFtL05hdmlnYXRvclVzZXJNZWRpYS5pZGwKQEAgLTIwLDggKzIwLDYgQEAKIFsKICAg
ICBDb25kaXRpb25hbD1NRURJQV9TVFJFQU0sCiBdIHBhcnRpYWwgaW50ZXJmYWNlIE5hdmlnYXRv
ciB7Ci0gICAgW0N1c3RvbSwgUmFpc2VzRXhjZXB0aW9uXSB2b2lkIHdlYmtpdEdldFVzZXJNZWRp
YShEaWN0aW9uYXJ5IG9wdGlvbnMsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgTmF2aWdhdG9yVXNlck1lZGlhU3VjY2Vzc0NhbGxiYWNrIHN1Y2Nlc3ND
YWxsYmFjaywKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICBvcHRpb25hbCBOYXZpZ2F0b3JVc2VyTWVkaWFFcnJvckNhbGxiYWNrIGVycm9yQ2FsbGJhY2sp
OworICAgIFtKU0J1aWx0aW5dIHZvaWQgd2Via2l0R2V0VXNlck1lZGlhKERpY3Rpb25hcnkgb2Jq
ZWN0LCBhbnkgc3VjY2Vzc0NhbGxiYWNrLCBhbnkgZXJyb3JDYWxsYmFjayk7CiB9OwogCmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL21lZGlhc3RyZWFtL05hdmlnYXRvclVzZXJN
ZWRpYS5qcyBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvbWVkaWFzdHJlYW0vTmF2aWdhdG9yVXNl
ck1lZGlhLmpzCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAuLjk1NzlhYzYzNWE3M2I0ZmE0Mjg5YzUxYzMxMjNlYzUxZjQx
ODQ1ZDUKLS0tIC9kZXYvbnVsbAorKysgYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL21lZGlhc3Ry
ZWFtL05hdmlnYXRvclVzZXJNZWRpYS5qcwpAQCAtMCwwICsxLDQ2IEBACisvKgorICogQ29weXJp
Z2h0IChDKSAyMDE1IENhbm9uIEluYy4KKyAqCisgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGlu
IHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKKyAqIG1vZGlmaWNhdGlv
biwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucwor
ICogYXJlIG1ldDoKKyAqIDEuIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJl
dGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25k
aXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisgKiAyLiBSZWRpc3RyaWJ1dGlv
bnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAorICog
ICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNj
bGFpbWVyIGluIHRoZQorICogICAgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxz
IHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KKyAqCisgKiBUSElTIFNPRlRXQVJFIElT
IFBST1ZJREVEIEJZIEFQUExFIElOQy4gYGBBUyBJUycnIEFORCBBTlkKKyAqIEVYUFJFU1MgT1Ig
SU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgVEhFCisg
KiBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBB
IFBBUlRJQ1VMQVIKKyAqIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuICBJTiBOTyBFVkVOVCBTSEFM
TCBBUFBMRSBJTkMuIE9SCisgKiBDT05UUklCVVRPUlMgQkUgTElBQkxFIEZPUiBBTlkgRElSRUNU
LCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwKKyAqIEVYRU1QTEFSWSwgT1IgQ09OU0VR
VUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywKKyAqIFBST0NV
UkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLCBEQVRB
LCBPUgorICogUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNF
RCBBTkQgT04gQU5ZIFRIRU9SWQorICogT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNU
LCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUCisgKiAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1Ig
T1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UKKyAqIE9GIFRISVMg
U09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1B
R0UuCisgKi8KKworZnVuY3Rpb24gd2Via2l0R2V0VXNlck1lZGlhKG9wdGlvbnMsIHN1Y2Nlc3ND
YWxsYmFjaywgZXJyb3JDYWxsYmFjaykKK3sKKyAgICAidXNlIHN0cmljdCI7CisKKyAgICAvLyBG
SVhNRTogV2Ugc2hvdWxkIHJhaXNlIGEgRE9NIHVuc3VwcG9ydGVkIGV4Y2VwdGlvbiBpZiB0aGVy
ZSBpcyBubyBuYXZpZ2F0b3IgYW5kIHByb3Blcmx5IGRldGVjdCB3aGV0aGVyIG1ldGhvZCBpcyBu
b3QgY2FsbGVkIG9uIGEgTmF2aWdhdG9yIG9iamVjdC4KKyAgICBpZiAoISh0aGlzLm1lZGlhRGV2
aWNlcyAmJiB0aGlzLm1lZGlhRGV2aWNlcy5AZ2V0VXNlck1lZGlhRnJvbUpTKSkKKyAgICAgICAg
dGhyb3cgbmV3IEBUeXBlRXJyb3IoIlRoZSBpbXBsZW1lbnRhdGlvbiBkaWQgbm90IHN1cHBvcnQg
dGhlIHJlcXVlc3RlZCB0eXBlIG9mIG9iamVjdCBvciBvcGVyYXRpb24uIik7CisKKyAgICBpZiAo
YXJndW1lbnRzLmxlbmd0aCA8IDMpCisgICAgICAgIHRocm93IG5ldyBAVHlwZUVycm9yKCJOb3Qg
ZW5vdWdoIGFyZ3VtZW50cyIpOworCisgICAgaWYgKG9wdGlvbnMgIT09IE9iamVjdChvcHRpb25z
KSkKKyAgICAgICAgdGhyb3cgbmV3IEBUeXBlRXJyb3IoIkFyZ3VtZW50IDEgKG9wdGlvbnMpIHRv
IE5hdmlnYXRvci53ZWJraXRHZXRVc2VyTWVkaWEgbXVzdCBiZSBhbiBvYmplY3QiKTsKKworICAg
IGlmICh0eXBlb2Ygc3VjY2Vzc0NhbGxiYWNrICE9PSAiZnVuY3Rpb24iKQorICAgICAgICB0aHJv
dyBuZXcgQFR5cGVFcnJvcigiQXJndW1lbnQgMiAoJ3N1Y2Nlc3NDYWxsYmFjaycpIHRvIE5hdmln
YXRvci53ZWJraXRHZXRVc2VyTWVkaWEgbXVzdCBiZSBhIGZ1bmN0aW9uIik7CisgICAgaWYgKHR5
cGVvZiBlcnJvckNhbGxiYWNrICE9PSAiZnVuY3Rpb24iKQorICAgICAgICB0aHJvdyBuZXcgQFR5
cGVFcnJvcigiQXJndW1lbnQgMyAoJ2Vycm9yQ2FsbGJhY2snKSB0byBOYXZpZ2F0b3Iud2Via2l0
R2V0VXNlck1lZGlhIG11c3QgYmUgYSBmdW5jdGlvbiIpOworCisgICAgdGhpcy5tZWRpYURldmlj
ZXMuQGdldFVzZXJNZWRpYUZyb21KUyhvcHRpb25zKS50aGVuKHN1Y2Nlc3NDYWxsYmFjaywgZXJy
b3JDYWxsYmFjayk7Cit9CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL21lZGlh
c3RyZWFtL05hdmlnYXRvclVzZXJNZWRpYUVycm9yQ2FsbGJhY2suaCBiL1NvdXJjZS9XZWJDb3Jl
L01vZHVsZXMvbWVkaWFzdHJlYW0vTmF2aWdhdG9yVXNlck1lZGlhRXJyb3JDYWxsYmFjay5oCmRl
bGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCBkZDNjOGIzMmI2ZWM3YzgwNjFkNjI0MjExM2U5
ZDA4NjQxZjVhYTA5Li4wMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwCi0t
LSBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvbWVkaWFzdHJlYW0vTmF2aWdhdG9yVXNlck1lZGlh
RXJyb3JDYWxsYmFjay5oCisrKyAvZGV2L251bGwKQEAgLTEsNDUgKzAsMCBAQAotLyoKLSAqIENv
cHlyaWdodCAoQykgMjAxMSBHb29nbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgotICoKLSAq
IFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGgg
b3Igd2l0aG91dAotICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQg
dGhlIGZvbGxvd2luZyBjb25kaXRpb25zCi0gKiBhcmUgbWV0OgotICogMS4gIFJlZGlzdHJpYnV0
aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0Ci0gKiAg
ICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNj
bGFpbWVyLgotICogMi4gIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJv
ZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0Ci0gKiAgICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29u
ZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQotICogICAgIGRvY3Vt
ZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmli
dXRpb24uCi0gKgotICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBBUFBMRSBJTkMuIEFO
RCBJVFMgQ09OVFJJQlVUT1JTIGBgQVMgSVMnJyBBTkQgQU5ZCi0gKiBFWFBSRVNTIE9SIElNUExJ
RUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFRIRSBJTVBMSUVE
Ci0gKiBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJU
SUNVTEFSIFBVUlBPU0UgQVJFCi0gKiBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBBUFBM
RSBJTkMuIE9SIElUUyBDT05UUklCVVRPUlMgQkUgTElBQkxFIEZPUiBBTlkKLSAqIERJUkVDVCwg
SU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElB
TCBEQU1BR0VTCi0gKiAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5U
IE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7Ci0gKiBMT1NTIE9GIFVTRSwgREFUQSwg
T1IgUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQg
T04KLSAqIEFOWSBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJ
Q1QgTElBQklMSVRZLCBPUiBUT1JUCi0gKiAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJX
SVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UgT0YgVEhJUwotICogU09GVFdB
UkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCi0g
Ki8KLQotI2lmbmRlZiBOYXZpZ2F0b3JVc2VyTWVkaWFFcnJvckNhbGxiYWNrX2gKLSNkZWZpbmUg
TmF2aWdhdG9yVXNlck1lZGlhRXJyb3JDYWxsYmFja19oCi0KLSNpZiBFTkFCTEUoTUVESUFfU1RS
RUFNKQotCi0jaW5jbHVkZSAiTmF2aWdhdG9yVXNlck1lZGlhRXJyb3IuaCIKLSNpbmNsdWRlIDx3
dGYvUmVmQ291bnRlZC5oPgotCi1uYW1lc3BhY2UgV2ViQ29yZSB7Ci0KLWNsYXNzIE5hdmlnYXRv
clVzZXJNZWRpYUVycm9yQ2FsbGJhY2sgOiBwdWJsaWMgUmVmQ291bnRlZDxOYXZpZ2F0b3JVc2Vy
TWVkaWFFcnJvckNhbGxiYWNrPiB7Ci1wdWJsaWM6Ci0gICAgdmlydHVhbCB+TmF2aWdhdG9yVXNl
ck1lZGlhRXJyb3JDYWxsYmFjaygpIHsgfQotICAgIHZpcnR1YWwgYm9vbCBoYW5kbGVFdmVudChO
YXZpZ2F0b3JVc2VyTWVkaWFFcnJvciopID0gMDsKLX07Ci0KLX0gLy8gbmFtZXNwYWNlIFdlYkNv
cmUKLQotI2VuZGlmIC8vIEVOQUJMRShNRURJQV9TVFJFQU0pCi0KLSNlbmRpZiAvLyBOYXZpZ2F0
b3JVc2VyTWVkaWFFcnJvckNhbGxiYWNrX2gKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL01v
ZHVsZXMvbWVkaWFzdHJlYW0vTmF2aWdhdG9yVXNlck1lZGlhRXJyb3JDYWxsYmFjay5pZGwgYi9T
b3VyY2UvV2ViQ29yZS9Nb2R1bGVzL21lZGlhc3RyZWFtL05hdmlnYXRvclVzZXJNZWRpYUVycm9y
Q2FsbGJhY2suaWRsCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCBmMGFjN2RkMWJmOWEz
ZmUyZDJmY2YyMDEzZDY2MDQ3Y2VmM2M2ZmQxLi4wMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwCi0tLSBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvbWVkaWFzdHJlYW0vTmF2
aWdhdG9yVXNlck1lZGlhRXJyb3JDYWxsYmFjay5pZGwKKysrIC9kZXYvbnVsbApAQCAtMSwzMSAr
MCwwIEBACi0vKgotICogQ29weXJpZ2h0IChDKSAyMDExIEdvb2dsZSBJbmMuIEFsbCByaWdodHMg
cmVzZXJ2ZWQuCi0gKgotICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJp
bmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0Ci0gKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0
ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKLSAqIGFyZSBtZXQ6Ci0g
KiAxLiAgUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92
ZSBjb3B5cmlnaHQKLSAqICAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0
aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCi0gKiAyLiAgUmVkaXN0cmlidXRpb25zIGluIGJpbmFy
eSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKLSAqICAgICBub3RpY2Us
IHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4g
dGhlCi0gKiAgICAgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVk
IHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KLSAqCi0gKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVE
IEJZIEFQUExFIElOQy4gQU5EIElUUyBDT05UUklCVVRPUlMgYGBBUyBJUycnIEFORCBBTlkKLSAq
IEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRF
RCBUTywgVEhFIElNUExJRUQKLSAqIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBG
SVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBUkUKLSAqIERJU0NMQUlNRUQuIElOIE5P
IEVWRU5UIFNIQUxMIEFQUExFIElOQy4gT1IgSVRTIENPTlRSSUJVVE9SUyBCRSBMSUFCTEUgRk9S
IEFOWQotICogRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZ
LCBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMKLSAqIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRF
RCBUTywgUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsKLSAqIExP
U1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhP
V0VWRVIgQ0FVU0VEIEFORCBPTgotICogQU5ZIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIg
SU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQKLSAqIChJTkNMVURJTkcgTkVH
TElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRSBP
RiBUSElTCi0gKiBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBP
RiBTVUNIIERBTUFHRS4KLSAqLwotCi1bCi0gICAgQ29uZGl0aW9uYWw9TUVESUFfU1RSRUFNLAot
ICAgIENhbGxiYWNrPUZ1bmN0aW9uT25seSwKLV0gY2FsbGJhY2sgaW50ZXJmYWNlIE5hdmlnYXRv
clVzZXJNZWRpYUVycm9yQ2FsbGJhY2sgewotICAgIGJvb2xlYW4gaGFuZGxlRXZlbnQoTmF2aWdh
dG9yVXNlck1lZGlhRXJyb3IgZXJyb3IpOwotfTsKLQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNv
cmUvTW9kdWxlcy9tZWRpYXN0cmVhbS9OYXZpZ2F0b3JVc2VyTWVkaWFTdWNjZXNzQ2FsbGJhY2su
aCBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvbWVkaWFzdHJlYW0vTmF2aWdhdG9yVXNlck1lZGlh
U3VjY2Vzc0NhbGxiYWNrLmgKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDlmNDU2ZWFk
YzZhZTQ5NDE4NmNmMDdjNmUyYTUyZTA0NzYzZjk5OTAuLjAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAKLS0tIGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9tZWRpYXN0cmVh
bS9OYXZpZ2F0b3JVc2VyTWVkaWFTdWNjZXNzQ2FsbGJhY2suaAorKysgL2Rldi9udWxsCkBAIC0x
LDQ2ICswLDAgQEAKLS8qCi0gKiBDb3B5cmlnaHQgKEMpIDIwMTEgR29vZ2xlIEluYy4gQWxsIHJp
Z2h0cyByZXNlcnZlZC4KLSAqCi0gKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBh
bmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKLSAqIG1vZGlmaWNhdGlvbiwgYXJlIHBl
cm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucwotICogYXJlIG1l
dDoKLSAqIDEuICBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhl
IGFib3ZlIGNvcHlyaWdodAotICogICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMg
YW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KLSAqIDIuICBSZWRpc3RyaWJ1dGlvbnMgaW4g
YmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAotICogICAgIG5v
dGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1l
ciBpbiB0aGUKLSAqICAgICBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJv
dmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgotICoKLSAqIFRISVMgU09GVFdBUkUgSVMgUFJP
VklERUQgQlkgQVBQTEUgSU5DLiBBTkQgSVRTIENPTlRSSUJVVE9SUyBgYEFTIElTJycgQU5EIEFO
WQotICogRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBM
SU1JVEVEIFRPLCBUSEUgSU1QTElFRAotICogV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkg
QU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFSRQotICogRElTQ0xBSU1FRC4g
SU4gTk8gRVZFTlQgU0hBTEwgQVBQTEUgSU5DLiBPUiBJVFMgQ09OVFJJQlVUT1JTIEJFIExJQUJM
RSBGT1IgQU5ZCi0gKiBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVN
UExBUlksIE9SIENPTlNFUVVFTlRJQUwgREFNQUdFUwotICogKElOQ0xVRElORywgQlVUIE5PVCBM
SU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOwot
ICogTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElP
TikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OCi0gKiBBTlkgVEhFT1JZIE9GIExJQUJJTElUWSwgV0hF
VEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVAotICogKElOQ0xVRElO
RyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUg
VVNFIE9GIFRISVMKLSAqIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklM
SVRZIE9GIFNVQ0ggREFNQUdFLgotICovCi0KLSNpZm5kZWYgTmF2aWdhdG9yVXNlck1lZGlhU3Vj
Y2Vzc0NhbGxiYWNrX2gKLSNkZWZpbmUgTmF2aWdhdG9yVXNlck1lZGlhU3VjY2Vzc0NhbGxiYWNr
X2gKLQotI2lmIEVOQUJMRShNRURJQV9TVFJFQU0pCi0KLSNpbmNsdWRlIDx3dGYvUmVmQ291bnRl
ZC5oPgotCi1uYW1lc3BhY2UgV2ViQ29yZSB7Ci0KLWNsYXNzIE1lZGlhU3RyZWFtOwotCi1jbGFz
cyBOYXZpZ2F0b3JVc2VyTWVkaWFTdWNjZXNzQ2FsbGJhY2sgOiBwdWJsaWMgUmVmQ291bnRlZDxO
YXZpZ2F0b3JVc2VyTWVkaWFTdWNjZXNzQ2FsbGJhY2s+IHsKLXB1YmxpYzoKLSAgICB2aXJ0dWFs
IH5OYXZpZ2F0b3JVc2VyTWVkaWFTdWNjZXNzQ2FsbGJhY2soKSB7IH0KLSAgICB2aXJ0dWFsIGJv
b2wgaGFuZGxlRXZlbnQoTWVkaWFTdHJlYW0qKSA9IDA7Ci19OwotCi19IC8vIG5hbWVzcGFjZSBX
ZWJDb3JlCi0KLSNlbmRpZiAvLyBFTkFCTEUoTUVESUFfU1RSRUFNKQotCi0jZW5kaWYgLy8gTmF2
aWdhdG9yVXNlck1lZGlhU3VjY2Vzc0NhbGxiYWNrX2gKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJD
b3JlL01vZHVsZXMvbWVkaWFzdHJlYW0vTmF2aWdhdG9yVXNlck1lZGlhU3VjY2Vzc0NhbGxiYWNr
LmlkbCBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvbWVkaWFzdHJlYW0vTmF2aWdhdG9yVXNlck1l
ZGlhU3VjY2Vzc0NhbGxiYWNrLmlkbApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMmQx
OTBjZjJlYjE5MjIwOTU4YThjZThiY2JmNzhkMzQ0Y2ZkMmU1MC4uMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL21lZGlh
c3RyZWFtL05hdmlnYXRvclVzZXJNZWRpYVN1Y2Nlc3NDYWxsYmFjay5pZGwKKysrIC9kZXYvbnVs
bApAQCAtMSwzMSArMCwwIEBACi0vKgotICogQ29weXJpZ2h0IChDKSAyMDExIEdvb2dsZSBJbmMu
IEFsbCByaWdodHMgcmVzZXJ2ZWQuCi0gKgotICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBz
b3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0Ci0gKiBtb2RpZmljYXRpb24s
IGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKLSAq
IGFyZSBtZXQ6Ci0gKiAxLiAgUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0
YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKLSAqICAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25k
aXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCi0gKiAyLiAgUmVkaXN0cmlidXRp
b25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKLSAq
ICAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRp
c2NsYWltZXIgaW4gdGhlCi0gKiAgICAgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJp
YWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KLSAqCi0gKiBUSElTIFNPRlRXQVJF
IElTIFBST1ZJREVEIEJZIEFQUExFIElOQy4gQU5EIElUUyBDT05UUklCVVRPUlMgYGBBUyBJUycn
IEFORCBBTlkKLSAqIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJV
VCBOT1QgTElNSVRFRCBUTywgVEhFIElNUExJRUQKLSAqIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRB
QklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBUkUKLSAqIERJU0NM
QUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIEFQUExFIElOQy4gT1IgSVRTIENPTlRSSUJVVE9SUyBC
RSBMSUFCTEUgRk9SIEFOWQotICogRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lB
TCwgRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMKLSAqIChJTkNMVURJTkcsIEJV
VCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUiBTRVJW
SUNFUzsKLSAqIExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRF
UlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTgotICogQU5ZIFRIRU9SWSBPRiBMSUFCSUxJ
VFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQKLSAqIChJ
TkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQg
T0YgVEhFIFVTRSBPRiBUSElTCi0gKiBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQ
T1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KLSAqLwotCi1bCi0gICAgQ29uZGl0aW9uYWw9TUVE
SUFfU1RSRUFNLAotICAgIENhbGxiYWNrPUZ1bmN0aW9uT25seSwKLV0gY2FsbGJhY2sgaW50ZXJm
YWNlIE5hdmlnYXRvclVzZXJNZWRpYVN1Y2Nlc3NDYWxsYmFjayB7Ci0gICAgYm9vbGVhbiBoYW5k
bGVFdmVudChNZWRpYVN0cmVhbSBzdHJlYW0pOwotfTsKLQpkaWZmIC0tZ2l0IGEvU291cmNlL1dl
YkNvcmUvTW9kdWxlcy9tZWRpYXN0cmVhbS9Vc2VyTWVkaWFSZXF1ZXN0LmNwcCBiL1NvdXJjZS9X
ZWJDb3JlL01vZHVsZXMvbWVkaWFzdHJlYW0vVXNlck1lZGlhUmVxdWVzdC5jcHAKaW5kZXggYzNm
MzM4MGZhYmJmYmUxNWMzMTYyZjNiNzNkNzQ2YmVhYTY3N2ZhMy4uZDNmYzNiZmFhN2UyOWE4YTMx
ZDc3MTM5Y2FjYjc5Y2RhNDNlODcxNyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvTW9kdWxl
cy9tZWRpYXN0cmVhbS9Vc2VyTWVkaWFSZXF1ZXN0LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9N
b2R1bGVzL21lZGlhc3RyZWFtL1VzZXJNZWRpYVJlcXVlc3QuY3BwCkBAIC00Nyw4ICs0Nyw2IEBA
CiAjaW5jbHVkZSAiTWVkaWFDb25zdHJhaW50c0ltcGwuaCIKICNpbmNsdWRlICJNZWRpYVN0cmVh
bS5oIgogI2luY2x1ZGUgIk1lZGlhU3RyZWFtUHJpdmF0ZS5oIgotI2luY2x1ZGUgIk5hdmlnYXRv
clVzZXJNZWRpYUVycm9yQ2FsbGJhY2suaCIKLSNpbmNsdWRlICJOYXZpZ2F0b3JVc2VyTWVkaWFT
dWNjZXNzQ2FsbGJhY2suaCIKICNpbmNsdWRlICJSZWFsdGltZU1lZGlhU291cmNlQ2VudGVyLmgi
CiAjaW5jbHVkZSAiU2VjdXJpdHlPcmlnaW4uaCIKICNpbmNsdWRlICJVc2VyTWVkaWFDb250cm9s
bGVyLmgiCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL21lZGlhc3RyZWFtL1Vz
ZXJNZWRpYVJlcXVlc3QuaCBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvbWVkaWFzdHJlYW0vVXNl
ck1lZGlhUmVxdWVzdC5oCmluZGV4IGRkMjAxMTNjYWM1NWQ3MTRlM2RjMjUzNTE0YWI0MDNlNzI2
MzgyMTYuLmVjZWE1OWE2Y2E2Y2U3YjM0MWNkYzA3NDcxYWFmMjQ5ZTJiZTUxNjcgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvbWVkaWFzdHJlYW0vVXNlck1lZGlhUmVxdWVzdC5o
CisrKyBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvbWVkaWFzdHJlYW0vVXNlck1lZGlhUmVxdWVz
dC5oCkBAIC00OSw4ICs0OSw2IEBAIGNsYXNzIERvY3VtZW50OwogY2xhc3MgRnJhbWU7CiBjbGFz
cyBNZWRpYUNvbnN0cmFpbnRzOwogY2xhc3MgTWVkaWFTdHJlYW1Qcml2YXRlOwotY2xhc3MgTmF2
aWdhdG9yVXNlck1lZGlhRXJyb3JDYWxsYmFjazsKLWNsYXNzIE5hdmlnYXRvclVzZXJNZWRpYVN1
Y2Nlc3NDYWxsYmFjazsKIGNsYXNzIFVzZXJNZWRpYUNvbnRyb2xsZXI7CiBjbGFzcyBTZWN1cml0
eU9yaWdpbjsKIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvV2ViQ29yZS54Y29kZXByb2ov
cHJvamVjdC5wYnhwcm9qIGIvU291cmNlL1dlYkNvcmUvV2ViQ29yZS54Y29kZXByb2ovcHJvamVj
dC5wYnhwcm9qCmluZGV4IGVmNzkzZTExMmViNTdlY2VkMjQ2ZGVjNGMzYzZiNWVjNjBiMDQxOGEu
Ljc5OGY3MWQyMjIyYjY4Y2Y2OTRhZTE1MmZmMDI2YjNmYWE4ZWEzZWYgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9XZWJDb3JlL1dlYkNvcmUueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvagorKysgYi9Tb3Vy
Y2UvV2ViQ29yZS9XZWJDb3JlLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2oKQEAgLTE1Myw3ICsx
NTMsNiBAQAogCQkwNzM3OTRFMjE5RUUyRDFCMDBFNUEwNDUgLyogTWVkaWFDb25zdHJhaW50c01v
Y2suaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDA3Mzc5
NEUwMTlFRTJEMUIwMEU1QTA0NSAvKiBNZWRpYUNvbnN0cmFpbnRzTW9jay5oICovOyB9OwogCQkw
NzM3OTRFNTE5RUUyRkYyMDBFNUEwNDUgLyogSlNSVENDb25maWd1cmF0aW9uLmNwcCBpbiBTb3Vy
Y2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDA3Mzc5NEUzMTlFRTJGRjIw
MEU1QTA0NSAvKiBKU1JUQ0NvbmZpZ3VyYXRpb24uY3BwICovOyB9OwogCQkwNzM3OTRFNjE5RUUy
RkYyMDBFNUEwNDUgLyogSlNSVENDb25maWd1cmF0aW9uLmggaW4gSGVhZGVycyAqLyA9IHtpc2Eg
PSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAwNzM3OTRFNDE5RUUyRkYyMDBFNUEwNDUgLyogSlNS
VENDb25maWd1cmF0aW9uLmggKi87IH07Ci0JCTA3Mzc5NEU4MTlFRTMzNUMwMEU1QTA0NSAvKiBK
U05hdmlnYXRvckN1c3RvbS5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7
IGZpbGVSZWYgPSAwNzM3OTRFNzE5RUUzMzVDMDBFNUEwNDUgLyogSlNOYXZpZ2F0b3JDdXN0b20u
Y3BwICovOyB9OwogCQkwNzM3OTRFQjE5RUUzNDFFMDBFNUEwNDUgLyogSlNSVENJY2VTZXJ2ZXIu
Y3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMDczNzk0
RTkxOUVFMzQxRTAwRTVBMDQ1IC8qIEpTUlRDSWNlU2VydmVyLmNwcCAqLzsgfTsKIAkJMDczNzk0
RUMxOUVFMzQxRTAwRTVBMDQ1IC8qIEpTUlRDSWNlU2VydmVyLmggaW4gSGVhZGVycyAqLyA9IHtp
c2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAwNzM3OTRFQTE5RUUzNDFFMDBFNUEwNDUgLyog
SlNSVENJY2VTZXJ2ZXIuaCAqLzsgfTsKIAkJMDczNzk0RjExOUVFMzdCQjAwRTVBMDQ1IC8qIFJU
Q1BlZXJDb25uZWN0aW9uSGFuZGxlck1vY2suY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJY
QnVpbGRGaWxlOyBmaWxlUmVmID0gMDczNzk0RUYxOUVFMzdCQjAwRTVBMDQ1IC8qIFJUQ1BlZXJD
b25uZWN0aW9uSGFuZGxlck1vY2suY3BwICovOyB9OwpAQCAtMTczLDEwICsxNzIsNiBAQAogCQkw
NzNCRTM0MTE3RDE3RTAxMDAyQkQ0MzEgLyogSlNOYXZpZ2F0b3JVc2VyTWVkaWEuaCBpbiBIZWFk
ZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDA3M0JFMzNGMTdEMTdFMDEw
MDJCRDQzMSAvKiBKU05hdmlnYXRvclVzZXJNZWRpYS5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJV
VEVTID0gKFByaXZhdGUsICk7IH07IH07CiAJCTA3M0JFMzQ4MTdEMTdFN0EwMDJCRDQzMSAvKiBK
U05hdmlnYXRvclVzZXJNZWRpYUVycm9yLmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1
aWxkRmlsZTsgZmlsZVJlZiA9IDA3M0JFMzQyMTdEMTdFN0EwMDJCRDQzMSAvKiBKU05hdmlnYXRv
clVzZXJNZWRpYUVycm9yLmNwcCAqLzsgfTsKIAkJMDczQkUzNDkxN0QxN0U3QTAwMkJENDMxIC8q
IEpTTmF2aWdhdG9yVXNlck1lZGlhRXJyb3IuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1
aWxkRmlsZTsgZmlsZVJlZiA9IDA3M0JFMzQzMTdEMTdFN0EwMDJCRDQzMSAvKiBKU05hdmlnYXRv
clVzZXJNZWRpYUVycm9yLmggKi87IH07Ci0JCTA3M0JFMzRBMTdEMTdFN0EwMDJCRDQzMSAvKiBK
U05hdmlnYXRvclVzZXJNZWRpYUVycm9yQ2FsbGJhY2suY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNh
ID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMDczQkUzNDQxN0QxN0U3QTAwMkJENDMxIC8qIEpT
TmF2aWdhdG9yVXNlck1lZGlhRXJyb3JDYWxsYmFjay5jcHAgKi87IH07Ci0JCTA3M0JFMzRCMTdE
MTdFN0EwMDJCRDQzMSAvKiBKU05hdmlnYXRvclVzZXJNZWRpYUVycm9yQ2FsbGJhY2suaCBpbiBI
ZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDA3M0JFMzQ1MTdEMTdF
N0EwMDJCRDQzMSAvKiBKU05hdmlnYXRvclVzZXJNZWRpYUVycm9yQ2FsbGJhY2suaCAqLzsgfTsK
LQkJMDczQkUzNEMxN0QxN0U3QTAwMkJENDMxIC8qIEpTTmF2aWdhdG9yVXNlck1lZGlhU3VjY2Vz
c0NhbGxiYWNrLmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJl
ZiA9IDA3M0JFMzQ2MTdEMTdFN0EwMDJCRDQzMSAvKiBKU05hdmlnYXRvclVzZXJNZWRpYVN1Y2Nl
c3NDYWxsYmFjay5jcHAgKi87IH07Ci0JCTA3M0JFMzREMTdEMTdFN0EwMDJCRDQzMSAvKiBKU05h
dmlnYXRvclVzZXJNZWRpYVN1Y2Nlc3NDYWxsYmFjay5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0g
UEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMDczQkUzNDcxN0QxN0U3QTAwMkJENDMxIC8qIEpTTmF2
aWdhdG9yVXNlck1lZGlhU3VjY2Vzc0NhbGxiYWNrLmggKi87IH07CiAJCTA3M0JFMzRFMTdEMTgw
QjIwMDJCRDQzMSAvKiBSVENTZXNzaW9uRGVzY3JpcHRpb25EZXNjcmlwdG9yLmNwcCBpbiBTb3Vy
Y2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDA3MjIxQkFCMTdDRjBBRDQw
MDg0OEU1MSAvKiBSVENTZXNzaW9uRGVzY3JpcHRpb25EZXNjcmlwdG9yLmNwcCAqLzsgfTsKIAkJ
MDczQkUzNEYxN0QxODE4MzAwMkJENDMxIC8qIFJUQ0ljZUNhbmRpZGF0ZURlc2NyaXB0b3IuY3Bw
IGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMDcyMjFCQTYx
N0NGMEFENDAwODQ4RTUxIC8qIFJUQ0ljZUNhbmRpZGF0ZURlc2NyaXB0b3IuY3BwICovOyB9Owog
CQkwNzNCRTM1MDE3RDE4MUE2MDAyQkQ0MzEgLyogUlRDUGVlckNvbm5lY3Rpb25IYW5kbGVyLmNw
cCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDA3MjIxQkE4
MTdDRjBBRDQwMDg0OEU1MSAvKiBSVENQZWVyQ29ubmVjdGlvbkhhbmRsZXIuY3BwICovOyB9OwpA
QCAtMjQwLDggKzIzNSw2IEBACiAJCTA3OEUwOTE4MTdEMTREMUMwMDQyMEFBMSAvKiBNZWRpYVN0
cmVhbVRyYWNrLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYg
PSAwNzIyMUI1NTE3Q0VDMzI3MDA4NDhFNTEgLyogTWVkaWFTdHJlYW1UcmFjay5oICovOyB9Owog
CQkwNzhFMDkxOTE3RDE0RDFDMDA0MjBBQTEgLyogTWVkaWFTdHJlYW1UcmFja0V2ZW50LmggaW4g
SGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAwNzIyMUI1ODE3Q0VD
MzI3MDA4NDhFNTEgLyogTWVkaWFTdHJlYW1UcmFja0V2ZW50LmggKi87IHNldHRpbmdzID0ge0FU
VFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKIAkJMDc4RTA5MUIxN0QxNEQxQzAwNDIwQUEx
IC8qIE5hdmlnYXRvclVzZXJNZWRpYUVycm9yLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhC
dWlsZEZpbGU7IGZpbGVSZWYgPSAwNzIyMUI1RDE3Q0VDMzI3MDA4NDhFNTEgLyogTmF2aWdhdG9y
VXNlck1lZGlhRXJyb3IuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCAp
OyB9OyB9OwotCQkwNzhFMDkxQzE3RDE0RDFDMDA0MjBBQTEgLyogTmF2aWdhdG9yVXNlck1lZGlh
RXJyb3JDYWxsYmFjay5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxl
UmVmID0gMDcyMjFCNUYxN0NFQzMyNzAwODQ4RTUxIC8qIE5hdmlnYXRvclVzZXJNZWRpYUVycm9y
Q2FsbGJhY2suaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9
OwotCQkwNzhFMDkxRDE3RDE0RDFDMDA0MjBBQTEgLyogTmF2aWdhdG9yVXNlck1lZGlhU3VjY2Vz
c0NhbGxiYWNrLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYg
PSAwNzIyMUI2MTE3Q0VDMzI3MDA4NDhFNTEgLyogTmF2aWdhdG9yVXNlck1lZGlhU3VjY2Vzc0Nh
bGxiYWNrLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsK
IAkJMDc4RTA5MUUxN0QxNEQxQzAwNDIwQUExIC8qIFJUQ0RhdGFDaGFubmVsLmggaW4gSGVhZGVy
cyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAwNzIyMUI2NDE3Q0VDMzI3MDA4
NDhFNTEgLyogUlRDRGF0YUNoYW5uZWwuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQ
cml2YXRlLCApOyB9OyB9OwogCQkwNzhFMDkxRjE3RDE0RDFDMDA0MjBBQTEgLyogUlRDRGF0YUNo
YW5uZWxFdmVudC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVm
ID0gMDcyMjFCNjcxN0NFQzMyNzAwODQ4RTUxIC8qIFJUQ0RhdGFDaGFubmVsRXZlbnQuaCAqLzsg
c2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OwogCQkwNzhFMDkyMDE3
RDE0RDFDMDA0MjBBQTEgLyogUlRDRFRNRlNlbmRlci5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0g
UEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMDcyMjFCNkExN0NFQzMyNzAwODQ4RTUxIC8qIFJUQ0RU
TUZTZW5kZXIuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9
OwpAQCAtNzM1OCwxMCArNzM1MSw2IEBACiAJCTA3MjIxQjVDMTdDRUMzMjcwMDg0OEU1MSAvKiBO
YXZpZ2F0b3JVc2VyTWVkaWEuaWRsICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVF
bmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gdGV4dDsgcGF0aCA9IE5hdmlnYXRvclVz
ZXJNZWRpYS5pZGw7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTA3MjIxQjVEMTdDRUMz
MjcwMDg0OEU1MSAvKiBOYXZpZ2F0b3JVc2VyTWVkaWFFcnJvci5oICovID0ge2lzYSA9IFBCWEZp
bGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNl
Y29kZS5jLmg7IHBhdGggPSBOYXZpZ2F0b3JVc2VyTWVkaWFFcnJvci5oOyBzb3VyY2VUcmVlID0g
Ijxncm91cD4iOyB9OwogCQkwNzIyMUI1RTE3Q0VDMzI3MDA4NDhFNTEgLyogTmF2aWdhdG9yVXNl
ck1lZGlhRXJyb3IuaWRsICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGlu
ZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gdGV4dDsgcGF0aCA9IE5hdmlnYXRvclVzZXJNZWRp
YUVycm9yLmlkbDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKLQkJMDcyMjFCNUYxN0NFQzMy
NzAwODQ4RTUxIC8qIE5hdmlnYXRvclVzZXJNZWRpYUVycm9yQ2FsbGJhY2suaCAqLyA9IHtpc2Eg
PSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9
IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gTmF2aWdhdG9yVXNlck1lZGlhRXJyb3JDYWxsYmFjay5o
OyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwotCQkwNzIyMUI2MDE3Q0VDMzI3MDA4NDhFNTEg
LyogTmF2aWdhdG9yVXNlck1lZGlhRXJyb3JDYWxsYmFjay5pZGwgKi8gPSB7aXNhID0gUEJYRmls
ZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSB0ZXh0OyBw
YXRoID0gTmF2aWdhdG9yVXNlck1lZGlhRXJyb3JDYWxsYmFjay5pZGw7IHNvdXJjZVRyZWUgPSAi
PGdyb3VwPiI7IH07Ci0JCTA3MjIxQjYxMTdDRUMzMjcwMDg0OEU1MSAvKiBOYXZpZ2F0b3JVc2Vy
TWVkaWFTdWNjZXNzQ2FsbGJhY2suaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxl
RW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0g
TmF2aWdhdG9yVXNlck1lZGlhU3VjY2Vzc0NhbGxiYWNrLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3Vw
PiI7IH07Ci0JCTA3MjIxQjYyMTdDRUMzMjcwMDg0OEU1MSAvKiBOYXZpZ2F0b3JVc2VyTWVkaWFT
dWNjZXNzQ2FsbGJhY2suaWRsICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNv
ZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gdGV4dDsgcGF0aCA9IE5hdmlnYXRvclVzZXJN
ZWRpYVN1Y2Nlc3NDYWxsYmFjay5pZGw7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTA3
MjIxQjYzMTdDRUMzMjcwMDg0OEU1MSAvKiBSVENEYXRhQ2hhbm5lbC5jcHAgKi8gPSB7aXNhID0g
UEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBz
b3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBSVENEYXRhQ2hhbm5lbC5jcHA7IHNvdXJjZVRyZWUg
PSAiPGdyb3VwPiI7IH07CiAJCTA3MjIxQjY0MTdDRUMzMjcwMDg0OEU1MSAvKiBSVENEYXRhQ2hh
bm5lbC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxh
c3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBSVENEYXRhQ2hhbm5lbC5o
OyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQkwNzIyMUI2NTE3Q0VDMzI3MDA4NDhFNTEg
LyogUlRDRGF0YUNoYW5uZWwuaWRsICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVF
bmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gdGV4dDsgcGF0aCA9IFJUQ0RhdGFDaGFu
bmVsLmlkbDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKQEAgLTc0NTEsNyArNzQ0MCw2IEBA
CiAJCTA3Mzc5NEUwMTlFRTJEMUIwMEU1QTA0NSAvKiBNZWRpYUNvbnN0cmFpbnRzTW9jay5oICov
ID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZp
bGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBNZWRpYUNvbnN0cmFpbnRzTW9jay5oOyBz
b3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQkwNzM3OTRFMzE5RUUyRkYyMDBFNUEwNDUgLyog
SlNSVENDb25maWd1cmF0aW9uLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxl
RW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0
aCA9IEpTUlRDQ29uZmlndXJhdGlvbi5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJ
CTA3Mzc5NEU0MTlFRTJGRjIwMEU1QTA0NSAvKiBKU1JUQ0NvbmZpZ3VyYXRpb24uaCAqLyA9IHtp
c2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlw
ZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gSlNSVENDb25maWd1cmF0aW9uLmg7IHNvdXJjZVRy
ZWUgPSAiPGdyb3VwPiI7IH07Ci0JCTA3Mzc5NEU3MTlFRTMzNUMwMEU1QTA0NSAvKiBKU05hdmln
YXRvckN1c3RvbS5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5n
ID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBKU05h
dmlnYXRvckN1c3RvbS5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTA3Mzc5NEU5
MTlFRTM0MUUwMEU1QTA0NSAvKiBKU1JUQ0ljZVNlcnZlci5jcHAgKi8gPSB7aXNhID0gUEJYRmls
ZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vj
b2RlLmNwcC5jcHA7IHBhdGggPSBKU1JUQ0ljZVNlcnZlci5jcHA7IHNvdXJjZVRyZWUgPSAiPGdy
b3VwPiI7IH07CiAJCTA3Mzc5NEVBMTlFRTM0MUUwMEU1QTA0NSAvKiBKU1JUQ0ljZVNlcnZlci5o
ICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93
bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBKU1JUQ0ljZVNlcnZlci5oOyBzb3Vy
Y2VUcmVlID0gIjxncm91cD4iOyB9OwogCQkwNzM3OTRFRDE5RUUzNjQyMDBFNUEwNDUgLyogRE9N
VVJMTWVkaWFTdHJlYW0uY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNv
ZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0g
RE9NVVJMTWVkaWFTdHJlYW0uY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwpAQCAtNzQ3
MywxMCArNzQ2MSw2IEBACiAJCTA3M0JFMzNGMTdEMTdFMDEwMDJCRDQzMSAvKiBKU05hdmlnYXRv
clVzZXJNZWRpYS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9
IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBKU05hdmlnYXRv
clVzZXJNZWRpYS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQkwNzNCRTM0MjE3RDE3
RTdBMDAyQkQ0MzEgLyogSlNOYXZpZ2F0b3JVc2VyTWVkaWFFcnJvci5jcHAgKi8gPSB7aXNhID0g
UEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBz
b3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBKU05hdmlnYXRvclVzZXJNZWRpYUVycm9yLmNwcDsg
c291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJMDczQkUzNDMxN0QxN0U3QTAwMkJENDMxIC8q
IEpTTmF2aWdhdG9yVXNlck1lZGlhRXJyb3IuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNl
OyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBw
YXRoID0gSlNOYXZpZ2F0b3JVc2VyTWVkaWFFcnJvci5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4i
OyB9OwotCQkwNzNCRTM0NDE3RDE3RTdBMDAyQkQ0MzEgLyogSlNOYXZpZ2F0b3JVc2VyTWVkaWFF
cnJvckNhbGxiYWNrLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rp
bmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEpT
TmF2aWdhdG9yVXNlck1lZGlhRXJyb3JDYWxsYmFjay5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3Vw
PiI7IH07Ci0JCTA3M0JFMzQ1MTdEMTdFN0EwMDJCRDQzMSAvKiBKU05hdmlnYXRvclVzZXJNZWRp
YUVycm9yQ2FsbGJhY2suaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rp
bmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gSlNOYXZp
Z2F0b3JVc2VyTWVkaWFFcnJvckNhbGxiYWNrLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07
Ci0JCTA3M0JFMzQ2MTdEMTdFN0EwMDJCRDQzMSAvKiBKU05hdmlnYXRvclVzZXJNZWRpYVN1Y2Nl
c3NDYWxsYmFjay5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5n
ID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBKU05h
dmlnYXRvclVzZXJNZWRpYVN1Y2Nlc3NDYWxsYmFjay5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3Vw
PiI7IH07Ci0JCTA3M0JFMzQ3MTdEMTdFN0EwMDJCRDQzMSAvKiBKU05hdmlnYXRvclVzZXJNZWRp
YVN1Y2Nlc3NDYWxsYmFjay5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNv
ZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBKU05h
dmlnYXRvclVzZXJNZWRpYVN1Y2Nlc3NDYWxsYmFjay5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4i
OyB9OwogCQkwNzRFODJCODE4QTY5RjBFMDA3RUY1NEMgLyogUGxhdGZvcm1UaW1lUmFuZ2VzLmNw
cCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25v
d25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IFBsYXRmb3JtVGltZVJhbmdl
cy5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTA3NEU4MkI5MThBNjlGMEUwMDdF
RjU0QyAvKiBQbGF0Zm9ybVRpbWVSYW5nZXMuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNl
OyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBw
YXRoID0gUGxhdGZvcm1UaW1lUmFuZ2VzLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJ
CTA3NTM4NjAwMTQ0ODlFOTgwMEI3ODQ1MiAvKiBDYWNoZWRUZXh0VHJhY2suY3BwICovID0ge2lz
YSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBl
ID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gQ2FjaGVkVGV4dFRyYWNrLmNwcDsgc291cmNl
VHJlZSA9ICI8Z3JvdXA+IjsgfTsKQEAgLTg4NjUsNiArODg0OSw3IEBACiAJCTQxOUJFNzUzMUJD
N0YzREIwMEUxQzg1QiAvKiBXZWJDb3JlSlNCdWlsdGluSW50ZXJuYWxzLmggKi8gPSB7aXNhID0g
UEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBz
b3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFdlYkNvcmVKU0J1aWx0aW5JbnRlcm5hbHMuaDsgc291cmNl
VHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJNDE5QkU3NTQxQkM3RjNEQjAwRTFDODVCIC8qIFdlYkNv
cmVKU0J1aWx0aW5zLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rp
bmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IFdl
YkNvcmVKU0J1aWx0aW5zLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJNDE5QkU3
NTUxQkM3RjNEQjAwRTFDODVCIC8qIFdlYkNvcmVKU0J1aWx0aW5zLmggKi8gPSB7aXNhID0gUEJY
RmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3Vy
Y2Vjb2RlLmMuaDsgcGF0aCA9IFdlYkNvcmVKU0J1aWx0aW5zLmg7IHNvdXJjZVRyZWUgPSAiPGdy
b3VwPiI7IH07CisJCTQxOUJFNzVBMUJDQkQzRUQwMEUxQzg1QiAvKiBOYXZpZ2F0b3JVc2VyTWVk
aWEuanMgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFz
dEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmphdmFzY3JpcHQ7IHBhdGggPSBOYXZpZ2F0b3JV
c2VyTWVkaWEuanM7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTQxOUZBRkFEMUFCQUJD
RDUwMDVCODI4QiAvKiBSZWFkYWJsZVN0cmVhbVJlYWRlci5pZGwgKi8gPSB7aXNhID0gUEJYRmls
ZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSB0ZXh0OyBw
YXRoID0gUmVhZGFibGVTdHJlYW1SZWFkZXIuaWRsOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9
OwogCQk0MUEwMjNFRDFBMzlEQjc5MDBGNzIyQ0YgLyogUmVhZGFibGVTdHJlYW0uaWRsICovID0g
e2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVU
eXBlID0gdGV4dDsgcGF0aCA9IFJlYWRhYmxlU3RyZWFtLmlkbDsgc291cmNlVHJlZSA9ICI8Z3Jv
dXA+IjsgfTsKIAkJNDFBMDIzRUQxQTM5REI3OTAwRjcyMkRGIC8qIFdyaXRhYmxlU3RyZWFtLmlk
bCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25v
d25GaWxlVHlwZSA9IHRleHQ7IHBhdGggPSBXcml0YWJsZVN0cmVhbS5pZGw7IHNvdXJjZVRyZWUg
PSAiPGdyb3VwPiI7IH07CkBAIC0xNTA4OCwxMyArMTUwNzMsMTAgQEAKIAkJCQk1RUE3MjVDQjFB
Q0FCQ0I1MDBFQUQxN0IgLyogTmF2aWdhdG9yTWVkaWFEZXZpY2VzLmggKi8sCiAJCQkJNUVBNzI1
Q0MxQUNBQkNCNTAwRUFEMTdCIC8qIE5hdmlnYXRvck1lZGlhRGV2aWNlcy5pZGwgKi8sCiAJCQkJ
MDcyMjFCNUMxN0NFQzMyNzAwODQ4RTUxIC8qIE5hdmlnYXRvclVzZXJNZWRpYS5pZGwgKi8sCisJ
CQkJNDE5QkU3NUExQkNCRDNFRDAwRTFDODVCIC8qIE5hdmlnYXRvclVzZXJNZWRpYS5qcyAqLywK
IAkJCQkwNzAzMjdGNzE3RUE0QUFGMDBDRTEzMTggLyogTmF2aWdhdG9yVXNlck1lZGlhRXJyb3Iu
Y3BwICovLAogCQkJCTA3MjIxQjVEMTdDRUMzMjcwMDg0OEU1MSAvKiBOYXZpZ2F0b3JVc2VyTWVk
aWFFcnJvci5oICovLAogCQkJCTA3MjIxQjVFMTdDRUMzMjcwMDg0OEU1MSAvKiBOYXZpZ2F0b3JV
c2VyTWVkaWFFcnJvci5pZGwgKi8sCi0JCQkJMDcyMjFCNUYxN0NFQzMyNzAwODQ4RTUxIC8qIE5h
dmlnYXRvclVzZXJNZWRpYUVycm9yQ2FsbGJhY2suaCAqLywKLQkJCQkwNzIyMUI2MDE3Q0VDMzI3
MDA4NDhFNTEgLyogTmF2aWdhdG9yVXNlck1lZGlhRXJyb3JDYWxsYmFjay5pZGwgKi8sCi0JCQkJ
MDcyMjFCNjExN0NFQzMyNzAwODQ4RTUxIC8qIE5hdmlnYXRvclVzZXJNZWRpYVN1Y2Nlc3NDYWxs
YmFjay5oICovLAotCQkJCTA3MjIxQjYyMTdDRUMzMjcwMDg0OEU1MSAvKiBOYXZpZ2F0b3JVc2Vy
TWVkaWFTdWNjZXNzQ2FsbGJhY2suaWRsICovLAogCQkJCTA3QUI5OTY1MThEQTNDMDEwMDE4Nzcx
RSAvKiBSVENDb25maWd1cmF0aW9uLmggKi8sCiAJCQkJMDdBQjk5NjYxOERBM0MwMTAwMTg3NzFF
IC8qIFJUQ0NvbmZpZ3VyYXRpb24uaWRsICovLAogCQkJCTA3MjIxQjYzMTdDRUMzMjcwMDg0OEU1
MSAvKiBSVENEYXRhQ2hhbm5lbC5jcHAgKi8sCkBAIC0xNTI5MiwxMCArMTUyNzQsNiBAQAogCQkJ
CTA3M0JFMzNGMTdEMTdFMDEwMDJCRDQzMSAvKiBKU05hdmlnYXRvclVzZXJNZWRpYS5oICovLAog
CQkJCTA3M0JFMzQyMTdEMTdFN0EwMDJCRDQzMSAvKiBKU05hdmlnYXRvclVzZXJNZWRpYUVycm9y
LmNwcCAqLywKIAkJCQkwNzNCRTM0MzE3RDE3RTdBMDAyQkQ0MzEgLyogSlNOYXZpZ2F0b3JVc2Vy
TWVkaWFFcnJvci5oICovLAotCQkJCTA3M0JFMzQ0MTdEMTdFN0EwMDJCRDQzMSAvKiBKU05hdmln
YXRvclVzZXJNZWRpYUVycm9yQ2FsbGJhY2suY3BwICovLAotCQkJCTA3M0JFMzQ1MTdEMTdFN0Ew
MDJCRDQzMSAvKiBKU05hdmlnYXRvclVzZXJNZWRpYUVycm9yQ2FsbGJhY2suaCAqLywKLQkJCQkw
NzNCRTM0NjE3RDE3RTdBMDAyQkQ0MzEgLyogSlNOYXZpZ2F0b3JVc2VyTWVkaWFTdWNjZXNzQ2Fs
bGJhY2suY3BwICovLAotCQkJCTA3M0JFMzQ3MTdEMTdFN0EwMDJCRDQzMSAvKiBKU05hdmlnYXRv
clVzZXJNZWRpYVN1Y2Nlc3NDYWxsYmFjay5oICovLAogCQkJCTA3Mzc5NEUzMTlFRTJGRjIwMEU1
QTA0NSAvKiBKU1JUQ0NvbmZpZ3VyYXRpb24uY3BwICovLAogCQkJCTA3Mzc5NEU0MTlFRTJGRjIw
MEU1QTA0NSAvKiBKU1JUQ0NvbmZpZ3VyYXRpb24uaCAqLywKIAkJCQkwNzk2OUQ5MTE3RDE0MTUx
MDA3RkY4NDIgLyogSlNSVENEYXRhQ2hhbm5lbC5jcHAgKi8sCkBAIC0yMjAxMCw3ICsyMTk4OCw2
IEBACiAJCQkJQTFFNUIzMUQxQUFEMURBNDAwNkVCRUZCIC8qIEpTTW9ja0NvbnRlbnRGaWx0ZXJT
ZXR0aW5nc0N1c3RvbS5jcHAgKi8sCiAJCQkJQzZGMDkxN0UxNDNBMkJCOTAwNjg1ODQ5IC8qIEpT
TXV0YXRpb25PYnNlcnZlckN1c3RvbS5jcHAgKi8sCiAJCQkJQkNEOUMyNUYwQzE3QUE2NzAwNUM5
MEEyIC8qIEpTTmFtZWROb2RlTWFwQ3VzdG9tLmNwcCAqLywKLQkJCQkwNzM3OTRFNzE5RUUzMzVD
MDBFNUEwNDUgLyogSlNOYXZpZ2F0b3JDdXN0b20uY3BwICovLAogCQkJCUJDRDlDMjYwMEMxN0FB
NjcwMDVDOTBBMiAvKiBKU05vZGVDdXN0b20uY3BwICovLAogCQkJCUJDOTQzOUMyMTE2Q0Y0OTQw
MDQ4Qzc1MCAvKiBKU05vZGVDdXN0b20uaCAqLywKIAkJCQkxQTc1MEREMzBBOTBFNzI5MDAwRkYy
MTUgLyogSlNOb2RlSXRlcmF0b3JDdXN0b20uY3BwICovLApAQCAtMjYxMzEsOCArMjYxMDgsNiBA
QAogCQkJCUE5RDI0N0Y4MEQ3NTdFMzQwMEZERjk1OSAvKiBKU05hdmlnYXRvci5oIGluIEhlYWRl
cnMgKi8sCiAJCQkJMDczQkUzNDExN0QxN0UwMTAwMkJENDMxIC8qIEpTTmF2aWdhdG9yVXNlck1l
ZGlhLmggaW4gSGVhZGVycyAqLywKIAkJCQkwNzNCRTM0OTE3RDE3RTdBMDAyQkQ0MzEgLyogSlNO
YXZpZ2F0b3JVc2VyTWVkaWFFcnJvci5oIGluIEhlYWRlcnMgKi8sCi0JCQkJMDczQkUzNEIxN0Qx
N0U3QTAwMkJENDMxIC8qIEpTTmF2aWdhdG9yVXNlck1lZGlhRXJyb3JDYWxsYmFjay5oIGluIEhl
YWRlcnMgKi8sCi0JCQkJMDczQkUzNEQxN0QxN0U3QTAwMkJENDMxIC8qIEpTTmF2aWdhdG9yVXNl
ck1lZGlhU3VjY2Vzc0NhbGxiYWNrLmggaW4gSGVhZGVycyAqLywKIAkJCQlCQzk0MzlDMzExNkNG
NDk0MDA0OEM3NTAgLyogSlNOb2RlQ3VzdG9tLmggaW4gSGVhZGVycyAqLywKIAkJCQkxNDExNUI3
MzA5Rjg0Q0Q2MDBDQTRGQzEgLyogSlNOb2RlRmlsdGVyLmggaW4gSGVhZGVycyAqLywKIAkJCQkx
QTc1MEQ4RTBBOTBFNTIxMDAwRkYyMTUgLyogSlNOb2RlSXRlcmF0b3IuaCBpbiBIZWFkZXJzICov
LApAQCAtMjY2NjgsOCArMjY2NDMsNiBAQAogCQkJCTk3MTE0NjA0MTRFRjAwOUEwMDY3NEZEOSAv
KiBOYXZpZ2F0b3JHZW9sb2NhdGlvbi5oIGluIEhlYWRlcnMgKi8sCiAJCQkJNUVBNzI1RDYxQUNB
QkQ1NzAwRUFEMTdCIC8qIE5hdmlnYXRvck1lZGlhRGV2aWNlcy5oIGluIEhlYWRlcnMgKi8sCiAJ
CQkJMDc4RTA5MUIxN0QxNEQxQzAwNDIwQUExIC8qIE5hdmlnYXRvclVzZXJNZWRpYUVycm9yLmgg
aW4gSGVhZGVycyAqLywKLQkJCQkwNzhFMDkxQzE3RDE0RDFDMDA0MjBBQTEgLyogTmF2aWdhdG9y
VXNlck1lZGlhRXJyb3JDYWxsYmFjay5oIGluIEhlYWRlcnMgKi8sCi0JCQkJMDc4RTA5MUQxN0Qx
NEQxQzAwNDIwQUExIC8qIE5hdmlnYXRvclVzZXJNZWRpYVN1Y2Nlc3NDYWxsYmFjay5oIGluIEhl
YWRlcnMgKi8sCiAJCQkJQTE5RDkzNDYxQTlGRUM3MjAwQjQ2QzI0IC8qIE5FRmlsdGVyU291cmNl
U1BJLmggaW4gSGVhZGVycyAqLywKIAkJCQk4QTMwOUM5RjEyMzk1MEJFMDBDQjkyMDQgLyogTmVz
dGluZ0xldmVsSW5jcmVtZW50ZXIuaCBpbiBIZWFkZXJzICovLAogCQkJCTY1NkQzNzQzMEFEQkE1
REUwMEE0NTU0RCAvKiBOZXRzY2FwZVBsdWdJblN0cmVhbUxvYWRlci5oIGluIEhlYWRlcnMgKi8s
CkBAIC0yOTc5NCwxMSArMjk3NjcsOCBAQAogCQkJCUJDRDlDMkMwMEMxN0I2OUUwMDVDOTBBMiAv
KiBKU05hbWVkTm9kZU1hcC5jcHAgaW4gU291cmNlcyAqLywKIAkJCQlCQ0Q5QzI2MzBDMTdBQTY3
MDA1QzkwQTIgLyogSlNOYW1lZE5vZGVNYXBDdXN0b20uY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJ
QTlEMjQ3RjcwRDc1N0UzNDAwRkRGOTU5IC8qIEpTTmF2aWdhdG9yLmNwcCBpbiBTb3VyY2VzICov
LAotCQkJCTA3Mzc5NEU4MTlFRTMzNUMwMEU1QTA0NSAvKiBKU05hdmlnYXRvckN1c3RvbS5jcHAg
aW4gU291cmNlcyAqLywKIAkJCQkwNzNCRTM0MDE3RDE3RTAxMDAyQkQ0MzEgLyogSlNOYXZpZ2F0
b3JVc2VyTWVkaWEuY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJMDczQkUzNDgxN0QxN0U3QTAwMkJE
NDMxIC8qIEpTTmF2aWdhdG9yVXNlck1lZGlhRXJyb3IuY3BwIGluIFNvdXJjZXMgKi8sCi0JCQkJ
MDczQkUzNEExN0QxN0U3QTAwMkJENDMxIC8qIEpTTmF2aWdhdG9yVXNlck1lZGlhRXJyb3JDYWxs
YmFjay5jcHAgaW4gU291cmNlcyAqLywKLQkJCQkwNzNCRTM0QzE3RDE3RTdBMDAyQkQ0MzEgLyog
SlNOYXZpZ2F0b3JVc2VyTWVkaWFTdWNjZXNzQ2FsbGJhY2suY3BwIGluIFNvdXJjZXMgKi8sCiAJ
CQkJMTREQzBEMzcwOUZFRDA3MzAwN0IwMjM1IC8qIEpTTm9kZS5jcHAgaW4gU291cmNlcyAqLywK
IAkJCQlCQ0Q5QzI2NDBDMTdBQTY3MDA1QzkwQTIgLyogSlNOb2RlQ3VzdG9tLmNwcCBpbiBTb3Vy
Y2VzICovLAogCQkJCTE0MTE1QjcyMDlGODRDRDYwMENBNEZDMSAvKiBKU05vZGVGaWx0ZXIuY3Bw
IGluIFNvdXJjZXMgKi8sCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9K
U0RPTVdpbmRvd0Jhc2UuY3BwIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvSlNET01XaW5k
b3dCYXNlLmNwcAppbmRleCBmODAzZGJlY2IxOTRhNTY1Zjk4YWNlN2VkNjU3NTIwNjY4ZDM4Yjcz
Li5kYjA3NjM1ODQxOWU3NmYyZTk5ODBjNzE2NGFiMDliNTY3ODI3NWRiIDEwMDY0NAotLS0gYS9T
b3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9KU0RPTVdpbmRvd0Jhc2UuY3BwCisrKyBiL1NvdXJj
ZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0pTRE9NV2luZG93QmFzZS5jcHAKQEAgLTMsNiArMyw3IEBA
CiAgKiAgQ29weXJpZ2h0IChDKSAyMDA2IEpvbiBTaGllciAoanNoaWVyQGlhc3RhdGUuZWR1KQog
ICogIENvcHlyaWdodCAoQykgMjAwMy0yMDA5LCAyMDE0IEFwcGxlIEluYy4gQWxsIHJpZ2h0cyBy
ZXNldmVkLgogICogIENvcHlyaWdodCAoQykgMjAwNiBBbGV4ZXkgUHJvc2t1cnlha292IChhcEB3
ZWJraXQub3JnKQorICogIENvcHlyaWdodCAoYykgMjAxNSBDYW5vbiBJbmMuIEFsbCByaWdodHMg
cmVzZXJ2ZWQuCiAgKgogICogIFRoaXMgbGlicmFyeSBpcyBmcmVlIHNvZnR3YXJlOyB5b3UgY2Fu
IHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IKICAqICBtb2RpZnkgaXQgdW5kZXIgdGhlIHRlcm1zIG9m
IHRoZSBHTlUgTGVzc2VyIEdlbmVyYWwgUHVibGljCkBAIC04MywzNCArODQsMzUgQEAgdm9pZCBK
U0RPTVdpbmRvd0Jhc2U6OmZpbmlzaENyZWF0aW9uKFZNJiB2bSwgSlNET01XaW5kb3dTaGVsbCog
c2hlbGwpCiAKICAgICBtX3ByaXZhdGVGdW5jdGlvbnMuaW5pdCgqdGhpcyk7CiAKKyNpZiBFTkFC
TEUoU1RSRUFNU19BUEkpCisgICAgSlNWTUNsaWVudERhdGEmIGNsaWVudERhdGEgPSAqc3RhdGlj
X2Nhc3Q8SlNWTUNsaWVudERhdGEqPih2bS5jbGllbnREYXRhKTsKKyNlbmRpZgorCiAgICAgR2xv
YmFsUHJvcGVydHlJbmZvIHN0YXRpY0dsb2JhbHNbXSA9IHsKICAgICAgICAgR2xvYmFsUHJvcGVy
dHlJbmZvKHZtLnByb3BlcnR5TmFtZXMtPmRvY3VtZW50LCBqc051bGwoKSwgRG9udERlbGV0ZSB8
IFJlYWRPbmx5KSwKICAgICAgICAgR2xvYmFsUHJvcGVydHlJbmZvKHZtLnByb3BlcnR5TmFtZXMt
PndpbmRvdywgbV9zaGVsbCwgRG9udERlbGV0ZSB8IFJlYWRPbmx5KSwKICNpZiBFTkFCTEUoU1RS
RUFNU19BUEkpCi0gICAgICAgIEdsb2JhbFByb3BlcnR5SW5mbyhzdGF0aWNfY2FzdDxKU1ZNQ2xp
ZW50RGF0YSo+KHZtLmNsaWVudERhdGEpLT5idWlsdGluTmFtZXMoKS5zdHJlYW1DbG9zZWRQcml2
YXRlTmFtZSgpLCBqc051bWJlcigxKSwgRG9udERlbGV0ZSB8IFJlYWRPbmx5KSwKLSAgICAgICAg
R2xvYmFsUHJvcGVydHlJbmZvKHN0YXRpY19jYXN0PEpTVk1DbGllbnREYXRhKj4odm0uY2xpZW50
RGF0YSktPmJ1aWx0aW5OYW1lcygpLnN0cmVhbUNsb3NpbmdQcml2YXRlTmFtZSgpLCBqc051bWJl
cigyKSwgRG9udERlbGV0ZSB8IFJlYWRPbmx5KSwKLSAgICAgICAgR2xvYmFsUHJvcGVydHlJbmZv
KHN0YXRpY19jYXN0PEpTVk1DbGllbnREYXRhKj4odm0uY2xpZW50RGF0YSktPmJ1aWx0aW5OYW1l
cygpLnN0cmVhbUVycm9yZWRQcml2YXRlTmFtZSgpLCBqc051bWJlcigzKSwgRG9udERlbGV0ZSB8
IFJlYWRPbmx5KSwKLSAgICAgICAgR2xvYmFsUHJvcGVydHlJbmZvKHN0YXRpY19jYXN0PEpTVk1D
bGllbnREYXRhKj4odm0uY2xpZW50RGF0YSktPmJ1aWx0aW5OYW1lcygpLnN0cmVhbVJlYWRhYmxl
UHJpdmF0ZU5hbWUoKSwganNOdW1iZXIoNCksIERvbnREZWxldGUgfCBSZWFkT25seSksCi0gICAg
ICAgIEdsb2JhbFByb3BlcnR5SW5mbyhzdGF0aWNfY2FzdDxKU1ZNQ2xpZW50RGF0YSo+KHZtLmNs
aWVudERhdGEpLT5idWlsdGluTmFtZXMoKS5zdHJlYW1XYWl0aW5nUHJpdmF0ZU5hbWUoKSwganNO
dW1iZXIoNSksIERvbnREZWxldGUgfCBSZWFkT25seSksCi0gICAgICAgIEdsb2JhbFByb3BlcnR5
SW5mbyhzdGF0aWNfY2FzdDxKU1ZNQ2xpZW50RGF0YSo+KHZtLmNsaWVudERhdGEpLT5idWlsdGlu
TmFtZXMoKS5zdHJlYW1Xcml0YWJsZVByaXZhdGVOYW1lKCksIGpzTnVtYmVyKDYpLCBEb250RGVs
ZXRlIHwgUmVhZE9ubHkpLAotICAgICAgICBHbG9iYWxQcm9wZXJ0eUluZm8oc3RhdGljX2Nhc3Q8
SlNWTUNsaWVudERhdGEqPih2bS5jbGllbnREYXRhKS0+YnVpbHRpbk5hbWVzKCkuUmVhZGFibGVT
dHJlYW1Db250cm9sbGVyUHJpdmF0ZU5hbWUoKSwgY3JlYXRlUmVhZGFibGVTdHJlYW1Db250cm9s
bGVyUHJpdmF0ZUNvbnN0cnVjdG9yKHZtLCAqdGhpcyksIERvbnREZWxldGUgfCBSZWFkT25seSks
Ci0gICAgICAgIEdsb2JhbFByb3BlcnR5SW5mbyhzdGF0aWNfY2FzdDxKU1ZNQ2xpZW50RGF0YSo+
KHZtLmNsaWVudERhdGEpLT5idWlsdGluTmFtZXMoKS5SZWFkYWJsZVN0cmVhbVJlYWRlclByaXZh
dGVOYW1lKCksIGNyZWF0ZVJlYWRhYmxlU3RyZWFtUmVhZGVyUHJpdmF0ZUNvbnN0cnVjdG9yKHZt
LCAqdGhpcyksIERvbnREZWxldGUgfCBSZWFkT25seSksCisgICAgICAgIEdsb2JhbFByb3BlcnR5
SW5mbyhjbGllbnREYXRhLmJ1aWx0aW5OYW1lcygpLnN0cmVhbUNsb3NlZFByaXZhdGVOYW1lKCks
IGpzTnVtYmVyKDEpLCBEb250RGVsZXRlIHwgUmVhZE9ubHkpLAorICAgICAgICBHbG9iYWxQcm9w
ZXJ0eUluZm8oY2xpZW50RGF0YS5idWlsdGluTmFtZXMoKS5zdHJlYW1DbG9zaW5nUHJpdmF0ZU5h
bWUoKSwganNOdW1iZXIoMiksIERvbnREZWxldGUgfCBSZWFkT25seSksCisgICAgICAgIEdsb2Jh
bFByb3BlcnR5SW5mbyhjbGllbnREYXRhLmJ1aWx0aW5OYW1lcygpLnN0cmVhbUVycm9yZWRQcml2
YXRlTmFtZSgpLCBqc051bWJlcigzKSwgRG9udERlbGV0ZSB8IFJlYWRPbmx5KSwKKyAgICAgICAg
R2xvYmFsUHJvcGVydHlJbmZvKGNsaWVudERhdGEuYnVpbHRpbk5hbWVzKCkuc3RyZWFtUmVhZGFi
bGVQcml2YXRlTmFtZSgpLCBqc051bWJlcig0KSwgRG9udERlbGV0ZSB8IFJlYWRPbmx5KSwKKyAg
ICAgICAgR2xvYmFsUHJvcGVydHlJbmZvKGNsaWVudERhdGEuYnVpbHRpbk5hbWVzKCkuc3RyZWFt
V2FpdGluZ1ByaXZhdGVOYW1lKCksIGpzTnVtYmVyKDUpLCBEb250RGVsZXRlIHwgUmVhZE9ubHkp
LAorICAgICAgICBHbG9iYWxQcm9wZXJ0eUluZm8oY2xpZW50RGF0YS5idWlsdGluTmFtZXMoKS5z
dHJlYW1Xcml0YWJsZVByaXZhdGVOYW1lKCksIGpzTnVtYmVyKDYpLCBEb250RGVsZXRlIHwgUmVh
ZE9ubHkpLAorICAgICAgICBHbG9iYWxQcm9wZXJ0eUluZm8oY2xpZW50RGF0YS5idWlsdGluTmFt
ZXMoKS5SZWFkYWJsZVN0cmVhbUNvbnRyb2xsZXJQcml2YXRlTmFtZSgpLCBjcmVhdGVSZWFkYWJs
ZVN0cmVhbUNvbnRyb2xsZXJQcml2YXRlQ29uc3RydWN0b3Iodm0sICp0aGlzKSwgRG9udERlbGV0
ZSB8IFJlYWRPbmx5KSwKKyAgICAgICAgR2xvYmFsUHJvcGVydHlJbmZvKGNsaWVudERhdGEuYnVp
bHRpbk5hbWVzKCkuUmVhZGFibGVTdHJlYW1SZWFkZXJQcml2YXRlTmFtZSgpLCBjcmVhdGVSZWFk
YWJsZVN0cmVhbVJlYWRlclByaXZhdGVDb25zdHJ1Y3Rvcih2bSwgKnRoaXMpLCBEb250RGVsZXRl
IHwgUmVhZE9ubHkpLAogI2RlZmluZSBERUNMQVJFX0dMT0JBTF9TVEFUSUMobmFtZSlcCiAgICAg
ICAgIEdsb2JhbFByb3BlcnR5SW5mbyhcCi0gICAgICAgICAgICBzdGF0aWNfY2FzdDxKU1ZNQ2xp
ZW50RGF0YSo+KHZtLmNsaWVudERhdGEpLT5idWlsdGluRnVuY3Rpb25zKCkucmVhZGFibGVTdHJl
YW1JbnRlcm5hbHNCdWlsdGlucygpLm5hbWUjI1ByaXZhdGVOYW1lKCksIFwKLSAgICAgICAgICAg
IG1fcHJpdmF0ZUZ1bmN0aW9ucy5yZWFkYWJsZVN0cmVhbUludGVybmFscygpLm1fIyNuYW1lIyNG
dW5jdGlvbi5nZXQoKSAsIERvbnREZWxldGUgfCBSZWFkT25seSksCisgICAgICAgICAgICBjbGll
bnREYXRhLmJ1aWx0aW5GdW5jdGlvbnMoKS5yZWFkYWJsZVN0cmVhbUludGVybmFsc0J1aWx0aW5z
KCkubmFtZSMjUHJpdmF0ZU5hbWUoKSwgbV9wcml2YXRlRnVuY3Rpb25zLnJlYWRhYmxlU3RyZWFt
SW50ZXJuYWxzKCkubV8jI25hbWUjI0Z1bmN0aW9uLmdldCgpICwgRG9udERlbGV0ZSB8IFJlYWRP
bmx5KSwKICAgICAgICAgV0VCQ09SRV9GT1JFQUNIX1JFQURBQkxFU1RSRUFNSU5URVJOQUxTX0JV
SUxUSU5fRlVOQ1RJT05fTkFNRShERUNMQVJFX0dMT0JBTF9TVEFUSUMpCiAjdW5kZWYgREVDTEFS
RV9HTE9CQUxfU1RBVElDCiAjZGVmaW5lIERFQ0xBUkVfR0xPQkFMX1NUQVRJQyhuYW1lKVwKICAg
ICAgICAgR2xvYmFsUHJvcGVydHlJbmZvKFwKLSAgICAgICAgICAgIHN0YXRpY19jYXN0PEpTVk1D
bGllbnREYXRhKj4odm0uY2xpZW50RGF0YSktPmJ1aWx0aW5GdW5jdGlvbnMoKS5zdHJlYW1JbnRl
cm5hbHNCdWlsdGlucygpLm5hbWUjI1ByaXZhdGVOYW1lKCksIFwKLSAgICAgICAgICAgIG1fcHJp
dmF0ZUZ1bmN0aW9ucy5zdHJlYW1JbnRlcm5hbHMoKS5tXyMjbmFtZSMjRnVuY3Rpb24uZ2V0KCkg
LCBEb250RGVsZXRlIHwgUmVhZE9ubHkpLAorICAgICAgICAgICAgY2xpZW50RGF0YS5idWlsdGlu
RnVuY3Rpb25zKCkuc3RyZWFtSW50ZXJuYWxzQnVpbHRpbnMoKS5uYW1lIyNQcml2YXRlTmFtZSgp
LCBtX3ByaXZhdGVGdW5jdGlvbnMuc3RyZWFtSW50ZXJuYWxzKCkubV8jI25hbWUjI0Z1bmN0aW9u
LmdldCgpICwgRG9udERlbGV0ZSB8IFJlYWRPbmx5KSwKICAgICAgICAgV0VCQ09SRV9GT1JFQUNI
X1NUUkVBTUlOVEVSTkFMU19CVUlMVElOX0ZVTkNUSU9OX05BTUUoREVDTEFSRV9HTE9CQUxfU1RB
VElDKQogI3VuZGVmIERFQ0xBUkVfR0xPQkFMX1NUQVRJQwogI2RlZmluZSBERUNMQVJFX0dMT0JB
TF9TVEFUSUMobmFtZSlcCiAgICAgICAgIEdsb2JhbFByb3BlcnR5SW5mbyhcCi0gICAgICAgICAg
ICBzdGF0aWNfY2FzdDxKU1ZNQ2xpZW50RGF0YSo+KHZtLmNsaWVudERhdGEpLT5idWlsdGluRnVu
Y3Rpb25zKCkud3JpdGFibGVTdHJlYW1JbnRlcm5hbHNCdWlsdGlucygpLm5hbWUjI1ByaXZhdGVO
YW1lKCksIFwKLSAgICAgICAgICAgIG1fcHJpdmF0ZUZ1bmN0aW9ucy53cml0YWJsZVN0cmVhbUlu
dGVybmFscygpLm1fIyNuYW1lIyNGdW5jdGlvbi5nZXQoKSAsIERvbnREZWxldGUgfCBSZWFkT25s
eSksCisgICAgICAgICAgICBjbGllbnREYXRhLmJ1aWx0aW5GdW5jdGlvbnMoKS53cml0YWJsZVN0
cmVhbUludGVybmFsc0J1aWx0aW5zKCkubmFtZSMjUHJpdmF0ZU5hbWUoKSwgbV9wcml2YXRlRnVu
Y3Rpb25zLndyaXRhYmxlU3RyZWFtSW50ZXJuYWxzKCkubV8jI25hbWUjI0Z1bmN0aW9uLmdldCgp
ICwgRG9udERlbGV0ZSB8IFJlYWRPbmx5KSwKICAgICAgICAgV0VCQ09SRV9GT1JFQUNIX1dSSVRB
QkxFU1RSRUFNSU5URVJOQUxTX0JVSUxUSU5fRlVOQ1RJT05fTkFNRShERUNMQVJFX0dMT0JBTF9T
VEFUSUMpCiAjdW5kZWYgREVDTEFSRV9HTE9CQUxfU1RBVElDCiAjZW5kaWYKZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0pTTmF2aWdhdG9yQ3VzdG9tLmNwcCBiL1NvdXJj
ZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0pTTmF2aWdhdG9yQ3VzdG9tLmNwcApkZWxldGVkIGZpbGUg
bW9kZSAxMDA2NDQKaW5kZXggZjI0YzA1NWZjODliOWRlN2I5YTU1YzRlNjBlNDkwNzJjYWQ5NTZl
YS4uMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMAotLS0gYS9Tb3VyY2Uv
V2ViQ29yZS9iaW5kaW5ncy9qcy9KU05hdmlnYXRvckN1c3RvbS5jcHAKKysrIC9kZXYvbnVsbApA
QCAtMSwxMDMgKzAsMCBAQAotLyoKLSAqIENvcHlyaWdodCAoQykgMjAxMyBOb2tpYSBDb3Jwb3Jh
dGlvbiBhbmQvb3IgaXRzIHN1YnNpZGlhcnkoLWllcykuCi0gKiBDb3B5cmlnaHQgKEMpIDIwMTUg
Q2Fub24gSU5DLgotICoKLSAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBi
aW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAotICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0
dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCi0gKiBhcmUgbWV0Ogot
ICogMS4gUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92
ZSBjb3B5cmlnaHQKLSAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRo
ZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KLSAqIDIuIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkg
Zm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0Ci0gKiAgICBub3RpY2UsIHRo
aXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhl
Ci0gKiAgICBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0
aCB0aGUgZGlzdHJpYnV0aW9uLgotICoKLSAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkg
VEhFIENPUFlSSUdIVCBIT0xERVJTIEFORCBDT05UUklCVVRPUlMKLSAqICJBUyBJUyIgQU5EIEFO
WSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UCi0gKiBM
SU1JVEVEIFRPLCBUSEUgSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQg
RklUTkVTUyBGT1IKLSAqIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiBJTiBO
TyBFVkVOVCBTSEFMTCBUSEUgQ09QWVJJR0hUCi0gKiBPV05FUiBPUiBDT05UUklCVVRPUlMgQkUg
TElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwKLSAqIFNQRUNJQUws
IEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QK
LSAqIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklD
RVM7IExPU1MgT0YgVVNFLAotICogREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJS
VVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZCi0gKiBUSEVPUlkgT0YgTElBQklMSVRZ
LCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUCi0gKiAoSU5D
TFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9G
IFRIRSBVU0UKLSAqIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9T
U0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCi0gKi8KLQotI2luY2x1ZGUgImNvbmZpZy5oIgotCi0j
aWYgRU5BQkxFKE1FRElBX1NUUkVBTSkKLSNpbmNsdWRlICJKU05hdmlnYXRvci5oIgotCi0jaW5j
bHVkZSAiRGljdGlvbmFyeS5oIgotI2luY2x1ZGUgIkRvY3VtZW50LmgiCi0jaW5jbHVkZSAiRXhj
ZXB0aW9uQ29kZS5oIgotI2luY2x1ZGUgIkZyYW1lLmgiCi0jaW5jbHVkZSAiSlNOYXZpZ2F0b3JV
c2VyTWVkaWFFcnJvckNhbGxiYWNrLmgiCi0jaW5jbHVkZSAiSlNOYXZpZ2F0b3JVc2VyTWVkaWFT
dWNjZXNzQ2FsbGJhY2suaCIKLSNpbmNsdWRlICJNZWRpYVN0cmVhbS5oIgotI2luY2x1ZGUgIlVz
ZXJNZWRpYVJlcXVlc3QuaCIKLQotdXNpbmcgbmFtZXNwYWNlIEpTQzsKLQotbmFtZXNwYWNlIFdl
YkNvcmUgewotCi1KU1ZhbHVlIEpTTmF2aWdhdG9yOjp3ZWJraXRHZXRVc2VyTWVkaWEoRXhlY1N0
YXRlJiBzdGF0ZSkKLXsKLSAgICBpZiAoc3RhdGUuYXJndW1lbnRDb3VudCgpIDwgMykgewotICAg
ICAgICB0aHJvd1ZNRXJyb3IoJnN0YXRlLCBjcmVhdGVOb3RFbm91Z2hBcmd1bWVudHNFcnJvcigm
c3RhdGUpKTsKLSAgICAgICAgcmV0dXJuIGpzVW5kZWZpbmVkKCk7Ci0gICAgfQotCi0gICAgRGlj
dGlvbmFyeSBvcHRpb25zKCZzdGF0ZSwgc3RhdGUuYXJndW1lbnQoMCkpOwotICAgIGlmIChzdGF0
ZS5oYWRFeGNlcHRpb24oKSkKLSAgICAgICAgcmV0dXJuIGpzVW5kZWZpbmVkKCk7Ci0KLSAgICBp
ZiAoIW9wdGlvbnMuaXNPYmplY3QoKSkgewotICAgICAgICB0aHJvd1ZNRXJyb3IoJnN0YXRlLCBj
cmVhdGVUeXBlRXJyb3IoJnN0YXRlLCAiRmlyc3QgYXJndW1lbnQgb2Ygd2Via2l0R2V0VXNlck1l
ZGlhIG11c3QgYmUgYSB2YWxpZCBEaWN0aW9uYXJ5IikpOwotICAgICAgICByZXR1cm4ganNVbmRl
ZmluZWQoKTsKLSAgICB9Ci0KLSAgICBpZiAoIXN0YXRlLmFyZ3VtZW50KDEpLmlzRnVuY3Rpb24o
KSkgewotICAgICAgICB0aHJvd1ZNVHlwZUVycm9yKCZzdGF0ZSwgIkFyZ3VtZW50IDIgKCdzdWNj
ZXNzQ2FsbGJhY2snKSB0byBOYXZpZ2F0b3Iud2Via2l0R2V0VXNlck1lZGlhIG11c3QgYmUgYSBm
dW5jdGlvbiIpOwotICAgICAgICByZXR1cm4ganNVbmRlZmluZWQoKTsKLSAgICB9Ci0KLSAgICBp
ZiAoIXN0YXRlLmFyZ3VtZW50KDIpLmlzRnVuY3Rpb24oKSkgewotICAgICAgICB0aHJvd1ZNVHlw
ZUVycm9yKCZzdGF0ZSwgIkFyZ3VtZW50IDMgKCdlcnJvckNhbGxiYWNrJykgdG8gTmF2aWdhdG9y
LndlYmtpdEdldFVzZXJNZWRpYSBtdXN0IGJlIGEgZnVuY3Rpb24iKTsKLSAgICAgICAgcmV0dXJu
IGpzVW5kZWZpbmVkKCk7Ci0gICAgfQotCi0gICAgaWYgKCF3cmFwcGVkKCkuZnJhbWUoKSkgewot
ICAgICAgICBzZXRET01FeGNlcHRpb24oJnN0YXRlLCBOT1RfU1VQUE9SVEVEX0VSUik7Ci0gICAg
ICAgIHJldHVybiBqc1VuZGVmaW5lZCgpOwotICAgIH0KLQotICAgIC8vIFdlIGRvIG5vdCBuZWVk
IHRvIHByb3RlY3QgdGhlIGNvbnRleHQgKGkuZS4gZG9jdW1lbnQpIGhlcmUgYXMgVXNlck1lZGlh
UmVxdWVzdCBpcyBvYnNlcnZpbmcgY29udGV4dCBkZXN0cnVjdGlvbiBhbmQgd2lsbCBjaGVjayB2
YWxpZGl0eSBiZWZvcmUgcmVzb2x2aW5nL3JlamVjdGluZyBwcm9taXNlLgotICAgIERvY3VtZW50
KiBkb2N1bWVudCA9IHdyYXBwZWQoKS5mcmFtZSgpLT5kb2N1bWVudCgpOwotCi0gICAgUmVmUHRy
PE5hdmlnYXRvclVzZXJNZWRpYVN1Y2Nlc3NDYWxsYmFjaz4gc3VjY2Vzc0NhbGxiYWNrID0gSlNO
YXZpZ2F0b3JVc2VyTWVkaWFTdWNjZXNzQ2FsbGJhY2s6OmNyZWF0ZShhc09iamVjdChzdGF0ZS51
bmNoZWNrZWRBcmd1bWVudCgxKSksIGdsb2JhbE9iamVjdCgpKTsKLSAgICBhdXRvIHJlc29sdmVD
YWxsYmFjayA9IFtzdWNjZXNzQ2FsbGJhY2ssIGRvY3VtZW50XShjb25zdCBSZWZQdHI8TWVkaWFT
dHJlYW0+JiBzdHJlYW0pIG11dGFibGUgewotICAgICAgICBSZWZQdHI8TWVkaWFTdHJlYW0+IHBy
b3RlY3RlZFN0cmVhbSA9IHN0cmVhbTsKLSAgICAgICAgZG9jdW1lbnQtPnBvc3RUYXNrKFtzdWNj
ZXNzQ2FsbGJhY2ssIHByb3RlY3RlZFN0cmVhbV0oU2NyaXB0RXhlY3V0aW9uQ29udGV4dCYpIHsK
LSAgICAgICAgICAgIHN1Y2Nlc3NDYWxsYmFjay0+aGFuZGxlRXZlbnQocHJvdGVjdGVkU3RyZWFt
LmdldCgpKTsKLSAgICAgICAgfSk7Ci0gICAgfTsKLQotICAgIFJlZlB0cjxOYXZpZ2F0b3JVc2Vy
TWVkaWFFcnJvckNhbGxiYWNrPiBlcnJvckNhbGxiYWNrID0gSlNOYXZpZ2F0b3JVc2VyTWVkaWFF
cnJvckNhbGxiYWNrOjpjcmVhdGUoYXNPYmplY3Qoc3RhdGUudW5jaGVja2VkQXJndW1lbnQoMikp
LCBnbG9iYWxPYmplY3QoKSk7Ci0gICAgYXV0byByZWplY3RDYWxsYmFjayA9IFtlcnJvckNhbGxi
YWNrLCBkb2N1bWVudF0oY29uc3QgUmVmUHRyPE5hdmlnYXRvclVzZXJNZWRpYUVycm9yPiYgZXJy
b3IpIG11dGFibGUgewotICAgICAgICBSZWZQdHI8TmF2aWdhdG9yVXNlck1lZGlhRXJyb3I+IHBy
b3RlY3RlZEVycm9yID0gZXJyb3I7Ci0gICAgICAgIGRvY3VtZW50LT5wb3N0VGFzayhbZXJyb3JD
YWxsYmFjaywgcHJvdGVjdGVkRXJyb3JdKFNjcmlwdEV4ZWN1dGlvbkNvbnRleHQmKSB7Ci0gICAg
ICAgICAgICBlcnJvckNhbGxiYWNrLT5oYW5kbGVFdmVudChwcm90ZWN0ZWRFcnJvci5nZXQoKSk7
Ci0gICAgICAgIH0pOwotICAgIH07Ci0KLSAgICBFeGNlcHRpb25Db2RlIGVjID0gMDsKLSAgICBV
c2VyTWVkaWFSZXF1ZXN0OjpzdGFydChkb2N1bWVudCwgb3B0aW9ucywgTWVkaWFEZXZpY2VzOjpQ
cm9taXNlKFdURjo6bW92ZShyZXNvbHZlQ2FsbGJhY2spLCBXVEY6Om1vdmUocmVqZWN0Q2FsbGJh
Y2spKSwgZWMpOwotICAgIHNldERPTUV4Y2VwdGlvbigmc3RhdGUsIGVjKTsKLSAgICByZXR1cm4g
anNVbmRlZmluZWQoKTsKLX0KLQotfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQotCi0jZW5kaWYgLy8g
RU5BQkxFKE1FRElBX1NUUkVBTSkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdz
L2pzL1dlYkNvcmVKU0J1aWx0aW5zLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL1dl
YkNvcmVKU0J1aWx0aW5zLmNwcAppbmRleCBhZGYxMGU4N2E3ZWJjM2NhOWNjN2NmOGJmOGNkZDIy
NTBhM2FkYjdlLi5mODI4MTBlMjY4ZDg1Nzc3ZTYwYWIyNjlkMGQ1OGFkZjMzY2IwNDQ0IDEwMDY0
NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9XZWJDb3JlSlNCdWlsdGlucy5jcHAK
KysrIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvV2ViQ29yZUpTQnVpbHRpbnMuY3BwCkBA
IC00MSwzICs0MSw2IEBACiAjaW5jbHVkZSAiV3JpdGFibGVTdHJlYW1CdWlsdGlucy5jcHAiCiAj
aW5jbHVkZSAiV3JpdGFibGVTdHJlYW1JbnRlcm5hbHNCdWlsdGlucy5jcHAiCiAjZW5kaWYKKyNp
ZiBFTkFCTEUoTUVESUFfU1RSRUFNKQorI2luY2x1ZGUgIk5hdmlnYXRvclVzZXJNZWRpYUJ1aWx0
aW5zLmNwcCIKKyNlbmRpZgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMv
V2ViQ29yZUpTQnVpbHRpbnMuaCBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL1dlYkNvcmVK
U0J1aWx0aW5zLmgKaW5kZXggYWE3OWExMzJlYWZiMWU5ZjIxNmYzODU3NTliNzQ3ODlkZTU5NmI2
MC4uNWRjMGJmMTQ3NWJhMWI0M2NkMTE5ZDRiMGU3OWVjMWZmNDUxMTNhZCAxMDA2NDQKLS0tIGEv
U291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvV2ViQ29yZUpTQnVpbHRpbnMuaAorKysgYi9Tb3Vy
Y2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9XZWJDb3JlSlNCdWlsdGlucy5oCkBAIC02NCw2ICs2NCw3
IEBAIHB1YmxpYzoKICNlbmRpZgogI2lmIEVOQUJMRShNRURJQV9TVFJFQU0pCiAgICAgICAgICwg
bV9tZWRpYURldmljZXNCdWlsdGlucygmdm0pCisgICAgICAgICwgbV9uYXZpZ2F0b3JVc2VyTWVk
aWFCdWlsdGlucygmdm0pCiAjZW5kaWYKICAgICB7CiAjaWYgRU5BQkxFKFNUUkVBTVNfQVBJKQpA
QCAtODUsNiArODYsNyBAQCBwdWJsaWM6CiAjZW5kaWYKICNpZiBFTkFCTEUoTUVESUFfU1RSRUFN
KQogICAgIE1lZGlhRGV2aWNlc0J1aWx0aW5zV3JhcHBlciYgbWVkaWFEZXZpY2VzQnVpbHRpbnMo
KSB7IHJldHVybiBtX21lZGlhRGV2aWNlc0J1aWx0aW5zOyB9CisgICAgTmF2aWdhdG9yVXNlck1l
ZGlhQnVpbHRpbnNXcmFwcGVyJiBuYXZpZ2F0b3JVc2VyTWVkaWFCdWlsdGlucygpIHsgcmV0dXJu
IG1fbmF2aWdhdG9yVXNlck1lZGlhQnVpbHRpbnM7fQogI2VuZGlmCiAKIHByaXZhdGU6CkBAIC0x
MDIsNiArMTA0LDcgQEAgcHJpdmF0ZToKICNlbmRpZgogI2lmIEVOQUJMRShNRURJQV9TVFJFQU0p
CiAgICAgTWVkaWFEZXZpY2VzQnVpbHRpbnNXcmFwcGVyIG1fbWVkaWFEZXZpY2VzQnVpbHRpbnM7
CisgICAgTmF2aWdhdG9yVXNlck1lZGlhQnVpbHRpbnNXcmFwcGVyIG1fbmF2aWdhdG9yVXNlck1l
ZGlhQnVpbHRpbnM7CiAjZW5kaWYKIAogfTsKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL0NoYW5n
ZUxvZyBiL0xheW91dFRlc3RzL0NoYW5nZUxvZwppbmRleCBhMjY3ZGI2NjE0ZGRjYjljMDY0MjI4
YWZlZDEyN2Y2NTM1N2ZmZTE3Li44MDU3NTZkZTY3M2U5NWY5Y2VlMzQ1YjI0NzE2ZTQzYzlkM2My
Y2U1IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKKysrIGIvTGF5b3V0VGVzdHMv
Q2hhbmdlTG9nCkBAIC0xLDMgKzEsMTYgQEAKKzIwMTUtMTAtMTkgIFlvdWVubiBGYWJsZXQgIDx5
b3Vlbm4uZmFibGV0QGNyZi5jYW5vbi5mcj4KKworICAgICAgICBNb3ZlIHdlYmtpdEdldFVzZXJN
ZWRpYSB0byBKUyBCdWlsdGluCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3df
YnVnLmNnaT9pZD0xNDk0OTkKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4K
KworICAgICAgICAqIGZhc3QvbWVkaWFzdHJlYW0vYXJndW1lbnQtdHlwZXMtZXhwZWN0ZWQudHh0
OgorICAgICAgICAqIGZhc3QvbWVkaWFzdHJlYW0vZ2V0dXNlcm1lZGlhLWV4cGVjdGVkLnR4dDoK
KyAgICAgICAgKiBmYXN0L21lZGlhc3RyZWFtL2dldHVzZXJtZWRpYS5odG1sOgorICAgICAgICAq
IGZhc3QvbWVkaWFzdHJlYW0vc2NyaXB0LXRlc3RzL2FyZ3VtZW50LXR5cGVzLmpzOgorICAgICAg
ICAqIGh0dHAvdGVzdHMvbWVkaWEvbWVkaWEtc3RyZWFtL2Rpc2Nvbm5lY3RlZC1mcmFtZS1hbHJl
YWR5LWV4cGVjdGVkLnR4dDoKKwogMjAxNS0xMC0yOSAgU2VyZ2lvIFZpbGxhciBTZW5pbiAgPHN2
aWxsYXJAaWdhbGlhLmNvbT4KIAogICAgICAgICBbQ1NTIEdyaWQgTGF5b3V0XSBtaW4tY29udGVu
dCByb3cgZG9lcyBub3QgYWx3YXlzIHNocmluawpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFz
dC9tZWRpYXN0cmVhbS9hcmd1bWVudC10eXBlcy1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9m
YXN0L21lZGlhc3RyZWFtL2FyZ3VtZW50LXR5cGVzLWV4cGVjdGVkLnR4dAppbmRleCA0MjI0ZDQw
MjAyMjk5ZjAwMjEyZTI3MjFmMjFlNDMzZmNkNWUyOTI0Li41Y2JjNDg1ODgyNzYyOWJjZjQ4NGU2
ZjY0MTJmNTlmZTEwMzRjMWNmIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9mYXN0L21lZGlhc3Ry
ZWFtL2FyZ3VtZW50LXR5cGVzLWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9mYXN0L21l
ZGlhc3RyZWFtL2FyZ3VtZW50LXR5cGVzLWV4cGVjdGVkLnR4dApAQCAtMzAsNyArMzAsNyBAQCBQ
QVNTIG5hdmlnYXRvci53ZWJraXRHZXRVc2VyTWVkaWEoe3ZpZGVvOiB0cnVlfSwgdHJ1ZSkgdGhy
ZXcgZXhjZXB0aW9uIFR5cGVFcnJvcgogUEFTUyBuYXZpZ2F0b3Iud2Via2l0R2V0VXNlck1lZGlh
KHt2aWRlbzogdHJ1ZX0sIDQyKSB0aHJldyBleGNlcHRpb24gVHlwZUVycm9yOiBOb3QgZW5vdWdo
IGFyZ3VtZW50cy4KIFBBU1MgbmF2aWdhdG9yLndlYmtpdEdldFVzZXJNZWRpYSh7dmlkZW86IHRy
dWV9LCBJbmZpbml0eSkgdGhyZXcgZXhjZXB0aW9uIFR5cGVFcnJvcjogTm90IGVub3VnaCBhcmd1
bWVudHMuCiBQQVNTIG5hdmlnYXRvci53ZWJraXRHZXRVc2VyTWVkaWEoe3ZpZGVvOiB0cnVlfSwg
LUluZmluaXR5KSB0aHJldyBleGNlcHRpb24gVHlwZUVycm9yOiBOb3QgZW5vdWdoIGFyZ3VtZW50
cy4KLVBBU1MgbmF2aWdhdG9yLndlYmtpdEdldFVzZXJNZWRpYSh7IH0sIGVtcHR5RnVuY3Rpb24s
IGVtcHR5RnVuY3Rpb24pIHRocmV3IGV4Y2VwdGlvbiBFcnJvcjogTm90U3VwcG9ydGVkRXJyb3I6
IERPTSBFeGNlcHRpb24gOS4KK1BBU1MgbmF2aWdhdG9yLndlYmtpdEdldFVzZXJNZWRpYSh7IH0s
IGVtcHR5RnVuY3Rpb24sIGVtcHR5RnVuY3Rpb24pIGRpZCBub3QgdGhyb3cgZXhjZXB0aW9uLgog
UEFTUyBuYXZpZ2F0b3Iud2Via2l0R2V0VXNlck1lZGlhKHt2aWRlbzogdHJ1ZX0sIGVtcHR5RnVu
Y3Rpb24sIGVtcHR5RnVuY3Rpb24pIGRpZCBub3QgdGhyb3cgZXhjZXB0aW9uLgogUEFTUyBuYXZp
Z2F0b3Iud2Via2l0R2V0VXNlck1lZGlhKHt2aWRlbzogdHJ1ZX0sIGVtcHR5RnVuY3Rpb24sIHVu
ZGVmaW5lZCkgdGhyZXcgZXhjZXB0aW9uIFR5cGVFcnJvcjogQXJndW1lbnQgMyAoJ2Vycm9yQ2Fs
bGJhY2snKSB0byBOYXZpZ2F0b3Iud2Via2l0R2V0VXNlck1lZGlhIG11c3QgYmUgYSBmdW5jdGlv
bi4KIFBBU1MgbmF2aWdhdG9yLndlYmtpdEdldFVzZXJNZWRpYSh7YXVkaW86dHJ1ZSwgdmlkZW86
dHJ1ZX0sIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5lZCkgdGhyZXcgZXhjZXB0aW9uIFR5cGVFcnJv
cjogQXJndW1lbnQgMyAoJ2Vycm9yQ2FsbGJhY2snKSB0byBOYXZpZ2F0b3Iud2Via2l0R2V0VXNl
ck1lZGlhIG11c3QgYmUgYSBmdW5jdGlvbi4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3Qv
bWVkaWFzdHJlYW0vZ2V0dXNlcm1lZGlhLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2Zhc3Qv
bWVkaWFzdHJlYW0vZ2V0dXNlcm1lZGlhLWV4cGVjdGVkLnR4dAppbmRleCBkY2E1ZmI5NjFjZjZl
YjVmNDQ1YWI0NTBhYTBiM2U1MmQ0MTA3MDhhLi5kNmNmZWI0OTBjYzAyMTYwZmRkZDNhMjNmODMw
M2YyYWU1YzdkYTA2IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9mYXN0L21lZGlhc3RyZWFtL2dl
dHVzZXJtZWRpYS1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC9tZWRpYXN0cmVh
bS9nZXR1c2VybWVkaWEtZXhwZWN0ZWQudHh0CkBAIC0zLDkgKzMsMTAgQEAgVGVzdHMgd2Via2l0
R2V0VXNlck1lZGlhLgogT24gc3VjY2VzcywgeW91IHdpbGwgc2VlIGEgc2VyaWVzIG9mICJQQVNT
IiBtZXNzYWdlcywgZm9sbG93ZWQgYnkgIlRFU1QgQ09NUExFVEUiLgogCiAKLVBBU1MgbmF2aWdh
dG9yLndlYmtpdEdldFVzZXJNZWRpYSh7YXVkaW86ZmFsc2UsIHZpZGVvOmZhbHNlfSwgZXJyb3Is
IGVycm9yKTsgdGhyZXcgZXhjZXB0aW9uIEVycm9yOiBOb3RTdXBwb3J0ZWRFcnJvcjogRE9NIEV4
Y2VwdGlvbiA5LgorUEFTUyBuYXZpZ2F0b3Iud2Via2l0R2V0VXNlck1lZGlhKHthdWRpbzpmYWxz
ZSwgdmlkZW86ZmFsc2V9LCBlcnJvciwgZXhwZWN0ZWRFcnJvcik7IGRpZCBub3QgdGhyb3cgZXhj
ZXB0aW9uLgogUEFTUyBuYXZpZ2F0b3Iud2Via2l0R2V0VXNlck1lZGlhKHthdWRpbzpmYWxzZSwg
dmlkZW86ZmFsc2V9LCBlcnJvciwgbnVsbCk7IHRocmV3IGV4Y2VwdGlvbiBUeXBlRXJyb3I6IEFy
Z3VtZW50IDMgKCdlcnJvckNhbGxiYWNrJykgdG8gTmF2aWdhdG9yLndlYmtpdEdldFVzZXJNZWRp
YSBtdXN0IGJlIGEgZnVuY3Rpb24uCiBQQVNTIG5hdmlnYXRvci53ZWJraXRHZXRVc2VyTWVkaWEo
e2F1ZGlvOnRydWV9LCBnb3RTdHJlYW0xLCBlcnJvcik7IGRpZCBub3QgdGhyb3cgZXhjZXB0aW9u
LgorUEFTUyBFcnJvciBjYWxsYmFjayBjYWxsZWQuCiBQQVNTIFN0cmVhbSBnZW5lcmF0ZWQuCiBQ
QVNTIHN0cmVhbS5nZXRBdWRpb1RyYWNrcygpLmxlbmd0aCBpcyAxCiBQQVNTIHN0cmVhbS5nZXRW
aWRlb1RyYWNrcygpLmxlbmd0aCBpcyAwCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L21l
ZGlhc3RyZWFtL2dldHVzZXJtZWRpYS5odG1sIGIvTGF5b3V0VGVzdHMvZmFzdC9tZWRpYXN0cmVh
bS9nZXR1c2VybWVkaWEuaHRtbAppbmRleCAxM2ZhZTEzMDY3MmJkMTU0NGViN2JhNmMyZWUxYjFk
ODQ3YTQ5ZDUxLi5lMzM4MzlmMWU0NzM5ZmJiOTcyNmYxMzAwNzc0OGIxNThkNGQwOTI4IDEwMDY0
NAotLS0gYS9MYXlvdXRUZXN0cy9mYXN0L21lZGlhc3RyZWFtL2dldHVzZXJtZWRpYS5odG1sCisr
KyBiL0xheW91dFRlc3RzL2Zhc3QvbWVkaWFzdHJlYW0vZ2V0dXNlcm1lZGlhLmh0bWwKQEAgLTI0
LDYgKzI0LDEwIEBACiAgICAgICAgICAgICAgICAgZmluaXNoSlNUZXN0KCk7CiAgICAgICAgICAg
ICB9CiAKKyAgICAgICAgICAgIGZ1bmN0aW9uIGV4cGVjdGVkRXJyb3IoKSB7CisgICAgICAgICAg
ICAgICAgdGVzdFBhc3NlZCgnRXJyb3IgY2FsbGJhY2sgY2FsbGVkLicpOworICAgICAgICAgICAg
fQorCiAgICAgICAgICAgICBmdW5jdGlvbiBnb3RTdHJlYW1JbkVycm9yKHMpIHsKICAgICAgICAg
ICAgICAgICB0ZXN0RmFpbGVkKCdTdHJlYW0gZ2VuZXJhdGVkLicpOwogICAgICAgICAgICAgICAg
IGZpbmlzaEpTVGVzdCgpOwpAQCAtODcsNyArOTEsNyBAQAogICAgICAgICAgICAgICAgIHNob3Vs
ZE5vdFRocm93KCJuYXZpZ2F0b3Iud2Via2l0R2V0VXNlck1lZGlhKHt2aWRlbzp0cnVlfSwgZ290
U3RyZWFtMiwgZXJyb3IpOyIpCiAgICAgICAgICAgICB9CiAKLSAgICAgICAgICAgIHNob3VsZFRo
cm93KCJuYXZpZ2F0b3Iud2Via2l0R2V0VXNlck1lZGlhKHthdWRpbzpmYWxzZSwgdmlkZW86ZmFs
c2V9LCBlcnJvciwgZXJyb3IpOyIpCisgICAgICAgICAgICBzaG91bGROb3RUaHJvdygibmF2aWdh
dG9yLndlYmtpdEdldFVzZXJNZWRpYSh7YXVkaW86ZmFsc2UsIHZpZGVvOmZhbHNlfSwgZXJyb3Is
IGV4cGVjdGVkRXJyb3IpOyIpCiAgICAgICAgICAgICBzaG91bGRUaHJvdygibmF2aWdhdG9yLndl
YmtpdEdldFVzZXJNZWRpYSh7YXVkaW86ZmFsc2UsIHZpZGVvOmZhbHNlfSwgZXJyb3IsIG51bGwp
OyIpCiAKICAgICAgICAgICAgIHNldFVzZXJNZWRpYVBlcm1pc3Npb24odHJ1ZSk7CmRpZmYgLS1n
aXQgYS9MYXlvdXRUZXN0cy9mYXN0L21lZGlhc3RyZWFtL3NjcmlwdC10ZXN0cy9hcmd1bWVudC10
eXBlcy5qcyBiL0xheW91dFRlc3RzL2Zhc3QvbWVkaWFzdHJlYW0vc2NyaXB0LXRlc3RzL2FyZ3Vt
ZW50LXR5cGVzLmpzCmluZGV4IDExYWRmODkzNjc3ZDFiYjJhNzg0ZTk2NGQ5MjdjZGE0YmFhMzc3
OTMuLmZmMDhiNDAwNjk0ODQ3MTU4YWQ1NjFjYzVmMzM4ZjRkMjZiNDYyMDUgMTAwNjQ0Ci0tLSBh
L0xheW91dFRlc3RzL2Zhc3QvbWVkaWFzdHJlYW0vc2NyaXB0LXRlc3RzL2FyZ3VtZW50LXR5cGVz
LmpzCisrKyBiL0xheW91dFRlc3RzL2Zhc3QvbWVkaWFzdHJlYW0vc2NyaXB0LXRlc3RzL2FyZ3Vt
ZW50LXR5cGVzLmpzCkBAIC01NCw3ICs1NCw3IEBAIHRlc3QoJ25hdmlnYXRvci53ZWJraXRHZXRV
c2VyTWVkaWEoe3ZpZGVvOiB0cnVlfSwgSW5maW5pdHkpJywgdHJ1ZSk7CiB0ZXN0KCduYXZpZ2F0
b3Iud2Via2l0R2V0VXNlck1lZGlhKHt2aWRlbzogdHJ1ZX0sIC1JbmZpbml0eSknLCB0cnVlKTsK
IAogLy8gMyBBcmd1bWVudHMuCi10ZXN0KCduYXZpZ2F0b3Iud2Via2l0R2V0VXNlck1lZGlhKHsg
fSwgZW1wdHlGdW5jdGlvbiwgZW1wdHlGdW5jdGlvbiknLCB0cnVlLCBub3RTdXBwb3J0ZWRFcnJv
cik7Cit0ZXN0KCduYXZpZ2F0b3Iud2Via2l0R2V0VXNlck1lZGlhKHsgfSwgZW1wdHlGdW5jdGlv
biwgZW1wdHlGdW5jdGlvbiknLCBmYWxzZSk7CiB0ZXN0KCduYXZpZ2F0b3Iud2Via2l0R2V0VXNl
ck1lZGlhKHt2aWRlbzogdHJ1ZX0sIGVtcHR5RnVuY3Rpb24sIGVtcHR5RnVuY3Rpb24pJywgZmFs
c2UpOwogdGVzdCgnbmF2aWdhdG9yLndlYmtpdEdldFVzZXJNZWRpYSh7dmlkZW86IHRydWV9LCBl
bXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQpJywgdHJ1ZSwgZXJyb3JDYWxsYmFja0Vycm9yKTsKIHRl
c3QoJ25hdmlnYXRvci53ZWJraXRHZXRVc2VyTWVkaWEoe2F1ZGlvOnRydWUsIHZpZGVvOnRydWV9
LCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQpJywgdHJ1ZSwgZXJyb3JDYWxsYmFja0Vycm9yKTsK
ZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvbWVkaWEvbWVkaWEtc3RyZWFtL2Rp
c2Nvbm5lY3RlZC1mcmFtZS1hbHJlYWR5LWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2h0dHAv
dGVzdHMvbWVkaWEvbWVkaWEtc3RyZWFtL2Rpc2Nvbm5lY3RlZC1mcmFtZS1hbHJlYWR5LWV4cGVj
dGVkLnR4dAppbmRleCBlNTA1ZGI5YjJjN2ViNjM5MzNmOWVmMTA1YjMwZDkyNWQwOTZkNTcxLi4y
YWMzMTQ3NzcyZWFlMTYzMzQzOGZkYWZhZDUzMGE1ZjUyNThiYjRkIDEwMDY0NAotLS0gYS9MYXlv
dXRUZXN0cy9odHRwL3Rlc3RzL21lZGlhL21lZGlhLXN0cmVhbS9kaXNjb25uZWN0ZWQtZnJhbWUt
YWxyZWFkeS1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9tZWRpYS9t
ZWRpYS1zdHJlYW0vZGlzY29ubmVjdGVkLWZyYW1lLWFscmVhZHktZXhwZWN0ZWQudHh0CkBAIC0x
LDQgKzEsNCBAQAotQ09OU09MRSBNRVNTQUdFOiBsaW5lIDI0OiBOb3RTdXBwb3J0ZWRFcnJvcjog
RE9NIEV4Y2VwdGlvbiA5OiBUaGUgaW1wbGVtZW50YXRpb24gZGlkIG5vdCBzdXBwb3J0IHRoZSBy
ZXF1ZXN0ZWQgdHlwZSBvZiBvYmplY3Qgb3Igb3BlcmF0aW9uLgorQ09OU09MRSBNRVNTQUdFOiBs
aW5lIDI0OiBUeXBlRXJyb3I6IFRoZSBpbXBsZW1lbnRhdGlvbiBkaWQgbm90IHN1cHBvcnQgdGhl
IHJlcXVlc3RlZCB0eXBlIG9mIG9iamVjdCBvciBvcGVyYXRpb24uCiBUZXN0cyB0aGF0IHdoZW4g
YSBnZXRVc2VyTWVkaWEgcmVxdWVzdCBpcyBtYWRlIGFmdGVyIGl0cyBmcmFtZSBoYXMgYmVlbiBk
aXNjb25uZWN0ZWQsIG5vIGNhbGxiYWNrcyBhcmUgbWFkZSBhbmQgbm8gY3Jhc2ggb2NjdXJzLgog
CiBPbiBzdWNjZXNzLCB5b3Ugd2lsbCBzZWUgYSBzZXJpZXMgb2YgIlBBU1MiIG1lc3NhZ2VzLCBm
b2xsb3dlZCBieSAiVEVTVCBDT01QTEVURSIuCg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>264580</attachid>
            <date>2015-11-02 05:56:08 -0800</date>
            <delta_ts>2015-11-02 06:58:53 -0800</delta_ts>
            <desc>Fixing build</desc>
            <filename>bug-149499-20151102145458.patch</filename>
            <type>text/plain</type>
            <size>52226</size>
            <attacher name="youenn fablet">youennf</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTkxODg3CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggZjgwMmY5YTgzYzFmMmQ4
Y2E4MTBiMWE1ZjM1ODBjZWNiNDA0NDMwZS4uNDA1NGZhYjUwMWViYzA5YjkyOTU0ZTEyNjMyZGQ4
MWYzYWRkMGFjMCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDQxIEBACisyMDE1LTEwLTE5ICBZb3Vl
bm4gRmFibGV0ICA8eW91ZW5uLmZhYmxldEBjcmYuY2Fub24uZnI+CisKKyAgICAgICAgTW92ZSB3
ZWJraXRHZXRVc2VyTWVkaWEgdG8gSlMgQnVpbHRpbgorICAgICAgICBodHRwczovL2J1Z3Mud2Vi
a2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTQ5NDk5CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9C
T0RZIChPT1BTISkuCisKKyAgICAgICAgSW1wbGVtZW50ZWQgd2Via2l0R2V0VXNlck1lZGlhIGFz
IGEgSlNCdWlsdGluIHdyYXBwZXIgYXJvdW5kIG5hdmlnYXRvci5tZWRpYURldmljZXMuZ2V0VXNl
ck1lZGlhLgorCisgICAgICAgIFJlbW92ZWQgY3BwIGJhc2VkIHZlcnNpb24uCisKKyAgICAgICAg
VGhlIGpzIGJ1aWx0aW5nIGltcGxlbWVudGF0aW9uIGNoZWNrcyBmb3IgYXJndW1lbnQgYnV0IGRv
ZXMgbm90IHJhaXNlIGV4Y2VwdGlvbiB3aGVuIHRoZSByZXF1ZXN0IGlzIG5vdCBzdXBwb3J0ZWQu
CisgICAgICAgIFRoZSBlcnJvciBjYWxsYmFjayBpcyBjYWxsZWQgaW5zdGVhZCwgaW4gYW4gYXN5
bmNocm9ub3VzIGZhc2hpb24uCisgICAgICAgIFRoZSBqcyBidWlsdGluIGltcGxlbWVudGF0aW9u
IGRvZXMgbm90IGNoZWNrIGZpcnN0IHRoYXQgaXQgaXMgY2FsbGVkIG9uIG5hdmlnYXRvciwgY29u
dHJhcnkgdG8gdGhlIGNwcCBpbXBsZW1lbnRhdGlvbi4KKyAgICAgICAgVGhpcyBpcyBkb25lIGFm
dGVyd2FyZHMgd2hlbiBjYWxsaW5nIG5hdmlnYXRvci5NZWRpYURldmljZXMuQGdldFVzZXJNZWRp
YS4KKworICAgICAgICBDb3ZlcmVkIGJ5IGV4aXN0aW5nIGFuZCBtb2RpZmllZCB0ZXN0cy4KKwor
ICAgICAgICAqIENNYWtlTGlzdHMudHh0OiBBZGRpbmcgTmF2aWdhdG9yVXNlck1lZGlhLmpzIGFz
IGJ1aWx0LWluIEpTIGZpbGUuCisgICAgICAgICogRGVyaXZlZFNvdXJjZXMubWFrZTogRGl0dG8u
CisgICAgICAgICogTW9kdWxlcy9tZWRpYXN0cmVhbS9OYXZpZ2F0b3JVc2VyTWVkaWEuaWRsOiBN
YWtpbmcgd2Via2l0R2V0VXNlck1lZGlhIEpTQnVpbHRpbgorICAgICAgICAqIE1vZHVsZXMvbWVk
aWFzdHJlYW0vTmF2aWdhdG9yVXNlck1lZGlhLmpzOgorICAgICAgICAod2Via2l0R2V0VXNlck1l
ZGlhKToKKyAgICAgICAgKiBNb2R1bGVzL21lZGlhc3RyZWFtL05hdmlnYXRvclVzZXJNZWRpYUVy
cm9yQ2FsbGJhY2suaDogUmVtb3ZlZC4KKyAgICAgICAgKiBNb2R1bGVzL21lZGlhc3RyZWFtL05h
dmlnYXRvclVzZXJNZWRpYUVycm9yQ2FsbGJhY2suaWRsOiBSZW1vdmVkLgorICAgICAgICAqIE1v
ZHVsZXMvbWVkaWFzdHJlYW0vTmF2aWdhdG9yVXNlck1lZGlhU3VjY2Vzc0NhbGxiYWNrLmg6IFJl
bW92ZWQuCisgICAgICAgICogTW9kdWxlcy9tZWRpYXN0cmVhbS9OYXZpZ2F0b3JVc2VyTWVkaWFT
dWNjZXNzQ2FsbGJhY2suaWRsOiBSZW1vdmVkLgorICAgICAgICAqIE1vZHVsZXMvbWVkaWFzdHJl
YW0vVXNlck1lZGlhUmVxdWVzdC5jcHA6CisgICAgICAgICogTW9kdWxlcy9tZWRpYXN0cmVhbS9V
c2VyTWVkaWFSZXF1ZXN0Lmg6CisgICAgICAgICogV2ViQ29yZS54Y29kZXByb2ovcHJvamVjdC5w
Ynhwcm9qOgorICAgICAgICAqIGJpbmRpbmdzL2pzL0pTRE9NV2luZG93QmFzZS5jcHA6CisgICAg
ICAgIChXZWJDb3JlOjpKU0RPTVdpbmRvd0Jhc2U6OmZpbmlzaENyZWF0aW9uKTogU3R5bGUgbW9k
aWZpY2F0aW9ucy4KKyAgICAgICAgKiBiaW5kaW5ncy9qcy9KU05hdmlnYXRvckN1c3RvbS5jcHA6
IFJlbW92ZWQuCisgICAgICAgICogYmluZGluZ3MvanMvV2ViQ29yZUpTQnVpbHRpbnMuY3BwOiBB
ZGRpbmcgc3VwcG9ydCBmb3IgTmF2aWdhdG9yVXNlck1lZGlhLmpzIGJ1aWx0LWluIEpTIGZpbGUu
CisgICAgICAgICogYmluZGluZ3MvanMvV2ViQ29yZUpTQnVpbHRpbnMuaDogRGl0dG8uCisgICAg
ICAgIChXZWJDb3JlOjpKU0J1aWx0aW5GdW5jdGlvbnM6OkpTQnVpbHRpbkZ1bmN0aW9ucyk6Cisg
ICAgICAgIChXZWJDb3JlOjpKU0J1aWx0aW5GdW5jdGlvbnM6Om5hdmlnYXRvclVzZXJNZWRpYUJ1
aWx0aW5zKToKKwogMjAxNS0xMS0wMiAgWW91ZW5uIEZhYmxldCAgPHlvdWVubi5mYWJsZXRAY3Jm
LmNhbm9uLmZyPgogCiAgICAgICAgIFJlbmFtZSBKU0RPTVdyYXBwZXIuaW1wbCB0byBKU0RPTVdy
YXBwZXIud3JhcHBlZApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvQ01ha2VMaXN0cy50eHQg
Yi9Tb3VyY2UvV2ViQ29yZS9DTWFrZUxpc3RzLnR4dAppbmRleCBjYWFkYjk1MDAxMzI1NmM5Y2Zl
NDBlNjM0MGI0MmQyZTJjZmY0MDNhLi42OTkxODViMmQ3NTk1MDA1MTBlZGNmYjc0ODljODcwYjI2
MDc0OWJkIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9DTWFrZUxpc3RzLnR4dAorKysgYi9T
b3VyY2UvV2ViQ29yZS9DTWFrZUxpc3RzLnR4dApAQCAtMjQxLDggKzI0MSw2IEBAIHNldChXZWJD
b3JlX05PTl9TVkdfSURMX0ZJTEVTCiAgICAgTW9kdWxlcy9tZWRpYXN0cmVhbS9OYXZpZ2F0b3JN
ZWRpYURldmljZXMuaWRsCiAgICAgTW9kdWxlcy9tZWRpYXN0cmVhbS9OYXZpZ2F0b3JVc2VyTWVk
aWEuaWRsCiAgICAgTW9kdWxlcy9tZWRpYXN0cmVhbS9OYXZpZ2F0b3JVc2VyTWVkaWFFcnJvci5p
ZGwKLSAgICBNb2R1bGVzL21lZGlhc3RyZWFtL05hdmlnYXRvclVzZXJNZWRpYUVycm9yQ2FsbGJh
Y2suaWRsCi0gICAgTW9kdWxlcy9tZWRpYXN0cmVhbS9OYXZpZ2F0b3JVc2VyTWVkaWFTdWNjZXNz
Q2FsbGJhY2suaWRsCiAgICAgTW9kdWxlcy9tZWRpYXN0cmVhbS9SVENDb25maWd1cmF0aW9uLmlk
bAogICAgIE1vZHVsZXMvbWVkaWFzdHJlYW0vUlRDRFRNRlNlbmRlci5pZGwKICAgICBNb2R1bGVz
L21lZGlhc3RyZWFtL1JUQ0RUTUZUb25lQ2hhbmdlRXZlbnQuaWRsCkBAIC0xMjAxLDcgKzExOTks
NiBAQCBzZXQoV2ViQ29yZV9TT1VSQ0VTCiAgICAgYmluZGluZ3MvanMvSlNNdXRhdGlvbkNhbGxi
YWNrLmNwcAogICAgIGJpbmRpbmdzL2pzL0pTTXV0YXRpb25PYnNlcnZlckN1c3RvbS5jcHAKICAg
ICBiaW5kaW5ncy9qcy9KU05hbWVkTm9kZU1hcEN1c3RvbS5jcHAKLSAgICBiaW5kaW5ncy9qcy9K
U05hdmlnYXRvckN1c3RvbS5jcHAKICAgICBiaW5kaW5ncy9qcy9KU05vZGVDdXN0b20uY3BwCiAg
ICAgYmluZGluZ3MvanMvSlNOb2RlRmlsdGVyQ3VzdG9tLmNwcAogICAgIGJpbmRpbmdzL2pzL0pT
Tm9kZUl0ZXJhdG9yQ3VzdG9tLmNwcApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvRGVyaXZl
ZFNvdXJjZXMubWFrZSBiL1NvdXJjZS9XZWJDb3JlL0Rlcml2ZWRTb3VyY2VzLm1ha2UKaW5kZXgg
ZGZkYTJmMjdmZmI5NzYwN2FiMGFjMzA2ZTY3NDZiOTg0OWU4MTk1NS4uNTI0MjVmODY1MDU5M2Iy
NmI1MTFkMDM2MjZhNTZkNWNhZDJkZmVjNSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvRGVy
aXZlZFNvdXJjZXMubWFrZQorKysgYi9Tb3VyY2UvV2ViQ29yZS9EZXJpdmVkU291cmNlcy5tYWtl
CkBAIC0xMzcsOCArMTM3LDYgQEAgTk9OX1NWR19CSU5ESU5HX0lETFMgPSBcCiAgICAgJChXZWJD
b3JlKS9Nb2R1bGVzL21lZGlhc3RyZWFtL05hdmlnYXRvck1lZGlhRGV2aWNlcy5pZGwgXAogICAg
ICQoV2ViQ29yZSkvTW9kdWxlcy9tZWRpYXN0cmVhbS9OYXZpZ2F0b3JVc2VyTWVkaWEuaWRsIFwK
ICAgICAkKFdlYkNvcmUpL01vZHVsZXMvbWVkaWFzdHJlYW0vTmF2aWdhdG9yVXNlck1lZGlhRXJy
b3IuaWRsIFwKLSAgICAkKFdlYkNvcmUpL01vZHVsZXMvbWVkaWFzdHJlYW0vTmF2aWdhdG9yVXNl
ck1lZGlhRXJyb3JDYWxsYmFjay5pZGwgXAotICAgICQoV2ViQ29yZSkvTW9kdWxlcy9tZWRpYXN0
cmVhbS9OYXZpZ2F0b3JVc2VyTWVkaWFTdWNjZXNzQ2FsbGJhY2suaWRsIFwKICAgICAkKFdlYkNv
cmUpL01vZHVsZXMvbWVkaWFzdHJlYW0vUlRDQ29uZmlndXJhdGlvbi5pZGwgXAogICAgICQoV2Vi
Q29yZSkvTW9kdWxlcy9tZWRpYXN0cmVhbS9SVENEVE1GU2VuZGVyLmlkbCBcCiAgICAgJChXZWJD
b3JlKS9Nb2R1bGVzL21lZGlhc3RyZWFtL1JUQ0RUTUZUb25lQ2hhbmdlRXZlbnQuaWRsIFwKQEAg
LTEyNTcsNiArMTI1NSw3IEBAIFdlYlJlcGxheUlucHV0cy5oIDogJChJTlBVVF9HRU5FUkFUT1Jf
U1BFQ0lGSUNBVElPTlMpICQoSU5QVVRfR0VORVJBVE9SX1NDUklQVFMpCiAKIFdlYkNvcmVfQlVJ
TFRJTlNfU09VUkNFUyA9IFwKICAgICAkKFdlYkNvcmUpL01vZHVsZXMvbWVkaWFzdHJlYW0vTWVk
aWFEZXZpY2VzLmpzIFwKKyAgICAkKFdlYkNvcmUpL01vZHVsZXMvbWVkaWFzdHJlYW0vTmF2aWdh
dG9yVXNlck1lZGlhLmpzIFwKICAgICAkKFdlYkNvcmUpL01vZHVsZXMvc3RyZWFtcy9CeXRlTGVu
Z3RoUXVldWluZ1N0cmF0ZWd5LmpzIFwKICAgICAkKFdlYkNvcmUpL01vZHVsZXMvc3RyZWFtcy9D
b3VudFF1ZXVpbmdTdHJhdGVneS5qcyBcCiAgICAgJChXZWJDb3JlKS9Nb2R1bGVzL3N0cmVhbXMv
UmVhZGFibGVTdHJlYW0uanMgXApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9t
ZWRpYXN0cmVhbS9OYXZpZ2F0b3JVc2VyTWVkaWEuaWRsIGIvU291cmNlL1dlYkNvcmUvTW9kdWxl
cy9tZWRpYXN0cmVhbS9OYXZpZ2F0b3JVc2VyTWVkaWEuaWRsCmluZGV4IDRjNjVjYjdhZTEyYzQz
YWE0YjM5NGZmM2QzZWY0YzlmOTE2NWY4NjUuLjNhYTQ5M2YwZjk1OWJhZDIyOWJlMWM5NGE4ZjEx
YmE1Mjk0NTE3YTAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvbWVkaWFzdHJl
YW0vTmF2aWdhdG9yVXNlck1lZGlhLmlkbAorKysgYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL21l
ZGlhc3RyZWFtL05hdmlnYXRvclVzZXJNZWRpYS5pZGwKQEAgLTIwLDggKzIwLDYgQEAKIFsKICAg
ICBDb25kaXRpb25hbD1NRURJQV9TVFJFQU0sCiBdIHBhcnRpYWwgaW50ZXJmYWNlIE5hdmlnYXRv
ciB7Ci0gICAgW0N1c3RvbSwgUmFpc2VzRXhjZXB0aW9uXSB2b2lkIHdlYmtpdEdldFVzZXJNZWRp
YShEaWN0aW9uYXJ5IG9wdGlvbnMsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgTmF2aWdhdG9yVXNlck1lZGlhU3VjY2Vzc0NhbGxiYWNrIHN1Y2Nlc3ND
YWxsYmFjaywKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICBvcHRpb25hbCBOYXZpZ2F0b3JVc2VyTWVkaWFFcnJvckNhbGxiYWNrIGVycm9yQ2FsbGJhY2sp
OworICAgIFtKU0J1aWx0aW5dIHZvaWQgd2Via2l0R2V0VXNlck1lZGlhKERpY3Rpb25hcnkgb2Jq
ZWN0LCBhbnkgc3VjY2Vzc0NhbGxiYWNrLCBhbnkgZXJyb3JDYWxsYmFjayk7CiB9OwogCmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL21lZGlhc3RyZWFtL05hdmlnYXRvclVzZXJN
ZWRpYS5qcyBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvbWVkaWFzdHJlYW0vTmF2aWdhdG9yVXNl
ck1lZGlhLmpzCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAuLjk1NzlhYzYzNWE3M2I0ZmE0Mjg5YzUxYzMxMjNlYzUxZjQx
ODQ1ZDUKLS0tIC9kZXYvbnVsbAorKysgYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL21lZGlhc3Ry
ZWFtL05hdmlnYXRvclVzZXJNZWRpYS5qcwpAQCAtMCwwICsxLDQ2IEBACisvKgorICogQ29weXJp
Z2h0IChDKSAyMDE1IENhbm9uIEluYy4KKyAqCisgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGlu
IHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKKyAqIG1vZGlmaWNhdGlv
biwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucwor
ICogYXJlIG1ldDoKKyAqIDEuIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJl
dGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25k
aXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisgKiAyLiBSZWRpc3RyaWJ1dGlv
bnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAorICog
ICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNj
bGFpbWVyIGluIHRoZQorICogICAgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxz
IHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KKyAqCisgKiBUSElTIFNPRlRXQVJFIElT
IFBST1ZJREVEIEJZIEFQUExFIElOQy4gYGBBUyBJUycnIEFORCBBTlkKKyAqIEVYUFJFU1MgT1Ig
SU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgVEhFCisg
KiBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBB
IFBBUlRJQ1VMQVIKKyAqIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuICBJTiBOTyBFVkVOVCBTSEFM
TCBBUFBMRSBJTkMuIE9SCisgKiBDT05UUklCVVRPUlMgQkUgTElBQkxFIEZPUiBBTlkgRElSRUNU
LCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwKKyAqIEVYRU1QTEFSWSwgT1IgQ09OU0VR
VUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywKKyAqIFBST0NV
UkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLCBEQVRB
LCBPUgorICogUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNF
RCBBTkQgT04gQU5ZIFRIRU9SWQorICogT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNU
LCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUCisgKiAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1Ig
T1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UKKyAqIE9GIFRISVMg
U09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1B
R0UuCisgKi8KKworZnVuY3Rpb24gd2Via2l0R2V0VXNlck1lZGlhKG9wdGlvbnMsIHN1Y2Nlc3ND
YWxsYmFjaywgZXJyb3JDYWxsYmFjaykKK3sKKyAgICAidXNlIHN0cmljdCI7CisKKyAgICAvLyBG
SVhNRTogV2Ugc2hvdWxkIHJhaXNlIGEgRE9NIHVuc3VwcG9ydGVkIGV4Y2VwdGlvbiBpZiB0aGVy
ZSBpcyBubyBuYXZpZ2F0b3IgYW5kIHByb3Blcmx5IGRldGVjdCB3aGV0aGVyIG1ldGhvZCBpcyBu
b3QgY2FsbGVkIG9uIGEgTmF2aWdhdG9yIG9iamVjdC4KKyAgICBpZiAoISh0aGlzLm1lZGlhRGV2
aWNlcyAmJiB0aGlzLm1lZGlhRGV2aWNlcy5AZ2V0VXNlck1lZGlhRnJvbUpTKSkKKyAgICAgICAg
dGhyb3cgbmV3IEBUeXBlRXJyb3IoIlRoZSBpbXBsZW1lbnRhdGlvbiBkaWQgbm90IHN1cHBvcnQg
dGhlIHJlcXVlc3RlZCB0eXBlIG9mIG9iamVjdCBvciBvcGVyYXRpb24uIik7CisKKyAgICBpZiAo
YXJndW1lbnRzLmxlbmd0aCA8IDMpCisgICAgICAgIHRocm93IG5ldyBAVHlwZUVycm9yKCJOb3Qg
ZW5vdWdoIGFyZ3VtZW50cyIpOworCisgICAgaWYgKG9wdGlvbnMgIT09IE9iamVjdChvcHRpb25z
KSkKKyAgICAgICAgdGhyb3cgbmV3IEBUeXBlRXJyb3IoIkFyZ3VtZW50IDEgKG9wdGlvbnMpIHRv
IE5hdmlnYXRvci53ZWJraXRHZXRVc2VyTWVkaWEgbXVzdCBiZSBhbiBvYmplY3QiKTsKKworICAg
IGlmICh0eXBlb2Ygc3VjY2Vzc0NhbGxiYWNrICE9PSAiZnVuY3Rpb24iKQorICAgICAgICB0aHJv
dyBuZXcgQFR5cGVFcnJvcigiQXJndW1lbnQgMiAoJ3N1Y2Nlc3NDYWxsYmFjaycpIHRvIE5hdmln
YXRvci53ZWJraXRHZXRVc2VyTWVkaWEgbXVzdCBiZSBhIGZ1bmN0aW9uIik7CisgICAgaWYgKHR5
cGVvZiBlcnJvckNhbGxiYWNrICE9PSAiZnVuY3Rpb24iKQorICAgICAgICB0aHJvdyBuZXcgQFR5
cGVFcnJvcigiQXJndW1lbnQgMyAoJ2Vycm9yQ2FsbGJhY2snKSB0byBOYXZpZ2F0b3Iud2Via2l0
R2V0VXNlck1lZGlhIG11c3QgYmUgYSBmdW5jdGlvbiIpOworCisgICAgdGhpcy5tZWRpYURldmlj
ZXMuQGdldFVzZXJNZWRpYUZyb21KUyhvcHRpb25zKS50aGVuKHN1Y2Nlc3NDYWxsYmFjaywgZXJy
b3JDYWxsYmFjayk7Cit9CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL21lZGlh
c3RyZWFtL05hdmlnYXRvclVzZXJNZWRpYUVycm9yQ2FsbGJhY2suaCBiL1NvdXJjZS9XZWJDb3Jl
L01vZHVsZXMvbWVkaWFzdHJlYW0vTmF2aWdhdG9yVXNlck1lZGlhRXJyb3JDYWxsYmFjay5oCmRl
bGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCBkZDNjOGIzMmI2ZWM3YzgwNjFkNjI0MjExM2U5
ZDA4NjQxZjVhYTA5Li4wMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwCi0t
LSBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvbWVkaWFzdHJlYW0vTmF2aWdhdG9yVXNlck1lZGlh
RXJyb3JDYWxsYmFjay5oCisrKyAvZGV2L251bGwKQEAgLTEsNDUgKzAsMCBAQAotLyoKLSAqIENv
cHlyaWdodCAoQykgMjAxMSBHb29nbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgotICoKLSAq
IFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGgg
b3Igd2l0aG91dAotICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQg
dGhlIGZvbGxvd2luZyBjb25kaXRpb25zCi0gKiBhcmUgbWV0OgotICogMS4gIFJlZGlzdHJpYnV0
aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0Ci0gKiAg
ICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNj
bGFpbWVyLgotICogMi4gIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJv
ZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0Ci0gKiAgICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29u
ZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQotICogICAgIGRvY3Vt
ZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmli
dXRpb24uCi0gKgotICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBBUFBMRSBJTkMuIEFO
RCBJVFMgQ09OVFJJQlVUT1JTIGBgQVMgSVMnJyBBTkQgQU5ZCi0gKiBFWFBSRVNTIE9SIElNUExJ
RUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFRIRSBJTVBMSUVE
Ci0gKiBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJU
SUNVTEFSIFBVUlBPU0UgQVJFCi0gKiBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBBUFBM
RSBJTkMuIE9SIElUUyBDT05UUklCVVRPUlMgQkUgTElBQkxFIEZPUiBBTlkKLSAqIERJUkVDVCwg
SU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElB
TCBEQU1BR0VTCi0gKiAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5U
IE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7Ci0gKiBMT1NTIE9GIFVTRSwgREFUQSwg
T1IgUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQg
T04KLSAqIEFOWSBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJ
Q1QgTElBQklMSVRZLCBPUiBUT1JUCi0gKiAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJX
SVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UgT0YgVEhJUwotICogU09GVFdB
UkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCi0g
Ki8KLQotI2lmbmRlZiBOYXZpZ2F0b3JVc2VyTWVkaWFFcnJvckNhbGxiYWNrX2gKLSNkZWZpbmUg
TmF2aWdhdG9yVXNlck1lZGlhRXJyb3JDYWxsYmFja19oCi0KLSNpZiBFTkFCTEUoTUVESUFfU1RS
RUFNKQotCi0jaW5jbHVkZSAiTmF2aWdhdG9yVXNlck1lZGlhRXJyb3IuaCIKLSNpbmNsdWRlIDx3
dGYvUmVmQ291bnRlZC5oPgotCi1uYW1lc3BhY2UgV2ViQ29yZSB7Ci0KLWNsYXNzIE5hdmlnYXRv
clVzZXJNZWRpYUVycm9yQ2FsbGJhY2sgOiBwdWJsaWMgUmVmQ291bnRlZDxOYXZpZ2F0b3JVc2Vy
TWVkaWFFcnJvckNhbGxiYWNrPiB7Ci1wdWJsaWM6Ci0gICAgdmlydHVhbCB+TmF2aWdhdG9yVXNl
ck1lZGlhRXJyb3JDYWxsYmFjaygpIHsgfQotICAgIHZpcnR1YWwgYm9vbCBoYW5kbGVFdmVudChO
YXZpZ2F0b3JVc2VyTWVkaWFFcnJvciopID0gMDsKLX07Ci0KLX0gLy8gbmFtZXNwYWNlIFdlYkNv
cmUKLQotI2VuZGlmIC8vIEVOQUJMRShNRURJQV9TVFJFQU0pCi0KLSNlbmRpZiAvLyBOYXZpZ2F0
b3JVc2VyTWVkaWFFcnJvckNhbGxiYWNrX2gKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL01v
ZHVsZXMvbWVkaWFzdHJlYW0vTmF2aWdhdG9yVXNlck1lZGlhRXJyb3JDYWxsYmFjay5pZGwgYi9T
b3VyY2UvV2ViQ29yZS9Nb2R1bGVzL21lZGlhc3RyZWFtL05hdmlnYXRvclVzZXJNZWRpYUVycm9y
Q2FsbGJhY2suaWRsCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCBmMGFjN2RkMWJmOWEz
ZmUyZDJmY2YyMDEzZDY2MDQ3Y2VmM2M2ZmQxLi4wMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwCi0tLSBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvbWVkaWFzdHJlYW0vTmF2
aWdhdG9yVXNlck1lZGlhRXJyb3JDYWxsYmFjay5pZGwKKysrIC9kZXYvbnVsbApAQCAtMSwzMSAr
MCwwIEBACi0vKgotICogQ29weXJpZ2h0IChDKSAyMDExIEdvb2dsZSBJbmMuIEFsbCByaWdodHMg
cmVzZXJ2ZWQuCi0gKgotICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJp
bmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0Ci0gKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0
ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKLSAqIGFyZSBtZXQ6Ci0g
KiAxLiAgUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92
ZSBjb3B5cmlnaHQKLSAqICAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0
aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCi0gKiAyLiAgUmVkaXN0cmlidXRpb25zIGluIGJpbmFy
eSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKLSAqICAgICBub3RpY2Us
IHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4g
dGhlCi0gKiAgICAgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVk
IHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KLSAqCi0gKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVE
IEJZIEFQUExFIElOQy4gQU5EIElUUyBDT05UUklCVVRPUlMgYGBBUyBJUycnIEFORCBBTlkKLSAq
IEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRF
RCBUTywgVEhFIElNUExJRUQKLSAqIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBG
SVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBUkUKLSAqIERJU0NMQUlNRUQuIElOIE5P
IEVWRU5UIFNIQUxMIEFQUExFIElOQy4gT1IgSVRTIENPTlRSSUJVVE9SUyBCRSBMSUFCTEUgRk9S
IEFOWQotICogRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZ
LCBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMKLSAqIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRF
RCBUTywgUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsKLSAqIExP
U1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhP
V0VWRVIgQ0FVU0VEIEFORCBPTgotICogQU5ZIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIg
SU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQKLSAqIChJTkNMVURJTkcgTkVH
TElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRSBP
RiBUSElTCi0gKiBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBP
RiBTVUNIIERBTUFHRS4KLSAqLwotCi1bCi0gICAgQ29uZGl0aW9uYWw9TUVESUFfU1RSRUFNLAot
ICAgIENhbGxiYWNrPUZ1bmN0aW9uT25seSwKLV0gY2FsbGJhY2sgaW50ZXJmYWNlIE5hdmlnYXRv
clVzZXJNZWRpYUVycm9yQ2FsbGJhY2sgewotICAgIGJvb2xlYW4gaGFuZGxlRXZlbnQoTmF2aWdh
dG9yVXNlck1lZGlhRXJyb3IgZXJyb3IpOwotfTsKLQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNv
cmUvTW9kdWxlcy9tZWRpYXN0cmVhbS9OYXZpZ2F0b3JVc2VyTWVkaWFTdWNjZXNzQ2FsbGJhY2su
aCBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvbWVkaWFzdHJlYW0vTmF2aWdhdG9yVXNlck1lZGlh
U3VjY2Vzc0NhbGxiYWNrLmgKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDlmNDU2ZWFk
YzZhZTQ5NDE4NmNmMDdjNmUyYTUyZTA0NzYzZjk5OTAuLjAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAKLS0tIGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9tZWRpYXN0cmVh
bS9OYXZpZ2F0b3JVc2VyTWVkaWFTdWNjZXNzQ2FsbGJhY2suaAorKysgL2Rldi9udWxsCkBAIC0x
LDQ2ICswLDAgQEAKLS8qCi0gKiBDb3B5cmlnaHQgKEMpIDIwMTEgR29vZ2xlIEluYy4gQWxsIHJp
Z2h0cyByZXNlcnZlZC4KLSAqCi0gKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBh
bmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKLSAqIG1vZGlmaWNhdGlvbiwgYXJlIHBl
cm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucwotICogYXJlIG1l
dDoKLSAqIDEuICBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhl
IGFib3ZlIGNvcHlyaWdodAotICogICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMg
YW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KLSAqIDIuICBSZWRpc3RyaWJ1dGlvbnMgaW4g
YmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAotICogICAgIG5v
dGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1l
ciBpbiB0aGUKLSAqICAgICBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJv
dmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgotICoKLSAqIFRISVMgU09GVFdBUkUgSVMgUFJP
VklERUQgQlkgQVBQTEUgSU5DLiBBTkQgSVRTIENPTlRSSUJVVE9SUyBgYEFTIElTJycgQU5EIEFO
WQotICogRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBM
SU1JVEVEIFRPLCBUSEUgSU1QTElFRAotICogV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkg
QU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFSRQotICogRElTQ0xBSU1FRC4g
SU4gTk8gRVZFTlQgU0hBTEwgQVBQTEUgSU5DLiBPUiBJVFMgQ09OVFJJQlVUT1JTIEJFIExJQUJM
RSBGT1IgQU5ZCi0gKiBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVN
UExBUlksIE9SIENPTlNFUVVFTlRJQUwgREFNQUdFUwotICogKElOQ0xVRElORywgQlVUIE5PVCBM
SU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOwot
ICogTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElP
TikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OCi0gKiBBTlkgVEhFT1JZIE9GIExJQUJJTElUWSwgV0hF
VEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVAotICogKElOQ0xVRElO
RyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUg
VVNFIE9GIFRISVMKLSAqIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklM
SVRZIE9GIFNVQ0ggREFNQUdFLgotICovCi0KLSNpZm5kZWYgTmF2aWdhdG9yVXNlck1lZGlhU3Vj
Y2Vzc0NhbGxiYWNrX2gKLSNkZWZpbmUgTmF2aWdhdG9yVXNlck1lZGlhU3VjY2Vzc0NhbGxiYWNr
X2gKLQotI2lmIEVOQUJMRShNRURJQV9TVFJFQU0pCi0KLSNpbmNsdWRlIDx3dGYvUmVmQ291bnRl
ZC5oPgotCi1uYW1lc3BhY2UgV2ViQ29yZSB7Ci0KLWNsYXNzIE1lZGlhU3RyZWFtOwotCi1jbGFz
cyBOYXZpZ2F0b3JVc2VyTWVkaWFTdWNjZXNzQ2FsbGJhY2sgOiBwdWJsaWMgUmVmQ291bnRlZDxO
YXZpZ2F0b3JVc2VyTWVkaWFTdWNjZXNzQ2FsbGJhY2s+IHsKLXB1YmxpYzoKLSAgICB2aXJ0dWFs
IH5OYXZpZ2F0b3JVc2VyTWVkaWFTdWNjZXNzQ2FsbGJhY2soKSB7IH0KLSAgICB2aXJ0dWFsIGJv
b2wgaGFuZGxlRXZlbnQoTWVkaWFTdHJlYW0qKSA9IDA7Ci19OwotCi19IC8vIG5hbWVzcGFjZSBX
ZWJDb3JlCi0KLSNlbmRpZiAvLyBFTkFCTEUoTUVESUFfU1RSRUFNKQotCi0jZW5kaWYgLy8gTmF2
aWdhdG9yVXNlck1lZGlhU3VjY2Vzc0NhbGxiYWNrX2gKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJD
b3JlL01vZHVsZXMvbWVkaWFzdHJlYW0vTmF2aWdhdG9yVXNlck1lZGlhU3VjY2Vzc0NhbGxiYWNr
LmlkbCBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvbWVkaWFzdHJlYW0vTmF2aWdhdG9yVXNlck1l
ZGlhU3VjY2Vzc0NhbGxiYWNrLmlkbApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMmQx
OTBjZjJlYjE5MjIwOTU4YThjZThiY2JmNzhkMzQ0Y2ZkMmU1MC4uMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL21lZGlh
c3RyZWFtL05hdmlnYXRvclVzZXJNZWRpYVN1Y2Nlc3NDYWxsYmFjay5pZGwKKysrIC9kZXYvbnVs
bApAQCAtMSwzMSArMCwwIEBACi0vKgotICogQ29weXJpZ2h0IChDKSAyMDExIEdvb2dsZSBJbmMu
IEFsbCByaWdodHMgcmVzZXJ2ZWQuCi0gKgotICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBz
b3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0Ci0gKiBtb2RpZmljYXRpb24s
IGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKLSAq
IGFyZSBtZXQ6Ci0gKiAxLiAgUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0
YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKLSAqICAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25k
aXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCi0gKiAyLiAgUmVkaXN0cmlidXRp
b25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKLSAq
ICAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRp
c2NsYWltZXIgaW4gdGhlCi0gKiAgICAgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJp
YWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KLSAqCi0gKiBUSElTIFNPRlRXQVJF
IElTIFBST1ZJREVEIEJZIEFQUExFIElOQy4gQU5EIElUUyBDT05UUklCVVRPUlMgYGBBUyBJUycn
IEFORCBBTlkKLSAqIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJV
VCBOT1QgTElNSVRFRCBUTywgVEhFIElNUExJRUQKLSAqIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRB
QklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBUkUKLSAqIERJU0NM
QUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIEFQUExFIElOQy4gT1IgSVRTIENPTlRSSUJVVE9SUyBC
RSBMSUFCTEUgRk9SIEFOWQotICogRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lB
TCwgRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMKLSAqIChJTkNMVURJTkcsIEJV
VCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUiBTRVJW
SUNFUzsKLSAqIExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRF
UlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTgotICogQU5ZIFRIRU9SWSBPRiBMSUFCSUxJ
VFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQKLSAqIChJ
TkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQg
T0YgVEhFIFVTRSBPRiBUSElTCi0gKiBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQ
T1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KLSAqLwotCi1bCi0gICAgQ29uZGl0aW9uYWw9TUVE
SUFfU1RSRUFNLAotICAgIENhbGxiYWNrPUZ1bmN0aW9uT25seSwKLV0gY2FsbGJhY2sgaW50ZXJm
YWNlIE5hdmlnYXRvclVzZXJNZWRpYVN1Y2Nlc3NDYWxsYmFjayB7Ci0gICAgYm9vbGVhbiBoYW5k
bGVFdmVudChNZWRpYVN0cmVhbSBzdHJlYW0pOwotfTsKLQpkaWZmIC0tZ2l0IGEvU291cmNlL1dl
YkNvcmUvTW9kdWxlcy9tZWRpYXN0cmVhbS9Vc2VyTWVkaWFSZXF1ZXN0LmNwcCBiL1NvdXJjZS9X
ZWJDb3JlL01vZHVsZXMvbWVkaWFzdHJlYW0vVXNlck1lZGlhUmVxdWVzdC5jcHAKaW5kZXggYzNm
MzM4MGZhYmJmYmUxNWMzMTYyZjNiNzNkNzQ2YmVhYTY3N2ZhMy4uZDNmYzNiZmFhN2UyOWE4YTMx
ZDc3MTM5Y2FjYjc5Y2RhNDNlODcxNyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvTW9kdWxl
cy9tZWRpYXN0cmVhbS9Vc2VyTWVkaWFSZXF1ZXN0LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9N
b2R1bGVzL21lZGlhc3RyZWFtL1VzZXJNZWRpYVJlcXVlc3QuY3BwCkBAIC00Nyw4ICs0Nyw2IEBA
CiAjaW5jbHVkZSAiTWVkaWFDb25zdHJhaW50c0ltcGwuaCIKICNpbmNsdWRlICJNZWRpYVN0cmVh
bS5oIgogI2luY2x1ZGUgIk1lZGlhU3RyZWFtUHJpdmF0ZS5oIgotI2luY2x1ZGUgIk5hdmlnYXRv
clVzZXJNZWRpYUVycm9yQ2FsbGJhY2suaCIKLSNpbmNsdWRlICJOYXZpZ2F0b3JVc2VyTWVkaWFT
dWNjZXNzQ2FsbGJhY2suaCIKICNpbmNsdWRlICJSZWFsdGltZU1lZGlhU291cmNlQ2VudGVyLmgi
CiAjaW5jbHVkZSAiU2VjdXJpdHlPcmlnaW4uaCIKICNpbmNsdWRlICJVc2VyTWVkaWFDb250cm9s
bGVyLmgiCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL21lZGlhc3RyZWFtL1Vz
ZXJNZWRpYVJlcXVlc3QuaCBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvbWVkaWFzdHJlYW0vVXNl
ck1lZGlhUmVxdWVzdC5oCmluZGV4IGRkMjAxMTNjYWM1NWQ3MTRlM2RjMjUzNTE0YWI0MDNlNzI2
MzgyMTYuLmVjZWE1OWE2Y2E2Y2U3YjM0MWNkYzA3NDcxYWFmMjQ5ZTJiZTUxNjcgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvbWVkaWFzdHJlYW0vVXNlck1lZGlhUmVxdWVzdC5o
CisrKyBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvbWVkaWFzdHJlYW0vVXNlck1lZGlhUmVxdWVz
dC5oCkBAIC00OSw4ICs0OSw2IEBAIGNsYXNzIERvY3VtZW50OwogY2xhc3MgRnJhbWU7CiBjbGFz
cyBNZWRpYUNvbnN0cmFpbnRzOwogY2xhc3MgTWVkaWFTdHJlYW1Qcml2YXRlOwotY2xhc3MgTmF2
aWdhdG9yVXNlck1lZGlhRXJyb3JDYWxsYmFjazsKLWNsYXNzIE5hdmlnYXRvclVzZXJNZWRpYVN1
Y2Nlc3NDYWxsYmFjazsKIGNsYXNzIFVzZXJNZWRpYUNvbnRyb2xsZXI7CiBjbGFzcyBTZWN1cml0
eU9yaWdpbjsKIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvV2ViQ29yZS54Y29kZXByb2ov
cHJvamVjdC5wYnhwcm9qIGIvU291cmNlL1dlYkNvcmUvV2ViQ29yZS54Y29kZXByb2ovcHJvamVj
dC5wYnhwcm9qCmluZGV4IGVmNzkzZTExMmViNTdlY2VkMjQ2ZGVjNGMzYzZiNWVjNjBiMDQxOGEu
Ljc5OGY3MWQyMjIyYjY4Y2Y2OTRhZTE1MmZmMDI2YjNmYWE4ZWEzZWYgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9XZWJDb3JlL1dlYkNvcmUueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvagorKysgYi9Tb3Vy
Y2UvV2ViQ29yZS9XZWJDb3JlLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2oKQEAgLTE1Myw3ICsx
NTMsNiBAQAogCQkwNzM3OTRFMjE5RUUyRDFCMDBFNUEwNDUgLyogTWVkaWFDb25zdHJhaW50c01v
Y2suaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDA3Mzc5
NEUwMTlFRTJEMUIwMEU1QTA0NSAvKiBNZWRpYUNvbnN0cmFpbnRzTW9jay5oICovOyB9OwogCQkw
NzM3OTRFNTE5RUUyRkYyMDBFNUEwNDUgLyogSlNSVENDb25maWd1cmF0aW9uLmNwcCBpbiBTb3Vy
Y2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDA3Mzc5NEUzMTlFRTJGRjIw
MEU1QTA0NSAvKiBKU1JUQ0NvbmZpZ3VyYXRpb24uY3BwICovOyB9OwogCQkwNzM3OTRFNjE5RUUy
RkYyMDBFNUEwNDUgLyogSlNSVENDb25maWd1cmF0aW9uLmggaW4gSGVhZGVycyAqLyA9IHtpc2Eg
PSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAwNzM3OTRFNDE5RUUyRkYyMDBFNUEwNDUgLyogSlNS
VENDb25maWd1cmF0aW9uLmggKi87IH07Ci0JCTA3Mzc5NEU4MTlFRTMzNUMwMEU1QTA0NSAvKiBK
U05hdmlnYXRvckN1c3RvbS5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7
IGZpbGVSZWYgPSAwNzM3OTRFNzE5RUUzMzVDMDBFNUEwNDUgLyogSlNOYXZpZ2F0b3JDdXN0b20u
Y3BwICovOyB9OwogCQkwNzM3OTRFQjE5RUUzNDFFMDBFNUEwNDUgLyogSlNSVENJY2VTZXJ2ZXIu
Y3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMDczNzk0
RTkxOUVFMzQxRTAwRTVBMDQ1IC8qIEpTUlRDSWNlU2VydmVyLmNwcCAqLzsgfTsKIAkJMDczNzk0
RUMxOUVFMzQxRTAwRTVBMDQ1IC8qIEpTUlRDSWNlU2VydmVyLmggaW4gSGVhZGVycyAqLyA9IHtp
c2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAwNzM3OTRFQTE5RUUzNDFFMDBFNUEwNDUgLyog
SlNSVENJY2VTZXJ2ZXIuaCAqLzsgfTsKIAkJMDczNzk0RjExOUVFMzdCQjAwRTVBMDQ1IC8qIFJU
Q1BlZXJDb25uZWN0aW9uSGFuZGxlck1vY2suY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJY
QnVpbGRGaWxlOyBmaWxlUmVmID0gMDczNzk0RUYxOUVFMzdCQjAwRTVBMDQ1IC8qIFJUQ1BlZXJD
b25uZWN0aW9uSGFuZGxlck1vY2suY3BwICovOyB9OwpAQCAtMTczLDEwICsxNzIsNiBAQAogCQkw
NzNCRTM0MTE3RDE3RTAxMDAyQkQ0MzEgLyogSlNOYXZpZ2F0b3JVc2VyTWVkaWEuaCBpbiBIZWFk
ZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDA3M0JFMzNGMTdEMTdFMDEw
MDJCRDQzMSAvKiBKU05hdmlnYXRvclVzZXJNZWRpYS5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJV
VEVTID0gKFByaXZhdGUsICk7IH07IH07CiAJCTA3M0JFMzQ4MTdEMTdFN0EwMDJCRDQzMSAvKiBK
U05hdmlnYXRvclVzZXJNZWRpYUVycm9yLmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1
aWxkRmlsZTsgZmlsZVJlZiA9IDA3M0JFMzQyMTdEMTdFN0EwMDJCRDQzMSAvKiBKU05hdmlnYXRv
clVzZXJNZWRpYUVycm9yLmNwcCAqLzsgfTsKIAkJMDczQkUzNDkxN0QxN0U3QTAwMkJENDMxIC8q
IEpTTmF2aWdhdG9yVXNlck1lZGlhRXJyb3IuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1
aWxkRmlsZTsgZmlsZVJlZiA9IDA3M0JFMzQzMTdEMTdFN0EwMDJCRDQzMSAvKiBKU05hdmlnYXRv
clVzZXJNZWRpYUVycm9yLmggKi87IH07Ci0JCTA3M0JFMzRBMTdEMTdFN0EwMDJCRDQzMSAvKiBK
U05hdmlnYXRvclVzZXJNZWRpYUVycm9yQ2FsbGJhY2suY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNh
ID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMDczQkUzNDQxN0QxN0U3QTAwMkJENDMxIC8qIEpT
TmF2aWdhdG9yVXNlck1lZGlhRXJyb3JDYWxsYmFjay5jcHAgKi87IH07Ci0JCTA3M0JFMzRCMTdE
MTdFN0EwMDJCRDQzMSAvKiBKU05hdmlnYXRvclVzZXJNZWRpYUVycm9yQ2FsbGJhY2suaCBpbiBI
ZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDA3M0JFMzQ1MTdEMTdF
N0EwMDJCRDQzMSAvKiBKU05hdmlnYXRvclVzZXJNZWRpYUVycm9yQ2FsbGJhY2suaCAqLzsgfTsK
LQkJMDczQkUzNEMxN0QxN0U3QTAwMkJENDMxIC8qIEpTTmF2aWdhdG9yVXNlck1lZGlhU3VjY2Vz
c0NhbGxiYWNrLmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJl
ZiA9IDA3M0JFMzQ2MTdEMTdFN0EwMDJCRDQzMSAvKiBKU05hdmlnYXRvclVzZXJNZWRpYVN1Y2Nl
c3NDYWxsYmFjay5jcHAgKi87IH07Ci0JCTA3M0JFMzREMTdEMTdFN0EwMDJCRDQzMSAvKiBKU05h
dmlnYXRvclVzZXJNZWRpYVN1Y2Nlc3NDYWxsYmFjay5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0g
UEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMDczQkUzNDcxN0QxN0U3QTAwMkJENDMxIC8qIEpTTmF2
aWdhdG9yVXNlck1lZGlhU3VjY2Vzc0NhbGxiYWNrLmggKi87IH07CiAJCTA3M0JFMzRFMTdEMTgw
QjIwMDJCRDQzMSAvKiBSVENTZXNzaW9uRGVzY3JpcHRpb25EZXNjcmlwdG9yLmNwcCBpbiBTb3Vy
Y2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDA3MjIxQkFCMTdDRjBBRDQw
MDg0OEU1MSAvKiBSVENTZXNzaW9uRGVzY3JpcHRpb25EZXNjcmlwdG9yLmNwcCAqLzsgfTsKIAkJ
MDczQkUzNEYxN0QxODE4MzAwMkJENDMxIC8qIFJUQ0ljZUNhbmRpZGF0ZURlc2NyaXB0b3IuY3Bw
IGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMDcyMjFCQTYx
N0NGMEFENDAwODQ4RTUxIC8qIFJUQ0ljZUNhbmRpZGF0ZURlc2NyaXB0b3IuY3BwICovOyB9Owog
CQkwNzNCRTM1MDE3RDE4MUE2MDAyQkQ0MzEgLyogUlRDUGVlckNvbm5lY3Rpb25IYW5kbGVyLmNw
cCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDA3MjIxQkE4
MTdDRjBBRDQwMDg0OEU1MSAvKiBSVENQZWVyQ29ubmVjdGlvbkhhbmRsZXIuY3BwICovOyB9OwpA
QCAtMjQwLDggKzIzNSw2IEBACiAJCTA3OEUwOTE4MTdEMTREMUMwMDQyMEFBMSAvKiBNZWRpYVN0
cmVhbVRyYWNrLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYg
PSAwNzIyMUI1NTE3Q0VDMzI3MDA4NDhFNTEgLyogTWVkaWFTdHJlYW1UcmFjay5oICovOyB9Owog
CQkwNzhFMDkxOTE3RDE0RDFDMDA0MjBBQTEgLyogTWVkaWFTdHJlYW1UcmFja0V2ZW50LmggaW4g
SGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAwNzIyMUI1ODE3Q0VD
MzI3MDA4NDhFNTEgLyogTWVkaWFTdHJlYW1UcmFja0V2ZW50LmggKi87IHNldHRpbmdzID0ge0FU
VFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKIAkJMDc4RTA5MUIxN0QxNEQxQzAwNDIwQUEx
IC8qIE5hdmlnYXRvclVzZXJNZWRpYUVycm9yLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhC
dWlsZEZpbGU7IGZpbGVSZWYgPSAwNzIyMUI1RDE3Q0VDMzI3MDA4NDhFNTEgLyogTmF2aWdhdG9y
VXNlck1lZGlhRXJyb3IuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCAp
OyB9OyB9OwotCQkwNzhFMDkxQzE3RDE0RDFDMDA0MjBBQTEgLyogTmF2aWdhdG9yVXNlck1lZGlh
RXJyb3JDYWxsYmFjay5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxl
UmVmID0gMDcyMjFCNUYxN0NFQzMyNzAwODQ4RTUxIC8qIE5hdmlnYXRvclVzZXJNZWRpYUVycm9y
Q2FsbGJhY2suaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9
OwotCQkwNzhFMDkxRDE3RDE0RDFDMDA0MjBBQTEgLyogTmF2aWdhdG9yVXNlck1lZGlhU3VjY2Vz
c0NhbGxiYWNrLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYg
PSAwNzIyMUI2MTE3Q0VDMzI3MDA4NDhFNTEgLyogTmF2aWdhdG9yVXNlck1lZGlhU3VjY2Vzc0Nh
bGxiYWNrLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsK
IAkJMDc4RTA5MUUxN0QxNEQxQzAwNDIwQUExIC8qIFJUQ0RhdGFDaGFubmVsLmggaW4gSGVhZGVy
cyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAwNzIyMUI2NDE3Q0VDMzI3MDA4
NDhFNTEgLyogUlRDRGF0YUNoYW5uZWwuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQ
cml2YXRlLCApOyB9OyB9OwogCQkwNzhFMDkxRjE3RDE0RDFDMDA0MjBBQTEgLyogUlRDRGF0YUNo
YW5uZWxFdmVudC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVm
ID0gMDcyMjFCNjcxN0NFQzMyNzAwODQ4RTUxIC8qIFJUQ0RhdGFDaGFubmVsRXZlbnQuaCAqLzsg
c2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OwogCQkwNzhFMDkyMDE3
RDE0RDFDMDA0MjBBQTEgLyogUlRDRFRNRlNlbmRlci5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0g
UEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMDcyMjFCNkExN0NFQzMyNzAwODQ4RTUxIC8qIFJUQ0RU
TUZTZW5kZXIuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9
OwpAQCAtNzM1OCwxMCArNzM1MSw2IEBACiAJCTA3MjIxQjVDMTdDRUMzMjcwMDg0OEU1MSAvKiBO
YXZpZ2F0b3JVc2VyTWVkaWEuaWRsICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVF
bmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gdGV4dDsgcGF0aCA9IE5hdmlnYXRvclVz
ZXJNZWRpYS5pZGw7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTA3MjIxQjVEMTdDRUMz
MjcwMDg0OEU1MSAvKiBOYXZpZ2F0b3JVc2VyTWVkaWFFcnJvci5oICovID0ge2lzYSA9IFBCWEZp
bGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNl
Y29kZS5jLmg7IHBhdGggPSBOYXZpZ2F0b3JVc2VyTWVkaWFFcnJvci5oOyBzb3VyY2VUcmVlID0g
Ijxncm91cD4iOyB9OwogCQkwNzIyMUI1RTE3Q0VDMzI3MDA4NDhFNTEgLyogTmF2aWdhdG9yVXNl
ck1lZGlhRXJyb3IuaWRsICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGlu
ZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gdGV4dDsgcGF0aCA9IE5hdmlnYXRvclVzZXJNZWRp
YUVycm9yLmlkbDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKLQkJMDcyMjFCNUYxN0NFQzMy
NzAwODQ4RTUxIC8qIE5hdmlnYXRvclVzZXJNZWRpYUVycm9yQ2FsbGJhY2suaCAqLyA9IHtpc2Eg
PSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9
IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gTmF2aWdhdG9yVXNlck1lZGlhRXJyb3JDYWxsYmFjay5o
OyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwotCQkwNzIyMUI2MDE3Q0VDMzI3MDA4NDhFNTEg
LyogTmF2aWdhdG9yVXNlck1lZGlhRXJyb3JDYWxsYmFjay5pZGwgKi8gPSB7aXNhID0gUEJYRmls
ZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSB0ZXh0OyBw
YXRoID0gTmF2aWdhdG9yVXNlck1lZGlhRXJyb3JDYWxsYmFjay5pZGw7IHNvdXJjZVRyZWUgPSAi
PGdyb3VwPiI7IH07Ci0JCTA3MjIxQjYxMTdDRUMzMjcwMDg0OEU1MSAvKiBOYXZpZ2F0b3JVc2Vy
TWVkaWFTdWNjZXNzQ2FsbGJhY2suaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxl
RW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0g
TmF2aWdhdG9yVXNlck1lZGlhU3VjY2Vzc0NhbGxiYWNrLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3Vw
PiI7IH07Ci0JCTA3MjIxQjYyMTdDRUMzMjcwMDg0OEU1MSAvKiBOYXZpZ2F0b3JVc2VyTWVkaWFT
dWNjZXNzQ2FsbGJhY2suaWRsICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNv
ZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gdGV4dDsgcGF0aCA9IE5hdmlnYXRvclVzZXJN
ZWRpYVN1Y2Nlc3NDYWxsYmFjay5pZGw7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTA3
MjIxQjYzMTdDRUMzMjcwMDg0OEU1MSAvKiBSVENEYXRhQ2hhbm5lbC5jcHAgKi8gPSB7aXNhID0g
UEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBz
b3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBSVENEYXRhQ2hhbm5lbC5jcHA7IHNvdXJjZVRyZWUg
PSAiPGdyb3VwPiI7IH07CiAJCTA3MjIxQjY0MTdDRUMzMjcwMDg0OEU1MSAvKiBSVENEYXRhQ2hh
bm5lbC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxh
c3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBSVENEYXRhQ2hhbm5lbC5o
OyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQkwNzIyMUI2NTE3Q0VDMzI3MDA4NDhFNTEg
LyogUlRDRGF0YUNoYW5uZWwuaWRsICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVF
bmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gdGV4dDsgcGF0aCA9IFJUQ0RhdGFDaGFu
bmVsLmlkbDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKQEAgLTc0NTEsNyArNzQ0MCw2IEBA
CiAJCTA3Mzc5NEUwMTlFRTJEMUIwMEU1QTA0NSAvKiBNZWRpYUNvbnN0cmFpbnRzTW9jay5oICov
ID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZp
bGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBNZWRpYUNvbnN0cmFpbnRzTW9jay5oOyBz
b3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQkwNzM3OTRFMzE5RUUyRkYyMDBFNUEwNDUgLyog
SlNSVENDb25maWd1cmF0aW9uLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxl
RW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0
aCA9IEpTUlRDQ29uZmlndXJhdGlvbi5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJ
CTA3Mzc5NEU0MTlFRTJGRjIwMEU1QTA0NSAvKiBKU1JUQ0NvbmZpZ3VyYXRpb24uaCAqLyA9IHtp
c2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlw
ZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gSlNSVENDb25maWd1cmF0aW9uLmg7IHNvdXJjZVRy
ZWUgPSAiPGdyb3VwPiI7IH07Ci0JCTA3Mzc5NEU3MTlFRTMzNUMwMEU1QTA0NSAvKiBKU05hdmln
YXRvckN1c3RvbS5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5n
ID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBKU05h
dmlnYXRvckN1c3RvbS5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTA3Mzc5NEU5
MTlFRTM0MUUwMEU1QTA0NSAvKiBKU1JUQ0ljZVNlcnZlci5jcHAgKi8gPSB7aXNhID0gUEJYRmls
ZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vj
b2RlLmNwcC5jcHA7IHBhdGggPSBKU1JUQ0ljZVNlcnZlci5jcHA7IHNvdXJjZVRyZWUgPSAiPGdy
b3VwPiI7IH07CiAJCTA3Mzc5NEVBMTlFRTM0MUUwMEU1QTA0NSAvKiBKU1JUQ0ljZVNlcnZlci5o
ICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93
bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBKU1JUQ0ljZVNlcnZlci5oOyBzb3Vy
Y2VUcmVlID0gIjxncm91cD4iOyB9OwogCQkwNzM3OTRFRDE5RUUzNjQyMDBFNUEwNDUgLyogRE9N
VVJMTWVkaWFTdHJlYW0uY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNv
ZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0g
RE9NVVJMTWVkaWFTdHJlYW0uY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwpAQCAtNzQ3
MywxMCArNzQ2MSw2IEBACiAJCTA3M0JFMzNGMTdEMTdFMDEwMDJCRDQzMSAvKiBKU05hdmlnYXRv
clVzZXJNZWRpYS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9
IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBKU05hdmlnYXRv
clVzZXJNZWRpYS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQkwNzNCRTM0MjE3RDE3
RTdBMDAyQkQ0MzEgLyogSlNOYXZpZ2F0b3JVc2VyTWVkaWFFcnJvci5jcHAgKi8gPSB7aXNhID0g
UEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBz
b3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBKU05hdmlnYXRvclVzZXJNZWRpYUVycm9yLmNwcDsg
c291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJMDczQkUzNDMxN0QxN0U3QTAwMkJENDMxIC8q
IEpTTmF2aWdhdG9yVXNlck1lZGlhRXJyb3IuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNl
OyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBw
YXRoID0gSlNOYXZpZ2F0b3JVc2VyTWVkaWFFcnJvci5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4i
OyB9OwotCQkwNzNCRTM0NDE3RDE3RTdBMDAyQkQ0MzEgLyogSlNOYXZpZ2F0b3JVc2VyTWVkaWFF
cnJvckNhbGxiYWNrLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rp
bmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEpT
TmF2aWdhdG9yVXNlck1lZGlhRXJyb3JDYWxsYmFjay5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3Vw
PiI7IH07Ci0JCTA3M0JFMzQ1MTdEMTdFN0EwMDJCRDQzMSAvKiBKU05hdmlnYXRvclVzZXJNZWRp
YUVycm9yQ2FsbGJhY2suaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rp
bmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gSlNOYXZp
Z2F0b3JVc2VyTWVkaWFFcnJvckNhbGxiYWNrLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07
Ci0JCTA3M0JFMzQ2MTdEMTdFN0EwMDJCRDQzMSAvKiBKU05hdmlnYXRvclVzZXJNZWRpYVN1Y2Nl
c3NDYWxsYmFjay5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5n
ID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBKU05h
dmlnYXRvclVzZXJNZWRpYVN1Y2Nlc3NDYWxsYmFjay5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3Vw
PiI7IH07Ci0JCTA3M0JFMzQ3MTdEMTdFN0EwMDJCRDQzMSAvKiBKU05hdmlnYXRvclVzZXJNZWRp
YVN1Y2Nlc3NDYWxsYmFjay5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNv
ZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBKU05h
dmlnYXRvclVzZXJNZWRpYVN1Y2Nlc3NDYWxsYmFjay5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4i
OyB9OwogCQkwNzRFODJCODE4QTY5RjBFMDA3RUY1NEMgLyogUGxhdGZvcm1UaW1lUmFuZ2VzLmNw
cCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25v
d25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IFBsYXRmb3JtVGltZVJhbmdl
cy5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTA3NEU4MkI5MThBNjlGMEUwMDdF
RjU0QyAvKiBQbGF0Zm9ybVRpbWVSYW5nZXMuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNl
OyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBw
YXRoID0gUGxhdGZvcm1UaW1lUmFuZ2VzLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJ
CTA3NTM4NjAwMTQ0ODlFOTgwMEI3ODQ1MiAvKiBDYWNoZWRUZXh0VHJhY2suY3BwICovID0ge2lz
YSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBl
ID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gQ2FjaGVkVGV4dFRyYWNrLmNwcDsgc291cmNl
VHJlZSA9ICI8Z3JvdXA+IjsgfTsKQEAgLTg4NjUsNiArODg0OSw3IEBACiAJCTQxOUJFNzUzMUJD
N0YzREIwMEUxQzg1QiAvKiBXZWJDb3JlSlNCdWlsdGluSW50ZXJuYWxzLmggKi8gPSB7aXNhID0g
UEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBz
b3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFdlYkNvcmVKU0J1aWx0aW5JbnRlcm5hbHMuaDsgc291cmNl
VHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJNDE5QkU3NTQxQkM3RjNEQjAwRTFDODVCIC8qIFdlYkNv
cmVKU0J1aWx0aW5zLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rp
bmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IFdl
YkNvcmVKU0J1aWx0aW5zLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJNDE5QkU3
NTUxQkM3RjNEQjAwRTFDODVCIC8qIFdlYkNvcmVKU0J1aWx0aW5zLmggKi8gPSB7aXNhID0gUEJY
RmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3Vy
Y2Vjb2RlLmMuaDsgcGF0aCA9IFdlYkNvcmVKU0J1aWx0aW5zLmg7IHNvdXJjZVRyZWUgPSAiPGdy
b3VwPiI7IH07CisJCTQxOUJFNzVBMUJDQkQzRUQwMEUxQzg1QiAvKiBOYXZpZ2F0b3JVc2VyTWVk
aWEuanMgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFz
dEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmphdmFzY3JpcHQ7IHBhdGggPSBOYXZpZ2F0b3JV
c2VyTWVkaWEuanM7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTQxOUZBRkFEMUFCQUJD
RDUwMDVCODI4QiAvKiBSZWFkYWJsZVN0cmVhbVJlYWRlci5pZGwgKi8gPSB7aXNhID0gUEJYRmls
ZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSB0ZXh0OyBw
YXRoID0gUmVhZGFibGVTdHJlYW1SZWFkZXIuaWRsOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9
OwogCQk0MUEwMjNFRDFBMzlEQjc5MDBGNzIyQ0YgLyogUmVhZGFibGVTdHJlYW0uaWRsICovID0g
e2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVU
eXBlID0gdGV4dDsgcGF0aCA9IFJlYWRhYmxlU3RyZWFtLmlkbDsgc291cmNlVHJlZSA9ICI8Z3Jv
dXA+IjsgfTsKIAkJNDFBMDIzRUQxQTM5REI3OTAwRjcyMkRGIC8qIFdyaXRhYmxlU3RyZWFtLmlk
bCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25v
d25GaWxlVHlwZSA9IHRleHQ7IHBhdGggPSBXcml0YWJsZVN0cmVhbS5pZGw7IHNvdXJjZVRyZWUg
PSAiPGdyb3VwPiI7IH07CkBAIC0xNTA4OCwxMyArMTUwNzMsMTAgQEAKIAkJCQk1RUE3MjVDQjFB
Q0FCQ0I1MDBFQUQxN0IgLyogTmF2aWdhdG9yTWVkaWFEZXZpY2VzLmggKi8sCiAJCQkJNUVBNzI1
Q0MxQUNBQkNCNTAwRUFEMTdCIC8qIE5hdmlnYXRvck1lZGlhRGV2aWNlcy5pZGwgKi8sCiAJCQkJ
MDcyMjFCNUMxN0NFQzMyNzAwODQ4RTUxIC8qIE5hdmlnYXRvclVzZXJNZWRpYS5pZGwgKi8sCisJ
CQkJNDE5QkU3NUExQkNCRDNFRDAwRTFDODVCIC8qIE5hdmlnYXRvclVzZXJNZWRpYS5qcyAqLywK
IAkJCQkwNzAzMjdGNzE3RUE0QUFGMDBDRTEzMTggLyogTmF2aWdhdG9yVXNlck1lZGlhRXJyb3Iu
Y3BwICovLAogCQkJCTA3MjIxQjVEMTdDRUMzMjcwMDg0OEU1MSAvKiBOYXZpZ2F0b3JVc2VyTWVk
aWFFcnJvci5oICovLAogCQkJCTA3MjIxQjVFMTdDRUMzMjcwMDg0OEU1MSAvKiBOYXZpZ2F0b3JV
c2VyTWVkaWFFcnJvci5pZGwgKi8sCi0JCQkJMDcyMjFCNUYxN0NFQzMyNzAwODQ4RTUxIC8qIE5h
dmlnYXRvclVzZXJNZWRpYUVycm9yQ2FsbGJhY2suaCAqLywKLQkJCQkwNzIyMUI2MDE3Q0VDMzI3
MDA4NDhFNTEgLyogTmF2aWdhdG9yVXNlck1lZGlhRXJyb3JDYWxsYmFjay5pZGwgKi8sCi0JCQkJ
MDcyMjFCNjExN0NFQzMyNzAwODQ4RTUxIC8qIE5hdmlnYXRvclVzZXJNZWRpYVN1Y2Nlc3NDYWxs
YmFjay5oICovLAotCQkJCTA3MjIxQjYyMTdDRUMzMjcwMDg0OEU1MSAvKiBOYXZpZ2F0b3JVc2Vy
TWVkaWFTdWNjZXNzQ2FsbGJhY2suaWRsICovLAogCQkJCTA3QUI5OTY1MThEQTNDMDEwMDE4Nzcx
RSAvKiBSVENDb25maWd1cmF0aW9uLmggKi8sCiAJCQkJMDdBQjk5NjYxOERBM0MwMTAwMTg3NzFF
IC8qIFJUQ0NvbmZpZ3VyYXRpb24uaWRsICovLAogCQkJCTA3MjIxQjYzMTdDRUMzMjcwMDg0OEU1
MSAvKiBSVENEYXRhQ2hhbm5lbC5jcHAgKi8sCkBAIC0xNTI5MiwxMCArMTUyNzQsNiBAQAogCQkJ
CTA3M0JFMzNGMTdEMTdFMDEwMDJCRDQzMSAvKiBKU05hdmlnYXRvclVzZXJNZWRpYS5oICovLAog
CQkJCTA3M0JFMzQyMTdEMTdFN0EwMDJCRDQzMSAvKiBKU05hdmlnYXRvclVzZXJNZWRpYUVycm9y
LmNwcCAqLywKIAkJCQkwNzNCRTM0MzE3RDE3RTdBMDAyQkQ0MzEgLyogSlNOYXZpZ2F0b3JVc2Vy
TWVkaWFFcnJvci5oICovLAotCQkJCTA3M0JFMzQ0MTdEMTdFN0EwMDJCRDQzMSAvKiBKU05hdmln
YXRvclVzZXJNZWRpYUVycm9yQ2FsbGJhY2suY3BwICovLAotCQkJCTA3M0JFMzQ1MTdEMTdFN0Ew
MDJCRDQzMSAvKiBKU05hdmlnYXRvclVzZXJNZWRpYUVycm9yQ2FsbGJhY2suaCAqLywKLQkJCQkw
NzNCRTM0NjE3RDE3RTdBMDAyQkQ0MzEgLyogSlNOYXZpZ2F0b3JVc2VyTWVkaWFTdWNjZXNzQ2Fs
bGJhY2suY3BwICovLAotCQkJCTA3M0JFMzQ3MTdEMTdFN0EwMDJCRDQzMSAvKiBKU05hdmlnYXRv
clVzZXJNZWRpYVN1Y2Nlc3NDYWxsYmFjay5oICovLAogCQkJCTA3Mzc5NEUzMTlFRTJGRjIwMEU1
QTA0NSAvKiBKU1JUQ0NvbmZpZ3VyYXRpb24uY3BwICovLAogCQkJCTA3Mzc5NEU0MTlFRTJGRjIw
MEU1QTA0NSAvKiBKU1JUQ0NvbmZpZ3VyYXRpb24uaCAqLywKIAkJCQkwNzk2OUQ5MTE3RDE0MTUx
MDA3RkY4NDIgLyogSlNSVENEYXRhQ2hhbm5lbC5jcHAgKi8sCkBAIC0yMjAxMCw3ICsyMTk4OCw2
IEBACiAJCQkJQTFFNUIzMUQxQUFEMURBNDAwNkVCRUZCIC8qIEpTTW9ja0NvbnRlbnRGaWx0ZXJT
ZXR0aW5nc0N1c3RvbS5jcHAgKi8sCiAJCQkJQzZGMDkxN0UxNDNBMkJCOTAwNjg1ODQ5IC8qIEpT
TXV0YXRpb25PYnNlcnZlckN1c3RvbS5jcHAgKi8sCiAJCQkJQkNEOUMyNUYwQzE3QUE2NzAwNUM5
MEEyIC8qIEpTTmFtZWROb2RlTWFwQ3VzdG9tLmNwcCAqLywKLQkJCQkwNzM3OTRFNzE5RUUzMzVD
MDBFNUEwNDUgLyogSlNOYXZpZ2F0b3JDdXN0b20uY3BwICovLAogCQkJCUJDRDlDMjYwMEMxN0FB
NjcwMDVDOTBBMiAvKiBKU05vZGVDdXN0b20uY3BwICovLAogCQkJCUJDOTQzOUMyMTE2Q0Y0OTQw
MDQ4Qzc1MCAvKiBKU05vZGVDdXN0b20uaCAqLywKIAkJCQkxQTc1MEREMzBBOTBFNzI5MDAwRkYy
MTUgLyogSlNOb2RlSXRlcmF0b3JDdXN0b20uY3BwICovLApAQCAtMjYxMzEsOCArMjYxMDgsNiBA
QAogCQkJCUE5RDI0N0Y4MEQ3NTdFMzQwMEZERjk1OSAvKiBKU05hdmlnYXRvci5oIGluIEhlYWRl
cnMgKi8sCiAJCQkJMDczQkUzNDExN0QxN0UwMTAwMkJENDMxIC8qIEpTTmF2aWdhdG9yVXNlck1l
ZGlhLmggaW4gSGVhZGVycyAqLywKIAkJCQkwNzNCRTM0OTE3RDE3RTdBMDAyQkQ0MzEgLyogSlNO
YXZpZ2F0b3JVc2VyTWVkaWFFcnJvci5oIGluIEhlYWRlcnMgKi8sCi0JCQkJMDczQkUzNEIxN0Qx
N0U3QTAwMkJENDMxIC8qIEpTTmF2aWdhdG9yVXNlck1lZGlhRXJyb3JDYWxsYmFjay5oIGluIEhl
YWRlcnMgKi8sCi0JCQkJMDczQkUzNEQxN0QxN0U3QTAwMkJENDMxIC8qIEpTTmF2aWdhdG9yVXNl
ck1lZGlhU3VjY2Vzc0NhbGxiYWNrLmggaW4gSGVhZGVycyAqLywKIAkJCQlCQzk0MzlDMzExNkNG
NDk0MDA0OEM3NTAgLyogSlNOb2RlQ3VzdG9tLmggaW4gSGVhZGVycyAqLywKIAkJCQkxNDExNUI3
MzA5Rjg0Q0Q2MDBDQTRGQzEgLyogSlNOb2RlRmlsdGVyLmggaW4gSGVhZGVycyAqLywKIAkJCQkx
QTc1MEQ4RTBBOTBFNTIxMDAwRkYyMTUgLyogSlNOb2RlSXRlcmF0b3IuaCBpbiBIZWFkZXJzICov
LApAQCAtMjY2NjgsOCArMjY2NDMsNiBAQAogCQkJCTk3MTE0NjA0MTRFRjAwOUEwMDY3NEZEOSAv
KiBOYXZpZ2F0b3JHZW9sb2NhdGlvbi5oIGluIEhlYWRlcnMgKi8sCiAJCQkJNUVBNzI1RDYxQUNB
QkQ1NzAwRUFEMTdCIC8qIE5hdmlnYXRvck1lZGlhRGV2aWNlcy5oIGluIEhlYWRlcnMgKi8sCiAJ
CQkJMDc4RTA5MUIxN0QxNEQxQzAwNDIwQUExIC8qIE5hdmlnYXRvclVzZXJNZWRpYUVycm9yLmgg
aW4gSGVhZGVycyAqLywKLQkJCQkwNzhFMDkxQzE3RDE0RDFDMDA0MjBBQTEgLyogTmF2aWdhdG9y
VXNlck1lZGlhRXJyb3JDYWxsYmFjay5oIGluIEhlYWRlcnMgKi8sCi0JCQkJMDc4RTA5MUQxN0Qx
NEQxQzAwNDIwQUExIC8qIE5hdmlnYXRvclVzZXJNZWRpYVN1Y2Nlc3NDYWxsYmFjay5oIGluIEhl
YWRlcnMgKi8sCiAJCQkJQTE5RDkzNDYxQTlGRUM3MjAwQjQ2QzI0IC8qIE5FRmlsdGVyU291cmNl
U1BJLmggaW4gSGVhZGVycyAqLywKIAkJCQk4QTMwOUM5RjEyMzk1MEJFMDBDQjkyMDQgLyogTmVz
dGluZ0xldmVsSW5jcmVtZW50ZXIuaCBpbiBIZWFkZXJzICovLAogCQkJCTY1NkQzNzQzMEFEQkE1
REUwMEE0NTU0RCAvKiBOZXRzY2FwZVBsdWdJblN0cmVhbUxvYWRlci5oIGluIEhlYWRlcnMgKi8s
CkBAIC0yOTc5NCwxMSArMjk3NjcsOCBAQAogCQkJCUJDRDlDMkMwMEMxN0I2OUUwMDVDOTBBMiAv
KiBKU05hbWVkTm9kZU1hcC5jcHAgaW4gU291cmNlcyAqLywKIAkJCQlCQ0Q5QzI2MzBDMTdBQTY3
MDA1QzkwQTIgLyogSlNOYW1lZE5vZGVNYXBDdXN0b20uY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJ
QTlEMjQ3RjcwRDc1N0UzNDAwRkRGOTU5IC8qIEpTTmF2aWdhdG9yLmNwcCBpbiBTb3VyY2VzICov
LAotCQkJCTA3Mzc5NEU4MTlFRTMzNUMwMEU1QTA0NSAvKiBKU05hdmlnYXRvckN1c3RvbS5jcHAg
aW4gU291cmNlcyAqLywKIAkJCQkwNzNCRTM0MDE3RDE3RTAxMDAyQkQ0MzEgLyogSlNOYXZpZ2F0
b3JVc2VyTWVkaWEuY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJMDczQkUzNDgxN0QxN0U3QTAwMkJE
NDMxIC8qIEpTTmF2aWdhdG9yVXNlck1lZGlhRXJyb3IuY3BwIGluIFNvdXJjZXMgKi8sCi0JCQkJ
MDczQkUzNEExN0QxN0U3QTAwMkJENDMxIC8qIEpTTmF2aWdhdG9yVXNlck1lZGlhRXJyb3JDYWxs
YmFjay5jcHAgaW4gU291cmNlcyAqLywKLQkJCQkwNzNCRTM0QzE3RDE3RTdBMDAyQkQ0MzEgLyog
SlNOYXZpZ2F0b3JVc2VyTWVkaWFTdWNjZXNzQ2FsbGJhY2suY3BwIGluIFNvdXJjZXMgKi8sCiAJ
CQkJMTREQzBEMzcwOUZFRDA3MzAwN0IwMjM1IC8qIEpTTm9kZS5jcHAgaW4gU291cmNlcyAqLywK
IAkJCQlCQ0Q5QzI2NDBDMTdBQTY3MDA1QzkwQTIgLyogSlNOb2RlQ3VzdG9tLmNwcCBpbiBTb3Vy
Y2VzICovLAogCQkJCTE0MTE1QjcyMDlGODRDRDYwMENBNEZDMSAvKiBKU05vZGVGaWx0ZXIuY3Bw
IGluIFNvdXJjZXMgKi8sCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9K
U0RPTVdpbmRvd0Jhc2UuY3BwIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvSlNET01XaW5k
b3dCYXNlLmNwcAppbmRleCBmODAzZGJlY2IxOTRhNTY1Zjk4YWNlN2VkNjU3NTIwNjY4ZDM4Yjcz
Li5kYjA3NjM1ODQxOWU3NmYyZTk5ODBjNzE2NGFiMDliNTY3ODI3NWRiIDEwMDY0NAotLS0gYS9T
b3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9KU0RPTVdpbmRvd0Jhc2UuY3BwCisrKyBiL1NvdXJj
ZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0pTRE9NV2luZG93QmFzZS5jcHAKQEAgLTMsNiArMyw3IEBA
CiAgKiAgQ29weXJpZ2h0IChDKSAyMDA2IEpvbiBTaGllciAoanNoaWVyQGlhc3RhdGUuZWR1KQog
ICogIENvcHlyaWdodCAoQykgMjAwMy0yMDA5LCAyMDE0IEFwcGxlIEluYy4gQWxsIHJpZ2h0cyBy
ZXNldmVkLgogICogIENvcHlyaWdodCAoQykgMjAwNiBBbGV4ZXkgUHJvc2t1cnlha292IChhcEB3
ZWJraXQub3JnKQorICogIENvcHlyaWdodCAoYykgMjAxNSBDYW5vbiBJbmMuIEFsbCByaWdodHMg
cmVzZXJ2ZWQuCiAgKgogICogIFRoaXMgbGlicmFyeSBpcyBmcmVlIHNvZnR3YXJlOyB5b3UgY2Fu
IHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IKICAqICBtb2RpZnkgaXQgdW5kZXIgdGhlIHRlcm1zIG9m
IHRoZSBHTlUgTGVzc2VyIEdlbmVyYWwgUHVibGljCkBAIC04MywzNCArODQsMzUgQEAgdm9pZCBK
U0RPTVdpbmRvd0Jhc2U6OmZpbmlzaENyZWF0aW9uKFZNJiB2bSwgSlNET01XaW5kb3dTaGVsbCog
c2hlbGwpCiAKICAgICBtX3ByaXZhdGVGdW5jdGlvbnMuaW5pdCgqdGhpcyk7CiAKKyNpZiBFTkFC
TEUoU1RSRUFNU19BUEkpCisgICAgSlNWTUNsaWVudERhdGEmIGNsaWVudERhdGEgPSAqc3RhdGlj
X2Nhc3Q8SlNWTUNsaWVudERhdGEqPih2bS5jbGllbnREYXRhKTsKKyNlbmRpZgorCiAgICAgR2xv
YmFsUHJvcGVydHlJbmZvIHN0YXRpY0dsb2JhbHNbXSA9IHsKICAgICAgICAgR2xvYmFsUHJvcGVy
dHlJbmZvKHZtLnByb3BlcnR5TmFtZXMtPmRvY3VtZW50LCBqc051bGwoKSwgRG9udERlbGV0ZSB8
IFJlYWRPbmx5KSwKICAgICAgICAgR2xvYmFsUHJvcGVydHlJbmZvKHZtLnByb3BlcnR5TmFtZXMt
PndpbmRvdywgbV9zaGVsbCwgRG9udERlbGV0ZSB8IFJlYWRPbmx5KSwKICNpZiBFTkFCTEUoU1RS
RUFNU19BUEkpCi0gICAgICAgIEdsb2JhbFByb3BlcnR5SW5mbyhzdGF0aWNfY2FzdDxKU1ZNQ2xp
ZW50RGF0YSo+KHZtLmNsaWVudERhdGEpLT5idWlsdGluTmFtZXMoKS5zdHJlYW1DbG9zZWRQcml2
YXRlTmFtZSgpLCBqc051bWJlcigxKSwgRG9udERlbGV0ZSB8IFJlYWRPbmx5KSwKLSAgICAgICAg
R2xvYmFsUHJvcGVydHlJbmZvKHN0YXRpY19jYXN0PEpTVk1DbGllbnREYXRhKj4odm0uY2xpZW50
RGF0YSktPmJ1aWx0aW5OYW1lcygpLnN0cmVhbUNsb3NpbmdQcml2YXRlTmFtZSgpLCBqc051bWJl
cigyKSwgRG9udERlbGV0ZSB8IFJlYWRPbmx5KSwKLSAgICAgICAgR2xvYmFsUHJvcGVydHlJbmZv
KHN0YXRpY19jYXN0PEpTVk1DbGllbnREYXRhKj4odm0uY2xpZW50RGF0YSktPmJ1aWx0aW5OYW1l
cygpLnN0cmVhbUVycm9yZWRQcml2YXRlTmFtZSgpLCBqc051bWJlcigzKSwgRG9udERlbGV0ZSB8
IFJlYWRPbmx5KSwKLSAgICAgICAgR2xvYmFsUHJvcGVydHlJbmZvKHN0YXRpY19jYXN0PEpTVk1D
bGllbnREYXRhKj4odm0uY2xpZW50RGF0YSktPmJ1aWx0aW5OYW1lcygpLnN0cmVhbVJlYWRhYmxl
UHJpdmF0ZU5hbWUoKSwganNOdW1iZXIoNCksIERvbnREZWxldGUgfCBSZWFkT25seSksCi0gICAg
ICAgIEdsb2JhbFByb3BlcnR5SW5mbyhzdGF0aWNfY2FzdDxKU1ZNQ2xpZW50RGF0YSo+KHZtLmNs
aWVudERhdGEpLT5idWlsdGluTmFtZXMoKS5zdHJlYW1XYWl0aW5nUHJpdmF0ZU5hbWUoKSwganNO
dW1iZXIoNSksIERvbnREZWxldGUgfCBSZWFkT25seSksCi0gICAgICAgIEdsb2JhbFByb3BlcnR5
SW5mbyhzdGF0aWNfY2FzdDxKU1ZNQ2xpZW50RGF0YSo+KHZtLmNsaWVudERhdGEpLT5idWlsdGlu
TmFtZXMoKS5zdHJlYW1Xcml0YWJsZVByaXZhdGVOYW1lKCksIGpzTnVtYmVyKDYpLCBEb250RGVs
ZXRlIHwgUmVhZE9ubHkpLAotICAgICAgICBHbG9iYWxQcm9wZXJ0eUluZm8oc3RhdGljX2Nhc3Q8
SlNWTUNsaWVudERhdGEqPih2bS5jbGllbnREYXRhKS0+YnVpbHRpbk5hbWVzKCkuUmVhZGFibGVT
dHJlYW1Db250cm9sbGVyUHJpdmF0ZU5hbWUoKSwgY3JlYXRlUmVhZGFibGVTdHJlYW1Db250cm9s
bGVyUHJpdmF0ZUNvbnN0cnVjdG9yKHZtLCAqdGhpcyksIERvbnREZWxldGUgfCBSZWFkT25seSks
Ci0gICAgICAgIEdsb2JhbFByb3BlcnR5SW5mbyhzdGF0aWNfY2FzdDxKU1ZNQ2xpZW50RGF0YSo+
KHZtLmNsaWVudERhdGEpLT5idWlsdGluTmFtZXMoKS5SZWFkYWJsZVN0cmVhbVJlYWRlclByaXZh
dGVOYW1lKCksIGNyZWF0ZVJlYWRhYmxlU3RyZWFtUmVhZGVyUHJpdmF0ZUNvbnN0cnVjdG9yKHZt
LCAqdGhpcyksIERvbnREZWxldGUgfCBSZWFkT25seSksCisgICAgICAgIEdsb2JhbFByb3BlcnR5
SW5mbyhjbGllbnREYXRhLmJ1aWx0aW5OYW1lcygpLnN0cmVhbUNsb3NlZFByaXZhdGVOYW1lKCks
IGpzTnVtYmVyKDEpLCBEb250RGVsZXRlIHwgUmVhZE9ubHkpLAorICAgICAgICBHbG9iYWxQcm9w
ZXJ0eUluZm8oY2xpZW50RGF0YS5idWlsdGluTmFtZXMoKS5zdHJlYW1DbG9zaW5nUHJpdmF0ZU5h
bWUoKSwganNOdW1iZXIoMiksIERvbnREZWxldGUgfCBSZWFkT25seSksCisgICAgICAgIEdsb2Jh
bFByb3BlcnR5SW5mbyhjbGllbnREYXRhLmJ1aWx0aW5OYW1lcygpLnN0cmVhbUVycm9yZWRQcml2
YXRlTmFtZSgpLCBqc051bWJlcigzKSwgRG9udERlbGV0ZSB8IFJlYWRPbmx5KSwKKyAgICAgICAg
R2xvYmFsUHJvcGVydHlJbmZvKGNsaWVudERhdGEuYnVpbHRpbk5hbWVzKCkuc3RyZWFtUmVhZGFi
bGVQcml2YXRlTmFtZSgpLCBqc051bWJlcig0KSwgRG9udERlbGV0ZSB8IFJlYWRPbmx5KSwKKyAg
ICAgICAgR2xvYmFsUHJvcGVydHlJbmZvKGNsaWVudERhdGEuYnVpbHRpbk5hbWVzKCkuc3RyZWFt
V2FpdGluZ1ByaXZhdGVOYW1lKCksIGpzTnVtYmVyKDUpLCBEb250RGVsZXRlIHwgUmVhZE9ubHkp
LAorICAgICAgICBHbG9iYWxQcm9wZXJ0eUluZm8oY2xpZW50RGF0YS5idWlsdGluTmFtZXMoKS5z
dHJlYW1Xcml0YWJsZVByaXZhdGVOYW1lKCksIGpzTnVtYmVyKDYpLCBEb250RGVsZXRlIHwgUmVh
ZE9ubHkpLAorICAgICAgICBHbG9iYWxQcm9wZXJ0eUluZm8oY2xpZW50RGF0YS5idWlsdGluTmFt
ZXMoKS5SZWFkYWJsZVN0cmVhbUNvbnRyb2xsZXJQcml2YXRlTmFtZSgpLCBjcmVhdGVSZWFkYWJs
ZVN0cmVhbUNvbnRyb2xsZXJQcml2YXRlQ29uc3RydWN0b3Iodm0sICp0aGlzKSwgRG9udERlbGV0
ZSB8IFJlYWRPbmx5KSwKKyAgICAgICAgR2xvYmFsUHJvcGVydHlJbmZvKGNsaWVudERhdGEuYnVp
bHRpbk5hbWVzKCkuUmVhZGFibGVTdHJlYW1SZWFkZXJQcml2YXRlTmFtZSgpLCBjcmVhdGVSZWFk
YWJsZVN0cmVhbVJlYWRlclByaXZhdGVDb25zdHJ1Y3Rvcih2bSwgKnRoaXMpLCBEb250RGVsZXRl
IHwgUmVhZE9ubHkpLAogI2RlZmluZSBERUNMQVJFX0dMT0JBTF9TVEFUSUMobmFtZSlcCiAgICAg
ICAgIEdsb2JhbFByb3BlcnR5SW5mbyhcCi0gICAgICAgICAgICBzdGF0aWNfY2FzdDxKU1ZNQ2xp
ZW50RGF0YSo+KHZtLmNsaWVudERhdGEpLT5idWlsdGluRnVuY3Rpb25zKCkucmVhZGFibGVTdHJl
YW1JbnRlcm5hbHNCdWlsdGlucygpLm5hbWUjI1ByaXZhdGVOYW1lKCksIFwKLSAgICAgICAgICAg
IG1fcHJpdmF0ZUZ1bmN0aW9ucy5yZWFkYWJsZVN0cmVhbUludGVybmFscygpLm1fIyNuYW1lIyNG
dW5jdGlvbi5nZXQoKSAsIERvbnREZWxldGUgfCBSZWFkT25seSksCisgICAgICAgICAgICBjbGll
bnREYXRhLmJ1aWx0aW5GdW5jdGlvbnMoKS5yZWFkYWJsZVN0cmVhbUludGVybmFsc0J1aWx0aW5z
KCkubmFtZSMjUHJpdmF0ZU5hbWUoKSwgbV9wcml2YXRlRnVuY3Rpb25zLnJlYWRhYmxlU3RyZWFt
SW50ZXJuYWxzKCkubV8jI25hbWUjI0Z1bmN0aW9uLmdldCgpICwgRG9udERlbGV0ZSB8IFJlYWRP
bmx5KSwKICAgICAgICAgV0VCQ09SRV9GT1JFQUNIX1JFQURBQkxFU1RSRUFNSU5URVJOQUxTX0JV
SUxUSU5fRlVOQ1RJT05fTkFNRShERUNMQVJFX0dMT0JBTF9TVEFUSUMpCiAjdW5kZWYgREVDTEFS
RV9HTE9CQUxfU1RBVElDCiAjZGVmaW5lIERFQ0xBUkVfR0xPQkFMX1NUQVRJQyhuYW1lKVwKICAg
ICAgICAgR2xvYmFsUHJvcGVydHlJbmZvKFwKLSAgICAgICAgICAgIHN0YXRpY19jYXN0PEpTVk1D
bGllbnREYXRhKj4odm0uY2xpZW50RGF0YSktPmJ1aWx0aW5GdW5jdGlvbnMoKS5zdHJlYW1JbnRl
cm5hbHNCdWlsdGlucygpLm5hbWUjI1ByaXZhdGVOYW1lKCksIFwKLSAgICAgICAgICAgIG1fcHJp
dmF0ZUZ1bmN0aW9ucy5zdHJlYW1JbnRlcm5hbHMoKS5tXyMjbmFtZSMjRnVuY3Rpb24uZ2V0KCkg
LCBEb250RGVsZXRlIHwgUmVhZE9ubHkpLAorICAgICAgICAgICAgY2xpZW50RGF0YS5idWlsdGlu
RnVuY3Rpb25zKCkuc3RyZWFtSW50ZXJuYWxzQnVpbHRpbnMoKS5uYW1lIyNQcml2YXRlTmFtZSgp
LCBtX3ByaXZhdGVGdW5jdGlvbnMuc3RyZWFtSW50ZXJuYWxzKCkubV8jI25hbWUjI0Z1bmN0aW9u
LmdldCgpICwgRG9udERlbGV0ZSB8IFJlYWRPbmx5KSwKICAgICAgICAgV0VCQ09SRV9GT1JFQUNI
X1NUUkVBTUlOVEVSTkFMU19CVUlMVElOX0ZVTkNUSU9OX05BTUUoREVDTEFSRV9HTE9CQUxfU1RB
VElDKQogI3VuZGVmIERFQ0xBUkVfR0xPQkFMX1NUQVRJQwogI2RlZmluZSBERUNMQVJFX0dMT0JB
TF9TVEFUSUMobmFtZSlcCiAgICAgICAgIEdsb2JhbFByb3BlcnR5SW5mbyhcCi0gICAgICAgICAg
ICBzdGF0aWNfY2FzdDxKU1ZNQ2xpZW50RGF0YSo+KHZtLmNsaWVudERhdGEpLT5idWlsdGluRnVu
Y3Rpb25zKCkud3JpdGFibGVTdHJlYW1JbnRlcm5hbHNCdWlsdGlucygpLm5hbWUjI1ByaXZhdGVO
YW1lKCksIFwKLSAgICAgICAgICAgIG1fcHJpdmF0ZUZ1bmN0aW9ucy53cml0YWJsZVN0cmVhbUlu
dGVybmFscygpLm1fIyNuYW1lIyNGdW5jdGlvbi5nZXQoKSAsIERvbnREZWxldGUgfCBSZWFkT25s
eSksCisgICAgICAgICAgICBjbGllbnREYXRhLmJ1aWx0aW5GdW5jdGlvbnMoKS53cml0YWJsZVN0
cmVhbUludGVybmFsc0J1aWx0aW5zKCkubmFtZSMjUHJpdmF0ZU5hbWUoKSwgbV9wcml2YXRlRnVu
Y3Rpb25zLndyaXRhYmxlU3RyZWFtSW50ZXJuYWxzKCkubV8jI25hbWUjI0Z1bmN0aW9uLmdldCgp
ICwgRG9udERlbGV0ZSB8IFJlYWRPbmx5KSwKICAgICAgICAgV0VCQ09SRV9GT1JFQUNIX1dSSVRB
QkxFU1RSRUFNSU5URVJOQUxTX0JVSUxUSU5fRlVOQ1RJT05fTkFNRShERUNMQVJFX0dMT0JBTF9T
VEFUSUMpCiAjdW5kZWYgREVDTEFSRV9HTE9CQUxfU1RBVElDCiAjZW5kaWYKZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0pTTmF2aWdhdG9yQ3VzdG9tLmNwcCBiL1NvdXJj
ZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0pTTmF2aWdhdG9yQ3VzdG9tLmNwcApkZWxldGVkIGZpbGUg
bW9kZSAxMDA2NDQKaW5kZXggZjI0YzA1NWZjODliOWRlN2I5YTU1YzRlNjBlNDkwNzJjYWQ5NTZl
YS4uMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMAotLS0gYS9Tb3VyY2Uv
V2ViQ29yZS9iaW5kaW5ncy9qcy9KU05hdmlnYXRvckN1c3RvbS5jcHAKKysrIC9kZXYvbnVsbApA
QCAtMSwxMDMgKzAsMCBAQAotLyoKLSAqIENvcHlyaWdodCAoQykgMjAxMyBOb2tpYSBDb3Jwb3Jh
dGlvbiBhbmQvb3IgaXRzIHN1YnNpZGlhcnkoLWllcykuCi0gKiBDb3B5cmlnaHQgKEMpIDIwMTUg
Q2Fub24gSU5DLgotICoKLSAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBi
aW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAotICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0
dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCi0gKiBhcmUgbWV0Ogot
ICogMS4gUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92
ZSBjb3B5cmlnaHQKLSAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRo
ZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KLSAqIDIuIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkg
Zm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0Ci0gKiAgICBub3RpY2UsIHRo
aXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhl
Ci0gKiAgICBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0
aCB0aGUgZGlzdHJpYnV0aW9uLgotICoKLSAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkg
VEhFIENPUFlSSUdIVCBIT0xERVJTIEFORCBDT05UUklCVVRPUlMKLSAqICJBUyBJUyIgQU5EIEFO
WSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UCi0gKiBM
SU1JVEVEIFRPLCBUSEUgSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQg
RklUTkVTUyBGT1IKLSAqIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiBJTiBO
TyBFVkVOVCBTSEFMTCBUSEUgQ09QWVJJR0hUCi0gKiBPV05FUiBPUiBDT05UUklCVVRPUlMgQkUg
TElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwKLSAqIFNQRUNJQUws
IEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QK
LSAqIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklD
RVM7IExPU1MgT0YgVVNFLAotICogREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJS
VVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZCi0gKiBUSEVPUlkgT0YgTElBQklMSVRZ
LCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUCi0gKiAoSU5D
TFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9G
IFRIRSBVU0UKLSAqIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9T
U0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCi0gKi8KLQotI2luY2x1ZGUgImNvbmZpZy5oIgotCi0j
aWYgRU5BQkxFKE1FRElBX1NUUkVBTSkKLSNpbmNsdWRlICJKU05hdmlnYXRvci5oIgotCi0jaW5j
bHVkZSAiRGljdGlvbmFyeS5oIgotI2luY2x1ZGUgIkRvY3VtZW50LmgiCi0jaW5jbHVkZSAiRXhj
ZXB0aW9uQ29kZS5oIgotI2luY2x1ZGUgIkZyYW1lLmgiCi0jaW5jbHVkZSAiSlNOYXZpZ2F0b3JV
c2VyTWVkaWFFcnJvckNhbGxiYWNrLmgiCi0jaW5jbHVkZSAiSlNOYXZpZ2F0b3JVc2VyTWVkaWFT
dWNjZXNzQ2FsbGJhY2suaCIKLSNpbmNsdWRlICJNZWRpYVN0cmVhbS5oIgotI2luY2x1ZGUgIlVz
ZXJNZWRpYVJlcXVlc3QuaCIKLQotdXNpbmcgbmFtZXNwYWNlIEpTQzsKLQotbmFtZXNwYWNlIFdl
YkNvcmUgewotCi1KU1ZhbHVlIEpTTmF2aWdhdG9yOjp3ZWJraXRHZXRVc2VyTWVkaWEoRXhlY1N0
YXRlJiBzdGF0ZSkKLXsKLSAgICBpZiAoc3RhdGUuYXJndW1lbnRDb3VudCgpIDwgMykgewotICAg
ICAgICB0aHJvd1ZNRXJyb3IoJnN0YXRlLCBjcmVhdGVOb3RFbm91Z2hBcmd1bWVudHNFcnJvcigm
c3RhdGUpKTsKLSAgICAgICAgcmV0dXJuIGpzVW5kZWZpbmVkKCk7Ci0gICAgfQotCi0gICAgRGlj
dGlvbmFyeSBvcHRpb25zKCZzdGF0ZSwgc3RhdGUuYXJndW1lbnQoMCkpOwotICAgIGlmIChzdGF0
ZS5oYWRFeGNlcHRpb24oKSkKLSAgICAgICAgcmV0dXJuIGpzVW5kZWZpbmVkKCk7Ci0KLSAgICBp
ZiAoIW9wdGlvbnMuaXNPYmplY3QoKSkgewotICAgICAgICB0aHJvd1ZNRXJyb3IoJnN0YXRlLCBj
cmVhdGVUeXBlRXJyb3IoJnN0YXRlLCAiRmlyc3QgYXJndW1lbnQgb2Ygd2Via2l0R2V0VXNlck1l
ZGlhIG11c3QgYmUgYSB2YWxpZCBEaWN0aW9uYXJ5IikpOwotICAgICAgICByZXR1cm4ganNVbmRl
ZmluZWQoKTsKLSAgICB9Ci0KLSAgICBpZiAoIXN0YXRlLmFyZ3VtZW50KDEpLmlzRnVuY3Rpb24o
KSkgewotICAgICAgICB0aHJvd1ZNVHlwZUVycm9yKCZzdGF0ZSwgIkFyZ3VtZW50IDIgKCdzdWNj
ZXNzQ2FsbGJhY2snKSB0byBOYXZpZ2F0b3Iud2Via2l0R2V0VXNlck1lZGlhIG11c3QgYmUgYSBm
dW5jdGlvbiIpOwotICAgICAgICByZXR1cm4ganNVbmRlZmluZWQoKTsKLSAgICB9Ci0KLSAgICBp
ZiAoIXN0YXRlLmFyZ3VtZW50KDIpLmlzRnVuY3Rpb24oKSkgewotICAgICAgICB0aHJvd1ZNVHlw
ZUVycm9yKCZzdGF0ZSwgIkFyZ3VtZW50IDMgKCdlcnJvckNhbGxiYWNrJykgdG8gTmF2aWdhdG9y
LndlYmtpdEdldFVzZXJNZWRpYSBtdXN0IGJlIGEgZnVuY3Rpb24iKTsKLSAgICAgICAgcmV0dXJu
IGpzVW5kZWZpbmVkKCk7Ci0gICAgfQotCi0gICAgaWYgKCF3cmFwcGVkKCkuZnJhbWUoKSkgewot
ICAgICAgICBzZXRET01FeGNlcHRpb24oJnN0YXRlLCBOT1RfU1VQUE9SVEVEX0VSUik7Ci0gICAg
ICAgIHJldHVybiBqc1VuZGVmaW5lZCgpOwotICAgIH0KLQotICAgIC8vIFdlIGRvIG5vdCBuZWVk
IHRvIHByb3RlY3QgdGhlIGNvbnRleHQgKGkuZS4gZG9jdW1lbnQpIGhlcmUgYXMgVXNlck1lZGlh
UmVxdWVzdCBpcyBvYnNlcnZpbmcgY29udGV4dCBkZXN0cnVjdGlvbiBhbmQgd2lsbCBjaGVjayB2
YWxpZGl0eSBiZWZvcmUgcmVzb2x2aW5nL3JlamVjdGluZyBwcm9taXNlLgotICAgIERvY3VtZW50
KiBkb2N1bWVudCA9IHdyYXBwZWQoKS5mcmFtZSgpLT5kb2N1bWVudCgpOwotCi0gICAgUmVmUHRy
PE5hdmlnYXRvclVzZXJNZWRpYVN1Y2Nlc3NDYWxsYmFjaz4gc3VjY2Vzc0NhbGxiYWNrID0gSlNO
YXZpZ2F0b3JVc2VyTWVkaWFTdWNjZXNzQ2FsbGJhY2s6OmNyZWF0ZShhc09iamVjdChzdGF0ZS51
bmNoZWNrZWRBcmd1bWVudCgxKSksIGdsb2JhbE9iamVjdCgpKTsKLSAgICBhdXRvIHJlc29sdmVD
YWxsYmFjayA9IFtzdWNjZXNzQ2FsbGJhY2ssIGRvY3VtZW50XShjb25zdCBSZWZQdHI8TWVkaWFT
dHJlYW0+JiBzdHJlYW0pIG11dGFibGUgewotICAgICAgICBSZWZQdHI8TWVkaWFTdHJlYW0+IHBy
b3RlY3RlZFN0cmVhbSA9IHN0cmVhbTsKLSAgICAgICAgZG9jdW1lbnQtPnBvc3RUYXNrKFtzdWNj
ZXNzQ2FsbGJhY2ssIHByb3RlY3RlZFN0cmVhbV0oU2NyaXB0RXhlY3V0aW9uQ29udGV4dCYpIHsK
LSAgICAgICAgICAgIHN1Y2Nlc3NDYWxsYmFjay0+aGFuZGxlRXZlbnQocHJvdGVjdGVkU3RyZWFt
LmdldCgpKTsKLSAgICAgICAgfSk7Ci0gICAgfTsKLQotICAgIFJlZlB0cjxOYXZpZ2F0b3JVc2Vy
TWVkaWFFcnJvckNhbGxiYWNrPiBlcnJvckNhbGxiYWNrID0gSlNOYXZpZ2F0b3JVc2VyTWVkaWFF
cnJvckNhbGxiYWNrOjpjcmVhdGUoYXNPYmplY3Qoc3RhdGUudW5jaGVja2VkQXJndW1lbnQoMikp
LCBnbG9iYWxPYmplY3QoKSk7Ci0gICAgYXV0byByZWplY3RDYWxsYmFjayA9IFtlcnJvckNhbGxi
YWNrLCBkb2N1bWVudF0oY29uc3QgUmVmUHRyPE5hdmlnYXRvclVzZXJNZWRpYUVycm9yPiYgZXJy
b3IpIG11dGFibGUgewotICAgICAgICBSZWZQdHI8TmF2aWdhdG9yVXNlck1lZGlhRXJyb3I+IHBy
b3RlY3RlZEVycm9yID0gZXJyb3I7Ci0gICAgICAgIGRvY3VtZW50LT5wb3N0VGFzayhbZXJyb3JD
YWxsYmFjaywgcHJvdGVjdGVkRXJyb3JdKFNjcmlwdEV4ZWN1dGlvbkNvbnRleHQmKSB7Ci0gICAg
ICAgICAgICBlcnJvckNhbGxiYWNrLT5oYW5kbGVFdmVudChwcm90ZWN0ZWRFcnJvci5nZXQoKSk7
Ci0gICAgICAgIH0pOwotICAgIH07Ci0KLSAgICBFeGNlcHRpb25Db2RlIGVjID0gMDsKLSAgICBV
c2VyTWVkaWFSZXF1ZXN0OjpzdGFydChkb2N1bWVudCwgb3B0aW9ucywgTWVkaWFEZXZpY2VzOjpQ
cm9taXNlKFdURjo6bW92ZShyZXNvbHZlQ2FsbGJhY2spLCBXVEY6Om1vdmUocmVqZWN0Q2FsbGJh
Y2spKSwgZWMpOwotICAgIHNldERPTUV4Y2VwdGlvbigmc3RhdGUsIGVjKTsKLSAgICByZXR1cm4g
anNVbmRlZmluZWQoKTsKLX0KLQotfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQotCi0jZW5kaWYgLy8g
RU5BQkxFKE1FRElBX1NUUkVBTSkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdz
L2pzL1dlYkNvcmVKU0J1aWx0aW5zLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL1dl
YkNvcmVKU0J1aWx0aW5zLmNwcAppbmRleCBhZGYxMGU4N2E3ZWJjM2NhOWNjN2NmOGJmOGNkZDIy
NTBhM2FkYjdlLi5mODI4MTBlMjY4ZDg1Nzc3ZTYwYWIyNjlkMGQ1OGFkZjMzY2IwNDQ0IDEwMDY0
NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9XZWJDb3JlSlNCdWlsdGlucy5jcHAK
KysrIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvV2ViQ29yZUpTQnVpbHRpbnMuY3BwCkBA
IC00MSwzICs0MSw2IEBACiAjaW5jbHVkZSAiV3JpdGFibGVTdHJlYW1CdWlsdGlucy5jcHAiCiAj
aW5jbHVkZSAiV3JpdGFibGVTdHJlYW1JbnRlcm5hbHNCdWlsdGlucy5jcHAiCiAjZW5kaWYKKyNp
ZiBFTkFCTEUoTUVESUFfU1RSRUFNKQorI2luY2x1ZGUgIk5hdmlnYXRvclVzZXJNZWRpYUJ1aWx0
aW5zLmNwcCIKKyNlbmRpZgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMv
V2ViQ29yZUpTQnVpbHRpbnMuaCBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL1dlYkNvcmVK
U0J1aWx0aW5zLmgKaW5kZXggYWE3OWExMzJlYWZiMWU5ZjIxNmYzODU3NTliNzQ3ODlkZTU5NmI2
MC4uODRlNjdhOTNmOGY0MWI0NTQxZGI4ZTU0ZWUxOWVhMjk3YTY0MDVlMCAxMDA2NDQKLS0tIGEv
U291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvV2ViQ29yZUpTQnVpbHRpbnMuaAorKysgYi9Tb3Vy
Y2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9XZWJDb3JlSlNCdWlsdGlucy5oCkBAIC0yOSw2ICsyOSw3
IEBACiAKICNpZiBFTkFCTEUoTUVESUFfU1RSRUFNKQogI2luY2x1ZGUgIk1lZGlhRGV2aWNlc0J1
aWx0aW5zLmgiCisjaW5jbHVkZSAiTmF2aWdhdG9yVXNlck1lZGlhQnVpbHRpbnMuaCIKICNlbmRp
ZgogCiAjaWYgRU5BQkxFKFNUUkVBTVNfQVBJKQpAQCAtNjQsNiArNjUsNyBAQCBwdWJsaWM6CiAj
ZW5kaWYKICNpZiBFTkFCTEUoTUVESUFfU1RSRUFNKQogICAgICAgICAsIG1fbWVkaWFEZXZpY2Vz
QnVpbHRpbnMoJnZtKQorICAgICAgICAsIG1fbmF2aWdhdG9yVXNlck1lZGlhQnVpbHRpbnMoJnZt
KQogI2VuZGlmCiAgICAgewogI2lmIEVOQUJMRShTVFJFQU1TX0FQSSkKQEAgLTg1LDYgKzg3LDcg
QEAgcHVibGljOgogI2VuZGlmCiAjaWYgRU5BQkxFKE1FRElBX1NUUkVBTSkKICAgICBNZWRpYURl
dmljZXNCdWlsdGluc1dyYXBwZXImIG1lZGlhRGV2aWNlc0J1aWx0aW5zKCkgeyByZXR1cm4gbV9t
ZWRpYURldmljZXNCdWlsdGluczsgfQorICAgIE5hdmlnYXRvclVzZXJNZWRpYUJ1aWx0aW5zV3Jh
cHBlciYgbmF2aWdhdG9yVXNlck1lZGlhQnVpbHRpbnMoKSB7IHJldHVybiBtX25hdmlnYXRvclVz
ZXJNZWRpYUJ1aWx0aW5zO30KICNlbmRpZgogCiBwcml2YXRlOgpAQCAtMTAyLDYgKzEwNSw3IEBA
IHByaXZhdGU6CiAjZW5kaWYKICNpZiBFTkFCTEUoTUVESUFfU1RSRUFNKQogICAgIE1lZGlhRGV2
aWNlc0J1aWx0aW5zV3JhcHBlciBtX21lZGlhRGV2aWNlc0J1aWx0aW5zOworICAgIE5hdmlnYXRv
clVzZXJNZWRpYUJ1aWx0aW5zV3JhcHBlciBtX25hdmlnYXRvclVzZXJNZWRpYUJ1aWx0aW5zOwog
I2VuZGlmCiAKIH07CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cgYi9MYXlvdXRU
ZXN0cy9DaGFuZ2VMb2cKaW5kZXggYTI2N2RiNjYxNGRkY2I5YzA2NDIyOGFmZWQxMjdmNjUzNTdm
ZmUxNy4uODA1NzU2ZGU2NzNlOTVmOWNlZTM0NWIyNDcxNmU0M2M5ZDNjMmNlNSAxMDA2NDQKLS0t
IGEvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCisrKyBiL0xheW91dFRlc3RzL0NoYW5nZUxvZwpAQCAt
MSwzICsxLDE2IEBACisyMDE1LTEwLTE5ICBZb3Vlbm4gRmFibGV0ICA8eW91ZW5uLmZhYmxldEBj
cmYuY2Fub24uZnI+CisKKyAgICAgICAgTW92ZSB3ZWJraXRHZXRVc2VyTWVkaWEgdG8gSlMgQnVp
bHRpbgorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTQ5
NDk5CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgKiBm
YXN0L21lZGlhc3RyZWFtL2FyZ3VtZW50LXR5cGVzLWV4cGVjdGVkLnR4dDoKKyAgICAgICAgKiBm
YXN0L21lZGlhc3RyZWFtL2dldHVzZXJtZWRpYS1leHBlY3RlZC50eHQ6CisgICAgICAgICogZmFz
dC9tZWRpYXN0cmVhbS9nZXR1c2VybWVkaWEuaHRtbDoKKyAgICAgICAgKiBmYXN0L21lZGlhc3Ry
ZWFtL3NjcmlwdC10ZXN0cy9hcmd1bWVudC10eXBlcy5qczoKKyAgICAgICAgKiBodHRwL3Rlc3Rz
L21lZGlhL21lZGlhLXN0cmVhbS9kaXNjb25uZWN0ZWQtZnJhbWUtYWxyZWFkeS1leHBlY3RlZC50
eHQ6CisKIDIwMTUtMTAtMjkgIFNlcmdpbyBWaWxsYXIgU2VuaW4gIDxzdmlsbGFyQGlnYWxpYS5j
b20+CiAKICAgICAgICAgW0NTUyBHcmlkIExheW91dF0gbWluLWNvbnRlbnQgcm93IGRvZXMgbm90
IGFsd2F5cyBzaHJpbmsKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3QvbWVkaWFzdHJlYW0v
YXJndW1lbnQtdHlwZXMtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvZmFzdC9tZWRpYXN0cmVh
bS9hcmd1bWVudC10eXBlcy1leHBlY3RlZC50eHQKaW5kZXggNDIyNGQ0MDIwMjI5OWYwMDIxMmUy
NzIxZjIxZTQzM2ZjZDVlMjkyNC4uNWNiYzQ4NTg4Mjc2MjliY2Y0ODRlNmY2NDEyZjU5ZmUxMDM0
YzFjZiAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvZmFzdC9tZWRpYXN0cmVhbS9hcmd1bWVudC10
eXBlcy1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC9tZWRpYXN0cmVhbS9hcmd1
bWVudC10eXBlcy1leHBlY3RlZC50eHQKQEAgLTMwLDcgKzMwLDcgQEAgUEFTUyBuYXZpZ2F0b3Iu
d2Via2l0R2V0VXNlck1lZGlhKHt2aWRlbzogdHJ1ZX0sIHRydWUpIHRocmV3IGV4Y2VwdGlvbiBU
eXBlRXJyb3IKIFBBU1MgbmF2aWdhdG9yLndlYmtpdEdldFVzZXJNZWRpYSh7dmlkZW86IHRydWV9
LCA0MikgdGhyZXcgZXhjZXB0aW9uIFR5cGVFcnJvcjogTm90IGVub3VnaCBhcmd1bWVudHMuCiBQ
QVNTIG5hdmlnYXRvci53ZWJraXRHZXRVc2VyTWVkaWEoe3ZpZGVvOiB0cnVlfSwgSW5maW5pdHkp
IHRocmV3IGV4Y2VwdGlvbiBUeXBlRXJyb3I6IE5vdCBlbm91Z2ggYXJndW1lbnRzLgogUEFTUyBu
YXZpZ2F0b3Iud2Via2l0R2V0VXNlck1lZGlhKHt2aWRlbzogdHJ1ZX0sIC1JbmZpbml0eSkgdGhy
ZXcgZXhjZXB0aW9uIFR5cGVFcnJvcjogTm90IGVub3VnaCBhcmd1bWVudHMuCi1QQVNTIG5hdmln
YXRvci53ZWJraXRHZXRVc2VyTWVkaWEoeyB9LCBlbXB0eUZ1bmN0aW9uLCBlbXB0eUZ1bmN0aW9u
KSB0aHJldyBleGNlcHRpb24gRXJyb3I6IE5vdFN1cHBvcnRlZEVycm9yOiBET00gRXhjZXB0aW9u
IDkuCitQQVNTIG5hdmlnYXRvci53ZWJraXRHZXRVc2VyTWVkaWEoeyB9LCBlbXB0eUZ1bmN0aW9u
LCBlbXB0eUZ1bmN0aW9uKSBkaWQgbm90IHRocm93IGV4Y2VwdGlvbi4KIFBBU1MgbmF2aWdhdG9y
LndlYmtpdEdldFVzZXJNZWRpYSh7dmlkZW86IHRydWV9LCBlbXB0eUZ1bmN0aW9uLCBlbXB0eUZ1
bmN0aW9uKSBkaWQgbm90IHRocm93IGV4Y2VwdGlvbi4KIFBBU1MgbmF2aWdhdG9yLndlYmtpdEdl
dFVzZXJNZWRpYSh7dmlkZW86IHRydWV9LCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQpIHRocmV3
IGV4Y2VwdGlvbiBUeXBlRXJyb3I6IEFyZ3VtZW50IDMgKCdlcnJvckNhbGxiYWNrJykgdG8gTmF2
aWdhdG9yLndlYmtpdEdldFVzZXJNZWRpYSBtdXN0IGJlIGEgZnVuY3Rpb24uCiBQQVNTIG5hdmln
YXRvci53ZWJraXRHZXRVc2VyTWVkaWEoe2F1ZGlvOnRydWUsIHZpZGVvOnRydWV9LCBlbXB0eUZ1
bmN0aW9uLCB1bmRlZmluZWQpIHRocmV3IGV4Y2VwdGlvbiBUeXBlRXJyb3I6IEFyZ3VtZW50IDMg
KCdlcnJvckNhbGxiYWNrJykgdG8gTmF2aWdhdG9yLndlYmtpdEdldFVzZXJNZWRpYSBtdXN0IGJl
IGEgZnVuY3Rpb24uCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L21lZGlhc3RyZWFtL2dl
dHVzZXJtZWRpYS1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9mYXN0L21lZGlhc3RyZWFtL2dl
dHVzZXJtZWRpYS1leHBlY3RlZC50eHQKaW5kZXggZGNhNWZiOTYxY2Y2ZWI1ZjQ0NWFiNDUwYWEw
YjNlNTJkNDEwNzA4YS4uZDZjZmViNDkwY2MwMjE2MGZkZGQzYTIzZjgzMDNmMmFlNWM3ZGEwNiAx
MDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvZmFzdC9tZWRpYXN0cmVhbS9nZXR1c2VybWVkaWEtZXhw
ZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL2Zhc3QvbWVkaWFzdHJlYW0vZ2V0dXNlcm1lZGlh
LWV4cGVjdGVkLnR4dApAQCAtMyw5ICszLDEwIEBAIFRlc3RzIHdlYmtpdEdldFVzZXJNZWRpYS4K
IE9uIHN1Y2Nlc3MsIHlvdSB3aWxsIHNlZSBhIHNlcmllcyBvZiAiUEFTUyIgbWVzc2FnZXMsIGZv
bGxvd2VkIGJ5ICJURVNUIENPTVBMRVRFIi4KIAogCi1QQVNTIG5hdmlnYXRvci53ZWJraXRHZXRV
c2VyTWVkaWEoe2F1ZGlvOmZhbHNlLCB2aWRlbzpmYWxzZX0sIGVycm9yLCBlcnJvcik7IHRocmV3
IGV4Y2VwdGlvbiBFcnJvcjogTm90U3VwcG9ydGVkRXJyb3I6IERPTSBFeGNlcHRpb24gOS4KK1BB
U1MgbmF2aWdhdG9yLndlYmtpdEdldFVzZXJNZWRpYSh7YXVkaW86ZmFsc2UsIHZpZGVvOmZhbHNl
fSwgZXJyb3IsIGV4cGVjdGVkRXJyb3IpOyBkaWQgbm90IHRocm93IGV4Y2VwdGlvbi4KIFBBU1Mg
bmF2aWdhdG9yLndlYmtpdEdldFVzZXJNZWRpYSh7YXVkaW86ZmFsc2UsIHZpZGVvOmZhbHNlfSwg
ZXJyb3IsIG51bGwpOyB0aHJldyBleGNlcHRpb24gVHlwZUVycm9yOiBBcmd1bWVudCAzICgnZXJy
b3JDYWxsYmFjaycpIHRvIE5hdmlnYXRvci53ZWJraXRHZXRVc2VyTWVkaWEgbXVzdCBiZSBhIGZ1
bmN0aW9uLgogUEFTUyBuYXZpZ2F0b3Iud2Via2l0R2V0VXNlck1lZGlhKHthdWRpbzp0cnVlfSwg
Z290U3RyZWFtMSwgZXJyb3IpOyBkaWQgbm90IHRocm93IGV4Y2VwdGlvbi4KK1BBU1MgRXJyb3Ig
Y2FsbGJhY2sgY2FsbGVkLgogUEFTUyBTdHJlYW0gZ2VuZXJhdGVkLgogUEFTUyBzdHJlYW0uZ2V0
QXVkaW9UcmFja3MoKS5sZW5ndGggaXMgMQogUEFTUyBzdHJlYW0uZ2V0VmlkZW9UcmFja3MoKS5s
ZW5ndGggaXMgMApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9tZWRpYXN0cmVhbS9nZXR1
c2VybWVkaWEuaHRtbCBiL0xheW91dFRlc3RzL2Zhc3QvbWVkaWFzdHJlYW0vZ2V0dXNlcm1lZGlh
Lmh0bWwKaW5kZXggMTNmYWUxMzA2NzJiZDE1NDRlYjdiYTZjMmVlMWIxZDg0N2E0OWQ1MS4uZTMz
ODM5ZjFlNDczOWZiYjk3MjZmMTMwMDc3NDhiMTU4ZDRkMDkyOCAxMDA2NDQKLS0tIGEvTGF5b3V0
VGVzdHMvZmFzdC9tZWRpYXN0cmVhbS9nZXR1c2VybWVkaWEuaHRtbAorKysgYi9MYXlvdXRUZXN0
cy9mYXN0L21lZGlhc3RyZWFtL2dldHVzZXJtZWRpYS5odG1sCkBAIC0yNCw2ICsyNCwxMCBAQAog
ICAgICAgICAgICAgICAgIGZpbmlzaEpTVGVzdCgpOwogICAgICAgICAgICAgfQogCisgICAgICAg
ICAgICBmdW5jdGlvbiBleHBlY3RlZEVycm9yKCkgeworICAgICAgICAgICAgICAgIHRlc3RQYXNz
ZWQoJ0Vycm9yIGNhbGxiYWNrIGNhbGxlZC4nKTsKKyAgICAgICAgICAgIH0KKwogICAgICAgICAg
ICAgZnVuY3Rpb24gZ290U3RyZWFtSW5FcnJvcihzKSB7CiAgICAgICAgICAgICAgICAgdGVzdEZh
aWxlZCgnU3RyZWFtIGdlbmVyYXRlZC4nKTsKICAgICAgICAgICAgICAgICBmaW5pc2hKU1Rlc3Qo
KTsKQEAgLTg3LDcgKzkxLDcgQEAKICAgICAgICAgICAgICAgICBzaG91bGROb3RUaHJvdygibmF2
aWdhdG9yLndlYmtpdEdldFVzZXJNZWRpYSh7dmlkZW86dHJ1ZX0sIGdvdFN0cmVhbTIsIGVycm9y
KTsiKQogICAgICAgICAgICAgfQogCi0gICAgICAgICAgICBzaG91bGRUaHJvdygibmF2aWdhdG9y
LndlYmtpdEdldFVzZXJNZWRpYSh7YXVkaW86ZmFsc2UsIHZpZGVvOmZhbHNlfSwgZXJyb3IsIGVy
cm9yKTsiKQorICAgICAgICAgICAgc2hvdWxkTm90VGhyb3coIm5hdmlnYXRvci53ZWJraXRHZXRV
c2VyTWVkaWEoe2F1ZGlvOmZhbHNlLCB2aWRlbzpmYWxzZX0sIGVycm9yLCBleHBlY3RlZEVycm9y
KTsiKQogICAgICAgICAgICAgc2hvdWxkVGhyb3coIm5hdmlnYXRvci53ZWJraXRHZXRVc2VyTWVk
aWEoe2F1ZGlvOmZhbHNlLCB2aWRlbzpmYWxzZX0sIGVycm9yLCBudWxsKTsiKQogCiAgICAgICAg
ICAgICBzZXRVc2VyTWVkaWFQZXJtaXNzaW9uKHRydWUpOwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVz
dHMvZmFzdC9tZWRpYXN0cmVhbS9zY3JpcHQtdGVzdHMvYXJndW1lbnQtdHlwZXMuanMgYi9MYXlv
dXRUZXN0cy9mYXN0L21lZGlhc3RyZWFtL3NjcmlwdC10ZXN0cy9hcmd1bWVudC10eXBlcy5qcwpp
bmRleCAxMWFkZjg5MzY3N2QxYmIyYTc4NGU5NjRkOTI3Y2RhNGJhYTM3NzkzLi5mZjA4YjQwMDY5
NDg0NzE1OGFkNTYxY2M1ZjMzOGY0ZDI2YjQ2MjA1IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9m
YXN0L21lZGlhc3RyZWFtL3NjcmlwdC10ZXN0cy9hcmd1bWVudC10eXBlcy5qcworKysgYi9MYXlv
dXRUZXN0cy9mYXN0L21lZGlhc3RyZWFtL3NjcmlwdC10ZXN0cy9hcmd1bWVudC10eXBlcy5qcwpA
QCAtNTQsNyArNTQsNyBAQCB0ZXN0KCduYXZpZ2F0b3Iud2Via2l0R2V0VXNlck1lZGlhKHt2aWRl
bzogdHJ1ZX0sIEluZmluaXR5KScsIHRydWUpOwogdGVzdCgnbmF2aWdhdG9yLndlYmtpdEdldFVz
ZXJNZWRpYSh7dmlkZW86IHRydWV9LCAtSW5maW5pdHkpJywgdHJ1ZSk7CiAKIC8vIDMgQXJndW1l
bnRzLgotdGVzdCgnbmF2aWdhdG9yLndlYmtpdEdldFVzZXJNZWRpYSh7IH0sIGVtcHR5RnVuY3Rp
b24sIGVtcHR5RnVuY3Rpb24pJywgdHJ1ZSwgbm90U3VwcG9ydGVkRXJyb3IpOwordGVzdCgnbmF2
aWdhdG9yLndlYmtpdEdldFVzZXJNZWRpYSh7IH0sIGVtcHR5RnVuY3Rpb24sIGVtcHR5RnVuY3Rp
b24pJywgZmFsc2UpOwogdGVzdCgnbmF2aWdhdG9yLndlYmtpdEdldFVzZXJNZWRpYSh7dmlkZW86
IHRydWV9LCBlbXB0eUZ1bmN0aW9uLCBlbXB0eUZ1bmN0aW9uKScsIGZhbHNlKTsKIHRlc3QoJ25h
dmlnYXRvci53ZWJraXRHZXRVc2VyTWVkaWEoe3ZpZGVvOiB0cnVlfSwgZW1wdHlGdW5jdGlvbiwg
dW5kZWZpbmVkKScsIHRydWUsIGVycm9yQ2FsbGJhY2tFcnJvcik7CiB0ZXN0KCduYXZpZ2F0b3Iu
d2Via2l0R2V0VXNlck1lZGlhKHthdWRpbzp0cnVlLCB2aWRlbzp0cnVlfSwgZW1wdHlGdW5jdGlv
biwgdW5kZWZpbmVkKScsIHRydWUsIGVycm9yQ2FsbGJhY2tFcnJvcik7CmRpZmYgLS1naXQgYS9M
YXlvdXRUZXN0cy9odHRwL3Rlc3RzL21lZGlhL21lZGlhLXN0cmVhbS9kaXNjb25uZWN0ZWQtZnJh
bWUtYWxyZWFkeS1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL21lZGlhL21l
ZGlhLXN0cmVhbS9kaXNjb25uZWN0ZWQtZnJhbWUtYWxyZWFkeS1leHBlY3RlZC50eHQKaW5kZXgg
ZTUwNWRiOWIyYzdlYjYzOTMzZjllZjEwNWIzMGQ5MjVkMDk2ZDU3MS4uMmFjMzE0Nzc3MmVhZTE2
MzM0MzhmZGFmYWQ1MzBhNWY1MjU4YmI0ZCAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaHR0cC90
ZXN0cy9tZWRpYS9tZWRpYS1zdHJlYW0vZGlzY29ubmVjdGVkLWZyYW1lLWFscmVhZHktZXhwZWN0
ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvbWVkaWEvbWVkaWEtc3RyZWFtL2Rp
c2Nvbm5lY3RlZC1mcmFtZS1hbHJlYWR5LWV4cGVjdGVkLnR4dApAQCAtMSw0ICsxLDQgQEAKLUNP
TlNPTEUgTUVTU0FHRTogbGluZSAyNDogTm90U3VwcG9ydGVkRXJyb3I6IERPTSBFeGNlcHRpb24g
OTogVGhlIGltcGxlbWVudGF0aW9uIGRpZCBub3Qgc3VwcG9ydCB0aGUgcmVxdWVzdGVkIHR5cGUg
b2Ygb2JqZWN0IG9yIG9wZXJhdGlvbi4KK0NPTlNPTEUgTUVTU0FHRTogbGluZSAyNDogVHlwZUVy
cm9yOiBUaGUgaW1wbGVtZW50YXRpb24gZGlkIG5vdCBzdXBwb3J0IHRoZSByZXF1ZXN0ZWQgdHlw
ZSBvZiBvYmplY3Qgb3Igb3BlcmF0aW9uLgogVGVzdHMgdGhhdCB3aGVuIGEgZ2V0VXNlck1lZGlh
IHJlcXVlc3QgaXMgbWFkZSBhZnRlciBpdHMgZnJhbWUgaGFzIGJlZW4gZGlzY29ubmVjdGVkLCBu
byBjYWxsYmFja3MgYXJlIG1hZGUgYW5kIG5vIGNyYXNoIG9jY3Vycy4KIAogT24gc3VjY2Vzcywg
eW91IHdpbGwgc2VlIGEgc2VyaWVzIG9mICJQQVNTIiBtZXNzYWdlcywgZm9sbG93ZWQgYnkgIlRF
U1QgQ09NUExFVEUiLgo=
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>264586</attachid>
            <date>2015-11-02 06:59:00 -0800</date>
            <delta_ts>2015-11-03 05:44:48 -0800</delta_ts>
            <desc>Adding missing CMake file</desc>
            <filename>bug-149499-20151102155750.patch</filename>
            <type>text/plain</type>
            <size>52622</size>
            <attacher name="youenn fablet">youennf</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTkxODg3CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggZjgwMmY5YTgzYzFmMmQ4
Y2E4MTBiMWE1ZjM1ODBjZWNiNDA0NDMwZS4uNDA1NGZhYjUwMWViYzA5YjkyOTU0ZTEyNjMyZGQ4
MWYzYWRkMGFjMCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDQxIEBACisyMDE1LTEwLTE5ICBZb3Vl
bm4gRmFibGV0ICA8eW91ZW5uLmZhYmxldEBjcmYuY2Fub24uZnI+CisKKyAgICAgICAgTW92ZSB3
ZWJraXRHZXRVc2VyTWVkaWEgdG8gSlMgQnVpbHRpbgorICAgICAgICBodHRwczovL2J1Z3Mud2Vi
a2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTQ5NDk5CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9C
T0RZIChPT1BTISkuCisKKyAgICAgICAgSW1wbGVtZW50ZWQgd2Via2l0R2V0VXNlck1lZGlhIGFz
IGEgSlNCdWlsdGluIHdyYXBwZXIgYXJvdW5kIG5hdmlnYXRvci5tZWRpYURldmljZXMuZ2V0VXNl
ck1lZGlhLgorCisgICAgICAgIFJlbW92ZWQgY3BwIGJhc2VkIHZlcnNpb24uCisKKyAgICAgICAg
VGhlIGpzIGJ1aWx0aW5nIGltcGxlbWVudGF0aW9uIGNoZWNrcyBmb3IgYXJndW1lbnQgYnV0IGRv
ZXMgbm90IHJhaXNlIGV4Y2VwdGlvbiB3aGVuIHRoZSByZXF1ZXN0IGlzIG5vdCBzdXBwb3J0ZWQu
CisgICAgICAgIFRoZSBlcnJvciBjYWxsYmFjayBpcyBjYWxsZWQgaW5zdGVhZCwgaW4gYW4gYXN5
bmNocm9ub3VzIGZhc2hpb24uCisgICAgICAgIFRoZSBqcyBidWlsdGluIGltcGxlbWVudGF0aW9u
IGRvZXMgbm90IGNoZWNrIGZpcnN0IHRoYXQgaXQgaXMgY2FsbGVkIG9uIG5hdmlnYXRvciwgY29u
dHJhcnkgdG8gdGhlIGNwcCBpbXBsZW1lbnRhdGlvbi4KKyAgICAgICAgVGhpcyBpcyBkb25lIGFm
dGVyd2FyZHMgd2hlbiBjYWxsaW5nIG5hdmlnYXRvci5NZWRpYURldmljZXMuQGdldFVzZXJNZWRp
YS4KKworICAgICAgICBDb3ZlcmVkIGJ5IGV4aXN0aW5nIGFuZCBtb2RpZmllZCB0ZXN0cy4KKwor
ICAgICAgICAqIENNYWtlTGlzdHMudHh0OiBBZGRpbmcgTmF2aWdhdG9yVXNlck1lZGlhLmpzIGFz
IGJ1aWx0LWluIEpTIGZpbGUuCisgICAgICAgICogRGVyaXZlZFNvdXJjZXMubWFrZTogRGl0dG8u
CisgICAgICAgICogTW9kdWxlcy9tZWRpYXN0cmVhbS9OYXZpZ2F0b3JVc2VyTWVkaWEuaWRsOiBN
YWtpbmcgd2Via2l0R2V0VXNlck1lZGlhIEpTQnVpbHRpbgorICAgICAgICAqIE1vZHVsZXMvbWVk
aWFzdHJlYW0vTmF2aWdhdG9yVXNlck1lZGlhLmpzOgorICAgICAgICAod2Via2l0R2V0VXNlck1l
ZGlhKToKKyAgICAgICAgKiBNb2R1bGVzL21lZGlhc3RyZWFtL05hdmlnYXRvclVzZXJNZWRpYUVy
cm9yQ2FsbGJhY2suaDogUmVtb3ZlZC4KKyAgICAgICAgKiBNb2R1bGVzL21lZGlhc3RyZWFtL05h
dmlnYXRvclVzZXJNZWRpYUVycm9yQ2FsbGJhY2suaWRsOiBSZW1vdmVkLgorICAgICAgICAqIE1v
ZHVsZXMvbWVkaWFzdHJlYW0vTmF2aWdhdG9yVXNlck1lZGlhU3VjY2Vzc0NhbGxiYWNrLmg6IFJl
bW92ZWQuCisgICAgICAgICogTW9kdWxlcy9tZWRpYXN0cmVhbS9OYXZpZ2F0b3JVc2VyTWVkaWFT
dWNjZXNzQ2FsbGJhY2suaWRsOiBSZW1vdmVkLgorICAgICAgICAqIE1vZHVsZXMvbWVkaWFzdHJl
YW0vVXNlck1lZGlhUmVxdWVzdC5jcHA6CisgICAgICAgICogTW9kdWxlcy9tZWRpYXN0cmVhbS9V
c2VyTWVkaWFSZXF1ZXN0Lmg6CisgICAgICAgICogV2ViQ29yZS54Y29kZXByb2ovcHJvamVjdC5w
Ynhwcm9qOgorICAgICAgICAqIGJpbmRpbmdzL2pzL0pTRE9NV2luZG93QmFzZS5jcHA6CisgICAg
ICAgIChXZWJDb3JlOjpKU0RPTVdpbmRvd0Jhc2U6OmZpbmlzaENyZWF0aW9uKTogU3R5bGUgbW9k
aWZpY2F0aW9ucy4KKyAgICAgICAgKiBiaW5kaW5ncy9qcy9KU05hdmlnYXRvckN1c3RvbS5jcHA6
IFJlbW92ZWQuCisgICAgICAgICogYmluZGluZ3MvanMvV2ViQ29yZUpTQnVpbHRpbnMuY3BwOiBB
ZGRpbmcgc3VwcG9ydCBmb3IgTmF2aWdhdG9yVXNlck1lZGlhLmpzIGJ1aWx0LWluIEpTIGZpbGUu
CisgICAgICAgICogYmluZGluZ3MvanMvV2ViQ29yZUpTQnVpbHRpbnMuaDogRGl0dG8uCisgICAg
ICAgIChXZWJDb3JlOjpKU0J1aWx0aW5GdW5jdGlvbnM6OkpTQnVpbHRpbkZ1bmN0aW9ucyk6Cisg
ICAgICAgIChXZWJDb3JlOjpKU0J1aWx0aW5GdW5jdGlvbnM6Om5hdmlnYXRvclVzZXJNZWRpYUJ1
aWx0aW5zKToKKwogMjAxNS0xMS0wMiAgWW91ZW5uIEZhYmxldCAgPHlvdWVubi5mYWJsZXRAY3Jm
LmNhbm9uLmZyPgogCiAgICAgICAgIFJlbmFtZSBKU0RPTVdyYXBwZXIuaW1wbCB0byBKU0RPTVdy
YXBwZXIud3JhcHBlZApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvQ01ha2VMaXN0cy50eHQg
Yi9Tb3VyY2UvV2ViQ29yZS9DTWFrZUxpc3RzLnR4dAppbmRleCBjYWFkYjk1MDAxMzI1NmM5Y2Zl
NDBlNjM0MGI0MmQyZTJjZmY0MDNhLi5hNzFhZmEzMDM3MmNkMDNmMmQwMDgwMDM4ZTFlNmI4MTUy
YzIxOTIzIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9DTWFrZUxpc3RzLnR4dAorKysgYi9T
b3VyY2UvV2ViQ29yZS9DTWFrZUxpc3RzLnR4dApAQCAtMjQxLDggKzI0MSw2IEBAIHNldChXZWJD
b3JlX05PTl9TVkdfSURMX0ZJTEVTCiAgICAgTW9kdWxlcy9tZWRpYXN0cmVhbS9OYXZpZ2F0b3JN
ZWRpYURldmljZXMuaWRsCiAgICAgTW9kdWxlcy9tZWRpYXN0cmVhbS9OYXZpZ2F0b3JVc2VyTWVk
aWEuaWRsCiAgICAgTW9kdWxlcy9tZWRpYXN0cmVhbS9OYXZpZ2F0b3JVc2VyTWVkaWFFcnJvci5p
ZGwKLSAgICBNb2R1bGVzL21lZGlhc3RyZWFtL05hdmlnYXRvclVzZXJNZWRpYUVycm9yQ2FsbGJh
Y2suaWRsCi0gICAgTW9kdWxlcy9tZWRpYXN0cmVhbS9OYXZpZ2F0b3JVc2VyTWVkaWFTdWNjZXNz
Q2FsbGJhY2suaWRsCiAgICAgTW9kdWxlcy9tZWRpYXN0cmVhbS9SVENDb25maWd1cmF0aW9uLmlk
bAogICAgIE1vZHVsZXMvbWVkaWFzdHJlYW0vUlRDRFRNRlNlbmRlci5pZGwKICAgICBNb2R1bGVz
L21lZGlhc3RyZWFtL1JUQ0RUTUZUb25lQ2hhbmdlRXZlbnQuaWRsCkBAIC0xMjAxLDcgKzExOTks
NiBAQCBzZXQoV2ViQ29yZV9TT1VSQ0VTCiAgICAgYmluZGluZ3MvanMvSlNNdXRhdGlvbkNhbGxi
YWNrLmNwcAogICAgIGJpbmRpbmdzL2pzL0pTTXV0YXRpb25PYnNlcnZlckN1c3RvbS5jcHAKICAg
ICBiaW5kaW5ncy9qcy9KU05hbWVkTm9kZU1hcEN1c3RvbS5jcHAKLSAgICBiaW5kaW5ncy9qcy9K
U05hdmlnYXRvckN1c3RvbS5jcHAKICAgICBiaW5kaW5ncy9qcy9KU05vZGVDdXN0b20uY3BwCiAg
ICAgYmluZGluZ3MvanMvSlNOb2RlRmlsdGVyQ3VzdG9tLmNwcAogICAgIGJpbmRpbmdzL2pzL0pT
Tm9kZUl0ZXJhdG9yQ3VzdG9tLmNwcApAQCAtMzU4OCw2ICszNTg1LDcgQEAgR0VORVJBVEVfQklO
RElOR1MoV2ViQ29yZVRlc3RTdXBwb3J0X1NPVVJDRVMKIAogc2V0KFdlYkNvcmVfQlVJTFRJTlNf
U09VUkNFUwogICAgICR7V0VCQ09SRV9ESVJ9L01vZHVsZXMvbWVkaWFzdHJlYW0vTWVkaWFEZXZp
Y2VzLmpzCisgICAgJHtXRUJDT1JFX0RJUn0vTW9kdWxlcy9tZWRpYXN0cmVhbS9OYXZpZ2F0b3JV
c2VyTWVkaWEuanMKICAgICAke1dFQkNPUkVfRElSfS9Nb2R1bGVzL3N0cmVhbXMvQnl0ZUxlbmd0
aFF1ZXVpbmdTdHJhdGVneS5qcwogICAgICR7V0VCQ09SRV9ESVJ9L01vZHVsZXMvc3RyZWFtcy9D
b3VudFF1ZXVpbmdTdHJhdGVneS5qcwogICAgICR7V0VCQ09SRV9ESVJ9L01vZHVsZXMvc3RyZWFt
cy9SZWFkYWJsZVN0cmVhbS5qcwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvRGVyaXZlZFNv
dXJjZXMubWFrZSBiL1NvdXJjZS9XZWJDb3JlL0Rlcml2ZWRTb3VyY2VzLm1ha2UKaW5kZXggZGZk
YTJmMjdmZmI5NzYwN2FiMGFjMzA2ZTY3NDZiOTg0OWU4MTk1NS4uNTI0MjVmODY1MDU5M2IyNmI1
MTFkMDM2MjZhNTZkNWNhZDJkZmVjNSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvRGVyaXZl
ZFNvdXJjZXMubWFrZQorKysgYi9Tb3VyY2UvV2ViQ29yZS9EZXJpdmVkU291cmNlcy5tYWtlCkBA
IC0xMzcsOCArMTM3LDYgQEAgTk9OX1NWR19CSU5ESU5HX0lETFMgPSBcCiAgICAgJChXZWJDb3Jl
KS9Nb2R1bGVzL21lZGlhc3RyZWFtL05hdmlnYXRvck1lZGlhRGV2aWNlcy5pZGwgXAogICAgICQo
V2ViQ29yZSkvTW9kdWxlcy9tZWRpYXN0cmVhbS9OYXZpZ2F0b3JVc2VyTWVkaWEuaWRsIFwKICAg
ICAkKFdlYkNvcmUpL01vZHVsZXMvbWVkaWFzdHJlYW0vTmF2aWdhdG9yVXNlck1lZGlhRXJyb3Iu
aWRsIFwKLSAgICAkKFdlYkNvcmUpL01vZHVsZXMvbWVkaWFzdHJlYW0vTmF2aWdhdG9yVXNlck1l
ZGlhRXJyb3JDYWxsYmFjay5pZGwgXAotICAgICQoV2ViQ29yZSkvTW9kdWxlcy9tZWRpYXN0cmVh
bS9OYXZpZ2F0b3JVc2VyTWVkaWFTdWNjZXNzQ2FsbGJhY2suaWRsIFwKICAgICAkKFdlYkNvcmUp
L01vZHVsZXMvbWVkaWFzdHJlYW0vUlRDQ29uZmlndXJhdGlvbi5pZGwgXAogICAgICQoV2ViQ29y
ZSkvTW9kdWxlcy9tZWRpYXN0cmVhbS9SVENEVE1GU2VuZGVyLmlkbCBcCiAgICAgJChXZWJDb3Jl
KS9Nb2R1bGVzL21lZGlhc3RyZWFtL1JUQ0RUTUZUb25lQ2hhbmdlRXZlbnQuaWRsIFwKQEAgLTEy
NTcsNiArMTI1NSw3IEBAIFdlYlJlcGxheUlucHV0cy5oIDogJChJTlBVVF9HRU5FUkFUT1JfU1BF
Q0lGSUNBVElPTlMpICQoSU5QVVRfR0VORVJBVE9SX1NDUklQVFMpCiAKIFdlYkNvcmVfQlVJTFRJ
TlNfU09VUkNFUyA9IFwKICAgICAkKFdlYkNvcmUpL01vZHVsZXMvbWVkaWFzdHJlYW0vTWVkaWFE
ZXZpY2VzLmpzIFwKKyAgICAkKFdlYkNvcmUpL01vZHVsZXMvbWVkaWFzdHJlYW0vTmF2aWdhdG9y
VXNlck1lZGlhLmpzIFwKICAgICAkKFdlYkNvcmUpL01vZHVsZXMvc3RyZWFtcy9CeXRlTGVuZ3Ro
UXVldWluZ1N0cmF0ZWd5LmpzIFwKICAgICAkKFdlYkNvcmUpL01vZHVsZXMvc3RyZWFtcy9Db3Vu
dFF1ZXVpbmdTdHJhdGVneS5qcyBcCiAgICAgJChXZWJDb3JlKS9Nb2R1bGVzL3N0cmVhbXMvUmVh
ZGFibGVTdHJlYW0uanMgXApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9tZWRp
YXN0cmVhbS9OYXZpZ2F0b3JVc2VyTWVkaWEuaWRsIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9t
ZWRpYXN0cmVhbS9OYXZpZ2F0b3JVc2VyTWVkaWEuaWRsCmluZGV4IDRjNjVjYjdhZTEyYzQzYWE0
YjM5NGZmM2QzZWY0YzlmOTE2NWY4NjUuLjNhYTQ5M2YwZjk1OWJhZDIyOWJlMWM5NGE4ZjExYmE1
Mjk0NTE3YTAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvbWVkaWFzdHJlYW0v
TmF2aWdhdG9yVXNlck1lZGlhLmlkbAorKysgYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL21lZGlh
c3RyZWFtL05hdmlnYXRvclVzZXJNZWRpYS5pZGwKQEAgLTIwLDggKzIwLDYgQEAKIFsKICAgICBD
b25kaXRpb25hbD1NRURJQV9TVFJFQU0sCiBdIHBhcnRpYWwgaW50ZXJmYWNlIE5hdmlnYXRvciB7
Ci0gICAgW0N1c3RvbSwgUmFpc2VzRXhjZXB0aW9uXSB2b2lkIHdlYmtpdEdldFVzZXJNZWRpYShE
aWN0aW9uYXJ5IG9wdGlvbnMsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgTmF2aWdhdG9yVXNlck1lZGlhU3VjY2Vzc0NhbGxiYWNrIHN1Y2Nlc3NDYWxs
YmFjaywKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBv
cHRpb25hbCBOYXZpZ2F0b3JVc2VyTWVkaWFFcnJvckNhbGxiYWNrIGVycm9yQ2FsbGJhY2spOwor
ICAgIFtKU0J1aWx0aW5dIHZvaWQgd2Via2l0R2V0VXNlck1lZGlhKERpY3Rpb25hcnkgb2JqZWN0
LCBhbnkgc3VjY2Vzc0NhbGxiYWNrLCBhbnkgZXJyb3JDYWxsYmFjayk7CiB9OwogCmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL21lZGlhc3RyZWFtL05hdmlnYXRvclVzZXJNZWRp
YS5qcyBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvbWVkaWFzdHJlYW0vTmF2aWdhdG9yVXNlck1l
ZGlhLmpzCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAuLjk1NzlhYzYzNWE3M2I0ZmE0Mjg5YzUxYzMxMjNlYzUxZjQxODQ1
ZDUKLS0tIC9kZXYvbnVsbAorKysgYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL21lZGlhc3RyZWFt
L05hdmlnYXRvclVzZXJNZWRpYS5qcwpAQCAtMCwwICsxLDQ2IEBACisvKgorICogQ29weXJpZ2h0
IChDKSAyMDE1IENhbm9uIEluYy4KKyAqCisgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNv
dXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKKyAqIG1vZGlmaWNhdGlvbiwg
YXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucworICog
YXJlIG1ldDoKKyAqIDEuIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFp
biB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRp
b25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisgKiAyLiBSZWRpc3RyaWJ1dGlvbnMg
aW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAg
bm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFp
bWVyIGluIHRoZQorICogICAgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHBy
b3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KKyAqCisgKiBUSElTIFNPRlRXQVJFIElTIFBS
T1ZJREVEIEJZIEFQUExFIElOQy4gYGBBUyBJUycnIEFORCBBTlkKKyAqIEVYUFJFU1MgT1IgSU1Q
TElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgVEhFCisgKiBJ
TVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBB
UlRJQ1VMQVIKKyAqIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuICBJTiBOTyBFVkVOVCBTSEFMTCBB
UFBMRSBJTkMuIE9SCisgKiBDT05UUklCVVRPUlMgQkUgTElBQkxFIEZPUiBBTlkgRElSRUNULCBJ
TkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwKKyAqIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVO
VElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywKKyAqIFBST0NVUkVN
RU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLCBEQVRBLCBP
UgorICogUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBB
TkQgT04gQU5ZIFRIRU9SWQorICogT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBT
VFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUCisgKiAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RI
RVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UKKyAqIE9GIFRISVMgU09G
VFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0Uu
CisgKi8KKworZnVuY3Rpb24gd2Via2l0R2V0VXNlck1lZGlhKG9wdGlvbnMsIHN1Y2Nlc3NDYWxs
YmFjaywgZXJyb3JDYWxsYmFjaykKK3sKKyAgICAidXNlIHN0cmljdCI7CisKKyAgICAvLyBGSVhN
RTogV2Ugc2hvdWxkIHJhaXNlIGEgRE9NIHVuc3VwcG9ydGVkIGV4Y2VwdGlvbiBpZiB0aGVyZSBp
cyBubyBuYXZpZ2F0b3IgYW5kIHByb3Blcmx5IGRldGVjdCB3aGV0aGVyIG1ldGhvZCBpcyBub3Qg
Y2FsbGVkIG9uIGEgTmF2aWdhdG9yIG9iamVjdC4KKyAgICBpZiAoISh0aGlzLm1lZGlhRGV2aWNl
cyAmJiB0aGlzLm1lZGlhRGV2aWNlcy5AZ2V0VXNlck1lZGlhRnJvbUpTKSkKKyAgICAgICAgdGhy
b3cgbmV3IEBUeXBlRXJyb3IoIlRoZSBpbXBsZW1lbnRhdGlvbiBkaWQgbm90IHN1cHBvcnQgdGhl
IHJlcXVlc3RlZCB0eXBlIG9mIG9iamVjdCBvciBvcGVyYXRpb24uIik7CisKKyAgICBpZiAoYXJn
dW1lbnRzLmxlbmd0aCA8IDMpCisgICAgICAgIHRocm93IG5ldyBAVHlwZUVycm9yKCJOb3QgZW5v
dWdoIGFyZ3VtZW50cyIpOworCisgICAgaWYgKG9wdGlvbnMgIT09IE9iamVjdChvcHRpb25zKSkK
KyAgICAgICAgdGhyb3cgbmV3IEBUeXBlRXJyb3IoIkFyZ3VtZW50IDEgKG9wdGlvbnMpIHRvIE5h
dmlnYXRvci53ZWJraXRHZXRVc2VyTWVkaWEgbXVzdCBiZSBhbiBvYmplY3QiKTsKKworICAgIGlm
ICh0eXBlb2Ygc3VjY2Vzc0NhbGxiYWNrICE9PSAiZnVuY3Rpb24iKQorICAgICAgICB0aHJvdyBu
ZXcgQFR5cGVFcnJvcigiQXJndW1lbnQgMiAoJ3N1Y2Nlc3NDYWxsYmFjaycpIHRvIE5hdmlnYXRv
ci53ZWJraXRHZXRVc2VyTWVkaWEgbXVzdCBiZSBhIGZ1bmN0aW9uIik7CisgICAgaWYgKHR5cGVv
ZiBlcnJvckNhbGxiYWNrICE9PSAiZnVuY3Rpb24iKQorICAgICAgICB0aHJvdyBuZXcgQFR5cGVF
cnJvcigiQXJndW1lbnQgMyAoJ2Vycm9yQ2FsbGJhY2snKSB0byBOYXZpZ2F0b3Iud2Via2l0R2V0
VXNlck1lZGlhIG11c3QgYmUgYSBmdW5jdGlvbiIpOworCisgICAgdGhpcy5tZWRpYURldmljZXMu
QGdldFVzZXJNZWRpYUZyb21KUyhvcHRpb25zKS50aGVuKHN1Y2Nlc3NDYWxsYmFjaywgZXJyb3JD
YWxsYmFjayk7Cit9CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL21lZGlhc3Ry
ZWFtL05hdmlnYXRvclVzZXJNZWRpYUVycm9yQ2FsbGJhY2suaCBiL1NvdXJjZS9XZWJDb3JlL01v
ZHVsZXMvbWVkaWFzdHJlYW0vTmF2aWdhdG9yVXNlck1lZGlhRXJyb3JDYWxsYmFjay5oCmRlbGV0
ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCBkZDNjOGIzMmI2ZWM3YzgwNjFkNjI0MjExM2U5ZDA4
NjQxZjVhYTA5Li4wMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwCi0tLSBh
L1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvbWVkaWFzdHJlYW0vTmF2aWdhdG9yVXNlck1lZGlhRXJy
b3JDYWxsYmFjay5oCisrKyAvZGV2L251bGwKQEAgLTEsNDUgKzAsMCBAQAotLyoKLSAqIENvcHly
aWdodCAoQykgMjAxMSBHb29nbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgotICoKLSAqIFJl
ZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Ig
d2l0aG91dAotICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhl
IGZvbGxvd2luZyBjb25kaXRpb25zCi0gKiBhcmUgbWV0OgotICogMS4gIFJlZGlzdHJpYnV0aW9u
cyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0Ci0gKiAgICAg
bm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFp
bWVyLgotICogMi4gIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVj
ZSB0aGUgYWJvdmUgY29weXJpZ2h0Ci0gKiAgICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0
aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQotICogICAgIGRvY3VtZW50
YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRp
b24uCi0gKgotICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBBUFBMRSBJTkMuIEFORCBJ
VFMgQ09OVFJJQlVUT1JTIGBgQVMgSVMnJyBBTkQgQU5ZCi0gKiBFWFBSRVNTIE9SIElNUExJRUQg
V0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFRIRSBJTVBMSUVECi0g
KiBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNV
TEFSIFBVUlBPU0UgQVJFCi0gKiBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBBUFBMRSBJ
TkMuIE9SIElUUyBDT05UUklCVVRPUlMgQkUgTElBQkxFIEZPUiBBTlkKLSAqIERJUkVDVCwgSU5E
SVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTCBE
QU1BR0VTCi0gKiAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9G
IFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7Ci0gKiBMT1NTIE9GIFVTRSwgREFUQSwgT1Ig
UFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04K
LSAqIEFOWSBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1Qg
TElBQklMSVRZLCBPUiBUT1JUCi0gKiAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNF
KSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UgT0YgVEhJUwotICogU09GVFdBUkUs
IEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCi0gKi8K
LQotI2lmbmRlZiBOYXZpZ2F0b3JVc2VyTWVkaWFFcnJvckNhbGxiYWNrX2gKLSNkZWZpbmUgTmF2
aWdhdG9yVXNlck1lZGlhRXJyb3JDYWxsYmFja19oCi0KLSNpZiBFTkFCTEUoTUVESUFfU1RSRUFN
KQotCi0jaW5jbHVkZSAiTmF2aWdhdG9yVXNlck1lZGlhRXJyb3IuaCIKLSNpbmNsdWRlIDx3dGYv
UmVmQ291bnRlZC5oPgotCi1uYW1lc3BhY2UgV2ViQ29yZSB7Ci0KLWNsYXNzIE5hdmlnYXRvclVz
ZXJNZWRpYUVycm9yQ2FsbGJhY2sgOiBwdWJsaWMgUmVmQ291bnRlZDxOYXZpZ2F0b3JVc2VyTWVk
aWFFcnJvckNhbGxiYWNrPiB7Ci1wdWJsaWM6Ci0gICAgdmlydHVhbCB+TmF2aWdhdG9yVXNlck1l
ZGlhRXJyb3JDYWxsYmFjaygpIHsgfQotICAgIHZpcnR1YWwgYm9vbCBoYW5kbGVFdmVudChOYXZp
Z2F0b3JVc2VyTWVkaWFFcnJvciopID0gMDsKLX07Ci0KLX0gLy8gbmFtZXNwYWNlIFdlYkNvcmUK
LQotI2VuZGlmIC8vIEVOQUJMRShNRURJQV9TVFJFQU0pCi0KLSNlbmRpZiAvLyBOYXZpZ2F0b3JV
c2VyTWVkaWFFcnJvckNhbGxiYWNrX2gKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL01vZHVs
ZXMvbWVkaWFzdHJlYW0vTmF2aWdhdG9yVXNlck1lZGlhRXJyb3JDYWxsYmFjay5pZGwgYi9Tb3Vy
Y2UvV2ViQ29yZS9Nb2R1bGVzL21lZGlhc3RyZWFtL05hdmlnYXRvclVzZXJNZWRpYUVycm9yQ2Fs
bGJhY2suaWRsCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCBmMGFjN2RkMWJmOWEzZmUy
ZDJmY2YyMDEzZDY2MDQ3Y2VmM2M2ZmQxLi4wMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwCi0tLSBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvbWVkaWFzdHJlYW0vTmF2aWdh
dG9yVXNlck1lZGlhRXJyb3JDYWxsYmFjay5pZGwKKysrIC9kZXYvbnVsbApAQCAtMSwzMSArMCww
IEBACi0vKgotICogQ29weXJpZ2h0IChDKSAyMDExIEdvb2dsZSBJbmMuIEFsbCByaWdodHMgcmVz
ZXJ2ZWQuCi0gKgotICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFy
eSBmb3Jtcywgd2l0aCBvciB3aXRob3V0Ci0gKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQg
cHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKLSAqIGFyZSBtZXQ6Ci0gKiAx
LiAgUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBj
b3B5cmlnaHQKLSAqICAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUg
Zm9sbG93aW5nIGRpc2NsYWltZXIuCi0gKiAyLiAgUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBm
b3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKLSAqICAgICBub3RpY2UsIHRo
aXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhl
Ci0gKiAgICAgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdp
dGggdGhlIGRpc3RyaWJ1dGlvbi4KLSAqCi0gKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZ
IEFQUExFIElOQy4gQU5EIElUUyBDT05UUklCVVRPUlMgYGBBUyBJUycnIEFORCBBTlkKLSAqIEVY
UFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBU
TywgVEhFIElNUExJRUQKLSAqIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRO
RVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBUkUKLSAqIERJU0NMQUlNRUQuIElOIE5PIEVW
RU5UIFNIQUxMIEFQUExFIElOQy4gT1IgSVRTIENPTlRSSUJVVE9SUyBCRSBMSUFCTEUgRk9SIEFO
WQotICogRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBP
UiBDT05TRVFVRU5USUFMIERBTUFHRVMKLSAqIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBU
TywgUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsKLSAqIExPU1Mg
T0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VW
RVIgQ0FVU0VEIEFORCBPTgotICogQU5ZIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4g
Q09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQKLSAqIChJTkNMVURJTkcgTkVHTElH
RU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRSBPRiBU
SElTCi0gKiBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBT
VUNIIERBTUFHRS4KLSAqLwotCi1bCi0gICAgQ29uZGl0aW9uYWw9TUVESUFfU1RSRUFNLAotICAg
IENhbGxiYWNrPUZ1bmN0aW9uT25seSwKLV0gY2FsbGJhY2sgaW50ZXJmYWNlIE5hdmlnYXRvclVz
ZXJNZWRpYUVycm9yQ2FsbGJhY2sgewotICAgIGJvb2xlYW4gaGFuZGxlRXZlbnQoTmF2aWdhdG9y
VXNlck1lZGlhRXJyb3IgZXJyb3IpOwotfTsKLQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUv
TW9kdWxlcy9tZWRpYXN0cmVhbS9OYXZpZ2F0b3JVc2VyTWVkaWFTdWNjZXNzQ2FsbGJhY2suaCBi
L1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvbWVkaWFzdHJlYW0vTmF2aWdhdG9yVXNlck1lZGlhU3Vj
Y2Vzc0NhbGxiYWNrLmgKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDlmNDU2ZWFkYzZh
ZTQ5NDE4NmNmMDdjNmUyYTUyZTA0NzYzZjk5OTAuLjAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAKLS0tIGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9tZWRpYXN0cmVhbS9O
YXZpZ2F0b3JVc2VyTWVkaWFTdWNjZXNzQ2FsbGJhY2suaAorKysgL2Rldi9udWxsCkBAIC0xLDQ2
ICswLDAgQEAKLS8qCi0gKiBDb3B5cmlnaHQgKEMpIDIwMTEgR29vZ2xlIEluYy4gQWxsIHJpZ2h0
cyByZXNlcnZlZC4KLSAqCi0gKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQg
YmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKLSAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1p
dHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucwotICogYXJlIG1ldDoK
LSAqIDEuICBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFi
b3ZlIGNvcHlyaWdodAotICogICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5k
IHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KLSAqIDIuICBSZWRpc3RyaWJ1dGlvbnMgaW4gYmlu
YXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAotICogICAgIG5vdGlj
ZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBp
biB0aGUKLSAqICAgICBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlk
ZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgotICoKLSAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklE
RUQgQlkgQVBQTEUgSU5DLiBBTkQgSVRTIENPTlRSSUJVVE9SUyBgYEFTIElTJycgQU5EIEFOWQot
ICogRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1J
VEVEIFRPLCBUSEUgSU1QTElFRAotICogV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5E
IEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFSRQotICogRElTQ0xBSU1FRC4gSU4g
Tk8gRVZFTlQgU0hBTEwgQVBQTEUgSU5DLiBPUiBJVFMgQ09OVFJJQlVUT1JTIEJFIExJQUJMRSBG
T1IgQU5ZCi0gKiBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExB
UlksIE9SIENPTlNFUVVFTlRJQUwgREFNQUdFUwotICogKElOQ0xVRElORywgQlVUIE5PVCBMSU1J
VEVEIFRPLCBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOwotICog
TE9TUyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikg
SE9XRVZFUiBDQVVTRUQgQU5EIE9OCi0gKiBBTlkgVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhF
UiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVAotICogKElOQ0xVRElORyBO
RUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNF
IE9GIFRISVMKLSAqIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZ
IE9GIFNVQ0ggREFNQUdFLgotICovCi0KLSNpZm5kZWYgTmF2aWdhdG9yVXNlck1lZGlhU3VjY2Vz
c0NhbGxiYWNrX2gKLSNkZWZpbmUgTmF2aWdhdG9yVXNlck1lZGlhU3VjY2Vzc0NhbGxiYWNrX2gK
LQotI2lmIEVOQUJMRShNRURJQV9TVFJFQU0pCi0KLSNpbmNsdWRlIDx3dGYvUmVmQ291bnRlZC5o
PgotCi1uYW1lc3BhY2UgV2ViQ29yZSB7Ci0KLWNsYXNzIE1lZGlhU3RyZWFtOwotCi1jbGFzcyBO
YXZpZ2F0b3JVc2VyTWVkaWFTdWNjZXNzQ2FsbGJhY2sgOiBwdWJsaWMgUmVmQ291bnRlZDxOYXZp
Z2F0b3JVc2VyTWVkaWFTdWNjZXNzQ2FsbGJhY2s+IHsKLXB1YmxpYzoKLSAgICB2aXJ0dWFsIH5O
YXZpZ2F0b3JVc2VyTWVkaWFTdWNjZXNzQ2FsbGJhY2soKSB7IH0KLSAgICB2aXJ0dWFsIGJvb2wg
aGFuZGxlRXZlbnQoTWVkaWFTdHJlYW0qKSA9IDA7Ci19OwotCi19IC8vIG5hbWVzcGFjZSBXZWJD
b3JlCi0KLSNlbmRpZiAvLyBFTkFCTEUoTUVESUFfU1RSRUFNKQotCi0jZW5kaWYgLy8gTmF2aWdh
dG9yVXNlck1lZGlhU3VjY2Vzc0NhbGxiYWNrX2gKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3Jl
L01vZHVsZXMvbWVkaWFzdHJlYW0vTmF2aWdhdG9yVXNlck1lZGlhU3VjY2Vzc0NhbGxiYWNrLmlk
bCBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvbWVkaWFzdHJlYW0vTmF2aWdhdG9yVXNlck1lZGlh
U3VjY2Vzc0NhbGxiYWNrLmlkbApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMmQxOTBj
ZjJlYjE5MjIwOTU4YThjZThiY2JmNzhkMzQ0Y2ZkMmU1MC4uMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL21lZGlhc3Ry
ZWFtL05hdmlnYXRvclVzZXJNZWRpYVN1Y2Nlc3NDYWxsYmFjay5pZGwKKysrIC9kZXYvbnVsbApA
QCAtMSwzMSArMCwwIEBACi0vKgotICogQ29weXJpZ2h0IChDKSAyMDExIEdvb2dsZSBJbmMuIEFs
bCByaWdodHMgcmVzZXJ2ZWQuCi0gKgotICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3Vy
Y2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0Ci0gKiBtb2RpZmljYXRpb24sIGFy
ZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKLSAqIGFy
ZSBtZXQ6Ci0gKiAxLiAgUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWlu
IHRoZSBhYm92ZSBjb3B5cmlnaHQKLSAqICAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRp
b25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCi0gKiAyLiAgUmVkaXN0cmlidXRpb25z
IGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKLSAqICAg
ICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2Ns
YWltZXIgaW4gdGhlCi0gKiAgICAgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxz
IHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KLSAqCi0gKiBUSElTIFNPRlRXQVJFIElT
IFBST1ZJREVEIEJZIEFQUExFIElOQy4gQU5EIElUUyBDT05UUklCVVRPUlMgYGBBUyBJUycnIEFO
RCBBTlkKLSAqIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBO
T1QgTElNSVRFRCBUTywgVEhFIElNUExJRUQKLSAqIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklM
SVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBUkUKLSAqIERJU0NMQUlN
RUQuIElOIE5PIEVWRU5UIFNIQUxMIEFQUExFIElOQy4gT1IgSVRTIENPTlRSSUJVVE9SUyBCRSBM
SUFCTEUgRk9SIEFOWQotICogRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwg
RVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMKLSAqIChJTkNMVURJTkcsIEJVVCBO
T1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNF
UzsKLSAqIExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJV
UFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTgotICogQU5ZIFRIRU9SWSBPRiBMSUFCSUxJVFks
IFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQKLSAqIChJTkNM
VURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0Yg
VEhFIFVTRSBPRiBUSElTCi0gKiBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NT
SUJJTElUWSBPRiBTVUNIIERBTUFHRS4KLSAqLwotCi1bCi0gICAgQ29uZGl0aW9uYWw9TUVESUFf
U1RSRUFNLAotICAgIENhbGxiYWNrPUZ1bmN0aW9uT25seSwKLV0gY2FsbGJhY2sgaW50ZXJmYWNl
IE5hdmlnYXRvclVzZXJNZWRpYVN1Y2Nlc3NDYWxsYmFjayB7Ci0gICAgYm9vbGVhbiBoYW5kbGVF
dmVudChNZWRpYVN0cmVhbSBzdHJlYW0pOwotfTsKLQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNv
cmUvTW9kdWxlcy9tZWRpYXN0cmVhbS9Vc2VyTWVkaWFSZXF1ZXN0LmNwcCBiL1NvdXJjZS9XZWJD
b3JlL01vZHVsZXMvbWVkaWFzdHJlYW0vVXNlck1lZGlhUmVxdWVzdC5jcHAKaW5kZXggYzNmMzM4
MGZhYmJmYmUxNWMzMTYyZjNiNzNkNzQ2YmVhYTY3N2ZhMy4uZDNmYzNiZmFhN2UyOWE4YTMxZDc3
MTM5Y2FjYjc5Y2RhNDNlODcxNyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9t
ZWRpYXN0cmVhbS9Vc2VyTWVkaWFSZXF1ZXN0LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1
bGVzL21lZGlhc3RyZWFtL1VzZXJNZWRpYVJlcXVlc3QuY3BwCkBAIC00Nyw4ICs0Nyw2IEBACiAj
aW5jbHVkZSAiTWVkaWFDb25zdHJhaW50c0ltcGwuaCIKICNpbmNsdWRlICJNZWRpYVN0cmVhbS5o
IgogI2luY2x1ZGUgIk1lZGlhU3RyZWFtUHJpdmF0ZS5oIgotI2luY2x1ZGUgIk5hdmlnYXRvclVz
ZXJNZWRpYUVycm9yQ2FsbGJhY2suaCIKLSNpbmNsdWRlICJOYXZpZ2F0b3JVc2VyTWVkaWFTdWNj
ZXNzQ2FsbGJhY2suaCIKICNpbmNsdWRlICJSZWFsdGltZU1lZGlhU291cmNlQ2VudGVyLmgiCiAj
aW5jbHVkZSAiU2VjdXJpdHlPcmlnaW4uaCIKICNpbmNsdWRlICJVc2VyTWVkaWFDb250cm9sbGVy
LmgiCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL21lZGlhc3RyZWFtL1VzZXJN
ZWRpYVJlcXVlc3QuaCBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvbWVkaWFzdHJlYW0vVXNlck1l
ZGlhUmVxdWVzdC5oCmluZGV4IGRkMjAxMTNjYWM1NWQ3MTRlM2RjMjUzNTE0YWI0MDNlNzI2Mzgy
MTYuLmVjZWE1OWE2Y2E2Y2U3YjM0MWNkYzA3NDcxYWFmMjQ5ZTJiZTUxNjcgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvbWVkaWFzdHJlYW0vVXNlck1lZGlhUmVxdWVzdC5oCisr
KyBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvbWVkaWFzdHJlYW0vVXNlck1lZGlhUmVxdWVzdC5o
CkBAIC00OSw4ICs0OSw2IEBAIGNsYXNzIERvY3VtZW50OwogY2xhc3MgRnJhbWU7CiBjbGFzcyBN
ZWRpYUNvbnN0cmFpbnRzOwogY2xhc3MgTWVkaWFTdHJlYW1Qcml2YXRlOwotY2xhc3MgTmF2aWdh
dG9yVXNlck1lZGlhRXJyb3JDYWxsYmFjazsKLWNsYXNzIE5hdmlnYXRvclVzZXJNZWRpYVN1Y2Nl
c3NDYWxsYmFjazsKIGNsYXNzIFVzZXJNZWRpYUNvbnRyb2xsZXI7CiBjbGFzcyBTZWN1cml0eU9y
aWdpbjsKIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvV2ViQ29yZS54Y29kZXByb2ovcHJv
amVjdC5wYnhwcm9qIGIvU291cmNlL1dlYkNvcmUvV2ViQ29yZS54Y29kZXByb2ovcHJvamVjdC5w
Ynhwcm9qCmluZGV4IGVmNzkzZTExMmViNTdlY2VkMjQ2ZGVjNGMzYzZiNWVjNjBiMDQxOGEuLjc5
OGY3MWQyMjIyYjY4Y2Y2OTRhZTE1MmZmMDI2YjNmYWE4ZWEzZWYgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJDb3JlL1dlYkNvcmUueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvagorKysgYi9Tb3VyY2Uv
V2ViQ29yZS9XZWJDb3JlLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2oKQEAgLTE1Myw3ICsxNTMs
NiBAQAogCQkwNzM3OTRFMjE5RUUyRDFCMDBFNUEwNDUgLyogTWVkaWFDb25zdHJhaW50c01vY2su
aCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDA3Mzc5NEUw
MTlFRTJEMUIwMEU1QTA0NSAvKiBNZWRpYUNvbnN0cmFpbnRzTW9jay5oICovOyB9OwogCQkwNzM3
OTRFNTE5RUUyRkYyMDBFNUEwNDUgLyogSlNSVENDb25maWd1cmF0aW9uLmNwcCBpbiBTb3VyY2Vz
ICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDA3Mzc5NEUzMTlFRTJGRjIwMEU1
QTA0NSAvKiBKU1JUQ0NvbmZpZ3VyYXRpb24uY3BwICovOyB9OwogCQkwNzM3OTRFNjE5RUUyRkYy
MDBFNUEwNDUgLyogSlNSVENDb25maWd1cmF0aW9uLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQ
QlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAwNzM3OTRFNDE5RUUyRkYyMDBFNUEwNDUgLyogSlNSVEND
b25maWd1cmF0aW9uLmggKi87IH07Ci0JCTA3Mzc5NEU4MTlFRTMzNUMwMEU1QTA0NSAvKiBKU05h
dmlnYXRvckN1c3RvbS5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZp
bGVSZWYgPSAwNzM3OTRFNzE5RUUzMzVDMDBFNUEwNDUgLyogSlNOYXZpZ2F0b3JDdXN0b20uY3Bw
ICovOyB9OwogCQkwNzM3OTRFQjE5RUUzNDFFMDBFNUEwNDUgLyogSlNSVENJY2VTZXJ2ZXIuY3Bw
IGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMDczNzk0RTkx
OUVFMzQxRTAwRTVBMDQ1IC8qIEpTUlRDSWNlU2VydmVyLmNwcCAqLzsgfTsKIAkJMDczNzk0RUMx
OUVFMzQxRTAwRTVBMDQ1IC8qIEpTUlRDSWNlU2VydmVyLmggaW4gSGVhZGVycyAqLyA9IHtpc2Eg
PSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAwNzM3OTRFQTE5RUUzNDFFMDBFNUEwNDUgLyogSlNS
VENJY2VTZXJ2ZXIuaCAqLzsgfTsKIAkJMDczNzk0RjExOUVFMzdCQjAwRTVBMDQ1IC8qIFJUQ1Bl
ZXJDb25uZWN0aW9uSGFuZGxlck1vY2suY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVp
bGRGaWxlOyBmaWxlUmVmID0gMDczNzk0RUYxOUVFMzdCQjAwRTVBMDQ1IC8qIFJUQ1BlZXJDb25u
ZWN0aW9uSGFuZGxlck1vY2suY3BwICovOyB9OwpAQCAtMTczLDEwICsxNzIsNiBAQAogCQkwNzNC
RTM0MTE3RDE3RTAxMDAyQkQ0MzEgLyogSlNOYXZpZ2F0b3JVc2VyTWVkaWEuaCBpbiBIZWFkZXJz
ICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDA3M0JFMzNGMTdEMTdFMDEwMDJC
RDQzMSAvKiBKU05hdmlnYXRvclVzZXJNZWRpYS5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVT
ID0gKFByaXZhdGUsICk7IH07IH07CiAJCTA3M0JFMzQ4MTdEMTdFN0EwMDJCRDQzMSAvKiBKU05h
dmlnYXRvclVzZXJNZWRpYUVycm9yLmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxk
RmlsZTsgZmlsZVJlZiA9IDA3M0JFMzQyMTdEMTdFN0EwMDJCRDQzMSAvKiBKU05hdmlnYXRvclVz
ZXJNZWRpYUVycm9yLmNwcCAqLzsgfTsKIAkJMDczQkUzNDkxN0QxN0U3QTAwMkJENDMxIC8qIEpT
TmF2aWdhdG9yVXNlck1lZGlhRXJyb3IuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxk
RmlsZTsgZmlsZVJlZiA9IDA3M0JFMzQzMTdEMTdFN0EwMDJCRDQzMSAvKiBKU05hdmlnYXRvclVz
ZXJNZWRpYUVycm9yLmggKi87IH07Ci0JCTA3M0JFMzRBMTdEMTdFN0EwMDJCRDQzMSAvKiBKU05h
dmlnYXRvclVzZXJNZWRpYUVycm9yQ2FsbGJhY2suY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0g
UEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMDczQkUzNDQxN0QxN0U3QTAwMkJENDMxIC8qIEpTTmF2
aWdhdG9yVXNlck1lZGlhRXJyb3JDYWxsYmFjay5jcHAgKi87IH07Ci0JCTA3M0JFMzRCMTdEMTdF
N0EwMDJCRDQzMSAvKiBKU05hdmlnYXRvclVzZXJNZWRpYUVycm9yQ2FsbGJhY2suaCBpbiBIZWFk
ZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDA3M0JFMzQ1MTdEMTdFN0Ew
MDJCRDQzMSAvKiBKU05hdmlnYXRvclVzZXJNZWRpYUVycm9yQ2FsbGJhY2suaCAqLzsgfTsKLQkJ
MDczQkUzNEMxN0QxN0U3QTAwMkJENDMxIC8qIEpTTmF2aWdhdG9yVXNlck1lZGlhU3VjY2Vzc0Nh
bGxiYWNrLmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9
IDA3M0JFMzQ2MTdEMTdFN0EwMDJCRDQzMSAvKiBKU05hdmlnYXRvclVzZXJNZWRpYVN1Y2Nlc3ND
YWxsYmFjay5jcHAgKi87IH07Ci0JCTA3M0JFMzREMTdEMTdFN0EwMDJCRDQzMSAvKiBKU05hdmln
YXRvclVzZXJNZWRpYVN1Y2Nlc3NDYWxsYmFjay5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJY
QnVpbGRGaWxlOyBmaWxlUmVmID0gMDczQkUzNDcxN0QxN0U3QTAwMkJENDMxIC8qIEpTTmF2aWdh
dG9yVXNlck1lZGlhU3VjY2Vzc0NhbGxiYWNrLmggKi87IH07CiAJCTA3M0JFMzRFMTdEMTgwQjIw
MDJCRDQzMSAvKiBSVENTZXNzaW9uRGVzY3JpcHRpb25EZXNjcmlwdG9yLmNwcCBpbiBTb3VyY2Vz
ICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDA3MjIxQkFCMTdDRjBBRDQwMDg0
OEU1MSAvKiBSVENTZXNzaW9uRGVzY3JpcHRpb25EZXNjcmlwdG9yLmNwcCAqLzsgfTsKIAkJMDcz
QkUzNEYxN0QxODE4MzAwMkJENDMxIC8qIFJUQ0ljZUNhbmRpZGF0ZURlc2NyaXB0b3IuY3BwIGlu
IFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMDcyMjFCQTYxN0NG
MEFENDAwODQ4RTUxIC8qIFJUQ0ljZUNhbmRpZGF0ZURlc2NyaXB0b3IuY3BwICovOyB9OwogCQkw
NzNCRTM1MDE3RDE4MUE2MDAyQkQ0MzEgLyogUlRDUGVlckNvbm5lY3Rpb25IYW5kbGVyLmNwcCBp
biBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDA3MjIxQkE4MTdD
RjBBRDQwMDg0OEU1MSAvKiBSVENQZWVyQ29ubmVjdGlvbkhhbmRsZXIuY3BwICovOyB9OwpAQCAt
MjQwLDggKzIzNSw2IEBACiAJCTA3OEUwOTE4MTdEMTREMUMwMDQyMEFBMSAvKiBNZWRpYVN0cmVh
bVRyYWNrLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAw
NzIyMUI1NTE3Q0VDMzI3MDA4NDhFNTEgLyogTWVkaWFTdHJlYW1UcmFjay5oICovOyB9OwogCQkw
NzhFMDkxOTE3RDE0RDFDMDA0MjBBQTEgLyogTWVkaWFTdHJlYW1UcmFja0V2ZW50LmggaW4gSGVh
ZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAwNzIyMUI1ODE3Q0VDMzI3
MDA4NDhFNTEgLyogTWVkaWFTdHJlYW1UcmFja0V2ZW50LmggKi87IHNldHRpbmdzID0ge0FUVFJJ
QlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKIAkJMDc4RTA5MUIxN0QxNEQxQzAwNDIwQUExIC8q
IE5hdmlnYXRvclVzZXJNZWRpYUVycm9yLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWls
ZEZpbGU7IGZpbGVSZWYgPSAwNzIyMUI1RDE3Q0VDMzI3MDA4NDhFNTEgLyogTmF2aWdhdG9yVXNl
ck1lZGlhRXJyb3IuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9
OyB9OwotCQkwNzhFMDkxQzE3RDE0RDFDMDA0MjBBQTEgLyogTmF2aWdhdG9yVXNlck1lZGlhRXJy
b3JDYWxsYmFjay5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVm
ID0gMDcyMjFCNUYxN0NFQzMyNzAwODQ4RTUxIC8qIE5hdmlnYXRvclVzZXJNZWRpYUVycm9yQ2Fs
bGJhY2suaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9Owot
CQkwNzhFMDkxRDE3RDE0RDFDMDA0MjBBQTEgLyogTmF2aWdhdG9yVXNlck1lZGlhU3VjY2Vzc0Nh
bGxiYWNrLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAw
NzIyMUI2MTE3Q0VDMzI3MDA4NDhFNTEgLyogTmF2aWdhdG9yVXNlck1lZGlhU3VjY2Vzc0NhbGxi
YWNrLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKIAkJ
MDc4RTA5MUUxN0QxNEQxQzAwNDIwQUExIC8qIFJUQ0RhdGFDaGFubmVsLmggaW4gSGVhZGVycyAq
LyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAwNzIyMUI2NDE3Q0VDMzI3MDA4NDhF
NTEgLyogUlRDRGF0YUNoYW5uZWwuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2
YXRlLCApOyB9OyB9OwogCQkwNzhFMDkxRjE3RDE0RDFDMDA0MjBBQTEgLyogUlRDRGF0YUNoYW5u
ZWxFdmVudC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0g
MDcyMjFCNjcxN0NFQzMyNzAwODQ4RTUxIC8qIFJUQ0RhdGFDaGFubmVsRXZlbnQuaCAqLzsgc2V0
dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OwogCQkwNzhFMDkyMDE3RDE0
RDFDMDA0MjBBQTEgLyogUlRDRFRNRlNlbmRlci5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJY
QnVpbGRGaWxlOyBmaWxlUmVmID0gMDcyMjFCNkExN0NFQzMyNzAwODQ4RTUxIC8qIFJUQ0RUTUZT
ZW5kZXIuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OwpA
QCAtNzM1OCwxMCArNzM1MSw2IEBACiAJCTA3MjIxQjVDMTdDRUMzMjcwMDg0OEU1MSAvKiBOYXZp
Z2F0b3JVc2VyTWVkaWEuaWRsICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNv
ZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gdGV4dDsgcGF0aCA9IE5hdmlnYXRvclVzZXJN
ZWRpYS5pZGw7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTA3MjIxQjVEMTdDRUMzMjcw
MDg0OEU1MSAvKiBOYXZpZ2F0b3JVc2VyTWVkaWFFcnJvci5oICovID0ge2lzYSA9IFBCWEZpbGVS
ZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29k
ZS5jLmg7IHBhdGggPSBOYXZpZ2F0b3JVc2VyTWVkaWFFcnJvci5oOyBzb3VyY2VUcmVlID0gIjxn
cm91cD4iOyB9OwogCQkwNzIyMUI1RTE3Q0VDMzI3MDA4NDhFNTEgLyogTmF2aWdhdG9yVXNlck1l
ZGlhRXJyb3IuaWRsICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9
IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gdGV4dDsgcGF0aCA9IE5hdmlnYXRvclVzZXJNZWRpYUVy
cm9yLmlkbDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKLQkJMDcyMjFCNUYxN0NFQzMyNzAw
ODQ4RTUxIC8qIE5hdmlnYXRvclVzZXJNZWRpYUVycm9yQ2FsbGJhY2suaCAqLyA9IHtpc2EgPSBQ
QlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNv
dXJjZWNvZGUuYy5oOyBwYXRoID0gTmF2aWdhdG9yVXNlck1lZGlhRXJyb3JDYWxsYmFjay5oOyBz
b3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwotCQkwNzIyMUI2MDE3Q0VDMzI3MDA4NDhFNTEgLyog
TmF2aWdhdG9yVXNlck1lZGlhRXJyb3JDYWxsYmFjay5pZGwgKi8gPSB7aXNhID0gUEJYRmlsZVJl
ZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSB0ZXh0OyBwYXRo
ID0gTmF2aWdhdG9yVXNlck1lZGlhRXJyb3JDYWxsYmFjay5pZGw7IHNvdXJjZVRyZWUgPSAiPGdy
b3VwPiI7IH07Ci0JCTA3MjIxQjYxMTdDRUMzMjcwMDg0OEU1MSAvKiBOYXZpZ2F0b3JVc2VyTWVk
aWFTdWNjZXNzQ2FsbGJhY2suaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5j
b2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gTmF2
aWdhdG9yVXNlck1lZGlhU3VjY2Vzc0NhbGxiYWNrLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7
IH07Ci0JCTA3MjIxQjYyMTdDRUMzMjcwMDg0OEU1MSAvKiBOYXZpZ2F0b3JVc2VyTWVkaWFTdWNj
ZXNzQ2FsbGJhY2suaWRsICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGlu
ZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gdGV4dDsgcGF0aCA9IE5hdmlnYXRvclVzZXJNZWRp
YVN1Y2Nlc3NDYWxsYmFjay5pZGw7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTA3MjIx
QjYzMTdDRUMzMjcwMDg0OEU1MSAvKiBSVENEYXRhQ2hhbm5lbC5jcHAgKi8gPSB7aXNhID0gUEJY
RmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3Vy
Y2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBSVENEYXRhQ2hhbm5lbC5jcHA7IHNvdXJjZVRyZWUgPSAi
PGdyb3VwPiI7IH07CiAJCTA3MjIxQjY0MTdDRUMzMjcwMDg0OEU1MSAvKiBSVENEYXRhQ2hhbm5l
bC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RL
bm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBSVENEYXRhQ2hhbm5lbC5oOyBz
b3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQkwNzIyMUI2NTE3Q0VDMzI3MDA4NDhFNTEgLyog
UlRDRGF0YUNoYW5uZWwuaWRsICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNv
ZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gdGV4dDsgcGF0aCA9IFJUQ0RhdGFDaGFubmVs
LmlkbDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKQEAgLTc0NTEsNyArNzQ0MCw2IEBACiAJ
CTA3Mzc5NEUwMTlFRTJEMUIwMEU1QTA0NSAvKiBNZWRpYUNvbnN0cmFpbnRzTW9jay5oICovID0g
e2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVU
eXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBNZWRpYUNvbnN0cmFpbnRzTW9jay5oOyBzb3Vy
Y2VUcmVlID0gIjxncm91cD4iOyB9OwogCQkwNzM3OTRFMzE5RUUyRkYyMDBFNUEwNDUgLyogSlNS
VENDb25maWd1cmF0aW9uLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5j
b2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9
IEpTUlRDQ29uZmlndXJhdGlvbi5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTA3
Mzc5NEU0MTlFRTJGRjIwMEU1QTA0NSAvKiBKU1JUQ0NvbmZpZ3VyYXRpb24uaCAqLyA9IHtpc2Eg
PSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9
IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gSlNSVENDb25maWd1cmF0aW9uLmg7IHNvdXJjZVRyZWUg
PSAiPGdyb3VwPiI7IH07Ci0JCTA3Mzc5NEU3MTlFRTMzNUMwMEU1QTA0NSAvKiBKU05hdmlnYXRv
ckN1c3RvbS5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0g
NDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBKU05hdmln
YXRvckN1c3RvbS5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTA3Mzc5NEU5MTlF
RTM0MUUwMEU1QTA0NSAvKiBKU1JUQ0ljZVNlcnZlci5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJl
ZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2Rl
LmNwcC5jcHA7IHBhdGggPSBKU1JUQ0ljZVNlcnZlci5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3Vw
PiI7IH07CiAJCTA3Mzc5NEVBMTlFRTM0MUUwMEU1QTA0NSAvKiBKU1JUQ0ljZVNlcnZlci5oICov
ID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZp
bGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBKU1JUQ0ljZVNlcnZlci5oOyBzb3VyY2VU
cmVlID0gIjxncm91cD4iOyB9OwogCQkwNzM3OTRFRDE5RUUzNjQyMDBFNUEwNDUgLyogRE9NVVJM
TWVkaWFTdHJlYW0uY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGlu
ZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gRE9N
VVJMTWVkaWFTdHJlYW0uY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwpAQCAtNzQ3Mywx
MCArNzQ2MSw2IEBACiAJCTA3M0JFMzNGMTdEMTdFMDEwMDJCRDQzMSAvKiBKU05hdmlnYXRvclVz
ZXJNZWRpYS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7
IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBKU05hdmlnYXRvclVz
ZXJNZWRpYS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQkwNzNCRTM0MjE3RDE3RTdB
MDAyQkQ0MzEgLyogSlNOYXZpZ2F0b3JVc2VyTWVkaWFFcnJvci5jcHAgKi8gPSB7aXNhID0gUEJY
RmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3Vy
Y2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBKU05hdmlnYXRvclVzZXJNZWRpYUVycm9yLmNwcDsgc291
cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJMDczQkUzNDMxN0QxN0U3QTAwMkJENDMxIC8qIEpT
TmF2aWdhdG9yVXNlck1lZGlhRXJyb3IuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBm
aWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRo
ID0gSlNOYXZpZ2F0b3JVc2VyTWVkaWFFcnJvci5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9
OwotCQkwNzNCRTM0NDE3RDE3RTdBMDAyQkQ0MzEgLyogSlNOYXZpZ2F0b3JVc2VyTWVkaWFFcnJv
ckNhbGxiYWNrLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rpbmcg
PSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEpTTmF2
aWdhdG9yVXNlck1lZGlhRXJyb3JDYWxsYmFjay5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7
IH07Ci0JCTA3M0JFMzQ1MTdEMTdFN0EwMDJCRDQzMSAvKiBKU05hdmlnYXRvclVzZXJNZWRpYUVy
cm9yQ2FsbGJhY2suaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rpbmcg
PSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gSlNOYXZpZ2F0
b3JVc2VyTWVkaWFFcnJvckNhbGxiYWNrLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07Ci0J
CTA3M0JFMzQ2MTdEMTdFN0EwMDJCRDQzMSAvKiBKU05hdmlnYXRvclVzZXJNZWRpYVN1Y2Nlc3ND
YWxsYmFjay5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0g
NDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBKU05hdmln
YXRvclVzZXJNZWRpYVN1Y2Nlc3NDYWxsYmFjay5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7
IH07Ci0JCTA3M0JFMzQ3MTdEMTdFN0EwMDJCRDQzMSAvKiBKU05hdmlnYXRvclVzZXJNZWRpYVN1
Y2Nlc3NDYWxsYmFjay5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGlu
ZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBKU05hdmln
YXRvclVzZXJNZWRpYVN1Y2Nlc3NDYWxsYmFjay5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9
OwogCQkwNzRFODJCODE4QTY5RjBFMDA3RUY1NEMgLyogUGxhdGZvcm1UaW1lUmFuZ2VzLmNwcCAq
LyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25G
aWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IFBsYXRmb3JtVGltZVJhbmdlcy5j
cHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTA3NEU4MkI5MThBNjlGMEUwMDdFRjU0
QyAvKiBQbGF0Zm9ybVRpbWVSYW5nZXMuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBm
aWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRo
ID0gUGxhdGZvcm1UaW1lUmFuZ2VzLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTA3
NTM4NjAwMTQ0ODlFOTgwMEI3ODQ1MiAvKiBDYWNoZWRUZXh0VHJhY2suY3BwICovID0ge2lzYSA9
IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0g
c291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gQ2FjaGVkVGV4dFRyYWNrLmNwcDsgc291cmNlVHJl
ZSA9ICI8Z3JvdXA+IjsgfTsKQEAgLTg4NjUsNiArODg0OSw3IEBACiAJCTQxOUJFNzUzMUJDN0Yz
REIwMEUxQzg1QiAvKiBXZWJDb3JlSlNCdWlsdGluSW50ZXJuYWxzLmggKi8gPSB7aXNhID0gUEJY
RmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3Vy
Y2Vjb2RlLmMuaDsgcGF0aCA9IFdlYkNvcmVKU0J1aWx0aW5JbnRlcm5hbHMuaDsgc291cmNlVHJl
ZSA9ICI8Z3JvdXA+IjsgfTsKIAkJNDE5QkU3NTQxQkM3RjNEQjAwRTFDODVCIC8qIFdlYkNvcmVK
U0J1aWx0aW5zLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rpbmcg
PSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IFdlYkNv
cmVKU0J1aWx0aW5zLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJNDE5QkU3NTUx
QkM3RjNEQjAwRTFDODVCIC8qIFdlYkNvcmVKU0J1aWx0aW5zLmggKi8gPSB7aXNhID0gUEJYRmls
ZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vj
b2RlLmMuaDsgcGF0aCA9IFdlYkNvcmVKU0J1aWx0aW5zLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3Vw
PiI7IH07CisJCTQxOUJFNzVBMUJDQkQzRUQwMEUxQzg1QiAvKiBOYXZpZ2F0b3JVc2VyTWVkaWEu
anMgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtu
b3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmphdmFzY3JpcHQ7IHBhdGggPSBOYXZpZ2F0b3JVc2Vy
TWVkaWEuanM7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTQxOUZBRkFEMUFCQUJDRDUw
MDVCODI4QiAvKiBSZWFkYWJsZVN0cmVhbVJlYWRlci5pZGwgKi8gPSB7aXNhID0gUEJYRmlsZVJl
ZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSB0ZXh0OyBwYXRo
ID0gUmVhZGFibGVTdHJlYW1SZWFkZXIuaWRsOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9Owog
CQk0MUEwMjNFRDFBMzlEQjc5MDBGNzIyQ0YgLyogUmVhZGFibGVTdHJlYW0uaWRsICovID0ge2lz
YSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBl
ID0gdGV4dDsgcGF0aCA9IFJlYWRhYmxlU3RyZWFtLmlkbDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+
IjsgfTsKIAkJNDFBMDIzRUQxQTM5REI3OTAwRjcyMkRGIC8qIFdyaXRhYmxlU3RyZWFtLmlkbCAq
LyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25G
aWxlVHlwZSA9IHRleHQ7IHBhdGggPSBXcml0YWJsZVN0cmVhbS5pZGw7IHNvdXJjZVRyZWUgPSAi
PGdyb3VwPiI7IH07CkBAIC0xNTA4OCwxMyArMTUwNzMsMTAgQEAKIAkJCQk1RUE3MjVDQjFBQ0FC
Q0I1MDBFQUQxN0IgLyogTmF2aWdhdG9yTWVkaWFEZXZpY2VzLmggKi8sCiAJCQkJNUVBNzI1Q0Mx
QUNBQkNCNTAwRUFEMTdCIC8qIE5hdmlnYXRvck1lZGlhRGV2aWNlcy5pZGwgKi8sCiAJCQkJMDcy
MjFCNUMxN0NFQzMyNzAwODQ4RTUxIC8qIE5hdmlnYXRvclVzZXJNZWRpYS5pZGwgKi8sCisJCQkJ
NDE5QkU3NUExQkNCRDNFRDAwRTFDODVCIC8qIE5hdmlnYXRvclVzZXJNZWRpYS5qcyAqLywKIAkJ
CQkwNzAzMjdGNzE3RUE0QUFGMDBDRTEzMTggLyogTmF2aWdhdG9yVXNlck1lZGlhRXJyb3IuY3Bw
ICovLAogCQkJCTA3MjIxQjVEMTdDRUMzMjcwMDg0OEU1MSAvKiBOYXZpZ2F0b3JVc2VyTWVkaWFF
cnJvci5oICovLAogCQkJCTA3MjIxQjVFMTdDRUMzMjcwMDg0OEU1MSAvKiBOYXZpZ2F0b3JVc2Vy
TWVkaWFFcnJvci5pZGwgKi8sCi0JCQkJMDcyMjFCNUYxN0NFQzMyNzAwODQ4RTUxIC8qIE5hdmln
YXRvclVzZXJNZWRpYUVycm9yQ2FsbGJhY2suaCAqLywKLQkJCQkwNzIyMUI2MDE3Q0VDMzI3MDA4
NDhFNTEgLyogTmF2aWdhdG9yVXNlck1lZGlhRXJyb3JDYWxsYmFjay5pZGwgKi8sCi0JCQkJMDcy
MjFCNjExN0NFQzMyNzAwODQ4RTUxIC8qIE5hdmlnYXRvclVzZXJNZWRpYVN1Y2Nlc3NDYWxsYmFj
ay5oICovLAotCQkJCTA3MjIxQjYyMTdDRUMzMjcwMDg0OEU1MSAvKiBOYXZpZ2F0b3JVc2VyTWVk
aWFTdWNjZXNzQ2FsbGJhY2suaWRsICovLAogCQkJCTA3QUI5OTY1MThEQTNDMDEwMDE4NzcxRSAv
KiBSVENDb25maWd1cmF0aW9uLmggKi8sCiAJCQkJMDdBQjk5NjYxOERBM0MwMTAwMTg3NzFFIC8q
IFJUQ0NvbmZpZ3VyYXRpb24uaWRsICovLAogCQkJCTA3MjIxQjYzMTdDRUMzMjcwMDg0OEU1MSAv
KiBSVENEYXRhQ2hhbm5lbC5jcHAgKi8sCkBAIC0xNTI5MiwxMCArMTUyNzQsNiBAQAogCQkJCTA3
M0JFMzNGMTdEMTdFMDEwMDJCRDQzMSAvKiBKU05hdmlnYXRvclVzZXJNZWRpYS5oICovLAogCQkJ
CTA3M0JFMzQyMTdEMTdFN0EwMDJCRDQzMSAvKiBKU05hdmlnYXRvclVzZXJNZWRpYUVycm9yLmNw
cCAqLywKIAkJCQkwNzNCRTM0MzE3RDE3RTdBMDAyQkQ0MzEgLyogSlNOYXZpZ2F0b3JVc2VyTWVk
aWFFcnJvci5oICovLAotCQkJCTA3M0JFMzQ0MTdEMTdFN0EwMDJCRDQzMSAvKiBKU05hdmlnYXRv
clVzZXJNZWRpYUVycm9yQ2FsbGJhY2suY3BwICovLAotCQkJCTA3M0JFMzQ1MTdEMTdFN0EwMDJC
RDQzMSAvKiBKU05hdmlnYXRvclVzZXJNZWRpYUVycm9yQ2FsbGJhY2suaCAqLywKLQkJCQkwNzNC
RTM0NjE3RDE3RTdBMDAyQkQ0MzEgLyogSlNOYXZpZ2F0b3JVc2VyTWVkaWFTdWNjZXNzQ2FsbGJh
Y2suY3BwICovLAotCQkJCTA3M0JFMzQ3MTdEMTdFN0EwMDJCRDQzMSAvKiBKU05hdmlnYXRvclVz
ZXJNZWRpYVN1Y2Nlc3NDYWxsYmFjay5oICovLAogCQkJCTA3Mzc5NEUzMTlFRTJGRjIwMEU1QTA0
NSAvKiBKU1JUQ0NvbmZpZ3VyYXRpb24uY3BwICovLAogCQkJCTA3Mzc5NEU0MTlFRTJGRjIwMEU1
QTA0NSAvKiBKU1JUQ0NvbmZpZ3VyYXRpb24uaCAqLywKIAkJCQkwNzk2OUQ5MTE3RDE0MTUxMDA3
RkY4NDIgLyogSlNSVENEYXRhQ2hhbm5lbC5jcHAgKi8sCkBAIC0yMjAxMCw3ICsyMTk4OCw2IEBA
CiAJCQkJQTFFNUIzMUQxQUFEMURBNDAwNkVCRUZCIC8qIEpTTW9ja0NvbnRlbnRGaWx0ZXJTZXR0
aW5nc0N1c3RvbS5jcHAgKi8sCiAJCQkJQzZGMDkxN0UxNDNBMkJCOTAwNjg1ODQ5IC8qIEpTTXV0
YXRpb25PYnNlcnZlckN1c3RvbS5jcHAgKi8sCiAJCQkJQkNEOUMyNUYwQzE3QUE2NzAwNUM5MEEy
IC8qIEpTTmFtZWROb2RlTWFwQ3VzdG9tLmNwcCAqLywKLQkJCQkwNzM3OTRFNzE5RUUzMzVDMDBF
NUEwNDUgLyogSlNOYXZpZ2F0b3JDdXN0b20uY3BwICovLAogCQkJCUJDRDlDMjYwMEMxN0FBNjcw
MDVDOTBBMiAvKiBKU05vZGVDdXN0b20uY3BwICovLAogCQkJCUJDOTQzOUMyMTE2Q0Y0OTQwMDQ4
Qzc1MCAvKiBKU05vZGVDdXN0b20uaCAqLywKIAkJCQkxQTc1MEREMzBBOTBFNzI5MDAwRkYyMTUg
LyogSlNOb2RlSXRlcmF0b3JDdXN0b20uY3BwICovLApAQCAtMjYxMzEsOCArMjYxMDgsNiBAQAog
CQkJCUE5RDI0N0Y4MEQ3NTdFMzQwMEZERjk1OSAvKiBKU05hdmlnYXRvci5oIGluIEhlYWRlcnMg
Ki8sCiAJCQkJMDczQkUzNDExN0QxN0UwMTAwMkJENDMxIC8qIEpTTmF2aWdhdG9yVXNlck1lZGlh
LmggaW4gSGVhZGVycyAqLywKIAkJCQkwNzNCRTM0OTE3RDE3RTdBMDAyQkQ0MzEgLyogSlNOYXZp
Z2F0b3JVc2VyTWVkaWFFcnJvci5oIGluIEhlYWRlcnMgKi8sCi0JCQkJMDczQkUzNEIxN0QxN0U3
QTAwMkJENDMxIC8qIEpTTmF2aWdhdG9yVXNlck1lZGlhRXJyb3JDYWxsYmFjay5oIGluIEhlYWRl
cnMgKi8sCi0JCQkJMDczQkUzNEQxN0QxN0U3QTAwMkJENDMxIC8qIEpTTmF2aWdhdG9yVXNlck1l
ZGlhU3VjY2Vzc0NhbGxiYWNrLmggaW4gSGVhZGVycyAqLywKIAkJCQlCQzk0MzlDMzExNkNGNDk0
MDA0OEM3NTAgLyogSlNOb2RlQ3VzdG9tLmggaW4gSGVhZGVycyAqLywKIAkJCQkxNDExNUI3MzA5
Rjg0Q0Q2MDBDQTRGQzEgLyogSlNOb2RlRmlsdGVyLmggaW4gSGVhZGVycyAqLywKIAkJCQkxQTc1
MEQ4RTBBOTBFNTIxMDAwRkYyMTUgLyogSlNOb2RlSXRlcmF0b3IuaCBpbiBIZWFkZXJzICovLApA
QCAtMjY2NjgsOCArMjY2NDMsNiBAQAogCQkJCTk3MTE0NjA0MTRFRjAwOUEwMDY3NEZEOSAvKiBO
YXZpZ2F0b3JHZW9sb2NhdGlvbi5oIGluIEhlYWRlcnMgKi8sCiAJCQkJNUVBNzI1RDYxQUNBQkQ1
NzAwRUFEMTdCIC8qIE5hdmlnYXRvck1lZGlhRGV2aWNlcy5oIGluIEhlYWRlcnMgKi8sCiAJCQkJ
MDc4RTA5MUIxN0QxNEQxQzAwNDIwQUExIC8qIE5hdmlnYXRvclVzZXJNZWRpYUVycm9yLmggaW4g
SGVhZGVycyAqLywKLQkJCQkwNzhFMDkxQzE3RDE0RDFDMDA0MjBBQTEgLyogTmF2aWdhdG9yVXNl
ck1lZGlhRXJyb3JDYWxsYmFjay5oIGluIEhlYWRlcnMgKi8sCi0JCQkJMDc4RTA5MUQxN0QxNEQx
QzAwNDIwQUExIC8qIE5hdmlnYXRvclVzZXJNZWRpYVN1Y2Nlc3NDYWxsYmFjay5oIGluIEhlYWRl
cnMgKi8sCiAJCQkJQTE5RDkzNDYxQTlGRUM3MjAwQjQ2QzI0IC8qIE5FRmlsdGVyU291cmNlU1BJ
LmggaW4gSGVhZGVycyAqLywKIAkJCQk4QTMwOUM5RjEyMzk1MEJFMDBDQjkyMDQgLyogTmVzdGlu
Z0xldmVsSW5jcmVtZW50ZXIuaCBpbiBIZWFkZXJzICovLAogCQkJCTY1NkQzNzQzMEFEQkE1REUw
MEE0NTU0RCAvKiBOZXRzY2FwZVBsdWdJblN0cmVhbUxvYWRlci5oIGluIEhlYWRlcnMgKi8sCkBA
IC0yOTc5NCwxMSArMjk3NjcsOCBAQAogCQkJCUJDRDlDMkMwMEMxN0I2OUUwMDVDOTBBMiAvKiBK
U05hbWVkTm9kZU1hcC5jcHAgaW4gU291cmNlcyAqLywKIAkJCQlCQ0Q5QzI2MzBDMTdBQTY3MDA1
QzkwQTIgLyogSlNOYW1lZE5vZGVNYXBDdXN0b20uY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJQTlE
MjQ3RjcwRDc1N0UzNDAwRkRGOTU5IC8qIEpTTmF2aWdhdG9yLmNwcCBpbiBTb3VyY2VzICovLAot
CQkJCTA3Mzc5NEU4MTlFRTMzNUMwMEU1QTA0NSAvKiBKU05hdmlnYXRvckN1c3RvbS5jcHAgaW4g
U291cmNlcyAqLywKIAkJCQkwNzNCRTM0MDE3RDE3RTAxMDAyQkQ0MzEgLyogSlNOYXZpZ2F0b3JV
c2VyTWVkaWEuY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJMDczQkUzNDgxN0QxN0U3QTAwMkJENDMx
IC8qIEpTTmF2aWdhdG9yVXNlck1lZGlhRXJyb3IuY3BwIGluIFNvdXJjZXMgKi8sCi0JCQkJMDcz
QkUzNEExN0QxN0U3QTAwMkJENDMxIC8qIEpTTmF2aWdhdG9yVXNlck1lZGlhRXJyb3JDYWxsYmFj
ay5jcHAgaW4gU291cmNlcyAqLywKLQkJCQkwNzNCRTM0QzE3RDE3RTdBMDAyQkQ0MzEgLyogSlNO
YXZpZ2F0b3JVc2VyTWVkaWFTdWNjZXNzQ2FsbGJhY2suY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJ
MTREQzBEMzcwOUZFRDA3MzAwN0IwMjM1IC8qIEpTTm9kZS5jcHAgaW4gU291cmNlcyAqLywKIAkJ
CQlCQ0Q5QzI2NDBDMTdBQTY3MDA1QzkwQTIgLyogSlNOb2RlQ3VzdG9tLmNwcCBpbiBTb3VyY2Vz
ICovLAogCQkJCTE0MTE1QjcyMDlGODRDRDYwMENBNEZDMSAvKiBKU05vZGVGaWx0ZXIuY3BwIGlu
IFNvdXJjZXMgKi8sCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9KU0RP
TVdpbmRvd0Jhc2UuY3BwIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvSlNET01XaW5kb3dC
YXNlLmNwcAppbmRleCBmODAzZGJlY2IxOTRhNTY1Zjk4YWNlN2VkNjU3NTIwNjY4ZDM4YjczLi5k
YjA3NjM1ODQxOWU3NmYyZTk5ODBjNzE2NGFiMDliNTY3ODI3NWRiIDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9KU0RPTVdpbmRvd0Jhc2UuY3BwCisrKyBiL1NvdXJjZS9X
ZWJDb3JlL2JpbmRpbmdzL2pzL0pTRE9NV2luZG93QmFzZS5jcHAKQEAgLTMsNiArMyw3IEBACiAg
KiAgQ29weXJpZ2h0IChDKSAyMDA2IEpvbiBTaGllciAoanNoaWVyQGlhc3RhdGUuZWR1KQogICog
IENvcHlyaWdodCAoQykgMjAwMy0yMDA5LCAyMDE0IEFwcGxlIEluYy4gQWxsIHJpZ2h0cyByZXNl
dmVkLgogICogIENvcHlyaWdodCAoQykgMjAwNiBBbGV4ZXkgUHJvc2t1cnlha292IChhcEB3ZWJr
aXQub3JnKQorICogIENvcHlyaWdodCAoYykgMjAxNSBDYW5vbiBJbmMuIEFsbCByaWdodHMgcmVz
ZXJ2ZWQuCiAgKgogICogIFRoaXMgbGlicmFyeSBpcyBmcmVlIHNvZnR3YXJlOyB5b3UgY2FuIHJl
ZGlzdHJpYnV0ZSBpdCBhbmQvb3IKICAqICBtb2RpZnkgaXQgdW5kZXIgdGhlIHRlcm1zIG9mIHRo
ZSBHTlUgTGVzc2VyIEdlbmVyYWwgUHVibGljCkBAIC04MywzNCArODQsMzUgQEAgdm9pZCBKU0RP
TVdpbmRvd0Jhc2U6OmZpbmlzaENyZWF0aW9uKFZNJiB2bSwgSlNET01XaW5kb3dTaGVsbCogc2hl
bGwpCiAKICAgICBtX3ByaXZhdGVGdW5jdGlvbnMuaW5pdCgqdGhpcyk7CiAKKyNpZiBFTkFCTEUo
U1RSRUFNU19BUEkpCisgICAgSlNWTUNsaWVudERhdGEmIGNsaWVudERhdGEgPSAqc3RhdGljX2Nh
c3Q8SlNWTUNsaWVudERhdGEqPih2bS5jbGllbnREYXRhKTsKKyNlbmRpZgorCiAgICAgR2xvYmFs
UHJvcGVydHlJbmZvIHN0YXRpY0dsb2JhbHNbXSA9IHsKICAgICAgICAgR2xvYmFsUHJvcGVydHlJ
bmZvKHZtLnByb3BlcnR5TmFtZXMtPmRvY3VtZW50LCBqc051bGwoKSwgRG9udERlbGV0ZSB8IFJl
YWRPbmx5KSwKICAgICAgICAgR2xvYmFsUHJvcGVydHlJbmZvKHZtLnByb3BlcnR5TmFtZXMtPndp
bmRvdywgbV9zaGVsbCwgRG9udERlbGV0ZSB8IFJlYWRPbmx5KSwKICNpZiBFTkFCTEUoU1RSRUFN
U19BUEkpCi0gICAgICAgIEdsb2JhbFByb3BlcnR5SW5mbyhzdGF0aWNfY2FzdDxKU1ZNQ2xpZW50
RGF0YSo+KHZtLmNsaWVudERhdGEpLT5idWlsdGluTmFtZXMoKS5zdHJlYW1DbG9zZWRQcml2YXRl
TmFtZSgpLCBqc051bWJlcigxKSwgRG9udERlbGV0ZSB8IFJlYWRPbmx5KSwKLSAgICAgICAgR2xv
YmFsUHJvcGVydHlJbmZvKHN0YXRpY19jYXN0PEpTVk1DbGllbnREYXRhKj4odm0uY2xpZW50RGF0
YSktPmJ1aWx0aW5OYW1lcygpLnN0cmVhbUNsb3NpbmdQcml2YXRlTmFtZSgpLCBqc051bWJlcigy
KSwgRG9udERlbGV0ZSB8IFJlYWRPbmx5KSwKLSAgICAgICAgR2xvYmFsUHJvcGVydHlJbmZvKHN0
YXRpY19jYXN0PEpTVk1DbGllbnREYXRhKj4odm0uY2xpZW50RGF0YSktPmJ1aWx0aW5OYW1lcygp
LnN0cmVhbUVycm9yZWRQcml2YXRlTmFtZSgpLCBqc051bWJlcigzKSwgRG9udERlbGV0ZSB8IFJl
YWRPbmx5KSwKLSAgICAgICAgR2xvYmFsUHJvcGVydHlJbmZvKHN0YXRpY19jYXN0PEpTVk1DbGll
bnREYXRhKj4odm0uY2xpZW50RGF0YSktPmJ1aWx0aW5OYW1lcygpLnN0cmVhbVJlYWRhYmxlUHJp
dmF0ZU5hbWUoKSwganNOdW1iZXIoNCksIERvbnREZWxldGUgfCBSZWFkT25seSksCi0gICAgICAg
IEdsb2JhbFByb3BlcnR5SW5mbyhzdGF0aWNfY2FzdDxKU1ZNQ2xpZW50RGF0YSo+KHZtLmNsaWVu
dERhdGEpLT5idWlsdGluTmFtZXMoKS5zdHJlYW1XYWl0aW5nUHJpdmF0ZU5hbWUoKSwganNOdW1i
ZXIoNSksIERvbnREZWxldGUgfCBSZWFkT25seSksCi0gICAgICAgIEdsb2JhbFByb3BlcnR5SW5m
byhzdGF0aWNfY2FzdDxKU1ZNQ2xpZW50RGF0YSo+KHZtLmNsaWVudERhdGEpLT5idWlsdGluTmFt
ZXMoKS5zdHJlYW1Xcml0YWJsZVByaXZhdGVOYW1lKCksIGpzTnVtYmVyKDYpLCBEb250RGVsZXRl
IHwgUmVhZE9ubHkpLAotICAgICAgICBHbG9iYWxQcm9wZXJ0eUluZm8oc3RhdGljX2Nhc3Q8SlNW
TUNsaWVudERhdGEqPih2bS5jbGllbnREYXRhKS0+YnVpbHRpbk5hbWVzKCkuUmVhZGFibGVTdHJl
YW1Db250cm9sbGVyUHJpdmF0ZU5hbWUoKSwgY3JlYXRlUmVhZGFibGVTdHJlYW1Db250cm9sbGVy
UHJpdmF0ZUNvbnN0cnVjdG9yKHZtLCAqdGhpcyksIERvbnREZWxldGUgfCBSZWFkT25seSksCi0g
ICAgICAgIEdsb2JhbFByb3BlcnR5SW5mbyhzdGF0aWNfY2FzdDxKU1ZNQ2xpZW50RGF0YSo+KHZt
LmNsaWVudERhdGEpLT5idWlsdGluTmFtZXMoKS5SZWFkYWJsZVN0cmVhbVJlYWRlclByaXZhdGVO
YW1lKCksIGNyZWF0ZVJlYWRhYmxlU3RyZWFtUmVhZGVyUHJpdmF0ZUNvbnN0cnVjdG9yKHZtLCAq
dGhpcyksIERvbnREZWxldGUgfCBSZWFkT25seSksCisgICAgICAgIEdsb2JhbFByb3BlcnR5SW5m
byhjbGllbnREYXRhLmJ1aWx0aW5OYW1lcygpLnN0cmVhbUNsb3NlZFByaXZhdGVOYW1lKCksIGpz
TnVtYmVyKDEpLCBEb250RGVsZXRlIHwgUmVhZE9ubHkpLAorICAgICAgICBHbG9iYWxQcm9wZXJ0
eUluZm8oY2xpZW50RGF0YS5idWlsdGluTmFtZXMoKS5zdHJlYW1DbG9zaW5nUHJpdmF0ZU5hbWUo
KSwganNOdW1iZXIoMiksIERvbnREZWxldGUgfCBSZWFkT25seSksCisgICAgICAgIEdsb2JhbFBy
b3BlcnR5SW5mbyhjbGllbnREYXRhLmJ1aWx0aW5OYW1lcygpLnN0cmVhbUVycm9yZWRQcml2YXRl
TmFtZSgpLCBqc051bWJlcigzKSwgRG9udERlbGV0ZSB8IFJlYWRPbmx5KSwKKyAgICAgICAgR2xv
YmFsUHJvcGVydHlJbmZvKGNsaWVudERhdGEuYnVpbHRpbk5hbWVzKCkuc3RyZWFtUmVhZGFibGVQ
cml2YXRlTmFtZSgpLCBqc051bWJlcig0KSwgRG9udERlbGV0ZSB8IFJlYWRPbmx5KSwKKyAgICAg
ICAgR2xvYmFsUHJvcGVydHlJbmZvKGNsaWVudERhdGEuYnVpbHRpbk5hbWVzKCkuc3RyZWFtV2Fp
dGluZ1ByaXZhdGVOYW1lKCksIGpzTnVtYmVyKDUpLCBEb250RGVsZXRlIHwgUmVhZE9ubHkpLAor
ICAgICAgICBHbG9iYWxQcm9wZXJ0eUluZm8oY2xpZW50RGF0YS5idWlsdGluTmFtZXMoKS5zdHJl
YW1Xcml0YWJsZVByaXZhdGVOYW1lKCksIGpzTnVtYmVyKDYpLCBEb250RGVsZXRlIHwgUmVhZE9u
bHkpLAorICAgICAgICBHbG9iYWxQcm9wZXJ0eUluZm8oY2xpZW50RGF0YS5idWlsdGluTmFtZXMo
KS5SZWFkYWJsZVN0cmVhbUNvbnRyb2xsZXJQcml2YXRlTmFtZSgpLCBjcmVhdGVSZWFkYWJsZVN0
cmVhbUNvbnRyb2xsZXJQcml2YXRlQ29uc3RydWN0b3Iodm0sICp0aGlzKSwgRG9udERlbGV0ZSB8
IFJlYWRPbmx5KSwKKyAgICAgICAgR2xvYmFsUHJvcGVydHlJbmZvKGNsaWVudERhdGEuYnVpbHRp
bk5hbWVzKCkuUmVhZGFibGVTdHJlYW1SZWFkZXJQcml2YXRlTmFtZSgpLCBjcmVhdGVSZWFkYWJs
ZVN0cmVhbVJlYWRlclByaXZhdGVDb25zdHJ1Y3Rvcih2bSwgKnRoaXMpLCBEb250RGVsZXRlIHwg
UmVhZE9ubHkpLAogI2RlZmluZSBERUNMQVJFX0dMT0JBTF9TVEFUSUMobmFtZSlcCiAgICAgICAg
IEdsb2JhbFByb3BlcnR5SW5mbyhcCi0gICAgICAgICAgICBzdGF0aWNfY2FzdDxKU1ZNQ2xpZW50
RGF0YSo+KHZtLmNsaWVudERhdGEpLT5idWlsdGluRnVuY3Rpb25zKCkucmVhZGFibGVTdHJlYW1J
bnRlcm5hbHNCdWlsdGlucygpLm5hbWUjI1ByaXZhdGVOYW1lKCksIFwKLSAgICAgICAgICAgIG1f
cHJpdmF0ZUZ1bmN0aW9ucy5yZWFkYWJsZVN0cmVhbUludGVybmFscygpLm1fIyNuYW1lIyNGdW5j
dGlvbi5nZXQoKSAsIERvbnREZWxldGUgfCBSZWFkT25seSksCisgICAgICAgICAgICBjbGllbnRE
YXRhLmJ1aWx0aW5GdW5jdGlvbnMoKS5yZWFkYWJsZVN0cmVhbUludGVybmFsc0J1aWx0aW5zKCku
bmFtZSMjUHJpdmF0ZU5hbWUoKSwgbV9wcml2YXRlRnVuY3Rpb25zLnJlYWRhYmxlU3RyZWFtSW50
ZXJuYWxzKCkubV8jI25hbWUjI0Z1bmN0aW9uLmdldCgpICwgRG9udERlbGV0ZSB8IFJlYWRPbmx5
KSwKICAgICAgICAgV0VCQ09SRV9GT1JFQUNIX1JFQURBQkxFU1RSRUFNSU5URVJOQUxTX0JVSUxU
SU5fRlVOQ1RJT05fTkFNRShERUNMQVJFX0dMT0JBTF9TVEFUSUMpCiAjdW5kZWYgREVDTEFSRV9H
TE9CQUxfU1RBVElDCiAjZGVmaW5lIERFQ0xBUkVfR0xPQkFMX1NUQVRJQyhuYW1lKVwKICAgICAg
ICAgR2xvYmFsUHJvcGVydHlJbmZvKFwKLSAgICAgICAgICAgIHN0YXRpY19jYXN0PEpTVk1DbGll
bnREYXRhKj4odm0uY2xpZW50RGF0YSktPmJ1aWx0aW5GdW5jdGlvbnMoKS5zdHJlYW1JbnRlcm5h
bHNCdWlsdGlucygpLm5hbWUjI1ByaXZhdGVOYW1lKCksIFwKLSAgICAgICAgICAgIG1fcHJpdmF0
ZUZ1bmN0aW9ucy5zdHJlYW1JbnRlcm5hbHMoKS5tXyMjbmFtZSMjRnVuY3Rpb24uZ2V0KCkgLCBE
b250RGVsZXRlIHwgUmVhZE9ubHkpLAorICAgICAgICAgICAgY2xpZW50RGF0YS5idWlsdGluRnVu
Y3Rpb25zKCkuc3RyZWFtSW50ZXJuYWxzQnVpbHRpbnMoKS5uYW1lIyNQcml2YXRlTmFtZSgpLCBt
X3ByaXZhdGVGdW5jdGlvbnMuc3RyZWFtSW50ZXJuYWxzKCkubV8jI25hbWUjI0Z1bmN0aW9uLmdl
dCgpICwgRG9udERlbGV0ZSB8IFJlYWRPbmx5KSwKICAgICAgICAgV0VCQ09SRV9GT1JFQUNIX1NU
UkVBTUlOVEVSTkFMU19CVUlMVElOX0ZVTkNUSU9OX05BTUUoREVDTEFSRV9HTE9CQUxfU1RBVElD
KQogI3VuZGVmIERFQ0xBUkVfR0xPQkFMX1NUQVRJQwogI2RlZmluZSBERUNMQVJFX0dMT0JBTF9T
VEFUSUMobmFtZSlcCiAgICAgICAgIEdsb2JhbFByb3BlcnR5SW5mbyhcCi0gICAgICAgICAgICBz
dGF0aWNfY2FzdDxKU1ZNQ2xpZW50RGF0YSo+KHZtLmNsaWVudERhdGEpLT5idWlsdGluRnVuY3Rp
b25zKCkud3JpdGFibGVTdHJlYW1JbnRlcm5hbHNCdWlsdGlucygpLm5hbWUjI1ByaXZhdGVOYW1l
KCksIFwKLSAgICAgICAgICAgIG1fcHJpdmF0ZUZ1bmN0aW9ucy53cml0YWJsZVN0cmVhbUludGVy
bmFscygpLm1fIyNuYW1lIyNGdW5jdGlvbi5nZXQoKSAsIERvbnREZWxldGUgfCBSZWFkT25seSks
CisgICAgICAgICAgICBjbGllbnREYXRhLmJ1aWx0aW5GdW5jdGlvbnMoKS53cml0YWJsZVN0cmVh
bUludGVybmFsc0J1aWx0aW5zKCkubmFtZSMjUHJpdmF0ZU5hbWUoKSwgbV9wcml2YXRlRnVuY3Rp
b25zLndyaXRhYmxlU3RyZWFtSW50ZXJuYWxzKCkubV8jI25hbWUjI0Z1bmN0aW9uLmdldCgpICwg
RG9udERlbGV0ZSB8IFJlYWRPbmx5KSwKICAgICAgICAgV0VCQ09SRV9GT1JFQUNIX1dSSVRBQkxF
U1RSRUFNSU5URVJOQUxTX0JVSUxUSU5fRlVOQ1RJT05fTkFNRShERUNMQVJFX0dMT0JBTF9TVEFU
SUMpCiAjdW5kZWYgREVDTEFSRV9HTE9CQUxfU1RBVElDCiAjZW5kaWYKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0pTTmF2aWdhdG9yQ3VzdG9tLmNwcCBiL1NvdXJjZS9X
ZWJDb3JlL2JpbmRpbmdzL2pzL0pTTmF2aWdhdG9yQ3VzdG9tLmNwcApkZWxldGVkIGZpbGUgbW9k
ZSAxMDA2NDQKaW5kZXggZjI0YzA1NWZjODliOWRlN2I5YTU1YzRlNjBlNDkwNzJjYWQ5NTZlYS4u
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMAotLS0gYS9Tb3VyY2UvV2Vi
Q29yZS9iaW5kaW5ncy9qcy9KU05hdmlnYXRvckN1c3RvbS5jcHAKKysrIC9kZXYvbnVsbApAQCAt
MSwxMDMgKzAsMCBAQAotLyoKLSAqIENvcHlyaWdodCAoQykgMjAxMyBOb2tpYSBDb3Jwb3JhdGlv
biBhbmQvb3IgaXRzIHN1YnNpZGlhcnkoLWllcykuCi0gKiBDb3B5cmlnaHQgKEMpIDIwMTUgQ2Fu
b24gSU5DLgotICoKLSAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5h
cnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAotICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVk
IHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCi0gKiBhcmUgbWV0OgotICog
MS4gUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBj
b3B5cmlnaHQKLSAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBm
b2xsb3dpbmcgZGlzY2xhaW1lci4KLSAqIDIuIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9y
bSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0Ci0gKiAgICBub3RpY2UsIHRoaXMg
bGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCi0g
KiAgICBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0
aGUgZGlzdHJpYnV0aW9uLgotICoKLSAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgVEhF
IENPUFlSSUdIVCBIT0xERVJTIEFORCBDT05UUklCVVRPUlMKLSAqICJBUyBJUyIgQU5EIEFOWSBF
WFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UCi0gKiBMSU1J
VEVEIFRPLCBUSEUgSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklU
TkVTUyBGT1IKLSAqIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiBJTiBOTyBF
VkVOVCBTSEFMTCBUSEUgQ09QWVJJR0hUCi0gKiBPV05FUiBPUiBDT05UUklCVVRPUlMgQkUgTElB
QkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwKLSAqIFNQRUNJQUwsIEVY
RU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QKLSAq
IExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7
IExPU1MgT0YgVVNFLAotICogREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBU
SU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZCi0gKiBUSEVPUlkgT0YgTElBQklMSVRZLCBX
SEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUCi0gKiAoSU5DTFVE
SU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRI
RSBVU0UKLSAqIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lC
SUxJVFkgT0YgU1VDSCBEQU1BR0UuCi0gKi8KLQotI2luY2x1ZGUgImNvbmZpZy5oIgotCi0jaWYg
RU5BQkxFKE1FRElBX1NUUkVBTSkKLSNpbmNsdWRlICJKU05hdmlnYXRvci5oIgotCi0jaW5jbHVk
ZSAiRGljdGlvbmFyeS5oIgotI2luY2x1ZGUgIkRvY3VtZW50LmgiCi0jaW5jbHVkZSAiRXhjZXB0
aW9uQ29kZS5oIgotI2luY2x1ZGUgIkZyYW1lLmgiCi0jaW5jbHVkZSAiSlNOYXZpZ2F0b3JVc2Vy
TWVkaWFFcnJvckNhbGxiYWNrLmgiCi0jaW5jbHVkZSAiSlNOYXZpZ2F0b3JVc2VyTWVkaWFTdWNj
ZXNzQ2FsbGJhY2suaCIKLSNpbmNsdWRlICJNZWRpYVN0cmVhbS5oIgotI2luY2x1ZGUgIlVzZXJN
ZWRpYVJlcXVlc3QuaCIKLQotdXNpbmcgbmFtZXNwYWNlIEpTQzsKLQotbmFtZXNwYWNlIFdlYkNv
cmUgewotCi1KU1ZhbHVlIEpTTmF2aWdhdG9yOjp3ZWJraXRHZXRVc2VyTWVkaWEoRXhlY1N0YXRl
JiBzdGF0ZSkKLXsKLSAgICBpZiAoc3RhdGUuYXJndW1lbnRDb3VudCgpIDwgMykgewotICAgICAg
ICB0aHJvd1ZNRXJyb3IoJnN0YXRlLCBjcmVhdGVOb3RFbm91Z2hBcmd1bWVudHNFcnJvcigmc3Rh
dGUpKTsKLSAgICAgICAgcmV0dXJuIGpzVW5kZWZpbmVkKCk7Ci0gICAgfQotCi0gICAgRGljdGlv
bmFyeSBvcHRpb25zKCZzdGF0ZSwgc3RhdGUuYXJndW1lbnQoMCkpOwotICAgIGlmIChzdGF0ZS5o
YWRFeGNlcHRpb24oKSkKLSAgICAgICAgcmV0dXJuIGpzVW5kZWZpbmVkKCk7Ci0KLSAgICBpZiAo
IW9wdGlvbnMuaXNPYmplY3QoKSkgewotICAgICAgICB0aHJvd1ZNRXJyb3IoJnN0YXRlLCBjcmVh
dGVUeXBlRXJyb3IoJnN0YXRlLCAiRmlyc3QgYXJndW1lbnQgb2Ygd2Via2l0R2V0VXNlck1lZGlh
IG11c3QgYmUgYSB2YWxpZCBEaWN0aW9uYXJ5IikpOwotICAgICAgICByZXR1cm4ganNVbmRlZmlu
ZWQoKTsKLSAgICB9Ci0KLSAgICBpZiAoIXN0YXRlLmFyZ3VtZW50KDEpLmlzRnVuY3Rpb24oKSkg
ewotICAgICAgICB0aHJvd1ZNVHlwZUVycm9yKCZzdGF0ZSwgIkFyZ3VtZW50IDIgKCdzdWNjZXNz
Q2FsbGJhY2snKSB0byBOYXZpZ2F0b3Iud2Via2l0R2V0VXNlck1lZGlhIG11c3QgYmUgYSBmdW5j
dGlvbiIpOwotICAgICAgICByZXR1cm4ganNVbmRlZmluZWQoKTsKLSAgICB9Ci0KLSAgICBpZiAo
IXN0YXRlLmFyZ3VtZW50KDIpLmlzRnVuY3Rpb24oKSkgewotICAgICAgICB0aHJvd1ZNVHlwZUVy
cm9yKCZzdGF0ZSwgIkFyZ3VtZW50IDMgKCdlcnJvckNhbGxiYWNrJykgdG8gTmF2aWdhdG9yLndl
YmtpdEdldFVzZXJNZWRpYSBtdXN0IGJlIGEgZnVuY3Rpb24iKTsKLSAgICAgICAgcmV0dXJuIGpz
VW5kZWZpbmVkKCk7Ci0gICAgfQotCi0gICAgaWYgKCF3cmFwcGVkKCkuZnJhbWUoKSkgewotICAg
ICAgICBzZXRET01FeGNlcHRpb24oJnN0YXRlLCBOT1RfU1VQUE9SVEVEX0VSUik7Ci0gICAgICAg
IHJldHVybiBqc1VuZGVmaW5lZCgpOwotICAgIH0KLQotICAgIC8vIFdlIGRvIG5vdCBuZWVkIHRv
IHByb3RlY3QgdGhlIGNvbnRleHQgKGkuZS4gZG9jdW1lbnQpIGhlcmUgYXMgVXNlck1lZGlhUmVx
dWVzdCBpcyBvYnNlcnZpbmcgY29udGV4dCBkZXN0cnVjdGlvbiBhbmQgd2lsbCBjaGVjayB2YWxp
ZGl0eSBiZWZvcmUgcmVzb2x2aW5nL3JlamVjdGluZyBwcm9taXNlLgotICAgIERvY3VtZW50KiBk
b2N1bWVudCA9IHdyYXBwZWQoKS5mcmFtZSgpLT5kb2N1bWVudCgpOwotCi0gICAgUmVmUHRyPE5h
dmlnYXRvclVzZXJNZWRpYVN1Y2Nlc3NDYWxsYmFjaz4gc3VjY2Vzc0NhbGxiYWNrID0gSlNOYXZp
Z2F0b3JVc2VyTWVkaWFTdWNjZXNzQ2FsbGJhY2s6OmNyZWF0ZShhc09iamVjdChzdGF0ZS51bmNo
ZWNrZWRBcmd1bWVudCgxKSksIGdsb2JhbE9iamVjdCgpKTsKLSAgICBhdXRvIHJlc29sdmVDYWxs
YmFjayA9IFtzdWNjZXNzQ2FsbGJhY2ssIGRvY3VtZW50XShjb25zdCBSZWZQdHI8TWVkaWFTdHJl
YW0+JiBzdHJlYW0pIG11dGFibGUgewotICAgICAgICBSZWZQdHI8TWVkaWFTdHJlYW0+IHByb3Rl
Y3RlZFN0cmVhbSA9IHN0cmVhbTsKLSAgICAgICAgZG9jdW1lbnQtPnBvc3RUYXNrKFtzdWNjZXNz
Q2FsbGJhY2ssIHByb3RlY3RlZFN0cmVhbV0oU2NyaXB0RXhlY3V0aW9uQ29udGV4dCYpIHsKLSAg
ICAgICAgICAgIHN1Y2Nlc3NDYWxsYmFjay0+aGFuZGxlRXZlbnQocHJvdGVjdGVkU3RyZWFtLmdl
dCgpKTsKLSAgICAgICAgfSk7Ci0gICAgfTsKLQotICAgIFJlZlB0cjxOYXZpZ2F0b3JVc2VyTWVk
aWFFcnJvckNhbGxiYWNrPiBlcnJvckNhbGxiYWNrID0gSlNOYXZpZ2F0b3JVc2VyTWVkaWFFcnJv
ckNhbGxiYWNrOjpjcmVhdGUoYXNPYmplY3Qoc3RhdGUudW5jaGVja2VkQXJndW1lbnQoMikpLCBn
bG9iYWxPYmplY3QoKSk7Ci0gICAgYXV0byByZWplY3RDYWxsYmFjayA9IFtlcnJvckNhbGxiYWNr
LCBkb2N1bWVudF0oY29uc3QgUmVmUHRyPE5hdmlnYXRvclVzZXJNZWRpYUVycm9yPiYgZXJyb3Ip
IG11dGFibGUgewotICAgICAgICBSZWZQdHI8TmF2aWdhdG9yVXNlck1lZGlhRXJyb3I+IHByb3Rl
Y3RlZEVycm9yID0gZXJyb3I7Ci0gICAgICAgIGRvY3VtZW50LT5wb3N0VGFzayhbZXJyb3JDYWxs
YmFjaywgcHJvdGVjdGVkRXJyb3JdKFNjcmlwdEV4ZWN1dGlvbkNvbnRleHQmKSB7Ci0gICAgICAg
ICAgICBlcnJvckNhbGxiYWNrLT5oYW5kbGVFdmVudChwcm90ZWN0ZWRFcnJvci5nZXQoKSk7Ci0g
ICAgICAgIH0pOwotICAgIH07Ci0KLSAgICBFeGNlcHRpb25Db2RlIGVjID0gMDsKLSAgICBVc2Vy
TWVkaWFSZXF1ZXN0OjpzdGFydChkb2N1bWVudCwgb3B0aW9ucywgTWVkaWFEZXZpY2VzOjpQcm9t
aXNlKFdURjo6bW92ZShyZXNvbHZlQ2FsbGJhY2spLCBXVEY6Om1vdmUocmVqZWN0Q2FsbGJhY2sp
KSwgZWMpOwotICAgIHNldERPTUV4Y2VwdGlvbigmc3RhdGUsIGVjKTsKLSAgICByZXR1cm4ganNV
bmRlZmluZWQoKTsKLX0KLQotfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQotCi0jZW5kaWYgLy8gRU5B
QkxFKE1FRElBX1NUUkVBTSkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pz
L1dlYkNvcmVKU0J1aWx0aW5zLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL1dlYkNv
cmVKU0J1aWx0aW5zLmNwcAppbmRleCBhZGYxMGU4N2E3ZWJjM2NhOWNjN2NmOGJmOGNkZDIyNTBh
M2FkYjdlLi5mODI4MTBlMjY4ZDg1Nzc3ZTYwYWIyNjlkMGQ1OGFkZjMzY2IwNDQ0IDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9XZWJDb3JlSlNCdWlsdGlucy5jcHAKKysr
IGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvV2ViQ29yZUpTQnVpbHRpbnMuY3BwCkBAIC00
MSwzICs0MSw2IEBACiAjaW5jbHVkZSAiV3JpdGFibGVTdHJlYW1CdWlsdGlucy5jcHAiCiAjaW5j
bHVkZSAiV3JpdGFibGVTdHJlYW1JbnRlcm5hbHNCdWlsdGlucy5jcHAiCiAjZW5kaWYKKyNpZiBF
TkFCTEUoTUVESUFfU1RSRUFNKQorI2luY2x1ZGUgIk5hdmlnYXRvclVzZXJNZWRpYUJ1aWx0aW5z
LmNwcCIKKyNlbmRpZgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvV2Vi
Q29yZUpTQnVpbHRpbnMuaCBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL1dlYkNvcmVKU0J1
aWx0aW5zLmgKaW5kZXggYWE3OWExMzJlYWZiMWU5ZjIxNmYzODU3NTliNzQ3ODlkZTU5NmI2MC4u
ODRlNjdhOTNmOGY0MWI0NTQxZGI4ZTU0ZWUxOWVhMjk3YTY0MDVlMCAxMDA2NDQKLS0tIGEvU291
cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvV2ViQ29yZUpTQnVpbHRpbnMuaAorKysgYi9Tb3VyY2Uv
V2ViQ29yZS9iaW5kaW5ncy9qcy9XZWJDb3JlSlNCdWlsdGlucy5oCkBAIC0yOSw2ICsyOSw3IEBA
CiAKICNpZiBFTkFCTEUoTUVESUFfU1RSRUFNKQogI2luY2x1ZGUgIk1lZGlhRGV2aWNlc0J1aWx0
aW5zLmgiCisjaW5jbHVkZSAiTmF2aWdhdG9yVXNlck1lZGlhQnVpbHRpbnMuaCIKICNlbmRpZgog
CiAjaWYgRU5BQkxFKFNUUkVBTVNfQVBJKQpAQCAtNjQsNiArNjUsNyBAQCBwdWJsaWM6CiAjZW5k
aWYKICNpZiBFTkFCTEUoTUVESUFfU1RSRUFNKQogICAgICAgICAsIG1fbWVkaWFEZXZpY2VzQnVp
bHRpbnMoJnZtKQorICAgICAgICAsIG1fbmF2aWdhdG9yVXNlck1lZGlhQnVpbHRpbnMoJnZtKQog
I2VuZGlmCiAgICAgewogI2lmIEVOQUJMRShTVFJFQU1TX0FQSSkKQEAgLTg1LDYgKzg3LDcgQEAg
cHVibGljOgogI2VuZGlmCiAjaWYgRU5BQkxFKE1FRElBX1NUUkVBTSkKICAgICBNZWRpYURldmlj
ZXNCdWlsdGluc1dyYXBwZXImIG1lZGlhRGV2aWNlc0J1aWx0aW5zKCkgeyByZXR1cm4gbV9tZWRp
YURldmljZXNCdWlsdGluczsgfQorICAgIE5hdmlnYXRvclVzZXJNZWRpYUJ1aWx0aW5zV3JhcHBl
ciYgbmF2aWdhdG9yVXNlck1lZGlhQnVpbHRpbnMoKSB7IHJldHVybiBtX25hdmlnYXRvclVzZXJN
ZWRpYUJ1aWx0aW5zO30KICNlbmRpZgogCiBwcml2YXRlOgpAQCAtMTAyLDYgKzEwNSw3IEBAIHBy
aXZhdGU6CiAjZW5kaWYKICNpZiBFTkFCTEUoTUVESUFfU1RSRUFNKQogICAgIE1lZGlhRGV2aWNl
c0J1aWx0aW5zV3JhcHBlciBtX21lZGlhRGV2aWNlc0J1aWx0aW5zOworICAgIE5hdmlnYXRvclVz
ZXJNZWRpYUJ1aWx0aW5zV3JhcHBlciBtX25hdmlnYXRvclVzZXJNZWRpYUJ1aWx0aW5zOwogI2Vu
ZGlmCiAKIH07CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cgYi9MYXlvdXRUZXN0
cy9DaGFuZ2VMb2cKaW5kZXggYTI2N2RiNjYxNGRkY2I5YzA2NDIyOGFmZWQxMjdmNjUzNTdmZmUx
Ny4uODA1NzU2ZGU2NzNlOTVmOWNlZTM0NWIyNDcxNmU0M2M5ZDNjMmNlNSAxMDA2NDQKLS0tIGEv
TGF5b3V0VGVzdHMvQ2hhbmdlTG9nCisrKyBiL0xheW91dFRlc3RzL0NoYW5nZUxvZwpAQCAtMSwz
ICsxLDE2IEBACisyMDE1LTEwLTE5ICBZb3Vlbm4gRmFibGV0ICA8eW91ZW5uLmZhYmxldEBjcmYu
Y2Fub24uZnI+CisKKyAgICAgICAgTW92ZSB3ZWJraXRHZXRVc2VyTWVkaWEgdG8gSlMgQnVpbHRp
bgorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTQ5NDk5
CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgKiBmYXN0
L21lZGlhc3RyZWFtL2FyZ3VtZW50LXR5cGVzLWV4cGVjdGVkLnR4dDoKKyAgICAgICAgKiBmYXN0
L21lZGlhc3RyZWFtL2dldHVzZXJtZWRpYS1leHBlY3RlZC50eHQ6CisgICAgICAgICogZmFzdC9t
ZWRpYXN0cmVhbS9nZXR1c2VybWVkaWEuaHRtbDoKKyAgICAgICAgKiBmYXN0L21lZGlhc3RyZWFt
L3NjcmlwdC10ZXN0cy9hcmd1bWVudC10eXBlcy5qczoKKyAgICAgICAgKiBodHRwL3Rlc3RzL21l
ZGlhL21lZGlhLXN0cmVhbS9kaXNjb25uZWN0ZWQtZnJhbWUtYWxyZWFkeS1leHBlY3RlZC50eHQ6
CisKIDIwMTUtMTAtMjkgIFNlcmdpbyBWaWxsYXIgU2VuaW4gIDxzdmlsbGFyQGlnYWxpYS5jb20+
CiAKICAgICAgICAgW0NTUyBHcmlkIExheW91dF0gbWluLWNvbnRlbnQgcm93IGRvZXMgbm90IGFs
d2F5cyBzaHJpbmsKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3QvbWVkaWFzdHJlYW0vYXJn
dW1lbnQtdHlwZXMtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvZmFzdC9tZWRpYXN0cmVhbS9h
cmd1bWVudC10eXBlcy1leHBlY3RlZC50eHQKaW5kZXggNDIyNGQ0MDIwMjI5OWYwMDIxMmUyNzIx
ZjIxZTQzM2ZjZDVlMjkyNC4uNWNiYzQ4NTg4Mjc2MjliY2Y0ODRlNmY2NDEyZjU5ZmUxMDM0YzFj
ZiAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvZmFzdC9tZWRpYXN0cmVhbS9hcmd1bWVudC10eXBl
cy1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC9tZWRpYXN0cmVhbS9hcmd1bWVu
dC10eXBlcy1leHBlY3RlZC50eHQKQEAgLTMwLDcgKzMwLDcgQEAgUEFTUyBuYXZpZ2F0b3Iud2Vi
a2l0R2V0VXNlck1lZGlhKHt2aWRlbzogdHJ1ZX0sIHRydWUpIHRocmV3IGV4Y2VwdGlvbiBUeXBl
RXJyb3IKIFBBU1MgbmF2aWdhdG9yLndlYmtpdEdldFVzZXJNZWRpYSh7dmlkZW86IHRydWV9LCA0
MikgdGhyZXcgZXhjZXB0aW9uIFR5cGVFcnJvcjogTm90IGVub3VnaCBhcmd1bWVudHMuCiBQQVNT
IG5hdmlnYXRvci53ZWJraXRHZXRVc2VyTWVkaWEoe3ZpZGVvOiB0cnVlfSwgSW5maW5pdHkpIHRo
cmV3IGV4Y2VwdGlvbiBUeXBlRXJyb3I6IE5vdCBlbm91Z2ggYXJndW1lbnRzLgogUEFTUyBuYXZp
Z2F0b3Iud2Via2l0R2V0VXNlck1lZGlhKHt2aWRlbzogdHJ1ZX0sIC1JbmZpbml0eSkgdGhyZXcg
ZXhjZXB0aW9uIFR5cGVFcnJvcjogTm90IGVub3VnaCBhcmd1bWVudHMuCi1QQVNTIG5hdmlnYXRv
ci53ZWJraXRHZXRVc2VyTWVkaWEoeyB9LCBlbXB0eUZ1bmN0aW9uLCBlbXB0eUZ1bmN0aW9uKSB0
aHJldyBleGNlcHRpb24gRXJyb3I6IE5vdFN1cHBvcnRlZEVycm9yOiBET00gRXhjZXB0aW9uIDku
CitQQVNTIG5hdmlnYXRvci53ZWJraXRHZXRVc2VyTWVkaWEoeyB9LCBlbXB0eUZ1bmN0aW9uLCBl
bXB0eUZ1bmN0aW9uKSBkaWQgbm90IHRocm93IGV4Y2VwdGlvbi4KIFBBU1MgbmF2aWdhdG9yLndl
YmtpdEdldFVzZXJNZWRpYSh7dmlkZW86IHRydWV9LCBlbXB0eUZ1bmN0aW9uLCBlbXB0eUZ1bmN0
aW9uKSBkaWQgbm90IHRocm93IGV4Y2VwdGlvbi4KIFBBU1MgbmF2aWdhdG9yLndlYmtpdEdldFVz
ZXJNZWRpYSh7dmlkZW86IHRydWV9LCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQpIHRocmV3IGV4
Y2VwdGlvbiBUeXBlRXJyb3I6IEFyZ3VtZW50IDMgKCdlcnJvckNhbGxiYWNrJykgdG8gTmF2aWdh
dG9yLndlYmtpdEdldFVzZXJNZWRpYSBtdXN0IGJlIGEgZnVuY3Rpb24uCiBQQVNTIG5hdmlnYXRv
ci53ZWJraXRHZXRVc2VyTWVkaWEoe2F1ZGlvOnRydWUsIHZpZGVvOnRydWV9LCBlbXB0eUZ1bmN0
aW9uLCB1bmRlZmluZWQpIHRocmV3IGV4Y2VwdGlvbiBUeXBlRXJyb3I6IEFyZ3VtZW50IDMgKCdl
cnJvckNhbGxiYWNrJykgdG8gTmF2aWdhdG9yLndlYmtpdEdldFVzZXJNZWRpYSBtdXN0IGJlIGEg
ZnVuY3Rpb24uCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L21lZGlhc3RyZWFtL2dldHVz
ZXJtZWRpYS1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9mYXN0L21lZGlhc3RyZWFtL2dldHVz
ZXJtZWRpYS1leHBlY3RlZC50eHQKaW5kZXggZGNhNWZiOTYxY2Y2ZWI1ZjQ0NWFiNDUwYWEwYjNl
NTJkNDEwNzA4YS4uZDZjZmViNDkwY2MwMjE2MGZkZGQzYTIzZjgzMDNmMmFlNWM3ZGEwNiAxMDA2
NDQKLS0tIGEvTGF5b3V0VGVzdHMvZmFzdC9tZWRpYXN0cmVhbS9nZXR1c2VybWVkaWEtZXhwZWN0
ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL2Zhc3QvbWVkaWFzdHJlYW0vZ2V0dXNlcm1lZGlhLWV4
cGVjdGVkLnR4dApAQCAtMyw5ICszLDEwIEBAIFRlc3RzIHdlYmtpdEdldFVzZXJNZWRpYS4KIE9u
IHN1Y2Nlc3MsIHlvdSB3aWxsIHNlZSBhIHNlcmllcyBvZiAiUEFTUyIgbWVzc2FnZXMsIGZvbGxv
d2VkIGJ5ICJURVNUIENPTVBMRVRFIi4KIAogCi1QQVNTIG5hdmlnYXRvci53ZWJraXRHZXRVc2Vy
TWVkaWEoe2F1ZGlvOmZhbHNlLCB2aWRlbzpmYWxzZX0sIGVycm9yLCBlcnJvcik7IHRocmV3IGV4
Y2VwdGlvbiBFcnJvcjogTm90U3VwcG9ydGVkRXJyb3I6IERPTSBFeGNlcHRpb24gOS4KK1BBU1Mg
bmF2aWdhdG9yLndlYmtpdEdldFVzZXJNZWRpYSh7YXVkaW86ZmFsc2UsIHZpZGVvOmZhbHNlfSwg
ZXJyb3IsIGV4cGVjdGVkRXJyb3IpOyBkaWQgbm90IHRocm93IGV4Y2VwdGlvbi4KIFBBU1MgbmF2
aWdhdG9yLndlYmtpdEdldFVzZXJNZWRpYSh7YXVkaW86ZmFsc2UsIHZpZGVvOmZhbHNlfSwgZXJy
b3IsIG51bGwpOyB0aHJldyBleGNlcHRpb24gVHlwZUVycm9yOiBBcmd1bWVudCAzICgnZXJyb3JD
YWxsYmFjaycpIHRvIE5hdmlnYXRvci53ZWJraXRHZXRVc2VyTWVkaWEgbXVzdCBiZSBhIGZ1bmN0
aW9uLgogUEFTUyBuYXZpZ2F0b3Iud2Via2l0R2V0VXNlck1lZGlhKHthdWRpbzp0cnVlfSwgZ290
U3RyZWFtMSwgZXJyb3IpOyBkaWQgbm90IHRocm93IGV4Y2VwdGlvbi4KK1BBU1MgRXJyb3IgY2Fs
bGJhY2sgY2FsbGVkLgogUEFTUyBTdHJlYW0gZ2VuZXJhdGVkLgogUEFTUyBzdHJlYW0uZ2V0QXVk
aW9UcmFja3MoKS5sZW5ndGggaXMgMQogUEFTUyBzdHJlYW0uZ2V0VmlkZW9UcmFja3MoKS5sZW5n
dGggaXMgMApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9tZWRpYXN0cmVhbS9nZXR1c2Vy
bWVkaWEuaHRtbCBiL0xheW91dFRlc3RzL2Zhc3QvbWVkaWFzdHJlYW0vZ2V0dXNlcm1lZGlhLmh0
bWwKaW5kZXggMTNmYWUxMzA2NzJiZDE1NDRlYjdiYTZjMmVlMWIxZDg0N2E0OWQ1MS4uZTMzODM5
ZjFlNDczOWZiYjk3MjZmMTMwMDc3NDhiMTU4ZDRkMDkyOCAxMDA2NDQKLS0tIGEvTGF5b3V0VGVz
dHMvZmFzdC9tZWRpYXN0cmVhbS9nZXR1c2VybWVkaWEuaHRtbAorKysgYi9MYXlvdXRUZXN0cy9m
YXN0L21lZGlhc3RyZWFtL2dldHVzZXJtZWRpYS5odG1sCkBAIC0yNCw2ICsyNCwxMCBAQAogICAg
ICAgICAgICAgICAgIGZpbmlzaEpTVGVzdCgpOwogICAgICAgICAgICAgfQogCisgICAgICAgICAg
ICBmdW5jdGlvbiBleHBlY3RlZEVycm9yKCkgeworICAgICAgICAgICAgICAgIHRlc3RQYXNzZWQo
J0Vycm9yIGNhbGxiYWNrIGNhbGxlZC4nKTsKKyAgICAgICAgICAgIH0KKwogICAgICAgICAgICAg
ZnVuY3Rpb24gZ290U3RyZWFtSW5FcnJvcihzKSB7CiAgICAgICAgICAgICAgICAgdGVzdEZhaWxl
ZCgnU3RyZWFtIGdlbmVyYXRlZC4nKTsKICAgICAgICAgICAgICAgICBmaW5pc2hKU1Rlc3QoKTsK
QEAgLTg3LDcgKzkxLDcgQEAKICAgICAgICAgICAgICAgICBzaG91bGROb3RUaHJvdygibmF2aWdh
dG9yLndlYmtpdEdldFVzZXJNZWRpYSh7dmlkZW86dHJ1ZX0sIGdvdFN0cmVhbTIsIGVycm9yKTsi
KQogICAgICAgICAgICAgfQogCi0gICAgICAgICAgICBzaG91bGRUaHJvdygibmF2aWdhdG9yLndl
YmtpdEdldFVzZXJNZWRpYSh7YXVkaW86ZmFsc2UsIHZpZGVvOmZhbHNlfSwgZXJyb3IsIGVycm9y
KTsiKQorICAgICAgICAgICAgc2hvdWxkTm90VGhyb3coIm5hdmlnYXRvci53ZWJraXRHZXRVc2Vy
TWVkaWEoe2F1ZGlvOmZhbHNlLCB2aWRlbzpmYWxzZX0sIGVycm9yLCBleHBlY3RlZEVycm9yKTsi
KQogICAgICAgICAgICAgc2hvdWxkVGhyb3coIm5hdmlnYXRvci53ZWJraXRHZXRVc2VyTWVkaWEo
e2F1ZGlvOmZhbHNlLCB2aWRlbzpmYWxzZX0sIGVycm9yLCBudWxsKTsiKQogCiAgICAgICAgICAg
ICBzZXRVc2VyTWVkaWFQZXJtaXNzaW9uKHRydWUpOwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMv
ZmFzdC9tZWRpYXN0cmVhbS9zY3JpcHQtdGVzdHMvYXJndW1lbnQtdHlwZXMuanMgYi9MYXlvdXRU
ZXN0cy9mYXN0L21lZGlhc3RyZWFtL3NjcmlwdC10ZXN0cy9hcmd1bWVudC10eXBlcy5qcwppbmRl
eCAxMWFkZjg5MzY3N2QxYmIyYTc4NGU5NjRkOTI3Y2RhNGJhYTM3NzkzLi5mZjA4YjQwMDY5NDg0
NzE1OGFkNTYxY2M1ZjMzOGY0ZDI2YjQ2MjA1IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9mYXN0
L21lZGlhc3RyZWFtL3NjcmlwdC10ZXN0cy9hcmd1bWVudC10eXBlcy5qcworKysgYi9MYXlvdXRU
ZXN0cy9mYXN0L21lZGlhc3RyZWFtL3NjcmlwdC10ZXN0cy9hcmd1bWVudC10eXBlcy5qcwpAQCAt
NTQsNyArNTQsNyBAQCB0ZXN0KCduYXZpZ2F0b3Iud2Via2l0R2V0VXNlck1lZGlhKHt2aWRlbzog
dHJ1ZX0sIEluZmluaXR5KScsIHRydWUpOwogdGVzdCgnbmF2aWdhdG9yLndlYmtpdEdldFVzZXJN
ZWRpYSh7dmlkZW86IHRydWV9LCAtSW5maW5pdHkpJywgdHJ1ZSk7CiAKIC8vIDMgQXJndW1lbnRz
LgotdGVzdCgnbmF2aWdhdG9yLndlYmtpdEdldFVzZXJNZWRpYSh7IH0sIGVtcHR5RnVuY3Rpb24s
IGVtcHR5RnVuY3Rpb24pJywgdHJ1ZSwgbm90U3VwcG9ydGVkRXJyb3IpOwordGVzdCgnbmF2aWdh
dG9yLndlYmtpdEdldFVzZXJNZWRpYSh7IH0sIGVtcHR5RnVuY3Rpb24sIGVtcHR5RnVuY3Rpb24p
JywgZmFsc2UpOwogdGVzdCgnbmF2aWdhdG9yLndlYmtpdEdldFVzZXJNZWRpYSh7dmlkZW86IHRy
dWV9LCBlbXB0eUZ1bmN0aW9uLCBlbXB0eUZ1bmN0aW9uKScsIGZhbHNlKTsKIHRlc3QoJ25hdmln
YXRvci53ZWJraXRHZXRVc2VyTWVkaWEoe3ZpZGVvOiB0cnVlfSwgZW1wdHlGdW5jdGlvbiwgdW5k
ZWZpbmVkKScsIHRydWUsIGVycm9yQ2FsbGJhY2tFcnJvcik7CiB0ZXN0KCduYXZpZ2F0b3Iud2Vi
a2l0R2V0VXNlck1lZGlhKHthdWRpbzp0cnVlLCB2aWRlbzp0cnVlfSwgZW1wdHlGdW5jdGlvbiwg
dW5kZWZpbmVkKScsIHRydWUsIGVycm9yQ2FsbGJhY2tFcnJvcik7CmRpZmYgLS1naXQgYS9MYXlv
dXRUZXN0cy9odHRwL3Rlc3RzL21lZGlhL21lZGlhLXN0cmVhbS9kaXNjb25uZWN0ZWQtZnJhbWUt
YWxyZWFkeS1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL21lZGlhL21lZGlh
LXN0cmVhbS9kaXNjb25uZWN0ZWQtZnJhbWUtYWxyZWFkeS1leHBlY3RlZC50eHQKaW5kZXggZTUw
NWRiOWIyYzdlYjYzOTMzZjllZjEwNWIzMGQ5MjVkMDk2ZDU3MS4uMmFjMzE0Nzc3MmVhZTE2MzM0
MzhmZGFmYWQ1MzBhNWY1MjU4YmI0ZCAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaHR0cC90ZXN0
cy9tZWRpYS9tZWRpYS1zdHJlYW0vZGlzY29ubmVjdGVkLWZyYW1lLWFscmVhZHktZXhwZWN0ZWQu
dHh0CisrKyBiL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvbWVkaWEvbWVkaWEtc3RyZWFtL2Rpc2Nv
bm5lY3RlZC1mcmFtZS1hbHJlYWR5LWV4cGVjdGVkLnR4dApAQCAtMSw0ICsxLDQgQEAKLUNPTlNP
TEUgTUVTU0FHRTogbGluZSAyNDogTm90U3VwcG9ydGVkRXJyb3I6IERPTSBFeGNlcHRpb24gOTog
VGhlIGltcGxlbWVudGF0aW9uIGRpZCBub3Qgc3VwcG9ydCB0aGUgcmVxdWVzdGVkIHR5cGUgb2Yg
b2JqZWN0IG9yIG9wZXJhdGlvbi4KK0NPTlNPTEUgTUVTU0FHRTogbGluZSAyNDogVHlwZUVycm9y
OiBUaGUgaW1wbGVtZW50YXRpb24gZGlkIG5vdCBzdXBwb3J0IHRoZSByZXF1ZXN0ZWQgdHlwZSBv
ZiBvYmplY3Qgb3Igb3BlcmF0aW9uLgogVGVzdHMgdGhhdCB3aGVuIGEgZ2V0VXNlck1lZGlhIHJl
cXVlc3QgaXMgbWFkZSBhZnRlciBpdHMgZnJhbWUgaGFzIGJlZW4gZGlzY29ubmVjdGVkLCBubyBj
YWxsYmFja3MgYXJlIG1hZGUgYW5kIG5vIGNyYXNoIG9jY3Vycy4KIAogT24gc3VjY2VzcywgeW91
IHdpbGwgc2VlIGEgc2VyaWVzIG9mICJQQVNTIiBtZXNzYWdlcywgZm9sbG93ZWQgYnkgIlRFU1Qg
Q09NUExFVEUiLgo=
</data>

          </attachment>
      

    </bug>

</bugzilla>