<?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>36335</bug_id>
          
          <creation_ts>2010-03-18 16:26:50 -0700</creation_ts>
          <short_desc>Hashchange event is no longer a simple event, needs to be its own interface</short_desc>
          <delta_ts>2010-09-20 18:41:40 -0700</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>Page Loading</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>All</rep_platform>
          <op_sys>All</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords>InRadar</keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Brady Eidson">beidson</reporter>
          <assigned_to name="Nobody">webkit-unassigned</assigned_to>
          <cc>abarth</cc>
    
    <cc>commit-queue</cc>
    
    <cc>eric</cc>
    
    <cc>fishd</cc>
    
    <cc>gustavo</cc>
    
    <cc>mihaip</cc>
    
    <cc>s3lance</cc>
    
    <cc>webkit-ews</cc>
    
    <cc>webkit.review.bot</cc>
    
    <cc>xan.lopez</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>201633</commentid>
    <comment_count>0</comment_count>
    <who name="Brady Eidson">beidson</who>
    <bug_when>2010-03-18 16:26:50 -0700</bug_when>
    <thetext>Spun off from https://bugs.webkit.org/show_bug.cgi?id=36201

The hashchange event is no longer a simple event, needs to be its own interface.  It has two fields so it can be better utilized.

http://www.whatwg.org/specs/web-apps/current-work/multipage/history.html#event-hashchange</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>201634</commentid>
    <comment_count>1</comment_count>
    <who name="Brady Eidson">beidson</who>
    <bug_when>2010-03-18 16:27:21 -0700</bug_when>
    <thetext>&lt;rdar://problem/7769779&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>223680</commentid>
    <comment_count>2</comment_count>
      <attachid>55643</attachid>
    <who name="Steven Lai">s3lance</who>
    <bug_when>2010-05-10 19:18:18 -0700</bug_when>
    <thetext>Created attachment 55643
Patch

here, defined HashChangeEvent.newURL, HashChangeEvent.oldURL as strings

this fix is for https://bugs.webkit.org/show_bug.cgi?id=38754
so that we don&apos;t have to rollback https://bugs.webkit.org/show_bug.cgi?id=36201</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>223688</commentid>
    <comment_count>3</comment_count>
    <who name="Early Warning System Bot">webkit-ews</who>
    <bug_when>2010-05-10 19:30:44 -0700</bug_when>
    <thetext>Attachment 55643 did not build on qt:
Build output: http://webkit-commit-queue.appspot.com/results/2239071</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>223747</commentid>
    <comment_count>4</comment_count>
      <attachid>55643</attachid>
    <who name="Brady Eidson">beidson</who>
    <bug_when>2010-05-10 22:33:53 -0700</bug_when>
    <thetext>Comment on attachment 55643
Patch

Looks fine in code, but can&apos;t land without fixing the build breakage failures for other platforms.

I&apos;m wondering if maybe they need the JSHashChangeEvent.cpp added to their build?  (I didn&apos;t actually look at the Qt failure that the bots caught)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>223767</commentid>
    <comment_count>5</comment_count>
      <attachid>55667</attachid>
    <who name="Steven Lai">s3lance</who>
    <bug_when>2010-05-10 23:01:47 -0700</bug_when>
    <thetext>Created attachment 55667
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>223786</commentid>
    <comment_count>6</comment_count>
      <attachid>55671</attachid>
    <who name="Steven Lai">s3lance</who>
    <bug_when>2010-05-10 23:53:37 -0700</bug_when>
    <thetext>Created attachment 55671
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>240356</commentid>
    <comment_count>7</comment_count>
      <attachid>55671</attachid>
    <who name="Kent Tamura">tkent</who>
    <bug_when>2010-06-19 09:37:53 -0700</bug_when>
    <thetext>Comment on attachment 55671
Patch

Looks OK.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>240384</commentid>
    <comment_count>8</comment_count>
      <attachid>55671</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2010-06-19 14:22:31 -0700</bug_when>
    <thetext>Comment on attachment 55671
Patch

Rejecting patch 55671 from commit-queue.

Failed to run &quot;[u&apos;/Users/eseidel/Projects/CommitQueue/WebKitTools/Scripts/svn-apply&apos;, u&apos;--reviewer&apos;, u&apos;Kent Tamura&apos;, u&apos;--force&apos;]&quot; exit_code: 1
Last 500 characters of output:
lobal-constructors-expected.txt
Hunk #1 succeeded at 113 (offset 5 lines).
patching file LayoutTests/fast/loader/stateobjects/document-destroyed-navigate-back-with-fragment-scroll.html
Hunk #3 FAILED at 61.
Hunk #4 succeeded at 83 (offset 11 lines).
1 out of 4 hunks FAILED -- saving rejects to file LayoutTests/fast/loader/stateobjects/document-destroyed-navigate-back-with-fragment-scroll.html.rej
patching file LayoutTests/fast/loader/stateobjects/pushstate-with-fragment-urls-and-hashchange.html

Full output: http://webkit-commit-queue.appspot.com/results/3342068</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>240416</commentid>
    <comment_count>9</comment_count>
    <who name="Brady Eidson">beidson</who>
    <bug_when>2010-06-19 18:21:27 -0700</bug_when>
    <thetext>Jeez, I didn&apos;t know there was a patch here.

I&apos;ll notice when the updated one is posted, I promise.  :)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>273551</commentid>
    <comment_count>10</comment_count>
    <who name="Eric Seidel (no email)">eric</who>
    <bug_when>2010-09-02 13:55:19 -0700</bug_when>
    <thetext>Looks like this can&apos;t land as is.  Are there plans to update this patch?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>276015</commentid>
    <comment_count>11</comment_count>
    <who name="Mihai Parparita">mihaip</who>
    <bug_when>2010-09-08 13:10:12 -0700</bug_when>
    <thetext>(In reply to comment #10)
&gt; Looks like this can&apos;t land as is.  Are there plans to update this patch?

I&apos;m working on resurrecting the patch.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>276070</commentid>
    <comment_count>12</comment_count>
      <attachid>66942</attachid>
    <who name="Mihai Parparita">mihaip</who>
    <bug_when>2010-09-08 14:27:48 -0700</bug_when>
    <thetext>Created attachment 66942
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>276074</commentid>
    <comment_count>13</comment_count>
    <who name="Mihai Parparita">mihaip</who>
    <bug_when>2010-09-08 14:30:31 -0700</bug_when>
    <thetext>(In reply to comment #9)
&gt; I&apos;ll notice when the updated one is posted, I promise.  :)

Brady, I&apos;ll hold you to this, but could you not actually flip the review bit till the EWS bots have had a chance to run? It looks like there were cross-platform troubles with past versions of this patch.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>276202</commentid>
    <comment_count>14</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2010-09-08 17:27:34 -0700</bug_when>
    <thetext>Attachment 66942 did not build on gtk:
Build output: http://queues.webkit.org/results/3924289</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>276312</commentid>
    <comment_count>15</comment_count>
      <attachid>66996</attachid>
    <who name="Mihai Parparita">mihaip</who>
    <bug_when>2010-09-08 22:20:52 -0700</bug_when>
    <thetext>Created attachment 66996
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>276313</commentid>
    <comment_count>16</comment_count>
    <who name="Mihai Parparita">mihaip</who>
    <bug_when>2010-09-08 22:22:20 -0700</bug_when>
    <thetext>New version of the patch should hopefully build with GTK (as of http://trac.webkit.org/changeset/63324 derived sources have to be listed in GNUmakefile.am).</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>276844</commentid>
    <comment_count>17</comment_count>
    <who name="Mihai Parparita">mihaip</who>
    <bug_when>2010-09-09 16:41:05 -0700</bug_when>
    <thetext>New version of the patch seems to build on GTK (and other platforms). The Windows EWS bot rejected it because it couldn&apos;t apply the patch, but based on https://webkit-commit-queue.appspot.com/queue-status/win-ews it seems to do that a lot, so I&apos;m not going to read too much into it.

Brady, mind r+/cq+-ing this?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>278325</commentid>
    <comment_count>18</comment_count>
    <who name="Brady Eidson">beidson</who>
    <bug_when>2010-09-13 11:20:53 -0700</bug_when>
    <thetext>(In reply to comment #17)
&gt; New version of the patch seems to build on GTK (and other platforms). The Windows EWS bot rejected it because it couldn&apos;t apply the patch, but based on https://webkit-commit-queue.appspot.com/queue-status/win-ews it seems to do that a lot, so I&apos;m not going to read too much into it.
&gt; 
&gt; Brady, mind r+/cq+-ing this?

T&apos;was on vacation till this morning, taking a look shortly.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>278529</commentid>
    <comment_count>19</comment_count>
      <attachid>66996</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2010-09-13 15:30:47 -0700</bug_when>
    <thetext>Comment on attachment 66996
Patch

Rejecting patch 66996 from commit-queue.

Failed to run &quot;[u&apos;/Users/eseidel/Projects/CommitQueue/WebKitTools/Scripts/svn-apply&apos;, u&apos;--reviewer&apos;, u&apos;Brady Eidson&apos;, u&apos;--force&apos;]&quot; exit_code: 1
Last 500 characters of output:
23018.
2 out of 7 hunks FAILED -- saving rejects to file WebCore/WebCore.xcodeproj/project.pbxproj.rej
patching file WebCore/bindings/js/JSEventCustom.cpp
patching file WebCore/bindings/v8/custom/V8EventCustom.cpp
patching file WebCore/dom/Document.cpp
Hunk #2 succeeded at 4622 (offset -31 lines).
patching file WebCore/dom/Event.cpp
patching file WebCore/dom/Event.h
patching file WebCore/dom/HashChangeEvent.h
patching file WebCore/dom/HashChangeEvent.idl
patching file WebCore/page/DOMWindow.idl

Full output: http://queues.webkit.org/results/3921439</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>278588</commentid>
    <comment_count>20</comment_count>
      <attachid>67492</attachid>
    <who name="Mihai Parparita">mihaip</who>
    <bug_when>2010-09-13 17:21:01 -0700</bug_when>
    <thetext>Created attachment 67492
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>278589</commentid>
    <comment_count>21</comment_count>
    <who name="Mihai Parparita">mihaip</who>
    <bug_when>2010-09-13 17:22:50 -0700</bug_when>
    <thetext>I&apos;ve uploaded a new version of the patch that should merge cleanly. Brady (or Darin), would you mind landing this for me, so that it doesn&apos;t have to sit in the commit queue for hours and risk getting a merge failure again?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>281916</commentid>
    <comment_count>22</comment_count>
      <attachid>68158</attachid>
    <who name="Mihai Parparita">mihaip</who>
    <bug_when>2010-09-20 17:01:14 -0700</bug_when>
    <thetext>Created attachment 68158
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>281918</commentid>
    <comment_count>23</comment_count>
    <who name="Mihai Parparita">mihaip</who>
    <bug_when>2010-09-20 17:03:24 -0700</bug_when>
    <thetext>Even newer version of the patch that should merge cleanly. I can land this myself now (got SVN access today) if I can get another r+.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>281934</commentid>
    <comment_count>24</comment_count>
      <attachid>68158</attachid>
    <who name="Dimitri Glazkov (Google)">dglazkov</who>
    <bug_when>2010-09-20 17:12:27 -0700</bug_when>
    <thetext>Comment on attachment 68158
Patch

ok.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>281938</commentid>
    <comment_count>25</comment_count>
      <attachid>68158</attachid>
    <who name="Mihai Parparita">mihaip</who>
    <bug_when>2010-09-20 17:22:25 -0700</bug_when>
    <thetext>Comment on attachment 68158
Patch

Clearing flags on attachment: 68158

Committed r67898: &lt;http://trac.webkit.org/changeset/67898&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>281939</commentid>
    <comment_count>26</comment_count>
    <who name="Mihai Parparita">mihaip</who>
    <bug_when>2010-09-20 17:22:32 -0700</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>281966</commentid>
    <comment_count>27</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2010-09-20 17:48:39 -0700</bug_when>
    <thetext>http://trac.webkit.org/changeset/67898 might have broken Qt Linux Release</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>281968</commentid>
    <comment_count>28</comment_count>
    <who name="Mihai Parparita">mihaip</who>
    <bug_when>2010-09-20 17:50:18 -0700</bug_when>
    <thetext>(In reply to comment #27)
&gt; http://trac.webkit.org/changeset/67898 might have broken Qt Linux Release

It broke Windows too (attempted to fix that with http://trac.webkit.org/changeset/67901).

The Qt failures look like Qt expectations that need to be updated (they have their own expectations of the tests that this patch touched). I&apos;ll attempt to rebaseline.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>282011</commentid>
    <comment_count>29</comment_count>
    <who name="Mihai Parparita">mihaip</who>
    <bug_when>2010-09-20 18:41:40 -0700</bug_when>
    <thetext>(In reply to comment #28)
&gt; It broke Windows too (attempted to fix that with http://trac.webkit.org/changeset/67901).

Windows build is fixed.
 
&gt; The Qt failures look like Qt expectations that need to be updated (they have their own expectations of the tests that this patch touched). I&apos;ll attempt to rebaseline.

GTK and Qt are rebaselined with http://trac.webkit.org/changeset/67907. Windows may need a rebaseline too, but the bot is really behind.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>55643</attachid>
            <date>2010-05-10 19:18:18 -0700</date>
            <delta_ts>2010-05-10 23:01:47 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>36335.patch</filename>
            <type>text/plain</type>
            <size>28133</size>
            <attacher name="Steven Lai">s3lance</attacher>
            
              <data encoding="base64">SW5kZXg6IFdlYkNvcmUvQ2hhbmdlTG9nCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYkNvcmUvQ2hhbmdlTG9n
CShyZXZpc2lvbiA1OTExOCkKKysrIFdlYkNvcmUvQ2hhbmdlTG9nCSh3b3JraW5nIGNvcHkpCkBA
IC0xLDMgKzEsMzcgQEAKKzIwMTAtMDUtMTAgIFN0ZXZlbiBMYWkgIDxzdGV2ZW5fbGFpQGFzaWEu
YXBwbGUuY29tPgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAg
ICAgIEhhc2hjaGFuZ2UgZXZlbnQgaXMgbm8gbG9uZ2VyIGEgc2ltcGxlIGV2ZW50LCBuZWVkcyB0
byBiZSBpdHMgb3duIGludGVyZmFjZQorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9z
aG93X2J1Zy5jZ2k/aWQ9MzYzMzUKKyAgICAgICAgPHJkYXI6Ly9wcm9ibGVtLzc3Njk3Nzk+CisK
KyAgICAgICAgUkVHUkVTU0lPTig1ODczNj8pOiBmYXN0L2xvYWRlci9zdGF0ZW9iamVjdHMvZG9j
dW1lbnQtZGVzdHJveWVkLW5hdmlnYXRlLWJhY2std2l0aC1mcmFnbWVudC1zY3JvbGwuaHRtbCBm
YWlscyBpbnRlcm1pdHRlbnRseQorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93
X2J1Zy5jZ2k/aWQ9Mzg3NTQKKworICAgICAgICAqIERlcml2ZWRTb3VyY2VzLmNwcDoKKyAgICAg
ICAgKiBEZXJpdmVkU291cmNlcy5tYWtlOgorICAgICAgICAqIEdOVW1ha2VmaWxlLmFtOgorICAg
ICAgICAqIFdlYkNvcmUuZ3lwaToKKyAgICAgICAgKiBXZWJDb3JlLnZjcHJvai9XZWJDb3JlLnZj
cHJvajoKKyAgICAgICAgKiBXZWJDb3JlLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2o6CisgICAg
ICAgICogYmluZGluZ3MvanMvSlNFdmVudEN1c3RvbS5jcHA6CisgICAgICAgIChXZWJDb3JlOjp0
b0pTKToKKyAgICAgICAgKiBkb20vRG9jdW1lbnQuY3BwOgorICAgICAgICAoV2ViQ29yZTo6RG9j
dW1lbnQ6OmVucXVldWVIYXNoY2hhbmdlRXZlbnQpOgorICAgICAgICAqIGRvbS9FdmVudC5jcHA6
CisgICAgICAgIChXZWJDb3JlOjpFdmVudDo6aXNIYXNoQ2hhbmdlRXZlbnQpOgorICAgICAgICAq
IGRvbS9FdmVudC5oOgorICAgICAgICAqIGRvbS9IYXNoQ2hhbmdlRXZlbnQuaDogQWRkZWQuCisg
ICAgICAgIChXZWJDb3JlOjpIYXNoQ2hhbmdlRXZlbnQ6OmlzSGFzaENoYW5nZUV2ZW50KToKKyAg
ICAgICAgKFdlYkNvcmU6Okhhc2hDaGFuZ2VFdmVudDo6Y3JlYXRlKToKKyAgICAgICAgKFdlYkNv
cmU6Okhhc2hDaGFuZ2VFdmVudDo6aW5pdEhhc2hDaGFuZ2VFdmVudCk6CisgICAgICAgIChXZWJD
b3JlOjpIYXNoQ2hhbmdlRXZlbnQ6Om9sZFVSTCk6CisgICAgICAgIChXZWJDb3JlOjpIYXNoQ2hh
bmdlRXZlbnQ6Om5ld1VSTCk6CisgICAgICAgIChXZWJDb3JlOjpIYXNoQ2hhbmdlRXZlbnQ6Okhh
c2hDaGFuZ2VFdmVudCk6CisgICAgICAgICogZG9tL0hhc2hDaGFuZ2VFdmVudC5pZGw6IEFkZGVk
LgorICAgICAgICAqIHBhZ2UvRE9NV2luZG93LmlkbDoKKwogMjAxMC0wNS0xMCAgRHVtaXRydSBE
YW5pbGl1YyAgPGR1bWlAY2hyb21pdW0ub3JnPgogCiAgICAgICAgIFJldmlld2VkIGJ5IEJyYWR5
IEVpZHNvbi4KSW5kZXg6IFdlYkNvcmUvRGVyaXZlZFNvdXJjZXMuY3BwCj09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0t
IFdlYkNvcmUvRGVyaXZlZFNvdXJjZXMuY3BwCShyZXZpc2lvbiA1OTA5NCkKKysrIFdlYkNvcmUv
RGVyaXZlZFNvdXJjZXMuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC05MSw2ICs5MSw3IEBACiAjaW5j
bHVkZSAiSlNGaWxlTGlzdC5jcHAiCiAjaW5jbHVkZSAiSlNHZW9sb2NhdGlvbi5jcHAiCiAjaW5j
bHVkZSAiSlNHZW9wb3NpdGlvbi5jcHAiCisjaW5jbHVkZSAiSlNIYXNoQ2hhbmdlRXZlbnQuY3Bw
IgogI2luY2x1ZGUgIkpTSGlzdG9yeS5jcHAiCiAjaW5jbHVkZSAiSlNIVE1MQWxsQ29sbGVjdGlv
bi5jcHAiCiAjaW5jbHVkZSAiSlNIVE1MQW5jaG9yRWxlbWVudC5jcHAiCkluZGV4OiBXZWJDb3Jl
L0Rlcml2ZWRTb3VyY2VzLm1ha2UKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gV2ViQ29yZS9EZXJpdmVkU291cmNl
cy5tYWtlCShyZXZpc2lvbiA1OTA5NCkKKysrIFdlYkNvcmUvRGVyaXZlZFNvdXJjZXMubWFrZQko
d29ya2luZyBjb3B5KQpAQCAtMTM1LDYgKzEzNSw3IEBAIERPTV9DTEFTU0VTID0gXAogICAgIEZp
bGVMaXN0IFwKICAgICBHZW9sb2NhdGlvbiBcCiAgICAgR2VvcG9zaXRpb24gXAorICAgIEhhc2hD
aGFuZ2VFdmVudCBcCiAgICAgSFRNTEFsbENvbGxlY3Rpb24gXAogICAgIEhUTUxBbmNob3JFbGVt
ZW50IFwKICAgICBIVE1MQXBwbGV0RWxlbWVudCBcCkluZGV4OiBXZWJDb3JlL0dOVW1ha2VmaWxl
LmFtCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT0KLS0tIFdlYkNvcmUvR05VbWFrZWZpbGUuYW0JKHJldmlzaW9uIDU5MDk0
KQorKysgV2ViQ29yZS9HTlVtYWtlZmlsZS5hbQkod29ya2luZyBjb3B5KQpAQCAtMTQ2LDYgKzE0
Niw3IEBAIElETF9CSU5ESU5HUyArPSBcCiAJV2ViQ29yZS9kb20vRXJyb3JFdmVudC5pZGwgXAog
CVdlYkNvcmUvZG9tL0V2ZW50LmlkbCBcCiAJV2ViQ29yZS9kb20vRXZlbnRFeGNlcHRpb24uaWRs
IFwKKwlXZWJDb3JlL2RvbS9IYXNoQ2hhbmdlRXZlbnQuaWRsIFwKIAlXZWJDb3JlL2RvbS9LZXli
b2FyZEV2ZW50LmlkbCBcCiAJV2ViQ29yZS9kb20vTWVzc2FnZUNoYW5uZWwuaWRsIFwKIAlXZWJD
b3JlL2RvbS9NZXNzYWdlRXZlbnQuaWRsIFwKQEAgLTc5NSw2ICs3OTYsNyBAQCB3ZWJjb3JlX3Nv
dXJjZXMgKz0gXAogCVdlYkNvcmUvZG9tL0V4Y2VwdGlvbkNvZGUuaCBcCiAJV2ViQ29yZS9kb20v
SW5wdXRFbGVtZW50LmNwcCBcCiAJV2ViQ29yZS9kb20vSW5wdXRFbGVtZW50LmggXAorCVdlYkNv
cmUvZG9tL0hhc2hDaGFuZ2VFdmVudC5oIFwKIAlXZWJDb3JlL2RvbS9LZXlib2FyZEV2ZW50LmNw
cCBcCiAJV2ViQ29yZS9kb20vS2V5Ym9hcmRFdmVudC5oIFwKIAlXZWJDb3JlL2RvbS9NYXBwZWRB
dHRyaWJ1dGUuY3BwIFwKSW5kZXg6IFdlYkNvcmUvV2ViQ29yZS5neXBpCj09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0t
IFdlYkNvcmUvV2ViQ29yZS5neXBpCShyZXZpc2lvbiA1OTA5NCkKKysrIFdlYkNvcmUvV2ViQ29y
ZS5neXBpCSh3b3JraW5nIGNvcHkpCkBAIC01MSw2ICs1MSw3IEBACiAgICAgICAgICAgICAnZG9t
L0V2ZW50RXhjZXB0aW9uLmlkbCcsCiAgICAgICAgICAgICAnZG9tL0V2ZW50TGlzdGVuZXIuaWRs
JywKICAgICAgICAgICAgICdkb20vRXZlbnRUYXJnZXQuaWRsJywKKyAgICAgICAgICAgICdkb20v
SGFzaENoYW5nZUV2ZW50LmlkbCcsCiAgICAgICAgICAgICAnZG9tL0tleWJvYXJkRXZlbnQuaWRs
JywKICAgICAgICAgICAgICdkb20vTWVzc2FnZUNoYW5uZWwuaWRsJywKICAgICAgICAgICAgICdk
b20vTWVzc2FnZUV2ZW50LmlkbCcsCkBAIC0xMTI3LDYgKzExMjgsNyBAQAogICAgICAgICAgICAg
J2RvbS9FeGNlcHRpb25Db2RlLmgnLAogICAgICAgICAgICAgJ2RvbS9JbnB1dEVsZW1lbnQuY3Bw
JywKICAgICAgICAgICAgICdkb20vSW5wdXRFbGVtZW50LmgnLAorICAgICAgICAgICAgJ2RvbS9I
YXNoQ2hhbmdlRXZlbnQuaCcsCiAgICAgICAgICAgICAnZG9tL0tleWJvYXJkRXZlbnQuY3BwJywK
ICAgICAgICAgICAgICdkb20vS2V5Ym9hcmRFdmVudC5oJywKICAgICAgICAgICAgICdkb20vTWFw
cGVkQXR0cmlidXRlLmNwcCcsCkluZGV4OiBXZWJDb3JlL1dlYkNvcmUudmNwcm9qL1dlYkNvcmUu
dmNwcm9qCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT0KLS0tIFdlYkNvcmUvV2ViQ29yZS52Y3Byb2ovV2ViQ29yZS52Y3By
b2oJKHJldmlzaW9uIDU5MDk0KQorKysgV2ViQ29yZS9XZWJDb3JlLnZjcHJvai9XZWJDb3JlLnZj
cHJvagkod29ya2luZyBjb3B5KQpAQCAtMzkyNSw2ICszOTI1LDYyIEBACiAJCQkJPg0KIAkJCTwv
RmlsZT4NCiAJCQk8RmlsZQ0KKwkJCQlSZWxhdGl2ZVBhdGg9IiQoV2ViS2l0T3V0cHV0RGlyKVxv
YmpcJChQcm9qZWN0TmFtZSlcRGVyaXZlZFNvdXJjZXNcSlNIYXNoQ2hhbmdlRXZlbnQuY3BwIg0K
KwkJCQk+DQorCQkJCTxGaWxlQ29uZmlndXJhdGlvbg0KKwkJCQkJTmFtZT0iRGVidWd8V2luMzIi
DQorCQkJCQlFeGNsdWRlZEZyb21CdWlsZD0idHJ1ZSINCisJCQkJCT4NCisJCQkJCTxUb29sDQor
CQkJCQkJTmFtZT0iVkNDTENvbXBpbGVyVG9vbCINCisJCQkJCS8+DQorCQkJCTwvRmlsZUNvbmZp
Z3VyYXRpb24+DQorCQkJCTxGaWxlQ29uZmlndXJhdGlvbg0KKwkJCQkJTmFtZT0iUmVsZWFzZXxX
aW4zMiINCisJCQkJCUV4Y2x1ZGVkRnJvbUJ1aWxkPSJ0cnVlIg0KKwkJCQkJPg0KKwkJCQkJPFRv
b2wNCisJCQkJCQlOYW1lPSJWQ0NMQ29tcGlsZXJUb29sIg0KKwkJCQkJLz4NCisJCQkJPC9GaWxl
Q29uZmlndXJhdGlvbj4NCisJCQkJPEZpbGVDb25maWd1cmF0aW9uDQorCQkJCQlOYW1lPSJEZWJ1
Z19JbnRlcm5hbHxXaW4zMiINCisJCQkJCUV4Y2x1ZGVkRnJvbUJ1aWxkPSJ0cnVlIg0KKwkJCQkJ
Pg0KKwkJCQkJPFRvb2wNCisJCQkJCQlOYW1lPSJWQ0NMQ29tcGlsZXJUb29sIg0KKwkJCQkJLz4N
CisJCQkJPC9GaWxlQ29uZmlndXJhdGlvbj4NCisJCQkJPEZpbGVDb25maWd1cmF0aW9uDQorCQkJ
CQlOYW1lPSJEZWJ1Z19DYWlyb3xXaW4zMiINCisJCQkJCUV4Y2x1ZGVkRnJvbUJ1aWxkPSJ0cnVl
Ig0KKwkJCQkJPg0KKwkJCQkJPFRvb2wNCisJCQkJCQlOYW1lPSJWQ0NMQ29tcGlsZXJUb29sIg0K
KwkJCQkJLz4NCisJCQkJPC9GaWxlQ29uZmlndXJhdGlvbj4NCisJCQkJPEZpbGVDb25maWd1cmF0
aW9uDQorCQkJCQlOYW1lPSJSZWxlYXNlX0NhaXJvfFdpbjMyIg0KKwkJCQkJRXhjbHVkZWRGcm9t
QnVpbGQ9InRydWUiDQorCQkJCQk+DQorCQkJCQk8VG9vbA0KKwkJCQkJCU5hbWU9IlZDQ0xDb21w
aWxlclRvb2wiDQorCQkJCQkvPg0KKwkJCQk8L0ZpbGVDb25maWd1cmF0aW9uPg0KKwkJCQk8Rmls
ZUNvbmZpZ3VyYXRpb24NCisJCQkJCU5hbWU9IkRlYnVnX0FsbHxXaW4zMiINCisJCQkJCUV4Y2x1
ZGVkRnJvbUJ1aWxkPSJ0cnVlIg0KKwkJCQkJPg0KKwkJCQkJPFRvb2wNCisJCQkJCQlOYW1lPSJW
Q0NMQ29tcGlsZXJUb29sIg0KKwkJCQkJLz4NCisJCQkJPC9GaWxlQ29uZmlndXJhdGlvbj4NCisJ
CQk8L0ZpbGU+DQorCQkJPEZpbGUNCisJCQkJUmVsYXRpdmVQYXRoPSIkKFdlYktpdE91dHB1dERp
cilcb2JqXCQoUHJvamVjdE5hbWUpXERlcml2ZWRTb3VyY2VzXEpTSGFzaENoYW5nZUV2ZW50Lmgi
DQorCQkJCT4NCisJCQk8L0ZpbGU+DQorCQkJPEZpbGUNCiAJCQkJUmVsYXRpdmVQYXRoPSIkKFdl
YktpdE91dHB1dERpcilcb2JqXCQoUHJvamVjdE5hbWUpXERlcml2ZWRTb3VyY2VzXEpTSGlzdG9y
eS5jcHAiDQogCQkJCT4NCiAJCQkJPEZpbGVDb25maWd1cmF0aW9uDQpAQCAtMjk0NjksNiArMjk1
MjUsMTAgQEAKIAkJCQk+DQogCQkJPC9GaWxlPg0KIAkJCTxGaWxlDQorCQkJCVJlbGF0aXZlUGF0
aD0iLi5cZG9tXEhhc2hDaGFuZ2VFdmVudC5oIg0KKwkJCQk+DQorCQkJPC9GaWxlPg0KKwkJCTxG
aWxlDQogCQkJCVJlbGF0aXZlUGF0aD0iLi5cZG9tXEtleWJvYXJkRXZlbnQuY3BwIg0KIAkJCQk+
DQogCQkJPC9GaWxlPg0KSW5kZXg6IFdlYkNvcmUvV2ViQ29yZS54Y29kZXByb2ovcHJvamVjdC5w
Ynhwcm9qCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT0KLS0tIFdlYkNvcmUvV2ViQ29yZS54Y29kZXByb2ovcHJvamVjdC5w
Ynhwcm9qCShyZXZpc2lvbiA1OTA5NCkKKysrIFdlYkNvcmUvV2ViQ29yZS54Y29kZXByb2ovcHJv
amVjdC5wYnhwcm9qCSh3b3JraW5nIGNvcHkpCkBAIC0xMzY1LDYgKzEzNjUsOSBAQAogCQk4NDVF
NzJGQzBGRDI2MjM5MDBBODdENzkgLyogU1ZHRmlsdGVyLmggaW4gSGVhZGVycyAqLyA9IHtpc2Eg
PSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA4NDVFNzJGQTBGRDI2MjM5MDBBODdENzkgLyogU1ZH
RmlsdGVyLmggKi87IH07CiAJCTg0ODAxOTU0MTA4QkFGQjMwMENCMkIxRiAvKiBGRUdhdXNzaWFu
Qmx1ci5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA4
NDgwMTk1MjEwOEJBRkIzMDBDQjJCMUYgLyogRkVHYXVzc2lhbkJsdXIuY3BwICovOyB9OwogCQk4
NDgwMTk1NTEwOEJBRkIzMDBDQjJCMUYgLyogRkVHYXVzc2lhbkJsdXIuaCBpbiBIZWFkZXJzICov
ID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDg0ODAxOTUzMTA4QkFGQjMwMENCMkIx
RiAvKiBGRUdhdXNzaWFuQmx1ci5oICovOyB9OworCQk4NDgyQjc0NjExOThDMzU0MDBCRkIwMDUg
LyogSGFzaENoYW5nZUV2ZW50LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7
IGZpbGVSZWYgPSAyNDQyQkJGODExOTRDOUQzMDBENDk0NjkgLyogSGFzaENoYW5nZUV2ZW50Lmgg
Ki87IH07CisJCTg0ODJCNzUxMTE5OENCNkIwMEJGQjAwNSAvKiBKU0hhc2hDaGFuZ2VFdmVudC5j
cHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA4NDgyQjc0
RjExOThDQjZCMDBCRkIwMDUgLyogSlNIYXNoQ2hhbmdlRXZlbnQuY3BwICovOyB9OworCQk4NDgy
Qjc1MjExOThDQjZCMDBCRkIwMDUgLyogSlNIYXNoQ2hhbmdlRXZlbnQuaCBpbiBIZWFkZXJzICov
ID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDg0ODJCNzUwMTE5OENCNkIwMEJGQjAw
NSAvKiBKU0hhc2hDaGFuZ2VFdmVudC5oICovOyB9OwogCQk4NDg1MjI3QjExOTAxNjJDMDA2RURD
N0YgLyogSlNTVkdIS2VybkVsZW1lbnQuY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVp
bGRGaWxlOyBmaWxlUmVmID0gODQ4NTIyNzcxMTkwMTYyQzAwNkVEQzdGIC8qIEpTU1ZHSEtlcm5F
bGVtZW50LmNwcCAqLzsgfTsKIAkJODQ4NTIyN0MxMTkwMTYyQzAwNkVEQzdGIC8qIEpTU1ZHSEtl
cm5FbGVtZW50LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYg
PSA4NDg1MjI3ODExOTAxNjJDMDA2RURDN0YgLyogSlNTVkdIS2VybkVsZW1lbnQuaCAqLzsgfTsK
IAkJODQ4NTIyN0QxMTkwMTYyQzAwNkVEQzdGIC8qIEpTU1ZHVktlcm5FbGVtZW50LmNwcCBpbiBT
b3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDg0ODUyMjc5MTE5MDE2
MkMwMDZFREM3RiAvKiBKU1NWR1ZLZXJuRWxlbWVudC5jcHAgKi87IH07CkBAIC02MDYxLDYgKzYw
NjQsNyBAQAogCQkxQ0Y2QkUxMzBFOUJCNDY3MDAyNUUxQ0QgLyogT2JqQ05vZGVGaWx0ZXJDb25k
aXRpb24uaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBs
YXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gT2JqQ05vZGVGaWx0ZXJD
b25kaXRpb24uaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJMUNGQUUzMjIwQTZENkEz
RjAwMzI1OTNEIC8qIGxpYm9iamMuZHlsaWIgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsg
bGFzdEtub3duRmlsZVR5cGUgPSAiY29tcGlsZWQubWFjaC1vLmR5bGliIjsgbmFtZSA9IGxpYm9i
amMuZHlsaWI7IHBhdGggPSAvdXNyL2xpYi9saWJvYmpjLmR5bGliOyBzb3VyY2VUcmVlID0gIjxh
YnNvbHV0ZT4iOyB9OwogCQkyMjhDMjg0NDEwRDgyNTAwMDA5RDBEMEUgLyogU2NyaXB0V3JhcHBh
YmxlLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFz
dEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFNjcmlwdFdyYXBwYWJsZS5o
OyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQkyNDQyQkJGODExOTRDOUQzMDBENDk0Njkg
LyogSGFzaENoYW5nZUV2ZW50LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVu
Y29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEhh
c2hDaGFuZ2VFdmVudC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQkyNEY1NEVBQTEw
MUZFOTE0MDAwQUU3NDEgLyogQXBwbGljYXRpb25DYWNoZUhvc3QuY3BwICovID0ge2lzYSA9IFBC
WEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291
cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gQXBwbGljYXRpb25DYWNoZUhvc3QuY3BwOyBzb3VyY2VU
cmVlID0gIjxncm91cD4iOyB9OwogCQkyNEY1NEVBQjEwMUZFOTE0MDAwQUU3NDEgLyogQXBwbGlj
YXRpb25DYWNoZUhvc3QuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rp
bmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gQXBwbGlj
YXRpb25DYWNoZUhvc3QuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJMjU0MkY0RDgx
MTY2QzI1QTAwRTg5QTg2IC8qIFVzZXJHZXN0dXJlSW5kaWNhdG9yLmNwcCAqLyA9IHtpc2EgPSBQ
QlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNv
dXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IFVzZXJHZXN0dXJlSW5kaWNhdG9yLmNwcDsgc291cmNl
VHJlZSA9ICI8Z3JvdXA+IjsgfTsKQEAgLTY5NTAsNiArNjk1NCw5IEBACiAJCTg0NUU3MkZBMEZE
MjYyMzkwMEE4N0Q3OSAvKiBTVkdGaWx0ZXIuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNl
OyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBw
YXRoID0gU1ZHRmlsdGVyLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTg0ODAxOTUy
MTA4QkFGQjMwMENCMkIxRiAvKiBGRUdhdXNzaWFuQmx1ci5jcHAgKi8gPSB7aXNhID0gUEJYRmls
ZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vj
b2RlLmNwcC5jcHA7IG5hbWUgPSBGRUdhdXNzaWFuQmx1ci5jcHA7IHBhdGggPSBmaWx0ZXJzL0ZF
R2F1c3NpYW5CbHVyLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJODQ4MDE5NTMx
MDhCQUZCMzAwQ0IyQjFGIC8qIEZFR2F1c3NpYW5CbHVyLmggKi8gPSB7aXNhID0gUEJYRmlsZVJl
ZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2Rl
LmMuaDsgbmFtZSA9IEZFR2F1c3NpYW5CbHVyLmg7IHBhdGggPSBmaWx0ZXJzL0ZFR2F1c3NpYW5C
bHVyLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTg0ODJCNzQ0MTE5OEMzMkUwMEJG
QjAwNSAvKiBIYXNoQ2hhbmdlRXZlbnQuaWRsICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7
IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gdGV4dDsgcGF0aCA9IEhhc2hD
aGFuZ2VFdmVudC5pZGw7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTg0ODJCNzRGMTE5
OENCNkIwMEJGQjAwNSAvKiBKU0hhc2hDaGFuZ2VFdmVudC5jcHAgKi8gPSB7aXNhID0gUEJYRmls
ZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vj
b2RlLmNwcC5jcHA7IHBhdGggPSBKU0hhc2hDaGFuZ2VFdmVudC5jcHA7IHNvdXJjZVRyZWUgPSAi
PGdyb3VwPiI7IH07CisJCTg0ODJCNzUwMTE5OENCNkIwMEJGQjAwNSAvKiBKU0hhc2hDaGFuZ2VF
dmVudC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxh
c3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBKU0hhc2hDaGFuZ2VFdmVu
dC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQk4NDg1MjI3NzExOTAxNjJDMDA2RURD
N0YgLyogSlNTVkdIS2VybkVsZW1lbnQuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7
IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3Bw
OyBwYXRoID0gSlNTVkdIS2VybkVsZW1lbnQuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9
OwogCQk4NDg1MjI3ODExOTAxNjJDMDA2RURDN0YgLyogSlNTVkdIS2VybkVsZW1lbnQuaCAqLyA9
IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxl
VHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gSlNTVkdIS2VybkVsZW1lbnQuaDsgc291cmNl
VHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJODQ4NTIyNzkxMTkwMTYyQzAwNkVEQzdGIC8qIEpTU1ZH
Vktlcm5FbGVtZW50LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rp
bmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEpT
U1ZHVktlcm5FbGVtZW50LmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKQEAgLTE0MTgw
LDYgKzE0MTg3LDggQEAKIAkJCQkxNEU4Mzc4RDA5Rjg1RDRGMDBCODVBRTQgLyogSlNFdmVudC5o
ICovLAogCQkJCUJDNjBEOUJEMEQyQTI2OUEwMEI5OTE4RiAvKiBKU0V2ZW50RXhjZXB0aW9uLmNw
cCAqLywKIAkJCQlCQzYwRDlCRTBEMkEyNjlBMDBCOTkxOEYgLyogSlNFdmVudEV4Y2VwdGlvbi5o
ICovLAorCQkJCTg0ODJCNzRGMTE5OENCNkIwMEJGQjAwNSAvKiBKU0hhc2hDaGFuZ2VFdmVudC5j
cHAgKi8sCisJCQkJODQ4MkI3NTAxMTk4Q0I2QjAwQkZCMDA1IC8qIEpTSGFzaENoYW5nZUV2ZW50
LmggKi8sCiAJCQkJQTg2NjI5Q0UwOURBMkI0NzAwOTYzM0E1IC8qIEpTS2V5Ym9hcmRFdmVudC5j
cHAgKi8sCiAJCQkJQTg2NjI5Q0QwOURBMkI0NzAwOTYzM0E1IC8qIEpTS2V5Ym9hcmRFdmVudC5o
ICovLAogCQkJCUUxMDc0MDBCMEU3N0JEQzAwMDMzQUYyNCAvKiBKU01lc3NhZ2VDaGFubmVsLmNw
cCAqLywKQEAgLTE2Mjg5LDYgKzE2Mjk4LDggQEAKIAkJRjUyM0QzMjQwMkRFNDQ3ODAxODYzNUNB
IC8qIGRvbSAqLyA9IHsKIAkJCWlzYSA9IFBCWEdyb3VwOwogCQkJY2hpbGRyZW4gPSAoCisJCQkJ
ODQ4MkI3NDQxMTk4QzMyRTAwQkZCMDA1IC8qIEhhc2hDaGFuZ2VFdmVudC5pZGwgKi8sCisJCQkJ
MjQ0MkJCRjgxMTk0QzlEMzAwRDQ5NDY5IC8qIEhhc2hDaGFuZ2VFdmVudC5oICovLAogCQkJCUUx
QzRERTZEMEVBNzVDNjUwMDIzQ0NENiAvKiBBY3RpdmVET01PYmplY3QuY3BwICovLAogCQkJCUUx
QzRERTY4MEVBNzVDMUUwMDIzQ0NENiAvKiBBY3RpdmVET01PYmplY3QuaCAqLywKIAkJCQlBOEM0
QTdGQzA5RDU2MzI3MDAwM0FDOEQgLyogQXR0ci5jcHAgKi8sCkBAIC0xOTEzMyw2ICsxOTE0NCw4
IEBACiAJCQkJQzVGNEY0MTExMTkzMDZDMDAwRkRGQUREIC8qIEpTSW5kZXhlZERhdGFiYXNlUmVx
dWVzdC5oIGluIEhlYWRlcnMgKi8sCiAJCQkJNkU5NkJCMUMxMTk4NkVFMjAwN0Q5NENEIC8qIFdl
YkdMSW50ZWdyYWxUeXBlZEFycmF5QmFzZS5oIGluIEhlYWRlcnMgKi8sCiAJCQkJNkU5NkJCMUQx
MTk4NkVFMjAwN0Q5NENEIC8qIFdlYkdMVHlwZWRBcnJheUJhc2UuaCBpbiBIZWFkZXJzICovLAor
CQkJCTg0ODJCNzQ2MTE5OEMzNTQwMEJGQjAwNSAvKiBIYXNoQ2hhbmdlRXZlbnQuaCBpbiBIZWFk
ZXJzICovLAorCQkJCTg0ODJCNzUyMTE5OENCNkIwMEJGQjAwNSAvKiBKU0hhc2hDaGFuZ2VFdmVu
dC5oIGluIEhlYWRlcnMgKi8sCiAJCQkpOwogCQkJcnVuT25seUZvckRlcGxveW1lbnRQb3N0cHJv
Y2Vzc2luZyA9IDA7CiAJCX07CkBAIC0yMTM5Nyw2ICsyMTQxMCw3IEBACiAJCQkJQzVGNEY0MEMx
MTkzMDZBQzAwRkRGQUREIC8qIEpTSURCUmVxdWVzdC5jcHAgaW4gU291cmNlcyAqLywKIAkJCQlD
NUY0RjQxMDExOTMwNkMwMDBGREZBREQgLyogSlNJbmRleGVkRGF0YWJhc2VSZXF1ZXN0LmNwcCBp
biBTb3VyY2VzICovLAogCQkJCUM1OTU2Njc4MTE5MzI0QzYwMEZEQ0U0NyAvKiBKU0lEQlJlcXVl
c3RDdXN0b20uY3BwIGluIFNvdXJjZXMgKi8sCisJCQkJODQ4MkI3NTExMTk4Q0I2QjAwQkZCMDA1
IC8qIEpTSGFzaENoYW5nZUV2ZW50LmNwcCBpbiBTb3VyY2VzICovLAogCQkJKTsKIAkJCXJ1bk9u
bHlGb3JEZXBsb3ltZW50UG9zdHByb2Nlc3NpbmcgPSAwOwogCQl9OwpJbmRleDogV2ViQ29yZS9i
aW5kaW5ncy9qcy9KU0V2ZW50Q3VzdG9tLmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBXZWJDb3JlL2JpbmRp
bmdzL2pzL0pTRXZlbnRDdXN0b20uY3BwCShyZXZpc2lvbiA1OTA5NCkKKysrIFdlYkNvcmUvYmlu
ZGluZ3MvanMvSlNFdmVudEN1c3RvbS5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTM4LDYgKzM4LDcg
QEAKICNpbmNsdWRlICJKU0N1c3RvbUV2ZW50LmgiCiAjaW5jbHVkZSAiSlNDb21wb3NpdGlvbkV2
ZW50LmgiCiAjaW5jbHVkZSAiSlNFcnJvckV2ZW50LmgiCisjaW5jbHVkZSAiSlNIYXNoQ2hhbmdl
RXZlbnQuaCIKICNpbmNsdWRlICJKU0tleWJvYXJkRXZlbnQuaCIKICNpbmNsdWRlICJKU01lc3Nh
Z2VFdmVudC5oIgogI2luY2x1ZGUgIkpTTW91c2VFdmVudC5oIgpAQCAtNTQsNiArNTUsNyBAQAog
I2luY2x1ZGUgIkpTWE1MSHR0cFJlcXVlc3RQcm9ncmVzc0V2ZW50LmgiCiAjaW5jbHVkZSAiQmVm
b3JlTG9hZEV2ZW50LmgiCiAjaW5jbHVkZSAiRXJyb3JFdmVudC5oIgorI2luY2x1ZGUgIkhhc2hD
aGFuZ2VFdmVudC5oIgogI2luY2x1ZGUgIktleWJvYXJkRXZlbnQuaCIKICNpbmNsdWRlICJNZXNz
YWdlRXZlbnQuaCIKICNpbmNsdWRlICJNb3VzZUV2ZW50LmgiCkBAIC0xNTMsNiArMTU1LDggQEAg
SlNWYWx1ZSB0b0pTKEV4ZWNTdGF0ZSogZXhlYywgSlNET01HbG9iYQogICAgIGVsc2UgaWYgKGV2
ZW50LT5pc0Vycm9yRXZlbnQoKSkKICAgICAgICAgd3JhcHBlciA9IENSRUFURV9ET01fT0JKRUNU
X1dSQVBQRVIoZXhlYywgZ2xvYmFsT2JqZWN0LCBFcnJvckV2ZW50LCBldmVudCk7CiAjZW5kaWYK
KyAgICBlbHNlIGlmIChldmVudC0+aXNIYXNoQ2hhbmdlRXZlbnQoKSkKKyAgICAgICAgd3JhcHBl
ciA9IENSRUFURV9ET01fT0JKRUNUX1dSQVBQRVIoZXhlYywgZ2xvYmFsT2JqZWN0LCBIYXNoQ2hh
bmdlRXZlbnQsIGV2ZW50KTsKICAgICBlbHNlIGlmIChldmVudC0+aXNQb3BTdGF0ZUV2ZW50KCkp
CiAgICAgICAgIHdyYXBwZXIgPSBDUkVBVEVfRE9NX09CSkVDVF9XUkFQUEVSKGV4ZWMsIGdsb2Jh
bE9iamVjdCwgUG9wU3RhdGVFdmVudCwgZXZlbnQpOwogICAgIGVsc2UgaWYgKGV2ZW50LT5pc0N1
c3RvbUV2ZW50KCkpCkluZGV4OiBXZWJDb3JlL2RvbS9Eb2N1bWVudC5jcHAKPT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQot
LS0gV2ViQ29yZS9kb20vRG9jdW1lbnQuY3BwCShyZXZpc2lvbiA1OTA5NCkKKysrIFdlYkNvcmUv
ZG9tL0RvY3VtZW50LmNwcAkod29ya2luZyBjb3B5KQpAQCAtNjAsNiArNjAsNyBAQAogI2luY2x1
ZGUgIkZyYW1lTG9hZGVyLmgiCiAjaW5jbHVkZSAiRnJhbWVUcmVlLmgiCiAjaW5jbHVkZSAiRnJh
bWVWaWV3LmgiCisjaW5jbHVkZSAiSGFzaENoYW5nZUV2ZW50LmgiCiAjaW5jbHVkZSAiSFRNTEFs
bENvbGxlY3Rpb24uaCIKICNpbmNsdWRlICJIVE1MQW5jaG9yRWxlbWVudC5oIgogI2luY2x1ZGUg
IkhUTUxCb2R5RWxlbWVudC5oIgpAQCAtNDg4MywxMSArNDg4NCw5IEBAIHZvaWQgRG9jdW1lbnQ6
OmVucXVldWVQYWdlc2hvd0V2ZW50KFBhZ2UKICAgICBkaXNwYXRjaFdpbmRvd0V2ZW50KFBhZ2VU
cmFuc2l0aW9uRXZlbnQ6OmNyZWF0ZShldmVudE5hbWVzKCkucGFnZXNob3dFdmVudCwgcGVyc2lz
dGVkKSwgdGhpcyk7CiB9CiAKLXZvaWQgRG9jdW1lbnQ6OmVucXVldWVIYXNoY2hhbmdlRXZlbnQo
Y29uc3QgU3RyaW5nJiAvKm9sZFVSTCovLCBjb25zdCBTdHJpbmcmIC8qbmV3VVJMKi8pCit2b2lk
IERvY3VtZW50OjplbnF1ZXVlSGFzaGNoYW5nZUV2ZW50KGNvbnN0IFN0cmluZyYgb2xkVVJMLCBj
b25zdCBTdHJpbmcmIG5ld1VSTCkKIHsKLSAgICAvLyBGSVhNRTogaHR0cHM6Ly9idWdzLndlYmtp
dC5vcmcvc2hvd19idWcuY2dpP2lkPTM2MzM1IEhhc2hjaGFuZ2UgZXZlbnQgaXMgbm93IGl0cyBv
d24gaW50ZXJmYWNlIGFuZCB0YWtlcyB0d28KLSAgICAvLyAgIFVSTCBhcmd1bWVudHMgd2hpY2gg
d2UgbmVlZCB0byBwYXNzIGluIGhlcmUuCi0gICAgZW5xdWV1ZUV2ZW50KEV2ZW50OjpjcmVhdGUo
ZXZlbnROYW1lcygpLmhhc2hjaGFuZ2VFdmVudCwgZmFsc2UsIGZhbHNlKSk7CisgICAgZW5xdWV1
ZUV2ZW50KEhhc2hDaGFuZ2VFdmVudDo6Y3JlYXRlKG9sZFVSTCwgbmV3VVJMKSk7CiB9CiAKIHZv
aWQgRG9jdW1lbnQ6OmVucXVldWVQb3BzdGF0ZUV2ZW50KFBhc3NSZWZQdHI8U2VyaWFsaXplZFNj
cmlwdFZhbHVlPiBzdGF0ZU9iamVjdCkKSW5kZXg6IFdlYkNvcmUvZG9tL0V2ZW50LmNwcAo9PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09Ci0tLSBXZWJDb3JlL2RvbS9FdmVudC5jcHAJKHJldmlzaW9uIDU5MDk0KQorKysgV2Vi
Q29yZS9kb20vRXZlbnQuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC0xNzIsNiArMTcyLDExIEBAIGJv
b2wgRXZlbnQ6OmlzQmVmb3JlTG9hZEV2ZW50KCkgY29uc3QKICAgICByZXR1cm4gZmFsc2U7CiB9
CiAKK2Jvb2wgRXZlbnQ6OmlzSGFzaENoYW5nZUV2ZW50KCkgY29uc3QKK3sKKyAgICByZXR1cm4g
ZmFsc2U7Cit9CisKICNpZiBFTkFCTEUoU1ZHKQogYm9vbCBFdmVudDo6aXNTVkdab29tRXZlbnQo
KSBjb25zdAogewpJbmRleDogV2ViQ29yZS9kb20vRXZlbnQuaAo9PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBXZWJD
b3JlL2RvbS9FdmVudC5oCShyZXZpc2lvbiA1OTA5NCkKKysrIFdlYkNvcmUvZG9tL0V2ZW50LmgJ
KHdvcmtpbmcgY29weSkKQEAgLTEyMyw2ICsxMjMsNyBAQCBuYW1lc3BhY2UgV2ViQ29yZSB7CiAg
ICAgICAgIHZpcnR1YWwgYm9vbCBpc1dlYktpdEFuaW1hdGlvbkV2ZW50KCkgY29uc3Q7CiAgICAg
ICAgIHZpcnR1YWwgYm9vbCBpc1dlYktpdFRyYW5zaXRpb25FdmVudCgpIGNvbnN0OwogICAgICAg
ICB2aXJ0dWFsIGJvb2wgaXNCZWZvcmVMb2FkRXZlbnQoKSBjb25zdDsKKyAgICAgICAgdmlydHVh
bCBib29sIGlzSGFzaENoYW5nZUV2ZW50KCkgY29uc3Q7CiAjaWYgRU5BQkxFKFNWRykKICAgICAg
ICAgdmlydHVhbCBib29sIGlzU1ZHWm9vbUV2ZW50KCkgY29uc3Q7CiAjZW5kaWYKSW5kZXg6IFdl
YkNvcmUvZG9tL0hhc2hDaGFuZ2VFdmVudC5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYkNvcmUvZG9tL0hh
c2hDaGFuZ2VFdmVudC5oCShyZXZpc2lvbiAwKQorKysgV2ViQ29yZS9kb20vSGFzaENoYW5nZUV2
ZW50LmgJKHJldmlzaW9uIDApCkBAIC0wLDAgKzEsNjUgQEAKKy8qCisgKiBDb3B5cmlnaHQgKEMp
IDIwMTAgQXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICoKKyAqIFRoaXMgbGlicmFy
eSBpcyBmcmVlIHNvZnR3YXJlOyB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IKKyAqIG1v
ZGlmeSBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBMaWJyYXJ5IEdlbmVyYWwgUHVibGlj
CisgKiBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieSB0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9u
OyBlaXRoZXIKKyAqIHZlcnNpb24gMiBvZiB0aGUgTGljZW5zZSwgb3IgKGF0IHlvdXIgb3B0aW9u
KSBhbnkgbGF0ZXIgdmVyc2lvbi4KKyAqCisgKiBUaGlzIGxpYnJhcnkgaXMgZGlzdHJpYnV0ZWQg
aW4gdGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCwKKyAqIGJ1dCBXSVRIT1VUIEFOWSBX
QVJSQU5UWTsgd2l0aG91dCBldmVuIHRoZSBpbXBsaWVkIHdhcnJhbnR5IG9mCisgKiBNRVJDSEFO
VEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlIEdO
VQorICogTGlicmFyeSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGZvciBtb3JlIGRldGFpbHMuCisg
KgorICogWW91IHNob3VsZCBoYXZlIHJlY2VpdmVkIGEgY29weSBvZiB0aGUgR05VIExpYnJhcnkg
R2VuZXJhbCBQdWJsaWMgTGljZW5zZQorICogYWxvbmcgd2l0aCB0aGlzIGxpYnJhcnk7IHNlZSB0
aGUgZmlsZSBDT1BZSU5HLkxJQi4gIElmIG5vdCwgd3JpdGUgdG8KKyAqIHRoZSBGcmVlIFNvZnR3
YXJlIEZvdW5kYXRpb24sIEluYy4sIDUxIEZyYW5rbGluIFN0cmVldCwgRmlmdGggRmxvb3IsCisg
KiBCb3N0b24sIE1BIDAyMTEwLTEzMDEsIFVTQS4KKyAqCisgKi8KKworI2lmbmRlZiBIYXNoQ2hh
bmdlRXZlbnRfaAorI2RlZmluZSBIYXNoQ2hhbmdlRXZlbnRfaAorCisjaW5jbHVkZSAiRXZlbnQu
aCIKKyNpbmNsdWRlICJFdmVudE5hbWVzLmgiCisKK25hbWVzcGFjZSBXZWJDb3JlIHsKKworY2xh
c3MgSGFzaENoYW5nZUV2ZW50IDogcHVibGljIEV2ZW50IHsKK3B1YmxpYzoKKyAgICB2aXJ0dWFs
IGJvb2wgaXNIYXNoQ2hhbmdlRXZlbnQoKSBjb25zdCB7IHJldHVybiB0cnVlOyB9CisKKyAgICBz
dGF0aWMgUGFzc1JlZlB0cjxIYXNoQ2hhbmdlRXZlbnQ+IGNyZWF0ZShjb25zdCBTdHJpbmcmIG9s
ZFVSTCwgY29uc3QgU3RyaW5nJiBuZXdVUkwpCisgICAgeworICAgICAgICByZXR1cm4gYWRvcHRS
ZWYobmV3IEhhc2hDaGFuZ2VFdmVudChvbGRVUkwsIG5ld1VSTCkpOworICAgIH0KKworICAgIHZv
aWQgaW5pdEhhc2hDaGFuZ2VFdmVudChjb25zdCBBdG9taWNTdHJpbmcmIGV2ZW50VHlwZSwgYm9v
bCBjYW5CdWJibGUsIGJvb2wgY2FuY2VsYWJsZSwgY29uc3QgU3RyaW5nJiBvbGRVUkwsIGNvbnN0
IFN0cmluZyYgbmV3VVJMKQorICAgIHsKKyAgICAgICAgaWYgKGRpc3BhdGNoZWQoKSkKKyAgICAg
ICAgICAgIHJldHVybjsKKworICAgICAgICBpbml0RXZlbnQoZXZlbnRUeXBlLCBjYW5CdWJibGUs
IGNhbmNlbGFibGUpOworCisgICAgICAgIG1fb2xkVVJMID0gb2xkVVJMOworICAgICAgICBtX25l
d1VSTCA9IG5ld1VSTDsKKyAgICB9CisKKyAgICBjb25zdCBTdHJpbmcmIG9sZFVSTCgpIGNvbnN0
IHsgcmV0dXJuIG1fb2xkVVJMOyB9CisgICAgY29uc3QgU3RyaW5nJiBuZXdVUkwoKSBjb25zdCB7
IHJldHVybiBtX25ld1VSTDsgfQorCitwcml2YXRlOgorICAgIEhhc2hDaGFuZ2VFdmVudChjb25z
dCBTdHJpbmcmIG9sZFVSTCwgY29uc3QgU3RyaW5nJiBuZXdVUkwpCisgICAgICAgIDogRXZlbnQo
ZXZlbnROYW1lcygpLmhhc2hjaGFuZ2VFdmVudCwgZmFsc2UsIGZhbHNlKQorICAgICAgICAsIG1f
b2xkVVJMKG9sZFVSTCkKKyAgICAgICAgLCBtX25ld1VSTChuZXdVUkwpCisgICAge30KKworICAg
IFN0cmluZyBtX29sZFVSTDsKKyAgICBTdHJpbmcgbV9uZXdVUkw7Cit9OworCit9IC8vIG5hbWVz
cGFjZSBXZWJDb3JlCisKKyNlbmRpZiAvLyBIYXNoQ2hhbmdlRXZlbnRfaApJbmRleDogV2ViQ29y
ZS9kb20vSGFzaENoYW5nZUV2ZW50LmlkbAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBXZWJDb3JlL2RvbS9IYXNo
Q2hhbmdlRXZlbnQuaWRsCShyZXZpc2lvbiAwKQorKysgV2ViQ29yZS9kb20vSGFzaENoYW5nZUV2
ZW50LmlkbAkocmV2aXNpb24gMCkKQEAgLTAsMCArMSwzNSBAQAorLyoKKyAqIENvcHlyaWdodCAo
QykgMjAxMCBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKgorICogVGhpcyBsaWJy
YXJ5IGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vcgorICog
bW9kaWZ5IGl0IHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05VIExpYnJhcnkgR2VuZXJhbCBQdWJs
aWMKKyAqIExpY2Vuc2UgYXMgcHVibGlzaGVkIGJ5IHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRp
b247IGVpdGhlcgorICogdmVyc2lvbiAyIG9mIHRoZSBMaWNlbnNlLCBvciAoYXQgeW91ciBvcHRp
b24pIGFueSBsYXRlciB2ZXJzaW9uLgorICoKKyAqIFRoaXMgbGlicmFyeSBpcyBkaXN0cmlidXRl
ZCBpbiB0aGUgaG9wZSB0aGF0IGl0IHdpbGwgYmUgdXNlZnVsLAorICogYnV0IFdJVEhPVVQgQU5Z
IFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKKyAqIE1FUkNI
QU5UQUJJTElUWSBvciBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRS4gIFNlZSB0aGUg
R05VCisgKiBMaWJyYXJ5IEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4K
KyAqCisgKiBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgTGlicmFy
eSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlCisgKiBhbG9uZyB3aXRoIHRoaXMgbGlicmFyeTsgc2Vl
IHRoZSBmaWxlIENPUFlJTkcuTElCLiAgSWYgbm90LCB3cml0ZSB0bworICogdGhlIEZyZWUgU29m
dHdhcmUgRm91bmRhdGlvbiwgSW5jLiwgNTEgRnJhbmtsaW4gU3RyZWV0LCBGaWZ0aCBGbG9vciwK
KyAqIEJvc3RvbiwgTUEgMDIxMTAtMTMwMSwgVVNBLgorICovCisKK21vZHVsZSBldmVudHMgewor
CisgICAgLy8gSW50cm9kdWNlZCBpbiBodHRwOi8vd3d3LndoYXR3Zy5vcmcvc3BlY3Mvd2ViLWFw
cHMvY3VycmVudC13b3JrL211bHRpcGFnZS9oaXN0b3J5Lmh0bWwjZXZlbnQtaGFzaGNoYW5nZQor
ICAgIGludGVyZmFjZSBbCisgICAgICAgIEdlbmVyYXRlQ29uc3RydWN0b3IKKyAgICBdIEhhc2hD
aGFuZ2VFdmVudCA6IEV2ZW50IHsKKyAgICAgICAgdm9pZCBpbml0SGFzaENoYW5nZUV2ZW50KGlu
IERPTVN0cmluZyB0eXBlLCAKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGluIGJv
b2xlYW4gY2FuQnViYmxlLCAKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGluIGJv
b2xlYW4gY2FuY2VsYWJsZSwgCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpbiBE
T01TdHJpbmcgb2xkVVJMLCAKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGluIERP
TVN0cmluZyBuZXdVUkwpOyAKKyAgICAgICAgcmVhZG9ubHkgYXR0cmlidXRlIERPTVN0cmluZyBv
bGRVUkw7CisgICAgICAgIHJlYWRvbmx5IGF0dHJpYnV0ZSBET01TdHJpbmcgbmV3VVJMOworICAg
IH07CisKK30KSW5kZXg6IFdlYkNvcmUvcGFnZS9ET01XaW5kb3cuaWRsCj09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0t
IFdlYkNvcmUvcGFnZS9ET01XaW5kb3cuaWRsCShyZXZpc2lvbiA1OTA5NCkKKysrIFdlYkNvcmUv
cGFnZS9ET01XaW5kb3cuaWRsCSh3b3JraW5nIGNvcHkpCkBAIC00NTksNiArNDU5LDcgQEAgbW9k
dWxlIHdpbmRvdyB7CiAKICAgICAgICAgYXR0cmlidXRlIEV2ZW50Q29uc3RydWN0b3IgRXZlbnQ7
CiAgICAgICAgIGF0dHJpYnV0ZSBCZWZvcmVMb2FkRXZlbnRDb25zdHJ1Y3RvciBCZWZvcmVMb2Fk
RXZlbnQ7CisgICAgICAgIGF0dHJpYnV0ZSBIYXNoQ2hhbmdlRXZlbnRDb25zdHJ1Y3RvciBIYXNo
Q2hhbmdlRXZlbnQ7CiAgICAgICAgIGF0dHJpYnV0ZSBLZXlib2FyZEV2ZW50Q29uc3RydWN0b3Ig
S2V5Ym9hcmRFdmVudDsKICAgICAgICAgYXR0cmlidXRlIE1vdXNlRXZlbnRDb25zdHJ1Y3RvciBN
b3VzZUV2ZW50OwogICAgICAgICBhdHRyaWJ1dGUgTXV0YXRpb25FdmVudENvbnN0cnVjdG9yIE11
dGF0aW9uRXZlbnQ7CkluZGV4OiBMYXlvdXRUZXN0cy9DaGFuZ2VMb2cKPT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0g
TGF5b3V0VGVzdHMvQ2hhbmdlTG9nCShyZXZpc2lvbiA1OTExOCkKKysrIExheW91dFRlc3RzL0No
YW5nZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDE5IEBACisyMDEwLTA1LTEwICBTdGV2
ZW4gTGFpICA8c3RldmVuX2xhaUBhc2lhLmFwcGxlLmNvbT4KKworICAgICAgICBSZXZpZXdlZCBi
eSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBSRUdSRVNTSU9OKDU4NzM2Pyk6IGZhc3QvbG9h
ZGVyL3N0YXRlb2JqZWN0cy9kb2N1bWVudC1kZXN0cm95ZWQtbmF2aWdhdGUtYmFjay13aXRoLWZy
YWdtZW50LXNjcm9sbC5odG1sIGZhaWxzIGludGVybWl0dGVudGx5CisgICAgICAgIGh0dHBzOi8v
YnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0zODc1NAorCisgICAgICAgIFVwZGF0ZWQg
dGVzdCBjYXNlIHRvIHVzZSBIYXNoQ2hhbmdlRXZlbnQub2xkVVJMLCBIYXNoQ2hhbmdlRXZlbnQu
bmV3VVJMIGluc3RlYWQgb2YgbG9jYXRpb24uaHJlZiBpbiBoYXNoY2hhbmdlIGV2ZW50LgorCisg
ICAgICAgICogZmFzdC9kb20vV2luZG93L3dpbmRvdy1wcm9wZXJ0aWVzLWV4cGVjdGVkLnR4dDoK
KyAgICAgICAgKiBmYXN0L2RvbS9XaW5kb3cvd2luZG93LXByb3BlcnR5LWRlc2NyaXB0b3JzLWV4
cGVjdGVkLnR4dDoKKyAgICAgICAgKiBmYXN0L2RvbS9wcm90b3R5cGUtaW5oZXJpdGFuY2UtZXhw
ZWN0ZWQudHh0OgorICAgICAgICAqIGZhc3QvanMvZ2xvYmFsLWNvbnN0cnVjdG9ycy1leHBlY3Rl
ZC50eHQ6CisgICAgICAgICogZmFzdC9sb2FkZXIvc3RhdGVvYmplY3RzL2RvY3VtZW50LWRlc3Ry
b3llZC1uYXZpZ2F0ZS1iYWNrLXdpdGgtZnJhZ21lbnQtc2Nyb2xsLmh0bWw6CisgICAgICAgICog
ZmFzdC9sb2FkZXIvc3RhdGVvYmplY3RzL3B1c2hzdGF0ZS13aXRoLWZyYWdtZW50LXVybHMtYW5k
LWhhc2hjaGFuZ2UuaHRtbDoKKwogMjAxMC0wNS0xMCAgRHVtaXRydSBEYW5pbGl1YyAgPGR1bWlA
Y2hyb21pdW0ub3JnPgogCiAgICAgICAgIFJldmlld2VkIGJ5IEJyYWR5IEVpZHNvbi4KSW5kZXg6
IExheW91dFRlc3RzL2Zhc3QvZG9tL3Byb3RvdHlwZS1pbmhlcml0YW5jZS1leHBlY3RlZC50eHQK
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvZmFzdC9kb20vcHJvdG90eXBlLWluaGVyaXRhbmNl
LWV4cGVjdGVkLnR4dAkocmV2aXNpb24gNTkwOTQpCisrKyBMYXlvdXRUZXN0cy9mYXN0L2RvbS9w
cm90b3R5cGUtaW5oZXJpdGFuY2UtZXhwZWN0ZWQudHh0CSh3b3JraW5nIGNvcHkpCkBAIC0yMTcs
NiArMjE3LDggQEAgUEFTUyBpbm5lci5IVE1MVUxpc3RFbGVtZW50LmlzSW5uZXIgaXMgdAogUEFT
UyBpbm5lci5IVE1MVUxpc3RFbGVtZW50LmNvbnN0cnVjdG9yLmlzSW5uZXIgaXMgdHJ1ZQogUEFT
UyBpbm5lci5IVE1MVmlkZW9FbGVtZW50LmlzSW5uZXIgaXMgdHJ1ZQogUEFTUyBpbm5lci5IVE1M
VmlkZW9FbGVtZW50LmNvbnN0cnVjdG9yLmlzSW5uZXIgaXMgdHJ1ZQorUEFTUyBpbm5lci5IYXNo
Q2hhbmdlRXZlbnQuaXNJbm5lciBpcyB0cnVlCitQQVNTIGlubmVyLkhhc2hDaGFuZ2VFdmVudC5j
b25zdHJ1Y3Rvci5pc0lubmVyIGlzIHRydWUKIFBBU1MgaW5uZXIuSW1hZ2UuaXNJbm5lciBpcyB0
cnVlCiBQQVNTIGlubmVyLkltYWdlLmNvbnN0cnVjdG9yLmlzSW5uZXIgaXMgdHJ1ZQogUEFTUyBp
bm5lci5JbWFnZURhdGEuaXNJbm5lciBpcyB0cnVlCkluZGV4OiBMYXlvdXRUZXN0cy9mYXN0L2Rv
bS9XaW5kb3cvd2luZG93LXByb3BlcnRpZXMtZXhwZWN0ZWQudHh0Cj09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExh
eW91dFRlc3RzL2Zhc3QvZG9tL1dpbmRvdy93aW5kb3ctcHJvcGVydGllcy1leHBlY3RlZC50eHQJ
KHJldmlzaW9uIDU5MDk0KQorKysgTGF5b3V0VGVzdHMvZmFzdC9kb20vV2luZG93L3dpbmRvdy1w
cm9wZXJ0aWVzLWV4cGVjdGVkLnR4dAkod29ya2luZyBjb3B5KQpAQCAtMTA0OSw2ICsxMDQ5LDgg
QEAgd2luZG93LkhUTUxVTGlzdEVsZW1lbnQgW29iamVjdCBIVE1MVUxpcwogd2luZG93LkhUTUxV
TGlzdEVsZW1lbnQucHJvdG90eXBlIFtwcmludGVkIGFib3ZlIGFzIHdpbmRvdy5FbGVtZW50LnBy
b3RvdHlwZV0KIHdpbmRvdy5IVE1MVmlkZW9FbGVtZW50IFtvYmplY3QgSFRNTFZpZGVvRWxlbWVu
dENvbnN0cnVjdG9yXQogd2luZG93LkhUTUxWaWRlb0VsZW1lbnQucHJvdG90eXBlIFtwcmludGVk
IGFib3ZlIGFzIHdpbmRvdy5FbGVtZW50LnByb3RvdHlwZV0KK3dpbmRvdy5IYXNoQ2hhbmdlRXZl
bnQgW29iamVjdCBIYXNoQ2hhbmdlRXZlbnRDb25zdHJ1Y3Rvcl0KK3dpbmRvdy5IYXNoQ2hhbmdl
RXZlbnQucHJvdG90eXBlIFtwcmludGVkIGFib3ZlIGFzIHdpbmRvdy5FdmVudC5wcm90b3R5cGVd
CiB3aW5kb3cuSW1hZ2UgW29iamVjdCBJbWFnZUNvbnN0cnVjdG9yXQogd2luZG93LkltYWdlLnBy
b3RvdHlwZSBbcHJpbnRlZCBhYm92ZSBhcyB3aW5kb3cuRWxlbWVudC5wcm90b3R5cGVdCiB3aW5k
b3cuSW1hZ2VEYXRhIFtvYmplY3QgSW1hZ2VEYXRhQ29uc3RydWN0b3JdCkluZGV4OiBMYXlvdXRU
ZXN0cy9mYXN0L2RvbS9XaW5kb3cvd2luZG93LXByb3BlcnR5LWRlc2NyaXB0b3JzLWV4cGVjdGVk
LnR4dAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9mYXN0L2RvbS9XaW5kb3cvd2luZG93LXBy
b3BlcnR5LWRlc2NyaXB0b3JzLWV4cGVjdGVkLnR4dAkocmV2aXNpb24gNTkwOTQpCisrKyBMYXlv
dXRUZXN0cy9mYXN0L2RvbS9XaW5kb3cvd2luZG93LXByb3BlcnR5LWRlc2NyaXB0b3JzLWV4cGVj
dGVkLnR4dAkod29ya2luZyBjb3B5KQpAQCAtMTE1LDYgKzExNSw3IEBAIFBBU1MgdHlwZW9mIE9i
amVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXAKIFBBU1MgdHlwZW9mIE9iamVjdC5nZXRPd25Qcm9w
ZXJ0eURlc2NyaXB0b3Iod2luZG93LCAnSFRNTFRpdGxlRWxlbWVudCcpIGlzICdvYmplY3QnCiBQ
QVNTIHR5cGVvZiBPYmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yKHdpbmRvdywgJ0hUTUxV
TGlzdEVsZW1lbnQnKSBpcyAnb2JqZWN0JwogUEFTUyB0eXBlb2YgT2JqZWN0LmdldE93blByb3Bl
cnR5RGVzY3JpcHRvcih3aW5kb3csICdIVE1MVmlkZW9FbGVtZW50JykgaXMgJ29iamVjdCcKK1BB
U1MgdHlwZW9mIE9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3Iod2luZG93LCAnSGFzaENo
YW5nZUV2ZW50JykgaXMgJ29iamVjdCcKIFBBU1MgdHlwZW9mIE9iamVjdC5nZXRPd25Qcm9wZXJ0
eURlc2NyaXB0b3Iod2luZG93LCAnSW1hZ2UnKSBpcyAnb2JqZWN0JwogUEFTUyB0eXBlb2YgT2Jq
ZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRvcih3aW5kb3csICdJbWFnZURhdGEnKSBpcyAnb2Jq
ZWN0JwogUEFTUyB0eXBlb2YgT2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRvcih3aW5kb3cs
ICdJbmZpbml0eScpIGlzICdvYmplY3QnCkluZGV4OiBMYXlvdXRUZXN0cy9mYXN0L2pzL2dsb2Jh
bC1jb25zdHJ1Y3RvcnMtZXhwZWN0ZWQudHh0Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL2Zh
c3QvanMvZ2xvYmFsLWNvbnN0cnVjdG9ycy1leHBlY3RlZC50eHQJKHJldmlzaW9uIDU5MDk0KQor
KysgTGF5b3V0VGVzdHMvZmFzdC9qcy9nbG9iYWwtY29uc3RydWN0b3JzLWV4cGVjdGVkLnR4dAko
d29ya2luZyBjb3B5KQpAQCAtMTA4LDYgKzEwOCw3IEBAIFBBU1MgSFRNTFRleHRBcmVhRWxlbWVu
dC50b1N0cmluZygpIGlzICcKIFBBU1MgSFRNTFRpdGxlRWxlbWVudC50b1N0cmluZygpIGlzICdb
b2JqZWN0IEhUTUxUaXRsZUVsZW1lbnRDb25zdHJ1Y3Rvcl0nCiBQQVNTIEhUTUxVTGlzdEVsZW1l
bnQudG9TdHJpbmcoKSBpcyAnW29iamVjdCBIVE1MVUxpc3RFbGVtZW50Q29uc3RydWN0b3JdJwog
UEFTUyBIVE1MVmlkZW9FbGVtZW50LnRvU3RyaW5nKCkgaXMgJ1tvYmplY3QgSFRNTFZpZGVvRWxl
bWVudENvbnN0cnVjdG9yXScKK1BBU1MgSGFzaENoYW5nZUV2ZW50LnRvU3RyaW5nKCkgaXMgJ1tv
YmplY3QgSGFzaENoYW5nZUV2ZW50Q29uc3RydWN0b3JdJwogUEFTUyBJbWFnZS50b1N0cmluZygp
IGlzICdbb2JqZWN0IEltYWdlQ29uc3RydWN0b3JdJwogUEFTUyBJbWFnZURhdGEudG9TdHJpbmco
KSBpcyAnW29iamVjdCBJbWFnZURhdGFDb25zdHJ1Y3Rvcl0nCiBQQVNTIEtleWJvYXJkRXZlbnQu
dG9TdHJpbmcoKSBpcyAnW29iamVjdCBLZXlib2FyZEV2ZW50Q29uc3RydWN0b3JdJwpJbmRleDog
TGF5b3V0VGVzdHMvZmFzdC9sb2FkZXIvc3RhdGVvYmplY3RzL2RvY3VtZW50LWRlc3Ryb3llZC1u
YXZpZ2F0ZS1iYWNrLXdpdGgtZnJhZ21lbnQtc2Nyb2xsLmh0bWwKPT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5
b3V0VGVzdHMvZmFzdC9sb2FkZXIvc3RhdGVvYmplY3RzL2RvY3VtZW50LWRlc3Ryb3llZC1uYXZp
Z2F0ZS1iYWNrLXdpdGgtZnJhZ21lbnQtc2Nyb2xsLmh0bWwJKHJldmlzaW9uIDU5MDk0KQorKysg
TGF5b3V0VGVzdHMvZmFzdC9sb2FkZXIvc3RhdGVvYmplY3RzL2RvY3VtZW50LWRlc3Ryb3llZC1u
YXZpZ2F0ZS1iYWNrLXdpdGgtZnJhZ21lbnQtc2Nyb2xsLmh0bWwJKHdvcmtpbmcgY29weSkKQEAg
LTksOSArOSwxNCBAQCBpZiAod2luZG93LmxheW91dFRlc3RDb250cm9sbGVyKSB7CiAgICAgbGF5
b3V0VGVzdENvbnRyb2xsZXIud2FpdFVudGlsRG9uZSgpOwogfQogCi1mdW5jdGlvbiBsYXN0UGF0
aENvbXBvbmVudCgpCitmdW5jdGlvbiBsYXN0UGF0aENvbXBvbmVudChocmVmKQogewotICAgIHJl
dHVybiB3aW5kb3cubG9jYXRpb24uaHJlZi5zcGxpdCgnLycpLnBvcCgpOworICAgIHJldHVybiBo
cmVmLnNwbGl0KCcvJykucG9wKCk7Cit9CisKK2Z1bmN0aW9uIGhhc2hPZih1cmwpCit7CisgICAg
cmV0dXJuIHVybC5zdWJzdHJpbmcodXJsLmxhc3RJbmRleE9mKCcjJykpOwogfQogCiBmdW5jdGlv
biBydW5GaXJzdFN0YWdlT2ZUZXN0KCkKQEAgLTIzLDcgKzI4LDcgQEAgZnVuY3Rpb24gcnVuRmly
c3RTdGFnZU9mVGVzdCgpCiAKIGZ1bmN0aW9uIHJ1blNlY29uZFN0YWdlT2ZUZXN0KCkKIHsKLSAg
ICBhbGVydCgiTGFzdCBwYXRoIGNvbXBvbmVudCBvZiBsb2NhdGlvbiBpcyAiICsgbGFzdFBhdGhD
b21wb25lbnQoKSk7CisgICAgYWxlcnQoIkxhc3QgcGF0aCBjb21wb25lbnQgb2YgbG9jYXRpb24g
aXMgIiArIGxhc3RQYXRoQ29tcG9uZW50KGxvY2F0aW9uLmhyZWYpKTsKICAgICBzZXRUaW1lb3V0
KCJoaXN0b3J5LmJhY2soKTsiLCAwKTsKIH0KIApAQCAtNTYsMTAgKzYxLDEwIEBAIGZ1bmN0aW9u
IHN0YXRlUG9wcGVkKCkKICAgICAgICAgaGlzdG9yeS5iYWNrKCk7CiB9CiAKLWZ1bmN0aW9uIGhh
c2hDaGFuZ2VkKCkKK2Z1bmN0aW9uIGhhc2hDaGFuZ2VkKGV2KQogewotICAgIGFsZXJ0KCJoYXNo
Q2hhbmdlZCAtIExhc3QgcGF0aCBjb21wb25lbnQgb2YgbG9jYXRpb24gaXMgIiArIGxhc3RQYXRo
Q29tcG9uZW50KCkpOwotICAgaWYgKHdpbmRvdy5sb2NhdGlvbi5oYXNoID09ICIjRmlyc3RFbnRy
eVdpbGxMYXRlckJlUmVhY3RpdmF0ZWQiKSB7CisgICBhbGVydCgiaGFzaENoYW5nZWQgLSBMYXN0
IHBhdGggY29tcG9uZW50IG9mIGxvY2F0aW9uIGlzICIgKyBsYXN0UGF0aENvbXBvbmVudChldi5u
ZXdVUkwpKTsKKyAgIGlmIChoYXNoT2YoZXYubmV3VVJMKSA9PSAiI0ZpcnN0RW50cnlXaWxsTGF0
ZXJCZVJlYWN0aXZhdGVkIikgewogICAgICAgICBhbGVydCgiVGVzdCBjb21wbGV0ZSIpOwogICAg
ICAgICBzZXNzaW9uU3RvcmFnZS5jbGVhcigpOwogICAgICAgICBpZiAod2luZG93LmxheW91dFRl
c3RDb250cm9sbGVyKQpAQCAtNjcsOCArNzIsMTAgQEAgZnVuY3Rpb24gaGFzaENoYW5nZWQoKQog
ICAgIH0KIH0KIAord2luZG93Lm9uaGFzaGNoYW5nZSA9IGhhc2hDaGFuZ2VkOworCiA8L3Njcmlw
dD4KLTxib2R5IG9ubG9hZD0ibG9hZGVkKCk7IiBvbnBvcHN0YXRlPSJzdGF0ZVBvcHBlZCgpOyIg
b25oYXNoY2hhbmdlPSJoYXNoQ2hhbmdlZCgpOyIgb251bmxvYWQ9Ii8qIGRpc2FibGUgcGFnZSBj
YWNoZSAqLyI+Cis8Ym9keSBvbmxvYWQ9ImxvYWRlZCgpOyIgb25wb3BzdGF0ZT0ic3RhdGVQb3Bw
ZWQoKTsiIG9udW5sb2FkPSIvKiBkaXNhYmxlIHBhZ2UgY2FjaGUgKi8iPgogPHByZT4KIFRoaXMg
dGVzdDoKIC1CdWlsZHMgdXAgYSBsaXN0IG9mIHN0YXRlIG9iamVjdCBlbnRyaWVzIHdpdGggZnJh
Z21lbnQgVVJMcy4KSW5kZXg6IExheW91dFRlc3RzL2Zhc3QvbG9hZGVyL3N0YXRlb2JqZWN0cy9w
dXNoc3RhdGUtd2l0aC1mcmFnbWVudC11cmxzLWFuZC1oYXNoY2hhbmdlLmh0bWwKPT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PQotLS0gTGF5b3V0VGVzdHMvZmFzdC9sb2FkZXIvc3RhdGVvYmplY3RzL3B1c2hzdGF0ZS13aXRo
LWZyYWdtZW50LXVybHMtYW5kLWhhc2hjaGFuZ2UuaHRtbAkocmV2aXNpb24gNTkwOTQpCisrKyBM
YXlvdXRUZXN0cy9mYXN0L2xvYWRlci9zdGF0ZW9iamVjdHMvcHVzaHN0YXRlLXdpdGgtZnJhZ21l
bnQtdXJscy1hbmQtaGFzaGNoYW5nZS5odG1sCSh3b3JraW5nIGNvcHkpCkBAIC0zOSwyNyArMzks
MjkgQEAgZnVuY3Rpb24gcnVuVGVzdCgpCiAgICAgaGlzdG9yeS5iYWNrKCk7CiB9CiAKLWZ1bmN0
aW9uIGxhc3RQYXRoQ29tcG9uZW50KCkKK2Z1bmN0aW9uIGxhc3RQYXRoQ29tcG9uZW50KGhyZWYp
CiB7Ci0gICAgcmV0dXJuIHdpbmRvdy5sb2NhdGlvbi5ocmVmLnNwbGl0KCcvJykucG9wKCk7Cisg
ICAgcmV0dXJuIGhyZWYuc3BsaXQoJy8nKS5wb3AoKTsKIH0KIAogZnVuY3Rpb24gc3RhdGVQb3Bw
ZWQoKQogewotICAgIGxvZygiU3RhdGUgcG9wcGVkIHdpdGggZXZlbnQgIiArIGV2ZW50LnN0YXRl
ICsgIiAodHlwZSAiICsgdHlwZW9mIGV2ZW50LnN0YXRlICsgIikgYW5kIGxhc3QgcGF0aCBjb21w
b25lbnQgIiArIGxhc3RQYXRoQ29tcG9uZW50KCkpOworICAgIGxvZygiU3RhdGUgcG9wcGVkIHdp
dGggZXZlbnQgIiArIGV2ZW50LnN0YXRlICsgIiAodHlwZSAiICsgdHlwZW9mIGV2ZW50LnN0YXRl
ICsgIikgYW5kIGxhc3QgcGF0aCBjb21wb25lbnQgIiArIGxhc3RQYXRoQ29tcG9uZW50KGxvY2F0
aW9uLmhyZWYpKTsKICAgICBpZiAoZXZlbnQuc3RhdGUgIT0gIk9yaWdpbmFsRW50cnkiKQogICAg
ICAgICBzZXRUaW1lb3V0KCJoaXN0b3J5LmJhY2soKTsiLCAwKTsKICAgICBlbHNlIGlmICh3aW5k
b3cubGF5b3V0VGVzdENvbnRyb2xsZXIpCiAgICAgICAgIGxheW91dFRlc3RDb250cm9sbGVyLm5v
dGlmeURvbmUoKTsKIH0KIAotZnVuY3Rpb24gaGFzaENoYW5nZWQoKQorZnVuY3Rpb24gaGFzaENo
YW5nZWQoZXYpCiB7Ci0gICAgbG9nKCJIYXNoIGNoYW5nZSBmaXJlZCBhbmQgbGFzdCBwYXRoIGNv
bXBvbmVudCBpcyAiICsgbGFzdFBhdGhDb21wb25lbnQoKSk7CisgICAgbG9nKCJIYXNoIGNoYW5n
ZSBmaXJlZCBhbmQgbGFzdCBwYXRoIGNvbXBvbmVudCBpcyAiICsgbGFzdFBhdGhDb21wb25lbnQo
ZXYubmV3VVJMKSk7CiB9CiAKK3dpbmRvdy5vbmhhc2hjaGFuZ2UgPSBoYXNoQ2hhbmdlZDsKKwog
PC9zY3JpcHQ+Ci08Ym9keSBvbmxvYWQ9InJ1blRlc3QoKTsiIG9ucG9wc3RhdGU9InN0YXRlUG9w
cGVkKCk7IiBvbmhhc2hjaGFuZ2U9Imhhc2hDaGFuZ2VkKCk7Ij4KKzxib2R5IG9ubG9hZD0icnVu
VGVzdCgpOyIgb25wb3BzdGF0ZT0ic3RhdGVQb3BwZWQoKTsiPgogPHByZT4KIFRoaXMgdGVzdCBw
dXNoZXMgYSBzZXJpZXMgb2Ygc3RhdGUgb2JqZWN0cyB3aXRoIGRpZmZlcmVudCBVUkxzIGFuZCBm
cmFnbWVudCBpZGVudGlmaWVycyBtZWFudCB0byB0ZXN0IHRoZSBoYXNoQ2hhbmdlIGV2ZW50IGFz
IHN0YXRlcyBhcmUgcG9wcGVkLgogPC9wcmU+PGJyPgo=
</data>
<flag name="review"
          id="39876"
          type_id="1"
          status="-"
          setter="beidson"
    />
          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>55667</attachid>
            <date>2010-05-10 23:01:47 -0700</date>
            <delta_ts>2010-05-10 23:53:37 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>36335-1.patch</filename>
            <type>text/plain</type>
            <size>30273</size>
            <attacher name="Steven Lai">s3lance</attacher>
            
              <data encoding="base64">SW5kZXg6IFdlYkNvcmUvQ2hhbmdlTG9nCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYkNvcmUvQ2hhbmdlTG9n
CShyZXZpc2lvbiA1OTEzOCkKKysrIFdlYkNvcmUvQ2hhbmdlTG9nCSh3b3JraW5nIGNvcHkpCkBA
IC0xLDMgKzEsMzkgQEAKKzIwMTAtMDUtMTAgIFN0ZXZlbiBMYWkgIDxzdGV2ZW5fbGFpQGFzaWEu
YXBwbGUuY29tPgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAg
ICAgIEhhc2hjaGFuZ2UgZXZlbnQgaXMgbm8gbG9uZ2VyIGEgc2ltcGxlIGV2ZW50LCBuZWVkcyB0
byBiZSBpdHMgb3duIGludGVyZmFjZQorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9z
aG93X2J1Zy5jZ2k/aWQ9MzYzMzUKKyAgICAgICAgPHJkYXI6Ly9wcm9ibGVtLzc3Njk3Nzk+CisK
KyAgICAgICAgUkVHUkVTU0lPTig1ODczNj8pOiBmYXN0L2xvYWRlci9zdGF0ZW9iamVjdHMvZG9j
dW1lbnQtZGVzdHJveWVkLW5hdmlnYXRlLWJhY2std2l0aC1mcmFnbWVudC1zY3JvbGwuaHRtbCBm
YWlscyBpbnRlcm1pdHRlbnRseQorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93
X2J1Zy5jZ2k/aWQ9Mzg3NTQKKworICAgICAgICAqIERlcml2ZWRTb3VyY2VzLmNwcDoKKyAgICAg
ICAgKiBEZXJpdmVkU291cmNlcy5tYWtlOgorICAgICAgICAqIEdOVW1ha2VmaWxlLmFtOgorICAg
ICAgICAqIFdlYkNvcmUuZ3lwaToKKyAgICAgICAgKiBXZWJDb3JlLnByaToKKyAgICAgICAgKiBX
ZWJDb3JlLnZjcHJvai9XZWJDb3JlLnZjcHJvajoKKyAgICAgICAgKiBXZWJDb3JlLnhjb2RlcHJv
ai9wcm9qZWN0LnBieHByb2o6CisgICAgICAgICogYmluZGluZ3MvanMvSlNFdmVudEN1c3RvbS5j
cHA6CisgICAgICAgIChXZWJDb3JlOjp0b0pTKToKKyAgICAgICAgKiBiaW5kaW5ncy92OC9jdXN0
b20vVjhFdmVudEN1c3RvbS5jcHA6CisgICAgICAgIChXZWJDb3JlOjp0b1Y4KToKKyAgICAgICAg
KiBkb20vRG9jdW1lbnQuY3BwOgorICAgICAgICAoV2ViQ29yZTo6RG9jdW1lbnQ6OmVucXVldWVI
YXNoY2hhbmdlRXZlbnQpOgorICAgICAgICAqIGRvbS9FdmVudC5jcHA6CisgICAgICAgIChXZWJD
b3JlOjpFdmVudDo6aXNIYXNoQ2hhbmdlRXZlbnQpOgorICAgICAgICAqIGRvbS9FdmVudC5oOgor
ICAgICAgICAqIGRvbS9IYXNoQ2hhbmdlRXZlbnQuaDogQWRkZWQuCisgICAgICAgIChXZWJDb3Jl
OjpIYXNoQ2hhbmdlRXZlbnQ6OmlzSGFzaENoYW5nZUV2ZW50KToKKyAgICAgICAgKFdlYkNvcmU6
Okhhc2hDaGFuZ2VFdmVudDo6Y3JlYXRlKToKKyAgICAgICAgKFdlYkNvcmU6Okhhc2hDaGFuZ2VF
dmVudDo6aW5pdEhhc2hDaGFuZ2VFdmVudCk6CisgICAgICAgIChXZWJDb3JlOjpIYXNoQ2hhbmdl
RXZlbnQ6Om9sZFVSTCk6CisgICAgICAgIChXZWJDb3JlOjpIYXNoQ2hhbmdlRXZlbnQ6Om5ld1VS
TCk6CisgICAgICAgIChXZWJDb3JlOjpIYXNoQ2hhbmdlRXZlbnQ6Okhhc2hDaGFuZ2VFdmVudCk6
CisgICAgICAgICogZG9tL0hhc2hDaGFuZ2VFdmVudC5pZGw6IEFkZGVkLgorCiAyMDEwLTA1LTEw
ICBTaW1vbiBGcmFzZXIgIDxzaW1vbi5mcmFzZXJAYXBwbGUuY29tPgogCiAgICAgICAgIFJldmll
d2VkIGJ5IEFuZGVycyBDYXJsc3NvbgpJbmRleDogV2ViQ29yZS9EZXJpdmVkU291cmNlcy5jcHAK
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PQotLS0gV2ViQ29yZS9EZXJpdmVkU291cmNlcy5jcHAJKHJldmlzaW9uIDU5MTI1
KQorKysgV2ViQ29yZS9EZXJpdmVkU291cmNlcy5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTkxLDYg
KzkxLDcgQEAKICNpbmNsdWRlICJKU0ZpbGVMaXN0LmNwcCIKICNpbmNsdWRlICJKU0dlb2xvY2F0
aW9uLmNwcCIKICNpbmNsdWRlICJKU0dlb3Bvc2l0aW9uLmNwcCIKKyNpbmNsdWRlICJKU0hhc2hD
aGFuZ2VFdmVudC5jcHAiCiAjaW5jbHVkZSAiSlNIaXN0b3J5LmNwcCIKICNpbmNsdWRlICJKU0hU
TUxBbGxDb2xsZWN0aW9uLmNwcCIKICNpbmNsdWRlICJKU0hUTUxBbmNob3JFbGVtZW50LmNwcCIK
SW5kZXg6IFdlYkNvcmUvRGVyaXZlZFNvdXJjZXMubWFrZQo9PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBXZWJDb3Jl
L0Rlcml2ZWRTb3VyY2VzLm1ha2UJKHJldmlzaW9uIDU5MTI1KQorKysgV2ViQ29yZS9EZXJpdmVk
U291cmNlcy5tYWtlCSh3b3JraW5nIGNvcHkpCkBAIC0xMzUsNiArMTM1LDcgQEAgRE9NX0NMQVNT
RVMgPSBcCiAgICAgRmlsZUxpc3QgXAogICAgIEdlb2xvY2F0aW9uIFwKICAgICBHZW9wb3NpdGlv
biBcCisgICAgSGFzaENoYW5nZUV2ZW50IFwKICAgICBIVE1MQWxsQ29sbGVjdGlvbiBcCiAgICAg
SFRNTEFuY2hvckVsZW1lbnQgXAogICAgIEhUTUxBcHBsZXRFbGVtZW50IFwKSW5kZXg6IFdlYkNv
cmUvR05VbWFrZWZpbGUuYW0KPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gV2ViQ29yZS9HTlVtYWtlZmlsZS5hbQko
cmV2aXNpb24gNTkxMjUpCisrKyBXZWJDb3JlL0dOVW1ha2VmaWxlLmFtCSh3b3JraW5nIGNvcHkp
CkBAIC0xNDYsNiArMTQ2LDcgQEAgSURMX0JJTkRJTkdTICs9IFwKIAlXZWJDb3JlL2RvbS9FcnJv
ckV2ZW50LmlkbCBcCiAJV2ViQ29yZS9kb20vRXZlbnQuaWRsIFwKIAlXZWJDb3JlL2RvbS9FdmVu
dEV4Y2VwdGlvbi5pZGwgXAorCVdlYkNvcmUvZG9tL0hhc2hDaGFuZ2VFdmVudC5pZGwgXAogCVdl
YkNvcmUvZG9tL0tleWJvYXJkRXZlbnQuaWRsIFwKIAlXZWJDb3JlL2RvbS9NZXNzYWdlQ2hhbm5l
bC5pZGwgXAogCVdlYkNvcmUvZG9tL01lc3NhZ2VFdmVudC5pZGwgXApAQCAtNzk1LDYgKzc5Niw3
IEBAIHdlYmNvcmVfc291cmNlcyArPSBcCiAJV2ViQ29yZS9kb20vRXhjZXB0aW9uQ29kZS5oIFwK
IAlXZWJDb3JlL2RvbS9JbnB1dEVsZW1lbnQuY3BwIFwKIAlXZWJDb3JlL2RvbS9JbnB1dEVsZW1l
bnQuaCBcCisJV2ViQ29yZS9kb20vSGFzaENoYW5nZUV2ZW50LmggXAogCVdlYkNvcmUvZG9tL0tl
eWJvYXJkRXZlbnQuY3BwIFwKIAlXZWJDb3JlL2RvbS9LZXlib2FyZEV2ZW50LmggXAogCVdlYkNv
cmUvZG9tL01hcHBlZEF0dHJpYnV0ZS5jcHAgXApJbmRleDogV2ViQ29yZS9XZWJDb3JlLmd5cGkK
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PQotLS0gV2ViQ29yZS9XZWJDb3JlLmd5cGkJKHJldmlzaW9uIDU5MTI1KQorKysg
V2ViQ29yZS9XZWJDb3JlLmd5cGkJKHdvcmtpbmcgY29weSkKQEAgLTUxLDYgKzUxLDcgQEAKICAg
ICAgICAgICAgICdkb20vRXZlbnRFeGNlcHRpb24uaWRsJywKICAgICAgICAgICAgICdkb20vRXZl
bnRMaXN0ZW5lci5pZGwnLAogICAgICAgICAgICAgJ2RvbS9FdmVudFRhcmdldC5pZGwnLAorICAg
ICAgICAgICAgJ2RvbS9IYXNoQ2hhbmdlRXZlbnQuaWRsJywKICAgICAgICAgICAgICdkb20vS2V5
Ym9hcmRFdmVudC5pZGwnLAogICAgICAgICAgICAgJ2RvbS9NZXNzYWdlQ2hhbm5lbC5pZGwnLAog
ICAgICAgICAgICAgJ2RvbS9NZXNzYWdlRXZlbnQuaWRsJywKQEAgLTExMjcsNiArMTEyOCw3IEBA
CiAgICAgICAgICAgICAnZG9tL0V4Y2VwdGlvbkNvZGUuaCcsCiAgICAgICAgICAgICAnZG9tL0lu
cHV0RWxlbWVudC5jcHAnLAogICAgICAgICAgICAgJ2RvbS9JbnB1dEVsZW1lbnQuaCcsCisgICAg
ICAgICAgICAnZG9tL0hhc2hDaGFuZ2VFdmVudC5oJywKICAgICAgICAgICAgICdkb20vS2V5Ym9h
cmRFdmVudC5jcHAnLAogICAgICAgICAgICAgJ2RvbS9LZXlib2FyZEV2ZW50LmgnLAogICAgICAg
ICAgICAgJ2RvbS9NYXBwZWRBdHRyaWJ1dGUuY3BwJywKSW5kZXg6IFdlYkNvcmUvV2ViQ29yZS5w
cmkKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PQotLS0gV2ViQ29yZS9XZWJDb3JlLnByaQkocmV2aXNpb24gNTkxMjUpCisr
KyBXZWJDb3JlL1dlYkNvcmUucHJpCSh3b3JraW5nIGNvcHkpCkBAIC0yNzEsNiArMjcxLDcgQEAg
SURMX0JJTkRJTkdTICs9IFwKICAgICBkb20vRXZlbnRFeGNlcHRpb24uaWRsIFwKICMgICAgZG9t
L0V2ZW50TGlzdGVuZXIuaWRsIFwKICMgICAgZG9tL0V2ZW50VGFyZ2V0LmlkbCBcCisgICAgZG9t
L0hhc2hDaGFuZ2VFdmVudC5pZGwgXAogICAgIGRvbS9LZXlib2FyZEV2ZW50LmlkbCBcCiAgICAg
ZG9tL01vdXNlRXZlbnQuaWRsIFwKICAgICBkb20vTWVzc2FnZUNoYW5uZWwuaWRsIFwKSW5kZXg6
IFdlYkNvcmUvV2ViQ29yZS52Y3Byb2ovV2ViQ29yZS52Y3Byb2oKPT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gV2Vi
Q29yZS9XZWJDb3JlLnZjcHJvai9XZWJDb3JlLnZjcHJvagkocmV2aXNpb24gNTkxMjUpCisrKyBX
ZWJDb3JlL1dlYkNvcmUudmNwcm9qL1dlYkNvcmUudmNwcm9qCSh3b3JraW5nIGNvcHkpCkBAIC0z
OTI1LDYgKzM5MjUsMTE4IEBACiAJCQkJPg0KIAkJCTwvRmlsZT4NCiAJCQk8RmlsZQ0KKwkJCQlS
ZWxhdGl2ZVBhdGg9IiQoV2ViS2l0T3V0cHV0RGlyKVxvYmpcJChQcm9qZWN0TmFtZSlcRGVyaXZl
ZFNvdXJjZXNcSlNIYXNoQ2hhbmdlRXZlbnQuY3BwIg0KKwkJCQk+DQorCQkJCTxGaWxlQ29uZmln
dXJhdGlvbg0KKwkJCQkJTmFtZT0iRGVidWd8V2luMzIiDQorCQkJCQlFeGNsdWRlZEZyb21CdWls
ZD0idHJ1ZSINCisJCQkJCT4NCisJCQkJCTxUb29sDQorCQkJCQkJTmFtZT0iVkNDTENvbXBpbGVy
VG9vbCINCisJCQkJCS8+DQorCQkJCTwvRmlsZUNvbmZpZ3VyYXRpb24+DQorCQkJCTxGaWxlQ29u
ZmlndXJhdGlvbg0KKwkJCQkJTmFtZT0iUmVsZWFzZXxXaW4zMiINCisJCQkJCUV4Y2x1ZGVkRnJv
bUJ1aWxkPSJ0cnVlIg0KKwkJCQkJPg0KKwkJCQkJPFRvb2wNCisJCQkJCQlOYW1lPSJWQ0NMQ29t
cGlsZXJUb29sIg0KKwkJCQkJLz4NCisJCQkJPC9GaWxlQ29uZmlndXJhdGlvbj4NCisJCQkJPEZp
bGVDb25maWd1cmF0aW9uDQorCQkJCQlOYW1lPSJEZWJ1Z19JbnRlcm5hbHxXaW4zMiINCisJCQkJ
CUV4Y2x1ZGVkRnJvbUJ1aWxkPSJ0cnVlIg0KKwkJCQkJPg0KKwkJCQkJPFRvb2wNCisJCQkJCQlO
YW1lPSJWQ0NMQ29tcGlsZXJUb29sIg0KKwkJCQkJLz4NCisJCQkJPC9GaWxlQ29uZmlndXJhdGlv
bj4NCisJCQkJPEZpbGVDb25maWd1cmF0aW9uDQorCQkJCQlOYW1lPSJEZWJ1Z19DYWlyb3xXaW4z
MiINCisJCQkJCUV4Y2x1ZGVkRnJvbUJ1aWxkPSJ0cnVlIg0KKwkJCQkJPg0KKwkJCQkJPFRvb2wN
CisJCQkJCQlOYW1lPSJWQ0NMQ29tcGlsZXJUb29sIg0KKwkJCQkJLz4NCisJCQkJPC9GaWxlQ29u
ZmlndXJhdGlvbj4NCisJCQkJPEZpbGVDb25maWd1cmF0aW9uDQorCQkJCQlOYW1lPSJSZWxlYXNl
X0NhaXJvfFdpbjMyIg0KKwkJCQkJRXhjbHVkZWRGcm9tQnVpbGQ9InRydWUiDQorCQkJCQk+DQor
CQkJCQk8VG9vbA0KKwkJCQkJCU5hbWU9IlZDQ0xDb21waWxlclRvb2wiDQorCQkJCQkvPg0KKwkJ
CQk8L0ZpbGVDb25maWd1cmF0aW9uPg0KKwkJCQk8RmlsZUNvbmZpZ3VyYXRpb24NCisJCQkJCU5h
bWU9IkRlYnVnX0FsbHxXaW4zMiINCisJCQkJCUV4Y2x1ZGVkRnJvbUJ1aWxkPSJ0cnVlIg0KKwkJ
CQkJPg0KKwkJCQkJPFRvb2wNCisJCQkJCQlOYW1lPSJWQ0NMQ29tcGlsZXJUb29sIg0KKwkJCQkJ
Lz4NCisJCQkJPC9GaWxlQ29uZmlndXJhdGlvbj4NCisJCQk8L0ZpbGU+DQorCQkJPEZpbGUNCisJ
CQkJUmVsYXRpdmVQYXRoPSIkKFdlYktpdE91dHB1dERpcilcb2JqXCQoUHJvamVjdE5hbWUpXERl
cml2ZWRTb3VyY2VzXEpTSGFzaENoYW5nZUV2ZW50LmgiDQorCQkJCT4NCisJCQk8L0ZpbGU+DQor
CQkJPEZpbGUNCisJCQkJUmVsYXRpdmVQYXRoPSIkKFdlYktpdE91dHB1dERpcilcb2JqXCQoUHJv
amVjdE5hbWUpXERlcml2ZWRTb3VyY2VzXEpTSGFzaENoYW5nZUV2ZW50LmNwcCINCisJCQkJPg0K
KwkJCQk8RmlsZUNvbmZpZ3VyYXRpb24NCisJCQkJCU5hbWU9IkRlYnVnfFdpbjMyIg0KKwkJCQkJ
RXhjbHVkZWRGcm9tQnVpbGQ9InRydWUiDQorCQkJCQk+DQorCQkJCQk8VG9vbA0KKwkJCQkJCU5h
bWU9IlZDQ0xDb21waWxlclRvb2wiDQorCQkJCQkvPg0KKwkJCQk8L0ZpbGVDb25maWd1cmF0aW9u
Pg0KKwkJCQk8RmlsZUNvbmZpZ3VyYXRpb24NCisJCQkJCU5hbWU9IlJlbGVhc2V8V2luMzIiDQor
CQkJCQlFeGNsdWRlZEZyb21CdWlsZD0idHJ1ZSINCisJCQkJCT4NCisJCQkJCTxUb29sDQorCQkJ
CQkJTmFtZT0iVkNDTENvbXBpbGVyVG9vbCINCisJCQkJCS8+DQorCQkJCTwvRmlsZUNvbmZpZ3Vy
YXRpb24+DQorCQkJCTxGaWxlQ29uZmlndXJhdGlvbg0KKwkJCQkJTmFtZT0iRGVidWdfSW50ZXJu
YWx8V2luMzIiDQorCQkJCQlFeGNsdWRlZEZyb21CdWlsZD0idHJ1ZSINCisJCQkJCT4NCisJCQkJ
CTxUb29sDQorCQkJCQkJTmFtZT0iVkNDTENvbXBpbGVyVG9vbCINCisJCQkJCS8+DQorCQkJCTwv
RmlsZUNvbmZpZ3VyYXRpb24+DQorCQkJCTxGaWxlQ29uZmlndXJhdGlvbg0KKwkJCQkJTmFtZT0i
RGVidWdfQ2Fpcm98V2luMzIiDQorCQkJCQlFeGNsdWRlZEZyb21CdWlsZD0idHJ1ZSINCisJCQkJ
CT4NCisJCQkJCTxUb29sDQorCQkJCQkJTmFtZT0iVkNDTENvbXBpbGVyVG9vbCINCisJCQkJCS8+
DQorCQkJCTwvRmlsZUNvbmZpZ3VyYXRpb24+DQorCQkJCTxGaWxlQ29uZmlndXJhdGlvbg0KKwkJ
CQkJTmFtZT0iUmVsZWFzZV9DYWlyb3xXaW4zMiINCisJCQkJCUV4Y2x1ZGVkRnJvbUJ1aWxkPSJ0
cnVlIg0KKwkJCQkJPg0KKwkJCQkJPFRvb2wNCisJCQkJCQlOYW1lPSJWQ0NMQ29tcGlsZXJUb29s
Ig0KKwkJCQkJLz4NCisJCQkJPC9GaWxlQ29uZmlndXJhdGlvbj4NCisJCQkJPEZpbGVDb25maWd1
cmF0aW9uDQorCQkJCQlOYW1lPSJEZWJ1Z19BbGx8V2luMzIiDQorCQkJCQlFeGNsdWRlZEZyb21C
dWlsZD0idHJ1ZSINCisJCQkJCT4NCisJCQkJCTxUb29sDQorCQkJCQkJTmFtZT0iVkNDTENvbXBp
bGVyVG9vbCINCisJCQkJCS8+DQorCQkJCTwvRmlsZUNvbmZpZ3VyYXRpb24+DQorCQkJPC9GaWxl
Pg0KKwkJCTxGaWxlDQorCQkJCVJlbGF0aXZlUGF0aD0iJChXZWJLaXRPdXRwdXREaXIpXG9ialwk
KFByb2plY3ROYW1lKVxEZXJpdmVkU291cmNlc1xKU0hhc2hDaGFuZ2VFdmVudC5oIg0KKwkJCQk+
DQorCQkJPC9GaWxlPg0KKwkJCTxGaWxlDQogCQkJCVJlbGF0aXZlUGF0aD0iJChXZWJLaXRPdXRw
dXREaXIpXG9ialwkKFByb2plY3ROYW1lKVxEZXJpdmVkU291cmNlc1xKU0hpc3RvcnkuY3BwIg0K
IAkJCQk+DQogCQkJCTxGaWxlQ29uZmlndXJhdGlvbg0KQEAgLTI5NDY5LDYgKzI5NTgxLDE0IEBA
CiAJCQkJPg0KIAkJCTwvRmlsZT4NCiAJCQk8RmlsZQ0KKwkJCQlSZWxhdGl2ZVBhdGg9Ii4uXGRv
bVxIYXNoQ2hhbmdlRXZlbnQuaCINCisJCQkJPg0KKwkJCTwvRmlsZT4NCisJCQk8RmlsZQ0KKwkJ
CQlSZWxhdGl2ZVBhdGg9Ii4uXGRvbVxIYXNoQ2hhbmdlRXZlbnQuaCINCisJCQkJPg0KKwkJCTwv
RmlsZT4NCisJCQk8RmlsZQ0KIAkJCQlSZWxhdGl2ZVBhdGg9Ii4uXGRvbVxLZXlib2FyZEV2ZW50
LmNwcCINCiAJCQkJPg0KIAkJCTwvRmlsZT4NCkluZGV4OiBXZWJDb3JlL1dlYkNvcmUueGNvZGVw
cm9qL3Byb2plY3QucGJ4cHJvago9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBXZWJDb3JlL1dlYkNvcmUueGNvZGVw
cm9qL3Byb2plY3QucGJ4cHJvagkocmV2aXNpb24gNTkxMjUpCisrKyBXZWJDb3JlL1dlYkNvcmUu
eGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvagkod29ya2luZyBjb3B5KQpAQCAtMTM2NSw2ICsxMzY1
LDkgQEAKIAkJODQ1RTcyRkMwRkQyNjIzOTAwQTg3RDc5IC8qIFNWR0ZpbHRlci5oIGluIEhlYWRl
cnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gODQ1RTcyRkEwRkQyNjIzOTAw
QTg3RDc5IC8qIFNWR0ZpbHRlci5oICovOyB9OwogCQk4NDgwMTk1NDEwOEJBRkIzMDBDQjJCMUYg
LyogRkVHYXVzc2lhbkJsdXIuY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxl
OyBmaWxlUmVmID0gODQ4MDE5NTIxMDhCQUZCMzAwQ0IyQjFGIC8qIEZFR2F1c3NpYW5CbHVyLmNw
cCAqLzsgfTsKIAkJODQ4MDE5NTUxMDhCQUZCMzAwQ0IyQjFGIC8qIEZFR2F1c3NpYW5CbHVyLmgg
aW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA4NDgwMTk1MzEw
OEJBRkIzMDBDQjJCMUYgLyogRkVHYXVzc2lhbkJsdXIuaCAqLzsgfTsKKwkJODQ4MkI3NDYxMTk4
QzM1NDAwQkZCMDA1IC8qIEhhc2hDaGFuZ2VFdmVudC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0g
UEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMjQ0MkJCRjgxMTk0QzlEMzAwRDQ5NDY5IC8qIEhhc2hD
aGFuZ2VFdmVudC5oICovOyB9OworCQk4NDgyQjc1MTExOThDQjZCMDBCRkIwMDUgLyogSlNIYXNo
Q2hhbmdlRXZlbnQuY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxl
UmVmID0gODQ4MkI3NEYxMTk4Q0I2QjAwQkZCMDA1IC8qIEpTSGFzaENoYW5nZUV2ZW50LmNwcCAq
LzsgfTsKKwkJODQ4MkI3NTIxMTk4Q0I2QjAwQkZCMDA1IC8qIEpTSGFzaENoYW5nZUV2ZW50Lmgg
aW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA4NDgyQjc1MDEx
OThDQjZCMDBCRkIwMDUgLyogSlNIYXNoQ2hhbmdlRXZlbnQuaCAqLzsgfTsKIAkJODQ4NTIyN0Ix
MTkwMTYyQzAwNkVEQzdGIC8qIEpTU1ZHSEtlcm5FbGVtZW50LmNwcCBpbiBTb3VyY2VzICovID0g
e2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDg0ODUyMjc3MTE5MDE2MkMwMDZFREM3RiAv
KiBKU1NWR0hLZXJuRWxlbWVudC5jcHAgKi87IH07CiAJCTg0ODUyMjdDMTE5MDE2MkMwMDZFREM3
RiAvKiBKU1NWR0hLZXJuRWxlbWVudC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRG
aWxlOyBmaWxlUmVmID0gODQ4NTIyNzgxMTkwMTYyQzAwNkVEQzdGIC8qIEpTU1ZHSEtlcm5FbGVt
ZW50LmggKi87IH07CiAJCTg0ODUyMjdEMTE5MDE2MkMwMDZFREM3RiAvKiBKU1NWR1ZLZXJuRWxl
bWVudC5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA4
NDg1MjI3OTExOTAxNjJDMDA2RURDN0YgLyogSlNTVkdWS2VybkVsZW1lbnQuY3BwICovOyB9OwpA
QCAtNjA2MSw2ICs2MDY0LDcgQEAKIAkJMUNGNkJFMTMwRTlCQjQ2NzAwMjVFMUNEIC8qIE9iakNO
b2RlRmlsdGVyQ29uZGl0aW9uLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVu
Y29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IE9i
akNOb2RlRmlsdGVyQ29uZGl0aW9uLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTFD
RkFFMzIyMEE2RDZBM0YwMDMyNTkzRCAvKiBsaWJvYmpjLmR5bGliICovID0ge2lzYSA9IFBCWEZp
bGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gImNvbXBpbGVkLm1hY2gtby5keWxpYiI7
IG5hbWUgPSBsaWJvYmpjLmR5bGliOyBwYXRoID0gL3Vzci9saWIvbGlib2JqYy5keWxpYjsgc291
cmNlVHJlZSA9ICI8YWJzb2x1dGU+IjsgfTsKIAkJMjI4QzI4NDQxMEQ4MjUwMDAwOUQwRDBFIC8q
IFNjcmlwdFdyYXBwYWJsZS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNv
ZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBTY3Jp
cHRXcmFwcGFibGUuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMjQ0MkJCRjgxMTk0
QzlEMzAwRDQ5NDY5IC8qIEhhc2hDaGFuZ2VFdmVudC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZl
cmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5j
Lmg7IHBhdGggPSBIYXNoQ2hhbmdlRXZlbnQuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsK
IAkJMjRGNTRFQUExMDFGRTkxNDAwMEFFNzQxIC8qIEFwcGxpY2F0aW9uQ2FjaGVIb3N0LmNwcCAq
LyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25G
aWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEFwcGxpY2F0aW9uQ2FjaGVIb3N0
LmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJMjRGNTRFQUIxMDFGRTkxNDAwMEFF
NzQxIC8qIEFwcGxpY2F0aW9uQ2FjaGVIb3N0LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5j
ZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsg
cGF0aCA9IEFwcGxpY2F0aW9uQ2FjaGVIb3N0Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07
CiAJCTI1NDJGNEQ4MTE2NkMyNUEwMEU4OUE4NiAvKiBVc2VyR2VzdHVyZUluZGljYXRvci5jcHAg
Ki8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3du
RmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBVc2VyR2VzdHVyZUluZGljYXRv
ci5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CkBAIC02OTUwLDYgKzY5NTQsOSBAQAog
CQk4NDVFNzJGQTBGRDI2MjM5MDBBODdENzkgLyogU1ZHRmlsdGVyLmggKi8gPSB7aXNhID0gUEJY
RmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3Vy
Y2Vjb2RlLmMuaDsgcGF0aCA9IFNWR0ZpbHRlci5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9
OwogCQk4NDgwMTk1MjEwOEJBRkIzMDBDQjJCMUYgLyogRkVHYXVzc2lhbkJsdXIuY3BwICovID0g
e2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVU
eXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBuYW1lID0gRkVHYXVzc2lhbkJsdXIuY3BwOyBwYXRo
ID0gZmlsdGVycy9GRUdhdXNzaWFuQmx1ci5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07
CiAJCTg0ODAxOTUzMTA4QkFGQjMwMENCMkIxRiAvKiBGRUdhdXNzaWFuQmx1ci5oICovID0ge2lz
YSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBl
ID0gc291cmNlY29kZS5jLmg7IG5hbWUgPSBGRUdhdXNzaWFuQmx1ci5oOyBwYXRoID0gZmlsdGVy
cy9GRUdhdXNzaWFuQmx1ci5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk4NDgyQjc0
NDExOThDMzJFMDBCRkIwMDUgLyogSGFzaENoYW5nZUV2ZW50LmlkbCAqLyA9IHtpc2EgPSBQQlhG
aWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHRleHQ7
IHBhdGggPSBIYXNoQ2hhbmdlRXZlbnQuaWRsOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9Owor
CQk4NDgyQjc0RjExOThDQjZCMDBCRkIwMDUgLyogSlNIYXNoQ2hhbmdlRXZlbnQuY3BwICovID0g
e2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVU
eXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gSlNIYXNoQ2hhbmdlRXZlbnQuY3BwOyBz
b3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk4NDgyQjc1MDExOThDQjZCMDBCRkIwMDUgLyog
SlNIYXNoQ2hhbmdlRXZlbnQuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5j
b2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gSlNI
YXNoQ2hhbmdlRXZlbnQuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJODQ4NTIyNzcx
MTkwMTYyQzAwNkVEQzdGIC8qIEpTU1ZHSEtlcm5FbGVtZW50LmNwcCAqLyA9IHtpc2EgPSBQQlhG
aWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJj
ZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEpTU1ZHSEtlcm5FbGVtZW50LmNwcDsgc291cmNlVHJlZSA9
ICI8Z3JvdXA+IjsgfTsKIAkJODQ4NTIyNzgxMTkwMTYyQzAwNkVEQzdGIC8qIEpTU1ZHSEtlcm5F
bGVtZW50LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsg
bGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEpTU1ZHSEtlcm5FbGVt
ZW50Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTg0ODUyMjc5MTE5MDE2MkMwMDZF
REM3RiAvKiBKU1NWR1ZLZXJuRWxlbWVudC5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5j
ZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5j
cHA7IHBhdGggPSBKU1NWR1ZLZXJuRWxlbWVudC5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7
IH07CkBAIC0xNDE4MCw2ICsxNDE4Nyw4IEBACiAJCQkJMTRFODM3OEQwOUY4NUQ0RjAwQjg1QUU0
IC8qIEpTRXZlbnQuaCAqLywKIAkJCQlCQzYwRDlCRDBEMkEyNjlBMDBCOTkxOEYgLyogSlNFdmVu
dEV4Y2VwdGlvbi5jcHAgKi8sCiAJCQkJQkM2MEQ5QkUwRDJBMjY5QTAwQjk5MThGIC8qIEpTRXZl
bnRFeGNlcHRpb24uaCAqLywKKwkJCQk4NDgyQjc0RjExOThDQjZCMDBCRkIwMDUgLyogSlNIYXNo
Q2hhbmdlRXZlbnQuY3BwICovLAorCQkJCTg0ODJCNzUwMTE5OENCNkIwMEJGQjAwNSAvKiBKU0hh
c2hDaGFuZ2VFdmVudC5oICovLAogCQkJCUE4NjYyOUNFMDlEQTJCNDcwMDk2MzNBNSAvKiBKU0tl
eWJvYXJkRXZlbnQuY3BwICovLAogCQkJCUE4NjYyOUNEMDlEQTJCNDcwMDk2MzNBNSAvKiBKU0tl
eWJvYXJkRXZlbnQuaCAqLywKIAkJCQlFMTA3NDAwQjBFNzdCREMwMDAzM0FGMjQgLyogSlNNZXNz
YWdlQ2hhbm5lbC5jcHAgKi8sCkBAIC0xNjI4OSw2ICsxNjI5OCw4IEBACiAJCUY1MjNEMzI0MDJE
RTQ0NzgwMTg2MzVDQSAvKiBkb20gKi8gPSB7CiAJCQlpc2EgPSBQQlhHcm91cDsKIAkJCWNoaWxk
cmVuID0gKAorCQkJCTg0ODJCNzQ0MTE5OEMzMkUwMEJGQjAwNSAvKiBIYXNoQ2hhbmdlRXZlbnQu
aWRsICovLAorCQkJCTI0NDJCQkY4MTE5NEM5RDMwMEQ0OTQ2OSAvKiBIYXNoQ2hhbmdlRXZlbnQu
aCAqLywKIAkJCQlFMUM0REU2RDBFQTc1QzY1MDAyM0NDRDYgLyogQWN0aXZlRE9NT2JqZWN0LmNw
cCAqLywKIAkJCQlFMUM0REU2ODBFQTc1QzFFMDAyM0NDRDYgLyogQWN0aXZlRE9NT2JqZWN0Lmgg
Ki8sCiAJCQkJQThDNEE3RkMwOUQ1NjMyNzAwMDNBQzhEIC8qIEF0dHIuY3BwICovLApAQCAtMTkx
MzMsNiArMTkxNDQsOCBAQAogCQkJCUM1RjRGNDExMTE5MzA2QzAwMEZERkFERCAvKiBKU0luZGV4
ZWREYXRhYmFzZVJlcXVlc3QuaCBpbiBIZWFkZXJzICovLAogCQkJCTZFOTZCQjFDMTE5ODZFRTIw
MDdEOTRDRCAvKiBXZWJHTEludGVncmFsVHlwZWRBcnJheUJhc2UuaCBpbiBIZWFkZXJzICovLAog
CQkJCTZFOTZCQjFEMTE5ODZFRTIwMDdEOTRDRCAvKiBXZWJHTFR5cGVkQXJyYXlCYXNlLmggaW4g
SGVhZGVycyAqLywKKwkJCQk4NDgyQjc0NjExOThDMzU0MDBCRkIwMDUgLyogSGFzaENoYW5nZUV2
ZW50LmggaW4gSGVhZGVycyAqLywKKwkJCQk4NDgyQjc1MjExOThDQjZCMDBCRkIwMDUgLyogSlNI
YXNoQ2hhbmdlRXZlbnQuaCBpbiBIZWFkZXJzICovLAogCQkJKTsKIAkJCXJ1bk9ubHlGb3JEZXBs
b3ltZW50UG9zdHByb2Nlc3NpbmcgPSAwOwogCQl9OwpAQCAtMjEzOTcsNiArMjE0MTAsNyBAQAog
CQkJCUM1RjRGNDBDMTE5MzA2QUMwMEZERkFERCAvKiBKU0lEQlJlcXVlc3QuY3BwIGluIFNvdXJj
ZXMgKi8sCiAJCQkJQzVGNEY0MTAxMTkzMDZDMDAwRkRGQUREIC8qIEpTSW5kZXhlZERhdGFiYXNl
UmVxdWVzdC5jcHAgaW4gU291cmNlcyAqLywKIAkJCQlDNTk1NjY3ODExOTMyNEM2MDBGRENFNDcg
LyogSlNJREJSZXF1ZXN0Q3VzdG9tLmNwcCBpbiBTb3VyY2VzICovLAorCQkJCTg0ODJCNzUxMTE5
OENCNkIwMEJGQjAwNSAvKiBKU0hhc2hDaGFuZ2VFdmVudC5jcHAgaW4gU291cmNlcyAqLywKIAkJ
CSk7CiAJCQlydW5Pbmx5Rm9yRGVwbG95bWVudFBvc3Rwcm9jZXNzaW5nID0gMDsKIAkJfTsKSW5k
ZXg6IFdlYkNvcmUvYmluZGluZ3MvanMvSlNFdmVudEN1c3RvbS5jcHAKPT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0g
V2ViQ29yZS9iaW5kaW5ncy9qcy9KU0V2ZW50Q3VzdG9tLmNwcAkocmV2aXNpb24gNTkxMjUpCisr
KyBXZWJDb3JlL2JpbmRpbmdzL2pzL0pTRXZlbnRDdXN0b20uY3BwCSh3b3JraW5nIGNvcHkpCkBA
IC0zOCw2ICszOCw3IEBACiAjaW5jbHVkZSAiSlNDdXN0b21FdmVudC5oIgogI2luY2x1ZGUgIkpT
Q29tcG9zaXRpb25FdmVudC5oIgogI2luY2x1ZGUgIkpTRXJyb3JFdmVudC5oIgorI2luY2x1ZGUg
IkpTSGFzaENoYW5nZUV2ZW50LmgiCiAjaW5jbHVkZSAiSlNLZXlib2FyZEV2ZW50LmgiCiAjaW5j
bHVkZSAiSlNNZXNzYWdlRXZlbnQuaCIKICNpbmNsdWRlICJKU01vdXNlRXZlbnQuaCIKQEAgLTU0
LDYgKzU1LDcgQEAKICNpbmNsdWRlICJKU1hNTEh0dHBSZXF1ZXN0UHJvZ3Jlc3NFdmVudC5oIgog
I2luY2x1ZGUgIkJlZm9yZUxvYWRFdmVudC5oIgogI2luY2x1ZGUgIkVycm9yRXZlbnQuaCIKKyNp
bmNsdWRlICJIYXNoQ2hhbmdlRXZlbnQuaCIKICNpbmNsdWRlICJLZXlib2FyZEV2ZW50LmgiCiAj
aW5jbHVkZSAiTWVzc2FnZUV2ZW50LmgiCiAjaW5jbHVkZSAiTW91c2VFdmVudC5oIgpAQCAtMTUz
LDYgKzE1NSw4IEBAIEpTVmFsdWUgdG9KUyhFeGVjU3RhdGUqIGV4ZWMsIEpTRE9NR2xvYmEKICAg
ICBlbHNlIGlmIChldmVudC0+aXNFcnJvckV2ZW50KCkpCiAgICAgICAgIHdyYXBwZXIgPSBDUkVB
VEVfRE9NX09CSkVDVF9XUkFQUEVSKGV4ZWMsIGdsb2JhbE9iamVjdCwgRXJyb3JFdmVudCwgZXZl
bnQpOwogI2VuZGlmCisgICAgZWxzZSBpZiAoZXZlbnQtPmlzSGFzaENoYW5nZUV2ZW50KCkpCisg
ICAgICAgIHdyYXBwZXIgPSBDUkVBVEVfRE9NX09CSkVDVF9XUkFQUEVSKGV4ZWMsIGdsb2JhbE9i
amVjdCwgSGFzaENoYW5nZUV2ZW50LCBldmVudCk7CiAgICAgZWxzZSBpZiAoZXZlbnQtPmlzUG9w
U3RhdGVFdmVudCgpKQogICAgICAgICB3cmFwcGVyID0gQ1JFQVRFX0RPTV9PQkpFQ1RfV1JBUFBF
UihleGVjLCBnbG9iYWxPYmplY3QsIFBvcFN0YXRlRXZlbnQsIGV2ZW50KTsKICAgICBlbHNlIGlm
IChldmVudC0+aXNDdXN0b21FdmVudCgpKQpJbmRleDogV2ViQ29yZS9iaW5kaW5ncy92OC9jdXN0
b20vVjhFdmVudEN1c3RvbS5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gV2ViQ29yZS9iaW5kaW5ncy92OC9j
dXN0b20vVjhFdmVudEN1c3RvbS5jcHAJKHJldmlzaW9uIDU5MTI1KQorKysgV2ViQ29yZS9iaW5k
aW5ncy92OC9jdXN0b20vVjhFdmVudEN1c3RvbS5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTQxLDYg
KzQxLDcgQEAKICNpbmNsdWRlICJWOENvbXBvc2l0aW9uRXZlbnQuaCIKICNpbmNsdWRlICJWOEN1
c3RvbUV2ZW50LmgiCiAjaW5jbHVkZSAiVjhFcnJvckV2ZW50LmgiCisjaW5jbHVkZSAiVjhIYXNo
Q2hhbmdlRXZlbnQuaCIKICNpbmNsdWRlICJWOEtleWJvYXJkRXZlbnQuaCIKICNpbmNsdWRlICJW
OE1lc3NhZ2VFdmVudC5oIgogI2luY2x1ZGUgIlY4TW91c2VFdmVudC5oIgpAQCAtMTE2LDYgKzEx
Nyw4IEBAIHY4OjpIYW5kbGU8djg6OlZhbHVlPiB0b1Y4KEV2ZW50KiBpbXBsKQogI2VuZGlmCiAg
ICAgICAgIHJldHVybiB0b1Y4KHN0YXRpY19jYXN0PFVJRXZlbnQqPihpbXBsKSk7CiAgICAgfQor
ICAgIGlmIChpbXBsLT5pc0hhc2hDaGFuZ2VFdmVudCgpKQorICAgICAgICByZXR1cm4gdG9WOChz
dGF0aWNfY2FzdDxIYXNoQ2hhbmdlRXZlbnQqPihpbXBsKSk7CiAgICAgaWYgKGltcGwtPmlzTXV0
YXRpb25FdmVudCgpKQogICAgICAgICByZXR1cm4gdG9WOChzdGF0aWNfY2FzdDxNdXRhdGlvbkV2
ZW50Kj4oaW1wbCkpOwogICAgIGlmIChpbXBsLT5pc092ZXJmbG93RXZlbnQoKSkKSW5kZXg6IFdl
YkNvcmUvZG9tL0RvY3VtZW50LmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBXZWJDb3JlL2RvbS9Eb2N1bWVu
dC5jcHAJKHJldmlzaW9uIDU5MTI1KQorKysgV2ViQ29yZS9kb20vRG9jdW1lbnQuY3BwCSh3b3Jr
aW5nIGNvcHkpCkBAIC02MCw2ICs2MCw3IEBACiAjaW5jbHVkZSAiRnJhbWVMb2FkZXIuaCIKICNp
bmNsdWRlICJGcmFtZVRyZWUuaCIKICNpbmNsdWRlICJGcmFtZVZpZXcuaCIKKyNpbmNsdWRlICJI
YXNoQ2hhbmdlRXZlbnQuaCIKICNpbmNsdWRlICJIVE1MQWxsQ29sbGVjdGlvbi5oIgogI2luY2x1
ZGUgIkhUTUxBbmNob3JFbGVtZW50LmgiCiAjaW5jbHVkZSAiSFRNTEJvZHlFbGVtZW50LmgiCkBA
IC00OTA1LDExICs0OTA2LDkgQEAgdm9pZCBEb2N1bWVudDo6ZW5xdWV1ZVBhZ2VzaG93RXZlbnQo
UGFnZQogICAgIGRpc3BhdGNoV2luZG93RXZlbnQoUGFnZVRyYW5zaXRpb25FdmVudDo6Y3JlYXRl
KGV2ZW50TmFtZXMoKS5wYWdlc2hvd0V2ZW50LCBwZXJzaXN0ZWQpLCB0aGlzKTsKIH0KIAotdm9p
ZCBEb2N1bWVudDo6ZW5xdWV1ZUhhc2hjaGFuZ2VFdmVudChjb25zdCBTdHJpbmcmIC8qb2xkVVJM
Ki8sIGNvbnN0IFN0cmluZyYgLypuZXdVUkwqLykKK3ZvaWQgRG9jdW1lbnQ6OmVucXVldWVIYXNo
Y2hhbmdlRXZlbnQoY29uc3QgU3RyaW5nJiBvbGRVUkwsIGNvbnN0IFN0cmluZyYgbmV3VVJMKQog
ewotICAgIC8vIEZJWE1FOiBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9
MzYzMzUgSGFzaGNoYW5nZSBldmVudCBpcyBub3cgaXRzIG93biBpbnRlcmZhY2UgYW5kIHRha2Vz
IHR3bwotICAgIC8vICAgVVJMIGFyZ3VtZW50cyB3aGljaCB3ZSBuZWVkIHRvIHBhc3MgaW4gaGVy
ZS4KLSAgICBlbnF1ZXVlRXZlbnQoRXZlbnQ6OmNyZWF0ZShldmVudE5hbWVzKCkuaGFzaGNoYW5n
ZUV2ZW50LCBmYWxzZSwgZmFsc2UpKTsKKyAgICBlbnF1ZXVlRXZlbnQoSGFzaENoYW5nZUV2ZW50
OjpjcmVhdGUob2xkVVJMLCBuZXdVUkwpKTsKIH0KIAogdm9pZCBEb2N1bWVudDo6ZW5xdWV1ZVBv
cHN0YXRlRXZlbnQoUGFzc1JlZlB0cjxTZXJpYWxpemVkU2NyaXB0VmFsdWU+IHN0YXRlT2JqZWN0
KQpJbmRleDogV2ViQ29yZS9kb20vRXZlbnQuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYkNvcmUvZG9t
L0V2ZW50LmNwcAkocmV2aXNpb24gNTkxMjUpCisrKyBXZWJDb3JlL2RvbS9FdmVudC5jcHAJKHdv
cmtpbmcgY29weSkKQEAgLTE3Miw2ICsxNzIsMTEgQEAgYm9vbCBFdmVudDo6aXNCZWZvcmVMb2Fk
RXZlbnQoKSBjb25zdAogICAgIHJldHVybiBmYWxzZTsKIH0KIAorYm9vbCBFdmVudDo6aXNIYXNo
Q2hhbmdlRXZlbnQoKSBjb25zdAoreworICAgIHJldHVybiBmYWxzZTsKK30KKwogI2lmIEVOQUJM
RShTVkcpCiBib29sIEV2ZW50Ojppc1NWR1pvb21FdmVudCgpIGNvbnN0CiB7CkluZGV4OiBXZWJD
b3JlL2RvbS9FdmVudC5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYkNvcmUvZG9tL0V2ZW50LmgJKHJldmlz
aW9uIDU5MTI1KQorKysgV2ViQ29yZS9kb20vRXZlbnQuaAkod29ya2luZyBjb3B5KQpAQCAtMTIz
LDYgKzEyMyw3IEBAIG5hbWVzcGFjZSBXZWJDb3JlIHsKICAgICAgICAgdmlydHVhbCBib29sIGlz
V2ViS2l0QW5pbWF0aW9uRXZlbnQoKSBjb25zdDsKICAgICAgICAgdmlydHVhbCBib29sIGlzV2Vi
S2l0VHJhbnNpdGlvbkV2ZW50KCkgY29uc3Q7CiAgICAgICAgIHZpcnR1YWwgYm9vbCBpc0JlZm9y
ZUxvYWRFdmVudCgpIGNvbnN0OworICAgICAgICB2aXJ0dWFsIGJvb2wgaXNIYXNoQ2hhbmdlRXZl
bnQoKSBjb25zdDsKICNpZiBFTkFCTEUoU1ZHKQogICAgICAgICB2aXJ0dWFsIGJvb2wgaXNTVkda
b29tRXZlbnQoKSBjb25zdDsKICNlbmRpZgpJbmRleDogV2ViQ29yZS9kb20vSGFzaENoYW5nZUV2
ZW50LmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PQotLS0gV2ViQ29yZS9kb20vSGFzaENoYW5nZUV2ZW50LmgJKHJldmlz
aW9uIDApCisrKyBXZWJDb3JlL2RvbS9IYXNoQ2hhbmdlRXZlbnQuaAkocmV2aXNpb24gMCkKQEAg
LTAsMCArMSw2NSBAQAorLyoKKyAqIENvcHlyaWdodCAoQykgMjAxMCBBcHBsZSBJbmMuIEFsbCBy
aWdodHMgcmVzZXJ2ZWQuCisgKgorICogVGhpcyBsaWJyYXJ5IGlzIGZyZWUgc29mdHdhcmU7IHlv
dSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vcgorICogbW9kaWZ5IGl0IHVuZGVyIHRoZSB0ZXJt
cyBvZiB0aGUgR05VIExpYnJhcnkgR2VuZXJhbCBQdWJsaWMKKyAqIExpY2Vuc2UgYXMgcHVibGlz
aGVkIGJ5IHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb247IGVpdGhlcgorICogdmVyc2lvbiAy
IG9mIHRoZSBMaWNlbnNlLCBvciAoYXQgeW91ciBvcHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLgor
ICoKKyAqIFRoaXMgbGlicmFyeSBpcyBkaXN0cmlidXRlZCBpbiB0aGUgaG9wZSB0aGF0IGl0IHdp
bGwgYmUgdXNlZnVsLAorICogYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4g
dGhlIGltcGxpZWQgd2FycmFudHkgb2YKKyAqIE1FUkNIQU5UQUJJTElUWSBvciBGSVRORVNTIEZP
UiBBIFBBUlRJQ1VMQVIgUFVSUE9TRS4gIFNlZSB0aGUgR05VCisgKiBMaWJyYXJ5IEdlbmVyYWwg
UHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KKyAqCisgKiBZb3Ugc2hvdWxkIGhhdmUg
cmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgTGlicmFyeSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNl
CisgKiBhbG9uZyB3aXRoIHRoaXMgbGlicmFyeTsgc2VlIHRoZSBmaWxlIENPUFlJTkcuTElCLiAg
SWYgbm90LCB3cml0ZSB0bworICogdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbiwgSW5jLiwg
NTEgRnJhbmtsaW4gU3RyZWV0LCBGaWZ0aCBGbG9vciwKKyAqIEJvc3RvbiwgTUEgMDIxMTAtMTMw
MSwgVVNBLgorICoKKyAqLworCisjaWZuZGVmIEhhc2hDaGFuZ2VFdmVudF9oCisjZGVmaW5lIEhh
c2hDaGFuZ2VFdmVudF9oCisKKyNpbmNsdWRlICJFdmVudC5oIgorI2luY2x1ZGUgIkV2ZW50TmFt
ZXMuaCIKKworbmFtZXNwYWNlIFdlYkNvcmUgeworCitjbGFzcyBIYXNoQ2hhbmdlRXZlbnQgOiBw
dWJsaWMgRXZlbnQgeworcHVibGljOgorICAgIHZpcnR1YWwgYm9vbCBpc0hhc2hDaGFuZ2VFdmVu
dCgpIGNvbnN0IHsgcmV0dXJuIHRydWU7IH0KKworICAgIHN0YXRpYyBQYXNzUmVmUHRyPEhhc2hD
aGFuZ2VFdmVudD4gY3JlYXRlKGNvbnN0IFN0cmluZyYgb2xkVVJMLCBjb25zdCBTdHJpbmcmIG5l
d1VSTCkKKyAgICB7CisgICAgICAgIHJldHVybiBhZG9wdFJlZihuZXcgSGFzaENoYW5nZUV2ZW50
KG9sZFVSTCwgbmV3VVJMKSk7CisgICAgfQorCisgICAgdm9pZCBpbml0SGFzaENoYW5nZUV2ZW50
KGNvbnN0IEF0b21pY1N0cmluZyYgZXZlbnRUeXBlLCBib29sIGNhbkJ1YmJsZSwgYm9vbCBjYW5j
ZWxhYmxlLCBjb25zdCBTdHJpbmcmIG9sZFVSTCwgY29uc3QgU3RyaW5nJiBuZXdVUkwpCisgICAg
eworICAgICAgICBpZiAoZGlzcGF0Y2hlZCgpKQorICAgICAgICAgICAgcmV0dXJuOworCisgICAg
ICAgIGluaXRFdmVudChldmVudFR5cGUsIGNhbkJ1YmJsZSwgY2FuY2VsYWJsZSk7CisKKyAgICAg
ICAgbV9vbGRVUkwgPSBvbGRVUkw7CisgICAgICAgIG1fbmV3VVJMID0gbmV3VVJMOworICAgIH0K
KworICAgIGNvbnN0IFN0cmluZyYgb2xkVVJMKCkgY29uc3QgeyByZXR1cm4gbV9vbGRVUkw7IH0K
KyAgICBjb25zdCBTdHJpbmcmIG5ld1VSTCgpIGNvbnN0IHsgcmV0dXJuIG1fbmV3VVJMOyB9CisK
K3ByaXZhdGU6CisgICAgSGFzaENoYW5nZUV2ZW50KGNvbnN0IFN0cmluZyYgb2xkVVJMLCBjb25z
dCBTdHJpbmcmIG5ld1VSTCkKKyAgICAgICAgOiBFdmVudChldmVudE5hbWVzKCkuaGFzaGNoYW5n
ZUV2ZW50LCBmYWxzZSwgZmFsc2UpCisgICAgICAgICwgbV9vbGRVUkwob2xkVVJMKQorICAgICAg
ICAsIG1fbmV3VVJMKG5ld1VSTCkKKyAgICB7fQorCisgICAgU3RyaW5nIG1fb2xkVVJMOworICAg
IFN0cmluZyBtX25ld1VSTDsKK307CisKK30gLy8gbmFtZXNwYWNlIFdlYkNvcmUKKworI2VuZGlm
IC8vIEhhc2hDaGFuZ2VFdmVudF9oCkluZGV4OiBXZWJDb3JlL2RvbS9IYXNoQ2hhbmdlRXZlbnQu
aWRsCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT0KLS0tIFdlYkNvcmUvZG9tL0hhc2hDaGFuZ2VFdmVudC5pZGwJKHJldmlz
aW9uIDApCisrKyBXZWJDb3JlL2RvbS9IYXNoQ2hhbmdlRXZlbnQuaWRsCShyZXZpc2lvbiAwKQpA
QCAtMCwwICsxLDM1IEBACisvKgorICogQ29weXJpZ2h0IChDKSAyMDEwIEFwcGxlIEluYy4gQWxs
IHJpZ2h0cyByZXNlcnZlZC4KKyAqCisgKiBUaGlzIGxpYnJhcnkgaXMgZnJlZSBzb2Z0d2FyZTsg
eW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29yCisgKiBtb2RpZnkgaXQgdW5kZXIgdGhlIHRl
cm1zIG9mIHRoZSBHTlUgTGlicmFyeSBHZW5lcmFsIFB1YmxpYworICogTGljZW5zZSBhcyBwdWJs
aXNoZWQgYnkgdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbjsgZWl0aGVyCisgKiB2ZXJzaW9u
IDIgb2YgdGhlIExpY2Vuc2UsIG9yIChhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24u
CisgKgorICogVGhpcyBsaWJyYXJ5IGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQg
d2lsbCBiZSB1c2VmdWwsCisgKiBidXQgV0lUSE9VVCBBTlkgV0FSUkFOVFk7IHdpdGhvdXQgZXZl
biB0aGUgaW1wbGllZCB3YXJyYW50eSBvZgorICogTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1Mg
Rk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFLiAgU2VlIHRoZSBHTlUKKyAqIExpYnJhcnkgR2VuZXJh
bCBQdWJsaWMgTGljZW5zZSBmb3IgbW9yZSBkZXRhaWxzLgorICoKKyAqIFlvdSBzaG91bGQgaGF2
ZSByZWNlaXZlZCBhIGNvcHkgb2YgdGhlIEdOVSBMaWJyYXJ5IEdlbmVyYWwgUHVibGljIExpY2Vu
c2UKKyAqIGFsb25nIHdpdGggdGhpcyBsaWJyYXJ5OyBzZWUgdGhlIGZpbGUgQ09QWUlORy5MSUIu
ICBJZiBub3QsIHdyaXRlIHRvCisgKiB0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uLCBJbmMu
LCA1MSBGcmFua2xpbiBTdHJlZXQsIEZpZnRoIEZsb29yLAorICogQm9zdG9uLCBNQSAwMjExMC0x
MzAxLCBVU0EuCisgKi8KKworbW9kdWxlIGV2ZW50cyB7CisKKyAgICAvLyBJbnRyb2R1Y2VkIGlu
IGh0dHA6Ly93d3cud2hhdHdnLm9yZy9zcGVjcy93ZWItYXBwcy9jdXJyZW50LXdvcmsvbXVsdGlw
YWdlL2hpc3RvcnkuaHRtbCNldmVudC1oYXNoY2hhbmdlCisgICAgaW50ZXJmYWNlIFsKKyAgICAg
ICAgR2VuZXJhdGVDb25zdHJ1Y3RvcgorICAgIF0gSGFzaENoYW5nZUV2ZW50IDogRXZlbnQgewor
ICAgICAgICB2b2lkIGluaXRIYXNoQ2hhbmdlRXZlbnQoaW4gRE9NU3RyaW5nIHR5cGUsIAorICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaW4gYm9vbGVhbiBjYW5CdWJibGUsIAorICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaW4gYm9vbGVhbiBjYW5jZWxhYmxlLCAKKyAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGluIERPTVN0cmluZyBvbGRVUkwsIAorICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaW4gRE9NU3RyaW5nIG5ld1VSTCk7IAorICAg
ICAgICByZWFkb25seSBhdHRyaWJ1dGUgRE9NU3RyaW5nIG9sZFVSTDsKKyAgICAgICAgcmVhZG9u
bHkgYXR0cmlidXRlIERPTVN0cmluZyBuZXdVUkw7CisgICAgfTsKKworfQpJbmRleDogTGF5b3V0
VGVzdHMvQ2hhbmdlTG9nCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL0NoYW5nZUxvZwkocmV2
aXNpb24gNTkxMzgpCisrKyBMYXlvdXRUZXN0cy9DaGFuZ2VMb2cJKHdvcmtpbmcgY29weSkKQEAg
LTEsMyArMSwxOSBAQAorMjAxMC0wNS0xMCAgU3RldmVuIExhaSAgPHN0ZXZlbl9sYWlAYXNpYS5h
cHBsZS5jb20+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAg
ICAgUkVHUkVTU0lPTig1ODczNj8pOiBmYXN0L2xvYWRlci9zdGF0ZW9iamVjdHMvZG9jdW1lbnQt
ZGVzdHJveWVkLW5hdmlnYXRlLWJhY2std2l0aC1mcmFnbWVudC1zY3JvbGwuaHRtbCBmYWlscyBp
bnRlcm1pdHRlbnRseQorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5j
Z2k/aWQ9Mzg3NTQKKworICAgICAgICBVcGRhdGVkIHRlc3QgY2FzZSB0byB1c2UgSGFzaENoYW5n
ZUV2ZW50Lm9sZFVSTCwgSGFzaENoYW5nZUV2ZW50Lm5ld1VSTCBpbnN0ZWFkIG9mIGxvY2F0aW9u
LmhyZWYgaW4gaGFzaGNoYW5nZSBldmVudC4KKworICAgICAgICAqIGZhc3QvZG9tL1dpbmRvdy93
aW5kb3ctcHJvcGVydGllcy1leHBlY3RlZC50eHQ6CisgICAgICAgICogZmFzdC9kb20vV2luZG93
L3dpbmRvdy1wcm9wZXJ0eS1kZXNjcmlwdG9ycy1leHBlY3RlZC50eHQ6CisgICAgICAgICogZmFz
dC9kb20vcHJvdG90eXBlLWluaGVyaXRhbmNlLWV4cGVjdGVkLnR4dDoKKyAgICAgICAgKiBmYXN0
L2pzL2dsb2JhbC1jb25zdHJ1Y3RvcnMtZXhwZWN0ZWQudHh0OgorICAgICAgICAqIGZhc3QvbG9h
ZGVyL3N0YXRlb2JqZWN0cy9kb2N1bWVudC1kZXN0cm95ZWQtbmF2aWdhdGUtYmFjay13aXRoLWZy
YWdtZW50LXNjcm9sbC5odG1sOgorICAgICAgICAqIGZhc3QvbG9hZGVyL3N0YXRlb2JqZWN0cy9w
dXNoc3RhdGUtd2l0aC1mcmFnbWVudC11cmxzLWFuZC1oYXNoY2hhbmdlLmh0bWw6CisKIDIwMTAt
MDUtMDcgIER1bWl0cnUgRGFuaWxpdWMgIDxkdW1pQGNocm9taXVtLm9yZz4KIAogICAgICAgICBS
ZXZpZXdlZCBieSBCcmFkeSBFaWRzb24uCkluZGV4OiBMYXlvdXRUZXN0cy9mYXN0L2RvbS9wcm90
b3R5cGUtaW5oZXJpdGFuY2UtZXhwZWN0ZWQudHh0Cj09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3Rz
L2Zhc3QvZG9tL3Byb3RvdHlwZS1pbmhlcml0YW5jZS1leHBlY3RlZC50eHQJKHJldmlzaW9uIDU5
MTI1KQorKysgTGF5b3V0VGVzdHMvZmFzdC9kb20vcHJvdG90eXBlLWluaGVyaXRhbmNlLWV4cGVj
dGVkLnR4dAkod29ya2luZyBjb3B5KQpAQCAtMjE3LDYgKzIxNyw4IEBAIFBBU1MgaW5uZXIuSFRN
TFVMaXN0RWxlbWVudC5pc0lubmVyIGlzIHQKIFBBU1MgaW5uZXIuSFRNTFVMaXN0RWxlbWVudC5j
b25zdHJ1Y3Rvci5pc0lubmVyIGlzIHRydWUKIFBBU1MgaW5uZXIuSFRNTFZpZGVvRWxlbWVudC5p
c0lubmVyIGlzIHRydWUKIFBBU1MgaW5uZXIuSFRNTFZpZGVvRWxlbWVudC5jb25zdHJ1Y3Rvci5p
c0lubmVyIGlzIHRydWUKK1BBU1MgaW5uZXIuSGFzaENoYW5nZUV2ZW50LmlzSW5uZXIgaXMgdHJ1
ZQorUEFTUyBpbm5lci5IYXNoQ2hhbmdlRXZlbnQuY29uc3RydWN0b3IuaXNJbm5lciBpcyB0cnVl
CiBQQVNTIGlubmVyLkltYWdlLmlzSW5uZXIgaXMgdHJ1ZQogUEFTUyBpbm5lci5JbWFnZS5jb25z
dHJ1Y3Rvci5pc0lubmVyIGlzIHRydWUKIFBBU1MgaW5uZXIuSW1hZ2VEYXRhLmlzSW5uZXIgaXMg
dHJ1ZQpJbmRleDogTGF5b3V0VGVzdHMvZmFzdC9kb20vV2luZG93L3dpbmRvdy1wcm9wZXJ0aWVz
LWV4cGVjdGVkLnR4dAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9mYXN0L2RvbS9XaW5kb3cv
d2luZG93LXByb3BlcnRpZXMtZXhwZWN0ZWQudHh0CShyZXZpc2lvbiA1OTEyNSkKKysrIExheW91
dFRlc3RzL2Zhc3QvZG9tL1dpbmRvdy93aW5kb3ctcHJvcGVydGllcy1leHBlY3RlZC50eHQJKHdv
cmtpbmcgY29weSkKQEAgLTEwNDksNiArMTA0OSw4IEBAIHdpbmRvdy5IVE1MVUxpc3RFbGVtZW50
IFtvYmplY3QgSFRNTFVMaXMKIHdpbmRvdy5IVE1MVUxpc3RFbGVtZW50LnByb3RvdHlwZSBbcHJp
bnRlZCBhYm92ZSBhcyB3aW5kb3cuRWxlbWVudC5wcm90b3R5cGVdCiB3aW5kb3cuSFRNTFZpZGVv
RWxlbWVudCBbb2JqZWN0IEhUTUxWaWRlb0VsZW1lbnRDb25zdHJ1Y3Rvcl0KIHdpbmRvdy5IVE1M
VmlkZW9FbGVtZW50LnByb3RvdHlwZSBbcHJpbnRlZCBhYm92ZSBhcyB3aW5kb3cuRWxlbWVudC5w
cm90b3R5cGVdCit3aW5kb3cuSGFzaENoYW5nZUV2ZW50IFtvYmplY3QgSGFzaENoYW5nZUV2ZW50
Q29uc3RydWN0b3JdCit3aW5kb3cuSGFzaENoYW5nZUV2ZW50LnByb3RvdHlwZSBbcHJpbnRlZCBh
Ym92ZSBhcyB3aW5kb3cuRXZlbnQucHJvdG90eXBlXQogd2luZG93LkltYWdlIFtvYmplY3QgSW1h
Z2VDb25zdHJ1Y3Rvcl0KIHdpbmRvdy5JbWFnZS5wcm90b3R5cGUgW3ByaW50ZWQgYWJvdmUgYXMg
d2luZG93LkVsZW1lbnQucHJvdG90eXBlXQogd2luZG93LkltYWdlRGF0YSBbb2JqZWN0IEltYWdl
RGF0YUNvbnN0cnVjdG9yXQpJbmRleDogTGF5b3V0VGVzdHMvZmFzdC9kb20vV2luZG93L3dpbmRv
dy1wcm9wZXJ0eS1kZXNjcmlwdG9ycy1leHBlY3RlZC50eHQKPT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0
VGVzdHMvZmFzdC9kb20vV2luZG93L3dpbmRvdy1wcm9wZXJ0eS1kZXNjcmlwdG9ycy1leHBlY3Rl
ZC50eHQJKHJldmlzaW9uIDU5MTI1KQorKysgTGF5b3V0VGVzdHMvZmFzdC9kb20vV2luZG93L3dp
bmRvdy1wcm9wZXJ0eS1kZXNjcmlwdG9ycy1leHBlY3RlZC50eHQJKHdvcmtpbmcgY29weSkKQEAg
LTExNSw2ICsxMTUsNyBAQCBQQVNTIHR5cGVvZiBPYmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlw
CiBQQVNTIHR5cGVvZiBPYmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yKHdpbmRvdywgJ0hU
TUxUaXRsZUVsZW1lbnQnKSBpcyAnb2JqZWN0JwogUEFTUyB0eXBlb2YgT2JqZWN0LmdldE93blBy
b3BlcnR5RGVzY3JpcHRvcih3aW5kb3csICdIVE1MVUxpc3RFbGVtZW50JykgaXMgJ29iamVjdCcK
IFBBU1MgdHlwZW9mIE9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3Iod2luZG93LCAnSFRN
TFZpZGVvRWxlbWVudCcpIGlzICdvYmplY3QnCitQQVNTIHR5cGVvZiBPYmplY3QuZ2V0T3duUHJv
cGVydHlEZXNjcmlwdG9yKHdpbmRvdywgJ0hhc2hDaGFuZ2VFdmVudCcpIGlzICdvYmplY3QnCiBQ
QVNTIHR5cGVvZiBPYmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yKHdpbmRvdywgJ0ltYWdl
JykgaXMgJ29iamVjdCcKIFBBU1MgdHlwZW9mIE9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0
b3Iod2luZG93LCAnSW1hZ2VEYXRhJykgaXMgJ29iamVjdCcKIFBBU1MgdHlwZW9mIE9iamVjdC5n
ZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3Iod2luZG93LCAnSW5maW5pdHknKSBpcyAnb2JqZWN0JwpJ
bmRleDogTGF5b3V0VGVzdHMvZmFzdC9qcy9nbG9iYWwtY29uc3RydWN0b3JzLWV4cGVjdGVkLnR4
dAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9mYXN0L2pzL2dsb2JhbC1jb25zdHJ1Y3RvcnMt
ZXhwZWN0ZWQudHh0CShyZXZpc2lvbiA1OTEyNSkKKysrIExheW91dFRlc3RzL2Zhc3QvanMvZ2xv
YmFsLWNvbnN0cnVjdG9ycy1leHBlY3RlZC50eHQJKHdvcmtpbmcgY29weSkKQEAgLTEwOCw2ICsx
MDgsNyBAQCBQQVNTIEhUTUxUZXh0QXJlYUVsZW1lbnQudG9TdHJpbmcoKSBpcyAnCiBQQVNTIEhU
TUxUaXRsZUVsZW1lbnQudG9TdHJpbmcoKSBpcyAnW29iamVjdCBIVE1MVGl0bGVFbGVtZW50Q29u
c3RydWN0b3JdJwogUEFTUyBIVE1MVUxpc3RFbGVtZW50LnRvU3RyaW5nKCkgaXMgJ1tvYmplY3Qg
SFRNTFVMaXN0RWxlbWVudENvbnN0cnVjdG9yXScKIFBBU1MgSFRNTFZpZGVvRWxlbWVudC50b1N0
cmluZygpIGlzICdbb2JqZWN0IEhUTUxWaWRlb0VsZW1lbnRDb25zdHJ1Y3Rvcl0nCitQQVNTIEhh
c2hDaGFuZ2VFdmVudC50b1N0cmluZygpIGlzICdbb2JqZWN0IEhhc2hDaGFuZ2VFdmVudENvbnN0
cnVjdG9yXScKIFBBU1MgSW1hZ2UudG9TdHJpbmcoKSBpcyAnW29iamVjdCBJbWFnZUNvbnN0cnVj
dG9yXScKIFBBU1MgSW1hZ2VEYXRhLnRvU3RyaW5nKCkgaXMgJ1tvYmplY3QgSW1hZ2VEYXRhQ29u
c3RydWN0b3JdJwogUEFTUyBLZXlib2FyZEV2ZW50LnRvU3RyaW5nKCkgaXMgJ1tvYmplY3QgS2V5
Ym9hcmRFdmVudENvbnN0cnVjdG9yXScKSW5kZXg6IExheW91dFRlc3RzL2Zhc3QvbG9hZGVyL3N0
YXRlb2JqZWN0cy9kb2N1bWVudC1kZXN0cm95ZWQtbmF2aWdhdGUtYmFjay13aXRoLWZyYWdtZW50
LXNjcm9sbC5odG1sCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL2Zhc3QvbG9hZGVyL3N0YXRl
b2JqZWN0cy9kb2N1bWVudC1kZXN0cm95ZWQtbmF2aWdhdGUtYmFjay13aXRoLWZyYWdtZW50LXNj
cm9sbC5odG1sCShyZXZpc2lvbiA1OTEyNSkKKysrIExheW91dFRlc3RzL2Zhc3QvbG9hZGVyL3N0
YXRlb2JqZWN0cy9kb2N1bWVudC1kZXN0cm95ZWQtbmF2aWdhdGUtYmFjay13aXRoLWZyYWdtZW50
LXNjcm9sbC5odG1sCSh3b3JraW5nIGNvcHkpCkBAIC05LDkgKzksMTQgQEAgaWYgKHdpbmRvdy5s
YXlvdXRUZXN0Q29udHJvbGxlcikgewogICAgIGxheW91dFRlc3RDb250cm9sbGVyLndhaXRVbnRp
bERvbmUoKTsKIH0KIAotZnVuY3Rpb24gbGFzdFBhdGhDb21wb25lbnQoKQorZnVuY3Rpb24gbGFz
dFBhdGhDb21wb25lbnQoaHJlZikKIHsKLSAgICByZXR1cm4gd2luZG93LmxvY2F0aW9uLmhyZWYu
c3BsaXQoJy8nKS5wb3AoKTsKKyAgICByZXR1cm4gaHJlZi5zcGxpdCgnLycpLnBvcCgpOworfQor
CitmdW5jdGlvbiBoYXNoT2YodXJsKQoreworICAgIHJldHVybiB1cmwuc3Vic3RyaW5nKHVybC5s
YXN0SW5kZXhPZignIycpKTsKIH0KIAogZnVuY3Rpb24gcnVuRmlyc3RTdGFnZU9mVGVzdCgpCkBA
IC0yMyw3ICsyOCw3IEBAIGZ1bmN0aW9uIHJ1bkZpcnN0U3RhZ2VPZlRlc3QoKQogCiBmdW5jdGlv
biBydW5TZWNvbmRTdGFnZU9mVGVzdCgpCiB7Ci0gICAgYWxlcnQoIkxhc3QgcGF0aCBjb21wb25l
bnQgb2YgbG9jYXRpb24gaXMgIiArIGxhc3RQYXRoQ29tcG9uZW50KCkpOworICAgIGFsZXJ0KCJM
YXN0IHBhdGggY29tcG9uZW50IG9mIGxvY2F0aW9uIGlzICIgKyBsYXN0UGF0aENvbXBvbmVudChs
b2NhdGlvbi5ocmVmKSk7CiAgICAgc2V0VGltZW91dCgiaGlzdG9yeS5iYWNrKCk7IiwgMCk7CiB9
CiAKQEAgLTU2LDEwICs2MSwxMCBAQCBmdW5jdGlvbiBzdGF0ZVBvcHBlZCgpCiAgICAgICAgIGhp
c3RvcnkuYmFjaygpOwogfQogCi1mdW5jdGlvbiBoYXNoQ2hhbmdlZCgpCitmdW5jdGlvbiBoYXNo
Q2hhbmdlZChldikKIHsKLSAgICBhbGVydCgiaGFzaENoYW5nZWQgLSBMYXN0IHBhdGggY29tcG9u
ZW50IG9mIGxvY2F0aW9uIGlzICIgKyBsYXN0UGF0aENvbXBvbmVudCgpKTsKLSAgIGlmICh3aW5k
b3cubG9jYXRpb24uaGFzaCA9PSAiI0ZpcnN0RW50cnlXaWxsTGF0ZXJCZVJlYWN0aXZhdGVkIikg
eworICAgYWxlcnQoImhhc2hDaGFuZ2VkIC0gTGFzdCBwYXRoIGNvbXBvbmVudCBvZiBsb2NhdGlv
biBpcyAiICsgbGFzdFBhdGhDb21wb25lbnQoZXYubmV3VVJMKSk7CisgICBpZiAoaGFzaE9mKGV2
Lm5ld1VSTCkgPT0gIiNGaXJzdEVudHJ5V2lsbExhdGVyQmVSZWFjdGl2YXRlZCIpIHsKICAgICAg
ICAgYWxlcnQoIlRlc3QgY29tcGxldGUiKTsKICAgICAgICAgc2Vzc2lvblN0b3JhZ2UuY2xlYXIo
KTsKICAgICAgICAgaWYgKHdpbmRvdy5sYXlvdXRUZXN0Q29udHJvbGxlcikKQEAgLTY3LDggKzcy
LDEwIEBAIGZ1bmN0aW9uIGhhc2hDaGFuZ2VkKCkKICAgICB9CiB9CiAKK3dpbmRvdy5vbmhhc2hj
aGFuZ2UgPSBoYXNoQ2hhbmdlZDsKKwogPC9zY3JpcHQ+Ci08Ym9keSBvbmxvYWQ9ImxvYWRlZCgp
OyIgb25wb3BzdGF0ZT0ic3RhdGVQb3BwZWQoKTsiIG9uaGFzaGNoYW5nZT0iaGFzaENoYW5nZWQo
KTsiIG9udW5sb2FkPSIvKiBkaXNhYmxlIHBhZ2UgY2FjaGUgKi8iPgorPGJvZHkgb25sb2FkPSJs
b2FkZWQoKTsiIG9ucG9wc3RhdGU9InN0YXRlUG9wcGVkKCk7IiBvbnVubG9hZD0iLyogZGlzYWJs
ZSBwYWdlIGNhY2hlICovIj4KIDxwcmU+CiBUaGlzIHRlc3Q6CiAtQnVpbGRzIHVwIGEgbGlzdCBv
ZiBzdGF0ZSBvYmplY3QgZW50cmllcyB3aXRoIGZyYWdtZW50IFVSTHMuCkluZGV4OiBMYXlvdXRU
ZXN0cy9mYXN0L2xvYWRlci9zdGF0ZW9iamVjdHMvcHVzaHN0YXRlLXdpdGgtZnJhZ21lbnQtdXJs
cy1hbmQtaGFzaGNoYW5nZS5odG1sCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL2Zhc3QvbG9h
ZGVyL3N0YXRlb2JqZWN0cy9wdXNoc3RhdGUtd2l0aC1mcmFnbWVudC11cmxzLWFuZC1oYXNoY2hh
bmdlLmh0bWwJKHJldmlzaW9uIDU5MTI1KQorKysgTGF5b3V0VGVzdHMvZmFzdC9sb2FkZXIvc3Rh
dGVvYmplY3RzL3B1c2hzdGF0ZS13aXRoLWZyYWdtZW50LXVybHMtYW5kLWhhc2hjaGFuZ2UuaHRt
bAkod29ya2luZyBjb3B5KQpAQCAtMzksMjcgKzM5LDI5IEBAIGZ1bmN0aW9uIHJ1blRlc3QoKQog
ICAgIGhpc3RvcnkuYmFjaygpOwogfQogCi1mdW5jdGlvbiBsYXN0UGF0aENvbXBvbmVudCgpCitm
dW5jdGlvbiBsYXN0UGF0aENvbXBvbmVudChocmVmKQogewotICAgIHJldHVybiB3aW5kb3cubG9j
YXRpb24uaHJlZi5zcGxpdCgnLycpLnBvcCgpOworICAgIHJldHVybiBocmVmLnNwbGl0KCcvJyku
cG9wKCk7CiB9CiAKIGZ1bmN0aW9uIHN0YXRlUG9wcGVkKCkKIHsKLSAgICBsb2coIlN0YXRlIHBv
cHBlZCB3aXRoIGV2ZW50ICIgKyBldmVudC5zdGF0ZSArICIgKHR5cGUgIiArIHR5cGVvZiBldmVu
dC5zdGF0ZSArICIpIGFuZCBsYXN0IHBhdGggY29tcG9uZW50ICIgKyBsYXN0UGF0aENvbXBvbmVu
dCgpKTsKKyAgICBsb2coIlN0YXRlIHBvcHBlZCB3aXRoIGV2ZW50ICIgKyBldmVudC5zdGF0ZSAr
ICIgKHR5cGUgIiArIHR5cGVvZiBldmVudC5zdGF0ZSArICIpIGFuZCBsYXN0IHBhdGggY29tcG9u
ZW50ICIgKyBsYXN0UGF0aENvbXBvbmVudChsb2NhdGlvbi5ocmVmKSk7CiAgICAgaWYgKGV2ZW50
LnN0YXRlICE9ICJPcmlnaW5hbEVudHJ5IikKICAgICAgICAgc2V0VGltZW91dCgiaGlzdG9yeS5i
YWNrKCk7IiwgMCk7CiAgICAgZWxzZSBpZiAod2luZG93LmxheW91dFRlc3RDb250cm9sbGVyKQog
ICAgICAgICBsYXlvdXRUZXN0Q29udHJvbGxlci5ub3RpZnlEb25lKCk7CiB9CiAKLWZ1bmN0aW9u
IGhhc2hDaGFuZ2VkKCkKK2Z1bmN0aW9uIGhhc2hDaGFuZ2VkKGV2KQogewotICAgIGxvZygiSGFz
aCBjaGFuZ2UgZmlyZWQgYW5kIGxhc3QgcGF0aCBjb21wb25lbnQgaXMgIiArIGxhc3RQYXRoQ29t
cG9uZW50KCkpOworICAgIGxvZygiSGFzaCBjaGFuZ2UgZmlyZWQgYW5kIGxhc3QgcGF0aCBjb21w
b25lbnQgaXMgIiArIGxhc3RQYXRoQ29tcG9uZW50KGV2Lm5ld1VSTCkpOwogfQogCit3aW5kb3cu
b25oYXNoY2hhbmdlID0gaGFzaENoYW5nZWQ7CisKIDwvc2NyaXB0PgotPGJvZHkgb25sb2FkPSJy
dW5UZXN0KCk7IiBvbnBvcHN0YXRlPSJzdGF0ZVBvcHBlZCgpOyIgb25oYXNoY2hhbmdlPSJoYXNo
Q2hhbmdlZCgpOyI+Cis8Ym9keSBvbmxvYWQ9InJ1blRlc3QoKTsiIG9ucG9wc3RhdGU9InN0YXRl
UG9wcGVkKCk7Ij4KIDxwcmU+CiBUaGlzIHRlc3QgcHVzaGVzIGEgc2VyaWVzIG9mIHN0YXRlIG9i
amVjdHMgd2l0aCBkaWZmZXJlbnQgVVJMcyBhbmQgZnJhZ21lbnQgaWRlbnRpZmllcnMgbWVhbnQg
dG8gdGVzdCB0aGUgaGFzaENoYW5nZSBldmVudCBhcyBzdGF0ZXMgYXJlIHBvcHBlZC4KIDwvcHJl
Pjxicj4K
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>55671</attachid>
            <date>2010-05-10 23:53:37 -0700</date>
            <delta_ts>2010-09-08 14:27:45 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>36335-2.patch</filename>
            <type>text/plain</type>
            <size>28867</size>
            <attacher name="Steven Lai">s3lance</attacher>
            
              <data encoding="base64">SW5kZXg6IFdlYkNvcmUvQ2hhbmdlTG9nCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYkNvcmUvQ2hhbmdlTG9n
CShyZXZpc2lvbiA1OTEzOCkKKysrIFdlYkNvcmUvQ2hhbmdlTG9nCSh3b3JraW5nIGNvcHkpCkBA
IC0xLDMgKzEsMzkgQEAKKzIwMTAtMDUtMTAgIFN0ZXZlbiBMYWkgIDxzdGV2ZW5fbGFpQGFzaWEu
YXBwbGUuY29tPgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAg
ICAgIEhhc2hjaGFuZ2UgZXZlbnQgaXMgbm8gbG9uZ2VyIGEgc2ltcGxlIGV2ZW50LCBuZWVkcyB0
byBiZSBpdHMgb3duIGludGVyZmFjZQorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9z
aG93X2J1Zy5jZ2k/aWQ9MzYzMzUKKyAgICAgICAgPHJkYXI6Ly9wcm9ibGVtLzc3Njk3Nzk+CisK
KyAgICAgICAgUkVHUkVTU0lPTig1ODczNj8pOiBmYXN0L2xvYWRlci9zdGF0ZW9iamVjdHMvZG9j
dW1lbnQtZGVzdHJveWVkLW5hdmlnYXRlLWJhY2std2l0aC1mcmFnbWVudC1zY3JvbGwuaHRtbCBm
YWlscyBpbnRlcm1pdHRlbnRseQorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93
X2J1Zy5jZ2k/aWQ9Mzg3NTQKKworICAgICAgICAqIERlcml2ZWRTb3VyY2VzLmNwcDoKKyAgICAg
ICAgKiBEZXJpdmVkU291cmNlcy5tYWtlOgorICAgICAgICAqIEdOVW1ha2VmaWxlLmFtOgorICAg
ICAgICAqIFdlYkNvcmUuZ3lwaToKKyAgICAgICAgKiBXZWJDb3JlLnByaToKKyAgICAgICAgKiBX
ZWJDb3JlLnZjcHJvai9XZWJDb3JlLnZjcHJvajoKKyAgICAgICAgKiBXZWJDb3JlLnhjb2RlcHJv
ai9wcm9qZWN0LnBieHByb2o6CisgICAgICAgICogYmluZGluZ3MvanMvSlNFdmVudEN1c3RvbS5j
cHA6CisgICAgICAgIChXZWJDb3JlOjp0b0pTKToKKyAgICAgICAgKiBiaW5kaW5ncy92OC9jdXN0
b20vVjhFdmVudEN1c3RvbS5jcHA6CisgICAgICAgIChXZWJDb3JlOjp0b1Y4KToKKyAgICAgICAg
KiBkb20vRG9jdW1lbnQuY3BwOgorICAgICAgICAoV2ViQ29yZTo6RG9jdW1lbnQ6OmVucXVldWVI
YXNoY2hhbmdlRXZlbnQpOgorICAgICAgICAqIGRvbS9FdmVudC5jcHA6CisgICAgICAgIChXZWJD
b3JlOjpFdmVudDo6aXNIYXNoQ2hhbmdlRXZlbnQpOgorICAgICAgICAqIGRvbS9FdmVudC5oOgor
ICAgICAgICAqIGRvbS9IYXNoQ2hhbmdlRXZlbnQuaDogQWRkZWQuCisgICAgICAgIChXZWJDb3Jl
OjpIYXNoQ2hhbmdlRXZlbnQ6OmlzSGFzaENoYW5nZUV2ZW50KToKKyAgICAgICAgKFdlYkNvcmU6
Okhhc2hDaGFuZ2VFdmVudDo6Y3JlYXRlKToKKyAgICAgICAgKFdlYkNvcmU6Okhhc2hDaGFuZ2VF
dmVudDo6aW5pdEhhc2hDaGFuZ2VFdmVudCk6CisgICAgICAgIChXZWJDb3JlOjpIYXNoQ2hhbmdl
RXZlbnQ6Om9sZFVSTCk6CisgICAgICAgIChXZWJDb3JlOjpIYXNoQ2hhbmdlRXZlbnQ6Om5ld1VS
TCk6CisgICAgICAgIChXZWJDb3JlOjpIYXNoQ2hhbmdlRXZlbnQ6Okhhc2hDaGFuZ2VFdmVudCk6
CisgICAgICAgICogZG9tL0hhc2hDaGFuZ2VFdmVudC5pZGw6IEFkZGVkLgorCiAyMDEwLTA1LTEw
ICBTaW1vbiBGcmFzZXIgIDxzaW1vbi5mcmFzZXJAYXBwbGUuY29tPgogCiAgICAgICAgIFJldmll
d2VkIGJ5IEFuZGVycyBDYXJsc3NvbgpJbmRleDogV2ViQ29yZS9EZXJpdmVkU291cmNlcy5jcHAK
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PQotLS0gV2ViQ29yZS9EZXJpdmVkU291cmNlcy5jcHAJKHJldmlzaW9uIDU5MTI1
KQorKysgV2ViQ29yZS9EZXJpdmVkU291cmNlcy5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTkxLDYg
KzkxLDcgQEAKICNpbmNsdWRlICJKU0ZpbGVMaXN0LmNwcCIKICNpbmNsdWRlICJKU0dlb2xvY2F0
aW9uLmNwcCIKICNpbmNsdWRlICJKU0dlb3Bvc2l0aW9uLmNwcCIKKyNpbmNsdWRlICJKU0hhc2hD
aGFuZ2VFdmVudC5jcHAiCiAjaW5jbHVkZSAiSlNIaXN0b3J5LmNwcCIKICNpbmNsdWRlICJKU0hU
TUxBbGxDb2xsZWN0aW9uLmNwcCIKICNpbmNsdWRlICJKU0hUTUxBbmNob3JFbGVtZW50LmNwcCIK
SW5kZXg6IFdlYkNvcmUvRGVyaXZlZFNvdXJjZXMubWFrZQo9PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBXZWJDb3Jl
L0Rlcml2ZWRTb3VyY2VzLm1ha2UJKHJldmlzaW9uIDU5MTI1KQorKysgV2ViQ29yZS9EZXJpdmVk
U291cmNlcy5tYWtlCSh3b3JraW5nIGNvcHkpCkBAIC0xMzUsNiArMTM1LDcgQEAgRE9NX0NMQVNT
RVMgPSBcCiAgICAgRmlsZUxpc3QgXAogICAgIEdlb2xvY2F0aW9uIFwKICAgICBHZW9wb3NpdGlv
biBcCisgICAgSGFzaENoYW5nZUV2ZW50IFwKICAgICBIVE1MQWxsQ29sbGVjdGlvbiBcCiAgICAg
SFRNTEFuY2hvckVsZW1lbnQgXAogICAgIEhUTUxBcHBsZXRFbGVtZW50IFwKSW5kZXg6IFdlYkNv
cmUvR05VbWFrZWZpbGUuYW0KPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gV2ViQ29yZS9HTlVtYWtlZmlsZS5hbQko
cmV2aXNpb24gNTkxMjUpCisrKyBXZWJDb3JlL0dOVW1ha2VmaWxlLmFtCSh3b3JraW5nIGNvcHkp
CkBAIC0xNDYsNiArMTQ2LDcgQEAgSURMX0JJTkRJTkdTICs9IFwKIAlXZWJDb3JlL2RvbS9FcnJv
ckV2ZW50LmlkbCBcCiAJV2ViQ29yZS9kb20vRXZlbnQuaWRsIFwKIAlXZWJDb3JlL2RvbS9FdmVu
dEV4Y2VwdGlvbi5pZGwgXAorCVdlYkNvcmUvZG9tL0hhc2hDaGFuZ2VFdmVudC5pZGwgXAogCVdl
YkNvcmUvZG9tL0tleWJvYXJkRXZlbnQuaWRsIFwKIAlXZWJDb3JlL2RvbS9NZXNzYWdlQ2hhbm5l
bC5pZGwgXAogCVdlYkNvcmUvZG9tL01lc3NhZ2VFdmVudC5pZGwgXApAQCAtNzk1LDYgKzc5Niw3
IEBAIHdlYmNvcmVfc291cmNlcyArPSBcCiAJV2ViQ29yZS9kb20vRXhjZXB0aW9uQ29kZS5oIFwK
IAlXZWJDb3JlL2RvbS9JbnB1dEVsZW1lbnQuY3BwIFwKIAlXZWJDb3JlL2RvbS9JbnB1dEVsZW1l
bnQuaCBcCisJV2ViQ29yZS9kb20vSGFzaENoYW5nZUV2ZW50LmggXAogCVdlYkNvcmUvZG9tL0tl
eWJvYXJkRXZlbnQuY3BwIFwKIAlXZWJDb3JlL2RvbS9LZXlib2FyZEV2ZW50LmggXAogCVdlYkNv
cmUvZG9tL01hcHBlZEF0dHJpYnV0ZS5jcHAgXApJbmRleDogV2ViQ29yZS9XZWJDb3JlLmd5cGkK
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PQotLS0gV2ViQ29yZS9XZWJDb3JlLmd5cGkJKHJldmlzaW9uIDU5MTI1KQorKysg
V2ViQ29yZS9XZWJDb3JlLmd5cGkJKHdvcmtpbmcgY29weSkKQEAgLTUxLDYgKzUxLDcgQEAKICAg
ICAgICAgICAgICdkb20vRXZlbnRFeGNlcHRpb24uaWRsJywKICAgICAgICAgICAgICdkb20vRXZl
bnRMaXN0ZW5lci5pZGwnLAogICAgICAgICAgICAgJ2RvbS9FdmVudFRhcmdldC5pZGwnLAorICAg
ICAgICAgICAgJ2RvbS9IYXNoQ2hhbmdlRXZlbnQuaWRsJywKICAgICAgICAgICAgICdkb20vS2V5
Ym9hcmRFdmVudC5pZGwnLAogICAgICAgICAgICAgJ2RvbS9NZXNzYWdlQ2hhbm5lbC5pZGwnLAog
ICAgICAgICAgICAgJ2RvbS9NZXNzYWdlRXZlbnQuaWRsJywKQEAgLTExMjcsNiArMTEyOCw3IEBA
CiAgICAgICAgICAgICAnZG9tL0V4Y2VwdGlvbkNvZGUuaCcsCiAgICAgICAgICAgICAnZG9tL0lu
cHV0RWxlbWVudC5jcHAnLAogICAgICAgICAgICAgJ2RvbS9JbnB1dEVsZW1lbnQuaCcsCisgICAg
ICAgICAgICAnZG9tL0hhc2hDaGFuZ2VFdmVudC5oJywKICAgICAgICAgICAgICdkb20vS2V5Ym9h
cmRFdmVudC5jcHAnLAogICAgICAgICAgICAgJ2RvbS9LZXlib2FyZEV2ZW50LmgnLAogICAgICAg
ICAgICAgJ2RvbS9NYXBwZWRBdHRyaWJ1dGUuY3BwJywKSW5kZXg6IFdlYkNvcmUvV2ViQ29yZS5w
cmkKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PQotLS0gV2ViQ29yZS9XZWJDb3JlLnByaQkocmV2aXNpb24gNTkxMjUpCisr
KyBXZWJDb3JlL1dlYkNvcmUucHJpCSh3b3JraW5nIGNvcHkpCkBAIC0yNzEsNiArMjcxLDcgQEAg
SURMX0JJTkRJTkdTICs9IFwKICAgICBkb20vRXZlbnRFeGNlcHRpb24uaWRsIFwKICMgICAgZG9t
L0V2ZW50TGlzdGVuZXIuaWRsIFwKICMgICAgZG9tL0V2ZW50VGFyZ2V0LmlkbCBcCisgICAgZG9t
L0hhc2hDaGFuZ2VFdmVudC5pZGwgXAogICAgIGRvbS9LZXlib2FyZEV2ZW50LmlkbCBcCiAgICAg
ZG9tL01vdXNlRXZlbnQuaWRsIFwKICAgICBkb20vTWVzc2FnZUNoYW5uZWwuaWRsIFwKSW5kZXg6
IFdlYkNvcmUvV2ViQ29yZS52Y3Byb2ovV2ViQ29yZS52Y3Byb2oKPT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gV2Vi
Q29yZS9XZWJDb3JlLnZjcHJvai9XZWJDb3JlLnZjcHJvagkocmV2aXNpb24gNTkxMjUpCisrKyBX
ZWJDb3JlL1dlYkNvcmUudmNwcm9qL1dlYkNvcmUudmNwcm9qCSh3b3JraW5nIGNvcHkpCkBAIC0z
OTI1LDYgKzM5MjUsNjIgQEAKIAkJCQk+DQogCQkJPC9GaWxlPg0KIAkJCTxGaWxlDQorCQkJCVJl
bGF0aXZlUGF0aD0iJChXZWJLaXRPdXRwdXREaXIpXG9ialwkKFByb2plY3ROYW1lKVxEZXJpdmVk
U291cmNlc1xKU0hhc2hDaGFuZ2VFdmVudC5jcHAiDQorCQkJCT4NCisJCQkJPEZpbGVDb25maWd1
cmF0aW9uDQorCQkJCQlOYW1lPSJEZWJ1Z3xXaW4zMiINCisJCQkJCUV4Y2x1ZGVkRnJvbUJ1aWxk
PSJ0cnVlIg0KKwkJCQkJPg0KKwkJCQkJPFRvb2wNCisJCQkJCQlOYW1lPSJWQ0NMQ29tcGlsZXJU
b29sIg0KKwkJCQkJLz4NCisJCQkJPC9GaWxlQ29uZmlndXJhdGlvbj4NCisJCQkJPEZpbGVDb25m
aWd1cmF0aW9uDQorCQkJCQlOYW1lPSJSZWxlYXNlfFdpbjMyIg0KKwkJCQkJRXhjbHVkZWRGcm9t
QnVpbGQ9InRydWUiDQorCQkJCQk+DQorCQkJCQk8VG9vbA0KKwkJCQkJCU5hbWU9IlZDQ0xDb21w
aWxlclRvb2wiDQorCQkJCQkvPg0KKwkJCQk8L0ZpbGVDb25maWd1cmF0aW9uPg0KKwkJCQk8Rmls
ZUNvbmZpZ3VyYXRpb24NCisJCQkJCU5hbWU9IkRlYnVnX0ludGVybmFsfFdpbjMyIg0KKwkJCQkJ
RXhjbHVkZWRGcm9tQnVpbGQ9InRydWUiDQorCQkJCQk+DQorCQkJCQk8VG9vbA0KKwkJCQkJCU5h
bWU9IlZDQ0xDb21waWxlclRvb2wiDQorCQkJCQkvPg0KKwkJCQk8L0ZpbGVDb25maWd1cmF0aW9u
Pg0KKwkJCQk8RmlsZUNvbmZpZ3VyYXRpb24NCisJCQkJCU5hbWU9IkRlYnVnX0NhaXJvfFdpbjMy
Ig0KKwkJCQkJRXhjbHVkZWRGcm9tQnVpbGQ9InRydWUiDQorCQkJCQk+DQorCQkJCQk8VG9vbA0K
KwkJCQkJCU5hbWU9IlZDQ0xDb21waWxlclRvb2wiDQorCQkJCQkvPg0KKwkJCQk8L0ZpbGVDb25m
aWd1cmF0aW9uPg0KKwkJCQk8RmlsZUNvbmZpZ3VyYXRpb24NCisJCQkJCU5hbWU9IlJlbGVhc2Vf
Q2Fpcm98V2luMzIiDQorCQkJCQlFeGNsdWRlZEZyb21CdWlsZD0idHJ1ZSINCisJCQkJCT4NCisJ
CQkJCTxUb29sDQorCQkJCQkJTmFtZT0iVkNDTENvbXBpbGVyVG9vbCINCisJCQkJCS8+DQorCQkJ
CTwvRmlsZUNvbmZpZ3VyYXRpb24+DQorCQkJCTxGaWxlQ29uZmlndXJhdGlvbg0KKwkJCQkJTmFt
ZT0iRGVidWdfQWxsfFdpbjMyIg0KKwkJCQkJRXhjbHVkZWRGcm9tQnVpbGQ9InRydWUiDQorCQkJ
CQk+DQorCQkJCQk8VG9vbA0KKwkJCQkJCU5hbWU9IlZDQ0xDb21waWxlclRvb2wiDQorCQkJCQkv
Pg0KKwkJCQk8L0ZpbGVDb25maWd1cmF0aW9uPg0KKwkJCTwvRmlsZT4NCisJCQk8RmlsZQ0KKwkJ
CQlSZWxhdGl2ZVBhdGg9IiQoV2ViS2l0T3V0cHV0RGlyKVxvYmpcJChQcm9qZWN0TmFtZSlcRGVy
aXZlZFNvdXJjZXNcSlNIYXNoQ2hhbmdlRXZlbnQuaCINCisJCQkJPg0KKwkJCTwvRmlsZT4NCisJ
CQk8RmlsZQ0KIAkJCQlSZWxhdGl2ZVBhdGg9IiQoV2ViS2l0T3V0cHV0RGlyKVxvYmpcJChQcm9q
ZWN0TmFtZSlcRGVyaXZlZFNvdXJjZXNcSlNIaXN0b3J5LmNwcCINCiAJCQkJPg0KIAkJCQk8Rmls
ZUNvbmZpZ3VyYXRpb24NCkBAIC0yOTQ2OSw2ICsyOTUyNSwxMCBAQAogCQkJCT4NCiAJCQk8L0Zp
bGU+DQogCQkJPEZpbGUNCisJCQkJUmVsYXRpdmVQYXRoPSIuLlxkb21cSGFzaENoYW5nZUV2ZW50
LmgiDQorCQkJCT4NCisJCQk8L0ZpbGU+DQorCQkJPEZpbGUNCiAJCQkJUmVsYXRpdmVQYXRoPSIu
Llxkb21cS2V5Ym9hcmRFdmVudC5jcHAiDQogCQkJCT4NCiAJCQk8L0ZpbGU+DQpJbmRleDogV2Vi
Q29yZS9XZWJDb3JlLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2oKPT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gV2Vi
Q29yZS9XZWJDb3JlLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2oJKHJldmlzaW9uIDU5MTI1KQor
KysgV2ViQ29yZS9XZWJDb3JlLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2oJKHdvcmtpbmcgY29w
eSkKQEAgLTEzNjUsNiArMTM2NSw5IEBACiAJCTg0NUU3MkZDMEZEMjYyMzkwMEE4N0Q3OSAvKiBT
VkdGaWx0ZXIuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9
IDg0NUU3MkZBMEZEMjYyMzkwMEE4N0Q3OSAvKiBTVkdGaWx0ZXIuaCAqLzsgfTsKIAkJODQ4MDE5
NTQxMDhCQUZCMzAwQ0IyQjFGIC8qIEZFR2F1c3NpYW5CbHVyLmNwcCBpbiBTb3VyY2VzICovID0g
e2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDg0ODAxOTUyMTA4QkFGQjMwMENCMkIxRiAv
KiBGRUdhdXNzaWFuQmx1ci5jcHAgKi87IH07CiAJCTg0ODAxOTU1MTA4QkFGQjMwMENCMkIxRiAv
KiBGRUdhdXNzaWFuQmx1ci5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBm
aWxlUmVmID0gODQ4MDE5NTMxMDhCQUZCMzAwQ0IyQjFGIC8qIEZFR2F1c3NpYW5CbHVyLmggKi87
IH07CisJCTg0ODJCNzQ2MTE5OEMzNTQwMEJGQjAwNSAvKiBIYXNoQ2hhbmdlRXZlbnQuaCBpbiBI
ZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDI0NDJCQkY4MTE5NEM5
RDMwMEQ0OTQ2OSAvKiBIYXNoQ2hhbmdlRXZlbnQuaCAqLzsgfTsKKwkJODQ4MkI3NTExMTk4Q0I2
QjAwQkZCMDA1IC8qIEpTSGFzaENoYW5nZUV2ZW50LmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9
IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDg0ODJCNzRGMTE5OENCNkIwMEJGQjAwNSAvKiBKU0hh
c2hDaGFuZ2VFdmVudC5jcHAgKi87IH07CisJCTg0ODJCNzUyMTE5OENCNkIwMEJGQjAwNSAvKiBK
U0hhc2hDaGFuZ2VFdmVudC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBm
aWxlUmVmID0gODQ4MkI3NTAxMTk4Q0I2QjAwQkZCMDA1IC8qIEpTSGFzaENoYW5nZUV2ZW50Lmgg
Ki87IH07CiAJCTg0ODUyMjdCMTE5MDE2MkMwMDZFREM3RiAvKiBKU1NWR0hLZXJuRWxlbWVudC5j
cHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA4NDg1MjI3
NzExOTAxNjJDMDA2RURDN0YgLyogSlNTVkdIS2VybkVsZW1lbnQuY3BwICovOyB9OwogCQk4NDg1
MjI3QzExOTAxNjJDMDA2RURDN0YgLyogSlNTVkdIS2VybkVsZW1lbnQuaCBpbiBIZWFkZXJzICov
ID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDg0ODUyMjc4MTE5MDE2MkMwMDZFREM3
RiAvKiBKU1NWR0hLZXJuRWxlbWVudC5oICovOyB9OwogCQk4NDg1MjI3RDExOTAxNjJDMDA2RURD
N0YgLyogSlNTVkdWS2VybkVsZW1lbnQuY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVp
bGRGaWxlOyBmaWxlUmVmID0gODQ4NTIyNzkxMTkwMTYyQzAwNkVEQzdGIC8qIEpTU1ZHVktlcm5F
bGVtZW50LmNwcCAqLzsgfTsKQEAgLTYwNjEsNiArNjA2NCw3IEBACiAJCTFDRjZCRTEzMEU5QkI0
NjcwMDI1RTFDRCAvKiBPYmpDTm9kZUZpbHRlckNvbmRpdGlvbi5oICovID0ge2lzYSA9IFBCWEZp
bGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNl
Y29kZS5jLmg7IHBhdGggPSBPYmpDTm9kZUZpbHRlckNvbmRpdGlvbi5oOyBzb3VyY2VUcmVlID0g
Ijxncm91cD4iOyB9OwogCQkxQ0ZBRTMyMjBBNkQ2QTNGMDAzMjU5M0QgLyogbGlib2JqYy5keWxp
YiAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9ICJjb21w
aWxlZC5tYWNoLW8uZHlsaWIiOyBuYW1lID0gbGlib2JqYy5keWxpYjsgcGF0aCA9IC91c3IvbGli
L2xpYm9iamMuZHlsaWI7IHNvdXJjZVRyZWUgPSAiPGFic29sdXRlPiI7IH07CiAJCTIyOEMyODQ0
MTBEODI1MDAwMDlEMEQwRSAvKiBTY3JpcHRXcmFwcGFibGUuaCAqLyA9IHtpc2EgPSBQQlhGaWxl
UmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNv
ZGUuYy5oOyBwYXRoID0gU2NyaXB0V3JhcHBhYmxlLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7
IH07CisJCTI0NDJCQkY4MTE5NEM5RDMwMEQ0OTQ2OSAvKiBIYXNoQ2hhbmdlRXZlbnQuaCAqLyA9
IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxl
VHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gSGFzaENoYW5nZUV2ZW50Lmg7IHNvdXJjZVRy
ZWUgPSAiPGdyb3VwPiI7IH07CiAJCTI0RjU0RUFBMTAxRkU5MTQwMDBBRTc0MSAvKiBBcHBsaWNh
dGlvbkNhY2hlSG9zdC5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29k
aW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBB
cHBsaWNhdGlvbkNhY2hlSG9zdC5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTI0
RjU0RUFCMTAxRkU5MTQwMDBBRTc0MSAvKiBBcHBsaWNhdGlvbkNhY2hlSG9zdC5oICovID0ge2lz
YSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBl
ID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBBcHBsaWNhdGlvbkNhY2hlSG9zdC5oOyBzb3VyY2VU
cmVlID0gIjxncm91cD4iOyB9OwogCQkyNTQyRjREODExNjZDMjVBMDBFODlBODYgLyogVXNlckdl
c3R1cmVJbmRpY2F0b3IuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNv
ZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0g
VXNlckdlc3R1cmVJbmRpY2F0b3IuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwpAQCAt
Njk1MCw2ICs2OTU0LDkgQEAKIAkJODQ1RTcyRkEwRkQyNjIzOTAwQTg3RDc5IC8qIFNWR0ZpbHRl
ci5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RL
bm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBTVkdGaWx0ZXIuaDsgc291cmNl
VHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJODQ4MDE5NTIxMDhCQUZCMzAwQ0IyQjFGIC8qIEZFR2F1
c3NpYW5CbHVyLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rpbmcg
PSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgbmFtZSA9IEZFR2F1
c3NpYW5CbHVyLmNwcDsgcGF0aCA9IGZpbHRlcnMvRkVHYXVzc2lhbkJsdXIuY3BwOyBzb3VyY2VU
cmVlID0gIjxncm91cD4iOyB9OwogCQk4NDgwMTk1MzEwOEJBRkIzMDBDQjJCMUYgLyogRkVHYXVz
c2lhbkJsdXIuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0
OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBuYW1lID0gRkVHYXVzc2lhbkJs
dXIuaDsgcGF0aCA9IGZpbHRlcnMvRkVHYXVzc2lhbkJsdXIuaDsgc291cmNlVHJlZSA9ICI8Z3Jv
dXA+IjsgfTsKKwkJODQ4MkI3NDQxMTk4QzMyRTAwQkZCMDA1IC8qIEhhc2hDaGFuZ2VFdmVudC5p
ZGwgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtu
b3duRmlsZVR5cGUgPSB0ZXh0OyBwYXRoID0gSGFzaENoYW5nZUV2ZW50LmlkbDsgc291cmNlVHJl
ZSA9ICI8Z3JvdXA+IjsgfTsKKwkJODQ4MkI3NEYxMTk4Q0I2QjAwQkZCMDA1IC8qIEpTSGFzaENo
YW5nZUV2ZW50LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rpbmcg
PSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEpTSGFz
aENoYW5nZUV2ZW50LmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJODQ4MkI3NTAx
MTk4Q0I2QjAwQkZCMDA1IC8qIEpTSGFzaENoYW5nZUV2ZW50LmggKi8gPSB7aXNhID0gUEJYRmls
ZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vj
b2RlLmMuaDsgcGF0aCA9IEpTSGFzaENoYW5nZUV2ZW50Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3Vw
PiI7IH07CiAJCTg0ODUyMjc3MTE5MDE2MkMwMDZFREM3RiAvKiBKU1NWR0hLZXJuRWxlbWVudC5j
cHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtu
b3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBKU1NWR0hLZXJuRWxlbWVu
dC5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTg0ODUyMjc4MTE5MDE2MkMwMDZF
REM3RiAvKiBKU1NWR0hLZXJuRWxlbWVudC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7
IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBh
dGggPSBKU1NWR0hLZXJuRWxlbWVudC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQk4
NDg1MjI3OTExOTAxNjJDMDA2RURDN0YgLyogSlNTVkdWS2VybkVsZW1lbnQuY3BwICovID0ge2lz
YSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBl
ID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gSlNTVkdWS2VybkVsZW1lbnQuY3BwOyBzb3Vy
Y2VUcmVlID0gIjxncm91cD4iOyB9OwpAQCAtMTQxODAsNiArMTQxODcsOCBAQAogCQkJCTE0RTgz
NzhEMDlGODVENEYwMEI4NUFFNCAvKiBKU0V2ZW50LmggKi8sCiAJCQkJQkM2MEQ5QkQwRDJBMjY5
QTAwQjk5MThGIC8qIEpTRXZlbnRFeGNlcHRpb24uY3BwICovLAogCQkJCUJDNjBEOUJFMEQyQTI2
OUEwMEI5OTE4RiAvKiBKU0V2ZW50RXhjZXB0aW9uLmggKi8sCisJCQkJODQ4MkI3NEYxMTk4Q0I2
QjAwQkZCMDA1IC8qIEpTSGFzaENoYW5nZUV2ZW50LmNwcCAqLywKKwkJCQk4NDgyQjc1MDExOThD
QjZCMDBCRkIwMDUgLyogSlNIYXNoQ2hhbmdlRXZlbnQuaCAqLywKIAkJCQlBODY2MjlDRTA5REEy
QjQ3MDA5NjMzQTUgLyogSlNLZXlib2FyZEV2ZW50LmNwcCAqLywKIAkJCQlBODY2MjlDRDA5REEy
QjQ3MDA5NjMzQTUgLyogSlNLZXlib2FyZEV2ZW50LmggKi8sCiAJCQkJRTEwNzQwMEIwRTc3QkRD
MDAwMzNBRjI0IC8qIEpTTWVzc2FnZUNoYW5uZWwuY3BwICovLApAQCAtMTYyODksNiArMTYyOTgs
OCBAQAogCQlGNTIzRDMyNDAyREU0NDc4MDE4NjM1Q0EgLyogZG9tICovID0gewogCQkJaXNhID0g
UEJYR3JvdXA7CiAJCQljaGlsZHJlbiA9ICgKKwkJCQk4NDgyQjc0NDExOThDMzJFMDBCRkIwMDUg
LyogSGFzaENoYW5nZUV2ZW50LmlkbCAqLywKKwkJCQkyNDQyQkJGODExOTRDOUQzMDBENDk0Njkg
LyogSGFzaENoYW5nZUV2ZW50LmggKi8sCiAJCQkJRTFDNERFNkQwRUE3NUM2NTAwMjNDQ0Q2IC8q
IEFjdGl2ZURPTU9iamVjdC5jcHAgKi8sCiAJCQkJRTFDNERFNjgwRUE3NUMxRTAwMjNDQ0Q2IC8q
IEFjdGl2ZURPTU9iamVjdC5oICovLAogCQkJCUE4QzRBN0ZDMDlENTYzMjcwMDAzQUM4RCAvKiBB
dHRyLmNwcCAqLywKQEAgLTE5MTMzLDYgKzE5MTQ0LDggQEAKIAkJCQlDNUY0RjQxMTExOTMwNkMw
MDBGREZBREQgLyogSlNJbmRleGVkRGF0YWJhc2VSZXF1ZXN0LmggaW4gSGVhZGVycyAqLywKIAkJ
CQk2RTk2QkIxQzExOTg2RUUyMDA3RDk0Q0QgLyogV2ViR0xJbnRlZ3JhbFR5cGVkQXJyYXlCYXNl
LmggaW4gSGVhZGVycyAqLywKIAkJCQk2RTk2QkIxRDExOTg2RUUyMDA3RDk0Q0QgLyogV2ViR0xU
eXBlZEFycmF5QmFzZS5oIGluIEhlYWRlcnMgKi8sCisJCQkJODQ4MkI3NDYxMTk4QzM1NDAwQkZC
MDA1IC8qIEhhc2hDaGFuZ2VFdmVudC5oIGluIEhlYWRlcnMgKi8sCisJCQkJODQ4MkI3NTIxMTk4
Q0I2QjAwQkZCMDA1IC8qIEpTSGFzaENoYW5nZUV2ZW50LmggaW4gSGVhZGVycyAqLywKIAkJCSk7
CiAJCQlydW5Pbmx5Rm9yRGVwbG95bWVudFBvc3Rwcm9jZXNzaW5nID0gMDsKIAkJfTsKQEAgLTIx
Mzk3LDYgKzIxNDEwLDcgQEAKIAkJCQlDNUY0RjQwQzExOTMwNkFDMDBGREZBREQgLyogSlNJREJS
ZXF1ZXN0LmNwcCBpbiBTb3VyY2VzICovLAogCQkJCUM1RjRGNDEwMTE5MzA2QzAwMEZERkFERCAv
KiBKU0luZGV4ZWREYXRhYmFzZVJlcXVlc3QuY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJQzU5NTY2
NzgxMTkzMjRDNjAwRkRDRTQ3IC8qIEpTSURCUmVxdWVzdEN1c3RvbS5jcHAgaW4gU291cmNlcyAq
LywKKwkJCQk4NDgyQjc1MTExOThDQjZCMDBCRkIwMDUgLyogSlNIYXNoQ2hhbmdlRXZlbnQuY3Bw
IGluIFNvdXJjZXMgKi8sCiAJCQkpOwogCQkJcnVuT25seUZvckRlcGxveW1lbnRQb3N0cHJvY2Vz
c2luZyA9IDA7CiAJCX07CkluZGV4OiBXZWJDb3JlL2JpbmRpbmdzL2pzL0pTRXZlbnRDdXN0b20u
Y3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT0KLS0tIFdlYkNvcmUvYmluZGluZ3MvanMvSlNFdmVudEN1c3RvbS5jcHAJ
KHJldmlzaW9uIDU5MTI1KQorKysgV2ViQ29yZS9iaW5kaW5ncy9qcy9KU0V2ZW50Q3VzdG9tLmNw
cAkod29ya2luZyBjb3B5KQpAQCAtMzgsNiArMzgsNyBAQAogI2luY2x1ZGUgIkpTQ3VzdG9tRXZl
bnQuaCIKICNpbmNsdWRlICJKU0NvbXBvc2l0aW9uRXZlbnQuaCIKICNpbmNsdWRlICJKU0Vycm9y
RXZlbnQuaCIKKyNpbmNsdWRlICJKU0hhc2hDaGFuZ2VFdmVudC5oIgogI2luY2x1ZGUgIkpTS2V5
Ym9hcmRFdmVudC5oIgogI2luY2x1ZGUgIkpTTWVzc2FnZUV2ZW50LmgiCiAjaW5jbHVkZSAiSlNN
b3VzZUV2ZW50LmgiCkBAIC01NCw2ICs1NSw3IEBACiAjaW5jbHVkZSAiSlNYTUxIdHRwUmVxdWVz
dFByb2dyZXNzRXZlbnQuaCIKICNpbmNsdWRlICJCZWZvcmVMb2FkRXZlbnQuaCIKICNpbmNsdWRl
ICJFcnJvckV2ZW50LmgiCisjaW5jbHVkZSAiSGFzaENoYW5nZUV2ZW50LmgiCiAjaW5jbHVkZSAi
S2V5Ym9hcmRFdmVudC5oIgogI2luY2x1ZGUgIk1lc3NhZ2VFdmVudC5oIgogI2luY2x1ZGUgIk1v
dXNlRXZlbnQuaCIKQEAgLTE1Myw2ICsxNTUsOCBAQCBKU1ZhbHVlIHRvSlMoRXhlY1N0YXRlKiBl
eGVjLCBKU0RPTUdsb2JhCiAgICAgZWxzZSBpZiAoZXZlbnQtPmlzRXJyb3JFdmVudCgpKQogICAg
ICAgICB3cmFwcGVyID0gQ1JFQVRFX0RPTV9PQkpFQ1RfV1JBUFBFUihleGVjLCBnbG9iYWxPYmpl
Y3QsIEVycm9yRXZlbnQsIGV2ZW50KTsKICNlbmRpZgorICAgIGVsc2UgaWYgKGV2ZW50LT5pc0hh
c2hDaGFuZ2VFdmVudCgpKQorICAgICAgICB3cmFwcGVyID0gQ1JFQVRFX0RPTV9PQkpFQ1RfV1JB
UFBFUihleGVjLCBnbG9iYWxPYmplY3QsIEhhc2hDaGFuZ2VFdmVudCwgZXZlbnQpOwogICAgIGVs
c2UgaWYgKGV2ZW50LT5pc1BvcFN0YXRlRXZlbnQoKSkKICAgICAgICAgd3JhcHBlciA9IENSRUFU
RV9ET01fT0JKRUNUX1dSQVBQRVIoZXhlYywgZ2xvYmFsT2JqZWN0LCBQb3BTdGF0ZUV2ZW50LCBl
dmVudCk7CiAgICAgZWxzZSBpZiAoZXZlbnQtPmlzQ3VzdG9tRXZlbnQoKSkKSW5kZXg6IFdlYkNv
cmUvYmluZGluZ3MvdjgvY3VzdG9tL1Y4RXZlbnRDdXN0b20uY3BwCj09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdl
YkNvcmUvYmluZGluZ3MvdjgvY3VzdG9tL1Y4RXZlbnRDdXN0b20uY3BwCShyZXZpc2lvbiA1OTEy
NSkKKysrIFdlYkNvcmUvYmluZGluZ3MvdjgvY3VzdG9tL1Y4RXZlbnRDdXN0b20uY3BwCSh3b3Jr
aW5nIGNvcHkpCkBAIC00MSw2ICs0MSw3IEBACiAjaW5jbHVkZSAiVjhDb21wb3NpdGlvbkV2ZW50
LmgiCiAjaW5jbHVkZSAiVjhDdXN0b21FdmVudC5oIgogI2luY2x1ZGUgIlY4RXJyb3JFdmVudC5o
IgorI2luY2x1ZGUgIlY4SGFzaENoYW5nZUV2ZW50LmgiCiAjaW5jbHVkZSAiVjhLZXlib2FyZEV2
ZW50LmgiCiAjaW5jbHVkZSAiVjhNZXNzYWdlRXZlbnQuaCIKICNpbmNsdWRlICJWOE1vdXNlRXZl
bnQuaCIKQEAgLTExNiw2ICsxMTcsOCBAQCB2ODo6SGFuZGxlPHY4OjpWYWx1ZT4gdG9WOChFdmVu
dCogaW1wbCkKICNlbmRpZgogICAgICAgICByZXR1cm4gdG9WOChzdGF0aWNfY2FzdDxVSUV2ZW50
Kj4oaW1wbCkpOwogICAgIH0KKyAgICBpZiAoaW1wbC0+aXNIYXNoQ2hhbmdlRXZlbnQoKSkKKyAg
ICAgICAgcmV0dXJuIHRvVjgoc3RhdGljX2Nhc3Q8SGFzaENoYW5nZUV2ZW50Kj4oaW1wbCkpOwog
ICAgIGlmIChpbXBsLT5pc011dGF0aW9uRXZlbnQoKSkKICAgICAgICAgcmV0dXJuIHRvVjgoc3Rh
dGljX2Nhc3Q8TXV0YXRpb25FdmVudCo+KGltcGwpKTsKICAgICBpZiAoaW1wbC0+aXNPdmVyZmxv
d0V2ZW50KCkpCkluZGV4OiBXZWJDb3JlL2RvbS9Eb2N1bWVudC5jcHAKPT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0g
V2ViQ29yZS9kb20vRG9jdW1lbnQuY3BwCShyZXZpc2lvbiA1OTEyNSkKKysrIFdlYkNvcmUvZG9t
L0RvY3VtZW50LmNwcAkod29ya2luZyBjb3B5KQpAQCAtNjAsNiArNjAsNyBAQAogI2luY2x1ZGUg
IkZyYW1lTG9hZGVyLmgiCiAjaW5jbHVkZSAiRnJhbWVUcmVlLmgiCiAjaW5jbHVkZSAiRnJhbWVW
aWV3LmgiCisjaW5jbHVkZSAiSGFzaENoYW5nZUV2ZW50LmgiCiAjaW5jbHVkZSAiSFRNTEFsbENv
bGxlY3Rpb24uaCIKICNpbmNsdWRlICJIVE1MQW5jaG9yRWxlbWVudC5oIgogI2luY2x1ZGUgIkhU
TUxCb2R5RWxlbWVudC5oIgpAQCAtNDkwNSwxMSArNDkwNiw5IEBAIHZvaWQgRG9jdW1lbnQ6OmVu
cXVldWVQYWdlc2hvd0V2ZW50KFBhZ2UKICAgICBkaXNwYXRjaFdpbmRvd0V2ZW50KFBhZ2VUcmFu
c2l0aW9uRXZlbnQ6OmNyZWF0ZShldmVudE5hbWVzKCkucGFnZXNob3dFdmVudCwgcGVyc2lzdGVk
KSwgdGhpcyk7CiB9CiAKLXZvaWQgRG9jdW1lbnQ6OmVucXVldWVIYXNoY2hhbmdlRXZlbnQoY29u
c3QgU3RyaW5nJiAvKm9sZFVSTCovLCBjb25zdCBTdHJpbmcmIC8qbmV3VVJMKi8pCit2b2lkIERv
Y3VtZW50OjplbnF1ZXVlSGFzaGNoYW5nZUV2ZW50KGNvbnN0IFN0cmluZyYgb2xkVVJMLCBjb25z
dCBTdHJpbmcmIG5ld1VSTCkKIHsKLSAgICAvLyBGSVhNRTogaHR0cHM6Ly9idWdzLndlYmtpdC5v
cmcvc2hvd19idWcuY2dpP2lkPTM2MzM1IEhhc2hjaGFuZ2UgZXZlbnQgaXMgbm93IGl0cyBvd24g
aW50ZXJmYWNlIGFuZCB0YWtlcyB0d28KLSAgICAvLyAgIFVSTCBhcmd1bWVudHMgd2hpY2ggd2Ug
bmVlZCB0byBwYXNzIGluIGhlcmUuCi0gICAgZW5xdWV1ZUV2ZW50KEV2ZW50OjpjcmVhdGUoZXZl
bnROYW1lcygpLmhhc2hjaGFuZ2VFdmVudCwgZmFsc2UsIGZhbHNlKSk7CisgICAgZW5xdWV1ZUV2
ZW50KEhhc2hDaGFuZ2VFdmVudDo6Y3JlYXRlKG9sZFVSTCwgbmV3VVJMKSk7CiB9CiAKIHZvaWQg
RG9jdW1lbnQ6OmVucXVldWVQb3BzdGF0ZUV2ZW50KFBhc3NSZWZQdHI8U2VyaWFsaXplZFNjcmlw
dFZhbHVlPiBzdGF0ZU9iamVjdCkKSW5kZXg6IFdlYkNvcmUvZG9tL0V2ZW50LmNwcAo9PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09Ci0tLSBXZWJDb3JlL2RvbS9FdmVudC5jcHAJKHJldmlzaW9uIDU5MTI1KQorKysgV2ViQ29y
ZS9kb20vRXZlbnQuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC0xNzIsNiArMTcyLDExIEBAIGJvb2wg
RXZlbnQ6OmlzQmVmb3JlTG9hZEV2ZW50KCkgY29uc3QKICAgICByZXR1cm4gZmFsc2U7CiB9CiAK
K2Jvb2wgRXZlbnQ6OmlzSGFzaENoYW5nZUV2ZW50KCkgY29uc3QKK3sKKyAgICByZXR1cm4gZmFs
c2U7Cit9CisKICNpZiBFTkFCTEUoU1ZHKQogYm9vbCBFdmVudDo6aXNTVkdab29tRXZlbnQoKSBj
b25zdAogewpJbmRleDogV2ViQ29yZS9kb20vRXZlbnQuaAo9PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBXZWJDb3Jl
L2RvbS9FdmVudC5oCShyZXZpc2lvbiA1OTEyNSkKKysrIFdlYkNvcmUvZG9tL0V2ZW50LmgJKHdv
cmtpbmcgY29weSkKQEAgLTEyMyw2ICsxMjMsNyBAQCBuYW1lc3BhY2UgV2ViQ29yZSB7CiAgICAg
ICAgIHZpcnR1YWwgYm9vbCBpc1dlYktpdEFuaW1hdGlvbkV2ZW50KCkgY29uc3Q7CiAgICAgICAg
IHZpcnR1YWwgYm9vbCBpc1dlYktpdFRyYW5zaXRpb25FdmVudCgpIGNvbnN0OwogICAgICAgICB2
aXJ0dWFsIGJvb2wgaXNCZWZvcmVMb2FkRXZlbnQoKSBjb25zdDsKKyAgICAgICAgdmlydHVhbCBi
b29sIGlzSGFzaENoYW5nZUV2ZW50KCkgY29uc3Q7CiAjaWYgRU5BQkxFKFNWRykKICAgICAgICAg
dmlydHVhbCBib29sIGlzU1ZHWm9vbUV2ZW50KCkgY29uc3Q7CiAjZW5kaWYKSW5kZXg6IFdlYkNv
cmUvZG9tL0hhc2hDaGFuZ2VFdmVudC5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYkNvcmUvZG9tL0hhc2hD
aGFuZ2VFdmVudC5oCShyZXZpc2lvbiAwKQorKysgV2ViQ29yZS9kb20vSGFzaENoYW5nZUV2ZW50
LmgJKHJldmlzaW9uIDApCkBAIC0wLDAgKzEsNjUgQEAKKy8qCisgKiBDb3B5cmlnaHQgKEMpIDIw
MTAgQXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICoKKyAqIFRoaXMgbGlicmFyeSBp
cyBmcmVlIHNvZnR3YXJlOyB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IKKyAqIG1vZGlm
eSBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBMaWJyYXJ5IEdlbmVyYWwgUHVibGljCisg
KiBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieSB0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uOyBl
aXRoZXIKKyAqIHZlcnNpb24gMiBvZiB0aGUgTGljZW5zZSwgb3IgKGF0IHlvdXIgb3B0aW9uKSBh
bnkgbGF0ZXIgdmVyc2lvbi4KKyAqCisgKiBUaGlzIGxpYnJhcnkgaXMgZGlzdHJpYnV0ZWQgaW4g
dGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCwKKyAqIGJ1dCBXSVRIT1VUIEFOWSBXQVJS
QU5UWTsgd2l0aG91dCBldmVuIHRoZSBpbXBsaWVkIHdhcnJhbnR5IG9mCisgKiBNRVJDSEFOVEFC
SUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlIEdOVQor
ICogTGlicmFyeSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGZvciBtb3JlIGRldGFpbHMuCisgKgor
ICogWW91IHNob3VsZCBoYXZlIHJlY2VpdmVkIGEgY29weSBvZiB0aGUgR05VIExpYnJhcnkgR2Vu
ZXJhbCBQdWJsaWMgTGljZW5zZQorICogYWxvbmcgd2l0aCB0aGlzIGxpYnJhcnk7IHNlZSB0aGUg
ZmlsZSBDT1BZSU5HLkxJQi4gIElmIG5vdCwgd3JpdGUgdG8KKyAqIHRoZSBGcmVlIFNvZnR3YXJl
IEZvdW5kYXRpb24sIEluYy4sIDUxIEZyYW5rbGluIFN0cmVldCwgRmlmdGggRmxvb3IsCisgKiBC
b3N0b24sIE1BIDAyMTEwLTEzMDEsIFVTQS4KKyAqCisgKi8KKworI2lmbmRlZiBIYXNoQ2hhbmdl
RXZlbnRfaAorI2RlZmluZSBIYXNoQ2hhbmdlRXZlbnRfaAorCisjaW5jbHVkZSAiRXZlbnQuaCIK
KyNpbmNsdWRlICJFdmVudE5hbWVzLmgiCisKK25hbWVzcGFjZSBXZWJDb3JlIHsKKworY2xhc3Mg
SGFzaENoYW5nZUV2ZW50IDogcHVibGljIEV2ZW50IHsKK3B1YmxpYzoKKyAgICB2aXJ0dWFsIGJv
b2wgaXNIYXNoQ2hhbmdlRXZlbnQoKSBjb25zdCB7IHJldHVybiB0cnVlOyB9CisKKyAgICBzdGF0
aWMgUGFzc1JlZlB0cjxIYXNoQ2hhbmdlRXZlbnQ+IGNyZWF0ZShjb25zdCBTdHJpbmcmIG9sZFVS
TCwgY29uc3QgU3RyaW5nJiBuZXdVUkwpCisgICAgeworICAgICAgICByZXR1cm4gYWRvcHRSZWYo
bmV3IEhhc2hDaGFuZ2VFdmVudChvbGRVUkwsIG5ld1VSTCkpOworICAgIH0KKworICAgIHZvaWQg
aW5pdEhhc2hDaGFuZ2VFdmVudChjb25zdCBBdG9taWNTdHJpbmcmIGV2ZW50VHlwZSwgYm9vbCBj
YW5CdWJibGUsIGJvb2wgY2FuY2VsYWJsZSwgY29uc3QgU3RyaW5nJiBvbGRVUkwsIGNvbnN0IFN0
cmluZyYgbmV3VVJMKQorICAgIHsKKyAgICAgICAgaWYgKGRpc3BhdGNoZWQoKSkKKyAgICAgICAg
ICAgIHJldHVybjsKKworICAgICAgICBpbml0RXZlbnQoZXZlbnRUeXBlLCBjYW5CdWJibGUsIGNh
bmNlbGFibGUpOworCisgICAgICAgIG1fb2xkVVJMID0gb2xkVVJMOworICAgICAgICBtX25ld1VS
TCA9IG5ld1VSTDsKKyAgICB9CisKKyAgICBjb25zdCBTdHJpbmcmIG9sZFVSTCgpIGNvbnN0IHsg
cmV0dXJuIG1fb2xkVVJMOyB9CisgICAgY29uc3QgU3RyaW5nJiBuZXdVUkwoKSBjb25zdCB7IHJl
dHVybiBtX25ld1VSTDsgfQorCitwcml2YXRlOgorICAgIEhhc2hDaGFuZ2VFdmVudChjb25zdCBT
dHJpbmcmIG9sZFVSTCwgY29uc3QgU3RyaW5nJiBuZXdVUkwpCisgICAgICAgIDogRXZlbnQoZXZl
bnROYW1lcygpLmhhc2hjaGFuZ2VFdmVudCwgZmFsc2UsIGZhbHNlKQorICAgICAgICAsIG1fb2xk
VVJMKG9sZFVSTCkKKyAgICAgICAgLCBtX25ld1VSTChuZXdVUkwpCisgICAge30KKworICAgIFN0
cmluZyBtX29sZFVSTDsKKyAgICBTdHJpbmcgbV9uZXdVUkw7Cit9OworCit9IC8vIG5hbWVzcGFj
ZSBXZWJDb3JlCisKKyNlbmRpZiAvLyBIYXNoQ2hhbmdlRXZlbnRfaApJbmRleDogV2ViQ29yZS9k
b20vSGFzaENoYW5nZUV2ZW50LmlkbAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBXZWJDb3JlL2RvbS9IYXNoQ2hh
bmdlRXZlbnQuaWRsCShyZXZpc2lvbiAwKQorKysgV2ViQ29yZS9kb20vSGFzaENoYW5nZUV2ZW50
LmlkbAkocmV2aXNpb24gMCkKQEAgLTAsMCArMSwzNSBAQAorLyoKKyAqIENvcHlyaWdodCAoQykg
MjAxMCBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKgorICogVGhpcyBsaWJyYXJ5
IGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vcgorICogbW9k
aWZ5IGl0IHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05VIExpYnJhcnkgR2VuZXJhbCBQdWJsaWMK
KyAqIExpY2Vuc2UgYXMgcHVibGlzaGVkIGJ5IHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb247
IGVpdGhlcgorICogdmVyc2lvbiAyIG9mIHRoZSBMaWNlbnNlLCBvciAoYXQgeW91ciBvcHRpb24p
IGFueSBsYXRlciB2ZXJzaW9uLgorICoKKyAqIFRoaXMgbGlicmFyeSBpcyBkaXN0cmlidXRlZCBp
biB0aGUgaG9wZSB0aGF0IGl0IHdpbGwgYmUgdXNlZnVsLAorICogYnV0IFdJVEhPVVQgQU5ZIFdB
UlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKKyAqIE1FUkNIQU5U
QUJJTElUWSBvciBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRS4gIFNlZSB0aGUgR05V
CisgKiBMaWJyYXJ5IEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KKyAq
CisgKiBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgTGlicmFyeSBH
ZW5lcmFsIFB1YmxpYyBMaWNlbnNlCisgKiBhbG9uZyB3aXRoIHRoaXMgbGlicmFyeTsgc2VlIHRo
ZSBmaWxlIENPUFlJTkcuTElCLiAgSWYgbm90LCB3cml0ZSB0bworICogdGhlIEZyZWUgU29mdHdh
cmUgRm91bmRhdGlvbiwgSW5jLiwgNTEgRnJhbmtsaW4gU3RyZWV0LCBGaWZ0aCBGbG9vciwKKyAq
IEJvc3RvbiwgTUEgMDIxMTAtMTMwMSwgVVNBLgorICovCisKK21vZHVsZSBldmVudHMgeworCisg
ICAgLy8gSW50cm9kdWNlZCBpbiBodHRwOi8vd3d3LndoYXR3Zy5vcmcvc3BlY3Mvd2ViLWFwcHMv
Y3VycmVudC13b3JrL211bHRpcGFnZS9oaXN0b3J5Lmh0bWwjZXZlbnQtaGFzaGNoYW5nZQorICAg
IGludGVyZmFjZSBbCisgICAgICAgIEdlbmVyYXRlQ29uc3RydWN0b3IKKyAgICBdIEhhc2hDaGFu
Z2VFdmVudCA6IEV2ZW50IHsKKyAgICAgICAgdm9pZCBpbml0SGFzaENoYW5nZUV2ZW50KGluIERP
TVN0cmluZyB0eXBlLCAKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGluIGJvb2xl
YW4gY2FuQnViYmxlLCAKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGluIGJvb2xl
YW4gY2FuY2VsYWJsZSwgCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpbiBET01T
dHJpbmcgb2xkVVJMLCAKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGluIERPTVN0
cmluZyBuZXdVUkwpOyAKKyAgICAgICAgcmVhZG9ubHkgYXR0cmlidXRlIERPTVN0cmluZyBvbGRV
Ukw7CisgICAgICAgIHJlYWRvbmx5IGF0dHJpYnV0ZSBET01TdHJpbmcgbmV3VVJMOworICAgIH07
CisKK30KSW5kZXg6IExheW91dFRlc3RzL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRU
ZXN0cy9DaGFuZ2VMb2cJKHJldmlzaW9uIDU5MTM4KQorKysgTGF5b3V0VGVzdHMvQ2hhbmdlTG9n
CSh3b3JraW5nIGNvcHkpCkBAIC0xLDMgKzEsMTkgQEAKKzIwMTAtMDUtMTAgIFN0ZXZlbiBMYWkg
IDxzdGV2ZW5fbGFpQGFzaWEuYXBwbGUuY29tPgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9E
WSAoT09QUyEpLgorCisgICAgICAgIFJFR1JFU1NJT04oNTg3MzY/KTogZmFzdC9sb2FkZXIvc3Rh
dGVvYmplY3RzL2RvY3VtZW50LWRlc3Ryb3llZC1uYXZpZ2F0ZS1iYWNrLXdpdGgtZnJhZ21lbnQt
c2Nyb2xsLmh0bWwgZmFpbHMgaW50ZXJtaXR0ZW50bHkKKyAgICAgICAgaHR0cHM6Ly9idWdzLndl
YmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTM4NzU0CisKKyAgICAgICAgVXBkYXRlZCB0ZXN0IGNh
c2UgdG8gdXNlIEhhc2hDaGFuZ2VFdmVudC5vbGRVUkwsIEhhc2hDaGFuZ2VFdmVudC5uZXdVUkwg
aW5zdGVhZCBvZiBsb2NhdGlvbi5ocmVmIGluIGhhc2hjaGFuZ2UgZXZlbnQuCisKKyAgICAgICAg
KiBmYXN0L2RvbS9XaW5kb3cvd2luZG93LXByb3BlcnRpZXMtZXhwZWN0ZWQudHh0OgorICAgICAg
ICAqIGZhc3QvZG9tL1dpbmRvdy93aW5kb3ctcHJvcGVydHktZGVzY3JpcHRvcnMtZXhwZWN0ZWQu
dHh0OgorICAgICAgICAqIGZhc3QvZG9tL3Byb3RvdHlwZS1pbmhlcml0YW5jZS1leHBlY3RlZC50
eHQ6CisgICAgICAgICogZmFzdC9qcy9nbG9iYWwtY29uc3RydWN0b3JzLWV4cGVjdGVkLnR4dDoK
KyAgICAgICAgKiBmYXN0L2xvYWRlci9zdGF0ZW9iamVjdHMvZG9jdW1lbnQtZGVzdHJveWVkLW5h
dmlnYXRlLWJhY2std2l0aC1mcmFnbWVudC1zY3JvbGwuaHRtbDoKKyAgICAgICAgKiBmYXN0L2xv
YWRlci9zdGF0ZW9iamVjdHMvcHVzaHN0YXRlLXdpdGgtZnJhZ21lbnQtdXJscy1hbmQtaGFzaGNo
YW5nZS5odG1sOgorCiAyMDEwLTA1LTA3ICBEdW1pdHJ1IERhbmlsaXVjICA8ZHVtaUBjaHJvbWl1
bS5vcmc+CiAKICAgICAgICAgUmV2aWV3ZWQgYnkgQnJhZHkgRWlkc29uLgpJbmRleDogTGF5b3V0
VGVzdHMvZmFzdC9kb20vcHJvdG90eXBlLWluaGVyaXRhbmNlLWV4cGVjdGVkLnR4dAo9PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09Ci0tLSBMYXlvdXRUZXN0cy9mYXN0L2RvbS9wcm90b3R5cGUtaW5oZXJpdGFuY2UtZXhwZWN0
ZWQudHh0CShyZXZpc2lvbiA1OTEyNSkKKysrIExheW91dFRlc3RzL2Zhc3QvZG9tL3Byb3RvdHlw
ZS1pbmhlcml0YW5jZS1leHBlY3RlZC50eHQJKHdvcmtpbmcgY29weSkKQEAgLTIxNyw2ICsyMTcs
OCBAQCBQQVNTIGlubmVyLkhUTUxVTGlzdEVsZW1lbnQuaXNJbm5lciBpcyB0CiBQQVNTIGlubmVy
LkhUTUxVTGlzdEVsZW1lbnQuY29uc3RydWN0b3IuaXNJbm5lciBpcyB0cnVlCiBQQVNTIGlubmVy
LkhUTUxWaWRlb0VsZW1lbnQuaXNJbm5lciBpcyB0cnVlCiBQQVNTIGlubmVyLkhUTUxWaWRlb0Vs
ZW1lbnQuY29uc3RydWN0b3IuaXNJbm5lciBpcyB0cnVlCitQQVNTIGlubmVyLkhhc2hDaGFuZ2VF
dmVudC5pc0lubmVyIGlzIHRydWUKK1BBU1MgaW5uZXIuSGFzaENoYW5nZUV2ZW50LmNvbnN0cnVj
dG9yLmlzSW5uZXIgaXMgdHJ1ZQogUEFTUyBpbm5lci5JbWFnZS5pc0lubmVyIGlzIHRydWUKIFBB
U1MgaW5uZXIuSW1hZ2UuY29uc3RydWN0b3IuaXNJbm5lciBpcyB0cnVlCiBQQVNTIGlubmVyLklt
YWdlRGF0YS5pc0lubmVyIGlzIHRydWUKSW5kZXg6IExheW91dFRlc3RzL2Zhc3QvZG9tL1dpbmRv
dy93aW5kb3ctcHJvcGVydGllcy1leHBlY3RlZC50eHQKPT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVz
dHMvZmFzdC9kb20vV2luZG93L3dpbmRvdy1wcm9wZXJ0aWVzLWV4cGVjdGVkLnR4dAkocmV2aXNp
b24gNTkxMjUpCisrKyBMYXlvdXRUZXN0cy9mYXN0L2RvbS9XaW5kb3cvd2luZG93LXByb3BlcnRp
ZXMtZXhwZWN0ZWQudHh0CSh3b3JraW5nIGNvcHkpCkBAIC0xMDQ5LDYgKzEwNDksOCBAQCB3aW5k
b3cuSFRNTFVMaXN0RWxlbWVudCBbb2JqZWN0IEhUTUxVTGlzCiB3aW5kb3cuSFRNTFVMaXN0RWxl
bWVudC5wcm90b3R5cGUgW3ByaW50ZWQgYWJvdmUgYXMgd2luZG93LkVsZW1lbnQucHJvdG90eXBl
XQogd2luZG93LkhUTUxWaWRlb0VsZW1lbnQgW29iamVjdCBIVE1MVmlkZW9FbGVtZW50Q29uc3Ry
dWN0b3JdCiB3aW5kb3cuSFRNTFZpZGVvRWxlbWVudC5wcm90b3R5cGUgW3ByaW50ZWQgYWJvdmUg
YXMgd2luZG93LkVsZW1lbnQucHJvdG90eXBlXQord2luZG93Lkhhc2hDaGFuZ2VFdmVudCBbb2Jq
ZWN0IEhhc2hDaGFuZ2VFdmVudENvbnN0cnVjdG9yXQord2luZG93Lkhhc2hDaGFuZ2VFdmVudC5w
cm90b3R5cGUgW3ByaW50ZWQgYWJvdmUgYXMgd2luZG93LkV2ZW50LnByb3RvdHlwZV0KIHdpbmRv
dy5JbWFnZSBbb2JqZWN0IEltYWdlQ29uc3RydWN0b3JdCiB3aW5kb3cuSW1hZ2UucHJvdG90eXBl
IFtwcmludGVkIGFib3ZlIGFzIHdpbmRvdy5FbGVtZW50LnByb3RvdHlwZV0KIHdpbmRvdy5JbWFn
ZURhdGEgW29iamVjdCBJbWFnZURhdGFDb25zdHJ1Y3Rvcl0KSW5kZXg6IExheW91dFRlc3RzL2Zh
c3QvZG9tL1dpbmRvdy93aW5kb3ctcHJvcGVydHktZGVzY3JpcHRvcnMtZXhwZWN0ZWQudHh0Cj09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT0KLS0tIExheW91dFRlc3RzL2Zhc3QvZG9tL1dpbmRvdy93aW5kb3ctcHJvcGVydHkt
ZGVzY3JpcHRvcnMtZXhwZWN0ZWQudHh0CShyZXZpc2lvbiA1OTEyNSkKKysrIExheW91dFRlc3Rz
L2Zhc3QvZG9tL1dpbmRvdy93aW5kb3ctcHJvcGVydHktZGVzY3JpcHRvcnMtZXhwZWN0ZWQudHh0
CSh3b3JraW5nIGNvcHkpCkBAIC0xMTUsNiArMTE1LDcgQEAgUEFTUyB0eXBlb2YgT2JqZWN0Lmdl
dE93blByb3BlcnR5RGVzY3JpcAogUEFTUyB0eXBlb2YgT2JqZWN0LmdldE93blByb3BlcnR5RGVz
Y3JpcHRvcih3aW5kb3csICdIVE1MVGl0bGVFbGVtZW50JykgaXMgJ29iamVjdCcKIFBBU1MgdHlw
ZW9mIE9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3Iod2luZG93LCAnSFRNTFVMaXN0RWxl
bWVudCcpIGlzICdvYmplY3QnCiBQQVNTIHR5cGVvZiBPYmplY3QuZ2V0T3duUHJvcGVydHlEZXNj
cmlwdG9yKHdpbmRvdywgJ0hUTUxWaWRlb0VsZW1lbnQnKSBpcyAnb2JqZWN0JworUEFTUyB0eXBl
b2YgT2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRvcih3aW5kb3csICdIYXNoQ2hhbmdlRXZl
bnQnKSBpcyAnb2JqZWN0JwogUEFTUyB0eXBlb2YgT2JqZWN0LmdldE93blByb3BlcnR5RGVzY3Jp
cHRvcih3aW5kb3csICdJbWFnZScpIGlzICdvYmplY3QnCiBQQVNTIHR5cGVvZiBPYmplY3QuZ2V0
T3duUHJvcGVydHlEZXNjcmlwdG9yKHdpbmRvdywgJ0ltYWdlRGF0YScpIGlzICdvYmplY3QnCiBQ
QVNTIHR5cGVvZiBPYmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yKHdpbmRvdywgJ0luZmlu
aXR5JykgaXMgJ29iamVjdCcKSW5kZXg6IExheW91dFRlc3RzL2Zhc3QvanMvZ2xvYmFsLWNvbnN0
cnVjdG9ycy1leHBlY3RlZC50eHQKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvZmFzdC9qcy9n
bG9iYWwtY29uc3RydWN0b3JzLWV4cGVjdGVkLnR4dAkocmV2aXNpb24gNTkxMjUpCisrKyBMYXlv
dXRUZXN0cy9mYXN0L2pzL2dsb2JhbC1jb25zdHJ1Y3RvcnMtZXhwZWN0ZWQudHh0CSh3b3JraW5n
IGNvcHkpCkBAIC0xMDgsNiArMTA4LDcgQEAgUEFTUyBIVE1MVGV4dEFyZWFFbGVtZW50LnRvU3Ry
aW5nKCkgaXMgJwogUEFTUyBIVE1MVGl0bGVFbGVtZW50LnRvU3RyaW5nKCkgaXMgJ1tvYmplY3Qg
SFRNTFRpdGxlRWxlbWVudENvbnN0cnVjdG9yXScKIFBBU1MgSFRNTFVMaXN0RWxlbWVudC50b1N0
cmluZygpIGlzICdbb2JqZWN0IEhUTUxVTGlzdEVsZW1lbnRDb25zdHJ1Y3Rvcl0nCiBQQVNTIEhU
TUxWaWRlb0VsZW1lbnQudG9TdHJpbmcoKSBpcyAnW29iamVjdCBIVE1MVmlkZW9FbGVtZW50Q29u
c3RydWN0b3JdJworUEFTUyBIYXNoQ2hhbmdlRXZlbnQudG9TdHJpbmcoKSBpcyAnW29iamVjdCBI
YXNoQ2hhbmdlRXZlbnRDb25zdHJ1Y3Rvcl0nCiBQQVNTIEltYWdlLnRvU3RyaW5nKCkgaXMgJ1tv
YmplY3QgSW1hZ2VDb25zdHJ1Y3Rvcl0nCiBQQVNTIEltYWdlRGF0YS50b1N0cmluZygpIGlzICdb
b2JqZWN0IEltYWdlRGF0YUNvbnN0cnVjdG9yXScKIFBBU1MgS2V5Ym9hcmRFdmVudC50b1N0cmlu
ZygpIGlzICdbb2JqZWN0IEtleWJvYXJkRXZlbnRDb25zdHJ1Y3Rvcl0nCkluZGV4OiBMYXlvdXRU
ZXN0cy9mYXN0L2xvYWRlci9zdGF0ZW9iamVjdHMvZG9jdW1lbnQtZGVzdHJveWVkLW5hdmlnYXRl
LWJhY2std2l0aC1mcmFnbWVudC1zY3JvbGwuaHRtbAo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0
cy9mYXN0L2xvYWRlci9zdGF0ZW9iamVjdHMvZG9jdW1lbnQtZGVzdHJveWVkLW5hdmlnYXRlLWJh
Y2std2l0aC1mcmFnbWVudC1zY3JvbGwuaHRtbAkocmV2aXNpb24gNTkxMjUpCisrKyBMYXlvdXRU
ZXN0cy9mYXN0L2xvYWRlci9zdGF0ZW9iamVjdHMvZG9jdW1lbnQtZGVzdHJveWVkLW5hdmlnYXRl
LWJhY2std2l0aC1mcmFnbWVudC1zY3JvbGwuaHRtbAkod29ya2luZyBjb3B5KQpAQCAtOSw5ICs5
LDE0IEBAIGlmICh3aW5kb3cubGF5b3V0VGVzdENvbnRyb2xsZXIpIHsKICAgICBsYXlvdXRUZXN0
Q29udHJvbGxlci53YWl0VW50aWxEb25lKCk7CiB9CiAKLWZ1bmN0aW9uIGxhc3RQYXRoQ29tcG9u
ZW50KCkKK2Z1bmN0aW9uIGxhc3RQYXRoQ29tcG9uZW50KGhyZWYpCiB7Ci0gICAgcmV0dXJuIHdp
bmRvdy5sb2NhdGlvbi5ocmVmLnNwbGl0KCcvJykucG9wKCk7CisgICAgcmV0dXJuIGhyZWYuc3Bs
aXQoJy8nKS5wb3AoKTsKK30KKworZnVuY3Rpb24gaGFzaE9mKHVybCkKK3sKKyAgICByZXR1cm4g
dXJsLnN1YnN0cmluZyh1cmwubGFzdEluZGV4T2YoJyMnKSk7CiB9CiAKIGZ1bmN0aW9uIHJ1bkZp
cnN0U3RhZ2VPZlRlc3QoKQpAQCAtMjMsNyArMjgsNyBAQCBmdW5jdGlvbiBydW5GaXJzdFN0YWdl
T2ZUZXN0KCkKIAogZnVuY3Rpb24gcnVuU2Vjb25kU3RhZ2VPZlRlc3QoKQogewotICAgIGFsZXJ0
KCJMYXN0IHBhdGggY29tcG9uZW50IG9mIGxvY2F0aW9uIGlzICIgKyBsYXN0UGF0aENvbXBvbmVu
dCgpKTsKKyAgICBhbGVydCgiTGFzdCBwYXRoIGNvbXBvbmVudCBvZiBsb2NhdGlvbiBpcyAiICsg
bGFzdFBhdGhDb21wb25lbnQobG9jYXRpb24uaHJlZikpOwogICAgIHNldFRpbWVvdXQoImhpc3Rv
cnkuYmFjaygpOyIsIDApOwogfQogCkBAIC01NiwxMCArNjEsMTAgQEAgZnVuY3Rpb24gc3RhdGVQ
b3BwZWQoKQogICAgICAgICBoaXN0b3J5LmJhY2soKTsKIH0KIAotZnVuY3Rpb24gaGFzaENoYW5n
ZWQoKQorZnVuY3Rpb24gaGFzaENoYW5nZWQoZXYpCiB7Ci0gICAgYWxlcnQoImhhc2hDaGFuZ2Vk
IC0gTGFzdCBwYXRoIGNvbXBvbmVudCBvZiBsb2NhdGlvbiBpcyAiICsgbGFzdFBhdGhDb21wb25l
bnQoKSk7Ci0gICBpZiAod2luZG93LmxvY2F0aW9uLmhhc2ggPT0gIiNGaXJzdEVudHJ5V2lsbExh
dGVyQmVSZWFjdGl2YXRlZCIpIHsKKyAgIGFsZXJ0KCJoYXNoQ2hhbmdlZCAtIExhc3QgcGF0aCBj
b21wb25lbnQgb2YgbG9jYXRpb24gaXMgIiArIGxhc3RQYXRoQ29tcG9uZW50KGV2Lm5ld1VSTCkp
OworICAgaWYgKGhhc2hPZihldi5uZXdVUkwpID09ICIjRmlyc3RFbnRyeVdpbGxMYXRlckJlUmVh
Y3RpdmF0ZWQiKSB7CiAgICAgICAgIGFsZXJ0KCJUZXN0IGNvbXBsZXRlIik7CiAgICAgICAgIHNl
c3Npb25TdG9yYWdlLmNsZWFyKCk7CiAgICAgICAgIGlmICh3aW5kb3cubGF5b3V0VGVzdENvbnRy
b2xsZXIpCkBAIC02Nyw4ICs3MiwxMCBAQCBmdW5jdGlvbiBoYXNoQ2hhbmdlZCgpCiAgICAgfQog
fQogCit3aW5kb3cub25oYXNoY2hhbmdlID0gaGFzaENoYW5nZWQ7CisKIDwvc2NyaXB0PgotPGJv
ZHkgb25sb2FkPSJsb2FkZWQoKTsiIG9ucG9wc3RhdGU9InN0YXRlUG9wcGVkKCk7IiBvbmhhc2hj
aGFuZ2U9Imhhc2hDaGFuZ2VkKCk7IiBvbnVubG9hZD0iLyogZGlzYWJsZSBwYWdlIGNhY2hlICov
Ij4KKzxib2R5IG9ubG9hZD0ibG9hZGVkKCk7IiBvbnBvcHN0YXRlPSJzdGF0ZVBvcHBlZCgpOyIg
b251bmxvYWQ9Ii8qIGRpc2FibGUgcGFnZSBjYWNoZSAqLyI+CiA8cHJlPgogVGhpcyB0ZXN0Ogog
LUJ1aWxkcyB1cCBhIGxpc3Qgb2Ygc3RhdGUgb2JqZWN0IGVudHJpZXMgd2l0aCBmcmFnbWVudCBV
UkxzLgpJbmRleDogTGF5b3V0VGVzdHMvZmFzdC9sb2FkZXIvc3RhdGVvYmplY3RzL3B1c2hzdGF0
ZS13aXRoLWZyYWdtZW50LXVybHMtYW5kLWhhc2hjaGFuZ2UuaHRtbAo9PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBM
YXlvdXRUZXN0cy9mYXN0L2xvYWRlci9zdGF0ZW9iamVjdHMvcHVzaHN0YXRlLXdpdGgtZnJhZ21l
bnQtdXJscy1hbmQtaGFzaGNoYW5nZS5odG1sCShyZXZpc2lvbiA1OTEyNSkKKysrIExheW91dFRl
c3RzL2Zhc3QvbG9hZGVyL3N0YXRlb2JqZWN0cy9wdXNoc3RhdGUtd2l0aC1mcmFnbWVudC11cmxz
LWFuZC1oYXNoY2hhbmdlLmh0bWwJKHdvcmtpbmcgY29weSkKQEAgLTM5LDI3ICszOSwyOSBAQCBm
dW5jdGlvbiBydW5UZXN0KCkKICAgICBoaXN0b3J5LmJhY2soKTsKIH0KIAotZnVuY3Rpb24gbGFz
dFBhdGhDb21wb25lbnQoKQorZnVuY3Rpb24gbGFzdFBhdGhDb21wb25lbnQoaHJlZikKIHsKLSAg
ICByZXR1cm4gd2luZG93LmxvY2F0aW9uLmhyZWYuc3BsaXQoJy8nKS5wb3AoKTsKKyAgICByZXR1
cm4gaHJlZi5zcGxpdCgnLycpLnBvcCgpOwogfQogCiBmdW5jdGlvbiBzdGF0ZVBvcHBlZCgpCiB7
Ci0gICAgbG9nKCJTdGF0ZSBwb3BwZWQgd2l0aCBldmVudCAiICsgZXZlbnQuc3RhdGUgKyAiICh0
eXBlICIgKyB0eXBlb2YgZXZlbnQuc3RhdGUgKyAiKSBhbmQgbGFzdCBwYXRoIGNvbXBvbmVudCAi
ICsgbGFzdFBhdGhDb21wb25lbnQoKSk7CisgICAgbG9nKCJTdGF0ZSBwb3BwZWQgd2l0aCBldmVu
dCAiICsgZXZlbnQuc3RhdGUgKyAiICh0eXBlICIgKyB0eXBlb2YgZXZlbnQuc3RhdGUgKyAiKSBh
bmQgbGFzdCBwYXRoIGNvbXBvbmVudCAiICsgbGFzdFBhdGhDb21wb25lbnQobG9jYXRpb24uaHJl
ZikpOwogICAgIGlmIChldmVudC5zdGF0ZSAhPSAiT3JpZ2luYWxFbnRyeSIpCiAgICAgICAgIHNl
dFRpbWVvdXQoImhpc3RvcnkuYmFjaygpOyIsIDApOwogICAgIGVsc2UgaWYgKHdpbmRvdy5sYXlv
dXRUZXN0Q29udHJvbGxlcikKICAgICAgICAgbGF5b3V0VGVzdENvbnRyb2xsZXIubm90aWZ5RG9u
ZSgpOwogfQogCi1mdW5jdGlvbiBoYXNoQ2hhbmdlZCgpCitmdW5jdGlvbiBoYXNoQ2hhbmdlZChl
dikKIHsKLSAgICBsb2coIkhhc2ggY2hhbmdlIGZpcmVkIGFuZCBsYXN0IHBhdGggY29tcG9uZW50
IGlzICIgKyBsYXN0UGF0aENvbXBvbmVudCgpKTsKKyAgICBsb2coIkhhc2ggY2hhbmdlIGZpcmVk
IGFuZCBsYXN0IHBhdGggY29tcG9uZW50IGlzICIgKyBsYXN0UGF0aENvbXBvbmVudChldi5uZXdV
UkwpKTsKIH0KIAord2luZG93Lm9uaGFzaGNoYW5nZSA9IGhhc2hDaGFuZ2VkOworCiA8L3Njcmlw
dD4KLTxib2R5IG9ubG9hZD0icnVuVGVzdCgpOyIgb25wb3BzdGF0ZT0ic3RhdGVQb3BwZWQoKTsi
IG9uaGFzaGNoYW5nZT0iaGFzaENoYW5nZWQoKTsiPgorPGJvZHkgb25sb2FkPSJydW5UZXN0KCk7
IiBvbnBvcHN0YXRlPSJzdGF0ZVBvcHBlZCgpOyI+CiA8cHJlPgogVGhpcyB0ZXN0IHB1c2hlcyBh
IHNlcmllcyBvZiBzdGF0ZSBvYmplY3RzIHdpdGggZGlmZmVyZW50IFVSTHMgYW5kIGZyYWdtZW50
IGlkZW50aWZpZXJzIG1lYW50IHRvIHRlc3QgdGhlIGhhc2hDaGFuZ2UgZXZlbnQgYXMgc3RhdGVz
IGFyZSBwb3BwZWQuCiA8L3ByZT48YnI+Cg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>66942</attachid>
            <date>2010-09-08 14:27:48 -0700</date>
            <delta_ts>2010-09-08 22:20:48 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-36335-20100908142747.patch</filename>
            <type>text/plain</type>
            <size>33047</size>
            <attacher name="Mihai Parparita">mihaip</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL0NoYW5nZUxvZyBiL0xheW91dFRlc3RzL0NoYW5nZUxv
ZwppbmRleCBmMzkxZDMxMjJmZjEyMjU2NTlkN2Y3MmVkMDY1ZjY4MTAwNDk1Y2E2Li5jYzczZjMw
ZTQ0Yjc4ODIyYzE4NjZhMGZlYjM5NGQxZjkyNGU5MTQ4IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0
cy9DaGFuZ2VMb2cKKysrIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMjUgQEAK
KzIwMTAtMDktMDggIE1paGFpIFBhcnBhcml0YSAgPG1paGFpcEBjaHJvbWl1bS5vcmc+CisKKyAg
ICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgSGFzaGNoYW5nZSBl
dmVudCBpcyBubyBsb25nZXIgYSBzaW1wbGUgZXZlbnQsIG5lZWRzIHRvIGJlIGl0cyBvd24gaW50
ZXJmYWNlCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0z
NjMzNQorICAgICAgICAKKyAgICAgICAgQWRkIGV4cGxpY2l0IHRlc3QgZm9yIG5ld1VSTCBhbmQg
b2xkVVJMIHByb3BlcnRpZXMgb2YgaGFzaGNoYW5nZSBldmVudHMuCisgICAgICAgIEFkZCBIYXNo
Q2hhbmdlRXZlbnQgdG8gZXhwZWN0ZWQgZ2xvYmFsIG9iamVjdHMuCisgICAgICAgIFVwZGF0ZSBz
dGF0ZW9iamVjdHMgdGVzdHMgdG8gYWxzbyBjaGVjayBuZXdVUkwgb24gdGhlIGhhc2hjaGFuZ2Ug
ZXZlbnQuCisKKyAgICAgICAgVGhlIG9yaWdpbmFsIHZlcnNpb24gb2YgdGhpcyBwYXRjaCB3YXMg
d3JpdHRlbiBieQorICAgICAgICBTdGV2ZW4gTGFpIDxzM2xhbmNlQGhvdG1haWwuY29tPi4KKwor
ICAgICAgICAqIGZhc3QvZG9tL1dpbmRvdy93aW5kb3ctcHJvcGVydGllcy1leHBlY3RlZC50eHQ6
CisgICAgICAgICogZmFzdC9kb20vcHJvdG90eXBlLWluaGVyaXRhbmNlLWV4cGVjdGVkLnR4dDoK
KyAgICAgICAgKiBmYXN0L2pzL2dsb2JhbC1jb25zdHJ1Y3RvcnMtZXhwZWN0ZWQudHh0OgorICAg
ICAgICAqIGZhc3QvbG9hZGVyL2hhc2hjaGFuZ2UtZXZlbnQtcHJvcGVydGllcy1leHBlY3RlZC50
eHQ6IEFkZGVkLgorICAgICAgICAqIGZhc3QvbG9hZGVyL2hhc2hjaGFuZ2UtZXZlbnQtcHJvcGVy
dGllcy5odG1sOiBBZGRlZC4KKyAgICAgICAgKiBmYXN0L2xvYWRlci9zdGF0ZW9iamVjdHMvZG9j
dW1lbnQtZGVzdHJveWVkLW5hdmlnYXRlLWJhY2std2l0aC1mcmFnbWVudC1zY3JvbGwuaHRtbDoK
KyAgICAgICAgKiBmYXN0L2xvYWRlci9zdGF0ZW9iamVjdHMvcHVzaHN0YXRlLXdpdGgtZnJhZ21l
bnQtdXJscy1hbmQtaGFzaGNoYW5nZS5odG1sOgorCiAyMDEwLTA5LTA4ICBBbmR5IEVzdGVzICA8
YWVzdGVzQGFwcGxlLmNvbT4KIAogICAgICAgICBSZXZpZXdlZCBieSBFcmljIENhcmxzb24uCmRp
ZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L2RvbS9XaW5kb3cvd2luZG93LXByb3BlcnRpZXMt
ZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvZmFzdC9kb20vV2luZG93L3dpbmRvdy1wcm9wZXJ0
aWVzLWV4cGVjdGVkLnR4dAppbmRleCBlNTUzYmVjZWQ4ZTdkZGZkMzZhNzQxYTYzZjVmYWNmZjli
MDU4ZjZlLi5kNDg0Y2ZlNTEyYjNlMzM1MDY3YThkYzhhNDE1NDQxYTA4ZTQ2MjhlIDEwMDY0NAot
LS0gYS9MYXlvdXRUZXN0cy9mYXN0L2RvbS9XaW5kb3cvd2luZG93LXByb3BlcnRpZXMtZXhwZWN0
ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL2Zhc3QvZG9tL1dpbmRvdy93aW5kb3ctcHJvcGVydGll
cy1leHBlY3RlZC50eHQKQEAgLTEwNzksNiArMTA3OSw4IEBAIHdpbmRvdy5IVE1MVUxpc3RFbGVt
ZW50IFtvYmplY3QgSFRNTFVMaXN0RWxlbWVudENvbnN0cnVjdG9yXQogd2luZG93LkhUTUxVTGlz
dEVsZW1lbnQucHJvdG90eXBlIFtwcmludGVkIGFib3ZlIGFzIHdpbmRvdy5FbGVtZW50LnByb3Rv
dHlwZV0KIHdpbmRvdy5IVE1MVmlkZW9FbGVtZW50IFtvYmplY3QgSFRNTFZpZGVvRWxlbWVudENv
bnN0cnVjdG9yXQogd2luZG93LkhUTUxWaWRlb0VsZW1lbnQucHJvdG90eXBlIFtwcmludGVkIGFi
b3ZlIGFzIHdpbmRvdy5FbGVtZW50LnByb3RvdHlwZV0KK3dpbmRvdy5IYXNoQ2hhbmdlRXZlbnQg
W29iamVjdCBIYXNoQ2hhbmdlRXZlbnRDb25zdHJ1Y3Rvcl0KK3dpbmRvdy5IYXNoQ2hhbmdlRXZl
bnQucHJvdG90eXBlIFtwcmludGVkIGFib3ZlIGFzIHdpbmRvdy5FdmVudC5wcm90b3R5cGVdCiB3
aW5kb3cuSW1hZ2UgW29iamVjdCBJbWFnZUNvbnN0cnVjdG9yXQogd2luZG93LkltYWdlLnByb3Rv
dHlwZSBbcHJpbnRlZCBhYm92ZSBhcyB3aW5kb3cuRWxlbWVudC5wcm90b3R5cGVdCiB3aW5kb3cu
SW1hZ2VEYXRhIFtvYmplY3QgSW1hZ2VEYXRhQ29uc3RydWN0b3JdCmRpZmYgLS1naXQgYS9MYXlv
dXRUZXN0cy9mYXN0L2RvbS9wcm90b3R5cGUtaW5oZXJpdGFuY2UtZXhwZWN0ZWQudHh0IGIvTGF5
b3V0VGVzdHMvZmFzdC9kb20vcHJvdG90eXBlLWluaGVyaXRhbmNlLWV4cGVjdGVkLnR4dAppbmRl
eCA2ZThmMWM4M2U3NTc3ODVmZDdmMTM0OGFkZThlOGU0M2NjZDA4M2Y1Li4zYjQ1Y2U4OGY1MjIw
ZjJjNTZhZGY2ZDFkM2U2OThiNzVjY2RlNmNiIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9mYXN0
L2RvbS9wcm90b3R5cGUtaW5oZXJpdGFuY2UtZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3Rz
L2Zhc3QvZG9tL3Byb3RvdHlwZS1pbmhlcml0YW5jZS1leHBlY3RlZC50eHQKQEAgLTIzOSw2ICsy
MzksOCBAQCBQQVNTIGlubmVyLkhUTUxVTGlzdEVsZW1lbnQuaXNJbm5lciBpcyB0cnVlCiBQQVNT
IGlubmVyLkhUTUxVTGlzdEVsZW1lbnQuY29uc3RydWN0b3IuaXNJbm5lciBpcyB0cnVlCiBQQVNT
IGlubmVyLkhUTUxWaWRlb0VsZW1lbnQuaXNJbm5lciBpcyB0cnVlCiBQQVNTIGlubmVyLkhUTUxW
aWRlb0VsZW1lbnQuY29uc3RydWN0b3IuaXNJbm5lciBpcyB0cnVlCitQQVNTIGlubmVyLkhhc2hD
aGFuZ2VFdmVudC5pc0lubmVyIGlzIHRydWUKK1BBU1MgaW5uZXIuSGFzaENoYW5nZUV2ZW50LmNv
bnN0cnVjdG9yLmlzSW5uZXIgaXMgdHJ1ZQogUEFTUyBpbm5lci5JbWFnZS5pc0lubmVyIGlzIHRy
dWUKIFBBU1MgaW5uZXIuSW1hZ2UuY29uc3RydWN0b3IuaXNJbm5lciBpcyB0cnVlCiBQQVNTIGlu
bmVyLkltYWdlRGF0YS5pc0lubmVyIGlzIHRydWUKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zh
c3QvanMvZ2xvYmFsLWNvbnN0cnVjdG9ycy1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9mYXN0
L2pzL2dsb2JhbC1jb25zdHJ1Y3RvcnMtZXhwZWN0ZWQudHh0CmluZGV4IDVhYTBkMjgxZmM4YTU2
MDgxY2Y5YTg1YTgxZDk3NmQ2YjdkYjdlMzcuLjk3ODkzZGE3MzEzMzhmN2VmMjAyODRkOTVlOTgz
ZjViNWI5OGNmNGQgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2Zhc3QvanMvZ2xvYmFsLWNvbnN0
cnVjdG9ycy1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC9qcy9nbG9iYWwtY29u
c3RydWN0b3JzLWV4cGVjdGVkLnR4dApAQCAtMTE1LDYgKzExNSw3IEBAIFBBU1MgSFRNTFRleHRB
cmVhRWxlbWVudC50b1N0cmluZygpIGlzICdbb2JqZWN0IEhUTUxUZXh0QXJlYUVsZW1lbnRDb25z
dHJ1Y3Rvcl0nCiBQQVNTIEhUTUxUaXRsZUVsZW1lbnQudG9TdHJpbmcoKSBpcyAnW29iamVjdCBI
VE1MVGl0bGVFbGVtZW50Q29uc3RydWN0b3JdJwogUEFTUyBIVE1MVUxpc3RFbGVtZW50LnRvU3Ry
aW5nKCkgaXMgJ1tvYmplY3QgSFRNTFVMaXN0RWxlbWVudENvbnN0cnVjdG9yXScKIFBBU1MgSFRN
TFZpZGVvRWxlbWVudC50b1N0cmluZygpIGlzICdbb2JqZWN0IEhUTUxWaWRlb0VsZW1lbnRDb25z
dHJ1Y3Rvcl0nCitQQVNTIEhhc2hDaGFuZ2VFdmVudC50b1N0cmluZygpIGlzICdbb2JqZWN0IEhh
c2hDaGFuZ2VFdmVudENvbnN0cnVjdG9yXScKIFBBU1MgSW1hZ2UudG9TdHJpbmcoKSBpcyAnW29i
amVjdCBJbWFnZUNvbnN0cnVjdG9yXScKIFBBU1MgSW1hZ2VEYXRhLnRvU3RyaW5nKCkgaXMgJ1tv
YmplY3QgSW1hZ2VEYXRhQ29uc3RydWN0b3JdJwogUEFTUyBLZXlib2FyZEV2ZW50LnRvU3RyaW5n
KCkgaXMgJ1tvYmplY3QgS2V5Ym9hcmRFdmVudENvbnN0cnVjdG9yXScKZGlmZiAtLWdpdCBhL0xh
eW91dFRlc3RzL2Zhc3QvbG9hZGVyL2hhc2hjaGFuZ2UtZXZlbnQtcHJvcGVydGllcy1leHBlY3Rl
ZC50eHQgYi9MYXlvdXRUZXN0cy9mYXN0L2xvYWRlci9oYXNoY2hhbmdlLWV2ZW50LXByb3BlcnRp
ZXMtZXhwZWN0ZWQudHh0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmVlYjZmNTI1NmZlNzIxZGE0NTMxYThiZmE4MmZl
ZjJlNWE5NmNiNDEKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9mYXN0L2xvYWRlci9o
YXNoY2hhbmdlLWV2ZW50LXByb3BlcnRpZXMtZXhwZWN0ZWQudHh0CkBAIC0wLDAgKzEsMTIgQEAK
K1Rlc3RzIHRoYXQgaGFzaGNoYW5nZSBldmVudHMgaGF2ZSB0aGUgZXhwZWN0ZWQgbmV3VVJMIGFu
ZCBvbGRVUkwgcHJvcGVydGllcy4KKworT24gc3VjY2VzcywgeW91IHdpbGwgc2VlIGEgc2VyaWVz
IG9mICJQQVNTIiBtZXNzYWdlcywgZm9sbG93ZWQgYnkgIlRFU1QgQ09NUExFVEUiLgorCitoYXNo
Y2hhbmdlIGZpcmVkIHdpdGggb2xkVVJMIGhhc2ggIltub25lXSIgYW5kIG5ld1VSTCBoYXNoICIj
c3RhdGUxIgoraGFzaGNoYW5nZSBmaXJlZCB3aXRoIG9sZFVSTCBoYXNoICIjc3RhdGUxIiBhbmQg
bmV3VVJMIGhhc2ggIiNzdGF0ZTIiCitoYXNoY2hhbmdlIGZpcmVkIHdpdGggb2xkVVJMIGhhc2gg
IiNzdGF0ZTIiIGFuZCBuZXdVUkwgaGFzaCAiI3N0YXRlMSIKK2hhc2hjaGFuZ2UgZmlyZWQgd2l0
aCBvbGRVUkwgaGFzaCAiI3N0YXRlMSIgYW5kIG5ld1VSTCBoYXNoICJbbm9uZV0iCitQQVNTIHN1
Y2Nlc3NmdWxseVBhcnNlZCBpcyB0cnVlCisKK1RFU1QgQ09NUExFVEUKKwpkaWZmIC0tZ2l0IGEv
TGF5b3V0VGVzdHMvZmFzdC9sb2FkZXIvaGFzaGNoYW5nZS1ldmVudC1wcm9wZXJ0aWVzLmh0bWwg
Yi9MYXlvdXRUZXN0cy9mYXN0L2xvYWRlci9oYXNoY2hhbmdlLWV2ZW50LXByb3BlcnRpZXMuaHRt
bApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwLi41Y2E5ZDA2NGU1NzM0ZjIzMmU5OWNmNmM5MjIyYjNhOTdiMTcyODQ1Ci0t
LSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC9sb2FkZXIvaGFzaGNoYW5nZS1ldmVu
dC1wcm9wZXJ0aWVzLmh0bWwKQEAgLTAsMCArMSw1MyBAQAorPCFET0NUWVBFIGh0bWw+Cis8aHRt
bD4KKzxib2R5PgorPGxpbmsgcmVsPSJzdHlsZXNoZWV0IiBocmVmPSIuLi9qcy9yZXNvdXJjZXMv
anMtdGVzdC1zdHlsZS5jc3MiIHR5cGU9InRleHQvY3NzIj4KKzxzY3JpcHQgc3JjPSIuLi9qcy9y
ZXNvdXJjZXMvanMtdGVzdC1wcmUuanMiPjwvc2NyaXB0PgorPGRpdiBpZD0iZGVzY3JpcHRpb24i
PjwvZGl2PgorPHByZSBpZD0iY29uc29sZSI+PC9wcmU+Cis8c2NyaXB0PgorZGVzY3JpcHRpb24o
J1Rlc3RzIHRoYXQgaGFzaGNoYW5nZSBldmVudHMgaGF2ZSB0aGUgZXhwZWN0ZWQgbmV3VVJMIGFu
ZCBvbGRVUkwgcHJvcGVydGllcy4nKTsKKworZnVuY3Rpb24gaGFzaE9mKHVybCkKK3sKKyAgICB2
YXIgaGFzaEluZGV4ID0gdXJsLmxhc3RJbmRleE9mKCcjJyk7CisgICAgcmV0dXJuIGhhc2hJbmRl
eCAhPSAtMSA/IHVybC5zdWJzdHJpbmcoaGFzaEluZGV4KSA6ICdbbm9uZV0nOworfQorCit2YXIg
Z29pbmdGb3J3YXJkID0gdHJ1ZTsKKworb25sb2FkID0gZnVuY3Rpb24oKQoreworICAgIHNldFRp
bWVvdXQoZnVuY3Rpb24oKSB7bG9jYXRpb24uaHJlZiA9ICcjc3RhdGUxJzt9LCAwKTsKK307CisK
K29uaGFzaGNoYW5nZSA9IGZ1bmN0aW9uKGV2ZW50KQoreworICAgIGRlYnVnKCdoYXNoY2hhbmdl
IGZpcmVkIHdpdGggb2xkVVJMIGhhc2ggIicgKyBoYXNoT2YoZXZlbnQub2xkVVJMKSArICciIGFu
ZCBuZXdVUkwgaGFzaCAiJyArIGhhc2hPZihldmVudC5uZXdVUkwpICsgJyInKTsKKyAgICAKKyAg
ICBzd2l0Y2ggKGhhc2hPZihldmVudC5uZXdVUkwpKSB7CisgICAgICAgIGNhc2UgJyNzdGF0ZTEn
OgorICAgICAgICAgICAgaWYgKGdvaW5nRm9yd2FyZCkKKyAgICAgICAgICAgICAgICBsb2NhdGlv
bi5ocmVmID0gJyNzdGF0ZTInOworICAgICAgICAgICAgZWxzZQorICAgICAgICAgICAgICAgIGhp
c3RvcnkuYmFjaygpOworICAgICAgICAgICAgYnJlYWs7CisgICAgICAgIGNhc2UgJyNzdGF0ZTIn
OgorICAgICAgICAgICAgaWYgKGdvaW5nRm9yd2FyZCkgeworICAgICAgICAgICAgICAgIGdvaW5n
Rm9yd2FyZCA9IGZhbHNlOworICAgICAgICAgICAgICAgIGhpc3RvcnkuYmFjaygpOworICAgICAg
ICAgICAgfSBlbHNlIHsKKyAgICAgICAgICAgICAgICB0ZXN0RmFpbGVkKCdzaG91bGQgYWx3YXlz
IGJlIGdvaW5nIGZvcndhcmQgYXQgI3N0YXRlMicpOworICAgICAgICAgICAgfQorICAgICAgICAg
ICAgYnJlYWs7CisgICAgICAgIGNhc2UgJ1tub25lXSc6CisgICAgICAgICAgICBmaW5pc2hKU1Rl
c3QoKTsKKyAgICAgICAgICAgIGJyZWFrOworICAgIH0KK307CisKK3ZhciBzdWNjZXNzZnVsbHlQ
YXJzZWQgPSB0cnVlOwordmFyIGpzVGVzdElzQXN5bmMgPSB0cnVlOworPC9zY3JpcHQ+Cis8c2Ny
aXB0IHNyYz0iLi4vanMvcmVzb3VyY2VzL2pzLXRlc3QtcG9zdC5qcyI+PC9zY3JpcHQ+Cis8L2h0
bWw+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L2xvYWRlci9zdGF0ZW9iamVjdHMvZG9j
dW1lbnQtZGVzdHJveWVkLW5hdmlnYXRlLWJhY2std2l0aC1mcmFnbWVudC1zY3JvbGwuaHRtbCBi
L0xheW91dFRlc3RzL2Zhc3QvbG9hZGVyL3N0YXRlb2JqZWN0cy9kb2N1bWVudC1kZXN0cm95ZWQt
bmF2aWdhdGUtYmFjay13aXRoLWZyYWdtZW50LXNjcm9sbC5odG1sCmluZGV4IGRhNTAwYWI4NWI2
YjM2ZDM1YWZkZGZiZDA5N2Y0NTFiZWY0NTg2Y2UuLjExZjM0OGZlMzg2MjAwZWYzZWZmMzg0NTRk
MzQwMDlhYWFhMDg2ZDEgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2Zhc3QvbG9hZGVyL3N0YXRl
b2JqZWN0cy9kb2N1bWVudC1kZXN0cm95ZWQtbmF2aWdhdGUtYmFjay13aXRoLWZyYWdtZW50LXNj
cm9sbC5odG1sCisrKyBiL0xheW91dFRlc3RzL2Zhc3QvbG9hZGVyL3N0YXRlb2JqZWN0cy9kb2N1
bWVudC1kZXN0cm95ZWQtbmF2aWdhdGUtYmFjay13aXRoLWZyYWdtZW50LXNjcm9sbC5odG1sCkBA
IC05LDExICs5LDE2IEBAIGlmICh3aW5kb3cubGF5b3V0VGVzdENvbnRyb2xsZXIpIHsKICAgICBs
YXlvdXRUZXN0Q29udHJvbGxlci53YWl0VW50aWxEb25lKCk7CiB9CiAKLWZ1bmN0aW9uIGxhc3RQ
YXRoQ29tcG9uZW50KCkKK2Z1bmN0aW9uIGxhc3RQYXRoQ29tcG9uZW50KHVybCkKIHsKLSAgICBy
ZXR1cm4gd2luZG93LmxvY2F0aW9uLmhyZWYuc3BsaXQoJy8nKS5wb3AoKTsKKyAgICByZXR1cm4g
dXJsLnNwbGl0KCcvJykucG9wKCk7CiB9CiAKK2Z1bmN0aW9uIGhhc2hPZih1cmwpCit7CisgICAg
cmV0dXJuIHVybC5zdWJzdHJpbmcodXJsLmxhc3RJbmRleE9mKCcjJykpOworfQorIAogZnVuY3Rp
b24gcnVuRmlyc3RTdGFnZU9mVGVzdCgpCiB7ICAgCiAgICAgaGlzdG9yeS5yZXBsYWNlU3RhdGUo
IkZpcnN0RW50cnkiLCBudWxsLCAiI0ZpcnN0RW50cnkiKTsKQEAgLTIzLDcgKzI4LDcgQEAgZnVu
Y3Rpb24gcnVuRmlyc3RTdGFnZU9mVGVzdCgpCiAKIGZ1bmN0aW9uIHJ1blNlY29uZFN0YWdlT2ZU
ZXN0KCkKIHsKLSAgICBhbGVydCgiTGFzdCBwYXRoIGNvbXBvbmVudCBvZiBsb2NhdGlvbiBpcyAi
ICsgbGFzdFBhdGhDb21wb25lbnQoKSk7CisgICAgYWxlcnQoIkxhc3QgcGF0aCBjb21wb25lbnQg
b2YgbG9jYXRpb24gaXMgIiArIGxhc3RQYXRoQ29tcG9uZW50KGxvY2F0aW9uLmhyZWYpKTsKICAg
ICBzZXRUaW1lb3V0KCJoaXN0b3J5LmJhY2soKTsiLCAwKTsKIH0KIApAQCAtNDUsNyArNTAsNyBA
QCBmdW5jdGlvbiBydW5UZXN0KCkKIAogdmFyIGJlZ2FuVGVzdCA9IGZhbHNlOwogCi1mdW5jdGlv
biBzdGF0ZVBvcHBlZCgpCitvbnBvcHN0YXRlID0gZnVuY3Rpb24oKQogewogICAgIC8vIFRoZSBm
aXJzdCB0aW1lIHBvcHN0YXRlIGZpcmVzLCBpdCdzIGJlY2F1c2UgdGhlIHBhZ2UgaGFzIGZpbmlz
aGVkIGxvYWRpbmcuCiAgICAgLy8gT25seSB0aGVuIGNhbiB3ZSBiZWdpbiB0aGUgdGVzdC4KQEAg
LTc5LDEwICs4NCwxMCBAQCBmdW5jdGlvbiBzdGF0ZVBvcHBlZCgpCiAgICAgfSwgMCk7CiB9CiAK
LWZ1bmN0aW9uIGhhc2hDaGFuZ2VkKCkKK29uaGFzaGNoYW5nZSA9IGZ1bmN0aW9uKGV2ZW50KQog
ewotICAgIGFsZXJ0KCJoYXNoQ2hhbmdlZCAtIExhc3QgcGF0aCBjb21wb25lbnQgb2YgbG9jYXRp
b24gaXMgIiArIGxhc3RQYXRoQ29tcG9uZW50KCkpOwotICAgIGlmICh3aW5kb3cubG9jYXRpb24u
aGFzaCA9PSAiI0ZpcnN0RW50cnlXaWxsTGF0ZXJCZVJlYWN0aXZhdGVkIikgeworICAgYWxlcnQo
Imhhc2hDaGFuZ2VkIC0gTGFzdCBwYXRoIGNvbXBvbmVudCBvZiBsb2NhdGlvbiBpcyAiICsgbGFz
dFBhdGhDb21wb25lbnQoZXZlbnQubmV3VVJMKSk7CisgICBpZiAoaGFzaE9mKGV2ZW50Lm5ld1VS
TCkgPT0gIiNGaXJzdEVudHJ5V2lsbExhdGVyQmVSZWFjdGl2YXRlZCIpIHsKICAgICAgICAgYWxl
cnQoIlRlc3QgY29tcGxldGUiKTsKICAgICAgICAgc2Vzc2lvblN0b3JhZ2UuY2xlYXIoKTsKICAg
ICAgICAgaWYgKHdpbmRvdy5sYXlvdXRUZXN0Q29udHJvbGxlcikKQEAgLTkxLDcgKzk2LDcgQEAg
ZnVuY3Rpb24gaGFzaENoYW5nZWQoKQogfQogCiA8L3NjcmlwdD4KLTxib2R5IG9ucG9wc3RhdGU9
InN0YXRlUG9wcGVkKCk7IiBvbmhhc2hjaGFuZ2U9Imhhc2hDaGFuZ2VkKCk7IiBvbnVubG9hZD0i
LyogZGlzYWJsZSBwYWdlIGNhY2hlICovIj4KKzxib2R5IG9udW5sb2FkPSIvKiBkaXNhYmxlIHBh
Z2UgY2FjaGUgKi8iPgogPHByZT4KIFRoaXMgdGVzdDoKIC1CdWlsZHMgdXAgYSBsaXN0IG9mIHN0
YXRlIG9iamVjdCBlbnRyaWVzIHdpdGggZnJhZ21lbnQgVVJMcy4KZGlmZiAtLWdpdCBhL0xheW91
dFRlc3RzL2Zhc3QvbG9hZGVyL3N0YXRlb2JqZWN0cy9wdXNoc3RhdGUtd2l0aC1mcmFnbWVudC11
cmxzLWFuZC1oYXNoY2hhbmdlLmh0bWwgYi9MYXlvdXRUZXN0cy9mYXN0L2xvYWRlci9zdGF0ZW9i
amVjdHMvcHVzaHN0YXRlLXdpdGgtZnJhZ21lbnQtdXJscy1hbmQtaGFzaGNoYW5nZS5odG1sCmlu
ZGV4IGE5MmQ3Y2M3NTEzOWRkYTQwOTVkYWEyZmI1ZmMwYTIzM2U3MTc1ZjYuLjA3Yzc4NGRkNzgy
ZGI4ZWM5MWVhMDUzYjMxNmFlOTk2MjVmZDM3NDggMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2Zh
c3QvbG9hZGVyL3N0YXRlb2JqZWN0cy9wdXNoc3RhdGUtd2l0aC1mcmFnbWVudC11cmxzLWFuZC1o
YXNoY2hhbmdlLmh0bWwKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC9sb2FkZXIvc3RhdGVvYmplY3Rz
L3B1c2hzdGF0ZS13aXRoLWZyYWdtZW50LXVybHMtYW5kLWhhc2hjaGFuZ2UuaHRtbApAQCAtMzks
OSArMzksOSBAQCBmdW5jdGlvbiBydW5UZXN0KCkKICAgICBoaXN0b3J5LmJhY2soKTsKIH0KIAot
ZnVuY3Rpb24gbGFzdFBhdGhDb21wb25lbnQoKQorZnVuY3Rpb24gbGFzdFBhdGhDb21wb25lbnQo
dXJsKQogewotICAgIHJldHVybiB3aW5kb3cubG9jYXRpb24uaHJlZi5zcGxpdCgnLycpLnBvcCgp
OworICAgIHJldHVybiB1cmwuc3BsaXQoJy8nKS5wb3AoKTsKIH0KIAogdmFyIGJlZ2FuVGVzdCA9
IGZhbHNlOwpAQCAtNTYsMTYgKzU2LDE2IEBAIG9ucG9wc3RhdGUgPSBmdW5jdGlvbihldmVudCkK
ICAgICAgICAgcmV0dXJuOwogICAgIH0KIAotICAgIGxvZygiU3RhdGUgcG9wcGVkIHdpdGggZXZl
bnQgIiArIGV2ZW50LnN0YXRlICsgIiAodHlwZSAiICsgdHlwZW9mIGV2ZW50LnN0YXRlICsgIikg
YW5kIGxhc3QgcGF0aCBjb21wb25lbnQgIiArIGxhc3RQYXRoQ29tcG9uZW50KCkpOworICAgIGxv
ZygiU3RhdGUgcG9wcGVkIHdpdGggZXZlbnQgIiArIGV2ZW50LnN0YXRlICsgIiAodHlwZSAiICsg
dHlwZW9mIGV2ZW50LnN0YXRlICsgIikgYW5kIGxhc3QgcGF0aCBjb21wb25lbnQgIiArIGxhc3RQ
YXRoQ29tcG9uZW50KGxvY2F0aW9uLmhyZWYpKTsKICAgICBpZiAoZXZlbnQuc3RhdGUgIT0gIk9y
aWdpbmFsRW50cnkiKQogICAgICAgICBzZXRUaW1lb3V0KCJoaXN0b3J5LmJhY2soKTsiLCAwKTsK
ICAgICBlbHNlIGlmICh3aW5kb3cubGF5b3V0VGVzdENvbnRyb2xsZXIpCiAgICAgICAgIGxheW91
dFRlc3RDb250cm9sbGVyLm5vdGlmeURvbmUoKTsKIH0KIAotb25oYXNoY2hhbmdlID0gZnVuY3Rp
b24oKQorb25oYXNoY2hhbmdlID0gZnVuY3Rpb24oZXZlbnQpCiB7Ci0gICAgbG9nKCJIYXNoIGNo
YW5nZSBmaXJlZCBhbmQgbGFzdCBwYXRoIGNvbXBvbmVudCBpcyAiICsgbGFzdFBhdGhDb21wb25l
bnQoKSk7CisgICAgbG9nKCJIYXNoIGNoYW5nZSBmaXJlZCBhbmQgbGFzdCBwYXRoIGNvbXBvbmVu
dCBpcyAiICsgbGFzdFBhdGhDb21wb25lbnQoZXZlbnQubmV3VVJMKSk7CiB9CiAKIDwvc2NyaXB0
PgpkaWZmIC0tZ2l0IGEvV2ViQ29yZS9DTWFrZUxpc3RzLnR4dCBiL1dlYkNvcmUvQ01ha2VMaXN0
cy50eHQKaW5kZXggODg1ZDgwMTYyZTQzZWZkMzUyZmQzZmMxNTk3ZWZlMWUxZWQ1MDIxMy4uNmY1
Y2VmMDlhNGNkYzAzYWIzMDEwM2E3MTY5MzllNDA2N2Q1NWYwMyAxMDA2NDQKLS0tIGEvV2ViQ29y
ZS9DTWFrZUxpc3RzLnR4dAorKysgYi9XZWJDb3JlL0NNYWtlTGlzdHMudHh0CkBAIC0xNjIsNiAr
MTYyLDcgQEAgU0VUKFdlYkNvcmVfSURMX0ZJTEVTCiAgICAgZG9tL0Vycm9yRXZlbnQuaWRsCiAg
ICAgZG9tL0V2ZW50RXhjZXB0aW9uLmlkbAogICAgIGRvbS9FdmVudC5pZGwKKyAgICBkb20vSGFz
aENoYW5nZUV2ZW50LmlkbAogICAgIGRvbS9LZXlib2FyZEV2ZW50LmlkbAogICAgIGRvbS9NZXNz
YWdlQ2hhbm5lbC5pZGwKICAgICBkb20vTWVzc2FnZUV2ZW50LmlkbApkaWZmIC0tZ2l0IGEvV2Vi
Q29yZS9DaGFuZ2VMb2cgYi9XZWJDb3JlL0NoYW5nZUxvZwppbmRleCBjYjQxMzg3MjQ5YTQzYmNl
M2Y5OTNjYThkNDVhYTA4ZDU2MzRlOTAzLi40ODcyNWZkNWM3MjAyMjY1NjUyYTljMjE3OWJmYTUx
MTIyZjUxMTU0IDEwMDY0NAotLS0gYS9XZWJDb3JlL0NoYW5nZUxvZworKysgYi9XZWJDb3JlL0No
YW5nZUxvZwpAQCAtMSwzICsxLDQ0IEBACisyMDEwLTA5LTA4ICBNaWhhaSBQYXJwYXJpdGEgIDxt
aWhhaXBAY2hyb21pdW0ub3JnPgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEp
LgorCisgICAgICAgIEhhc2hjaGFuZ2UgZXZlbnQgaXMgbm8gbG9uZ2VyIGEgc2ltcGxlIGV2ZW50
LCBuZWVkcyB0byBiZSBpdHMgb3duIGludGVyZmFjZQorICAgICAgICBodHRwczovL2J1Z3Mud2Vi
a2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MzYzMzUKKyAgICAgICAgCisgICAgICAgIEFkZCBIYXNo
Q2hhbmdlRXZlbnQuaWRsIGFuZCBzdXBwb3J0aW5nIGZpbGVzL2NoYW5nZXMuCisKKyAgICAgICAg
VGVzdDogZmFzdC9sb2FkZXIvaGFzaGNoYW5nZS1ldmVudC1wcm9wZXJ0aWVzLmh0bWwKKworICAg
ICAgICBUaGUgb3JpZ2luYWwgdmVyc2lvbiBvZiB0aGlzIHBhdGNoIHdhcyB3cml0dGVuIGJ5Cisg
ICAgICAgIFN0ZXZlbiBMYWkgPHMzbGFuY2VAaG90bWFpbC5jb20+LgorCisgICAgICAgICogQ01h
a2VMaXN0cy50eHQ6CisgICAgICAgICogRGVyaXZlZFNvdXJjZXMuY3BwOgorICAgICAgICAqIERl
cml2ZWRTb3VyY2VzLm1ha2U6CisgICAgICAgICogR05VbWFrZWZpbGUuYW06CisgICAgICAgICog
V2ViQ29yZS5neXBpOgorICAgICAgICAqIFdlYkNvcmUucHJpOgorICAgICAgICAqIFdlYkNvcmUu
dmNwcm9qL1dlYkNvcmUudmNwcm9qOgorICAgICAgICAqIFdlYkNvcmUueGNvZGVwcm9qL3Byb2pl
Y3QucGJ4cHJvajoKKyAgICAgICAgKiBiaW5kaW5ncy9qcy9KU0V2ZW50Q3VzdG9tLmNwcDoKKyAg
ICAgICAgKFdlYkNvcmU6OnRvSlMpOgorICAgICAgICAqIGJpbmRpbmdzL3Y4L2N1c3RvbS9WOEV2
ZW50Q3VzdG9tLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OnRvVjgpOgorICAgICAgICAqIGRvbS9E
b2N1bWVudC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpEb2N1bWVudDo6ZW5xdWV1ZUhhc2hjaGFu
Z2VFdmVudCk6CisgICAgICAgICogZG9tL0V2ZW50LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkV2
ZW50Ojppc0hhc2hDaGFuZ2VFdmVudCk6CisgICAgICAgICogZG9tL0V2ZW50Lmg6CisgICAgICAg
ICogZG9tL0hhc2hDaGFuZ2VFdmVudC5oOiBBZGRlZC4KKyAgICAgICAgKFdlYkNvcmU6Okhhc2hD
aGFuZ2VFdmVudDo6aXNIYXNoQ2hhbmdlRXZlbnQpOgorICAgICAgICAoV2ViQ29yZTo6SGFzaENo
YW5nZUV2ZW50OjpjcmVhdGUpOgorICAgICAgICAoV2ViQ29yZTo6SGFzaENoYW5nZUV2ZW50Ojpp
bml0SGFzaENoYW5nZUV2ZW50KToKKyAgICAgICAgKFdlYkNvcmU6Okhhc2hDaGFuZ2VFdmVudDo6
b2xkVVJMKToKKyAgICAgICAgKFdlYkNvcmU6Okhhc2hDaGFuZ2VFdmVudDo6bmV3VVJMKToKKyAg
ICAgICAgKFdlYkNvcmU6Okhhc2hDaGFuZ2VFdmVudDo6SGFzaENoYW5nZUV2ZW50KToKKyAgICAg
ICAgKiBkb20vSGFzaENoYW5nZUV2ZW50LmlkbDogQWRkZWQuCisgICAgICAgICogcGFnZS9ET01X
aW5kb3cuaWRsOgorCiAyMDEwLTA5LTA4ICBBbmR5IEVzdGVzICA8YWVzdGVzQGFwcGxlLmNvbT4K
IAogICAgICAgICBSdWJiZXItc3RhbXBlZCBieSBEYXJpbiBBZGxlci4KZGlmZiAtLWdpdCBhL1dl
YkNvcmUvRGVyaXZlZFNvdXJjZXMuY3BwIGIvV2ViQ29yZS9EZXJpdmVkU291cmNlcy5jcHAKaW5k
ZXggODFmNDA3MDAxYzk2MWFjNGM2MTYyMmJiODBhYTE4OTY4MGVlZmU4YS4uZjYyODdkNTNiZjg3
MmFkYTE2ZjMzNmI2OGFiOTk5ZTg2MGQyYmJjZSAxMDA2NDQKLS0tIGEvV2ViQ29yZS9EZXJpdmVk
U291cmNlcy5jcHAKKysrIGIvV2ViQ29yZS9EZXJpdmVkU291cmNlcy5jcHAKQEAgLTExNiw2ICsx
MTYsNyBAQAogI2luY2x1ZGUgIkpTRmxhZ3MuY3BwIgogI2luY2x1ZGUgIkpTR2VvbG9jYXRpb24u
Y3BwIgogI2luY2x1ZGUgIkpTR2VvcG9zaXRpb24uY3BwIgorI2luY2x1ZGUgIkpTSGFzaENoYW5n
ZUV2ZW50LmNwcCIKICNpbmNsdWRlICJKU0hpc3RvcnkuY3BwIgogI2luY2x1ZGUgIkpTSFRNTEFs
bENvbGxlY3Rpb24uY3BwIgogI2luY2x1ZGUgIkpTSFRNTEFuY2hvckVsZW1lbnQuY3BwIgpkaWZm
IC0tZ2l0IGEvV2ViQ29yZS9EZXJpdmVkU291cmNlcy5tYWtlIGIvV2ViQ29yZS9EZXJpdmVkU291
cmNlcy5tYWtlCmluZGV4IDZmZDFjZGVlMTZkZDliNWVkZmM0N2ViM2NlMGMzMWMyYTJlMzNmMjgu
LmIxYjA3ZDgzMGRhNzdiYzA1MmZkMmMyYTdkYzVlODRmODMzNDIxNjkgMTAwNjQ0Ci0tLSBhL1dl
YkNvcmUvRGVyaXZlZFNvdXJjZXMubWFrZQorKysgYi9XZWJDb3JlL0Rlcml2ZWRTb3VyY2VzLm1h
a2UKQEAgLTE2Miw2ICsxNjIsOCBAQCBET01fQ0xBU1NFUyA9IFwKICAgICBGbGFncyBcCiAgICAg
R2VvbG9jYXRpb24gXAogICAgIEdlb3Bvc2l0aW9uIFwKKyAgICBIYXNoQ2hhbmdlRXZlbnQgXAor
ICAgIEhpc3RvcnkgXAogICAgIEhUTUxBbGxDb2xsZWN0aW9uIFwKICAgICBIVE1MQW5jaG9yRWxl
bWVudCBcCiAgICAgSFRNTEFwcGxldEVsZW1lbnQgXApAQCAtMjM0LDcgKzIzNiw2IEBAIERPTV9D
TEFTU0VTID0gXAogICAgIEhUTUxUaXRsZUVsZW1lbnQgXAogICAgIEhUTUxVTGlzdEVsZW1lbnQg
XAogICAgIEhUTUxWaWRlb0VsZW1lbnQgXAotICAgIEhpc3RvcnkgXAogICAgIElEQkFueSBcCiAg
ICAgSURCQ3Vyc29yIFwKICAgICBJREJEYXRhYmFzZUVycm9yIFwKZGlmZiAtLWdpdCBhL1dlYkNv
cmUvR05VbWFrZWZpbGUuYW0gYi9XZWJDb3JlL0dOVW1ha2VmaWxlLmFtCmluZGV4IDBmNTc0MTMy
NjlhYmM0ZDNmY2U5Yzg3YWExNDI3OTAzZmQ1NTM4NjAuLmJlYzI5OTNkYjAzYWYxZWEyYjk0YWMz
ZTdjZmE3YWUwYzg4NTgzNWEgMTAwNjQ0Ci0tLSBhL1dlYkNvcmUvR05VbWFrZWZpbGUuYW0KKysr
IGIvV2ViQ29yZS9HTlVtYWtlZmlsZS5hbQpAQCAtMTA3OCw2ICsxMDc4LDcgQEAgd2ViY29yZV9z
b3VyY2VzICs9IFwKIAlXZWJDb3JlL2RvbS9GcmFnbWVudFNjcmlwdGluZ1Blcm1pc3Npb24uaCBc
CiAJV2ViQ29yZS9kb20vSW5wdXRFbGVtZW50LmNwcCBcCiAJV2ViQ29yZS9kb20vSW5wdXRFbGVt
ZW50LmggXAorCVdlYkNvcmUvZG9tL0hhc2hDaGFuZ2VFdmVudC5oIFwKIAlXZWJDb3JlL2RvbS9L
ZXlib2FyZEV2ZW50LmNwcCBcCiAJV2ViQ29yZS9kb20vS2V5Ym9hcmRFdmVudC5oIFwKIAlXZWJD
b3JlL2RvbS9NYXBwZWRBdHRyaWJ1dGVFbnRyeS5oIFwKZGlmZiAtLWdpdCBhL1dlYkNvcmUvV2Vi
Q29yZS5neXBpIGIvV2ViQ29yZS9XZWJDb3JlLmd5cGkKaW5kZXggYzc1OTc5NDZhZDBkODk5NzUx
MmI4OWYxMjhhNmI5ZWY3ZTYyMjBhOS4uOWVhMDlkNmNjOGRkNzM0MmVkZWEwZDc5ZDQ2MmIxNjFk
ZTVkYWUwYiAxMDA2NDQKLS0tIGEvV2ViQ29yZS9XZWJDb3JlLmd5cGkKKysrIGIvV2ViQ29yZS9X
ZWJDb3JlLmd5cGkKQEAgLTU2LDYgKzU2LDcgQEAKICAgICAgICAgICAgICdkb20vRXZlbnRFeGNl
cHRpb24uaWRsJywKICAgICAgICAgICAgICdkb20vRXZlbnRMaXN0ZW5lci5pZGwnLAogICAgICAg
ICAgICAgJ2RvbS9FdmVudFRhcmdldC5pZGwnLAorICAgICAgICAgICAgJ2RvbS9IYXNoQ2hhbmdl
RXZlbnQuaWRsJywKICAgICAgICAgICAgICdkb20vS2V5Ym9hcmRFdmVudC5pZGwnLAogICAgICAg
ICAgICAgJ2RvbS9NZXNzYWdlQ2hhbm5lbC5pZGwnLAogICAgICAgICAgICAgJ2RvbS9NZXNzYWdl
RXZlbnQuaWRsJywKQEAgLTExOTAsNiArMTE5MSw3IEBACiAgICAgICAgICAgICAnZG9tL0ZyYWdt
ZW50U2NyaXB0aW5nUGVybWlzc2lvbi5oJywKICAgICAgICAgICAgICdkb20vSW5wdXRFbGVtZW50
LmNwcCcsCiAgICAgICAgICAgICAnZG9tL0lucHV0RWxlbWVudC5oJywKKyAgICAgICAgICAgICdk
b20vSGFzaENoYW5nZUV2ZW50LmgnLAogICAgICAgICAgICAgJ2RvbS9LZXlib2FyZEV2ZW50LmNw
cCcsCiAgICAgICAgICAgICAnZG9tL0tleWJvYXJkRXZlbnQuaCcsCiAgICAgICAgICAgICAnZG9t
L01hcHBlZEF0dHJpYnV0ZUVudHJ5LmgnLApkaWZmIC0tZ2l0IGEvV2ViQ29yZS9XZWJDb3JlLnBy
aSBiL1dlYkNvcmUvV2ViQ29yZS5wcmkKaW5kZXggYTRjNjliMTBjMmEwZTY2MGNmNmZiZjcyNmFl
M2YzOGUwNmNmMmE5Ny4uY2JmMzJhMWRiN2ExM2ZkYjczNTE1YzRiMDhlNmRmZjA0NWEwOWJhYyAx
MDA2NDQKLS0tIGEvV2ViQ29yZS9XZWJDb3JlLnByaQorKysgYi9XZWJDb3JlL1dlYkNvcmUucHJp
CkBAIC0xMTgsNiArMTE4LDcgQEAgSURMX0JJTkRJTkdTICs9IFwKICAgICBkb20vRXZlbnRFeGNl
cHRpb24uaWRsIFwKICMgICAgZG9tL0V2ZW50TGlzdGVuZXIuaWRsIFwKICMgICAgZG9tL0V2ZW50
VGFyZ2V0LmlkbCBcCisgICAgZG9tL0hhc2hDaGFuZ2VFdmVudC5pZGwgXAogICAgIGRvbS9LZXli
b2FyZEV2ZW50LmlkbCBcCiAgICAgZG9tL01vdXNlRXZlbnQuaWRsIFwKICAgICBkb20vTWVzc2Fn
ZUNoYW5uZWwuaWRsIFwKZGlmZiAtLWdpdCBhL1dlYkNvcmUvV2ViQ29yZS52Y3Byb2ovV2ViQ29y
ZS52Y3Byb2ogYi9XZWJDb3JlL1dlYkNvcmUudmNwcm9qL1dlYkNvcmUudmNwcm9qCmluZGV4IDA0
N2JkNDcyMjZkYTcwMTZkZWQ4NTI5OGQyOTYyZTE4NTYxYThhYWYuLmUwZmFkNGYzOGNhN2JjMDY5
MGE2MDRmYzllMmI3YzhkYjFlYTg5MTQgMTAwNjQ0Ci0tLSBhL1dlYkNvcmUvV2ViQ29yZS52Y3By
b2ovV2ViQ29yZS52Y3Byb2oKKysrIGIvV2ViQ29yZS9XZWJDb3JlLnZjcHJvai9XZWJDb3JlLnZj
cHJvagpAQCAtNTI4NCw2ICs1Mjg0LDYyIEBACiAJCQkJUmVsYXRpdmVQYXRoPSIkKFdlYktpdE91
dHB1dERpcilcb2JqXCQoUHJvamVjdE5hbWUpXERlcml2ZWRTb3VyY2VzXEpTR2VvcG9zaXRpb24u
aCINCiAJCQkJPg0KIAkJCTwvRmlsZT4NCisgCQkJPEZpbGUNCisJCQkJUmVsYXRpdmVQYXRoPSIk
KFdlYktpdE91dHB1dERpcilcb2JqXCQoUHJvamVjdE5hbWUpXERlcml2ZWRTb3VyY2VzXEpTSGFz
aENoYW5nZUV2ZW50LmNwcCINCisJCQkJPg0KKwkJCQk8RmlsZUNvbmZpZ3VyYXRpb24NCisJCQkJ
CU5hbWU9IkRlYnVnfFdpbjMyIg0KKwkJCQkJRXhjbHVkZWRGcm9tQnVpbGQ9InRydWUiDQorCQkJ
CQk+DQorCQkJCQk8VG9vbA0KKwkJCQkJCU5hbWU9IlZDQ0xDb21waWxlclRvb2wiDQorCQkJCQkv
Pg0KKwkJCQk8L0ZpbGVDb25maWd1cmF0aW9uPg0KKwkJCQk8RmlsZUNvbmZpZ3VyYXRpb24NCisJ
CQkJCU5hbWU9IlJlbGVhc2V8V2luMzIiDQorCQkJCQlFeGNsdWRlZEZyb21CdWlsZD0idHJ1ZSIN
CisJCQkJCT4NCisJCQkJCTxUb29sDQorCQkJCQkJTmFtZT0iVkNDTENvbXBpbGVyVG9vbCINCisJ
CQkJCS8+DQorCQkJCTwvRmlsZUNvbmZpZ3VyYXRpb24+DQorCQkJCTxGaWxlQ29uZmlndXJhdGlv
bg0KKwkJCQkJTmFtZT0iRGVidWdfSW50ZXJuYWx8V2luMzIiDQorCQkJCQlFeGNsdWRlZEZyb21C
dWlsZD0idHJ1ZSINCisJCQkJCT4NCisJCQkJCTxUb29sDQorCQkJCQkJTmFtZT0iVkNDTENvbXBp
bGVyVG9vbCINCisJCQkJCS8+DQorCQkJCTwvRmlsZUNvbmZpZ3VyYXRpb24+DQorCQkJCTxGaWxl
Q29uZmlndXJhdGlvbg0KKwkJCQkJTmFtZT0iRGVidWdfQ2Fpcm98V2luMzIiDQorCQkJCQlFeGNs
dWRlZEZyb21CdWlsZD0idHJ1ZSINCisJCQkJCT4NCisJCQkJCTxUb29sDQorCQkJCQkJTmFtZT0i
VkNDTENvbXBpbGVyVG9vbCINCisJCQkJCS8+DQorCQkJCTwvRmlsZUNvbmZpZ3VyYXRpb24+DQor
CQkJCTxGaWxlQ29uZmlndXJhdGlvbg0KKwkJCQkJTmFtZT0iUmVsZWFzZV9DYWlyb3xXaW4zMiIN
CisJCQkJCUV4Y2x1ZGVkRnJvbUJ1aWxkPSJ0cnVlIg0KKwkJCQkJPg0KKwkJCQkJPFRvb2wNCisJ
CQkJCQlOYW1lPSJWQ0NMQ29tcGlsZXJUb29sIg0KKwkJCQkJLz4NCisJCQkJPC9GaWxlQ29uZmln
dXJhdGlvbj4NCisJCQkJPEZpbGVDb25maWd1cmF0aW9uDQorCQkJCQlOYW1lPSJEZWJ1Z19BbGx8
V2luMzIiDQorCQkJCQlFeGNsdWRlZEZyb21CdWlsZD0idHJ1ZSINCisJCQkJCT4NCisJCQkJCTxU
b29sDQorCQkJCQkJTmFtZT0iVkNDTENvbXBpbGVyVG9vbCINCisJCQkJCS8+DQorCQkJCTwvRmls
ZUNvbmZpZ3VyYXRpb24+DQorCQkJPC9GaWxlPg0KKwkJCTxGaWxlDQorCQkJCVJlbGF0aXZlUGF0
aD0iJChXZWJLaXRPdXRwdXREaXIpXG9ialwkKFByb2plY3ROYW1lKVxEZXJpdmVkU291cmNlc1xK
U0hhc2hDaGFuZ2VFdmVudC5oIg0KKwkJCQk+DQorCQkJPC9GaWxlPg0KIAkJCTxGaWxlDQogCQkJ
CVJlbGF0aXZlUGF0aD0iJChXZWJLaXRPdXRwdXREaXIpXG9ialwkKFByb2plY3ROYW1lKVxEZXJp
dmVkU291cmNlc1xKU0hpc3RvcnkuY3BwIg0KIAkJCQk+DQpAQCAtMzM4NDksNiArMzM5MDUsMTAg
QEAKIAkJCQk+DQogCQkJPC9GaWxlPg0KIAkJCTxGaWxlDQorCQkJCVJlbGF0aXZlUGF0aD0iLi5c
ZG9tXEhhc2hDaGFuZ2VFdmVudC5jcHAiDQorCQkJCT4NCisJCQk8L0ZpbGU+DQorCQkJPEZpbGUN
CiAJCQkJUmVsYXRpdmVQYXRoPSIuLlxkb21cS2V5Ym9hcmRFdmVudC5jcHAiDQogCQkJCT4NCiAJ
CQk8L0ZpbGU+DQpkaWZmIC0tZ2l0IGEvV2ViQ29yZS9XZWJDb3JlLnhjb2RlcHJvai9wcm9qZWN0
LnBieHByb2ogYi9XZWJDb3JlL1dlYkNvcmUueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvagppbmRl
eCBhNTI0MzllYjk3YWQyMWQwZDIxNTAxYTQ1ZDVhN2RmZjE1YmEzYzhkLi5iMGZmYWI5ZWUxNThm
ZDEyNmRmN2NhMjAwZjhlYWE1MTAzNTY2Nzk3IDEwMDY0NAotLS0gYS9XZWJDb3JlL1dlYkNvcmUu
eGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvagorKysgYi9XZWJDb3JlL1dlYkNvcmUueGNvZGVwcm9q
L3Byb2plY3QucGJ4cHJvagpAQCAtMTQ4OSw2ICsxNDg5LDkgQEAKIAkJODQ3NkM5RjAxMURGNkE1
ODAwNTU1QjAyIC8qIFNWR1BhdGhQYXJzZXIuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1
aWxkRmlsZTsgZmlsZVJlZiA9IDg0NzZDOUVFMTFERjZBNTgwMDU1NUIwMiAvKiBTVkdQYXRoUGFy
c2VyLmggKi87IH07CiAJCTg0ODAxOTU0MTA4QkFGQjMwMENCMkIxRiAvKiBGRUdhdXNzaWFuQmx1
ci5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA4NDgw
MTk1MjEwOEJBRkIzMDBDQjJCMUYgLyogRkVHYXVzc2lhbkJsdXIuY3BwICovOyB9OwogCQk4NDgw
MTk1NTEwOEJBRkIzMDBDQjJCMUYgLyogRkVHYXVzc2lhbkJsdXIuaCBpbiBIZWFkZXJzICovID0g
e2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDg0ODAxOTUzMTA4QkFGQjMwMENCMkIxRiAv
KiBGRUdhdXNzaWFuQmx1ci5oICovOyB9OworCQk4NDgyQjc0NjExOThDMzU0MDBCRkIwMDUgLyog
SGFzaENoYW5nZUV2ZW50LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZp
bGVSZWYgPSAyNDQyQkJGODExOTRDOUQzMDBENDk0NjkgLyogSGFzaENoYW5nZUV2ZW50LmggKi87
IH07CisJCTg0ODJCNzUxMTE5OENCNkIwMEJGQjAwNSAvKiBKU0hhc2hDaGFuZ2VFdmVudC5jcHAg
aW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA4NDgyQjc0RjEx
OThDQjZCMDBCRkIwMDUgLyogSlNIYXNoQ2hhbmdlRXZlbnQuY3BwICovOyB9OworCQk4NDgyQjc1
MjExOThDQjZCMDBCRkIwMDUgLyogSlNIYXNoQ2hhbmdlRXZlbnQuaCBpbiBIZWFkZXJzICovID0g
e2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDg0ODJCNzUwMTE5OENCNkIwMEJGQjAwNSAv
KiBKU0hhc2hDaGFuZ2VFdmVudC5oICovOyB9OwogCQk4NDg1MjI3QjExOTAxNjJDMDA2RURDN0Yg
LyogSlNTVkdIS2VybkVsZW1lbnQuY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRG
aWxlOyBmaWxlUmVmID0gODQ4NTIyNzcxMTkwMTYyQzAwNkVEQzdGIC8qIEpTU1ZHSEtlcm5FbGVt
ZW50LmNwcCAqLzsgfTsKIAkJODQ4NTIyN0MxMTkwMTYyQzAwNkVEQzdGIC8qIEpTU1ZHSEtlcm5F
bGVtZW50LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA4
NDg1MjI3ODExOTAxNjJDMDA2RURDN0YgLyogSlNTVkdIS2VybkVsZW1lbnQuaCAqLzsgfTsKIAkJ
ODQ4NTIyN0QxMTkwMTYyQzAwNkVEQzdGIC8qIEpTU1ZHVktlcm5FbGVtZW50LmNwcCBpbiBTb3Vy
Y2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDg0ODUyMjc5MTE5MDE2MkMw
MDZFREM3RiAvKiBKU1NWR1ZLZXJuRWxlbWVudC5jcHAgKi87IH07CkBAIC02NDcxLDYgKzY0NzQs
NyBAQAogCQkxQ0ZBRTMyMjBBNkQ2QTNGMDAzMjU5M0QgLyogbGlib2JqYy5keWxpYiAqLyA9IHtp
c2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9ICJjb21waWxlZC5tYWNo
LW8uZHlsaWIiOyBuYW1lID0gbGlib2JqYy5keWxpYjsgcGF0aCA9IC91c3IvbGliL2xpYm9iamMu
ZHlsaWI7IHNvdXJjZVRyZWUgPSAiPGFic29sdXRlPiI7IH07CiAJCTIwMEIxOTA4MTFDMjc3RDkw
MERDQ0QzQSAvKiBTY3JpcHRCcmVha3BvaW50LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJl
bmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3Bw
LmNwcDsgcGF0aCA9IFNjcmlwdEJyZWFrcG9pbnQuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4i
OyB9OwogCQkyMjhDMjg0NDEwRDgyNTAwMDA5RDBEMEUgLyogU2NyaXB0V3JhcHBhYmxlLmggKi8g
PSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmls
ZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFNjcmlwdFdyYXBwYWJsZS5oOyBzb3VyY2VU
cmVlID0gIjxncm91cD4iOyB9OworCQkyNDQyQkJGODExOTRDOUQzMDBENDk0NjkgLyogSGFzaENo
YW5nZUV2ZW50LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0g
NDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEhhc2hDaGFuZ2VF
dmVudC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQkyNEY1NEVBQTEwMUZFOTE0MDAw
QUU3NDEgLyogQXBwbGljYXRpb25DYWNoZUhvc3QuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZl
cmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5j
cHAuY3BwOyBwYXRoID0gQXBwbGljYXRpb25DYWNoZUhvc3QuY3BwOyBzb3VyY2VUcmVlID0gIjxn
cm91cD4iOyB9OwogCQkyNEY1NEVBQjEwMUZFOTE0MDAwQUU3NDEgLyogQXBwbGljYXRpb25DYWNo
ZUhvc3QuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBs
YXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gQXBwbGljYXRpb25DYWNo
ZUhvc3QuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJMjU0MkY0RDgxMTY2QzI1QTAw
RTg5QTg2IC8qIFVzZXJHZXN0dXJlSW5kaWNhdG9yLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVm
ZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUu
Y3BwLmNwcDsgcGF0aCA9IFVzZXJHZXN0dXJlSW5kaWNhdG9yLmNwcDsgc291cmNlVHJlZSA9ICI8
Z3JvdXA+IjsgfTsKQEAgLTc0MjUsNiArNzQyOSw5IEBACiAJCTg0NzZDOUVFMTFERjZBNTgwMDU1
NUIwMiAvKiBTVkdQYXRoUGFyc2VyLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmls
ZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9
IFNWR1BhdGhQYXJzZXIuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJODQ4MDE5NTIx
MDhCQUZCMzAwQ0IyQjFGIC8qIEZFR2F1c3NpYW5CbHVyLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxl
UmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNv
ZGUuY3BwLmNwcDsgbmFtZSA9IEZFR2F1c3NpYW5CbHVyLmNwcDsgcGF0aCA9IGZpbHRlcnMvRkVH
YXVzc2lhbkJsdXIuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQk4NDgwMTk1MzEw
OEJBRkIzMDBDQjJCMUYgLyogRkVHYXVzc2lhbkJsdXIuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVm
ZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUu
Yy5oOyBuYW1lID0gRkVHYXVzc2lhbkJsdXIuaDsgcGF0aCA9IGZpbHRlcnMvRkVHYXVzc2lhbkJs
dXIuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJODQ4MkI3NDQxMTk4QzMyRTAwQkZC
MDA1IC8qIEhhc2hDaGFuZ2VFdmVudC5pZGwgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsg
ZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSB0ZXh0OyBwYXRoID0gSGFzaENo
YW5nZUV2ZW50LmlkbDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJODQ4MkI3NEYxMTk4
Q0I2QjAwQkZCMDA1IC8qIEpTSGFzaENoYW5nZUV2ZW50LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxl
UmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNv
ZGUuY3BwLmNwcDsgcGF0aCA9IEpTSGFzaENoYW5nZUV2ZW50LmNwcDsgc291cmNlVHJlZSA9ICI8
Z3JvdXA+IjsgfTsKKwkJODQ4MkI3NTAxMTk4Q0I2QjAwQkZCMDA1IC8qIEpTSGFzaENoYW5nZUV2
ZW50LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFz
dEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEpTSGFzaENoYW5nZUV2ZW50
Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTg0ODUyMjc3MTE5MDE2MkMwMDZFREM3
RiAvKiBKU1NWR0hLZXJuRWxlbWVudC5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsg
ZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7
IHBhdGggPSBKU1NWR0hLZXJuRWxlbWVudC5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07
CiAJCTg0ODUyMjc4MTE5MDE2MkMwMDZFREM3RiAvKiBKU1NWR0hLZXJuRWxlbWVudC5oICovID0g
e2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVU
eXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBKU1NWR0hLZXJuRWxlbWVudC5oOyBzb3VyY2VU
cmVlID0gIjxncm91cD4iOyB9OwogCQk4NDg1MjI3OTExOTAxNjJDMDA2RURDN0YgLyogSlNTVkdW
S2VybkVsZW1lbnQuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGlu
ZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gSlNT
VkdWS2VybkVsZW1lbnQuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwpAQCAtMTUxNDYs
NiArMTUxNTMsOCBAQAogCQkJCTE0RTgzNzhEMDlGODVENEYwMEI4NUFFNCAvKiBKU0V2ZW50Lmgg
Ki8sCiAJCQkJQkM2MEQ5QkQwRDJBMjY5QTAwQjk5MThGIC8qIEpTRXZlbnRFeGNlcHRpb24uY3Bw
ICovLAogCQkJCUJDNjBEOUJFMEQyQTI2OUEwMEI5OTE4RiAvKiBKU0V2ZW50RXhjZXB0aW9uLmgg
Ki8sCisJCQkJODQ4MkI3NEYxMTk4Q0I2QjAwQkZCMDA1IC8qIEpTSGFzaENoYW5nZUV2ZW50LmNw
cCAqLywKKwkJCQk4NDgyQjc1MDExOThDQjZCMDBCRkIwMDUgLyogSlNIYXNoQ2hhbmdlRXZlbnQu
aCAqLywKIAkJCQlBODY2MjlDRTA5REEyQjQ3MDA5NjMzQTUgLyogSlNLZXlib2FyZEV2ZW50LmNw
cCAqLywKIAkJCQlBODY2MjlDRDA5REEyQjQ3MDA5NjMzQTUgLyogSlNLZXlib2FyZEV2ZW50Lmgg
Ki8sCiAJCQkJRTEwNzQwMEIwRTc3QkRDMDAwMzNBRjI0IC8qIEpTTWVzc2FnZUNoYW5uZWwuY3Bw
ICovLApAQCAtMTc1MTgsNiArMTc1MjcsOCBAQAogCQkJCTkzODMxQjU2MEQwODdENjAwMEU1Qzk4
NCAvKiBFeGNlcHRpb25Db2RlLmNwcCAqLywKIAkJCQk5MzVGQkNGMTA5QkExNDNCMDBFMjMwQjEg
LyogRXhjZXB0aW9uQ29kZS5oICovLAogCQkJCUE4NTMxMjNDMTFEMDQ3MUIwMEQ0RDA3NyAvKiBG
cmFnbWVudFNjcmlwdGluZ1Blcm1pc3Npb24uaCAqLywKKwkJCQk4NDgyQjc0NDExOThDMzJFMDBC
RkIwMDUgLyogSGFzaENoYW5nZUV2ZW50LmlkbCAqLywKKwkJCQkyNDQyQkJGODExOTRDOUQzMDBE
NDk0NjkgLyogSGFzaENoYW5nZUV2ZW50LmggKi8sCiAJCQkJMDg3MDBCRTYwRjA4NkM1MzAwOTE5
NDE5IC8qIElucHV0RWxlbWVudC5jcHAgKi8sCiAJCQkJMDg1OTFBQTQwRjA4NUM0RTAwOUJBQ0Ix
IC8qIElucHV0RWxlbWVudC5oICovLAogCQkJCTg1MDMxQjJEMEE0NEVGQzcwMEY5OTJFMCAvKiBL
ZXlib2FyZEV2ZW50LmNwcCAqLywKQEAgLTIwNDU3LDYgKzIwNDY4LDggQEAKIAkJCQk5N0JDODQ5
QjEyMzcwQTRCMDAwQzYxNjEgLyogSFRNTElucHV0U3RyZWFtLmggaW4gSGVhZGVycyAqLywKIAkJ
CQk5N0JDODRBNTEyMzcwREM4MDAwQzYxNjEgLyogVGV4dFZpZXdTb3VyY2VQYXJzZXIuaCBpbiBI
ZWFkZXJzICovLAogCQkJCTk3QkM4NEI0MTIzNzExODAwMDBDNjE2MSAvKiBUZXh0RG9jdW1lbnQu
aCBpbiBIZWFkZXJzICovLAorCQkJCTg0ODJCNzQ2MTE5OEMzNTQwMEJGQjAwNSAvKiBIYXNoQ2hh
bmdlRXZlbnQuaCBpbiBIZWFkZXJzICovLAorCQkJCTg0ODJCNzUyMTE5OENCNkIwMEJGQjAwNSAv
KiBKU0hhc2hDaGFuZ2VFdmVudC5oIGluIEhlYWRlcnMgKi8sCiAJCQkpOwogCQkJcnVuT25seUZv
ckRlcGxveW1lbnRQb3N0cHJvY2Vzc2luZyA9IDA7CiAJCX07CkBAIC0yMjkyMyw2ICsyMjkzNiw3
IEBACiAJCQkJOTdCQzg0ODMxMjM2RkQ5MzAwMEM2MTYxIC8qIFRleHREb2N1bWVudFBhcnNlci5j
cHAgaW4gU291cmNlcyAqLywKIAkJCQk5N0JDODRBNDEyMzcwREM4MDAwQzYxNjEgLyogVGV4dFZp
ZXdTb3VyY2VQYXJzZXIuY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJOTdCQzg0QjMxMjM3MTE4MDAw
MEM2MTYxIC8qIFRleHREb2N1bWVudC5jcHAgaW4gU291cmNlcyAqLywKKwkJCQk4NDgyQjc1MTEx
OThDQjZCMDBCRkIwMDUgLyogSlNIYXNoQ2hhbmdlRXZlbnQuY3BwIGluIFNvdXJjZXMgKi8sCiAJ
CQkpOwogCQkJcnVuT25seUZvckRlcGxveW1lbnRQb3N0cHJvY2Vzc2luZyA9IDA7CiAJCX07CmRp
ZmYgLS1naXQgYS9XZWJDb3JlL2JpbmRpbmdzL2pzL0pTRXZlbnRDdXN0b20uY3BwIGIvV2ViQ29y
ZS9iaW5kaW5ncy9qcy9KU0V2ZW50Q3VzdG9tLmNwcAppbmRleCA3NDc5MDIwYzcxN2RhZjUwOTZk
NjdiN2UyYjE3N2ZiOTZjNDU4ZWM2Li5kMmU5ZDYxMThhNTE0Yzg3MjExNjcwOTljMjVhY2UwNTgw
YTM3NTE5IDEwMDY0NAotLS0gYS9XZWJDb3JlL2JpbmRpbmdzL2pzL0pTRXZlbnRDdXN0b20uY3Bw
CisrKyBiL1dlYkNvcmUvYmluZGluZ3MvanMvSlNFdmVudEN1c3RvbS5jcHAKQEAgLTQyLDYgKzQy
LDcgQEAKICNpbmNsdWRlICJKU0RldmljZU1vdGlvbkV2ZW50LmgiCiAjaW5jbHVkZSAiSlNEZXZp
Y2VPcmllbnRhdGlvbkV2ZW50LmgiCiAjaW5jbHVkZSAiSlNFcnJvckV2ZW50LmgiCisjaW5jbHVk
ZSAiSlNIYXNoQ2hhbmdlRXZlbnQuaCIKICNpbmNsdWRlICJKU0tleWJvYXJkRXZlbnQuaCIKICNp
bmNsdWRlICJKU01lc3NhZ2VFdmVudC5oIgogI2luY2x1ZGUgIkpTTW91c2VFdmVudC5oIgpAQCAt
NTgsNiArNTksNyBAQAogI2luY2x1ZGUgIkpTWE1MSHR0cFJlcXVlc3RQcm9ncmVzc0V2ZW50Lmgi
CiAjaW5jbHVkZSAiQmVmb3JlTG9hZEV2ZW50LmgiCiAjaW5jbHVkZSAiRXJyb3JFdmVudC5oIgor
I2luY2x1ZGUgIkhhc2hDaGFuZ2VFdmVudC5oIgogI2luY2x1ZGUgIktleWJvYXJkRXZlbnQuaCIK
ICNpbmNsdWRlICJNZXNzYWdlRXZlbnQuaCIKICNpbmNsdWRlICJNb3VzZUV2ZW50LmgiCkBAIC0x
NzAsNiArMTcyLDggQEAgSlNWYWx1ZSB0b0pTKEV4ZWNTdGF0ZSogZXhlYywgSlNET01HbG9iYWxP
YmplY3QqIGdsb2JhbE9iamVjdCwgRXZlbnQqIGV2ZW50KQogICAgIGVsc2UgaWYgKGV2ZW50LT5p
c0Vycm9yRXZlbnQoKSkKICAgICAgICAgd3JhcHBlciA9IENSRUFURV9ET01fT0JKRUNUX1dSQVBQ
RVIoZXhlYywgZ2xvYmFsT2JqZWN0LCBFcnJvckV2ZW50LCBldmVudCk7CiAjZW5kaWYKKyAgICBl
bHNlIGlmIChldmVudC0+aXNIYXNoQ2hhbmdlRXZlbnQoKSkKKyAgICAgICAgd3JhcHBlciA9IENS
RUFURV9ET01fT0JKRUNUX1dSQVBQRVIoZXhlYywgZ2xvYmFsT2JqZWN0LCBIYXNoQ2hhbmdlRXZl
bnQsIGV2ZW50KTsKICAgICBlbHNlIGlmIChldmVudC0+aXNQb3BTdGF0ZUV2ZW50KCkpCiAgICAg
ICAgIHdyYXBwZXIgPSBDUkVBVEVfRE9NX09CSkVDVF9XUkFQUEVSKGV4ZWMsIGdsb2JhbE9iamVj
dCwgUG9wU3RhdGVFdmVudCwgZXZlbnQpOwogICAgIGVsc2UgaWYgKGV2ZW50LT5pc0N1c3RvbUV2
ZW50KCkpCmRpZmYgLS1naXQgYS9XZWJDb3JlL2JpbmRpbmdzL3Y4L2N1c3RvbS9WOEV2ZW50Q3Vz
dG9tLmNwcCBiL1dlYkNvcmUvYmluZGluZ3MvdjgvY3VzdG9tL1Y4RXZlbnRDdXN0b20uY3BwCmlu
ZGV4IGUwYmIwMmJlZmNkZDA4NWJkZjQwYmVkZGY1N2YwM2ZkY2IxODI1YWYuLmY5NmJhN2EzOGUz
MzFjZGFlNGNkNWJhOWI0ZDIxY2I5OWYzZDI0MTQgMTAwNjQ0Ci0tLSBhL1dlYkNvcmUvYmluZGlu
Z3MvdjgvY3VzdG9tL1Y4RXZlbnRDdXN0b20uY3BwCisrKyBiL1dlYkNvcmUvYmluZGluZ3Mvdjgv
Y3VzdG9tL1Y4RXZlbnRDdXN0b20uY3BwCkBAIC00Myw2ICs0Myw3IEBACiAjaW5jbHVkZSAiVjhE
ZXZpY2VNb3Rpb25FdmVudC5oIgogI2luY2x1ZGUgIlY4RGV2aWNlT3JpZW50YXRpb25FdmVudC5o
IgogI2luY2x1ZGUgIlY4RXJyb3JFdmVudC5oIgorI2luY2x1ZGUgIlY4SGFzaENoYW5nZUV2ZW50
LmgiCiAjaW5jbHVkZSAiVjhJREJFcnJvckV2ZW50LmgiCiAjaW5jbHVkZSAiVjhJREJTdWNjZXNz
RXZlbnQuaCIKICNpbmNsdWRlICJWOEtleWJvYXJkRXZlbnQuaCIKQEAgLTEyMCw2ICsxMjEsOCBA
QCB2ODo6SGFuZGxlPHY4OjpWYWx1ZT4gdG9WOChFdmVudCogaW1wbCkKICNlbmRpZgogICAgICAg
ICByZXR1cm4gdG9WOChzdGF0aWNfY2FzdDxVSUV2ZW50Kj4oaW1wbCkpOwogICAgIH0KKyAgICBp
ZiAoaW1wbC0+aXNIYXNoQ2hhbmdlRXZlbnQoKSkKKyAgICAgICAgcmV0dXJuIHRvVjgoc3RhdGlj
X2Nhc3Q8SGFzaENoYW5nZUV2ZW50Kj4oaW1wbCkpOwogICAgIGlmIChpbXBsLT5pc011dGF0aW9u
RXZlbnQoKSkKICAgICAgICAgcmV0dXJuIHRvVjgoc3RhdGljX2Nhc3Q8TXV0YXRpb25FdmVudCo+
KGltcGwpKTsKICAgICBpZiAoaW1wbC0+aXNPdmVyZmxvd0V2ZW50KCkpCmRpZmYgLS1naXQgYS9X
ZWJDb3JlL2RvbS9Eb2N1bWVudC5jcHAgYi9XZWJDb3JlL2RvbS9Eb2N1bWVudC5jcHAKaW5kZXgg
YmEwMmRlY2VmYjU1ZWY2NTFhY2VhYmZlNGZkZmU2M2E2YWVjNmZlNi4uYjQ1MTE3YWNmNzkyMzk3
YjE4OWY1YTg2YzExZTRhZWY0YjkzNTJmYiAxMDA2NDQKLS0tIGEvV2ViQ29yZS9kb20vRG9jdW1l
bnQuY3BwCisrKyBiL1dlYkNvcmUvZG9tL0RvY3VtZW50LmNwcApAQCAtNjQsNiArNjQsNyBAQAog
I2luY2x1ZGUgIkZyYW1lTG9hZGVyLmgiCiAjaW5jbHVkZSAiRnJhbWVUcmVlLmgiCiAjaW5jbHVk
ZSAiRnJhbWVWaWV3LmgiCisjaW5jbHVkZSAiSGFzaENoYW5nZUV2ZW50LmgiCiAjaW5jbHVkZSAi
SFRNTEFsbENvbGxlY3Rpb24uaCIKICNpbmNsdWRlICJIVE1MQW5jaG9yRWxlbWVudC5oIgogI2lu
Y2x1ZGUgIkhUTUxCb2R5RWxlbWVudC5oIgpAQCAtNDY1MiwxMSArNDY1Myw5IEBAIHZvaWQgRG9j
dW1lbnQ6OmVucXVldWVQYWdlc2hvd0V2ZW50KFBhZ2VzaG93RXZlbnRQZXJzaXN0ZW5jZSBwZXJz
aXN0ZWQpCiAgICAgZGlzcGF0Y2hXaW5kb3dFdmVudChQYWdlVHJhbnNpdGlvbkV2ZW50OjpjcmVh
dGUoZXZlbnROYW1lcygpLnBhZ2VzaG93RXZlbnQsIHBlcnNpc3RlZCksIHRoaXMpOwogfQogCi12
b2lkIERvY3VtZW50OjplbnF1ZXVlSGFzaGNoYW5nZUV2ZW50KGNvbnN0IFN0cmluZyYgLypvbGRV
UkwqLywgY29uc3QgU3RyaW5nJiAvKm5ld1VSTCovKQordm9pZCBEb2N1bWVudDo6ZW5xdWV1ZUhh
c2hjaGFuZ2VFdmVudChjb25zdCBTdHJpbmcmIG9sZFVSTCwgY29uc3QgU3RyaW5nJiBuZXdVUkwp
CiB7Ci0gICAgLy8gRklYTUU6IGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9p
ZD0zNjMzNSBIYXNoY2hhbmdlIGV2ZW50IGlzIG5vdyBpdHMgb3duIGludGVyZmFjZSBhbmQgdGFr
ZXMgdHdvCi0gICAgLy8gICBVUkwgYXJndW1lbnRzIHdoaWNoIHdlIG5lZWQgdG8gcGFzcyBpbiBo
ZXJlLgotICAgIGVucXVldWVFdmVudChFdmVudDo6Y3JlYXRlKGV2ZW50TmFtZXMoKS5oYXNoY2hh
bmdlRXZlbnQsIGZhbHNlLCBmYWxzZSkpOworICAgIGVucXVldWVFdmVudChIYXNoQ2hhbmdlRXZl
bnQ6OmNyZWF0ZShvbGRVUkwsIG5ld1VSTCkpOwogfQogCiB2b2lkIERvY3VtZW50OjplbnF1ZXVl
UG9wc3RhdGVFdmVudChQYXNzUmVmUHRyPFNlcmlhbGl6ZWRTY3JpcHRWYWx1ZT4gc3RhdGVPYmpl
Y3QpCmRpZmYgLS1naXQgYS9XZWJDb3JlL2RvbS9FdmVudC5jcHAgYi9XZWJDb3JlL2RvbS9FdmVu
dC5jcHAKaW5kZXggYzc2Zjk1MTIwZWMwOTQxMDZjMWUxZDFjMDg2NGEyMmY2Y2YyOTg1Ny4uYmI0
MDRmYTI1Yzk0YTZlMTVjMTk2ZWVjYzgyYTkwNTk3MDFmZmFkMCAxMDA2NDQKLS0tIGEvV2ViQ29y
ZS9kb20vRXZlbnQuY3BwCisrKyBiL1dlYkNvcmUvZG9tL0V2ZW50LmNwcApAQCAtMTcyLDYgKzE3
MiwxMSBAQCBib29sIEV2ZW50Ojppc0JlZm9yZUxvYWRFdmVudCgpIGNvbnN0CiAgICAgcmV0dXJu
IGZhbHNlOwogfQogCitib29sIEV2ZW50Ojppc0hhc2hDaGFuZ2VFdmVudCgpIGNvbnN0Cit7Cisg
ICAgcmV0dXJuIGZhbHNlOworfQorCiAjaWYgRU5BQkxFKFNWRykKIGJvb2wgRXZlbnQ6OmlzU1ZH
Wm9vbUV2ZW50KCkgY29uc3QKIHsKZGlmZiAtLWdpdCBhL1dlYkNvcmUvZG9tL0V2ZW50LmggYi9X
ZWJDb3JlL2RvbS9FdmVudC5oCmluZGV4IGI5OTIyMzc4NmZlN2VhMGE5MjQ5NzIxZjY1NzJkMjFl
OTAzZTQ1ODYuLjJhMDBlZWUxNWZjNTQyOWVhYjA2M2VkYTg2ZmNlMmE5NzU1Mzg4YjQgMTAwNjQ0
Ci0tLSBhL1dlYkNvcmUvZG9tL0V2ZW50LmgKKysrIGIvV2ViQ29yZS9kb20vRXZlbnQuaApAQCAt
MTIzLDYgKzEyMyw3IEBAIG5hbWVzcGFjZSBXZWJDb3JlIHsKICAgICAgICAgdmlydHVhbCBib29s
IGlzV2ViS2l0QW5pbWF0aW9uRXZlbnQoKSBjb25zdDsKICAgICAgICAgdmlydHVhbCBib29sIGlz
V2ViS2l0VHJhbnNpdGlvbkV2ZW50KCkgY29uc3Q7CiAgICAgICAgIHZpcnR1YWwgYm9vbCBpc0Jl
Zm9yZUxvYWRFdmVudCgpIGNvbnN0OworICAgICAgICB2aXJ0dWFsIGJvb2wgaXNIYXNoQ2hhbmdl
RXZlbnQoKSBjb25zdDsKICNpZiBFTkFCTEUoU1ZHKQogICAgICAgICB2aXJ0dWFsIGJvb2wgaXNT
Vkdab29tRXZlbnQoKSBjb25zdDsKICNlbmRpZgpkaWZmIC0tZ2l0IGEvV2ViQ29yZS9kb20vSGFz
aENoYW5nZUV2ZW50LmggYi9XZWJDb3JlL2RvbS9IYXNoQ2hhbmdlRXZlbnQuaApuZXcgZmlsZSBt
b2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
Li5mMWZhNmFmYmY5ZTJjNWY3YTNjNzdjMWI4MDU1ZTIyZDk1YzY1YWJmCi0tLSAvZGV2L251bGwK
KysrIGIvV2ViQ29yZS9kb20vSGFzaENoYW5nZUV2ZW50LmgKQEAgLTAsMCArMSw2NSBAQAorLyoK
KyAqIENvcHlyaWdodCAoQykgMjAxMCBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisg
KgorICogVGhpcyBsaWJyYXJ5IGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRl
IGl0IGFuZC9vcgorICogbW9kaWZ5IGl0IHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05VIExpYnJh
cnkgR2VuZXJhbCBQdWJsaWMKKyAqIExpY2Vuc2UgYXMgcHVibGlzaGVkIGJ5IHRoZSBGcmVlIFNv
ZnR3YXJlIEZvdW5kYXRpb247IGVpdGhlcgorICogdmVyc2lvbiAyIG9mIHRoZSBMaWNlbnNlLCBv
ciAoYXQgeW91ciBvcHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLgorICoKKyAqIFRoaXMgbGlicmFy
eSBpcyBkaXN0cmlidXRlZCBpbiB0aGUgaG9wZSB0aGF0IGl0IHdpbGwgYmUgdXNlZnVsLAorICog
YnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFu
dHkgb2YKKyAqIE1FUkNIQU5UQUJJTElUWSBvciBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVS
UE9TRS4gIFNlZSB0aGUgR05VCisgKiBMaWJyYXJ5IEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9y
IG1vcmUgZGV0YWlscy4KKyAqCisgKiBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9m
IHRoZSBHTlUgTGlicmFyeSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlCisgKiBhbG9uZyB3aXRoIHRo
aXMgbGlicmFyeTsgc2VlIHRoZSBmaWxlIENPUFlJTkcuTElCLiAgSWYgbm90LCB3cml0ZSB0bwor
ICogdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbiwgSW5jLiwgNTEgRnJhbmtsaW4gU3RyZWV0
LCBGaWZ0aCBGbG9vciwKKyAqIEJvc3RvbiwgTUEgMDIxMTAtMTMwMSwgVVNBLgorICoKKyAqLwor
CisjaWZuZGVmIEhhc2hDaGFuZ2VFdmVudF9oCisjZGVmaW5lIEhhc2hDaGFuZ2VFdmVudF9oCisK
KyNpbmNsdWRlICJFdmVudC5oIgorI2luY2x1ZGUgIkV2ZW50TmFtZXMuaCIKKworbmFtZXNwYWNl
IFdlYkNvcmUgeworCitjbGFzcyBIYXNoQ2hhbmdlRXZlbnQgOiBwdWJsaWMgRXZlbnQgeworcHVi
bGljOgorICAgIHZpcnR1YWwgYm9vbCBpc0hhc2hDaGFuZ2VFdmVudCgpIGNvbnN0IHsgcmV0dXJu
IHRydWU7IH0KKworICAgIHN0YXRpYyBQYXNzUmVmUHRyPEhhc2hDaGFuZ2VFdmVudD4gY3JlYXRl
KGNvbnN0IFN0cmluZyYgb2xkVVJMLCBjb25zdCBTdHJpbmcmIG5ld1VSTCkKKyAgICB7CisgICAg
ICAgIHJldHVybiBhZG9wdFJlZihuZXcgSGFzaENoYW5nZUV2ZW50KG9sZFVSTCwgbmV3VVJMKSk7
CisgICAgfQorCisgICAgdm9pZCBpbml0SGFzaENoYW5nZUV2ZW50KGNvbnN0IEF0b21pY1N0cmlu
ZyYgZXZlbnRUeXBlLCBib29sIGNhbkJ1YmJsZSwgYm9vbCBjYW5jZWxhYmxlLCBjb25zdCBTdHJp
bmcmIG9sZFVSTCwgY29uc3QgU3RyaW5nJiBuZXdVUkwpCisgICAgeworICAgICAgICBpZiAoZGlz
cGF0Y2hlZCgpKQorICAgICAgICAgICAgcmV0dXJuOworCisgICAgICAgIGluaXRFdmVudChldmVu
dFR5cGUsIGNhbkJ1YmJsZSwgY2FuY2VsYWJsZSk7CisKKyAgICAgICAgbV9vbGRVUkwgPSBvbGRV
Ukw7CisgICAgICAgIG1fbmV3VVJMID0gbmV3VVJMOworICAgIH0KKworICAgIGNvbnN0IFN0cmlu
ZyYgb2xkVVJMKCkgY29uc3QgeyByZXR1cm4gbV9vbGRVUkw7IH0KKyAgICBjb25zdCBTdHJpbmcm
IG5ld1VSTCgpIGNvbnN0IHsgcmV0dXJuIG1fbmV3VVJMOyB9CisKK3ByaXZhdGU6CisgICAgSGFz
aENoYW5nZUV2ZW50KGNvbnN0IFN0cmluZyYgb2xkVVJMLCBjb25zdCBTdHJpbmcmIG5ld1VSTCkK
KyAgICAgICAgOiBFdmVudChldmVudE5hbWVzKCkuaGFzaGNoYW5nZUV2ZW50LCBmYWxzZSwgZmFs
c2UpCisgICAgICAgICwgbV9vbGRVUkwob2xkVVJMKQorICAgICAgICAsIG1fbmV3VVJMKG5ld1VS
TCkKKyAgICB7fQorCisgICAgU3RyaW5nIG1fb2xkVVJMOworICAgIFN0cmluZyBtX25ld1VSTDsK
K307CisKK30gLy8gbmFtZXNwYWNlIFdlYkNvcmUKKworI2VuZGlmIC8vIEhhc2hDaGFuZ2VFdmVu
dF9oCmRpZmYgLS1naXQgYS9XZWJDb3JlL2RvbS9IYXNoQ2hhbmdlRXZlbnQuaWRsIGIvV2ViQ29y
ZS9kb20vSGFzaENoYW5nZUV2ZW50LmlkbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi42MzA3M2M0YjJmMGE4OTZhZWQ1
M2NlOThlNzQwZWQwNjU2M2IyYTIxCi0tLSAvZGV2L251bGwKKysrIGIvV2ViQ29yZS9kb20vSGFz
aENoYW5nZUV2ZW50LmlkbApAQCAtMCwwICsxLDM1IEBACisvKgorICogQ29weXJpZ2h0IChDKSAy
MDEwIEFwcGxlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAqCisgKiBUaGlzIGxpYnJhcnkg
aXMgZnJlZSBzb2Z0d2FyZTsgeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29yCisgKiBtb2Rp
ZnkgaXQgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUgTGlicmFyeSBHZW5lcmFsIFB1YmxpYwor
ICogTGljZW5zZSBhcyBwdWJsaXNoZWQgYnkgdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbjsg
ZWl0aGVyCisgKiB2ZXJzaW9uIDIgb2YgdGhlIExpY2Vuc2UsIG9yIChhdCB5b3VyIG9wdGlvbikg
YW55IGxhdGVyIHZlcnNpb24uCisgKgorICogVGhpcyBsaWJyYXJ5IGlzIGRpc3RyaWJ1dGVkIGlu
IHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCisgKiBidXQgV0lUSE9VVCBBTlkgV0FS
UkFOVFk7IHdpdGhvdXQgZXZlbiB0aGUgaW1wbGllZCB3YXJyYW50eSBvZgorICogTUVSQ0hBTlRB
QklMSVRZIG9yIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFLiAgU2VlIHRoZSBHTlUK
KyAqIExpYnJhcnkgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBmb3IgbW9yZSBkZXRhaWxzLgorICoK
KyAqIFlvdSBzaG91bGQgaGF2ZSByZWNlaXZlZCBhIGNvcHkgb2YgdGhlIEdOVSBMaWJyYXJ5IEdl
bmVyYWwgUHVibGljIExpY2Vuc2UKKyAqIGFsb25nIHdpdGggdGhpcyBsaWJyYXJ5OyBzZWUgdGhl
IGZpbGUgQ09QWUlORy5MSUIuICBJZiBub3QsIHdyaXRlIHRvCisgKiB0aGUgRnJlZSBTb2Z0d2Fy
ZSBGb3VuZGF0aW9uLCBJbmMuLCA1MSBGcmFua2xpbiBTdHJlZXQsIEZpZnRoIEZsb29yLAorICog
Qm9zdG9uLCBNQSAwMjExMC0xMzAxLCBVU0EuCisgKi8KKworbW9kdWxlIGV2ZW50cyB7CisKKyAg
ICAvLyBJbnRyb2R1Y2VkIGluIGh0dHA6Ly93d3cud2hhdHdnLm9yZy9zcGVjcy93ZWItYXBwcy9j
dXJyZW50LXdvcmsvbXVsdGlwYWdlL2hpc3RvcnkuaHRtbCNldmVudC1oYXNoY2hhbmdlCisgICAg
aW50ZXJmYWNlIFsKKyAgICAgICAgR2VuZXJhdGVDb25zdHJ1Y3RvcgorICAgIF0gSGFzaENoYW5n
ZUV2ZW50IDogRXZlbnQgeworICAgICAgICB2b2lkIGluaXRIYXNoQ2hhbmdlRXZlbnQoaW4gRE9N
U3RyaW5nIHR5cGUsIAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaW4gYm9vbGVh
biBjYW5CdWJibGUsIAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaW4gYm9vbGVh
biBjYW5jZWxhYmxlLCAKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGluIERPTVN0
cmluZyBvbGRVUkwsIAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaW4gRE9NU3Ry
aW5nIG5ld1VSTCk7IAorICAgICAgICByZWFkb25seSBhdHRyaWJ1dGUgRE9NU3RyaW5nIG9sZFVS
TDsKKyAgICAgICAgcmVhZG9ubHkgYXR0cmlidXRlIERPTVN0cmluZyBuZXdVUkw7CisgICAgfTsK
KworfQpkaWZmIC0tZ2l0IGEvV2ViQ29yZS9wYWdlL0RPTVdpbmRvdy5pZGwgYi9XZWJDb3JlL3Bh
Z2UvRE9NV2luZG93LmlkbAppbmRleCA3MDJlZGNkNzYyNGJlN2I5ZDE4YTc5MzI5NzYxMmM5NWY3
NTIzYTI5Li4wZDNhZDliMDJiYjgwMDQ3MDBiNWM1MjIxOTAwMWNiODdkMmYyYTdjIDEwMDY0NAot
LS0gYS9XZWJDb3JlL3BhZ2UvRE9NV2luZG93LmlkbAorKysgYi9XZWJDb3JlL3BhZ2UvRE9NV2lu
ZG93LmlkbApAQCAtNDk1LDYgKzQ5NSw3IEBAIG1vZHVsZSB3aW5kb3cgewogCiAgICAgICAgIGF0
dHJpYnV0ZSBFdmVudENvbnN0cnVjdG9yIEV2ZW50OwogICAgICAgICBhdHRyaWJ1dGUgQmVmb3Jl
TG9hZEV2ZW50Q29uc3RydWN0b3IgQmVmb3JlTG9hZEV2ZW50OworICAgICAgICBhdHRyaWJ1dGUg
SGFzaENoYW5nZUV2ZW50Q29uc3RydWN0b3IgSGFzaENoYW5nZUV2ZW50OwogICAgICAgICBhdHRy
aWJ1dGUgS2V5Ym9hcmRFdmVudENvbnN0cnVjdG9yIEtleWJvYXJkRXZlbnQ7CiAgICAgICAgIGF0
dHJpYnV0ZSBNb3VzZUV2ZW50Q29uc3RydWN0b3IgTW91c2VFdmVudDsKICAgICAgICAgYXR0cmli
dXRlIE11dGF0aW9uRXZlbnRDb25zdHJ1Y3RvciBNdXRhdGlvbkV2ZW50Owo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>66996</attachid>
            <date>2010-09-08 22:20:52 -0700</date>
            <delta_ts>2010-09-13 17:20:57 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-36335-20100908222051.patch</filename>
            <type>text/plain</type>
            <size>33502</size>
            <attacher name="Mihai Parparita">mihaip</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL0NoYW5nZUxvZyBiL0xheW91dFRlc3RzL0NoYW5nZUxv
ZwppbmRleCAwMjVkOTE2MGMwNzdkZGJkYTAyNzAwOTk0ZTE4OWM5ZDliYmNkZDFjLi4xMDUyOTY3
ZTFhNTA1N2YxYjE4YTNkZjMxYjk2OWZiMzc3ZDdkMWU3IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0
cy9DaGFuZ2VMb2cKKysrIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMjUgQEAK
KzIwMTAtMDktMDggIE1paGFpIFBhcnBhcml0YSAgPG1paGFpcEBjaHJvbWl1bS5vcmc+CisKKyAg
ICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgSGFzaGNoYW5nZSBl
dmVudCBpcyBubyBsb25nZXIgYSBzaW1wbGUgZXZlbnQsIG5lZWRzIHRvIGJlIGl0cyBvd24gaW50
ZXJmYWNlCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0z
NjMzNQorICAgICAgICAKKyAgICAgICAgQWRkIGV4cGxpY2l0IHRlc3QgZm9yIG5ld1VSTCBhbmQg
b2xkVVJMIHByb3BlcnRpZXMgb2YgaGFzaGNoYW5nZSBldmVudHMuCisgICAgICAgIEFkZCBIYXNo
Q2hhbmdlRXZlbnQgdG8gZXhwZWN0ZWQgZ2xvYmFsIG9iamVjdHMuCisgICAgICAgIFVwZGF0ZSBz
dGF0ZW9iamVjdHMgdGVzdHMgdG8gYWxzbyBjaGVjayBuZXdVUkwgb24gdGhlIGhhc2hjaGFuZ2Ug
ZXZlbnQuCisKKyAgICAgICAgVGhlIG9yaWdpbmFsIHZlcnNpb24gb2YgdGhpcyBwYXRjaCB3YXMg
d3JpdHRlbiBieQorICAgICAgICBTdGV2ZW4gTGFpIDxzM2xhbmNlQGhvdG1haWwuY29tPi4KKwor
ICAgICAgICAqIGZhc3QvZG9tL1dpbmRvdy93aW5kb3ctcHJvcGVydGllcy1leHBlY3RlZC50eHQ6
CisgICAgICAgICogZmFzdC9kb20vcHJvdG90eXBlLWluaGVyaXRhbmNlLWV4cGVjdGVkLnR4dDoK
KyAgICAgICAgKiBmYXN0L2pzL2dsb2JhbC1jb25zdHJ1Y3RvcnMtZXhwZWN0ZWQudHh0OgorICAg
ICAgICAqIGZhc3QvbG9hZGVyL2hhc2hjaGFuZ2UtZXZlbnQtcHJvcGVydGllcy1leHBlY3RlZC50
eHQ6IEFkZGVkLgorICAgICAgICAqIGZhc3QvbG9hZGVyL2hhc2hjaGFuZ2UtZXZlbnQtcHJvcGVy
dGllcy5odG1sOiBBZGRlZC4KKyAgICAgICAgKiBmYXN0L2xvYWRlci9zdGF0ZW9iamVjdHMvZG9j
dW1lbnQtZGVzdHJveWVkLW5hdmlnYXRlLWJhY2std2l0aC1mcmFnbWVudC1zY3JvbGwuaHRtbDoK
KyAgICAgICAgKiBmYXN0L2xvYWRlci9zdGF0ZW9iamVjdHMvcHVzaHN0YXRlLXdpdGgtZnJhZ21l
bnQtdXJscy1hbmQtaGFzaGNoYW5nZS5odG1sOgorCiAyMDEwLTA5LTA4ICBNT1JJVEEgSGFqaW1l
IDxtb3JyaXRhQGdvb2dsZS5jb20+CiAKICAgICAgICAgVW5yZXZpZXdlZCwgQWRkZWQgMSB0ZXN0
IGZhaWx1cmVzIG9uIFdpbiB0byB0ZXN0X2V4cGVjdGF0aW9ucy50eHQKZGlmZiAtLWdpdCBhL0xh
eW91dFRlc3RzL2Zhc3QvZG9tL1dpbmRvdy93aW5kb3ctcHJvcGVydGllcy1leHBlY3RlZC50eHQg
Yi9MYXlvdXRUZXN0cy9mYXN0L2RvbS9XaW5kb3cvd2luZG93LXByb3BlcnRpZXMtZXhwZWN0ZWQu
dHh0CmluZGV4IGU1NTNiZWNlZDhlN2RkZmQzNmE3NDFhNjNmNWZhY2ZmOWIwNThmNmUuLmQ0ODRj
ZmU1MTJiM2UzMzUwNjdhOGRjOGE0MTU0NDFhMDhlNDYyOGUgMTAwNjQ0Ci0tLSBhL0xheW91dFRl
c3RzL2Zhc3QvZG9tL1dpbmRvdy93aW5kb3ctcHJvcGVydGllcy1leHBlY3RlZC50eHQKKysrIGIv
TGF5b3V0VGVzdHMvZmFzdC9kb20vV2luZG93L3dpbmRvdy1wcm9wZXJ0aWVzLWV4cGVjdGVkLnR4
dApAQCAtMTA3OSw2ICsxMDc5LDggQEAgd2luZG93LkhUTUxVTGlzdEVsZW1lbnQgW29iamVjdCBI
VE1MVUxpc3RFbGVtZW50Q29uc3RydWN0b3JdCiB3aW5kb3cuSFRNTFVMaXN0RWxlbWVudC5wcm90
b3R5cGUgW3ByaW50ZWQgYWJvdmUgYXMgd2luZG93LkVsZW1lbnQucHJvdG90eXBlXQogd2luZG93
LkhUTUxWaWRlb0VsZW1lbnQgW29iamVjdCBIVE1MVmlkZW9FbGVtZW50Q29uc3RydWN0b3JdCiB3
aW5kb3cuSFRNTFZpZGVvRWxlbWVudC5wcm90b3R5cGUgW3ByaW50ZWQgYWJvdmUgYXMgd2luZG93
LkVsZW1lbnQucHJvdG90eXBlXQord2luZG93Lkhhc2hDaGFuZ2VFdmVudCBbb2JqZWN0IEhhc2hD
aGFuZ2VFdmVudENvbnN0cnVjdG9yXQord2luZG93Lkhhc2hDaGFuZ2VFdmVudC5wcm90b3R5cGUg
W3ByaW50ZWQgYWJvdmUgYXMgd2luZG93LkV2ZW50LnByb3RvdHlwZV0KIHdpbmRvdy5JbWFnZSBb
b2JqZWN0IEltYWdlQ29uc3RydWN0b3JdCiB3aW5kb3cuSW1hZ2UucHJvdG90eXBlIFtwcmludGVk
IGFib3ZlIGFzIHdpbmRvdy5FbGVtZW50LnByb3RvdHlwZV0KIHdpbmRvdy5JbWFnZURhdGEgW29i
amVjdCBJbWFnZURhdGFDb25zdHJ1Y3Rvcl0KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3Qv
ZG9tL3Byb3RvdHlwZS1pbmhlcml0YW5jZS1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9mYXN0
L2RvbS9wcm90b3R5cGUtaW5oZXJpdGFuY2UtZXhwZWN0ZWQudHh0CmluZGV4IDZlOGYxYzgzZTc1
Nzc4NWZkN2YxMzQ4YWRlOGU4ZTQzY2NkMDgzZjUuLjNiNDVjZTg4ZjUyMjBmMmM1NmFkZjZkMWQz
ZTY5OGI3NWNjZGU2Y2IgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2Zhc3QvZG9tL3Byb3RvdHlw
ZS1pbmhlcml0YW5jZS1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC9kb20vcHJv
dG90eXBlLWluaGVyaXRhbmNlLWV4cGVjdGVkLnR4dApAQCAtMjM5LDYgKzIzOSw4IEBAIFBBU1Mg
aW5uZXIuSFRNTFVMaXN0RWxlbWVudC5pc0lubmVyIGlzIHRydWUKIFBBU1MgaW5uZXIuSFRNTFVM
aXN0RWxlbWVudC5jb25zdHJ1Y3Rvci5pc0lubmVyIGlzIHRydWUKIFBBU1MgaW5uZXIuSFRNTFZp
ZGVvRWxlbWVudC5pc0lubmVyIGlzIHRydWUKIFBBU1MgaW5uZXIuSFRNTFZpZGVvRWxlbWVudC5j
b25zdHJ1Y3Rvci5pc0lubmVyIGlzIHRydWUKK1BBU1MgaW5uZXIuSGFzaENoYW5nZUV2ZW50Lmlz
SW5uZXIgaXMgdHJ1ZQorUEFTUyBpbm5lci5IYXNoQ2hhbmdlRXZlbnQuY29uc3RydWN0b3IuaXNJ
bm5lciBpcyB0cnVlCiBQQVNTIGlubmVyLkltYWdlLmlzSW5uZXIgaXMgdHJ1ZQogUEFTUyBpbm5l
ci5JbWFnZS5jb25zdHJ1Y3Rvci5pc0lubmVyIGlzIHRydWUKIFBBU1MgaW5uZXIuSW1hZ2VEYXRh
LmlzSW5uZXIgaXMgdHJ1ZQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9qcy9nbG9iYWwt
Y29uc3RydWN0b3JzLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2Zhc3QvanMvZ2xvYmFsLWNv
bnN0cnVjdG9ycy1leHBlY3RlZC50eHQKaW5kZXggNWFhMGQyODFmYzhhNTYwODFjZjlhODVhODFk
OTc2ZDZiN2RiN2UzNy4uOTc4OTNkYTczMTMzOGY3ZWYyMDI4NGQ5NWU5ODNmNWI1Yjk4Y2Y0ZCAx
MDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvZmFzdC9qcy9nbG9iYWwtY29uc3RydWN0b3JzLWV4cGVj
dGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9mYXN0L2pzL2dsb2JhbC1jb25zdHJ1Y3RvcnMtZXhw
ZWN0ZWQudHh0CkBAIC0xMTUsNiArMTE1LDcgQEAgUEFTUyBIVE1MVGV4dEFyZWFFbGVtZW50LnRv
U3RyaW5nKCkgaXMgJ1tvYmplY3QgSFRNTFRleHRBcmVhRWxlbWVudENvbnN0cnVjdG9yXScKIFBB
U1MgSFRNTFRpdGxlRWxlbWVudC50b1N0cmluZygpIGlzICdbb2JqZWN0IEhUTUxUaXRsZUVsZW1l
bnRDb25zdHJ1Y3Rvcl0nCiBQQVNTIEhUTUxVTGlzdEVsZW1lbnQudG9TdHJpbmcoKSBpcyAnW29i
amVjdCBIVE1MVUxpc3RFbGVtZW50Q29uc3RydWN0b3JdJwogUEFTUyBIVE1MVmlkZW9FbGVtZW50
LnRvU3RyaW5nKCkgaXMgJ1tvYmplY3QgSFRNTFZpZGVvRWxlbWVudENvbnN0cnVjdG9yXScKK1BB
U1MgSGFzaENoYW5nZUV2ZW50LnRvU3RyaW5nKCkgaXMgJ1tvYmplY3QgSGFzaENoYW5nZUV2ZW50
Q29uc3RydWN0b3JdJwogUEFTUyBJbWFnZS50b1N0cmluZygpIGlzICdbb2JqZWN0IEltYWdlQ29u
c3RydWN0b3JdJwogUEFTUyBJbWFnZURhdGEudG9TdHJpbmcoKSBpcyAnW29iamVjdCBJbWFnZURh
dGFDb25zdHJ1Y3Rvcl0nCiBQQVNTIEtleWJvYXJkRXZlbnQudG9TdHJpbmcoKSBpcyAnW29iamVj
dCBLZXlib2FyZEV2ZW50Q29uc3RydWN0b3JdJwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFz
dC9sb2FkZXIvaGFzaGNoYW5nZS1ldmVudC1wcm9wZXJ0aWVzLWV4cGVjdGVkLnR4dCBiL0xheW91
dFRlc3RzL2Zhc3QvbG9hZGVyL2hhc2hjaGFuZ2UtZXZlbnQtcHJvcGVydGllcy1leHBlY3RlZC50
eHQKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMC4uZWViNmY1MjU2ZmU3MjFkYTQ1MzFhOGJmYTgyZmVmMmU1YTk2Y2I0MQot
LS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2Zhc3QvbG9hZGVyL2hhc2hjaGFuZ2UtZXZl
bnQtcHJvcGVydGllcy1leHBlY3RlZC50eHQKQEAgLTAsMCArMSwxMiBAQAorVGVzdHMgdGhhdCBo
YXNoY2hhbmdlIGV2ZW50cyBoYXZlIHRoZSBleHBlY3RlZCBuZXdVUkwgYW5kIG9sZFVSTCBwcm9w
ZXJ0aWVzLgorCitPbiBzdWNjZXNzLCB5b3Ugd2lsbCBzZWUgYSBzZXJpZXMgb2YgIlBBU1MiIG1l
c3NhZ2VzLCBmb2xsb3dlZCBieSAiVEVTVCBDT01QTEVURSIuCisKK2hhc2hjaGFuZ2UgZmlyZWQg
d2l0aCBvbGRVUkwgaGFzaCAiW25vbmVdIiBhbmQgbmV3VVJMIGhhc2ggIiNzdGF0ZTEiCitoYXNo
Y2hhbmdlIGZpcmVkIHdpdGggb2xkVVJMIGhhc2ggIiNzdGF0ZTEiIGFuZCBuZXdVUkwgaGFzaCAi
I3N0YXRlMiIKK2hhc2hjaGFuZ2UgZmlyZWQgd2l0aCBvbGRVUkwgaGFzaCAiI3N0YXRlMiIgYW5k
IG5ld1VSTCBoYXNoICIjc3RhdGUxIgoraGFzaGNoYW5nZSBmaXJlZCB3aXRoIG9sZFVSTCBoYXNo
ICIjc3RhdGUxIiBhbmQgbmV3VVJMIGhhc2ggIltub25lXSIKK1BBU1Mgc3VjY2Vzc2Z1bGx5UGFy
c2VkIGlzIHRydWUKKworVEVTVCBDT01QTEVURQorCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9m
YXN0L2xvYWRlci9oYXNoY2hhbmdlLWV2ZW50LXByb3BlcnRpZXMuaHRtbCBiL0xheW91dFRlc3Rz
L2Zhc3QvbG9hZGVyL2hhc2hjaGFuZ2UtZXZlbnQtcHJvcGVydGllcy5odG1sCm5ldyBmaWxlIG1v
ZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAu
LjVjYTlkMDY0ZTU3MzRmMjMyZTk5Y2Y2YzkyMjJiM2E5N2IxNzI4NDUKLS0tIC9kZXYvbnVsbAor
KysgYi9MYXlvdXRUZXN0cy9mYXN0L2xvYWRlci9oYXNoY2hhbmdlLWV2ZW50LXByb3BlcnRpZXMu
aHRtbApAQCAtMCwwICsxLDUzIEBACis8IURPQ1RZUEUgaHRtbD4KKzxodG1sPgorPGJvZHk+Cis8
bGluayByZWw9InN0eWxlc2hlZXQiIGhyZWY9Ii4uL2pzL3Jlc291cmNlcy9qcy10ZXN0LXN0eWxl
LmNzcyIgdHlwZT0idGV4dC9jc3MiPgorPHNjcmlwdCBzcmM9Ii4uL2pzL3Jlc291cmNlcy9qcy10
ZXN0LXByZS5qcyI+PC9zY3JpcHQ+Cis8ZGl2IGlkPSJkZXNjcmlwdGlvbiI+PC9kaXY+Cis8cHJl
IGlkPSJjb25zb2xlIj48L3ByZT4KKzxzY3JpcHQ+CitkZXNjcmlwdGlvbignVGVzdHMgdGhhdCBo
YXNoY2hhbmdlIGV2ZW50cyBoYXZlIHRoZSBleHBlY3RlZCBuZXdVUkwgYW5kIG9sZFVSTCBwcm9w
ZXJ0aWVzLicpOworCitmdW5jdGlvbiBoYXNoT2YodXJsKQoreworICAgIHZhciBoYXNoSW5kZXgg
PSB1cmwubGFzdEluZGV4T2YoJyMnKTsKKyAgICByZXR1cm4gaGFzaEluZGV4ICE9IC0xID8gdXJs
LnN1YnN0cmluZyhoYXNoSW5kZXgpIDogJ1tub25lXSc7Cit9CisKK3ZhciBnb2luZ0ZvcndhcmQg
PSB0cnVlOworCitvbmxvYWQgPSBmdW5jdGlvbigpCit7CisgICAgc2V0VGltZW91dChmdW5jdGlv
bigpIHtsb2NhdGlvbi5ocmVmID0gJyNzdGF0ZTEnO30sIDApOworfTsKKworb25oYXNoY2hhbmdl
ID0gZnVuY3Rpb24oZXZlbnQpCit7CisgICAgZGVidWcoJ2hhc2hjaGFuZ2UgZmlyZWQgd2l0aCBv
bGRVUkwgaGFzaCAiJyArIGhhc2hPZihldmVudC5vbGRVUkwpICsgJyIgYW5kIG5ld1VSTCBoYXNo
ICInICsgaGFzaE9mKGV2ZW50Lm5ld1VSTCkgKyAnIicpOworICAgIAorICAgIHN3aXRjaCAoaGFz
aE9mKGV2ZW50Lm5ld1VSTCkpIHsKKyAgICAgICAgY2FzZSAnI3N0YXRlMSc6CisgICAgICAgICAg
ICBpZiAoZ29pbmdGb3J3YXJkKQorICAgICAgICAgICAgICAgIGxvY2F0aW9uLmhyZWYgPSAnI3N0
YXRlMic7CisgICAgICAgICAgICBlbHNlCisgICAgICAgICAgICAgICAgaGlzdG9yeS5iYWNrKCk7
CisgICAgICAgICAgICBicmVhazsKKyAgICAgICAgY2FzZSAnI3N0YXRlMic6CisgICAgICAgICAg
ICBpZiAoZ29pbmdGb3J3YXJkKSB7CisgICAgICAgICAgICAgICAgZ29pbmdGb3J3YXJkID0gZmFs
c2U7CisgICAgICAgICAgICAgICAgaGlzdG9yeS5iYWNrKCk7CisgICAgICAgICAgICB9IGVsc2Ug
eworICAgICAgICAgICAgICAgIHRlc3RGYWlsZWQoJ3Nob3VsZCBhbHdheXMgYmUgZ29pbmcgZm9y
d2FyZCBhdCAjc3RhdGUyJyk7CisgICAgICAgICAgICB9CisgICAgICAgICAgICBicmVhazsKKyAg
ICAgICAgY2FzZSAnW25vbmVdJzoKKyAgICAgICAgICAgIGZpbmlzaEpTVGVzdCgpOworICAgICAg
ICAgICAgYnJlYWs7CisgICAgfQorfTsKKwordmFyIHN1Y2Nlc3NmdWxseVBhcnNlZCA9IHRydWU7
Cit2YXIganNUZXN0SXNBc3luYyA9IHRydWU7Cis8L3NjcmlwdD4KKzxzY3JpcHQgc3JjPSIuLi9q
cy9yZXNvdXJjZXMvanMtdGVzdC1wb3N0LmpzIj48L3NjcmlwdD4KKzwvaHRtbD4KZGlmZiAtLWdp
dCBhL0xheW91dFRlc3RzL2Zhc3QvbG9hZGVyL3N0YXRlb2JqZWN0cy9kb2N1bWVudC1kZXN0cm95
ZWQtbmF2aWdhdGUtYmFjay13aXRoLWZyYWdtZW50LXNjcm9sbC5odG1sIGIvTGF5b3V0VGVzdHMv
ZmFzdC9sb2FkZXIvc3RhdGVvYmplY3RzL2RvY3VtZW50LWRlc3Ryb3llZC1uYXZpZ2F0ZS1iYWNr
LXdpdGgtZnJhZ21lbnQtc2Nyb2xsLmh0bWwKaW5kZXggZGE1MDBhYjg1YjZiMzZkMzVhZmRkZmJk
MDk3ZjQ1MWJlZjQ1ODZjZS4uMTFmMzQ4ZmUzODYyMDBlZjNlZmYzODQ1NGQzNDAwOWFhYWEwODZk
MSAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvZmFzdC9sb2FkZXIvc3RhdGVvYmplY3RzL2RvY3Vt
ZW50LWRlc3Ryb3llZC1uYXZpZ2F0ZS1iYWNrLXdpdGgtZnJhZ21lbnQtc2Nyb2xsLmh0bWwKKysr
IGIvTGF5b3V0VGVzdHMvZmFzdC9sb2FkZXIvc3RhdGVvYmplY3RzL2RvY3VtZW50LWRlc3Ryb3ll
ZC1uYXZpZ2F0ZS1iYWNrLXdpdGgtZnJhZ21lbnQtc2Nyb2xsLmh0bWwKQEAgLTksMTEgKzksMTYg
QEAgaWYgKHdpbmRvdy5sYXlvdXRUZXN0Q29udHJvbGxlcikgewogICAgIGxheW91dFRlc3RDb250
cm9sbGVyLndhaXRVbnRpbERvbmUoKTsKIH0KIAotZnVuY3Rpb24gbGFzdFBhdGhDb21wb25lbnQo
KQorZnVuY3Rpb24gbGFzdFBhdGhDb21wb25lbnQodXJsKQogewotICAgIHJldHVybiB3aW5kb3cu
bG9jYXRpb24uaHJlZi5zcGxpdCgnLycpLnBvcCgpOworICAgIHJldHVybiB1cmwuc3BsaXQoJy8n
KS5wb3AoKTsKIH0KIAorZnVuY3Rpb24gaGFzaE9mKHVybCkKK3sKKyAgICByZXR1cm4gdXJsLnN1
YnN0cmluZyh1cmwubGFzdEluZGV4T2YoJyMnKSk7Cit9CisgCiBmdW5jdGlvbiBydW5GaXJzdFN0
YWdlT2ZUZXN0KCkKIHsgICAKICAgICBoaXN0b3J5LnJlcGxhY2VTdGF0ZSgiRmlyc3RFbnRyeSIs
IG51bGwsICIjRmlyc3RFbnRyeSIpOwpAQCAtMjMsNyArMjgsNyBAQCBmdW5jdGlvbiBydW5GaXJz
dFN0YWdlT2ZUZXN0KCkKIAogZnVuY3Rpb24gcnVuU2Vjb25kU3RhZ2VPZlRlc3QoKQogewotICAg
IGFsZXJ0KCJMYXN0IHBhdGggY29tcG9uZW50IG9mIGxvY2F0aW9uIGlzICIgKyBsYXN0UGF0aENv
bXBvbmVudCgpKTsKKyAgICBhbGVydCgiTGFzdCBwYXRoIGNvbXBvbmVudCBvZiBsb2NhdGlvbiBp
cyAiICsgbGFzdFBhdGhDb21wb25lbnQobG9jYXRpb24uaHJlZikpOwogICAgIHNldFRpbWVvdXQo
Imhpc3RvcnkuYmFjaygpOyIsIDApOwogfQogCkBAIC00NSw3ICs1MCw3IEBAIGZ1bmN0aW9uIHJ1
blRlc3QoKQogCiB2YXIgYmVnYW5UZXN0ID0gZmFsc2U7CiAKLWZ1bmN0aW9uIHN0YXRlUG9wcGVk
KCkKK29ucG9wc3RhdGUgPSBmdW5jdGlvbigpCiB7CiAgICAgLy8gVGhlIGZpcnN0IHRpbWUgcG9w
c3RhdGUgZmlyZXMsIGl0J3MgYmVjYXVzZSB0aGUgcGFnZSBoYXMgZmluaXNoZWQgbG9hZGluZy4K
ICAgICAvLyBPbmx5IHRoZW4gY2FuIHdlIGJlZ2luIHRoZSB0ZXN0LgpAQCAtNzksMTAgKzg0LDEw
IEBAIGZ1bmN0aW9uIHN0YXRlUG9wcGVkKCkKICAgICB9LCAwKTsKIH0KIAotZnVuY3Rpb24gaGFz
aENoYW5nZWQoKQorb25oYXNoY2hhbmdlID0gZnVuY3Rpb24oZXZlbnQpCiB7Ci0gICAgYWxlcnQo
Imhhc2hDaGFuZ2VkIC0gTGFzdCBwYXRoIGNvbXBvbmVudCBvZiBsb2NhdGlvbiBpcyAiICsgbGFz
dFBhdGhDb21wb25lbnQoKSk7Ci0gICAgaWYgKHdpbmRvdy5sb2NhdGlvbi5oYXNoID09ICIjRmly
c3RFbnRyeVdpbGxMYXRlckJlUmVhY3RpdmF0ZWQiKSB7CisgICBhbGVydCgiaGFzaENoYW5nZWQg
LSBMYXN0IHBhdGggY29tcG9uZW50IG9mIGxvY2F0aW9uIGlzICIgKyBsYXN0UGF0aENvbXBvbmVu
dChldmVudC5uZXdVUkwpKTsKKyAgIGlmIChoYXNoT2YoZXZlbnQubmV3VVJMKSA9PSAiI0ZpcnN0
RW50cnlXaWxsTGF0ZXJCZVJlYWN0aXZhdGVkIikgewogICAgICAgICBhbGVydCgiVGVzdCBjb21w
bGV0ZSIpOwogICAgICAgICBzZXNzaW9uU3RvcmFnZS5jbGVhcigpOwogICAgICAgICBpZiAod2lu
ZG93LmxheW91dFRlc3RDb250cm9sbGVyKQpAQCAtOTEsNyArOTYsNyBAQCBmdW5jdGlvbiBoYXNo
Q2hhbmdlZCgpCiB9CiAKIDwvc2NyaXB0PgotPGJvZHkgb25wb3BzdGF0ZT0ic3RhdGVQb3BwZWQo
KTsiIG9uaGFzaGNoYW5nZT0iaGFzaENoYW5nZWQoKTsiIG9udW5sb2FkPSIvKiBkaXNhYmxlIHBh
Z2UgY2FjaGUgKi8iPgorPGJvZHkgb251bmxvYWQ9Ii8qIGRpc2FibGUgcGFnZSBjYWNoZSAqLyI+
CiA8cHJlPgogVGhpcyB0ZXN0OgogLUJ1aWxkcyB1cCBhIGxpc3Qgb2Ygc3RhdGUgb2JqZWN0IGVu
dHJpZXMgd2l0aCBmcmFnbWVudCBVUkxzLgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9s
b2FkZXIvc3RhdGVvYmplY3RzL3B1c2hzdGF0ZS13aXRoLWZyYWdtZW50LXVybHMtYW5kLWhhc2hj
aGFuZ2UuaHRtbCBiL0xheW91dFRlc3RzL2Zhc3QvbG9hZGVyL3N0YXRlb2JqZWN0cy9wdXNoc3Rh
dGUtd2l0aC1mcmFnbWVudC11cmxzLWFuZC1oYXNoY2hhbmdlLmh0bWwKaW5kZXggYTkyZDdjYzc1
MTM5ZGRhNDA5NWRhYTJmYjVmYzBhMjMzZTcxNzVmNi4uMDdjNzg0ZGQ3ODJkYjhlYzkxZWEwNTNi
MzE2YWU5OTYyNWZkMzc0OCAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvZmFzdC9sb2FkZXIvc3Rh
dGVvYmplY3RzL3B1c2hzdGF0ZS13aXRoLWZyYWdtZW50LXVybHMtYW5kLWhhc2hjaGFuZ2UuaHRt
bAorKysgYi9MYXlvdXRUZXN0cy9mYXN0L2xvYWRlci9zdGF0ZW9iamVjdHMvcHVzaHN0YXRlLXdp
dGgtZnJhZ21lbnQtdXJscy1hbmQtaGFzaGNoYW5nZS5odG1sCkBAIC0zOSw5ICszOSw5IEBAIGZ1
bmN0aW9uIHJ1blRlc3QoKQogICAgIGhpc3RvcnkuYmFjaygpOwogfQogCi1mdW5jdGlvbiBsYXN0
UGF0aENvbXBvbmVudCgpCitmdW5jdGlvbiBsYXN0UGF0aENvbXBvbmVudCh1cmwpCiB7Ci0gICAg
cmV0dXJuIHdpbmRvdy5sb2NhdGlvbi5ocmVmLnNwbGl0KCcvJykucG9wKCk7CisgICAgcmV0dXJu
IHVybC5zcGxpdCgnLycpLnBvcCgpOwogfQogCiB2YXIgYmVnYW5UZXN0ID0gZmFsc2U7CkBAIC01
NiwxNiArNTYsMTYgQEAgb25wb3BzdGF0ZSA9IGZ1bmN0aW9uKGV2ZW50KQogICAgICAgICByZXR1
cm47CiAgICAgfQogCi0gICAgbG9nKCJTdGF0ZSBwb3BwZWQgd2l0aCBldmVudCAiICsgZXZlbnQu
c3RhdGUgKyAiICh0eXBlICIgKyB0eXBlb2YgZXZlbnQuc3RhdGUgKyAiKSBhbmQgbGFzdCBwYXRo
IGNvbXBvbmVudCAiICsgbGFzdFBhdGhDb21wb25lbnQoKSk7CisgICAgbG9nKCJTdGF0ZSBwb3Bw
ZWQgd2l0aCBldmVudCAiICsgZXZlbnQuc3RhdGUgKyAiICh0eXBlICIgKyB0eXBlb2YgZXZlbnQu
c3RhdGUgKyAiKSBhbmQgbGFzdCBwYXRoIGNvbXBvbmVudCAiICsgbGFzdFBhdGhDb21wb25lbnQo
bG9jYXRpb24uaHJlZikpOwogICAgIGlmIChldmVudC5zdGF0ZSAhPSAiT3JpZ2luYWxFbnRyeSIp
CiAgICAgICAgIHNldFRpbWVvdXQoImhpc3RvcnkuYmFjaygpOyIsIDApOwogICAgIGVsc2UgaWYg
KHdpbmRvdy5sYXlvdXRUZXN0Q29udHJvbGxlcikKICAgICAgICAgbGF5b3V0VGVzdENvbnRyb2xs
ZXIubm90aWZ5RG9uZSgpOwogfQogCi1vbmhhc2hjaGFuZ2UgPSBmdW5jdGlvbigpCitvbmhhc2hj
aGFuZ2UgPSBmdW5jdGlvbihldmVudCkKIHsKLSAgICBsb2coIkhhc2ggY2hhbmdlIGZpcmVkIGFu
ZCBsYXN0IHBhdGggY29tcG9uZW50IGlzICIgKyBsYXN0UGF0aENvbXBvbmVudCgpKTsKKyAgICBs
b2coIkhhc2ggY2hhbmdlIGZpcmVkIGFuZCBsYXN0IHBhdGggY29tcG9uZW50IGlzICIgKyBsYXN0
UGF0aENvbXBvbmVudChldmVudC5uZXdVUkwpKTsKIH0KIAogPC9zY3JpcHQ+CmRpZmYgLS1naXQg
YS9XZWJDb3JlL0NNYWtlTGlzdHMudHh0IGIvV2ViQ29yZS9DTWFrZUxpc3RzLnR4dAppbmRleCBh
ZGU1ODgwM2ZkMjIyNmQwODY4MWE0ZGE0NmFjMWUxZDRiNDQ0M2QyLi5kOGI5OWY1ZjcwNWRjMjky
MTNlNmYwNzYwOTRlNTI2YzE5ZDk1MmFiIDEwMDY0NAotLS0gYS9XZWJDb3JlL0NNYWtlTGlzdHMu
dHh0CisrKyBiL1dlYkNvcmUvQ01ha2VMaXN0cy50eHQKQEAgLTE2Miw2ICsxNjIsNyBAQCBTRVQo
V2ViQ29yZV9JRExfRklMRVMKICAgICBkb20vRXJyb3JFdmVudC5pZGwKICAgICBkb20vRXZlbnRF
eGNlcHRpb24uaWRsCiAgICAgZG9tL0V2ZW50LmlkbAorICAgIGRvbS9IYXNoQ2hhbmdlRXZlbnQu
aWRsCiAgICAgZG9tL0tleWJvYXJkRXZlbnQuaWRsCiAgICAgZG9tL01lc3NhZ2VDaGFubmVsLmlk
bAogICAgIGRvbS9NZXNzYWdlRXZlbnQuaWRsCmRpZmYgLS1naXQgYS9XZWJDb3JlL0NoYW5nZUxv
ZyBiL1dlYkNvcmUvQ2hhbmdlTG9nCmluZGV4IDcyZGE2ZjE2NGZlMzE3MGEwNjcxMzMzMWRkZGI2
OTI5MGM2YzIzNDQuLmYwZTg5YzhhNmE4Mjg3YTJmY2FmOGQ0MWExZTQyOTVlMmY5OWM2Y2IgMTAw
NjQ0Ci0tLSBhL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1dlYkNvcmUvQ2hhbmdlTG9nCkBAIC0x
LDMgKzEsNDQgQEAKKzIwMTAtMDktMDggIE1paGFpIFBhcnBhcml0YSAgPG1paGFpcEBjaHJvbWl1
bS5vcmc+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAg
SGFzaGNoYW5nZSBldmVudCBpcyBubyBsb25nZXIgYSBzaW1wbGUgZXZlbnQsIG5lZWRzIHRvIGJl
IGl0cyBvd24gaW50ZXJmYWNlCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3df
YnVnLmNnaT9pZD0zNjMzNQorICAgICAgICAKKyAgICAgICAgQWRkIEhhc2hDaGFuZ2VFdmVudC5p
ZGwgYW5kIHN1cHBvcnRpbmcgZmlsZXMvY2hhbmdlcy4KKworICAgICAgICBUZXN0OiBmYXN0L2xv
YWRlci9oYXNoY2hhbmdlLWV2ZW50LXByb3BlcnRpZXMuaHRtbAorCisgICAgICAgIFRoZSBvcmln
aW5hbCB2ZXJzaW9uIG9mIHRoaXMgcGF0Y2ggd2FzIHdyaXR0ZW4gYnkKKyAgICAgICAgU3RldmVu
IExhaSA8czNsYW5jZUBob3RtYWlsLmNvbT4uCisKKyAgICAgICAgKiBDTWFrZUxpc3RzLnR4dDoK
KyAgICAgICAgKiBEZXJpdmVkU291cmNlcy5jcHA6CisgICAgICAgICogRGVyaXZlZFNvdXJjZXMu
bWFrZToKKyAgICAgICAgKiBHTlVtYWtlZmlsZS5hbToKKyAgICAgICAgKiBXZWJDb3JlLmd5cGk6
CisgICAgICAgICogV2ViQ29yZS5wcmk6CisgICAgICAgICogV2ViQ29yZS52Y3Byb2ovV2ViQ29y
ZS52Y3Byb2o6CisgICAgICAgICogV2ViQ29yZS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qOgor
ICAgICAgICAqIGJpbmRpbmdzL2pzL0pTRXZlbnRDdXN0b20uY3BwOgorICAgICAgICAoV2ViQ29y
ZTo6dG9KUyk6CisgICAgICAgICogYmluZGluZ3MvdjgvY3VzdG9tL1Y4RXZlbnRDdXN0b20uY3Bw
OgorICAgICAgICAoV2ViQ29yZTo6dG9WOCk6CisgICAgICAgICogZG9tL0RvY3VtZW50LmNwcDoK
KyAgICAgICAgKFdlYkNvcmU6OkRvY3VtZW50OjplbnF1ZXVlSGFzaGNoYW5nZUV2ZW50KToKKyAg
ICAgICAgKiBkb20vRXZlbnQuY3BwOgorICAgICAgICAoV2ViQ29yZTo6RXZlbnQ6OmlzSGFzaENo
YW5nZUV2ZW50KToKKyAgICAgICAgKiBkb20vRXZlbnQuaDoKKyAgICAgICAgKiBkb20vSGFzaENo
YW5nZUV2ZW50Lmg6IEFkZGVkLgorICAgICAgICAoV2ViQ29yZTo6SGFzaENoYW5nZUV2ZW50Ojpp
c0hhc2hDaGFuZ2VFdmVudCk6CisgICAgICAgIChXZWJDb3JlOjpIYXNoQ2hhbmdlRXZlbnQ6OmNy
ZWF0ZSk6CisgICAgICAgIChXZWJDb3JlOjpIYXNoQ2hhbmdlRXZlbnQ6OmluaXRIYXNoQ2hhbmdl
RXZlbnQpOgorICAgICAgICAoV2ViQ29yZTo6SGFzaENoYW5nZUV2ZW50OjpvbGRVUkwpOgorICAg
ICAgICAoV2ViQ29yZTo6SGFzaENoYW5nZUV2ZW50OjpuZXdVUkwpOgorICAgICAgICAoV2ViQ29y
ZTo6SGFzaENoYW5nZUV2ZW50OjpIYXNoQ2hhbmdlRXZlbnQpOgorICAgICAgICAqIGRvbS9IYXNo
Q2hhbmdlRXZlbnQuaWRsOiBBZGRlZC4KKyAgICAgICAgKiBwYWdlL0RPTVdpbmRvdy5pZGw6CisK
IDIwMTAtMDktMDggIFBldGVyIEthc3RpbmcgIDxwa2FzdGluZ0Bnb29nbGUuY29tPgogCiAgICAg
ICAgIE5vdCByZXZpZXdlZCwgbGF5b3V0IHRlc3QgZml4LgpkaWZmIC0tZ2l0IGEvV2ViQ29yZS9E
ZXJpdmVkU291cmNlcy5jcHAgYi9XZWJDb3JlL0Rlcml2ZWRTb3VyY2VzLmNwcAppbmRleCA4MWY0
MDcwMDFjOTYxYWM0YzYxNjIyYmI4MGFhMTg5NjgwZWVmZThhLi5mNjI4N2Q1M2JmODcyYWRhMTZm
MzM2YjY4YWI5OTllODYwZDJiYmNlIDEwMDY0NAotLS0gYS9XZWJDb3JlL0Rlcml2ZWRTb3VyY2Vz
LmNwcAorKysgYi9XZWJDb3JlL0Rlcml2ZWRTb3VyY2VzLmNwcApAQCAtMTE2LDYgKzExNiw3IEBA
CiAjaW5jbHVkZSAiSlNGbGFncy5jcHAiCiAjaW5jbHVkZSAiSlNHZW9sb2NhdGlvbi5jcHAiCiAj
aW5jbHVkZSAiSlNHZW9wb3NpdGlvbi5jcHAiCisjaW5jbHVkZSAiSlNIYXNoQ2hhbmdlRXZlbnQu
Y3BwIgogI2luY2x1ZGUgIkpTSGlzdG9yeS5jcHAiCiAjaW5jbHVkZSAiSlNIVE1MQWxsQ29sbGVj
dGlvbi5jcHAiCiAjaW5jbHVkZSAiSlNIVE1MQW5jaG9yRWxlbWVudC5jcHAiCmRpZmYgLS1naXQg
YS9XZWJDb3JlL0Rlcml2ZWRTb3VyY2VzLm1ha2UgYi9XZWJDb3JlL0Rlcml2ZWRTb3VyY2VzLm1h
a2UKaW5kZXggNmZkMWNkZWUxNmRkOWI1ZWRmYzQ3ZWIzY2UwYzMxYzJhMmUzM2YyOC4uYjFiMDdk
ODMwZGE3N2JjMDUyZmQyYzJhN2RjNWU4NGY4MzM0MjE2OSAxMDA2NDQKLS0tIGEvV2ViQ29yZS9E
ZXJpdmVkU291cmNlcy5tYWtlCisrKyBiL1dlYkNvcmUvRGVyaXZlZFNvdXJjZXMubWFrZQpAQCAt
MTYyLDYgKzE2Miw4IEBAIERPTV9DTEFTU0VTID0gXAogICAgIEZsYWdzIFwKICAgICBHZW9sb2Nh
dGlvbiBcCiAgICAgR2VvcG9zaXRpb24gXAorICAgIEhhc2hDaGFuZ2VFdmVudCBcCisgICAgSGlz
dG9yeSBcCiAgICAgSFRNTEFsbENvbGxlY3Rpb24gXAogICAgIEhUTUxBbmNob3JFbGVtZW50IFwK
ICAgICBIVE1MQXBwbGV0RWxlbWVudCBcCkBAIC0yMzQsNyArMjM2LDYgQEAgRE9NX0NMQVNTRVMg
PSBcCiAgICAgSFRNTFRpdGxlRWxlbWVudCBcCiAgICAgSFRNTFVMaXN0RWxlbWVudCBcCiAgICAg
SFRNTFZpZGVvRWxlbWVudCBcCi0gICAgSGlzdG9yeSBcCiAgICAgSURCQW55IFwKICAgICBJREJD
dXJzb3IgXAogICAgIElEQkRhdGFiYXNlRXJyb3IgXApkaWZmIC0tZ2l0IGEvV2ViQ29yZS9HTlVt
YWtlZmlsZS5hbSBiL1dlYkNvcmUvR05VbWFrZWZpbGUuYW0KaW5kZXggODI5NzM2NWYyZGVlOGQ5
NWMzYTRkYjM0MjBlYmQ1MWNmMmQzYjA3Ny4uMTk4N2ZiNDVlYmJmZTFjY2VjMWFiMDRiNGM4Y2Vl
Yzk0YWU3MTQwZCAxMDA2NDQKLS0tIGEvV2ViQ29yZS9HTlVtYWtlZmlsZS5hbQorKysgYi9XZWJD
b3JlL0dOVW1ha2VmaWxlLmFtCkBAIC0yNDQsNiArMjQ0LDggQEAgd2ViY29yZV9idWlsdF9zb3Vy
Y2VzICs9IFwKIAlEZXJpdmVkU291cmNlcy9XZWJDb3JlL0pTR2VvbG9jYXRpb24uaCBcCiAJRGVy
aXZlZFNvdXJjZXMvV2ViQ29yZS9KU0dlb3Bvc2l0aW9uLmNwcCBcCiAJRGVyaXZlZFNvdXJjZXMv
V2ViQ29yZS9KU0dlb3Bvc2l0aW9uLmggXAorCURlcml2ZWRTb3VyY2VzL1dlYkNvcmUvSlNIYXNo
Q2hhbmdlRXZlbnQuY3BwIFwKKwlEZXJpdmVkU291cmNlcy9XZWJDb3JlL0pTSGFzaENoYW5nZUV2
ZW50LmggXAogCURlcml2ZWRTb3VyY2VzL1dlYkNvcmUvSlNIaXN0b3J5LmNwcCBcCiAJRGVyaXZl
ZFNvdXJjZXMvV2ViQ29yZS9KU0hpc3RvcnkuaCBcCiAJRGVyaXZlZFNvdXJjZXMvV2ViQ29yZS9K
U0hUTUxBbGxDb2xsZWN0aW9uLmNwcCBcCkBAIC0xMDc4LDYgKzEwODAsNyBAQCB3ZWJjb3JlX3Nv
dXJjZXMgKz0gXAogCVdlYkNvcmUvZG9tL0ZyYWdtZW50U2NyaXB0aW5nUGVybWlzc2lvbi5oIFwK
IAlXZWJDb3JlL2RvbS9JbnB1dEVsZW1lbnQuY3BwIFwKIAlXZWJDb3JlL2RvbS9JbnB1dEVsZW1l
bnQuaCBcCisJV2ViQ29yZS9kb20vSGFzaENoYW5nZUV2ZW50LmggXAogCVdlYkNvcmUvZG9tL0tl
eWJvYXJkRXZlbnQuY3BwIFwKIAlXZWJDb3JlL2RvbS9LZXlib2FyZEV2ZW50LmggXAogCVdlYkNv
cmUvZG9tL01hcHBlZEF0dHJpYnV0ZUVudHJ5LmggXApkaWZmIC0tZ2l0IGEvV2ViQ29yZS9XZWJD
b3JlLmd5cGkgYi9XZWJDb3JlL1dlYkNvcmUuZ3lwaQppbmRleCA3ZWU3YWI0OTNkZTliMjRlM2I0
N2VjZDliNjZiNjViZDIyYmVjNDMyLi5jZTlkODdhODI5NGM5NGJiODljNmIwZWQzZmM3Y2VmODA3
ZTljMmY1IDEwMDY0NAotLS0gYS9XZWJDb3JlL1dlYkNvcmUuZ3lwaQorKysgYi9XZWJDb3JlL1dl
YkNvcmUuZ3lwaQpAQCAtNTYsNiArNTYsNyBAQAogICAgICAgICAgICAgJ2RvbS9FdmVudEV4Y2Vw
dGlvbi5pZGwnLAogICAgICAgICAgICAgJ2RvbS9FdmVudExpc3RlbmVyLmlkbCcsCiAgICAgICAg
ICAgICAnZG9tL0V2ZW50VGFyZ2V0LmlkbCcsCisgICAgICAgICAgICAnZG9tL0hhc2hDaGFuZ2VF
dmVudC5pZGwnLAogICAgICAgICAgICAgJ2RvbS9LZXlib2FyZEV2ZW50LmlkbCcsCiAgICAgICAg
ICAgICAnZG9tL01lc3NhZ2VDaGFubmVsLmlkbCcsCiAgICAgICAgICAgICAnZG9tL01lc3NhZ2VF
dmVudC5pZGwnLApAQCAtMTE5MCw2ICsxMTkxLDcgQEAKICAgICAgICAgICAgICdkb20vRnJhZ21l
bnRTY3JpcHRpbmdQZXJtaXNzaW9uLmgnLAogICAgICAgICAgICAgJ2RvbS9JbnB1dEVsZW1lbnQu
Y3BwJywKICAgICAgICAgICAgICdkb20vSW5wdXRFbGVtZW50LmgnLAorICAgICAgICAgICAgJ2Rv
bS9IYXNoQ2hhbmdlRXZlbnQuaCcsCiAgICAgICAgICAgICAnZG9tL0tleWJvYXJkRXZlbnQuY3Bw
JywKICAgICAgICAgICAgICdkb20vS2V5Ym9hcmRFdmVudC5oJywKICAgICAgICAgICAgICdkb20v
TWFwcGVkQXR0cmlidXRlRW50cnkuaCcsCmRpZmYgLS1naXQgYS9XZWJDb3JlL1dlYkNvcmUucHJp
IGIvV2ViQ29yZS9XZWJDb3JlLnByaQppbmRleCBhNGM2OWIxMGMyYTBlNjYwY2Y2ZmJmNzI2YWUz
ZjM4ZTA2Y2YyYTk3Li5jYmYzMmExZGI3YTEzZmRiNzM1MTVjNGIwOGU2ZGZmMDQ1YTA5YmFjIDEw
MDY0NAotLS0gYS9XZWJDb3JlL1dlYkNvcmUucHJpCisrKyBiL1dlYkNvcmUvV2ViQ29yZS5wcmkK
QEAgLTExOCw2ICsxMTgsNyBAQCBJRExfQklORElOR1MgKz0gXAogICAgIGRvbS9FdmVudEV4Y2Vw
dGlvbi5pZGwgXAogIyAgICBkb20vRXZlbnRMaXN0ZW5lci5pZGwgXAogIyAgICBkb20vRXZlbnRU
YXJnZXQuaWRsIFwKKyAgICBkb20vSGFzaENoYW5nZUV2ZW50LmlkbCBcCiAgICAgZG9tL0tleWJv
YXJkRXZlbnQuaWRsIFwKICAgICBkb20vTW91c2VFdmVudC5pZGwgXAogICAgIGRvbS9NZXNzYWdl
Q2hhbm5lbC5pZGwgXApkaWZmIC0tZ2l0IGEvV2ViQ29yZS9XZWJDb3JlLnZjcHJvai9XZWJDb3Jl
LnZjcHJvaiBiL1dlYkNvcmUvV2ViQ29yZS52Y3Byb2ovV2ViQ29yZS52Y3Byb2oKaW5kZXggYjU4
ODU0OGU5OGM0YTFkMmFmNzZiNjNmMTQ5NjY2NTk5OTFiMGE0Yi4uZGQ4YWUwNDc1MGExOGM1MmQ0
N2RkMTE5NjAxYTc3YTUwODYzZTBjMSAxMDA2NDQKLS0tIGEvV2ViQ29yZS9XZWJDb3JlLnZjcHJv
ai9XZWJDb3JlLnZjcHJvagorKysgYi9XZWJDb3JlL1dlYkNvcmUudmNwcm9qL1dlYkNvcmUudmNw
cm9qCkBAIC01Mjg0LDYgKzUyODQsNjIgQEAKIAkJCQlSZWxhdGl2ZVBhdGg9IiQoV2ViS2l0T3V0
cHV0RGlyKVxvYmpcJChQcm9qZWN0TmFtZSlcRGVyaXZlZFNvdXJjZXNcSlNHZW9wb3NpdGlvbi5o
Ig0KIAkJCQk+DQogCQkJPC9GaWxlPg0KKyAJCQk8RmlsZQ0KKwkJCQlSZWxhdGl2ZVBhdGg9IiQo
V2ViS2l0T3V0cHV0RGlyKVxvYmpcJChQcm9qZWN0TmFtZSlcRGVyaXZlZFNvdXJjZXNcSlNIYXNo
Q2hhbmdlRXZlbnQuY3BwIg0KKwkJCQk+DQorCQkJCTxGaWxlQ29uZmlndXJhdGlvbg0KKwkJCQkJ
TmFtZT0iRGVidWd8V2luMzIiDQorCQkJCQlFeGNsdWRlZEZyb21CdWlsZD0idHJ1ZSINCisJCQkJ
CT4NCisJCQkJCTxUb29sDQorCQkJCQkJTmFtZT0iVkNDTENvbXBpbGVyVG9vbCINCisJCQkJCS8+
DQorCQkJCTwvRmlsZUNvbmZpZ3VyYXRpb24+DQorCQkJCTxGaWxlQ29uZmlndXJhdGlvbg0KKwkJ
CQkJTmFtZT0iUmVsZWFzZXxXaW4zMiINCisJCQkJCUV4Y2x1ZGVkRnJvbUJ1aWxkPSJ0cnVlIg0K
KwkJCQkJPg0KKwkJCQkJPFRvb2wNCisJCQkJCQlOYW1lPSJWQ0NMQ29tcGlsZXJUb29sIg0KKwkJ
CQkJLz4NCisJCQkJPC9GaWxlQ29uZmlndXJhdGlvbj4NCisJCQkJPEZpbGVDb25maWd1cmF0aW9u
DQorCQkJCQlOYW1lPSJEZWJ1Z19JbnRlcm5hbHxXaW4zMiINCisJCQkJCUV4Y2x1ZGVkRnJvbUJ1
aWxkPSJ0cnVlIg0KKwkJCQkJPg0KKwkJCQkJPFRvb2wNCisJCQkJCQlOYW1lPSJWQ0NMQ29tcGls
ZXJUb29sIg0KKwkJCQkJLz4NCisJCQkJPC9GaWxlQ29uZmlndXJhdGlvbj4NCisJCQkJPEZpbGVD
b25maWd1cmF0aW9uDQorCQkJCQlOYW1lPSJEZWJ1Z19DYWlyb3xXaW4zMiINCisJCQkJCUV4Y2x1
ZGVkRnJvbUJ1aWxkPSJ0cnVlIg0KKwkJCQkJPg0KKwkJCQkJPFRvb2wNCisJCQkJCQlOYW1lPSJW
Q0NMQ29tcGlsZXJUb29sIg0KKwkJCQkJLz4NCisJCQkJPC9GaWxlQ29uZmlndXJhdGlvbj4NCisJ
CQkJPEZpbGVDb25maWd1cmF0aW9uDQorCQkJCQlOYW1lPSJSZWxlYXNlX0NhaXJvfFdpbjMyIg0K
KwkJCQkJRXhjbHVkZWRGcm9tQnVpbGQ9InRydWUiDQorCQkJCQk+DQorCQkJCQk8VG9vbA0KKwkJ
CQkJCU5hbWU9IlZDQ0xDb21waWxlclRvb2wiDQorCQkJCQkvPg0KKwkJCQk8L0ZpbGVDb25maWd1
cmF0aW9uPg0KKwkJCQk8RmlsZUNvbmZpZ3VyYXRpb24NCisJCQkJCU5hbWU9IkRlYnVnX0FsbHxX
aW4zMiINCisJCQkJCUV4Y2x1ZGVkRnJvbUJ1aWxkPSJ0cnVlIg0KKwkJCQkJPg0KKwkJCQkJPFRv
b2wNCisJCQkJCQlOYW1lPSJWQ0NMQ29tcGlsZXJUb29sIg0KKwkJCQkJLz4NCisJCQkJPC9GaWxl
Q29uZmlndXJhdGlvbj4NCisJCQk8L0ZpbGU+DQorCQkJPEZpbGUNCisJCQkJUmVsYXRpdmVQYXRo
PSIkKFdlYktpdE91dHB1dERpcilcb2JqXCQoUHJvamVjdE5hbWUpXERlcml2ZWRTb3VyY2VzXEpT
SGFzaENoYW5nZUV2ZW50LmgiDQorCQkJCT4NCisJCQk8L0ZpbGU+DQogCQkJPEZpbGUNCiAJCQkJ
UmVsYXRpdmVQYXRoPSIkKFdlYktpdE91dHB1dERpcilcb2JqXCQoUHJvamVjdE5hbWUpXERlcml2
ZWRTb3VyY2VzXEpTSGlzdG9yeS5jcHAiDQogCQkJCT4NCkBAIC0zMzg2OSw2ICszMzkyNSwxMCBA
QAogCQkJCT4NCiAJCQk8L0ZpbGU+DQogCQkJPEZpbGUNCisJCQkJUmVsYXRpdmVQYXRoPSIuLlxk
b21cSGFzaENoYW5nZUV2ZW50LmNwcCINCisJCQkJPg0KKwkJCTwvRmlsZT4NCisJCQk8RmlsZQ0K
IAkJCQlSZWxhdGl2ZVBhdGg9Ii4uXGRvbVxLZXlib2FyZEV2ZW50LmNwcCINCiAJCQkJPg0KIAkJ
CTwvRmlsZT4NCmRpZmYgLS1naXQgYS9XZWJDb3JlL1dlYkNvcmUueGNvZGVwcm9qL3Byb2plY3Qu
cGJ4cHJvaiBiL1dlYkNvcmUvV2ViQ29yZS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qCmluZGV4
IDQ2ZWJiMDk3NjQ5OWMxNjA4MmVkYmZkMDEyMjhjZTVmMzJiOTU0NTYuLmI2NmU2OTFjNThlNDA3
YWNjYTExNDQ0NzhlMGRiMTE2YzVmNmZmZTcgMTAwNjQ0Ci0tLSBhL1dlYkNvcmUvV2ViQ29yZS54
Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qCisrKyBiL1dlYkNvcmUvV2ViQ29yZS54Y29kZXByb2ov
cHJvamVjdC5wYnhwcm9qCkBAIC0xNDg5LDYgKzE0ODksOSBAQAogCQk4NDc2QzlGMDExREY2QTU4
MDA1NTVCMDIgLyogU1ZHUGF0aFBhcnNlci5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVp
bGRGaWxlOyBmaWxlUmVmID0gODQ3NkM5RUUxMURGNkE1ODAwNTU1QjAyIC8qIFNWR1BhdGhQYXJz
ZXIuaCAqLzsgfTsKIAkJODQ4MDE5NTQxMDhCQUZCMzAwQ0IyQjFGIC8qIEZFR2F1c3NpYW5CbHVy
LmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDg0ODAx
OTUyMTA4QkFGQjMwMENCMkIxRiAvKiBGRUdhdXNzaWFuQmx1ci5jcHAgKi87IH07CiAJCTg0ODAx
OTU1MTA4QkFGQjMwMENCMkIxRiAvKiBGRUdhdXNzaWFuQmx1ci5oIGluIEhlYWRlcnMgKi8gPSB7
aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gODQ4MDE5NTMxMDhCQUZCMzAwQ0IyQjFGIC8q
IEZFR2F1c3NpYW5CbHVyLmggKi87IH07CisJCTg0ODJCNzQ2MTE5OEMzNTQwMEJGQjAwNSAvKiBI
YXNoQ2hhbmdlRXZlbnQuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmls
ZVJlZiA9IDI0NDJCQkY4MTE5NEM5RDMwMEQ0OTQ2OSAvKiBIYXNoQ2hhbmdlRXZlbnQuaCAqLzsg
fTsKKwkJODQ4MkI3NTExMTk4Q0I2QjAwQkZCMDA1IC8qIEpTSGFzaENoYW5nZUV2ZW50LmNwcCBp
biBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDg0ODJCNzRGMTE5
OENCNkIwMEJGQjAwNSAvKiBKU0hhc2hDaGFuZ2VFdmVudC5jcHAgKi87IH07CisJCTg0ODJCNzUy
MTE5OENCNkIwMEJGQjAwNSAvKiBKU0hhc2hDaGFuZ2VFdmVudC5oIGluIEhlYWRlcnMgKi8gPSB7
aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gODQ4MkI3NTAxMTk4Q0I2QjAwQkZCMDA1IC8q
IEpTSGFzaENoYW5nZUV2ZW50LmggKi87IH07CiAJCTg0ODUyMjdCMTE5MDE2MkMwMDZFREM3RiAv
KiBKU1NWR0hLZXJuRWxlbWVudC5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZp
bGU7IGZpbGVSZWYgPSA4NDg1MjI3NzExOTAxNjJDMDA2RURDN0YgLyogSlNTVkdIS2VybkVsZW1l
bnQuY3BwICovOyB9OwogCQk4NDg1MjI3QzExOTAxNjJDMDA2RURDN0YgLyogSlNTVkdIS2VybkVs
ZW1lbnQuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDg0
ODUyMjc4MTE5MDE2MkMwMDZFREM3RiAvKiBKU1NWR0hLZXJuRWxlbWVudC5oICovOyB9OwogCQk4
NDg1MjI3RDExOTAxNjJDMDA2RURDN0YgLyogSlNTVkdWS2VybkVsZW1lbnQuY3BwIGluIFNvdXJj
ZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gODQ4NTIyNzkxMTkwMTYyQzAw
NkVEQzdGIC8qIEpTU1ZHVktlcm5FbGVtZW50LmNwcCAqLzsgfTsKQEAgLTY0NzQsNiArNjQ3Nyw3
IEBACiAJCTFDRkFFMzIyMEE2RDZBM0YwMDMyNTkzRCAvKiBsaWJvYmpjLmR5bGliICovID0ge2lz
YSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gImNvbXBpbGVkLm1hY2gt
by5keWxpYiI7IG5hbWUgPSBsaWJvYmpjLmR5bGliOyBwYXRoID0gL3Vzci9saWIvbGlib2JqYy5k
eWxpYjsgc291cmNlVHJlZSA9ICI8YWJzb2x1dGU+IjsgfTsKIAkJMjAwQjE5MDgxMUMyNzdEOTAw
RENDRDNBIC8qIFNjcmlwdEJyZWFrcG9pbnQuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVu
Y2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAu
Y3BwOyBwYXRoID0gU2NyaXB0QnJlYWtwb2ludC5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7
IH07CiAJCTIyOEMyODQ0MTBEODI1MDAwMDlEMEQwRSAvKiBTY3JpcHRXcmFwcGFibGUuaCAqLyA9
IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxl
VHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gU2NyaXB0V3JhcHBhYmxlLmg7IHNvdXJjZVRy
ZWUgPSAiPGdyb3VwPiI7IH07CisJCTI0NDJCQkY4MTE5NEM5RDMwMEQ0OTQ2OSAvKiBIYXNoQ2hh
bmdlRXZlbnQuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0
OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gSGFzaENoYW5nZUV2
ZW50Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTI0RjU0RUFBMTAxRkU5MTQwMDBB
RTc0MSAvKiBBcHBsaWNhdGlvbkNhY2hlSG9zdC5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVy
ZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNw
cC5jcHA7IHBhdGggPSBBcHBsaWNhdGlvbkNhY2hlSG9zdC5jcHA7IHNvdXJjZVRyZWUgPSAiPGdy
b3VwPiI7IH07CiAJCTI0RjU0RUFCMTAxRkU5MTQwMDBBRTc0MSAvKiBBcHBsaWNhdGlvbkNhY2hl
SG9zdC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxh
c3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBBcHBsaWNhdGlvbkNhY2hl
SG9zdC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQkyNTQyRjREODExNjZDMjVBMDBF
ODlBODYgLyogVXNlckdlc3R1cmVJbmRpY2F0b3IuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZl
cmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5j
cHAuY3BwOyBwYXRoID0gVXNlckdlc3R1cmVJbmRpY2F0b3IuY3BwOyBzb3VyY2VUcmVlID0gIjxn
cm91cD4iOyB9OwpAQCAtNzQyOCw2ICs3NDMyLDkgQEAKIAkJODQ3NkM5RUUxMURGNkE1ODAwNTU1
QjAyIC8qIFNWR1BhdGhQYXJzZXIuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxl
RW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0g
U1ZHUGF0aFBhcnNlci5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQk4NDgwMTk1MjEw
OEJBRkIzMDBDQjJCMUYgLyogRkVHYXVzc2lhbkJsdXIuY3BwICovID0ge2lzYSA9IFBCWEZpbGVS
ZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29k
ZS5jcHAuY3BwOyBuYW1lID0gRkVHYXVzc2lhbkJsdXIuY3BwOyBwYXRoID0gZmlsdGVycy9GRUdh
dXNzaWFuQmx1ci5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTg0ODAxOTUzMTA4
QkFGQjMwMENCMkIxRiAvKiBGRUdhdXNzaWFuQmx1ci5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZl
cmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5j
Lmg7IG5hbWUgPSBGRUdhdXNzaWFuQmx1ci5oOyBwYXRoID0gZmlsdGVycy9GRUdhdXNzaWFuQmx1
ci5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk4NDgyQjc0NDExOThDMzJFMDBCRkIw
MDUgLyogSGFzaENoYW5nZUV2ZW50LmlkbCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBm
aWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHRleHQ7IHBhdGggPSBIYXNoQ2hh
bmdlRXZlbnQuaWRsOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk4NDgyQjc0RjExOThD
QjZCMDBCRkIwMDUgLyogSlNIYXNoQ2hhbmdlRXZlbnQuY3BwICovID0ge2lzYSA9IFBCWEZpbGVS
ZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29k
ZS5jcHAuY3BwOyBwYXRoID0gSlNIYXNoQ2hhbmdlRXZlbnQuY3BwOyBzb3VyY2VUcmVlID0gIjxn
cm91cD4iOyB9OworCQk4NDgyQjc1MDExOThDQjZCMDBCRkIwMDUgLyogSlNIYXNoQ2hhbmdlRXZl
bnQuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0
S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gSlNIYXNoQ2hhbmdlRXZlbnQu
aDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJODQ4NTIyNzcxMTkwMTYyQzAwNkVEQzdG
IC8qIEpTU1ZHSEtlcm5FbGVtZW50LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBm
aWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsg
cGF0aCA9IEpTU1ZHSEtlcm5FbGVtZW50LmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsK
IAkJODQ4NTIyNzgxMTkwMTYyQzAwNkVEQzdGIC8qIEpTU1ZHSEtlcm5FbGVtZW50LmggKi8gPSB7
aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5
cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEpTU1ZHSEtlcm5FbGVtZW50Lmg7IHNvdXJjZVRy
ZWUgPSAiPGdyb3VwPiI7IH07CiAJCTg0ODUyMjc5MTE5MDE2MkMwMDZFREM3RiAvKiBKU1NWR1ZL
ZXJuRWxlbWVudC5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5n
ID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBKU1NW
R1ZLZXJuRWxlbWVudC5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CkBAIC0xNTE1Miw2
ICsxNTE1OSw4IEBACiAJCQkJMTRFODM3OEQwOUY4NUQ0RjAwQjg1QUU0IC8qIEpTRXZlbnQuaCAq
LywKIAkJCQlCQzYwRDlCRDBEMkEyNjlBMDBCOTkxOEYgLyogSlNFdmVudEV4Y2VwdGlvbi5jcHAg
Ki8sCiAJCQkJQkM2MEQ5QkUwRDJBMjY5QTAwQjk5MThGIC8qIEpTRXZlbnRFeGNlcHRpb24uaCAq
LywKKwkJCQk4NDgyQjc0RjExOThDQjZCMDBCRkIwMDUgLyogSlNIYXNoQ2hhbmdlRXZlbnQuY3Bw
ICovLAorCQkJCTg0ODJCNzUwMTE5OENCNkIwMEJGQjAwNSAvKiBKU0hhc2hDaGFuZ2VFdmVudC5o
ICovLAogCQkJCUE4NjYyOUNFMDlEQTJCNDcwMDk2MzNBNSAvKiBKU0tleWJvYXJkRXZlbnQuY3Bw
ICovLAogCQkJCUE4NjYyOUNEMDlEQTJCNDcwMDk2MzNBNSAvKiBKU0tleWJvYXJkRXZlbnQuaCAq
LywKIAkJCQlFMTA3NDAwQjBFNzdCREMwMDAzM0FGMjQgLyogSlNNZXNzYWdlQ2hhbm5lbC5jcHAg
Ki8sCkBAIC0xNzUyNyw2ICsxNzUzNiw4IEBACiAJCQkJOTM4MzFCNTYwRDA4N0Q2MDAwRTVDOTg0
IC8qIEV4Y2VwdGlvbkNvZGUuY3BwICovLAogCQkJCTkzNUZCQ0YxMDlCQTE0M0IwMEUyMzBCMSAv
KiBFeGNlcHRpb25Db2RlLmggKi8sCiAJCQkJQTg1MzEyM0MxMUQwNDcxQjAwRDREMDc3IC8qIEZy
YWdtZW50U2NyaXB0aW5nUGVybWlzc2lvbi5oICovLAorCQkJCTg0ODJCNzQ0MTE5OEMzMkUwMEJG
QjAwNSAvKiBIYXNoQ2hhbmdlRXZlbnQuaWRsICovLAorCQkJCTI0NDJCQkY4MTE5NEM5RDMwMEQ0
OTQ2OSAvKiBIYXNoQ2hhbmdlRXZlbnQuaCAqLywKIAkJCQkwODcwMEJFNjBGMDg2QzUzMDA5MTk0
MTkgLyogSW5wdXRFbGVtZW50LmNwcCAqLywKIAkJCQkwODU5MUFBNDBGMDg1QzRFMDA5QkFDQjEg
LyogSW5wdXRFbGVtZW50LmggKi8sCiAJCQkJODUwMzFCMkQwQTQ0RUZDNzAwRjk5MkUwIC8qIEtl
eWJvYXJkRXZlbnQuY3BwICovLApAQCAtMjA0NjcsNiArMjA0NzgsOCBAQAogCQkJCTk3QkM4NDlC
MTIzNzBBNEIwMDBDNjE2MSAvKiBIVE1MSW5wdXRTdHJlYW0uaCBpbiBIZWFkZXJzICovLAogCQkJ
CTk3QkM4NEE1MTIzNzBEQzgwMDBDNjE2MSAvKiBUZXh0Vmlld1NvdXJjZVBhcnNlci5oIGluIEhl
YWRlcnMgKi8sCiAJCQkJOTdCQzg0QjQxMjM3MTE4MDAwMEM2MTYxIC8qIFRleHREb2N1bWVudC5o
IGluIEhlYWRlcnMgKi8sCisJCQkJODQ4MkI3NDYxMTk4QzM1NDAwQkZCMDA1IC8qIEhhc2hDaGFu
Z2VFdmVudC5oIGluIEhlYWRlcnMgKi8sCisJCQkJODQ4MkI3NTIxMTk4Q0I2QjAwQkZCMDA1IC8q
IEpTSGFzaENoYW5nZUV2ZW50LmggaW4gSGVhZGVycyAqLywKIAkJCSk7CiAJCQlydW5Pbmx5Rm9y
RGVwbG95bWVudFBvc3Rwcm9jZXNzaW5nID0gMDsKIAkJfTsKQEAgLTIyOTM1LDYgKzIyOTQ4LDcg
QEAKIAkJCQk5N0JDODQ4MzEyMzZGRDkzMDAwQzYxNjEgLyogVGV4dERvY3VtZW50UGFyc2VyLmNw
cCBpbiBTb3VyY2VzICovLAogCQkJCTk3QkM4NEE0MTIzNzBEQzgwMDBDNjE2MSAvKiBUZXh0Vmll
d1NvdXJjZVBhcnNlci5jcHAgaW4gU291cmNlcyAqLywKIAkJCQk5N0JDODRCMzEyMzcxMTgwMDAw
QzYxNjEgLyogVGV4dERvY3VtZW50LmNwcCBpbiBTb3VyY2VzICovLAorCQkJCTg0ODJCNzUxMTE5
OENCNkIwMEJGQjAwNSAvKiBKU0hhc2hDaGFuZ2VFdmVudC5jcHAgaW4gU291cmNlcyAqLywKIAkJ
CSk7CiAJCQlydW5Pbmx5Rm9yRGVwbG95bWVudFBvc3Rwcm9jZXNzaW5nID0gMDsKIAkJfTsKZGlm
ZiAtLWdpdCBhL1dlYkNvcmUvYmluZGluZ3MvanMvSlNFdmVudEN1c3RvbS5jcHAgYi9XZWJDb3Jl
L2JpbmRpbmdzL2pzL0pTRXZlbnRDdXN0b20uY3BwCmluZGV4IDc0NzkwMjBjNzE3ZGFmNTA5NmQ2
N2I3ZTJiMTc3ZmI5NmM0NThlYzYuLmQyZTlkNjExOGE1MTRjODcyMTE2NzA5OWMyNWFjZTA1ODBh
Mzc1MTkgMTAwNjQ0Ci0tLSBhL1dlYkNvcmUvYmluZGluZ3MvanMvSlNFdmVudEN1c3RvbS5jcHAK
KysrIGIvV2ViQ29yZS9iaW5kaW5ncy9qcy9KU0V2ZW50Q3VzdG9tLmNwcApAQCAtNDIsNiArNDIs
NyBAQAogI2luY2x1ZGUgIkpTRGV2aWNlTW90aW9uRXZlbnQuaCIKICNpbmNsdWRlICJKU0Rldmlj
ZU9yaWVudGF0aW9uRXZlbnQuaCIKICNpbmNsdWRlICJKU0Vycm9yRXZlbnQuaCIKKyNpbmNsdWRl
ICJKU0hhc2hDaGFuZ2VFdmVudC5oIgogI2luY2x1ZGUgIkpTS2V5Ym9hcmRFdmVudC5oIgogI2lu
Y2x1ZGUgIkpTTWVzc2FnZUV2ZW50LmgiCiAjaW5jbHVkZSAiSlNNb3VzZUV2ZW50LmgiCkBAIC01
OCw2ICs1OSw3IEBACiAjaW5jbHVkZSAiSlNYTUxIdHRwUmVxdWVzdFByb2dyZXNzRXZlbnQuaCIK
ICNpbmNsdWRlICJCZWZvcmVMb2FkRXZlbnQuaCIKICNpbmNsdWRlICJFcnJvckV2ZW50LmgiCisj
aW5jbHVkZSAiSGFzaENoYW5nZUV2ZW50LmgiCiAjaW5jbHVkZSAiS2V5Ym9hcmRFdmVudC5oIgog
I2luY2x1ZGUgIk1lc3NhZ2VFdmVudC5oIgogI2luY2x1ZGUgIk1vdXNlRXZlbnQuaCIKQEAgLTE3
MCw2ICsxNzIsOCBAQCBKU1ZhbHVlIHRvSlMoRXhlY1N0YXRlKiBleGVjLCBKU0RPTUdsb2JhbE9i
amVjdCogZ2xvYmFsT2JqZWN0LCBFdmVudCogZXZlbnQpCiAgICAgZWxzZSBpZiAoZXZlbnQtPmlz
RXJyb3JFdmVudCgpKQogICAgICAgICB3cmFwcGVyID0gQ1JFQVRFX0RPTV9PQkpFQ1RfV1JBUFBF
UihleGVjLCBnbG9iYWxPYmplY3QsIEVycm9yRXZlbnQsIGV2ZW50KTsKICNlbmRpZgorICAgIGVs
c2UgaWYgKGV2ZW50LT5pc0hhc2hDaGFuZ2VFdmVudCgpKQorICAgICAgICB3cmFwcGVyID0gQ1JF
QVRFX0RPTV9PQkpFQ1RfV1JBUFBFUihleGVjLCBnbG9iYWxPYmplY3QsIEhhc2hDaGFuZ2VFdmVu
dCwgZXZlbnQpOwogICAgIGVsc2UgaWYgKGV2ZW50LT5pc1BvcFN0YXRlRXZlbnQoKSkKICAgICAg
ICAgd3JhcHBlciA9IENSRUFURV9ET01fT0JKRUNUX1dSQVBQRVIoZXhlYywgZ2xvYmFsT2JqZWN0
LCBQb3BTdGF0ZUV2ZW50LCBldmVudCk7CiAgICAgZWxzZSBpZiAoZXZlbnQtPmlzQ3VzdG9tRXZl
bnQoKSkKZGlmZiAtLWdpdCBhL1dlYkNvcmUvYmluZGluZ3MvdjgvY3VzdG9tL1Y4RXZlbnRDdXN0
b20uY3BwIGIvV2ViQ29yZS9iaW5kaW5ncy92OC9jdXN0b20vVjhFdmVudEN1c3RvbS5jcHAKaW5k
ZXggZTBiYjAyYmVmY2RkMDg1YmRmNDBiZWRkZjU3ZjAzZmRjYjE4MjVhZi4uZjk2YmE3YTM4ZTMz
MWNkYWU0Y2Q1YmE5YjRkMjFjYjk5ZjNkMjQxNCAxMDA2NDQKLS0tIGEvV2ViQ29yZS9iaW5kaW5n
cy92OC9jdXN0b20vVjhFdmVudEN1c3RvbS5jcHAKKysrIGIvV2ViQ29yZS9iaW5kaW5ncy92OC9j
dXN0b20vVjhFdmVudEN1c3RvbS5jcHAKQEAgLTQzLDYgKzQzLDcgQEAKICNpbmNsdWRlICJWOERl
dmljZU1vdGlvbkV2ZW50LmgiCiAjaW5jbHVkZSAiVjhEZXZpY2VPcmllbnRhdGlvbkV2ZW50Lmgi
CiAjaW5jbHVkZSAiVjhFcnJvckV2ZW50LmgiCisjaW5jbHVkZSAiVjhIYXNoQ2hhbmdlRXZlbnQu
aCIKICNpbmNsdWRlICJWOElEQkVycm9yRXZlbnQuaCIKICNpbmNsdWRlICJWOElEQlN1Y2Nlc3NF
dmVudC5oIgogI2luY2x1ZGUgIlY4S2V5Ym9hcmRFdmVudC5oIgpAQCAtMTIwLDYgKzEyMSw4IEBA
IHY4OjpIYW5kbGU8djg6OlZhbHVlPiB0b1Y4KEV2ZW50KiBpbXBsKQogI2VuZGlmCiAgICAgICAg
IHJldHVybiB0b1Y4KHN0YXRpY19jYXN0PFVJRXZlbnQqPihpbXBsKSk7CiAgICAgfQorICAgIGlm
IChpbXBsLT5pc0hhc2hDaGFuZ2VFdmVudCgpKQorICAgICAgICByZXR1cm4gdG9WOChzdGF0aWNf
Y2FzdDxIYXNoQ2hhbmdlRXZlbnQqPihpbXBsKSk7CiAgICAgaWYgKGltcGwtPmlzTXV0YXRpb25F
dmVudCgpKQogICAgICAgICByZXR1cm4gdG9WOChzdGF0aWNfY2FzdDxNdXRhdGlvbkV2ZW50Kj4o
aW1wbCkpOwogICAgIGlmIChpbXBsLT5pc092ZXJmbG93RXZlbnQoKSkKZGlmZiAtLWdpdCBhL1dl
YkNvcmUvZG9tL0RvY3VtZW50LmNwcCBiL1dlYkNvcmUvZG9tL0RvY3VtZW50LmNwcAppbmRleCBi
YTAyZGVjZWZiNTVlZjY1MWFjZWFiZmU0ZmRmZTYzYTZhZWM2ZmU2Li5iNDUxMTdhY2Y3OTIzOTdi
MTg5ZjVhODZjMTFlNGFlZjRiOTM1MmZiIDEwMDY0NAotLS0gYS9XZWJDb3JlL2RvbS9Eb2N1bWVu
dC5jcHAKKysrIGIvV2ViQ29yZS9kb20vRG9jdW1lbnQuY3BwCkBAIC02NCw2ICs2NCw3IEBACiAj
aW5jbHVkZSAiRnJhbWVMb2FkZXIuaCIKICNpbmNsdWRlICJGcmFtZVRyZWUuaCIKICNpbmNsdWRl
ICJGcmFtZVZpZXcuaCIKKyNpbmNsdWRlICJIYXNoQ2hhbmdlRXZlbnQuaCIKICNpbmNsdWRlICJI
VE1MQWxsQ29sbGVjdGlvbi5oIgogI2luY2x1ZGUgIkhUTUxBbmNob3JFbGVtZW50LmgiCiAjaW5j
bHVkZSAiSFRNTEJvZHlFbGVtZW50LmgiCkBAIC00NjUyLDExICs0NjUzLDkgQEAgdm9pZCBEb2N1
bWVudDo6ZW5xdWV1ZVBhZ2VzaG93RXZlbnQoUGFnZXNob3dFdmVudFBlcnNpc3RlbmNlIHBlcnNp
c3RlZCkKICAgICBkaXNwYXRjaFdpbmRvd0V2ZW50KFBhZ2VUcmFuc2l0aW9uRXZlbnQ6OmNyZWF0
ZShldmVudE5hbWVzKCkucGFnZXNob3dFdmVudCwgcGVyc2lzdGVkKSwgdGhpcyk7CiB9CiAKLXZv
aWQgRG9jdW1lbnQ6OmVucXVldWVIYXNoY2hhbmdlRXZlbnQoY29uc3QgU3RyaW5nJiAvKm9sZFVS
TCovLCBjb25zdCBTdHJpbmcmIC8qbmV3VVJMKi8pCit2b2lkIERvY3VtZW50OjplbnF1ZXVlSGFz
aGNoYW5nZUV2ZW50KGNvbnN0IFN0cmluZyYgb2xkVVJMLCBjb25zdCBTdHJpbmcmIG5ld1VSTCkK
IHsKLSAgICAvLyBGSVhNRTogaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lk
PTM2MzM1IEhhc2hjaGFuZ2UgZXZlbnQgaXMgbm93IGl0cyBvd24gaW50ZXJmYWNlIGFuZCB0YWtl
cyB0d28KLSAgICAvLyAgIFVSTCBhcmd1bWVudHMgd2hpY2ggd2UgbmVlZCB0byBwYXNzIGluIGhl
cmUuCi0gICAgZW5xdWV1ZUV2ZW50KEV2ZW50OjpjcmVhdGUoZXZlbnROYW1lcygpLmhhc2hjaGFu
Z2VFdmVudCwgZmFsc2UsIGZhbHNlKSk7CisgICAgZW5xdWV1ZUV2ZW50KEhhc2hDaGFuZ2VFdmVu
dDo6Y3JlYXRlKG9sZFVSTCwgbmV3VVJMKSk7CiB9CiAKIHZvaWQgRG9jdW1lbnQ6OmVucXVldWVQ
b3BzdGF0ZUV2ZW50KFBhc3NSZWZQdHI8U2VyaWFsaXplZFNjcmlwdFZhbHVlPiBzdGF0ZU9iamVj
dCkKZGlmZiAtLWdpdCBhL1dlYkNvcmUvZG9tL0V2ZW50LmNwcCBiL1dlYkNvcmUvZG9tL0V2ZW50
LmNwcAppbmRleCBjNzZmOTUxMjBlYzA5NDEwNmMxZTFkMWMwODY0YTIyZjZjZjI5ODU3Li5iYjQw
NGZhMjVjOTRhNmUxNWMxOTZlZWNjODJhOTA1OTcwMWZmYWQwIDEwMDY0NAotLS0gYS9XZWJDb3Jl
L2RvbS9FdmVudC5jcHAKKysrIGIvV2ViQ29yZS9kb20vRXZlbnQuY3BwCkBAIC0xNzIsNiArMTcy
LDExIEBAIGJvb2wgRXZlbnQ6OmlzQmVmb3JlTG9hZEV2ZW50KCkgY29uc3QKICAgICByZXR1cm4g
ZmFsc2U7CiB9CiAKK2Jvb2wgRXZlbnQ6OmlzSGFzaENoYW5nZUV2ZW50KCkgY29uc3QKK3sKKyAg
ICByZXR1cm4gZmFsc2U7Cit9CisKICNpZiBFTkFCTEUoU1ZHKQogYm9vbCBFdmVudDo6aXNTVkda
b29tRXZlbnQoKSBjb25zdAogewpkaWZmIC0tZ2l0IGEvV2ViQ29yZS9kb20vRXZlbnQuaCBiL1dl
YkNvcmUvZG9tL0V2ZW50LmgKaW5kZXggYjk5MjIzNzg2ZmU3ZWEwYTkyNDk3MjFmNjU3MmQyMWU5
MDNlNDU4Ni4uMmEwMGVlZTE1ZmM1NDI5ZWFiMDYzZWRhODZmY2UyYTk3NTUzODhiNCAxMDA2NDQK
LS0tIGEvV2ViQ29yZS9kb20vRXZlbnQuaAorKysgYi9XZWJDb3JlL2RvbS9FdmVudC5oCkBAIC0x
MjMsNiArMTIzLDcgQEAgbmFtZXNwYWNlIFdlYkNvcmUgewogICAgICAgICB2aXJ0dWFsIGJvb2wg
aXNXZWJLaXRBbmltYXRpb25FdmVudCgpIGNvbnN0OwogICAgICAgICB2aXJ0dWFsIGJvb2wgaXNX
ZWJLaXRUcmFuc2l0aW9uRXZlbnQoKSBjb25zdDsKICAgICAgICAgdmlydHVhbCBib29sIGlzQmVm
b3JlTG9hZEV2ZW50KCkgY29uc3Q7CisgICAgICAgIHZpcnR1YWwgYm9vbCBpc0hhc2hDaGFuZ2VF
dmVudCgpIGNvbnN0OwogI2lmIEVOQUJMRShTVkcpCiAgICAgICAgIHZpcnR1YWwgYm9vbCBpc1NW
R1pvb21FdmVudCgpIGNvbnN0OwogI2VuZGlmCmRpZmYgLS1naXQgYS9XZWJDb3JlL2RvbS9IYXNo
Q2hhbmdlRXZlbnQuaCBiL1dlYkNvcmUvZG9tL0hhc2hDaGFuZ2VFdmVudC5oCm5ldyBmaWxlIG1v
ZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAu
LmYxZmE2YWZiZjllMmM1ZjdhM2M3N2MxYjgwNTVlMjJkOTVjNjVhYmYKLS0tIC9kZXYvbnVsbAor
KysgYi9XZWJDb3JlL2RvbS9IYXNoQ2hhbmdlRXZlbnQuaApAQCAtMCwwICsxLDY1IEBACisvKgor
ICogQ29weXJpZ2h0IChDKSAyMDEwIEFwcGxlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAq
CisgKiBUaGlzIGxpYnJhcnkgaXMgZnJlZSBzb2Z0d2FyZTsgeW91IGNhbiByZWRpc3RyaWJ1dGUg
aXQgYW5kL29yCisgKiBtb2RpZnkgaXQgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUgTGlicmFy
eSBHZW5lcmFsIFB1YmxpYworICogTGljZW5zZSBhcyBwdWJsaXNoZWQgYnkgdGhlIEZyZWUgU29m
dHdhcmUgRm91bmRhdGlvbjsgZWl0aGVyCisgKiB2ZXJzaW9uIDIgb2YgdGhlIExpY2Vuc2UsIG9y
IChhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uCisgKgorICogVGhpcyBsaWJyYXJ5
IGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCisgKiBi
dXQgV0lUSE9VVCBBTlkgV0FSUkFOVFk7IHdpdGhvdXQgZXZlbiB0aGUgaW1wbGllZCB3YXJyYW50
eSBvZgorICogTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQ
T1NFLiAgU2VlIHRoZSBHTlUKKyAqIExpYnJhcnkgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBmb3Ig
bW9yZSBkZXRhaWxzLgorICoKKyAqIFlvdSBzaG91bGQgaGF2ZSByZWNlaXZlZCBhIGNvcHkgb2Yg
dGhlIEdOVSBMaWJyYXJ5IEdlbmVyYWwgUHVibGljIExpY2Vuc2UKKyAqIGFsb25nIHdpdGggdGhp
cyBsaWJyYXJ5OyBzZWUgdGhlIGZpbGUgQ09QWUlORy5MSUIuICBJZiBub3QsIHdyaXRlIHRvCisg
KiB0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uLCBJbmMuLCA1MSBGcmFua2xpbiBTdHJlZXQs
IEZpZnRoIEZsb29yLAorICogQm9zdG9uLCBNQSAwMjExMC0xMzAxLCBVU0EuCisgKgorICovCisK
KyNpZm5kZWYgSGFzaENoYW5nZUV2ZW50X2gKKyNkZWZpbmUgSGFzaENoYW5nZUV2ZW50X2gKKwor
I2luY2x1ZGUgIkV2ZW50LmgiCisjaW5jbHVkZSAiRXZlbnROYW1lcy5oIgorCituYW1lc3BhY2Ug
V2ViQ29yZSB7CisKK2NsYXNzIEhhc2hDaGFuZ2VFdmVudCA6IHB1YmxpYyBFdmVudCB7CitwdWJs
aWM6CisgICAgdmlydHVhbCBib29sIGlzSGFzaENoYW5nZUV2ZW50KCkgY29uc3QgeyByZXR1cm4g
dHJ1ZTsgfQorCisgICAgc3RhdGljIFBhc3NSZWZQdHI8SGFzaENoYW5nZUV2ZW50PiBjcmVhdGUo
Y29uc3QgU3RyaW5nJiBvbGRVUkwsIGNvbnN0IFN0cmluZyYgbmV3VVJMKQorICAgIHsKKyAgICAg
ICAgcmV0dXJuIGFkb3B0UmVmKG5ldyBIYXNoQ2hhbmdlRXZlbnQob2xkVVJMLCBuZXdVUkwpKTsK
KyAgICB9CisKKyAgICB2b2lkIGluaXRIYXNoQ2hhbmdlRXZlbnQoY29uc3QgQXRvbWljU3RyaW5n
JiBldmVudFR5cGUsIGJvb2wgY2FuQnViYmxlLCBib29sIGNhbmNlbGFibGUsIGNvbnN0IFN0cmlu
ZyYgb2xkVVJMLCBjb25zdCBTdHJpbmcmIG5ld1VSTCkKKyAgICB7CisgICAgICAgIGlmIChkaXNw
YXRjaGVkKCkpCisgICAgICAgICAgICByZXR1cm47CisKKyAgICAgICAgaW5pdEV2ZW50KGV2ZW50
VHlwZSwgY2FuQnViYmxlLCBjYW5jZWxhYmxlKTsKKworICAgICAgICBtX29sZFVSTCA9IG9sZFVS
TDsKKyAgICAgICAgbV9uZXdVUkwgPSBuZXdVUkw7CisgICAgfQorCisgICAgY29uc3QgU3RyaW5n
JiBvbGRVUkwoKSBjb25zdCB7IHJldHVybiBtX29sZFVSTDsgfQorICAgIGNvbnN0IFN0cmluZyYg
bmV3VVJMKCkgY29uc3QgeyByZXR1cm4gbV9uZXdVUkw7IH0KKworcHJpdmF0ZToKKyAgICBIYXNo
Q2hhbmdlRXZlbnQoY29uc3QgU3RyaW5nJiBvbGRVUkwsIGNvbnN0IFN0cmluZyYgbmV3VVJMKQor
ICAgICAgICA6IEV2ZW50KGV2ZW50TmFtZXMoKS5oYXNoY2hhbmdlRXZlbnQsIGZhbHNlLCBmYWxz
ZSkKKyAgICAgICAgLCBtX29sZFVSTChvbGRVUkwpCisgICAgICAgICwgbV9uZXdVUkwobmV3VVJM
KQorICAgIHt9CisKKyAgICBTdHJpbmcgbV9vbGRVUkw7CisgICAgU3RyaW5nIG1fbmV3VVJMOwor
fTsKKworfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQorCisjZW5kaWYgLy8gSGFzaENoYW5nZUV2ZW50
X2gKZGlmZiAtLWdpdCBhL1dlYkNvcmUvZG9tL0hhc2hDaGFuZ2VFdmVudC5pZGwgYi9XZWJDb3Jl
L2RvbS9IYXNoQ2hhbmdlRXZlbnQuaWRsCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjYzMDczYzRiMmYwYTg5NmFlZDUz
Y2U5OGU3NDBlZDA2NTYzYjJhMjEKLS0tIC9kZXYvbnVsbAorKysgYi9XZWJDb3JlL2RvbS9IYXNo
Q2hhbmdlRXZlbnQuaWRsCkBAIC0wLDAgKzEsMzUgQEAKKy8qCisgKiBDb3B5cmlnaHQgKEMpIDIw
MTAgQXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICoKKyAqIFRoaXMgbGlicmFyeSBp
cyBmcmVlIHNvZnR3YXJlOyB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IKKyAqIG1vZGlm
eSBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBMaWJyYXJ5IEdlbmVyYWwgUHVibGljCisg
KiBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieSB0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uOyBl
aXRoZXIKKyAqIHZlcnNpb24gMiBvZiB0aGUgTGljZW5zZSwgb3IgKGF0IHlvdXIgb3B0aW9uKSBh
bnkgbGF0ZXIgdmVyc2lvbi4KKyAqCisgKiBUaGlzIGxpYnJhcnkgaXMgZGlzdHJpYnV0ZWQgaW4g
dGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCwKKyAqIGJ1dCBXSVRIT1VUIEFOWSBXQVJS
QU5UWTsgd2l0aG91dCBldmVuIHRoZSBpbXBsaWVkIHdhcnJhbnR5IG9mCisgKiBNRVJDSEFOVEFC
SUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlIEdOVQor
ICogTGlicmFyeSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGZvciBtb3JlIGRldGFpbHMuCisgKgor
ICogWW91IHNob3VsZCBoYXZlIHJlY2VpdmVkIGEgY29weSBvZiB0aGUgR05VIExpYnJhcnkgR2Vu
ZXJhbCBQdWJsaWMgTGljZW5zZQorICogYWxvbmcgd2l0aCB0aGlzIGxpYnJhcnk7IHNlZSB0aGUg
ZmlsZSBDT1BZSU5HLkxJQi4gIElmIG5vdCwgd3JpdGUgdG8KKyAqIHRoZSBGcmVlIFNvZnR3YXJl
IEZvdW5kYXRpb24sIEluYy4sIDUxIEZyYW5rbGluIFN0cmVldCwgRmlmdGggRmxvb3IsCisgKiBC
b3N0b24sIE1BIDAyMTEwLTEzMDEsIFVTQS4KKyAqLworCittb2R1bGUgZXZlbnRzIHsKKworICAg
IC8vIEludHJvZHVjZWQgaW4gaHR0cDovL3d3dy53aGF0d2cub3JnL3NwZWNzL3dlYi1hcHBzL2N1
cnJlbnQtd29yay9tdWx0aXBhZ2UvaGlzdG9yeS5odG1sI2V2ZW50LWhhc2hjaGFuZ2UKKyAgICBp
bnRlcmZhY2UgWworICAgICAgICBHZW5lcmF0ZUNvbnN0cnVjdG9yCisgICAgXSBIYXNoQ2hhbmdl
RXZlbnQgOiBFdmVudCB7CisgICAgICAgIHZvaWQgaW5pdEhhc2hDaGFuZ2VFdmVudChpbiBET01T
dHJpbmcgdHlwZSwgCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpbiBib29sZWFu
IGNhbkJ1YmJsZSwgCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpbiBib29sZWFu
IGNhbmNlbGFibGUsIAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaW4gRE9NU3Ry
aW5nIG9sZFVSTCwgCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpbiBET01TdHJp
bmcgbmV3VVJMKTsgCisgICAgICAgIHJlYWRvbmx5IGF0dHJpYnV0ZSBET01TdHJpbmcgb2xkVVJM
OworICAgICAgICByZWFkb25seSBhdHRyaWJ1dGUgRE9NU3RyaW5nIG5ld1VSTDsKKyAgICB9Owor
Cit9CmRpZmYgLS1naXQgYS9XZWJDb3JlL3BhZ2UvRE9NV2luZG93LmlkbCBiL1dlYkNvcmUvcGFn
ZS9ET01XaW5kb3cuaWRsCmluZGV4IDcwMmVkY2Q3NjI0YmU3YjlkMThhNzkzMjk3NjEyYzk1Zjc1
MjNhMjkuLjBkM2FkOWIwMmJiODAwNDcwMGI1YzUyMjE5MDAxY2I4N2QyZjJhN2MgMTAwNjQ0Ci0t
LSBhL1dlYkNvcmUvcGFnZS9ET01XaW5kb3cuaWRsCisrKyBiL1dlYkNvcmUvcGFnZS9ET01XaW5k
b3cuaWRsCkBAIC00OTUsNiArNDk1LDcgQEAgbW9kdWxlIHdpbmRvdyB7CiAKICAgICAgICAgYXR0
cmlidXRlIEV2ZW50Q29uc3RydWN0b3IgRXZlbnQ7CiAgICAgICAgIGF0dHJpYnV0ZSBCZWZvcmVM
b2FkRXZlbnRDb25zdHJ1Y3RvciBCZWZvcmVMb2FkRXZlbnQ7CisgICAgICAgIGF0dHJpYnV0ZSBI
YXNoQ2hhbmdlRXZlbnRDb25zdHJ1Y3RvciBIYXNoQ2hhbmdlRXZlbnQ7CiAgICAgICAgIGF0dHJp
YnV0ZSBLZXlib2FyZEV2ZW50Q29uc3RydWN0b3IgS2V5Ym9hcmRFdmVudDsKICAgICAgICAgYXR0
cmlidXRlIE1vdXNlRXZlbnRDb25zdHJ1Y3RvciBNb3VzZUV2ZW50OwogICAgICAgICBhdHRyaWJ1
dGUgTXV0YXRpb25FdmVudENvbnN0cnVjdG9yIE11dGF0aW9uRXZlbnQ7Cg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>67492</attachid>
            <date>2010-09-13 17:21:01 -0700</date>
            <delta_ts>2010-09-20 17:01:10 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-36335-20100913172100.patch</filename>
            <type>text/plain</type>
            <size>33463</size>
            <attacher name="Mihai Parparita">mihaip</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL0NoYW5nZUxvZyBiL0xheW91dFRlc3RzL0NoYW5nZUxv
ZwppbmRleCA3NjYxYjMyNTk4YmRhYTZkMDc3OTc5Mzk5Y2I5NzE2MDQyMTQzZjJjLi42NDFhMzFk
ZjU5ODY3ZWJiZmM2MGMwOWRiYmQ1MjhmYWZiOWIxZGIyIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0
cy9DaGFuZ2VMb2cKKysrIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMjUgQEAK
KzIwMTAtMDktMTMgIE1paGFpIFBhcnBhcml0YSAgPG1paGFpcEBjaHJvbWl1bS5vcmc+CisKKyAg
ICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgSGFzaGNoYW5nZSBl
dmVudCBpcyBubyBsb25nZXIgYSBzaW1wbGUgZXZlbnQsIG5lZWRzIHRvIGJlIGl0cyBvd24gaW50
ZXJmYWNlCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0z
NjMzNQorICAgICAgICAKKyAgICAgICAgQWRkIGV4cGxpY2l0IHRlc3QgZm9yIG5ld1VSTCBhbmQg
b2xkVVJMIHByb3BlcnRpZXMgb2YgaGFzaGNoYW5nZSBldmVudHMuCisgICAgICAgIEFkZCBIYXNo
Q2hhbmdlRXZlbnQgdG8gZXhwZWN0ZWQgZ2xvYmFsIG9iamVjdHMuCisgICAgICAgIFVwZGF0ZSBz
dGF0ZW9iamVjdHMgdGVzdHMgdG8gYWxzbyBjaGVjayBuZXdVUkwgb24gdGhlIGhhc2hjaGFuZ2Ug
ZXZlbnQuCisKKyAgICAgICAgVGhlIG9yaWdpbmFsIHZlcnNpb24gb2YgdGhpcyBwYXRjaCB3YXMg
d3JpdHRlbiBieQorICAgICAgICBTdGV2ZW4gTGFpIDxzM2xhbmNlQGhvdG1haWwuY29tPi4KKwor
ICAgICAgICAqIGZhc3QvZG9tL1dpbmRvdy93aW5kb3ctcHJvcGVydGllcy1leHBlY3RlZC50eHQ6
CisgICAgICAgICogZmFzdC9kb20vcHJvdG90eXBlLWluaGVyaXRhbmNlLWV4cGVjdGVkLnR4dDoK
KyAgICAgICAgKiBmYXN0L2pzL2dsb2JhbC1jb25zdHJ1Y3RvcnMtZXhwZWN0ZWQudHh0OgorICAg
ICAgICAqIGZhc3QvbG9hZGVyL2hhc2hjaGFuZ2UtZXZlbnQtcHJvcGVydGllcy1leHBlY3RlZC50
eHQ6IEFkZGVkLgorICAgICAgICAqIGZhc3QvbG9hZGVyL2hhc2hjaGFuZ2UtZXZlbnQtcHJvcGVy
dGllcy5odG1sOiBBZGRlZC4KKyAgICAgICAgKiBmYXN0L2xvYWRlci9zdGF0ZW9iamVjdHMvZG9j
dW1lbnQtZGVzdHJveWVkLW5hdmlnYXRlLWJhY2std2l0aC1mcmFnbWVudC1zY3JvbGwuaHRtbDoK
KyAgICAgICAgKiBmYXN0L2xvYWRlci9zdGF0ZW9iamVjdHMvcHVzaHN0YXRlLXdpdGgtZnJhZ21l
bnQtdXJscy1hbmQtaGFzaGNoYW5nZS5odG1sOgorCiAyMDEwLTA5LTEzICBDaHJpcyBGbGVpemFj
aCAgPGNmbGVpemFjaEBhcHBsZS5jb20+CiAKICAgICAgICAgUmV2aWV3ZWQgYnkgRGFyaW4gQWRs
ZXIuCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L2RvbS9XaW5kb3cvd2luZG93LXByb3Bl
cnRpZXMtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvZmFzdC9kb20vV2luZG93L3dpbmRvdy1w
cm9wZXJ0aWVzLWV4cGVjdGVkLnR4dAppbmRleCBlNTUzYmVjZWQ4ZTdkZGZkMzZhNzQxYTYzZjVm
YWNmZjliMDU4ZjZlLi5kNDg0Y2ZlNTEyYjNlMzM1MDY3YThkYzhhNDE1NDQxYTA4ZTQ2MjhlIDEw
MDY0NAotLS0gYS9MYXlvdXRUZXN0cy9mYXN0L2RvbS9XaW5kb3cvd2luZG93LXByb3BlcnRpZXMt
ZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL2Zhc3QvZG9tL1dpbmRvdy93aW5kb3ctcHJv
cGVydGllcy1leHBlY3RlZC50eHQKQEAgLTEwNzksNiArMTA3OSw4IEBAIHdpbmRvdy5IVE1MVUxp
c3RFbGVtZW50IFtvYmplY3QgSFRNTFVMaXN0RWxlbWVudENvbnN0cnVjdG9yXQogd2luZG93LkhU
TUxVTGlzdEVsZW1lbnQucHJvdG90eXBlIFtwcmludGVkIGFib3ZlIGFzIHdpbmRvdy5FbGVtZW50
LnByb3RvdHlwZV0KIHdpbmRvdy5IVE1MVmlkZW9FbGVtZW50IFtvYmplY3QgSFRNTFZpZGVvRWxl
bWVudENvbnN0cnVjdG9yXQogd2luZG93LkhUTUxWaWRlb0VsZW1lbnQucHJvdG90eXBlIFtwcmlu
dGVkIGFib3ZlIGFzIHdpbmRvdy5FbGVtZW50LnByb3RvdHlwZV0KK3dpbmRvdy5IYXNoQ2hhbmdl
RXZlbnQgW29iamVjdCBIYXNoQ2hhbmdlRXZlbnRDb25zdHJ1Y3Rvcl0KK3dpbmRvdy5IYXNoQ2hh
bmdlRXZlbnQucHJvdG90eXBlIFtwcmludGVkIGFib3ZlIGFzIHdpbmRvdy5FdmVudC5wcm90b3R5
cGVdCiB3aW5kb3cuSW1hZ2UgW29iamVjdCBJbWFnZUNvbnN0cnVjdG9yXQogd2luZG93LkltYWdl
LnByb3RvdHlwZSBbcHJpbnRlZCBhYm92ZSBhcyB3aW5kb3cuRWxlbWVudC5wcm90b3R5cGVdCiB3
aW5kb3cuSW1hZ2VEYXRhIFtvYmplY3QgSW1hZ2VEYXRhQ29uc3RydWN0b3JdCmRpZmYgLS1naXQg
YS9MYXlvdXRUZXN0cy9mYXN0L2RvbS9wcm90b3R5cGUtaW5oZXJpdGFuY2UtZXhwZWN0ZWQudHh0
IGIvTGF5b3V0VGVzdHMvZmFzdC9kb20vcHJvdG90eXBlLWluaGVyaXRhbmNlLWV4cGVjdGVkLnR4
dAppbmRleCA2ZThmMWM4M2U3NTc3ODVmZDdmMTM0OGFkZThlOGU0M2NjZDA4M2Y1Li4zYjQ1Y2U4
OGY1MjIwZjJjNTZhZGY2ZDFkM2U2OThiNzVjY2RlNmNiIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0
cy9mYXN0L2RvbS9wcm90b3R5cGUtaW5oZXJpdGFuY2UtZXhwZWN0ZWQudHh0CisrKyBiL0xheW91
dFRlc3RzL2Zhc3QvZG9tL3Byb3RvdHlwZS1pbmhlcml0YW5jZS1leHBlY3RlZC50eHQKQEAgLTIz
OSw2ICsyMzksOCBAQCBQQVNTIGlubmVyLkhUTUxVTGlzdEVsZW1lbnQuaXNJbm5lciBpcyB0cnVl
CiBQQVNTIGlubmVyLkhUTUxVTGlzdEVsZW1lbnQuY29uc3RydWN0b3IuaXNJbm5lciBpcyB0cnVl
CiBQQVNTIGlubmVyLkhUTUxWaWRlb0VsZW1lbnQuaXNJbm5lciBpcyB0cnVlCiBQQVNTIGlubmVy
LkhUTUxWaWRlb0VsZW1lbnQuY29uc3RydWN0b3IuaXNJbm5lciBpcyB0cnVlCitQQVNTIGlubmVy
Lkhhc2hDaGFuZ2VFdmVudC5pc0lubmVyIGlzIHRydWUKK1BBU1MgaW5uZXIuSGFzaENoYW5nZUV2
ZW50LmNvbnN0cnVjdG9yLmlzSW5uZXIgaXMgdHJ1ZQogUEFTUyBpbm5lci5JbWFnZS5pc0lubmVy
IGlzIHRydWUKIFBBU1MgaW5uZXIuSW1hZ2UuY29uc3RydWN0b3IuaXNJbm5lciBpcyB0cnVlCiBQ
QVNTIGlubmVyLkltYWdlRGF0YS5pc0lubmVyIGlzIHRydWUKZGlmZiAtLWdpdCBhL0xheW91dFRl
c3RzL2Zhc3QvanMvZ2xvYmFsLWNvbnN0cnVjdG9ycy1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0
cy9mYXN0L2pzL2dsb2JhbC1jb25zdHJ1Y3RvcnMtZXhwZWN0ZWQudHh0CmluZGV4IDVhYTBkMjgx
ZmM4YTU2MDgxY2Y5YTg1YTgxZDk3NmQ2YjdkYjdlMzcuLjk3ODkzZGE3MzEzMzhmN2VmMjAyODRk
OTVlOTgzZjViNWI5OGNmNGQgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2Zhc3QvanMvZ2xvYmFs
LWNvbnN0cnVjdG9ycy1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC9qcy9nbG9i
YWwtY29uc3RydWN0b3JzLWV4cGVjdGVkLnR4dApAQCAtMTE1LDYgKzExNSw3IEBAIFBBU1MgSFRN
TFRleHRBcmVhRWxlbWVudC50b1N0cmluZygpIGlzICdbb2JqZWN0IEhUTUxUZXh0QXJlYUVsZW1l
bnRDb25zdHJ1Y3Rvcl0nCiBQQVNTIEhUTUxUaXRsZUVsZW1lbnQudG9TdHJpbmcoKSBpcyAnW29i
amVjdCBIVE1MVGl0bGVFbGVtZW50Q29uc3RydWN0b3JdJwogUEFTUyBIVE1MVUxpc3RFbGVtZW50
LnRvU3RyaW5nKCkgaXMgJ1tvYmplY3QgSFRNTFVMaXN0RWxlbWVudENvbnN0cnVjdG9yXScKIFBB
U1MgSFRNTFZpZGVvRWxlbWVudC50b1N0cmluZygpIGlzICdbb2JqZWN0IEhUTUxWaWRlb0VsZW1l
bnRDb25zdHJ1Y3Rvcl0nCitQQVNTIEhhc2hDaGFuZ2VFdmVudC50b1N0cmluZygpIGlzICdbb2Jq
ZWN0IEhhc2hDaGFuZ2VFdmVudENvbnN0cnVjdG9yXScKIFBBU1MgSW1hZ2UudG9TdHJpbmcoKSBp
cyAnW29iamVjdCBJbWFnZUNvbnN0cnVjdG9yXScKIFBBU1MgSW1hZ2VEYXRhLnRvU3RyaW5nKCkg
aXMgJ1tvYmplY3QgSW1hZ2VEYXRhQ29uc3RydWN0b3JdJwogUEFTUyBLZXlib2FyZEV2ZW50LnRv
U3RyaW5nKCkgaXMgJ1tvYmplY3QgS2V5Ym9hcmRFdmVudENvbnN0cnVjdG9yXScKZGlmZiAtLWdp
dCBhL0xheW91dFRlc3RzL2Zhc3QvbG9hZGVyL2hhc2hjaGFuZ2UtZXZlbnQtcHJvcGVydGllcy1l
eHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9mYXN0L2xvYWRlci9oYXNoY2hhbmdlLWV2ZW50LXBy
b3BlcnRpZXMtZXhwZWN0ZWQudHh0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmVlYjZmNTI1NmZlNzIxZGE0NTMxYThi
ZmE4MmZlZjJlNWE5NmNiNDEKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9mYXN0L2xv
YWRlci9oYXNoY2hhbmdlLWV2ZW50LXByb3BlcnRpZXMtZXhwZWN0ZWQudHh0CkBAIC0wLDAgKzEs
MTIgQEAKK1Rlc3RzIHRoYXQgaGFzaGNoYW5nZSBldmVudHMgaGF2ZSB0aGUgZXhwZWN0ZWQgbmV3
VVJMIGFuZCBvbGRVUkwgcHJvcGVydGllcy4KKworT24gc3VjY2VzcywgeW91IHdpbGwgc2VlIGEg
c2VyaWVzIG9mICJQQVNTIiBtZXNzYWdlcywgZm9sbG93ZWQgYnkgIlRFU1QgQ09NUExFVEUiLgor
CitoYXNoY2hhbmdlIGZpcmVkIHdpdGggb2xkVVJMIGhhc2ggIltub25lXSIgYW5kIG5ld1VSTCBo
YXNoICIjc3RhdGUxIgoraGFzaGNoYW5nZSBmaXJlZCB3aXRoIG9sZFVSTCBoYXNoICIjc3RhdGUx
IiBhbmQgbmV3VVJMIGhhc2ggIiNzdGF0ZTIiCitoYXNoY2hhbmdlIGZpcmVkIHdpdGggb2xkVVJM
IGhhc2ggIiNzdGF0ZTIiIGFuZCBuZXdVUkwgaGFzaCAiI3N0YXRlMSIKK2hhc2hjaGFuZ2UgZmly
ZWQgd2l0aCBvbGRVUkwgaGFzaCAiI3N0YXRlMSIgYW5kIG5ld1VSTCBoYXNoICJbbm9uZV0iCitQ
QVNTIHN1Y2Nlc3NmdWxseVBhcnNlZCBpcyB0cnVlCisKK1RFU1QgQ09NUExFVEUKKwpkaWZmIC0t
Z2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9sb2FkZXIvaGFzaGNoYW5nZS1ldmVudC1wcm9wZXJ0aWVz
Lmh0bWwgYi9MYXlvdXRUZXN0cy9mYXN0L2xvYWRlci9oYXNoY2hhbmdlLWV2ZW50LXByb3BlcnRp
ZXMuaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwLi41Y2E5ZDA2NGU1NzM0ZjIzMmU5OWNmNmM5MjIyYjNhOTdiMTcy
ODQ1Ci0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC9sb2FkZXIvaGFzaGNoYW5n
ZS1ldmVudC1wcm9wZXJ0aWVzLmh0bWwKQEAgLTAsMCArMSw1MyBAQAorPCFET0NUWVBFIGh0bWw+
Cis8aHRtbD4KKzxib2R5PgorPGxpbmsgcmVsPSJzdHlsZXNoZWV0IiBocmVmPSIuLi9qcy9yZXNv
dXJjZXMvanMtdGVzdC1zdHlsZS5jc3MiIHR5cGU9InRleHQvY3NzIj4KKzxzY3JpcHQgc3JjPSIu
Li9qcy9yZXNvdXJjZXMvanMtdGVzdC1wcmUuanMiPjwvc2NyaXB0PgorPGRpdiBpZD0iZGVzY3Jp
cHRpb24iPjwvZGl2PgorPHByZSBpZD0iY29uc29sZSI+PC9wcmU+Cis8c2NyaXB0PgorZGVzY3Jp
cHRpb24oJ1Rlc3RzIHRoYXQgaGFzaGNoYW5nZSBldmVudHMgaGF2ZSB0aGUgZXhwZWN0ZWQgbmV3
VVJMIGFuZCBvbGRVUkwgcHJvcGVydGllcy4nKTsKKworZnVuY3Rpb24gaGFzaE9mKHVybCkKK3sK
KyAgICB2YXIgaGFzaEluZGV4ID0gdXJsLmxhc3RJbmRleE9mKCcjJyk7CisgICAgcmV0dXJuIGhh
c2hJbmRleCAhPSAtMSA/IHVybC5zdWJzdHJpbmcoaGFzaEluZGV4KSA6ICdbbm9uZV0nOworfQor
Cit2YXIgZ29pbmdGb3J3YXJkID0gdHJ1ZTsKKworb25sb2FkID0gZnVuY3Rpb24oKQoreworICAg
IHNldFRpbWVvdXQoZnVuY3Rpb24oKSB7bG9jYXRpb24uaHJlZiA9ICcjc3RhdGUxJzt9LCAwKTsK
K307CisKK29uaGFzaGNoYW5nZSA9IGZ1bmN0aW9uKGV2ZW50KQoreworICAgIGRlYnVnKCdoYXNo
Y2hhbmdlIGZpcmVkIHdpdGggb2xkVVJMIGhhc2ggIicgKyBoYXNoT2YoZXZlbnQub2xkVVJMKSAr
ICciIGFuZCBuZXdVUkwgaGFzaCAiJyArIGhhc2hPZihldmVudC5uZXdVUkwpICsgJyInKTsKKyAg
ICAKKyAgICBzd2l0Y2ggKGhhc2hPZihldmVudC5uZXdVUkwpKSB7CisgICAgICAgIGNhc2UgJyNz
dGF0ZTEnOgorICAgICAgICAgICAgaWYgKGdvaW5nRm9yd2FyZCkKKyAgICAgICAgICAgICAgICBs
b2NhdGlvbi5ocmVmID0gJyNzdGF0ZTInOworICAgICAgICAgICAgZWxzZQorICAgICAgICAgICAg
ICAgIGhpc3RvcnkuYmFjaygpOworICAgICAgICAgICAgYnJlYWs7CisgICAgICAgIGNhc2UgJyNz
dGF0ZTInOgorICAgICAgICAgICAgaWYgKGdvaW5nRm9yd2FyZCkgeworICAgICAgICAgICAgICAg
IGdvaW5nRm9yd2FyZCA9IGZhbHNlOworICAgICAgICAgICAgICAgIGhpc3RvcnkuYmFjaygpOwor
ICAgICAgICAgICAgfSBlbHNlIHsKKyAgICAgICAgICAgICAgICB0ZXN0RmFpbGVkKCdzaG91bGQg
YWx3YXlzIGJlIGdvaW5nIGZvcndhcmQgYXQgI3N0YXRlMicpOworICAgICAgICAgICAgfQorICAg
ICAgICAgICAgYnJlYWs7CisgICAgICAgIGNhc2UgJ1tub25lXSc6CisgICAgICAgICAgICBmaW5p
c2hKU1Rlc3QoKTsKKyAgICAgICAgICAgIGJyZWFrOworICAgIH0KK307CisKK3ZhciBzdWNjZXNz
ZnVsbHlQYXJzZWQgPSB0cnVlOwordmFyIGpzVGVzdElzQXN5bmMgPSB0cnVlOworPC9zY3JpcHQ+
Cis8c2NyaXB0IHNyYz0iLi4vanMvcmVzb3VyY2VzL2pzLXRlc3QtcG9zdC5qcyI+PC9zY3JpcHQ+
Cis8L2h0bWw+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L2xvYWRlci9zdGF0ZW9iamVj
dHMvZG9jdW1lbnQtZGVzdHJveWVkLW5hdmlnYXRlLWJhY2std2l0aC1mcmFnbWVudC1zY3JvbGwu
aHRtbCBiL0xheW91dFRlc3RzL2Zhc3QvbG9hZGVyL3N0YXRlb2JqZWN0cy9kb2N1bWVudC1kZXN0
cm95ZWQtbmF2aWdhdGUtYmFjay13aXRoLWZyYWdtZW50LXNjcm9sbC5odG1sCmluZGV4IGRhNTAw
YWI4NWI2YjM2ZDM1YWZkZGZiZDA5N2Y0NTFiZWY0NTg2Y2UuLjExZjM0OGZlMzg2MjAwZWYzZWZm
Mzg0NTRkMzQwMDlhYWFhMDg2ZDEgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2Zhc3QvbG9hZGVy
L3N0YXRlb2JqZWN0cy9kb2N1bWVudC1kZXN0cm95ZWQtbmF2aWdhdGUtYmFjay13aXRoLWZyYWdt
ZW50LXNjcm9sbC5odG1sCisrKyBiL0xheW91dFRlc3RzL2Zhc3QvbG9hZGVyL3N0YXRlb2JqZWN0
cy9kb2N1bWVudC1kZXN0cm95ZWQtbmF2aWdhdGUtYmFjay13aXRoLWZyYWdtZW50LXNjcm9sbC5o
dG1sCkBAIC05LDExICs5LDE2IEBAIGlmICh3aW5kb3cubGF5b3V0VGVzdENvbnRyb2xsZXIpIHsK
ICAgICBsYXlvdXRUZXN0Q29udHJvbGxlci53YWl0VW50aWxEb25lKCk7CiB9CiAKLWZ1bmN0aW9u
IGxhc3RQYXRoQ29tcG9uZW50KCkKK2Z1bmN0aW9uIGxhc3RQYXRoQ29tcG9uZW50KHVybCkKIHsK
LSAgICByZXR1cm4gd2luZG93LmxvY2F0aW9uLmhyZWYuc3BsaXQoJy8nKS5wb3AoKTsKKyAgICBy
ZXR1cm4gdXJsLnNwbGl0KCcvJykucG9wKCk7CiB9CiAKK2Z1bmN0aW9uIGhhc2hPZih1cmwpCit7
CisgICAgcmV0dXJuIHVybC5zdWJzdHJpbmcodXJsLmxhc3RJbmRleE9mKCcjJykpOworfQorIAog
ZnVuY3Rpb24gcnVuRmlyc3RTdGFnZU9mVGVzdCgpCiB7ICAgCiAgICAgaGlzdG9yeS5yZXBsYWNl
U3RhdGUoIkZpcnN0RW50cnkiLCBudWxsLCAiI0ZpcnN0RW50cnkiKTsKQEAgLTIzLDcgKzI4LDcg
QEAgZnVuY3Rpb24gcnVuRmlyc3RTdGFnZU9mVGVzdCgpCiAKIGZ1bmN0aW9uIHJ1blNlY29uZFN0
YWdlT2ZUZXN0KCkKIHsKLSAgICBhbGVydCgiTGFzdCBwYXRoIGNvbXBvbmVudCBvZiBsb2NhdGlv
biBpcyAiICsgbGFzdFBhdGhDb21wb25lbnQoKSk7CisgICAgYWxlcnQoIkxhc3QgcGF0aCBjb21w
b25lbnQgb2YgbG9jYXRpb24gaXMgIiArIGxhc3RQYXRoQ29tcG9uZW50KGxvY2F0aW9uLmhyZWYp
KTsKICAgICBzZXRUaW1lb3V0KCJoaXN0b3J5LmJhY2soKTsiLCAwKTsKIH0KIApAQCAtNDUsNyAr
NTAsNyBAQCBmdW5jdGlvbiBydW5UZXN0KCkKIAogdmFyIGJlZ2FuVGVzdCA9IGZhbHNlOwogCi1m
dW5jdGlvbiBzdGF0ZVBvcHBlZCgpCitvbnBvcHN0YXRlID0gZnVuY3Rpb24oKQogewogICAgIC8v
IFRoZSBmaXJzdCB0aW1lIHBvcHN0YXRlIGZpcmVzLCBpdCdzIGJlY2F1c2UgdGhlIHBhZ2UgaGFz
IGZpbmlzaGVkIGxvYWRpbmcuCiAgICAgLy8gT25seSB0aGVuIGNhbiB3ZSBiZWdpbiB0aGUgdGVz
dC4KQEAgLTc5LDEwICs4NCwxMCBAQCBmdW5jdGlvbiBzdGF0ZVBvcHBlZCgpCiAgICAgfSwgMCk7
CiB9CiAKLWZ1bmN0aW9uIGhhc2hDaGFuZ2VkKCkKK29uaGFzaGNoYW5nZSA9IGZ1bmN0aW9uKGV2
ZW50KQogewotICAgIGFsZXJ0KCJoYXNoQ2hhbmdlZCAtIExhc3QgcGF0aCBjb21wb25lbnQgb2Yg
bG9jYXRpb24gaXMgIiArIGxhc3RQYXRoQ29tcG9uZW50KCkpOwotICAgIGlmICh3aW5kb3cubG9j
YXRpb24uaGFzaCA9PSAiI0ZpcnN0RW50cnlXaWxsTGF0ZXJCZVJlYWN0aXZhdGVkIikgeworICAg
YWxlcnQoImhhc2hDaGFuZ2VkIC0gTGFzdCBwYXRoIGNvbXBvbmVudCBvZiBsb2NhdGlvbiBpcyAi
ICsgbGFzdFBhdGhDb21wb25lbnQoZXZlbnQubmV3VVJMKSk7CisgICBpZiAoaGFzaE9mKGV2ZW50
Lm5ld1VSTCkgPT0gIiNGaXJzdEVudHJ5V2lsbExhdGVyQmVSZWFjdGl2YXRlZCIpIHsKICAgICAg
ICAgYWxlcnQoIlRlc3QgY29tcGxldGUiKTsKICAgICAgICAgc2Vzc2lvblN0b3JhZ2UuY2xlYXIo
KTsKICAgICAgICAgaWYgKHdpbmRvdy5sYXlvdXRUZXN0Q29udHJvbGxlcikKQEAgLTkxLDcgKzk2
LDcgQEAgZnVuY3Rpb24gaGFzaENoYW5nZWQoKQogfQogCiA8L3NjcmlwdD4KLTxib2R5IG9ucG9w
c3RhdGU9InN0YXRlUG9wcGVkKCk7IiBvbmhhc2hjaGFuZ2U9Imhhc2hDaGFuZ2VkKCk7IiBvbnVu
bG9hZD0iLyogZGlzYWJsZSBwYWdlIGNhY2hlICovIj4KKzxib2R5IG9udW5sb2FkPSIvKiBkaXNh
YmxlIHBhZ2UgY2FjaGUgKi8iPgogPHByZT4KIFRoaXMgdGVzdDoKIC1CdWlsZHMgdXAgYSBsaXN0
IG9mIHN0YXRlIG9iamVjdCBlbnRyaWVzIHdpdGggZnJhZ21lbnQgVVJMcy4KZGlmZiAtLWdpdCBh
L0xheW91dFRlc3RzL2Zhc3QvbG9hZGVyL3N0YXRlb2JqZWN0cy9wdXNoc3RhdGUtd2l0aC1mcmFn
bWVudC11cmxzLWFuZC1oYXNoY2hhbmdlLmh0bWwgYi9MYXlvdXRUZXN0cy9mYXN0L2xvYWRlci9z
dGF0ZW9iamVjdHMvcHVzaHN0YXRlLXdpdGgtZnJhZ21lbnQtdXJscy1hbmQtaGFzaGNoYW5nZS5o
dG1sCmluZGV4IGE5MmQ3Y2M3NTEzOWRkYTQwOTVkYWEyZmI1ZmMwYTIzM2U3MTc1ZjYuLjA3Yzc4
NGRkNzgyZGI4ZWM5MWVhMDUzYjMxNmFlOTk2MjVmZDM3NDggMTAwNjQ0Ci0tLSBhL0xheW91dFRl
c3RzL2Zhc3QvbG9hZGVyL3N0YXRlb2JqZWN0cy9wdXNoc3RhdGUtd2l0aC1mcmFnbWVudC11cmxz
LWFuZC1oYXNoY2hhbmdlLmh0bWwKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC9sb2FkZXIvc3RhdGVv
YmplY3RzL3B1c2hzdGF0ZS13aXRoLWZyYWdtZW50LXVybHMtYW5kLWhhc2hjaGFuZ2UuaHRtbApA
QCAtMzksOSArMzksOSBAQCBmdW5jdGlvbiBydW5UZXN0KCkKICAgICBoaXN0b3J5LmJhY2soKTsK
IH0KIAotZnVuY3Rpb24gbGFzdFBhdGhDb21wb25lbnQoKQorZnVuY3Rpb24gbGFzdFBhdGhDb21w
b25lbnQodXJsKQogewotICAgIHJldHVybiB3aW5kb3cubG9jYXRpb24uaHJlZi5zcGxpdCgnLycp
LnBvcCgpOworICAgIHJldHVybiB1cmwuc3BsaXQoJy8nKS5wb3AoKTsKIH0KIAogdmFyIGJlZ2Fu
VGVzdCA9IGZhbHNlOwpAQCAtNTYsMTYgKzU2LDE2IEBAIG9ucG9wc3RhdGUgPSBmdW5jdGlvbihl
dmVudCkKICAgICAgICAgcmV0dXJuOwogICAgIH0KIAotICAgIGxvZygiU3RhdGUgcG9wcGVkIHdp
dGggZXZlbnQgIiArIGV2ZW50LnN0YXRlICsgIiAodHlwZSAiICsgdHlwZW9mIGV2ZW50LnN0YXRl
ICsgIikgYW5kIGxhc3QgcGF0aCBjb21wb25lbnQgIiArIGxhc3RQYXRoQ29tcG9uZW50KCkpOwor
ICAgIGxvZygiU3RhdGUgcG9wcGVkIHdpdGggZXZlbnQgIiArIGV2ZW50LnN0YXRlICsgIiAodHlw
ZSAiICsgdHlwZW9mIGV2ZW50LnN0YXRlICsgIikgYW5kIGxhc3QgcGF0aCBjb21wb25lbnQgIiAr
IGxhc3RQYXRoQ29tcG9uZW50KGxvY2F0aW9uLmhyZWYpKTsKICAgICBpZiAoZXZlbnQuc3RhdGUg
IT0gIk9yaWdpbmFsRW50cnkiKQogICAgICAgICBzZXRUaW1lb3V0KCJoaXN0b3J5LmJhY2soKTsi
LCAwKTsKICAgICBlbHNlIGlmICh3aW5kb3cubGF5b3V0VGVzdENvbnRyb2xsZXIpCiAgICAgICAg
IGxheW91dFRlc3RDb250cm9sbGVyLm5vdGlmeURvbmUoKTsKIH0KIAotb25oYXNoY2hhbmdlID0g
ZnVuY3Rpb24oKQorb25oYXNoY2hhbmdlID0gZnVuY3Rpb24oZXZlbnQpCiB7Ci0gICAgbG9nKCJI
YXNoIGNoYW5nZSBmaXJlZCBhbmQgbGFzdCBwYXRoIGNvbXBvbmVudCBpcyAiICsgbGFzdFBhdGhD
b21wb25lbnQoKSk7CisgICAgbG9nKCJIYXNoIGNoYW5nZSBmaXJlZCBhbmQgbGFzdCBwYXRoIGNv
bXBvbmVudCBpcyAiICsgbGFzdFBhdGhDb21wb25lbnQoZXZlbnQubmV3VVJMKSk7CiB9CiAKIDwv
c2NyaXB0PgpkaWZmIC0tZ2l0IGEvV2ViQ29yZS9DTWFrZUxpc3RzLnR4dCBiL1dlYkNvcmUvQ01h
a2VMaXN0cy50eHQKaW5kZXggZTI4OGQ5M2JiNzVhZGQ2ZDMwYWIzN2Y0ZGFkZjkxYmJiNzA1MDVh
OC4uY2VmYmQ4MTQ2NDBkOTdkMjg2YjAwYjAyM2ExYjE1ODY3YTA4OGJkMCAxMDA2NDQKLS0tIGEv
V2ViQ29yZS9DTWFrZUxpc3RzLnR4dAorKysgYi9XZWJDb3JlL0NNYWtlTGlzdHMudHh0CkBAIC0x
NjQsNiArMTY0LDcgQEAgU0VUKFdlYkNvcmVfSURMX0ZJTEVTCiAgICAgZG9tL0Vycm9yRXZlbnQu
aWRsCiAgICAgZG9tL0V2ZW50RXhjZXB0aW9uLmlkbAogICAgIGRvbS9FdmVudC5pZGwKKyAgICBk
b20vSGFzaENoYW5nZUV2ZW50LmlkbAogICAgIGRvbS9LZXlib2FyZEV2ZW50LmlkbAogICAgIGRv
bS9NZXNzYWdlQ2hhbm5lbC5pZGwKICAgICBkb20vTWVzc2FnZUV2ZW50LmlkbApkaWZmIC0tZ2l0
IGEvV2ViQ29yZS9DaGFuZ2VMb2cgYi9XZWJDb3JlL0NoYW5nZUxvZwppbmRleCBkYjA3NTQzNmI3
ZjcxZDhjM2RiNDZiMzJhNmExM2IwNTQyM2YzYjJhLi4zZjI5ZGUwZjA5MjY4OGJlYTczYTIzM2Y3
OTUyZWY1MTZmOTMzY2Q4IDEwMDY0NAotLS0gYS9XZWJDb3JlL0NoYW5nZUxvZworKysgYi9XZWJD
b3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDQ0IEBACisyMDEwLTA5LTEzICBNaWhhaSBQYXJwYXJp
dGEgIDxtaWhhaXBAY2hyb21pdW0ub3JnPgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAo
T09QUyEpLgorCisgICAgICAgIEhhc2hjaGFuZ2UgZXZlbnQgaXMgbm8gbG9uZ2VyIGEgc2ltcGxl
IGV2ZW50LCBuZWVkcyB0byBiZSBpdHMgb3duIGludGVyZmFjZQorICAgICAgICBodHRwczovL2J1
Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MzYzMzUKKyAgICAgICAgCisgICAgICAgIEFk
ZCBIYXNoQ2hhbmdlRXZlbnQuaWRsIGFuZCBzdXBwb3J0aW5nIGZpbGVzL2NoYW5nZXMuCisKKyAg
ICAgICAgVGVzdDogZmFzdC9sb2FkZXIvaGFzaGNoYW5nZS1ldmVudC1wcm9wZXJ0aWVzLmh0bWwK
KworICAgICAgICBUaGUgb3JpZ2luYWwgdmVyc2lvbiBvZiB0aGlzIHBhdGNoIHdhcyB3cml0dGVu
IGJ5CisgICAgICAgIFN0ZXZlbiBMYWkgPHMzbGFuY2VAaG90bWFpbC5jb20+LgorCisgICAgICAg
ICogQ01ha2VMaXN0cy50eHQ6CisgICAgICAgICogRGVyaXZlZFNvdXJjZXMuY3BwOgorICAgICAg
ICAqIERlcml2ZWRTb3VyY2VzLm1ha2U6CisgICAgICAgICogR05VbWFrZWZpbGUuYW06CisgICAg
ICAgICogV2ViQ29yZS5neXBpOgorICAgICAgICAqIFdlYkNvcmUucHJpOgorICAgICAgICAqIFdl
YkNvcmUudmNwcm9qL1dlYkNvcmUudmNwcm9qOgorICAgICAgICAqIFdlYkNvcmUueGNvZGVwcm9q
L3Byb2plY3QucGJ4cHJvajoKKyAgICAgICAgKiBiaW5kaW5ncy9qcy9KU0V2ZW50Q3VzdG9tLmNw
cDoKKyAgICAgICAgKFdlYkNvcmU6OnRvSlMpOgorICAgICAgICAqIGJpbmRpbmdzL3Y4L2N1c3Rv
bS9WOEV2ZW50Q3VzdG9tLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OnRvVjgpOgorICAgICAgICAq
IGRvbS9Eb2N1bWVudC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpEb2N1bWVudDo6ZW5xdWV1ZUhh
c2hjaGFuZ2VFdmVudCk6CisgICAgICAgICogZG9tL0V2ZW50LmNwcDoKKyAgICAgICAgKFdlYkNv
cmU6OkV2ZW50Ojppc0hhc2hDaGFuZ2VFdmVudCk6CisgICAgICAgICogZG9tL0V2ZW50Lmg6Cisg
ICAgICAgICogZG9tL0hhc2hDaGFuZ2VFdmVudC5oOiBBZGRlZC4KKyAgICAgICAgKFdlYkNvcmU6
Okhhc2hDaGFuZ2VFdmVudDo6aXNIYXNoQ2hhbmdlRXZlbnQpOgorICAgICAgICAoV2ViQ29yZTo6
SGFzaENoYW5nZUV2ZW50OjpjcmVhdGUpOgorICAgICAgICAoV2ViQ29yZTo6SGFzaENoYW5nZUV2
ZW50Ojppbml0SGFzaENoYW5nZUV2ZW50KToKKyAgICAgICAgKFdlYkNvcmU6Okhhc2hDaGFuZ2VF
dmVudDo6b2xkVVJMKToKKyAgICAgICAgKFdlYkNvcmU6Okhhc2hDaGFuZ2VFdmVudDo6bmV3VVJM
KToKKyAgICAgICAgKFdlYkNvcmU6Okhhc2hDaGFuZ2VFdmVudDo6SGFzaENoYW5nZUV2ZW50KToK
KyAgICAgICAgKiBkb20vSGFzaENoYW5nZUV2ZW50LmlkbDogQWRkZWQuCisgICAgICAgICogcGFn
ZS9ET01XaW5kb3cuaWRsOgorCiAyMDEwLTA5LTEzICBEYXJpbiBBZGxlciAgPGRhcmluQGFwcGxl
LmNvbT4KIAogICAgICAgICBSZXZpZXdlZCBieSBBZGFtIEJhcnRoLgpkaWZmIC0tZ2l0IGEvV2Vi
Q29yZS9EZXJpdmVkU291cmNlcy5jcHAgYi9XZWJDb3JlL0Rlcml2ZWRTb3VyY2VzLmNwcAppbmRl
eCA3YTBjMmZkY2U3MTEyNTRhN2Y4ZWM4ZDA3NTM4YjcxNTY1NTk3OTM4Li5iYWI4MTA5NzA0OTQ4
OGRhZTIyNGUwZmExOGUyZDlmNzI4ZDA2MDdhIDEwMDY0NAotLS0gYS9XZWJDb3JlL0Rlcml2ZWRT
b3VyY2VzLmNwcAorKysgYi9XZWJDb3JlL0Rlcml2ZWRTb3VyY2VzLmNwcApAQCAtMTE4LDYgKzEx
OCw3IEBACiAjaW5jbHVkZSAiSlNGbGFncy5jcHAiCiAjaW5jbHVkZSAiSlNHZW9sb2NhdGlvbi5j
cHAiCiAjaW5jbHVkZSAiSlNHZW9wb3NpdGlvbi5jcHAiCisjaW5jbHVkZSAiSlNIYXNoQ2hhbmdl
RXZlbnQuY3BwIgogI2luY2x1ZGUgIkpTSGlzdG9yeS5jcHAiCiAjaW5jbHVkZSAiSlNIVE1MQWxs
Q29sbGVjdGlvbi5jcHAiCiAjaW5jbHVkZSAiSlNIVE1MQW5jaG9yRWxlbWVudC5jcHAiCmRpZmYg
LS1naXQgYS9XZWJDb3JlL0Rlcml2ZWRTb3VyY2VzLm1ha2UgYi9XZWJDb3JlL0Rlcml2ZWRTb3Vy
Y2VzLm1ha2UKaW5kZXggZWEzMDFiODYyNzVhZDBlZDIzODg4MDE4Y2FjNTQ1MzcxNzNiMzhjNi4u
YWRiZDMwY2NmNWI1MTZhNGQ2ZDAyMDZlYzkwMmRmM2YyNDcxOWZjNCAxMDA2NDQKLS0tIGEvV2Vi
Q29yZS9EZXJpdmVkU291cmNlcy5tYWtlCisrKyBiL1dlYkNvcmUvRGVyaXZlZFNvdXJjZXMubWFr
ZQpAQCAtMTY0LDYgKzE2NCw4IEBAIERPTV9DTEFTU0VTID0gXAogICAgIEZsYWdzIFwKICAgICBH
ZW9sb2NhdGlvbiBcCiAgICAgR2VvcG9zaXRpb24gXAorICAgIEhhc2hDaGFuZ2VFdmVudCBcCisg
ICAgSGlzdG9yeSBcCiAgICAgSFRNTEFsbENvbGxlY3Rpb24gXAogICAgIEhUTUxBbmNob3JFbGVt
ZW50IFwKICAgICBIVE1MQXBwbGV0RWxlbWVudCBcCkBAIC0yMzYsNyArMjM4LDYgQEAgRE9NX0NM
QVNTRVMgPSBcCiAgICAgSFRNTFRpdGxlRWxlbWVudCBcCiAgICAgSFRNTFVMaXN0RWxlbWVudCBc
CiAgICAgSFRNTFZpZGVvRWxlbWVudCBcCi0gICAgSGlzdG9yeSBcCiAgICAgSURCQW55IFwKICAg
ICBJREJDdXJzb3IgXAogICAgIElEQkRhdGFiYXNlRXJyb3IgXApkaWZmIC0tZ2l0IGEvV2ViQ29y
ZS9HTlVtYWtlZmlsZS5hbSBiL1dlYkNvcmUvR05VbWFrZWZpbGUuYW0KaW5kZXggMGI4MzZjMWZj
ZDExOWUzYjk4YWNjNWQ5ZThhNjM2MTJiODQ1YTUwMC4uYzZmYjZiYzkzMGJkNjAxYzkzZTAxMGU5
MTZjMGI3YmZjYWY0MTE5YSAxMDA2NDQKLS0tIGEvV2ViQ29yZS9HTlVtYWtlZmlsZS5hbQorKysg
Yi9XZWJDb3JlL0dOVW1ha2VmaWxlLmFtCkBAIC0yNDYsNiArMjQ2LDggQEAgd2ViY29yZV9idWls
dF9zb3VyY2VzICs9IFwKIAlEZXJpdmVkU291cmNlcy9XZWJDb3JlL0pTR2VvbG9jYXRpb24uaCBc
CiAJRGVyaXZlZFNvdXJjZXMvV2ViQ29yZS9KU0dlb3Bvc2l0aW9uLmNwcCBcCiAJRGVyaXZlZFNv
dXJjZXMvV2ViQ29yZS9KU0dlb3Bvc2l0aW9uLmggXAorCURlcml2ZWRTb3VyY2VzL1dlYkNvcmUv
SlNIYXNoQ2hhbmdlRXZlbnQuY3BwIFwKKwlEZXJpdmVkU291cmNlcy9XZWJDb3JlL0pTSGFzaENo
YW5nZUV2ZW50LmggXAogCURlcml2ZWRTb3VyY2VzL1dlYkNvcmUvSlNIaXN0b3J5LmNwcCBcCiAJ
RGVyaXZlZFNvdXJjZXMvV2ViQ29yZS9KU0hpc3RvcnkuaCBcCiAJRGVyaXZlZFNvdXJjZXMvV2Vi
Q29yZS9KU0hUTUxBbGxDb2xsZWN0aW9uLmNwcCBcCkBAIC0xMTIyLDYgKzExMjQsNyBAQCB3ZWJj
b3JlX3NvdXJjZXMgKz0gXAogCVdlYkNvcmUvZG9tL0ZyYWdtZW50U2NyaXB0aW5nUGVybWlzc2lv
bi5oIFwKIAlXZWJDb3JlL2RvbS9JbnB1dEVsZW1lbnQuY3BwIFwKIAlXZWJDb3JlL2RvbS9JbnB1
dEVsZW1lbnQuaCBcCisJV2ViQ29yZS9kb20vSGFzaENoYW5nZUV2ZW50LmggXAogCVdlYkNvcmUv
ZG9tL0tleWJvYXJkRXZlbnQuY3BwIFwKIAlXZWJDb3JlL2RvbS9LZXlib2FyZEV2ZW50LmggXAog
CVdlYkNvcmUvZG9tL01hcHBlZEF0dHJpYnV0ZUVudHJ5LmggXApkaWZmIC0tZ2l0IGEvV2ViQ29y
ZS9XZWJDb3JlLmd5cGkgYi9XZWJDb3JlL1dlYkNvcmUuZ3lwaQppbmRleCA3NzAzNTQ2YWEwOTAw
OTk3M2E5NmZmZGU0MzljMTYzODVlZTUyYmE1Li41ODA0Njk1YzI2MzZkODdkNzIzN2JlMzc4ZjQ4
ODI2ODA4MGI4Y2JiIDEwMDY0NAotLS0gYS9XZWJDb3JlL1dlYkNvcmUuZ3lwaQorKysgYi9XZWJD
b3JlL1dlYkNvcmUuZ3lwaQpAQCAtNTYsNiArNTYsNyBAQAogICAgICAgICAgICAgJ2RvbS9FdmVu
dEV4Y2VwdGlvbi5pZGwnLAogICAgICAgICAgICAgJ2RvbS9FdmVudExpc3RlbmVyLmlkbCcsCiAg
ICAgICAgICAgICAnZG9tL0V2ZW50VGFyZ2V0LmlkbCcsCisgICAgICAgICAgICAnZG9tL0hhc2hD
aGFuZ2VFdmVudC5pZGwnLAogICAgICAgICAgICAgJ2RvbS9LZXlib2FyZEV2ZW50LmlkbCcsCiAg
ICAgICAgICAgICAnZG9tL01lc3NhZ2VDaGFubmVsLmlkbCcsCiAgICAgICAgICAgICAnZG9tL01l
c3NhZ2VFdmVudC5pZGwnLApAQCAtMTE5Nyw2ICsxMTk4LDcgQEAKICAgICAgICAgICAgICdkb20v
RnJhZ21lbnRTY3JpcHRpbmdQZXJtaXNzaW9uLmgnLAogICAgICAgICAgICAgJ2RvbS9JbnB1dEVs
ZW1lbnQuY3BwJywKICAgICAgICAgICAgICdkb20vSW5wdXRFbGVtZW50LmgnLAorICAgICAgICAg
ICAgJ2RvbS9IYXNoQ2hhbmdlRXZlbnQuaCcsCiAgICAgICAgICAgICAnZG9tL0tleWJvYXJkRXZl
bnQuY3BwJywKICAgICAgICAgICAgICdkb20vS2V5Ym9hcmRFdmVudC5oJywKICAgICAgICAgICAg
ICdkb20vTWFwcGVkQXR0cmlidXRlRW50cnkuaCcsCmRpZmYgLS1naXQgYS9XZWJDb3JlL1dlYkNv
cmUucHJpIGIvV2ViQ29yZS9XZWJDb3JlLnByaQppbmRleCA5NDcwZmZkMWNhNTg4YmMxOWIyNmMx
ZTI0Y2Q3NjlmNGYxZmQyZmM2Li4zN2JiMjA1MTgzYWVkMDBhMDc1YTFjNGYyYjlkMmZhNjJmM2Rh
ZmEzIDEwMDY0NAotLS0gYS9XZWJDb3JlL1dlYkNvcmUucHJpCisrKyBiL1dlYkNvcmUvV2ViQ29y
ZS5wcmkKQEAgLTEyMyw2ICsxMjMsNyBAQCBJRExfQklORElOR1MgKz0gXAogICAgIGRvbS9FdmVu
dEV4Y2VwdGlvbi5pZGwgXAogIyAgICBkb20vRXZlbnRMaXN0ZW5lci5pZGwgXAogIyAgICBkb20v
RXZlbnRUYXJnZXQuaWRsIFwKKyAgICBkb20vSGFzaENoYW5nZUV2ZW50LmlkbCBcCiAgICAgZG9t
L0tleWJvYXJkRXZlbnQuaWRsIFwKICAgICBkb20vTW91c2VFdmVudC5pZGwgXAogICAgIGRvbS9N
ZXNzYWdlQ2hhbm5lbC5pZGwgXApkaWZmIC0tZ2l0IGEvV2ViQ29yZS9XZWJDb3JlLnZjcHJvai9X
ZWJDb3JlLnZjcHJvaiBiL1dlYkNvcmUvV2ViQ29yZS52Y3Byb2ovV2ViQ29yZS52Y3Byb2oKaW5k
ZXggMDgzYTE1MGJhYzA2NzE3NzAxYmU5MWVmNDZlYWE0MzE0YmU5ZGFmYi4uOTZlOGU0NmVhMmNh
MDA4MDJjZDJlZjVlYmU5Y2RiMDFkMzg1MGE2YyAxMDA2NDQKLS0tIGEvV2ViQ29yZS9XZWJDb3Jl
LnZjcHJvai9XZWJDb3JlLnZjcHJvagorKysgYi9XZWJDb3JlL1dlYkNvcmUudmNwcm9qL1dlYkNv
cmUudmNwcm9qCkBAIC01MzAwLDYgKzUzMDAsNjIgQEAKIAkJCQlSZWxhdGl2ZVBhdGg9IiQoV2Vi
S2l0T3V0cHV0RGlyKVxvYmpcJChQcm9qZWN0TmFtZSlcRGVyaXZlZFNvdXJjZXNcSlNHZW9wb3Np
dGlvbi5oIg0KIAkJCQk+DQogCQkJPC9GaWxlPg0KKyAJCQk8RmlsZQ0KKwkJCQlSZWxhdGl2ZVBh
dGg9IiQoV2ViS2l0T3V0cHV0RGlyKVxvYmpcJChQcm9qZWN0TmFtZSlcRGVyaXZlZFNvdXJjZXNc
SlNIYXNoQ2hhbmdlRXZlbnQuY3BwIg0KKwkJCQk+DQorCQkJCTxGaWxlQ29uZmlndXJhdGlvbg0K
KwkJCQkJTmFtZT0iRGVidWd8V2luMzIiDQorCQkJCQlFeGNsdWRlZEZyb21CdWlsZD0idHJ1ZSIN
CisJCQkJCT4NCisJCQkJCTxUb29sDQorCQkJCQkJTmFtZT0iVkNDTENvbXBpbGVyVG9vbCINCisJ
CQkJCS8+DQorCQkJCTwvRmlsZUNvbmZpZ3VyYXRpb24+DQorCQkJCTxGaWxlQ29uZmlndXJhdGlv
bg0KKwkJCQkJTmFtZT0iUmVsZWFzZXxXaW4zMiINCisJCQkJCUV4Y2x1ZGVkRnJvbUJ1aWxkPSJ0
cnVlIg0KKwkJCQkJPg0KKwkJCQkJPFRvb2wNCisJCQkJCQlOYW1lPSJWQ0NMQ29tcGlsZXJUb29s
Ig0KKwkJCQkJLz4NCisJCQkJPC9GaWxlQ29uZmlndXJhdGlvbj4NCisJCQkJPEZpbGVDb25maWd1
cmF0aW9uDQorCQkJCQlOYW1lPSJEZWJ1Z19JbnRlcm5hbHxXaW4zMiINCisJCQkJCUV4Y2x1ZGVk
RnJvbUJ1aWxkPSJ0cnVlIg0KKwkJCQkJPg0KKwkJCQkJPFRvb2wNCisJCQkJCQlOYW1lPSJWQ0NM
Q29tcGlsZXJUb29sIg0KKwkJCQkJLz4NCisJCQkJPC9GaWxlQ29uZmlndXJhdGlvbj4NCisJCQkJ
PEZpbGVDb25maWd1cmF0aW9uDQorCQkJCQlOYW1lPSJEZWJ1Z19DYWlyb3xXaW4zMiINCisJCQkJ
CUV4Y2x1ZGVkRnJvbUJ1aWxkPSJ0cnVlIg0KKwkJCQkJPg0KKwkJCQkJPFRvb2wNCisJCQkJCQlO
YW1lPSJWQ0NMQ29tcGlsZXJUb29sIg0KKwkJCQkJLz4NCisJCQkJPC9GaWxlQ29uZmlndXJhdGlv
bj4NCisJCQkJPEZpbGVDb25maWd1cmF0aW9uDQorCQkJCQlOYW1lPSJSZWxlYXNlX0NhaXJvfFdp
bjMyIg0KKwkJCQkJRXhjbHVkZWRGcm9tQnVpbGQ9InRydWUiDQorCQkJCQk+DQorCQkJCQk8VG9v
bA0KKwkJCQkJCU5hbWU9IlZDQ0xDb21waWxlclRvb2wiDQorCQkJCQkvPg0KKwkJCQk8L0ZpbGVD
b25maWd1cmF0aW9uPg0KKwkJCQk8RmlsZUNvbmZpZ3VyYXRpb24NCisJCQkJCU5hbWU9IkRlYnVn
X0FsbHxXaW4zMiINCisJCQkJCUV4Y2x1ZGVkRnJvbUJ1aWxkPSJ0cnVlIg0KKwkJCQkJPg0KKwkJ
CQkJPFRvb2wNCisJCQkJCQlOYW1lPSJWQ0NMQ29tcGlsZXJUb29sIg0KKwkJCQkJLz4NCisJCQkJ
PC9GaWxlQ29uZmlndXJhdGlvbj4NCisJCQk8L0ZpbGU+DQorCQkJPEZpbGUNCisJCQkJUmVsYXRp
dmVQYXRoPSIkKFdlYktpdE91dHB1dERpcilcb2JqXCQoUHJvamVjdE5hbWUpXERlcml2ZWRTb3Vy
Y2VzXEpTSGFzaENoYW5nZUV2ZW50LmgiDQorCQkJCT4NCisJCQk8L0ZpbGU+DQogCQkJPEZpbGUN
CiAJCQkJUmVsYXRpdmVQYXRoPSIkKFdlYktpdE91dHB1dERpcilcb2JqXCQoUHJvamVjdE5hbWUp
XERlcml2ZWRTb3VyY2VzXEpTSGlzdG9yeS5jcHAiDQogCQkJCT4NCkBAIC0zMzg3Myw2ICszMzky
OSwxMCBAQAogCQkJCT4NCiAJCQk8L0ZpbGU+DQogCQkJPEZpbGUNCisJCQkJUmVsYXRpdmVQYXRo
PSIuLlxkb21cSGFzaENoYW5nZUV2ZW50LmNwcCINCisJCQkJPg0KKwkJCTwvRmlsZT4NCisJCQk8
RmlsZQ0KIAkJCQlSZWxhdGl2ZVBhdGg9Ii4uXGRvbVxLZXlib2FyZEV2ZW50LmNwcCINCiAJCQkJ
Pg0KIAkJCTwvRmlsZT4NCmRpZmYgLS1naXQgYS9XZWJDb3JlL1dlYkNvcmUueGNvZGVwcm9qL3By
b2plY3QucGJ4cHJvaiBiL1dlYkNvcmUvV2ViQ29yZS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9q
CmluZGV4IDQzYmU2OTg0NTdkYWQyNDkyNzY4MDUwYTM5MjBhMzNkZTk5YzFjYTguLjUxMWNiN2Y2
YTMyMjc3ZmE5MDFmNDI4OGJiZTMyODVkZmMwYTRhMDQgMTAwNjQ0Ci0tLSBhL1dlYkNvcmUvV2Vi
Q29yZS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qCisrKyBiL1dlYkNvcmUvV2ViQ29yZS54Y29k
ZXByb2ovcHJvamVjdC5wYnhwcm9qCkBAIC0xNDg3LDYgKzE0ODcsOSBAQAogCQk4NDc2QzlGMDEx
REY2QTU4MDA1NTVCMDIgLyogU1ZHUGF0aFBhcnNlci5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0g
UEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gODQ3NkM5RUUxMURGNkE1ODAwNTU1QjAyIC8qIFNWR1Bh
dGhQYXJzZXIuaCAqLzsgfTsKIAkJODQ4MDE5NTQxMDhCQUZCMzAwQ0IyQjFGIC8qIEZFR2F1c3Np
YW5CbHVyLmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9
IDg0ODAxOTUyMTA4QkFGQjMwMENCMkIxRiAvKiBGRUdhdXNzaWFuQmx1ci5jcHAgKi87IH07CiAJ
CTg0ODAxOTU1MTA4QkFGQjMwMENCMkIxRiAvKiBGRUdhdXNzaWFuQmx1ci5oIGluIEhlYWRlcnMg
Ki8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gODQ4MDE5NTMxMDhCQUZCMzAwQ0Iy
QjFGIC8qIEZFR2F1c3NpYW5CbHVyLmggKi87IH07CisJCTg0ODJCNzQ2MTE5OEMzNTQwMEJGQjAw
NSAvKiBIYXNoQ2hhbmdlRXZlbnQuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmls
ZTsgZmlsZVJlZiA9IDI0NDJCQkY4MTE5NEM5RDMwMEQ0OTQ2OSAvKiBIYXNoQ2hhbmdlRXZlbnQu
aCAqLzsgfTsKKwkJODQ4MkI3NTExMTk4Q0I2QjAwQkZCMDA1IC8qIEpTSGFzaENoYW5nZUV2ZW50
LmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDg0ODJC
NzRGMTE5OENCNkIwMEJGQjAwNSAvKiBKU0hhc2hDaGFuZ2VFdmVudC5jcHAgKi87IH07CisJCTg0
ODJCNzUyMTE5OENCNkIwMEJGQjAwNSAvKiBKU0hhc2hDaGFuZ2VFdmVudC5oIGluIEhlYWRlcnMg
Ki8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gODQ4MkI3NTAxMTk4Q0I2QjAwQkZC
MDA1IC8qIEpTSGFzaENoYW5nZUV2ZW50LmggKi87IH07CiAJCTg0ODUyMjdCMTE5MDE2MkMwMDZF
REM3RiAvKiBKU1NWR0hLZXJuRWxlbWVudC5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhC
dWlsZEZpbGU7IGZpbGVSZWYgPSA4NDg1MjI3NzExOTAxNjJDMDA2RURDN0YgLyogSlNTVkdIS2Vy
bkVsZW1lbnQuY3BwICovOyB9OwogCQk4NDg1MjI3QzExOTAxNjJDMDA2RURDN0YgLyogSlNTVkdI
S2VybkVsZW1lbnQuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJl
ZiA9IDg0ODUyMjc4MTE5MDE2MkMwMDZFREM3RiAvKiBKU1NWR0hLZXJuRWxlbWVudC5oICovOyB9
OwogCQk4NDg1MjI3RDExOTAxNjJDMDA2RURDN0YgLyogSlNTVkdWS2VybkVsZW1lbnQuY3BwIGlu
IFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gODQ4NTIyNzkxMTkw
MTYyQzAwNkVEQzdGIC8qIEpTU1ZHVktlcm5FbGVtZW50LmNwcCAqLzsgfTsKQEAgLTY0OTQsNiAr
NjQ5Nyw3IEBACiAJCTFDRkFFMzIyMEE2RDZBM0YwMDMyNTkzRCAvKiBsaWJvYmpjLmR5bGliICov
ID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gImNvbXBpbGVk
Lm1hY2gtby5keWxpYiI7IG5hbWUgPSBsaWJvYmpjLmR5bGliOyBwYXRoID0gL3Vzci9saWIvbGli
b2JqYy5keWxpYjsgc291cmNlVHJlZSA9ICI8YWJzb2x1dGU+IjsgfTsKIAkJMjAwQjE5MDgxMUMy
NzdEOTAwRENDRDNBIC8qIFNjcmlwdEJyZWFrcG9pbnQuY3BwICovID0ge2lzYSA9IFBCWEZpbGVS
ZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29k
ZS5jcHAuY3BwOyBwYXRoID0gU2NyaXB0QnJlYWtwb2ludC5jcHA7IHNvdXJjZVRyZWUgPSAiPGdy
b3VwPiI7IH07CiAJCTIyOEMyODQ0MTBEODI1MDAwMDlEMEQwRSAvKiBTY3JpcHRXcmFwcGFibGUu
aCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25v
d25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gU2NyaXB0V3JhcHBhYmxlLmg7IHNv
dXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTI0NDJCQkY4MTE5NEM5RDMwMEQ0OTQ2OSAvKiBI
YXNoQ2hhbmdlRXZlbnQuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rp
bmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gSGFzaENo
YW5nZUV2ZW50Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTI0RjU0RUFBMTAxRkU5
MTQwMDBBRTc0MSAvKiBBcHBsaWNhdGlvbkNhY2hlSG9zdC5jcHAgKi8gPSB7aXNhID0gUEJYRmls
ZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vj
b2RlLmNwcC5jcHA7IHBhdGggPSBBcHBsaWNhdGlvbkNhY2hlSG9zdC5jcHA7IHNvdXJjZVRyZWUg
PSAiPGdyb3VwPiI7IH07CiAJCTI0RjU0RUFCMTAxRkU5MTQwMDBBRTc0MSAvKiBBcHBsaWNhdGlv
bkNhY2hlSG9zdC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9
IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBBcHBsaWNhdGlv
bkNhY2hlSG9zdC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQkyNTQyRjREODExNjZD
MjVBMDBFODlBODYgLyogVXNlckdlc3R1cmVJbmRpY2F0b3IuY3BwICovID0ge2lzYSA9IFBCWEZp
bGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNl
Y29kZS5jcHAuY3BwOyBwYXRoID0gVXNlckdlc3R1cmVJbmRpY2F0b3IuY3BwOyBzb3VyY2VUcmVl
ID0gIjxncm91cD4iOyB9OwpAQCAtNzQ0NCw2ICs3NDQ4LDkgQEAKIAkJODQ3NkM5RUUxMURGNkE1
ODAwNTU1QjAyIC8qIFNWR1BhdGhQYXJzZXIuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNl
OyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBw
YXRoID0gU1ZHUGF0aFBhcnNlci5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQk4NDgw
MTk1MjEwOEJBRkIzMDBDQjJCMUYgLyogRkVHYXVzc2lhbkJsdXIuY3BwICovID0ge2lzYSA9IFBC
WEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291
cmNlY29kZS5jcHAuY3BwOyBuYW1lID0gRkVHYXVzc2lhbkJsdXIuY3BwOyBwYXRoID0gZmlsdGVy
cy9GRUdhdXNzaWFuQmx1ci5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTg0ODAx
OTUzMTA4QkFGQjMwMENCMkIxRiAvKiBGRUdhdXNzaWFuQmx1ci5oICovID0ge2lzYSA9IFBCWEZp
bGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNl
Y29kZS5jLmg7IG5hbWUgPSBGRUdhdXNzaWFuQmx1ci5oOyBwYXRoID0gZmlsdGVycy9GRUdhdXNz
aWFuQmx1ci5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk4NDgyQjc0NDExOThDMzJF
MDBCRkIwMDUgLyogSGFzaENoYW5nZUV2ZW50LmlkbCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJl
bmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHRleHQ7IHBhdGggPSBI
YXNoQ2hhbmdlRXZlbnQuaWRsOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk4NDgyQjc0
RjExOThDQjZCMDBCRkIwMDUgLyogSlNIYXNoQ2hhbmdlRXZlbnQuY3BwICovID0ge2lzYSA9IFBC
WEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291
cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gSlNIYXNoQ2hhbmdlRXZlbnQuY3BwOyBzb3VyY2VUcmVl
ID0gIjxncm91cD4iOyB9OworCQk4NDgyQjc1MDExOThDQjZCMDBCRkIwMDUgLyogSlNIYXNoQ2hh
bmdlRXZlbnQuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0
OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gSlNIYXNoQ2hhbmdl
RXZlbnQuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJODQ4NTIyNzcxMTkwMTYyQzAw
NkVEQzdGIC8qIEpTU1ZHSEtlcm5FbGVtZW50LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJl
bmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3Bw
LmNwcDsgcGF0aCA9IEpTU1ZHSEtlcm5FbGVtZW50LmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+
IjsgfTsKIAkJODQ4NTIyNzgxMTkwMTYyQzAwNkVEQzdGIC8qIEpTU1ZHSEtlcm5FbGVtZW50Lmgg
Ki8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3du
RmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEpTU1ZHSEtlcm5FbGVtZW50Lmg7IHNv
dXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTg0ODUyMjc5MTE5MDE2MkMwMDZFREM3RiAvKiBK
U1NWR1ZLZXJuRWxlbWVudC5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVu
Y29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGgg
PSBKU1NWR1ZLZXJuRWxlbWVudC5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CkBAIC0x
NTIyNiw2ICsxNTIzMyw4IEBACiAJCQkJMTRFODM3OEQwOUY4NUQ0RjAwQjg1QUU0IC8qIEpTRXZl
bnQuaCAqLywKIAkJCQlCQzYwRDlCRDBEMkEyNjlBMDBCOTkxOEYgLyogSlNFdmVudEV4Y2VwdGlv
bi5jcHAgKi8sCiAJCQkJQkM2MEQ5QkUwRDJBMjY5QTAwQjk5MThGIC8qIEpTRXZlbnRFeGNlcHRp
b24uaCAqLywKKwkJCQk4NDgyQjc0RjExOThDQjZCMDBCRkIwMDUgLyogSlNIYXNoQ2hhbmdlRXZl
bnQuY3BwICovLAorCQkJCTg0ODJCNzUwMTE5OENCNkIwMEJGQjAwNSAvKiBKU0hhc2hDaGFuZ2VF
dmVudC5oICovLAogCQkJCUE4NjYyOUNFMDlEQTJCNDcwMDk2MzNBNSAvKiBKU0tleWJvYXJkRXZl
bnQuY3BwICovLAogCQkJCUE4NjYyOUNEMDlEQTJCNDcwMDk2MzNBNSAvKiBKU0tleWJvYXJkRXZl
bnQuaCAqLywKIAkJCQlFMTA3NDAwQjBFNzdCREMwMDAzM0FGMjQgLyogSlNNZXNzYWdlQ2hhbm5l
bC5jcHAgKi8sCkBAIC0xNzYwMyw2ICsxNzYxMiw4IEBACiAJCQkJOTM4MzFCNTYwRDA4N0Q2MDAw
RTVDOTg0IC8qIEV4Y2VwdGlvbkNvZGUuY3BwICovLAogCQkJCTkzNUZCQ0YxMDlCQTE0M0IwMEUy
MzBCMSAvKiBFeGNlcHRpb25Db2RlLmggKi8sCiAJCQkJQTg1MzEyM0MxMUQwNDcxQjAwRDREMDc3
IC8qIEZyYWdtZW50U2NyaXB0aW5nUGVybWlzc2lvbi5oICovLAorCQkJCTg0ODJCNzQ0MTE5OEMz
MkUwMEJGQjAwNSAvKiBIYXNoQ2hhbmdlRXZlbnQuaWRsICovLAorCQkJCTI0NDJCQkY4MTE5NEM5
RDMwMEQ0OTQ2OSAvKiBIYXNoQ2hhbmdlRXZlbnQuaCAqLywKIAkJCQkwODcwMEJFNjBGMDg2QzUz
MDA5MTk0MTkgLyogSW5wdXRFbGVtZW50LmNwcCAqLywKIAkJCQkwODU5MUFBNDBGMDg1QzRFMDA5
QkFDQjEgLyogSW5wdXRFbGVtZW50LmggKi8sCiAJCQkJODUwMzFCMkQwQTQ0RUZDNzAwRjk5MkUw
IC8qIEtleWJvYXJkRXZlbnQuY3BwICovLApAQCAtMjA1NjQsNiArMjA1NzUsOCBAQAogCQkJCTg5
M0M0N0JDMTIzOEEwQTkwMDJCM0Q4NiAvKiBKU0ZpbGVXcml0ZXJDYWxsYmFjay5oIGluIEhlYWRl
cnMgKi8sCiAJCQkJOEEzMDlDOUYxMjM5NTBCRTAwQ0I5MjA0IC8qIE5lc3RpbmdMZXZlbEluY3Jl
bWVudGVyLmggaW4gSGVhZGVycyAqLywKIAkJCQk5M0UyQTMwNzEyM0U5REMwMDA5RkUxMkEgLyog
SFRNTFBhcnNlcklkaW9tcy5oIGluIEhlYWRlcnMgKi8sCisJCQkJODQ4MkI3NDYxMTk4QzM1NDAw
QkZCMDA1IC8qIEhhc2hDaGFuZ2VFdmVudC5oIGluIEhlYWRlcnMgKi8sCisJCQkJODQ4MkI3NTIx
MTk4Q0I2QjAwQkZCMDA1IC8qIEpTSGFzaENoYW5nZUV2ZW50LmggaW4gSGVhZGVycyAqLywKIAkJ
CSk7CiAJCQlydW5Pbmx5Rm9yRGVwbG95bWVudFBvc3Rwcm9jZXNzaW5nID0gMDsKIAkJfTsKQEAg
LTIzMDM5LDYgKzIzMDUyLDcgQEAKIAkJCQk4OTNDNDdCNzEyMzhBMDk5MDAyQjNEODYgLyogSlNG
aWxlQ2FsbGJhY2suY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJODkzQzQ3QkIxMjM4QTBBOTAwMkIz
RDg2IC8qIEpTRmlsZVdyaXRlckNhbGxiYWNrLmNwcCBpbiBTb3VyY2VzICovLAogCQkJCTkzRTJB
MzA2MTIzRTlEQzAwMDlGRTEyQSAvKiBIVE1MUGFyc2VySWRpb21zLmNwcCBpbiBTb3VyY2VzICov
LAorCQkJCTg0ODJCNzUxMTE5OENCNkIwMEJGQjAwNSAvKiBKU0hhc2hDaGFuZ2VFdmVudC5jcHAg
aW4gU291cmNlcyAqLywKIAkJCSk7CiAJCQlydW5Pbmx5Rm9yRGVwbG95bWVudFBvc3Rwcm9jZXNz
aW5nID0gMDsKIAkJfTsKZGlmZiAtLWdpdCBhL1dlYkNvcmUvYmluZGluZ3MvanMvSlNFdmVudEN1
c3RvbS5jcHAgYi9XZWJDb3JlL2JpbmRpbmdzL2pzL0pTRXZlbnRDdXN0b20uY3BwCmluZGV4IDc0
NzkwMjBjNzE3ZGFmNTA5NmQ2N2I3ZTJiMTc3ZmI5NmM0NThlYzYuLmQyZTlkNjExOGE1MTRjODcy
MTE2NzA5OWMyNWFjZTA1ODBhMzc1MTkgMTAwNjQ0Ci0tLSBhL1dlYkNvcmUvYmluZGluZ3MvanMv
SlNFdmVudEN1c3RvbS5jcHAKKysrIGIvV2ViQ29yZS9iaW5kaW5ncy9qcy9KU0V2ZW50Q3VzdG9t
LmNwcApAQCAtNDIsNiArNDIsNyBAQAogI2luY2x1ZGUgIkpTRGV2aWNlTW90aW9uRXZlbnQuaCIK
ICNpbmNsdWRlICJKU0RldmljZU9yaWVudGF0aW9uRXZlbnQuaCIKICNpbmNsdWRlICJKU0Vycm9y
RXZlbnQuaCIKKyNpbmNsdWRlICJKU0hhc2hDaGFuZ2VFdmVudC5oIgogI2luY2x1ZGUgIkpTS2V5
Ym9hcmRFdmVudC5oIgogI2luY2x1ZGUgIkpTTWVzc2FnZUV2ZW50LmgiCiAjaW5jbHVkZSAiSlNN
b3VzZUV2ZW50LmgiCkBAIC01OCw2ICs1OSw3IEBACiAjaW5jbHVkZSAiSlNYTUxIdHRwUmVxdWVz
dFByb2dyZXNzRXZlbnQuaCIKICNpbmNsdWRlICJCZWZvcmVMb2FkRXZlbnQuaCIKICNpbmNsdWRl
ICJFcnJvckV2ZW50LmgiCisjaW5jbHVkZSAiSGFzaENoYW5nZUV2ZW50LmgiCiAjaW5jbHVkZSAi
S2V5Ym9hcmRFdmVudC5oIgogI2luY2x1ZGUgIk1lc3NhZ2VFdmVudC5oIgogI2luY2x1ZGUgIk1v
dXNlRXZlbnQuaCIKQEAgLTE3MCw2ICsxNzIsOCBAQCBKU1ZhbHVlIHRvSlMoRXhlY1N0YXRlKiBl
eGVjLCBKU0RPTUdsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0LCBFdmVudCogZXZlbnQpCiAgICAg
ZWxzZSBpZiAoZXZlbnQtPmlzRXJyb3JFdmVudCgpKQogICAgICAgICB3cmFwcGVyID0gQ1JFQVRF
X0RPTV9PQkpFQ1RfV1JBUFBFUihleGVjLCBnbG9iYWxPYmplY3QsIEVycm9yRXZlbnQsIGV2ZW50
KTsKICNlbmRpZgorICAgIGVsc2UgaWYgKGV2ZW50LT5pc0hhc2hDaGFuZ2VFdmVudCgpKQorICAg
ICAgICB3cmFwcGVyID0gQ1JFQVRFX0RPTV9PQkpFQ1RfV1JBUFBFUihleGVjLCBnbG9iYWxPYmpl
Y3QsIEhhc2hDaGFuZ2VFdmVudCwgZXZlbnQpOwogICAgIGVsc2UgaWYgKGV2ZW50LT5pc1BvcFN0
YXRlRXZlbnQoKSkKICAgICAgICAgd3JhcHBlciA9IENSRUFURV9ET01fT0JKRUNUX1dSQVBQRVIo
ZXhlYywgZ2xvYmFsT2JqZWN0LCBQb3BTdGF0ZUV2ZW50LCBldmVudCk7CiAgICAgZWxzZSBpZiAo
ZXZlbnQtPmlzQ3VzdG9tRXZlbnQoKSkKZGlmZiAtLWdpdCBhL1dlYkNvcmUvYmluZGluZ3Mvdjgv
Y3VzdG9tL1Y4RXZlbnRDdXN0b20uY3BwIGIvV2ViQ29yZS9iaW5kaW5ncy92OC9jdXN0b20vVjhF
dmVudEN1c3RvbS5jcHAKaW5kZXggZTBiYjAyYmVmY2RkMDg1YmRmNDBiZWRkZjU3ZjAzZmRjYjE4
MjVhZi4uZjk2YmE3YTM4ZTMzMWNkYWU0Y2Q1YmE5YjRkMjFjYjk5ZjNkMjQxNCAxMDA2NDQKLS0t
IGEvV2ViQ29yZS9iaW5kaW5ncy92OC9jdXN0b20vVjhFdmVudEN1c3RvbS5jcHAKKysrIGIvV2Vi
Q29yZS9iaW5kaW5ncy92OC9jdXN0b20vVjhFdmVudEN1c3RvbS5jcHAKQEAgLTQzLDYgKzQzLDcg
QEAKICNpbmNsdWRlICJWOERldmljZU1vdGlvbkV2ZW50LmgiCiAjaW5jbHVkZSAiVjhEZXZpY2VP
cmllbnRhdGlvbkV2ZW50LmgiCiAjaW5jbHVkZSAiVjhFcnJvckV2ZW50LmgiCisjaW5jbHVkZSAi
VjhIYXNoQ2hhbmdlRXZlbnQuaCIKICNpbmNsdWRlICJWOElEQkVycm9yRXZlbnQuaCIKICNpbmNs
dWRlICJWOElEQlN1Y2Nlc3NFdmVudC5oIgogI2luY2x1ZGUgIlY4S2V5Ym9hcmRFdmVudC5oIgpA
QCAtMTIwLDYgKzEyMSw4IEBAIHY4OjpIYW5kbGU8djg6OlZhbHVlPiB0b1Y4KEV2ZW50KiBpbXBs
KQogI2VuZGlmCiAgICAgICAgIHJldHVybiB0b1Y4KHN0YXRpY19jYXN0PFVJRXZlbnQqPihpbXBs
KSk7CiAgICAgfQorICAgIGlmIChpbXBsLT5pc0hhc2hDaGFuZ2VFdmVudCgpKQorICAgICAgICBy
ZXR1cm4gdG9WOChzdGF0aWNfY2FzdDxIYXNoQ2hhbmdlRXZlbnQqPihpbXBsKSk7CiAgICAgaWYg
KGltcGwtPmlzTXV0YXRpb25FdmVudCgpKQogICAgICAgICByZXR1cm4gdG9WOChzdGF0aWNfY2Fz
dDxNdXRhdGlvbkV2ZW50Kj4oaW1wbCkpOwogICAgIGlmIChpbXBsLT5pc092ZXJmbG93RXZlbnQo
KSkKZGlmZiAtLWdpdCBhL1dlYkNvcmUvZG9tL0RvY3VtZW50LmNwcCBiL1dlYkNvcmUvZG9tL0Rv
Y3VtZW50LmNwcAppbmRleCAyYmIyZDY5YmZlMDVmNzYyMzFiZWUzYmIwNTYxYzlhZDFlNTQzY2Nm
Li5kYjM2MzA0M2FjZDMwOWFiMmQ3ZDM0YTQzOWMzZDIwNThkNmI3NTFkIDEwMDY0NAotLS0gYS9X
ZWJDb3JlL2RvbS9Eb2N1bWVudC5jcHAKKysrIGIvV2ViQ29yZS9kb20vRG9jdW1lbnQuY3BwCkBA
IC02NCw2ICs2NCw3IEBACiAjaW5jbHVkZSAiRnJhbWVMb2FkZXIuaCIKICNpbmNsdWRlICJGcmFt
ZVRyZWUuaCIKICNpbmNsdWRlICJGcmFtZVZpZXcuaCIKKyNpbmNsdWRlICJIYXNoQ2hhbmdlRXZl
bnQuaCIKICNpbmNsdWRlICJIVE1MQWxsQ29sbGVjdGlvbi5oIgogI2luY2x1ZGUgIkhUTUxBbmNo
b3JFbGVtZW50LmgiCiAjaW5jbHVkZSAiSFRNTEJvZHlFbGVtZW50LmgiCkBAIC00NjIxLDExICs0
NjIyLDkgQEAgdm9pZCBEb2N1bWVudDo6ZW5xdWV1ZVBhZ2VzaG93RXZlbnQoUGFnZXNob3dFdmVu
dFBlcnNpc3RlbmNlIHBlcnNpc3RlZCkKICAgICBkaXNwYXRjaFdpbmRvd0V2ZW50KFBhZ2VUcmFu
c2l0aW9uRXZlbnQ6OmNyZWF0ZShldmVudE5hbWVzKCkucGFnZXNob3dFdmVudCwgcGVyc2lzdGVk
KSwgdGhpcyk7CiB9CiAKLXZvaWQgRG9jdW1lbnQ6OmVucXVldWVIYXNoY2hhbmdlRXZlbnQoY29u
c3QgU3RyaW5nJiAvKm9sZFVSTCovLCBjb25zdCBTdHJpbmcmIC8qbmV3VVJMKi8pCit2b2lkIERv
Y3VtZW50OjplbnF1ZXVlSGFzaGNoYW5nZUV2ZW50KGNvbnN0IFN0cmluZyYgb2xkVVJMLCBjb25z
dCBTdHJpbmcmIG5ld1VSTCkKIHsKLSAgICAvLyBGSVhNRTogaHR0cHM6Ly9idWdzLndlYmtpdC5v
cmcvc2hvd19idWcuY2dpP2lkPTM2MzM1IEhhc2hjaGFuZ2UgZXZlbnQgaXMgbm93IGl0cyBvd24g
aW50ZXJmYWNlIGFuZCB0YWtlcyB0d28KLSAgICAvLyAgIFVSTCBhcmd1bWVudHMgd2hpY2ggd2Ug
bmVlZCB0byBwYXNzIGluIGhlcmUuCi0gICAgZW5xdWV1ZUV2ZW50KEV2ZW50OjpjcmVhdGUoZXZl
bnROYW1lcygpLmhhc2hjaGFuZ2VFdmVudCwgZmFsc2UsIGZhbHNlKSk7CisgICAgZW5xdWV1ZUV2
ZW50KEhhc2hDaGFuZ2VFdmVudDo6Y3JlYXRlKG9sZFVSTCwgbmV3VVJMKSk7CiB9CiAKIHZvaWQg
RG9jdW1lbnQ6OmVucXVldWVQb3BzdGF0ZUV2ZW50KFBhc3NSZWZQdHI8U2VyaWFsaXplZFNjcmlw
dFZhbHVlPiBzdGF0ZU9iamVjdCkKZGlmZiAtLWdpdCBhL1dlYkNvcmUvZG9tL0V2ZW50LmNwcCBi
L1dlYkNvcmUvZG9tL0V2ZW50LmNwcAppbmRleCBjNzZmOTUxMjBlYzA5NDEwNmMxZTFkMWMwODY0
YTIyZjZjZjI5ODU3Li5iYjQwNGZhMjVjOTRhNmUxNWMxOTZlZWNjODJhOTA1OTcwMWZmYWQwIDEw
MDY0NAotLS0gYS9XZWJDb3JlL2RvbS9FdmVudC5jcHAKKysrIGIvV2ViQ29yZS9kb20vRXZlbnQu
Y3BwCkBAIC0xNzIsNiArMTcyLDExIEBAIGJvb2wgRXZlbnQ6OmlzQmVmb3JlTG9hZEV2ZW50KCkg
Y29uc3QKICAgICByZXR1cm4gZmFsc2U7CiB9CiAKK2Jvb2wgRXZlbnQ6OmlzSGFzaENoYW5nZUV2
ZW50KCkgY29uc3QKK3sKKyAgICByZXR1cm4gZmFsc2U7Cit9CisKICNpZiBFTkFCTEUoU1ZHKQog
Ym9vbCBFdmVudDo6aXNTVkdab29tRXZlbnQoKSBjb25zdAogewpkaWZmIC0tZ2l0IGEvV2ViQ29y
ZS9kb20vRXZlbnQuaCBiL1dlYkNvcmUvZG9tL0V2ZW50LmgKaW5kZXggYjk5MjIzNzg2ZmU3ZWEw
YTkyNDk3MjFmNjU3MmQyMWU5MDNlNDU4Ni4uMmEwMGVlZTE1ZmM1NDI5ZWFiMDYzZWRhODZmY2Uy
YTk3NTUzODhiNCAxMDA2NDQKLS0tIGEvV2ViQ29yZS9kb20vRXZlbnQuaAorKysgYi9XZWJDb3Jl
L2RvbS9FdmVudC5oCkBAIC0xMjMsNiArMTIzLDcgQEAgbmFtZXNwYWNlIFdlYkNvcmUgewogICAg
ICAgICB2aXJ0dWFsIGJvb2wgaXNXZWJLaXRBbmltYXRpb25FdmVudCgpIGNvbnN0OwogICAgICAg
ICB2aXJ0dWFsIGJvb2wgaXNXZWJLaXRUcmFuc2l0aW9uRXZlbnQoKSBjb25zdDsKICAgICAgICAg
dmlydHVhbCBib29sIGlzQmVmb3JlTG9hZEV2ZW50KCkgY29uc3Q7CisgICAgICAgIHZpcnR1YWwg
Ym9vbCBpc0hhc2hDaGFuZ2VFdmVudCgpIGNvbnN0OwogI2lmIEVOQUJMRShTVkcpCiAgICAgICAg
IHZpcnR1YWwgYm9vbCBpc1NWR1pvb21FdmVudCgpIGNvbnN0OwogI2VuZGlmCmRpZmYgLS1naXQg
YS9XZWJDb3JlL2RvbS9IYXNoQ2hhbmdlRXZlbnQuaCBiL1dlYkNvcmUvZG9tL0hhc2hDaGFuZ2VF
dmVudC5oCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAuLmYxZmE2YWZiZjllMmM1ZjdhM2M3N2MxYjgwNTVlMjJkOTVjNjVh
YmYKLS0tIC9kZXYvbnVsbAorKysgYi9XZWJDb3JlL2RvbS9IYXNoQ2hhbmdlRXZlbnQuaApAQCAt
MCwwICsxLDY1IEBACisvKgorICogQ29weXJpZ2h0IChDKSAyMDEwIEFwcGxlIEluYy4gQWxsIHJp
Z2h0cyByZXNlcnZlZC4KKyAqCisgKiBUaGlzIGxpYnJhcnkgaXMgZnJlZSBzb2Z0d2FyZTsgeW91
IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29yCisgKiBtb2RpZnkgaXQgdW5kZXIgdGhlIHRlcm1z
IG9mIHRoZSBHTlUgTGlicmFyeSBHZW5lcmFsIFB1YmxpYworICogTGljZW5zZSBhcyBwdWJsaXNo
ZWQgYnkgdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbjsgZWl0aGVyCisgKiB2ZXJzaW9uIDIg
b2YgdGhlIExpY2Vuc2UsIG9yIChhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uCisg
KgorICogVGhpcyBsaWJyYXJ5IGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2ls
bCBiZSB1c2VmdWwsCisgKiBidXQgV0lUSE9VVCBBTlkgV0FSUkFOVFk7IHdpdGhvdXQgZXZlbiB0
aGUgaW1wbGllZCB3YXJyYW50eSBvZgorICogTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MgRk9S
IEEgUEFSVElDVUxBUiBQVVJQT1NFLiAgU2VlIHRoZSBHTlUKKyAqIExpYnJhcnkgR2VuZXJhbCBQ
dWJsaWMgTGljZW5zZSBmb3IgbW9yZSBkZXRhaWxzLgorICoKKyAqIFlvdSBzaG91bGQgaGF2ZSBy
ZWNlaXZlZCBhIGNvcHkgb2YgdGhlIEdOVSBMaWJyYXJ5IEdlbmVyYWwgUHVibGljIExpY2Vuc2UK
KyAqIGFsb25nIHdpdGggdGhpcyBsaWJyYXJ5OyBzZWUgdGhlIGZpbGUgQ09QWUlORy5MSUIuICBJ
ZiBub3QsIHdyaXRlIHRvCisgKiB0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uLCBJbmMuLCA1
MSBGcmFua2xpbiBTdHJlZXQsIEZpZnRoIEZsb29yLAorICogQm9zdG9uLCBNQSAwMjExMC0xMzAx
LCBVU0EuCisgKgorICovCisKKyNpZm5kZWYgSGFzaENoYW5nZUV2ZW50X2gKKyNkZWZpbmUgSGFz
aENoYW5nZUV2ZW50X2gKKworI2luY2x1ZGUgIkV2ZW50LmgiCisjaW5jbHVkZSAiRXZlbnROYW1l
cy5oIgorCituYW1lc3BhY2UgV2ViQ29yZSB7CisKK2NsYXNzIEhhc2hDaGFuZ2VFdmVudCA6IHB1
YmxpYyBFdmVudCB7CitwdWJsaWM6CisgICAgdmlydHVhbCBib29sIGlzSGFzaENoYW5nZUV2ZW50
KCkgY29uc3QgeyByZXR1cm4gdHJ1ZTsgfQorCisgICAgc3RhdGljIFBhc3NSZWZQdHI8SGFzaENo
YW5nZUV2ZW50PiBjcmVhdGUoY29uc3QgU3RyaW5nJiBvbGRVUkwsIGNvbnN0IFN0cmluZyYgbmV3
VVJMKQorICAgIHsKKyAgICAgICAgcmV0dXJuIGFkb3B0UmVmKG5ldyBIYXNoQ2hhbmdlRXZlbnQo
b2xkVVJMLCBuZXdVUkwpKTsKKyAgICB9CisKKyAgICB2b2lkIGluaXRIYXNoQ2hhbmdlRXZlbnQo
Y29uc3QgQXRvbWljU3RyaW5nJiBldmVudFR5cGUsIGJvb2wgY2FuQnViYmxlLCBib29sIGNhbmNl
bGFibGUsIGNvbnN0IFN0cmluZyYgb2xkVVJMLCBjb25zdCBTdHJpbmcmIG5ld1VSTCkKKyAgICB7
CisgICAgICAgIGlmIChkaXNwYXRjaGVkKCkpCisgICAgICAgICAgICByZXR1cm47CisKKyAgICAg
ICAgaW5pdEV2ZW50KGV2ZW50VHlwZSwgY2FuQnViYmxlLCBjYW5jZWxhYmxlKTsKKworICAgICAg
ICBtX29sZFVSTCA9IG9sZFVSTDsKKyAgICAgICAgbV9uZXdVUkwgPSBuZXdVUkw7CisgICAgfQor
CisgICAgY29uc3QgU3RyaW5nJiBvbGRVUkwoKSBjb25zdCB7IHJldHVybiBtX29sZFVSTDsgfQor
ICAgIGNvbnN0IFN0cmluZyYgbmV3VVJMKCkgY29uc3QgeyByZXR1cm4gbV9uZXdVUkw7IH0KKwor
cHJpdmF0ZToKKyAgICBIYXNoQ2hhbmdlRXZlbnQoY29uc3QgU3RyaW5nJiBvbGRVUkwsIGNvbnN0
IFN0cmluZyYgbmV3VVJMKQorICAgICAgICA6IEV2ZW50KGV2ZW50TmFtZXMoKS5oYXNoY2hhbmdl
RXZlbnQsIGZhbHNlLCBmYWxzZSkKKyAgICAgICAgLCBtX29sZFVSTChvbGRVUkwpCisgICAgICAg
ICwgbV9uZXdVUkwobmV3VVJMKQorICAgIHt9CisKKyAgICBTdHJpbmcgbV9vbGRVUkw7CisgICAg
U3RyaW5nIG1fbmV3VVJMOworfTsKKworfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQorCisjZW5kaWYg
Ly8gSGFzaENoYW5nZUV2ZW50X2gKZGlmZiAtLWdpdCBhL1dlYkNvcmUvZG9tL0hhc2hDaGFuZ2VF
dmVudC5pZGwgYi9XZWJDb3JlL2RvbS9IYXNoQ2hhbmdlRXZlbnQuaWRsCm5ldyBmaWxlIG1vZGUg
MTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjYz
MDczYzRiMmYwYTg5NmFlZDUzY2U5OGU3NDBlZDA2NTYzYjJhMjEKLS0tIC9kZXYvbnVsbAorKysg
Yi9XZWJDb3JlL2RvbS9IYXNoQ2hhbmdlRXZlbnQuaWRsCkBAIC0wLDAgKzEsMzUgQEAKKy8qCisg
KiBDb3B5cmlnaHQgKEMpIDIwMTAgQXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICoK
KyAqIFRoaXMgbGlicmFyeSBpcyBmcmVlIHNvZnR3YXJlOyB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBp
dCBhbmQvb3IKKyAqIG1vZGlmeSBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBMaWJyYXJ5
IEdlbmVyYWwgUHVibGljCisgKiBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieSB0aGUgRnJlZSBTb2Z0
d2FyZSBGb3VuZGF0aW9uOyBlaXRoZXIKKyAqIHZlcnNpb24gMiBvZiB0aGUgTGljZW5zZSwgb3Ig
KGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KKyAqCisgKiBUaGlzIGxpYnJhcnkg
aXMgZGlzdHJpYnV0ZWQgaW4gdGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCwKKyAqIGJ1
dCBXSVRIT1VUIEFOWSBXQVJSQU5UWTsgd2l0aG91dCBldmVuIHRoZSBpbXBsaWVkIHdhcnJhbnR5
IG9mCisgKiBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBP
U0UuICBTZWUgdGhlIEdOVQorICogTGlicmFyeSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGZvciBt
b3JlIGRldGFpbHMuCisgKgorICogWW91IHNob3VsZCBoYXZlIHJlY2VpdmVkIGEgY29weSBvZiB0
aGUgR05VIExpYnJhcnkgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQorICogYWxvbmcgd2l0aCB0aGlz
IGxpYnJhcnk7IHNlZSB0aGUgZmlsZSBDT1BZSU5HLkxJQi4gIElmIG5vdCwgd3JpdGUgdG8KKyAq
IHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb24sIEluYy4sIDUxIEZyYW5rbGluIFN0cmVldCwg
RmlmdGggRmxvb3IsCisgKiBCb3N0b24sIE1BIDAyMTEwLTEzMDEsIFVTQS4KKyAqLworCittb2R1
bGUgZXZlbnRzIHsKKworICAgIC8vIEludHJvZHVjZWQgaW4gaHR0cDovL3d3dy53aGF0d2cub3Jn
L3NwZWNzL3dlYi1hcHBzL2N1cnJlbnQtd29yay9tdWx0aXBhZ2UvaGlzdG9yeS5odG1sI2V2ZW50
LWhhc2hjaGFuZ2UKKyAgICBpbnRlcmZhY2UgWworICAgICAgICBHZW5lcmF0ZUNvbnN0cnVjdG9y
CisgICAgXSBIYXNoQ2hhbmdlRXZlbnQgOiBFdmVudCB7CisgICAgICAgIHZvaWQgaW5pdEhhc2hD
aGFuZ2VFdmVudChpbiBET01TdHJpbmcgdHlwZSwgCisgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICBpbiBib29sZWFuIGNhbkJ1YmJsZSwgCisgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICBpbiBib29sZWFuIGNhbmNlbGFibGUsIAorICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgaW4gRE9NU3RyaW5nIG9sZFVSTCwgCisgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICBpbiBET01TdHJpbmcgbmV3VVJMKTsgCisgICAgICAgIHJlYWRvbmx5IGF0dHJpYnV0
ZSBET01TdHJpbmcgb2xkVVJMOworICAgICAgICByZWFkb25seSBhdHRyaWJ1dGUgRE9NU3RyaW5n
IG5ld1VSTDsKKyAgICB9OworCit9CmRpZmYgLS1naXQgYS9XZWJDb3JlL3BhZ2UvRE9NV2luZG93
LmlkbCBiL1dlYkNvcmUvcGFnZS9ET01XaW5kb3cuaWRsCmluZGV4IDdlNDhmOGM1MzExMmI2ZTAz
MTdlMTEyNWFmNTFiMGY5MzUzMzRmMTMuLmFjMzQ2MzdjZjIzNjBlNDdlNjFlNTlkN2E1MjIyMDg4
YzBkMDZiNmQgMTAwNjQ0Ci0tLSBhL1dlYkNvcmUvcGFnZS9ET01XaW5kb3cuaWRsCisrKyBiL1dl
YkNvcmUvcGFnZS9ET01XaW5kb3cuaWRsCkBAIC00OTcsNiArNDk3LDcgQEAgbW9kdWxlIHdpbmRv
dyB7CiAKICAgICAgICAgYXR0cmlidXRlIEV2ZW50Q29uc3RydWN0b3IgRXZlbnQ7CiAgICAgICAg
IGF0dHJpYnV0ZSBCZWZvcmVMb2FkRXZlbnRDb25zdHJ1Y3RvciBCZWZvcmVMb2FkRXZlbnQ7Cisg
ICAgICAgIGF0dHJpYnV0ZSBIYXNoQ2hhbmdlRXZlbnRDb25zdHJ1Y3RvciBIYXNoQ2hhbmdlRXZl
bnQ7CiAgICAgICAgIGF0dHJpYnV0ZSBLZXlib2FyZEV2ZW50Q29uc3RydWN0b3IgS2V5Ym9hcmRF
dmVudDsKICAgICAgICAgYXR0cmlidXRlIE1vdXNlRXZlbnRDb25zdHJ1Y3RvciBNb3VzZUV2ZW50
OwogICAgICAgICBhdHRyaWJ1dGUgTXV0YXRpb25FdmVudENvbnN0cnVjdG9yIE11dGF0aW9uRXZl
bnQ7Cg==
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>68158</attachid>
            <date>2010-09-20 17:01:14 -0700</date>
            <delta_ts>2010-09-20 17:22:25 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-36335-20100920170113.patch</filename>
            <type>text/plain</type>
            <size>34124</size>
            <attacher name="Mihai Parparita">mihaip</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL0NoYW5nZUxvZyBiL0xheW91dFRlc3RzL0NoYW5nZUxv
ZwppbmRleCBiNmEwZmMxZjQ1OGUzYmU0NDNjODEzOWE4MDY4OTNkYThhNDc1OGVlLi5mZmE4ZDdh
ZmJmMmM2NzU0OTViZWY2NGEyNmRjOThlNjgxNWYyMjFmIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0
cy9DaGFuZ2VMb2cKKysrIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMjUgQEAK
KzIwMTAtMDktMjAgIE1paGFpIFBhcnBhcml0YSAgPG1paGFpcEBjaHJvbWl1bS5vcmc+CisKKyAg
ICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgSGFzaGNoYW5nZSBl
dmVudCBpcyBubyBsb25nZXIgYSBzaW1wbGUgZXZlbnQsIG5lZWRzIHRvIGJlIGl0cyBvd24gaW50
ZXJmYWNlCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0z
NjMzNQorICAgICAgICAKKyAgICAgICAgQWRkIGV4cGxpY2l0IHRlc3QgZm9yIG5ld1VSTCBhbmQg
b2xkVVJMIHByb3BlcnRpZXMgb2YgaGFzaGNoYW5nZSBldmVudHMuCisgICAgICAgIEFkZCBIYXNo
Q2hhbmdlRXZlbnQgdG8gZXhwZWN0ZWQgZ2xvYmFsIG9iamVjdHMuCisgICAgICAgIFVwZGF0ZSBz
dGF0ZW9iamVjdHMgdGVzdHMgdG8gYWxzbyBjaGVjayBuZXdVUkwgb24gdGhlIGhhc2hjaGFuZ2Ug
ZXZlbnQuCisKKyAgICAgICAgVGhlIG9yaWdpbmFsIHZlcnNpb24gb2YgdGhpcyBwYXRjaCB3YXMg
d3JpdHRlbiBieQorICAgICAgICBTdGV2ZW4gTGFpIDxzM2xhbmNlQGhvdG1haWwuY29tPi4KKwor
ICAgICAgICAqIGZhc3QvZG9tL1dpbmRvdy93aW5kb3ctcHJvcGVydGllcy1leHBlY3RlZC50eHQ6
CisgICAgICAgICogZmFzdC9kb20vcHJvdG90eXBlLWluaGVyaXRhbmNlLWV4cGVjdGVkLnR4dDoK
KyAgICAgICAgKiBmYXN0L2pzL2dsb2JhbC1jb25zdHJ1Y3RvcnMtZXhwZWN0ZWQudHh0OgorICAg
ICAgICAqIGZhc3QvbG9hZGVyL2hhc2hjaGFuZ2UtZXZlbnQtcHJvcGVydGllcy1leHBlY3RlZC50
eHQ6IEFkZGVkLgorICAgICAgICAqIGZhc3QvbG9hZGVyL2hhc2hjaGFuZ2UtZXZlbnQtcHJvcGVy
dGllcy5odG1sOiBBZGRlZC4KKyAgICAgICAgKiBmYXN0L2xvYWRlci9zdGF0ZW9iamVjdHMvZG9j
dW1lbnQtZGVzdHJveWVkLW5hdmlnYXRlLWJhY2std2l0aC1mcmFnbWVudC1zY3JvbGwuaHRtbDoK
KyAgICAgICAgKiBmYXN0L2xvYWRlci9zdGF0ZW9iamVjdHMvcHVzaHN0YXRlLXdpdGgtZnJhZ21l
bnQtdXJscy1hbmQtaGFzaGNoYW5nZS5odG1sOgorCiAyMDEwLTA5LTIwICBBbmR5IEVzdGVzICA8
YWVzdGVzQGFwcGxlLmNvbT4KIAogICAgICAgICBSZXZpZXdlZCBieSBBZGFtIEJhcnRoLgpkaWZm
IC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9kb20vV2luZG93L3dpbmRvdy1wcm9wZXJ0aWVzLWV4
cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2Zhc3QvZG9tL1dpbmRvdy93aW5kb3ctcHJvcGVydGll
cy1leHBlY3RlZC50eHQKaW5kZXggZTU1M2JlY2VkOGU3ZGRmZDM2YTc0MWE2M2Y1ZmFjZmY5YjA1
OGY2ZS4uZDQ4NGNmZTUxMmIzZTMzNTA2N2E4ZGM4YTQxNTQ0MWEwOGU0NjI4ZSAxMDA2NDQKLS0t
IGEvTGF5b3V0VGVzdHMvZmFzdC9kb20vV2luZG93L3dpbmRvdy1wcm9wZXJ0aWVzLWV4cGVjdGVk
LnR4dAorKysgYi9MYXlvdXRUZXN0cy9mYXN0L2RvbS9XaW5kb3cvd2luZG93LXByb3BlcnRpZXMt
ZXhwZWN0ZWQudHh0CkBAIC0xMDc5LDYgKzEwNzksOCBAQCB3aW5kb3cuSFRNTFVMaXN0RWxlbWVu
dCBbb2JqZWN0IEhUTUxVTGlzdEVsZW1lbnRDb25zdHJ1Y3Rvcl0KIHdpbmRvdy5IVE1MVUxpc3RF
bGVtZW50LnByb3RvdHlwZSBbcHJpbnRlZCBhYm92ZSBhcyB3aW5kb3cuRWxlbWVudC5wcm90b3R5
cGVdCiB3aW5kb3cuSFRNTFZpZGVvRWxlbWVudCBbb2JqZWN0IEhUTUxWaWRlb0VsZW1lbnRDb25z
dHJ1Y3Rvcl0KIHdpbmRvdy5IVE1MVmlkZW9FbGVtZW50LnByb3RvdHlwZSBbcHJpbnRlZCBhYm92
ZSBhcyB3aW5kb3cuRWxlbWVudC5wcm90b3R5cGVdCit3aW5kb3cuSGFzaENoYW5nZUV2ZW50IFtv
YmplY3QgSGFzaENoYW5nZUV2ZW50Q29uc3RydWN0b3JdCit3aW5kb3cuSGFzaENoYW5nZUV2ZW50
LnByb3RvdHlwZSBbcHJpbnRlZCBhYm92ZSBhcyB3aW5kb3cuRXZlbnQucHJvdG90eXBlXQogd2lu
ZG93LkltYWdlIFtvYmplY3QgSW1hZ2VDb25zdHJ1Y3Rvcl0KIHdpbmRvdy5JbWFnZS5wcm90b3R5
cGUgW3ByaW50ZWQgYWJvdmUgYXMgd2luZG93LkVsZW1lbnQucHJvdG90eXBlXQogd2luZG93Lklt
YWdlRGF0YSBbb2JqZWN0IEltYWdlRGF0YUNvbnN0cnVjdG9yXQpkaWZmIC0tZ2l0IGEvTGF5b3V0
VGVzdHMvZmFzdC9kb20vcHJvdG90eXBlLWluaGVyaXRhbmNlLWV4cGVjdGVkLnR4dCBiL0xheW91
dFRlc3RzL2Zhc3QvZG9tL3Byb3RvdHlwZS1pbmhlcml0YW5jZS1leHBlY3RlZC50eHQKaW5kZXgg
NmU4ZjFjODNlNzU3Nzg1ZmQ3ZjEzNDhhZGU4ZThlNDNjY2QwODNmNS4uM2I0NWNlODhmNTIyMGYy
YzU2YWRmNmQxZDNlNjk4Yjc1Y2NkZTZjYiAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvZmFzdC9k
b20vcHJvdG90eXBlLWluaGVyaXRhbmNlLWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9m
YXN0L2RvbS9wcm90b3R5cGUtaW5oZXJpdGFuY2UtZXhwZWN0ZWQudHh0CkBAIC0yMzksNiArMjM5
LDggQEAgUEFTUyBpbm5lci5IVE1MVUxpc3RFbGVtZW50LmlzSW5uZXIgaXMgdHJ1ZQogUEFTUyBp
bm5lci5IVE1MVUxpc3RFbGVtZW50LmNvbnN0cnVjdG9yLmlzSW5uZXIgaXMgdHJ1ZQogUEFTUyBp
bm5lci5IVE1MVmlkZW9FbGVtZW50LmlzSW5uZXIgaXMgdHJ1ZQogUEFTUyBpbm5lci5IVE1MVmlk
ZW9FbGVtZW50LmNvbnN0cnVjdG9yLmlzSW5uZXIgaXMgdHJ1ZQorUEFTUyBpbm5lci5IYXNoQ2hh
bmdlRXZlbnQuaXNJbm5lciBpcyB0cnVlCitQQVNTIGlubmVyLkhhc2hDaGFuZ2VFdmVudC5jb25z
dHJ1Y3Rvci5pc0lubmVyIGlzIHRydWUKIFBBU1MgaW5uZXIuSW1hZ2UuaXNJbm5lciBpcyB0cnVl
CiBQQVNTIGlubmVyLkltYWdlLmNvbnN0cnVjdG9yLmlzSW5uZXIgaXMgdHJ1ZQogUEFTUyBpbm5l
ci5JbWFnZURhdGEuaXNJbm5lciBpcyB0cnVlCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0
L2pzL2dsb2JhbC1jb25zdHJ1Y3RvcnMtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvZmFzdC9q
cy9nbG9iYWwtY29uc3RydWN0b3JzLWV4cGVjdGVkLnR4dAppbmRleCA1YWEwZDI4MWZjOGE1NjA4
MWNmOWE4NWE4MWQ5NzZkNmI3ZGI3ZTM3Li45Nzg5M2RhNzMxMzM4ZjdlZjIwMjg0ZDk1ZTk4M2Y1
YjViOThjZjRkIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9mYXN0L2pzL2dsb2JhbC1jb25zdHJ1
Y3RvcnMtZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL2Zhc3QvanMvZ2xvYmFsLWNvbnN0
cnVjdG9ycy1leHBlY3RlZC50eHQKQEAgLTExNSw2ICsxMTUsNyBAQCBQQVNTIEhUTUxUZXh0QXJl
YUVsZW1lbnQudG9TdHJpbmcoKSBpcyAnW29iamVjdCBIVE1MVGV4dEFyZWFFbGVtZW50Q29uc3Ry
dWN0b3JdJwogUEFTUyBIVE1MVGl0bGVFbGVtZW50LnRvU3RyaW5nKCkgaXMgJ1tvYmplY3QgSFRN
TFRpdGxlRWxlbWVudENvbnN0cnVjdG9yXScKIFBBU1MgSFRNTFVMaXN0RWxlbWVudC50b1N0cmlu
ZygpIGlzICdbb2JqZWN0IEhUTUxVTGlzdEVsZW1lbnRDb25zdHJ1Y3Rvcl0nCiBQQVNTIEhUTUxW
aWRlb0VsZW1lbnQudG9TdHJpbmcoKSBpcyAnW29iamVjdCBIVE1MVmlkZW9FbGVtZW50Q29uc3Ry
dWN0b3JdJworUEFTUyBIYXNoQ2hhbmdlRXZlbnQudG9TdHJpbmcoKSBpcyAnW29iamVjdCBIYXNo
Q2hhbmdlRXZlbnRDb25zdHJ1Y3Rvcl0nCiBQQVNTIEltYWdlLnRvU3RyaW5nKCkgaXMgJ1tvYmpl
Y3QgSW1hZ2VDb25zdHJ1Y3Rvcl0nCiBQQVNTIEltYWdlRGF0YS50b1N0cmluZygpIGlzICdbb2Jq
ZWN0IEltYWdlRGF0YUNvbnN0cnVjdG9yXScKIFBBU1MgS2V5Ym9hcmRFdmVudC50b1N0cmluZygp
IGlzICdbb2JqZWN0IEtleWJvYXJkRXZlbnRDb25zdHJ1Y3Rvcl0nCmRpZmYgLS1naXQgYS9MYXlv
dXRUZXN0cy9mYXN0L2xvYWRlci9oYXNoY2hhbmdlLWV2ZW50LXByb3BlcnRpZXMtZXhwZWN0ZWQu
dHh0IGIvTGF5b3V0VGVzdHMvZmFzdC9sb2FkZXIvaGFzaGNoYW5nZS1ldmVudC1wcm9wZXJ0aWVz
LWV4cGVjdGVkLnR4dApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5lZWI2ZjUyNTZmZTcyMWRhNDUzMWE4YmZhODJmZWYy
ZTVhOTZjYjQxCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC9sb2FkZXIvaGFz
aGNoYW5nZS1ldmVudC1wcm9wZXJ0aWVzLWV4cGVjdGVkLnR4dApAQCAtMCwwICsxLDEyIEBACitU
ZXN0cyB0aGF0IGhhc2hjaGFuZ2UgZXZlbnRzIGhhdmUgdGhlIGV4cGVjdGVkIG5ld1VSTCBhbmQg
b2xkVVJMIHByb3BlcnRpZXMuCisKK09uIHN1Y2Nlc3MsIHlvdSB3aWxsIHNlZSBhIHNlcmllcyBv
ZiAiUEFTUyIgbWVzc2FnZXMsIGZvbGxvd2VkIGJ5ICJURVNUIENPTVBMRVRFIi4KKworaGFzaGNo
YW5nZSBmaXJlZCB3aXRoIG9sZFVSTCBoYXNoICJbbm9uZV0iIGFuZCBuZXdVUkwgaGFzaCAiI3N0
YXRlMSIKK2hhc2hjaGFuZ2UgZmlyZWQgd2l0aCBvbGRVUkwgaGFzaCAiI3N0YXRlMSIgYW5kIG5l
d1VSTCBoYXNoICIjc3RhdGUyIgoraGFzaGNoYW5nZSBmaXJlZCB3aXRoIG9sZFVSTCBoYXNoICIj
c3RhdGUyIiBhbmQgbmV3VVJMIGhhc2ggIiNzdGF0ZTEiCitoYXNoY2hhbmdlIGZpcmVkIHdpdGgg
b2xkVVJMIGhhc2ggIiNzdGF0ZTEiIGFuZCBuZXdVUkwgaGFzaCAiW25vbmVdIgorUEFTUyBzdWNj
ZXNzZnVsbHlQYXJzZWQgaXMgdHJ1ZQorCitURVNUIENPTVBMRVRFCisKZGlmZiAtLWdpdCBhL0xh
eW91dFRlc3RzL2Zhc3QvbG9hZGVyL2hhc2hjaGFuZ2UtZXZlbnQtcHJvcGVydGllcy5odG1sIGIv
TGF5b3V0VGVzdHMvZmFzdC9sb2FkZXIvaGFzaGNoYW5nZS1ldmVudC1wcm9wZXJ0aWVzLmh0bWwK
bmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMC4uNWNhOWQwNjRlNTczNGYyMzJlOTljZjZjOTIyMmIzYTk3YjE3Mjg0NQotLS0g
L2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2Zhc3QvbG9hZGVyL2hhc2hjaGFuZ2UtZXZlbnQt
cHJvcGVydGllcy5odG1sCkBAIC0wLDAgKzEsNTMgQEAKKzwhRE9DVFlQRSBodG1sPgorPGh0bWw+
Cis8Ym9keT4KKzxsaW5rIHJlbD0ic3R5bGVzaGVldCIgaHJlZj0iLi4vanMvcmVzb3VyY2VzL2pz
LXRlc3Qtc3R5bGUuY3NzIiB0eXBlPSJ0ZXh0L2NzcyI+Cis8c2NyaXB0IHNyYz0iLi4vanMvcmVz
b3VyY2VzL2pzLXRlc3QtcHJlLmpzIj48L3NjcmlwdD4KKzxkaXYgaWQ9ImRlc2NyaXB0aW9uIj48
L2Rpdj4KKzxwcmUgaWQ9ImNvbnNvbGUiPjwvcHJlPgorPHNjcmlwdD4KK2Rlc2NyaXB0aW9uKCdU
ZXN0cyB0aGF0IGhhc2hjaGFuZ2UgZXZlbnRzIGhhdmUgdGhlIGV4cGVjdGVkIG5ld1VSTCBhbmQg
b2xkVVJMIHByb3BlcnRpZXMuJyk7CisKK2Z1bmN0aW9uIGhhc2hPZih1cmwpCit7CisgICAgdmFy
IGhhc2hJbmRleCA9IHVybC5sYXN0SW5kZXhPZignIycpOworICAgIHJldHVybiBoYXNoSW5kZXgg
IT0gLTEgPyB1cmwuc3Vic3RyaW5nKGhhc2hJbmRleCkgOiAnW25vbmVdJzsKK30KKwordmFyIGdv
aW5nRm9yd2FyZCA9IHRydWU7CisKK29ubG9hZCA9IGZ1bmN0aW9uKCkKK3sKKyAgICBzZXRUaW1l
b3V0KGZ1bmN0aW9uKCkge2xvY2F0aW9uLmhyZWYgPSAnI3N0YXRlMSc7fSwgMCk7Cit9OworCitv
bmhhc2hjaGFuZ2UgPSBmdW5jdGlvbihldmVudCkKK3sKKyAgICBkZWJ1ZygnaGFzaGNoYW5nZSBm
aXJlZCB3aXRoIG9sZFVSTCBoYXNoICInICsgaGFzaE9mKGV2ZW50Lm9sZFVSTCkgKyAnIiBhbmQg
bmV3VVJMIGhhc2ggIicgKyBoYXNoT2YoZXZlbnQubmV3VVJMKSArICciJyk7CisgICAgCisgICAg
c3dpdGNoIChoYXNoT2YoZXZlbnQubmV3VVJMKSkgeworICAgICAgICBjYXNlICcjc3RhdGUxJzoK
KyAgICAgICAgICAgIGlmIChnb2luZ0ZvcndhcmQpCisgICAgICAgICAgICAgICAgbG9jYXRpb24u
aHJlZiA9ICcjc3RhdGUyJzsKKyAgICAgICAgICAgIGVsc2UKKyAgICAgICAgICAgICAgICBoaXN0
b3J5LmJhY2soKTsKKyAgICAgICAgICAgIGJyZWFrOworICAgICAgICBjYXNlICcjc3RhdGUyJzoK
KyAgICAgICAgICAgIGlmIChnb2luZ0ZvcndhcmQpIHsKKyAgICAgICAgICAgICAgICBnb2luZ0Zv
cndhcmQgPSBmYWxzZTsKKyAgICAgICAgICAgICAgICBoaXN0b3J5LmJhY2soKTsKKyAgICAgICAg
ICAgIH0gZWxzZSB7CisgICAgICAgICAgICAgICAgdGVzdEZhaWxlZCgnc2hvdWxkIGFsd2F5cyBi
ZSBnb2luZyBmb3J3YXJkIGF0ICNzdGF0ZTInKTsKKyAgICAgICAgICAgIH0KKyAgICAgICAgICAg
IGJyZWFrOworICAgICAgICBjYXNlICdbbm9uZV0nOgorICAgICAgICAgICAgZmluaXNoSlNUZXN0
KCk7CisgICAgICAgICAgICBicmVhazsKKyAgICB9Cit9OworCit2YXIgc3VjY2Vzc2Z1bGx5UGFy
c2VkID0gdHJ1ZTsKK3ZhciBqc1Rlc3RJc0FzeW5jID0gdHJ1ZTsKKzwvc2NyaXB0PgorPHNjcmlw
dCBzcmM9Ii4uL2pzL3Jlc291cmNlcy9qcy10ZXN0LXBvc3QuanMiPjwvc2NyaXB0PgorPC9odG1s
PgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9sb2FkZXIvc3RhdGVvYmplY3RzL2RvY3Vt
ZW50LWRlc3Ryb3llZC1uYXZpZ2F0ZS1iYWNrLXdpdGgtZnJhZ21lbnQtc2Nyb2xsLmh0bWwgYi9M
YXlvdXRUZXN0cy9mYXN0L2xvYWRlci9zdGF0ZW9iamVjdHMvZG9jdW1lbnQtZGVzdHJveWVkLW5h
dmlnYXRlLWJhY2std2l0aC1mcmFnbWVudC1zY3JvbGwuaHRtbAppbmRleCBkYTUwMGFiODViNmIz
NmQzNWFmZGRmYmQwOTdmNDUxYmVmNDU4NmNlLi4xMWYzNDhmZTM4NjIwMGVmM2VmZjM4NDU0ZDM0
MDA5YWFhYTA4NmQxIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9mYXN0L2xvYWRlci9zdGF0ZW9i
amVjdHMvZG9jdW1lbnQtZGVzdHJveWVkLW5hdmlnYXRlLWJhY2std2l0aC1mcmFnbWVudC1zY3Jv
bGwuaHRtbAorKysgYi9MYXlvdXRUZXN0cy9mYXN0L2xvYWRlci9zdGF0ZW9iamVjdHMvZG9jdW1l
bnQtZGVzdHJveWVkLW5hdmlnYXRlLWJhY2std2l0aC1mcmFnbWVudC1zY3JvbGwuaHRtbApAQCAt
OSwxMSArOSwxNiBAQCBpZiAod2luZG93LmxheW91dFRlc3RDb250cm9sbGVyKSB7CiAgICAgbGF5
b3V0VGVzdENvbnRyb2xsZXIud2FpdFVudGlsRG9uZSgpOwogfQogCi1mdW5jdGlvbiBsYXN0UGF0
aENvbXBvbmVudCgpCitmdW5jdGlvbiBsYXN0UGF0aENvbXBvbmVudCh1cmwpCiB7Ci0gICAgcmV0
dXJuIHdpbmRvdy5sb2NhdGlvbi5ocmVmLnNwbGl0KCcvJykucG9wKCk7CisgICAgcmV0dXJuIHVy
bC5zcGxpdCgnLycpLnBvcCgpOwogfQogCitmdW5jdGlvbiBoYXNoT2YodXJsKQoreworICAgIHJl
dHVybiB1cmwuc3Vic3RyaW5nKHVybC5sYXN0SW5kZXhPZignIycpKTsKK30KKyAKIGZ1bmN0aW9u
IHJ1bkZpcnN0U3RhZ2VPZlRlc3QoKQogeyAgIAogICAgIGhpc3RvcnkucmVwbGFjZVN0YXRlKCJG
aXJzdEVudHJ5IiwgbnVsbCwgIiNGaXJzdEVudHJ5Iik7CkBAIC0yMyw3ICsyOCw3IEBAIGZ1bmN0
aW9uIHJ1bkZpcnN0U3RhZ2VPZlRlc3QoKQogCiBmdW5jdGlvbiBydW5TZWNvbmRTdGFnZU9mVGVz
dCgpCiB7Ci0gICAgYWxlcnQoIkxhc3QgcGF0aCBjb21wb25lbnQgb2YgbG9jYXRpb24gaXMgIiAr
IGxhc3RQYXRoQ29tcG9uZW50KCkpOworICAgIGFsZXJ0KCJMYXN0IHBhdGggY29tcG9uZW50IG9m
IGxvY2F0aW9uIGlzICIgKyBsYXN0UGF0aENvbXBvbmVudChsb2NhdGlvbi5ocmVmKSk7CiAgICAg
c2V0VGltZW91dCgiaGlzdG9yeS5iYWNrKCk7IiwgMCk7CiB9CiAKQEAgLTQ1LDcgKzUwLDcgQEAg
ZnVuY3Rpb24gcnVuVGVzdCgpCiAKIHZhciBiZWdhblRlc3QgPSBmYWxzZTsKIAotZnVuY3Rpb24g
c3RhdGVQb3BwZWQoKQorb25wb3BzdGF0ZSA9IGZ1bmN0aW9uKCkKIHsKICAgICAvLyBUaGUgZmly
c3QgdGltZSBwb3BzdGF0ZSBmaXJlcywgaXQncyBiZWNhdXNlIHRoZSBwYWdlIGhhcyBmaW5pc2hl
ZCBsb2FkaW5nLgogICAgIC8vIE9ubHkgdGhlbiBjYW4gd2UgYmVnaW4gdGhlIHRlc3QuCkBAIC03
OSwxMCArODQsMTAgQEAgZnVuY3Rpb24gc3RhdGVQb3BwZWQoKQogICAgIH0sIDApOwogfQogCi1m
dW5jdGlvbiBoYXNoQ2hhbmdlZCgpCitvbmhhc2hjaGFuZ2UgPSBmdW5jdGlvbihldmVudCkKIHsK
LSAgICBhbGVydCgiaGFzaENoYW5nZWQgLSBMYXN0IHBhdGggY29tcG9uZW50IG9mIGxvY2F0aW9u
IGlzICIgKyBsYXN0UGF0aENvbXBvbmVudCgpKTsKLSAgICBpZiAod2luZG93LmxvY2F0aW9uLmhh
c2ggPT0gIiNGaXJzdEVudHJ5V2lsbExhdGVyQmVSZWFjdGl2YXRlZCIpIHsKKyAgIGFsZXJ0KCJo
YXNoQ2hhbmdlZCAtIExhc3QgcGF0aCBjb21wb25lbnQgb2YgbG9jYXRpb24gaXMgIiArIGxhc3RQ
YXRoQ29tcG9uZW50KGV2ZW50Lm5ld1VSTCkpOworICAgaWYgKGhhc2hPZihldmVudC5uZXdVUkwp
ID09ICIjRmlyc3RFbnRyeVdpbGxMYXRlckJlUmVhY3RpdmF0ZWQiKSB7CiAgICAgICAgIGFsZXJ0
KCJUZXN0IGNvbXBsZXRlIik7CiAgICAgICAgIHNlc3Npb25TdG9yYWdlLmNsZWFyKCk7CiAgICAg
ICAgIGlmICh3aW5kb3cubGF5b3V0VGVzdENvbnRyb2xsZXIpCkBAIC05MSw3ICs5Niw3IEBAIGZ1
bmN0aW9uIGhhc2hDaGFuZ2VkKCkKIH0KIAogPC9zY3JpcHQ+Ci08Ym9keSBvbnBvcHN0YXRlPSJz
dGF0ZVBvcHBlZCgpOyIgb25oYXNoY2hhbmdlPSJoYXNoQ2hhbmdlZCgpOyIgb251bmxvYWQ9Ii8q
IGRpc2FibGUgcGFnZSBjYWNoZSAqLyI+Cis8Ym9keSBvbnVubG9hZD0iLyogZGlzYWJsZSBwYWdl
IGNhY2hlICovIj4KIDxwcmU+CiBUaGlzIHRlc3Q6CiAtQnVpbGRzIHVwIGEgbGlzdCBvZiBzdGF0
ZSBvYmplY3QgZW50cmllcyB3aXRoIGZyYWdtZW50IFVSTHMuCmRpZmYgLS1naXQgYS9MYXlvdXRU
ZXN0cy9mYXN0L2xvYWRlci9zdGF0ZW9iamVjdHMvcHVzaHN0YXRlLXdpdGgtZnJhZ21lbnQtdXJs
cy1hbmQtaGFzaGNoYW5nZS5odG1sIGIvTGF5b3V0VGVzdHMvZmFzdC9sb2FkZXIvc3RhdGVvYmpl
Y3RzL3B1c2hzdGF0ZS13aXRoLWZyYWdtZW50LXVybHMtYW5kLWhhc2hjaGFuZ2UuaHRtbAppbmRl
eCBhOTJkN2NjNzUxMzlkZGE0MDk1ZGFhMmZiNWZjMGEyMzNlNzE3NWY2Li4wN2M3ODRkZDc4MmRi
OGVjOTFlYTA1M2IzMTZhZTk5NjI1ZmQzNzQ4IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9mYXN0
L2xvYWRlci9zdGF0ZW9iamVjdHMvcHVzaHN0YXRlLXdpdGgtZnJhZ21lbnQtdXJscy1hbmQtaGFz
aGNoYW5nZS5odG1sCisrKyBiL0xheW91dFRlc3RzL2Zhc3QvbG9hZGVyL3N0YXRlb2JqZWN0cy9w
dXNoc3RhdGUtd2l0aC1mcmFnbWVudC11cmxzLWFuZC1oYXNoY2hhbmdlLmh0bWwKQEAgLTM5LDkg
KzM5LDkgQEAgZnVuY3Rpb24gcnVuVGVzdCgpCiAgICAgaGlzdG9yeS5iYWNrKCk7CiB9CiAKLWZ1
bmN0aW9uIGxhc3RQYXRoQ29tcG9uZW50KCkKK2Z1bmN0aW9uIGxhc3RQYXRoQ29tcG9uZW50KHVy
bCkKIHsKLSAgICByZXR1cm4gd2luZG93LmxvY2F0aW9uLmhyZWYuc3BsaXQoJy8nKS5wb3AoKTsK
KyAgICByZXR1cm4gdXJsLnNwbGl0KCcvJykucG9wKCk7CiB9CiAKIHZhciBiZWdhblRlc3QgPSBm
YWxzZTsKQEAgLTU2LDE2ICs1NiwxNiBAQCBvbnBvcHN0YXRlID0gZnVuY3Rpb24oZXZlbnQpCiAg
ICAgICAgIHJldHVybjsKICAgICB9CiAKLSAgICBsb2coIlN0YXRlIHBvcHBlZCB3aXRoIGV2ZW50
ICIgKyBldmVudC5zdGF0ZSArICIgKHR5cGUgIiArIHR5cGVvZiBldmVudC5zdGF0ZSArICIpIGFu
ZCBsYXN0IHBhdGggY29tcG9uZW50ICIgKyBsYXN0UGF0aENvbXBvbmVudCgpKTsKKyAgICBsb2co
IlN0YXRlIHBvcHBlZCB3aXRoIGV2ZW50ICIgKyBldmVudC5zdGF0ZSArICIgKHR5cGUgIiArIHR5
cGVvZiBldmVudC5zdGF0ZSArICIpIGFuZCBsYXN0IHBhdGggY29tcG9uZW50ICIgKyBsYXN0UGF0
aENvbXBvbmVudChsb2NhdGlvbi5ocmVmKSk7CiAgICAgaWYgKGV2ZW50LnN0YXRlICE9ICJPcmln
aW5hbEVudHJ5IikKICAgICAgICAgc2V0VGltZW91dCgiaGlzdG9yeS5iYWNrKCk7IiwgMCk7CiAg
ICAgZWxzZSBpZiAod2luZG93LmxheW91dFRlc3RDb250cm9sbGVyKQogICAgICAgICBsYXlvdXRU
ZXN0Q29udHJvbGxlci5ub3RpZnlEb25lKCk7CiB9CiAKLW9uaGFzaGNoYW5nZSA9IGZ1bmN0aW9u
KCkKK29uaGFzaGNoYW5nZSA9IGZ1bmN0aW9uKGV2ZW50KQogewotICAgIGxvZygiSGFzaCBjaGFu
Z2UgZmlyZWQgYW5kIGxhc3QgcGF0aCBjb21wb25lbnQgaXMgIiArIGxhc3RQYXRoQ29tcG9uZW50
KCkpOworICAgIGxvZygiSGFzaCBjaGFuZ2UgZmlyZWQgYW5kIGxhc3QgcGF0aCBjb21wb25lbnQg
aXMgIiArIGxhc3RQYXRoQ29tcG9uZW50KGV2ZW50Lm5ld1VSTCkpOwogfQogCiA8L3NjcmlwdD4K
ZGlmZiAtLWdpdCBhL1dlYkNvcmUvQ01ha2VMaXN0cy50eHQgYi9XZWJDb3JlL0NNYWtlTGlzdHMu
dHh0CmluZGV4IDJmYjdkMzlkNmIxOGYzZjY5NDQ4NmMyZTQxNzlhNzdlZjRlYjViM2QuLmVlYjg4
YjE3YWRkODAzN2YwY2JhODlmNjcwYTBkOWM0NDhlZmQ5ZmEgMTAwNjQ0Ci0tLSBhL1dlYkNvcmUv
Q01ha2VMaXN0cy50eHQKKysrIGIvV2ViQ29yZS9DTWFrZUxpc3RzLnR4dApAQCAtMTY0LDYgKzE2
NCw3IEBAIFNFVChXZWJDb3JlX0lETF9GSUxFUwogICAgIGRvbS9FcnJvckV2ZW50LmlkbAogICAg
IGRvbS9FdmVudEV4Y2VwdGlvbi5pZGwKICAgICBkb20vRXZlbnQuaWRsCisgICAgZG9tL0hhc2hD
aGFuZ2VFdmVudC5pZGwKICAgICBkb20vS2V5Ym9hcmRFdmVudC5pZGwKICAgICBkb20vTWVzc2Fn
ZUNoYW5uZWwuaWRsCiAgICAgZG9tL01lc3NhZ2VFdmVudC5pZGwKZGlmZiAtLWdpdCBhL1dlYkNv
cmUvQ2hhbmdlTG9nIGIvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggY2NiNTk0ZTNhNzZhNjdlMTI3
YmNmZmY4ZGM1MzE1NjAzOTBhYWU3MC4uYzc3NjNmNDM1NDhlOWI1NWUxOWJmYThjNmIzZjk5MDE3
YTAwM2ZiNyAxMDA2NDQKLS0tIGEvV2ViQ29yZS9DaGFuZ2VMb2cKKysrIGIvV2ViQ29yZS9DaGFu
Z2VMb2cKQEAgLTEsMyArMSw0NCBAQAorMjAxMC0wOS0yMCAgTWloYWkgUGFycGFyaXRhICA8bWlo
YWlwQGNocm9taXVtLm9yZz4KKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4K
KworICAgICAgICBIYXNoY2hhbmdlIGV2ZW50IGlzIG5vIGxvbmdlciBhIHNpbXBsZSBldmVudCwg
bmVlZHMgdG8gYmUgaXRzIG93biBpbnRlcmZhY2UKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtp
dC5vcmcvc2hvd19idWcuY2dpP2lkPTM2MzM1CisgICAgICAgIAorICAgICAgICBBZGQgSGFzaENo
YW5nZUV2ZW50LmlkbCBhbmQgc3VwcG9ydGluZyBmaWxlcy9jaGFuZ2VzLgorCisgICAgICAgIFRl
c3Q6IGZhc3QvbG9hZGVyL2hhc2hjaGFuZ2UtZXZlbnQtcHJvcGVydGllcy5odG1sCisKKyAgICAg
ICAgVGhlIG9yaWdpbmFsIHZlcnNpb24gb2YgdGhpcyBwYXRjaCB3YXMgd3JpdHRlbiBieQorICAg
ICAgICBTdGV2ZW4gTGFpIDxzM2xhbmNlQGhvdG1haWwuY29tPi4KKworICAgICAgICAqIENNYWtl
TGlzdHMudHh0OgorICAgICAgICAqIERlcml2ZWRTb3VyY2VzLmNwcDoKKyAgICAgICAgKiBEZXJp
dmVkU291cmNlcy5tYWtlOgorICAgICAgICAqIEdOVW1ha2VmaWxlLmFtOgorICAgICAgICAqIFdl
YkNvcmUuZ3lwaToKKyAgICAgICAgKiBXZWJDb3JlLnByaToKKyAgICAgICAgKiBXZWJDb3JlLnZj
cHJvai9XZWJDb3JlLnZjcHJvajoKKyAgICAgICAgKiBXZWJDb3JlLnhjb2RlcHJvai9wcm9qZWN0
LnBieHByb2o6CisgICAgICAgICogYmluZGluZ3MvanMvSlNFdmVudEN1c3RvbS5jcHA6CisgICAg
ICAgIChXZWJDb3JlOjp0b0pTKToKKyAgICAgICAgKiBiaW5kaW5ncy92OC9jdXN0b20vVjhFdmVu
dEN1c3RvbS5jcHA6CisgICAgICAgIChXZWJDb3JlOjp0b1Y4KToKKyAgICAgICAgKiBkb20vRG9j
dW1lbnQuY3BwOgorICAgICAgICAoV2ViQ29yZTo6RG9jdW1lbnQ6OmVucXVldWVIYXNoY2hhbmdl
RXZlbnQpOgorICAgICAgICAqIGRvbS9FdmVudC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpFdmVu
dDo6aXNIYXNoQ2hhbmdlRXZlbnQpOgorICAgICAgICAqIGRvbS9FdmVudC5oOgorICAgICAgICAq
IGRvbS9IYXNoQ2hhbmdlRXZlbnQuaDogQWRkZWQuCisgICAgICAgIChXZWJDb3JlOjpIYXNoQ2hh
bmdlRXZlbnQ6OmlzSGFzaENoYW5nZUV2ZW50KToKKyAgICAgICAgKFdlYkNvcmU6Okhhc2hDaGFu
Z2VFdmVudDo6Y3JlYXRlKToKKyAgICAgICAgKFdlYkNvcmU6Okhhc2hDaGFuZ2VFdmVudDo6aW5p
dEhhc2hDaGFuZ2VFdmVudCk6CisgICAgICAgIChXZWJDb3JlOjpIYXNoQ2hhbmdlRXZlbnQ6Om9s
ZFVSTCk6CisgICAgICAgIChXZWJDb3JlOjpIYXNoQ2hhbmdlRXZlbnQ6Om5ld1VSTCk6CisgICAg
ICAgIChXZWJDb3JlOjpIYXNoQ2hhbmdlRXZlbnQ6Okhhc2hDaGFuZ2VFdmVudCk6CisgICAgICAg
ICogZG9tL0hhc2hDaGFuZ2VFdmVudC5pZGw6IEFkZGVkLgorICAgICAgICAqIHBhZ2UvRE9NV2lu
ZG93LmlkbDoKKwogMjAxMC0wOS0yMCAgQW5keSBFc3RlcyAgPGFlc3Rlc0BhcHBsZS5jb20+CiAK
ICAgICAgICAgUmV2aWV3ZWQgYnkgQWRhbSBCYXJ0aC4KZGlmZiAtLWdpdCBhL1dlYkNvcmUvRGVy
aXZlZFNvdXJjZXMuY3BwIGIvV2ViQ29yZS9EZXJpdmVkU291cmNlcy5jcHAKaW5kZXggN2EwYzJm
ZGNlNzExMjU0YTdmOGVjOGQwNzUzOGI3MTU2NTU5NzkzOC4uYmFiODEwOTcwNDk0ODhkYWUyMjRl
MGZhMThlMmQ5ZjcyOGQwNjA3YSAxMDA2NDQKLS0tIGEvV2ViQ29yZS9EZXJpdmVkU291cmNlcy5j
cHAKKysrIGIvV2ViQ29yZS9EZXJpdmVkU291cmNlcy5jcHAKQEAgLTExOCw2ICsxMTgsNyBAQAog
I2luY2x1ZGUgIkpTRmxhZ3MuY3BwIgogI2luY2x1ZGUgIkpTR2VvbG9jYXRpb24uY3BwIgogI2lu
Y2x1ZGUgIkpTR2VvcG9zaXRpb24uY3BwIgorI2luY2x1ZGUgIkpTSGFzaENoYW5nZUV2ZW50LmNw
cCIKICNpbmNsdWRlICJKU0hpc3RvcnkuY3BwIgogI2luY2x1ZGUgIkpTSFRNTEFsbENvbGxlY3Rp
b24uY3BwIgogI2luY2x1ZGUgIkpTSFRNTEFuY2hvckVsZW1lbnQuY3BwIgpkaWZmIC0tZ2l0IGEv
V2ViQ29yZS9EZXJpdmVkU291cmNlcy5tYWtlIGIvV2ViQ29yZS9EZXJpdmVkU291cmNlcy5tYWtl
CmluZGV4IGVhMzAxYjg2Mjc1YWQwZWQyMzg4ODAxOGNhYzU0NTM3MTczYjM4YzYuLmFkYmQzMGNj
ZjViNTE2YTRkNmQwMjA2ZWM5MDJkZjNmMjQ3MTlmYzQgMTAwNjQ0Ci0tLSBhL1dlYkNvcmUvRGVy
aXZlZFNvdXJjZXMubWFrZQorKysgYi9XZWJDb3JlL0Rlcml2ZWRTb3VyY2VzLm1ha2UKQEAgLTE2
NCw2ICsxNjQsOCBAQCBET01fQ0xBU1NFUyA9IFwKICAgICBGbGFncyBcCiAgICAgR2VvbG9jYXRp
b24gXAogICAgIEdlb3Bvc2l0aW9uIFwKKyAgICBIYXNoQ2hhbmdlRXZlbnQgXAorICAgIEhpc3Rv
cnkgXAogICAgIEhUTUxBbGxDb2xsZWN0aW9uIFwKICAgICBIVE1MQW5jaG9yRWxlbWVudCBcCiAg
ICAgSFRNTEFwcGxldEVsZW1lbnQgXApAQCAtMjM2LDcgKzIzOCw2IEBAIERPTV9DTEFTU0VTID0g
XAogICAgIEhUTUxUaXRsZUVsZW1lbnQgXAogICAgIEhUTUxVTGlzdEVsZW1lbnQgXAogICAgIEhU
TUxWaWRlb0VsZW1lbnQgXAotICAgIEhpc3RvcnkgXAogICAgIElEQkFueSBcCiAgICAgSURCQ3Vy
c29yIFwKICAgICBJREJEYXRhYmFzZUVycm9yIFwKZGlmZiAtLWdpdCBhL1dlYkNvcmUvR05VbWFr
ZWZpbGUuYW0gYi9XZWJDb3JlL0dOVW1ha2VmaWxlLmFtCmluZGV4IDMzZGVlOTQ1Y2NjOTZhYWJj
ZWY3NDU3NzRlMThkZGEyMjE5Y2RlNGQuLjFhMGE3NTQyZjRmMGI0ZGE5MWUwODVkYjgwNWM0YzJm
MzM1MjYyYmIgMTAwNjQ0Ci0tLSBhL1dlYkNvcmUvR05VbWFrZWZpbGUuYW0KKysrIGIvV2ViQ29y
ZS9HTlVtYWtlZmlsZS5hbQpAQCAtMjQ2LDYgKzI0Niw4IEBAIHdlYmNvcmVfYnVpbHRfc291cmNl
cyArPSBcCiAJRGVyaXZlZFNvdXJjZXMvV2ViQ29yZS9KU0dlb2xvY2F0aW9uLmggXAogCURlcml2
ZWRTb3VyY2VzL1dlYkNvcmUvSlNHZW9wb3NpdGlvbi5jcHAgXAogCURlcml2ZWRTb3VyY2VzL1dl
YkNvcmUvSlNHZW9wb3NpdGlvbi5oIFwKKwlEZXJpdmVkU291cmNlcy9XZWJDb3JlL0pTSGFzaENo
YW5nZUV2ZW50LmNwcCBcCisJRGVyaXZlZFNvdXJjZXMvV2ViQ29yZS9KU0hhc2hDaGFuZ2VFdmVu
dC5oIFwKIAlEZXJpdmVkU291cmNlcy9XZWJDb3JlL0pTSGlzdG9yeS5jcHAgXAogCURlcml2ZWRT
b3VyY2VzL1dlYkNvcmUvSlNIaXN0b3J5LmggXAogCURlcml2ZWRTb3VyY2VzL1dlYkNvcmUvSlNI
VE1MQWxsQ29sbGVjdGlvbi5jcHAgXApAQCAtMTEyNiw2ICsxMTI4LDcgQEAgd2ViY29yZV9zb3Vy
Y2VzICs9IFwKIAlXZWJDb3JlL2RvbS9GcmFnbWVudFNjcmlwdGluZ1Blcm1pc3Npb24uaCBcCiAJ
V2ViQ29yZS9kb20vSW5wdXRFbGVtZW50LmNwcCBcCiAJV2ViQ29yZS9kb20vSW5wdXRFbGVtZW50
LmggXAorCVdlYkNvcmUvZG9tL0hhc2hDaGFuZ2VFdmVudC5oIFwKIAlXZWJDb3JlL2RvbS9LZXli
b2FyZEV2ZW50LmNwcCBcCiAJV2ViQ29yZS9kb20vS2V5Ym9hcmRFdmVudC5oIFwKIAlXZWJDb3Jl
L2RvbS9NYXBwZWRBdHRyaWJ1dGVFbnRyeS5oIFwKZGlmZiAtLWdpdCBhL1dlYkNvcmUvV2ViQ29y
ZS5neXBpIGIvV2ViQ29yZS9XZWJDb3JlLmd5cGkKaW5kZXggMWRlZDA2ZjQ3Y2I5NTBkNTkyNTQ3
MDRiNzM4ZDYzNWJhYWIxYzAwYy4uNTI4ZGMzYzIyNjc4YzQyZWIyMGQ3NmVlZmE3N2Y4YzA2NjVk
MDM1MiAxMDA2NDQKLS0tIGEvV2ViQ29yZS9XZWJDb3JlLmd5cGkKKysrIGIvV2ViQ29yZS9XZWJD
b3JlLmd5cGkKQEAgLTU2LDYgKzU2LDcgQEAKICAgICAgICAgICAgICdkb20vRXZlbnRFeGNlcHRp
b24uaWRsJywKICAgICAgICAgICAgICdkb20vRXZlbnRMaXN0ZW5lci5pZGwnLAogICAgICAgICAg
ICAgJ2RvbS9FdmVudFRhcmdldC5pZGwnLAorICAgICAgICAgICAgJ2RvbS9IYXNoQ2hhbmdlRXZl
bnQuaWRsJywKICAgICAgICAgICAgICdkb20vS2V5Ym9hcmRFdmVudC5pZGwnLAogICAgICAgICAg
ICAgJ2RvbS9NZXNzYWdlQ2hhbm5lbC5pZGwnLAogICAgICAgICAgICAgJ2RvbS9NZXNzYWdlRXZl
bnQuaWRsJywKQEAgLTEyMDMsNiArMTIwNCw3IEBACiAgICAgICAgICAgICAnZG9tL0ZyYWdtZW50
U2NyaXB0aW5nUGVybWlzc2lvbi5oJywKICAgICAgICAgICAgICdkb20vSW5wdXRFbGVtZW50LmNw
cCcsCiAgICAgICAgICAgICAnZG9tL0lucHV0RWxlbWVudC5oJywKKyAgICAgICAgICAgICdkb20v
SGFzaENoYW5nZUV2ZW50LmgnLAogICAgICAgICAgICAgJ2RvbS9LZXlib2FyZEV2ZW50LmNwcCcs
CiAgICAgICAgICAgICAnZG9tL0tleWJvYXJkRXZlbnQuaCcsCiAgICAgICAgICAgICAnZG9tL01h
cHBlZEF0dHJpYnV0ZUVudHJ5LmgnLApkaWZmIC0tZ2l0IGEvV2ViQ29yZS9XZWJDb3JlLnByaSBi
L1dlYkNvcmUvV2ViQ29yZS5wcmkKaW5kZXggOTQ3MGZmZDFjYTU4OGJjMTliMjZjMWUyNGNkNzY5
ZjRmMWZkMmZjNi4uMzdiYjIwNTE4M2FlZDAwYTA3NWExYzRmMmI5ZDJmYTYyZjNkYWZhMyAxMDA2
NDQKLS0tIGEvV2ViQ29yZS9XZWJDb3JlLnByaQorKysgYi9XZWJDb3JlL1dlYkNvcmUucHJpCkBA
IC0xMjMsNiArMTIzLDcgQEAgSURMX0JJTkRJTkdTICs9IFwKICAgICBkb20vRXZlbnRFeGNlcHRp
b24uaWRsIFwKICMgICAgZG9tL0V2ZW50TGlzdGVuZXIuaWRsIFwKICMgICAgZG9tL0V2ZW50VGFy
Z2V0LmlkbCBcCisgICAgZG9tL0hhc2hDaGFuZ2VFdmVudC5pZGwgXAogICAgIGRvbS9LZXlib2Fy
ZEV2ZW50LmlkbCBcCiAgICAgZG9tL01vdXNlRXZlbnQuaWRsIFwKICAgICBkb20vTWVzc2FnZUNo
YW5uZWwuaWRsIFwKZGlmZiAtLWdpdCBhL1dlYkNvcmUvV2ViQ29yZS52Y3Byb2ovV2ViQ29yZS52
Y3Byb2ogYi9XZWJDb3JlL1dlYkNvcmUudmNwcm9qL1dlYkNvcmUudmNwcm9qCmluZGV4IDBjMzYw
Y2VjMjgyYWQ4NjhmMWQyMDZhOWMxYTBiOGVlNWUzYmI3OTguLmU1MTU4ZTI4MzM5ZTNmYTU0NjY1
MDc3MjU4MmJkYzA0NTYzY2IzMGEgMTAwNjQ0Ci0tLSBhL1dlYkNvcmUvV2ViQ29yZS52Y3Byb2ov
V2ViQ29yZS52Y3Byb2oKKysrIGIvV2ViQ29yZS9XZWJDb3JlLnZjcHJvai9XZWJDb3JlLnZjcHJv
agpAQCAtNTMwMCw2ICs1MzAwLDYyIEBACiAJCQkJUmVsYXRpdmVQYXRoPSIkKFdlYktpdE91dHB1
dERpcilcb2JqXCQoUHJvamVjdE5hbWUpXERlcml2ZWRTb3VyY2VzXEpTR2VvcG9zaXRpb24uaCIN
CiAJCQkJPg0KIAkJCTwvRmlsZT4NCisgCQkJPEZpbGUNCisJCQkJUmVsYXRpdmVQYXRoPSIkKFdl
YktpdE91dHB1dERpcilcb2JqXCQoUHJvamVjdE5hbWUpXERlcml2ZWRTb3VyY2VzXEpTSGFzaENo
YW5nZUV2ZW50LmNwcCINCisJCQkJPg0KKwkJCQk8RmlsZUNvbmZpZ3VyYXRpb24NCisJCQkJCU5h
bWU9IkRlYnVnfFdpbjMyIg0KKwkJCQkJRXhjbHVkZWRGcm9tQnVpbGQ9InRydWUiDQorCQkJCQk+
DQorCQkJCQk8VG9vbA0KKwkJCQkJCU5hbWU9IlZDQ0xDb21waWxlclRvb2wiDQorCQkJCQkvPg0K
KwkJCQk8L0ZpbGVDb25maWd1cmF0aW9uPg0KKwkJCQk8RmlsZUNvbmZpZ3VyYXRpb24NCisJCQkJ
CU5hbWU9IlJlbGVhc2V8V2luMzIiDQorCQkJCQlFeGNsdWRlZEZyb21CdWlsZD0idHJ1ZSINCisJ
CQkJCT4NCisJCQkJCTxUb29sDQorCQkJCQkJTmFtZT0iVkNDTENvbXBpbGVyVG9vbCINCisJCQkJ
CS8+DQorCQkJCTwvRmlsZUNvbmZpZ3VyYXRpb24+DQorCQkJCTxGaWxlQ29uZmlndXJhdGlvbg0K
KwkJCQkJTmFtZT0iRGVidWdfSW50ZXJuYWx8V2luMzIiDQorCQkJCQlFeGNsdWRlZEZyb21CdWls
ZD0idHJ1ZSINCisJCQkJCT4NCisJCQkJCTxUb29sDQorCQkJCQkJTmFtZT0iVkNDTENvbXBpbGVy
VG9vbCINCisJCQkJCS8+DQorCQkJCTwvRmlsZUNvbmZpZ3VyYXRpb24+DQorCQkJCTxGaWxlQ29u
ZmlndXJhdGlvbg0KKwkJCQkJTmFtZT0iRGVidWdfQ2Fpcm98V2luMzIiDQorCQkJCQlFeGNsdWRl
ZEZyb21CdWlsZD0idHJ1ZSINCisJCQkJCT4NCisJCQkJCTxUb29sDQorCQkJCQkJTmFtZT0iVkND
TENvbXBpbGVyVG9vbCINCisJCQkJCS8+DQorCQkJCTwvRmlsZUNvbmZpZ3VyYXRpb24+DQorCQkJ
CTxGaWxlQ29uZmlndXJhdGlvbg0KKwkJCQkJTmFtZT0iUmVsZWFzZV9DYWlyb3xXaW4zMiINCisJ
CQkJCUV4Y2x1ZGVkRnJvbUJ1aWxkPSJ0cnVlIg0KKwkJCQkJPg0KKwkJCQkJPFRvb2wNCisJCQkJ
CQlOYW1lPSJWQ0NMQ29tcGlsZXJUb29sIg0KKwkJCQkJLz4NCisJCQkJPC9GaWxlQ29uZmlndXJh
dGlvbj4NCisJCQkJPEZpbGVDb25maWd1cmF0aW9uDQorCQkJCQlOYW1lPSJEZWJ1Z19BbGx8V2lu
MzIiDQorCQkJCQlFeGNsdWRlZEZyb21CdWlsZD0idHJ1ZSINCisJCQkJCT4NCisJCQkJCTxUb29s
DQorCQkJCQkJTmFtZT0iVkNDTENvbXBpbGVyVG9vbCINCisJCQkJCS8+DQorCQkJCTwvRmlsZUNv
bmZpZ3VyYXRpb24+DQorCQkJPC9GaWxlPg0KKwkJCTxGaWxlDQorCQkJCVJlbGF0aXZlUGF0aD0i
JChXZWJLaXRPdXRwdXREaXIpXG9ialwkKFByb2plY3ROYW1lKVxEZXJpdmVkU291cmNlc1xKU0hh
c2hDaGFuZ2VFdmVudC5oIg0KKwkJCQk+DQorCQkJPC9GaWxlPg0KIAkJCTxGaWxlDQogCQkJCVJl
bGF0aXZlUGF0aD0iJChXZWJLaXRPdXRwdXREaXIpXG9ialwkKFByb2plY3ROYW1lKVxEZXJpdmVk
U291cmNlc1xKU0hpc3RvcnkuY3BwIg0KIAkJCQk+DQpAQCAtMzM5MTcsNiArMzM5NzMsMTAgQEAK
IAkJCQk+DQogCQkJPC9GaWxlPg0KIAkJCTxGaWxlDQorCQkJCVJlbGF0aXZlUGF0aD0iLi5cZG9t
XEhhc2hDaGFuZ2VFdmVudC5jcHAiDQorCQkJCT4NCisJCQk8L0ZpbGU+DQorCQkJPEZpbGUNCiAJ
CQkJUmVsYXRpdmVQYXRoPSIuLlxkb21cS2V5Ym9hcmRFdmVudC5jcHAiDQogCQkJCT4NCiAJCQk8
L0ZpbGU+DQpkaWZmIC0tZ2l0IGEvV2ViQ29yZS9XZWJDb3JlLnhjb2RlcHJvai9wcm9qZWN0LnBi
eHByb2ogYi9XZWJDb3JlL1dlYkNvcmUueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvagppbmRleCA1
NjAxZDlmNTJiMTZjMjQ2MDg4Nzc5NmYwMzE1ZTg5ZWUwNzBhNzAwLi43MzVlOWQ1MjBlYTVjMmIx
YTQyZGMyN2VhMjBhYTI0MjNkZWEwMDExIDEwMDY0NAotLS0gYS9XZWJDb3JlL1dlYkNvcmUueGNv
ZGVwcm9qL3Byb2plY3QucGJ4cHJvagorKysgYi9XZWJDb3JlL1dlYkNvcmUueGNvZGVwcm9qL3By
b2plY3QucGJ4cHJvagpAQCAtMTQ4OCw2ICsxNDg4LDkgQEAKIAkJODQ3NkM5RjAxMURGNkE1ODAw
NTU1QjAyIC8qIFNWR1BhdGhQYXJzZXIuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxk
RmlsZTsgZmlsZVJlZiA9IDg0NzZDOUVFMTFERjZBNTgwMDU1NUIwMiAvKiBTVkdQYXRoUGFyc2Vy
LmggKi87IH07CiAJCTg0ODAxOTU0MTA4QkFGQjMwMENCMkIxRiAvKiBGRUdhdXNzaWFuQmx1ci5j
cHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA4NDgwMTk1
MjEwOEJBRkIzMDBDQjJCMUYgLyogRkVHYXVzc2lhbkJsdXIuY3BwICovOyB9OwogCQk4NDgwMTk1
NTEwOEJBRkIzMDBDQjJCMUYgLyogRkVHYXVzc2lhbkJsdXIuaCBpbiBIZWFkZXJzICovID0ge2lz
YSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDg0ODAxOTUzMTA4QkFGQjMwMENCMkIxRiAvKiBG
RUdhdXNzaWFuQmx1ci5oICovOyB9OworCQk4NDgyQjc0NjExOThDMzU0MDBCRkIwMDUgLyogSGFz
aENoYW5nZUV2ZW50LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVS
ZWYgPSAyNDQyQkJGODExOTRDOUQzMDBENDk0NjkgLyogSGFzaENoYW5nZUV2ZW50LmggKi87IH07
CisJCTg0ODJCNzUxMTE5OENCNkIwMEJGQjAwNSAvKiBKU0hhc2hDaGFuZ2VFdmVudC5jcHAgaW4g
U291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA4NDgyQjc0RjExOThD
QjZCMDBCRkIwMDUgLyogSlNIYXNoQ2hhbmdlRXZlbnQuY3BwICovOyB9OworCQk4NDgyQjc1MjEx
OThDQjZCMDBCRkIwMDUgLyogSlNIYXNoQ2hhbmdlRXZlbnQuaCBpbiBIZWFkZXJzICovID0ge2lz
YSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDg0ODJCNzUwMTE5OENCNkIwMEJGQjAwNSAvKiBK
U0hhc2hDaGFuZ2VFdmVudC5oICovOyB9OwogCQk4NDg1MjI3QjExOTAxNjJDMDA2RURDN0YgLyog
SlNTVkdIS2VybkVsZW1lbnQuY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxl
OyBmaWxlUmVmID0gODQ4NTIyNzcxMTkwMTYyQzAwNkVEQzdGIC8qIEpTU1ZHSEtlcm5FbGVtZW50
LmNwcCAqLzsgfTsKIAkJODQ4NTIyN0MxMTkwMTYyQzAwNkVEQzdGIC8qIEpTU1ZHSEtlcm5FbGVt
ZW50LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA4NDg1
MjI3ODExOTAxNjJDMDA2RURDN0YgLyogSlNTVkdIS2VybkVsZW1lbnQuaCAqLzsgfTsKIAkJODQ4
NTIyN0QxMTkwMTYyQzAwNkVEQzdGIC8qIEpTU1ZHVktlcm5FbGVtZW50LmNwcCBpbiBTb3VyY2Vz
ICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDg0ODUyMjc5MTE5MDE2MkMwMDZF
REM3RiAvKiBKU1NWR1ZLZXJuRWxlbWVudC5jcHAgKi87IH07CkBAIC02NDk2LDYgKzY0OTksNyBA
QAogCQkxQ0ZBRTMyMjBBNkQ2QTNGMDAzMjU5M0QgLyogbGlib2JqYy5keWxpYiAqLyA9IHtpc2Eg
PSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9ICJjb21waWxlZC5tYWNoLW8u
ZHlsaWIiOyBuYW1lID0gbGlib2JqYy5keWxpYjsgcGF0aCA9IC91c3IvbGliL2xpYm9iamMuZHls
aWI7IHNvdXJjZVRyZWUgPSAiPGFic29sdXRlPiI7IH07CiAJCTIwMEIxOTA4MTFDMjc3RDkwMERD
Q0QzQSAvKiBTY3JpcHRCcmVha3BvaW50LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNl
OyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNw
cDsgcGF0aCA9IFNjcmlwdEJyZWFrcG9pbnQuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9
OwogCQkyMjhDMjg0NDEwRDgyNTAwMDA5RDBEMEUgLyogU2NyaXB0V3JhcHBhYmxlLmggKi8gPSB7
aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5
cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFNjcmlwdFdyYXBwYWJsZS5oOyBzb3VyY2VUcmVl
ID0gIjxncm91cD4iOyB9OworCQkyNDQyQkJGODExOTRDOUQzMDBENDk0NjkgLyogSGFzaENoYW5n
ZUV2ZW50LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsg
bGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEhhc2hDaGFuZ2VFdmVu
dC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQkyNEY1NEVBQTEwMUZFOTE0MDAwQUU3
NDEgLyogQXBwbGljYXRpb25DYWNoZUhvc3QuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVu
Y2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAu
Y3BwOyBwYXRoID0gQXBwbGljYXRpb25DYWNoZUhvc3QuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91
cD4iOyB9OwogCQkyNEY1NEVBQjEwMUZFOTE0MDAwQUU3NDEgLyogQXBwbGljYXRpb25DYWNoZUhv
c3QuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0
S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gQXBwbGljYXRpb25DYWNoZUhv
c3QuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJMjU0MkY0RDgxMTY2QzI1QTAwRTg5
QTg2IC8qIFVzZXJHZXN0dXJlSW5kaWNhdG9yLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJl
bmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3Bw
LmNwcDsgcGF0aCA9IFVzZXJHZXN0dXJlSW5kaWNhdG9yLmNwcDsgc291cmNlVHJlZSA9ICI8Z3Jv
dXA+IjsgfTsKQEAgLTc0NDcsNiArNzQ1MSw5IEBACiAJCTg0NzZDOUVFMTFERjZBNTgwMDU1NUIw
MiAvKiBTVkdQYXRoUGFyc2VyLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVu
Y29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFNW
R1BhdGhQYXJzZXIuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJODQ4MDE5NTIxMDhC
QUZCMzAwQ0IyQjFGIC8qIEZFR2F1c3NpYW5CbHVyLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVm
ZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUu
Y3BwLmNwcDsgbmFtZSA9IEZFR2F1c3NpYW5CbHVyLmNwcDsgcGF0aCA9IGZpbHRlcnMvRkVHYXVz
c2lhbkJsdXIuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQk4NDgwMTk1MzEwOEJB
RkIzMDBDQjJCMUYgLyogRkVHYXVzc2lhbkJsdXIuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJl
bmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5o
OyBuYW1lID0gRkVHYXVzc2lhbkJsdXIuaDsgcGF0aCA9IGZpbHRlcnMvRkVHYXVzc2lhbkJsdXIu
aDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJODQ4MkI3NDQxMTk4QzMyRTAwQkZCMDA1
IC8qIEhhc2hDaGFuZ2VFdmVudC5pZGwgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmls
ZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSB0ZXh0OyBwYXRoID0gSGFzaENoYW5n
ZUV2ZW50LmlkbDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJODQ4MkI3NEYxMTk4Q0I2
QjAwQkZCMDA1IC8qIEpTSGFzaENoYW5nZUV2ZW50LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVm
ZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUu
Y3BwLmNwcDsgcGF0aCA9IEpTSGFzaENoYW5nZUV2ZW50LmNwcDsgc291cmNlVHJlZSA9ICI8Z3Jv
dXA+IjsgfTsKKwkJODQ4MkI3NTAxMTk4Q0I2QjAwQkZCMDA1IC8qIEpTSGFzaENoYW5nZUV2ZW50
LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtu
b3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEpTSGFzaENoYW5nZUV2ZW50Lmg7
IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTg0ODUyMjc3MTE5MDE2MkMwMDZFREM3RiAv
KiBKU1NWR0hLZXJuRWxlbWVudC5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmls
ZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBh
dGggPSBKU1NWR0hLZXJuRWxlbWVudC5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJ
CTg0ODUyMjc4MTE5MDE2MkMwMDZFREM3RiAvKiBKU1NWR0hLZXJuRWxlbWVudC5oICovID0ge2lz
YSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBl
ID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBKU1NWR0hLZXJuRWxlbWVudC5oOyBzb3VyY2VUcmVl
ID0gIjxncm91cD4iOyB9OwogCQk4NDg1MjI3OTExOTAxNjJDMDA2RURDN0YgLyogSlNTVkdWS2Vy
bkVsZW1lbnQuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9
IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gSlNTVkdW
S2VybkVsZW1lbnQuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwpAQCAtMTUyMjksNiAr
MTUyMzYsOCBAQAogCQkJCTE0RTgzNzhEMDlGODVENEYwMEI4NUFFNCAvKiBKU0V2ZW50LmggKi8s
CiAJCQkJQkM2MEQ5QkQwRDJBMjY5QTAwQjk5MThGIC8qIEpTRXZlbnRFeGNlcHRpb24uY3BwICov
LAogCQkJCUJDNjBEOUJFMEQyQTI2OUEwMEI5OTE4RiAvKiBKU0V2ZW50RXhjZXB0aW9uLmggKi8s
CisJCQkJODQ4MkI3NEYxMTk4Q0I2QjAwQkZCMDA1IC8qIEpTSGFzaENoYW5nZUV2ZW50LmNwcCAq
LywKKwkJCQk4NDgyQjc1MDExOThDQjZCMDBCRkIwMDUgLyogSlNIYXNoQ2hhbmdlRXZlbnQuaCAq
LywKIAkJCQlBODY2MjlDRTA5REEyQjQ3MDA5NjMzQTUgLyogSlNLZXlib2FyZEV2ZW50LmNwcCAq
LywKIAkJCQlBODY2MjlDRDA5REEyQjQ3MDA5NjMzQTUgLyogSlNLZXlib2FyZEV2ZW50LmggKi8s
CiAJCQkJRTEwNzQwMEIwRTc3QkRDMDAwMzNBRjI0IC8qIEpTTWVzc2FnZUNoYW5uZWwuY3BwICov
LApAQCAtMTc2MDksNiArMTc2MTgsOCBAQAogCQkJCTkzODMxQjU2MEQwODdENjAwMEU1Qzk4NCAv
KiBFeGNlcHRpb25Db2RlLmNwcCAqLywKIAkJCQk5MzVGQkNGMTA5QkExNDNCMDBFMjMwQjEgLyog
RXhjZXB0aW9uQ29kZS5oICovLAogCQkJCUE4NTMxMjNDMTFEMDQ3MUIwMEQ0RDA3NyAvKiBGcmFn
bWVudFNjcmlwdGluZ1Blcm1pc3Npb24uaCAqLywKKwkJCQk4NDgyQjc0NDExOThDMzJFMDBCRkIw
MDUgLyogSGFzaENoYW5nZUV2ZW50LmlkbCAqLywKKwkJCQkyNDQyQkJGODExOTRDOUQzMDBENDk0
NjkgLyogSGFzaENoYW5nZUV2ZW50LmggKi8sCiAJCQkJMDg3MDBCRTYwRjA4NkM1MzAwOTE5NDE5
IC8qIElucHV0RWxlbWVudC5jcHAgKi8sCiAJCQkJMDg1OTFBQTQwRjA4NUM0RTAwOUJBQ0IxIC8q
IElucHV0RWxlbWVudC5oICovLAogCQkJCTg1MDMxQjJEMEE0NEVGQzcwMEY5OTJFMCAvKiBLZXli
b2FyZEV2ZW50LmNwcCAqLywKQEAgLTE4OTk4LDYgKzE5MDA5LDcgQEAKIAkJCQlCMkEwMTVBQjBB
RjZDRDUzMDA2QkNFMEUgLyogR3JhcGhpY3NUeXBlcy5oIGluIEhlYWRlcnMgKi8sCiAJCQkJQzUw
QjU2MTcxMjExOUQyMzAwOEI0NkUwIC8qIEdyb3VwU2V0dGluZ3MuaCBpbiBIZWFkZXJzICovLAog
CQkJCTc2OTNCQUQyMTA2QzJEQ0EwMDdCMDgyMyAvKiBIYWx0YWJsZVBsdWdpbi5oIGluIEhlYWRl
cnMgKi8sCisJCQkJODQ4MkI3NDYxMTk4QzM1NDAwQkZCMDA1IC8qIEhhc2hDaGFuZ2VFdmVudC5o
IGluIEhlYWRlcnMgKi8sCiAJCQkJQkM5NEQxNTQwQzI3NUM4QjAwNkJDNjE3IC8qIEhpc3Rvcnku
aCBpbiBIZWFkZXJzICovLAogCQkJCTk3RENFMjAyMTA4MDdDNzUwMDU3RDM5NCAvKiBIaXN0b3J5
Q29udHJvbGxlci5oIGluIEhlYWRlcnMgKi8sCiAJCQkJNTE3NDFEMTEwQjA3MjU5QTAwRUQ0NDJD
IC8qIEhpc3RvcnlJdGVtLmggaW4gSGVhZGVycyAqLywKQEAgLTE5MzI4LDYgKzE5MzQwLDcgQEAK
IAkJCQk0OUVFQ0YwMzEwNTA3MEM0MDAwOTlGQUIgLyogSlNGbG9hdDMyQXJyYXkuaCBpbiBIZWFk
ZXJzICovLAogCQkJCUZFODBEQTY0MEU5QzQ3MDMwMDBENkY3NSAvKiBKU0dlb2xvY2F0aW9uLmgg
aW4gSGVhZGVycyAqLywKIAkJCQlGRTgwREE2NjBFOUM0NzAzMDAwRDZGNzUgLyogSlNHZW9wb3Np
dGlvbi5oIGluIEhlYWRlcnMgKi8sCisJCQkJODQ4MkI3NTIxMTk4Q0I2QjAwQkZCMDA1IC8qIEpT
SGFzaENoYW5nZUV2ZW50LmggaW4gSGVhZGVycyAqLywKIAkJCQlCQzk0RDE0RjBDMjc1QzY4MDA2
QkM2MTcgLyogSlNIaXN0b3J5LmggaW4gSGVhZGVycyAqLywKIAkJCQlCQzk3RTQxMzEwOTE1NEZB
MDAxMEQzNjEgLyogSlNIVE1MQWxsQ29sbGVjdGlvbi5oIGluIEhlYWRlcnMgKi8sCiAJCQkJMUE0
QTJERjAwQTFCODUyQTAwQzgwN0Y4IC8qIEpTSFRNTEFuY2hvckVsZW1lbnQuaCBpbiBIZWFkZXJz
ICovLApAQCAtMjE4NTksNiArMjE4NzIsNyBAQAogCQkJCUZFODBEQTYzMEU5QzQ3MDMwMDBENkY3
NSAvKiBKU0dlb2xvY2F0aW9uLmNwcCBpbiBTb3VyY2VzICovLAogCQkJCUZFODBEN0FCMEU5QzFF
RDIwMDBENkY3NSAvKiBKU0dlb2xvY2F0aW9uQ3VzdG9tLmNwcCBpbiBTb3VyY2VzICovLAogCQkJ
CUZFODBEQTY1MEU5QzQ3MDMwMDBENkY3NSAvKiBKU0dlb3Bvc2l0aW9uLmNwcCBpbiBTb3VyY2Vz
ICovLAorCQkJCTg0ODJCNzUxMTE5OENCNkIwMEJGQjAwNSAvKiBKU0hhc2hDaGFuZ2VFdmVudC5j
cHAgaW4gU291cmNlcyAqLywKIAkJCQlCQzk0RDE0RTBDMjc1QzY4MDA2QkM2MTcgLyogSlNIaXN0
b3J5LmNwcCBpbiBTb3VyY2VzICovLAogCQkJCUJDRTdCMTkzMEQ0RTg2OTYwMDc1QTUzOSAvKiBK
U0hpc3RvcnlDdXN0b20uY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJQkM5N0U0MTIxMDkxNTRGQTAw
MTBEMzYxIC8qIEpTSFRNTEFsbENvbGxlY3Rpb24uY3BwIGluIFNvdXJjZXMgKi8sCmRpZmYgLS1n
aXQgYS9XZWJDb3JlL2JpbmRpbmdzL2pzL0pTRXZlbnRDdXN0b20uY3BwIGIvV2ViQ29yZS9iaW5k
aW5ncy9qcy9KU0V2ZW50Q3VzdG9tLmNwcAppbmRleCA3NDc5MDIwYzcxN2RhZjUwOTZkNjdiN2Uy
YjE3N2ZiOTZjNDU4ZWM2Li5kMmU5ZDYxMThhNTE0Yzg3MjExNjcwOTljMjVhY2UwNTgwYTM3NTE5
IDEwMDY0NAotLS0gYS9XZWJDb3JlL2JpbmRpbmdzL2pzL0pTRXZlbnRDdXN0b20uY3BwCisrKyBi
L1dlYkNvcmUvYmluZGluZ3MvanMvSlNFdmVudEN1c3RvbS5jcHAKQEAgLTQyLDYgKzQyLDcgQEAK
ICNpbmNsdWRlICJKU0RldmljZU1vdGlvbkV2ZW50LmgiCiAjaW5jbHVkZSAiSlNEZXZpY2VPcmll
bnRhdGlvbkV2ZW50LmgiCiAjaW5jbHVkZSAiSlNFcnJvckV2ZW50LmgiCisjaW5jbHVkZSAiSlNI
YXNoQ2hhbmdlRXZlbnQuaCIKICNpbmNsdWRlICJKU0tleWJvYXJkRXZlbnQuaCIKICNpbmNsdWRl
ICJKU01lc3NhZ2VFdmVudC5oIgogI2luY2x1ZGUgIkpTTW91c2VFdmVudC5oIgpAQCAtNTgsNiAr
NTksNyBAQAogI2luY2x1ZGUgIkpTWE1MSHR0cFJlcXVlc3RQcm9ncmVzc0V2ZW50LmgiCiAjaW5j
bHVkZSAiQmVmb3JlTG9hZEV2ZW50LmgiCiAjaW5jbHVkZSAiRXJyb3JFdmVudC5oIgorI2luY2x1
ZGUgIkhhc2hDaGFuZ2VFdmVudC5oIgogI2luY2x1ZGUgIktleWJvYXJkRXZlbnQuaCIKICNpbmNs
dWRlICJNZXNzYWdlRXZlbnQuaCIKICNpbmNsdWRlICJNb3VzZUV2ZW50LmgiCkBAIC0xNzAsNiAr
MTcyLDggQEAgSlNWYWx1ZSB0b0pTKEV4ZWNTdGF0ZSogZXhlYywgSlNET01HbG9iYWxPYmplY3Qq
IGdsb2JhbE9iamVjdCwgRXZlbnQqIGV2ZW50KQogICAgIGVsc2UgaWYgKGV2ZW50LT5pc0Vycm9y
RXZlbnQoKSkKICAgICAgICAgd3JhcHBlciA9IENSRUFURV9ET01fT0JKRUNUX1dSQVBQRVIoZXhl
YywgZ2xvYmFsT2JqZWN0LCBFcnJvckV2ZW50LCBldmVudCk7CiAjZW5kaWYKKyAgICBlbHNlIGlm
IChldmVudC0+aXNIYXNoQ2hhbmdlRXZlbnQoKSkKKyAgICAgICAgd3JhcHBlciA9IENSRUFURV9E
T01fT0JKRUNUX1dSQVBQRVIoZXhlYywgZ2xvYmFsT2JqZWN0LCBIYXNoQ2hhbmdlRXZlbnQsIGV2
ZW50KTsKICAgICBlbHNlIGlmIChldmVudC0+aXNQb3BTdGF0ZUV2ZW50KCkpCiAgICAgICAgIHdy
YXBwZXIgPSBDUkVBVEVfRE9NX09CSkVDVF9XUkFQUEVSKGV4ZWMsIGdsb2JhbE9iamVjdCwgUG9w
U3RhdGVFdmVudCwgZXZlbnQpOwogICAgIGVsc2UgaWYgKGV2ZW50LT5pc0N1c3RvbUV2ZW50KCkp
CmRpZmYgLS1naXQgYS9XZWJDb3JlL2JpbmRpbmdzL3Y4L2N1c3RvbS9WOEV2ZW50Q3VzdG9tLmNw
cCBiL1dlYkNvcmUvYmluZGluZ3MvdjgvY3VzdG9tL1Y4RXZlbnRDdXN0b20uY3BwCmluZGV4IGUw
YmIwMmJlZmNkZDA4NWJkZjQwYmVkZGY1N2YwM2ZkY2IxODI1YWYuLmY5NmJhN2EzOGUzMzFjZGFl
NGNkNWJhOWI0ZDIxY2I5OWYzZDI0MTQgMTAwNjQ0Ci0tLSBhL1dlYkNvcmUvYmluZGluZ3Mvdjgv
Y3VzdG9tL1Y4RXZlbnRDdXN0b20uY3BwCisrKyBiL1dlYkNvcmUvYmluZGluZ3MvdjgvY3VzdG9t
L1Y4RXZlbnRDdXN0b20uY3BwCkBAIC00Myw2ICs0Myw3IEBACiAjaW5jbHVkZSAiVjhEZXZpY2VN
b3Rpb25FdmVudC5oIgogI2luY2x1ZGUgIlY4RGV2aWNlT3JpZW50YXRpb25FdmVudC5oIgogI2lu
Y2x1ZGUgIlY4RXJyb3JFdmVudC5oIgorI2luY2x1ZGUgIlY4SGFzaENoYW5nZUV2ZW50LmgiCiAj
aW5jbHVkZSAiVjhJREJFcnJvckV2ZW50LmgiCiAjaW5jbHVkZSAiVjhJREJTdWNjZXNzRXZlbnQu
aCIKICNpbmNsdWRlICJWOEtleWJvYXJkRXZlbnQuaCIKQEAgLTEyMCw2ICsxMjEsOCBAQCB2ODo6
SGFuZGxlPHY4OjpWYWx1ZT4gdG9WOChFdmVudCogaW1wbCkKICNlbmRpZgogICAgICAgICByZXR1
cm4gdG9WOChzdGF0aWNfY2FzdDxVSUV2ZW50Kj4oaW1wbCkpOwogICAgIH0KKyAgICBpZiAoaW1w
bC0+aXNIYXNoQ2hhbmdlRXZlbnQoKSkKKyAgICAgICAgcmV0dXJuIHRvVjgoc3RhdGljX2Nhc3Q8
SGFzaENoYW5nZUV2ZW50Kj4oaW1wbCkpOwogICAgIGlmIChpbXBsLT5pc011dGF0aW9uRXZlbnQo
KSkKICAgICAgICAgcmV0dXJuIHRvVjgoc3RhdGljX2Nhc3Q8TXV0YXRpb25FdmVudCo+KGltcGwp
KTsKICAgICBpZiAoaW1wbC0+aXNPdmVyZmxvd0V2ZW50KCkpCmRpZmYgLS1naXQgYS9XZWJDb3Jl
L2RvbS9Eb2N1bWVudC5jcHAgYi9XZWJDb3JlL2RvbS9Eb2N1bWVudC5jcHAKaW5kZXggMDZiZDc1
NTZiMzgxOWU2NDFmNTNlYWUxZjRhOWI1NTc5ODc1ZTgzZC4uMTk0ZDRlMTc2NjYwNThhYjlkNGJj
NDI3MWMxMzczODNmZGY5ZjYyOCAxMDA2NDQKLS0tIGEvV2ViQ29yZS9kb20vRG9jdW1lbnQuY3Bw
CisrKyBiL1dlYkNvcmUvZG9tL0RvY3VtZW50LmNwcApAQCAtNjUsNiArNjUsNyBAQAogI2luY2x1
ZGUgIkZyYW1lTG9hZGVyLmgiCiAjaW5jbHVkZSAiRnJhbWVUcmVlLmgiCiAjaW5jbHVkZSAiRnJh
bWVWaWV3LmgiCisjaW5jbHVkZSAiSGFzaENoYW5nZUV2ZW50LmgiCiAjaW5jbHVkZSAiSFRNTEFs
bENvbGxlY3Rpb24uaCIKICNpbmNsdWRlICJIVE1MQW5jaG9yRWxlbWVudC5oIgogI2luY2x1ZGUg
IkhUTUxCb2R5RWxlbWVudC5oIgpAQCAtNDYzOCwxMSArNDYzOSw5IEBAIHZvaWQgRG9jdW1lbnQ6
OmVucXVldWVQYWdlc2hvd0V2ZW50KFBhZ2VzaG93RXZlbnRQZXJzaXN0ZW5jZSBwZXJzaXN0ZWQp
CiAgICAgZGlzcGF0Y2hXaW5kb3dFdmVudChQYWdlVHJhbnNpdGlvbkV2ZW50OjpjcmVhdGUoZXZl
bnROYW1lcygpLnBhZ2VzaG93RXZlbnQsIHBlcnNpc3RlZCksIHRoaXMpOwogfQogCi12b2lkIERv
Y3VtZW50OjplbnF1ZXVlSGFzaGNoYW5nZUV2ZW50KGNvbnN0IFN0cmluZyYgLypvbGRVUkwqLywg
Y29uc3QgU3RyaW5nJiAvKm5ld1VSTCovKQordm9pZCBEb2N1bWVudDo6ZW5xdWV1ZUhhc2hjaGFu
Z2VFdmVudChjb25zdCBTdHJpbmcmIG9sZFVSTCwgY29uc3QgU3RyaW5nJiBuZXdVUkwpCiB7Ci0g
ICAgLy8gRklYTUU6IGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0zNjMz
NSBIYXNoY2hhbmdlIGV2ZW50IGlzIG5vdyBpdHMgb3duIGludGVyZmFjZSBhbmQgdGFrZXMgdHdv
Ci0gICAgLy8gICBVUkwgYXJndW1lbnRzIHdoaWNoIHdlIG5lZWQgdG8gcGFzcyBpbiBoZXJlLgot
ICAgIGVucXVldWVFdmVudChFdmVudDo6Y3JlYXRlKGV2ZW50TmFtZXMoKS5oYXNoY2hhbmdlRXZl
bnQsIGZhbHNlLCBmYWxzZSkpOworICAgIGVucXVldWVFdmVudChIYXNoQ2hhbmdlRXZlbnQ6OmNy
ZWF0ZShvbGRVUkwsIG5ld1VSTCkpOwogfQogCiB2b2lkIERvY3VtZW50OjplbnF1ZXVlUG9wc3Rh
dGVFdmVudChQYXNzUmVmUHRyPFNlcmlhbGl6ZWRTY3JpcHRWYWx1ZT4gc3RhdGVPYmplY3QpCmRp
ZmYgLS1naXQgYS9XZWJDb3JlL2RvbS9FdmVudC5jcHAgYi9XZWJDb3JlL2RvbS9FdmVudC5jcHAK
aW5kZXggYzc2Zjk1MTIwZWMwOTQxMDZjMWUxZDFjMDg2NGEyMmY2Y2YyOTg1Ny4uYmI0MDRmYTI1
Yzk0YTZlMTVjMTk2ZWVjYzgyYTkwNTk3MDFmZmFkMCAxMDA2NDQKLS0tIGEvV2ViQ29yZS9kb20v
RXZlbnQuY3BwCisrKyBiL1dlYkNvcmUvZG9tL0V2ZW50LmNwcApAQCAtMTcyLDYgKzE3MiwxMSBA
QCBib29sIEV2ZW50Ojppc0JlZm9yZUxvYWRFdmVudCgpIGNvbnN0CiAgICAgcmV0dXJuIGZhbHNl
OwogfQogCitib29sIEV2ZW50Ojppc0hhc2hDaGFuZ2VFdmVudCgpIGNvbnN0Cit7CisgICAgcmV0
dXJuIGZhbHNlOworfQorCiAjaWYgRU5BQkxFKFNWRykKIGJvb2wgRXZlbnQ6OmlzU1ZHWm9vbUV2
ZW50KCkgY29uc3QKIHsKZGlmZiAtLWdpdCBhL1dlYkNvcmUvZG9tL0V2ZW50LmggYi9XZWJDb3Jl
L2RvbS9FdmVudC5oCmluZGV4IGI5OTIyMzc4NmZlN2VhMGE5MjQ5NzIxZjY1NzJkMjFlOTAzZTQ1
ODYuLjJhMDBlZWUxNWZjNTQyOWVhYjA2M2VkYTg2ZmNlMmE5NzU1Mzg4YjQgMTAwNjQ0Ci0tLSBh
L1dlYkNvcmUvZG9tL0V2ZW50LmgKKysrIGIvV2ViQ29yZS9kb20vRXZlbnQuaApAQCAtMTIzLDYg
KzEyMyw3IEBAIG5hbWVzcGFjZSBXZWJDb3JlIHsKICAgICAgICAgdmlydHVhbCBib29sIGlzV2Vi
S2l0QW5pbWF0aW9uRXZlbnQoKSBjb25zdDsKICAgICAgICAgdmlydHVhbCBib29sIGlzV2ViS2l0
VHJhbnNpdGlvbkV2ZW50KCkgY29uc3Q7CiAgICAgICAgIHZpcnR1YWwgYm9vbCBpc0JlZm9yZUxv
YWRFdmVudCgpIGNvbnN0OworICAgICAgICB2aXJ0dWFsIGJvb2wgaXNIYXNoQ2hhbmdlRXZlbnQo
KSBjb25zdDsKICNpZiBFTkFCTEUoU1ZHKQogICAgICAgICB2aXJ0dWFsIGJvb2wgaXNTVkdab29t
RXZlbnQoKSBjb25zdDsKICNlbmRpZgpkaWZmIC0tZ2l0IGEvV2ViQ29yZS9kb20vSGFzaENoYW5n
ZUV2ZW50LmggYi9XZWJDb3JlL2RvbS9IYXNoQ2hhbmdlRXZlbnQuaApuZXcgZmlsZSBtb2RlIDEw
MDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5mMWZh
NmFmYmY5ZTJjNWY3YTNjNzdjMWI4MDU1ZTIyZDk1YzY1YWJmCi0tLSAvZGV2L251bGwKKysrIGIv
V2ViQ29yZS9kb20vSGFzaENoYW5nZUV2ZW50LmgKQEAgLTAsMCArMSw2NSBAQAorLyoKKyAqIENv
cHlyaWdodCAoQykgMjAxMCBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKgorICog
VGhpcyBsaWJyYXJ5IGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFu
ZC9vcgorICogbW9kaWZ5IGl0IHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05VIExpYnJhcnkgR2Vu
ZXJhbCBQdWJsaWMKKyAqIExpY2Vuc2UgYXMgcHVibGlzaGVkIGJ5IHRoZSBGcmVlIFNvZnR3YXJl
IEZvdW5kYXRpb247IGVpdGhlcgorICogdmVyc2lvbiAyIG9mIHRoZSBMaWNlbnNlLCBvciAoYXQg
eW91ciBvcHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLgorICoKKyAqIFRoaXMgbGlicmFyeSBpcyBk
aXN0cmlidXRlZCBpbiB0aGUgaG9wZSB0aGF0IGl0IHdpbGwgYmUgdXNlZnVsLAorICogYnV0IFdJ
VEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YK
KyAqIE1FUkNIQU5UQUJJTElUWSBvciBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRS4g
IFNlZSB0aGUgR05VCisgKiBMaWJyYXJ5IEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUg
ZGV0YWlscy4KKyAqCisgKiBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBH
TlUgTGlicmFyeSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlCisgKiBhbG9uZyB3aXRoIHRoaXMgbGli
cmFyeTsgc2VlIHRoZSBmaWxlIENPUFlJTkcuTElCLiAgSWYgbm90LCB3cml0ZSB0bworICogdGhl
IEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbiwgSW5jLiwgNTEgRnJhbmtsaW4gU3RyZWV0LCBGaWZ0
aCBGbG9vciwKKyAqIEJvc3RvbiwgTUEgMDIxMTAtMTMwMSwgVVNBLgorICoKKyAqLworCisjaWZu
ZGVmIEhhc2hDaGFuZ2VFdmVudF9oCisjZGVmaW5lIEhhc2hDaGFuZ2VFdmVudF9oCisKKyNpbmNs
dWRlICJFdmVudC5oIgorI2luY2x1ZGUgIkV2ZW50TmFtZXMuaCIKKworbmFtZXNwYWNlIFdlYkNv
cmUgeworCitjbGFzcyBIYXNoQ2hhbmdlRXZlbnQgOiBwdWJsaWMgRXZlbnQgeworcHVibGljOgor
ICAgIHZpcnR1YWwgYm9vbCBpc0hhc2hDaGFuZ2VFdmVudCgpIGNvbnN0IHsgcmV0dXJuIHRydWU7
IH0KKworICAgIHN0YXRpYyBQYXNzUmVmUHRyPEhhc2hDaGFuZ2VFdmVudD4gY3JlYXRlKGNvbnN0
IFN0cmluZyYgb2xkVVJMLCBjb25zdCBTdHJpbmcmIG5ld1VSTCkKKyAgICB7CisgICAgICAgIHJl
dHVybiBhZG9wdFJlZihuZXcgSGFzaENoYW5nZUV2ZW50KG9sZFVSTCwgbmV3VVJMKSk7CisgICAg
fQorCisgICAgdm9pZCBpbml0SGFzaENoYW5nZUV2ZW50KGNvbnN0IEF0b21pY1N0cmluZyYgZXZl
bnRUeXBlLCBib29sIGNhbkJ1YmJsZSwgYm9vbCBjYW5jZWxhYmxlLCBjb25zdCBTdHJpbmcmIG9s
ZFVSTCwgY29uc3QgU3RyaW5nJiBuZXdVUkwpCisgICAgeworICAgICAgICBpZiAoZGlzcGF0Y2hl
ZCgpKQorICAgICAgICAgICAgcmV0dXJuOworCisgICAgICAgIGluaXRFdmVudChldmVudFR5cGUs
IGNhbkJ1YmJsZSwgY2FuY2VsYWJsZSk7CisKKyAgICAgICAgbV9vbGRVUkwgPSBvbGRVUkw7Cisg
ICAgICAgIG1fbmV3VVJMID0gbmV3VVJMOworICAgIH0KKworICAgIGNvbnN0IFN0cmluZyYgb2xk
VVJMKCkgY29uc3QgeyByZXR1cm4gbV9vbGRVUkw7IH0KKyAgICBjb25zdCBTdHJpbmcmIG5ld1VS
TCgpIGNvbnN0IHsgcmV0dXJuIG1fbmV3VVJMOyB9CisKK3ByaXZhdGU6CisgICAgSGFzaENoYW5n
ZUV2ZW50KGNvbnN0IFN0cmluZyYgb2xkVVJMLCBjb25zdCBTdHJpbmcmIG5ld1VSTCkKKyAgICAg
ICAgOiBFdmVudChldmVudE5hbWVzKCkuaGFzaGNoYW5nZUV2ZW50LCBmYWxzZSwgZmFsc2UpCisg
ICAgICAgICwgbV9vbGRVUkwob2xkVVJMKQorICAgICAgICAsIG1fbmV3VVJMKG5ld1VSTCkKKyAg
ICB7fQorCisgICAgU3RyaW5nIG1fb2xkVVJMOworICAgIFN0cmluZyBtX25ld1VSTDsKK307CisK
K30gLy8gbmFtZXNwYWNlIFdlYkNvcmUKKworI2VuZGlmIC8vIEhhc2hDaGFuZ2VFdmVudF9oCmRp
ZmYgLS1naXQgYS9XZWJDb3JlL2RvbS9IYXNoQ2hhbmdlRXZlbnQuaWRsIGIvV2ViQ29yZS9kb20v
SGFzaENoYW5nZUV2ZW50LmlkbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi42MzA3M2M0YjJmMGE4OTZhZWQ1M2NlOThl
NzQwZWQwNjU2M2IyYTIxCi0tLSAvZGV2L251bGwKKysrIGIvV2ViQ29yZS9kb20vSGFzaENoYW5n
ZUV2ZW50LmlkbApAQCAtMCwwICsxLDM1IEBACisvKgorICogQ29weXJpZ2h0IChDKSAyMDEwIEFw
cGxlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAqCisgKiBUaGlzIGxpYnJhcnkgaXMgZnJl
ZSBzb2Z0d2FyZTsgeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29yCisgKiBtb2RpZnkgaXQg
dW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUgTGlicmFyeSBHZW5lcmFsIFB1YmxpYworICogTGlj
ZW5zZSBhcyBwdWJsaXNoZWQgYnkgdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbjsgZWl0aGVy
CisgKiB2ZXJzaW9uIDIgb2YgdGhlIExpY2Vuc2UsIG9yIChhdCB5b3VyIG9wdGlvbikgYW55IGxh
dGVyIHZlcnNpb24uCisgKgorICogVGhpcyBsaWJyYXJ5IGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBo
b3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCisgKiBidXQgV0lUSE9VVCBBTlkgV0FSUkFOVFk7
IHdpdGhvdXQgZXZlbiB0aGUgaW1wbGllZCB3YXJyYW50eSBvZgorICogTUVSQ0hBTlRBQklMSVRZ
IG9yIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFLiAgU2VlIHRoZSBHTlUKKyAqIExp
YnJhcnkgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBmb3IgbW9yZSBkZXRhaWxzLgorICoKKyAqIFlv
dSBzaG91bGQgaGF2ZSByZWNlaXZlZCBhIGNvcHkgb2YgdGhlIEdOVSBMaWJyYXJ5IEdlbmVyYWwg
UHVibGljIExpY2Vuc2UKKyAqIGFsb25nIHdpdGggdGhpcyBsaWJyYXJ5OyBzZWUgdGhlIGZpbGUg
Q09QWUlORy5MSUIuICBJZiBub3QsIHdyaXRlIHRvCisgKiB0aGUgRnJlZSBTb2Z0d2FyZSBGb3Vu
ZGF0aW9uLCBJbmMuLCA1MSBGcmFua2xpbiBTdHJlZXQsIEZpZnRoIEZsb29yLAorICogQm9zdG9u
LCBNQSAwMjExMC0xMzAxLCBVU0EuCisgKi8KKworbW9kdWxlIGV2ZW50cyB7CisKKyAgICAvLyBJ
bnRyb2R1Y2VkIGluIGh0dHA6Ly93d3cud2hhdHdnLm9yZy9zcGVjcy93ZWItYXBwcy9jdXJyZW50
LXdvcmsvbXVsdGlwYWdlL2hpc3RvcnkuaHRtbCNldmVudC1oYXNoY2hhbmdlCisgICAgaW50ZXJm
YWNlIFsKKyAgICAgICAgR2VuZXJhdGVDb25zdHJ1Y3RvcgorICAgIF0gSGFzaENoYW5nZUV2ZW50
IDogRXZlbnQgeworICAgICAgICB2b2lkIGluaXRIYXNoQ2hhbmdlRXZlbnQoaW4gRE9NU3RyaW5n
IHR5cGUsIAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaW4gYm9vbGVhbiBjYW5C
dWJibGUsIAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaW4gYm9vbGVhbiBjYW5j
ZWxhYmxlLCAKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGluIERPTVN0cmluZyBv
bGRVUkwsIAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaW4gRE9NU3RyaW5nIG5l
d1VSTCk7IAorICAgICAgICByZWFkb25seSBhdHRyaWJ1dGUgRE9NU3RyaW5nIG9sZFVSTDsKKyAg
ICAgICAgcmVhZG9ubHkgYXR0cmlidXRlIERPTVN0cmluZyBuZXdVUkw7CisgICAgfTsKKworfQpk
aWZmIC0tZ2l0IGEvV2ViQ29yZS9wYWdlL0RPTVdpbmRvdy5pZGwgYi9XZWJDb3JlL3BhZ2UvRE9N
V2luZG93LmlkbAppbmRleCAyMzUwOGJlNWQyZWEwZWEwMDY5MzBmMDlmMTg3YTBlNTI5YWYyZDMz
Li43MmNhMzZhOTdmNTM5OGVhMGVhY2ZiNDFmMTkwZDAwMWFhMjRjZmE0IDEwMDY0NAotLS0gYS9X
ZWJDb3JlL3BhZ2UvRE9NV2luZG93LmlkbAorKysgYi9XZWJDb3JlL3BhZ2UvRE9NV2luZG93Lmlk
bApAQCAtNDk3LDYgKzQ5Nyw3IEBAIG1vZHVsZSB3aW5kb3cgewogCiAgICAgICAgIGF0dHJpYnV0
ZSBFdmVudENvbnN0cnVjdG9yIEV2ZW50OwogICAgICAgICBhdHRyaWJ1dGUgQmVmb3JlTG9hZEV2
ZW50Q29uc3RydWN0b3IgQmVmb3JlTG9hZEV2ZW50OworICAgICAgICBhdHRyaWJ1dGUgSGFzaENo
YW5nZUV2ZW50Q29uc3RydWN0b3IgSGFzaENoYW5nZUV2ZW50OwogICAgICAgICBhdHRyaWJ1dGUg
S2V5Ym9hcmRFdmVudENvbnN0cnVjdG9yIEtleWJvYXJkRXZlbnQ7CiAgICAgICAgIGF0dHJpYnV0
ZSBNb3VzZUV2ZW50Q29uc3RydWN0b3IgTW91c2VFdmVudDsKICAgICAgICAgYXR0cmlidXRlIE11
dGF0aW9uRXZlbnRDb25zdHJ1Y3RvciBNdXRhdGlvbkV2ZW50Owo=
</data>

          </attachment>
      

    </bug>

</bugzilla>