<?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>86848</bug_id>
          
          <creation_ts>2012-05-18 06:13:38 -0700</creation_ts>
          <short_desc>Inline script and style blocked by Content Security Policy should provide more detailed console errors.</short_desc>
          <delta_ts>2012-06-07 23:43:32 -0700</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>WebCore Misc.</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords></keywords>
          <priority>P2</priority>
          <bug_severity>Minor</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Mike West">mkwst</reporter>
          <assigned_to name="Mike West">mkwst</assigned_to>
          <cc>abarth</cc>
    
    <cc>cdumez</cc>
    
    <cc>haraken</cc>
    
    <cc>japhet</cc>
    
    <cc>jbadics</cc>
    
    <cc>jochen</cc>
    
    <cc>kling</cc>
    
    <cc>koivisto</cc>
    
    <cc>webkit.review.bot</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>627625</commentid>
    <comment_count>0</comment_count>
    <who name="Mike West">mkwst</who>
    <bug_when>2012-05-18 06:13:38 -0700</bug_when>
    <thetext>Currently, inline script and style blocked by content security policy logs something like the following error to the console:

    Refused to execute inline script because it violates the following Content Security Policy directive: DIRECTIVE.

This would be improved by providing developers with the error&apos;s context. Adding a line number to the console message would enable the developer to jump directly to the error so they could see the issue clearly, rather than grepping through the DOM tree manually (or giving up entirely).</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>627650</commentid>
    <comment_count>1</comment_count>
      <attachid>142705</attachid>
    <who name="Mike West">mkwst</who>
    <bug_when>2012-05-18 06:49:22 -0700</bug_when>
    <thetext>Created attachment 142705
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>627655</commentid>
    <comment_count>2</comment_count>
    <who name="Mike West">mkwst</who>
    <bug_when>2012-05-18 06:51:35 -0700</bug_when>
    <thetext>This is a hopefully-not-too-ugly first pass at adding line numbers into the console messages. I&apos;m not incredibly familiar with the innards of the document parser or script controller, so I&apos;d appreciate some constructive feedback. :)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>627669</commentid>
    <comment_count>3</comment_count>
      <attachid>142705</attachid>
    <who name="">jochen</who>
    <bug_when>2012-05-18 07:06:48 -0700</bug_when>
    <thetext>Comment on attachment 142705
Patch

Can you add a test that creates a script element and inserts it into the document, something like

var el = document.createElement(&apos;script&apos;);
el.innerText = &apos;alert(1)&apos;;
document.body.appendChild(el);


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

&gt; Source/WebCore/page/ContentSecurityPolicy.cpp:526
&gt; +    bool checkInlineAndReportViolation(CSPDirective*, const String&amp; consoleMessage, const String&amp; url, int lineNumber) const;

maybe use sourceUrl and sourceLineNumber so it&apos;s clear what kind of url this is and that the both belong together?

&gt; Source/WebCore/page/ContentSecurityPolicy.cpp:694
&gt; +    return checkEvalAndReportViolation(operativeDirective(m_scriptSrc.get()), consoleMessage, KURL(), 0);

String() instead of KURL()?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>627691</commentid>
    <comment_count>4</comment_count>
      <attachid>142719</attachid>
    <who name="Mike West">mkwst</who>
    <bug_when>2012-05-18 07:45:03 -0700</bug_when>
    <thetext>Created attachment 142719
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>627692</commentid>
    <comment_count>5</comment_count>
    <who name="Mike West">mkwst</who>
    <bug_when>2012-05-18 07:47:43 -0700</bug_when>
    <thetext>Thanks Jochen, good idea to add injection tests.

1. I&apos;m not actually sure what the correct blocking behavior should be: the `script` elements don&apos;t actually get injected (I think?) so the line numbers point to the script block that contained the script that injected the script (which is confusing just to type). The better behavior would be to flag that at the `appendChild` or `document.write` call, but I&apos;m not sure at all how I would get that context piped through.

2. I went with `context{URL,LineNumber}` instead of `source*`. `source` is already being used in this context to talk about the resources themselves that are being blocked.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>627702</commentid>
    <comment_count>6</comment_count>
    <who name="">jochen</who>
    <bug_when>2012-05-18 08:03:51 -0700</bug_when>
    <thetext>(In reply to comment #5)
&gt; Thanks Jochen, good idea to add injection tests.

Now that you added new tests, you could update the WebCore/ChangeLog entry to reflect that

&gt; 
&gt; 1. I&apos;m not actually sure what the correct blocking behavior should be: the `script` elements don&apos;t actually get injected (I think?) so the line numbers point to the script block that contained the script that injected the script (which is confusing just to type). The better behavior would be to flag that at the `appendChild` or `document.write` call, but I&apos;m not sure at all how I would get that context piped through.

The script elements are actually being inserted into the document. I guess you could get the correct line number at ScriptElement::insertedAt and ::childrenChanged, however, there are already FIXME comments about the need to get the &quot;real&quot; line number


&gt; 
&gt; 2. I went with `context{URL,LineNumber}` instead of `source*`. `source` is already being used in this context to talk about the resources themselves that are being blocked.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>627727</commentid>
    <comment_count>7</comment_count>
      <attachid>142719</attachid>
    <who name="Adam Barth">abarth</who>
    <bug_when>2012-05-18 08:47:20 -0700</bug_when>
    <thetext>Comment on attachment 142719
Patch

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

&gt; Source/WebCore/bindings/js/JSLazyEventListener.cpp:83
&gt; +    ScriptController* script = document-&gt;frame()-&gt;script();

Any particular reason you moved this line?

&gt; Source/WebCore/dom/ScriptElement.cpp:75
&gt; +    if (m_element-&gt;document() &amp;&amp; m_element-&gt;document()-&gt;scriptableDocumentParser())

m_element-&gt;document() is never null.  The only way a node can have a null document is if it&apos;s a DocumentType node.

&gt; Source/WebCore/dom/ScriptElement.h:96
&gt; +    int m_startLineNumber;

Can you use an ordinal number (or whatever the class name is) so we don&apos;t forget if this is a one-based or zero-based line number?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>628082</commentid>
    <comment_count>8</comment_count>
      <attachid>142786</attachid>
    <who name="Mike West">mkwst</who>
    <bug_when>2012-05-18 14:32:10 -0700</bug_when>
    <thetext>Created attachment 142786
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>628089</commentid>
    <comment_count>9</comment_count>
    <who name="Mike West">mkwst</who>
    <bug_when>2012-05-18 14:37:32 -0700</bug_when>
    <thetext>Thanks for the feedback, Adam. The new patch should have taken care of the items you noted.

I haven&apos;t had much success at fixing the FIXME&apos;d `ScriptElement::insertedAt` and `ScriptElement::childrenChanged`. I&apos;ll keep digging around, but I&apos;d appreciate suggestions. :)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>628100</commentid>
    <comment_count>10</comment_count>
      <attachid>142786</attachid>
    <who name="Early Warning System Bot">webkit-ews</who>
    <bug_when>2012-05-18 14:45:50 -0700</bug_when>
    <thetext>Comment on attachment 142786
Patch

Attachment 142786 did not pass qt-wk2-ews (qt):
Output: http://queues.webkit.org/results/12724583</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>628107</commentid>
    <comment_count>11</comment_count>
      <attachid>142786</attachid>
    <who name="Early Warning System Bot">webkit-ews</who>
    <bug_when>2012-05-18 14:51:29 -0700</bug_when>
    <thetext>Comment on attachment 142786
Patch

Attachment 142786 did not pass qt-ews (qt):
Output: http://queues.webkit.org/results/12722920</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>628115</commentid>
    <comment_count>12</comment_count>
      <attachid>142792</attachid>
    <who name="Mike West">mkwst</who>
    <bug_when>2012-05-18 14:58:25 -0700</bug_when>
    <thetext>Created attachment 142792
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>628486</commentid>
    <comment_count>13</comment_count>
    <who name="">jochen</who>
    <bug_when>2012-05-19 13:55:19 -0700</bug_when>
    <thetext>(In reply to comment #9)
&gt; Thanks for the feedback, Adam. The new patch should have taken care of the items you noted.
&gt; 
&gt; I haven&apos;t had much success at fixing the FIXME&apos;d `ScriptElement::insertedAt` and `ScriptElement::childrenChanged`. I&apos;ll keep digging around, but I&apos;d appreciate suggestions. :)

I think you can&apos;t assign a useful line number to injected script tags. If you did, what if it&apos;s inserted before another tag that was originally in the file, would you update the line numbers in there?

Instead, I think the line number should be left undefined in these cases.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>629561</commentid>
    <comment_count>14</comment_count>
      <attachid>142792</attachid>
    <who name="Adam Barth">abarth</who>
    <bug_when>2012-05-21 15:11:20 -0700</bug_when>
    <thetext>Comment on attachment 142792
Patch

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

&gt; Source/WebCore/page/ContentSecurityPolicy.h:38
&gt; +namespace WTF {
&gt; +
&gt; +class OrdinalNumber;
&gt; +
&gt; +}

No need for blank lines around class OrdinalNumber</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>629583</commentid>
    <comment_count>15</comment_count>
    <who name="Mike West">mkwst</who>
    <bug_when>2012-05-21 15:21:32 -0700</bug_when>
    <thetext>Alright. I&apos;ll rebase this sometime after http://webk.it/86943 lands and hand it back to you for CQing.

Thanks!</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>630361</commentid>
    <comment_count>16</comment_count>
      <attachid>143299</attachid>
    <who name="Mike West">mkwst</who>
    <bug_when>2012-05-22 07:47:38 -0700</bug_when>
    <thetext>Created attachment 143299
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>630364</commentid>
    <comment_count>17</comment_count>
      <attachid>143299</attachid>
    <who name="Mike West">mkwst</who>
    <bug_when>2012-05-22 07:48:57 -0700</bug_when>
    <thetext>Comment on attachment 143299
Patch

Rebased onto trunk. Please take another look, if you don&apos;t mind, Adam.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>630408</commentid>
    <comment_count>18</comment_count>
      <attachid>143299</attachid>
    <who name="">jochen</who>
    <bug_when>2012-05-22 08:46:26 -0700</bug_when>
    <thetext>Comment on attachment 143299
Patch

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

&gt; LayoutTests/http/tests/security/contentSecurityPolicy/injected-inline-script-blocked-expected.txt:1
&gt; +CONSOLE MESSAGE: line 8: Refused to execute inline script because it violates the following Content Security Policy directive: &quot;script-src http://127.0.0.1:*&quot;.

I think it&apos;s a bit confusing that it points at line 8 because clearly that&apos;s not an inline script
 What about only storing the line number if the element was parser inserted?

Can you add a similar test for &lt;style&gt;?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>631367</commentid>
    <comment_count>19</comment_count>
      <attachid>143493</attachid>
    <who name="Mike West">mkwst</who>
    <bug_when>2012-05-23 01:17:21 -0700</bug_when>
    <thetext>Created attachment 143493
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>631371</commentid>
    <comment_count>20</comment_count>
    <who name="Mike West">mkwst</who>
    <bug_when>2012-05-23 01:22:08 -0700</bug_when>
    <thetext>(In reply to comment #18)
&gt; I think it&apos;s a bit confusing that it points at line 8 because clearly that&apos;s not an inline script
&gt;  What about only storing the line number if the element was parser inserted?

I&apos;ve added a check to ScriptElement::ScriptElement, and it already existed in StyleElement::StyleElement. The `document.write` call still ends up with a line number, however. Do you know if there&apos;s a good mechanism for detecting that insertion and clearing out the line number?
 
&gt; Can you add a similar test for &lt;style&gt;?

Good idea. Added.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>633816</commentid>
    <comment_count>21</comment_count>
    <who name="Mike West">mkwst</who>
    <bug_when>2012-05-25 04:13:37 -0700</bug_when>
    <thetext>Friendly ping. Are you happy with the current behavior, Jochen? If so, I&apos;ll cq?. If not, I&apos;m happy to make changes. :)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>633824</commentid>
    <comment_count>22</comment_count>
      <attachid>143493</attachid>
    <who name="">jochen</who>
    <bug_when>2012-05-25 04:23:40 -0700</bug_when>
    <thetext>Comment on attachment 143493
Patch

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

&gt; Source/WebCore/dom/ScriptElement.cpp:76
&gt; +    if (parserInserted &amp;&amp; m_element-&gt;document()-&gt;scriptableDocumentParser())

I think &amp;&amp; !m_element-&gt;document()-&gt;isInDocumentWrite() should do the trick

&gt; Source/WebCore/page/ContentSecurityPolicy.h:35
&gt; +

no emtpy lines here

&gt; Source/WebCore/page/ContentSecurityPolicy.h:37
&gt; +

or here</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>633834</commentid>
    <comment_count>23</comment_count>
      <attachid>144047</attachid>
    <who name="Mike West">mkwst</who>
    <bug_when>2012-05-25 05:01:44 -0700</bug_when>
    <thetext>Created attachment 144047
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>633835</commentid>
    <comment_count>24</comment_count>
    <who name="">jochen</who>
    <bug_when>2012-05-25 05:04:46 -0700</bug_when>
    <thetext>looks good, thank you</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>633855</commentid>
    <comment_count>25</comment_count>
      <attachid>144051</attachid>
    <who name="Mike West">mkwst</who>
    <bug_when>2012-05-25 05:58:26 -0700</bug_when>
    <thetext>Created attachment 144051
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>633858</commentid>
    <comment_count>26</comment_count>
    <who name="Mike West">mkwst</who>
    <bug_when>2012-05-25 05:59:27 -0700</bug_when>
    <thetext>Failed to apply; needed a rebase.

The github webkit mirror seems a bit out of date, however, which might make the new patch fail as well. Let&apos;s see how it goes.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>633888</commentid>
    <comment_count>27</comment_count>
      <attachid>144051</attachid>
    <who name="Mike West">mkwst</who>
    <bug_when>2012-05-25 06:49:27 -0700</bug_when>
    <thetext>Comment on attachment 144051
Patch

Looking decent. I&apos;ll cq? in the hopes that it passes the remaining bots happily.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>634362</commentid>
    <comment_count>28</comment_count>
      <attachid>144051</attachid>
    <who name="Adam Barth">abarth</who>
    <bug_when>2012-05-25 15:44:06 -0700</bug_when>
    <thetext>Comment on attachment 144051
Patch

jochen is happy.  The bots are happy.  I&apos;m happy.  Let&apos;s rock and roll.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>634420</commentid>
    <comment_count>29</comment_count>
      <attachid>144051</attachid>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2012-05-25 16:30:00 -0700</bug_when>
    <thetext>Comment on attachment 144051
Patch

Clearing flags on attachment: 144051

Committed r118585: &lt;http://trac.webkit.org/changeset/118585&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>634421</commentid>
    <comment_count>30</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2012-05-25 16:30:06 -0700</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>634919</commentid>
    <comment_count>31</comment_count>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2012-05-27 23:27:46 -0700</bug_when>
    <thetext>This patch appears to have caused two regressions on EFL port:
  http/tests/security/contentSecurityPolicy/inline-script-blocked-javascript-url.html = TEXT
  http/tests/security/contentSecurityPolicy/javascript-url-blocked.html = TEXT

The diffs look like:
-CONSOLE MESSAGE: line 1: Refused to execute JavaScript URL because it violates the following Content Security Policy directive: &quot;script-src &apos;none&apos;&quot;.
+CONSOLE MESSAGE: Refused to execute JavaScript URL because it violates the following Content Security Policy directive: &quot;script-src &apos;none&apos;&quot;.

basically, the line numbers are not printed for those tests.

It appears GTK and Mac have platform-specific expectations (without the line numbers) for those 2 tests.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>634928</commentid>
    <comment_count>32</comment_count>
    <who name="Adam Barth">abarth</who>
    <bug_when>2012-05-27 23:38:30 -0700</bug_when>
    <thetext>Yes.  There&apos;s a bug on file to that effect.  I suspect it&apos;s the same issue on all the JSC ports.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>635755</commentid>
    <comment_count>33</comment_count>
    <who name="János Badics">jbadics</who>
    <bug_when>2012-05-29 02:09:20 -0700</bug_when>
    <thetext>platform/qt/http/tests/security/contentSecurityPolicy/inline-script-blocked-javascript-url.html and
platform/qt/http/tests/security/contentSecurityPolicy/javascript-url-blocked-expected.txt
had the same problem as Christophe Dumez mentioned. I have added Qt platform specific expectations. Committed in http://trac.webkit.org/changeset/118738</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>635803</commentid>
    <comment_count>34</comment_count>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2012-05-29 02:56:42 -0700</bug_when>
    <thetext>(In reply to comment #33)
&gt; platform/qt/http/tests/security/contentSecurityPolicy/inline-script-blocked-javascript-url.html and
&gt; platform/qt/http/tests/security/contentSecurityPolicy/javascript-url-blocked-expected.txt
&gt; had the same problem as Christophe Dumez mentioned. I have added Qt platform specific expectations. Committed in http://trac.webkit.org/changeset/118738

I proposed a fix for it in Bug 87558. I will update my patch so that it removes Qt expectations as well now that you pushed those.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>643651</commentid>
    <comment_count>35</comment_count>
    <who name="Andreas Kling">kling</who>
    <bug_when>2012-06-07 10:02:51 -0700</bug_when>
    <thetext>This patch increased the size of every element by 4 bytes (the WTF::OrdinalNumber added to StyledElement.)

StyledElement is an extremely high-volume WebCore object, and we shouldn&apos;t be adding members to it unless absolutely necessary. Since this patch is only about adding more verbose debug output, it&apos;s an unacceptable regression in object size.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>643653</commentid>
    <comment_count>36</comment_count>
      <attachid>144051</attachid>
    <who name="Adam Barth">abarth</who>
    <bug_when>2012-06-07 10:14:13 -0700</bug_when>
    <thetext>Comment on attachment 144051
Patch

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

&gt; Source/WebCore/dom/StyledElement.h:97
&gt; +    WTF::OrdinalNumber m_startLineNumber;

Ah, you mean this member.  I missed the distinction between StyledElement and StyleElement.

Mike, would you be willing to remove this member?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>643654</commentid>
    <comment_count>37</comment_count>
    <who name="Adam Barth">abarth</who>
    <bug_when>2012-06-07 10:14:49 -0700</bug_when>
    <thetext>We should probably add a COMPILE_ASSERT comparing the size of Element with StyledElement so we don&apos;t make this mistake again.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>643663</commentid>
    <comment_count>38</comment_count>
    <who name="Mike West">mkwst</who>
    <bug_when>2012-06-07 10:26:52 -0700</bug_when>
    <thetext>(In reply to comment #36)
&gt; (From update of attachment 144051 [details])
&gt; View in context: https://bugs.webkit.org/attachment.cgi?id=144051&amp;action=review
&gt; 
&gt; &gt; Source/WebCore/dom/StyledElement.h:97
&gt; &gt; +    WTF::OrdinalNumber m_startLineNumber;
&gt; 
&gt; Ah, you mean this member.  I missed the distinction between StyledElement and StyleElement.
&gt; 
&gt; Mike, would you be willing to remove this member?

Taking a look at this now.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>643693</commentid>
    <comment_count>39</comment_count>
      <attachid>146325</attachid>
    <who name="Mike West">mkwst</who>
    <bug_when>2012-06-07 10:55:32 -0700</bug_when>
    <thetext>Created attachment 146325
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>643694</commentid>
    <comment_count>40</comment_count>
    <who name="Mike West">mkwst</who>
    <bug_when>2012-06-07 10:56:42 -0700</bug_when>
    <thetext>It looks like it&apos;s possible to get the same effect without the property (since it&apos;s already hanging off Document in a way that we can access when we need it). Would you mind taking a look?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>644071</commentid>
    <comment_count>41</comment_count>
      <attachid>146325</attachid>
    <who name="Adam Barth">abarth</who>
    <bug_when>2012-06-07 16:50:59 -0700</bug_when>
    <thetext>Comment on attachment 146325
Patch

Thanks.  Would you be willing to add a COMPILE_ASSERT in a followup patch?  If you grep around, you should be able to find some similar COMPILE_ASSERTs for other objects.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>644125</commentid>
    <comment_count>42</comment_count>
      <attachid>146325</attachid>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2012-06-07 17:36:38 -0700</bug_when>
    <thetext>Comment on attachment 146325
Patch

Clearing flags on attachment: 146325

Committed r119776: &lt;http://trac.webkit.org/changeset/119776&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>644126</commentid>
    <comment_count>43</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2012-06-07 17:36:46 -0700</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>644365</commentid>
    <comment_count>44</comment_count>
    <who name="Mike West">mkwst</who>
    <bug_when>2012-06-07 23:17:28 -0700</bug_when>
    <thetext>Reopening to attach new patch.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>644366</commentid>
    <comment_count>45</comment_count>
      <attachid>146487</attachid>
    <who name="Mike West">mkwst</who>
    <bug_when>2012-06-07 23:17:35 -0700</bug_when>
    <thetext>Created attachment 146487
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>644367</commentid>
    <comment_count>46</comment_count>
    <who name="Mike West">mkwst</who>
    <bug_when>2012-06-07 23:19:21 -0700</bug_when>
    <thetext>(In reply to comment #41)
&gt; (From update of attachment 146325 [details])
&gt; Thanks.  Would you be willing to add a COMPILE_ASSERT in a followup patch?  If you grep around, you should be able to find some similar COMPILE_ASSERTs for other objects.

Sure thing. Patch attached.

I didn&apos;t see any other asserts directly comparing to other classes; most seemed to create a separate &quot;SizeOfXXX&quot; class for the comparison. I&apos;m not sure that&apos;s stylistically correct here, since there aren&apos;t any new properties on StyledElement, but I&apos;ve done it for consistency.

WDYT?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>644370</commentid>
    <comment_count>47</comment_count>
      <attachid>146487</attachid>
    <who name="Adam Barth">abarth</who>
    <bug_when>2012-06-07 23:21:26 -0700</bug_when>
    <thetext>Comment on attachment 146487
Patch

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

In the future, please use new bugs for new patches.  Bugs are cheap.  :)

&gt; Source/WebCore/dom/StyledElement.cpp:53
&gt; +COMPILE_ASSERT(sizeof(StyledElement) == sizeof(SameSizeAsStyledElement), styledelement_should_remain_small);

Why not just use sizeof(Element) ?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>644388</commentid>
    <comment_count>48</comment_count>
    <who name="Mike West">mkwst</who>
    <bug_when>2012-06-07 23:43:32 -0700</bug_when>
    <thetext>(In reply to comment #47)
&gt; (From update of attachment 146487 [details])
&gt; View in context: https://bugs.webkit.org/attachment.cgi?id=146487&amp;action=review
&gt; 
&gt; In the future, please use new bugs for new patches.  Bugs are cheap.  :)

Moving to http://webk.it/88627 and sizeof(Element).</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>142705</attachid>
            <date>2012-05-18 06:49:22 -0700</date>
            <delta_ts>2012-05-18 07:44:56 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-86848-20120518154920.patch</filename>
            <type>text/plain</type>
            <size>38449</size>
            <attacher name="Mike West">mkwst</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTE3NTUzCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggZDk0ZjFlNTFmMzQ4ZDA0
Mjg4MWZhNGE3MTVlMjA5M2JjNjY2ZDRmMC4uYmQ1MWRhNGE5NWRiNDdjY2FiMDllZTRhZjNjM2U1
ODE5NzIwMGIzMiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDUyIEBACisyMDEyLTA1LTE4ICBNaWtl
IFdlc3QgIDxta3dzdEBjaHJvbWl1bS5vcmc+CisKKyAgICAgICAgSW5saW5lIHNjcmlwdCBhbmQg
c3R5bGUgYmxvY2tlZCBieSBDb250ZW50IFNlY3VyaXR5IFBvbGljeSBzaG91bGQgcHJvdmlkZSBt
b3JlIGRldGFpbGVkIGNvbnNvbGUgZXJyb3JzLgorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0
Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9ODY4NDgKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkg
KE9PUFMhKS4KKworICAgICAgICBUaGlzIGNoYW5nZSBhZGRzIGEgVVJMIGFuZCBsaW5lIG51bWJl
ciBmb3IgY29udGV4dCB0byBlYWNoIGNhbGwgdG8KKyAgICAgICAgYENvbnRlbnRTZWN1cml0eVBv
bGljeTo6YWxsb3dJbmxpbmUqYCwgYW5kIHBpcGVzIGl0IHRocm91Z2ggdG8gdGhlCisgICAgICAg
IGNvbnNvbGUgbWVzc2FnZSBnZW5lcmF0aW9uIGluIGBDU1BEaXJlY3RpdmVMaXN0OjpyZXBvcnRW
aW9sYXRpb25gLgorCisgICAgICAgICogYmluZGluZ3MvU2NyaXB0Q29udHJvbGxlckJhc2UuY3Bw
OgorICAgICAgICAoV2ViQ29yZTo6U2NyaXB0Q29udHJvbGxlcjo6ZXhlY3V0ZUlmSmF2YVNjcmlw
dFVSTCk6CisgICAgICAgICogYmluZGluZ3MvanMvSlNMYXp5RXZlbnRMaXN0ZW5lci5jcHA6Cisg
ICAgICAgIChXZWJDb3JlOjpKU0xhenlFdmVudExpc3RlbmVyOjppbml0aWFsaXplSlNGdW5jdGlv
bik6CisgICAgICAgICogYmluZGluZ3MvdjgvVjhMYXp5RXZlbnRMaXN0ZW5lci5jcHA6CisgICAg
ICAgIChXZWJDb3JlOjpWOExhenlFdmVudExpc3RlbmVyOjpwcmVwYXJlTGlzdGVuZXJPYmplY3Qp
OgorICAgICAgICAqIGRvbS9TY3JpcHRFbGVtZW50LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlNj
cmlwdEVsZW1lbnQ6OlNjcmlwdEVsZW1lbnQpOgorICAgICAgICAoV2ViQ29yZTo6U2NyaXB0RWxl
bWVudDo6ZXhlY3V0ZVNjcmlwdCk6CisgICAgICAgICogZG9tL1NjcmlwdEVsZW1lbnQuaDoKKyAg
ICAgICAgKFNjcmlwdEVsZW1lbnQpOgorICAgICAgICAqIGRvbS9TdHlsZUVsZW1lbnQuY3BwOgor
ICAgICAgICAoV2ViQ29yZTo6U3R5bGVFbGVtZW50OjpjcmVhdGVTaGVldCk6CisgICAgICAgICog
ZG9tL1N0eWxlZEVsZW1lbnQuY3BwOgorICAgICAgICAoV2ViQ29yZTo6U3R5bGVkRWxlbWVudDo6
U3R5bGVkRWxlbWVudCk6CisgICAgICAgIChXZWJDb3JlKToKKyAgICAgICAgKFdlYkNvcmU6OlN0
eWxlZEVsZW1lbnQ6OnN0eWxlKToKKyAgICAgICAgKFdlYkNvcmU6OlN0eWxlZEVsZW1lbnQ6OnN0
eWxlQXR0cmlidXRlQ2hhbmdlZCk6CisgICAgICAgICogZG9tL1N0eWxlZEVsZW1lbnQuaDoKKyAg
ICAgICAgKFN0eWxlZEVsZW1lbnQpOgorICAgICAgICAqIHBhZ2UvQ29udGVudFNlY3VyaXR5UG9s
aWN5LmNwcDoKKyAgICAgICAgKENTUERpcmVjdGl2ZUxpc3QpOgorICAgICAgICAoV2ViQ29yZTo6
Q1NQRGlyZWN0aXZlTGlzdDo6cmVwb3J0VmlvbGF0aW9uKToKKyAgICAgICAgKFdlYkNvcmU6OkNT
UERpcmVjdGl2ZUxpc3Q6OmNoZWNrSW5saW5lQW5kUmVwb3J0VmlvbGF0aW9uKToKKyAgICAgICAg
KFdlYkNvcmU6OkNTUERpcmVjdGl2ZUxpc3Q6OmNoZWNrRXZhbEFuZFJlcG9ydFZpb2xhdGlvbik6
CisgICAgICAgIChXZWJDb3JlOjpDU1BEaXJlY3RpdmVMaXN0OjphbGxvd0phdmFTY3JpcHRVUkxz
KToKKyAgICAgICAgKFdlYkNvcmU6OkNTUERpcmVjdGl2ZUxpc3Q6OmFsbG93SW5saW5lRXZlbnRI
YW5kbGVycyk6CisgICAgICAgIChXZWJDb3JlOjpDU1BEaXJlY3RpdmVMaXN0OjphbGxvd0lubGlu
ZVNjcmlwdCk6CisgICAgICAgIChXZWJDb3JlOjpDU1BEaXJlY3RpdmVMaXN0OjphbGxvd0lubGlu
ZVN0eWxlKToKKyAgICAgICAgKFdlYkNvcmU6OkNTUERpcmVjdGl2ZUxpc3Q6OmFsbG93RXZhbCk6
CisgICAgICAgIChXZWJDb3JlKToKKyAgICAgICAgKFdlYkNvcmU6OmlzQWxsb3dlZEJ5QWxsKToK
KyAgICAgICAgKFdlYkNvcmU6OkNvbnRlbnRTZWN1cml0eVBvbGljeTo6YWxsb3dKYXZhU2NyaXB0
VVJMcyk6CisgICAgICAgIChXZWJDb3JlOjpDb250ZW50U2VjdXJpdHlQb2xpY3k6OmFsbG93SW5s
aW5lRXZlbnRIYW5kbGVycyk6CisgICAgICAgIChXZWJDb3JlOjpDb250ZW50U2VjdXJpdHlQb2xp
Y3k6OmFsbG93SW5saW5lU2NyaXB0KToKKyAgICAgICAgKFdlYkNvcmU6OkNvbnRlbnRTZWN1cml0
eVBvbGljeTo6YWxsb3dJbmxpbmVTdHlsZSk6CisgICAgICAgICogcGFnZS9Db250ZW50U2VjdXJp
dHlQb2xpY3kuaDoKKwogMjAxMi0wNS0xNyAgQ2FybG9zIEdhcmNpYSBDYW1wb3MgIDxjZ2FyY2lh
QGlnYWxpYS5jb20+CiAKICAgICAgICAgW0dUS10gS1VSTDo6ZmlsZVN5c3RlbVBhdGgoKSBzaG91
bGQgc3RyaXAgdGhlIHF1ZXJ5IG9mIHRoZSB1cmkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3Jl
L2JpbmRpbmdzL1NjcmlwdENvbnRyb2xsZXJCYXNlLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2JpbmRp
bmdzL1NjcmlwdENvbnRyb2xsZXJCYXNlLmNwcAppbmRleCA4NTUxNThhZmMzZWY3OTAyZjJlNjJl
ZTllOTZmMTVkMjg5Yzc5MGMyLi5mMjE4Y2JlMGUyZThiZmUzNmFhZTI2ZWIzYjZhMTg2M2FiZDYz
YzQyIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9TY3JpcHRDb250cm9sbGVy
QmFzZS5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvU2NyaXB0Q29udHJvbGxlckJh
c2UuY3BwCkBAIC03NSw3ICs3NSw3IEBAIGJvb2wgU2NyaXB0Q29udHJvbGxlcjo6ZXhlY3V0ZUlm
SmF2YVNjcmlwdFVSTChjb25zdCBLVVJMJiB1cmwsIFNob3VsZFJlcGxhY2VEb2N1CiAKICAgICBp
ZiAoIW1fZnJhbWUtPnBhZ2UoKQogICAgICAgICB8fCAhbV9mcmFtZS0+cGFnZSgpLT5qYXZhU2Ny
aXB0VVJMc0FyZUFsbG93ZWQoKQotICAgICAgICB8fCAhbV9mcmFtZS0+ZG9jdW1lbnQoKS0+Y29u
dGVudFNlY3VyaXR5UG9saWN5KCktPmFsbG93SmF2YVNjcmlwdFVSTHMoKQorICAgICAgICB8fCAh
bV9mcmFtZS0+ZG9jdW1lbnQoKS0+Y29udGVudFNlY3VyaXR5UG9saWN5KCktPmFsbG93SmF2YVNj
cmlwdFVSTHMobV9mcmFtZS0+ZG9jdW1lbnQoKS0+dXJsKCksIGV2ZW50SGFuZGxlclBvc2l0aW9u
KCkubV9saW5lLm9uZUJhc2VkSW50KCkpCiAgICAgICAgIHx8IG1fZnJhbWUtPmluVmlld1NvdXJj
ZU1vZGUoKSkKICAgICAgICAgcmV0dXJuIHRydWU7CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJD
b3JlL2JpbmRpbmdzL2pzL0pTTGF6eUV2ZW50TGlzdGVuZXIuY3BwIGIvU291cmNlL1dlYkNvcmUv
YmluZGluZ3MvanMvSlNMYXp5RXZlbnRMaXN0ZW5lci5jcHAKaW5kZXggZjExYmY5MDBjMWQwZDUw
ZDFjN2FjNWM4YmZjNGJiM2QwNDFkYWFhMS4uMTJjNThjOWQxYWZlZDA1M2FmODI1YTY1ZTc5MTM0
YTBlNzYwNjZmMyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvSlNMYXp5
RXZlbnRMaXN0ZW5lci5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvSlNMYXp5
RXZlbnRMaXN0ZW5lci5jcHAKQEAgLTgwLDEwICs4MCwxMCBAQCBKU09iamVjdCogSlNMYXp5RXZl
bnRMaXN0ZW5lcjo6aW5pdGlhbGl6ZUpTRnVuY3Rpb24oU2NyaXB0RXhlY3V0aW9uQ29udGV4dCog
ZXhlYwogICAgIGlmICghZG9jdW1lbnQtPmZyYW1lKCkpCiAgICAgICAgIHJldHVybiAwOwogCi0g
ICAgaWYgKCFkb2N1bWVudC0+Y29udGVudFNlY3VyaXR5UG9saWN5KCktPmFsbG93SW5saW5lRXZl
bnRIYW5kbGVycygpKQorICAgIFNjcmlwdENvbnRyb2xsZXIqIHNjcmlwdCA9IGRvY3VtZW50LT5m
cmFtZSgpLT5zY3JpcHQoKTsKKyAgICBpZiAoIWRvY3VtZW50LT5jb250ZW50U2VjdXJpdHlQb2xp
Y3koKS0+YWxsb3dJbmxpbmVFdmVudEhhbmRsZXJzKG1fc291cmNlVVJMLCBtX3Bvc2l0aW9uLm1f
bGluZS5vbmVCYXNlZEludCgpKSkKICAgICAgICAgcmV0dXJuIDA7CiAKLSAgICBTY3JpcHRDb250
cm9sbGVyKiBzY3JpcHQgPSBkb2N1bWVudC0+ZnJhbWUoKS0+c2NyaXB0KCk7CiAgICAgaWYgKCFz
Y3JpcHQtPmNhbkV4ZWN1dGVTY3JpcHRzKEFib3V0VG9FeGVjdXRlU2NyaXB0KSB8fCBzY3JpcHQt
PmlzUGF1c2VkKCkpCiAgICAgICAgIHJldHVybiAwOwogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
Q29yZS9iaW5kaW5ncy92OC9WOExhenlFdmVudExpc3RlbmVyLmNwcCBiL1NvdXJjZS9XZWJDb3Jl
L2JpbmRpbmdzL3Y4L1Y4TGF6eUV2ZW50TGlzdGVuZXIuY3BwCmluZGV4IDg0MGRlN2ZkMmI0N2Ex
M2U3MTE1Nzk2Yzk1M2Y2NGQ3MGUwN2ZhOTcuLjcwYzJmZjYzMjk3MjdkODBjZjI1ZDZmMGI3MTNh
MmVkODk3NTAyZTUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3Y4L1Y4TGF6
eUV2ZW50TGlzdGVuZXIuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3Y4L1Y4TGF6
eUV2ZW50TGlzdGVuZXIuY3BwCkBAIC0xMDUsNyArMTA1LDcgQEAgdm9pZCBWOExhenlFdmVudExp
c3RlbmVyOjpwcmVwYXJlTGlzdGVuZXJPYmplY3QoU2NyaXB0RXhlY3V0aW9uQ29udGV4dCogY29u
dGV4dCkKICAgICBpZiAoaGFzRXhpc3RpbmdMaXN0ZW5lck9iamVjdCgpKQogICAgICAgICByZXR1
cm47CiAKLSAgICBpZiAoY29udGV4dC0+aXNEb2N1bWVudCgpICYmICFzdGF0aWNfY2FzdDxEb2N1
bWVudCo+KGNvbnRleHQpLT5jb250ZW50U2VjdXJpdHlQb2xpY3koKS0+YWxsb3dJbmxpbmVFdmVu
dEhhbmRsZXJzKCkpCisgICAgaWYgKGNvbnRleHQtPmlzRG9jdW1lbnQoKSAmJiAhc3RhdGljX2Nh
c3Q8RG9jdW1lbnQqPihjb250ZXh0KS0+Y29udGVudFNlY3VyaXR5UG9saWN5KCktPmFsbG93SW5s
aW5lRXZlbnRIYW5kbGVycyhtX3NvdXJjZVVSTCwgbV9wb3NpdGlvbi5tX2xpbmUub25lQmFzZWRJ
bnQoKSkpCiAgICAgICAgIHJldHVybjsKIAogICAgIHY4OjpIYW5kbGVTY29wZSBoYW5kbGVTY29w
ZTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2RvbS9TY3JpcHRFbGVtZW50LmNwcCBiL1Nv
dXJjZS9XZWJDb3JlL2RvbS9TY3JpcHRFbGVtZW50LmNwcAppbmRleCBiZGMxZmNkZmNmMTIzZGM1
NTEwMzg5ZDMzYzcyNGEyOTY5Yjc4NzNlLi4zNmIyOTNiM2NmNzE0NGNlYzBhNDE0ZTJkMTlhNzFk
Y2JlODEzOTIwIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9kb20vU2NyaXB0RWxlbWVudC5j
cHAKKysrIGIvU291cmNlL1dlYkNvcmUvZG9tL1NjcmlwdEVsZW1lbnQuY3BwCkBAIC00MSw2ICs0
MSw3IEBACiAjaW5jbHVkZSAiU2NyaXB0UnVubmVyLmgiCiAjaW5jbHVkZSAiU2NyaXB0U291cmNl
Q29kZS5oIgogI2luY2x1ZGUgIlNjcmlwdFZhbHVlLmgiCisjaW5jbHVkZSAiU2NyaXB0YWJsZURv
Y3VtZW50UGFyc2VyLmgiCiAjaW5jbHVkZSAiU2VjdXJpdHlPcmlnaW4uaCIKICNpbmNsdWRlICJT
ZXR0aW5ncy5oIgogI2luY2x1ZGUgIlRleHQuaCIKQEAgLTU4LDYgKzU5LDcgQEAgbmFtZXNwYWNl
IFdlYkNvcmUgewogU2NyaXB0RWxlbWVudDo6U2NyaXB0RWxlbWVudChFbGVtZW50KiBlbGVtZW50
LCBib29sIHBhcnNlckluc2VydGVkLCBib29sIGFscmVhZHlTdGFydGVkKQogICAgIDogbV9lbGVt
ZW50KGVsZW1lbnQpCiAgICAgLCBtX2NhY2hlZFNjcmlwdCgwKQorICAgICwgbV9zdGFydExpbmVO
dW1iZXIoMCkKICAgICAsIG1fcGFyc2VySW5zZXJ0ZWQocGFyc2VySW5zZXJ0ZWQpCiAgICAgLCBt
X2lzRXh0ZXJuYWxTY3JpcHQoZmFsc2UpCiAgICAgLCBtX2FscmVhZHlTdGFydGVkKGFscmVhZHlT
dGFydGVkKQpAQCAtNzAsNiArNzIsOCBAQCBTY3JpcHRFbGVtZW50OjpTY3JpcHRFbGVtZW50KEVs
ZW1lbnQqIGVsZW1lbnQsIGJvb2wgcGFyc2VySW5zZXJ0ZWQsIGJvb2wgYWxyZWFkeQogICAgICwg
bV9yZXF1ZXN0VXNlc0FjY2Vzc0NvbnRyb2woZmFsc2UpCiB7CiAgICAgQVNTRVJUKG1fZWxlbWVu
dCk7CisgICAgaWYgKG1fZWxlbWVudC0+ZG9jdW1lbnQoKSAmJiBtX2VsZW1lbnQtPmRvY3VtZW50
KCktPnNjcmlwdGFibGVEb2N1bWVudFBhcnNlcigpKQorICAgICAgICBtX3N0YXJ0TGluZU51bWJl
ciA9IG1fZWxlbWVudC0+ZG9jdW1lbnQoKS0+c2NyaXB0YWJsZURvY3VtZW50UGFyc2VyKCktPmxp
bmVOdW1iZXIoKS5vbmVCYXNlZEludCgpOwogfQogCiBTY3JpcHRFbGVtZW50Ojp+U2NyaXB0RWxl
bWVudCgpCkBAIC0yNzYsNyArMjgwLDcgQEAgdm9pZCBTY3JpcHRFbGVtZW50OjpleGVjdXRlU2Ny
aXB0KGNvbnN0IFNjcmlwdFNvdXJjZUNvZGUmIHNvdXJjZUNvZGUpCiAgICAgaWYgKHNvdXJjZUNv
ZGUuaXNFbXB0eSgpKQogICAgICAgICByZXR1cm47CiAKLSAgICBpZiAoIW1faXNFeHRlcm5hbFNj
cmlwdCAmJiAhbV9lbGVtZW50LT5kb2N1bWVudCgpLT5jb250ZW50U2VjdXJpdHlQb2xpY3koKS0+
YWxsb3dJbmxpbmVTY3JpcHQoKSkKKyAgICBpZiAoIW1faXNFeHRlcm5hbFNjcmlwdCAmJiAhbV9l
bGVtZW50LT5kb2N1bWVudCgpLT5jb250ZW50U2VjdXJpdHlQb2xpY3koKS0+YWxsb3dJbmxpbmVT
Y3JpcHQobV9lbGVtZW50LT5kb2N1bWVudCgpLT51cmwoKSwgbV9zdGFydExpbmVOdW1iZXIpKQog
ICAgICAgICByZXR1cm47CiAKICAgICBSZWZQdHI8RG9jdW1lbnQ+IGRvY3VtZW50ID0gbV9lbGVt
ZW50LT5kb2N1bWVudCgpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvZG9tL1NjcmlwdEVs
ZW1lbnQuaCBiL1NvdXJjZS9XZWJDb3JlL2RvbS9TY3JpcHRFbGVtZW50LmgKaW5kZXggNmMwODI1
OGU2NTY1ZDA4NGQyYjY0NDljYjJlMjUzOGMxYWI4OTgzYS4uMzFjZTg4Y2EzNmQ5NTM5MDE4MDVh
MGE5MGQ5ZTE5ZWVjMjAxNzBmOSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvZG9tL1Njcmlw
dEVsZW1lbnQuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9kb20vU2NyaXB0RWxlbWVudC5oCkBAIC05
Myw2ICs5Myw3IEBAIHByaXZhdGU6CiAKICAgICBFbGVtZW50KiBtX2VsZW1lbnQ7CiAgICAgQ2Fj
aGVkUmVzb3VyY2VIYW5kbGU8Q2FjaGVkU2NyaXB0PiBtX2NhY2hlZFNjcmlwdDsKKyAgICBpbnQg
bV9zdGFydExpbmVOdW1iZXI7CiAgICAgYm9vbCBtX3BhcnNlckluc2VydGVkIDogMTsKICAgICBi
b29sIG1faXNFeHRlcm5hbFNjcmlwdCA6IDE7CiAgICAgYm9vbCBtX2FscmVhZHlTdGFydGVkIDog
MTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2RvbS9TdHlsZUVsZW1lbnQuY3BwIGIvU291
cmNlL1dlYkNvcmUvZG9tL1N0eWxlRWxlbWVudC5jcHAKaW5kZXggNWFmOWZjOGU0Y2RjYzZmYjJm
MWRlMjQwMDFhYzk1ZjY3ZjA4ZWI1ZC4uYzNkNjlmZjdkNTkzZjQ1MTBhYTRjZDE5MzQyNGE1NmE3
NDc2YjY1MiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvZG9tL1N0eWxlRWxlbWVudC5jcHAK
KysrIGIvU291cmNlL1dlYkNvcmUvZG9tL1N0eWxlRWxlbWVudC5jcHAKQEAgLTE1Niw3ICsxNTYs
NyBAQCB2b2lkIFN0eWxlRWxlbWVudDo6Y3JlYXRlU2hlZXQoRWxlbWVudCogZSwgaW50IHN0YXJ0
TGluZU51bWJlciwgY29uc3QgU3RyaW5nJiB0ZQogCiAgICAgLy8gSWYgdHlwZSBpcyBlbXB0eSBv
ciBDU1MsIHRoaXMgaXMgYSBDU1Mgc3R5bGUgc2hlZXQuCiAgICAgY29uc3QgQXRvbWljU3RyaW5n
JiB0eXBlID0gdGhpcy0+dHlwZSgpOwotICAgIGlmIChkb2N1bWVudC0+Y29udGVudFNlY3VyaXR5
UG9saWN5KCktPmFsbG93SW5saW5lU3R5bGUoKSAmJiBpc0NTUyhlLCB0eXBlKSkgeworICAgIGlm
IChkb2N1bWVudC0+Y29udGVudFNlY3VyaXR5UG9saWN5KCktPmFsbG93SW5saW5lU3R5bGUoZS0+
ZG9jdW1lbnQoKS0+dXJsKCksIHN0YXJ0TGluZU51bWJlcikgJiYgaXNDU1MoZSwgdHlwZSkpIHsK
ICAgICAgICAgUmVmUHRyPE1lZGlhUXVlcnlTZXQ+IG1lZGlhUXVlcmllczsKICAgICAgICAgaWYg
KGUtPmlzSFRNTEVsZW1lbnQoKSkKICAgICAgICAgICAgIG1lZGlhUXVlcmllcyA9IE1lZGlhUXVl
cnlTZXQ6OmNyZWF0ZUFsbG93aW5nRGVzY3JpcHRpb25TeW50YXgobWVkaWEoKSk7CkBAIC0xNzIs
NyArMTcyLDcgQEAgdm9pZCBTdHlsZUVsZW1lbnQ6OmNyZWF0ZVNoZWV0KEVsZW1lbnQqIGUsIGlu
dCBzdGFydExpbmVOdW1iZXIsIGNvbnN0IFN0cmluZyYgdGUKICAgICAgICAgICAgIG1fc2hlZXQg
PSBDU1NTdHlsZVNoZWV0OjpjcmVhdGVJbmxpbmUoZSwgS1VSTCgpLCBkb2N1bWVudC0+aW5wdXRF
bmNvZGluZygpKTsKICAgICAgICAgICAgIG1fc2hlZXQtPnNldE1lZGlhUXVlcmllcyhtZWRpYVF1
ZXJpZXMucmVsZWFzZSgpKTsKICAgICAgICAgICAgIG1fc2hlZXQtPnNldFRpdGxlKGUtPnRpdGxl
KCkpOwotICAgIAorCiAgICAgICAgICAgICBtX3NoZWV0LT5pbnRlcm5hbCgpLT5wYXJzZVN0cmlu
Z0F0TGluZSh0ZXh0LCBzdGFydExpbmVOdW1iZXIpOwogCiAgICAgICAgICAgICBtX2xvYWRpbmcg
PSBmYWxzZTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2RvbS9TdHlsZWRFbGVtZW50LmNw
cCBiL1NvdXJjZS9XZWJDb3JlL2RvbS9TdHlsZWRFbGVtZW50LmNwcAppbmRleCBkNTViMDA5OTM0
NWZlOTFlMDc1NTY1NmVmNzc3MDNhNWIyZTA5YmIwLi5kZjlhNmI4ZDI2MGZiM2IwZWI5OTQ5NDcz
Y2FjMWQ1OTk4MjE5MTE2IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9kb20vU3R5bGVkRWxl
bWVudC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvZG9tL1N0eWxlZEVsZW1lbnQuY3BwCkBAIC0z
Nyw2ICszNyw3IEBACiAjaW5jbHVkZSAiRG9jdW1lbnQuaCIKICNpbmNsdWRlICJIVE1MTmFtZXMu
aCIKICNpbmNsdWRlICJIVE1MUGFyc2VySWRpb21zLmgiCisjaW5jbHVkZSAiU2NyaXB0YWJsZURv
Y3VtZW50UGFyc2VyLmgiCiAjaW5jbHVkZSAiU3R5bGVQcm9wZXJ0eVNldC5oIgogI2luY2x1ZGUg
IlN0eWxlUmVzb2x2ZXIuaCIKICNpbmNsdWRlIDx3dGYvSGFzaEZ1bmN0aW9ucy5oPgpAQCAtMTI2
LDEzICsxMjcsMjEgQEAgdm9pZCBTdHlsZWRFbGVtZW50Ojp1cGRhdGVTdHlsZUF0dHJpYnV0ZSgp
IGNvbnN0CiAgICAgICAgIGNvbnN0X2Nhc3Q8U3R5bGVkRWxlbWVudCo+KHRoaXMpLT5zZXRBdHRy
aWJ1dGUoc3R5bGVBdHRyLCBpbmxpbmVTdHlsZS0+YXNUZXh0KCksIEluVXBkYXRlU3R5bGVBdHRy
aWJ1dGUpOwogfQogCitTdHlsZWRFbGVtZW50OjpTdHlsZWRFbGVtZW50KGNvbnN0IFF1YWxpZmll
ZE5hbWUmIG5hbWUsIERvY3VtZW50KiBkb2N1bWVudCwgQ29uc3RydWN0aW9uVHlwZSB0eXBlKQor
ICAgIDogRWxlbWVudChuYW1lLCBkb2N1bWVudCwgdHlwZSkKKyAgICAsIG1fc3RhcnRMaW5lTnVt
YmVyKDApCit7CisgICAgaWYgKGRvY3VtZW50ICYmIGRvY3VtZW50LT5zY3JpcHRhYmxlRG9jdW1l
bnRQYXJzZXIoKSkKKyAgICAgICAgbV9zdGFydExpbmVOdW1iZXIgPSBkb2N1bWVudC0+c2NyaXB0
YWJsZURvY3VtZW50UGFyc2VyKCktPmxpbmVOdW1iZXIoKS5vbmVCYXNlZEludCgpOworfQorCiBT
dHlsZWRFbGVtZW50Ojp+U3R5bGVkRWxlbWVudCgpCiB7CiAgICAgZGVzdHJveUlubGluZVN0eWxl
KCk7CiB9CiAKLUNTU1N0eWxlRGVjbGFyYXRpb24qIFN0eWxlZEVsZW1lbnQ6OnN0eWxlKCkgCi17
IAorQ1NTU3R5bGVEZWNsYXJhdGlvbiogU3R5bGVkRWxlbWVudDo6c3R5bGUoKQorewogICAgIHJl
dHVybiBlbnN1cmVBdHRyaWJ1dGVEYXRhKCktPmVuc3VyZU11dGFibGVJbmxpbmVTdHlsZSh0aGlz
KS0+ZW5zdXJlSW5saW5lQ1NTU3R5bGVEZWNsYXJhdGlvbih0aGlzKTsgCiB9CiAKQEAgLTE3Myw3
ICsxODIsNyBAQCB2b2lkIFN0eWxlZEVsZW1lbnQ6OnN0eWxlQXR0cmlidXRlQ2hhbmdlZChjb25z
dCBBdG9taWNTdHJpbmcmIG5ld1N0eWxlU3RyaW5nLCBTaAogICAgIGlmIChzaG91bGRSZXBhcnNl
KSB7CiAgICAgICAgIGlmIChuZXdTdHlsZVN0cmluZy5pc051bGwoKSkKICAgICAgICAgICAgIGRl
c3Ryb3lJbmxpbmVTdHlsZSgpOwotICAgICAgICBlbHNlIGlmIChkb2N1bWVudCgpLT5jb250ZW50
U2VjdXJpdHlQb2xpY3koKS0+YWxsb3dJbmxpbmVTdHlsZSgpKQorICAgICAgICBlbHNlIGlmIChk
b2N1bWVudCgpLT5jb250ZW50U2VjdXJpdHlQb2xpY3koKS0+YWxsb3dJbmxpbmVTdHlsZShkb2N1
bWVudCgpLT51cmwoKSwgbV9zdGFydExpbmVOdW1iZXIpKQogICAgICAgICAgICAgZW5zdXJlQXR0
cmlidXRlRGF0YSgpLT51cGRhdGVJbmxpbmVTdHlsZUF2b2lkaW5nTXV0YXRpb24odGhpcywgbmV3
U3R5bGVTdHJpbmcpOwogICAgICAgICBzZXRJc1N0eWxlQXR0cmlidXRlVmFsaWQoKTsKICAgICB9
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9kb20vU3R5bGVkRWxlbWVudC5oIGIvU291cmNl
L1dlYkNvcmUvZG9tL1N0eWxlZEVsZW1lbnQuaAppbmRleCA2Y2Y0MTQ1ZjJhMTIxYTU0OGQ0ZTNh
ZGViOGNlODVmNjI3MDVkMDc4Li4wM2IxOTI0NzVhZjExYjAyYzEyZmI4N2Y0ZTVlMTZkNzhlMTAy
OTA5IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9kb20vU3R5bGVkRWxlbWVudC5oCisrKyBi
L1NvdXJjZS9XZWJDb3JlL2RvbS9TdHlsZWRFbGVtZW50LmgKQEAgLTYyLDEwICs2Miw3IEBAIHB1
YmxpYzoKICAgICB2b2lkIHN0eWxlQXR0cmlidXRlQ2hhbmdlZChjb25zdCBBdG9taWNTdHJpbmcm
IG5ld1N0eWxlU3RyaW5nLCBTaG91bGRSZXBhcnNlU3R5bGVBdHRyaWJ1dGUgPSBSZXBhcnNlU3R5
bGVBdHRyaWJ1dGUpOwogCiBwcm90ZWN0ZWQ6Ci0gICAgU3R5bGVkRWxlbWVudChjb25zdCBRdWFs
aWZpZWROYW1lJiBuYW1lLCBEb2N1bWVudCogZG9jdW1lbnQsIENvbnN0cnVjdGlvblR5cGUgdHlw
ZSkKLSAgICAgICAgOiBFbGVtZW50KG5hbWUsIGRvY3VtZW50LCB0eXBlKQotICAgIHsKLSAgICB9
CisgICAgU3R5bGVkRWxlbWVudChjb25zdCBRdWFsaWZpZWROYW1lJiwgRG9jdW1lbnQqLCBDb25z
dHJ1Y3Rpb25UeXBlKTsKIAogICAgIHZpcnR1YWwgdm9pZCBhdHRyaWJ1dGVDaGFuZ2VkKGNvbnN0
IEF0dHJpYnV0ZSYpIE9WRVJSSURFOwogICAgIHZpcnR1YWwgdm9pZCBwYXJzZUF0dHJpYnV0ZShj
b25zdCBBdHRyaWJ1dGUmKTsKQEAgLTk1LDYgKzkyLDggQEAgcHJpdmF0ZToKICAgICAgICAgaWYg
KGF0dHJpYnV0ZURhdGEoKSkKICAgICAgICAgICAgIGF0dHJpYnV0ZURhdGEoKS0+ZGVzdHJveUlu
bGluZVN0eWxlKHRoaXMpOwogICAgIH0KKworICAgIGludCBtX3N0YXJ0TGluZU51bWJlcjsKIH07
CiAKIGlubGluZSBjb25zdCBTcGFjZVNwbGl0U3RyaW5nJiBTdHlsZWRFbGVtZW50OjpjbGFzc05h
bWVzKCkgY29uc3QKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BhZ2UvQ29udGVudFNlY3Vy
aXR5UG9saWN5LmNwcCBiL1NvdXJjZS9XZWJDb3JlL3BhZ2UvQ29udGVudFNlY3VyaXR5UG9saWN5
LmNwcAppbmRleCAwZTdjOTVhN2UyOWRhYjQzZjQwOWU2YTZjYjEyMmU1ZmVhYTEzZDhlLi40ZmIx
ZjM5Y2RlYmE5YjVkY2Q5ZDkxZGRmNmE2N2I2OTQ0ODk5Y2QxIDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V2ViQ29yZS9wYWdlL0NvbnRlbnRTZWN1cml0eVBvbGljeS5jcHAKKysrIGIvU291cmNlL1dlYkNv
cmUvcGFnZS9Db250ZW50U2VjdXJpdHlQb2xpY3kuY3BwCkBAIC0zMSw2ICszMSw3IEBACiAjaW5j
bHVkZSAiRm9ybURhdGEuaCIKICNpbmNsdWRlICJGb3JtRGF0YUxpc3QuaCIKICNpbmNsdWRlICJG
cmFtZS5oIgorI2luY2x1ZGUgIkluc3BlY3Rvckluc3RydW1lbnRhdGlvbi5oIgogI2luY2x1ZGUg
Ikluc3BlY3RvclZhbHVlcy5oIgogI2luY2x1ZGUgIlBpbmdMb2FkZXIuaCIKICNpbmNsdWRlICJT
Y3JpcHRDYWxsU3RhY2suaCIKQEAgLTQ5MCwxMCArNDkxLDEwIEBAIHB1YmxpYzoKICAgICBjb25z
dCBTdHJpbmcmIGhlYWRlcigpIGNvbnN0IHsgcmV0dXJuIG1faGVhZGVyOyB9CiAgICAgQ29udGVu
dFNlY3VyaXR5UG9saWN5OjpIZWFkZXJUeXBlIGhlYWRlclR5cGUoKSBjb25zdCB7IHJldHVybiBt
X3JlcG9ydE9ubHkgPyBDb250ZW50U2VjdXJpdHlQb2xpY3k6OlJlcG9ydE9ubHkgOiBDb250ZW50
U2VjdXJpdHlQb2xpY3k6OkVuZm9yY2VQb2xpY3k7IH0KIAotICAgIGJvb2wgYWxsb3dKYXZhU2Ny
aXB0VVJMcygpIGNvbnN0OwotICAgIGJvb2wgYWxsb3dJbmxpbmVFdmVudEhhbmRsZXJzKCkgY29u
c3Q7Ci0gICAgYm9vbCBhbGxvd0lubGluZVNjcmlwdCgpIGNvbnN0OwotICAgIGJvb2wgYWxsb3dJ
bmxpbmVTdHlsZSgpIGNvbnN0OworICAgIGJvb2wgYWxsb3dKYXZhU2NyaXB0VVJMcyhjb25zdCBT
dHJpbmcmIHVybCwgaW50IGxpbmVOdW1iZXIpIGNvbnN0OworICAgIGJvb2wgYWxsb3dJbmxpbmVF
dmVudEhhbmRsZXJzKGNvbnN0IFN0cmluZyYgdXJsLCBpbnQgbGluZU51bWJlcikgY29uc3Q7Cisg
ICAgYm9vbCBhbGxvd0lubGluZVNjcmlwdChjb25zdCBTdHJpbmcmIHVybCwgaW50IGxpbmVOdW1i
ZXIpIGNvbnN0OworICAgIGJvb2wgYWxsb3dJbmxpbmVTdHlsZShjb25zdCBTdHJpbmcmIHVybCwg
aW50IGxpbmVOdW1iZXIpIGNvbnN0OwogICAgIGJvb2wgYWxsb3dFdmFsKCkgY29uc3Q7CiAKICAg
ICBib29sIGFsbG93U2NyaXB0RnJvbVNvdXJjZShjb25zdCBLVVJMJikgY29uc3Q7CkBAIC01MTgs
MTIgKzUxOSwxMiBAQCBwcml2YXRlOgogICAgIFBhc3NPd25QdHI8Q1NQRGlyZWN0aXZlPiBjcmVh
dGVDU1BEaXJlY3RpdmUoY29uc3QgU3RyaW5nJiBuYW1lLCBjb25zdCBTdHJpbmcmIHZhbHVlKTsK
IAogICAgIENTUERpcmVjdGl2ZSogb3BlcmF0aXZlRGlyZWN0aXZlKENTUERpcmVjdGl2ZSopIGNv
bnN0OwotICAgIHZvaWQgcmVwb3J0VmlvbGF0aW9uKGNvbnN0IFN0cmluZyYgZGlyZWN0aXZlVGV4
dCwgY29uc3QgU3RyaW5nJiBjb25zb2xlTWVzc2FnZSwgY29uc3QgS1VSTCYgYmxvY2tlZFVSTCA9
IEtVUkwoKSkgY29uc3Q7CisgICAgdm9pZCByZXBvcnRWaW9sYXRpb24oY29uc3QgU3RyaW5nJiBk
aXJlY3RpdmVUZXh0LCBjb25zdCBTdHJpbmcmIGNvbnNvbGVNZXNzYWdlLCBjb25zdCBLVVJMJiBi
bG9ja2VkVVJMID0gS1VSTCgpLCBjb25zdCBTdHJpbmcmIGVycm9yVVJMID0gU3RyaW5nKCksIGlu
dCBlcnJvckxpbmVOdW1iZXIgPSAwKSBjb25zdDsKICAgICB2b2lkIGxvZ1VucmVjb2duaXplZERp
cmVjdGl2ZShjb25zdCBTdHJpbmcmIG5hbWUpIGNvbnN0OwogICAgIGJvb2wgY2hlY2tFdmFsKENT
UERpcmVjdGl2ZSopIGNvbnN0OwogCi0gICAgYm9vbCBjaGVja0lubGluZUFuZFJlcG9ydFZpb2xh
dGlvbihDU1BEaXJlY3RpdmUqLCBjb25zdCBTdHJpbmcmIGNvbnNvbGVNZXNzYWdlKSBjb25zdDsK
LSAgICBib29sIGNoZWNrRXZhbEFuZFJlcG9ydFZpb2xhdGlvbihDU1BEaXJlY3RpdmUqLCBjb25z
dCBTdHJpbmcmIGNvbnNvbGVNZXNzYWdlKSBjb25zdDsKKyAgICBib29sIGNoZWNrSW5saW5lQW5k
UmVwb3J0VmlvbGF0aW9uKENTUERpcmVjdGl2ZSosIGNvbnN0IFN0cmluZyYgY29uc29sZU1lc3Nh
Z2UsIGNvbnN0IFN0cmluZyYgdXJsLCBpbnQgbGluZU51bWJlcikgY29uc3Q7CisgICAgYm9vbCBj
aGVja0V2YWxBbmRSZXBvcnRWaW9sYXRpb24oQ1NQRGlyZWN0aXZlKiwgY29uc3QgU3RyaW5nJiBj
b25zb2xlTWVzc2FnZSwgY29uc3QgU3RyaW5nJiB1cmwsIGludCBsaW5lTnVtYmVyKSBjb25zdDsK
ICAgICBib29sIGNoZWNrU291cmNlQW5kUmVwb3J0VmlvbGF0aW9uKENTUERpcmVjdGl2ZSosIGNv
bnN0IEtVUkwmLCBjb25zdCBTdHJpbmcmIHR5cGUpIGNvbnN0OwogCiAgICAgYm9vbCBkZW55SWZF
bmZvcmNpbmdQb2xpY3koKSBjb25zdCB7IHJldHVybiBtX3JlcG9ydE9ubHk7IH0KQEAgLTU3NSwx
MCArNTc2LDEwIEBAIFBhc3NPd25QdHI8Q1NQRGlyZWN0aXZlTGlzdD4gQ1NQRGlyZWN0aXZlTGlz
dDo6Y3JlYXRlKFNjcmlwdEV4ZWN1dGlvbkNvbnRleHQqIHNjCiAgICAgcmV0dXJuIHBvbGljeS5y
ZWxlYXNlKCk7CiB9CiAKLXZvaWQgQ1NQRGlyZWN0aXZlTGlzdDo6cmVwb3J0VmlvbGF0aW9uKGNv
bnN0IFN0cmluZyYgZGlyZWN0aXZlVGV4dCwgY29uc3QgU3RyaW5nJiBjb25zb2xlTWVzc2FnZSwg
Y29uc3QgS1VSTCYgYmxvY2tlZFVSTCkgY29uc3QKK3ZvaWQgQ1NQRGlyZWN0aXZlTGlzdDo6cmVw
b3J0VmlvbGF0aW9uKGNvbnN0IFN0cmluZyYgZGlyZWN0aXZlVGV4dCwgY29uc3QgU3RyaW5nJiBj
b25zb2xlTWVzc2FnZSwgY29uc3QgS1VSTCYgYmxvY2tlZFVSTCwgY29uc3QgU3RyaW5nJiBlcnJv
clVSTCwgaW50IGVycm9yTGluZU51bWJlcikgY29uc3QKIHsKICAgICBTdHJpbmcgbWVzc2FnZSA9
IG1fcmVwb3J0T25seSA/ICJbUmVwb3J0IE9ubHldICIgKyBjb25zb2xlTWVzc2FnZSA6IGNvbnNv
bGVNZXNzYWdlOwotICAgIG1fc2NyaXB0RXhlY3V0aW9uQ29udGV4dC0+YWRkQ29uc29sZU1lc3Nh
Z2UoSlNNZXNzYWdlU291cmNlLCBMb2dNZXNzYWdlVHlwZSwgRXJyb3JNZXNzYWdlTGV2ZWwsIG1l
c3NhZ2UpOworICAgIG1fc2NyaXB0RXhlY3V0aW9uQ29udGV4dC0+YWRkQ29uc29sZU1lc3NhZ2Uo
SlNNZXNzYWdlU291cmNlLCBMb2dNZXNzYWdlVHlwZSwgRXJyb3JNZXNzYWdlTGV2ZWwsIG1lc3Nh
Z2UsIGVycm9yVVJMLCBlcnJvckxpbmVOdW1iZXIpOwogCiAgICAgaWYgKG1fcmVwb3J0VVJJcy5p
c0VtcHR5KCkpCiAgICAgICAgIHJldHVybjsKQEAgLTYzOCwxOSArNjM5LDE5IEBAIENTUERpcmVj
dGl2ZSogQ1NQRGlyZWN0aXZlTGlzdDo6b3BlcmF0aXZlRGlyZWN0aXZlKENTUERpcmVjdGl2ZSog
ZGlyZWN0aXZlKSBjb25zCiAgICAgcmV0dXJuIGRpcmVjdGl2ZSA/IGRpcmVjdGl2ZSA6IG1fZGVm
YXVsdFNyYy5nZXQoKTsKIH0KIAotYm9vbCBDU1BEaXJlY3RpdmVMaXN0OjpjaGVja0lubGluZUFu
ZFJlcG9ydFZpb2xhdGlvbihDU1BEaXJlY3RpdmUqIGRpcmVjdGl2ZSwgY29uc3QgU3RyaW5nJiBj
b25zb2xlTWVzc2FnZSkgY29uc3QKK2Jvb2wgQ1NQRGlyZWN0aXZlTGlzdDo6Y2hlY2tJbmxpbmVB
bmRSZXBvcnRWaW9sYXRpb24oQ1NQRGlyZWN0aXZlKiBkaXJlY3RpdmUsIGNvbnN0IFN0cmluZyYg
Y29uc29sZU1lc3NhZ2UsIGNvbnN0IFN0cmluZyYgdXJsLCBpbnQgbGluZU51bWJlcikgY29uc3QK
IHsKICAgICBpZiAoIWRpcmVjdGl2ZSB8fCBkaXJlY3RpdmUtPmFsbG93SW5saW5lKCkpCiAgICAg
ICAgIHJldHVybiB0cnVlOwotICAgIHJlcG9ydFZpb2xhdGlvbihkaXJlY3RpdmUtPnRleHQoKSwg
Y29uc29sZU1lc3NhZ2UgKyAiXCIiICsgZGlyZWN0aXZlLT50ZXh0KCkgKyAiXCIuXG4iKTsKKyAg
ICByZXBvcnRWaW9sYXRpb24oZGlyZWN0aXZlLT50ZXh0KCksIGNvbnNvbGVNZXNzYWdlICsgIlwi
IiArIGRpcmVjdGl2ZS0+dGV4dCgpICsgIlwiLlxuIiwgS1VSTCgpLCB1cmwsIGxpbmVOdW1iZXIp
OwogICAgIHJldHVybiBkZW55SWZFbmZvcmNpbmdQb2xpY3koKTsKIH0KIAotYm9vbCBDU1BEaXJl
Y3RpdmVMaXN0OjpjaGVja0V2YWxBbmRSZXBvcnRWaW9sYXRpb24oQ1NQRGlyZWN0aXZlKiBkaXJl
Y3RpdmUsIGNvbnN0IFN0cmluZyYgY29uc29sZU1lc3NhZ2UpIGNvbnN0Citib29sIENTUERpcmVj
dGl2ZUxpc3Q6OmNoZWNrRXZhbEFuZFJlcG9ydFZpb2xhdGlvbihDU1BEaXJlY3RpdmUqIGRpcmVj
dGl2ZSwgY29uc3QgU3RyaW5nJiBjb25zb2xlTWVzc2FnZSwgY29uc3QgU3RyaW5nJiB1cmwsIGlu
dCBsaW5lTnVtYmVyKSBjb25zdAogewogICAgIGlmIChjaGVja0V2YWwoZGlyZWN0aXZlKSkKICAg
ICAgICAgcmV0dXJuIHRydWU7Ci0gICAgcmVwb3J0VmlvbGF0aW9uKGRpcmVjdGl2ZS0+dGV4dCgp
LCBjb25zb2xlTWVzc2FnZSArICJcIiIgKyBkaXJlY3RpdmUtPnRleHQoKSArICJcIi5cbiIpOwor
ICAgIHJlcG9ydFZpb2xhdGlvbihkaXJlY3RpdmUtPnRleHQoKSwgY29uc29sZU1lc3NhZ2UgKyAi
XCIiICsgZGlyZWN0aXZlLT50ZXh0KCkgKyAiXCIuXG4iLCBLVVJMKCksIHVybCwgbGluZU51bWJl
cik7CiAgICAgcmV0dXJuIGRlbnlJZkVuZm9yY2luZ1BvbGljeSgpOwogfQogCkBAIC02NjMsMzQg
KzY2NCwzNCBAQCBib29sIENTUERpcmVjdGl2ZUxpc3Q6OmNoZWNrU291cmNlQW5kUmVwb3J0Vmlv
bGF0aW9uKENTUERpcmVjdGl2ZSogZGlyZWN0aXZlLCBjbwogICAgIHJldHVybiBkZW55SWZFbmZv
cmNpbmdQb2xpY3koKTsKIH0KIAotYm9vbCBDU1BEaXJlY3RpdmVMaXN0OjphbGxvd0phdmFTY3Jp
cHRVUkxzKCkgY29uc3QKK2Jvb2wgQ1NQRGlyZWN0aXZlTGlzdDo6YWxsb3dKYXZhU2NyaXB0VVJM
cyhjb25zdCBTdHJpbmcmIHVybCwgaW50IGxpbmVOdW1iZXIpIGNvbnN0CiB7CiAgICAgREVGSU5F
X1NUQVRJQ19MT0NBTChTdHJpbmcsIGNvbnNvbGVNZXNzYWdlLCAoIlJlZnVzZWQgdG8gZXhlY3V0
ZSBKYXZhU2NyaXB0IFVSTCBiZWNhdXNlIGl0IHZpb2xhdGVzIHRoZSBmb2xsb3dpbmcgQ29udGVu
dCBTZWN1cml0eSBQb2xpY3kgZGlyZWN0aXZlOiAiKSk7Ci0gICAgcmV0dXJuIGNoZWNrSW5saW5l
QW5kUmVwb3J0VmlvbGF0aW9uKG9wZXJhdGl2ZURpcmVjdGl2ZShtX3NjcmlwdFNyYy5nZXQoKSks
IGNvbnNvbGVNZXNzYWdlKTsKKyAgICByZXR1cm4gY2hlY2tJbmxpbmVBbmRSZXBvcnRWaW9sYXRp
b24ob3BlcmF0aXZlRGlyZWN0aXZlKG1fc2NyaXB0U3JjLmdldCgpKSwgY29uc29sZU1lc3NhZ2Us
IHVybCwgbGluZU51bWJlcik7CiB9CiAKLWJvb2wgQ1NQRGlyZWN0aXZlTGlzdDo6YWxsb3dJbmxp
bmVFdmVudEhhbmRsZXJzKCkgY29uc3QKK2Jvb2wgQ1NQRGlyZWN0aXZlTGlzdDo6YWxsb3dJbmxp
bmVFdmVudEhhbmRsZXJzKGNvbnN0IFN0cmluZyYgdXJsLCBpbnQgbGluZU51bWJlcikgY29uc3QK
IHsKICAgICBERUZJTkVfU1RBVElDX0xPQ0FMKFN0cmluZywgY29uc29sZU1lc3NhZ2UsICgiUmVm
dXNlZCB0byBleGVjdXRlIGlubGluZSBldmVudCBoYW5kbGVyIGJlY2F1c2UgaXQgdmlvbGF0ZXMg
dGhlIGZvbGxvd2luZyBDb250ZW50IFNlY3VyaXR5IFBvbGljeSBkaXJlY3RpdmU6ICIpKTsKLSAg
ICByZXR1cm4gY2hlY2tJbmxpbmVBbmRSZXBvcnRWaW9sYXRpb24ob3BlcmF0aXZlRGlyZWN0aXZl
KG1fc2NyaXB0U3JjLmdldCgpKSwgY29uc29sZU1lc3NhZ2UpOworICAgIHJldHVybiBjaGVja0lu
bGluZUFuZFJlcG9ydFZpb2xhdGlvbihvcGVyYXRpdmVEaXJlY3RpdmUobV9zY3JpcHRTcmMuZ2V0
KCkpLCBjb25zb2xlTWVzc2FnZSwgdXJsLCBsaW5lTnVtYmVyKTsKIH0KIAotYm9vbCBDU1BEaXJl
Y3RpdmVMaXN0OjphbGxvd0lubGluZVNjcmlwdCgpIGNvbnN0Citib29sIENTUERpcmVjdGl2ZUxp
c3Q6OmFsbG93SW5saW5lU2NyaXB0KGNvbnN0IFN0cmluZyYgdXJsLCBpbnQgbGluZU51bWJlcikg
Y29uc3QKIHsKICAgICBERUZJTkVfU1RBVElDX0xPQ0FMKFN0cmluZywgY29uc29sZU1lc3NhZ2Us
ICgiUmVmdXNlZCB0byBleGVjdXRlIGlubGluZSBzY3JpcHQgYmVjYXVzZSBpdCB2aW9sYXRlcyB0
aGUgZm9sbG93aW5nIENvbnRlbnQgU2VjdXJpdHkgUG9saWN5IGRpcmVjdGl2ZTogIikpOwotICAg
IHJldHVybiBjaGVja0lubGluZUFuZFJlcG9ydFZpb2xhdGlvbihvcGVyYXRpdmVEaXJlY3RpdmUo
bV9zY3JpcHRTcmMuZ2V0KCkpLCBjb25zb2xlTWVzc2FnZSk7CisgICAgcmV0dXJuIGNoZWNrSW5s
aW5lQW5kUmVwb3J0VmlvbGF0aW9uKG9wZXJhdGl2ZURpcmVjdGl2ZShtX3NjcmlwdFNyYy5nZXQo
KSksIGNvbnNvbGVNZXNzYWdlLCB1cmwsIGxpbmVOdW1iZXIpOwogfQogCi1ib29sIENTUERpcmVj
dGl2ZUxpc3Q6OmFsbG93SW5saW5lU3R5bGUoKSBjb25zdAorYm9vbCBDU1BEaXJlY3RpdmVMaXN0
OjphbGxvd0lubGluZVN0eWxlKGNvbnN0IFN0cmluZyYgdXJsLCBpbnQgbGluZU51bWJlcikgY29u
c3QKIHsKICAgICBERUZJTkVfU1RBVElDX0xPQ0FMKFN0cmluZywgY29uc29sZU1lc3NhZ2UsICgi
UmVmdXNlZCB0byBhcHBseSBpbmxpbmUgc3R5bGUgYmVjYXVzZSBpdCB2aW9sYXRlcyB0aGUgZm9s
bG93aW5nIENvbnRlbnQgU2VjdXJpdHkgUG9saWN5IGRpcmVjdGl2ZTogIikpOwotICAgIHJldHVy
biBjaGVja0lubGluZUFuZFJlcG9ydFZpb2xhdGlvbihvcGVyYXRpdmVEaXJlY3RpdmUobV9zdHls
ZVNyYy5nZXQoKSksIGNvbnNvbGVNZXNzYWdlKTsKKyAgICByZXR1cm4gY2hlY2tJbmxpbmVBbmRS
ZXBvcnRWaW9sYXRpb24ob3BlcmF0aXZlRGlyZWN0aXZlKG1fc3R5bGVTcmMuZ2V0KCkpLCBjb25z
b2xlTWVzc2FnZSwgdXJsLCBsaW5lTnVtYmVyKTsKIH0KIAogYm9vbCBDU1BEaXJlY3RpdmVMaXN0
OjphbGxvd0V2YWwoKSBjb25zdAogewogICAgIERFRklORV9TVEFUSUNfTE9DQUwoU3RyaW5nLCBj
b25zb2xlTWVzc2FnZSwgKCJSZWZ1c2VkIHRvIGV2YWx1YXRlIHNjcmlwdCBiZWNhdXNlIGl0IHZp
b2xhdGVzIHRoZSBmb2xsb3dpbmcgQ29udGVudCBTZWN1cml0eSBQb2xpY3kgZGlyZWN0aXZlOiAi
KSk7Ci0gICAgcmV0dXJuIGNoZWNrRXZhbEFuZFJlcG9ydFZpb2xhdGlvbihvcGVyYXRpdmVEaXJl
Y3RpdmUobV9zY3JpcHRTcmMuZ2V0KCkpLCBjb25zb2xlTWVzc2FnZSk7CisgICAgcmV0dXJuIGNo
ZWNrRXZhbEFuZFJlcG9ydFZpb2xhdGlvbihvcGVyYXRpdmVEaXJlY3RpdmUobV9zY3JpcHRTcmMu
Z2V0KCkpLCBjb25zb2xlTWVzc2FnZSwgS1VSTCgpLCAwKTsKIH0KIAogYm9vbCBDU1BEaXJlY3Rp
dmVMaXN0OjphbGxvd1NjcmlwdEZyb21Tb3VyY2UoY29uc3QgS1VSTCYgdXJsKSBjb25zdApAQCAt
OTMzLDYgKzkzNCwxNiBAQCBib29sIGlzQWxsb3dlZEJ5QWxsKGNvbnN0IENTUERpcmVjdGl2ZUxp
c3RWZWN0b3ImIHBvbGljaWVzKQogICAgIHJldHVybiB0cnVlOwogfQogCit0ZW1wbGF0ZTxib29s
IChDU1BEaXJlY3RpdmVMaXN0OjoqYWxsb3dlZCkoY29uc3QgU3RyaW5nJiwgaW50KSBjb25zdD4K
K2Jvb2wgaXNBbGxvd2VkQnlBbGwoY29uc3QgQ1NQRGlyZWN0aXZlTGlzdFZlY3RvciYgcG9saWNp
ZXMsIGNvbnN0IFN0cmluZyYgdXJsLCBjb25zdCBpbnQgbGluZU51bWJlcikKK3sKKyAgICBmb3Ig
KHNpemVfdCBpID0gMDsgaSA8IHBvbGljaWVzLnNpemUoKTsgKytpKSB7CisgICAgICAgIGlmICgh
KHBvbGljaWVzW2ldLmdldCgpLT4qYWxsb3dlZCkodXJsLCBsaW5lTnVtYmVyKSkKKyAgICAgICAg
ICAgIHJldHVybiBmYWxzZTsKKyAgICB9CisgICAgcmV0dXJuIHRydWU7Cit9CisKIHRlbXBsYXRl
PGJvb2wgKENTUERpcmVjdGl2ZUxpc3Q6OiphbGxvd0Zyb21VUkwpKGNvbnN0IEtVUkwmKSBjb25z
dD4KIGJvb2wgaXNBbGxvd2VkQnlBbGwoY29uc3QgQ1NQRGlyZWN0aXZlTGlzdFZlY3RvciYgcG9s
aWNpZXMsIGNvbnN0IEtVUkwmIHVybCkKIHsKQEAgLTk0MywyNiArOTU0LDI2IEBAIGJvb2wgaXNB
bGxvd2VkQnlBbGwoY29uc3QgQ1NQRGlyZWN0aXZlTGlzdFZlY3RvciYgcG9saWNpZXMsIGNvbnN0
IEtVUkwmIHVybCkKICAgICByZXR1cm4gdHJ1ZTsKIH0KIAotYm9vbCBDb250ZW50U2VjdXJpdHlQ
b2xpY3k6OmFsbG93SmF2YVNjcmlwdFVSTHMoKSBjb25zdAorYm9vbCBDb250ZW50U2VjdXJpdHlQ
b2xpY3k6OmFsbG93SmF2YVNjcmlwdFVSTHMoY29uc3QgU3RyaW5nJiB1cmwsIGludCBsaW5lTnVt
YmVyKSBjb25zdAogewotICAgIHJldHVybiBpc0FsbG93ZWRCeUFsbDwmQ1NQRGlyZWN0aXZlTGlz
dDo6YWxsb3dKYXZhU2NyaXB0VVJMcz4obV9wb2xpY2llcyk7CisgICAgcmV0dXJuIGlzQWxsb3dl
ZEJ5QWxsPCZDU1BEaXJlY3RpdmVMaXN0OjphbGxvd0phdmFTY3JpcHRVUkxzPihtX3BvbGljaWVz
LCB1cmwsIGxpbmVOdW1iZXIpOwogfQogCi1ib29sIENvbnRlbnRTZWN1cml0eVBvbGljeTo6YWxs
b3dJbmxpbmVFdmVudEhhbmRsZXJzKCkgY29uc3QKK2Jvb2wgQ29udGVudFNlY3VyaXR5UG9saWN5
OjphbGxvd0lubGluZUV2ZW50SGFuZGxlcnMoY29uc3QgU3RyaW5nJiB1cmwsIGludCBsaW5lTnVt
YmVyKSBjb25zdAogewotICAgIHJldHVybiBpc0FsbG93ZWRCeUFsbDwmQ1NQRGlyZWN0aXZlTGlz
dDo6YWxsb3dJbmxpbmVFdmVudEhhbmRsZXJzPihtX3BvbGljaWVzKTsKKyAgICByZXR1cm4gaXNB
bGxvd2VkQnlBbGw8JkNTUERpcmVjdGl2ZUxpc3Q6OmFsbG93SW5saW5lRXZlbnRIYW5kbGVycz4o
bV9wb2xpY2llcywgdXJsLCBsaW5lTnVtYmVyKTsKIH0KIAotYm9vbCBDb250ZW50U2VjdXJpdHlQ
b2xpY3k6OmFsbG93SW5saW5lU2NyaXB0KCkgY29uc3QKK2Jvb2wgQ29udGVudFNlY3VyaXR5UG9s
aWN5OjphbGxvd0lubGluZVNjcmlwdChjb25zdCBTdHJpbmcmIHVybCwgaW50IGxpbmVOdW1iZXIp
IGNvbnN0CiB7Ci0gICAgcmV0dXJuIGlzQWxsb3dlZEJ5QWxsPCZDU1BEaXJlY3RpdmVMaXN0Ojph
bGxvd0lubGluZVNjcmlwdD4obV9wb2xpY2llcyk7CisgICAgcmV0dXJuIGlzQWxsb3dlZEJ5QWxs
PCZDU1BEaXJlY3RpdmVMaXN0OjphbGxvd0lubGluZVNjcmlwdD4obV9wb2xpY2llcywgdXJsLCBs
aW5lTnVtYmVyKTsKIH0KIAotYm9vbCBDb250ZW50U2VjdXJpdHlQb2xpY3k6OmFsbG93SW5saW5l
U3R5bGUoKSBjb25zdAorYm9vbCBDb250ZW50U2VjdXJpdHlQb2xpY3k6OmFsbG93SW5saW5lU3R5
bGUoY29uc3QgU3RyaW5nJiB1cmwsIGludCBsaW5lTnVtYmVyKSBjb25zdAogewogICAgIGlmICht
X292ZXJyaWRlSW5saW5lU3R5bGVBbGxvd2VkKQogICAgICAgICByZXR1cm4gdHJ1ZTsKLSAgICBy
ZXR1cm4gaXNBbGxvd2VkQnlBbGw8JkNTUERpcmVjdGl2ZUxpc3Q6OmFsbG93SW5saW5lU3R5bGU+
KG1fcG9saWNpZXMpOworICAgIHJldHVybiBpc0FsbG93ZWRCeUFsbDwmQ1NQRGlyZWN0aXZlTGlz
dDo6YWxsb3dJbmxpbmVTdHlsZT4obV9wb2xpY2llcywgdXJsLCBsaW5lTnVtYmVyKTsKIH0KIAog
Ym9vbCBDb250ZW50U2VjdXJpdHlQb2xpY3k6OmFsbG93RXZhbCgpIGNvbnN0CmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViQ29yZS9wYWdlL0NvbnRlbnRTZWN1cml0eVBvbGljeS5oIGIvU291cmNlL1dl
YkNvcmUvcGFnZS9Db250ZW50U2VjdXJpdHlQb2xpY3kuaAppbmRleCBmMTMwMTRmMTMxZjU3MGJm
YmI2MDU5YTUyODZhY2RkODAxODRiNWNjLi44MjhlNWIzOWM5ZDcwNWE5YjNjZTYzMzJlOWMzMjNi
MzcwMDE0YTQ0IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL0NvbnRlbnRTZWN1cml0
eVBvbGljeS5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BhZ2UvQ29udGVudFNlY3VyaXR5UG9saWN5
LmgKQEAgLTYxLDEwICs2MSwxMCBAQCBwdWJsaWM6CiAgICAgY29uc3QgU3RyaW5nJiBkZXByZWNh
dGVkSGVhZGVyKCkgY29uc3Q7CiAgICAgSGVhZGVyVHlwZSBkZXByZWNhdGVkSGVhZGVyVHlwZSgp
IGNvbnN0OwogCi0gICAgYm9vbCBhbGxvd0phdmFTY3JpcHRVUkxzKCkgY29uc3Q7Ci0gICAgYm9v
bCBhbGxvd0lubGluZUV2ZW50SGFuZGxlcnMoKSBjb25zdDsKLSAgICBib29sIGFsbG93SW5saW5l
U2NyaXB0KCkgY29uc3Q7Ci0gICAgYm9vbCBhbGxvd0lubGluZVN0eWxlKCkgY29uc3Q7CisgICAg
Ym9vbCBhbGxvd0phdmFTY3JpcHRVUkxzKGNvbnN0IFN0cmluZyYgdXJsLCBpbnQgbGluZU51bWJl
cikgY29uc3Q7CisgICAgYm9vbCBhbGxvd0lubGluZUV2ZW50SGFuZGxlcnMoY29uc3QgU3RyaW5n
JiB1cmwsIGludCBsaW5lTnVtYmVyKSBjb25zdDsKKyAgICBib29sIGFsbG93SW5saW5lU2NyaXB0
KGNvbnN0IFN0cmluZyYgdXJsLCBpbnQgbGluZU51bWJlcikgY29uc3Q7CisgICAgYm9vbCBhbGxv
d0lubGluZVN0eWxlKGNvbnN0IFN0cmluZyYgdXJsLCBpbnQgbGluZU51bWJlcikgY29uc3Q7CiAg
ICAgYm9vbCBhbGxvd0V2YWwoKSBjb25zdDsKIAogICAgIGJvb2wgYWxsb3dTY3JpcHRGcm9tU291
cmNlKGNvbnN0IEtVUkwmKSBjb25zdDsKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL0NoYW5nZUxv
ZyBiL0xheW91dFRlc3RzL0NoYW5nZUxvZwppbmRleCAzN2QwNTcwZWZiNzRkN2YxZmE0M2U3MDY3
ZGEzYjliYTQ3Y2E2MDg2Li45NjQzOGM5NGJjNzY4MWYwNzM4MzZhMjZjMGZlNDk0YTc0MmVjNzQ3
IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKKysrIGIvTGF5b3V0VGVzdHMvQ2hh
bmdlTG9nCkBAIC0xLDMgKzEsMjcgQEAKKzIwMTItMDUtMTggIE1pa2UgV2VzdCAgPG1rd3N0QGNo
cm9taXVtLm9yZz4KKworICAgICAgICBJbmxpbmUgc2NyaXB0IGFuZCBzdHlsZSBibG9ja2VkIGJ5
IENvbnRlbnQgU2VjdXJpdHkgUG9saWN5IHNob3VsZCBwcm92aWRlIG1vcmUgZGV0YWlsZWQgY29u
c29sZSBlcnJvcnMuCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNn
aT9pZD04Njg0OAorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAg
ICAgICogaHR0cC90ZXN0cy9zZWN1cml0eS9jb250ZW50U2VjdXJpdHlQb2xpY3kvY29tYmluZS1t
dWx0aXBsZS1wb2xpY2llcy1leHBlY3RlZC50eHQ6CisgICAgICAgICogaHR0cC90ZXN0cy9zZWN1
cml0eS9jb250ZW50U2VjdXJpdHlQb2xpY3kvZGVmYXVsdC1zcmMtaW5saW5lLWJsb2NrZWQtZXhw
ZWN0ZWQudHh0OgorICAgICAgICAqIGh0dHAvdGVzdHMvc2VjdXJpdHkvY29udGVudFNlY3VyaXR5
UG9saWN5L2lubGluZS1zY3JpcHQtYmxvY2tlZC1leHBlY3RlZC50eHQ6CisgICAgICAgICogaHR0
cC90ZXN0cy9zZWN1cml0eS9jb250ZW50U2VjdXJpdHlQb2xpY3kvaW5saW5lLXNjcmlwdC1ibG9j
a2VkLWdvb2Z5LWV4cGVjdGVkLnR4dDoKKyAgICAgICAgKiBodHRwL3Rlc3RzL3NlY3VyaXR5L2Nv
bnRlbnRTZWN1cml0eVBvbGljeS9pbmxpbmUtc2NyaXB0LWJsb2NrZWQtamF2YXNjcmlwdC11cmwt
ZXhwZWN0ZWQudHh0OgorICAgICAgICAqIGh0dHAvdGVzdHMvc2VjdXJpdHkvY29udGVudFNlY3Vy
aXR5UG9saWN5L2lubGluZS1zdHlsZS1hdHRyaWJ1dGUtYmxvY2tlZC1leHBlY3RlZC50eHQ6Cisg
ICAgICAgICogaHR0cC90ZXN0cy9zZWN1cml0eS9jb250ZW50U2VjdXJpdHlQb2xpY3kvaW5saW5l
LXN0eWxlLWJsb2NrZWQtZXhwZWN0ZWQudHh0OgorICAgICAgICAqIGh0dHAvdGVzdHMvc2VjdXJp
dHkvY29udGVudFNlY3VyaXR5UG9saWN5L2phdmFzY3JpcHQtdXJsLWJsb2NrZWQtZXhwZWN0ZWQu
dHh0OgorICAgICAgICAqIGh0dHAvdGVzdHMvc2VjdXJpdHkvY29udGVudFNlY3VyaXR5UG9saWN5
L3JlcG9ydC1hbmQtZW5mb3JjZS1leHBlY3RlZC50eHQ6CisgICAgICAgICogaHR0cC90ZXN0cy9z
ZWN1cml0eS9jb250ZW50U2VjdXJpdHlQb2xpY3kvcmVwb3J0LW9ubHktZXhwZWN0ZWQudHh0Ogor
ICAgICAgICAqIGh0dHAvdGVzdHMvc2VjdXJpdHkvY29udGVudFNlY3VyaXR5UG9saWN5L3JlcG9y
dC1vbmx5LWZyb20taGVhZGVyLWV4cGVjdGVkLnR4dDoKKyAgICAgICAgKiBodHRwL3Rlc3RzL3Nl
Y3VyaXR5L2NvbnRlbnRTZWN1cml0eVBvbGljeS9yZXBvcnQtdXJpLWV4cGVjdGVkLnR4dDoKKyAg
ICAgICAgKiBodHRwL3Rlc3RzL3NlY3VyaXR5L2NvbnRlbnRTZWN1cml0eVBvbGljeS9yZXBvcnQt
dXJpLWZyb20tY2hpbGQtZnJhbWUtZXhwZWN0ZWQudHh0OgorICAgICAgICAqIGh0dHAvdGVzdHMv
c2VjdXJpdHkvY29udGVudFNlY3VyaXR5UG9saWN5L3NjcmlwdC1zcmMtbm9uZS1pbmxpbmUtZXZl
bnQtZXhwZWN0ZWQudHh0OgorICAgICAgICAqIGh0dHAvdGVzdHMvc2VjdXJpdHkvY29udGVudFNl
Y3VyaXR5UG9saWN5L3NjcmlwdC1zcmMtcmVkaXJlY3QtZXhwZWN0ZWQudHh0OgorICAgICAgICAq
IGh0dHAvdGVzdHMvc2VjdXJpdHkvY29udGVudFNlY3VyaXR5UG9saWN5L3NyY2RvYy1kb2VzbnQt
YnlwYXNzLXNjcmlwdC1zcmMtZXhwZWN0ZWQudHh0OgorCiAyMDEyLTA1LTE3ICBEYW4gQmVybnN0
ZWluICA8bWl0ekBhcHBsZS5jb20+CiAKICAgICAgICAgPHJkYXI6Ly9wcm9ibGVtLzExNDE5OTMz
PiBQcm9ibGVtcyB3aXRoIGZsaXBwZWQgd3JpdGluZyBtb2RlcyBhbmQgY29tcG9zaXRpbmcKZGlm
ZiAtLWdpdCBhL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvc2VjdXJpdHkvY29udGVudFNlY3VyaXR5
UG9saWN5L2NvbWJpbmUtbXVsdGlwbGUtcG9saWNpZXMtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVz
dHMvaHR0cC90ZXN0cy9zZWN1cml0eS9jb250ZW50U2VjdXJpdHlQb2xpY3kvY29tYmluZS1tdWx0
aXBsZS1wb2xpY2llcy1leHBlY3RlZC50eHQKaW5kZXggNzU2MDQxOTBmYjNlYjIyNjgwM2VkMDA3
MzcxZDBiNjY3NGM0MmM4OC4uNmM2MGY1ODk5YWJmNDU5MjE4MjcxYTIxMzU3NDVjYmY0MDhiZjk4
MiAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9zZWN1cml0eS9jb250ZW50U2Vj
dXJpdHlQb2xpY3kvY29tYmluZS1tdWx0aXBsZS1wb2xpY2llcy1leHBlY3RlZC50eHQKKysrIGIv
TGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9zZWN1cml0eS9jb250ZW50U2VjdXJpdHlQb2xpY3kvY29t
YmluZS1tdWx0aXBsZS1wb2xpY2llcy1leHBlY3RlZC50eHQKQEAgLTEsNSArMSw1IEBACi1DT05T
T0xFIE1FU1NBR0U6IFJlZnVzZWQgdG8gZXhlY3V0ZSBpbmxpbmUgc2NyaXB0IGJlY2F1c2UgaXQg
dmlvbGF0ZXMgdGhlIGZvbGxvd2luZyBDb250ZW50IFNlY3VyaXR5IFBvbGljeSBkaXJlY3RpdmU6
ICJzY3JpcHQtc3JjICdzZWxmJyIuCitDT05TT0xFIE1FU1NBR0U6IGxpbmUgMTE6IFJlZnVzZWQg
dG8gZXhlY3V0ZSBpbmxpbmUgc2NyaXB0IGJlY2F1c2UgaXQgdmlvbGF0ZXMgdGhlIGZvbGxvd2lu
ZyBDb250ZW50IFNlY3VyaXR5IFBvbGljeSBkaXJlY3RpdmU6ICJzY3JpcHQtc3JjICdzZWxmJyIu
CiAKLUNPTlNPTEUgTUVTU0FHRTogUmVmdXNlZCB0byBhcHBseSBpbmxpbmUgc3R5bGUgYmVjYXVz
ZSBpdCB2aW9sYXRlcyB0aGUgZm9sbG93aW5nIENvbnRlbnQgU2VjdXJpdHkgUG9saWN5IGRpcmVj
dGl2ZTogInN0eWxlLXNyYyAnbm9uZSciLgorQ09OU09MRSBNRVNTQUdFOiBsaW5lIDEzOiBSZWZ1
c2VkIHRvIGFwcGx5IGlubGluZSBzdHlsZSBiZWNhdXNlIGl0IHZpb2xhdGVzIHRoZSBmb2xsb3dp
bmcgQ29udGVudCBTZWN1cml0eSBQb2xpY3kgZGlyZWN0aXZlOiAic3R5bGUtc3JjICdub25lJyIu
CiAKIFRoaXMgdGVzdCBjaGVja3MgdGhhdCB3ZSBlbmZvcmNlIGFsbCB0aGUgc3VwcGxpZWQgcG9s
aWNpZXMuIFRoaXMgdGVzdCBwYXNzZXMgaWYgaXQgZG9lc24ndCBhbGVydCBmYWlsIGFuZCBpZiB0
aGUgc3R5bGUgZG9lc24ndCBhcHBseS4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2h0dHAvdGVz
dHMvc2VjdXJpdHkvY29udGVudFNlY3VyaXR5UG9saWN5L2RlZmF1bHQtc3JjLWlubGluZS1ibG9j
a2VkLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvc2VjdXJpdHkvY29udGVu
dFNlY3VyaXR5UG9saWN5L2RlZmF1bHQtc3JjLWlubGluZS1ibG9ja2VkLWV4cGVjdGVkLnR4dApp
bmRleCBkNjg1Y2FkZDI5NWE5MWY0ZGYwNDY0Njk1MjJhYThiOWEzMTFhODhhLi41MjVkZDc1NWRj
ZDgyNzllMjEyNWM2YzYxNzJmODc0OWU4NmYzZTM1IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9o
dHRwL3Rlc3RzL3NlY3VyaXR5L2NvbnRlbnRTZWN1cml0eVBvbGljeS9kZWZhdWx0LXNyYy1pbmxp
bmUtYmxvY2tlZC1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9zZWN1
cml0eS9jb250ZW50U2VjdXJpdHlQb2xpY3kvZGVmYXVsdC1zcmMtaW5saW5lLWJsb2NrZWQtZXhw
ZWN0ZWQudHh0CkBAIC0xLDUgKzEsNSBAQAotQ09OU09MRSBNRVNTQUdFOiBSZWZ1c2VkIHRvIGV4
ZWN1dGUgaW5saW5lIHNjcmlwdCBiZWNhdXNlIGl0IHZpb2xhdGVzIHRoZSBmb2xsb3dpbmcgQ29u
dGVudCBTZWN1cml0eSBQb2xpY3kgZGlyZWN0aXZlOiAiZGVmYXVsdC1zcmMgJ3NlbGYnIi4KK0NP
TlNPTEUgTUVTU0FHRTogbGluZSA5OiBSZWZ1c2VkIHRvIGV4ZWN1dGUgaW5saW5lIHNjcmlwdCBi
ZWNhdXNlIGl0IHZpb2xhdGVzIHRoZSBmb2xsb3dpbmcgQ29udGVudCBTZWN1cml0eSBQb2xpY3kg
ZGlyZWN0aXZlOiAiZGVmYXVsdC1zcmMgJ3NlbGYnIi4KIAotQ09OU09MRSBNRVNTQUdFOiBSZWZ1
c2VkIHRvIGV4ZWN1dGUgaW5saW5lIHNjcmlwdCBiZWNhdXNlIGl0IHZpb2xhdGVzIHRoZSBmb2xs
b3dpbmcgQ29udGVudCBTZWN1cml0eSBQb2xpY3kgZGlyZWN0aXZlOiAiZGVmYXVsdC1zcmMgJ3Nl
bGYnIi4KK0NPTlNPTEUgTUVTU0FHRTogbGluZSAxMjogUmVmdXNlZCB0byBleGVjdXRlIGlubGlu
ZSBzY3JpcHQgYmVjYXVzZSBpdCB2aW9sYXRlcyB0aGUgZm9sbG93aW5nIENvbnRlbnQgU2VjdXJp
dHkgUG9saWN5IGRpcmVjdGl2ZTogImRlZmF1bHQtc3JjICdzZWxmJyIuCiAKIFRoaXMgdGVzdCBw
YXNzZXMgaWYgaXQgZG9lc24ndCBhbGVydCBmYWlsLgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMv
aHR0cC90ZXN0cy9zZWN1cml0eS9jb250ZW50U2VjdXJpdHlQb2xpY3kvaW5saW5lLXNjcmlwdC1i
bG9ja2VkLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvc2VjdXJpdHkvY29u
dGVudFNlY3VyaXR5UG9saWN5L2lubGluZS1zY3JpcHQtYmxvY2tlZC1leHBlY3RlZC50eHQKaW5k
ZXggMGNlYWQ2MTNlZGE3NTRlNTkyN2NjOGQxY2Q3ODU1NGM2MzIxNjUxMi4uZTFiNjhiNTBmN2U3
NjdjZGI3ODkxZDgxZjAyMjc1MGFmNDI4MTk3ZiAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaHR0
cC90ZXN0cy9zZWN1cml0eS9jb250ZW50U2VjdXJpdHlQb2xpY3kvaW5saW5lLXNjcmlwdC1ibG9j
a2VkLWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3NlY3VyaXR5L2Nv
bnRlbnRTZWN1cml0eVBvbGljeS9pbmxpbmUtc2NyaXB0LWJsb2NrZWQtZXhwZWN0ZWQudHh0CkBA
IC0xLDUgKzEsNSBAQAotQ09OU09MRSBNRVNTQUdFOiBSZWZ1c2VkIHRvIGV4ZWN1dGUgaW5saW5l
IHNjcmlwdCBiZWNhdXNlIGl0IHZpb2xhdGVzIHRoZSBmb2xsb3dpbmcgQ29udGVudCBTZWN1cml0
eSBQb2xpY3kgZGlyZWN0aXZlOiAic2NyaXB0LXNyYyBodHRwOi8vMTI3LjAuMC4xOioiLgorQ09O
U09MRSBNRVNTQUdFOiBsaW5lIDk6IFJlZnVzZWQgdG8gZXhlY3V0ZSBpbmxpbmUgc2NyaXB0IGJl
Y2F1c2UgaXQgdmlvbGF0ZXMgdGhlIGZvbGxvd2luZyBDb250ZW50IFNlY3VyaXR5IFBvbGljeSBk
aXJlY3RpdmU6ICJzY3JpcHQtc3JjIGh0dHA6Ly8xMjcuMC4wLjE6KiIuCiAKLUNPTlNPTEUgTUVT
U0FHRTogUmVmdXNlZCB0byBleGVjdXRlIGlubGluZSBzY3JpcHQgYmVjYXVzZSBpdCB2aW9sYXRl
cyB0aGUgZm9sbG93aW5nIENvbnRlbnQgU2VjdXJpdHkgUG9saWN5IGRpcmVjdGl2ZTogInNjcmlw
dC1zcmMgaHR0cDovLzEyNy4wLjAuMToqIi4KK0NPTlNPTEUgTUVTU0FHRTogbGluZSAxMjogUmVm
dXNlZCB0byBleGVjdXRlIGlubGluZSBzY3JpcHQgYmVjYXVzZSBpdCB2aW9sYXRlcyB0aGUgZm9s
bG93aW5nIENvbnRlbnQgU2VjdXJpdHkgUG9saWN5IGRpcmVjdGl2ZTogInNjcmlwdC1zcmMgaHR0
cDovLzEyNy4wLjAuMToqIi4KIAogVGhpcyB0ZXN0IHBhc3NlcyBpZiBpdCBkb2Vzbid0IGFsZXJ0
IGZhaWwuCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3NlY3VyaXR5L2NvbnRl
bnRTZWN1cml0eVBvbGljeS9pbmxpbmUtc2NyaXB0LWJsb2NrZWQtZ29vZnktZXhwZWN0ZWQudHh0
IGIvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9zZWN1cml0eS9jb250ZW50U2VjdXJpdHlQb2xpY3kv
aW5saW5lLXNjcmlwdC1ibG9ja2VkLWdvb2Z5LWV4cGVjdGVkLnR4dAppbmRleCA1YmIwNDVjN2M5
NTM2YTQyNDBmZDZlNjc3ZDZkYjZhZGIwNDY0MWNmLi41MzU4YzA1NjQyODY0NGVjNGE1MWZjMmUw
NGFjZWYxMTUyZTRhNzA2IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3NlY3Vy
aXR5L2NvbnRlbnRTZWN1cml0eVBvbGljeS9pbmxpbmUtc2NyaXB0LWJsb2NrZWQtZ29vZnktZXhw
ZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvc2VjdXJpdHkvY29udGVudFNl
Y3VyaXR5UG9saWN5L2lubGluZS1zY3JpcHQtYmxvY2tlZC1nb29meS1leHBlY3RlZC50eHQKQEAg
LTEsNyArMSw3IEBACiBDT05TT0xFIE1FU1NBR0U6IFVucmVjb2duaXplZCBDb250ZW50LVNlY3Vy
aXR5LVBvbGljeSBkaXJlY3RpdmUgJ29wdGlvbnMnLgogCi1DT05TT0xFIE1FU1NBR0U6IFJlZnVz
ZWQgdG8gZXhlY3V0ZSBpbmxpbmUgc2NyaXB0IGJlY2F1c2UgaXQgdmlvbGF0ZXMgdGhlIGZvbGxv
d2luZyBDb250ZW50IFNlY3VyaXR5IFBvbGljeSBkaXJlY3RpdmU6ICJzY3JpcHQtc3JjIGh0dHA6
Ly8xMjcuMC4wLjE6KiIuCitDT05TT0xFIE1FU1NBR0U6IGxpbmUgOTogUmVmdXNlZCB0byBleGVj
dXRlIGlubGluZSBzY3JpcHQgYmVjYXVzZSBpdCB2aW9sYXRlcyB0aGUgZm9sbG93aW5nIENvbnRl
bnQgU2VjdXJpdHkgUG9saWN5IGRpcmVjdGl2ZTogInNjcmlwdC1zcmMgaHR0cDovLzEyNy4wLjAu
MToqIi4KIAotQ09OU09MRSBNRVNTQUdFOiBSZWZ1c2VkIHRvIGV4ZWN1dGUgaW5saW5lIGV2ZW50
IGhhbmRsZXIgYmVjYXVzZSBpdCB2aW9sYXRlcyB0aGUgZm9sbG93aW5nIENvbnRlbnQgU2VjdXJp
dHkgUG9saWN5IGRpcmVjdGl2ZTogInNjcmlwdC1zcmMgaHR0cDovLzEyNy4wLjAuMToqIi4KK0NP
TlNPTEUgTUVTU0FHRTogbGluZSA3OiBSZWZ1c2VkIHRvIGV4ZWN1dGUgaW5saW5lIGV2ZW50IGhh
bmRsZXIgYmVjYXVzZSBpdCB2aW9sYXRlcyB0aGUgZm9sbG93aW5nIENvbnRlbnQgU2VjdXJpdHkg
UG9saWN5IGRpcmVjdGl2ZTogInNjcmlwdC1zcmMgaHR0cDovLzEyNy4wLjAuMToqIi4KIAogVGhp
cyB0ZXN0IHBhc3NlcyBpZiBpdCBkb2Vzbid0IGFsZXJ0IGZhaWwuCmRpZmYgLS1naXQgYS9MYXlv
dXRUZXN0cy9odHRwL3Rlc3RzL3NlY3VyaXR5L2NvbnRlbnRTZWN1cml0eVBvbGljeS9pbmxpbmUt
c2NyaXB0LWJsb2NrZWQtamF2YXNjcmlwdC11cmwtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMv
aHR0cC90ZXN0cy9zZWN1cml0eS9jb250ZW50U2VjdXJpdHlQb2xpY3kvaW5saW5lLXNjcmlwdC1i
bG9ja2VkLWphdmFzY3JpcHQtdXJsLWV4cGVjdGVkLnR4dAppbmRleCBlZDA2MjQ0NjcyODVlODEw
ZWE2NjQ4MmNjZGY0OWFmYjQ0MDBmMTM1Li45NTQ1MDFjZGNkZDczYTc5YmE0MmFmYWU2MGQwZWVi
YmZiN2ZmMTNmIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3NlY3VyaXR5L2Nv
bnRlbnRTZWN1cml0eVBvbGljeS9pbmxpbmUtc2NyaXB0LWJsb2NrZWQtamF2YXNjcmlwdC11cmwt
ZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvc2VjdXJpdHkvY29udGVu
dFNlY3VyaXR5UG9saWN5L2lubGluZS1zY3JpcHQtYmxvY2tlZC1qYXZhc2NyaXB0LXVybC1leHBl
Y3RlZC50eHQKQEAgLTQsNiArNCw2IEBAIENPTlNPTEUgTUVTU0FHRTogVW5yZWNvZ25pemVkIENv
bnRlbnQtU2VjdXJpdHktUG9saWN5IGRpcmVjdGl2ZSAnb3B0aW9ucycuCiAKIENPTlNPTEUgTUVT
U0FHRTogVW5yZWNvZ25pemVkIENvbnRlbnQtU2VjdXJpdHktUG9saWN5IGRpcmVjdGl2ZSAnb3B0
aW9ucycuCiAKLUNPTlNPTEUgTUVTU0FHRTogUmVmdXNlZCB0byBleGVjdXRlIEphdmFTY3JpcHQg
VVJMIGJlY2F1c2UgaXQgdmlvbGF0ZXMgdGhlIGZvbGxvd2luZyBDb250ZW50IFNlY3VyaXR5IFBv
bGljeSBkaXJlY3RpdmU6ICJzY3JpcHQtc3JjIGh0dHA6Ly8xMjcuMC4wLjE6KiIuCitDT05TT0xF
IE1FU1NBR0U6IGxpbmUgMTogUmVmdXNlZCB0byBleGVjdXRlIEphdmFTY3JpcHQgVVJMIGJlY2F1
c2UgaXQgdmlvbGF0ZXMgdGhlIGZvbGxvd2luZyBDb250ZW50IFNlY3VyaXR5IFBvbGljeSBkaXJl
Y3RpdmU6ICJzY3JpcHQtc3JjIGh0dHA6Ly8xMjcuMC4wLjE6KiIuCiAKIFRoaXMgdGVzdCBwYXNz
ZXMgaWYgaXQgZG9lc24ndCBhbGVydCBmYWlsLiAKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2h0
dHAvdGVzdHMvc2VjdXJpdHkvY29udGVudFNlY3VyaXR5UG9saWN5L2lubGluZS1zdHlsZS1hdHRy
aWJ1dGUtYmxvY2tlZC1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3NlY3Vy
aXR5L2NvbnRlbnRTZWN1cml0eVBvbGljeS9pbmxpbmUtc3R5bGUtYXR0cmlidXRlLWJsb2NrZWQt
ZXhwZWN0ZWQudHh0CmluZGV4IDczMjU0NjI1MTBhNWI2NzliMTBkZjk1MDM4YmUyYjU4Njc5MTk4
ZjEuLmU3YTY4ODMxNmQzZGNhYmUzM2U4MWNjM2RmMzYzNWRkZTUxODEzZWUgMTAwNjQ0Ci0tLSBh
L0xheW91dFRlc3RzL2h0dHAvdGVzdHMvc2VjdXJpdHkvY29udGVudFNlY3VyaXR5UG9saWN5L2lu
bGluZS1zdHlsZS1hdHRyaWJ1dGUtYmxvY2tlZC1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVz
dHMvaHR0cC90ZXN0cy9zZWN1cml0eS9jb250ZW50U2VjdXJpdHlQb2xpY3kvaW5saW5lLXN0eWxl
LWF0dHJpYnV0ZS1ibG9ja2VkLWV4cGVjdGVkLnR4dApAQCAtMSwzICsxLDMgQEAKLUNPTlNPTEUg
TUVTU0FHRTogUmVmdXNlZCB0byBhcHBseSBpbmxpbmUgc3R5bGUgYmVjYXVzZSBpdCB2aW9sYXRl
cyB0aGUgZm9sbG93aW5nIENvbnRlbnQgU2VjdXJpdHkgUG9saWN5IGRpcmVjdGl2ZTogInN0eWxl
LXNyYyAnbm9uZSciLgorQ09OU09MRSBNRVNTQUdFOiBsaW5lIDEwOiBSZWZ1c2VkIHRvIGFwcGx5
IGlubGluZSBzdHlsZSBiZWNhdXNlIGl0IHZpb2xhdGVzIHRoZSBmb2xsb3dpbmcgQ29udGVudCBT
ZWN1cml0eSBQb2xpY3kgZGlyZWN0aXZlOiAic3R5bGUtc3JjICdub25lJyIuCiAKIFBBU1MKZGlm
ZiAtLWdpdCBhL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvc2VjdXJpdHkvY29udGVudFNlY3VyaXR5
UG9saWN5L2lubGluZS1zdHlsZS1ibG9ja2VkLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2h0
dHAvdGVzdHMvc2VjdXJpdHkvY29udGVudFNlY3VyaXR5UG9saWN5L2lubGluZS1zdHlsZS1ibG9j
a2VkLWV4cGVjdGVkLnR4dAppbmRleCA3MzI1NDYyNTEwYTViNjc5YjEwZGY5NTAzOGJlMmI1ODY3
OTE5OGYxLi41NmQwOTI4M2QyOTVmNTM3NmVhMjU2ODM3NjJjMzY0ZDc3YTk4MGUwIDEwMDY0NAot
LS0gYS9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3NlY3VyaXR5L2NvbnRlbnRTZWN1cml0eVBvbGlj
eS9pbmxpbmUtc3R5bGUtYmxvY2tlZC1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvaHR0
cC90ZXN0cy9zZWN1cml0eS9jb250ZW50U2VjdXJpdHlQb2xpY3kvaW5saW5lLXN0eWxlLWJsb2Nr
ZWQtZXhwZWN0ZWQudHh0CkBAIC0xLDMgKzEsMyBAQAotQ09OU09MRSBNRVNTQUdFOiBSZWZ1c2Vk
IHRvIGFwcGx5IGlubGluZSBzdHlsZSBiZWNhdXNlIGl0IHZpb2xhdGVzIHRoZSBmb2xsb3dpbmcg
Q29udGVudCBTZWN1cml0eSBQb2xpY3kgZGlyZWN0aXZlOiAic3R5bGUtc3JjICdub25lJyIuCitD
T05TT0xFIE1FU1NBR0U6IGxpbmUgNDogUmVmdXNlZCB0byBhcHBseSBpbmxpbmUgc3R5bGUgYmVj
YXVzZSBpdCB2aW9sYXRlcyB0aGUgZm9sbG93aW5nIENvbnRlbnQgU2VjdXJpdHkgUG9saWN5IGRp
cmVjdGl2ZTogInN0eWxlLXNyYyAnbm9uZSciLgogCiBQQVNTCmRpZmYgLS1naXQgYS9MYXlvdXRU
ZXN0cy9odHRwL3Rlc3RzL3NlY3VyaXR5L2NvbnRlbnRTZWN1cml0eVBvbGljeS9qYXZhc2NyaXB0
LXVybC1ibG9ja2VkLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvc2VjdXJp
dHkvY29udGVudFNlY3VyaXR5UG9saWN5L2phdmFzY3JpcHQtdXJsLWJsb2NrZWQtZXhwZWN0ZWQu
dHh0CmluZGV4IDhlMmRjMzMzMjE3MzUyZjQ4NTQ0OTQ2ZmUxNDJkNTkwYzhhOTdhZTMuLjFjYTky
NjJiZDUzMjFlYTVmY2Y1OTdjMDdlMWMzMTkwODg5ZGMyZDkgMTAwNjQ0Ci0tLSBhL0xheW91dFRl
c3RzL2h0dHAvdGVzdHMvc2VjdXJpdHkvY29udGVudFNlY3VyaXR5UG9saWN5L2phdmFzY3JpcHQt
dXJsLWJsb2NrZWQtZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvc2Vj
dXJpdHkvY29udGVudFNlY3VyaXR5UG9saWN5L2phdmFzY3JpcHQtdXJsLWJsb2NrZWQtZXhwZWN0
ZWQudHh0CkBAIC00LDcgKzQsNyBAQCBDT05TT0xFIE1FU1NBR0U6IFVucmVjb2duaXplZCBDb250
ZW50LVNlY3VyaXR5LVBvbGljeSBkaXJlY3RpdmUgJ2FsbG93Jy4KIAogQ09OU09MRSBNRVNTQUdF
OiBVbnJlY29nbml6ZWQgQ29udGVudC1TZWN1cml0eS1Qb2xpY3kgZGlyZWN0aXZlICdhbGxvdycu
CiAKLUNPTlNPTEUgTUVTU0FHRTogUmVmdXNlZCB0byBleGVjdXRlIEphdmFTY3JpcHQgVVJMIGJl
Y2F1c2UgaXQgdmlvbGF0ZXMgdGhlIGZvbGxvd2luZyBDb250ZW50IFNlY3VyaXR5IFBvbGljeSBk
aXJlY3RpdmU6ICJzY3JpcHQtc3JjICdub25lJyIuCitDT05TT0xFIE1FU1NBR0U6IGxpbmUgMTog
UmVmdXNlZCB0byBleGVjdXRlIEphdmFTY3JpcHQgVVJMIGJlY2F1c2UgaXQgdmlvbGF0ZXMgdGhl
IGZvbGxvd2luZyBDb250ZW50IFNlY3VyaXR5IFBvbGljeSBkaXJlY3RpdmU6ICJzY3JpcHQtc3Jj
ICdub25lJyIuCiAKIENPTlNPTEUgTUVTU0FHRTogVW5yZWNvZ25pemVkIENvbnRlbnQtU2VjdXJp
dHktUG9saWN5IGRpcmVjdGl2ZSAnYWxsb3cnLgogCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9o
dHRwL3Rlc3RzL3NlY3VyaXR5L2NvbnRlbnRTZWN1cml0eVBvbGljeS9yZXBvcnQtYW5kLWVuZm9y
Y2UtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9zZWN1cml0eS9jb250ZW50
U2VjdXJpdHlQb2xpY3kvcmVwb3J0LWFuZC1lbmZvcmNlLWV4cGVjdGVkLnR4dAppbmRleCAyZDNi
MmFiYTZmZGNhZWM4ZjgyNDMxMmMxNDdiZjc1YjNlNmU2N2E4Li45YWVmYTRjZjk5YjYzZDBhMTU1
YWQ5MzhjNmY4NWE2ZmM5ZDUxNzlhIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9odHRwL3Rlc3Rz
L3NlY3VyaXR5L2NvbnRlbnRTZWN1cml0eVBvbGljeS9yZXBvcnQtYW5kLWVuZm9yY2UtZXhwZWN0
ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvc2VjdXJpdHkvY29udGVudFNlY3Vy
aXR5UG9saWN5L3JlcG9ydC1hbmQtZW5mb3JjZS1leHBlY3RlZC50eHQKQEAgLTEsNCArMSw0IEBA
Ci1DT05TT0xFIE1FU1NBR0U6IFtSZXBvcnQgT25seV0gUmVmdXNlZCB0byBleGVjdXRlIGlubGlu
ZSBzY3JpcHQgYmVjYXVzZSBpdCB2aW9sYXRlcyB0aGUgZm9sbG93aW5nIENvbnRlbnQgU2VjdXJp
dHkgUG9saWN5IGRpcmVjdGl2ZTogInNjcmlwdC1zcmMgJ3NlbGYnIi4KK0NPTlNPTEUgTUVTU0FH
RTogbGluZSAzOiBbUmVwb3J0IE9ubHldIFJlZnVzZWQgdG8gZXhlY3V0ZSBpbmxpbmUgc2NyaXB0
IGJlY2F1c2UgaXQgdmlvbGF0ZXMgdGhlIGZvbGxvd2luZyBDb250ZW50IFNlY3VyaXR5IFBvbGlj
eSBkaXJlY3RpdmU6ICJzY3JpcHQtc3JjICdzZWxmJyIuCiAKIEFMRVJUOiBQQVNTCiBDT05TT0xF
IE1FU1NBR0U6IFJlZnVzZWQgdG8gbG9hZCB0aGUgaW1hZ2UgJ2h0dHA6Ly8xMjcuMC4wLjE6ODAw
MC9zZWN1cml0eS9yZXNvdXJjZXMvYWJlLnBuZycgYmVjYXVzZSBpdCB2aW9sYXRlcyB0aGUgZm9s
bG93aW5nIENvbnRlbnQgU2VjdXJpdHkgUG9saWN5IGRpcmVjdGl2ZTogImltZy1zcmMgJ25vbmUn
Ii4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvc2VjdXJpdHkvY29udGVudFNl
Y3VyaXR5UG9saWN5L3JlcG9ydC1vbmx5LWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2h0dHAv
dGVzdHMvc2VjdXJpdHkvY29udGVudFNlY3VyaXR5UG9saWN5L3JlcG9ydC1vbmx5LWV4cGVjdGVk
LnR4dAppbmRleCA3NGRjNWQ2MGY4OGY5MTcyYzJiNzUwNzkxNWM1N2ViZTAzMWI3M2QyLi5hMWVk
ZjNhZWExYTczODUwOGNmMjFiZGZjMDgzYTlhMDIxODU5NzU2IDEwMDY0NAotLS0gYS9MYXlvdXRU
ZXN0cy9odHRwL3Rlc3RzL3NlY3VyaXR5L2NvbnRlbnRTZWN1cml0eVBvbGljeS9yZXBvcnQtb25s
eS1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9zZWN1cml0eS9jb250
ZW50U2VjdXJpdHlQb2xpY3kvcmVwb3J0LW9ubHktZXhwZWN0ZWQudHh0CkBAIC0xLDQgKzEsNCBA
QAotQ09OU09MRSBNRVNTQUdFOiBbUmVwb3J0IE9ubHldIFJlZnVzZWQgdG8gZXhlY3V0ZSBpbmxp
bmUgc2NyaXB0IGJlY2F1c2UgaXQgdmlvbGF0ZXMgdGhlIGZvbGxvd2luZyBDb250ZW50IFNlY3Vy
aXR5IFBvbGljeSBkaXJlY3RpdmU6ICJzY3JpcHQtc3JjICdzZWxmJyIuCitDT05TT0xFIE1FU1NB
R0U6IGxpbmUgMjogW1JlcG9ydCBPbmx5XSBSZWZ1c2VkIHRvIGV4ZWN1dGUgaW5saW5lIHNjcmlw
dCBiZWNhdXNlIGl0IHZpb2xhdGVzIHRoZSBmb2xsb3dpbmcgQ29udGVudCBTZWN1cml0eSBQb2xp
Y3kgZGlyZWN0aXZlOiAic2NyaXB0LXNyYyAnc2VsZiciLgogCiBBTEVSVDogUEFTUwogQ1NQIHJl
cG9ydCByZWNlaXZlZDoKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvc2VjdXJp
dHkvY29udGVudFNlY3VyaXR5UG9saWN5L3JlcG9ydC1vbmx5LWZyb20taGVhZGVyLWV4cGVjdGVk
LnR4dCBiL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvc2VjdXJpdHkvY29udGVudFNlY3VyaXR5UG9s
aWN5L3JlcG9ydC1vbmx5LWZyb20taGVhZGVyLWV4cGVjdGVkLnR4dAppbmRleCBhY2UxNjQ2ODc1
YTYyN2MwYzlkZjNmMmEwZWViYWE1OTkzN2NmM2IwLi5jZWMyYzI4ZTc3ZWM4Y2Y5YzcyOGMxYzRm
ZWU4MDVjZDMzNGFlYzNkIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3NlY3Vy
aXR5L2NvbnRlbnRTZWN1cml0eVBvbGljeS9yZXBvcnQtb25seS1mcm9tLWhlYWRlci1leHBlY3Rl
ZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9zZWN1cml0eS9jb250ZW50U2VjdXJp
dHlQb2xpY3kvcmVwb3J0LW9ubHktZnJvbS1oZWFkZXItZXhwZWN0ZWQudHh0CkBAIC0xLDQgKzEs
NCBAQAotQ09OU09MRSBNRVNTQUdFOiBbUmVwb3J0IE9ubHldIFJlZnVzZWQgdG8gZXhlY3V0ZSBp
bmxpbmUgc2NyaXB0IGJlY2F1c2UgaXQgdmlvbGF0ZXMgdGhlIGZvbGxvd2luZyBDb250ZW50IFNl
Y3VyaXR5IFBvbGljeSBkaXJlY3RpdmU6ICJzY3JpcHQtc3JjICdzZWxmJyIuCitDT05TT0xFIE1F
U1NBR0U6IGxpbmUgMTogW1JlcG9ydCBPbmx5XSBSZWZ1c2VkIHRvIGV4ZWN1dGUgaW5saW5lIHNj
cmlwdCBiZWNhdXNlIGl0IHZpb2xhdGVzIHRoZSBmb2xsb3dpbmcgQ29udGVudCBTZWN1cml0eSBQ
b2xpY3kgZGlyZWN0aXZlOiAic2NyaXB0LXNyYyAnc2VsZiciLgogCiBBTEVSVDogUEFTUwogQ1NQ
IHJlcG9ydCByZWNlaXZlZDoKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvc2Vj
dXJpdHkvY29udGVudFNlY3VyaXR5UG9saWN5L3JlcG9ydC11cmktZXhwZWN0ZWQudHh0IGIvTGF5
b3V0VGVzdHMvaHR0cC90ZXN0cy9zZWN1cml0eS9jb250ZW50U2VjdXJpdHlQb2xpY3kvcmVwb3J0
LXVyaS1leHBlY3RlZC50eHQKaW5kZXggYjgwNTBmZjIwMzAxN2ZkZThhMmJjZWYwYzRkN2FkMTAw
MzQxNmJiZC4uNTZhNmVmNjIzMTVkMWVhZTVhYmQwZDllODAxNDM0Mzk4Y2FkODAwZiAxMDA2NDQK
LS0tIGEvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9zZWN1cml0eS9jb250ZW50U2VjdXJpdHlQb2xp
Y3kvcmVwb3J0LXVyaS1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9z
ZWN1cml0eS9jb250ZW50U2VjdXJpdHlQb2xpY3kvcmVwb3J0LXVyaS1leHBlY3RlZC50eHQKQEAg
LTEsNCArMSw0IEBACi1DT05TT0xFIE1FU1NBR0U6IFJlZnVzZWQgdG8gZXhlY3V0ZSBpbmxpbmUg
c2NyaXB0IGJlY2F1c2UgaXQgdmlvbGF0ZXMgdGhlIGZvbGxvd2luZyBDb250ZW50IFNlY3VyaXR5
IFBvbGljeSBkaXJlY3RpdmU6ICJzY3JpcHQtc3JjICdzZWxmJyIuCitDT05TT0xFIE1FU1NBR0U6
IGxpbmUgMjogUmVmdXNlZCB0byBleGVjdXRlIGlubGluZSBzY3JpcHQgYmVjYXVzZSBpdCB2aW9s
YXRlcyB0aGUgZm9sbG93aW5nIENvbnRlbnQgU2VjdXJpdHkgUG9saWN5IGRpcmVjdGl2ZTogInNj
cmlwdC1zcmMgJ3NlbGYnIi4KIAogQ1NQIHJlcG9ydCByZWNlaXZlZDoKIENPTlRFTlRfVFlQRTog
YXBwbGljYXRpb24vanNvbgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9zZWN1
cml0eS9jb250ZW50U2VjdXJpdHlQb2xpY3kvcmVwb3J0LXVyaS1mcm9tLWNoaWxkLWZyYW1lLWV4
cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvc2VjdXJpdHkvY29udGVudFNlY3Vy
aXR5UG9saWN5L3JlcG9ydC11cmktZnJvbS1jaGlsZC1mcmFtZS1leHBlY3RlZC50eHQKaW5kZXgg
MjVkZThlMTk3NTRhMjlhYzlmY2UyMDQ5NjM0ZDdhZjJmZDE1NzlmNy4uODQzMGMzMDk4MTViYjEy
NGI3MGI2Mzg3MGU0NWM1Y2IwYzRjNDBjMiAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaHR0cC90
ZXN0cy9zZWN1cml0eS9jb250ZW50U2VjdXJpdHlQb2xpY3kvcmVwb3J0LXVyaS1mcm9tLWNoaWxk
LWZyYW1lLWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3NlY3VyaXR5
L2NvbnRlbnRTZWN1cml0eVBvbGljeS9yZXBvcnQtdXJpLWZyb20tY2hpbGQtZnJhbWUtZXhwZWN0
ZWQudHh0CkBAIC0xLDQgKzEsNCBAQAotQ09OU09MRSBNRVNTQUdFOiBSZWZ1c2VkIHRvIGV4ZWN1
dGUgaW5saW5lIHNjcmlwdCBiZWNhdXNlIGl0IHZpb2xhdGVzIHRoZSBmb2xsb3dpbmcgQ29udGVu
dCBTZWN1cml0eSBQb2xpY3kgZGlyZWN0aXZlOiAic2NyaXB0LXNyYyAnc2VsZiciLgorQ09OU09M
RSBNRVNTQUdFOiBsaW5lIDI6IFJlZnVzZWQgdG8gZXhlY3V0ZSBpbmxpbmUgc2NyaXB0IGJlY2F1
c2UgaXQgdmlvbGF0ZXMgdGhlIGZvbGxvd2luZyBDb250ZW50IFNlY3VyaXR5IFBvbGljeSBkaXJl
Y3RpdmU6ICJzY3JpcHQtc3JjICdzZWxmJyIuCiAKIAogCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0
cy9odHRwL3Rlc3RzL3NlY3VyaXR5L2NvbnRlbnRTZWN1cml0eVBvbGljeS9zY3JpcHQtc3JjLW5v
bmUtaW5saW5lLWV2ZW50LWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvc2Vj
dXJpdHkvY29udGVudFNlY3VyaXR5UG9saWN5L3NjcmlwdC1zcmMtbm9uZS1pbmxpbmUtZXZlbnQt
ZXhwZWN0ZWQudHh0CmluZGV4IGQzMWIxY2VmYzBiZjdmODI4OGE5MzE3NjFkODAyMTI5ZTYyOTUw
MmYuLmZlMWNjMmZjNmRlMDkyYTgxZGQ0NTgzZTUwZDA3MzQ2NjMwODMzMjMgMTAwNjQ0Ci0tLSBh
L0xheW91dFRlc3RzL2h0dHAvdGVzdHMvc2VjdXJpdHkvY29udGVudFNlY3VyaXR5UG9saWN5L3Nj
cmlwdC1zcmMtbm9uZS1pbmxpbmUtZXZlbnQtZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3Rz
L2h0dHAvdGVzdHMvc2VjdXJpdHkvY29udGVudFNlY3VyaXR5UG9saWN5L3NjcmlwdC1zcmMtbm9u
ZS1pbmxpbmUtZXZlbnQtZXhwZWN0ZWQudHh0CkBAIC0xLDQgKzEsNCBAQAotQ09OU09MRSBNRVNT
QUdFOiBSZWZ1c2VkIHRvIGV4ZWN1dGUgaW5saW5lIGV2ZW50IGhhbmRsZXIgYmVjYXVzZSBpdCB2
aW9sYXRlcyB0aGUgZm9sbG93aW5nIENvbnRlbnQgU2VjdXJpdHkgUG9saWN5IGRpcmVjdGl2ZTog
InNjcmlwdC1zcmMgJ25vbmUnIi4KK0NPTlNPTEUgTUVTU0FHRTogbGluZSAzOiBSZWZ1c2VkIHRv
IGV4ZWN1dGUgaW5saW5lIGV2ZW50IGhhbmRsZXIgYmVjYXVzZSBpdCB2aW9sYXRlcyB0aGUgZm9s
bG93aW5nIENvbnRlbnQgU2VjdXJpdHkgUG9saWN5IGRpcmVjdGl2ZTogInNjcmlwdC1zcmMgJ25v
bmUnIi4KIAogICAKIApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9zZWN1cml0
eS9jb250ZW50U2VjdXJpdHlQb2xpY3kvc3JjZG9jLWRvZXNudC1ieXBhc3Mtc2NyaXB0LXNyYy1l
eHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3NlY3VyaXR5L2NvbnRlbnRTZWN1
cml0eVBvbGljeS9zcmNkb2MtZG9lc250LWJ5cGFzcy1zY3JpcHQtc3JjLWV4cGVjdGVkLnR4dApp
bmRleCA3YTVmZGUzNzBlYTZlMDRjNmQ2ZTQ5NDBlOGQ3YWRiMDAwYjYzMTY5Li4xYTI5NDc5ZDJj
MmQ0YmMxNTJmNTI3ZjNjMzMwMzNhMTE4OTZlMWMxIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9o
dHRwL3Rlc3RzL3NlY3VyaXR5L2NvbnRlbnRTZWN1cml0eVBvbGljeS9zcmNkb2MtZG9lc250LWJ5
cGFzcy1zY3JpcHQtc3JjLWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9odHRwL3Rlc3Rz
L3NlY3VyaXR5L2NvbnRlbnRTZWN1cml0eVBvbGljeS9zcmNkb2MtZG9lc250LWJ5cGFzcy1zY3Jp
cHQtc3JjLWV4cGVjdGVkLnR4dApAQCAtMSwzICsxLDMgQEAKLUNPTlNPTEUgTUVTU0FHRTogUmVm
dXNlZCB0byBleGVjdXRlIGlubGluZSBzY3JpcHQgYmVjYXVzZSBpdCB2aW9sYXRlcyB0aGUgZm9s
bG93aW5nIENvbnRlbnQgU2VjdXJpdHkgUG9saWN5IGRpcmVjdGl2ZTogInNjcmlwdC1zcmMgJ3Nl
bGYnIi4KK0NPTlNPTEUgTUVTU0FHRTogbGluZSAxOiBSZWZ1c2VkIHRvIGV4ZWN1dGUgaW5saW5l
IHNjcmlwdCBiZWNhdXNlIGl0IHZpb2xhdGVzIHRoZSBmb2xsb3dpbmcgQ29udGVudCBTZWN1cml0
eSBQb2xpY3kgZGlyZWN0aXZlOiAic2NyaXB0LXNyYyAnc2VsZiciLgogCiBUaGlzIHRlc3QgcGFz
c2VzIGlmIGl0IGRvZXNuJ3QgYWxlcnQgZmFpbC4gCg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>142719</attachid>
            <date>2012-05-18 07:45:03 -0700</date>
            <delta_ts>2012-05-18 14:32:03 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-86848-20120518164500.patch</filename>
            <type>text/plain</type>
            <size>42322</size>
            <attacher name="Mike West">mkwst</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTE3NTUzCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggZDk0ZjFlNTFmMzQ4ZDA0
Mjg4MWZhNGE3MTVlMjA5M2JjNjY2ZDRmMC4uYmQ1MWRhNGE5NWRiNDdjY2FiMDllZTRhZjNjM2U1
ODE5NzIwMGIzMiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDUyIEBACisyMDEyLTA1LTE4ICBNaWtl
IFdlc3QgIDxta3dzdEBjaHJvbWl1bS5vcmc+CisKKyAgICAgICAgSW5saW5lIHNjcmlwdCBhbmQg
c3R5bGUgYmxvY2tlZCBieSBDb250ZW50IFNlY3VyaXR5IFBvbGljeSBzaG91bGQgcHJvdmlkZSBt
b3JlIGRldGFpbGVkIGNvbnNvbGUgZXJyb3JzLgorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0
Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9ODY4NDgKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkg
KE9PUFMhKS4KKworICAgICAgICBUaGlzIGNoYW5nZSBhZGRzIGEgVVJMIGFuZCBsaW5lIG51bWJl
ciBmb3IgY29udGV4dCB0byBlYWNoIGNhbGwgdG8KKyAgICAgICAgYENvbnRlbnRTZWN1cml0eVBv
bGljeTo6YWxsb3dJbmxpbmUqYCwgYW5kIHBpcGVzIGl0IHRocm91Z2ggdG8gdGhlCisgICAgICAg
IGNvbnNvbGUgbWVzc2FnZSBnZW5lcmF0aW9uIGluIGBDU1BEaXJlY3RpdmVMaXN0OjpyZXBvcnRW
aW9sYXRpb25gLgorCisgICAgICAgICogYmluZGluZ3MvU2NyaXB0Q29udHJvbGxlckJhc2UuY3Bw
OgorICAgICAgICAoV2ViQ29yZTo6U2NyaXB0Q29udHJvbGxlcjo6ZXhlY3V0ZUlmSmF2YVNjcmlw
dFVSTCk6CisgICAgICAgICogYmluZGluZ3MvanMvSlNMYXp5RXZlbnRMaXN0ZW5lci5jcHA6Cisg
ICAgICAgIChXZWJDb3JlOjpKU0xhenlFdmVudExpc3RlbmVyOjppbml0aWFsaXplSlNGdW5jdGlv
bik6CisgICAgICAgICogYmluZGluZ3MvdjgvVjhMYXp5RXZlbnRMaXN0ZW5lci5jcHA6CisgICAg
ICAgIChXZWJDb3JlOjpWOExhenlFdmVudExpc3RlbmVyOjpwcmVwYXJlTGlzdGVuZXJPYmplY3Qp
OgorICAgICAgICAqIGRvbS9TY3JpcHRFbGVtZW50LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlNj
cmlwdEVsZW1lbnQ6OlNjcmlwdEVsZW1lbnQpOgorICAgICAgICAoV2ViQ29yZTo6U2NyaXB0RWxl
bWVudDo6ZXhlY3V0ZVNjcmlwdCk6CisgICAgICAgICogZG9tL1NjcmlwdEVsZW1lbnQuaDoKKyAg
ICAgICAgKFNjcmlwdEVsZW1lbnQpOgorICAgICAgICAqIGRvbS9TdHlsZUVsZW1lbnQuY3BwOgor
ICAgICAgICAoV2ViQ29yZTo6U3R5bGVFbGVtZW50OjpjcmVhdGVTaGVldCk6CisgICAgICAgICog
ZG9tL1N0eWxlZEVsZW1lbnQuY3BwOgorICAgICAgICAoV2ViQ29yZTo6U3R5bGVkRWxlbWVudDo6
U3R5bGVkRWxlbWVudCk6CisgICAgICAgIChXZWJDb3JlKToKKyAgICAgICAgKFdlYkNvcmU6OlN0
eWxlZEVsZW1lbnQ6OnN0eWxlKToKKyAgICAgICAgKFdlYkNvcmU6OlN0eWxlZEVsZW1lbnQ6OnN0
eWxlQXR0cmlidXRlQ2hhbmdlZCk6CisgICAgICAgICogZG9tL1N0eWxlZEVsZW1lbnQuaDoKKyAg
ICAgICAgKFN0eWxlZEVsZW1lbnQpOgorICAgICAgICAqIHBhZ2UvQ29udGVudFNlY3VyaXR5UG9s
aWN5LmNwcDoKKyAgICAgICAgKENTUERpcmVjdGl2ZUxpc3QpOgorICAgICAgICAoV2ViQ29yZTo6
Q1NQRGlyZWN0aXZlTGlzdDo6cmVwb3J0VmlvbGF0aW9uKToKKyAgICAgICAgKFdlYkNvcmU6OkNT
UERpcmVjdGl2ZUxpc3Q6OmNoZWNrSW5saW5lQW5kUmVwb3J0VmlvbGF0aW9uKToKKyAgICAgICAg
KFdlYkNvcmU6OkNTUERpcmVjdGl2ZUxpc3Q6OmNoZWNrRXZhbEFuZFJlcG9ydFZpb2xhdGlvbik6
CisgICAgICAgIChXZWJDb3JlOjpDU1BEaXJlY3RpdmVMaXN0OjphbGxvd0phdmFTY3JpcHRVUkxz
KToKKyAgICAgICAgKFdlYkNvcmU6OkNTUERpcmVjdGl2ZUxpc3Q6OmFsbG93SW5saW5lRXZlbnRI
YW5kbGVycyk6CisgICAgICAgIChXZWJDb3JlOjpDU1BEaXJlY3RpdmVMaXN0OjphbGxvd0lubGlu
ZVNjcmlwdCk6CisgICAgICAgIChXZWJDb3JlOjpDU1BEaXJlY3RpdmVMaXN0OjphbGxvd0lubGlu
ZVN0eWxlKToKKyAgICAgICAgKFdlYkNvcmU6OkNTUERpcmVjdGl2ZUxpc3Q6OmFsbG93RXZhbCk6
CisgICAgICAgIChXZWJDb3JlKToKKyAgICAgICAgKFdlYkNvcmU6OmlzQWxsb3dlZEJ5QWxsKToK
KyAgICAgICAgKFdlYkNvcmU6OkNvbnRlbnRTZWN1cml0eVBvbGljeTo6YWxsb3dKYXZhU2NyaXB0
VVJMcyk6CisgICAgICAgIChXZWJDb3JlOjpDb250ZW50U2VjdXJpdHlQb2xpY3k6OmFsbG93SW5s
aW5lRXZlbnRIYW5kbGVycyk6CisgICAgICAgIChXZWJDb3JlOjpDb250ZW50U2VjdXJpdHlQb2xp
Y3k6OmFsbG93SW5saW5lU2NyaXB0KToKKyAgICAgICAgKFdlYkNvcmU6OkNvbnRlbnRTZWN1cml0
eVBvbGljeTo6YWxsb3dJbmxpbmVTdHlsZSk6CisgICAgICAgICogcGFnZS9Db250ZW50U2VjdXJp
dHlQb2xpY3kuaDoKKwogMjAxMi0wNS0xNyAgQ2FybG9zIEdhcmNpYSBDYW1wb3MgIDxjZ2FyY2lh
QGlnYWxpYS5jb20+CiAKICAgICAgICAgW0dUS10gS1VSTDo6ZmlsZVN5c3RlbVBhdGgoKSBzaG91
bGQgc3RyaXAgdGhlIHF1ZXJ5IG9mIHRoZSB1cmkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3Jl
L2JpbmRpbmdzL1NjcmlwdENvbnRyb2xsZXJCYXNlLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2JpbmRp
bmdzL1NjcmlwdENvbnRyb2xsZXJCYXNlLmNwcAppbmRleCA4NTUxNThhZmMzZWY3OTAyZjJlNjJl
ZTllOTZmMTVkMjg5Yzc5MGMyLi5mMjE4Y2JlMGUyZThiZmUzNmFhZTI2ZWIzYjZhMTg2M2FiZDYz
YzQyIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9TY3JpcHRDb250cm9sbGVy
QmFzZS5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvU2NyaXB0Q29udHJvbGxlckJh
c2UuY3BwCkBAIC03NSw3ICs3NSw3IEBAIGJvb2wgU2NyaXB0Q29udHJvbGxlcjo6ZXhlY3V0ZUlm
SmF2YVNjcmlwdFVSTChjb25zdCBLVVJMJiB1cmwsIFNob3VsZFJlcGxhY2VEb2N1CiAKICAgICBp
ZiAoIW1fZnJhbWUtPnBhZ2UoKQogICAgICAgICB8fCAhbV9mcmFtZS0+cGFnZSgpLT5qYXZhU2Ny
aXB0VVJMc0FyZUFsbG93ZWQoKQotICAgICAgICB8fCAhbV9mcmFtZS0+ZG9jdW1lbnQoKS0+Y29u
dGVudFNlY3VyaXR5UG9saWN5KCktPmFsbG93SmF2YVNjcmlwdFVSTHMoKQorICAgICAgICB8fCAh
bV9mcmFtZS0+ZG9jdW1lbnQoKS0+Y29udGVudFNlY3VyaXR5UG9saWN5KCktPmFsbG93SmF2YVNj
cmlwdFVSTHMobV9mcmFtZS0+ZG9jdW1lbnQoKS0+dXJsKCksIGV2ZW50SGFuZGxlclBvc2l0aW9u
KCkubV9saW5lLm9uZUJhc2VkSW50KCkpCiAgICAgICAgIHx8IG1fZnJhbWUtPmluVmlld1NvdXJj
ZU1vZGUoKSkKICAgICAgICAgcmV0dXJuIHRydWU7CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJD
b3JlL2JpbmRpbmdzL2pzL0pTTGF6eUV2ZW50TGlzdGVuZXIuY3BwIGIvU291cmNlL1dlYkNvcmUv
YmluZGluZ3MvanMvSlNMYXp5RXZlbnRMaXN0ZW5lci5jcHAKaW5kZXggZjExYmY5MDBjMWQwZDUw
ZDFjN2FjNWM4YmZjNGJiM2QwNDFkYWFhMS4uMTJjNThjOWQxYWZlZDA1M2FmODI1YTY1ZTc5MTM0
YTBlNzYwNjZmMyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvSlNMYXp5
RXZlbnRMaXN0ZW5lci5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvSlNMYXp5
RXZlbnRMaXN0ZW5lci5jcHAKQEAgLTgwLDEwICs4MCwxMCBAQCBKU09iamVjdCogSlNMYXp5RXZl
bnRMaXN0ZW5lcjo6aW5pdGlhbGl6ZUpTRnVuY3Rpb24oU2NyaXB0RXhlY3V0aW9uQ29udGV4dCog
ZXhlYwogICAgIGlmICghZG9jdW1lbnQtPmZyYW1lKCkpCiAgICAgICAgIHJldHVybiAwOwogCi0g
ICAgaWYgKCFkb2N1bWVudC0+Y29udGVudFNlY3VyaXR5UG9saWN5KCktPmFsbG93SW5saW5lRXZl
bnRIYW5kbGVycygpKQorICAgIFNjcmlwdENvbnRyb2xsZXIqIHNjcmlwdCA9IGRvY3VtZW50LT5m
cmFtZSgpLT5zY3JpcHQoKTsKKyAgICBpZiAoIWRvY3VtZW50LT5jb250ZW50U2VjdXJpdHlQb2xp
Y3koKS0+YWxsb3dJbmxpbmVFdmVudEhhbmRsZXJzKG1fc291cmNlVVJMLCBtX3Bvc2l0aW9uLm1f
bGluZS5vbmVCYXNlZEludCgpKSkKICAgICAgICAgcmV0dXJuIDA7CiAKLSAgICBTY3JpcHRDb250
cm9sbGVyKiBzY3JpcHQgPSBkb2N1bWVudC0+ZnJhbWUoKS0+c2NyaXB0KCk7CiAgICAgaWYgKCFz
Y3JpcHQtPmNhbkV4ZWN1dGVTY3JpcHRzKEFib3V0VG9FeGVjdXRlU2NyaXB0KSB8fCBzY3JpcHQt
PmlzUGF1c2VkKCkpCiAgICAgICAgIHJldHVybiAwOwogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
Q29yZS9iaW5kaW5ncy92OC9WOExhenlFdmVudExpc3RlbmVyLmNwcCBiL1NvdXJjZS9XZWJDb3Jl
L2JpbmRpbmdzL3Y4L1Y4TGF6eUV2ZW50TGlzdGVuZXIuY3BwCmluZGV4IDg0MGRlN2ZkMmI0N2Ex
M2U3MTE1Nzk2Yzk1M2Y2NGQ3MGUwN2ZhOTcuLjcwYzJmZjYzMjk3MjdkODBjZjI1ZDZmMGI3MTNh
MmVkODk3NTAyZTUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3Y4L1Y4TGF6
eUV2ZW50TGlzdGVuZXIuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3Y4L1Y4TGF6
eUV2ZW50TGlzdGVuZXIuY3BwCkBAIC0xMDUsNyArMTA1LDcgQEAgdm9pZCBWOExhenlFdmVudExp
c3RlbmVyOjpwcmVwYXJlTGlzdGVuZXJPYmplY3QoU2NyaXB0RXhlY3V0aW9uQ29udGV4dCogY29u
dGV4dCkKICAgICBpZiAoaGFzRXhpc3RpbmdMaXN0ZW5lck9iamVjdCgpKQogICAgICAgICByZXR1
cm47CiAKLSAgICBpZiAoY29udGV4dC0+aXNEb2N1bWVudCgpICYmICFzdGF0aWNfY2FzdDxEb2N1
bWVudCo+KGNvbnRleHQpLT5jb250ZW50U2VjdXJpdHlQb2xpY3koKS0+YWxsb3dJbmxpbmVFdmVu
dEhhbmRsZXJzKCkpCisgICAgaWYgKGNvbnRleHQtPmlzRG9jdW1lbnQoKSAmJiAhc3RhdGljX2Nh
c3Q8RG9jdW1lbnQqPihjb250ZXh0KS0+Y29udGVudFNlY3VyaXR5UG9saWN5KCktPmFsbG93SW5s
aW5lRXZlbnRIYW5kbGVycyhtX3NvdXJjZVVSTCwgbV9wb3NpdGlvbi5tX2xpbmUub25lQmFzZWRJ
bnQoKSkpCiAgICAgICAgIHJldHVybjsKIAogICAgIHY4OjpIYW5kbGVTY29wZSBoYW5kbGVTY29w
ZTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2RvbS9TY3JpcHRFbGVtZW50LmNwcCBiL1Nv
dXJjZS9XZWJDb3JlL2RvbS9TY3JpcHRFbGVtZW50LmNwcAppbmRleCBiZGMxZmNkZmNmMTIzZGM1
NTEwMzg5ZDMzYzcyNGEyOTY5Yjc4NzNlLi4zNmIyOTNiM2NmNzE0NGNlYzBhNDE0ZTJkMTlhNzFk
Y2JlODEzOTIwIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9kb20vU2NyaXB0RWxlbWVudC5j
cHAKKysrIGIvU291cmNlL1dlYkNvcmUvZG9tL1NjcmlwdEVsZW1lbnQuY3BwCkBAIC00MSw2ICs0
MSw3IEBACiAjaW5jbHVkZSAiU2NyaXB0UnVubmVyLmgiCiAjaW5jbHVkZSAiU2NyaXB0U291cmNl
Q29kZS5oIgogI2luY2x1ZGUgIlNjcmlwdFZhbHVlLmgiCisjaW5jbHVkZSAiU2NyaXB0YWJsZURv
Y3VtZW50UGFyc2VyLmgiCiAjaW5jbHVkZSAiU2VjdXJpdHlPcmlnaW4uaCIKICNpbmNsdWRlICJT
ZXR0aW5ncy5oIgogI2luY2x1ZGUgIlRleHQuaCIKQEAgLTU4LDYgKzU5LDcgQEAgbmFtZXNwYWNl
IFdlYkNvcmUgewogU2NyaXB0RWxlbWVudDo6U2NyaXB0RWxlbWVudChFbGVtZW50KiBlbGVtZW50
LCBib29sIHBhcnNlckluc2VydGVkLCBib29sIGFscmVhZHlTdGFydGVkKQogICAgIDogbV9lbGVt
ZW50KGVsZW1lbnQpCiAgICAgLCBtX2NhY2hlZFNjcmlwdCgwKQorICAgICwgbV9zdGFydExpbmVO
dW1iZXIoMCkKICAgICAsIG1fcGFyc2VySW5zZXJ0ZWQocGFyc2VySW5zZXJ0ZWQpCiAgICAgLCBt
X2lzRXh0ZXJuYWxTY3JpcHQoZmFsc2UpCiAgICAgLCBtX2FscmVhZHlTdGFydGVkKGFscmVhZHlT
dGFydGVkKQpAQCAtNzAsNiArNzIsOCBAQCBTY3JpcHRFbGVtZW50OjpTY3JpcHRFbGVtZW50KEVs
ZW1lbnQqIGVsZW1lbnQsIGJvb2wgcGFyc2VySW5zZXJ0ZWQsIGJvb2wgYWxyZWFkeQogICAgICwg
bV9yZXF1ZXN0VXNlc0FjY2Vzc0NvbnRyb2woZmFsc2UpCiB7CiAgICAgQVNTRVJUKG1fZWxlbWVu
dCk7CisgICAgaWYgKG1fZWxlbWVudC0+ZG9jdW1lbnQoKSAmJiBtX2VsZW1lbnQtPmRvY3VtZW50
KCktPnNjcmlwdGFibGVEb2N1bWVudFBhcnNlcigpKQorICAgICAgICBtX3N0YXJ0TGluZU51bWJl
ciA9IG1fZWxlbWVudC0+ZG9jdW1lbnQoKS0+c2NyaXB0YWJsZURvY3VtZW50UGFyc2VyKCktPmxp
bmVOdW1iZXIoKS5vbmVCYXNlZEludCgpOwogfQogCiBTY3JpcHRFbGVtZW50Ojp+U2NyaXB0RWxl
bWVudCgpCkBAIC0yNzYsNyArMjgwLDcgQEAgdm9pZCBTY3JpcHRFbGVtZW50OjpleGVjdXRlU2Ny
aXB0KGNvbnN0IFNjcmlwdFNvdXJjZUNvZGUmIHNvdXJjZUNvZGUpCiAgICAgaWYgKHNvdXJjZUNv
ZGUuaXNFbXB0eSgpKQogICAgICAgICByZXR1cm47CiAKLSAgICBpZiAoIW1faXNFeHRlcm5hbFNj
cmlwdCAmJiAhbV9lbGVtZW50LT5kb2N1bWVudCgpLT5jb250ZW50U2VjdXJpdHlQb2xpY3koKS0+
YWxsb3dJbmxpbmVTY3JpcHQoKSkKKyAgICBpZiAoIW1faXNFeHRlcm5hbFNjcmlwdCAmJiAhbV9l
bGVtZW50LT5kb2N1bWVudCgpLT5jb250ZW50U2VjdXJpdHlQb2xpY3koKS0+YWxsb3dJbmxpbmVT
Y3JpcHQobV9lbGVtZW50LT5kb2N1bWVudCgpLT51cmwoKSwgbV9zdGFydExpbmVOdW1iZXIpKQog
ICAgICAgICByZXR1cm47CiAKICAgICBSZWZQdHI8RG9jdW1lbnQ+IGRvY3VtZW50ID0gbV9lbGVt
ZW50LT5kb2N1bWVudCgpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvZG9tL1NjcmlwdEVs
ZW1lbnQuaCBiL1NvdXJjZS9XZWJDb3JlL2RvbS9TY3JpcHRFbGVtZW50LmgKaW5kZXggNmMwODI1
OGU2NTY1ZDA4NGQyYjY0NDljYjJlMjUzOGMxYWI4OTgzYS4uMzFjZTg4Y2EzNmQ5NTM5MDE4MDVh
MGE5MGQ5ZTE5ZWVjMjAxNzBmOSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvZG9tL1Njcmlw
dEVsZW1lbnQuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9kb20vU2NyaXB0RWxlbWVudC5oCkBAIC05
Myw2ICs5Myw3IEBAIHByaXZhdGU6CiAKICAgICBFbGVtZW50KiBtX2VsZW1lbnQ7CiAgICAgQ2Fj
aGVkUmVzb3VyY2VIYW5kbGU8Q2FjaGVkU2NyaXB0PiBtX2NhY2hlZFNjcmlwdDsKKyAgICBpbnQg
bV9zdGFydExpbmVOdW1iZXI7CiAgICAgYm9vbCBtX3BhcnNlckluc2VydGVkIDogMTsKICAgICBi
b29sIG1faXNFeHRlcm5hbFNjcmlwdCA6IDE7CiAgICAgYm9vbCBtX2FscmVhZHlTdGFydGVkIDog
MTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2RvbS9TdHlsZUVsZW1lbnQuY3BwIGIvU291
cmNlL1dlYkNvcmUvZG9tL1N0eWxlRWxlbWVudC5jcHAKaW5kZXggNWFmOWZjOGU0Y2RjYzZmYjJm
MWRlMjQwMDFhYzk1ZjY3ZjA4ZWI1ZC4uYzNkNjlmZjdkNTkzZjQ1MTBhYTRjZDE5MzQyNGE1NmE3
NDc2YjY1MiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvZG9tL1N0eWxlRWxlbWVudC5jcHAK
KysrIGIvU291cmNlL1dlYkNvcmUvZG9tL1N0eWxlRWxlbWVudC5jcHAKQEAgLTE1Niw3ICsxNTYs
NyBAQCB2b2lkIFN0eWxlRWxlbWVudDo6Y3JlYXRlU2hlZXQoRWxlbWVudCogZSwgaW50IHN0YXJ0
TGluZU51bWJlciwgY29uc3QgU3RyaW5nJiB0ZQogCiAgICAgLy8gSWYgdHlwZSBpcyBlbXB0eSBv
ciBDU1MsIHRoaXMgaXMgYSBDU1Mgc3R5bGUgc2hlZXQuCiAgICAgY29uc3QgQXRvbWljU3RyaW5n
JiB0eXBlID0gdGhpcy0+dHlwZSgpOwotICAgIGlmIChkb2N1bWVudC0+Y29udGVudFNlY3VyaXR5
UG9saWN5KCktPmFsbG93SW5saW5lU3R5bGUoKSAmJiBpc0NTUyhlLCB0eXBlKSkgeworICAgIGlm
IChkb2N1bWVudC0+Y29udGVudFNlY3VyaXR5UG9saWN5KCktPmFsbG93SW5saW5lU3R5bGUoZS0+
ZG9jdW1lbnQoKS0+dXJsKCksIHN0YXJ0TGluZU51bWJlcikgJiYgaXNDU1MoZSwgdHlwZSkpIHsK
ICAgICAgICAgUmVmUHRyPE1lZGlhUXVlcnlTZXQ+IG1lZGlhUXVlcmllczsKICAgICAgICAgaWYg
KGUtPmlzSFRNTEVsZW1lbnQoKSkKICAgICAgICAgICAgIG1lZGlhUXVlcmllcyA9IE1lZGlhUXVl
cnlTZXQ6OmNyZWF0ZUFsbG93aW5nRGVzY3JpcHRpb25TeW50YXgobWVkaWEoKSk7CkBAIC0xNzIs
NyArMTcyLDcgQEAgdm9pZCBTdHlsZUVsZW1lbnQ6OmNyZWF0ZVNoZWV0KEVsZW1lbnQqIGUsIGlu
dCBzdGFydExpbmVOdW1iZXIsIGNvbnN0IFN0cmluZyYgdGUKICAgICAgICAgICAgIG1fc2hlZXQg
PSBDU1NTdHlsZVNoZWV0OjpjcmVhdGVJbmxpbmUoZSwgS1VSTCgpLCBkb2N1bWVudC0+aW5wdXRF
bmNvZGluZygpKTsKICAgICAgICAgICAgIG1fc2hlZXQtPnNldE1lZGlhUXVlcmllcyhtZWRpYVF1
ZXJpZXMucmVsZWFzZSgpKTsKICAgICAgICAgICAgIG1fc2hlZXQtPnNldFRpdGxlKGUtPnRpdGxl
KCkpOwotICAgIAorCiAgICAgICAgICAgICBtX3NoZWV0LT5pbnRlcm5hbCgpLT5wYXJzZVN0cmlu
Z0F0TGluZSh0ZXh0LCBzdGFydExpbmVOdW1iZXIpOwogCiAgICAgICAgICAgICBtX2xvYWRpbmcg
PSBmYWxzZTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2RvbS9TdHlsZWRFbGVtZW50LmNw
cCBiL1NvdXJjZS9XZWJDb3JlL2RvbS9TdHlsZWRFbGVtZW50LmNwcAppbmRleCBkNTViMDA5OTM0
NWZlOTFlMDc1NTY1NmVmNzc3MDNhNWIyZTA5YmIwLi5kZjlhNmI4ZDI2MGZiM2IwZWI5OTQ5NDcz
Y2FjMWQ1OTk4MjE5MTE2IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9kb20vU3R5bGVkRWxl
bWVudC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvZG9tL1N0eWxlZEVsZW1lbnQuY3BwCkBAIC0z
Nyw2ICszNyw3IEBACiAjaW5jbHVkZSAiRG9jdW1lbnQuaCIKICNpbmNsdWRlICJIVE1MTmFtZXMu
aCIKICNpbmNsdWRlICJIVE1MUGFyc2VySWRpb21zLmgiCisjaW5jbHVkZSAiU2NyaXB0YWJsZURv
Y3VtZW50UGFyc2VyLmgiCiAjaW5jbHVkZSAiU3R5bGVQcm9wZXJ0eVNldC5oIgogI2luY2x1ZGUg
IlN0eWxlUmVzb2x2ZXIuaCIKICNpbmNsdWRlIDx3dGYvSGFzaEZ1bmN0aW9ucy5oPgpAQCAtMTI2
LDEzICsxMjcsMjEgQEAgdm9pZCBTdHlsZWRFbGVtZW50Ojp1cGRhdGVTdHlsZUF0dHJpYnV0ZSgp
IGNvbnN0CiAgICAgICAgIGNvbnN0X2Nhc3Q8U3R5bGVkRWxlbWVudCo+KHRoaXMpLT5zZXRBdHRy
aWJ1dGUoc3R5bGVBdHRyLCBpbmxpbmVTdHlsZS0+YXNUZXh0KCksIEluVXBkYXRlU3R5bGVBdHRy
aWJ1dGUpOwogfQogCitTdHlsZWRFbGVtZW50OjpTdHlsZWRFbGVtZW50KGNvbnN0IFF1YWxpZmll
ZE5hbWUmIG5hbWUsIERvY3VtZW50KiBkb2N1bWVudCwgQ29uc3RydWN0aW9uVHlwZSB0eXBlKQor
ICAgIDogRWxlbWVudChuYW1lLCBkb2N1bWVudCwgdHlwZSkKKyAgICAsIG1fc3RhcnRMaW5lTnVt
YmVyKDApCit7CisgICAgaWYgKGRvY3VtZW50ICYmIGRvY3VtZW50LT5zY3JpcHRhYmxlRG9jdW1l
bnRQYXJzZXIoKSkKKyAgICAgICAgbV9zdGFydExpbmVOdW1iZXIgPSBkb2N1bWVudC0+c2NyaXB0
YWJsZURvY3VtZW50UGFyc2VyKCktPmxpbmVOdW1iZXIoKS5vbmVCYXNlZEludCgpOworfQorCiBT
dHlsZWRFbGVtZW50Ojp+U3R5bGVkRWxlbWVudCgpCiB7CiAgICAgZGVzdHJveUlubGluZVN0eWxl
KCk7CiB9CiAKLUNTU1N0eWxlRGVjbGFyYXRpb24qIFN0eWxlZEVsZW1lbnQ6OnN0eWxlKCkgCi17
IAorQ1NTU3R5bGVEZWNsYXJhdGlvbiogU3R5bGVkRWxlbWVudDo6c3R5bGUoKQorewogICAgIHJl
dHVybiBlbnN1cmVBdHRyaWJ1dGVEYXRhKCktPmVuc3VyZU11dGFibGVJbmxpbmVTdHlsZSh0aGlz
KS0+ZW5zdXJlSW5saW5lQ1NTU3R5bGVEZWNsYXJhdGlvbih0aGlzKTsgCiB9CiAKQEAgLTE3Myw3
ICsxODIsNyBAQCB2b2lkIFN0eWxlZEVsZW1lbnQ6OnN0eWxlQXR0cmlidXRlQ2hhbmdlZChjb25z
dCBBdG9taWNTdHJpbmcmIG5ld1N0eWxlU3RyaW5nLCBTaAogICAgIGlmIChzaG91bGRSZXBhcnNl
KSB7CiAgICAgICAgIGlmIChuZXdTdHlsZVN0cmluZy5pc051bGwoKSkKICAgICAgICAgICAgIGRl
c3Ryb3lJbmxpbmVTdHlsZSgpOwotICAgICAgICBlbHNlIGlmIChkb2N1bWVudCgpLT5jb250ZW50
U2VjdXJpdHlQb2xpY3koKS0+YWxsb3dJbmxpbmVTdHlsZSgpKQorICAgICAgICBlbHNlIGlmIChk
b2N1bWVudCgpLT5jb250ZW50U2VjdXJpdHlQb2xpY3koKS0+YWxsb3dJbmxpbmVTdHlsZShkb2N1
bWVudCgpLT51cmwoKSwgbV9zdGFydExpbmVOdW1iZXIpKQogICAgICAgICAgICAgZW5zdXJlQXR0
cmlidXRlRGF0YSgpLT51cGRhdGVJbmxpbmVTdHlsZUF2b2lkaW5nTXV0YXRpb24odGhpcywgbmV3
U3R5bGVTdHJpbmcpOwogICAgICAgICBzZXRJc1N0eWxlQXR0cmlidXRlVmFsaWQoKTsKICAgICB9
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9kb20vU3R5bGVkRWxlbWVudC5oIGIvU291cmNl
L1dlYkNvcmUvZG9tL1N0eWxlZEVsZW1lbnQuaAppbmRleCA2Y2Y0MTQ1ZjJhMTIxYTU0OGQ0ZTNh
ZGViOGNlODVmNjI3MDVkMDc4Li4wM2IxOTI0NzVhZjExYjAyYzEyZmI4N2Y0ZTVlMTZkNzhlMTAy
OTA5IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9kb20vU3R5bGVkRWxlbWVudC5oCisrKyBi
L1NvdXJjZS9XZWJDb3JlL2RvbS9TdHlsZWRFbGVtZW50LmgKQEAgLTYyLDEwICs2Miw3IEBAIHB1
YmxpYzoKICAgICB2b2lkIHN0eWxlQXR0cmlidXRlQ2hhbmdlZChjb25zdCBBdG9taWNTdHJpbmcm
IG5ld1N0eWxlU3RyaW5nLCBTaG91bGRSZXBhcnNlU3R5bGVBdHRyaWJ1dGUgPSBSZXBhcnNlU3R5
bGVBdHRyaWJ1dGUpOwogCiBwcm90ZWN0ZWQ6Ci0gICAgU3R5bGVkRWxlbWVudChjb25zdCBRdWFs
aWZpZWROYW1lJiBuYW1lLCBEb2N1bWVudCogZG9jdW1lbnQsIENvbnN0cnVjdGlvblR5cGUgdHlw
ZSkKLSAgICAgICAgOiBFbGVtZW50KG5hbWUsIGRvY3VtZW50LCB0eXBlKQotICAgIHsKLSAgICB9
CisgICAgU3R5bGVkRWxlbWVudChjb25zdCBRdWFsaWZpZWROYW1lJiwgRG9jdW1lbnQqLCBDb25z
dHJ1Y3Rpb25UeXBlKTsKIAogICAgIHZpcnR1YWwgdm9pZCBhdHRyaWJ1dGVDaGFuZ2VkKGNvbnN0
IEF0dHJpYnV0ZSYpIE9WRVJSSURFOwogICAgIHZpcnR1YWwgdm9pZCBwYXJzZUF0dHJpYnV0ZShj
b25zdCBBdHRyaWJ1dGUmKTsKQEAgLTk1LDYgKzkyLDggQEAgcHJpdmF0ZToKICAgICAgICAgaWYg
KGF0dHJpYnV0ZURhdGEoKSkKICAgICAgICAgICAgIGF0dHJpYnV0ZURhdGEoKS0+ZGVzdHJveUlu
bGluZVN0eWxlKHRoaXMpOwogICAgIH0KKworICAgIGludCBtX3N0YXJ0TGluZU51bWJlcjsKIH07
CiAKIGlubGluZSBjb25zdCBTcGFjZVNwbGl0U3RyaW5nJiBTdHlsZWRFbGVtZW50OjpjbGFzc05h
bWVzKCkgY29uc3QKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BhZ2UvQ29udGVudFNlY3Vy
aXR5UG9saWN5LmNwcCBiL1NvdXJjZS9XZWJDb3JlL3BhZ2UvQ29udGVudFNlY3VyaXR5UG9saWN5
LmNwcAppbmRleCAwZTdjOTVhN2UyOWRhYjQzZjQwOWU2YTZjYjEyMmU1ZmVhYTEzZDhlLi45Mjlh
NjAyZjVjYWI3YWI0ODVkYzQ1N2U4ODU0ZDlkNTUwMGIzZWJlIDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V2ViQ29yZS9wYWdlL0NvbnRlbnRTZWN1cml0eVBvbGljeS5jcHAKKysrIGIvU291cmNlL1dlYkNv
cmUvcGFnZS9Db250ZW50U2VjdXJpdHlQb2xpY3kuY3BwCkBAIC0zMSw2ICszMSw3IEBACiAjaW5j
bHVkZSAiRm9ybURhdGEuaCIKICNpbmNsdWRlICJGb3JtRGF0YUxpc3QuaCIKICNpbmNsdWRlICJG
cmFtZS5oIgorI2luY2x1ZGUgIkluc3BlY3Rvckluc3RydW1lbnRhdGlvbi5oIgogI2luY2x1ZGUg
Ikluc3BlY3RvclZhbHVlcy5oIgogI2luY2x1ZGUgIlBpbmdMb2FkZXIuaCIKICNpbmNsdWRlICJT
Y3JpcHRDYWxsU3RhY2suaCIKQEAgLTQ5MCwxMCArNDkxLDEwIEBAIHB1YmxpYzoKICAgICBjb25z
dCBTdHJpbmcmIGhlYWRlcigpIGNvbnN0IHsgcmV0dXJuIG1faGVhZGVyOyB9CiAgICAgQ29udGVu
dFNlY3VyaXR5UG9saWN5OjpIZWFkZXJUeXBlIGhlYWRlclR5cGUoKSBjb25zdCB7IHJldHVybiBt
X3JlcG9ydE9ubHkgPyBDb250ZW50U2VjdXJpdHlQb2xpY3k6OlJlcG9ydE9ubHkgOiBDb250ZW50
U2VjdXJpdHlQb2xpY3k6OkVuZm9yY2VQb2xpY3k7IH0KIAotICAgIGJvb2wgYWxsb3dKYXZhU2Ny
aXB0VVJMcygpIGNvbnN0OwotICAgIGJvb2wgYWxsb3dJbmxpbmVFdmVudEhhbmRsZXJzKCkgY29u
c3Q7Ci0gICAgYm9vbCBhbGxvd0lubGluZVNjcmlwdCgpIGNvbnN0OwotICAgIGJvb2wgYWxsb3dJ
bmxpbmVTdHlsZSgpIGNvbnN0OworICAgIGJvb2wgYWxsb3dKYXZhU2NyaXB0VVJMcyhjb25zdCBT
dHJpbmcmIGNvbnRleHRVUkwsIGludCBjb250ZXh0TGluZU51bWJlcikgY29uc3Q7CisgICAgYm9v
bCBhbGxvd0lubGluZUV2ZW50SGFuZGxlcnMoY29uc3QgU3RyaW5nJiBjb250ZXh0VVJMLCBpbnQg
Y29udGV4dExpbmVOdW1iZXIpIGNvbnN0OworICAgIGJvb2wgYWxsb3dJbmxpbmVTY3JpcHQoY29u
c3QgU3RyaW5nJiBjb250ZXh0VVJMLCBpbnQgY29udGV4dExpbmVOdW1iZXIpIGNvbnN0OworICAg
IGJvb2wgYWxsb3dJbmxpbmVTdHlsZShjb25zdCBTdHJpbmcmIGNvbnRleHRVUkwsIGludCBjb250
ZXh0TGluZU51bWJlcikgY29uc3Q7CiAgICAgYm9vbCBhbGxvd0V2YWwoKSBjb25zdDsKIAogICAg
IGJvb2wgYWxsb3dTY3JpcHRGcm9tU291cmNlKGNvbnN0IEtVUkwmKSBjb25zdDsKQEAgLTUxOCwx
MiArNTE5LDEyIEBAIHByaXZhdGU6CiAgICAgUGFzc093blB0cjxDU1BEaXJlY3RpdmU+IGNyZWF0
ZUNTUERpcmVjdGl2ZShjb25zdCBTdHJpbmcmIG5hbWUsIGNvbnN0IFN0cmluZyYgdmFsdWUpOwog
CiAgICAgQ1NQRGlyZWN0aXZlKiBvcGVyYXRpdmVEaXJlY3RpdmUoQ1NQRGlyZWN0aXZlKikgY29u
c3Q7Ci0gICAgdm9pZCByZXBvcnRWaW9sYXRpb24oY29uc3QgU3RyaW5nJiBkaXJlY3RpdmVUZXh0
LCBjb25zdCBTdHJpbmcmIGNvbnNvbGVNZXNzYWdlLCBjb25zdCBLVVJMJiBibG9ja2VkVVJMID0g
S1VSTCgpKSBjb25zdDsKKyAgICB2b2lkIHJlcG9ydFZpb2xhdGlvbihjb25zdCBTdHJpbmcmIGRp
cmVjdGl2ZVRleHQsIGNvbnN0IFN0cmluZyYgY29uc29sZU1lc3NhZ2UsIGNvbnN0IEtVUkwmIGJs
b2NrZWRVUkwgPSBLVVJMKCksIGNvbnN0IFN0cmluZyYgY29udGV4dFVSTCA9IFN0cmluZygpLCBp
bnQgY29udGV4dExpbmVOdW1iZXIgPSAwKSBjb25zdDsKICAgICB2b2lkIGxvZ1VucmVjb2duaXpl
ZERpcmVjdGl2ZShjb25zdCBTdHJpbmcmIG5hbWUpIGNvbnN0OwogICAgIGJvb2wgY2hlY2tFdmFs
KENTUERpcmVjdGl2ZSopIGNvbnN0OwogCi0gICAgYm9vbCBjaGVja0lubGluZUFuZFJlcG9ydFZp
b2xhdGlvbihDU1BEaXJlY3RpdmUqLCBjb25zdCBTdHJpbmcmIGNvbnNvbGVNZXNzYWdlKSBjb25z
dDsKLSAgICBib29sIGNoZWNrRXZhbEFuZFJlcG9ydFZpb2xhdGlvbihDU1BEaXJlY3RpdmUqLCBj
b25zdCBTdHJpbmcmIGNvbnNvbGVNZXNzYWdlKSBjb25zdDsKKyAgICBib29sIGNoZWNrSW5saW5l
QW5kUmVwb3J0VmlvbGF0aW9uKENTUERpcmVjdGl2ZSosIGNvbnN0IFN0cmluZyYgY29uc29sZU1l
c3NhZ2UsIGNvbnN0IFN0cmluZyYgY29udGV4dFVSTCwgaW50IGNvbnRleHRMaW5lTnVtYmVyKSBj
b25zdDsKKyAgICBib29sIGNoZWNrRXZhbEFuZFJlcG9ydFZpb2xhdGlvbihDU1BEaXJlY3RpdmUq
LCBjb25zdCBTdHJpbmcmIGNvbnNvbGVNZXNzYWdlLCBjb25zdCBTdHJpbmcmIGNvbnRleHRVUkws
IGludCBjb250ZXh0TGluZU51bWJlcikgY29uc3Q7CiAgICAgYm9vbCBjaGVja1NvdXJjZUFuZFJl
cG9ydFZpb2xhdGlvbihDU1BEaXJlY3RpdmUqLCBjb25zdCBLVVJMJiwgY29uc3QgU3RyaW5nJiB0
eXBlKSBjb25zdDsKIAogICAgIGJvb2wgZGVueUlmRW5mb3JjaW5nUG9saWN5KCkgY29uc3QgeyBy
ZXR1cm4gbV9yZXBvcnRPbmx5OyB9CkBAIC01NzUsMTAgKzU3NiwxMCBAQCBQYXNzT3duUHRyPENT
UERpcmVjdGl2ZUxpc3Q+IENTUERpcmVjdGl2ZUxpc3Q6OmNyZWF0ZShTY3JpcHRFeGVjdXRpb25D
b250ZXh0KiBzYwogICAgIHJldHVybiBwb2xpY3kucmVsZWFzZSgpOwogfQogCi12b2lkIENTUERp
cmVjdGl2ZUxpc3Q6OnJlcG9ydFZpb2xhdGlvbihjb25zdCBTdHJpbmcmIGRpcmVjdGl2ZVRleHQs
IGNvbnN0IFN0cmluZyYgY29uc29sZU1lc3NhZ2UsIGNvbnN0IEtVUkwmIGJsb2NrZWRVUkwpIGNv
bnN0Cit2b2lkIENTUERpcmVjdGl2ZUxpc3Q6OnJlcG9ydFZpb2xhdGlvbihjb25zdCBTdHJpbmcm
IGRpcmVjdGl2ZVRleHQsIGNvbnN0IFN0cmluZyYgY29uc29sZU1lc3NhZ2UsIGNvbnN0IEtVUkwm
IGJsb2NrZWRVUkwsIGNvbnN0IFN0cmluZyYgY29udGV4dFVSTCwgaW50IGNvbnRleHRMaW5lTnVt
YmVyKSBjb25zdAogewogICAgIFN0cmluZyBtZXNzYWdlID0gbV9yZXBvcnRPbmx5ID8gIltSZXBv
cnQgT25seV0gIiArIGNvbnNvbGVNZXNzYWdlIDogY29uc29sZU1lc3NhZ2U7Ci0gICAgbV9zY3Jp
cHRFeGVjdXRpb25Db250ZXh0LT5hZGRDb25zb2xlTWVzc2FnZShKU01lc3NhZ2VTb3VyY2UsIExv
Z01lc3NhZ2VUeXBlLCBFcnJvck1lc3NhZ2VMZXZlbCwgbWVzc2FnZSk7CisgICAgbV9zY3JpcHRF
eGVjdXRpb25Db250ZXh0LT5hZGRDb25zb2xlTWVzc2FnZShKU01lc3NhZ2VTb3VyY2UsIExvZ01l
c3NhZ2VUeXBlLCBFcnJvck1lc3NhZ2VMZXZlbCwgbWVzc2FnZSwgY29udGV4dFVSTCwgY29udGV4
dExpbmVOdW1iZXIpOwogCiAgICAgaWYgKG1fcmVwb3J0VVJJcy5pc0VtcHR5KCkpCiAgICAgICAg
IHJldHVybjsKQEAgLTYzOCwxOSArNjM5LDE5IEBAIENTUERpcmVjdGl2ZSogQ1NQRGlyZWN0aXZl
TGlzdDo6b3BlcmF0aXZlRGlyZWN0aXZlKENTUERpcmVjdGl2ZSogZGlyZWN0aXZlKSBjb25zCiAg
ICAgcmV0dXJuIGRpcmVjdGl2ZSA/IGRpcmVjdGl2ZSA6IG1fZGVmYXVsdFNyYy5nZXQoKTsKIH0K
IAotYm9vbCBDU1BEaXJlY3RpdmVMaXN0OjpjaGVja0lubGluZUFuZFJlcG9ydFZpb2xhdGlvbihD
U1BEaXJlY3RpdmUqIGRpcmVjdGl2ZSwgY29uc3QgU3RyaW5nJiBjb25zb2xlTWVzc2FnZSkgY29u
c3QKK2Jvb2wgQ1NQRGlyZWN0aXZlTGlzdDo6Y2hlY2tJbmxpbmVBbmRSZXBvcnRWaW9sYXRpb24o
Q1NQRGlyZWN0aXZlKiBkaXJlY3RpdmUsIGNvbnN0IFN0cmluZyYgY29uc29sZU1lc3NhZ2UsIGNv
bnN0IFN0cmluZyYgY29udGV4dFVSTCwgaW50IGNvbnRleHRMaW5lTnVtYmVyKSBjb25zdAogewog
ICAgIGlmICghZGlyZWN0aXZlIHx8IGRpcmVjdGl2ZS0+YWxsb3dJbmxpbmUoKSkKICAgICAgICAg
cmV0dXJuIHRydWU7Ci0gICAgcmVwb3J0VmlvbGF0aW9uKGRpcmVjdGl2ZS0+dGV4dCgpLCBjb25z
b2xlTWVzc2FnZSArICJcIiIgKyBkaXJlY3RpdmUtPnRleHQoKSArICJcIi5cbiIpOworICAgIHJl
cG9ydFZpb2xhdGlvbihkaXJlY3RpdmUtPnRleHQoKSwgY29uc29sZU1lc3NhZ2UgKyAiXCIiICsg
ZGlyZWN0aXZlLT50ZXh0KCkgKyAiXCIuXG4iLCBLVVJMKCksIGNvbnRleHRVUkwsIGNvbnRleHRM
aW5lTnVtYmVyKTsKICAgICByZXR1cm4gZGVueUlmRW5mb3JjaW5nUG9saWN5KCk7CiB9CiAKLWJv
b2wgQ1NQRGlyZWN0aXZlTGlzdDo6Y2hlY2tFdmFsQW5kUmVwb3J0VmlvbGF0aW9uKENTUERpcmVj
dGl2ZSogZGlyZWN0aXZlLCBjb25zdCBTdHJpbmcmIGNvbnNvbGVNZXNzYWdlKSBjb25zdAorYm9v
bCBDU1BEaXJlY3RpdmVMaXN0OjpjaGVja0V2YWxBbmRSZXBvcnRWaW9sYXRpb24oQ1NQRGlyZWN0
aXZlKiBkaXJlY3RpdmUsIGNvbnN0IFN0cmluZyYgY29uc29sZU1lc3NhZ2UsIGNvbnN0IFN0cmlu
ZyYgY29udGV4dFVSTCwgaW50IGNvbnRleHRMaW5lTnVtYmVyKSBjb25zdAogewogICAgIGlmIChj
aGVja0V2YWwoZGlyZWN0aXZlKSkKICAgICAgICAgcmV0dXJuIHRydWU7Ci0gICAgcmVwb3J0Vmlv
bGF0aW9uKGRpcmVjdGl2ZS0+dGV4dCgpLCBjb25zb2xlTWVzc2FnZSArICJcIiIgKyBkaXJlY3Rp
dmUtPnRleHQoKSArICJcIi5cbiIpOworICAgIHJlcG9ydFZpb2xhdGlvbihkaXJlY3RpdmUtPnRl
eHQoKSwgY29uc29sZU1lc3NhZ2UgKyAiXCIiICsgZGlyZWN0aXZlLT50ZXh0KCkgKyAiXCIuXG4i
LCBLVVJMKCksIGNvbnRleHRVUkwsIGNvbnRleHRMaW5lTnVtYmVyKTsKICAgICByZXR1cm4gZGVu
eUlmRW5mb3JjaW5nUG9saWN5KCk7CiB9CiAKQEAgLTY2MywzNCArNjY0LDM0IEBAIGJvb2wgQ1NQ
RGlyZWN0aXZlTGlzdDo6Y2hlY2tTb3VyY2VBbmRSZXBvcnRWaW9sYXRpb24oQ1NQRGlyZWN0aXZl
KiBkaXJlY3RpdmUsIGNvCiAgICAgcmV0dXJuIGRlbnlJZkVuZm9yY2luZ1BvbGljeSgpOwogfQog
Ci1ib29sIENTUERpcmVjdGl2ZUxpc3Q6OmFsbG93SmF2YVNjcmlwdFVSTHMoKSBjb25zdAorYm9v
bCBDU1BEaXJlY3RpdmVMaXN0OjphbGxvd0phdmFTY3JpcHRVUkxzKGNvbnN0IFN0cmluZyYgY29u
dGV4dFVSTCwgaW50IGNvbnRleHRMaW5lTnVtYmVyKSBjb25zdAogewogICAgIERFRklORV9TVEFU
SUNfTE9DQUwoU3RyaW5nLCBjb25zb2xlTWVzc2FnZSwgKCJSZWZ1c2VkIHRvIGV4ZWN1dGUgSmF2
YVNjcmlwdCBVUkwgYmVjYXVzZSBpdCB2aW9sYXRlcyB0aGUgZm9sbG93aW5nIENvbnRlbnQgU2Vj
dXJpdHkgUG9saWN5IGRpcmVjdGl2ZTogIikpOwotICAgIHJldHVybiBjaGVja0lubGluZUFuZFJl
cG9ydFZpb2xhdGlvbihvcGVyYXRpdmVEaXJlY3RpdmUobV9zY3JpcHRTcmMuZ2V0KCkpLCBjb25z
b2xlTWVzc2FnZSk7CisgICAgcmV0dXJuIGNoZWNrSW5saW5lQW5kUmVwb3J0VmlvbGF0aW9uKG9w
ZXJhdGl2ZURpcmVjdGl2ZShtX3NjcmlwdFNyYy5nZXQoKSksIGNvbnNvbGVNZXNzYWdlLCBjb250
ZXh0VVJMLCBjb250ZXh0TGluZU51bWJlcik7CiB9CiAKLWJvb2wgQ1NQRGlyZWN0aXZlTGlzdDo6
YWxsb3dJbmxpbmVFdmVudEhhbmRsZXJzKCkgY29uc3QKK2Jvb2wgQ1NQRGlyZWN0aXZlTGlzdDo6
YWxsb3dJbmxpbmVFdmVudEhhbmRsZXJzKGNvbnN0IFN0cmluZyYgY29udGV4dFVSTCwgaW50IGNv
bnRleHRMaW5lTnVtYmVyKSBjb25zdAogewogICAgIERFRklORV9TVEFUSUNfTE9DQUwoU3RyaW5n
LCBjb25zb2xlTWVzc2FnZSwgKCJSZWZ1c2VkIHRvIGV4ZWN1dGUgaW5saW5lIGV2ZW50IGhhbmRs
ZXIgYmVjYXVzZSBpdCB2aW9sYXRlcyB0aGUgZm9sbG93aW5nIENvbnRlbnQgU2VjdXJpdHkgUG9s
aWN5IGRpcmVjdGl2ZTogIikpOwotICAgIHJldHVybiBjaGVja0lubGluZUFuZFJlcG9ydFZpb2xh
dGlvbihvcGVyYXRpdmVEaXJlY3RpdmUobV9zY3JpcHRTcmMuZ2V0KCkpLCBjb25zb2xlTWVzc2Fn
ZSk7CisgICAgcmV0dXJuIGNoZWNrSW5saW5lQW5kUmVwb3J0VmlvbGF0aW9uKG9wZXJhdGl2ZURp
cmVjdGl2ZShtX3NjcmlwdFNyYy5nZXQoKSksIGNvbnNvbGVNZXNzYWdlLCBjb250ZXh0VVJMLCBj
b250ZXh0TGluZU51bWJlcik7CiB9CiAKLWJvb2wgQ1NQRGlyZWN0aXZlTGlzdDo6YWxsb3dJbmxp
bmVTY3JpcHQoKSBjb25zdAorYm9vbCBDU1BEaXJlY3RpdmVMaXN0OjphbGxvd0lubGluZVNjcmlw
dChjb25zdCBTdHJpbmcmIGNvbnRleHRVUkwsIGludCBjb250ZXh0TGluZU51bWJlcikgY29uc3QK
IHsKICAgICBERUZJTkVfU1RBVElDX0xPQ0FMKFN0cmluZywgY29uc29sZU1lc3NhZ2UsICgiUmVm
dXNlZCB0byBleGVjdXRlIGlubGluZSBzY3JpcHQgYmVjYXVzZSBpdCB2aW9sYXRlcyB0aGUgZm9s
bG93aW5nIENvbnRlbnQgU2VjdXJpdHkgUG9saWN5IGRpcmVjdGl2ZTogIikpOwotICAgIHJldHVy
biBjaGVja0lubGluZUFuZFJlcG9ydFZpb2xhdGlvbihvcGVyYXRpdmVEaXJlY3RpdmUobV9zY3Jp
cHRTcmMuZ2V0KCkpLCBjb25zb2xlTWVzc2FnZSk7CisgICAgcmV0dXJuIGNoZWNrSW5saW5lQW5k
UmVwb3J0VmlvbGF0aW9uKG9wZXJhdGl2ZURpcmVjdGl2ZShtX3NjcmlwdFNyYy5nZXQoKSksIGNv
bnNvbGVNZXNzYWdlLCBjb250ZXh0VVJMLCBjb250ZXh0TGluZU51bWJlcik7CiB9CiAKLWJvb2wg
Q1NQRGlyZWN0aXZlTGlzdDo6YWxsb3dJbmxpbmVTdHlsZSgpIGNvbnN0Citib29sIENTUERpcmVj
dGl2ZUxpc3Q6OmFsbG93SW5saW5lU3R5bGUoY29uc3QgU3RyaW5nJiBjb250ZXh0VVJMLCBpbnQg
Y29udGV4dExpbmVOdW1iZXIpIGNvbnN0CiB7CiAgICAgREVGSU5FX1NUQVRJQ19MT0NBTChTdHJp
bmcsIGNvbnNvbGVNZXNzYWdlLCAoIlJlZnVzZWQgdG8gYXBwbHkgaW5saW5lIHN0eWxlIGJlY2F1
c2UgaXQgdmlvbGF0ZXMgdGhlIGZvbGxvd2luZyBDb250ZW50IFNlY3VyaXR5IFBvbGljeSBkaXJl
Y3RpdmU6ICIpKTsKLSAgICByZXR1cm4gY2hlY2tJbmxpbmVBbmRSZXBvcnRWaW9sYXRpb24ob3Bl
cmF0aXZlRGlyZWN0aXZlKG1fc3R5bGVTcmMuZ2V0KCkpLCBjb25zb2xlTWVzc2FnZSk7CisgICAg
cmV0dXJuIGNoZWNrSW5saW5lQW5kUmVwb3J0VmlvbGF0aW9uKG9wZXJhdGl2ZURpcmVjdGl2ZSht
X3N0eWxlU3JjLmdldCgpKSwgY29uc29sZU1lc3NhZ2UsIGNvbnRleHRVUkwsIGNvbnRleHRMaW5l
TnVtYmVyKTsKIH0KIAogYm9vbCBDU1BEaXJlY3RpdmVMaXN0OjphbGxvd0V2YWwoKSBjb25zdAog
ewogICAgIERFRklORV9TVEFUSUNfTE9DQUwoU3RyaW5nLCBjb25zb2xlTWVzc2FnZSwgKCJSZWZ1
c2VkIHRvIGV2YWx1YXRlIHNjcmlwdCBiZWNhdXNlIGl0IHZpb2xhdGVzIHRoZSBmb2xsb3dpbmcg
Q29udGVudCBTZWN1cml0eSBQb2xpY3kgZGlyZWN0aXZlOiAiKSk7Ci0gICAgcmV0dXJuIGNoZWNr
RXZhbEFuZFJlcG9ydFZpb2xhdGlvbihvcGVyYXRpdmVEaXJlY3RpdmUobV9zY3JpcHRTcmMuZ2V0
KCkpLCBjb25zb2xlTWVzc2FnZSk7CisgICAgcmV0dXJuIGNoZWNrRXZhbEFuZFJlcG9ydFZpb2xh
dGlvbihvcGVyYXRpdmVEaXJlY3RpdmUobV9zY3JpcHRTcmMuZ2V0KCkpLCBjb25zb2xlTWVzc2Fn
ZSwgU3RyaW5nKCksIDApOwogfQogCiBib29sIENTUERpcmVjdGl2ZUxpc3Q6OmFsbG93U2NyaXB0
RnJvbVNvdXJjZShjb25zdCBLVVJMJiB1cmwpIGNvbnN0CkBAIC05MzMsNiArOTM0LDE2IEBAIGJv
b2wgaXNBbGxvd2VkQnlBbGwoY29uc3QgQ1NQRGlyZWN0aXZlTGlzdFZlY3RvciYgcG9saWNpZXMp
CiAgICAgcmV0dXJuIHRydWU7CiB9CiAKK3RlbXBsYXRlPGJvb2wgKENTUERpcmVjdGl2ZUxpc3Q6
OiphbGxvd2VkKShjb25zdCBTdHJpbmcmLCBpbnQpIGNvbnN0PgorYm9vbCBpc0FsbG93ZWRCeUFs
bChjb25zdCBDU1BEaXJlY3RpdmVMaXN0VmVjdG9yJiBwb2xpY2llcywgY29uc3QgU3RyaW5nJiBj
b250ZXh0VVJMLCBjb25zdCBpbnQgY29udGV4dExpbmVOdW1iZXIpCit7CisgICAgZm9yIChzaXpl
X3QgaSA9IDA7IGkgPCBwb2xpY2llcy5zaXplKCk7ICsraSkgeworICAgICAgICBpZiAoIShwb2xp
Y2llc1tpXS5nZXQoKS0+KmFsbG93ZWQpKGNvbnRleHRVUkwsIGNvbnRleHRMaW5lTnVtYmVyKSkK
KyAgICAgICAgICAgIHJldHVybiBmYWxzZTsKKyAgICB9CisgICAgcmV0dXJuIHRydWU7Cit9CisK
IHRlbXBsYXRlPGJvb2wgKENTUERpcmVjdGl2ZUxpc3Q6OiphbGxvd0Zyb21VUkwpKGNvbnN0IEtV
UkwmKSBjb25zdD4KIGJvb2wgaXNBbGxvd2VkQnlBbGwoY29uc3QgQ1NQRGlyZWN0aXZlTGlzdFZl
Y3RvciYgcG9saWNpZXMsIGNvbnN0IEtVUkwmIHVybCkKIHsKQEAgLTk0MywyNiArOTU0LDI2IEBA
IGJvb2wgaXNBbGxvd2VkQnlBbGwoY29uc3QgQ1NQRGlyZWN0aXZlTGlzdFZlY3RvciYgcG9saWNp
ZXMsIGNvbnN0IEtVUkwmIHVybCkKICAgICByZXR1cm4gdHJ1ZTsKIH0KIAotYm9vbCBDb250ZW50
U2VjdXJpdHlQb2xpY3k6OmFsbG93SmF2YVNjcmlwdFVSTHMoKSBjb25zdAorYm9vbCBDb250ZW50
U2VjdXJpdHlQb2xpY3k6OmFsbG93SmF2YVNjcmlwdFVSTHMoY29uc3QgU3RyaW5nJiBjb250ZXh0
VVJMLCBpbnQgY29udGV4dExpbmVOdW1iZXIpIGNvbnN0CiB7Ci0gICAgcmV0dXJuIGlzQWxsb3dl
ZEJ5QWxsPCZDU1BEaXJlY3RpdmVMaXN0OjphbGxvd0phdmFTY3JpcHRVUkxzPihtX3BvbGljaWVz
KTsKKyAgICByZXR1cm4gaXNBbGxvd2VkQnlBbGw8JkNTUERpcmVjdGl2ZUxpc3Q6OmFsbG93SmF2
YVNjcmlwdFVSTHM+KG1fcG9saWNpZXMsIGNvbnRleHRVUkwsIGNvbnRleHRMaW5lTnVtYmVyKTsK
IH0KIAotYm9vbCBDb250ZW50U2VjdXJpdHlQb2xpY3k6OmFsbG93SW5saW5lRXZlbnRIYW5kbGVy
cygpIGNvbnN0Citib29sIENvbnRlbnRTZWN1cml0eVBvbGljeTo6YWxsb3dJbmxpbmVFdmVudEhh
bmRsZXJzKGNvbnN0IFN0cmluZyYgY29udGV4dFVSTCwgaW50IGNvbnRleHRMaW5lTnVtYmVyKSBj
b25zdAogewotICAgIHJldHVybiBpc0FsbG93ZWRCeUFsbDwmQ1NQRGlyZWN0aXZlTGlzdDo6YWxs
b3dJbmxpbmVFdmVudEhhbmRsZXJzPihtX3BvbGljaWVzKTsKKyAgICByZXR1cm4gaXNBbGxvd2Vk
QnlBbGw8JkNTUERpcmVjdGl2ZUxpc3Q6OmFsbG93SW5saW5lRXZlbnRIYW5kbGVycz4obV9wb2xp
Y2llcywgY29udGV4dFVSTCwgY29udGV4dExpbmVOdW1iZXIpOwogfQogCi1ib29sIENvbnRlbnRT
ZWN1cml0eVBvbGljeTo6YWxsb3dJbmxpbmVTY3JpcHQoKSBjb25zdAorYm9vbCBDb250ZW50U2Vj
dXJpdHlQb2xpY3k6OmFsbG93SW5saW5lU2NyaXB0KGNvbnN0IFN0cmluZyYgY29udGV4dFVSTCwg
aW50IGNvbnRleHRMaW5lTnVtYmVyKSBjb25zdAogewotICAgIHJldHVybiBpc0FsbG93ZWRCeUFs
bDwmQ1NQRGlyZWN0aXZlTGlzdDo6YWxsb3dJbmxpbmVTY3JpcHQ+KG1fcG9saWNpZXMpOworICAg
IHJldHVybiBpc0FsbG93ZWRCeUFsbDwmQ1NQRGlyZWN0aXZlTGlzdDo6YWxsb3dJbmxpbmVTY3Jp
cHQ+KG1fcG9saWNpZXMsIGNvbnRleHRVUkwsIGNvbnRleHRMaW5lTnVtYmVyKTsKIH0KIAotYm9v
bCBDb250ZW50U2VjdXJpdHlQb2xpY3k6OmFsbG93SW5saW5lU3R5bGUoKSBjb25zdAorYm9vbCBD
b250ZW50U2VjdXJpdHlQb2xpY3k6OmFsbG93SW5saW5lU3R5bGUoY29uc3QgU3RyaW5nJiBjb250
ZXh0VVJMLCBpbnQgY29udGV4dExpbmVOdW1iZXIpIGNvbnN0CiB7CiAgICAgaWYgKG1fb3ZlcnJp
ZGVJbmxpbmVTdHlsZUFsbG93ZWQpCiAgICAgICAgIHJldHVybiB0cnVlOwotICAgIHJldHVybiBp
c0FsbG93ZWRCeUFsbDwmQ1NQRGlyZWN0aXZlTGlzdDo6YWxsb3dJbmxpbmVTdHlsZT4obV9wb2xp
Y2llcyk7CisgICAgcmV0dXJuIGlzQWxsb3dlZEJ5QWxsPCZDU1BEaXJlY3RpdmVMaXN0OjphbGxv
d0lubGluZVN0eWxlPihtX3BvbGljaWVzLCBjb250ZXh0VVJMLCBjb250ZXh0TGluZU51bWJlcik7
CiB9CiAKIGJvb2wgQ29udGVudFNlY3VyaXR5UG9saWN5OjphbGxvd0V2YWwoKSBjb25zdApkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGFnZS9Db250ZW50U2VjdXJpdHlQb2xpY3kuaCBiL1Nv
dXJjZS9XZWJDb3JlL3BhZ2UvQ29udGVudFNlY3VyaXR5UG9saWN5LmgKaW5kZXggZjEzMDE0ZjEz
MWY1NzBiZmJiNjA1OWE1Mjg2YWNkZDgwMTg0YjVjYy4uOGI3M2FiZmUxNGVkYjA4YWQ5Mzk0NWYx
Y2U1NDA5ZmM3MmEyN2Y2ZCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGFnZS9Db250ZW50
U2VjdXJpdHlQb2xpY3kuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wYWdlL0NvbnRlbnRTZWN1cml0
eVBvbGljeS5oCkBAIC02MSwxMCArNjEsMTAgQEAgcHVibGljOgogICAgIGNvbnN0IFN0cmluZyYg
ZGVwcmVjYXRlZEhlYWRlcigpIGNvbnN0OwogICAgIEhlYWRlclR5cGUgZGVwcmVjYXRlZEhlYWRl
clR5cGUoKSBjb25zdDsKIAotICAgIGJvb2wgYWxsb3dKYXZhU2NyaXB0VVJMcygpIGNvbnN0Owot
ICAgIGJvb2wgYWxsb3dJbmxpbmVFdmVudEhhbmRsZXJzKCkgY29uc3Q7Ci0gICAgYm9vbCBhbGxv
d0lubGluZVNjcmlwdCgpIGNvbnN0OwotICAgIGJvb2wgYWxsb3dJbmxpbmVTdHlsZSgpIGNvbnN0
OworICAgIGJvb2wgYWxsb3dKYXZhU2NyaXB0VVJMcyhjb25zdCBTdHJpbmcmIGNvbnRleHRVUkws
IGludCBjb250ZXh0TGluZU51bWJlcikgY29uc3Q7CisgICAgYm9vbCBhbGxvd0lubGluZUV2ZW50
SGFuZGxlcnMoY29uc3QgU3RyaW5nJiBjb250ZXh0VVJMLCBpbnQgY29udGV4dExpbmVOdW1iZXIp
IGNvbnN0OworICAgIGJvb2wgYWxsb3dJbmxpbmVTY3JpcHQoY29uc3QgU3RyaW5nJiBjb250ZXh0
VVJMLCBpbnQgY29udGV4dExpbmVOdW1iZXIpIGNvbnN0OworICAgIGJvb2wgYWxsb3dJbmxpbmVT
dHlsZShjb25zdCBTdHJpbmcmIGNvbnRleHRVUkwsIGludCBjb250ZXh0TGluZU51bWJlcikgY29u
c3Q7CiAgICAgYm9vbCBhbGxvd0V2YWwoKSBjb25zdDsKIAogICAgIGJvb2wgYWxsb3dTY3JpcHRG
cm9tU291cmNlKGNvbnN0IEtVUkwmKSBjb25zdDsKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL0No
YW5nZUxvZyBiL0xheW91dFRlc3RzL0NoYW5nZUxvZwppbmRleCAzN2QwNTcwZWZiNzRkN2YxZmE0
M2U3MDY3ZGEzYjliYTQ3Y2E2MDg2Li5mZmNkNDc0M2JjODQ1ZTY0OGExNzM5OGI2MjE4Y2FkYzU1
ZWFmMDc0IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKKysrIGIvTGF5b3V0VGVz
dHMvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMjkgQEAKKzIwMTItMDUtMTggIE1pa2UgV2VzdCAgPG1r
d3N0QGNocm9taXVtLm9yZz4KKworICAgICAgICBJbmxpbmUgc2NyaXB0IGFuZCBzdHlsZSBibG9j
a2VkIGJ5IENvbnRlbnQgU2VjdXJpdHkgUG9saWN5IHNob3VsZCBwcm92aWRlIG1vcmUgZGV0YWls
ZWQgY29uc29sZSBlcnJvcnMuCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3df
YnVnLmNnaT9pZD04Njg0OAorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgor
CisgICAgICAgICogaHR0cC90ZXN0cy9zZWN1cml0eS9jb250ZW50U2VjdXJpdHlQb2xpY3kvY29t
YmluZS1tdWx0aXBsZS1wb2xpY2llcy1leHBlY3RlZC50eHQ6CisgICAgICAgICogaHR0cC90ZXN0
cy9zZWN1cml0eS9jb250ZW50U2VjdXJpdHlQb2xpY3kvZGVmYXVsdC1zcmMtaW5saW5lLWJsb2Nr
ZWQtZXhwZWN0ZWQudHh0OgorICAgICAgICAqIGh0dHAvdGVzdHMvc2VjdXJpdHkvY29udGVudFNl
Y3VyaXR5UG9saWN5L2luamVjdGVkLWlubGluZS1zY3JpcHQtYWxsb3dlZDogQWRkZWQKKyAgICAg
ICAgKiBodHRwL3Rlc3RzL3NlY3VyaXR5L2NvbnRlbnRTZWN1cml0eVBvbGljeS9pbmplY3RlZC1p
bmxpbmUtc2NyaXB0LWJsb2NrZWQ6IEFkZGVkCisgICAgICAgICogaHR0cC90ZXN0cy9zZWN1cml0
eS9jb250ZW50U2VjdXJpdHlQb2xpY3kvaW5saW5lLXNjcmlwdC1ibG9ja2VkLWV4cGVjdGVkLnR4
dDoKKyAgICAgICAgKiBodHRwL3Rlc3RzL3NlY3VyaXR5L2NvbnRlbnRTZWN1cml0eVBvbGljeS9p
bmxpbmUtc2NyaXB0LWJsb2NrZWQtZ29vZnktZXhwZWN0ZWQudHh0OgorICAgICAgICAqIGh0dHAv
dGVzdHMvc2VjdXJpdHkvY29udGVudFNlY3VyaXR5UG9saWN5L2lubGluZS1zY3JpcHQtYmxvY2tl
ZC1qYXZhc2NyaXB0LXVybC1leHBlY3RlZC50eHQ6CisgICAgICAgICogaHR0cC90ZXN0cy9zZWN1
cml0eS9jb250ZW50U2VjdXJpdHlQb2xpY3kvaW5saW5lLXN0eWxlLWF0dHJpYnV0ZS1ibG9ja2Vk
LWV4cGVjdGVkLnR4dDoKKyAgICAgICAgKiBodHRwL3Rlc3RzL3NlY3VyaXR5L2NvbnRlbnRTZWN1
cml0eVBvbGljeS9pbmxpbmUtc3R5bGUtYmxvY2tlZC1leHBlY3RlZC50eHQ6CisgICAgICAgICog
aHR0cC90ZXN0cy9zZWN1cml0eS9jb250ZW50U2VjdXJpdHlQb2xpY3kvamF2YXNjcmlwdC11cmwt
YmxvY2tlZC1leHBlY3RlZC50eHQ6CisgICAgICAgICogaHR0cC90ZXN0cy9zZWN1cml0eS9jb250
ZW50U2VjdXJpdHlQb2xpY3kvcmVwb3J0LWFuZC1lbmZvcmNlLWV4cGVjdGVkLnR4dDoKKyAgICAg
ICAgKiBodHRwL3Rlc3RzL3NlY3VyaXR5L2NvbnRlbnRTZWN1cml0eVBvbGljeS9yZXBvcnQtb25s
eS1leHBlY3RlZC50eHQ6CisgICAgICAgICogaHR0cC90ZXN0cy9zZWN1cml0eS9jb250ZW50U2Vj
dXJpdHlQb2xpY3kvcmVwb3J0LW9ubHktZnJvbS1oZWFkZXItZXhwZWN0ZWQudHh0OgorICAgICAg
ICAqIGh0dHAvdGVzdHMvc2VjdXJpdHkvY29udGVudFNlY3VyaXR5UG9saWN5L3JlcG9ydC11cmkt
ZXhwZWN0ZWQudHh0OgorICAgICAgICAqIGh0dHAvdGVzdHMvc2VjdXJpdHkvY29udGVudFNlY3Vy
aXR5UG9saWN5L3JlcG9ydC11cmktZnJvbS1jaGlsZC1mcmFtZS1leHBlY3RlZC50eHQ6CisgICAg
ICAgICogaHR0cC90ZXN0cy9zZWN1cml0eS9jb250ZW50U2VjdXJpdHlQb2xpY3kvc2NyaXB0LXNy
Yy1ub25lLWlubGluZS1ldmVudC1leHBlY3RlZC50eHQ6CisgICAgICAgICogaHR0cC90ZXN0cy9z
ZWN1cml0eS9jb250ZW50U2VjdXJpdHlQb2xpY3kvc2NyaXB0LXNyYy1yZWRpcmVjdC1leHBlY3Rl
ZC50eHQ6CisgICAgICAgICogaHR0cC90ZXN0cy9zZWN1cml0eS9jb250ZW50U2VjdXJpdHlQb2xp
Y3kvc3JjZG9jLWRvZXNudC1ieXBhc3Mtc2NyaXB0LXNyYy1leHBlY3RlZC50eHQ6CisKIDIwMTIt
MDUtMTcgIERhbiBCZXJuc3RlaW4gIDxtaXR6QGFwcGxlLmNvbT4KIAogICAgICAgICA8cmRhcjov
L3Byb2JsZW0vMTE0MTk5MzM+IFByb2JsZW1zIHdpdGggZmxpcHBlZCB3cml0aW5nIG1vZGVzIGFu
ZCBjb21wb3NpdGluZwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9zZWN1cml0
eS9jb250ZW50U2VjdXJpdHlQb2xpY3kvY29tYmluZS1tdWx0aXBsZS1wb2xpY2llcy1leHBlY3Rl
ZC50eHQgYi9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3NlY3VyaXR5L2NvbnRlbnRTZWN1cml0eVBv
bGljeS9jb21iaW5lLW11bHRpcGxlLXBvbGljaWVzLWV4cGVjdGVkLnR4dAppbmRleCA3NTYwNDE5
MGZiM2ViMjI2ODAzZWQwMDczNzFkMGI2Njc0YzQyYzg4Li42YzYwZjU4OTlhYmY0NTkyMTgyNzFh
MjEzNTc0NWNiZjQwOGJmOTgyIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3Nl
Y3VyaXR5L2NvbnRlbnRTZWN1cml0eVBvbGljeS9jb21iaW5lLW11bHRpcGxlLXBvbGljaWVzLWV4
cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3NlY3VyaXR5L2NvbnRlbnRT
ZWN1cml0eVBvbGljeS9jb21iaW5lLW11bHRpcGxlLXBvbGljaWVzLWV4cGVjdGVkLnR4dApAQCAt
MSw1ICsxLDUgQEAKLUNPTlNPTEUgTUVTU0FHRTogUmVmdXNlZCB0byBleGVjdXRlIGlubGluZSBz
Y3JpcHQgYmVjYXVzZSBpdCB2aW9sYXRlcyB0aGUgZm9sbG93aW5nIENvbnRlbnQgU2VjdXJpdHkg
UG9saWN5IGRpcmVjdGl2ZTogInNjcmlwdC1zcmMgJ3NlbGYnIi4KK0NPTlNPTEUgTUVTU0FHRTog
bGluZSAxMTogUmVmdXNlZCB0byBleGVjdXRlIGlubGluZSBzY3JpcHQgYmVjYXVzZSBpdCB2aW9s
YXRlcyB0aGUgZm9sbG93aW5nIENvbnRlbnQgU2VjdXJpdHkgUG9saWN5IGRpcmVjdGl2ZTogInNj
cmlwdC1zcmMgJ3NlbGYnIi4KIAotQ09OU09MRSBNRVNTQUdFOiBSZWZ1c2VkIHRvIGFwcGx5IGlu
bGluZSBzdHlsZSBiZWNhdXNlIGl0IHZpb2xhdGVzIHRoZSBmb2xsb3dpbmcgQ29udGVudCBTZWN1
cml0eSBQb2xpY3kgZGlyZWN0aXZlOiAic3R5bGUtc3JjICdub25lJyIuCitDT05TT0xFIE1FU1NB
R0U6IGxpbmUgMTM6IFJlZnVzZWQgdG8gYXBwbHkgaW5saW5lIHN0eWxlIGJlY2F1c2UgaXQgdmlv
bGF0ZXMgdGhlIGZvbGxvd2luZyBDb250ZW50IFNlY3VyaXR5IFBvbGljeSBkaXJlY3RpdmU6ICJz
dHlsZS1zcmMgJ25vbmUnIi4KIAogVGhpcyB0ZXN0IGNoZWNrcyB0aGF0IHdlIGVuZm9yY2UgYWxs
IHRoZSBzdXBwbGllZCBwb2xpY2llcy4gVGhpcyB0ZXN0IHBhc3NlcyBpZiBpdCBkb2Vzbid0IGFs
ZXJ0IGZhaWwgYW5kIGlmIHRoZSBzdHlsZSBkb2Vzbid0IGFwcGx5LgpkaWZmIC0tZ2l0IGEvTGF5
b3V0VGVzdHMvaHR0cC90ZXN0cy9zZWN1cml0eS9jb250ZW50U2VjdXJpdHlQb2xpY3kvZGVmYXVs
dC1zcmMtaW5saW5lLWJsb2NrZWQtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaHR0cC90ZXN0
cy9zZWN1cml0eS9jb250ZW50U2VjdXJpdHlQb2xpY3kvZGVmYXVsdC1zcmMtaW5saW5lLWJsb2Nr
ZWQtZXhwZWN0ZWQudHh0CmluZGV4IGQ2ODVjYWRkMjk1YTkxZjRkZjA0NjQ2OTUyMmFhOGI5YTMx
MWE4OGEuLjUyNWRkNzU1ZGNkODI3OWUyMTI1YzZjNjE3MmY4NzQ5ZTg2ZjNlMzUgMTAwNjQ0Ci0t
LSBhL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvc2VjdXJpdHkvY29udGVudFNlY3VyaXR5UG9saWN5
L2RlZmF1bHQtc3JjLWlubGluZS1ibG9ja2VkLWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0
cy9odHRwL3Rlc3RzL3NlY3VyaXR5L2NvbnRlbnRTZWN1cml0eVBvbGljeS9kZWZhdWx0LXNyYy1p
bmxpbmUtYmxvY2tlZC1leHBlY3RlZC50eHQKQEAgLTEsNSArMSw1IEBACi1DT05TT0xFIE1FU1NB
R0U6IFJlZnVzZWQgdG8gZXhlY3V0ZSBpbmxpbmUgc2NyaXB0IGJlY2F1c2UgaXQgdmlvbGF0ZXMg
dGhlIGZvbGxvd2luZyBDb250ZW50IFNlY3VyaXR5IFBvbGljeSBkaXJlY3RpdmU6ICJkZWZhdWx0
LXNyYyAnc2VsZiciLgorQ09OU09MRSBNRVNTQUdFOiBsaW5lIDk6IFJlZnVzZWQgdG8gZXhlY3V0
ZSBpbmxpbmUgc2NyaXB0IGJlY2F1c2UgaXQgdmlvbGF0ZXMgdGhlIGZvbGxvd2luZyBDb250ZW50
IFNlY3VyaXR5IFBvbGljeSBkaXJlY3RpdmU6ICJkZWZhdWx0LXNyYyAnc2VsZiciLgogCi1DT05T
T0xFIE1FU1NBR0U6IFJlZnVzZWQgdG8gZXhlY3V0ZSBpbmxpbmUgc2NyaXB0IGJlY2F1c2UgaXQg
dmlvbGF0ZXMgdGhlIGZvbGxvd2luZyBDb250ZW50IFNlY3VyaXR5IFBvbGljeSBkaXJlY3RpdmU6
ICJkZWZhdWx0LXNyYyAnc2VsZiciLgorQ09OU09MRSBNRVNTQUdFOiBsaW5lIDEyOiBSZWZ1c2Vk
IHRvIGV4ZWN1dGUgaW5saW5lIHNjcmlwdCBiZWNhdXNlIGl0IHZpb2xhdGVzIHRoZSBmb2xsb3dp
bmcgQ29udGVudCBTZWN1cml0eSBQb2xpY3kgZGlyZWN0aXZlOiAiZGVmYXVsdC1zcmMgJ3NlbGYn
Ii4KIAogVGhpcyB0ZXN0IHBhc3NlcyBpZiBpdCBkb2Vzbid0IGFsZXJ0IGZhaWwuCmRpZmYgLS1n
aXQgYS9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3NlY3VyaXR5L2NvbnRlbnRTZWN1cml0eVBvbGlj
eS9pbmplY3RlZC1pbmxpbmUtc2NyaXB0LWFsbG93ZWQtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVz
dHMvaHR0cC90ZXN0cy9zZWN1cml0eS9jb250ZW50U2VjdXJpdHlQb2xpY3kvaW5qZWN0ZWQtaW5s
aW5lLXNjcmlwdC1hbGxvd2VkLWV4cGVjdGVkLnR4dApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRl
eCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5hYTk4NThiZjBlNTM2
ZGZiNDdlMGQzYjY2NDY4YWY0N2Y2MzM0NWVmCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVz
dHMvaHR0cC90ZXN0cy9zZWN1cml0eS9jb250ZW50U2VjdXJpdHlQb2xpY3kvaW5qZWN0ZWQtaW5s
aW5lLXNjcmlwdC1hbGxvd2VkLWV4cGVjdGVkLnR4dApAQCAtMCwwICsxLDMgQEAKK0FMRVJUOiBQ
YXNzIDEgb2YgMgorQUxFUlQ6IFBhc3MgMiBvZiAyCisKZGlmZiAtLWdpdCBhL0xheW91dFRlc3Rz
L2h0dHAvdGVzdHMvc2VjdXJpdHkvY29udGVudFNlY3VyaXR5UG9saWN5L2luamVjdGVkLWlubGlu
ZS1zY3JpcHQtYWxsb3dlZC5odG1sIGIvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9zZWN1cml0eS9j
b250ZW50U2VjdXJpdHlQb2xpY3kvaW5qZWN0ZWQtaW5saW5lLXNjcmlwdC1hbGxvd2VkLmh0bWwK
bmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMC4uY2ViMjdkNWJhZmI3MjVkMWM1NDU3Yjc1Y2JjY2EyYjcyZmZhMzVjZQotLS0g
L2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvc2VjdXJpdHkvY29udGVudFNl
Y3VyaXR5UG9saWN5L2luamVjdGVkLWlubGluZS1zY3JpcHQtYWxsb3dlZC5odG1sCkBAIC0wLDAg
KzEsMTAgQEAKKzwhRE9DVFlQRSBodG1sPgorPGh0bWw+Cis8aGVhZD4KKzxtZXRhIGh0dHAtZXF1
aXY9IlgtV2ViS2l0LUNTUCIgY29udGVudD0ic2NyaXB0LXNyYyBodHRwOi8vMTI3LjAuMC4xOiog
J3Vuc2FmZS1pbmxpbmUnIj4KKzxzY3JpcHQgc3JjPSJyZXNvdXJjZXMvZHVtcC1hcy10ZXh0Lmpz
Ij48L3NjcmlwdD4KKzwvaGVhZD4KKzxib2R5PgorPHNjcmlwdCBzcmM9InJlc291cmNlcy9pbmpl
Y3Qtc2NyaXB0LmpzIj48L3NjcmlwdD4KKzwvYm9keT4KKzwvaHRtbD4KZGlmZiAtLWdpdCBhL0xh
eW91dFRlc3RzL2h0dHAvdGVzdHMvc2VjdXJpdHkvY29udGVudFNlY3VyaXR5UG9saWN5L2luamVj
dGVkLWlubGluZS1zY3JpcHQtYmxvY2tlZC1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9odHRw
L3Rlc3RzL3NlY3VyaXR5L2NvbnRlbnRTZWN1cml0eVBvbGljeS9pbmplY3RlZC1pbmxpbmUtc2Ny
aXB0LWJsb2NrZWQtZXhwZWN0ZWQudHh0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjk2ZDZjYWNkOWMzOWU1OTc3ODIz
YjM0ZjQwMzY4ZTQwYzkwYjQzM2MKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9odHRw
L3Rlc3RzL3NlY3VyaXR5L2NvbnRlbnRTZWN1cml0eVBvbGljeS9pbmplY3RlZC1pbmxpbmUtc2Ny
aXB0LWJsb2NrZWQtZXhwZWN0ZWQudHh0CkBAIC0wLDAgKzEsNSBAQAorQ09OU09MRSBNRVNTQUdF
OiBsaW5lIDg6IFJlZnVzZWQgdG8gZXhlY3V0ZSBpbmxpbmUgc2NyaXB0IGJlY2F1c2UgaXQgdmlv
bGF0ZXMgdGhlIGZvbGxvd2luZyBDb250ZW50IFNlY3VyaXR5IFBvbGljeSBkaXJlY3RpdmU6ICJz
Y3JpcHQtc3JjIGh0dHA6Ly8xMjcuMC4wLjE6KiIuCisKK0NPTlNPTEUgTUVTU0FHRTogbGluZSA4
OiBSZWZ1c2VkIHRvIGV4ZWN1dGUgaW5saW5lIHNjcmlwdCBiZWNhdXNlIGl0IHZpb2xhdGVzIHRo
ZSBmb2xsb3dpbmcgQ29udGVudCBTZWN1cml0eSBQb2xpY3kgZGlyZWN0aXZlOiAic2NyaXB0LXNy
YyBodHRwOi8vMTI3LjAuMC4xOioiLgorCisKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2h0dHAv
dGVzdHMvc2VjdXJpdHkvY29udGVudFNlY3VyaXR5UG9saWN5L2luamVjdGVkLWlubGluZS1zY3Jp
cHQtYmxvY2tlZC5odG1sIGIvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9zZWN1cml0eS9jb250ZW50
U2VjdXJpdHlQb2xpY3kvaW5qZWN0ZWQtaW5saW5lLXNjcmlwdC1ibG9ja2VkLmh0bWwKbmV3IGZp
bGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMC4uNjEwODY4YjdlYzc2YjUwM2FiYmQ0OTNjMzJiMTU0NGZkMzkzNzhiYgotLS0gL2Rldi9u
dWxsCisrKyBiL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvc2VjdXJpdHkvY29udGVudFNlY3VyaXR5
UG9saWN5L2luamVjdGVkLWlubGluZS1zY3JpcHQtYmxvY2tlZC5odG1sCkBAIC0wLDAgKzEsMTAg
QEAKKzwhRE9DVFlQRSBodG1sPgorPGh0bWw+Cis8aGVhZD4KKzxtZXRhIGh0dHAtZXF1aXY9Ilgt
V2ViS2l0LUNTUCIgY29udGVudD0ic2NyaXB0LXNyYyBodHRwOi8vMTI3LjAuMC4xOioiPgorPHNj
cmlwdCBzcmM9InJlc291cmNlcy9kdW1wLWFzLXRleHQuanMiPjwvc2NyaXB0PgorPC9oZWFkPgor
PGJvZHk+Cis8c2NyaXB0IHNyYz0icmVzb3VyY2VzL2luamVjdC1zY3JpcHQuanMiPjwvc2NyaXB0
PgorPC9ib2R5PgorPC9odG1sPgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9z
ZWN1cml0eS9jb250ZW50U2VjdXJpdHlQb2xpY3kvaW5saW5lLXNjcmlwdC1ibG9ja2VkLWV4cGVj
dGVkLnR4dCBiL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvc2VjdXJpdHkvY29udGVudFNlY3VyaXR5
UG9saWN5L2lubGluZS1zY3JpcHQtYmxvY2tlZC1leHBlY3RlZC50eHQKaW5kZXggMGNlYWQ2MTNl
ZGE3NTRlNTkyN2NjOGQxY2Q3ODU1NGM2MzIxNjUxMi4uZTFiNjhiNTBmN2U3NjdjZGI3ODkxZDgx
ZjAyMjc1MGFmNDI4MTk3ZiAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9zZWN1
cml0eS9jb250ZW50U2VjdXJpdHlQb2xpY3kvaW5saW5lLXNjcmlwdC1ibG9ja2VkLWV4cGVjdGVk
LnR4dAorKysgYi9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3NlY3VyaXR5L2NvbnRlbnRTZWN1cml0
eVBvbGljeS9pbmxpbmUtc2NyaXB0LWJsb2NrZWQtZXhwZWN0ZWQudHh0CkBAIC0xLDUgKzEsNSBA
QAotQ09OU09MRSBNRVNTQUdFOiBSZWZ1c2VkIHRvIGV4ZWN1dGUgaW5saW5lIHNjcmlwdCBiZWNh
dXNlIGl0IHZpb2xhdGVzIHRoZSBmb2xsb3dpbmcgQ29udGVudCBTZWN1cml0eSBQb2xpY3kgZGly
ZWN0aXZlOiAic2NyaXB0LXNyYyBodHRwOi8vMTI3LjAuMC4xOioiLgorQ09OU09MRSBNRVNTQUdF
OiBsaW5lIDk6IFJlZnVzZWQgdG8gZXhlY3V0ZSBpbmxpbmUgc2NyaXB0IGJlY2F1c2UgaXQgdmlv
bGF0ZXMgdGhlIGZvbGxvd2luZyBDb250ZW50IFNlY3VyaXR5IFBvbGljeSBkaXJlY3RpdmU6ICJz
Y3JpcHQtc3JjIGh0dHA6Ly8xMjcuMC4wLjE6KiIuCiAKLUNPTlNPTEUgTUVTU0FHRTogUmVmdXNl
ZCB0byBleGVjdXRlIGlubGluZSBzY3JpcHQgYmVjYXVzZSBpdCB2aW9sYXRlcyB0aGUgZm9sbG93
aW5nIENvbnRlbnQgU2VjdXJpdHkgUG9saWN5IGRpcmVjdGl2ZTogInNjcmlwdC1zcmMgaHR0cDov
LzEyNy4wLjAuMToqIi4KK0NPTlNPTEUgTUVTU0FHRTogbGluZSAxMjogUmVmdXNlZCB0byBleGVj
dXRlIGlubGluZSBzY3JpcHQgYmVjYXVzZSBpdCB2aW9sYXRlcyB0aGUgZm9sbG93aW5nIENvbnRl
bnQgU2VjdXJpdHkgUG9saWN5IGRpcmVjdGl2ZTogInNjcmlwdC1zcmMgaHR0cDovLzEyNy4wLjAu
MToqIi4KIAogVGhpcyB0ZXN0IHBhc3NlcyBpZiBpdCBkb2Vzbid0IGFsZXJ0IGZhaWwuCmRpZmYg
LS1naXQgYS9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3NlY3VyaXR5L2NvbnRlbnRTZWN1cml0eVBv
bGljeS9pbmxpbmUtc2NyaXB0LWJsb2NrZWQtZ29vZnktZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVz
dHMvaHR0cC90ZXN0cy9zZWN1cml0eS9jb250ZW50U2VjdXJpdHlQb2xpY3kvaW5saW5lLXNjcmlw
dC1ibG9ja2VkLWdvb2Z5LWV4cGVjdGVkLnR4dAppbmRleCA1YmIwNDVjN2M5NTM2YTQyNDBmZDZl
Njc3ZDZkYjZhZGIwNDY0MWNmLi41MzU4YzA1NjQyODY0NGVjNGE1MWZjMmUwNGFjZWYxMTUyZTRh
NzA2IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3NlY3VyaXR5L2NvbnRlbnRT
ZWN1cml0eVBvbGljeS9pbmxpbmUtc2NyaXB0LWJsb2NrZWQtZ29vZnktZXhwZWN0ZWQudHh0Cisr
KyBiL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvc2VjdXJpdHkvY29udGVudFNlY3VyaXR5UG9saWN5
L2lubGluZS1zY3JpcHQtYmxvY2tlZC1nb29meS1leHBlY3RlZC50eHQKQEAgLTEsNyArMSw3IEBA
CiBDT05TT0xFIE1FU1NBR0U6IFVucmVjb2duaXplZCBDb250ZW50LVNlY3VyaXR5LVBvbGljeSBk
aXJlY3RpdmUgJ29wdGlvbnMnLgogCi1DT05TT0xFIE1FU1NBR0U6IFJlZnVzZWQgdG8gZXhlY3V0
ZSBpbmxpbmUgc2NyaXB0IGJlY2F1c2UgaXQgdmlvbGF0ZXMgdGhlIGZvbGxvd2luZyBDb250ZW50
IFNlY3VyaXR5IFBvbGljeSBkaXJlY3RpdmU6ICJzY3JpcHQtc3JjIGh0dHA6Ly8xMjcuMC4wLjE6
KiIuCitDT05TT0xFIE1FU1NBR0U6IGxpbmUgOTogUmVmdXNlZCB0byBleGVjdXRlIGlubGluZSBz
Y3JpcHQgYmVjYXVzZSBpdCB2aW9sYXRlcyB0aGUgZm9sbG93aW5nIENvbnRlbnQgU2VjdXJpdHkg
UG9saWN5IGRpcmVjdGl2ZTogInNjcmlwdC1zcmMgaHR0cDovLzEyNy4wLjAuMToqIi4KIAotQ09O
U09MRSBNRVNTQUdFOiBSZWZ1c2VkIHRvIGV4ZWN1dGUgaW5saW5lIGV2ZW50IGhhbmRsZXIgYmVj
YXVzZSBpdCB2aW9sYXRlcyB0aGUgZm9sbG93aW5nIENvbnRlbnQgU2VjdXJpdHkgUG9saWN5IGRp
cmVjdGl2ZTogInNjcmlwdC1zcmMgaHR0cDovLzEyNy4wLjAuMToqIi4KK0NPTlNPTEUgTUVTU0FH
RTogbGluZSA3OiBSZWZ1c2VkIHRvIGV4ZWN1dGUgaW5saW5lIGV2ZW50IGhhbmRsZXIgYmVjYXVz
ZSBpdCB2aW9sYXRlcyB0aGUgZm9sbG93aW5nIENvbnRlbnQgU2VjdXJpdHkgUG9saWN5IGRpcmVj
dGl2ZTogInNjcmlwdC1zcmMgaHR0cDovLzEyNy4wLjAuMToqIi4KIAogVGhpcyB0ZXN0IHBhc3Nl
cyBpZiBpdCBkb2Vzbid0IGFsZXJ0IGZhaWwuCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9odHRw
L3Rlc3RzL3NlY3VyaXR5L2NvbnRlbnRTZWN1cml0eVBvbGljeS9pbmxpbmUtc2NyaXB0LWJsb2Nr
ZWQtamF2YXNjcmlwdC11cmwtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9z
ZWN1cml0eS9jb250ZW50U2VjdXJpdHlQb2xpY3kvaW5saW5lLXNjcmlwdC1ibG9ja2VkLWphdmFz
Y3JpcHQtdXJsLWV4cGVjdGVkLnR4dAppbmRleCBlZDA2MjQ0NjcyODVlODEwZWE2NjQ4MmNjZGY0
OWFmYjQ0MDBmMTM1Li45NTQ1MDFjZGNkZDczYTc5YmE0MmFmYWU2MGQwZWViYmZiN2ZmMTNmIDEw
MDY0NAotLS0gYS9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3NlY3VyaXR5L2NvbnRlbnRTZWN1cml0
eVBvbGljeS9pbmxpbmUtc2NyaXB0LWJsb2NrZWQtamF2YXNjcmlwdC11cmwtZXhwZWN0ZWQudHh0
CisrKyBiL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvc2VjdXJpdHkvY29udGVudFNlY3VyaXR5UG9s
aWN5L2lubGluZS1zY3JpcHQtYmxvY2tlZC1qYXZhc2NyaXB0LXVybC1leHBlY3RlZC50eHQKQEAg
LTQsNiArNCw2IEBAIENPTlNPTEUgTUVTU0FHRTogVW5yZWNvZ25pemVkIENvbnRlbnQtU2VjdXJp
dHktUG9saWN5IGRpcmVjdGl2ZSAnb3B0aW9ucycuCiAKIENPTlNPTEUgTUVTU0FHRTogVW5yZWNv
Z25pemVkIENvbnRlbnQtU2VjdXJpdHktUG9saWN5IGRpcmVjdGl2ZSAnb3B0aW9ucycuCiAKLUNP
TlNPTEUgTUVTU0FHRTogUmVmdXNlZCB0byBleGVjdXRlIEphdmFTY3JpcHQgVVJMIGJlY2F1c2Ug
aXQgdmlvbGF0ZXMgdGhlIGZvbGxvd2luZyBDb250ZW50IFNlY3VyaXR5IFBvbGljeSBkaXJlY3Rp
dmU6ICJzY3JpcHQtc3JjIGh0dHA6Ly8xMjcuMC4wLjE6KiIuCitDT05TT0xFIE1FU1NBR0U6IGxp
bmUgMTogUmVmdXNlZCB0byBleGVjdXRlIEphdmFTY3JpcHQgVVJMIGJlY2F1c2UgaXQgdmlvbGF0
ZXMgdGhlIGZvbGxvd2luZyBDb250ZW50IFNlY3VyaXR5IFBvbGljeSBkaXJlY3RpdmU6ICJzY3Jp
cHQtc3JjIGh0dHA6Ly8xMjcuMC4wLjE6KiIuCiAKIFRoaXMgdGVzdCBwYXNzZXMgaWYgaXQgZG9l
c24ndCBhbGVydCBmYWlsLiAKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvc2Vj
dXJpdHkvY29udGVudFNlY3VyaXR5UG9saWN5L2lubGluZS1zdHlsZS1hdHRyaWJ1dGUtYmxvY2tl
ZC1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3NlY3VyaXR5L2NvbnRlbnRT
ZWN1cml0eVBvbGljeS9pbmxpbmUtc3R5bGUtYXR0cmlidXRlLWJsb2NrZWQtZXhwZWN0ZWQudHh0
CmluZGV4IDczMjU0NjI1MTBhNWI2NzliMTBkZjk1MDM4YmUyYjU4Njc5MTk4ZjEuLmU3YTY4ODMx
NmQzZGNhYmUzM2U4MWNjM2RmMzYzNWRkZTUxODEzZWUgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3Rz
L2h0dHAvdGVzdHMvc2VjdXJpdHkvY29udGVudFNlY3VyaXR5UG9saWN5L2lubGluZS1zdHlsZS1h
dHRyaWJ1dGUtYmxvY2tlZC1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvaHR0cC90ZXN0
cy9zZWN1cml0eS9jb250ZW50U2VjdXJpdHlQb2xpY3kvaW5saW5lLXN0eWxlLWF0dHJpYnV0ZS1i
bG9ja2VkLWV4cGVjdGVkLnR4dApAQCAtMSwzICsxLDMgQEAKLUNPTlNPTEUgTUVTU0FHRTogUmVm
dXNlZCB0byBhcHBseSBpbmxpbmUgc3R5bGUgYmVjYXVzZSBpdCB2aW9sYXRlcyB0aGUgZm9sbG93
aW5nIENvbnRlbnQgU2VjdXJpdHkgUG9saWN5IGRpcmVjdGl2ZTogInN0eWxlLXNyYyAnbm9uZSci
LgorQ09OU09MRSBNRVNTQUdFOiBsaW5lIDEwOiBSZWZ1c2VkIHRvIGFwcGx5IGlubGluZSBzdHls
ZSBiZWNhdXNlIGl0IHZpb2xhdGVzIHRoZSBmb2xsb3dpbmcgQ29udGVudCBTZWN1cml0eSBQb2xp
Y3kgZGlyZWN0aXZlOiAic3R5bGUtc3JjICdub25lJyIuCiAKIFBBU1MKZGlmZiAtLWdpdCBhL0xh
eW91dFRlc3RzL2h0dHAvdGVzdHMvc2VjdXJpdHkvY29udGVudFNlY3VyaXR5UG9saWN5L2lubGlu
ZS1zdHlsZS1ibG9ja2VkLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvc2Vj
dXJpdHkvY29udGVudFNlY3VyaXR5UG9saWN5L2lubGluZS1zdHlsZS1ibG9ja2VkLWV4cGVjdGVk
LnR4dAppbmRleCA3MzI1NDYyNTEwYTViNjc5YjEwZGY5NTAzOGJlMmI1ODY3OTE5OGYxLi41NmQw
OTI4M2QyOTVmNTM3NmVhMjU2ODM3NjJjMzY0ZDc3YTk4MGUwIDEwMDY0NAotLS0gYS9MYXlvdXRU
ZXN0cy9odHRwL3Rlc3RzL3NlY3VyaXR5L2NvbnRlbnRTZWN1cml0eVBvbGljeS9pbmxpbmUtc3R5
bGUtYmxvY2tlZC1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9zZWN1
cml0eS9jb250ZW50U2VjdXJpdHlQb2xpY3kvaW5saW5lLXN0eWxlLWJsb2NrZWQtZXhwZWN0ZWQu
dHh0CkBAIC0xLDMgKzEsMyBAQAotQ09OU09MRSBNRVNTQUdFOiBSZWZ1c2VkIHRvIGFwcGx5IGlu
bGluZSBzdHlsZSBiZWNhdXNlIGl0IHZpb2xhdGVzIHRoZSBmb2xsb3dpbmcgQ29udGVudCBTZWN1
cml0eSBQb2xpY3kgZGlyZWN0aXZlOiAic3R5bGUtc3JjICdub25lJyIuCitDT05TT0xFIE1FU1NB
R0U6IGxpbmUgNDogUmVmdXNlZCB0byBhcHBseSBpbmxpbmUgc3R5bGUgYmVjYXVzZSBpdCB2aW9s
YXRlcyB0aGUgZm9sbG93aW5nIENvbnRlbnQgU2VjdXJpdHkgUG9saWN5IGRpcmVjdGl2ZTogInN0
eWxlLXNyYyAnbm9uZSciLgogCiBQQVNTCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9odHRwL3Rl
c3RzL3NlY3VyaXR5L2NvbnRlbnRTZWN1cml0eVBvbGljeS9qYXZhc2NyaXB0LXVybC1ibG9ja2Vk
LWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvc2VjdXJpdHkvY29udGVudFNl
Y3VyaXR5UG9saWN5L2phdmFzY3JpcHQtdXJsLWJsb2NrZWQtZXhwZWN0ZWQudHh0CmluZGV4IDhl
MmRjMzMzMjE3MzUyZjQ4NTQ0OTQ2ZmUxNDJkNTkwYzhhOTdhZTMuLjFjYTkyNjJiZDUzMjFlYTVm
Y2Y1OTdjMDdlMWMzMTkwODg5ZGMyZDkgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2h0dHAvdGVz
dHMvc2VjdXJpdHkvY29udGVudFNlY3VyaXR5UG9saWN5L2phdmFzY3JpcHQtdXJsLWJsb2NrZWQt
ZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvc2VjdXJpdHkvY29udGVu
dFNlY3VyaXR5UG9saWN5L2phdmFzY3JpcHQtdXJsLWJsb2NrZWQtZXhwZWN0ZWQudHh0CkBAIC00
LDcgKzQsNyBAQCBDT05TT0xFIE1FU1NBR0U6IFVucmVjb2duaXplZCBDb250ZW50LVNlY3VyaXR5
LVBvbGljeSBkaXJlY3RpdmUgJ2FsbG93Jy4KIAogQ09OU09MRSBNRVNTQUdFOiBVbnJlY29nbml6
ZWQgQ29udGVudC1TZWN1cml0eS1Qb2xpY3kgZGlyZWN0aXZlICdhbGxvdycuCiAKLUNPTlNPTEUg
TUVTU0FHRTogUmVmdXNlZCB0byBleGVjdXRlIEphdmFTY3JpcHQgVVJMIGJlY2F1c2UgaXQgdmlv
bGF0ZXMgdGhlIGZvbGxvd2luZyBDb250ZW50IFNlY3VyaXR5IFBvbGljeSBkaXJlY3RpdmU6ICJz
Y3JpcHQtc3JjICdub25lJyIuCitDT05TT0xFIE1FU1NBR0U6IGxpbmUgMTogUmVmdXNlZCB0byBl
eGVjdXRlIEphdmFTY3JpcHQgVVJMIGJlY2F1c2UgaXQgdmlvbGF0ZXMgdGhlIGZvbGxvd2luZyBD
b250ZW50IFNlY3VyaXR5IFBvbGljeSBkaXJlY3RpdmU6ICJzY3JpcHQtc3JjICdub25lJyIuCiAK
IENPTlNPTEUgTUVTU0FHRTogVW5yZWNvZ25pemVkIENvbnRlbnQtU2VjdXJpdHktUG9saWN5IGRp
cmVjdGl2ZSAnYWxsb3cnLgogCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3Nl
Y3VyaXR5L2NvbnRlbnRTZWN1cml0eVBvbGljeS9yZXBvcnQtYW5kLWVuZm9yY2UtZXhwZWN0ZWQu
dHh0IGIvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9zZWN1cml0eS9jb250ZW50U2VjdXJpdHlQb2xp
Y3kvcmVwb3J0LWFuZC1lbmZvcmNlLWV4cGVjdGVkLnR4dAppbmRleCAyZDNiMmFiYTZmZGNhZWM4
ZjgyNDMxMmMxNDdiZjc1YjNlNmU2N2E4Li45YWVmYTRjZjk5YjYzZDBhMTU1YWQ5MzhjNmY4NWE2
ZmM5ZDUxNzlhIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3NlY3VyaXR5L2Nv
bnRlbnRTZWN1cml0eVBvbGljeS9yZXBvcnQtYW5kLWVuZm9yY2UtZXhwZWN0ZWQudHh0CisrKyBi
L0xheW91dFRlc3RzL2h0dHAvdGVzdHMvc2VjdXJpdHkvY29udGVudFNlY3VyaXR5UG9saWN5L3Jl
cG9ydC1hbmQtZW5mb3JjZS1leHBlY3RlZC50eHQKQEAgLTEsNCArMSw0IEBACi1DT05TT0xFIE1F
U1NBR0U6IFtSZXBvcnQgT25seV0gUmVmdXNlZCB0byBleGVjdXRlIGlubGluZSBzY3JpcHQgYmVj
YXVzZSBpdCB2aW9sYXRlcyB0aGUgZm9sbG93aW5nIENvbnRlbnQgU2VjdXJpdHkgUG9saWN5IGRp
cmVjdGl2ZTogInNjcmlwdC1zcmMgJ3NlbGYnIi4KK0NPTlNPTEUgTUVTU0FHRTogbGluZSAzOiBb
UmVwb3J0IE9ubHldIFJlZnVzZWQgdG8gZXhlY3V0ZSBpbmxpbmUgc2NyaXB0IGJlY2F1c2UgaXQg
dmlvbGF0ZXMgdGhlIGZvbGxvd2luZyBDb250ZW50IFNlY3VyaXR5IFBvbGljeSBkaXJlY3RpdmU6
ICJzY3JpcHQtc3JjICdzZWxmJyIuCiAKIEFMRVJUOiBQQVNTCiBDT05TT0xFIE1FU1NBR0U6IFJl
ZnVzZWQgdG8gbG9hZCB0aGUgaW1hZ2UgJ2h0dHA6Ly8xMjcuMC4wLjE6ODAwMC9zZWN1cml0eS9y
ZXNvdXJjZXMvYWJlLnBuZycgYmVjYXVzZSBpdCB2aW9sYXRlcyB0aGUgZm9sbG93aW5nIENvbnRl
bnQgU2VjdXJpdHkgUG9saWN5IGRpcmVjdGl2ZTogImltZy1zcmMgJ25vbmUnIi4KZGlmZiAtLWdp
dCBhL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvc2VjdXJpdHkvY29udGVudFNlY3VyaXR5UG9saWN5
L3JlcG9ydC1vbmx5LWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvc2VjdXJp
dHkvY29udGVudFNlY3VyaXR5UG9saWN5L3JlcG9ydC1vbmx5LWV4cGVjdGVkLnR4dAppbmRleCA3
NGRjNWQ2MGY4OGY5MTcyYzJiNzUwNzkxNWM1N2ViZTAzMWI3M2QyLi5hMWVkZjNhZWExYTczODUw
OGNmMjFiZGZjMDgzYTlhMDIxODU5NzU2IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9odHRwL3Rl
c3RzL3NlY3VyaXR5L2NvbnRlbnRTZWN1cml0eVBvbGljeS9yZXBvcnQtb25seS1leHBlY3RlZC50
eHQKKysrIGIvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9zZWN1cml0eS9jb250ZW50U2VjdXJpdHlQ
b2xpY3kvcmVwb3J0LW9ubHktZXhwZWN0ZWQudHh0CkBAIC0xLDQgKzEsNCBAQAotQ09OU09MRSBN
RVNTQUdFOiBbUmVwb3J0IE9ubHldIFJlZnVzZWQgdG8gZXhlY3V0ZSBpbmxpbmUgc2NyaXB0IGJl
Y2F1c2UgaXQgdmlvbGF0ZXMgdGhlIGZvbGxvd2luZyBDb250ZW50IFNlY3VyaXR5IFBvbGljeSBk
aXJlY3RpdmU6ICJzY3JpcHQtc3JjICdzZWxmJyIuCitDT05TT0xFIE1FU1NBR0U6IGxpbmUgMjog
W1JlcG9ydCBPbmx5XSBSZWZ1c2VkIHRvIGV4ZWN1dGUgaW5saW5lIHNjcmlwdCBiZWNhdXNlIGl0
IHZpb2xhdGVzIHRoZSBmb2xsb3dpbmcgQ29udGVudCBTZWN1cml0eSBQb2xpY3kgZGlyZWN0aXZl
OiAic2NyaXB0LXNyYyAnc2VsZiciLgogCiBBTEVSVDogUEFTUwogQ1NQIHJlcG9ydCByZWNlaXZl
ZDoKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvc2VjdXJpdHkvY29udGVudFNl
Y3VyaXR5UG9saWN5L3JlcG9ydC1vbmx5LWZyb20taGVhZGVyLWV4cGVjdGVkLnR4dCBiL0xheW91
dFRlc3RzL2h0dHAvdGVzdHMvc2VjdXJpdHkvY29udGVudFNlY3VyaXR5UG9saWN5L3JlcG9ydC1v
bmx5LWZyb20taGVhZGVyLWV4cGVjdGVkLnR4dAppbmRleCBhY2UxNjQ2ODc1YTYyN2MwYzlkZjNm
MmEwZWViYWE1OTkzN2NmM2IwLi5jZWMyYzI4ZTc3ZWM4Y2Y5YzcyOGMxYzRmZWU4MDVjZDMzNGFl
YzNkIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3NlY3VyaXR5L2NvbnRlbnRT
ZWN1cml0eVBvbGljeS9yZXBvcnQtb25seS1mcm9tLWhlYWRlci1leHBlY3RlZC50eHQKKysrIGIv
TGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9zZWN1cml0eS9jb250ZW50U2VjdXJpdHlQb2xpY3kvcmVw
b3J0LW9ubHktZnJvbS1oZWFkZXItZXhwZWN0ZWQudHh0CkBAIC0xLDQgKzEsNCBAQAotQ09OU09M
RSBNRVNTQUdFOiBbUmVwb3J0IE9ubHldIFJlZnVzZWQgdG8gZXhlY3V0ZSBpbmxpbmUgc2NyaXB0
IGJlY2F1c2UgaXQgdmlvbGF0ZXMgdGhlIGZvbGxvd2luZyBDb250ZW50IFNlY3VyaXR5IFBvbGlj
eSBkaXJlY3RpdmU6ICJzY3JpcHQtc3JjICdzZWxmJyIuCitDT05TT0xFIE1FU1NBR0U6IGxpbmUg
MTogW1JlcG9ydCBPbmx5XSBSZWZ1c2VkIHRvIGV4ZWN1dGUgaW5saW5lIHNjcmlwdCBiZWNhdXNl
IGl0IHZpb2xhdGVzIHRoZSBmb2xsb3dpbmcgQ29udGVudCBTZWN1cml0eSBQb2xpY3kgZGlyZWN0
aXZlOiAic2NyaXB0LXNyYyAnc2VsZiciLgogCiBBTEVSVDogUEFTUwogQ1NQIHJlcG9ydCByZWNl
aXZlZDoKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvc2VjdXJpdHkvY29udGVu
dFNlY3VyaXR5UG9saWN5L3JlcG9ydC11cmktZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaHR0
cC90ZXN0cy9zZWN1cml0eS9jb250ZW50U2VjdXJpdHlQb2xpY3kvcmVwb3J0LXVyaS1leHBlY3Rl
ZC50eHQKaW5kZXggYjgwNTBmZjIwMzAxN2ZkZThhMmJjZWYwYzRkN2FkMTAwMzQxNmJiZC4uNTZh
NmVmNjIzMTVkMWVhZTVhYmQwZDllODAxNDM0Mzk4Y2FkODAwZiAxMDA2NDQKLS0tIGEvTGF5b3V0
VGVzdHMvaHR0cC90ZXN0cy9zZWN1cml0eS9jb250ZW50U2VjdXJpdHlQb2xpY3kvcmVwb3J0LXVy
aS1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9zZWN1cml0eS9jb250
ZW50U2VjdXJpdHlQb2xpY3kvcmVwb3J0LXVyaS1leHBlY3RlZC50eHQKQEAgLTEsNCArMSw0IEBA
Ci1DT05TT0xFIE1FU1NBR0U6IFJlZnVzZWQgdG8gZXhlY3V0ZSBpbmxpbmUgc2NyaXB0IGJlY2F1
c2UgaXQgdmlvbGF0ZXMgdGhlIGZvbGxvd2luZyBDb250ZW50IFNlY3VyaXR5IFBvbGljeSBkaXJl
Y3RpdmU6ICJzY3JpcHQtc3JjICdzZWxmJyIuCitDT05TT0xFIE1FU1NBR0U6IGxpbmUgMjogUmVm
dXNlZCB0byBleGVjdXRlIGlubGluZSBzY3JpcHQgYmVjYXVzZSBpdCB2aW9sYXRlcyB0aGUgZm9s
bG93aW5nIENvbnRlbnQgU2VjdXJpdHkgUG9saWN5IGRpcmVjdGl2ZTogInNjcmlwdC1zcmMgJ3Nl
bGYnIi4KIAogQ1NQIHJlcG9ydCByZWNlaXZlZDoKIENPTlRFTlRfVFlQRTogYXBwbGljYXRpb24v
anNvbgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9zZWN1cml0eS9jb250ZW50
U2VjdXJpdHlQb2xpY3kvcmVwb3J0LXVyaS1mcm9tLWNoaWxkLWZyYW1lLWV4cGVjdGVkLnR4dCBi
L0xheW91dFRlc3RzL2h0dHAvdGVzdHMvc2VjdXJpdHkvY29udGVudFNlY3VyaXR5UG9saWN5L3Jl
cG9ydC11cmktZnJvbS1jaGlsZC1mcmFtZS1leHBlY3RlZC50eHQKaW5kZXggMjVkZThlMTk3NTRh
MjlhYzlmY2UyMDQ5NjM0ZDdhZjJmZDE1NzlmNy4uODQzMGMzMDk4MTViYjEyNGI3MGI2Mzg3MGU0
NWM1Y2IwYzRjNDBjMiAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9zZWN1cml0
eS9jb250ZW50U2VjdXJpdHlQb2xpY3kvcmVwb3J0LXVyaS1mcm9tLWNoaWxkLWZyYW1lLWV4cGVj
dGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3NlY3VyaXR5L2NvbnRlbnRTZWN1
cml0eVBvbGljeS9yZXBvcnQtdXJpLWZyb20tY2hpbGQtZnJhbWUtZXhwZWN0ZWQudHh0CkBAIC0x
LDQgKzEsNCBAQAotQ09OU09MRSBNRVNTQUdFOiBSZWZ1c2VkIHRvIGV4ZWN1dGUgaW5saW5lIHNj
cmlwdCBiZWNhdXNlIGl0IHZpb2xhdGVzIHRoZSBmb2xsb3dpbmcgQ29udGVudCBTZWN1cml0eSBQ
b2xpY3kgZGlyZWN0aXZlOiAic2NyaXB0LXNyYyAnc2VsZiciLgorQ09OU09MRSBNRVNTQUdFOiBs
aW5lIDI6IFJlZnVzZWQgdG8gZXhlY3V0ZSBpbmxpbmUgc2NyaXB0IGJlY2F1c2UgaXQgdmlvbGF0
ZXMgdGhlIGZvbGxvd2luZyBDb250ZW50IFNlY3VyaXR5IFBvbGljeSBkaXJlY3RpdmU6ICJzY3Jp
cHQtc3JjICdzZWxmJyIuCiAKIAogCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9odHRwL3Rlc3Rz
L3NlY3VyaXR5L2NvbnRlbnRTZWN1cml0eVBvbGljeS9yZXNvdXJjZXMvaW5qZWN0LXNjcmlwdC5q
cyBiL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvc2VjdXJpdHkvY29udGVudFNlY3VyaXR5UG9saWN5
L3Jlc291cmNlcy9pbmplY3Qtc2NyaXB0LmpzCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjc1NmJhZmZlOWVlOTg0ZTQ1
NzU5YTFjMzk1NDk5Njg4YWFiODJmMWIKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9o
dHRwL3Rlc3RzL3NlY3VyaXR5L2NvbnRlbnRTZWN1cml0eVBvbGljeS9yZXNvdXJjZXMvaW5qZWN0
LXNjcmlwdC5qcwpAQCAtMCwwICsxLDUgQEAKK2RvY3VtZW50LndyaXRlKCI8c2NyaXB0PmFsZXJ0
KCdQYXNzIDEgb2YgMicpOzwvc2NyaXB0PiIpOworCit2YXIgcyA9IGRvY3VtZW50LmNyZWF0ZUVs
ZW1lbnQoJ3NjcmlwdCcpOworcy5pbm5lclRleHQgPSAiYWxlcnQoJ1Bhc3MgMiBvZiAyJyk7IjsK
K2RvY3VtZW50LmJvZHkuYXBwZW5kQ2hpbGQocyk7CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9o
dHRwL3Rlc3RzL3NlY3VyaXR5L2NvbnRlbnRTZWN1cml0eVBvbGljeS9zY3JpcHQtc3JjLW5vbmUt
aW5saW5lLWV2ZW50LWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvc2VjdXJp
dHkvY29udGVudFNlY3VyaXR5UG9saWN5L3NjcmlwdC1zcmMtbm9uZS1pbmxpbmUtZXZlbnQtZXhw
ZWN0ZWQudHh0CmluZGV4IGQzMWIxY2VmYzBiZjdmODI4OGE5MzE3NjFkODAyMTI5ZTYyOTUwMmYu
LmZlMWNjMmZjNmRlMDkyYTgxZGQ0NTgzZTUwZDA3MzQ2NjMwODMzMjMgMTAwNjQ0Ci0tLSBhL0xh
eW91dFRlc3RzL2h0dHAvdGVzdHMvc2VjdXJpdHkvY29udGVudFNlY3VyaXR5UG9saWN5L3Njcmlw
dC1zcmMtbm9uZS1pbmxpbmUtZXZlbnQtZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL2h0
dHAvdGVzdHMvc2VjdXJpdHkvY29udGVudFNlY3VyaXR5UG9saWN5L3NjcmlwdC1zcmMtbm9uZS1p
bmxpbmUtZXZlbnQtZXhwZWN0ZWQudHh0CkBAIC0xLDQgKzEsNCBAQAotQ09OU09MRSBNRVNTQUdF
OiBSZWZ1c2VkIHRvIGV4ZWN1dGUgaW5saW5lIGV2ZW50IGhhbmRsZXIgYmVjYXVzZSBpdCB2aW9s
YXRlcyB0aGUgZm9sbG93aW5nIENvbnRlbnQgU2VjdXJpdHkgUG9saWN5IGRpcmVjdGl2ZTogInNj
cmlwdC1zcmMgJ25vbmUnIi4KK0NPTlNPTEUgTUVTU0FHRTogbGluZSAzOiBSZWZ1c2VkIHRvIGV4
ZWN1dGUgaW5saW5lIGV2ZW50IGhhbmRsZXIgYmVjYXVzZSBpdCB2aW9sYXRlcyB0aGUgZm9sbG93
aW5nIENvbnRlbnQgU2VjdXJpdHkgUG9saWN5IGRpcmVjdGl2ZTogInNjcmlwdC1zcmMgJ25vbmUn
Ii4KIAogICAKIApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9zZWN1cml0eS9j
b250ZW50U2VjdXJpdHlQb2xpY3kvc3JjZG9jLWRvZXNudC1ieXBhc3Mtc2NyaXB0LXNyYy1leHBl
Y3RlZC50eHQgYi9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3NlY3VyaXR5L2NvbnRlbnRTZWN1cml0
eVBvbGljeS9zcmNkb2MtZG9lc250LWJ5cGFzcy1zY3JpcHQtc3JjLWV4cGVjdGVkLnR4dAppbmRl
eCA3YTVmZGUzNzBlYTZlMDRjNmQ2ZTQ5NDBlOGQ3YWRiMDAwYjYzMTY5Li4xYTI5NDc5ZDJjMmQ0
YmMxNTJmNTI3ZjNjMzMwMzNhMTE4OTZlMWMxIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9odHRw
L3Rlc3RzL3NlY3VyaXR5L2NvbnRlbnRTZWN1cml0eVBvbGljeS9zcmNkb2MtZG9lc250LWJ5cGFz
cy1zY3JpcHQtc3JjLWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3Nl
Y3VyaXR5L2NvbnRlbnRTZWN1cml0eVBvbGljeS9zcmNkb2MtZG9lc250LWJ5cGFzcy1zY3JpcHQt
c3JjLWV4cGVjdGVkLnR4dApAQCAtMSwzICsxLDMgQEAKLUNPTlNPTEUgTUVTU0FHRTogUmVmdXNl
ZCB0byBleGVjdXRlIGlubGluZSBzY3JpcHQgYmVjYXVzZSBpdCB2aW9sYXRlcyB0aGUgZm9sbG93
aW5nIENvbnRlbnQgU2VjdXJpdHkgUG9saWN5IGRpcmVjdGl2ZTogInNjcmlwdC1zcmMgJ3NlbGYn
Ii4KK0NPTlNPTEUgTUVTU0FHRTogbGluZSAxOiBSZWZ1c2VkIHRvIGV4ZWN1dGUgaW5saW5lIHNj
cmlwdCBiZWNhdXNlIGl0IHZpb2xhdGVzIHRoZSBmb2xsb3dpbmcgQ29udGVudCBTZWN1cml0eSBQ
b2xpY3kgZGlyZWN0aXZlOiAic2NyaXB0LXNyYyAnc2VsZiciLgogCiBUaGlzIHRlc3QgcGFzc2Vz
IGlmIGl0IGRvZXNuJ3QgYWxlcnQgZmFpbC4gCg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>142786</attachid>
            <date>2012-05-18 14:32:10 -0700</date>
            <delta_ts>2012-05-18 14:58:17 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-86848-20120518233209.patch</filename>
            <type>text/plain</type>
            <size>45996</size>
            <attacher name="Mike West">mkwst</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTE3NTUzCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggZDk0ZjFlNTFmMzQ4ZDA0
Mjg4MWZhNGE3MTVlMjA5M2JjNjY2ZDRmMC4uNGJkZWJlYjFhNTVmMTgzNWE3Njk0MWZjNGI3YjFl
OTRkY2QzNGZlNCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDU5IEBACisyMDEyLTA1LTE4ICBNaWtl
IFdlc3QgIDxta3dzdEBjaHJvbWl1bS5vcmc+CisKKyAgICAgICAgSW5saW5lIHNjcmlwdCBhbmQg
c3R5bGUgYmxvY2tlZCBieSBDb250ZW50IFNlY3VyaXR5IFBvbGljeSBzaG91bGQgcHJvdmlkZSBt
b3JlIGRldGFpbGVkIGNvbnNvbGUgZXJyb3JzLgorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0
Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9ODY4NDgKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkg
KE9PUFMhKS4KKworICAgICAgICBUaGlzIGNoYW5nZSBhZGRzIGEgVVJMIGFuZCBsaW5lIG51bWJl
ciBmb3IgY29udGV4dCB0byBlYWNoIGNhbGwgdG8KKyAgICAgICAgYENvbnRlbnRTZWN1cml0eVBv
bGljeTo6YWxsb3dJbmxpbmUqYCwgYW5kIHBpcGVzIGl0IHRocm91Z2ggdG8gdGhlCisgICAgICAg
IGNvbnNvbGUgbWVzc2FnZSBnZW5lcmF0aW9uIGluIGBDU1BEaXJlY3RpdmVMaXN0OjpyZXBvcnRW
aW9sYXRpb25gLgorCisgICAgICAgIFRlc3RzOiBodHRwL3Rlc3RzL3NlY3VyaXR5L2NvbnRlbnRT
ZWN1cml0eVBvbGljeS9pbmplY3RlZC1pbmxpbmUtc2NyaXB0LWFsbG93ZWQuaHRtbAorICAgICAg
ICAgICAgICAgaHR0cC90ZXN0cy9zZWN1cml0eS9jb250ZW50U2VjdXJpdHlQb2xpY3kvaW5qZWN0
ZWQtaW5saW5lLXNjcmlwdC1ibG9ja2VkLmh0bWwKKworICAgICAgICAqIGJpbmRpbmdzL1Njcmlw
dENvbnRyb2xsZXJCYXNlLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlNjcmlwdENvbnRyb2xsZXI6
OmV4ZWN1dGVJZkphdmFTY3JpcHRVUkwpOgorICAgICAgICAqIGJpbmRpbmdzL2pzL0pTTGF6eUV2
ZW50TGlzdGVuZXIuY3BwOgorICAgICAgICAoV2ViQ29yZTo6SlNMYXp5RXZlbnRMaXN0ZW5lcjo6
aW5pdGlhbGl6ZUpTRnVuY3Rpb24pOgorICAgICAgICAqIGJpbmRpbmdzL3Y4L1Y4TGF6eUV2ZW50
TGlzdGVuZXIuY3BwOgorICAgICAgICAoV2ViQ29yZTo6VjhMYXp5RXZlbnRMaXN0ZW5lcjo6cHJl
cGFyZUxpc3RlbmVyT2JqZWN0KToKKyAgICAgICAgKiBkb20vU2NyaXB0RWxlbWVudC5jcHA6Cisg
ICAgICAgIChXZWJDb3JlOjpTY3JpcHRFbGVtZW50OjpTY3JpcHRFbGVtZW50KToKKyAgICAgICAg
KFdlYkNvcmU6OlNjcmlwdEVsZW1lbnQ6OmV4ZWN1dGVTY3JpcHQpOgorICAgICAgICAqIGRvbS9T
Y3JpcHRFbGVtZW50Lmg6CisgICAgICAgIChTY3JpcHRFbGVtZW50KToKKyAgICAgICAgKiBkb20v
U3R5bGVFbGVtZW50LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlN0eWxlRWxlbWVudDo6U3R5bGVF
bGVtZW50KToKKyAgICAgICAgKFdlYkNvcmU6OlN0eWxlRWxlbWVudDo6Y3JlYXRlU2hlZXQpOgor
ICAgICAgICAqIGRvbS9TdHlsZUVsZW1lbnQuaDoKKyAgICAgICAgKFN0eWxlRWxlbWVudCk6Cisg
ICAgICAgICogZG9tL1N0eWxlZEVsZW1lbnQuY3BwOgorICAgICAgICAoV2ViQ29yZTo6U3R5bGVk
RWxlbWVudDo6U3R5bGVkRWxlbWVudCk6CisgICAgICAgIChXZWJDb3JlKToKKyAgICAgICAgKFdl
YkNvcmU6OlN0eWxlZEVsZW1lbnQ6OnN0eWxlKToKKyAgICAgICAgKFdlYkNvcmU6OlN0eWxlZEVs
ZW1lbnQ6OnN0eWxlQXR0cmlidXRlQ2hhbmdlZCk6CisgICAgICAgICogZG9tL1N0eWxlZEVsZW1l
bnQuaDoKKyAgICAgICAgKFN0eWxlZEVsZW1lbnQpOgorICAgICAgICAqIHBhZ2UvQ29udGVudFNl
Y3VyaXR5UG9saWN5LmNwcDoKKyAgICAgICAgKENTUERpcmVjdGl2ZUxpc3QpOgorICAgICAgICAo
V2ViQ29yZTo6Q1NQRGlyZWN0aXZlTGlzdDo6cmVwb3J0VmlvbGF0aW9uKToKKyAgICAgICAgKFdl
YkNvcmU6OkNTUERpcmVjdGl2ZUxpc3Q6OmNoZWNrSW5saW5lQW5kUmVwb3J0VmlvbGF0aW9uKToK
KyAgICAgICAgKFdlYkNvcmU6OkNTUERpcmVjdGl2ZUxpc3Q6OmNoZWNrRXZhbEFuZFJlcG9ydFZp
b2xhdGlvbik6CisgICAgICAgIChXZWJDb3JlOjpDU1BEaXJlY3RpdmVMaXN0OjphbGxvd0phdmFT
Y3JpcHRVUkxzKToKKyAgICAgICAgKFdlYkNvcmU6OkNTUERpcmVjdGl2ZUxpc3Q6OmFsbG93SW5s
aW5lRXZlbnRIYW5kbGVycyk6CisgICAgICAgIChXZWJDb3JlOjpDU1BEaXJlY3RpdmVMaXN0Ojph
bGxvd0lubGluZVNjcmlwdCk6CisgICAgICAgIChXZWJDb3JlOjpDU1BEaXJlY3RpdmVMaXN0Ojph
bGxvd0lubGluZVN0eWxlKToKKyAgICAgICAgKFdlYkNvcmU6OkNTUERpcmVjdGl2ZUxpc3Q6OmFs
bG93RXZhbCk6CisgICAgICAgIChXZWJDb3JlKToKKyAgICAgICAgKFdlYkNvcmU6OmlzQWxsb3dl
ZEJ5QWxsKToKKyAgICAgICAgKFdlYkNvcmU6OkNvbnRlbnRTZWN1cml0eVBvbGljeTo6YWxsb3dK
YXZhU2NyaXB0VVJMcyk6CisgICAgICAgIChXZWJDb3JlOjpDb250ZW50U2VjdXJpdHlQb2xpY3k6
OmFsbG93SW5saW5lRXZlbnRIYW5kbGVycyk6CisgICAgICAgIChXZWJDb3JlOjpDb250ZW50U2Vj
dXJpdHlQb2xpY3k6OmFsbG93SW5saW5lU2NyaXB0KToKKyAgICAgICAgKFdlYkNvcmU6OkNvbnRl
bnRTZWN1cml0eVBvbGljeTo6YWxsb3dJbmxpbmVTdHlsZSk6CisgICAgICAgICogcGFnZS9Db250
ZW50U2VjdXJpdHlQb2xpY3kuaDoKKyAgICAgICAgKFdURik6CisKIDIwMTItMDUtMTcgIENhcmxv
cyBHYXJjaWEgQ2FtcG9zICA8Y2dhcmNpYUBpZ2FsaWEuY29tPgogCiAgICAgICAgIFtHVEtdIEtV
Ukw6OmZpbGVTeXN0ZW1QYXRoKCkgc2hvdWxkIHN0cmlwIHRoZSBxdWVyeSBvZiB0aGUgdXJpCmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9TY3JpcHRDb250cm9sbGVyQmFzZS5j
cHAgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9TY3JpcHRDb250cm9sbGVyQmFzZS5jcHAKaW5k
ZXggODU1MTU4YWZjM2VmNzkwMmYyZTYyZWU5ZTk2ZjE1ZDI4OWM3OTBjMi4uOWIwMDZkMmMyMDZi
MGM0NGI2ODNlZGE0NzhiZjBkZjczMmQ1NWFjMyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUv
YmluZGluZ3MvU2NyaXB0Q29udHJvbGxlckJhc2UuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2Jp
bmRpbmdzL1NjcmlwdENvbnRyb2xsZXJCYXNlLmNwcApAQCAtMzIsNiArMzIsNyBAQAogI2luY2x1
ZGUgIlNlY3VyaXR5T3JpZ2luLmgiCiAjaW5jbHVkZSAiU2V0dGluZ3MuaCIKICNpbmNsdWRlICJV
c2VyR2VzdHVyZUluZGljYXRvci5oIgorI2luY2x1ZGUgPHd0Zi90ZXh0L1RleHRQb3NpdGlvbi5o
PgogCiBuYW1lc3BhY2UgV2ViQ29yZSB7CiAKQEAgLTc1LDcgKzc2LDcgQEAgYm9vbCBTY3JpcHRD
b250cm9sbGVyOjpleGVjdXRlSWZKYXZhU2NyaXB0VVJMKGNvbnN0IEtVUkwmIHVybCwgU2hvdWxk
UmVwbGFjZURvY3UKIAogICAgIGlmICghbV9mcmFtZS0+cGFnZSgpCiAgICAgICAgIHx8ICFtX2Zy
YW1lLT5wYWdlKCktPmphdmFTY3JpcHRVUkxzQXJlQWxsb3dlZCgpCi0gICAgICAgIHx8ICFtX2Zy
YW1lLT5kb2N1bWVudCgpLT5jb250ZW50U2VjdXJpdHlQb2xpY3koKS0+YWxsb3dKYXZhU2NyaXB0
VVJMcygpCisgICAgICAgIHx8ICFtX2ZyYW1lLT5kb2N1bWVudCgpLT5jb250ZW50U2VjdXJpdHlQ
b2xpY3koKS0+YWxsb3dKYXZhU2NyaXB0VVJMcyhtX2ZyYW1lLT5kb2N1bWVudCgpLT51cmwoKSwg
ZXZlbnRIYW5kbGVyUG9zaXRpb24oKS5tX2xpbmUpCiAgICAgICAgIHx8IG1fZnJhbWUtPmluVmll
d1NvdXJjZU1vZGUoKSkKICAgICAgICAgcmV0dXJuIHRydWU7CiAKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0pTTGF6eUV2ZW50TGlzdGVuZXIuY3BwIGIvU291cmNlL1dl
YkNvcmUvYmluZGluZ3MvanMvSlNMYXp5RXZlbnRMaXN0ZW5lci5jcHAKaW5kZXggZjExYmY5MDBj
MWQwZDUwZDFjN2FjNWM4YmZjNGJiM2QwNDFkYWFhMS4uNjRmOWNiOWMwNDk5YzlmYjM4MmVjMjNm
NTA1YWIyMmJhYzg5NDFiMSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMv
SlNMYXp5RXZlbnRMaXN0ZW5lci5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMv
SlNMYXp5RXZlbnRMaXN0ZW5lci5jcHAKQEAgLTgwLDcgKzgwLDcgQEAgSlNPYmplY3QqIEpTTGF6
eUV2ZW50TGlzdGVuZXI6OmluaXRpYWxpemVKU0Z1bmN0aW9uKFNjcmlwdEV4ZWN1dGlvbkNvbnRl
eHQqIGV4ZWMKICAgICBpZiAoIWRvY3VtZW50LT5mcmFtZSgpKQogICAgICAgICByZXR1cm4gMDsK
IAotICAgIGlmICghZG9jdW1lbnQtPmNvbnRlbnRTZWN1cml0eVBvbGljeSgpLT5hbGxvd0lubGlu
ZUV2ZW50SGFuZGxlcnMoKSkKKyAgICBpZiAoIWRvY3VtZW50LT5jb250ZW50U2VjdXJpdHlQb2xp
Y3koKS0+YWxsb3dJbmxpbmVFdmVudEhhbmRsZXJzKG1fc291cmNlVVJMLCBtX3Bvc2l0aW9uLm1f
bGluZSkpCiAgICAgICAgIHJldHVybiAwOwogCiAgICAgU2NyaXB0Q29udHJvbGxlciogc2NyaXB0
ID0gZG9jdW1lbnQtPmZyYW1lKCktPnNjcmlwdCgpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNv
cmUvYmluZGluZ3MvdjgvVjhMYXp5RXZlbnRMaXN0ZW5lci5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9i
aW5kaW5ncy92OC9WOExhenlFdmVudExpc3RlbmVyLmNwcAppbmRleCA4NDBkZTdmZDJiNDdhMTNl
NzExNTc5NmM5NTNmNjRkNzBlMDdmYTk3Li4wNjZlZWQxOWUzN2JkMjUzOTkwNGFjNTYyNTUyOTAz
ZWFmNTI5ZjU5IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy92OC9WOExhenlF
dmVudExpc3RlbmVyLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy92OC9WOExhenlF
dmVudExpc3RlbmVyLmNwcApAQCAtMTA1LDcgKzEwNSw3IEBAIHZvaWQgVjhMYXp5RXZlbnRMaXN0
ZW5lcjo6cHJlcGFyZUxpc3RlbmVyT2JqZWN0KFNjcmlwdEV4ZWN1dGlvbkNvbnRleHQqIGNvbnRl
eHQpCiAgICAgaWYgKGhhc0V4aXN0aW5nTGlzdGVuZXJPYmplY3QoKSkKICAgICAgICAgcmV0dXJu
OwogCi0gICAgaWYgKGNvbnRleHQtPmlzRG9jdW1lbnQoKSAmJiAhc3RhdGljX2Nhc3Q8RG9jdW1l
bnQqPihjb250ZXh0KS0+Y29udGVudFNlY3VyaXR5UG9saWN5KCktPmFsbG93SW5saW5lRXZlbnRI
YW5kbGVycygpKQorICAgIGlmIChjb250ZXh0LT5pc0RvY3VtZW50KCkgJiYgIXN0YXRpY19jYXN0
PERvY3VtZW50Kj4oY29udGV4dCktPmNvbnRlbnRTZWN1cml0eVBvbGljeSgpLT5hbGxvd0lubGlu
ZUV2ZW50SGFuZGxlcnMobV9zb3VyY2VVUkwsIG1fcG9zaXRpb24ubV9saW5lKSkKICAgICAgICAg
cmV0dXJuOwogCiAgICAgdjg6OkhhbmRsZVNjb3BlIGhhbmRsZVNjb3BlOwpkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYkNvcmUvZG9tL1NjcmlwdEVsZW1lbnQuY3BwIGIvU291cmNlL1dlYkNvcmUvZG9t
L1NjcmlwdEVsZW1lbnQuY3BwCmluZGV4IGJkYzFmY2RmY2YxMjNkYzU1MTAzODlkMzNjNzI0YTI5
NjliNzg3M2UuLjcxM2ViYWExOWU2MWFiOGRlYmE2NTg4ZDAwMzY5YWNhNDU5YzE0ZjkgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2RvbS9TY3JpcHRFbGVtZW50LmNwcAorKysgYi9Tb3VyY2Uv
V2ViQ29yZS9kb20vU2NyaXB0RWxlbWVudC5jcHAKQEAgLTQxLDEyICs0MSwxNCBAQAogI2luY2x1
ZGUgIlNjcmlwdFJ1bm5lci5oIgogI2luY2x1ZGUgIlNjcmlwdFNvdXJjZUNvZGUuaCIKICNpbmNs
dWRlICJTY3JpcHRWYWx1ZS5oIgorI2luY2x1ZGUgIlNjcmlwdGFibGVEb2N1bWVudFBhcnNlci5o
IgogI2luY2x1ZGUgIlNlY3VyaXR5T3JpZ2luLmgiCiAjaW5jbHVkZSAiU2V0dGluZ3MuaCIKICNp
bmNsdWRlICJUZXh0LmgiCiAjaW5jbHVkZSA8d3RmL1N0ZExpYkV4dHJhcy5oPgogI2luY2x1ZGUg
PHd0Zi90ZXh0L1N0cmluZ0J1aWxkZXIuaD4KICNpbmNsdWRlIDx3dGYvdGV4dC9TdHJpbmdIYXNo
Lmg+CisjaW5jbHVkZSA8d3RmL3RleHQvVGV4dFBvc2l0aW9uLmg+CiAKICNpZiBFTkFCTEUoU1ZH
KQogI2luY2x1ZGUgIlNWR05hbWVzLmgiCkBAIC01OCw2ICs2MCw3IEBAIG5hbWVzcGFjZSBXZWJD
b3JlIHsKIFNjcmlwdEVsZW1lbnQ6OlNjcmlwdEVsZW1lbnQoRWxlbWVudCogZWxlbWVudCwgYm9v
bCBwYXJzZXJJbnNlcnRlZCwgYm9vbCBhbHJlYWR5U3RhcnRlZCkKICAgICA6IG1fZWxlbWVudChl
bGVtZW50KQogICAgICwgbV9jYWNoZWRTY3JpcHQoMCkKKyAgICAsIG1fc3RhcnRMaW5lTnVtYmVy
KFdURjo6T3JkaW5hbE51bWJlcjo6YmVmb3JlRmlyc3QoKSkKICAgICAsIG1fcGFyc2VySW5zZXJ0
ZWQocGFyc2VySW5zZXJ0ZWQpCiAgICAgLCBtX2lzRXh0ZXJuYWxTY3JpcHQoZmFsc2UpCiAgICAg
LCBtX2FscmVhZHlTdGFydGVkKGFscmVhZHlTdGFydGVkKQpAQCAtNzAsNiArNzMsOCBAQCBTY3Jp
cHRFbGVtZW50OjpTY3JpcHRFbGVtZW50KEVsZW1lbnQqIGVsZW1lbnQsIGJvb2wgcGFyc2VySW5z
ZXJ0ZWQsIGJvb2wgYWxyZWFkeQogICAgICwgbV9yZXF1ZXN0VXNlc0FjY2Vzc0NvbnRyb2woZmFs
c2UpCiB7CiAgICAgQVNTRVJUKG1fZWxlbWVudCk7CisgICAgaWYgKG1fZWxlbWVudC0+ZG9jdW1l
bnQoKS0+c2NyaXB0YWJsZURvY3VtZW50UGFyc2VyKCkpCisgICAgICAgIG1fc3RhcnRMaW5lTnVt
YmVyID0gbV9lbGVtZW50LT5kb2N1bWVudCgpLT5zY3JpcHRhYmxlRG9jdW1lbnRQYXJzZXIoKS0+
bGluZU51bWJlcigpOwogfQogCiBTY3JpcHRFbGVtZW50Ojp+U2NyaXB0RWxlbWVudCgpCkBAIC0y
NzYsNyArMjgxLDcgQEAgdm9pZCBTY3JpcHRFbGVtZW50OjpleGVjdXRlU2NyaXB0KGNvbnN0IFNj
cmlwdFNvdXJjZUNvZGUmIHNvdXJjZUNvZGUpCiAgICAgaWYgKHNvdXJjZUNvZGUuaXNFbXB0eSgp
KQogICAgICAgICByZXR1cm47CiAKLSAgICBpZiAoIW1faXNFeHRlcm5hbFNjcmlwdCAmJiAhbV9l
bGVtZW50LT5kb2N1bWVudCgpLT5jb250ZW50U2VjdXJpdHlQb2xpY3koKS0+YWxsb3dJbmxpbmVT
Y3JpcHQoKSkKKyAgICBpZiAoIW1faXNFeHRlcm5hbFNjcmlwdCAmJiAhbV9lbGVtZW50LT5kb2N1
bWVudCgpLT5jb250ZW50U2VjdXJpdHlQb2xpY3koKS0+YWxsb3dJbmxpbmVTY3JpcHQobV9lbGVt
ZW50LT5kb2N1bWVudCgpLT51cmwoKSwgbV9zdGFydExpbmVOdW1iZXIpKQogICAgICAgICByZXR1
cm47CiAKICAgICBSZWZQdHI8RG9jdW1lbnQ+IGRvY3VtZW50ID0gbV9lbGVtZW50LT5kb2N1bWVu
dCgpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvZG9tL1NjcmlwdEVsZW1lbnQuaCBiL1Nv
dXJjZS9XZWJDb3JlL2RvbS9TY3JpcHRFbGVtZW50LmgKaW5kZXggNmMwODI1OGU2NTY1ZDA4NGQy
YjY0NDljYjJlMjUzOGMxYWI4OTgzYS4uOTExYWNjYTcyZDBkZjU0NjQwMmU0ZmEzMjIwNzc2Yjgz
MDk3ZjBkOSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvZG9tL1NjcmlwdEVsZW1lbnQuaAor
KysgYi9Tb3VyY2UvV2ViQ29yZS9kb20vU2NyaXB0RWxlbWVudC5oCkBAIC05Myw2ICs5Myw3IEBA
IHByaXZhdGU6CiAKICAgICBFbGVtZW50KiBtX2VsZW1lbnQ7CiAgICAgQ2FjaGVkUmVzb3VyY2VI
YW5kbGU8Q2FjaGVkU2NyaXB0PiBtX2NhY2hlZFNjcmlwdDsKKyAgICBXVEY6Ok9yZGluYWxOdW1i
ZXIgbV9zdGFydExpbmVOdW1iZXI7CiAgICAgYm9vbCBtX3BhcnNlckluc2VydGVkIDogMTsKICAg
ICBib29sIG1faXNFeHRlcm5hbFNjcmlwdCA6IDE7CiAgICAgYm9vbCBtX2FscmVhZHlTdGFydGVk
IDogMTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2RvbS9TdHlsZUVsZW1lbnQuY3BwIGIv
U291cmNlL1dlYkNvcmUvZG9tL1N0eWxlRWxlbWVudC5jcHAKaW5kZXggNWFmOWZjOGU0Y2RjYzZm
YjJmMWRlMjQwMDFhYzk1ZjY3ZjA4ZWI1ZC4uMDRhZjg0MGFiODc1YWE5NDU2ODQzYzAzMGQ5ZGFm
YjIzOGQ5MDc1ZiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvZG9tL1N0eWxlRWxlbWVudC5j
cHAKKysrIGIvU291cmNlL1dlYkNvcmUvZG9tL1N0eWxlRWxlbWVudC5jcHAKQEAgLTI5LDYgKzI5
LDcgQEAKICNpbmNsdWRlICJNZWRpYVF1ZXJ5RXZhbHVhdG9yLmgiCiAjaW5jbHVkZSAiU2NyaXB0
YWJsZURvY3VtZW50UGFyc2VyLmgiCiAjaW5jbHVkZSA8d3RmL3RleHQvU3RyaW5nQnVpbGRlci5o
PgorI2luY2x1ZGUgPHd0Zi90ZXh0L1RleHRQb3NpdGlvbi5oPgogCiBuYW1lc3BhY2UgV2ViQ29y
ZSB7CiAKQEAgLTQ3LDEwICs0OCwxMCBAQCBzdGF0aWMgYm9vbCBpc0NTUyhFbGVtZW50KiBlbGVt
ZW50LCBjb25zdCBBdG9taWNTdHJpbmcmIHR5cGUpCiBTdHlsZUVsZW1lbnQ6OlN0eWxlRWxlbWVu
dChEb2N1bWVudCogZG9jdW1lbnQsIGJvb2wgY3JlYXRlZEJ5UGFyc2VyKQogICAgIDogbV9jcmVh
dGVkQnlQYXJzZXIoY3JlYXRlZEJ5UGFyc2VyKQogICAgICwgbV9sb2FkaW5nKGZhbHNlKQotICAg
ICwgbV9zdGFydExpbmVOdW1iZXIoMCkKKyAgICAsIG1fc3RhcnRMaW5lTnVtYmVyKFdURjo6T3Jk
aW5hbE51bWJlcjo6YmVmb3JlRmlyc3QoKSkKIHsKICAgICBpZiAoY3JlYXRlZEJ5UGFyc2VyICYm
IGRvY3VtZW50ICYmIGRvY3VtZW50LT5zY3JpcHRhYmxlRG9jdW1lbnRQYXJzZXIoKSkKLSAgICAg
ICAgbV9zdGFydExpbmVOdW1iZXIgPSBkb2N1bWVudC0+c2NyaXB0YWJsZURvY3VtZW50UGFyc2Vy
KCktPmxpbmVOdW1iZXIoKS56ZXJvQmFzZWRJbnQoKTsKKyAgICAgICAgbV9zdGFydExpbmVOdW1i
ZXIgPSBkb2N1bWVudC0+c2NyaXB0YWJsZURvY3VtZW50UGFyc2VyKCktPmxpbmVOdW1iZXIoKTsK
IH0KIAogU3R5bGVFbGVtZW50Ojp+U3R5bGVFbGVtZW50KCkKQEAgLTE0Myw3ICsxNDQsNyBAQCB2
b2lkIFN0eWxlRWxlbWVudDo6Y2xlYXJTaGVldCgpCiAgICAgbV9zaGVldCA9IDA7CiB9CiAKLXZv
aWQgU3R5bGVFbGVtZW50OjpjcmVhdGVTaGVldChFbGVtZW50KiBlLCBpbnQgc3RhcnRMaW5lTnVt
YmVyLCBjb25zdCBTdHJpbmcmIHRleHQpCit2b2lkIFN0eWxlRWxlbWVudDo6Y3JlYXRlU2hlZXQo
RWxlbWVudCogZSwgV1RGOjpPcmRpbmFsTnVtYmVyIHN0YXJ0TGluZU51bWJlciwgY29uc3QgU3Ry
aW5nJiB0ZXh0KQogewogICAgIEFTU0VSVChlKTsKICAgICBBU1NFUlQoZS0+aW5Eb2N1bWVudCgp
KTsKQEAgLTE1Niw3ICsxNTcsNyBAQCB2b2lkIFN0eWxlRWxlbWVudDo6Y3JlYXRlU2hlZXQoRWxl
bWVudCogZSwgaW50IHN0YXJ0TGluZU51bWJlciwgY29uc3QgU3RyaW5nJiB0ZQogCiAgICAgLy8g
SWYgdHlwZSBpcyBlbXB0eSBvciBDU1MsIHRoaXMgaXMgYSBDU1Mgc3R5bGUgc2hlZXQuCiAgICAg
Y29uc3QgQXRvbWljU3RyaW5nJiB0eXBlID0gdGhpcy0+dHlwZSgpOwotICAgIGlmIChkb2N1bWVu
dC0+Y29udGVudFNlY3VyaXR5UG9saWN5KCktPmFsbG93SW5saW5lU3R5bGUoKSAmJiBpc0NTUyhl
LCB0eXBlKSkgeworICAgIGlmIChkb2N1bWVudC0+Y29udGVudFNlY3VyaXR5UG9saWN5KCktPmFs
bG93SW5saW5lU3R5bGUoZS0+ZG9jdW1lbnQoKS0+dXJsKCksIHN0YXJ0TGluZU51bWJlcikgJiYg
aXNDU1MoZSwgdHlwZSkpIHsKICAgICAgICAgUmVmUHRyPE1lZGlhUXVlcnlTZXQ+IG1lZGlhUXVl
cmllczsKICAgICAgICAgaWYgKGUtPmlzSFRNTEVsZW1lbnQoKSkKICAgICAgICAgICAgIG1lZGlh
UXVlcmllcyA9IE1lZGlhUXVlcnlTZXQ6OmNyZWF0ZUFsbG93aW5nRGVzY3JpcHRpb25TeW50YXgo
bWVkaWEoKSk7CkBAIC0xNzIsOCArMTczLDggQEAgdm9pZCBTdHlsZUVsZW1lbnQ6OmNyZWF0ZVNo
ZWV0KEVsZW1lbnQqIGUsIGludCBzdGFydExpbmVOdW1iZXIsIGNvbnN0IFN0cmluZyYgdGUKICAg
ICAgICAgICAgIG1fc2hlZXQgPSBDU1NTdHlsZVNoZWV0OjpjcmVhdGVJbmxpbmUoZSwgS1VSTCgp
LCBkb2N1bWVudC0+aW5wdXRFbmNvZGluZygpKTsKICAgICAgICAgICAgIG1fc2hlZXQtPnNldE1l
ZGlhUXVlcmllcyhtZWRpYVF1ZXJpZXMucmVsZWFzZSgpKTsKICAgICAgICAgICAgIG1fc2hlZXQt
PnNldFRpdGxlKGUtPnRpdGxlKCkpOwotICAgIAotICAgICAgICAgICAgbV9zaGVldC0+aW50ZXJu
YWwoKS0+cGFyc2VTdHJpbmdBdExpbmUodGV4dCwgc3RhcnRMaW5lTnVtYmVyKTsKKworICAgICAg
ICAgICAgbV9zaGVldC0+aW50ZXJuYWwoKS0+cGFyc2VTdHJpbmdBdExpbmUodGV4dCwgc3RhcnRM
aW5lTnVtYmVyLnplcm9CYXNlZEludCgpKTsKIAogICAgICAgICAgICAgbV9sb2FkaW5nID0gZmFs
c2U7CiAgICAgICAgIH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2RvbS9TdHlsZUVsZW1l
bnQuaCBiL1NvdXJjZS9XZWJDb3JlL2RvbS9TdHlsZUVsZW1lbnQuaAppbmRleCAzYzMxYWJiZjdl
YTQzYzUyYzk1ZDQ3YzVmMTBmYjRiZGYzNWI5NTBlLi42ZGQ0OGVjYmI0NTRiNWVhZDMyOWUwMzkw
OWEyNzNhNmMyNTJiMGYyIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9kb20vU3R5bGVFbGVt
ZW50LmgKKysrIGIvU291cmNlL1dlYkNvcmUvZG9tL1N0eWxlRWxlbWVudC5oCkBAIC0yMiw2ICsy
Miw3IEBACiAjZGVmaW5lIFN0eWxlRWxlbWVudF9oCiAKICNpbmNsdWRlICJDU1NTdHlsZVNoZWV0
LmgiCisjaW5jbHVkZSA8d3RmL3RleHQvVGV4dFBvc2l0aW9uLmg+CiAKIG5hbWVzcGFjZSBXZWJD
b3JlIHsKIApAQCAtNTIsMTMgKzUzLDEzIEBAIHByb3RlY3RlZDoKICAgICBSZWZQdHI8Q1NTU3R5
bGVTaGVldD4gbV9zaGVldDsKIAogcHJpdmF0ZToKLSAgICB2b2lkIGNyZWF0ZVNoZWV0KEVsZW1l
bnQqLCBpbnQgc3RhcnRMaW5lTnVtYmVyLCBjb25zdCBTdHJpbmcmIHRleHQgPSBTdHJpbmcoKSk7
CisgICAgdm9pZCBjcmVhdGVTaGVldChFbGVtZW50KiwgV1RGOjpPcmRpbmFsTnVtYmVyIHN0YXJ0
TGluZU51bWJlciwgY29uc3QgU3RyaW5nJiB0ZXh0ID0gU3RyaW5nKCkpOwogICAgIHZvaWQgcHJv
Y2VzcyhFbGVtZW50Kik7CiAgICAgdm9pZCBjbGVhclNoZWV0KCk7CiAKICAgICBib29sIG1fY3Jl
YXRlZEJ5UGFyc2VyOwogICAgIGJvb2wgbV9sb2FkaW5nOwotICAgIGludCBtX3N0YXJ0TGluZU51
bWJlcjsKKyAgICBXVEY6Ok9yZGluYWxOdW1iZXIgbV9zdGFydExpbmVOdW1iZXI7CiB9OwogCiB9
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9kb20vU3R5bGVkRWxlbWVudC5jcHAgYi9Tb3Vy
Y2UvV2ViQ29yZS9kb20vU3R5bGVkRWxlbWVudC5jcHAKaW5kZXggZDU1YjAwOTkzNDVmZTkxZTA3
NTU2NTZlZjc3NzAzYTViMmUwOWJiMC4uY2JmMDkxZDZkMTViNzE5MzVhMjgwZjU1ODNiZDdkMmU1
ZTkzZDRkYiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvZG9tL1N0eWxlZEVsZW1lbnQuY3Bw
CisrKyBiL1NvdXJjZS9XZWJDb3JlL2RvbS9TdHlsZWRFbGVtZW50LmNwcApAQCAtMzcsOSArMzcs
MTEgQEAKICNpbmNsdWRlICJEb2N1bWVudC5oIgogI2luY2x1ZGUgIkhUTUxOYW1lcy5oIgogI2lu
Y2x1ZGUgIkhUTUxQYXJzZXJJZGlvbXMuaCIKKyNpbmNsdWRlICJTY3JpcHRhYmxlRG9jdW1lbnRQ
YXJzZXIuaCIKICNpbmNsdWRlICJTdHlsZVByb3BlcnR5U2V0LmgiCiAjaW5jbHVkZSAiU3R5bGVS
ZXNvbHZlci5oIgogI2luY2x1ZGUgPHd0Zi9IYXNoRnVuY3Rpb25zLmg+CisjaW5jbHVkZSA8d3Rm
L3RleHQvVGV4dFBvc2l0aW9uLmg+CiAKIHVzaW5nIG5hbWVzcGFjZSBzdGQ7CiAKQEAgLTEyNiwx
MyArMTI4LDIxIEBAIHZvaWQgU3R5bGVkRWxlbWVudDo6dXBkYXRlU3R5bGVBdHRyaWJ1dGUoKSBj
b25zdAogICAgICAgICBjb25zdF9jYXN0PFN0eWxlZEVsZW1lbnQqPih0aGlzKS0+c2V0QXR0cmli
dXRlKHN0eWxlQXR0ciwgaW5saW5lU3R5bGUtPmFzVGV4dCgpLCBJblVwZGF0ZVN0eWxlQXR0cmli
dXRlKTsKIH0KIAorU3R5bGVkRWxlbWVudDo6U3R5bGVkRWxlbWVudChjb25zdCBRdWFsaWZpZWRO
YW1lJiBuYW1lLCBEb2N1bWVudCogZG9jdW1lbnQsIENvbnN0cnVjdGlvblR5cGUgdHlwZSkKKyAg
ICA6IEVsZW1lbnQobmFtZSwgZG9jdW1lbnQsIHR5cGUpCisgICAgLCBtX3N0YXJ0TGluZU51bWJl
cihXVEY6Ok9yZGluYWxOdW1iZXI6OmJlZm9yZUZpcnN0KCkpCit7CisgICAgaWYgKGRvY3VtZW50
ICYmIGRvY3VtZW50LT5zY3JpcHRhYmxlRG9jdW1lbnRQYXJzZXIoKSkKKyAgICAgICAgbV9zdGFy
dExpbmVOdW1iZXIgPSBkb2N1bWVudC0+c2NyaXB0YWJsZURvY3VtZW50UGFyc2VyKCktPmxpbmVO
dW1iZXIoKTsKK30KKwogU3R5bGVkRWxlbWVudDo6flN0eWxlZEVsZW1lbnQoKQogewogICAgIGRl
c3Ryb3lJbmxpbmVTdHlsZSgpOwogfQogCi1DU1NTdHlsZURlY2xhcmF0aW9uKiBTdHlsZWRFbGVt
ZW50OjpzdHlsZSgpIAoteyAKK0NTU1N0eWxlRGVjbGFyYXRpb24qIFN0eWxlZEVsZW1lbnQ6OnN0
eWxlKCkKK3sKICAgICByZXR1cm4gZW5zdXJlQXR0cmlidXRlRGF0YSgpLT5lbnN1cmVNdXRhYmxl
SW5saW5lU3R5bGUodGhpcyktPmVuc3VyZUlubGluZUNTU1N0eWxlRGVjbGFyYXRpb24odGhpcyk7
IAogfQogCkBAIC0xNzMsNyArMTgzLDcgQEAgdm9pZCBTdHlsZWRFbGVtZW50OjpzdHlsZUF0dHJp
YnV0ZUNoYW5nZWQoY29uc3QgQXRvbWljU3RyaW5nJiBuZXdTdHlsZVN0cmluZywgU2gKICAgICBp
ZiAoc2hvdWxkUmVwYXJzZSkgewogICAgICAgICBpZiAobmV3U3R5bGVTdHJpbmcuaXNOdWxsKCkp
CiAgICAgICAgICAgICBkZXN0cm95SW5saW5lU3R5bGUoKTsKLSAgICAgICAgZWxzZSBpZiAoZG9j
dW1lbnQoKS0+Y29udGVudFNlY3VyaXR5UG9saWN5KCktPmFsbG93SW5saW5lU3R5bGUoKSkKKyAg
ICAgICAgZWxzZSBpZiAoZG9jdW1lbnQoKS0+Y29udGVudFNlY3VyaXR5UG9saWN5KCktPmFsbG93
SW5saW5lU3R5bGUoZG9jdW1lbnQoKS0+dXJsKCksIG1fc3RhcnRMaW5lTnVtYmVyKSkKICAgICAg
ICAgICAgIGVuc3VyZUF0dHJpYnV0ZURhdGEoKS0+dXBkYXRlSW5saW5lU3R5bGVBdm9pZGluZ011
dGF0aW9uKHRoaXMsIG5ld1N0eWxlU3RyaW5nKTsKICAgICAgICAgc2V0SXNTdHlsZUF0dHJpYnV0
ZVZhbGlkKCk7CiAgICAgfQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvZG9tL1N0eWxlZEVs
ZW1lbnQuaCBiL1NvdXJjZS9XZWJDb3JlL2RvbS9TdHlsZWRFbGVtZW50LmgKaW5kZXggNmNmNDE0
NWYyYTEyMWE1NDhkNGUzYWRlYjhjZTg1ZjYyNzA1ZDA3OC4uNDczNmE5ODAwMTlhOWVmNGEyY2Rj
NmFkY2I2NDEwMDJhNmJlYjcwYiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvZG9tL1N0eWxl
ZEVsZW1lbnQuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9kb20vU3R5bGVkRWxlbWVudC5oCkBAIC0y
Nyw2ICsyNyw3IEBACiAKICNpbmNsdWRlICJFbGVtZW50LmgiCiAjaW5jbHVkZSAiU3R5bGVQcm9w
ZXJ0eVNldC5oIgorI2luY2x1ZGUgPHd0Zi90ZXh0L1RleHRQb3NpdGlvbi5oPgogCiBuYW1lc3Bh
Y2UgV2ViQ29yZSB7CiAKQEAgLTYyLDEwICs2Myw3IEBAIHB1YmxpYzoKICAgICB2b2lkIHN0eWxl
QXR0cmlidXRlQ2hhbmdlZChjb25zdCBBdG9taWNTdHJpbmcmIG5ld1N0eWxlU3RyaW5nLCBTaG91
bGRSZXBhcnNlU3R5bGVBdHRyaWJ1dGUgPSBSZXBhcnNlU3R5bGVBdHRyaWJ1dGUpOwogCiBwcm90
ZWN0ZWQ6Ci0gICAgU3R5bGVkRWxlbWVudChjb25zdCBRdWFsaWZpZWROYW1lJiBuYW1lLCBEb2N1
bWVudCogZG9jdW1lbnQsIENvbnN0cnVjdGlvblR5cGUgdHlwZSkKLSAgICAgICAgOiBFbGVtZW50
KG5hbWUsIGRvY3VtZW50LCB0eXBlKQotICAgIHsKLSAgICB9CisgICAgU3R5bGVkRWxlbWVudChj
b25zdCBRdWFsaWZpZWROYW1lJiwgRG9jdW1lbnQqLCBDb25zdHJ1Y3Rpb25UeXBlKTsKIAogICAg
IHZpcnR1YWwgdm9pZCBhdHRyaWJ1dGVDaGFuZ2VkKGNvbnN0IEF0dHJpYnV0ZSYpIE9WRVJSSURF
OwogICAgIHZpcnR1YWwgdm9pZCBwYXJzZUF0dHJpYnV0ZShjb25zdCBBdHRyaWJ1dGUmKTsKQEAg
LTk1LDYgKzkzLDggQEAgcHJpdmF0ZToKICAgICAgICAgaWYgKGF0dHJpYnV0ZURhdGEoKSkKICAg
ICAgICAgICAgIGF0dHJpYnV0ZURhdGEoKS0+ZGVzdHJveUlubGluZVN0eWxlKHRoaXMpOwogICAg
IH0KKworICAgIFdURjo6T3JkaW5hbE51bWJlciBtX3N0YXJ0TGluZU51bWJlcjsKIH07CiAKIGlu
bGluZSBjb25zdCBTcGFjZVNwbGl0U3RyaW5nJiBTdHlsZWRFbGVtZW50OjpjbGFzc05hbWVzKCkg
Y29uc3QKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BhZ2UvQ29udGVudFNlY3VyaXR5UG9s
aWN5LmNwcCBiL1NvdXJjZS9XZWJDb3JlL3BhZ2UvQ29udGVudFNlY3VyaXR5UG9saWN5LmNwcApp
bmRleCAwZTdjOTVhN2UyOWRhYjQzZjQwOWU2YTZjYjEyMmU1ZmVhYTEzZDhlLi5hZDZmMWMwMTA5
ZjExOTcxZWJmOGJkNWE0MGNlYjNmMmEzNWE4OGRlIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29y
ZS9wYWdlL0NvbnRlbnRTZWN1cml0eVBvbGljeS5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvcGFn
ZS9Db250ZW50U2VjdXJpdHlQb2xpY3kuY3BwCkBAIC0zMSwxMSArMzEsMTMgQEAKICNpbmNsdWRl
ICJGb3JtRGF0YS5oIgogI2luY2x1ZGUgIkZvcm1EYXRhTGlzdC5oIgogI2luY2x1ZGUgIkZyYW1l
LmgiCisjaW5jbHVkZSAiSW5zcGVjdG9ySW5zdHJ1bWVudGF0aW9uLmgiCiAjaW5jbHVkZSAiSW5z
cGVjdG9yVmFsdWVzLmgiCiAjaW5jbHVkZSAiUGluZ0xvYWRlci5oIgogI2luY2x1ZGUgIlNjcmlw
dENhbGxTdGFjay5oIgogI2luY2x1ZGUgIlNlY3VyaXR5T3JpZ2luLmgiCiAjaW5jbHVkZSAiVGV4
dEVuY29kaW5nLmgiCisjaW5jbHVkZSA8d3RmL3RleHQvVGV4dFBvc2l0aW9uLmg+CiAjaW5jbHVk
ZSA8d3RmL3RleHQvV1RGU3RyaW5nLmg+CiAKIG5hbWVzcGFjZSBXZWJDb3JlIHsKQEAgLTQ5MCwx
MCArNDkyLDEwIEBAIHB1YmxpYzoKICAgICBjb25zdCBTdHJpbmcmIGhlYWRlcigpIGNvbnN0IHsg
cmV0dXJuIG1faGVhZGVyOyB9CiAgICAgQ29udGVudFNlY3VyaXR5UG9saWN5OjpIZWFkZXJUeXBl
IGhlYWRlclR5cGUoKSBjb25zdCB7IHJldHVybiBtX3JlcG9ydE9ubHkgPyBDb250ZW50U2VjdXJp
dHlQb2xpY3k6OlJlcG9ydE9ubHkgOiBDb250ZW50U2VjdXJpdHlQb2xpY3k6OkVuZm9yY2VQb2xp
Y3k7IH0KIAotICAgIGJvb2wgYWxsb3dKYXZhU2NyaXB0VVJMcygpIGNvbnN0OwotICAgIGJvb2wg
YWxsb3dJbmxpbmVFdmVudEhhbmRsZXJzKCkgY29uc3Q7Ci0gICAgYm9vbCBhbGxvd0lubGluZVNj
cmlwdCgpIGNvbnN0OwotICAgIGJvb2wgYWxsb3dJbmxpbmVTdHlsZSgpIGNvbnN0OworICAgIGJv
b2wgYWxsb3dKYXZhU2NyaXB0VVJMcyhjb25zdCBTdHJpbmcmIGNvbnRleHRVUkwsIGNvbnN0IFdU
Rjo6T3JkaW5hbE51bWJlciYgY29udGV4dExpbmUpIGNvbnN0OworICAgIGJvb2wgYWxsb3dJbmxp
bmVFdmVudEhhbmRsZXJzKGNvbnN0IFN0cmluZyYgY29udGV4dFVSTCwgY29uc3QgV1RGOjpPcmRp
bmFsTnVtYmVyJiBjb250ZXh0TGluZSkgY29uc3Q7CisgICAgYm9vbCBhbGxvd0lubGluZVNjcmlw
dChjb25zdCBTdHJpbmcmIGNvbnRleHRVUkwsIGNvbnN0IFdURjo6T3JkaW5hbE51bWJlciYgY29u
dGV4dExpbmUpIGNvbnN0OworICAgIGJvb2wgYWxsb3dJbmxpbmVTdHlsZShjb25zdCBTdHJpbmcm
IGNvbnRleHRVUkwsIGNvbnN0IFdURjo6T3JkaW5hbE51bWJlciYgY29udGV4dExpbmUpIGNvbnN0
OwogICAgIGJvb2wgYWxsb3dFdmFsKCkgY29uc3Q7CiAKICAgICBib29sIGFsbG93U2NyaXB0RnJv
bVNvdXJjZShjb25zdCBLVVJMJikgY29uc3Q7CkBAIC01MTgsMTIgKzUyMCwxMiBAQCBwcml2YXRl
OgogICAgIFBhc3NPd25QdHI8Q1NQRGlyZWN0aXZlPiBjcmVhdGVDU1BEaXJlY3RpdmUoY29uc3Qg
U3RyaW5nJiBuYW1lLCBjb25zdCBTdHJpbmcmIHZhbHVlKTsKIAogICAgIENTUERpcmVjdGl2ZSog
b3BlcmF0aXZlRGlyZWN0aXZlKENTUERpcmVjdGl2ZSopIGNvbnN0OwotICAgIHZvaWQgcmVwb3J0
VmlvbGF0aW9uKGNvbnN0IFN0cmluZyYgZGlyZWN0aXZlVGV4dCwgY29uc3QgU3RyaW5nJiBjb25z
b2xlTWVzc2FnZSwgY29uc3QgS1VSTCYgYmxvY2tlZFVSTCA9IEtVUkwoKSkgY29uc3Q7CisgICAg
dm9pZCByZXBvcnRWaW9sYXRpb24oY29uc3QgU3RyaW5nJiBkaXJlY3RpdmVUZXh0LCBjb25zdCBT
dHJpbmcmIGNvbnNvbGVNZXNzYWdlLCBjb25zdCBLVVJMJiBibG9ja2VkVVJMID0gS1VSTCgpLCBj
b25zdCBTdHJpbmcmIGNvbnRleHRVUkwgPSBTdHJpbmcoKSwgY29uc3QgV1RGOjpPcmRpbmFsTnVt
YmVyJiBjb250ZXh0TGluZSA9IFdURjo6T3JkaW5hbE51bWJlcjo6YmVmb3JlRmlyc3QoKSkgY29u
c3Q7CiAgICAgdm9pZCBsb2dVbnJlY29nbml6ZWREaXJlY3RpdmUoY29uc3QgU3RyaW5nJiBuYW1l
KSBjb25zdDsKICAgICBib29sIGNoZWNrRXZhbChDU1BEaXJlY3RpdmUqKSBjb25zdDsKIAotICAg
IGJvb2wgY2hlY2tJbmxpbmVBbmRSZXBvcnRWaW9sYXRpb24oQ1NQRGlyZWN0aXZlKiwgY29uc3Qg
U3RyaW5nJiBjb25zb2xlTWVzc2FnZSkgY29uc3Q7Ci0gICAgYm9vbCBjaGVja0V2YWxBbmRSZXBv
cnRWaW9sYXRpb24oQ1NQRGlyZWN0aXZlKiwgY29uc3QgU3RyaW5nJiBjb25zb2xlTWVzc2FnZSkg
Y29uc3Q7CisgICAgYm9vbCBjaGVja0lubGluZUFuZFJlcG9ydFZpb2xhdGlvbihDU1BEaXJlY3Rp
dmUqLCBjb25zdCBTdHJpbmcmIGNvbnNvbGVNZXNzYWdlLCBjb25zdCBTdHJpbmcmIGNvbnRleHRV
UkwsIGNvbnN0IFdURjo6T3JkaW5hbE51bWJlciYgY29udGV4dExpbmUpIGNvbnN0OworICAgIGJv
b2wgY2hlY2tFdmFsQW5kUmVwb3J0VmlvbGF0aW9uKENTUERpcmVjdGl2ZSosIGNvbnN0IFN0cmlu
ZyYgY29uc29sZU1lc3NhZ2UsIGNvbnN0IFN0cmluZyYgY29udGV4dFVSTCwgY29uc3QgV1RGOjpP
cmRpbmFsTnVtYmVyJiBjb250ZXh0TGluZSkgY29uc3Q7CiAgICAgYm9vbCBjaGVja1NvdXJjZUFu
ZFJlcG9ydFZpb2xhdGlvbihDU1BEaXJlY3RpdmUqLCBjb25zdCBLVVJMJiwgY29uc3QgU3RyaW5n
JiB0eXBlKSBjb25zdDsKIAogICAgIGJvb2wgZGVueUlmRW5mb3JjaW5nUG9saWN5KCkgY29uc3Qg
eyByZXR1cm4gbV9yZXBvcnRPbmx5OyB9CkBAIC01NzUsMTAgKzU3NywxMCBAQCBQYXNzT3duUHRy
PENTUERpcmVjdGl2ZUxpc3Q+IENTUERpcmVjdGl2ZUxpc3Q6OmNyZWF0ZShTY3JpcHRFeGVjdXRp
b25Db250ZXh0KiBzYwogICAgIHJldHVybiBwb2xpY3kucmVsZWFzZSgpOwogfQogCi12b2lkIENT
UERpcmVjdGl2ZUxpc3Q6OnJlcG9ydFZpb2xhdGlvbihjb25zdCBTdHJpbmcmIGRpcmVjdGl2ZVRl
eHQsIGNvbnN0IFN0cmluZyYgY29uc29sZU1lc3NhZ2UsIGNvbnN0IEtVUkwmIGJsb2NrZWRVUkwp
IGNvbnN0Cit2b2lkIENTUERpcmVjdGl2ZUxpc3Q6OnJlcG9ydFZpb2xhdGlvbihjb25zdCBTdHJp
bmcmIGRpcmVjdGl2ZVRleHQsIGNvbnN0IFN0cmluZyYgY29uc29sZU1lc3NhZ2UsIGNvbnN0IEtV
UkwmIGJsb2NrZWRVUkwsIGNvbnN0IFN0cmluZyYgY29udGV4dFVSTCwgY29uc3QgV1RGOjpPcmRp
bmFsTnVtYmVyJiBjb250ZXh0TGluZSkgY29uc3QKIHsKICAgICBTdHJpbmcgbWVzc2FnZSA9IG1f
cmVwb3J0T25seSA/ICJbUmVwb3J0IE9ubHldICIgKyBjb25zb2xlTWVzc2FnZSA6IGNvbnNvbGVN
ZXNzYWdlOwotICAgIG1fc2NyaXB0RXhlY3V0aW9uQ29udGV4dC0+YWRkQ29uc29sZU1lc3NhZ2Uo
SlNNZXNzYWdlU291cmNlLCBMb2dNZXNzYWdlVHlwZSwgRXJyb3JNZXNzYWdlTGV2ZWwsIG1lc3Nh
Z2UpOworICAgIG1fc2NyaXB0RXhlY3V0aW9uQ29udGV4dC0+YWRkQ29uc29sZU1lc3NhZ2UoSlNN
ZXNzYWdlU291cmNlLCBMb2dNZXNzYWdlVHlwZSwgRXJyb3JNZXNzYWdlTGV2ZWwsIG1lc3NhZ2Us
IGNvbnRleHRVUkwsIGNvbnRleHRMaW5lLm9uZUJhc2VkSW50KCkpOwogCiAgICAgaWYgKG1fcmVw
b3J0VVJJcy5pc0VtcHR5KCkpCiAgICAgICAgIHJldHVybjsKQEAgLTYzOCwxOSArNjQwLDE5IEBA
IENTUERpcmVjdGl2ZSogQ1NQRGlyZWN0aXZlTGlzdDo6b3BlcmF0aXZlRGlyZWN0aXZlKENTUERp
cmVjdGl2ZSogZGlyZWN0aXZlKSBjb25zCiAgICAgcmV0dXJuIGRpcmVjdGl2ZSA/IGRpcmVjdGl2
ZSA6IG1fZGVmYXVsdFNyYy5nZXQoKTsKIH0KIAotYm9vbCBDU1BEaXJlY3RpdmVMaXN0OjpjaGVj
a0lubGluZUFuZFJlcG9ydFZpb2xhdGlvbihDU1BEaXJlY3RpdmUqIGRpcmVjdGl2ZSwgY29uc3Qg
U3RyaW5nJiBjb25zb2xlTWVzc2FnZSkgY29uc3QKK2Jvb2wgQ1NQRGlyZWN0aXZlTGlzdDo6Y2hl
Y2tJbmxpbmVBbmRSZXBvcnRWaW9sYXRpb24oQ1NQRGlyZWN0aXZlKiBkaXJlY3RpdmUsIGNvbnN0
IFN0cmluZyYgY29uc29sZU1lc3NhZ2UsIGNvbnN0IFN0cmluZyYgY29udGV4dFVSTCwgY29uc3Qg
V1RGOjpPcmRpbmFsTnVtYmVyJiBjb250ZXh0TGluZSkgY29uc3QKIHsKICAgICBpZiAoIWRpcmVj
dGl2ZSB8fCBkaXJlY3RpdmUtPmFsbG93SW5saW5lKCkpCiAgICAgICAgIHJldHVybiB0cnVlOwot
ICAgIHJlcG9ydFZpb2xhdGlvbihkaXJlY3RpdmUtPnRleHQoKSwgY29uc29sZU1lc3NhZ2UgKyAi
XCIiICsgZGlyZWN0aXZlLT50ZXh0KCkgKyAiXCIuXG4iKTsKKyAgICByZXBvcnRWaW9sYXRpb24o
ZGlyZWN0aXZlLT50ZXh0KCksIGNvbnNvbGVNZXNzYWdlICsgIlwiIiArIGRpcmVjdGl2ZS0+dGV4
dCgpICsgIlwiLlxuIiwgS1VSTCgpLCBjb250ZXh0VVJMLCBjb250ZXh0TGluZSk7CiAgICAgcmV0
dXJuIGRlbnlJZkVuZm9yY2luZ1BvbGljeSgpOwogfQogCi1ib29sIENTUERpcmVjdGl2ZUxpc3Q6
OmNoZWNrRXZhbEFuZFJlcG9ydFZpb2xhdGlvbihDU1BEaXJlY3RpdmUqIGRpcmVjdGl2ZSwgY29u
c3QgU3RyaW5nJiBjb25zb2xlTWVzc2FnZSkgY29uc3QKK2Jvb2wgQ1NQRGlyZWN0aXZlTGlzdDo6
Y2hlY2tFdmFsQW5kUmVwb3J0VmlvbGF0aW9uKENTUERpcmVjdGl2ZSogZGlyZWN0aXZlLCBjb25z
dCBTdHJpbmcmIGNvbnNvbGVNZXNzYWdlLCBjb25zdCBTdHJpbmcmIGNvbnRleHRVUkwsIGNvbnN0
IFdURjo6T3JkaW5hbE51bWJlciYgY29udGV4dExpbmUpIGNvbnN0CiB7CiAgICAgaWYgKGNoZWNr
RXZhbChkaXJlY3RpdmUpKQogICAgICAgICByZXR1cm4gdHJ1ZTsKLSAgICByZXBvcnRWaW9sYXRp
b24oZGlyZWN0aXZlLT50ZXh0KCksIGNvbnNvbGVNZXNzYWdlICsgIlwiIiArIGRpcmVjdGl2ZS0+
dGV4dCgpICsgIlwiLlxuIik7CisgICAgcmVwb3J0VmlvbGF0aW9uKGRpcmVjdGl2ZS0+dGV4dCgp
LCBjb25zb2xlTWVzc2FnZSArICJcIiIgKyBkaXJlY3RpdmUtPnRleHQoKSArICJcIi5cbiIsIEtV
UkwoKSwgY29udGV4dFVSTCwgY29udGV4dExpbmUpOwogICAgIHJldHVybiBkZW55SWZFbmZvcmNp
bmdQb2xpY3koKTsKIH0KIApAQCAtNjYzLDM0ICs2NjUsMzQgQEAgYm9vbCBDU1BEaXJlY3RpdmVM
aXN0OjpjaGVja1NvdXJjZUFuZFJlcG9ydFZpb2xhdGlvbihDU1BEaXJlY3RpdmUqIGRpcmVjdGl2
ZSwgY28KICAgICByZXR1cm4gZGVueUlmRW5mb3JjaW5nUG9saWN5KCk7CiB9CiAKLWJvb2wgQ1NQ
RGlyZWN0aXZlTGlzdDo6YWxsb3dKYXZhU2NyaXB0VVJMcygpIGNvbnN0Citib29sIENTUERpcmVj
dGl2ZUxpc3Q6OmFsbG93SmF2YVNjcmlwdFVSTHMoY29uc3QgU3RyaW5nJiBjb250ZXh0VVJMLCBj
b25zdCBXVEY6Ok9yZGluYWxOdW1iZXImIGNvbnRleHRMaW5lKSBjb25zdAogewogICAgIERFRklO
RV9TVEFUSUNfTE9DQUwoU3RyaW5nLCBjb25zb2xlTWVzc2FnZSwgKCJSZWZ1c2VkIHRvIGV4ZWN1
dGUgSmF2YVNjcmlwdCBVUkwgYmVjYXVzZSBpdCB2aW9sYXRlcyB0aGUgZm9sbG93aW5nIENvbnRl
bnQgU2VjdXJpdHkgUG9saWN5IGRpcmVjdGl2ZTogIikpOwotICAgIHJldHVybiBjaGVja0lubGlu
ZUFuZFJlcG9ydFZpb2xhdGlvbihvcGVyYXRpdmVEaXJlY3RpdmUobV9zY3JpcHRTcmMuZ2V0KCkp
LCBjb25zb2xlTWVzc2FnZSk7CisgICAgcmV0dXJuIGNoZWNrSW5saW5lQW5kUmVwb3J0VmlvbGF0
aW9uKG9wZXJhdGl2ZURpcmVjdGl2ZShtX3NjcmlwdFNyYy5nZXQoKSksIGNvbnNvbGVNZXNzYWdl
LCBjb250ZXh0VVJMLCBjb250ZXh0TGluZSk7CiB9CiAKLWJvb2wgQ1NQRGlyZWN0aXZlTGlzdDo6
YWxsb3dJbmxpbmVFdmVudEhhbmRsZXJzKCkgY29uc3QKK2Jvb2wgQ1NQRGlyZWN0aXZlTGlzdDo6
YWxsb3dJbmxpbmVFdmVudEhhbmRsZXJzKGNvbnN0IFN0cmluZyYgY29udGV4dFVSTCwgY29uc3Qg
V1RGOjpPcmRpbmFsTnVtYmVyJiBjb250ZXh0TGluZSkgY29uc3QKIHsKICAgICBERUZJTkVfU1RB
VElDX0xPQ0FMKFN0cmluZywgY29uc29sZU1lc3NhZ2UsICgiUmVmdXNlZCB0byBleGVjdXRlIGlu
bGluZSBldmVudCBoYW5kbGVyIGJlY2F1c2UgaXQgdmlvbGF0ZXMgdGhlIGZvbGxvd2luZyBDb250
ZW50IFNlY3VyaXR5IFBvbGljeSBkaXJlY3RpdmU6ICIpKTsKLSAgICByZXR1cm4gY2hlY2tJbmxp
bmVBbmRSZXBvcnRWaW9sYXRpb24ob3BlcmF0aXZlRGlyZWN0aXZlKG1fc2NyaXB0U3JjLmdldCgp
KSwgY29uc29sZU1lc3NhZ2UpOworICAgIHJldHVybiBjaGVja0lubGluZUFuZFJlcG9ydFZpb2xh
dGlvbihvcGVyYXRpdmVEaXJlY3RpdmUobV9zY3JpcHRTcmMuZ2V0KCkpLCBjb25zb2xlTWVzc2Fn
ZSwgY29udGV4dFVSTCwgY29udGV4dExpbmUpOwogfQogCi1ib29sIENTUERpcmVjdGl2ZUxpc3Q6
OmFsbG93SW5saW5lU2NyaXB0KCkgY29uc3QKK2Jvb2wgQ1NQRGlyZWN0aXZlTGlzdDo6YWxsb3dJ
bmxpbmVTY3JpcHQoY29uc3QgU3RyaW5nJiBjb250ZXh0VVJMLCBjb25zdCBXVEY6Ok9yZGluYWxO
dW1iZXImIGNvbnRleHRMaW5lKSBjb25zdAogewogICAgIERFRklORV9TVEFUSUNfTE9DQUwoU3Ry
aW5nLCBjb25zb2xlTWVzc2FnZSwgKCJSZWZ1c2VkIHRvIGV4ZWN1dGUgaW5saW5lIHNjcmlwdCBi
ZWNhdXNlIGl0IHZpb2xhdGVzIHRoZSBmb2xsb3dpbmcgQ29udGVudCBTZWN1cml0eSBQb2xpY3kg
ZGlyZWN0aXZlOiAiKSk7Ci0gICAgcmV0dXJuIGNoZWNrSW5saW5lQW5kUmVwb3J0VmlvbGF0aW9u
KG9wZXJhdGl2ZURpcmVjdGl2ZShtX3NjcmlwdFNyYy5nZXQoKSksIGNvbnNvbGVNZXNzYWdlKTsK
KyAgICByZXR1cm4gY2hlY2tJbmxpbmVBbmRSZXBvcnRWaW9sYXRpb24ob3BlcmF0aXZlRGlyZWN0
aXZlKG1fc2NyaXB0U3JjLmdldCgpKSwgY29uc29sZU1lc3NhZ2UsIGNvbnRleHRVUkwsIGNvbnRl
eHRMaW5lKTsKIH0KIAotYm9vbCBDU1BEaXJlY3RpdmVMaXN0OjphbGxvd0lubGluZVN0eWxlKCkg
Y29uc3QKK2Jvb2wgQ1NQRGlyZWN0aXZlTGlzdDo6YWxsb3dJbmxpbmVTdHlsZShjb25zdCBTdHJp
bmcmIGNvbnRleHRVUkwsIGNvbnN0IFdURjo6T3JkaW5hbE51bWJlciYgY29udGV4dExpbmUpIGNv
bnN0CiB7CiAgICAgREVGSU5FX1NUQVRJQ19MT0NBTChTdHJpbmcsIGNvbnNvbGVNZXNzYWdlLCAo
IlJlZnVzZWQgdG8gYXBwbHkgaW5saW5lIHN0eWxlIGJlY2F1c2UgaXQgdmlvbGF0ZXMgdGhlIGZv
bGxvd2luZyBDb250ZW50IFNlY3VyaXR5IFBvbGljeSBkaXJlY3RpdmU6ICIpKTsKLSAgICByZXR1
cm4gY2hlY2tJbmxpbmVBbmRSZXBvcnRWaW9sYXRpb24ob3BlcmF0aXZlRGlyZWN0aXZlKG1fc3R5
bGVTcmMuZ2V0KCkpLCBjb25zb2xlTWVzc2FnZSk7CisgICAgcmV0dXJuIGNoZWNrSW5saW5lQW5k
UmVwb3J0VmlvbGF0aW9uKG9wZXJhdGl2ZURpcmVjdGl2ZShtX3N0eWxlU3JjLmdldCgpKSwgY29u
c29sZU1lc3NhZ2UsIGNvbnRleHRVUkwsIGNvbnRleHRMaW5lKTsKIH0KIAogYm9vbCBDU1BEaXJl
Y3RpdmVMaXN0OjphbGxvd0V2YWwoKSBjb25zdAogewogICAgIERFRklORV9TVEFUSUNfTE9DQUwo
U3RyaW5nLCBjb25zb2xlTWVzc2FnZSwgKCJSZWZ1c2VkIHRvIGV2YWx1YXRlIHNjcmlwdCBiZWNh
dXNlIGl0IHZpb2xhdGVzIHRoZSBmb2xsb3dpbmcgQ29udGVudCBTZWN1cml0eSBQb2xpY3kgZGly
ZWN0aXZlOiAiKSk7Ci0gICAgcmV0dXJuIGNoZWNrRXZhbEFuZFJlcG9ydFZpb2xhdGlvbihvcGVy
YXRpdmVEaXJlY3RpdmUobV9zY3JpcHRTcmMuZ2V0KCkpLCBjb25zb2xlTWVzc2FnZSk7CisgICAg
cmV0dXJuIGNoZWNrRXZhbEFuZFJlcG9ydFZpb2xhdGlvbihvcGVyYXRpdmVEaXJlY3RpdmUobV9z
Y3JpcHRTcmMuZ2V0KCkpLCBjb25zb2xlTWVzc2FnZSwgU3RyaW5nKCksIFdURjo6T3JkaW5hbE51
bWJlcjo6YmVmb3JlRmlyc3QoKSk7CiB9CiAKIGJvb2wgQ1NQRGlyZWN0aXZlTGlzdDo6YWxsb3dT
Y3JpcHRGcm9tU291cmNlKGNvbnN0IEtVUkwmIHVybCkgY29uc3QKQEAgLTkzMyw2ICs5MzUsMTYg
QEAgYm9vbCBpc0FsbG93ZWRCeUFsbChjb25zdCBDU1BEaXJlY3RpdmVMaXN0VmVjdG9yJiBwb2xp
Y2llcykKICAgICByZXR1cm4gdHJ1ZTsKIH0KIAordGVtcGxhdGU8Ym9vbCAoQ1NQRGlyZWN0aXZl
TGlzdDo6KmFsbG93ZWQpKGNvbnN0IFN0cmluZyYsIGNvbnN0IFdURjo6T3JkaW5hbE51bWJlciYp
IGNvbnN0PgorYm9vbCBpc0FsbG93ZWRCeUFsbChjb25zdCBDU1BEaXJlY3RpdmVMaXN0VmVjdG9y
JiBwb2xpY2llcywgY29uc3QgU3RyaW5nJiBjb250ZXh0VVJMLCBjb25zdCBjb25zdCBXVEY6Ok9y
ZGluYWxOdW1iZXImIGNvbnRleHRMaW5lKQoreworICAgIGZvciAoc2l6ZV90IGkgPSAwOyBpIDwg
cG9saWNpZXMuc2l6ZSgpOyArK2kpIHsKKyAgICAgICAgaWYgKCEocG9saWNpZXNbaV0uZ2V0KCkt
PiphbGxvd2VkKShjb250ZXh0VVJMLCBjb250ZXh0TGluZSkpCisgICAgICAgICAgICByZXR1cm4g
ZmFsc2U7CisgICAgfQorICAgIHJldHVybiB0cnVlOworfQorCiB0ZW1wbGF0ZTxib29sIChDU1BE
aXJlY3RpdmVMaXN0OjoqYWxsb3dGcm9tVVJMKShjb25zdCBLVVJMJikgY29uc3Q+CiBib29sIGlz
QWxsb3dlZEJ5QWxsKGNvbnN0IENTUERpcmVjdGl2ZUxpc3RWZWN0b3ImIHBvbGljaWVzLCBjb25z
dCBLVVJMJiB1cmwpCiB7CkBAIC05NDMsMjYgKzk1NSwyNiBAQCBib29sIGlzQWxsb3dlZEJ5QWxs
KGNvbnN0IENTUERpcmVjdGl2ZUxpc3RWZWN0b3ImIHBvbGljaWVzLCBjb25zdCBLVVJMJiB1cmwp
CiAgICAgcmV0dXJuIHRydWU7CiB9CiAKLWJvb2wgQ29udGVudFNlY3VyaXR5UG9saWN5OjphbGxv
d0phdmFTY3JpcHRVUkxzKCkgY29uc3QKK2Jvb2wgQ29udGVudFNlY3VyaXR5UG9saWN5OjphbGxv
d0phdmFTY3JpcHRVUkxzKGNvbnN0IFN0cmluZyYgY29udGV4dFVSTCwgY29uc3QgV1RGOjpPcmRp
bmFsTnVtYmVyJiBjb250ZXh0TGluZSkgY29uc3QKIHsKLSAgICByZXR1cm4gaXNBbGxvd2VkQnlB
bGw8JkNTUERpcmVjdGl2ZUxpc3Q6OmFsbG93SmF2YVNjcmlwdFVSTHM+KG1fcG9saWNpZXMpOwor
ICAgIHJldHVybiBpc0FsbG93ZWRCeUFsbDwmQ1NQRGlyZWN0aXZlTGlzdDo6YWxsb3dKYXZhU2Ny
aXB0VVJMcz4obV9wb2xpY2llcywgY29udGV4dFVSTCwgY29udGV4dExpbmUpOwogfQogCi1ib29s
IENvbnRlbnRTZWN1cml0eVBvbGljeTo6YWxsb3dJbmxpbmVFdmVudEhhbmRsZXJzKCkgY29uc3QK
K2Jvb2wgQ29udGVudFNlY3VyaXR5UG9saWN5OjphbGxvd0lubGluZUV2ZW50SGFuZGxlcnMoY29u
c3QgU3RyaW5nJiBjb250ZXh0VVJMLCBjb25zdCBXVEY6Ok9yZGluYWxOdW1iZXImIGNvbnRleHRM
aW5lKSBjb25zdAogewotICAgIHJldHVybiBpc0FsbG93ZWRCeUFsbDwmQ1NQRGlyZWN0aXZlTGlz
dDo6YWxsb3dJbmxpbmVFdmVudEhhbmRsZXJzPihtX3BvbGljaWVzKTsKKyAgICByZXR1cm4gaXNB
bGxvd2VkQnlBbGw8JkNTUERpcmVjdGl2ZUxpc3Q6OmFsbG93SW5saW5lRXZlbnRIYW5kbGVycz4o
bV9wb2xpY2llcywgY29udGV4dFVSTCwgY29udGV4dExpbmUpOwogfQogCi1ib29sIENvbnRlbnRT
ZWN1cml0eVBvbGljeTo6YWxsb3dJbmxpbmVTY3JpcHQoKSBjb25zdAorYm9vbCBDb250ZW50U2Vj
dXJpdHlQb2xpY3k6OmFsbG93SW5saW5lU2NyaXB0KGNvbnN0IFN0cmluZyYgY29udGV4dFVSTCwg
Y29uc3QgV1RGOjpPcmRpbmFsTnVtYmVyJiBjb250ZXh0TGluZSkgY29uc3QKIHsKLSAgICByZXR1
cm4gaXNBbGxvd2VkQnlBbGw8JkNTUERpcmVjdGl2ZUxpc3Q6OmFsbG93SW5saW5lU2NyaXB0Piht
X3BvbGljaWVzKTsKKyAgICByZXR1cm4gaXNBbGxvd2VkQnlBbGw8JkNTUERpcmVjdGl2ZUxpc3Q6
OmFsbG93SW5saW5lU2NyaXB0PihtX3BvbGljaWVzLCBjb250ZXh0VVJMLCBjb250ZXh0TGluZSk7
CiB9CiAKLWJvb2wgQ29udGVudFNlY3VyaXR5UG9saWN5OjphbGxvd0lubGluZVN0eWxlKCkgY29u
c3QKK2Jvb2wgQ29udGVudFNlY3VyaXR5UG9saWN5OjphbGxvd0lubGluZVN0eWxlKGNvbnN0IFN0
cmluZyYgY29udGV4dFVSTCwgY29uc3QgV1RGOjpPcmRpbmFsTnVtYmVyJiBjb250ZXh0TGluZSkg
Y29uc3QKIHsKICAgICBpZiAobV9vdmVycmlkZUlubGluZVN0eWxlQWxsb3dlZCkKICAgICAgICAg
cmV0dXJuIHRydWU7Ci0gICAgcmV0dXJuIGlzQWxsb3dlZEJ5QWxsPCZDU1BEaXJlY3RpdmVMaXN0
OjphbGxvd0lubGluZVN0eWxlPihtX3BvbGljaWVzKTsKKyAgICByZXR1cm4gaXNBbGxvd2VkQnlB
bGw8JkNTUERpcmVjdGl2ZUxpc3Q6OmFsbG93SW5saW5lU3R5bGU+KG1fcG9saWNpZXMsIGNvbnRl
eHRVUkwsIGNvbnRleHRMaW5lKTsKIH0KIAogYm9vbCBDb250ZW50U2VjdXJpdHlQb2xpY3k6OmFs
bG93RXZhbCgpIGNvbnN0CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL0NvbnRlbnRT
ZWN1cml0eVBvbGljeS5oIGIvU291cmNlL1dlYkNvcmUvcGFnZS9Db250ZW50U2VjdXJpdHlQb2xp
Y3kuaAppbmRleCBmMTMwMTRmMTMxZjU3MGJmYmI2MDU5YTUyODZhY2RkODAxODRiNWNjLi5lMWE5
MDhjNDhiOGYxMzdhMDAxMmFiNzAzNTUzNmU2NDYyMzYzMTUzIDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V2ViQ29yZS9wYWdlL0NvbnRlbnRTZWN1cml0eVBvbGljeS5oCisrKyBiL1NvdXJjZS9XZWJDb3Jl
L3BhZ2UvQ29udGVudFNlY3VyaXR5UG9saWN5LmgKQEAgLTMxLDYgKzMxLDEyIEBACiAjaW5jbHVk
ZSA8d3RmL1ZlY3Rvci5oPgogI2luY2x1ZGUgPHd0Zi90ZXh0L1dURlN0cmluZy5oPgogCituYW1l
c3BhY2UgV1RGIHsKKworY2xhc3MgT3JkaW5hbE51bWJlcjsKKworfQorCiBuYW1lc3BhY2UgV2Vi
Q29yZSB7CiAKIGNsYXNzIENTUERpcmVjdGl2ZUxpc3Q7CkBAIC02MSwxMCArNjcsMTAgQEAgcHVi
bGljOgogICAgIGNvbnN0IFN0cmluZyYgZGVwcmVjYXRlZEhlYWRlcigpIGNvbnN0OwogICAgIEhl
YWRlclR5cGUgZGVwcmVjYXRlZEhlYWRlclR5cGUoKSBjb25zdDsKIAotICAgIGJvb2wgYWxsb3dK
YXZhU2NyaXB0VVJMcygpIGNvbnN0OwotICAgIGJvb2wgYWxsb3dJbmxpbmVFdmVudEhhbmRsZXJz
KCkgY29uc3Q7Ci0gICAgYm9vbCBhbGxvd0lubGluZVNjcmlwdCgpIGNvbnN0OwotICAgIGJvb2wg
YWxsb3dJbmxpbmVTdHlsZSgpIGNvbnN0OworICAgIGJvb2wgYWxsb3dKYXZhU2NyaXB0VVJMcyhj
b25zdCBTdHJpbmcmIGNvbnRleHRVUkwsIGNvbnN0IFdURjo6T3JkaW5hbE51bWJlciYgY29udGV4
dExpbmUpIGNvbnN0OworICAgIGJvb2wgYWxsb3dJbmxpbmVFdmVudEhhbmRsZXJzKGNvbnN0IFN0
cmluZyYgY29udGV4dFVSTCwgY29uc3QgV1RGOjpPcmRpbmFsTnVtYmVyJiBjb250ZXh0TGluZSkg
Y29uc3Q7CisgICAgYm9vbCBhbGxvd0lubGluZVNjcmlwdChjb25zdCBTdHJpbmcmIGNvbnRleHRV
UkwsIGNvbnN0IFdURjo6T3JkaW5hbE51bWJlciYgY29udGV4dExpbmUpIGNvbnN0OworICAgIGJv
b2wgYWxsb3dJbmxpbmVTdHlsZShjb25zdCBTdHJpbmcmIGNvbnRleHRVUkwsIGNvbnN0IFdURjo6
T3JkaW5hbE51bWJlciYgY29udGV4dExpbmUpIGNvbnN0OwogICAgIGJvb2wgYWxsb3dFdmFsKCkg
Y29uc3Q7CiAKICAgICBib29sIGFsbG93U2NyaXB0RnJvbVNvdXJjZShjb25zdCBLVVJMJikgY29u
c3Q7CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cgYi9MYXlvdXRUZXN0cy9DaGFu
Z2VMb2cKaW5kZXggMzdkMDU3MGVmYjc0ZDdmMWZhNDNlNzA2N2RhM2I5YmE0N2NhNjA4Ni4uYjcy
ZTA0NDRiZjE3ZjliMzZmZDI2NWY4OGM3MTMwODYxM2I1ZjFlNCAxMDA2NDQKLS0tIGEvTGF5b3V0
VGVzdHMvQ2hhbmdlTG9nCisrKyBiL0xheW91dFRlc3RzL0NoYW5nZUxvZwpAQCAtMSwzICsxLDMx
IEBACisyMDEyLTA1LTE4ICBNaWtlIFdlc3QgIDxta3dzdEBjaHJvbWl1bS5vcmc+CisKKyAgICAg
ICAgSW5saW5lIHNjcmlwdCBhbmQgc3R5bGUgYmxvY2tlZCBieSBDb250ZW50IFNlY3VyaXR5IFBv
bGljeSBzaG91bGQgcHJvdmlkZSBtb3JlIGRldGFpbGVkIGNvbnNvbGUgZXJyb3JzLgorICAgICAg
ICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9ODY4NDgKKworICAgICAg
ICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICAqIGh0dHAvdGVzdHMvc2Vj
dXJpdHkvY29udGVudFNlY3VyaXR5UG9saWN5L2NvbWJpbmUtbXVsdGlwbGUtcG9saWNpZXMtZXhw
ZWN0ZWQudHh0OgorICAgICAgICAqIGh0dHAvdGVzdHMvc2VjdXJpdHkvY29udGVudFNlY3VyaXR5
UG9saWN5L2RlZmF1bHQtc3JjLWlubGluZS1ibG9ja2VkLWV4cGVjdGVkLnR4dDoKKyAgICAgICAg
KiBodHRwL3Rlc3RzL3NlY3VyaXR5L2NvbnRlbnRTZWN1cml0eVBvbGljeS9pbmplY3RlZC1pbmxp
bmUtc2NyaXB0LWFsbG93ZWQtZXhwZWN0ZWQudHh0OiBBZGRlZC4KKyAgICAgICAgKiBodHRwL3Rl
c3RzL3NlY3VyaXR5L2NvbnRlbnRTZWN1cml0eVBvbGljeS9pbmplY3RlZC1pbmxpbmUtc2NyaXB0
LWFsbG93ZWQuaHRtbDogQWRkZWQuCisgICAgICAgICogaHR0cC90ZXN0cy9zZWN1cml0eS9jb250
ZW50U2VjdXJpdHlQb2xpY3kvaW5qZWN0ZWQtaW5saW5lLXNjcmlwdC1ibG9ja2VkLWV4cGVjdGVk
LnR4dDogQWRkZWQuCisgICAgICAgICogaHR0cC90ZXN0cy9zZWN1cml0eS9jb250ZW50U2VjdXJp
dHlQb2xpY3kvaW5qZWN0ZWQtaW5saW5lLXNjcmlwdC1ibG9ja2VkLmh0bWw6IEFkZGVkLgorICAg
ICAgICAqIGh0dHAvdGVzdHMvc2VjdXJpdHkvY29udGVudFNlY3VyaXR5UG9saWN5L2lubGluZS1z
Y3JpcHQtYmxvY2tlZC1leHBlY3RlZC50eHQ6CisgICAgICAgICogaHR0cC90ZXN0cy9zZWN1cml0
eS9jb250ZW50U2VjdXJpdHlQb2xpY3kvaW5saW5lLXNjcmlwdC1ibG9ja2VkLWdvb2Z5LWV4cGVj
dGVkLnR4dDoKKyAgICAgICAgKiBodHRwL3Rlc3RzL3NlY3VyaXR5L2NvbnRlbnRTZWN1cml0eVBv
bGljeS9pbmxpbmUtc2NyaXB0LWJsb2NrZWQtamF2YXNjcmlwdC11cmwtZXhwZWN0ZWQudHh0Ogor
ICAgICAgICAqIGh0dHAvdGVzdHMvc2VjdXJpdHkvY29udGVudFNlY3VyaXR5UG9saWN5L2lubGlu
ZS1zdHlsZS1hdHRyaWJ1dGUtYmxvY2tlZC1leHBlY3RlZC50eHQ6CisgICAgICAgICogaHR0cC90
ZXN0cy9zZWN1cml0eS9jb250ZW50U2VjdXJpdHlQb2xpY3kvaW5saW5lLXN0eWxlLWJsb2NrZWQt
ZXhwZWN0ZWQudHh0OgorICAgICAgICAqIGh0dHAvdGVzdHMvc2VjdXJpdHkvY29udGVudFNlY3Vy
aXR5UG9saWN5L2phdmFzY3JpcHQtdXJsLWJsb2NrZWQtZXhwZWN0ZWQudHh0OgorICAgICAgICAq
IGh0dHAvdGVzdHMvc2VjdXJpdHkvY29udGVudFNlY3VyaXR5UG9saWN5L3JlcG9ydC1hbmQtZW5m
b3JjZS1leHBlY3RlZC50eHQ6CisgICAgICAgICogaHR0cC90ZXN0cy9zZWN1cml0eS9jb250ZW50
U2VjdXJpdHlQb2xpY3kvcmVwb3J0LW9ubHktZXhwZWN0ZWQudHh0OgorICAgICAgICAqIGh0dHAv
dGVzdHMvc2VjdXJpdHkvY29udGVudFNlY3VyaXR5UG9saWN5L3JlcG9ydC1vbmx5LWZyb20taGVh
ZGVyLWV4cGVjdGVkLnR4dDoKKyAgICAgICAgKiBodHRwL3Rlc3RzL3NlY3VyaXR5L2NvbnRlbnRT
ZWN1cml0eVBvbGljeS9yZXBvcnQtdXJpLWV4cGVjdGVkLnR4dDoKKyAgICAgICAgKiBodHRwL3Rl
c3RzL3NlY3VyaXR5L2NvbnRlbnRTZWN1cml0eVBvbGljeS9yZXBvcnQtdXJpLWZyb20tY2hpbGQt
ZnJhbWUtZXhwZWN0ZWQudHh0OgorICAgICAgICAqIGh0dHAvdGVzdHMvc2VjdXJpdHkvY29udGVu
dFNlY3VyaXR5UG9saWN5L3Jlc291cmNlcy9pbmplY3Qtc2NyaXB0LmpzOiBBZGRlZC4KKyAgICAg
ICAgKiBodHRwL3Rlc3RzL3NlY3VyaXR5L2NvbnRlbnRTZWN1cml0eVBvbGljeS9zY3JpcHQtc3Jj
LW5vbmUtaW5saW5lLWV2ZW50LWV4cGVjdGVkLnR4dDoKKyAgICAgICAgKiBodHRwL3Rlc3RzL3Nl
Y3VyaXR5L2NvbnRlbnRTZWN1cml0eVBvbGljeS9zcmNkb2MtZG9lc250LWJ5cGFzcy1zY3JpcHQt
c3JjLWV4cGVjdGVkLnR4dDoKKwogMjAxMi0wNS0xNyAgRGFuIEJlcm5zdGVpbiAgPG1pdHpAYXBw
bGUuY29tPgogCiAgICAgICAgIDxyZGFyOi8vcHJvYmxlbS8xMTQxOTkzMz4gUHJvYmxlbXMgd2l0
aCBmbGlwcGVkIHdyaXRpbmcgbW9kZXMgYW5kIGNvbXBvc2l0aW5nCmRpZmYgLS1naXQgYS9MYXlv
dXRUZXN0cy9odHRwL3Rlc3RzL3NlY3VyaXR5L2NvbnRlbnRTZWN1cml0eVBvbGljeS9jb21iaW5l
LW11bHRpcGxlLXBvbGljaWVzLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2h0dHAvdGVzdHMv
c2VjdXJpdHkvY29udGVudFNlY3VyaXR5UG9saWN5L2NvbWJpbmUtbXVsdGlwbGUtcG9saWNpZXMt
ZXhwZWN0ZWQudHh0CmluZGV4IDc1NjA0MTkwZmIzZWIyMjY4MDNlZDAwNzM3MWQwYjY2NzRjNDJj
ODguLjAxMjRmZThiYWI5ZTRmMTQxZDdlOTcyYWQ2ZGY1ODRhMTE5OTExM2MgMTAwNjQ0Ci0tLSBh
L0xheW91dFRlc3RzL2h0dHAvdGVzdHMvc2VjdXJpdHkvY29udGVudFNlY3VyaXR5UG9saWN5L2Nv
bWJpbmUtbXVsdGlwbGUtcG9saWNpZXMtZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL2h0
dHAvdGVzdHMvc2VjdXJpdHkvY29udGVudFNlY3VyaXR5UG9saWN5L2NvbWJpbmUtbXVsdGlwbGUt
cG9saWNpZXMtZXhwZWN0ZWQudHh0CkBAIC0xLDUgKzEsNSBAQAotQ09OU09MRSBNRVNTQUdFOiBS
ZWZ1c2VkIHRvIGV4ZWN1dGUgaW5saW5lIHNjcmlwdCBiZWNhdXNlIGl0IHZpb2xhdGVzIHRoZSBm
b2xsb3dpbmcgQ29udGVudCBTZWN1cml0eSBQb2xpY3kgZGlyZWN0aXZlOiAic2NyaXB0LXNyYyAn
c2VsZiciLgorQ09OU09MRSBNRVNTQUdFOiBsaW5lIDExOiBSZWZ1c2VkIHRvIGV4ZWN1dGUgaW5s
aW5lIHNjcmlwdCBiZWNhdXNlIGl0IHZpb2xhdGVzIHRoZSBmb2xsb3dpbmcgQ29udGVudCBTZWN1
cml0eSBQb2xpY3kgZGlyZWN0aXZlOiAic2NyaXB0LXNyYyAnc2VsZiciLgogCi1DT05TT0xFIE1F
U1NBR0U6IFJlZnVzZWQgdG8gYXBwbHkgaW5saW5lIHN0eWxlIGJlY2F1c2UgaXQgdmlvbGF0ZXMg
dGhlIGZvbGxvd2luZyBDb250ZW50IFNlY3VyaXR5IFBvbGljeSBkaXJlY3RpdmU6ICJzdHlsZS1z
cmMgJ25vbmUnIi4KK0NPTlNPTEUgTUVTU0FHRTogbGluZSAxNDogUmVmdXNlZCB0byBhcHBseSBp
bmxpbmUgc3R5bGUgYmVjYXVzZSBpdCB2aW9sYXRlcyB0aGUgZm9sbG93aW5nIENvbnRlbnQgU2Vj
dXJpdHkgUG9saWN5IGRpcmVjdGl2ZTogInN0eWxlLXNyYyAnbm9uZSciLgogCiBUaGlzIHRlc3Qg
Y2hlY2tzIHRoYXQgd2UgZW5mb3JjZSBhbGwgdGhlIHN1cHBsaWVkIHBvbGljaWVzLiBUaGlzIHRl
c3QgcGFzc2VzIGlmIGl0IGRvZXNuJ3QgYWxlcnQgZmFpbCBhbmQgaWYgdGhlIHN0eWxlIGRvZXNu
J3QgYXBwbHkuCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3NlY3VyaXR5L2Nv
bnRlbnRTZWN1cml0eVBvbGljeS9kZWZhdWx0LXNyYy1pbmxpbmUtYmxvY2tlZC1leHBlY3RlZC50
eHQgYi9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3NlY3VyaXR5L2NvbnRlbnRTZWN1cml0eVBvbGlj
eS9kZWZhdWx0LXNyYy1pbmxpbmUtYmxvY2tlZC1leHBlY3RlZC50eHQKaW5kZXggZDY4NWNhZGQy
OTVhOTFmNGRmMDQ2NDY5NTIyYWE4YjlhMzExYTg4YS4uNTI1ZGQ3NTVkY2Q4Mjc5ZTIxMjVjNmM2
MTcyZjg3NDllODZmM2UzNSAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9zZWN1
cml0eS9jb250ZW50U2VjdXJpdHlQb2xpY3kvZGVmYXVsdC1zcmMtaW5saW5lLWJsb2NrZWQtZXhw
ZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvc2VjdXJpdHkvY29udGVudFNl
Y3VyaXR5UG9saWN5L2RlZmF1bHQtc3JjLWlubGluZS1ibG9ja2VkLWV4cGVjdGVkLnR4dApAQCAt
MSw1ICsxLDUgQEAKLUNPTlNPTEUgTUVTU0FHRTogUmVmdXNlZCB0byBleGVjdXRlIGlubGluZSBz
Y3JpcHQgYmVjYXVzZSBpdCB2aW9sYXRlcyB0aGUgZm9sbG93aW5nIENvbnRlbnQgU2VjdXJpdHkg
UG9saWN5IGRpcmVjdGl2ZTogImRlZmF1bHQtc3JjICdzZWxmJyIuCitDT05TT0xFIE1FU1NBR0U6
IGxpbmUgOTogUmVmdXNlZCB0byBleGVjdXRlIGlubGluZSBzY3JpcHQgYmVjYXVzZSBpdCB2aW9s
YXRlcyB0aGUgZm9sbG93aW5nIENvbnRlbnQgU2VjdXJpdHkgUG9saWN5IGRpcmVjdGl2ZTogImRl
ZmF1bHQtc3JjICdzZWxmJyIuCiAKLUNPTlNPTEUgTUVTU0FHRTogUmVmdXNlZCB0byBleGVjdXRl
IGlubGluZSBzY3JpcHQgYmVjYXVzZSBpdCB2aW9sYXRlcyB0aGUgZm9sbG93aW5nIENvbnRlbnQg
U2VjdXJpdHkgUG9saWN5IGRpcmVjdGl2ZTogImRlZmF1bHQtc3JjICdzZWxmJyIuCitDT05TT0xF
IE1FU1NBR0U6IGxpbmUgMTI6IFJlZnVzZWQgdG8gZXhlY3V0ZSBpbmxpbmUgc2NyaXB0IGJlY2F1
c2UgaXQgdmlvbGF0ZXMgdGhlIGZvbGxvd2luZyBDb250ZW50IFNlY3VyaXR5IFBvbGljeSBkaXJl
Y3RpdmU6ICJkZWZhdWx0LXNyYyAnc2VsZiciLgogCiBUaGlzIHRlc3QgcGFzc2VzIGlmIGl0IGRv
ZXNuJ3QgYWxlcnQgZmFpbC4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvc2Vj
dXJpdHkvY29udGVudFNlY3VyaXR5UG9saWN5L2luamVjdGVkLWlubGluZS1zY3JpcHQtYWxsb3dl
ZC1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3NlY3VyaXR5L2NvbnRlbnRT
ZWN1cml0eVBvbGljeS9pbmplY3RlZC1pbmxpbmUtc2NyaXB0LWFsbG93ZWQtZXhwZWN0ZWQudHh0
Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAuLmFhOTg1OGJmMGU1MzZkZmI0N2UwZDNiNjY0NjhhZjQ3ZjYzMzQ1ZWYKLS0t
IC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3NlY3VyaXR5L2NvbnRlbnRT
ZWN1cml0eVBvbGljeS9pbmplY3RlZC1pbmxpbmUtc2NyaXB0LWFsbG93ZWQtZXhwZWN0ZWQudHh0
CkBAIC0wLDAgKzEsMyBAQAorQUxFUlQ6IFBhc3MgMSBvZiAyCitBTEVSVDogUGFzcyAyIG9mIDIK
KwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9zZWN1cml0eS9jb250ZW50U2Vj
dXJpdHlQb2xpY3kvaW5qZWN0ZWQtaW5saW5lLXNjcmlwdC1hbGxvd2VkLmh0bWwgYi9MYXlvdXRU
ZXN0cy9odHRwL3Rlc3RzL3NlY3VyaXR5L2NvbnRlbnRTZWN1cml0eVBvbGljeS9pbmplY3RlZC1p
bmxpbmUtc2NyaXB0LWFsbG93ZWQuaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5jZWIyN2Q1YmFmYjcyNWQxYzU0
NTdiNzVjYmNjYTJiNzJmZmEzNWNlCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvaHR0
cC90ZXN0cy9zZWN1cml0eS9jb250ZW50U2VjdXJpdHlQb2xpY3kvaW5qZWN0ZWQtaW5saW5lLXNj
cmlwdC1hbGxvd2VkLmh0bWwKQEAgLTAsMCArMSwxMCBAQAorPCFET0NUWVBFIGh0bWw+Cis8aHRt
bD4KKzxoZWFkPgorPG1ldGEgaHR0cC1lcXVpdj0iWC1XZWJLaXQtQ1NQIiBjb250ZW50PSJzY3Jp
cHQtc3JjIGh0dHA6Ly8xMjcuMC4wLjE6KiAndW5zYWZlLWlubGluZSciPgorPHNjcmlwdCBzcmM9
InJlc291cmNlcy9kdW1wLWFzLXRleHQuanMiPjwvc2NyaXB0PgorPC9oZWFkPgorPGJvZHk+Cis8
c2NyaXB0IHNyYz0icmVzb3VyY2VzL2luamVjdC1zY3JpcHQuanMiPjwvc2NyaXB0PgorPC9ib2R5
PgorPC9odG1sPgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9zZWN1cml0eS9j
b250ZW50U2VjdXJpdHlQb2xpY3kvaW5qZWN0ZWQtaW5saW5lLXNjcmlwdC1ibG9ja2VkLWV4cGVj
dGVkLnR4dCBiL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvc2VjdXJpdHkvY29udGVudFNlY3VyaXR5
UG9saWN5L2luamVjdGVkLWlubGluZS1zY3JpcHQtYmxvY2tlZC1leHBlY3RlZC50eHQKbmV3IGZp
bGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMC4uOTZkNmNhY2Q5YzM5ZTU5Nzc4MjNiMzRmNDAzNjhlNDBjOTBiNDMzYwotLS0gL2Rldi9u
dWxsCisrKyBiL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvc2VjdXJpdHkvY29udGVudFNlY3VyaXR5
UG9saWN5L2luamVjdGVkLWlubGluZS1zY3JpcHQtYmxvY2tlZC1leHBlY3RlZC50eHQKQEAgLTAs
MCArMSw1IEBACitDT05TT0xFIE1FU1NBR0U6IGxpbmUgODogUmVmdXNlZCB0byBleGVjdXRlIGlu
bGluZSBzY3JpcHQgYmVjYXVzZSBpdCB2aW9sYXRlcyB0aGUgZm9sbG93aW5nIENvbnRlbnQgU2Vj
dXJpdHkgUG9saWN5IGRpcmVjdGl2ZTogInNjcmlwdC1zcmMgaHR0cDovLzEyNy4wLjAuMToqIi4K
KworQ09OU09MRSBNRVNTQUdFOiBsaW5lIDg6IFJlZnVzZWQgdG8gZXhlY3V0ZSBpbmxpbmUgc2Ny
aXB0IGJlY2F1c2UgaXQgdmlvbGF0ZXMgdGhlIGZvbGxvd2luZyBDb250ZW50IFNlY3VyaXR5IFBv
bGljeSBkaXJlY3RpdmU6ICJzY3JpcHQtc3JjIGh0dHA6Ly8xMjcuMC4wLjE6KiIuCisKKwpkaWZm
IC0tZ2l0IGEvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9zZWN1cml0eS9jb250ZW50U2VjdXJpdHlQ
b2xpY3kvaW5qZWN0ZWQtaW5saW5lLXNjcmlwdC1ibG9ja2VkLmh0bWwgYi9MYXlvdXRUZXN0cy9o
dHRwL3Rlc3RzL3NlY3VyaXR5L2NvbnRlbnRTZWN1cml0eVBvbGljeS9pbmplY3RlZC1pbmxpbmUt
c2NyaXB0LWJsb2NrZWQuaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi42MTA4NjhiN2VjNzZiNTAzYWJiZDQ5M2Mz
MmIxNTQ0ZmQzOTM3OGJiCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvaHR0cC90ZXN0
cy9zZWN1cml0eS9jb250ZW50U2VjdXJpdHlQb2xpY3kvaW5qZWN0ZWQtaW5saW5lLXNjcmlwdC1i
bG9ja2VkLmh0bWwKQEAgLTAsMCArMSwxMCBAQAorPCFET0NUWVBFIGh0bWw+Cis8aHRtbD4KKzxo
ZWFkPgorPG1ldGEgaHR0cC1lcXVpdj0iWC1XZWJLaXQtQ1NQIiBjb250ZW50PSJzY3JpcHQtc3Jj
IGh0dHA6Ly8xMjcuMC4wLjE6KiI+Cis8c2NyaXB0IHNyYz0icmVzb3VyY2VzL2R1bXAtYXMtdGV4
dC5qcyI+PC9zY3JpcHQ+Cis8L2hlYWQ+Cis8Ym9keT4KKzxzY3JpcHQgc3JjPSJyZXNvdXJjZXMv
aW5qZWN0LXNjcmlwdC5qcyI+PC9zY3JpcHQ+Cis8L2JvZHk+Cis8L2h0bWw+CmRpZmYgLS1naXQg
YS9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3NlY3VyaXR5L2NvbnRlbnRTZWN1cml0eVBvbGljeS9p
bmxpbmUtc2NyaXB0LWJsb2NrZWQtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaHR0cC90ZXN0
cy9zZWN1cml0eS9jb250ZW50U2VjdXJpdHlQb2xpY3kvaW5saW5lLXNjcmlwdC1ibG9ja2VkLWV4
cGVjdGVkLnR4dAppbmRleCAwY2VhZDYxM2VkYTc1NGU1OTI3Y2M4ZDFjZDc4NTU0YzYzMjE2NTEy
Li5lMWI2OGI1MGY3ZTc2N2NkYjc4OTFkODFmMDIyNzUwYWY0MjgxOTdmIDEwMDY0NAotLS0gYS9M
YXlvdXRUZXN0cy9odHRwL3Rlc3RzL3NlY3VyaXR5L2NvbnRlbnRTZWN1cml0eVBvbGljeS9pbmxp
bmUtc2NyaXB0LWJsb2NrZWQtZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL2h0dHAvdGVz
dHMvc2VjdXJpdHkvY29udGVudFNlY3VyaXR5UG9saWN5L2lubGluZS1zY3JpcHQtYmxvY2tlZC1l
eHBlY3RlZC50eHQKQEAgLTEsNSArMSw1IEBACi1DT05TT0xFIE1FU1NBR0U6IFJlZnVzZWQgdG8g
ZXhlY3V0ZSBpbmxpbmUgc2NyaXB0IGJlY2F1c2UgaXQgdmlvbGF0ZXMgdGhlIGZvbGxvd2luZyBD
b250ZW50IFNlY3VyaXR5IFBvbGljeSBkaXJlY3RpdmU6ICJzY3JpcHQtc3JjIGh0dHA6Ly8xMjcu
MC4wLjE6KiIuCitDT05TT0xFIE1FU1NBR0U6IGxpbmUgOTogUmVmdXNlZCB0byBleGVjdXRlIGlu
bGluZSBzY3JpcHQgYmVjYXVzZSBpdCB2aW9sYXRlcyB0aGUgZm9sbG93aW5nIENvbnRlbnQgU2Vj
dXJpdHkgUG9saWN5IGRpcmVjdGl2ZTogInNjcmlwdC1zcmMgaHR0cDovLzEyNy4wLjAuMToqIi4K
IAotQ09OU09MRSBNRVNTQUdFOiBSZWZ1c2VkIHRvIGV4ZWN1dGUgaW5saW5lIHNjcmlwdCBiZWNh
dXNlIGl0IHZpb2xhdGVzIHRoZSBmb2xsb3dpbmcgQ29udGVudCBTZWN1cml0eSBQb2xpY3kgZGly
ZWN0aXZlOiAic2NyaXB0LXNyYyBodHRwOi8vMTI3LjAuMC4xOioiLgorQ09OU09MRSBNRVNTQUdF
OiBsaW5lIDEyOiBSZWZ1c2VkIHRvIGV4ZWN1dGUgaW5saW5lIHNjcmlwdCBiZWNhdXNlIGl0IHZp
b2xhdGVzIHRoZSBmb2xsb3dpbmcgQ29udGVudCBTZWN1cml0eSBQb2xpY3kgZGlyZWN0aXZlOiAi
c2NyaXB0LXNyYyBodHRwOi8vMTI3LjAuMC4xOioiLgogCiBUaGlzIHRlc3QgcGFzc2VzIGlmIGl0
IGRvZXNuJ3QgYWxlcnQgZmFpbC4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2h0dHAvdGVzdHMv
c2VjdXJpdHkvY29udGVudFNlY3VyaXR5UG9saWN5L2lubGluZS1zY3JpcHQtYmxvY2tlZC1nb29m
eS1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3NlY3VyaXR5L2NvbnRlbnRT
ZWN1cml0eVBvbGljeS9pbmxpbmUtc2NyaXB0LWJsb2NrZWQtZ29vZnktZXhwZWN0ZWQudHh0Cmlu
ZGV4IDViYjA0NWM3Yzk1MzZhNDI0MGZkNmU2NzdkNmRiNmFkYjA0NjQxY2YuLjUzNThjMDU2NDI4
NjQ0ZWM0YTUxZmMyZTA0YWNlZjExNTJlNGE3MDYgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2h0
dHAvdGVzdHMvc2VjdXJpdHkvY29udGVudFNlY3VyaXR5UG9saWN5L2lubGluZS1zY3JpcHQtYmxv
Y2tlZC1nb29meS1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9zZWN1
cml0eS9jb250ZW50U2VjdXJpdHlQb2xpY3kvaW5saW5lLXNjcmlwdC1ibG9ja2VkLWdvb2Z5LWV4
cGVjdGVkLnR4dApAQCAtMSw3ICsxLDcgQEAKIENPTlNPTEUgTUVTU0FHRTogVW5yZWNvZ25pemVk
IENvbnRlbnQtU2VjdXJpdHktUG9saWN5IGRpcmVjdGl2ZSAnb3B0aW9ucycuCiAKLUNPTlNPTEUg
TUVTU0FHRTogUmVmdXNlZCB0byBleGVjdXRlIGlubGluZSBzY3JpcHQgYmVjYXVzZSBpdCB2aW9s
YXRlcyB0aGUgZm9sbG93aW5nIENvbnRlbnQgU2VjdXJpdHkgUG9saWN5IGRpcmVjdGl2ZTogInNj
cmlwdC1zcmMgaHR0cDovLzEyNy4wLjAuMToqIi4KK0NPTlNPTEUgTUVTU0FHRTogbGluZSA5OiBS
ZWZ1c2VkIHRvIGV4ZWN1dGUgaW5saW5lIHNjcmlwdCBiZWNhdXNlIGl0IHZpb2xhdGVzIHRoZSBm
b2xsb3dpbmcgQ29udGVudCBTZWN1cml0eSBQb2xpY3kgZGlyZWN0aXZlOiAic2NyaXB0LXNyYyBo
dHRwOi8vMTI3LjAuMC4xOioiLgogCi1DT05TT0xFIE1FU1NBR0U6IFJlZnVzZWQgdG8gZXhlY3V0
ZSBpbmxpbmUgZXZlbnQgaGFuZGxlciBiZWNhdXNlIGl0IHZpb2xhdGVzIHRoZSBmb2xsb3dpbmcg
Q29udGVudCBTZWN1cml0eSBQb2xpY3kgZGlyZWN0aXZlOiAic2NyaXB0LXNyYyBodHRwOi8vMTI3
LjAuMC4xOioiLgorQ09OU09MRSBNRVNTQUdFOiBsaW5lIDc6IFJlZnVzZWQgdG8gZXhlY3V0ZSBp
bmxpbmUgZXZlbnQgaGFuZGxlciBiZWNhdXNlIGl0IHZpb2xhdGVzIHRoZSBmb2xsb3dpbmcgQ29u
dGVudCBTZWN1cml0eSBQb2xpY3kgZGlyZWN0aXZlOiAic2NyaXB0LXNyYyBodHRwOi8vMTI3LjAu
MC4xOioiLgogCiBUaGlzIHRlc3QgcGFzc2VzIGlmIGl0IGRvZXNuJ3QgYWxlcnQgZmFpbC4KZGlm
ZiAtLWdpdCBhL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvc2VjdXJpdHkvY29udGVudFNlY3VyaXR5
UG9saWN5L2lubGluZS1zY3JpcHQtYmxvY2tlZC1qYXZhc2NyaXB0LXVybC1leHBlY3RlZC50eHQg
Yi9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3NlY3VyaXR5L2NvbnRlbnRTZWN1cml0eVBvbGljeS9p
bmxpbmUtc2NyaXB0LWJsb2NrZWQtamF2YXNjcmlwdC11cmwtZXhwZWN0ZWQudHh0CmluZGV4IGVk
MDYyNDQ2NzI4NWU4MTBlYTY2NDgyY2NkZjQ5YWZiNDQwMGYxMzUuLjk1NDUwMWNkY2RkNzNhNzli
YTQyYWZhZTYwZDBlZWJiZmI3ZmYxM2YgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2h0dHAvdGVz
dHMvc2VjdXJpdHkvY29udGVudFNlY3VyaXR5UG9saWN5L2lubGluZS1zY3JpcHQtYmxvY2tlZC1q
YXZhc2NyaXB0LXVybC1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9z
ZWN1cml0eS9jb250ZW50U2VjdXJpdHlQb2xpY3kvaW5saW5lLXNjcmlwdC1ibG9ja2VkLWphdmFz
Y3JpcHQtdXJsLWV4cGVjdGVkLnR4dApAQCAtNCw2ICs0LDYgQEAgQ09OU09MRSBNRVNTQUdFOiBV
bnJlY29nbml6ZWQgQ29udGVudC1TZWN1cml0eS1Qb2xpY3kgZGlyZWN0aXZlICdvcHRpb25zJy4K
IAogQ09OU09MRSBNRVNTQUdFOiBVbnJlY29nbml6ZWQgQ29udGVudC1TZWN1cml0eS1Qb2xpY3kg
ZGlyZWN0aXZlICdvcHRpb25zJy4KIAotQ09OU09MRSBNRVNTQUdFOiBSZWZ1c2VkIHRvIGV4ZWN1
dGUgSmF2YVNjcmlwdCBVUkwgYmVjYXVzZSBpdCB2aW9sYXRlcyB0aGUgZm9sbG93aW5nIENvbnRl
bnQgU2VjdXJpdHkgUG9saWN5IGRpcmVjdGl2ZTogInNjcmlwdC1zcmMgaHR0cDovLzEyNy4wLjAu
MToqIi4KK0NPTlNPTEUgTUVTU0FHRTogbGluZSAxOiBSZWZ1c2VkIHRvIGV4ZWN1dGUgSmF2YVNj
cmlwdCBVUkwgYmVjYXVzZSBpdCB2aW9sYXRlcyB0aGUgZm9sbG93aW5nIENvbnRlbnQgU2VjdXJp
dHkgUG9saWN5IGRpcmVjdGl2ZTogInNjcmlwdC1zcmMgaHR0cDovLzEyNy4wLjAuMToqIi4KIAog
VGhpcyB0ZXN0IHBhc3NlcyBpZiBpdCBkb2Vzbid0IGFsZXJ0IGZhaWwuIApkaWZmIC0tZ2l0IGEv
TGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9zZWN1cml0eS9jb250ZW50U2VjdXJpdHlQb2xpY3kvaW5s
aW5lLXN0eWxlLWF0dHJpYnV0ZS1ibG9ja2VkLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2h0
dHAvdGVzdHMvc2VjdXJpdHkvY29udGVudFNlY3VyaXR5UG9saWN5L2lubGluZS1zdHlsZS1hdHRy
aWJ1dGUtYmxvY2tlZC1leHBlY3RlZC50eHQKaW5kZXggNzMyNTQ2MjUxMGE1YjY3OWIxMGRmOTUw
MzhiZTJiNTg2NzkxOThmMS4uZTdhNjg4MzE2ZDNkY2FiZTMzZTgxY2MzZGYzNjM1ZGRlNTE4MTNl
ZSAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9zZWN1cml0eS9jb250ZW50U2Vj
dXJpdHlQb2xpY3kvaW5saW5lLXN0eWxlLWF0dHJpYnV0ZS1ibG9ja2VkLWV4cGVjdGVkLnR4dAor
KysgYi9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3NlY3VyaXR5L2NvbnRlbnRTZWN1cml0eVBvbGlj
eS9pbmxpbmUtc3R5bGUtYXR0cmlidXRlLWJsb2NrZWQtZXhwZWN0ZWQudHh0CkBAIC0xLDMgKzEs
MyBAQAotQ09OU09MRSBNRVNTQUdFOiBSZWZ1c2VkIHRvIGFwcGx5IGlubGluZSBzdHlsZSBiZWNh
dXNlIGl0IHZpb2xhdGVzIHRoZSBmb2xsb3dpbmcgQ29udGVudCBTZWN1cml0eSBQb2xpY3kgZGly
ZWN0aXZlOiAic3R5bGUtc3JjICdub25lJyIuCitDT05TT0xFIE1FU1NBR0U6IGxpbmUgMTA6IFJl
ZnVzZWQgdG8gYXBwbHkgaW5saW5lIHN0eWxlIGJlY2F1c2UgaXQgdmlvbGF0ZXMgdGhlIGZvbGxv
d2luZyBDb250ZW50IFNlY3VyaXR5IFBvbGljeSBkaXJlY3RpdmU6ICJzdHlsZS1zcmMgJ25vbmUn
Ii4KIAogUEFTUwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9zZWN1cml0eS9j
b250ZW50U2VjdXJpdHlQb2xpY3kvaW5saW5lLXN0eWxlLWJsb2NrZWQtZXhwZWN0ZWQudHh0IGIv
TGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9zZWN1cml0eS9jb250ZW50U2VjdXJpdHlQb2xpY3kvaW5s
aW5lLXN0eWxlLWJsb2NrZWQtZXhwZWN0ZWQudHh0CmluZGV4IDczMjU0NjI1MTBhNWI2NzliMTBk
Zjk1MDM4YmUyYjU4Njc5MTk4ZjEuLjk2MzBkN2ExN2JjNzQxM2Q2ZTNlMjhiYWViOGMxNjQ4YjQw
N2VmZWIgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvc2VjdXJpdHkvY29udGVu
dFNlY3VyaXR5UG9saWN5L2lubGluZS1zdHlsZS1ibG9ja2VkLWV4cGVjdGVkLnR4dAorKysgYi9M
YXlvdXRUZXN0cy9odHRwL3Rlc3RzL3NlY3VyaXR5L2NvbnRlbnRTZWN1cml0eVBvbGljeS9pbmxp
bmUtc3R5bGUtYmxvY2tlZC1leHBlY3RlZC50eHQKQEAgLTEsMyArMSwzIEBACi1DT05TT0xFIE1F
U1NBR0U6IFJlZnVzZWQgdG8gYXBwbHkgaW5saW5lIHN0eWxlIGJlY2F1c2UgaXQgdmlvbGF0ZXMg
dGhlIGZvbGxvd2luZyBDb250ZW50IFNlY3VyaXR5IFBvbGljeSBkaXJlY3RpdmU6ICJzdHlsZS1z
cmMgJ25vbmUnIi4KK0NPTlNPTEUgTUVTU0FHRTogbGluZSA1OiBSZWZ1c2VkIHRvIGFwcGx5IGlu
bGluZSBzdHlsZSBiZWNhdXNlIGl0IHZpb2xhdGVzIHRoZSBmb2xsb3dpbmcgQ29udGVudCBTZWN1
cml0eSBQb2xpY3kgZGlyZWN0aXZlOiAic3R5bGUtc3JjICdub25lJyIuCiAKIFBBU1MKZGlmZiAt
LWdpdCBhL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvc2VjdXJpdHkvY29udGVudFNlY3VyaXR5UG9s
aWN5L2phdmFzY3JpcHQtdXJsLWJsb2NrZWQtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaHR0
cC90ZXN0cy9zZWN1cml0eS9jb250ZW50U2VjdXJpdHlQb2xpY3kvamF2YXNjcmlwdC11cmwtYmxv
Y2tlZC1leHBlY3RlZC50eHQKaW5kZXggOGUyZGMzMzMyMTczNTJmNDg1NDQ5NDZmZTE0MmQ1OTBj
OGE5N2FlMy4uMWNhOTI2MmJkNTMyMWVhNWZjZjU5N2MwN2UxYzMxOTA4ODlkYzJkOSAxMDA2NDQK
LS0tIGEvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9zZWN1cml0eS9jb250ZW50U2VjdXJpdHlQb2xp
Y3kvamF2YXNjcmlwdC11cmwtYmxvY2tlZC1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMv
aHR0cC90ZXN0cy9zZWN1cml0eS9jb250ZW50U2VjdXJpdHlQb2xpY3kvamF2YXNjcmlwdC11cmwt
YmxvY2tlZC1leHBlY3RlZC50eHQKQEAgLTQsNyArNCw3IEBAIENPTlNPTEUgTUVTU0FHRTogVW5y
ZWNvZ25pemVkIENvbnRlbnQtU2VjdXJpdHktUG9saWN5IGRpcmVjdGl2ZSAnYWxsb3cnLgogCiBD
T05TT0xFIE1FU1NBR0U6IFVucmVjb2duaXplZCBDb250ZW50LVNlY3VyaXR5LVBvbGljeSBkaXJl
Y3RpdmUgJ2FsbG93Jy4KIAotQ09OU09MRSBNRVNTQUdFOiBSZWZ1c2VkIHRvIGV4ZWN1dGUgSmF2
YVNjcmlwdCBVUkwgYmVjYXVzZSBpdCB2aW9sYXRlcyB0aGUgZm9sbG93aW5nIENvbnRlbnQgU2Vj
dXJpdHkgUG9saWN5IGRpcmVjdGl2ZTogInNjcmlwdC1zcmMgJ25vbmUnIi4KK0NPTlNPTEUgTUVT
U0FHRTogbGluZSAxOiBSZWZ1c2VkIHRvIGV4ZWN1dGUgSmF2YVNjcmlwdCBVUkwgYmVjYXVzZSBp
dCB2aW9sYXRlcyB0aGUgZm9sbG93aW5nIENvbnRlbnQgU2VjdXJpdHkgUG9saWN5IGRpcmVjdGl2
ZTogInNjcmlwdC1zcmMgJ25vbmUnIi4KIAogQ09OU09MRSBNRVNTQUdFOiBVbnJlY29nbml6ZWQg
Q29udGVudC1TZWN1cml0eS1Qb2xpY3kgZGlyZWN0aXZlICdhbGxvdycuCiAKZGlmZiAtLWdpdCBh
L0xheW91dFRlc3RzL2h0dHAvdGVzdHMvc2VjdXJpdHkvY29udGVudFNlY3VyaXR5UG9saWN5L3Jl
cG9ydC1hbmQtZW5mb3JjZS1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3Nl
Y3VyaXR5L2NvbnRlbnRTZWN1cml0eVBvbGljeS9yZXBvcnQtYW5kLWVuZm9yY2UtZXhwZWN0ZWQu
dHh0CmluZGV4IDJkM2IyYWJhNmZkY2FlYzhmODI0MzEyYzE0N2JmNzViM2U2ZTY3YTguLjlhZWZh
NGNmOTliNjNkMGExNTVhZDkzOGM2Zjg1YTZmYzlkNTE3OWEgMTAwNjQ0Ci0tLSBhL0xheW91dFRl
c3RzL2h0dHAvdGVzdHMvc2VjdXJpdHkvY29udGVudFNlY3VyaXR5UG9saWN5L3JlcG9ydC1hbmQt
ZW5mb3JjZS1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9zZWN1cml0
eS9jb250ZW50U2VjdXJpdHlQb2xpY3kvcmVwb3J0LWFuZC1lbmZvcmNlLWV4cGVjdGVkLnR4dApA
QCAtMSw0ICsxLDQgQEAKLUNPTlNPTEUgTUVTU0FHRTogW1JlcG9ydCBPbmx5XSBSZWZ1c2VkIHRv
IGV4ZWN1dGUgaW5saW5lIHNjcmlwdCBiZWNhdXNlIGl0IHZpb2xhdGVzIHRoZSBmb2xsb3dpbmcg
Q29udGVudCBTZWN1cml0eSBQb2xpY3kgZGlyZWN0aXZlOiAic2NyaXB0LXNyYyAnc2VsZiciLgor
Q09OU09MRSBNRVNTQUdFOiBsaW5lIDM6IFtSZXBvcnQgT25seV0gUmVmdXNlZCB0byBleGVjdXRl
IGlubGluZSBzY3JpcHQgYmVjYXVzZSBpdCB2aW9sYXRlcyB0aGUgZm9sbG93aW5nIENvbnRlbnQg
U2VjdXJpdHkgUG9saWN5IGRpcmVjdGl2ZTogInNjcmlwdC1zcmMgJ3NlbGYnIi4KIAogQUxFUlQ6
IFBBU1MKIENPTlNPTEUgTUVTU0FHRTogUmVmdXNlZCB0byBsb2FkIHRoZSBpbWFnZSAnaHR0cDov
LzEyNy4wLjAuMTo4MDAwL3NlY3VyaXR5L3Jlc291cmNlcy9hYmUucG5nJyBiZWNhdXNlIGl0IHZp
b2xhdGVzIHRoZSBmb2xsb3dpbmcgQ29udGVudCBTZWN1cml0eSBQb2xpY3kgZGlyZWN0aXZlOiAi
aW1nLXNyYyAnbm9uZSciLgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9zZWN1
cml0eS9jb250ZW50U2VjdXJpdHlQb2xpY3kvcmVwb3J0LW9ubHktZXhwZWN0ZWQudHh0IGIvTGF5
b3V0VGVzdHMvaHR0cC90ZXN0cy9zZWN1cml0eS9jb250ZW50U2VjdXJpdHlQb2xpY3kvcmVwb3J0
LW9ubHktZXhwZWN0ZWQudHh0CmluZGV4IDc0ZGM1ZDYwZjg4ZjkxNzJjMmI3NTA3OTE1YzU3ZWJl
MDMxYjczZDIuLmExZWRmM2FlYTFhNzM4NTA4Y2YyMWJkZmMwODNhOWEwMjE4NTk3NTYgMTAwNjQ0
Ci0tLSBhL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvc2VjdXJpdHkvY29udGVudFNlY3VyaXR5UG9s
aWN5L3JlcG9ydC1vbmx5LWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9odHRwL3Rlc3Rz
L3NlY3VyaXR5L2NvbnRlbnRTZWN1cml0eVBvbGljeS9yZXBvcnQtb25seS1leHBlY3RlZC50eHQK
QEAgLTEsNCArMSw0IEBACi1DT05TT0xFIE1FU1NBR0U6IFtSZXBvcnQgT25seV0gUmVmdXNlZCB0
byBleGVjdXRlIGlubGluZSBzY3JpcHQgYmVjYXVzZSBpdCB2aW9sYXRlcyB0aGUgZm9sbG93aW5n
IENvbnRlbnQgU2VjdXJpdHkgUG9saWN5IGRpcmVjdGl2ZTogInNjcmlwdC1zcmMgJ3NlbGYnIi4K
K0NPTlNPTEUgTUVTU0FHRTogbGluZSAyOiBbUmVwb3J0IE9ubHldIFJlZnVzZWQgdG8gZXhlY3V0
ZSBpbmxpbmUgc2NyaXB0IGJlY2F1c2UgaXQgdmlvbGF0ZXMgdGhlIGZvbGxvd2luZyBDb250ZW50
IFNlY3VyaXR5IFBvbGljeSBkaXJlY3RpdmU6ICJzY3JpcHQtc3JjICdzZWxmJyIuCiAKIEFMRVJU
OiBQQVNTCiBDU1AgcmVwb3J0IHJlY2VpdmVkOgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaHR0
cC90ZXN0cy9zZWN1cml0eS9jb250ZW50U2VjdXJpdHlQb2xpY3kvcmVwb3J0LW9ubHktZnJvbS1o
ZWFkZXItZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9zZWN1cml0eS9jb250
ZW50U2VjdXJpdHlQb2xpY3kvcmVwb3J0LW9ubHktZnJvbS1oZWFkZXItZXhwZWN0ZWQudHh0Cmlu
ZGV4IGFjZTE2NDY4NzVhNjI3YzBjOWRmM2YyYTBlZWJhYTU5OTM3Y2YzYjAuLmNlYzJjMjhlNzdl
YzhjZjljNzI4YzFjNGZlZTgwNWNkMzM0YWVjM2QgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2h0
dHAvdGVzdHMvc2VjdXJpdHkvY29udGVudFNlY3VyaXR5UG9saWN5L3JlcG9ydC1vbmx5LWZyb20t
aGVhZGVyLWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3NlY3VyaXR5
L2NvbnRlbnRTZWN1cml0eVBvbGljeS9yZXBvcnQtb25seS1mcm9tLWhlYWRlci1leHBlY3RlZC50
eHQKQEAgLTEsNCArMSw0IEBACi1DT05TT0xFIE1FU1NBR0U6IFtSZXBvcnQgT25seV0gUmVmdXNl
ZCB0byBleGVjdXRlIGlubGluZSBzY3JpcHQgYmVjYXVzZSBpdCB2aW9sYXRlcyB0aGUgZm9sbG93
aW5nIENvbnRlbnQgU2VjdXJpdHkgUG9saWN5IGRpcmVjdGl2ZTogInNjcmlwdC1zcmMgJ3NlbGYn
Ii4KK0NPTlNPTEUgTUVTU0FHRTogbGluZSAxOiBbUmVwb3J0IE9ubHldIFJlZnVzZWQgdG8gZXhl
Y3V0ZSBpbmxpbmUgc2NyaXB0IGJlY2F1c2UgaXQgdmlvbGF0ZXMgdGhlIGZvbGxvd2luZyBDb250
ZW50IFNlY3VyaXR5IFBvbGljeSBkaXJlY3RpdmU6ICJzY3JpcHQtc3JjICdzZWxmJyIuCiAKIEFM
RVJUOiBQQVNTCiBDU1AgcmVwb3J0IHJlY2VpdmVkOgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMv
aHR0cC90ZXN0cy9zZWN1cml0eS9jb250ZW50U2VjdXJpdHlQb2xpY3kvcmVwb3J0LXVyaS1leHBl
Y3RlZC50eHQgYi9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3NlY3VyaXR5L2NvbnRlbnRTZWN1cml0
eVBvbGljeS9yZXBvcnQtdXJpLWV4cGVjdGVkLnR4dAppbmRleCBiODA1MGZmMjAzMDE3ZmRlOGEy
YmNlZjBjNGQ3YWQxMDAzNDE2YmJkLi41NmE2ZWY2MjMxNWQxZWFlNWFiZDBkOWU4MDE0MzQzOThj
YWQ4MDBmIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3NlY3VyaXR5L2NvbnRl
bnRTZWN1cml0eVBvbGljeS9yZXBvcnQtdXJpLWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0
cy9odHRwL3Rlc3RzL3NlY3VyaXR5L2NvbnRlbnRTZWN1cml0eVBvbGljeS9yZXBvcnQtdXJpLWV4
cGVjdGVkLnR4dApAQCAtMSw0ICsxLDQgQEAKLUNPTlNPTEUgTUVTU0FHRTogUmVmdXNlZCB0byBl
eGVjdXRlIGlubGluZSBzY3JpcHQgYmVjYXVzZSBpdCB2aW9sYXRlcyB0aGUgZm9sbG93aW5nIENv
bnRlbnQgU2VjdXJpdHkgUG9saWN5IGRpcmVjdGl2ZTogInNjcmlwdC1zcmMgJ3NlbGYnIi4KK0NP
TlNPTEUgTUVTU0FHRTogbGluZSAyOiBSZWZ1c2VkIHRvIGV4ZWN1dGUgaW5saW5lIHNjcmlwdCBi
ZWNhdXNlIGl0IHZpb2xhdGVzIHRoZSBmb2xsb3dpbmcgQ29udGVudCBTZWN1cml0eSBQb2xpY3kg
ZGlyZWN0aXZlOiAic2NyaXB0LXNyYyAnc2VsZiciLgogCiBDU1AgcmVwb3J0IHJlY2VpdmVkOgog
Q09OVEVOVF9UWVBFOiBhcHBsaWNhdGlvbi9qc29uCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9o
dHRwL3Rlc3RzL3NlY3VyaXR5L2NvbnRlbnRTZWN1cml0eVBvbGljeS9yZXBvcnQtdXJpLWZyb20t
Y2hpbGQtZnJhbWUtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9zZWN1cml0
eS9jb250ZW50U2VjdXJpdHlQb2xpY3kvcmVwb3J0LXVyaS1mcm9tLWNoaWxkLWZyYW1lLWV4cGVj
dGVkLnR4dAppbmRleCAyNWRlOGUxOTc1NGEyOWFjOWZjZTIwNDk2MzRkN2FmMmZkMTU3OWY3Li44
NDMwYzMwOTgxNWJiMTI0YjcwYjYzODcwZTQ1YzVjYjBjNGM0MGMyIDEwMDY0NAotLS0gYS9MYXlv
dXRUZXN0cy9odHRwL3Rlc3RzL3NlY3VyaXR5L2NvbnRlbnRTZWN1cml0eVBvbGljeS9yZXBvcnQt
dXJpLWZyb20tY2hpbGQtZnJhbWUtZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL2h0dHAv
dGVzdHMvc2VjdXJpdHkvY29udGVudFNlY3VyaXR5UG9saWN5L3JlcG9ydC11cmktZnJvbS1jaGls
ZC1mcmFtZS1leHBlY3RlZC50eHQKQEAgLTEsNCArMSw0IEBACi1DT05TT0xFIE1FU1NBR0U6IFJl
ZnVzZWQgdG8gZXhlY3V0ZSBpbmxpbmUgc2NyaXB0IGJlY2F1c2UgaXQgdmlvbGF0ZXMgdGhlIGZv
bGxvd2luZyBDb250ZW50IFNlY3VyaXR5IFBvbGljeSBkaXJlY3RpdmU6ICJzY3JpcHQtc3JjICdz
ZWxmJyIuCitDT05TT0xFIE1FU1NBR0U6IGxpbmUgMjogUmVmdXNlZCB0byBleGVjdXRlIGlubGlu
ZSBzY3JpcHQgYmVjYXVzZSBpdCB2aW9sYXRlcyB0aGUgZm9sbG93aW5nIENvbnRlbnQgU2VjdXJp
dHkgUG9saWN5IGRpcmVjdGl2ZTogInNjcmlwdC1zcmMgJ3NlbGYnIi4KIAogCiAKZGlmZiAtLWdp
dCBhL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvc2VjdXJpdHkvY29udGVudFNlY3VyaXR5UG9saWN5
L3Jlc291cmNlcy9pbmplY3Qtc2NyaXB0LmpzIGIvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9zZWN1
cml0eS9jb250ZW50U2VjdXJpdHlQb2xpY3kvcmVzb3VyY2VzL2luamVjdC1zY3JpcHQuanMKbmV3
IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMC4uNzU2YmFmZmU5ZWU5ODRlNDU3NTlhMWMzOTU0OTk2ODhhYWI4MmYxYgotLS0gL2Rl
di9udWxsCisrKyBiL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvc2VjdXJpdHkvY29udGVudFNlY3Vy
aXR5UG9saWN5L3Jlc291cmNlcy9pbmplY3Qtc2NyaXB0LmpzCkBAIC0wLDAgKzEsNSBAQAorZG9j
dW1lbnQud3JpdGUoIjxzY3JpcHQ+YWxlcnQoJ1Bhc3MgMSBvZiAyJyk7PC9zY3JpcHQ+Iik7CisK
K3ZhciBzID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgnc2NyaXB0Jyk7CitzLmlubmVyVGV4dCA9
ICJhbGVydCgnUGFzcyAyIG9mIDInKTsiOworZG9jdW1lbnQuYm9keS5hcHBlbmRDaGlsZChzKTsK
ZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvc2VjdXJpdHkvY29udGVudFNlY3Vy
aXR5UG9saWN5L3NjcmlwdC1zcmMtbm9uZS1pbmxpbmUtZXZlbnQtZXhwZWN0ZWQudHh0IGIvTGF5
b3V0VGVzdHMvaHR0cC90ZXN0cy9zZWN1cml0eS9jb250ZW50U2VjdXJpdHlQb2xpY3kvc2NyaXB0
LXNyYy1ub25lLWlubGluZS1ldmVudC1leHBlY3RlZC50eHQKaW5kZXggZDMxYjFjZWZjMGJmN2Y4
Mjg4YTkzMTc2MWQ4MDIxMjllNjI5NTAyZi4uZmUxY2MyZmM2ZGUwOTJhODFkZDQ1ODNlNTBkMDcz
NDY2MzA4MzMyMyAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9zZWN1cml0eS9j
b250ZW50U2VjdXJpdHlQb2xpY3kvc2NyaXB0LXNyYy1ub25lLWlubGluZS1ldmVudC1leHBlY3Rl
ZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9zZWN1cml0eS9jb250ZW50U2VjdXJp
dHlQb2xpY3kvc2NyaXB0LXNyYy1ub25lLWlubGluZS1ldmVudC1leHBlY3RlZC50eHQKQEAgLTEs
NCArMSw0IEBACi1DT05TT0xFIE1FU1NBR0U6IFJlZnVzZWQgdG8gZXhlY3V0ZSBpbmxpbmUgZXZl
bnQgaGFuZGxlciBiZWNhdXNlIGl0IHZpb2xhdGVzIHRoZSBmb2xsb3dpbmcgQ29udGVudCBTZWN1
cml0eSBQb2xpY3kgZGlyZWN0aXZlOiAic2NyaXB0LXNyYyAnbm9uZSciLgorQ09OU09MRSBNRVNT
QUdFOiBsaW5lIDM6IFJlZnVzZWQgdG8gZXhlY3V0ZSBpbmxpbmUgZXZlbnQgaGFuZGxlciBiZWNh
dXNlIGl0IHZpb2xhdGVzIHRoZSBmb2xsb3dpbmcgQ29udGVudCBTZWN1cml0eSBQb2xpY3kgZGly
ZWN0aXZlOiAic2NyaXB0LXNyYyAnbm9uZSciLgogCiAgIAogCmRpZmYgLS1naXQgYS9MYXlvdXRU
ZXN0cy9odHRwL3Rlc3RzL3NlY3VyaXR5L2NvbnRlbnRTZWN1cml0eVBvbGljeS9zcmNkb2MtZG9l
c250LWJ5cGFzcy1zY3JpcHQtc3JjLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2h0dHAvdGVz
dHMvc2VjdXJpdHkvY29udGVudFNlY3VyaXR5UG9saWN5L3NyY2RvYy1kb2VzbnQtYnlwYXNzLXNj
cmlwdC1zcmMtZXhwZWN0ZWQudHh0CmluZGV4IDdhNWZkZTM3MGVhNmUwNGM2ZDZlNDk0MGU4ZDdh
ZGIwMDBiNjMxNjkuLjFhMjk0NzlkMmMyZDRiYzE1MmY1MjdmM2MzMzAzM2ExMTg5NmUxYzEgMTAw
NjQ0Ci0tLSBhL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvc2VjdXJpdHkvY29udGVudFNlY3VyaXR5
UG9saWN5L3NyY2RvYy1kb2VzbnQtYnlwYXNzLXNjcmlwdC1zcmMtZXhwZWN0ZWQudHh0CisrKyBi
L0xheW91dFRlc3RzL2h0dHAvdGVzdHMvc2VjdXJpdHkvY29udGVudFNlY3VyaXR5UG9saWN5L3Ny
Y2RvYy1kb2VzbnQtYnlwYXNzLXNjcmlwdC1zcmMtZXhwZWN0ZWQudHh0CkBAIC0xLDMgKzEsMyBA
QAotQ09OU09MRSBNRVNTQUdFOiBSZWZ1c2VkIHRvIGV4ZWN1dGUgaW5saW5lIHNjcmlwdCBiZWNh
dXNlIGl0IHZpb2xhdGVzIHRoZSBmb2xsb3dpbmcgQ29udGVudCBTZWN1cml0eSBQb2xpY3kgZGly
ZWN0aXZlOiAic2NyaXB0LXNyYyAnc2VsZiciLgorQ09OU09MRSBNRVNTQUdFOiBsaW5lIDE6IFJl
ZnVzZWQgdG8gZXhlY3V0ZSBpbmxpbmUgc2NyaXB0IGJlY2F1c2UgaXQgdmlvbGF0ZXMgdGhlIGZv
bGxvd2luZyBDb250ZW50IFNlY3VyaXR5IFBvbGljeSBkaXJlY3RpdmU6ICJzY3JpcHQtc3JjICdz
ZWxmJyIuCiAKIFRoaXMgdGVzdCBwYXNzZXMgaWYgaXQgZG9lc24ndCBhbGVydCBmYWlsLiAK
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>142792</attachid>
            <date>2012-05-18 14:58:25 -0700</date>
            <delta_ts>2012-05-22 07:47:31 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-86848-20120518235823.patch</filename>
            <type>text/plain</type>
            <size>45990</size>
            <attacher name="Mike West">mkwst</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTE3NTUzCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggZDk0ZjFlNTFmMzQ4ZDA0
Mjg4MWZhNGE3MTVlMjA5M2JjNjY2ZDRmMC4uNGJkZWJlYjFhNTVmMTgzNWE3Njk0MWZjNGI3YjFl
OTRkY2QzNGZlNCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDU5IEBACisyMDEyLTA1LTE4ICBNaWtl
IFdlc3QgIDxta3dzdEBjaHJvbWl1bS5vcmc+CisKKyAgICAgICAgSW5saW5lIHNjcmlwdCBhbmQg
c3R5bGUgYmxvY2tlZCBieSBDb250ZW50IFNlY3VyaXR5IFBvbGljeSBzaG91bGQgcHJvdmlkZSBt
b3JlIGRldGFpbGVkIGNvbnNvbGUgZXJyb3JzLgorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0
Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9ODY4NDgKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkg
KE9PUFMhKS4KKworICAgICAgICBUaGlzIGNoYW5nZSBhZGRzIGEgVVJMIGFuZCBsaW5lIG51bWJl
ciBmb3IgY29udGV4dCB0byBlYWNoIGNhbGwgdG8KKyAgICAgICAgYENvbnRlbnRTZWN1cml0eVBv
bGljeTo6YWxsb3dJbmxpbmUqYCwgYW5kIHBpcGVzIGl0IHRocm91Z2ggdG8gdGhlCisgICAgICAg
IGNvbnNvbGUgbWVzc2FnZSBnZW5lcmF0aW9uIGluIGBDU1BEaXJlY3RpdmVMaXN0OjpyZXBvcnRW
aW9sYXRpb25gLgorCisgICAgICAgIFRlc3RzOiBodHRwL3Rlc3RzL3NlY3VyaXR5L2NvbnRlbnRT
ZWN1cml0eVBvbGljeS9pbmplY3RlZC1pbmxpbmUtc2NyaXB0LWFsbG93ZWQuaHRtbAorICAgICAg
ICAgICAgICAgaHR0cC90ZXN0cy9zZWN1cml0eS9jb250ZW50U2VjdXJpdHlQb2xpY3kvaW5qZWN0
ZWQtaW5saW5lLXNjcmlwdC1ibG9ja2VkLmh0bWwKKworICAgICAgICAqIGJpbmRpbmdzL1Njcmlw
dENvbnRyb2xsZXJCYXNlLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlNjcmlwdENvbnRyb2xsZXI6
OmV4ZWN1dGVJZkphdmFTY3JpcHRVUkwpOgorICAgICAgICAqIGJpbmRpbmdzL2pzL0pTTGF6eUV2
ZW50TGlzdGVuZXIuY3BwOgorICAgICAgICAoV2ViQ29yZTo6SlNMYXp5RXZlbnRMaXN0ZW5lcjo6
aW5pdGlhbGl6ZUpTRnVuY3Rpb24pOgorICAgICAgICAqIGJpbmRpbmdzL3Y4L1Y4TGF6eUV2ZW50
TGlzdGVuZXIuY3BwOgorICAgICAgICAoV2ViQ29yZTo6VjhMYXp5RXZlbnRMaXN0ZW5lcjo6cHJl
cGFyZUxpc3RlbmVyT2JqZWN0KToKKyAgICAgICAgKiBkb20vU2NyaXB0RWxlbWVudC5jcHA6Cisg
ICAgICAgIChXZWJDb3JlOjpTY3JpcHRFbGVtZW50OjpTY3JpcHRFbGVtZW50KToKKyAgICAgICAg
KFdlYkNvcmU6OlNjcmlwdEVsZW1lbnQ6OmV4ZWN1dGVTY3JpcHQpOgorICAgICAgICAqIGRvbS9T
Y3JpcHRFbGVtZW50Lmg6CisgICAgICAgIChTY3JpcHRFbGVtZW50KToKKyAgICAgICAgKiBkb20v
U3R5bGVFbGVtZW50LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlN0eWxlRWxlbWVudDo6U3R5bGVF
bGVtZW50KToKKyAgICAgICAgKFdlYkNvcmU6OlN0eWxlRWxlbWVudDo6Y3JlYXRlU2hlZXQpOgor
ICAgICAgICAqIGRvbS9TdHlsZUVsZW1lbnQuaDoKKyAgICAgICAgKFN0eWxlRWxlbWVudCk6Cisg
ICAgICAgICogZG9tL1N0eWxlZEVsZW1lbnQuY3BwOgorICAgICAgICAoV2ViQ29yZTo6U3R5bGVk
RWxlbWVudDo6U3R5bGVkRWxlbWVudCk6CisgICAgICAgIChXZWJDb3JlKToKKyAgICAgICAgKFdl
YkNvcmU6OlN0eWxlZEVsZW1lbnQ6OnN0eWxlKToKKyAgICAgICAgKFdlYkNvcmU6OlN0eWxlZEVs
ZW1lbnQ6OnN0eWxlQXR0cmlidXRlQ2hhbmdlZCk6CisgICAgICAgICogZG9tL1N0eWxlZEVsZW1l
bnQuaDoKKyAgICAgICAgKFN0eWxlZEVsZW1lbnQpOgorICAgICAgICAqIHBhZ2UvQ29udGVudFNl
Y3VyaXR5UG9saWN5LmNwcDoKKyAgICAgICAgKENTUERpcmVjdGl2ZUxpc3QpOgorICAgICAgICAo
V2ViQ29yZTo6Q1NQRGlyZWN0aXZlTGlzdDo6cmVwb3J0VmlvbGF0aW9uKToKKyAgICAgICAgKFdl
YkNvcmU6OkNTUERpcmVjdGl2ZUxpc3Q6OmNoZWNrSW5saW5lQW5kUmVwb3J0VmlvbGF0aW9uKToK
KyAgICAgICAgKFdlYkNvcmU6OkNTUERpcmVjdGl2ZUxpc3Q6OmNoZWNrRXZhbEFuZFJlcG9ydFZp
b2xhdGlvbik6CisgICAgICAgIChXZWJDb3JlOjpDU1BEaXJlY3RpdmVMaXN0OjphbGxvd0phdmFT
Y3JpcHRVUkxzKToKKyAgICAgICAgKFdlYkNvcmU6OkNTUERpcmVjdGl2ZUxpc3Q6OmFsbG93SW5s
aW5lRXZlbnRIYW5kbGVycyk6CisgICAgICAgIChXZWJDb3JlOjpDU1BEaXJlY3RpdmVMaXN0Ojph
bGxvd0lubGluZVNjcmlwdCk6CisgICAgICAgIChXZWJDb3JlOjpDU1BEaXJlY3RpdmVMaXN0Ojph
bGxvd0lubGluZVN0eWxlKToKKyAgICAgICAgKFdlYkNvcmU6OkNTUERpcmVjdGl2ZUxpc3Q6OmFs
bG93RXZhbCk6CisgICAgICAgIChXZWJDb3JlKToKKyAgICAgICAgKFdlYkNvcmU6OmlzQWxsb3dl
ZEJ5QWxsKToKKyAgICAgICAgKFdlYkNvcmU6OkNvbnRlbnRTZWN1cml0eVBvbGljeTo6YWxsb3dK
YXZhU2NyaXB0VVJMcyk6CisgICAgICAgIChXZWJDb3JlOjpDb250ZW50U2VjdXJpdHlQb2xpY3k6
OmFsbG93SW5saW5lRXZlbnRIYW5kbGVycyk6CisgICAgICAgIChXZWJDb3JlOjpDb250ZW50U2Vj
dXJpdHlQb2xpY3k6OmFsbG93SW5saW5lU2NyaXB0KToKKyAgICAgICAgKFdlYkNvcmU6OkNvbnRl
bnRTZWN1cml0eVBvbGljeTo6YWxsb3dJbmxpbmVTdHlsZSk6CisgICAgICAgICogcGFnZS9Db250
ZW50U2VjdXJpdHlQb2xpY3kuaDoKKyAgICAgICAgKFdURik6CisKIDIwMTItMDUtMTcgIENhcmxv
cyBHYXJjaWEgQ2FtcG9zICA8Y2dhcmNpYUBpZ2FsaWEuY29tPgogCiAgICAgICAgIFtHVEtdIEtV
Ukw6OmZpbGVTeXN0ZW1QYXRoKCkgc2hvdWxkIHN0cmlwIHRoZSBxdWVyeSBvZiB0aGUgdXJpCmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9TY3JpcHRDb250cm9sbGVyQmFzZS5j
cHAgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9TY3JpcHRDb250cm9sbGVyQmFzZS5jcHAKaW5k
ZXggODU1MTU4YWZjM2VmNzkwMmYyZTYyZWU5ZTk2ZjE1ZDI4OWM3OTBjMi4uOWIwMDZkMmMyMDZi
MGM0NGI2ODNlZGE0NzhiZjBkZjczMmQ1NWFjMyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUv
YmluZGluZ3MvU2NyaXB0Q29udHJvbGxlckJhc2UuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2Jp
bmRpbmdzL1NjcmlwdENvbnRyb2xsZXJCYXNlLmNwcApAQCAtMzIsNiArMzIsNyBAQAogI2luY2x1
ZGUgIlNlY3VyaXR5T3JpZ2luLmgiCiAjaW5jbHVkZSAiU2V0dGluZ3MuaCIKICNpbmNsdWRlICJV
c2VyR2VzdHVyZUluZGljYXRvci5oIgorI2luY2x1ZGUgPHd0Zi90ZXh0L1RleHRQb3NpdGlvbi5o
PgogCiBuYW1lc3BhY2UgV2ViQ29yZSB7CiAKQEAgLTc1LDcgKzc2LDcgQEAgYm9vbCBTY3JpcHRD
b250cm9sbGVyOjpleGVjdXRlSWZKYXZhU2NyaXB0VVJMKGNvbnN0IEtVUkwmIHVybCwgU2hvdWxk
UmVwbGFjZURvY3UKIAogICAgIGlmICghbV9mcmFtZS0+cGFnZSgpCiAgICAgICAgIHx8ICFtX2Zy
YW1lLT5wYWdlKCktPmphdmFTY3JpcHRVUkxzQXJlQWxsb3dlZCgpCi0gICAgICAgIHx8ICFtX2Zy
YW1lLT5kb2N1bWVudCgpLT5jb250ZW50U2VjdXJpdHlQb2xpY3koKS0+YWxsb3dKYXZhU2NyaXB0
VVJMcygpCisgICAgICAgIHx8ICFtX2ZyYW1lLT5kb2N1bWVudCgpLT5jb250ZW50U2VjdXJpdHlQ
b2xpY3koKS0+YWxsb3dKYXZhU2NyaXB0VVJMcyhtX2ZyYW1lLT5kb2N1bWVudCgpLT51cmwoKSwg
ZXZlbnRIYW5kbGVyUG9zaXRpb24oKS5tX2xpbmUpCiAgICAgICAgIHx8IG1fZnJhbWUtPmluVmll
d1NvdXJjZU1vZGUoKSkKICAgICAgICAgcmV0dXJuIHRydWU7CiAKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0pTTGF6eUV2ZW50TGlzdGVuZXIuY3BwIGIvU291cmNlL1dl
YkNvcmUvYmluZGluZ3MvanMvSlNMYXp5RXZlbnRMaXN0ZW5lci5jcHAKaW5kZXggZjExYmY5MDBj
MWQwZDUwZDFjN2FjNWM4YmZjNGJiM2QwNDFkYWFhMS4uNjRmOWNiOWMwNDk5YzlmYjM4MmVjMjNm
NTA1YWIyMmJhYzg5NDFiMSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMv
SlNMYXp5RXZlbnRMaXN0ZW5lci5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMv
SlNMYXp5RXZlbnRMaXN0ZW5lci5jcHAKQEAgLTgwLDcgKzgwLDcgQEAgSlNPYmplY3QqIEpTTGF6
eUV2ZW50TGlzdGVuZXI6OmluaXRpYWxpemVKU0Z1bmN0aW9uKFNjcmlwdEV4ZWN1dGlvbkNvbnRl
eHQqIGV4ZWMKICAgICBpZiAoIWRvY3VtZW50LT5mcmFtZSgpKQogICAgICAgICByZXR1cm4gMDsK
IAotICAgIGlmICghZG9jdW1lbnQtPmNvbnRlbnRTZWN1cml0eVBvbGljeSgpLT5hbGxvd0lubGlu
ZUV2ZW50SGFuZGxlcnMoKSkKKyAgICBpZiAoIWRvY3VtZW50LT5jb250ZW50U2VjdXJpdHlQb2xp
Y3koKS0+YWxsb3dJbmxpbmVFdmVudEhhbmRsZXJzKG1fc291cmNlVVJMLCBtX3Bvc2l0aW9uLm1f
bGluZSkpCiAgICAgICAgIHJldHVybiAwOwogCiAgICAgU2NyaXB0Q29udHJvbGxlciogc2NyaXB0
ID0gZG9jdW1lbnQtPmZyYW1lKCktPnNjcmlwdCgpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNv
cmUvYmluZGluZ3MvdjgvVjhMYXp5RXZlbnRMaXN0ZW5lci5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9i
aW5kaW5ncy92OC9WOExhenlFdmVudExpc3RlbmVyLmNwcAppbmRleCA4NDBkZTdmZDJiNDdhMTNl
NzExNTc5NmM5NTNmNjRkNzBlMDdmYTk3Li4wNjZlZWQxOWUzN2JkMjUzOTkwNGFjNTYyNTUyOTAz
ZWFmNTI5ZjU5IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy92OC9WOExhenlF
dmVudExpc3RlbmVyLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy92OC9WOExhenlF
dmVudExpc3RlbmVyLmNwcApAQCAtMTA1LDcgKzEwNSw3IEBAIHZvaWQgVjhMYXp5RXZlbnRMaXN0
ZW5lcjo6cHJlcGFyZUxpc3RlbmVyT2JqZWN0KFNjcmlwdEV4ZWN1dGlvbkNvbnRleHQqIGNvbnRl
eHQpCiAgICAgaWYgKGhhc0V4aXN0aW5nTGlzdGVuZXJPYmplY3QoKSkKICAgICAgICAgcmV0dXJu
OwogCi0gICAgaWYgKGNvbnRleHQtPmlzRG9jdW1lbnQoKSAmJiAhc3RhdGljX2Nhc3Q8RG9jdW1l
bnQqPihjb250ZXh0KS0+Y29udGVudFNlY3VyaXR5UG9saWN5KCktPmFsbG93SW5saW5lRXZlbnRI
YW5kbGVycygpKQorICAgIGlmIChjb250ZXh0LT5pc0RvY3VtZW50KCkgJiYgIXN0YXRpY19jYXN0
PERvY3VtZW50Kj4oY29udGV4dCktPmNvbnRlbnRTZWN1cml0eVBvbGljeSgpLT5hbGxvd0lubGlu
ZUV2ZW50SGFuZGxlcnMobV9zb3VyY2VVUkwsIG1fcG9zaXRpb24ubV9saW5lKSkKICAgICAgICAg
cmV0dXJuOwogCiAgICAgdjg6OkhhbmRsZVNjb3BlIGhhbmRsZVNjb3BlOwpkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYkNvcmUvZG9tL1NjcmlwdEVsZW1lbnQuY3BwIGIvU291cmNlL1dlYkNvcmUvZG9t
L1NjcmlwdEVsZW1lbnQuY3BwCmluZGV4IGJkYzFmY2RmY2YxMjNkYzU1MTAzODlkMzNjNzI0YTI5
NjliNzg3M2UuLjcxM2ViYWExOWU2MWFiOGRlYmE2NTg4ZDAwMzY5YWNhNDU5YzE0ZjkgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2RvbS9TY3JpcHRFbGVtZW50LmNwcAorKysgYi9Tb3VyY2Uv
V2ViQ29yZS9kb20vU2NyaXB0RWxlbWVudC5jcHAKQEAgLTQxLDEyICs0MSwxNCBAQAogI2luY2x1
ZGUgIlNjcmlwdFJ1bm5lci5oIgogI2luY2x1ZGUgIlNjcmlwdFNvdXJjZUNvZGUuaCIKICNpbmNs
dWRlICJTY3JpcHRWYWx1ZS5oIgorI2luY2x1ZGUgIlNjcmlwdGFibGVEb2N1bWVudFBhcnNlci5o
IgogI2luY2x1ZGUgIlNlY3VyaXR5T3JpZ2luLmgiCiAjaW5jbHVkZSAiU2V0dGluZ3MuaCIKICNp
bmNsdWRlICJUZXh0LmgiCiAjaW5jbHVkZSA8d3RmL1N0ZExpYkV4dHJhcy5oPgogI2luY2x1ZGUg
PHd0Zi90ZXh0L1N0cmluZ0J1aWxkZXIuaD4KICNpbmNsdWRlIDx3dGYvdGV4dC9TdHJpbmdIYXNo
Lmg+CisjaW5jbHVkZSA8d3RmL3RleHQvVGV4dFBvc2l0aW9uLmg+CiAKICNpZiBFTkFCTEUoU1ZH
KQogI2luY2x1ZGUgIlNWR05hbWVzLmgiCkBAIC01OCw2ICs2MCw3IEBAIG5hbWVzcGFjZSBXZWJD
b3JlIHsKIFNjcmlwdEVsZW1lbnQ6OlNjcmlwdEVsZW1lbnQoRWxlbWVudCogZWxlbWVudCwgYm9v
bCBwYXJzZXJJbnNlcnRlZCwgYm9vbCBhbHJlYWR5U3RhcnRlZCkKICAgICA6IG1fZWxlbWVudChl
bGVtZW50KQogICAgICwgbV9jYWNoZWRTY3JpcHQoMCkKKyAgICAsIG1fc3RhcnRMaW5lTnVtYmVy
KFdURjo6T3JkaW5hbE51bWJlcjo6YmVmb3JlRmlyc3QoKSkKICAgICAsIG1fcGFyc2VySW5zZXJ0
ZWQocGFyc2VySW5zZXJ0ZWQpCiAgICAgLCBtX2lzRXh0ZXJuYWxTY3JpcHQoZmFsc2UpCiAgICAg
LCBtX2FscmVhZHlTdGFydGVkKGFscmVhZHlTdGFydGVkKQpAQCAtNzAsNiArNzMsOCBAQCBTY3Jp
cHRFbGVtZW50OjpTY3JpcHRFbGVtZW50KEVsZW1lbnQqIGVsZW1lbnQsIGJvb2wgcGFyc2VySW5z
ZXJ0ZWQsIGJvb2wgYWxyZWFkeQogICAgICwgbV9yZXF1ZXN0VXNlc0FjY2Vzc0NvbnRyb2woZmFs
c2UpCiB7CiAgICAgQVNTRVJUKG1fZWxlbWVudCk7CisgICAgaWYgKG1fZWxlbWVudC0+ZG9jdW1l
bnQoKS0+c2NyaXB0YWJsZURvY3VtZW50UGFyc2VyKCkpCisgICAgICAgIG1fc3RhcnRMaW5lTnVt
YmVyID0gbV9lbGVtZW50LT5kb2N1bWVudCgpLT5zY3JpcHRhYmxlRG9jdW1lbnRQYXJzZXIoKS0+
bGluZU51bWJlcigpOwogfQogCiBTY3JpcHRFbGVtZW50Ojp+U2NyaXB0RWxlbWVudCgpCkBAIC0y
NzYsNyArMjgxLDcgQEAgdm9pZCBTY3JpcHRFbGVtZW50OjpleGVjdXRlU2NyaXB0KGNvbnN0IFNj
cmlwdFNvdXJjZUNvZGUmIHNvdXJjZUNvZGUpCiAgICAgaWYgKHNvdXJjZUNvZGUuaXNFbXB0eSgp
KQogICAgICAgICByZXR1cm47CiAKLSAgICBpZiAoIW1faXNFeHRlcm5hbFNjcmlwdCAmJiAhbV9l
bGVtZW50LT5kb2N1bWVudCgpLT5jb250ZW50U2VjdXJpdHlQb2xpY3koKS0+YWxsb3dJbmxpbmVT
Y3JpcHQoKSkKKyAgICBpZiAoIW1faXNFeHRlcm5hbFNjcmlwdCAmJiAhbV9lbGVtZW50LT5kb2N1
bWVudCgpLT5jb250ZW50U2VjdXJpdHlQb2xpY3koKS0+YWxsb3dJbmxpbmVTY3JpcHQobV9lbGVt
ZW50LT5kb2N1bWVudCgpLT51cmwoKSwgbV9zdGFydExpbmVOdW1iZXIpKQogICAgICAgICByZXR1
cm47CiAKICAgICBSZWZQdHI8RG9jdW1lbnQ+IGRvY3VtZW50ID0gbV9lbGVtZW50LT5kb2N1bWVu
dCgpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvZG9tL1NjcmlwdEVsZW1lbnQuaCBiL1Nv
dXJjZS9XZWJDb3JlL2RvbS9TY3JpcHRFbGVtZW50LmgKaW5kZXggNmMwODI1OGU2NTY1ZDA4NGQy
YjY0NDljYjJlMjUzOGMxYWI4OTgzYS4uOTExYWNjYTcyZDBkZjU0NjQwMmU0ZmEzMjIwNzc2Yjgz
MDk3ZjBkOSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvZG9tL1NjcmlwdEVsZW1lbnQuaAor
KysgYi9Tb3VyY2UvV2ViQ29yZS9kb20vU2NyaXB0RWxlbWVudC5oCkBAIC05Myw2ICs5Myw3IEBA
IHByaXZhdGU6CiAKICAgICBFbGVtZW50KiBtX2VsZW1lbnQ7CiAgICAgQ2FjaGVkUmVzb3VyY2VI
YW5kbGU8Q2FjaGVkU2NyaXB0PiBtX2NhY2hlZFNjcmlwdDsKKyAgICBXVEY6Ok9yZGluYWxOdW1i
ZXIgbV9zdGFydExpbmVOdW1iZXI7CiAgICAgYm9vbCBtX3BhcnNlckluc2VydGVkIDogMTsKICAg
ICBib29sIG1faXNFeHRlcm5hbFNjcmlwdCA6IDE7CiAgICAgYm9vbCBtX2FscmVhZHlTdGFydGVk
IDogMTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2RvbS9TdHlsZUVsZW1lbnQuY3BwIGIv
U291cmNlL1dlYkNvcmUvZG9tL1N0eWxlRWxlbWVudC5jcHAKaW5kZXggNWFmOWZjOGU0Y2RjYzZm
YjJmMWRlMjQwMDFhYzk1ZjY3ZjA4ZWI1ZC4uMDRhZjg0MGFiODc1YWE5NDU2ODQzYzAzMGQ5ZGFm
YjIzOGQ5MDc1ZiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvZG9tL1N0eWxlRWxlbWVudC5j
cHAKKysrIGIvU291cmNlL1dlYkNvcmUvZG9tL1N0eWxlRWxlbWVudC5jcHAKQEAgLTI5LDYgKzI5
LDcgQEAKICNpbmNsdWRlICJNZWRpYVF1ZXJ5RXZhbHVhdG9yLmgiCiAjaW5jbHVkZSAiU2NyaXB0
YWJsZURvY3VtZW50UGFyc2VyLmgiCiAjaW5jbHVkZSA8d3RmL3RleHQvU3RyaW5nQnVpbGRlci5o
PgorI2luY2x1ZGUgPHd0Zi90ZXh0L1RleHRQb3NpdGlvbi5oPgogCiBuYW1lc3BhY2UgV2ViQ29y
ZSB7CiAKQEAgLTQ3LDEwICs0OCwxMCBAQCBzdGF0aWMgYm9vbCBpc0NTUyhFbGVtZW50KiBlbGVt
ZW50LCBjb25zdCBBdG9taWNTdHJpbmcmIHR5cGUpCiBTdHlsZUVsZW1lbnQ6OlN0eWxlRWxlbWVu
dChEb2N1bWVudCogZG9jdW1lbnQsIGJvb2wgY3JlYXRlZEJ5UGFyc2VyKQogICAgIDogbV9jcmVh
dGVkQnlQYXJzZXIoY3JlYXRlZEJ5UGFyc2VyKQogICAgICwgbV9sb2FkaW5nKGZhbHNlKQotICAg
ICwgbV9zdGFydExpbmVOdW1iZXIoMCkKKyAgICAsIG1fc3RhcnRMaW5lTnVtYmVyKFdURjo6T3Jk
aW5hbE51bWJlcjo6YmVmb3JlRmlyc3QoKSkKIHsKICAgICBpZiAoY3JlYXRlZEJ5UGFyc2VyICYm
IGRvY3VtZW50ICYmIGRvY3VtZW50LT5zY3JpcHRhYmxlRG9jdW1lbnRQYXJzZXIoKSkKLSAgICAg
ICAgbV9zdGFydExpbmVOdW1iZXIgPSBkb2N1bWVudC0+c2NyaXB0YWJsZURvY3VtZW50UGFyc2Vy
KCktPmxpbmVOdW1iZXIoKS56ZXJvQmFzZWRJbnQoKTsKKyAgICAgICAgbV9zdGFydExpbmVOdW1i
ZXIgPSBkb2N1bWVudC0+c2NyaXB0YWJsZURvY3VtZW50UGFyc2VyKCktPmxpbmVOdW1iZXIoKTsK
IH0KIAogU3R5bGVFbGVtZW50Ojp+U3R5bGVFbGVtZW50KCkKQEAgLTE0Myw3ICsxNDQsNyBAQCB2
b2lkIFN0eWxlRWxlbWVudDo6Y2xlYXJTaGVldCgpCiAgICAgbV9zaGVldCA9IDA7CiB9CiAKLXZv
aWQgU3R5bGVFbGVtZW50OjpjcmVhdGVTaGVldChFbGVtZW50KiBlLCBpbnQgc3RhcnRMaW5lTnVt
YmVyLCBjb25zdCBTdHJpbmcmIHRleHQpCit2b2lkIFN0eWxlRWxlbWVudDo6Y3JlYXRlU2hlZXQo
RWxlbWVudCogZSwgV1RGOjpPcmRpbmFsTnVtYmVyIHN0YXJ0TGluZU51bWJlciwgY29uc3QgU3Ry
aW5nJiB0ZXh0KQogewogICAgIEFTU0VSVChlKTsKICAgICBBU1NFUlQoZS0+aW5Eb2N1bWVudCgp
KTsKQEAgLTE1Niw3ICsxNTcsNyBAQCB2b2lkIFN0eWxlRWxlbWVudDo6Y3JlYXRlU2hlZXQoRWxl
bWVudCogZSwgaW50IHN0YXJ0TGluZU51bWJlciwgY29uc3QgU3RyaW5nJiB0ZQogCiAgICAgLy8g
SWYgdHlwZSBpcyBlbXB0eSBvciBDU1MsIHRoaXMgaXMgYSBDU1Mgc3R5bGUgc2hlZXQuCiAgICAg
Y29uc3QgQXRvbWljU3RyaW5nJiB0eXBlID0gdGhpcy0+dHlwZSgpOwotICAgIGlmIChkb2N1bWVu
dC0+Y29udGVudFNlY3VyaXR5UG9saWN5KCktPmFsbG93SW5saW5lU3R5bGUoKSAmJiBpc0NTUyhl
LCB0eXBlKSkgeworICAgIGlmIChkb2N1bWVudC0+Y29udGVudFNlY3VyaXR5UG9saWN5KCktPmFs
bG93SW5saW5lU3R5bGUoZS0+ZG9jdW1lbnQoKS0+dXJsKCksIHN0YXJ0TGluZU51bWJlcikgJiYg
aXNDU1MoZSwgdHlwZSkpIHsKICAgICAgICAgUmVmUHRyPE1lZGlhUXVlcnlTZXQ+IG1lZGlhUXVl
cmllczsKICAgICAgICAgaWYgKGUtPmlzSFRNTEVsZW1lbnQoKSkKICAgICAgICAgICAgIG1lZGlh
UXVlcmllcyA9IE1lZGlhUXVlcnlTZXQ6OmNyZWF0ZUFsbG93aW5nRGVzY3JpcHRpb25TeW50YXgo
bWVkaWEoKSk7CkBAIC0xNzIsOCArMTczLDggQEAgdm9pZCBTdHlsZUVsZW1lbnQ6OmNyZWF0ZVNo
ZWV0KEVsZW1lbnQqIGUsIGludCBzdGFydExpbmVOdW1iZXIsIGNvbnN0IFN0cmluZyYgdGUKICAg
ICAgICAgICAgIG1fc2hlZXQgPSBDU1NTdHlsZVNoZWV0OjpjcmVhdGVJbmxpbmUoZSwgS1VSTCgp
LCBkb2N1bWVudC0+aW5wdXRFbmNvZGluZygpKTsKICAgICAgICAgICAgIG1fc2hlZXQtPnNldE1l
ZGlhUXVlcmllcyhtZWRpYVF1ZXJpZXMucmVsZWFzZSgpKTsKICAgICAgICAgICAgIG1fc2hlZXQt
PnNldFRpdGxlKGUtPnRpdGxlKCkpOwotICAgIAotICAgICAgICAgICAgbV9zaGVldC0+aW50ZXJu
YWwoKS0+cGFyc2VTdHJpbmdBdExpbmUodGV4dCwgc3RhcnRMaW5lTnVtYmVyKTsKKworICAgICAg
ICAgICAgbV9zaGVldC0+aW50ZXJuYWwoKS0+cGFyc2VTdHJpbmdBdExpbmUodGV4dCwgc3RhcnRM
aW5lTnVtYmVyLnplcm9CYXNlZEludCgpKTsKIAogICAgICAgICAgICAgbV9sb2FkaW5nID0gZmFs
c2U7CiAgICAgICAgIH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2RvbS9TdHlsZUVsZW1l
bnQuaCBiL1NvdXJjZS9XZWJDb3JlL2RvbS9TdHlsZUVsZW1lbnQuaAppbmRleCAzYzMxYWJiZjdl
YTQzYzUyYzk1ZDQ3YzVmMTBmYjRiZGYzNWI5NTBlLi42ZGQ0OGVjYmI0NTRiNWVhZDMyOWUwMzkw
OWEyNzNhNmMyNTJiMGYyIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9kb20vU3R5bGVFbGVt
ZW50LmgKKysrIGIvU291cmNlL1dlYkNvcmUvZG9tL1N0eWxlRWxlbWVudC5oCkBAIC0yMiw2ICsy
Miw3IEBACiAjZGVmaW5lIFN0eWxlRWxlbWVudF9oCiAKICNpbmNsdWRlICJDU1NTdHlsZVNoZWV0
LmgiCisjaW5jbHVkZSA8d3RmL3RleHQvVGV4dFBvc2l0aW9uLmg+CiAKIG5hbWVzcGFjZSBXZWJD
b3JlIHsKIApAQCAtNTIsMTMgKzUzLDEzIEBAIHByb3RlY3RlZDoKICAgICBSZWZQdHI8Q1NTU3R5
bGVTaGVldD4gbV9zaGVldDsKIAogcHJpdmF0ZToKLSAgICB2b2lkIGNyZWF0ZVNoZWV0KEVsZW1l
bnQqLCBpbnQgc3RhcnRMaW5lTnVtYmVyLCBjb25zdCBTdHJpbmcmIHRleHQgPSBTdHJpbmcoKSk7
CisgICAgdm9pZCBjcmVhdGVTaGVldChFbGVtZW50KiwgV1RGOjpPcmRpbmFsTnVtYmVyIHN0YXJ0
TGluZU51bWJlciwgY29uc3QgU3RyaW5nJiB0ZXh0ID0gU3RyaW5nKCkpOwogICAgIHZvaWQgcHJv
Y2VzcyhFbGVtZW50Kik7CiAgICAgdm9pZCBjbGVhclNoZWV0KCk7CiAKICAgICBib29sIG1fY3Jl
YXRlZEJ5UGFyc2VyOwogICAgIGJvb2wgbV9sb2FkaW5nOwotICAgIGludCBtX3N0YXJ0TGluZU51
bWJlcjsKKyAgICBXVEY6Ok9yZGluYWxOdW1iZXIgbV9zdGFydExpbmVOdW1iZXI7CiB9OwogCiB9
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9kb20vU3R5bGVkRWxlbWVudC5jcHAgYi9Tb3Vy
Y2UvV2ViQ29yZS9kb20vU3R5bGVkRWxlbWVudC5jcHAKaW5kZXggZDU1YjAwOTkzNDVmZTkxZTA3
NTU2NTZlZjc3NzAzYTViMmUwOWJiMC4uY2JmMDkxZDZkMTViNzE5MzVhMjgwZjU1ODNiZDdkMmU1
ZTkzZDRkYiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvZG9tL1N0eWxlZEVsZW1lbnQuY3Bw
CisrKyBiL1NvdXJjZS9XZWJDb3JlL2RvbS9TdHlsZWRFbGVtZW50LmNwcApAQCAtMzcsOSArMzcs
MTEgQEAKICNpbmNsdWRlICJEb2N1bWVudC5oIgogI2luY2x1ZGUgIkhUTUxOYW1lcy5oIgogI2lu
Y2x1ZGUgIkhUTUxQYXJzZXJJZGlvbXMuaCIKKyNpbmNsdWRlICJTY3JpcHRhYmxlRG9jdW1lbnRQ
YXJzZXIuaCIKICNpbmNsdWRlICJTdHlsZVByb3BlcnR5U2V0LmgiCiAjaW5jbHVkZSAiU3R5bGVS
ZXNvbHZlci5oIgogI2luY2x1ZGUgPHd0Zi9IYXNoRnVuY3Rpb25zLmg+CisjaW5jbHVkZSA8d3Rm
L3RleHQvVGV4dFBvc2l0aW9uLmg+CiAKIHVzaW5nIG5hbWVzcGFjZSBzdGQ7CiAKQEAgLTEyNiwx
MyArMTI4LDIxIEBAIHZvaWQgU3R5bGVkRWxlbWVudDo6dXBkYXRlU3R5bGVBdHRyaWJ1dGUoKSBj
b25zdAogICAgICAgICBjb25zdF9jYXN0PFN0eWxlZEVsZW1lbnQqPih0aGlzKS0+c2V0QXR0cmli
dXRlKHN0eWxlQXR0ciwgaW5saW5lU3R5bGUtPmFzVGV4dCgpLCBJblVwZGF0ZVN0eWxlQXR0cmli
dXRlKTsKIH0KIAorU3R5bGVkRWxlbWVudDo6U3R5bGVkRWxlbWVudChjb25zdCBRdWFsaWZpZWRO
YW1lJiBuYW1lLCBEb2N1bWVudCogZG9jdW1lbnQsIENvbnN0cnVjdGlvblR5cGUgdHlwZSkKKyAg
ICA6IEVsZW1lbnQobmFtZSwgZG9jdW1lbnQsIHR5cGUpCisgICAgLCBtX3N0YXJ0TGluZU51bWJl
cihXVEY6Ok9yZGluYWxOdW1iZXI6OmJlZm9yZUZpcnN0KCkpCit7CisgICAgaWYgKGRvY3VtZW50
ICYmIGRvY3VtZW50LT5zY3JpcHRhYmxlRG9jdW1lbnRQYXJzZXIoKSkKKyAgICAgICAgbV9zdGFy
dExpbmVOdW1iZXIgPSBkb2N1bWVudC0+c2NyaXB0YWJsZURvY3VtZW50UGFyc2VyKCktPmxpbmVO
dW1iZXIoKTsKK30KKwogU3R5bGVkRWxlbWVudDo6flN0eWxlZEVsZW1lbnQoKQogewogICAgIGRl
c3Ryb3lJbmxpbmVTdHlsZSgpOwogfQogCi1DU1NTdHlsZURlY2xhcmF0aW9uKiBTdHlsZWRFbGVt
ZW50OjpzdHlsZSgpIAoteyAKK0NTU1N0eWxlRGVjbGFyYXRpb24qIFN0eWxlZEVsZW1lbnQ6OnN0
eWxlKCkKK3sKICAgICByZXR1cm4gZW5zdXJlQXR0cmlidXRlRGF0YSgpLT5lbnN1cmVNdXRhYmxl
SW5saW5lU3R5bGUodGhpcyktPmVuc3VyZUlubGluZUNTU1N0eWxlRGVjbGFyYXRpb24odGhpcyk7
IAogfQogCkBAIC0xNzMsNyArMTgzLDcgQEAgdm9pZCBTdHlsZWRFbGVtZW50OjpzdHlsZUF0dHJp
YnV0ZUNoYW5nZWQoY29uc3QgQXRvbWljU3RyaW5nJiBuZXdTdHlsZVN0cmluZywgU2gKICAgICBp
ZiAoc2hvdWxkUmVwYXJzZSkgewogICAgICAgICBpZiAobmV3U3R5bGVTdHJpbmcuaXNOdWxsKCkp
CiAgICAgICAgICAgICBkZXN0cm95SW5saW5lU3R5bGUoKTsKLSAgICAgICAgZWxzZSBpZiAoZG9j
dW1lbnQoKS0+Y29udGVudFNlY3VyaXR5UG9saWN5KCktPmFsbG93SW5saW5lU3R5bGUoKSkKKyAg
ICAgICAgZWxzZSBpZiAoZG9jdW1lbnQoKS0+Y29udGVudFNlY3VyaXR5UG9saWN5KCktPmFsbG93
SW5saW5lU3R5bGUoZG9jdW1lbnQoKS0+dXJsKCksIG1fc3RhcnRMaW5lTnVtYmVyKSkKICAgICAg
ICAgICAgIGVuc3VyZUF0dHJpYnV0ZURhdGEoKS0+dXBkYXRlSW5saW5lU3R5bGVBdm9pZGluZ011
dGF0aW9uKHRoaXMsIG5ld1N0eWxlU3RyaW5nKTsKICAgICAgICAgc2V0SXNTdHlsZUF0dHJpYnV0
ZVZhbGlkKCk7CiAgICAgfQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvZG9tL1N0eWxlZEVs
ZW1lbnQuaCBiL1NvdXJjZS9XZWJDb3JlL2RvbS9TdHlsZWRFbGVtZW50LmgKaW5kZXggNmNmNDE0
NWYyYTEyMWE1NDhkNGUzYWRlYjhjZTg1ZjYyNzA1ZDA3OC4uNDczNmE5ODAwMTlhOWVmNGEyY2Rj
NmFkY2I2NDEwMDJhNmJlYjcwYiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvZG9tL1N0eWxl
ZEVsZW1lbnQuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9kb20vU3R5bGVkRWxlbWVudC5oCkBAIC0y
Nyw2ICsyNyw3IEBACiAKICNpbmNsdWRlICJFbGVtZW50LmgiCiAjaW5jbHVkZSAiU3R5bGVQcm9w
ZXJ0eVNldC5oIgorI2luY2x1ZGUgPHd0Zi90ZXh0L1RleHRQb3NpdGlvbi5oPgogCiBuYW1lc3Bh
Y2UgV2ViQ29yZSB7CiAKQEAgLTYyLDEwICs2Myw3IEBAIHB1YmxpYzoKICAgICB2b2lkIHN0eWxl
QXR0cmlidXRlQ2hhbmdlZChjb25zdCBBdG9taWNTdHJpbmcmIG5ld1N0eWxlU3RyaW5nLCBTaG91
bGRSZXBhcnNlU3R5bGVBdHRyaWJ1dGUgPSBSZXBhcnNlU3R5bGVBdHRyaWJ1dGUpOwogCiBwcm90
ZWN0ZWQ6Ci0gICAgU3R5bGVkRWxlbWVudChjb25zdCBRdWFsaWZpZWROYW1lJiBuYW1lLCBEb2N1
bWVudCogZG9jdW1lbnQsIENvbnN0cnVjdGlvblR5cGUgdHlwZSkKLSAgICAgICAgOiBFbGVtZW50
KG5hbWUsIGRvY3VtZW50LCB0eXBlKQotICAgIHsKLSAgICB9CisgICAgU3R5bGVkRWxlbWVudChj
b25zdCBRdWFsaWZpZWROYW1lJiwgRG9jdW1lbnQqLCBDb25zdHJ1Y3Rpb25UeXBlKTsKIAogICAg
IHZpcnR1YWwgdm9pZCBhdHRyaWJ1dGVDaGFuZ2VkKGNvbnN0IEF0dHJpYnV0ZSYpIE9WRVJSSURF
OwogICAgIHZpcnR1YWwgdm9pZCBwYXJzZUF0dHJpYnV0ZShjb25zdCBBdHRyaWJ1dGUmKTsKQEAg
LTk1LDYgKzkzLDggQEAgcHJpdmF0ZToKICAgICAgICAgaWYgKGF0dHJpYnV0ZURhdGEoKSkKICAg
ICAgICAgICAgIGF0dHJpYnV0ZURhdGEoKS0+ZGVzdHJveUlubGluZVN0eWxlKHRoaXMpOwogICAg
IH0KKworICAgIFdURjo6T3JkaW5hbE51bWJlciBtX3N0YXJ0TGluZU51bWJlcjsKIH07CiAKIGlu
bGluZSBjb25zdCBTcGFjZVNwbGl0U3RyaW5nJiBTdHlsZWRFbGVtZW50OjpjbGFzc05hbWVzKCkg
Y29uc3QKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BhZ2UvQ29udGVudFNlY3VyaXR5UG9s
aWN5LmNwcCBiL1NvdXJjZS9XZWJDb3JlL3BhZ2UvQ29udGVudFNlY3VyaXR5UG9saWN5LmNwcApp
bmRleCAwZTdjOTVhN2UyOWRhYjQzZjQwOWU2YTZjYjEyMmU1ZmVhYTEzZDhlLi5kOWUwMTQzOTk1
ODBhY2E4NTJlYzkwOWJiMDBiMDcwYzg3Nzc0NTljIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29y
ZS9wYWdlL0NvbnRlbnRTZWN1cml0eVBvbGljeS5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvcGFn
ZS9Db250ZW50U2VjdXJpdHlQb2xpY3kuY3BwCkBAIC0zMSwxMSArMzEsMTMgQEAKICNpbmNsdWRl
ICJGb3JtRGF0YS5oIgogI2luY2x1ZGUgIkZvcm1EYXRhTGlzdC5oIgogI2luY2x1ZGUgIkZyYW1l
LmgiCisjaW5jbHVkZSAiSW5zcGVjdG9ySW5zdHJ1bWVudGF0aW9uLmgiCiAjaW5jbHVkZSAiSW5z
cGVjdG9yVmFsdWVzLmgiCiAjaW5jbHVkZSAiUGluZ0xvYWRlci5oIgogI2luY2x1ZGUgIlNjcmlw
dENhbGxTdGFjay5oIgogI2luY2x1ZGUgIlNlY3VyaXR5T3JpZ2luLmgiCiAjaW5jbHVkZSAiVGV4
dEVuY29kaW5nLmgiCisjaW5jbHVkZSA8d3RmL3RleHQvVGV4dFBvc2l0aW9uLmg+CiAjaW5jbHVk
ZSA8d3RmL3RleHQvV1RGU3RyaW5nLmg+CiAKIG5hbWVzcGFjZSBXZWJDb3JlIHsKQEAgLTQ5MCwx
MCArNDkyLDEwIEBAIHB1YmxpYzoKICAgICBjb25zdCBTdHJpbmcmIGhlYWRlcigpIGNvbnN0IHsg
cmV0dXJuIG1faGVhZGVyOyB9CiAgICAgQ29udGVudFNlY3VyaXR5UG9saWN5OjpIZWFkZXJUeXBl
IGhlYWRlclR5cGUoKSBjb25zdCB7IHJldHVybiBtX3JlcG9ydE9ubHkgPyBDb250ZW50U2VjdXJp
dHlQb2xpY3k6OlJlcG9ydE9ubHkgOiBDb250ZW50U2VjdXJpdHlQb2xpY3k6OkVuZm9yY2VQb2xp
Y3k7IH0KIAotICAgIGJvb2wgYWxsb3dKYXZhU2NyaXB0VVJMcygpIGNvbnN0OwotICAgIGJvb2wg
YWxsb3dJbmxpbmVFdmVudEhhbmRsZXJzKCkgY29uc3Q7Ci0gICAgYm9vbCBhbGxvd0lubGluZVNj
cmlwdCgpIGNvbnN0OwotICAgIGJvb2wgYWxsb3dJbmxpbmVTdHlsZSgpIGNvbnN0OworICAgIGJv
b2wgYWxsb3dKYXZhU2NyaXB0VVJMcyhjb25zdCBTdHJpbmcmIGNvbnRleHRVUkwsIGNvbnN0IFdU
Rjo6T3JkaW5hbE51bWJlciYgY29udGV4dExpbmUpIGNvbnN0OworICAgIGJvb2wgYWxsb3dJbmxp
bmVFdmVudEhhbmRsZXJzKGNvbnN0IFN0cmluZyYgY29udGV4dFVSTCwgY29uc3QgV1RGOjpPcmRp
bmFsTnVtYmVyJiBjb250ZXh0TGluZSkgY29uc3Q7CisgICAgYm9vbCBhbGxvd0lubGluZVNjcmlw
dChjb25zdCBTdHJpbmcmIGNvbnRleHRVUkwsIGNvbnN0IFdURjo6T3JkaW5hbE51bWJlciYgY29u
dGV4dExpbmUpIGNvbnN0OworICAgIGJvb2wgYWxsb3dJbmxpbmVTdHlsZShjb25zdCBTdHJpbmcm
IGNvbnRleHRVUkwsIGNvbnN0IFdURjo6T3JkaW5hbE51bWJlciYgY29udGV4dExpbmUpIGNvbnN0
OwogICAgIGJvb2wgYWxsb3dFdmFsKCkgY29uc3Q7CiAKICAgICBib29sIGFsbG93U2NyaXB0RnJv
bVNvdXJjZShjb25zdCBLVVJMJikgY29uc3Q7CkBAIC01MTgsMTIgKzUyMCwxMiBAQCBwcml2YXRl
OgogICAgIFBhc3NPd25QdHI8Q1NQRGlyZWN0aXZlPiBjcmVhdGVDU1BEaXJlY3RpdmUoY29uc3Qg
U3RyaW5nJiBuYW1lLCBjb25zdCBTdHJpbmcmIHZhbHVlKTsKIAogICAgIENTUERpcmVjdGl2ZSog
b3BlcmF0aXZlRGlyZWN0aXZlKENTUERpcmVjdGl2ZSopIGNvbnN0OwotICAgIHZvaWQgcmVwb3J0
VmlvbGF0aW9uKGNvbnN0IFN0cmluZyYgZGlyZWN0aXZlVGV4dCwgY29uc3QgU3RyaW5nJiBjb25z
b2xlTWVzc2FnZSwgY29uc3QgS1VSTCYgYmxvY2tlZFVSTCA9IEtVUkwoKSkgY29uc3Q7CisgICAg
dm9pZCByZXBvcnRWaW9sYXRpb24oY29uc3QgU3RyaW5nJiBkaXJlY3RpdmVUZXh0LCBjb25zdCBT
dHJpbmcmIGNvbnNvbGVNZXNzYWdlLCBjb25zdCBLVVJMJiBibG9ja2VkVVJMID0gS1VSTCgpLCBj
b25zdCBTdHJpbmcmIGNvbnRleHRVUkwgPSBTdHJpbmcoKSwgY29uc3QgV1RGOjpPcmRpbmFsTnVt
YmVyJiBjb250ZXh0TGluZSA9IFdURjo6T3JkaW5hbE51bWJlcjo6YmVmb3JlRmlyc3QoKSkgY29u
c3Q7CiAgICAgdm9pZCBsb2dVbnJlY29nbml6ZWREaXJlY3RpdmUoY29uc3QgU3RyaW5nJiBuYW1l
KSBjb25zdDsKICAgICBib29sIGNoZWNrRXZhbChDU1BEaXJlY3RpdmUqKSBjb25zdDsKIAotICAg
IGJvb2wgY2hlY2tJbmxpbmVBbmRSZXBvcnRWaW9sYXRpb24oQ1NQRGlyZWN0aXZlKiwgY29uc3Qg
U3RyaW5nJiBjb25zb2xlTWVzc2FnZSkgY29uc3Q7Ci0gICAgYm9vbCBjaGVja0V2YWxBbmRSZXBv
cnRWaW9sYXRpb24oQ1NQRGlyZWN0aXZlKiwgY29uc3QgU3RyaW5nJiBjb25zb2xlTWVzc2FnZSkg
Y29uc3Q7CisgICAgYm9vbCBjaGVja0lubGluZUFuZFJlcG9ydFZpb2xhdGlvbihDU1BEaXJlY3Rp
dmUqLCBjb25zdCBTdHJpbmcmIGNvbnNvbGVNZXNzYWdlLCBjb25zdCBTdHJpbmcmIGNvbnRleHRV
UkwsIGNvbnN0IFdURjo6T3JkaW5hbE51bWJlciYgY29udGV4dExpbmUpIGNvbnN0OworICAgIGJv
b2wgY2hlY2tFdmFsQW5kUmVwb3J0VmlvbGF0aW9uKENTUERpcmVjdGl2ZSosIGNvbnN0IFN0cmlu
ZyYgY29uc29sZU1lc3NhZ2UsIGNvbnN0IFN0cmluZyYgY29udGV4dFVSTCwgY29uc3QgV1RGOjpP
cmRpbmFsTnVtYmVyJiBjb250ZXh0TGluZSkgY29uc3Q7CiAgICAgYm9vbCBjaGVja1NvdXJjZUFu
ZFJlcG9ydFZpb2xhdGlvbihDU1BEaXJlY3RpdmUqLCBjb25zdCBLVVJMJiwgY29uc3QgU3RyaW5n
JiB0eXBlKSBjb25zdDsKIAogICAgIGJvb2wgZGVueUlmRW5mb3JjaW5nUG9saWN5KCkgY29uc3Qg
eyByZXR1cm4gbV9yZXBvcnRPbmx5OyB9CkBAIC01NzUsMTAgKzU3NywxMCBAQCBQYXNzT3duUHRy
PENTUERpcmVjdGl2ZUxpc3Q+IENTUERpcmVjdGl2ZUxpc3Q6OmNyZWF0ZShTY3JpcHRFeGVjdXRp
b25Db250ZXh0KiBzYwogICAgIHJldHVybiBwb2xpY3kucmVsZWFzZSgpOwogfQogCi12b2lkIENT
UERpcmVjdGl2ZUxpc3Q6OnJlcG9ydFZpb2xhdGlvbihjb25zdCBTdHJpbmcmIGRpcmVjdGl2ZVRl
eHQsIGNvbnN0IFN0cmluZyYgY29uc29sZU1lc3NhZ2UsIGNvbnN0IEtVUkwmIGJsb2NrZWRVUkwp
IGNvbnN0Cit2b2lkIENTUERpcmVjdGl2ZUxpc3Q6OnJlcG9ydFZpb2xhdGlvbihjb25zdCBTdHJp
bmcmIGRpcmVjdGl2ZVRleHQsIGNvbnN0IFN0cmluZyYgY29uc29sZU1lc3NhZ2UsIGNvbnN0IEtV
UkwmIGJsb2NrZWRVUkwsIGNvbnN0IFN0cmluZyYgY29udGV4dFVSTCwgY29uc3QgV1RGOjpPcmRp
bmFsTnVtYmVyJiBjb250ZXh0TGluZSkgY29uc3QKIHsKICAgICBTdHJpbmcgbWVzc2FnZSA9IG1f
cmVwb3J0T25seSA/ICJbUmVwb3J0IE9ubHldICIgKyBjb25zb2xlTWVzc2FnZSA6IGNvbnNvbGVN
ZXNzYWdlOwotICAgIG1fc2NyaXB0RXhlY3V0aW9uQ29udGV4dC0+YWRkQ29uc29sZU1lc3NhZ2Uo
SlNNZXNzYWdlU291cmNlLCBMb2dNZXNzYWdlVHlwZSwgRXJyb3JNZXNzYWdlTGV2ZWwsIG1lc3Nh
Z2UpOworICAgIG1fc2NyaXB0RXhlY3V0aW9uQ29udGV4dC0+YWRkQ29uc29sZU1lc3NhZ2UoSlNN
ZXNzYWdlU291cmNlLCBMb2dNZXNzYWdlVHlwZSwgRXJyb3JNZXNzYWdlTGV2ZWwsIG1lc3NhZ2Us
IGNvbnRleHRVUkwsIGNvbnRleHRMaW5lLm9uZUJhc2VkSW50KCkpOwogCiAgICAgaWYgKG1fcmVw
b3J0VVJJcy5pc0VtcHR5KCkpCiAgICAgICAgIHJldHVybjsKQEAgLTYzOCwxOSArNjQwLDE5IEBA
IENTUERpcmVjdGl2ZSogQ1NQRGlyZWN0aXZlTGlzdDo6b3BlcmF0aXZlRGlyZWN0aXZlKENTUERp
cmVjdGl2ZSogZGlyZWN0aXZlKSBjb25zCiAgICAgcmV0dXJuIGRpcmVjdGl2ZSA/IGRpcmVjdGl2
ZSA6IG1fZGVmYXVsdFNyYy5nZXQoKTsKIH0KIAotYm9vbCBDU1BEaXJlY3RpdmVMaXN0OjpjaGVj
a0lubGluZUFuZFJlcG9ydFZpb2xhdGlvbihDU1BEaXJlY3RpdmUqIGRpcmVjdGl2ZSwgY29uc3Qg
U3RyaW5nJiBjb25zb2xlTWVzc2FnZSkgY29uc3QKK2Jvb2wgQ1NQRGlyZWN0aXZlTGlzdDo6Y2hl
Y2tJbmxpbmVBbmRSZXBvcnRWaW9sYXRpb24oQ1NQRGlyZWN0aXZlKiBkaXJlY3RpdmUsIGNvbnN0
IFN0cmluZyYgY29uc29sZU1lc3NhZ2UsIGNvbnN0IFN0cmluZyYgY29udGV4dFVSTCwgY29uc3Qg
V1RGOjpPcmRpbmFsTnVtYmVyJiBjb250ZXh0TGluZSkgY29uc3QKIHsKICAgICBpZiAoIWRpcmVj
dGl2ZSB8fCBkaXJlY3RpdmUtPmFsbG93SW5saW5lKCkpCiAgICAgICAgIHJldHVybiB0cnVlOwot
ICAgIHJlcG9ydFZpb2xhdGlvbihkaXJlY3RpdmUtPnRleHQoKSwgY29uc29sZU1lc3NhZ2UgKyAi
XCIiICsgZGlyZWN0aXZlLT50ZXh0KCkgKyAiXCIuXG4iKTsKKyAgICByZXBvcnRWaW9sYXRpb24o
ZGlyZWN0aXZlLT50ZXh0KCksIGNvbnNvbGVNZXNzYWdlICsgIlwiIiArIGRpcmVjdGl2ZS0+dGV4
dCgpICsgIlwiLlxuIiwgS1VSTCgpLCBjb250ZXh0VVJMLCBjb250ZXh0TGluZSk7CiAgICAgcmV0
dXJuIGRlbnlJZkVuZm9yY2luZ1BvbGljeSgpOwogfQogCi1ib29sIENTUERpcmVjdGl2ZUxpc3Q6
OmNoZWNrRXZhbEFuZFJlcG9ydFZpb2xhdGlvbihDU1BEaXJlY3RpdmUqIGRpcmVjdGl2ZSwgY29u
c3QgU3RyaW5nJiBjb25zb2xlTWVzc2FnZSkgY29uc3QKK2Jvb2wgQ1NQRGlyZWN0aXZlTGlzdDo6
Y2hlY2tFdmFsQW5kUmVwb3J0VmlvbGF0aW9uKENTUERpcmVjdGl2ZSogZGlyZWN0aXZlLCBjb25z
dCBTdHJpbmcmIGNvbnNvbGVNZXNzYWdlLCBjb25zdCBTdHJpbmcmIGNvbnRleHRVUkwsIGNvbnN0
IFdURjo6T3JkaW5hbE51bWJlciYgY29udGV4dExpbmUpIGNvbnN0CiB7CiAgICAgaWYgKGNoZWNr
RXZhbChkaXJlY3RpdmUpKQogICAgICAgICByZXR1cm4gdHJ1ZTsKLSAgICByZXBvcnRWaW9sYXRp
b24oZGlyZWN0aXZlLT50ZXh0KCksIGNvbnNvbGVNZXNzYWdlICsgIlwiIiArIGRpcmVjdGl2ZS0+
dGV4dCgpICsgIlwiLlxuIik7CisgICAgcmVwb3J0VmlvbGF0aW9uKGRpcmVjdGl2ZS0+dGV4dCgp
LCBjb25zb2xlTWVzc2FnZSArICJcIiIgKyBkaXJlY3RpdmUtPnRleHQoKSArICJcIi5cbiIsIEtV
UkwoKSwgY29udGV4dFVSTCwgY29udGV4dExpbmUpOwogICAgIHJldHVybiBkZW55SWZFbmZvcmNp
bmdQb2xpY3koKTsKIH0KIApAQCAtNjYzLDM0ICs2NjUsMzQgQEAgYm9vbCBDU1BEaXJlY3RpdmVM
aXN0OjpjaGVja1NvdXJjZUFuZFJlcG9ydFZpb2xhdGlvbihDU1BEaXJlY3RpdmUqIGRpcmVjdGl2
ZSwgY28KICAgICByZXR1cm4gZGVueUlmRW5mb3JjaW5nUG9saWN5KCk7CiB9CiAKLWJvb2wgQ1NQ
RGlyZWN0aXZlTGlzdDo6YWxsb3dKYXZhU2NyaXB0VVJMcygpIGNvbnN0Citib29sIENTUERpcmVj
dGl2ZUxpc3Q6OmFsbG93SmF2YVNjcmlwdFVSTHMoY29uc3QgU3RyaW5nJiBjb250ZXh0VVJMLCBj
b25zdCBXVEY6Ok9yZGluYWxOdW1iZXImIGNvbnRleHRMaW5lKSBjb25zdAogewogICAgIERFRklO
RV9TVEFUSUNfTE9DQUwoU3RyaW5nLCBjb25zb2xlTWVzc2FnZSwgKCJSZWZ1c2VkIHRvIGV4ZWN1
dGUgSmF2YVNjcmlwdCBVUkwgYmVjYXVzZSBpdCB2aW9sYXRlcyB0aGUgZm9sbG93aW5nIENvbnRl
bnQgU2VjdXJpdHkgUG9saWN5IGRpcmVjdGl2ZTogIikpOwotICAgIHJldHVybiBjaGVja0lubGlu
ZUFuZFJlcG9ydFZpb2xhdGlvbihvcGVyYXRpdmVEaXJlY3RpdmUobV9zY3JpcHRTcmMuZ2V0KCkp
LCBjb25zb2xlTWVzc2FnZSk7CisgICAgcmV0dXJuIGNoZWNrSW5saW5lQW5kUmVwb3J0VmlvbGF0
aW9uKG9wZXJhdGl2ZURpcmVjdGl2ZShtX3NjcmlwdFNyYy5nZXQoKSksIGNvbnNvbGVNZXNzYWdl
LCBjb250ZXh0VVJMLCBjb250ZXh0TGluZSk7CiB9CiAKLWJvb2wgQ1NQRGlyZWN0aXZlTGlzdDo6
YWxsb3dJbmxpbmVFdmVudEhhbmRsZXJzKCkgY29uc3QKK2Jvb2wgQ1NQRGlyZWN0aXZlTGlzdDo6
YWxsb3dJbmxpbmVFdmVudEhhbmRsZXJzKGNvbnN0IFN0cmluZyYgY29udGV4dFVSTCwgY29uc3Qg
V1RGOjpPcmRpbmFsTnVtYmVyJiBjb250ZXh0TGluZSkgY29uc3QKIHsKICAgICBERUZJTkVfU1RB
VElDX0xPQ0FMKFN0cmluZywgY29uc29sZU1lc3NhZ2UsICgiUmVmdXNlZCB0byBleGVjdXRlIGlu
bGluZSBldmVudCBoYW5kbGVyIGJlY2F1c2UgaXQgdmlvbGF0ZXMgdGhlIGZvbGxvd2luZyBDb250
ZW50IFNlY3VyaXR5IFBvbGljeSBkaXJlY3RpdmU6ICIpKTsKLSAgICByZXR1cm4gY2hlY2tJbmxp
bmVBbmRSZXBvcnRWaW9sYXRpb24ob3BlcmF0aXZlRGlyZWN0aXZlKG1fc2NyaXB0U3JjLmdldCgp
KSwgY29uc29sZU1lc3NhZ2UpOworICAgIHJldHVybiBjaGVja0lubGluZUFuZFJlcG9ydFZpb2xh
dGlvbihvcGVyYXRpdmVEaXJlY3RpdmUobV9zY3JpcHRTcmMuZ2V0KCkpLCBjb25zb2xlTWVzc2Fn
ZSwgY29udGV4dFVSTCwgY29udGV4dExpbmUpOwogfQogCi1ib29sIENTUERpcmVjdGl2ZUxpc3Q6
OmFsbG93SW5saW5lU2NyaXB0KCkgY29uc3QKK2Jvb2wgQ1NQRGlyZWN0aXZlTGlzdDo6YWxsb3dJ
bmxpbmVTY3JpcHQoY29uc3QgU3RyaW5nJiBjb250ZXh0VVJMLCBjb25zdCBXVEY6Ok9yZGluYWxO
dW1iZXImIGNvbnRleHRMaW5lKSBjb25zdAogewogICAgIERFRklORV9TVEFUSUNfTE9DQUwoU3Ry
aW5nLCBjb25zb2xlTWVzc2FnZSwgKCJSZWZ1c2VkIHRvIGV4ZWN1dGUgaW5saW5lIHNjcmlwdCBi
ZWNhdXNlIGl0IHZpb2xhdGVzIHRoZSBmb2xsb3dpbmcgQ29udGVudCBTZWN1cml0eSBQb2xpY3kg
ZGlyZWN0aXZlOiAiKSk7Ci0gICAgcmV0dXJuIGNoZWNrSW5saW5lQW5kUmVwb3J0VmlvbGF0aW9u
KG9wZXJhdGl2ZURpcmVjdGl2ZShtX3NjcmlwdFNyYy5nZXQoKSksIGNvbnNvbGVNZXNzYWdlKTsK
KyAgICByZXR1cm4gY2hlY2tJbmxpbmVBbmRSZXBvcnRWaW9sYXRpb24ob3BlcmF0aXZlRGlyZWN0
aXZlKG1fc2NyaXB0U3JjLmdldCgpKSwgY29uc29sZU1lc3NhZ2UsIGNvbnRleHRVUkwsIGNvbnRl
eHRMaW5lKTsKIH0KIAotYm9vbCBDU1BEaXJlY3RpdmVMaXN0OjphbGxvd0lubGluZVN0eWxlKCkg
Y29uc3QKK2Jvb2wgQ1NQRGlyZWN0aXZlTGlzdDo6YWxsb3dJbmxpbmVTdHlsZShjb25zdCBTdHJp
bmcmIGNvbnRleHRVUkwsIGNvbnN0IFdURjo6T3JkaW5hbE51bWJlciYgY29udGV4dExpbmUpIGNv
bnN0CiB7CiAgICAgREVGSU5FX1NUQVRJQ19MT0NBTChTdHJpbmcsIGNvbnNvbGVNZXNzYWdlLCAo
IlJlZnVzZWQgdG8gYXBwbHkgaW5saW5lIHN0eWxlIGJlY2F1c2UgaXQgdmlvbGF0ZXMgdGhlIGZv
bGxvd2luZyBDb250ZW50IFNlY3VyaXR5IFBvbGljeSBkaXJlY3RpdmU6ICIpKTsKLSAgICByZXR1
cm4gY2hlY2tJbmxpbmVBbmRSZXBvcnRWaW9sYXRpb24ob3BlcmF0aXZlRGlyZWN0aXZlKG1fc3R5
bGVTcmMuZ2V0KCkpLCBjb25zb2xlTWVzc2FnZSk7CisgICAgcmV0dXJuIGNoZWNrSW5saW5lQW5k
UmVwb3J0VmlvbGF0aW9uKG9wZXJhdGl2ZURpcmVjdGl2ZShtX3N0eWxlU3JjLmdldCgpKSwgY29u
c29sZU1lc3NhZ2UsIGNvbnRleHRVUkwsIGNvbnRleHRMaW5lKTsKIH0KIAogYm9vbCBDU1BEaXJl
Y3RpdmVMaXN0OjphbGxvd0V2YWwoKSBjb25zdAogewogICAgIERFRklORV9TVEFUSUNfTE9DQUwo
U3RyaW5nLCBjb25zb2xlTWVzc2FnZSwgKCJSZWZ1c2VkIHRvIGV2YWx1YXRlIHNjcmlwdCBiZWNh
dXNlIGl0IHZpb2xhdGVzIHRoZSBmb2xsb3dpbmcgQ29udGVudCBTZWN1cml0eSBQb2xpY3kgZGly
ZWN0aXZlOiAiKSk7Ci0gICAgcmV0dXJuIGNoZWNrRXZhbEFuZFJlcG9ydFZpb2xhdGlvbihvcGVy
YXRpdmVEaXJlY3RpdmUobV9zY3JpcHRTcmMuZ2V0KCkpLCBjb25zb2xlTWVzc2FnZSk7CisgICAg
cmV0dXJuIGNoZWNrRXZhbEFuZFJlcG9ydFZpb2xhdGlvbihvcGVyYXRpdmVEaXJlY3RpdmUobV9z
Y3JpcHRTcmMuZ2V0KCkpLCBjb25zb2xlTWVzc2FnZSwgU3RyaW5nKCksIFdURjo6T3JkaW5hbE51
bWJlcjo6YmVmb3JlRmlyc3QoKSk7CiB9CiAKIGJvb2wgQ1NQRGlyZWN0aXZlTGlzdDo6YWxsb3dT
Y3JpcHRGcm9tU291cmNlKGNvbnN0IEtVUkwmIHVybCkgY29uc3QKQEAgLTkzMyw2ICs5MzUsMTYg
QEAgYm9vbCBpc0FsbG93ZWRCeUFsbChjb25zdCBDU1BEaXJlY3RpdmVMaXN0VmVjdG9yJiBwb2xp
Y2llcykKICAgICByZXR1cm4gdHJ1ZTsKIH0KIAordGVtcGxhdGU8Ym9vbCAoQ1NQRGlyZWN0aXZl
TGlzdDo6KmFsbG93ZWQpKGNvbnN0IFN0cmluZyYsIGNvbnN0IFdURjo6T3JkaW5hbE51bWJlciYp
IGNvbnN0PgorYm9vbCBpc0FsbG93ZWRCeUFsbChjb25zdCBDU1BEaXJlY3RpdmVMaXN0VmVjdG9y
JiBwb2xpY2llcywgY29uc3QgU3RyaW5nJiBjb250ZXh0VVJMLCBjb25zdCBXVEY6Ok9yZGluYWxO
dW1iZXImIGNvbnRleHRMaW5lKQoreworICAgIGZvciAoc2l6ZV90IGkgPSAwOyBpIDwgcG9saWNp
ZXMuc2l6ZSgpOyArK2kpIHsKKyAgICAgICAgaWYgKCEocG9saWNpZXNbaV0uZ2V0KCktPiphbGxv
d2VkKShjb250ZXh0VVJMLCBjb250ZXh0TGluZSkpCisgICAgICAgICAgICByZXR1cm4gZmFsc2U7
CisgICAgfQorICAgIHJldHVybiB0cnVlOworfQorCiB0ZW1wbGF0ZTxib29sIChDU1BEaXJlY3Rp
dmVMaXN0OjoqYWxsb3dGcm9tVVJMKShjb25zdCBLVVJMJikgY29uc3Q+CiBib29sIGlzQWxsb3dl
ZEJ5QWxsKGNvbnN0IENTUERpcmVjdGl2ZUxpc3RWZWN0b3ImIHBvbGljaWVzLCBjb25zdCBLVVJM
JiB1cmwpCiB7CkBAIC05NDMsMjYgKzk1NSwyNiBAQCBib29sIGlzQWxsb3dlZEJ5QWxsKGNvbnN0
IENTUERpcmVjdGl2ZUxpc3RWZWN0b3ImIHBvbGljaWVzLCBjb25zdCBLVVJMJiB1cmwpCiAgICAg
cmV0dXJuIHRydWU7CiB9CiAKLWJvb2wgQ29udGVudFNlY3VyaXR5UG9saWN5OjphbGxvd0phdmFT
Y3JpcHRVUkxzKCkgY29uc3QKK2Jvb2wgQ29udGVudFNlY3VyaXR5UG9saWN5OjphbGxvd0phdmFT
Y3JpcHRVUkxzKGNvbnN0IFN0cmluZyYgY29udGV4dFVSTCwgY29uc3QgV1RGOjpPcmRpbmFsTnVt
YmVyJiBjb250ZXh0TGluZSkgY29uc3QKIHsKLSAgICByZXR1cm4gaXNBbGxvd2VkQnlBbGw8JkNT
UERpcmVjdGl2ZUxpc3Q6OmFsbG93SmF2YVNjcmlwdFVSTHM+KG1fcG9saWNpZXMpOworICAgIHJl
dHVybiBpc0FsbG93ZWRCeUFsbDwmQ1NQRGlyZWN0aXZlTGlzdDo6YWxsb3dKYXZhU2NyaXB0VVJM
cz4obV9wb2xpY2llcywgY29udGV4dFVSTCwgY29udGV4dExpbmUpOwogfQogCi1ib29sIENvbnRl
bnRTZWN1cml0eVBvbGljeTo6YWxsb3dJbmxpbmVFdmVudEhhbmRsZXJzKCkgY29uc3QKK2Jvb2wg
Q29udGVudFNlY3VyaXR5UG9saWN5OjphbGxvd0lubGluZUV2ZW50SGFuZGxlcnMoY29uc3QgU3Ry
aW5nJiBjb250ZXh0VVJMLCBjb25zdCBXVEY6Ok9yZGluYWxOdW1iZXImIGNvbnRleHRMaW5lKSBj
b25zdAogewotICAgIHJldHVybiBpc0FsbG93ZWRCeUFsbDwmQ1NQRGlyZWN0aXZlTGlzdDo6YWxs
b3dJbmxpbmVFdmVudEhhbmRsZXJzPihtX3BvbGljaWVzKTsKKyAgICByZXR1cm4gaXNBbGxvd2Vk
QnlBbGw8JkNTUERpcmVjdGl2ZUxpc3Q6OmFsbG93SW5saW5lRXZlbnRIYW5kbGVycz4obV9wb2xp
Y2llcywgY29udGV4dFVSTCwgY29udGV4dExpbmUpOwogfQogCi1ib29sIENvbnRlbnRTZWN1cml0
eVBvbGljeTo6YWxsb3dJbmxpbmVTY3JpcHQoKSBjb25zdAorYm9vbCBDb250ZW50U2VjdXJpdHlQ
b2xpY3k6OmFsbG93SW5saW5lU2NyaXB0KGNvbnN0IFN0cmluZyYgY29udGV4dFVSTCwgY29uc3Qg
V1RGOjpPcmRpbmFsTnVtYmVyJiBjb250ZXh0TGluZSkgY29uc3QKIHsKLSAgICByZXR1cm4gaXNB
bGxvd2VkQnlBbGw8JkNTUERpcmVjdGl2ZUxpc3Q6OmFsbG93SW5saW5lU2NyaXB0PihtX3BvbGlj
aWVzKTsKKyAgICByZXR1cm4gaXNBbGxvd2VkQnlBbGw8JkNTUERpcmVjdGl2ZUxpc3Q6OmFsbG93
SW5saW5lU2NyaXB0PihtX3BvbGljaWVzLCBjb250ZXh0VVJMLCBjb250ZXh0TGluZSk7CiB9CiAK
LWJvb2wgQ29udGVudFNlY3VyaXR5UG9saWN5OjphbGxvd0lubGluZVN0eWxlKCkgY29uc3QKK2Jv
b2wgQ29udGVudFNlY3VyaXR5UG9saWN5OjphbGxvd0lubGluZVN0eWxlKGNvbnN0IFN0cmluZyYg
Y29udGV4dFVSTCwgY29uc3QgV1RGOjpPcmRpbmFsTnVtYmVyJiBjb250ZXh0TGluZSkgY29uc3QK
IHsKICAgICBpZiAobV9vdmVycmlkZUlubGluZVN0eWxlQWxsb3dlZCkKICAgICAgICAgcmV0dXJu
IHRydWU7Ci0gICAgcmV0dXJuIGlzQWxsb3dlZEJ5QWxsPCZDU1BEaXJlY3RpdmVMaXN0OjphbGxv
d0lubGluZVN0eWxlPihtX3BvbGljaWVzKTsKKyAgICByZXR1cm4gaXNBbGxvd2VkQnlBbGw8JkNT
UERpcmVjdGl2ZUxpc3Q6OmFsbG93SW5saW5lU3R5bGU+KG1fcG9saWNpZXMsIGNvbnRleHRVUkws
IGNvbnRleHRMaW5lKTsKIH0KIAogYm9vbCBDb250ZW50U2VjdXJpdHlQb2xpY3k6OmFsbG93RXZh
bCgpIGNvbnN0CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL0NvbnRlbnRTZWN1cml0
eVBvbGljeS5oIGIvU291cmNlL1dlYkNvcmUvcGFnZS9Db250ZW50U2VjdXJpdHlQb2xpY3kuaApp
bmRleCBmMTMwMTRmMTMxZjU3MGJmYmI2MDU5YTUyODZhY2RkODAxODRiNWNjLi5lMWE5MDhjNDhi
OGYxMzdhMDAxMmFiNzAzNTUzNmU2NDYyMzYzMTUzIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29y
ZS9wYWdlL0NvbnRlbnRTZWN1cml0eVBvbGljeS5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BhZ2Uv
Q29udGVudFNlY3VyaXR5UG9saWN5LmgKQEAgLTMxLDYgKzMxLDEyIEBACiAjaW5jbHVkZSA8d3Rm
L1ZlY3Rvci5oPgogI2luY2x1ZGUgPHd0Zi90ZXh0L1dURlN0cmluZy5oPgogCituYW1lc3BhY2Ug
V1RGIHsKKworY2xhc3MgT3JkaW5hbE51bWJlcjsKKworfQorCiBuYW1lc3BhY2UgV2ViQ29yZSB7
CiAKIGNsYXNzIENTUERpcmVjdGl2ZUxpc3Q7CkBAIC02MSwxMCArNjcsMTAgQEAgcHVibGljOgog
ICAgIGNvbnN0IFN0cmluZyYgZGVwcmVjYXRlZEhlYWRlcigpIGNvbnN0OwogICAgIEhlYWRlclR5
cGUgZGVwcmVjYXRlZEhlYWRlclR5cGUoKSBjb25zdDsKIAotICAgIGJvb2wgYWxsb3dKYXZhU2Ny
aXB0VVJMcygpIGNvbnN0OwotICAgIGJvb2wgYWxsb3dJbmxpbmVFdmVudEhhbmRsZXJzKCkgY29u
c3Q7Ci0gICAgYm9vbCBhbGxvd0lubGluZVNjcmlwdCgpIGNvbnN0OwotICAgIGJvb2wgYWxsb3dJ
bmxpbmVTdHlsZSgpIGNvbnN0OworICAgIGJvb2wgYWxsb3dKYXZhU2NyaXB0VVJMcyhjb25zdCBT
dHJpbmcmIGNvbnRleHRVUkwsIGNvbnN0IFdURjo6T3JkaW5hbE51bWJlciYgY29udGV4dExpbmUp
IGNvbnN0OworICAgIGJvb2wgYWxsb3dJbmxpbmVFdmVudEhhbmRsZXJzKGNvbnN0IFN0cmluZyYg
Y29udGV4dFVSTCwgY29uc3QgV1RGOjpPcmRpbmFsTnVtYmVyJiBjb250ZXh0TGluZSkgY29uc3Q7
CisgICAgYm9vbCBhbGxvd0lubGluZVNjcmlwdChjb25zdCBTdHJpbmcmIGNvbnRleHRVUkwsIGNv
bnN0IFdURjo6T3JkaW5hbE51bWJlciYgY29udGV4dExpbmUpIGNvbnN0OworICAgIGJvb2wgYWxs
b3dJbmxpbmVTdHlsZShjb25zdCBTdHJpbmcmIGNvbnRleHRVUkwsIGNvbnN0IFdURjo6T3JkaW5h
bE51bWJlciYgY29udGV4dExpbmUpIGNvbnN0OwogICAgIGJvb2wgYWxsb3dFdmFsKCkgY29uc3Q7
CiAKICAgICBib29sIGFsbG93U2NyaXB0RnJvbVNvdXJjZShjb25zdCBLVVJMJikgY29uc3Q7CmRp
ZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cgYi9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cK
aW5kZXggMzdkMDU3MGVmYjc0ZDdmMWZhNDNlNzA2N2RhM2I5YmE0N2NhNjA4Ni4uYjcyZTA0NDRi
ZjE3ZjliMzZmZDI2NWY4OGM3MTMwODYxM2I1ZjFlNCAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMv
Q2hhbmdlTG9nCisrKyBiL0xheW91dFRlc3RzL0NoYW5nZUxvZwpAQCAtMSwzICsxLDMxIEBACisy
MDEyLTA1LTE4ICBNaWtlIFdlc3QgIDxta3dzdEBjaHJvbWl1bS5vcmc+CisKKyAgICAgICAgSW5s
aW5lIHNjcmlwdCBhbmQgc3R5bGUgYmxvY2tlZCBieSBDb250ZW50IFNlY3VyaXR5IFBvbGljeSBz
aG91bGQgcHJvdmlkZSBtb3JlIGRldGFpbGVkIGNvbnNvbGUgZXJyb3JzLgorICAgICAgICBodHRw
czovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9ODY4NDgKKworICAgICAgICBSZXZp
ZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICAqIGh0dHAvdGVzdHMvc2VjdXJpdHkv
Y29udGVudFNlY3VyaXR5UG9saWN5L2NvbWJpbmUtbXVsdGlwbGUtcG9saWNpZXMtZXhwZWN0ZWQu
dHh0OgorICAgICAgICAqIGh0dHAvdGVzdHMvc2VjdXJpdHkvY29udGVudFNlY3VyaXR5UG9saWN5
L2RlZmF1bHQtc3JjLWlubGluZS1ibG9ja2VkLWV4cGVjdGVkLnR4dDoKKyAgICAgICAgKiBodHRw
L3Rlc3RzL3NlY3VyaXR5L2NvbnRlbnRTZWN1cml0eVBvbGljeS9pbmplY3RlZC1pbmxpbmUtc2Ny
aXB0LWFsbG93ZWQtZXhwZWN0ZWQudHh0OiBBZGRlZC4KKyAgICAgICAgKiBodHRwL3Rlc3RzL3Nl
Y3VyaXR5L2NvbnRlbnRTZWN1cml0eVBvbGljeS9pbmplY3RlZC1pbmxpbmUtc2NyaXB0LWFsbG93
ZWQuaHRtbDogQWRkZWQuCisgICAgICAgICogaHR0cC90ZXN0cy9zZWN1cml0eS9jb250ZW50U2Vj
dXJpdHlQb2xpY3kvaW5qZWN0ZWQtaW5saW5lLXNjcmlwdC1ibG9ja2VkLWV4cGVjdGVkLnR4dDog
QWRkZWQuCisgICAgICAgICogaHR0cC90ZXN0cy9zZWN1cml0eS9jb250ZW50U2VjdXJpdHlQb2xp
Y3kvaW5qZWN0ZWQtaW5saW5lLXNjcmlwdC1ibG9ja2VkLmh0bWw6IEFkZGVkLgorICAgICAgICAq
IGh0dHAvdGVzdHMvc2VjdXJpdHkvY29udGVudFNlY3VyaXR5UG9saWN5L2lubGluZS1zY3JpcHQt
YmxvY2tlZC1leHBlY3RlZC50eHQ6CisgICAgICAgICogaHR0cC90ZXN0cy9zZWN1cml0eS9jb250
ZW50U2VjdXJpdHlQb2xpY3kvaW5saW5lLXNjcmlwdC1ibG9ja2VkLWdvb2Z5LWV4cGVjdGVkLnR4
dDoKKyAgICAgICAgKiBodHRwL3Rlc3RzL3NlY3VyaXR5L2NvbnRlbnRTZWN1cml0eVBvbGljeS9p
bmxpbmUtc2NyaXB0LWJsb2NrZWQtamF2YXNjcmlwdC11cmwtZXhwZWN0ZWQudHh0OgorICAgICAg
ICAqIGh0dHAvdGVzdHMvc2VjdXJpdHkvY29udGVudFNlY3VyaXR5UG9saWN5L2lubGluZS1zdHls
ZS1hdHRyaWJ1dGUtYmxvY2tlZC1leHBlY3RlZC50eHQ6CisgICAgICAgICogaHR0cC90ZXN0cy9z
ZWN1cml0eS9jb250ZW50U2VjdXJpdHlQb2xpY3kvaW5saW5lLXN0eWxlLWJsb2NrZWQtZXhwZWN0
ZWQudHh0OgorICAgICAgICAqIGh0dHAvdGVzdHMvc2VjdXJpdHkvY29udGVudFNlY3VyaXR5UG9s
aWN5L2phdmFzY3JpcHQtdXJsLWJsb2NrZWQtZXhwZWN0ZWQudHh0OgorICAgICAgICAqIGh0dHAv
dGVzdHMvc2VjdXJpdHkvY29udGVudFNlY3VyaXR5UG9saWN5L3JlcG9ydC1hbmQtZW5mb3JjZS1l
eHBlY3RlZC50eHQ6CisgICAgICAgICogaHR0cC90ZXN0cy9zZWN1cml0eS9jb250ZW50U2VjdXJp
dHlQb2xpY3kvcmVwb3J0LW9ubHktZXhwZWN0ZWQudHh0OgorICAgICAgICAqIGh0dHAvdGVzdHMv
c2VjdXJpdHkvY29udGVudFNlY3VyaXR5UG9saWN5L3JlcG9ydC1vbmx5LWZyb20taGVhZGVyLWV4
cGVjdGVkLnR4dDoKKyAgICAgICAgKiBodHRwL3Rlc3RzL3NlY3VyaXR5L2NvbnRlbnRTZWN1cml0
eVBvbGljeS9yZXBvcnQtdXJpLWV4cGVjdGVkLnR4dDoKKyAgICAgICAgKiBodHRwL3Rlc3RzL3Nl
Y3VyaXR5L2NvbnRlbnRTZWN1cml0eVBvbGljeS9yZXBvcnQtdXJpLWZyb20tY2hpbGQtZnJhbWUt
ZXhwZWN0ZWQudHh0OgorICAgICAgICAqIGh0dHAvdGVzdHMvc2VjdXJpdHkvY29udGVudFNlY3Vy
aXR5UG9saWN5L3Jlc291cmNlcy9pbmplY3Qtc2NyaXB0LmpzOiBBZGRlZC4KKyAgICAgICAgKiBo
dHRwL3Rlc3RzL3NlY3VyaXR5L2NvbnRlbnRTZWN1cml0eVBvbGljeS9zY3JpcHQtc3JjLW5vbmUt
aW5saW5lLWV2ZW50LWV4cGVjdGVkLnR4dDoKKyAgICAgICAgKiBodHRwL3Rlc3RzL3NlY3VyaXR5
L2NvbnRlbnRTZWN1cml0eVBvbGljeS9zcmNkb2MtZG9lc250LWJ5cGFzcy1zY3JpcHQtc3JjLWV4
cGVjdGVkLnR4dDoKKwogMjAxMi0wNS0xNyAgRGFuIEJlcm5zdGVpbiAgPG1pdHpAYXBwbGUuY29t
PgogCiAgICAgICAgIDxyZGFyOi8vcHJvYmxlbS8xMTQxOTkzMz4gUHJvYmxlbXMgd2l0aCBmbGlw
cGVkIHdyaXRpbmcgbW9kZXMgYW5kIGNvbXBvc2l0aW5nCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0
cy9odHRwL3Rlc3RzL3NlY3VyaXR5L2NvbnRlbnRTZWN1cml0eVBvbGljeS9jb21iaW5lLW11bHRp
cGxlLXBvbGljaWVzLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvc2VjdXJp
dHkvY29udGVudFNlY3VyaXR5UG9saWN5L2NvbWJpbmUtbXVsdGlwbGUtcG9saWNpZXMtZXhwZWN0
ZWQudHh0CmluZGV4IDc1NjA0MTkwZmIzZWIyMjY4MDNlZDAwNzM3MWQwYjY2NzRjNDJjODguLjAx
MjRmZThiYWI5ZTRmMTQxZDdlOTcyYWQ2ZGY1ODRhMTE5OTExM2MgMTAwNjQ0Ci0tLSBhL0xheW91
dFRlc3RzL2h0dHAvdGVzdHMvc2VjdXJpdHkvY29udGVudFNlY3VyaXR5UG9saWN5L2NvbWJpbmUt
bXVsdGlwbGUtcG9saWNpZXMtZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL2h0dHAvdGVz
dHMvc2VjdXJpdHkvY29udGVudFNlY3VyaXR5UG9saWN5L2NvbWJpbmUtbXVsdGlwbGUtcG9saWNp
ZXMtZXhwZWN0ZWQudHh0CkBAIC0xLDUgKzEsNSBAQAotQ09OU09MRSBNRVNTQUdFOiBSZWZ1c2Vk
IHRvIGV4ZWN1dGUgaW5saW5lIHNjcmlwdCBiZWNhdXNlIGl0IHZpb2xhdGVzIHRoZSBmb2xsb3dp
bmcgQ29udGVudCBTZWN1cml0eSBQb2xpY3kgZGlyZWN0aXZlOiAic2NyaXB0LXNyYyAnc2VsZici
LgorQ09OU09MRSBNRVNTQUdFOiBsaW5lIDExOiBSZWZ1c2VkIHRvIGV4ZWN1dGUgaW5saW5lIHNj
cmlwdCBiZWNhdXNlIGl0IHZpb2xhdGVzIHRoZSBmb2xsb3dpbmcgQ29udGVudCBTZWN1cml0eSBQ
b2xpY3kgZGlyZWN0aXZlOiAic2NyaXB0LXNyYyAnc2VsZiciLgogCi1DT05TT0xFIE1FU1NBR0U6
IFJlZnVzZWQgdG8gYXBwbHkgaW5saW5lIHN0eWxlIGJlY2F1c2UgaXQgdmlvbGF0ZXMgdGhlIGZv
bGxvd2luZyBDb250ZW50IFNlY3VyaXR5IFBvbGljeSBkaXJlY3RpdmU6ICJzdHlsZS1zcmMgJ25v
bmUnIi4KK0NPTlNPTEUgTUVTU0FHRTogbGluZSAxNDogUmVmdXNlZCB0byBhcHBseSBpbmxpbmUg
c3R5bGUgYmVjYXVzZSBpdCB2aW9sYXRlcyB0aGUgZm9sbG93aW5nIENvbnRlbnQgU2VjdXJpdHkg
UG9saWN5IGRpcmVjdGl2ZTogInN0eWxlLXNyYyAnbm9uZSciLgogCiBUaGlzIHRlc3QgY2hlY2tz
IHRoYXQgd2UgZW5mb3JjZSBhbGwgdGhlIHN1cHBsaWVkIHBvbGljaWVzLiBUaGlzIHRlc3QgcGFz
c2VzIGlmIGl0IGRvZXNuJ3QgYWxlcnQgZmFpbCBhbmQgaWYgdGhlIHN0eWxlIGRvZXNuJ3QgYXBw
bHkuCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3NlY3VyaXR5L2NvbnRlbnRT
ZWN1cml0eVBvbGljeS9kZWZhdWx0LXNyYy1pbmxpbmUtYmxvY2tlZC1leHBlY3RlZC50eHQgYi9M
YXlvdXRUZXN0cy9odHRwL3Rlc3RzL3NlY3VyaXR5L2NvbnRlbnRTZWN1cml0eVBvbGljeS9kZWZh
dWx0LXNyYy1pbmxpbmUtYmxvY2tlZC1leHBlY3RlZC50eHQKaW5kZXggZDY4NWNhZGQyOTVhOTFm
NGRmMDQ2NDY5NTIyYWE4YjlhMzExYTg4YS4uNTI1ZGQ3NTVkY2Q4Mjc5ZTIxMjVjNmM2MTcyZjg3
NDllODZmM2UzNSAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9zZWN1cml0eS9j
b250ZW50U2VjdXJpdHlQb2xpY3kvZGVmYXVsdC1zcmMtaW5saW5lLWJsb2NrZWQtZXhwZWN0ZWQu
dHh0CisrKyBiL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvc2VjdXJpdHkvY29udGVudFNlY3VyaXR5
UG9saWN5L2RlZmF1bHQtc3JjLWlubGluZS1ibG9ja2VkLWV4cGVjdGVkLnR4dApAQCAtMSw1ICsx
LDUgQEAKLUNPTlNPTEUgTUVTU0FHRTogUmVmdXNlZCB0byBleGVjdXRlIGlubGluZSBzY3JpcHQg
YmVjYXVzZSBpdCB2aW9sYXRlcyB0aGUgZm9sbG93aW5nIENvbnRlbnQgU2VjdXJpdHkgUG9saWN5
IGRpcmVjdGl2ZTogImRlZmF1bHQtc3JjICdzZWxmJyIuCitDT05TT0xFIE1FU1NBR0U6IGxpbmUg
OTogUmVmdXNlZCB0byBleGVjdXRlIGlubGluZSBzY3JpcHQgYmVjYXVzZSBpdCB2aW9sYXRlcyB0
aGUgZm9sbG93aW5nIENvbnRlbnQgU2VjdXJpdHkgUG9saWN5IGRpcmVjdGl2ZTogImRlZmF1bHQt
c3JjICdzZWxmJyIuCiAKLUNPTlNPTEUgTUVTU0FHRTogUmVmdXNlZCB0byBleGVjdXRlIGlubGlu
ZSBzY3JpcHQgYmVjYXVzZSBpdCB2aW9sYXRlcyB0aGUgZm9sbG93aW5nIENvbnRlbnQgU2VjdXJp
dHkgUG9saWN5IGRpcmVjdGl2ZTogImRlZmF1bHQtc3JjICdzZWxmJyIuCitDT05TT0xFIE1FU1NB
R0U6IGxpbmUgMTI6IFJlZnVzZWQgdG8gZXhlY3V0ZSBpbmxpbmUgc2NyaXB0IGJlY2F1c2UgaXQg
dmlvbGF0ZXMgdGhlIGZvbGxvd2luZyBDb250ZW50IFNlY3VyaXR5IFBvbGljeSBkaXJlY3RpdmU6
ICJkZWZhdWx0LXNyYyAnc2VsZiciLgogCiBUaGlzIHRlc3QgcGFzc2VzIGlmIGl0IGRvZXNuJ3Qg
YWxlcnQgZmFpbC4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvc2VjdXJpdHkv
Y29udGVudFNlY3VyaXR5UG9saWN5L2luamVjdGVkLWlubGluZS1zY3JpcHQtYWxsb3dlZC1leHBl
Y3RlZC50eHQgYi9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3NlY3VyaXR5L2NvbnRlbnRTZWN1cml0
eVBvbGljeS9pbmplY3RlZC1pbmxpbmUtc2NyaXB0LWFsbG93ZWQtZXhwZWN0ZWQudHh0Cm5ldyBm
aWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAuLmFhOTg1OGJmMGU1MzZkZmI0N2UwZDNiNjY0NjhhZjQ3ZjYzMzQ1ZWYKLS0tIC9kZXYv
bnVsbAorKysgYi9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3NlY3VyaXR5L2NvbnRlbnRTZWN1cml0
eVBvbGljeS9pbmplY3RlZC1pbmxpbmUtc2NyaXB0LWFsbG93ZWQtZXhwZWN0ZWQudHh0CkBAIC0w
LDAgKzEsMyBAQAorQUxFUlQ6IFBhc3MgMSBvZiAyCitBTEVSVDogUGFzcyAyIG9mIDIKKwpkaWZm
IC0tZ2l0IGEvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9zZWN1cml0eS9jb250ZW50U2VjdXJpdHlQ
b2xpY3kvaW5qZWN0ZWQtaW5saW5lLXNjcmlwdC1hbGxvd2VkLmh0bWwgYi9MYXlvdXRUZXN0cy9o
dHRwL3Rlc3RzL3NlY3VyaXR5L2NvbnRlbnRTZWN1cml0eVBvbGljeS9pbmplY3RlZC1pbmxpbmUt
c2NyaXB0LWFsbG93ZWQuaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5jZWIyN2Q1YmFmYjcyNWQxYzU0NTdiNzVj
YmNjYTJiNzJmZmEzNWNlCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvaHR0cC90ZXN0
cy9zZWN1cml0eS9jb250ZW50U2VjdXJpdHlQb2xpY3kvaW5qZWN0ZWQtaW5saW5lLXNjcmlwdC1h
bGxvd2VkLmh0bWwKQEAgLTAsMCArMSwxMCBAQAorPCFET0NUWVBFIGh0bWw+Cis8aHRtbD4KKzxo
ZWFkPgorPG1ldGEgaHR0cC1lcXVpdj0iWC1XZWJLaXQtQ1NQIiBjb250ZW50PSJzY3JpcHQtc3Jj
IGh0dHA6Ly8xMjcuMC4wLjE6KiAndW5zYWZlLWlubGluZSciPgorPHNjcmlwdCBzcmM9InJlc291
cmNlcy9kdW1wLWFzLXRleHQuanMiPjwvc2NyaXB0PgorPC9oZWFkPgorPGJvZHk+Cis8c2NyaXB0
IHNyYz0icmVzb3VyY2VzL2luamVjdC1zY3JpcHQuanMiPjwvc2NyaXB0PgorPC9ib2R5PgorPC9o
dG1sPgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9zZWN1cml0eS9jb250ZW50
U2VjdXJpdHlQb2xpY3kvaW5qZWN0ZWQtaW5saW5lLXNjcmlwdC1ibG9ja2VkLWV4cGVjdGVkLnR4
dCBiL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvc2VjdXJpdHkvY29udGVudFNlY3VyaXR5UG9saWN5
L2luamVjdGVkLWlubGluZS1zY3JpcHQtYmxvY2tlZC1leHBlY3RlZC50eHQKbmV3IGZpbGUgbW9k
ZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4u
OTZkNmNhY2Q5YzM5ZTU5Nzc4MjNiMzRmNDAzNjhlNDBjOTBiNDMzYwotLS0gL2Rldi9udWxsCisr
KyBiL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvc2VjdXJpdHkvY29udGVudFNlY3VyaXR5UG9saWN5
L2luamVjdGVkLWlubGluZS1zY3JpcHQtYmxvY2tlZC1leHBlY3RlZC50eHQKQEAgLTAsMCArMSw1
IEBACitDT05TT0xFIE1FU1NBR0U6IGxpbmUgODogUmVmdXNlZCB0byBleGVjdXRlIGlubGluZSBz
Y3JpcHQgYmVjYXVzZSBpdCB2aW9sYXRlcyB0aGUgZm9sbG93aW5nIENvbnRlbnQgU2VjdXJpdHkg
UG9saWN5IGRpcmVjdGl2ZTogInNjcmlwdC1zcmMgaHR0cDovLzEyNy4wLjAuMToqIi4KKworQ09O
U09MRSBNRVNTQUdFOiBsaW5lIDg6IFJlZnVzZWQgdG8gZXhlY3V0ZSBpbmxpbmUgc2NyaXB0IGJl
Y2F1c2UgaXQgdmlvbGF0ZXMgdGhlIGZvbGxvd2luZyBDb250ZW50IFNlY3VyaXR5IFBvbGljeSBk
aXJlY3RpdmU6ICJzY3JpcHQtc3JjIGh0dHA6Ly8xMjcuMC4wLjE6KiIuCisKKwpkaWZmIC0tZ2l0
IGEvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9zZWN1cml0eS9jb250ZW50U2VjdXJpdHlQb2xpY3kv
aW5qZWN0ZWQtaW5saW5lLXNjcmlwdC1ibG9ja2VkLmh0bWwgYi9MYXlvdXRUZXN0cy9odHRwL3Rl
c3RzL3NlY3VyaXR5L2NvbnRlbnRTZWN1cml0eVBvbGljeS9pbmplY3RlZC1pbmxpbmUtc2NyaXB0
LWJsb2NrZWQuaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi42MTA4NjhiN2VjNzZiNTAzYWJiZDQ5M2MzMmIxNTQ0
ZmQzOTM3OGJiCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9zZWN1
cml0eS9jb250ZW50U2VjdXJpdHlQb2xpY3kvaW5qZWN0ZWQtaW5saW5lLXNjcmlwdC1ibG9ja2Vk
Lmh0bWwKQEAgLTAsMCArMSwxMCBAQAorPCFET0NUWVBFIGh0bWw+Cis8aHRtbD4KKzxoZWFkPgor
PG1ldGEgaHR0cC1lcXVpdj0iWC1XZWJLaXQtQ1NQIiBjb250ZW50PSJzY3JpcHQtc3JjIGh0dHA6
Ly8xMjcuMC4wLjE6KiI+Cis8c2NyaXB0IHNyYz0icmVzb3VyY2VzL2R1bXAtYXMtdGV4dC5qcyI+
PC9zY3JpcHQ+Cis8L2hlYWQ+Cis8Ym9keT4KKzxzY3JpcHQgc3JjPSJyZXNvdXJjZXMvaW5qZWN0
LXNjcmlwdC5qcyI+PC9zY3JpcHQ+Cis8L2JvZHk+Cis8L2h0bWw+CmRpZmYgLS1naXQgYS9MYXlv
dXRUZXN0cy9odHRwL3Rlc3RzL3NlY3VyaXR5L2NvbnRlbnRTZWN1cml0eVBvbGljeS9pbmxpbmUt
c2NyaXB0LWJsb2NrZWQtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9zZWN1
cml0eS9jb250ZW50U2VjdXJpdHlQb2xpY3kvaW5saW5lLXNjcmlwdC1ibG9ja2VkLWV4cGVjdGVk
LnR4dAppbmRleCAwY2VhZDYxM2VkYTc1NGU1OTI3Y2M4ZDFjZDc4NTU0YzYzMjE2NTEyLi5lMWI2
OGI1MGY3ZTc2N2NkYjc4OTFkODFmMDIyNzUwYWY0MjgxOTdmIDEwMDY0NAotLS0gYS9MYXlvdXRU
ZXN0cy9odHRwL3Rlc3RzL3NlY3VyaXR5L2NvbnRlbnRTZWN1cml0eVBvbGljeS9pbmxpbmUtc2Ny
aXB0LWJsb2NrZWQtZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvc2Vj
dXJpdHkvY29udGVudFNlY3VyaXR5UG9saWN5L2lubGluZS1zY3JpcHQtYmxvY2tlZC1leHBlY3Rl
ZC50eHQKQEAgLTEsNSArMSw1IEBACi1DT05TT0xFIE1FU1NBR0U6IFJlZnVzZWQgdG8gZXhlY3V0
ZSBpbmxpbmUgc2NyaXB0IGJlY2F1c2UgaXQgdmlvbGF0ZXMgdGhlIGZvbGxvd2luZyBDb250ZW50
IFNlY3VyaXR5IFBvbGljeSBkaXJlY3RpdmU6ICJzY3JpcHQtc3JjIGh0dHA6Ly8xMjcuMC4wLjE6
KiIuCitDT05TT0xFIE1FU1NBR0U6IGxpbmUgOTogUmVmdXNlZCB0byBleGVjdXRlIGlubGluZSBz
Y3JpcHQgYmVjYXVzZSBpdCB2aW9sYXRlcyB0aGUgZm9sbG93aW5nIENvbnRlbnQgU2VjdXJpdHkg
UG9saWN5IGRpcmVjdGl2ZTogInNjcmlwdC1zcmMgaHR0cDovLzEyNy4wLjAuMToqIi4KIAotQ09O
U09MRSBNRVNTQUdFOiBSZWZ1c2VkIHRvIGV4ZWN1dGUgaW5saW5lIHNjcmlwdCBiZWNhdXNlIGl0
IHZpb2xhdGVzIHRoZSBmb2xsb3dpbmcgQ29udGVudCBTZWN1cml0eSBQb2xpY3kgZGlyZWN0aXZl
OiAic2NyaXB0LXNyYyBodHRwOi8vMTI3LjAuMC4xOioiLgorQ09OU09MRSBNRVNTQUdFOiBsaW5l
IDEyOiBSZWZ1c2VkIHRvIGV4ZWN1dGUgaW5saW5lIHNjcmlwdCBiZWNhdXNlIGl0IHZpb2xhdGVz
IHRoZSBmb2xsb3dpbmcgQ29udGVudCBTZWN1cml0eSBQb2xpY3kgZGlyZWN0aXZlOiAic2NyaXB0
LXNyYyBodHRwOi8vMTI3LjAuMC4xOioiLgogCiBUaGlzIHRlc3QgcGFzc2VzIGlmIGl0IGRvZXNu
J3QgYWxlcnQgZmFpbC4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvc2VjdXJp
dHkvY29udGVudFNlY3VyaXR5UG9saWN5L2lubGluZS1zY3JpcHQtYmxvY2tlZC1nb29meS1leHBl
Y3RlZC50eHQgYi9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3NlY3VyaXR5L2NvbnRlbnRTZWN1cml0
eVBvbGljeS9pbmxpbmUtc2NyaXB0LWJsb2NrZWQtZ29vZnktZXhwZWN0ZWQudHh0CmluZGV4IDVi
YjA0NWM3Yzk1MzZhNDI0MGZkNmU2NzdkNmRiNmFkYjA0NjQxY2YuLjUzNThjMDU2NDI4NjQ0ZWM0
YTUxZmMyZTA0YWNlZjExNTJlNGE3MDYgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2h0dHAvdGVz
dHMvc2VjdXJpdHkvY29udGVudFNlY3VyaXR5UG9saWN5L2lubGluZS1zY3JpcHQtYmxvY2tlZC1n
b29meS1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9zZWN1cml0eS9j
b250ZW50U2VjdXJpdHlQb2xpY3kvaW5saW5lLXNjcmlwdC1ibG9ja2VkLWdvb2Z5LWV4cGVjdGVk
LnR4dApAQCAtMSw3ICsxLDcgQEAKIENPTlNPTEUgTUVTU0FHRTogVW5yZWNvZ25pemVkIENvbnRl
bnQtU2VjdXJpdHktUG9saWN5IGRpcmVjdGl2ZSAnb3B0aW9ucycuCiAKLUNPTlNPTEUgTUVTU0FH
RTogUmVmdXNlZCB0byBleGVjdXRlIGlubGluZSBzY3JpcHQgYmVjYXVzZSBpdCB2aW9sYXRlcyB0
aGUgZm9sbG93aW5nIENvbnRlbnQgU2VjdXJpdHkgUG9saWN5IGRpcmVjdGl2ZTogInNjcmlwdC1z
cmMgaHR0cDovLzEyNy4wLjAuMToqIi4KK0NPTlNPTEUgTUVTU0FHRTogbGluZSA5OiBSZWZ1c2Vk
IHRvIGV4ZWN1dGUgaW5saW5lIHNjcmlwdCBiZWNhdXNlIGl0IHZpb2xhdGVzIHRoZSBmb2xsb3dp
bmcgQ29udGVudCBTZWN1cml0eSBQb2xpY3kgZGlyZWN0aXZlOiAic2NyaXB0LXNyYyBodHRwOi8v
MTI3LjAuMC4xOioiLgogCi1DT05TT0xFIE1FU1NBR0U6IFJlZnVzZWQgdG8gZXhlY3V0ZSBpbmxp
bmUgZXZlbnQgaGFuZGxlciBiZWNhdXNlIGl0IHZpb2xhdGVzIHRoZSBmb2xsb3dpbmcgQ29udGVu
dCBTZWN1cml0eSBQb2xpY3kgZGlyZWN0aXZlOiAic2NyaXB0LXNyYyBodHRwOi8vMTI3LjAuMC4x
OioiLgorQ09OU09MRSBNRVNTQUdFOiBsaW5lIDc6IFJlZnVzZWQgdG8gZXhlY3V0ZSBpbmxpbmUg
ZXZlbnQgaGFuZGxlciBiZWNhdXNlIGl0IHZpb2xhdGVzIHRoZSBmb2xsb3dpbmcgQ29udGVudCBT
ZWN1cml0eSBQb2xpY3kgZGlyZWN0aXZlOiAic2NyaXB0LXNyYyBodHRwOi8vMTI3LjAuMC4xOioi
LgogCiBUaGlzIHRlc3QgcGFzc2VzIGlmIGl0IGRvZXNuJ3QgYWxlcnQgZmFpbC4KZGlmZiAtLWdp
dCBhL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvc2VjdXJpdHkvY29udGVudFNlY3VyaXR5UG9saWN5
L2lubGluZS1zY3JpcHQtYmxvY2tlZC1qYXZhc2NyaXB0LXVybC1leHBlY3RlZC50eHQgYi9MYXlv
dXRUZXN0cy9odHRwL3Rlc3RzL3NlY3VyaXR5L2NvbnRlbnRTZWN1cml0eVBvbGljeS9pbmxpbmUt
c2NyaXB0LWJsb2NrZWQtamF2YXNjcmlwdC11cmwtZXhwZWN0ZWQudHh0CmluZGV4IGVkMDYyNDQ2
NzI4NWU4MTBlYTY2NDgyY2NkZjQ5YWZiNDQwMGYxMzUuLjk1NDUwMWNkY2RkNzNhNzliYTQyYWZh
ZTYwZDBlZWJiZmI3ZmYxM2YgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvc2Vj
dXJpdHkvY29udGVudFNlY3VyaXR5UG9saWN5L2lubGluZS1zY3JpcHQtYmxvY2tlZC1qYXZhc2Ny
aXB0LXVybC1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9zZWN1cml0
eS9jb250ZW50U2VjdXJpdHlQb2xpY3kvaW5saW5lLXNjcmlwdC1ibG9ja2VkLWphdmFzY3JpcHQt
dXJsLWV4cGVjdGVkLnR4dApAQCAtNCw2ICs0LDYgQEAgQ09OU09MRSBNRVNTQUdFOiBVbnJlY29n
bml6ZWQgQ29udGVudC1TZWN1cml0eS1Qb2xpY3kgZGlyZWN0aXZlICdvcHRpb25zJy4KIAogQ09O
U09MRSBNRVNTQUdFOiBVbnJlY29nbml6ZWQgQ29udGVudC1TZWN1cml0eS1Qb2xpY3kgZGlyZWN0
aXZlICdvcHRpb25zJy4KIAotQ09OU09MRSBNRVNTQUdFOiBSZWZ1c2VkIHRvIGV4ZWN1dGUgSmF2
YVNjcmlwdCBVUkwgYmVjYXVzZSBpdCB2aW9sYXRlcyB0aGUgZm9sbG93aW5nIENvbnRlbnQgU2Vj
dXJpdHkgUG9saWN5IGRpcmVjdGl2ZTogInNjcmlwdC1zcmMgaHR0cDovLzEyNy4wLjAuMToqIi4K
K0NPTlNPTEUgTUVTU0FHRTogbGluZSAxOiBSZWZ1c2VkIHRvIGV4ZWN1dGUgSmF2YVNjcmlwdCBV
UkwgYmVjYXVzZSBpdCB2aW9sYXRlcyB0aGUgZm9sbG93aW5nIENvbnRlbnQgU2VjdXJpdHkgUG9s
aWN5IGRpcmVjdGl2ZTogInNjcmlwdC1zcmMgaHR0cDovLzEyNy4wLjAuMToqIi4KIAogVGhpcyB0
ZXN0IHBhc3NlcyBpZiBpdCBkb2Vzbid0IGFsZXJ0IGZhaWwuIApkaWZmIC0tZ2l0IGEvTGF5b3V0
VGVzdHMvaHR0cC90ZXN0cy9zZWN1cml0eS9jb250ZW50U2VjdXJpdHlQb2xpY3kvaW5saW5lLXN0
eWxlLWF0dHJpYnV0ZS1ibG9ja2VkLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2h0dHAvdGVz
dHMvc2VjdXJpdHkvY29udGVudFNlY3VyaXR5UG9saWN5L2lubGluZS1zdHlsZS1hdHRyaWJ1dGUt
YmxvY2tlZC1leHBlY3RlZC50eHQKaW5kZXggNzMyNTQ2MjUxMGE1YjY3OWIxMGRmOTUwMzhiZTJi
NTg2NzkxOThmMS4uZTdhNjg4MzE2ZDNkY2FiZTMzZTgxY2MzZGYzNjM1ZGRlNTE4MTNlZSAxMDA2
NDQKLS0tIGEvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9zZWN1cml0eS9jb250ZW50U2VjdXJpdHlQ
b2xpY3kvaW5saW5lLXN0eWxlLWF0dHJpYnV0ZS1ibG9ja2VkLWV4cGVjdGVkLnR4dAorKysgYi9M
YXlvdXRUZXN0cy9odHRwL3Rlc3RzL3NlY3VyaXR5L2NvbnRlbnRTZWN1cml0eVBvbGljeS9pbmxp
bmUtc3R5bGUtYXR0cmlidXRlLWJsb2NrZWQtZXhwZWN0ZWQudHh0CkBAIC0xLDMgKzEsMyBAQAot
Q09OU09MRSBNRVNTQUdFOiBSZWZ1c2VkIHRvIGFwcGx5IGlubGluZSBzdHlsZSBiZWNhdXNlIGl0
IHZpb2xhdGVzIHRoZSBmb2xsb3dpbmcgQ29udGVudCBTZWN1cml0eSBQb2xpY3kgZGlyZWN0aXZl
OiAic3R5bGUtc3JjICdub25lJyIuCitDT05TT0xFIE1FU1NBR0U6IGxpbmUgMTA6IFJlZnVzZWQg
dG8gYXBwbHkgaW5saW5lIHN0eWxlIGJlY2F1c2UgaXQgdmlvbGF0ZXMgdGhlIGZvbGxvd2luZyBD
b250ZW50IFNlY3VyaXR5IFBvbGljeSBkaXJlY3RpdmU6ICJzdHlsZS1zcmMgJ25vbmUnIi4KIAog
UEFTUwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9zZWN1cml0eS9jb250ZW50
U2VjdXJpdHlQb2xpY3kvaW5saW5lLXN0eWxlLWJsb2NrZWQtZXhwZWN0ZWQudHh0IGIvTGF5b3V0
VGVzdHMvaHR0cC90ZXN0cy9zZWN1cml0eS9jb250ZW50U2VjdXJpdHlQb2xpY3kvaW5saW5lLXN0
eWxlLWJsb2NrZWQtZXhwZWN0ZWQudHh0CmluZGV4IDczMjU0NjI1MTBhNWI2NzliMTBkZjk1MDM4
YmUyYjU4Njc5MTk4ZjEuLjk2MzBkN2ExN2JjNzQxM2Q2ZTNlMjhiYWViOGMxNjQ4YjQwN2VmZWIg
MTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvc2VjdXJpdHkvY29udGVudFNlY3Vy
aXR5UG9saWN5L2lubGluZS1zdHlsZS1ibG9ja2VkLWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRU
ZXN0cy9odHRwL3Rlc3RzL3NlY3VyaXR5L2NvbnRlbnRTZWN1cml0eVBvbGljeS9pbmxpbmUtc3R5
bGUtYmxvY2tlZC1leHBlY3RlZC50eHQKQEAgLTEsMyArMSwzIEBACi1DT05TT0xFIE1FU1NBR0U6
IFJlZnVzZWQgdG8gYXBwbHkgaW5saW5lIHN0eWxlIGJlY2F1c2UgaXQgdmlvbGF0ZXMgdGhlIGZv
bGxvd2luZyBDb250ZW50IFNlY3VyaXR5IFBvbGljeSBkaXJlY3RpdmU6ICJzdHlsZS1zcmMgJ25v
bmUnIi4KK0NPTlNPTEUgTUVTU0FHRTogbGluZSA1OiBSZWZ1c2VkIHRvIGFwcGx5IGlubGluZSBz
dHlsZSBiZWNhdXNlIGl0IHZpb2xhdGVzIHRoZSBmb2xsb3dpbmcgQ29udGVudCBTZWN1cml0eSBQ
b2xpY3kgZGlyZWN0aXZlOiAic3R5bGUtc3JjICdub25lJyIuCiAKIFBBU1MKZGlmZiAtLWdpdCBh
L0xheW91dFRlc3RzL2h0dHAvdGVzdHMvc2VjdXJpdHkvY29udGVudFNlY3VyaXR5UG9saWN5L2ph
dmFzY3JpcHQtdXJsLWJsb2NrZWQtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaHR0cC90ZXN0
cy9zZWN1cml0eS9jb250ZW50U2VjdXJpdHlQb2xpY3kvamF2YXNjcmlwdC11cmwtYmxvY2tlZC1l
eHBlY3RlZC50eHQKaW5kZXggOGUyZGMzMzMyMTczNTJmNDg1NDQ5NDZmZTE0MmQ1OTBjOGE5N2Fl
My4uMWNhOTI2MmJkNTMyMWVhNWZjZjU5N2MwN2UxYzMxOTA4ODlkYzJkOSAxMDA2NDQKLS0tIGEv
TGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9zZWN1cml0eS9jb250ZW50U2VjdXJpdHlQb2xpY3kvamF2
YXNjcmlwdC11cmwtYmxvY2tlZC1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvaHR0cC90
ZXN0cy9zZWN1cml0eS9jb250ZW50U2VjdXJpdHlQb2xpY3kvamF2YXNjcmlwdC11cmwtYmxvY2tl
ZC1leHBlY3RlZC50eHQKQEAgLTQsNyArNCw3IEBAIENPTlNPTEUgTUVTU0FHRTogVW5yZWNvZ25p
emVkIENvbnRlbnQtU2VjdXJpdHktUG9saWN5IGRpcmVjdGl2ZSAnYWxsb3cnLgogCiBDT05TT0xF
IE1FU1NBR0U6IFVucmVjb2duaXplZCBDb250ZW50LVNlY3VyaXR5LVBvbGljeSBkaXJlY3RpdmUg
J2FsbG93Jy4KIAotQ09OU09MRSBNRVNTQUdFOiBSZWZ1c2VkIHRvIGV4ZWN1dGUgSmF2YVNjcmlw
dCBVUkwgYmVjYXVzZSBpdCB2aW9sYXRlcyB0aGUgZm9sbG93aW5nIENvbnRlbnQgU2VjdXJpdHkg
UG9saWN5IGRpcmVjdGl2ZTogInNjcmlwdC1zcmMgJ25vbmUnIi4KK0NPTlNPTEUgTUVTU0FHRTog
bGluZSAxOiBSZWZ1c2VkIHRvIGV4ZWN1dGUgSmF2YVNjcmlwdCBVUkwgYmVjYXVzZSBpdCB2aW9s
YXRlcyB0aGUgZm9sbG93aW5nIENvbnRlbnQgU2VjdXJpdHkgUG9saWN5IGRpcmVjdGl2ZTogInNj
cmlwdC1zcmMgJ25vbmUnIi4KIAogQ09OU09MRSBNRVNTQUdFOiBVbnJlY29nbml6ZWQgQ29udGVu
dC1TZWN1cml0eS1Qb2xpY3kgZGlyZWN0aXZlICdhbGxvdycuCiAKZGlmZiAtLWdpdCBhL0xheW91
dFRlc3RzL2h0dHAvdGVzdHMvc2VjdXJpdHkvY29udGVudFNlY3VyaXR5UG9saWN5L3JlcG9ydC1h
bmQtZW5mb3JjZS1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3NlY3VyaXR5
L2NvbnRlbnRTZWN1cml0eVBvbGljeS9yZXBvcnQtYW5kLWVuZm9yY2UtZXhwZWN0ZWQudHh0Cmlu
ZGV4IDJkM2IyYWJhNmZkY2FlYzhmODI0MzEyYzE0N2JmNzViM2U2ZTY3YTguLjlhZWZhNGNmOTli
NjNkMGExNTVhZDkzOGM2Zjg1YTZmYzlkNTE3OWEgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2h0
dHAvdGVzdHMvc2VjdXJpdHkvY29udGVudFNlY3VyaXR5UG9saWN5L3JlcG9ydC1hbmQtZW5mb3Jj
ZS1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9zZWN1cml0eS9jb250
ZW50U2VjdXJpdHlQb2xpY3kvcmVwb3J0LWFuZC1lbmZvcmNlLWV4cGVjdGVkLnR4dApAQCAtMSw0
ICsxLDQgQEAKLUNPTlNPTEUgTUVTU0FHRTogW1JlcG9ydCBPbmx5XSBSZWZ1c2VkIHRvIGV4ZWN1
dGUgaW5saW5lIHNjcmlwdCBiZWNhdXNlIGl0IHZpb2xhdGVzIHRoZSBmb2xsb3dpbmcgQ29udGVu
dCBTZWN1cml0eSBQb2xpY3kgZGlyZWN0aXZlOiAic2NyaXB0LXNyYyAnc2VsZiciLgorQ09OU09M
RSBNRVNTQUdFOiBsaW5lIDM6IFtSZXBvcnQgT25seV0gUmVmdXNlZCB0byBleGVjdXRlIGlubGlu
ZSBzY3JpcHQgYmVjYXVzZSBpdCB2aW9sYXRlcyB0aGUgZm9sbG93aW5nIENvbnRlbnQgU2VjdXJp
dHkgUG9saWN5IGRpcmVjdGl2ZTogInNjcmlwdC1zcmMgJ3NlbGYnIi4KIAogQUxFUlQ6IFBBU1MK
IENPTlNPTEUgTUVTU0FHRTogUmVmdXNlZCB0byBsb2FkIHRoZSBpbWFnZSAnaHR0cDovLzEyNy4w
LjAuMTo4MDAwL3NlY3VyaXR5L3Jlc291cmNlcy9hYmUucG5nJyBiZWNhdXNlIGl0IHZpb2xhdGVz
IHRoZSBmb2xsb3dpbmcgQ29udGVudCBTZWN1cml0eSBQb2xpY3kgZGlyZWN0aXZlOiAiaW1nLXNy
YyAnbm9uZSciLgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9zZWN1cml0eS9j
b250ZW50U2VjdXJpdHlQb2xpY3kvcmVwb3J0LW9ubHktZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVz
dHMvaHR0cC90ZXN0cy9zZWN1cml0eS9jb250ZW50U2VjdXJpdHlQb2xpY3kvcmVwb3J0LW9ubHkt
ZXhwZWN0ZWQudHh0CmluZGV4IDc0ZGM1ZDYwZjg4ZjkxNzJjMmI3NTA3OTE1YzU3ZWJlMDMxYjcz
ZDIuLmExZWRmM2FlYTFhNzM4NTA4Y2YyMWJkZmMwODNhOWEwMjE4NTk3NTYgMTAwNjQ0Ci0tLSBh
L0xheW91dFRlc3RzL2h0dHAvdGVzdHMvc2VjdXJpdHkvY29udGVudFNlY3VyaXR5UG9saWN5L3Jl
cG9ydC1vbmx5LWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3NlY3Vy
aXR5L2NvbnRlbnRTZWN1cml0eVBvbGljeS9yZXBvcnQtb25seS1leHBlY3RlZC50eHQKQEAgLTEs
NCArMSw0IEBACi1DT05TT0xFIE1FU1NBR0U6IFtSZXBvcnQgT25seV0gUmVmdXNlZCB0byBleGVj
dXRlIGlubGluZSBzY3JpcHQgYmVjYXVzZSBpdCB2aW9sYXRlcyB0aGUgZm9sbG93aW5nIENvbnRl
bnQgU2VjdXJpdHkgUG9saWN5IGRpcmVjdGl2ZTogInNjcmlwdC1zcmMgJ3NlbGYnIi4KK0NPTlNP
TEUgTUVTU0FHRTogbGluZSAyOiBbUmVwb3J0IE9ubHldIFJlZnVzZWQgdG8gZXhlY3V0ZSBpbmxp
bmUgc2NyaXB0IGJlY2F1c2UgaXQgdmlvbGF0ZXMgdGhlIGZvbGxvd2luZyBDb250ZW50IFNlY3Vy
aXR5IFBvbGljeSBkaXJlY3RpdmU6ICJzY3JpcHQtc3JjICdzZWxmJyIuCiAKIEFMRVJUOiBQQVNT
CiBDU1AgcmVwb3J0IHJlY2VpdmVkOgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaHR0cC90ZXN0
cy9zZWN1cml0eS9jb250ZW50U2VjdXJpdHlQb2xpY3kvcmVwb3J0LW9ubHktZnJvbS1oZWFkZXIt
ZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9zZWN1cml0eS9jb250ZW50U2Vj
dXJpdHlQb2xpY3kvcmVwb3J0LW9ubHktZnJvbS1oZWFkZXItZXhwZWN0ZWQudHh0CmluZGV4IGFj
ZTE2NDY4NzVhNjI3YzBjOWRmM2YyYTBlZWJhYTU5OTM3Y2YzYjAuLmNlYzJjMjhlNzdlYzhjZjlj
NzI4YzFjNGZlZTgwNWNkMzM0YWVjM2QgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2h0dHAvdGVz
dHMvc2VjdXJpdHkvY29udGVudFNlY3VyaXR5UG9saWN5L3JlcG9ydC1vbmx5LWZyb20taGVhZGVy
LWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3NlY3VyaXR5L2NvbnRl
bnRTZWN1cml0eVBvbGljeS9yZXBvcnQtb25seS1mcm9tLWhlYWRlci1leHBlY3RlZC50eHQKQEAg
LTEsNCArMSw0IEBACi1DT05TT0xFIE1FU1NBR0U6IFtSZXBvcnQgT25seV0gUmVmdXNlZCB0byBl
eGVjdXRlIGlubGluZSBzY3JpcHQgYmVjYXVzZSBpdCB2aW9sYXRlcyB0aGUgZm9sbG93aW5nIENv
bnRlbnQgU2VjdXJpdHkgUG9saWN5IGRpcmVjdGl2ZTogInNjcmlwdC1zcmMgJ3NlbGYnIi4KK0NP
TlNPTEUgTUVTU0FHRTogbGluZSAxOiBbUmVwb3J0IE9ubHldIFJlZnVzZWQgdG8gZXhlY3V0ZSBp
bmxpbmUgc2NyaXB0IGJlY2F1c2UgaXQgdmlvbGF0ZXMgdGhlIGZvbGxvd2luZyBDb250ZW50IFNl
Y3VyaXR5IFBvbGljeSBkaXJlY3RpdmU6ICJzY3JpcHQtc3JjICdzZWxmJyIuCiAKIEFMRVJUOiBQ
QVNTCiBDU1AgcmVwb3J0IHJlY2VpdmVkOgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaHR0cC90
ZXN0cy9zZWN1cml0eS9jb250ZW50U2VjdXJpdHlQb2xpY3kvcmVwb3J0LXVyaS1leHBlY3RlZC50
eHQgYi9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3NlY3VyaXR5L2NvbnRlbnRTZWN1cml0eVBvbGlj
eS9yZXBvcnQtdXJpLWV4cGVjdGVkLnR4dAppbmRleCBiODA1MGZmMjAzMDE3ZmRlOGEyYmNlZjBj
NGQ3YWQxMDAzNDE2YmJkLi41NmE2ZWY2MjMxNWQxZWFlNWFiZDBkOWU4MDE0MzQzOThjYWQ4MDBm
IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3NlY3VyaXR5L2NvbnRlbnRTZWN1
cml0eVBvbGljeS9yZXBvcnQtdXJpLWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9odHRw
L3Rlc3RzL3NlY3VyaXR5L2NvbnRlbnRTZWN1cml0eVBvbGljeS9yZXBvcnQtdXJpLWV4cGVjdGVk
LnR4dApAQCAtMSw0ICsxLDQgQEAKLUNPTlNPTEUgTUVTU0FHRTogUmVmdXNlZCB0byBleGVjdXRl
IGlubGluZSBzY3JpcHQgYmVjYXVzZSBpdCB2aW9sYXRlcyB0aGUgZm9sbG93aW5nIENvbnRlbnQg
U2VjdXJpdHkgUG9saWN5IGRpcmVjdGl2ZTogInNjcmlwdC1zcmMgJ3NlbGYnIi4KK0NPTlNPTEUg
TUVTU0FHRTogbGluZSAyOiBSZWZ1c2VkIHRvIGV4ZWN1dGUgaW5saW5lIHNjcmlwdCBiZWNhdXNl
IGl0IHZpb2xhdGVzIHRoZSBmb2xsb3dpbmcgQ29udGVudCBTZWN1cml0eSBQb2xpY3kgZGlyZWN0
aXZlOiAic2NyaXB0LXNyYyAnc2VsZiciLgogCiBDU1AgcmVwb3J0IHJlY2VpdmVkOgogQ09OVEVO
VF9UWVBFOiBhcHBsaWNhdGlvbi9qc29uCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9odHRwL3Rl
c3RzL3NlY3VyaXR5L2NvbnRlbnRTZWN1cml0eVBvbGljeS9yZXBvcnQtdXJpLWZyb20tY2hpbGQt
ZnJhbWUtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9zZWN1cml0eS9jb250
ZW50U2VjdXJpdHlQb2xpY3kvcmVwb3J0LXVyaS1mcm9tLWNoaWxkLWZyYW1lLWV4cGVjdGVkLnR4
dAppbmRleCAyNWRlOGUxOTc1NGEyOWFjOWZjZTIwNDk2MzRkN2FmMmZkMTU3OWY3Li44NDMwYzMw
OTgxNWJiMTI0YjcwYjYzODcwZTQ1YzVjYjBjNGM0MGMyIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0
cy9odHRwL3Rlc3RzL3NlY3VyaXR5L2NvbnRlbnRTZWN1cml0eVBvbGljeS9yZXBvcnQtdXJpLWZy
b20tY2hpbGQtZnJhbWUtZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL2h0dHAvdGVzdHMv
c2VjdXJpdHkvY29udGVudFNlY3VyaXR5UG9saWN5L3JlcG9ydC11cmktZnJvbS1jaGlsZC1mcmFt
ZS1leHBlY3RlZC50eHQKQEAgLTEsNCArMSw0IEBACi1DT05TT0xFIE1FU1NBR0U6IFJlZnVzZWQg
dG8gZXhlY3V0ZSBpbmxpbmUgc2NyaXB0IGJlY2F1c2UgaXQgdmlvbGF0ZXMgdGhlIGZvbGxvd2lu
ZyBDb250ZW50IFNlY3VyaXR5IFBvbGljeSBkaXJlY3RpdmU6ICJzY3JpcHQtc3JjICdzZWxmJyIu
CitDT05TT0xFIE1FU1NBR0U6IGxpbmUgMjogUmVmdXNlZCB0byBleGVjdXRlIGlubGluZSBzY3Jp
cHQgYmVjYXVzZSBpdCB2aW9sYXRlcyB0aGUgZm9sbG93aW5nIENvbnRlbnQgU2VjdXJpdHkgUG9s
aWN5IGRpcmVjdGl2ZTogInNjcmlwdC1zcmMgJ3NlbGYnIi4KIAogCiAKZGlmZiAtLWdpdCBhL0xh
eW91dFRlc3RzL2h0dHAvdGVzdHMvc2VjdXJpdHkvY29udGVudFNlY3VyaXR5UG9saWN5L3Jlc291
cmNlcy9pbmplY3Qtc2NyaXB0LmpzIGIvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9zZWN1cml0eS9j
b250ZW50U2VjdXJpdHlQb2xpY3kvcmVzb3VyY2VzL2luamVjdC1zY3JpcHQuanMKbmV3IGZpbGUg
bW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MC4uNzU2YmFmZmU5ZWU5ODRlNDU3NTlhMWMzOTU0OTk2ODhhYWI4MmYxYgotLS0gL2Rldi9udWxs
CisrKyBiL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvc2VjdXJpdHkvY29udGVudFNlY3VyaXR5UG9s
aWN5L3Jlc291cmNlcy9pbmplY3Qtc2NyaXB0LmpzCkBAIC0wLDAgKzEsNSBAQAorZG9jdW1lbnQu
d3JpdGUoIjxzY3JpcHQ+YWxlcnQoJ1Bhc3MgMSBvZiAyJyk7PC9zY3JpcHQ+Iik7CisKK3ZhciBz
ID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgnc2NyaXB0Jyk7CitzLmlubmVyVGV4dCA9ICJhbGVy
dCgnUGFzcyAyIG9mIDInKTsiOworZG9jdW1lbnQuYm9keS5hcHBlbmRDaGlsZChzKTsKZGlmZiAt
LWdpdCBhL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvc2VjdXJpdHkvY29udGVudFNlY3VyaXR5UG9s
aWN5L3NjcmlwdC1zcmMtbm9uZS1pbmxpbmUtZXZlbnQtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVz
dHMvaHR0cC90ZXN0cy9zZWN1cml0eS9jb250ZW50U2VjdXJpdHlQb2xpY3kvc2NyaXB0LXNyYy1u
b25lLWlubGluZS1ldmVudC1leHBlY3RlZC50eHQKaW5kZXggZDMxYjFjZWZjMGJmN2Y4Mjg4YTkz
MTc2MWQ4MDIxMjllNjI5NTAyZi4uZmUxY2MyZmM2ZGUwOTJhODFkZDQ1ODNlNTBkMDczNDY2MzA4
MzMyMyAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9zZWN1cml0eS9jb250ZW50
U2VjdXJpdHlQb2xpY3kvc2NyaXB0LXNyYy1ub25lLWlubGluZS1ldmVudC1leHBlY3RlZC50eHQK
KysrIGIvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9zZWN1cml0eS9jb250ZW50U2VjdXJpdHlQb2xp
Y3kvc2NyaXB0LXNyYy1ub25lLWlubGluZS1ldmVudC1leHBlY3RlZC50eHQKQEAgLTEsNCArMSw0
IEBACi1DT05TT0xFIE1FU1NBR0U6IFJlZnVzZWQgdG8gZXhlY3V0ZSBpbmxpbmUgZXZlbnQgaGFu
ZGxlciBiZWNhdXNlIGl0IHZpb2xhdGVzIHRoZSBmb2xsb3dpbmcgQ29udGVudCBTZWN1cml0eSBQ
b2xpY3kgZGlyZWN0aXZlOiAic2NyaXB0LXNyYyAnbm9uZSciLgorQ09OU09MRSBNRVNTQUdFOiBs
aW5lIDM6IFJlZnVzZWQgdG8gZXhlY3V0ZSBpbmxpbmUgZXZlbnQgaGFuZGxlciBiZWNhdXNlIGl0
IHZpb2xhdGVzIHRoZSBmb2xsb3dpbmcgQ29udGVudCBTZWN1cml0eSBQb2xpY3kgZGlyZWN0aXZl
OiAic2NyaXB0LXNyYyAnbm9uZSciLgogCiAgIAogCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9o
dHRwL3Rlc3RzL3NlY3VyaXR5L2NvbnRlbnRTZWN1cml0eVBvbGljeS9zcmNkb2MtZG9lc250LWJ5
cGFzcy1zY3JpcHQtc3JjLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvc2Vj
dXJpdHkvY29udGVudFNlY3VyaXR5UG9saWN5L3NyY2RvYy1kb2VzbnQtYnlwYXNzLXNjcmlwdC1z
cmMtZXhwZWN0ZWQudHh0CmluZGV4IDdhNWZkZTM3MGVhNmUwNGM2ZDZlNDk0MGU4ZDdhZGIwMDBi
NjMxNjkuLjFhMjk0NzlkMmMyZDRiYzE1MmY1MjdmM2MzMzAzM2ExMTg5NmUxYzEgMTAwNjQ0Ci0t
LSBhL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvc2VjdXJpdHkvY29udGVudFNlY3VyaXR5UG9saWN5
L3NyY2RvYy1kb2VzbnQtYnlwYXNzLXNjcmlwdC1zcmMtZXhwZWN0ZWQudHh0CisrKyBiL0xheW91
dFRlc3RzL2h0dHAvdGVzdHMvc2VjdXJpdHkvY29udGVudFNlY3VyaXR5UG9saWN5L3NyY2RvYy1k
b2VzbnQtYnlwYXNzLXNjcmlwdC1zcmMtZXhwZWN0ZWQudHh0CkBAIC0xLDMgKzEsMyBAQAotQ09O
U09MRSBNRVNTQUdFOiBSZWZ1c2VkIHRvIGV4ZWN1dGUgaW5saW5lIHNjcmlwdCBiZWNhdXNlIGl0
IHZpb2xhdGVzIHRoZSBmb2xsb3dpbmcgQ29udGVudCBTZWN1cml0eSBQb2xpY3kgZGlyZWN0aXZl
OiAic2NyaXB0LXNyYyAnc2VsZiciLgorQ09OU09MRSBNRVNTQUdFOiBsaW5lIDE6IFJlZnVzZWQg
dG8gZXhlY3V0ZSBpbmxpbmUgc2NyaXB0IGJlY2F1c2UgaXQgdmlvbGF0ZXMgdGhlIGZvbGxvd2lu
ZyBDb250ZW50IFNlY3VyaXR5IFBvbGljeSBkaXJlY3RpdmU6ICJzY3JpcHQtc3JjICdzZWxmJyIu
CiAKIFRoaXMgdGVzdCBwYXNzZXMgaWYgaXQgZG9lc24ndCBhbGVydCBmYWlsLiAK
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>143299</attachid>
            <date>2012-05-22 07:47:38 -0700</date>
            <delta_ts>2012-05-23 01:17:09 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-86848-20120522164736.patch</filename>
            <type>text/plain</type>
            <size>47331</size>
            <attacher name="Mike West">mkwst</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTE3OTYxCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggODE0Y2Q5ZGIyY2U5NGNk
MjY3YjIxZjEyMjE1ZmQzN2E1NTI4OGM0Zi4uNjk3YjI0MDE0Zjc0OWQ1ODM2YjcxZjYwYjM3NWU5
MTZiZWI3YmM4NiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDYwIEBACisyMDEyLTA1LTIyICBNaWtl
IFdlc3QgIDxta3dzdEBjaHJvbWl1bS5vcmc+CisKKyAgICAgICAgSW5saW5lIHNjcmlwdCBhbmQg
c3R5bGUgYmxvY2tlZCBieSBDb250ZW50IFNlY3VyaXR5IFBvbGljeSBzaG91bGQgcHJvdmlkZSBt
b3JlIGRldGFpbGVkIGNvbnNvbGUgZXJyb3JzLgorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0
Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9ODY4NDgKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkg
KE9PUFMhKS4KKworICAgICAgICBUaGlzIGNoYW5nZSBhZGRzIGEgVVJMIGFuZCBsaW5lIG51bWJl
ciBmb3IgY29udGV4dCB0byBlYWNoIGNhbGwgdG8KKyAgICAgICAgYENvbnRlbnRTZWN1cml0eVBv
bGljeTo6YWxsb3dJbmxpbmUqYCwgYW5kIHBpcGVzIGl0IHRocm91Z2ggdG8gdGhlCisgICAgICAg
IGNvbnNvbGUgbWVzc2FnZSBnZW5lcmF0aW9uIGluIGBDU1BEaXJlY3RpdmVMaXN0OjpyZXBvcnRW
aW9sYXRpb25gLgorCisgICAgICAgIFRlc3RzOiBodHRwL3Rlc3RzL3NlY3VyaXR5L2NvbnRlbnRT
ZWN1cml0eVBvbGljeS9pbmplY3RlZC1pbmxpbmUtc2NyaXB0LWFsbG93ZWQuaHRtbAorICAgICAg
ICAgICAgICAgaHR0cC90ZXN0cy9zZWN1cml0eS9jb250ZW50U2VjdXJpdHlQb2xpY3kvaW5qZWN0
ZWQtaW5saW5lLXNjcmlwdC1ibG9ja2VkLmh0bWwKKworICAgICAgICAqIGJpbmRpbmdzL1Njcmlw
dENvbnRyb2xsZXJCYXNlLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlNjcmlwdENvbnRyb2xsZXI6
OmV4ZWN1dGVJZkphdmFTY3JpcHRVUkwpOgorICAgICAgICAqIGJpbmRpbmdzL2pzL0pTTGF6eUV2
ZW50TGlzdGVuZXIuY3BwOgorICAgICAgICAoV2ViQ29yZTo6SlNMYXp5RXZlbnRMaXN0ZW5lcjo6
aW5pdGlhbGl6ZUpTRnVuY3Rpb24pOgorICAgICAgICAqIGJpbmRpbmdzL3Y4L1Y4TGF6eUV2ZW50
TGlzdGVuZXIuY3BwOgorICAgICAgICAoV2ViQ29yZTo6VjhMYXp5RXZlbnRMaXN0ZW5lcjo6cHJl
cGFyZUxpc3RlbmVyT2JqZWN0KToKKyAgICAgICAgKiBkb20vU2NyaXB0RWxlbWVudC5jcHA6Cisg
ICAgICAgIChXZWJDb3JlOjpTY3JpcHRFbGVtZW50OjpTY3JpcHRFbGVtZW50KToKKyAgICAgICAg
KFdlYkNvcmU6OlNjcmlwdEVsZW1lbnQ6OmV4ZWN1dGVTY3JpcHQpOgorICAgICAgICAqIGRvbS9T
Y3JpcHRFbGVtZW50Lmg6CisgICAgICAgIChTY3JpcHRFbGVtZW50KToKKyAgICAgICAgKiBkb20v
U3R5bGVFbGVtZW50LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlN0eWxlRWxlbWVudDo6U3R5bGVF
bGVtZW50KToKKyAgICAgICAgKFdlYkNvcmU6OlN0eWxlRWxlbWVudDo6Y3JlYXRlU2hlZXQpOgor
ICAgICAgICAqIGRvbS9TdHlsZUVsZW1lbnQuaDoKKyAgICAgICAgKFN0eWxlRWxlbWVudCk6Cisg
ICAgICAgICogZG9tL1N0eWxlZEVsZW1lbnQuY3BwOgorICAgICAgICAoV2ViQ29yZTo6U3R5bGVk
RWxlbWVudDo6U3R5bGVkRWxlbWVudCk6CisgICAgICAgIChXZWJDb3JlKToKKyAgICAgICAgKFdl
YkNvcmU6OlN0eWxlZEVsZW1lbnQ6OnN0eWxlKToKKyAgICAgICAgKFdlYkNvcmU6OlN0eWxlZEVs
ZW1lbnQ6OnN0eWxlQXR0cmlidXRlQ2hhbmdlZCk6CisgICAgICAgICogZG9tL1N0eWxlZEVsZW1l
bnQuaDoKKyAgICAgICAgKFN0eWxlZEVsZW1lbnQpOgorICAgICAgICAqIHBhZ2UvQ29udGVudFNl
Y3VyaXR5UG9saWN5LmNwcDoKKyAgICAgICAgKENTUERpcmVjdGl2ZUxpc3QpOgorICAgICAgICAo
V2ViQ29yZTo6Q1NQRGlyZWN0aXZlTGlzdDo6cmVwb3J0VmlvbGF0aW9uKToKKyAgICAgICAgKFdl
YkNvcmU6OkNTUERpcmVjdGl2ZUxpc3Q6OmNoZWNrSW5saW5lQW5kUmVwb3J0VmlvbGF0aW9uKToK
KyAgICAgICAgKFdlYkNvcmU6OkNTUERpcmVjdGl2ZUxpc3Q6OmNoZWNrRXZhbEFuZFJlcG9ydFZp
b2xhdGlvbik6CisgICAgICAgIChXZWJDb3JlOjpDU1BEaXJlY3RpdmVMaXN0OjphbGxvd0phdmFT
Y3JpcHRVUkxzKToKKyAgICAgICAgKFdlYkNvcmU6OkNTUERpcmVjdGl2ZUxpc3Q6OmFsbG93SW5s
aW5lRXZlbnRIYW5kbGVycyk6CisgICAgICAgIChXZWJDb3JlOjpDU1BEaXJlY3RpdmVMaXN0Ojph
bGxvd0lubGluZVNjcmlwdCk6CisgICAgICAgIChXZWJDb3JlOjpDU1BEaXJlY3RpdmVMaXN0Ojph
bGxvd0lubGluZVN0eWxlKToKKyAgICAgICAgKFdlYkNvcmU6OkNTUERpcmVjdGl2ZUxpc3Q6OmFs
bG93RXZhbCk6CisgICAgICAgIChXZWJDb3JlKToKKyAgICAgICAgKFdlYkNvcmU6OmlzQWxsb3dl
ZEJ5QWxsV2l0aENhbGxTdGFjayk6CisgICAgICAgIChXZWJDb3JlOjppc0FsbG93ZWRCeUFsbFdp
dGhDb250ZXh0KToKKyAgICAgICAgKFdlYkNvcmU6OkNvbnRlbnRTZWN1cml0eVBvbGljeTo6YWxs
b3dKYXZhU2NyaXB0VVJMcyk6CisgICAgICAgIChXZWJDb3JlOjpDb250ZW50U2VjdXJpdHlQb2xp
Y3k6OmFsbG93SW5saW5lRXZlbnRIYW5kbGVycyk6CisgICAgICAgIChXZWJDb3JlOjpDb250ZW50
U2VjdXJpdHlQb2xpY3k6OmFsbG93SW5saW5lU2NyaXB0KToKKyAgICAgICAgKFdlYkNvcmU6OkNv
bnRlbnRTZWN1cml0eVBvbGljeTo6YWxsb3dJbmxpbmVTdHlsZSk6CisgICAgICAgICogcGFnZS9D
b250ZW50U2VjdXJpdHlQb2xpY3kuaDoKKyAgICAgICAgKFdURik6CisKIDIwMTItMDUtMjIgIFl1
cnkgU2VtaWtoYXRza3kgIDx5dXJ5c0BjaHJvbWl1bS5vcmc+CiAKICAgICAgICAgV2ViIEluc3Bl
Y3RvcjogYW5ub3RhdGUgSW5qZWN0ZWRTY3JpcHRTb3VyY2UuanMgZm9yIGNsb3N1cmUgY29tcGls
ZXIKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL1NjcmlwdENvbnRyb2xsZXJC
YXNlLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL1NjcmlwdENvbnRyb2xsZXJCYXNlLmNw
cAppbmRleCA4NTUxNThhZmMzZWY3OTAyZjJlNjJlZTllOTZmMTVkMjg5Yzc5MGMyLi45YjAwNmQy
YzIwNmIwYzQ0YjY4M2VkYTQ3OGJmMGRmNzMyZDU1YWMzIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2Vi
Q29yZS9iaW5kaW5ncy9TY3JpcHRDb250cm9sbGVyQmFzZS5jcHAKKysrIGIvU291cmNlL1dlYkNv
cmUvYmluZGluZ3MvU2NyaXB0Q29udHJvbGxlckJhc2UuY3BwCkBAIC0zMiw2ICszMiw3IEBACiAj
aW5jbHVkZSAiU2VjdXJpdHlPcmlnaW4uaCIKICNpbmNsdWRlICJTZXR0aW5ncy5oIgogI2luY2x1
ZGUgIlVzZXJHZXN0dXJlSW5kaWNhdG9yLmgiCisjaW5jbHVkZSA8d3RmL3RleHQvVGV4dFBvc2l0
aW9uLmg+CiAKIG5hbWVzcGFjZSBXZWJDb3JlIHsKIApAQCAtNzUsNyArNzYsNyBAQCBib29sIFNj
cmlwdENvbnRyb2xsZXI6OmV4ZWN1dGVJZkphdmFTY3JpcHRVUkwoY29uc3QgS1VSTCYgdXJsLCBT
aG91bGRSZXBsYWNlRG9jdQogCiAgICAgaWYgKCFtX2ZyYW1lLT5wYWdlKCkKICAgICAgICAgfHwg
IW1fZnJhbWUtPnBhZ2UoKS0+amF2YVNjcmlwdFVSTHNBcmVBbGxvd2VkKCkKLSAgICAgICAgfHwg
IW1fZnJhbWUtPmRvY3VtZW50KCktPmNvbnRlbnRTZWN1cml0eVBvbGljeSgpLT5hbGxvd0phdmFT
Y3JpcHRVUkxzKCkKKyAgICAgICAgfHwgIW1fZnJhbWUtPmRvY3VtZW50KCktPmNvbnRlbnRTZWN1
cml0eVBvbGljeSgpLT5hbGxvd0phdmFTY3JpcHRVUkxzKG1fZnJhbWUtPmRvY3VtZW50KCktPnVy
bCgpLCBldmVudEhhbmRsZXJQb3NpdGlvbigpLm1fbGluZSkKICAgICAgICAgfHwgbV9mcmFtZS0+
aW5WaWV3U291cmNlTW9kZSgpKQogICAgICAgICByZXR1cm4gdHJ1ZTsKIApkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvSlNMYXp5RXZlbnRMaXN0ZW5lci5jcHAgYi9Tb3Vy
Y2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9KU0xhenlFdmVudExpc3RlbmVyLmNwcAppbmRleCBmMTFi
ZjkwMGMxZDBkNTBkMWM3YWM1YzhiZmM0YmIzZDA0MWRhYWExLi42NGY5Y2I5YzA0OTljOWZiMzgy
ZWMyM2Y1MDVhYjIyYmFjODk0MWIxIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5n
cy9qcy9KU0xhenlFdmVudExpc3RlbmVyLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5n
cy9qcy9KU0xhenlFdmVudExpc3RlbmVyLmNwcApAQCAtODAsNyArODAsNyBAQCBKU09iamVjdCog
SlNMYXp5RXZlbnRMaXN0ZW5lcjo6aW5pdGlhbGl6ZUpTRnVuY3Rpb24oU2NyaXB0RXhlY3V0aW9u
Q29udGV4dCogZXhlYwogICAgIGlmICghZG9jdW1lbnQtPmZyYW1lKCkpCiAgICAgICAgIHJldHVy
biAwOwogCi0gICAgaWYgKCFkb2N1bWVudC0+Y29udGVudFNlY3VyaXR5UG9saWN5KCktPmFsbG93
SW5saW5lRXZlbnRIYW5kbGVycygpKQorICAgIGlmICghZG9jdW1lbnQtPmNvbnRlbnRTZWN1cml0
eVBvbGljeSgpLT5hbGxvd0lubGluZUV2ZW50SGFuZGxlcnMobV9zb3VyY2VVUkwsIG1fcG9zaXRp
b24ubV9saW5lKSkKICAgICAgICAgcmV0dXJuIDA7CiAKICAgICBTY3JpcHRDb250cm9sbGVyKiBz
Y3JpcHQgPSBkb2N1bWVudC0+ZnJhbWUoKS0+c2NyaXB0KCk7CmRpZmYgLS1naXQgYS9Tb3VyY2Uv
V2ViQ29yZS9iaW5kaW5ncy92OC9WOExhenlFdmVudExpc3RlbmVyLmNwcCBiL1NvdXJjZS9XZWJD
b3JlL2JpbmRpbmdzL3Y4L1Y4TGF6eUV2ZW50TGlzdGVuZXIuY3BwCmluZGV4IDczMzIzMThkMjY0
ZDk0MzBhM2RkZDczZWI5NTliZGQyMmYwZTJkOWUuLmVmNDU5MmUxYTAwNTUxN2IyNGQ1ZmYwNWEz
ZjM3MmQwMGY3MTRkZTAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3Y4L1Y4
TGF6eUV2ZW50TGlzdGVuZXIuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3Y4L1Y4
TGF6eUV2ZW50TGlzdGVuZXIuY3BwCkBAIC0xMDUsNyArMTA1LDcgQEAgdm9pZCBWOExhenlFdmVu
dExpc3RlbmVyOjpwcmVwYXJlTGlzdGVuZXJPYmplY3QoU2NyaXB0RXhlY3V0aW9uQ29udGV4dCog
Y29udGV4dCkKICAgICBpZiAoaGFzRXhpc3RpbmdMaXN0ZW5lck9iamVjdCgpKQogICAgICAgICBy
ZXR1cm47CiAKLSAgICBpZiAoY29udGV4dC0+aXNEb2N1bWVudCgpICYmICFzdGF0aWNfY2FzdDxE
b2N1bWVudCo+KGNvbnRleHQpLT5jb250ZW50U2VjdXJpdHlQb2xpY3koKS0+YWxsb3dJbmxpbmVF
dmVudEhhbmRsZXJzKCkpCisgICAgaWYgKGNvbnRleHQtPmlzRG9jdW1lbnQoKSAmJiAhc3RhdGlj
X2Nhc3Q8RG9jdW1lbnQqPihjb250ZXh0KS0+Y29udGVudFNlY3VyaXR5UG9saWN5KCktPmFsbG93
SW5saW5lRXZlbnRIYW5kbGVycyhtX3NvdXJjZVVSTCwgbV9wb3NpdGlvbi5tX2xpbmUpKQogICAg
ICAgICByZXR1cm47CiAKICAgICB2ODo6SGFuZGxlU2NvcGUgaGFuZGxlU2NvcGU7CmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViQ29yZS9kb20vU2NyaXB0RWxlbWVudC5jcHAgYi9Tb3VyY2UvV2ViQ29y
ZS9kb20vU2NyaXB0RWxlbWVudC5jcHAKaW5kZXggYmRjMWZjZGZjZjEyM2RjNTUxMDM4OWQzM2M3
MjRhMjk2OWI3ODczZS4uNzEzZWJhYTE5ZTYxYWI4ZGViYTY1ODhkMDAzNjlhY2E0NTljMTRmOSAx
MDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvZG9tL1NjcmlwdEVsZW1lbnQuY3BwCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL2RvbS9TY3JpcHRFbGVtZW50LmNwcApAQCAtNDEsMTIgKzQxLDE0IEBACiAj
aW5jbHVkZSAiU2NyaXB0UnVubmVyLmgiCiAjaW5jbHVkZSAiU2NyaXB0U291cmNlQ29kZS5oIgog
I2luY2x1ZGUgIlNjcmlwdFZhbHVlLmgiCisjaW5jbHVkZSAiU2NyaXB0YWJsZURvY3VtZW50UGFy
c2VyLmgiCiAjaW5jbHVkZSAiU2VjdXJpdHlPcmlnaW4uaCIKICNpbmNsdWRlICJTZXR0aW5ncy5o
IgogI2luY2x1ZGUgIlRleHQuaCIKICNpbmNsdWRlIDx3dGYvU3RkTGliRXh0cmFzLmg+CiAjaW5j
bHVkZSA8d3RmL3RleHQvU3RyaW5nQnVpbGRlci5oPgogI2luY2x1ZGUgPHd0Zi90ZXh0L1N0cmlu
Z0hhc2guaD4KKyNpbmNsdWRlIDx3dGYvdGV4dC9UZXh0UG9zaXRpb24uaD4KIAogI2lmIEVOQUJM
RShTVkcpCiAjaW5jbHVkZSAiU1ZHTmFtZXMuaCIKQEAgLTU4LDYgKzYwLDcgQEAgbmFtZXNwYWNl
IFdlYkNvcmUgewogU2NyaXB0RWxlbWVudDo6U2NyaXB0RWxlbWVudChFbGVtZW50KiBlbGVtZW50
LCBib29sIHBhcnNlckluc2VydGVkLCBib29sIGFscmVhZHlTdGFydGVkKQogICAgIDogbV9lbGVt
ZW50KGVsZW1lbnQpCiAgICAgLCBtX2NhY2hlZFNjcmlwdCgwKQorICAgICwgbV9zdGFydExpbmVO
dW1iZXIoV1RGOjpPcmRpbmFsTnVtYmVyOjpiZWZvcmVGaXJzdCgpKQogICAgICwgbV9wYXJzZXJJ
bnNlcnRlZChwYXJzZXJJbnNlcnRlZCkKICAgICAsIG1faXNFeHRlcm5hbFNjcmlwdChmYWxzZSkK
ICAgICAsIG1fYWxyZWFkeVN0YXJ0ZWQoYWxyZWFkeVN0YXJ0ZWQpCkBAIC03MCw2ICs3Myw4IEBA
IFNjcmlwdEVsZW1lbnQ6OlNjcmlwdEVsZW1lbnQoRWxlbWVudCogZWxlbWVudCwgYm9vbCBwYXJz
ZXJJbnNlcnRlZCwgYm9vbCBhbHJlYWR5CiAgICAgLCBtX3JlcXVlc3RVc2VzQWNjZXNzQ29udHJv
bChmYWxzZSkKIHsKICAgICBBU1NFUlQobV9lbGVtZW50KTsKKyAgICBpZiAobV9lbGVtZW50LT5k
b2N1bWVudCgpLT5zY3JpcHRhYmxlRG9jdW1lbnRQYXJzZXIoKSkKKyAgICAgICAgbV9zdGFydExp
bmVOdW1iZXIgPSBtX2VsZW1lbnQtPmRvY3VtZW50KCktPnNjcmlwdGFibGVEb2N1bWVudFBhcnNl
cigpLT5saW5lTnVtYmVyKCk7CiB9CiAKIFNjcmlwdEVsZW1lbnQ6On5TY3JpcHRFbGVtZW50KCkK
QEAgLTI3Niw3ICsyODEsNyBAQCB2b2lkIFNjcmlwdEVsZW1lbnQ6OmV4ZWN1dGVTY3JpcHQoY29u
c3QgU2NyaXB0U291cmNlQ29kZSYgc291cmNlQ29kZSkKICAgICBpZiAoc291cmNlQ29kZS5pc0Vt
cHR5KCkpCiAgICAgICAgIHJldHVybjsKIAotICAgIGlmICghbV9pc0V4dGVybmFsU2NyaXB0ICYm
ICFtX2VsZW1lbnQtPmRvY3VtZW50KCktPmNvbnRlbnRTZWN1cml0eVBvbGljeSgpLT5hbGxvd0lu
bGluZVNjcmlwdCgpKQorICAgIGlmICghbV9pc0V4dGVybmFsU2NyaXB0ICYmICFtX2VsZW1lbnQt
PmRvY3VtZW50KCktPmNvbnRlbnRTZWN1cml0eVBvbGljeSgpLT5hbGxvd0lubGluZVNjcmlwdCht
X2VsZW1lbnQtPmRvY3VtZW50KCktPnVybCgpLCBtX3N0YXJ0TGluZU51bWJlcikpCiAgICAgICAg
IHJldHVybjsKIAogICAgIFJlZlB0cjxEb2N1bWVudD4gZG9jdW1lbnQgPSBtX2VsZW1lbnQtPmRv
Y3VtZW50KCk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9kb20vU2NyaXB0RWxlbWVudC5o
IGIvU291cmNlL1dlYkNvcmUvZG9tL1NjcmlwdEVsZW1lbnQuaAppbmRleCA2YzA4MjU4ZTY1NjVk
MDg0ZDJiNjQ0OWNiMmUyNTM4YzFhYjg5ODNhLi45MTFhY2NhNzJkMGRmNTQ2NDAyZTRmYTMyMjA3
NzZiODMwOTdmMGQ5IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9kb20vU2NyaXB0RWxlbWVu
dC5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2RvbS9TY3JpcHRFbGVtZW50LmgKQEAgLTkzLDYgKzkz
LDcgQEAgcHJpdmF0ZToKIAogICAgIEVsZW1lbnQqIG1fZWxlbWVudDsKICAgICBDYWNoZWRSZXNv
dXJjZUhhbmRsZTxDYWNoZWRTY3JpcHQ+IG1fY2FjaGVkU2NyaXB0OworICAgIFdURjo6T3JkaW5h
bE51bWJlciBtX3N0YXJ0TGluZU51bWJlcjsKICAgICBib29sIG1fcGFyc2VySW5zZXJ0ZWQgOiAx
OwogICAgIGJvb2wgbV9pc0V4dGVybmFsU2NyaXB0IDogMTsKICAgICBib29sIG1fYWxyZWFkeVN0
YXJ0ZWQgOiAxOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvZG9tL1N0eWxlRWxlbWVudC5j
cHAgYi9Tb3VyY2UvV2ViQ29yZS9kb20vU3R5bGVFbGVtZW50LmNwcAppbmRleCA1YWY5ZmM4ZTRj
ZGNjNmZiMmYxZGUyNDAwMWFjOTVmNjdmMDhlYjVkLi4wNGFmODQwYWI4NzVhYTk0NTY4NDNjMDMw
ZDlkYWZiMjM4ZDkwNzVmIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9kb20vU3R5bGVFbGVt
ZW50LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9kb20vU3R5bGVFbGVtZW50LmNwcApAQCAtMjks
NiArMjksNyBAQAogI2luY2x1ZGUgIk1lZGlhUXVlcnlFdmFsdWF0b3IuaCIKICNpbmNsdWRlICJT
Y3JpcHRhYmxlRG9jdW1lbnRQYXJzZXIuaCIKICNpbmNsdWRlIDx3dGYvdGV4dC9TdHJpbmdCdWls
ZGVyLmg+CisjaW5jbHVkZSA8d3RmL3RleHQvVGV4dFBvc2l0aW9uLmg+CiAKIG5hbWVzcGFjZSBX
ZWJDb3JlIHsKIApAQCAtNDcsMTAgKzQ4LDEwIEBAIHN0YXRpYyBib29sIGlzQ1NTKEVsZW1lbnQq
IGVsZW1lbnQsIGNvbnN0IEF0b21pY1N0cmluZyYgdHlwZSkKIFN0eWxlRWxlbWVudDo6U3R5bGVF
bGVtZW50KERvY3VtZW50KiBkb2N1bWVudCwgYm9vbCBjcmVhdGVkQnlQYXJzZXIpCiAgICAgOiBt
X2NyZWF0ZWRCeVBhcnNlcihjcmVhdGVkQnlQYXJzZXIpCiAgICAgLCBtX2xvYWRpbmcoZmFsc2Up
Ci0gICAgLCBtX3N0YXJ0TGluZU51bWJlcigwKQorICAgICwgbV9zdGFydExpbmVOdW1iZXIoV1RG
OjpPcmRpbmFsTnVtYmVyOjpiZWZvcmVGaXJzdCgpKQogewogICAgIGlmIChjcmVhdGVkQnlQYXJz
ZXIgJiYgZG9jdW1lbnQgJiYgZG9jdW1lbnQtPnNjcmlwdGFibGVEb2N1bWVudFBhcnNlcigpKQot
ICAgICAgICBtX3N0YXJ0TGluZU51bWJlciA9IGRvY3VtZW50LT5zY3JpcHRhYmxlRG9jdW1lbnRQ
YXJzZXIoKS0+bGluZU51bWJlcigpLnplcm9CYXNlZEludCgpOworICAgICAgICBtX3N0YXJ0TGlu
ZU51bWJlciA9IGRvY3VtZW50LT5zY3JpcHRhYmxlRG9jdW1lbnRQYXJzZXIoKS0+bGluZU51bWJl
cigpOwogfQogCiBTdHlsZUVsZW1lbnQ6On5TdHlsZUVsZW1lbnQoKQpAQCAtMTQzLDcgKzE0NCw3
IEBAIHZvaWQgU3R5bGVFbGVtZW50OjpjbGVhclNoZWV0KCkKICAgICBtX3NoZWV0ID0gMDsKIH0K
IAotdm9pZCBTdHlsZUVsZW1lbnQ6OmNyZWF0ZVNoZWV0KEVsZW1lbnQqIGUsIGludCBzdGFydExp
bmVOdW1iZXIsIGNvbnN0IFN0cmluZyYgdGV4dCkKK3ZvaWQgU3R5bGVFbGVtZW50OjpjcmVhdGVT
aGVldChFbGVtZW50KiBlLCBXVEY6Ok9yZGluYWxOdW1iZXIgc3RhcnRMaW5lTnVtYmVyLCBjb25z
dCBTdHJpbmcmIHRleHQpCiB7CiAgICAgQVNTRVJUKGUpOwogICAgIEFTU0VSVChlLT5pbkRvY3Vt
ZW50KCkpOwpAQCAtMTU2LDcgKzE1Nyw3IEBAIHZvaWQgU3R5bGVFbGVtZW50OjpjcmVhdGVTaGVl
dChFbGVtZW50KiBlLCBpbnQgc3RhcnRMaW5lTnVtYmVyLCBjb25zdCBTdHJpbmcmIHRlCiAKICAg
ICAvLyBJZiB0eXBlIGlzIGVtcHR5IG9yIENTUywgdGhpcyBpcyBhIENTUyBzdHlsZSBzaGVldC4K
ICAgICBjb25zdCBBdG9taWNTdHJpbmcmIHR5cGUgPSB0aGlzLT50eXBlKCk7Ci0gICAgaWYgKGRv
Y3VtZW50LT5jb250ZW50U2VjdXJpdHlQb2xpY3koKS0+YWxsb3dJbmxpbmVTdHlsZSgpICYmIGlz
Q1NTKGUsIHR5cGUpKSB7CisgICAgaWYgKGRvY3VtZW50LT5jb250ZW50U2VjdXJpdHlQb2xpY3ko
KS0+YWxsb3dJbmxpbmVTdHlsZShlLT5kb2N1bWVudCgpLT51cmwoKSwgc3RhcnRMaW5lTnVtYmVy
KSAmJiBpc0NTUyhlLCB0eXBlKSkgewogICAgICAgICBSZWZQdHI8TWVkaWFRdWVyeVNldD4gbWVk
aWFRdWVyaWVzOwogICAgICAgICBpZiAoZS0+aXNIVE1MRWxlbWVudCgpKQogICAgICAgICAgICAg
bWVkaWFRdWVyaWVzID0gTWVkaWFRdWVyeVNldDo6Y3JlYXRlQWxsb3dpbmdEZXNjcmlwdGlvblN5
bnRheChtZWRpYSgpKTsKQEAgLTE3Miw4ICsxNzMsOCBAQCB2b2lkIFN0eWxlRWxlbWVudDo6Y3Jl
YXRlU2hlZXQoRWxlbWVudCogZSwgaW50IHN0YXJ0TGluZU51bWJlciwgY29uc3QgU3RyaW5nJiB0
ZQogICAgICAgICAgICAgbV9zaGVldCA9IENTU1N0eWxlU2hlZXQ6OmNyZWF0ZUlubGluZShlLCBL
VVJMKCksIGRvY3VtZW50LT5pbnB1dEVuY29kaW5nKCkpOwogICAgICAgICAgICAgbV9zaGVldC0+
c2V0TWVkaWFRdWVyaWVzKG1lZGlhUXVlcmllcy5yZWxlYXNlKCkpOwogICAgICAgICAgICAgbV9z
aGVldC0+c2V0VGl0bGUoZS0+dGl0bGUoKSk7Ci0gICAgCi0gICAgICAgICAgICBtX3NoZWV0LT5p
bnRlcm5hbCgpLT5wYXJzZVN0cmluZ0F0TGluZSh0ZXh0LCBzdGFydExpbmVOdW1iZXIpOworCisg
ICAgICAgICAgICBtX3NoZWV0LT5pbnRlcm5hbCgpLT5wYXJzZVN0cmluZ0F0TGluZSh0ZXh0LCBz
dGFydExpbmVOdW1iZXIuemVyb0Jhc2VkSW50KCkpOwogCiAgICAgICAgICAgICBtX2xvYWRpbmcg
PSBmYWxzZTsKICAgICAgICAgfQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvZG9tL1N0eWxl
RWxlbWVudC5oIGIvU291cmNlL1dlYkNvcmUvZG9tL1N0eWxlRWxlbWVudC5oCmluZGV4IDNjMzFh
YmJmN2VhNDNjNTJjOTVkNDdjNWYxMGZiNGJkZjM1Yjk1MGUuLjZkZDQ4ZWNiYjQ1NGI1ZWFkMzI5
ZTAzOTA5YTI3M2E2YzI1MmIwZjIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2RvbS9TdHls
ZUVsZW1lbnQuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9kb20vU3R5bGVFbGVtZW50LmgKQEAgLTIy
LDYgKzIyLDcgQEAKICNkZWZpbmUgU3R5bGVFbGVtZW50X2gKIAogI2luY2x1ZGUgIkNTU1N0eWxl
U2hlZXQuaCIKKyNpbmNsdWRlIDx3dGYvdGV4dC9UZXh0UG9zaXRpb24uaD4KIAogbmFtZXNwYWNl
IFdlYkNvcmUgewogCkBAIC01MiwxMyArNTMsMTMgQEAgcHJvdGVjdGVkOgogICAgIFJlZlB0cjxD
U1NTdHlsZVNoZWV0PiBtX3NoZWV0OwogCiBwcml2YXRlOgotICAgIHZvaWQgY3JlYXRlU2hlZXQo
RWxlbWVudCosIGludCBzdGFydExpbmVOdW1iZXIsIGNvbnN0IFN0cmluZyYgdGV4dCA9IFN0cmlu
ZygpKTsKKyAgICB2b2lkIGNyZWF0ZVNoZWV0KEVsZW1lbnQqLCBXVEY6Ok9yZGluYWxOdW1iZXIg
c3RhcnRMaW5lTnVtYmVyLCBjb25zdCBTdHJpbmcmIHRleHQgPSBTdHJpbmcoKSk7CiAgICAgdm9p
ZCBwcm9jZXNzKEVsZW1lbnQqKTsKICAgICB2b2lkIGNsZWFyU2hlZXQoKTsKIAogICAgIGJvb2wg
bV9jcmVhdGVkQnlQYXJzZXI7CiAgICAgYm9vbCBtX2xvYWRpbmc7Ci0gICAgaW50IG1fc3RhcnRM
aW5lTnVtYmVyOworICAgIFdURjo6T3JkaW5hbE51bWJlciBtX3N0YXJ0TGluZU51bWJlcjsKIH07
CiAKIH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2RvbS9TdHlsZWRFbGVtZW50LmNwcCBi
L1NvdXJjZS9XZWJDb3JlL2RvbS9TdHlsZWRFbGVtZW50LmNwcAppbmRleCBkNTViMDA5OTM0NWZl
OTFlMDc1NTY1NmVmNzc3MDNhNWIyZTA5YmIwLi5jYmYwOTFkNmQxNWI3MTkzNWEyODBmNTU4M2Jk
N2QyZTVlOTNkNGRiIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9kb20vU3R5bGVkRWxlbWVu
dC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvZG9tL1N0eWxlZEVsZW1lbnQuY3BwCkBAIC0zNyw5
ICszNywxMSBAQAogI2luY2x1ZGUgIkRvY3VtZW50LmgiCiAjaW5jbHVkZSAiSFRNTE5hbWVzLmgi
CiAjaW5jbHVkZSAiSFRNTFBhcnNlcklkaW9tcy5oIgorI2luY2x1ZGUgIlNjcmlwdGFibGVEb2N1
bWVudFBhcnNlci5oIgogI2luY2x1ZGUgIlN0eWxlUHJvcGVydHlTZXQuaCIKICNpbmNsdWRlICJT
dHlsZVJlc29sdmVyLmgiCiAjaW5jbHVkZSA8d3RmL0hhc2hGdW5jdGlvbnMuaD4KKyNpbmNsdWRl
IDx3dGYvdGV4dC9UZXh0UG9zaXRpb24uaD4KIAogdXNpbmcgbmFtZXNwYWNlIHN0ZDsKIApAQCAt
MTI2LDEzICsxMjgsMjEgQEAgdm9pZCBTdHlsZWRFbGVtZW50Ojp1cGRhdGVTdHlsZUF0dHJpYnV0
ZSgpIGNvbnN0CiAgICAgICAgIGNvbnN0X2Nhc3Q8U3R5bGVkRWxlbWVudCo+KHRoaXMpLT5zZXRB
dHRyaWJ1dGUoc3R5bGVBdHRyLCBpbmxpbmVTdHlsZS0+YXNUZXh0KCksIEluVXBkYXRlU3R5bGVB
dHRyaWJ1dGUpOwogfQogCitTdHlsZWRFbGVtZW50OjpTdHlsZWRFbGVtZW50KGNvbnN0IFF1YWxp
ZmllZE5hbWUmIG5hbWUsIERvY3VtZW50KiBkb2N1bWVudCwgQ29uc3RydWN0aW9uVHlwZSB0eXBl
KQorICAgIDogRWxlbWVudChuYW1lLCBkb2N1bWVudCwgdHlwZSkKKyAgICAsIG1fc3RhcnRMaW5l
TnVtYmVyKFdURjo6T3JkaW5hbE51bWJlcjo6YmVmb3JlRmlyc3QoKSkKK3sKKyAgICBpZiAoZG9j
dW1lbnQgJiYgZG9jdW1lbnQtPnNjcmlwdGFibGVEb2N1bWVudFBhcnNlcigpKQorICAgICAgICBt
X3N0YXJ0TGluZU51bWJlciA9IGRvY3VtZW50LT5zY3JpcHRhYmxlRG9jdW1lbnRQYXJzZXIoKS0+
bGluZU51bWJlcigpOworfQorCiBTdHlsZWRFbGVtZW50Ojp+U3R5bGVkRWxlbWVudCgpCiB7CiAg
ICAgZGVzdHJveUlubGluZVN0eWxlKCk7CiB9CiAKLUNTU1N0eWxlRGVjbGFyYXRpb24qIFN0eWxl
ZEVsZW1lbnQ6OnN0eWxlKCkgCi17IAorQ1NTU3R5bGVEZWNsYXJhdGlvbiogU3R5bGVkRWxlbWVu
dDo6c3R5bGUoKQorewogICAgIHJldHVybiBlbnN1cmVBdHRyaWJ1dGVEYXRhKCktPmVuc3VyZU11
dGFibGVJbmxpbmVTdHlsZSh0aGlzKS0+ZW5zdXJlSW5saW5lQ1NTU3R5bGVEZWNsYXJhdGlvbih0
aGlzKTsgCiB9CiAKQEAgLTE3Myw3ICsxODMsNyBAQCB2b2lkIFN0eWxlZEVsZW1lbnQ6OnN0eWxl
QXR0cmlidXRlQ2hhbmdlZChjb25zdCBBdG9taWNTdHJpbmcmIG5ld1N0eWxlU3RyaW5nLCBTaAog
ICAgIGlmIChzaG91bGRSZXBhcnNlKSB7CiAgICAgICAgIGlmIChuZXdTdHlsZVN0cmluZy5pc051
bGwoKSkKICAgICAgICAgICAgIGRlc3Ryb3lJbmxpbmVTdHlsZSgpOwotICAgICAgICBlbHNlIGlm
IChkb2N1bWVudCgpLT5jb250ZW50U2VjdXJpdHlQb2xpY3koKS0+YWxsb3dJbmxpbmVTdHlsZSgp
KQorICAgICAgICBlbHNlIGlmIChkb2N1bWVudCgpLT5jb250ZW50U2VjdXJpdHlQb2xpY3koKS0+
YWxsb3dJbmxpbmVTdHlsZShkb2N1bWVudCgpLT51cmwoKSwgbV9zdGFydExpbmVOdW1iZXIpKQog
ICAgICAgICAgICAgZW5zdXJlQXR0cmlidXRlRGF0YSgpLT51cGRhdGVJbmxpbmVTdHlsZUF2b2lk
aW5nTXV0YXRpb24odGhpcywgbmV3U3R5bGVTdHJpbmcpOwogICAgICAgICBzZXRJc1N0eWxlQXR0
cmlidXRlVmFsaWQoKTsKICAgICB9CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9kb20vU3R5
bGVkRWxlbWVudC5oIGIvU291cmNlL1dlYkNvcmUvZG9tL1N0eWxlZEVsZW1lbnQuaAppbmRleCA2
Y2Y0MTQ1ZjJhMTIxYTU0OGQ0ZTNhZGViOGNlODVmNjI3MDVkMDc4Li40NzM2YTk4MDAxOWE5ZWY0
YTJjZGM2YWRjYjY0MTAwMmE2YmViNzBiIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9kb20v
U3R5bGVkRWxlbWVudC5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2RvbS9TdHlsZWRFbGVtZW50LmgK
QEAgLTI3LDYgKzI3LDcgQEAKIAogI2luY2x1ZGUgIkVsZW1lbnQuaCIKICNpbmNsdWRlICJTdHls
ZVByb3BlcnR5U2V0LmgiCisjaW5jbHVkZSA8d3RmL3RleHQvVGV4dFBvc2l0aW9uLmg+CiAKIG5h
bWVzcGFjZSBXZWJDb3JlIHsKIApAQCAtNjIsMTAgKzYzLDcgQEAgcHVibGljOgogICAgIHZvaWQg
c3R5bGVBdHRyaWJ1dGVDaGFuZ2VkKGNvbnN0IEF0b21pY1N0cmluZyYgbmV3U3R5bGVTdHJpbmcs
IFNob3VsZFJlcGFyc2VTdHlsZUF0dHJpYnV0ZSA9IFJlcGFyc2VTdHlsZUF0dHJpYnV0ZSk7CiAK
IHByb3RlY3RlZDoKLSAgICBTdHlsZWRFbGVtZW50KGNvbnN0IFF1YWxpZmllZE5hbWUmIG5hbWUs
IERvY3VtZW50KiBkb2N1bWVudCwgQ29uc3RydWN0aW9uVHlwZSB0eXBlKQotICAgICAgICA6IEVs
ZW1lbnQobmFtZSwgZG9jdW1lbnQsIHR5cGUpCi0gICAgewotICAgIH0KKyAgICBTdHlsZWRFbGVt
ZW50KGNvbnN0IFF1YWxpZmllZE5hbWUmLCBEb2N1bWVudCosIENvbnN0cnVjdGlvblR5cGUpOwog
CiAgICAgdmlydHVhbCB2b2lkIGF0dHJpYnV0ZUNoYW5nZWQoY29uc3QgQXR0cmlidXRlJikgT1ZF
UlJJREU7CiAgICAgdmlydHVhbCB2b2lkIHBhcnNlQXR0cmlidXRlKGNvbnN0IEF0dHJpYnV0ZSYp
OwpAQCAtOTUsNiArOTMsOCBAQCBwcml2YXRlOgogICAgICAgICBpZiAoYXR0cmlidXRlRGF0YSgp
KQogICAgICAgICAgICAgYXR0cmlidXRlRGF0YSgpLT5kZXN0cm95SW5saW5lU3R5bGUodGhpcyk7
CiAgICAgfQorCisgICAgV1RGOjpPcmRpbmFsTnVtYmVyIG1fc3RhcnRMaW5lTnVtYmVyOwogfTsK
IAogaW5saW5lIGNvbnN0IFNwYWNlU3BsaXRTdHJpbmcmIFN0eWxlZEVsZW1lbnQ6OmNsYXNzTmFt
ZXMoKSBjb25zdApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGFnZS9Db250ZW50U2VjdXJp
dHlQb2xpY3kuY3BwIGIvU291cmNlL1dlYkNvcmUvcGFnZS9Db250ZW50U2VjdXJpdHlQb2xpY3ku
Y3BwCmluZGV4IDQ1Zjc2YjAxOWRmZjY3ZjM5MzAyNDI1ODM4NzJmMzIzZjUwYTk4YmQuLjJkNzVh
ZDVmYTExODJlNjA3MzM2NTNlYTQzNWNiNzRhOTZjNDg3NzIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJDb3JlL3BhZ2UvQ29udGVudFNlY3VyaXR5UG9saWN5LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29y
ZS9wYWdlL0NvbnRlbnRTZWN1cml0eVBvbGljeS5jcHAKQEAgLTMxLDExICszMSwxMyBAQAogI2lu
Y2x1ZGUgIkZvcm1EYXRhLmgiCiAjaW5jbHVkZSAiRm9ybURhdGFMaXN0LmgiCiAjaW5jbHVkZSAi
RnJhbWUuaCIKKyNpbmNsdWRlICJJbnNwZWN0b3JJbnN0cnVtZW50YXRpb24uaCIKICNpbmNsdWRl
ICJJbnNwZWN0b3JWYWx1ZXMuaCIKICNpbmNsdWRlICJQaW5nTG9hZGVyLmgiCiAjaW5jbHVkZSAi
U2NyaXB0Q2FsbFN0YWNrLmgiCiAjaW5jbHVkZSAiU2VjdXJpdHlPcmlnaW4uaCIKICNpbmNsdWRl
ICJUZXh0RW5jb2RpbmcuaCIKKyNpbmNsdWRlIDx3dGYvdGV4dC9UZXh0UG9zaXRpb24uaD4KICNp
bmNsdWRlIDx3dGYvdGV4dC9XVEZTdHJpbmcuaD4KIAogbmFtZXNwYWNlIFdlYkNvcmUgewpAQCAt
NDkwLDEwICs0OTIsMTAgQEAgcHVibGljOgogICAgIGNvbnN0IFN0cmluZyYgaGVhZGVyKCkgY29u
c3QgeyByZXR1cm4gbV9oZWFkZXI7IH0KICAgICBDb250ZW50U2VjdXJpdHlQb2xpY3k6OkhlYWRl
clR5cGUgaGVhZGVyVHlwZSgpIGNvbnN0IHsgcmV0dXJuIG1fcmVwb3J0T25seSA/IENvbnRlbnRT
ZWN1cml0eVBvbGljeTo6UmVwb3J0T25seSA6IENvbnRlbnRTZWN1cml0eVBvbGljeTo6RW5mb3Jj
ZVBvbGljeTsgfQogCi0gICAgYm9vbCBhbGxvd0phdmFTY3JpcHRVUkxzKCkgY29uc3Q7Ci0gICAg
Ym9vbCBhbGxvd0lubGluZUV2ZW50SGFuZGxlcnMoKSBjb25zdDsKLSAgICBib29sIGFsbG93SW5s
aW5lU2NyaXB0KCkgY29uc3Q7Ci0gICAgYm9vbCBhbGxvd0lubGluZVN0eWxlKCkgY29uc3Q7Cisg
ICAgYm9vbCBhbGxvd0phdmFTY3JpcHRVUkxzKGNvbnN0IFN0cmluZyYgY29udGV4dFVSTCwgY29u
c3QgV1RGOjpPcmRpbmFsTnVtYmVyJiBjb250ZXh0TGluZSkgY29uc3Q7CisgICAgYm9vbCBhbGxv
d0lubGluZUV2ZW50SGFuZGxlcnMoY29uc3QgU3RyaW5nJiBjb250ZXh0VVJMLCBjb25zdCBXVEY6
Ok9yZGluYWxOdW1iZXImIGNvbnRleHRMaW5lKSBjb25zdDsKKyAgICBib29sIGFsbG93SW5saW5l
U2NyaXB0KGNvbnN0IFN0cmluZyYgY29udGV4dFVSTCwgY29uc3QgV1RGOjpPcmRpbmFsTnVtYmVy
JiBjb250ZXh0TGluZSkgY29uc3Q7CisgICAgYm9vbCBhbGxvd0lubGluZVN0eWxlKGNvbnN0IFN0
cmluZyYgY29udGV4dFVSTCwgY29uc3QgV1RGOjpPcmRpbmFsTnVtYmVyJiBjb250ZXh0TGluZSkg
Y29uc3Q7CiAgICAgYm9vbCBhbGxvd0V2YWwoUGFzc1JlZlB0cjxTY3JpcHRDYWxsU3RhY2s+KSBj
b25zdDsKIAogICAgIGJvb2wgYWxsb3dTY3JpcHRGcm9tU291cmNlKGNvbnN0IEtVUkwmKSBjb25z
dDsKQEAgLTUxOCwxMiArNTIwLDEyIEBAIHByaXZhdGU6CiAgICAgUGFzc093blB0cjxDU1BEaXJl
Y3RpdmU+IGNyZWF0ZUNTUERpcmVjdGl2ZShjb25zdCBTdHJpbmcmIG5hbWUsIGNvbnN0IFN0cmlu
ZyYgdmFsdWUpOwogCiAgICAgQ1NQRGlyZWN0aXZlKiBvcGVyYXRpdmVEaXJlY3RpdmUoQ1NQRGly
ZWN0aXZlKikgY29uc3Q7Ci0gICAgdm9pZCByZXBvcnRWaW9sYXRpb24oY29uc3QgU3RyaW5nJiBk
aXJlY3RpdmVUZXh0LCBjb25zdCBTdHJpbmcmIGNvbnNvbGVNZXNzYWdlLCBjb25zdCBLVVJMJiBi
bG9ja2VkVVJMID0gS1VSTCgpLCBQYXNzUmVmUHRyPFNjcmlwdENhbGxTdGFjaz4gPSAwKSBjb25z
dDsKKyAgICB2b2lkIHJlcG9ydFZpb2xhdGlvbihjb25zdCBTdHJpbmcmIGRpcmVjdGl2ZVRleHQs
IGNvbnN0IFN0cmluZyYgY29uc29sZU1lc3NhZ2UsIGNvbnN0IEtVUkwmIGJsb2NrZWRVUkwgPSBL
VVJMKCksIGNvbnN0IFN0cmluZyYgY29udGV4dFVSTCA9IFN0cmluZygpLCBjb25zdCBXVEY6Ok9y
ZGluYWxOdW1iZXImIGNvbnRleHRMaW5lID0gV1RGOjpPcmRpbmFsTnVtYmVyOjpiZWZvcmVGaXJz
dCgpLCBQYXNzUmVmUHRyPFNjcmlwdENhbGxTdGFjaz4gPSAwKSBjb25zdDsKICAgICB2b2lkIGxv
Z1VucmVjb2duaXplZERpcmVjdGl2ZShjb25zdCBTdHJpbmcmIG5hbWUpIGNvbnN0OwogICAgIGJv
b2wgY2hlY2tFdmFsKENTUERpcmVjdGl2ZSopIGNvbnN0OwogCi0gICAgYm9vbCBjaGVja0lubGlu
ZUFuZFJlcG9ydFZpb2xhdGlvbihDU1BEaXJlY3RpdmUqLCBjb25zdCBTdHJpbmcmIGNvbnNvbGVN
ZXNzYWdlKSBjb25zdDsKLSAgICBib29sIGNoZWNrRXZhbEFuZFJlcG9ydFZpb2xhdGlvbihDU1BE
aXJlY3RpdmUqLCBjb25zdCBTdHJpbmcmIGNvbnNvbGVNZXNzYWdlLCBQYXNzUmVmUHRyPFNjcmlw
dENhbGxTdGFjaz4pIGNvbnN0OworICAgIGJvb2wgY2hlY2tJbmxpbmVBbmRSZXBvcnRWaW9sYXRp
b24oQ1NQRGlyZWN0aXZlKiwgY29uc3QgU3RyaW5nJiBjb25zb2xlTWVzc2FnZSwgY29uc3QgU3Ry
aW5nJiBjb250ZXh0VVJMLCBjb25zdCBXVEY6Ok9yZGluYWxOdW1iZXImIGNvbnRleHRMaW5lKSBj
b25zdDsKKyAgICBib29sIGNoZWNrRXZhbEFuZFJlcG9ydFZpb2xhdGlvbihDU1BEaXJlY3RpdmUq
LCBjb25zdCBTdHJpbmcmIGNvbnNvbGVNZXNzYWdlLCBjb25zdCBTdHJpbmcmIGNvbnRleHRVUkwg
PSBTdHJpbmcoKSwgY29uc3QgV1RGOjpPcmRpbmFsTnVtYmVyJiBjb250ZXh0TGluZSA9IFdURjo6
T3JkaW5hbE51bWJlcjo6YmVmb3JlRmlyc3QoKSwgUGFzc1JlZlB0cjxTY3JpcHRDYWxsU3RhY2s+
ID0gMCkgY29uc3Q7CiAgICAgYm9vbCBjaGVja1NvdXJjZUFuZFJlcG9ydFZpb2xhdGlvbihDU1BE
aXJlY3RpdmUqLCBjb25zdCBLVVJMJiwgY29uc3QgU3RyaW5nJiB0eXBlKSBjb25zdDsKIAogICAg
IGJvb2wgZGVueUlmRW5mb3JjaW5nUG9saWN5KCkgY29uc3QgeyByZXR1cm4gbV9yZXBvcnRPbmx5
OyB9CkBAIC01NzUsMTAgKzU3NywxMCBAQCBQYXNzT3duUHRyPENTUERpcmVjdGl2ZUxpc3Q+IENT
UERpcmVjdGl2ZUxpc3Q6OmNyZWF0ZShTY3JpcHRFeGVjdXRpb25Db250ZXh0KiBzYwogICAgIHJl
dHVybiBwb2xpY3kucmVsZWFzZSgpOwogfQogCi12b2lkIENTUERpcmVjdGl2ZUxpc3Q6OnJlcG9y
dFZpb2xhdGlvbihjb25zdCBTdHJpbmcmIGRpcmVjdGl2ZVRleHQsIGNvbnN0IFN0cmluZyYgY29u
c29sZU1lc3NhZ2UsIGNvbnN0IEtVUkwmIGJsb2NrZWRVUkwsIFBhc3NSZWZQdHI8U2NyaXB0Q2Fs
bFN0YWNrPiBjYWxsU3RhY2spIGNvbnN0Cit2b2lkIENTUERpcmVjdGl2ZUxpc3Q6OnJlcG9ydFZp
b2xhdGlvbihjb25zdCBTdHJpbmcmIGRpcmVjdGl2ZVRleHQsIGNvbnN0IFN0cmluZyYgY29uc29s
ZU1lc3NhZ2UsIGNvbnN0IEtVUkwmIGJsb2NrZWRVUkwsIGNvbnN0IFN0cmluZyYgY29udGV4dFVS
TCwgY29uc3QgV1RGOjpPcmRpbmFsTnVtYmVyJiBjb250ZXh0TGluZSwgUGFzc1JlZlB0cjxTY3Jp
cHRDYWxsU3RhY2s+IGNhbGxTdGFjaykgY29uc3QKIHsKICAgICBTdHJpbmcgbWVzc2FnZSA9IG1f
cmVwb3J0T25seSA/ICJbUmVwb3J0IE9ubHldICIgKyBjb25zb2xlTWVzc2FnZSA6IGNvbnNvbGVN
ZXNzYWdlOwotICAgIG1fc2NyaXB0RXhlY3V0aW9uQ29udGV4dC0+YWRkQ29uc29sZU1lc3NhZ2Uo
SlNNZXNzYWdlU291cmNlLCBMb2dNZXNzYWdlVHlwZSwgRXJyb3JNZXNzYWdlTGV2ZWwsIG1lc3Nh
Z2UsIFN0cmluZygpLCAwLCBjYWxsU3RhY2spOworICAgIG1fc2NyaXB0RXhlY3V0aW9uQ29udGV4
dC0+YWRkQ29uc29sZU1lc3NhZ2UoSlNNZXNzYWdlU291cmNlLCBMb2dNZXNzYWdlVHlwZSwgRXJy
b3JNZXNzYWdlTGV2ZWwsIG1lc3NhZ2UsIGNvbnRleHRVUkwsIGNvbnRleHRMaW5lLm9uZUJhc2Vk
SW50KCksIGNhbGxTdGFjayk7CiAKICAgICBpZiAobV9yZXBvcnRVUklzLmlzRW1wdHkoKSkKICAg
ICAgICAgcmV0dXJuOwpAQCAtNjM4LDE5ICs2NDAsMTkgQEAgQ1NQRGlyZWN0aXZlKiBDU1BEaXJl
Y3RpdmVMaXN0OjpvcGVyYXRpdmVEaXJlY3RpdmUoQ1NQRGlyZWN0aXZlKiBkaXJlY3RpdmUpIGNv
bnMKICAgICByZXR1cm4gZGlyZWN0aXZlID8gZGlyZWN0aXZlIDogbV9kZWZhdWx0U3JjLmdldCgp
OwogfQogCi1ib29sIENTUERpcmVjdGl2ZUxpc3Q6OmNoZWNrSW5saW5lQW5kUmVwb3J0VmlvbGF0
aW9uKENTUERpcmVjdGl2ZSogZGlyZWN0aXZlLCBjb25zdCBTdHJpbmcmIGNvbnNvbGVNZXNzYWdl
KSBjb25zdAorYm9vbCBDU1BEaXJlY3RpdmVMaXN0OjpjaGVja0lubGluZUFuZFJlcG9ydFZpb2xh
dGlvbihDU1BEaXJlY3RpdmUqIGRpcmVjdGl2ZSwgY29uc3QgU3RyaW5nJiBjb25zb2xlTWVzc2Fn
ZSwgY29uc3QgU3RyaW5nJiBjb250ZXh0VVJMLCBjb25zdCBXVEY6Ok9yZGluYWxOdW1iZXImIGNv
bnRleHRMaW5lKSBjb25zdAogewogICAgIGlmICghZGlyZWN0aXZlIHx8IGRpcmVjdGl2ZS0+YWxs
b3dJbmxpbmUoKSkKICAgICAgICAgcmV0dXJuIHRydWU7Ci0gICAgcmVwb3J0VmlvbGF0aW9uKGRp
cmVjdGl2ZS0+dGV4dCgpLCBjb25zb2xlTWVzc2FnZSArICJcIiIgKyBkaXJlY3RpdmUtPnRleHQo
KSArICJcIi5cbiIpOworICAgIHJlcG9ydFZpb2xhdGlvbihkaXJlY3RpdmUtPnRleHQoKSwgY29u
c29sZU1lc3NhZ2UgKyAiXCIiICsgZGlyZWN0aXZlLT50ZXh0KCkgKyAiXCIuXG4iLCBLVVJMKCks
IGNvbnRleHRVUkwsIGNvbnRleHRMaW5lKTsKICAgICByZXR1cm4gZGVueUlmRW5mb3JjaW5nUG9s
aWN5KCk7CiB9CiAKLWJvb2wgQ1NQRGlyZWN0aXZlTGlzdDo6Y2hlY2tFdmFsQW5kUmVwb3J0Vmlv
bGF0aW9uKENTUERpcmVjdGl2ZSogZGlyZWN0aXZlLCBjb25zdCBTdHJpbmcmIGNvbnNvbGVNZXNz
YWdlLCBQYXNzUmVmUHRyPFNjcmlwdENhbGxTdGFjaz4gY2FsbFN0YWNrKSBjb25zdAorYm9vbCBD
U1BEaXJlY3RpdmVMaXN0OjpjaGVja0V2YWxBbmRSZXBvcnRWaW9sYXRpb24oQ1NQRGlyZWN0aXZl
KiBkaXJlY3RpdmUsIGNvbnN0IFN0cmluZyYgY29uc29sZU1lc3NhZ2UsIGNvbnN0IFN0cmluZyYg
Y29udGV4dFVSTCwgY29uc3QgV1RGOjpPcmRpbmFsTnVtYmVyJiBjb250ZXh0TGluZSwgUGFzc1Jl
ZlB0cjxTY3JpcHRDYWxsU3RhY2s+IGNhbGxTdGFjaykgY29uc3QKIHsKICAgICBpZiAoY2hlY2tF
dmFsKGRpcmVjdGl2ZSkpCiAgICAgICAgIHJldHVybiB0cnVlOwotICAgIHJlcG9ydFZpb2xhdGlv
bihkaXJlY3RpdmUtPnRleHQoKSwgY29uc29sZU1lc3NhZ2UgKyAiXCIiICsgZGlyZWN0aXZlLT50
ZXh0KCkgKyAiXCIuXG4iLCBLVVJMKCksIGNhbGxTdGFjayk7CisgICAgcmVwb3J0VmlvbGF0aW9u
KGRpcmVjdGl2ZS0+dGV4dCgpLCBjb25zb2xlTWVzc2FnZSArICJcIiIgKyBkaXJlY3RpdmUtPnRl
eHQoKSArICJcIi5cbiIsIEtVUkwoKSwgY29udGV4dFVSTCwgY29udGV4dExpbmUsIGNhbGxTdGFj
ayk7CiAgICAgcmV0dXJuIGRlbnlJZkVuZm9yY2luZ1BvbGljeSgpOwogfQogCkBAIC02NjMsMzQg
KzY2NSwzNCBAQCBib29sIENTUERpcmVjdGl2ZUxpc3Q6OmNoZWNrU291cmNlQW5kUmVwb3J0Vmlv
bGF0aW9uKENTUERpcmVjdGl2ZSogZGlyZWN0aXZlLCBjbwogICAgIHJldHVybiBkZW55SWZFbmZv
cmNpbmdQb2xpY3koKTsKIH0KIAotYm9vbCBDU1BEaXJlY3RpdmVMaXN0OjphbGxvd0phdmFTY3Jp
cHRVUkxzKCkgY29uc3QKK2Jvb2wgQ1NQRGlyZWN0aXZlTGlzdDo6YWxsb3dKYXZhU2NyaXB0VVJM
cyhjb25zdCBTdHJpbmcmIGNvbnRleHRVUkwsIGNvbnN0IFdURjo6T3JkaW5hbE51bWJlciYgY29u
dGV4dExpbmUpIGNvbnN0CiB7CiAgICAgREVGSU5FX1NUQVRJQ19MT0NBTChTdHJpbmcsIGNvbnNv
bGVNZXNzYWdlLCAoIlJlZnVzZWQgdG8gZXhlY3V0ZSBKYXZhU2NyaXB0IFVSTCBiZWNhdXNlIGl0
IHZpb2xhdGVzIHRoZSBmb2xsb3dpbmcgQ29udGVudCBTZWN1cml0eSBQb2xpY3kgZGlyZWN0aXZl
OiAiKSk7Ci0gICAgcmV0dXJuIGNoZWNrSW5saW5lQW5kUmVwb3J0VmlvbGF0aW9uKG9wZXJhdGl2
ZURpcmVjdGl2ZShtX3NjcmlwdFNyYy5nZXQoKSksIGNvbnNvbGVNZXNzYWdlKTsKKyAgICByZXR1
cm4gY2hlY2tJbmxpbmVBbmRSZXBvcnRWaW9sYXRpb24ob3BlcmF0aXZlRGlyZWN0aXZlKG1fc2Ny
aXB0U3JjLmdldCgpKSwgY29uc29sZU1lc3NhZ2UsIGNvbnRleHRVUkwsIGNvbnRleHRMaW5lKTsK
IH0KIAotYm9vbCBDU1BEaXJlY3RpdmVMaXN0OjphbGxvd0lubGluZUV2ZW50SGFuZGxlcnMoKSBj
b25zdAorYm9vbCBDU1BEaXJlY3RpdmVMaXN0OjphbGxvd0lubGluZUV2ZW50SGFuZGxlcnMoY29u
c3QgU3RyaW5nJiBjb250ZXh0VVJMLCBjb25zdCBXVEY6Ok9yZGluYWxOdW1iZXImIGNvbnRleHRM
aW5lKSBjb25zdAogewogICAgIERFRklORV9TVEFUSUNfTE9DQUwoU3RyaW5nLCBjb25zb2xlTWVz
c2FnZSwgKCJSZWZ1c2VkIHRvIGV4ZWN1dGUgaW5saW5lIGV2ZW50IGhhbmRsZXIgYmVjYXVzZSBp
dCB2aW9sYXRlcyB0aGUgZm9sbG93aW5nIENvbnRlbnQgU2VjdXJpdHkgUG9saWN5IGRpcmVjdGl2
ZTogIikpOwotICAgIHJldHVybiBjaGVja0lubGluZUFuZFJlcG9ydFZpb2xhdGlvbihvcGVyYXRp
dmVEaXJlY3RpdmUobV9zY3JpcHRTcmMuZ2V0KCkpLCBjb25zb2xlTWVzc2FnZSk7CisgICAgcmV0
dXJuIGNoZWNrSW5saW5lQW5kUmVwb3J0VmlvbGF0aW9uKG9wZXJhdGl2ZURpcmVjdGl2ZShtX3Nj
cmlwdFNyYy5nZXQoKSksIGNvbnNvbGVNZXNzYWdlLCBjb250ZXh0VVJMLCBjb250ZXh0TGluZSk7
CiB9CiAKLWJvb2wgQ1NQRGlyZWN0aXZlTGlzdDo6YWxsb3dJbmxpbmVTY3JpcHQoKSBjb25zdAor
Ym9vbCBDU1BEaXJlY3RpdmVMaXN0OjphbGxvd0lubGluZVNjcmlwdChjb25zdCBTdHJpbmcmIGNv
bnRleHRVUkwsIGNvbnN0IFdURjo6T3JkaW5hbE51bWJlciYgY29udGV4dExpbmUpIGNvbnN0CiB7
CiAgICAgREVGSU5FX1NUQVRJQ19MT0NBTChTdHJpbmcsIGNvbnNvbGVNZXNzYWdlLCAoIlJlZnVz
ZWQgdG8gZXhlY3V0ZSBpbmxpbmUgc2NyaXB0IGJlY2F1c2UgaXQgdmlvbGF0ZXMgdGhlIGZvbGxv
d2luZyBDb250ZW50IFNlY3VyaXR5IFBvbGljeSBkaXJlY3RpdmU6ICIpKTsKLSAgICByZXR1cm4g
Y2hlY2tJbmxpbmVBbmRSZXBvcnRWaW9sYXRpb24ob3BlcmF0aXZlRGlyZWN0aXZlKG1fc2NyaXB0
U3JjLmdldCgpKSwgY29uc29sZU1lc3NhZ2UpOworICAgIHJldHVybiBjaGVja0lubGluZUFuZFJl
cG9ydFZpb2xhdGlvbihvcGVyYXRpdmVEaXJlY3RpdmUobV9zY3JpcHRTcmMuZ2V0KCkpLCBjb25z
b2xlTWVzc2FnZSwgY29udGV4dFVSTCwgY29udGV4dExpbmUpOwogfQogCi1ib29sIENTUERpcmVj
dGl2ZUxpc3Q6OmFsbG93SW5saW5lU3R5bGUoKSBjb25zdAorYm9vbCBDU1BEaXJlY3RpdmVMaXN0
OjphbGxvd0lubGluZVN0eWxlKGNvbnN0IFN0cmluZyYgY29udGV4dFVSTCwgY29uc3QgV1RGOjpP
cmRpbmFsTnVtYmVyJiBjb250ZXh0TGluZSkgY29uc3QKIHsKICAgICBERUZJTkVfU1RBVElDX0xP
Q0FMKFN0cmluZywgY29uc29sZU1lc3NhZ2UsICgiUmVmdXNlZCB0byBhcHBseSBpbmxpbmUgc3R5
bGUgYmVjYXVzZSBpdCB2aW9sYXRlcyB0aGUgZm9sbG93aW5nIENvbnRlbnQgU2VjdXJpdHkgUG9s
aWN5IGRpcmVjdGl2ZTogIikpOwotICAgIHJldHVybiBjaGVja0lubGluZUFuZFJlcG9ydFZpb2xh
dGlvbihvcGVyYXRpdmVEaXJlY3RpdmUobV9zdHlsZVNyYy5nZXQoKSksIGNvbnNvbGVNZXNzYWdl
KTsKKyAgICByZXR1cm4gY2hlY2tJbmxpbmVBbmRSZXBvcnRWaW9sYXRpb24ob3BlcmF0aXZlRGly
ZWN0aXZlKG1fc3R5bGVTcmMuZ2V0KCkpLCBjb25zb2xlTWVzc2FnZSwgY29udGV4dFVSTCwgY29u
dGV4dExpbmUpOwogfQogCiBib29sIENTUERpcmVjdGl2ZUxpc3Q6OmFsbG93RXZhbChQYXNzUmVm
UHRyPFNjcmlwdENhbGxTdGFjaz4gY2FsbFN0YWNrKSBjb25zdAogewogICAgIERFRklORV9TVEFU
SUNfTE9DQUwoU3RyaW5nLCBjb25zb2xlTWVzc2FnZSwgKCJSZWZ1c2VkIHRvIGV2YWx1YXRlIHNj
cmlwdCBiZWNhdXNlIGl0IHZpb2xhdGVzIHRoZSBmb2xsb3dpbmcgQ29udGVudCBTZWN1cml0eSBQ
b2xpY3kgZGlyZWN0aXZlOiAiKSk7Ci0gICAgcmV0dXJuIGNoZWNrRXZhbEFuZFJlcG9ydFZpb2xh
dGlvbihvcGVyYXRpdmVEaXJlY3RpdmUobV9zY3JpcHRTcmMuZ2V0KCkpLCBjb25zb2xlTWVzc2Fn
ZSwgY2FsbFN0YWNrKTsKKyAgICByZXR1cm4gY2hlY2tFdmFsQW5kUmVwb3J0VmlvbGF0aW9uKG9w
ZXJhdGl2ZURpcmVjdGl2ZShtX3NjcmlwdFNyYy5nZXQoKSksIGNvbnNvbGVNZXNzYWdlLCBTdHJp
bmcoKSwgV1RGOjpPcmRpbmFsTnVtYmVyOjpiZWZvcmVGaXJzdCgpLCBjYWxsU3RhY2spOwogfQog
CiBib29sIENTUERpcmVjdGl2ZUxpc3Q6OmFsbG93U2NyaXB0RnJvbVNvdXJjZShjb25zdCBLVVJM
JiB1cmwpIGNvbnN0CkBAIC05MjMsMjEgKzkyNSwyMSBAQCBDb250ZW50U2VjdXJpdHlQb2xpY3k6
OkhlYWRlclR5cGUgQ29udGVudFNlY3VyaXR5UG9saWN5OjpkZXByZWNhdGVkSGVhZGVyVHlwZSgp
CiAgICAgcmV0dXJuIG1fcG9saWNpZXMuaXNFbXB0eSgpID8gRW5mb3JjZVBvbGljeSA6IG1fcG9s
aWNpZXNbMF0tPmhlYWRlclR5cGUoKTsKIH0KIAotdGVtcGxhdGU8Ym9vbCAoQ1NQRGlyZWN0aXZl
TGlzdDo6KmFsbG93ZWQpKCkgY29uc3Q+Ci1ib29sIGlzQWxsb3dlZEJ5QWxsKGNvbnN0IENTUERp
cmVjdGl2ZUxpc3RWZWN0b3ImIHBvbGljaWVzKQordGVtcGxhdGU8Ym9vbCAoQ1NQRGlyZWN0aXZl
TGlzdDo6KmFsbG93ZWQpKFBhc3NSZWZQdHI8U2NyaXB0Q2FsbFN0YWNrPikgY29uc3Q+Citib29s
IGlzQWxsb3dlZEJ5QWxsV2l0aENhbGxTdGFjayhjb25zdCBDU1BEaXJlY3RpdmVMaXN0VmVjdG9y
JiBwb2xpY2llcywgUGFzc1JlZlB0cjxTY3JpcHRDYWxsU3RhY2s+IGNhbGxTdGFjaykKIHsKICAg
ICBmb3IgKHNpemVfdCBpID0gMDsgaSA8IHBvbGljaWVzLnNpemUoKTsgKytpKSB7Ci0gICAgICAg
IGlmICghKHBvbGljaWVzW2ldLmdldCgpLT4qYWxsb3dlZCkoKSkKKyAgICAgICAgaWYgKCEocG9s
aWNpZXNbaV0uZ2V0KCktPiphbGxvd2VkKShjYWxsU3RhY2spKQogICAgICAgICAgICAgcmV0dXJu
IGZhbHNlOwogICAgIH0KICAgICByZXR1cm4gdHJ1ZTsKIH0KIAotdGVtcGxhdGU8Ym9vbCAoQ1NQ
RGlyZWN0aXZlTGlzdDo6KmFsbG93ZWQpKFBhc3NSZWZQdHI8U2NyaXB0Q2FsbFN0YWNrPikgY29u
c3Q+Ci1ib29sIGlzQWxsb3dlZEJ5QWxsV2l0aENhbGxTdGFjayhjb25zdCBDU1BEaXJlY3RpdmVM
aXN0VmVjdG9yJiBwb2xpY2llcywgUGFzc1JlZlB0cjxTY3JpcHRDYWxsU3RhY2s+IGNhbGxTdGFj
aykKK3RlbXBsYXRlPGJvb2wgKENTUERpcmVjdGl2ZUxpc3Q6OiphbGxvd2VkKShjb25zdCBTdHJp
bmcmLCBjb25zdCBXVEY6Ok9yZGluYWxOdW1iZXImKSBjb25zdD4KK2Jvb2wgaXNBbGxvd2VkQnlB
bGxXaXRoQ29udGV4dChjb25zdCBDU1BEaXJlY3RpdmVMaXN0VmVjdG9yJiBwb2xpY2llcywgY29u
c3QgU3RyaW5nJiBjb250ZXh0VVJMLCBjb25zdCBXVEY6Ok9yZGluYWxOdW1iZXImIGNvbnRleHRM
aW5lKQogewogICAgIGZvciAoc2l6ZV90IGkgPSAwOyBpIDwgcG9saWNpZXMuc2l6ZSgpOyArK2kp
IHsKLSAgICAgICAgaWYgKCEocG9saWNpZXNbaV0uZ2V0KCktPiphbGxvd2VkKShjYWxsU3RhY2sp
KQorICAgICAgICBpZiAoIShwb2xpY2llc1tpXS5nZXQoKS0+KmFsbG93ZWQpKGNvbnRleHRVUkws
IGNvbnRleHRMaW5lKSkKICAgICAgICAgICAgIHJldHVybiBmYWxzZTsKICAgICB9CiAgICAgcmV0
dXJuIHRydWU7CkBAIC05NTMsMjYgKzk1NSwyNiBAQCBib29sIGlzQWxsb3dlZEJ5QWxsV2l0aFVS
TChjb25zdCBDU1BEaXJlY3RpdmVMaXN0VmVjdG9yJiBwb2xpY2llcywgY29uc3QgS1VSTCYgdQog
ICAgIHJldHVybiB0cnVlOwogfQogCi1ib29sIENvbnRlbnRTZWN1cml0eVBvbGljeTo6YWxsb3dK
YXZhU2NyaXB0VVJMcygpIGNvbnN0Citib29sIENvbnRlbnRTZWN1cml0eVBvbGljeTo6YWxsb3dK
YXZhU2NyaXB0VVJMcyhjb25zdCBTdHJpbmcmIGNvbnRleHRVUkwsIGNvbnN0IFdURjo6T3JkaW5h
bE51bWJlciYgY29udGV4dExpbmUpIGNvbnN0CiB7Ci0gICAgcmV0dXJuIGlzQWxsb3dlZEJ5QWxs
PCZDU1BEaXJlY3RpdmVMaXN0OjphbGxvd0phdmFTY3JpcHRVUkxzPihtX3BvbGljaWVzKTsKKyAg
ICByZXR1cm4gaXNBbGxvd2VkQnlBbGxXaXRoQ29udGV4dDwmQ1NQRGlyZWN0aXZlTGlzdDo6YWxs
b3dKYXZhU2NyaXB0VVJMcz4obV9wb2xpY2llcywgY29udGV4dFVSTCwgY29udGV4dExpbmUpOwog
fQogCi1ib29sIENvbnRlbnRTZWN1cml0eVBvbGljeTo6YWxsb3dJbmxpbmVFdmVudEhhbmRsZXJz
KCkgY29uc3QKK2Jvb2wgQ29udGVudFNlY3VyaXR5UG9saWN5OjphbGxvd0lubGluZUV2ZW50SGFu
ZGxlcnMoY29uc3QgU3RyaW5nJiBjb250ZXh0VVJMLCBjb25zdCBXVEY6Ok9yZGluYWxOdW1iZXIm
IGNvbnRleHRMaW5lKSBjb25zdAogewotICAgIHJldHVybiBpc0FsbG93ZWRCeUFsbDwmQ1NQRGly
ZWN0aXZlTGlzdDo6YWxsb3dJbmxpbmVFdmVudEhhbmRsZXJzPihtX3BvbGljaWVzKTsKKyAgICBy
ZXR1cm4gaXNBbGxvd2VkQnlBbGxXaXRoQ29udGV4dDwmQ1NQRGlyZWN0aXZlTGlzdDo6YWxsb3dJ
bmxpbmVFdmVudEhhbmRsZXJzPihtX3BvbGljaWVzLCBjb250ZXh0VVJMLCBjb250ZXh0TGluZSk7
CiB9CiAKLWJvb2wgQ29udGVudFNlY3VyaXR5UG9saWN5OjphbGxvd0lubGluZVNjcmlwdCgpIGNv
bnN0Citib29sIENvbnRlbnRTZWN1cml0eVBvbGljeTo6YWxsb3dJbmxpbmVTY3JpcHQoY29uc3Qg
U3RyaW5nJiBjb250ZXh0VVJMLCBjb25zdCBXVEY6Ok9yZGluYWxOdW1iZXImIGNvbnRleHRMaW5l
KSBjb25zdAogewotICAgIHJldHVybiBpc0FsbG93ZWRCeUFsbDwmQ1NQRGlyZWN0aXZlTGlzdDo6
YWxsb3dJbmxpbmVTY3JpcHQ+KG1fcG9saWNpZXMpOworICAgIHJldHVybiBpc0FsbG93ZWRCeUFs
bFdpdGhDb250ZXh0PCZDU1BEaXJlY3RpdmVMaXN0OjphbGxvd0lubGluZVNjcmlwdD4obV9wb2xp
Y2llcywgY29udGV4dFVSTCwgY29udGV4dExpbmUpOwogfQogCi1ib29sIENvbnRlbnRTZWN1cml0
eVBvbGljeTo6YWxsb3dJbmxpbmVTdHlsZSgpIGNvbnN0Citib29sIENvbnRlbnRTZWN1cml0eVBv
bGljeTo6YWxsb3dJbmxpbmVTdHlsZShjb25zdCBTdHJpbmcmIGNvbnRleHRVUkwsIGNvbnN0IFdU
Rjo6T3JkaW5hbE51bWJlciYgY29udGV4dExpbmUpIGNvbnN0CiB7CiAgICAgaWYgKG1fb3ZlcnJp
ZGVJbmxpbmVTdHlsZUFsbG93ZWQpCiAgICAgICAgIHJldHVybiB0cnVlOwotICAgIHJldHVybiBp
c0FsbG93ZWRCeUFsbDwmQ1NQRGlyZWN0aXZlTGlzdDo6YWxsb3dJbmxpbmVTdHlsZT4obV9wb2xp
Y2llcyk7CisgICAgcmV0dXJuIGlzQWxsb3dlZEJ5QWxsV2l0aENvbnRleHQ8JkNTUERpcmVjdGl2
ZUxpc3Q6OmFsbG93SW5saW5lU3R5bGU+KG1fcG9saWNpZXMsIGNvbnRleHRVUkwsIGNvbnRleHRM
aW5lKTsKIH0KIAogYm9vbCBDb250ZW50U2VjdXJpdHlQb2xpY3k6OmFsbG93RXZhbChQYXNzUmVm
UHRyPFNjcmlwdENhbGxTdGFjaz4gY2FsbFN0YWNrKSBjb25zdApkaWZmIC0tZ2l0IGEvU291cmNl
L1dlYkNvcmUvcGFnZS9Db250ZW50U2VjdXJpdHlQb2xpY3kuaCBiL1NvdXJjZS9XZWJDb3JlL3Bh
Z2UvQ29udGVudFNlY3VyaXR5UG9saWN5LmgKaW5kZXggMTljNDY1ZTNiMDBlY2EyYzM5NzgwNTY4
ZjY1Yzg1NzJiMWQ3NzNkYS4uMGYyMWFmMWZhZWY2YzllMDE4YzNhMWU4NGQ5NjBmNGIxM2I4Y2Fk
MCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGFnZS9Db250ZW50U2VjdXJpdHlQb2xpY3ku
aAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wYWdlL0NvbnRlbnRTZWN1cml0eVBvbGljeS5oCkBAIC0z
MSw2ICszMSwxMiBAQAogI2luY2x1ZGUgPHd0Zi9WZWN0b3IuaD4KICNpbmNsdWRlIDx3dGYvdGV4
dC9XVEZTdHJpbmcuaD4KIAorbmFtZXNwYWNlIFdURiB7CisKK2NsYXNzIE9yZGluYWxOdW1iZXI7
CisKK30KKwogbmFtZXNwYWNlIFdlYkNvcmUgewogCiBjbGFzcyBDU1BEaXJlY3RpdmVMaXN0OwpA
QCAtNjIsMTAgKzY4LDEwIEBAIHB1YmxpYzoKICAgICBjb25zdCBTdHJpbmcmIGRlcHJlY2F0ZWRI
ZWFkZXIoKSBjb25zdDsKICAgICBIZWFkZXJUeXBlIGRlcHJlY2F0ZWRIZWFkZXJUeXBlKCkgY29u
c3Q7CiAKLSAgICBib29sIGFsbG93SmF2YVNjcmlwdFVSTHMoKSBjb25zdDsKLSAgICBib29sIGFs
bG93SW5saW5lRXZlbnRIYW5kbGVycygpIGNvbnN0OwotICAgIGJvb2wgYWxsb3dJbmxpbmVTY3Jp
cHQoKSBjb25zdDsKLSAgICBib29sIGFsbG93SW5saW5lU3R5bGUoKSBjb25zdDsKKyAgICBib29s
IGFsbG93SmF2YVNjcmlwdFVSTHMoY29uc3QgU3RyaW5nJiBjb250ZXh0VVJMLCBjb25zdCBXVEY6
Ok9yZGluYWxOdW1iZXImIGNvbnRleHRMaW5lKSBjb25zdDsKKyAgICBib29sIGFsbG93SW5saW5l
RXZlbnRIYW5kbGVycyhjb25zdCBTdHJpbmcmIGNvbnRleHRVUkwsIGNvbnN0IFdURjo6T3JkaW5h
bE51bWJlciYgY29udGV4dExpbmUpIGNvbnN0OworICAgIGJvb2wgYWxsb3dJbmxpbmVTY3JpcHQo
Y29uc3QgU3RyaW5nJiBjb250ZXh0VVJMLCBjb25zdCBXVEY6Ok9yZGluYWxOdW1iZXImIGNvbnRl
eHRMaW5lKSBjb25zdDsKKyAgICBib29sIGFsbG93SW5saW5lU3R5bGUoY29uc3QgU3RyaW5nJiBj
b250ZXh0VVJMLCBjb25zdCBXVEY6Ok9yZGluYWxOdW1iZXImIGNvbnRleHRMaW5lKSBjb25zdDsK
ICAgICBib29sIGFsbG93RXZhbChQYXNzUmVmUHRyPFNjcmlwdENhbGxTdGFjaz4pIGNvbnN0Owog
CiAgICAgYm9vbCBhbGxvd1NjcmlwdEZyb21Tb3VyY2UoY29uc3QgS1VSTCYpIGNvbnN0OwpkaWZm
IC0tZ2l0IGEvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCmlu
ZGV4IGE3ZWM3NGE0ZjllNTg4NzIwMjYxNDg3OTUyNTM3N2RlM2VjMzA5YTMuLjJkZWQ1MGMzZGE0
MzE5N2M1NWY4NGZiZjljZGQwMDkxYjUyZTk1ZmEgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL0No
YW5nZUxvZworKysgYi9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKQEAgLTEsMyArMSwzMSBAQAorMjAx
Mi0wNS0yMiAgTWlrZSBXZXN0ICA8bWt3c3RAY2hyb21pdW0ub3JnPgorCisgICAgICAgIElubGlu
ZSBzY3JpcHQgYW5kIHN0eWxlIGJsb2NrZWQgYnkgQ29udGVudCBTZWN1cml0eSBQb2xpY3kgc2hv
dWxkIHByb3ZpZGUgbW9yZSBkZXRhaWxlZCBjb25zb2xlIGVycm9ycy4KKyAgICAgICAgaHR0cHM6
Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTg2ODQ4CisKKyAgICAgICAgUmV2aWV3
ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgKiBodHRwL3Rlc3RzL3NlY3VyaXR5L2Nv
bnRlbnRTZWN1cml0eVBvbGljeS9jb21iaW5lLW11bHRpcGxlLXBvbGljaWVzLWV4cGVjdGVkLnR4
dDoKKyAgICAgICAgKiBodHRwL3Rlc3RzL3NlY3VyaXR5L2NvbnRlbnRTZWN1cml0eVBvbGljeS9k
ZWZhdWx0LXNyYy1pbmxpbmUtYmxvY2tlZC1leHBlY3RlZC50eHQ6CisgICAgICAgICogaHR0cC90
ZXN0cy9zZWN1cml0eS9jb250ZW50U2VjdXJpdHlQb2xpY3kvaW5qZWN0ZWQtaW5saW5lLXNjcmlw
dC1hbGxvd2VkLWV4cGVjdGVkLnR4dDogQWRkZWQuCisgICAgICAgICogaHR0cC90ZXN0cy9zZWN1
cml0eS9jb250ZW50U2VjdXJpdHlQb2xpY3kvaW5qZWN0ZWQtaW5saW5lLXNjcmlwdC1hbGxvd2Vk
Lmh0bWw6IEFkZGVkLgorICAgICAgICAqIGh0dHAvdGVzdHMvc2VjdXJpdHkvY29udGVudFNlY3Vy
aXR5UG9saWN5L2luamVjdGVkLWlubGluZS1zY3JpcHQtYmxvY2tlZC1leHBlY3RlZC50eHQ6IEFk
ZGVkLgorICAgICAgICAqIGh0dHAvdGVzdHMvc2VjdXJpdHkvY29udGVudFNlY3VyaXR5UG9saWN5
L2luamVjdGVkLWlubGluZS1zY3JpcHQtYmxvY2tlZC5odG1sOiBBZGRlZC4KKyAgICAgICAgKiBo
dHRwL3Rlc3RzL3NlY3VyaXR5L2NvbnRlbnRTZWN1cml0eVBvbGljeS9pbmxpbmUtc2NyaXB0LWJs
b2NrZWQtZXhwZWN0ZWQudHh0OgorICAgICAgICAqIGh0dHAvdGVzdHMvc2VjdXJpdHkvY29udGVu
dFNlY3VyaXR5UG9saWN5L2lubGluZS1zY3JpcHQtYmxvY2tlZC1nb29meS1leHBlY3RlZC50eHQ6
CisgICAgICAgICogaHR0cC90ZXN0cy9zZWN1cml0eS9jb250ZW50U2VjdXJpdHlQb2xpY3kvaW5s
aW5lLXNjcmlwdC1ibG9ja2VkLWphdmFzY3JpcHQtdXJsLWV4cGVjdGVkLnR4dDoKKyAgICAgICAg
KiBodHRwL3Rlc3RzL3NlY3VyaXR5L2NvbnRlbnRTZWN1cml0eVBvbGljeS9pbmxpbmUtc3R5bGUt
YXR0cmlidXRlLWJsb2NrZWQtZXhwZWN0ZWQudHh0OgorICAgICAgICAqIGh0dHAvdGVzdHMvc2Vj
dXJpdHkvY29udGVudFNlY3VyaXR5UG9saWN5L2lubGluZS1zdHlsZS1ibG9ja2VkLWV4cGVjdGVk
LnR4dDoKKyAgICAgICAgKiBodHRwL3Rlc3RzL3NlY3VyaXR5L2NvbnRlbnRTZWN1cml0eVBvbGlj
eS9qYXZhc2NyaXB0LXVybC1ibG9ja2VkLWV4cGVjdGVkLnR4dDoKKyAgICAgICAgKiBodHRwL3Rl
c3RzL3NlY3VyaXR5L2NvbnRlbnRTZWN1cml0eVBvbGljeS9yZXBvcnQtYW5kLWVuZm9yY2UtZXhw
ZWN0ZWQudHh0OgorICAgICAgICAqIGh0dHAvdGVzdHMvc2VjdXJpdHkvY29udGVudFNlY3VyaXR5
UG9saWN5L3JlcG9ydC1vbmx5LWV4cGVjdGVkLnR4dDoKKyAgICAgICAgKiBodHRwL3Rlc3RzL3Nl
Y3VyaXR5L2NvbnRlbnRTZWN1cml0eVBvbGljeS9yZXBvcnQtb25seS1mcm9tLWhlYWRlci1leHBl
Y3RlZC50eHQ6CisgICAgICAgICogaHR0cC90ZXN0cy9zZWN1cml0eS9jb250ZW50U2VjdXJpdHlQ
b2xpY3kvcmVwb3J0LXVyaS1leHBlY3RlZC50eHQ6CisgICAgICAgICogaHR0cC90ZXN0cy9zZWN1
cml0eS9jb250ZW50U2VjdXJpdHlQb2xpY3kvcmVwb3J0LXVyaS1mcm9tLWNoaWxkLWZyYW1lLWV4
cGVjdGVkLnR4dDoKKyAgICAgICAgKiBodHRwL3Rlc3RzL3NlY3VyaXR5L2NvbnRlbnRTZWN1cml0
eVBvbGljeS9yZXNvdXJjZXMvaW5qZWN0LXNjcmlwdC5qczogQWRkZWQuCisgICAgICAgICogaHR0
cC90ZXN0cy9zZWN1cml0eS9jb250ZW50U2VjdXJpdHlQb2xpY3kvc2NyaXB0LXNyYy1ub25lLWlu
bGluZS1ldmVudC1leHBlY3RlZC50eHQ6CisgICAgICAgICogaHR0cC90ZXN0cy9zZWN1cml0eS9j
b250ZW50U2VjdXJpdHlQb2xpY3kvc3JjZG9jLWRvZXNudC1ieXBhc3Mtc2NyaXB0LXNyYy1leHBl
Y3RlZC50eHQ6CisKIDIwMTItMDUtMjIgIENocmlzdG9waGUgRHVtZXogIDxjaHJpc3RvcGhlLmR1
bWV6QGludGVsLmNvbT4KIAogICAgICAgICBbRUZMXSBUZXN0IGV4cGVjdGF0aW9ucyBuZWVkIHVw
ZGF0aW5nCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3NlY3VyaXR5L2NvbnRl
bnRTZWN1cml0eVBvbGljeS9jb21iaW5lLW11bHRpcGxlLXBvbGljaWVzLWV4cGVjdGVkLnR4dCBi
L0xheW91dFRlc3RzL2h0dHAvdGVzdHMvc2VjdXJpdHkvY29udGVudFNlY3VyaXR5UG9saWN5L2Nv
bWJpbmUtbXVsdGlwbGUtcG9saWNpZXMtZXhwZWN0ZWQudHh0CmluZGV4IDc1NjA0MTkwZmIzZWIy
MjY4MDNlZDAwNzM3MWQwYjY2NzRjNDJjODguLjAxMjRmZThiYWI5ZTRmMTQxZDdlOTcyYWQ2ZGY1
ODRhMTE5OTExM2MgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvc2VjdXJpdHkv
Y29udGVudFNlY3VyaXR5UG9saWN5L2NvbWJpbmUtbXVsdGlwbGUtcG9saWNpZXMtZXhwZWN0ZWQu
dHh0CisrKyBiL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvc2VjdXJpdHkvY29udGVudFNlY3VyaXR5
UG9saWN5L2NvbWJpbmUtbXVsdGlwbGUtcG9saWNpZXMtZXhwZWN0ZWQudHh0CkBAIC0xLDUgKzEs
NSBAQAotQ09OU09MRSBNRVNTQUdFOiBSZWZ1c2VkIHRvIGV4ZWN1dGUgaW5saW5lIHNjcmlwdCBi
ZWNhdXNlIGl0IHZpb2xhdGVzIHRoZSBmb2xsb3dpbmcgQ29udGVudCBTZWN1cml0eSBQb2xpY3kg
ZGlyZWN0aXZlOiAic2NyaXB0LXNyYyAnc2VsZiciLgorQ09OU09MRSBNRVNTQUdFOiBsaW5lIDEx
OiBSZWZ1c2VkIHRvIGV4ZWN1dGUgaW5saW5lIHNjcmlwdCBiZWNhdXNlIGl0IHZpb2xhdGVzIHRo
ZSBmb2xsb3dpbmcgQ29udGVudCBTZWN1cml0eSBQb2xpY3kgZGlyZWN0aXZlOiAic2NyaXB0LXNy
YyAnc2VsZiciLgogCi1DT05TT0xFIE1FU1NBR0U6IFJlZnVzZWQgdG8gYXBwbHkgaW5saW5lIHN0
eWxlIGJlY2F1c2UgaXQgdmlvbGF0ZXMgdGhlIGZvbGxvd2luZyBDb250ZW50IFNlY3VyaXR5IFBv
bGljeSBkaXJlY3RpdmU6ICJzdHlsZS1zcmMgJ25vbmUnIi4KK0NPTlNPTEUgTUVTU0FHRTogbGlu
ZSAxNDogUmVmdXNlZCB0byBhcHBseSBpbmxpbmUgc3R5bGUgYmVjYXVzZSBpdCB2aW9sYXRlcyB0
aGUgZm9sbG93aW5nIENvbnRlbnQgU2VjdXJpdHkgUG9saWN5IGRpcmVjdGl2ZTogInN0eWxlLXNy
YyAnbm9uZSciLgogCiBUaGlzIHRlc3QgY2hlY2tzIHRoYXQgd2UgZW5mb3JjZSBhbGwgdGhlIHN1
cHBsaWVkIHBvbGljaWVzLiBUaGlzIHRlc3QgcGFzc2VzIGlmIGl0IGRvZXNuJ3QgYWxlcnQgZmFp
bCBhbmQgaWYgdGhlIHN0eWxlIGRvZXNuJ3QgYXBwbHkuCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0
cy9odHRwL3Rlc3RzL3NlY3VyaXR5L2NvbnRlbnRTZWN1cml0eVBvbGljeS9kZWZhdWx0LXNyYy1p
bmxpbmUtYmxvY2tlZC1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3NlY3Vy
aXR5L2NvbnRlbnRTZWN1cml0eVBvbGljeS9kZWZhdWx0LXNyYy1pbmxpbmUtYmxvY2tlZC1leHBl
Y3RlZC50eHQKaW5kZXggZDY4NWNhZGQyOTVhOTFmNGRmMDQ2NDY5NTIyYWE4YjlhMzExYTg4YS4u
NTI1ZGQ3NTVkY2Q4Mjc5ZTIxMjVjNmM2MTcyZjg3NDllODZmM2UzNSAxMDA2NDQKLS0tIGEvTGF5
b3V0VGVzdHMvaHR0cC90ZXN0cy9zZWN1cml0eS9jb250ZW50U2VjdXJpdHlQb2xpY3kvZGVmYXVs
dC1zcmMtaW5saW5lLWJsb2NrZWQtZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL2h0dHAv
dGVzdHMvc2VjdXJpdHkvY29udGVudFNlY3VyaXR5UG9saWN5L2RlZmF1bHQtc3JjLWlubGluZS1i
bG9ja2VkLWV4cGVjdGVkLnR4dApAQCAtMSw1ICsxLDUgQEAKLUNPTlNPTEUgTUVTU0FHRTogUmVm
dXNlZCB0byBleGVjdXRlIGlubGluZSBzY3JpcHQgYmVjYXVzZSBpdCB2aW9sYXRlcyB0aGUgZm9s
bG93aW5nIENvbnRlbnQgU2VjdXJpdHkgUG9saWN5IGRpcmVjdGl2ZTogImRlZmF1bHQtc3JjICdz
ZWxmJyIuCitDT05TT0xFIE1FU1NBR0U6IGxpbmUgOTogUmVmdXNlZCB0byBleGVjdXRlIGlubGlu
ZSBzY3JpcHQgYmVjYXVzZSBpdCB2aW9sYXRlcyB0aGUgZm9sbG93aW5nIENvbnRlbnQgU2VjdXJp
dHkgUG9saWN5IGRpcmVjdGl2ZTogImRlZmF1bHQtc3JjICdzZWxmJyIuCiAKLUNPTlNPTEUgTUVT
U0FHRTogUmVmdXNlZCB0byBleGVjdXRlIGlubGluZSBzY3JpcHQgYmVjYXVzZSBpdCB2aW9sYXRl
cyB0aGUgZm9sbG93aW5nIENvbnRlbnQgU2VjdXJpdHkgUG9saWN5IGRpcmVjdGl2ZTogImRlZmF1
bHQtc3JjICdzZWxmJyIuCitDT05TT0xFIE1FU1NBR0U6IGxpbmUgMTI6IFJlZnVzZWQgdG8gZXhl
Y3V0ZSBpbmxpbmUgc2NyaXB0IGJlY2F1c2UgaXQgdmlvbGF0ZXMgdGhlIGZvbGxvd2luZyBDb250
ZW50IFNlY3VyaXR5IFBvbGljeSBkaXJlY3RpdmU6ICJkZWZhdWx0LXNyYyAnc2VsZiciLgogCiBU
aGlzIHRlc3QgcGFzc2VzIGlmIGl0IGRvZXNuJ3QgYWxlcnQgZmFpbC4KZGlmZiAtLWdpdCBhL0xh
eW91dFRlc3RzL2h0dHAvdGVzdHMvc2VjdXJpdHkvY29udGVudFNlY3VyaXR5UG9saWN5L2luamVj
dGVkLWlubGluZS1zY3JpcHQtYWxsb3dlZC1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9odHRw
L3Rlc3RzL3NlY3VyaXR5L2NvbnRlbnRTZWN1cml0eVBvbGljeS9pbmplY3RlZC1pbmxpbmUtc2Ny
aXB0LWFsbG93ZWQtZXhwZWN0ZWQudHh0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmFhOTg1OGJmMGU1MzZkZmI0N2Uw
ZDNiNjY0NjhhZjQ3ZjYzMzQ1ZWYKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9odHRw
L3Rlc3RzL3NlY3VyaXR5L2NvbnRlbnRTZWN1cml0eVBvbGljeS9pbmplY3RlZC1pbmxpbmUtc2Ny
aXB0LWFsbG93ZWQtZXhwZWN0ZWQudHh0CkBAIC0wLDAgKzEsMyBAQAorQUxFUlQ6IFBhc3MgMSBv
ZiAyCitBTEVSVDogUGFzcyAyIG9mIDIKKwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaHR0cC90
ZXN0cy9zZWN1cml0eS9jb250ZW50U2VjdXJpdHlQb2xpY3kvaW5qZWN0ZWQtaW5saW5lLXNjcmlw
dC1hbGxvd2VkLmh0bWwgYi9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3NlY3VyaXR5L2NvbnRlbnRT
ZWN1cml0eVBvbGljeS9pbmplY3RlZC1pbmxpbmUtc2NyaXB0LWFsbG93ZWQuaHRtbApuZXcgZmls
ZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwLi5jZWIyN2Q1YmFmYjcyNWQxYzU0NTdiNzVjYmNjYTJiNzJmZmEzNWNlCi0tLSAvZGV2L251
bGwKKysrIGIvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9zZWN1cml0eS9jb250ZW50U2VjdXJpdHlQ
b2xpY3kvaW5qZWN0ZWQtaW5saW5lLXNjcmlwdC1hbGxvd2VkLmh0bWwKQEAgLTAsMCArMSwxMCBA
QAorPCFET0NUWVBFIGh0bWw+Cis8aHRtbD4KKzxoZWFkPgorPG1ldGEgaHR0cC1lcXVpdj0iWC1X
ZWJLaXQtQ1NQIiBjb250ZW50PSJzY3JpcHQtc3JjIGh0dHA6Ly8xMjcuMC4wLjE6KiAndW5zYWZl
LWlubGluZSciPgorPHNjcmlwdCBzcmM9InJlc291cmNlcy9kdW1wLWFzLXRleHQuanMiPjwvc2Ny
aXB0PgorPC9oZWFkPgorPGJvZHk+Cis8c2NyaXB0IHNyYz0icmVzb3VyY2VzL2luamVjdC1zY3Jp
cHQuanMiPjwvc2NyaXB0PgorPC9ib2R5PgorPC9odG1sPgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVz
dHMvaHR0cC90ZXN0cy9zZWN1cml0eS9jb250ZW50U2VjdXJpdHlQb2xpY3kvaW5qZWN0ZWQtaW5s
aW5lLXNjcmlwdC1ibG9ja2VkLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2h0dHAvdGVzdHMv
c2VjdXJpdHkvY29udGVudFNlY3VyaXR5UG9saWN5L2luamVjdGVkLWlubGluZS1zY3JpcHQtYmxv
Y2tlZC1leHBlY3RlZC50eHQKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uOTZkNmNhY2Q5YzM5ZTU5Nzc4MjNiMzRmNDAz
NjhlNDBjOTBiNDMzYwotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2h0dHAvdGVzdHMv
c2VjdXJpdHkvY29udGVudFNlY3VyaXR5UG9saWN5L2luamVjdGVkLWlubGluZS1zY3JpcHQtYmxv
Y2tlZC1leHBlY3RlZC50eHQKQEAgLTAsMCArMSw1IEBACitDT05TT0xFIE1FU1NBR0U6IGxpbmUg
ODogUmVmdXNlZCB0byBleGVjdXRlIGlubGluZSBzY3JpcHQgYmVjYXVzZSBpdCB2aW9sYXRlcyB0
aGUgZm9sbG93aW5nIENvbnRlbnQgU2VjdXJpdHkgUG9saWN5IGRpcmVjdGl2ZTogInNjcmlwdC1z
cmMgaHR0cDovLzEyNy4wLjAuMToqIi4KKworQ09OU09MRSBNRVNTQUdFOiBsaW5lIDg6IFJlZnVz
ZWQgdG8gZXhlY3V0ZSBpbmxpbmUgc2NyaXB0IGJlY2F1c2UgaXQgdmlvbGF0ZXMgdGhlIGZvbGxv
d2luZyBDb250ZW50IFNlY3VyaXR5IFBvbGljeSBkaXJlY3RpdmU6ICJzY3JpcHQtc3JjIGh0dHA6
Ly8xMjcuMC4wLjE6KiIuCisKKwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9z
ZWN1cml0eS9jb250ZW50U2VjdXJpdHlQb2xpY3kvaW5qZWN0ZWQtaW5saW5lLXNjcmlwdC1ibG9j
a2VkLmh0bWwgYi9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3NlY3VyaXR5L2NvbnRlbnRTZWN1cml0
eVBvbGljeS9pbmplY3RlZC1pbmxpbmUtc2NyaXB0LWJsb2NrZWQuaHRtbApuZXcgZmlsZSBtb2Rl
IDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi42
MTA4NjhiN2VjNzZiNTAzYWJiZDQ5M2MzMmIxNTQ0ZmQzOTM3OGJiCi0tLSAvZGV2L251bGwKKysr
IGIvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9zZWN1cml0eS9jb250ZW50U2VjdXJpdHlQb2xpY3kv
aW5qZWN0ZWQtaW5saW5lLXNjcmlwdC1ibG9ja2VkLmh0bWwKQEAgLTAsMCArMSwxMCBAQAorPCFE
T0NUWVBFIGh0bWw+Cis8aHRtbD4KKzxoZWFkPgorPG1ldGEgaHR0cC1lcXVpdj0iWC1XZWJLaXQt
Q1NQIiBjb250ZW50PSJzY3JpcHQtc3JjIGh0dHA6Ly8xMjcuMC4wLjE6KiI+Cis8c2NyaXB0IHNy
Yz0icmVzb3VyY2VzL2R1bXAtYXMtdGV4dC5qcyI+PC9zY3JpcHQ+Cis8L2hlYWQ+Cis8Ym9keT4K
KzxzY3JpcHQgc3JjPSJyZXNvdXJjZXMvaW5qZWN0LXNjcmlwdC5qcyI+PC9zY3JpcHQ+Cis8L2Jv
ZHk+Cis8L2h0bWw+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3NlY3VyaXR5
L2NvbnRlbnRTZWN1cml0eVBvbGljeS9pbmxpbmUtc2NyaXB0LWJsb2NrZWQtZXhwZWN0ZWQudHh0
IGIvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9zZWN1cml0eS9jb250ZW50U2VjdXJpdHlQb2xpY3kv
aW5saW5lLXNjcmlwdC1ibG9ja2VkLWV4cGVjdGVkLnR4dAppbmRleCAwY2VhZDYxM2VkYTc1NGU1
OTI3Y2M4ZDFjZDc4NTU0YzYzMjE2NTEyLi5lMWI2OGI1MGY3ZTc2N2NkYjc4OTFkODFmMDIyNzUw
YWY0MjgxOTdmIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3NlY3VyaXR5L2Nv
bnRlbnRTZWN1cml0eVBvbGljeS9pbmxpbmUtc2NyaXB0LWJsb2NrZWQtZXhwZWN0ZWQudHh0Cisr
KyBiL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvc2VjdXJpdHkvY29udGVudFNlY3VyaXR5UG9saWN5
L2lubGluZS1zY3JpcHQtYmxvY2tlZC1leHBlY3RlZC50eHQKQEAgLTEsNSArMSw1IEBACi1DT05T
T0xFIE1FU1NBR0U6IFJlZnVzZWQgdG8gZXhlY3V0ZSBpbmxpbmUgc2NyaXB0IGJlY2F1c2UgaXQg
dmlvbGF0ZXMgdGhlIGZvbGxvd2luZyBDb250ZW50IFNlY3VyaXR5IFBvbGljeSBkaXJlY3RpdmU6
ICJzY3JpcHQtc3JjIGh0dHA6Ly8xMjcuMC4wLjE6KiIuCitDT05TT0xFIE1FU1NBR0U6IGxpbmUg
OTogUmVmdXNlZCB0byBleGVjdXRlIGlubGluZSBzY3JpcHQgYmVjYXVzZSBpdCB2aW9sYXRlcyB0
aGUgZm9sbG93aW5nIENvbnRlbnQgU2VjdXJpdHkgUG9saWN5IGRpcmVjdGl2ZTogInNjcmlwdC1z
cmMgaHR0cDovLzEyNy4wLjAuMToqIi4KIAotQ09OU09MRSBNRVNTQUdFOiBSZWZ1c2VkIHRvIGV4
ZWN1dGUgaW5saW5lIHNjcmlwdCBiZWNhdXNlIGl0IHZpb2xhdGVzIHRoZSBmb2xsb3dpbmcgQ29u
dGVudCBTZWN1cml0eSBQb2xpY3kgZGlyZWN0aXZlOiAic2NyaXB0LXNyYyBodHRwOi8vMTI3LjAu
MC4xOioiLgorQ09OU09MRSBNRVNTQUdFOiBsaW5lIDEyOiBSZWZ1c2VkIHRvIGV4ZWN1dGUgaW5s
aW5lIHNjcmlwdCBiZWNhdXNlIGl0IHZpb2xhdGVzIHRoZSBmb2xsb3dpbmcgQ29udGVudCBTZWN1
cml0eSBQb2xpY3kgZGlyZWN0aXZlOiAic2NyaXB0LXNyYyBodHRwOi8vMTI3LjAuMC4xOioiLgog
CiBUaGlzIHRlc3QgcGFzc2VzIGlmIGl0IGRvZXNuJ3QgYWxlcnQgZmFpbC4KZGlmZiAtLWdpdCBh
L0xheW91dFRlc3RzL2h0dHAvdGVzdHMvc2VjdXJpdHkvY29udGVudFNlY3VyaXR5UG9saWN5L2lu
bGluZS1zY3JpcHQtYmxvY2tlZC1nb29meS1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9odHRw
L3Rlc3RzL3NlY3VyaXR5L2NvbnRlbnRTZWN1cml0eVBvbGljeS9pbmxpbmUtc2NyaXB0LWJsb2Nr
ZWQtZ29vZnktZXhwZWN0ZWQudHh0CmluZGV4IDViYjA0NWM3Yzk1MzZhNDI0MGZkNmU2NzdkNmRi
NmFkYjA0NjQxY2YuLjUzNThjMDU2NDI4NjQ0ZWM0YTUxZmMyZTA0YWNlZjExNTJlNGE3MDYgMTAw
NjQ0Ci0tLSBhL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvc2VjdXJpdHkvY29udGVudFNlY3VyaXR5
UG9saWN5L2lubGluZS1zY3JpcHQtYmxvY2tlZC1nb29meS1leHBlY3RlZC50eHQKKysrIGIvTGF5
b3V0VGVzdHMvaHR0cC90ZXN0cy9zZWN1cml0eS9jb250ZW50U2VjdXJpdHlQb2xpY3kvaW5saW5l
LXNjcmlwdC1ibG9ja2VkLWdvb2Z5LWV4cGVjdGVkLnR4dApAQCAtMSw3ICsxLDcgQEAKIENPTlNP
TEUgTUVTU0FHRTogVW5yZWNvZ25pemVkIENvbnRlbnQtU2VjdXJpdHktUG9saWN5IGRpcmVjdGl2
ZSAnb3B0aW9ucycuCiAKLUNPTlNPTEUgTUVTU0FHRTogUmVmdXNlZCB0byBleGVjdXRlIGlubGlu
ZSBzY3JpcHQgYmVjYXVzZSBpdCB2aW9sYXRlcyB0aGUgZm9sbG93aW5nIENvbnRlbnQgU2VjdXJp
dHkgUG9saWN5IGRpcmVjdGl2ZTogInNjcmlwdC1zcmMgaHR0cDovLzEyNy4wLjAuMToqIi4KK0NP
TlNPTEUgTUVTU0FHRTogbGluZSA5OiBSZWZ1c2VkIHRvIGV4ZWN1dGUgaW5saW5lIHNjcmlwdCBi
ZWNhdXNlIGl0IHZpb2xhdGVzIHRoZSBmb2xsb3dpbmcgQ29udGVudCBTZWN1cml0eSBQb2xpY3kg
ZGlyZWN0aXZlOiAic2NyaXB0LXNyYyBodHRwOi8vMTI3LjAuMC4xOioiLgogCi1DT05TT0xFIE1F
U1NBR0U6IFJlZnVzZWQgdG8gZXhlY3V0ZSBpbmxpbmUgZXZlbnQgaGFuZGxlciBiZWNhdXNlIGl0
IHZpb2xhdGVzIHRoZSBmb2xsb3dpbmcgQ29udGVudCBTZWN1cml0eSBQb2xpY3kgZGlyZWN0aXZl
OiAic2NyaXB0LXNyYyBodHRwOi8vMTI3LjAuMC4xOioiLgorQ09OU09MRSBNRVNTQUdFOiBsaW5l
IDc6IFJlZnVzZWQgdG8gZXhlY3V0ZSBpbmxpbmUgZXZlbnQgaGFuZGxlciBiZWNhdXNlIGl0IHZp
b2xhdGVzIHRoZSBmb2xsb3dpbmcgQ29udGVudCBTZWN1cml0eSBQb2xpY3kgZGlyZWN0aXZlOiAi
c2NyaXB0LXNyYyBodHRwOi8vMTI3LjAuMC4xOioiLgogCiBUaGlzIHRlc3QgcGFzc2VzIGlmIGl0
IGRvZXNuJ3QgYWxlcnQgZmFpbC4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2h0dHAvdGVzdHMv
c2VjdXJpdHkvY29udGVudFNlY3VyaXR5UG9saWN5L2lubGluZS1zY3JpcHQtYmxvY2tlZC1qYXZh
c2NyaXB0LXVybC1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3NlY3VyaXR5
L2NvbnRlbnRTZWN1cml0eVBvbGljeS9pbmxpbmUtc2NyaXB0LWJsb2NrZWQtamF2YXNjcmlwdC11
cmwtZXhwZWN0ZWQudHh0CmluZGV4IGVkMDYyNDQ2NzI4NWU4MTBlYTY2NDgyY2NkZjQ5YWZiNDQw
MGYxMzUuLjk1NDUwMWNkY2RkNzNhNzliYTQyYWZhZTYwZDBlZWJiZmI3ZmYxM2YgMTAwNjQ0Ci0t
LSBhL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvc2VjdXJpdHkvY29udGVudFNlY3VyaXR5UG9saWN5
L2lubGluZS1zY3JpcHQtYmxvY2tlZC1qYXZhc2NyaXB0LXVybC1leHBlY3RlZC50eHQKKysrIGIv
TGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9zZWN1cml0eS9jb250ZW50U2VjdXJpdHlQb2xpY3kvaW5s
aW5lLXNjcmlwdC1ibG9ja2VkLWphdmFzY3JpcHQtdXJsLWV4cGVjdGVkLnR4dApAQCAtNCw2ICs0
LDYgQEAgQ09OU09MRSBNRVNTQUdFOiBVbnJlY29nbml6ZWQgQ29udGVudC1TZWN1cml0eS1Qb2xp
Y3kgZGlyZWN0aXZlICdvcHRpb25zJy4KIAogQ09OU09MRSBNRVNTQUdFOiBVbnJlY29nbml6ZWQg
Q29udGVudC1TZWN1cml0eS1Qb2xpY3kgZGlyZWN0aXZlICdvcHRpb25zJy4KIAotQ09OU09MRSBN
RVNTQUdFOiBSZWZ1c2VkIHRvIGV4ZWN1dGUgSmF2YVNjcmlwdCBVUkwgYmVjYXVzZSBpdCB2aW9s
YXRlcyB0aGUgZm9sbG93aW5nIENvbnRlbnQgU2VjdXJpdHkgUG9saWN5IGRpcmVjdGl2ZTogInNj
cmlwdC1zcmMgaHR0cDovLzEyNy4wLjAuMToqIi4KK0NPTlNPTEUgTUVTU0FHRTogbGluZSAxOiBS
ZWZ1c2VkIHRvIGV4ZWN1dGUgSmF2YVNjcmlwdCBVUkwgYmVjYXVzZSBpdCB2aW9sYXRlcyB0aGUg
Zm9sbG93aW5nIENvbnRlbnQgU2VjdXJpdHkgUG9saWN5IGRpcmVjdGl2ZTogInNjcmlwdC1zcmMg
aHR0cDovLzEyNy4wLjAuMToqIi4KIAogVGhpcyB0ZXN0IHBhc3NlcyBpZiBpdCBkb2Vzbid0IGFs
ZXJ0IGZhaWwuIApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9zZWN1cml0eS9j
b250ZW50U2VjdXJpdHlQb2xpY3kvaW5saW5lLXN0eWxlLWF0dHJpYnV0ZS1ibG9ja2VkLWV4cGVj
dGVkLnR4dCBiL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvc2VjdXJpdHkvY29udGVudFNlY3VyaXR5
UG9saWN5L2lubGluZS1zdHlsZS1hdHRyaWJ1dGUtYmxvY2tlZC1leHBlY3RlZC50eHQKaW5kZXgg
NzMyNTQ2MjUxMGE1YjY3OWIxMGRmOTUwMzhiZTJiNTg2NzkxOThmMS4uZTdhNjg4MzE2ZDNkY2Fi
ZTMzZTgxY2MzZGYzNjM1ZGRlNTE4MTNlZSAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaHR0cC90
ZXN0cy9zZWN1cml0eS9jb250ZW50U2VjdXJpdHlQb2xpY3kvaW5saW5lLXN0eWxlLWF0dHJpYnV0
ZS1ibG9ja2VkLWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3NlY3Vy
aXR5L2NvbnRlbnRTZWN1cml0eVBvbGljeS9pbmxpbmUtc3R5bGUtYXR0cmlidXRlLWJsb2NrZWQt
ZXhwZWN0ZWQudHh0CkBAIC0xLDMgKzEsMyBAQAotQ09OU09MRSBNRVNTQUdFOiBSZWZ1c2VkIHRv
IGFwcGx5IGlubGluZSBzdHlsZSBiZWNhdXNlIGl0IHZpb2xhdGVzIHRoZSBmb2xsb3dpbmcgQ29u
dGVudCBTZWN1cml0eSBQb2xpY3kgZGlyZWN0aXZlOiAic3R5bGUtc3JjICdub25lJyIuCitDT05T
T0xFIE1FU1NBR0U6IGxpbmUgMTA6IFJlZnVzZWQgdG8gYXBwbHkgaW5saW5lIHN0eWxlIGJlY2F1
c2UgaXQgdmlvbGF0ZXMgdGhlIGZvbGxvd2luZyBDb250ZW50IFNlY3VyaXR5IFBvbGljeSBkaXJl
Y3RpdmU6ICJzdHlsZS1zcmMgJ25vbmUnIi4KIAogUEFTUwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVz
dHMvaHR0cC90ZXN0cy9zZWN1cml0eS9jb250ZW50U2VjdXJpdHlQb2xpY3kvaW5saW5lLXN0eWxl
LWJsb2NrZWQtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9zZWN1cml0eS9j
b250ZW50U2VjdXJpdHlQb2xpY3kvaW5saW5lLXN0eWxlLWJsb2NrZWQtZXhwZWN0ZWQudHh0Cmlu
ZGV4IDczMjU0NjI1MTBhNWI2NzliMTBkZjk1MDM4YmUyYjU4Njc5MTk4ZjEuLjk2MzBkN2ExN2Jj
NzQxM2Q2ZTNlMjhiYWViOGMxNjQ4YjQwN2VmZWIgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2h0
dHAvdGVzdHMvc2VjdXJpdHkvY29udGVudFNlY3VyaXR5UG9saWN5L2lubGluZS1zdHlsZS1ibG9j
a2VkLWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3NlY3VyaXR5L2Nv
bnRlbnRTZWN1cml0eVBvbGljeS9pbmxpbmUtc3R5bGUtYmxvY2tlZC1leHBlY3RlZC50eHQKQEAg
LTEsMyArMSwzIEBACi1DT05TT0xFIE1FU1NBR0U6IFJlZnVzZWQgdG8gYXBwbHkgaW5saW5lIHN0
eWxlIGJlY2F1c2UgaXQgdmlvbGF0ZXMgdGhlIGZvbGxvd2luZyBDb250ZW50IFNlY3VyaXR5IFBv
bGljeSBkaXJlY3RpdmU6ICJzdHlsZS1zcmMgJ25vbmUnIi4KK0NPTlNPTEUgTUVTU0FHRTogbGlu
ZSA1OiBSZWZ1c2VkIHRvIGFwcGx5IGlubGluZSBzdHlsZSBiZWNhdXNlIGl0IHZpb2xhdGVzIHRo
ZSBmb2xsb3dpbmcgQ29udGVudCBTZWN1cml0eSBQb2xpY3kgZGlyZWN0aXZlOiAic3R5bGUtc3Jj
ICdub25lJyIuCiAKIFBBU1MKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvc2Vj
dXJpdHkvY29udGVudFNlY3VyaXR5UG9saWN5L2phdmFzY3JpcHQtdXJsLWJsb2NrZWQtZXhwZWN0
ZWQudHh0IGIvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9zZWN1cml0eS9jb250ZW50U2VjdXJpdHlQ
b2xpY3kvamF2YXNjcmlwdC11cmwtYmxvY2tlZC1leHBlY3RlZC50eHQKaW5kZXggOGUyZGMzMzMy
MTczNTJmNDg1NDQ5NDZmZTE0MmQ1OTBjOGE5N2FlMy4uMWNhOTI2MmJkNTMyMWVhNWZjZjU5N2Mw
N2UxYzMxOTA4ODlkYzJkOSAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9zZWN1
cml0eS9jb250ZW50U2VjdXJpdHlQb2xpY3kvamF2YXNjcmlwdC11cmwtYmxvY2tlZC1leHBlY3Rl
ZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9zZWN1cml0eS9jb250ZW50U2VjdXJp
dHlQb2xpY3kvamF2YXNjcmlwdC11cmwtYmxvY2tlZC1leHBlY3RlZC50eHQKQEAgLTQsNyArNCw3
IEBAIENPTlNPTEUgTUVTU0FHRTogVW5yZWNvZ25pemVkIENvbnRlbnQtU2VjdXJpdHktUG9saWN5
IGRpcmVjdGl2ZSAnYWxsb3cnLgogCiBDT05TT0xFIE1FU1NBR0U6IFVucmVjb2duaXplZCBDb250
ZW50LVNlY3VyaXR5LVBvbGljeSBkaXJlY3RpdmUgJ2FsbG93Jy4KIAotQ09OU09MRSBNRVNTQUdF
OiBSZWZ1c2VkIHRvIGV4ZWN1dGUgSmF2YVNjcmlwdCBVUkwgYmVjYXVzZSBpdCB2aW9sYXRlcyB0
aGUgZm9sbG93aW5nIENvbnRlbnQgU2VjdXJpdHkgUG9saWN5IGRpcmVjdGl2ZTogInNjcmlwdC1z
cmMgJ25vbmUnIi4KK0NPTlNPTEUgTUVTU0FHRTogbGluZSAxOiBSZWZ1c2VkIHRvIGV4ZWN1dGUg
SmF2YVNjcmlwdCBVUkwgYmVjYXVzZSBpdCB2aW9sYXRlcyB0aGUgZm9sbG93aW5nIENvbnRlbnQg
U2VjdXJpdHkgUG9saWN5IGRpcmVjdGl2ZTogInNjcmlwdC1zcmMgJ25vbmUnIi4KIAogQ09OU09M
RSBNRVNTQUdFOiBVbnJlY29nbml6ZWQgQ29udGVudC1TZWN1cml0eS1Qb2xpY3kgZGlyZWN0aXZl
ICdhbGxvdycuCiAKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvc2VjdXJpdHkv
Y29udGVudFNlY3VyaXR5UG9saWN5L3JlcG9ydC1hbmQtZW5mb3JjZS1leHBlY3RlZC50eHQgYi9M
YXlvdXRUZXN0cy9odHRwL3Rlc3RzL3NlY3VyaXR5L2NvbnRlbnRTZWN1cml0eVBvbGljeS9yZXBv
cnQtYW5kLWVuZm9yY2UtZXhwZWN0ZWQudHh0CmluZGV4IDJkM2IyYWJhNmZkY2FlYzhmODI0MzEy
YzE0N2JmNzViM2U2ZTY3YTguLjlhZWZhNGNmOTliNjNkMGExNTVhZDkzOGM2Zjg1YTZmYzlkNTE3
OWEgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvc2VjdXJpdHkvY29udGVudFNl
Y3VyaXR5UG9saWN5L3JlcG9ydC1hbmQtZW5mb3JjZS1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0
VGVzdHMvaHR0cC90ZXN0cy9zZWN1cml0eS9jb250ZW50U2VjdXJpdHlQb2xpY3kvcmVwb3J0LWFu
ZC1lbmZvcmNlLWV4cGVjdGVkLnR4dApAQCAtMSw0ICsxLDQgQEAKLUNPTlNPTEUgTUVTU0FHRTog
W1JlcG9ydCBPbmx5XSBSZWZ1c2VkIHRvIGV4ZWN1dGUgaW5saW5lIHNjcmlwdCBiZWNhdXNlIGl0
IHZpb2xhdGVzIHRoZSBmb2xsb3dpbmcgQ29udGVudCBTZWN1cml0eSBQb2xpY3kgZGlyZWN0aXZl
OiAic2NyaXB0LXNyYyAnc2VsZiciLgorQ09OU09MRSBNRVNTQUdFOiBsaW5lIDM6IFtSZXBvcnQg
T25seV0gUmVmdXNlZCB0byBleGVjdXRlIGlubGluZSBzY3JpcHQgYmVjYXVzZSBpdCB2aW9sYXRl
cyB0aGUgZm9sbG93aW5nIENvbnRlbnQgU2VjdXJpdHkgUG9saWN5IGRpcmVjdGl2ZTogInNjcmlw
dC1zcmMgJ3NlbGYnIi4KIAogQUxFUlQ6IFBBU1MKIENPTlNPTEUgTUVTU0FHRTogUmVmdXNlZCB0
byBsb2FkIHRoZSBpbWFnZSAnaHR0cDovLzEyNy4wLjAuMTo4MDAwL3NlY3VyaXR5L3Jlc291cmNl
cy9hYmUucG5nJyBiZWNhdXNlIGl0IHZpb2xhdGVzIHRoZSBmb2xsb3dpbmcgQ29udGVudCBTZWN1
cml0eSBQb2xpY3kgZGlyZWN0aXZlOiAiaW1nLXNyYyAnbm9uZSciLgpkaWZmIC0tZ2l0IGEvTGF5
b3V0VGVzdHMvaHR0cC90ZXN0cy9zZWN1cml0eS9jb250ZW50U2VjdXJpdHlQb2xpY3kvcmVwb3J0
LW9ubHktZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9zZWN1cml0eS9jb250
ZW50U2VjdXJpdHlQb2xpY3kvcmVwb3J0LW9ubHktZXhwZWN0ZWQudHh0CmluZGV4IDc0ZGM1ZDYw
Zjg4ZjkxNzJjMmI3NTA3OTE1YzU3ZWJlMDMxYjczZDIuLmExZWRmM2FlYTFhNzM4NTA4Y2YyMWJk
ZmMwODNhOWEwMjE4NTk3NTYgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvc2Vj
dXJpdHkvY29udGVudFNlY3VyaXR5UG9saWN5L3JlcG9ydC1vbmx5LWV4cGVjdGVkLnR4dAorKysg
Yi9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3NlY3VyaXR5L2NvbnRlbnRTZWN1cml0eVBvbGljeS9y
ZXBvcnQtb25seS1leHBlY3RlZC50eHQKQEAgLTEsNCArMSw0IEBACi1DT05TT0xFIE1FU1NBR0U6
IFtSZXBvcnQgT25seV0gUmVmdXNlZCB0byBleGVjdXRlIGlubGluZSBzY3JpcHQgYmVjYXVzZSBp
dCB2aW9sYXRlcyB0aGUgZm9sbG93aW5nIENvbnRlbnQgU2VjdXJpdHkgUG9saWN5IGRpcmVjdGl2
ZTogInNjcmlwdC1zcmMgJ3NlbGYnIi4KK0NPTlNPTEUgTUVTU0FHRTogbGluZSAyOiBbUmVwb3J0
IE9ubHldIFJlZnVzZWQgdG8gZXhlY3V0ZSBpbmxpbmUgc2NyaXB0IGJlY2F1c2UgaXQgdmlvbGF0
ZXMgdGhlIGZvbGxvd2luZyBDb250ZW50IFNlY3VyaXR5IFBvbGljeSBkaXJlY3RpdmU6ICJzY3Jp
cHQtc3JjICdzZWxmJyIuCiAKIEFMRVJUOiBQQVNTCiBDU1AgcmVwb3J0IHJlY2VpdmVkOgpkaWZm
IC0tZ2l0IGEvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9zZWN1cml0eS9jb250ZW50U2VjdXJpdHlQ
b2xpY3kvcmVwb3J0LW9ubHktZnJvbS1oZWFkZXItZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMv
aHR0cC90ZXN0cy9zZWN1cml0eS9jb250ZW50U2VjdXJpdHlQb2xpY3kvcmVwb3J0LW9ubHktZnJv
bS1oZWFkZXItZXhwZWN0ZWQudHh0CmluZGV4IGFjZTE2NDY4NzVhNjI3YzBjOWRmM2YyYTBlZWJh
YTU5OTM3Y2YzYjAuLmNlYzJjMjhlNzdlYzhjZjljNzI4YzFjNGZlZTgwNWNkMzM0YWVjM2QgMTAw
NjQ0Ci0tLSBhL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvc2VjdXJpdHkvY29udGVudFNlY3VyaXR5
UG9saWN5L3JlcG9ydC1vbmx5LWZyb20taGVhZGVyLWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRU
ZXN0cy9odHRwL3Rlc3RzL3NlY3VyaXR5L2NvbnRlbnRTZWN1cml0eVBvbGljeS9yZXBvcnQtb25s
eS1mcm9tLWhlYWRlci1leHBlY3RlZC50eHQKQEAgLTEsNCArMSw0IEBACi1DT05TT0xFIE1FU1NB
R0U6IFtSZXBvcnQgT25seV0gUmVmdXNlZCB0byBleGVjdXRlIGlubGluZSBzY3JpcHQgYmVjYXVz
ZSBpdCB2aW9sYXRlcyB0aGUgZm9sbG93aW5nIENvbnRlbnQgU2VjdXJpdHkgUG9saWN5IGRpcmVj
dGl2ZTogInNjcmlwdC1zcmMgJ3NlbGYnIi4KK0NPTlNPTEUgTUVTU0FHRTogbGluZSAxOiBbUmVw
b3J0IE9ubHldIFJlZnVzZWQgdG8gZXhlY3V0ZSBpbmxpbmUgc2NyaXB0IGJlY2F1c2UgaXQgdmlv
bGF0ZXMgdGhlIGZvbGxvd2luZyBDb250ZW50IFNlY3VyaXR5IFBvbGljeSBkaXJlY3RpdmU6ICJz
Y3JpcHQtc3JjICdzZWxmJyIuCiAKIEFMRVJUOiBQQVNTCiBDU1AgcmVwb3J0IHJlY2VpdmVkOgpk
aWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9zZWN1cml0eS9jb250ZW50U2VjdXJp
dHlQb2xpY3kvcmVwb3J0LXVyaS1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9odHRwL3Rlc3Rz
L3NlY3VyaXR5L2NvbnRlbnRTZWN1cml0eVBvbGljeS9yZXBvcnQtdXJpLWV4cGVjdGVkLnR4dApp
bmRleCBiODA1MGZmMjAzMDE3ZmRlOGEyYmNlZjBjNGQ3YWQxMDAzNDE2YmJkLi41NmE2ZWY2MjMx
NWQxZWFlNWFiZDBkOWU4MDE0MzQzOThjYWQ4MDBmIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9o
dHRwL3Rlc3RzL3NlY3VyaXR5L2NvbnRlbnRTZWN1cml0eVBvbGljeS9yZXBvcnQtdXJpLWV4cGVj
dGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3NlY3VyaXR5L2NvbnRlbnRTZWN1
cml0eVBvbGljeS9yZXBvcnQtdXJpLWV4cGVjdGVkLnR4dApAQCAtMSw0ICsxLDQgQEAKLUNPTlNP
TEUgTUVTU0FHRTogUmVmdXNlZCB0byBleGVjdXRlIGlubGluZSBzY3JpcHQgYmVjYXVzZSBpdCB2
aW9sYXRlcyB0aGUgZm9sbG93aW5nIENvbnRlbnQgU2VjdXJpdHkgUG9saWN5IGRpcmVjdGl2ZTog
InNjcmlwdC1zcmMgJ3NlbGYnIi4KK0NPTlNPTEUgTUVTU0FHRTogbGluZSAyOiBSZWZ1c2VkIHRv
IGV4ZWN1dGUgaW5saW5lIHNjcmlwdCBiZWNhdXNlIGl0IHZpb2xhdGVzIHRoZSBmb2xsb3dpbmcg
Q29udGVudCBTZWN1cml0eSBQb2xpY3kgZGlyZWN0aXZlOiAic2NyaXB0LXNyYyAnc2VsZiciLgog
CiBDU1AgcmVwb3J0IHJlY2VpdmVkOgogQ09OVEVOVF9UWVBFOiBhcHBsaWNhdGlvbi9qc29uCmRp
ZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3NlY3VyaXR5L2NvbnRlbnRTZWN1cml0
eVBvbGljeS9yZXBvcnQtdXJpLWZyb20tY2hpbGQtZnJhbWUtZXhwZWN0ZWQudHh0IGIvTGF5b3V0
VGVzdHMvaHR0cC90ZXN0cy9zZWN1cml0eS9jb250ZW50U2VjdXJpdHlQb2xpY3kvcmVwb3J0LXVy
aS1mcm9tLWNoaWxkLWZyYW1lLWV4cGVjdGVkLnR4dAppbmRleCAyNWRlOGUxOTc1NGEyOWFjOWZj
ZTIwNDk2MzRkN2FmMmZkMTU3OWY3Li44NDMwYzMwOTgxNWJiMTI0YjcwYjYzODcwZTQ1YzVjYjBj
NGM0MGMyIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3NlY3VyaXR5L2NvbnRl
bnRTZWN1cml0eVBvbGljeS9yZXBvcnQtdXJpLWZyb20tY2hpbGQtZnJhbWUtZXhwZWN0ZWQudHh0
CisrKyBiL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvc2VjdXJpdHkvY29udGVudFNlY3VyaXR5UG9s
aWN5L3JlcG9ydC11cmktZnJvbS1jaGlsZC1mcmFtZS1leHBlY3RlZC50eHQKQEAgLTEsNCArMSw0
IEBACi1DT05TT0xFIE1FU1NBR0U6IFJlZnVzZWQgdG8gZXhlY3V0ZSBpbmxpbmUgc2NyaXB0IGJl
Y2F1c2UgaXQgdmlvbGF0ZXMgdGhlIGZvbGxvd2luZyBDb250ZW50IFNlY3VyaXR5IFBvbGljeSBk
aXJlY3RpdmU6ICJzY3JpcHQtc3JjICdzZWxmJyIuCitDT05TT0xFIE1FU1NBR0U6IGxpbmUgMjog
UmVmdXNlZCB0byBleGVjdXRlIGlubGluZSBzY3JpcHQgYmVjYXVzZSBpdCB2aW9sYXRlcyB0aGUg
Zm9sbG93aW5nIENvbnRlbnQgU2VjdXJpdHkgUG9saWN5IGRpcmVjdGl2ZTogInNjcmlwdC1zcmMg
J3NlbGYnIi4KIAogCiAKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvc2VjdXJp
dHkvY29udGVudFNlY3VyaXR5UG9saWN5L3Jlc291cmNlcy9pbmplY3Qtc2NyaXB0LmpzIGIvTGF5
b3V0VGVzdHMvaHR0cC90ZXN0cy9zZWN1cml0eS9jb250ZW50U2VjdXJpdHlQb2xpY3kvcmVzb3Vy
Y2VzL2luamVjdC1zY3JpcHQuanMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uNzU2YmFmZmU5ZWU5ODRlNDU3NTlhMWMz
OTU0OTk2ODhhYWI4MmYxYgotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2h0dHAvdGVz
dHMvc2VjdXJpdHkvY29udGVudFNlY3VyaXR5UG9saWN5L3Jlc291cmNlcy9pbmplY3Qtc2NyaXB0
LmpzCkBAIC0wLDAgKzEsNSBAQAorZG9jdW1lbnQud3JpdGUoIjxzY3JpcHQ+YWxlcnQoJ1Bhc3Mg
MSBvZiAyJyk7PC9zY3JpcHQ+Iik7CisKK3ZhciBzID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgn
c2NyaXB0Jyk7CitzLmlubmVyVGV4dCA9ICJhbGVydCgnUGFzcyAyIG9mIDInKTsiOworZG9jdW1l
bnQuYm9keS5hcHBlbmRDaGlsZChzKTsKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2h0dHAvdGVz
dHMvc2VjdXJpdHkvY29udGVudFNlY3VyaXR5UG9saWN5L3NjcmlwdC1zcmMtbm9uZS1pbmxpbmUt
ZXZlbnQtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9zZWN1cml0eS9jb250
ZW50U2VjdXJpdHlQb2xpY3kvc2NyaXB0LXNyYy1ub25lLWlubGluZS1ldmVudC1leHBlY3RlZC50
eHQKaW5kZXggZDMxYjFjZWZjMGJmN2Y4Mjg4YTkzMTc2MWQ4MDIxMjllNjI5NTAyZi4uZmUxY2My
ZmM2ZGUwOTJhODFkZDQ1ODNlNTBkMDczNDY2MzA4MzMyMyAxMDA2NDQKLS0tIGEvTGF5b3V0VGVz
dHMvaHR0cC90ZXN0cy9zZWN1cml0eS9jb250ZW50U2VjdXJpdHlQb2xpY3kvc2NyaXB0LXNyYy1u
b25lLWlubGluZS1ldmVudC1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvaHR0cC90ZXN0
cy9zZWN1cml0eS9jb250ZW50U2VjdXJpdHlQb2xpY3kvc2NyaXB0LXNyYy1ub25lLWlubGluZS1l
dmVudC1leHBlY3RlZC50eHQKQEAgLTEsNCArMSw0IEBACi1DT05TT0xFIE1FU1NBR0U6IFJlZnVz
ZWQgdG8gZXhlY3V0ZSBpbmxpbmUgZXZlbnQgaGFuZGxlciBiZWNhdXNlIGl0IHZpb2xhdGVzIHRo
ZSBmb2xsb3dpbmcgQ29udGVudCBTZWN1cml0eSBQb2xpY3kgZGlyZWN0aXZlOiAic2NyaXB0LXNy
YyAnbm9uZSciLgorQ09OU09MRSBNRVNTQUdFOiBsaW5lIDM6IFJlZnVzZWQgdG8gZXhlY3V0ZSBp
bmxpbmUgZXZlbnQgaGFuZGxlciBiZWNhdXNlIGl0IHZpb2xhdGVzIHRoZSBmb2xsb3dpbmcgQ29u
dGVudCBTZWN1cml0eSBQb2xpY3kgZGlyZWN0aXZlOiAic2NyaXB0LXNyYyAnbm9uZSciLgogCiAg
IAogCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3NlY3VyaXR5L2NvbnRlbnRT
ZWN1cml0eVBvbGljeS9zcmNkb2MtZG9lc250LWJ5cGFzcy1zY3JpcHQtc3JjLWV4cGVjdGVkLnR4
dCBiL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvc2VjdXJpdHkvY29udGVudFNlY3VyaXR5UG9saWN5
L3NyY2RvYy1kb2VzbnQtYnlwYXNzLXNjcmlwdC1zcmMtZXhwZWN0ZWQudHh0CmluZGV4IDdhNWZk
ZTM3MGVhNmUwNGM2ZDZlNDk0MGU4ZDdhZGIwMDBiNjMxNjkuLjFhMjk0NzlkMmMyZDRiYzE1MmY1
MjdmM2MzMzAzM2ExMTg5NmUxYzEgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2h0dHAvdGVzdHMv
c2VjdXJpdHkvY29udGVudFNlY3VyaXR5UG9saWN5L3NyY2RvYy1kb2VzbnQtYnlwYXNzLXNjcmlw
dC1zcmMtZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvc2VjdXJpdHkv
Y29udGVudFNlY3VyaXR5UG9saWN5L3NyY2RvYy1kb2VzbnQtYnlwYXNzLXNjcmlwdC1zcmMtZXhw
ZWN0ZWQudHh0CkBAIC0xLDMgKzEsMyBAQAotQ09OU09MRSBNRVNTQUdFOiBSZWZ1c2VkIHRvIGV4
ZWN1dGUgaW5saW5lIHNjcmlwdCBiZWNhdXNlIGl0IHZpb2xhdGVzIHRoZSBmb2xsb3dpbmcgQ29u
dGVudCBTZWN1cml0eSBQb2xpY3kgZGlyZWN0aXZlOiAic2NyaXB0LXNyYyAnc2VsZiciLgorQ09O
U09MRSBNRVNTQUdFOiBsaW5lIDE6IFJlZnVzZWQgdG8gZXhlY3V0ZSBpbmxpbmUgc2NyaXB0IGJl
Y2F1c2UgaXQgdmlvbGF0ZXMgdGhlIGZvbGxvd2luZyBDb250ZW50IFNlY3VyaXR5IFBvbGljeSBk
aXJlY3RpdmU6ICJzY3JpcHQtc3JjICdzZWxmJyIuCiAKIFRoaXMgdGVzdCBwYXNzZXMgaWYgaXQg
ZG9lc24ndCBhbGVydCBmYWlsLiAK
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>143493</attachid>
            <date>2012-05-23 01:17:21 -0700</date>
            <delta_ts>2012-05-25 05:01:36 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-86848-20120523101720.patch</filename>
            <type>text/plain</type>
            <size>51535</size>
            <attacher name="Mike West">mkwst</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTE3OTYxCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggODE0Y2Q5ZGIyY2U5NGNk
MjY3YjIxZjEyMjE1ZmQzN2E1NTI4OGM0Zi4uNjg4MTNmODc4N2NhOGNkNDJiYWIzZTNlODc0Y2Q1
YWI3MWZkNjdhNCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDYyIEBACisyMDEyLTA1LTIzICBNaWtl
IFdlc3QgIDxta3dzdEBjaHJvbWl1bS5vcmc+CisKKyAgICAgICAgSW5saW5lIHNjcmlwdCBhbmQg
c3R5bGUgYmxvY2tlZCBieSBDb250ZW50IFNlY3VyaXR5IFBvbGljeSBzaG91bGQgcHJvdmlkZSBt
b3JlIGRldGFpbGVkIGNvbnNvbGUgZXJyb3JzLgorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0
Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9ODY4NDgKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkg
KE9PUFMhKS4KKworICAgICAgICBUaGlzIGNoYW5nZSBhZGRzIGEgVVJMIGFuZCBsaW5lIG51bWJl
ciBmb3IgY29udGV4dCB0byBlYWNoIGNhbGwgdG8KKyAgICAgICAgYENvbnRlbnRTZWN1cml0eVBv
bGljeTo6YWxsb3dJbmxpbmUqYCwgYW5kIHBpcGVzIGl0IHRocm91Z2ggdG8gdGhlCisgICAgICAg
IGNvbnNvbGUgbWVzc2FnZSBnZW5lcmF0aW9uIGluIGBDU1BEaXJlY3RpdmVMaXN0OjpyZXBvcnRW
aW9sYXRpb25gLgorCisgICAgICAgIFRlc3RzOiBodHRwL3Rlc3RzL3NlY3VyaXR5L2NvbnRlbnRT
ZWN1cml0eVBvbGljeS9pbmplY3RlZC1pbmxpbmUtc2NyaXB0LWFsbG93ZWQuaHRtbAorICAgICAg
ICAgICAgICAgaHR0cC90ZXN0cy9zZWN1cml0eS9jb250ZW50U2VjdXJpdHlQb2xpY3kvaW5qZWN0
ZWQtaW5saW5lLXNjcmlwdC1ibG9ja2VkLmh0bWwKKyAgICAgICAgICAgICAgIGh0dHAvdGVzdHMv
c2VjdXJpdHkvY29udGVudFNlY3VyaXR5UG9saWN5L2luamVjdGVkLWlubGluZS1zdHlsZS1hbGxv
d2VkLmh0bWwKKyAgICAgICAgICAgICAgIGh0dHAvdGVzdHMvc2VjdXJpdHkvY29udGVudFNlY3Vy
aXR5UG9saWN5L2luamVjdGVkLWlubGluZS1zdHlsZS1ibG9ja2VkLmh0bWwKKworICAgICAgICAq
IGJpbmRpbmdzL1NjcmlwdENvbnRyb2xsZXJCYXNlLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlNj
cmlwdENvbnRyb2xsZXI6OmV4ZWN1dGVJZkphdmFTY3JpcHRVUkwpOgorICAgICAgICAqIGJpbmRp
bmdzL2pzL0pTTGF6eUV2ZW50TGlzdGVuZXIuY3BwOgorICAgICAgICAoV2ViQ29yZTo6SlNMYXp5
RXZlbnRMaXN0ZW5lcjo6aW5pdGlhbGl6ZUpTRnVuY3Rpb24pOgorICAgICAgICAqIGJpbmRpbmdz
L3Y4L1Y4TGF6eUV2ZW50TGlzdGVuZXIuY3BwOgorICAgICAgICAoV2ViQ29yZTo6VjhMYXp5RXZl
bnRMaXN0ZW5lcjo6cHJlcGFyZUxpc3RlbmVyT2JqZWN0KToKKyAgICAgICAgKiBkb20vU2NyaXB0
RWxlbWVudC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpTY3JpcHRFbGVtZW50OjpTY3JpcHRFbGVt
ZW50KToKKyAgICAgICAgKFdlYkNvcmU6OlNjcmlwdEVsZW1lbnQ6OmV4ZWN1dGVTY3JpcHQpOgor
ICAgICAgICAqIGRvbS9TY3JpcHRFbGVtZW50Lmg6CisgICAgICAgIChTY3JpcHRFbGVtZW50KToK
KyAgICAgICAgKiBkb20vU3R5bGVFbGVtZW50LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlN0eWxl
RWxlbWVudDo6U3R5bGVFbGVtZW50KToKKyAgICAgICAgKFdlYkNvcmU6OlN0eWxlRWxlbWVudDo6
Y3JlYXRlU2hlZXQpOgorICAgICAgICAqIGRvbS9TdHlsZUVsZW1lbnQuaDoKKyAgICAgICAgKFN0
eWxlRWxlbWVudCk6CisgICAgICAgICogZG9tL1N0eWxlZEVsZW1lbnQuY3BwOgorICAgICAgICAo
V2ViQ29yZTo6U3R5bGVkRWxlbWVudDo6U3R5bGVkRWxlbWVudCk6CisgICAgICAgIChXZWJDb3Jl
KToKKyAgICAgICAgKFdlYkNvcmU6OlN0eWxlZEVsZW1lbnQ6OnN0eWxlKToKKyAgICAgICAgKFdl
YkNvcmU6OlN0eWxlZEVsZW1lbnQ6OnN0eWxlQXR0cmlidXRlQ2hhbmdlZCk6CisgICAgICAgICog
ZG9tL1N0eWxlZEVsZW1lbnQuaDoKKyAgICAgICAgKFN0eWxlZEVsZW1lbnQpOgorICAgICAgICAq
IHBhZ2UvQ29udGVudFNlY3VyaXR5UG9saWN5LmNwcDoKKyAgICAgICAgKENTUERpcmVjdGl2ZUxp
c3QpOgorICAgICAgICAoV2ViQ29yZTo6Q1NQRGlyZWN0aXZlTGlzdDo6cmVwb3J0VmlvbGF0aW9u
KToKKyAgICAgICAgKFdlYkNvcmU6OkNTUERpcmVjdGl2ZUxpc3Q6OmNoZWNrSW5saW5lQW5kUmVw
b3J0VmlvbGF0aW9uKToKKyAgICAgICAgKFdlYkNvcmU6OkNTUERpcmVjdGl2ZUxpc3Q6OmNoZWNr
RXZhbEFuZFJlcG9ydFZpb2xhdGlvbik6CisgICAgICAgIChXZWJDb3JlOjpDU1BEaXJlY3RpdmVM
aXN0OjphbGxvd0phdmFTY3JpcHRVUkxzKToKKyAgICAgICAgKFdlYkNvcmU6OkNTUERpcmVjdGl2
ZUxpc3Q6OmFsbG93SW5saW5lRXZlbnRIYW5kbGVycyk6CisgICAgICAgIChXZWJDb3JlOjpDU1BE
aXJlY3RpdmVMaXN0OjphbGxvd0lubGluZVNjcmlwdCk6CisgICAgICAgIChXZWJDb3JlOjpDU1BE
aXJlY3RpdmVMaXN0OjphbGxvd0lubGluZVN0eWxlKToKKyAgICAgICAgKFdlYkNvcmU6OkNTUERp
cmVjdGl2ZUxpc3Q6OmFsbG93RXZhbCk6CisgICAgICAgIChXZWJDb3JlKToKKyAgICAgICAgKFdl
YkNvcmU6OmlzQWxsb3dlZEJ5QWxsV2l0aENhbGxTdGFjayk6CisgICAgICAgIChXZWJDb3JlOjpp
c0FsbG93ZWRCeUFsbFdpdGhDb250ZXh0KToKKyAgICAgICAgKFdlYkNvcmU6OkNvbnRlbnRTZWN1
cml0eVBvbGljeTo6YWxsb3dKYXZhU2NyaXB0VVJMcyk6CisgICAgICAgIChXZWJDb3JlOjpDb250
ZW50U2VjdXJpdHlQb2xpY3k6OmFsbG93SW5saW5lRXZlbnRIYW5kbGVycyk6CisgICAgICAgIChX
ZWJDb3JlOjpDb250ZW50U2VjdXJpdHlQb2xpY3k6OmFsbG93SW5saW5lU2NyaXB0KToKKyAgICAg
ICAgKFdlYkNvcmU6OkNvbnRlbnRTZWN1cml0eVBvbGljeTo6YWxsb3dJbmxpbmVTdHlsZSk6Cisg
ICAgICAgICogcGFnZS9Db250ZW50U2VjdXJpdHlQb2xpY3kuaDoKKyAgICAgICAgKFdURik6CisK
IDIwMTItMDUtMjIgIFl1cnkgU2VtaWtoYXRza3kgIDx5dXJ5c0BjaHJvbWl1bS5vcmc+CiAKICAg
ICAgICAgV2ViIEluc3BlY3RvcjogYW5ub3RhdGUgSW5qZWN0ZWRTY3JpcHRTb3VyY2UuanMgZm9y
IGNsb3N1cmUgY29tcGlsZXIKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL1Nj
cmlwdENvbnRyb2xsZXJCYXNlLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL1NjcmlwdENv
bnRyb2xsZXJCYXNlLmNwcAppbmRleCA4NTUxNThhZmMzZWY3OTAyZjJlNjJlZTllOTZmMTVkMjg5
Yzc5MGMyLi45YjAwNmQyYzIwNmIwYzQ0YjY4M2VkYTQ3OGJmMGRmNzMyZDU1YWMzIDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9TY3JpcHRDb250cm9sbGVyQmFzZS5jcHAKKysr
IGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvU2NyaXB0Q29udHJvbGxlckJhc2UuY3BwCkBAIC0z
Miw2ICszMiw3IEBACiAjaW5jbHVkZSAiU2VjdXJpdHlPcmlnaW4uaCIKICNpbmNsdWRlICJTZXR0
aW5ncy5oIgogI2luY2x1ZGUgIlVzZXJHZXN0dXJlSW5kaWNhdG9yLmgiCisjaW5jbHVkZSA8d3Rm
L3RleHQvVGV4dFBvc2l0aW9uLmg+CiAKIG5hbWVzcGFjZSBXZWJDb3JlIHsKIApAQCAtNzUsNyAr
NzYsNyBAQCBib29sIFNjcmlwdENvbnRyb2xsZXI6OmV4ZWN1dGVJZkphdmFTY3JpcHRVUkwoY29u
c3QgS1VSTCYgdXJsLCBTaG91bGRSZXBsYWNlRG9jdQogCiAgICAgaWYgKCFtX2ZyYW1lLT5wYWdl
KCkKICAgICAgICAgfHwgIW1fZnJhbWUtPnBhZ2UoKS0+amF2YVNjcmlwdFVSTHNBcmVBbGxvd2Vk
KCkKLSAgICAgICAgfHwgIW1fZnJhbWUtPmRvY3VtZW50KCktPmNvbnRlbnRTZWN1cml0eVBvbGlj
eSgpLT5hbGxvd0phdmFTY3JpcHRVUkxzKCkKKyAgICAgICAgfHwgIW1fZnJhbWUtPmRvY3VtZW50
KCktPmNvbnRlbnRTZWN1cml0eVBvbGljeSgpLT5hbGxvd0phdmFTY3JpcHRVUkxzKG1fZnJhbWUt
PmRvY3VtZW50KCktPnVybCgpLCBldmVudEhhbmRsZXJQb3NpdGlvbigpLm1fbGluZSkKICAgICAg
ICAgfHwgbV9mcmFtZS0+aW5WaWV3U291cmNlTW9kZSgpKQogICAgICAgICByZXR1cm4gdHJ1ZTsK
IApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvSlNMYXp5RXZlbnRMaXN0
ZW5lci5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9KU0xhenlFdmVudExpc3RlbmVy
LmNwcAppbmRleCBmMTFiZjkwMGMxZDBkNTBkMWM3YWM1YzhiZmM0YmIzZDA0MWRhYWExLi42NGY5
Y2I5YzA0OTljOWZiMzgyZWMyM2Y1MDVhYjIyYmFjODk0MWIxIDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V2ViQ29yZS9iaW5kaW5ncy9qcy9KU0xhenlFdmVudExpc3RlbmVyLmNwcAorKysgYi9Tb3VyY2Uv
V2ViQ29yZS9iaW5kaW5ncy9qcy9KU0xhenlFdmVudExpc3RlbmVyLmNwcApAQCAtODAsNyArODAs
NyBAQCBKU09iamVjdCogSlNMYXp5RXZlbnRMaXN0ZW5lcjo6aW5pdGlhbGl6ZUpTRnVuY3Rpb24o
U2NyaXB0RXhlY3V0aW9uQ29udGV4dCogZXhlYwogICAgIGlmICghZG9jdW1lbnQtPmZyYW1lKCkp
CiAgICAgICAgIHJldHVybiAwOwogCi0gICAgaWYgKCFkb2N1bWVudC0+Y29udGVudFNlY3VyaXR5
UG9saWN5KCktPmFsbG93SW5saW5lRXZlbnRIYW5kbGVycygpKQorICAgIGlmICghZG9jdW1lbnQt
PmNvbnRlbnRTZWN1cml0eVBvbGljeSgpLT5hbGxvd0lubGluZUV2ZW50SGFuZGxlcnMobV9zb3Vy
Y2VVUkwsIG1fcG9zaXRpb24ubV9saW5lKSkKICAgICAgICAgcmV0dXJuIDA7CiAKICAgICBTY3Jp
cHRDb250cm9sbGVyKiBzY3JpcHQgPSBkb2N1bWVudC0+ZnJhbWUoKS0+c2NyaXB0KCk7CmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy92OC9WOExhenlFdmVudExpc3RlbmVyLmNw
cCBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3Y4L1Y4TGF6eUV2ZW50TGlzdGVuZXIuY3BwCmlu
ZGV4IDczMzIzMThkMjY0ZDk0MzBhM2RkZDczZWI5NTliZGQyMmYwZTJkOWUuLmVmNDU5MmUxYTAw
NTUxN2IyNGQ1ZmYwNWEzZjM3MmQwMGY3MTRkZTAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3Jl
L2JpbmRpbmdzL3Y4L1Y4TGF6eUV2ZW50TGlzdGVuZXIuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3Jl
L2JpbmRpbmdzL3Y4L1Y4TGF6eUV2ZW50TGlzdGVuZXIuY3BwCkBAIC0xMDUsNyArMTA1LDcgQEAg
dm9pZCBWOExhenlFdmVudExpc3RlbmVyOjpwcmVwYXJlTGlzdGVuZXJPYmplY3QoU2NyaXB0RXhl
Y3V0aW9uQ29udGV4dCogY29udGV4dCkKICAgICBpZiAoaGFzRXhpc3RpbmdMaXN0ZW5lck9iamVj
dCgpKQogICAgICAgICByZXR1cm47CiAKLSAgICBpZiAoY29udGV4dC0+aXNEb2N1bWVudCgpICYm
ICFzdGF0aWNfY2FzdDxEb2N1bWVudCo+KGNvbnRleHQpLT5jb250ZW50U2VjdXJpdHlQb2xpY3ko
KS0+YWxsb3dJbmxpbmVFdmVudEhhbmRsZXJzKCkpCisgICAgaWYgKGNvbnRleHQtPmlzRG9jdW1l
bnQoKSAmJiAhc3RhdGljX2Nhc3Q8RG9jdW1lbnQqPihjb250ZXh0KS0+Y29udGVudFNlY3VyaXR5
UG9saWN5KCktPmFsbG93SW5saW5lRXZlbnRIYW5kbGVycyhtX3NvdXJjZVVSTCwgbV9wb3NpdGlv
bi5tX2xpbmUpKQogICAgICAgICByZXR1cm47CiAKICAgICB2ODo6SGFuZGxlU2NvcGUgaGFuZGxl
U2NvcGU7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9kb20vU2NyaXB0RWxlbWVudC5jcHAg
Yi9Tb3VyY2UvV2ViQ29yZS9kb20vU2NyaXB0RWxlbWVudC5jcHAKaW5kZXggYmRjMWZjZGZjZjEy
M2RjNTUxMDM4OWQzM2M3MjRhMjk2OWI3ODczZS4uMzdiOGEwZWRjZjhiZjkwYmU2ZWRkNzkyZjZh
YmE0MjkwMWYzZWU4NyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvZG9tL1NjcmlwdEVsZW1l
bnQuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2RvbS9TY3JpcHRFbGVtZW50LmNwcApAQCAtNDEs
MTIgKzQxLDE0IEBACiAjaW5jbHVkZSAiU2NyaXB0UnVubmVyLmgiCiAjaW5jbHVkZSAiU2NyaXB0
U291cmNlQ29kZS5oIgogI2luY2x1ZGUgIlNjcmlwdFZhbHVlLmgiCisjaW5jbHVkZSAiU2NyaXB0
YWJsZURvY3VtZW50UGFyc2VyLmgiCiAjaW5jbHVkZSAiU2VjdXJpdHlPcmlnaW4uaCIKICNpbmNs
dWRlICJTZXR0aW5ncy5oIgogI2luY2x1ZGUgIlRleHQuaCIKICNpbmNsdWRlIDx3dGYvU3RkTGli
RXh0cmFzLmg+CiAjaW5jbHVkZSA8d3RmL3RleHQvU3RyaW5nQnVpbGRlci5oPgogI2luY2x1ZGUg
PHd0Zi90ZXh0L1N0cmluZ0hhc2guaD4KKyNpbmNsdWRlIDx3dGYvdGV4dC9UZXh0UG9zaXRpb24u
aD4KIAogI2lmIEVOQUJMRShTVkcpCiAjaW5jbHVkZSAiU1ZHTmFtZXMuaCIKQEAgLTU4LDYgKzYw
LDcgQEAgbmFtZXNwYWNlIFdlYkNvcmUgewogU2NyaXB0RWxlbWVudDo6U2NyaXB0RWxlbWVudChF
bGVtZW50KiBlbGVtZW50LCBib29sIHBhcnNlckluc2VydGVkLCBib29sIGFscmVhZHlTdGFydGVk
KQogICAgIDogbV9lbGVtZW50KGVsZW1lbnQpCiAgICAgLCBtX2NhY2hlZFNjcmlwdCgwKQorICAg
ICwgbV9zdGFydExpbmVOdW1iZXIoV1RGOjpPcmRpbmFsTnVtYmVyOjpiZWZvcmVGaXJzdCgpKQog
ICAgICwgbV9wYXJzZXJJbnNlcnRlZChwYXJzZXJJbnNlcnRlZCkKICAgICAsIG1faXNFeHRlcm5h
bFNjcmlwdChmYWxzZSkKICAgICAsIG1fYWxyZWFkeVN0YXJ0ZWQoYWxyZWFkeVN0YXJ0ZWQpCkBA
IC03MCw2ICs3Myw4IEBAIFNjcmlwdEVsZW1lbnQ6OlNjcmlwdEVsZW1lbnQoRWxlbWVudCogZWxl
bWVudCwgYm9vbCBwYXJzZXJJbnNlcnRlZCwgYm9vbCBhbHJlYWR5CiAgICAgLCBtX3JlcXVlc3RV
c2VzQWNjZXNzQ29udHJvbChmYWxzZSkKIHsKICAgICBBU1NFUlQobV9lbGVtZW50KTsKKyAgICBp
ZiAocGFyc2VySW5zZXJ0ZWQgJiYgbV9lbGVtZW50LT5kb2N1bWVudCgpLT5zY3JpcHRhYmxlRG9j
dW1lbnRQYXJzZXIoKSkKKyAgICAgICAgbV9zdGFydExpbmVOdW1iZXIgPSBtX2VsZW1lbnQtPmRv
Y3VtZW50KCktPnNjcmlwdGFibGVEb2N1bWVudFBhcnNlcigpLT5saW5lTnVtYmVyKCk7CiB9CiAK
IFNjcmlwdEVsZW1lbnQ6On5TY3JpcHRFbGVtZW50KCkKQEAgLTI3Niw3ICsyODEsNyBAQCB2b2lk
IFNjcmlwdEVsZW1lbnQ6OmV4ZWN1dGVTY3JpcHQoY29uc3QgU2NyaXB0U291cmNlQ29kZSYgc291
cmNlQ29kZSkKICAgICBpZiAoc291cmNlQ29kZS5pc0VtcHR5KCkpCiAgICAgICAgIHJldHVybjsK
IAotICAgIGlmICghbV9pc0V4dGVybmFsU2NyaXB0ICYmICFtX2VsZW1lbnQtPmRvY3VtZW50KCkt
PmNvbnRlbnRTZWN1cml0eVBvbGljeSgpLT5hbGxvd0lubGluZVNjcmlwdCgpKQorICAgIGlmICgh
bV9pc0V4dGVybmFsU2NyaXB0ICYmICFtX2VsZW1lbnQtPmRvY3VtZW50KCktPmNvbnRlbnRTZWN1
cml0eVBvbGljeSgpLT5hbGxvd0lubGluZVNjcmlwdChtX2VsZW1lbnQtPmRvY3VtZW50KCktPnVy
bCgpLCBtX3N0YXJ0TGluZU51bWJlcikpCiAgICAgICAgIHJldHVybjsKIAogICAgIFJlZlB0cjxE
b2N1bWVudD4gZG9jdW1lbnQgPSBtX2VsZW1lbnQtPmRvY3VtZW50KCk7CmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViQ29yZS9kb20vU2NyaXB0RWxlbWVudC5oIGIvU291cmNlL1dlYkNvcmUvZG9tL1Nj
cmlwdEVsZW1lbnQuaAppbmRleCA2YzA4MjU4ZTY1NjVkMDg0ZDJiNjQ0OWNiMmUyNTM4YzFhYjg5
ODNhLi45MTFhY2NhNzJkMGRmNTQ2NDAyZTRmYTMyMjA3NzZiODMwOTdmMGQ5IDEwMDY0NAotLS0g
YS9Tb3VyY2UvV2ViQ29yZS9kb20vU2NyaXB0RWxlbWVudC5oCisrKyBiL1NvdXJjZS9XZWJDb3Jl
L2RvbS9TY3JpcHRFbGVtZW50LmgKQEAgLTkzLDYgKzkzLDcgQEAgcHJpdmF0ZToKIAogICAgIEVs
ZW1lbnQqIG1fZWxlbWVudDsKICAgICBDYWNoZWRSZXNvdXJjZUhhbmRsZTxDYWNoZWRTY3JpcHQ+
IG1fY2FjaGVkU2NyaXB0OworICAgIFdURjo6T3JkaW5hbE51bWJlciBtX3N0YXJ0TGluZU51bWJl
cjsKICAgICBib29sIG1fcGFyc2VySW5zZXJ0ZWQgOiAxOwogICAgIGJvb2wgbV9pc0V4dGVybmFs
U2NyaXB0IDogMTsKICAgICBib29sIG1fYWxyZWFkeVN0YXJ0ZWQgOiAxOwpkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYkNvcmUvZG9tL1N0eWxlRWxlbWVudC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9kb20v
U3R5bGVFbGVtZW50LmNwcAppbmRleCA1YWY5ZmM4ZTRjZGNjNmZiMmYxZGUyNDAwMWFjOTVmNjdm
MDhlYjVkLi4wNGFmODQwYWI4NzVhYTk0NTY4NDNjMDMwZDlkYWZiMjM4ZDkwNzVmIDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViQ29yZS9kb20vU3R5bGVFbGVtZW50LmNwcAorKysgYi9Tb3VyY2UvV2Vi
Q29yZS9kb20vU3R5bGVFbGVtZW50LmNwcApAQCAtMjksNiArMjksNyBAQAogI2luY2x1ZGUgIk1l
ZGlhUXVlcnlFdmFsdWF0b3IuaCIKICNpbmNsdWRlICJTY3JpcHRhYmxlRG9jdW1lbnRQYXJzZXIu
aCIKICNpbmNsdWRlIDx3dGYvdGV4dC9TdHJpbmdCdWlsZGVyLmg+CisjaW5jbHVkZSA8d3RmL3Rl
eHQvVGV4dFBvc2l0aW9uLmg+CiAKIG5hbWVzcGFjZSBXZWJDb3JlIHsKIApAQCAtNDcsMTAgKzQ4
LDEwIEBAIHN0YXRpYyBib29sIGlzQ1NTKEVsZW1lbnQqIGVsZW1lbnQsIGNvbnN0IEF0b21pY1N0
cmluZyYgdHlwZSkKIFN0eWxlRWxlbWVudDo6U3R5bGVFbGVtZW50KERvY3VtZW50KiBkb2N1bWVu
dCwgYm9vbCBjcmVhdGVkQnlQYXJzZXIpCiAgICAgOiBtX2NyZWF0ZWRCeVBhcnNlcihjcmVhdGVk
QnlQYXJzZXIpCiAgICAgLCBtX2xvYWRpbmcoZmFsc2UpCi0gICAgLCBtX3N0YXJ0TGluZU51bWJl
cigwKQorICAgICwgbV9zdGFydExpbmVOdW1iZXIoV1RGOjpPcmRpbmFsTnVtYmVyOjpiZWZvcmVG
aXJzdCgpKQogewogICAgIGlmIChjcmVhdGVkQnlQYXJzZXIgJiYgZG9jdW1lbnQgJiYgZG9jdW1l
bnQtPnNjcmlwdGFibGVEb2N1bWVudFBhcnNlcigpKQotICAgICAgICBtX3N0YXJ0TGluZU51bWJl
ciA9IGRvY3VtZW50LT5zY3JpcHRhYmxlRG9jdW1lbnRQYXJzZXIoKS0+bGluZU51bWJlcigpLnpl
cm9CYXNlZEludCgpOworICAgICAgICBtX3N0YXJ0TGluZU51bWJlciA9IGRvY3VtZW50LT5zY3Jp
cHRhYmxlRG9jdW1lbnRQYXJzZXIoKS0+bGluZU51bWJlcigpOwogfQogCiBTdHlsZUVsZW1lbnQ6
On5TdHlsZUVsZW1lbnQoKQpAQCAtMTQzLDcgKzE0NCw3IEBAIHZvaWQgU3R5bGVFbGVtZW50Ojpj
bGVhclNoZWV0KCkKICAgICBtX3NoZWV0ID0gMDsKIH0KIAotdm9pZCBTdHlsZUVsZW1lbnQ6OmNy
ZWF0ZVNoZWV0KEVsZW1lbnQqIGUsIGludCBzdGFydExpbmVOdW1iZXIsIGNvbnN0IFN0cmluZyYg
dGV4dCkKK3ZvaWQgU3R5bGVFbGVtZW50OjpjcmVhdGVTaGVldChFbGVtZW50KiBlLCBXVEY6Ok9y
ZGluYWxOdW1iZXIgc3RhcnRMaW5lTnVtYmVyLCBjb25zdCBTdHJpbmcmIHRleHQpCiB7CiAgICAg
QVNTRVJUKGUpOwogICAgIEFTU0VSVChlLT5pbkRvY3VtZW50KCkpOwpAQCAtMTU2LDcgKzE1Nyw3
IEBAIHZvaWQgU3R5bGVFbGVtZW50OjpjcmVhdGVTaGVldChFbGVtZW50KiBlLCBpbnQgc3RhcnRM
aW5lTnVtYmVyLCBjb25zdCBTdHJpbmcmIHRlCiAKICAgICAvLyBJZiB0eXBlIGlzIGVtcHR5IG9y
IENTUywgdGhpcyBpcyBhIENTUyBzdHlsZSBzaGVldC4KICAgICBjb25zdCBBdG9taWNTdHJpbmcm
IHR5cGUgPSB0aGlzLT50eXBlKCk7Ci0gICAgaWYgKGRvY3VtZW50LT5jb250ZW50U2VjdXJpdHlQ
b2xpY3koKS0+YWxsb3dJbmxpbmVTdHlsZSgpICYmIGlzQ1NTKGUsIHR5cGUpKSB7CisgICAgaWYg
KGRvY3VtZW50LT5jb250ZW50U2VjdXJpdHlQb2xpY3koKS0+YWxsb3dJbmxpbmVTdHlsZShlLT5k
b2N1bWVudCgpLT51cmwoKSwgc3RhcnRMaW5lTnVtYmVyKSAmJiBpc0NTUyhlLCB0eXBlKSkgewog
ICAgICAgICBSZWZQdHI8TWVkaWFRdWVyeVNldD4gbWVkaWFRdWVyaWVzOwogICAgICAgICBpZiAo
ZS0+aXNIVE1MRWxlbWVudCgpKQogICAgICAgICAgICAgbWVkaWFRdWVyaWVzID0gTWVkaWFRdWVy
eVNldDo6Y3JlYXRlQWxsb3dpbmdEZXNjcmlwdGlvblN5bnRheChtZWRpYSgpKTsKQEAgLTE3Miw4
ICsxNzMsOCBAQCB2b2lkIFN0eWxlRWxlbWVudDo6Y3JlYXRlU2hlZXQoRWxlbWVudCogZSwgaW50
IHN0YXJ0TGluZU51bWJlciwgY29uc3QgU3RyaW5nJiB0ZQogICAgICAgICAgICAgbV9zaGVldCA9
IENTU1N0eWxlU2hlZXQ6OmNyZWF0ZUlubGluZShlLCBLVVJMKCksIGRvY3VtZW50LT5pbnB1dEVu
Y29kaW5nKCkpOwogICAgICAgICAgICAgbV9zaGVldC0+c2V0TWVkaWFRdWVyaWVzKG1lZGlhUXVl
cmllcy5yZWxlYXNlKCkpOwogICAgICAgICAgICAgbV9zaGVldC0+c2V0VGl0bGUoZS0+dGl0bGUo
KSk7Ci0gICAgCi0gICAgICAgICAgICBtX3NoZWV0LT5pbnRlcm5hbCgpLT5wYXJzZVN0cmluZ0F0
TGluZSh0ZXh0LCBzdGFydExpbmVOdW1iZXIpOworCisgICAgICAgICAgICBtX3NoZWV0LT5pbnRl
cm5hbCgpLT5wYXJzZVN0cmluZ0F0TGluZSh0ZXh0LCBzdGFydExpbmVOdW1iZXIuemVyb0Jhc2Vk
SW50KCkpOwogCiAgICAgICAgICAgICBtX2xvYWRpbmcgPSBmYWxzZTsKICAgICAgICAgfQpkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvZG9tL1N0eWxlRWxlbWVudC5oIGIvU291cmNlL1dlYkNv
cmUvZG9tL1N0eWxlRWxlbWVudC5oCmluZGV4IDNjMzFhYmJmN2VhNDNjNTJjOTVkNDdjNWYxMGZi
NGJkZjM1Yjk1MGUuLjZkZDQ4ZWNiYjQ1NGI1ZWFkMzI5ZTAzOTA5YTI3M2E2YzI1MmIwZjIgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2RvbS9TdHlsZUVsZW1lbnQuaAorKysgYi9Tb3VyY2Uv
V2ViQ29yZS9kb20vU3R5bGVFbGVtZW50LmgKQEAgLTIyLDYgKzIyLDcgQEAKICNkZWZpbmUgU3R5
bGVFbGVtZW50X2gKIAogI2luY2x1ZGUgIkNTU1N0eWxlU2hlZXQuaCIKKyNpbmNsdWRlIDx3dGYv
dGV4dC9UZXh0UG9zaXRpb24uaD4KIAogbmFtZXNwYWNlIFdlYkNvcmUgewogCkBAIC01MiwxMyAr
NTMsMTMgQEAgcHJvdGVjdGVkOgogICAgIFJlZlB0cjxDU1NTdHlsZVNoZWV0PiBtX3NoZWV0Owog
CiBwcml2YXRlOgotICAgIHZvaWQgY3JlYXRlU2hlZXQoRWxlbWVudCosIGludCBzdGFydExpbmVO
dW1iZXIsIGNvbnN0IFN0cmluZyYgdGV4dCA9IFN0cmluZygpKTsKKyAgICB2b2lkIGNyZWF0ZVNo
ZWV0KEVsZW1lbnQqLCBXVEY6Ok9yZGluYWxOdW1iZXIgc3RhcnRMaW5lTnVtYmVyLCBjb25zdCBT
dHJpbmcmIHRleHQgPSBTdHJpbmcoKSk7CiAgICAgdm9pZCBwcm9jZXNzKEVsZW1lbnQqKTsKICAg
ICB2b2lkIGNsZWFyU2hlZXQoKTsKIAogICAgIGJvb2wgbV9jcmVhdGVkQnlQYXJzZXI7CiAgICAg
Ym9vbCBtX2xvYWRpbmc7Ci0gICAgaW50IG1fc3RhcnRMaW5lTnVtYmVyOworICAgIFdURjo6T3Jk
aW5hbE51bWJlciBtX3N0YXJ0TGluZU51bWJlcjsKIH07CiAKIH0KZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJDb3JlL2RvbS9TdHlsZWRFbGVtZW50LmNwcCBiL1NvdXJjZS9XZWJDb3JlL2RvbS9TdHls
ZWRFbGVtZW50LmNwcAppbmRleCBkNTViMDA5OTM0NWZlOTFlMDc1NTY1NmVmNzc3MDNhNWIyZTA5
YmIwLi5jYmYwOTFkNmQxNWI3MTkzNWEyODBmNTU4M2JkN2QyZTVlOTNkNGRiIDEwMDY0NAotLS0g
YS9Tb3VyY2UvV2ViQ29yZS9kb20vU3R5bGVkRWxlbWVudC5jcHAKKysrIGIvU291cmNlL1dlYkNv
cmUvZG9tL1N0eWxlZEVsZW1lbnQuY3BwCkBAIC0zNyw5ICszNywxMSBAQAogI2luY2x1ZGUgIkRv
Y3VtZW50LmgiCiAjaW5jbHVkZSAiSFRNTE5hbWVzLmgiCiAjaW5jbHVkZSAiSFRNTFBhcnNlcklk
aW9tcy5oIgorI2luY2x1ZGUgIlNjcmlwdGFibGVEb2N1bWVudFBhcnNlci5oIgogI2luY2x1ZGUg
IlN0eWxlUHJvcGVydHlTZXQuaCIKICNpbmNsdWRlICJTdHlsZVJlc29sdmVyLmgiCiAjaW5jbHVk
ZSA8d3RmL0hhc2hGdW5jdGlvbnMuaD4KKyNpbmNsdWRlIDx3dGYvdGV4dC9UZXh0UG9zaXRpb24u
aD4KIAogdXNpbmcgbmFtZXNwYWNlIHN0ZDsKIApAQCAtMTI2LDEzICsxMjgsMjEgQEAgdm9pZCBT
dHlsZWRFbGVtZW50Ojp1cGRhdGVTdHlsZUF0dHJpYnV0ZSgpIGNvbnN0CiAgICAgICAgIGNvbnN0
X2Nhc3Q8U3R5bGVkRWxlbWVudCo+KHRoaXMpLT5zZXRBdHRyaWJ1dGUoc3R5bGVBdHRyLCBpbmxp
bmVTdHlsZS0+YXNUZXh0KCksIEluVXBkYXRlU3R5bGVBdHRyaWJ1dGUpOwogfQogCitTdHlsZWRF
bGVtZW50OjpTdHlsZWRFbGVtZW50KGNvbnN0IFF1YWxpZmllZE5hbWUmIG5hbWUsIERvY3VtZW50
KiBkb2N1bWVudCwgQ29uc3RydWN0aW9uVHlwZSB0eXBlKQorICAgIDogRWxlbWVudChuYW1lLCBk
b2N1bWVudCwgdHlwZSkKKyAgICAsIG1fc3RhcnRMaW5lTnVtYmVyKFdURjo6T3JkaW5hbE51bWJl
cjo6YmVmb3JlRmlyc3QoKSkKK3sKKyAgICBpZiAoZG9jdW1lbnQgJiYgZG9jdW1lbnQtPnNjcmlw
dGFibGVEb2N1bWVudFBhcnNlcigpKQorICAgICAgICBtX3N0YXJ0TGluZU51bWJlciA9IGRvY3Vt
ZW50LT5zY3JpcHRhYmxlRG9jdW1lbnRQYXJzZXIoKS0+bGluZU51bWJlcigpOworfQorCiBTdHls
ZWRFbGVtZW50Ojp+U3R5bGVkRWxlbWVudCgpCiB7CiAgICAgZGVzdHJveUlubGluZVN0eWxlKCk7
CiB9CiAKLUNTU1N0eWxlRGVjbGFyYXRpb24qIFN0eWxlZEVsZW1lbnQ6OnN0eWxlKCkgCi17IAor
Q1NTU3R5bGVEZWNsYXJhdGlvbiogU3R5bGVkRWxlbWVudDo6c3R5bGUoKQorewogICAgIHJldHVy
biBlbnN1cmVBdHRyaWJ1dGVEYXRhKCktPmVuc3VyZU11dGFibGVJbmxpbmVTdHlsZSh0aGlzKS0+
ZW5zdXJlSW5saW5lQ1NTU3R5bGVEZWNsYXJhdGlvbih0aGlzKTsgCiB9CiAKQEAgLTE3Myw3ICsx
ODMsNyBAQCB2b2lkIFN0eWxlZEVsZW1lbnQ6OnN0eWxlQXR0cmlidXRlQ2hhbmdlZChjb25zdCBB
dG9taWNTdHJpbmcmIG5ld1N0eWxlU3RyaW5nLCBTaAogICAgIGlmIChzaG91bGRSZXBhcnNlKSB7
CiAgICAgICAgIGlmIChuZXdTdHlsZVN0cmluZy5pc051bGwoKSkKICAgICAgICAgICAgIGRlc3Ry
b3lJbmxpbmVTdHlsZSgpOwotICAgICAgICBlbHNlIGlmIChkb2N1bWVudCgpLT5jb250ZW50U2Vj
dXJpdHlQb2xpY3koKS0+YWxsb3dJbmxpbmVTdHlsZSgpKQorICAgICAgICBlbHNlIGlmIChkb2N1
bWVudCgpLT5jb250ZW50U2VjdXJpdHlQb2xpY3koKS0+YWxsb3dJbmxpbmVTdHlsZShkb2N1bWVu
dCgpLT51cmwoKSwgbV9zdGFydExpbmVOdW1iZXIpKQogICAgICAgICAgICAgZW5zdXJlQXR0cmli
dXRlRGF0YSgpLT51cGRhdGVJbmxpbmVTdHlsZUF2b2lkaW5nTXV0YXRpb24odGhpcywgbmV3U3R5
bGVTdHJpbmcpOwogICAgICAgICBzZXRJc1N0eWxlQXR0cmlidXRlVmFsaWQoKTsKICAgICB9CmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9kb20vU3R5bGVkRWxlbWVudC5oIGIvU291cmNlL1dl
YkNvcmUvZG9tL1N0eWxlZEVsZW1lbnQuaAppbmRleCA2Y2Y0MTQ1ZjJhMTIxYTU0OGQ0ZTNhZGVi
OGNlODVmNjI3MDVkMDc4Li40NzM2YTk4MDAxOWE5ZWY0YTJjZGM2YWRjYjY0MTAwMmE2YmViNzBi
IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9kb20vU3R5bGVkRWxlbWVudC5oCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL2RvbS9TdHlsZWRFbGVtZW50LmgKQEAgLTI3LDYgKzI3LDcgQEAKIAogI2lu
Y2x1ZGUgIkVsZW1lbnQuaCIKICNpbmNsdWRlICJTdHlsZVByb3BlcnR5U2V0LmgiCisjaW5jbHVk
ZSA8d3RmL3RleHQvVGV4dFBvc2l0aW9uLmg+CiAKIG5hbWVzcGFjZSBXZWJDb3JlIHsKIApAQCAt
NjIsMTAgKzYzLDcgQEAgcHVibGljOgogICAgIHZvaWQgc3R5bGVBdHRyaWJ1dGVDaGFuZ2VkKGNv
bnN0IEF0b21pY1N0cmluZyYgbmV3U3R5bGVTdHJpbmcsIFNob3VsZFJlcGFyc2VTdHlsZUF0dHJp
YnV0ZSA9IFJlcGFyc2VTdHlsZUF0dHJpYnV0ZSk7CiAKIHByb3RlY3RlZDoKLSAgICBTdHlsZWRF
bGVtZW50KGNvbnN0IFF1YWxpZmllZE5hbWUmIG5hbWUsIERvY3VtZW50KiBkb2N1bWVudCwgQ29u
c3RydWN0aW9uVHlwZSB0eXBlKQotICAgICAgICA6IEVsZW1lbnQobmFtZSwgZG9jdW1lbnQsIHR5
cGUpCi0gICAgewotICAgIH0KKyAgICBTdHlsZWRFbGVtZW50KGNvbnN0IFF1YWxpZmllZE5hbWUm
LCBEb2N1bWVudCosIENvbnN0cnVjdGlvblR5cGUpOwogCiAgICAgdmlydHVhbCB2b2lkIGF0dHJp
YnV0ZUNoYW5nZWQoY29uc3QgQXR0cmlidXRlJikgT1ZFUlJJREU7CiAgICAgdmlydHVhbCB2b2lk
IHBhcnNlQXR0cmlidXRlKGNvbnN0IEF0dHJpYnV0ZSYpOwpAQCAtOTUsNiArOTMsOCBAQCBwcml2
YXRlOgogICAgICAgICBpZiAoYXR0cmlidXRlRGF0YSgpKQogICAgICAgICAgICAgYXR0cmlidXRl
RGF0YSgpLT5kZXN0cm95SW5saW5lU3R5bGUodGhpcyk7CiAgICAgfQorCisgICAgV1RGOjpPcmRp
bmFsTnVtYmVyIG1fc3RhcnRMaW5lTnVtYmVyOwogfTsKIAogaW5saW5lIGNvbnN0IFNwYWNlU3Bs
aXRTdHJpbmcmIFN0eWxlZEVsZW1lbnQ6OmNsYXNzTmFtZXMoKSBjb25zdApkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYkNvcmUvcGFnZS9Db250ZW50U2VjdXJpdHlQb2xpY3kuY3BwIGIvU291cmNlL1dl
YkNvcmUvcGFnZS9Db250ZW50U2VjdXJpdHlQb2xpY3kuY3BwCmluZGV4IDQ1Zjc2YjAxOWRmZjY3
ZjM5MzAyNDI1ODM4NzJmMzIzZjUwYTk4YmQuLjJkNzVhZDVmYTExODJlNjA3MzM2NTNlYTQzNWNi
NzRhOTZjNDg3NzIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BhZ2UvQ29udGVudFNlY3Vy
aXR5UG9saWN5LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wYWdlL0NvbnRlbnRTZWN1cml0eVBv
bGljeS5jcHAKQEAgLTMxLDExICszMSwxMyBAQAogI2luY2x1ZGUgIkZvcm1EYXRhLmgiCiAjaW5j
bHVkZSAiRm9ybURhdGFMaXN0LmgiCiAjaW5jbHVkZSAiRnJhbWUuaCIKKyNpbmNsdWRlICJJbnNw
ZWN0b3JJbnN0cnVtZW50YXRpb24uaCIKICNpbmNsdWRlICJJbnNwZWN0b3JWYWx1ZXMuaCIKICNp
bmNsdWRlICJQaW5nTG9hZGVyLmgiCiAjaW5jbHVkZSAiU2NyaXB0Q2FsbFN0YWNrLmgiCiAjaW5j
bHVkZSAiU2VjdXJpdHlPcmlnaW4uaCIKICNpbmNsdWRlICJUZXh0RW5jb2RpbmcuaCIKKyNpbmNs
dWRlIDx3dGYvdGV4dC9UZXh0UG9zaXRpb24uaD4KICNpbmNsdWRlIDx3dGYvdGV4dC9XVEZTdHJp
bmcuaD4KIAogbmFtZXNwYWNlIFdlYkNvcmUgewpAQCAtNDkwLDEwICs0OTIsMTAgQEAgcHVibGlj
OgogICAgIGNvbnN0IFN0cmluZyYgaGVhZGVyKCkgY29uc3QgeyByZXR1cm4gbV9oZWFkZXI7IH0K
ICAgICBDb250ZW50U2VjdXJpdHlQb2xpY3k6OkhlYWRlclR5cGUgaGVhZGVyVHlwZSgpIGNvbnN0
IHsgcmV0dXJuIG1fcmVwb3J0T25seSA/IENvbnRlbnRTZWN1cml0eVBvbGljeTo6UmVwb3J0T25s
eSA6IENvbnRlbnRTZWN1cml0eVBvbGljeTo6RW5mb3JjZVBvbGljeTsgfQogCi0gICAgYm9vbCBh
bGxvd0phdmFTY3JpcHRVUkxzKCkgY29uc3Q7Ci0gICAgYm9vbCBhbGxvd0lubGluZUV2ZW50SGFu
ZGxlcnMoKSBjb25zdDsKLSAgICBib29sIGFsbG93SW5saW5lU2NyaXB0KCkgY29uc3Q7Ci0gICAg
Ym9vbCBhbGxvd0lubGluZVN0eWxlKCkgY29uc3Q7CisgICAgYm9vbCBhbGxvd0phdmFTY3JpcHRV
UkxzKGNvbnN0IFN0cmluZyYgY29udGV4dFVSTCwgY29uc3QgV1RGOjpPcmRpbmFsTnVtYmVyJiBj
b250ZXh0TGluZSkgY29uc3Q7CisgICAgYm9vbCBhbGxvd0lubGluZUV2ZW50SGFuZGxlcnMoY29u
c3QgU3RyaW5nJiBjb250ZXh0VVJMLCBjb25zdCBXVEY6Ok9yZGluYWxOdW1iZXImIGNvbnRleHRM
aW5lKSBjb25zdDsKKyAgICBib29sIGFsbG93SW5saW5lU2NyaXB0KGNvbnN0IFN0cmluZyYgY29u
dGV4dFVSTCwgY29uc3QgV1RGOjpPcmRpbmFsTnVtYmVyJiBjb250ZXh0TGluZSkgY29uc3Q7Cisg
ICAgYm9vbCBhbGxvd0lubGluZVN0eWxlKGNvbnN0IFN0cmluZyYgY29udGV4dFVSTCwgY29uc3Qg
V1RGOjpPcmRpbmFsTnVtYmVyJiBjb250ZXh0TGluZSkgY29uc3Q7CiAgICAgYm9vbCBhbGxvd0V2
YWwoUGFzc1JlZlB0cjxTY3JpcHRDYWxsU3RhY2s+KSBjb25zdDsKIAogICAgIGJvb2wgYWxsb3dT
Y3JpcHRGcm9tU291cmNlKGNvbnN0IEtVUkwmKSBjb25zdDsKQEAgLTUxOCwxMiArNTIwLDEyIEBA
IHByaXZhdGU6CiAgICAgUGFzc093blB0cjxDU1BEaXJlY3RpdmU+IGNyZWF0ZUNTUERpcmVjdGl2
ZShjb25zdCBTdHJpbmcmIG5hbWUsIGNvbnN0IFN0cmluZyYgdmFsdWUpOwogCiAgICAgQ1NQRGly
ZWN0aXZlKiBvcGVyYXRpdmVEaXJlY3RpdmUoQ1NQRGlyZWN0aXZlKikgY29uc3Q7Ci0gICAgdm9p
ZCByZXBvcnRWaW9sYXRpb24oY29uc3QgU3RyaW5nJiBkaXJlY3RpdmVUZXh0LCBjb25zdCBTdHJp
bmcmIGNvbnNvbGVNZXNzYWdlLCBjb25zdCBLVVJMJiBibG9ja2VkVVJMID0gS1VSTCgpLCBQYXNz
UmVmUHRyPFNjcmlwdENhbGxTdGFjaz4gPSAwKSBjb25zdDsKKyAgICB2b2lkIHJlcG9ydFZpb2xh
dGlvbihjb25zdCBTdHJpbmcmIGRpcmVjdGl2ZVRleHQsIGNvbnN0IFN0cmluZyYgY29uc29sZU1l
c3NhZ2UsIGNvbnN0IEtVUkwmIGJsb2NrZWRVUkwgPSBLVVJMKCksIGNvbnN0IFN0cmluZyYgY29u
dGV4dFVSTCA9IFN0cmluZygpLCBjb25zdCBXVEY6Ok9yZGluYWxOdW1iZXImIGNvbnRleHRMaW5l
ID0gV1RGOjpPcmRpbmFsTnVtYmVyOjpiZWZvcmVGaXJzdCgpLCBQYXNzUmVmUHRyPFNjcmlwdENh
bGxTdGFjaz4gPSAwKSBjb25zdDsKICAgICB2b2lkIGxvZ1VucmVjb2duaXplZERpcmVjdGl2ZShj
b25zdCBTdHJpbmcmIG5hbWUpIGNvbnN0OwogICAgIGJvb2wgY2hlY2tFdmFsKENTUERpcmVjdGl2
ZSopIGNvbnN0OwogCi0gICAgYm9vbCBjaGVja0lubGluZUFuZFJlcG9ydFZpb2xhdGlvbihDU1BE
aXJlY3RpdmUqLCBjb25zdCBTdHJpbmcmIGNvbnNvbGVNZXNzYWdlKSBjb25zdDsKLSAgICBib29s
IGNoZWNrRXZhbEFuZFJlcG9ydFZpb2xhdGlvbihDU1BEaXJlY3RpdmUqLCBjb25zdCBTdHJpbmcm
IGNvbnNvbGVNZXNzYWdlLCBQYXNzUmVmUHRyPFNjcmlwdENhbGxTdGFjaz4pIGNvbnN0OworICAg
IGJvb2wgY2hlY2tJbmxpbmVBbmRSZXBvcnRWaW9sYXRpb24oQ1NQRGlyZWN0aXZlKiwgY29uc3Qg
U3RyaW5nJiBjb25zb2xlTWVzc2FnZSwgY29uc3QgU3RyaW5nJiBjb250ZXh0VVJMLCBjb25zdCBX
VEY6Ok9yZGluYWxOdW1iZXImIGNvbnRleHRMaW5lKSBjb25zdDsKKyAgICBib29sIGNoZWNrRXZh
bEFuZFJlcG9ydFZpb2xhdGlvbihDU1BEaXJlY3RpdmUqLCBjb25zdCBTdHJpbmcmIGNvbnNvbGVN
ZXNzYWdlLCBjb25zdCBTdHJpbmcmIGNvbnRleHRVUkwgPSBTdHJpbmcoKSwgY29uc3QgV1RGOjpP
cmRpbmFsTnVtYmVyJiBjb250ZXh0TGluZSA9IFdURjo6T3JkaW5hbE51bWJlcjo6YmVmb3JlRmly
c3QoKSwgUGFzc1JlZlB0cjxTY3JpcHRDYWxsU3RhY2s+ID0gMCkgY29uc3Q7CiAgICAgYm9vbCBj
aGVja1NvdXJjZUFuZFJlcG9ydFZpb2xhdGlvbihDU1BEaXJlY3RpdmUqLCBjb25zdCBLVVJMJiwg
Y29uc3QgU3RyaW5nJiB0eXBlKSBjb25zdDsKIAogICAgIGJvb2wgZGVueUlmRW5mb3JjaW5nUG9s
aWN5KCkgY29uc3QgeyByZXR1cm4gbV9yZXBvcnRPbmx5OyB9CkBAIC01NzUsMTAgKzU3NywxMCBA
QCBQYXNzT3duUHRyPENTUERpcmVjdGl2ZUxpc3Q+IENTUERpcmVjdGl2ZUxpc3Q6OmNyZWF0ZShT
Y3JpcHRFeGVjdXRpb25Db250ZXh0KiBzYwogICAgIHJldHVybiBwb2xpY3kucmVsZWFzZSgpOwog
fQogCi12b2lkIENTUERpcmVjdGl2ZUxpc3Q6OnJlcG9ydFZpb2xhdGlvbihjb25zdCBTdHJpbmcm
IGRpcmVjdGl2ZVRleHQsIGNvbnN0IFN0cmluZyYgY29uc29sZU1lc3NhZ2UsIGNvbnN0IEtVUkwm
IGJsb2NrZWRVUkwsIFBhc3NSZWZQdHI8U2NyaXB0Q2FsbFN0YWNrPiBjYWxsU3RhY2spIGNvbnN0
Cit2b2lkIENTUERpcmVjdGl2ZUxpc3Q6OnJlcG9ydFZpb2xhdGlvbihjb25zdCBTdHJpbmcmIGRp
cmVjdGl2ZVRleHQsIGNvbnN0IFN0cmluZyYgY29uc29sZU1lc3NhZ2UsIGNvbnN0IEtVUkwmIGJs
b2NrZWRVUkwsIGNvbnN0IFN0cmluZyYgY29udGV4dFVSTCwgY29uc3QgV1RGOjpPcmRpbmFsTnVt
YmVyJiBjb250ZXh0TGluZSwgUGFzc1JlZlB0cjxTY3JpcHRDYWxsU3RhY2s+IGNhbGxTdGFjaykg
Y29uc3QKIHsKICAgICBTdHJpbmcgbWVzc2FnZSA9IG1fcmVwb3J0T25seSA/ICJbUmVwb3J0IE9u
bHldICIgKyBjb25zb2xlTWVzc2FnZSA6IGNvbnNvbGVNZXNzYWdlOwotICAgIG1fc2NyaXB0RXhl
Y3V0aW9uQ29udGV4dC0+YWRkQ29uc29sZU1lc3NhZ2UoSlNNZXNzYWdlU291cmNlLCBMb2dNZXNz
YWdlVHlwZSwgRXJyb3JNZXNzYWdlTGV2ZWwsIG1lc3NhZ2UsIFN0cmluZygpLCAwLCBjYWxsU3Rh
Y2spOworICAgIG1fc2NyaXB0RXhlY3V0aW9uQ29udGV4dC0+YWRkQ29uc29sZU1lc3NhZ2UoSlNN
ZXNzYWdlU291cmNlLCBMb2dNZXNzYWdlVHlwZSwgRXJyb3JNZXNzYWdlTGV2ZWwsIG1lc3NhZ2Us
IGNvbnRleHRVUkwsIGNvbnRleHRMaW5lLm9uZUJhc2VkSW50KCksIGNhbGxTdGFjayk7CiAKICAg
ICBpZiAobV9yZXBvcnRVUklzLmlzRW1wdHkoKSkKICAgICAgICAgcmV0dXJuOwpAQCAtNjM4LDE5
ICs2NDAsMTkgQEAgQ1NQRGlyZWN0aXZlKiBDU1BEaXJlY3RpdmVMaXN0OjpvcGVyYXRpdmVEaXJl
Y3RpdmUoQ1NQRGlyZWN0aXZlKiBkaXJlY3RpdmUpIGNvbnMKICAgICByZXR1cm4gZGlyZWN0aXZl
ID8gZGlyZWN0aXZlIDogbV9kZWZhdWx0U3JjLmdldCgpOwogfQogCi1ib29sIENTUERpcmVjdGl2
ZUxpc3Q6OmNoZWNrSW5saW5lQW5kUmVwb3J0VmlvbGF0aW9uKENTUERpcmVjdGl2ZSogZGlyZWN0
aXZlLCBjb25zdCBTdHJpbmcmIGNvbnNvbGVNZXNzYWdlKSBjb25zdAorYm9vbCBDU1BEaXJlY3Rp
dmVMaXN0OjpjaGVja0lubGluZUFuZFJlcG9ydFZpb2xhdGlvbihDU1BEaXJlY3RpdmUqIGRpcmVj
dGl2ZSwgY29uc3QgU3RyaW5nJiBjb25zb2xlTWVzc2FnZSwgY29uc3QgU3RyaW5nJiBjb250ZXh0
VVJMLCBjb25zdCBXVEY6Ok9yZGluYWxOdW1iZXImIGNvbnRleHRMaW5lKSBjb25zdAogewogICAg
IGlmICghZGlyZWN0aXZlIHx8IGRpcmVjdGl2ZS0+YWxsb3dJbmxpbmUoKSkKICAgICAgICAgcmV0
dXJuIHRydWU7Ci0gICAgcmVwb3J0VmlvbGF0aW9uKGRpcmVjdGl2ZS0+dGV4dCgpLCBjb25zb2xl
TWVzc2FnZSArICJcIiIgKyBkaXJlY3RpdmUtPnRleHQoKSArICJcIi5cbiIpOworICAgIHJlcG9y
dFZpb2xhdGlvbihkaXJlY3RpdmUtPnRleHQoKSwgY29uc29sZU1lc3NhZ2UgKyAiXCIiICsgZGly
ZWN0aXZlLT50ZXh0KCkgKyAiXCIuXG4iLCBLVVJMKCksIGNvbnRleHRVUkwsIGNvbnRleHRMaW5l
KTsKICAgICByZXR1cm4gZGVueUlmRW5mb3JjaW5nUG9saWN5KCk7CiB9CiAKLWJvb2wgQ1NQRGly
ZWN0aXZlTGlzdDo6Y2hlY2tFdmFsQW5kUmVwb3J0VmlvbGF0aW9uKENTUERpcmVjdGl2ZSogZGly
ZWN0aXZlLCBjb25zdCBTdHJpbmcmIGNvbnNvbGVNZXNzYWdlLCBQYXNzUmVmUHRyPFNjcmlwdENh
bGxTdGFjaz4gY2FsbFN0YWNrKSBjb25zdAorYm9vbCBDU1BEaXJlY3RpdmVMaXN0OjpjaGVja0V2
YWxBbmRSZXBvcnRWaW9sYXRpb24oQ1NQRGlyZWN0aXZlKiBkaXJlY3RpdmUsIGNvbnN0IFN0cmlu
ZyYgY29uc29sZU1lc3NhZ2UsIGNvbnN0IFN0cmluZyYgY29udGV4dFVSTCwgY29uc3QgV1RGOjpP
cmRpbmFsTnVtYmVyJiBjb250ZXh0TGluZSwgUGFzc1JlZlB0cjxTY3JpcHRDYWxsU3RhY2s+IGNh
bGxTdGFjaykgY29uc3QKIHsKICAgICBpZiAoY2hlY2tFdmFsKGRpcmVjdGl2ZSkpCiAgICAgICAg
IHJldHVybiB0cnVlOwotICAgIHJlcG9ydFZpb2xhdGlvbihkaXJlY3RpdmUtPnRleHQoKSwgY29u
c29sZU1lc3NhZ2UgKyAiXCIiICsgZGlyZWN0aXZlLT50ZXh0KCkgKyAiXCIuXG4iLCBLVVJMKCks
IGNhbGxTdGFjayk7CisgICAgcmVwb3J0VmlvbGF0aW9uKGRpcmVjdGl2ZS0+dGV4dCgpLCBjb25z
b2xlTWVzc2FnZSArICJcIiIgKyBkaXJlY3RpdmUtPnRleHQoKSArICJcIi5cbiIsIEtVUkwoKSwg
Y29udGV4dFVSTCwgY29udGV4dExpbmUsIGNhbGxTdGFjayk7CiAgICAgcmV0dXJuIGRlbnlJZkVu
Zm9yY2luZ1BvbGljeSgpOwogfQogCkBAIC02NjMsMzQgKzY2NSwzNCBAQCBib29sIENTUERpcmVj
dGl2ZUxpc3Q6OmNoZWNrU291cmNlQW5kUmVwb3J0VmlvbGF0aW9uKENTUERpcmVjdGl2ZSogZGly
ZWN0aXZlLCBjbwogICAgIHJldHVybiBkZW55SWZFbmZvcmNpbmdQb2xpY3koKTsKIH0KIAotYm9v
bCBDU1BEaXJlY3RpdmVMaXN0OjphbGxvd0phdmFTY3JpcHRVUkxzKCkgY29uc3QKK2Jvb2wgQ1NQ
RGlyZWN0aXZlTGlzdDo6YWxsb3dKYXZhU2NyaXB0VVJMcyhjb25zdCBTdHJpbmcmIGNvbnRleHRV
UkwsIGNvbnN0IFdURjo6T3JkaW5hbE51bWJlciYgY29udGV4dExpbmUpIGNvbnN0CiB7CiAgICAg
REVGSU5FX1NUQVRJQ19MT0NBTChTdHJpbmcsIGNvbnNvbGVNZXNzYWdlLCAoIlJlZnVzZWQgdG8g
ZXhlY3V0ZSBKYXZhU2NyaXB0IFVSTCBiZWNhdXNlIGl0IHZpb2xhdGVzIHRoZSBmb2xsb3dpbmcg
Q29udGVudCBTZWN1cml0eSBQb2xpY3kgZGlyZWN0aXZlOiAiKSk7Ci0gICAgcmV0dXJuIGNoZWNr
SW5saW5lQW5kUmVwb3J0VmlvbGF0aW9uKG9wZXJhdGl2ZURpcmVjdGl2ZShtX3NjcmlwdFNyYy5n
ZXQoKSksIGNvbnNvbGVNZXNzYWdlKTsKKyAgICByZXR1cm4gY2hlY2tJbmxpbmVBbmRSZXBvcnRW
aW9sYXRpb24ob3BlcmF0aXZlRGlyZWN0aXZlKG1fc2NyaXB0U3JjLmdldCgpKSwgY29uc29sZU1l
c3NhZ2UsIGNvbnRleHRVUkwsIGNvbnRleHRMaW5lKTsKIH0KIAotYm9vbCBDU1BEaXJlY3RpdmVM
aXN0OjphbGxvd0lubGluZUV2ZW50SGFuZGxlcnMoKSBjb25zdAorYm9vbCBDU1BEaXJlY3RpdmVM
aXN0OjphbGxvd0lubGluZUV2ZW50SGFuZGxlcnMoY29uc3QgU3RyaW5nJiBjb250ZXh0VVJMLCBj
b25zdCBXVEY6Ok9yZGluYWxOdW1iZXImIGNvbnRleHRMaW5lKSBjb25zdAogewogICAgIERFRklO
RV9TVEFUSUNfTE9DQUwoU3RyaW5nLCBjb25zb2xlTWVzc2FnZSwgKCJSZWZ1c2VkIHRvIGV4ZWN1
dGUgaW5saW5lIGV2ZW50IGhhbmRsZXIgYmVjYXVzZSBpdCB2aW9sYXRlcyB0aGUgZm9sbG93aW5n
IENvbnRlbnQgU2VjdXJpdHkgUG9saWN5IGRpcmVjdGl2ZTogIikpOwotICAgIHJldHVybiBjaGVj
a0lubGluZUFuZFJlcG9ydFZpb2xhdGlvbihvcGVyYXRpdmVEaXJlY3RpdmUobV9zY3JpcHRTcmMu
Z2V0KCkpLCBjb25zb2xlTWVzc2FnZSk7CisgICAgcmV0dXJuIGNoZWNrSW5saW5lQW5kUmVwb3J0
VmlvbGF0aW9uKG9wZXJhdGl2ZURpcmVjdGl2ZShtX3NjcmlwdFNyYy5nZXQoKSksIGNvbnNvbGVN
ZXNzYWdlLCBjb250ZXh0VVJMLCBjb250ZXh0TGluZSk7CiB9CiAKLWJvb2wgQ1NQRGlyZWN0aXZl
TGlzdDo6YWxsb3dJbmxpbmVTY3JpcHQoKSBjb25zdAorYm9vbCBDU1BEaXJlY3RpdmVMaXN0Ojph
bGxvd0lubGluZVNjcmlwdChjb25zdCBTdHJpbmcmIGNvbnRleHRVUkwsIGNvbnN0IFdURjo6T3Jk
aW5hbE51bWJlciYgY29udGV4dExpbmUpIGNvbnN0CiB7CiAgICAgREVGSU5FX1NUQVRJQ19MT0NB
TChTdHJpbmcsIGNvbnNvbGVNZXNzYWdlLCAoIlJlZnVzZWQgdG8gZXhlY3V0ZSBpbmxpbmUgc2Ny
aXB0IGJlY2F1c2UgaXQgdmlvbGF0ZXMgdGhlIGZvbGxvd2luZyBDb250ZW50IFNlY3VyaXR5IFBv
bGljeSBkaXJlY3RpdmU6ICIpKTsKLSAgICByZXR1cm4gY2hlY2tJbmxpbmVBbmRSZXBvcnRWaW9s
YXRpb24ob3BlcmF0aXZlRGlyZWN0aXZlKG1fc2NyaXB0U3JjLmdldCgpKSwgY29uc29sZU1lc3Nh
Z2UpOworICAgIHJldHVybiBjaGVja0lubGluZUFuZFJlcG9ydFZpb2xhdGlvbihvcGVyYXRpdmVE
aXJlY3RpdmUobV9zY3JpcHRTcmMuZ2V0KCkpLCBjb25zb2xlTWVzc2FnZSwgY29udGV4dFVSTCwg
Y29udGV4dExpbmUpOwogfQogCi1ib29sIENTUERpcmVjdGl2ZUxpc3Q6OmFsbG93SW5saW5lU3R5
bGUoKSBjb25zdAorYm9vbCBDU1BEaXJlY3RpdmVMaXN0OjphbGxvd0lubGluZVN0eWxlKGNvbnN0
IFN0cmluZyYgY29udGV4dFVSTCwgY29uc3QgV1RGOjpPcmRpbmFsTnVtYmVyJiBjb250ZXh0TGlu
ZSkgY29uc3QKIHsKICAgICBERUZJTkVfU1RBVElDX0xPQ0FMKFN0cmluZywgY29uc29sZU1lc3Nh
Z2UsICgiUmVmdXNlZCB0byBhcHBseSBpbmxpbmUgc3R5bGUgYmVjYXVzZSBpdCB2aW9sYXRlcyB0
aGUgZm9sbG93aW5nIENvbnRlbnQgU2VjdXJpdHkgUG9saWN5IGRpcmVjdGl2ZTogIikpOwotICAg
IHJldHVybiBjaGVja0lubGluZUFuZFJlcG9ydFZpb2xhdGlvbihvcGVyYXRpdmVEaXJlY3RpdmUo
bV9zdHlsZVNyYy5nZXQoKSksIGNvbnNvbGVNZXNzYWdlKTsKKyAgICByZXR1cm4gY2hlY2tJbmxp
bmVBbmRSZXBvcnRWaW9sYXRpb24ob3BlcmF0aXZlRGlyZWN0aXZlKG1fc3R5bGVTcmMuZ2V0KCkp
LCBjb25zb2xlTWVzc2FnZSwgY29udGV4dFVSTCwgY29udGV4dExpbmUpOwogfQogCiBib29sIENT
UERpcmVjdGl2ZUxpc3Q6OmFsbG93RXZhbChQYXNzUmVmUHRyPFNjcmlwdENhbGxTdGFjaz4gY2Fs
bFN0YWNrKSBjb25zdAogewogICAgIERFRklORV9TVEFUSUNfTE9DQUwoU3RyaW5nLCBjb25zb2xl
TWVzc2FnZSwgKCJSZWZ1c2VkIHRvIGV2YWx1YXRlIHNjcmlwdCBiZWNhdXNlIGl0IHZpb2xhdGVz
IHRoZSBmb2xsb3dpbmcgQ29udGVudCBTZWN1cml0eSBQb2xpY3kgZGlyZWN0aXZlOiAiKSk7Ci0g
ICAgcmV0dXJuIGNoZWNrRXZhbEFuZFJlcG9ydFZpb2xhdGlvbihvcGVyYXRpdmVEaXJlY3RpdmUo
bV9zY3JpcHRTcmMuZ2V0KCkpLCBjb25zb2xlTWVzc2FnZSwgY2FsbFN0YWNrKTsKKyAgICByZXR1
cm4gY2hlY2tFdmFsQW5kUmVwb3J0VmlvbGF0aW9uKG9wZXJhdGl2ZURpcmVjdGl2ZShtX3Njcmlw
dFNyYy5nZXQoKSksIGNvbnNvbGVNZXNzYWdlLCBTdHJpbmcoKSwgV1RGOjpPcmRpbmFsTnVtYmVy
OjpiZWZvcmVGaXJzdCgpLCBjYWxsU3RhY2spOwogfQogCiBib29sIENTUERpcmVjdGl2ZUxpc3Q6
OmFsbG93U2NyaXB0RnJvbVNvdXJjZShjb25zdCBLVVJMJiB1cmwpIGNvbnN0CkBAIC05MjMsMjEg
KzkyNSwyMSBAQCBDb250ZW50U2VjdXJpdHlQb2xpY3k6OkhlYWRlclR5cGUgQ29udGVudFNlY3Vy
aXR5UG9saWN5OjpkZXByZWNhdGVkSGVhZGVyVHlwZSgpCiAgICAgcmV0dXJuIG1fcG9saWNpZXMu
aXNFbXB0eSgpID8gRW5mb3JjZVBvbGljeSA6IG1fcG9saWNpZXNbMF0tPmhlYWRlclR5cGUoKTsK
IH0KIAotdGVtcGxhdGU8Ym9vbCAoQ1NQRGlyZWN0aXZlTGlzdDo6KmFsbG93ZWQpKCkgY29uc3Q+
Ci1ib29sIGlzQWxsb3dlZEJ5QWxsKGNvbnN0IENTUERpcmVjdGl2ZUxpc3RWZWN0b3ImIHBvbGlj
aWVzKQordGVtcGxhdGU8Ym9vbCAoQ1NQRGlyZWN0aXZlTGlzdDo6KmFsbG93ZWQpKFBhc3NSZWZQ
dHI8U2NyaXB0Q2FsbFN0YWNrPikgY29uc3Q+Citib29sIGlzQWxsb3dlZEJ5QWxsV2l0aENhbGxT
dGFjayhjb25zdCBDU1BEaXJlY3RpdmVMaXN0VmVjdG9yJiBwb2xpY2llcywgUGFzc1JlZlB0cjxT
Y3JpcHRDYWxsU3RhY2s+IGNhbGxTdGFjaykKIHsKICAgICBmb3IgKHNpemVfdCBpID0gMDsgaSA8
IHBvbGljaWVzLnNpemUoKTsgKytpKSB7Ci0gICAgICAgIGlmICghKHBvbGljaWVzW2ldLmdldCgp
LT4qYWxsb3dlZCkoKSkKKyAgICAgICAgaWYgKCEocG9saWNpZXNbaV0uZ2V0KCktPiphbGxvd2Vk
KShjYWxsU3RhY2spKQogICAgICAgICAgICAgcmV0dXJuIGZhbHNlOwogICAgIH0KICAgICByZXR1
cm4gdHJ1ZTsKIH0KIAotdGVtcGxhdGU8Ym9vbCAoQ1NQRGlyZWN0aXZlTGlzdDo6KmFsbG93ZWQp
KFBhc3NSZWZQdHI8U2NyaXB0Q2FsbFN0YWNrPikgY29uc3Q+Ci1ib29sIGlzQWxsb3dlZEJ5QWxs
V2l0aENhbGxTdGFjayhjb25zdCBDU1BEaXJlY3RpdmVMaXN0VmVjdG9yJiBwb2xpY2llcywgUGFz
c1JlZlB0cjxTY3JpcHRDYWxsU3RhY2s+IGNhbGxTdGFjaykKK3RlbXBsYXRlPGJvb2wgKENTUERp
cmVjdGl2ZUxpc3Q6OiphbGxvd2VkKShjb25zdCBTdHJpbmcmLCBjb25zdCBXVEY6Ok9yZGluYWxO
dW1iZXImKSBjb25zdD4KK2Jvb2wgaXNBbGxvd2VkQnlBbGxXaXRoQ29udGV4dChjb25zdCBDU1BE
aXJlY3RpdmVMaXN0VmVjdG9yJiBwb2xpY2llcywgY29uc3QgU3RyaW5nJiBjb250ZXh0VVJMLCBj
b25zdCBXVEY6Ok9yZGluYWxOdW1iZXImIGNvbnRleHRMaW5lKQogewogICAgIGZvciAoc2l6ZV90
IGkgPSAwOyBpIDwgcG9saWNpZXMuc2l6ZSgpOyArK2kpIHsKLSAgICAgICAgaWYgKCEocG9saWNp
ZXNbaV0uZ2V0KCktPiphbGxvd2VkKShjYWxsU3RhY2spKQorICAgICAgICBpZiAoIShwb2xpY2ll
c1tpXS5nZXQoKS0+KmFsbG93ZWQpKGNvbnRleHRVUkwsIGNvbnRleHRMaW5lKSkKICAgICAgICAg
ICAgIHJldHVybiBmYWxzZTsKICAgICB9CiAgICAgcmV0dXJuIHRydWU7CkBAIC05NTMsMjYgKzk1
NSwyNiBAQCBib29sIGlzQWxsb3dlZEJ5QWxsV2l0aFVSTChjb25zdCBDU1BEaXJlY3RpdmVMaXN0
VmVjdG9yJiBwb2xpY2llcywgY29uc3QgS1VSTCYgdQogICAgIHJldHVybiB0cnVlOwogfQogCi1i
b29sIENvbnRlbnRTZWN1cml0eVBvbGljeTo6YWxsb3dKYXZhU2NyaXB0VVJMcygpIGNvbnN0Citi
b29sIENvbnRlbnRTZWN1cml0eVBvbGljeTo6YWxsb3dKYXZhU2NyaXB0VVJMcyhjb25zdCBTdHJp
bmcmIGNvbnRleHRVUkwsIGNvbnN0IFdURjo6T3JkaW5hbE51bWJlciYgY29udGV4dExpbmUpIGNv
bnN0CiB7Ci0gICAgcmV0dXJuIGlzQWxsb3dlZEJ5QWxsPCZDU1BEaXJlY3RpdmVMaXN0OjphbGxv
d0phdmFTY3JpcHRVUkxzPihtX3BvbGljaWVzKTsKKyAgICByZXR1cm4gaXNBbGxvd2VkQnlBbGxX
aXRoQ29udGV4dDwmQ1NQRGlyZWN0aXZlTGlzdDo6YWxsb3dKYXZhU2NyaXB0VVJMcz4obV9wb2xp
Y2llcywgY29udGV4dFVSTCwgY29udGV4dExpbmUpOwogfQogCi1ib29sIENvbnRlbnRTZWN1cml0
eVBvbGljeTo6YWxsb3dJbmxpbmVFdmVudEhhbmRsZXJzKCkgY29uc3QKK2Jvb2wgQ29udGVudFNl
Y3VyaXR5UG9saWN5OjphbGxvd0lubGluZUV2ZW50SGFuZGxlcnMoY29uc3QgU3RyaW5nJiBjb250
ZXh0VVJMLCBjb25zdCBXVEY6Ok9yZGluYWxOdW1iZXImIGNvbnRleHRMaW5lKSBjb25zdAogewot
ICAgIHJldHVybiBpc0FsbG93ZWRCeUFsbDwmQ1NQRGlyZWN0aXZlTGlzdDo6YWxsb3dJbmxpbmVF
dmVudEhhbmRsZXJzPihtX3BvbGljaWVzKTsKKyAgICByZXR1cm4gaXNBbGxvd2VkQnlBbGxXaXRo
Q29udGV4dDwmQ1NQRGlyZWN0aXZlTGlzdDo6YWxsb3dJbmxpbmVFdmVudEhhbmRsZXJzPihtX3Bv
bGljaWVzLCBjb250ZXh0VVJMLCBjb250ZXh0TGluZSk7CiB9CiAKLWJvb2wgQ29udGVudFNlY3Vy
aXR5UG9saWN5OjphbGxvd0lubGluZVNjcmlwdCgpIGNvbnN0Citib29sIENvbnRlbnRTZWN1cml0
eVBvbGljeTo6YWxsb3dJbmxpbmVTY3JpcHQoY29uc3QgU3RyaW5nJiBjb250ZXh0VVJMLCBjb25z
dCBXVEY6Ok9yZGluYWxOdW1iZXImIGNvbnRleHRMaW5lKSBjb25zdAogewotICAgIHJldHVybiBp
c0FsbG93ZWRCeUFsbDwmQ1NQRGlyZWN0aXZlTGlzdDo6YWxsb3dJbmxpbmVTY3JpcHQ+KG1fcG9s
aWNpZXMpOworICAgIHJldHVybiBpc0FsbG93ZWRCeUFsbFdpdGhDb250ZXh0PCZDU1BEaXJlY3Rp
dmVMaXN0OjphbGxvd0lubGluZVNjcmlwdD4obV9wb2xpY2llcywgY29udGV4dFVSTCwgY29udGV4
dExpbmUpOwogfQogCi1ib29sIENvbnRlbnRTZWN1cml0eVBvbGljeTo6YWxsb3dJbmxpbmVTdHls
ZSgpIGNvbnN0Citib29sIENvbnRlbnRTZWN1cml0eVBvbGljeTo6YWxsb3dJbmxpbmVTdHlsZShj
b25zdCBTdHJpbmcmIGNvbnRleHRVUkwsIGNvbnN0IFdURjo6T3JkaW5hbE51bWJlciYgY29udGV4
dExpbmUpIGNvbnN0CiB7CiAgICAgaWYgKG1fb3ZlcnJpZGVJbmxpbmVTdHlsZUFsbG93ZWQpCiAg
ICAgICAgIHJldHVybiB0cnVlOwotICAgIHJldHVybiBpc0FsbG93ZWRCeUFsbDwmQ1NQRGlyZWN0
aXZlTGlzdDo6YWxsb3dJbmxpbmVTdHlsZT4obV9wb2xpY2llcyk7CisgICAgcmV0dXJuIGlzQWxs
b3dlZEJ5QWxsV2l0aENvbnRleHQ8JkNTUERpcmVjdGl2ZUxpc3Q6OmFsbG93SW5saW5lU3R5bGU+
KG1fcG9saWNpZXMsIGNvbnRleHRVUkwsIGNvbnRleHRMaW5lKTsKIH0KIAogYm9vbCBDb250ZW50
U2VjdXJpdHlQb2xpY3k6OmFsbG93RXZhbChQYXNzUmVmUHRyPFNjcmlwdENhbGxTdGFjaz4gY2Fs
bFN0YWNrKSBjb25zdApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGFnZS9Db250ZW50U2Vj
dXJpdHlQb2xpY3kuaCBiL1NvdXJjZS9XZWJDb3JlL3BhZ2UvQ29udGVudFNlY3VyaXR5UG9saWN5
LmgKaW5kZXggMTljNDY1ZTNiMDBlY2EyYzM5NzgwNTY4ZjY1Yzg1NzJiMWQ3NzNkYS4uMGYyMWFm
MWZhZWY2YzllMDE4YzNhMWU4NGQ5NjBmNGIxM2I4Y2FkMCAxMDA2NDQKLS0tIGEvU291cmNlL1dl
YkNvcmUvcGFnZS9Db250ZW50U2VjdXJpdHlQb2xpY3kuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9w
YWdlL0NvbnRlbnRTZWN1cml0eVBvbGljeS5oCkBAIC0zMSw2ICszMSwxMiBAQAogI2luY2x1ZGUg
PHd0Zi9WZWN0b3IuaD4KICNpbmNsdWRlIDx3dGYvdGV4dC9XVEZTdHJpbmcuaD4KIAorbmFtZXNw
YWNlIFdURiB7CisKK2NsYXNzIE9yZGluYWxOdW1iZXI7CisKK30KKwogbmFtZXNwYWNlIFdlYkNv
cmUgewogCiBjbGFzcyBDU1BEaXJlY3RpdmVMaXN0OwpAQCAtNjIsMTAgKzY4LDEwIEBAIHB1Ymxp
YzoKICAgICBjb25zdCBTdHJpbmcmIGRlcHJlY2F0ZWRIZWFkZXIoKSBjb25zdDsKICAgICBIZWFk
ZXJUeXBlIGRlcHJlY2F0ZWRIZWFkZXJUeXBlKCkgY29uc3Q7CiAKLSAgICBib29sIGFsbG93SmF2
YVNjcmlwdFVSTHMoKSBjb25zdDsKLSAgICBib29sIGFsbG93SW5saW5lRXZlbnRIYW5kbGVycygp
IGNvbnN0OwotICAgIGJvb2wgYWxsb3dJbmxpbmVTY3JpcHQoKSBjb25zdDsKLSAgICBib29sIGFs
bG93SW5saW5lU3R5bGUoKSBjb25zdDsKKyAgICBib29sIGFsbG93SmF2YVNjcmlwdFVSTHMoY29u
c3QgU3RyaW5nJiBjb250ZXh0VVJMLCBjb25zdCBXVEY6Ok9yZGluYWxOdW1iZXImIGNvbnRleHRM
aW5lKSBjb25zdDsKKyAgICBib29sIGFsbG93SW5saW5lRXZlbnRIYW5kbGVycyhjb25zdCBTdHJp
bmcmIGNvbnRleHRVUkwsIGNvbnN0IFdURjo6T3JkaW5hbE51bWJlciYgY29udGV4dExpbmUpIGNv
bnN0OworICAgIGJvb2wgYWxsb3dJbmxpbmVTY3JpcHQoY29uc3QgU3RyaW5nJiBjb250ZXh0VVJM
LCBjb25zdCBXVEY6Ok9yZGluYWxOdW1iZXImIGNvbnRleHRMaW5lKSBjb25zdDsKKyAgICBib29s
IGFsbG93SW5saW5lU3R5bGUoY29uc3QgU3RyaW5nJiBjb250ZXh0VVJMLCBjb25zdCBXVEY6Ok9y
ZGluYWxOdW1iZXImIGNvbnRleHRMaW5lKSBjb25zdDsKICAgICBib29sIGFsbG93RXZhbChQYXNz
UmVmUHRyPFNjcmlwdENhbGxTdGFjaz4pIGNvbnN0OwogCiAgICAgYm9vbCBhbGxvd1NjcmlwdEZy
b21Tb3VyY2UoY29uc3QgS1VSTCYpIGNvbnN0OwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvQ2hh
bmdlTG9nIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCmluZGV4IGE3ZWM3NGE0ZjllNTg4NzIwMjYx
NDg3OTUyNTM3N2RlM2VjMzA5YTMuLmYwNTZiN2I3NTc0NGE3ZDFlMzExNzNjOGM2OTFlYzliNWQ4
NGE1MmEgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL0NoYW5nZUxvZworKysgYi9MYXlvdXRUZXN0
cy9DaGFuZ2VMb2cKQEAgLTEsMyArMSwzNSBAQAorMjAxMi0wNS0yMyAgTWlrZSBXZXN0ICA8bWt3
c3RAY2hyb21pdW0ub3JnPgorCisgICAgICAgIElubGluZSBzY3JpcHQgYW5kIHN0eWxlIGJsb2Nr
ZWQgYnkgQ29udGVudCBTZWN1cml0eSBQb2xpY3kgc2hvdWxkIHByb3ZpZGUgbW9yZSBkZXRhaWxl
ZCBjb25zb2xlIGVycm9ycy4KKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19i
dWcuY2dpP2lkPTg2ODQ4CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisK
KyAgICAgICAgKiBodHRwL3Rlc3RzL3NlY3VyaXR5L2NvbnRlbnRTZWN1cml0eVBvbGljeS9jb21i
aW5lLW11bHRpcGxlLXBvbGljaWVzLWV4cGVjdGVkLnR4dDoKKyAgICAgICAgKiBodHRwL3Rlc3Rz
L3NlY3VyaXR5L2NvbnRlbnRTZWN1cml0eVBvbGljeS9kZWZhdWx0LXNyYy1pbmxpbmUtYmxvY2tl
ZC1leHBlY3RlZC50eHQ6CisgICAgICAgICogaHR0cC90ZXN0cy9zZWN1cml0eS9jb250ZW50U2Vj
dXJpdHlQb2xpY3kvaW5qZWN0ZWQtaW5saW5lLXNjcmlwdC1hbGxvd2VkLWV4cGVjdGVkLnR4dDog
QWRkZWQuCisgICAgICAgICogaHR0cC90ZXN0cy9zZWN1cml0eS9jb250ZW50U2VjdXJpdHlQb2xp
Y3kvaW5qZWN0ZWQtaW5saW5lLXNjcmlwdC1hbGxvd2VkLmh0bWw6IEFkZGVkLgorICAgICAgICAq
IGh0dHAvdGVzdHMvc2VjdXJpdHkvY29udGVudFNlY3VyaXR5UG9saWN5L2luamVjdGVkLWlubGlu
ZS1zY3JpcHQtYmxvY2tlZC1leHBlY3RlZC50eHQ6IEFkZGVkLgorICAgICAgICAqIGh0dHAvdGVz
dHMvc2VjdXJpdHkvY29udGVudFNlY3VyaXR5UG9saWN5L2luamVjdGVkLWlubGluZS1zY3JpcHQt
YmxvY2tlZC5odG1sOiBBZGRlZC4KKyAgICAgICAgKiBodHRwL3Rlc3RzL3NlY3VyaXR5L2NvbnRl
bnRTZWN1cml0eVBvbGljeS9pbmplY3RlZC1pbmxpbmUtc3R5bGUtYWxsb3dlZC1leHBlY3RlZC50
eHQ6IEFkZGVkLgorICAgICAgICAqIGh0dHAvdGVzdHMvc2VjdXJpdHkvY29udGVudFNlY3VyaXR5
UG9saWN5L2luamVjdGVkLWlubGluZS1zdHlsZS1hbGxvd2VkLmh0bWw6IEFkZGVkLgorICAgICAg
ICAqIGh0dHAvdGVzdHMvc2VjdXJpdHkvY29udGVudFNlY3VyaXR5UG9saWN5L2luamVjdGVkLWlu
bGluZS1zdHlsZS1ibG9ja2VkLWV4cGVjdGVkLnR4dDogQWRkZWQuCisgICAgICAgICogaHR0cC90
ZXN0cy9zZWN1cml0eS9jb250ZW50U2VjdXJpdHlQb2xpY3kvaW5qZWN0ZWQtaW5saW5lLXN0eWxl
LWJsb2NrZWQuaHRtbDogQWRkZWQuCisgICAgICAgICogaHR0cC90ZXN0cy9zZWN1cml0eS9jb250
ZW50U2VjdXJpdHlQb2xpY3kvaW5saW5lLXNjcmlwdC1ibG9ja2VkLWV4cGVjdGVkLnR4dDoKKyAg
ICAgICAgKiBodHRwL3Rlc3RzL3NlY3VyaXR5L2NvbnRlbnRTZWN1cml0eVBvbGljeS9pbmxpbmUt
c2NyaXB0LWJsb2NrZWQtZ29vZnktZXhwZWN0ZWQudHh0OgorICAgICAgICAqIGh0dHAvdGVzdHMv
c2VjdXJpdHkvY29udGVudFNlY3VyaXR5UG9saWN5L2lubGluZS1zY3JpcHQtYmxvY2tlZC1qYXZh
c2NyaXB0LXVybC1leHBlY3RlZC50eHQ6CisgICAgICAgICogaHR0cC90ZXN0cy9zZWN1cml0eS9j
b250ZW50U2VjdXJpdHlQb2xpY3kvaW5saW5lLXN0eWxlLWF0dHJpYnV0ZS1ibG9ja2VkLWV4cGVj
dGVkLnR4dDoKKyAgICAgICAgKiBodHRwL3Rlc3RzL3NlY3VyaXR5L2NvbnRlbnRTZWN1cml0eVBv
bGljeS9pbmxpbmUtc3R5bGUtYmxvY2tlZC1leHBlY3RlZC50eHQ6CisgICAgICAgICogaHR0cC90
ZXN0cy9zZWN1cml0eS9jb250ZW50U2VjdXJpdHlQb2xpY3kvamF2YXNjcmlwdC11cmwtYmxvY2tl
ZC1leHBlY3RlZC50eHQ6CisgICAgICAgICogaHR0cC90ZXN0cy9zZWN1cml0eS9jb250ZW50U2Vj
dXJpdHlQb2xpY3kvcmVwb3J0LWFuZC1lbmZvcmNlLWV4cGVjdGVkLnR4dDoKKyAgICAgICAgKiBo
dHRwL3Rlc3RzL3NlY3VyaXR5L2NvbnRlbnRTZWN1cml0eVBvbGljeS9yZXBvcnQtb25seS1leHBl
Y3RlZC50eHQ6CisgICAgICAgICogaHR0cC90ZXN0cy9zZWN1cml0eS9jb250ZW50U2VjdXJpdHlQ
b2xpY3kvcmVwb3J0LW9ubHktZnJvbS1oZWFkZXItZXhwZWN0ZWQudHh0OgorICAgICAgICAqIGh0
dHAvdGVzdHMvc2VjdXJpdHkvY29udGVudFNlY3VyaXR5UG9saWN5L3JlcG9ydC11cmktZXhwZWN0
ZWQudHh0OgorICAgICAgICAqIGh0dHAvdGVzdHMvc2VjdXJpdHkvY29udGVudFNlY3VyaXR5UG9s
aWN5L3JlcG9ydC11cmktZnJvbS1jaGlsZC1mcmFtZS1leHBlY3RlZC50eHQ6CisgICAgICAgICog
aHR0cC90ZXN0cy9zZWN1cml0eS9jb250ZW50U2VjdXJpdHlQb2xpY3kvcmVzb3VyY2VzL2luamVj
dC1zY3JpcHQuanM6IEFkZGVkLgorICAgICAgICAqIGh0dHAvdGVzdHMvc2VjdXJpdHkvY29udGVu
dFNlY3VyaXR5UG9saWN5L3NjcmlwdC1zcmMtbm9uZS1pbmxpbmUtZXZlbnQtZXhwZWN0ZWQudHh0
OgorICAgICAgICAqIGh0dHAvdGVzdHMvc2VjdXJpdHkvY29udGVudFNlY3VyaXR5UG9saWN5L3Ny
Y2RvYy1kb2VzbnQtYnlwYXNzLXNjcmlwdC1zcmMtZXhwZWN0ZWQudHh0OgorCiAyMDEyLTA1LTIy
ICBDaHJpc3RvcGhlIER1bWV6ICA8Y2hyaXN0b3BoZS5kdW1lekBpbnRlbC5jb20+CiAKICAgICAg
ICAgW0VGTF0gVGVzdCBleHBlY3RhdGlvbnMgbmVlZCB1cGRhdGluZwpkaWZmIC0tZ2l0IGEvTGF5
b3V0VGVzdHMvaHR0cC90ZXN0cy9zZWN1cml0eS9jb250ZW50U2VjdXJpdHlQb2xpY3kvY29tYmlu
ZS1tdWx0aXBsZS1wb2xpY2llcy1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9odHRwL3Rlc3Rz
L3NlY3VyaXR5L2NvbnRlbnRTZWN1cml0eVBvbGljeS9jb21iaW5lLW11bHRpcGxlLXBvbGljaWVz
LWV4cGVjdGVkLnR4dAppbmRleCA3NTYwNDE5MGZiM2ViMjI2ODAzZWQwMDczNzFkMGI2Njc0YzQy
Yzg4Li4wMTI0ZmU4YmFiOWU0ZjE0MWQ3ZTk3MmFkNmRmNTg0YTExOTkxMTNjIDEwMDY0NAotLS0g
YS9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3NlY3VyaXR5L2NvbnRlbnRTZWN1cml0eVBvbGljeS9j
b21iaW5lLW11bHRpcGxlLXBvbGljaWVzLWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9o
dHRwL3Rlc3RzL3NlY3VyaXR5L2NvbnRlbnRTZWN1cml0eVBvbGljeS9jb21iaW5lLW11bHRpcGxl
LXBvbGljaWVzLWV4cGVjdGVkLnR4dApAQCAtMSw1ICsxLDUgQEAKLUNPTlNPTEUgTUVTU0FHRTog
UmVmdXNlZCB0byBleGVjdXRlIGlubGluZSBzY3JpcHQgYmVjYXVzZSBpdCB2aW9sYXRlcyB0aGUg
Zm9sbG93aW5nIENvbnRlbnQgU2VjdXJpdHkgUG9saWN5IGRpcmVjdGl2ZTogInNjcmlwdC1zcmMg
J3NlbGYnIi4KK0NPTlNPTEUgTUVTU0FHRTogbGluZSAxMTogUmVmdXNlZCB0byBleGVjdXRlIGlu
bGluZSBzY3JpcHQgYmVjYXVzZSBpdCB2aW9sYXRlcyB0aGUgZm9sbG93aW5nIENvbnRlbnQgU2Vj
dXJpdHkgUG9saWN5IGRpcmVjdGl2ZTogInNjcmlwdC1zcmMgJ3NlbGYnIi4KIAotQ09OU09MRSBN
RVNTQUdFOiBSZWZ1c2VkIHRvIGFwcGx5IGlubGluZSBzdHlsZSBiZWNhdXNlIGl0IHZpb2xhdGVz
IHRoZSBmb2xsb3dpbmcgQ29udGVudCBTZWN1cml0eSBQb2xpY3kgZGlyZWN0aXZlOiAic3R5bGUt
c3JjICdub25lJyIuCitDT05TT0xFIE1FU1NBR0U6IGxpbmUgMTQ6IFJlZnVzZWQgdG8gYXBwbHkg
aW5saW5lIHN0eWxlIGJlY2F1c2UgaXQgdmlvbGF0ZXMgdGhlIGZvbGxvd2luZyBDb250ZW50IFNl
Y3VyaXR5IFBvbGljeSBkaXJlY3RpdmU6ICJzdHlsZS1zcmMgJ25vbmUnIi4KIAogVGhpcyB0ZXN0
IGNoZWNrcyB0aGF0IHdlIGVuZm9yY2UgYWxsIHRoZSBzdXBwbGllZCBwb2xpY2llcy4gVGhpcyB0
ZXN0IHBhc3NlcyBpZiBpdCBkb2Vzbid0IGFsZXJ0IGZhaWwgYW5kIGlmIHRoZSBzdHlsZSBkb2Vz
bid0IGFwcGx5LgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9zZWN1cml0eS9j
b250ZW50U2VjdXJpdHlQb2xpY3kvZGVmYXVsdC1zcmMtaW5saW5lLWJsb2NrZWQtZXhwZWN0ZWQu
dHh0IGIvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9zZWN1cml0eS9jb250ZW50U2VjdXJpdHlQb2xp
Y3kvZGVmYXVsdC1zcmMtaW5saW5lLWJsb2NrZWQtZXhwZWN0ZWQudHh0CmluZGV4IGQ2ODVjYWRk
Mjk1YTkxZjRkZjA0NjQ2OTUyMmFhOGI5YTMxMWE4OGEuLjUyNWRkNzU1ZGNkODI3OWUyMTI1YzZj
NjE3MmY4NzQ5ZTg2ZjNlMzUgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvc2Vj
dXJpdHkvY29udGVudFNlY3VyaXR5UG9saWN5L2RlZmF1bHQtc3JjLWlubGluZS1ibG9ja2VkLWV4
cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3NlY3VyaXR5L2NvbnRlbnRT
ZWN1cml0eVBvbGljeS9kZWZhdWx0LXNyYy1pbmxpbmUtYmxvY2tlZC1leHBlY3RlZC50eHQKQEAg
LTEsNSArMSw1IEBACi1DT05TT0xFIE1FU1NBR0U6IFJlZnVzZWQgdG8gZXhlY3V0ZSBpbmxpbmUg
c2NyaXB0IGJlY2F1c2UgaXQgdmlvbGF0ZXMgdGhlIGZvbGxvd2luZyBDb250ZW50IFNlY3VyaXR5
IFBvbGljeSBkaXJlY3RpdmU6ICJkZWZhdWx0LXNyYyAnc2VsZiciLgorQ09OU09MRSBNRVNTQUdF
OiBsaW5lIDk6IFJlZnVzZWQgdG8gZXhlY3V0ZSBpbmxpbmUgc2NyaXB0IGJlY2F1c2UgaXQgdmlv
bGF0ZXMgdGhlIGZvbGxvd2luZyBDb250ZW50IFNlY3VyaXR5IFBvbGljeSBkaXJlY3RpdmU6ICJk
ZWZhdWx0LXNyYyAnc2VsZiciLgogCi1DT05TT0xFIE1FU1NBR0U6IFJlZnVzZWQgdG8gZXhlY3V0
ZSBpbmxpbmUgc2NyaXB0IGJlY2F1c2UgaXQgdmlvbGF0ZXMgdGhlIGZvbGxvd2luZyBDb250ZW50
IFNlY3VyaXR5IFBvbGljeSBkaXJlY3RpdmU6ICJkZWZhdWx0LXNyYyAnc2VsZiciLgorQ09OU09M
RSBNRVNTQUdFOiBsaW5lIDEyOiBSZWZ1c2VkIHRvIGV4ZWN1dGUgaW5saW5lIHNjcmlwdCBiZWNh
dXNlIGl0IHZpb2xhdGVzIHRoZSBmb2xsb3dpbmcgQ29udGVudCBTZWN1cml0eSBQb2xpY3kgZGly
ZWN0aXZlOiAiZGVmYXVsdC1zcmMgJ3NlbGYnIi4KIAogVGhpcyB0ZXN0IHBhc3NlcyBpZiBpdCBk
b2Vzbid0IGFsZXJ0IGZhaWwuCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3Nl
Y3VyaXR5L2NvbnRlbnRTZWN1cml0eVBvbGljeS9pbmplY3RlZC1pbmxpbmUtc2NyaXB0LWFsbG93
ZWQtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9zZWN1cml0eS9jb250ZW50
U2VjdXJpdHlQb2xpY3kvaW5qZWN0ZWQtaW5saW5lLXNjcmlwdC1hbGxvd2VkLWV4cGVjdGVkLnR4
dApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwLi5hYTk4NThiZjBlNTM2ZGZiNDdlMGQzYjY2NDY4YWY0N2Y2MzM0NWVmCi0t
LSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9zZWN1cml0eS9jb250ZW50
U2VjdXJpdHlQb2xpY3kvaW5qZWN0ZWQtaW5saW5lLXNjcmlwdC1hbGxvd2VkLWV4cGVjdGVkLnR4
dApAQCAtMCwwICsxLDMgQEAKK0FMRVJUOiBQYXNzIDEgb2YgMgorQUxFUlQ6IFBhc3MgMiBvZiAy
CisKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvc2VjdXJpdHkvY29udGVudFNl
Y3VyaXR5UG9saWN5L2luamVjdGVkLWlubGluZS1zY3JpcHQtYWxsb3dlZC5odG1sIGIvTGF5b3V0
VGVzdHMvaHR0cC90ZXN0cy9zZWN1cml0eS9jb250ZW50U2VjdXJpdHlQb2xpY3kvaW5qZWN0ZWQt
aW5saW5lLXNjcmlwdC1hbGxvd2VkLmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uY2ViMjdkNWJhZmI3MjVkMWM1
NDU3Yjc1Y2JjY2EyYjcyZmZhMzVjZQotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2h0
dHAvdGVzdHMvc2VjdXJpdHkvY29udGVudFNlY3VyaXR5UG9saWN5L2luamVjdGVkLWlubGluZS1z
Y3JpcHQtYWxsb3dlZC5odG1sCkBAIC0wLDAgKzEsMTAgQEAKKzwhRE9DVFlQRSBodG1sPgorPGh0
bWw+Cis8aGVhZD4KKzxtZXRhIGh0dHAtZXF1aXY9IlgtV2ViS2l0LUNTUCIgY29udGVudD0ic2Ny
aXB0LXNyYyBodHRwOi8vMTI3LjAuMC4xOiogJ3Vuc2FmZS1pbmxpbmUnIj4KKzxzY3JpcHQgc3Jj
PSJyZXNvdXJjZXMvZHVtcC1hcy10ZXh0LmpzIj48L3NjcmlwdD4KKzwvaGVhZD4KKzxib2R5Pgor
PHNjcmlwdCBzcmM9InJlc291cmNlcy9pbmplY3Qtc2NyaXB0LmpzIj48L3NjcmlwdD4KKzwvYm9k
eT4KKzwvaHRtbD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvc2VjdXJpdHkv
Y29udGVudFNlY3VyaXR5UG9saWN5L2luamVjdGVkLWlubGluZS1zY3JpcHQtYmxvY2tlZC1leHBl
Y3RlZC50eHQgYi9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3NlY3VyaXR5L2NvbnRlbnRTZWN1cml0
eVBvbGljeS9pbmplY3RlZC1pbmxpbmUtc2NyaXB0LWJsb2NrZWQtZXhwZWN0ZWQudHh0Cm5ldyBm
aWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAuLjgwNjZjYjMzYzRlMzNmMzM0ZDVkNWQ0N2Q5YTM5YTFmNTJmZDExNTYKLS0tIC9kZXYv
bnVsbAorKysgYi9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3NlY3VyaXR5L2NvbnRlbnRTZWN1cml0
eVBvbGljeS9pbmplY3RlZC1pbmxpbmUtc2NyaXB0LWJsb2NrZWQtZXhwZWN0ZWQudHh0CkBAIC0w
LDAgKzEsNSBAQAorQ09OU09MRSBNRVNTQUdFOiBsaW5lIDg6IFJlZnVzZWQgdG8gZXhlY3V0ZSBp
bmxpbmUgc2NyaXB0IGJlY2F1c2UgaXQgdmlvbGF0ZXMgdGhlIGZvbGxvd2luZyBDb250ZW50IFNl
Y3VyaXR5IFBvbGljeSBkaXJlY3RpdmU6ICJzY3JpcHQtc3JjIGh0dHA6Ly8xMjcuMC4wLjE6KiIu
CisKK0NPTlNPTEUgTUVTU0FHRTogUmVmdXNlZCB0byBleGVjdXRlIGlubGluZSBzY3JpcHQgYmVj
YXVzZSBpdCB2aW9sYXRlcyB0aGUgZm9sbG93aW5nIENvbnRlbnQgU2VjdXJpdHkgUG9saWN5IGRp
cmVjdGl2ZTogInNjcmlwdC1zcmMgaHR0cDovLzEyNy4wLjAuMToqIi4KKworCmRpZmYgLS1naXQg
YS9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3NlY3VyaXR5L2NvbnRlbnRTZWN1cml0eVBvbGljeS9p
bmplY3RlZC1pbmxpbmUtc2NyaXB0LWJsb2NrZWQuaHRtbCBiL0xheW91dFRlc3RzL2h0dHAvdGVz
dHMvc2VjdXJpdHkvY29udGVudFNlY3VyaXR5UG9saWN5L2luamVjdGVkLWlubGluZS1zY3JpcHQt
YmxvY2tlZC5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjYxMDg2OGI3ZWM3NmI1MDNhYmJkNDkzYzMyYjE1NDRm
ZDM5Mzc4YmIKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3NlY3Vy
aXR5L2NvbnRlbnRTZWN1cml0eVBvbGljeS9pbmplY3RlZC1pbmxpbmUtc2NyaXB0LWJsb2NrZWQu
aHRtbApAQCAtMCwwICsxLDEwIEBACis8IURPQ1RZUEUgaHRtbD4KKzxodG1sPgorPGhlYWQ+Cis8
bWV0YSBodHRwLWVxdWl2PSJYLVdlYktpdC1DU1AiIGNvbnRlbnQ9InNjcmlwdC1zcmMgaHR0cDov
LzEyNy4wLjAuMToqIj4KKzxzY3JpcHQgc3JjPSJyZXNvdXJjZXMvZHVtcC1hcy10ZXh0LmpzIj48
L3NjcmlwdD4KKzwvaGVhZD4KKzxib2R5PgorPHNjcmlwdCBzcmM9InJlc291cmNlcy9pbmplY3Qt
c2NyaXB0LmpzIj48L3NjcmlwdD4KKzwvYm9keT4KKzwvaHRtbD4KZGlmZiAtLWdpdCBhL0xheW91
dFRlc3RzL2h0dHAvdGVzdHMvc2VjdXJpdHkvY29udGVudFNlY3VyaXR5UG9saWN5L2luamVjdGVk
LWlubGluZS1zdHlsZS1hbGxvd2VkLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2h0dHAvdGVz
dHMvc2VjdXJpdHkvY29udGVudFNlY3VyaXR5UG9saWN5L2luamVjdGVkLWlubGluZS1zdHlsZS1h
bGxvd2VkLWV4cGVjdGVkLnR4dApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi40MzgxOGE5MzhmZDhiNGNmYjJjZjk2M2M1
ZmEwMzExMGNiNmVmMzUxCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvaHR0cC90ZXN0
cy9zZWN1cml0eS9jb250ZW50U2VjdXJpdHlQb2xpY3kvaW5qZWN0ZWQtaW5saW5lLXN0eWxlLWFs
bG93ZWQtZXhwZWN0ZWQudHh0CkBAIC0wLDAgKzEgQEAKK1BBU1M6IDIgc3R5bGVzaGVldHMgb24g
dGhlIHBhZ2UuCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3NlY3VyaXR5L2Nv
bnRlbnRTZWN1cml0eVBvbGljeS9pbmplY3RlZC1pbmxpbmUtc3R5bGUtYWxsb3dlZC5odG1sIGIv
TGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9zZWN1cml0eS9jb250ZW50U2VjdXJpdHlQb2xpY3kvaW5q
ZWN0ZWQtaW5saW5lLXN0eWxlLWFsbG93ZWQuaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRl
eCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5kNzJmZDM2NzUwNGRm
MTZjMzdjOWRkYWFhNDBkY2UwNTBjN2ViYzdjCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVz
dHMvaHR0cC90ZXN0cy9zZWN1cml0eS9jb250ZW50U2VjdXJpdHlQb2xpY3kvaW5qZWN0ZWQtaW5s
aW5lLXN0eWxlLWFsbG93ZWQuaHRtbApAQCAtMCwwICsxLDIyIEBACis8IURPQ1RZUEUgaHRtbD4K
KzxodG1sPgorPGhlYWQ+Cis8bWV0YSBodHRwLWVxdWl2PSJYLVdlYktpdC1DU1AiIGNvbnRlbnQ9
InN0eWxlLXNyYyAndW5zYWZlLWlubGluZSciPgorPHNjcmlwdCBzcmM9InJlc291cmNlcy9kdW1w
LWFzLXRleHQuanMiPjwvc2NyaXB0PgorPC9oZWFkPgorPGJvZHk+Cis8ZGl2IGlkPSJ0ZXN0MSI+
CisgIEZBSUwgMS8yCis8L2Rpdj4KKzxkaXYgaWQ9InRlc3QyIj4KKyAgRkFJTCAyLzIKKzwvZGl2
PgorPHNjcmlwdCBzcmM9InJlc291cmNlcy9pbmplY3Qtc3R5bGUuanMiPjwvc2NyaXB0PgorPHNj
cmlwdD4KKyAgaWYgKGRvY3VtZW50LnN0eWxlU2hlZXRzLmxlbmd0aCA9PT0gMikKKyAgICBkb2N1
bWVudC53cml0ZSgiUEFTUzogMiBzdHlsZXNoZWV0cyBvbiB0aGUgcGFnZS4iKTsKKyAgZWxzZQor
ICAgIGRvY3VtZW50LndyaXRlKCJGQUlMOiAiICsgZG9jdW1lbnQuc3R5bGVTaGVldHMubGVuZ3Ro
ICsgIiBzdHlsZXNoZWV0cyBvbiB0aGUgcGFnZSAoc2hvdWxkIGJlIDIpLiIpOworPC9zY3JpcHQ+
Cis8L2JvZHk+Cis8L2h0bWw+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3Nl
Y3VyaXR5L2NvbnRlbnRTZWN1cml0eVBvbGljeS9pbmplY3RlZC1pbmxpbmUtc3R5bGUtYmxvY2tl
ZC1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3NlY3VyaXR5L2NvbnRlbnRT
ZWN1cml0eVBvbGljeS9pbmplY3RlZC1pbmxpbmUtc3R5bGUtYmxvY2tlZC1leHBlY3RlZC50eHQK
bmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMC4uZWY4MGVhODlhNjI4MTg0NjU3NjI4NWE1ZjJkODJmZTBhNzY1Yjc0MgotLS0g
L2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvc2VjdXJpdHkvY29udGVudFNl
Y3VyaXR5UG9saWN5L2luamVjdGVkLWlubGluZS1zdHlsZS1ibG9ja2VkLWV4cGVjdGVkLnR4dApA
QCAtMCwwICsxLDcgQEAKK0NPTlNPTEUgTUVTU0FHRTogbGluZSAxNDogUmVmdXNlZCB0byBhcHBs
eSBpbmxpbmUgc3R5bGUgYmVjYXVzZSBpdCB2aW9sYXRlcyB0aGUgZm9sbG93aW5nIENvbnRlbnQg
U2VjdXJpdHkgUG9saWN5IGRpcmVjdGl2ZTogInN0eWxlLXNyYyAnbm9uZSciLgorCitDT05TT0xF
IE1FU1NBR0U6IFJlZnVzZWQgdG8gYXBwbHkgaW5saW5lIHN0eWxlIGJlY2F1c2UgaXQgdmlvbGF0
ZXMgdGhlIGZvbGxvd2luZyBDb250ZW50IFNlY3VyaXR5IFBvbGljeSBkaXJlY3RpdmU6ICJzdHls
ZS1zcmMgJ25vbmUnIi4KKworUEFTUyAxLzIKK1BBU1MgMi8yCiswCmRpZmYgLS1naXQgYS9MYXlv
dXRUZXN0cy9odHRwL3Rlc3RzL3NlY3VyaXR5L2NvbnRlbnRTZWN1cml0eVBvbGljeS9pbmplY3Rl
ZC1pbmxpbmUtc3R5bGUtYmxvY2tlZC5odG1sIGIvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9zZWN1
cml0eS9jb250ZW50U2VjdXJpdHlQb2xpY3kvaW5qZWN0ZWQtaW5saW5lLXN0eWxlLWJsb2NrZWQu
aHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwLi5hMGM4ZjgyYmE0MTgzYjg5MDQ2N2IzMzMzZjg3MzA4NzYwYTA5OWVl
Ci0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9zZWN1cml0eS9jb250
ZW50U2VjdXJpdHlQb2xpY3kvaW5qZWN0ZWQtaW5saW5lLXN0eWxlLWJsb2NrZWQuaHRtbApAQCAt
MCwwICsxLDE5IEBACis8IURPQ1RZUEUgaHRtbD4KKzxodG1sPgorPGhlYWQ+Cis8bWV0YSBodHRw
LWVxdWl2PSJYLVdlYktpdC1DU1AiIGNvbnRlbnQ9InN0eWxlLXNyYyAnbm9uZSciPgorPHNjcmlw
dCBzcmM9InJlc291cmNlcy9kdW1wLWFzLXRleHQuanMiPjwvc2NyaXB0PgorPC9oZWFkPgorPGJv
ZHk+Cis8ZGl2IGlkPSJ0ZXN0MSI+CisgIFBBU1MgMS8yCis8L2Rpdj4KKzxkaXYgaWQ9InRlc3Qy
Ij4KKyAgUEFTUyAyLzIKKzwvZGl2PgorPHNjcmlwdCBzcmM9InJlc291cmNlcy9pbmplY3Qtc3R5
bGUuanMiPjwvc2NyaXB0PgorPHNjcmlwdD4KK2RvY3VtZW50LndyaXRlKGRvY3VtZW50LnN0eWxl
U2hlZXRzLmxlbmd0aCk7Cis8L3NjcmlwdD4KKzwvYm9keT4KKzwvaHRtbD4KZGlmZiAtLWdpdCBh
L0xheW91dFRlc3RzL2h0dHAvdGVzdHMvc2VjdXJpdHkvY29udGVudFNlY3VyaXR5UG9saWN5L2lu
bGluZS1zY3JpcHQtYmxvY2tlZC1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9odHRwL3Rlc3Rz
L3NlY3VyaXR5L2NvbnRlbnRTZWN1cml0eVBvbGljeS9pbmxpbmUtc2NyaXB0LWJsb2NrZWQtZXhw
ZWN0ZWQudHh0CmluZGV4IDBjZWFkNjEzZWRhNzU0ZTU5MjdjYzhkMWNkNzg1NTRjNjMyMTY1MTIu
LmUxYjY4YjUwZjdlNzY3Y2RiNzg5MWQ4MWYwMjI3NTBhZjQyODE5N2YgMTAwNjQ0Ci0tLSBhL0xh
eW91dFRlc3RzL2h0dHAvdGVzdHMvc2VjdXJpdHkvY29udGVudFNlY3VyaXR5UG9saWN5L2lubGlu
ZS1zY3JpcHQtYmxvY2tlZC1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvaHR0cC90ZXN0
cy9zZWN1cml0eS9jb250ZW50U2VjdXJpdHlQb2xpY3kvaW5saW5lLXNjcmlwdC1ibG9ja2VkLWV4
cGVjdGVkLnR4dApAQCAtMSw1ICsxLDUgQEAKLUNPTlNPTEUgTUVTU0FHRTogUmVmdXNlZCB0byBl
eGVjdXRlIGlubGluZSBzY3JpcHQgYmVjYXVzZSBpdCB2aW9sYXRlcyB0aGUgZm9sbG93aW5nIENv
bnRlbnQgU2VjdXJpdHkgUG9saWN5IGRpcmVjdGl2ZTogInNjcmlwdC1zcmMgaHR0cDovLzEyNy4w
LjAuMToqIi4KK0NPTlNPTEUgTUVTU0FHRTogbGluZSA5OiBSZWZ1c2VkIHRvIGV4ZWN1dGUgaW5s
aW5lIHNjcmlwdCBiZWNhdXNlIGl0IHZpb2xhdGVzIHRoZSBmb2xsb3dpbmcgQ29udGVudCBTZWN1
cml0eSBQb2xpY3kgZGlyZWN0aXZlOiAic2NyaXB0LXNyYyBodHRwOi8vMTI3LjAuMC4xOioiLgog
Ci1DT05TT0xFIE1FU1NBR0U6IFJlZnVzZWQgdG8gZXhlY3V0ZSBpbmxpbmUgc2NyaXB0IGJlY2F1
c2UgaXQgdmlvbGF0ZXMgdGhlIGZvbGxvd2luZyBDb250ZW50IFNlY3VyaXR5IFBvbGljeSBkaXJl
Y3RpdmU6ICJzY3JpcHQtc3JjIGh0dHA6Ly8xMjcuMC4wLjE6KiIuCitDT05TT0xFIE1FU1NBR0U6
IGxpbmUgMTI6IFJlZnVzZWQgdG8gZXhlY3V0ZSBpbmxpbmUgc2NyaXB0IGJlY2F1c2UgaXQgdmlv
bGF0ZXMgdGhlIGZvbGxvd2luZyBDb250ZW50IFNlY3VyaXR5IFBvbGljeSBkaXJlY3RpdmU6ICJz
Y3JpcHQtc3JjIGh0dHA6Ly8xMjcuMC4wLjE6KiIuCiAKIFRoaXMgdGVzdCBwYXNzZXMgaWYgaXQg
ZG9lc24ndCBhbGVydCBmYWlsLgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9z
ZWN1cml0eS9jb250ZW50U2VjdXJpdHlQb2xpY3kvaW5saW5lLXNjcmlwdC1ibG9ja2VkLWdvb2Z5
LWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvc2VjdXJpdHkvY29udGVudFNl
Y3VyaXR5UG9saWN5L2lubGluZS1zY3JpcHQtYmxvY2tlZC1nb29meS1leHBlY3RlZC50eHQKaW5k
ZXggNWJiMDQ1YzdjOTUzNmE0MjQwZmQ2ZTY3N2Q2ZGI2YWRiMDQ2NDFjZi4uNTM1OGMwNTY0Mjg2
NDRlYzRhNTFmYzJlMDRhY2VmMTE1MmU0YTcwNiAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaHR0
cC90ZXN0cy9zZWN1cml0eS9jb250ZW50U2VjdXJpdHlQb2xpY3kvaW5saW5lLXNjcmlwdC1ibG9j
a2VkLWdvb2Z5LWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3NlY3Vy
aXR5L2NvbnRlbnRTZWN1cml0eVBvbGljeS9pbmxpbmUtc2NyaXB0LWJsb2NrZWQtZ29vZnktZXhw
ZWN0ZWQudHh0CkBAIC0xLDcgKzEsNyBAQAogQ09OU09MRSBNRVNTQUdFOiBVbnJlY29nbml6ZWQg
Q29udGVudC1TZWN1cml0eS1Qb2xpY3kgZGlyZWN0aXZlICdvcHRpb25zJy4KIAotQ09OU09MRSBN
RVNTQUdFOiBSZWZ1c2VkIHRvIGV4ZWN1dGUgaW5saW5lIHNjcmlwdCBiZWNhdXNlIGl0IHZpb2xh
dGVzIHRoZSBmb2xsb3dpbmcgQ29udGVudCBTZWN1cml0eSBQb2xpY3kgZGlyZWN0aXZlOiAic2Ny
aXB0LXNyYyBodHRwOi8vMTI3LjAuMC4xOioiLgorQ09OU09MRSBNRVNTQUdFOiBsaW5lIDk6IFJl
ZnVzZWQgdG8gZXhlY3V0ZSBpbmxpbmUgc2NyaXB0IGJlY2F1c2UgaXQgdmlvbGF0ZXMgdGhlIGZv
bGxvd2luZyBDb250ZW50IFNlY3VyaXR5IFBvbGljeSBkaXJlY3RpdmU6ICJzY3JpcHQtc3JjIGh0
dHA6Ly8xMjcuMC4wLjE6KiIuCiAKLUNPTlNPTEUgTUVTU0FHRTogUmVmdXNlZCB0byBleGVjdXRl
IGlubGluZSBldmVudCBoYW5kbGVyIGJlY2F1c2UgaXQgdmlvbGF0ZXMgdGhlIGZvbGxvd2luZyBD
b250ZW50IFNlY3VyaXR5IFBvbGljeSBkaXJlY3RpdmU6ICJzY3JpcHQtc3JjIGh0dHA6Ly8xMjcu
MC4wLjE6KiIuCitDT05TT0xFIE1FU1NBR0U6IGxpbmUgNzogUmVmdXNlZCB0byBleGVjdXRlIGlu
bGluZSBldmVudCBoYW5kbGVyIGJlY2F1c2UgaXQgdmlvbGF0ZXMgdGhlIGZvbGxvd2luZyBDb250
ZW50IFNlY3VyaXR5IFBvbGljeSBkaXJlY3RpdmU6ICJzY3JpcHQtc3JjIGh0dHA6Ly8xMjcuMC4w
LjE6KiIuCiAKIFRoaXMgdGVzdCBwYXNzZXMgaWYgaXQgZG9lc24ndCBhbGVydCBmYWlsLgpkaWZm
IC0tZ2l0IGEvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9zZWN1cml0eS9jb250ZW50U2VjdXJpdHlQ
b2xpY3kvaW5saW5lLXNjcmlwdC1ibG9ja2VkLWphdmFzY3JpcHQtdXJsLWV4cGVjdGVkLnR4dCBi
L0xheW91dFRlc3RzL2h0dHAvdGVzdHMvc2VjdXJpdHkvY29udGVudFNlY3VyaXR5UG9saWN5L2lu
bGluZS1zY3JpcHQtYmxvY2tlZC1qYXZhc2NyaXB0LXVybC1leHBlY3RlZC50eHQKaW5kZXggZWQw
NjI0NDY3Mjg1ZTgxMGVhNjY0ODJjY2RmNDlhZmI0NDAwZjEzNS4uOTU0NTAxY2RjZGQ3M2E3OWJh
NDJhZmFlNjBkMGVlYmJmYjdmZjEzZiAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaHR0cC90ZXN0
cy9zZWN1cml0eS9jb250ZW50U2VjdXJpdHlQb2xpY3kvaW5saW5lLXNjcmlwdC1ibG9ja2VkLWph
dmFzY3JpcHQtdXJsLWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3Nl
Y3VyaXR5L2NvbnRlbnRTZWN1cml0eVBvbGljeS9pbmxpbmUtc2NyaXB0LWJsb2NrZWQtamF2YXNj
cmlwdC11cmwtZXhwZWN0ZWQudHh0CkBAIC00LDYgKzQsNiBAQCBDT05TT0xFIE1FU1NBR0U6IFVu
cmVjb2duaXplZCBDb250ZW50LVNlY3VyaXR5LVBvbGljeSBkaXJlY3RpdmUgJ29wdGlvbnMnLgog
CiBDT05TT0xFIE1FU1NBR0U6IFVucmVjb2duaXplZCBDb250ZW50LVNlY3VyaXR5LVBvbGljeSBk
aXJlY3RpdmUgJ29wdGlvbnMnLgogCi1DT05TT0xFIE1FU1NBR0U6IFJlZnVzZWQgdG8gZXhlY3V0
ZSBKYXZhU2NyaXB0IFVSTCBiZWNhdXNlIGl0IHZpb2xhdGVzIHRoZSBmb2xsb3dpbmcgQ29udGVu
dCBTZWN1cml0eSBQb2xpY3kgZGlyZWN0aXZlOiAic2NyaXB0LXNyYyBodHRwOi8vMTI3LjAuMC4x
OioiLgorQ09OU09MRSBNRVNTQUdFOiBsaW5lIDE6IFJlZnVzZWQgdG8gZXhlY3V0ZSBKYXZhU2Ny
aXB0IFVSTCBiZWNhdXNlIGl0IHZpb2xhdGVzIHRoZSBmb2xsb3dpbmcgQ29udGVudCBTZWN1cml0
eSBQb2xpY3kgZGlyZWN0aXZlOiAic2NyaXB0LXNyYyBodHRwOi8vMTI3LjAuMC4xOioiLgogCiBU
aGlzIHRlc3QgcGFzc2VzIGlmIGl0IGRvZXNuJ3QgYWxlcnQgZmFpbC4gCmRpZmYgLS1naXQgYS9M
YXlvdXRUZXN0cy9odHRwL3Rlc3RzL3NlY3VyaXR5L2NvbnRlbnRTZWN1cml0eVBvbGljeS9pbmxp
bmUtc3R5bGUtYXR0cmlidXRlLWJsb2NrZWQtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaHR0
cC90ZXN0cy9zZWN1cml0eS9jb250ZW50U2VjdXJpdHlQb2xpY3kvaW5saW5lLXN0eWxlLWF0dHJp
YnV0ZS1ibG9ja2VkLWV4cGVjdGVkLnR4dAppbmRleCA3MzI1NDYyNTEwYTViNjc5YjEwZGY5NTAz
OGJlMmI1ODY3OTE5OGYxLi5lN2E2ODgzMTZkM2RjYWJlMzNlODFjYzNkZjM2MzVkZGU1MTgxM2Vl
IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3NlY3VyaXR5L2NvbnRlbnRTZWN1
cml0eVBvbGljeS9pbmxpbmUtc3R5bGUtYXR0cmlidXRlLWJsb2NrZWQtZXhwZWN0ZWQudHh0Cisr
KyBiL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvc2VjdXJpdHkvY29udGVudFNlY3VyaXR5UG9saWN5
L2lubGluZS1zdHlsZS1hdHRyaWJ1dGUtYmxvY2tlZC1leHBlY3RlZC50eHQKQEAgLTEsMyArMSwz
IEBACi1DT05TT0xFIE1FU1NBR0U6IFJlZnVzZWQgdG8gYXBwbHkgaW5saW5lIHN0eWxlIGJlY2F1
c2UgaXQgdmlvbGF0ZXMgdGhlIGZvbGxvd2luZyBDb250ZW50IFNlY3VyaXR5IFBvbGljeSBkaXJl
Y3RpdmU6ICJzdHlsZS1zcmMgJ25vbmUnIi4KK0NPTlNPTEUgTUVTU0FHRTogbGluZSAxMDogUmVm
dXNlZCB0byBhcHBseSBpbmxpbmUgc3R5bGUgYmVjYXVzZSBpdCB2aW9sYXRlcyB0aGUgZm9sbG93
aW5nIENvbnRlbnQgU2VjdXJpdHkgUG9saWN5IGRpcmVjdGl2ZTogInN0eWxlLXNyYyAnbm9uZSci
LgogCiBQQVNTCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3NlY3VyaXR5L2Nv
bnRlbnRTZWN1cml0eVBvbGljeS9pbmxpbmUtc3R5bGUtYmxvY2tlZC1leHBlY3RlZC50eHQgYi9M
YXlvdXRUZXN0cy9odHRwL3Rlc3RzL3NlY3VyaXR5L2NvbnRlbnRTZWN1cml0eVBvbGljeS9pbmxp
bmUtc3R5bGUtYmxvY2tlZC1leHBlY3RlZC50eHQKaW5kZXggNzMyNTQ2MjUxMGE1YjY3OWIxMGRm
OTUwMzhiZTJiNTg2NzkxOThmMS4uOTYzMGQ3YTE3YmM3NDEzZDZlM2UyOGJhZWI4YzE2NDhiNDA3
ZWZlYiAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9zZWN1cml0eS9jb250ZW50
U2VjdXJpdHlQb2xpY3kvaW5saW5lLXN0eWxlLWJsb2NrZWQtZXhwZWN0ZWQudHh0CisrKyBiL0xh
eW91dFRlc3RzL2h0dHAvdGVzdHMvc2VjdXJpdHkvY29udGVudFNlY3VyaXR5UG9saWN5L2lubGlu
ZS1zdHlsZS1ibG9ja2VkLWV4cGVjdGVkLnR4dApAQCAtMSwzICsxLDMgQEAKLUNPTlNPTEUgTUVT
U0FHRTogUmVmdXNlZCB0byBhcHBseSBpbmxpbmUgc3R5bGUgYmVjYXVzZSBpdCB2aW9sYXRlcyB0
aGUgZm9sbG93aW5nIENvbnRlbnQgU2VjdXJpdHkgUG9saWN5IGRpcmVjdGl2ZTogInN0eWxlLXNy
YyAnbm9uZSciLgorQ09OU09MRSBNRVNTQUdFOiBsaW5lIDU6IFJlZnVzZWQgdG8gYXBwbHkgaW5s
aW5lIHN0eWxlIGJlY2F1c2UgaXQgdmlvbGF0ZXMgdGhlIGZvbGxvd2luZyBDb250ZW50IFNlY3Vy
aXR5IFBvbGljeSBkaXJlY3RpdmU6ICJzdHlsZS1zcmMgJ25vbmUnIi4KIAogUEFTUwpkaWZmIC0t
Z2l0IGEvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9zZWN1cml0eS9jb250ZW50U2VjdXJpdHlQb2xp
Y3kvamF2YXNjcmlwdC11cmwtYmxvY2tlZC1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9odHRw
L3Rlc3RzL3NlY3VyaXR5L2NvbnRlbnRTZWN1cml0eVBvbGljeS9qYXZhc2NyaXB0LXVybC1ibG9j
a2VkLWV4cGVjdGVkLnR4dAppbmRleCA4ZTJkYzMzMzIxNzM1MmY0ODU0NDk0NmZlMTQyZDU5MGM4
YTk3YWUzLi4xY2E5MjYyYmQ1MzIxZWE1ZmNmNTk3YzA3ZTFjMzE5MDg4OWRjMmQ5IDEwMDY0NAot
LS0gYS9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3NlY3VyaXR5L2NvbnRlbnRTZWN1cml0eVBvbGlj
eS9qYXZhc2NyaXB0LXVybC1ibG9ja2VkLWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9o
dHRwL3Rlc3RzL3NlY3VyaXR5L2NvbnRlbnRTZWN1cml0eVBvbGljeS9qYXZhc2NyaXB0LXVybC1i
bG9ja2VkLWV4cGVjdGVkLnR4dApAQCAtNCw3ICs0LDcgQEAgQ09OU09MRSBNRVNTQUdFOiBVbnJl
Y29nbml6ZWQgQ29udGVudC1TZWN1cml0eS1Qb2xpY3kgZGlyZWN0aXZlICdhbGxvdycuCiAKIENP
TlNPTEUgTUVTU0FHRTogVW5yZWNvZ25pemVkIENvbnRlbnQtU2VjdXJpdHktUG9saWN5IGRpcmVj
dGl2ZSAnYWxsb3cnLgogCi1DT05TT0xFIE1FU1NBR0U6IFJlZnVzZWQgdG8gZXhlY3V0ZSBKYXZh
U2NyaXB0IFVSTCBiZWNhdXNlIGl0IHZpb2xhdGVzIHRoZSBmb2xsb3dpbmcgQ29udGVudCBTZWN1
cml0eSBQb2xpY3kgZGlyZWN0aXZlOiAic2NyaXB0LXNyYyAnbm9uZSciLgorQ09OU09MRSBNRVNT
QUdFOiBsaW5lIDE6IFJlZnVzZWQgdG8gZXhlY3V0ZSBKYXZhU2NyaXB0IFVSTCBiZWNhdXNlIGl0
IHZpb2xhdGVzIHRoZSBmb2xsb3dpbmcgQ29udGVudCBTZWN1cml0eSBQb2xpY3kgZGlyZWN0aXZl
OiAic2NyaXB0LXNyYyAnbm9uZSciLgogCiBDT05TT0xFIE1FU1NBR0U6IFVucmVjb2duaXplZCBD
b250ZW50LVNlY3VyaXR5LVBvbGljeSBkaXJlY3RpdmUgJ2FsbG93Jy4KIApkaWZmIC0tZ2l0IGEv
TGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9zZWN1cml0eS9jb250ZW50U2VjdXJpdHlQb2xpY3kvcmVw
b3J0LWFuZC1lbmZvcmNlLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvc2Vj
dXJpdHkvY29udGVudFNlY3VyaXR5UG9saWN5L3JlcG9ydC1hbmQtZW5mb3JjZS1leHBlY3RlZC50
eHQKaW5kZXggMmQzYjJhYmE2ZmRjYWVjOGY4MjQzMTJjMTQ3YmY3NWIzZTZlNjdhOC4uOWFlZmE0
Y2Y5OWI2M2QwYTE1NWFkOTM4YzZmODVhNmZjOWQ1MTc5YSAxMDA2NDQKLS0tIGEvTGF5b3V0VGVz
dHMvaHR0cC90ZXN0cy9zZWN1cml0eS9jb250ZW50U2VjdXJpdHlQb2xpY3kvcmVwb3J0LWFuZC1l
bmZvcmNlLWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3NlY3VyaXR5
L2NvbnRlbnRTZWN1cml0eVBvbGljeS9yZXBvcnQtYW5kLWVuZm9yY2UtZXhwZWN0ZWQudHh0CkBA
IC0xLDQgKzEsNCBAQAotQ09OU09MRSBNRVNTQUdFOiBbUmVwb3J0IE9ubHldIFJlZnVzZWQgdG8g
ZXhlY3V0ZSBpbmxpbmUgc2NyaXB0IGJlY2F1c2UgaXQgdmlvbGF0ZXMgdGhlIGZvbGxvd2luZyBD
b250ZW50IFNlY3VyaXR5IFBvbGljeSBkaXJlY3RpdmU6ICJzY3JpcHQtc3JjICdzZWxmJyIuCitD
T05TT0xFIE1FU1NBR0U6IGxpbmUgMzogW1JlcG9ydCBPbmx5XSBSZWZ1c2VkIHRvIGV4ZWN1dGUg
aW5saW5lIHNjcmlwdCBiZWNhdXNlIGl0IHZpb2xhdGVzIHRoZSBmb2xsb3dpbmcgQ29udGVudCBT
ZWN1cml0eSBQb2xpY3kgZGlyZWN0aXZlOiAic2NyaXB0LXNyYyAnc2VsZiciLgogCiBBTEVSVDog
UEFTUwogQ09OU09MRSBNRVNTQUdFOiBSZWZ1c2VkIHRvIGxvYWQgdGhlIGltYWdlICdodHRwOi8v
MTI3LjAuMC4xOjgwMDAvc2VjdXJpdHkvcmVzb3VyY2VzL2FiZS5wbmcnIGJlY2F1c2UgaXQgdmlv
bGF0ZXMgdGhlIGZvbGxvd2luZyBDb250ZW50IFNlY3VyaXR5IFBvbGljeSBkaXJlY3RpdmU6ICJp
bWctc3JjICdub25lJyIuCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3NlY3Vy
aXR5L2NvbnRlbnRTZWN1cml0eVBvbGljeS9yZXBvcnQtb25seS1leHBlY3RlZC50eHQgYi9MYXlv
dXRUZXN0cy9odHRwL3Rlc3RzL3NlY3VyaXR5L2NvbnRlbnRTZWN1cml0eVBvbGljeS9yZXBvcnQt
b25seS1leHBlY3RlZC50eHQKaW5kZXggNzRkYzVkNjBmODhmOTE3MmMyYjc1MDc5MTVjNTdlYmUw
MzFiNzNkMi4uYTFlZGYzYWVhMWE3Mzg1MDhjZjIxYmRmYzA4M2E5YTAyMTg1OTc1NiAxMDA2NDQK
LS0tIGEvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9zZWN1cml0eS9jb250ZW50U2VjdXJpdHlQb2xp
Y3kvcmVwb3J0LW9ubHktZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL2h0dHAvdGVzdHMv
c2VjdXJpdHkvY29udGVudFNlY3VyaXR5UG9saWN5L3JlcG9ydC1vbmx5LWV4cGVjdGVkLnR4dApA
QCAtMSw0ICsxLDQgQEAKLUNPTlNPTEUgTUVTU0FHRTogW1JlcG9ydCBPbmx5XSBSZWZ1c2VkIHRv
IGV4ZWN1dGUgaW5saW5lIHNjcmlwdCBiZWNhdXNlIGl0IHZpb2xhdGVzIHRoZSBmb2xsb3dpbmcg
Q29udGVudCBTZWN1cml0eSBQb2xpY3kgZGlyZWN0aXZlOiAic2NyaXB0LXNyYyAnc2VsZiciLgor
Q09OU09MRSBNRVNTQUdFOiBsaW5lIDI6IFtSZXBvcnQgT25seV0gUmVmdXNlZCB0byBleGVjdXRl
IGlubGluZSBzY3JpcHQgYmVjYXVzZSBpdCB2aW9sYXRlcyB0aGUgZm9sbG93aW5nIENvbnRlbnQg
U2VjdXJpdHkgUG9saWN5IGRpcmVjdGl2ZTogInNjcmlwdC1zcmMgJ3NlbGYnIi4KIAogQUxFUlQ6
IFBBU1MKIENTUCByZXBvcnQgcmVjZWl2ZWQ6CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9odHRw
L3Rlc3RzL3NlY3VyaXR5L2NvbnRlbnRTZWN1cml0eVBvbGljeS9yZXBvcnQtb25seS1mcm9tLWhl
YWRlci1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3NlY3VyaXR5L2NvbnRl
bnRTZWN1cml0eVBvbGljeS9yZXBvcnQtb25seS1mcm9tLWhlYWRlci1leHBlY3RlZC50eHQKaW5k
ZXggYWNlMTY0Njg3NWE2MjdjMGM5ZGYzZjJhMGVlYmFhNTk5MzdjZjNiMC4uY2VjMmMyOGU3N2Vj
OGNmOWM3MjhjMWM0ZmVlODA1Y2QzMzRhZWMzZCAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaHR0
cC90ZXN0cy9zZWN1cml0eS9jb250ZW50U2VjdXJpdHlQb2xpY3kvcmVwb3J0LW9ubHktZnJvbS1o
ZWFkZXItZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvc2VjdXJpdHkv
Y29udGVudFNlY3VyaXR5UG9saWN5L3JlcG9ydC1vbmx5LWZyb20taGVhZGVyLWV4cGVjdGVkLnR4
dApAQCAtMSw0ICsxLDQgQEAKLUNPTlNPTEUgTUVTU0FHRTogW1JlcG9ydCBPbmx5XSBSZWZ1c2Vk
IHRvIGV4ZWN1dGUgaW5saW5lIHNjcmlwdCBiZWNhdXNlIGl0IHZpb2xhdGVzIHRoZSBmb2xsb3dp
bmcgQ29udGVudCBTZWN1cml0eSBQb2xpY3kgZGlyZWN0aXZlOiAic2NyaXB0LXNyYyAnc2VsZici
LgorQ09OU09MRSBNRVNTQUdFOiBsaW5lIDE6IFtSZXBvcnQgT25seV0gUmVmdXNlZCB0byBleGVj
dXRlIGlubGluZSBzY3JpcHQgYmVjYXVzZSBpdCB2aW9sYXRlcyB0aGUgZm9sbG93aW5nIENvbnRl
bnQgU2VjdXJpdHkgUG9saWN5IGRpcmVjdGl2ZTogInNjcmlwdC1zcmMgJ3NlbGYnIi4KIAogQUxF
UlQ6IFBBU1MKIENTUCByZXBvcnQgcmVjZWl2ZWQ6CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9o
dHRwL3Rlc3RzL3NlY3VyaXR5L2NvbnRlbnRTZWN1cml0eVBvbGljeS9yZXBvcnQtdXJpLWV4cGVj
dGVkLnR4dCBiL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvc2VjdXJpdHkvY29udGVudFNlY3VyaXR5
UG9saWN5L3JlcG9ydC11cmktZXhwZWN0ZWQudHh0CmluZGV4IGI4MDUwZmYyMDMwMTdmZGU4YTJi
Y2VmMGM0ZDdhZDEwMDM0MTZiYmQuLjU2YTZlZjYyMzE1ZDFlYWU1YWJkMGQ5ZTgwMTQzNDM5OGNh
ZDgwMGYgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvc2VjdXJpdHkvY29udGVu
dFNlY3VyaXR5UG9saWN5L3JlcG9ydC11cmktZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3Rz
L2h0dHAvdGVzdHMvc2VjdXJpdHkvY29udGVudFNlY3VyaXR5UG9saWN5L3JlcG9ydC11cmktZXhw
ZWN0ZWQudHh0CkBAIC0xLDQgKzEsNCBAQAotQ09OU09MRSBNRVNTQUdFOiBSZWZ1c2VkIHRvIGV4
ZWN1dGUgaW5saW5lIHNjcmlwdCBiZWNhdXNlIGl0IHZpb2xhdGVzIHRoZSBmb2xsb3dpbmcgQ29u
dGVudCBTZWN1cml0eSBQb2xpY3kgZGlyZWN0aXZlOiAic2NyaXB0LXNyYyAnc2VsZiciLgorQ09O
U09MRSBNRVNTQUdFOiBsaW5lIDI6IFJlZnVzZWQgdG8gZXhlY3V0ZSBpbmxpbmUgc2NyaXB0IGJl
Y2F1c2UgaXQgdmlvbGF0ZXMgdGhlIGZvbGxvd2luZyBDb250ZW50IFNlY3VyaXR5IFBvbGljeSBk
aXJlY3RpdmU6ICJzY3JpcHQtc3JjICdzZWxmJyIuCiAKIENTUCByZXBvcnQgcmVjZWl2ZWQ6CiBD
T05URU5UX1RZUEU6IGFwcGxpY2F0aW9uL2pzb24KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2h0
dHAvdGVzdHMvc2VjdXJpdHkvY29udGVudFNlY3VyaXR5UG9saWN5L3JlcG9ydC11cmktZnJvbS1j
aGlsZC1mcmFtZS1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3NlY3VyaXR5
L2NvbnRlbnRTZWN1cml0eVBvbGljeS9yZXBvcnQtdXJpLWZyb20tY2hpbGQtZnJhbWUtZXhwZWN0
ZWQudHh0CmluZGV4IDI1ZGU4ZTE5NzU0YTI5YWM5ZmNlMjA0OTYzNGQ3YWYyZmQxNTc5ZjcuLjg0
MzBjMzA5ODE1YmIxMjRiNzBiNjM4NzBlNDVjNWNiMGM0YzQwYzIgMTAwNjQ0Ci0tLSBhL0xheW91
dFRlc3RzL2h0dHAvdGVzdHMvc2VjdXJpdHkvY29udGVudFNlY3VyaXR5UG9saWN5L3JlcG9ydC11
cmktZnJvbS1jaGlsZC1mcmFtZS1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvaHR0cC90
ZXN0cy9zZWN1cml0eS9jb250ZW50U2VjdXJpdHlQb2xpY3kvcmVwb3J0LXVyaS1mcm9tLWNoaWxk
LWZyYW1lLWV4cGVjdGVkLnR4dApAQCAtMSw0ICsxLDQgQEAKLUNPTlNPTEUgTUVTU0FHRTogUmVm
dXNlZCB0byBleGVjdXRlIGlubGluZSBzY3JpcHQgYmVjYXVzZSBpdCB2aW9sYXRlcyB0aGUgZm9s
bG93aW5nIENvbnRlbnQgU2VjdXJpdHkgUG9saWN5IGRpcmVjdGl2ZTogInNjcmlwdC1zcmMgJ3Nl
bGYnIi4KK0NPTlNPTEUgTUVTU0FHRTogbGluZSAyOiBSZWZ1c2VkIHRvIGV4ZWN1dGUgaW5saW5l
IHNjcmlwdCBiZWNhdXNlIGl0IHZpb2xhdGVzIHRoZSBmb2xsb3dpbmcgQ29udGVudCBTZWN1cml0
eSBQb2xpY3kgZGlyZWN0aXZlOiAic2NyaXB0LXNyYyAnc2VsZiciLgogCiAKIApkaWZmIC0tZ2l0
IGEvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9zZWN1cml0eS9jb250ZW50U2VjdXJpdHlQb2xpY3kv
cmVzb3VyY2VzL2luamVjdC1zY3JpcHQuanMgYi9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3NlY3Vy
aXR5L2NvbnRlbnRTZWN1cml0eVBvbGljeS9yZXNvdXJjZXMvaW5qZWN0LXNjcmlwdC5qcwpuZXcg
ZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwLi43NTZiYWZmZTllZTk4NGU0NTc1OWExYzM5NTQ5OTY4OGFhYjgyZjFiCi0tLSAvZGV2
L251bGwKKysrIGIvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9zZWN1cml0eS9jb250ZW50U2VjdXJp
dHlQb2xpY3kvcmVzb3VyY2VzL2luamVjdC1zY3JpcHQuanMKQEAgLTAsMCArMSw1IEBACitkb2N1
bWVudC53cml0ZSgiPHNjcmlwdD5hbGVydCgnUGFzcyAxIG9mIDInKTs8L3NjcmlwdD4iKTsKKwor
dmFyIHMgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCdzY3JpcHQnKTsKK3MuaW5uZXJUZXh0ID0g
ImFsZXJ0KCdQYXNzIDIgb2YgMicpOyI7Citkb2N1bWVudC5ib2R5LmFwcGVuZENoaWxkKHMpOwpk
aWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9zZWN1cml0eS9jb250ZW50U2VjdXJp
dHlQb2xpY3kvcmVzb3VyY2VzL2luamVjdC1zdHlsZS5qcyBiL0xheW91dFRlc3RzL2h0dHAvdGVz
dHMvc2VjdXJpdHkvY29udGVudFNlY3VyaXR5UG9saWN5L3Jlc291cmNlcy9pbmplY3Qtc3R5bGUu
anMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMC4uMjE5ZDhmNTU5YzVhMGY2M2Q3ZmE0OGY3MmFkNDY2MGU1ZDc0YzI5ZQot
LS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvc2VjdXJpdHkvY29udGVu
dFNlY3VyaXR5UG9saWN5L3Jlc291cmNlcy9pbmplY3Qtc3R5bGUuanMKQEAgLTAsMCArMSw1IEBA
Citkb2N1bWVudC53cml0ZSgiPHN0eWxlPiN0ZXN0MSB7IGRpc3BsYXk6IG5vbmU7IH08L3N0eWxl
PiIpOworCit2YXIgcyA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoJ3N0eWxlJyk7CitzLmlubmVy
VGV4dCA9ICIjdGVzdDIgeyBkaXNwbGF5OiBub25lOyB9IjsKK2RvY3VtZW50LmJvZHkuYXBwZW5k
Q2hpbGQocyk7CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3NlY3VyaXR5L2Nv
bnRlbnRTZWN1cml0eVBvbGljeS9zY3JpcHQtc3JjLW5vbmUtaW5saW5lLWV2ZW50LWV4cGVjdGVk
LnR4dCBiL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvc2VjdXJpdHkvY29udGVudFNlY3VyaXR5UG9s
aWN5L3NjcmlwdC1zcmMtbm9uZS1pbmxpbmUtZXZlbnQtZXhwZWN0ZWQudHh0CmluZGV4IGQzMWIx
Y2VmYzBiZjdmODI4OGE5MzE3NjFkODAyMTI5ZTYyOTUwMmYuLmZlMWNjMmZjNmRlMDkyYTgxZGQ0
NTgzZTUwZDA3MzQ2NjMwODMzMjMgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2h0dHAvdGVzdHMv
c2VjdXJpdHkvY29udGVudFNlY3VyaXR5UG9saWN5L3NjcmlwdC1zcmMtbm9uZS1pbmxpbmUtZXZl
bnQtZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvc2VjdXJpdHkvY29u
dGVudFNlY3VyaXR5UG9saWN5L3NjcmlwdC1zcmMtbm9uZS1pbmxpbmUtZXZlbnQtZXhwZWN0ZWQu
dHh0CkBAIC0xLDQgKzEsNCBAQAotQ09OU09MRSBNRVNTQUdFOiBSZWZ1c2VkIHRvIGV4ZWN1dGUg
aW5saW5lIGV2ZW50IGhhbmRsZXIgYmVjYXVzZSBpdCB2aW9sYXRlcyB0aGUgZm9sbG93aW5nIENv
bnRlbnQgU2VjdXJpdHkgUG9saWN5IGRpcmVjdGl2ZTogInNjcmlwdC1zcmMgJ25vbmUnIi4KK0NP
TlNPTEUgTUVTU0FHRTogbGluZSAzOiBSZWZ1c2VkIHRvIGV4ZWN1dGUgaW5saW5lIGV2ZW50IGhh
bmRsZXIgYmVjYXVzZSBpdCB2aW9sYXRlcyB0aGUgZm9sbG93aW5nIENvbnRlbnQgU2VjdXJpdHkg
UG9saWN5IGRpcmVjdGl2ZTogInNjcmlwdC1zcmMgJ25vbmUnIi4KIAogICAKIApkaWZmIC0tZ2l0
IGEvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9zZWN1cml0eS9jb250ZW50U2VjdXJpdHlQb2xpY3kv
c3JjZG9jLWRvZXNudC1ieXBhc3Mtc2NyaXB0LXNyYy1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0
cy9odHRwL3Rlc3RzL3NlY3VyaXR5L2NvbnRlbnRTZWN1cml0eVBvbGljeS9zcmNkb2MtZG9lc250
LWJ5cGFzcy1zY3JpcHQtc3JjLWV4cGVjdGVkLnR4dAppbmRleCA3YTVmZGUzNzBlYTZlMDRjNmQ2
ZTQ5NDBlOGQ3YWRiMDAwYjYzMTY5Li4xYTI5NDc5ZDJjMmQ0YmMxNTJmNTI3ZjNjMzMwMzNhMTE4
OTZlMWMxIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3NlY3VyaXR5L2NvbnRl
bnRTZWN1cml0eVBvbGljeS9zcmNkb2MtZG9lc250LWJ5cGFzcy1zY3JpcHQtc3JjLWV4cGVjdGVk
LnR4dAorKysgYi9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3NlY3VyaXR5L2NvbnRlbnRTZWN1cml0
eVBvbGljeS9zcmNkb2MtZG9lc250LWJ5cGFzcy1zY3JpcHQtc3JjLWV4cGVjdGVkLnR4dApAQCAt
MSwzICsxLDMgQEAKLUNPTlNPTEUgTUVTU0FHRTogUmVmdXNlZCB0byBleGVjdXRlIGlubGluZSBz
Y3JpcHQgYmVjYXVzZSBpdCB2aW9sYXRlcyB0aGUgZm9sbG93aW5nIENvbnRlbnQgU2VjdXJpdHkg
UG9saWN5IGRpcmVjdGl2ZTogInNjcmlwdC1zcmMgJ3NlbGYnIi4KK0NPTlNPTEUgTUVTU0FHRTog
bGluZSAxOiBSZWZ1c2VkIHRvIGV4ZWN1dGUgaW5saW5lIHNjcmlwdCBiZWNhdXNlIGl0IHZpb2xh
dGVzIHRoZSBmb2xsb3dpbmcgQ29udGVudCBTZWN1cml0eSBQb2xpY3kgZGlyZWN0aXZlOiAic2Ny
aXB0LXNyYyAnc2VsZiciLgogCiBUaGlzIHRlc3QgcGFzc2VzIGlmIGl0IGRvZXNuJ3QgYWxlcnQg
ZmFpbC4gCg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>144047</attachid>
            <date>2012-05-25 05:01:44 -0700</date>
            <delta_ts>2012-05-25 05:58:18 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-86848-20120525140142.patch</filename>
            <type>text/plain</type>
            <size>51437</size>
            <attacher name="Mike West">mkwst</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTE3OTYxCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggODE0Y2Q5ZGIyY2U5NGNk
MjY3YjIxZjEyMjE1ZmQzN2E1NTI4OGM0Zi4uMDY3MGQzNjA5NDMxNjM2ZWRiOTBkZDRlOTVkYjkz
MzBiY2NjMmI0MiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDY1IEBACisyMDEyLTA1LTI1ICBNaWtl
IFdlc3QgIDxta3dzdEBjaHJvbWl1bS5vcmc+CisKKyAgICAgICAgSW5saW5lIHNjcmlwdCBhbmQg
c3R5bGUgYmxvY2tlZCBieSBDb250ZW50IFNlY3VyaXR5IFBvbGljeSBzaG91bGQgcHJvdmlkZSBt
b3JlIGRldGFpbGVkIGNvbnNvbGUgZXJyb3JzLgorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0
Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9ODY4NDgKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkg
KE9PUFMhKS4KKworICAgICAgICBUaGlzIGNoYW5nZSBhZGRzIGEgVVJMIGFuZCBsaW5lIG51bWJl
ciBmb3IgY29udGV4dCB0byBlYWNoIGNhbGwgdG8KKyAgICAgICAgYENvbnRlbnRTZWN1cml0eVBv
bGljeTo6YWxsb3dJbmxpbmUqYCwgYW5kIHBpcGVzIGl0IHRocm91Z2ggdG8gdGhlCisgICAgICAg
IGNvbnNvbGUgbWVzc2FnZSBnZW5lcmF0aW9uIGluIGBDU1BEaXJlY3RpdmVMaXN0OjpyZXBvcnRW
aW9sYXRpb25gLgorCisgICAgICAgIExpbmUgbnVtYmVycyBhcmUgbm90IGFkZGVkIGZvciBpbmpl
Y3RlZCBzY3JpcHRzCisgICAgICAgIChgZG9jdW1lbnQud3JpdGUoLi4uKWAsIGBkb2N1bWVudC5i
b2R5LmFwcGVuZENoaWxkYCwgb3IgZXRjLikuCisKKyAgICAgICAgVGVzdHM6IGh0dHAvdGVzdHMv
c2VjdXJpdHkvY29udGVudFNlY3VyaXR5UG9saWN5L2luamVjdGVkLWlubGluZS1zY3JpcHQtYWxs
b3dlZC5odG1sCisgICAgICAgICAgICAgICBodHRwL3Rlc3RzL3NlY3VyaXR5L2NvbnRlbnRTZWN1
cml0eVBvbGljeS9pbmplY3RlZC1pbmxpbmUtc2NyaXB0LWJsb2NrZWQuaHRtbAorICAgICAgICAg
ICAgICAgaHR0cC90ZXN0cy9zZWN1cml0eS9jb250ZW50U2VjdXJpdHlQb2xpY3kvaW5qZWN0ZWQt
aW5saW5lLXN0eWxlLWFsbG93ZWQuaHRtbAorICAgICAgICAgICAgICAgaHR0cC90ZXN0cy9zZWN1
cml0eS9jb250ZW50U2VjdXJpdHlQb2xpY3kvaW5qZWN0ZWQtaW5saW5lLXN0eWxlLWJsb2NrZWQu
aHRtbAorCisgICAgICAgICogYmluZGluZ3MvU2NyaXB0Q29udHJvbGxlckJhc2UuY3BwOgorICAg
ICAgICAoV2ViQ29yZTo6U2NyaXB0Q29udHJvbGxlcjo6ZXhlY3V0ZUlmSmF2YVNjcmlwdFVSTCk6
CisgICAgICAgICogYmluZGluZ3MvanMvSlNMYXp5RXZlbnRMaXN0ZW5lci5jcHA6CisgICAgICAg
IChXZWJDb3JlOjpKU0xhenlFdmVudExpc3RlbmVyOjppbml0aWFsaXplSlNGdW5jdGlvbik6Cisg
ICAgICAgICogYmluZGluZ3MvdjgvVjhMYXp5RXZlbnRMaXN0ZW5lci5jcHA6CisgICAgICAgIChX
ZWJDb3JlOjpWOExhenlFdmVudExpc3RlbmVyOjpwcmVwYXJlTGlzdGVuZXJPYmplY3QpOgorICAg
ICAgICAqIGRvbS9TY3JpcHRFbGVtZW50LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlNjcmlwdEVs
ZW1lbnQ6OlNjcmlwdEVsZW1lbnQpOgorICAgICAgICAoV2ViQ29yZTo6U2NyaXB0RWxlbWVudDo6
ZXhlY3V0ZVNjcmlwdCk6CisgICAgICAgICogZG9tL1NjcmlwdEVsZW1lbnQuaDoKKyAgICAgICAg
KFNjcmlwdEVsZW1lbnQpOgorICAgICAgICAqIGRvbS9TdHlsZUVsZW1lbnQuY3BwOgorICAgICAg
ICAoV2ViQ29yZTo6U3R5bGVFbGVtZW50OjpTdHlsZUVsZW1lbnQpOgorICAgICAgICAoV2ViQ29y
ZTo6U3R5bGVFbGVtZW50OjpjcmVhdGVTaGVldCk6CisgICAgICAgICogZG9tL1N0eWxlRWxlbWVu
dC5oOgorICAgICAgICAoU3R5bGVFbGVtZW50KToKKyAgICAgICAgKiBkb20vU3R5bGVkRWxlbWVu
dC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpTdHlsZWRFbGVtZW50OjpTdHlsZWRFbGVtZW50KToK
KyAgICAgICAgKFdlYkNvcmUpOgorICAgICAgICAoV2ViQ29yZTo6U3R5bGVkRWxlbWVudDo6c3R5
bGUpOgorICAgICAgICAoV2ViQ29yZTo6U3R5bGVkRWxlbWVudDo6c3R5bGVBdHRyaWJ1dGVDaGFu
Z2VkKToKKyAgICAgICAgKiBkb20vU3R5bGVkRWxlbWVudC5oOgorICAgICAgICAoU3R5bGVkRWxl
bWVudCk6CisgICAgICAgICogcGFnZS9Db250ZW50U2VjdXJpdHlQb2xpY3kuY3BwOgorICAgICAg
ICAoQ1NQRGlyZWN0aXZlTGlzdCk6CisgICAgICAgIChXZWJDb3JlOjpDU1BEaXJlY3RpdmVMaXN0
OjpyZXBvcnRWaW9sYXRpb24pOgorICAgICAgICAoV2ViQ29yZTo6Q1NQRGlyZWN0aXZlTGlzdDo6
Y2hlY2tJbmxpbmVBbmRSZXBvcnRWaW9sYXRpb24pOgorICAgICAgICAoV2ViQ29yZTo6Q1NQRGly
ZWN0aXZlTGlzdDo6Y2hlY2tFdmFsQW5kUmVwb3J0VmlvbGF0aW9uKToKKyAgICAgICAgKFdlYkNv
cmU6OkNTUERpcmVjdGl2ZUxpc3Q6OmFsbG93SmF2YVNjcmlwdFVSTHMpOgorICAgICAgICAoV2Vi
Q29yZTo6Q1NQRGlyZWN0aXZlTGlzdDo6YWxsb3dJbmxpbmVFdmVudEhhbmRsZXJzKToKKyAgICAg
ICAgKFdlYkNvcmU6OkNTUERpcmVjdGl2ZUxpc3Q6OmFsbG93SW5saW5lU2NyaXB0KToKKyAgICAg
ICAgKFdlYkNvcmU6OkNTUERpcmVjdGl2ZUxpc3Q6OmFsbG93SW5saW5lU3R5bGUpOgorICAgICAg
ICAoV2ViQ29yZTo6Q1NQRGlyZWN0aXZlTGlzdDo6YWxsb3dFdmFsKToKKyAgICAgICAgKFdlYkNv
cmUpOgorICAgICAgICAoV2ViQ29yZTo6aXNBbGxvd2VkQnlBbGxXaXRoQ2FsbFN0YWNrKToKKyAg
ICAgICAgKFdlYkNvcmU6OmlzQWxsb3dlZEJ5QWxsV2l0aENvbnRleHQpOgorICAgICAgICAoV2Vi
Q29yZTo6Q29udGVudFNlY3VyaXR5UG9saWN5OjphbGxvd0phdmFTY3JpcHRVUkxzKToKKyAgICAg
ICAgKFdlYkNvcmU6OkNvbnRlbnRTZWN1cml0eVBvbGljeTo6YWxsb3dJbmxpbmVFdmVudEhhbmRs
ZXJzKToKKyAgICAgICAgKFdlYkNvcmU6OkNvbnRlbnRTZWN1cml0eVBvbGljeTo6YWxsb3dJbmxp
bmVTY3JpcHQpOgorICAgICAgICAoV2ViQ29yZTo6Q29udGVudFNlY3VyaXR5UG9saWN5OjphbGxv
d0lubGluZVN0eWxlKToKKyAgICAgICAgKiBwYWdlL0NvbnRlbnRTZWN1cml0eVBvbGljeS5oOgor
ICAgICAgICAoV1RGKToKKwogMjAxMi0wNS0yMiAgWXVyeSBTZW1pa2hhdHNreSAgPHl1cnlzQGNo
cm9taXVtLm9yZz4KIAogICAgICAgICBXZWIgSW5zcGVjdG9yOiBhbm5vdGF0ZSBJbmplY3RlZFNj
cmlwdFNvdXJjZS5qcyBmb3IgY2xvc3VyZSBjb21waWxlcgpkaWZmIC0tZ2l0IGEvU291cmNlL1dl
YkNvcmUvYmluZGluZ3MvU2NyaXB0Q29udHJvbGxlckJhc2UuY3BwIGIvU291cmNlL1dlYkNvcmUv
YmluZGluZ3MvU2NyaXB0Q29udHJvbGxlckJhc2UuY3BwCmluZGV4IDg1NTE1OGFmYzNlZjc5MDJm
MmU2MmVlOWU5NmYxNWQyODljNzkwYzIuLjliMDA2ZDJjMjA2YjBjNDRiNjgzZWRhNDc4YmYwZGY3
MzJkNTVhYzMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL1NjcmlwdENvbnRy
b2xsZXJCYXNlLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9TY3JpcHRDb250cm9s
bGVyQmFzZS5jcHAKQEAgLTMyLDYgKzMyLDcgQEAKICNpbmNsdWRlICJTZWN1cml0eU9yaWdpbi5o
IgogI2luY2x1ZGUgIlNldHRpbmdzLmgiCiAjaW5jbHVkZSAiVXNlckdlc3R1cmVJbmRpY2F0b3Iu
aCIKKyNpbmNsdWRlIDx3dGYvdGV4dC9UZXh0UG9zaXRpb24uaD4KIAogbmFtZXNwYWNlIFdlYkNv
cmUgewogCkBAIC03NSw3ICs3Niw3IEBAIGJvb2wgU2NyaXB0Q29udHJvbGxlcjo6ZXhlY3V0ZUlm
SmF2YVNjcmlwdFVSTChjb25zdCBLVVJMJiB1cmwsIFNob3VsZFJlcGxhY2VEb2N1CiAKICAgICBp
ZiAoIW1fZnJhbWUtPnBhZ2UoKQogICAgICAgICB8fCAhbV9mcmFtZS0+cGFnZSgpLT5qYXZhU2Ny
aXB0VVJMc0FyZUFsbG93ZWQoKQotICAgICAgICB8fCAhbV9mcmFtZS0+ZG9jdW1lbnQoKS0+Y29u
dGVudFNlY3VyaXR5UG9saWN5KCktPmFsbG93SmF2YVNjcmlwdFVSTHMoKQorICAgICAgICB8fCAh
bV9mcmFtZS0+ZG9jdW1lbnQoKS0+Y29udGVudFNlY3VyaXR5UG9saWN5KCktPmFsbG93SmF2YVNj
cmlwdFVSTHMobV9mcmFtZS0+ZG9jdW1lbnQoKS0+dXJsKCksIGV2ZW50SGFuZGxlclBvc2l0aW9u
KCkubV9saW5lKQogICAgICAgICB8fCBtX2ZyYW1lLT5pblZpZXdTb3VyY2VNb2RlKCkpCiAgICAg
ICAgIHJldHVybiB0cnVlOwogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9q
cy9KU0xhenlFdmVudExpc3RlbmVyLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0pT
TGF6eUV2ZW50TGlzdGVuZXIuY3BwCmluZGV4IGYxMWJmOTAwYzFkMGQ1MGQxYzdhYzVjOGJmYzRi
YjNkMDQxZGFhYTEuLjY0ZjljYjljMDQ5OWM5ZmIzODJlYzIzZjUwNWFiMjJiYWM4OTQxYjEgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0pTTGF6eUV2ZW50TGlzdGVuZXIu
Y3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0pTTGF6eUV2ZW50TGlzdGVuZXIu
Y3BwCkBAIC04MCw3ICs4MCw3IEBAIEpTT2JqZWN0KiBKU0xhenlFdmVudExpc3RlbmVyOjppbml0
aWFsaXplSlNGdW5jdGlvbihTY3JpcHRFeGVjdXRpb25Db250ZXh0KiBleGVjCiAgICAgaWYgKCFk
b2N1bWVudC0+ZnJhbWUoKSkKICAgICAgICAgcmV0dXJuIDA7CiAKLSAgICBpZiAoIWRvY3VtZW50
LT5jb250ZW50U2VjdXJpdHlQb2xpY3koKS0+YWxsb3dJbmxpbmVFdmVudEhhbmRsZXJzKCkpCisg
ICAgaWYgKCFkb2N1bWVudC0+Y29udGVudFNlY3VyaXR5UG9saWN5KCktPmFsbG93SW5saW5lRXZl
bnRIYW5kbGVycyhtX3NvdXJjZVVSTCwgbV9wb3NpdGlvbi5tX2xpbmUpKQogICAgICAgICByZXR1
cm4gMDsKIAogICAgIFNjcmlwdENvbnRyb2xsZXIqIHNjcmlwdCA9IGRvY3VtZW50LT5mcmFtZSgp
LT5zY3JpcHQoKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3Y4L1Y4TGF6
eUV2ZW50TGlzdGVuZXIuY3BwIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvdjgvVjhMYXp5RXZl
bnRMaXN0ZW5lci5jcHAKaW5kZXggNzMzMjMxOGQyNjRkOTQzMGEzZGRkNzNlYjk1OWJkZDIyZjBl
MmQ5ZS4uZWY0NTkyZTFhMDA1NTE3YjI0ZDVmZjA1YTNmMzcyZDAwZjcxNGRlMCAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvdjgvVjhMYXp5RXZlbnRMaXN0ZW5lci5jcHAKKysr
IGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvdjgvVjhMYXp5RXZlbnRMaXN0ZW5lci5jcHAKQEAg
LTEwNSw3ICsxMDUsNyBAQCB2b2lkIFY4TGF6eUV2ZW50TGlzdGVuZXI6OnByZXBhcmVMaXN0ZW5l
ck9iamVjdChTY3JpcHRFeGVjdXRpb25Db250ZXh0KiBjb250ZXh0KQogICAgIGlmIChoYXNFeGlz
dGluZ0xpc3RlbmVyT2JqZWN0KCkpCiAgICAgICAgIHJldHVybjsKIAotICAgIGlmIChjb250ZXh0
LT5pc0RvY3VtZW50KCkgJiYgIXN0YXRpY19jYXN0PERvY3VtZW50Kj4oY29udGV4dCktPmNvbnRl
bnRTZWN1cml0eVBvbGljeSgpLT5hbGxvd0lubGluZUV2ZW50SGFuZGxlcnMoKSkKKyAgICBpZiAo
Y29udGV4dC0+aXNEb2N1bWVudCgpICYmICFzdGF0aWNfY2FzdDxEb2N1bWVudCo+KGNvbnRleHQp
LT5jb250ZW50U2VjdXJpdHlQb2xpY3koKS0+YWxsb3dJbmxpbmVFdmVudEhhbmRsZXJzKG1fc291
cmNlVVJMLCBtX3Bvc2l0aW9uLm1fbGluZSkpCiAgICAgICAgIHJldHVybjsKIAogICAgIHY4OjpI
YW5kbGVTY29wZSBoYW5kbGVTY29wZTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2RvbS9T
Y3JpcHRFbGVtZW50LmNwcCBiL1NvdXJjZS9XZWJDb3JlL2RvbS9TY3JpcHRFbGVtZW50LmNwcApp
bmRleCBiZGMxZmNkZmNmMTIzZGM1NTEwMzg5ZDMzYzcyNGEyOTY5Yjc4NzNlLi4xYWIzYmRlN2Y2
YTA5MGIxZjUxZWIxZmE2YTg5NTAxMDVkMmUyYjg0IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29y
ZS9kb20vU2NyaXB0RWxlbWVudC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvZG9tL1NjcmlwdEVs
ZW1lbnQuY3BwCkBAIC00MSwxMiArNDEsMTQgQEAKICNpbmNsdWRlICJTY3JpcHRSdW5uZXIuaCIK
ICNpbmNsdWRlICJTY3JpcHRTb3VyY2VDb2RlLmgiCiAjaW5jbHVkZSAiU2NyaXB0VmFsdWUuaCIK
KyNpbmNsdWRlICJTY3JpcHRhYmxlRG9jdW1lbnRQYXJzZXIuaCIKICNpbmNsdWRlICJTZWN1cml0
eU9yaWdpbi5oIgogI2luY2x1ZGUgIlNldHRpbmdzLmgiCiAjaW5jbHVkZSAiVGV4dC5oIgogI2lu
Y2x1ZGUgPHd0Zi9TdGRMaWJFeHRyYXMuaD4KICNpbmNsdWRlIDx3dGYvdGV4dC9TdHJpbmdCdWls
ZGVyLmg+CiAjaW5jbHVkZSA8d3RmL3RleHQvU3RyaW5nSGFzaC5oPgorI2luY2x1ZGUgPHd0Zi90
ZXh0L1RleHRQb3NpdGlvbi5oPgogCiAjaWYgRU5BQkxFKFNWRykKICNpbmNsdWRlICJTVkdOYW1l
cy5oIgpAQCAtNTgsNiArNjAsNyBAQCBuYW1lc3BhY2UgV2ViQ29yZSB7CiBTY3JpcHRFbGVtZW50
OjpTY3JpcHRFbGVtZW50KEVsZW1lbnQqIGVsZW1lbnQsIGJvb2wgcGFyc2VySW5zZXJ0ZWQsIGJv
b2wgYWxyZWFkeVN0YXJ0ZWQpCiAgICAgOiBtX2VsZW1lbnQoZWxlbWVudCkKICAgICAsIG1fY2Fj
aGVkU2NyaXB0KDApCisgICAgLCBtX3N0YXJ0TGluZU51bWJlcihXVEY6Ok9yZGluYWxOdW1iZXI6
OmJlZm9yZUZpcnN0KCkpCiAgICAgLCBtX3BhcnNlckluc2VydGVkKHBhcnNlckluc2VydGVkKQog
ICAgICwgbV9pc0V4dGVybmFsU2NyaXB0KGZhbHNlKQogICAgICwgbV9hbHJlYWR5U3RhcnRlZChh
bHJlYWR5U3RhcnRlZCkKQEAgLTcwLDYgKzczLDggQEAgU2NyaXB0RWxlbWVudDo6U2NyaXB0RWxl
bWVudChFbGVtZW50KiBlbGVtZW50LCBib29sIHBhcnNlckluc2VydGVkLCBib29sIGFscmVhZHkK
ICAgICAsIG1fcmVxdWVzdFVzZXNBY2Nlc3NDb250cm9sKGZhbHNlKQogewogICAgIEFTU0VSVCht
X2VsZW1lbnQpOworICAgIGlmIChwYXJzZXJJbnNlcnRlZCAmJiBtX2VsZW1lbnQtPmRvY3VtZW50
KCktPnNjcmlwdGFibGVEb2N1bWVudFBhcnNlcigpICYmICFtX2VsZW1lbnQtPmRvY3VtZW50KCkt
PmlzSW5Eb2N1bWVudFdyaXRlKCkpCisgICAgICAgIG1fc3RhcnRMaW5lTnVtYmVyID0gbV9lbGVt
ZW50LT5kb2N1bWVudCgpLT5zY3JpcHRhYmxlRG9jdW1lbnRQYXJzZXIoKS0+bGluZU51bWJlcigp
OwogfQogCiBTY3JpcHRFbGVtZW50Ojp+U2NyaXB0RWxlbWVudCgpCkBAIC0yNzYsNyArMjgxLDcg
QEAgdm9pZCBTY3JpcHRFbGVtZW50OjpleGVjdXRlU2NyaXB0KGNvbnN0IFNjcmlwdFNvdXJjZUNv
ZGUmIHNvdXJjZUNvZGUpCiAgICAgaWYgKHNvdXJjZUNvZGUuaXNFbXB0eSgpKQogICAgICAgICBy
ZXR1cm47CiAKLSAgICBpZiAoIW1faXNFeHRlcm5hbFNjcmlwdCAmJiAhbV9lbGVtZW50LT5kb2N1
bWVudCgpLT5jb250ZW50U2VjdXJpdHlQb2xpY3koKS0+YWxsb3dJbmxpbmVTY3JpcHQoKSkKKyAg
ICBpZiAoIW1faXNFeHRlcm5hbFNjcmlwdCAmJiAhbV9lbGVtZW50LT5kb2N1bWVudCgpLT5jb250
ZW50U2VjdXJpdHlQb2xpY3koKS0+YWxsb3dJbmxpbmVTY3JpcHQobV9lbGVtZW50LT5kb2N1bWVu
dCgpLT51cmwoKSwgbV9zdGFydExpbmVOdW1iZXIpKQogICAgICAgICByZXR1cm47CiAKICAgICBS
ZWZQdHI8RG9jdW1lbnQ+IGRvY3VtZW50ID0gbV9lbGVtZW50LT5kb2N1bWVudCgpOwpkaWZmIC0t
Z2l0IGEvU291cmNlL1dlYkNvcmUvZG9tL1NjcmlwdEVsZW1lbnQuaCBiL1NvdXJjZS9XZWJDb3Jl
L2RvbS9TY3JpcHRFbGVtZW50LmgKaW5kZXggNmMwODI1OGU2NTY1ZDA4NGQyYjY0NDljYjJlMjUz
OGMxYWI4OTgzYS4uOTExYWNjYTcyZDBkZjU0NjQwMmU0ZmEzMjIwNzc2YjgzMDk3ZjBkOSAxMDA2
NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvZG9tL1NjcmlwdEVsZW1lbnQuaAorKysgYi9Tb3VyY2Uv
V2ViQ29yZS9kb20vU2NyaXB0RWxlbWVudC5oCkBAIC05Myw2ICs5Myw3IEBAIHByaXZhdGU6CiAK
ICAgICBFbGVtZW50KiBtX2VsZW1lbnQ7CiAgICAgQ2FjaGVkUmVzb3VyY2VIYW5kbGU8Q2FjaGVk
U2NyaXB0PiBtX2NhY2hlZFNjcmlwdDsKKyAgICBXVEY6Ok9yZGluYWxOdW1iZXIgbV9zdGFydExp
bmVOdW1iZXI7CiAgICAgYm9vbCBtX3BhcnNlckluc2VydGVkIDogMTsKICAgICBib29sIG1faXNF
eHRlcm5hbFNjcmlwdCA6IDE7CiAgICAgYm9vbCBtX2FscmVhZHlTdGFydGVkIDogMTsKZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJDb3JlL2RvbS9TdHlsZUVsZW1lbnQuY3BwIGIvU291cmNlL1dlYkNv
cmUvZG9tL1N0eWxlRWxlbWVudC5jcHAKaW5kZXggNWFmOWZjOGU0Y2RjYzZmYjJmMWRlMjQwMDFh
Yzk1ZjY3ZjA4ZWI1ZC4uMTc5NzUzZjgzNGQ4YzhjYjAzMmZlMDJjYmFhNmE4NjNlY2FkZjlmYyAx
MDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvZG9tL1N0eWxlRWxlbWVudC5jcHAKKysrIGIvU291
cmNlL1dlYkNvcmUvZG9tL1N0eWxlRWxlbWVudC5jcHAKQEAgLTI5LDYgKzI5LDcgQEAKICNpbmNs
dWRlICJNZWRpYVF1ZXJ5RXZhbHVhdG9yLmgiCiAjaW5jbHVkZSAiU2NyaXB0YWJsZURvY3VtZW50
UGFyc2VyLmgiCiAjaW5jbHVkZSA8d3RmL3RleHQvU3RyaW5nQnVpbGRlci5oPgorI2luY2x1ZGUg
PHd0Zi90ZXh0L1RleHRQb3NpdGlvbi5oPgogCiBuYW1lc3BhY2UgV2ViQ29yZSB7CiAKQEAgLTQ3
LDEwICs0OCwxMCBAQCBzdGF0aWMgYm9vbCBpc0NTUyhFbGVtZW50KiBlbGVtZW50LCBjb25zdCBB
dG9taWNTdHJpbmcmIHR5cGUpCiBTdHlsZUVsZW1lbnQ6OlN0eWxlRWxlbWVudChEb2N1bWVudCog
ZG9jdW1lbnQsIGJvb2wgY3JlYXRlZEJ5UGFyc2VyKQogICAgIDogbV9jcmVhdGVkQnlQYXJzZXIo
Y3JlYXRlZEJ5UGFyc2VyKQogICAgICwgbV9sb2FkaW5nKGZhbHNlKQotICAgICwgbV9zdGFydExp
bmVOdW1iZXIoMCkKKyAgICAsIG1fc3RhcnRMaW5lTnVtYmVyKFdURjo6T3JkaW5hbE51bWJlcjo6
YmVmb3JlRmlyc3QoKSkKIHsKLSAgICBpZiAoY3JlYXRlZEJ5UGFyc2VyICYmIGRvY3VtZW50ICYm
IGRvY3VtZW50LT5zY3JpcHRhYmxlRG9jdW1lbnRQYXJzZXIoKSkKLSAgICAgICAgbV9zdGFydExp
bmVOdW1iZXIgPSBkb2N1bWVudC0+c2NyaXB0YWJsZURvY3VtZW50UGFyc2VyKCktPmxpbmVOdW1i
ZXIoKS56ZXJvQmFzZWRJbnQoKTsKKyAgICBpZiAoY3JlYXRlZEJ5UGFyc2VyICYmIGRvY3VtZW50
ICYmIGRvY3VtZW50LT5zY3JpcHRhYmxlRG9jdW1lbnRQYXJzZXIoKSAmJiAhZG9jdW1lbnQtPmlz
SW5Eb2N1bWVudFdyaXRlKCkpCisgICAgICAgIG1fc3RhcnRMaW5lTnVtYmVyID0gZG9jdW1lbnQt
PnNjcmlwdGFibGVEb2N1bWVudFBhcnNlcigpLT5saW5lTnVtYmVyKCk7CiB9CiAKIFN0eWxlRWxl
bWVudDo6flN0eWxlRWxlbWVudCgpCkBAIC0xNDMsNyArMTQ0LDcgQEAgdm9pZCBTdHlsZUVsZW1l
bnQ6OmNsZWFyU2hlZXQoKQogICAgIG1fc2hlZXQgPSAwOwogfQogCi12b2lkIFN0eWxlRWxlbWVu
dDo6Y3JlYXRlU2hlZXQoRWxlbWVudCogZSwgaW50IHN0YXJ0TGluZU51bWJlciwgY29uc3QgU3Ry
aW5nJiB0ZXh0KQordm9pZCBTdHlsZUVsZW1lbnQ6OmNyZWF0ZVNoZWV0KEVsZW1lbnQqIGUsIFdU
Rjo6T3JkaW5hbE51bWJlciBzdGFydExpbmVOdW1iZXIsIGNvbnN0IFN0cmluZyYgdGV4dCkKIHsK
ICAgICBBU1NFUlQoZSk7CiAgICAgQVNTRVJUKGUtPmluRG9jdW1lbnQoKSk7CkBAIC0xNTYsNyAr
MTU3LDcgQEAgdm9pZCBTdHlsZUVsZW1lbnQ6OmNyZWF0ZVNoZWV0KEVsZW1lbnQqIGUsIGludCBz
dGFydExpbmVOdW1iZXIsIGNvbnN0IFN0cmluZyYgdGUKIAogICAgIC8vIElmIHR5cGUgaXMgZW1w
dHkgb3IgQ1NTLCB0aGlzIGlzIGEgQ1NTIHN0eWxlIHNoZWV0LgogICAgIGNvbnN0IEF0b21pY1N0
cmluZyYgdHlwZSA9IHRoaXMtPnR5cGUoKTsKLSAgICBpZiAoZG9jdW1lbnQtPmNvbnRlbnRTZWN1
cml0eVBvbGljeSgpLT5hbGxvd0lubGluZVN0eWxlKCkgJiYgaXNDU1MoZSwgdHlwZSkpIHsKKyAg
ICBpZiAoZG9jdW1lbnQtPmNvbnRlbnRTZWN1cml0eVBvbGljeSgpLT5hbGxvd0lubGluZVN0eWxl
KGUtPmRvY3VtZW50KCktPnVybCgpLCBzdGFydExpbmVOdW1iZXIpICYmIGlzQ1NTKGUsIHR5cGUp
KSB7CiAgICAgICAgIFJlZlB0cjxNZWRpYVF1ZXJ5U2V0PiBtZWRpYVF1ZXJpZXM7CiAgICAgICAg
IGlmIChlLT5pc0hUTUxFbGVtZW50KCkpCiAgICAgICAgICAgICBtZWRpYVF1ZXJpZXMgPSBNZWRp
YVF1ZXJ5U2V0OjpjcmVhdGVBbGxvd2luZ0Rlc2NyaXB0aW9uU3ludGF4KG1lZGlhKCkpOwpAQCAt
MTcyLDggKzE3Myw4IEBAIHZvaWQgU3R5bGVFbGVtZW50OjpjcmVhdGVTaGVldChFbGVtZW50KiBl
LCBpbnQgc3RhcnRMaW5lTnVtYmVyLCBjb25zdCBTdHJpbmcmIHRlCiAgICAgICAgICAgICBtX3No
ZWV0ID0gQ1NTU3R5bGVTaGVldDo6Y3JlYXRlSW5saW5lKGUsIEtVUkwoKSwgZG9jdW1lbnQtPmlu
cHV0RW5jb2RpbmcoKSk7CiAgICAgICAgICAgICBtX3NoZWV0LT5zZXRNZWRpYVF1ZXJpZXMobWVk
aWFRdWVyaWVzLnJlbGVhc2UoKSk7CiAgICAgICAgICAgICBtX3NoZWV0LT5zZXRUaXRsZShlLT50
aXRsZSgpKTsKLSAgICAKLSAgICAgICAgICAgIG1fc2hlZXQtPmludGVybmFsKCktPnBhcnNlU3Ry
aW5nQXRMaW5lKHRleHQsIHN0YXJ0TGluZU51bWJlcik7CisKKyAgICAgICAgICAgIG1fc2hlZXQt
PmludGVybmFsKCktPnBhcnNlU3RyaW5nQXRMaW5lKHRleHQsIHN0YXJ0TGluZU51bWJlci56ZXJv
QmFzZWRJbnQoKSk7CiAKICAgICAgICAgICAgIG1fbG9hZGluZyA9IGZhbHNlOwogICAgICAgICB9
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9kb20vU3R5bGVFbGVtZW50LmggYi9Tb3VyY2Uv
V2ViQ29yZS9kb20vU3R5bGVFbGVtZW50LmgKaW5kZXggM2MzMWFiYmY3ZWE0M2M1MmM5NWQ0N2M1
ZjEwZmI0YmRmMzViOTUwZS4uNmRkNDhlY2JiNDU0YjVlYWQzMjllMDM5MDlhMjczYTZjMjUyYjBm
MiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvZG9tL1N0eWxlRWxlbWVudC5oCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL2RvbS9TdHlsZUVsZW1lbnQuaApAQCAtMjIsNiArMjIsNyBAQAogI2RlZmlu
ZSBTdHlsZUVsZW1lbnRfaAogCiAjaW5jbHVkZSAiQ1NTU3R5bGVTaGVldC5oIgorI2luY2x1ZGUg
PHd0Zi90ZXh0L1RleHRQb3NpdGlvbi5oPgogCiBuYW1lc3BhY2UgV2ViQ29yZSB7CiAKQEAgLTUy
LDEzICs1MywxMyBAQCBwcm90ZWN0ZWQ6CiAgICAgUmVmUHRyPENTU1N0eWxlU2hlZXQ+IG1fc2hl
ZXQ7CiAKIHByaXZhdGU6Ci0gICAgdm9pZCBjcmVhdGVTaGVldChFbGVtZW50KiwgaW50IHN0YXJ0
TGluZU51bWJlciwgY29uc3QgU3RyaW5nJiB0ZXh0ID0gU3RyaW5nKCkpOworICAgIHZvaWQgY3Jl
YXRlU2hlZXQoRWxlbWVudCosIFdURjo6T3JkaW5hbE51bWJlciBzdGFydExpbmVOdW1iZXIsIGNv
bnN0IFN0cmluZyYgdGV4dCA9IFN0cmluZygpKTsKICAgICB2b2lkIHByb2Nlc3MoRWxlbWVudCop
OwogICAgIHZvaWQgY2xlYXJTaGVldCgpOwogCiAgICAgYm9vbCBtX2NyZWF0ZWRCeVBhcnNlcjsK
ICAgICBib29sIG1fbG9hZGluZzsKLSAgICBpbnQgbV9zdGFydExpbmVOdW1iZXI7CisgICAgV1RG
OjpPcmRpbmFsTnVtYmVyIG1fc3RhcnRMaW5lTnVtYmVyOwogfTsKIAogfQpkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYkNvcmUvZG9tL1N0eWxlZEVsZW1lbnQuY3BwIGIvU291cmNlL1dlYkNvcmUvZG9t
L1N0eWxlZEVsZW1lbnQuY3BwCmluZGV4IGQ1NWIwMDk5MzQ1ZmU5MWUwNzU1NjU2ZWY3NzcwM2E1
YjJlMDliYjAuLjRhZWRkNDhjZDVhYjUzODFmYWY3NzEwZmYwMWE3MGRjZGFhZjA3MTMgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2RvbS9TdHlsZWRFbGVtZW50LmNwcAorKysgYi9Tb3VyY2Uv
V2ViQ29yZS9kb20vU3R5bGVkRWxlbWVudC5jcHAKQEAgLTM3LDkgKzM3LDExIEBACiAjaW5jbHVk
ZSAiRG9jdW1lbnQuaCIKICNpbmNsdWRlICJIVE1MTmFtZXMuaCIKICNpbmNsdWRlICJIVE1MUGFy
c2VySWRpb21zLmgiCisjaW5jbHVkZSAiU2NyaXB0YWJsZURvY3VtZW50UGFyc2VyLmgiCiAjaW5j
bHVkZSAiU3R5bGVQcm9wZXJ0eVNldC5oIgogI2luY2x1ZGUgIlN0eWxlUmVzb2x2ZXIuaCIKICNp
bmNsdWRlIDx3dGYvSGFzaEZ1bmN0aW9ucy5oPgorI2luY2x1ZGUgPHd0Zi90ZXh0L1RleHRQb3Np
dGlvbi5oPgogCiB1c2luZyBuYW1lc3BhY2Ugc3RkOwogCkBAIC0xMjYsMTMgKzEyOCwyMSBAQCB2
b2lkIFN0eWxlZEVsZW1lbnQ6OnVwZGF0ZVN0eWxlQXR0cmlidXRlKCkgY29uc3QKICAgICAgICAg
Y29uc3RfY2FzdDxTdHlsZWRFbGVtZW50Kj4odGhpcyktPnNldEF0dHJpYnV0ZShzdHlsZUF0dHIs
IGlubGluZVN0eWxlLT5hc1RleHQoKSwgSW5VcGRhdGVTdHlsZUF0dHJpYnV0ZSk7CiB9CiAKK1N0
eWxlZEVsZW1lbnQ6OlN0eWxlZEVsZW1lbnQoY29uc3QgUXVhbGlmaWVkTmFtZSYgbmFtZSwgRG9j
dW1lbnQqIGRvY3VtZW50LCBDb25zdHJ1Y3Rpb25UeXBlIHR5cGUpCisgICAgOiBFbGVtZW50KG5h
bWUsIGRvY3VtZW50LCB0eXBlKQorICAgICwgbV9zdGFydExpbmVOdW1iZXIoV1RGOjpPcmRpbmFs
TnVtYmVyOjpiZWZvcmVGaXJzdCgpKQoreworICAgIGlmIChkb2N1bWVudCAmJiBkb2N1bWVudC0+
c2NyaXB0YWJsZURvY3VtZW50UGFyc2VyKCkgJiYgIWRvY3VtZW50LT5pc0luRG9jdW1lbnRXcml0
ZSgpKQorICAgICAgICBtX3N0YXJ0TGluZU51bWJlciA9IGRvY3VtZW50LT5zY3JpcHRhYmxlRG9j
dW1lbnRQYXJzZXIoKS0+bGluZU51bWJlcigpOworfQorCiBTdHlsZWRFbGVtZW50Ojp+U3R5bGVk
RWxlbWVudCgpCiB7CiAgICAgZGVzdHJveUlubGluZVN0eWxlKCk7CiB9CiAKLUNTU1N0eWxlRGVj
bGFyYXRpb24qIFN0eWxlZEVsZW1lbnQ6OnN0eWxlKCkgCi17IAorQ1NTU3R5bGVEZWNsYXJhdGlv
biogU3R5bGVkRWxlbWVudDo6c3R5bGUoKQorewogICAgIHJldHVybiBlbnN1cmVBdHRyaWJ1dGVE
YXRhKCktPmVuc3VyZU11dGFibGVJbmxpbmVTdHlsZSh0aGlzKS0+ZW5zdXJlSW5saW5lQ1NTU3R5
bGVEZWNsYXJhdGlvbih0aGlzKTsgCiB9CiAKQEAgLTE3Myw3ICsxODMsNyBAQCB2b2lkIFN0eWxl
ZEVsZW1lbnQ6OnN0eWxlQXR0cmlidXRlQ2hhbmdlZChjb25zdCBBdG9taWNTdHJpbmcmIG5ld1N0
eWxlU3RyaW5nLCBTaAogICAgIGlmIChzaG91bGRSZXBhcnNlKSB7CiAgICAgICAgIGlmIChuZXdT
dHlsZVN0cmluZy5pc051bGwoKSkKICAgICAgICAgICAgIGRlc3Ryb3lJbmxpbmVTdHlsZSgpOwot
ICAgICAgICBlbHNlIGlmIChkb2N1bWVudCgpLT5jb250ZW50U2VjdXJpdHlQb2xpY3koKS0+YWxs
b3dJbmxpbmVTdHlsZSgpKQorICAgICAgICBlbHNlIGlmIChkb2N1bWVudCgpLT5jb250ZW50U2Vj
dXJpdHlQb2xpY3koKS0+YWxsb3dJbmxpbmVTdHlsZShkb2N1bWVudCgpLT51cmwoKSwgbV9zdGFy
dExpbmVOdW1iZXIpKQogICAgICAgICAgICAgZW5zdXJlQXR0cmlidXRlRGF0YSgpLT51cGRhdGVJ
bmxpbmVTdHlsZUF2b2lkaW5nTXV0YXRpb24odGhpcywgbmV3U3R5bGVTdHJpbmcpOwogICAgICAg
ICBzZXRJc1N0eWxlQXR0cmlidXRlVmFsaWQoKTsKICAgICB9CmRpZmYgLS1naXQgYS9Tb3VyY2Uv
V2ViQ29yZS9kb20vU3R5bGVkRWxlbWVudC5oIGIvU291cmNlL1dlYkNvcmUvZG9tL1N0eWxlZEVs
ZW1lbnQuaAppbmRleCA2Y2Y0MTQ1ZjJhMTIxYTU0OGQ0ZTNhZGViOGNlODVmNjI3MDVkMDc4Li40
NzM2YTk4MDAxOWE5ZWY0YTJjZGM2YWRjYjY0MTAwMmE2YmViNzBiIDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViQ29yZS9kb20vU3R5bGVkRWxlbWVudC5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2RvbS9T
dHlsZWRFbGVtZW50LmgKQEAgLTI3LDYgKzI3LDcgQEAKIAogI2luY2x1ZGUgIkVsZW1lbnQuaCIK
ICNpbmNsdWRlICJTdHlsZVByb3BlcnR5U2V0LmgiCisjaW5jbHVkZSA8d3RmL3RleHQvVGV4dFBv
c2l0aW9uLmg+CiAKIG5hbWVzcGFjZSBXZWJDb3JlIHsKIApAQCAtNjIsMTAgKzYzLDcgQEAgcHVi
bGljOgogICAgIHZvaWQgc3R5bGVBdHRyaWJ1dGVDaGFuZ2VkKGNvbnN0IEF0b21pY1N0cmluZyYg
bmV3U3R5bGVTdHJpbmcsIFNob3VsZFJlcGFyc2VTdHlsZUF0dHJpYnV0ZSA9IFJlcGFyc2VTdHls
ZUF0dHJpYnV0ZSk7CiAKIHByb3RlY3RlZDoKLSAgICBTdHlsZWRFbGVtZW50KGNvbnN0IFF1YWxp
ZmllZE5hbWUmIG5hbWUsIERvY3VtZW50KiBkb2N1bWVudCwgQ29uc3RydWN0aW9uVHlwZSB0eXBl
KQotICAgICAgICA6IEVsZW1lbnQobmFtZSwgZG9jdW1lbnQsIHR5cGUpCi0gICAgewotICAgIH0K
KyAgICBTdHlsZWRFbGVtZW50KGNvbnN0IFF1YWxpZmllZE5hbWUmLCBEb2N1bWVudCosIENvbnN0
cnVjdGlvblR5cGUpOwogCiAgICAgdmlydHVhbCB2b2lkIGF0dHJpYnV0ZUNoYW5nZWQoY29uc3Qg
QXR0cmlidXRlJikgT1ZFUlJJREU7CiAgICAgdmlydHVhbCB2b2lkIHBhcnNlQXR0cmlidXRlKGNv
bnN0IEF0dHJpYnV0ZSYpOwpAQCAtOTUsNiArOTMsOCBAQCBwcml2YXRlOgogICAgICAgICBpZiAo
YXR0cmlidXRlRGF0YSgpKQogICAgICAgICAgICAgYXR0cmlidXRlRGF0YSgpLT5kZXN0cm95SW5s
aW5lU3R5bGUodGhpcyk7CiAgICAgfQorCisgICAgV1RGOjpPcmRpbmFsTnVtYmVyIG1fc3RhcnRM
aW5lTnVtYmVyOwogfTsKIAogaW5saW5lIGNvbnN0IFNwYWNlU3BsaXRTdHJpbmcmIFN0eWxlZEVs
ZW1lbnQ6OmNsYXNzTmFtZXMoKSBjb25zdApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGFn
ZS9Db250ZW50U2VjdXJpdHlQb2xpY3kuY3BwIGIvU291cmNlL1dlYkNvcmUvcGFnZS9Db250ZW50
U2VjdXJpdHlQb2xpY3kuY3BwCmluZGV4IDQ1Zjc2YjAxOWRmZjY3ZjM5MzAyNDI1ODM4NzJmMzIz
ZjUwYTk4YmQuLjJkNzVhZDVmYTExODJlNjA3MzM2NTNlYTQzNWNiNzRhOTZjNDg3NzIgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BhZ2UvQ29udGVudFNlY3VyaXR5UG9saWN5LmNwcAorKysg
Yi9Tb3VyY2UvV2ViQ29yZS9wYWdlL0NvbnRlbnRTZWN1cml0eVBvbGljeS5jcHAKQEAgLTMxLDEx
ICszMSwxMyBAQAogI2luY2x1ZGUgIkZvcm1EYXRhLmgiCiAjaW5jbHVkZSAiRm9ybURhdGFMaXN0
LmgiCiAjaW5jbHVkZSAiRnJhbWUuaCIKKyNpbmNsdWRlICJJbnNwZWN0b3JJbnN0cnVtZW50YXRp
b24uaCIKICNpbmNsdWRlICJJbnNwZWN0b3JWYWx1ZXMuaCIKICNpbmNsdWRlICJQaW5nTG9hZGVy
LmgiCiAjaW5jbHVkZSAiU2NyaXB0Q2FsbFN0YWNrLmgiCiAjaW5jbHVkZSAiU2VjdXJpdHlPcmln
aW4uaCIKICNpbmNsdWRlICJUZXh0RW5jb2RpbmcuaCIKKyNpbmNsdWRlIDx3dGYvdGV4dC9UZXh0
UG9zaXRpb24uaD4KICNpbmNsdWRlIDx3dGYvdGV4dC9XVEZTdHJpbmcuaD4KIAogbmFtZXNwYWNl
IFdlYkNvcmUgewpAQCAtNDkwLDEwICs0OTIsMTAgQEAgcHVibGljOgogICAgIGNvbnN0IFN0cmlu
ZyYgaGVhZGVyKCkgY29uc3QgeyByZXR1cm4gbV9oZWFkZXI7IH0KICAgICBDb250ZW50U2VjdXJp
dHlQb2xpY3k6OkhlYWRlclR5cGUgaGVhZGVyVHlwZSgpIGNvbnN0IHsgcmV0dXJuIG1fcmVwb3J0
T25seSA/IENvbnRlbnRTZWN1cml0eVBvbGljeTo6UmVwb3J0T25seSA6IENvbnRlbnRTZWN1cml0
eVBvbGljeTo6RW5mb3JjZVBvbGljeTsgfQogCi0gICAgYm9vbCBhbGxvd0phdmFTY3JpcHRVUkxz
KCkgY29uc3Q7Ci0gICAgYm9vbCBhbGxvd0lubGluZUV2ZW50SGFuZGxlcnMoKSBjb25zdDsKLSAg
ICBib29sIGFsbG93SW5saW5lU2NyaXB0KCkgY29uc3Q7Ci0gICAgYm9vbCBhbGxvd0lubGluZVN0
eWxlKCkgY29uc3Q7CisgICAgYm9vbCBhbGxvd0phdmFTY3JpcHRVUkxzKGNvbnN0IFN0cmluZyYg
Y29udGV4dFVSTCwgY29uc3QgV1RGOjpPcmRpbmFsTnVtYmVyJiBjb250ZXh0TGluZSkgY29uc3Q7
CisgICAgYm9vbCBhbGxvd0lubGluZUV2ZW50SGFuZGxlcnMoY29uc3QgU3RyaW5nJiBjb250ZXh0
VVJMLCBjb25zdCBXVEY6Ok9yZGluYWxOdW1iZXImIGNvbnRleHRMaW5lKSBjb25zdDsKKyAgICBi
b29sIGFsbG93SW5saW5lU2NyaXB0KGNvbnN0IFN0cmluZyYgY29udGV4dFVSTCwgY29uc3QgV1RG
OjpPcmRpbmFsTnVtYmVyJiBjb250ZXh0TGluZSkgY29uc3Q7CisgICAgYm9vbCBhbGxvd0lubGlu
ZVN0eWxlKGNvbnN0IFN0cmluZyYgY29udGV4dFVSTCwgY29uc3QgV1RGOjpPcmRpbmFsTnVtYmVy
JiBjb250ZXh0TGluZSkgY29uc3Q7CiAgICAgYm9vbCBhbGxvd0V2YWwoUGFzc1JlZlB0cjxTY3Jp
cHRDYWxsU3RhY2s+KSBjb25zdDsKIAogICAgIGJvb2wgYWxsb3dTY3JpcHRGcm9tU291cmNlKGNv
bnN0IEtVUkwmKSBjb25zdDsKQEAgLTUxOCwxMiArNTIwLDEyIEBAIHByaXZhdGU6CiAgICAgUGFz
c093blB0cjxDU1BEaXJlY3RpdmU+IGNyZWF0ZUNTUERpcmVjdGl2ZShjb25zdCBTdHJpbmcmIG5h
bWUsIGNvbnN0IFN0cmluZyYgdmFsdWUpOwogCiAgICAgQ1NQRGlyZWN0aXZlKiBvcGVyYXRpdmVE
aXJlY3RpdmUoQ1NQRGlyZWN0aXZlKikgY29uc3Q7Ci0gICAgdm9pZCByZXBvcnRWaW9sYXRpb24o
Y29uc3QgU3RyaW5nJiBkaXJlY3RpdmVUZXh0LCBjb25zdCBTdHJpbmcmIGNvbnNvbGVNZXNzYWdl
LCBjb25zdCBLVVJMJiBibG9ja2VkVVJMID0gS1VSTCgpLCBQYXNzUmVmUHRyPFNjcmlwdENhbGxT
dGFjaz4gPSAwKSBjb25zdDsKKyAgICB2b2lkIHJlcG9ydFZpb2xhdGlvbihjb25zdCBTdHJpbmcm
IGRpcmVjdGl2ZVRleHQsIGNvbnN0IFN0cmluZyYgY29uc29sZU1lc3NhZ2UsIGNvbnN0IEtVUkwm
IGJsb2NrZWRVUkwgPSBLVVJMKCksIGNvbnN0IFN0cmluZyYgY29udGV4dFVSTCA9IFN0cmluZygp
LCBjb25zdCBXVEY6Ok9yZGluYWxOdW1iZXImIGNvbnRleHRMaW5lID0gV1RGOjpPcmRpbmFsTnVt
YmVyOjpiZWZvcmVGaXJzdCgpLCBQYXNzUmVmUHRyPFNjcmlwdENhbGxTdGFjaz4gPSAwKSBjb25z
dDsKICAgICB2b2lkIGxvZ1VucmVjb2duaXplZERpcmVjdGl2ZShjb25zdCBTdHJpbmcmIG5hbWUp
IGNvbnN0OwogICAgIGJvb2wgY2hlY2tFdmFsKENTUERpcmVjdGl2ZSopIGNvbnN0OwogCi0gICAg
Ym9vbCBjaGVja0lubGluZUFuZFJlcG9ydFZpb2xhdGlvbihDU1BEaXJlY3RpdmUqLCBjb25zdCBT
dHJpbmcmIGNvbnNvbGVNZXNzYWdlKSBjb25zdDsKLSAgICBib29sIGNoZWNrRXZhbEFuZFJlcG9y
dFZpb2xhdGlvbihDU1BEaXJlY3RpdmUqLCBjb25zdCBTdHJpbmcmIGNvbnNvbGVNZXNzYWdlLCBQ
YXNzUmVmUHRyPFNjcmlwdENhbGxTdGFjaz4pIGNvbnN0OworICAgIGJvb2wgY2hlY2tJbmxpbmVB
bmRSZXBvcnRWaW9sYXRpb24oQ1NQRGlyZWN0aXZlKiwgY29uc3QgU3RyaW5nJiBjb25zb2xlTWVz
c2FnZSwgY29uc3QgU3RyaW5nJiBjb250ZXh0VVJMLCBjb25zdCBXVEY6Ok9yZGluYWxOdW1iZXIm
IGNvbnRleHRMaW5lKSBjb25zdDsKKyAgICBib29sIGNoZWNrRXZhbEFuZFJlcG9ydFZpb2xhdGlv
bihDU1BEaXJlY3RpdmUqLCBjb25zdCBTdHJpbmcmIGNvbnNvbGVNZXNzYWdlLCBjb25zdCBTdHJp
bmcmIGNvbnRleHRVUkwgPSBTdHJpbmcoKSwgY29uc3QgV1RGOjpPcmRpbmFsTnVtYmVyJiBjb250
ZXh0TGluZSA9IFdURjo6T3JkaW5hbE51bWJlcjo6YmVmb3JlRmlyc3QoKSwgUGFzc1JlZlB0cjxT
Y3JpcHRDYWxsU3RhY2s+ID0gMCkgY29uc3Q7CiAgICAgYm9vbCBjaGVja1NvdXJjZUFuZFJlcG9y
dFZpb2xhdGlvbihDU1BEaXJlY3RpdmUqLCBjb25zdCBLVVJMJiwgY29uc3QgU3RyaW5nJiB0eXBl
KSBjb25zdDsKIAogICAgIGJvb2wgZGVueUlmRW5mb3JjaW5nUG9saWN5KCkgY29uc3QgeyByZXR1
cm4gbV9yZXBvcnRPbmx5OyB9CkBAIC01NzUsMTAgKzU3NywxMCBAQCBQYXNzT3duUHRyPENTUERp
cmVjdGl2ZUxpc3Q+IENTUERpcmVjdGl2ZUxpc3Q6OmNyZWF0ZShTY3JpcHRFeGVjdXRpb25Db250
ZXh0KiBzYwogICAgIHJldHVybiBwb2xpY3kucmVsZWFzZSgpOwogfQogCi12b2lkIENTUERpcmVj
dGl2ZUxpc3Q6OnJlcG9ydFZpb2xhdGlvbihjb25zdCBTdHJpbmcmIGRpcmVjdGl2ZVRleHQsIGNv
bnN0IFN0cmluZyYgY29uc29sZU1lc3NhZ2UsIGNvbnN0IEtVUkwmIGJsb2NrZWRVUkwsIFBhc3NS
ZWZQdHI8U2NyaXB0Q2FsbFN0YWNrPiBjYWxsU3RhY2spIGNvbnN0Cit2b2lkIENTUERpcmVjdGl2
ZUxpc3Q6OnJlcG9ydFZpb2xhdGlvbihjb25zdCBTdHJpbmcmIGRpcmVjdGl2ZVRleHQsIGNvbnN0
IFN0cmluZyYgY29uc29sZU1lc3NhZ2UsIGNvbnN0IEtVUkwmIGJsb2NrZWRVUkwsIGNvbnN0IFN0
cmluZyYgY29udGV4dFVSTCwgY29uc3QgV1RGOjpPcmRpbmFsTnVtYmVyJiBjb250ZXh0TGluZSwg
UGFzc1JlZlB0cjxTY3JpcHRDYWxsU3RhY2s+IGNhbGxTdGFjaykgY29uc3QKIHsKICAgICBTdHJp
bmcgbWVzc2FnZSA9IG1fcmVwb3J0T25seSA/ICJbUmVwb3J0IE9ubHldICIgKyBjb25zb2xlTWVz
c2FnZSA6IGNvbnNvbGVNZXNzYWdlOwotICAgIG1fc2NyaXB0RXhlY3V0aW9uQ29udGV4dC0+YWRk
Q29uc29sZU1lc3NhZ2UoSlNNZXNzYWdlU291cmNlLCBMb2dNZXNzYWdlVHlwZSwgRXJyb3JNZXNz
YWdlTGV2ZWwsIG1lc3NhZ2UsIFN0cmluZygpLCAwLCBjYWxsU3RhY2spOworICAgIG1fc2NyaXB0
RXhlY3V0aW9uQ29udGV4dC0+YWRkQ29uc29sZU1lc3NhZ2UoSlNNZXNzYWdlU291cmNlLCBMb2dN
ZXNzYWdlVHlwZSwgRXJyb3JNZXNzYWdlTGV2ZWwsIG1lc3NhZ2UsIGNvbnRleHRVUkwsIGNvbnRl
eHRMaW5lLm9uZUJhc2VkSW50KCksIGNhbGxTdGFjayk7CiAKICAgICBpZiAobV9yZXBvcnRVUklz
LmlzRW1wdHkoKSkKICAgICAgICAgcmV0dXJuOwpAQCAtNjM4LDE5ICs2NDAsMTkgQEAgQ1NQRGly
ZWN0aXZlKiBDU1BEaXJlY3RpdmVMaXN0OjpvcGVyYXRpdmVEaXJlY3RpdmUoQ1NQRGlyZWN0aXZl
KiBkaXJlY3RpdmUpIGNvbnMKICAgICByZXR1cm4gZGlyZWN0aXZlID8gZGlyZWN0aXZlIDogbV9k
ZWZhdWx0U3JjLmdldCgpOwogfQogCi1ib29sIENTUERpcmVjdGl2ZUxpc3Q6OmNoZWNrSW5saW5l
QW5kUmVwb3J0VmlvbGF0aW9uKENTUERpcmVjdGl2ZSogZGlyZWN0aXZlLCBjb25zdCBTdHJpbmcm
IGNvbnNvbGVNZXNzYWdlKSBjb25zdAorYm9vbCBDU1BEaXJlY3RpdmVMaXN0OjpjaGVja0lubGlu
ZUFuZFJlcG9ydFZpb2xhdGlvbihDU1BEaXJlY3RpdmUqIGRpcmVjdGl2ZSwgY29uc3QgU3RyaW5n
JiBjb25zb2xlTWVzc2FnZSwgY29uc3QgU3RyaW5nJiBjb250ZXh0VVJMLCBjb25zdCBXVEY6Ok9y
ZGluYWxOdW1iZXImIGNvbnRleHRMaW5lKSBjb25zdAogewogICAgIGlmICghZGlyZWN0aXZlIHx8
IGRpcmVjdGl2ZS0+YWxsb3dJbmxpbmUoKSkKICAgICAgICAgcmV0dXJuIHRydWU7Ci0gICAgcmVw
b3J0VmlvbGF0aW9uKGRpcmVjdGl2ZS0+dGV4dCgpLCBjb25zb2xlTWVzc2FnZSArICJcIiIgKyBk
aXJlY3RpdmUtPnRleHQoKSArICJcIi5cbiIpOworICAgIHJlcG9ydFZpb2xhdGlvbihkaXJlY3Rp
dmUtPnRleHQoKSwgY29uc29sZU1lc3NhZ2UgKyAiXCIiICsgZGlyZWN0aXZlLT50ZXh0KCkgKyAi
XCIuXG4iLCBLVVJMKCksIGNvbnRleHRVUkwsIGNvbnRleHRMaW5lKTsKICAgICByZXR1cm4gZGVu
eUlmRW5mb3JjaW5nUG9saWN5KCk7CiB9CiAKLWJvb2wgQ1NQRGlyZWN0aXZlTGlzdDo6Y2hlY2tF
dmFsQW5kUmVwb3J0VmlvbGF0aW9uKENTUERpcmVjdGl2ZSogZGlyZWN0aXZlLCBjb25zdCBTdHJp
bmcmIGNvbnNvbGVNZXNzYWdlLCBQYXNzUmVmUHRyPFNjcmlwdENhbGxTdGFjaz4gY2FsbFN0YWNr
KSBjb25zdAorYm9vbCBDU1BEaXJlY3RpdmVMaXN0OjpjaGVja0V2YWxBbmRSZXBvcnRWaW9sYXRp
b24oQ1NQRGlyZWN0aXZlKiBkaXJlY3RpdmUsIGNvbnN0IFN0cmluZyYgY29uc29sZU1lc3NhZ2Us
IGNvbnN0IFN0cmluZyYgY29udGV4dFVSTCwgY29uc3QgV1RGOjpPcmRpbmFsTnVtYmVyJiBjb250
ZXh0TGluZSwgUGFzc1JlZlB0cjxTY3JpcHRDYWxsU3RhY2s+IGNhbGxTdGFjaykgY29uc3QKIHsK
ICAgICBpZiAoY2hlY2tFdmFsKGRpcmVjdGl2ZSkpCiAgICAgICAgIHJldHVybiB0cnVlOwotICAg
IHJlcG9ydFZpb2xhdGlvbihkaXJlY3RpdmUtPnRleHQoKSwgY29uc29sZU1lc3NhZ2UgKyAiXCIi
ICsgZGlyZWN0aXZlLT50ZXh0KCkgKyAiXCIuXG4iLCBLVVJMKCksIGNhbGxTdGFjayk7CisgICAg
cmVwb3J0VmlvbGF0aW9uKGRpcmVjdGl2ZS0+dGV4dCgpLCBjb25zb2xlTWVzc2FnZSArICJcIiIg
KyBkaXJlY3RpdmUtPnRleHQoKSArICJcIi5cbiIsIEtVUkwoKSwgY29udGV4dFVSTCwgY29udGV4
dExpbmUsIGNhbGxTdGFjayk7CiAgICAgcmV0dXJuIGRlbnlJZkVuZm9yY2luZ1BvbGljeSgpOwog
fQogCkBAIC02NjMsMzQgKzY2NSwzNCBAQCBib29sIENTUERpcmVjdGl2ZUxpc3Q6OmNoZWNrU291
cmNlQW5kUmVwb3J0VmlvbGF0aW9uKENTUERpcmVjdGl2ZSogZGlyZWN0aXZlLCBjbwogICAgIHJl
dHVybiBkZW55SWZFbmZvcmNpbmdQb2xpY3koKTsKIH0KIAotYm9vbCBDU1BEaXJlY3RpdmVMaXN0
OjphbGxvd0phdmFTY3JpcHRVUkxzKCkgY29uc3QKK2Jvb2wgQ1NQRGlyZWN0aXZlTGlzdDo6YWxs
b3dKYXZhU2NyaXB0VVJMcyhjb25zdCBTdHJpbmcmIGNvbnRleHRVUkwsIGNvbnN0IFdURjo6T3Jk
aW5hbE51bWJlciYgY29udGV4dExpbmUpIGNvbnN0CiB7CiAgICAgREVGSU5FX1NUQVRJQ19MT0NB
TChTdHJpbmcsIGNvbnNvbGVNZXNzYWdlLCAoIlJlZnVzZWQgdG8gZXhlY3V0ZSBKYXZhU2NyaXB0
IFVSTCBiZWNhdXNlIGl0IHZpb2xhdGVzIHRoZSBmb2xsb3dpbmcgQ29udGVudCBTZWN1cml0eSBQ
b2xpY3kgZGlyZWN0aXZlOiAiKSk7Ci0gICAgcmV0dXJuIGNoZWNrSW5saW5lQW5kUmVwb3J0Vmlv
bGF0aW9uKG9wZXJhdGl2ZURpcmVjdGl2ZShtX3NjcmlwdFNyYy5nZXQoKSksIGNvbnNvbGVNZXNz
YWdlKTsKKyAgICByZXR1cm4gY2hlY2tJbmxpbmVBbmRSZXBvcnRWaW9sYXRpb24ob3BlcmF0aXZl
RGlyZWN0aXZlKG1fc2NyaXB0U3JjLmdldCgpKSwgY29uc29sZU1lc3NhZ2UsIGNvbnRleHRVUkws
IGNvbnRleHRMaW5lKTsKIH0KIAotYm9vbCBDU1BEaXJlY3RpdmVMaXN0OjphbGxvd0lubGluZUV2
ZW50SGFuZGxlcnMoKSBjb25zdAorYm9vbCBDU1BEaXJlY3RpdmVMaXN0OjphbGxvd0lubGluZUV2
ZW50SGFuZGxlcnMoY29uc3QgU3RyaW5nJiBjb250ZXh0VVJMLCBjb25zdCBXVEY6Ok9yZGluYWxO
dW1iZXImIGNvbnRleHRMaW5lKSBjb25zdAogewogICAgIERFRklORV9TVEFUSUNfTE9DQUwoU3Ry
aW5nLCBjb25zb2xlTWVzc2FnZSwgKCJSZWZ1c2VkIHRvIGV4ZWN1dGUgaW5saW5lIGV2ZW50IGhh
bmRsZXIgYmVjYXVzZSBpdCB2aW9sYXRlcyB0aGUgZm9sbG93aW5nIENvbnRlbnQgU2VjdXJpdHkg
UG9saWN5IGRpcmVjdGl2ZTogIikpOwotICAgIHJldHVybiBjaGVja0lubGluZUFuZFJlcG9ydFZp
b2xhdGlvbihvcGVyYXRpdmVEaXJlY3RpdmUobV9zY3JpcHRTcmMuZ2V0KCkpLCBjb25zb2xlTWVz
c2FnZSk7CisgICAgcmV0dXJuIGNoZWNrSW5saW5lQW5kUmVwb3J0VmlvbGF0aW9uKG9wZXJhdGl2
ZURpcmVjdGl2ZShtX3NjcmlwdFNyYy5nZXQoKSksIGNvbnNvbGVNZXNzYWdlLCBjb250ZXh0VVJM
LCBjb250ZXh0TGluZSk7CiB9CiAKLWJvb2wgQ1NQRGlyZWN0aXZlTGlzdDo6YWxsb3dJbmxpbmVT
Y3JpcHQoKSBjb25zdAorYm9vbCBDU1BEaXJlY3RpdmVMaXN0OjphbGxvd0lubGluZVNjcmlwdChj
b25zdCBTdHJpbmcmIGNvbnRleHRVUkwsIGNvbnN0IFdURjo6T3JkaW5hbE51bWJlciYgY29udGV4
dExpbmUpIGNvbnN0CiB7CiAgICAgREVGSU5FX1NUQVRJQ19MT0NBTChTdHJpbmcsIGNvbnNvbGVN
ZXNzYWdlLCAoIlJlZnVzZWQgdG8gZXhlY3V0ZSBpbmxpbmUgc2NyaXB0IGJlY2F1c2UgaXQgdmlv
bGF0ZXMgdGhlIGZvbGxvd2luZyBDb250ZW50IFNlY3VyaXR5IFBvbGljeSBkaXJlY3RpdmU6ICIp
KTsKLSAgICByZXR1cm4gY2hlY2tJbmxpbmVBbmRSZXBvcnRWaW9sYXRpb24ob3BlcmF0aXZlRGly
ZWN0aXZlKG1fc2NyaXB0U3JjLmdldCgpKSwgY29uc29sZU1lc3NhZ2UpOworICAgIHJldHVybiBj
aGVja0lubGluZUFuZFJlcG9ydFZpb2xhdGlvbihvcGVyYXRpdmVEaXJlY3RpdmUobV9zY3JpcHRT
cmMuZ2V0KCkpLCBjb25zb2xlTWVzc2FnZSwgY29udGV4dFVSTCwgY29udGV4dExpbmUpOwogfQog
Ci1ib29sIENTUERpcmVjdGl2ZUxpc3Q6OmFsbG93SW5saW5lU3R5bGUoKSBjb25zdAorYm9vbCBD
U1BEaXJlY3RpdmVMaXN0OjphbGxvd0lubGluZVN0eWxlKGNvbnN0IFN0cmluZyYgY29udGV4dFVS
TCwgY29uc3QgV1RGOjpPcmRpbmFsTnVtYmVyJiBjb250ZXh0TGluZSkgY29uc3QKIHsKICAgICBE
RUZJTkVfU1RBVElDX0xPQ0FMKFN0cmluZywgY29uc29sZU1lc3NhZ2UsICgiUmVmdXNlZCB0byBh
cHBseSBpbmxpbmUgc3R5bGUgYmVjYXVzZSBpdCB2aW9sYXRlcyB0aGUgZm9sbG93aW5nIENvbnRl
bnQgU2VjdXJpdHkgUG9saWN5IGRpcmVjdGl2ZTogIikpOwotICAgIHJldHVybiBjaGVja0lubGlu
ZUFuZFJlcG9ydFZpb2xhdGlvbihvcGVyYXRpdmVEaXJlY3RpdmUobV9zdHlsZVNyYy5nZXQoKSks
IGNvbnNvbGVNZXNzYWdlKTsKKyAgICByZXR1cm4gY2hlY2tJbmxpbmVBbmRSZXBvcnRWaW9sYXRp
b24ob3BlcmF0aXZlRGlyZWN0aXZlKG1fc3R5bGVTcmMuZ2V0KCkpLCBjb25zb2xlTWVzc2FnZSwg
Y29udGV4dFVSTCwgY29udGV4dExpbmUpOwogfQogCiBib29sIENTUERpcmVjdGl2ZUxpc3Q6OmFs
bG93RXZhbChQYXNzUmVmUHRyPFNjcmlwdENhbGxTdGFjaz4gY2FsbFN0YWNrKSBjb25zdAogewog
ICAgIERFRklORV9TVEFUSUNfTE9DQUwoU3RyaW5nLCBjb25zb2xlTWVzc2FnZSwgKCJSZWZ1c2Vk
IHRvIGV2YWx1YXRlIHNjcmlwdCBiZWNhdXNlIGl0IHZpb2xhdGVzIHRoZSBmb2xsb3dpbmcgQ29u
dGVudCBTZWN1cml0eSBQb2xpY3kgZGlyZWN0aXZlOiAiKSk7Ci0gICAgcmV0dXJuIGNoZWNrRXZh
bEFuZFJlcG9ydFZpb2xhdGlvbihvcGVyYXRpdmVEaXJlY3RpdmUobV9zY3JpcHRTcmMuZ2V0KCkp
LCBjb25zb2xlTWVzc2FnZSwgY2FsbFN0YWNrKTsKKyAgICByZXR1cm4gY2hlY2tFdmFsQW5kUmVw
b3J0VmlvbGF0aW9uKG9wZXJhdGl2ZURpcmVjdGl2ZShtX3NjcmlwdFNyYy5nZXQoKSksIGNvbnNv
bGVNZXNzYWdlLCBTdHJpbmcoKSwgV1RGOjpPcmRpbmFsTnVtYmVyOjpiZWZvcmVGaXJzdCgpLCBj
YWxsU3RhY2spOwogfQogCiBib29sIENTUERpcmVjdGl2ZUxpc3Q6OmFsbG93U2NyaXB0RnJvbVNv
dXJjZShjb25zdCBLVVJMJiB1cmwpIGNvbnN0CkBAIC05MjMsMjEgKzkyNSwyMSBAQCBDb250ZW50
U2VjdXJpdHlQb2xpY3k6OkhlYWRlclR5cGUgQ29udGVudFNlY3VyaXR5UG9saWN5OjpkZXByZWNh
dGVkSGVhZGVyVHlwZSgpCiAgICAgcmV0dXJuIG1fcG9saWNpZXMuaXNFbXB0eSgpID8gRW5mb3Jj
ZVBvbGljeSA6IG1fcG9saWNpZXNbMF0tPmhlYWRlclR5cGUoKTsKIH0KIAotdGVtcGxhdGU8Ym9v
bCAoQ1NQRGlyZWN0aXZlTGlzdDo6KmFsbG93ZWQpKCkgY29uc3Q+Ci1ib29sIGlzQWxsb3dlZEJ5
QWxsKGNvbnN0IENTUERpcmVjdGl2ZUxpc3RWZWN0b3ImIHBvbGljaWVzKQordGVtcGxhdGU8Ym9v
bCAoQ1NQRGlyZWN0aXZlTGlzdDo6KmFsbG93ZWQpKFBhc3NSZWZQdHI8U2NyaXB0Q2FsbFN0YWNr
PikgY29uc3Q+Citib29sIGlzQWxsb3dlZEJ5QWxsV2l0aENhbGxTdGFjayhjb25zdCBDU1BEaXJl
Y3RpdmVMaXN0VmVjdG9yJiBwb2xpY2llcywgUGFzc1JlZlB0cjxTY3JpcHRDYWxsU3RhY2s+IGNh
bGxTdGFjaykKIHsKICAgICBmb3IgKHNpemVfdCBpID0gMDsgaSA8IHBvbGljaWVzLnNpemUoKTsg
KytpKSB7Ci0gICAgICAgIGlmICghKHBvbGljaWVzW2ldLmdldCgpLT4qYWxsb3dlZCkoKSkKKyAg
ICAgICAgaWYgKCEocG9saWNpZXNbaV0uZ2V0KCktPiphbGxvd2VkKShjYWxsU3RhY2spKQogICAg
ICAgICAgICAgcmV0dXJuIGZhbHNlOwogICAgIH0KICAgICByZXR1cm4gdHJ1ZTsKIH0KIAotdGVt
cGxhdGU8Ym9vbCAoQ1NQRGlyZWN0aXZlTGlzdDo6KmFsbG93ZWQpKFBhc3NSZWZQdHI8U2NyaXB0
Q2FsbFN0YWNrPikgY29uc3Q+Ci1ib29sIGlzQWxsb3dlZEJ5QWxsV2l0aENhbGxTdGFjayhjb25z
dCBDU1BEaXJlY3RpdmVMaXN0VmVjdG9yJiBwb2xpY2llcywgUGFzc1JlZlB0cjxTY3JpcHRDYWxs
U3RhY2s+IGNhbGxTdGFjaykKK3RlbXBsYXRlPGJvb2wgKENTUERpcmVjdGl2ZUxpc3Q6OiphbGxv
d2VkKShjb25zdCBTdHJpbmcmLCBjb25zdCBXVEY6Ok9yZGluYWxOdW1iZXImKSBjb25zdD4KK2Jv
b2wgaXNBbGxvd2VkQnlBbGxXaXRoQ29udGV4dChjb25zdCBDU1BEaXJlY3RpdmVMaXN0VmVjdG9y
JiBwb2xpY2llcywgY29uc3QgU3RyaW5nJiBjb250ZXh0VVJMLCBjb25zdCBXVEY6Ok9yZGluYWxO
dW1iZXImIGNvbnRleHRMaW5lKQogewogICAgIGZvciAoc2l6ZV90IGkgPSAwOyBpIDwgcG9saWNp
ZXMuc2l6ZSgpOyArK2kpIHsKLSAgICAgICAgaWYgKCEocG9saWNpZXNbaV0uZ2V0KCktPiphbGxv
d2VkKShjYWxsU3RhY2spKQorICAgICAgICBpZiAoIShwb2xpY2llc1tpXS5nZXQoKS0+KmFsbG93
ZWQpKGNvbnRleHRVUkwsIGNvbnRleHRMaW5lKSkKICAgICAgICAgICAgIHJldHVybiBmYWxzZTsK
ICAgICB9CiAgICAgcmV0dXJuIHRydWU7CkBAIC05NTMsMjYgKzk1NSwyNiBAQCBib29sIGlzQWxs
b3dlZEJ5QWxsV2l0aFVSTChjb25zdCBDU1BEaXJlY3RpdmVMaXN0VmVjdG9yJiBwb2xpY2llcywg
Y29uc3QgS1VSTCYgdQogICAgIHJldHVybiB0cnVlOwogfQogCi1ib29sIENvbnRlbnRTZWN1cml0
eVBvbGljeTo6YWxsb3dKYXZhU2NyaXB0VVJMcygpIGNvbnN0Citib29sIENvbnRlbnRTZWN1cml0
eVBvbGljeTo6YWxsb3dKYXZhU2NyaXB0VVJMcyhjb25zdCBTdHJpbmcmIGNvbnRleHRVUkwsIGNv
bnN0IFdURjo6T3JkaW5hbE51bWJlciYgY29udGV4dExpbmUpIGNvbnN0CiB7Ci0gICAgcmV0dXJu
IGlzQWxsb3dlZEJ5QWxsPCZDU1BEaXJlY3RpdmVMaXN0OjphbGxvd0phdmFTY3JpcHRVUkxzPiht
X3BvbGljaWVzKTsKKyAgICByZXR1cm4gaXNBbGxvd2VkQnlBbGxXaXRoQ29udGV4dDwmQ1NQRGly
ZWN0aXZlTGlzdDo6YWxsb3dKYXZhU2NyaXB0VVJMcz4obV9wb2xpY2llcywgY29udGV4dFVSTCwg
Y29udGV4dExpbmUpOwogfQogCi1ib29sIENvbnRlbnRTZWN1cml0eVBvbGljeTo6YWxsb3dJbmxp
bmVFdmVudEhhbmRsZXJzKCkgY29uc3QKK2Jvb2wgQ29udGVudFNlY3VyaXR5UG9saWN5OjphbGxv
d0lubGluZUV2ZW50SGFuZGxlcnMoY29uc3QgU3RyaW5nJiBjb250ZXh0VVJMLCBjb25zdCBXVEY6
Ok9yZGluYWxOdW1iZXImIGNvbnRleHRMaW5lKSBjb25zdAogewotICAgIHJldHVybiBpc0FsbG93
ZWRCeUFsbDwmQ1NQRGlyZWN0aXZlTGlzdDo6YWxsb3dJbmxpbmVFdmVudEhhbmRsZXJzPihtX3Bv
bGljaWVzKTsKKyAgICByZXR1cm4gaXNBbGxvd2VkQnlBbGxXaXRoQ29udGV4dDwmQ1NQRGlyZWN0
aXZlTGlzdDo6YWxsb3dJbmxpbmVFdmVudEhhbmRsZXJzPihtX3BvbGljaWVzLCBjb250ZXh0VVJM
LCBjb250ZXh0TGluZSk7CiB9CiAKLWJvb2wgQ29udGVudFNlY3VyaXR5UG9saWN5OjphbGxvd0lu
bGluZVNjcmlwdCgpIGNvbnN0Citib29sIENvbnRlbnRTZWN1cml0eVBvbGljeTo6YWxsb3dJbmxp
bmVTY3JpcHQoY29uc3QgU3RyaW5nJiBjb250ZXh0VVJMLCBjb25zdCBXVEY6Ok9yZGluYWxOdW1i
ZXImIGNvbnRleHRMaW5lKSBjb25zdAogewotICAgIHJldHVybiBpc0FsbG93ZWRCeUFsbDwmQ1NQ
RGlyZWN0aXZlTGlzdDo6YWxsb3dJbmxpbmVTY3JpcHQ+KG1fcG9saWNpZXMpOworICAgIHJldHVy
biBpc0FsbG93ZWRCeUFsbFdpdGhDb250ZXh0PCZDU1BEaXJlY3RpdmVMaXN0OjphbGxvd0lubGlu
ZVNjcmlwdD4obV9wb2xpY2llcywgY29udGV4dFVSTCwgY29udGV4dExpbmUpOwogfQogCi1ib29s
IENvbnRlbnRTZWN1cml0eVBvbGljeTo6YWxsb3dJbmxpbmVTdHlsZSgpIGNvbnN0Citib29sIENv
bnRlbnRTZWN1cml0eVBvbGljeTo6YWxsb3dJbmxpbmVTdHlsZShjb25zdCBTdHJpbmcmIGNvbnRl
eHRVUkwsIGNvbnN0IFdURjo6T3JkaW5hbE51bWJlciYgY29udGV4dExpbmUpIGNvbnN0CiB7CiAg
ICAgaWYgKG1fb3ZlcnJpZGVJbmxpbmVTdHlsZUFsbG93ZWQpCiAgICAgICAgIHJldHVybiB0cnVl
OwotICAgIHJldHVybiBpc0FsbG93ZWRCeUFsbDwmQ1NQRGlyZWN0aXZlTGlzdDo6YWxsb3dJbmxp
bmVTdHlsZT4obV9wb2xpY2llcyk7CisgICAgcmV0dXJuIGlzQWxsb3dlZEJ5QWxsV2l0aENvbnRl
eHQ8JkNTUERpcmVjdGl2ZUxpc3Q6OmFsbG93SW5saW5lU3R5bGU+KG1fcG9saWNpZXMsIGNvbnRl
eHRVUkwsIGNvbnRleHRMaW5lKTsKIH0KIAogYm9vbCBDb250ZW50U2VjdXJpdHlQb2xpY3k6OmFs
bG93RXZhbChQYXNzUmVmUHRyPFNjcmlwdENhbGxTdGFjaz4gY2FsbFN0YWNrKSBjb25zdApkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGFnZS9Db250ZW50U2VjdXJpdHlQb2xpY3kuaCBiL1Nv
dXJjZS9XZWJDb3JlL3BhZ2UvQ29udGVudFNlY3VyaXR5UG9saWN5LmgKaW5kZXggMTljNDY1ZTNi
MDBlY2EyYzM5NzgwNTY4ZjY1Yzg1NzJiMWQ3NzNkYS4uN2FjNjBkOWQ3ZmZiNTc4MmNiZDE4ZTc2
NjJkNjllOTllYzNiODJkNCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGFnZS9Db250ZW50
U2VjdXJpdHlQb2xpY3kuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wYWdlL0NvbnRlbnRTZWN1cml0
eVBvbGljeS5oCkBAIC0zMSw2ICszMSwxMCBAQAogI2luY2x1ZGUgPHd0Zi9WZWN0b3IuaD4KICNp
bmNsdWRlIDx3dGYvdGV4dC9XVEZTdHJpbmcuaD4KIAorbmFtZXNwYWNlIFdURiB7CitjbGFzcyBP
cmRpbmFsTnVtYmVyOworfQorCiBuYW1lc3BhY2UgV2ViQ29yZSB7CiAKIGNsYXNzIENTUERpcmVj
dGl2ZUxpc3Q7CkBAIC02MiwxMCArNjYsMTAgQEAgcHVibGljOgogICAgIGNvbnN0IFN0cmluZyYg
ZGVwcmVjYXRlZEhlYWRlcigpIGNvbnN0OwogICAgIEhlYWRlclR5cGUgZGVwcmVjYXRlZEhlYWRl
clR5cGUoKSBjb25zdDsKIAotICAgIGJvb2wgYWxsb3dKYXZhU2NyaXB0VVJMcygpIGNvbnN0Owot
ICAgIGJvb2wgYWxsb3dJbmxpbmVFdmVudEhhbmRsZXJzKCkgY29uc3Q7Ci0gICAgYm9vbCBhbGxv
d0lubGluZVNjcmlwdCgpIGNvbnN0OwotICAgIGJvb2wgYWxsb3dJbmxpbmVTdHlsZSgpIGNvbnN0
OworICAgIGJvb2wgYWxsb3dKYXZhU2NyaXB0VVJMcyhjb25zdCBTdHJpbmcmIGNvbnRleHRVUkws
IGNvbnN0IFdURjo6T3JkaW5hbE51bWJlciYgY29udGV4dExpbmUpIGNvbnN0OworICAgIGJvb2wg
YWxsb3dJbmxpbmVFdmVudEhhbmRsZXJzKGNvbnN0IFN0cmluZyYgY29udGV4dFVSTCwgY29uc3Qg
V1RGOjpPcmRpbmFsTnVtYmVyJiBjb250ZXh0TGluZSkgY29uc3Q7CisgICAgYm9vbCBhbGxvd0lu
bGluZVNjcmlwdChjb25zdCBTdHJpbmcmIGNvbnRleHRVUkwsIGNvbnN0IFdURjo6T3JkaW5hbE51
bWJlciYgY29udGV4dExpbmUpIGNvbnN0OworICAgIGJvb2wgYWxsb3dJbmxpbmVTdHlsZShjb25z
dCBTdHJpbmcmIGNvbnRleHRVUkwsIGNvbnN0IFdURjo6T3JkaW5hbE51bWJlciYgY29udGV4dExp
bmUpIGNvbnN0OwogICAgIGJvb2wgYWxsb3dFdmFsKFBhc3NSZWZQdHI8U2NyaXB0Q2FsbFN0YWNr
PikgY29uc3Q7CiAKICAgICBib29sIGFsbG93U2NyaXB0RnJvbVNvdXJjZShjb25zdCBLVVJMJikg
Y29uc3Q7CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cgYi9MYXlvdXRUZXN0cy9D
aGFuZ2VMb2cKaW5kZXggYTdlYzc0YTRmOWU1ODg3MjAyNjE0ODc5NTI1Mzc3ZGUzZWMzMDlhMy4u
Njk5MzY0ZDE4NTM3NDcxY2U0YTlhNjUyYjFmY2Y2ZDkzZGQ4MjY2MCAxMDA2NDQKLS0tIGEvTGF5
b3V0VGVzdHMvQ2hhbmdlTG9nCisrKyBiL0xheW91dFRlc3RzL0NoYW5nZUxvZwpAQCAtMSwzICsx
LDM1IEBACisyMDEyLTA1LTI1ICBNaWtlIFdlc3QgIDxta3dzdEBjaHJvbWl1bS5vcmc+CisKKyAg
ICAgICAgSW5saW5lIHNjcmlwdCBhbmQgc3R5bGUgYmxvY2tlZCBieSBDb250ZW50IFNlY3VyaXR5
IFBvbGljeSBzaG91bGQgcHJvdmlkZSBtb3JlIGRldGFpbGVkIGNvbnNvbGUgZXJyb3JzLgorICAg
ICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9ODY4NDgKKworICAg
ICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICAqIGh0dHAvdGVzdHMv
c2VjdXJpdHkvY29udGVudFNlY3VyaXR5UG9saWN5L2NvbWJpbmUtbXVsdGlwbGUtcG9saWNpZXMt
ZXhwZWN0ZWQudHh0OgorICAgICAgICAqIGh0dHAvdGVzdHMvc2VjdXJpdHkvY29udGVudFNlY3Vy
aXR5UG9saWN5L2RlZmF1bHQtc3JjLWlubGluZS1ibG9ja2VkLWV4cGVjdGVkLnR4dDoKKyAgICAg
ICAgKiBodHRwL3Rlc3RzL3NlY3VyaXR5L2NvbnRlbnRTZWN1cml0eVBvbGljeS9pbmplY3RlZC1p
bmxpbmUtc2NyaXB0LWFsbG93ZWQtZXhwZWN0ZWQudHh0OiBBZGRlZC4KKyAgICAgICAgKiBodHRw
L3Rlc3RzL3NlY3VyaXR5L2NvbnRlbnRTZWN1cml0eVBvbGljeS9pbmplY3RlZC1pbmxpbmUtc2Ny
aXB0LWFsbG93ZWQuaHRtbDogQWRkZWQuCisgICAgICAgICogaHR0cC90ZXN0cy9zZWN1cml0eS9j
b250ZW50U2VjdXJpdHlQb2xpY3kvaW5qZWN0ZWQtaW5saW5lLXNjcmlwdC1ibG9ja2VkLWV4cGVj
dGVkLnR4dDogQWRkZWQuCisgICAgICAgICogaHR0cC90ZXN0cy9zZWN1cml0eS9jb250ZW50U2Vj
dXJpdHlQb2xpY3kvaW5qZWN0ZWQtaW5saW5lLXNjcmlwdC1ibG9ja2VkLmh0bWw6IEFkZGVkLgor
ICAgICAgICAqIGh0dHAvdGVzdHMvc2VjdXJpdHkvY29udGVudFNlY3VyaXR5UG9saWN5L2luamVj
dGVkLWlubGluZS1zdHlsZS1hbGxvd2VkLWV4cGVjdGVkLnR4dDogQWRkZWQuCisgICAgICAgICog
aHR0cC90ZXN0cy9zZWN1cml0eS9jb250ZW50U2VjdXJpdHlQb2xpY3kvaW5qZWN0ZWQtaW5saW5l
LXN0eWxlLWFsbG93ZWQuaHRtbDogQWRkZWQuCisgICAgICAgICogaHR0cC90ZXN0cy9zZWN1cml0
eS9jb250ZW50U2VjdXJpdHlQb2xpY3kvaW5qZWN0ZWQtaW5saW5lLXN0eWxlLWJsb2NrZWQtZXhw
ZWN0ZWQudHh0OiBBZGRlZC4KKyAgICAgICAgKiBodHRwL3Rlc3RzL3NlY3VyaXR5L2NvbnRlbnRT
ZWN1cml0eVBvbGljeS9pbmplY3RlZC1pbmxpbmUtc3R5bGUtYmxvY2tlZC5odG1sOiBBZGRlZC4K
KyAgICAgICAgKiBodHRwL3Rlc3RzL3NlY3VyaXR5L2NvbnRlbnRTZWN1cml0eVBvbGljeS9pbmxp
bmUtc2NyaXB0LWJsb2NrZWQtZXhwZWN0ZWQudHh0OgorICAgICAgICAqIGh0dHAvdGVzdHMvc2Vj
dXJpdHkvY29udGVudFNlY3VyaXR5UG9saWN5L2lubGluZS1zY3JpcHQtYmxvY2tlZC1nb29meS1l
eHBlY3RlZC50eHQ6CisgICAgICAgICogaHR0cC90ZXN0cy9zZWN1cml0eS9jb250ZW50U2VjdXJp
dHlQb2xpY3kvaW5saW5lLXNjcmlwdC1ibG9ja2VkLWphdmFzY3JpcHQtdXJsLWV4cGVjdGVkLnR4
dDoKKyAgICAgICAgKiBodHRwL3Rlc3RzL3NlY3VyaXR5L2NvbnRlbnRTZWN1cml0eVBvbGljeS9p
bmxpbmUtc3R5bGUtYXR0cmlidXRlLWJsb2NrZWQtZXhwZWN0ZWQudHh0OgorICAgICAgICAqIGh0
dHAvdGVzdHMvc2VjdXJpdHkvY29udGVudFNlY3VyaXR5UG9saWN5L2lubGluZS1zdHlsZS1ibG9j
a2VkLWV4cGVjdGVkLnR4dDoKKyAgICAgICAgKiBodHRwL3Rlc3RzL3NlY3VyaXR5L2NvbnRlbnRT
ZWN1cml0eVBvbGljeS9qYXZhc2NyaXB0LXVybC1ibG9ja2VkLWV4cGVjdGVkLnR4dDoKKyAgICAg
ICAgKiBodHRwL3Rlc3RzL3NlY3VyaXR5L2NvbnRlbnRTZWN1cml0eVBvbGljeS9yZXBvcnQtYW5k
LWVuZm9yY2UtZXhwZWN0ZWQudHh0OgorICAgICAgICAqIGh0dHAvdGVzdHMvc2VjdXJpdHkvY29u
dGVudFNlY3VyaXR5UG9saWN5L3JlcG9ydC1vbmx5LWV4cGVjdGVkLnR4dDoKKyAgICAgICAgKiBo
dHRwL3Rlc3RzL3NlY3VyaXR5L2NvbnRlbnRTZWN1cml0eVBvbGljeS9yZXBvcnQtb25seS1mcm9t
LWhlYWRlci1leHBlY3RlZC50eHQ6CisgICAgICAgICogaHR0cC90ZXN0cy9zZWN1cml0eS9jb250
ZW50U2VjdXJpdHlQb2xpY3kvcmVwb3J0LXVyaS1leHBlY3RlZC50eHQ6CisgICAgICAgICogaHR0
cC90ZXN0cy9zZWN1cml0eS9jb250ZW50U2VjdXJpdHlQb2xpY3kvcmVwb3J0LXVyaS1mcm9tLWNo
aWxkLWZyYW1lLWV4cGVjdGVkLnR4dDoKKyAgICAgICAgKiBodHRwL3Rlc3RzL3NlY3VyaXR5L2Nv
bnRlbnRTZWN1cml0eVBvbGljeS9yZXNvdXJjZXMvaW5qZWN0LXNjcmlwdC5qczogQWRkZWQuCisg
ICAgICAgICogaHR0cC90ZXN0cy9zZWN1cml0eS9jb250ZW50U2VjdXJpdHlQb2xpY3kvc2NyaXB0
LXNyYy1ub25lLWlubGluZS1ldmVudC1leHBlY3RlZC50eHQ6CisgICAgICAgICogaHR0cC90ZXN0
cy9zZWN1cml0eS9jb250ZW50U2VjdXJpdHlQb2xpY3kvc3JjZG9jLWRvZXNudC1ieXBhc3Mtc2Ny
aXB0LXNyYy1leHBlY3RlZC50eHQ6CisKIDIwMTItMDUtMjIgIENocmlzdG9waGUgRHVtZXogIDxj
aHJpc3RvcGhlLmR1bWV6QGludGVsLmNvbT4KIAogICAgICAgICBbRUZMXSBUZXN0IGV4cGVjdGF0
aW9ucyBuZWVkIHVwZGF0aW5nCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3Nl
Y3VyaXR5L2NvbnRlbnRTZWN1cml0eVBvbGljeS9jb21iaW5lLW11bHRpcGxlLXBvbGljaWVzLWV4
cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvc2VjdXJpdHkvY29udGVudFNlY3Vy
aXR5UG9saWN5L2NvbWJpbmUtbXVsdGlwbGUtcG9saWNpZXMtZXhwZWN0ZWQudHh0CmluZGV4IDc1
NjA0MTkwZmIzZWIyMjY4MDNlZDAwNzM3MWQwYjY2NzRjNDJjODguLjAxMjRmZThiYWI5ZTRmMTQx
ZDdlOTcyYWQ2ZGY1ODRhMTE5OTExM2MgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2h0dHAvdGVz
dHMvc2VjdXJpdHkvY29udGVudFNlY3VyaXR5UG9saWN5L2NvbWJpbmUtbXVsdGlwbGUtcG9saWNp
ZXMtZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvc2VjdXJpdHkvY29u
dGVudFNlY3VyaXR5UG9saWN5L2NvbWJpbmUtbXVsdGlwbGUtcG9saWNpZXMtZXhwZWN0ZWQudHh0
CkBAIC0xLDUgKzEsNSBAQAotQ09OU09MRSBNRVNTQUdFOiBSZWZ1c2VkIHRvIGV4ZWN1dGUgaW5s
aW5lIHNjcmlwdCBiZWNhdXNlIGl0IHZpb2xhdGVzIHRoZSBmb2xsb3dpbmcgQ29udGVudCBTZWN1
cml0eSBQb2xpY3kgZGlyZWN0aXZlOiAic2NyaXB0LXNyYyAnc2VsZiciLgorQ09OU09MRSBNRVNT
QUdFOiBsaW5lIDExOiBSZWZ1c2VkIHRvIGV4ZWN1dGUgaW5saW5lIHNjcmlwdCBiZWNhdXNlIGl0
IHZpb2xhdGVzIHRoZSBmb2xsb3dpbmcgQ29udGVudCBTZWN1cml0eSBQb2xpY3kgZGlyZWN0aXZl
OiAic2NyaXB0LXNyYyAnc2VsZiciLgogCi1DT05TT0xFIE1FU1NBR0U6IFJlZnVzZWQgdG8gYXBw
bHkgaW5saW5lIHN0eWxlIGJlY2F1c2UgaXQgdmlvbGF0ZXMgdGhlIGZvbGxvd2luZyBDb250ZW50
IFNlY3VyaXR5IFBvbGljeSBkaXJlY3RpdmU6ICJzdHlsZS1zcmMgJ25vbmUnIi4KK0NPTlNPTEUg
TUVTU0FHRTogbGluZSAxNDogUmVmdXNlZCB0byBhcHBseSBpbmxpbmUgc3R5bGUgYmVjYXVzZSBp
dCB2aW9sYXRlcyB0aGUgZm9sbG93aW5nIENvbnRlbnQgU2VjdXJpdHkgUG9saWN5IGRpcmVjdGl2
ZTogInN0eWxlLXNyYyAnbm9uZSciLgogCiBUaGlzIHRlc3QgY2hlY2tzIHRoYXQgd2UgZW5mb3Jj
ZSBhbGwgdGhlIHN1cHBsaWVkIHBvbGljaWVzLiBUaGlzIHRlc3QgcGFzc2VzIGlmIGl0IGRvZXNu
J3QgYWxlcnQgZmFpbCBhbmQgaWYgdGhlIHN0eWxlIGRvZXNuJ3QgYXBwbHkuCmRpZmYgLS1naXQg
YS9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3NlY3VyaXR5L2NvbnRlbnRTZWN1cml0eVBvbGljeS9k
ZWZhdWx0LXNyYy1pbmxpbmUtYmxvY2tlZC1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9odHRw
L3Rlc3RzL3NlY3VyaXR5L2NvbnRlbnRTZWN1cml0eVBvbGljeS9kZWZhdWx0LXNyYy1pbmxpbmUt
YmxvY2tlZC1leHBlY3RlZC50eHQKaW5kZXggZDY4NWNhZGQyOTVhOTFmNGRmMDQ2NDY5NTIyYWE4
YjlhMzExYTg4YS4uMDI5MTViZDA1OTNmNjc3Yzc5ODhlYzQzYjI3NWQ3ZWY5MWE0NWQ5MyAxMDA2
NDQKLS0tIGEvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9zZWN1cml0eS9jb250ZW50U2VjdXJpdHlQ
b2xpY3kvZGVmYXVsdC1zcmMtaW5saW5lLWJsb2NrZWQtZXhwZWN0ZWQudHh0CisrKyBiL0xheW91
dFRlc3RzL2h0dHAvdGVzdHMvc2VjdXJpdHkvY29udGVudFNlY3VyaXR5UG9saWN5L2RlZmF1bHQt
c3JjLWlubGluZS1ibG9ja2VkLWV4cGVjdGVkLnR4dApAQCAtMSw0ICsxLDQgQEAKLUNPTlNPTEUg
TUVTU0FHRTogUmVmdXNlZCB0byBleGVjdXRlIGlubGluZSBzY3JpcHQgYmVjYXVzZSBpdCB2aW9s
YXRlcyB0aGUgZm9sbG93aW5nIENvbnRlbnQgU2VjdXJpdHkgUG9saWN5IGRpcmVjdGl2ZTogImRl
ZmF1bHQtc3JjICdzZWxmJyIuCitDT05TT0xFIE1FU1NBR0U6IGxpbmUgOTogUmVmdXNlZCB0byBl
eGVjdXRlIGlubGluZSBzY3JpcHQgYmVjYXVzZSBpdCB2aW9sYXRlcyB0aGUgZm9sbG93aW5nIENv
bnRlbnQgU2VjdXJpdHkgUG9saWN5IGRpcmVjdGl2ZTogImRlZmF1bHQtc3JjICdzZWxmJyIuCiAK
IENPTlNPTEUgTUVTU0FHRTogUmVmdXNlZCB0byBleGVjdXRlIGlubGluZSBzY3JpcHQgYmVjYXVz
ZSBpdCB2aW9sYXRlcyB0aGUgZm9sbG93aW5nIENvbnRlbnQgU2VjdXJpdHkgUG9saWN5IGRpcmVj
dGl2ZTogImRlZmF1bHQtc3JjICdzZWxmJyIuCiAKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2h0
dHAvdGVzdHMvc2VjdXJpdHkvY29udGVudFNlY3VyaXR5UG9saWN5L2luamVjdGVkLWlubGluZS1z
Y3JpcHQtYWxsb3dlZC1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3NlY3Vy
aXR5L2NvbnRlbnRTZWN1cml0eVBvbGljeS9pbmplY3RlZC1pbmxpbmUtc2NyaXB0LWFsbG93ZWQt
ZXhwZWN0ZWQudHh0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmFhOTg1OGJmMGU1MzZkZmI0N2UwZDNiNjY0NjhhZjQ3
ZjYzMzQ1ZWYKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3NlY3Vy
aXR5L2NvbnRlbnRTZWN1cml0eVBvbGljeS9pbmplY3RlZC1pbmxpbmUtc2NyaXB0LWFsbG93ZWQt
ZXhwZWN0ZWQudHh0CkBAIC0wLDAgKzEsMyBAQAorQUxFUlQ6IFBhc3MgMSBvZiAyCitBTEVSVDog
UGFzcyAyIG9mIDIKKwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9zZWN1cml0
eS9jb250ZW50U2VjdXJpdHlQb2xpY3kvaW5qZWN0ZWQtaW5saW5lLXNjcmlwdC1hbGxvd2VkLmh0
bWwgYi9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3NlY3VyaXR5L2NvbnRlbnRTZWN1cml0eVBvbGlj
eS9pbmplY3RlZC1pbmxpbmUtc2NyaXB0LWFsbG93ZWQuaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0
NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5jZWIyN2Q1
YmFmYjcyNWQxYzU0NTdiNzVjYmNjYTJiNzJmZmEzNWNlCi0tLSAvZGV2L251bGwKKysrIGIvTGF5
b3V0VGVzdHMvaHR0cC90ZXN0cy9zZWN1cml0eS9jb250ZW50U2VjdXJpdHlQb2xpY3kvaW5qZWN0
ZWQtaW5saW5lLXNjcmlwdC1hbGxvd2VkLmh0bWwKQEAgLTAsMCArMSwxMCBAQAorPCFET0NUWVBF
IGh0bWw+Cis8aHRtbD4KKzxoZWFkPgorPG1ldGEgaHR0cC1lcXVpdj0iWC1XZWJLaXQtQ1NQIiBj
b250ZW50PSJzY3JpcHQtc3JjIGh0dHA6Ly8xMjcuMC4wLjE6KiAndW5zYWZlLWlubGluZSciPgor
PHNjcmlwdCBzcmM9InJlc291cmNlcy9kdW1wLWFzLXRleHQuanMiPjwvc2NyaXB0PgorPC9oZWFk
PgorPGJvZHk+Cis8c2NyaXB0IHNyYz0icmVzb3VyY2VzL2luamVjdC1zY3JpcHQuanMiPjwvc2Ny
aXB0PgorPC9ib2R5PgorPC9odG1sPgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaHR0cC90ZXN0
cy9zZWN1cml0eS9jb250ZW50U2VjdXJpdHlQb2xpY3kvaW5qZWN0ZWQtaW5saW5lLXNjcmlwdC1i
bG9ja2VkLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvc2VjdXJpdHkvY29u
dGVudFNlY3VyaXR5UG9saWN5L2luamVjdGVkLWlubGluZS1zY3JpcHQtYmxvY2tlZC1leHBlY3Rl
ZC50eHQKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMC4uYzE1OWVhODVlYmMxZTk5OGM4ZTc2OGJmY2NjOGFlYzE5NzkzMzgz
MgotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvc2VjdXJpdHkvY29u
dGVudFNlY3VyaXR5UG9saWN5L2luamVjdGVkLWlubGluZS1zY3JpcHQtYmxvY2tlZC1leHBlY3Rl
ZC50eHQKQEAgLTAsMCArMSw1IEBACitDT05TT0xFIE1FU1NBR0U6IFJlZnVzZWQgdG8gZXhlY3V0
ZSBpbmxpbmUgc2NyaXB0IGJlY2F1c2UgaXQgdmlvbGF0ZXMgdGhlIGZvbGxvd2luZyBDb250ZW50
IFNlY3VyaXR5IFBvbGljeSBkaXJlY3RpdmU6ICJzY3JpcHQtc3JjIGh0dHA6Ly8xMjcuMC4wLjE6
KiIuCisKK0NPTlNPTEUgTUVTU0FHRTogUmVmdXNlZCB0byBleGVjdXRlIGlubGluZSBzY3JpcHQg
YmVjYXVzZSBpdCB2aW9sYXRlcyB0aGUgZm9sbG93aW5nIENvbnRlbnQgU2VjdXJpdHkgUG9saWN5
IGRpcmVjdGl2ZTogInNjcmlwdC1zcmMgaHR0cDovLzEyNy4wLjAuMToqIi4KKworCmRpZmYgLS1n
aXQgYS9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3NlY3VyaXR5L2NvbnRlbnRTZWN1cml0eVBvbGlj
eS9pbmplY3RlZC1pbmxpbmUtc2NyaXB0LWJsb2NrZWQuaHRtbCBiL0xheW91dFRlc3RzL2h0dHAv
dGVzdHMvc2VjdXJpdHkvY29udGVudFNlY3VyaXR5UG9saWN5L2luamVjdGVkLWlubGluZS1zY3Jp
cHQtYmxvY2tlZC5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjYxMDg2OGI3ZWM3NmI1MDNhYmJkNDkzYzMyYjE1
NDRmZDM5Mzc4YmIKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3Nl
Y3VyaXR5L2NvbnRlbnRTZWN1cml0eVBvbGljeS9pbmplY3RlZC1pbmxpbmUtc2NyaXB0LWJsb2Nr
ZWQuaHRtbApAQCAtMCwwICsxLDEwIEBACis8IURPQ1RZUEUgaHRtbD4KKzxodG1sPgorPGhlYWQ+
Cis8bWV0YSBodHRwLWVxdWl2PSJYLVdlYktpdC1DU1AiIGNvbnRlbnQ9InNjcmlwdC1zcmMgaHR0
cDovLzEyNy4wLjAuMToqIj4KKzxzY3JpcHQgc3JjPSJyZXNvdXJjZXMvZHVtcC1hcy10ZXh0Lmpz
Ij48L3NjcmlwdD4KKzwvaGVhZD4KKzxib2R5PgorPHNjcmlwdCBzcmM9InJlc291cmNlcy9pbmpl
Y3Qtc2NyaXB0LmpzIj48L3NjcmlwdD4KKzwvYm9keT4KKzwvaHRtbD4KZGlmZiAtLWdpdCBhL0xh
eW91dFRlc3RzL2h0dHAvdGVzdHMvc2VjdXJpdHkvY29udGVudFNlY3VyaXR5UG9saWN5L2luamVj
dGVkLWlubGluZS1zdHlsZS1hbGxvd2VkLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2h0dHAv
dGVzdHMvc2VjdXJpdHkvY29udGVudFNlY3VyaXR5UG9saWN5L2luamVjdGVkLWlubGluZS1zdHls
ZS1hbGxvd2VkLWV4cGVjdGVkLnR4dApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi40MzgxOGE5MzhmZDhiNGNmYjJjZjk2
M2M1ZmEwMzExMGNiNmVmMzUxCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvaHR0cC90
ZXN0cy9zZWN1cml0eS9jb250ZW50U2VjdXJpdHlQb2xpY3kvaW5qZWN0ZWQtaW5saW5lLXN0eWxl
LWFsbG93ZWQtZXhwZWN0ZWQudHh0CkBAIC0wLDAgKzEgQEAKK1BBU1M6IDIgc3R5bGVzaGVldHMg
b24gdGhlIHBhZ2UuCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3NlY3VyaXR5
L2NvbnRlbnRTZWN1cml0eVBvbGljeS9pbmplY3RlZC1pbmxpbmUtc3R5bGUtYWxsb3dlZC5odG1s
IGIvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9zZWN1cml0eS9jb250ZW50U2VjdXJpdHlQb2xpY3kv
aW5qZWN0ZWQtaW5saW5lLXN0eWxlLWFsbG93ZWQuaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NApp
bmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5kNzJmZDM2NzUw
NGRmMTZjMzdjOWRkYWFhNDBkY2UwNTBjN2ViYzdjCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0
VGVzdHMvaHR0cC90ZXN0cy9zZWN1cml0eS9jb250ZW50U2VjdXJpdHlQb2xpY3kvaW5qZWN0ZWQt
aW5saW5lLXN0eWxlLWFsbG93ZWQuaHRtbApAQCAtMCwwICsxLDIyIEBACis8IURPQ1RZUEUgaHRt
bD4KKzxodG1sPgorPGhlYWQ+Cis8bWV0YSBodHRwLWVxdWl2PSJYLVdlYktpdC1DU1AiIGNvbnRl
bnQ9InN0eWxlLXNyYyAndW5zYWZlLWlubGluZSciPgorPHNjcmlwdCBzcmM9InJlc291cmNlcy9k
dW1wLWFzLXRleHQuanMiPjwvc2NyaXB0PgorPC9oZWFkPgorPGJvZHk+Cis8ZGl2IGlkPSJ0ZXN0
MSI+CisgIEZBSUwgMS8yCis8L2Rpdj4KKzxkaXYgaWQ9InRlc3QyIj4KKyAgRkFJTCAyLzIKKzwv
ZGl2PgorPHNjcmlwdCBzcmM9InJlc291cmNlcy9pbmplY3Qtc3R5bGUuanMiPjwvc2NyaXB0Pgor
PHNjcmlwdD4KKyAgaWYgKGRvY3VtZW50LnN0eWxlU2hlZXRzLmxlbmd0aCA9PT0gMikKKyAgICBk
b2N1bWVudC53cml0ZSgiUEFTUzogMiBzdHlsZXNoZWV0cyBvbiB0aGUgcGFnZS4iKTsKKyAgZWxz
ZQorICAgIGRvY3VtZW50LndyaXRlKCJGQUlMOiAiICsgZG9jdW1lbnQuc3R5bGVTaGVldHMubGVu
Z3RoICsgIiBzdHlsZXNoZWV0cyBvbiB0aGUgcGFnZSAoc2hvdWxkIGJlIDIpLiIpOworPC9zY3Jp
cHQ+Cis8L2JvZHk+Cis8L2h0bWw+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9odHRwL3Rlc3Rz
L3NlY3VyaXR5L2NvbnRlbnRTZWN1cml0eVBvbGljeS9pbmplY3RlZC1pbmxpbmUtc3R5bGUtYmxv
Y2tlZC1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3NlY3VyaXR5L2NvbnRl
bnRTZWN1cml0eVBvbGljeS9pbmplY3RlZC1pbmxpbmUtc3R5bGUtYmxvY2tlZC1leHBlY3RlZC50
eHQKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMC4uZTI2NDFkMTY1NzdlNWU2ZmIxZTQ2ZDEwNDhkNWEyOGViMDRkOTkwOAot
LS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvc2VjdXJpdHkvY29udGVu
dFNlY3VyaXR5UG9saWN5L2luamVjdGVkLWlubGluZS1zdHlsZS1ibG9ja2VkLWV4cGVjdGVkLnR4
dApAQCAtMCwwICsxLDcgQEAKK0NPTlNPTEUgTUVTU0FHRTogUmVmdXNlZCB0byBhcHBseSBpbmxp
bmUgc3R5bGUgYmVjYXVzZSBpdCB2aW9sYXRlcyB0aGUgZm9sbG93aW5nIENvbnRlbnQgU2VjdXJp
dHkgUG9saWN5IGRpcmVjdGl2ZTogInN0eWxlLXNyYyAnbm9uZSciLgorCitDT05TT0xFIE1FU1NB
R0U6IFJlZnVzZWQgdG8gYXBwbHkgaW5saW5lIHN0eWxlIGJlY2F1c2UgaXQgdmlvbGF0ZXMgdGhl
IGZvbGxvd2luZyBDb250ZW50IFNlY3VyaXR5IFBvbGljeSBkaXJlY3RpdmU6ICJzdHlsZS1zcmMg
J25vbmUnIi4KKworUEFTUyAxLzIKK1BBU1MgMi8yCiswCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0
cy9odHRwL3Rlc3RzL3NlY3VyaXR5L2NvbnRlbnRTZWN1cml0eVBvbGljeS9pbmplY3RlZC1pbmxp
bmUtc3R5bGUtYmxvY2tlZC5odG1sIGIvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9zZWN1cml0eS9j
b250ZW50U2VjdXJpdHlQb2xpY3kvaW5qZWN0ZWQtaW5saW5lLXN0eWxlLWJsb2NrZWQuaHRtbApu
ZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwLi5hMGM4ZjgyYmE0MTgzYjg5MDQ2N2IzMzMzZjg3MzA4NzYwYTA5OWVlCi0tLSAv
ZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9zZWN1cml0eS9jb250ZW50U2Vj
dXJpdHlQb2xpY3kvaW5qZWN0ZWQtaW5saW5lLXN0eWxlLWJsb2NrZWQuaHRtbApAQCAtMCwwICsx
LDE5IEBACis8IURPQ1RZUEUgaHRtbD4KKzxodG1sPgorPGhlYWQ+Cis8bWV0YSBodHRwLWVxdWl2
PSJYLVdlYktpdC1DU1AiIGNvbnRlbnQ9InN0eWxlLXNyYyAnbm9uZSciPgorPHNjcmlwdCBzcmM9
InJlc291cmNlcy9kdW1wLWFzLXRleHQuanMiPjwvc2NyaXB0PgorPC9oZWFkPgorPGJvZHk+Cis8
ZGl2IGlkPSJ0ZXN0MSI+CisgIFBBU1MgMS8yCis8L2Rpdj4KKzxkaXYgaWQ9InRlc3QyIj4KKyAg
UEFTUyAyLzIKKzwvZGl2PgorPHNjcmlwdCBzcmM9InJlc291cmNlcy9pbmplY3Qtc3R5bGUuanMi
Pjwvc2NyaXB0PgorPHNjcmlwdD4KK2RvY3VtZW50LndyaXRlKGRvY3VtZW50LnN0eWxlU2hlZXRz
Lmxlbmd0aCk7Cis8L3NjcmlwdD4KKzwvYm9keT4KKzwvaHRtbD4KZGlmZiAtLWdpdCBhL0xheW91
dFRlc3RzL2h0dHAvdGVzdHMvc2VjdXJpdHkvY29udGVudFNlY3VyaXR5UG9saWN5L2lubGluZS1z
Y3JpcHQtYmxvY2tlZC1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3NlY3Vy
aXR5L2NvbnRlbnRTZWN1cml0eVBvbGljeS9pbmxpbmUtc2NyaXB0LWJsb2NrZWQtZXhwZWN0ZWQu
dHh0CmluZGV4IDBjZWFkNjEzZWRhNzU0ZTU5MjdjYzhkMWNkNzg1NTRjNjMyMTY1MTIuLjU4NGEx
M2IzZmJjMTA1MmY4NzA4ZWJhZTljNjNjOTUxZjNiZDM3YzUgMTAwNjQ0Ci0tLSBhL0xheW91dFRl
c3RzL2h0dHAvdGVzdHMvc2VjdXJpdHkvY29udGVudFNlY3VyaXR5UG9saWN5L2lubGluZS1zY3Jp
cHQtYmxvY2tlZC1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9zZWN1
cml0eS9jb250ZW50U2VjdXJpdHlQb2xpY3kvaW5saW5lLXNjcmlwdC1ibG9ja2VkLWV4cGVjdGVk
LnR4dApAQCAtMSw0ICsxLDQgQEAKLUNPTlNPTEUgTUVTU0FHRTogUmVmdXNlZCB0byBleGVjdXRl
IGlubGluZSBzY3JpcHQgYmVjYXVzZSBpdCB2aW9sYXRlcyB0aGUgZm9sbG93aW5nIENvbnRlbnQg
U2VjdXJpdHkgUG9saWN5IGRpcmVjdGl2ZTogInNjcmlwdC1zcmMgaHR0cDovLzEyNy4wLjAuMToq
Ii4KK0NPTlNPTEUgTUVTU0FHRTogbGluZSA5OiBSZWZ1c2VkIHRvIGV4ZWN1dGUgaW5saW5lIHNj
cmlwdCBiZWNhdXNlIGl0IHZpb2xhdGVzIHRoZSBmb2xsb3dpbmcgQ29udGVudCBTZWN1cml0eSBQ
b2xpY3kgZGlyZWN0aXZlOiAic2NyaXB0LXNyYyBodHRwOi8vMTI3LjAuMC4xOioiLgogCiBDT05T
T0xFIE1FU1NBR0U6IFJlZnVzZWQgdG8gZXhlY3V0ZSBpbmxpbmUgc2NyaXB0IGJlY2F1c2UgaXQg
dmlvbGF0ZXMgdGhlIGZvbGxvd2luZyBDb250ZW50IFNlY3VyaXR5IFBvbGljeSBkaXJlY3RpdmU6
ICJzY3JpcHQtc3JjIGh0dHA6Ly8xMjcuMC4wLjE6KiIuCiAKZGlmZiAtLWdpdCBhL0xheW91dFRl
c3RzL2h0dHAvdGVzdHMvc2VjdXJpdHkvY29udGVudFNlY3VyaXR5UG9saWN5L2lubGluZS1zY3Jp
cHQtYmxvY2tlZC1nb29meS1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3Nl
Y3VyaXR5L2NvbnRlbnRTZWN1cml0eVBvbGljeS9pbmxpbmUtc2NyaXB0LWJsb2NrZWQtZ29vZnkt
ZXhwZWN0ZWQudHh0CmluZGV4IDViYjA0NWM3Yzk1MzZhNDI0MGZkNmU2NzdkNmRiNmFkYjA0NjQx
Y2YuLjUzNThjMDU2NDI4NjQ0ZWM0YTUxZmMyZTA0YWNlZjExNTJlNGE3MDYgMTAwNjQ0Ci0tLSBh
L0xheW91dFRlc3RzL2h0dHAvdGVzdHMvc2VjdXJpdHkvY29udGVudFNlY3VyaXR5UG9saWN5L2lu
bGluZS1zY3JpcHQtYmxvY2tlZC1nb29meS1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMv
aHR0cC90ZXN0cy9zZWN1cml0eS9jb250ZW50U2VjdXJpdHlQb2xpY3kvaW5saW5lLXNjcmlwdC1i
bG9ja2VkLWdvb2Z5LWV4cGVjdGVkLnR4dApAQCAtMSw3ICsxLDcgQEAKIENPTlNPTEUgTUVTU0FH
RTogVW5yZWNvZ25pemVkIENvbnRlbnQtU2VjdXJpdHktUG9saWN5IGRpcmVjdGl2ZSAnb3B0aW9u
cycuCiAKLUNPTlNPTEUgTUVTU0FHRTogUmVmdXNlZCB0byBleGVjdXRlIGlubGluZSBzY3JpcHQg
YmVjYXVzZSBpdCB2aW9sYXRlcyB0aGUgZm9sbG93aW5nIENvbnRlbnQgU2VjdXJpdHkgUG9saWN5
IGRpcmVjdGl2ZTogInNjcmlwdC1zcmMgaHR0cDovLzEyNy4wLjAuMToqIi4KK0NPTlNPTEUgTUVT
U0FHRTogbGluZSA5OiBSZWZ1c2VkIHRvIGV4ZWN1dGUgaW5saW5lIHNjcmlwdCBiZWNhdXNlIGl0
IHZpb2xhdGVzIHRoZSBmb2xsb3dpbmcgQ29udGVudCBTZWN1cml0eSBQb2xpY3kgZGlyZWN0aXZl
OiAic2NyaXB0LXNyYyBodHRwOi8vMTI3LjAuMC4xOioiLgogCi1DT05TT0xFIE1FU1NBR0U6IFJl
ZnVzZWQgdG8gZXhlY3V0ZSBpbmxpbmUgZXZlbnQgaGFuZGxlciBiZWNhdXNlIGl0IHZpb2xhdGVz
IHRoZSBmb2xsb3dpbmcgQ29udGVudCBTZWN1cml0eSBQb2xpY3kgZGlyZWN0aXZlOiAic2NyaXB0
LXNyYyBodHRwOi8vMTI3LjAuMC4xOioiLgorQ09OU09MRSBNRVNTQUdFOiBsaW5lIDc6IFJlZnVz
ZWQgdG8gZXhlY3V0ZSBpbmxpbmUgZXZlbnQgaGFuZGxlciBiZWNhdXNlIGl0IHZpb2xhdGVzIHRo
ZSBmb2xsb3dpbmcgQ29udGVudCBTZWN1cml0eSBQb2xpY3kgZGlyZWN0aXZlOiAic2NyaXB0LXNy
YyBodHRwOi8vMTI3LjAuMC4xOioiLgogCiBUaGlzIHRlc3QgcGFzc2VzIGlmIGl0IGRvZXNuJ3Qg
YWxlcnQgZmFpbC4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvc2VjdXJpdHkv
Y29udGVudFNlY3VyaXR5UG9saWN5L2lubGluZS1zY3JpcHQtYmxvY2tlZC1qYXZhc2NyaXB0LXVy
bC1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3NlY3VyaXR5L2NvbnRlbnRT
ZWN1cml0eVBvbGljeS9pbmxpbmUtc2NyaXB0LWJsb2NrZWQtamF2YXNjcmlwdC11cmwtZXhwZWN0
ZWQudHh0CmluZGV4IGVkMDYyNDQ2NzI4NWU4MTBlYTY2NDgyY2NkZjQ5YWZiNDQwMGYxMzUuLjk1
NDUwMWNkY2RkNzNhNzliYTQyYWZhZTYwZDBlZWJiZmI3ZmYxM2YgMTAwNjQ0Ci0tLSBhL0xheW91
dFRlc3RzL2h0dHAvdGVzdHMvc2VjdXJpdHkvY29udGVudFNlY3VyaXR5UG9saWN5L2lubGluZS1z
Y3JpcHQtYmxvY2tlZC1qYXZhc2NyaXB0LXVybC1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVz
dHMvaHR0cC90ZXN0cy9zZWN1cml0eS9jb250ZW50U2VjdXJpdHlQb2xpY3kvaW5saW5lLXNjcmlw
dC1ibG9ja2VkLWphdmFzY3JpcHQtdXJsLWV4cGVjdGVkLnR4dApAQCAtNCw2ICs0LDYgQEAgQ09O
U09MRSBNRVNTQUdFOiBVbnJlY29nbml6ZWQgQ29udGVudC1TZWN1cml0eS1Qb2xpY3kgZGlyZWN0
aXZlICdvcHRpb25zJy4KIAogQ09OU09MRSBNRVNTQUdFOiBVbnJlY29nbml6ZWQgQ29udGVudC1T
ZWN1cml0eS1Qb2xpY3kgZGlyZWN0aXZlICdvcHRpb25zJy4KIAotQ09OU09MRSBNRVNTQUdFOiBS
ZWZ1c2VkIHRvIGV4ZWN1dGUgSmF2YVNjcmlwdCBVUkwgYmVjYXVzZSBpdCB2aW9sYXRlcyB0aGUg
Zm9sbG93aW5nIENvbnRlbnQgU2VjdXJpdHkgUG9saWN5IGRpcmVjdGl2ZTogInNjcmlwdC1zcmMg
aHR0cDovLzEyNy4wLjAuMToqIi4KK0NPTlNPTEUgTUVTU0FHRTogbGluZSAxOiBSZWZ1c2VkIHRv
IGV4ZWN1dGUgSmF2YVNjcmlwdCBVUkwgYmVjYXVzZSBpdCB2aW9sYXRlcyB0aGUgZm9sbG93aW5n
IENvbnRlbnQgU2VjdXJpdHkgUG9saWN5IGRpcmVjdGl2ZTogInNjcmlwdC1zcmMgaHR0cDovLzEy
Ny4wLjAuMToqIi4KIAogVGhpcyB0ZXN0IHBhc3NlcyBpZiBpdCBkb2Vzbid0IGFsZXJ0IGZhaWwu
IApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9zZWN1cml0eS9jb250ZW50U2Vj
dXJpdHlQb2xpY3kvaW5saW5lLXN0eWxlLWF0dHJpYnV0ZS1ibG9ja2VkLWV4cGVjdGVkLnR4dCBi
L0xheW91dFRlc3RzL2h0dHAvdGVzdHMvc2VjdXJpdHkvY29udGVudFNlY3VyaXR5UG9saWN5L2lu
bGluZS1zdHlsZS1hdHRyaWJ1dGUtYmxvY2tlZC1leHBlY3RlZC50eHQKaW5kZXggNzMyNTQ2MjUx
MGE1YjY3OWIxMGRmOTUwMzhiZTJiNTg2NzkxOThmMS4uZTdhNjg4MzE2ZDNkY2FiZTMzZTgxY2Mz
ZGYzNjM1ZGRlNTE4MTNlZSAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9zZWN1
cml0eS9jb250ZW50U2VjdXJpdHlQb2xpY3kvaW5saW5lLXN0eWxlLWF0dHJpYnV0ZS1ibG9ja2Vk
LWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3NlY3VyaXR5L2NvbnRl
bnRTZWN1cml0eVBvbGljeS9pbmxpbmUtc3R5bGUtYXR0cmlidXRlLWJsb2NrZWQtZXhwZWN0ZWQu
dHh0CkBAIC0xLDMgKzEsMyBAQAotQ09OU09MRSBNRVNTQUdFOiBSZWZ1c2VkIHRvIGFwcGx5IGlu
bGluZSBzdHlsZSBiZWNhdXNlIGl0IHZpb2xhdGVzIHRoZSBmb2xsb3dpbmcgQ29udGVudCBTZWN1
cml0eSBQb2xpY3kgZGlyZWN0aXZlOiAic3R5bGUtc3JjICdub25lJyIuCitDT05TT0xFIE1FU1NB
R0U6IGxpbmUgMTA6IFJlZnVzZWQgdG8gYXBwbHkgaW5saW5lIHN0eWxlIGJlY2F1c2UgaXQgdmlv
bGF0ZXMgdGhlIGZvbGxvd2luZyBDb250ZW50IFNlY3VyaXR5IFBvbGljeSBkaXJlY3RpdmU6ICJz
dHlsZS1zcmMgJ25vbmUnIi4KIAogUEFTUwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaHR0cC90
ZXN0cy9zZWN1cml0eS9jb250ZW50U2VjdXJpdHlQb2xpY3kvaW5saW5lLXN0eWxlLWJsb2NrZWQt
ZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9zZWN1cml0eS9jb250ZW50U2Vj
dXJpdHlQb2xpY3kvaW5saW5lLXN0eWxlLWJsb2NrZWQtZXhwZWN0ZWQudHh0CmluZGV4IDczMjU0
NjI1MTBhNWI2NzliMTBkZjk1MDM4YmUyYjU4Njc5MTk4ZjEuLjk2MzBkN2ExN2JjNzQxM2Q2ZTNl
MjhiYWViOGMxNjQ4YjQwN2VmZWIgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2h0dHAvdGVzdHMv
c2VjdXJpdHkvY29udGVudFNlY3VyaXR5UG9saWN5L2lubGluZS1zdHlsZS1ibG9ja2VkLWV4cGVj
dGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3NlY3VyaXR5L2NvbnRlbnRTZWN1
cml0eVBvbGljeS9pbmxpbmUtc3R5bGUtYmxvY2tlZC1leHBlY3RlZC50eHQKQEAgLTEsMyArMSwz
IEBACi1DT05TT0xFIE1FU1NBR0U6IFJlZnVzZWQgdG8gYXBwbHkgaW5saW5lIHN0eWxlIGJlY2F1
c2UgaXQgdmlvbGF0ZXMgdGhlIGZvbGxvd2luZyBDb250ZW50IFNlY3VyaXR5IFBvbGljeSBkaXJl
Y3RpdmU6ICJzdHlsZS1zcmMgJ25vbmUnIi4KK0NPTlNPTEUgTUVTU0FHRTogbGluZSA1OiBSZWZ1
c2VkIHRvIGFwcGx5IGlubGluZSBzdHlsZSBiZWNhdXNlIGl0IHZpb2xhdGVzIHRoZSBmb2xsb3dp
bmcgQ29udGVudCBTZWN1cml0eSBQb2xpY3kgZGlyZWN0aXZlOiAic3R5bGUtc3JjICdub25lJyIu
CiAKIFBBU1MKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvc2VjdXJpdHkvY29u
dGVudFNlY3VyaXR5UG9saWN5L2phdmFzY3JpcHQtdXJsLWJsb2NrZWQtZXhwZWN0ZWQudHh0IGIv
TGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9zZWN1cml0eS9jb250ZW50U2VjdXJpdHlQb2xpY3kvamF2
YXNjcmlwdC11cmwtYmxvY2tlZC1leHBlY3RlZC50eHQKaW5kZXggOGUyZGMzMzMyMTczNTJmNDg1
NDQ5NDZmZTE0MmQ1OTBjOGE5N2FlMy4uMWNhOTI2MmJkNTMyMWVhNWZjZjU5N2MwN2UxYzMxOTA4
ODlkYzJkOSAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9zZWN1cml0eS9jb250
ZW50U2VjdXJpdHlQb2xpY3kvamF2YXNjcmlwdC11cmwtYmxvY2tlZC1leHBlY3RlZC50eHQKKysr
IGIvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9zZWN1cml0eS9jb250ZW50U2VjdXJpdHlQb2xpY3kv
amF2YXNjcmlwdC11cmwtYmxvY2tlZC1leHBlY3RlZC50eHQKQEAgLTQsNyArNCw3IEBAIENPTlNP
TEUgTUVTU0FHRTogVW5yZWNvZ25pemVkIENvbnRlbnQtU2VjdXJpdHktUG9saWN5IGRpcmVjdGl2
ZSAnYWxsb3cnLgogCiBDT05TT0xFIE1FU1NBR0U6IFVucmVjb2duaXplZCBDb250ZW50LVNlY3Vy
aXR5LVBvbGljeSBkaXJlY3RpdmUgJ2FsbG93Jy4KIAotQ09OU09MRSBNRVNTQUdFOiBSZWZ1c2Vk
IHRvIGV4ZWN1dGUgSmF2YVNjcmlwdCBVUkwgYmVjYXVzZSBpdCB2aW9sYXRlcyB0aGUgZm9sbG93
aW5nIENvbnRlbnQgU2VjdXJpdHkgUG9saWN5IGRpcmVjdGl2ZTogInNjcmlwdC1zcmMgJ25vbmUn
Ii4KK0NPTlNPTEUgTUVTU0FHRTogbGluZSAxOiBSZWZ1c2VkIHRvIGV4ZWN1dGUgSmF2YVNjcmlw
dCBVUkwgYmVjYXVzZSBpdCB2aW9sYXRlcyB0aGUgZm9sbG93aW5nIENvbnRlbnQgU2VjdXJpdHkg
UG9saWN5IGRpcmVjdGl2ZTogInNjcmlwdC1zcmMgJ25vbmUnIi4KIAogQ09OU09MRSBNRVNTQUdF
OiBVbnJlY29nbml6ZWQgQ29udGVudC1TZWN1cml0eS1Qb2xpY3kgZGlyZWN0aXZlICdhbGxvdycu
CiAKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvc2VjdXJpdHkvY29udGVudFNl
Y3VyaXR5UG9saWN5L3JlcG9ydC1hbmQtZW5mb3JjZS1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0
cy9odHRwL3Rlc3RzL3NlY3VyaXR5L2NvbnRlbnRTZWN1cml0eVBvbGljeS9yZXBvcnQtYW5kLWVu
Zm9yY2UtZXhwZWN0ZWQudHh0CmluZGV4IDJkM2IyYWJhNmZkY2FlYzhmODI0MzEyYzE0N2JmNzVi
M2U2ZTY3YTguLjlhZWZhNGNmOTliNjNkMGExNTVhZDkzOGM2Zjg1YTZmYzlkNTE3OWEgMTAwNjQ0
Ci0tLSBhL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvc2VjdXJpdHkvY29udGVudFNlY3VyaXR5UG9s
aWN5L3JlcG9ydC1hbmQtZW5mb3JjZS1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvaHR0
cC90ZXN0cy9zZWN1cml0eS9jb250ZW50U2VjdXJpdHlQb2xpY3kvcmVwb3J0LWFuZC1lbmZvcmNl
LWV4cGVjdGVkLnR4dApAQCAtMSw0ICsxLDQgQEAKLUNPTlNPTEUgTUVTU0FHRTogW1JlcG9ydCBP
bmx5XSBSZWZ1c2VkIHRvIGV4ZWN1dGUgaW5saW5lIHNjcmlwdCBiZWNhdXNlIGl0IHZpb2xhdGVz
IHRoZSBmb2xsb3dpbmcgQ29udGVudCBTZWN1cml0eSBQb2xpY3kgZGlyZWN0aXZlOiAic2NyaXB0
LXNyYyAnc2VsZiciLgorQ09OU09MRSBNRVNTQUdFOiBsaW5lIDM6IFtSZXBvcnQgT25seV0gUmVm
dXNlZCB0byBleGVjdXRlIGlubGluZSBzY3JpcHQgYmVjYXVzZSBpdCB2aW9sYXRlcyB0aGUgZm9s
bG93aW5nIENvbnRlbnQgU2VjdXJpdHkgUG9saWN5IGRpcmVjdGl2ZTogInNjcmlwdC1zcmMgJ3Nl
bGYnIi4KIAogQUxFUlQ6IFBBU1MKIENPTlNPTEUgTUVTU0FHRTogUmVmdXNlZCB0byBsb2FkIHRo
ZSBpbWFnZSAnaHR0cDovLzEyNy4wLjAuMTo4MDAwL3NlY3VyaXR5L3Jlc291cmNlcy9hYmUucG5n
JyBiZWNhdXNlIGl0IHZpb2xhdGVzIHRoZSBmb2xsb3dpbmcgQ29udGVudCBTZWN1cml0eSBQb2xp
Y3kgZGlyZWN0aXZlOiAiaW1nLXNyYyAnbm9uZSciLgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMv
aHR0cC90ZXN0cy9zZWN1cml0eS9jb250ZW50U2VjdXJpdHlQb2xpY3kvcmVwb3J0LW9ubHktZXhw
ZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9zZWN1cml0eS9jb250ZW50U2VjdXJp
dHlQb2xpY3kvcmVwb3J0LW9ubHktZXhwZWN0ZWQudHh0CmluZGV4IDc0ZGM1ZDYwZjg4ZjkxNzJj
MmI3NTA3OTE1YzU3ZWJlMDMxYjczZDIuLmExZWRmM2FlYTFhNzM4NTA4Y2YyMWJkZmMwODNhOWEw
MjE4NTk3NTYgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvc2VjdXJpdHkvY29u
dGVudFNlY3VyaXR5UG9saWN5L3JlcG9ydC1vbmx5LWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRU
ZXN0cy9odHRwL3Rlc3RzL3NlY3VyaXR5L2NvbnRlbnRTZWN1cml0eVBvbGljeS9yZXBvcnQtb25s
eS1leHBlY3RlZC50eHQKQEAgLTEsNCArMSw0IEBACi1DT05TT0xFIE1FU1NBR0U6IFtSZXBvcnQg
T25seV0gUmVmdXNlZCB0byBleGVjdXRlIGlubGluZSBzY3JpcHQgYmVjYXVzZSBpdCB2aW9sYXRl
cyB0aGUgZm9sbG93aW5nIENvbnRlbnQgU2VjdXJpdHkgUG9saWN5IGRpcmVjdGl2ZTogInNjcmlw
dC1zcmMgJ3NlbGYnIi4KK0NPTlNPTEUgTUVTU0FHRTogbGluZSAyOiBbUmVwb3J0IE9ubHldIFJl
ZnVzZWQgdG8gZXhlY3V0ZSBpbmxpbmUgc2NyaXB0IGJlY2F1c2UgaXQgdmlvbGF0ZXMgdGhlIGZv
bGxvd2luZyBDb250ZW50IFNlY3VyaXR5IFBvbGljeSBkaXJlY3RpdmU6ICJzY3JpcHQtc3JjICdz
ZWxmJyIuCiAKIEFMRVJUOiBQQVNTCiBDU1AgcmVwb3J0IHJlY2VpdmVkOgpkaWZmIC0tZ2l0IGEv
TGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9zZWN1cml0eS9jb250ZW50U2VjdXJpdHlQb2xpY3kvcmVw
b3J0LW9ubHktZnJvbS1oZWFkZXItZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaHR0cC90ZXN0
cy9zZWN1cml0eS9jb250ZW50U2VjdXJpdHlQb2xpY3kvcmVwb3J0LW9ubHktZnJvbS1oZWFkZXIt
ZXhwZWN0ZWQudHh0CmluZGV4IGFjZTE2NDY4NzVhNjI3YzBjOWRmM2YyYTBlZWJhYTU5OTM3Y2Yz
YjAuLmNlYzJjMjhlNzdlYzhjZjljNzI4YzFjNGZlZTgwNWNkMzM0YWVjM2QgMTAwNjQ0Ci0tLSBh
L0xheW91dFRlc3RzL2h0dHAvdGVzdHMvc2VjdXJpdHkvY29udGVudFNlY3VyaXR5UG9saWN5L3Jl
cG9ydC1vbmx5LWZyb20taGVhZGVyLWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9odHRw
L3Rlc3RzL3NlY3VyaXR5L2NvbnRlbnRTZWN1cml0eVBvbGljeS9yZXBvcnQtb25seS1mcm9tLWhl
YWRlci1leHBlY3RlZC50eHQKQEAgLTEsNCArMSw0IEBACi1DT05TT0xFIE1FU1NBR0U6IFtSZXBv
cnQgT25seV0gUmVmdXNlZCB0byBleGVjdXRlIGlubGluZSBzY3JpcHQgYmVjYXVzZSBpdCB2aW9s
YXRlcyB0aGUgZm9sbG93aW5nIENvbnRlbnQgU2VjdXJpdHkgUG9saWN5IGRpcmVjdGl2ZTogInNj
cmlwdC1zcmMgJ3NlbGYnIi4KK0NPTlNPTEUgTUVTU0FHRTogbGluZSAxOiBbUmVwb3J0IE9ubHld
IFJlZnVzZWQgdG8gZXhlY3V0ZSBpbmxpbmUgc2NyaXB0IGJlY2F1c2UgaXQgdmlvbGF0ZXMgdGhl
IGZvbGxvd2luZyBDb250ZW50IFNlY3VyaXR5IFBvbGljeSBkaXJlY3RpdmU6ICJzY3JpcHQtc3Jj
ICdzZWxmJyIuCiAKIEFMRVJUOiBQQVNTCiBDU1AgcmVwb3J0IHJlY2VpdmVkOgpkaWZmIC0tZ2l0
IGEvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9zZWN1cml0eS9jb250ZW50U2VjdXJpdHlQb2xpY3kv
cmVwb3J0LXVyaS1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3NlY3VyaXR5
L2NvbnRlbnRTZWN1cml0eVBvbGljeS9yZXBvcnQtdXJpLWV4cGVjdGVkLnR4dAppbmRleCBiODA1
MGZmMjAzMDE3ZmRlOGEyYmNlZjBjNGQ3YWQxMDAzNDE2YmJkLi41NmE2ZWY2MjMxNWQxZWFlNWFi
ZDBkOWU4MDE0MzQzOThjYWQ4MDBmIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9odHRwL3Rlc3Rz
L3NlY3VyaXR5L2NvbnRlbnRTZWN1cml0eVBvbGljeS9yZXBvcnQtdXJpLWV4cGVjdGVkLnR4dAor
KysgYi9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3NlY3VyaXR5L2NvbnRlbnRTZWN1cml0eVBvbGlj
eS9yZXBvcnQtdXJpLWV4cGVjdGVkLnR4dApAQCAtMSw0ICsxLDQgQEAKLUNPTlNPTEUgTUVTU0FH
RTogUmVmdXNlZCB0byBleGVjdXRlIGlubGluZSBzY3JpcHQgYmVjYXVzZSBpdCB2aW9sYXRlcyB0
aGUgZm9sbG93aW5nIENvbnRlbnQgU2VjdXJpdHkgUG9saWN5IGRpcmVjdGl2ZTogInNjcmlwdC1z
cmMgJ3NlbGYnIi4KK0NPTlNPTEUgTUVTU0FHRTogbGluZSAyOiBSZWZ1c2VkIHRvIGV4ZWN1dGUg
aW5saW5lIHNjcmlwdCBiZWNhdXNlIGl0IHZpb2xhdGVzIHRoZSBmb2xsb3dpbmcgQ29udGVudCBT
ZWN1cml0eSBQb2xpY3kgZGlyZWN0aXZlOiAic2NyaXB0LXNyYyAnc2VsZiciLgogCiBDU1AgcmVw
b3J0IHJlY2VpdmVkOgogQ09OVEVOVF9UWVBFOiBhcHBsaWNhdGlvbi9qc29uCmRpZmYgLS1naXQg
YS9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3NlY3VyaXR5L2NvbnRlbnRTZWN1cml0eVBvbGljeS9y
ZXBvcnQtdXJpLWZyb20tY2hpbGQtZnJhbWUtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaHR0
cC90ZXN0cy9zZWN1cml0eS9jb250ZW50U2VjdXJpdHlQb2xpY3kvcmVwb3J0LXVyaS1mcm9tLWNo
aWxkLWZyYW1lLWV4cGVjdGVkLnR4dAppbmRleCAyNWRlOGUxOTc1NGEyOWFjOWZjZTIwNDk2MzRk
N2FmMmZkMTU3OWY3Li44NDMwYzMwOTgxNWJiMTI0YjcwYjYzODcwZTQ1YzVjYjBjNGM0MGMyIDEw
MDY0NAotLS0gYS9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3NlY3VyaXR5L2NvbnRlbnRTZWN1cml0
eVBvbGljeS9yZXBvcnQtdXJpLWZyb20tY2hpbGQtZnJhbWUtZXhwZWN0ZWQudHh0CisrKyBiL0xh
eW91dFRlc3RzL2h0dHAvdGVzdHMvc2VjdXJpdHkvY29udGVudFNlY3VyaXR5UG9saWN5L3JlcG9y
dC11cmktZnJvbS1jaGlsZC1mcmFtZS1leHBlY3RlZC50eHQKQEAgLTEsNCArMSw0IEBACi1DT05T
T0xFIE1FU1NBR0U6IFJlZnVzZWQgdG8gZXhlY3V0ZSBpbmxpbmUgc2NyaXB0IGJlY2F1c2UgaXQg
dmlvbGF0ZXMgdGhlIGZvbGxvd2luZyBDb250ZW50IFNlY3VyaXR5IFBvbGljeSBkaXJlY3RpdmU6
ICJzY3JpcHQtc3JjICdzZWxmJyIuCitDT05TT0xFIE1FU1NBR0U6IGxpbmUgMjogUmVmdXNlZCB0
byBleGVjdXRlIGlubGluZSBzY3JpcHQgYmVjYXVzZSBpdCB2aW9sYXRlcyB0aGUgZm9sbG93aW5n
IENvbnRlbnQgU2VjdXJpdHkgUG9saWN5IGRpcmVjdGl2ZTogInNjcmlwdC1zcmMgJ3NlbGYnIi4K
IAogCiAKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvc2VjdXJpdHkvY29udGVu
dFNlY3VyaXR5UG9saWN5L3Jlc291cmNlcy9pbmplY3Qtc2NyaXB0LmpzIGIvTGF5b3V0VGVzdHMv
aHR0cC90ZXN0cy9zZWN1cml0eS9jb250ZW50U2VjdXJpdHlQb2xpY3kvcmVzb3VyY2VzL2luamVj
dC1zY3JpcHQuanMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uNzU2YmFmZmU5ZWU5ODRlNDU3NTlhMWMzOTU0OTk2ODhh
YWI4MmYxYgotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvc2VjdXJp
dHkvY29udGVudFNlY3VyaXR5UG9saWN5L3Jlc291cmNlcy9pbmplY3Qtc2NyaXB0LmpzCkBAIC0w
LDAgKzEsNSBAQAorZG9jdW1lbnQud3JpdGUoIjxzY3JpcHQ+YWxlcnQoJ1Bhc3MgMSBvZiAyJyk7
PC9zY3JpcHQ+Iik7CisKK3ZhciBzID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgnc2NyaXB0Jyk7
CitzLmlubmVyVGV4dCA9ICJhbGVydCgnUGFzcyAyIG9mIDInKTsiOworZG9jdW1lbnQuYm9keS5h
cHBlbmRDaGlsZChzKTsKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvc2VjdXJp
dHkvY29udGVudFNlY3VyaXR5UG9saWN5L3Jlc291cmNlcy9pbmplY3Qtc3R5bGUuanMgYi9MYXlv
dXRUZXN0cy9odHRwL3Rlc3RzL3NlY3VyaXR5L2NvbnRlbnRTZWN1cml0eVBvbGljeS9yZXNvdXJj
ZXMvaW5qZWN0LXN0eWxlLmpzCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjIxOWQ4ZjU1OWM1YTBmNjNkN2ZhNDhmNzJh
ZDQ2NjBlNWQ3NGMyOWUKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9odHRwL3Rlc3Rz
L3NlY3VyaXR5L2NvbnRlbnRTZWN1cml0eVBvbGljeS9yZXNvdXJjZXMvaW5qZWN0LXN0eWxlLmpz
CkBAIC0wLDAgKzEsNSBAQAorZG9jdW1lbnQud3JpdGUoIjxzdHlsZT4jdGVzdDEgeyBkaXNwbGF5
OiBub25lOyB9PC9zdHlsZT4iKTsKKwordmFyIHMgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCdz
dHlsZScpOworcy5pbm5lclRleHQgPSAiI3Rlc3QyIHsgZGlzcGxheTogbm9uZTsgfSI7Citkb2N1
bWVudC5ib2R5LmFwcGVuZENoaWxkKHMpOwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaHR0cC90
ZXN0cy9zZWN1cml0eS9jb250ZW50U2VjdXJpdHlQb2xpY3kvc2NyaXB0LXNyYy1ub25lLWlubGlu
ZS1ldmVudC1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3NlY3VyaXR5L2Nv
bnRlbnRTZWN1cml0eVBvbGljeS9zY3JpcHQtc3JjLW5vbmUtaW5saW5lLWV2ZW50LWV4cGVjdGVk
LnR4dAppbmRleCBkMzFiMWNlZmMwYmY3ZjgyODhhOTMxNzYxZDgwMjEyOWU2Mjk1MDJmLi5mZTFj
YzJmYzZkZTA5MmE4MWRkNDU4M2U1MGQwNzM0NjYzMDgzMzIzIDEwMDY0NAotLS0gYS9MYXlvdXRU
ZXN0cy9odHRwL3Rlc3RzL3NlY3VyaXR5L2NvbnRlbnRTZWN1cml0eVBvbGljeS9zY3JpcHQtc3Jj
LW5vbmUtaW5saW5lLWV2ZW50LWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9odHRwL3Rl
c3RzL3NlY3VyaXR5L2NvbnRlbnRTZWN1cml0eVBvbGljeS9zY3JpcHQtc3JjLW5vbmUtaW5saW5l
LWV2ZW50LWV4cGVjdGVkLnR4dApAQCAtMSw0ICsxLDQgQEAKLUNPTlNPTEUgTUVTU0FHRTogUmVm
dXNlZCB0byBleGVjdXRlIGlubGluZSBldmVudCBoYW5kbGVyIGJlY2F1c2UgaXQgdmlvbGF0ZXMg
dGhlIGZvbGxvd2luZyBDb250ZW50IFNlY3VyaXR5IFBvbGljeSBkaXJlY3RpdmU6ICJzY3JpcHQt
c3JjICdub25lJyIuCitDT05TT0xFIE1FU1NBR0U6IGxpbmUgMzogUmVmdXNlZCB0byBleGVjdXRl
IGlubGluZSBldmVudCBoYW5kbGVyIGJlY2F1c2UgaXQgdmlvbGF0ZXMgdGhlIGZvbGxvd2luZyBD
b250ZW50IFNlY3VyaXR5IFBvbGljeSBkaXJlY3RpdmU6ICJzY3JpcHQtc3JjICdub25lJyIuCiAK
ICAgCiAKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvc2VjdXJpdHkvY29udGVu
dFNlY3VyaXR5UG9saWN5L3NyY2RvYy1kb2VzbnQtYnlwYXNzLXNjcmlwdC1zcmMtZXhwZWN0ZWQu
dHh0IGIvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9zZWN1cml0eS9jb250ZW50U2VjdXJpdHlQb2xp
Y3kvc3JjZG9jLWRvZXNudC1ieXBhc3Mtc2NyaXB0LXNyYy1leHBlY3RlZC50eHQKaW5kZXggN2E1
ZmRlMzcwZWE2ZTA0YzZkNmU0OTQwZThkN2FkYjAwMGI2MzE2OS4uMWEyOTQ3OWQyYzJkNGJjMTUy
ZjUyN2YzYzMzMDMzYTExODk2ZTFjMSAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaHR0cC90ZXN0
cy9zZWN1cml0eS9jb250ZW50U2VjdXJpdHlQb2xpY3kvc3JjZG9jLWRvZXNudC1ieXBhc3Mtc2Ny
aXB0LXNyYy1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9zZWN1cml0
eS9jb250ZW50U2VjdXJpdHlQb2xpY3kvc3JjZG9jLWRvZXNudC1ieXBhc3Mtc2NyaXB0LXNyYy1l
eHBlY3RlZC50eHQKQEAgLTEsMyArMSwzIEBACi1DT05TT0xFIE1FU1NBR0U6IFJlZnVzZWQgdG8g
ZXhlY3V0ZSBpbmxpbmUgc2NyaXB0IGJlY2F1c2UgaXQgdmlvbGF0ZXMgdGhlIGZvbGxvd2luZyBD
b250ZW50IFNlY3VyaXR5IFBvbGljeSBkaXJlY3RpdmU6ICJzY3JpcHQtc3JjICdzZWxmJyIuCitD
T05TT0xFIE1FU1NBR0U6IGxpbmUgMTogUmVmdXNlZCB0byBleGVjdXRlIGlubGluZSBzY3JpcHQg
YmVjYXVzZSBpdCB2aW9sYXRlcyB0aGUgZm9sbG93aW5nIENvbnRlbnQgU2VjdXJpdHkgUG9saWN5
IGRpcmVjdGl2ZTogInNjcmlwdC1zcmMgJ3NlbGYnIi4KIAogVGhpcyB0ZXN0IHBhc3NlcyBpZiBp
dCBkb2Vzbid0IGFsZXJ0IGZhaWwuIAo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>144051</attachid>
            <date>2012-05-25 05:58:26 -0700</date>
            <delta_ts>2012-06-07 10:55:21 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-86848-20120525145824.patch</filename>
            <type>text/plain</type>
            <size>51590</size>
            <attacher name="Mike West">mkwst</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTE4MzEyCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggYzM2YjAzNGE5MDI5YmQz
ZmMzNWE1NjBjZTFlODdlMmNiN2I5ZGI4YS4uZjZjY2Q1ZmRjNDhkZWZhNmU3MzUzYTU0ZTczNjZh
MTMxODdhZDUxYiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDY1IEBACisyMDEyLTA1LTI1ICBNaWtl
IFdlc3QgIDxta3dzdEBjaHJvbWl1bS5vcmc+CisKKyAgICAgICAgSW5saW5lIHNjcmlwdCBhbmQg
c3R5bGUgYmxvY2tlZCBieSBDb250ZW50IFNlY3VyaXR5IFBvbGljeSBzaG91bGQgcHJvdmlkZSBt
b3JlIGRldGFpbGVkIGNvbnNvbGUgZXJyb3JzLgorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0
Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9ODY4NDgKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkg
KE9PUFMhKS4KKworICAgICAgICBUaGlzIGNoYW5nZSBhZGRzIGEgVVJMIGFuZCBsaW5lIG51bWJl
ciBmb3IgY29udGV4dCB0byBlYWNoIGNhbGwgdG8KKyAgICAgICAgYENvbnRlbnRTZWN1cml0eVBv
bGljeTo6YWxsb3dJbmxpbmUqYCwgYW5kIHBpcGVzIGl0IHRocm91Z2ggdG8gdGhlCisgICAgICAg
IGNvbnNvbGUgbWVzc2FnZSBnZW5lcmF0aW9uIGluIGBDU1BEaXJlY3RpdmVMaXN0OjpyZXBvcnRW
aW9sYXRpb25gLgorCisgICAgICAgIExpbmUgbnVtYmVycyBhcmUgbm90IGFkZGVkIGZvciBpbmpl
Y3RlZCBzY3JpcHRzIChgZG9jdW1lbnQud3JpdGUoLi4uKWAsCisgICAgICAgIGBkb2N1bWVudC5i
b2R5LmFwcGVuZENoaWxkYCwgYW5kIGV0Yy4pLgorCisgICAgICAgIFRlc3RzOiBodHRwL3Rlc3Rz
L3NlY3VyaXR5L2NvbnRlbnRTZWN1cml0eVBvbGljeS9pbmplY3RlZC1pbmxpbmUtc2NyaXB0LWFs
bG93ZWQuaHRtbAorICAgICAgICAgICAgICAgaHR0cC90ZXN0cy9zZWN1cml0eS9jb250ZW50U2Vj
dXJpdHlQb2xpY3kvaW5qZWN0ZWQtaW5saW5lLXNjcmlwdC1ibG9ja2VkLmh0bWwKKyAgICAgICAg
ICAgICAgIGh0dHAvdGVzdHMvc2VjdXJpdHkvY29udGVudFNlY3VyaXR5UG9saWN5L2luamVjdGVk
LWlubGluZS1zdHlsZS1hbGxvd2VkLmh0bWwKKyAgICAgICAgICAgICAgIGh0dHAvdGVzdHMvc2Vj
dXJpdHkvY29udGVudFNlY3VyaXR5UG9saWN5L2luamVjdGVkLWlubGluZS1zdHlsZS1ibG9ja2Vk
Lmh0bWwKKworICAgICAgICAqIGJpbmRpbmdzL1NjcmlwdENvbnRyb2xsZXJCYXNlLmNwcDoKKyAg
ICAgICAgKFdlYkNvcmU6OlNjcmlwdENvbnRyb2xsZXI6OmV4ZWN1dGVJZkphdmFTY3JpcHRVUkwp
OgorICAgICAgICAqIGJpbmRpbmdzL2pzL0pTTGF6eUV2ZW50TGlzdGVuZXIuY3BwOgorICAgICAg
ICAoV2ViQ29yZTo6SlNMYXp5RXZlbnRMaXN0ZW5lcjo6aW5pdGlhbGl6ZUpTRnVuY3Rpb24pOgor
ICAgICAgICAqIGJpbmRpbmdzL3Y4L1Y4TGF6eUV2ZW50TGlzdGVuZXIuY3BwOgorICAgICAgICAo
V2ViQ29yZTo6VjhMYXp5RXZlbnRMaXN0ZW5lcjo6cHJlcGFyZUxpc3RlbmVyT2JqZWN0KToKKyAg
ICAgICAgKiBkb20vU2NyaXB0RWxlbWVudC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpTY3JpcHRF
bGVtZW50OjpTY3JpcHRFbGVtZW50KToKKyAgICAgICAgKFdlYkNvcmU6OlNjcmlwdEVsZW1lbnQ6
OmV4ZWN1dGVTY3JpcHQpOgorICAgICAgICAqIGRvbS9TY3JpcHRFbGVtZW50Lmg6CisgICAgICAg
IChTY3JpcHRFbGVtZW50KToKKyAgICAgICAgKiBkb20vU3R5bGVFbGVtZW50LmNwcDoKKyAgICAg
ICAgKFdlYkNvcmU6OlN0eWxlRWxlbWVudDo6U3R5bGVFbGVtZW50KToKKyAgICAgICAgKFdlYkNv
cmU6OlN0eWxlRWxlbWVudDo6Y3JlYXRlU2hlZXQpOgorICAgICAgICAqIGRvbS9TdHlsZUVsZW1l
bnQuaDoKKyAgICAgICAgKFN0eWxlRWxlbWVudCk6CisgICAgICAgICogZG9tL1N0eWxlZEVsZW1l
bnQuY3BwOgorICAgICAgICAoV2ViQ29yZTo6U3R5bGVkRWxlbWVudDo6U3R5bGVkRWxlbWVudCk6
CisgICAgICAgIChXZWJDb3JlKToKKyAgICAgICAgKFdlYkNvcmU6OlN0eWxlZEVsZW1lbnQ6OnN0
eWxlKToKKyAgICAgICAgKFdlYkNvcmU6OlN0eWxlZEVsZW1lbnQ6OnN0eWxlQXR0cmlidXRlQ2hh
bmdlZCk6CisgICAgICAgICogZG9tL1N0eWxlZEVsZW1lbnQuaDoKKyAgICAgICAgKFN0eWxlZEVs
ZW1lbnQpOgorICAgICAgICAqIHBhZ2UvQ29udGVudFNlY3VyaXR5UG9saWN5LmNwcDoKKyAgICAg
ICAgKENTUERpcmVjdGl2ZUxpc3QpOgorICAgICAgICAoV2ViQ29yZTo6Q1NQRGlyZWN0aXZlTGlz
dDo6cmVwb3J0VmlvbGF0aW9uKToKKyAgICAgICAgKFdlYkNvcmU6OkNTUERpcmVjdGl2ZUxpc3Q6
OmNoZWNrSW5saW5lQW5kUmVwb3J0VmlvbGF0aW9uKToKKyAgICAgICAgKFdlYkNvcmU6OkNTUERp
cmVjdGl2ZUxpc3Q6OmNoZWNrRXZhbEFuZFJlcG9ydFZpb2xhdGlvbik6CisgICAgICAgIChXZWJD
b3JlOjpDU1BEaXJlY3RpdmVMaXN0OjphbGxvd0phdmFTY3JpcHRVUkxzKToKKyAgICAgICAgKFdl
YkNvcmU6OkNTUERpcmVjdGl2ZUxpc3Q6OmFsbG93SW5saW5lRXZlbnRIYW5kbGVycyk6CisgICAg
ICAgIChXZWJDb3JlOjpDU1BEaXJlY3RpdmVMaXN0OjphbGxvd0lubGluZVNjcmlwdCk6CisgICAg
ICAgIChXZWJDb3JlOjpDU1BEaXJlY3RpdmVMaXN0OjphbGxvd0lubGluZVN0eWxlKToKKyAgICAg
ICAgKFdlYkNvcmU6OkNTUERpcmVjdGl2ZUxpc3Q6OmFsbG93RXZhbCk6CisgICAgICAgIChXZWJD
b3JlKToKKyAgICAgICAgKFdlYkNvcmU6OmlzQWxsb3dlZEJ5QWxsV2l0aENhbGxTdGFjayk6Cisg
ICAgICAgIChXZWJDb3JlOjppc0FsbG93ZWRCeUFsbFdpdGhDb250ZXh0KToKKyAgICAgICAgKFdl
YkNvcmU6OkNvbnRlbnRTZWN1cml0eVBvbGljeTo6YWxsb3dKYXZhU2NyaXB0VVJMcyk6CisgICAg
ICAgIChXZWJDb3JlOjpDb250ZW50U2VjdXJpdHlQb2xpY3k6OmFsbG93SW5saW5lRXZlbnRIYW5k
bGVycyk6CisgICAgICAgIChXZWJDb3JlOjpDb250ZW50U2VjdXJpdHlQb2xpY3k6OmFsbG93SW5s
aW5lU2NyaXB0KToKKyAgICAgICAgKFdlYkNvcmU6OkNvbnRlbnRTZWN1cml0eVBvbGljeTo6YWxs
b3dJbmxpbmVTdHlsZSk6CisgICAgICAgICogcGFnZS9Db250ZW50U2VjdXJpdHlQb2xpY3kuaDoK
KyAgICAgICAgKFdURik6CisKIDIwMTItMDUtMjMgIE5pY28gV2ViZXIgIDx0aGFraXNAY2hyb21p
dW0ub3JnPgogCiAgICAgICAgIFtjaHJvbWl1bS9tYWNdIFVuYnJlYWsgcG9wdXAgbWVudXMuCmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9TY3JpcHRDb250cm9sbGVyQmFzZS5j
cHAgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9TY3JpcHRDb250cm9sbGVyQmFzZS5jcHAKaW5k
ZXggODU1MTU4YWZjM2VmNzkwMmYyZTYyZWU5ZTk2ZjE1ZDI4OWM3OTBjMi4uOWIwMDZkMmMyMDZi
MGM0NGI2ODNlZGE0NzhiZjBkZjczMmQ1NWFjMyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUv
YmluZGluZ3MvU2NyaXB0Q29udHJvbGxlckJhc2UuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2Jp
bmRpbmdzL1NjcmlwdENvbnRyb2xsZXJCYXNlLmNwcApAQCAtMzIsNiArMzIsNyBAQAogI2luY2x1
ZGUgIlNlY3VyaXR5T3JpZ2luLmgiCiAjaW5jbHVkZSAiU2V0dGluZ3MuaCIKICNpbmNsdWRlICJV
c2VyR2VzdHVyZUluZGljYXRvci5oIgorI2luY2x1ZGUgPHd0Zi90ZXh0L1RleHRQb3NpdGlvbi5o
PgogCiBuYW1lc3BhY2UgV2ViQ29yZSB7CiAKQEAgLTc1LDcgKzc2LDcgQEAgYm9vbCBTY3JpcHRD
b250cm9sbGVyOjpleGVjdXRlSWZKYXZhU2NyaXB0VVJMKGNvbnN0IEtVUkwmIHVybCwgU2hvdWxk
UmVwbGFjZURvY3UKIAogICAgIGlmICghbV9mcmFtZS0+cGFnZSgpCiAgICAgICAgIHx8ICFtX2Zy
YW1lLT5wYWdlKCktPmphdmFTY3JpcHRVUkxzQXJlQWxsb3dlZCgpCi0gICAgICAgIHx8ICFtX2Zy
YW1lLT5kb2N1bWVudCgpLT5jb250ZW50U2VjdXJpdHlQb2xpY3koKS0+YWxsb3dKYXZhU2NyaXB0
VVJMcygpCisgICAgICAgIHx8ICFtX2ZyYW1lLT5kb2N1bWVudCgpLT5jb250ZW50U2VjdXJpdHlQ
b2xpY3koKS0+YWxsb3dKYXZhU2NyaXB0VVJMcyhtX2ZyYW1lLT5kb2N1bWVudCgpLT51cmwoKSwg
ZXZlbnRIYW5kbGVyUG9zaXRpb24oKS5tX2xpbmUpCiAgICAgICAgIHx8IG1fZnJhbWUtPmluVmll
d1NvdXJjZU1vZGUoKSkKICAgICAgICAgcmV0dXJuIHRydWU7CiAKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0pTTGF6eUV2ZW50TGlzdGVuZXIuY3BwIGIvU291cmNlL1dl
YkNvcmUvYmluZGluZ3MvanMvSlNMYXp5RXZlbnRMaXN0ZW5lci5jcHAKaW5kZXggZjExYmY5MDBj
MWQwZDUwZDFjN2FjNWM4YmZjNGJiM2QwNDFkYWFhMS4uNjRmOWNiOWMwNDk5YzlmYjM4MmVjMjNm
NTA1YWIyMmJhYzg5NDFiMSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMv
SlNMYXp5RXZlbnRMaXN0ZW5lci5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMv
SlNMYXp5RXZlbnRMaXN0ZW5lci5jcHAKQEAgLTgwLDcgKzgwLDcgQEAgSlNPYmplY3QqIEpTTGF6
eUV2ZW50TGlzdGVuZXI6OmluaXRpYWxpemVKU0Z1bmN0aW9uKFNjcmlwdEV4ZWN1dGlvbkNvbnRl
eHQqIGV4ZWMKICAgICBpZiAoIWRvY3VtZW50LT5mcmFtZSgpKQogICAgICAgICByZXR1cm4gMDsK
IAotICAgIGlmICghZG9jdW1lbnQtPmNvbnRlbnRTZWN1cml0eVBvbGljeSgpLT5hbGxvd0lubGlu
ZUV2ZW50SGFuZGxlcnMoKSkKKyAgICBpZiAoIWRvY3VtZW50LT5jb250ZW50U2VjdXJpdHlQb2xp
Y3koKS0+YWxsb3dJbmxpbmVFdmVudEhhbmRsZXJzKG1fc291cmNlVVJMLCBtX3Bvc2l0aW9uLm1f
bGluZSkpCiAgICAgICAgIHJldHVybiAwOwogCiAgICAgU2NyaXB0Q29udHJvbGxlciogc2NyaXB0
ID0gZG9jdW1lbnQtPmZyYW1lKCktPnNjcmlwdCgpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNv
cmUvYmluZGluZ3MvdjgvVjhMYXp5RXZlbnRMaXN0ZW5lci5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9i
aW5kaW5ncy92OC9WOExhenlFdmVudExpc3RlbmVyLmNwcAppbmRleCA3MzMyMzE4ZDI2NGQ5NDMw
YTNkZGQ3M2ViOTU5YmRkMjJmMGUyZDllLi5lZjQ1OTJlMWEwMDU1MTdiMjRkNWZmMDVhM2YzNzJk
MDBmNzE0ZGUwIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy92OC9WOExhenlF
dmVudExpc3RlbmVyLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy92OC9WOExhenlF
dmVudExpc3RlbmVyLmNwcApAQCAtMTA1LDcgKzEwNSw3IEBAIHZvaWQgVjhMYXp5RXZlbnRMaXN0
ZW5lcjo6cHJlcGFyZUxpc3RlbmVyT2JqZWN0KFNjcmlwdEV4ZWN1dGlvbkNvbnRleHQqIGNvbnRl
eHQpCiAgICAgaWYgKGhhc0V4aXN0aW5nTGlzdGVuZXJPYmplY3QoKSkKICAgICAgICAgcmV0dXJu
OwogCi0gICAgaWYgKGNvbnRleHQtPmlzRG9jdW1lbnQoKSAmJiAhc3RhdGljX2Nhc3Q8RG9jdW1l
bnQqPihjb250ZXh0KS0+Y29udGVudFNlY3VyaXR5UG9saWN5KCktPmFsbG93SW5saW5lRXZlbnRI
YW5kbGVycygpKQorICAgIGlmIChjb250ZXh0LT5pc0RvY3VtZW50KCkgJiYgIXN0YXRpY19jYXN0
PERvY3VtZW50Kj4oY29udGV4dCktPmNvbnRlbnRTZWN1cml0eVBvbGljeSgpLT5hbGxvd0lubGlu
ZUV2ZW50SGFuZGxlcnMobV9zb3VyY2VVUkwsIG1fcG9zaXRpb24ubV9saW5lKSkKICAgICAgICAg
cmV0dXJuOwogCiAgICAgdjg6OkhhbmRsZVNjb3BlIGhhbmRsZVNjb3BlOwpkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYkNvcmUvZG9tL1NjcmlwdEVsZW1lbnQuY3BwIGIvU291cmNlL1dlYkNvcmUvZG9t
L1NjcmlwdEVsZW1lbnQuY3BwCmluZGV4IGFlZmRkZGI0OThmM2I1OTdhMDUyMGI3Zjc2YThmMDMw
ZDU3ZTE1ZjUuLjc0NmU2YzM3YjI0MzA2ZTg2NzYwZTRkNGEyZDBiYTY5YjljOWQ0ODcgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2RvbS9TY3JpcHRFbGVtZW50LmNwcAorKysgYi9Tb3VyY2Uv
V2ViQ29yZS9kb20vU2NyaXB0RWxlbWVudC5jcHAKQEAgLTQxLDEyICs0MSwxNCBAQAogI2luY2x1
ZGUgIlNjcmlwdFJ1bm5lci5oIgogI2luY2x1ZGUgIlNjcmlwdFNvdXJjZUNvZGUuaCIKICNpbmNs
dWRlICJTY3JpcHRWYWx1ZS5oIgorI2luY2x1ZGUgIlNjcmlwdGFibGVEb2N1bWVudFBhcnNlci5o
IgogI2luY2x1ZGUgIlNlY3VyaXR5T3JpZ2luLmgiCiAjaW5jbHVkZSAiU2V0dGluZ3MuaCIKICNp
bmNsdWRlICJUZXh0LmgiCiAjaW5jbHVkZSA8d3RmL1N0ZExpYkV4dHJhcy5oPgogI2luY2x1ZGUg
PHd0Zi90ZXh0L1N0cmluZ0J1aWxkZXIuaD4KICNpbmNsdWRlIDx3dGYvdGV4dC9TdHJpbmdIYXNo
Lmg+CisjaW5jbHVkZSA8d3RmL3RleHQvVGV4dFBvc2l0aW9uLmg+CiAKICNpZiBFTkFCTEUoU1ZH
KQogI2luY2x1ZGUgIlNWR05hbWVzLmgiCkBAIC01OCw2ICs2MCw3IEBAIG5hbWVzcGFjZSBXZWJD
b3JlIHsKIFNjcmlwdEVsZW1lbnQ6OlNjcmlwdEVsZW1lbnQoRWxlbWVudCogZWxlbWVudCwgYm9v
bCBwYXJzZXJJbnNlcnRlZCwgYm9vbCBhbHJlYWR5U3RhcnRlZCkKICAgICA6IG1fZWxlbWVudChl
bGVtZW50KQogICAgICwgbV9jYWNoZWRTY3JpcHQoMCkKKyAgICAsIG1fc3RhcnRMaW5lTnVtYmVy
KFdURjo6T3JkaW5hbE51bWJlcjo6YmVmb3JlRmlyc3QoKSkKICAgICAsIG1fcGFyc2VySW5zZXJ0
ZWQocGFyc2VySW5zZXJ0ZWQpCiAgICAgLCBtX2lzRXh0ZXJuYWxTY3JpcHQoZmFsc2UpCiAgICAg
LCBtX2FscmVhZHlTdGFydGVkKGFscmVhZHlTdGFydGVkKQpAQCAtNzAsNiArNzMsOCBAQCBTY3Jp
cHRFbGVtZW50OjpTY3JpcHRFbGVtZW50KEVsZW1lbnQqIGVsZW1lbnQsIGJvb2wgcGFyc2VySW5z
ZXJ0ZWQsIGJvb2wgYWxyZWFkeQogICAgICwgbV9yZXF1ZXN0VXNlc0FjY2Vzc0NvbnRyb2woZmFs
c2UpCiB7CiAgICAgQVNTRVJUKG1fZWxlbWVudCk7CisgICAgaWYgKHBhcnNlckluc2VydGVkICYm
IG1fZWxlbWVudC0+ZG9jdW1lbnQoKS0+c2NyaXB0YWJsZURvY3VtZW50UGFyc2VyKCkgJiYgIW1f
ZWxlbWVudC0+ZG9jdW1lbnQoKS0+aXNJbkRvY3VtZW50V3JpdGUoKSkKKyAgICAgICAgbV9zdGFy
dExpbmVOdW1iZXIgPSBtX2VsZW1lbnQtPmRvY3VtZW50KCktPnNjcmlwdGFibGVEb2N1bWVudFBh
cnNlcigpLT5saW5lTnVtYmVyKCk7CiB9CiAKIFNjcmlwdEVsZW1lbnQ6On5TY3JpcHRFbGVtZW50
KCkKQEAgLTI3Niw3ICsyODEsNyBAQCB2b2lkIFNjcmlwdEVsZW1lbnQ6OmV4ZWN1dGVTY3JpcHQo
Y29uc3QgU2NyaXB0U291cmNlQ29kZSYgc291cmNlQ29kZSkKICAgICBpZiAoc291cmNlQ29kZS5p
c0VtcHR5KCkpCiAgICAgICAgIHJldHVybjsKIAotICAgIGlmICghbV9pc0V4dGVybmFsU2NyaXB0
ICYmICFtX2VsZW1lbnQtPmRvY3VtZW50KCktPmNvbnRlbnRTZWN1cml0eVBvbGljeSgpLT5hbGxv
d0lubGluZVNjcmlwdCgpKQorICAgIGlmICghbV9pc0V4dGVybmFsU2NyaXB0ICYmICFtX2VsZW1l
bnQtPmRvY3VtZW50KCktPmNvbnRlbnRTZWN1cml0eVBvbGljeSgpLT5hbGxvd0lubGluZVNjcmlw
dChtX2VsZW1lbnQtPmRvY3VtZW50KCktPnVybCgpLCBtX3N0YXJ0TGluZU51bWJlcikpCiAgICAg
ICAgIHJldHVybjsKIAogICAgIFJlZlB0cjxEb2N1bWVudD4gZG9jdW1lbnQgPSBtX2VsZW1lbnQt
PmRvY3VtZW50KCk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9kb20vU2NyaXB0RWxlbWVu
dC5oIGIvU291cmNlL1dlYkNvcmUvZG9tL1NjcmlwdEVsZW1lbnQuaAppbmRleCA2YmVjNTZkN2Vj
ZDcyZDM4N2RlMGJlZGFmMjk3ODU2YTc5MDdmYWY4Li41Zjk4ZDc1ODMzZmQ4Y2U4MjY5ZDJhMzE0
YmJjZGMxOTRlMTI2ODY4IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9kb20vU2NyaXB0RWxl
bWVudC5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2RvbS9TY3JpcHRFbGVtZW50LmgKQEAgLTkzLDYg
KzkzLDcgQEAgcHJpdmF0ZToKIAogICAgIEVsZW1lbnQqIG1fZWxlbWVudDsKICAgICBDYWNoZWRS
ZXNvdXJjZUhhbmRsZTxDYWNoZWRTY3JpcHQ+IG1fY2FjaGVkU2NyaXB0OworICAgIFdURjo6T3Jk
aW5hbE51bWJlciBtX3N0YXJ0TGluZU51bWJlcjsKICAgICBib29sIG1fcGFyc2VySW5zZXJ0ZWQg
OiAxOwogICAgIGJvb2wgbV9pc0V4dGVybmFsU2NyaXB0IDogMTsKICAgICBib29sIG1fYWxyZWFk
eVN0YXJ0ZWQgOiAxOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvZG9tL1N0eWxlRWxlbWVu
dC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9kb20vU3R5bGVFbGVtZW50LmNwcAppbmRleCAxZDBkMmU0
YmIzZTJkMTU5ZDg3MjIyOTc2MGQwYmI4NzY0MTZmNmNjLi45OTBmODI0NGE4YTBkOTM5MWU2ZjYz
NGFmYjY0YjdjZmE5NDdhNmJkIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9kb20vU3R5bGVF
bGVtZW50LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9kb20vU3R5bGVFbGVtZW50LmNwcApAQCAt
MjksNiArMjksNyBAQAogI2luY2x1ZGUgIk1lZGlhUXVlcnlFdmFsdWF0b3IuaCIKICNpbmNsdWRl
ICJTY3JpcHRhYmxlRG9jdW1lbnRQYXJzZXIuaCIKICNpbmNsdWRlIDx3dGYvdGV4dC9TdHJpbmdC
dWlsZGVyLmg+CisjaW5jbHVkZSA8d3RmL3RleHQvVGV4dFBvc2l0aW9uLmg+CiAKIG5hbWVzcGFj
ZSBXZWJDb3JlIHsKIApAQCAtNDcsMTAgKzQ4LDEwIEBAIHN0YXRpYyBib29sIGlzQ1NTKEVsZW1l
bnQqIGVsZW1lbnQsIGNvbnN0IEF0b21pY1N0cmluZyYgdHlwZSkKIFN0eWxlRWxlbWVudDo6U3R5
bGVFbGVtZW50KERvY3VtZW50KiBkb2N1bWVudCwgYm9vbCBjcmVhdGVkQnlQYXJzZXIpCiAgICAg
OiBtX2NyZWF0ZWRCeVBhcnNlcihjcmVhdGVkQnlQYXJzZXIpCiAgICAgLCBtX2xvYWRpbmcoZmFs
c2UpCi0gICAgLCBtX3N0YXJ0TGluZU51bWJlcigwKQorICAgICwgbV9zdGFydExpbmVOdW1iZXIo
V1RGOjpPcmRpbmFsTnVtYmVyOjpiZWZvcmVGaXJzdCgpKQogewotICAgIGlmIChjcmVhdGVkQnlQ
YXJzZXIgJiYgZG9jdW1lbnQgJiYgZG9jdW1lbnQtPnNjcmlwdGFibGVEb2N1bWVudFBhcnNlcigp
KQotICAgICAgICBtX3N0YXJ0TGluZU51bWJlciA9IGRvY3VtZW50LT5zY3JpcHRhYmxlRG9jdW1l
bnRQYXJzZXIoKS0+bGluZU51bWJlcigpLnplcm9CYXNlZEludCgpOworICAgIGlmIChjcmVhdGVk
QnlQYXJzZXIgJiYgZG9jdW1lbnQgJiYgZG9jdW1lbnQtPnNjcmlwdGFibGVEb2N1bWVudFBhcnNl
cigpICYmICFkb2N1bWVudC0+aXNJbkRvY3VtZW50V3JpdGUoKSkKKyAgICAgICAgbV9zdGFydExp
bmVOdW1iZXIgPSBkb2N1bWVudC0+c2NyaXB0YWJsZURvY3VtZW50UGFyc2VyKCktPmxpbmVOdW1i
ZXIoKTsKIH0KIAogU3R5bGVFbGVtZW50Ojp+U3R5bGVFbGVtZW50KCkKQEAgLTE0Myw3ICsxNDQs
NyBAQCB2b2lkIFN0eWxlRWxlbWVudDo6Y2xlYXJTaGVldCgpCiAgICAgbV9zaGVldCA9IDA7CiB9
CiAKLXZvaWQgU3R5bGVFbGVtZW50OjpjcmVhdGVTaGVldChFbGVtZW50KiBlLCBpbnQgc3RhcnRM
aW5lTnVtYmVyLCBjb25zdCBTdHJpbmcmIHRleHQpCit2b2lkIFN0eWxlRWxlbWVudDo6Y3JlYXRl
U2hlZXQoRWxlbWVudCogZSwgV1RGOjpPcmRpbmFsTnVtYmVyIHN0YXJ0TGluZU51bWJlciwgY29u
c3QgU3RyaW5nJiB0ZXh0KQogewogICAgIEFTU0VSVChlKTsKICAgICBBU1NFUlQoZS0+aW5Eb2N1
bWVudCgpKTsKQEAgLTE1Niw3ICsxNTcsNyBAQCB2b2lkIFN0eWxlRWxlbWVudDo6Y3JlYXRlU2hl
ZXQoRWxlbWVudCogZSwgaW50IHN0YXJ0TGluZU51bWJlciwgY29uc3QgU3RyaW5nJiB0ZQogCiAg
ICAgLy8gSWYgdHlwZSBpcyBlbXB0eSBvciBDU1MsIHRoaXMgaXMgYSBDU1Mgc3R5bGUgc2hlZXQu
CiAgICAgY29uc3QgQXRvbWljU3RyaW5nJiB0eXBlID0gdGhpcy0+dHlwZSgpOwotICAgIGlmIChk
b2N1bWVudC0+Y29udGVudFNlY3VyaXR5UG9saWN5KCktPmFsbG93SW5saW5lU3R5bGUoKSAmJiBp
c0NTUyhlLCB0eXBlKSkgeworICAgIGlmIChkb2N1bWVudC0+Y29udGVudFNlY3VyaXR5UG9saWN5
KCktPmFsbG93SW5saW5lU3R5bGUoZS0+ZG9jdW1lbnQoKS0+dXJsKCksIHN0YXJ0TGluZU51bWJl
cikgJiYgaXNDU1MoZSwgdHlwZSkpIHsKICAgICAgICAgUmVmUHRyPE1lZGlhUXVlcnlTZXQ+IG1l
ZGlhUXVlcmllczsKICAgICAgICAgaWYgKGUtPmlzSFRNTEVsZW1lbnQoKSkKICAgICAgICAgICAg
IG1lZGlhUXVlcmllcyA9IE1lZGlhUXVlcnlTZXQ6OmNyZWF0ZUFsbG93aW5nRGVzY3JpcHRpb25T
eW50YXgobWVkaWEoKSk7CkBAIC0xNzIsOCArMTczLDcgQEAgdm9pZCBTdHlsZUVsZW1lbnQ6OmNy
ZWF0ZVNoZWV0KEVsZW1lbnQqIGUsIGludCBzdGFydExpbmVOdW1iZXIsIGNvbnN0IFN0cmluZyYg
dGUKICAgICAgICAgICAgIG1fc2hlZXQgPSBDU1NTdHlsZVNoZWV0OjpjcmVhdGVJbmxpbmUoZSwg
S1VSTCgpLCBkb2N1bWVudC0+aW5wdXRFbmNvZGluZygpKTsKICAgICAgICAgICAgIG1fc2hlZXQt
PnNldE1lZGlhUXVlcmllcyhtZWRpYVF1ZXJpZXMucmVsZWFzZSgpKTsKICAgICAgICAgICAgIG1f
c2hlZXQtPnNldFRpdGxlKGUtPnRpdGxlKCkpOwotICAgIAotICAgICAgICAgICAgbV9zaGVldC0+
Y29udGVudHMoKS0+cGFyc2VTdHJpbmdBdExpbmUodGV4dCwgc3RhcnRMaW5lTnVtYmVyKTsKKyAg
ICAgICAgICAgIG1fc2hlZXQtPmNvbnRlbnRzKCktPnBhcnNlU3RyaW5nQXRMaW5lKHRleHQsIHN0
YXJ0TGluZU51bWJlci56ZXJvQmFzZWRJbnQoKSk7CiAKICAgICAgICAgICAgIG1fbG9hZGluZyA9
IGZhbHNlOwogICAgICAgICB9CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9kb20vU3R5bGVF
bGVtZW50LmggYi9Tb3VyY2UvV2ViQ29yZS9kb20vU3R5bGVFbGVtZW50LmgKaW5kZXggM2MzMWFi
YmY3ZWE0M2M1MmM5NWQ0N2M1ZjEwZmI0YmRmMzViOTUwZS4uNmRkNDhlY2JiNDU0YjVlYWQzMjll
MDM5MDlhMjczYTZjMjUyYjBmMiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvZG9tL1N0eWxl
RWxlbWVudC5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2RvbS9TdHlsZUVsZW1lbnQuaApAQCAtMjIs
NiArMjIsNyBAQAogI2RlZmluZSBTdHlsZUVsZW1lbnRfaAogCiAjaW5jbHVkZSAiQ1NTU3R5bGVT
aGVldC5oIgorI2luY2x1ZGUgPHd0Zi90ZXh0L1RleHRQb3NpdGlvbi5oPgogCiBuYW1lc3BhY2Ug
V2ViQ29yZSB7CiAKQEAgLTUyLDEzICs1MywxMyBAQCBwcm90ZWN0ZWQ6CiAgICAgUmVmUHRyPENT
U1N0eWxlU2hlZXQ+IG1fc2hlZXQ7CiAKIHByaXZhdGU6Ci0gICAgdm9pZCBjcmVhdGVTaGVldChF
bGVtZW50KiwgaW50IHN0YXJ0TGluZU51bWJlciwgY29uc3QgU3RyaW5nJiB0ZXh0ID0gU3RyaW5n
KCkpOworICAgIHZvaWQgY3JlYXRlU2hlZXQoRWxlbWVudCosIFdURjo6T3JkaW5hbE51bWJlciBz
dGFydExpbmVOdW1iZXIsIGNvbnN0IFN0cmluZyYgdGV4dCA9IFN0cmluZygpKTsKICAgICB2b2lk
IHByb2Nlc3MoRWxlbWVudCopOwogICAgIHZvaWQgY2xlYXJTaGVldCgpOwogCiAgICAgYm9vbCBt
X2NyZWF0ZWRCeVBhcnNlcjsKICAgICBib29sIG1fbG9hZGluZzsKLSAgICBpbnQgbV9zdGFydExp
bmVOdW1iZXI7CisgICAgV1RGOjpPcmRpbmFsTnVtYmVyIG1fc3RhcnRMaW5lTnVtYmVyOwogfTsK
IAogfQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvZG9tL1N0eWxlZEVsZW1lbnQuY3BwIGIv
U291cmNlL1dlYkNvcmUvZG9tL1N0eWxlZEVsZW1lbnQuY3BwCmluZGV4IGE5OTI2NDRjMWZmNzg0
ZTdhYzlmNDJlZTM5MTI5Y2YzYWUwYjEzNjAuLjQzNzQ3YjgwNmM5Yzc1OWIzODI5Y2I4ODUxNjhm
NGQzOTk3NjgxNjkgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2RvbS9TdHlsZWRFbGVtZW50
LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9kb20vU3R5bGVkRWxlbWVudC5jcHAKQEAgLTM3LDkg
KzM3LDExIEBACiAjaW5jbHVkZSAiRG9jdW1lbnQuaCIKICNpbmNsdWRlICJIVE1MTmFtZXMuaCIK
ICNpbmNsdWRlICJIVE1MUGFyc2VySWRpb21zLmgiCisjaW5jbHVkZSAiU2NyaXB0YWJsZURvY3Vt
ZW50UGFyc2VyLmgiCiAjaW5jbHVkZSAiU3R5bGVQcm9wZXJ0eVNldC5oIgogI2luY2x1ZGUgIlN0
eWxlUmVzb2x2ZXIuaCIKICNpbmNsdWRlIDx3dGYvSGFzaEZ1bmN0aW9ucy5oPgorI2luY2x1ZGUg
PHd0Zi90ZXh0L1RleHRQb3NpdGlvbi5oPgogCiB1c2luZyBuYW1lc3BhY2Ugc3RkOwogCkBAIC0x
MjYsMTMgKzEyOCwyMSBAQCB2b2lkIFN0eWxlZEVsZW1lbnQ6OnVwZGF0ZVN0eWxlQXR0cmlidXRl
KCkgY29uc3QKICAgICAgICAgY29uc3RfY2FzdDxTdHlsZWRFbGVtZW50Kj4odGhpcyktPnNldEF0
dHJpYnV0ZShzdHlsZUF0dHIsIGlubGluZVN0eWxlLT5hc1RleHQoKSwgSW5VcGRhdGVTdHlsZUF0
dHJpYnV0ZSk7CiB9CiAKK1N0eWxlZEVsZW1lbnQ6OlN0eWxlZEVsZW1lbnQoY29uc3QgUXVhbGlm
aWVkTmFtZSYgbmFtZSwgRG9jdW1lbnQqIGRvY3VtZW50LCBDb25zdHJ1Y3Rpb25UeXBlIHR5cGUp
CisgICAgOiBFbGVtZW50KG5hbWUsIGRvY3VtZW50LCB0eXBlKQorICAgICwgbV9zdGFydExpbmVO
dW1iZXIoV1RGOjpPcmRpbmFsTnVtYmVyOjpiZWZvcmVGaXJzdCgpKQoreworICAgIGlmIChkb2N1
bWVudCAmJiBkb2N1bWVudC0+c2NyaXB0YWJsZURvY3VtZW50UGFyc2VyKCkgJiYgIWRvY3VtZW50
LT5pc0luRG9jdW1lbnRXcml0ZSgpKQorICAgICAgICBtX3N0YXJ0TGluZU51bWJlciA9IGRvY3Vt
ZW50LT5zY3JpcHRhYmxlRG9jdW1lbnRQYXJzZXIoKS0+bGluZU51bWJlcigpOworfQorCiBTdHls
ZWRFbGVtZW50Ojp+U3R5bGVkRWxlbWVudCgpCiB7CiAgICAgZGVzdHJveUlubGluZVN0eWxlKCk7
CiB9CiAKLUNTU1N0eWxlRGVjbGFyYXRpb24qIFN0eWxlZEVsZW1lbnQ6OnN0eWxlKCkgCi17IAor
Q1NTU3R5bGVEZWNsYXJhdGlvbiogU3R5bGVkRWxlbWVudDo6c3R5bGUoKQorewogICAgIHJldHVy
biBlbnN1cmVBdHRyaWJ1dGVEYXRhKCktPmVuc3VyZU11dGFibGVJbmxpbmVTdHlsZSh0aGlzKS0+
ZW5zdXJlSW5saW5lQ1NTU3R5bGVEZWNsYXJhdGlvbih0aGlzKTsgCiB9CiAKQEAgLTE3Myw3ICsx
ODMsNyBAQCB2b2lkIFN0eWxlZEVsZW1lbnQ6OnN0eWxlQXR0cmlidXRlQ2hhbmdlZChjb25zdCBB
dG9taWNTdHJpbmcmIG5ld1N0eWxlU3RyaW5nLCBTaAogICAgIGlmIChzaG91bGRSZXBhcnNlKSB7
CiAgICAgICAgIGlmIChuZXdTdHlsZVN0cmluZy5pc051bGwoKSkKICAgICAgICAgICAgIGRlc3Ry
b3lJbmxpbmVTdHlsZSgpOwotICAgICAgICBlbHNlIGlmIChkb2N1bWVudCgpLT5jb250ZW50U2Vj
dXJpdHlQb2xpY3koKS0+YWxsb3dJbmxpbmVTdHlsZSgpKQorICAgICAgICBlbHNlIGlmIChkb2N1
bWVudCgpLT5jb250ZW50U2VjdXJpdHlQb2xpY3koKS0+YWxsb3dJbmxpbmVTdHlsZShkb2N1bWVu
dCgpLT51cmwoKSwgbV9zdGFydExpbmVOdW1iZXIpKQogICAgICAgICAgICAgZW5zdXJlQXR0cmli
dXRlRGF0YSgpLT51cGRhdGVJbmxpbmVTdHlsZUF2b2lkaW5nTXV0YXRpb24odGhpcywgbmV3U3R5
bGVTdHJpbmcpOwogICAgICAgICBzZXRJc1N0eWxlQXR0cmlidXRlVmFsaWQoKTsKICAgICB9CmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9kb20vU3R5bGVkRWxlbWVudC5oIGIvU291cmNlL1dl
YkNvcmUvZG9tL1N0eWxlZEVsZW1lbnQuaAppbmRleCA2Y2Y0MTQ1ZjJhMTIxYTU0OGQ0ZTNhZGVi
OGNlODVmNjI3MDVkMDc4Li40NzM2YTk4MDAxOWE5ZWY0YTJjZGM2YWRjYjY0MTAwMmE2YmViNzBi
IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9kb20vU3R5bGVkRWxlbWVudC5oCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL2RvbS9TdHlsZWRFbGVtZW50LmgKQEAgLTI3LDYgKzI3LDcgQEAKIAogI2lu
Y2x1ZGUgIkVsZW1lbnQuaCIKICNpbmNsdWRlICJTdHlsZVByb3BlcnR5U2V0LmgiCisjaW5jbHVk
ZSA8d3RmL3RleHQvVGV4dFBvc2l0aW9uLmg+CiAKIG5hbWVzcGFjZSBXZWJDb3JlIHsKIApAQCAt
NjIsMTAgKzYzLDcgQEAgcHVibGljOgogICAgIHZvaWQgc3R5bGVBdHRyaWJ1dGVDaGFuZ2VkKGNv
bnN0IEF0b21pY1N0cmluZyYgbmV3U3R5bGVTdHJpbmcsIFNob3VsZFJlcGFyc2VTdHlsZUF0dHJp
YnV0ZSA9IFJlcGFyc2VTdHlsZUF0dHJpYnV0ZSk7CiAKIHByb3RlY3RlZDoKLSAgICBTdHlsZWRF
bGVtZW50KGNvbnN0IFF1YWxpZmllZE5hbWUmIG5hbWUsIERvY3VtZW50KiBkb2N1bWVudCwgQ29u
c3RydWN0aW9uVHlwZSB0eXBlKQotICAgICAgICA6IEVsZW1lbnQobmFtZSwgZG9jdW1lbnQsIHR5
cGUpCi0gICAgewotICAgIH0KKyAgICBTdHlsZWRFbGVtZW50KGNvbnN0IFF1YWxpZmllZE5hbWUm
LCBEb2N1bWVudCosIENvbnN0cnVjdGlvblR5cGUpOwogCiAgICAgdmlydHVhbCB2b2lkIGF0dHJp
YnV0ZUNoYW5nZWQoY29uc3QgQXR0cmlidXRlJikgT1ZFUlJJREU7CiAgICAgdmlydHVhbCB2b2lk
IHBhcnNlQXR0cmlidXRlKGNvbnN0IEF0dHJpYnV0ZSYpOwpAQCAtOTUsNiArOTMsOCBAQCBwcml2
YXRlOgogICAgICAgICBpZiAoYXR0cmlidXRlRGF0YSgpKQogICAgICAgICAgICAgYXR0cmlidXRl
RGF0YSgpLT5kZXN0cm95SW5saW5lU3R5bGUodGhpcyk7CiAgICAgfQorCisgICAgV1RGOjpPcmRp
bmFsTnVtYmVyIG1fc3RhcnRMaW5lTnVtYmVyOwogfTsKIAogaW5saW5lIGNvbnN0IFNwYWNlU3Bs
aXRTdHJpbmcmIFN0eWxlZEVsZW1lbnQ6OmNsYXNzTmFtZXMoKSBjb25zdApkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYkNvcmUvcGFnZS9Db250ZW50U2VjdXJpdHlQb2xpY3kuY3BwIGIvU291cmNlL1dl
YkNvcmUvcGFnZS9Db250ZW50U2VjdXJpdHlQb2xpY3kuY3BwCmluZGV4IDQ1Zjc2YjAxOWRmZjY3
ZjM5MzAyNDI1ODM4NzJmMzIzZjUwYTk4YmQuLjJkNzVhZDVmYTExODJlNjA3MzM2NTNlYTQzNWNi
NzRhOTZjNDg3NzIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BhZ2UvQ29udGVudFNlY3Vy
aXR5UG9saWN5LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wYWdlL0NvbnRlbnRTZWN1cml0eVBv
bGljeS5jcHAKQEAgLTMxLDExICszMSwxMyBAQAogI2luY2x1ZGUgIkZvcm1EYXRhLmgiCiAjaW5j
bHVkZSAiRm9ybURhdGFMaXN0LmgiCiAjaW5jbHVkZSAiRnJhbWUuaCIKKyNpbmNsdWRlICJJbnNw
ZWN0b3JJbnN0cnVtZW50YXRpb24uaCIKICNpbmNsdWRlICJJbnNwZWN0b3JWYWx1ZXMuaCIKICNp
bmNsdWRlICJQaW5nTG9hZGVyLmgiCiAjaW5jbHVkZSAiU2NyaXB0Q2FsbFN0YWNrLmgiCiAjaW5j
bHVkZSAiU2VjdXJpdHlPcmlnaW4uaCIKICNpbmNsdWRlICJUZXh0RW5jb2RpbmcuaCIKKyNpbmNs
dWRlIDx3dGYvdGV4dC9UZXh0UG9zaXRpb24uaD4KICNpbmNsdWRlIDx3dGYvdGV4dC9XVEZTdHJp
bmcuaD4KIAogbmFtZXNwYWNlIFdlYkNvcmUgewpAQCAtNDkwLDEwICs0OTIsMTAgQEAgcHVibGlj
OgogICAgIGNvbnN0IFN0cmluZyYgaGVhZGVyKCkgY29uc3QgeyByZXR1cm4gbV9oZWFkZXI7IH0K
ICAgICBDb250ZW50U2VjdXJpdHlQb2xpY3k6OkhlYWRlclR5cGUgaGVhZGVyVHlwZSgpIGNvbnN0
IHsgcmV0dXJuIG1fcmVwb3J0T25seSA/IENvbnRlbnRTZWN1cml0eVBvbGljeTo6UmVwb3J0T25s
eSA6IENvbnRlbnRTZWN1cml0eVBvbGljeTo6RW5mb3JjZVBvbGljeTsgfQogCi0gICAgYm9vbCBh
bGxvd0phdmFTY3JpcHRVUkxzKCkgY29uc3Q7Ci0gICAgYm9vbCBhbGxvd0lubGluZUV2ZW50SGFu
ZGxlcnMoKSBjb25zdDsKLSAgICBib29sIGFsbG93SW5saW5lU2NyaXB0KCkgY29uc3Q7Ci0gICAg
Ym9vbCBhbGxvd0lubGluZVN0eWxlKCkgY29uc3Q7CisgICAgYm9vbCBhbGxvd0phdmFTY3JpcHRV
UkxzKGNvbnN0IFN0cmluZyYgY29udGV4dFVSTCwgY29uc3QgV1RGOjpPcmRpbmFsTnVtYmVyJiBj
b250ZXh0TGluZSkgY29uc3Q7CisgICAgYm9vbCBhbGxvd0lubGluZUV2ZW50SGFuZGxlcnMoY29u
c3QgU3RyaW5nJiBjb250ZXh0VVJMLCBjb25zdCBXVEY6Ok9yZGluYWxOdW1iZXImIGNvbnRleHRM
aW5lKSBjb25zdDsKKyAgICBib29sIGFsbG93SW5saW5lU2NyaXB0KGNvbnN0IFN0cmluZyYgY29u
dGV4dFVSTCwgY29uc3QgV1RGOjpPcmRpbmFsTnVtYmVyJiBjb250ZXh0TGluZSkgY29uc3Q7Cisg
ICAgYm9vbCBhbGxvd0lubGluZVN0eWxlKGNvbnN0IFN0cmluZyYgY29udGV4dFVSTCwgY29uc3Qg
V1RGOjpPcmRpbmFsTnVtYmVyJiBjb250ZXh0TGluZSkgY29uc3Q7CiAgICAgYm9vbCBhbGxvd0V2
YWwoUGFzc1JlZlB0cjxTY3JpcHRDYWxsU3RhY2s+KSBjb25zdDsKIAogICAgIGJvb2wgYWxsb3dT
Y3JpcHRGcm9tU291cmNlKGNvbnN0IEtVUkwmKSBjb25zdDsKQEAgLTUxOCwxMiArNTIwLDEyIEBA
IHByaXZhdGU6CiAgICAgUGFzc093blB0cjxDU1BEaXJlY3RpdmU+IGNyZWF0ZUNTUERpcmVjdGl2
ZShjb25zdCBTdHJpbmcmIG5hbWUsIGNvbnN0IFN0cmluZyYgdmFsdWUpOwogCiAgICAgQ1NQRGly
ZWN0aXZlKiBvcGVyYXRpdmVEaXJlY3RpdmUoQ1NQRGlyZWN0aXZlKikgY29uc3Q7Ci0gICAgdm9p
ZCByZXBvcnRWaW9sYXRpb24oY29uc3QgU3RyaW5nJiBkaXJlY3RpdmVUZXh0LCBjb25zdCBTdHJp
bmcmIGNvbnNvbGVNZXNzYWdlLCBjb25zdCBLVVJMJiBibG9ja2VkVVJMID0gS1VSTCgpLCBQYXNz
UmVmUHRyPFNjcmlwdENhbGxTdGFjaz4gPSAwKSBjb25zdDsKKyAgICB2b2lkIHJlcG9ydFZpb2xh
dGlvbihjb25zdCBTdHJpbmcmIGRpcmVjdGl2ZVRleHQsIGNvbnN0IFN0cmluZyYgY29uc29sZU1l
c3NhZ2UsIGNvbnN0IEtVUkwmIGJsb2NrZWRVUkwgPSBLVVJMKCksIGNvbnN0IFN0cmluZyYgY29u
dGV4dFVSTCA9IFN0cmluZygpLCBjb25zdCBXVEY6Ok9yZGluYWxOdW1iZXImIGNvbnRleHRMaW5l
ID0gV1RGOjpPcmRpbmFsTnVtYmVyOjpiZWZvcmVGaXJzdCgpLCBQYXNzUmVmUHRyPFNjcmlwdENh
bGxTdGFjaz4gPSAwKSBjb25zdDsKICAgICB2b2lkIGxvZ1VucmVjb2duaXplZERpcmVjdGl2ZShj
b25zdCBTdHJpbmcmIG5hbWUpIGNvbnN0OwogICAgIGJvb2wgY2hlY2tFdmFsKENTUERpcmVjdGl2
ZSopIGNvbnN0OwogCi0gICAgYm9vbCBjaGVja0lubGluZUFuZFJlcG9ydFZpb2xhdGlvbihDU1BE
aXJlY3RpdmUqLCBjb25zdCBTdHJpbmcmIGNvbnNvbGVNZXNzYWdlKSBjb25zdDsKLSAgICBib29s
IGNoZWNrRXZhbEFuZFJlcG9ydFZpb2xhdGlvbihDU1BEaXJlY3RpdmUqLCBjb25zdCBTdHJpbmcm
IGNvbnNvbGVNZXNzYWdlLCBQYXNzUmVmUHRyPFNjcmlwdENhbGxTdGFjaz4pIGNvbnN0OworICAg
IGJvb2wgY2hlY2tJbmxpbmVBbmRSZXBvcnRWaW9sYXRpb24oQ1NQRGlyZWN0aXZlKiwgY29uc3Qg
U3RyaW5nJiBjb25zb2xlTWVzc2FnZSwgY29uc3QgU3RyaW5nJiBjb250ZXh0VVJMLCBjb25zdCBX
VEY6Ok9yZGluYWxOdW1iZXImIGNvbnRleHRMaW5lKSBjb25zdDsKKyAgICBib29sIGNoZWNrRXZh
bEFuZFJlcG9ydFZpb2xhdGlvbihDU1BEaXJlY3RpdmUqLCBjb25zdCBTdHJpbmcmIGNvbnNvbGVN
ZXNzYWdlLCBjb25zdCBTdHJpbmcmIGNvbnRleHRVUkwgPSBTdHJpbmcoKSwgY29uc3QgV1RGOjpP
cmRpbmFsTnVtYmVyJiBjb250ZXh0TGluZSA9IFdURjo6T3JkaW5hbE51bWJlcjo6YmVmb3JlRmly
c3QoKSwgUGFzc1JlZlB0cjxTY3JpcHRDYWxsU3RhY2s+ID0gMCkgY29uc3Q7CiAgICAgYm9vbCBj
aGVja1NvdXJjZUFuZFJlcG9ydFZpb2xhdGlvbihDU1BEaXJlY3RpdmUqLCBjb25zdCBLVVJMJiwg
Y29uc3QgU3RyaW5nJiB0eXBlKSBjb25zdDsKIAogICAgIGJvb2wgZGVueUlmRW5mb3JjaW5nUG9s
aWN5KCkgY29uc3QgeyByZXR1cm4gbV9yZXBvcnRPbmx5OyB9CkBAIC01NzUsMTAgKzU3NywxMCBA
QCBQYXNzT3duUHRyPENTUERpcmVjdGl2ZUxpc3Q+IENTUERpcmVjdGl2ZUxpc3Q6OmNyZWF0ZShT
Y3JpcHRFeGVjdXRpb25Db250ZXh0KiBzYwogICAgIHJldHVybiBwb2xpY3kucmVsZWFzZSgpOwog
fQogCi12b2lkIENTUERpcmVjdGl2ZUxpc3Q6OnJlcG9ydFZpb2xhdGlvbihjb25zdCBTdHJpbmcm
IGRpcmVjdGl2ZVRleHQsIGNvbnN0IFN0cmluZyYgY29uc29sZU1lc3NhZ2UsIGNvbnN0IEtVUkwm
IGJsb2NrZWRVUkwsIFBhc3NSZWZQdHI8U2NyaXB0Q2FsbFN0YWNrPiBjYWxsU3RhY2spIGNvbnN0
Cit2b2lkIENTUERpcmVjdGl2ZUxpc3Q6OnJlcG9ydFZpb2xhdGlvbihjb25zdCBTdHJpbmcmIGRp
cmVjdGl2ZVRleHQsIGNvbnN0IFN0cmluZyYgY29uc29sZU1lc3NhZ2UsIGNvbnN0IEtVUkwmIGJs
b2NrZWRVUkwsIGNvbnN0IFN0cmluZyYgY29udGV4dFVSTCwgY29uc3QgV1RGOjpPcmRpbmFsTnVt
YmVyJiBjb250ZXh0TGluZSwgUGFzc1JlZlB0cjxTY3JpcHRDYWxsU3RhY2s+IGNhbGxTdGFjaykg
Y29uc3QKIHsKICAgICBTdHJpbmcgbWVzc2FnZSA9IG1fcmVwb3J0T25seSA/ICJbUmVwb3J0IE9u
bHldICIgKyBjb25zb2xlTWVzc2FnZSA6IGNvbnNvbGVNZXNzYWdlOwotICAgIG1fc2NyaXB0RXhl
Y3V0aW9uQ29udGV4dC0+YWRkQ29uc29sZU1lc3NhZ2UoSlNNZXNzYWdlU291cmNlLCBMb2dNZXNz
YWdlVHlwZSwgRXJyb3JNZXNzYWdlTGV2ZWwsIG1lc3NhZ2UsIFN0cmluZygpLCAwLCBjYWxsU3Rh
Y2spOworICAgIG1fc2NyaXB0RXhlY3V0aW9uQ29udGV4dC0+YWRkQ29uc29sZU1lc3NhZ2UoSlNN
ZXNzYWdlU291cmNlLCBMb2dNZXNzYWdlVHlwZSwgRXJyb3JNZXNzYWdlTGV2ZWwsIG1lc3NhZ2Us
IGNvbnRleHRVUkwsIGNvbnRleHRMaW5lLm9uZUJhc2VkSW50KCksIGNhbGxTdGFjayk7CiAKICAg
ICBpZiAobV9yZXBvcnRVUklzLmlzRW1wdHkoKSkKICAgICAgICAgcmV0dXJuOwpAQCAtNjM4LDE5
ICs2NDAsMTkgQEAgQ1NQRGlyZWN0aXZlKiBDU1BEaXJlY3RpdmVMaXN0OjpvcGVyYXRpdmVEaXJl
Y3RpdmUoQ1NQRGlyZWN0aXZlKiBkaXJlY3RpdmUpIGNvbnMKICAgICByZXR1cm4gZGlyZWN0aXZl
ID8gZGlyZWN0aXZlIDogbV9kZWZhdWx0U3JjLmdldCgpOwogfQogCi1ib29sIENTUERpcmVjdGl2
ZUxpc3Q6OmNoZWNrSW5saW5lQW5kUmVwb3J0VmlvbGF0aW9uKENTUERpcmVjdGl2ZSogZGlyZWN0
aXZlLCBjb25zdCBTdHJpbmcmIGNvbnNvbGVNZXNzYWdlKSBjb25zdAorYm9vbCBDU1BEaXJlY3Rp
dmVMaXN0OjpjaGVja0lubGluZUFuZFJlcG9ydFZpb2xhdGlvbihDU1BEaXJlY3RpdmUqIGRpcmVj
dGl2ZSwgY29uc3QgU3RyaW5nJiBjb25zb2xlTWVzc2FnZSwgY29uc3QgU3RyaW5nJiBjb250ZXh0
VVJMLCBjb25zdCBXVEY6Ok9yZGluYWxOdW1iZXImIGNvbnRleHRMaW5lKSBjb25zdAogewogICAg
IGlmICghZGlyZWN0aXZlIHx8IGRpcmVjdGl2ZS0+YWxsb3dJbmxpbmUoKSkKICAgICAgICAgcmV0
dXJuIHRydWU7Ci0gICAgcmVwb3J0VmlvbGF0aW9uKGRpcmVjdGl2ZS0+dGV4dCgpLCBjb25zb2xl
TWVzc2FnZSArICJcIiIgKyBkaXJlY3RpdmUtPnRleHQoKSArICJcIi5cbiIpOworICAgIHJlcG9y
dFZpb2xhdGlvbihkaXJlY3RpdmUtPnRleHQoKSwgY29uc29sZU1lc3NhZ2UgKyAiXCIiICsgZGly
ZWN0aXZlLT50ZXh0KCkgKyAiXCIuXG4iLCBLVVJMKCksIGNvbnRleHRVUkwsIGNvbnRleHRMaW5l
KTsKICAgICByZXR1cm4gZGVueUlmRW5mb3JjaW5nUG9saWN5KCk7CiB9CiAKLWJvb2wgQ1NQRGly
ZWN0aXZlTGlzdDo6Y2hlY2tFdmFsQW5kUmVwb3J0VmlvbGF0aW9uKENTUERpcmVjdGl2ZSogZGly
ZWN0aXZlLCBjb25zdCBTdHJpbmcmIGNvbnNvbGVNZXNzYWdlLCBQYXNzUmVmUHRyPFNjcmlwdENh
bGxTdGFjaz4gY2FsbFN0YWNrKSBjb25zdAorYm9vbCBDU1BEaXJlY3RpdmVMaXN0OjpjaGVja0V2
YWxBbmRSZXBvcnRWaW9sYXRpb24oQ1NQRGlyZWN0aXZlKiBkaXJlY3RpdmUsIGNvbnN0IFN0cmlu
ZyYgY29uc29sZU1lc3NhZ2UsIGNvbnN0IFN0cmluZyYgY29udGV4dFVSTCwgY29uc3QgV1RGOjpP
cmRpbmFsTnVtYmVyJiBjb250ZXh0TGluZSwgUGFzc1JlZlB0cjxTY3JpcHRDYWxsU3RhY2s+IGNh
bGxTdGFjaykgY29uc3QKIHsKICAgICBpZiAoY2hlY2tFdmFsKGRpcmVjdGl2ZSkpCiAgICAgICAg
IHJldHVybiB0cnVlOwotICAgIHJlcG9ydFZpb2xhdGlvbihkaXJlY3RpdmUtPnRleHQoKSwgY29u
c29sZU1lc3NhZ2UgKyAiXCIiICsgZGlyZWN0aXZlLT50ZXh0KCkgKyAiXCIuXG4iLCBLVVJMKCks
IGNhbGxTdGFjayk7CisgICAgcmVwb3J0VmlvbGF0aW9uKGRpcmVjdGl2ZS0+dGV4dCgpLCBjb25z
b2xlTWVzc2FnZSArICJcIiIgKyBkaXJlY3RpdmUtPnRleHQoKSArICJcIi5cbiIsIEtVUkwoKSwg
Y29udGV4dFVSTCwgY29udGV4dExpbmUsIGNhbGxTdGFjayk7CiAgICAgcmV0dXJuIGRlbnlJZkVu
Zm9yY2luZ1BvbGljeSgpOwogfQogCkBAIC02NjMsMzQgKzY2NSwzNCBAQCBib29sIENTUERpcmVj
dGl2ZUxpc3Q6OmNoZWNrU291cmNlQW5kUmVwb3J0VmlvbGF0aW9uKENTUERpcmVjdGl2ZSogZGly
ZWN0aXZlLCBjbwogICAgIHJldHVybiBkZW55SWZFbmZvcmNpbmdQb2xpY3koKTsKIH0KIAotYm9v
bCBDU1BEaXJlY3RpdmVMaXN0OjphbGxvd0phdmFTY3JpcHRVUkxzKCkgY29uc3QKK2Jvb2wgQ1NQ
RGlyZWN0aXZlTGlzdDo6YWxsb3dKYXZhU2NyaXB0VVJMcyhjb25zdCBTdHJpbmcmIGNvbnRleHRV
UkwsIGNvbnN0IFdURjo6T3JkaW5hbE51bWJlciYgY29udGV4dExpbmUpIGNvbnN0CiB7CiAgICAg
REVGSU5FX1NUQVRJQ19MT0NBTChTdHJpbmcsIGNvbnNvbGVNZXNzYWdlLCAoIlJlZnVzZWQgdG8g
ZXhlY3V0ZSBKYXZhU2NyaXB0IFVSTCBiZWNhdXNlIGl0IHZpb2xhdGVzIHRoZSBmb2xsb3dpbmcg
Q29udGVudCBTZWN1cml0eSBQb2xpY3kgZGlyZWN0aXZlOiAiKSk7Ci0gICAgcmV0dXJuIGNoZWNr
SW5saW5lQW5kUmVwb3J0VmlvbGF0aW9uKG9wZXJhdGl2ZURpcmVjdGl2ZShtX3NjcmlwdFNyYy5n
ZXQoKSksIGNvbnNvbGVNZXNzYWdlKTsKKyAgICByZXR1cm4gY2hlY2tJbmxpbmVBbmRSZXBvcnRW
aW9sYXRpb24ob3BlcmF0aXZlRGlyZWN0aXZlKG1fc2NyaXB0U3JjLmdldCgpKSwgY29uc29sZU1l
c3NhZ2UsIGNvbnRleHRVUkwsIGNvbnRleHRMaW5lKTsKIH0KIAotYm9vbCBDU1BEaXJlY3RpdmVM
aXN0OjphbGxvd0lubGluZUV2ZW50SGFuZGxlcnMoKSBjb25zdAorYm9vbCBDU1BEaXJlY3RpdmVM
aXN0OjphbGxvd0lubGluZUV2ZW50SGFuZGxlcnMoY29uc3QgU3RyaW5nJiBjb250ZXh0VVJMLCBj
b25zdCBXVEY6Ok9yZGluYWxOdW1iZXImIGNvbnRleHRMaW5lKSBjb25zdAogewogICAgIERFRklO
RV9TVEFUSUNfTE9DQUwoU3RyaW5nLCBjb25zb2xlTWVzc2FnZSwgKCJSZWZ1c2VkIHRvIGV4ZWN1
dGUgaW5saW5lIGV2ZW50IGhhbmRsZXIgYmVjYXVzZSBpdCB2aW9sYXRlcyB0aGUgZm9sbG93aW5n
IENvbnRlbnQgU2VjdXJpdHkgUG9saWN5IGRpcmVjdGl2ZTogIikpOwotICAgIHJldHVybiBjaGVj
a0lubGluZUFuZFJlcG9ydFZpb2xhdGlvbihvcGVyYXRpdmVEaXJlY3RpdmUobV9zY3JpcHRTcmMu
Z2V0KCkpLCBjb25zb2xlTWVzc2FnZSk7CisgICAgcmV0dXJuIGNoZWNrSW5saW5lQW5kUmVwb3J0
VmlvbGF0aW9uKG9wZXJhdGl2ZURpcmVjdGl2ZShtX3NjcmlwdFNyYy5nZXQoKSksIGNvbnNvbGVN
ZXNzYWdlLCBjb250ZXh0VVJMLCBjb250ZXh0TGluZSk7CiB9CiAKLWJvb2wgQ1NQRGlyZWN0aXZl
TGlzdDo6YWxsb3dJbmxpbmVTY3JpcHQoKSBjb25zdAorYm9vbCBDU1BEaXJlY3RpdmVMaXN0Ojph
bGxvd0lubGluZVNjcmlwdChjb25zdCBTdHJpbmcmIGNvbnRleHRVUkwsIGNvbnN0IFdURjo6T3Jk
aW5hbE51bWJlciYgY29udGV4dExpbmUpIGNvbnN0CiB7CiAgICAgREVGSU5FX1NUQVRJQ19MT0NB
TChTdHJpbmcsIGNvbnNvbGVNZXNzYWdlLCAoIlJlZnVzZWQgdG8gZXhlY3V0ZSBpbmxpbmUgc2Ny
aXB0IGJlY2F1c2UgaXQgdmlvbGF0ZXMgdGhlIGZvbGxvd2luZyBDb250ZW50IFNlY3VyaXR5IFBv
bGljeSBkaXJlY3RpdmU6ICIpKTsKLSAgICByZXR1cm4gY2hlY2tJbmxpbmVBbmRSZXBvcnRWaW9s
YXRpb24ob3BlcmF0aXZlRGlyZWN0aXZlKG1fc2NyaXB0U3JjLmdldCgpKSwgY29uc29sZU1lc3Nh
Z2UpOworICAgIHJldHVybiBjaGVja0lubGluZUFuZFJlcG9ydFZpb2xhdGlvbihvcGVyYXRpdmVE
aXJlY3RpdmUobV9zY3JpcHRTcmMuZ2V0KCkpLCBjb25zb2xlTWVzc2FnZSwgY29udGV4dFVSTCwg
Y29udGV4dExpbmUpOwogfQogCi1ib29sIENTUERpcmVjdGl2ZUxpc3Q6OmFsbG93SW5saW5lU3R5
bGUoKSBjb25zdAorYm9vbCBDU1BEaXJlY3RpdmVMaXN0OjphbGxvd0lubGluZVN0eWxlKGNvbnN0
IFN0cmluZyYgY29udGV4dFVSTCwgY29uc3QgV1RGOjpPcmRpbmFsTnVtYmVyJiBjb250ZXh0TGlu
ZSkgY29uc3QKIHsKICAgICBERUZJTkVfU1RBVElDX0xPQ0FMKFN0cmluZywgY29uc29sZU1lc3Nh
Z2UsICgiUmVmdXNlZCB0byBhcHBseSBpbmxpbmUgc3R5bGUgYmVjYXVzZSBpdCB2aW9sYXRlcyB0
aGUgZm9sbG93aW5nIENvbnRlbnQgU2VjdXJpdHkgUG9saWN5IGRpcmVjdGl2ZTogIikpOwotICAg
IHJldHVybiBjaGVja0lubGluZUFuZFJlcG9ydFZpb2xhdGlvbihvcGVyYXRpdmVEaXJlY3RpdmUo
bV9zdHlsZVNyYy5nZXQoKSksIGNvbnNvbGVNZXNzYWdlKTsKKyAgICByZXR1cm4gY2hlY2tJbmxp
bmVBbmRSZXBvcnRWaW9sYXRpb24ob3BlcmF0aXZlRGlyZWN0aXZlKG1fc3R5bGVTcmMuZ2V0KCkp
LCBjb25zb2xlTWVzc2FnZSwgY29udGV4dFVSTCwgY29udGV4dExpbmUpOwogfQogCiBib29sIENT
UERpcmVjdGl2ZUxpc3Q6OmFsbG93RXZhbChQYXNzUmVmUHRyPFNjcmlwdENhbGxTdGFjaz4gY2Fs
bFN0YWNrKSBjb25zdAogewogICAgIERFRklORV9TVEFUSUNfTE9DQUwoU3RyaW5nLCBjb25zb2xl
TWVzc2FnZSwgKCJSZWZ1c2VkIHRvIGV2YWx1YXRlIHNjcmlwdCBiZWNhdXNlIGl0IHZpb2xhdGVz
IHRoZSBmb2xsb3dpbmcgQ29udGVudCBTZWN1cml0eSBQb2xpY3kgZGlyZWN0aXZlOiAiKSk7Ci0g
ICAgcmV0dXJuIGNoZWNrRXZhbEFuZFJlcG9ydFZpb2xhdGlvbihvcGVyYXRpdmVEaXJlY3RpdmUo
bV9zY3JpcHRTcmMuZ2V0KCkpLCBjb25zb2xlTWVzc2FnZSwgY2FsbFN0YWNrKTsKKyAgICByZXR1
cm4gY2hlY2tFdmFsQW5kUmVwb3J0VmlvbGF0aW9uKG9wZXJhdGl2ZURpcmVjdGl2ZShtX3Njcmlw
dFNyYy5nZXQoKSksIGNvbnNvbGVNZXNzYWdlLCBTdHJpbmcoKSwgV1RGOjpPcmRpbmFsTnVtYmVy
OjpiZWZvcmVGaXJzdCgpLCBjYWxsU3RhY2spOwogfQogCiBib29sIENTUERpcmVjdGl2ZUxpc3Q6
OmFsbG93U2NyaXB0RnJvbVNvdXJjZShjb25zdCBLVVJMJiB1cmwpIGNvbnN0CkBAIC05MjMsMjEg
KzkyNSwyMSBAQCBDb250ZW50U2VjdXJpdHlQb2xpY3k6OkhlYWRlclR5cGUgQ29udGVudFNlY3Vy
aXR5UG9saWN5OjpkZXByZWNhdGVkSGVhZGVyVHlwZSgpCiAgICAgcmV0dXJuIG1fcG9saWNpZXMu
aXNFbXB0eSgpID8gRW5mb3JjZVBvbGljeSA6IG1fcG9saWNpZXNbMF0tPmhlYWRlclR5cGUoKTsK
IH0KIAotdGVtcGxhdGU8Ym9vbCAoQ1NQRGlyZWN0aXZlTGlzdDo6KmFsbG93ZWQpKCkgY29uc3Q+
Ci1ib29sIGlzQWxsb3dlZEJ5QWxsKGNvbnN0IENTUERpcmVjdGl2ZUxpc3RWZWN0b3ImIHBvbGlj
aWVzKQordGVtcGxhdGU8Ym9vbCAoQ1NQRGlyZWN0aXZlTGlzdDo6KmFsbG93ZWQpKFBhc3NSZWZQ
dHI8U2NyaXB0Q2FsbFN0YWNrPikgY29uc3Q+Citib29sIGlzQWxsb3dlZEJ5QWxsV2l0aENhbGxT
dGFjayhjb25zdCBDU1BEaXJlY3RpdmVMaXN0VmVjdG9yJiBwb2xpY2llcywgUGFzc1JlZlB0cjxT
Y3JpcHRDYWxsU3RhY2s+IGNhbGxTdGFjaykKIHsKICAgICBmb3IgKHNpemVfdCBpID0gMDsgaSA8
IHBvbGljaWVzLnNpemUoKTsgKytpKSB7Ci0gICAgICAgIGlmICghKHBvbGljaWVzW2ldLmdldCgp
LT4qYWxsb3dlZCkoKSkKKyAgICAgICAgaWYgKCEocG9saWNpZXNbaV0uZ2V0KCktPiphbGxvd2Vk
KShjYWxsU3RhY2spKQogICAgICAgICAgICAgcmV0dXJuIGZhbHNlOwogICAgIH0KICAgICByZXR1
cm4gdHJ1ZTsKIH0KIAotdGVtcGxhdGU8Ym9vbCAoQ1NQRGlyZWN0aXZlTGlzdDo6KmFsbG93ZWQp
KFBhc3NSZWZQdHI8U2NyaXB0Q2FsbFN0YWNrPikgY29uc3Q+Ci1ib29sIGlzQWxsb3dlZEJ5QWxs
V2l0aENhbGxTdGFjayhjb25zdCBDU1BEaXJlY3RpdmVMaXN0VmVjdG9yJiBwb2xpY2llcywgUGFz
c1JlZlB0cjxTY3JpcHRDYWxsU3RhY2s+IGNhbGxTdGFjaykKK3RlbXBsYXRlPGJvb2wgKENTUERp
cmVjdGl2ZUxpc3Q6OiphbGxvd2VkKShjb25zdCBTdHJpbmcmLCBjb25zdCBXVEY6Ok9yZGluYWxO
dW1iZXImKSBjb25zdD4KK2Jvb2wgaXNBbGxvd2VkQnlBbGxXaXRoQ29udGV4dChjb25zdCBDU1BE
aXJlY3RpdmVMaXN0VmVjdG9yJiBwb2xpY2llcywgY29uc3QgU3RyaW5nJiBjb250ZXh0VVJMLCBj
b25zdCBXVEY6Ok9yZGluYWxOdW1iZXImIGNvbnRleHRMaW5lKQogewogICAgIGZvciAoc2l6ZV90
IGkgPSAwOyBpIDwgcG9saWNpZXMuc2l6ZSgpOyArK2kpIHsKLSAgICAgICAgaWYgKCEocG9saWNp
ZXNbaV0uZ2V0KCktPiphbGxvd2VkKShjYWxsU3RhY2spKQorICAgICAgICBpZiAoIShwb2xpY2ll
c1tpXS5nZXQoKS0+KmFsbG93ZWQpKGNvbnRleHRVUkwsIGNvbnRleHRMaW5lKSkKICAgICAgICAg
ICAgIHJldHVybiBmYWxzZTsKICAgICB9CiAgICAgcmV0dXJuIHRydWU7CkBAIC05NTMsMjYgKzk1
NSwyNiBAQCBib29sIGlzQWxsb3dlZEJ5QWxsV2l0aFVSTChjb25zdCBDU1BEaXJlY3RpdmVMaXN0
VmVjdG9yJiBwb2xpY2llcywgY29uc3QgS1VSTCYgdQogICAgIHJldHVybiB0cnVlOwogfQogCi1i
b29sIENvbnRlbnRTZWN1cml0eVBvbGljeTo6YWxsb3dKYXZhU2NyaXB0VVJMcygpIGNvbnN0Citi
b29sIENvbnRlbnRTZWN1cml0eVBvbGljeTo6YWxsb3dKYXZhU2NyaXB0VVJMcyhjb25zdCBTdHJp
bmcmIGNvbnRleHRVUkwsIGNvbnN0IFdURjo6T3JkaW5hbE51bWJlciYgY29udGV4dExpbmUpIGNv
bnN0CiB7Ci0gICAgcmV0dXJuIGlzQWxsb3dlZEJ5QWxsPCZDU1BEaXJlY3RpdmVMaXN0OjphbGxv
d0phdmFTY3JpcHRVUkxzPihtX3BvbGljaWVzKTsKKyAgICByZXR1cm4gaXNBbGxvd2VkQnlBbGxX
aXRoQ29udGV4dDwmQ1NQRGlyZWN0aXZlTGlzdDo6YWxsb3dKYXZhU2NyaXB0VVJMcz4obV9wb2xp
Y2llcywgY29udGV4dFVSTCwgY29udGV4dExpbmUpOwogfQogCi1ib29sIENvbnRlbnRTZWN1cml0
eVBvbGljeTo6YWxsb3dJbmxpbmVFdmVudEhhbmRsZXJzKCkgY29uc3QKK2Jvb2wgQ29udGVudFNl
Y3VyaXR5UG9saWN5OjphbGxvd0lubGluZUV2ZW50SGFuZGxlcnMoY29uc3QgU3RyaW5nJiBjb250
ZXh0VVJMLCBjb25zdCBXVEY6Ok9yZGluYWxOdW1iZXImIGNvbnRleHRMaW5lKSBjb25zdAogewot
ICAgIHJldHVybiBpc0FsbG93ZWRCeUFsbDwmQ1NQRGlyZWN0aXZlTGlzdDo6YWxsb3dJbmxpbmVF
dmVudEhhbmRsZXJzPihtX3BvbGljaWVzKTsKKyAgICByZXR1cm4gaXNBbGxvd2VkQnlBbGxXaXRo
Q29udGV4dDwmQ1NQRGlyZWN0aXZlTGlzdDo6YWxsb3dJbmxpbmVFdmVudEhhbmRsZXJzPihtX3Bv
bGljaWVzLCBjb250ZXh0VVJMLCBjb250ZXh0TGluZSk7CiB9CiAKLWJvb2wgQ29udGVudFNlY3Vy
aXR5UG9saWN5OjphbGxvd0lubGluZVNjcmlwdCgpIGNvbnN0Citib29sIENvbnRlbnRTZWN1cml0
eVBvbGljeTo6YWxsb3dJbmxpbmVTY3JpcHQoY29uc3QgU3RyaW5nJiBjb250ZXh0VVJMLCBjb25z
dCBXVEY6Ok9yZGluYWxOdW1iZXImIGNvbnRleHRMaW5lKSBjb25zdAogewotICAgIHJldHVybiBp
c0FsbG93ZWRCeUFsbDwmQ1NQRGlyZWN0aXZlTGlzdDo6YWxsb3dJbmxpbmVTY3JpcHQ+KG1fcG9s
aWNpZXMpOworICAgIHJldHVybiBpc0FsbG93ZWRCeUFsbFdpdGhDb250ZXh0PCZDU1BEaXJlY3Rp
dmVMaXN0OjphbGxvd0lubGluZVNjcmlwdD4obV9wb2xpY2llcywgY29udGV4dFVSTCwgY29udGV4
dExpbmUpOwogfQogCi1ib29sIENvbnRlbnRTZWN1cml0eVBvbGljeTo6YWxsb3dJbmxpbmVTdHls
ZSgpIGNvbnN0Citib29sIENvbnRlbnRTZWN1cml0eVBvbGljeTo6YWxsb3dJbmxpbmVTdHlsZShj
b25zdCBTdHJpbmcmIGNvbnRleHRVUkwsIGNvbnN0IFdURjo6T3JkaW5hbE51bWJlciYgY29udGV4
dExpbmUpIGNvbnN0CiB7CiAgICAgaWYgKG1fb3ZlcnJpZGVJbmxpbmVTdHlsZUFsbG93ZWQpCiAg
ICAgICAgIHJldHVybiB0cnVlOwotICAgIHJldHVybiBpc0FsbG93ZWRCeUFsbDwmQ1NQRGlyZWN0
aXZlTGlzdDo6YWxsb3dJbmxpbmVTdHlsZT4obV9wb2xpY2llcyk7CisgICAgcmV0dXJuIGlzQWxs
b3dlZEJ5QWxsV2l0aENvbnRleHQ8JkNTUERpcmVjdGl2ZUxpc3Q6OmFsbG93SW5saW5lU3R5bGU+
KG1fcG9saWNpZXMsIGNvbnRleHRVUkwsIGNvbnRleHRMaW5lKTsKIH0KIAogYm9vbCBDb250ZW50
U2VjdXJpdHlQb2xpY3k6OmFsbG93RXZhbChQYXNzUmVmUHRyPFNjcmlwdENhbGxTdGFjaz4gY2Fs
bFN0YWNrKSBjb25zdApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGFnZS9Db250ZW50U2Vj
dXJpdHlQb2xpY3kuaCBiL1NvdXJjZS9XZWJDb3JlL3BhZ2UvQ29udGVudFNlY3VyaXR5UG9saWN5
LmgKaW5kZXggMTljNDY1ZTNiMDBlY2EyYzM5NzgwNTY4ZjY1Yzg1NzJiMWQ3NzNkYS4uN2FjNjBk
OWQ3ZmZiNTc4MmNiZDE4ZTc2NjJkNjllOTllYzNiODJkNCAxMDA2NDQKLS0tIGEvU291cmNlL1dl
YkNvcmUvcGFnZS9Db250ZW50U2VjdXJpdHlQb2xpY3kuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9w
YWdlL0NvbnRlbnRTZWN1cml0eVBvbGljeS5oCkBAIC0zMSw2ICszMSwxMCBAQAogI2luY2x1ZGUg
PHd0Zi9WZWN0b3IuaD4KICNpbmNsdWRlIDx3dGYvdGV4dC9XVEZTdHJpbmcuaD4KIAorbmFtZXNw
YWNlIFdURiB7CitjbGFzcyBPcmRpbmFsTnVtYmVyOworfQorCiBuYW1lc3BhY2UgV2ViQ29yZSB7
CiAKIGNsYXNzIENTUERpcmVjdGl2ZUxpc3Q7CkBAIC02MiwxMCArNjYsMTAgQEAgcHVibGljOgog
ICAgIGNvbnN0IFN0cmluZyYgZGVwcmVjYXRlZEhlYWRlcigpIGNvbnN0OwogICAgIEhlYWRlclR5
cGUgZGVwcmVjYXRlZEhlYWRlclR5cGUoKSBjb25zdDsKIAotICAgIGJvb2wgYWxsb3dKYXZhU2Ny
aXB0VVJMcygpIGNvbnN0OwotICAgIGJvb2wgYWxsb3dJbmxpbmVFdmVudEhhbmRsZXJzKCkgY29u
c3Q7Ci0gICAgYm9vbCBhbGxvd0lubGluZVNjcmlwdCgpIGNvbnN0OwotICAgIGJvb2wgYWxsb3dJ
bmxpbmVTdHlsZSgpIGNvbnN0OworICAgIGJvb2wgYWxsb3dKYXZhU2NyaXB0VVJMcyhjb25zdCBT
dHJpbmcmIGNvbnRleHRVUkwsIGNvbnN0IFdURjo6T3JkaW5hbE51bWJlciYgY29udGV4dExpbmUp
IGNvbnN0OworICAgIGJvb2wgYWxsb3dJbmxpbmVFdmVudEhhbmRsZXJzKGNvbnN0IFN0cmluZyYg
Y29udGV4dFVSTCwgY29uc3QgV1RGOjpPcmRpbmFsTnVtYmVyJiBjb250ZXh0TGluZSkgY29uc3Q7
CisgICAgYm9vbCBhbGxvd0lubGluZVNjcmlwdChjb25zdCBTdHJpbmcmIGNvbnRleHRVUkwsIGNv
bnN0IFdURjo6T3JkaW5hbE51bWJlciYgY29udGV4dExpbmUpIGNvbnN0OworICAgIGJvb2wgYWxs
b3dJbmxpbmVTdHlsZShjb25zdCBTdHJpbmcmIGNvbnRleHRVUkwsIGNvbnN0IFdURjo6T3JkaW5h
bE51bWJlciYgY29udGV4dExpbmUpIGNvbnN0OwogICAgIGJvb2wgYWxsb3dFdmFsKFBhc3NSZWZQ
dHI8U2NyaXB0Q2FsbFN0YWNrPikgY29uc3Q7CiAKICAgICBib29sIGFsbG93U2NyaXB0RnJvbVNv
dXJjZShjb25zdCBLVVJMJikgY29uc3Q7CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9DaGFuZ2VM
b2cgYi9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKaW5kZXggMDNiMjQ3NGY1MzkxMTc5ZGM5NWIwZGFj
M2I1OTU1NzVlMDFiMzgwZS4uMzhhZTE5ZTk1ZWMxMTAxMGY4Yjk2N2M3MDg4MDdmYjVkYTY4MzMx
ZCAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCisrKyBiL0xheW91dFRlc3RzL0No
YW5nZUxvZwpAQCAtMSwzICsxLDM2IEBACisyMDEyLTA1LTI1ICBNaWtlIFdlc3QgIDxta3dzdEBj
aHJvbWl1bS5vcmc+CisKKyAgICAgICAgSW5saW5lIHNjcmlwdCBhbmQgc3R5bGUgYmxvY2tlZCBi
eSBDb250ZW50IFNlY3VyaXR5IFBvbGljeSBzaG91bGQgcHJvdmlkZSBtb3JlIGRldGFpbGVkIGNv
bnNvbGUgZXJyb3JzLgorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5j
Z2k/aWQ9ODY4NDgKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAg
ICAgICAqIGh0dHAvdGVzdHMvc2VjdXJpdHkvY29udGVudFNlY3VyaXR5UG9saWN5L2NvbWJpbmUt
bXVsdGlwbGUtcG9saWNpZXMtZXhwZWN0ZWQudHh0OgorICAgICAgICAqIGh0dHAvdGVzdHMvc2Vj
dXJpdHkvY29udGVudFNlY3VyaXR5UG9saWN5L2RlZmF1bHQtc3JjLWlubGluZS1ibG9ja2VkLWV4
cGVjdGVkLnR4dDoKKyAgICAgICAgKiBodHRwL3Rlc3RzL3NlY3VyaXR5L2NvbnRlbnRTZWN1cml0
eVBvbGljeS9pbmplY3RlZC1pbmxpbmUtc2NyaXB0LWFsbG93ZWQtZXhwZWN0ZWQudHh0OiBBZGRl
ZC4KKyAgICAgICAgKiBodHRwL3Rlc3RzL3NlY3VyaXR5L2NvbnRlbnRTZWN1cml0eVBvbGljeS9p
bmplY3RlZC1pbmxpbmUtc2NyaXB0LWFsbG93ZWQuaHRtbDogQWRkZWQuCisgICAgICAgICogaHR0
cC90ZXN0cy9zZWN1cml0eS9jb250ZW50U2VjdXJpdHlQb2xpY3kvaW5qZWN0ZWQtaW5saW5lLXNj
cmlwdC1ibG9ja2VkLWV4cGVjdGVkLnR4dDogQ29waWVkIGZyb20gTGF5b3V0VGVzdHMvaHR0cC90
ZXN0cy9zZWN1cml0eS9jb250ZW50U2VjdXJpdHlQb2xpY3kvaW5saW5lLXNjcmlwdC1ibG9ja2Vk
LWV4cGVjdGVkLnR4dC4KKyAgICAgICAgKiBodHRwL3Rlc3RzL3NlY3VyaXR5L2NvbnRlbnRTZWN1
cml0eVBvbGljeS9pbmplY3RlZC1pbmxpbmUtc2NyaXB0LWJsb2NrZWQuaHRtbDogQWRkZWQuCisg
ICAgICAgICogaHR0cC90ZXN0cy9zZWN1cml0eS9jb250ZW50U2VjdXJpdHlQb2xpY3kvaW5qZWN0
ZWQtaW5saW5lLXN0eWxlLWFsbG93ZWQtZXhwZWN0ZWQudHh0OiBBZGRlZC4KKyAgICAgICAgKiBo
dHRwL3Rlc3RzL3NlY3VyaXR5L2NvbnRlbnRTZWN1cml0eVBvbGljeS9pbmplY3RlZC1pbmxpbmUt
c3R5bGUtYWxsb3dlZC5odG1sOiBBZGRlZC4KKyAgICAgICAgKiBodHRwL3Rlc3RzL3NlY3VyaXR5
L2NvbnRlbnRTZWN1cml0eVBvbGljeS9pbmplY3RlZC1pbmxpbmUtc3R5bGUtYmxvY2tlZC1leHBl
Y3RlZC50eHQ6IEFkZGVkLgorICAgICAgICAqIGh0dHAvdGVzdHMvc2VjdXJpdHkvY29udGVudFNl
Y3VyaXR5UG9saWN5L2luamVjdGVkLWlubGluZS1zdHlsZS1ibG9ja2VkLmh0bWw6IEFkZGVkLgor
ICAgICAgICAqIGh0dHAvdGVzdHMvc2VjdXJpdHkvY29udGVudFNlY3VyaXR5UG9saWN5L2lubGlu
ZS1zY3JpcHQtYmxvY2tlZC1leHBlY3RlZC50eHQ6CisgICAgICAgICogaHR0cC90ZXN0cy9zZWN1
cml0eS9jb250ZW50U2VjdXJpdHlQb2xpY3kvaW5saW5lLXNjcmlwdC1ibG9ja2VkLWdvb2Z5LWV4
cGVjdGVkLnR4dDoKKyAgICAgICAgKiBodHRwL3Rlc3RzL3NlY3VyaXR5L2NvbnRlbnRTZWN1cml0
eVBvbGljeS9pbmxpbmUtc2NyaXB0LWJsb2NrZWQtamF2YXNjcmlwdC11cmwtZXhwZWN0ZWQudHh0
OgorICAgICAgICAqIGh0dHAvdGVzdHMvc2VjdXJpdHkvY29udGVudFNlY3VyaXR5UG9saWN5L2lu
bGluZS1zdHlsZS1hdHRyaWJ1dGUtYmxvY2tlZC1leHBlY3RlZC50eHQ6CisgICAgICAgICogaHR0
cC90ZXN0cy9zZWN1cml0eS9jb250ZW50U2VjdXJpdHlQb2xpY3kvaW5saW5lLXN0eWxlLWJsb2Nr
ZWQtZXhwZWN0ZWQudHh0OgorICAgICAgICAqIGh0dHAvdGVzdHMvc2VjdXJpdHkvY29udGVudFNl
Y3VyaXR5UG9saWN5L2phdmFzY3JpcHQtdXJsLWJsb2NrZWQtZXhwZWN0ZWQudHh0OgorICAgICAg
ICAqIGh0dHAvdGVzdHMvc2VjdXJpdHkvY29udGVudFNlY3VyaXR5UG9saWN5L3JlcG9ydC1hbmQt
ZW5mb3JjZS1leHBlY3RlZC50eHQ6CisgICAgICAgICogaHR0cC90ZXN0cy9zZWN1cml0eS9jb250
ZW50U2VjdXJpdHlQb2xpY3kvcmVwb3J0LW9ubHktZXhwZWN0ZWQudHh0OgorICAgICAgICAqIGh0
dHAvdGVzdHMvc2VjdXJpdHkvY29udGVudFNlY3VyaXR5UG9saWN5L3JlcG9ydC1vbmx5LWZyb20t
aGVhZGVyLWV4cGVjdGVkLnR4dDoKKyAgICAgICAgKiBodHRwL3Rlc3RzL3NlY3VyaXR5L2NvbnRl
bnRTZWN1cml0eVBvbGljeS9yZXBvcnQtdXJpLWV4cGVjdGVkLnR4dDoKKyAgICAgICAgKiBodHRw
L3Rlc3RzL3NlY3VyaXR5L2NvbnRlbnRTZWN1cml0eVBvbGljeS9yZXBvcnQtdXJpLWZyb20tY2hp
bGQtZnJhbWUtZXhwZWN0ZWQudHh0OgorICAgICAgICAqIGh0dHAvdGVzdHMvc2VjdXJpdHkvY29u
dGVudFNlY3VyaXR5UG9saWN5L3Jlc291cmNlcy9pbmplY3Qtc2NyaXB0LmpzOiBBZGRlZC4KKyAg
ICAgICAgKiBodHRwL3Rlc3RzL3NlY3VyaXR5L2NvbnRlbnRTZWN1cml0eVBvbGljeS9yZXNvdXJj
ZXMvaW5qZWN0LXN0eWxlLmpzOiBBZGRlZC4KKyAgICAgICAgKiBodHRwL3Rlc3RzL3NlY3VyaXR5
L2NvbnRlbnRTZWN1cml0eVBvbGljeS9zY3JpcHQtc3JjLW5vbmUtaW5saW5lLWV2ZW50LWV4cGVj
dGVkLnR4dDoKKyAgICAgICAgKiBodHRwL3Rlc3RzL3NlY3VyaXR5L2NvbnRlbnRTZWN1cml0eVBv
bGljeS9zcmNkb2MtZG9lc250LWJ5cGFzcy1zY3JpcHQtc3JjLWV4cGVjdGVkLnR4dDoKKwogMjAx
Mi0wNS0yMyAgS2FuZ2lsIEhhbiAgPGthbmdpbC5oYW5Ac2Ftc3VuZy5jb20+CiAKICAgICAgICAg
W0VGTF1bRFJUXSBGaXggV2ViQ29yZSBsaWJyYXJ5IHBhdGggYW5kIHJlYmFzZWxpbmUgcmVzdWx0
CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3NlY3VyaXR5L2NvbnRlbnRTZWN1
cml0eVBvbGljeS9jb21iaW5lLW11bHRpcGxlLXBvbGljaWVzLWV4cGVjdGVkLnR4dCBiL0xheW91
dFRlc3RzL2h0dHAvdGVzdHMvc2VjdXJpdHkvY29udGVudFNlY3VyaXR5UG9saWN5L2NvbWJpbmUt
bXVsdGlwbGUtcG9saWNpZXMtZXhwZWN0ZWQudHh0CmluZGV4IDc1NjA0MTkwZmIzZWIyMjY4MDNl
ZDAwNzM3MWQwYjY2NzRjNDJjODguLjAxMjRmZThiYWI5ZTRmMTQxZDdlOTcyYWQ2ZGY1ODRhMTE5
OTExM2MgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvc2VjdXJpdHkvY29udGVu
dFNlY3VyaXR5UG9saWN5L2NvbWJpbmUtbXVsdGlwbGUtcG9saWNpZXMtZXhwZWN0ZWQudHh0Cisr
KyBiL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvc2VjdXJpdHkvY29udGVudFNlY3VyaXR5UG9saWN5
L2NvbWJpbmUtbXVsdGlwbGUtcG9saWNpZXMtZXhwZWN0ZWQudHh0CkBAIC0xLDUgKzEsNSBAQAot
Q09OU09MRSBNRVNTQUdFOiBSZWZ1c2VkIHRvIGV4ZWN1dGUgaW5saW5lIHNjcmlwdCBiZWNhdXNl
IGl0IHZpb2xhdGVzIHRoZSBmb2xsb3dpbmcgQ29udGVudCBTZWN1cml0eSBQb2xpY3kgZGlyZWN0
aXZlOiAic2NyaXB0LXNyYyAnc2VsZiciLgorQ09OU09MRSBNRVNTQUdFOiBsaW5lIDExOiBSZWZ1
c2VkIHRvIGV4ZWN1dGUgaW5saW5lIHNjcmlwdCBiZWNhdXNlIGl0IHZpb2xhdGVzIHRoZSBmb2xs
b3dpbmcgQ29udGVudCBTZWN1cml0eSBQb2xpY3kgZGlyZWN0aXZlOiAic2NyaXB0LXNyYyAnc2Vs
ZiciLgogCi1DT05TT0xFIE1FU1NBR0U6IFJlZnVzZWQgdG8gYXBwbHkgaW5saW5lIHN0eWxlIGJl
Y2F1c2UgaXQgdmlvbGF0ZXMgdGhlIGZvbGxvd2luZyBDb250ZW50IFNlY3VyaXR5IFBvbGljeSBk
aXJlY3RpdmU6ICJzdHlsZS1zcmMgJ25vbmUnIi4KK0NPTlNPTEUgTUVTU0FHRTogbGluZSAxNDog
UmVmdXNlZCB0byBhcHBseSBpbmxpbmUgc3R5bGUgYmVjYXVzZSBpdCB2aW9sYXRlcyB0aGUgZm9s
bG93aW5nIENvbnRlbnQgU2VjdXJpdHkgUG9saWN5IGRpcmVjdGl2ZTogInN0eWxlLXNyYyAnbm9u
ZSciLgogCiBUaGlzIHRlc3QgY2hlY2tzIHRoYXQgd2UgZW5mb3JjZSBhbGwgdGhlIHN1cHBsaWVk
IHBvbGljaWVzLiBUaGlzIHRlc3QgcGFzc2VzIGlmIGl0IGRvZXNuJ3QgYWxlcnQgZmFpbCBhbmQg
aWYgdGhlIHN0eWxlIGRvZXNuJ3QgYXBwbHkuCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9odHRw
L3Rlc3RzL3NlY3VyaXR5L2NvbnRlbnRTZWN1cml0eVBvbGljeS9kZWZhdWx0LXNyYy1pbmxpbmUt
YmxvY2tlZC1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3NlY3VyaXR5L2Nv
bnRlbnRTZWN1cml0eVBvbGljeS9kZWZhdWx0LXNyYy1pbmxpbmUtYmxvY2tlZC1leHBlY3RlZC50
eHQKaW5kZXggZDY4NWNhZGQyOTVhOTFmNGRmMDQ2NDY5NTIyYWE4YjlhMzExYTg4YS4uMDI5MTVi
ZDA1OTNmNjc3Yzc5ODhlYzQzYjI3NWQ3ZWY5MWE0NWQ5MyAxMDA2NDQKLS0tIGEvTGF5b3V0VGVz
dHMvaHR0cC90ZXN0cy9zZWN1cml0eS9jb250ZW50U2VjdXJpdHlQb2xpY3kvZGVmYXVsdC1zcmMt
aW5saW5lLWJsb2NrZWQtZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL2h0dHAvdGVzdHMv
c2VjdXJpdHkvY29udGVudFNlY3VyaXR5UG9saWN5L2RlZmF1bHQtc3JjLWlubGluZS1ibG9ja2Vk
LWV4cGVjdGVkLnR4dApAQCAtMSw0ICsxLDQgQEAKLUNPTlNPTEUgTUVTU0FHRTogUmVmdXNlZCB0
byBleGVjdXRlIGlubGluZSBzY3JpcHQgYmVjYXVzZSBpdCB2aW9sYXRlcyB0aGUgZm9sbG93aW5n
IENvbnRlbnQgU2VjdXJpdHkgUG9saWN5IGRpcmVjdGl2ZTogImRlZmF1bHQtc3JjICdzZWxmJyIu
CitDT05TT0xFIE1FU1NBR0U6IGxpbmUgOTogUmVmdXNlZCB0byBleGVjdXRlIGlubGluZSBzY3Jp
cHQgYmVjYXVzZSBpdCB2aW9sYXRlcyB0aGUgZm9sbG93aW5nIENvbnRlbnQgU2VjdXJpdHkgUG9s
aWN5IGRpcmVjdGl2ZTogImRlZmF1bHQtc3JjICdzZWxmJyIuCiAKIENPTlNPTEUgTUVTU0FHRTog
UmVmdXNlZCB0byBleGVjdXRlIGlubGluZSBzY3JpcHQgYmVjYXVzZSBpdCB2aW9sYXRlcyB0aGUg
Zm9sbG93aW5nIENvbnRlbnQgU2VjdXJpdHkgUG9saWN5IGRpcmVjdGl2ZTogImRlZmF1bHQtc3Jj
ICdzZWxmJyIuCiAKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvc2VjdXJpdHkv
Y29udGVudFNlY3VyaXR5UG9saWN5L2luamVjdGVkLWlubGluZS1zY3JpcHQtYWxsb3dlZC1leHBl
Y3RlZC50eHQgYi9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3NlY3VyaXR5L2NvbnRlbnRTZWN1cml0
eVBvbGljeS9pbmplY3RlZC1pbmxpbmUtc2NyaXB0LWFsbG93ZWQtZXhwZWN0ZWQudHh0Cm5ldyBm
aWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAuLmFhOTg1OGJmMGU1MzZkZmI0N2UwZDNiNjY0NjhhZjQ3ZjYzMzQ1ZWYKLS0tIC9kZXYv
bnVsbAorKysgYi9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3NlY3VyaXR5L2NvbnRlbnRTZWN1cml0
eVBvbGljeS9pbmplY3RlZC1pbmxpbmUtc2NyaXB0LWFsbG93ZWQtZXhwZWN0ZWQudHh0CkBAIC0w
LDAgKzEsMyBAQAorQUxFUlQ6IFBhc3MgMSBvZiAyCitBTEVSVDogUGFzcyAyIG9mIDIKKwpkaWZm
IC0tZ2l0IGEvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9zZWN1cml0eS9jb250ZW50U2VjdXJpdHlQ
b2xpY3kvaW5qZWN0ZWQtaW5saW5lLXNjcmlwdC1hbGxvd2VkLmh0bWwgYi9MYXlvdXRUZXN0cy9o
dHRwL3Rlc3RzL3NlY3VyaXR5L2NvbnRlbnRTZWN1cml0eVBvbGljeS9pbmplY3RlZC1pbmxpbmUt
c2NyaXB0LWFsbG93ZWQuaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5jZWIyN2Q1YmFmYjcyNWQxYzU0NTdiNzVj
YmNjYTJiNzJmZmEzNWNlCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvaHR0cC90ZXN0
cy9zZWN1cml0eS9jb250ZW50U2VjdXJpdHlQb2xpY3kvaW5qZWN0ZWQtaW5saW5lLXNjcmlwdC1h
bGxvd2VkLmh0bWwKQEAgLTAsMCArMSwxMCBAQAorPCFET0NUWVBFIGh0bWw+Cis8aHRtbD4KKzxo
ZWFkPgorPG1ldGEgaHR0cC1lcXVpdj0iWC1XZWJLaXQtQ1NQIiBjb250ZW50PSJzY3JpcHQtc3Jj
IGh0dHA6Ly8xMjcuMC4wLjE6KiAndW5zYWZlLWlubGluZSciPgorPHNjcmlwdCBzcmM9InJlc291
cmNlcy9kdW1wLWFzLXRleHQuanMiPjwvc2NyaXB0PgorPC9oZWFkPgorPGJvZHk+Cis8c2NyaXB0
IHNyYz0icmVzb3VyY2VzL2luamVjdC1zY3JpcHQuanMiPjwvc2NyaXB0PgorPC9ib2R5PgorPC9o
dG1sPgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9zZWN1cml0eS9jb250ZW50
U2VjdXJpdHlQb2xpY3kvaW5qZWN0ZWQtaW5saW5lLXNjcmlwdC1ibG9ja2VkLWV4cGVjdGVkLnR4
dCBiL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvc2VjdXJpdHkvY29udGVudFNlY3VyaXR5UG9saWN5
L2luamVjdGVkLWlubGluZS1zY3JpcHQtYmxvY2tlZC1leHBlY3RlZC50eHQKbmV3IGZpbGUgbW9k
ZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4u
YzE1OWVhODVlYmMxZTk5OGM4ZTc2OGJmY2NjOGFlYzE5NzkzMzgzMgotLS0gL2Rldi9udWxsCisr
KyBiL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvc2VjdXJpdHkvY29udGVudFNlY3VyaXR5UG9saWN5
L2luamVjdGVkLWlubGluZS1zY3JpcHQtYmxvY2tlZC1leHBlY3RlZC50eHQKQEAgLTAsMCArMSw1
IEBACitDT05TT0xFIE1FU1NBR0U6IFJlZnVzZWQgdG8gZXhlY3V0ZSBpbmxpbmUgc2NyaXB0IGJl
Y2F1c2UgaXQgdmlvbGF0ZXMgdGhlIGZvbGxvd2luZyBDb250ZW50IFNlY3VyaXR5IFBvbGljeSBk
aXJlY3RpdmU6ICJzY3JpcHQtc3JjIGh0dHA6Ly8xMjcuMC4wLjE6KiIuCisKK0NPTlNPTEUgTUVT
U0FHRTogUmVmdXNlZCB0byBleGVjdXRlIGlubGluZSBzY3JpcHQgYmVjYXVzZSBpdCB2aW9sYXRl
cyB0aGUgZm9sbG93aW5nIENvbnRlbnQgU2VjdXJpdHkgUG9saWN5IGRpcmVjdGl2ZTogInNjcmlw
dC1zcmMgaHR0cDovLzEyNy4wLjAuMToqIi4KKworCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9o
dHRwL3Rlc3RzL3NlY3VyaXR5L2NvbnRlbnRTZWN1cml0eVBvbGljeS9pbmplY3RlZC1pbmxpbmUt
c2NyaXB0LWJsb2NrZWQuaHRtbCBiL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvc2VjdXJpdHkvY29u
dGVudFNlY3VyaXR5UG9saWN5L2luamVjdGVkLWlubGluZS1zY3JpcHQtYmxvY2tlZC5odG1sCm5l
dyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAuLjYxMDg2OGI3ZWM3NmI1MDNhYmJkNDkzYzMyYjE1NDRmZDM5Mzc4YmIKLS0tIC9k
ZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3NlY3VyaXR5L2NvbnRlbnRTZWN1
cml0eVBvbGljeS9pbmplY3RlZC1pbmxpbmUtc2NyaXB0LWJsb2NrZWQuaHRtbApAQCAtMCwwICsx
LDEwIEBACis8IURPQ1RZUEUgaHRtbD4KKzxodG1sPgorPGhlYWQ+Cis8bWV0YSBodHRwLWVxdWl2
PSJYLVdlYktpdC1DU1AiIGNvbnRlbnQ9InNjcmlwdC1zcmMgaHR0cDovLzEyNy4wLjAuMToqIj4K
KzxzY3JpcHQgc3JjPSJyZXNvdXJjZXMvZHVtcC1hcy10ZXh0LmpzIj48L3NjcmlwdD4KKzwvaGVh
ZD4KKzxib2R5PgorPHNjcmlwdCBzcmM9InJlc291cmNlcy9pbmplY3Qtc2NyaXB0LmpzIj48L3Nj
cmlwdD4KKzwvYm9keT4KKzwvaHRtbD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2h0dHAvdGVz
dHMvc2VjdXJpdHkvY29udGVudFNlY3VyaXR5UG9saWN5L2luamVjdGVkLWlubGluZS1zdHlsZS1h
bGxvd2VkLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvc2VjdXJpdHkvY29u
dGVudFNlY3VyaXR5UG9saWN5L2luamVjdGVkLWlubGluZS1zdHlsZS1hbGxvd2VkLWV4cGVjdGVk
LnR4dApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwLi40MzgxOGE5MzhmZDhiNGNmYjJjZjk2M2M1ZmEwMzExMGNiNmVmMzUx
Ci0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9zZWN1cml0eS9jb250
ZW50U2VjdXJpdHlQb2xpY3kvaW5qZWN0ZWQtaW5saW5lLXN0eWxlLWFsbG93ZWQtZXhwZWN0ZWQu
dHh0CkBAIC0wLDAgKzEgQEAKK1BBU1M6IDIgc3R5bGVzaGVldHMgb24gdGhlIHBhZ2UuCmRpZmYg
LS1naXQgYS9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3NlY3VyaXR5L2NvbnRlbnRTZWN1cml0eVBv
bGljeS9pbmplY3RlZC1pbmxpbmUtc3R5bGUtYWxsb3dlZC5odG1sIGIvTGF5b3V0VGVzdHMvaHR0
cC90ZXN0cy9zZWN1cml0eS9jb250ZW50U2VjdXJpdHlQb2xpY3kvaW5qZWN0ZWQtaW5saW5lLXN0
eWxlLWFsbG93ZWQuaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5kNzJmZDM2NzUwNGRmMTZjMzdjOWRkYWFhNDBk
Y2UwNTBjN2ViYzdjCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9z
ZWN1cml0eS9jb250ZW50U2VjdXJpdHlQb2xpY3kvaW5qZWN0ZWQtaW5saW5lLXN0eWxlLWFsbG93
ZWQuaHRtbApAQCAtMCwwICsxLDIyIEBACis8IURPQ1RZUEUgaHRtbD4KKzxodG1sPgorPGhlYWQ+
Cis8bWV0YSBodHRwLWVxdWl2PSJYLVdlYktpdC1DU1AiIGNvbnRlbnQ9InN0eWxlLXNyYyAndW5z
YWZlLWlubGluZSciPgorPHNjcmlwdCBzcmM9InJlc291cmNlcy9kdW1wLWFzLXRleHQuanMiPjwv
c2NyaXB0PgorPC9oZWFkPgorPGJvZHk+Cis8ZGl2IGlkPSJ0ZXN0MSI+CisgIEZBSUwgMS8yCis8
L2Rpdj4KKzxkaXYgaWQ9InRlc3QyIj4KKyAgRkFJTCAyLzIKKzwvZGl2PgorPHNjcmlwdCBzcmM9
InJlc291cmNlcy9pbmplY3Qtc3R5bGUuanMiPjwvc2NyaXB0PgorPHNjcmlwdD4KKyAgaWYgKGRv
Y3VtZW50LnN0eWxlU2hlZXRzLmxlbmd0aCA9PT0gMikKKyAgICBkb2N1bWVudC53cml0ZSgiUEFT
UzogMiBzdHlsZXNoZWV0cyBvbiB0aGUgcGFnZS4iKTsKKyAgZWxzZQorICAgIGRvY3VtZW50Lndy
aXRlKCJGQUlMOiAiICsgZG9jdW1lbnQuc3R5bGVTaGVldHMubGVuZ3RoICsgIiBzdHlsZXNoZWV0
cyBvbiB0aGUgcGFnZSAoc2hvdWxkIGJlIDIpLiIpOworPC9zY3JpcHQ+Cis8L2JvZHk+Cis8L2h0
bWw+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3NlY3VyaXR5L2NvbnRlbnRT
ZWN1cml0eVBvbGljeS9pbmplY3RlZC1pbmxpbmUtc3R5bGUtYmxvY2tlZC1leHBlY3RlZC50eHQg
Yi9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3NlY3VyaXR5L2NvbnRlbnRTZWN1cml0eVBvbGljeS9p
bmplY3RlZC1pbmxpbmUtc3R5bGUtYmxvY2tlZC1leHBlY3RlZC50eHQKbmV3IGZpbGUgbW9kZSAx
MDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uZTI2
NDFkMTY1NzdlNWU2ZmIxZTQ2ZDEwNDhkNWEyOGViMDRkOTkwOAotLS0gL2Rldi9udWxsCisrKyBi
L0xheW91dFRlc3RzL2h0dHAvdGVzdHMvc2VjdXJpdHkvY29udGVudFNlY3VyaXR5UG9saWN5L2lu
amVjdGVkLWlubGluZS1zdHlsZS1ibG9ja2VkLWV4cGVjdGVkLnR4dApAQCAtMCwwICsxLDcgQEAK
K0NPTlNPTEUgTUVTU0FHRTogUmVmdXNlZCB0byBhcHBseSBpbmxpbmUgc3R5bGUgYmVjYXVzZSBp
dCB2aW9sYXRlcyB0aGUgZm9sbG93aW5nIENvbnRlbnQgU2VjdXJpdHkgUG9saWN5IGRpcmVjdGl2
ZTogInN0eWxlLXNyYyAnbm9uZSciLgorCitDT05TT0xFIE1FU1NBR0U6IFJlZnVzZWQgdG8gYXBw
bHkgaW5saW5lIHN0eWxlIGJlY2F1c2UgaXQgdmlvbGF0ZXMgdGhlIGZvbGxvd2luZyBDb250ZW50
IFNlY3VyaXR5IFBvbGljeSBkaXJlY3RpdmU6ICJzdHlsZS1zcmMgJ25vbmUnIi4KKworUEFTUyAx
LzIKK1BBU1MgMi8yCiswCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3NlY3Vy
aXR5L2NvbnRlbnRTZWN1cml0eVBvbGljeS9pbmplY3RlZC1pbmxpbmUtc3R5bGUtYmxvY2tlZC5o
dG1sIGIvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9zZWN1cml0eS9jb250ZW50U2VjdXJpdHlQb2xp
Y3kvaW5qZWN0ZWQtaW5saW5lLXN0eWxlLWJsb2NrZWQuaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0
NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5hMGM4Zjgy
YmE0MTgzYjg5MDQ2N2IzMzMzZjg3MzA4NzYwYTA5OWVlCi0tLSAvZGV2L251bGwKKysrIGIvTGF5
b3V0VGVzdHMvaHR0cC90ZXN0cy9zZWN1cml0eS9jb250ZW50U2VjdXJpdHlQb2xpY3kvaW5qZWN0
ZWQtaW5saW5lLXN0eWxlLWJsb2NrZWQuaHRtbApAQCAtMCwwICsxLDE5IEBACis8IURPQ1RZUEUg
aHRtbD4KKzxodG1sPgorPGhlYWQ+Cis8bWV0YSBodHRwLWVxdWl2PSJYLVdlYktpdC1DU1AiIGNv
bnRlbnQ9InN0eWxlLXNyYyAnbm9uZSciPgorPHNjcmlwdCBzcmM9InJlc291cmNlcy9kdW1wLWFz
LXRleHQuanMiPjwvc2NyaXB0PgorPC9oZWFkPgorPGJvZHk+Cis8ZGl2IGlkPSJ0ZXN0MSI+Cisg
IFBBU1MgMS8yCis8L2Rpdj4KKzxkaXYgaWQ9InRlc3QyIj4KKyAgUEFTUyAyLzIKKzwvZGl2Pgor
PHNjcmlwdCBzcmM9InJlc291cmNlcy9pbmplY3Qtc3R5bGUuanMiPjwvc2NyaXB0PgorPHNjcmlw
dD4KK2RvY3VtZW50LndyaXRlKGRvY3VtZW50LnN0eWxlU2hlZXRzLmxlbmd0aCk7Cis8L3Njcmlw
dD4KKzwvYm9keT4KKzwvaHRtbD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2h0dHAvdGVzdHMv
c2VjdXJpdHkvY29udGVudFNlY3VyaXR5UG9saWN5L2lubGluZS1zY3JpcHQtYmxvY2tlZC1leHBl
Y3RlZC50eHQgYi9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3NlY3VyaXR5L2NvbnRlbnRTZWN1cml0
eVBvbGljeS9pbmxpbmUtc2NyaXB0LWJsb2NrZWQtZXhwZWN0ZWQudHh0CmluZGV4IDBjZWFkNjEz
ZWRhNzU0ZTU5MjdjYzhkMWNkNzg1NTRjNjMyMTY1MTIuLjU4NGExM2IzZmJjMTA1MmY4NzA4ZWJh
ZTljNjNjOTUxZjNiZDM3YzUgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvc2Vj
dXJpdHkvY29udGVudFNlY3VyaXR5UG9saWN5L2lubGluZS1zY3JpcHQtYmxvY2tlZC1leHBlY3Rl
ZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9zZWN1cml0eS9jb250ZW50U2VjdXJp
dHlQb2xpY3kvaW5saW5lLXNjcmlwdC1ibG9ja2VkLWV4cGVjdGVkLnR4dApAQCAtMSw0ICsxLDQg
QEAKLUNPTlNPTEUgTUVTU0FHRTogUmVmdXNlZCB0byBleGVjdXRlIGlubGluZSBzY3JpcHQgYmVj
YXVzZSBpdCB2aW9sYXRlcyB0aGUgZm9sbG93aW5nIENvbnRlbnQgU2VjdXJpdHkgUG9saWN5IGRp
cmVjdGl2ZTogInNjcmlwdC1zcmMgaHR0cDovLzEyNy4wLjAuMToqIi4KK0NPTlNPTEUgTUVTU0FH
RTogbGluZSA5OiBSZWZ1c2VkIHRvIGV4ZWN1dGUgaW5saW5lIHNjcmlwdCBiZWNhdXNlIGl0IHZp
b2xhdGVzIHRoZSBmb2xsb3dpbmcgQ29udGVudCBTZWN1cml0eSBQb2xpY3kgZGlyZWN0aXZlOiAi
c2NyaXB0LXNyYyBodHRwOi8vMTI3LjAuMC4xOioiLgogCiBDT05TT0xFIE1FU1NBR0U6IFJlZnVz
ZWQgdG8gZXhlY3V0ZSBpbmxpbmUgc2NyaXB0IGJlY2F1c2UgaXQgdmlvbGF0ZXMgdGhlIGZvbGxv
d2luZyBDb250ZW50IFNlY3VyaXR5IFBvbGljeSBkaXJlY3RpdmU6ICJzY3JpcHQtc3JjIGh0dHA6
Ly8xMjcuMC4wLjE6KiIuCiAKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvc2Vj
dXJpdHkvY29udGVudFNlY3VyaXR5UG9saWN5L2lubGluZS1zY3JpcHQtYmxvY2tlZC1nb29meS1l
eHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3NlY3VyaXR5L2NvbnRlbnRTZWN1
cml0eVBvbGljeS9pbmxpbmUtc2NyaXB0LWJsb2NrZWQtZ29vZnktZXhwZWN0ZWQudHh0CmluZGV4
IDViYjA0NWM3Yzk1MzZhNDI0MGZkNmU2NzdkNmRiNmFkYjA0NjQxY2YuLjUzNThjMDU2NDI4NjQ0
ZWM0YTUxZmMyZTA0YWNlZjExNTJlNGE3MDYgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2h0dHAv
dGVzdHMvc2VjdXJpdHkvY29udGVudFNlY3VyaXR5UG9saWN5L2lubGluZS1zY3JpcHQtYmxvY2tl
ZC1nb29meS1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9zZWN1cml0
eS9jb250ZW50U2VjdXJpdHlQb2xpY3kvaW5saW5lLXNjcmlwdC1ibG9ja2VkLWdvb2Z5LWV4cGVj
dGVkLnR4dApAQCAtMSw3ICsxLDcgQEAKIENPTlNPTEUgTUVTU0FHRTogVW5yZWNvZ25pemVkIENv
bnRlbnQtU2VjdXJpdHktUG9saWN5IGRpcmVjdGl2ZSAnb3B0aW9ucycuCiAKLUNPTlNPTEUgTUVT
U0FHRTogUmVmdXNlZCB0byBleGVjdXRlIGlubGluZSBzY3JpcHQgYmVjYXVzZSBpdCB2aW9sYXRl
cyB0aGUgZm9sbG93aW5nIENvbnRlbnQgU2VjdXJpdHkgUG9saWN5IGRpcmVjdGl2ZTogInNjcmlw
dC1zcmMgaHR0cDovLzEyNy4wLjAuMToqIi4KK0NPTlNPTEUgTUVTU0FHRTogbGluZSA5OiBSZWZ1
c2VkIHRvIGV4ZWN1dGUgaW5saW5lIHNjcmlwdCBiZWNhdXNlIGl0IHZpb2xhdGVzIHRoZSBmb2xs
b3dpbmcgQ29udGVudCBTZWN1cml0eSBQb2xpY3kgZGlyZWN0aXZlOiAic2NyaXB0LXNyYyBodHRw
Oi8vMTI3LjAuMC4xOioiLgogCi1DT05TT0xFIE1FU1NBR0U6IFJlZnVzZWQgdG8gZXhlY3V0ZSBp
bmxpbmUgZXZlbnQgaGFuZGxlciBiZWNhdXNlIGl0IHZpb2xhdGVzIHRoZSBmb2xsb3dpbmcgQ29u
dGVudCBTZWN1cml0eSBQb2xpY3kgZGlyZWN0aXZlOiAic2NyaXB0LXNyYyBodHRwOi8vMTI3LjAu
MC4xOioiLgorQ09OU09MRSBNRVNTQUdFOiBsaW5lIDc6IFJlZnVzZWQgdG8gZXhlY3V0ZSBpbmxp
bmUgZXZlbnQgaGFuZGxlciBiZWNhdXNlIGl0IHZpb2xhdGVzIHRoZSBmb2xsb3dpbmcgQ29udGVu
dCBTZWN1cml0eSBQb2xpY3kgZGlyZWN0aXZlOiAic2NyaXB0LXNyYyBodHRwOi8vMTI3LjAuMC4x
OioiLgogCiBUaGlzIHRlc3QgcGFzc2VzIGlmIGl0IGRvZXNuJ3QgYWxlcnQgZmFpbC4KZGlmZiAt
LWdpdCBhL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvc2VjdXJpdHkvY29udGVudFNlY3VyaXR5UG9s
aWN5L2lubGluZS1zY3JpcHQtYmxvY2tlZC1qYXZhc2NyaXB0LXVybC1leHBlY3RlZC50eHQgYi9M
YXlvdXRUZXN0cy9odHRwL3Rlc3RzL3NlY3VyaXR5L2NvbnRlbnRTZWN1cml0eVBvbGljeS9pbmxp
bmUtc2NyaXB0LWJsb2NrZWQtamF2YXNjcmlwdC11cmwtZXhwZWN0ZWQudHh0CmluZGV4IGVkMDYy
NDQ2NzI4NWU4MTBlYTY2NDgyY2NkZjQ5YWZiNDQwMGYxMzUuLjk1NDUwMWNkY2RkNzNhNzliYTQy
YWZhZTYwZDBlZWJiZmI3ZmYxM2YgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2h0dHAvdGVzdHMv
c2VjdXJpdHkvY29udGVudFNlY3VyaXR5UG9saWN5L2lubGluZS1zY3JpcHQtYmxvY2tlZC1qYXZh
c2NyaXB0LXVybC1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9zZWN1
cml0eS9jb250ZW50U2VjdXJpdHlQb2xpY3kvaW5saW5lLXNjcmlwdC1ibG9ja2VkLWphdmFzY3Jp
cHQtdXJsLWV4cGVjdGVkLnR4dApAQCAtNCw2ICs0LDYgQEAgQ09OU09MRSBNRVNTQUdFOiBVbnJl
Y29nbml6ZWQgQ29udGVudC1TZWN1cml0eS1Qb2xpY3kgZGlyZWN0aXZlICdvcHRpb25zJy4KIAog
Q09OU09MRSBNRVNTQUdFOiBVbnJlY29nbml6ZWQgQ29udGVudC1TZWN1cml0eS1Qb2xpY3kgZGly
ZWN0aXZlICdvcHRpb25zJy4KIAotQ09OU09MRSBNRVNTQUdFOiBSZWZ1c2VkIHRvIGV4ZWN1dGUg
SmF2YVNjcmlwdCBVUkwgYmVjYXVzZSBpdCB2aW9sYXRlcyB0aGUgZm9sbG93aW5nIENvbnRlbnQg
U2VjdXJpdHkgUG9saWN5IGRpcmVjdGl2ZTogInNjcmlwdC1zcmMgaHR0cDovLzEyNy4wLjAuMToq
Ii4KK0NPTlNPTEUgTUVTU0FHRTogbGluZSAxOiBSZWZ1c2VkIHRvIGV4ZWN1dGUgSmF2YVNjcmlw
dCBVUkwgYmVjYXVzZSBpdCB2aW9sYXRlcyB0aGUgZm9sbG93aW5nIENvbnRlbnQgU2VjdXJpdHkg
UG9saWN5IGRpcmVjdGl2ZTogInNjcmlwdC1zcmMgaHR0cDovLzEyNy4wLjAuMToqIi4KIAogVGhp
cyB0ZXN0IHBhc3NlcyBpZiBpdCBkb2Vzbid0IGFsZXJ0IGZhaWwuIApkaWZmIC0tZ2l0IGEvTGF5
b3V0VGVzdHMvaHR0cC90ZXN0cy9zZWN1cml0eS9jb250ZW50U2VjdXJpdHlQb2xpY3kvaW5saW5l
LXN0eWxlLWF0dHJpYnV0ZS1ibG9ja2VkLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2h0dHAv
dGVzdHMvc2VjdXJpdHkvY29udGVudFNlY3VyaXR5UG9saWN5L2lubGluZS1zdHlsZS1hdHRyaWJ1
dGUtYmxvY2tlZC1leHBlY3RlZC50eHQKaW5kZXggNzMyNTQ2MjUxMGE1YjY3OWIxMGRmOTUwMzhi
ZTJiNTg2NzkxOThmMS4uZTdhNjg4MzE2ZDNkY2FiZTMzZTgxY2MzZGYzNjM1ZGRlNTE4MTNlZSAx
MDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9zZWN1cml0eS9jb250ZW50U2VjdXJp
dHlQb2xpY3kvaW5saW5lLXN0eWxlLWF0dHJpYnV0ZS1ibG9ja2VkLWV4cGVjdGVkLnR4dAorKysg
Yi9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3NlY3VyaXR5L2NvbnRlbnRTZWN1cml0eVBvbGljeS9p
bmxpbmUtc3R5bGUtYXR0cmlidXRlLWJsb2NrZWQtZXhwZWN0ZWQudHh0CkBAIC0xLDMgKzEsMyBA
QAotQ09OU09MRSBNRVNTQUdFOiBSZWZ1c2VkIHRvIGFwcGx5IGlubGluZSBzdHlsZSBiZWNhdXNl
IGl0IHZpb2xhdGVzIHRoZSBmb2xsb3dpbmcgQ29udGVudCBTZWN1cml0eSBQb2xpY3kgZGlyZWN0
aXZlOiAic3R5bGUtc3JjICdub25lJyIuCitDT05TT0xFIE1FU1NBR0U6IGxpbmUgMTA6IFJlZnVz
ZWQgdG8gYXBwbHkgaW5saW5lIHN0eWxlIGJlY2F1c2UgaXQgdmlvbGF0ZXMgdGhlIGZvbGxvd2lu
ZyBDb250ZW50IFNlY3VyaXR5IFBvbGljeSBkaXJlY3RpdmU6ICJzdHlsZS1zcmMgJ25vbmUnIi4K
IAogUEFTUwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9zZWN1cml0eS9jb250
ZW50U2VjdXJpdHlQb2xpY3kvaW5saW5lLXN0eWxlLWJsb2NrZWQtZXhwZWN0ZWQudHh0IGIvTGF5
b3V0VGVzdHMvaHR0cC90ZXN0cy9zZWN1cml0eS9jb250ZW50U2VjdXJpdHlQb2xpY3kvaW5saW5l
LXN0eWxlLWJsb2NrZWQtZXhwZWN0ZWQudHh0CmluZGV4IDczMjU0NjI1MTBhNWI2NzliMTBkZjk1
MDM4YmUyYjU4Njc5MTk4ZjEuLjk2MzBkN2ExN2JjNzQxM2Q2ZTNlMjhiYWViOGMxNjQ4YjQwN2Vm
ZWIgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvc2VjdXJpdHkvY29udGVudFNl
Y3VyaXR5UG9saWN5L2lubGluZS1zdHlsZS1ibG9ja2VkLWV4cGVjdGVkLnR4dAorKysgYi9MYXlv
dXRUZXN0cy9odHRwL3Rlc3RzL3NlY3VyaXR5L2NvbnRlbnRTZWN1cml0eVBvbGljeS9pbmxpbmUt
c3R5bGUtYmxvY2tlZC1leHBlY3RlZC50eHQKQEAgLTEsMyArMSwzIEBACi1DT05TT0xFIE1FU1NB
R0U6IFJlZnVzZWQgdG8gYXBwbHkgaW5saW5lIHN0eWxlIGJlY2F1c2UgaXQgdmlvbGF0ZXMgdGhl
IGZvbGxvd2luZyBDb250ZW50IFNlY3VyaXR5IFBvbGljeSBkaXJlY3RpdmU6ICJzdHlsZS1zcmMg
J25vbmUnIi4KK0NPTlNPTEUgTUVTU0FHRTogbGluZSA1OiBSZWZ1c2VkIHRvIGFwcGx5IGlubGlu
ZSBzdHlsZSBiZWNhdXNlIGl0IHZpb2xhdGVzIHRoZSBmb2xsb3dpbmcgQ29udGVudCBTZWN1cml0
eSBQb2xpY3kgZGlyZWN0aXZlOiAic3R5bGUtc3JjICdub25lJyIuCiAKIFBBU1MKZGlmZiAtLWdp
dCBhL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvc2VjdXJpdHkvY29udGVudFNlY3VyaXR5UG9saWN5
L2phdmFzY3JpcHQtdXJsLWJsb2NrZWQtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaHR0cC90
ZXN0cy9zZWN1cml0eS9jb250ZW50U2VjdXJpdHlQb2xpY3kvamF2YXNjcmlwdC11cmwtYmxvY2tl
ZC1leHBlY3RlZC50eHQKaW5kZXggOGUyZGMzMzMyMTczNTJmNDg1NDQ5NDZmZTE0MmQ1OTBjOGE5
N2FlMy4uMWNhOTI2MmJkNTMyMWVhNWZjZjU5N2MwN2UxYzMxOTA4ODlkYzJkOSAxMDA2NDQKLS0t
IGEvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9zZWN1cml0eS9jb250ZW50U2VjdXJpdHlQb2xpY3kv
amF2YXNjcmlwdC11cmwtYmxvY2tlZC1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvaHR0
cC90ZXN0cy9zZWN1cml0eS9jb250ZW50U2VjdXJpdHlQb2xpY3kvamF2YXNjcmlwdC11cmwtYmxv
Y2tlZC1leHBlY3RlZC50eHQKQEAgLTQsNyArNCw3IEBAIENPTlNPTEUgTUVTU0FHRTogVW5yZWNv
Z25pemVkIENvbnRlbnQtU2VjdXJpdHktUG9saWN5IGRpcmVjdGl2ZSAnYWxsb3cnLgogCiBDT05T
T0xFIE1FU1NBR0U6IFVucmVjb2duaXplZCBDb250ZW50LVNlY3VyaXR5LVBvbGljeSBkaXJlY3Rp
dmUgJ2FsbG93Jy4KIAotQ09OU09MRSBNRVNTQUdFOiBSZWZ1c2VkIHRvIGV4ZWN1dGUgSmF2YVNj
cmlwdCBVUkwgYmVjYXVzZSBpdCB2aW9sYXRlcyB0aGUgZm9sbG93aW5nIENvbnRlbnQgU2VjdXJp
dHkgUG9saWN5IGRpcmVjdGl2ZTogInNjcmlwdC1zcmMgJ25vbmUnIi4KK0NPTlNPTEUgTUVTU0FH
RTogbGluZSAxOiBSZWZ1c2VkIHRvIGV4ZWN1dGUgSmF2YVNjcmlwdCBVUkwgYmVjYXVzZSBpdCB2
aW9sYXRlcyB0aGUgZm9sbG93aW5nIENvbnRlbnQgU2VjdXJpdHkgUG9saWN5IGRpcmVjdGl2ZTog
InNjcmlwdC1zcmMgJ25vbmUnIi4KIAogQ09OU09MRSBNRVNTQUdFOiBVbnJlY29nbml6ZWQgQ29u
dGVudC1TZWN1cml0eS1Qb2xpY3kgZGlyZWN0aXZlICdhbGxvdycuCiAKZGlmZiAtLWdpdCBhL0xh
eW91dFRlc3RzL2h0dHAvdGVzdHMvc2VjdXJpdHkvY29udGVudFNlY3VyaXR5UG9saWN5L3JlcG9y
dC1hbmQtZW5mb3JjZS1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3NlY3Vy
aXR5L2NvbnRlbnRTZWN1cml0eVBvbGljeS9yZXBvcnQtYW5kLWVuZm9yY2UtZXhwZWN0ZWQudHh0
CmluZGV4IDJkM2IyYWJhNmZkY2FlYzhmODI0MzEyYzE0N2JmNzViM2U2ZTY3YTguLjlhZWZhNGNm
OTliNjNkMGExNTVhZDkzOGM2Zjg1YTZmYzlkNTE3OWEgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3Rz
L2h0dHAvdGVzdHMvc2VjdXJpdHkvY29udGVudFNlY3VyaXR5UG9saWN5L3JlcG9ydC1hbmQtZW5m
b3JjZS1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9zZWN1cml0eS9j
b250ZW50U2VjdXJpdHlQb2xpY3kvcmVwb3J0LWFuZC1lbmZvcmNlLWV4cGVjdGVkLnR4dApAQCAt
MSw0ICsxLDQgQEAKLUNPTlNPTEUgTUVTU0FHRTogW1JlcG9ydCBPbmx5XSBSZWZ1c2VkIHRvIGV4
ZWN1dGUgaW5saW5lIHNjcmlwdCBiZWNhdXNlIGl0IHZpb2xhdGVzIHRoZSBmb2xsb3dpbmcgQ29u
dGVudCBTZWN1cml0eSBQb2xpY3kgZGlyZWN0aXZlOiAic2NyaXB0LXNyYyAnc2VsZiciLgorQ09O
U09MRSBNRVNTQUdFOiBsaW5lIDM6IFtSZXBvcnQgT25seV0gUmVmdXNlZCB0byBleGVjdXRlIGlu
bGluZSBzY3JpcHQgYmVjYXVzZSBpdCB2aW9sYXRlcyB0aGUgZm9sbG93aW5nIENvbnRlbnQgU2Vj
dXJpdHkgUG9saWN5IGRpcmVjdGl2ZTogInNjcmlwdC1zcmMgJ3NlbGYnIi4KIAogQUxFUlQ6IFBB
U1MKIENPTlNPTEUgTUVTU0FHRTogUmVmdXNlZCB0byBsb2FkIHRoZSBpbWFnZSAnaHR0cDovLzEy
Ny4wLjAuMTo4MDAwL3NlY3VyaXR5L3Jlc291cmNlcy9hYmUucG5nJyBiZWNhdXNlIGl0IHZpb2xh
dGVzIHRoZSBmb2xsb3dpbmcgQ29udGVudCBTZWN1cml0eSBQb2xpY3kgZGlyZWN0aXZlOiAiaW1n
LXNyYyAnbm9uZSciLgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9zZWN1cml0
eS9jb250ZW50U2VjdXJpdHlQb2xpY3kvcmVwb3J0LW9ubHktZXhwZWN0ZWQudHh0IGIvTGF5b3V0
VGVzdHMvaHR0cC90ZXN0cy9zZWN1cml0eS9jb250ZW50U2VjdXJpdHlQb2xpY3kvcmVwb3J0LW9u
bHktZXhwZWN0ZWQudHh0CmluZGV4IDc0ZGM1ZDYwZjg4ZjkxNzJjMmI3NTA3OTE1YzU3ZWJlMDMx
YjczZDIuLmExZWRmM2FlYTFhNzM4NTA4Y2YyMWJkZmMwODNhOWEwMjE4NTk3NTYgMTAwNjQ0Ci0t
LSBhL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvc2VjdXJpdHkvY29udGVudFNlY3VyaXR5UG9saWN5
L3JlcG9ydC1vbmx5LWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3Nl
Y3VyaXR5L2NvbnRlbnRTZWN1cml0eVBvbGljeS9yZXBvcnQtb25seS1leHBlY3RlZC50eHQKQEAg
LTEsNCArMSw0IEBACi1DT05TT0xFIE1FU1NBR0U6IFtSZXBvcnQgT25seV0gUmVmdXNlZCB0byBl
eGVjdXRlIGlubGluZSBzY3JpcHQgYmVjYXVzZSBpdCB2aW9sYXRlcyB0aGUgZm9sbG93aW5nIENv
bnRlbnQgU2VjdXJpdHkgUG9saWN5IGRpcmVjdGl2ZTogInNjcmlwdC1zcmMgJ3NlbGYnIi4KK0NP
TlNPTEUgTUVTU0FHRTogbGluZSAyOiBbUmVwb3J0IE9ubHldIFJlZnVzZWQgdG8gZXhlY3V0ZSBp
bmxpbmUgc2NyaXB0IGJlY2F1c2UgaXQgdmlvbGF0ZXMgdGhlIGZvbGxvd2luZyBDb250ZW50IFNl
Y3VyaXR5IFBvbGljeSBkaXJlY3RpdmU6ICJzY3JpcHQtc3JjICdzZWxmJyIuCiAKIEFMRVJUOiBQ
QVNTCiBDU1AgcmVwb3J0IHJlY2VpdmVkOgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaHR0cC90
ZXN0cy9zZWN1cml0eS9jb250ZW50U2VjdXJpdHlQb2xpY3kvcmVwb3J0LW9ubHktZnJvbS1oZWFk
ZXItZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9zZWN1cml0eS9jb250ZW50
U2VjdXJpdHlQb2xpY3kvcmVwb3J0LW9ubHktZnJvbS1oZWFkZXItZXhwZWN0ZWQudHh0CmluZGV4
IGFjZTE2NDY4NzVhNjI3YzBjOWRmM2YyYTBlZWJhYTU5OTM3Y2YzYjAuLmNlYzJjMjhlNzdlYzhj
ZjljNzI4YzFjNGZlZTgwNWNkMzM0YWVjM2QgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2h0dHAv
dGVzdHMvc2VjdXJpdHkvY29udGVudFNlY3VyaXR5UG9saWN5L3JlcG9ydC1vbmx5LWZyb20taGVh
ZGVyLWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3NlY3VyaXR5L2Nv
bnRlbnRTZWN1cml0eVBvbGljeS9yZXBvcnQtb25seS1mcm9tLWhlYWRlci1leHBlY3RlZC50eHQK
QEAgLTEsNCArMSw0IEBACi1DT05TT0xFIE1FU1NBR0U6IFtSZXBvcnQgT25seV0gUmVmdXNlZCB0
byBleGVjdXRlIGlubGluZSBzY3JpcHQgYmVjYXVzZSBpdCB2aW9sYXRlcyB0aGUgZm9sbG93aW5n
IENvbnRlbnQgU2VjdXJpdHkgUG9saWN5IGRpcmVjdGl2ZTogInNjcmlwdC1zcmMgJ3NlbGYnIi4K
K0NPTlNPTEUgTUVTU0FHRTogbGluZSAxOiBbUmVwb3J0IE9ubHldIFJlZnVzZWQgdG8gZXhlY3V0
ZSBpbmxpbmUgc2NyaXB0IGJlY2F1c2UgaXQgdmlvbGF0ZXMgdGhlIGZvbGxvd2luZyBDb250ZW50
IFNlY3VyaXR5IFBvbGljeSBkaXJlY3RpdmU6ICJzY3JpcHQtc3JjICdzZWxmJyIuCiAKIEFMRVJU
OiBQQVNTCiBDU1AgcmVwb3J0IHJlY2VpdmVkOgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaHR0
cC90ZXN0cy9zZWN1cml0eS9jb250ZW50U2VjdXJpdHlQb2xpY3kvcmVwb3J0LXVyaS1leHBlY3Rl
ZC50eHQgYi9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3NlY3VyaXR5L2NvbnRlbnRTZWN1cml0eVBv
bGljeS9yZXBvcnQtdXJpLWV4cGVjdGVkLnR4dAppbmRleCBiODA1MGZmMjAzMDE3ZmRlOGEyYmNl
ZjBjNGQ3YWQxMDAzNDE2YmJkLi41NmE2ZWY2MjMxNWQxZWFlNWFiZDBkOWU4MDE0MzQzOThjYWQ4
MDBmIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3NlY3VyaXR5L2NvbnRlbnRT
ZWN1cml0eVBvbGljeS9yZXBvcnQtdXJpLWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9o
dHRwL3Rlc3RzL3NlY3VyaXR5L2NvbnRlbnRTZWN1cml0eVBvbGljeS9yZXBvcnQtdXJpLWV4cGVj
dGVkLnR4dApAQCAtMSw0ICsxLDQgQEAKLUNPTlNPTEUgTUVTU0FHRTogUmVmdXNlZCB0byBleGVj
dXRlIGlubGluZSBzY3JpcHQgYmVjYXVzZSBpdCB2aW9sYXRlcyB0aGUgZm9sbG93aW5nIENvbnRl
bnQgU2VjdXJpdHkgUG9saWN5IGRpcmVjdGl2ZTogInNjcmlwdC1zcmMgJ3NlbGYnIi4KK0NPTlNP
TEUgTUVTU0FHRTogbGluZSAyOiBSZWZ1c2VkIHRvIGV4ZWN1dGUgaW5saW5lIHNjcmlwdCBiZWNh
dXNlIGl0IHZpb2xhdGVzIHRoZSBmb2xsb3dpbmcgQ29udGVudCBTZWN1cml0eSBQb2xpY3kgZGly
ZWN0aXZlOiAic2NyaXB0LXNyYyAnc2VsZiciLgogCiBDU1AgcmVwb3J0IHJlY2VpdmVkOgogQ09O
VEVOVF9UWVBFOiBhcHBsaWNhdGlvbi9qc29uCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9odHRw
L3Rlc3RzL3NlY3VyaXR5L2NvbnRlbnRTZWN1cml0eVBvbGljeS9yZXBvcnQtdXJpLWZyb20tY2hp
bGQtZnJhbWUtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9zZWN1cml0eS9j
b250ZW50U2VjdXJpdHlQb2xpY3kvcmVwb3J0LXVyaS1mcm9tLWNoaWxkLWZyYW1lLWV4cGVjdGVk
LnR4dAppbmRleCAyNWRlOGUxOTc1NGEyOWFjOWZjZTIwNDk2MzRkN2FmMmZkMTU3OWY3Li44NDMw
YzMwOTgxNWJiMTI0YjcwYjYzODcwZTQ1YzVjYjBjNGM0MGMyIDEwMDY0NAotLS0gYS9MYXlvdXRU
ZXN0cy9odHRwL3Rlc3RzL3NlY3VyaXR5L2NvbnRlbnRTZWN1cml0eVBvbGljeS9yZXBvcnQtdXJp
LWZyb20tY2hpbGQtZnJhbWUtZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL2h0dHAvdGVz
dHMvc2VjdXJpdHkvY29udGVudFNlY3VyaXR5UG9saWN5L3JlcG9ydC11cmktZnJvbS1jaGlsZC1m
cmFtZS1leHBlY3RlZC50eHQKQEAgLTEsNCArMSw0IEBACi1DT05TT0xFIE1FU1NBR0U6IFJlZnVz
ZWQgdG8gZXhlY3V0ZSBpbmxpbmUgc2NyaXB0IGJlY2F1c2UgaXQgdmlvbGF0ZXMgdGhlIGZvbGxv
d2luZyBDb250ZW50IFNlY3VyaXR5IFBvbGljeSBkaXJlY3RpdmU6ICJzY3JpcHQtc3JjICdzZWxm
JyIuCitDT05TT0xFIE1FU1NBR0U6IGxpbmUgMjogUmVmdXNlZCB0byBleGVjdXRlIGlubGluZSBz
Y3JpcHQgYmVjYXVzZSBpdCB2aW9sYXRlcyB0aGUgZm9sbG93aW5nIENvbnRlbnQgU2VjdXJpdHkg
UG9saWN5IGRpcmVjdGl2ZTogInNjcmlwdC1zcmMgJ3NlbGYnIi4KIAogCiAKZGlmZiAtLWdpdCBh
L0xheW91dFRlc3RzL2h0dHAvdGVzdHMvc2VjdXJpdHkvY29udGVudFNlY3VyaXR5UG9saWN5L3Jl
c291cmNlcy9pbmplY3Qtc2NyaXB0LmpzIGIvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9zZWN1cml0
eS9jb250ZW50U2VjdXJpdHlQb2xpY3kvcmVzb3VyY2VzL2luamVjdC1zY3JpcHQuanMKbmV3IGZp
bGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMC4uNzU2YmFmZmU5ZWU5ODRlNDU3NTlhMWMzOTU0OTk2ODhhYWI4MmYxYgotLS0gL2Rldi9u
dWxsCisrKyBiL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvc2VjdXJpdHkvY29udGVudFNlY3VyaXR5
UG9saWN5L3Jlc291cmNlcy9pbmplY3Qtc2NyaXB0LmpzCkBAIC0wLDAgKzEsNSBAQAorZG9jdW1l
bnQud3JpdGUoIjxzY3JpcHQ+YWxlcnQoJ1Bhc3MgMSBvZiAyJyk7PC9zY3JpcHQ+Iik7CisKK3Zh
ciBzID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgnc2NyaXB0Jyk7CitzLmlubmVyVGV4dCA9ICJh
bGVydCgnUGFzcyAyIG9mIDInKTsiOworZG9jdW1lbnQuYm9keS5hcHBlbmRDaGlsZChzKTsKZGlm
ZiAtLWdpdCBhL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvc2VjdXJpdHkvY29udGVudFNlY3VyaXR5
UG9saWN5L3Jlc291cmNlcy9pbmplY3Qtc3R5bGUuanMgYi9MYXlvdXRUZXN0cy9odHRwL3Rlc3Rz
L3NlY3VyaXR5L2NvbnRlbnRTZWN1cml0eVBvbGljeS9yZXNvdXJjZXMvaW5qZWN0LXN0eWxlLmpz
Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAuLjIxOWQ4ZjU1OWM1YTBmNjNkN2ZhNDhmNzJhZDQ2NjBlNWQ3NGMyOWUKLS0t
IC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3NlY3VyaXR5L2NvbnRlbnRT
ZWN1cml0eVBvbGljeS9yZXNvdXJjZXMvaW5qZWN0LXN0eWxlLmpzCkBAIC0wLDAgKzEsNSBAQAor
ZG9jdW1lbnQud3JpdGUoIjxzdHlsZT4jdGVzdDEgeyBkaXNwbGF5OiBub25lOyB9PC9zdHlsZT4i
KTsKKwordmFyIHMgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCdzdHlsZScpOworcy5pbm5lclRl
eHQgPSAiI3Rlc3QyIHsgZGlzcGxheTogbm9uZTsgfSI7Citkb2N1bWVudC5ib2R5LmFwcGVuZENo
aWxkKHMpOwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9zZWN1cml0eS9jb250
ZW50U2VjdXJpdHlQb2xpY3kvc2NyaXB0LXNyYy1ub25lLWlubGluZS1ldmVudC1leHBlY3RlZC50
eHQgYi9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3NlY3VyaXR5L2NvbnRlbnRTZWN1cml0eVBvbGlj
eS9zY3JpcHQtc3JjLW5vbmUtaW5saW5lLWV2ZW50LWV4cGVjdGVkLnR4dAppbmRleCBkMzFiMWNl
ZmMwYmY3ZjgyODhhOTMxNzYxZDgwMjEyOWU2Mjk1MDJmLi5mZTFjYzJmYzZkZTA5MmE4MWRkNDU4
M2U1MGQwNzM0NjYzMDgzMzIzIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3Nl
Y3VyaXR5L2NvbnRlbnRTZWN1cml0eVBvbGljeS9zY3JpcHQtc3JjLW5vbmUtaW5saW5lLWV2ZW50
LWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3NlY3VyaXR5L2NvbnRl
bnRTZWN1cml0eVBvbGljeS9zY3JpcHQtc3JjLW5vbmUtaW5saW5lLWV2ZW50LWV4cGVjdGVkLnR4
dApAQCAtMSw0ICsxLDQgQEAKLUNPTlNPTEUgTUVTU0FHRTogUmVmdXNlZCB0byBleGVjdXRlIGlu
bGluZSBldmVudCBoYW5kbGVyIGJlY2F1c2UgaXQgdmlvbGF0ZXMgdGhlIGZvbGxvd2luZyBDb250
ZW50IFNlY3VyaXR5IFBvbGljeSBkaXJlY3RpdmU6ICJzY3JpcHQtc3JjICdub25lJyIuCitDT05T
T0xFIE1FU1NBR0U6IGxpbmUgMzogUmVmdXNlZCB0byBleGVjdXRlIGlubGluZSBldmVudCBoYW5k
bGVyIGJlY2F1c2UgaXQgdmlvbGF0ZXMgdGhlIGZvbGxvd2luZyBDb250ZW50IFNlY3VyaXR5IFBv
bGljeSBkaXJlY3RpdmU6ICJzY3JpcHQtc3JjICdub25lJyIuCiAKICAgCiAKZGlmZiAtLWdpdCBh
L0xheW91dFRlc3RzL2h0dHAvdGVzdHMvc2VjdXJpdHkvY29udGVudFNlY3VyaXR5UG9saWN5L3Ny
Y2RvYy1kb2VzbnQtYnlwYXNzLXNjcmlwdC1zcmMtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMv
aHR0cC90ZXN0cy9zZWN1cml0eS9jb250ZW50U2VjdXJpdHlQb2xpY3kvc3JjZG9jLWRvZXNudC1i
eXBhc3Mtc2NyaXB0LXNyYy1leHBlY3RlZC50eHQKaW5kZXggN2E1ZmRlMzcwZWE2ZTA0YzZkNmU0
OTQwZThkN2FkYjAwMGI2MzE2OS4uMWEyOTQ3OWQyYzJkNGJjMTUyZjUyN2YzYzMzMDMzYTExODk2
ZTFjMSAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9zZWN1cml0eS9jb250ZW50
U2VjdXJpdHlQb2xpY3kvc3JjZG9jLWRvZXNudC1ieXBhc3Mtc2NyaXB0LXNyYy1leHBlY3RlZC50
eHQKKysrIGIvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9zZWN1cml0eS9jb250ZW50U2VjdXJpdHlQ
b2xpY3kvc3JjZG9jLWRvZXNudC1ieXBhc3Mtc2NyaXB0LXNyYy1leHBlY3RlZC50eHQKQEAgLTEs
MyArMSwzIEBACi1DT05TT0xFIE1FU1NBR0U6IFJlZnVzZWQgdG8gZXhlY3V0ZSBpbmxpbmUgc2Ny
aXB0IGJlY2F1c2UgaXQgdmlvbGF0ZXMgdGhlIGZvbGxvd2luZyBDb250ZW50IFNlY3VyaXR5IFBv
bGljeSBkaXJlY3RpdmU6ICJzY3JpcHQtc3JjICdzZWxmJyIuCitDT05TT0xFIE1FU1NBR0U6IGxp
bmUgMTogUmVmdXNlZCB0byBleGVjdXRlIGlubGluZSBzY3JpcHQgYmVjYXVzZSBpdCB2aW9sYXRl
cyB0aGUgZm9sbG93aW5nIENvbnRlbnQgU2VjdXJpdHkgUG9saWN5IGRpcmVjdGl2ZTogInNjcmlw
dC1zcmMgJ3NlbGYnIi4KIAogVGhpcyB0ZXN0IHBhc3NlcyBpZiBpdCBkb2Vzbid0IGFsZXJ0IGZh
aWwuIAo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>146325</attachid>
            <date>2012-06-07 10:55:32 -0700</date>
            <delta_ts>2012-06-07 23:17:11 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-86848-20120607195531.patch</filename>
            <type>text/plain</type>
            <size>3521</size>
            <attacher name="Mike West">mkwst</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTE5NTE3CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggZTBiZTZmYmUwNzMwNTll
ZmFhOTJhOTI4NzIwM2MwYjYyYzQyYmQ4Ny4uZDUzY2FlODM2NTE1ZmM4N2EwN2ZlZTI0MTI2Zjdm
MzdiYTY5ZjkwNiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDIzIEBACisyMDEyLTA2LTA3ICBNaWtl
IFdlc3QgIDxta3dzdEBjaHJvbWl1bS5vcmc+CisKKyAgICAgICAgRHJvcHBpbmcgbV9zdGFydGlu
Z0xpbmVOdW1iZXIgcHJvcGVydHkgZnJvbSBTdHlsZWRFbGVtZW50LgorICAgICAgICBodHRwczov
L2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9ODY4NDgKKworICAgICAgICBSZXZpZXdl
ZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBXZSBjYW4gaGF2ZSB0aGUgc2FtZSBlZmZl
Y3QgYnkgbW92aW5nIHRoZSBsaW5lLW51bWJlciBjYWxjdWxhdGlvbgorICAgICAgICBkaXJlY3Rs
eSBpbnRvIFN0eWxlZEVsZW1lbnQ6OnN0eWxlQXR0cmlidXRlQ2hhbmdlZC4gVGhpcyBtZWFucyB0
aGF0CisgICAgICAgIHN1YnNlcXVlbnQgY2hhbmdlcyB0byB0aGUgc3R5bGUgYXR0cmlidXRlICh2
aWEgc2NyaXB0KSB3b24ndCBnZW5lcmF0ZQorICAgICAgICBlcnJvciBtZXNzYWdlcyB3aXRoIGxp
bmUgbnVtYmVycywgYnV0IHRoYXQncyBhbiBhY2NlcHRhYmxlIHRyYWRlb2ZmLgorCisgICAgICAg
IEJlaGF2aW9yIGlzIGNvdmVyZWQgYnkgZXhpc3RpbmcgQ1NQIHRlc3RzLgorCisgICAgICAgICog
ZG9tL1N0eWxlZEVsZW1lbnQuY3BwOgorICAgICAgICAoV2ViQ29yZTo6U3R5bGVkRWxlbWVudDo6
U3R5bGVkRWxlbWVudCk6CisgICAgICAgIChXZWJDb3JlOjpTdHlsZWRFbGVtZW50OjpzdHlsZUF0
dHJpYnV0ZUNoYW5nZWQpOgorICAgICAgICAqIGRvbS9TdHlsZWRFbGVtZW50Lmg6CisgICAgICAg
IChXZWJDb3JlOjpTdHlsZWRFbGVtZW50OjpkZXN0cm95SW5saW5lU3R5bGUpOgorCiAyMDEyLTA2
LTA1ICBFcmlrIEFydmlkc3NvbiAgPGFydkBjaHJvbWl1bS5vcmc+CiAKICAgICAgICAgW1Y4XSBJ
bXByb3ZlIHZhcmlhYmxlIHJlc29sdXRpb24gb3JkZXIgb24gd2luZG93CmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViQ29yZS9kb20vU3R5bGVkRWxlbWVudC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9kb20v
U3R5bGVkRWxlbWVudC5jcHAKaW5kZXggYTJiZWQzZjQ1ZDIwYzQxZjk2YTJmMmY4ZGI4ZjhiOTY4
MmNhOTZjNC4uNTFkOTRjOTM2Zjk2YmYzMzhlZmM3ZGRiNDljZTY5YmM4OTVlNzUxNyAxMDA2NDQK
LS0tIGEvU291cmNlL1dlYkNvcmUvZG9tL1N0eWxlZEVsZW1lbnQuY3BwCisrKyBiL1NvdXJjZS9X
ZWJDb3JlL2RvbS9TdHlsZWRFbGVtZW50LmNwcApAQCAtMTMwLDEwICsxMzAsNyBAQCB2b2lkIFN0
eWxlZEVsZW1lbnQ6OnVwZGF0ZVN0eWxlQXR0cmlidXRlKCkgY29uc3QKIAogU3R5bGVkRWxlbWVu
dDo6U3R5bGVkRWxlbWVudChjb25zdCBRdWFsaWZpZWROYW1lJiBuYW1lLCBEb2N1bWVudCogZG9j
dW1lbnQsIENvbnN0cnVjdGlvblR5cGUgdHlwZSkKICAgICA6IEVsZW1lbnQobmFtZSwgZG9jdW1l
bnQsIHR5cGUpCi0gICAgLCBtX3N0YXJ0TGluZU51bWJlcihXVEY6Ok9yZGluYWxOdW1iZXI6OmJl
Zm9yZUZpcnN0KCkpCiB7Ci0gICAgaWYgKGRvY3VtZW50ICYmIGRvY3VtZW50LT5zY3JpcHRhYmxl
RG9jdW1lbnRQYXJzZXIoKSAmJiAhZG9jdW1lbnQtPmlzSW5Eb2N1bWVudFdyaXRlKCkpCi0gICAg
ICAgIG1fc3RhcnRMaW5lTnVtYmVyID0gZG9jdW1lbnQtPnNjcmlwdGFibGVEb2N1bWVudFBhcnNl
cigpLT5saW5lTnVtYmVyKCk7CiB9CiAKIFN0eWxlZEVsZW1lbnQ6On5TdHlsZWRFbGVtZW50KCkK
QEAgLTE4MSw5ICsxNzgsMTIgQEAgdm9pZCBTdHlsZWRFbGVtZW50OjpjbGFzc0F0dHJpYnV0ZUNo
YW5nZWQoY29uc3QgQXRvbWljU3RyaW5nJiBuZXdDbGFzc1N0cmluZykKIHZvaWQgU3R5bGVkRWxl
bWVudDo6c3R5bGVBdHRyaWJ1dGVDaGFuZ2VkKGNvbnN0IEF0b21pY1N0cmluZyYgbmV3U3R5bGVT
dHJpbmcsIFNob3VsZFJlcGFyc2VTdHlsZUF0dHJpYnV0ZSBzaG91bGRSZXBhcnNlKQogewogICAg
IGlmIChzaG91bGRSZXBhcnNlKSB7CisgICAgICAgIFdURjo6T3JkaW5hbE51bWJlciBzdGFydExp
bmVOdW1iZXIgPSBXVEY6Ok9yZGluYWxOdW1iZXI6OmJlZm9yZUZpcnN0KCk7CisgICAgICAgIGlm
IChkb2N1bWVudCgpICYmIGRvY3VtZW50KCktPnNjcmlwdGFibGVEb2N1bWVudFBhcnNlcigpICYm
ICFkb2N1bWVudCgpLT5pc0luRG9jdW1lbnRXcml0ZSgpKQorICAgICAgICAgICAgc3RhcnRMaW5l
TnVtYmVyID0gZG9jdW1lbnQoKS0+c2NyaXB0YWJsZURvY3VtZW50UGFyc2VyKCktPmxpbmVOdW1i
ZXIoKTsKICAgICAgICAgaWYgKG5ld1N0eWxlU3RyaW5nLmlzTnVsbCgpKQogICAgICAgICAgICAg
ZGVzdHJveUlubGluZVN0eWxlKCk7Ci0gICAgICAgIGVsc2UgaWYgKGRvY3VtZW50KCktPmNvbnRl
bnRTZWN1cml0eVBvbGljeSgpLT5hbGxvd0lubGluZVN0eWxlKGRvY3VtZW50KCktPnVybCgpLCBt
X3N0YXJ0TGluZU51bWJlcikpCisgICAgICAgIGVsc2UgaWYgKGRvY3VtZW50KCktPmNvbnRlbnRT
ZWN1cml0eVBvbGljeSgpLT5hbGxvd0lubGluZVN0eWxlKGRvY3VtZW50KCktPnVybCgpLCBzdGFy
dExpbmVOdW1iZXIpKQogICAgICAgICAgICAgZW5zdXJlQXR0cmlidXRlRGF0YSgpLT51cGRhdGVJ
bmxpbmVTdHlsZUF2b2lkaW5nTXV0YXRpb24odGhpcywgbmV3U3R5bGVTdHJpbmcpOwogICAgICAg
ICBzZXRJc1N0eWxlQXR0cmlidXRlVmFsaWQoKTsKICAgICB9CmRpZmYgLS1naXQgYS9Tb3VyY2Uv
V2ViQ29yZS9kb20vU3R5bGVkRWxlbWVudC5oIGIvU291cmNlL1dlYkNvcmUvZG9tL1N0eWxlZEVs
ZW1lbnQuaAppbmRleCA0NzM2YTk4MDAxOWE5ZWY0YTJjZGM2YWRjYjY0MTAwMmE2YmViNzBiLi5h
YmQ0OWFkYzdjZmEwZjFlNWRiMTEwZGNkZjMxOGVlOGU2MjQ2MzdlIDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViQ29yZS9kb20vU3R5bGVkRWxlbWVudC5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2RvbS9T
dHlsZWRFbGVtZW50LmgKQEAgLTI3LDcgKzI3LDYgQEAKIAogI2luY2x1ZGUgIkVsZW1lbnQuaCIK
ICNpbmNsdWRlICJTdHlsZVByb3BlcnR5U2V0LmgiCi0jaW5jbHVkZSA8d3RmL3RleHQvVGV4dFBv
c2l0aW9uLmg+CiAKIG5hbWVzcGFjZSBXZWJDb3JlIHsKIApAQCAtOTMsOCArOTIsNiBAQCBwcml2
YXRlOgogICAgICAgICBpZiAoYXR0cmlidXRlRGF0YSgpKQogICAgICAgICAgICAgYXR0cmlidXRl
RGF0YSgpLT5kZXN0cm95SW5saW5lU3R5bGUodGhpcyk7CiAgICAgfQotCi0gICAgV1RGOjpPcmRp
bmFsTnVtYmVyIG1fc3RhcnRMaW5lTnVtYmVyOwogfTsKIAogaW5saW5lIGNvbnN0IFNwYWNlU3Bs
aXRTdHJpbmcmIFN0eWxlZEVsZW1lbnQ6OmNsYXNzTmFtZXMoKSBjb25zdAo=
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>146487</attachid>
            <date>2012-06-07 23:17:35 -0700</date>
            <delta_ts>2012-06-07 23:21:26 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-86848-20120608081735.patch</filename>
            <type>text/plain</type>
            <size>1279</size>
            <attacher name="Mike West">mkwst</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTE5Nzk5CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggZGQ2M2VmZTdmZTQxMjQ1
OGVkYjg3ODRkZWJjYThmMWM3NzhkNDJkYi4uMWFhYmM5ODhhYjg5OTZkMGJkYzIwNWFkMTA4ZmNj
NTczNGJhZjY4YSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE1IEBACisyMDEyLTA2LTA3ICBNaWtl
IFdlc3QgIDxta3dzdEBjaHJvbWl1bS5vcmc+CisKKyAgICAgICAgQWRkIENPTVBJTEVfQVNTRVJU
IHRvIFN0eWxlZEVsZW1lbnQgdG8gZW5zdXJlIGl0IGRvZXNuJ3QgYWNjaWRlbnRhbGx5IGdyb3cg
bGFyZ2VyLgorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9
ODY4NDgKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBO
byBjaGFuZ2UgaW4gdXNlci1mYWNpbmcgYmVoYXZpb3IuCisKKyAgICAgICAgKiBkb20vU3R5bGVk
RWxlbWVudC5jcHA6CisgICAgICAgIChXZWJDb3JlKToKKwogMjAxMi0wNi0wNyAgVGFrYXNoaSBT
YWthbW90byAgPHRhc2FrQGdvb2dsZS5jb20+CiAKICAgICAgICAgU2hhZG93Um9vdCBuZWVkcyBy
ZXNldFN0eWxlSW5oZXJpdGFuY2UKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2RvbS9TdHls
ZWRFbGVtZW50LmNwcCBiL1NvdXJjZS9XZWJDb3JlL2RvbS9TdHlsZWRFbGVtZW50LmNwcAppbmRl
eCA1MWQ5NGM5MzZmOTZiZjMzOGVmYzdkZGI0OWNlNjliYzg5NWU3NTE3Li4yMDIyMDdmZWFjNDBj
M2QyY2FlOTExNTk4ZDI3NDlmNDlkMjcyOWZkIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9k
b20vU3R5bGVkRWxlbWVudC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvZG9tL1N0eWxlZEVsZW1l
bnQuY3BwCkBAIC00Nyw2ICs0NywxMSBAQCB1c2luZyBuYW1lc3BhY2Ugc3RkOwogCiBuYW1lc3Bh
Y2UgV2ViQ29yZSB7CiAKK2NsYXNzIFNhbWVTaXplQXNTdHlsZWRFbGVtZW50IDogcHVibGljIEVs
ZW1lbnQgeworfTsKKworQ09NUElMRV9BU1NFUlQoc2l6ZW9mKFN0eWxlZEVsZW1lbnQpID09IHNp
emVvZihTYW1lU2l6ZUFzU3R5bGVkRWxlbWVudCksIHN0eWxlZGVsZW1lbnRfc2hvdWxkX3JlbWFp
bl9zbWFsbCk7CisKIHVzaW5nIG5hbWVzcGFjZSBIVE1MTmFtZXM7CiAKIHN0cnVjdCBQcmVzZW50
YXRpb25BdHRyaWJ1dGVDYWNoZUtleSB7Cg==
</data>
<flag name="review"
          id="153790"
          type_id="1"
          status="+"
          setter="abarth"
    />
          </attachment>
      

    </bug>

</bugzilla>