<?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>71851</bug_id>
          
          <creation_ts>2011-11-08 13:15:18 -0800</creation_ts>
          <short_desc>Implement script MIME restrictions for X-Content-Type-Options: nosniff</short_desc>
          <delta_ts>2013-02-12 15:46:36 -0800</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>WebCore Misc.</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>All</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords></keywords>
          <priority>P2</priority>
          <bug_severity>Minor</bug_severity>
          <target_milestone>---</target_milestone>
          <dependson>72414</dependson>
    
    <dependson>109029</dependson>
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Thomas Sepez">tsepez</reporter>
          <assigned_to name="Mike West">mkwst</assigned_to>
          <cc>abarth</cc>
    
    <cc>ap</cc>
    
    <cc>buildbot</cc>
    
    <cc>cevans</cc>
    
    <cc>dglazkov</cc>
    
    <cc>gyuyoung.kim</cc>
    
    <cc>japhet</cc>
    
    <cc>mkwst</cc>
    
    <cc>mkwst+watchlist</cc>
    
    <cc>ojan.autocc</cc>
    
    <cc>rakuco</cc>
    
    <cc>rniwa</cc>
    
    <cc>sam</cc>
    
    <cc>syoichi</cc>
    
    <cc>webkit.review.bot</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>498386</commentid>
    <comment_count>0</comment_count>
    <who name="Thomas Sepez">tsepez</who>
    <bug_when>2011-11-08 13:15:18 -0800</bug_when>
    <thetext>Prevent executing script along the lines of: http://msdn.microsoft.com/en-us/library/gg622941(v=vs.85).aspx</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>498486</commentid>
    <comment_count>1</comment_count>
    <who name="Adam Barth">abarth</who>
    <bug_when>2011-11-08 16:03:30 -0800</bug_when>
    <thetext>We probably use put this behind an ENABLE(NOSNIFF) ifdef.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>499144</commentid>
    <comment_count>2</comment_count>
    <who name="Thomas Sepez">tsepez</who>
    <bug_when>2011-11-09 10:55:32 -0800</bug_when>
    <thetext>Good point.  ENABLE(NOSNIFF) will reduce friction to approval.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>499388</commentid>
    <comment_count>3</comment_count>
      <attachid>114373</attachid>
    <who name="Thomas Sepez">tsepez</who>
    <bug_when>2011-11-09 15:11:40 -0800</bug_when>
    <thetext>Created attachment 114373
Proposed patch.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>499391</commentid>
    <comment_count>4</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2011-11-09 15:14:01 -0800</bug_when>
    <thetext>Attachment 114373 did not pass style-queue:

Failed to run &quot;[&apos;Tools/Scripts/check-webkit-style&apos;, &apos;--diff-files&apos;, u&apos;LayoutTests/ChangeLog&apos;, u&apos;LayoutTests/http...&quot; exit_code: 1

Source/WebCore/loader/cache/CachedScript.cpp:154:  Place brace on its own line for function definitions.  [whitespace/braces] [4]
Total errors found: 1 in 21 files


If any of these errors are false positives, please file a bug against check-webkit-style.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>499398</commentid>
    <comment_count>5</comment_count>
      <attachid>114373</attachid>
    <who name="Adam Barth">abarth</who>
    <bug_when>2011-11-09 15:20:46 -0800</bug_when>
    <thetext>Comment on attachment 114373
Proposed patch.

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

&gt; Source/WebCore/dom/ScriptElement.cpp:52
&gt; +#if ENABLE(NOSNIFF)
&gt; +#include &quot;Console.h&quot;
&gt; +#include &quot;DOMWindow.h&quot;
&gt; +#endif

These can just be included unconditionally.

&gt; Source/WebCore/dom/ScriptElement.cpp:300
&gt; +        String consoleMessage = &quot;Refused to load script from &quot; + m_cachedScript-&gt;url().string() + &quot; due to MIME type mismatch.\n&quot;;

Do we want to say something about nosniff here?

&gt; Source/WebCore/dom/ScriptElement.cpp:301
&gt; +        m_element-&gt;document()-&gt;domWindow()-&gt;console()-&gt;addMessage(JSMessageSource, LogMessageType, ErrorMessageLevel, consoleMessage, 1, String());

m_element-&gt;document()-&gt;domWindow()-&gt;console()-&gt;addMessage

can be much shorter:

m_element-&gt;document()-&gt;addConsoleMessage

&gt; Source/WebCore/loader/cache/CachedScript.cpp:43
&gt; +#if ENABLE(NOSNIFF)
&gt; +#include &quot;HTTPParsers.h&quot;
&gt; +#endif

Same here.

&gt; Source/WebCore/loader/cache/CachedScript.cpp:167
&gt; +            permittedMimeTypes.add(&quot;application/ecmascript&quot;);
&gt; +            permittedMimeTypes.add(&quot;application/javascript&quot;);
&gt; +            permittedMimeTypes.add(&quot;application/x-javascript&quot;);
&gt; +            permittedMimeTypes.add(&quot;text/ecmascript&quot;);
&gt; +            permittedMimeTypes.add(&quot;text/javascript&quot;);
&gt; +            permittedMimeTypes.add(&quot;text/jscript&quot;);
&gt; +            permittedMimeTypes.add(&quot;text/x-javascript&quot;);
&gt; +            permittedMimeTypes.add(&quot;text/vbs&quot;);
&gt; +            permittedMimeTypes.add(&quot;text/vbscript&quot;);

Does this list of types exist somewhere already?

&gt; Source/WebCore/platform/network/HTTPParsers.cpp:379
&gt; +    if (contentTypeOptions.findIgnoringCase(&quot;nosniff&quot;) != notFound)

This will match xnosniffbob, which isn&apos;t right.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>499434</commentid>
    <comment_count>6</comment_count>
      <attachid>114383</attachid>
    <who name="Thomas Sepez">tsepez</who>
    <bug_when>2011-11-09 16:04:01 -0800</bug_when>
    <thetext>Created attachment 114383
Patch + address comments

Q. ENABLE_NOSNIFF is on by default so that the new tests pass.  Better way of doing this?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>499440</commentid>
    <comment_count>7</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2011-11-09 16:08:44 -0800</bug_when>
    <thetext>Attachment 114383 did not pass style-queue:

Failed to run &quot;[&apos;Tools/Scripts/check-webkit-style&apos;, &apos;--diff-files&apos;, u&apos;LayoutTests/ChangeLog&apos;, u&apos;LayoutTests/http...&quot; exit_code: 1

Source/WebCore/dom/ScriptElement.cpp:33:  Alphabetical sorting problem.  [build/include_order] [4]
Total errors found: 1 in 21 files


If any of these errors are false positives, please file a bug against check-webkit-style.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>499448</commentid>
    <comment_count>8</comment_count>
      <attachid>114387</attachid>
    <who name="Thomas Sepez">tsepez</who>
    <bug_when>2011-11-09 16:14:03 -0800</bug_when>
    <thetext>Created attachment 114387
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>499462</commentid>
    <comment_count>9</comment_count>
    <who name="Alexey Proskuryakov">ap</who>
    <bug_when>2011-11-09 16:30:29 -0800</bug_when>
    <thetext>&gt; Q. ENABLE_NOSNIFF is on by default

New ENABLE macros and their default values need to be discussed on webkit-dev.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>499483</commentid>
    <comment_count>10</comment_count>
      <attachid>114387</attachid>
    <who name="Adam Barth">abarth</who>
    <bug_when>2011-11-09 16:53:59 -0800</bug_when>
    <thetext>Comment on attachment 114387
Patch

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

&gt; Source/WebCore/dom/ScriptElement.cpp:297
&gt; +        String consoleMessage = &quot;Refused to load script from &quot; + m_cachedScript-&gt;url().string() + &quot; due to MIME type mismatch and X-Content-Type-Options header.\n&quot;;

No \n needed.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>499485</commentid>
    <comment_count>11</comment_count>
    <who name="Adam Barth">abarth</who>
    <bug_when>2011-11-09 16:55:13 -0800</bug_when>
    <thetext>Tom, would you be willing to send a note to webkit-dev?  IMHO, this really a &quot;feature&quot;, but there&apos;s no harm in sending a note.  We can also skip the ENABLE flag if that&apos;s easier.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>499488</commentid>
    <comment_count>12</comment_count>
      <attachid>114387</attachid>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2011-11-09 16:59:21 -0800</bug_when>
    <thetext>Comment on attachment 114387
Patch

Attachment 114387 did not pass chromium-ews (chromium-xvfb):
Output: http://queues.webkit.org/results/10401131

New failing tests:
http/tests/security/nosniff/script-blocked-nosniff.html</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>606152</commentid>
    <comment_count>13</comment_count>
      <attachid>114387</attachid>
    <who name="Ojan Vafai">ojan</who>
    <bug_when>2012-04-19 16:41:18 -0700</bug_when>
    <thetext>Comment on attachment 114387
Patch

As per the webkit-dev discussion, the flag should be off for the non-chromium ports. Each port should enable it explicitly since they&apos;ll need to add extra port-specific code. The way you handle the tests for a disabled flag is to add the tests to the Skipped list of the ports that have it disabled.

Other than that and Adam&apos;s one comment about the newline, the patch looks fine to me.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>718480</commentid>
    <comment_count>14</comment_count>
    <who name="Mike West">mkwst</who>
    <bug_when>2012-09-12 10:04:16 -0700</bug_when>
    <thetext>(In reply to comment #13)
&gt; (From update of attachment 114387 [details])
&gt; As per the webkit-dev discussion, the flag should be off for the non-chromium ports. Each port should enable it explicitly since they&apos;ll need to add extra port-specific code. The way you handle the tests for a disabled flag is to add the tests to the Skipped list of the ports that have it disabled.
&gt; 
&gt; Other than that and Adam&apos;s one comment about the newline, the patch looks fine to me.

Is this still open, Tom, or has it landed in some other form? If not, I can take a stab at rebasing/rewriting it onto the current ToT if that would be helpful.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>718520</commentid>
    <comment_count>15</comment_count>
    <who name="Thomas Sepez">tsepez</who>
    <bug_when>2012-09-12 10:59:55 -0700</bug_when>
    <thetext>Mike, feel free to take a stab.  But see http://code.google.com/p/chromium/issues/detail?id=95901 and https://bugs.webkit.org/show_bug.cgi?id=72414 for reasons why this has stalled.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>718525</commentid>
    <comment_count>16</comment_count>
    <who name="Mike West">mkwst</who>
    <bug_when>2012-09-12 11:17:36 -0700</bug_when>
    <thetext>(In reply to comment #15)
&gt; Mike, feel free to take a stab.  But see http://code.google.com/p/chromium/issues/detail?id=95901 and https://bugs.webkit.org/show_bug.cgi?id=72414 for reasons why this has stalled.

I see. I missed the dependency... I have no idea how 304s work, but I&apos;ll take a look anyway. Might be interesting. :)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>825378</commentid>
    <comment_count>17</comment_count>
    <who name="Mike West">mkwst</who>
    <bug_when>2013-02-05 04:45:37 -0800</bug_when>
    <thetext>Tom, assuming that the patch in the blocking bugs goes through, do you want to pick this back up, or should I work through reanimating your patch?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>825633</commentid>
    <comment_count>18</comment_count>
    <who name="Thomas Sepez">tsepez</who>
    <bug_when>2013-02-05 10:48:28 -0800</bug_when>
    <thetext>(In reply to comment #17)
&gt; Tom, assuming that the patch in the blocking bugs goes through, do you want to pick this back up, or should I work through reanimating your patch?

Mike, I&apos;m a little tied up at the moment with other things; If you&apos;d like to take a stab at it, I would appreciate it.  Thanks.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>825647</commentid>
    <comment_count>19</comment_count>
    <who name="Mike West">mkwst</who>
    <bug_when>2013-02-05 10:59:53 -0800</bug_when>
    <thetext>(In reply to comment #18)
&gt; (In reply to comment #17)
&gt; &gt; Tom, assuming that the patch in the blocking bugs goes through, do you want to pick this back up, or should I work through reanimating your patch?
&gt; 
&gt; Mike, I&apos;m a little tied up at the moment with other things; If you&apos;d like to take a stab at it, I would appreciate it.  Thanks.

Sure, I&apos;ll poke at it tomorrow.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>826323</commentid>
    <comment_count>20</comment_count>
      <attachid>186822</attachid>
    <who name="Mike West">mkwst</who>
    <bug_when>2013-02-06 04:24:09 -0800</bug_when>
    <thetext>Created attachment 186822
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>826335</commentid>
    <comment_count>21</comment_count>
    <who name="Mike West">mkwst</who>
    <bug_when>2013-02-06 04:35:59 -0800</bug_when>
    <thetext>(In reply to comment #20)
&gt; Created an attachment (id=186822) [details]
&gt; Patch

Tom, Ojan, Adam: would you mind taking a quick look at this patch? I&apos;ve split the ENABLE flag into a separate patch for clarity, and added some additional tests, but it&apos;s otherwise very similar to the original patch, so I hope the review will be straightforward.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>826531</commentid>
    <comment_count>22</comment_count>
      <attachid>186822</attachid>
    <who name="Adam Barth">abarth</who>
    <bug_when>2013-02-06 10:29:40 -0800</bug_when>
    <thetext>Comment on attachment 186822
Patch

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

As I mentioned on webkit-dev, we should check that the latest version of IE still has this behavior.

&gt; Source/WebCore/loader/cache/CachedScript.cpp:134
&gt; +            // List of types from http://msdn.microsoft.com/en-us/library/gg622941(v=vs.85).aspx

We already have a list of MIME types that we accept in the &quot;type&quot; attribute of the script tag.  Should we use that list instead?

&gt; Source/WebCore/loader/cache/CachedScript.cpp:143
&gt; +            permittedMimeTypes.add(&quot;text/vbs&quot;);
&gt; +            permittedMimeTypes.add(&quot;text/vbscript&quot;);

We don&apos;t support vbscript, so presumably we wouldn&apos;t want have these on the list....</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>826564</commentid>
    <comment_count>23</comment_count>
    <who name="Mike West">mkwst</who>
    <bug_when>2013-02-06 11:01:17 -0800</bug_when>
    <thetext>(In reply to comment #22)
&gt; (From update of attachment 186822 [details])
&gt; View in context: https://bugs.webkit.org/attachment.cgi?id=186822&amp;action=review
&gt; 
&gt; As I mentioned on webkit-dev, we should check that the latest version of IE still has this behavior.

Thannks, I&apos;ll will respond on webkit-dev once I have some data.

&gt; &gt; Source/WebCore/loader/cache/CachedScript.cpp:134
&gt; &gt; +            // List of types from http://msdn.microsoft.com/en-us/library/gg622941(v=vs.85).aspx
&gt; 
&gt; We already have a list of MIME types that we accept in the &quot;type&quot; attribute of the script tag.  Should we use that list instead?

I love you, ScriptElement::isScriptTypeSupported is much simpler.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>827199</commentid>
    <comment_count>24</comment_count>
      <attachid>187027</attachid>
    <who name="Mike West">mkwst</who>
    <bug_when>2013-02-07 02:20:00 -0800</bug_when>
    <thetext>Created attachment 187027
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>827201</commentid>
    <comment_count>25</comment_count>
    <who name="Mike West">mkwst</who>
    <bug_when>2013-02-07 02:21:19 -0800</bug_when>
    <thetext>(In reply to comment #22)
&gt; (From update of attachment 186822 [details])
&gt; View in context: https://bugs.webkit.org/attachment.cgi?id=186822&amp;action=review
&gt; 
&gt; As I mentioned on webkit-dev, we should check that the latest version of IE still has this behavior.

As I noted on the list, it looks like IE10 does have this behavior.

&gt; &gt; Source/WebCore/loader/cache/CachedScript.cpp:134
&gt; &gt; +            // List of types from http://msdn.microsoft.com/en-us/library/gg622941(v=vs.85).aspx
&gt; 
&gt; We already have a list of MIME types that we accept in the &quot;type&quot; attribute of the script tag.  Should we use that list instead?

Yes! MIMETypeRegistry FTW.

&gt; &gt; Source/WebCore/loader/cache/CachedScript.cpp:143
&gt; &gt; +            permittedMimeTypes.add(&quot;text/vbs&quot;);
&gt; &gt; +            permittedMimeTypes.add(&quot;text/vbscript&quot;);
&gt; 
&gt; We don&apos;t support vbscript, so presumably we wouldn&apos;t want have these on the list....

The list now matches the MIME types we currently accept, and I&apos;ve updated the tests and ChangeLog to match.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>827701</commentid>
    <comment_count>26</comment_count>
      <attachid>187027</attachid>
    <who name="Adam Barth">abarth</who>
    <bug_when>2013-02-07 10:58:27 -0800</bug_when>
    <thetext>Comment on attachment 187027
Patch

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

The change LGTM, but can we wait until Tuesday to land it?  That means it will have a full Dev channel cycle to catch compat problems before being promoted to the Beta channel.

&gt; Source/WebCore/loader/cache/CachedScript.cpp:134
&gt; +        return false;
&gt; +    return true;

There&apos;s no need to use an if statement.  You can just return the Boolean value directly.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>827717</commentid>
    <comment_count>27</comment_count>
    <who name="Mike West">mkwst</who>
    <bug_when>2013-02-07 11:02:30 -0800</bug_when>
    <thetext>(In reply to comment #26)
&gt; (From update of attachment 187027 [details])
&gt; View in context: https://bugs.webkit.org/attachment.cgi?id=187027&amp;action=review
&gt; 
&gt; The change LGTM, but can we wait until Tuesday to land it?  That means it will have a full Dev channel cycle to catch compat problems before being promoted to the Beta channel.

No rush. I&apos;ll land after the Chromium branch.

&gt; &gt; Source/WebCore/loader/cache/CachedScript.cpp:134
&gt; &gt; +        return false;
&gt; &gt; +    return true;
&gt; 
&gt; There&apos;s no need to use an if statement.  You can just return the Boolean value directly.

/me facepalm.

Yes. I could do that, couldn&apos;t I?

Thanks!</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>829024</commentid>
    <comment_count>28</comment_count>
      <attachid>187432</attachid>
    <who name="Mike West">mkwst</who>
    <bug_when>2013-02-09 07:24:21 -0800</bug_when>
    <thetext>Created attachment 187432
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>829034</commentid>
    <comment_count>29</comment_count>
      <attachid>187432</attachid>
    <who name="Build Bot">buildbot</who>
    <bug_when>2013-02-09 08:35:05 -0800</bug_when>
    <thetext>Comment on attachment 187432
Patch

Attachment 187432 did not pass mac-wk2-ews (mac-wk2):
Output: http://queues.webkit.org/results/16474391

New failing tests:
compositing/checkerboard.html
accessibility/anchor-linked-anonymous-block-crash.html
compositing/absolute-inside-out-of-view-fixed.html
animations/3d/matrix-transform-type-animation.html
http/tests/cache/cancel-multiple-post-xhrs.html
animations/3d/state-at-end-event-transform.html
animations/animation-add-events-in-handler.html
animations/additive-transform-animations.html
animations/3d/replace-filling-transform.html
http/tests/cache/history-only-cached-subresource-loads.html
compositing/bounds-in-flipped-writing-mode.html
accessibility/accessibility-node-reparent.html
animations/animation-border-overflow.html
accessibility/accessibility-object-detached.html
accessibility/anonymous-render-block-in-continuation-causes-crash.html
animations/animation-controller-drt-api.html
compositing/absolute-position-changed-with-composited-parent-layer.html
compositing/absolute-position-changed-in-composited-layer.html
http/tests/cache/iframe-304-crash.html
animations/3d/transform-perspective.html
http/tests/cache/cancel-during-failure-crash.html
canvas/philip/tests/2d.canvas.reference.html
canvas/philip/tests/2d.clearRect+fillRect.alpha0.5.html
canvas/philip/tests/2d.clearRect.basic.html
animations/3d/transform-origin-vs-functions.html
accessibility/accessibility-node-memory-management.html
animations/animation-css-rule-types.html
http/tests/cache/cached-main-resource.html
canvas/philip/tests/2d.clearRect+fillRect.basic.html
canvas/philip/tests/2d.clearRect+fillRect.alpha0.html</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>831339</commentid>
    <comment_count>30</comment_count>
      <attachid>187432</attachid>
    <who name="Mike West">mkwst</who>
    <bug_when>2013-02-12 15:25:51 -0800</bug_when>
    <thetext>Comment on attachment 187432
Patch

Chromium has branched; it should be safe to land this now. Throwing to the CQ in the hopes that it still applies cleanly. :)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>831365</commentid>
    <comment_count>31</comment_count>
      <attachid>187432</attachid>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2013-02-12 15:46:29 -0800</bug_when>
    <thetext>Comment on attachment 187432
Patch

Clearing flags on attachment: 187432

Committed r142683: &lt;http://trac.webkit.org/changeset/142683&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>831366</commentid>
    <comment_count>32</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2013-02-12 15:46:36 -0800</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>114373</attachid>
            <date>2011-11-09 15:11:40 -0800</date>
            <delta_ts>2011-11-09 16:04:01 -0800</delta_ts>
            <desc>Proposed patch.</desc>
            <filename>patch_71851.txt</filename>
            <type>text/plain</type>
            <size>28630</size>
            <attacher name="Thomas Sepez">tsepez</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9DaGFuZ2VMb2cKPT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291
cmNlL0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwkocmV2aXNpb24gOTk3NjUpCisrKyBTb3VyY2Uv
SmF2YVNjcmlwdENvcmUvQ2hhbmdlTG9nCSh3b3JraW5nIGNvcHkpCkBAIC0xLDMgKzEsMTIgQEAK
KzIwMTEtMTEtMDkgIFRvbSBTZXBleiAgPHRzZXBlekBjaHJvbWl1bS5vcmc+CisKKyAgICAgICAg
SW1wbGVtZW50IHNjcmlwdCBNSU1FIHJlc3RyaWN0aW9ucyBmb3IgWC1Db250ZW50LVR5cGUtT3B0
aW9uczogbm9zbmlmZgorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5j
Z2k/aWQ9NzE4NTEKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAg
ICAgICAqIENvbmZpZ3VyYXRpb25zL0ZlYXR1cmVEZWZpbmVzLnhjY29uZmlnOgorCiAyMDExLTEx
LTA5ICBHYXZpbiBCYXJyYWNsb3VnaCAgPGJhcnJhY2xvdWdoQGFwcGxlLmNvbT4KIAogICAgICAg
ICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9NzE4NzMKSW5kZXg6IFNv
dXJjZS9KYXZhU2NyaXB0Q29yZS9Db25maWd1cmF0aW9ucy9GZWF0dXJlRGVmaW5lcy54Y2NvbmZp
Zwo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09Ci0tLSBTb3VyY2UvSmF2YVNjcmlwdENvcmUvQ29uZmlndXJhdGlvbnMvRmVh
dHVyZURlZmluZXMueGNjb25maWcJKHJldmlzaW9uIDk5NzM3KQorKysgU291cmNlL0phdmFTY3Jp
cHRDb3JlL0NvbmZpZ3VyYXRpb25zL0ZlYXR1cmVEZWZpbmVzLnhjY29uZmlnCSh3b3JraW5nIGNv
cHkpCkBAIC05NCw2ICs5NCw3IEBAIEVOQUJMRV9NRURJQV9TVEFUSVNUSUNTID0gOwogRU5BQkxF
X01FVEVSX1RBRyA9IEVOQUJMRV9NRVRFUl9UQUc7CiBFTkFCTEVfTUhUTUwgPSA7CiBFTkFCTEVf
TVVUQVRJT05fT0JTRVJWRVJTID0gOworRU5BQkxFX05PU05JRkYgPSBFTkFCTEVfTk9TTklGRjsK
IEVOQUJMRV9OT1RJRklDQVRJT05TID0gOwogRU5BQkxFX1BBR0VfVklTSUJJTElUWV9BUEkgPSA7
CiBFTkFCTEVfUFJPR1JFU1NfVEFHID0gRU5BQkxFX1BST0dSRVNTX1RBRzsKQEAgLTExNCw0ICsx
MTUsNCBAQCBFTkFCTEVfV0VCX1RJTUlORyA9IDsKIEVOQUJMRV9XT1JLRVJTID0gRU5BQkxFX1dP
UktFUlM7CiBFTkFCTEVfWFNMVCA9IEVOQUJMRV9YU0xUOwogCi1GRUFUVVJFX0RFRklORVMgPSAk
KEVOQUJMRV8zRF9SRU5ERVJJTkcpICQoRU5BQkxFX0FDQ0VMRVJBVEVEXzJEX0NBTlZBUykgJChF
TkFCTEVfQU5JTUFUSU9OX0FQSSkgJChFTkFCTEVfQkxPQikgJChFTkFCTEVfQ0hBTk5FTF9NRVNT
QUdJTkcpICQoRU5BQkxFX0NMSUVOVF9CQVNFRF9HRU9MT0NBVElPTikgJChFTkFCTEVfQ1NTM19G
TEVYQk9YKSAkKEVOQUJMRV9DU1NfRklMVEVSUykgJChFTkFCTEVfQ1NTX1NIQURFUlMpICQoRU5B
QkxFX0RBVEFMSVNUKSAkKEVOQUJMRV9EQVRBX1RSQU5TRkVSX0lURU1TKSAkKEVOQUJMRV9ERVRB
SUxTKSAkKEVOQUJMRV9ERVZJQ0VfT1JJRU5UQVRJT04pICQoRU5BQkxFX0RJUkVDVE9SWV9VUExP
QUQpICQoRU5BQkxFX0ZJTEVfU1lTVEVNKSAkKEVOQUJMRV9GSUxURVJTKSAkKEVOQUJMRV9GVUxM
U0NSRUVOX0FQSSkgJChFTkFCTEVfR0FNRVBBRCkgJChFTkFCTEVfR0VPTE9DQVRJT04pICQoRU5B
QkxFX0lDT05EQVRBQkFTRSkgJChFTkFCTEVfSU5ERVhFRF9EQVRBQkFTRSkgJChFTkFCTEVfSU5Q
VVRfQ09MT1IpICQoRU5BQkxFX0lOUFVUX1NQRUVDSCkgJChFTkFCTEVfSU5QVVRfVFlQRV9EQVRF
KSAkKEVOQUJMRV9JTlBVVF9UWVBFX0RBVEVUSU1FKSAkKEVOQUJMRV9JTlBVVF9UWVBFX0RBVEVU
SU1FTE9DQUwpICQoRU5BQkxFX0lOUFVUX1RZUEVfTU9OVEgpICQoRU5BQkxFX0lOUFVUX1RZUEVf
VElNRSkgJChFTkFCTEVfSU5QVVRfVFlQRV9XRUVLKSAkKEVOQUJMRV9KQVZBU0NSSVBUX0RFQlVH
R0VSKSAkKEVOQUJMRV9MSU5LX1BSRUZFVENIKSAkKEVOQUJMRV9NQVRITUwpICQoRU5BQkxFX01F
RElBX1NPVVJDRSkgJChFTkFCTEVfTUVESUFfU1RBVElTVElDUykgJChFTkFCTEVfTUVURVJfVEFH
KSAkKEVOQUJMRV9NVVRBVElPTl9PQlNFUlZFUlMpICQoRU5BQkxFX05PVElGSUNBVElPTlMpICQo
RU5BQkxFX1BBR0VfVklTSUJJTElUWV9BUEkpICQoRU5BQkxFX1BST0dSRVNTX1RBRykgJChFTkFC
TEVfUVVPVEEpICQoRU5BQkxFX1JFR0lTVEVSX1BST1RPQ09MX0hBTkRMRVIpICQoRU5BQkxFX1JF
UVVFU1RfQU5JTUFUSU9OX0ZSQU1FKSAkKEVOQUJMRV9TSEFSRURfV09SS0VSUykgJChFTkFCTEVf
U1FMX0RBVEFCQVNFKSAkKEVOQUJMRV9TVkcpICQoRU5BQkxFX1NWR19ET01fT0JKQ19CSU5ESU5H
UykgJChFTkFCTEVfU1ZHX0ZPTlRTKSAkKEVOQUJMRV9UT1VDSF9JQ09OX0xPQURJTkcpICQoRU5B
QkxFX1ZJREVPKSAkKEVOQUJMRV9WSURFT19UUkFDSykgJChFTkFCTEVfV0VCR0wpICQoRU5BQkxF
X1dFQl9BVURJTykgJChFTkFCTEVfV0VCX1NPQ0tFVFMpICQoRU5BQkxFX1dFQl9USU1JTkcpICQo
RU5BQkxFX1dPUktFUlMpICQoRU5BQkxFX1hTTFQpOworRkVBVFVSRV9ERUZJTkVTID0gJChFTkFC
TEVfM0RfUkVOREVSSU5HKSAkKEVOQUJMRV9BQ0NFTEVSQVRFRF8yRF9DQU5WQVMpICQoRU5BQkxF
X0FOSU1BVElPTl9BUEkpICQoRU5BQkxFX0JMT0IpICQoRU5BQkxFX0NIQU5ORUxfTUVTU0FHSU5H
KSAkKEVOQUJMRV9DTElFTlRfQkFTRURfR0VPTE9DQVRJT04pICQoRU5BQkxFX0NTUzNfRkxFWEJP
WCkgJChFTkFCTEVfQ1NTX0ZJTFRFUlMpICQoRU5BQkxFX0NTU19TSEFERVJTKSAkKEVOQUJMRV9E
QVRBTElTVCkgJChFTkFCTEVfREFUQV9UUkFOU0ZFUl9JVEVNUykgJChFTkFCTEVfREVUQUlMUykg
JChFTkFCTEVfREVWSUNFX09SSUVOVEFUSU9OKSAkKEVOQUJMRV9ESVJFQ1RPUllfVVBMT0FEKSAk
KEVOQUJMRV9GSUxFX1NZU1RFTSkgJChFTkFCTEVfRklMVEVSUykgJChFTkFCTEVfRlVMTFNDUkVF
Tl9BUEkpICQoRU5BQkxFX0dBTUVQQUQpICQoRU5BQkxFX0dFT0xPQ0FUSU9OKSAkKEVOQUJMRV9J
Q09OREFUQUJBU0UpICQoRU5BQkxFX0lOREVYRURfREFUQUJBU0UpICQoRU5BQkxFX0lOUFVUX0NP
TE9SKSAkKEVOQUJMRV9JTlBVVF9TUEVFQ0gpICQoRU5BQkxFX0lOUFVUX1RZUEVfREFURSkgJChF
TkFCTEVfSU5QVVRfVFlQRV9EQVRFVElNRSkgJChFTkFCTEVfSU5QVVRfVFlQRV9EQVRFVElNRUxP
Q0FMKSAkKEVOQUJMRV9JTlBVVF9UWVBFX01PTlRIKSAkKEVOQUJMRV9JTlBVVF9UWVBFX1RJTUUp
ICQoRU5BQkxFX0lOUFVUX1RZUEVfV0VFSykgJChFTkFCTEVfSkFWQVNDUklQVF9ERUJVR0dFUikg
JChFTkFCTEVfTElOS19QUkVGRVRDSCkgJChFTkFCTEVfTUFUSE1MKSAkKEVOQUJMRV9NRURJQV9T
T1VSQ0UpICQoRU5BQkxFX01FRElBX1NUQVRJU1RJQ1MpICQoRU5BQkxFX01FVEVSX1RBRykgJChF
TkFCTEVfTVVUQVRJT05fT0JTRVJWRVJTKSAkKEVOQUJMRV9OT1NOSUZGKSAkKEVOQUJMRV9OT1RJ
RklDQVRJT05TKSAkKEVOQUJMRV9QQUdFX1ZJU0lCSUxJVFlfQVBJKSAkKEVOQUJMRV9QUk9HUkVT
U19UQUcpICQoRU5BQkxFX1FVT1RBKSAkKEVOQUJMRV9SRUdJU1RFUl9QUk9UT0NPTF9IQU5ETEVS
KSAkKEVOQUJMRV9SRVFVRVNUX0FOSU1BVElPTl9GUkFNRSkgJChFTkFCTEVfU0hBUkVEX1dPUktF
UlMpICQoRU5BQkxFX1NRTF9EQVRBQkFTRSkgJChFTkFCTEVfU1ZHKSAkKEVOQUJMRV9TVkdfRE9N
X09CSkNfQklORElOR1MpICQoRU5BQkxFX1NWR19GT05UUykgJChFTkFCTEVfVE9VQ0hfSUNPTl9M
T0FESU5HKSAkKEVOQUJMRV9WSURFTykgJChFTkFCTEVfVklERU9fVFJBQ0spICQoRU5BQkxFX1dF
QkdMKSAkKEVOQUJMRV9XRUJfQVVESU8pICQoRU5BQkxFX1dFQl9TT0NLRVRTKSAkKEVOQUJMRV9X
RUJfVElNSU5HKSAkKEVOQUJMRV9XT1JLRVJTKSAkKEVOQUJMRV9YU0xUKTsKSW5kZXg6IFNvdXJj
ZS9XZWJDb3JlL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9DaGFuZ2VM
b2cJKHJldmlzaW9uIDk5NzY1KQorKysgU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCSh3b3JraW5n
IGNvcHkpCkBAIC0xLDMgKzEsMjMgQEAKKzIwMTEtMTEtMDkgIFRvbSBTZXBleiAgPHRzZXBlekBj
aHJvbWl1bS5vcmc+CisKKyAgICAgICAgSW1wbGVtZW50IHNjcmlwdCBNSU1FIHJlc3RyaWN0aW9u
cyBmb3IgWC1Db250ZW50LVR5cGUtT3B0aW9uczogbm9zbmlmZgorICAgICAgICBodHRwczovL2J1
Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9NzE4NTEKKworICAgICAgICBSZXZpZXdlZCBi
eSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBUZXN0czogaHR0cC90ZXN0cy9zZWN1cml0eS9u
b3NuaWZmL3NjcmlwdC1hbGxvd2VkLW5vc25pZmYuaHRtbAorICAgICAgICAgICAgICAgaHR0cC90
ZXN0cy9zZWN1cml0eS9ub3NuaWZmL3NjcmlwdC1ibG9ja2VkLW5vc25pZmYuaHRtbAorCisgICAg
ICAgICogQ29uZmlndXJhdGlvbnMvRmVhdHVyZURlZmluZXMueGNjb25maWc6CisgICAgICAgICog
ZG9tL1NjcmlwdEVsZW1lbnQuY3BwOgorICAgICAgICAoV2ViQ29yZTo6U2NyaXB0RWxlbWVudDo6
ZXhlY3V0ZVNjcmlwdCk6CisgICAgICAgICogbG9hZGVyL2NhY2hlL0NhY2hlZFNjcmlwdC5jcHA6
CisgICAgICAgIChXZWJDb3JlOjpDYWNoZWRTY3JpcHQ6OmFsbG93ZWRQZXJOb3NuaWZmUG9saWN5
KToKKyAgICAgICAgKiBsb2FkZXIvY2FjaGUvQ2FjaGVkU2NyaXB0Lmg6CisgICAgICAgICogcGxh
dGZvcm0vbmV0d29yay9IVFRQUGFyc2Vycy5jcHA6CisgICAgICAgIChXZWJDb3JlOjpjb250ZW50
VHlwZU9wdGlvbnNUeXBlKToKKyAgICAgICAgKiBwbGF0Zm9ybS9uZXR3b3JrL0hUVFBQYXJzZXJz
Lmg6CisKIDIwMTEtMTEtMDkgIEtlbnRhcm8gSGFyYSAgPGhhcmFrZW5AY2hyb21pdW0ub3JnPgog
CiAgICAgICAgIFJlcGxhY2UgW0NhbkJlQ29uc3RydWN0ZWRdIElETCB3aXRoIFtDb25zdHJ1Y3Rv
cl0gSURMCkluZGV4OiBTb3VyY2UvV2ViQ29yZS9Db25maWd1cmF0aW9ucy9GZWF0dXJlRGVmaW5l
cy54Y2NvbmZpZwo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9Db25maWd1cmF0aW9ucy9G
ZWF0dXJlRGVmaW5lcy54Y2NvbmZpZwkocmV2aXNpb24gOTk3MzcpCisrKyBTb3VyY2UvV2ViQ29y
ZS9Db25maWd1cmF0aW9ucy9GZWF0dXJlRGVmaW5lcy54Y2NvbmZpZwkod29ya2luZyBjb3B5KQpA
QCAtOTQsNiArOTQsNyBAQCBFTkFCTEVfTUVESUFfU1RBVElTVElDUyA9IDsKIEVOQUJMRV9NRVRF
Ul9UQUcgPSBFTkFCTEVfTUVURVJfVEFHOwogRU5BQkxFX01IVE1MID0gOwogRU5BQkxFX01VVEFU
SU9OX09CU0VSVkVSUyA9IDsKK0VOQUJMRV9OT1NOSUZGID0gRU5BQkxFX05PU05JRkY7CiBFTkFC
TEVfTk9USUZJQ0FUSU9OUyA9IDsKIEVOQUJMRV9QQUdFX1ZJU0lCSUxJVFlfQVBJID0gOwogRU5B
QkxFX1BST0dSRVNTX1RBRyA9IEVOQUJMRV9QUk9HUkVTU19UQUc7CkBAIC0xMTQsNCArMTE1LDQg
QEAgRU5BQkxFX1dFQl9USU1JTkcgPSA7CiBFTkFCTEVfV09SS0VSUyA9IEVOQUJMRV9XT1JLRVJT
OwogRU5BQkxFX1hTTFQgPSBFTkFCTEVfWFNMVDsKIAotRkVBVFVSRV9ERUZJTkVTID0gJChFTkFC
TEVfM0RfUkVOREVSSU5HKSAkKEVOQUJMRV9BQ0NFTEVSQVRFRF8yRF9DQU5WQVMpICQoRU5BQkxF
X0FOSU1BVElPTl9BUEkpICQoRU5BQkxFX0JMT0IpICQoRU5BQkxFX0NIQU5ORUxfTUVTU0FHSU5H
KSAkKEVOQUJMRV9DTElFTlRfQkFTRURfR0VPTE9DQVRJT04pICQoRU5BQkxFX0NTUzNfRkxFWEJP
WCkgJChFTkFCTEVfQ1NTX0ZJTFRFUlMpICQoRU5BQkxFX0NTU19TSEFERVJTKSAkKEVOQUJMRV9E
QVRBTElTVCkgJChFTkFCTEVfREFUQV9UUkFOU0ZFUl9JVEVNUykgJChFTkFCTEVfREVUQUlMUykg
JChFTkFCTEVfREVWSUNFX09SSUVOVEFUSU9OKSAkKEVOQUJMRV9ESVJFQ1RPUllfVVBMT0FEKSAk
KEVOQUJMRV9GSUxFX1NZU1RFTSkgJChFTkFCTEVfRklMVEVSUykgJChFTkFCTEVfRlVMTFNDUkVF
Tl9BUEkpICQoRU5BQkxFX0dBTUVQQUQpICQoRU5BQkxFX0dFT0xPQ0FUSU9OKSAkKEVOQUJMRV9J
Q09OREFUQUJBU0UpICQoRU5BQkxFX0lOREVYRURfREFUQUJBU0UpICQoRU5BQkxFX0lOUFVUX0NP
TE9SKSAkKEVOQUJMRV9JTlBVVF9TUEVFQ0gpICQoRU5BQkxFX0lOUFVUX1RZUEVfREFURSkgJChF
TkFCTEVfSU5QVVRfVFlQRV9EQVRFVElNRSkgJChFTkFCTEVfSU5QVVRfVFlQRV9EQVRFVElNRUxP
Q0FMKSAkKEVOQUJMRV9JTlBVVF9UWVBFX01PTlRIKSAkKEVOQUJMRV9JTlBVVF9UWVBFX1RJTUUp
ICQoRU5BQkxFX0lOUFVUX1RZUEVfV0VFSykgJChFTkFCTEVfSkFWQVNDUklQVF9ERUJVR0dFUikg
JChFTkFCTEVfTElOS19QUkVGRVRDSCkgJChFTkFCTEVfTUFUSE1MKSAkKEVOQUJMRV9NRURJQV9T
T1VSQ0UpICQoRU5BQkxFX01FRElBX1NUQVRJU1RJQ1MpICQoRU5BQkxFX01FVEVSX1RBRykgJChF
TkFCTEVfTVVUQVRJT05fT0JTRVJWRVJTKSAkKEVOQUJMRV9OT1RJRklDQVRJT05TKSAkKEVOQUJM
RV9QQUdFX1ZJU0lCSUxJVFlfQVBJKSAkKEVOQUJMRV9QUk9HUkVTU19UQUcpICQoRU5BQkxFX1FV
T1RBKSAkKEVOQUJMRV9SRUdJU1RFUl9QUk9UT0NPTF9IQU5ETEVSKSAkKEVOQUJMRV9SRVFVRVNU
X0FOSU1BVElPTl9GUkFNRSkgJChFTkFCTEVfU0hBUkVEX1dPUktFUlMpICQoRU5BQkxFX1NRTF9E
QVRBQkFTRSkgJChFTkFCTEVfU1ZHKSAkKEVOQUJMRV9TVkdfRE9NX09CSkNfQklORElOR1MpICQo
RU5BQkxFX1NWR19GT05UUykgJChFTkFCTEVfVE9VQ0hfSUNPTl9MT0FESU5HKSAkKEVOQUJMRV9W
SURFTykgJChFTkFCTEVfVklERU9fVFJBQ0spICQoRU5BQkxFX1dFQkdMKSAkKEVOQUJMRV9XRUJf
QVVESU8pICQoRU5BQkxFX1dFQl9TT0NLRVRTKSAkKEVOQUJMRV9XRUJfVElNSU5HKSAkKEVOQUJM
RV9XT1JLRVJTKSAkKEVOQUJMRV9YU0xUKTsKK0ZFQVRVUkVfREVGSU5FUyA9ICQoRU5BQkxFXzNE
X1JFTkRFUklORykgJChFTkFCTEVfQUNDRUxFUkFURURfMkRfQ0FOVkFTKSAkKEVOQUJMRV9BTklN
QVRJT05fQVBJKSAkKEVOQUJMRV9CTE9CKSAkKEVOQUJMRV9DSEFOTkVMX01FU1NBR0lORykgJChF
TkFCTEVfQ0xJRU5UX0JBU0VEX0dFT0xPQ0FUSU9OKSAkKEVOQUJMRV9DU1MzX0ZMRVhCT1gpICQo
RU5BQkxFX0NTU19GSUxURVJTKSAkKEVOQUJMRV9DU1NfU0hBREVSUykgJChFTkFCTEVfREFUQUxJ
U1QpICQoRU5BQkxFX0RBVEFfVFJBTlNGRVJfSVRFTVMpICQoRU5BQkxFX0RFVEFJTFMpICQoRU5B
QkxFX0RFVklDRV9PUklFTlRBVElPTikgJChFTkFCTEVfRElSRUNUT1JZX1VQTE9BRCkgJChFTkFC
TEVfRklMRV9TWVNURU0pICQoRU5BQkxFX0ZJTFRFUlMpICQoRU5BQkxFX0ZVTExTQ1JFRU5fQVBJ
KSAkKEVOQUJMRV9HQU1FUEFEKSAkKEVOQUJMRV9HRU9MT0NBVElPTikgJChFTkFCTEVfSUNPTkRB
VEFCQVNFKSAkKEVOQUJMRV9JTkRFWEVEX0RBVEFCQVNFKSAkKEVOQUJMRV9JTlBVVF9DT0xPUikg
JChFTkFCTEVfSU5QVVRfU1BFRUNIKSAkKEVOQUJMRV9JTlBVVF9UWVBFX0RBVEUpICQoRU5BQkxF
X0lOUFVUX1RZUEVfREFURVRJTUUpICQoRU5BQkxFX0lOUFVUX1RZUEVfREFURVRJTUVMT0NBTCkg
JChFTkFCTEVfSU5QVVRfVFlQRV9NT05USCkgJChFTkFCTEVfSU5QVVRfVFlQRV9USU1FKSAkKEVO
QUJMRV9JTlBVVF9UWVBFX1dFRUspICQoRU5BQkxFX0pBVkFTQ1JJUFRfREVCVUdHRVIpICQoRU5B
QkxFX0xJTktfUFJFRkVUQ0gpICQoRU5BQkxFX01BVEhNTCkgJChFTkFCTEVfTUVESUFfU09VUkNF
KSAkKEVOQUJMRV9NRURJQV9TVEFUSVNUSUNTKSAkKEVOQUJMRV9NRVRFUl9UQUcpICQoRU5BQkxF
X01VVEFUSU9OX09CU0VSVkVSUykgJChFTkFCTEVfTk9TTklGRikgJChFTkFCTEVfTk9USUZJQ0FU
SU9OUykgJChFTkFCTEVfUEFHRV9WSVNJQklMSVRZX0FQSSkgJChFTkFCTEVfUFJPR1JFU1NfVEFH
KSAkKEVOQUJMRV9RVU9UQSkgJChFTkFCTEVfUkVHSVNURVJfUFJPVE9DT0xfSEFORExFUikgJChF
TkFCTEVfUkVRVUVTVF9BTklNQVRJT05fRlJBTUUpICQoRU5BQkxFX1NIQVJFRF9XT1JLRVJTKSAk
KEVOQUJMRV9TUUxfREFUQUJBU0UpICQoRU5BQkxFX1NWRykgJChFTkFCTEVfU1ZHX0RPTV9PQkpD
X0JJTkRJTkdTKSAkKEVOQUJMRV9TVkdfRk9OVFMpICQoRU5BQkxFX1RPVUNIX0lDT05fTE9BRElO
RykgJChFTkFCTEVfVklERU8pICQoRU5BQkxFX1ZJREVPX1RSQUNLKSAkKEVOQUJMRV9XRUJHTCkg
JChFTkFCTEVfV0VCX0FVRElPKSAkKEVOQUJMRV9XRUJfU09DS0VUUykgJChFTkFCTEVfV0VCX1RJ
TUlORykgJChFTkFCTEVfV09SS0VSUykgJChFTkFCTEVfWFNMVCk7CkluZGV4OiBTb3VyY2UvV2Vi
Q29yZS9kb20vU2NyaXB0RWxlbWVudC5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYkNvcmUv
ZG9tL1NjcmlwdEVsZW1lbnQuY3BwCShyZXZpc2lvbiA5OTczNykKKysrIFNvdXJjZS9XZWJDb3Jl
L2RvbS9TY3JpcHRFbGVtZW50LmNwcAkod29ya2luZyBjb3B5KQpAQCAtNDYsNiArNDYsMTEgQEAK
ICNpbmNsdWRlIDx3dGYvdGV4dC9TdHJpbmdCdWlsZGVyLmg+CiAjaW5jbHVkZSA8d3RmL3RleHQv
U3RyaW5nSGFzaC5oPgogCisjaWYgRU5BQkxFKE5PU05JRkYpCisjaW5jbHVkZSAiQ29uc29sZS5o
IgorI2luY2x1ZGUgIkRPTVdpbmRvdy5oIgorI2VuZGlmCisKICNpZiBFTkFCTEUoU1ZHKQogI2lu
Y2x1ZGUgIlNWR05hbWVzLmgiCiAjaW5jbHVkZSAiU1ZHU2NyaXB0RWxlbWVudC5oIgpAQCAtMjkw
LDYgKzI5NSwxNCBAQCB2b2lkIFNjcmlwdEVsZW1lbnQ6OmV4ZWN1dGVTY3JpcHQoY29uc3QgCiAg
ICAgaWYgKCFtX2lzRXh0ZXJuYWxTY3JpcHQgJiYgIW1fZWxlbWVudC0+ZG9jdW1lbnQoKS0+Y29u
dGVudFNlY3VyaXR5UG9saWN5KCktPmFsbG93SW5saW5lU2NyaXB0KCkpCiAgICAgICAgIHJldHVy
bjsKIAorI2lmIEVOQUJMRShOT1NOSUZGKQorICAgIGlmIChtX2lzRXh0ZXJuYWxTY3JpcHQgJiYg
bV9jYWNoZWRTY3JpcHQgJiYgIW1fY2FjaGVkU2NyaXB0LT5hbGxvd2VkUGVyTm9zbmlmZlBvbGlj
eSgpKSB7CisgICAgICAgIFN0cmluZyBjb25zb2xlTWVzc2FnZSA9ICJSZWZ1c2VkIHRvIGxvYWQg
c2NyaXB0IGZyb20gIiArIG1fY2FjaGVkU2NyaXB0LT51cmwoKS5zdHJpbmcoKSArICIgZHVlIHRv
IE1JTUUgdHlwZSBtaXNtYXRjaC5cbiI7CisgICAgICAgIG1fZWxlbWVudC0+ZG9jdW1lbnQoKS0+
ZG9tV2luZG93KCktPmNvbnNvbGUoKS0+YWRkTWVzc2FnZShKU01lc3NhZ2VTb3VyY2UsIExvZ01l
c3NhZ2VUeXBlLCBFcnJvck1lc3NhZ2VMZXZlbCwgY29uc29sZU1lc3NhZ2UsIDEsIFN0cmluZygp
KTsKKyAgICAgICAgcmV0dXJuOworICAgIH0KKyNlbmRpZgorCiAgICAgUmVmUHRyPERvY3VtZW50
PiBkb2N1bWVudCA9IG1fZWxlbWVudC0+ZG9jdW1lbnQoKTsKICAgICBBU1NFUlQoZG9jdW1lbnQp
OwogICAgIGlmIChGcmFtZSogZnJhbWUgPSBkb2N1bWVudC0+ZnJhbWUoKSkgewpJbmRleDogU291
cmNlL1dlYkNvcmUvbG9hZGVyL2NhY2hlL0NhY2hlZFNjcmlwdC5jcHAKPT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0g
U291cmNlL1dlYkNvcmUvbG9hZGVyL2NhY2hlL0NhY2hlZFNjcmlwdC5jcHAJKHJldmlzaW9uIDk5
NzM3KQorKysgU291cmNlL1dlYkNvcmUvbG9hZGVyL2NhY2hlL0NhY2hlZFNjcmlwdC5jcHAJKHdv
cmtpbmcgY29weSkKQEAgLTM4LDYgKzM4LDEwIEBACiAjaW5jbHVkZSA8cGFyc2VyL1NvdXJjZVBy
b3ZpZGVyLmg+CiAjZW5kaWYKIAorI2lmIEVOQUJMRShOT1NOSUZGKQorI2luY2x1ZGUgIkhUVFBQ
YXJzZXJzLmgiCisjZW5kaWYKKwogbmFtZXNwYWNlIFdlYkNvcmUgewogCiBDYWNoZWRTY3JpcHQ6
OkNhY2hlZFNjcmlwdChjb25zdCBSZXNvdXJjZVJlcXVlc3QmIHJlc291cmNlUmVxdWVzdCwgY29u
c3QgU3RyaW5nJiBjaGFyc2V0KQpAQCAtMTQ2LDQgKzE1MCwyNyBAQCB2b2lkIENhY2hlZFNjcmlw
dDo6c291cmNlUHJvdmlkZXJDYWNoZVNpCiB9CiAjZW5kaWYKIAorI2lmIEVOQUJMRShOT1NOSUZG
KQorYm9vbCBDYWNoZWRTY3JpcHQ6OmFsbG93ZWRQZXJOb3NuaWZmUG9saWN5KCkgY29uc3Qgewor
ICAgIC8vIENoZWNrIHJhdyB2YWx1ZXMgZnJvbSB0aGUgc2VydmVyLCBub3QgdGhlIG9uZXMgdGhh
dCBtYXkgaGF2ZSBiZWVuIGRlZHVjZWQuCisgICAgaWYgKGNvbnRlbnRUeXBlT3B0aW9uc1R5cGUo
bV9yZXNwb25zZS5odHRwSGVhZGVyRmllbGQoIlgtQ29udGVudC1UeXBlLU9wdGlvbnMiKSkgPT0g
Q29udGVudFR5cGVPcHRpb25zTm9zbmlmZikgeworICAgICAgICBERUZJTkVfU1RBVElDX0xPQ0FM
KEhhc2hTZXQ8U3RyaW5nPiwgcGVybWl0dGVkTWltZVR5cGVzLCAoKSk7CisgICAgICAgIGlmIChw
ZXJtaXR0ZWRNaW1lVHlwZXMuaXNFbXB0eSgpKSB7CisgICAgICAgICAgICBwZXJtaXR0ZWRNaW1l
VHlwZXMuYWRkKCJhcHBsaWNhdGlvbi9lY21hc2NyaXB0Iik7CisgICAgICAgICAgICBwZXJtaXR0
ZWRNaW1lVHlwZXMuYWRkKCJhcHBsaWNhdGlvbi9qYXZhc2NyaXB0Iik7CisgICAgICAgICAgICBw
ZXJtaXR0ZWRNaW1lVHlwZXMuYWRkKCJhcHBsaWNhdGlvbi94LWphdmFzY3JpcHQiKTsKKyAgICAg
ICAgICAgIHBlcm1pdHRlZE1pbWVUeXBlcy5hZGQoInRleHQvZWNtYXNjcmlwdCIpOworICAgICAg
ICAgICAgcGVybWl0dGVkTWltZVR5cGVzLmFkZCgidGV4dC9qYXZhc2NyaXB0Iik7CisgICAgICAg
ICAgICBwZXJtaXR0ZWRNaW1lVHlwZXMuYWRkKCJ0ZXh0L2pzY3JpcHQiKTsKKyAgICAgICAgICAg
IHBlcm1pdHRlZE1pbWVUeXBlcy5hZGQoInRleHQveC1qYXZhc2NyaXB0Iik7CisgICAgICAgICAg
ICBwZXJtaXR0ZWRNaW1lVHlwZXMuYWRkKCJ0ZXh0L3ZicyIpOworICAgICAgICAgICAgcGVybWl0
dGVkTWltZVR5cGVzLmFkZCgidGV4dC92YnNjcmlwdCIpOworICAgICAgICB9CisgICAgICAgIGlm
ICghcGVybWl0dGVkTWltZVR5cGVzLmNvbnRhaW5zKGV4dHJhY3RNSU1FVHlwZUZyb21NZWRpYVR5
cGUobV9yZXNwb25zZS5odHRwSGVhZGVyRmllbGQoIkNvbnRlbnQtVHlwZSIpKS5sb3dlcigpKSkK
KyAgICAgICAgICAgIHJldHVybiBmYWxzZTsKKyAgICB9CisgICAgcmV0dXJuIHRydWU7Cit9Cisj
ZW5kaWYKKwogfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQpJbmRleDogU291cmNlL1dlYkNvcmUvbG9h
ZGVyL2NhY2hlL0NhY2hlZFNjcmlwdC5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJDb3JlL2xv
YWRlci9jYWNoZS9DYWNoZWRTY3JpcHQuaAkocmV2aXNpb24gOTk3MzcpCisrKyBTb3VyY2UvV2Vi
Q29yZS9sb2FkZXIvY2FjaGUvQ2FjaGVkU2NyaXB0LmgJKHdvcmtpbmcgY29weSkKQEAgLTYxLDYg
KzYxLDkgQEAgbmFtZXNwYWNlIFdlYkNvcmUgewogICAgICAgICBKU0M6OlNvdXJjZVByb3ZpZGVy
Q2FjaGUqIHNvdXJjZVByb3ZpZGVyQ2FjaGUoKSBjb25zdDsKICAgICAgICAgdm9pZCBzb3VyY2VQ
cm92aWRlckNhY2hlU2l6ZUNoYW5nZWQoaW50IGRlbHRhKTsKICNlbmRpZgorI2lmIEVOQUJMRShO
T1NOSUZGKQorICAgICAgICBib29sIGFsbG93ZWRQZXJOb3NuaWZmUG9saWN5KCkgY29uc3Q7Cisj
ZW5kaWYKICAgICBwcml2YXRlOgogICAgICAgICB2b2lkIGRlY29kZWREYXRhRGVsZXRpb25UaW1l
ckZpcmVkKFRpbWVyPENhY2hlZFNjcmlwdD4qKTsKICAgICAgICAgdmlydHVhbCBQdXJnZVByaW9y
aXR5IHB1cmdlUHJpb3JpdHkoKSBjb25zdCB7IHJldHVybiBQdXJnZUxhc3Q7IH0KSW5kZXg6IFNv
dXJjZS9XZWJDb3JlL3BsYXRmb3JtL25ldHdvcmsvSFRUUFBhcnNlcnMuY3BwCj09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0K
LS0tIFNvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL25ldHdvcmsvSFRUUFBhcnNlcnMuY3BwCShyZXZp
c2lvbiA5OTczNykKKysrIFNvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL25ldHdvcmsvSFRUUFBhcnNl
cnMuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC0zNzMsNCArMzczLDE0IEBAIGJvb2wgcGFyc2VSYW5n
ZShjb25zdCBTdHJpbmcmIHJhbmdlLCBsb24KICAgICByZXR1cm4gdHJ1ZTsKIH0KIAorI2lmIEVO
QUJMRShOT1NOSUZGKQorQ29udGVudFR5cGVPcHRpb25zVHlwZSBjb250ZW50VHlwZU9wdGlvbnNU
eXBlKGNvbnN0IFN0cmluZyYgY29udGVudFR5cGVPcHRpb25zKQoreworICAgIGlmIChjb250ZW50
VHlwZU9wdGlvbnMuZmluZElnbm9yaW5nQ2FzZSgibm9zbmlmZiIpICE9IG5vdEZvdW5kKQorICAg
ICAgICByZXR1cm4gQ29udGVudFR5cGVPcHRpb25zTm9zbmlmZjsKKworICAgIHJldHVybiBDb250
ZW50VHlwZU9wdGlvbnNOb25lOworfQorI2VuZGlmCisKIH0KSW5kZXg6IFNvdXJjZS9XZWJDb3Jl
L3BsYXRmb3JtL25ldHdvcmsvSFRUUFBhcnNlcnMuaAo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2Vi
Q29yZS9wbGF0Zm9ybS9uZXR3b3JrL0hUVFBQYXJzZXJzLmgJKHJldmlzaW9uIDk5NzM3KQorKysg
U291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbmV0d29yay9IVFRQUGFyc2Vycy5oCSh3b3JraW5nIGNv
cHkpCkBAIC00OSw2ICs0OSwxMyBAQCB0eXBlZGVmIGVudW0gewogICAgIENvbnRlbnREaXNwb3Np
dGlvbk90aGVyCiB9IENvbnRlbnREaXNwb3NpdGlvblR5cGU7CiAKKyNpZiBFTkFCTEUoTk9TTklG
RikKK2VudW0gQ29udGVudFR5cGVPcHRpb25zVHlwZSB7CisgICAgQ29udGVudFR5cGVPcHRpb25z
Tm9uZSwKKyAgICBDb250ZW50VHlwZU9wdGlvbnNOb3NuaWZmCit9OworI2VuZGlmCisKIENvbnRl
bnREaXNwb3NpdGlvblR5cGUgY29udGVudERpc3Bvc2l0aW9uVHlwZShjb25zdCBTdHJpbmcmKTsK
IGJvb2wgcGFyc2VIVFRQUmVmcmVzaChjb25zdCBTdHJpbmcmIHJlZnJlc2gsIGJvb2wgZnJvbUh0
dHBFcXVpdk1ldGEsIGRvdWJsZSYgZGVsYXksIFN0cmluZyYgdXJsKTsKIGRvdWJsZSBwYXJzZURh
dGUoY29uc3QgU3RyaW5nJik7CkBAIC02Miw2ICs2OSw5IEBAIFN0cmluZyBleHRyYWN0UmVhc29u
UGhyYXNlRnJvbUhUVFBTdGF0dXMKIC8vIC0xIGNvdWxkIGJlIHNldCB0byBvbmUgb2YgdGhlIHJl
dHVybiBwYXJhbWV0ZXJzIHRvIGluZGljYXRlIHRoZSB2YWx1ZSBpcyBub3Qgc3BlY2lmaWVkLgog
Ym9vbCBwYXJzZVJhbmdlKGNvbnN0IFN0cmluZyYsIGxvbmcgbG9uZyYgcmFuZ2VPZmZzZXQsIGxv
bmcgbG9uZyYgcmFuZ2VFbmQsIGxvbmcgbG9uZyYgcmFuZ2VTdWZmaXhMZW5ndGgpOwogCisjaWYg
RU5BQkxFKE5PU05JRkYpCitDb250ZW50VHlwZU9wdGlvbnNUeXBlIGNvbnRlbnRUeXBlT3B0aW9u
c1R5cGUoY29uc3QgU3RyaW5nJik7CisjZW5kaWYKIH0KIAogI2VuZGlmCkluZGV4OiBTb3VyY2Uv
V2ViS2l0Mi9DaGFuZ2VMb2cKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYktpdDIvQ2hhbmdlTG9n
CShyZXZpc2lvbiA5OTc2NSkKKysrIFNvdXJjZS9XZWJLaXQyL0NoYW5nZUxvZwkod29ya2luZyBj
b3B5KQpAQCAtMSwzICsxLDEyIEBACisyMDExLTExLTA5ICBUb20gU2VwZXogIDx0c2VwZXpAY2hy
b21pdW0ub3JnPgorCisgICAgICAgIEltcGxlbWVudCBzY3JpcHQgTUlNRSByZXN0cmljdGlvbnMg
Zm9yIFgtQ29udGVudC1UeXBlLU9wdGlvbnM6IG5vc25pZmYKKyAgICAgICAgaHR0cHM6Ly9idWdz
LndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTcxODUxCisKKyAgICAgICAgUmV2aWV3ZWQgYnkg
Tk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgKiBDb25maWd1cmF0aW9ucy9GZWF0dXJlRGVmaW5l
cy54Y2NvbmZpZzoKKwogMjAxMS0xMS0wOSAgTWFyayBIYWhuZW5iZXJnICA8bWhhaG5lbmJlcmdA
YXBwbGUuY29tPgogCiAgICAgICAgIERlLXZpcnR1YWxpemUgSlNPYmplY3Q6OmdldE93blByb3Bl
cnR5RGVzY3JpcHRvcgpJbmRleDogU291cmNlL1dlYktpdDIvQ29uZmlndXJhdGlvbnMvRmVhdHVy
ZURlZmluZXMueGNjb25maWcKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYktpdDIvQ29uZmlndXJh
dGlvbnMvRmVhdHVyZURlZmluZXMueGNjb25maWcJKHJldmlzaW9uIDk5NzM3KQorKysgU291cmNl
L1dlYktpdDIvQ29uZmlndXJhdGlvbnMvRmVhdHVyZURlZmluZXMueGNjb25maWcJKHdvcmtpbmcg
Y29weSkKQEAgLTk0LDYgKzk0LDcgQEAgRU5BQkxFX01FRElBX1NUQVRJU1RJQ1MgPSA7CiBFTkFC
TEVfTUVURVJfVEFHID0gRU5BQkxFX01FVEVSX1RBRzsKIEVOQUJMRV9NSFRNTCA9IDsKIEVOQUJM
RV9NVVRBVElPTl9PQlNFUlZFUlMgPSA7CitFTkFCTEVfTk9TTklGRiA9IEVOQUJMRV9OT1NOSUZG
OwogRU5BQkxFX05PVElGSUNBVElPTlMgPSA7CiBFTkFCTEVfUEFHRV9WSVNJQklMSVRZX0FQSSA9
IDsKIEVOQUJMRV9QUk9HUkVTU19UQUcgPSBFTkFCTEVfUFJPR1JFU1NfVEFHOwpAQCAtMTE0LDQg
KzExNSw0IEBAIEVOQUJMRV9XRUJfVElNSU5HID0gOwogRU5BQkxFX1dPUktFUlMgPSBFTkFCTEVf
V09SS0VSUzsKIEVOQUJMRV9YU0xUID0gRU5BQkxFX1hTTFQ7CiAKLUZFQVRVUkVfREVGSU5FUyA9
ICQoRU5BQkxFXzNEX1JFTkRFUklORykgJChFTkFCTEVfQUNDRUxFUkFURURfMkRfQ0FOVkFTKSAk
KEVOQUJMRV9BTklNQVRJT05fQVBJKSAkKEVOQUJMRV9CTE9CKSAkKEVOQUJMRV9DSEFOTkVMX01F
U1NBR0lORykgJChFTkFCTEVfQ0xJRU5UX0JBU0VEX0dFT0xPQ0FUSU9OKSAkKEVOQUJMRV9DU1Mz
X0ZMRVhCT1gpICQoRU5BQkxFX0NTU19GSUxURVJTKSAkKEVOQUJMRV9DU1NfU0hBREVSUykgJChF
TkFCTEVfREFUQUxJU1QpICQoRU5BQkxFX0RBVEFfVFJBTlNGRVJfSVRFTVMpICQoRU5BQkxFX0RF
VEFJTFMpICQoRU5BQkxFX0RFVklDRV9PUklFTlRBVElPTikgJChFTkFCTEVfRElSRUNUT1JZX1VQ
TE9BRCkgJChFTkFCTEVfRklMRV9TWVNURU0pICQoRU5BQkxFX0ZJTFRFUlMpICQoRU5BQkxFX0ZV
TExTQ1JFRU5fQVBJKSAkKEVOQUJMRV9HQU1FUEFEKSAkKEVOQUJMRV9HRU9MT0NBVElPTikgJChF
TkFCTEVfSUNPTkRBVEFCQVNFKSAkKEVOQUJMRV9JTkRFWEVEX0RBVEFCQVNFKSAkKEVOQUJMRV9J
TlBVVF9DT0xPUikgJChFTkFCTEVfSU5QVVRfU1BFRUNIKSAkKEVOQUJMRV9JTlBVVF9UWVBFX0RB
VEUpICQoRU5BQkxFX0lOUFVUX1RZUEVfREFURVRJTUUpICQoRU5BQkxFX0lOUFVUX1RZUEVfREFU
RVRJTUVMT0NBTCkgJChFTkFCTEVfSU5QVVRfVFlQRV9NT05USCkgJChFTkFCTEVfSU5QVVRfVFlQ
RV9USU1FKSAkKEVOQUJMRV9JTlBVVF9UWVBFX1dFRUspICQoRU5BQkxFX0pBVkFTQ1JJUFRfREVC
VUdHRVIpICQoRU5BQkxFX0xJTktfUFJFRkVUQ0gpICQoRU5BQkxFX01BVEhNTCkgJChFTkFCTEVf
TUVESUFfU09VUkNFKSAkKEVOQUJMRV9NRURJQV9TVEFUSVNUSUNTKSAkKEVOQUJMRV9NRVRFUl9U
QUcpICQoRU5BQkxFX01VVEFUSU9OX09CU0VSVkVSUykgJChFTkFCTEVfTk9USUZJQ0FUSU9OUykg
JChFTkFCTEVfUEFHRV9WSVNJQklMSVRZX0FQSSkgJChFTkFCTEVfUFJPR1JFU1NfVEFHKSAkKEVO
QUJMRV9RVU9UQSkgJChFTkFCTEVfUkVHSVNURVJfUFJPVE9DT0xfSEFORExFUikgJChFTkFCTEVf
UkVRVUVTVF9BTklNQVRJT05fRlJBTUUpICQoRU5BQkxFX1NIQVJFRF9XT1JLRVJTKSAkKEVOQUJM
RV9TUUxfREFUQUJBU0UpICQoRU5BQkxFX1NWRykgJChFTkFCTEVfU1ZHX0RPTV9PQkpDX0JJTkRJ
TkdTKSAkKEVOQUJMRV9TVkdfRk9OVFMpICQoRU5BQkxFX1RPVUNIX0lDT05fTE9BRElORykgJChF
TkFCTEVfVklERU8pICQoRU5BQkxFX1ZJREVPX1RSQUNLKSAkKEVOQUJMRV9XRUJHTCkgJChFTkFC
TEVfV0VCX0FVRElPKSAkKEVOQUJMRV9XRUJfU09DS0VUUykgJChFTkFCTEVfV0VCX1RJTUlORykg
JChFTkFCTEVfV09SS0VSUykgJChFTkFCTEVfWFNMVCk7CitGRUFUVVJFX0RFRklORVMgPSAkKEVO
QUJMRV8zRF9SRU5ERVJJTkcpICQoRU5BQkxFX0FDQ0VMRVJBVEVEXzJEX0NBTlZBUykgJChFTkFC
TEVfQU5JTUFUSU9OX0FQSSkgJChFTkFCTEVfQkxPQikgJChFTkFCTEVfQ0hBTk5FTF9NRVNTQUdJ
TkcpICQoRU5BQkxFX0NMSUVOVF9CQVNFRF9HRU9MT0NBVElPTikgJChFTkFCTEVfQ1NTM19GTEVY
Qk9YKSAkKEVOQUJMRV9DU1NfRklMVEVSUykgJChFTkFCTEVfQ1NTX1NIQURFUlMpICQoRU5BQkxF
X0RBVEFMSVNUKSAkKEVOQUJMRV9EQVRBX1RSQU5TRkVSX0lURU1TKSAkKEVOQUJMRV9ERVRBSUxT
KSAkKEVOQUJMRV9ERVZJQ0VfT1JJRU5UQVRJT04pICQoRU5BQkxFX0RJUkVDVE9SWV9VUExPQUQp
ICQoRU5BQkxFX0ZJTEVfU1lTVEVNKSAkKEVOQUJMRV9GSUxURVJTKSAkKEVOQUJMRV9GVUxMU0NS
RUVOX0FQSSkgJChFTkFCTEVfR0FNRVBBRCkgJChFTkFCTEVfR0VPTE9DQVRJT04pICQoRU5BQkxF
X0lDT05EQVRBQkFTRSkgJChFTkFCTEVfSU5ERVhFRF9EQVRBQkFTRSkgJChFTkFCTEVfSU5QVVRf
Q09MT1IpICQoRU5BQkxFX0lOUFVUX1NQRUVDSCkgJChFTkFCTEVfSU5QVVRfVFlQRV9EQVRFKSAk
KEVOQUJMRV9JTlBVVF9UWVBFX0RBVEVUSU1FKSAkKEVOQUJMRV9JTlBVVF9UWVBFX0RBVEVUSU1F
TE9DQUwpICQoRU5BQkxFX0lOUFVUX1RZUEVfTU9OVEgpICQoRU5BQkxFX0lOUFVUX1RZUEVfVElN
RSkgJChFTkFCTEVfSU5QVVRfVFlQRV9XRUVLKSAkKEVOQUJMRV9KQVZBU0NSSVBUX0RFQlVHR0VS
KSAkKEVOQUJMRV9MSU5LX1BSRUZFVENIKSAkKEVOQUJMRV9NQVRITUwpICQoRU5BQkxFX01FRElB
X1NPVVJDRSkgJChFTkFCTEVfTUVESUFfU1RBVElTVElDUykgJChFTkFCTEVfTUVURVJfVEFHKSAk
KEVOQUJMRV9NVVRBVElPTl9PQlNFUlZFUlMpICQoRU5BQkxFX05PU05JRkYpICQoRU5BQkxFX05P
VElGSUNBVElPTlMpICQoRU5BQkxFX1BBR0VfVklTSUJJTElUWV9BUEkpICQoRU5BQkxFX1BST0dS
RVNTX1RBRykgJChFTkFCTEVfUVVPVEEpICQoRU5BQkxFX1JFR0lTVEVSX1BST1RPQ09MX0hBTkRM
RVIpICQoRU5BQkxFX1JFUVVFU1RfQU5JTUFUSU9OX0ZSQU1FKSAkKEVOQUJMRV9TSEFSRURfV09S
S0VSUykgJChFTkFCTEVfU1FMX0RBVEFCQVNFKSAkKEVOQUJMRV9TVkcpICQoRU5BQkxFX1NWR19E
T01fT0JKQ19CSU5ESU5HUykgJChFTkFCTEVfU1ZHX0ZPTlRTKSAkKEVOQUJMRV9UT1VDSF9JQ09O
X0xPQURJTkcpICQoRU5BQkxFX1ZJREVPKSAkKEVOQUJMRV9WSURFT19UUkFDSykgJChFTkFCTEVf
V0VCR0wpICQoRU5BQkxFX1dFQl9BVURJTykgJChFTkFCTEVfV0VCX1NPQ0tFVFMpICQoRU5BQkxF
X1dFQl9USU1JTkcpICQoRU5BQkxFX1dPUktFUlMpICQoRU5BQkxFX1hTTFQpOwpJbmRleDogU291
cmNlL1dlYktpdC9tYWMvQ2hhbmdlTG9nCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJLaXQvbWFj
L0NoYW5nZUxvZwkocmV2aXNpb24gOTk3NjUpCisrKyBTb3VyY2UvV2ViS2l0L21hYy9DaGFuZ2VM
b2cJKHdvcmtpbmcgY29weSkKQEAgLTEsMyArMSwxMiBAQAorMjAxMS0xMS0wOSAgVG9tIFNlcGV6
ICA8dHNlcGV6QGNocm9taXVtLm9yZz4KKworICAgICAgICBJbXBsZW1lbnQgc2NyaXB0IE1JTUUg
cmVzdHJpY3Rpb25zIGZvciBYLUNvbnRlbnQtVHlwZS1PcHRpb25zOiBub3NuaWZmCisgICAgICAg
IGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD03MTg1MQorCisgICAgICAg
IFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgICogQ29uZmlndXJhdGlvbnMv
RmVhdHVyZURlZmluZXMueGNjb25maWc6CisKIDIwMTEtMTEtMDcgIEFkYW0gQmFydGggIDxhYmFy
dGhAd2Via2l0Lm9yZz4KIAogICAgICAgICBNb3ZlIHN0YXRpYyAicG9saWN5IiBzdGF0ZSBmcm9t
IFNlY3VyaXR5T3JpZ2luLmNwcCB0byBTZWN1cml0eVBvbGljeS5jcHAKSW5kZXg6IFNvdXJjZS9X
ZWJLaXQvbWFjL0NvbmZpZ3VyYXRpb25zL0ZlYXR1cmVEZWZpbmVzLnhjY29uZmlnCj09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT0KLS0tIFNvdXJjZS9XZWJLaXQvbWFjL0NvbmZpZ3VyYXRpb25zL0ZlYXR1cmVEZWZpbmVzLnhj
Y29uZmlnCShyZXZpc2lvbiA5OTczNykKKysrIFNvdXJjZS9XZWJLaXQvbWFjL0NvbmZpZ3VyYXRp
b25zL0ZlYXR1cmVEZWZpbmVzLnhjY29uZmlnCSh3b3JraW5nIGNvcHkpCkBAIC05NCw2ICs5NCw3
IEBAIEVOQUJMRV9NRURJQV9TVEFUSVNUSUNTID0gOwogRU5BQkxFX01FVEVSX1RBRyA9IEVOQUJM
RV9NRVRFUl9UQUc7CiBFTkFCTEVfTUhUTUwgPSA7CiBFTkFCTEVfTVVUQVRJT05fT0JTRVJWRVJT
ID0gOworRU5BQkxFX05PU05JRkYgPSBFTkFCTEVfTk9TTklGRjsKIEVOQUJMRV9OT1RJRklDQVRJ
T05TID0gOwogRU5BQkxFX1BBR0VfVklTSUJJTElUWV9BUEkgPSA7CiBFTkFCTEVfUFJPR1JFU1Nf
VEFHID0gRU5BQkxFX1BST0dSRVNTX1RBRzsKQEAgLTExNCw0ICsxMTUsNCBAQCBFTkFCTEVfV0VC
X1RJTUlORyA9IDsKIEVOQUJMRV9XT1JLRVJTID0gRU5BQkxFX1dPUktFUlM7CiBFTkFCTEVfWFNM
VCA9IEVOQUJMRV9YU0xUOwogCi1GRUFUVVJFX0RFRklORVMgPSAkKEVOQUJMRV8zRF9SRU5ERVJJ
TkcpICQoRU5BQkxFX0FDQ0VMRVJBVEVEXzJEX0NBTlZBUykgJChFTkFCTEVfQU5JTUFUSU9OX0FQ
SSkgJChFTkFCTEVfQkxPQikgJChFTkFCTEVfQ0hBTk5FTF9NRVNTQUdJTkcpICQoRU5BQkxFX0NM
SUVOVF9CQVNFRF9HRU9MT0NBVElPTikgJChFTkFCTEVfQ1NTM19GTEVYQk9YKSAkKEVOQUJMRV9D
U1NfRklMVEVSUykgJChFTkFCTEVfQ1NTX1NIQURFUlMpICQoRU5BQkxFX0RBVEFMSVNUKSAkKEVO
QUJMRV9EQVRBX1RSQU5TRkVSX0lURU1TKSAkKEVOQUJMRV9ERVRBSUxTKSAkKEVOQUJMRV9ERVZJ
Q0VfT1JJRU5UQVRJT04pICQoRU5BQkxFX0RJUkVDVE9SWV9VUExPQUQpICQoRU5BQkxFX0ZJTEVf
U1lTVEVNKSAkKEVOQUJMRV9GSUxURVJTKSAkKEVOQUJMRV9GVUxMU0NSRUVOX0FQSSkgJChFTkFC
TEVfR0FNRVBBRCkgJChFTkFCTEVfR0VPTE9DQVRJT04pICQoRU5BQkxFX0lDT05EQVRBQkFTRSkg
JChFTkFCTEVfSU5ERVhFRF9EQVRBQkFTRSkgJChFTkFCTEVfSU5QVVRfQ09MT1IpICQoRU5BQkxF
X0lOUFVUX1NQRUVDSCkgJChFTkFCTEVfSU5QVVRfVFlQRV9EQVRFKSAkKEVOQUJMRV9JTlBVVF9U
WVBFX0RBVEVUSU1FKSAkKEVOQUJMRV9JTlBVVF9UWVBFX0RBVEVUSU1FTE9DQUwpICQoRU5BQkxF
X0lOUFVUX1RZUEVfTU9OVEgpICQoRU5BQkxFX0lOUFVUX1RZUEVfVElNRSkgJChFTkFCTEVfSU5Q
VVRfVFlQRV9XRUVLKSAkKEVOQUJMRV9KQVZBU0NSSVBUX0RFQlVHR0VSKSAkKEVOQUJMRV9MSU5L
X1BSRUZFVENIKSAkKEVOQUJMRV9NQVRITUwpICQoRU5BQkxFX01FRElBX1NPVVJDRSkgJChFTkFC
TEVfTUVESUFfU1RBVElTVElDUykgJChFTkFCTEVfTUVURVJfVEFHKSAkKEVOQUJMRV9NVVRBVElP
Tl9PQlNFUlZFUlMpICQoRU5BQkxFX05PVElGSUNBVElPTlMpICQoRU5BQkxFX1BBR0VfVklTSUJJ
TElUWV9BUEkpICQoRU5BQkxFX1BST0dSRVNTX1RBRykgJChFTkFCTEVfUVVPVEEpICQoRU5BQkxF
X1JFR0lTVEVSX1BST1RPQ09MX0hBTkRMRVIpICQoRU5BQkxFX1JFUVVFU1RfQU5JTUFUSU9OX0ZS
QU1FKSAkKEVOQUJMRV9TSEFSRURfV09SS0VSUykgJChFTkFCTEVfU1FMX0RBVEFCQVNFKSAkKEVO
QUJMRV9TVkcpICQoRU5BQkxFX1NWR19ET01fT0JKQ19CSU5ESU5HUykgJChFTkFCTEVfU1ZHX0ZP
TlRTKSAkKEVOQUJMRV9UT1VDSF9JQ09OX0xPQURJTkcpICQoRU5BQkxFX1ZJREVPKSAkKEVOQUJM
RV9WSURFT19UUkFDSykgJChFTkFCTEVfV0VCR0wpICQoRU5BQkxFX1dFQl9BVURJTykgJChFTkFC
TEVfV0VCX1NPQ0tFVFMpICQoRU5BQkxFX1dFQl9USU1JTkcpICQoRU5BQkxFX1dPUktFUlMpICQo
RU5BQkxFX1hTTFQpOworRkVBVFVSRV9ERUZJTkVTID0gJChFTkFCTEVfM0RfUkVOREVSSU5HKSAk
KEVOQUJMRV9BQ0NFTEVSQVRFRF8yRF9DQU5WQVMpICQoRU5BQkxFX0FOSU1BVElPTl9BUEkpICQo
RU5BQkxFX0JMT0IpICQoRU5BQkxFX0NIQU5ORUxfTUVTU0FHSU5HKSAkKEVOQUJMRV9DTElFTlRf
QkFTRURfR0VPTE9DQVRJT04pICQoRU5BQkxFX0NTUzNfRkxFWEJPWCkgJChFTkFCTEVfQ1NTX0ZJ
TFRFUlMpICQoRU5BQkxFX0NTU19TSEFERVJTKSAkKEVOQUJMRV9EQVRBTElTVCkgJChFTkFCTEVf
REFUQV9UUkFOU0ZFUl9JVEVNUykgJChFTkFCTEVfREVUQUlMUykgJChFTkFCTEVfREVWSUNFX09S
SUVOVEFUSU9OKSAkKEVOQUJMRV9ESVJFQ1RPUllfVVBMT0FEKSAkKEVOQUJMRV9GSUxFX1NZU1RF
TSkgJChFTkFCTEVfRklMVEVSUykgJChFTkFCTEVfRlVMTFNDUkVFTl9BUEkpICQoRU5BQkxFX0dB
TUVQQUQpICQoRU5BQkxFX0dFT0xPQ0FUSU9OKSAkKEVOQUJMRV9JQ09OREFUQUJBU0UpICQoRU5B
QkxFX0lOREVYRURfREFUQUJBU0UpICQoRU5BQkxFX0lOUFVUX0NPTE9SKSAkKEVOQUJMRV9JTlBV
VF9TUEVFQ0gpICQoRU5BQkxFX0lOUFVUX1RZUEVfREFURSkgJChFTkFCTEVfSU5QVVRfVFlQRV9E
QVRFVElNRSkgJChFTkFCTEVfSU5QVVRfVFlQRV9EQVRFVElNRUxPQ0FMKSAkKEVOQUJMRV9JTlBV
VF9UWVBFX01PTlRIKSAkKEVOQUJMRV9JTlBVVF9UWVBFX1RJTUUpICQoRU5BQkxFX0lOUFVUX1RZ
UEVfV0VFSykgJChFTkFCTEVfSkFWQVNDUklQVF9ERUJVR0dFUikgJChFTkFCTEVfTElOS19QUkVG
RVRDSCkgJChFTkFCTEVfTUFUSE1MKSAkKEVOQUJMRV9NRURJQV9TT1VSQ0UpICQoRU5BQkxFX01F
RElBX1NUQVRJU1RJQ1MpICQoRU5BQkxFX01FVEVSX1RBRykgJChFTkFCTEVfTVVUQVRJT05fT0JT
RVJWRVJTKSAkKEVOQUJMRV9OT1NOSUZGKSAkKEVOQUJMRV9OT1RJRklDQVRJT05TKSAkKEVOQUJM
RV9QQUdFX1ZJU0lCSUxJVFlfQVBJKSAkKEVOQUJMRV9QUk9HUkVTU19UQUcpICQoRU5BQkxFX1FV
T1RBKSAkKEVOQUJMRV9SRUdJU1RFUl9QUk9UT0NPTF9IQU5ETEVSKSAkKEVOQUJMRV9SRVFVRVNU
X0FOSU1BVElPTl9GUkFNRSkgJChFTkFCTEVfU0hBUkVEX1dPUktFUlMpICQoRU5BQkxFX1NRTF9E
QVRBQkFTRSkgJChFTkFCTEVfU1ZHKSAkKEVOQUJMRV9TVkdfRE9NX09CSkNfQklORElOR1MpICQo
RU5BQkxFX1NWR19GT05UUykgJChFTkFCTEVfVE9VQ0hfSUNPTl9MT0FESU5HKSAkKEVOQUJMRV9W
SURFTykgJChFTkFCTEVfVklERU9fVFJBQ0spICQoRU5BQkxFX1dFQkdMKSAkKEVOQUJMRV9XRUJf
QVVESU8pICQoRU5BQkxFX1dFQl9TT0NLRVRTKSAkKEVOQUJMRV9XRUJfVElNSU5HKSAkKEVOQUJM
RV9XT1JLRVJTKSAkKEVOQUJMRV9YU0xUKTsKSW5kZXg6IFRvb2xzL0NoYW5nZUxvZwo9PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09Ci0tLSBUb29scy9DaGFuZ2VMb2cJKHJldmlzaW9uIDk5NzY1KQorKysgVG9vbHMvQ2hhbmdl
TG9nCSh3b3JraW5nIGNvcHkpCkBAIC0xLDMgKzEsMTIgQEAKKzIwMTEtMTEtMDkgIFRvbSBTZXBl
eiAgPHRzZXBlekBjaHJvbWl1bS5vcmc+CisKKyAgICAgICAgSW1wbGVtZW50IHNjcmlwdCBNSU1F
IHJlc3RyaWN0aW9ucyBmb3IgWC1Db250ZW50LVR5cGUtT3B0aW9uczogbm9zbmlmZgorICAgICAg
ICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9NzE4NTEKKworICAgICAg
ICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICAqIFNjcmlwdHMvYnVpbGQt
d2Via2l0OgorCiAyMDExLTExLTA5ICBCZW5qYW1pbiBQb3VsYWluICA8YnBvdWxhaW5AYXBwbGUu
Y29tPgogCiAgICAgICAgIEltcGxlbWVudCBkdW1wUHJvZ3Jlc3NGaW5pc2hlZENhbGxiYWNrKCkg
Zm9yIE1hYyBsYXlvdXRUZXN0Q29udHJvbGxlcgpJbmRleDogVG9vbHMvU2NyaXB0cy9idWlsZC13
ZWJraXQKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PQotLS0gVG9vbHMvU2NyaXB0cy9idWlsZC13ZWJraXQJKHJldmlzaW9u
IDk5NzM3KQorKysgVG9vbHMvU2NyaXB0cy9idWlsZC13ZWJraXQJKHdvcmtpbmcgY29weSkKQEAg
LTEwOSw2ICsxMDksNyBAQCBteSAoCiAgICAgJG1pY3JvZGF0YVN1cHBvcnQsCiAgICAgJG11dGF0
aW9uT2JzZXJ2ZXJzU3VwcG9ydCwKICAgICAkbmV0c2NhcGVQbHVnaW5TdXBwb3J0LAorICAgICRu
b3NuaWZmU3VwcG9ydCwKICAgICAkbm90aWZpY2F0aW9uc1N1cHBvcnQsCiAgICAgJG9yaWVudGF0
aW9uRXZlbnRzU3VwcG9ydCwKICAgICAkcGFnZVZpc2liaWxpdHlBcGlTdXBwb3J0LApAQCAtMjY4
LDYgKzI2OSw5IEBAIG15IEBmZWF0dXJlcyA9ICgKICAgICB7IG9wdGlvbiA9PiAibmV0c2NhcGUt
cGx1Z2luIiwgZGVzYyA9PiAiTmV0c2NhcGUgUGx1Z2luIHN1cHBvcnQiLAogICAgICAgZGVmaW5l
ID0+ICJFTkFCTEVfTkVUU0NBUEVfUExVR0lOX0FQSSIsIGRlZmF1bHQgPT4gIWlzRWZsKCksIHZh
bHVlID0+IFwkbmV0c2NhcGVQbHVnaW5TdXBwb3J0IH0sCiAKKyAgICB7IG9wdGlvbiA9PiAibm9z
bmlmZiIsIGRlc2MgPT4gIlRvZ2dsZSBYLUNvbnRlbnQtVHlwZS1PcHRpb25zIFN1cHBvcnQiLAor
ICAgICAgZGVmaW5lID0+ICJFTkFCTEVfTk9TTklGRiIsIGRlZmF1bHQgPT4gMSwgdmFsdWUgPT4g
XCRub3NuaWZmU3VwcG9ydCB9LAorCiAgICAgeyBvcHRpb24gPT4gIm5vdGlmaWNhdGlvbnMiLCBk
ZXNjID0+ICJUb2dnbGUgRGVza3RvcCBOb3RpZmljYXRpb25zIFN1cHBvcnQiLAogICAgICAgZGVm
aW5lID0+ICJFTkFCTEVfTk9USUZJQ0FUSU9OUyIsIGRlZmF1bHQgPT4gMCwgdmFsdWUgPT4gXCRu
b3RpZmljYXRpb25zU3VwcG9ydCB9LAogCkluZGV4OiBMYXlvdXRUZXN0cy9DaGFuZ2VMb2cKPT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PQotLS0gTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCShyZXZpc2lvbiA5OTc2NSkKKysrIExh
eW91dFRlc3RzL0NoYW5nZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDE4IEBACisyMDEx
LTExLTA5ICBUb20gU2VwZXogIDx0c2VwZXpAY2hyb21pdW0ub3JnPgorCisgICAgICAgIEltcGxl
bWVudCBzY3JpcHQgTUlNRSByZXN0cmljdGlvbnMgZm9yIFgtQ29udGVudC1UeXBlLU9wdGlvbnM6
IG5vc25pZmYKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lk
PTcxODUxCisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAg
KiBodHRwL3Rlc3RzL3NlY3VyaXR5L25vc25pZmY6IEFkZGVkLgorICAgICAgICAqIGh0dHAvdGVz
dHMvc2VjdXJpdHkvbm9zbmlmZi9yZXNvdXJjZXM6IEFkZGVkLgorICAgICAgICAqIGh0dHAvdGVz
dHMvc2VjdXJpdHkvbm9zbmlmZi9yZXNvdXJjZXMvc2VuZC1jb250ZW50LXR5cGUtb3B0aW9ucy5w
aHA6IEFkZGVkLgorICAgICAgICAqIGh0dHAvdGVzdHMvc2VjdXJpdHkvbm9zbmlmZi9zY3JpcHQt
YWxsb3dlZC1ub3NuaWZmLWV4cGVjdGVkLnR4dDogQWRkZWQuCisgICAgICAgICogaHR0cC90ZXN0
cy9zZWN1cml0eS9ub3NuaWZmL3NjcmlwdC1hbGxvd2VkLW5vc25pZmYuaHRtbDogQWRkZWQuCisg
ICAgICAgICogaHR0cC90ZXN0cy9zZWN1cml0eS9ub3NuaWZmL3NjcmlwdC1ibG9ja2VkLW5vc25p
ZmYtZXhwZWN0ZWQudHh0OiBBZGRlZC4KKyAgICAgICAgKiBodHRwL3Rlc3RzL3NlY3VyaXR5L25v
c25pZmYvc2NyaXB0LWJsb2NrZWQtbm9zbmlmZi5odG1sOiBBZGRlZC4KKwogMjAxMS0xMS0wOSAg
QmVuamFtaW4gUG91bGFpbiAgPGJwb3VsYWluQGFwcGxlLmNvbT4KIAogICAgICAgICBJbXBsZW1l
bnQgZHVtcFByb2dyZXNzRmluaXNoZWRDYWxsYmFjaygpIGZvciBNYWMgbGF5b3V0VGVzdENvbnRy
b2xsZXIKSW5kZXg6IExheW91dFRlc3RzL2h0dHAvdGVzdHMvc2VjdXJpdHkvbm9zbmlmZi9zY3Jp
cHQtYWxsb3dlZC1ub3NuaWZmLWV4cGVjdGVkLnR4dAo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0
cy9odHRwL3Rlc3RzL3NlY3VyaXR5L25vc25pZmYvc2NyaXB0LWFsbG93ZWQtbm9zbmlmZi1leHBl
Y3RlZC50eHQJKHJldmlzaW9uIDApCisrKyBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3NlY3VyaXR5
L25vc25pZmYvc2NyaXB0LWFsbG93ZWQtbm9zbmlmZi1leHBlY3RlZC50eHQJKHJldmlzaW9uIDAp
CkBAIC0wLDAgKzEsOCBAQAorQUxFUlQ6IEV4ZWN1dGVkOiBhcHBsaWNhdGlvbi9lY21hc2NyaXB0
CitBTEVSVDogRXhlY3V0ZWQ6IEFQUExJQ0FUSU9OL2phdmFzY3JpcHQKK0FMRVJUOiBFeGVjdXRl
ZDogYXBwbGljYXRpb24vWC1KQVZBU0NSSVBUCitBTEVSVDogRXhlY3V0ZWQ6IHRlWHQvZWNtQXNj
cmlwdAorQUxFUlQ6IEV4ZWN1dGVkOiB0ZXh0L0phdmFzY3JpcHQKK0FMRVJUOiBFeGVjdXRlZDog
dGV4dC9qc2NyaVB0CitBTEVSVDogRXhlY3V0ZWQ6IHRleHQvWC1qYXZhc2NyaXB0CitUZXN0IGph
dmFzY3JpcHQgbWltZSB0eXBlcyBhcmUgZXhlY3V0ZWQgd2hlbiB4LWNvbnRlbnQtdHlwZS1vcHRp
b25zOiBub3NuaWZmLgpJbmRleDogTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9zZWN1cml0eS9ub3Nu
aWZmL3NjcmlwdC1hbGxvd2VkLW5vc25pZmYuaHRtbAo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0
cy9odHRwL3Rlc3RzL3NlY3VyaXR5L25vc25pZmYvc2NyaXB0LWFsbG93ZWQtbm9zbmlmZi5odG1s
CShyZXZpc2lvbiAwKQorKysgTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9zZWN1cml0eS9ub3NuaWZm
L3NjcmlwdC1hbGxvd2VkLW5vc25pZmYuaHRtbAkocmV2aXNpb24gMCkKQEAgLTAsMCArMSwxOCBA
QAorPCFET0NUWVBFIGh0bWw+Cis8aHRtbD4KKzxib2R5PgorPHNjcmlwdD4KK2lmICh3aW5kb3cu
bGF5b3V0VGVzdENvbnRyb2xsZXIpIHsKKyAgbGF5b3V0VGVzdENvbnRyb2xsZXIuZHVtcEFzVGV4
dCgpOworfQorPC9zY3JpcHQ+Cis8c2NyaXB0IHNyYz0iaHR0cDovL2xvY2FsaG9zdDo4MDAwL3Nl
Y3VyaXR5L25vc25pZmYvcmVzb3VyY2VzL3NlbmQtY29udGVudC10eXBlLW9wdGlvbnMucGhwP210
PWFwcGxpY2F0aW9uL2VjbWFzY3JpcHQiPjwvc2NyaXB0PgorPHNjcmlwdCBzcmM9Imh0dHA6Ly9s
b2NhbGhvc3Q6ODAwMC9zZWN1cml0eS9ub3NuaWZmL3Jlc291cmNlcy9zZW5kLWNvbnRlbnQtdHlw
ZS1vcHRpb25zLnBocD9tdD1BUFBMSUNBVElPTi9qYXZhc2NyaXB0Ij48L3NjcmlwdD4KKzxzY3Jp
cHQgc3JjPSJodHRwOi8vbG9jYWxob3N0OjgwMDAvc2VjdXJpdHkvbm9zbmlmZi9yZXNvdXJjZXMv
c2VuZC1jb250ZW50LXR5cGUtb3B0aW9ucy5waHA/bXQ9YXBwbGljYXRpb24vWC1KQVZBU0NSSVBU
Ij48L3NjcmlwdD4KKzxzY3JpcHQgc3JjPSJodHRwOi8vbG9jYWxob3N0OjgwMDAvc2VjdXJpdHkv
bm9zbmlmZi9yZXNvdXJjZXMvc2VuZC1jb250ZW50LXR5cGUtb3B0aW9ucy5waHA/bXQ9dGVYdC9l
Y21Bc2NyaXB0Ij48L3NjcmlwdD4KKzxzY3JpcHQgc3JjPSJodHRwOi8vbG9jYWxob3N0OjgwMDAv
c2VjdXJpdHkvbm9zbmlmZi9yZXNvdXJjZXMvc2VuZC1jb250ZW50LXR5cGUtb3B0aW9ucy5waHA/
bXQ9dGV4dC9KYXZhc2NyaXB0Ij48L3NjcmlwdD4KKzxzY3JpcHQgc3JjPSJodHRwOi8vbG9jYWxo
b3N0OjgwMDAvc2VjdXJpdHkvbm9zbmlmZi9yZXNvdXJjZXMvc2VuZC1jb250ZW50LXR5cGUtb3B0
aW9ucy5waHA/bXQ9dGV4dC9qc2NyaVB0Ij48L3NjcmlwdD4KKzxzY3JpcHQgc3JjPSJodHRwOi8v
bG9jYWxob3N0OjgwMDAvc2VjdXJpdHkvbm9zbmlmZi9yZXNvdXJjZXMvc2VuZC1jb250ZW50LXR5
cGUtb3B0aW9ucy5waHA/bXQ9dGV4dC9YLWphdmFzY3JpcHQiPjwvc2NyaXB0PgorPHA+VGVzdCBq
YXZhc2NyaXB0IG1pbWUgdHlwZXMgYXJlIGV4ZWN1dGVkIHdoZW4geC1jb250ZW50LXR5cGUtb3B0
aW9uczogbm9zbmlmZi48L3A+Cis8L2JvZHk+Cis8L2h0bWw+CkluZGV4OiBMYXlvdXRUZXN0cy9o
dHRwL3Rlc3RzL3NlY3VyaXR5L25vc25pZmYvc2NyaXB0LWJsb2NrZWQtbm9zbmlmZi1leHBlY3Rl
ZC50eHQKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9zZWN1cml0eS9ub3Nu
aWZmL3NjcmlwdC1ibG9ja2VkLW5vc25pZmYtZXhwZWN0ZWQudHh0CShyZXZpc2lvbiAwKQorKysg
TGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9zZWN1cml0eS9ub3NuaWZmL3NjcmlwdC1ibG9ja2VkLW5v
c25pZmYtZXhwZWN0ZWQudHh0CShyZXZpc2lvbiAwKQpAQCAtMCwwICsxLDUgQEAKK0NPTlNPTEUg
TUVTU0FHRTogbGluZSAxOiBSZWZ1c2VkIHRvIGxvYWQgc2NyaXB0IGZyb20gaHR0cDovL2xvY2Fs
aG9zdDo4MDAwL3NlY3VyaXR5L25vc25pZmYvcmVzb3VyY2VzL3NlbmQtY29udGVudC10eXBlLW9w
dGlvbnMucGhwP210PXRleHQvaHRtbCBkdWUgdG8gTUlNRSB0eXBlIG1pc21hdGNoLgorCitDT05T
T0xFIE1FU1NBR0U6IGxpbmUgMTogUmVmdXNlZCB0byBsb2FkIHNjcmlwdCBmcm9tIGh0dHA6Ly9s
b2NhbGhvc3Q6ODAwMC9zZWN1cml0eS9ub3NuaWZmL3Jlc291cmNlcy9zZW5kLWNvbnRlbnQtdHlw
ZS1vcHRpb25zLnBocD9tdD1pbWFnZS9wbmcgZHVlIHRvIE1JTUUgdHlwZSBtaXNtYXRjaC4KKwor
VGVzdCBub24tamF2YXNjcmlwdCBtaW1lIHR5cGVzIGFyZSBub3QgZXhlY3V0ZWQgd2hlbiB4LWNv
bnRlbnQtdHlwZS1vcHRpb25zOiBub3NuaWZmLgpJbmRleDogTGF5b3V0VGVzdHMvaHR0cC90ZXN0
cy9zZWN1cml0eS9ub3NuaWZmL3NjcmlwdC1ibG9ja2VkLW5vc25pZmYuaHRtbAo9PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
Ci0tLSBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3NlY3VyaXR5L25vc25pZmYvc2NyaXB0LWJsb2Nr
ZWQtbm9zbmlmZi5odG1sCShyZXZpc2lvbiAwKQorKysgTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9z
ZWN1cml0eS9ub3NuaWZmL3NjcmlwdC1ibG9ja2VkLW5vc25pZmYuaHRtbAkocmV2aXNpb24gMCkK
QEAgLTAsMCArMSwxMyBAQAorPCFET0NUWVBFIGh0bWw+Cis8aHRtbD4KKzxib2R5PgorPHNjcmlw
dD4KK2lmICh3aW5kb3cubGF5b3V0VGVzdENvbnRyb2xsZXIpIHsKKyAgbGF5b3V0VGVzdENvbnRy
b2xsZXIuZHVtcEFzVGV4dCgpOworfQorPC9zY3JpcHQ+Cis8c2NyaXB0IHNyYz0iaHR0cDovL2xv
Y2FsaG9zdDo4MDAwL3NlY3VyaXR5L25vc25pZmYvcmVzb3VyY2VzL3NlbmQtY29udGVudC10eXBl
LW9wdGlvbnMucGhwP210PXRleHQvaHRtbCI+PC9zY3JpcHQ+Cis8c2NyaXB0IHNyYz0iaHR0cDov
L2xvY2FsaG9zdDo4MDAwL3NlY3VyaXR5L25vc25pZmYvcmVzb3VyY2VzL3NlbmQtY29udGVudC10
eXBlLW9wdGlvbnMucGhwP210PWltYWdlL3BuZyI+PC9zY3JpcHQ+Cis8cD5UZXN0IG5vbi1qYXZh
c2NyaXB0IG1pbWUgdHlwZXMgYXJlIG5vdCBleGVjdXRlZCB3aGVuIHgtY29udGVudC10eXBlLW9w
dGlvbnM6IG5vc25pZmYuPC9wPgorPC9ib2R5PgorPC9odG1sPgpJbmRleDogTGF5b3V0VGVzdHMv
aHR0cC90ZXN0cy9zZWN1cml0eS9ub3NuaWZmL3Jlc291cmNlcy9zZW5kLWNvbnRlbnQtdHlwZS1v
cHRpb25zLnBocAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3NlY3VyaXR5
L25vc25pZmYvcmVzb3VyY2VzL3NlbmQtY29udGVudC10eXBlLW9wdGlvbnMucGhwCShyZXZpc2lv
biAwKQorKysgTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9zZWN1cml0eS9ub3NuaWZmL3Jlc291cmNl
cy9zZW5kLWNvbnRlbnQtdHlwZS1vcHRpb25zLnBocAkocmV2aXNpb24gMCkKQEAgLTAsMCArMSw2
IEBACis8P3BocAorICAgICRtaW1lX3R5cGUgPSAkX0dFVFsibXQiXTsKKyAgICBoZWFkZXIoIkNv
bnRlbnQtVHlwZTogIi4kbWltZV90eXBlKTsKKyAgICBoZWFkZXIoIlgtQ29udGVudC1UeXBlLU9w
dGlvbnM6ICAgTm9TbklmRiAiKTsKKyAgICBlY2hvICJhbGVydCgnRXhlY3V0ZWQ6ICIuJG1pbWVf
dHlwZS4iJyk7IjsKKz8+Cg==
</data>
<flag name="review"
          id="112994"
          type_id="1"
          status="-"
          setter="abarth"
    />
          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>114383</attachid>
            <date>2011-11-09 16:04:01 -0800</date>
            <delta_ts>2011-11-09 16:14:03 -0800</delta_ts>
            <desc>Patch + address comments</desc>
            <filename>patch_71851.txt</filename>
            <type>text/plain</type>
            <size>28920</size>
            <attacher name="Thomas Sepez">tsepez</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9DaGFuZ2VMb2cKPT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291
cmNlL0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwkocmV2aXNpb24gOTk3NjUpCisrKyBTb3VyY2Uv
SmF2YVNjcmlwdENvcmUvQ2hhbmdlTG9nCSh3b3JraW5nIGNvcHkpCkBAIC0xLDMgKzEsMTIgQEAK
KzIwMTEtMTEtMDkgIFRvbSBTZXBleiAgPHRzZXBlekBjaHJvbWl1bS5vcmc+CisKKyAgICAgICAg
SW1wbGVtZW50IHNjcmlwdCBNSU1FIHJlc3RyaWN0aW9ucyBmb3IgWC1Db250ZW50LVR5cGUtT3B0
aW9uczogbm9zbmlmZgorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5j
Z2k/aWQ9NzE4NTEKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAg
ICAgICAqIENvbmZpZ3VyYXRpb25zL0ZlYXR1cmVEZWZpbmVzLnhjY29uZmlnOgorCiAyMDExLTEx
LTA5ICBHYXZpbiBCYXJyYWNsb3VnaCAgPGJhcnJhY2xvdWdoQGFwcGxlLmNvbT4KIAogICAgICAg
ICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9NzE4NzMKSW5kZXg6IFNv
dXJjZS9KYXZhU2NyaXB0Q29yZS9Db25maWd1cmF0aW9ucy9GZWF0dXJlRGVmaW5lcy54Y2NvbmZp
Zwo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09Ci0tLSBTb3VyY2UvSmF2YVNjcmlwdENvcmUvQ29uZmlndXJhdGlvbnMvRmVh
dHVyZURlZmluZXMueGNjb25maWcJKHJldmlzaW9uIDk5NzM3KQorKysgU291cmNlL0phdmFTY3Jp
cHRDb3JlL0NvbmZpZ3VyYXRpb25zL0ZlYXR1cmVEZWZpbmVzLnhjY29uZmlnCSh3b3JraW5nIGNv
cHkpCkBAIC05NCw2ICs5NCw3IEBAIEVOQUJMRV9NRURJQV9TVEFUSVNUSUNTID0gOwogRU5BQkxF
X01FVEVSX1RBRyA9IEVOQUJMRV9NRVRFUl9UQUc7CiBFTkFCTEVfTUhUTUwgPSA7CiBFTkFCTEVf
TVVUQVRJT05fT0JTRVJWRVJTID0gOworRU5BQkxFX05PU05JRkYgPSBFTkFCTEVfTk9TTklGRjsK
IEVOQUJMRV9OT1RJRklDQVRJT05TID0gOwogRU5BQkxFX1BBR0VfVklTSUJJTElUWV9BUEkgPSA7
CiBFTkFCTEVfUFJPR1JFU1NfVEFHID0gRU5BQkxFX1BST0dSRVNTX1RBRzsKQEAgLTExNCw0ICsx
MTUsNCBAQCBFTkFCTEVfV0VCX1RJTUlORyA9IDsKIEVOQUJMRV9XT1JLRVJTID0gRU5BQkxFX1dP
UktFUlM7CiBFTkFCTEVfWFNMVCA9IEVOQUJMRV9YU0xUOwogCi1GRUFUVVJFX0RFRklORVMgPSAk
KEVOQUJMRV8zRF9SRU5ERVJJTkcpICQoRU5BQkxFX0FDQ0VMRVJBVEVEXzJEX0NBTlZBUykgJChF
TkFCTEVfQU5JTUFUSU9OX0FQSSkgJChFTkFCTEVfQkxPQikgJChFTkFCTEVfQ0hBTk5FTF9NRVNT
QUdJTkcpICQoRU5BQkxFX0NMSUVOVF9CQVNFRF9HRU9MT0NBVElPTikgJChFTkFCTEVfQ1NTM19G
TEVYQk9YKSAkKEVOQUJMRV9DU1NfRklMVEVSUykgJChFTkFCTEVfQ1NTX1NIQURFUlMpICQoRU5B
QkxFX0RBVEFMSVNUKSAkKEVOQUJMRV9EQVRBX1RSQU5TRkVSX0lURU1TKSAkKEVOQUJMRV9ERVRB
SUxTKSAkKEVOQUJMRV9ERVZJQ0VfT1JJRU5UQVRJT04pICQoRU5BQkxFX0RJUkVDVE9SWV9VUExP
QUQpICQoRU5BQkxFX0ZJTEVfU1lTVEVNKSAkKEVOQUJMRV9GSUxURVJTKSAkKEVOQUJMRV9GVUxM
U0NSRUVOX0FQSSkgJChFTkFCTEVfR0FNRVBBRCkgJChFTkFCTEVfR0VPTE9DQVRJT04pICQoRU5B
QkxFX0lDT05EQVRBQkFTRSkgJChFTkFCTEVfSU5ERVhFRF9EQVRBQkFTRSkgJChFTkFCTEVfSU5Q
VVRfQ09MT1IpICQoRU5BQkxFX0lOUFVUX1NQRUVDSCkgJChFTkFCTEVfSU5QVVRfVFlQRV9EQVRF
KSAkKEVOQUJMRV9JTlBVVF9UWVBFX0RBVEVUSU1FKSAkKEVOQUJMRV9JTlBVVF9UWVBFX0RBVEVU
SU1FTE9DQUwpICQoRU5BQkxFX0lOUFVUX1RZUEVfTU9OVEgpICQoRU5BQkxFX0lOUFVUX1RZUEVf
VElNRSkgJChFTkFCTEVfSU5QVVRfVFlQRV9XRUVLKSAkKEVOQUJMRV9KQVZBU0NSSVBUX0RFQlVH
R0VSKSAkKEVOQUJMRV9MSU5LX1BSRUZFVENIKSAkKEVOQUJMRV9NQVRITUwpICQoRU5BQkxFX01F
RElBX1NPVVJDRSkgJChFTkFCTEVfTUVESUFfU1RBVElTVElDUykgJChFTkFCTEVfTUVURVJfVEFH
KSAkKEVOQUJMRV9NVVRBVElPTl9PQlNFUlZFUlMpICQoRU5BQkxFX05PVElGSUNBVElPTlMpICQo
RU5BQkxFX1BBR0VfVklTSUJJTElUWV9BUEkpICQoRU5BQkxFX1BST0dSRVNTX1RBRykgJChFTkFC
TEVfUVVPVEEpICQoRU5BQkxFX1JFR0lTVEVSX1BST1RPQ09MX0hBTkRMRVIpICQoRU5BQkxFX1JF
UVVFU1RfQU5JTUFUSU9OX0ZSQU1FKSAkKEVOQUJMRV9TSEFSRURfV09SS0VSUykgJChFTkFCTEVf
U1FMX0RBVEFCQVNFKSAkKEVOQUJMRV9TVkcpICQoRU5BQkxFX1NWR19ET01fT0JKQ19CSU5ESU5H
UykgJChFTkFCTEVfU1ZHX0ZPTlRTKSAkKEVOQUJMRV9UT1VDSF9JQ09OX0xPQURJTkcpICQoRU5B
QkxFX1ZJREVPKSAkKEVOQUJMRV9WSURFT19UUkFDSykgJChFTkFCTEVfV0VCR0wpICQoRU5BQkxF
X1dFQl9BVURJTykgJChFTkFCTEVfV0VCX1NPQ0tFVFMpICQoRU5BQkxFX1dFQl9USU1JTkcpICQo
RU5BQkxFX1dPUktFUlMpICQoRU5BQkxFX1hTTFQpOworRkVBVFVSRV9ERUZJTkVTID0gJChFTkFC
TEVfM0RfUkVOREVSSU5HKSAkKEVOQUJMRV9BQ0NFTEVSQVRFRF8yRF9DQU5WQVMpICQoRU5BQkxF
X0FOSU1BVElPTl9BUEkpICQoRU5BQkxFX0JMT0IpICQoRU5BQkxFX0NIQU5ORUxfTUVTU0FHSU5H
KSAkKEVOQUJMRV9DTElFTlRfQkFTRURfR0VPTE9DQVRJT04pICQoRU5BQkxFX0NTUzNfRkxFWEJP
WCkgJChFTkFCTEVfQ1NTX0ZJTFRFUlMpICQoRU5BQkxFX0NTU19TSEFERVJTKSAkKEVOQUJMRV9E
QVRBTElTVCkgJChFTkFCTEVfREFUQV9UUkFOU0ZFUl9JVEVNUykgJChFTkFCTEVfREVUQUlMUykg
JChFTkFCTEVfREVWSUNFX09SSUVOVEFUSU9OKSAkKEVOQUJMRV9ESVJFQ1RPUllfVVBMT0FEKSAk
KEVOQUJMRV9GSUxFX1NZU1RFTSkgJChFTkFCTEVfRklMVEVSUykgJChFTkFCTEVfRlVMTFNDUkVF
Tl9BUEkpICQoRU5BQkxFX0dBTUVQQUQpICQoRU5BQkxFX0dFT0xPQ0FUSU9OKSAkKEVOQUJMRV9J
Q09OREFUQUJBU0UpICQoRU5BQkxFX0lOREVYRURfREFUQUJBU0UpICQoRU5BQkxFX0lOUFVUX0NP
TE9SKSAkKEVOQUJMRV9JTlBVVF9TUEVFQ0gpICQoRU5BQkxFX0lOUFVUX1RZUEVfREFURSkgJChF
TkFCTEVfSU5QVVRfVFlQRV9EQVRFVElNRSkgJChFTkFCTEVfSU5QVVRfVFlQRV9EQVRFVElNRUxP
Q0FMKSAkKEVOQUJMRV9JTlBVVF9UWVBFX01PTlRIKSAkKEVOQUJMRV9JTlBVVF9UWVBFX1RJTUUp
ICQoRU5BQkxFX0lOUFVUX1RZUEVfV0VFSykgJChFTkFCTEVfSkFWQVNDUklQVF9ERUJVR0dFUikg
JChFTkFCTEVfTElOS19QUkVGRVRDSCkgJChFTkFCTEVfTUFUSE1MKSAkKEVOQUJMRV9NRURJQV9T
T1VSQ0UpICQoRU5BQkxFX01FRElBX1NUQVRJU1RJQ1MpICQoRU5BQkxFX01FVEVSX1RBRykgJChF
TkFCTEVfTVVUQVRJT05fT0JTRVJWRVJTKSAkKEVOQUJMRV9OT1NOSUZGKSAkKEVOQUJMRV9OT1RJ
RklDQVRJT05TKSAkKEVOQUJMRV9QQUdFX1ZJU0lCSUxJVFlfQVBJKSAkKEVOQUJMRV9QUk9HUkVT
U19UQUcpICQoRU5BQkxFX1FVT1RBKSAkKEVOQUJMRV9SRUdJU1RFUl9QUk9UT0NPTF9IQU5ETEVS
KSAkKEVOQUJMRV9SRVFVRVNUX0FOSU1BVElPTl9GUkFNRSkgJChFTkFCTEVfU0hBUkVEX1dPUktF
UlMpICQoRU5BQkxFX1NRTF9EQVRBQkFTRSkgJChFTkFCTEVfU1ZHKSAkKEVOQUJMRV9TVkdfRE9N
X09CSkNfQklORElOR1MpICQoRU5BQkxFX1NWR19GT05UUykgJChFTkFCTEVfVE9VQ0hfSUNPTl9M
T0FESU5HKSAkKEVOQUJMRV9WSURFTykgJChFTkFCTEVfVklERU9fVFJBQ0spICQoRU5BQkxFX1dF
QkdMKSAkKEVOQUJMRV9XRUJfQVVESU8pICQoRU5BQkxFX1dFQl9TT0NLRVRTKSAkKEVOQUJMRV9X
RUJfVElNSU5HKSAkKEVOQUJMRV9XT1JLRVJTKSAkKEVOQUJMRV9YU0xUKTsKSW5kZXg6IFNvdXJj
ZS9XZWJDb3JlL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9DaGFuZ2VM
b2cJKHJldmlzaW9uIDk5NzY1KQorKysgU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCSh3b3JraW5n
IGNvcHkpCkBAIC0xLDMgKzEsMjMgQEAKKzIwMTEtMTEtMDkgIFRvbSBTZXBleiAgPHRzZXBlekBj
aHJvbWl1bS5vcmc+CisKKyAgICAgICAgSW1wbGVtZW50IHNjcmlwdCBNSU1FIHJlc3RyaWN0aW9u
cyBmb3IgWC1Db250ZW50LVR5cGUtT3B0aW9uczogbm9zbmlmZgorICAgICAgICBodHRwczovL2J1
Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9NzE4NTEKKworICAgICAgICBSZXZpZXdlZCBi
eSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBUZXN0czogaHR0cC90ZXN0cy9zZWN1cml0eS9u
b3NuaWZmL3NjcmlwdC1hbGxvd2VkLW5vc25pZmYuaHRtbAorICAgICAgICAgICAgICAgaHR0cC90
ZXN0cy9zZWN1cml0eS9ub3NuaWZmL3NjcmlwdC1ibG9ja2VkLW5vc25pZmYuaHRtbAorCisgICAg
ICAgICogQ29uZmlndXJhdGlvbnMvRmVhdHVyZURlZmluZXMueGNjb25maWc6CisgICAgICAgICog
ZG9tL1NjcmlwdEVsZW1lbnQuY3BwOgorICAgICAgICAoV2ViQ29yZTo6U2NyaXB0RWxlbWVudDo6
ZXhlY3V0ZVNjcmlwdCk6CisgICAgICAgICogbG9hZGVyL2NhY2hlL0NhY2hlZFNjcmlwdC5jcHA6
CisgICAgICAgIChXZWJDb3JlOjpDYWNoZWRTY3JpcHQ6OmFsbG93ZWRQZXJOb3NuaWZmUG9saWN5
KToKKyAgICAgICAgKiBsb2FkZXIvY2FjaGUvQ2FjaGVkU2NyaXB0Lmg6CisgICAgICAgICogcGxh
dGZvcm0vbmV0d29yay9IVFRQUGFyc2Vycy5jcHA6CisgICAgICAgIChXZWJDb3JlOjpjb250ZW50
VHlwZU9wdGlvbnNUeXBlKToKKyAgICAgICAgKiBwbGF0Zm9ybS9uZXR3b3JrL0hUVFBQYXJzZXJz
Lmg6CisKIDIwMTEtMTEtMDkgIEtlbnRhcm8gSGFyYSAgPGhhcmFrZW5AY2hyb21pdW0ub3JnPgog
CiAgICAgICAgIFJlcGxhY2UgW0NhbkJlQ29uc3RydWN0ZWRdIElETCB3aXRoIFtDb25zdHJ1Y3Rv
cl0gSURMCkluZGV4OiBTb3VyY2UvV2ViQ29yZS9Db25maWd1cmF0aW9ucy9GZWF0dXJlRGVmaW5l
cy54Y2NvbmZpZwo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9Db25maWd1cmF0aW9ucy9G
ZWF0dXJlRGVmaW5lcy54Y2NvbmZpZwkocmV2aXNpb24gOTk3MzcpCisrKyBTb3VyY2UvV2ViQ29y
ZS9Db25maWd1cmF0aW9ucy9GZWF0dXJlRGVmaW5lcy54Y2NvbmZpZwkod29ya2luZyBjb3B5KQpA
QCAtOTQsNiArOTQsNyBAQCBFTkFCTEVfTUVESUFfU1RBVElTVElDUyA9IDsKIEVOQUJMRV9NRVRF
Ul9UQUcgPSBFTkFCTEVfTUVURVJfVEFHOwogRU5BQkxFX01IVE1MID0gOwogRU5BQkxFX01VVEFU
SU9OX09CU0VSVkVSUyA9IDsKK0VOQUJMRV9OT1NOSUZGID0gRU5BQkxFX05PU05JRkY7CiBFTkFC
TEVfTk9USUZJQ0FUSU9OUyA9IDsKIEVOQUJMRV9QQUdFX1ZJU0lCSUxJVFlfQVBJID0gOwogRU5B
QkxFX1BST0dSRVNTX1RBRyA9IEVOQUJMRV9QUk9HUkVTU19UQUc7CkBAIC0xMTQsNCArMTE1LDQg
QEAgRU5BQkxFX1dFQl9USU1JTkcgPSA7CiBFTkFCTEVfV09SS0VSUyA9IEVOQUJMRV9XT1JLRVJT
OwogRU5BQkxFX1hTTFQgPSBFTkFCTEVfWFNMVDsKIAotRkVBVFVSRV9ERUZJTkVTID0gJChFTkFC
TEVfM0RfUkVOREVSSU5HKSAkKEVOQUJMRV9BQ0NFTEVSQVRFRF8yRF9DQU5WQVMpICQoRU5BQkxF
X0FOSU1BVElPTl9BUEkpICQoRU5BQkxFX0JMT0IpICQoRU5BQkxFX0NIQU5ORUxfTUVTU0FHSU5H
KSAkKEVOQUJMRV9DTElFTlRfQkFTRURfR0VPTE9DQVRJT04pICQoRU5BQkxFX0NTUzNfRkxFWEJP
WCkgJChFTkFCTEVfQ1NTX0ZJTFRFUlMpICQoRU5BQkxFX0NTU19TSEFERVJTKSAkKEVOQUJMRV9E
QVRBTElTVCkgJChFTkFCTEVfREFUQV9UUkFOU0ZFUl9JVEVNUykgJChFTkFCTEVfREVUQUlMUykg
JChFTkFCTEVfREVWSUNFX09SSUVOVEFUSU9OKSAkKEVOQUJMRV9ESVJFQ1RPUllfVVBMT0FEKSAk
KEVOQUJMRV9GSUxFX1NZU1RFTSkgJChFTkFCTEVfRklMVEVSUykgJChFTkFCTEVfRlVMTFNDUkVF
Tl9BUEkpICQoRU5BQkxFX0dBTUVQQUQpICQoRU5BQkxFX0dFT0xPQ0FUSU9OKSAkKEVOQUJMRV9J
Q09OREFUQUJBU0UpICQoRU5BQkxFX0lOREVYRURfREFUQUJBU0UpICQoRU5BQkxFX0lOUFVUX0NP
TE9SKSAkKEVOQUJMRV9JTlBVVF9TUEVFQ0gpICQoRU5BQkxFX0lOUFVUX1RZUEVfREFURSkgJChF
TkFCTEVfSU5QVVRfVFlQRV9EQVRFVElNRSkgJChFTkFCTEVfSU5QVVRfVFlQRV9EQVRFVElNRUxP
Q0FMKSAkKEVOQUJMRV9JTlBVVF9UWVBFX01PTlRIKSAkKEVOQUJMRV9JTlBVVF9UWVBFX1RJTUUp
ICQoRU5BQkxFX0lOUFVUX1RZUEVfV0VFSykgJChFTkFCTEVfSkFWQVNDUklQVF9ERUJVR0dFUikg
JChFTkFCTEVfTElOS19QUkVGRVRDSCkgJChFTkFCTEVfTUFUSE1MKSAkKEVOQUJMRV9NRURJQV9T
T1VSQ0UpICQoRU5BQkxFX01FRElBX1NUQVRJU1RJQ1MpICQoRU5BQkxFX01FVEVSX1RBRykgJChF
TkFCTEVfTVVUQVRJT05fT0JTRVJWRVJTKSAkKEVOQUJMRV9OT1RJRklDQVRJT05TKSAkKEVOQUJM
RV9QQUdFX1ZJU0lCSUxJVFlfQVBJKSAkKEVOQUJMRV9QUk9HUkVTU19UQUcpICQoRU5BQkxFX1FV
T1RBKSAkKEVOQUJMRV9SRUdJU1RFUl9QUk9UT0NPTF9IQU5ETEVSKSAkKEVOQUJMRV9SRVFVRVNU
X0FOSU1BVElPTl9GUkFNRSkgJChFTkFCTEVfU0hBUkVEX1dPUktFUlMpICQoRU5BQkxFX1NRTF9E
QVRBQkFTRSkgJChFTkFCTEVfU1ZHKSAkKEVOQUJMRV9TVkdfRE9NX09CSkNfQklORElOR1MpICQo
RU5BQkxFX1NWR19GT05UUykgJChFTkFCTEVfVE9VQ0hfSUNPTl9MT0FESU5HKSAkKEVOQUJMRV9W
SURFTykgJChFTkFCTEVfVklERU9fVFJBQ0spICQoRU5BQkxFX1dFQkdMKSAkKEVOQUJMRV9XRUJf
QVVESU8pICQoRU5BQkxFX1dFQl9TT0NLRVRTKSAkKEVOQUJMRV9XRUJfVElNSU5HKSAkKEVOQUJM
RV9XT1JLRVJTKSAkKEVOQUJMRV9YU0xUKTsKK0ZFQVRVUkVfREVGSU5FUyA9ICQoRU5BQkxFXzNE
X1JFTkRFUklORykgJChFTkFCTEVfQUNDRUxFUkFURURfMkRfQ0FOVkFTKSAkKEVOQUJMRV9BTklN
QVRJT05fQVBJKSAkKEVOQUJMRV9CTE9CKSAkKEVOQUJMRV9DSEFOTkVMX01FU1NBR0lORykgJChF
TkFCTEVfQ0xJRU5UX0JBU0VEX0dFT0xPQ0FUSU9OKSAkKEVOQUJMRV9DU1MzX0ZMRVhCT1gpICQo
RU5BQkxFX0NTU19GSUxURVJTKSAkKEVOQUJMRV9DU1NfU0hBREVSUykgJChFTkFCTEVfREFUQUxJ
U1QpICQoRU5BQkxFX0RBVEFfVFJBTlNGRVJfSVRFTVMpICQoRU5BQkxFX0RFVEFJTFMpICQoRU5B
QkxFX0RFVklDRV9PUklFTlRBVElPTikgJChFTkFCTEVfRElSRUNUT1JZX1VQTE9BRCkgJChFTkFC
TEVfRklMRV9TWVNURU0pICQoRU5BQkxFX0ZJTFRFUlMpICQoRU5BQkxFX0ZVTExTQ1JFRU5fQVBJ
KSAkKEVOQUJMRV9HQU1FUEFEKSAkKEVOQUJMRV9HRU9MT0NBVElPTikgJChFTkFCTEVfSUNPTkRB
VEFCQVNFKSAkKEVOQUJMRV9JTkRFWEVEX0RBVEFCQVNFKSAkKEVOQUJMRV9JTlBVVF9DT0xPUikg
JChFTkFCTEVfSU5QVVRfU1BFRUNIKSAkKEVOQUJMRV9JTlBVVF9UWVBFX0RBVEUpICQoRU5BQkxF
X0lOUFVUX1RZUEVfREFURVRJTUUpICQoRU5BQkxFX0lOUFVUX1RZUEVfREFURVRJTUVMT0NBTCkg
JChFTkFCTEVfSU5QVVRfVFlQRV9NT05USCkgJChFTkFCTEVfSU5QVVRfVFlQRV9USU1FKSAkKEVO
QUJMRV9JTlBVVF9UWVBFX1dFRUspICQoRU5BQkxFX0pBVkFTQ1JJUFRfREVCVUdHRVIpICQoRU5B
QkxFX0xJTktfUFJFRkVUQ0gpICQoRU5BQkxFX01BVEhNTCkgJChFTkFCTEVfTUVESUFfU09VUkNF
KSAkKEVOQUJMRV9NRURJQV9TVEFUSVNUSUNTKSAkKEVOQUJMRV9NRVRFUl9UQUcpICQoRU5BQkxF
X01VVEFUSU9OX09CU0VSVkVSUykgJChFTkFCTEVfTk9TTklGRikgJChFTkFCTEVfTk9USUZJQ0FU
SU9OUykgJChFTkFCTEVfUEFHRV9WSVNJQklMSVRZX0FQSSkgJChFTkFCTEVfUFJPR1JFU1NfVEFH
KSAkKEVOQUJMRV9RVU9UQSkgJChFTkFCTEVfUkVHSVNURVJfUFJPVE9DT0xfSEFORExFUikgJChF
TkFCTEVfUkVRVUVTVF9BTklNQVRJT05fRlJBTUUpICQoRU5BQkxFX1NIQVJFRF9XT1JLRVJTKSAk
KEVOQUJMRV9TUUxfREFUQUJBU0UpICQoRU5BQkxFX1NWRykgJChFTkFCTEVfU1ZHX0RPTV9PQkpD
X0JJTkRJTkdTKSAkKEVOQUJMRV9TVkdfRk9OVFMpICQoRU5BQkxFX1RPVUNIX0lDT05fTE9BRElO
RykgJChFTkFCTEVfVklERU8pICQoRU5BQkxFX1ZJREVPX1RSQUNLKSAkKEVOQUJMRV9XRUJHTCkg
JChFTkFCTEVfV0VCX0FVRElPKSAkKEVOQUJMRV9XRUJfU09DS0VUUykgJChFTkFCTEVfV0VCX1RJ
TUlORykgJChFTkFCTEVfV09SS0VSUykgJChFTkFCTEVfWFNMVCk7CkluZGV4OiBTb3VyY2UvV2Vi
Q29yZS9kb20vU2NyaXB0RWxlbWVudC5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYkNvcmUv
ZG9tL1NjcmlwdEVsZW1lbnQuY3BwCShyZXZpc2lvbiA5OTczNykKKysrIFNvdXJjZS9XZWJDb3Jl
L2RvbS9TY3JpcHRFbGVtZW50LmNwcAkod29ya2luZyBjb3B5KQpAQCAtMjYsOSArMjYsMTEgQEAK
IAogI2luY2x1ZGUgIkNhY2hlZFNjcmlwdC5oIgogI2luY2x1ZGUgIkNhY2hlZFJlc291cmNlTG9h
ZGVyLmgiCisjaW5jbHVkZSAiQ29uc29sZS5oIgogI2luY2x1ZGUgIkNvbnRlbnRTZWN1cml0eVBv
bGljeS5oIgogI2luY2x1ZGUgIkRvY3VtZW50LmgiCiAjaW5jbHVkZSAiRG9jdW1lbnRQYXJzZXIu
aCIKKyNpbmNsdWRlICJET01XaW5kb3cuaCIKICNpbmNsdWRlICJGcmFtZS5oIgogI2luY2x1ZGUg
IkZyYW1lTG9hZGVyLmgiCiAjaW5jbHVkZSAiSFRNTE5hbWVzLmgiCkBAIC0yOTAsNiArMjkyLDE0
IEBAIHZvaWQgU2NyaXB0RWxlbWVudDo6ZXhlY3V0ZVNjcmlwdChjb25zdCAKICAgICBpZiAoIW1f
aXNFeHRlcm5hbFNjcmlwdCAmJiAhbV9lbGVtZW50LT5kb2N1bWVudCgpLT5jb250ZW50U2VjdXJp
dHlQb2xpY3koKS0+YWxsb3dJbmxpbmVTY3JpcHQoKSkKICAgICAgICAgcmV0dXJuOwogCisjaWYg
RU5BQkxFKE5PU05JRkYpCisgICAgaWYgKG1faXNFeHRlcm5hbFNjcmlwdCAmJiBtX2NhY2hlZFNj
cmlwdCAmJiAhbV9jYWNoZWRTY3JpcHQtPmFsbG93ZWRQZXJOb3NuaWZmUG9saWN5KCkpIHsKKyAg
ICAgICAgU3RyaW5nIGNvbnNvbGVNZXNzYWdlID0gIlJlZnVzZWQgdG8gbG9hZCBzY3JpcHQgZnJv
bSAiICsgbV9jYWNoZWRTY3JpcHQtPnVybCgpLnN0cmluZygpICsgIiBkdWUgdG8gTUlNRSB0eXBl
IG1pc21hdGNoIGFuZCBYLUNvbnRlbnQtVHlwZS1PcHRpb25zIGhlYWRlci5cbiI7CisgICAgICAg
IG1fZWxlbWVudC0+ZG9jdW1lbnQoKS0+YWRkQ29uc29sZU1lc3NhZ2UoSlNNZXNzYWdlU291cmNl
LCBMb2dNZXNzYWdlVHlwZSwgRXJyb3JNZXNzYWdlTGV2ZWwsIGNvbnNvbGVNZXNzYWdlKTsKKyAg
ICAgICAgcmV0dXJuOworICAgIH0KKyNlbmRpZgorCiAgICAgUmVmUHRyPERvY3VtZW50PiBkb2N1
bWVudCA9IG1fZWxlbWVudC0+ZG9jdW1lbnQoKTsKICAgICBBU1NFUlQoZG9jdW1lbnQpOwogICAg
IGlmIChGcmFtZSogZnJhbWUgPSBkb2N1bWVudC0+ZnJhbWUoKSkgewpJbmRleDogU291cmNlL1dl
YkNvcmUvbG9hZGVyL2NhY2hlL0NhY2hlZFNjcmlwdC5jcHAKPT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNl
L1dlYkNvcmUvbG9hZGVyL2NhY2hlL0NhY2hlZFNjcmlwdC5jcHAJKHJldmlzaW9uIDk5NzM3KQor
KysgU291cmNlL1dlYkNvcmUvbG9hZGVyL2NhY2hlL0NhY2hlZFNjcmlwdC5jcHAJKHdvcmtpbmcg
Y29weSkKQEAgLTI3LDkgKzI3LDEwIEBACiAjaW5jbHVkZSAiY29uZmlnLmgiCiAjaW5jbHVkZSAi
Q2FjaGVkU2NyaXB0LmgiCiAKLSNpbmNsdWRlICJNZW1vcnlDYWNoZS5oIgogI2luY2x1ZGUgIkNh
Y2hlZFJlc291cmNlQ2xpZW50LmgiCiAjaW5jbHVkZSAiQ2FjaGVkUmVzb3VyY2VDbGllbnRXYWxr
ZXIuaCIKKyNpbmNsdWRlICJIVFRQUGFyc2Vycy5oIgorI2luY2x1ZGUgIk1lbW9yeUNhY2hlLmgi
CiAjaW5jbHVkZSAiU2hhcmVkQnVmZmVyLmgiCiAjaW5jbHVkZSAiVGV4dFJlc291cmNlRGVjb2Rl
ci5oIgogI2luY2x1ZGUgPHd0Zi9WZWN0b3IuaD4KQEAgLTE0Niw0ICsxNDcsMjkgQEAgdm9pZCBD
YWNoZWRTY3JpcHQ6OnNvdXJjZVByb3ZpZGVyQ2FjaGVTaQogfQogI2VuZGlmCiAKKyNpZiBFTkFC
TEUoTk9TTklGRikKK2Jvb2wgQ2FjaGVkU2NyaXB0OjphbGxvd2VkUGVyTm9zbmlmZlBvbGljeSgp
IGNvbnN0Cit7CisgICAgLy8gQ2hlY2sgcmF3IHZhbHVlcyBmcm9tIHRoZSBzZXJ2ZXIsIG5vdCB0
aGUgb25lcyB0aGF0IG1heSBoYXZlIGJlZW4gZGVkdWNlZC4KKyAgICBpZiAoY29udGVudFR5cGVP
cHRpb25zVHlwZShtX3Jlc3BvbnNlLmh0dHBIZWFkZXJGaWVsZCgiWC1Db250ZW50LVR5cGUtT3B0
aW9ucyIpKSA9PSBDb250ZW50VHlwZU9wdGlvbnNOb3NuaWZmKSB7CisgICAgICAgIERFRklORV9T
VEFUSUNfTE9DQUwoSGFzaFNldDxTdHJpbmc+LCBwZXJtaXR0ZWRNaW1lVHlwZXMsICgpKTsKKyAg
ICAgICAgaWYgKHBlcm1pdHRlZE1pbWVUeXBlcy5pc0VtcHR5KCkpIHsKKyAgICAgICAgICAgIC8v
IExpc3Qgb2YgdHlwZXMgZnJvbSBodHRwOi8vbXNkbi5taWNyb3NvZnQuY29tL2VuLXVzL2xpYnJh
cnkvZ2c2MjI5NDEodj12cy44NSkuYXNweAorICAgICAgICAgICAgcGVybWl0dGVkTWltZVR5cGVz
LmFkZCgiYXBwbGljYXRpb24vZWNtYXNjcmlwdCIpOworICAgICAgICAgICAgcGVybWl0dGVkTWlt
ZVR5cGVzLmFkZCgiYXBwbGljYXRpb24vamF2YXNjcmlwdCIpOworICAgICAgICAgICAgcGVybWl0
dGVkTWltZVR5cGVzLmFkZCgiYXBwbGljYXRpb24veC1qYXZhc2NyaXB0Iik7CisgICAgICAgICAg
ICBwZXJtaXR0ZWRNaW1lVHlwZXMuYWRkKCJ0ZXh0L2VjbWFzY3JpcHQiKTsKKyAgICAgICAgICAg
IHBlcm1pdHRlZE1pbWVUeXBlcy5hZGQoInRleHQvamF2YXNjcmlwdCIpOworICAgICAgICAgICAg
cGVybWl0dGVkTWltZVR5cGVzLmFkZCgidGV4dC9qc2NyaXB0Iik7CisgICAgICAgICAgICBwZXJt
aXR0ZWRNaW1lVHlwZXMuYWRkKCJ0ZXh0L3gtamF2YXNjcmlwdCIpOworICAgICAgICAgICAgcGVy
bWl0dGVkTWltZVR5cGVzLmFkZCgidGV4dC92YnMiKTsKKyAgICAgICAgICAgIHBlcm1pdHRlZE1p
bWVUeXBlcy5hZGQoInRleHQvdmJzY3JpcHQiKTsKKyAgICAgICAgfQorICAgICAgICBpZiAoIXBl
cm1pdHRlZE1pbWVUeXBlcy5jb250YWlucyhleHRyYWN0TUlNRVR5cGVGcm9tTWVkaWFUeXBlKG1f
cmVzcG9uc2UuaHR0cEhlYWRlckZpZWxkKCJDb250ZW50LVR5cGUiKSkubG93ZXIoKSkpCisgICAg
ICAgICAgICByZXR1cm4gZmFsc2U7CisgICAgfQorICAgIHJldHVybiB0cnVlOworfQorI2VuZGlm
CisKIH0gLy8gbmFtZXNwYWNlIFdlYkNvcmUKSW5kZXg6IFNvdXJjZS9XZWJDb3JlL2xvYWRlci9j
YWNoZS9DYWNoZWRTY3JpcHQuaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9sb2FkZXIv
Y2FjaGUvQ2FjaGVkU2NyaXB0LmgJKHJldmlzaW9uIDk5NzM3KQorKysgU291cmNlL1dlYkNvcmUv
bG9hZGVyL2NhY2hlL0NhY2hlZFNjcmlwdC5oCSh3b3JraW5nIGNvcHkpCkBAIC02MSw2ICs2MSw5
IEBAIG5hbWVzcGFjZSBXZWJDb3JlIHsKICAgICAgICAgSlNDOjpTb3VyY2VQcm92aWRlckNhY2hl
KiBzb3VyY2VQcm92aWRlckNhY2hlKCkgY29uc3Q7CiAgICAgICAgIHZvaWQgc291cmNlUHJvdmlk
ZXJDYWNoZVNpemVDaGFuZ2VkKGludCBkZWx0YSk7CiAjZW5kaWYKKyNpZiBFTkFCTEUoTk9TTklG
RikKKyAgICAgICAgYm9vbCBhbGxvd2VkUGVyTm9zbmlmZlBvbGljeSgpIGNvbnN0OworI2VuZGlm
CiAgICAgcHJpdmF0ZToKICAgICAgICAgdm9pZCBkZWNvZGVkRGF0YURlbGV0aW9uVGltZXJGaXJl
ZChUaW1lcjxDYWNoZWRTY3JpcHQ+Kik7CiAgICAgICAgIHZpcnR1YWwgUHVyZ2VQcmlvcml0eSBw
dXJnZVByaW9yaXR5KCkgY29uc3QgeyByZXR1cm4gUHVyZ2VMYXN0OyB9CkluZGV4OiBTb3VyY2Uv
V2ViQ29yZS9wbGF0Zm9ybS9uZXR3b3JrL0hUVFBQYXJzZXJzLmNwcAo9PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBT
b3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9uZXR3b3JrL0hUVFBQYXJzZXJzLmNwcAkocmV2aXNpb24g
OTk3MzcpCisrKyBTb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9uZXR3b3JrL0hUVFBQYXJzZXJzLmNw
cAkod29ya2luZyBjb3B5KQpAQCAtMzczLDQgKzM3MywxNCBAQCBib29sIHBhcnNlUmFuZ2UoY29u
c3QgU3RyaW5nJiByYW5nZSwgbG9uCiAgICAgcmV0dXJuIHRydWU7CiB9CiAKKyNpZiBFTkFCTEUo
Tk9TTklGRikKK0NvbnRlbnRUeXBlT3B0aW9uc1R5cGUgY29udGVudFR5cGVPcHRpb25zVHlwZShj
b25zdCBTdHJpbmcmIGNvbnRlbnRUeXBlT3B0aW9ucykKK3sKKyAgICBpZiAoY29udGVudFR5cGVP
cHRpb25zLnN0cmlwV2hpdGVTcGFjZSgpLmxvd2VyKCkgPT0gIm5vc25pZmYiKQorICAgICAgICBy
ZXR1cm4gQ29udGVudFR5cGVPcHRpb25zTm9zbmlmZjsKKworICAgIHJldHVybiBDb250ZW50VHlw
ZU9wdGlvbnNOb25lOworfQorI2VuZGlmCisKIH0KSW5kZXg6IFNvdXJjZS9XZWJDb3JlL3BsYXRm
b3JtL25ldHdvcmsvSFRUUFBhcnNlcnMuaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9w
bGF0Zm9ybS9uZXR3b3JrL0hUVFBQYXJzZXJzLmgJKHJldmlzaW9uIDk5NzM3KQorKysgU291cmNl
L1dlYkNvcmUvcGxhdGZvcm0vbmV0d29yay9IVFRQUGFyc2Vycy5oCSh3b3JraW5nIGNvcHkpCkBA
IC00OSw2ICs0OSwxMyBAQCB0eXBlZGVmIGVudW0gewogICAgIENvbnRlbnREaXNwb3NpdGlvbk90
aGVyCiB9IENvbnRlbnREaXNwb3NpdGlvblR5cGU7CiAKKyNpZiBFTkFCTEUoTk9TTklGRikKK2Vu
dW0gQ29udGVudFR5cGVPcHRpb25zVHlwZSB7CisgICAgQ29udGVudFR5cGVPcHRpb25zTm9uZSwK
KyAgICBDb250ZW50VHlwZU9wdGlvbnNOb3NuaWZmCit9OworI2VuZGlmCisKIENvbnRlbnREaXNw
b3NpdGlvblR5cGUgY29udGVudERpc3Bvc2l0aW9uVHlwZShjb25zdCBTdHJpbmcmKTsKIGJvb2wg
cGFyc2VIVFRQUmVmcmVzaChjb25zdCBTdHJpbmcmIHJlZnJlc2gsIGJvb2wgZnJvbUh0dHBFcXVp
dk1ldGEsIGRvdWJsZSYgZGVsYXksIFN0cmluZyYgdXJsKTsKIGRvdWJsZSBwYXJzZURhdGUoY29u
c3QgU3RyaW5nJik7CkBAIC02Miw2ICs2OSw5IEBAIFN0cmluZyBleHRyYWN0UmVhc29uUGhyYXNl
RnJvbUhUVFBTdGF0dXMKIC8vIC0xIGNvdWxkIGJlIHNldCB0byBvbmUgb2YgdGhlIHJldHVybiBw
YXJhbWV0ZXJzIHRvIGluZGljYXRlIHRoZSB2YWx1ZSBpcyBub3Qgc3BlY2lmaWVkLgogYm9vbCBw
YXJzZVJhbmdlKGNvbnN0IFN0cmluZyYsIGxvbmcgbG9uZyYgcmFuZ2VPZmZzZXQsIGxvbmcgbG9u
ZyYgcmFuZ2VFbmQsIGxvbmcgbG9uZyYgcmFuZ2VTdWZmaXhMZW5ndGgpOwogCisjaWYgRU5BQkxF
KE5PU05JRkYpCitDb250ZW50VHlwZU9wdGlvbnNUeXBlIGNvbnRlbnRUeXBlT3B0aW9uc1R5cGUo
Y29uc3QgU3RyaW5nJik7CisjZW5kaWYKIH0KIAogI2VuZGlmCkluZGV4OiBTb3VyY2UvV2ViS2l0
Mi9DaGFuZ2VMb2cKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYktpdDIvQ2hhbmdlTG9nCShyZXZp
c2lvbiA5OTc2NSkKKysrIFNvdXJjZS9XZWJLaXQyL0NoYW5nZUxvZwkod29ya2luZyBjb3B5KQpA
QCAtMSwzICsxLDEyIEBACisyMDExLTExLTA5ICBUb20gU2VwZXogIDx0c2VwZXpAY2hyb21pdW0u
b3JnPgorCisgICAgICAgIEltcGxlbWVudCBzY3JpcHQgTUlNRSByZXN0cmljdGlvbnMgZm9yIFgt
Q29udGVudC1UeXBlLU9wdGlvbnM6IG5vc25pZmYKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtp
dC5vcmcvc2hvd19idWcuY2dpP2lkPTcxODUxCisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZ
IChPT1BTISkuCisKKyAgICAgICAgKiBDb25maWd1cmF0aW9ucy9GZWF0dXJlRGVmaW5lcy54Y2Nv
bmZpZzoKKwogMjAxMS0xMS0wOSAgTWFyayBIYWhuZW5iZXJnICA8bWhhaG5lbmJlcmdAYXBwbGUu
Y29tPgogCiAgICAgICAgIERlLXZpcnR1YWxpemUgSlNPYmplY3Q6OmdldE93blByb3BlcnR5RGVz
Y3JpcHRvcgpJbmRleDogU291cmNlL1dlYktpdDIvQ29uZmlndXJhdGlvbnMvRmVhdHVyZURlZmlu
ZXMueGNjb25maWcKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYktpdDIvQ29uZmlndXJhdGlvbnMv
RmVhdHVyZURlZmluZXMueGNjb25maWcJKHJldmlzaW9uIDk5NzM3KQorKysgU291cmNlL1dlYktp
dDIvQ29uZmlndXJhdGlvbnMvRmVhdHVyZURlZmluZXMueGNjb25maWcJKHdvcmtpbmcgY29weSkK
QEAgLTk0LDYgKzk0LDcgQEAgRU5BQkxFX01FRElBX1NUQVRJU1RJQ1MgPSA7CiBFTkFCTEVfTUVU
RVJfVEFHID0gRU5BQkxFX01FVEVSX1RBRzsKIEVOQUJMRV9NSFRNTCA9IDsKIEVOQUJMRV9NVVRB
VElPTl9PQlNFUlZFUlMgPSA7CitFTkFCTEVfTk9TTklGRiA9IEVOQUJMRV9OT1NOSUZGOwogRU5B
QkxFX05PVElGSUNBVElPTlMgPSA7CiBFTkFCTEVfUEFHRV9WSVNJQklMSVRZX0FQSSA9IDsKIEVO
QUJMRV9QUk9HUkVTU19UQUcgPSBFTkFCTEVfUFJPR1JFU1NfVEFHOwpAQCAtMTE0LDQgKzExNSw0
IEBAIEVOQUJMRV9XRUJfVElNSU5HID0gOwogRU5BQkxFX1dPUktFUlMgPSBFTkFCTEVfV09SS0VS
UzsKIEVOQUJMRV9YU0xUID0gRU5BQkxFX1hTTFQ7CiAKLUZFQVRVUkVfREVGSU5FUyA9ICQoRU5B
QkxFXzNEX1JFTkRFUklORykgJChFTkFCTEVfQUNDRUxFUkFURURfMkRfQ0FOVkFTKSAkKEVOQUJM
RV9BTklNQVRJT05fQVBJKSAkKEVOQUJMRV9CTE9CKSAkKEVOQUJMRV9DSEFOTkVMX01FU1NBR0lO
RykgJChFTkFCTEVfQ0xJRU5UX0JBU0VEX0dFT0xPQ0FUSU9OKSAkKEVOQUJMRV9DU1MzX0ZMRVhC
T1gpICQoRU5BQkxFX0NTU19GSUxURVJTKSAkKEVOQUJMRV9DU1NfU0hBREVSUykgJChFTkFCTEVf
REFUQUxJU1QpICQoRU5BQkxFX0RBVEFfVFJBTlNGRVJfSVRFTVMpICQoRU5BQkxFX0RFVEFJTFMp
ICQoRU5BQkxFX0RFVklDRV9PUklFTlRBVElPTikgJChFTkFCTEVfRElSRUNUT1JZX1VQTE9BRCkg
JChFTkFCTEVfRklMRV9TWVNURU0pICQoRU5BQkxFX0ZJTFRFUlMpICQoRU5BQkxFX0ZVTExTQ1JF
RU5fQVBJKSAkKEVOQUJMRV9HQU1FUEFEKSAkKEVOQUJMRV9HRU9MT0NBVElPTikgJChFTkFCTEVf
SUNPTkRBVEFCQVNFKSAkKEVOQUJMRV9JTkRFWEVEX0RBVEFCQVNFKSAkKEVOQUJMRV9JTlBVVF9D
T0xPUikgJChFTkFCTEVfSU5QVVRfU1BFRUNIKSAkKEVOQUJMRV9JTlBVVF9UWVBFX0RBVEUpICQo
RU5BQkxFX0lOUFVUX1RZUEVfREFURVRJTUUpICQoRU5BQkxFX0lOUFVUX1RZUEVfREFURVRJTUVM
T0NBTCkgJChFTkFCTEVfSU5QVVRfVFlQRV9NT05USCkgJChFTkFCTEVfSU5QVVRfVFlQRV9USU1F
KSAkKEVOQUJMRV9JTlBVVF9UWVBFX1dFRUspICQoRU5BQkxFX0pBVkFTQ1JJUFRfREVCVUdHRVIp
ICQoRU5BQkxFX0xJTktfUFJFRkVUQ0gpICQoRU5BQkxFX01BVEhNTCkgJChFTkFCTEVfTUVESUFf
U09VUkNFKSAkKEVOQUJMRV9NRURJQV9TVEFUSVNUSUNTKSAkKEVOQUJMRV9NRVRFUl9UQUcpICQo
RU5BQkxFX01VVEFUSU9OX09CU0VSVkVSUykgJChFTkFCTEVfTk9USUZJQ0FUSU9OUykgJChFTkFC
TEVfUEFHRV9WSVNJQklMSVRZX0FQSSkgJChFTkFCTEVfUFJPR1JFU1NfVEFHKSAkKEVOQUJMRV9R
VU9UQSkgJChFTkFCTEVfUkVHSVNURVJfUFJPVE9DT0xfSEFORExFUikgJChFTkFCTEVfUkVRVUVT
VF9BTklNQVRJT05fRlJBTUUpICQoRU5BQkxFX1NIQVJFRF9XT1JLRVJTKSAkKEVOQUJMRV9TUUxf
REFUQUJBU0UpICQoRU5BQkxFX1NWRykgJChFTkFCTEVfU1ZHX0RPTV9PQkpDX0JJTkRJTkdTKSAk
KEVOQUJMRV9TVkdfRk9OVFMpICQoRU5BQkxFX1RPVUNIX0lDT05fTE9BRElORykgJChFTkFCTEVf
VklERU8pICQoRU5BQkxFX1ZJREVPX1RSQUNLKSAkKEVOQUJMRV9XRUJHTCkgJChFTkFCTEVfV0VC
X0FVRElPKSAkKEVOQUJMRV9XRUJfU09DS0VUUykgJChFTkFCTEVfV0VCX1RJTUlORykgJChFTkFC
TEVfV09SS0VSUykgJChFTkFCTEVfWFNMVCk7CitGRUFUVVJFX0RFRklORVMgPSAkKEVOQUJMRV8z
RF9SRU5ERVJJTkcpICQoRU5BQkxFX0FDQ0VMRVJBVEVEXzJEX0NBTlZBUykgJChFTkFCTEVfQU5J
TUFUSU9OX0FQSSkgJChFTkFCTEVfQkxPQikgJChFTkFCTEVfQ0hBTk5FTF9NRVNTQUdJTkcpICQo
RU5BQkxFX0NMSUVOVF9CQVNFRF9HRU9MT0NBVElPTikgJChFTkFCTEVfQ1NTM19GTEVYQk9YKSAk
KEVOQUJMRV9DU1NfRklMVEVSUykgJChFTkFCTEVfQ1NTX1NIQURFUlMpICQoRU5BQkxFX0RBVEFM
SVNUKSAkKEVOQUJMRV9EQVRBX1RSQU5TRkVSX0lURU1TKSAkKEVOQUJMRV9ERVRBSUxTKSAkKEVO
QUJMRV9ERVZJQ0VfT1JJRU5UQVRJT04pICQoRU5BQkxFX0RJUkVDVE9SWV9VUExPQUQpICQoRU5B
QkxFX0ZJTEVfU1lTVEVNKSAkKEVOQUJMRV9GSUxURVJTKSAkKEVOQUJMRV9GVUxMU0NSRUVOX0FQ
SSkgJChFTkFCTEVfR0FNRVBBRCkgJChFTkFCTEVfR0VPTE9DQVRJT04pICQoRU5BQkxFX0lDT05E
QVRBQkFTRSkgJChFTkFCTEVfSU5ERVhFRF9EQVRBQkFTRSkgJChFTkFCTEVfSU5QVVRfQ09MT1Ip
ICQoRU5BQkxFX0lOUFVUX1NQRUVDSCkgJChFTkFCTEVfSU5QVVRfVFlQRV9EQVRFKSAkKEVOQUJM
RV9JTlBVVF9UWVBFX0RBVEVUSU1FKSAkKEVOQUJMRV9JTlBVVF9UWVBFX0RBVEVUSU1FTE9DQUwp
ICQoRU5BQkxFX0lOUFVUX1RZUEVfTU9OVEgpICQoRU5BQkxFX0lOUFVUX1RZUEVfVElNRSkgJChF
TkFCTEVfSU5QVVRfVFlQRV9XRUVLKSAkKEVOQUJMRV9KQVZBU0NSSVBUX0RFQlVHR0VSKSAkKEVO
QUJMRV9MSU5LX1BSRUZFVENIKSAkKEVOQUJMRV9NQVRITUwpICQoRU5BQkxFX01FRElBX1NPVVJD
RSkgJChFTkFCTEVfTUVESUFfU1RBVElTVElDUykgJChFTkFCTEVfTUVURVJfVEFHKSAkKEVOQUJM
RV9NVVRBVElPTl9PQlNFUlZFUlMpICQoRU5BQkxFX05PU05JRkYpICQoRU5BQkxFX05PVElGSUNB
VElPTlMpICQoRU5BQkxFX1BBR0VfVklTSUJJTElUWV9BUEkpICQoRU5BQkxFX1BST0dSRVNTX1RB
RykgJChFTkFCTEVfUVVPVEEpICQoRU5BQkxFX1JFR0lTVEVSX1BST1RPQ09MX0hBTkRMRVIpICQo
RU5BQkxFX1JFUVVFU1RfQU5JTUFUSU9OX0ZSQU1FKSAkKEVOQUJMRV9TSEFSRURfV09SS0VSUykg
JChFTkFCTEVfU1FMX0RBVEFCQVNFKSAkKEVOQUJMRV9TVkcpICQoRU5BQkxFX1NWR19ET01fT0JK
Q19CSU5ESU5HUykgJChFTkFCTEVfU1ZHX0ZPTlRTKSAkKEVOQUJMRV9UT1VDSF9JQ09OX0xPQURJ
TkcpICQoRU5BQkxFX1ZJREVPKSAkKEVOQUJMRV9WSURFT19UUkFDSykgJChFTkFCTEVfV0VCR0wp
ICQoRU5BQkxFX1dFQl9BVURJTykgJChFTkFCTEVfV0VCX1NPQ0tFVFMpICQoRU5BQkxFX1dFQl9U
SU1JTkcpICQoRU5BQkxFX1dPUktFUlMpICQoRU5BQkxFX1hTTFQpOwpJbmRleDogU291cmNlL1dl
YktpdC9tYWMvQ2hhbmdlTG9nCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJLaXQvbWFjL0NoYW5n
ZUxvZwkocmV2aXNpb24gOTk3NjUpCisrKyBTb3VyY2UvV2ViS2l0L21hYy9DaGFuZ2VMb2cJKHdv
cmtpbmcgY29weSkKQEAgLTEsMyArMSwxMiBAQAorMjAxMS0xMS0wOSAgVG9tIFNlcGV6ICA8dHNl
cGV6QGNocm9taXVtLm9yZz4KKworICAgICAgICBJbXBsZW1lbnQgc2NyaXB0IE1JTUUgcmVzdHJp
Y3Rpb25zIGZvciBYLUNvbnRlbnQtVHlwZS1PcHRpb25zOiBub3NuaWZmCisgICAgICAgIGh0dHBz
Oi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD03MTg1MQorCisgICAgICAgIFJldmll
d2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgICogQ29uZmlndXJhdGlvbnMvRmVhdHVy
ZURlZmluZXMueGNjb25maWc6CisKIDIwMTEtMTEtMDcgIEFkYW0gQmFydGggIDxhYmFydGhAd2Vi
a2l0Lm9yZz4KIAogICAgICAgICBNb3ZlIHN0YXRpYyAicG9saWN5IiBzdGF0ZSBmcm9tIFNlY3Vy
aXR5T3JpZ2luLmNwcCB0byBTZWN1cml0eVBvbGljeS5jcHAKSW5kZXg6IFNvdXJjZS9XZWJLaXQv
bWFjL0NvbmZpZ3VyYXRpb25zL0ZlYXR1cmVEZWZpbmVzLnhjY29uZmlnCj09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0t
IFNvdXJjZS9XZWJLaXQvbWFjL0NvbmZpZ3VyYXRpb25zL0ZlYXR1cmVEZWZpbmVzLnhjY29uZmln
CShyZXZpc2lvbiA5OTczNykKKysrIFNvdXJjZS9XZWJLaXQvbWFjL0NvbmZpZ3VyYXRpb25zL0Zl
YXR1cmVEZWZpbmVzLnhjY29uZmlnCSh3b3JraW5nIGNvcHkpCkBAIC05NCw2ICs5NCw3IEBAIEVO
QUJMRV9NRURJQV9TVEFUSVNUSUNTID0gOwogRU5BQkxFX01FVEVSX1RBRyA9IEVOQUJMRV9NRVRF
Ul9UQUc7CiBFTkFCTEVfTUhUTUwgPSA7CiBFTkFCTEVfTVVUQVRJT05fT0JTRVJWRVJTID0gOwor
RU5BQkxFX05PU05JRkYgPSBFTkFCTEVfTk9TTklGRjsKIEVOQUJMRV9OT1RJRklDQVRJT05TID0g
OwogRU5BQkxFX1BBR0VfVklTSUJJTElUWV9BUEkgPSA7CiBFTkFCTEVfUFJPR1JFU1NfVEFHID0g
RU5BQkxFX1BST0dSRVNTX1RBRzsKQEAgLTExNCw0ICsxMTUsNCBAQCBFTkFCTEVfV0VCX1RJTUlO
RyA9IDsKIEVOQUJMRV9XT1JLRVJTID0gRU5BQkxFX1dPUktFUlM7CiBFTkFCTEVfWFNMVCA9IEVO
QUJMRV9YU0xUOwogCi1GRUFUVVJFX0RFRklORVMgPSAkKEVOQUJMRV8zRF9SRU5ERVJJTkcpICQo
RU5BQkxFX0FDQ0VMRVJBVEVEXzJEX0NBTlZBUykgJChFTkFCTEVfQU5JTUFUSU9OX0FQSSkgJChF
TkFCTEVfQkxPQikgJChFTkFCTEVfQ0hBTk5FTF9NRVNTQUdJTkcpICQoRU5BQkxFX0NMSUVOVF9C
QVNFRF9HRU9MT0NBVElPTikgJChFTkFCTEVfQ1NTM19GTEVYQk9YKSAkKEVOQUJMRV9DU1NfRklM
VEVSUykgJChFTkFCTEVfQ1NTX1NIQURFUlMpICQoRU5BQkxFX0RBVEFMSVNUKSAkKEVOQUJMRV9E
QVRBX1RSQU5TRkVSX0lURU1TKSAkKEVOQUJMRV9ERVRBSUxTKSAkKEVOQUJMRV9ERVZJQ0VfT1JJ
RU5UQVRJT04pICQoRU5BQkxFX0RJUkVDVE9SWV9VUExPQUQpICQoRU5BQkxFX0ZJTEVfU1lTVEVN
KSAkKEVOQUJMRV9GSUxURVJTKSAkKEVOQUJMRV9GVUxMU0NSRUVOX0FQSSkgJChFTkFCTEVfR0FN
RVBBRCkgJChFTkFCTEVfR0VPTE9DQVRJT04pICQoRU5BQkxFX0lDT05EQVRBQkFTRSkgJChFTkFC
TEVfSU5ERVhFRF9EQVRBQkFTRSkgJChFTkFCTEVfSU5QVVRfQ09MT1IpICQoRU5BQkxFX0lOUFVU
X1NQRUVDSCkgJChFTkFCTEVfSU5QVVRfVFlQRV9EQVRFKSAkKEVOQUJMRV9JTlBVVF9UWVBFX0RB
VEVUSU1FKSAkKEVOQUJMRV9JTlBVVF9UWVBFX0RBVEVUSU1FTE9DQUwpICQoRU5BQkxFX0lOUFVU
X1RZUEVfTU9OVEgpICQoRU5BQkxFX0lOUFVUX1RZUEVfVElNRSkgJChFTkFCTEVfSU5QVVRfVFlQ
RV9XRUVLKSAkKEVOQUJMRV9KQVZBU0NSSVBUX0RFQlVHR0VSKSAkKEVOQUJMRV9MSU5LX1BSRUZF
VENIKSAkKEVOQUJMRV9NQVRITUwpICQoRU5BQkxFX01FRElBX1NPVVJDRSkgJChFTkFCTEVfTUVE
SUFfU1RBVElTVElDUykgJChFTkFCTEVfTUVURVJfVEFHKSAkKEVOQUJMRV9NVVRBVElPTl9PQlNF
UlZFUlMpICQoRU5BQkxFX05PVElGSUNBVElPTlMpICQoRU5BQkxFX1BBR0VfVklTSUJJTElUWV9B
UEkpICQoRU5BQkxFX1BST0dSRVNTX1RBRykgJChFTkFCTEVfUVVPVEEpICQoRU5BQkxFX1JFR0lT
VEVSX1BST1RPQ09MX0hBTkRMRVIpICQoRU5BQkxFX1JFUVVFU1RfQU5JTUFUSU9OX0ZSQU1FKSAk
KEVOQUJMRV9TSEFSRURfV09SS0VSUykgJChFTkFCTEVfU1FMX0RBVEFCQVNFKSAkKEVOQUJMRV9T
VkcpICQoRU5BQkxFX1NWR19ET01fT0JKQ19CSU5ESU5HUykgJChFTkFCTEVfU1ZHX0ZPTlRTKSAk
KEVOQUJMRV9UT1VDSF9JQ09OX0xPQURJTkcpICQoRU5BQkxFX1ZJREVPKSAkKEVOQUJMRV9WSURF
T19UUkFDSykgJChFTkFCTEVfV0VCR0wpICQoRU5BQkxFX1dFQl9BVURJTykgJChFTkFCTEVfV0VC
X1NPQ0tFVFMpICQoRU5BQkxFX1dFQl9USU1JTkcpICQoRU5BQkxFX1dPUktFUlMpICQoRU5BQkxF
X1hTTFQpOworRkVBVFVSRV9ERUZJTkVTID0gJChFTkFCTEVfM0RfUkVOREVSSU5HKSAkKEVOQUJM
RV9BQ0NFTEVSQVRFRF8yRF9DQU5WQVMpICQoRU5BQkxFX0FOSU1BVElPTl9BUEkpICQoRU5BQkxF
X0JMT0IpICQoRU5BQkxFX0NIQU5ORUxfTUVTU0FHSU5HKSAkKEVOQUJMRV9DTElFTlRfQkFTRURf
R0VPTE9DQVRJT04pICQoRU5BQkxFX0NTUzNfRkxFWEJPWCkgJChFTkFCTEVfQ1NTX0ZJTFRFUlMp
ICQoRU5BQkxFX0NTU19TSEFERVJTKSAkKEVOQUJMRV9EQVRBTElTVCkgJChFTkFCTEVfREFUQV9U
UkFOU0ZFUl9JVEVNUykgJChFTkFCTEVfREVUQUlMUykgJChFTkFCTEVfREVWSUNFX09SSUVOVEFU
SU9OKSAkKEVOQUJMRV9ESVJFQ1RPUllfVVBMT0FEKSAkKEVOQUJMRV9GSUxFX1NZU1RFTSkgJChF
TkFCTEVfRklMVEVSUykgJChFTkFCTEVfRlVMTFNDUkVFTl9BUEkpICQoRU5BQkxFX0dBTUVQQUQp
ICQoRU5BQkxFX0dFT0xPQ0FUSU9OKSAkKEVOQUJMRV9JQ09OREFUQUJBU0UpICQoRU5BQkxFX0lO
REVYRURfREFUQUJBU0UpICQoRU5BQkxFX0lOUFVUX0NPTE9SKSAkKEVOQUJMRV9JTlBVVF9TUEVF
Q0gpICQoRU5BQkxFX0lOUFVUX1RZUEVfREFURSkgJChFTkFCTEVfSU5QVVRfVFlQRV9EQVRFVElN
RSkgJChFTkFCTEVfSU5QVVRfVFlQRV9EQVRFVElNRUxPQ0FMKSAkKEVOQUJMRV9JTlBVVF9UWVBF
X01PTlRIKSAkKEVOQUJMRV9JTlBVVF9UWVBFX1RJTUUpICQoRU5BQkxFX0lOUFVUX1RZUEVfV0VF
SykgJChFTkFCTEVfSkFWQVNDUklQVF9ERUJVR0dFUikgJChFTkFCTEVfTElOS19QUkVGRVRDSCkg
JChFTkFCTEVfTUFUSE1MKSAkKEVOQUJMRV9NRURJQV9TT1VSQ0UpICQoRU5BQkxFX01FRElBX1NU
QVRJU1RJQ1MpICQoRU5BQkxFX01FVEVSX1RBRykgJChFTkFCTEVfTVVUQVRJT05fT0JTRVJWRVJT
KSAkKEVOQUJMRV9OT1NOSUZGKSAkKEVOQUJMRV9OT1RJRklDQVRJT05TKSAkKEVOQUJMRV9QQUdF
X1ZJU0lCSUxJVFlfQVBJKSAkKEVOQUJMRV9QUk9HUkVTU19UQUcpICQoRU5BQkxFX1FVT1RBKSAk
KEVOQUJMRV9SRUdJU1RFUl9QUk9UT0NPTF9IQU5ETEVSKSAkKEVOQUJMRV9SRVFVRVNUX0FOSU1B
VElPTl9GUkFNRSkgJChFTkFCTEVfU0hBUkVEX1dPUktFUlMpICQoRU5BQkxFX1NRTF9EQVRBQkFT
RSkgJChFTkFCTEVfU1ZHKSAkKEVOQUJMRV9TVkdfRE9NX09CSkNfQklORElOR1MpICQoRU5BQkxF
X1NWR19GT05UUykgJChFTkFCTEVfVE9VQ0hfSUNPTl9MT0FESU5HKSAkKEVOQUJMRV9WSURFTykg
JChFTkFCTEVfVklERU9fVFJBQ0spICQoRU5BQkxFX1dFQkdMKSAkKEVOQUJMRV9XRUJfQVVESU8p
ICQoRU5BQkxFX1dFQl9TT0NLRVRTKSAkKEVOQUJMRV9XRUJfVElNSU5HKSAkKEVOQUJMRV9XT1JL
RVJTKSAkKEVOQUJMRV9YU0xUKTsKSW5kZXg6IFRvb2xzL0NoYW5nZUxvZwo9PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0t
LSBUb29scy9DaGFuZ2VMb2cJKHJldmlzaW9uIDk5NzY1KQorKysgVG9vbHMvQ2hhbmdlTG9nCSh3
b3JraW5nIGNvcHkpCkBAIC0xLDMgKzEsMTIgQEAKKzIwMTEtMTEtMDkgIFRvbSBTZXBleiAgPHRz
ZXBlekBjaHJvbWl1bS5vcmc+CisKKyAgICAgICAgSW1wbGVtZW50IHNjcmlwdCBNSU1FIHJlc3Ry
aWN0aW9ucyBmb3IgWC1Db250ZW50LVR5cGUtT3B0aW9uczogbm9zbmlmZgorICAgICAgICBodHRw
czovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9NzE4NTEKKworICAgICAgICBSZXZp
ZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICAqIFNjcmlwdHMvYnVpbGQtd2Via2l0
OgorCiAyMDExLTExLTA5ICBCZW5qYW1pbiBQb3VsYWluICA8YnBvdWxhaW5AYXBwbGUuY29tPgog
CiAgICAgICAgIEltcGxlbWVudCBkdW1wUHJvZ3Jlc3NGaW5pc2hlZENhbGxiYWNrKCkgZm9yIE1h
YyBsYXlvdXRUZXN0Q29udHJvbGxlcgpJbmRleDogVG9vbHMvU2NyaXB0cy9idWlsZC13ZWJraXQK
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PQotLS0gVG9vbHMvU2NyaXB0cy9idWlsZC13ZWJraXQJKHJldmlzaW9uIDk5NzM3
KQorKysgVG9vbHMvU2NyaXB0cy9idWlsZC13ZWJraXQJKHdvcmtpbmcgY29weSkKQEAgLTEwOSw2
ICsxMDksNyBAQCBteSAoCiAgICAgJG1pY3JvZGF0YVN1cHBvcnQsCiAgICAgJG11dGF0aW9uT2Jz
ZXJ2ZXJzU3VwcG9ydCwKICAgICAkbmV0c2NhcGVQbHVnaW5TdXBwb3J0LAorICAgICRub3NuaWZm
U3VwcG9ydCwKICAgICAkbm90aWZpY2F0aW9uc1N1cHBvcnQsCiAgICAgJG9yaWVudGF0aW9uRXZl
bnRzU3VwcG9ydCwKICAgICAkcGFnZVZpc2liaWxpdHlBcGlTdXBwb3J0LApAQCAtMjY4LDYgKzI2
OSw5IEBAIG15IEBmZWF0dXJlcyA9ICgKICAgICB7IG9wdGlvbiA9PiAibmV0c2NhcGUtcGx1Z2lu
IiwgZGVzYyA9PiAiTmV0c2NhcGUgUGx1Z2luIHN1cHBvcnQiLAogICAgICAgZGVmaW5lID0+ICJF
TkFCTEVfTkVUU0NBUEVfUExVR0lOX0FQSSIsIGRlZmF1bHQgPT4gIWlzRWZsKCksIHZhbHVlID0+
IFwkbmV0c2NhcGVQbHVnaW5TdXBwb3J0IH0sCiAKKyAgICB7IG9wdGlvbiA9PiAibm9zbmlmZiIs
IGRlc2MgPT4gIlRvZ2dsZSBYLUNvbnRlbnQtVHlwZS1PcHRpb25zIFN1cHBvcnQiLAorICAgICAg
ZGVmaW5lID0+ICJFTkFCTEVfTk9TTklGRiIsIGRlZmF1bHQgPT4gMSwgdmFsdWUgPT4gXCRub3Nu
aWZmU3VwcG9ydCB9LAorCiAgICAgeyBvcHRpb24gPT4gIm5vdGlmaWNhdGlvbnMiLCBkZXNjID0+
ICJUb2dnbGUgRGVza3RvcCBOb3RpZmljYXRpb25zIFN1cHBvcnQiLAogICAgICAgZGVmaW5lID0+
ICJFTkFCTEVfTk9USUZJQ0FUSU9OUyIsIGRlZmF1bHQgPT4gMCwgdmFsdWUgPT4gXCRub3RpZmlj
YXRpb25zU3VwcG9ydCB9LAogCkluZGV4OiBMYXlvdXRUZXN0cy9DaGFuZ2VMb2cKPT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PQotLS0gTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCShyZXZpc2lvbiA5OTc2NSkKKysrIExheW91dFRl
c3RzL0NoYW5nZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDE4IEBACisyMDExLTExLTA5
ICBUb20gU2VwZXogIDx0c2VwZXpAY2hyb21pdW0ub3JnPgorCisgICAgICAgIEltcGxlbWVudCBz
Y3JpcHQgTUlNRSByZXN0cmljdGlvbnMgZm9yIFgtQ29udGVudC1UeXBlLU9wdGlvbnM6IG5vc25p
ZmYKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTcxODUx
CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgKiBodHRw
L3Rlc3RzL3NlY3VyaXR5L25vc25pZmY6IEFkZGVkLgorICAgICAgICAqIGh0dHAvdGVzdHMvc2Vj
dXJpdHkvbm9zbmlmZi9yZXNvdXJjZXM6IEFkZGVkLgorICAgICAgICAqIGh0dHAvdGVzdHMvc2Vj
dXJpdHkvbm9zbmlmZi9yZXNvdXJjZXMvc2VuZC1jb250ZW50LXR5cGUtb3B0aW9ucy5waHA6IEFk
ZGVkLgorICAgICAgICAqIGh0dHAvdGVzdHMvc2VjdXJpdHkvbm9zbmlmZi9zY3JpcHQtYWxsb3dl
ZC1ub3NuaWZmLWV4cGVjdGVkLnR4dDogQWRkZWQuCisgICAgICAgICogaHR0cC90ZXN0cy9zZWN1
cml0eS9ub3NuaWZmL3NjcmlwdC1hbGxvd2VkLW5vc25pZmYuaHRtbDogQWRkZWQuCisgICAgICAg
ICogaHR0cC90ZXN0cy9zZWN1cml0eS9ub3NuaWZmL3NjcmlwdC1ibG9ja2VkLW5vc25pZmYtZXhw
ZWN0ZWQudHh0OiBBZGRlZC4KKyAgICAgICAgKiBodHRwL3Rlc3RzL3NlY3VyaXR5L25vc25pZmYv
c2NyaXB0LWJsb2NrZWQtbm9zbmlmZi5odG1sOiBBZGRlZC4KKwogMjAxMS0xMS0wOSAgQmVuamFt
aW4gUG91bGFpbiAgPGJwb3VsYWluQGFwcGxlLmNvbT4KIAogICAgICAgICBJbXBsZW1lbnQgZHVt
cFByb2dyZXNzRmluaXNoZWRDYWxsYmFjaygpIGZvciBNYWMgbGF5b3V0VGVzdENvbnRyb2xsZXIK
SW5kZXg6IExheW91dFRlc3RzL2h0dHAvdGVzdHMvc2VjdXJpdHkvbm9zbmlmZi9zY3JpcHQtYWxs
b3dlZC1ub3NuaWZmLWV4cGVjdGVkLnR4dAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9odHRw
L3Rlc3RzL3NlY3VyaXR5L25vc25pZmYvc2NyaXB0LWFsbG93ZWQtbm9zbmlmZi1leHBlY3RlZC50
eHQJKHJldmlzaW9uIDApCisrKyBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3NlY3VyaXR5L25vc25p
ZmYvc2NyaXB0LWFsbG93ZWQtbm9zbmlmZi1leHBlY3RlZC50eHQJKHJldmlzaW9uIDApCkBAIC0w
LDAgKzEsOCBAQAorQUxFUlQ6IEV4ZWN1dGVkOiBhcHBsaWNhdGlvbi9lY21hc2NyaXB0CitBTEVS
VDogRXhlY3V0ZWQ6IEFQUExJQ0FUSU9OL2phdmFzY3JpcHQKK0FMRVJUOiBFeGVjdXRlZDogYXBw
bGljYXRpb24vWC1KQVZBU0NSSVBUCitBTEVSVDogRXhlY3V0ZWQ6IHRlWHQvZWNtQXNjcmlwdAor
QUxFUlQ6IEV4ZWN1dGVkOiB0ZXh0L0phdmFzY3JpcHQKK0FMRVJUOiBFeGVjdXRlZDogdGV4dC9q
c2NyaVB0CitBTEVSVDogRXhlY3V0ZWQ6IHRleHQvWC1qYXZhc2NyaXB0CitUZXN0IGphdmFzY3Jp
cHQgbWltZSB0eXBlcyBhcmUgZXhlY3V0ZWQgd2hlbiB4LWNvbnRlbnQtdHlwZS1vcHRpb25zOiBu
b3NuaWZmLgpJbmRleDogTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9zZWN1cml0eS9ub3NuaWZmL3Nj
cmlwdC1hbGxvd2VkLW5vc25pZmYuaHRtbAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9odHRw
L3Rlc3RzL3NlY3VyaXR5L25vc25pZmYvc2NyaXB0LWFsbG93ZWQtbm9zbmlmZi5odG1sCShyZXZp
c2lvbiAwKQorKysgTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9zZWN1cml0eS9ub3NuaWZmL3Njcmlw
dC1hbGxvd2VkLW5vc25pZmYuaHRtbAkocmV2aXNpb24gMCkKQEAgLTAsMCArMSwxOCBAQAorPCFE
T0NUWVBFIGh0bWw+Cis8aHRtbD4KKzxib2R5PgorPHNjcmlwdD4KK2lmICh3aW5kb3cubGF5b3V0
VGVzdENvbnRyb2xsZXIpIHsKKyAgbGF5b3V0VGVzdENvbnRyb2xsZXIuZHVtcEFzVGV4dCgpOwor
fQorPC9zY3JpcHQ+Cis8c2NyaXB0IHNyYz0iaHR0cDovL2xvY2FsaG9zdDo4MDAwL3NlY3VyaXR5
L25vc25pZmYvcmVzb3VyY2VzL3NlbmQtY29udGVudC10eXBlLW9wdGlvbnMucGhwP210PWFwcGxp
Y2F0aW9uL2VjbWFzY3JpcHQiPjwvc2NyaXB0PgorPHNjcmlwdCBzcmM9Imh0dHA6Ly9sb2NhbGhv
c3Q6ODAwMC9zZWN1cml0eS9ub3NuaWZmL3Jlc291cmNlcy9zZW5kLWNvbnRlbnQtdHlwZS1vcHRp
b25zLnBocD9tdD1BUFBMSUNBVElPTi9qYXZhc2NyaXB0Ij48L3NjcmlwdD4KKzxzY3JpcHQgc3Jj
PSJodHRwOi8vbG9jYWxob3N0OjgwMDAvc2VjdXJpdHkvbm9zbmlmZi9yZXNvdXJjZXMvc2VuZC1j
b250ZW50LXR5cGUtb3B0aW9ucy5waHA/bXQ9YXBwbGljYXRpb24vWC1KQVZBU0NSSVBUIj48L3Nj
cmlwdD4KKzxzY3JpcHQgc3JjPSJodHRwOi8vbG9jYWxob3N0OjgwMDAvc2VjdXJpdHkvbm9zbmlm
Zi9yZXNvdXJjZXMvc2VuZC1jb250ZW50LXR5cGUtb3B0aW9ucy5waHA/bXQ9dGVYdC9lY21Bc2Ny
aXB0Ij48L3NjcmlwdD4KKzxzY3JpcHQgc3JjPSJodHRwOi8vbG9jYWxob3N0OjgwMDAvc2VjdXJp
dHkvbm9zbmlmZi9yZXNvdXJjZXMvc2VuZC1jb250ZW50LXR5cGUtb3B0aW9ucy5waHA/bXQ9dGV4
dC9KYXZhc2NyaXB0Ij48L3NjcmlwdD4KKzxzY3JpcHQgc3JjPSJodHRwOi8vbG9jYWxob3N0Ojgw
MDAvc2VjdXJpdHkvbm9zbmlmZi9yZXNvdXJjZXMvc2VuZC1jb250ZW50LXR5cGUtb3B0aW9ucy5w
aHA/bXQ9dGV4dC9qc2NyaVB0Ij48L3NjcmlwdD4KKzxzY3JpcHQgc3JjPSJodHRwOi8vbG9jYWxo
b3N0OjgwMDAvc2VjdXJpdHkvbm9zbmlmZi9yZXNvdXJjZXMvc2VuZC1jb250ZW50LXR5cGUtb3B0
aW9ucy5waHA/bXQ9dGV4dC9YLWphdmFzY3JpcHQiPjwvc2NyaXB0PgorPHA+VGVzdCBqYXZhc2Ny
aXB0IG1pbWUgdHlwZXMgYXJlIGV4ZWN1dGVkIHdoZW4geC1jb250ZW50LXR5cGUtb3B0aW9uczog
bm9zbmlmZi48L3A+Cis8L2JvZHk+Cis8L2h0bWw+CkluZGV4OiBMYXlvdXRUZXN0cy9odHRwL3Rl
c3RzL3NlY3VyaXR5L25vc25pZmYvc2NyaXB0LWJsb2NrZWQtbm9zbmlmZi1leHBlY3RlZC50eHQK
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9zZWN1cml0eS9ub3NuaWZmL3Nj
cmlwdC1ibG9ja2VkLW5vc25pZmYtZXhwZWN0ZWQudHh0CShyZXZpc2lvbiAwKQorKysgTGF5b3V0
VGVzdHMvaHR0cC90ZXN0cy9zZWN1cml0eS9ub3NuaWZmL3NjcmlwdC1ibG9ja2VkLW5vc25pZmYt
ZXhwZWN0ZWQudHh0CShyZXZpc2lvbiAwKQpAQCAtMCwwICsxLDUgQEAKK0NPTlNPTEUgTUVTU0FH
RTogbGluZSAxOiBSZWZ1c2VkIHRvIGxvYWQgc2NyaXB0IGZyb20gaHR0cDovL2xvY2FsaG9zdDo4
MDAwL3NlY3VyaXR5L25vc25pZmYvcmVzb3VyY2VzL3NlbmQtY29udGVudC10eXBlLW9wdGlvbnMu
cGhwP210PXRleHQvaHRtbCBkdWUgdG8gTUlNRSB0eXBlIG1pc21hdGNoIGFuZCBYLUNvbnRlbnQt
VHlwZS1PcHRpb25zIGhlYWRlci4KKworQ09OU09MRSBNRVNTQUdFOiBsaW5lIDE6IFJlZnVzZWQg
dG8gbG9hZCBzY3JpcHQgZnJvbSBodHRwOi8vbG9jYWxob3N0OjgwMDAvc2VjdXJpdHkvbm9zbmlm
Zi9yZXNvdXJjZXMvc2VuZC1jb250ZW50LXR5cGUtb3B0aW9ucy5waHA/bXQ9aW1hZ2UvcG5nIGR1
ZSB0byBNSU1FIHR5cGUgbWlzbWF0Y2ggYW5kIFgtQ29udGVudC1UeXBlLU9wdGlvbnMgaGVhZGVy
LgorCitUZXN0IG5vbi1qYXZhc2NyaXB0IG1pbWUgdHlwZXMgYXJlIG5vdCBleGVjdXRlZCB3aGVu
IHgtY29udGVudC10eXBlLW9wdGlvbnM6IG5vc25pZmYuCkluZGV4OiBMYXlvdXRUZXN0cy9odHRw
L3Rlc3RzL3NlY3VyaXR5L25vc25pZmYvc2NyaXB0LWJsb2NrZWQtbm9zbmlmZi5odG1sCj09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT0KLS0tIExheW91dFRlc3RzL2h0dHAvdGVzdHMvc2VjdXJpdHkvbm9zbmlmZi9zY3JpcHQt
YmxvY2tlZC1ub3NuaWZmLmh0bWwJKHJldmlzaW9uIDApCisrKyBMYXlvdXRUZXN0cy9odHRwL3Rl
c3RzL3NlY3VyaXR5L25vc25pZmYvc2NyaXB0LWJsb2NrZWQtbm9zbmlmZi5odG1sCShyZXZpc2lv
biAwKQpAQCAtMCwwICsxLDEzIEBACis8IURPQ1RZUEUgaHRtbD4KKzxodG1sPgorPGJvZHk+Cis8
c2NyaXB0PgoraWYgKHdpbmRvdy5sYXlvdXRUZXN0Q29udHJvbGxlcikgeworICBsYXlvdXRUZXN0
Q29udHJvbGxlci5kdW1wQXNUZXh0KCk7Cit9Cis8L3NjcmlwdD4KKzxzY3JpcHQgc3JjPSJodHRw
Oi8vbG9jYWxob3N0OjgwMDAvc2VjdXJpdHkvbm9zbmlmZi9yZXNvdXJjZXMvc2VuZC1jb250ZW50
LXR5cGUtb3B0aW9ucy5waHA/bXQ9dGV4dC9odG1sIj48L3NjcmlwdD4KKzxzY3JpcHQgc3JjPSJo
dHRwOi8vbG9jYWxob3N0OjgwMDAvc2VjdXJpdHkvbm9zbmlmZi9yZXNvdXJjZXMvc2VuZC1jb250
ZW50LXR5cGUtb3B0aW9ucy5waHA/bXQ9aW1hZ2UvcG5nIj48L3NjcmlwdD4KKzxwPlRlc3Qgbm9u
LWphdmFzY3JpcHQgbWltZSB0eXBlcyBhcmUgbm90IGV4ZWN1dGVkIHdoZW4geC1jb250ZW50LXR5
cGUtb3B0aW9uczogbm9zbmlmZi48L3A+Cis8L2JvZHk+Cis8L2h0bWw+CkluZGV4OiBMYXlvdXRU
ZXN0cy9odHRwL3Rlc3RzL3NlY3VyaXR5L25vc25pZmYvcmVzb3VyY2VzL3NlbmQtY29udGVudC10
eXBlLW9wdGlvbnMucGhwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL2h0dHAvdGVzdHMvc2Vj
dXJpdHkvbm9zbmlmZi9yZXNvdXJjZXMvc2VuZC1jb250ZW50LXR5cGUtb3B0aW9ucy5waHAJKHJl
dmlzaW9uIDApCisrKyBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3NlY3VyaXR5L25vc25pZmYvcmVz
b3VyY2VzL3NlbmQtY29udGVudC10eXBlLW9wdGlvbnMucGhwCShyZXZpc2lvbiAwKQpAQCAtMCww
ICsxLDYgQEAKKzw/cGhwCisgICAgJG1pbWVfdHlwZSA9ICRfR0VUWyJtdCJdOworICAgIGhlYWRl
cigiQ29udGVudC1UeXBlOiAiLiRtaW1lX3R5cGUpOworICAgIGhlYWRlcigiWC1Db250ZW50LVR5
cGUtT3B0aW9uczogICBOb1NuSWZGICIpOworICAgIGVjaG8gImFsZXJ0KCdFeGVjdXRlZDogIi4k
bWltZV90eXBlLiInKTsiOworPz4K
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>114387</attachid>
            <date>2011-11-09 16:14:03 -0800</date>
            <delta_ts>2013-02-06 04:24:05 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>patch_71851.txt</filename>
            <type>text/plain</type>
            <size>28869</size>
            <attacher name="Thomas Sepez">tsepez</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9DaGFuZ2VMb2cKPT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291
cmNlL0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwkocmV2aXNpb24gOTk3NjUpCisrKyBTb3VyY2Uv
SmF2YVNjcmlwdENvcmUvQ2hhbmdlTG9nCSh3b3JraW5nIGNvcHkpCkBAIC0xLDMgKzEsMTIgQEAK
KzIwMTEtMTEtMDkgIFRvbSBTZXBleiAgPHRzZXBlekBjaHJvbWl1bS5vcmc+CisKKyAgICAgICAg
SW1wbGVtZW50IHNjcmlwdCBNSU1FIHJlc3RyaWN0aW9ucyBmb3IgWC1Db250ZW50LVR5cGUtT3B0
aW9uczogbm9zbmlmZgorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5j
Z2k/aWQ9NzE4NTEKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAg
ICAgICAqIENvbmZpZ3VyYXRpb25zL0ZlYXR1cmVEZWZpbmVzLnhjY29uZmlnOgorCiAyMDExLTEx
LTA5ICBHYXZpbiBCYXJyYWNsb3VnaCAgPGJhcnJhY2xvdWdoQGFwcGxlLmNvbT4KIAogICAgICAg
ICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9NzE4NzMKSW5kZXg6IFNv
dXJjZS9KYXZhU2NyaXB0Q29yZS9Db25maWd1cmF0aW9ucy9GZWF0dXJlRGVmaW5lcy54Y2NvbmZp
Zwo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09Ci0tLSBTb3VyY2UvSmF2YVNjcmlwdENvcmUvQ29uZmlndXJhdGlvbnMvRmVh
dHVyZURlZmluZXMueGNjb25maWcJKHJldmlzaW9uIDk5NzM3KQorKysgU291cmNlL0phdmFTY3Jp
cHRDb3JlL0NvbmZpZ3VyYXRpb25zL0ZlYXR1cmVEZWZpbmVzLnhjY29uZmlnCSh3b3JraW5nIGNv
cHkpCkBAIC05NCw2ICs5NCw3IEBAIEVOQUJMRV9NRURJQV9TVEFUSVNUSUNTID0gOwogRU5BQkxF
X01FVEVSX1RBRyA9IEVOQUJMRV9NRVRFUl9UQUc7CiBFTkFCTEVfTUhUTUwgPSA7CiBFTkFCTEVf
TVVUQVRJT05fT0JTRVJWRVJTID0gOworRU5BQkxFX05PU05JRkYgPSBFTkFCTEVfTk9TTklGRjsK
IEVOQUJMRV9OT1RJRklDQVRJT05TID0gOwogRU5BQkxFX1BBR0VfVklTSUJJTElUWV9BUEkgPSA7
CiBFTkFCTEVfUFJPR1JFU1NfVEFHID0gRU5BQkxFX1BST0dSRVNTX1RBRzsKQEAgLTExNCw0ICsx
MTUsNCBAQCBFTkFCTEVfV0VCX1RJTUlORyA9IDsKIEVOQUJMRV9XT1JLRVJTID0gRU5BQkxFX1dP
UktFUlM7CiBFTkFCTEVfWFNMVCA9IEVOQUJMRV9YU0xUOwogCi1GRUFUVVJFX0RFRklORVMgPSAk
KEVOQUJMRV8zRF9SRU5ERVJJTkcpICQoRU5BQkxFX0FDQ0VMRVJBVEVEXzJEX0NBTlZBUykgJChF
TkFCTEVfQU5JTUFUSU9OX0FQSSkgJChFTkFCTEVfQkxPQikgJChFTkFCTEVfQ0hBTk5FTF9NRVNT
QUdJTkcpICQoRU5BQkxFX0NMSUVOVF9CQVNFRF9HRU9MT0NBVElPTikgJChFTkFCTEVfQ1NTM19G
TEVYQk9YKSAkKEVOQUJMRV9DU1NfRklMVEVSUykgJChFTkFCTEVfQ1NTX1NIQURFUlMpICQoRU5B
QkxFX0RBVEFMSVNUKSAkKEVOQUJMRV9EQVRBX1RSQU5TRkVSX0lURU1TKSAkKEVOQUJMRV9ERVRB
SUxTKSAkKEVOQUJMRV9ERVZJQ0VfT1JJRU5UQVRJT04pICQoRU5BQkxFX0RJUkVDVE9SWV9VUExP
QUQpICQoRU5BQkxFX0ZJTEVfU1lTVEVNKSAkKEVOQUJMRV9GSUxURVJTKSAkKEVOQUJMRV9GVUxM
U0NSRUVOX0FQSSkgJChFTkFCTEVfR0FNRVBBRCkgJChFTkFCTEVfR0VPTE9DQVRJT04pICQoRU5B
QkxFX0lDT05EQVRBQkFTRSkgJChFTkFCTEVfSU5ERVhFRF9EQVRBQkFTRSkgJChFTkFCTEVfSU5Q
VVRfQ09MT1IpICQoRU5BQkxFX0lOUFVUX1NQRUVDSCkgJChFTkFCTEVfSU5QVVRfVFlQRV9EQVRF
KSAkKEVOQUJMRV9JTlBVVF9UWVBFX0RBVEVUSU1FKSAkKEVOQUJMRV9JTlBVVF9UWVBFX0RBVEVU
SU1FTE9DQUwpICQoRU5BQkxFX0lOUFVUX1RZUEVfTU9OVEgpICQoRU5BQkxFX0lOUFVUX1RZUEVf
VElNRSkgJChFTkFCTEVfSU5QVVRfVFlQRV9XRUVLKSAkKEVOQUJMRV9KQVZBU0NSSVBUX0RFQlVH
R0VSKSAkKEVOQUJMRV9MSU5LX1BSRUZFVENIKSAkKEVOQUJMRV9NQVRITUwpICQoRU5BQkxFX01F
RElBX1NPVVJDRSkgJChFTkFCTEVfTUVESUFfU1RBVElTVElDUykgJChFTkFCTEVfTUVURVJfVEFH
KSAkKEVOQUJMRV9NVVRBVElPTl9PQlNFUlZFUlMpICQoRU5BQkxFX05PVElGSUNBVElPTlMpICQo
RU5BQkxFX1BBR0VfVklTSUJJTElUWV9BUEkpICQoRU5BQkxFX1BST0dSRVNTX1RBRykgJChFTkFC
TEVfUVVPVEEpICQoRU5BQkxFX1JFR0lTVEVSX1BST1RPQ09MX0hBTkRMRVIpICQoRU5BQkxFX1JF
UVVFU1RfQU5JTUFUSU9OX0ZSQU1FKSAkKEVOQUJMRV9TSEFSRURfV09SS0VSUykgJChFTkFCTEVf
U1FMX0RBVEFCQVNFKSAkKEVOQUJMRV9TVkcpICQoRU5BQkxFX1NWR19ET01fT0JKQ19CSU5ESU5H
UykgJChFTkFCTEVfU1ZHX0ZPTlRTKSAkKEVOQUJMRV9UT1VDSF9JQ09OX0xPQURJTkcpICQoRU5B
QkxFX1ZJREVPKSAkKEVOQUJMRV9WSURFT19UUkFDSykgJChFTkFCTEVfV0VCR0wpICQoRU5BQkxF
X1dFQl9BVURJTykgJChFTkFCTEVfV0VCX1NPQ0tFVFMpICQoRU5BQkxFX1dFQl9USU1JTkcpICQo
RU5BQkxFX1dPUktFUlMpICQoRU5BQkxFX1hTTFQpOworRkVBVFVSRV9ERUZJTkVTID0gJChFTkFC
TEVfM0RfUkVOREVSSU5HKSAkKEVOQUJMRV9BQ0NFTEVSQVRFRF8yRF9DQU5WQVMpICQoRU5BQkxF
X0FOSU1BVElPTl9BUEkpICQoRU5BQkxFX0JMT0IpICQoRU5BQkxFX0NIQU5ORUxfTUVTU0FHSU5H
KSAkKEVOQUJMRV9DTElFTlRfQkFTRURfR0VPTE9DQVRJT04pICQoRU5BQkxFX0NTUzNfRkxFWEJP
WCkgJChFTkFCTEVfQ1NTX0ZJTFRFUlMpICQoRU5BQkxFX0NTU19TSEFERVJTKSAkKEVOQUJMRV9E
QVRBTElTVCkgJChFTkFCTEVfREFUQV9UUkFOU0ZFUl9JVEVNUykgJChFTkFCTEVfREVUQUlMUykg
JChFTkFCTEVfREVWSUNFX09SSUVOVEFUSU9OKSAkKEVOQUJMRV9ESVJFQ1RPUllfVVBMT0FEKSAk
KEVOQUJMRV9GSUxFX1NZU1RFTSkgJChFTkFCTEVfRklMVEVSUykgJChFTkFCTEVfRlVMTFNDUkVF
Tl9BUEkpICQoRU5BQkxFX0dBTUVQQUQpICQoRU5BQkxFX0dFT0xPQ0FUSU9OKSAkKEVOQUJMRV9J
Q09OREFUQUJBU0UpICQoRU5BQkxFX0lOREVYRURfREFUQUJBU0UpICQoRU5BQkxFX0lOUFVUX0NP
TE9SKSAkKEVOQUJMRV9JTlBVVF9TUEVFQ0gpICQoRU5BQkxFX0lOUFVUX1RZUEVfREFURSkgJChF
TkFCTEVfSU5QVVRfVFlQRV9EQVRFVElNRSkgJChFTkFCTEVfSU5QVVRfVFlQRV9EQVRFVElNRUxP
Q0FMKSAkKEVOQUJMRV9JTlBVVF9UWVBFX01PTlRIKSAkKEVOQUJMRV9JTlBVVF9UWVBFX1RJTUUp
ICQoRU5BQkxFX0lOUFVUX1RZUEVfV0VFSykgJChFTkFCTEVfSkFWQVNDUklQVF9ERUJVR0dFUikg
JChFTkFCTEVfTElOS19QUkVGRVRDSCkgJChFTkFCTEVfTUFUSE1MKSAkKEVOQUJMRV9NRURJQV9T
T1VSQ0UpICQoRU5BQkxFX01FRElBX1NUQVRJU1RJQ1MpICQoRU5BQkxFX01FVEVSX1RBRykgJChF
TkFCTEVfTVVUQVRJT05fT0JTRVJWRVJTKSAkKEVOQUJMRV9OT1NOSUZGKSAkKEVOQUJMRV9OT1RJ
RklDQVRJT05TKSAkKEVOQUJMRV9QQUdFX1ZJU0lCSUxJVFlfQVBJKSAkKEVOQUJMRV9QUk9HUkVT
U19UQUcpICQoRU5BQkxFX1FVT1RBKSAkKEVOQUJMRV9SRUdJU1RFUl9QUk9UT0NPTF9IQU5ETEVS
KSAkKEVOQUJMRV9SRVFVRVNUX0FOSU1BVElPTl9GUkFNRSkgJChFTkFCTEVfU0hBUkVEX1dPUktF
UlMpICQoRU5BQkxFX1NRTF9EQVRBQkFTRSkgJChFTkFCTEVfU1ZHKSAkKEVOQUJMRV9TVkdfRE9N
X09CSkNfQklORElOR1MpICQoRU5BQkxFX1NWR19GT05UUykgJChFTkFCTEVfVE9VQ0hfSUNPTl9M
T0FESU5HKSAkKEVOQUJMRV9WSURFTykgJChFTkFCTEVfVklERU9fVFJBQ0spICQoRU5BQkxFX1dF
QkdMKSAkKEVOQUJMRV9XRUJfQVVESU8pICQoRU5BQkxFX1dFQl9TT0NLRVRTKSAkKEVOQUJMRV9X
RUJfVElNSU5HKSAkKEVOQUJMRV9XT1JLRVJTKSAkKEVOQUJMRV9YU0xUKTsKSW5kZXg6IFNvdXJj
ZS9XZWJDb3JlL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9DaGFuZ2VM
b2cJKHJldmlzaW9uIDk5NzY1KQorKysgU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCSh3b3JraW5n
IGNvcHkpCkBAIC0xLDMgKzEsMjMgQEAKKzIwMTEtMTEtMDkgIFRvbSBTZXBleiAgPHRzZXBlekBj
aHJvbWl1bS5vcmc+CisKKyAgICAgICAgSW1wbGVtZW50IHNjcmlwdCBNSU1FIHJlc3RyaWN0aW9u
cyBmb3IgWC1Db250ZW50LVR5cGUtT3B0aW9uczogbm9zbmlmZgorICAgICAgICBodHRwczovL2J1
Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9NzE4NTEKKworICAgICAgICBSZXZpZXdlZCBi
eSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBUZXN0czogaHR0cC90ZXN0cy9zZWN1cml0eS9u
b3NuaWZmL3NjcmlwdC1hbGxvd2VkLW5vc25pZmYuaHRtbAorICAgICAgICAgICAgICAgaHR0cC90
ZXN0cy9zZWN1cml0eS9ub3NuaWZmL3NjcmlwdC1ibG9ja2VkLW5vc25pZmYuaHRtbAorCisgICAg
ICAgICogQ29uZmlndXJhdGlvbnMvRmVhdHVyZURlZmluZXMueGNjb25maWc6CisgICAgICAgICog
ZG9tL1NjcmlwdEVsZW1lbnQuY3BwOgorICAgICAgICAoV2ViQ29yZTo6U2NyaXB0RWxlbWVudDo6
ZXhlY3V0ZVNjcmlwdCk6CisgICAgICAgICogbG9hZGVyL2NhY2hlL0NhY2hlZFNjcmlwdC5jcHA6
CisgICAgICAgIChXZWJDb3JlOjpDYWNoZWRTY3JpcHQ6OmFsbG93ZWRQZXJOb3NuaWZmUG9saWN5
KToKKyAgICAgICAgKiBsb2FkZXIvY2FjaGUvQ2FjaGVkU2NyaXB0Lmg6CisgICAgICAgICogcGxh
dGZvcm0vbmV0d29yay9IVFRQUGFyc2Vycy5jcHA6CisgICAgICAgIChXZWJDb3JlOjpjb250ZW50
VHlwZU9wdGlvbnNUeXBlKToKKyAgICAgICAgKiBwbGF0Zm9ybS9uZXR3b3JrL0hUVFBQYXJzZXJz
Lmg6CisKIDIwMTEtMTEtMDkgIEtlbnRhcm8gSGFyYSAgPGhhcmFrZW5AY2hyb21pdW0ub3JnPgog
CiAgICAgICAgIFJlcGxhY2UgW0NhbkJlQ29uc3RydWN0ZWRdIElETCB3aXRoIFtDb25zdHJ1Y3Rv
cl0gSURMCkluZGV4OiBTb3VyY2UvV2ViQ29yZS9Db25maWd1cmF0aW9ucy9GZWF0dXJlRGVmaW5l
cy54Y2NvbmZpZwo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9Db25maWd1cmF0aW9ucy9G
ZWF0dXJlRGVmaW5lcy54Y2NvbmZpZwkocmV2aXNpb24gOTk3MzcpCisrKyBTb3VyY2UvV2ViQ29y
ZS9Db25maWd1cmF0aW9ucy9GZWF0dXJlRGVmaW5lcy54Y2NvbmZpZwkod29ya2luZyBjb3B5KQpA
QCAtOTQsNiArOTQsNyBAQCBFTkFCTEVfTUVESUFfU1RBVElTVElDUyA9IDsKIEVOQUJMRV9NRVRF
Ul9UQUcgPSBFTkFCTEVfTUVURVJfVEFHOwogRU5BQkxFX01IVE1MID0gOwogRU5BQkxFX01VVEFU
SU9OX09CU0VSVkVSUyA9IDsKK0VOQUJMRV9OT1NOSUZGID0gRU5BQkxFX05PU05JRkY7CiBFTkFC
TEVfTk9USUZJQ0FUSU9OUyA9IDsKIEVOQUJMRV9QQUdFX1ZJU0lCSUxJVFlfQVBJID0gOwogRU5B
QkxFX1BST0dSRVNTX1RBRyA9IEVOQUJMRV9QUk9HUkVTU19UQUc7CkBAIC0xMTQsNCArMTE1LDQg
QEAgRU5BQkxFX1dFQl9USU1JTkcgPSA7CiBFTkFCTEVfV09SS0VSUyA9IEVOQUJMRV9XT1JLRVJT
OwogRU5BQkxFX1hTTFQgPSBFTkFCTEVfWFNMVDsKIAotRkVBVFVSRV9ERUZJTkVTID0gJChFTkFC
TEVfM0RfUkVOREVSSU5HKSAkKEVOQUJMRV9BQ0NFTEVSQVRFRF8yRF9DQU5WQVMpICQoRU5BQkxF
X0FOSU1BVElPTl9BUEkpICQoRU5BQkxFX0JMT0IpICQoRU5BQkxFX0NIQU5ORUxfTUVTU0FHSU5H
KSAkKEVOQUJMRV9DTElFTlRfQkFTRURfR0VPTE9DQVRJT04pICQoRU5BQkxFX0NTUzNfRkxFWEJP
WCkgJChFTkFCTEVfQ1NTX0ZJTFRFUlMpICQoRU5BQkxFX0NTU19TSEFERVJTKSAkKEVOQUJMRV9E
QVRBTElTVCkgJChFTkFCTEVfREFUQV9UUkFOU0ZFUl9JVEVNUykgJChFTkFCTEVfREVUQUlMUykg
JChFTkFCTEVfREVWSUNFX09SSUVOVEFUSU9OKSAkKEVOQUJMRV9ESVJFQ1RPUllfVVBMT0FEKSAk
KEVOQUJMRV9GSUxFX1NZU1RFTSkgJChFTkFCTEVfRklMVEVSUykgJChFTkFCTEVfRlVMTFNDUkVF
Tl9BUEkpICQoRU5BQkxFX0dBTUVQQUQpICQoRU5BQkxFX0dFT0xPQ0FUSU9OKSAkKEVOQUJMRV9J
Q09OREFUQUJBU0UpICQoRU5BQkxFX0lOREVYRURfREFUQUJBU0UpICQoRU5BQkxFX0lOUFVUX0NP
TE9SKSAkKEVOQUJMRV9JTlBVVF9TUEVFQ0gpICQoRU5BQkxFX0lOUFVUX1RZUEVfREFURSkgJChF
TkFCTEVfSU5QVVRfVFlQRV9EQVRFVElNRSkgJChFTkFCTEVfSU5QVVRfVFlQRV9EQVRFVElNRUxP
Q0FMKSAkKEVOQUJMRV9JTlBVVF9UWVBFX01PTlRIKSAkKEVOQUJMRV9JTlBVVF9UWVBFX1RJTUUp
ICQoRU5BQkxFX0lOUFVUX1RZUEVfV0VFSykgJChFTkFCTEVfSkFWQVNDUklQVF9ERUJVR0dFUikg
JChFTkFCTEVfTElOS19QUkVGRVRDSCkgJChFTkFCTEVfTUFUSE1MKSAkKEVOQUJMRV9NRURJQV9T
T1VSQ0UpICQoRU5BQkxFX01FRElBX1NUQVRJU1RJQ1MpICQoRU5BQkxFX01FVEVSX1RBRykgJChF
TkFCTEVfTVVUQVRJT05fT0JTRVJWRVJTKSAkKEVOQUJMRV9OT1RJRklDQVRJT05TKSAkKEVOQUJM
RV9QQUdFX1ZJU0lCSUxJVFlfQVBJKSAkKEVOQUJMRV9QUk9HUkVTU19UQUcpICQoRU5BQkxFX1FV
T1RBKSAkKEVOQUJMRV9SRUdJU1RFUl9QUk9UT0NPTF9IQU5ETEVSKSAkKEVOQUJMRV9SRVFVRVNU
X0FOSU1BVElPTl9GUkFNRSkgJChFTkFCTEVfU0hBUkVEX1dPUktFUlMpICQoRU5BQkxFX1NRTF9E
QVRBQkFTRSkgJChFTkFCTEVfU1ZHKSAkKEVOQUJMRV9TVkdfRE9NX09CSkNfQklORElOR1MpICQo
RU5BQkxFX1NWR19GT05UUykgJChFTkFCTEVfVE9VQ0hfSUNPTl9MT0FESU5HKSAkKEVOQUJMRV9W
SURFTykgJChFTkFCTEVfVklERU9fVFJBQ0spICQoRU5BQkxFX1dFQkdMKSAkKEVOQUJMRV9XRUJf
QVVESU8pICQoRU5BQkxFX1dFQl9TT0NLRVRTKSAkKEVOQUJMRV9XRUJfVElNSU5HKSAkKEVOQUJM
RV9XT1JLRVJTKSAkKEVOQUJMRV9YU0xUKTsKK0ZFQVRVUkVfREVGSU5FUyA9ICQoRU5BQkxFXzNE
X1JFTkRFUklORykgJChFTkFCTEVfQUNDRUxFUkFURURfMkRfQ0FOVkFTKSAkKEVOQUJMRV9BTklN
QVRJT05fQVBJKSAkKEVOQUJMRV9CTE9CKSAkKEVOQUJMRV9DSEFOTkVMX01FU1NBR0lORykgJChF
TkFCTEVfQ0xJRU5UX0JBU0VEX0dFT0xPQ0FUSU9OKSAkKEVOQUJMRV9DU1MzX0ZMRVhCT1gpICQo
RU5BQkxFX0NTU19GSUxURVJTKSAkKEVOQUJMRV9DU1NfU0hBREVSUykgJChFTkFCTEVfREFUQUxJ
U1QpICQoRU5BQkxFX0RBVEFfVFJBTlNGRVJfSVRFTVMpICQoRU5BQkxFX0RFVEFJTFMpICQoRU5B
QkxFX0RFVklDRV9PUklFTlRBVElPTikgJChFTkFCTEVfRElSRUNUT1JZX1VQTE9BRCkgJChFTkFC
TEVfRklMRV9TWVNURU0pICQoRU5BQkxFX0ZJTFRFUlMpICQoRU5BQkxFX0ZVTExTQ1JFRU5fQVBJ
KSAkKEVOQUJMRV9HQU1FUEFEKSAkKEVOQUJMRV9HRU9MT0NBVElPTikgJChFTkFCTEVfSUNPTkRB
VEFCQVNFKSAkKEVOQUJMRV9JTkRFWEVEX0RBVEFCQVNFKSAkKEVOQUJMRV9JTlBVVF9DT0xPUikg
JChFTkFCTEVfSU5QVVRfU1BFRUNIKSAkKEVOQUJMRV9JTlBVVF9UWVBFX0RBVEUpICQoRU5BQkxF
X0lOUFVUX1RZUEVfREFURVRJTUUpICQoRU5BQkxFX0lOUFVUX1RZUEVfREFURVRJTUVMT0NBTCkg
JChFTkFCTEVfSU5QVVRfVFlQRV9NT05USCkgJChFTkFCTEVfSU5QVVRfVFlQRV9USU1FKSAkKEVO
QUJMRV9JTlBVVF9UWVBFX1dFRUspICQoRU5BQkxFX0pBVkFTQ1JJUFRfREVCVUdHRVIpICQoRU5B
QkxFX0xJTktfUFJFRkVUQ0gpICQoRU5BQkxFX01BVEhNTCkgJChFTkFCTEVfTUVESUFfU09VUkNF
KSAkKEVOQUJMRV9NRURJQV9TVEFUSVNUSUNTKSAkKEVOQUJMRV9NRVRFUl9UQUcpICQoRU5BQkxF
X01VVEFUSU9OX09CU0VSVkVSUykgJChFTkFCTEVfTk9TTklGRikgJChFTkFCTEVfTk9USUZJQ0FU
SU9OUykgJChFTkFCTEVfUEFHRV9WSVNJQklMSVRZX0FQSSkgJChFTkFCTEVfUFJPR1JFU1NfVEFH
KSAkKEVOQUJMRV9RVU9UQSkgJChFTkFCTEVfUkVHSVNURVJfUFJPVE9DT0xfSEFORExFUikgJChF
TkFCTEVfUkVRVUVTVF9BTklNQVRJT05fRlJBTUUpICQoRU5BQkxFX1NIQVJFRF9XT1JLRVJTKSAk
KEVOQUJMRV9TUUxfREFUQUJBU0UpICQoRU5BQkxFX1NWRykgJChFTkFCTEVfU1ZHX0RPTV9PQkpD
X0JJTkRJTkdTKSAkKEVOQUJMRV9TVkdfRk9OVFMpICQoRU5BQkxFX1RPVUNIX0lDT05fTE9BRElO
RykgJChFTkFCTEVfVklERU8pICQoRU5BQkxFX1ZJREVPX1RSQUNLKSAkKEVOQUJMRV9XRUJHTCkg
JChFTkFCTEVfV0VCX0FVRElPKSAkKEVOQUJMRV9XRUJfU09DS0VUUykgJChFTkFCTEVfV0VCX1RJ
TUlORykgJChFTkFCTEVfV09SS0VSUykgJChFTkFCTEVfWFNMVCk7CkluZGV4OiBTb3VyY2UvV2Vi
Q29yZS9kb20vU2NyaXB0RWxlbWVudC5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYkNvcmUv
ZG9tL1NjcmlwdEVsZW1lbnQuY3BwCShyZXZpc2lvbiA5OTczNykKKysrIFNvdXJjZS9XZWJDb3Jl
L2RvbS9TY3JpcHRFbGVtZW50LmNwcAkod29ya2luZyBjb3B5KQpAQCAtMjYsNyArMjYsOSBAQAog
CiAjaW5jbHVkZSAiQ2FjaGVkU2NyaXB0LmgiCiAjaW5jbHVkZSAiQ2FjaGVkUmVzb3VyY2VMb2Fk
ZXIuaCIKKyNpbmNsdWRlICJDb25zb2xlLmgiCiAjaW5jbHVkZSAiQ29udGVudFNlY3VyaXR5UG9s
aWN5LmgiCisjaW5jbHVkZSAiRE9NV2luZG93LmgiCiAjaW5jbHVkZSAiRG9jdW1lbnQuaCIKICNp
bmNsdWRlICJEb2N1bWVudFBhcnNlci5oIgogI2luY2x1ZGUgIkZyYW1lLmgiCkBAIC0yOTAsNiAr
MjkyLDE0IEBAIHZvaWQgU2NyaXB0RWxlbWVudDo6ZXhlY3V0ZVNjcmlwdChjb25zdCAKICAgICBp
ZiAoIW1faXNFeHRlcm5hbFNjcmlwdCAmJiAhbV9lbGVtZW50LT5kb2N1bWVudCgpLT5jb250ZW50
U2VjdXJpdHlQb2xpY3koKS0+YWxsb3dJbmxpbmVTY3JpcHQoKSkKICAgICAgICAgcmV0dXJuOwog
CisjaWYgRU5BQkxFKE5PU05JRkYpCisgICAgaWYgKG1faXNFeHRlcm5hbFNjcmlwdCAmJiBtX2Nh
Y2hlZFNjcmlwdCAmJiAhbV9jYWNoZWRTY3JpcHQtPmFsbG93ZWRQZXJOb3NuaWZmUG9saWN5KCkp
IHsKKyAgICAgICAgU3RyaW5nIGNvbnNvbGVNZXNzYWdlID0gIlJlZnVzZWQgdG8gbG9hZCBzY3Jp
cHQgZnJvbSAiICsgbV9jYWNoZWRTY3JpcHQtPnVybCgpLnN0cmluZygpICsgIiBkdWUgdG8gTUlN
RSB0eXBlIG1pc21hdGNoIGFuZCBYLUNvbnRlbnQtVHlwZS1PcHRpb25zIGhlYWRlci5cbiI7Cisg
ICAgICAgIG1fZWxlbWVudC0+ZG9jdW1lbnQoKS0+YWRkQ29uc29sZU1lc3NhZ2UoSlNNZXNzYWdl
U291cmNlLCBMb2dNZXNzYWdlVHlwZSwgRXJyb3JNZXNzYWdlTGV2ZWwsIGNvbnNvbGVNZXNzYWdl
KTsKKyAgICAgICAgcmV0dXJuOworICAgIH0KKyNlbmRpZgorCiAgICAgUmVmUHRyPERvY3VtZW50
PiBkb2N1bWVudCA9IG1fZWxlbWVudC0+ZG9jdW1lbnQoKTsKICAgICBBU1NFUlQoZG9jdW1lbnQp
OwogICAgIGlmIChGcmFtZSogZnJhbWUgPSBkb2N1bWVudC0+ZnJhbWUoKSkgewpJbmRleDogU291
cmNlL1dlYkNvcmUvbG9hZGVyL2NhY2hlL0NhY2hlZFNjcmlwdC5jcHAKPT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0g
U291cmNlL1dlYkNvcmUvbG9hZGVyL2NhY2hlL0NhY2hlZFNjcmlwdC5jcHAJKHJldmlzaW9uIDk5
NzM3KQorKysgU291cmNlL1dlYkNvcmUvbG9hZGVyL2NhY2hlL0NhY2hlZFNjcmlwdC5jcHAJKHdv
cmtpbmcgY29weSkKQEAgLTI3LDkgKzI3LDEwIEBACiAjaW5jbHVkZSAiY29uZmlnLmgiCiAjaW5j
bHVkZSAiQ2FjaGVkU2NyaXB0LmgiCiAKLSNpbmNsdWRlICJNZW1vcnlDYWNoZS5oIgogI2luY2x1
ZGUgIkNhY2hlZFJlc291cmNlQ2xpZW50LmgiCiAjaW5jbHVkZSAiQ2FjaGVkUmVzb3VyY2VDbGll
bnRXYWxrZXIuaCIKKyNpbmNsdWRlICJIVFRQUGFyc2Vycy5oIgorI2luY2x1ZGUgIk1lbW9yeUNh
Y2hlLmgiCiAjaW5jbHVkZSAiU2hhcmVkQnVmZmVyLmgiCiAjaW5jbHVkZSAiVGV4dFJlc291cmNl
RGVjb2Rlci5oIgogI2luY2x1ZGUgPHd0Zi9WZWN0b3IuaD4KQEAgLTE0Niw0ICsxNDcsMjkgQEAg
dm9pZCBDYWNoZWRTY3JpcHQ6OnNvdXJjZVByb3ZpZGVyQ2FjaGVTaQogfQogI2VuZGlmCiAKKyNp
ZiBFTkFCTEUoTk9TTklGRikKK2Jvb2wgQ2FjaGVkU2NyaXB0OjphbGxvd2VkUGVyTm9zbmlmZlBv
bGljeSgpIGNvbnN0Cit7CisgICAgLy8gQ2hlY2sgcmF3IHZhbHVlcyBmcm9tIHRoZSBzZXJ2ZXIs
IG5vdCB0aGUgb25lcyB0aGF0IG1heSBoYXZlIGJlZW4gZGVkdWNlZC4KKyAgICBpZiAoY29udGVu
dFR5cGVPcHRpb25zVHlwZShtX3Jlc3BvbnNlLmh0dHBIZWFkZXJGaWVsZCgiWC1Db250ZW50LVR5
cGUtT3B0aW9ucyIpKSA9PSBDb250ZW50VHlwZU9wdGlvbnNOb3NuaWZmKSB7CisgICAgICAgIERF
RklORV9TVEFUSUNfTE9DQUwoSGFzaFNldDxTdHJpbmc+LCBwZXJtaXR0ZWRNaW1lVHlwZXMsICgp
KTsKKyAgICAgICAgaWYgKHBlcm1pdHRlZE1pbWVUeXBlcy5pc0VtcHR5KCkpIHsKKyAgICAgICAg
ICAgIC8vIExpc3Qgb2YgdHlwZXMgZnJvbSBodHRwOi8vbXNkbi5taWNyb3NvZnQuY29tL2VuLXVz
L2xpYnJhcnkvZ2c2MjI5NDEodj12cy44NSkuYXNweAorICAgICAgICAgICAgcGVybWl0dGVkTWlt
ZVR5cGVzLmFkZCgiYXBwbGljYXRpb24vZWNtYXNjcmlwdCIpOworICAgICAgICAgICAgcGVybWl0
dGVkTWltZVR5cGVzLmFkZCgiYXBwbGljYXRpb24vamF2YXNjcmlwdCIpOworICAgICAgICAgICAg
cGVybWl0dGVkTWltZVR5cGVzLmFkZCgiYXBwbGljYXRpb24veC1qYXZhc2NyaXB0Iik7CisgICAg
ICAgICAgICBwZXJtaXR0ZWRNaW1lVHlwZXMuYWRkKCJ0ZXh0L2VjbWFzY3JpcHQiKTsKKyAgICAg
ICAgICAgIHBlcm1pdHRlZE1pbWVUeXBlcy5hZGQoInRleHQvamF2YXNjcmlwdCIpOworICAgICAg
ICAgICAgcGVybWl0dGVkTWltZVR5cGVzLmFkZCgidGV4dC9qc2NyaXB0Iik7CisgICAgICAgICAg
ICBwZXJtaXR0ZWRNaW1lVHlwZXMuYWRkKCJ0ZXh0L3gtamF2YXNjcmlwdCIpOworICAgICAgICAg
ICAgcGVybWl0dGVkTWltZVR5cGVzLmFkZCgidGV4dC92YnMiKTsKKyAgICAgICAgICAgIHBlcm1p
dHRlZE1pbWVUeXBlcy5hZGQoInRleHQvdmJzY3JpcHQiKTsKKyAgICAgICAgfQorICAgICAgICBp
ZiAoIXBlcm1pdHRlZE1pbWVUeXBlcy5jb250YWlucyhleHRyYWN0TUlNRVR5cGVGcm9tTWVkaWFU
eXBlKG1fcmVzcG9uc2UuaHR0cEhlYWRlckZpZWxkKCJDb250ZW50LVR5cGUiKSkubG93ZXIoKSkp
CisgICAgICAgICAgICByZXR1cm4gZmFsc2U7CisgICAgfQorICAgIHJldHVybiB0cnVlOworfQor
I2VuZGlmCisKIH0gLy8gbmFtZXNwYWNlIFdlYkNvcmUKSW5kZXg6IFNvdXJjZS9XZWJDb3JlL2xv
YWRlci9jYWNoZS9DYWNoZWRTY3JpcHQuaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9s
b2FkZXIvY2FjaGUvQ2FjaGVkU2NyaXB0LmgJKHJldmlzaW9uIDk5NzM3KQorKysgU291cmNlL1dl
YkNvcmUvbG9hZGVyL2NhY2hlL0NhY2hlZFNjcmlwdC5oCSh3b3JraW5nIGNvcHkpCkBAIC02MSw2
ICs2MSw5IEBAIG5hbWVzcGFjZSBXZWJDb3JlIHsKICAgICAgICAgSlNDOjpTb3VyY2VQcm92aWRl
ckNhY2hlKiBzb3VyY2VQcm92aWRlckNhY2hlKCkgY29uc3Q7CiAgICAgICAgIHZvaWQgc291cmNl
UHJvdmlkZXJDYWNoZVNpemVDaGFuZ2VkKGludCBkZWx0YSk7CiAjZW5kaWYKKyNpZiBFTkFCTEUo
Tk9TTklGRikKKyAgICAgICAgYm9vbCBhbGxvd2VkUGVyTm9zbmlmZlBvbGljeSgpIGNvbnN0Owor
I2VuZGlmCiAgICAgcHJpdmF0ZToKICAgICAgICAgdm9pZCBkZWNvZGVkRGF0YURlbGV0aW9uVGlt
ZXJGaXJlZChUaW1lcjxDYWNoZWRTY3JpcHQ+Kik7CiAgICAgICAgIHZpcnR1YWwgUHVyZ2VQcmlv
cml0eSBwdXJnZVByaW9yaXR5KCkgY29uc3QgeyByZXR1cm4gUHVyZ2VMYXN0OyB9CkluZGV4OiBT
b3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9uZXR3b3JrL0hUVFBQYXJzZXJzLmNwcAo9PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
Ci0tLSBTb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9uZXR3b3JrL0hUVFBQYXJzZXJzLmNwcAkocmV2
aXNpb24gOTk3MzcpCisrKyBTb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9uZXR3b3JrL0hUVFBQYXJz
ZXJzLmNwcAkod29ya2luZyBjb3B5KQpAQCAtMzczLDQgKzM3MywxNCBAQCBib29sIHBhcnNlUmFu
Z2UoY29uc3QgU3RyaW5nJiByYW5nZSwgbG9uCiAgICAgcmV0dXJuIHRydWU7CiB9CiAKKyNpZiBF
TkFCTEUoTk9TTklGRikKK0NvbnRlbnRUeXBlT3B0aW9uc1R5cGUgY29udGVudFR5cGVPcHRpb25z
VHlwZShjb25zdCBTdHJpbmcmIGNvbnRlbnRUeXBlT3B0aW9ucykKK3sKKyAgICBpZiAoY29udGVu
dFR5cGVPcHRpb25zLnN0cmlwV2hpdGVTcGFjZSgpLmxvd2VyKCkgPT0gIm5vc25pZmYiKQorICAg
ICAgICByZXR1cm4gQ29udGVudFR5cGVPcHRpb25zTm9zbmlmZjsKKworICAgIHJldHVybiBDb250
ZW50VHlwZU9wdGlvbnNOb25lOworfQorI2VuZGlmCisKIH0KSW5kZXg6IFNvdXJjZS9XZWJDb3Jl
L3BsYXRmb3JtL25ldHdvcmsvSFRUUFBhcnNlcnMuaAo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2Vi
Q29yZS9wbGF0Zm9ybS9uZXR3b3JrL0hUVFBQYXJzZXJzLmgJKHJldmlzaW9uIDk5NzM3KQorKysg
U291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbmV0d29yay9IVFRQUGFyc2Vycy5oCSh3b3JraW5nIGNv
cHkpCkBAIC00OSw2ICs0OSwxMyBAQCB0eXBlZGVmIGVudW0gewogICAgIENvbnRlbnREaXNwb3Np
dGlvbk90aGVyCiB9IENvbnRlbnREaXNwb3NpdGlvblR5cGU7CiAKKyNpZiBFTkFCTEUoTk9TTklG
RikKK2VudW0gQ29udGVudFR5cGVPcHRpb25zVHlwZSB7CisgICAgQ29udGVudFR5cGVPcHRpb25z
Tm9uZSwKKyAgICBDb250ZW50VHlwZU9wdGlvbnNOb3NuaWZmCit9OworI2VuZGlmCisKIENvbnRl
bnREaXNwb3NpdGlvblR5cGUgY29udGVudERpc3Bvc2l0aW9uVHlwZShjb25zdCBTdHJpbmcmKTsK
IGJvb2wgcGFyc2VIVFRQUmVmcmVzaChjb25zdCBTdHJpbmcmIHJlZnJlc2gsIGJvb2wgZnJvbUh0
dHBFcXVpdk1ldGEsIGRvdWJsZSYgZGVsYXksIFN0cmluZyYgdXJsKTsKIGRvdWJsZSBwYXJzZURh
dGUoY29uc3QgU3RyaW5nJik7CkBAIC02Miw2ICs2OSw5IEBAIFN0cmluZyBleHRyYWN0UmVhc29u
UGhyYXNlRnJvbUhUVFBTdGF0dXMKIC8vIC0xIGNvdWxkIGJlIHNldCB0byBvbmUgb2YgdGhlIHJl
dHVybiBwYXJhbWV0ZXJzIHRvIGluZGljYXRlIHRoZSB2YWx1ZSBpcyBub3Qgc3BlY2lmaWVkLgog
Ym9vbCBwYXJzZVJhbmdlKGNvbnN0IFN0cmluZyYsIGxvbmcgbG9uZyYgcmFuZ2VPZmZzZXQsIGxv
bmcgbG9uZyYgcmFuZ2VFbmQsIGxvbmcgbG9uZyYgcmFuZ2VTdWZmaXhMZW5ndGgpOwogCisjaWYg
RU5BQkxFKE5PU05JRkYpCitDb250ZW50VHlwZU9wdGlvbnNUeXBlIGNvbnRlbnRUeXBlT3B0aW9u
c1R5cGUoY29uc3QgU3RyaW5nJik7CisjZW5kaWYKIH0KIAogI2VuZGlmCkluZGV4OiBTb3VyY2Uv
V2ViS2l0Mi9DaGFuZ2VMb2cKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYktpdDIvQ2hhbmdlTG9n
CShyZXZpc2lvbiA5OTc2NSkKKysrIFNvdXJjZS9XZWJLaXQyL0NoYW5nZUxvZwkod29ya2luZyBj
b3B5KQpAQCAtMSwzICsxLDEyIEBACisyMDExLTExLTA5ICBUb20gU2VwZXogIDx0c2VwZXpAY2hy
b21pdW0ub3JnPgorCisgICAgICAgIEltcGxlbWVudCBzY3JpcHQgTUlNRSByZXN0cmljdGlvbnMg
Zm9yIFgtQ29udGVudC1UeXBlLU9wdGlvbnM6IG5vc25pZmYKKyAgICAgICAgaHR0cHM6Ly9idWdz
LndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTcxODUxCisKKyAgICAgICAgUmV2aWV3ZWQgYnkg
Tk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgKiBDb25maWd1cmF0aW9ucy9GZWF0dXJlRGVmaW5l
cy54Y2NvbmZpZzoKKwogMjAxMS0xMS0wOSAgTWFyayBIYWhuZW5iZXJnICA8bWhhaG5lbmJlcmdA
YXBwbGUuY29tPgogCiAgICAgICAgIERlLXZpcnR1YWxpemUgSlNPYmplY3Q6OmdldE93blByb3Bl
cnR5RGVzY3JpcHRvcgpJbmRleDogU291cmNlL1dlYktpdDIvQ29uZmlndXJhdGlvbnMvRmVhdHVy
ZURlZmluZXMueGNjb25maWcKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYktpdDIvQ29uZmlndXJh
dGlvbnMvRmVhdHVyZURlZmluZXMueGNjb25maWcJKHJldmlzaW9uIDk5NzM3KQorKysgU291cmNl
L1dlYktpdDIvQ29uZmlndXJhdGlvbnMvRmVhdHVyZURlZmluZXMueGNjb25maWcJKHdvcmtpbmcg
Y29weSkKQEAgLTk0LDYgKzk0LDcgQEAgRU5BQkxFX01FRElBX1NUQVRJU1RJQ1MgPSA7CiBFTkFC
TEVfTUVURVJfVEFHID0gRU5BQkxFX01FVEVSX1RBRzsKIEVOQUJMRV9NSFRNTCA9IDsKIEVOQUJM
RV9NVVRBVElPTl9PQlNFUlZFUlMgPSA7CitFTkFCTEVfTk9TTklGRiA9IEVOQUJMRV9OT1NOSUZG
OwogRU5BQkxFX05PVElGSUNBVElPTlMgPSA7CiBFTkFCTEVfUEFHRV9WSVNJQklMSVRZX0FQSSA9
IDsKIEVOQUJMRV9QUk9HUkVTU19UQUcgPSBFTkFCTEVfUFJPR1JFU1NfVEFHOwpAQCAtMTE0LDQg
KzExNSw0IEBAIEVOQUJMRV9XRUJfVElNSU5HID0gOwogRU5BQkxFX1dPUktFUlMgPSBFTkFCTEVf
V09SS0VSUzsKIEVOQUJMRV9YU0xUID0gRU5BQkxFX1hTTFQ7CiAKLUZFQVRVUkVfREVGSU5FUyA9
ICQoRU5BQkxFXzNEX1JFTkRFUklORykgJChFTkFCTEVfQUNDRUxFUkFURURfMkRfQ0FOVkFTKSAk
KEVOQUJMRV9BTklNQVRJT05fQVBJKSAkKEVOQUJMRV9CTE9CKSAkKEVOQUJMRV9DSEFOTkVMX01F
U1NBR0lORykgJChFTkFCTEVfQ0xJRU5UX0JBU0VEX0dFT0xPQ0FUSU9OKSAkKEVOQUJMRV9DU1Mz
X0ZMRVhCT1gpICQoRU5BQkxFX0NTU19GSUxURVJTKSAkKEVOQUJMRV9DU1NfU0hBREVSUykgJChF
TkFCTEVfREFUQUxJU1QpICQoRU5BQkxFX0RBVEFfVFJBTlNGRVJfSVRFTVMpICQoRU5BQkxFX0RF
VEFJTFMpICQoRU5BQkxFX0RFVklDRV9PUklFTlRBVElPTikgJChFTkFCTEVfRElSRUNUT1JZX1VQ
TE9BRCkgJChFTkFCTEVfRklMRV9TWVNURU0pICQoRU5BQkxFX0ZJTFRFUlMpICQoRU5BQkxFX0ZV
TExTQ1JFRU5fQVBJKSAkKEVOQUJMRV9HQU1FUEFEKSAkKEVOQUJMRV9HRU9MT0NBVElPTikgJChF
TkFCTEVfSUNPTkRBVEFCQVNFKSAkKEVOQUJMRV9JTkRFWEVEX0RBVEFCQVNFKSAkKEVOQUJMRV9J
TlBVVF9DT0xPUikgJChFTkFCTEVfSU5QVVRfU1BFRUNIKSAkKEVOQUJMRV9JTlBVVF9UWVBFX0RB
VEUpICQoRU5BQkxFX0lOUFVUX1RZUEVfREFURVRJTUUpICQoRU5BQkxFX0lOUFVUX1RZUEVfREFU
RVRJTUVMT0NBTCkgJChFTkFCTEVfSU5QVVRfVFlQRV9NT05USCkgJChFTkFCTEVfSU5QVVRfVFlQ
RV9USU1FKSAkKEVOQUJMRV9JTlBVVF9UWVBFX1dFRUspICQoRU5BQkxFX0pBVkFTQ1JJUFRfREVC
VUdHRVIpICQoRU5BQkxFX0xJTktfUFJFRkVUQ0gpICQoRU5BQkxFX01BVEhNTCkgJChFTkFCTEVf
TUVESUFfU09VUkNFKSAkKEVOQUJMRV9NRURJQV9TVEFUSVNUSUNTKSAkKEVOQUJMRV9NRVRFUl9U
QUcpICQoRU5BQkxFX01VVEFUSU9OX09CU0VSVkVSUykgJChFTkFCTEVfTk9USUZJQ0FUSU9OUykg
JChFTkFCTEVfUEFHRV9WSVNJQklMSVRZX0FQSSkgJChFTkFCTEVfUFJPR1JFU1NfVEFHKSAkKEVO
QUJMRV9RVU9UQSkgJChFTkFCTEVfUkVHSVNURVJfUFJPVE9DT0xfSEFORExFUikgJChFTkFCTEVf
UkVRVUVTVF9BTklNQVRJT05fRlJBTUUpICQoRU5BQkxFX1NIQVJFRF9XT1JLRVJTKSAkKEVOQUJM
RV9TUUxfREFUQUJBU0UpICQoRU5BQkxFX1NWRykgJChFTkFCTEVfU1ZHX0RPTV9PQkpDX0JJTkRJ
TkdTKSAkKEVOQUJMRV9TVkdfRk9OVFMpICQoRU5BQkxFX1RPVUNIX0lDT05fTE9BRElORykgJChF
TkFCTEVfVklERU8pICQoRU5BQkxFX1ZJREVPX1RSQUNLKSAkKEVOQUJMRV9XRUJHTCkgJChFTkFC
TEVfV0VCX0FVRElPKSAkKEVOQUJMRV9XRUJfU09DS0VUUykgJChFTkFCTEVfV0VCX1RJTUlORykg
JChFTkFCTEVfV09SS0VSUykgJChFTkFCTEVfWFNMVCk7CitGRUFUVVJFX0RFRklORVMgPSAkKEVO
QUJMRV8zRF9SRU5ERVJJTkcpICQoRU5BQkxFX0FDQ0VMRVJBVEVEXzJEX0NBTlZBUykgJChFTkFC
TEVfQU5JTUFUSU9OX0FQSSkgJChFTkFCTEVfQkxPQikgJChFTkFCTEVfQ0hBTk5FTF9NRVNTQUdJ
TkcpICQoRU5BQkxFX0NMSUVOVF9CQVNFRF9HRU9MT0NBVElPTikgJChFTkFCTEVfQ1NTM19GTEVY
Qk9YKSAkKEVOQUJMRV9DU1NfRklMVEVSUykgJChFTkFCTEVfQ1NTX1NIQURFUlMpICQoRU5BQkxF
X0RBVEFMSVNUKSAkKEVOQUJMRV9EQVRBX1RSQU5TRkVSX0lURU1TKSAkKEVOQUJMRV9ERVRBSUxT
KSAkKEVOQUJMRV9ERVZJQ0VfT1JJRU5UQVRJT04pICQoRU5BQkxFX0RJUkVDVE9SWV9VUExPQUQp
ICQoRU5BQkxFX0ZJTEVfU1lTVEVNKSAkKEVOQUJMRV9GSUxURVJTKSAkKEVOQUJMRV9GVUxMU0NS
RUVOX0FQSSkgJChFTkFCTEVfR0FNRVBBRCkgJChFTkFCTEVfR0VPTE9DQVRJT04pICQoRU5BQkxF
X0lDT05EQVRBQkFTRSkgJChFTkFCTEVfSU5ERVhFRF9EQVRBQkFTRSkgJChFTkFCTEVfSU5QVVRf
Q09MT1IpICQoRU5BQkxFX0lOUFVUX1NQRUVDSCkgJChFTkFCTEVfSU5QVVRfVFlQRV9EQVRFKSAk
KEVOQUJMRV9JTlBVVF9UWVBFX0RBVEVUSU1FKSAkKEVOQUJMRV9JTlBVVF9UWVBFX0RBVEVUSU1F
TE9DQUwpICQoRU5BQkxFX0lOUFVUX1RZUEVfTU9OVEgpICQoRU5BQkxFX0lOUFVUX1RZUEVfVElN
RSkgJChFTkFCTEVfSU5QVVRfVFlQRV9XRUVLKSAkKEVOQUJMRV9KQVZBU0NSSVBUX0RFQlVHR0VS
KSAkKEVOQUJMRV9MSU5LX1BSRUZFVENIKSAkKEVOQUJMRV9NQVRITUwpICQoRU5BQkxFX01FRElB
X1NPVVJDRSkgJChFTkFCTEVfTUVESUFfU1RBVElTVElDUykgJChFTkFCTEVfTUVURVJfVEFHKSAk
KEVOQUJMRV9NVVRBVElPTl9PQlNFUlZFUlMpICQoRU5BQkxFX05PU05JRkYpICQoRU5BQkxFX05P
VElGSUNBVElPTlMpICQoRU5BQkxFX1BBR0VfVklTSUJJTElUWV9BUEkpICQoRU5BQkxFX1BST0dS
RVNTX1RBRykgJChFTkFCTEVfUVVPVEEpICQoRU5BQkxFX1JFR0lTVEVSX1BST1RPQ09MX0hBTkRM
RVIpICQoRU5BQkxFX1JFUVVFU1RfQU5JTUFUSU9OX0ZSQU1FKSAkKEVOQUJMRV9TSEFSRURfV09S
S0VSUykgJChFTkFCTEVfU1FMX0RBVEFCQVNFKSAkKEVOQUJMRV9TVkcpICQoRU5BQkxFX1NWR19E
T01fT0JKQ19CSU5ESU5HUykgJChFTkFCTEVfU1ZHX0ZPTlRTKSAkKEVOQUJMRV9UT1VDSF9JQ09O
X0xPQURJTkcpICQoRU5BQkxFX1ZJREVPKSAkKEVOQUJMRV9WSURFT19UUkFDSykgJChFTkFCTEVf
V0VCR0wpICQoRU5BQkxFX1dFQl9BVURJTykgJChFTkFCTEVfV0VCX1NPQ0tFVFMpICQoRU5BQkxF
X1dFQl9USU1JTkcpICQoRU5BQkxFX1dPUktFUlMpICQoRU5BQkxFX1hTTFQpOwpJbmRleDogU291
cmNlL1dlYktpdC9tYWMvQ2hhbmdlTG9nCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJLaXQvbWFj
L0NoYW5nZUxvZwkocmV2aXNpb24gOTk3NjUpCisrKyBTb3VyY2UvV2ViS2l0L21hYy9DaGFuZ2VM
b2cJKHdvcmtpbmcgY29weSkKQEAgLTEsMyArMSwxMiBAQAorMjAxMS0xMS0wOSAgVG9tIFNlcGV6
ICA8dHNlcGV6QGNocm9taXVtLm9yZz4KKworICAgICAgICBJbXBsZW1lbnQgc2NyaXB0IE1JTUUg
cmVzdHJpY3Rpb25zIGZvciBYLUNvbnRlbnQtVHlwZS1PcHRpb25zOiBub3NuaWZmCisgICAgICAg
IGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD03MTg1MQorCisgICAgICAg
IFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgICogQ29uZmlndXJhdGlvbnMv
RmVhdHVyZURlZmluZXMueGNjb25maWc6CisKIDIwMTEtMTEtMDcgIEFkYW0gQmFydGggIDxhYmFy
dGhAd2Via2l0Lm9yZz4KIAogICAgICAgICBNb3ZlIHN0YXRpYyAicG9saWN5IiBzdGF0ZSBmcm9t
IFNlY3VyaXR5T3JpZ2luLmNwcCB0byBTZWN1cml0eVBvbGljeS5jcHAKSW5kZXg6IFNvdXJjZS9X
ZWJLaXQvbWFjL0NvbmZpZ3VyYXRpb25zL0ZlYXR1cmVEZWZpbmVzLnhjY29uZmlnCj09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT0KLS0tIFNvdXJjZS9XZWJLaXQvbWFjL0NvbmZpZ3VyYXRpb25zL0ZlYXR1cmVEZWZpbmVzLnhj
Y29uZmlnCShyZXZpc2lvbiA5OTczNykKKysrIFNvdXJjZS9XZWJLaXQvbWFjL0NvbmZpZ3VyYXRp
b25zL0ZlYXR1cmVEZWZpbmVzLnhjY29uZmlnCSh3b3JraW5nIGNvcHkpCkBAIC05NCw2ICs5NCw3
IEBAIEVOQUJMRV9NRURJQV9TVEFUSVNUSUNTID0gOwogRU5BQkxFX01FVEVSX1RBRyA9IEVOQUJM
RV9NRVRFUl9UQUc7CiBFTkFCTEVfTUhUTUwgPSA7CiBFTkFCTEVfTVVUQVRJT05fT0JTRVJWRVJT
ID0gOworRU5BQkxFX05PU05JRkYgPSBFTkFCTEVfTk9TTklGRjsKIEVOQUJMRV9OT1RJRklDQVRJ
T05TID0gOwogRU5BQkxFX1BBR0VfVklTSUJJTElUWV9BUEkgPSA7CiBFTkFCTEVfUFJPR1JFU1Nf
VEFHID0gRU5BQkxFX1BST0dSRVNTX1RBRzsKQEAgLTExNCw0ICsxMTUsNCBAQCBFTkFCTEVfV0VC
X1RJTUlORyA9IDsKIEVOQUJMRV9XT1JLRVJTID0gRU5BQkxFX1dPUktFUlM7CiBFTkFCTEVfWFNM
VCA9IEVOQUJMRV9YU0xUOwogCi1GRUFUVVJFX0RFRklORVMgPSAkKEVOQUJMRV8zRF9SRU5ERVJJ
TkcpICQoRU5BQkxFX0FDQ0VMRVJBVEVEXzJEX0NBTlZBUykgJChFTkFCTEVfQU5JTUFUSU9OX0FQ
SSkgJChFTkFCTEVfQkxPQikgJChFTkFCTEVfQ0hBTk5FTF9NRVNTQUdJTkcpICQoRU5BQkxFX0NM
SUVOVF9CQVNFRF9HRU9MT0NBVElPTikgJChFTkFCTEVfQ1NTM19GTEVYQk9YKSAkKEVOQUJMRV9D
U1NfRklMVEVSUykgJChFTkFCTEVfQ1NTX1NIQURFUlMpICQoRU5BQkxFX0RBVEFMSVNUKSAkKEVO
QUJMRV9EQVRBX1RSQU5TRkVSX0lURU1TKSAkKEVOQUJMRV9ERVRBSUxTKSAkKEVOQUJMRV9ERVZJ
Q0VfT1JJRU5UQVRJT04pICQoRU5BQkxFX0RJUkVDVE9SWV9VUExPQUQpICQoRU5BQkxFX0ZJTEVf
U1lTVEVNKSAkKEVOQUJMRV9GSUxURVJTKSAkKEVOQUJMRV9GVUxMU0NSRUVOX0FQSSkgJChFTkFC
TEVfR0FNRVBBRCkgJChFTkFCTEVfR0VPTE9DQVRJT04pICQoRU5BQkxFX0lDT05EQVRBQkFTRSkg
JChFTkFCTEVfSU5ERVhFRF9EQVRBQkFTRSkgJChFTkFCTEVfSU5QVVRfQ09MT1IpICQoRU5BQkxF
X0lOUFVUX1NQRUVDSCkgJChFTkFCTEVfSU5QVVRfVFlQRV9EQVRFKSAkKEVOQUJMRV9JTlBVVF9U
WVBFX0RBVEVUSU1FKSAkKEVOQUJMRV9JTlBVVF9UWVBFX0RBVEVUSU1FTE9DQUwpICQoRU5BQkxF
X0lOUFVUX1RZUEVfTU9OVEgpICQoRU5BQkxFX0lOUFVUX1RZUEVfVElNRSkgJChFTkFCTEVfSU5Q
VVRfVFlQRV9XRUVLKSAkKEVOQUJMRV9KQVZBU0NSSVBUX0RFQlVHR0VSKSAkKEVOQUJMRV9MSU5L
X1BSRUZFVENIKSAkKEVOQUJMRV9NQVRITUwpICQoRU5BQkxFX01FRElBX1NPVVJDRSkgJChFTkFC
TEVfTUVESUFfU1RBVElTVElDUykgJChFTkFCTEVfTUVURVJfVEFHKSAkKEVOQUJMRV9NVVRBVElP
Tl9PQlNFUlZFUlMpICQoRU5BQkxFX05PVElGSUNBVElPTlMpICQoRU5BQkxFX1BBR0VfVklTSUJJ
TElUWV9BUEkpICQoRU5BQkxFX1BST0dSRVNTX1RBRykgJChFTkFCTEVfUVVPVEEpICQoRU5BQkxF
X1JFR0lTVEVSX1BST1RPQ09MX0hBTkRMRVIpICQoRU5BQkxFX1JFUVVFU1RfQU5JTUFUSU9OX0ZS
QU1FKSAkKEVOQUJMRV9TSEFSRURfV09SS0VSUykgJChFTkFCTEVfU1FMX0RBVEFCQVNFKSAkKEVO
QUJMRV9TVkcpICQoRU5BQkxFX1NWR19ET01fT0JKQ19CSU5ESU5HUykgJChFTkFCTEVfU1ZHX0ZP
TlRTKSAkKEVOQUJMRV9UT1VDSF9JQ09OX0xPQURJTkcpICQoRU5BQkxFX1ZJREVPKSAkKEVOQUJM
RV9WSURFT19UUkFDSykgJChFTkFCTEVfV0VCR0wpICQoRU5BQkxFX1dFQl9BVURJTykgJChFTkFC
TEVfV0VCX1NPQ0tFVFMpICQoRU5BQkxFX1dFQl9USU1JTkcpICQoRU5BQkxFX1dPUktFUlMpICQo
RU5BQkxFX1hTTFQpOworRkVBVFVSRV9ERUZJTkVTID0gJChFTkFCTEVfM0RfUkVOREVSSU5HKSAk
KEVOQUJMRV9BQ0NFTEVSQVRFRF8yRF9DQU5WQVMpICQoRU5BQkxFX0FOSU1BVElPTl9BUEkpICQo
RU5BQkxFX0JMT0IpICQoRU5BQkxFX0NIQU5ORUxfTUVTU0FHSU5HKSAkKEVOQUJMRV9DTElFTlRf
QkFTRURfR0VPTE9DQVRJT04pICQoRU5BQkxFX0NTUzNfRkxFWEJPWCkgJChFTkFCTEVfQ1NTX0ZJ
TFRFUlMpICQoRU5BQkxFX0NTU19TSEFERVJTKSAkKEVOQUJMRV9EQVRBTElTVCkgJChFTkFCTEVf
REFUQV9UUkFOU0ZFUl9JVEVNUykgJChFTkFCTEVfREVUQUlMUykgJChFTkFCTEVfREVWSUNFX09S
SUVOVEFUSU9OKSAkKEVOQUJMRV9ESVJFQ1RPUllfVVBMT0FEKSAkKEVOQUJMRV9GSUxFX1NZU1RF
TSkgJChFTkFCTEVfRklMVEVSUykgJChFTkFCTEVfRlVMTFNDUkVFTl9BUEkpICQoRU5BQkxFX0dB
TUVQQUQpICQoRU5BQkxFX0dFT0xPQ0FUSU9OKSAkKEVOQUJMRV9JQ09OREFUQUJBU0UpICQoRU5B
QkxFX0lOREVYRURfREFUQUJBU0UpICQoRU5BQkxFX0lOUFVUX0NPTE9SKSAkKEVOQUJMRV9JTlBV
VF9TUEVFQ0gpICQoRU5BQkxFX0lOUFVUX1RZUEVfREFURSkgJChFTkFCTEVfSU5QVVRfVFlQRV9E
QVRFVElNRSkgJChFTkFCTEVfSU5QVVRfVFlQRV9EQVRFVElNRUxPQ0FMKSAkKEVOQUJMRV9JTlBV
VF9UWVBFX01PTlRIKSAkKEVOQUJMRV9JTlBVVF9UWVBFX1RJTUUpICQoRU5BQkxFX0lOUFVUX1RZ
UEVfV0VFSykgJChFTkFCTEVfSkFWQVNDUklQVF9ERUJVR0dFUikgJChFTkFCTEVfTElOS19QUkVG
RVRDSCkgJChFTkFCTEVfTUFUSE1MKSAkKEVOQUJMRV9NRURJQV9TT1VSQ0UpICQoRU5BQkxFX01F
RElBX1NUQVRJU1RJQ1MpICQoRU5BQkxFX01FVEVSX1RBRykgJChFTkFCTEVfTVVUQVRJT05fT0JT
RVJWRVJTKSAkKEVOQUJMRV9OT1NOSUZGKSAkKEVOQUJMRV9OT1RJRklDQVRJT05TKSAkKEVOQUJM
RV9QQUdFX1ZJU0lCSUxJVFlfQVBJKSAkKEVOQUJMRV9QUk9HUkVTU19UQUcpICQoRU5BQkxFX1FV
T1RBKSAkKEVOQUJMRV9SRUdJU1RFUl9QUk9UT0NPTF9IQU5ETEVSKSAkKEVOQUJMRV9SRVFVRVNU
X0FOSU1BVElPTl9GUkFNRSkgJChFTkFCTEVfU0hBUkVEX1dPUktFUlMpICQoRU5BQkxFX1NRTF9E
QVRBQkFTRSkgJChFTkFCTEVfU1ZHKSAkKEVOQUJMRV9TVkdfRE9NX09CSkNfQklORElOR1MpICQo
RU5BQkxFX1NWR19GT05UUykgJChFTkFCTEVfVE9VQ0hfSUNPTl9MT0FESU5HKSAkKEVOQUJMRV9W
SURFTykgJChFTkFCTEVfVklERU9fVFJBQ0spICQoRU5BQkxFX1dFQkdMKSAkKEVOQUJMRV9XRUJf
QVVESU8pICQoRU5BQkxFX1dFQl9TT0NLRVRTKSAkKEVOQUJMRV9XRUJfVElNSU5HKSAkKEVOQUJM
RV9XT1JLRVJTKSAkKEVOQUJMRV9YU0xUKTsKSW5kZXg6IFRvb2xzL0NoYW5nZUxvZwo9PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09Ci0tLSBUb29scy9DaGFuZ2VMb2cJKHJldmlzaW9uIDk5NzY1KQorKysgVG9vbHMvQ2hhbmdl
TG9nCSh3b3JraW5nIGNvcHkpCkBAIC0xLDMgKzEsMTIgQEAKKzIwMTEtMTEtMDkgIFRvbSBTZXBl
eiAgPHRzZXBlekBjaHJvbWl1bS5vcmc+CisKKyAgICAgICAgSW1wbGVtZW50IHNjcmlwdCBNSU1F
IHJlc3RyaWN0aW9ucyBmb3IgWC1Db250ZW50LVR5cGUtT3B0aW9uczogbm9zbmlmZgorICAgICAg
ICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9NzE4NTEKKworICAgICAg
ICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICAqIFNjcmlwdHMvYnVpbGQt
d2Via2l0OgorCiAyMDExLTExLTA5ICBCZW5qYW1pbiBQb3VsYWluICA8YnBvdWxhaW5AYXBwbGUu
Y29tPgogCiAgICAgICAgIEltcGxlbWVudCBkdW1wUHJvZ3Jlc3NGaW5pc2hlZENhbGxiYWNrKCkg
Zm9yIE1hYyBsYXlvdXRUZXN0Q29udHJvbGxlcgpJbmRleDogVG9vbHMvU2NyaXB0cy9idWlsZC13
ZWJraXQKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PQotLS0gVG9vbHMvU2NyaXB0cy9idWlsZC13ZWJraXQJKHJldmlzaW9u
IDk5NzM3KQorKysgVG9vbHMvU2NyaXB0cy9idWlsZC13ZWJraXQJKHdvcmtpbmcgY29weSkKQEAg
LTEwOSw2ICsxMDksNyBAQCBteSAoCiAgICAgJG1pY3JvZGF0YVN1cHBvcnQsCiAgICAgJG11dGF0
aW9uT2JzZXJ2ZXJzU3VwcG9ydCwKICAgICAkbmV0c2NhcGVQbHVnaW5TdXBwb3J0LAorICAgICRu
b3NuaWZmU3VwcG9ydCwKICAgICAkbm90aWZpY2F0aW9uc1N1cHBvcnQsCiAgICAgJG9yaWVudGF0
aW9uRXZlbnRzU3VwcG9ydCwKICAgICAkcGFnZVZpc2liaWxpdHlBcGlTdXBwb3J0LApAQCAtMjY4
LDYgKzI2OSw5IEBAIG15IEBmZWF0dXJlcyA9ICgKICAgICB7IG9wdGlvbiA9PiAibmV0c2NhcGUt
cGx1Z2luIiwgZGVzYyA9PiAiTmV0c2NhcGUgUGx1Z2luIHN1cHBvcnQiLAogICAgICAgZGVmaW5l
ID0+ICJFTkFCTEVfTkVUU0NBUEVfUExVR0lOX0FQSSIsIGRlZmF1bHQgPT4gIWlzRWZsKCksIHZh
bHVlID0+IFwkbmV0c2NhcGVQbHVnaW5TdXBwb3J0IH0sCiAKKyAgICB7IG9wdGlvbiA9PiAibm9z
bmlmZiIsIGRlc2MgPT4gIlRvZ2dsZSBYLUNvbnRlbnQtVHlwZS1PcHRpb25zIFN1cHBvcnQiLAor
ICAgICAgZGVmaW5lID0+ICJFTkFCTEVfTk9TTklGRiIsIGRlZmF1bHQgPT4gMSwgdmFsdWUgPT4g
XCRub3NuaWZmU3VwcG9ydCB9LAorCiAgICAgeyBvcHRpb24gPT4gIm5vdGlmaWNhdGlvbnMiLCBk
ZXNjID0+ICJUb2dnbGUgRGVza3RvcCBOb3RpZmljYXRpb25zIFN1cHBvcnQiLAogICAgICAgZGVm
aW5lID0+ICJFTkFCTEVfTk9USUZJQ0FUSU9OUyIsIGRlZmF1bHQgPT4gMCwgdmFsdWUgPT4gXCRu
b3RpZmljYXRpb25zU3VwcG9ydCB9LAogCkluZGV4OiBMYXlvdXRUZXN0cy9DaGFuZ2VMb2cKPT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PQotLS0gTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCShyZXZpc2lvbiA5OTc2NSkKKysrIExh
eW91dFRlc3RzL0NoYW5nZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDE4IEBACisyMDEx
LTExLTA5ICBUb20gU2VwZXogIDx0c2VwZXpAY2hyb21pdW0ub3JnPgorCisgICAgICAgIEltcGxl
bWVudCBzY3JpcHQgTUlNRSByZXN0cmljdGlvbnMgZm9yIFgtQ29udGVudC1UeXBlLU9wdGlvbnM6
IG5vc25pZmYKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lk
PTcxODUxCisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAg
KiBodHRwL3Rlc3RzL3NlY3VyaXR5L25vc25pZmY6IEFkZGVkLgorICAgICAgICAqIGh0dHAvdGVz
dHMvc2VjdXJpdHkvbm9zbmlmZi9yZXNvdXJjZXM6IEFkZGVkLgorICAgICAgICAqIGh0dHAvdGVz
dHMvc2VjdXJpdHkvbm9zbmlmZi9yZXNvdXJjZXMvc2VuZC1jb250ZW50LXR5cGUtb3B0aW9ucy5w
aHA6IEFkZGVkLgorICAgICAgICAqIGh0dHAvdGVzdHMvc2VjdXJpdHkvbm9zbmlmZi9zY3JpcHQt
YWxsb3dlZC1ub3NuaWZmLWV4cGVjdGVkLnR4dDogQWRkZWQuCisgICAgICAgICogaHR0cC90ZXN0
cy9zZWN1cml0eS9ub3NuaWZmL3NjcmlwdC1hbGxvd2VkLW5vc25pZmYuaHRtbDogQWRkZWQuCisg
ICAgICAgICogaHR0cC90ZXN0cy9zZWN1cml0eS9ub3NuaWZmL3NjcmlwdC1ibG9ja2VkLW5vc25p
ZmYtZXhwZWN0ZWQudHh0OiBBZGRlZC4KKyAgICAgICAgKiBodHRwL3Rlc3RzL3NlY3VyaXR5L25v
c25pZmYvc2NyaXB0LWJsb2NrZWQtbm9zbmlmZi5odG1sOiBBZGRlZC4KKwogMjAxMS0xMS0wOSAg
QmVuamFtaW4gUG91bGFpbiAgPGJwb3VsYWluQGFwcGxlLmNvbT4KIAogICAgICAgICBJbXBsZW1l
bnQgZHVtcFByb2dyZXNzRmluaXNoZWRDYWxsYmFjaygpIGZvciBNYWMgbGF5b3V0VGVzdENvbnRy
b2xsZXIKSW5kZXg6IExheW91dFRlc3RzL2h0dHAvdGVzdHMvc2VjdXJpdHkvbm9zbmlmZi9zY3Jp
cHQtYWxsb3dlZC1ub3NuaWZmLWV4cGVjdGVkLnR4dAo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0
cy9odHRwL3Rlc3RzL3NlY3VyaXR5L25vc25pZmYvc2NyaXB0LWFsbG93ZWQtbm9zbmlmZi1leHBl
Y3RlZC50eHQJKHJldmlzaW9uIDApCisrKyBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3NlY3VyaXR5
L25vc25pZmYvc2NyaXB0LWFsbG93ZWQtbm9zbmlmZi1leHBlY3RlZC50eHQJKHJldmlzaW9uIDAp
CkBAIC0wLDAgKzEsOCBAQAorQUxFUlQ6IEV4ZWN1dGVkOiBhcHBsaWNhdGlvbi9lY21hc2NyaXB0
CitBTEVSVDogRXhlY3V0ZWQ6IEFQUExJQ0FUSU9OL2phdmFzY3JpcHQKK0FMRVJUOiBFeGVjdXRl
ZDogYXBwbGljYXRpb24vWC1KQVZBU0NSSVBUCitBTEVSVDogRXhlY3V0ZWQ6IHRlWHQvZWNtQXNj
cmlwdAorQUxFUlQ6IEV4ZWN1dGVkOiB0ZXh0L0phdmFzY3JpcHQKK0FMRVJUOiBFeGVjdXRlZDog
dGV4dC9qc2NyaVB0CitBTEVSVDogRXhlY3V0ZWQ6IHRleHQvWC1qYXZhc2NyaXB0CitUZXN0IGph
dmFzY3JpcHQgbWltZSB0eXBlcyBhcmUgZXhlY3V0ZWQgd2hlbiB4LWNvbnRlbnQtdHlwZS1vcHRp
b25zOiBub3NuaWZmLgpJbmRleDogTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9zZWN1cml0eS9ub3Nu
aWZmL3NjcmlwdC1hbGxvd2VkLW5vc25pZmYuaHRtbAo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0
cy9odHRwL3Rlc3RzL3NlY3VyaXR5L25vc25pZmYvc2NyaXB0LWFsbG93ZWQtbm9zbmlmZi5odG1s
CShyZXZpc2lvbiAwKQorKysgTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9zZWN1cml0eS9ub3NuaWZm
L3NjcmlwdC1hbGxvd2VkLW5vc25pZmYuaHRtbAkocmV2aXNpb24gMCkKQEAgLTAsMCArMSwxOCBA
QAorPCFET0NUWVBFIGh0bWw+Cis8aHRtbD4KKzxib2R5PgorPHNjcmlwdD4KK2lmICh3aW5kb3cu
bGF5b3V0VGVzdENvbnRyb2xsZXIpIHsKKyAgbGF5b3V0VGVzdENvbnRyb2xsZXIuZHVtcEFzVGV4
dCgpOworfQorPC9zY3JpcHQ+Cis8c2NyaXB0IHNyYz0iaHR0cDovL2xvY2FsaG9zdDo4MDAwL3Nl
Y3VyaXR5L25vc25pZmYvcmVzb3VyY2VzL3NlbmQtY29udGVudC10eXBlLW9wdGlvbnMucGhwP210
PWFwcGxpY2F0aW9uL2VjbWFzY3JpcHQiPjwvc2NyaXB0PgorPHNjcmlwdCBzcmM9Imh0dHA6Ly9s
b2NhbGhvc3Q6ODAwMC9zZWN1cml0eS9ub3NuaWZmL3Jlc291cmNlcy9zZW5kLWNvbnRlbnQtdHlw
ZS1vcHRpb25zLnBocD9tdD1BUFBMSUNBVElPTi9qYXZhc2NyaXB0Ij48L3NjcmlwdD4KKzxzY3Jp
cHQgc3JjPSJodHRwOi8vbG9jYWxob3N0OjgwMDAvc2VjdXJpdHkvbm9zbmlmZi9yZXNvdXJjZXMv
c2VuZC1jb250ZW50LXR5cGUtb3B0aW9ucy5waHA/bXQ9YXBwbGljYXRpb24vWC1KQVZBU0NSSVBU
Ij48L3NjcmlwdD4KKzxzY3JpcHQgc3JjPSJodHRwOi8vbG9jYWxob3N0OjgwMDAvc2VjdXJpdHkv
bm9zbmlmZi9yZXNvdXJjZXMvc2VuZC1jb250ZW50LXR5cGUtb3B0aW9ucy5waHA/bXQ9dGVYdC9l
Y21Bc2NyaXB0Ij48L3NjcmlwdD4KKzxzY3JpcHQgc3JjPSJodHRwOi8vbG9jYWxob3N0OjgwMDAv
c2VjdXJpdHkvbm9zbmlmZi9yZXNvdXJjZXMvc2VuZC1jb250ZW50LXR5cGUtb3B0aW9ucy5waHA/
bXQ9dGV4dC9KYXZhc2NyaXB0Ij48L3NjcmlwdD4KKzxzY3JpcHQgc3JjPSJodHRwOi8vbG9jYWxo
b3N0OjgwMDAvc2VjdXJpdHkvbm9zbmlmZi9yZXNvdXJjZXMvc2VuZC1jb250ZW50LXR5cGUtb3B0
aW9ucy5waHA/bXQ9dGV4dC9qc2NyaVB0Ij48L3NjcmlwdD4KKzxzY3JpcHQgc3JjPSJodHRwOi8v
bG9jYWxob3N0OjgwMDAvc2VjdXJpdHkvbm9zbmlmZi9yZXNvdXJjZXMvc2VuZC1jb250ZW50LXR5
cGUtb3B0aW9ucy5waHA/bXQ9dGV4dC9YLWphdmFzY3JpcHQiPjwvc2NyaXB0PgorPHA+VGVzdCBq
YXZhc2NyaXB0IG1pbWUgdHlwZXMgYXJlIGV4ZWN1dGVkIHdoZW4geC1jb250ZW50LXR5cGUtb3B0
aW9uczogbm9zbmlmZi48L3A+Cis8L2JvZHk+Cis8L2h0bWw+CkluZGV4OiBMYXlvdXRUZXN0cy9o
dHRwL3Rlc3RzL3NlY3VyaXR5L25vc25pZmYvc2NyaXB0LWJsb2NrZWQtbm9zbmlmZi1leHBlY3Rl
ZC50eHQKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9zZWN1cml0eS9ub3Nu
aWZmL3NjcmlwdC1ibG9ja2VkLW5vc25pZmYtZXhwZWN0ZWQudHh0CShyZXZpc2lvbiAwKQorKysg
TGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9zZWN1cml0eS9ub3NuaWZmL3NjcmlwdC1ibG9ja2VkLW5v
c25pZmYtZXhwZWN0ZWQudHh0CShyZXZpc2lvbiAwKQpAQCAtMCwwICsxLDUgQEAKK0NPTlNPTEUg
TUVTU0FHRTogbGluZSAxOiBSZWZ1c2VkIHRvIGxvYWQgc2NyaXB0IGZyb20gaHR0cDovL2xvY2Fs
aG9zdDo4MDAwL3NlY3VyaXR5L25vc25pZmYvcmVzb3VyY2VzL3NlbmQtY29udGVudC10eXBlLW9w
dGlvbnMucGhwP210PXRleHQvaHRtbCBkdWUgdG8gTUlNRSB0eXBlIG1pc21hdGNoIGFuZCBYLUNv
bnRlbnQtVHlwZS1PcHRpb25zIGhlYWRlci4KKworQ09OU09MRSBNRVNTQUdFOiBsaW5lIDE6IFJl
ZnVzZWQgdG8gbG9hZCBzY3JpcHQgZnJvbSBodHRwOi8vbG9jYWxob3N0OjgwMDAvc2VjdXJpdHkv
bm9zbmlmZi9yZXNvdXJjZXMvc2VuZC1jb250ZW50LXR5cGUtb3B0aW9ucy5waHA/bXQ9aW1hZ2Uv
cG5nIGR1ZSB0byBNSU1FIHR5cGUgbWlzbWF0Y2ggYW5kIFgtQ29udGVudC1UeXBlLU9wdGlvbnMg
aGVhZGVyLgorCitUZXN0IG5vbi1qYXZhc2NyaXB0IG1pbWUgdHlwZXMgYXJlIG5vdCBleGVjdXRl
ZCB3aGVuIHgtY29udGVudC10eXBlLW9wdGlvbnM6IG5vc25pZmYuCkluZGV4OiBMYXlvdXRUZXN0
cy9odHRwL3Rlc3RzL3NlY3VyaXR5L25vc25pZmYvc2NyaXB0LWJsb2NrZWQtbm9zbmlmZi5odG1s
Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL2h0dHAvdGVzdHMvc2VjdXJpdHkvbm9zbmlmZi9z
Y3JpcHQtYmxvY2tlZC1ub3NuaWZmLmh0bWwJKHJldmlzaW9uIDApCisrKyBMYXlvdXRUZXN0cy9o
dHRwL3Rlc3RzL3NlY3VyaXR5L25vc25pZmYvc2NyaXB0LWJsb2NrZWQtbm9zbmlmZi5odG1sCShy
ZXZpc2lvbiAwKQpAQCAtMCwwICsxLDEzIEBACis8IURPQ1RZUEUgaHRtbD4KKzxodG1sPgorPGJv
ZHk+Cis8c2NyaXB0PgoraWYgKHdpbmRvdy5sYXlvdXRUZXN0Q29udHJvbGxlcikgeworICBsYXlv
dXRUZXN0Q29udHJvbGxlci5kdW1wQXNUZXh0KCk7Cit9Cis8L3NjcmlwdD4KKzxzY3JpcHQgc3Jj
PSJodHRwOi8vbG9jYWxob3N0OjgwMDAvc2VjdXJpdHkvbm9zbmlmZi9yZXNvdXJjZXMvc2VuZC1j
b250ZW50LXR5cGUtb3B0aW9ucy5waHA/bXQ9dGV4dC9odG1sIj48L3NjcmlwdD4KKzxzY3JpcHQg
c3JjPSJodHRwOi8vbG9jYWxob3N0OjgwMDAvc2VjdXJpdHkvbm9zbmlmZi9yZXNvdXJjZXMvc2Vu
ZC1jb250ZW50LXR5cGUtb3B0aW9ucy5waHA/bXQ9aW1hZ2UvcG5nIj48L3NjcmlwdD4KKzxwPlRl
c3Qgbm9uLWphdmFzY3JpcHQgbWltZSB0eXBlcyBhcmUgbm90IGV4ZWN1dGVkIHdoZW4geC1jb250
ZW50LXR5cGUtb3B0aW9uczogbm9zbmlmZi48L3A+Cis8L2JvZHk+Cis8L2h0bWw+CkluZGV4OiBM
YXlvdXRUZXN0cy9odHRwL3Rlc3RzL3NlY3VyaXR5L25vc25pZmYvcmVzb3VyY2VzL3NlbmQtY29u
dGVudC10eXBlLW9wdGlvbnMucGhwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL2h0dHAvdGVz
dHMvc2VjdXJpdHkvbm9zbmlmZi9yZXNvdXJjZXMvc2VuZC1jb250ZW50LXR5cGUtb3B0aW9ucy5w
aHAJKHJldmlzaW9uIDApCisrKyBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3NlY3VyaXR5L25vc25p
ZmYvcmVzb3VyY2VzL3NlbmQtY29udGVudC10eXBlLW9wdGlvbnMucGhwCShyZXZpc2lvbiAwKQpA
QCAtMCwwICsxLDYgQEAKKzw/cGhwCisgICAgJG1pbWVfdHlwZSA9ICRfR0VUWyJtdCJdOworICAg
IGhlYWRlcigiQ29udGVudC1UeXBlOiAiLiRtaW1lX3R5cGUpOworICAgIGhlYWRlcigiWC1Db250
ZW50LVR5cGUtT3B0aW9uczogICBOb1NuSWZGICIpOworICAgIGVjaG8gImFsZXJ0KCdFeGVjdXRl
ZDogIi4kbWltZV90eXBlLiInKTsiOworPz4K
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>186822</attachid>
            <date>2013-02-06 04:24:09 -0800</date>
            <delta_ts>2013-02-07 02:19:55 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-71851-20130206132045.patch</filename>
            <type>text/plain</type>
            <size>23283</size>
            <attacher name="Mike West">mkwst</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTQxOTgzCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggMjRlNzMyNmRjNmRmZTQw
MzY3MWJjYzJlNmUxNzViZmEzM2ZlMTU3Mi4uMDkwYzM3ZmRhMTQ5OTVjMjljM2EyODVmNmRiZWI0
OGRkNDlkMjllYiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDU4IEBACisyMDEzLTAyLTA2ICBNaWtl
IFdlc3QgIDxta3dzdEBjaHJvbWl1bS5vcmc+CisKKyAgICAgICAgSW1wbGVtZW50IHNjcmlwdCBN
SU1FIHJlc3RyaWN0aW9ucyBmb3IgWC1Db250ZW50LVR5cGUtT3B0aW9uczogbm9zbmlmZgorICAg
ICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9NzE4NTEKKworICAg
ICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBUaGlzIHBhdGNoIGFk
ZHMgc3VwcG9ydCBmb3IgJ1gtQ29udGVudC1UeXBlLU9wdGlvbnM6IG5vc25pZmYnIHdoZW4KKyAg
ICAgICAgZGVjaWRpbmcgd2hldGhlciBvciBub3QgdG8gZXhlY3V0ZSBhIGdpdmVuIGNodW5rIG9m
IEphdmFTY3JpcHQuIElmIHRoZQorICAgICAgICBoZWFkZXIgaXMgcHJlc2VudCwgc2NyaXB0IHdp
bGwgb25seSBleGVjdXRlIGlmIGl0IG1hdGNoZXMgYSBwcmVkZWZpbmVkCisgICAgICAgIHNldCBv
ZiBNSU1FIHR5cGVzWzFdIHRoYXQgYXJlIGRlZW1lZCAiZXhlY3V0YWJsZSIuIFNjcmlwdHMgc2Vy
dmVkIHdpdGgKKyAgICAgICAgdHlwZXMgdGhhdCBkb24ndCBtYXRjaCB0aGUgbGlzdCB3aWxsIG5v
dCBleGVjdXRlLgorCisgICAgICAgIElFIGludHJvZHVjZWQgdGhpcyBmZWF0dXJlLCBhbmQgR2Vj
a28gaXMgd29ya2luZyBvbiBhbiBpbXBsZW1lbnRhdGlvblsyXQorICAgICAgICBub3cuIFRoZXJl
J3MgYmVlbiBzb21lIGRpc2N1c3Npb24gb24gdGhlIFdIQVRXRyBsaXN0IGFib3V0IGZvcm1hbGl6
aW5nCisgICAgICAgIHRoZSBzcGVjaWZpY2F0aW9uIGZvciB0aGlzIGZlYXR1cmVbM10sIGJ1dCBu
b3RoaW5nIHNpZ25pZmljYW50IGhhcyBiZWVuCisgICAgICAgIGRlY2lkZWQuCisKKyAgICAgICAg
VGhpcyBmZWF0dXJlIGlzIGxvY2tlZCB0aWdodGx5IGJlaGluZCB0aGUgRU5BQkxFX05PU05JRkYg
ZmxhZywgd2hpY2ggaXMKKyAgICAgICAgY3VycmVudGx5IG9ubHkgZW5hYmxlZCBvbiB0aGUgQ2hy
b21pdW0gcG9ydC4KKworICAgICAgICBbMV06IGh0dHA6Ly9tc2RuLm1pY3Jvc29mdC5jb20vZW4t
dXMvbGlicmFyeS9nZzYyMjk0MSh2PXZzLjg1KS5hc3B4CisgICAgICAgIFsyXTogaHR0cHM6Ly9i
dWd6aWxsYS5tb3ppbGxhLm9yZy9zaG93X2J1Zy5jZ2k/aWQ9NDcxMDIwCisgICAgICAgIFszXTog
aHR0cDovL2xpc3RzLndoYXR3Zy5vcmcvaHRkaWcuY2dpL3doYXR3Zy13aGF0d2cub3JnLzIwMTIt
Tm92ZW1iZXIvMDM3OTc0Lmh0bWwKKworICAgICAgICBUZXN0czogaHR0cC90ZXN0cy9zZWN1cml0
eS9jb250ZW50VHlwZU9wdGlvbnMvaW52YWxpZC1jb250ZW50LXR5cGUtb3B0aW9ucy1hbGxvd2Vk
Lmh0bWwKKyAgICAgICAgICAgICAgIGh0dHAvdGVzdHMvc2VjdXJpdHkvY29udGVudFR5cGVPcHRp
b25zL25vc25pZmYtc2NyaXB0LWFsbG93ZWQuaHRtbAorICAgICAgICAgICAgICAgaHR0cC90ZXN0
cy9zZWN1cml0eS9jb250ZW50VHlwZU9wdGlvbnMvbm9zbmlmZi1zY3JpcHQtYmxvY2tlZC5odG1s
CisgICAgICAgICAgICAgICBodHRwL3Rlc3RzL3NlY3VyaXR5L2NvbnRlbnRUeXBlT3B0aW9ucy9u
b3NuaWZmLXNjcmlwdC13aXRob3V0LWNvbnRlbnQtdHlwZS1hbGxvd2VkLmh0bWwKKworICAgICAg
ICAqIGRvbS9TY3JpcHRFbGVtZW50LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlNjcmlwdEVsZW1l
bnQ6OmV4ZWN1dGVTY3JpcHQpOgorICAgICAgICAgICAgQmVmb3JlIGV4ZWN1dGluZyBzY3JpcHQs
IGVuc3VyZSB0aGF0IGl0IHNob3VsZG4ndCBiZSBibG9ja2VkIGR1ZSB0bworICAgICAgICAgICAg
aXRzIE1JTUUgdHlwZS4gSWYgaXQgaXMgYmxvY2tlZCwgd3JpdGUgYW4gZXJyb3IgbWVzc2FnZSB0
byB0aGUKKyAgICAgICAgICAgIGNvbnNvbGUuCisgICAgICAgICogbG9hZGVyL2NhY2hlL0NhY2hl
ZFNjcmlwdC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpDYWNoZWRTY3JpcHQ6Om1pbWVUeXBlKToK
KyAgICAgICAgICAgIE1ha2Ugc2NyaXB0cycgTUlNRSB0eXBlIGF2YWlsYWJsZSBvdXRzaWRlIHRo
ZSBjb250ZXh0IG9mCisgICAgICAgICAgICBDYWNoZWRTY3JpcHQgaW4gb3JkZXIgdG8gY29ycmVj
dGx5IHBvcHVsYXRlIGVycm9yIG1lc3NhZ2VzIHdlIHdyaXRlCisgICAgICAgICAgICB0byB0aGUg
Y29uc29sZSBpbiBTY3JpcHRFbGVtZW50OjpleGVjdXRlU2NyaXB0CisgICAgICAgIChXZWJDb3Jl
KToKKyAgICAgICAgKFdlYkNvcmU6OkNhY2hlZFNjcmlwdDo6bWltZVR5cGVBbGxvd2VkQnlOb3Nu
aWZmKToKKyAgICAgICAgKiBsb2FkZXIvY2FjaGUvQ2FjaGVkU2NyaXB0Lmg6CisgICAgICAgIChD
YWNoZWRTY3JpcHQpOgorICAgICAgICAgICAgQSBuZXcgbWV0aG9kIHdoaWNoIGNoZWNrcyB0aGUg
cmVzb3VyY2UncyBIVFRQIGhlYWRlcnMgdG8gc2V0IHRoZQorICAgICAgICAgICAgJ25vc25pZmYn
IGRpc3Bvc2l0aW9uLCBhbmQgY29tcGFyZXMgdGhlIHJlc291cmNlJ3MgTUlNRSB0eXBlIGFnYWlu
c3QKKyAgICAgICAgICAgIHRoZSBsaXN0IG9mIGFsbG93ZWQgZXhlY3V0YWJsZSB0eXBlcy4gUmV0
dXJucyB0cnVlIGlmZiB0aGUgc2NyaXB0CisgICAgICAgICAgICBpcyBhbGxvd2VkLgorICAgICAg
ICAqIHBsYXRmb3JtL25ldHdvcmsvSFRUUFBhcnNlcnMuY3BwOgorICAgICAgICAoV2ViQ29yZSk6
CisgICAgICAgIChXZWJDb3JlOjpwYXJzZUNvbnRlbnRUeXBlT3B0aW9uc0hlYWRlcik6CisgICAg
ICAgICogcGxhdGZvcm0vbmV0d29yay9IVFRQUGFyc2Vycy5oOgorICAgICAgICAgICAgQWRkcyBh
IG5ldyBlbnVtIHdoaWNoIHJlbGF0ZXMgdGhlIHNuaWZmYWJsZSBzdGF0dXMgb2YgdGhlIHJlc291
cmNlLAorICAgICAgICAgICAgYW5kIGEgbWV0aG9kIHRvIHBhcnNlIHRoZSBIVFRQIGhlYWRlci4K
KwogMjAxMy0wMi0wNCAgS2VudGFybyBIYXJhICA8aGFyYWtlbkBjaHJvbWl1bS5vcmc+CiAKICAg
ICAgICAgW1Y4XSBSZW1vdmUgVjhHQ0NvbnRyb2xsZXI6Om1fZWRlbk5vZGVzIGFuZCBtYWtlIG1p
bm9yIERPTSBHQyBtb3JlIHByZWNpc2UKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2RvbS9T
Y3JpcHRFbGVtZW50LmNwcCBiL1NvdXJjZS9XZWJDb3JlL2RvbS9TY3JpcHRFbGVtZW50LmNwcApp
bmRleCBhM2NhNjFiMjE1YWJiMjU2MzQ2OGIzYTY5OTY5ODJjZmMyNmEwNGU2Li43M2Q4MmQxZGMx
YjNhZDVkYmQ4MDRmNTRhODY3ZWIyNTAwZGNkOGE4IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29y
ZS9kb20vU2NyaXB0RWxlbWVudC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvZG9tL1NjcmlwdEVs
ZW1lbnQuY3BwCkBAIC0yOTMsNiArMjkzLDEzIEBAIHZvaWQgU2NyaXB0RWxlbWVudDo6ZXhlY3V0
ZVNjcmlwdChjb25zdCBTY3JpcHRTb3VyY2VDb2RlJiBzb3VyY2VDb2RlKQogICAgIGlmICghbV9p
c0V4dGVybmFsU2NyaXB0ICYmICFtX2VsZW1lbnQtPmRvY3VtZW50KCktPmNvbnRlbnRTZWN1cml0
eVBvbGljeSgpLT5hbGxvd0lubGluZVNjcmlwdChtX2VsZW1lbnQtPmRvY3VtZW50KCktPnVybCgp
LCBtX3N0YXJ0TGluZU51bWJlcikpCiAgICAgICAgIHJldHVybjsKIAorI2lmIEVOQUJMRShOT1NO
SUZGKQorICAgIGlmIChtX2lzRXh0ZXJuYWxTY3JpcHQgJiYgbV9jYWNoZWRTY3JpcHQgJiYgIW1f
Y2FjaGVkU2NyaXB0LT5taW1lVHlwZUFsbG93ZWRCeU5vc25pZmYoKSkgeworICAgICAgICBtX2Vs
ZW1lbnQtPmRvY3VtZW50KCktPmFkZENvbnNvbGVNZXNzYWdlKEpTTWVzc2FnZVNvdXJjZSwgRXJy
b3JNZXNzYWdlTGV2ZWwsICJSZWZ1c2VkIHRvIGV4ZWN1dGUgc2NyaXB0IGZyb20gJyIgKyBtX2Nh
Y2hlZFNjcmlwdC0+dXJsKCkuc3RyaW5nKCkgKyAiJyBiZWNhdXNlIGl0cyBNSU1FIHR5cGUgKCci
ICsgbV9jYWNoZWRTY3JpcHQtPm1pbWVUeXBlKCkgKyAiJykgaXMgbm90IGV4ZWN1dGFibGUsIGFu
ZCBzdHJpY3QgTUlNRSB0eXBlIGNoZWNraW5nIGlzIGVuYWJsZWQuIik7CisgICAgICAgIHJldHVy
bjsKKyAgICB9CisjZW5kaWYKKwogICAgIFJlZlB0cjxEb2N1bWVudD4gZG9jdW1lbnQgPSBtX2Vs
ZW1lbnQtPmRvY3VtZW50KCk7CiAgICAgQVNTRVJUKGRvY3VtZW50KTsKICAgICBpZiAoRnJhbWUq
IGZyYW1lID0gZG9jdW1lbnQtPmZyYW1lKCkpIHsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3Jl
L2xvYWRlci9jYWNoZS9DYWNoZWRTY3JpcHQuY3BwIGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL2Nh
Y2hlL0NhY2hlZFNjcmlwdC5jcHAKaW5kZXggNTAxZmY0YTNjMmZlYjdlNzM0NzY0NWMxNDk2NjBl
Y2ViYzc0NmU3Zi4uYTI5OTU5ZjdiZDlkNzA2NzYwZTEzODIzMjBiMzY5MDU3NzFiYjVkYyAxMDA2
NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL2NhY2hlL0NhY2hlZFNjcmlwdC5jcHAKKysr
IGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL2NhY2hlL0NhY2hlZFNjcmlwdC5jcHAKQEAgLTI3LDkg
KzI3LDEwIEBACiAjaW5jbHVkZSAiY29uZmlnLmgiCiAjaW5jbHVkZSAiQ2FjaGVkU2NyaXB0Lmgi
CiAKLSNpbmNsdWRlICJNZW1vcnlDYWNoZS5oIgogI2luY2x1ZGUgIkNhY2hlZFJlc291cmNlQ2xp
ZW50LmgiCiAjaW5jbHVkZSAiQ2FjaGVkUmVzb3VyY2VDbGllbnRXYWxrZXIuaCIKKyNpbmNsdWRl
ICJIVFRQUGFyc2Vycy5oIgorI2luY2x1ZGUgIk1lbW9yeUNhY2hlLmgiCiAjaW5jbHVkZSAiUmVz
b3VyY2VCdWZmZXIuaCIKICNpbmNsdWRlICJUZXh0UmVzb3VyY2VEZWNvZGVyLmgiCiAjaW5jbHVk
ZSAiV2ViQ29yZU1lbW9yeUluc3RydW1lbnRhdGlvbi5oIgpAQCAtNjUsNiArNjYsMTEgQEAgU3Ry
aW5nIENhY2hlZFNjcmlwdDo6ZW5jb2RpbmcoKSBjb25zdAogICAgIHJldHVybiBtX2RlY29kZXIt
PmVuY29kaW5nKCkubmFtZSgpOwogfQogCitTdHJpbmcgQ2FjaGVkU2NyaXB0OjptaW1lVHlwZSgp
IGNvbnN0Cit7CisgICAgcmV0dXJuIGV4dHJhY3RNSU1FVHlwZUZyb21NZWRpYVR5cGUobV9yZXNw
b25zZS5odHRwSGVhZGVyRmllbGQoIkNvbnRlbnQtVHlwZSIpKS5sb3dlcigpOworfQorCiBjb25z
dCBTdHJpbmcmIENhY2hlZFNjcmlwdDo6c2NyaXB0KCkKIHsKICAgICBBU1NFUlQoIWlzUHVyZ2Vh
YmxlKCkpOwpAQCAtMTE5LDYgKzEyNSwzMCBAQCB2b2lkIENhY2hlZFNjcmlwdDo6c291cmNlUHJv
dmlkZXJDYWNoZVNpemVDaGFuZ2VkKGludCBkZWx0YSkKIH0KICNlbmRpZgogCisjaWYgRU5BQkxF
KE5PU05JRkYpCitib29sIENhY2hlZFNjcmlwdDo6bWltZVR5cGVBbGxvd2VkQnlOb3NuaWZmKCkg
Y29uc3QKK3sKKyAgICBpZiAocGFyc2VDb250ZW50VHlwZU9wdGlvbnNIZWFkZXIobV9yZXNwb25z
ZS5odHRwSGVhZGVyRmllbGQoIlgtQ29udGVudC1UeXBlLU9wdGlvbnMiKSkgPT0gQ29udGVudFR5
cGVPcHRpb25zTm9zbmlmZikgeworICAgICAgICBERUZJTkVfU1RBVElDX0xPQ0FMKEhhc2hTZXQ8
U3RyaW5nPiwgcGVybWl0dGVkTWltZVR5cGVzLCAoKSk7CisgICAgICAgIGlmIChwZXJtaXR0ZWRN
aW1lVHlwZXMuaXNFbXB0eSgpKSB7CisgICAgICAgICAgICAvLyBMaXN0IG9mIHR5cGVzIGZyb20g
aHR0cDovL21zZG4ubWljcm9zb2Z0LmNvbS9lbi11cy9saWJyYXJ5L2dnNjIyOTQxKHY9dnMuODUp
LmFzcHgKKyAgICAgICAgICAgIHBlcm1pdHRlZE1pbWVUeXBlcy5hZGQoImFwcGxpY2F0aW9uL2Vj
bWFzY3JpcHQiKTsKKyAgICAgICAgICAgIHBlcm1pdHRlZE1pbWVUeXBlcy5hZGQoImFwcGxpY2F0
aW9uL2phdmFzY3JpcHQiKTsKKyAgICAgICAgICAgIHBlcm1pdHRlZE1pbWVUeXBlcy5hZGQoImFw
cGxpY2F0aW9uL3gtamF2YXNjcmlwdCIpOworICAgICAgICAgICAgcGVybWl0dGVkTWltZVR5cGVz
LmFkZCgidGV4dC9lY21hc2NyaXB0Iik7CisgICAgICAgICAgICBwZXJtaXR0ZWRNaW1lVHlwZXMu
YWRkKCJ0ZXh0L2phdmFzY3JpcHQiKTsKKyAgICAgICAgICAgIHBlcm1pdHRlZE1pbWVUeXBlcy5h
ZGQoInRleHQvanNjcmlwdCIpOworICAgICAgICAgICAgcGVybWl0dGVkTWltZVR5cGVzLmFkZCgi
dGV4dC94LWphdmFzY3JpcHQiKTsKKyAgICAgICAgICAgIHBlcm1pdHRlZE1pbWVUeXBlcy5hZGQo
InRleHQvdmJzIik7CisgICAgICAgICAgICBwZXJtaXR0ZWRNaW1lVHlwZXMuYWRkKCJ0ZXh0L3Zi
c2NyaXB0Iik7CisgICAgICAgIH0KKyAgICAgICAgaWYgKCFwZXJtaXR0ZWRNaW1lVHlwZXMuY29u
dGFpbnMobWltZVR5cGUoKSkpCisgICAgICAgICAgICByZXR1cm4gZmFsc2U7CisgICAgfQorICAg
IHJldHVybiB0cnVlOworfQorI2VuZGlmCisKIHZvaWQgQ2FjaGVkU2NyaXB0OjpyZXBvcnRNZW1v
cnlVc2FnZShNZW1vcnlPYmplY3RJbmZvKiBtZW1vcnlPYmplY3RJbmZvKSBjb25zdAogewogICAg
IE1lbW9yeUNsYXNzSW5mbyBpbmZvKG1lbW9yeU9iamVjdEluZm8sIHRoaXMsIFdlYkNvcmVNZW1v
cnlUeXBlczo6Q2FjaGVkUmVzb3VyY2VTY3JpcHQpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNv
cmUvbG9hZGVyL2NhY2hlL0NhY2hlZFNjcmlwdC5oIGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL2Nh
Y2hlL0NhY2hlZFNjcmlwdC5oCmluZGV4IGI4NTFiYWYyNDFmM2Q1MjZiNzQ4YWNhNWRkMDg5N2Iy
ODIwOGZhNjQuLmRkZTA5ZDhhN2VmNzU2NWYzNGRhM2M3NzNlNDFhMmMxMzg1YTYwNGUgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9jYWNoZS9DYWNoZWRTY3JpcHQuaAorKysgYi9T
b3VyY2UvV2ViQ29yZS9sb2FkZXIvY2FjaGUvQ2FjaGVkU2NyaXB0LmgKQEAgLTQ5LDYgKzQ5LDcg
QEAgbmFtZXNwYWNlIFdlYkNvcmUgewogICAgICAgICB2aXJ0dWFsIHZvaWQgc2V0RW5jb2Rpbmco
Y29uc3QgU3RyaW5nJik7CiAgICAgICAgIHZpcnR1YWwgU3RyaW5nIGVuY29kaW5nKCkgY29uc3Q7
CiAgICAgICAgIHZpcnR1YWwgdm9pZCBkYXRhKFBhc3NSZWZQdHI8UmVzb3VyY2VCdWZmZXI+IGRh
dGEsIGJvb2wgYWxsRGF0YVJlY2VpdmVkKTsKKyAgICAgICAgU3RyaW5nIG1pbWVUeXBlKCkgY29u
c3Q7CiAKICAgICAgICAgdmlydHVhbCB2b2lkIGRlc3Ryb3lEZWNvZGVkRGF0YSgpOwogI2lmIFVT
RShKU0MpICAgICAgICAKQEAgLTU2LDYgKzU3LDkgQEAgbmFtZXNwYWNlIFdlYkNvcmUgewogICAg
ICAgICBKU0M6OlNvdXJjZVByb3ZpZGVyQ2FjaGUqIHNvdXJjZVByb3ZpZGVyQ2FjaGUoKSBjb25z
dDsKICAgICAgICAgdm9pZCBzb3VyY2VQcm92aWRlckNhY2hlU2l6ZUNoYW5nZWQoaW50IGRlbHRh
KTsKICNlbmRpZgorI2lmIEVOQUJMRShOT1NOSUZGKQorICAgICAgICBib29sIG1pbWVUeXBlQWxs
b3dlZEJ5Tm9zbmlmZigpIGNvbnN0OworI2VuZGlmCiAKICAgICAgICAgdmlydHVhbCB2b2lkIHJl
cG9ydE1lbW9yeVVzYWdlKE1lbW9yeU9iamVjdEluZm8qKSBjb25zdCBPVkVSUklERTsKIApkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbmV0d29yay9IVFRQUGFyc2Vycy5jcHAg
Yi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9uZXR3b3JrL0hUVFBQYXJzZXJzLmNwcAppbmRleCBi
YTQ3ZDIyMGYzMmQ3YTY2YmE4N2ZmZGU5M2ZkZDIxNDUyYTgzMDYzLi43ZTMxY2Y1NWM4OTY2OWE5
MGZkMjFhYjQyN2EzZDYzNmQyNjYwZGU2IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0
Zm9ybS9uZXR3b3JrL0hUVFBQYXJzZXJzLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9y
bS9uZXR3b3JrL0hUVFBQYXJzZXJzLmNwcApAQCAtNDI5LDYgKzQyOSwxNSBAQCBYU1NQcm90ZWN0
aW9uRGlzcG9zaXRpb24gcGFyc2VYU1NQcm90ZWN0aW9uSGVhZGVyKGNvbnN0IFN0cmluZyYgaGVh
ZGVyLCBTdHJpbmcmCiAgICAgfQogfQogCisjaWYgRU5BQkxFKE5PU05JRkYpCitDb250ZW50VHlw
ZU9wdGlvbnNEaXNwb3NpdGlvbiBwYXJzZUNvbnRlbnRUeXBlT3B0aW9uc0hlYWRlcihjb25zdCBT
dHJpbmcmIGhlYWRlcikKK3sKKyAgICBpZiAoaGVhZGVyLnN0cmlwV2hpdGVTcGFjZSgpLmxvd2Vy
KCkgPT0gIm5vc25pZmYiKQorICAgICAgICByZXR1cm4gQ29udGVudFR5cGVPcHRpb25zTm9zbmlm
ZjsKKyAgICByZXR1cm4gQ29udGVudFR5cGVPcHRpb25zTm9uZTsKK30KKyNlbmRpZgorCiBTdHJp
bmcgZXh0cmFjdFJlYXNvblBocmFzZUZyb21IVFRQU3RhdHVzTGluZShjb25zdCBTdHJpbmcmIHN0
YXR1c0xpbmUpCiB7CiAgICAgc2l6ZV90IHNwYWNlUG9zID0gc3RhdHVzTGluZS5maW5kKCcgJyk7
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9uZXR3b3JrL0hUVFBQYXJzZXJz
LmggYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9uZXR3b3JrL0hUVFBQYXJzZXJzLmgKaW5kZXgg
NjExYWJhZTgwZmU4MTU0MjE0NzM4MDJhMjIwNzlhZjJlNTJlZTA1Ny4uMGE0MzAyZjFhYWM3MGEy
MjBjYzE0YjAxOTMyYjBhYTAzMTU4OTNmZCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxh
dGZvcm0vbmV0d29yay9IVFRQUGFyc2Vycy5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3Jt
L25ldHdvcmsvSFRUUFBhcnNlcnMuaApAQCAtNTMsNiArNTMsMTMgQEAgdHlwZWRlZiBlbnVtIHsK
ICAgICBDb250ZW50RGlzcG9zaXRpb25PdGhlcgogfSBDb250ZW50RGlzcG9zaXRpb25UeXBlOwog
CisjaWYgRU5BQkxFKE5PU05JRkYpCitlbnVtIENvbnRlbnRUeXBlT3B0aW9uc0Rpc3Bvc2l0aW9u
IHsKKyAgICBDb250ZW50VHlwZU9wdGlvbnNOb25lLAorICAgIENvbnRlbnRUeXBlT3B0aW9uc05v
c25pZmYKK307CisjZW5kaWYKKwogQ29udGVudERpc3Bvc2l0aW9uVHlwZSBjb250ZW50RGlzcG9z
aXRpb25UeXBlKGNvbnN0IFN0cmluZyYpOwogYm9vbCBpc1JGQzI2MTZUb2tlbihjb25zdCBTdHJp
bmcmKTsKIGJvb2wgcGFyc2VIVFRQUmVmcmVzaChjb25zdCBTdHJpbmcmIHJlZnJlc2gsIGJvb2wg
ZnJvbUh0dHBFcXVpdk1ldGEsIGRvdWJsZSYgZGVsYXksIFN0cmluZyYgdXJsKTsKQEAgLTY3LDYg
Kzc0LDEwIEBAIFN0cmluZyBleHRyYWN0UmVhc29uUGhyYXNlRnJvbUhUVFBTdGF0dXNMaW5lKGNv
bnN0IFN0cmluZyYpOwogLy8gLTEgY291bGQgYmUgc2V0IHRvIG9uZSBvZiB0aGUgcmV0dXJuIHBh
cmFtZXRlcnMgdG8gaW5kaWNhdGUgdGhlIHZhbHVlIGlzIG5vdCBzcGVjaWZpZWQuCiBib29sIHBh
cnNlUmFuZ2UoY29uc3QgU3RyaW5nJiwgbG9uZyBsb25nJiByYW5nZU9mZnNldCwgbG9uZyBsb25n
JiByYW5nZUVuZCwgbG9uZyBsb25nJiByYW5nZVN1ZmZpeExlbmd0aCk7CiAKKyNpZiBFTkFCTEUo
Tk9TTklGRikKK0NvbnRlbnRUeXBlT3B0aW9uc0Rpc3Bvc2l0aW9uIHBhcnNlQ29udGVudFR5cGVP
cHRpb25zSGVhZGVyKGNvbnN0IFN0cmluZyYgaGVhZGVyKTsKKyNlbmRpZgorCiAvLyBQYXJzaW5n
IENvbXBsZXRlIEhUVFAgTWVzc2FnZXMuCiBlbnVtIEhUVFBWZXJzaW9uIHsgVW5rbm93biwgSFRU
UF8xXzAsIEhUVFBfMV8xIH07CiBzaXplX3QgcGFyc2VIVFRQUmVxdWVzdExpbmUoY29uc3QgY2hh
ciogZGF0YSwgc2l6ZV90IGxlbmd0aCwgU3RyaW5nJiBmYWlsdXJlUmVhc29uLCBTdHJpbmcmIG1l
dGhvZCwgU3RyaW5nJiB1cmwsIEhUVFBWZXJzaW9uJik7CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0
cy9DaGFuZ2VMb2cgYi9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKaW5kZXggZWFiZjIyMjg5NmVmNDg4
NGVmZjFlNmFiZDIyM2FhZDY3OGM2ZDAyZC4uMzA4ZDQ1ZjQ0YzBlMWNmZWEzY2Y2NTFiOThkMTY0
NWQ1OGNjMGM0MSAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCisrKyBiL0xheW91
dFRlc3RzL0NoYW5nZUxvZwpAQCAtMSwzICsxLDMwIEBACisyMDEzLTAyLTA2ICBNaWtlIFdlc3Qg
IDxta3dzdEBjaHJvbWl1bS5vcmc+CisKKyAgICAgICAgSW1wbGVtZW50IHNjcmlwdCBNSU1FIHJl
c3RyaWN0aW9ucyBmb3IgWC1Db250ZW50LVR5cGUtT3B0aW9uczogbm9zbmlmZgorICAgICAgICBo
dHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9NzE4NTEKKworICAgICAgICBS
ZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICAqIGh0dHAvdGVzdHMvc2VjdXJp
dHkvY29udGVudFR5cGVPcHRpb25zL2ludmFsaWQtY29udGVudC10eXBlLW9wdGlvbnMtYWxsb3dl
ZC1leHBlY3RlZC50eHQ6IEFkZGVkLgorICAgICAgICAqIGh0dHAvdGVzdHMvc2VjdXJpdHkvY29u
dGVudFR5cGVPcHRpb25zL2ludmFsaWQtY29udGVudC10eXBlLW9wdGlvbnMtYWxsb3dlZC5odG1s
OiBBZGRlZC4KKyAgICAgICAgKiBodHRwL3Rlc3RzL3NlY3VyaXR5L2NvbnRlbnRUeXBlT3B0aW9u
cy9ub3NuaWZmLXNjcmlwdC1hbGxvd2VkLWV4cGVjdGVkLnR4dDogQWRkZWQuCisgICAgICAgICog
aHR0cC90ZXN0cy9zZWN1cml0eS9jb250ZW50VHlwZU9wdGlvbnMvbm9zbmlmZi1zY3JpcHQtYWxs
b3dlZC5odG1sOiBBZGRlZC4KKyAgICAgICAgKiBodHRwL3Rlc3RzL3NlY3VyaXR5L2NvbnRlbnRU
eXBlT3B0aW9ucy9ub3NuaWZmLXNjcmlwdC1ibG9ja2VkLWV4cGVjdGVkLnR4dDogQWRkZWQuCisg
ICAgICAgICogaHR0cC90ZXN0cy9zZWN1cml0eS9jb250ZW50VHlwZU9wdGlvbnMvbm9zbmlmZi1z
Y3JpcHQtYmxvY2tlZC5odG1sOiBBZGRlZC4KKyAgICAgICAgKiBodHRwL3Rlc3RzL3NlY3VyaXR5
L2NvbnRlbnRUeXBlT3B0aW9ucy9ub3NuaWZmLXNjcmlwdC13aXRob3V0LWNvbnRlbnQtdHlwZS1h
bGxvd2VkLWV4cGVjdGVkLnR4dDogQWRkZWQuCisgICAgICAgICogaHR0cC90ZXN0cy9zZWN1cml0
eS9jb250ZW50VHlwZU9wdGlvbnMvbm9zbmlmZi1zY3JpcHQtd2l0aG91dC1jb250ZW50LXR5cGUt
YWxsb3dlZC5odG1sOiBBZGRlZC4KKyAgICAgICAgKiBodHRwL3Rlc3RzL3NlY3VyaXR5L2NvbnRl
bnRUeXBlT3B0aW9ucy9yZXNvdXJjZXMvc2NyaXB0LXdpdGgtaGVhZGVyLnBsOiBBZGRlZC4KKyAg
ICAgICAgICAgIE5ldyB0ZXN0cyEKKyAgICAgICAgKiBwbGF0Zm9ybS9lZmwvVGVzdEV4cGVjdGF0
aW9uczoKKyAgICAgICAgKiBwbGF0Zm9ybS9ndGsvVGVzdEV4cGVjdGF0aW9uczoKKyAgICAgICAg
KiBwbGF0Zm9ybS9tYWMvVGVzdEV4cGVjdGF0aW9uczoKKyAgICAgICAgKiBwbGF0Zm9ybS9xdC9U
ZXN0RXhwZWN0YXRpb25zOgorICAgICAgICAqIHBsYXRmb3JtL3dpbi9UZXN0RXhwZWN0YXRpb25z
OgorICAgICAgICAqIHBsYXRmb3JtL3dpbmNhaXJvL1Rlc3RFeHBlY3RhdGlvbnM6CisgICAgICAg
ICogcGxhdGZvcm0vd2syL1Rlc3RFeHBlY3RhdGlvbnM6CisgICAgICAgICAgICBTa2lwIHRoZSBu
ZXcgdGVzdHMgb24gcGxhdGZvcm1zIHdoZXJlIEVOQUJMRV9OT1NOSUZGIGlzbid0IHlldAorICAg
ICAgICAgICAgZW5hYmxlZCAoZXZlcnl0aGluZyBvdGhlciB0aGFuIENocm9taXVtKS4KKwogMjAx
My0wMi0wNiAgTWloYWkgTWFlcmVhbiAgPG1tYWVyZWFuQGFkb2JlLmNvbT4KIAogICAgICAgICBb
Q1NTUmVnaW9uc10gQXNzZXJ0aW9uIGZhaWx1cmUgaW4gTm9kZTo6ZGV0YWNoICghcmVuZGVyZXIg
fHwgcmVuZGVyZXItPmluUmVuZGVyRmxvd1RocmVhZCgpKQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVz
dHMvaHR0cC90ZXN0cy9zZWN1cml0eS9jb250ZW50VHlwZU9wdGlvbnMvbm9zbmlmZi1zY3JpcHQt
YWxsb3dlZC1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3NlY3VyaXR5L2Nv
bnRlbnRUeXBlT3B0aW9ucy9ub3NuaWZmLXNjcmlwdC1hbGxvd2VkLWV4cGVjdGVkLnR4dApuZXcg
ZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwLi5mNTliMzcyOTFlYjRhMzY2MGU0NmNjZmFiNjE0MDJmMWY2ZjU2YTA2Ci0tLSAvZGV2
L251bGwKKysrIGIvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9zZWN1cml0eS9jb250ZW50VHlwZU9w
dGlvbnMvbm9zbmlmZi1zY3JpcHQtYWxsb3dlZC1leHBlY3RlZC50eHQKQEAgLTAsMCArMSwxOSBA
QAorQ09OU09MRSBNRVNTQUdFOiBsaW5lIDE6IEV4ZWN1dGVkIHNjcmlwdCB3aXRoIE1JTUUgdHlw
ZTogJ2FwcGxpY2F0aW9uL2VjbWFzY3JpcHQnLgorQ09OU09MRSBNRVNTQUdFOiBsaW5lIDE6IEV4
ZWN1dGVkIHNjcmlwdCB3aXRoIE1JTUUgdHlwZTogJ2FwcGxpY2F0aW9uL2phdmFzY3JpcHQnLgor
Q09OU09MRSBNRVNTQUdFOiBsaW5lIDE6IEV4ZWN1dGVkIHNjcmlwdCB3aXRoIE1JTUUgdHlwZTog
J2FwcGxpY2F0aW9uL3gtamF2YXNjcmlwdCcuCitDT05TT0xFIE1FU1NBR0U6IGxpbmUgMTogRXhl
Y3V0ZWQgc2NyaXB0IHdpdGggTUlNRSB0eXBlOiAndGV4dC9lY21hc2NyaXB0Jy4KK0NPTlNPTEUg
TUVTU0FHRTogbGluZSAxOiBFeGVjdXRlZCBzY3JpcHQgd2l0aCBNSU1FIHR5cGU6ICd0ZXh0L2ph
dmFzY3JpcHQnLgorQ09OU09MRSBNRVNTQUdFOiBsaW5lIDE6IEV4ZWN1dGVkIHNjcmlwdCB3aXRo
IE1JTUUgdHlwZTogJ3RleHQvanNjcmlwdCcuCitDT05TT0xFIE1FU1NBR0U6IGxpbmUgMTogRXhl
Y3V0ZWQgc2NyaXB0IHdpdGggTUlNRSB0eXBlOiAndGV4dC94LWphdmFzY3JpcHQnLgorQ09OU09M
RSBNRVNTQUdFOiBsaW5lIDE6IEV4ZWN1dGVkIHNjcmlwdCB3aXRoIE1JTUUgdHlwZTogJ3RleHQv
dmJzJy4KK0NPTlNPTEUgTUVTU0FHRTogbGluZSAxOiBFeGVjdXRlZCBzY3JpcHQgd2l0aCBNSU1F
IHR5cGU6ICd0ZXh0L3Zic2NyaXB0Jy4KK0NoZWNrIHRoYXQgc2NyaXB0IHNlbnQgd2l0aCBhbiAn
WC1Db250ZW50LVR5cGUtT3B0aW9uczogbm9zbmlmZicgaGVhZGVyIGlzIGNvcnJlY3RseSBhbGxv
d2VkIGlmIHRoZSBNSU1FIHR5cGUgaXMgc2NyaXB0eS4KKworT24gc3VjY2VzcywgeW91IHdpbGwg
c2VlIGEgc2VyaWVzIG9mICJQQVNTIiBtZXNzYWdlcywgZm9sbG93ZWQgYnkgIlRFU1QgQ09NUExF
VEUiLgorCisKK1BBU1Mgd2luZG93LnNjcmlwdHNTdWNjZXNzZnVsbHlMb2FkZWQgaXMgc2NyaXB0
eU1pbWVUeXBlcy5sZW5ndGgKK1BBU1Mgc3VjY2Vzc2Z1bGx5UGFyc2VkIGlzIHRydWUKKworVEVT
VCBDT01QTEVURQorCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3NlY3VyaXR5
L2NvbnRlbnRUeXBlT3B0aW9ucy9ub3NuaWZmLXNjcmlwdC1hbGxvd2VkLmh0bWwgYi9MYXlvdXRU
ZXN0cy9odHRwL3Rlc3RzL3NlY3VyaXR5L2NvbnRlbnRUeXBlT3B0aW9ucy9ub3NuaWZmLXNjcmlw
dC1hbGxvd2VkLmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uZjI4ZWY5MDBiYTQ0MWRjZWQ2NmJlYTE1MDQ2N2Qy
MGNkYzI0Mzc4NgotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvc2Vj
dXJpdHkvY29udGVudFR5cGVPcHRpb25zL25vc25pZmYtc2NyaXB0LWFsbG93ZWQuaHRtbApAQCAt
MCwwICsxLDM2IEBACis8IURPQ1RZUEUgaHRtbD4KKzxodG1sPgorPGhlYWQ+CisgICAgPHRpdGxl
PidYLUNvbnRlbnQtVHlwZS1PcHRpb25zOiBub3NuaWZmOycgYWxsb3dzIHNjcmlwdHMhPC90aXRs
ZT4KKzxib2R5PgorICAgIDxzY3JpcHQgc3JjPSIvanMtdGVzdC1yZXNvdXJjZXMvanMtdGVzdC1w
cmUuanMiPjwvc2NyaXB0PgorICAgIDxzY3JpcHQ+CisgICAgICAgIGRlc2NyaXB0aW9uKCdDaGVj
ayB0aGF0IHNjcmlwdCBzZW50IHdpdGggYW4gXCdYLUNvbnRlbnQtVHlwZS1PcHRpb25zOiBub3Nu
aWZmXCcgaGVhZGVyIGlzIGNvcnJlY3RseSBhbGxvd2VkIGlmIHRoZSBNSU1FIHR5cGUgaXMgc2Ny
aXB0eS4nKTsKKyAgICAgICAgd2luZG93LmpzVGVzdElzQXN5bmMgPSB0cnVlOworCisgICAgICAg
IHZhciBzY3JpcHR5TWltZVR5cGVzID0gWworICAgICAgICAgICAgJ2FwcGxpY2F0aW9uL2VjbWFz
Y3JpcHQnLAorICAgICAgICAgICAgJ2FwcGxpY2F0aW9uL2phdmFzY3JpcHQnLAorICAgICAgICAg
ICAgJ2FwcGxpY2F0aW9uL3gtamF2YXNjcmlwdCcsCisgICAgICAgICAgICAndGV4dC9lY21hc2Ny
aXB0JywKKyAgICAgICAgICAgICd0ZXh0L2phdmFzY3JpcHQnLAorICAgICAgICAgICAgJ3RleHQv
anNjcmlwdCcsCisgICAgICAgICAgICAndGV4dC94LWphdmFzY3JpcHQnLAorICAgICAgICAgICAg
J3RleHQvdmJzJywKKyAgICAgICAgICAgICd0ZXh0L3Zic2NyaXB0JworICAgICAgICBdOworCisg
ICAgICAgIHdpbmRvdy5zY3JpcHRzU3VjY2Vzc2Z1bGx5TG9hZGVkID0gMDsKKworICAgICAgICBm
b3IgKHZhciBpID0gMDsgaSA8IHNjcmlwdHlNaW1lVHlwZXMubGVuZ3RoOyBpKyspIHsKKyAgICAg
ICAgICAgIGRvY3VtZW50LndyaXRlKCc8c2NyaXB0IHNyYz0iLi9yZXNvdXJjZXMvc2NyaXB0LXdp
dGgtaGVhZGVyLnBsP21pbWU9JyArIHNjcmlwdHlNaW1lVHlwZXNbaV0gKyAnIj48JyArICcvc2Ny
aXB0PicpOworICAgICAgICB9CisKKyAgICAgICAgd2luZG93Lm9ubG9hZCA9IGZ1bmN0aW9uICgp
IHsKKyAgICAgICAgICAgIHNob3VsZEJlKCd3aW5kb3cuc2NyaXB0c1N1Y2Nlc3NmdWxseUxvYWRl
ZCcsICdzY3JpcHR5TWltZVR5cGVzLmxlbmd0aCcpOworICAgICAgICAgICAgZmluaXNoSlNUZXN0
KCk7CisgICAgICAgIH07CisgICAgPC9zY3JpcHQ+CisgICAgPHNjcmlwdCBzcmM9Ii9qcy10ZXN0
LXJlc291cmNlcy9qcy10ZXN0LXBvc3QuanMiPjwvc2NyaXB0PgorPC9ib2R5PgorPC9odG1sPgpk
aWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9zZWN1cml0eS9jb250ZW50VHlwZU9w
dGlvbnMvbm9zbmlmZi1zY3JpcHQtYmxvY2tlZC1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9o
dHRwL3Rlc3RzL3NlY3VyaXR5L2NvbnRlbnRUeXBlT3B0aW9ucy9ub3NuaWZmLXNjcmlwdC1ibG9j
a2VkLWV4cGVjdGVkLnR4dApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5hOTkwOWM2NGFjMWZhMWQ4ZWVjN2NhMWE5NzQ5
ODM0ZWIxYzM5ZTYxCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9z
ZWN1cml0eS9jb250ZW50VHlwZU9wdGlvbnMvbm9zbmlmZi1zY3JpcHQtYmxvY2tlZC1leHBlY3Rl
ZC50eHQKQEAgLTAsMCArMSwxMyBAQAorQ09OU09MRSBNRVNTQUdFOiBSZWZ1c2VkIHRvIGV4ZWN1
dGUgc2NyaXB0IGZyb20gJ2h0dHA6Ly8xMjcuMC4wLjE6ODAwMC9zZWN1cml0eS9jb250ZW50VHlw
ZU9wdGlvbnMvcmVzb3VyY2VzL3NjcmlwdC13aXRoLWhlYWRlci5wbD9taW1lPXRleHQvaHRtbCcg
YmVjYXVzZSBpdHMgTUlNRSB0eXBlICgndGV4dC9odG1sJykgaXMgbm90IGV4ZWN1dGFibGUsIGFu
ZCBzdHJpY3QgTUlNRSB0eXBlIGNoZWNraW5nIGlzIGVuYWJsZWQuCitDT05TT0xFIE1FU1NBR0U6
IFJlZnVzZWQgdG8gZXhlY3V0ZSBzY3JpcHQgZnJvbSAnaHR0cDovLzEyNy4wLjAuMTo4MDAwL3Nl
Y3VyaXR5L2NvbnRlbnRUeXBlT3B0aW9ucy9yZXNvdXJjZXMvc2NyaXB0LXdpdGgtaGVhZGVyLnBs
P21pbWU9aW1hZ2UvcG5nJyBiZWNhdXNlIGl0cyBNSU1FIHR5cGUgKCdpbWFnZS9wbmcnKSBpcyBu
b3QgZXhlY3V0YWJsZSwgYW5kIHN0cmljdCBNSU1FIHR5cGUgY2hlY2tpbmcgaXMgZW5hYmxlZC4K
K0NPTlNPTEUgTUVTU0FHRTogUmVmdXNlZCB0byBleGVjdXRlIHNjcmlwdCBmcm9tICdodHRwOi8v
MTI3LjAuMC4xOjgwMDAvc2VjdXJpdHkvY29udGVudFR5cGVPcHRpb25zL3Jlc291cmNlcy9zY3Jp
cHQtd2l0aC1oZWFkZXIucGw/bWltZT1hcHBsaWNhdGlvbi9qc29uJyBiZWNhdXNlIGl0cyBNSU1F
IHR5cGUgKCdhcHBsaWNhdGlvbi9qc29uJykgaXMgbm90IGV4ZWN1dGFibGUsIGFuZCBzdHJpY3Qg
TUlNRSB0eXBlIGNoZWNraW5nIGlzIGVuYWJsZWQuCitDaGVjayB0aGF0IHNjcmlwdCBzZW50IHdp
dGggYW4gJ1gtQ29udGVudC1UeXBlLU9wdGlvbnM6IG5vc25pZmYnIGhlYWRlciBpcyBjb3JyZWN0
bHkgYmxvY2tlZCBpZiB0aGUgTUlNRSB0eXBlIGlzbid0IHNjcmlwdHkuCisKK09uIHN1Y2Nlc3Ms
IHlvdSB3aWxsIHNlZSBhIHNlcmllcyBvZiAiUEFTUyIgbWVzc2FnZXMsIGZvbGxvd2VkIGJ5ICJU
RVNUIENPTVBMRVRFIi4KKworCitQQVNTIHdpbmRvdy5zY3JpcHRzU3VjY2Vzc2Z1bGx5TG9hZGVk
IGlzIDAKK1BBU1Mgc3VjY2Vzc2Z1bGx5UGFyc2VkIGlzIHRydWUKKworVEVTVCBDT01QTEVURQor
CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3NlY3VyaXR5L2NvbnRlbnRUeXBl
T3B0aW9ucy9ub3NuaWZmLXNjcmlwdC1ibG9ja2VkLmh0bWwgYi9MYXlvdXRUZXN0cy9odHRwL3Rl
c3RzL3NlY3VyaXR5L2NvbnRlbnRUeXBlT3B0aW9ucy9ub3NuaWZmLXNjcmlwdC1ibG9ja2VkLmh0
bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMC4uMjYwMDg3NDMwZmEzMWU3YzU0YjUzNGU4NzgyMjU1NjVlMmYwZjE2Mwot
LS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvc2VjdXJpdHkvY29udGVu
dFR5cGVPcHRpb25zL25vc25pZmYtc2NyaXB0LWJsb2NrZWQuaHRtbApAQCAtMCwwICsxLDMwIEBA
Cis8IURPQ1RZUEUgaHRtbD4KKzxodG1sPgorPGhlYWQ+CisgICAgPHRpdGxlPidYLUNvbnRlbnQt
VHlwZS1PcHRpb25zOiBub3NuaWZmOycgYmxvY2tzIHNjcmlwdHMhPC90aXRsZT4KKzxib2R5Pgor
ICAgIDxzY3JpcHQgc3JjPSIvanMtdGVzdC1yZXNvdXJjZXMvanMtdGVzdC1wcmUuanMiPjwvc2Ny
aXB0PgorICAgIDxzY3JpcHQ+CisgICAgICAgIGRlc2NyaXB0aW9uKCdDaGVjayB0aGF0IHNjcmlw
dCBzZW50IHdpdGggYW4gXCdYLUNvbnRlbnQtVHlwZS1PcHRpb25zOiBub3NuaWZmXCcgaGVhZGVy
IGlzIGNvcnJlY3RseSBibG9ja2VkIGlmIHRoZSBNSU1FIHR5cGUgaXNuXCd0IHNjcmlwdHkuJyk7
CisgICAgICAgIHdpbmRvdy5qc1Rlc3RJc0FzeW5jID0gdHJ1ZTsKKworICAgICAgICB2YXIgdW5z
Y3JpcHR5TWltZVR5cGVzID0gWworICAgICAgICAgICAgJ3RleHQvaHRtbCcsCisgICAgICAgICAg
ICAnaW1hZ2UvcG5nJywKKyAgICAgICAgICAgICdhcHBsaWNhdGlvbi9qc29uJworICAgICAgICBd
OworCisgICAgICAgIHdpbmRvdy5zY3JpcHRzU3VjY2Vzc2Z1bGx5TG9hZGVkID0gMDsKKworICAg
ICAgICBmb3IgKHZhciBpID0gMDsgaSA8IHVuc2NyaXB0eU1pbWVUeXBlcy5sZW5ndGg7IGkrKykg
eworICAgICAgICAgICAgZG9jdW1lbnQud3JpdGUoJzxzY3JpcHQgc3JjPSIuL3Jlc291cmNlcy9z
Y3JpcHQtd2l0aC1oZWFkZXIucGw/bWltZT0nICsgdW5zY3JpcHR5TWltZVR5cGVzW2ldICsgJyI+
PCcgKyAnL3NjcmlwdD4nKTsKKyAgICAgICAgfQorCisgICAgICAgIHdpbmRvdy5vbmxvYWQgPSBm
dW5jdGlvbiAoKSB7CisgICAgICAgICAgICBzaG91bGRCZSgnd2luZG93LnNjcmlwdHNTdWNjZXNz
ZnVsbHlMb2FkZWQnLCAnMCcpOworICAgICAgICAgICAgZmluaXNoSlNUZXN0KCk7CisgICAgICAg
IH07CisgICAgPC9zY3JpcHQ+CisgICAgPHNjcmlwdCBzcmM9Ii9qcy10ZXN0LXJlc291cmNlcy9q
cy10ZXN0LXBvc3QuanMiPjwvc2NyaXB0PgorPC9ib2R5PgorPC9odG1sPgpkaWZmIC0tZ2l0IGEv
TGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9zZWN1cml0eS9jb250ZW50VHlwZU9wdGlvbnMvcmVzb3Vy
Y2VzL3NjcmlwdC13aXRoLWhlYWRlci5wbCBiL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvc2VjdXJp
dHkvY29udGVudFR5cGVPcHRpb25zL3Jlc291cmNlcy9zY3JpcHQtd2l0aC1oZWFkZXIucGwKbmV3
IGZpbGUgbW9kZSAxMDA3NTUKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMC4uNzBlMDY4OGM5OGE4ODEzNTYwN2JjNzk2ZDYyMzI2YmUxNzAyYzg1OQotLS0gL2Rl
di9udWxsCisrKyBiL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvc2VjdXJpdHkvY29udGVudFR5cGVP
cHRpb25zL3Jlc291cmNlcy9zY3JpcHQtd2l0aC1oZWFkZXIucGwKQEAgLTAsMCArMSwxNyBAQAor
IyEvdXNyL2Jpbi9wZXJsIC13VAordXNlIHN0cmljdDsKK3VzZSBDR0k7CisKK215ICRjZ2kgPSBu
ZXcgQ0dJOworCitpZiAoJGNnaS0+cGFyYW0oJ21pbWUnKSkgeworICAgIHByaW50ICJDb250ZW50
LVR5cGU6ICIgLiAkY2dpLT5wYXJhbSgnbWltZScpIC4gIlxuIjsKK30KK2lmICgkY2dpLT5wYXJh
bSgnb3B0aW9ucycpKSB7CisgICAgcHJpbnQgIlgtQ29udGVudC1UeXBlLU9wdGlvbnM6ICIgLiAk
Y2dpLT5wYXJhbSgnb3B0aW9ucycpIC4gIlxuIjsKK30gZWxzZSB7CisgICAgcHJpbnQgIlgtQ29u
dGVudC1UeXBlLU9wdGlvbnM6IG5vc25pZmZcbiI7Cit9CitwcmludCAiXG4iOworcHJpbnQgImNv
bnNvbGUubG9nKFwiRXhlY3V0ZWQgc2NyaXB0IHdpdGggTUlNRSB0eXBlOiAnIiAuICAkY2dpLT5w
YXJhbSgnbWltZScpIC4gIicuXCIpO1xuIjsKK3ByaW50ICJ3aW5kb3cuc2NyaXB0c1N1Y2Nlc3Nm
dWxseUxvYWRlZCsrO1xuIjsKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL3BsYXRmb3JtL2VmbC9U
ZXN0RXhwZWN0YXRpb25zIGIvTGF5b3V0VGVzdHMvcGxhdGZvcm0vZWZsL1Rlc3RFeHBlY3RhdGlv
bnMKaW5kZXggMGI0ZDVhMTk0MTllZjYzMzgxYjNmMTQ5N2RmZjZiODExMzViOGJjZC4uOGNjYWM4
NTMxOTlmY2E5NTczYmIxYTYwMWMwYWM2YjY2OTFhM2YyMSAxMDA2NDQKLS0tIGEvTGF5b3V0VGVz
dHMvcGxhdGZvcm0vZWZsL1Rlc3RFeHBlY3RhdGlvbnMKKysrIGIvTGF5b3V0VGVzdHMvcGxhdGZv
cm0vZWZsL1Rlc3RFeHBlY3RhdGlvbnMKQEAgLTMwMiw2ICszMDIsOSBAQCBmYXN0L3RleHQvdW5p
Y29kZS12YXJpYXRpb24tc2VsZWN0b3IuaHRtbAogZmFzdC9mb3Jtcy9maWxlL2lucHV0LWZpbGUt
ZW50cmllcy5odG1sCiBodHRwL3Rlc3RzL3NlY3VyaXR5L2NvbnRlbnRTZWN1cml0eVBvbGljeS9m
aWxlc3lzdGVtLXVybHMtbWF0Y2gtc2VsZi5odG1sCiAKKyMgWC1Db250ZW50LVR5cGUtT3B0aW9u
cyAoRU5BQkxFX05PU05JRkYpIGlzIG5vdCBlbmFibGVkLgoraHR0cC90ZXN0cy9zZWN1cml0eS9j
b250ZW50VHlwZU9wdGlvbnMKKwogIyBUcmFuc3BhcmVudCBpbWFnZSBiZWluZyBwcm9kdWNlZAog
ZmFzdC9mcmFtZXMvdHJhbnNwYXJlbnQtc2Nyb2xsYmFyLmh0bWwKIApkaWZmIC0tZ2l0IGEvTGF5
b3V0VGVzdHMvcGxhdGZvcm0vZ3RrL1Rlc3RFeHBlY3RhdGlvbnMgYi9MYXlvdXRUZXN0cy9wbGF0
Zm9ybS9ndGsvVGVzdEV4cGVjdGF0aW9ucwppbmRleCAxZTUwYjI2ZTBhYzM5MjJlNjZiMDA4NGE1
ODNlOTM1MjZhMGMyZmJlLi5lZTZkM2UzZjQyMjA1ZGY1YjA1Y2QyODMxMzMxMTk0MzY5NDI4MGEw
IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9ndGsvVGVzdEV4cGVjdGF0aW9ucwor
KysgYi9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9ndGsvVGVzdEV4cGVjdGF0aW9ucwpAQCAtMTE1LDYg
KzExNSw5IEBAIHdlYmtpdC5vcmcvYi8xMDM1NDcgZmFzdC94c2wveHNsdC14aHRtbC10ZW1wbGF0
ZS54bWwgWyBTa2lwIF0KIHdlYmtpdC5vcmcvYi8xMDM1NDcgZmFzdC94cGF0aC94cGF0aC10ZW1w
bGF0ZS1lbGVtZW50Lmh0bWwgWyBTa2lwIF0KIHdlYmtpdC5vcmcvYi8xMDM1NDcgZmFzdC94c2wv
eHNsdC1wcm9jZXNzb3ItdGVtcGxhdGUuaHRtbCBbIFNraXAgXQogCisjIFgtQ29udGVudC1UeXBl
LU9wdGlvbnMgKEVOQUJMRV9OT1NOSUZGKSBpcyBub3QgZW5hYmxlZC4KK3dlYmtpdC5vcmcvYi83
MTg1MSBodHRwL3Rlc3RzL3NlY3VyaXR5L2NvbnRlbnRUeXBlT3B0aW9ucyBbIFNraXAgXQorCiAj
IFRoZXNlIHRlc3QgLWFwcGxlLSBhbmQgLWtodG1sLSBwcmVmaXhlZCBDU1MgcHJvcGVydGllcywg
d2hpY2ggd2UgZG9uJ3Qgc3VwcG9ydC4KIGluc3BlY3Rvci9zdHlsZXMvdmVuZG9yLXByZWZpeGVz
Lmh0bWwgWyBXb250Rml4IF0KIGZhc3QvY3NzL2FwcGxlLXByZWZpeC5odG1sIFsgV29udEZpeCBd
CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9tYWMvVGVzdEV4cGVjdGF0aW9ucyBi
L0xheW91dFRlc3RzL3BsYXRmb3JtL21hYy9UZXN0RXhwZWN0YXRpb25zCmluZGV4IGZjZmI1ZjUw
MzZjNDM1NDQwMjY4MWMwYTMyYWQ3ODEyZTZjN2NlM2YuLjE2OWI0YWE1MTYyYTAxZDFmZWYwNDA0
NmY4ZDYyMmNiZjNjMTYyZmUgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL3BsYXRmb3JtL21hYy9U
ZXN0RXhwZWN0YXRpb25zCisrKyBiL0xheW91dFRlc3RzL3BsYXRmb3JtL21hYy9UZXN0RXhwZWN0
YXRpb25zCkBAIC0xOTcsNiArMTk3LDkgQEAgZmFzdC9mb3Jtcy93ZWVrCiAjIEVOQUJMRV9HQU1F
UEFEIG5vdCBlbmFibGVkLgogZ2FtZXBhZC8KIAorIyBYLUNvbnRlbnQtVHlwZS1PcHRpb25zIChF
TkFCTEVfTk9TTklGRikgaXMgbm90IGVuYWJsZWQuCitodHRwL3Rlc3RzL3NlY3VyaXR5L2NvbnRl
bnRUeXBlT3B0aW9ucworCiAjIFNwZWVjaCBpbnB1dCBpcyBub3QgeWV0IGVuYWJsZWQuCiBmYXN0
L3NwZWVjaAogCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9xdC9UZXN0RXhwZWN0
YXRpb25zIGIvTGF5b3V0VGVzdHMvcGxhdGZvcm0vcXQvVGVzdEV4cGVjdGF0aW9ucwppbmRleCA0
MTc0M2FmMGMwNmVjZGQxNWRhOGE0MGNlNTM3ZWE1ZjhlZGFlYTdmLi4wNzY3ZmU1NmUzOGQ3Y2Vj
ZTRlZGZlYTAxZTJkYmRiNjViMDNkMDBjIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9wbGF0Zm9y
bS9xdC9UZXN0RXhwZWN0YXRpb25zCisrKyBiL0xheW91dFRlc3RzL3BsYXRmb3JtL3F0L1Rlc3RF
eHBlY3RhdGlvbnMKQEAgLTQ3OCw2ICs0NzgsOSBAQCB3ZWJraXQub3JnL2IvNjExMzggaHR0cC90
ZXN0cy93M2Mvd2VicGVyZi9zdWJtaXNzaW9uL0ludGVsL3Jlc291cmNlLXRpbWluZwogIyBNaXNz
aW5nIGV2ZW50U2VuZGVyLnNjaGVkdWxlQXN5bmNocm9ub3VzS2V5RG93bigpIGltcGxlbWVudGF0
aW9uCiBmYXN0L2RvbS9NdXRhdGlvbk9ic2VydmVyL2lubGluZS1ldmVudC1saXN0ZW5lci5odG1s
CiAKKyMgWC1Db250ZW50LVR5cGUtT3B0aW9ucyAoRU5BQkxFX05PU05JRkYpIGlzIG5vdCBlbmFi
bGVkLgoraHR0cC90ZXN0cy9zZWN1cml0eS9jb250ZW50VHlwZU9wdGlvbnMKKwogIyA9PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT0gIwogIyAgICAgICBEcmFnIGFuZCBEcm9wIFN1cHBvcnQgaW4gRFJULiAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIwogIyA9PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT0gIwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvcGxhdGZvcm0vd2luL1Rlc3RFeHBlY3RhdGlv
bnMgYi9MYXlvdXRUZXN0cy9wbGF0Zm9ybS93aW4vVGVzdEV4cGVjdGF0aW9ucwppbmRleCAxOGQ1
NGRhZDU3MDdmYmE0OGZhMTk2ZGYzOTVhYTM1NmU4MjlmOTFlLi5jNzNiNDU1ODQ1NTI4NTAyNTIy
OWFhMGQ4NWQ2MjU1ZjI4MzljYTBjIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9wbGF0Zm9ybS93
aW4vVGVzdEV4cGVjdGF0aW9ucworKysgYi9MYXlvdXRUZXN0cy9wbGF0Zm9ybS93aW4vVGVzdEV4
cGVjdGF0aW9ucwpAQCAtNTgsNiArNTgsOSBAQCBmYXN0L2Nzcy9pbWFnZS1zZXQtcGFyc2luZy1p
bnZhbGlkLmh0bWwKIGZhc3QvY3NzL2N1cnNvci1wYXJzaW5nLWltYWdlLXNldC5odG1sCiBmYXN0
L2V2ZW50cy9tb3VzZS1jdXJzb3ItaW1hZ2Utc2V0Lmh0bWwKIAorIyBYLUNvbnRlbnQtVHlwZS1P
cHRpb25zIChFTkFCTEVfTk9TTklGRikgaXMgbm90IGVuYWJsZWQuCitodHRwL3Rlc3RzL3NlY3Vy
aXR5L2NvbnRlbnRUeXBlT3B0aW9ucworCiAjIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3df
YnVnLmNnaT9pZD03NzY0NQogY3NzMy9maWx0ZXJzL2ZpbHRlcmVkLWNvbXBvc2l0aW5nLWRlc2Nl
bmRhbnQuaHRtbAogCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9wbGF0Zm9ybS93aW5jYWlyby9U
ZXN0RXhwZWN0YXRpb25zIGIvTGF5b3V0VGVzdHMvcGxhdGZvcm0vd2luY2Fpcm8vVGVzdEV4cGVj
dGF0aW9ucwppbmRleCAyYzRlYjg5MjQ3YTk2MmE5OTNmNzY2MTM2YjViYzY4ZDVhOGYwOGFiLi5i
ZGM4OTcxYmRjODkzYzI2ZTExOGZlYWVjZWEwNjQ4NDZmODMwNTg1IDEwMDY0NAotLS0gYS9MYXlv
dXRUZXN0cy9wbGF0Zm9ybS93aW5jYWlyby9UZXN0RXhwZWN0YXRpb25zCisrKyBiL0xheW91dFRl
c3RzL3BsYXRmb3JtL3dpbmNhaXJvL1Rlc3RFeHBlY3RhdGlvbnMKQEAgLTI1MjQsNiArMjUyNCw5
IEBAIGZhc3QvbXVsdGljb2wvc3Bhbi9jbG9uZS1mbGV4Ym94Lmh0bWwKICMgaHR0cHM6Ly9idWdz
LndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTg1NTU4CiBodHRwL3Rlc3RzL3NlY3VyaXR5L2Nv
bnRlbnRTZWN1cml0eVBvbGljeS8xLjEKIAorIyBYLUNvbnRlbnQtVHlwZS1PcHRpb25zIChFTkFC
TEVfTk9TTklGRikgaXMgbm90IGVuYWJsZWQuCitodHRwL3Rlc3RzL3NlY3VyaXR5L2NvbnRlbnRU
eXBlT3B0aW9ucworCiAjIFNraXAgdGVzdHMgaW4gZmFzdC90ZXh0L3NoYXBpbmcKIGZhc3QvdGV4
dC9zaGFwaW5nCiAKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL3BsYXRmb3JtL3drMi9UZXN0RXhw
ZWN0YXRpb25zIGIvTGF5b3V0VGVzdHMvcGxhdGZvcm0vd2syL1Rlc3RFeHBlY3RhdGlvbnMKaW5k
ZXggZTMyMGEyOTBjZjU3NDJkNzlkNjRjYzk0YjkyMDUyMWU1Mzc2MzViOS4uNTdlNmM5ZDIwZTMx
NTRkMjRkOGY0NGNhNjgzZTViMTQ0OTJmZjBjZiAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvcGxh
dGZvcm0vd2syL1Rlc3RFeHBlY3RhdGlvbnMKKysrIGIvTGF5b3V0VGVzdHMvcGxhdGZvcm0vd2sy
L1Rlc3RFeHBlY3RhdGlvbnMKQEAgLTU3Myw2ICs1NzMsOSBAQCBodHRwL3Rlc3RzL3NlY3VyaXR5
L3ZpZGVvLWNyb3NzLW9yaWdpbi1yZWFkYmFjay5odG1sCiAjIGh0dHBzOi8vYnVncy53ZWJraXQu
b3JnL3Nob3dfYnVnLmNnaT9pZD04NTU1OAogaHR0cC90ZXN0cy9zZWN1cml0eS9jb250ZW50U2Vj
dXJpdHlQb2xpY3kvMS4xCiAKKyMgWC1Db250ZW50LVR5cGUtT3B0aW9ucyAoRU5BQkxFX05PU05J
RkYpIGlzIG5vdCBlbmFibGVkLgoraHR0cC90ZXN0cy9zZWN1cml0eS9jb250ZW50VHlwZU9wdGlv
bnMKKwogIyBVbmV4cGVjdGVkIHJlZGlyZWN0aW9uIGhhcHBlbnMuCiBodHRwL3Rlc3RzL2xvYWRp
bmcvcmVkaXJlY3QtbWV0aG9kcy5odG1sCiAK
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>187027</attachid>
            <date>2013-02-07 02:20:00 -0800</date>
            <delta_ts>2013-02-09 07:24:14 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-71851-20130207111635.patch</filename>
            <type>text/plain</type>
            <size>29121</size>
            <attacher name="Mike West">mkwst</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTQyMDgzCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggZmRiNGY4OTMxM2VjNTg4
Y2YyZDQxYWIxNzliNWNkY2ZlMjc4OGFhMS4uMWRmNmY1NjljZGQ5OTFhMjQwZGU4NWYzMzcyZDk2
ZWViNDI5NjVkOCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDY1IEBACisyMDEzLTAyLTA3ICBNaWtl
IFdlc3QgIDxta3dzdEBjaHJvbWl1bS5vcmc+CisKKyAgICAgICAgSW1wbGVtZW50IHNjcmlwdCBN
SU1FIHJlc3RyaWN0aW9ucyBmb3IgWC1Db250ZW50LVR5cGUtT3B0aW9uczogbm9zbmlmZgorICAg
ICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9NzE4NTEKKworICAg
ICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBUaGlzIHBhdGNoIGFk
ZHMgc3VwcG9ydCBmb3IgJ1gtQ29udGVudC1UeXBlLU9wdGlvbnM6IG5vc25pZmYnIHdoZW4KKyAg
ICAgICAgZGVjaWRpbmcgd2hldGhlciBvciBub3QgdG8gZXhlY3V0ZSBhIGdpdmVuIGNodW5rIG9m
IEphdmFTY3JpcHQuIElmIHRoZQorICAgICAgICBoZWFkZXIgaXMgcHJlc2VudCwgc2NyaXB0IHdp
bGwgb25seSBleGVjdXRlIGlmIGl0IG1hdGNoZXMgYSBwcmVkZWZpbmVkCisgICAgICAgIHNldCBv
ZiBNSU1FIHR5cGVzWzFdIHRoYXQgYXJlIGRlZW1lZCAiZXhlY3V0YWJsZSIuIFNjcmlwdHMgc2Vy
dmVkIHdpdGgKKyAgICAgICAgdHlwZXMgdGhhdCBkb24ndCBtYXRjaCB0aGUgbGlzdCB3aWxsIG5v
dCBleGVjdXRlLgorCisgICAgICAgIElFIGludHJvZHVjZWQgdGhpcyBmZWF0dXJlLCBhbmQgR2Vj
a28gaXMgd29ya2luZyBvbiBhbiBpbXBsZW1lbnRhdGlvblsyXQorICAgICAgICBub3cuIFRoZXJl
J3MgYmVlbiBzb21lIGRpc2N1c3Npb24gb24gdGhlIFdIQVRXRyBsaXN0IGFib3V0IGZvcm1hbGl6
aW5nCisgICAgICAgIHRoZSBzcGVjaWZpY2F0aW9uIGZvciB0aGlzIGZlYXR1cmVbM10sIGJ1dCBu
b3RoaW5nIHNpZ25pZmljYW50IGhhcyBiZWVuCisgICAgICAgIGRlY2lkZWQuCisKKyAgICAgICAg
VGhpcyBpbXBsZW1lbnRhdGlvbidzIGxpc3Qgb2YgYWNjZXB0aWJsZSBNSU1FIHR5cGVzIGRpZmZl
cnMgZnJvbSBJRSdzOgorICAgICAgICBpdCBtYXRjaGVzIHRoZSBsaXN0IG9mIHN1cHBvcnRlZCBK
YXZhU2NyaXB0IE1JTUUgdHlwZXMgZGVmaW5lZCBpbgorICAgICAgICBNSU1FVHlwZVJlZ2lzdHJ5
Ojppbml0aWFsaXplU3VwcG9ydGVkSmF2YVNjcmlwdE1JTUVUeXBlcygpWzRdLiBJbgorICAgICAg
ICBwYXJ0aWN1bGFyLCB0aGUgVkJTY3JpcHQgdHlwZXMgYXJlIG5vdCBhY2NlcHRlZCwgYW5kCisg
ICAgICAgICd0ZXh0L2phdmFzY3JpcHQxLnsxLDIsM30nIGFyZSBhY2NlcHRlZCwgYWxvbmcgd2l0
aCAndGV4dC9saXZlc2NyaXB0Jy4KKworICAgICAgICBUaGlzIGZlYXR1cmUgaXMgbG9ja2VkIHRp
Z2h0bHkgYmVoaW5kIHRoZSBFTkFCTEVfTk9TTklGRiBmbGFnLCB3aGljaCBpcworICAgICAgICBj
dXJyZW50bHkgb25seSBlbmFibGVkIG9uIHRoZSBDaHJvbWl1bSBwb3J0LgorCisgICAgICAgIFsx
XTogaHR0cDovL21zZG4ubWljcm9zb2Z0LmNvbS9lbi11cy9saWJyYXJ5L2dnNjIyOTQxKHY9dnMu
ODUpLmFzcHgKKyAgICAgICAgWzJdOiBodHRwczovL2J1Z3ppbGxhLm1vemlsbGEub3JnL3Nob3df
YnVnLmNnaT9pZD00NzEwMjAKKyAgICAgICAgWzNdOiBodHRwOi8vbGlzdHMud2hhdHdnLm9yZy9o
dGRpZy5jZ2kvd2hhdHdnLXdoYXR3Zy5vcmcvMjAxMi1Ob3ZlbWJlci8wMzc5NzQuaHRtbAorICAg
ICAgICBbNF06IGh0dHA6Ly90cmFjLndlYmtpdC5vcmcvYnJvd3Nlci90cnVuay9Tb3VyY2UvV2Vi
Q29yZS9wbGF0Zm9ybS9NSU1FVHlwZVJlZ2lzdHJ5LmNwcD9yZXY9MTQyMDg2I0wzMDcKKworICAg
ICAgICBUZXN0czogaHR0cC90ZXN0cy9zZWN1cml0eS9jb250ZW50VHlwZU9wdGlvbnMvaW52YWxp
ZC1jb250ZW50LXR5cGUtb3B0aW9ucy1hbGxvd2VkLmh0bWwKKyAgICAgICAgICAgICAgIGh0dHAv
dGVzdHMvc2VjdXJpdHkvY29udGVudFR5cGVPcHRpb25zL25vc25pZmYtc2NyaXB0LWFsbG93ZWQu
aHRtbAorICAgICAgICAgICAgICAgaHR0cC90ZXN0cy9zZWN1cml0eS9jb250ZW50VHlwZU9wdGlv
bnMvbm9zbmlmZi1zY3JpcHQtYmxvY2tlZC5odG1sCisgICAgICAgICAgICAgICBodHRwL3Rlc3Rz
L3NlY3VyaXR5L2NvbnRlbnRUeXBlT3B0aW9ucy9ub3NuaWZmLXNjcmlwdC13aXRob3V0LWNvbnRl
bnQtdHlwZS1hbGxvd2VkLmh0bWwKKworICAgICAgICAqIGRvbS9TY3JpcHRFbGVtZW50LmNwcDoK
KyAgICAgICAgKFdlYkNvcmU6OlNjcmlwdEVsZW1lbnQ6OmV4ZWN1dGVTY3JpcHQpOgorICAgICAg
ICAgICAgQmVmb3JlIGV4ZWN1dGluZyBzY3JpcHQsIGVuc3VyZSB0aGF0IGl0IHNob3VsZG4ndCBi
ZSBibG9ja2VkIGR1ZSB0bworICAgICAgICAgICAgaXRzIE1JTUUgdHlwZS4gSWYgaXQgaXMgYmxv
Y2tlZCwgd3JpdGUgYW4gZXJyb3IgbWVzc2FnZSB0byB0aGUKKyAgICAgICAgICAgIGNvbnNvbGUu
CisgICAgICAgICogbG9hZGVyL2NhY2hlL0NhY2hlZFNjcmlwdC5jcHA6CisgICAgICAgIChXZWJD
b3JlOjpDYWNoZWRTY3JpcHQ6Om1pbWVUeXBlKToKKyAgICAgICAgICAgIE1ha2Ugc2NyaXB0cycg
TUlNRSB0eXBlIGF2YWlsYWJsZSBvdXRzaWRlIHRoZSBjb250ZXh0IG9mCisgICAgICAgICAgICBD
YWNoZWRTY3JpcHQgaW4gb3JkZXIgdG8gY29ycmVjdGx5IHBvcHVsYXRlIGVycm9yIG1lc3NhZ2Vz
IHdlIHdyaXRlCisgICAgICAgICAgICB0byB0aGUgY29uc29sZSBpbiBTY3JpcHRFbGVtZW50Ojpl
eGVjdXRlU2NyaXB0CisgICAgICAgIChXZWJDb3JlKToKKyAgICAgICAgKFdlYkNvcmU6OkNhY2hl
ZFNjcmlwdDo6bWltZVR5cGVBbGxvd2VkQnlOb3NuaWZmKToKKyAgICAgICAgKiBsb2FkZXIvY2Fj
aGUvQ2FjaGVkU2NyaXB0Lmg6CisgICAgICAgIChDYWNoZWRTY3JpcHQpOgorICAgICAgICAgICAg
QSBuZXcgbWV0aG9kIHdoaWNoIGNoZWNrcyB0aGUgcmVzb3VyY2UncyBIVFRQIGhlYWRlcnMgdG8g
c2V0IHRoZQorICAgICAgICAgICAgJ25vc25pZmYnIGRpc3Bvc2l0aW9uLCBhbmQgY29tcGFyZXMg
dGhlIHJlc291cmNlJ3MgTUlNRSB0eXBlIGFnYWluc3QKKyAgICAgICAgICAgIHRoZSBsaXN0IG9m
IGFsbG93ZWQgZXhlY3V0YWJsZSB0eXBlcy4gUmV0dXJucyB0cnVlIGlmZiB0aGUgc2NyaXB0Cisg
ICAgICAgICAgICBpcyBhbGxvd2VkLgorICAgICAgICAqIHBsYXRmb3JtL25ldHdvcmsvSFRUUFBh
cnNlcnMuY3BwOgorICAgICAgICAoV2ViQ29yZSk6CisgICAgICAgIChXZWJDb3JlOjpwYXJzZUNv
bnRlbnRUeXBlT3B0aW9uc0hlYWRlcik6CisgICAgICAgICogcGxhdGZvcm0vbmV0d29yay9IVFRQ
UGFyc2Vycy5oOgorICAgICAgICAgICAgQWRkcyBhIG5ldyBlbnVtIHdoaWNoIHJlbGF0ZXMgdGhl
IHNuaWZmYWJsZSBzdGF0dXMgb2YgdGhlIHJlc291cmNlLAorICAgICAgICAgICAgYW5kIGEgbWV0
aG9kIHRvIHBhcnNlIHRoZSBIVFRQIGhlYWRlci4KKwogMjAxMy0wMi0wNyAgWXVyeSBTZW1pa2hh
dHNreSAgPHl1cnlzQGNocm9taXVtLm9yZz4KIAogICAgICAgICBXZWIgSW5zcGVjdG9yOiByZWR1
Y2UgbnVtYmVyIG9mIG5hdGl2ZSBtZW1vcnkgaW5zdHJ1bWVudGF0aW9uIGNhdGVnb3JpZXMKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2RvbS9TY3JpcHRFbGVtZW50LmNwcCBiL1NvdXJjZS9X
ZWJDb3JlL2RvbS9TY3JpcHRFbGVtZW50LmNwcAppbmRleCBhM2NhNjFiMjE1YWJiMjU2MzQ2OGIz
YTY5OTY5ODJjZmMyNmEwNGU2Li43M2Q4MmQxZGMxYjNhZDVkYmQ4MDRmNTRhODY3ZWIyNTAwZGNk
OGE4IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9kb20vU2NyaXB0RWxlbWVudC5jcHAKKysr
IGIvU291cmNlL1dlYkNvcmUvZG9tL1NjcmlwdEVsZW1lbnQuY3BwCkBAIC0yOTMsNiArMjkzLDEz
IEBAIHZvaWQgU2NyaXB0RWxlbWVudDo6ZXhlY3V0ZVNjcmlwdChjb25zdCBTY3JpcHRTb3VyY2VD
b2RlJiBzb3VyY2VDb2RlKQogICAgIGlmICghbV9pc0V4dGVybmFsU2NyaXB0ICYmICFtX2VsZW1l
bnQtPmRvY3VtZW50KCktPmNvbnRlbnRTZWN1cml0eVBvbGljeSgpLT5hbGxvd0lubGluZVNjcmlw
dChtX2VsZW1lbnQtPmRvY3VtZW50KCktPnVybCgpLCBtX3N0YXJ0TGluZU51bWJlcikpCiAgICAg
ICAgIHJldHVybjsKIAorI2lmIEVOQUJMRShOT1NOSUZGKQorICAgIGlmIChtX2lzRXh0ZXJuYWxT
Y3JpcHQgJiYgbV9jYWNoZWRTY3JpcHQgJiYgIW1fY2FjaGVkU2NyaXB0LT5taW1lVHlwZUFsbG93
ZWRCeU5vc25pZmYoKSkgeworICAgICAgICBtX2VsZW1lbnQtPmRvY3VtZW50KCktPmFkZENvbnNv
bGVNZXNzYWdlKEpTTWVzc2FnZVNvdXJjZSwgRXJyb3JNZXNzYWdlTGV2ZWwsICJSZWZ1c2VkIHRv
IGV4ZWN1dGUgc2NyaXB0IGZyb20gJyIgKyBtX2NhY2hlZFNjcmlwdC0+dXJsKCkuc3RyaW5nKCkg
KyAiJyBiZWNhdXNlIGl0cyBNSU1FIHR5cGUgKCciICsgbV9jYWNoZWRTY3JpcHQtPm1pbWVUeXBl
KCkgKyAiJykgaXMgbm90IGV4ZWN1dGFibGUsIGFuZCBzdHJpY3QgTUlNRSB0eXBlIGNoZWNraW5n
IGlzIGVuYWJsZWQuIik7CisgICAgICAgIHJldHVybjsKKyAgICB9CisjZW5kaWYKKwogICAgIFJl
ZlB0cjxEb2N1bWVudD4gZG9jdW1lbnQgPSBtX2VsZW1lbnQtPmRvY3VtZW50KCk7CiAgICAgQVNT
RVJUKGRvY3VtZW50KTsKICAgICBpZiAoRnJhbWUqIGZyYW1lID0gZG9jdW1lbnQtPmZyYW1lKCkp
IHsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9jYWNoZS9DYWNoZWRTY3JpcHQu
Y3BwIGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL2NhY2hlL0NhY2hlZFNjcmlwdC5jcHAKaW5kZXgg
NTAxZmY0YTNjMmZlYjdlNzM0NzY0NWMxNDk2NjBlY2ViYzc0NmU3Zi4uNDZlYzRjMWJmODRiNzNi
ZGI3NWQ3ODUwMjE1ZDY2NmFiNzFmZTgwMCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvbG9h
ZGVyL2NhY2hlL0NhY2hlZFNjcmlwdC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL2Nh
Y2hlL0NhY2hlZFNjcmlwdC5jcHAKQEAgLTI3LDkgKzI3LDExIEBACiAjaW5jbHVkZSAiY29uZmln
LmgiCiAjaW5jbHVkZSAiQ2FjaGVkU2NyaXB0LmgiCiAKLSNpbmNsdWRlICJNZW1vcnlDYWNoZS5o
IgogI2luY2x1ZGUgIkNhY2hlZFJlc291cmNlQ2xpZW50LmgiCiAjaW5jbHVkZSAiQ2FjaGVkUmVz
b3VyY2VDbGllbnRXYWxrZXIuaCIKKyNpbmNsdWRlICJIVFRQUGFyc2Vycy5oIgorI2luY2x1ZGUg
Ik1JTUVUeXBlUmVnaXN0cnkuaCIKKyNpbmNsdWRlICJNZW1vcnlDYWNoZS5oIgogI2luY2x1ZGUg
IlJlc291cmNlQnVmZmVyLmgiCiAjaW5jbHVkZSAiVGV4dFJlc291cmNlRGVjb2Rlci5oIgogI2lu
Y2x1ZGUgIldlYkNvcmVNZW1vcnlJbnN0cnVtZW50YXRpb24uaCIKQEAgLTY1LDYgKzY3LDExIEBA
IFN0cmluZyBDYWNoZWRTY3JpcHQ6OmVuY29kaW5nKCkgY29uc3QKICAgICByZXR1cm4gbV9kZWNv
ZGVyLT5lbmNvZGluZygpLm5hbWUoKTsKIH0KIAorU3RyaW5nIENhY2hlZFNjcmlwdDo6bWltZVR5
cGUoKSBjb25zdAoreworICAgIHJldHVybiBleHRyYWN0TUlNRVR5cGVGcm9tTWVkaWFUeXBlKG1f
cmVzcG9uc2UuaHR0cEhlYWRlckZpZWxkKCJDb250ZW50LVR5cGUiKSkubG93ZXIoKTsKK30KKwog
Y29uc3QgU3RyaW5nJiBDYWNoZWRTY3JpcHQ6OnNjcmlwdCgpCiB7CiAgICAgQVNTRVJUKCFpc1B1
cmdlYWJsZSgpKTsKQEAgLTExOSw2ICsxMjYsMTUgQEAgdm9pZCBDYWNoZWRTY3JpcHQ6OnNvdXJj
ZVByb3ZpZGVyQ2FjaGVTaXplQ2hhbmdlZChpbnQgZGVsdGEpCiB9CiAjZW5kaWYKIAorI2lmIEVO
QUJMRShOT1NOSUZGKQorYm9vbCBDYWNoZWRTY3JpcHQ6Om1pbWVUeXBlQWxsb3dlZEJ5Tm9zbmlm
ZigpIGNvbnN0Cit7CisgICAgaWYgKHBhcnNlQ29udGVudFR5cGVPcHRpb25zSGVhZGVyKG1fcmVz
cG9uc2UuaHR0cEhlYWRlckZpZWxkKCJYLUNvbnRlbnQtVHlwZS1PcHRpb25zIikpID09IENvbnRl
bnRUeXBlT3B0aW9uc05vc25pZmYgJiYgIU1JTUVUeXBlUmVnaXN0cnk6OmlzU3VwcG9ydGVkSmF2
YVNjcmlwdE1JTUVUeXBlKG1pbWVUeXBlKCkpKQorICAgICAgICByZXR1cm4gZmFsc2U7CisgICAg
cmV0dXJuIHRydWU7Cit9CisjZW5kaWYKKwogdm9pZCBDYWNoZWRTY3JpcHQ6OnJlcG9ydE1lbW9y
eVVzYWdlKE1lbW9yeU9iamVjdEluZm8qIG1lbW9yeU9iamVjdEluZm8pIGNvbnN0CiB7CiAgICAg
TWVtb3J5Q2xhc3NJbmZvIGluZm8obWVtb3J5T2JqZWN0SW5mbywgdGhpcywgV2ViQ29yZU1lbW9y
eVR5cGVzOjpDYWNoZWRSZXNvdXJjZVNjcmlwdCk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29y
ZS9sb2FkZXIvY2FjaGUvQ2FjaGVkU2NyaXB0LmggYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvY2Fj
aGUvQ2FjaGVkU2NyaXB0LmgKaW5kZXggYjg1MWJhZjI0MWYzZDUyNmI3NDhhY2E1ZGQwODk3YjI4
MjA4ZmE2NC4uZGRlMDlkOGE3ZWY3NTY1ZjM0ZGEzYzc3M2U0MWEyYzEzODVhNjA0ZSAxMDA2NDQK
LS0tIGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL2NhY2hlL0NhY2hlZFNjcmlwdC5oCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL2xvYWRlci9jYWNoZS9DYWNoZWRTY3JpcHQuaApAQCAtNDksNiArNDksNyBA
QCBuYW1lc3BhY2UgV2ViQ29yZSB7CiAgICAgICAgIHZpcnR1YWwgdm9pZCBzZXRFbmNvZGluZyhj
b25zdCBTdHJpbmcmKTsKICAgICAgICAgdmlydHVhbCBTdHJpbmcgZW5jb2RpbmcoKSBjb25zdDsK
ICAgICAgICAgdmlydHVhbCB2b2lkIGRhdGEoUGFzc1JlZlB0cjxSZXNvdXJjZUJ1ZmZlcj4gZGF0
YSwgYm9vbCBhbGxEYXRhUmVjZWl2ZWQpOworICAgICAgICBTdHJpbmcgbWltZVR5cGUoKSBjb25z
dDsKIAogICAgICAgICB2aXJ0dWFsIHZvaWQgZGVzdHJveURlY29kZWREYXRhKCk7CiAjaWYgVVNF
KEpTQykgICAgICAgIApAQCAtNTYsNiArNTcsOSBAQCBuYW1lc3BhY2UgV2ViQ29yZSB7CiAgICAg
ICAgIEpTQzo6U291cmNlUHJvdmlkZXJDYWNoZSogc291cmNlUHJvdmlkZXJDYWNoZSgpIGNvbnN0
OwogICAgICAgICB2b2lkIHNvdXJjZVByb3ZpZGVyQ2FjaGVTaXplQ2hhbmdlZChpbnQgZGVsdGEp
OwogI2VuZGlmCisjaWYgRU5BQkxFKE5PU05JRkYpCisgICAgICAgIGJvb2wgbWltZVR5cGVBbGxv
d2VkQnlOb3NuaWZmKCkgY29uc3Q7CisjZW5kaWYKIAogICAgICAgICB2aXJ0dWFsIHZvaWQgcmVw
b3J0TWVtb3J5VXNhZ2UoTWVtb3J5T2JqZWN0SW5mbyopIGNvbnN0IE9WRVJSSURFOwogCmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9uZXR3b3JrL0hUVFBQYXJzZXJzLmNwcCBi
L1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL25ldHdvcmsvSFRUUFBhcnNlcnMuY3BwCmluZGV4IGJh
NDdkMjIwZjMyZDdhNjZiYTg3ZmZkZTkzZmRkMjE0NTJhODMwNjMuLjdlMzFjZjU1Yzg5NjY5YTkw
ZmQyMWFiNDI3YTNkNjM2ZDI2NjBkZTYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRm
b3JtL25ldHdvcmsvSFRUUFBhcnNlcnMuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3Jt
L25ldHdvcmsvSFRUUFBhcnNlcnMuY3BwCkBAIC00MjksNiArNDI5LDE1IEBAIFhTU1Byb3RlY3Rp
b25EaXNwb3NpdGlvbiBwYXJzZVhTU1Byb3RlY3Rpb25IZWFkZXIoY29uc3QgU3RyaW5nJiBoZWFk
ZXIsIFN0cmluZyYKICAgICB9CiB9CiAKKyNpZiBFTkFCTEUoTk9TTklGRikKK0NvbnRlbnRUeXBl
T3B0aW9uc0Rpc3Bvc2l0aW9uIHBhcnNlQ29udGVudFR5cGVPcHRpb25zSGVhZGVyKGNvbnN0IFN0
cmluZyYgaGVhZGVyKQoreworICAgIGlmIChoZWFkZXIuc3RyaXBXaGl0ZVNwYWNlKCkubG93ZXIo
KSA9PSAibm9zbmlmZiIpCisgICAgICAgIHJldHVybiBDb250ZW50VHlwZU9wdGlvbnNOb3NuaWZm
OworICAgIHJldHVybiBDb250ZW50VHlwZU9wdGlvbnNOb25lOworfQorI2VuZGlmCisKIFN0cmlu
ZyBleHRyYWN0UmVhc29uUGhyYXNlRnJvbUhUVFBTdGF0dXNMaW5lKGNvbnN0IFN0cmluZyYgc3Rh
dHVzTGluZSkKIHsKICAgICBzaXplX3Qgc3BhY2VQb3MgPSBzdGF0dXNMaW5lLmZpbmQoJyAnKTsK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL25ldHdvcmsvSFRUUFBhcnNlcnMu
aCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL25ldHdvcmsvSFRUUFBhcnNlcnMuaAppbmRleCA2
MTFhYmFlODBmZTgxNTQyMTQ3MzgwMmEyMjA3OWFmMmU1MmVlMDU3Li4wYTQzMDJmMWFhYzcwYTIy
MGNjMTRiMDE5MzJiMGFhMDMxNTg5M2ZkIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0
Zm9ybS9uZXR3b3JrL0hUVFBQYXJzZXJzLmgKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0v
bmV0d29yay9IVFRQUGFyc2Vycy5oCkBAIC01Myw2ICs1MywxMyBAQCB0eXBlZGVmIGVudW0gewog
ICAgIENvbnRlbnREaXNwb3NpdGlvbk90aGVyCiB9IENvbnRlbnREaXNwb3NpdGlvblR5cGU7CiAK
KyNpZiBFTkFCTEUoTk9TTklGRikKK2VudW0gQ29udGVudFR5cGVPcHRpb25zRGlzcG9zaXRpb24g
eworICAgIENvbnRlbnRUeXBlT3B0aW9uc05vbmUsCisgICAgQ29udGVudFR5cGVPcHRpb25zTm9z
bmlmZgorfTsKKyNlbmRpZgorCiBDb250ZW50RGlzcG9zaXRpb25UeXBlIGNvbnRlbnREaXNwb3Np
dGlvblR5cGUoY29uc3QgU3RyaW5nJik7CiBib29sIGlzUkZDMjYxNlRva2VuKGNvbnN0IFN0cmlu
ZyYpOwogYm9vbCBwYXJzZUhUVFBSZWZyZXNoKGNvbnN0IFN0cmluZyYgcmVmcmVzaCwgYm9vbCBm
cm9tSHR0cEVxdWl2TWV0YSwgZG91YmxlJiBkZWxheSwgU3RyaW5nJiB1cmwpOwpAQCAtNjcsNiAr
NzQsMTAgQEAgU3RyaW5nIGV4dHJhY3RSZWFzb25QaHJhc2VGcm9tSFRUUFN0YXR1c0xpbmUoY29u
c3QgU3RyaW5nJik7CiAvLyAtMSBjb3VsZCBiZSBzZXQgdG8gb25lIG9mIHRoZSByZXR1cm4gcGFy
YW1ldGVycyB0byBpbmRpY2F0ZSB0aGUgdmFsdWUgaXMgbm90IHNwZWNpZmllZC4KIGJvb2wgcGFy
c2VSYW5nZShjb25zdCBTdHJpbmcmLCBsb25nIGxvbmcmIHJhbmdlT2Zmc2V0LCBsb25nIGxvbmcm
IHJhbmdlRW5kLCBsb25nIGxvbmcmIHJhbmdlU3VmZml4TGVuZ3RoKTsKIAorI2lmIEVOQUJMRShO
T1NOSUZGKQorQ29udGVudFR5cGVPcHRpb25zRGlzcG9zaXRpb24gcGFyc2VDb250ZW50VHlwZU9w
dGlvbnNIZWFkZXIoY29uc3QgU3RyaW5nJiBoZWFkZXIpOworI2VuZGlmCisKIC8vIFBhcnNpbmcg
Q29tcGxldGUgSFRUUCBNZXNzYWdlcy4KIGVudW0gSFRUUFZlcnNpb24geyBVbmtub3duLCBIVFRQ
XzFfMCwgSFRUUF8xXzEgfTsKIHNpemVfdCBwYXJzZUhUVFBSZXF1ZXN0TGluZShjb25zdCBjaGFy
KiBkYXRhLCBzaXplX3QgbGVuZ3RoLCBTdHJpbmcmIGZhaWx1cmVSZWFzb24sIFN0cmluZyYgbWV0
aG9kLCBTdHJpbmcmIHVybCwgSFRUUFZlcnNpb24mKTsKZGlmZiAtLWdpdCBhL0xheW91dFRlc3Rz
L0NoYW5nZUxvZyBiL0xheW91dFRlc3RzL0NoYW5nZUxvZwppbmRleCBmM2ZkOTQ4OTQ0MWM1Yzg2
NGMxNDgwMTZhZTFkY2UyY2UzYWRiNTNkLi45OTJkMTBhOTcxYjY1NjcxYjJmZjI1YzBmNzIzZTYx
NjE5YWM1YTVkIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKKysrIGIvTGF5b3V0
VGVzdHMvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMzAgQEAKKzIwMTMtMDItMDcgIE1pa2UgV2VzdCAg
PG1rd3N0QGNocm9taXVtLm9yZz4KKworICAgICAgICBJbXBsZW1lbnQgc2NyaXB0IE1JTUUgcmVz
dHJpY3Rpb25zIGZvciBYLUNvbnRlbnQtVHlwZS1PcHRpb25zOiBub3NuaWZmCisgICAgICAgIGh0
dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD03MTg1MQorCisgICAgICAgIFJl
dmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgICogaHR0cC90ZXN0cy9zZWN1cml0
eS9jb250ZW50VHlwZU9wdGlvbnMvaW52YWxpZC1jb250ZW50LXR5cGUtb3B0aW9ucy1hbGxvd2Vk
LWV4cGVjdGVkLnR4dDogQWRkZWQuCisgICAgICAgICogaHR0cC90ZXN0cy9zZWN1cml0eS9jb250
ZW50VHlwZU9wdGlvbnMvaW52YWxpZC1jb250ZW50LXR5cGUtb3B0aW9ucy1hbGxvd2VkLmh0bWw6
IEFkZGVkLgorICAgICAgICAqIGh0dHAvdGVzdHMvc2VjdXJpdHkvY29udGVudFR5cGVPcHRpb25z
L25vc25pZmYtc2NyaXB0LWFsbG93ZWQtZXhwZWN0ZWQudHh0OiBBZGRlZC4KKyAgICAgICAgKiBo
dHRwL3Rlc3RzL3NlY3VyaXR5L2NvbnRlbnRUeXBlT3B0aW9ucy9ub3NuaWZmLXNjcmlwdC1hbGxv
d2VkLmh0bWw6IEFkZGVkLgorICAgICAgICAqIGh0dHAvdGVzdHMvc2VjdXJpdHkvY29udGVudFR5
cGVPcHRpb25zL25vc25pZmYtc2NyaXB0LWJsb2NrZWQtZXhwZWN0ZWQudHh0OiBBZGRlZC4KKyAg
ICAgICAgKiBodHRwL3Rlc3RzL3NlY3VyaXR5L2NvbnRlbnRUeXBlT3B0aW9ucy9ub3NuaWZmLXNj
cmlwdC1ibG9ja2VkLmh0bWw6IEFkZGVkLgorICAgICAgICAqIGh0dHAvdGVzdHMvc2VjdXJpdHkv
Y29udGVudFR5cGVPcHRpb25zL25vc25pZmYtc2NyaXB0LXdpdGhvdXQtY29udGVudC10eXBlLWJs
b2NrZWQtZXhwZWN0ZWQudHh0OiBBZGRlZC4KKyAgICAgICAgKiBodHRwL3Rlc3RzL3NlY3VyaXR5
L2NvbnRlbnRUeXBlT3B0aW9ucy9ub3NuaWZmLXNjcmlwdC13aXRob3V0LWNvbnRlbnQtdHlwZS1i
bG9ja2VkLmh0bWw6IEFkZGVkLgorICAgICAgICAqIGh0dHAvdGVzdHMvc2VjdXJpdHkvY29udGVu
dFR5cGVPcHRpb25zL3Jlc291cmNlcy9zY3JpcHQtd2l0aC1oZWFkZXIucGw6IEFkZGVkLgorICAg
ICAgICAgICAgTmV3IHRlc3RzIQorICAgICAgICAqIHBsYXRmb3JtL2VmbC9UZXN0RXhwZWN0YXRp
b25zOgorICAgICAgICAqIHBsYXRmb3JtL2d0ay9UZXN0RXhwZWN0YXRpb25zOgorICAgICAgICAq
IHBsYXRmb3JtL21hYy9UZXN0RXhwZWN0YXRpb25zOgorICAgICAgICAqIHBsYXRmb3JtL3F0L1Rl
c3RFeHBlY3RhdGlvbnM6CisgICAgICAgICogcGxhdGZvcm0vd2luL1Rlc3RFeHBlY3RhdGlvbnM6
CisgICAgICAgICogcGxhdGZvcm0vd2luY2Fpcm8vVGVzdEV4cGVjdGF0aW9uczoKKyAgICAgICAg
KiBwbGF0Zm9ybS93azIvVGVzdEV4cGVjdGF0aW9uczoKKyAgICAgICAgICAgIFNraXAgdGhlIG5l
dyB0ZXN0cyBvbiBwbGF0Zm9ybXMgd2hlcmUgRU5BQkxFX05PU05JRkYgaXNuJ3QgeWV0CisgICAg
ICAgICAgICBlbmFibGVkIChldmVyeXRoaW5nIG90aGVyIHRoYW4gQ2hyb21pdW0pLgorCiAyMDEz
LTAyLTA3ICDDgWTDoW0gS2FsbGFpICA8a2FkYW1AaW5mLnUtc3plZ2VkLmh1PgogCiAgICAgICAg
IFtRdF0gVW5yZXZpZXdlZCBnYXJkZW5pbmcuIFNraXAgZmFpbGluZyBXZWJHTCB0ZXN0cy4KZGlm
ZiAtLWdpdCBhL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvc2VjdXJpdHkvY29udGVudFR5cGVPcHRp
b25zL2ludmFsaWQtY29udGVudC10eXBlLW9wdGlvbnMtYWxsb3dlZC1leHBlY3RlZC50eHQgYi9M
YXlvdXRUZXN0cy9odHRwL3Rlc3RzL3NlY3VyaXR5L2NvbnRlbnRUeXBlT3B0aW9ucy9pbnZhbGlk
LWNvbnRlbnQtdHlwZS1vcHRpb25zLWFsbG93ZWQtZXhwZWN0ZWQudHh0Cm5ldyBmaWxlIG1vZGUg
MTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjc5
YmE1M2JkYmZhYWRhMTQ5NjcyZjAzM2RkMzlhOTc5MDNkZjgyYmIKLS0tIC9kZXYvbnVsbAorKysg
Yi9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3NlY3VyaXR5L2NvbnRlbnRUeXBlT3B0aW9ucy9pbnZh
bGlkLWNvbnRlbnQtdHlwZS1vcHRpb25zLWFsbG93ZWQtZXhwZWN0ZWQudHh0CkBAIC0wLDAgKzEs
MTYgQEAKK0NPTlNPTEUgTUVTU0FHRTogbGluZSAxOiBFeGVjdXRlZCBzY3JpcHQgd2l0aCBNSU1F
IHR5cGU6ICdhcHBsaWNhdGlvbi9qc29uJy4KK0NPTlNPTEUgTUVTU0FHRTogbGluZSAxOiBFeGVj
dXRlZCBzY3JpcHQgd2l0aCBNSU1FIHR5cGU6ICdpbWFnZS9wbmcnLgorQ09OU09MRSBNRVNTQUdF
OiBsaW5lIDE6IEV4ZWN1dGVkIHNjcmlwdCB3aXRoIE1JTUUgdHlwZTogJ3RleHQvaHRtbCcuCitD
T05TT0xFIE1FU1NBR0U6IGxpbmUgMTogRXhlY3V0ZWQgc2NyaXB0IHdpdGggTUlNRSB0eXBlOiAn
dGV4dC92YnMnLgorQ09OU09MRSBNRVNTQUdFOiBsaW5lIDE6IEV4ZWN1dGVkIHNjcmlwdCB3aXRo
IE1JTUUgdHlwZTogJ3RleHQvdmJzY3JpcHQnLgorQ09OU09MRSBNRVNTQUdFOiBsaW5lIDE6IEV4
ZWN1dGVkIHNjcmlwdCB3aXRoIE1JTUUgdHlwZTogJ3RleHQveC1qYXZhc2NyaXB0Jy4KK0NoZWNr
IHRoYXQgc2NyaXB0IHNlbnQgd2l0aCBhbiBpbnZhbGlkICdYLUNvbnRlbnQtVHlwZS1PcHRpb25z
OiBub3NuaWZmJyBoZWFkZXIgaXMgY29ycmVjdGx5IGFsbG93ZWQsIGV2ZW4gaWYgdGhlIE1JTUUg
dHlwZSBpc24ndCBzY3JpcHR5LgorCitPbiBzdWNjZXNzLCB5b3Ugd2lsbCBzZWUgYSBzZXJpZXMg
b2YgIlBBU1MiIG1lc3NhZ2VzLCBmb2xsb3dlZCBieSAiVEVTVCBDT01QTEVURSIuCisKKworUEFT
UyB3aW5kb3cuc2NyaXB0c1N1Y2Nlc3NmdWxseUxvYWRlZCBpcyB1bnNjcmlwdHlNaW1lVHlwZXMu
bGVuZ3RoCitQQVNTIHN1Y2Nlc3NmdWxseVBhcnNlZCBpcyB0cnVlCisKK1RFU1QgQ09NUExFVEUK
KwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9zZWN1cml0eS9jb250ZW50VHlw
ZU9wdGlvbnMvaW52YWxpZC1jb250ZW50LXR5cGUtb3B0aW9ucy1hbGxvd2VkLmh0bWwgYi9MYXlv
dXRUZXN0cy9odHRwL3Rlc3RzL3NlY3VyaXR5L2NvbnRlbnRUeXBlT3B0aW9ucy9pbnZhbGlkLWNv
bnRlbnQtdHlwZS1vcHRpb25zLWFsbG93ZWQuaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRl
eCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi41N2E2YzI2NWY5MTJl
MmVmMWJhMzVkNzcyMzYyN2U5NDUyY2QxZjcyCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVz
dHMvaHR0cC90ZXN0cy9zZWN1cml0eS9jb250ZW50VHlwZU9wdGlvbnMvaW52YWxpZC1jb250ZW50
LXR5cGUtb3B0aW9ucy1hbGxvd2VkLmh0bWwKQEAgLTAsMCArMSwzMyBAQAorPCFET0NUWVBFIGh0
bWw+Cis8aHRtbD4KKzxoZWFkPgorICAgIDx0aXRsZT4nWC1Db250ZW50LVR5cGUtT3B0aW9uczog
bm9zbmlmZjsnIGJsb2NrcyBzY3JpcHRzITwvdGl0bGU+Cis8Ym9keT4KKyAgICA8c2NyaXB0IHNy
Yz0iL2pzLXRlc3QtcmVzb3VyY2VzL2pzLXRlc3QtcHJlLmpzIj48L3NjcmlwdD4KKyAgICA8c2Ny
aXB0PgorICAgICAgICBkZXNjcmlwdGlvbignQ2hlY2sgdGhhdCBzY3JpcHQgc2VudCB3aXRoIGFu
IGludmFsaWQgXCdYLUNvbnRlbnQtVHlwZS1PcHRpb25zOiBub3NuaWZmXCcgaGVhZGVyIGlzIGNv
cnJlY3RseSBhbGxvd2VkLCBldmVuIGlmIHRoZSBNSU1FIHR5cGUgaXNuXCd0IHNjcmlwdHkuJyk7
CisgICAgICAgIHdpbmRvdy5qc1Rlc3RJc0FzeW5jID0gdHJ1ZTsKKworICAgICAgICB2YXIgdW5z
Y3JpcHR5TWltZVR5cGVzID0gWworICAgICAgICAgICAgJ2FwcGxpY2F0aW9uL2pzb24nLAorICAg
ICAgICAgICAgJ2ltYWdlL3BuZycsCisgICAgICAgICAgICAndGV4dC9odG1sJywKKyAgICAgICAg
ICAgICd0ZXh0L3ZicycsCisgICAgICAgICAgICAndGV4dC92YnNjcmlwdCcsCisgICAgICAgICAg
ICAndGV4dC94LWphdmFzY3JpcHQnLAorICAgICAgICBdOworCisgICAgICAgIHdpbmRvdy5zY3Jp
cHRzU3VjY2Vzc2Z1bGx5TG9hZGVkID0gMDsKKworICAgICAgICBmb3IgKHZhciBpID0gMDsgaSA8
IHVuc2NyaXB0eU1pbWVUeXBlcy5sZW5ndGg7IGkrKykgeworICAgICAgICAgICAgZG9jdW1lbnQu
d3JpdGUoJzxzY3JpcHQgc3JjPSIuL3Jlc291cmNlcy9zY3JpcHQtd2l0aC1oZWFkZXIucGw/bWlt
ZT0nICsgdW5zY3JpcHR5TWltZVR5cGVzW2ldICsgJyZhbXA7b3B0aW9ucz1pbnZhbGlkIj48JyAr
ICcvc2NyaXB0PicpOworICAgICAgICB9CisKKyAgICAgICAgd2luZG93Lm9ubG9hZCA9IGZ1bmN0
aW9uICgpIHsKKyAgICAgICAgICAgIHNob3VsZEJlKCd3aW5kb3cuc2NyaXB0c1N1Y2Nlc3NmdWxs
eUxvYWRlZCcsICd1bnNjcmlwdHlNaW1lVHlwZXMubGVuZ3RoJyk7CisgICAgICAgICAgICBmaW5p
c2hKU1Rlc3QoKTsKKyAgICAgICAgfTsKKyAgICA8L3NjcmlwdD4KKyAgICA8c2NyaXB0IHNyYz0i
L2pzLXRlc3QtcmVzb3VyY2VzL2pzLXRlc3QtcG9zdC5qcyI+PC9zY3JpcHQ+Cis8L2JvZHk+Cis8
L2h0bWw+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3NlY3VyaXR5L2NvbnRl
bnRUeXBlT3B0aW9ucy9ub3NuaWZmLXNjcmlwdC1hbGxvd2VkLWV4cGVjdGVkLnR4dCBiL0xheW91
dFRlc3RzL2h0dHAvdGVzdHMvc2VjdXJpdHkvY29udGVudFR5cGVPcHRpb25zL25vc25pZmYtc2Ny
aXB0LWFsbG93ZWQtZXhwZWN0ZWQudHh0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmExYjE5OTAxOWY4MjA4MDIzYzE4
ZTU5ZmU4MTdkYzdkZjQwM2NkMmYKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9odHRw
L3Rlc3RzL3NlY3VyaXR5L2NvbnRlbnRUeXBlT3B0aW9ucy9ub3NuaWZmLXNjcmlwdC1hbGxvd2Vk
LWV4cGVjdGVkLnR4dApAQCAtMCwwICsxLDIwIEBACitDT05TT0xFIE1FU1NBR0U6IGxpbmUgMTog
RXhlY3V0ZWQgc2NyaXB0IHdpdGggTUlNRSB0eXBlOiAndGV4dC9qYXZhc2NyaXB0MS4xJy4KK0NP
TlNPTEUgTUVTU0FHRTogbGluZSAxOiBFeGVjdXRlZCBzY3JpcHQgd2l0aCBNSU1FIHR5cGU6ICd0
ZXh0L2phdmFzY3JpcHQxLjInLgorQ09OU09MRSBNRVNTQUdFOiBsaW5lIDE6IEV4ZWN1dGVkIHNj
cmlwdCB3aXRoIE1JTUUgdHlwZTogJ3RleHQvamF2YXNjcmlwdDEuMycuCitDT05TT0xFIE1FU1NB
R0U6IGxpbmUgMTogRXhlY3V0ZWQgc2NyaXB0IHdpdGggTUlNRSB0eXBlOiAndGV4dC9saXZlc2Ny
aXB0Jy4KK0NPTlNPTEUgTUVTU0FHRTogbGluZSAxOiBFeGVjdXRlZCBzY3JpcHQgd2l0aCBNSU1F
IHR5cGU6ICdhcHBsaWNhdGlvbi9lY21hc2NyaXB0Jy4KK0NPTlNPTEUgTUVTU0FHRTogbGluZSAx
OiBFeGVjdXRlZCBzY3JpcHQgd2l0aCBNSU1FIHR5cGU6ICdhcHBsaWNhdGlvbi9qYXZhc2NyaXB0
Jy4KK0NPTlNPTEUgTUVTU0FHRTogbGluZSAxOiBFeGVjdXRlZCBzY3JpcHQgd2l0aCBNSU1FIHR5
cGU6ICdhcHBsaWNhdGlvbi94LWphdmFzY3JpcHQnLgorQ09OU09MRSBNRVNTQUdFOiBsaW5lIDE6
IEV4ZWN1dGVkIHNjcmlwdCB3aXRoIE1JTUUgdHlwZTogJ3RleHQvZWNtYXNjcmlwdCcuCitDT05T
T0xFIE1FU1NBR0U6IGxpbmUgMTogRXhlY3V0ZWQgc2NyaXB0IHdpdGggTUlNRSB0eXBlOiAndGV4
dC9qYXZhc2NyaXB0Jy4KK0NPTlNPTEUgTUVTU0FHRTogbGluZSAxOiBFeGVjdXRlZCBzY3JpcHQg
d2l0aCBNSU1FIHR5cGU6ICd0ZXh0L2pzY3JpcHQnLgorQ2hlY2sgdGhhdCBzY3JpcHQgc2VudCB3
aXRoIGFuICdYLUNvbnRlbnQtVHlwZS1PcHRpb25zOiBub3NuaWZmJyBoZWFkZXIgaXMgY29ycmVj
dGx5IGFsbG93ZWQgaWYgdGhlIE1JTUUgdHlwZSBpcyBzY3JpcHR5LgorCitPbiBzdWNjZXNzLCB5
b3Ugd2lsbCBzZWUgYSBzZXJpZXMgb2YgIlBBU1MiIG1lc3NhZ2VzLCBmb2xsb3dlZCBieSAiVEVT
VCBDT01QTEVURSIuCisKKworUEFTUyB3aW5kb3cuc2NyaXB0c1N1Y2Nlc3NmdWxseUxvYWRlZCBp
cyBzY3JpcHR5TWltZVR5cGVzLmxlbmd0aAorUEFTUyBzdWNjZXNzZnVsbHlQYXJzZWQgaXMgdHJ1
ZQorCitURVNUIENPTVBMRVRFCisKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2h0dHAvdGVzdHMv
c2VjdXJpdHkvY29udGVudFR5cGVPcHRpb25zL25vc25pZmYtc2NyaXB0LWFsbG93ZWQuaHRtbCBi
L0xheW91dFRlc3RzL2h0dHAvdGVzdHMvc2VjdXJpdHkvY29udGVudFR5cGVPcHRpb25zL25vc25p
ZmYtc2NyaXB0LWFsbG93ZWQuaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi40OGJlYzE3NWIyYzZiZDhkODFmMjc0
MmE1YzcyMjEzMTE2MWJlNWU4Ci0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvaHR0cC90
ZXN0cy9zZWN1cml0eS9jb250ZW50VHlwZU9wdGlvbnMvbm9zbmlmZi1zY3JpcHQtYWxsb3dlZC5o
dG1sCkBAIC0wLDAgKzEsMzcgQEAKKzwhRE9DVFlQRSBodG1sPgorPGh0bWw+Cis8aGVhZD4KKyAg
ICA8dGl0bGU+J1gtQ29udGVudC1UeXBlLU9wdGlvbnM6IG5vc25pZmY7JyBhbGxvd3Mgc2NyaXB0
cyE8L3RpdGxlPgorPGJvZHk+CisgICAgPHNjcmlwdCBzcmM9Ii9qcy10ZXN0LXJlc291cmNlcy9q
cy10ZXN0LXByZS5qcyI+PC9zY3JpcHQ+CisgICAgPHNjcmlwdD4KKyAgICAgICAgZGVzY3JpcHRp
b24oJ0NoZWNrIHRoYXQgc2NyaXB0IHNlbnQgd2l0aCBhbiBcJ1gtQ29udGVudC1UeXBlLU9wdGlv
bnM6IG5vc25pZmZcJyBoZWFkZXIgaXMgY29ycmVjdGx5IGFsbG93ZWQgaWYgdGhlIE1JTUUgdHlw
ZSBpcyBzY3JpcHR5LicpOworICAgICAgICB3aW5kb3cuanNUZXN0SXNBc3luYyA9IHRydWU7CisK
KyAgICAgICAgdmFyIHNjcmlwdHlNaW1lVHlwZXMgPSBbCisgICAgICAgICAgICAidGV4dC9qYXZh
c2NyaXB0MS4xIiwKKyAgICAgICAgICAgICJ0ZXh0L2phdmFzY3JpcHQxLjIiLAorICAgICAgICAg
ICAgInRleHQvamF2YXNjcmlwdDEuMyIsCisgICAgICAgICAgICAidGV4dC9saXZlc2NyaXB0IiwK
KyAgICAgICAgICAgICdhcHBsaWNhdGlvbi9lY21hc2NyaXB0JywKKyAgICAgICAgICAgICdhcHBs
aWNhdGlvbi9qYXZhc2NyaXB0JywKKyAgICAgICAgICAgICdhcHBsaWNhdGlvbi94LWphdmFzY3Jp
cHQnLAorICAgICAgICAgICAgJ3RleHQvZWNtYXNjcmlwdCcsCisgICAgICAgICAgICAndGV4dC9q
YXZhc2NyaXB0JywKKyAgICAgICAgICAgICd0ZXh0L2pzY3JpcHQnLAorICAgICAgICBdOworCisg
ICAgICAgIHdpbmRvdy5zY3JpcHRzU3VjY2Vzc2Z1bGx5TG9hZGVkID0gMDsKKworICAgICAgICBm
b3IgKHZhciBpID0gMDsgaSA8IHNjcmlwdHlNaW1lVHlwZXMubGVuZ3RoOyBpKyspIHsKKyAgICAg
ICAgICAgIGRvY3VtZW50LndyaXRlKCc8c2NyaXB0IHNyYz0iLi9yZXNvdXJjZXMvc2NyaXB0LXdp
dGgtaGVhZGVyLnBsP21pbWU9JyArIHNjcmlwdHlNaW1lVHlwZXNbaV0gKyAnIj48JyArICcvc2Ny
aXB0PicpOworICAgICAgICB9CisKKyAgICAgICAgd2luZG93Lm9ubG9hZCA9IGZ1bmN0aW9uICgp
IHsKKyAgICAgICAgICAgIHNob3VsZEJlKCd3aW5kb3cuc2NyaXB0c1N1Y2Nlc3NmdWxseUxvYWRl
ZCcsICdzY3JpcHR5TWltZVR5cGVzLmxlbmd0aCcpOworICAgICAgICAgICAgZmluaXNoSlNUZXN0
KCk7CisgICAgICAgIH07CisgICAgPC9zY3JpcHQ+CisgICAgPHNjcmlwdCBzcmM9Ii9qcy10ZXN0
LXJlc291cmNlcy9qcy10ZXN0LXBvc3QuanMiPjwvc2NyaXB0PgorPC9ib2R5PgorPC9odG1sPgpk
aWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9zZWN1cml0eS9jb250ZW50VHlwZU9w
dGlvbnMvbm9zbmlmZi1zY3JpcHQtYmxvY2tlZC1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9o
dHRwL3Rlc3RzL3NlY3VyaXR5L2NvbnRlbnRUeXBlT3B0aW9ucy9ub3NuaWZmLXNjcmlwdC1ibG9j
a2VkLWV4cGVjdGVkLnR4dApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi42OTM1ZTQ2ZWUxZGFiY2FiZWFjZTFkZjk0MTgw
ZTk3ZTJhNGQxYzAxCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9z
ZWN1cml0eS9jb250ZW50VHlwZU9wdGlvbnMvbm9zbmlmZi1zY3JpcHQtYmxvY2tlZC1leHBlY3Rl
ZC50eHQKQEAgLTAsMCArMSwxNiBAQAorQ09OU09MRSBNRVNTQUdFOiBSZWZ1c2VkIHRvIGV4ZWN1
dGUgc2NyaXB0IGZyb20gJ2h0dHA6Ly8xMjcuMC4wLjE6ODAwMC9zZWN1cml0eS9jb250ZW50VHlw
ZU9wdGlvbnMvcmVzb3VyY2VzL3NjcmlwdC13aXRoLWhlYWRlci5wbD9taW1lPWFwcGxpY2F0aW9u
L2pzb24nIGJlY2F1c2UgaXRzIE1JTUUgdHlwZSAoJ2FwcGxpY2F0aW9uL2pzb24nKSBpcyBub3Qg
ZXhlY3V0YWJsZSwgYW5kIHN0cmljdCBNSU1FIHR5cGUgY2hlY2tpbmcgaXMgZW5hYmxlZC4KK0NP
TlNPTEUgTUVTU0FHRTogUmVmdXNlZCB0byBleGVjdXRlIHNjcmlwdCBmcm9tICdodHRwOi8vMTI3
LjAuMC4xOjgwMDAvc2VjdXJpdHkvY29udGVudFR5cGVPcHRpb25zL3Jlc291cmNlcy9zY3JpcHQt
d2l0aC1oZWFkZXIucGw/bWltZT1pbWFnZS9wbmcnIGJlY2F1c2UgaXRzIE1JTUUgdHlwZSAoJ2lt
YWdlL3BuZycpIGlzIG5vdCBleGVjdXRhYmxlLCBhbmQgc3RyaWN0IE1JTUUgdHlwZSBjaGVja2lu
ZyBpcyBlbmFibGVkLgorQ09OU09MRSBNRVNTQUdFOiBSZWZ1c2VkIHRvIGV4ZWN1dGUgc2NyaXB0
IGZyb20gJ2h0dHA6Ly8xMjcuMC4wLjE6ODAwMC9zZWN1cml0eS9jb250ZW50VHlwZU9wdGlvbnMv
cmVzb3VyY2VzL3NjcmlwdC13aXRoLWhlYWRlci5wbD9taW1lPXRleHQvaHRtbCcgYmVjYXVzZSBp
dHMgTUlNRSB0eXBlICgndGV4dC9odG1sJykgaXMgbm90IGV4ZWN1dGFibGUsIGFuZCBzdHJpY3Qg
TUlNRSB0eXBlIGNoZWNraW5nIGlzIGVuYWJsZWQuCitDT05TT0xFIE1FU1NBR0U6IFJlZnVzZWQg
dG8gZXhlY3V0ZSBzY3JpcHQgZnJvbSAnaHR0cDovLzEyNy4wLjAuMTo4MDAwL3NlY3VyaXR5L2Nv
bnRlbnRUeXBlT3B0aW9ucy9yZXNvdXJjZXMvc2NyaXB0LXdpdGgtaGVhZGVyLnBsP21pbWU9dGV4
dC92YnMnIGJlY2F1c2UgaXRzIE1JTUUgdHlwZSAoJ3RleHQvdmJzJykgaXMgbm90IGV4ZWN1dGFi
bGUsIGFuZCBzdHJpY3QgTUlNRSB0eXBlIGNoZWNraW5nIGlzIGVuYWJsZWQuCitDT05TT0xFIE1F
U1NBR0U6IFJlZnVzZWQgdG8gZXhlY3V0ZSBzY3JpcHQgZnJvbSAnaHR0cDovLzEyNy4wLjAuMTo4
MDAwL3NlY3VyaXR5L2NvbnRlbnRUeXBlT3B0aW9ucy9yZXNvdXJjZXMvc2NyaXB0LXdpdGgtaGVh
ZGVyLnBsP21pbWU9dGV4dC92YnNjcmlwdCcgYmVjYXVzZSBpdHMgTUlNRSB0eXBlICgndGV4dC92
YnNjcmlwdCcpIGlzIG5vdCBleGVjdXRhYmxlLCBhbmQgc3RyaWN0IE1JTUUgdHlwZSBjaGVja2lu
ZyBpcyBlbmFibGVkLgorQ09OU09MRSBNRVNTQUdFOiBSZWZ1c2VkIHRvIGV4ZWN1dGUgc2NyaXB0
IGZyb20gJ2h0dHA6Ly8xMjcuMC4wLjE6ODAwMC9zZWN1cml0eS9jb250ZW50VHlwZU9wdGlvbnMv
cmVzb3VyY2VzL3NjcmlwdC13aXRoLWhlYWRlci5wbD9taW1lPXRleHQveC1qYXZhc2NyaXB0JyBi
ZWNhdXNlIGl0cyBNSU1FIHR5cGUgKCd0ZXh0L3gtamF2YXNjcmlwdCcpIGlzIG5vdCBleGVjdXRh
YmxlLCBhbmQgc3RyaWN0IE1JTUUgdHlwZSBjaGVja2luZyBpcyBlbmFibGVkLgorQ2hlY2sgdGhh
dCBzY3JpcHQgc2VudCB3aXRoIGFuICdYLUNvbnRlbnQtVHlwZS1PcHRpb25zOiBub3NuaWZmJyBo
ZWFkZXIgaXMgY29ycmVjdGx5IGJsb2NrZWQgaWYgdGhlIE1JTUUgdHlwZSBpc24ndCBzY3JpcHR5
LgorCitPbiBzdWNjZXNzLCB5b3Ugd2lsbCBzZWUgYSBzZXJpZXMgb2YgIlBBU1MiIG1lc3NhZ2Vz
LCBmb2xsb3dlZCBieSAiVEVTVCBDT01QTEVURSIuCisKKworUEFTUyB3aW5kb3cuc2NyaXB0c1N1
Y2Nlc3NmdWxseUxvYWRlZCBpcyAwCitQQVNTIHN1Y2Nlc3NmdWxseVBhcnNlZCBpcyB0cnVlCisK
K1RFU1QgQ09NUExFVEUKKwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9zZWN1
cml0eS9jb250ZW50VHlwZU9wdGlvbnMvbm9zbmlmZi1zY3JpcHQtYmxvY2tlZC5odG1sIGIvTGF5
b3V0VGVzdHMvaHR0cC90ZXN0cy9zZWN1cml0eS9jb250ZW50VHlwZU9wdGlvbnMvbm9zbmlmZi1z
Y3JpcHQtYmxvY2tlZC5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmFmNzRiMjhmOGRhMjQ2MGY1ZDg1MmFkZDMy
NjAxMWYwNTYzOWI1MGQKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9odHRwL3Rlc3Rz
L3NlY3VyaXR5L2NvbnRlbnRUeXBlT3B0aW9ucy9ub3NuaWZmLXNjcmlwdC1ibG9ja2VkLmh0bWwK
QEAgLTAsMCArMSwzMyBAQAorPCFET0NUWVBFIGh0bWw+Cis8aHRtbD4KKzxoZWFkPgorICAgIDx0
aXRsZT4nWC1Db250ZW50LVR5cGUtT3B0aW9uczogbm9zbmlmZjsnIGJsb2NrcyBzY3JpcHRzITwv
dGl0bGU+Cis8Ym9keT4KKyAgICA8c2NyaXB0IHNyYz0iL2pzLXRlc3QtcmVzb3VyY2VzL2pzLXRl
c3QtcHJlLmpzIj48L3NjcmlwdD4KKyAgICA8c2NyaXB0PgorICAgICAgICBkZXNjcmlwdGlvbign
Q2hlY2sgdGhhdCBzY3JpcHQgc2VudCB3aXRoIGFuIFwnWC1Db250ZW50LVR5cGUtT3B0aW9uczog
bm9zbmlmZlwnIGhlYWRlciBpcyBjb3JyZWN0bHkgYmxvY2tlZCBpZiB0aGUgTUlNRSB0eXBlIGlz
blwndCBzY3JpcHR5LicpOworICAgICAgICB3aW5kb3cuanNUZXN0SXNBc3luYyA9IHRydWU7CisK
KyAgICAgICAgdmFyIHVuc2NyaXB0eU1pbWVUeXBlcyA9IFsKKyAgICAgICAgICAgICdhcHBsaWNh
dGlvbi9qc29uJywKKyAgICAgICAgICAgICdpbWFnZS9wbmcnLAorICAgICAgICAgICAgJ3RleHQv
aHRtbCcsCisgICAgICAgICAgICAndGV4dC92YnMnLAorICAgICAgICAgICAgJ3RleHQvdmJzY3Jp
cHQnLAorICAgICAgICAgICAgJ3RleHQveC1qYXZhc2NyaXB0JywKKyAgICAgICAgXTsKKworICAg
ICAgICB3aW5kb3cuc2NyaXB0c1N1Y2Nlc3NmdWxseUxvYWRlZCA9IDA7CisKKyAgICAgICAgZm9y
ICh2YXIgaSA9IDA7IGkgPCB1bnNjcmlwdHlNaW1lVHlwZXMubGVuZ3RoOyBpKyspIHsKKyAgICAg
ICAgICAgIGRvY3VtZW50LndyaXRlKCc8c2NyaXB0IHNyYz0iLi9yZXNvdXJjZXMvc2NyaXB0LXdp
dGgtaGVhZGVyLnBsP21pbWU9JyArIHVuc2NyaXB0eU1pbWVUeXBlc1tpXSArICciPjwnICsgJy9z
Y3JpcHQ+Jyk7CisgICAgICAgIH0KKworICAgICAgICB3aW5kb3cub25sb2FkID0gZnVuY3Rpb24g
KCkgeworICAgICAgICAgICAgc2hvdWxkQmUoJ3dpbmRvdy5zY3JpcHRzU3VjY2Vzc2Z1bGx5TG9h
ZGVkJywgJzAnKTsKKyAgICAgICAgICAgIGZpbmlzaEpTVGVzdCgpOworICAgICAgICB9OworICAg
IDwvc2NyaXB0PgorICAgIDxzY3JpcHQgc3JjPSIvanMtdGVzdC1yZXNvdXJjZXMvanMtdGVzdC1w
b3N0LmpzIj48L3NjcmlwdD4KKzwvYm9keT4KKzwvaHRtbD4KZGlmZiAtLWdpdCBhL0xheW91dFRl
c3RzL2h0dHAvdGVzdHMvc2VjdXJpdHkvY29udGVudFR5cGVPcHRpb25zL25vc25pZmYtc2NyaXB0
LXdpdGhvdXQtY29udGVudC10eXBlLWJsb2NrZWQtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMv
aHR0cC90ZXN0cy9zZWN1cml0eS9jb250ZW50VHlwZU9wdGlvbnMvbm9zbmlmZi1zY3JpcHQtd2l0
aG91dC1jb250ZW50LXR5cGUtYmxvY2tlZC1leHBlY3RlZC50eHQKbmV3IGZpbGUgbW9kZSAxMDA2
NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uMjcxMDM5
ZGJjNzNlYzJhNTA2Y2YzZTc0NjkxMTRjZDE5MzI3YjI0ZgotLS0gL2Rldi9udWxsCisrKyBiL0xh
eW91dFRlc3RzL2h0dHAvdGVzdHMvc2VjdXJpdHkvY29udGVudFR5cGVPcHRpb25zL25vc25pZmYt
c2NyaXB0LXdpdGhvdXQtY29udGVudC10eXBlLWJsb2NrZWQtZXhwZWN0ZWQudHh0CkBAIC0wLDAg
KzEsMTEgQEAKK0NPTlNPTEUgTUVTU0FHRTogUmVmdXNlZCB0byBleGVjdXRlIHNjcmlwdCBmcm9t
ICdodHRwOi8vMTI3LjAuMC4xOjgwMDAvc2VjdXJpdHkvY29udGVudFR5cGVPcHRpb25zL3Jlc291
cmNlcy9zY3JpcHQtd2l0aC1oZWFkZXIucGwnIGJlY2F1c2UgaXRzIE1JTUUgdHlwZSAoJ3RleHQv
cGxhaW4nKSBpcyBub3QgZXhlY3V0YWJsZSwgYW5kIHN0cmljdCBNSU1FIHR5cGUgY2hlY2tpbmcg
aXMgZW5hYmxlZC4KK0NoZWNrIHRoYXQgc2NyaXB0IHNlbnQgd2l0aCBhbiAnWC1Db250ZW50LVR5
cGUtT3B0aW9uczogbm9zbmlmZicgaGVhZGVyIGlzIGNvcnJlY3RseSBibG9ja2VkIGlmIG5vICdD
b250ZW50LVR5cGUnIGhlYWRlciBpcyBwcmVzZW50LgorCitPbiBzdWNjZXNzLCB5b3Ugd2lsbCBz
ZWUgYSBzZXJpZXMgb2YgIlBBU1MiIG1lc3NhZ2VzLCBmb2xsb3dlZCBieSAiVEVTVCBDT01QTEVU
RSIuCisKKworUEFTUyB3aW5kb3cuc2NyaXB0c1N1Y2Nlc3NmdWxseUxvYWRlZCBpcyAwCitQQVNT
IHN1Y2Nlc3NmdWxseVBhcnNlZCBpcyB0cnVlCisKK1RFU1QgQ09NUExFVEUKKwpkaWZmIC0tZ2l0
IGEvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9zZWN1cml0eS9jb250ZW50VHlwZU9wdGlvbnMvbm9z
bmlmZi1zY3JpcHQtd2l0aG91dC1jb250ZW50LXR5cGUtYmxvY2tlZC5odG1sIGIvTGF5b3V0VGVz
dHMvaHR0cC90ZXN0cy9zZWN1cml0eS9jb250ZW50VHlwZU9wdGlvbnMvbm9zbmlmZi1zY3JpcHQt
d2l0aG91dC1jb250ZW50LXR5cGUtYmxvY2tlZC5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0Cmlu
ZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjdmMzM3NTYwYWVm
MTFjNzQ1OGFiOWMyNGNiM2QyYjdlOTA2YzVjMzkKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRU
ZXN0cy9odHRwL3Rlc3RzL3NlY3VyaXR5L2NvbnRlbnRUeXBlT3B0aW9ucy9ub3NuaWZmLXNjcmlw
dC13aXRob3V0LWNvbnRlbnQtdHlwZS1ibG9ja2VkLmh0bWwKQEAgLTAsMCArMSwxOSBAQAorPCFE
T0NUWVBFIGh0bWw+Cis8aHRtbD4KKzxoZWFkPgorICAgIDx0aXRsZT4nWC1Db250ZW50LVR5cGUt
T3B0aW9uczogbm9zbmlmZjsnIGJsb2NrcyBzY3JpcHRzITwvdGl0bGU+Cis8Ym9keT4KKyAgICA8
c2NyaXB0IHNyYz0iL2pzLXRlc3QtcmVzb3VyY2VzL2pzLXRlc3QtcHJlLmpzIj48L3NjcmlwdD4K
KyAgICA8c2NyaXB0PgorICAgICAgICBkZXNjcmlwdGlvbignQ2hlY2sgdGhhdCBzY3JpcHQgc2Vu
dCB3aXRoIGFuIFwnWC1Db250ZW50LVR5cGUtT3B0aW9uczogbm9zbmlmZlwnIGhlYWRlciBpcyBj
b3JyZWN0bHkgYmxvY2tlZCBpZiBubyBcJ0NvbnRlbnQtVHlwZVwnIGhlYWRlciBpcyBwcmVzZW50
LicpOworICAgICAgICB3aW5kb3cuanNUZXN0SXNBc3luYyA9IHRydWU7CisgICAgICAgIHdpbmRv
dy5zY3JpcHRzU3VjY2Vzc2Z1bGx5TG9hZGVkID0gMDsKKyAgICAgICAgd2luZG93Lm9ubG9hZCA9
IGZ1bmN0aW9uICgpIHsKKyAgICAgICAgICAgIHNob3VsZEJlKCd3aW5kb3cuc2NyaXB0c1N1Y2Nl
c3NmdWxseUxvYWRlZCcsICcwJyk7CisgICAgICAgICAgICBmaW5pc2hKU1Rlc3QoKTsKKyAgICAg
ICAgfTsKKyAgICA8L3NjcmlwdD4KKyAgICA8c2NyaXB0IHNyYz0iLi9yZXNvdXJjZXMvc2NyaXB0
LXdpdGgtaGVhZGVyLnBsIj48L3NjcmlwdD4KKyAgICA8c2NyaXB0IHNyYz0iL2pzLXRlc3QtcmVz
b3VyY2VzL2pzLXRlc3QtcG9zdC5qcyI+PC9zY3JpcHQ+Cis8L2JvZHk+Cis8L2h0bWw+CmRpZmYg
LS1naXQgYS9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3NlY3VyaXR5L2NvbnRlbnRUeXBlT3B0aW9u
cy9yZXNvdXJjZXMvc2NyaXB0LXdpdGgtaGVhZGVyLnBsIGIvTGF5b3V0VGVzdHMvaHR0cC90ZXN0
cy9zZWN1cml0eS9jb250ZW50VHlwZU9wdGlvbnMvcmVzb3VyY2VzL3NjcmlwdC13aXRoLWhlYWRl
ci5wbApuZXcgZmlsZSBtb2RlIDEwMDc1NQppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwLi43MGUwNjg4Yzk4YTg4MTM1NjA3YmM3OTZkNjIzMjZiZTE3MDJjODU5
Ci0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9zZWN1cml0eS9jb250
ZW50VHlwZU9wdGlvbnMvcmVzb3VyY2VzL3NjcmlwdC13aXRoLWhlYWRlci5wbApAQCAtMCwwICsx
LDE3IEBACisjIS91c3IvYmluL3BlcmwgLXdUCit1c2Ugc3RyaWN0OwordXNlIENHSTsKKworbXkg
JGNnaSA9IG5ldyBDR0k7CisKK2lmICgkY2dpLT5wYXJhbSgnbWltZScpKSB7CisgICAgcHJpbnQg
IkNvbnRlbnQtVHlwZTogIiAuICRjZ2ktPnBhcmFtKCdtaW1lJykgLiAiXG4iOworfQoraWYgKCRj
Z2ktPnBhcmFtKCdvcHRpb25zJykpIHsKKyAgICBwcmludCAiWC1Db250ZW50LVR5cGUtT3B0aW9u
czogIiAuICRjZ2ktPnBhcmFtKCdvcHRpb25zJykgLiAiXG4iOworfSBlbHNlIHsKKyAgICBwcmlu
dCAiWC1Db250ZW50LVR5cGUtT3B0aW9uczogbm9zbmlmZlxuIjsKK30KK3ByaW50ICJcbiI7Citw
cmludCAiY29uc29sZS5sb2coXCJFeGVjdXRlZCBzY3JpcHQgd2l0aCBNSU1FIHR5cGU6ICciIC4g
ICRjZ2ktPnBhcmFtKCdtaW1lJykgLiAiJy5cIik7XG4iOworcHJpbnQgIndpbmRvdy5zY3JpcHRz
U3VjY2Vzc2Z1bGx5TG9hZGVkKys7XG4iOwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvcGxhdGZv
cm0vZWZsL1Rlc3RFeHBlY3RhdGlvbnMgYi9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9lZmwvVGVzdEV4
cGVjdGF0aW9ucwppbmRleCBjN2NiZjY5YzI0NmI4ZTdmOWU1ZTk4NjAyZTVjMWNkMzA3ZDc5YjNl
Li44MDY0YmQ5MTgzM2E0NWVkZThiNmYzZDMxNDIwMDBhMjIwYzQ2YjRmIDEwMDY0NAotLS0gYS9M
YXlvdXRUZXN0cy9wbGF0Zm9ybS9lZmwvVGVzdEV4cGVjdGF0aW9ucworKysgYi9MYXlvdXRUZXN0
cy9wbGF0Zm9ybS9lZmwvVGVzdEV4cGVjdGF0aW9ucwpAQCAtMzAyLDYgKzMwMiw5IEBAIGZhc3Qv
dGV4dC91bmljb2RlLXZhcmlhdGlvbi1zZWxlY3Rvci5odG1sCiBmYXN0L2Zvcm1zL2ZpbGUvaW5w
dXQtZmlsZS1lbnRyaWVzLmh0bWwKIGh0dHAvdGVzdHMvc2VjdXJpdHkvY29udGVudFNlY3VyaXR5
UG9saWN5L2ZpbGVzeXN0ZW0tdXJscy1tYXRjaC1zZWxmLmh0bWwKIAorIyBYLUNvbnRlbnQtVHlw
ZS1PcHRpb25zIChFTkFCTEVfTk9TTklGRikgaXMgbm90IGVuYWJsZWQuCitodHRwL3Rlc3RzL3Nl
Y3VyaXR5L2NvbnRlbnRUeXBlT3B0aW9ucworCiAjIFRyYW5zcGFyZW50IGltYWdlIGJlaW5nIHBy
b2R1Y2VkCiBmYXN0L2ZyYW1lcy90cmFuc3BhcmVudC1zY3JvbGxiYXIuaHRtbAogCmRpZmYgLS1n
aXQgYS9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9ndGsvVGVzdEV4cGVjdGF0aW9ucyBiL0xheW91dFRl
c3RzL3BsYXRmb3JtL2d0ay9UZXN0RXhwZWN0YXRpb25zCmluZGV4IDkxNGE4NTc3ZTAyYzM3OWQ1
MDY2NjBlMWIzZTEzMzgxMTFlZmQyZmQuLjM2N2M0Y2I1YTRjMTJjM2IyMzU3OTdlMGFiYTFmMmNk
ZTJmNTVkMmYgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL3BsYXRmb3JtL2d0ay9UZXN0RXhwZWN0
YXRpb25zCisrKyBiL0xheW91dFRlc3RzL3BsYXRmb3JtL2d0ay9UZXN0RXhwZWN0YXRpb25zCkBA
IC0xMTUsNiArMTE1LDkgQEAgd2Via2l0Lm9yZy9iLzEwMzU0NyBmYXN0L3hzbC94c2x0LXhodG1s
LXRlbXBsYXRlLnhtbCBbIFNraXAgXQogd2Via2l0Lm9yZy9iLzEwMzU0NyBmYXN0L3hwYXRoL3hw
YXRoLXRlbXBsYXRlLWVsZW1lbnQuaHRtbCBbIFNraXAgXQogd2Via2l0Lm9yZy9iLzEwMzU0NyBm
YXN0L3hzbC94c2x0LXByb2Nlc3Nvci10ZW1wbGF0ZS5odG1sIFsgU2tpcCBdCiAKKyMgWC1Db250
ZW50LVR5cGUtT3B0aW9ucyAoRU5BQkxFX05PU05JRkYpIGlzIG5vdCBlbmFibGVkLgord2Via2l0
Lm9yZy9iLzcxODUxIGh0dHAvdGVzdHMvc2VjdXJpdHkvY29udGVudFR5cGVPcHRpb25zIFsgU2tp
cCBdCisKICMgVGhlc2UgdGVzdCAtYXBwbGUtIGFuZCAta2h0bWwtIHByZWZpeGVkIENTUyBwcm9w
ZXJ0aWVzLCB3aGljaCB3ZSBkb24ndCBzdXBwb3J0LgogaW5zcGVjdG9yL3N0eWxlcy92ZW5kb3It
cHJlZml4ZXMuaHRtbCBbIFdvbnRGaXggRmFpbHVyZSBdCiBmYXN0L2Nzcy9hcHBsZS1wcmVmaXgu
aHRtbCBbIFdvbnRGaXggRmFpbHVyZSBdCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9wbGF0Zm9y
bS9tYWMvVGVzdEV4cGVjdGF0aW9ucyBiL0xheW91dFRlc3RzL3BsYXRmb3JtL21hYy9UZXN0RXhw
ZWN0YXRpb25zCmluZGV4IGRkMmE0MzQzMTU4YjAxMzgyYjRlZDBjMDQyNzlkODFhYTA3M2UxYzEu
LjEyMDYyODgzZjBkYjYzZTg3MzhjYWU2MjA3MjU5NTAyNDBmZjBjYmMgMTAwNjQ0Ci0tLSBhL0xh
eW91dFRlc3RzL3BsYXRmb3JtL21hYy9UZXN0RXhwZWN0YXRpb25zCisrKyBiL0xheW91dFRlc3Rz
L3BsYXRmb3JtL21hYy9UZXN0RXhwZWN0YXRpb25zCkBAIC0xOTgsNiArMTk4LDkgQEAgZmFzdC9m
b3Jtcy93ZWVrCiAjIEVOQUJMRV9HQU1FUEFEIG5vdCBlbmFibGVkLgogZ2FtZXBhZC8KIAorIyBY
LUNvbnRlbnQtVHlwZS1PcHRpb25zIChFTkFCTEVfTk9TTklGRikgaXMgbm90IGVuYWJsZWQuCito
dHRwL3Rlc3RzL3NlY3VyaXR5L2NvbnRlbnRUeXBlT3B0aW9ucworCiAjIFNwZWVjaCBpbnB1dCBp
cyBub3QgeWV0IGVuYWJsZWQuCiBmYXN0L3NwZWVjaAogCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0
cy9wbGF0Zm9ybS9xdC9UZXN0RXhwZWN0YXRpb25zIGIvTGF5b3V0VGVzdHMvcGxhdGZvcm0vcXQv
VGVzdEV4cGVjdGF0aW9ucwppbmRleCBiNmE5YzE5NTFjZWMzZmMwMzkxOTc1ZjA1ZDExZDNiYzQ5
ZDA0NGEyLi45MTkyOGFmOGYxN2E1NGZjNWZlZjEwMTM2Yzg5NzI3ZjgyYmVmNzA4IDEwMDY0NAot
LS0gYS9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9xdC9UZXN0RXhwZWN0YXRpb25zCisrKyBiL0xheW91
dFRlc3RzL3BsYXRmb3JtL3F0L1Rlc3RFeHBlY3RhdGlvbnMKQEAgLTQ4MCw2ICs0ODAsOSBAQCB3
ZWJraXQub3JnL2IvNjExMzggaHR0cC90ZXN0cy93M2Mvd2VicGVyZi9zdWJtaXNzaW9uL0ludGVs
L3Jlc291cmNlLXRpbWluZwogIyBNaXNzaW5nIGV2ZW50U2VuZGVyLnNjaGVkdWxlQXN5bmNocm9u
b3VzS2V5RG93bigpIGltcGxlbWVudGF0aW9uCiBmYXN0L2RvbS9NdXRhdGlvbk9ic2VydmVyL2lu
bGluZS1ldmVudC1saXN0ZW5lci5odG1sCiAKKyMgWC1Db250ZW50LVR5cGUtT3B0aW9ucyAoRU5B
QkxFX05PU05JRkYpIGlzIG5vdCBlbmFibGVkLgoraHR0cC90ZXN0cy9zZWN1cml0eS9jb250ZW50
VHlwZU9wdGlvbnMKKwogIyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gIwogIyAgICAgICBEcmFnIGFuZCBE
cm9wIFN1cHBvcnQgaW4gRFJULiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgIwogIyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT0gIwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvcGxh
dGZvcm0vd2luL1Rlc3RFeHBlY3RhdGlvbnMgYi9MYXlvdXRUZXN0cy9wbGF0Zm9ybS93aW4vVGVz
dEV4cGVjdGF0aW9ucwppbmRleCA3ZGNkZWFjMzI0ZDY1OWZhY2FhNDg0OWUwN2IyNDk4MTZiMjNk
ZTdhLi4zNDExNWMwYjIyYmNkNjRmZTk2YjU5YWQ0ZjFmZDIyM2Q4YTE2ZDAyIDEwMDY0NAotLS0g
YS9MYXlvdXRUZXN0cy9wbGF0Zm9ybS93aW4vVGVzdEV4cGVjdGF0aW9ucworKysgYi9MYXlvdXRU
ZXN0cy9wbGF0Zm9ybS93aW4vVGVzdEV4cGVjdGF0aW9ucwpAQCAtNTgsNiArNTgsOSBAQCBmYXN0
L2Nzcy9pbWFnZS1zZXQtcGFyc2luZy1pbnZhbGlkLmh0bWwKIGZhc3QvY3NzL2N1cnNvci1wYXJz
aW5nLWltYWdlLXNldC5odG1sCiBmYXN0L2V2ZW50cy9tb3VzZS1jdXJzb3ItaW1hZ2Utc2V0Lmh0
bWwKIAorIyBYLUNvbnRlbnQtVHlwZS1PcHRpb25zIChFTkFCTEVfTk9TTklGRikgaXMgbm90IGVu
YWJsZWQuCitodHRwL3Rlc3RzL3NlY3VyaXR5L2NvbnRlbnRUeXBlT3B0aW9ucworCiAjIGh0dHBz
Oi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD03NzY0NQogY3NzMy9maWx0ZXJzL2Zp
bHRlcmVkLWNvbXBvc2l0aW5nLWRlc2NlbmRhbnQuaHRtbAogCmRpZmYgLS1naXQgYS9MYXlvdXRU
ZXN0cy9wbGF0Zm9ybS93aW5jYWlyby9UZXN0RXhwZWN0YXRpb25zIGIvTGF5b3V0VGVzdHMvcGxh
dGZvcm0vd2luY2Fpcm8vVGVzdEV4cGVjdGF0aW9ucwppbmRleCAyYzRlYjg5MjQ3YTk2MmE5OTNm
NzY2MTM2YjViYzY4ZDVhOGYwOGFiLi5iZGM4OTcxYmRjODkzYzI2ZTExOGZlYWVjZWEwNjQ4NDZm
ODMwNTg1IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9wbGF0Zm9ybS93aW5jYWlyby9UZXN0RXhw
ZWN0YXRpb25zCisrKyBiL0xheW91dFRlc3RzL3BsYXRmb3JtL3dpbmNhaXJvL1Rlc3RFeHBlY3Rh
dGlvbnMKQEAgLTI1MjQsNiArMjUyNCw5IEBAIGZhc3QvbXVsdGljb2wvc3Bhbi9jbG9uZS1mbGV4
Ym94Lmh0bWwKICMgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTg1NTU4
CiBodHRwL3Rlc3RzL3NlY3VyaXR5L2NvbnRlbnRTZWN1cml0eVBvbGljeS8xLjEKIAorIyBYLUNv
bnRlbnQtVHlwZS1PcHRpb25zIChFTkFCTEVfTk9TTklGRikgaXMgbm90IGVuYWJsZWQuCitodHRw
L3Rlc3RzL3NlY3VyaXR5L2NvbnRlbnRUeXBlT3B0aW9ucworCiAjIFNraXAgdGVzdHMgaW4gZmFz
dC90ZXh0L3NoYXBpbmcKIGZhc3QvdGV4dC9zaGFwaW5nCiAKZGlmZiAtLWdpdCBhL0xheW91dFRl
c3RzL3BsYXRmb3JtL3drMi9UZXN0RXhwZWN0YXRpb25zIGIvTGF5b3V0VGVzdHMvcGxhdGZvcm0v
d2syL1Rlc3RFeHBlY3RhdGlvbnMKaW5kZXggNDcyNDY5YzFkMDAwMjdhZjE0NmYxZjJjOWQ4ODc2
ZDRjNjQwNGZmMC4uOTlhOTY5NTlhNTM5NWM0MTA1ZmRlMThkODIyMjEyNmNlYzFkZjY3OSAxMDA2
NDQKLS0tIGEvTGF5b3V0VGVzdHMvcGxhdGZvcm0vd2syL1Rlc3RFeHBlY3RhdGlvbnMKKysrIGIv
TGF5b3V0VGVzdHMvcGxhdGZvcm0vd2syL1Rlc3RFeHBlY3RhdGlvbnMKQEAgLTU2NCw2ICs1NjQs
OSBAQCBodHRwL3Rlc3RzL3NlY3VyaXR5L3ZpZGVvLWNyb3NzLW9yaWdpbi1yZWFkYmFjay5odG1s
CiAjIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD04NTU1OAogaHR0cC90
ZXN0cy9zZWN1cml0eS9jb250ZW50U2VjdXJpdHlQb2xpY3kvMS4xCiAKKyMgWC1Db250ZW50LVR5
cGUtT3B0aW9ucyAoRU5BQkxFX05PU05JRkYpIGlzIG5vdCBlbmFibGVkLgoraHR0cC90ZXN0cy9z
ZWN1cml0eS9jb250ZW50VHlwZU9wdGlvbnMKKwogIyBVbmV4cGVjdGVkIHJlZGlyZWN0aW9uIGhh
cHBlbnMuCiBodHRwL3Rlc3RzL2xvYWRpbmcvcmVkaXJlY3QtbWV0aG9kcy5odG1sCiAK
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>187432</attachid>
            <date>2013-02-09 07:24:21 -0800</date>
            <delta_ts>2013-02-12 15:46:29 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-71851-20130209162056.patch</filename>
            <type>text/plain</type>
            <size>29021</size>
            <attacher name="Mike West">mkwst</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTQyMzUwCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggZGNiMzY0YzNmNjNmYWFl
Mjk0N2E4NzM4MTNjODdmODc5MjBhNmM3NC4uNmY1YmQyZWE5MGNhYjljYzlmZWE5MTZjOThlMzRk
OTZiMjU1NzhhMCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDY1IEBACisyMDEzLTAyLTA5ICBNaWtl
IFdlc3QgIDxta3dzdEBjaHJvbWl1bS5vcmc+CisKKyAgICAgICAgSW1wbGVtZW50IHNjcmlwdCBN
SU1FIHJlc3RyaWN0aW9ucyBmb3IgWC1Db250ZW50LVR5cGUtT3B0aW9uczogbm9zbmlmZgorICAg
ICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9NzE4NTEKKworICAg
ICAgICBSZXZpZXdlZCBieSBBZGFtIEJhcnRoLgorCisgICAgICAgIFRoaXMgcGF0Y2ggYWRkcyBz
dXBwb3J0IGZvciAnWC1Db250ZW50LVR5cGUtT3B0aW9uczogbm9zbmlmZicgd2hlbgorICAgICAg
ICBkZWNpZGluZyB3aGV0aGVyIG9yIG5vdCB0byBleGVjdXRlIGEgZ2l2ZW4gY2h1bmsgb2YgSmF2
YVNjcmlwdC4gSWYgdGhlCisgICAgICAgIGhlYWRlciBpcyBwcmVzZW50LCBzY3JpcHQgd2lsbCBv
bmx5IGV4ZWN1dGUgaWYgaXQgbWF0Y2hlcyBhIHByZWRlZmluZWQKKyAgICAgICAgc2V0IG9mIE1J
TUUgdHlwZXNbMV0gdGhhdCBhcmUgZGVlbWVkICJleGVjdXRhYmxlIi4gU2NyaXB0cyBzZXJ2ZWQg
d2l0aAorICAgICAgICB0eXBlcyB0aGF0IGRvbid0IG1hdGNoIHRoZSBsaXN0IHdpbGwgbm90IGV4
ZWN1dGUuCisKKyAgICAgICAgSUUgaW50cm9kdWNlZCB0aGlzIGZlYXR1cmUsIGFuZCBHZWNrbyBp
cyB3b3JraW5nIG9uIGFuIGltcGxlbWVudGF0aW9uWzJdCisgICAgICAgIG5vdy4gVGhlcmUncyBi
ZWVuIHNvbWUgZGlzY3Vzc2lvbiBvbiB0aGUgV0hBVFdHIGxpc3QgYWJvdXQgZm9ybWFsaXppbmcK
KyAgICAgICAgdGhlIHNwZWNpZmljYXRpb24gZm9yIHRoaXMgZmVhdHVyZVszXSwgYnV0IG5vdGhp
bmcgc2lnbmlmaWNhbnQgaGFzIGJlZW4KKyAgICAgICAgZGVjaWRlZC4KKworICAgICAgICBUaGlz
IGltcGxlbWVudGF0aW9uJ3MgbGlzdCBvZiBhY2NlcHRpYmxlIE1JTUUgdHlwZXMgZGlmZmVycyBm
cm9tIElFJ3M6CisgICAgICAgIGl0IG1hdGNoZXMgdGhlIGxpc3Qgb2Ygc3VwcG9ydGVkIEphdmFT
Y3JpcHQgTUlNRSB0eXBlcyBkZWZpbmVkIGluCisgICAgICAgIE1JTUVUeXBlUmVnaXN0cnk6Omlu
aXRpYWxpemVTdXBwb3J0ZWRKYXZhU2NyaXB0TUlNRVR5cGVzKClbNF0uIEluCisgICAgICAgIHBh
cnRpY3VsYXIsIHRoZSBWQlNjcmlwdCB0eXBlcyBhcmUgbm90IGFjY2VwdGVkLCBhbmQKKyAgICAg
ICAgJ3RleHQvamF2YXNjcmlwdDEuezEsMiwzfScgYXJlIGFjY2VwdGVkLCBhbG9uZyB3aXRoICd0
ZXh0L2xpdmVzY3JpcHQnLgorCisgICAgICAgIFRoaXMgZmVhdHVyZSBpcyBsb2NrZWQgdGlnaHRs
eSBiZWhpbmQgdGhlIEVOQUJMRV9OT1NOSUZGIGZsYWcsIHdoaWNoIGlzCisgICAgICAgIGN1cnJl
bnRseSBvbmx5IGVuYWJsZWQgb24gdGhlIENocm9taXVtIHBvcnQuCisKKyAgICAgICAgWzFdOiBo
dHRwOi8vbXNkbi5taWNyb3NvZnQuY29tL2VuLXVzL2xpYnJhcnkvZ2c2MjI5NDEodj12cy44NSku
YXNweAorICAgICAgICBbMl06IGh0dHBzOi8vYnVnemlsbGEubW96aWxsYS5vcmcvc2hvd19idWcu
Y2dpP2lkPTQ3MTAyMAorICAgICAgICBbM106IGh0dHA6Ly9saXN0cy53aGF0d2cub3JnL2h0ZGln
LmNnaS93aGF0d2ctd2hhdHdnLm9yZy8yMDEyLU5vdmVtYmVyLzAzNzk3NC5odG1sCisgICAgICAg
IFs0XTogaHR0cDovL3RyYWMud2Via2l0Lm9yZy9icm93c2VyL3RydW5rL1NvdXJjZS9XZWJDb3Jl
L3BsYXRmb3JtL01JTUVUeXBlUmVnaXN0cnkuY3BwP3Jldj0xNDIwODYjTDMwNworCisgICAgICAg
IFRlc3RzOiBodHRwL3Rlc3RzL3NlY3VyaXR5L2NvbnRlbnRUeXBlT3B0aW9ucy9pbnZhbGlkLWNv
bnRlbnQtdHlwZS1vcHRpb25zLWFsbG93ZWQuaHRtbAorICAgICAgICAgICAgICAgaHR0cC90ZXN0
cy9zZWN1cml0eS9jb250ZW50VHlwZU9wdGlvbnMvbm9zbmlmZi1zY3JpcHQtYWxsb3dlZC5odG1s
CisgICAgICAgICAgICAgICBodHRwL3Rlc3RzL3NlY3VyaXR5L2NvbnRlbnRUeXBlT3B0aW9ucy9u
b3NuaWZmLXNjcmlwdC1ibG9ja2VkLmh0bWwKKyAgICAgICAgICAgICAgIGh0dHAvdGVzdHMvc2Vj
dXJpdHkvY29udGVudFR5cGVPcHRpb25zL25vc25pZmYtc2NyaXB0LXdpdGhvdXQtY29udGVudC10
eXBlLWFsbG93ZWQuaHRtbAorCisgICAgICAgICogZG9tL1NjcmlwdEVsZW1lbnQuY3BwOgorICAg
ICAgICAoV2ViQ29yZTo6U2NyaXB0RWxlbWVudDo6ZXhlY3V0ZVNjcmlwdCk6CisgICAgICAgICAg
ICBCZWZvcmUgZXhlY3V0aW5nIHNjcmlwdCwgZW5zdXJlIHRoYXQgaXQgc2hvdWxkbid0IGJlIGJs
b2NrZWQgZHVlIHRvCisgICAgICAgICAgICBpdHMgTUlNRSB0eXBlLiBJZiBpdCBpcyBibG9ja2Vk
LCB3cml0ZSBhbiBlcnJvciBtZXNzYWdlIHRvIHRoZQorICAgICAgICAgICAgY29uc29sZS4KKyAg
ICAgICAgKiBsb2FkZXIvY2FjaGUvQ2FjaGVkU2NyaXB0LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6
OkNhY2hlZFNjcmlwdDo6bWltZVR5cGUpOgorICAgICAgICAgICAgTWFrZSBzY3JpcHRzJyBNSU1F
IHR5cGUgYXZhaWxhYmxlIG91dHNpZGUgdGhlIGNvbnRleHQgb2YKKyAgICAgICAgICAgIENhY2hl
ZFNjcmlwdCBpbiBvcmRlciB0byBjb3JyZWN0bHkgcG9wdWxhdGUgZXJyb3IgbWVzc2FnZXMgd2Ug
d3JpdGUKKyAgICAgICAgICAgIHRvIHRoZSBjb25zb2xlIGluIFNjcmlwdEVsZW1lbnQ6OmV4ZWN1
dGVTY3JpcHQKKyAgICAgICAgKFdlYkNvcmUpOgorICAgICAgICAoV2ViQ29yZTo6Q2FjaGVkU2Ny
aXB0OjptaW1lVHlwZUFsbG93ZWRCeU5vc25pZmYpOgorICAgICAgICAqIGxvYWRlci9jYWNoZS9D
YWNoZWRTY3JpcHQuaDoKKyAgICAgICAgKENhY2hlZFNjcmlwdCk6CisgICAgICAgICAgICBBIG5l
dyBtZXRob2Qgd2hpY2ggY2hlY2tzIHRoZSByZXNvdXJjZSdzIEhUVFAgaGVhZGVycyB0byBzZXQg
dGhlCisgICAgICAgICAgICAnbm9zbmlmZicgZGlzcG9zaXRpb24sIGFuZCBjb21wYXJlcyB0aGUg
cmVzb3VyY2UncyBNSU1FIHR5cGUgYWdhaW5zdAorICAgICAgICAgICAgdGhlIGxpc3Qgb2YgYWxs
b3dlZCBleGVjdXRhYmxlIHR5cGVzLiBSZXR1cm5zIHRydWUgaWZmIHRoZSBzY3JpcHQKKyAgICAg
ICAgICAgIGlzIGFsbG93ZWQuCisgICAgICAgICogcGxhdGZvcm0vbmV0d29yay9IVFRQUGFyc2Vy
cy5jcHA6CisgICAgICAgIChXZWJDb3JlKToKKyAgICAgICAgKFdlYkNvcmU6OnBhcnNlQ29udGVu
dFR5cGVPcHRpb25zSGVhZGVyKToKKyAgICAgICAgKiBwbGF0Zm9ybS9uZXR3b3JrL0hUVFBQYXJz
ZXJzLmg6CisgICAgICAgICAgICBBZGRzIGEgbmV3IGVudW0gd2hpY2ggcmVsYXRlcyB0aGUgc25p
ZmZhYmxlIHN0YXR1cyBvZiB0aGUgcmVzb3VyY2UsCisgICAgICAgICAgICBhbmQgYSBtZXRob2Qg
dG8gcGFyc2UgdGhlIEhUVFAgaGVhZGVyLgorCiAyMDEzLTAyLTA4ICBFcmljIENhcmxzb24gIDxl
cmljLmNhcmxzb25AYXBwbGUuY29tPgogCiAgICAgICAgIFtNYWNdIHJlc3BlY3QgaW4tYmFuZCBj
YXB0aW9uIGNvbG9yCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9kb20vU2NyaXB0RWxlbWVu
dC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9kb20vU2NyaXB0RWxlbWVudC5jcHAKaW5kZXggYTNjYTYx
YjIxNWFiYjI1NjM0NjhiM2E2OTk2OTgyY2ZjMjZhMDRlNi4uNzNkODJkMWRjMWIzYWQ1ZGJkODA0
ZjU0YTg2N2ViMjUwMGRjZDhhOCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvZG9tL1Njcmlw
dEVsZW1lbnQuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2RvbS9TY3JpcHRFbGVtZW50LmNwcApA
QCAtMjkzLDYgKzI5MywxMyBAQCB2b2lkIFNjcmlwdEVsZW1lbnQ6OmV4ZWN1dGVTY3JpcHQoY29u
c3QgU2NyaXB0U291cmNlQ29kZSYgc291cmNlQ29kZSkKICAgICBpZiAoIW1faXNFeHRlcm5hbFNj
cmlwdCAmJiAhbV9lbGVtZW50LT5kb2N1bWVudCgpLT5jb250ZW50U2VjdXJpdHlQb2xpY3koKS0+
YWxsb3dJbmxpbmVTY3JpcHQobV9lbGVtZW50LT5kb2N1bWVudCgpLT51cmwoKSwgbV9zdGFydExp
bmVOdW1iZXIpKQogICAgICAgICByZXR1cm47CiAKKyNpZiBFTkFCTEUoTk9TTklGRikKKyAgICBp
ZiAobV9pc0V4dGVybmFsU2NyaXB0ICYmIG1fY2FjaGVkU2NyaXB0ICYmICFtX2NhY2hlZFNjcmlw
dC0+bWltZVR5cGVBbGxvd2VkQnlOb3NuaWZmKCkpIHsKKyAgICAgICAgbV9lbGVtZW50LT5kb2N1
bWVudCgpLT5hZGRDb25zb2xlTWVzc2FnZShKU01lc3NhZ2VTb3VyY2UsIEVycm9yTWVzc2FnZUxl
dmVsLCAiUmVmdXNlZCB0byBleGVjdXRlIHNjcmlwdCBmcm9tICciICsgbV9jYWNoZWRTY3JpcHQt
PnVybCgpLnN0cmluZygpICsgIicgYmVjYXVzZSBpdHMgTUlNRSB0eXBlICgnIiArIG1fY2FjaGVk
U2NyaXB0LT5taW1lVHlwZSgpICsgIicpIGlzIG5vdCBleGVjdXRhYmxlLCBhbmQgc3RyaWN0IE1J
TUUgdHlwZSBjaGVja2luZyBpcyBlbmFibGVkLiIpOworICAgICAgICByZXR1cm47CisgICAgfQor
I2VuZGlmCisKICAgICBSZWZQdHI8RG9jdW1lbnQ+IGRvY3VtZW50ID0gbV9lbGVtZW50LT5kb2N1
bWVudCgpOwogICAgIEFTU0VSVChkb2N1bWVudCk7CiAgICAgaWYgKEZyYW1lKiBmcmFtZSA9IGRv
Y3VtZW50LT5mcmFtZSgpKSB7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvY2Fj
aGUvQ2FjaGVkU2NyaXB0LmNwcCBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9jYWNoZS9DYWNoZWRT
Y3JpcHQuY3BwCmluZGV4IDUwMWZmNGEzYzJmZWI3ZTczNDc2NDVjMTQ5NjYwZWNlYmM3NDZlN2Yu
LmYwZjFhZDM3MTMwMjFlNjlmNmRjZDlmZjcxMmRhZmZjMzJmMzdmYjIgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9XZWJDb3JlL2xvYWRlci9jYWNoZS9DYWNoZWRTY3JpcHQuY3BwCisrKyBiL1NvdXJjZS9X
ZWJDb3JlL2xvYWRlci9jYWNoZS9DYWNoZWRTY3JpcHQuY3BwCkBAIC0yNyw5ICsyNywxMSBAQAog
I2luY2x1ZGUgImNvbmZpZy5oIgogI2luY2x1ZGUgIkNhY2hlZFNjcmlwdC5oIgogCi0jaW5jbHVk
ZSAiTWVtb3J5Q2FjaGUuaCIKICNpbmNsdWRlICJDYWNoZWRSZXNvdXJjZUNsaWVudC5oIgogI2lu
Y2x1ZGUgIkNhY2hlZFJlc291cmNlQ2xpZW50V2Fsa2VyLmgiCisjaW5jbHVkZSAiSFRUUFBhcnNl
cnMuaCIKKyNpbmNsdWRlICJNSU1FVHlwZVJlZ2lzdHJ5LmgiCisjaW5jbHVkZSAiTWVtb3J5Q2Fj
aGUuaCIKICNpbmNsdWRlICJSZXNvdXJjZUJ1ZmZlci5oIgogI2luY2x1ZGUgIlRleHRSZXNvdXJj
ZURlY29kZXIuaCIKICNpbmNsdWRlICJXZWJDb3JlTWVtb3J5SW5zdHJ1bWVudGF0aW9uLmgiCkBA
IC02NSw2ICs2NywxMSBAQCBTdHJpbmcgQ2FjaGVkU2NyaXB0OjplbmNvZGluZygpIGNvbnN0CiAg
ICAgcmV0dXJuIG1fZGVjb2Rlci0+ZW5jb2RpbmcoKS5uYW1lKCk7CiB9CiAKK1N0cmluZyBDYWNo
ZWRTY3JpcHQ6Om1pbWVUeXBlKCkgY29uc3QKK3sKKyAgICByZXR1cm4gZXh0cmFjdE1JTUVUeXBl
RnJvbU1lZGlhVHlwZShtX3Jlc3BvbnNlLmh0dHBIZWFkZXJGaWVsZCgiQ29udGVudC1UeXBlIikp
Lmxvd2VyKCk7Cit9CisKIGNvbnN0IFN0cmluZyYgQ2FjaGVkU2NyaXB0OjpzY3JpcHQoKQogewog
ICAgIEFTU0VSVCghaXNQdXJnZWFibGUoKSk7CkBAIC0xMTksNiArMTI2LDEzIEBAIHZvaWQgQ2Fj
aGVkU2NyaXB0Ojpzb3VyY2VQcm92aWRlckNhY2hlU2l6ZUNoYW5nZWQoaW50IGRlbHRhKQogfQog
I2VuZGlmCiAKKyNpZiBFTkFCTEUoTk9TTklGRikKK2Jvb2wgQ2FjaGVkU2NyaXB0OjptaW1lVHlw
ZUFsbG93ZWRCeU5vc25pZmYoKSBjb25zdAoreworICAgIHJldHVybiAhcGFyc2VDb250ZW50VHlw
ZU9wdGlvbnNIZWFkZXIobV9yZXNwb25zZS5odHRwSGVhZGVyRmllbGQoIlgtQ29udGVudC1UeXBl
LU9wdGlvbnMiKSkgPT0gQ29udGVudFR5cGVPcHRpb25zTm9zbmlmZiB8fCBNSU1FVHlwZVJlZ2lz
dHJ5Ojppc1N1cHBvcnRlZEphdmFTY3JpcHRNSU1FVHlwZShtaW1lVHlwZSgpKTsKK30KKyNlbmRp
ZgorCiB2b2lkIENhY2hlZFNjcmlwdDo6cmVwb3J0TWVtb3J5VXNhZ2UoTWVtb3J5T2JqZWN0SW5m
byogbWVtb3J5T2JqZWN0SW5mbykgY29uc3QKIHsKICAgICBNZW1vcnlDbGFzc0luZm8gaW5mbyht
ZW1vcnlPYmplY3RJbmZvLCB0aGlzLCBXZWJDb3JlTWVtb3J5VHlwZXM6OkNhY2hlZFJlc291cmNl
U2NyaXB0KTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9jYWNoZS9DYWNoZWRT
Y3JpcHQuaCBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9jYWNoZS9DYWNoZWRTY3JpcHQuaAppbmRl
eCBiODUxYmFmMjQxZjNkNTI2Yjc0OGFjYTVkZDA4OTdiMjgyMDhmYTY0Li5kZGUwOWQ4YTdlZjc1
NjVmMzRkYTNjNzczZTQxYTJjMTM4NWE2MDRlIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9s
b2FkZXIvY2FjaGUvQ2FjaGVkU2NyaXB0LmgKKysrIGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL2Nh
Y2hlL0NhY2hlZFNjcmlwdC5oCkBAIC00OSw2ICs0OSw3IEBAIG5hbWVzcGFjZSBXZWJDb3JlIHsK
ICAgICAgICAgdmlydHVhbCB2b2lkIHNldEVuY29kaW5nKGNvbnN0IFN0cmluZyYpOwogICAgICAg
ICB2aXJ0dWFsIFN0cmluZyBlbmNvZGluZygpIGNvbnN0OwogICAgICAgICB2aXJ0dWFsIHZvaWQg
ZGF0YShQYXNzUmVmUHRyPFJlc291cmNlQnVmZmVyPiBkYXRhLCBib29sIGFsbERhdGFSZWNlaXZl
ZCk7CisgICAgICAgIFN0cmluZyBtaW1lVHlwZSgpIGNvbnN0OwogCiAgICAgICAgIHZpcnR1YWwg
dm9pZCBkZXN0cm95RGVjb2RlZERhdGEoKTsKICNpZiBVU0UoSlNDKSAgICAgICAgCkBAIC01Niw2
ICs1Nyw5IEBAIG5hbWVzcGFjZSBXZWJDb3JlIHsKICAgICAgICAgSlNDOjpTb3VyY2VQcm92aWRl
ckNhY2hlKiBzb3VyY2VQcm92aWRlckNhY2hlKCkgY29uc3Q7CiAgICAgICAgIHZvaWQgc291cmNl
UHJvdmlkZXJDYWNoZVNpemVDaGFuZ2VkKGludCBkZWx0YSk7CiAjZW5kaWYKKyNpZiBFTkFCTEUo
Tk9TTklGRikKKyAgICAgICAgYm9vbCBtaW1lVHlwZUFsbG93ZWRCeU5vc25pZmYoKSBjb25zdDsK
KyNlbmRpZgogCiAgICAgICAgIHZpcnR1YWwgdm9pZCByZXBvcnRNZW1vcnlVc2FnZShNZW1vcnlP
YmplY3RJbmZvKikgY29uc3QgT1ZFUlJJREU7CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3Jl
L3BsYXRmb3JtL25ldHdvcmsvSFRUUFBhcnNlcnMuY3BwIGIvU291cmNlL1dlYkNvcmUvcGxhdGZv
cm0vbmV0d29yay9IVFRQUGFyc2Vycy5jcHAKaW5kZXggYmE0N2QyMjBmMzJkN2E2NmJhODdmZmRl
OTNmZGQyMTQ1MmE4MzA2My4uN2UzMWNmNTVjODk2NjlhOTBmZDIxYWI0MjdhM2Q2MzZkMjY2MGRl
NiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbmV0d29yay9IVFRQUGFyc2Vy
cy5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbmV0d29yay9IVFRQUGFyc2Vycy5j
cHAKQEAgLTQyOSw2ICs0MjksMTUgQEAgWFNTUHJvdGVjdGlvbkRpc3Bvc2l0aW9uIHBhcnNlWFNT
UHJvdGVjdGlvbkhlYWRlcihjb25zdCBTdHJpbmcmIGhlYWRlciwgU3RyaW5nJgogICAgIH0KIH0K
IAorI2lmIEVOQUJMRShOT1NOSUZGKQorQ29udGVudFR5cGVPcHRpb25zRGlzcG9zaXRpb24gcGFy
c2VDb250ZW50VHlwZU9wdGlvbnNIZWFkZXIoY29uc3QgU3RyaW5nJiBoZWFkZXIpCit7CisgICAg
aWYgKGhlYWRlci5zdHJpcFdoaXRlU3BhY2UoKS5sb3dlcigpID09ICJub3NuaWZmIikKKyAgICAg
ICAgcmV0dXJuIENvbnRlbnRUeXBlT3B0aW9uc05vc25pZmY7CisgICAgcmV0dXJuIENvbnRlbnRU
eXBlT3B0aW9uc05vbmU7Cit9CisjZW5kaWYKKwogU3RyaW5nIGV4dHJhY3RSZWFzb25QaHJhc2VG
cm9tSFRUUFN0YXR1c0xpbmUoY29uc3QgU3RyaW5nJiBzdGF0dXNMaW5lKQogewogICAgIHNpemVf
dCBzcGFjZVBvcyA9IHN0YXR1c0xpbmUuZmluZCgnICcpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dl
YkNvcmUvcGxhdGZvcm0vbmV0d29yay9IVFRQUGFyc2Vycy5oIGIvU291cmNlL1dlYkNvcmUvcGxh
dGZvcm0vbmV0d29yay9IVFRQUGFyc2Vycy5oCmluZGV4IDYxMWFiYWU4MGZlODE1NDIxNDczODAy
YTIyMDc5YWYyZTUyZWUwNTcuLjBhNDMwMmYxYWFjNzBhMjIwY2MxNGIwMTkzMmIwYWEwMzE1ODkz
ZmQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL25ldHdvcmsvSFRUUFBhcnNl
cnMuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9uZXR3b3JrL0hUVFBQYXJzZXJzLmgK
QEAgLTUzLDYgKzUzLDEzIEBAIHR5cGVkZWYgZW51bSB7CiAgICAgQ29udGVudERpc3Bvc2l0aW9u
T3RoZXIKIH0gQ29udGVudERpc3Bvc2l0aW9uVHlwZTsKIAorI2lmIEVOQUJMRShOT1NOSUZGKQor
ZW51bSBDb250ZW50VHlwZU9wdGlvbnNEaXNwb3NpdGlvbiB7CisgICAgQ29udGVudFR5cGVPcHRp
b25zTm9uZSwKKyAgICBDb250ZW50VHlwZU9wdGlvbnNOb3NuaWZmCit9OworI2VuZGlmCisKIENv
bnRlbnREaXNwb3NpdGlvblR5cGUgY29udGVudERpc3Bvc2l0aW9uVHlwZShjb25zdCBTdHJpbmcm
KTsKIGJvb2wgaXNSRkMyNjE2VG9rZW4oY29uc3QgU3RyaW5nJik7CiBib29sIHBhcnNlSFRUUFJl
ZnJlc2goY29uc3QgU3RyaW5nJiByZWZyZXNoLCBib29sIGZyb21IdHRwRXF1aXZNZXRhLCBkb3Vi
bGUmIGRlbGF5LCBTdHJpbmcmIHVybCk7CkBAIC02Nyw2ICs3NCwxMCBAQCBTdHJpbmcgZXh0cmFj
dFJlYXNvblBocmFzZUZyb21IVFRQU3RhdHVzTGluZShjb25zdCBTdHJpbmcmKTsKIC8vIC0xIGNv
dWxkIGJlIHNldCB0byBvbmUgb2YgdGhlIHJldHVybiBwYXJhbWV0ZXJzIHRvIGluZGljYXRlIHRo
ZSB2YWx1ZSBpcyBub3Qgc3BlY2lmaWVkLgogYm9vbCBwYXJzZVJhbmdlKGNvbnN0IFN0cmluZyYs
IGxvbmcgbG9uZyYgcmFuZ2VPZmZzZXQsIGxvbmcgbG9uZyYgcmFuZ2VFbmQsIGxvbmcgbG9uZyYg
cmFuZ2VTdWZmaXhMZW5ndGgpOwogCisjaWYgRU5BQkxFKE5PU05JRkYpCitDb250ZW50VHlwZU9w
dGlvbnNEaXNwb3NpdGlvbiBwYXJzZUNvbnRlbnRUeXBlT3B0aW9uc0hlYWRlcihjb25zdCBTdHJp
bmcmIGhlYWRlcik7CisjZW5kaWYKKwogLy8gUGFyc2luZyBDb21wbGV0ZSBIVFRQIE1lc3NhZ2Vz
LgogZW51bSBIVFRQVmVyc2lvbiB7IFVua25vd24sIEhUVFBfMV8wLCBIVFRQXzFfMSB9Owogc2l6
ZV90IHBhcnNlSFRUUFJlcXVlc3RMaW5lKGNvbnN0IGNoYXIqIGRhdGEsIHNpemVfdCBsZW5ndGgs
IFN0cmluZyYgZmFpbHVyZVJlYXNvbiwgU3RyaW5nJiBtZXRob2QsIFN0cmluZyYgdXJsLCBIVFRQ
VmVyc2lvbiYpOwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nIGIvTGF5b3V0VGVz
dHMvQ2hhbmdlTG9nCmluZGV4IDI4Y2M4YmNlMjliOWIzMjYwOGMyZjBlNDFkZGI0OThhZGIzZWU2
MTcuLjRmMDhmOGIxMDAxMjg0MmY2MjA3MDBiMDc5NTk4NDA4ZWZmYWNhZjEgMTAwNjQ0Ci0tLSBh
L0xheW91dFRlc3RzL0NoYW5nZUxvZworKysgYi9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKQEAgLTEs
MyArMSwzMCBAQAorMjAxMy0wMi0wOSAgTWlrZSBXZXN0ICA8bWt3c3RAY2hyb21pdW0ub3JnPgor
CisgICAgICAgIEltcGxlbWVudCBzY3JpcHQgTUlNRSByZXN0cmljdGlvbnMgZm9yIFgtQ29udGVu
dC1UeXBlLU9wdGlvbnM6IG5vc25pZmYKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcv
c2hvd19idWcuY2dpP2lkPTcxODUxCisKKyAgICAgICAgUmV2aWV3ZWQgYnkgQWRhbSBCYXJ0aC4K
KworICAgICAgICAqIGh0dHAvdGVzdHMvc2VjdXJpdHkvY29udGVudFR5cGVPcHRpb25zL2ludmFs
aWQtY29udGVudC10eXBlLW9wdGlvbnMtYWxsb3dlZC1leHBlY3RlZC50eHQ6IEFkZGVkLgorICAg
ICAgICAqIGh0dHAvdGVzdHMvc2VjdXJpdHkvY29udGVudFR5cGVPcHRpb25zL2ludmFsaWQtY29u
dGVudC10eXBlLW9wdGlvbnMtYWxsb3dlZC5odG1sOiBBZGRlZC4KKyAgICAgICAgKiBodHRwL3Rl
c3RzL3NlY3VyaXR5L2NvbnRlbnRUeXBlT3B0aW9ucy9ub3NuaWZmLXNjcmlwdC1hbGxvd2VkLWV4
cGVjdGVkLnR4dDogQWRkZWQuCisgICAgICAgICogaHR0cC90ZXN0cy9zZWN1cml0eS9jb250ZW50
VHlwZU9wdGlvbnMvbm9zbmlmZi1zY3JpcHQtYWxsb3dlZC5odG1sOiBBZGRlZC4KKyAgICAgICAg
KiBodHRwL3Rlc3RzL3NlY3VyaXR5L2NvbnRlbnRUeXBlT3B0aW9ucy9ub3NuaWZmLXNjcmlwdC1i
bG9ja2VkLWV4cGVjdGVkLnR4dDogQWRkZWQuCisgICAgICAgICogaHR0cC90ZXN0cy9zZWN1cml0
eS9jb250ZW50VHlwZU9wdGlvbnMvbm9zbmlmZi1zY3JpcHQtYmxvY2tlZC5odG1sOiBBZGRlZC4K
KyAgICAgICAgKiBodHRwL3Rlc3RzL3NlY3VyaXR5L2NvbnRlbnRUeXBlT3B0aW9ucy9ub3NuaWZm
LXNjcmlwdC13aXRob3V0LWNvbnRlbnQtdHlwZS1ibG9ja2VkLWV4cGVjdGVkLnR4dDogQWRkZWQu
CisgICAgICAgICogaHR0cC90ZXN0cy9zZWN1cml0eS9jb250ZW50VHlwZU9wdGlvbnMvbm9zbmlm
Zi1zY3JpcHQtd2l0aG91dC1jb250ZW50LXR5cGUtYmxvY2tlZC5odG1sOiBBZGRlZC4KKyAgICAg
ICAgKiBodHRwL3Rlc3RzL3NlY3VyaXR5L2NvbnRlbnRUeXBlT3B0aW9ucy9yZXNvdXJjZXMvc2Ny
aXB0LXdpdGgtaGVhZGVyLnBsOiBBZGRlZC4KKyAgICAgICAgICAgIE5ldyB0ZXN0cyEKKyAgICAg
ICAgKiBwbGF0Zm9ybS9lZmwvVGVzdEV4cGVjdGF0aW9uczoKKyAgICAgICAgKiBwbGF0Zm9ybS9n
dGsvVGVzdEV4cGVjdGF0aW9uczoKKyAgICAgICAgKiBwbGF0Zm9ybS9tYWMvVGVzdEV4cGVjdGF0
aW9uczoKKyAgICAgICAgKiBwbGF0Zm9ybS9xdC9UZXN0RXhwZWN0YXRpb25zOgorICAgICAgICAq
IHBsYXRmb3JtL3dpbi9UZXN0RXhwZWN0YXRpb25zOgorICAgICAgICAqIHBsYXRmb3JtL3dpbmNh
aXJvL1Rlc3RFeHBlY3RhdGlvbnM6CisgICAgICAgICogcGxhdGZvcm0vd2syL1Rlc3RFeHBlY3Rh
dGlvbnM6CisgICAgICAgICAgICBTa2lwIHRoZSBuZXcgdGVzdHMgb24gcGxhdGZvcm1zIHdoZXJl
IEVOQUJMRV9OT1NOSUZGIGlzbid0IHlldAorICAgICAgICAgICAgZW5hYmxlZCAoZXZlcnl0aGlu
ZyBvdGhlciB0aGFuIENocm9taXVtKS4KKwogMjAxMy0wMi0wOCAgRXJpYyBDYXJsc29uICA8ZXJp
Yy5jYXJsc29uQGFwcGxlLmNvbT4KIAogICAgICAgICBbTWFjXSByZXNwZWN0IGluLWJhbmQgY2Fw
dGlvbiBjb2xvcgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9zZWN1cml0eS9j
b250ZW50VHlwZU9wdGlvbnMvaW52YWxpZC1jb250ZW50LXR5cGUtb3B0aW9ucy1hbGxvd2VkLWV4
cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvc2VjdXJpdHkvY29udGVudFR5cGVP
cHRpb25zL2ludmFsaWQtY29udGVudC10eXBlLW9wdGlvbnMtYWxsb3dlZC1leHBlY3RlZC50eHQK
bmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMC4uNzliYTUzYmRiZmFhZGExNDk2NzJmMDMzZGQzOWE5NzkwM2RmODJiYgotLS0g
L2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvc2VjdXJpdHkvY29udGVudFR5
cGVPcHRpb25zL2ludmFsaWQtY29udGVudC10eXBlLW9wdGlvbnMtYWxsb3dlZC1leHBlY3RlZC50
eHQKQEAgLTAsMCArMSwxNiBAQAorQ09OU09MRSBNRVNTQUdFOiBsaW5lIDE6IEV4ZWN1dGVkIHNj
cmlwdCB3aXRoIE1JTUUgdHlwZTogJ2FwcGxpY2F0aW9uL2pzb24nLgorQ09OU09MRSBNRVNTQUdF
OiBsaW5lIDE6IEV4ZWN1dGVkIHNjcmlwdCB3aXRoIE1JTUUgdHlwZTogJ2ltYWdlL3BuZycuCitD
T05TT0xFIE1FU1NBR0U6IGxpbmUgMTogRXhlY3V0ZWQgc2NyaXB0IHdpdGggTUlNRSB0eXBlOiAn
dGV4dC9odG1sJy4KK0NPTlNPTEUgTUVTU0FHRTogbGluZSAxOiBFeGVjdXRlZCBzY3JpcHQgd2l0
aCBNSU1FIHR5cGU6ICd0ZXh0L3ZicycuCitDT05TT0xFIE1FU1NBR0U6IGxpbmUgMTogRXhlY3V0
ZWQgc2NyaXB0IHdpdGggTUlNRSB0eXBlOiAndGV4dC92YnNjcmlwdCcuCitDT05TT0xFIE1FU1NB
R0U6IGxpbmUgMTogRXhlY3V0ZWQgc2NyaXB0IHdpdGggTUlNRSB0eXBlOiAndGV4dC94LWphdmFz
Y3JpcHQnLgorQ2hlY2sgdGhhdCBzY3JpcHQgc2VudCB3aXRoIGFuIGludmFsaWQgJ1gtQ29udGVu
dC1UeXBlLU9wdGlvbnM6IG5vc25pZmYnIGhlYWRlciBpcyBjb3JyZWN0bHkgYWxsb3dlZCwgZXZl
biBpZiB0aGUgTUlNRSB0eXBlIGlzbid0IHNjcmlwdHkuCisKK09uIHN1Y2Nlc3MsIHlvdSB3aWxs
IHNlZSBhIHNlcmllcyBvZiAiUEFTUyIgbWVzc2FnZXMsIGZvbGxvd2VkIGJ5ICJURVNUIENPTVBM
RVRFIi4KKworCitQQVNTIHdpbmRvdy5zY3JpcHRzU3VjY2Vzc2Z1bGx5TG9hZGVkIGlzIHVuc2Ny
aXB0eU1pbWVUeXBlcy5sZW5ndGgKK1BBU1Mgc3VjY2Vzc2Z1bGx5UGFyc2VkIGlzIHRydWUKKwor
VEVTVCBDT01QTEVURQorCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3NlY3Vy
aXR5L2NvbnRlbnRUeXBlT3B0aW9ucy9pbnZhbGlkLWNvbnRlbnQtdHlwZS1vcHRpb25zLWFsbG93
ZWQuaHRtbCBiL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvc2VjdXJpdHkvY29udGVudFR5cGVPcHRp
b25zL2ludmFsaWQtY29udGVudC10eXBlLW9wdGlvbnMtYWxsb3dlZC5odG1sCm5ldyBmaWxlIG1v
ZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAu
LjU3YTZjMjY1ZjkxMmUyZWYxYmEzNWQ3NzIzNjI3ZTk0NTJjZDFmNzIKLS0tIC9kZXYvbnVsbAor
KysgYi9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3NlY3VyaXR5L2NvbnRlbnRUeXBlT3B0aW9ucy9p
bnZhbGlkLWNvbnRlbnQtdHlwZS1vcHRpb25zLWFsbG93ZWQuaHRtbApAQCAtMCwwICsxLDMzIEBA
Cis8IURPQ1RZUEUgaHRtbD4KKzxodG1sPgorPGhlYWQ+CisgICAgPHRpdGxlPidYLUNvbnRlbnQt
VHlwZS1PcHRpb25zOiBub3NuaWZmOycgYmxvY2tzIHNjcmlwdHMhPC90aXRsZT4KKzxib2R5Pgor
ICAgIDxzY3JpcHQgc3JjPSIvanMtdGVzdC1yZXNvdXJjZXMvanMtdGVzdC1wcmUuanMiPjwvc2Ny
aXB0PgorICAgIDxzY3JpcHQ+CisgICAgICAgIGRlc2NyaXB0aW9uKCdDaGVjayB0aGF0IHNjcmlw
dCBzZW50IHdpdGggYW4gaW52YWxpZCBcJ1gtQ29udGVudC1UeXBlLU9wdGlvbnM6IG5vc25pZmZc
JyBoZWFkZXIgaXMgY29ycmVjdGx5IGFsbG93ZWQsIGV2ZW4gaWYgdGhlIE1JTUUgdHlwZSBpc25c
J3Qgc2NyaXB0eS4nKTsKKyAgICAgICAgd2luZG93LmpzVGVzdElzQXN5bmMgPSB0cnVlOworCisg
ICAgICAgIHZhciB1bnNjcmlwdHlNaW1lVHlwZXMgPSBbCisgICAgICAgICAgICAnYXBwbGljYXRp
b24vanNvbicsCisgICAgICAgICAgICAnaW1hZ2UvcG5nJywKKyAgICAgICAgICAgICd0ZXh0L2h0
bWwnLAorICAgICAgICAgICAgJ3RleHQvdmJzJywKKyAgICAgICAgICAgICd0ZXh0L3Zic2NyaXB0
JywKKyAgICAgICAgICAgICd0ZXh0L3gtamF2YXNjcmlwdCcsCisgICAgICAgIF07CisKKyAgICAg
ICAgd2luZG93LnNjcmlwdHNTdWNjZXNzZnVsbHlMb2FkZWQgPSAwOworCisgICAgICAgIGZvciAo
dmFyIGkgPSAwOyBpIDwgdW5zY3JpcHR5TWltZVR5cGVzLmxlbmd0aDsgaSsrKSB7CisgICAgICAg
ICAgICBkb2N1bWVudC53cml0ZSgnPHNjcmlwdCBzcmM9Ii4vcmVzb3VyY2VzL3NjcmlwdC13aXRo
LWhlYWRlci5wbD9taW1lPScgKyB1bnNjcmlwdHlNaW1lVHlwZXNbaV0gKyAnJmFtcDtvcHRpb25z
PWludmFsaWQiPjwnICsgJy9zY3JpcHQ+Jyk7CisgICAgICAgIH0KKworICAgICAgICB3aW5kb3cu
b25sb2FkID0gZnVuY3Rpb24gKCkgeworICAgICAgICAgICAgc2hvdWxkQmUoJ3dpbmRvdy5zY3Jp
cHRzU3VjY2Vzc2Z1bGx5TG9hZGVkJywgJ3Vuc2NyaXB0eU1pbWVUeXBlcy5sZW5ndGgnKTsKKyAg
ICAgICAgICAgIGZpbmlzaEpTVGVzdCgpOworICAgICAgICB9OworICAgIDwvc2NyaXB0PgorICAg
IDxzY3JpcHQgc3JjPSIvanMtdGVzdC1yZXNvdXJjZXMvanMtdGVzdC1wb3N0LmpzIj48L3Njcmlw
dD4KKzwvYm9keT4KKzwvaHRtbD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2h0dHAvdGVzdHMv
c2VjdXJpdHkvY29udGVudFR5cGVPcHRpb25zL25vc25pZmYtc2NyaXB0LWFsbG93ZWQtZXhwZWN0
ZWQudHh0IGIvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9zZWN1cml0eS9jb250ZW50VHlwZU9wdGlv
bnMvbm9zbmlmZi1zY3JpcHQtYWxsb3dlZC1leHBlY3RlZC50eHQKbmV3IGZpbGUgbW9kZSAxMDA2
NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uYTFiMTk5
MDE5ZjgyMDgwMjNjMThlNTlmZTgxN2RjN2RmNDAzY2QyZgotLS0gL2Rldi9udWxsCisrKyBiL0xh
eW91dFRlc3RzL2h0dHAvdGVzdHMvc2VjdXJpdHkvY29udGVudFR5cGVPcHRpb25zL25vc25pZmYt
c2NyaXB0LWFsbG93ZWQtZXhwZWN0ZWQudHh0CkBAIC0wLDAgKzEsMjAgQEAKK0NPTlNPTEUgTUVT
U0FHRTogbGluZSAxOiBFeGVjdXRlZCBzY3JpcHQgd2l0aCBNSU1FIHR5cGU6ICd0ZXh0L2phdmFz
Y3JpcHQxLjEnLgorQ09OU09MRSBNRVNTQUdFOiBsaW5lIDE6IEV4ZWN1dGVkIHNjcmlwdCB3aXRo
IE1JTUUgdHlwZTogJ3RleHQvamF2YXNjcmlwdDEuMicuCitDT05TT0xFIE1FU1NBR0U6IGxpbmUg
MTogRXhlY3V0ZWQgc2NyaXB0IHdpdGggTUlNRSB0eXBlOiAndGV4dC9qYXZhc2NyaXB0MS4zJy4K
K0NPTlNPTEUgTUVTU0FHRTogbGluZSAxOiBFeGVjdXRlZCBzY3JpcHQgd2l0aCBNSU1FIHR5cGU6
ICd0ZXh0L2xpdmVzY3JpcHQnLgorQ09OU09MRSBNRVNTQUdFOiBsaW5lIDE6IEV4ZWN1dGVkIHNj
cmlwdCB3aXRoIE1JTUUgdHlwZTogJ2FwcGxpY2F0aW9uL2VjbWFzY3JpcHQnLgorQ09OU09MRSBN
RVNTQUdFOiBsaW5lIDE6IEV4ZWN1dGVkIHNjcmlwdCB3aXRoIE1JTUUgdHlwZTogJ2FwcGxpY2F0
aW9uL2phdmFzY3JpcHQnLgorQ09OU09MRSBNRVNTQUdFOiBsaW5lIDE6IEV4ZWN1dGVkIHNjcmlw
dCB3aXRoIE1JTUUgdHlwZTogJ2FwcGxpY2F0aW9uL3gtamF2YXNjcmlwdCcuCitDT05TT0xFIE1F
U1NBR0U6IGxpbmUgMTogRXhlY3V0ZWQgc2NyaXB0IHdpdGggTUlNRSB0eXBlOiAndGV4dC9lY21h
c2NyaXB0Jy4KK0NPTlNPTEUgTUVTU0FHRTogbGluZSAxOiBFeGVjdXRlZCBzY3JpcHQgd2l0aCBN
SU1FIHR5cGU6ICd0ZXh0L2phdmFzY3JpcHQnLgorQ09OU09MRSBNRVNTQUdFOiBsaW5lIDE6IEV4
ZWN1dGVkIHNjcmlwdCB3aXRoIE1JTUUgdHlwZTogJ3RleHQvanNjcmlwdCcuCitDaGVjayB0aGF0
IHNjcmlwdCBzZW50IHdpdGggYW4gJ1gtQ29udGVudC1UeXBlLU9wdGlvbnM6IG5vc25pZmYnIGhl
YWRlciBpcyBjb3JyZWN0bHkgYWxsb3dlZCBpZiB0aGUgTUlNRSB0eXBlIGlzIHNjcmlwdHkuCisK
K09uIHN1Y2Nlc3MsIHlvdSB3aWxsIHNlZSBhIHNlcmllcyBvZiAiUEFTUyIgbWVzc2FnZXMsIGZv
bGxvd2VkIGJ5ICJURVNUIENPTVBMRVRFIi4KKworCitQQVNTIHdpbmRvdy5zY3JpcHRzU3VjY2Vz
c2Z1bGx5TG9hZGVkIGlzIHNjcmlwdHlNaW1lVHlwZXMubGVuZ3RoCitQQVNTIHN1Y2Nlc3NmdWxs
eVBhcnNlZCBpcyB0cnVlCisKK1RFU1QgQ09NUExFVEUKKwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVz
dHMvaHR0cC90ZXN0cy9zZWN1cml0eS9jb250ZW50VHlwZU9wdGlvbnMvbm9zbmlmZi1zY3JpcHQt
YWxsb3dlZC5odG1sIGIvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9zZWN1cml0eS9jb250ZW50VHlw
ZU9wdGlvbnMvbm9zbmlmZi1zY3JpcHQtYWxsb3dlZC5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0
CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjQ4YmVjMTc1
YjJjNmJkOGQ4MWYyNzQyYTVjNzIyMTMxMTYxYmU1ZTgKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlv
dXRUZXN0cy9odHRwL3Rlc3RzL3NlY3VyaXR5L2NvbnRlbnRUeXBlT3B0aW9ucy9ub3NuaWZmLXNj
cmlwdC1hbGxvd2VkLmh0bWwKQEAgLTAsMCArMSwzNyBAQAorPCFET0NUWVBFIGh0bWw+Cis8aHRt
bD4KKzxoZWFkPgorICAgIDx0aXRsZT4nWC1Db250ZW50LVR5cGUtT3B0aW9uczogbm9zbmlmZjsn
IGFsbG93cyBzY3JpcHRzITwvdGl0bGU+Cis8Ym9keT4KKyAgICA8c2NyaXB0IHNyYz0iL2pzLXRl
c3QtcmVzb3VyY2VzL2pzLXRlc3QtcHJlLmpzIj48L3NjcmlwdD4KKyAgICA8c2NyaXB0PgorICAg
ICAgICBkZXNjcmlwdGlvbignQ2hlY2sgdGhhdCBzY3JpcHQgc2VudCB3aXRoIGFuIFwnWC1Db250
ZW50LVR5cGUtT3B0aW9uczogbm9zbmlmZlwnIGhlYWRlciBpcyBjb3JyZWN0bHkgYWxsb3dlZCBp
ZiB0aGUgTUlNRSB0eXBlIGlzIHNjcmlwdHkuJyk7CisgICAgICAgIHdpbmRvdy5qc1Rlc3RJc0Fz
eW5jID0gdHJ1ZTsKKworICAgICAgICB2YXIgc2NyaXB0eU1pbWVUeXBlcyA9IFsKKyAgICAgICAg
ICAgICJ0ZXh0L2phdmFzY3JpcHQxLjEiLAorICAgICAgICAgICAgInRleHQvamF2YXNjcmlwdDEu
MiIsCisgICAgICAgICAgICAidGV4dC9qYXZhc2NyaXB0MS4zIiwKKyAgICAgICAgICAgICJ0ZXh0
L2xpdmVzY3JpcHQiLAorICAgICAgICAgICAgJ2FwcGxpY2F0aW9uL2VjbWFzY3JpcHQnLAorICAg
ICAgICAgICAgJ2FwcGxpY2F0aW9uL2phdmFzY3JpcHQnLAorICAgICAgICAgICAgJ2FwcGxpY2F0
aW9uL3gtamF2YXNjcmlwdCcsCisgICAgICAgICAgICAndGV4dC9lY21hc2NyaXB0JywKKyAgICAg
ICAgICAgICd0ZXh0L2phdmFzY3JpcHQnLAorICAgICAgICAgICAgJ3RleHQvanNjcmlwdCcsCisg
ICAgICAgIF07CisKKyAgICAgICAgd2luZG93LnNjcmlwdHNTdWNjZXNzZnVsbHlMb2FkZWQgPSAw
OworCisgICAgICAgIGZvciAodmFyIGkgPSAwOyBpIDwgc2NyaXB0eU1pbWVUeXBlcy5sZW5ndGg7
IGkrKykgeworICAgICAgICAgICAgZG9jdW1lbnQud3JpdGUoJzxzY3JpcHQgc3JjPSIuL3Jlc291
cmNlcy9zY3JpcHQtd2l0aC1oZWFkZXIucGw/bWltZT0nICsgc2NyaXB0eU1pbWVUeXBlc1tpXSAr
ICciPjwnICsgJy9zY3JpcHQ+Jyk7CisgICAgICAgIH0KKworICAgICAgICB3aW5kb3cub25sb2Fk
ID0gZnVuY3Rpb24gKCkgeworICAgICAgICAgICAgc2hvdWxkQmUoJ3dpbmRvdy5zY3JpcHRzU3Vj
Y2Vzc2Z1bGx5TG9hZGVkJywgJ3NjcmlwdHlNaW1lVHlwZXMubGVuZ3RoJyk7CisgICAgICAgICAg
ICBmaW5pc2hKU1Rlc3QoKTsKKyAgICAgICAgfTsKKyAgICA8L3NjcmlwdD4KKyAgICA8c2NyaXB0
IHNyYz0iL2pzLXRlc3QtcmVzb3VyY2VzL2pzLXRlc3QtcG9zdC5qcyI+PC9zY3JpcHQ+Cis8L2Jv
ZHk+Cis8L2h0bWw+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3NlY3VyaXR5
L2NvbnRlbnRUeXBlT3B0aW9ucy9ub3NuaWZmLXNjcmlwdC1ibG9ja2VkLWV4cGVjdGVkLnR4dCBi
L0xheW91dFRlc3RzL2h0dHAvdGVzdHMvc2VjdXJpdHkvY29udGVudFR5cGVPcHRpb25zL25vc25p
ZmYtc2NyaXB0LWJsb2NrZWQtZXhwZWN0ZWQudHh0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4
IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjY5MzVlNDZlZTFkYWJj
YWJlYWNlMWRmOTQxODBlOTdlMmE0ZDFjMDEKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0
cy9odHRwL3Rlc3RzL3NlY3VyaXR5L2NvbnRlbnRUeXBlT3B0aW9ucy9ub3NuaWZmLXNjcmlwdC1i
bG9ja2VkLWV4cGVjdGVkLnR4dApAQCAtMCwwICsxLDE2IEBACitDT05TT0xFIE1FU1NBR0U6IFJl
ZnVzZWQgdG8gZXhlY3V0ZSBzY3JpcHQgZnJvbSAnaHR0cDovLzEyNy4wLjAuMTo4MDAwL3NlY3Vy
aXR5L2NvbnRlbnRUeXBlT3B0aW9ucy9yZXNvdXJjZXMvc2NyaXB0LXdpdGgtaGVhZGVyLnBsP21p
bWU9YXBwbGljYXRpb24vanNvbicgYmVjYXVzZSBpdHMgTUlNRSB0eXBlICgnYXBwbGljYXRpb24v
anNvbicpIGlzIG5vdCBleGVjdXRhYmxlLCBhbmQgc3RyaWN0IE1JTUUgdHlwZSBjaGVja2luZyBp
cyBlbmFibGVkLgorQ09OU09MRSBNRVNTQUdFOiBSZWZ1c2VkIHRvIGV4ZWN1dGUgc2NyaXB0IGZy
b20gJ2h0dHA6Ly8xMjcuMC4wLjE6ODAwMC9zZWN1cml0eS9jb250ZW50VHlwZU9wdGlvbnMvcmVz
b3VyY2VzL3NjcmlwdC13aXRoLWhlYWRlci5wbD9taW1lPWltYWdlL3BuZycgYmVjYXVzZSBpdHMg
TUlNRSB0eXBlICgnaW1hZ2UvcG5nJykgaXMgbm90IGV4ZWN1dGFibGUsIGFuZCBzdHJpY3QgTUlN
RSB0eXBlIGNoZWNraW5nIGlzIGVuYWJsZWQuCitDT05TT0xFIE1FU1NBR0U6IFJlZnVzZWQgdG8g
ZXhlY3V0ZSBzY3JpcHQgZnJvbSAnaHR0cDovLzEyNy4wLjAuMTo4MDAwL3NlY3VyaXR5L2NvbnRl
bnRUeXBlT3B0aW9ucy9yZXNvdXJjZXMvc2NyaXB0LXdpdGgtaGVhZGVyLnBsP21pbWU9dGV4dC9o
dG1sJyBiZWNhdXNlIGl0cyBNSU1FIHR5cGUgKCd0ZXh0L2h0bWwnKSBpcyBub3QgZXhlY3V0YWJs
ZSwgYW5kIHN0cmljdCBNSU1FIHR5cGUgY2hlY2tpbmcgaXMgZW5hYmxlZC4KK0NPTlNPTEUgTUVT
U0FHRTogUmVmdXNlZCB0byBleGVjdXRlIHNjcmlwdCBmcm9tICdodHRwOi8vMTI3LjAuMC4xOjgw
MDAvc2VjdXJpdHkvY29udGVudFR5cGVPcHRpb25zL3Jlc291cmNlcy9zY3JpcHQtd2l0aC1oZWFk
ZXIucGw/bWltZT10ZXh0L3ZicycgYmVjYXVzZSBpdHMgTUlNRSB0eXBlICgndGV4dC92YnMnKSBp
cyBub3QgZXhlY3V0YWJsZSwgYW5kIHN0cmljdCBNSU1FIHR5cGUgY2hlY2tpbmcgaXMgZW5hYmxl
ZC4KK0NPTlNPTEUgTUVTU0FHRTogUmVmdXNlZCB0byBleGVjdXRlIHNjcmlwdCBmcm9tICdodHRw
Oi8vMTI3LjAuMC4xOjgwMDAvc2VjdXJpdHkvY29udGVudFR5cGVPcHRpb25zL3Jlc291cmNlcy9z
Y3JpcHQtd2l0aC1oZWFkZXIucGw/bWltZT10ZXh0L3Zic2NyaXB0JyBiZWNhdXNlIGl0cyBNSU1F
IHR5cGUgKCd0ZXh0L3Zic2NyaXB0JykgaXMgbm90IGV4ZWN1dGFibGUsIGFuZCBzdHJpY3QgTUlN
RSB0eXBlIGNoZWNraW5nIGlzIGVuYWJsZWQuCitDT05TT0xFIE1FU1NBR0U6IFJlZnVzZWQgdG8g
ZXhlY3V0ZSBzY3JpcHQgZnJvbSAnaHR0cDovLzEyNy4wLjAuMTo4MDAwL3NlY3VyaXR5L2NvbnRl
bnRUeXBlT3B0aW9ucy9yZXNvdXJjZXMvc2NyaXB0LXdpdGgtaGVhZGVyLnBsP21pbWU9dGV4dC94
LWphdmFzY3JpcHQnIGJlY2F1c2UgaXRzIE1JTUUgdHlwZSAoJ3RleHQveC1qYXZhc2NyaXB0Jykg
aXMgbm90IGV4ZWN1dGFibGUsIGFuZCBzdHJpY3QgTUlNRSB0eXBlIGNoZWNraW5nIGlzIGVuYWJs
ZWQuCitDaGVjayB0aGF0IHNjcmlwdCBzZW50IHdpdGggYW4gJ1gtQ29udGVudC1UeXBlLU9wdGlv
bnM6IG5vc25pZmYnIGhlYWRlciBpcyBjb3JyZWN0bHkgYmxvY2tlZCBpZiB0aGUgTUlNRSB0eXBl
IGlzbid0IHNjcmlwdHkuCisKK09uIHN1Y2Nlc3MsIHlvdSB3aWxsIHNlZSBhIHNlcmllcyBvZiAi
UEFTUyIgbWVzc2FnZXMsIGZvbGxvd2VkIGJ5ICJURVNUIENPTVBMRVRFIi4KKworCitQQVNTIHdp
bmRvdy5zY3JpcHRzU3VjY2Vzc2Z1bGx5TG9hZGVkIGlzIDAKK1BBU1Mgc3VjY2Vzc2Z1bGx5UGFy
c2VkIGlzIHRydWUKKworVEVTVCBDT01QTEVURQorCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9o
dHRwL3Rlc3RzL3NlY3VyaXR5L2NvbnRlbnRUeXBlT3B0aW9ucy9ub3NuaWZmLXNjcmlwdC1ibG9j
a2VkLmh0bWwgYi9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3NlY3VyaXR5L2NvbnRlbnRUeXBlT3B0
aW9ucy9ub3NuaWZmLXNjcmlwdC1ibG9ja2VkLmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5k
ZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uYWY3NGIyOGY4ZGEy
NDYwZjVkODUyYWRkMzI2MDExZjA1NjM5YjUwZAotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRl
c3RzL2h0dHAvdGVzdHMvc2VjdXJpdHkvY29udGVudFR5cGVPcHRpb25zL25vc25pZmYtc2NyaXB0
LWJsb2NrZWQuaHRtbApAQCAtMCwwICsxLDMzIEBACis8IURPQ1RZUEUgaHRtbD4KKzxodG1sPgor
PGhlYWQ+CisgICAgPHRpdGxlPidYLUNvbnRlbnQtVHlwZS1PcHRpb25zOiBub3NuaWZmOycgYmxv
Y2tzIHNjcmlwdHMhPC90aXRsZT4KKzxib2R5PgorICAgIDxzY3JpcHQgc3JjPSIvanMtdGVzdC1y
ZXNvdXJjZXMvanMtdGVzdC1wcmUuanMiPjwvc2NyaXB0PgorICAgIDxzY3JpcHQ+CisgICAgICAg
IGRlc2NyaXB0aW9uKCdDaGVjayB0aGF0IHNjcmlwdCBzZW50IHdpdGggYW4gXCdYLUNvbnRlbnQt
VHlwZS1PcHRpb25zOiBub3NuaWZmXCcgaGVhZGVyIGlzIGNvcnJlY3RseSBibG9ja2VkIGlmIHRo
ZSBNSU1FIHR5cGUgaXNuXCd0IHNjcmlwdHkuJyk7CisgICAgICAgIHdpbmRvdy5qc1Rlc3RJc0Fz
eW5jID0gdHJ1ZTsKKworICAgICAgICB2YXIgdW5zY3JpcHR5TWltZVR5cGVzID0gWworICAgICAg
ICAgICAgJ2FwcGxpY2F0aW9uL2pzb24nLAorICAgICAgICAgICAgJ2ltYWdlL3BuZycsCisgICAg
ICAgICAgICAndGV4dC9odG1sJywKKyAgICAgICAgICAgICd0ZXh0L3ZicycsCisgICAgICAgICAg
ICAndGV4dC92YnNjcmlwdCcsCisgICAgICAgICAgICAndGV4dC94LWphdmFzY3JpcHQnLAorICAg
ICAgICBdOworCisgICAgICAgIHdpbmRvdy5zY3JpcHRzU3VjY2Vzc2Z1bGx5TG9hZGVkID0gMDsK
KworICAgICAgICBmb3IgKHZhciBpID0gMDsgaSA8IHVuc2NyaXB0eU1pbWVUeXBlcy5sZW5ndGg7
IGkrKykgeworICAgICAgICAgICAgZG9jdW1lbnQud3JpdGUoJzxzY3JpcHQgc3JjPSIuL3Jlc291
cmNlcy9zY3JpcHQtd2l0aC1oZWFkZXIucGw/bWltZT0nICsgdW5zY3JpcHR5TWltZVR5cGVzW2ld
ICsgJyI+PCcgKyAnL3NjcmlwdD4nKTsKKyAgICAgICAgfQorCisgICAgICAgIHdpbmRvdy5vbmxv
YWQgPSBmdW5jdGlvbiAoKSB7CisgICAgICAgICAgICBzaG91bGRCZSgnd2luZG93LnNjcmlwdHNT
dWNjZXNzZnVsbHlMb2FkZWQnLCAnMCcpOworICAgICAgICAgICAgZmluaXNoSlNUZXN0KCk7Cisg
ICAgICAgIH07CisgICAgPC9zY3JpcHQ+CisgICAgPHNjcmlwdCBzcmM9Ii9qcy10ZXN0LXJlc291
cmNlcy9qcy10ZXN0LXBvc3QuanMiPjwvc2NyaXB0PgorPC9ib2R5PgorPC9odG1sPgpkaWZmIC0t
Z2l0IGEvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9zZWN1cml0eS9jb250ZW50VHlwZU9wdGlvbnMv
bm9zbmlmZi1zY3JpcHQtd2l0aG91dC1jb250ZW50LXR5cGUtYmxvY2tlZC1leHBlY3RlZC50eHQg
Yi9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3NlY3VyaXR5L2NvbnRlbnRUeXBlT3B0aW9ucy9ub3Nu
aWZmLXNjcmlwdC13aXRob3V0LWNvbnRlbnQtdHlwZS1ibG9ja2VkLWV4cGVjdGVkLnR4dApuZXcg
ZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwLi4yNzEwMzlkYmM3M2VjMmE1MDZjZjNlNzQ2OTExNGNkMTkzMjdiMjRmCi0tLSAvZGV2
L251bGwKKysrIGIvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9zZWN1cml0eS9jb250ZW50VHlwZU9w
dGlvbnMvbm9zbmlmZi1zY3JpcHQtd2l0aG91dC1jb250ZW50LXR5cGUtYmxvY2tlZC1leHBlY3Rl
ZC50eHQKQEAgLTAsMCArMSwxMSBAQAorQ09OU09MRSBNRVNTQUdFOiBSZWZ1c2VkIHRvIGV4ZWN1
dGUgc2NyaXB0IGZyb20gJ2h0dHA6Ly8xMjcuMC4wLjE6ODAwMC9zZWN1cml0eS9jb250ZW50VHlw
ZU9wdGlvbnMvcmVzb3VyY2VzL3NjcmlwdC13aXRoLWhlYWRlci5wbCcgYmVjYXVzZSBpdHMgTUlN
RSB0eXBlICgndGV4dC9wbGFpbicpIGlzIG5vdCBleGVjdXRhYmxlLCBhbmQgc3RyaWN0IE1JTUUg
dHlwZSBjaGVja2luZyBpcyBlbmFibGVkLgorQ2hlY2sgdGhhdCBzY3JpcHQgc2VudCB3aXRoIGFu
ICdYLUNvbnRlbnQtVHlwZS1PcHRpb25zOiBub3NuaWZmJyBoZWFkZXIgaXMgY29ycmVjdGx5IGJs
b2NrZWQgaWYgbm8gJ0NvbnRlbnQtVHlwZScgaGVhZGVyIGlzIHByZXNlbnQuCisKK09uIHN1Y2Nl
c3MsIHlvdSB3aWxsIHNlZSBhIHNlcmllcyBvZiAiUEFTUyIgbWVzc2FnZXMsIGZvbGxvd2VkIGJ5
ICJURVNUIENPTVBMRVRFIi4KKworCitQQVNTIHdpbmRvdy5zY3JpcHRzU3VjY2Vzc2Z1bGx5TG9h
ZGVkIGlzIDAKK1BBU1Mgc3VjY2Vzc2Z1bGx5UGFyc2VkIGlzIHRydWUKKworVEVTVCBDT01QTEVU
RQorCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3NlY3VyaXR5L2NvbnRlbnRU
eXBlT3B0aW9ucy9ub3NuaWZmLXNjcmlwdC13aXRob3V0LWNvbnRlbnQtdHlwZS1ibG9ja2VkLmh0
bWwgYi9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3NlY3VyaXR5L2NvbnRlbnRUeXBlT3B0aW9ucy9u
b3NuaWZmLXNjcmlwdC13aXRob3V0LWNvbnRlbnQtdHlwZS1ibG9ja2VkLmh0bWwKbmV3IGZpbGUg
bW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MC4uN2YzMzc1NjBhZWYxMWM3NDU4YWI5YzI0Y2IzZDJiN2U5MDZjNWMzOQotLS0gL2Rldi9udWxs
CisrKyBiL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvc2VjdXJpdHkvY29udGVudFR5cGVPcHRpb25z
L25vc25pZmYtc2NyaXB0LXdpdGhvdXQtY29udGVudC10eXBlLWJsb2NrZWQuaHRtbApAQCAtMCww
ICsxLDE5IEBACis8IURPQ1RZUEUgaHRtbD4KKzxodG1sPgorPGhlYWQ+CisgICAgPHRpdGxlPidY
LUNvbnRlbnQtVHlwZS1PcHRpb25zOiBub3NuaWZmOycgYmxvY2tzIHNjcmlwdHMhPC90aXRsZT4K
Kzxib2R5PgorICAgIDxzY3JpcHQgc3JjPSIvanMtdGVzdC1yZXNvdXJjZXMvanMtdGVzdC1wcmUu
anMiPjwvc2NyaXB0PgorICAgIDxzY3JpcHQ+CisgICAgICAgIGRlc2NyaXB0aW9uKCdDaGVjayB0
aGF0IHNjcmlwdCBzZW50IHdpdGggYW4gXCdYLUNvbnRlbnQtVHlwZS1PcHRpb25zOiBub3NuaWZm
XCcgaGVhZGVyIGlzIGNvcnJlY3RseSBibG9ja2VkIGlmIG5vIFwnQ29udGVudC1UeXBlXCcgaGVh
ZGVyIGlzIHByZXNlbnQuJyk7CisgICAgICAgIHdpbmRvdy5qc1Rlc3RJc0FzeW5jID0gdHJ1ZTsK
KyAgICAgICAgd2luZG93LnNjcmlwdHNTdWNjZXNzZnVsbHlMb2FkZWQgPSAwOworICAgICAgICB3
aW5kb3cub25sb2FkID0gZnVuY3Rpb24gKCkgeworICAgICAgICAgICAgc2hvdWxkQmUoJ3dpbmRv
dy5zY3JpcHRzU3VjY2Vzc2Z1bGx5TG9hZGVkJywgJzAnKTsKKyAgICAgICAgICAgIGZpbmlzaEpT
VGVzdCgpOworICAgICAgICB9OworICAgIDwvc2NyaXB0PgorICAgIDxzY3JpcHQgc3JjPSIuL3Jl
c291cmNlcy9zY3JpcHQtd2l0aC1oZWFkZXIucGwiPjwvc2NyaXB0PgorICAgIDxzY3JpcHQgc3Jj
PSIvanMtdGVzdC1yZXNvdXJjZXMvanMtdGVzdC1wb3N0LmpzIj48L3NjcmlwdD4KKzwvYm9keT4K
KzwvaHRtbD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvc2VjdXJpdHkvY29u
dGVudFR5cGVPcHRpb25zL3Jlc291cmNlcy9zY3JpcHQtd2l0aC1oZWFkZXIucGwgYi9MYXlvdXRU
ZXN0cy9odHRwL3Rlc3RzL3NlY3VyaXR5L2NvbnRlbnRUeXBlT3B0aW9ucy9yZXNvdXJjZXMvc2Ny
aXB0LXdpdGgtaGVhZGVyLnBsCm5ldyBmaWxlIG1vZGUgMTAwNzU1CmluZGV4IDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjcwZTA2ODhjOThhODgxMzU2MDdiYzc5NmQ2
MjMyNmJlMTcwMmM4NTkKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9odHRwL3Rlc3Rz
L3NlY3VyaXR5L2NvbnRlbnRUeXBlT3B0aW9ucy9yZXNvdXJjZXMvc2NyaXB0LXdpdGgtaGVhZGVy
LnBsCkBAIC0wLDAgKzEsMTcgQEAKKyMhL3Vzci9iaW4vcGVybCAtd1QKK3VzZSBzdHJpY3Q7Cit1
c2UgQ0dJOworCitteSAkY2dpID0gbmV3IENHSTsKKworaWYgKCRjZ2ktPnBhcmFtKCdtaW1lJykp
IHsKKyAgICBwcmludCAiQ29udGVudC1UeXBlOiAiIC4gJGNnaS0+cGFyYW0oJ21pbWUnKSAuICJc
biI7Cit9CitpZiAoJGNnaS0+cGFyYW0oJ29wdGlvbnMnKSkgeworICAgIHByaW50ICJYLUNvbnRl
bnQtVHlwZS1PcHRpb25zOiAiIC4gJGNnaS0+cGFyYW0oJ29wdGlvbnMnKSAuICJcbiI7Cit9IGVs
c2UgeworICAgIHByaW50ICJYLUNvbnRlbnQtVHlwZS1PcHRpb25zOiBub3NuaWZmXG4iOworfQor
cHJpbnQgIlxuIjsKK3ByaW50ICJjb25zb2xlLmxvZyhcIkV4ZWN1dGVkIHNjcmlwdCB3aXRoIE1J
TUUgdHlwZTogJyIgLiAgJGNnaS0+cGFyYW0oJ21pbWUnKSAuICInLlwiKTtcbiI7CitwcmludCAi
d2luZG93LnNjcmlwdHNTdWNjZXNzZnVsbHlMb2FkZWQrKztcbiI7CmRpZmYgLS1naXQgYS9MYXlv
dXRUZXN0cy9wbGF0Zm9ybS9lZmwvVGVzdEV4cGVjdGF0aW9ucyBiL0xheW91dFRlc3RzL3BsYXRm
b3JtL2VmbC9UZXN0RXhwZWN0YXRpb25zCmluZGV4IDMzZTVhN2JiMTY2MzUzNDhkZjEzN2NhZDVh
ZWE4MThiNmIyOGYwYzkuLjU4NzlkZjcxNTgzMjU4NWUwMGFiYzY4NTc1ZGMwYmZjNmNmMmI4NWIg
MTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL3BsYXRmb3JtL2VmbC9UZXN0RXhwZWN0YXRpb25zCisr
KyBiL0xheW91dFRlc3RzL3BsYXRmb3JtL2VmbC9UZXN0RXhwZWN0YXRpb25zCkBAIC0zMDcsNiAr
MzA3LDkgQEAgZmFzdC90ZXh0L3VuaWNvZGUtdmFyaWF0aW9uLXNlbGVjdG9yLmh0bWwKIGZhc3Qv
Zm9ybXMvZmlsZS9pbnB1dC1maWxlLWVudHJpZXMuaHRtbAogaHR0cC90ZXN0cy9zZWN1cml0eS9j
b250ZW50U2VjdXJpdHlQb2xpY3kvZmlsZXN5c3RlbS11cmxzLW1hdGNoLXNlbGYuaHRtbAogCisj
IFgtQ29udGVudC1UeXBlLU9wdGlvbnMgKEVOQUJMRV9OT1NOSUZGKSBpcyBub3QgZW5hYmxlZC4K
K2h0dHAvdGVzdHMvc2VjdXJpdHkvY29udGVudFR5cGVPcHRpb25zCisKICMgVHJhbnNwYXJlbnQg
aW1hZ2UgYmVpbmcgcHJvZHVjZWQKIGZhc3QvZnJhbWVzL3RyYW5zcGFyZW50LXNjcm9sbGJhci5o
dG1sCiAKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL3BsYXRmb3JtL2d0ay9UZXN0RXhwZWN0YXRp
b25zIGIvTGF5b3V0VGVzdHMvcGxhdGZvcm0vZ3RrL1Rlc3RFeHBlY3RhdGlvbnMKaW5kZXggOGFh
ZDdmNGE4YWJjMjQ4Nzk2NjAzZWFiN2M1OTY0NThmNWVhMjhkNS4uMGM5Y2UxMjhkYTBiMTdmMGE2
Zjk4MjRlMmU0YjE3ODA1NWUxNzdlMSAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvcGxhdGZvcm0v
Z3RrL1Rlc3RFeHBlY3RhdGlvbnMKKysrIGIvTGF5b3V0VGVzdHMvcGxhdGZvcm0vZ3RrL1Rlc3RF
eHBlY3RhdGlvbnMKQEAgLTExOCw2ICsxMTgsOSBAQCB3ZWJraXQub3JnL2IvMTAzNTQ3IGZhc3Qv
eHNsL3hzbHQteGh0bWwtdGVtcGxhdGUueG1sIFsgU2tpcCBdCiB3ZWJraXQub3JnL2IvMTAzNTQ3
IGZhc3QveHBhdGgveHBhdGgtdGVtcGxhdGUtZWxlbWVudC5odG1sIFsgU2tpcCBdCiB3ZWJraXQu
b3JnL2IvMTAzNTQ3IGZhc3QveHNsL3hzbHQtcHJvY2Vzc29yLXRlbXBsYXRlLmh0bWwgWyBTa2lw
IF0KIAorIyBYLUNvbnRlbnQtVHlwZS1PcHRpb25zIChFTkFCTEVfTk9TTklGRikgaXMgbm90IGVu
YWJsZWQuCit3ZWJraXQub3JnL2IvNzE4NTEgaHR0cC90ZXN0cy9zZWN1cml0eS9jb250ZW50VHlw
ZU9wdGlvbnMgWyBTa2lwIF0KKwogIyBUaGVzZSB0ZXN0IC1hcHBsZS0gYW5kIC1raHRtbC0gcHJl
Zml4ZWQgQ1NTIHByb3BlcnRpZXMsIHdoaWNoIHdlIGRvbid0IHN1cHBvcnQuCiBpbnNwZWN0b3Iv
c3R5bGVzL3ZlbmRvci1wcmVmaXhlcy5odG1sIFsgV29udEZpeCBGYWlsdXJlIF0KIGZhc3QvY3Nz
L2FwcGxlLXByZWZpeC5odG1sIFsgV29udEZpeCBGYWlsdXJlIF0KZGlmZiAtLWdpdCBhL0xheW91
dFRlc3RzL3BsYXRmb3JtL21hYy9UZXN0RXhwZWN0YXRpb25zIGIvTGF5b3V0VGVzdHMvcGxhdGZv
cm0vbWFjL1Rlc3RFeHBlY3RhdGlvbnMKaW5kZXggNDRmNzU0NzJjYTNlY2Y1ODAyNGQxYjYwMGYw
OGY3OGUzZDBkYTA4NS4uMGFlODM5MzcyYjlkODlmYjA1ZDU3MjNhYzA3YTk2MDFjNGE4OGExMiAx
MDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvcGxhdGZvcm0vbWFjL1Rlc3RFeHBlY3RhdGlvbnMKKysr
IGIvTGF5b3V0VGVzdHMvcGxhdGZvcm0vbWFjL1Rlc3RFeHBlY3RhdGlvbnMKQEAgLTE5OCw2ICsx
OTgsOSBAQCBmYXN0L2Zvcm1zL3dlZWsKICMgRU5BQkxFX0dBTUVQQUQgbm90IGVuYWJsZWQuCiBn
YW1lcGFkLwogCisjIFgtQ29udGVudC1UeXBlLU9wdGlvbnMgKEVOQUJMRV9OT1NOSUZGKSBpcyBu
b3QgZW5hYmxlZC4KK2h0dHAvdGVzdHMvc2VjdXJpdHkvY29udGVudFR5cGVPcHRpb25zCisKICMg
U3BlZWNoIGlucHV0IGlzIG5vdCB5ZXQgZW5hYmxlZC4KIGZhc3Qvc3BlZWNoCiAKZGlmZiAtLWdp
dCBhL0xheW91dFRlc3RzL3BsYXRmb3JtL3F0L1Rlc3RFeHBlY3RhdGlvbnMgYi9MYXlvdXRUZXN0
cy9wbGF0Zm9ybS9xdC9UZXN0RXhwZWN0YXRpb25zCmluZGV4IGY2OGY5ZjcyZmY0ODNjMjEwN2Ez
N2UzOTVjNTBjOTE1NjJmNWJhMWYuLjViZWE2YzExZjlkMzcxZWNkZjU0NGVkMTE0ZTU1MDBmMDVh
NWY5MTcgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL3BsYXRmb3JtL3F0L1Rlc3RFeHBlY3RhdGlv
bnMKKysrIGIvTGF5b3V0VGVzdHMvcGxhdGZvcm0vcXQvVGVzdEV4cGVjdGF0aW9ucwpAQCAtNDgy
LDYgKzQ4Miw5IEBAIHdlYmtpdC5vcmcvYi82MTEzOCBodHRwL3Rlc3RzL3czYy93ZWJwZXJmL3N1
Ym1pc3Npb24vSW50ZWwvcmVzb3VyY2UtdGltaW5nCiAjIE1pc3NpbmcgZXZlbnRTZW5kZXIuc2No
ZWR1bGVBc3luY2hyb25vdXNLZXlEb3duKCkgaW1wbGVtZW50YXRpb24KIGZhc3QvZG9tL011dGF0
aW9uT2JzZXJ2ZXIvaW5saW5lLWV2ZW50LWxpc3RlbmVyLmh0bWwKIAorIyBYLUNvbnRlbnQtVHlw
ZS1PcHRpb25zIChFTkFCTEVfTk9TTklGRikgaXMgbm90IGVuYWJsZWQuCitodHRwL3Rlc3RzL3Nl
Y3VyaXR5L2NvbnRlbnRUeXBlT3B0aW9ucworCiAjID09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAjCiAjICAg
ICAgIERyYWcgYW5kIERyb3AgU3VwcG9ydCBpbiBEUlQuICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAjCiAjID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAjCmRpZmYgLS1naXQgYS9M
YXlvdXRUZXN0cy9wbGF0Zm9ybS93aW4vVGVzdEV4cGVjdGF0aW9ucyBiL0xheW91dFRlc3RzL3Bs
YXRmb3JtL3dpbi9UZXN0RXhwZWN0YXRpb25zCmluZGV4IDkxZjIzZTdjYzk2OGE2NmIwMzVhNmFl
ZjgzODJkODAyMjkwNGU3MDcuLmUyZmE4ZTJkOWYyMGY5NWIxYzUyM2UwYzM5MWFjOTllMzUzMTBi
YzYgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL3BsYXRmb3JtL3dpbi9UZXN0RXhwZWN0YXRpb25z
CisrKyBiL0xheW91dFRlc3RzL3BsYXRmb3JtL3dpbi9UZXN0RXhwZWN0YXRpb25zCkBAIC01OCw2
ICs1OCw5IEBAIGZhc3QvY3NzL2ltYWdlLXNldC1wYXJzaW5nLWludmFsaWQuaHRtbAogZmFzdC9j
c3MvY3Vyc29yLXBhcnNpbmctaW1hZ2Utc2V0Lmh0bWwKIGZhc3QvZXZlbnRzL21vdXNlLWN1cnNv
ci1pbWFnZS1zZXQuaHRtbAogCisjIFgtQ29udGVudC1UeXBlLU9wdGlvbnMgKEVOQUJMRV9OT1NO
SUZGKSBpcyBub3QgZW5hYmxlZC4KK2h0dHAvdGVzdHMvc2VjdXJpdHkvY29udGVudFR5cGVPcHRp
b25zCisKICMgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTc3NjQ1CiBj
c3MzL2ZpbHRlcnMvZmlsdGVyZWQtY29tcG9zaXRpbmctZGVzY2VuZGFudC5odG1sCiAKZGlmZiAt
LWdpdCBhL0xheW91dFRlc3RzL3BsYXRmb3JtL3dpbmNhaXJvL1Rlc3RFeHBlY3RhdGlvbnMgYi9M
YXlvdXRUZXN0cy9wbGF0Zm9ybS93aW5jYWlyby9UZXN0RXhwZWN0YXRpb25zCmluZGV4IDFjMGQ2
ODUyNWJhNzA5NmUzZGIzZGY0NTgyMmVjZjQ0NWQyMzM0MzkuLmM0MDk1YjVhMjI5MzAyNThhZGVk
NGMyNzI3ZjE2MWJhMjU5YjQwYjEgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL3BsYXRmb3JtL3dp
bmNhaXJvL1Rlc3RFeHBlY3RhdGlvbnMKKysrIGIvTGF5b3V0VGVzdHMvcGxhdGZvcm0vd2luY2Fp
cm8vVGVzdEV4cGVjdGF0aW9ucwpAQCAtMjUyNSw2ICsyNTI1LDkgQEAgZmFzdC9tdWx0aWNvbC9z
cGFuL2Nsb25lLWZsZXhib3guaHRtbAogIyBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1
Zy5jZ2k/aWQ9ODU1NTgKIGh0dHAvdGVzdHMvc2VjdXJpdHkvY29udGVudFNlY3VyaXR5UG9saWN5
LzEuMQogCisjIFgtQ29udGVudC1UeXBlLU9wdGlvbnMgKEVOQUJMRV9OT1NOSUZGKSBpcyBub3Qg
ZW5hYmxlZC4KK2h0dHAvdGVzdHMvc2VjdXJpdHkvY29udGVudFR5cGVPcHRpb25zCisKICMgU2tp
cCB0ZXN0cyBpbiBmYXN0L3RleHQvc2hhcGluZwogZmFzdC90ZXh0L3NoYXBpbmcKIApkaWZmIC0t
Z2l0IGEvTGF5b3V0VGVzdHMvcGxhdGZvcm0vd2syL1Rlc3RFeHBlY3RhdGlvbnMgYi9MYXlvdXRU
ZXN0cy9wbGF0Zm9ybS93azIvVGVzdEV4cGVjdGF0aW9ucwppbmRleCA0NzI0NjljMWQwMDAyN2Fm
MTQ2ZjFmMmM5ZDg4NzZkNGM2NDA0ZmYwLi45OWE5Njk1OWE1Mzk1YzQxMDVmZGUxOGQ4MjIyMTI2
Y2VjMWRmNjc5IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9wbGF0Zm9ybS93azIvVGVzdEV4cGVj
dGF0aW9ucworKysgYi9MYXlvdXRUZXN0cy9wbGF0Zm9ybS93azIvVGVzdEV4cGVjdGF0aW9ucwpA
QCAtNTY0LDYgKzU2NCw5IEBAIGh0dHAvdGVzdHMvc2VjdXJpdHkvdmlkZW8tY3Jvc3Mtb3JpZ2lu
LXJlYWRiYWNrLmh0bWwKICMgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lk
PTg1NTU4CiBodHRwL3Rlc3RzL3NlY3VyaXR5L2NvbnRlbnRTZWN1cml0eVBvbGljeS8xLjEKIAor
IyBYLUNvbnRlbnQtVHlwZS1PcHRpb25zIChFTkFCTEVfTk9TTklGRikgaXMgbm90IGVuYWJsZWQu
CitodHRwL3Rlc3RzL3NlY3VyaXR5L2NvbnRlbnRUeXBlT3B0aW9ucworCiAjIFVuZXhwZWN0ZWQg
cmVkaXJlY3Rpb24gaGFwcGVucy4KIGh0dHAvdGVzdHMvbG9hZGluZy9yZWRpcmVjdC1tZXRob2Rz
Lmh0bWwKIAo=
</data>

          </attachment>
      

    </bug>

</bugzilla>