<?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>137496</bug_id>
          
          <creation_ts>2014-10-07 12:49:16 -0700</creation_ts>
          <short_desc>Add a microtask abstraction</short_desc>
          <delta_ts>2015-03-03 23:56:02 -0800</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>New Bugs</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords></keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          <dependson>142204</dependson>
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Yoav Weiss">yoav</reporter>
          <assigned_to name="Nobody">webkit-unassigned</assigned_to>
          <cc>commit-queue</cc>
    
    <cc>dino</cc>
    
    <cc>esprehn+autocc</cc>
    
    <cc>gyuyoung.kim</cc>
    
    <cc>kangil.han</cc>
    
    <cc>rniwa</cc>
    
    <cc>sam</cc>
    
    <cc>simon.fraser</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1040100</commentid>
    <comment_count>0</comment_count>
    <who name="Yoav Weiss">yoav</who>
    <bug_when>2014-10-07 12:49:16 -0700</bug_when>
    <thetext>Add a microtask abstraction</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1040103</commentid>
    <comment_count>1</comment_count>
      <attachid>239429</attachid>
    <who name="Yoav Weiss">yoav</who>
    <bug_when>2014-10-07 13:00:34 -0700</bug_when>
    <thetext>Created attachment 239429
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1040106</commentid>
    <comment_count>2</comment_count>
    <who name="Yoav Weiss">yoav</who>
    <bug_when>2014-10-07 13:04:40 -0700</bug_when>
    <thetext>I&apos;ve split out the MicroTask part from https://bugs.webkit.org/show_bug.cgi?id=134488 into this separate bug &amp; patch.

Since the MicroTask interface doesn&apos;t have users/implementors yet, this patch is not testable on its own. Tests will be added with the async image loading patch.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1040112</commentid>
    <comment_count>3</comment_count>
      <attachid>239430</attachid>
    <who name="Yoav Weiss">yoav</who>
    <bug_when>2014-10-07 13:24:59 -0700</bug_when>
    <thetext>Created attachment 239430
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1040301</commentid>
    <comment_count>4</comment_count>
      <attachid>239430</attachid>
    <who name="Darin Adler">darin</who>
    <bug_when>2014-10-08 09:10:48 -0700</bug_when>
    <thetext>Comment on attachment 239430
Patch

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

&gt; Source/WebCore/dom/MicroTask.h:28
&gt; +class MicroTask : public RefCounted&lt;MicroTask&gt; {

Why do these need to be reference counted? Can we use std::unique_ptr instead and use single ownership?

&gt; Source/WebCore/dom/MicroTaskQueue.h:31
&gt; +class MicroTaskQueue : public RefCounted&lt;MicroTaskQueue&gt; {

I don’t think we should use a reference-counted object just to hold a Vector. We should simply have the vector of tasks in Document itself. This level of indirection doesn’t help us. No need to have a class for this.

&gt; Source/WebCore/dom/MicroTaskQueue.h:42
&gt; +        for (auto task : m_tasks)
&gt; +            task-&gt;run();
&gt; +        m_tasks.clear();

What prevents this from being reentered, running the same task more than once?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1040302</commentid>
    <comment_count>5</comment_count>
      <attachid>239430</attachid>
    <who name="Darin Adler">darin</who>
    <bug_when>2014-10-08 09:11:41 -0700</bug_when>
    <thetext>Comment on attachment 239430
Patch

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

&gt; Source/WebCore/dom/ScriptRunner.cpp:121
&gt; +    m_document.runMicroTasks();

What guarantees we aren’t already executing a script here?

&gt; Source/WebCore/html/parser/HTMLScriptRunner.cpp:236
&gt; +    m_document-&gt;runMicroTasks();

What guarantees we aren’t already inside a script here?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1040832</commentid>
    <comment_count>6</comment_count>
      <attachid>239604</attachid>
    <who name="Yoav Weiss">yoav</who>
    <bug_when>2014-10-10 00:18:17 -0700</bug_when>
    <thetext>Created attachment 239604
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1040834</commentid>
    <comment_count>7</comment_count>
    <who name="Yoav Weiss">yoav</who>
    <bug_when>2014-10-10 00:27:08 -0700</bug_when>
    <thetext>(In reply to comment #4)
&gt; (From update of attachment 239430 [details])
&gt; View in context: https://bugs.webkit.org/attachment.cgi?id=239430&amp;action=review
&gt; 
&gt; &gt; Source/WebCore/dom/MicroTask.h:28
&gt; &gt; +class MicroTask : public RefCounted&lt;MicroTask&gt; {
&gt; 
&gt; Why do these need to be reference counted? Can we use std::unique_ptr instead and use single ownership?

You&apos;re right, they don&apos;t need to be. I removed it.

&gt; 
&gt; &gt; Source/WebCore/dom/MicroTaskQueue.h:31
&gt; &gt; +class MicroTaskQueue : public RefCounted&lt;MicroTaskQueue&gt; {
&gt; 
&gt; I don’t think we should use a reference-counted object just to hold a Vector. We should simply have the vector of tasks in Document itself. This level of indirection doesn’t help us. No need to have a class for this.

Removed.

&gt; 
&gt; &gt; Source/WebCore/dom/MicroTaskQueue.h:42
&gt; &gt; +        for (auto task : m_tasks)
&gt; &gt; +            task-&gt;run();
&gt; &gt; +        m_tasks.clear();
&gt; 
&gt; What prevents this from being reentered, running the same task more than once?

I assumed the microtask queue would be accessed only from the main thread. I&apos;ve added ASSERTs to make sure this assumption stands.

(In reply to comment #5)
&gt; (From update of attachment 239430 [details])
&gt; View in context: https://bugs.webkit.org/attachment.cgi?id=239430&amp;action=review
&gt; 
&gt; &gt; Source/WebCore/dom/ScriptRunner.cpp:121
&gt; &gt; +    m_document.runMicroTasks();
&gt; 
&gt; What guarantees we aren’t already executing a script here?

I&apos;ve interpreted that code as the code running HTMLScriptElement&apos;s code one by one in the loop above my code addition. Therefore, I didn&apos;t think such protection is necessary.
It&apos;s highly probable that I was wrong about that though. If that&apos;s the case, I&apos;d appreciate guidance at to how I can add the required protection here.

&gt; 
&gt; &gt; Source/WebCore/html/parser/HTMLScriptRunner.cpp:236
&gt; &gt; +    m_document-&gt;runMicroTasks();
&gt; 
&gt; What guarantees we aren’t already inside a script here?

I&apos;ve now protected against this. Thanks for catching that.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1042756</commentid>
    <comment_count>8</comment_count>
    <who name="Yoav Weiss">yoav</who>
    <bug_when>2014-10-20 01:50:18 -0700</bug_when>
    <thetext>ping</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1043539</commentid>
    <comment_count>9</comment_count>
      <attachid>239604</attachid>
    <who name="Myles C. Maxfield">mmaxfield</who>
    <bug_when>2014-10-22 13:34:04 -0700</bug_when>
    <thetext>Comment on attachment 239604
Patch

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

&gt; Source/WebCore/ChangeLog:8
&gt; +        No new tests for this patch. Tests will be added in a followup patch that uses it.

:(</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1043553</commentid>
    <comment_count>10</comment_count>
    <who name="Yoav Weiss">yoav</who>
    <bug_when>2014-10-22 14:29:14 -0700</bug_when>
    <thetext>Yeah, I&apos;m not thrilled about adding unused and untestable code either, but I was told that it&apos;s better to split out the microtask portion from https://bugs.webkit.org/show_bug.cgi?id=134488 that includes usage (and will include tests).</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1051255</commentid>
    <comment_count>11</comment_count>
    <who name="Yoav Weiss">yoav</who>
    <bug_when>2014-11-28 07:42:12 -0800</bug_when>
    <thetext>Ping. This is still waiting for a review. Thanks :)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1051276</commentid>
    <comment_count>12</comment_count>
    <who name="Sam Weinig">sam</who>
    <bug_when>2014-11-28 17:17:41 -0800</bug_when>
    <thetext>Microtasks are defined as being per Event Loop (https://html.spec.whatwg.org/multipage/webappapis.html#event-loops), which is not quite the same as per-document.  I believe this would be observable, as microtasks in multiple documents would be run out of phase.

I also think this would be testable by moving Mutation Observers over to the new abstraction as you build it. Or, if you prefer a less invasive change at the same time, you could add an Internal function that queues a microtask, and use that for testing.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1051363</commentid>
    <comment_count>13</comment_count>
    <who name="Yoav Weiss">yoav</who>
    <bug_when>2014-11-30 14:16:26 -0800</bug_when>
    <thetext>Thanks for the review! :)

&gt; Microtasks are defined as being per Event Loop 
&gt; (https://html.spec.whatwg.org/multipage/webappapis.html#event-loops), which is
&gt; not quite the same as per-document.  I believe this would be observable, as
&gt; microtasks in multiple documents would be run out of phase.

What would be a better place from which to call runMicroTasks so that the microtasks of different documents would be in sync?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1051373</commentid>
    <comment_count>14</comment_count>
    <who name="Sam Weinig">sam</who>
    <bug_when>2014-11-30 14:53:13 -0800</bug_when>
    <thetext>(In reply to comment #13)
&gt; Thanks for the review! :)
&gt; 
&gt; &gt; Microtasks are defined as being per Event Loop 
&gt; &gt; (https://html.spec.whatwg.org/multipage/webappapis.html#event-loops), which is
&gt; &gt; not quite the same as per-document.  I believe this would be observable, as
&gt; &gt; microtasks in multiple documents would be run out of phase.
&gt; 
&gt; What would be a better place from which to call runMicroTasks so that the
&gt; microtasks of different documents would be in sync?

It would either need to be global (which I would rather it not be) or on a new object that is shared between Documents that need to be synchronized. As the spec says, the documents that need to be synchronized are the ones that need to share an Event Loop of which, &quot;There must be at least one browsing context event loop per user agent, and at most one per unit of related similar-origin browsing contexts&quot;.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1052722</commentid>
    <comment_count>15</comment_count>
    <who name="Yoav Weiss">yoav</who>
    <bug_when>2014-12-05 07:02:52 -0800</bug_when>
    <thetext>Is there an object that is common to all Documents that need to be synchronized, which can own the MicroTask Queue? I&apos;d like to avoid a global/singleton as well.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1052736</commentid>
    <comment_count>16</comment_count>
    <who name="Sam Weinig">sam</who>
    <bug_when>2014-12-05 09:17:25 -0800</bug_when>
    <thetext>(In reply to comment #15)
&gt; Is there an object that is common to all Documents that need to be
&gt; synchronized, which can own the MicroTask Queue? I&apos;d like to avoid a
&gt; global/singleton as well.

There is not one currently.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1069325</commentid>
    <comment_count>17</comment_count>
    <who name="Yoav Weiss">yoav</who>
    <bug_when>2015-02-15 14:49:32 -0800</bug_when>
    <thetext>Going back to this, I wonder what&apos;s the best way to avoid a global here.
If I understand correctly, we have a single event loop per renderer process. We want microtasks running on this event loop to be synchronized (e.g. pages from a similar origin must be on the same event loop, and therefore should have their microtasks running sequentially).

Looking around the code, it seems like the one-to-one relationship with Document goes all the way up to WebPage. IIUC, WebPages are then owned by WebKit2&apos;s WebProcess, which makes me think that WebProcess is the right place to maintain such an object that would represent EventLoop synchronization. Is that correct?
If so, all the WebPages owned by a single WebProcess share the same event loop, right?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1069597</commentid>
    <comment_count>18</comment_count>
    <who name="Yoav Weiss">yoav</who>
    <bug_when>2015-02-16 14:36:36 -0800</bug_when>
    <thetext>After adding the microtask queue on WebProcess, I realized that it&apos;d mean I need to add it on Source/WebKit as well, which seemed messy.
I&apos;m now leaning towards adding it as a singleton. Please let me know if this is not an acceptable way forward.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1069885</commentid>
    <comment_count>19</comment_count>
    <who name="Sam Weinig">sam</who>
    <bug_when>2015-02-17 10:23:34 -0800</bug_when>
    <thetext>(In reply to comment #18)
&gt; After adding the microtask queue on WebProcess, I realized that it&apos;d mean I
&gt; need to add it on Source/WebKit as well, which seemed messy.
&gt; I&apos;m now leaning towards adding it as a singleton. Please let me know if this
&gt; is not an acceptable way forward.

After trying to think this through, I think a singleton is probably the best way forward for now.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1070370</commentid>
    <comment_count>20</comment_count>
      <attachid>246886</attachid>
    <who name="Yoav Weiss">yoav</who>
    <bug_when>2015-02-19 01:51:49 -0800</bug_when>
    <thetext>Created attachment 246886
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1070371</commentid>
    <comment_count>21</comment_count>
    <who name="Yoav Weiss">yoav</who>
    <bug_when>2015-02-19 01:54:07 -0800</bug_when>
    <thetext>I&apos;ve added a singleton object as well as testing through an internals method.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1070376</commentid>
    <comment_count>22</comment_count>
      <attachid>246888</attachid>
    <who name="Yoav Weiss">yoav</who>
    <bug_when>2015-02-19 02:44:28 -0800</bug_when>
    <thetext>Created attachment 246888
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1070385</commentid>
    <comment_count>23</comment_count>
      <attachid>246889</attachid>
    <who name="Yoav Weiss">yoav</who>
    <bug_when>2015-02-19 03:58:40 -0800</bug_when>
    <thetext>Created attachment 246889
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1070534</commentid>
    <comment_count>24</comment_count>
      <attachid>246922</attachid>
    <who name="Yoav Weiss">yoav</who>
    <bug_when>2015-02-19 14:35:45 -0800</bug_when>
    <thetext>Created attachment 246922
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1070854</commentid>
    <comment_count>25</comment_count>
      <attachid>247006</attachid>
    <who name="Yoav Weiss">yoav</who>
    <bug_when>2015-02-20 16:05:28 -0800</bug_when>
    <thetext>Created attachment 247006
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1071071</commentid>
    <comment_count>26</comment_count>
      <attachid>247083</attachid>
    <who name="Yoav Weiss">yoav</who>
    <bug_when>2015-02-22 08:37:48 -0800</bug_when>
    <thetext>Created attachment 247083
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1071079</commentid>
    <comment_count>27</comment_count>
    <who name="Yoav Weiss">yoav</who>
    <bug_when>2015-02-22 09:39:22 -0800</bug_when>
    <thetext>And now it&apos;s all green! Sam, can you please take another look?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1073203</commentid>
    <comment_count>28</comment_count>
      <attachid>247083</attachid>
    <who name="Sam Weinig">sam</who>
    <bug_when>2015-03-01 15:21:09 -0800</bug_when>
    <thetext>Comment on attachment 247083
Patch

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

What happens if a microtask for one document is still enqued when that document goes away or into the back/forward cache? A great follow up would be move MutationObservers to be built on this.

&gt; Source/WebCore/testing/MicroTaskTest.h:31
&gt; +class MicroTaskTest: public MicroTask {

Should have a space after MicroTaskTest.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1073306</commentid>
    <comment_count>29</comment_count>
      <attachid>247667</attachid>
    <who name="Yoav Weiss">yoav</who>
    <bug_when>2015-03-02 07:54:34 -0800</bug_when>
    <thetext>Created attachment 247667
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1073308</commentid>
    <comment_count>30</comment_count>
    <who name="Yoav Weiss">yoav</who>
    <bug_when>2015-03-02 07:57:13 -0800</bug_when>
    <thetext>&gt; What happens if a microtask for one document is still enqued when that document goes away or into the back/forward cache?

Good catch. I&apos;ve changed the test MicroTask to only hold a weak pointer to the document, and added a test to make sure we handle that case well.

&gt; Should have a space after MicroTaskTest.

Added.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1073314</commentid>
    <comment_count>31</comment_count>
      <attachid>247669</attachid>
    <who name="Yoav Weiss">yoav</who>
    <bug_when>2015-03-02 08:12:22 -0800</bug_when>
    <thetext>Created attachment 247669
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1073438</commentid>
    <comment_count>32</comment_count>
      <attachid>247697</attachid>
    <who name="Yoav Weiss">yoav</who>
    <bug_when>2015-03-02 14:10:29 -0800</bug_when>
    <thetext>Created attachment 247697
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1073531</commentid>
    <comment_count>33</comment_count>
      <attachid>247697</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2015-03-02 17:05:03 -0800</bug_when>
    <thetext>Comment on attachment 247697
Patch

Clearing flags on attachment: 247697

Committed r180911: &lt;http://trac.webkit.org/changeset/180911&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1073532</commentid>
    <comment_count>34</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2015-03-02 17:05:15 -0800</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1073572</commentid>
    <comment_count>35</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2015-03-02 19:19:36 -0800</bug_when>
    <thetext>Re-opened since this is blocked by bug 142204</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1073582</commentid>
    <comment_count>36</comment_count>
    <who name="Mark Rowe (bdash)">mrowe</who>
    <bug_when>2015-03-02 19:28:07 -0800</bug_when>
    <thetext>class MicroTask : public RefCounted&lt;MicroTask&gt; {
…
   WEBCORE_EXPORT void queueMicroTask(std::unique_ptr&lt;MicroTask&gt;);

Having unique_ptrs to a RefCounted object seems incorrect. It&apos;s likely the reason for the assertion failures that led to me rolling this out.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1073635</commentid>
    <comment_count>37</comment_count>
      <attachid>247752</attachid>
    <who name="Yoav Weiss">yoav</who>
    <bug_when>2015-03-03 00:15:28 -0800</bug_when>
    <thetext>Created attachment 247752
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1073657</commentid>
    <comment_count>38</comment_count>
    <who name="Yoav Weiss">yoav</who>
    <bug_when>2015-03-03 07:07:24 -0800</bug_when>
    <thetext>I&apos;ve fixed it, ran the tests locally with a debug build and now they&apos;re running fine.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1073864</commentid>
    <comment_count>39</comment_count>
      <attachid>247812</attachid>
    <who name="Yoav Weiss">yoav</who>
    <bug_when>2015-03-03 16:34:27 -0800</bug_when>
    <thetext>Created attachment 247812
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1073870</commentid>
    <comment_count>40</comment_count>
    <who name="Yoav Weiss">yoav</who>
    <bug_when>2015-03-03 16:41:23 -0800</bug_when>
    <thetext>Sam, can you please re-review?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1073956</commentid>
    <comment_count>41</comment_count>
      <attachid>247812</attachid>
    <who name="Sam Weinig">sam</who>
    <bug_when>2015-03-03 21:09:06 -0800</bug_when>
    <thetext>Comment on attachment 247812
Patch

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

&gt; Source/WebCore/dom/MicroTask.cpp:26
&gt; +#include &lt;wtf/text/StringBuilder.h&gt;

StringBuilder.h is unused in this file.  You may however need &lt;wtf/NeverDestroyed.h&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1073993</commentid>
    <comment_count>42</comment_count>
      <attachid>247843</attachid>
    <who name="Yoav Weiss">yoav</who>
    <bug_when>2015-03-03 23:04:53 -0800</bug_when>
    <thetext>Created attachment 247843
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1073994</commentid>
    <comment_count>43</comment_count>
    <who name="Yoav Weiss">yoav</who>
    <bug_when>2015-03-03 23:09:23 -0800</bug_when>
    <thetext>&gt; StringBuilder.h is unused in this file.  You may however need &lt;wtf/NeverDestroyed.h&gt;
[reply] [-] Comment 42

Removed StringBuilder. NeverDestroyed is included in the h file, which we include here.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1074004</commentid>
    <comment_count>44</comment_count>
      <attachid>247843</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2015-03-03 23:55:52 -0800</bug_when>
    <thetext>Comment on attachment 247843
Patch

Clearing flags on attachment: 247843

Committed r180996: &lt;http://trac.webkit.org/changeset/180996&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1074005</commentid>
    <comment_count>45</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2015-03-03 23:56:02 -0800</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>239429</attachid>
            <date>2014-10-07 13:00:34 -0700</date>
            <delta_ts>2014-10-07 13:24:45 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-137496-20141007220035.patch</filename>
            <type>text/plain</type>
            <size>14495</size>
            <attacher name="Yoav Weiss">yoav</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTc0MDUxCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggNTRlMTI4Yjk2MDEyYjhh
YjhhYTg2YjU4YzJmY2EyODRkZjFhOTVkYi4uZGMyZTJiMmIwZjNiOTYyYmM3MjI5NTc4Njg0YjAy
M2Q2OTYwOWIwMSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDM0IEBACisyMDE0LTEwLTA3ICBZb2F2
IFdlaXNzICA8eW9hdkB5b2F2LndzPgorCisgICAgICAgIEFkZCBhIG1pY3JvdGFzayBhYnN0cmFj
dGlvbgorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTM3
NDk2CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgTm8g
bmV3IHRlc3RzIGZvciB0aGlzIHBhdGNoLiBUZXN0cyB3aWxsIGJlIGFkZGVkIGluIGEgZm9sbG93
dXAgcGF0Y2ggdGhhdCB1c2VzIGl0LgorCisgICAgICAgIFRoaXMgcGF0Y2ggYWRkcyBhIG1pY3Jv
dGFzayBhYnN0cmFjdGlvbjogaHR0cHM6Ly9odG1sLnNwZWMud2hhdHdnLm9yZy9tdWx0aXBhZ2Uv
d2ViYXBwYXBpcy5odG1sI21pY3JvdGFzaworICAgICAgICBUaGF0IGFic3RyYWN0aW9uIGlzIHJl
cXVpcmVkIGluIG9yZGVyIHRvIGVuYWJsZSBhc3luYyBsb2FkaW5nIG9mIGltYWdlcywKKyAgICAg
ICAgd2hpY2ggaXMgaW4gdHVybiByZXF1aXJlZCB0byBlbmFibGUgc3VwcG9ydCBmb3IgdGhlIHBp
Y3R1cmUgZWxlbWVudC4KKworICAgICAgICAqIFdlYkNvcmUudmN4cHJvai9XZWJDb3JlLnZjeHBy
b2o6IEFkZCBNaWNyb1Rhc2suaCBhbmQgTWljcm9UYXNrUXVldWUuaCB0byB0aGUgcHJvamVjdC4K
KyAgICAgICAgKiBXZWJDb3JlLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2o6IEFkZCBNaWNyb1Rh
c2suaCBhbmQgTWljcm9UYXNrUXVldWUuaCB0byB0aGUgcHJvamVjdC4KKyAgICAgICAgKiBkb20v
RG9jdW1lbnQuY3BwOiBBZGQgYSBtaWNyb3Rhc2sgcXVldWUgdG8gZG9jdW1lbnQuCisgICAgICAg
IChXZWJDb3JlOjpEb2N1bWVudDo6cXVldWVNaWNyb1Rhc2spOiBBZGQgYSBtaWNyb3Rhc2sgdG8g
dGhlIHF1ZXVlLgorICAgICAgICAoV2ViQ29yZTo6RG9jdW1lbnQ6OnJ1bk1pY3JvVGFza3MpOiBS
dW4gYWxsIHRoZSBtaWNyb3Rhc2tzIGluIHRoZSBxdWV1ZSBhbmQgY2xlYXIgaXQuCisgICAgICAg
ICogZG9tL0RvY3VtZW50Lmg6CisgICAgICAgICogZG9tL01pY3JvVGFzay5oOiBBZGRlZC4gQSBt
aWNyb3Rhc2sgaW50ZXJmYWNlLgorICAgICAgICAoV2ViQ29yZTo6TWljcm9UYXNrOjp+TWljcm9U
YXNrKToKKyAgICAgICAgKiBkb20vTWljcm9UYXNrUXVldWUuaDogQWRkZWQuIEEgcXVldWUgY29u
dGFpbmluZyBtaWNyb3Rhc2tzLgorICAgICAgICAoV2ViQ29yZTo6TWljcm9UYXNrUXVldWU6OmFw
cGVuZCk6IEFkZCBhIG1pY3JvdGFzayB0byB0aGUgcXVldWUuCisgICAgICAgIChXZWJDb3JlOjpN
aWNyb1Rhc2tRdWV1ZTo6cnVuVGFza3MpOiBSdW4gYWxsIHRoZSBtaWNyb3Rhc2tzIGluIHRoZSBx
dWV1ZSBhbmQgY2xlYXIgaXQuCisgICAgICAgICogZG9tL1NjcmlwdFJ1bm5lci5jcHA6CisgICAg
ICAgIChXZWJDb3JlOjpTY3JpcHRSdW5uZXI6OnRpbWVyRmlyZWQpOiBUcmlnZ2VyIHJ1bm5pbmcg
b2YgbWljcm90YXNrcy4KKyAgICAgICAgKiBodG1sL3BhcnNlci9IVE1MU2NyaXB0UnVubmVyLmNw
cDogVHJpZ2dlciBydW5uaW5nIG9mIG1pY3JvdGFza3MuCisgICAgICAgIChXZWJDb3JlOjpIVE1M
U2NyaXB0UnVubmVyOjpleGVjdXRlUGVuZGluZ1NjcmlwdEFuZERpc3BhdGNoRXZlbnQpOgorICAg
ICAgICAoV2ViQ29yZTo6SFRNTFNjcmlwdFJ1bm5lcjo6ZXhlY3V0ZVNjcmlwdHNXYWl0aW5nRm9y
UGFyc2luZyk6CisgICAgICAgIChXZWJDb3JlOjpIVE1MU2NyaXB0UnVubmVyOjpydW5TY3JpcHQp
OgorCiAyMDE0LTA5LTI4ICBDaHJpc3RvcGhlIER1bWV6ICA8Y2R1bWV6QGFwcGxlLmNvbT4KIAog
ICAgICAgICBBdXRvbWF0aWNhbGx5IGdlbmVyYXRlIHRlbXBsYXRlIHNwZWNpYWxpemF0aW9ucyBm
b3IgbW9zdCBFbGVtZW50cwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvV2ViQ29yZS52Y3hw
cm9qL1dlYkNvcmUudmN4cHJvaiBiL1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUudmN4cHJvai9XZWJD
b3JlLnZjeHByb2oKaW5kZXggODY2MWJiMTcxOTU5Njk1MzEwZDEyMDZlYTgzZjhkYmE0MzQwOTQ2
Yy4uMDgzY2Q2YTBmMWZjYzQ5MTE1ZDcyNTkyZTAzZTEwMGQxMDFkYzk2NSAxMDA2NDQKLS0tIGEv
U291cmNlL1dlYkNvcmUvV2ViQ29yZS52Y3hwcm9qL1dlYkNvcmUudmN4cHJvagorKysgYi9Tb3Vy
Y2UvV2ViQ29yZS9XZWJDb3JlLnZjeHByb2ovV2ViQ29yZS52Y3hwcm9qCkBAIC0yMDUzOCw2ICsy
MDUzOCw4IEBACiAgICAgPENsSW5jbHVkZSBJbmNsdWRlPSIuLlxkb21cTWVzc2FnZUV2ZW50Lmgi
IC8+CiAgICAgPENsSW5jbHVkZSBJbmNsdWRlPSIuLlxkb21cTWVzc2FnZVBvcnQuaCIgLz4KICAg
ICA8Q2xJbmNsdWRlIEluY2x1ZGU9Ii4uXGRvbVxNZXNzYWdlUG9ydENoYW5uZWwuaCIgLz4KKyAg
ICA8Q2xJbmNsdWRlIEluY2x1ZGU9Ii4uXGRvbVxNaWNyb1Rhc2suaCIgLz4KKyAgICA8Q2xJbmNs
dWRlIEluY2x1ZGU9Ii4uXGRvbVxNaWNyb1Rhc2tRdWV1ZS5oIiAvPgogICAgIDxDbEluY2x1ZGUg
SW5jbHVkZT0iLi5cZG9tXE1vdXNlRXZlbnQuaCIgLz4KICAgICA8Q2xJbmNsdWRlIEluY2x1ZGU9
Ii4uXGRvbVxNb3VzZVJlbGF0ZWRFdmVudC5oIiAvPgogICAgIDxDbEluY2x1ZGUgSW5jbHVkZT0i
Li5cZG9tXE11dGF0aW9uRXZlbnQuaCIgLz4KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL1dl
YkNvcmUueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvaiBiL1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUu
eGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvagppbmRleCAxMTk0YzE0ZjY5ODFiYTA5Njc0MDcxZDJi
YWMxMWEzNjVkZjE1NTlhLi40ZmY0NGYxZjQ5ZTc1YzkxNDEyNzc2MzRmZTI1NDkyYjQ3ZWQwNGRk
IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9XZWJDb3JlLnhjb2RlcHJvai9wcm9qZWN0LnBi
eHByb2oKKysrIGIvU291cmNlL1dlYkNvcmUvV2ViQ29yZS54Y29kZXByb2ovcHJvamVjdC5wYnhw
cm9qCkBAIC0yMDI2LDYgKzIwMjYsOCBAQAogCQk1MzZENUEyMzE5M0U4RTBDMDBDRTRDQUIgLyog
UGFyc2luZ1V0aWxpdGllcy5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBm
aWxlUmVmID0gNTM2RDVBMjIxOTNFOEUwQzAwQ0U0Q0FCIC8qIFBhcnNpbmdVdGlsaXRpZXMuaCAq
LzsgfTsKIAkJNTM2RDVBMjUxOTNGNDBGQzAwQ0U0Q0FCIC8qIFNvdXJjZVNpemVMaXN0LmNwcCBp
biBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDUzNkQ1QTI0MTkz
RjQwRkMwMENFNENBQiAvKiBTb3VyY2VTaXplTGlzdC5jcHAgKi87IH07CiAJCTUzNkQ1QTI3MTkz
RjQxMEIwMENFNENBQiAvKiBTb3VyY2VTaXplTGlzdC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0g
UEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNTM2RDVBMjYxOTNGNDEwQjAwQ0U0Q0FCIC8qIFNvdXJj
ZVNpemVMaXN0LmggKi87IH07CisJCTUzQjg5NUFGMTlEQzdFRDkwMDlDQUE5MyAvKiBNaWNyb1Rh
c2suaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDUzQjg5
NUFEMTlEQzdDMzcwMDlDQUE5MyAvKiBNaWNyb1Rhc2suaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklC
VVRFUyA9IChQcml2YXRlLCApOyB9OyB9OworCQk1M0I4OTVCMDE5REM3RUREMDA5Q0FBOTMgLyog
TWljcm9UYXNrUXVldWUuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmls
ZVJlZiA9IDUzQjg5NUFFMTlEQzdDMzcwMDlDQUE5MyAvKiBNaWNyb1Rhc2tRdWV1ZS5oICovOyBz
ZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CiAJCTUzQzgyOThEMTNE
OEQ5MjcwMERFMkRFQiAvKiBSZW5kZXJGbGV4aWJsZUJveC5jcHAgaW4gU291cmNlcyAqLyA9IHtp
c2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA1M0M4Mjk4QjEzRDhEOTI3MDBERTJERUIgLyog
UmVuZGVyRmxleGlibGVCb3guY3BwICovOyB9OwogCQk1M0M4Mjk4RTEzRDhEOTI3MDBERTJERUIg
LyogUmVuZGVyRmxleGlibGVCb3guaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmls
ZTsgZmlsZVJlZiA9IDUzQzgyOThDMTNEOEQ5MjcwMERFMkRFQiAvKiBSZW5kZXJGbGV4aWJsZUJv
eC5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CiAJCTUz
RTI5RTVFMTY3QThBMTkwMDU4NkQzRCAvKiBJbnRlcm5hbFNldHRpbmdzR2VuZXJhdGVkLmNwcCBp
biBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDUzRTI5RTVDMTY3
QThBMTkwMDU4NkQzRCAvKiBJbnRlcm5hbFNldHRpbmdzR2VuZXJhdGVkLmNwcCAqLzsgfTsKQEAg
LTkxMzMsNiArOTEzNSw4IEBACiAJCTUzNkQ1QTIyMTkzRThFMEMwMENFNENBQiAvKiBQYXJzaW5n
VXRpbGl0aWVzLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0g
NDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgbmFtZSA9IFBhcnNpbmdVdGls
aXRpZXMuaDsgcGF0aCA9IHBhcnNlci9QYXJzaW5nVXRpbGl0aWVzLmg7IHNvdXJjZVRyZWUgPSAi
PGdyb3VwPiI7IH07CiAJCTUzNkQ1QTI0MTkzRjQwRkMwMENFNENBQiAvKiBTb3VyY2VTaXplTGlz
dC5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFz
dEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBTb3VyY2VTaXplTGlz
dC5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTUzNkQ1QTI2MTkzRjQxMEIwMENF
NENBQiAvKiBTb3VyY2VTaXplTGlzdC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZp
bGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGgg
PSBTb3VyY2VTaXplTGlzdC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk1M0I4OTVB
RDE5REM3QzM3MDA5Q0FBOTMgLyogTWljcm9UYXNrLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVy
ZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMu
aDsgcGF0aCA9IE1pY3JvVGFzay5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk1M0I4
OTVBRTE5REM3QzM3MDA5Q0FBOTMgLyogTWljcm9UYXNrUXVldWUuaCAqLyA9IHtpc2EgPSBQQlhG
aWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJj
ZWNvZGUuYy5oOyBwYXRoID0gTWljcm9UYXNrUXVldWUuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+
IjsgfTsKIAkJNTNDODI5OEIxM0Q4RDkyNzAwREUyREVCIC8qIFJlbmRlckZsZXhpYmxlQm94LmNw
cCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25v
d25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IFJlbmRlckZsZXhpYmxlQm94
LmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJNTNDODI5OEMxM0Q4RDkyNzAwREUy
REVCIC8qIFJlbmRlckZsZXhpYmxlQm94LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsg
ZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0
aCA9IFJlbmRlckZsZXhpYmxlQm94Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTUz
RTI5RTVDMTY3QThBMTkwMDU4NkQzRCAvKiBJbnRlcm5hbFNldHRpbmdzR2VuZXJhdGVkLmNwcCAq
LyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25G
aWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEludGVybmFsU2V0dGluZ3NHZW5l
cmF0ZWQuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwpAQCAtMjI2NjIsNiArMjI2NjYs
OCBAQAogCQkJCUUxQURFQ0JEMEU3NkFDRjEwMDRBMUE1RSAvKiBNZXNzYWdlUG9ydC5oICovLAog
CQkJCUUxQURFQ0M2MEU3NkFEMUYwMDRBMUE1RSAvKiBNZXNzYWdlUG9ydC5pZGwgKi8sCiAJCQkJ
NDFCRjcwMEEwRkU4NkY0OTAwNUU4REVDIC8qIE1lc3NhZ2VQb3J0Q2hhbm5lbC5oICovLAorCQkJ
CTUzQjg5NUFEMTlEQzdDMzcwMDlDQUE5MyAvKiBNaWNyb1Rhc2suaCAqLywKKwkJCQk1M0I4OTVB
RTE5REM3QzM3MDA5Q0FBOTMgLyogTWljcm9UYXNrUXVldWUuaCAqLywKIAkJCQk4NTAzMUIyRjBB
NDRFRkM3MDBGOTkyRTAgLyogTW91c2VFdmVudC5jcHAgKi8sCiAJCQkJODUwMzFCMzAwQTQ0RUZD
NzAwRjk5MkUwIC8qIE1vdXNlRXZlbnQuaCAqLywKIAkJCQkxNDFCOTRFNTA5RUM0MjIzMDAwRTk0
MTMgLyogTW91c2VFdmVudC5pZGwgKi8sCkBAIC0yNDI3OCw2ICsyNDI4NCw3IEBACiAJCQkJNTFD
ODFCOEEwQzQ0MjJGNzAwMTlFQ0UzIC8qIEZUUERpcmVjdG9yeVBhcnNlci5oIGluIEhlYWRlcnMg
Ki8sCiAJCQkJMjZCOTk5OTMxODAzQjlEOTAwRDAxMTIxIC8qIEZ1bmN0aW9uQ2FsbC5oIGluIEhl
YWRlcnMgKi8sCiAJCQkJOTlDQzBCNTIxOEJFOTg0OTAwNkNFQkNDIC8qIEZ1bmN0b3JJbnB1dEN1
cnNvci5oIGluIEhlYWRlcnMgKi8sCisJCQkJNTNCODk1QjAxOURDN0VERDAwOUNBQTkzIC8qIE1p
Y3JvVGFza1F1ZXVlLmggaW4gSGVhZGVycyAqLywKIAkJCQlGRDMxNjAwRDEyQjAyNjc2MDBDMUEz
NTkgLyogR2Fpbk5vZGUuaCBpbiBIZWFkZXJzICovLAogCQkJCTkzNUM0Nzc1MDlBQzREOEUwMEE2
QUFCNCAvKiBHYXBSZWN0cy5oIGluIEhlYWRlcnMgKi8sCiAJCQkJMTQzMkU4NDcwQzUxNDkzODAw
QjE1MDBGIC8qIEdDQ29udHJvbGxlci5oIGluIEhlYWRlcnMgKi8sCkBAIC0yNTU4Niw2ICsyNTU5
Myw3IEBACiAJCQkJNTNDODI5OEUxM0Q4RDkyNzAwREUyREVCIC8qIFJlbmRlckZsZXhpYmxlQm94
LmggaW4gSGVhZGVycyAqLywKIAkJCQk1MDhDQ0E0RjEzQ0YxMDZCMDAzMTUxRjMgLyogUmVuZGVy
Rmxvd1RocmVhZC5oIGluIEhlYWRlcnMgKi8sCiAJCQkJQTg3MURFRDMwQTE1MzBDNzAwQjEyQTY4
IC8qIFJlbmRlckZyYW1lLmggaW4gSGVhZGVycyAqLywKKwkJCQk1M0I4OTVBRjE5REM3RUQ5MDA5
Q0FBOTMgLyogTWljcm9UYXNrLmggaW4gSGVhZGVycyAqLywKIAkJCQkwRkQzMDgwRjExN0NGN0U3
MDBBNzkxRjcgLyogUmVuZGVyRnJhbWVCYXNlLmggaW4gSGVhZGVycyAqLywKIAkJCQlBODcxREVE
MTBBMTUzMEM3MDBCMTJBNjggLyogUmVuZGVyRnJhbWVTZXQuaCBpbiBIZWFkZXJzICovLAogCQkJ
CUNERUE3Qzg0MTI3NjIzMDQwMEI4NDZERCAvKiBSZW5kZXJGdWxsU2NyZWVuLmggaW4gSGVhZGVy
cyAqLywKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2RvbS9Eb2N1bWVudC5jcHAgYi9Tb3Vy
Y2UvV2ViQ29yZS9kb20vRG9jdW1lbnQuY3BwCmluZGV4IDVhOTAwZjA0Y2IyZDA3NWUzYzNkYmM0
ZDU0M2YxYjkxYmMyZDVlYWYuLjg2ZWEzZmFjMzMzMTcxM2MyYzgwMjZjODQxOTAzNmI4ZGQ0NzZk
ZmEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2RvbS9Eb2N1bWVudC5jcHAKKysrIGIvU291
cmNlL1dlYkNvcmUvZG9tL0RvY3VtZW50LmNwcApAQCAtNjI2Miw2ICs2MjYyLDE2IEBAIGJvb2wg
RG9jdW1lbnQ6Omhhc0ZvY3VzKCkgY29uc3QKICAgICByZXR1cm4gZmFsc2U7CiB9CiAKK3ZvaWQg
RG9jdW1lbnQ6OnF1ZXVlTWljcm9UYXNrKFBhc3NSZWZQdHI8TWljcm9UYXNrPiB0YXNrKQorewor
ICAgIG1fbWljcm9UYXNrUXVldWUuYXBwZW5kKHRhc2spOworfQorCit2b2lkIERvY3VtZW50Ojpy
dW5NaWNyb1Rhc2tzKCkKK3sKKyAgICBtX21pY3JvVGFza1F1ZXVlLnJ1blRhc2tzKCk7Cit9CisK
ICNpZiBFTkFCTEUoV0VCX1JFUExBWSkKIHZvaWQgRG9jdW1lbnQ6OnNldElucHV0Q3Vyc29yKFBh
c3NSZWZQdHI8SW5wdXRDdXJzb3I+IGN1cnNvcikKIHsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJD
b3JlL2RvbS9Eb2N1bWVudC5oIGIvU291cmNlL1dlYkNvcmUvZG9tL0RvY3VtZW50LmgKaW5kZXgg
MzdkNGZkMzlkYWMxYjU3MDFlMzRjZjg2YmJlY2YxMWQ1NTI1MzliYy4uZDA2ZjY4MTlhYTdjYjhk
MmRmNDkzZjg2ODRiMWNlOTAyN2M2NTljOCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvZG9t
L0RvY3VtZW50LmgKKysrIGIvU291cmNlL1dlYkNvcmUvZG9tL0RvY3VtZW50LmgKQEAgLTM2LDYg
KzM2LDcgQEAKICNpbmNsdWRlICJEb2N1bWVudFRpbWluZy5oIgogI2luY2x1ZGUgIkZvY3VzRGly
ZWN0aW9uLmgiCiAjaW5jbHVkZSAiSWNvblVSTC5oIgorI2luY2x1ZGUgIk1pY3JvVGFza1F1ZXVl
LmgiCiAjaW5jbHVkZSAiTXV0YXRpb25PYnNlcnZlci5oIgogI2luY2x1ZGUgIlBhZ2VWaXNpYmls
aXR5U3RhdGUuaCIKICNpbmNsdWRlICJQbGF0Zm9ybVNjcmVlbi5oIgpAQCAtMTI4OCw2ICsxMjg5
LDkgQEAgcHVibGljOgogICAgIGJvb2wgaGFzU3R5bGVXaXRoVmlld3BvcnRVbml0cygpIGNvbnN0
IHsgcmV0dXJuIG1faGFzU3R5bGVXaXRoVmlld3BvcnRVbml0czsgfQogICAgIHZvaWQgdXBkYXRl
Vmlld3BvcnRVbml0c09uUmVzaXplKCk7CiAKKyAgICB2b2lkIHF1ZXVlTWljcm9UYXNrKFBhc3NS
ZWZQdHI8TWljcm9UYXNrPik7CisgICAgdm9pZCBydW5NaWNyb1Rhc2tzKCk7CisKIHByb3RlY3Rl
ZDoKICAgICBlbnVtIENvbnN0cnVjdGlvbkZsYWdzIHsgU3ludGhlc2l6ZWQgPSAxLCBOb25SZW5k
ZXJlZFBsYWNlaG9sZGVyID0gMSA8PCAxIH07CiAgICAgRG9jdW1lbnQoRnJhbWUqLCBjb25zdCBV
UkwmLCB1bnNpZ25lZCA9IERlZmF1bHREb2N1bWVudENsYXNzLCB1bnNpZ25lZCBjb25zdHJ1Y3Rp
b25GbGFncyA9IDApOwpAQCAtMTcwNyw2ICsxNzExLDggQEAgcHJpdmF0ZToKICAgICBib29sIG1f
aGFzUHJlcGFyZWRGb3JEZXN0cnVjdGlvbjsKIAogICAgIGJvb2wgbV9oYXNTdHlsZVdpdGhWaWV3
cG9ydFVuaXRzOworCisgICAgTWljcm9UYXNrUXVldWUgbV9taWNyb1Rhc2tRdWV1ZTsKIH07CiAK
IGlubGluZSB2b2lkIERvY3VtZW50Ojpub3RpZnlSZW1vdmVQZW5kaW5nU2hlZXRJZk5lZWRlZCgp
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9kb20vTWljcm9UYXNrLmggYi9Tb3VyY2UvV2Vi
Q29yZS9kb20vTWljcm9UYXNrLmgKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uOTI5NmU2ZDk2ODI5NTEwMzlmODMwYzI3
MzZjZWMxMmExOWEzNDM4OQotLS0gL2Rldi9udWxsCisrKyBiL1NvdXJjZS9XZWJDb3JlL2RvbS9N
aWNyb1Rhc2suaApAQCAtMCwwICsxLDM2IEBACisvKgorICogQ29weXJpZ2h0IChDKSAyMDE0IFlv
YXYgV2Vpc3MgKHlvYXZAeW9hdi53cykKKyAqCisgKiBUaGlzIGxpYnJhcnkgaXMgZnJlZSBzb2Z0
d2FyZTsgeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29yCisgKiBtb2RpZnkgaXQgdW5kZXIg
dGhlIHRlcm1zIG9mIHRoZSBHTlUgTGlicmFyeSBHZW5lcmFsIFB1YmxpYworICogTGljZW5zZSBh
cyBwdWJsaXNoZWQgYnkgdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbjsgZWl0aGVyCisgKiB2
ZXJzaW9uIDIgb2YgdGhlIExpY2Vuc2UsIG9yIChhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZl
cnNpb24uCisgKgorICogVGhpcyBsaWJyYXJ5IGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRo
YXQgaXQgd2lsbCBiZSB1c2VmdWwsCisgKiBidXQgV0lUSE9VVCBBTlkgV0FSUkFOVFk7IHdpdGhv
dXQgZXZlbiB0aGUgaW1wbGllZCB3YXJyYW50eSBvZgorICogTUVSQ0hBTlRBQklMSVRZIG9yIEZJ
VE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFLiAgU2VlIHRoZSBHTlUKKyAqIExpYnJhcnkg
R2VuZXJhbCBQdWJsaWMgTGljZW5zZSBmb3IgbW9yZSBkZXRhaWxzLgorICoKKyAqIFlvdSBzaG91
bGQgaGF2ZSByZWNlaXZlZCBhIGNvcHkgb2YgdGhlIEdOVSBMaWJyYXJ5IEdlbmVyYWwgUHVibGlj
IExpY2Vuc2UKKyAqIGFsb25nIHdpdGggdGhpcyBsaWJyYXJ5OyBzZWUgdGhlIGZpbGUgQ09QWUlO
Ry5MSUIuICBJZiBub3QsIHdyaXRlIHRvCisgKiB0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9u
LCBJbmMuLCA1MSBGcmFua2xpbiBTdHJlZXQsIEZpZnRoIEZsb29yLAorICogQm9zdG9uLCBNQSAw
MjExMC0xMzAxLCBVU0EuCisgKgorICovCisKKyNpZm5kZWYgTWljcm9UYXNrX2gKKyNkZWZpbmUg
TWljcm9UYXNrX2gKKworI2luY2x1ZGUgPHd0Zi9SZWZDb3VudGVkLmg+CisKK25hbWVzcGFjZSBX
ZWJDb3JlIHsKKworY2xhc3MgTWljcm9UYXNrIDogcHVibGljIFJlZkNvdW50ZWQ8TWljcm9UYXNr
PiB7CitwdWJsaWM6CisgICAgdmlydHVhbCB2b2lkIHJ1bigpID0gMDsKKyAgICB2aXJ0dWFsIH5N
aWNyb1Rhc2soKSB7IH0KK307CisKK30gLy8gbmFtZXNwYWNlIFdlYkNvcmUKKworI2VuZGlmIC8v
IE1pY3JvVGFza19oCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9kb20vTWljcm9UYXNrUXVl
dWUuaCBiL1NvdXJjZS9XZWJDb3JlL2RvbS9NaWNyb1Rhc2tRdWV1ZS5oCm5ldyBmaWxlIG1vZGUg
MTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjcx
ZWY5ZWZjZTM0MzAzZDUyMzMzMzQ3ZTFmNTY0MTI4NDQ4ZDc1NGYKLS0tIC9kZXYvbnVsbAorKysg
Yi9Tb3VyY2UvV2ViQ29yZS9kb20vTWljcm9UYXNrUXVldWUuaApAQCAtMCwwICsxLDUyIEBACisv
KgorICogQ29weXJpZ2h0IChDKSAyMDE0IFlvYXYgV2Vpc3MgKHlvYXZAeW9hdi53cykKKyAqCisg
KiBUaGlzIGxpYnJhcnkgaXMgZnJlZSBzb2Z0d2FyZTsgeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQg
YW5kL29yCisgKiBtb2RpZnkgaXQgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUgTGlicmFyeSBH
ZW5lcmFsIFB1YmxpYworICogTGljZW5zZSBhcyBwdWJsaXNoZWQgYnkgdGhlIEZyZWUgU29mdHdh
cmUgRm91bmRhdGlvbjsgZWl0aGVyCisgKiB2ZXJzaW9uIDIgb2YgdGhlIExpY2Vuc2UsIG9yIChh
dCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uCisgKgorICogVGhpcyBsaWJyYXJ5IGlz
IGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCisgKiBidXQg
V0lUSE9VVCBBTlkgV0FSUkFOVFk7IHdpdGhvdXQgZXZlbiB0aGUgaW1wbGllZCB3YXJyYW50eSBv
ZgorICogTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NF
LiAgU2VlIHRoZSBHTlUKKyAqIExpYnJhcnkgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBmb3IgbW9y
ZSBkZXRhaWxzLgorICoKKyAqIFlvdSBzaG91bGQgaGF2ZSByZWNlaXZlZCBhIGNvcHkgb2YgdGhl
IEdOVSBMaWJyYXJ5IEdlbmVyYWwgUHVibGljIExpY2Vuc2UKKyAqIGFsb25nIHdpdGggdGhpcyBs
aWJyYXJ5OyBzZWUgdGhlIGZpbGUgQ09QWUlORy5MSUIuICBJZiBub3QsIHdyaXRlIHRvCisgKiB0
aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uLCBJbmMuLCA1MSBGcmFua2xpbiBTdHJlZXQsIEZp
ZnRoIEZsb29yLAorICogQm9zdG9uLCBNQSAwMjExMC0xMzAxLCBVU0EuCisgKgorICovCisKKyNp
Zm5kZWYgTWljcm9UYXNrUXVldWVfaAorI2RlZmluZSBNaWNyb1Rhc2tRdWV1ZV9oCisKKyNpbmNs
dWRlICJNaWNyb1Rhc2suaCIKKworI2luY2x1ZGUgPHd0Zi9SZWZDb3VudGVkLmg+CisjaW5jbHVk
ZSA8d3RmL1ZlY3Rvci5oPgorCituYW1lc3BhY2UgV2ViQ29yZSB7CisKK2NsYXNzIE1pY3JvVGFz
a1F1ZXVlIDogcHVibGljIFJlZkNvdW50ZWQ8TWljcm9UYXNrUXVldWU+IHsKK3B1YmxpYzoKKyAg
ICB2b2lkIGFwcGVuZChQYXNzUmVmUHRyPE1pY3JvVGFzaz4gdGFzaykKKyAgICB7CisgICAgICAg
IG1fdGFza3MuYXBwZW5kKHRhc2spOworICAgIH0KKworICAgIHZvaWQgcnVuVGFza3MoKQorICAg
IHsKKyAgICAgICAgZm9yIChhdXRvIHRhc2sgOiBtX3Rhc2tzKQorICAgICAgICAgICAgdGFzay0+
cnVuKCk7CisgICAgICAgIG1fdGFza3MuY2xlYXIoKTsKKyAgICB9CisKK3ByaXZhdGU6CisgICAg
VmVjdG9yPFJlZlB0cjxNaWNyb1Rhc2s+PiBtX3Rhc2tzOworfTsKKworfSAvLyBuYW1lc3BhY2Ug
V2ViQ29yZQorCisjZW5kaWYgLy8gTWljcm9UYXNrX2gKKwpkaWZmIC0tZ2l0IGEvU291cmNlL1dl
YkNvcmUvZG9tL1NjcmlwdFJ1bm5lci5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9kb20vU2NyaXB0UnVu
bmVyLmNwcAppbmRleCA5OTQ4OTYzNmJkZTk1Yjc3ODRlODRiZDU1NzhiOTM1NzExOTQ5ODc1Li41
YjVjZWFhOWE5N2EzYzA1NmI3OTJlN2E5M2NjZjQ3MjI5ODU2MWFiIDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViQ29yZS9kb20vU2NyaXB0UnVubmVyLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9kb20v
U2NyaXB0UnVubmVyLmNwcApAQCAtMTE4LDYgKzExOCw3IEBAIHZvaWQgU2NyaXB0UnVubmVyOjp0
aW1lckZpcmVkKFRpbWVyPFNjcmlwdFJ1bm5lcj4mIHRpbWVyKQogICAgICAgICB0b1NjcmlwdEVs
ZW1lbnRJZlBvc3NpYmxlKGVsZW1lbnQuZ2V0KCkpLT5leGVjdXRlKGNhY2hlZFNjcmlwdCk7CiAg
ICAgICAgIG1fZG9jdW1lbnQuZGVjcmVtZW50TG9hZEV2ZW50RGVsYXlDb3VudCgpOwogICAgIH0K
KyAgICBtX2RvY3VtZW50LnJ1bk1pY3JvVGFza3MoKTsKIH0KIAogfQpkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYkNvcmUvaHRtbC9wYXJzZXIvSFRNTFNjcmlwdFJ1bm5lci5jcHAgYi9Tb3VyY2UvV2Vi
Q29yZS9odG1sL3BhcnNlci9IVE1MU2NyaXB0UnVubmVyLmNwcAppbmRleCA0MWU3MjVmNjBkZTg2
ODFmMWNmOGRiNGI1Yzk4YWRiNjI2MjJmMjFiLi5mMjI0MmZjMjhmMTE4MWQzZDllZjVkZjY3NjU2
ZGZjY2IxNzczOWMyIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9odG1sL3BhcnNlci9IVE1M
U2NyaXB0UnVubmVyLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL3BhcnNlci9IVE1MU2Ny
aXB0UnVubmVyLmNwcApAQCAtMTI5LDggKzEyOSwxMCBAQCB2b2lkIEhUTUxTY3JpcHRSdW5uZXI6
OmV4ZWN1dGVQZW5kaW5nU2NyaXB0QW5kRGlzcGF0Y2hFdmVudChQZW5kaW5nU2NyaXB0JiBwZW5k
aQogICAgIGlmIChwZW5kaW5nU2NyaXB0LmNhY2hlZFNjcmlwdCgpICYmIHBlbmRpbmdTY3JpcHQu
d2F0Y2hpbmdGb3JMb2FkKCkpCiAgICAgICAgIHN0b3BXYXRjaGluZ0ZvckxvYWQocGVuZGluZ1Nj
cmlwdCk7CiAKLSAgICBpZiAoIWlzRXhlY3V0aW5nU2NyaXB0KCkpCisgICAgaWYgKCFpc0V4ZWN1
dGluZ1NjcmlwdCgpKSB7CiAgICAgICAgIE11dGF0aW9uT2JzZXJ2ZXI6OmRlbGl2ZXJBbGxNdXRh
dGlvbnMoKTsKKyAgICAgICAgbV9kb2N1bWVudC0+cnVuTWljcm9UYXNrcygpOworICAgIH0KIAog
ICAgIC8vIENsZWFyIHRoZSBwZW5kaW5nIHNjcmlwdCBiZWZvcmUgcG9zc2libGUgcmVudHJhbmN5
IGZyb20gZXhlY3V0ZVNjcmlwdCgpCiAgICAgUmVmUHRyPEVsZW1lbnQ+IGVsZW1lbnQgPSBwZW5k
aW5nU2NyaXB0LnJlbGVhc2VFbGVtZW50QW5kQ2xlYXIoKTsKQEAgLTIzMSw2ICsyMzMsNyBAQCBi
b29sIEhUTUxTY3JpcHRSdW5uZXI6OmV4ZWN1dGVTY3JpcHRzV2FpdGluZ0ZvclBhcnNpbmcoKQog
ICAgICAgICBpZiAoIW1fZG9jdW1lbnQpCiAgICAgICAgICAgICByZXR1cm4gZmFsc2U7CiAgICAg
fQorICAgIG1fZG9jdW1lbnQtPnJ1bk1pY3JvVGFza3MoKTsKICAgICByZXR1cm4gdHJ1ZTsKIH0K
IApAQCAtMjkzLDggKzI5NiwxMCBAQCB2b2lkIEhUTUxTY3JpcHRSdW5uZXI6OnJ1blNjcmlwdChF
bGVtZW50KiBzY3JpcHQsIGNvbnN0IFRleHRQb3NpdGlvbiYgc2NyaXB0U3RhcgogICAgICAgICAv
LyBldmVyeSBzY3JpcHQgZWxlbWVudCwgZXZlbiBpZiBpdCdzIG5vdCByZWFkeSB0byBleGVjdXRl
IHlldC4gVGhlcmUncwogICAgICAgICAvLyB1bmZvcnR1YW50ZWx5IG5vIG9idmlvdXMgd2F5IHRv
IHRlbGwgaWYgcHJlcGFyZVNjcmlwdCBpcyBnb2luZyB0bwogICAgICAgICAvLyBleGVjdXRlIHRo
ZSBzY3JpcHQgZnJvbSBvdXQgaGVyZS4KLSAgICAgICAgaWYgKCFpc0V4ZWN1dGluZ1NjcmlwdCgp
KQorICAgICAgICBpZiAoIWlzRXhlY3V0aW5nU2NyaXB0KCkpIHsKICAgICAgICAgICAgIE11dGF0
aW9uT2JzZXJ2ZXI6OmRlbGl2ZXJBbGxNdXRhdGlvbnMoKTsKKyAgICAgICAgICAgIG1fZG9jdW1l
bnQtPnJ1bk1pY3JvVGFza3MoKTsKKyAgICAgICAgfQogCiAgICAgICAgIEluc2VydGlvblBvaW50
UmVjb3JkIGluc2VydGlvblBvaW50UmVjb3JkKG1faG9zdC5pbnB1dFN0cmVhbSgpKTsKICAgICAg
ICAgTmVzdGluZ0xldmVsSW5jcmVtZW50ZXIgbmVzdGluZ0xldmVsSW5jcmVtZW50ZXIobV9zY3Jp
cHROZXN0aW5nTGV2ZWwpOwo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>239430</attachid>
            <date>2014-10-07 13:24:59 -0700</date>
            <delta_ts>2014-10-10 00:18:06 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-137496-20141007222501.patch</filename>
            <type>text/plain</type>
            <size>14457</size>
            <attacher name="Yoav Weiss">yoav</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTc0NDAzCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggODFiYzhiMDUwOWFmNzVl
ZjMwZTEyODk5MDAxOWE4YzZlODdhNDNlMi4uYjY2NDc2YmRiOGIxMjg5Y2JlMGFhYTc0YTY3MmVl
OTY0NzU3MDYyOSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDM0IEBACisyMDE0LTEwLTA3ICBZb2F2
IFdlaXNzICA8eW9hdkB5b2F2LndzPgorCisgICAgICAgIEFkZCBhIG1pY3JvdGFzayBhYnN0cmFj
dGlvbgorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTM3
NDk2CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgTm8g
bmV3IHRlc3RzIGZvciB0aGlzIHBhdGNoLiBUZXN0cyB3aWxsIGJlIGFkZGVkIGluIGEgZm9sbG93
dXAgcGF0Y2ggdGhhdCB1c2VzIGl0LgorCisgICAgICAgIFRoaXMgcGF0Y2ggYWRkcyBhIG1pY3Jv
dGFzayBhYnN0cmFjdGlvbjogaHR0cHM6Ly9odG1sLnNwZWMud2hhdHdnLm9yZy9tdWx0aXBhZ2Uv
d2ViYXBwYXBpcy5odG1sI21pY3JvdGFzaworICAgICAgICBUaGF0IGFic3RyYWN0aW9uIGlzIHJl
cXVpcmVkIGluIG9yZGVyIHRvIGVuYWJsZSBhc3luYyBsb2FkaW5nIG9mIGltYWdlcywKKyAgICAg
ICAgd2hpY2ggaXMgaW4gdHVybiByZXF1aXJlZCB0byBlbmFibGUgc3VwcG9ydCBmb3IgdGhlIHBp
Y3R1cmUgZWxlbWVudC4KKworICAgICAgICAqIFdlYkNvcmUudmN4cHJvai9XZWJDb3JlLnZjeHBy
b2o6IEFkZCBNaWNyb1Rhc2suaCBhbmQgTWljcm9UYXNrUXVldWUuaCB0byB0aGUgcHJvamVjdC4K
KyAgICAgICAgKiBXZWJDb3JlLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2o6IEFkZCBNaWNyb1Rh
c2suaCBhbmQgTWljcm9UYXNrUXVldWUuaCB0byB0aGUgcHJvamVjdC4KKyAgICAgICAgKiBkb20v
RG9jdW1lbnQuY3BwOiBBZGQgYSBtaWNyb3Rhc2sgcXVldWUgdG8gZG9jdW1lbnQuCisgICAgICAg
IChXZWJDb3JlOjpEb2N1bWVudDo6cXVldWVNaWNyb1Rhc2spOiBBZGQgYSBtaWNyb3Rhc2sgdG8g
dGhlIHF1ZXVlLgorICAgICAgICAoV2ViQ29yZTo6RG9jdW1lbnQ6OnJ1bk1pY3JvVGFza3MpOiBS
dW4gYWxsIHRoZSBtaWNyb3Rhc2tzIGluIHRoZSBxdWV1ZSBhbmQgY2xlYXIgaXQuCisgICAgICAg
ICogZG9tL0RvY3VtZW50Lmg6CisgICAgICAgICogZG9tL01pY3JvVGFzay5oOiBBZGRlZC4gQSBt
aWNyb3Rhc2sgaW50ZXJmYWNlLgorICAgICAgICAoV2ViQ29yZTo6TWljcm9UYXNrOjp+TWljcm9U
YXNrKToKKyAgICAgICAgKiBkb20vTWljcm9UYXNrUXVldWUuaDogQWRkZWQuIEEgcXVldWUgY29u
dGFpbmluZyBtaWNyb3Rhc2tzLgorICAgICAgICAoV2ViQ29yZTo6TWljcm9UYXNrUXVldWU6OmFw
cGVuZCk6IEFkZCBhIG1pY3JvdGFzayB0byB0aGUgcXVldWUuCisgICAgICAgIChXZWJDb3JlOjpN
aWNyb1Rhc2tRdWV1ZTo6cnVuVGFza3MpOiBSdW4gYWxsIHRoZSBtaWNyb3Rhc2tzIGluIHRoZSBx
dWV1ZSBhbmQgY2xlYXIgaXQuCisgICAgICAgICogZG9tL1NjcmlwdFJ1bm5lci5jcHA6CisgICAg
ICAgIChXZWJDb3JlOjpTY3JpcHRSdW5uZXI6OnRpbWVyRmlyZWQpOiBUcmlnZ2VyIHJ1bm5pbmcg
b2YgbWljcm90YXNrcy4KKyAgICAgICAgKiBodG1sL3BhcnNlci9IVE1MU2NyaXB0UnVubmVyLmNw
cDogVHJpZ2dlciBydW5uaW5nIG9mIG1pY3JvdGFza3MuCisgICAgICAgIChXZWJDb3JlOjpIVE1M
U2NyaXB0UnVubmVyOjpleGVjdXRlUGVuZGluZ1NjcmlwdEFuZERpc3BhdGNoRXZlbnQpOgorICAg
ICAgICAoV2ViQ29yZTo6SFRNTFNjcmlwdFJ1bm5lcjo6ZXhlY3V0ZVNjcmlwdHNXYWl0aW5nRm9y
UGFyc2luZyk6CisgICAgICAgIChXZWJDb3JlOjpIVE1MU2NyaXB0UnVubmVyOjpydW5TY3JpcHQp
OgorCiAyMDE0LTEwLTA3ICBDaHJpc3RvcGhlIER1bWV6ICA8Y2R1bWV6QGFwcGxlLmNvbT4KIAog
ICAgICAgICBVc2UgaXM8PigpIC8gZG93bmNhc3Q8PigpIGZvciBSZW5kZXJUZXh0IC8gUmVuZGVy
VGV4dEZyYWdtZW50CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9XZWJDb3JlLnZjeHByb2ov
V2ViQ29yZS52Y3hwcm9qIGIvU291cmNlL1dlYkNvcmUvV2ViQ29yZS52Y3hwcm9qL1dlYkNvcmUu
dmN4cHJvagppbmRleCBhNTFmYjU3OWYwNDAxMjlmNWYyMDFjMWJkNWNjOTlhZGIzMDUzMDAwLi5h
YWNmNzMzYTM4ZTVhOTU0ZmYwZTBmM2Y2OWUwMDY4MzdmMDA5NmVkIDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViQ29yZS9XZWJDb3JlLnZjeHByb2ovV2ViQ29yZS52Y3hwcm9qCisrKyBiL1NvdXJjZS9X
ZWJDb3JlL1dlYkNvcmUudmN4cHJvai9XZWJDb3JlLnZjeHByb2oKQEAgLTIwNTQzLDYgKzIwNTQz
LDggQEAKICAgICA8Q2xJbmNsdWRlIEluY2x1ZGU9Ii4uXGRvbVxNZXNzYWdlRXZlbnQuaCIgLz4K
ICAgICA8Q2xJbmNsdWRlIEluY2x1ZGU9Ii4uXGRvbVxNZXNzYWdlUG9ydC5oIiAvPgogICAgIDxD
bEluY2x1ZGUgSW5jbHVkZT0iLi5cZG9tXE1lc3NhZ2VQb3J0Q2hhbm5lbC5oIiAvPgorICAgIDxD
bEluY2x1ZGUgSW5jbHVkZT0iLi5cZG9tXE1pY3JvVGFzay5oIiAvPgorICAgIDxDbEluY2x1ZGUg
SW5jbHVkZT0iLi5cZG9tXE1pY3JvVGFza1F1ZXVlLmgiIC8+CiAgICAgPENsSW5jbHVkZSBJbmNs
dWRlPSIuLlxkb21cTW91c2VFdmVudC5oIiAvPgogICAgIDxDbEluY2x1ZGUgSW5jbHVkZT0iLi5c
ZG9tXE1vdXNlUmVsYXRlZEV2ZW50LmgiIC8+CiAgICAgPENsSW5jbHVkZSBJbmNsdWRlPSIuLlxk
b21cTXV0YXRpb25FdmVudC5oIiAvPgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvV2ViQ29y
ZS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qIGIvU291cmNlL1dlYkNvcmUvV2ViQ29yZS54Y29k
ZXByb2ovcHJvamVjdC5wYnhwcm9qCmluZGV4IDIzNmY5ZmEyODdkNTdiMzZjNTc0MTgyNjFmOTI5
MTc4MDAwNzc3NDQuLmE0NWZiYmZjOWMyYWE2ZTJiNGRhNTRiYzZlMjc2ZTdlNzQ1ZWYxYjcgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJv
agorKysgYi9Tb3VyY2UvV2ViQ29yZS9XZWJDb3JlLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2oK
QEAgLTIwMzMsNiArMjAzMyw4IEBACiAJCTUzNkQ1QTIzMTkzRThFMEMwMENFNENBQiAvKiBQYXJz
aW5nVXRpbGl0aWVzLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVS
ZWYgPSA1MzZENUEyMjE5M0U4RTBDMDBDRTRDQUIgLyogUGFyc2luZ1V0aWxpdGllcy5oICovOyB9
OwogCQk1MzZENUEyNTE5M0Y0MEZDMDBDRTRDQUIgLyogU291cmNlU2l6ZUxpc3QuY3BwIGluIFNv
dXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNTM2RDVBMjQxOTNGNDBG
QzAwQ0U0Q0FCIC8qIFNvdXJjZVNpemVMaXN0LmNwcCAqLzsgfTsKIAkJNTM2RDVBMjcxOTNGNDEw
QjAwQ0U0Q0FCIC8qIFNvdXJjZVNpemVMaXN0LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhC
dWlsZEZpbGU7IGZpbGVSZWYgPSA1MzZENUEyNjE5M0Y0MTBCMDBDRTRDQUIgLyogU291cmNlU2l6
ZUxpc3QuaCAqLzsgfTsKKwkJNTNCODk1QUYxOURDN0VEOTAwOUNBQTkzIC8qIE1pY3JvVGFzay5o
IGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNTNCODk1QUQx
OURDN0MzNzAwOUNBQTkzIC8qIE1pY3JvVGFzay5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVT
ID0gKFByaXZhdGUsICk7IH07IH07CisJCTUzQjg5NUIwMTlEQzdFREQwMDlDQUE5MyAvKiBNaWNy
b1Rhc2tRdWV1ZS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVm
ID0gNTNCODk1QUUxOURDN0MzNzAwOUNBQTkzIC8qIE1pY3JvVGFza1F1ZXVlLmggKi87IHNldHRp
bmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKIAkJNTNDODI5OEQxM0Q4RDky
NzAwREUyREVCIC8qIFJlbmRlckZsZXhpYmxlQm94LmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9
IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDUzQzgyOThCMTNEOEQ5MjcwMERFMkRFQiAvKiBSZW5k
ZXJGbGV4aWJsZUJveC5jcHAgKi87IH07CiAJCTUzQzgyOThFMTNEOEQ5MjcwMERFMkRFQiAvKiBS
ZW5kZXJGbGV4aWJsZUJveC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBm
aWxlUmVmID0gNTNDODI5OEMxM0Q4RDkyNzAwREUyREVCIC8qIFJlbmRlckZsZXhpYmxlQm94Lmgg
Ki87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKIAkJNTNFMjlF
NUUxNjdBOEExOTAwNTg2RDNEIC8qIEludGVybmFsU2V0dGluZ3NHZW5lcmF0ZWQuY3BwIGluIFNv
dXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNTNFMjlFNUMxNjdBOEEx
OTAwNTg2RDNEIC8qIEludGVybmFsU2V0dGluZ3NHZW5lcmF0ZWQuY3BwICovOyB9OwpAQCAtOTE0
Niw2ICs5MTQ4LDggQEAKIAkJNTM2RDVBMjIxOTNFOEUwQzAwQ0U0Q0FCIC8qIFBhcnNpbmdVdGls
aXRpZXMuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBs
YXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBuYW1lID0gUGFyc2luZ1V0aWxpdGll
cy5oOyBwYXRoID0gcGFyc2VyL1BhcnNpbmdVdGlsaXRpZXMuaDsgc291cmNlVHJlZSA9ICI8Z3Jv
dXA+IjsgfTsKIAkJNTM2RDVBMjQxOTNGNDBGQzAwQ0U0Q0FCIC8qIFNvdXJjZVNpemVMaXN0LmNw
cCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25v
d25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IFNvdXJjZVNpemVMaXN0LmNw
cDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJNTM2RDVBMjYxOTNGNDEwQjAwQ0U0Q0FC
IC8qIFNvdXJjZVNpemVMaXN0LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVu
Y29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFNv
dXJjZVNpemVMaXN0Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTUzQjg5NUFEMTlE
QzdDMzcwMDlDQUE5MyAvKiBNaWNyb1Rhc2suaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNl
OyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBw
YXRoID0gTWljcm9UYXNrLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTUzQjg5NUFF
MTlEQzdDMzcwMDlDQUE5MyAvKiBNaWNyb1Rhc2tRdWV1ZS5oICovID0ge2lzYSA9IFBCWEZpbGVS
ZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29k
ZS5jLmg7IHBhdGggPSBNaWNyb1Rhc2tRdWV1ZS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9
OwogCQk1M0M4Mjk4QjEzRDhEOTI3MDBERTJERUIgLyogUmVuZGVyRmxleGlibGVCb3guY3BwICov
ID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZp
bGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gUmVuZGVyRmxleGlibGVCb3guY3Bw
OyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQk1M0M4Mjk4QzEzRDhEOTI3MDBERTJERUIg
LyogUmVuZGVyRmxleGlibGVCb3guaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxl
RW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0g
UmVuZGVyRmxleGlibGVCb3guaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJNTNFMjlF
NUMxNjdBOEExOTAwNTg2RDNEIC8qIEludGVybmFsU2V0dGluZ3NHZW5lcmF0ZWQuY3BwICovID0g
e2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVU
eXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gSW50ZXJuYWxTZXR0aW5nc0dlbmVyYXRl
ZC5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CkBAIC0yMjY4OCw2ICsyMjY5Miw4IEBA
CiAJCQkJRTFBREVDQkQwRTc2QUNGMTAwNEExQTVFIC8qIE1lc3NhZ2VQb3J0LmggKi8sCiAJCQkJ
RTFBREVDQzYwRTc2QUQxRjAwNEExQTVFIC8qIE1lc3NhZ2VQb3J0LmlkbCAqLywKIAkJCQk0MUJG
NzAwQTBGRTg2RjQ5MDA1RThERUMgLyogTWVzc2FnZVBvcnRDaGFubmVsLmggKi8sCisJCQkJNTNC
ODk1QUQxOURDN0MzNzAwOUNBQTkzIC8qIE1pY3JvVGFzay5oICovLAorCQkJCTUzQjg5NUFFMTlE
QzdDMzcwMDlDQUE5MyAvKiBNaWNyb1Rhc2tRdWV1ZS5oICovLAogCQkJCTg1MDMxQjJGMEE0NEVG
QzcwMEY5OTJFMCAvKiBNb3VzZUV2ZW50LmNwcCAqLywKIAkJCQk4NTAzMUIzMDBBNDRFRkM3MDBG
OTkyRTAgLyogTW91c2VFdmVudC5oICovLAogCQkJCTE0MUI5NEU1MDlFQzQyMjMwMDBFOTQxMyAv
KiBNb3VzZUV2ZW50LmlkbCAqLywKQEAgLTI0MzA4LDYgKzI0MzE0LDcgQEAKIAkJCQk1MUM4MUI4
QTBDNDQyMkY3MDAxOUVDRTMgLyogRlRQRGlyZWN0b3J5UGFyc2VyLmggaW4gSGVhZGVycyAqLywK
IAkJCQkyNkI5OTk5MzE4MDNCOUQ5MDBEMDExMjEgLyogRnVuY3Rpb25DYWxsLmggaW4gSGVhZGVy
cyAqLywKIAkJCQk5OUNDMEI1MjE4QkU5ODQ5MDA2Q0VCQ0MgLyogRnVuY3RvcklucHV0Q3Vyc29y
LmggaW4gSGVhZGVycyAqLywKKwkJCQk1M0I4OTVCMDE5REM3RUREMDA5Q0FBOTMgLyogTWljcm9U
YXNrUXVldWUuaCBpbiBIZWFkZXJzICovLAogCQkJCUZEMzE2MDBEMTJCMDI2NzYwMEMxQTM1OSAv
KiBHYWluTm9kZS5oIGluIEhlYWRlcnMgKi8sCiAJCQkJOTM1QzQ3NzUwOUFDNEQ4RTAwQTZBQUI0
IC8qIEdhcFJlY3RzLmggaW4gSGVhZGVycyAqLywKIAkJCQkxNDMyRTg0NzBDNTE0OTM4MDBCMTUw
MEYgLyogR0NDb250cm9sbGVyLmggaW4gSGVhZGVycyAqLywKQEAgLTI1NjE2LDYgKzI1NjIzLDcg
QEAKIAkJCQk1M0M4Mjk4RTEzRDhEOTI3MDBERTJERUIgLyogUmVuZGVyRmxleGlibGVCb3guaCBp
biBIZWFkZXJzICovLAogCQkJCTUwOENDQTRGMTNDRjEwNkIwMDMxNTFGMyAvKiBSZW5kZXJGbG93
VGhyZWFkLmggaW4gSGVhZGVycyAqLywKIAkJCQlBODcxREVEMzBBMTUzMEM3MDBCMTJBNjggLyog
UmVuZGVyRnJhbWUuaCBpbiBIZWFkZXJzICovLAorCQkJCTUzQjg5NUFGMTlEQzdFRDkwMDlDQUE5
MyAvKiBNaWNyb1Rhc2suaCBpbiBIZWFkZXJzICovLAogCQkJCTBGRDMwODBGMTE3Q0Y3RTcwMEE3
OTFGNyAvKiBSZW5kZXJGcmFtZUJhc2UuaCBpbiBIZWFkZXJzICovLAogCQkJCUE4NzFERUQxMEEx
NTMwQzcwMEIxMkE2OCAvKiBSZW5kZXJGcmFtZVNldC5oIGluIEhlYWRlcnMgKi8sCiAJCQkJQ0RF
QTdDODQxMjc2MjMwNDAwQjg0NkREIC8qIFJlbmRlckZ1bGxTY3JlZW4uaCBpbiBIZWFkZXJzICov
LApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvZG9tL0RvY3VtZW50LmNwcCBiL1NvdXJjZS9X
ZWJDb3JlL2RvbS9Eb2N1bWVudC5jcHAKaW5kZXggMTdiMzg1NTk5ODlhYTZhZjU1NDkxY2NmMTVk
ODg3NmFiZDg4YWE3Mi4uOWI0NDNhZDg3ODc1NzNkZmFiN2E4NmNjOTFhNDJiOWE1NmI0MjBhMCAx
MDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvZG9tL0RvY3VtZW50LmNwcAorKysgYi9Tb3VyY2Uv
V2ViQ29yZS9kb20vRG9jdW1lbnQuY3BwCkBAIC02MzMyLDYgKzYzMzIsMTYgQEAgYm9vbCBEb2N1
bWVudDo6aGFzRm9jdXMoKSBjb25zdAogICAgIHJldHVybiBmYWxzZTsKIH0KIAordm9pZCBEb2N1
bWVudDo6cXVldWVNaWNyb1Rhc2soUGFzc1JlZlB0cjxNaWNyb1Rhc2s+IHRhc2spCit7CisgICAg
bV9taWNyb1Rhc2tRdWV1ZS5hcHBlbmQodGFzayk7Cit9CisKK3ZvaWQgRG9jdW1lbnQ6OnJ1bk1p
Y3JvVGFza3MoKQoreworICAgIG1fbWljcm9UYXNrUXVldWUucnVuVGFza3MoKTsKK30KKwogI2lm
IEVOQUJMRShXRUJfUkVQTEFZKQogdm9pZCBEb2N1bWVudDo6c2V0SW5wdXRDdXJzb3IoUGFzc1Jl
ZlB0cjxJbnB1dEN1cnNvcj4gY3Vyc29yKQogewpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUv
ZG9tL0RvY3VtZW50LmggYi9Tb3VyY2UvV2ViQ29yZS9kb20vRG9jdW1lbnQuaAppbmRleCA2YmRj
MDYyMGI0Njc0MGQxYTIwZTBjNmYzNWZlZTRkYzZiNjRhY2JkLi41MWQ2YzkyYmE2ZGZiOWUxNTJh
MGZiNTZmODg1ZmRhZGFlZWVkZWMyIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9kb20vRG9j
dW1lbnQuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9kb20vRG9jdW1lbnQuaApAQCAtMzYsNiArMzYs
NyBAQAogI2luY2x1ZGUgIkRvY3VtZW50VGltaW5nLmgiCiAjaW5jbHVkZSAiRm9jdXNEaXJlY3Rp
b24uaCIKICNpbmNsdWRlICJJY29uVVJMLmgiCisjaW5jbHVkZSAiTWljcm9UYXNrUXVldWUuaCIK
ICNpbmNsdWRlICJNdXRhdGlvbk9ic2VydmVyLmgiCiAjaW5jbHVkZSAiUGFnZVZpc2liaWxpdHlT
dGF0ZS5oIgogI2luY2x1ZGUgIlBsYXRmb3JtU2NyZWVuLmgiCkBAIC0xMjk0LDYgKzEyOTUsOSBA
QCBwdWJsaWM6CiAgICAgYm9vbCBpc1BsYXlpbmdBdWRpbygpIGNvbnN0IHsgcmV0dXJuIG1faXNQ
bGF5aW5nQXVkaW87IH0KICAgICB2b2lkIHVwZGF0ZUlzUGxheWluZ0F1ZGlvKCk7CiAKKyAgICB2
b2lkIHF1ZXVlTWljcm9UYXNrKFBhc3NSZWZQdHI8TWljcm9UYXNrPik7CisgICAgdm9pZCBydW5N
aWNyb1Rhc2tzKCk7CisKIHByb3RlY3RlZDoKICAgICBlbnVtIENvbnN0cnVjdGlvbkZsYWdzIHsg
U3ludGhlc2l6ZWQgPSAxLCBOb25SZW5kZXJlZFBsYWNlaG9sZGVyID0gMSA8PCAxIH07CiAgICAg
RG9jdW1lbnQoRnJhbWUqLCBjb25zdCBVUkwmLCB1bnNpZ25lZCA9IERlZmF1bHREb2N1bWVudENs
YXNzLCB1bnNpZ25lZCBjb25zdHJ1Y3Rpb25GbGFncyA9IDApOwpAQCAtMTcyNiw2ICsxNzMwLDgg
QEAgcHJpdmF0ZToKIAogICAgIEhhc2hTZXQ8TWVkaWFTZXNzaW9uKj4gbV9tZWRpYVNlc3Npb25z
OwogICAgIGJvb2wgbV9pc1BsYXlpbmdBdWRpbzsKKworICAgIE1pY3JvVGFza1F1ZXVlIG1fbWlj
cm9UYXNrUXVldWU7CiB9OwogCiBpbmxpbmUgdm9pZCBEb2N1bWVudDo6bm90aWZ5UmVtb3ZlUGVu
ZGluZ1NoZWV0SWZOZWVkZWQoKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvZG9tL01pY3Jv
VGFzay5oIGIvU291cmNlL1dlYkNvcmUvZG9tL01pY3JvVGFzay5oCm5ldyBmaWxlIG1vZGUgMTAw
NjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjkyOTZl
NmQ5NjgyOTUxMDM5ZjgzMGMyNzM2Y2VjMTJhMTlhMzQzODkKLS0tIC9kZXYvbnVsbAorKysgYi9T
b3VyY2UvV2ViQ29yZS9kb20vTWljcm9UYXNrLmgKQEAgLTAsMCArMSwzNiBAQAorLyoKKyAqIENv
cHlyaWdodCAoQykgMjAxNCBZb2F2IFdlaXNzICh5b2F2QHlvYXYud3MpCisgKgorICogVGhpcyBs
aWJyYXJ5IGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vcgor
ICogbW9kaWZ5IGl0IHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05VIExpYnJhcnkgR2VuZXJhbCBQ
dWJsaWMKKyAqIExpY2Vuc2UgYXMgcHVibGlzaGVkIGJ5IHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5k
YXRpb247IGVpdGhlcgorICogdmVyc2lvbiAyIG9mIHRoZSBMaWNlbnNlLCBvciAoYXQgeW91ciBv
cHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLgorICoKKyAqIFRoaXMgbGlicmFyeSBpcyBkaXN0cmli
dXRlZCBpbiB0aGUgaG9wZSB0aGF0IGl0IHdpbGwgYmUgdXNlZnVsLAorICogYnV0IFdJVEhPVVQg
QU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKKyAqIE1F
UkNIQU5UQUJJTElUWSBvciBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRS4gIFNlZSB0
aGUgR05VCisgKiBMaWJyYXJ5IEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWls
cy4KKyAqCisgKiBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgTGli
cmFyeSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlCisgKiBhbG9uZyB3aXRoIHRoaXMgbGlicmFyeTsg
c2VlIHRoZSBmaWxlIENPUFlJTkcuTElCLiAgSWYgbm90LCB3cml0ZSB0bworICogdGhlIEZyZWUg
U29mdHdhcmUgRm91bmRhdGlvbiwgSW5jLiwgNTEgRnJhbmtsaW4gU3RyZWV0LCBGaWZ0aCBGbG9v
ciwKKyAqIEJvc3RvbiwgTUEgMDIxMTAtMTMwMSwgVVNBLgorICoKKyAqLworCisjaWZuZGVmIE1p
Y3JvVGFza19oCisjZGVmaW5lIE1pY3JvVGFza19oCisKKyNpbmNsdWRlIDx3dGYvUmVmQ291bnRl
ZC5oPgorCituYW1lc3BhY2UgV2ViQ29yZSB7CisKK2NsYXNzIE1pY3JvVGFzayA6IHB1YmxpYyBS
ZWZDb3VudGVkPE1pY3JvVGFzaz4geworcHVibGljOgorICAgIHZpcnR1YWwgdm9pZCBydW4oKSA9
IDA7CisgICAgdmlydHVhbCB+TWljcm9UYXNrKCkgeyB9Cit9OworCit9IC8vIG5hbWVzcGFjZSBX
ZWJDb3JlCisKKyNlbmRpZiAvLyBNaWNyb1Rhc2tfaApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNv
cmUvZG9tL01pY3JvVGFza1F1ZXVlLmggYi9Tb3VyY2UvV2ViQ29yZS9kb20vTWljcm9UYXNrUXVl
dWUuaApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwLi43MWVmOWVmY2UzNDMwM2Q1MjMzMzM0N2UxZjU2NDEyODQ0OGQ3NTRm
Ci0tLSAvZGV2L251bGwKKysrIGIvU291cmNlL1dlYkNvcmUvZG9tL01pY3JvVGFza1F1ZXVlLmgK
QEAgLTAsMCArMSw1MiBAQAorLyoKKyAqIENvcHlyaWdodCAoQykgMjAxNCBZb2F2IFdlaXNzICh5
b2F2QHlvYXYud3MpCisgKgorICogVGhpcyBsaWJyYXJ5IGlzIGZyZWUgc29mdHdhcmU7IHlvdSBj
YW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vcgorICogbW9kaWZ5IGl0IHVuZGVyIHRoZSB0ZXJtcyBv
ZiB0aGUgR05VIExpYnJhcnkgR2VuZXJhbCBQdWJsaWMKKyAqIExpY2Vuc2UgYXMgcHVibGlzaGVk
IGJ5IHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb247IGVpdGhlcgorICogdmVyc2lvbiAyIG9m
IHRoZSBMaWNlbnNlLCBvciAoYXQgeW91ciBvcHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLgorICoK
KyAqIFRoaXMgbGlicmFyeSBpcyBkaXN0cmlidXRlZCBpbiB0aGUgaG9wZSB0aGF0IGl0IHdpbGwg
YmUgdXNlZnVsLAorICogYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhl
IGltcGxpZWQgd2FycmFudHkgb2YKKyAqIE1FUkNIQU5UQUJJTElUWSBvciBGSVRORVNTIEZPUiBB
IFBBUlRJQ1VMQVIgUFVSUE9TRS4gIFNlZSB0aGUgR05VCisgKiBMaWJyYXJ5IEdlbmVyYWwgUHVi
bGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KKyAqCisgKiBZb3Ugc2hvdWxkIGhhdmUgcmVj
ZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgTGlicmFyeSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlCisg
KiBhbG9uZyB3aXRoIHRoaXMgbGlicmFyeTsgc2VlIHRoZSBmaWxlIENPUFlJTkcuTElCLiAgSWYg
bm90LCB3cml0ZSB0bworICogdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbiwgSW5jLiwgNTEg
RnJhbmtsaW4gU3RyZWV0LCBGaWZ0aCBGbG9vciwKKyAqIEJvc3RvbiwgTUEgMDIxMTAtMTMwMSwg
VVNBLgorICoKKyAqLworCisjaWZuZGVmIE1pY3JvVGFza1F1ZXVlX2gKKyNkZWZpbmUgTWljcm9U
YXNrUXVldWVfaAorCisjaW5jbHVkZSAiTWljcm9UYXNrLmgiCisKKyNpbmNsdWRlIDx3dGYvUmVm
Q291bnRlZC5oPgorI2luY2x1ZGUgPHd0Zi9WZWN0b3IuaD4KKworbmFtZXNwYWNlIFdlYkNvcmUg
eworCitjbGFzcyBNaWNyb1Rhc2tRdWV1ZSA6IHB1YmxpYyBSZWZDb3VudGVkPE1pY3JvVGFza1F1
ZXVlPiB7CitwdWJsaWM6CisgICAgdm9pZCBhcHBlbmQoUGFzc1JlZlB0cjxNaWNyb1Rhc2s+IHRh
c2spCisgICAgeworICAgICAgICBtX3Rhc2tzLmFwcGVuZCh0YXNrKTsKKyAgICB9CisKKyAgICB2
b2lkIHJ1blRhc2tzKCkKKyAgICB7CisgICAgICAgIGZvciAoYXV0byB0YXNrIDogbV90YXNrcykK
KyAgICAgICAgICAgIHRhc2stPnJ1bigpOworICAgICAgICBtX3Rhc2tzLmNsZWFyKCk7CisgICAg
fQorCitwcml2YXRlOgorICAgIFZlY3RvcjxSZWZQdHI8TWljcm9UYXNrPj4gbV90YXNrczsKK307
CisKK30gLy8gbmFtZXNwYWNlIFdlYkNvcmUKKworI2VuZGlmIC8vIE1pY3JvVGFza19oCisKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2RvbS9TY3JpcHRSdW5uZXIuY3BwIGIvU291cmNlL1dl
YkNvcmUvZG9tL1NjcmlwdFJ1bm5lci5jcHAKaW5kZXggOTk0ODk2MzZiZGU5NWI3Nzg0ZTg0YmQ1
NTc4YjkzNTcxMTk0OTg3NS4uNWI1Y2VhYTlhOTdhM2MwNTZiNzkyZTdhOTNjY2Y0NzIyOTg1NjFh
YiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvZG9tL1NjcmlwdFJ1bm5lci5jcHAKKysrIGIv
U291cmNlL1dlYkNvcmUvZG9tL1NjcmlwdFJ1bm5lci5jcHAKQEAgLTExOCw2ICsxMTgsNyBAQCB2
b2lkIFNjcmlwdFJ1bm5lcjo6dGltZXJGaXJlZChUaW1lcjxTY3JpcHRSdW5uZXI+JiB0aW1lcikK
ICAgICAgICAgdG9TY3JpcHRFbGVtZW50SWZQb3NzaWJsZShlbGVtZW50LmdldCgpKS0+ZXhlY3V0
ZShjYWNoZWRTY3JpcHQpOwogICAgICAgICBtX2RvY3VtZW50LmRlY3JlbWVudExvYWRFdmVudERl
bGF5Q291bnQoKTsKICAgICB9CisgICAgbV9kb2N1bWVudC5ydW5NaWNyb1Rhc2tzKCk7CiB9CiAK
IH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvcGFyc2VyL0hUTUxTY3JpcHRSdW5u
ZXIuY3BwIGIvU291cmNlL1dlYkNvcmUvaHRtbC9wYXJzZXIvSFRNTFNjcmlwdFJ1bm5lci5jcHAK
aW5kZXggNDFlNzI1ZjYwZGU4NjgxZjFjZjhkYjRiNWM5OGFkYjYyNjIyZjIxYi4uZjIyNDJmYzI4
ZjExODFkM2Q5ZWY1ZGY2NzY1NmRmY2NiMTc3MzljMiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNv
cmUvaHRtbC9wYXJzZXIvSFRNTFNjcmlwdFJ1bm5lci5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUv
aHRtbC9wYXJzZXIvSFRNTFNjcmlwdFJ1bm5lci5jcHAKQEAgLTEyOSw4ICsxMjksMTAgQEAgdm9p
ZCBIVE1MU2NyaXB0UnVubmVyOjpleGVjdXRlUGVuZGluZ1NjcmlwdEFuZERpc3BhdGNoRXZlbnQo
UGVuZGluZ1NjcmlwdCYgcGVuZGkKICAgICBpZiAocGVuZGluZ1NjcmlwdC5jYWNoZWRTY3JpcHQo
KSAmJiBwZW5kaW5nU2NyaXB0LndhdGNoaW5nRm9yTG9hZCgpKQogICAgICAgICBzdG9wV2F0Y2hp
bmdGb3JMb2FkKHBlbmRpbmdTY3JpcHQpOwogCi0gICAgaWYgKCFpc0V4ZWN1dGluZ1NjcmlwdCgp
KQorICAgIGlmICghaXNFeGVjdXRpbmdTY3JpcHQoKSkgewogICAgICAgICBNdXRhdGlvbk9ic2Vy
dmVyOjpkZWxpdmVyQWxsTXV0YXRpb25zKCk7CisgICAgICAgIG1fZG9jdW1lbnQtPnJ1bk1pY3Jv
VGFza3MoKTsKKyAgICB9CiAKICAgICAvLyBDbGVhciB0aGUgcGVuZGluZyBzY3JpcHQgYmVmb3Jl
IHBvc3NpYmxlIHJlbnRyYW5jeSBmcm9tIGV4ZWN1dGVTY3JpcHQoKQogICAgIFJlZlB0cjxFbGVt
ZW50PiBlbGVtZW50ID0gcGVuZGluZ1NjcmlwdC5yZWxlYXNlRWxlbWVudEFuZENsZWFyKCk7CkBA
IC0yMzEsNiArMjMzLDcgQEAgYm9vbCBIVE1MU2NyaXB0UnVubmVyOjpleGVjdXRlU2NyaXB0c1dh
aXRpbmdGb3JQYXJzaW5nKCkKICAgICAgICAgaWYgKCFtX2RvY3VtZW50KQogICAgICAgICAgICAg
cmV0dXJuIGZhbHNlOwogICAgIH0KKyAgICBtX2RvY3VtZW50LT5ydW5NaWNyb1Rhc2tzKCk7CiAg
ICAgcmV0dXJuIHRydWU7CiB9CiAKQEAgLTI5Myw4ICsyOTYsMTAgQEAgdm9pZCBIVE1MU2NyaXB0
UnVubmVyOjpydW5TY3JpcHQoRWxlbWVudCogc2NyaXB0LCBjb25zdCBUZXh0UG9zaXRpb24mIHNj
cmlwdFN0YXIKICAgICAgICAgLy8gZXZlcnkgc2NyaXB0IGVsZW1lbnQsIGV2ZW4gaWYgaXQncyBu
b3QgcmVhZHkgdG8gZXhlY3V0ZSB5ZXQuIFRoZXJlJ3MKICAgICAgICAgLy8gdW5mb3J0dWFudGVs
eSBubyBvYnZpb3VzIHdheSB0byB0ZWxsIGlmIHByZXBhcmVTY3JpcHQgaXMgZ29pbmcgdG8KICAg
ICAgICAgLy8gZXhlY3V0ZSB0aGUgc2NyaXB0IGZyb20gb3V0IGhlcmUuCi0gICAgICAgIGlmICgh
aXNFeGVjdXRpbmdTY3JpcHQoKSkKKyAgICAgICAgaWYgKCFpc0V4ZWN1dGluZ1NjcmlwdCgpKSB7
CiAgICAgICAgICAgICBNdXRhdGlvbk9ic2VydmVyOjpkZWxpdmVyQWxsTXV0YXRpb25zKCk7Cisg
ICAgICAgICAgICBtX2RvY3VtZW50LT5ydW5NaWNyb1Rhc2tzKCk7CisgICAgICAgIH0KIAogICAg
ICAgICBJbnNlcnRpb25Qb2ludFJlY29yZCBpbnNlcnRpb25Qb2ludFJlY29yZChtX2hvc3QuaW5w
dXRTdHJlYW0oKSk7CiAgICAgICAgIE5lc3RpbmdMZXZlbEluY3JlbWVudGVyIG5lc3RpbmdMZXZl
bEluY3JlbWVudGVyKG1fc2NyaXB0TmVzdGluZ0xldmVsKTsK
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>239604</attachid>
            <date>2014-10-10 00:18:17 -0700</date>
            <delta_ts>2015-02-19 01:51:38 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-137496-20141010091819.patch</filename>
            <type>text/plain</type>
            <size>11921</size>
            <attacher name="Yoav Weiss">yoav</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTc0NDAzCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggODFiYzhiMDUwOWFmNzVl
ZjMwZTEyODk5MDAxOWE4YzZlODdhNDNlMi4uNWVjYjJmNmZmZDg5ZWZhMWUwMWRkMGY5OGM2OTU4
YzZlNzA1MTBiOCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDMxIEBACisyMDE0LTEwLTA3ICBZb2F2
IFdlaXNzICA8eW9hdkB5b2F2LndzPgorCisgICAgICAgIEFkZCBhIG1pY3JvdGFzayBhYnN0cmFj
dGlvbgorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTM3
NDk2CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgTm8g
bmV3IHRlc3RzIGZvciB0aGlzIHBhdGNoLiBUZXN0cyB3aWxsIGJlIGFkZGVkIGluIGEgZm9sbG93
dXAgcGF0Y2ggdGhhdCB1c2VzIGl0LgorCisgICAgICAgIFRoaXMgcGF0Y2ggYWRkcyBhIG1pY3Jv
dGFzayBhYnN0cmFjdGlvbjogaHR0cHM6Ly9odG1sLnNwZWMud2hhdHdnLm9yZy9tdWx0aXBhZ2Uv
d2ViYXBwYXBpcy5odG1sI21pY3JvdGFzaworICAgICAgICBUaGF0IGFic3RyYWN0aW9uIGlzIHJl
cXVpcmVkIGluIG9yZGVyIHRvIGVuYWJsZSBhc3luYyBsb2FkaW5nIG9mIGltYWdlcywKKyAgICAg
ICAgd2hpY2ggaXMgaW4gdHVybiByZXF1aXJlZCB0byBlbmFibGUgc3VwcG9ydCBmb3IgdGhlIHBp
Y3R1cmUgZWxlbWVudC4KKworICAgICAgICAqIFdlYkNvcmUudmN4cHJvai9XZWJDb3JlLnZjeHBy
b2o6IEFkZCBNaWNyb1Rhc2suaCB0byB0aGUgcHJvamVjdC4KKyAgICAgICAgKiBXZWJDb3JlLnhj
b2RlcHJvai9wcm9qZWN0LnBieHByb2o6IEFkZCBNaWNyb1Rhc2suaCB0byB0aGUgcHJvamVjdC4K
KyAgICAgICAgKiBkb20vRG9jdW1lbnQuY3BwOiBBZGQgYSBtaWNyb3Rhc2sgcXVldWUgdG8gZG9j
dW1lbnQuCisgICAgICAgIChXZWJDb3JlOjpEb2N1bWVudDo6cXVldWVNaWNyb1Rhc2spOiBBZGQg
YSBtaWNyb3Rhc2sgdG8gdGhlIHF1ZXVlLgorICAgICAgICAoV2ViQ29yZTo6RG9jdW1lbnQ6OnJ1
bk1pY3JvVGFza3MpOiBSdW4gYWxsIHRoZSBtaWNyb3Rhc2tzIGluIHRoZSBxdWV1ZSBhbmQgY2xl
YXIgaXQuCisgICAgICAgICogZG9tL0RvY3VtZW50Lmg6CisgICAgICAgICogZG9tL01pY3JvVGFz
ay5oOiBBZGRlZC4gQSBtaWNyb3Rhc2sgaW50ZXJmYWNlLgorICAgICAgICAoV2ViQ29yZTo6TWlj
cm9UYXNrOjp+TWljcm9UYXNrKToKKyAgICAgICAgKiBkb20vU2NyaXB0UnVubmVyLmNwcDoKKyAg
ICAgICAgKFdlYkNvcmU6OlNjcmlwdFJ1bm5lcjo6dGltZXJGaXJlZCk6IFRyaWdnZXIgcnVubmlu
ZyBvZiBtaWNyb3Rhc2tzLgorICAgICAgICAqIGh0bWwvcGFyc2VyL0hUTUxTY3JpcHRSdW5uZXIu
Y3BwOiBUcmlnZ2VyIHJ1bm5pbmcgb2YgbWljcm90YXNrcy4KKyAgICAgICAgKFdlYkNvcmU6OkhU
TUxTY3JpcHRSdW5uZXI6OmV4ZWN1dGVQZW5kaW5nU2NyaXB0QW5kRGlzcGF0Y2hFdmVudCk6Cisg
ICAgICAgIChXZWJDb3JlOjpIVE1MU2NyaXB0UnVubmVyOjpleGVjdXRlU2NyaXB0c1dhaXRpbmdG
b3JQYXJzaW5nKToKKyAgICAgICAgKFdlYkNvcmU6OkhUTUxTY3JpcHRSdW5uZXI6OnJ1blNjcmlw
dCk6CisKIDIwMTQtMTAtMDcgIENocmlzdG9waGUgRHVtZXogIDxjZHVtZXpAYXBwbGUuY29tPgog
CiAgICAgICAgIFVzZSBpczw+KCkgLyBkb3duY2FzdDw+KCkgZm9yIFJlbmRlclRleHQgLyBSZW5k
ZXJUZXh0RnJhZ21lbnQKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUudmN4cHJv
ai9XZWJDb3JlLnZjeHByb2ogYi9Tb3VyY2UvV2ViQ29yZS9XZWJDb3JlLnZjeHByb2ovV2ViQ29y
ZS52Y3hwcm9qCmluZGV4IGE1MWZiNTc5ZjA0MDEyOWY1ZjIwMWMxYmQ1Y2M5OWFkYjMwNTMwMDAu
LjZhYTk1ZWI3MGJiZmM5Y2MwNjFjOThiNjkzYzhkN2YzYWQ0ZTk5MDQgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9XZWJDb3JlL1dlYkNvcmUudmN4cHJvai9XZWJDb3JlLnZjeHByb2oKKysrIGIvU291cmNl
L1dlYkNvcmUvV2ViQ29yZS52Y3hwcm9qL1dlYkNvcmUudmN4cHJvagpAQCAtMjA1NDMsNiArMjA1
NDMsNyBAQAogICAgIDxDbEluY2x1ZGUgSW5jbHVkZT0iLi5cZG9tXE1lc3NhZ2VFdmVudC5oIiAv
PgogICAgIDxDbEluY2x1ZGUgSW5jbHVkZT0iLi5cZG9tXE1lc3NhZ2VQb3J0LmgiIC8+CiAgICAg
PENsSW5jbHVkZSBJbmNsdWRlPSIuLlxkb21cTWVzc2FnZVBvcnRDaGFubmVsLmgiIC8+CisgICAg
PENsSW5jbHVkZSBJbmNsdWRlPSIuLlxkb21cTWljcm9UYXNrLmgiIC8+CiAgICAgPENsSW5jbHVk
ZSBJbmNsdWRlPSIuLlxkb21cTW91c2VFdmVudC5oIiAvPgogICAgIDxDbEluY2x1ZGUgSW5jbHVk
ZT0iLi5cZG9tXE1vdXNlUmVsYXRlZEV2ZW50LmgiIC8+CiAgICAgPENsSW5jbHVkZSBJbmNsdWRl
PSIuLlxkb21cTXV0YXRpb25FdmVudC5oIiAvPgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUv
V2ViQ29yZS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qIGIvU291cmNlL1dlYkNvcmUvV2ViQ29y
ZS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qCmluZGV4IDIzNmY5ZmEyODdkNTdiMzZjNTc0MTgy
NjFmOTI5MTc4MDAwNzc3NDQuLjI4NzBjMGI0MjBlNTg5YTE1ODYwYzYwZWVlZGExNmNjZGEyMzZm
MzIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUueGNvZGVwcm9qL3Byb2plY3Qu
cGJ4cHJvagorKysgYi9Tb3VyY2UvV2ViQ29yZS9XZWJDb3JlLnhjb2RlcHJvai9wcm9qZWN0LnBi
eHByb2oKQEAgLTIwMzMsNiArMjAzMyw3IEBACiAJCTUzNkQ1QTIzMTkzRThFMEMwMENFNENBQiAv
KiBQYXJzaW5nVXRpbGl0aWVzLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7
IGZpbGVSZWYgPSA1MzZENUEyMjE5M0U4RTBDMDBDRTRDQUIgLyogUGFyc2luZ1V0aWxpdGllcy5o
ICovOyB9OwogCQk1MzZENUEyNTE5M0Y0MEZDMDBDRTRDQUIgLyogU291cmNlU2l6ZUxpc3QuY3Bw
IGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNTM2RDVBMjQx
OTNGNDBGQzAwQ0U0Q0FCIC8qIFNvdXJjZVNpemVMaXN0LmNwcCAqLzsgfTsKIAkJNTM2RDVBMjcx
OTNGNDEwQjAwQ0U0Q0FCIC8qIFNvdXJjZVNpemVMaXN0LmggaW4gSGVhZGVycyAqLyA9IHtpc2Eg
PSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA1MzZENUEyNjE5M0Y0MTBCMDBDRTRDQUIgLyogU291
cmNlU2l6ZUxpc3QuaCAqLzsgfTsKKwkJNTNCODk1QUYxOURDN0VEOTAwOUNBQTkzIC8qIE1pY3Jv
VGFzay5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNTNC
ODk1QUQxOURDN0MzNzAwOUNBQTkzIC8qIE1pY3JvVGFzay5oICovOyBzZXR0aW5ncyA9IHtBVFRS
SUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CiAJCTUzQzgyOThEMTNEOEQ5MjcwMERFMkRFQiAv
KiBSZW5kZXJGbGV4aWJsZUJveC5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZp
bGU7IGZpbGVSZWYgPSA1M0M4Mjk4QjEzRDhEOTI3MDBERTJERUIgLyogUmVuZGVyRmxleGlibGVC
b3guY3BwICovOyB9OwogCQk1M0M4Mjk4RTEzRDhEOTI3MDBERTJERUIgLyogUmVuZGVyRmxleGli
bGVCb3guaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDUz
QzgyOThDMTNEOEQ5MjcwMERFMkRFQiAvKiBSZW5kZXJGbGV4aWJsZUJveC5oICovOyBzZXR0aW5n
cyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CiAJCTUzRTI5RTVFMTY3QThBMTkw
MDU4NkQzRCAvKiBJbnRlcm5hbFNldHRpbmdzR2VuZXJhdGVkLmNwcCBpbiBTb3VyY2VzICovID0g
e2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDUzRTI5RTVDMTY3QThBMTkwMDU4NkQzRCAv
KiBJbnRlcm5hbFNldHRpbmdzR2VuZXJhdGVkLmNwcCAqLzsgfTsKQEAgLTkxNDYsNiArOTE0Nyw3
IEBACiAJCTUzNkQ1QTIyMTkzRThFMEMwMENFNENBQiAvKiBQYXJzaW5nVXRpbGl0aWVzLmggKi8g
PSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmls
ZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgbmFtZSA9IFBhcnNpbmdVdGlsaXRpZXMuaDsgcGF0aCA9
IHBhcnNlci9QYXJzaW5nVXRpbGl0aWVzLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJ
CTUzNkQ1QTI0MTkzRjQwRkMwMENFNENBQiAvKiBTb3VyY2VTaXplTGlzdC5jcHAgKi8gPSB7aXNh
ID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUg
PSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBTb3VyY2VTaXplTGlzdC5jcHA7IHNvdXJjZVRy
ZWUgPSAiPGdyb3VwPiI7IH07CiAJCTUzNkQ1QTI2MTkzRjQxMEIwMENFNENBQiAvKiBTb3VyY2VT
aXplTGlzdC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7
IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBTb3VyY2VTaXplTGlz
dC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk1M0I4OTVBRDE5REM3QzM3MDA5Q0FB
OTMgLyogTWljcm9UYXNrLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29k
aW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IE1pY3Jv
VGFzay5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQk1M0M4Mjk4QjEzRDhEOTI3MDBE
RTJERUIgLyogUmVuZGVyRmxleGlibGVCb3guY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVu
Y2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAu
Y3BwOyBwYXRoID0gUmVuZGVyRmxleGlibGVCb3guY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4i
OyB9OwogCQk1M0M4Mjk4QzEzRDhEOTI3MDBERTJERUIgLyogUmVuZGVyRmxleGlibGVCb3guaCAq
LyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25G
aWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gUmVuZGVyRmxleGlibGVCb3guaDsgc291
cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJNTNFMjlFNUMxNjdBOEExOTAwNTg2RDNEIC8qIElu
dGVybmFsU2V0dGluZ3NHZW5lcmF0ZWQuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7
IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3Bw
OyBwYXRoID0gSW50ZXJuYWxTZXR0aW5nc0dlbmVyYXRlZC5jcHA7IHNvdXJjZVRyZWUgPSAiPGdy
b3VwPiI7IH07CkBAIC0yMjY4OCw2ICsyMjY5MCw3IEBACiAJCQkJRTFBREVDQkQwRTc2QUNGMTAw
NEExQTVFIC8qIE1lc3NhZ2VQb3J0LmggKi8sCiAJCQkJRTFBREVDQzYwRTc2QUQxRjAwNEExQTVF
IC8qIE1lc3NhZ2VQb3J0LmlkbCAqLywKIAkJCQk0MUJGNzAwQTBGRTg2RjQ5MDA1RThERUMgLyog
TWVzc2FnZVBvcnRDaGFubmVsLmggKi8sCisJCQkJNTNCODk1QUQxOURDN0MzNzAwOUNBQTkzIC8q
IE1pY3JvVGFzay5oICovLAogCQkJCTg1MDMxQjJGMEE0NEVGQzcwMEY5OTJFMCAvKiBNb3VzZUV2
ZW50LmNwcCAqLywKIAkJCQk4NTAzMUIzMDBBNDRFRkM3MDBGOTkyRTAgLyogTW91c2VFdmVudC5o
ICovLAogCQkJCTE0MUI5NEU1MDlFQzQyMjMwMDBFOTQxMyAvKiBNb3VzZUV2ZW50LmlkbCAqLywK
QEAgLTI1NjE2LDYgKzI1NjE5LDcgQEAKIAkJCQk1M0M4Mjk4RTEzRDhEOTI3MDBERTJERUIgLyog
UmVuZGVyRmxleGlibGVCb3guaCBpbiBIZWFkZXJzICovLAogCQkJCTUwOENDQTRGMTNDRjEwNkIw
MDMxNTFGMyAvKiBSZW5kZXJGbG93VGhyZWFkLmggaW4gSGVhZGVycyAqLywKIAkJCQlBODcxREVE
MzBBMTUzMEM3MDBCMTJBNjggLyogUmVuZGVyRnJhbWUuaCBpbiBIZWFkZXJzICovLAorCQkJCTUz
Qjg5NUFGMTlEQzdFRDkwMDlDQUE5MyAvKiBNaWNyb1Rhc2suaCBpbiBIZWFkZXJzICovLAogCQkJ
CTBGRDMwODBGMTE3Q0Y3RTcwMEE3OTFGNyAvKiBSZW5kZXJGcmFtZUJhc2UuaCBpbiBIZWFkZXJz
ICovLAogCQkJCUE4NzFERUQxMEExNTMwQzcwMEIxMkE2OCAvKiBSZW5kZXJGcmFtZVNldC5oIGlu
IEhlYWRlcnMgKi8sCiAJCQkJQ0RFQTdDODQxMjc2MjMwNDAwQjg0NkREIC8qIFJlbmRlckZ1bGxT
Y3JlZW4uaCBpbiBIZWFkZXJzICovLApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvZG9tL0Rv
Y3VtZW50LmNwcCBiL1NvdXJjZS9XZWJDb3JlL2RvbS9Eb2N1bWVudC5jcHAKaW5kZXggMTdiMzg1
NTk5ODlhYTZhZjU1NDkxY2NmMTVkODg3NmFiZDg4YWE3Mi4uYTRhOTMxNmFkZjk0NGNkMzFjZmFl
NjMyNDY3ZTM1MWU5NzYwZWFiOSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvZG9tL0RvY3Vt
ZW50LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9kb20vRG9jdW1lbnQuY3BwCkBAIC0xMDAsNiAr
MTAwLDcgQEAKICNpbmNsdWRlICJNZWRpYVF1ZXJ5TGlzdC5oIgogI2luY2x1ZGUgIk1lZGlhUXVl
cnlNYXRjaGVyLmgiCiAjaW5jbHVkZSAiTWVkaWFTZXNzaW9uLmgiCisjaW5jbHVkZSAiTWljcm9U
YXNrLmgiCiAjaW5jbHVkZSAiTW91c2VFdmVudFdpdGhIaXRUZXN0UmVzdWx0cy5oIgogI2luY2x1
ZGUgIk5hbWVOb2RlTGlzdC5oIgogI2luY2x1ZGUgIk5lc3RpbmdMZXZlbEluY3JlbWVudGVyLmgi
CkBAIC02MzMyLDYgKzYzMzMsMjAgQEAgYm9vbCBEb2N1bWVudDo6aGFzRm9jdXMoKSBjb25zdAog
ICAgIHJldHVybiBmYWxzZTsKIH0KIAordm9pZCBEb2N1bWVudDo6cXVldWVNaWNyb1Rhc2soc3Rk
Ojp1bmlxdWVfcHRyPE1pY3JvVGFzaz4gdGFzaykKK3sKKyAgICBBU1NFUlQoaXNNYWluVGhyZWFk
KCkpOworICAgIG1fbWljcm9UYXNrUXVldWUuYXBwZW5kKFdURjo6bW92ZSh0YXNrKSk7Cit9CisK
K3ZvaWQgRG9jdW1lbnQ6OnJ1bk1pY3JvVGFza3MoKQoreworICAgIEFTU0VSVChpc01haW5UaHJl
YWQoKSk7CisgICAgZm9yIChhdXRvJiB0YXNrIDogbV9taWNyb1Rhc2tRdWV1ZSkKKyAgICAgICAg
dGFzay0+cnVuKCk7CisgICAgbV9taWNyb1Rhc2tRdWV1ZS5jbGVhcigpOworfQorCiAjaWYgRU5B
QkxFKFdFQl9SRVBMQVkpCiB2b2lkIERvY3VtZW50OjpzZXRJbnB1dEN1cnNvcihQYXNzUmVmUHRy
PElucHV0Q3Vyc29yPiBjdXJzb3IpCiB7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9kb20v
RG9jdW1lbnQuaCBiL1NvdXJjZS9XZWJDb3JlL2RvbS9Eb2N1bWVudC5oCmluZGV4IDZiZGMwNjIw
YjQ2NzQwZDFhMjBlMGM2ZjM1ZmVlNGRjNmI2NGFjYmQuLjJkNTkxMTE1MTYzY2VhOGJkZmEyNWFh
MDcwOTZmZjMwODBkOTY4ZDUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2RvbS9Eb2N1bWVu
dC5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2RvbS9Eb2N1bWVudC5oCkBAIC0xMjQsNiArMTI0LDcg
QEAgY2xhc3MgTWVkaWFDYW5TdGFydExpc3RlbmVyOwogY2xhc3MgTWVkaWFRdWVyeUxpc3Q7CiBj
bGFzcyBNZWRpYVF1ZXJ5TWF0Y2hlcjsKIGNsYXNzIE1lZGlhU2Vzc2lvbjsKK2NsYXNzIE1pY3Jv
VGFzazsKIGNsYXNzIE1vdXNlRXZlbnRXaXRoSGl0VGVzdFJlc3VsdHM7CiBjbGFzcyBOYW1lZEZs
b3dDb2xsZWN0aW9uOwogY2xhc3MgTm9kZUZpbHRlcjsKQEAgLTEyOTQsNiArMTI5NSw5IEBAIHB1
YmxpYzoKICAgICBib29sIGlzUGxheWluZ0F1ZGlvKCkgY29uc3QgeyByZXR1cm4gbV9pc1BsYXlp
bmdBdWRpbzsgfQogICAgIHZvaWQgdXBkYXRlSXNQbGF5aW5nQXVkaW8oKTsKIAorICAgIHZvaWQg
cXVldWVNaWNyb1Rhc2soc3RkOjp1bmlxdWVfcHRyPE1pY3JvVGFzaz4pOworICAgIHZvaWQgcnVu
TWljcm9UYXNrcygpOworCiBwcm90ZWN0ZWQ6CiAgICAgZW51bSBDb25zdHJ1Y3Rpb25GbGFncyB7
IFN5bnRoZXNpemVkID0gMSwgTm9uUmVuZGVyZWRQbGFjZWhvbGRlciA9IDEgPDwgMSB9OwogICAg
IERvY3VtZW50KEZyYW1lKiwgY29uc3QgVVJMJiwgdW5zaWduZWQgPSBEZWZhdWx0RG9jdW1lbnRD
bGFzcywgdW5zaWduZWQgY29uc3RydWN0aW9uRmxhZ3MgPSAwKTsKQEAgLTE3MjYsNiArMTczMCw4
IEBAIHByaXZhdGU6CiAKICAgICBIYXNoU2V0PE1lZGlhU2Vzc2lvbio+IG1fbWVkaWFTZXNzaW9u
czsKICAgICBib29sIG1faXNQbGF5aW5nQXVkaW87CisKKyAgICBWZWN0b3I8c3RkOjp1bmlxdWVf
cHRyPE1pY3JvVGFzaz4+IG1fbWljcm9UYXNrUXVldWU7CiB9OwogCiBpbmxpbmUgdm9pZCBEb2N1
bWVudDo6bm90aWZ5UmVtb3ZlUGVuZGluZ1NoZWV0SWZOZWVkZWQoKQpkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYkNvcmUvZG9tL01pY3JvVGFzay5oIGIvU291cmNlL1dlYkNvcmUvZG9tL01pY3JvVGFz
ay5oCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAuLjQ1ZTBjNGU0NWUyOTA0MjMzYTY2ODZiZDliZTZlZGY4ZTlkNDUxOWQK
LS0tIC9kZXYvbnVsbAorKysgYi9Tb3VyY2UvV2ViQ29yZS9kb20vTWljcm9UYXNrLmgKQEAgLTAs
MCArMSwzNCBAQAorLyoKKyAqIENvcHlyaWdodCAoQykgMjAxNCBZb2F2IFdlaXNzICh5b2F2QHlv
YXYud3MpCisgKgorICogVGhpcyBsaWJyYXJ5IGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVk
aXN0cmlidXRlIGl0IGFuZC9vcgorICogbW9kaWZ5IGl0IHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUg
R05VIExpYnJhcnkgR2VuZXJhbCBQdWJsaWMKKyAqIExpY2Vuc2UgYXMgcHVibGlzaGVkIGJ5IHRo
ZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb247IGVpdGhlcgorICogdmVyc2lvbiAyIG9mIHRoZSBM
aWNlbnNlLCBvciAoYXQgeW91ciBvcHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLgorICoKKyAqIFRo
aXMgbGlicmFyeSBpcyBkaXN0cmlidXRlZCBpbiB0aGUgaG9wZSB0aGF0IGl0IHdpbGwgYmUgdXNl
ZnVsLAorICogYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxp
ZWQgd2FycmFudHkgb2YKKyAqIE1FUkNIQU5UQUJJTElUWSBvciBGSVRORVNTIEZPUiBBIFBBUlRJ
Q1VMQVIgUFVSUE9TRS4gIFNlZSB0aGUgR05VCisgKiBMaWJyYXJ5IEdlbmVyYWwgUHVibGljIExp
Y2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KKyAqCisgKiBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQg
YSBjb3B5IG9mIHRoZSBHTlUgTGlicmFyeSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlCisgKiBhbG9u
ZyB3aXRoIHRoaXMgbGlicmFyeTsgc2VlIHRoZSBmaWxlIENPUFlJTkcuTElCLiAgSWYgbm90LCB3
cml0ZSB0bworICogdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbiwgSW5jLiwgNTEgRnJhbmts
aW4gU3RyZWV0LCBGaWZ0aCBGbG9vciwKKyAqIEJvc3RvbiwgTUEgMDIxMTAtMTMwMSwgVVNBLgor
ICoKKyAqLworCisjaWZuZGVmIE1pY3JvVGFza19oCisjZGVmaW5lIE1pY3JvVGFza19oCisKK25h
bWVzcGFjZSBXZWJDb3JlIHsKKworY2xhc3MgTWljcm9UYXNrIHsKK3B1YmxpYzoKKyAgICB2aXJ0
dWFsIHZvaWQgcnVuKCkgPSAwOworICAgIHZpcnR1YWwgfk1pY3JvVGFzaygpIHsgfQorfTsKKwor
fSAvLyBuYW1lc3BhY2UgV2ViQ29yZQorCisjZW5kaWYgLy8gTWljcm9UYXNrX2gKZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJDb3JlL2RvbS9TY3JpcHRSdW5uZXIuY3BwIGIvU291cmNlL1dlYkNvcmUv
ZG9tL1NjcmlwdFJ1bm5lci5jcHAKaW5kZXggOTk0ODk2MzZiZGU5NWI3Nzg0ZTg0YmQ1NTc4Yjkz
NTcxMTk0OTg3NS4uNWI1Y2VhYTlhOTdhM2MwNTZiNzkyZTdhOTNjY2Y0NzIyOTg1NjFhYiAxMDA2
NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvZG9tL1NjcmlwdFJ1bm5lci5jcHAKKysrIGIvU291cmNl
L1dlYkNvcmUvZG9tL1NjcmlwdFJ1bm5lci5jcHAKQEAgLTExOCw2ICsxMTgsNyBAQCB2b2lkIFNj
cmlwdFJ1bm5lcjo6dGltZXJGaXJlZChUaW1lcjxTY3JpcHRSdW5uZXI+JiB0aW1lcikKICAgICAg
ICAgdG9TY3JpcHRFbGVtZW50SWZQb3NzaWJsZShlbGVtZW50LmdldCgpKS0+ZXhlY3V0ZShjYWNo
ZWRTY3JpcHQpOwogICAgICAgICBtX2RvY3VtZW50LmRlY3JlbWVudExvYWRFdmVudERlbGF5Q291
bnQoKTsKICAgICB9CisgICAgbV9kb2N1bWVudC5ydW5NaWNyb1Rhc2tzKCk7CiB9CiAKIH0KZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvcGFyc2VyL0hUTUxTY3JpcHRSdW5uZXIuY3Bw
IGIvU291cmNlL1dlYkNvcmUvaHRtbC9wYXJzZXIvSFRNTFNjcmlwdFJ1bm5lci5jcHAKaW5kZXgg
NDFlNzI1ZjYwZGU4NjgxZjFjZjhkYjRiNWM5OGFkYjYyNjIyZjIxYi4uNTBkOTUxOWY3ZDZhZDhm
ZmFlODhkOTFiYTc4NGJmNGFmYWFiN2NmZSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvaHRt
bC9wYXJzZXIvSFRNTFNjcmlwdFJ1bm5lci5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvaHRtbC9w
YXJzZXIvSFRNTFNjcmlwdFJ1bm5lci5jcHAKQEAgLTEyOSw4ICsxMjksMTAgQEAgdm9pZCBIVE1M
U2NyaXB0UnVubmVyOjpleGVjdXRlUGVuZGluZ1NjcmlwdEFuZERpc3BhdGNoRXZlbnQoUGVuZGlu
Z1NjcmlwdCYgcGVuZGkKICAgICBpZiAocGVuZGluZ1NjcmlwdC5jYWNoZWRTY3JpcHQoKSAmJiBw
ZW5kaW5nU2NyaXB0LndhdGNoaW5nRm9yTG9hZCgpKQogICAgICAgICBzdG9wV2F0Y2hpbmdGb3JM
b2FkKHBlbmRpbmdTY3JpcHQpOwogCi0gICAgaWYgKCFpc0V4ZWN1dGluZ1NjcmlwdCgpKQorICAg
IGlmICghaXNFeGVjdXRpbmdTY3JpcHQoKSkgewogICAgICAgICBNdXRhdGlvbk9ic2VydmVyOjpk
ZWxpdmVyQWxsTXV0YXRpb25zKCk7CisgICAgICAgIG1fZG9jdW1lbnQtPnJ1bk1pY3JvVGFza3Mo
KTsKKyAgICB9CiAKICAgICAvLyBDbGVhciB0aGUgcGVuZGluZyBzY3JpcHQgYmVmb3JlIHBvc3Np
YmxlIHJlbnRyYW5jeSBmcm9tIGV4ZWN1dGVTY3JpcHQoKQogICAgIFJlZlB0cjxFbGVtZW50PiBl
bGVtZW50ID0gcGVuZGluZ1NjcmlwdC5yZWxlYXNlRWxlbWVudEFuZENsZWFyKCk7CkBAIC0yMzEs
NiArMjMzLDggQEAgYm9vbCBIVE1MU2NyaXB0UnVubmVyOjpleGVjdXRlU2NyaXB0c1dhaXRpbmdG
b3JQYXJzaW5nKCkKICAgICAgICAgaWYgKCFtX2RvY3VtZW50KQogICAgICAgICAgICAgcmV0dXJu
IGZhbHNlOwogICAgIH0KKyAgICBpZiAoIWlzRXhlY3V0aW5nU2NyaXB0KCkpCisgICAgICAgIG1f
ZG9jdW1lbnQtPnJ1bk1pY3JvVGFza3MoKTsKICAgICByZXR1cm4gdHJ1ZTsKIH0KIApAQCAtMjkz
LDggKzI5NywxMCBAQCB2b2lkIEhUTUxTY3JpcHRSdW5uZXI6OnJ1blNjcmlwdChFbGVtZW50KiBz
Y3JpcHQsIGNvbnN0IFRleHRQb3NpdGlvbiYgc2NyaXB0U3RhcgogICAgICAgICAvLyBldmVyeSBz
Y3JpcHQgZWxlbWVudCwgZXZlbiBpZiBpdCdzIG5vdCByZWFkeSB0byBleGVjdXRlIHlldC4gVGhl
cmUncwogICAgICAgICAvLyB1bmZvcnR1YW50ZWx5IG5vIG9idmlvdXMgd2F5IHRvIHRlbGwgaWYg
cHJlcGFyZVNjcmlwdCBpcyBnb2luZyB0bwogICAgICAgICAvLyBleGVjdXRlIHRoZSBzY3JpcHQg
ZnJvbSBvdXQgaGVyZS4KLSAgICAgICAgaWYgKCFpc0V4ZWN1dGluZ1NjcmlwdCgpKQorICAgICAg
ICBpZiAoIWlzRXhlY3V0aW5nU2NyaXB0KCkpIHsKICAgICAgICAgICAgIE11dGF0aW9uT2JzZXJ2
ZXI6OmRlbGl2ZXJBbGxNdXRhdGlvbnMoKTsKKyAgICAgICAgICAgIG1fZG9jdW1lbnQtPnJ1bk1p
Y3JvVGFza3MoKTsKKyAgICAgICAgfQogCiAgICAgICAgIEluc2VydGlvblBvaW50UmVjb3JkIGlu
c2VydGlvblBvaW50UmVjb3JkKG1faG9zdC5pbnB1dFN0cmVhbSgpKTsKICAgICAgICAgTmVzdGlu
Z0xldmVsSW5jcmVtZW50ZXIgbmVzdGluZ0xldmVsSW5jcmVtZW50ZXIobV9zY3JpcHROZXN0aW5n
TGV2ZWwpOwo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>246886</attachid>
            <date>2015-02-19 01:51:49 -0800</date>
            <delta_ts>2015-02-19 02:44:17 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-137496-20150219105140.patch</filename>
            <type>text/plain</type>
            <size>34500</size>
            <attacher name="Yoav Weiss">yoav</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTgwMTQ1CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggZjQ5YjY5ZGExMjViY2Fk
ZWZmYmE2NzU3NTE2ZTUxM2M0OWNmNmE5MS4uNmVmZDUxOTNkZDFjY2Y5YWUzMjdjNGFjYjhiMGVm
MzRhMDNkMDQyYSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDQ0IEBACisyMDE1LTAyLTE5ICBZb2F2
IFdlaXNzICA8eW9hdkB5b2F2LndzPgorCisgICAgICAgIEFkZCBhIG1pY3JvdGFzayBhYnN0cmFj
dGlvbgorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTM3
NDk2CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgVGhp
cyBwYXRjaCBhZGRzIGEgbWljcm90YXNrIGFic3RyYWN0aW9uOiBodHRwczovL2h0bWwuc3BlYy53
aGF0d2cub3JnL211bHRpcGFnZS93ZWJhcHBhcGlzLmh0bWwjbWljcm90YXNrCisgICAgICAgIFRo
YXQgYWJzdHJhY3Rpb24gaXMgcmVxdWlyZWQgaW4gb3JkZXIgdG8gZW5hYmxlIGFzeW5jIGxvYWRp
bmcgb2YgaW1hZ2VzLAorICAgICAgICB3aGljaCBpcyBpbiB0dXJuIHJlcXVpcmVkIHRvIGVuYWJs
ZSBzdXBwb3J0IGZvciB0aGUgcGljdHVyZSBlbGVtZW50LCBhcyB3ZWxsIGFzCisgICAgICAgIHRv
IG1ha2Ugc3VyZSB0aGF0IHRoZSBvcmRlciBvZiBwcm9wZXJ0aWVzIHNldCBvbiBIVE1MSW1hZ2VF
bGVtZW50IGhzYSBubyBpbXBsaWNhdGlvbnMuCisKKyAgICAgICAgKiBXZWJDb3JlLnZjeHByb2ov
V2ViQ29yZS52Y3hwcm9qOiBBZGQgTWljcm9UYXNrLntoLGNwcH0gdG8gdGhlIHByb2plY3QuCisg
ICAgICAgICogV2ViQ29yZS52Y3hwcm9qL1dlYkNvcmVUZXN0U3VwcG9ydC52Y3hwcm9qOiBBZGQg
TWljcm9UYXNrVGVzdC57aCxjcHB9IHRvIHRoZSBwcm9qZWN0LgorICAgICAgICAqIFdlYkNvcmUu
eGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvajogQWRkIE1pY3JvVGFza3ssVGVzdH0ue2gsY3BwfSB0
byB0aGUgcHJvamVjdC4KKyAgICAgICAgKiBkb20vRG9jdW1lbnQuaDogQWRkIFdFQkNPUkVfRVhQ
T1JUIHRvIGFkZENvbnNvbGVNZXNzYWdlLCBzbyBpdCBjYW4gYmUgdXNlZCBpbiBNaWNyb1Rhc2tU
ZXN0IHRoYXQncyBpbiBXZWJDb3JlVGVzdFN1cHBvcnQuLgorICAgICAgICAqIGRvbS9NaWNyb1Rh
c2suaDogQWRkIGEgTWljcm9UYXNrIGludGVyZmFjZSBjbGFzcy4gQWRkIGEgTWljcm9UYXNrUXVl
dWUgc2luZ2xldG9uLgorICAgICAgICAoV2ViQ29yZTo6TWljcm9UYXNrOjp+TWljcm9UYXNrKToK
KyAgICAgICAgKFdlYkNvcmU6Ok1pY3JvVGFzazo6cnVuKTogUnVuIHRoZSBtaWNyb3Rhc2suCisg
ICAgICAgICogZG9tL01pY3JvVGFzay5jcHA6IEltcGxlbWVudCB0aGUgTWljcm9UYXNrUXVldWUg
c2luZ2xldG9uLgorICAgICAgICAoV2ViQ29yZTo6TWljcm9UYXNrUXVldWU6OnNpbmdsZXRvbik6
IEdldCBhIHNpbmdsZXRvbiBpbnN0YW5jZSBvZiBNaWNyb1Rhc2tRdWV1ZS4KKyAgICAgICAgKFdl
YkNvcmU6Ok1pY3JvVGFza1F1ZXVlOjpxdWV1ZU1pY3JvVGFzayk6IEFkZCBhIG1pY3JvdGFzayB0
byB0aGUgcXVldWUuCisgICAgICAgIChXZWJDb3JlOjpNaWNyb1Rhc2tRdWV1ZTo6cnVuTWljcm9U
YXNrcyk6IFJ1biBhbGwgdGhlIG1pY3JvdGFza3MgaW4gdGhlIHF1ZXVlIGFuZCBjbGVhciBpdC4K
KyAgICAgICAgKiBkb20vU2NyaXB0UnVubmVyLmNwcDogVHJpZ2dlciBydW5uaW5nIG9mIGFsbCBt
aWNyb3Rhc2tzIGluIHF1ZXVlLgorICAgICAgICAoV2ViQ29yZTo6U2NyaXB0UnVubmVyOjp0aW1l
ckZpcmVkKToKKyAgICAgICAgKiBodG1sL3BhcnNlci9IVE1MU2NyaXB0UnVubmVyLmNwcDogVHJp
Z2dlciBydW5uaW5nIG9mIGFsbCBtaWNyb3Rhc2tzIGluIHF1ZXVlLgorICAgICAgICAoV2ViQ29y
ZTo6SFRNTFNjcmlwdFJ1bm5lcjo6ZXhlY3V0ZVBlbmRpbmdTY3JpcHRBbmREaXNwYXRjaEV2ZW50
KToKKyAgICAgICAgKFdlYkNvcmU6OkhUTUxTY3JpcHRSdW5uZXI6OmV4ZWN1dGVTY3JpcHRzV2Fp
dGluZ0ZvclBhcnNpbmcpOgorICAgICAgICAoV2ViQ29yZTo6SFRNTFNjcmlwdFJ1bm5lcjo6cnVu
U2NyaXB0KToKKyAgICAgICAgKiB0ZXN0aW5nL0ludGVybmFscy5jcHA6IEFkZCBhIG1ldGhvZCB0
byBxdWV1ZSBhIHRlc3QgbWljcm90YXNrLgorICAgICAgICAoV2ViQ29yZTo6SW50ZXJuYWxzOjpx
dWV1ZU1pY3JvVGFzayk6CisgICAgICAgICogdGVzdGluZy9JbnRlcm5hbHMuaDogQWRkIGEgbWV0
aG9kIHRvIHF1ZXVlIGEgdGVzdCBtaWNyb3Rhc2suCisgICAgICAgIChXZWJDb3JlOjpJbnRlcm5h
bHM6OnF1ZXVlTWljcm9UYXNrKToKKyAgICAgICAgKiB0ZXN0aW5nL0ludGVybmFscy5pZGw6IEV4
cG9zZSB0ZXN0IG1pY3JvdGFzayBxdWV1ZWluZyB0byB0ZXN0IEpTLgorICAgICAgICAqIHRlc3Rp
bmcvTWljcm9UYXNrVGVzdC5jcHA6IEFkZCBhIHRlc3QgY2xhc3MgdGhhdCBpbXBsZW1lbnRzIGEg
bWljcm90YXNrIGFuZCBwcmludHMgdG8gdGhlIGNvbnNvbGUgd2hlbiBpdCBydW5zLgorICAgICAg
ICAoV2ViQ29yZTo6TWljcm9UYXNrVGVzdDo6cnVuKTogUnVuIHRoZSBtaWNyb3Rhc2sKKyAgICAg
ICAgKFdlYkNvcmU6Ok1pY3JvVGFza1Rlc3Q6OmNyZWF0ZSk6IENyZWF0ZSBhIHRlc3QgbWljcm90
YXNrLgorICAgICAgICAqIHRlc3RpbmcvTWljcm9UYXNrVGVzdC5oOiBBZGQgYSB0ZXN0IGNsYXNz
IHRoYXQgaW1wbGVtZW50cyBhIG1pY3JvdGFzay4KKyAgICAgICAgKFdlYkNvcmU6Ok1pY3JvVGFz
a1Rlc3Q6OnJ1bik6CisgICAgICAgIChXZWJDb3JlOjpNaWNyb1Rhc2tUZXN0OjpjcmVhdGUpOgor
CiAyMDE1LTAyLTEzICBTZXJnaW8gVmlsbGFyIFNlbmluICA8c3ZpbGxhckBpZ2FsaWEuY29tPgog
CiAgICAgICAgIFtDU1MgR3JpZCBMYXlvdXRdIEludmFsaWQgaW5pdGlhbGl6YXRpb24gb2YgdHJh
Y2sgc2l6ZXMgd2l0aCBub24gc3Bhbm5pbmcgZ3JpZCBpdGVtcwpkaWZmIC0tZ2l0IGEvU291cmNl
L1dlYkNvcmUvQ01ha2VMaXN0cy50eHQgYi9Tb3VyY2UvV2ViQ29yZS9DTWFrZUxpc3RzLnR4dApp
bmRleCA2NDY2YmE1MTJmZWVjMTM1ZWU3MGMzNzNhMmU1NjlkNmEwYzFkM2UwLi42MDJhM2VmMDYw
YjkwZDVmYWE5NzBhY2EzMjY0MzI3NjNkZDEzMGRkIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29y
ZS9DTWFrZUxpc3RzLnR4dAorKysgYi9Tb3VyY2UvV2ViQ29yZS9DTWFrZUxpc3RzLnR4dApAQCAt
MTM2OCw2ICsxMzY4LDcgQEAgc2V0KFdlYkNvcmVfU09VUkNFUwogICAgIGRvbS9NZXNzYWdlRXZl
bnQuY3BwCiAgICAgZG9tL01lc3NhZ2VQb3J0LmNwcAogICAgIGRvbS9NZXNzYWdlUG9ydENoYW5u
ZWwuY3BwCisgICAgZG9tL01pY3JvVGFzay5jcHAKICAgICBkb20vTW91c2VFdmVudC5jcHAKICAg
ICBkb20vTW91c2VSZWxhdGVkRXZlbnQuY3BwCiAgICAgZG9tL011dGF0aW9uRXZlbnQuY3BwCkBA
IC0zMTUwLDYgKzMxNTEsNyBAQCBzZXQoV2ViQ29yZVRlc3RTdXBwb3J0X1NPVVJDRVMKICAgICB0
ZXN0aW5nL0ludGVybmFsU2V0dGluZ3MuY3BwCiAgICAgdGVzdGluZy9JbnRlcm5hbHMuY3BwCiAK
KyAgICB0ZXN0aW5nL01pY3JvVGFza1Rlc3QuY3BwCiAgICAgdGVzdGluZy9Nb2NrUGFnZU92ZXJs
YXlDbGllbnQuY3BwCiAKICAgICB0ZXN0aW5nL2pzL1dlYkNvcmVUZXN0U3VwcG9ydC5jcHAKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUudmN4cHJvai9XZWJDb3JlLnZjeHByb2og
Yi9Tb3VyY2UvV2ViQ29yZS9XZWJDb3JlLnZjeHByb2ovV2ViQ29yZS52Y3hwcm9qCmluZGV4IDE0
NDJiMWRhOTk3OWU5Y2MwOGIxZjNiZDIxNmI5NzJmMzVhNDE0NTYuLjljYzQ5MWY0MmVlNzU4MDlj
ODA1MzcwZDk4MDBjZDVlMGMzYTM5YTIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL1dlYkNv
cmUudmN4cHJvai9XZWJDb3JlLnZjeHByb2oKKysrIGIvU291cmNlL1dlYkNvcmUvV2ViQ29yZS52
Y3hwcm9qL1dlYkNvcmUudmN4cHJvagpAQCAtMTM1NzUsNiArMTM1NzUsMjAgQEAKICAgICAgIDxF
eGNsdWRlZEZyb21CdWlsZCBDb25kaXRpb249IickKENvbmZpZ3VyYXRpb24pfCQoUGxhdGZvcm0p
Jz09J1Byb2R1Y3Rpb258V2luMzInIj50cnVlPC9FeGNsdWRlZEZyb21CdWlsZD4KICAgICAgIDxF
eGNsdWRlZEZyb21CdWlsZCBDb25kaXRpb249IickKENvbmZpZ3VyYXRpb24pfCQoUGxhdGZvcm0p
Jz09J1Byb2R1Y3Rpb258eDY0JyI+dHJ1ZTwvRXhjbHVkZWRGcm9tQnVpbGQ+CiAgICAgPC9DbENv
bXBpbGU+CisgICAgPENsQ29tcGlsZSBJbmNsdWRlPSIuLlxkb21cTWljcm9UYXNrLmNwcCI+Cisg
ICAgICA8RXhjbHVkZWRGcm9tQnVpbGQgQ29uZGl0aW9uPSInJChDb25maWd1cmF0aW9uKXwkKFBs
YXRmb3JtKSc9PSdEZWJ1Z3xXaW4zMiciPnRydWU8L0V4Y2x1ZGVkRnJvbUJ1aWxkPgorICAgICAg
PEV4Y2x1ZGVkRnJvbUJ1aWxkIENvbmRpdGlvbj0iJyQoQ29uZmlndXJhdGlvbil8JChQbGF0Zm9y
bSknPT0nRGVidWd8eDY0JyI+dHJ1ZTwvRXhjbHVkZWRGcm9tQnVpbGQ+CisgICAgICA8RXhjbHVk
ZWRGcm9tQnVpbGQgQ29uZGl0aW9uPSInJChDb25maWd1cmF0aW9uKXwkKFBsYXRmb3JtKSc9PSdE
ZWJ1Z19XaW5DYWlyb3xXaW4zMiciPnRydWU8L0V4Y2x1ZGVkRnJvbUJ1aWxkPgorICAgICAgPEV4
Y2x1ZGVkRnJvbUJ1aWxkIENvbmRpdGlvbj0iJyQoQ29uZmlndXJhdGlvbil8JChQbGF0Zm9ybSkn
PT0nRGVidWdfV2luQ2Fpcm98eDY0JyI+dHJ1ZTwvRXhjbHVkZWRGcm9tQnVpbGQ+CisgICAgICA8
RXhjbHVkZWRGcm9tQnVpbGQgQ29uZGl0aW9uPSInJChDb25maWd1cmF0aW9uKXwkKFBsYXRmb3Jt
KSc9PSdEZWJ1Z1N1ZmZpeHxXaW4zMiciPnRydWU8L0V4Y2x1ZGVkRnJvbUJ1aWxkPgorICAgICAg
PEV4Y2x1ZGVkRnJvbUJ1aWxkIENvbmRpdGlvbj0iJyQoQ29uZmlndXJhdGlvbil8JChQbGF0Zm9y
bSknPT0nRGVidWdTdWZmaXh8eDY0JyI+dHJ1ZTwvRXhjbHVkZWRGcm9tQnVpbGQ+CisgICAgICA8
RXhjbHVkZWRGcm9tQnVpbGQgQ29uZGl0aW9uPSInJChDb25maWd1cmF0aW9uKXwkKFBsYXRmb3Jt
KSc9PSdSZWxlYXNlfFdpbjMyJyI+dHJ1ZTwvRXhjbHVkZWRGcm9tQnVpbGQ+CisgICAgICA8RXhj
bHVkZWRGcm9tQnVpbGQgQ29uZGl0aW9uPSInJChDb25maWd1cmF0aW9uKXwkKFBsYXRmb3JtKSc9
PSdSZWxlYXNlfHg2NCciPnRydWU8L0V4Y2x1ZGVkRnJvbUJ1aWxkPgorICAgICAgPEV4Y2x1ZGVk
RnJvbUJ1aWxkIENvbmRpdGlvbj0iJyQoQ29uZmlndXJhdGlvbil8JChQbGF0Zm9ybSknPT0nUmVs
ZWFzZV9XaW5DYWlyb3xXaW4zMiciPnRydWU8L0V4Y2x1ZGVkRnJvbUJ1aWxkPgorICAgICAgPEV4
Y2x1ZGVkRnJvbUJ1aWxkIENvbmRpdGlvbj0iJyQoQ29uZmlndXJhdGlvbil8JChQbGF0Zm9ybSkn
PT0nUmVsZWFzZV9XaW5DYWlyb3x4NjQnIj50cnVlPC9FeGNsdWRlZEZyb21CdWlsZD4KKyAgICAg
IDxFeGNsdWRlZEZyb21CdWlsZCBDb25kaXRpb249IickKENvbmZpZ3VyYXRpb24pfCQoUGxhdGZv
cm0pJz09J1Byb2R1Y3Rpb258V2luMzInIj50cnVlPC9FeGNsdWRlZEZyb21CdWlsZD4KKyAgICAg
IDxFeGNsdWRlZEZyb21CdWlsZCBDb25kaXRpb249IickKENvbmZpZ3VyYXRpb24pfCQoUGxhdGZv
cm0pJz09J1Byb2R1Y3Rpb258eDY0JyI+dHJ1ZTwvRXhjbHVkZWRGcm9tQnVpbGQ+CisgICAgPC9D
bENvbXBpbGU+CiAgICAgPENsQ29tcGlsZSBJbmNsdWRlPSIuLlxkb21cTW91c2VFdmVudC5jcHAi
PgogICAgICAgPEV4Y2x1ZGVkRnJvbUJ1aWxkIENvbmRpdGlvbj0iJyQoQ29uZmlndXJhdGlvbil8
JChQbGF0Zm9ybSknPT0nRGVidWd8V2luMzInIj50cnVlPC9FeGNsdWRlZEZyb21CdWlsZD4KICAg
ICAgIDxFeGNsdWRlZEZyb21CdWlsZCBDb25kaXRpb249IickKENvbmZpZ3VyYXRpb24pfCQoUGxh
dGZvcm0pJz09J0RlYnVnfHg2NCciPnRydWU8L0V4Y2x1ZGVkRnJvbUJ1aWxkPgpAQCAtMjA3NTAs
NiArMjA3NjQsNyBAQAogICAgIDxDbEluY2x1ZGUgSW5jbHVkZT0iLi5cZG9tXE1lc3NhZ2VFdmVu
dC5oIiAvPgogICAgIDxDbEluY2x1ZGUgSW5jbHVkZT0iLi5cZG9tXE1lc3NhZ2VQb3J0LmgiIC8+
CiAgICAgPENsSW5jbHVkZSBJbmNsdWRlPSIuLlxkb21cTWVzc2FnZVBvcnRDaGFubmVsLmgiIC8+
CisgICAgPENsSW5jbHVkZSBJbmNsdWRlPSIuLlxkb21cTWljcm9UYXNrLmgiIC8+CiAgICAgPENs
SW5jbHVkZSBJbmNsdWRlPSIuLlxkb21cTW91c2VFdmVudC5oIiAvPgogICAgIDxDbEluY2x1ZGUg
SW5jbHVkZT0iLi5cZG9tXE1vdXNlUmVsYXRlZEV2ZW50LmgiIC8+CiAgICAgPENsSW5jbHVkZSBJ
bmNsdWRlPSIuLlxkb21cTXV0YXRpb25FdmVudC5oIiAvPgpAQCAtMjE1NTAsNCArMjE1NjUsNCBA
QAogICA8SW1wb3J0R3JvdXAgTGFiZWw9IkV4dGVuc2lvblRhcmdldHMiPgogICAgIDxJbXBvcnQg
UHJvamVjdD0iJChWQ1RhcmdldHNQYXRoKVxCdWlsZEN1c3RvbWl6YXRpb25zXG1hc20udGFyZ2V0
cyIgLz4KICAgPC9JbXBvcnRHcm91cD4KLTwvUHJvamVjdD4KXCBObyBuZXdsaW5lIGF0IGVuZCBv
ZiBmaWxlCis8L1Byb2plY3Q+CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9XZWJDb3JlLnZj
eHByb2ovV2ViQ29yZVRlc3RTdXBwb3J0LnZjeHByb2ogYi9Tb3VyY2UvV2ViQ29yZS9XZWJDb3Jl
LnZjeHByb2ovV2ViQ29yZVRlc3RTdXBwb3J0LnZjeHByb2oKaW5kZXggZTNkYzgxOWZmOWU1M2Iy
YTRlMDVlYTAzN2I5YzU5NWM3Y2Y3NWMxMy4uMTVmZWQ1YmUxMDY0OGQ3NWE4ZGExMGI1NDBkMDgx
MzkxNWQyOGU1YiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvV2ViQ29yZS52Y3hwcm9qL1dl
YkNvcmVUZXN0U3VwcG9ydC52Y3hwcm9qCisrKyBiL1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUudmN4
cHJvai9XZWJDb3JlVGVzdFN1cHBvcnQudmN4cHJvagpAQCAtNzA2LDYgKzcwNiw2OCBAQAogICAg
ICAgPEZvcmNlZEluY2x1ZGVGaWxlcyBDb25kaXRpb249IickKENvbmZpZ3VyYXRpb24pfCQoUGxh
dGZvcm0pJz09J1Byb2R1Y3Rpb258eDY0JyI+CiAgICAgICA8L0ZvcmNlZEluY2x1ZGVGaWxlcz4K
ICAgICA8L0NsQ29tcGlsZT4KKyAgICA8Q2xDb21waWxlIEluY2x1ZGU9Ii4uXHRlc3RpbmdcTWlj
cm9UYXNrVGVzdC5jcHAiPgorICAgICAgPFByZWNvbXBpbGVkSGVhZGVyIENvbmRpdGlvbj0iJyQo
Q29uZmlndXJhdGlvbil8JChQbGF0Zm9ybSknPT0nRGVidWd8V2luMzInIj4KKyAgICAgIDwvUHJl
Y29tcGlsZWRIZWFkZXI+CisgICAgICA8UHJlY29tcGlsZWRIZWFkZXIgQ29uZGl0aW9uPSInJChD
b25maWd1cmF0aW9uKXwkKFBsYXRmb3JtKSc9PSdEZWJ1Z3x4NjQnIj4KKyAgICAgIDwvUHJlY29t
cGlsZWRIZWFkZXI+CisgICAgICA8UHJlY29tcGlsZWRIZWFkZXIgQ29uZGl0aW9uPSInJChDb25m
aWd1cmF0aW9uKXwkKFBsYXRmb3JtKSc9PSdEZWJ1Z19XaW5DYWlyb3xXaW4zMiciPgorICAgICAg
PC9QcmVjb21waWxlZEhlYWRlcj4KKyAgICAgIDxQcmVjb21waWxlZEhlYWRlciBDb25kaXRpb249
IickKENvbmZpZ3VyYXRpb24pfCQoUGxhdGZvcm0pJz09J0RlYnVnX1dpbkNhaXJvfHg2NCciPgor
ICAgICAgPC9QcmVjb21waWxlZEhlYWRlcj4KKyAgICAgIDxQcmVjb21waWxlZEhlYWRlciBDb25k
aXRpb249IickKENvbmZpZ3VyYXRpb24pfCQoUGxhdGZvcm0pJz09J0RlYnVnU3VmZml4fFdpbjMy
JyI+CisgICAgICA8L1ByZWNvbXBpbGVkSGVhZGVyPgorICAgICAgPFByZWNvbXBpbGVkSGVhZGVy
IENvbmRpdGlvbj0iJyQoQ29uZmlndXJhdGlvbil8JChQbGF0Zm9ybSknPT0nRGVidWdTdWZmaXh8
eDY0JyI+CisgICAgICA8L1ByZWNvbXBpbGVkSGVhZGVyPgorICAgICAgPERpc2FibGVTcGVjaWZp
Y1dhcm5pbmdzIENvbmRpdGlvbj0iJyQoQ29uZmlndXJhdGlvbil8JChQbGF0Zm9ybSknPT0nRGVi
dWd8V2luMzInIj40MDY1OzQyNzM7NDU2NTs0NzAxOzQ3MDI7JShEaXNhYmxlU3BlY2lmaWNXYXJu
aW5ncyk8L0Rpc2FibGVTcGVjaWZpY1dhcm5pbmdzPgorICAgICAgPERpc2FibGVTcGVjaWZpY1dh
cm5pbmdzIENvbmRpdGlvbj0iJyQoQ29uZmlndXJhdGlvbil8JChQbGF0Zm9ybSknPT0nRGVidWd8
eDY0JyI+NDA2NTs0MjczOzQ1NjU7NDcwMTs0NzAyOyUoRGlzYWJsZVNwZWNpZmljV2FybmluZ3Mp
PC9EaXNhYmxlU3BlY2lmaWNXYXJuaW5ncz4KKyAgICAgIDxEaXNhYmxlU3BlY2lmaWNXYXJuaW5n
cyBDb25kaXRpb249IickKENvbmZpZ3VyYXRpb24pfCQoUGxhdGZvcm0pJz09J0RlYnVnX1dpbkNh
aXJvfFdpbjMyJyI+NDA2NTs0MjczOzQ1NjU7NDcwMTs0NzAyOyUoRGlzYWJsZVNwZWNpZmljV2Fy
bmluZ3MpPC9EaXNhYmxlU3BlY2lmaWNXYXJuaW5ncz4KKyAgICAgIDxEaXNhYmxlU3BlY2lmaWNX
YXJuaW5ncyBDb25kaXRpb249IickKENvbmZpZ3VyYXRpb24pfCQoUGxhdGZvcm0pJz09J0RlYnVn
X1dpbkNhaXJvfHg2NCciPjQwNjU7NDI3Mzs0NTY1OzQ3MDE7NDcwMjslKERpc2FibGVTcGVjaWZp
Y1dhcm5pbmdzKTwvRGlzYWJsZVNwZWNpZmljV2FybmluZ3M+CisgICAgICA8RGlzYWJsZVNwZWNp
ZmljV2FybmluZ3MgQ29uZGl0aW9uPSInJChDb25maWd1cmF0aW9uKXwkKFBsYXRmb3JtKSc9PSdE
ZWJ1Z1N1ZmZpeHxXaW4zMiciPjQwNjU7NDI3Mzs0NTY1OzQ3MDE7NDcwMjslKERpc2FibGVTcGVj
aWZpY1dhcm5pbmdzKTwvRGlzYWJsZVNwZWNpZmljV2FybmluZ3M+CisgICAgICA8RGlzYWJsZVNw
ZWNpZmljV2FybmluZ3MgQ29uZGl0aW9uPSInJChDb25maWd1cmF0aW9uKXwkKFBsYXRmb3JtKSc9
PSdEZWJ1Z1N1ZmZpeHx4NjQnIj40MDY1OzQyNzM7NDU2NTs0NzAxOzQ3MDI7JShEaXNhYmxlU3Bl
Y2lmaWNXYXJuaW5ncyk8L0Rpc2FibGVTcGVjaWZpY1dhcm5pbmdzPgorICAgICAgPEZvcmNlZElu
Y2x1ZGVGaWxlcyBDb25kaXRpb249IickKENvbmZpZ3VyYXRpb24pfCQoUGxhdGZvcm0pJz09J0Rl
YnVnfFdpbjMyJyI+CisgICAgICA8L0ZvcmNlZEluY2x1ZGVGaWxlcz4KKyAgICAgIDxGb3JjZWRJ
bmNsdWRlRmlsZXMgQ29uZGl0aW9uPSInJChDb25maWd1cmF0aW9uKXwkKFBsYXRmb3JtKSc9PSdE
ZWJ1Z3x4NjQnIj4KKyAgICAgIDwvRm9yY2VkSW5jbHVkZUZpbGVzPgorICAgICAgPEZvcmNlZElu
Y2x1ZGVGaWxlcyBDb25kaXRpb249IickKENvbmZpZ3VyYXRpb24pfCQoUGxhdGZvcm0pJz09J0Rl
YnVnX1dpbkNhaXJvfFdpbjMyJyI+CisgICAgICA8L0ZvcmNlZEluY2x1ZGVGaWxlcz4KKyAgICAg
IDxGb3JjZWRJbmNsdWRlRmlsZXMgQ29uZGl0aW9uPSInJChDb25maWd1cmF0aW9uKXwkKFBsYXRm
b3JtKSc9PSdEZWJ1Z19XaW5DYWlyb3x4NjQnIj4KKyAgICAgIDwvRm9yY2VkSW5jbHVkZUZpbGVz
PgorICAgICAgPEZvcmNlZEluY2x1ZGVGaWxlcyBDb25kaXRpb249IickKENvbmZpZ3VyYXRpb24p
fCQoUGxhdGZvcm0pJz09J0RlYnVnU3VmZml4fFdpbjMyJyI+CisgICAgICA8L0ZvcmNlZEluY2x1
ZGVGaWxlcz4KKyAgICAgIDxGb3JjZWRJbmNsdWRlRmlsZXMgQ29uZGl0aW9uPSInJChDb25maWd1
cmF0aW9uKXwkKFBsYXRmb3JtKSc9PSdEZWJ1Z1N1ZmZpeHx4NjQnIj4KKyAgICAgIDwvRm9yY2Vk
SW5jbHVkZUZpbGVzPgorICAgICAgPFByZWNvbXBpbGVkSGVhZGVyIENvbmRpdGlvbj0iJyQoQ29u
ZmlndXJhdGlvbil8JChQbGF0Zm9ybSknPT0nUmVsZWFzZXxXaW4zMiciPgorICAgICAgPC9QcmVj
b21waWxlZEhlYWRlcj4KKyAgICAgIDxQcmVjb21waWxlZEhlYWRlciBDb25kaXRpb249IickKENv
bmZpZ3VyYXRpb24pfCQoUGxhdGZvcm0pJz09J1JlbGVhc2V8eDY0JyI+CisgICAgICA8L1ByZWNv
bXBpbGVkSGVhZGVyPgorICAgICAgPFByZWNvbXBpbGVkSGVhZGVyIENvbmRpdGlvbj0iJyQoQ29u
ZmlndXJhdGlvbil8JChQbGF0Zm9ybSknPT0nUmVsZWFzZV9XaW5DYWlyb3xXaW4zMiciPgorICAg
ICAgPC9QcmVjb21waWxlZEhlYWRlcj4KKyAgICAgIDxQcmVjb21waWxlZEhlYWRlciBDb25kaXRp
b249IickKENvbmZpZ3VyYXRpb24pfCQoUGxhdGZvcm0pJz09J1JlbGVhc2VfV2luQ2Fpcm98eDY0
JyI+CisgICAgICA8L1ByZWNvbXBpbGVkSGVhZGVyPgorICAgICAgPFByZWNvbXBpbGVkSGVhZGVy
IENvbmRpdGlvbj0iJyQoQ29uZmlndXJhdGlvbil8JChQbGF0Zm9ybSknPT0nUHJvZHVjdGlvbnxX
aW4zMiciPgorICAgICAgPC9QcmVjb21waWxlZEhlYWRlcj4KKyAgICAgIDxQcmVjb21waWxlZEhl
YWRlciBDb25kaXRpb249IickKENvbmZpZ3VyYXRpb24pfCQoUGxhdGZvcm0pJz09J1Byb2R1Y3Rp
b258eDY0JyI+CisgICAgICA8L1ByZWNvbXBpbGVkSGVhZGVyPgorICAgICAgPERpc2FibGVTcGVj
aWZpY1dhcm5pbmdzIENvbmRpdGlvbj0iJyQoQ29uZmlndXJhdGlvbil8JChQbGF0Zm9ybSknPT0n
UmVsZWFzZXxXaW4zMiciPjQwNjU7NDI3Mzs0NTY1OzQ3MDE7NDcwMjslKERpc2FibGVTcGVjaWZp
Y1dhcm5pbmdzKTwvRGlzYWJsZVNwZWNpZmljV2FybmluZ3M+CisgICAgICA8RGlzYWJsZVNwZWNp
ZmljV2FybmluZ3MgQ29uZGl0aW9uPSInJChDb25maWd1cmF0aW9uKXwkKFBsYXRmb3JtKSc9PSdS
ZWxlYXNlfHg2NCciPjQwNjU7NDI3Mzs0NTY1OzQ3MDE7NDcwMjslKERpc2FibGVTcGVjaWZpY1dh
cm5pbmdzKTwvRGlzYWJsZVNwZWNpZmljV2FybmluZ3M+CisgICAgICA8RGlzYWJsZVNwZWNpZmlj
V2FybmluZ3MgQ29uZGl0aW9uPSInJChDb25maWd1cmF0aW9uKXwkKFBsYXRmb3JtKSc9PSdSZWxl
YXNlX1dpbkNhaXJvfFdpbjMyJyI+NDA2NTs0MjczOzQ1NjU7NDcwMTs0NzAyOyUoRGlzYWJsZVNw
ZWNpZmljV2FybmluZ3MpPC9EaXNhYmxlU3BlY2lmaWNXYXJuaW5ncz4KKyAgICAgIDxEaXNhYmxl
U3BlY2lmaWNXYXJuaW5ncyBDb25kaXRpb249IickKENvbmZpZ3VyYXRpb24pfCQoUGxhdGZvcm0p
Jz09J1JlbGVhc2VfV2luQ2Fpcm98eDY0JyI+NDA2NTs0MjczOzQ1NjU7NDcwMTs0NzAyOyUoRGlz
YWJsZVNwZWNpZmljV2FybmluZ3MpPC9EaXNhYmxlU3BlY2lmaWNXYXJuaW5ncz4KKyAgICAgIDxE
aXNhYmxlU3BlY2lmaWNXYXJuaW5ncyBDb25kaXRpb249IickKENvbmZpZ3VyYXRpb24pfCQoUGxh
dGZvcm0pJz09J1Byb2R1Y3Rpb258V2luMzInIj40MDY1OzQyNzM7NDU2NTs0NzAxOzQ3MDI7JShE
aXNhYmxlU3BlY2lmaWNXYXJuaW5ncyk8L0Rpc2FibGVTcGVjaWZpY1dhcm5pbmdzPgorICAgICAg
PERpc2FibGVTcGVjaWZpY1dhcm5pbmdzIENvbmRpdGlvbj0iJyQoQ29uZmlndXJhdGlvbil8JChQ
bGF0Zm9ybSknPT0nUHJvZHVjdGlvbnx4NjQnIj40MDY1OzQyNzM7NDU2NTs0NzAxOzQ3MDI7JShE
aXNhYmxlU3BlY2lmaWNXYXJuaW5ncyk8L0Rpc2FibGVTcGVjaWZpY1dhcm5pbmdzPgorICAgICAg
PEZvcmNlZEluY2x1ZGVGaWxlcyBDb25kaXRpb249IickKENvbmZpZ3VyYXRpb24pfCQoUGxhdGZv
cm0pJz09J1JlbGVhc2V8V2luMzInIj4KKyAgICAgIDwvRm9yY2VkSW5jbHVkZUZpbGVzPgorICAg
ICAgPEZvcmNlZEluY2x1ZGVGaWxlcyBDb25kaXRpb249IickKENvbmZpZ3VyYXRpb24pfCQoUGxh
dGZvcm0pJz09J1JlbGVhc2V8eDY0JyI+CisgICAgICA8L0ZvcmNlZEluY2x1ZGVGaWxlcz4KKyAg
ICAgIDxGb3JjZWRJbmNsdWRlRmlsZXMgQ29uZGl0aW9uPSInJChDb25maWd1cmF0aW9uKXwkKFBs
YXRmb3JtKSc9PSdSZWxlYXNlX1dpbkNhaXJvfFdpbjMyJyI+CisgICAgICA8L0ZvcmNlZEluY2x1
ZGVGaWxlcz4KKyAgICAgIDxGb3JjZWRJbmNsdWRlRmlsZXMgQ29uZGl0aW9uPSInJChDb25maWd1
cmF0aW9uKXwkKFBsYXRmb3JtKSc9PSdSZWxlYXNlX1dpbkNhaXJvfHg2NCciPgorICAgICAgPC9G
b3JjZWRJbmNsdWRlRmlsZXM+CisgICAgICA8Rm9yY2VkSW5jbHVkZUZpbGVzIENvbmRpdGlvbj0i
JyQoQ29uZmlndXJhdGlvbil8JChQbGF0Zm9ybSknPT0nUHJvZHVjdGlvbnxXaW4zMiciPgorICAg
ICAgPC9Gb3JjZWRJbmNsdWRlRmlsZXM+CisgICAgICA8Rm9yY2VkSW5jbHVkZUZpbGVzIENvbmRp
dGlvbj0iJyQoQ29uZmlndXJhdGlvbil8JChQbGF0Zm9ybSknPT0nUHJvZHVjdGlvbnx4NjQnIj4K
KyAgICAgIDwvRm9yY2VkSW5jbHVkZUZpbGVzPgorICAgIDwvQ2xDb21waWxlPgogICAgIDxDbENv
bXBpbGUgSW5jbHVkZT0iLi5cdGVzdGluZ1xNb2NrUGFnZU92ZXJsYXlDbGllbnQuY3BwIj4KICAg
ICAgIDxQcmVjb21waWxlZEhlYWRlciBDb25kaXRpb249IickKENvbmZpZ3VyYXRpb24pfCQoUGxh
dGZvcm0pJz09J0RlYnVnfFdpbjMyJyI+CiAgICAgICA8L1ByZWNvbXBpbGVkSGVhZGVyPgpAQCAt
OTE3LDYgKzk3OSw3IEBACiAgICAgPENsSW5jbHVkZSBJbmNsdWRlPSIkKENvbmZpZ3VyYXRpb25C
dWlsZERpcilcb2JqJChQbGF0Zm9ybUFyY2hpdGVjdHVyZSlcV2ViQ29yZVxEZXJpdmVkU291cmNl
c1xKU0ludGVybmFsU2V0dGluZ3NHZW5lcmF0ZWQuaCIgLz4KICAgICA8Q2xJbmNsdWRlIEluY2x1
ZGU9Ii4uXHRlc3RpbmdcTWFsbG9jU3RhdGlzdGljcy5oIiAvPgogICAgIDxDbEluY2x1ZGUgSW5j
bHVkZT0iLi5cdGVzdGluZ1xNZW1vcnlJbmZvLmgiIC8+CisgICAgPENsSW5jbHVkZSBJbmNsdWRl
PSIuLlx0ZXN0aW5nXE1pY3JvVGFza1Rlc3QuaCIgLz4KICAgICA8Q2xJbmNsdWRlIEluY2x1ZGU9
Ii4uXHRlc3RpbmdcTW9ja0NETS5oIiAvPgogICAgIDxDbEluY2x1ZGUgSW5jbHVkZT0iLi5cdGVz
dGluZ1xNb2NrUGFnZU92ZXJsYXlDbGllbnQuaCIgLz4KICAgICA8Q2xJbmNsdWRlIEluY2x1ZGU9
Ii4uXHRlc3RpbmdcVHlwZUNvbnZlcnNpb25zLmgiIC8+CkBAIC05MjgsNCArOTkxLDQgQEAKICAg
PEltcG9ydCBQcm9qZWN0PSIkKFZDVGFyZ2V0c1BhdGgpXE1pY3Jvc29mdC5DcHAudGFyZ2V0cyIg
Lz4KICAgPEltcG9ydEdyb3VwIExhYmVsPSJFeHRlbnNpb25UYXJnZXRzIj4KICAgPC9JbXBvcnRH
cm91cD4KLTwvUHJvamVjdD4KXCBObyBuZXdsaW5lIGF0IGVuZCBvZiBmaWxlCis8L1Byb2plY3Q+
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9XZWJDb3JlLnhjb2RlcHJvai9wcm9qZWN0LnBi
eHByb2ogYi9Tb3VyY2UvV2ViQ29yZS9XZWJDb3JlLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2oK
aW5kZXggZThjOTdhNjIzZmU2NDQ0YmFmYzNkZWE3MWVjZTU0NGVkM2QxZDAxNS4uMDg2ZTFlMTk2
NDE1NDk2YTFlZWY2NThhYTVhZjk3ZGJmMjM5YTE0MSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNv
cmUvV2ViQ29yZS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qCisrKyBiL1NvdXJjZS9XZWJDb3Jl
L1dlYkNvcmUueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvagpAQCAtMjA4NCw2ICsyMDg0LDcgQEAK
IAkJNTM2RDVBMjMxOTNFOEUwQzAwQ0U0Q0FCIC8qIFBhcnNpbmdVdGlsaXRpZXMuaCBpbiBIZWFk
ZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDUzNkQ1QTIyMTkzRThFMEMw
MENFNENBQiAvKiBQYXJzaW5nVXRpbGl0aWVzLmggKi87IH07CiAJCTUzNkQ1QTI1MTkzRjQwRkMw
MENFNENBQiAvKiBTb3VyY2VTaXplTGlzdC5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhC
dWlsZEZpbGU7IGZpbGVSZWYgPSA1MzZENUEyNDE5M0Y0MEZDMDBDRTRDQUIgLyogU291cmNlU2l6
ZUxpc3QuY3BwICovOyB9OwogCQk1MzZENUEyNzE5M0Y0MTBCMDBDRTRDQUIgLyogU291cmNlU2l6
ZUxpc3QuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDUz
NkQ1QTI2MTkzRjQxMEIwMENFNENBQiAvKiBTb3VyY2VTaXplTGlzdC5oICovOyBzZXR0aW5ncyA9
IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CisJCTUzQjg5NUFGMTlEQzdFRDkwMDlD
QUE5MyAvKiBNaWNyb1Rhc2suaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsg
ZmlsZVJlZiA9IDUzQjg5NUFEMTlEQzdDMzcwMDlDQUE5MyAvKiBNaWNyb1Rhc2suaCAqLzsgc2V0
dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQdWJsaWMsICk7IH07IH07CiAJCTUzQzgyOThEMTNEOEQ5
MjcwMERFMkRFQiAvKiBSZW5kZXJGbGV4aWJsZUJveC5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2Eg
PSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA1M0M4Mjk4QjEzRDhEOTI3MDBERTJERUIgLyogUmVu
ZGVyRmxleGlibGVCb3guY3BwICovOyB9OwogCQk1M0M4Mjk4RTEzRDhEOTI3MDBERTJERUIgLyog
UmVuZGVyRmxleGlibGVCb3guaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsg
ZmlsZVJlZiA9IDUzQzgyOThDMTNEOEQ5MjcwMERFMkRFQiAvKiBSZW5kZXJGbGV4aWJsZUJveC5o
ICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CiAJCTUzRTI5
RTVFMTY3QThBMTkwMDU4NkQzRCAvKiBJbnRlcm5hbFNldHRpbmdzR2VuZXJhdGVkLmNwcCBpbiBT
b3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDUzRTI5RTVDMTY3QThB
MTkwMDU4NkQzRCAvKiBJbnRlcm5hbFNldHRpbmdzR2VuZXJhdGVkLmNwcCAqLzsgfTsKQEAgLTU2
MTIsNiArNTYxMyw5IEBACiAJCUNBM0JGNjdFMTBEOTlCQUUwMEU2Q0U1MyAvKiBTY3JvbGxBbmlt
YXRvci5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQ0Ez
QkY2N0QxMEQ5OUJBRTAwRTZDRTUzIC8qIFNjcm9sbEFuaW1hdG9yLmggKi87IHNldHRpbmdzID0g
e0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKIAkJQ0FFOUY5MEYxNDY0NDFGMDAwQzI0
NUIwIC8qIENTU0FzcGVjdFJhdGlvVmFsdWUuY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJY
QnVpbGRGaWxlOyBmaWxlUmVmID0gQ0FFOUY5MEQxNDY0NDFGMDAwQzI0NUIwIC8qIENTU0FzcGVj
dFJhdGlvVmFsdWUuY3BwICovOyB9OwogCQlDQUU5RjkxMDE0NjQ0MUYwMDBDMjQ1QjAgLyogQ1NT
QXNwZWN0UmF0aW9WYWx1ZS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBm
aWxlUmVmID0gQ0FFOUY5MEUxNDY0NDFGMDAwQzI0NUIwIC8qIENTU0FzcGVjdFJhdGlvVmFsdWUu
aCAqLzsgfTsKKwkJQ0I4Q0YwMTgxQTkzNThENDAwMEQ1MTBCIC8qIE1pY3JvVGFzay5jcHAgaW4g
U291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBDQjhDRjAxNTFBOTM0
QjQzMDAwRDUxMEIgLyogTWljcm9UYXNrLmNwcCAqLzsgfTsKKwkJQ0I4Q0YwMUQxQTk1REU0MjAw
MEQ1MTBCIC8qIE1pY3JvVGFza1Rlc3QuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxk
RmlsZTsgZmlsZVJlZiA9IENCOENGMDFDMUE5NURFNDIwMDBENTEwQiAvKiBNaWNyb1Rhc2tUZXN0
LmggKi87IH07CisJCUNCOENGMDFGMUE5NURFNTkwMDBENTEwQiAvKiBNaWNyb1Rhc2tUZXN0LmNw
cCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IENCOENGMDFF
MUE5NURFNTkwMDBENTEwQiAvKiBNaWNyb1Rhc2tUZXN0LmNwcCAqLzsgfTsKIAkJQ0NDMkI1MTQx
NUY2MTMwNjAwNDhDREQ2IC8qIERldmljZUNsaWVudC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0g
UEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQ0NDMkI1MTAxNUY2MTMwNjAwNDhDREQ2IC8qIERldmlj
ZUNsaWVudC5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07
CiAJCUNDQzJCNTE1MTVGNjEzMDYwMDQ4Q0RENiAvKiBEZXZpY2VDb250cm9sbGVyLmNwcCBpbiBT
b3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IENDQzJCNTExMTVGNjEz
MDYwMDQ4Q0RENiAvKiBEZXZpY2VDb250cm9sbGVyLmNwcCAqLzsgfTsKIAkJQ0NDMkI1MTYxNUY2
MTMwNjAwNDhDREQ2IC8qIERldmljZUNvbnRyb2xsZXIuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9
IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IENDQzJCNTEyMTVGNjEzMDYwMDQ4Q0RENiAvKiBEZXZp
Y2VDb250cm9sbGVyLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsg
fTsgfTsKQEAgLTkyMjYsNiArOTIzMCw3IEBACiAJCTUzNkQ1QTIyMTkzRThFMEMwMENFNENBQiAv
KiBQYXJzaW5nVXRpbGl0aWVzLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVu
Y29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgbmFtZSA9IFBh
cnNpbmdVdGlsaXRpZXMuaDsgcGF0aCA9IHBhcnNlci9QYXJzaW5nVXRpbGl0aWVzLmg7IHNvdXJj
ZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTUzNkQ1QTI0MTkzRjQwRkMwMENFNENBQiAvKiBTb3Vy
Y2VTaXplTGlzdC5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5n
ID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBTb3Vy
Y2VTaXplTGlzdC5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTUzNkQ1QTI2MTkz
RjQxMEIwMENFNENBQiAvKiBTb3VyY2VTaXplTGlzdC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZl
cmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5j
Lmg7IHBhdGggPSBTb3VyY2VTaXplTGlzdC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9Owor
CQk1M0I4OTVBRDE5REM3QzM3MDA5Q0FBOTMgLyogTWljcm9UYXNrLmggKi8gPSB7aXNhID0gUEJY
RmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3Vy
Y2Vjb2RlLmMuaDsgcGF0aCA9IE1pY3JvVGFzay5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9
OwogCQk1M0M4Mjk4QjEzRDhEOTI3MDBERTJERUIgLyogUmVuZGVyRmxleGlibGVCb3guY3BwICov
ID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZp
bGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gUmVuZGVyRmxleGlibGVCb3guY3Bw
OyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQk1M0M4Mjk4QzEzRDhEOTI3MDBERTJERUIg
LyogUmVuZGVyRmxleGlibGVCb3guaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxl
RW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0g
UmVuZGVyRmxleGlibGVCb3guaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJNTNFMjlF
NUMxNjdBOEExOTAwNTg2RDNEIC8qIEludGVybmFsU2V0dGluZ3NHZW5lcmF0ZWQuY3BwICovID0g
e2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVU
eXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gSW50ZXJuYWxTZXR0aW5nc0dlbmVyYXRl
ZC5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CkBAIC0xMzA3Miw2ICsxMzA3Nyw5IEBA
CiAJCUNBM0JGNjdEMTBEOTlCQUUwMEU2Q0U1MyAvKiBTY3JvbGxBbmltYXRvci5oICovID0ge2lz
YSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBl
ID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBTY3JvbGxBbmltYXRvci5oOyBzb3VyY2VUcmVlID0g
Ijxncm91cD4iOyB9OwogCQlDQUU5RjkwRDE0NjQ0MUYwMDBDMjQ1QjAgLyogQ1NTQXNwZWN0UmF0
aW9WYWx1ZS5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0g
NDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBDU1NBc3Bl
Y3RSYXRpb1ZhbHVlLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJQ0FFOUY5MEUx
NDY0NDFGMDAwQzI0NUIwIC8qIENTU0FzcGVjdFJhdGlvVmFsdWUuaCAqLyA9IHtpc2EgPSBQQlhG
aWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJj
ZWNvZGUuYy5oOyBwYXRoID0gQ1NTQXNwZWN0UmF0aW9WYWx1ZS5oOyBzb3VyY2VUcmVlID0gIjxn
cm91cD4iOyB9OworCQlDQjhDRjAxNTFBOTM0QjQzMDAwRDUxMEIgLyogTWljcm9UYXNrLmNwcCAq
LyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25G
aWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IE1pY3JvVGFzay5jcHA7IHNvdXJj
ZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUNCOENGMDFDMUE5NURFNDIwMDBENTEwQiAvKiBNaWNy
b1Rhc2tUZXN0LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0g
NDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IE1pY3JvVGFza1Rl
c3QuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQ0I4Q0YwMUUxQTk1REU1OTAwMEQ1
MTBCIC8qIE1pY3JvVGFza1Rlc3QuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZp
bGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBw
YXRoID0gTWljcm9UYXNrVGVzdC5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCUND
QzJCNTEwMTVGNjEzMDYwMDQ4Q0RENiAvKiBEZXZpY2VDbGllbnQuaCAqLyA9IHtpc2EgPSBQQlhG
aWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJj
ZWNvZGUuYy5oOyBwYXRoID0gRGV2aWNlQ2xpZW50Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7
IH07CiAJCUNDQzJCNTExMTVGNjEzMDYwMDQ4Q0RENiAvKiBEZXZpY2VDb250cm9sbGVyLmNwcCAq
LyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25G
aWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IERldmljZUNvbnRyb2xsZXIuY3Bw
OyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQlDQ0MyQjUxMjE1RjYxMzA2MDA0OENERDYg
LyogRGV2aWNlQ29udHJvbGxlci5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVF
bmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBE
ZXZpY2VDb250cm9sbGVyLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CkBAIC0xNTY1Nyw2
ICsxNTY2NSw4IEBACiAJCQkJQTdCRjdFREQxNEM5MTc1QTAwMTQ0ODlEIC8qIEludGVybmFsU2V0
dGluZ3MuaCAqLywKIAkJCQlBN0JGN0VERTE0QzkxNzVBMDAxNDQ4OUQgLyogSW50ZXJuYWxTZXR0
aW5ncy5pZGwgKi8sCiAJCQkJQTdCRTdFREQxNEM5MTc1QTAwMTQ0ODlEIC8qIE1hbGxvY1N0YXRp
c3RpY3MuaCAqLywKKwkJCQlDQjhDRjAxRTFBOTVERTU5MDAwRDUxMEIgLyogTWljcm9UYXNrVGVz
dC5jcHAgKi8sCisJCQkJQ0I4Q0YwMUMxQTk1REU0MjAwMEQ1MTBCIC8qIE1pY3JvVGFza1Rlc3Qu
aCAqLywKIAkJCQlBN0JFN0VERTE0QzkxNzVBMDAxNDQ4OUQgLyogTWFsbG9jU3RhdGlzdGljcy5p
ZGwgKi8sCiAJCQkJQ0Q1MzkzQ0IxNzVEQ0NFNjAwQzA3MTIzIC8qIE1lbW9yeUluZm8uaCAqLywK
IAkJCQlDRDUzOTNDQzE3NURDQ0U2MDBDMDcxMjMgLyogTWVtb3J5SW5mby5pZGwgKi8sCkBAIC0y
Mjg1Nyw2ICsyMjg2Nyw4IEBACiAJCQkJRTFBREVDQkQwRTc2QUNGMTAwNEExQTVFIC8qIE1lc3Nh
Z2VQb3J0LmggKi8sCiAJCQkJRTFBREVDQzYwRTc2QUQxRjAwNEExQTVFIC8qIE1lc3NhZ2VQb3J0
LmlkbCAqLywKIAkJCQk0MUJGNzAwQTBGRTg2RjQ5MDA1RThERUMgLyogTWVzc2FnZVBvcnRDaGFu
bmVsLmggKi8sCisJCQkJNTNCODk1QUQxOURDN0MzNzAwOUNBQTkzIC8qIE1pY3JvVGFzay5oICov
LAorCQkJCUNCOENGMDE1MUE5MzRCNDMwMDBENTEwQiAvKiBNaWNyb1Rhc2suY3BwICovLAogCQkJ
CTg1MDMxQjJGMEE0NEVGQzcwMEY5OTJFMCAvKiBNb3VzZUV2ZW50LmNwcCAqLywKIAkJCQk4NTAz
MUIzMDBBNDRFRkM3MDBGOTkyRTAgLyogTW91c2VFdmVudC5oICovLAogCQkJCTE0MUI5NEU1MDlF
QzQyMjMwMDBFOTQxMyAvKiBNb3VzZUV2ZW50LmlkbCAqLywKQEAgLTIzNDIxLDYgKzIzNDMzLDcg
QEAKIAkJCQk1M0VEM0ZERjE2N0E4OEU3MDA2NzYyRTYgLyogSlNJbnRlcm5hbFNldHRpbmdzR2Vu
ZXJhdGVkLmggaW4gSGVhZGVycyAqLywKIAkJCQlBNzQwQjU5NTE0QzkzNUFCMDBBNzdGQTQgLyog
SlNNYWxsb2NTdGF0aXN0aWNzLmggaW4gSGVhZGVycyAqLywKIAkJCQlDRDUzOTNENDE3NUUwMTg2
MDBDMDcxMjMgLyogSlNNZW1vcnlJbmZvLmggaW4gSGVhZGVycyAqLywKKwkJCQlDQjhDRjAxRDFB
OTVERTQyMDAwRDUxMEIgLyogTWljcm9UYXNrVGVzdC5oIGluIEhlYWRlcnMgKi8sCiAJCQkJRUJG
NTEyMUQxNjk2NDk2QzAwNTZCRDI1IC8qIEpTVHlwZUNvbnZlcnNpb25zLmggaW4gSGVhZGVycyAq
LywKIAkJCQlDREMyNkI0MTE2MEE4Q0NFMDAyNjc1N0IgLyogTW9ja0NETS5oIGluIEhlYWRlcnMg
Ki8sCiAJCQkJMkQ5N0YwNDgxOURENDE0MDAwMUVFOUMzIC8qIE1vY2tQYWdlT3ZlcmxheUNsaWVu
dC5oIGluIEhlYWRlcnMgKi8sCkBAIC0yNTgzMSw2ICsyNTg0NCw3IEBACiAJCQkJNTNDODI5OEUx
M0Q4RDkyNzAwREUyREVCIC8qIFJlbmRlckZsZXhpYmxlQm94LmggaW4gSGVhZGVycyAqLywKIAkJ
CQk1MDhDQ0E0RjEzQ0YxMDZCMDAzMTUxRjMgLyogUmVuZGVyRmxvd1RocmVhZC5oIGluIEhlYWRl
cnMgKi8sCiAJCQkJQTg3MURFRDMwQTE1MzBDNzAwQjEyQTY4IC8qIFJlbmRlckZyYW1lLmggaW4g
SGVhZGVycyAqLywKKwkJCQk1M0I4OTVBRjE5REM3RUQ5MDA5Q0FBOTMgLyogTWljcm9UYXNrLmgg
aW4gSGVhZGVycyAqLywKIAkJCQkwRkQzMDgwRjExN0NGN0U3MDBBNzkxRjcgLyogUmVuZGVyRnJh
bWVCYXNlLmggaW4gSGVhZGVycyAqLywKIAkJCQlBODcxREVEMTBBMTUzMEM3MDBCMTJBNjggLyog
UmVuZGVyRnJhbWVTZXQuaCBpbiBIZWFkZXJzICovLAogCQkJCUNERUE3Qzg0MTI3NjIzMDQwMEI4
NDZERCAvKiBSZW5kZXJGdWxsU2NyZWVuLmggaW4gSGVhZGVycyAqLywKQEAgLTI3MTkyLDYgKzI3
MjA2LDcgQEAKIAkJCQk1M0UyOUU1RTE2N0E4QTE5MDA1ODZEM0QgLyogSW50ZXJuYWxTZXR0aW5n
c0dlbmVyYXRlZC5jcHAgaW4gU291cmNlcyAqLywKIAkJCQk0MTdEQTcxRDEzNzM1REZBMDA3QzU3
RkIgLyogSlNJbnRlcm5hbHMuY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJQTc0MEI1QTcxNEM5MzVB
RjAwQTc3RkE0IC8qIEpTSW50ZXJuYWxTZXR0aW5ncy5jcHAgaW4gU291cmNlcyAqLywKKwkJCQlD
QjhDRjAxRjFBOTVERTU5MDAwRDUxMEIgLyogTWljcm9UYXNrVGVzdC5jcHAgaW4gU291cmNlcyAq
LywKIAkJCQk1M0VEM0ZERTE2N0E4OEU3MDA2NzYyRTYgLyogSlNJbnRlcm5hbFNldHRpbmdzR2Vu
ZXJhdGVkLmNwcCBpbiBTb3VyY2VzICovLAogCQkJCUE3NDBCNTk3MTRDOTM1QUYwMEE3N0ZBNCAv
KiBKU01hbGxvY1N0YXRpc3RpY3MuY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJQ0Q1MzkzRDMxNzVF
MDE4NjAwQzA3MTIzIC8qIEpTTWVtb3J5SW5mby5jcHAgaW4gU291cmNlcyAqLywKQEAgLTI5ODI5
LDYgKzI5ODQ0LDcgQEAKIAkJCQlCMjIyN0E5MDBEMDBCRjIyMDA3MUI3ODIgLyogU1ZHUG9seWdv
bkVsZW1lbnQuY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJQjIyMjdBOTMwRDAwQkYyMjAwNzFCNzgy
IC8qIFNWR1BvbHlsaW5lRWxlbWVudC5jcHAgaW4gU291cmNlcyAqLywKIAkJCQlCMjIyN0E5NjBE
MDBCRjIyMDA3MUI3ODIgLyogU1ZHUHJlc2VydmVBc3BlY3RSYXRpby5jcHAgaW4gU291cmNlcyAq
LywKKwkJCQlDQjhDRjAxODFBOTM1OEQ0MDAwRDUxMEIgLyogTWljcm9UYXNrLmNwcCBpbiBTb3Vy
Y2VzICovLAogCQkJCUI1NDNCODU3MTdFQjc1OEYwMDNCRTkzQSAvKiBTVkdQcm9wZXJ0eUluZm8u
Y3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJQjIyMjdBOTkwRDAwQkYyMjAwNzFCNzgyIC8qIFNWR1Jh
ZGlhbEdyYWRpZW50RWxlbWVudC5jcHAgaW4gU291cmNlcyAqLywKIAkJCQlCMjIyN0E5RDBEMDBC
RjIyMDA3MUI3ODIgLyogU1ZHUmVjdEVsZW1lbnQuY3BwIGluIFNvdXJjZXMgKi8sCmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViQ29yZS9kb20vRG9jdW1lbnQuaCBiL1NvdXJjZS9XZWJDb3JlL2RvbS9E
b2N1bWVudC5oCmluZGV4IDc2ZmIxYjc5Y2NlYmM0Njg1MTNhYzU2ZWIwYjQzODBmZjlmM2QwZTMu
LjBhNDEyNTYwNTY3ODZlNmJmNzk3ZTM1ZDc0YjdlNzQ2OTBmYzVkYjkgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9XZWJDb3JlL2RvbS9Eb2N1bWVudC5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2RvbS9Eb2N1
bWVudC5oCkBAIC0xMjYwLDcgKzEyNjAsNyBAQCBwdWJsaWM6CiAgICAgdm9pZCBhZGREaXNhYmxl
ZEZpZWxkc2V0RWxlbWVudCgpIHsgbV9kaXNhYmxlZEZpZWxkc2V0RWxlbWVudHNDb3VudCsrOyB9
CiAgICAgdm9pZCByZW1vdmVEaXNhYmxlZEZpZWxkc2V0RWxlbWVudCgpIHsgQVNTRVJUKG1fZGlz
YWJsZWRGaWVsZHNldEVsZW1lbnRzQ291bnQpOyBtX2Rpc2FibGVkRmllbGRzZXRFbGVtZW50c0Nv
dW50LS07IH0KIAotICAgIHZpcnR1YWwgdm9pZCBhZGRDb25zb2xlTWVzc2FnZShNZXNzYWdlU291
cmNlLCBNZXNzYWdlTGV2ZWwsIGNvbnN0IFN0cmluZyYgbWVzc2FnZSwgdW5zaWduZWQgbG9uZyBy
ZXF1ZXN0SWRlbnRpZmllciA9IDApIG92ZXJyaWRlIGZpbmFsOworICAgIFdFQkNPUkVfRVhQT1JU
IHZpcnR1YWwgdm9pZCBhZGRDb25zb2xlTWVzc2FnZShNZXNzYWdlU291cmNlLCBNZXNzYWdlTGV2
ZWwsIGNvbnN0IFN0cmluZyYgbWVzc2FnZSwgdW5zaWduZWQgbG9uZyByZXF1ZXN0SWRlbnRpZmll
ciA9IDApIG92ZXJyaWRlIGZpbmFsOwogCiAgICAgV0VCQ09SRV9FWFBPUlQgdmlydHVhbCBTZWN1
cml0eU9yaWdpbiogdG9wT3JpZ2luKCkgY29uc3Qgb3ZlcnJpZGUgZmluYWw7CiAKZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJDb3JlL2RvbS9NaWNyb1Rhc2suY3BwIGIvU291cmNlL1dlYkNvcmUvZG9t
L01pY3JvVGFzay5jcHAKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uYzc4NmUzNWE2Zjk3ZmZhNDdmOTYwMmI3M2JjMzI1
NmE3NmJjNmUyYgotLS0gL2Rldi9udWxsCisrKyBiL1NvdXJjZS9XZWJDb3JlL2RvbS9NaWNyb1Rh
c2suY3BwCkBAIC0wLDAgKzEsNTIgQEAKKy8qCisgKiBDb3B5cmlnaHQgKEMpIDIwMTQgWW9hdiBX
ZWlzcyAoeW9hdkB5b2F2LndzKQorICogQ29weXJpZ2h0IChDKSAyMDE1IEFrYW1haSBUZWNobm9s
b2dpZXMgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICoKKyAqIFRoaXMgbGlicmFyeSBpcyBm
cmVlIHNvZnR3YXJlOyB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IKKyAqIG1vZGlmeSBp
dCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBMaWJyYXJ5IEdlbmVyYWwgUHVibGljCisgKiBM
aWNlbnNlIGFzIHB1Ymxpc2hlZCBieSB0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uOyBlaXRo
ZXIKKyAqIHZlcnNpb24gMiBvZiB0aGUgTGljZW5zZSwgb3IgKGF0IHlvdXIgb3B0aW9uKSBhbnkg
bGF0ZXIgdmVyc2lvbi4KKyAqCisgKiBUaGlzIGxpYnJhcnkgaXMgZGlzdHJpYnV0ZWQgaW4gdGhl
IGhvcGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCwKKyAqIGJ1dCBXSVRIT1VUIEFOWSBXQVJSQU5U
WTsgd2l0aG91dCBldmVuIHRoZSBpbXBsaWVkIHdhcnJhbnR5IG9mCisgKiBNRVJDSEFOVEFCSUxJ
VFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlIEdOVQorICog
TGlicmFyeSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGZvciBtb3JlIGRldGFpbHMuCisgKgorICog
WW91IHNob3VsZCBoYXZlIHJlY2VpdmVkIGEgY29weSBvZiB0aGUgR05VIExpYnJhcnkgR2VuZXJh
bCBQdWJsaWMgTGljZW5zZQorICogYWxvbmcgd2l0aCB0aGlzIGxpYnJhcnk7IHNlZSB0aGUgZmls
ZSBDT1BZSU5HLkxJQi4gIElmIG5vdCwgd3JpdGUgdG8KKyAqIHRoZSBGcmVlIFNvZnR3YXJlIEZv
dW5kYXRpb24sIEluYy4sIDUxIEZyYW5rbGluIFN0cmVldCwgRmlmdGggRmxvb3IsCisgKiBCb3N0
b24sIE1BIDAyMTEwLTEzMDEsIFVTQS4KKyAqCisgKi8KKworI2luY2x1ZGUgImNvbmZpZy5oIgor
I2luY2x1ZGUgIk1pY3JvVGFzay5oIgorCisjaW5jbHVkZSAiRG9jdW1lbnQuaCIKKyNpbmNsdWRl
IDx3dGYvdGV4dC9TdHJpbmdCdWlsZGVyLmg+CisKK25hbWVzcGFjZSBXZWJDb3JlIHsKKworTWlj
cm9UYXNrUXVldWUmIE1pY3JvVGFza1F1ZXVlOjpzaW5nbGV0b24oKQoreworICAgIEFTU0VSVChp
c01haW5UaHJlYWQoKSk7CisgICAgc3RhdGljIE5ldmVyRGVzdHJveWVkPE1pY3JvVGFza1F1ZXVl
PiBxdWV1ZTsKKyAgICByZXR1cm4gcXVldWU7Cit9CisKK3ZvaWQgTWljcm9UYXNrUXVldWU6OnF1
ZXVlTWljcm9UYXNrKHN0ZDo6dW5pcXVlX3B0cjxNaWNyb1Rhc2s+IHRhc2spCit7CisgICAgQVNT
RVJUKGlzTWFpblRocmVhZCgpKTsKKyAgICBtX21pY3JvVGFza1F1ZXVlLmFwcGVuZChXVEY6Om1v
dmUodGFzaykpOworfQorCit2b2lkIE1pY3JvVGFza1F1ZXVlOjpydW5NaWNyb1Rhc2tzKCkKK3sK
KyAgICBBU1NFUlQoaXNNYWluVGhyZWFkKCkpOworICAgIGZvciAoYXV0byYgdGFzayA6IG1fbWlj
cm9UYXNrUXVldWUpCisgICAgICAgIHRhc2stPnJ1bigpOworICAgIG1fbWljcm9UYXNrUXVldWUu
Y2xlYXIoKTsKK30KKworfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQorCmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViQ29yZS9kb20vTWljcm9UYXNrLmggYi9Tb3VyY2UvV2ViQ29yZS9kb20vTWljcm9UYXNr
LmgKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMC4uYTMwNzhhMWU1OTRiMDgxNzA4ZGY1ZWE3YzFiNjU4ZGRlZDQ0ZTcwOQot
LS0gL2Rldi9udWxsCisrKyBiL1NvdXJjZS9XZWJDb3JlL2RvbS9NaWNyb1Rhc2suaApAQCAtMCww
ICsxLDU3IEBACisvKgorICogQ29weXJpZ2h0IChDKSAyMDE0IFlvYXYgV2Vpc3MgKHlvYXZAeW9h
di53cykKKyAqIENvcHlyaWdodCAoQykgMjAxNSBBa2FtYWkgVGVjaG5vbG9naWVzIEluYy4gQWxs
IHJpZ2h0cyByZXNlcnZlZC4KKyAqCisgKiBUaGlzIGxpYnJhcnkgaXMgZnJlZSBzb2Z0d2FyZTsg
eW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29yCisgKiBtb2RpZnkgaXQgdW5kZXIgdGhlIHRl
cm1zIG9mIHRoZSBHTlUgTGlicmFyeSBHZW5lcmFsIFB1YmxpYworICogTGljZW5zZSBhcyBwdWJs
aXNoZWQgYnkgdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbjsgZWl0aGVyCisgKiB2ZXJzaW9u
IDIgb2YgdGhlIExpY2Vuc2UsIG9yIChhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24u
CisgKgorICogVGhpcyBsaWJyYXJ5IGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQg
d2lsbCBiZSB1c2VmdWwsCisgKiBidXQgV0lUSE9VVCBBTlkgV0FSUkFOVFk7IHdpdGhvdXQgZXZl
biB0aGUgaW1wbGllZCB3YXJyYW50eSBvZgorICogTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1Mg
Rk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFLiAgU2VlIHRoZSBHTlUKKyAqIExpYnJhcnkgR2VuZXJh
bCBQdWJsaWMgTGljZW5zZSBmb3IgbW9yZSBkZXRhaWxzLgorICoKKyAqIFlvdSBzaG91bGQgaGF2
ZSByZWNlaXZlZCBhIGNvcHkgb2YgdGhlIEdOVSBMaWJyYXJ5IEdlbmVyYWwgUHVibGljIExpY2Vu
c2UKKyAqIGFsb25nIHdpdGggdGhpcyBsaWJyYXJ5OyBzZWUgdGhlIGZpbGUgQ09QWUlORy5MSUIu
ICBJZiBub3QsIHdyaXRlIHRvCisgKiB0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uLCBJbmMu
LCA1MSBGcmFua2xpbiBTdHJlZXQsIEZpZnRoIEZsb29yLAorICogQm9zdG9uLCBNQSAwMjExMC0x
MzAxLCBVU0EuCisgKgorICovCisKKyNpZm5kZWYgTWljcm9UYXNrX2gKKyNkZWZpbmUgTWljcm9U
YXNrX2gKKworI2luY2x1ZGUgPHd0Zi9OZXZlckRlc3Ryb3llZC5oPgorI2luY2x1ZGUgPHd0Zi9S
ZWZDb3VudGVkLmg+CisjaW5jbHVkZSA8d3RmL1ZlY3Rvci5oPgorCisKK25hbWVzcGFjZSBXZWJD
b3JlIHsKKworY2xhc3MgTWljcm9UYXNrIDogcHVibGljIFJlZkNvdW50ZWQ8TWljcm9UYXNrPiB7
CitwdWJsaWM6CisgICAgdmlydHVhbCB2b2lkIHJ1bigpID0gMDsKKyAgICB2aXJ0dWFsIH5NaWNy
b1Rhc2soKSB7IH0KK307CisKK2NsYXNzIE1pY3JvVGFza1F1ZXVlIHsKKyAgICBmcmllbmQgTmV2
ZXJEZXN0cm95ZWQ8TWljcm9UYXNrUXVldWU+OworCitwdWJsaWM6CisgICAgV0VCQ09SRV9FWFBP
UlQgc3RhdGljIE1pY3JvVGFza1F1ZXVlJiBzaW5nbGV0b24oKTsKKyAgICB+TWljcm9UYXNrUXVl
dWUoKSB7IH0KKworICAgIFdFQkNPUkVfRVhQT1JUIHZvaWQgcXVldWVNaWNyb1Rhc2soc3RkOjp1
bmlxdWVfcHRyPE1pY3JvVGFzaz4pOworCisgICAgdm9pZCBydW5NaWNyb1Rhc2tzKCk7CisKK3By
aXZhdGU6CisgICAgTWljcm9UYXNrUXVldWUoKSB7IH0KKyAgICBWZWN0b3I8c3RkOjp1bmlxdWVf
cHRyPE1pY3JvVGFzaz4+IG1fbWljcm9UYXNrUXVldWU7CisKK307CisKK30gLy8gbmFtZXNwYWNl
IFdlYkNvcmUKKworI2VuZGlmIC8vIE1pY3JvVGFza19oCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
Q29yZS9kb20vU2NyaXB0UnVubmVyLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2RvbS9TY3JpcHRSdW5u
ZXIuY3BwCmluZGV4IGVkOTRkYTNlNzNkYjEzMDE3OGI5OWVhNGI3ZjkyYjVhYzE5ODA5ZDYuLmM0
NmI3OGUwZmZlM2M4MTgzNjA0N2VjYTNhMDdhYjljZWQxM2FmMDQgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJDb3JlL2RvbS9TY3JpcHRSdW5uZXIuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2RvbS9T
Y3JpcHRSdW5uZXIuY3BwCkBAIC0yOCw2ICsyOCw3IEBACiAKICNpbmNsdWRlICJDYWNoZWRTY3Jp
cHQuaCIKICNpbmNsdWRlICJFbGVtZW50LmgiCisjaW5jbHVkZSAiTWljcm9UYXNrLmgiCiAjaW5j
bHVkZSAiUGVuZGluZ1NjcmlwdC5oIgogI2luY2x1ZGUgIlNjcmlwdEVsZW1lbnQuaCIKIApAQCAt
MTE2LDYgKzExNyw3IEBAIHZvaWQgU2NyaXB0UnVubmVyOjp0aW1lckZpcmVkKCkKICAgICAgICAg
dG9TY3JpcHRFbGVtZW50SWZQb3NzaWJsZShlbGVtZW50LmdldCgpKS0+ZXhlY3V0ZShjYWNoZWRT
Y3JpcHQpOwogICAgICAgICBtX2RvY3VtZW50LmRlY3JlbWVudExvYWRFdmVudERlbGF5Q291bnQo
KTsKICAgICB9CisgICAgTWljcm9UYXNrUXVldWU6OnNpbmdsZXRvbigpLnJ1bk1pY3JvVGFza3Mo
KTsKIH0KIAogfQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvaHRtbC9wYXJzZXIvSFRNTFNj
cmlwdFJ1bm5lci5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL3BhcnNlci9IVE1MU2NyaXB0UnVu
bmVyLmNwcAppbmRleCA0MWU3MjVmNjBkZTg2ODFmMWNmOGRiNGI1Yzk4YWRiNjI2MjJmMjFiLi4y
N2RkNjczODJhNjAwZmMwMzM4NTJlYzkwMjkyMDE2OTJkMTQzZGVkIDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViQ29yZS9odG1sL3BhcnNlci9IVE1MU2NyaXB0UnVubmVyLmNwcAorKysgYi9Tb3VyY2Uv
V2ViQ29yZS9odG1sL3BhcnNlci9IVE1MU2NyaXB0UnVubmVyLmNwcApAQCAtMzYsNiArMzYsNyBA
QAogI2luY2x1ZGUgIkhUTUxOYW1lcy5oIgogI2luY2x1ZGUgIkhUTUxTY3JpcHRSdW5uZXJIb3N0
LmgiCiAjaW5jbHVkZSAiSWdub3JlRGVzdHJ1Y3RpdmVXcml0ZUNvdW50SW5jcmVtZW50ZXIuaCIK
KyNpbmNsdWRlICJNaWNyb1Rhc2suaCIKICNpbmNsdWRlICJNdXRhdGlvbk9ic2VydmVyLmgiCiAj
aW5jbHVkZSAiTmVzdGluZ0xldmVsSW5jcmVtZW50ZXIuaCIKICNpbmNsdWRlICJOb3RJbXBsZW1l
bnRlZC5oIgpAQCAtMTI5LDggKzEzMCwxMCBAQCB2b2lkIEhUTUxTY3JpcHRSdW5uZXI6OmV4ZWN1
dGVQZW5kaW5nU2NyaXB0QW5kRGlzcGF0Y2hFdmVudChQZW5kaW5nU2NyaXB0JiBwZW5kaQogICAg
IGlmIChwZW5kaW5nU2NyaXB0LmNhY2hlZFNjcmlwdCgpICYmIHBlbmRpbmdTY3JpcHQud2F0Y2hp
bmdGb3JMb2FkKCkpCiAgICAgICAgIHN0b3BXYXRjaGluZ0ZvckxvYWQocGVuZGluZ1NjcmlwdCk7
CiAKLSAgICBpZiAoIWlzRXhlY3V0aW5nU2NyaXB0KCkpCisgICAgaWYgKCFpc0V4ZWN1dGluZ1Nj
cmlwdCgpKSB7CiAgICAgICAgIE11dGF0aW9uT2JzZXJ2ZXI6OmRlbGl2ZXJBbGxNdXRhdGlvbnMo
KTsKKyAgICAgICAgTWljcm9UYXNrUXVldWU6OnNpbmdsZXRvbigpLnJ1bk1pY3JvVGFza3MoKTsK
KyAgICB9CiAKICAgICAvLyBDbGVhciB0aGUgcGVuZGluZyBzY3JpcHQgYmVmb3JlIHBvc3NpYmxl
IHJlbnRyYW5jeSBmcm9tIGV4ZWN1dGVTY3JpcHQoKQogICAgIFJlZlB0cjxFbGVtZW50PiBlbGVt
ZW50ID0gcGVuZGluZ1NjcmlwdC5yZWxlYXNlRWxlbWVudEFuZENsZWFyKCk7CkBAIC0yMzEsNiAr
MjM0LDggQEAgYm9vbCBIVE1MU2NyaXB0UnVubmVyOjpleGVjdXRlU2NyaXB0c1dhaXRpbmdGb3JQ
YXJzaW5nKCkKICAgICAgICAgaWYgKCFtX2RvY3VtZW50KQogICAgICAgICAgICAgcmV0dXJuIGZh
bHNlOwogICAgIH0KKyAgICBpZiAoIWlzRXhlY3V0aW5nU2NyaXB0KCkpCisgICAgICAgIE1pY3Jv
VGFza1F1ZXVlOjpzaW5nbGV0b24oKS5ydW5NaWNyb1Rhc2tzKCk7CiAgICAgcmV0dXJuIHRydWU7
CiB9CiAKQEAgLTI5Myw4ICsyOTgsMTAgQEAgdm9pZCBIVE1MU2NyaXB0UnVubmVyOjpydW5TY3Jp
cHQoRWxlbWVudCogc2NyaXB0LCBjb25zdCBUZXh0UG9zaXRpb24mIHNjcmlwdFN0YXIKICAgICAg
ICAgLy8gZXZlcnkgc2NyaXB0IGVsZW1lbnQsIGV2ZW4gaWYgaXQncyBub3QgcmVhZHkgdG8gZXhl
Y3V0ZSB5ZXQuIFRoZXJlJ3MKICAgICAgICAgLy8gdW5mb3J0dWFudGVseSBubyBvYnZpb3VzIHdh
eSB0byB0ZWxsIGlmIHByZXBhcmVTY3JpcHQgaXMgZ29pbmcgdG8KICAgICAgICAgLy8gZXhlY3V0
ZSB0aGUgc2NyaXB0IGZyb20gb3V0IGhlcmUuCi0gICAgICAgIGlmICghaXNFeGVjdXRpbmdTY3Jp
cHQoKSkKKyAgICAgICAgaWYgKCFpc0V4ZWN1dGluZ1NjcmlwdCgpKSB7CiAgICAgICAgICAgICBN
dXRhdGlvbk9ic2VydmVyOjpkZWxpdmVyQWxsTXV0YXRpb25zKCk7CisgICAgICAgICAgICBNaWNy
b1Rhc2tRdWV1ZTo6c2luZ2xldG9uKCkucnVuTWljcm9UYXNrcygpOworICAgICAgICB9CiAKICAg
ICAgICAgSW5zZXJ0aW9uUG9pbnRSZWNvcmQgaW5zZXJ0aW9uUG9pbnRSZWNvcmQobV9ob3N0Lmlu
cHV0U3RyZWFtKCkpOwogICAgICAgICBOZXN0aW5nTGV2ZWxJbmNyZW1lbnRlciBuZXN0aW5nTGV2
ZWxJbmNyZW1lbnRlcihtX3NjcmlwdE5lc3RpbmdMZXZlbCk7CmRpZmYgLS1naXQgYS9Tb3VyY2Uv
V2ViQ29yZS90ZXN0aW5nL0ludGVybmFscy5jcHAgYi9Tb3VyY2UvV2ViQ29yZS90ZXN0aW5nL0lu
dGVybmFscy5jcHAKaW5kZXggMTBiYTNjZGE2NjJlMzBlN2UxZDE3NWRkYjliOTdjODRiOTljMjli
ZS4uYWNlOTcxMDJhNTU3ZDBjZTM5Mzk4MTNlODAyNjUwMzM3ZjBmNWY2MSAxMDA2NDQKLS0tIGEv
U291cmNlL1dlYkNvcmUvdGVzdGluZy9JbnRlcm5hbHMuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3Jl
L3Rlc3RpbmcvSW50ZXJuYWxzLmNwcApAQCAtNzgsNiArNzgsOCBAQAogI2luY2x1ZGUgIk1lZGlh
U2Vzc2lvbk1hbmFnZXIuaCIKICNpbmNsdWRlICJNZW1vcnlDYWNoZS5oIgogI2luY2x1ZGUgIk1l
bW9yeUluZm8uaCIKKyNpbmNsdWRlICJNaWNyb1Rhc2suaCIKKyNpbmNsdWRlICJNaWNyb1Rhc2tU
ZXN0LmgiCiAjaW5jbHVkZSAiTW9ja1BhZ2VPdmVybGF5Q2xpZW50LmgiCiAjaW5jbHVkZSAiUGFn
ZS5oIgogI2luY2x1ZGUgIlBhZ2VPdmVybGF5LmgiCkBAIC0yNTAzLDQgKzI1MDUsOSBAQCBib29s
IEludGVybmFsczo6aXNQYWdlUGxheWluZ0F1ZGlvKCkKICAgICByZXR1cm4gZG9jdW1lbnQtPnBh
Z2UoKS0+aXNQbGF5aW5nQXVkaW8oKTsKIH0KIAordm9pZCBJbnRlcm5hbHM6OnF1ZXVlTWljcm9U
YXNrKGludCB0ZXN0TnVtYmVyKQoreworICAgIE1pY3JvVGFza1F1ZXVlOjpzaW5nbGV0b24oKS5x
dWV1ZU1pY3JvVGFzayhNaWNyb1Rhc2tUZXN0OjpjcmVhdGUoY29udGV4dERvY3VtZW50KCksIHRl
c3ROdW1iZXIpKTsKK30KKwogfQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvdGVzdGluZy9J
bnRlcm5hbHMuaCBiL1NvdXJjZS9XZWJDb3JlL3Rlc3RpbmcvSW50ZXJuYWxzLmgKaW5kZXggMDlh
NDQ5ZDcyYjI1ZmZkMzVjZTAwMWRmOTQ1ZWVkMGU5YzJmMjJmYi4uODg0YzczNjFkZmE1NTE2NmIw
NDg1MWVmMDk1NjVkNTExMTA1ZDRhMiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvdGVzdGlu
Zy9JbnRlcm5hbHMuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS90ZXN0aW5nL0ludGVybmFscy5oCkBA
IC0zNjEsNiArMzYxLDggQEAgcHVibGljOgogICAgIHZvaWQgc2V0UGFnZU11dGVkKGJvb2wpOwog
ICAgIGJvb2wgaXNQYWdlUGxheWluZ0F1ZGlvKCk7CiAKKyAgICB2b2lkIHF1ZXVlTWljcm9UYXNr
KGludCk7CisKIHByaXZhdGU6CiAgICAgZXhwbGljaXQgSW50ZXJuYWxzKERvY3VtZW50Kik7CiAg
ICAgRG9jdW1lbnQqIGNvbnRleHREb2N1bWVudCgpIGNvbnN0OwpkaWZmIC0tZ2l0IGEvU291cmNl
L1dlYkNvcmUvdGVzdGluZy9JbnRlcm5hbHMuaWRsIGIvU291cmNlL1dlYkNvcmUvdGVzdGluZy9J
bnRlcm5hbHMuaWRsCmluZGV4IGRjMmFkNTllYzdlNzE3MTUyOGMwODU3NDBjNjdkY2I2NjU1NGQy
N2MuLjJiNjNiNGZmYjZmOWFlOGYwZGQxODIwZTM5M2MxYWY3MTg1YjI0MjEgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9XZWJDb3JlL3Rlc3RpbmcvSW50ZXJuYWxzLmlkbAorKysgYi9Tb3VyY2UvV2ViQ29y
ZS90ZXN0aW5nL0ludGVybmFscy5pZGwKQEAgLTMxNyw0ICszMTcsNSBAQCBlbnVtIFBhZ2VPdmVy
bGF5VHlwZSB7CiAKICAgICB2b2lkIHNldFBhZ2VNdXRlZChib29sZWFuIG11dGVkKTsKICAgICBi
b29sZWFuIGlzUGFnZVBsYXlpbmdBdWRpbygpOworICAgIHZvaWQgcXVldWVNaWNyb1Rhc2sobG9u
ZyB0ZXN0TnVtYmVyKTsKIH07CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS90ZXN0aW5nL01p
Y3JvVGFza1Rlc3QuY3BwIGIvU291cmNlL1dlYkNvcmUvdGVzdGluZy9NaWNyb1Rhc2tUZXN0LmNw
cApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwLi4yOTQ2ZGJiYWQ2OGMyY2MxYTJkOGJlYTAzMjY1MGNmYWViZjU4NmYzCi0t
LSAvZGV2L251bGwKKysrIGIvU291cmNlL1dlYkNvcmUvdGVzdGluZy9NaWNyb1Rhc2tUZXN0LmNw
cApAQCAtMCwwICsxLDQzIEBACisvKgorICogQ29weXJpZ2h0IChDKSAyMDE1IEFrYW1haSBUZWNo
bm9sb2dpZXMgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICoKKyAqIFRoaXMgbGlicmFyeSBp
cyBmcmVlIHNvZnR3YXJlOyB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IKKyAqIG1vZGlm
eSBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBMaWJyYXJ5IEdlbmVyYWwgUHVibGljCisg
KiBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieSB0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uOyBl
aXRoZXIKKyAqIHZlcnNpb24gMiBvZiB0aGUgTGljZW5zZSwgb3IgKGF0IHlvdXIgb3B0aW9uKSBh
bnkgbGF0ZXIgdmVyc2lvbi4KKyAqCisgKiBUaGlzIGxpYnJhcnkgaXMgZGlzdHJpYnV0ZWQgaW4g
dGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCwKKyAqIGJ1dCBXSVRIT1VUIEFOWSBXQVJS
QU5UWTsgd2l0aG91dCBldmVuIHRoZSBpbXBsaWVkIHdhcnJhbnR5IG9mCisgKiBNRVJDSEFOVEFC
SUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlIEdOVQor
ICogTGlicmFyeSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGZvciBtb3JlIGRldGFpbHMuCisgKgor
ICogWW91IHNob3VsZCBoYXZlIHJlY2VpdmVkIGEgY29weSBvZiB0aGUgR05VIExpYnJhcnkgR2Vu
ZXJhbCBQdWJsaWMgTGljZW5zZQorICogYWxvbmcgd2l0aCB0aGlzIGxpYnJhcnk7IHNlZSB0aGUg
ZmlsZSBDT1BZSU5HLkxJQi4gIElmIG5vdCwgd3JpdGUgdG8KKyAqIHRoZSBGcmVlIFNvZnR3YXJl
IEZvdW5kYXRpb24sIEluYy4sIDUxIEZyYW5rbGluIFN0cmVldCwgRmlmdGggRmxvb3IsCisgKiBC
b3N0b24sIE1BIDAyMTEwLTEzMDEsIFVTQS4KKyAqCisgKi8KKworI2luY2x1ZGUgImNvbmZpZy5o
IgorI2luY2x1ZGUgIk1pY3JvVGFza1Rlc3QuaCIKKworI2luY2x1ZGUgIkRvY3VtZW50LmgiCisK
K25hbWVzcGFjZSBXZWJDb3JlIHsKKwordm9pZCBNaWNyb1Rhc2tUZXN0OjpydW4oKQoreworICAg
IFN0cmluZ0J1aWxkZXIgbWVzc2FnZTsKKyAgICBtZXNzYWdlLmFwcGVuZCgiTWljcm9UYXNrICMi
KTsKKyAgICBtZXNzYWdlLmFwcGVuZChTdHJpbmc6Om51bWJlcihtX3Rlc3ROdW1iZXIpKTsKKyAg
ICBtZXNzYWdlLmFwcGVuZCgiIGhhcyByYW4uIik7CisgICAgaWYgKG1fZG9jdW1lbnQpCisgICAg
ICAgIG1fZG9jdW1lbnQtPmFkZENvbnNvbGVNZXNzYWdlKE1lc3NhZ2VTb3VyY2U6OkpTLCBNZXNz
YWdlTGV2ZWw6OkRlYnVnLCBtZXNzYWdlLnRvU3RyaW5nKCkpOworfQorCitzdGQ6OnVuaXF1ZV9w
dHI8TWljcm9UYXNrVGVzdD4gTWljcm9UYXNrVGVzdDo6Y3JlYXRlKFBhc3NSZWZQdHI8RG9jdW1l
bnQ+IGRvY3VtZW50LCBpbnQgdGVzdE51bWJlcikKK3sKKyAgICByZXR1cm4gc3RkOjp1bmlxdWVf
cHRyPE1pY3JvVGFza1Rlc3Q+KG5ldyBNaWNyb1Rhc2tUZXN0KGRvY3VtZW50LCB0ZXN0TnVtYmVy
KSk7Cit9CisKK30gLy8gbmFtZXNwYWNlIFdlYkNvcmUKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJD
b3JlL3Rlc3RpbmcvTWljcm9UYXNrVGVzdC5oIGIvU291cmNlL1dlYkNvcmUvdGVzdGluZy9NaWNy
b1Rhc2tUZXN0LmgKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uNjVjMWVlZTU3ZmY1YjdkNzA2Y2Q1ZmQ0M2U1ZGMyYzQw
ZTE3NTBhNwotLS0gL2Rldi9udWxsCisrKyBiL1NvdXJjZS9XZWJDb3JlL3Rlc3RpbmcvTWljcm9U
YXNrVGVzdC5oCkBAIC0wLDAgKzEsNDkgQEAKKy8qCisgKiBDb3B5cmlnaHQgKEMpIDIwMTUgQWth
bWFpIFRlY2hub2xvZ2llcyBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKgorICogVGhpcyBs
aWJyYXJ5IGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vcgor
ICogbW9kaWZ5IGl0IHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05VIExpYnJhcnkgR2VuZXJhbCBQ
dWJsaWMKKyAqIExpY2Vuc2UgYXMgcHVibGlzaGVkIGJ5IHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5k
YXRpb247IGVpdGhlcgorICogdmVyc2lvbiAyIG9mIHRoZSBMaWNlbnNlLCBvciAoYXQgeW91ciBv
cHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLgorICoKKyAqIFRoaXMgbGlicmFyeSBpcyBkaXN0cmli
dXRlZCBpbiB0aGUgaG9wZSB0aGF0IGl0IHdpbGwgYmUgdXNlZnVsLAorICogYnV0IFdJVEhPVVQg
QU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKKyAqIE1F
UkNIQU5UQUJJTElUWSBvciBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRS4gIFNlZSB0
aGUgR05VCisgKiBMaWJyYXJ5IEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWls
cy4KKyAqCisgKiBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgTGli
cmFyeSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlCisgKiBhbG9uZyB3aXRoIHRoaXMgbGlicmFyeTsg
c2VlIHRoZSBmaWxlIENPUFlJTkcuTElCLiAgSWYgbm90LCB3cml0ZSB0bworICogdGhlIEZyZWUg
U29mdHdhcmUgRm91bmRhdGlvbiwgSW5jLiwgNTEgRnJhbmtsaW4gU3RyZWV0LCBGaWZ0aCBGbG9v
ciwKKyAqIEJvc3RvbiwgTUEgMDIxMTAtMTMwMSwgVVNBLgorICoKKyAqLworCisjaWZuZGVmIE1p
Y3JvVGFza1Rlc3RfaAorI2RlZmluZSBNaWNyb1Rhc2tUZXN0X2gKKworI2luY2x1ZGUgIk1pY3Jv
VGFzay5oIgorI2luY2x1ZGUgPHd0Zi9SZWZDb3VudGVkLmg+CisKK25hbWVzcGFjZSBXZWJDb3Jl
IHsKKworY2xhc3MgRG9jdW1lbnQ7CisKK2NsYXNzIE1pY3JvVGFza1Rlc3Q6IHB1YmxpYyBNaWNy
b1Rhc2sgeworcHVibGljOgorICAgIHZpcnR1YWwgdm9pZCBydW4oKSBvdmVycmlkZTsKKyAgICBX
RUJDT1JFX0VYUE9SVCBzdGF0aWMgc3RkOjp1bmlxdWVfcHRyPE1pY3JvVGFza1Rlc3Q+IGNyZWF0
ZShQYXNzUmVmUHRyPERvY3VtZW50PiwgaW50IHRlc3ROdW1iZXIpOworCitwcml2YXRlOgorICAg
IE1pY3JvVGFza1Rlc3QoUGFzc1JlZlB0cjxEb2N1bWVudD4gZG9jdW1lbnQsIGludCB0ZXN0TnVt
YmVyKQorICAgICAgICA6IG1fZG9jdW1lbnQoZG9jdW1lbnQpCisgICAgICAgICwgbV90ZXN0TnVt
YmVyKHRlc3ROdW1iZXIpCisgICAgeworICAgIH0KKworICAgIFJlZlB0cjxEb2N1bWVudD4gbV9k
b2N1bWVudDsKKyAgICBpbnQgbV90ZXN0TnVtYmVyOworfTsKKworfSAvLyBuYW1lc3BhY2UgV2Vi
Q29yZQorCisjZW5kaWYK
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>246888</attachid>
            <date>2015-02-19 02:44:28 -0800</date>
            <delta_ts>2015-02-19 03:58:25 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-137496-20150219114419.patch</filename>
            <type>text/plain</type>
            <size>39213</size>
            <attacher name="Yoav Weiss">yoav</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTgwMTQ1CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggZjQ5YjY5ZGExMjViY2Fk
ZWZmYmE2NzU3NTE2ZTUxM2M0OWNmNmE5MS4uYWM0YTI4ZWE0Mjc0ZjMzYjUxODcyM2VkZjc5MDVl
Yzc4ZWVmNzQxYiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDQ2IEBACisyMDE1LTAyLTE5ICBZb2F2
IFdlaXNzICA8eW9hdkB5b2F2LndzPgorCisgICAgICAgIEFkZCBhIG1pY3JvdGFzayBhYnN0cmFj
dGlvbgorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTM3
NDk2CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgVGhp
cyBwYXRjaCBhZGRzIGEgbWljcm90YXNrIGFic3RyYWN0aW9uOiBodHRwczovL2h0bWwuc3BlYy53
aGF0d2cub3JnL211bHRpcGFnZS93ZWJhcHBhcGlzLmh0bWwjbWljcm90YXNrCisgICAgICAgIFRo
YXQgYWJzdHJhY3Rpb24gaXMgcmVxdWlyZWQgaW4gb3JkZXIgdG8gZW5hYmxlIGFzeW5jIGxvYWRp
bmcgb2YgaW1hZ2VzLAorICAgICAgICB3aGljaCBpcyBpbiB0dXJuIHJlcXVpcmVkIHRvIGVuYWJs
ZSBzdXBwb3J0IGZvciB0aGUgcGljdHVyZSBlbGVtZW50LCBhcyB3ZWxsIGFzCisgICAgICAgIHRv
IG1ha2Ugc3VyZSB0aGF0IHRoZSBvcmRlciBvZiBwcm9wZXJ0aWVzIHNldCBvbiBIVE1MSW1hZ2VF
bGVtZW50IGhhcyBubyBpbXBsaWNhdGlvbnMuCisKKyAgICAgICAgKiBXZWJDb3JlLnZjeHByb2ov
V2ViQ29yZS52Y3hwcm9qOiBBZGQgTWljcm9UYXNrLntoLGNwcH0gdG8gdGhlIHByb2plY3QuCisg
ICAgICAgICogV2ViQ29yZS52Y3hwcm9qL1dlYkNvcmVUZXN0U3VwcG9ydC52Y3hwcm9qOiBBZGQg
TWljcm9UYXNrVGVzdC57aCxjcHB9IHRvIHRoZSBwcm9qZWN0LgorICAgICAgICAqIFdlYkNvcmUu
dmN4cHJvai9XZWJDb3JlLnZjeHByb2ouZmlsdGVyczogQWRkIE1pY3JvVGFzay57aCxjcHB9IHRv
IHRoZSBwcm9qZWN0LgorICAgICAgICAqIFdlYkNvcmUudmN4cHJvai9XZWJDb3JlVGVzdFN1cHBv
cnQudmN4cHJvai5maWx0ZXJzOiBBZGQgTWljcm9UYXNrVGVzdC57aCxjcHB9IHRvIHRoZSBwcm9q
ZWN0LgorICAgICAgICAqIFdlYkNvcmUueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvajogQWRkIE1p
Y3JvVGFza3ssVGVzdH0ue2gsY3BwfSB0byB0aGUgcHJvamVjdC4KKyAgICAgICAgKiBkb20vRG9j
dW1lbnQuaDogQWRkIFdFQkNPUkVfRVhQT1JUIHRvIGFkZENvbnNvbGVNZXNzYWdlLCBzbyBpdCBj
YW4gYmUgdXNlZCBpbiBNaWNyb1Rhc2tUZXN0IHRoYXQncyBpbiBXZWJDb3JlVGVzdFN1cHBvcnQu
LgorICAgICAgICAqIGRvbS9NaWNyb1Rhc2suaDogQWRkIGEgTWljcm9UYXNrIGludGVyZmFjZSBj
bGFzcy4gQWRkIGEgTWljcm9UYXNrUXVldWUgc2luZ2xldG9uLgorICAgICAgICAoV2ViQ29yZTo6
TWljcm9UYXNrOjp+TWljcm9UYXNrKToKKyAgICAgICAgKFdlYkNvcmU6Ok1pY3JvVGFzazo6cnVu
KTogUnVuIHRoZSBtaWNyb3Rhc2suCisgICAgICAgICogZG9tL01pY3JvVGFzay5jcHA6IEltcGxl
bWVudCB0aGUgTWljcm9UYXNrUXVldWUgc2luZ2xldG9uLgorICAgICAgICAoV2ViQ29yZTo6TWlj
cm9UYXNrUXVldWU6OnNpbmdsZXRvbik6IEdldCBhIHNpbmdsZXRvbiBpbnN0YW5jZSBvZiBNaWNy
b1Rhc2tRdWV1ZS4KKyAgICAgICAgKFdlYkNvcmU6Ok1pY3JvVGFza1F1ZXVlOjpxdWV1ZU1pY3Jv
VGFzayk6IEFkZCBhIG1pY3JvdGFzayB0byB0aGUgcXVldWUuCisgICAgICAgIChXZWJDb3JlOjpN
aWNyb1Rhc2tRdWV1ZTo6cnVuTWljcm9UYXNrcyk6IFJ1biBhbGwgdGhlIG1pY3JvdGFza3MgaW4g
dGhlIHF1ZXVlIGFuZCBjbGVhciBpdC4KKyAgICAgICAgKiBkb20vU2NyaXB0UnVubmVyLmNwcDog
VHJpZ2dlciBydW5uaW5nIG9mIGFsbCBtaWNyb3Rhc2tzIGluIHF1ZXVlLgorICAgICAgICAoV2Vi
Q29yZTo6U2NyaXB0UnVubmVyOjp0aW1lckZpcmVkKToKKyAgICAgICAgKiBodG1sL3BhcnNlci9I
VE1MU2NyaXB0UnVubmVyLmNwcDogVHJpZ2dlciBydW5uaW5nIG9mIGFsbCBtaWNyb3Rhc2tzIGlu
IHF1ZXVlLgorICAgICAgICAoV2ViQ29yZTo6SFRNTFNjcmlwdFJ1bm5lcjo6ZXhlY3V0ZVBlbmRp
bmdTY3JpcHRBbmREaXNwYXRjaEV2ZW50KToKKyAgICAgICAgKFdlYkNvcmU6OkhUTUxTY3JpcHRS
dW5uZXI6OmV4ZWN1dGVTY3JpcHRzV2FpdGluZ0ZvclBhcnNpbmcpOgorICAgICAgICAoV2ViQ29y
ZTo6SFRNTFNjcmlwdFJ1bm5lcjo6cnVuU2NyaXB0KToKKyAgICAgICAgKiB0ZXN0aW5nL0ludGVy
bmFscy5jcHA6IEFkZCBhIG1ldGhvZCB0byBxdWV1ZSBhIHRlc3QgbWljcm90YXNrLgorICAgICAg
ICAoV2ViQ29yZTo6SW50ZXJuYWxzOjpxdWV1ZU1pY3JvVGFzayk6CisgICAgICAgICogdGVzdGlu
Zy9JbnRlcm5hbHMuaDogQWRkIGEgbWV0aG9kIHRvIHF1ZXVlIGEgdGVzdCBtaWNyb3Rhc2suCisg
ICAgICAgIChXZWJDb3JlOjpJbnRlcm5hbHM6OnF1ZXVlTWljcm9UYXNrKToKKyAgICAgICAgKiB0
ZXN0aW5nL0ludGVybmFscy5pZGw6IEV4cG9zZSB0ZXN0IG1pY3JvdGFzayBxdWV1ZWluZyB0byB0
ZXN0IEpTLgorICAgICAgICAqIHRlc3RpbmcvTWljcm9UYXNrVGVzdC5jcHA6IEFkZCBhIHRlc3Qg
Y2xhc3MgdGhhdCBpbXBsZW1lbnRzIGEgbWljcm90YXNrIGFuZCBwcmludHMgdG8gdGhlIGNvbnNv
bGUgd2hlbiBpdCBydW5zLgorICAgICAgICAoV2ViQ29yZTo6TWljcm9UYXNrVGVzdDo6cnVuKTog
UnVuIHRoZSBtaWNyb3Rhc2sKKyAgICAgICAgKFdlYkNvcmU6Ok1pY3JvVGFza1Rlc3Q6OmNyZWF0
ZSk6IENyZWF0ZSBhIHRlc3QgbWljcm90YXNrLgorICAgICAgICAqIHRlc3RpbmcvTWljcm9UYXNr
VGVzdC5oOiBBZGQgYSB0ZXN0IGNsYXNzIHRoYXQgaW1wbGVtZW50cyBhIG1pY3JvdGFzay4KKyAg
ICAgICAgKFdlYkNvcmU6Ok1pY3JvVGFza1Rlc3Q6OnJ1bik6CisgICAgICAgIChXZWJDb3JlOjpN
aWNyb1Rhc2tUZXN0OjpjcmVhdGUpOgorCiAyMDE1LTAyLTEzICBTZXJnaW8gVmlsbGFyIFNlbmlu
ICA8c3ZpbGxhckBpZ2FsaWEuY29tPgogCiAgICAgICAgIFtDU1MgR3JpZCBMYXlvdXRdIEludmFs
aWQgaW5pdGlhbGl6YXRpb24gb2YgdHJhY2sgc2l6ZXMgd2l0aCBub24gc3Bhbm5pbmcgZ3JpZCBp
dGVtcwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvQ01ha2VMaXN0cy50eHQgYi9Tb3VyY2Uv
V2ViQ29yZS9DTWFrZUxpc3RzLnR4dAppbmRleCA2NDY2YmE1MTJmZWVjMTM1ZWU3MGMzNzNhMmU1
NjlkNmEwYzFkM2UwLi42MDJhM2VmMDYwYjkwZDVmYWE5NzBhY2EzMjY0MzI3NjNkZDEzMGRkIDEw
MDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9DTWFrZUxpc3RzLnR4dAorKysgYi9Tb3VyY2UvV2Vi
Q29yZS9DTWFrZUxpc3RzLnR4dApAQCAtMTM2OCw2ICsxMzY4LDcgQEAgc2V0KFdlYkNvcmVfU09V
UkNFUwogICAgIGRvbS9NZXNzYWdlRXZlbnQuY3BwCiAgICAgZG9tL01lc3NhZ2VQb3J0LmNwcAog
ICAgIGRvbS9NZXNzYWdlUG9ydENoYW5uZWwuY3BwCisgICAgZG9tL01pY3JvVGFzay5jcHAKICAg
ICBkb20vTW91c2VFdmVudC5jcHAKICAgICBkb20vTW91c2VSZWxhdGVkRXZlbnQuY3BwCiAgICAg
ZG9tL011dGF0aW9uRXZlbnQuY3BwCkBAIC0zMTUwLDYgKzMxNTEsNyBAQCBzZXQoV2ViQ29yZVRl
c3RTdXBwb3J0X1NPVVJDRVMKICAgICB0ZXN0aW5nL0ludGVybmFsU2V0dGluZ3MuY3BwCiAgICAg
dGVzdGluZy9JbnRlcm5hbHMuY3BwCiAKKyAgICB0ZXN0aW5nL01pY3JvVGFza1Rlc3QuY3BwCiAg
ICAgdGVzdGluZy9Nb2NrUGFnZU92ZXJsYXlDbGllbnQuY3BwCiAKICAgICB0ZXN0aW5nL2pzL1dl
YkNvcmVUZXN0U3VwcG9ydC5jcHAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUu
dmN4cHJvai9XZWJDb3JlLnZjeHByb2ogYi9Tb3VyY2UvV2ViQ29yZS9XZWJDb3JlLnZjeHByb2ov
V2ViQ29yZS52Y3hwcm9qCmluZGV4IDE0NDJiMWRhOTk3OWU5Y2MwOGIxZjNiZDIxNmI5NzJmMzVh
NDE0NTYuLjljYzQ5MWY0MmVlNzU4MDljODA1MzcwZDk4MDBjZDVlMGMzYTM5YTIgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUudmN4cHJvai9XZWJDb3JlLnZjeHByb2oKKysrIGIv
U291cmNlL1dlYkNvcmUvV2ViQ29yZS52Y3hwcm9qL1dlYkNvcmUudmN4cHJvagpAQCAtMTM1NzUs
NiArMTM1NzUsMjAgQEAKICAgICAgIDxFeGNsdWRlZEZyb21CdWlsZCBDb25kaXRpb249IickKENv
bmZpZ3VyYXRpb24pfCQoUGxhdGZvcm0pJz09J1Byb2R1Y3Rpb258V2luMzInIj50cnVlPC9FeGNs
dWRlZEZyb21CdWlsZD4KICAgICAgIDxFeGNsdWRlZEZyb21CdWlsZCBDb25kaXRpb249IickKENv
bmZpZ3VyYXRpb24pfCQoUGxhdGZvcm0pJz09J1Byb2R1Y3Rpb258eDY0JyI+dHJ1ZTwvRXhjbHVk
ZWRGcm9tQnVpbGQ+CiAgICAgPC9DbENvbXBpbGU+CisgICAgPENsQ29tcGlsZSBJbmNsdWRlPSIu
Llxkb21cTWljcm9UYXNrLmNwcCI+CisgICAgICA8RXhjbHVkZWRGcm9tQnVpbGQgQ29uZGl0aW9u
PSInJChDb25maWd1cmF0aW9uKXwkKFBsYXRmb3JtKSc9PSdEZWJ1Z3xXaW4zMiciPnRydWU8L0V4
Y2x1ZGVkRnJvbUJ1aWxkPgorICAgICAgPEV4Y2x1ZGVkRnJvbUJ1aWxkIENvbmRpdGlvbj0iJyQo
Q29uZmlndXJhdGlvbil8JChQbGF0Zm9ybSknPT0nRGVidWd8eDY0JyI+dHJ1ZTwvRXhjbHVkZWRG
cm9tQnVpbGQ+CisgICAgICA8RXhjbHVkZWRGcm9tQnVpbGQgQ29uZGl0aW9uPSInJChDb25maWd1
cmF0aW9uKXwkKFBsYXRmb3JtKSc9PSdEZWJ1Z19XaW5DYWlyb3xXaW4zMiciPnRydWU8L0V4Y2x1
ZGVkRnJvbUJ1aWxkPgorICAgICAgPEV4Y2x1ZGVkRnJvbUJ1aWxkIENvbmRpdGlvbj0iJyQoQ29u
ZmlndXJhdGlvbil8JChQbGF0Zm9ybSknPT0nRGVidWdfV2luQ2Fpcm98eDY0JyI+dHJ1ZTwvRXhj
bHVkZWRGcm9tQnVpbGQ+CisgICAgICA8RXhjbHVkZWRGcm9tQnVpbGQgQ29uZGl0aW9uPSInJChD
b25maWd1cmF0aW9uKXwkKFBsYXRmb3JtKSc9PSdEZWJ1Z1N1ZmZpeHxXaW4zMiciPnRydWU8L0V4
Y2x1ZGVkRnJvbUJ1aWxkPgorICAgICAgPEV4Y2x1ZGVkRnJvbUJ1aWxkIENvbmRpdGlvbj0iJyQo
Q29uZmlndXJhdGlvbil8JChQbGF0Zm9ybSknPT0nRGVidWdTdWZmaXh8eDY0JyI+dHJ1ZTwvRXhj
bHVkZWRGcm9tQnVpbGQ+CisgICAgICA8RXhjbHVkZWRGcm9tQnVpbGQgQ29uZGl0aW9uPSInJChD
b25maWd1cmF0aW9uKXwkKFBsYXRmb3JtKSc9PSdSZWxlYXNlfFdpbjMyJyI+dHJ1ZTwvRXhjbHVk
ZWRGcm9tQnVpbGQ+CisgICAgICA8RXhjbHVkZWRGcm9tQnVpbGQgQ29uZGl0aW9uPSInJChDb25m
aWd1cmF0aW9uKXwkKFBsYXRmb3JtKSc9PSdSZWxlYXNlfHg2NCciPnRydWU8L0V4Y2x1ZGVkRnJv
bUJ1aWxkPgorICAgICAgPEV4Y2x1ZGVkRnJvbUJ1aWxkIENvbmRpdGlvbj0iJyQoQ29uZmlndXJh
dGlvbil8JChQbGF0Zm9ybSknPT0nUmVsZWFzZV9XaW5DYWlyb3xXaW4zMiciPnRydWU8L0V4Y2x1
ZGVkRnJvbUJ1aWxkPgorICAgICAgPEV4Y2x1ZGVkRnJvbUJ1aWxkIENvbmRpdGlvbj0iJyQoQ29u
ZmlndXJhdGlvbil8JChQbGF0Zm9ybSknPT0nUmVsZWFzZV9XaW5DYWlyb3x4NjQnIj50cnVlPC9F
eGNsdWRlZEZyb21CdWlsZD4KKyAgICAgIDxFeGNsdWRlZEZyb21CdWlsZCBDb25kaXRpb249Iick
KENvbmZpZ3VyYXRpb24pfCQoUGxhdGZvcm0pJz09J1Byb2R1Y3Rpb258V2luMzInIj50cnVlPC9F
eGNsdWRlZEZyb21CdWlsZD4KKyAgICAgIDxFeGNsdWRlZEZyb21CdWlsZCBDb25kaXRpb249Iick
KENvbmZpZ3VyYXRpb24pfCQoUGxhdGZvcm0pJz09J1Byb2R1Y3Rpb258eDY0JyI+dHJ1ZTwvRXhj
bHVkZWRGcm9tQnVpbGQ+CisgICAgPC9DbENvbXBpbGU+CiAgICAgPENsQ29tcGlsZSBJbmNsdWRl
PSIuLlxkb21cTW91c2VFdmVudC5jcHAiPgogICAgICAgPEV4Y2x1ZGVkRnJvbUJ1aWxkIENvbmRp
dGlvbj0iJyQoQ29uZmlndXJhdGlvbil8JChQbGF0Zm9ybSknPT0nRGVidWd8V2luMzInIj50cnVl
PC9FeGNsdWRlZEZyb21CdWlsZD4KICAgICAgIDxFeGNsdWRlZEZyb21CdWlsZCBDb25kaXRpb249
IickKENvbmZpZ3VyYXRpb24pfCQoUGxhdGZvcm0pJz09J0RlYnVnfHg2NCciPnRydWU8L0V4Y2x1
ZGVkRnJvbUJ1aWxkPgpAQCAtMjA3NTAsNiArMjA3NjQsNyBAQAogICAgIDxDbEluY2x1ZGUgSW5j
bHVkZT0iLi5cZG9tXE1lc3NhZ2VFdmVudC5oIiAvPgogICAgIDxDbEluY2x1ZGUgSW5jbHVkZT0i
Li5cZG9tXE1lc3NhZ2VQb3J0LmgiIC8+CiAgICAgPENsSW5jbHVkZSBJbmNsdWRlPSIuLlxkb21c
TWVzc2FnZVBvcnRDaGFubmVsLmgiIC8+CisgICAgPENsSW5jbHVkZSBJbmNsdWRlPSIuLlxkb21c
TWljcm9UYXNrLmgiIC8+CiAgICAgPENsSW5jbHVkZSBJbmNsdWRlPSIuLlxkb21cTW91c2VFdmVu
dC5oIiAvPgogICAgIDxDbEluY2x1ZGUgSW5jbHVkZT0iLi5cZG9tXE1vdXNlUmVsYXRlZEV2ZW50
LmgiIC8+CiAgICAgPENsSW5jbHVkZSBJbmNsdWRlPSIuLlxkb21cTXV0YXRpb25FdmVudC5oIiAv
PgpAQCAtMjE1NTAsNCArMjE1NjUsNCBAQAogICA8SW1wb3J0R3JvdXAgTGFiZWw9IkV4dGVuc2lv
blRhcmdldHMiPgogICAgIDxJbXBvcnQgUHJvamVjdD0iJChWQ1RhcmdldHNQYXRoKVxCdWlsZEN1
c3RvbWl6YXRpb25zXG1hc20udGFyZ2V0cyIgLz4KICAgPC9JbXBvcnRHcm91cD4KLTwvUHJvamVj
dD4KXCBObyBuZXdsaW5lIGF0IGVuZCBvZiBmaWxlCis8L1Byb2plY3Q+CmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViQ29yZS9XZWJDb3JlLnZjeHByb2ovV2ViQ29yZS52Y3hwcm9qLmZpbHRlcnMgYi9T
b3VyY2UvV2ViQ29yZS9XZWJDb3JlLnZjeHByb2ovV2ViQ29yZS52Y3hwcm9qLmZpbHRlcnMKaW5k
ZXggNzJlOGFlZTU1YmEyMTNkOTExN2U2YzlmY2Y2YzUyYzI2NTM0ZDRlMi4uNjc4YjRkNDhhMTBl
MTJjZmNmY2E1ZmQ0MTJhOTRlNzZiYjVkYWEwZSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUv
V2ViQ29yZS52Y3hwcm9qL1dlYkNvcmUudmN4cHJvai5maWx0ZXJzCisrKyBiL1NvdXJjZS9XZWJD
b3JlL1dlYkNvcmUudmN4cHJvai9XZWJDb3JlLnZjeHByb2ouZmlsdGVycwpAQCAtMzIwNCw2ICsz
MjA0LDkgQEAKICAgICA8Q2xDb21waWxlIEluY2x1ZGU9Ii4uXGRvbVxNZXNzYWdlUG9ydENoYW5u
ZWwuY3BwIj4KICAgICAgIDxGaWx0ZXI+ZG9tPC9GaWx0ZXI+CiAgICAgPC9DbENvbXBpbGU+Cisg
ICAgPENsQ29tcGlsZSBJbmNsdWRlPSIuLlxkb21cTWljcm9UYXNrLmNwcCI+CisgICAgICA8Rmls
dGVyPmRvbTwvRmlsdGVyPgorICAgIDwvQ2xDb21waWxlPgogICAgIDxDbENvbXBpbGUgSW5jbHVk
ZT0iLi5cZG9tXE1vdXNlRXZlbnQuY3BwIj4KICAgICAgIDxGaWx0ZXI+ZG9tPC9GaWx0ZXI+CiAg
ICAgPC9DbENvbXBpbGU+CkBAIC0xMDI2Niw2ICsxMDI2OSw5IEBACiAgICAgPENsSW5jbHVkZSBJ
bmNsdWRlPSIuLlxkb21cTWVzc2FnZVBvcnRDaGFubmVsLmgiPgogICAgICAgPEZpbHRlcj5kb208
L0ZpbHRlcj4KICAgICA8L0NsSW5jbHVkZT4KKyAgICA8Q2xJbmNsdWRlIEluY2x1ZGU9Ii4uXGRv
bVxNaWNyb1Rhc2suaCI+CisgICAgICA8RmlsdGVyPmRvbTwvRmlsdGVyPgorICAgIDwvQ2xJbmNs
dWRlPgogICAgIDxDbEluY2x1ZGUgSW5jbHVkZT0iLi5cZG9tXE1vdXNlRXZlbnQuaCI+CiAgICAg
ICA8RmlsdGVyPmRvbTwvRmlsdGVyPgogICAgIDwvQ2xJbmNsdWRlPgpAQCAtMTUzNzQsNCArMTUz
ODAsNCBAQAogICAgICAgPEZpbHRlcj5wbGF0Zm9ybVx3aW48L0ZpbHRlcj4KICAgICA8L01BU00+
CiAgIDwvSXRlbUdyb3VwPgotPC9Qcm9qZWN0PgpcIE5vIG5ld2xpbmUgYXQgZW5kIG9mIGZpbGUK
KzwvUHJvamVjdD4KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUudmN4cHJvai9X
ZWJDb3JlVGVzdFN1cHBvcnQudmN4cHJvaiBiL1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUudmN4cHJv
ai9XZWJDb3JlVGVzdFN1cHBvcnQudmN4cHJvagppbmRleCBlM2RjODE5ZmY5ZTUzYjJhNGUwNWVh
MDM3YjljNTk1YzdjZjc1YzEzLi4xNWZlZDViZTEwNjQ4ZDc1YThkYTEwYjU0MGQwODEzOTE1ZDI4
ZTViIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9XZWJDb3JlLnZjeHByb2ovV2ViQ29yZVRl
c3RTdXBwb3J0LnZjeHByb2oKKysrIGIvU291cmNlL1dlYkNvcmUvV2ViQ29yZS52Y3hwcm9qL1dl
YkNvcmVUZXN0U3VwcG9ydC52Y3hwcm9qCkBAIC03MDYsNiArNzA2LDY4IEBACiAgICAgICA8Rm9y
Y2VkSW5jbHVkZUZpbGVzIENvbmRpdGlvbj0iJyQoQ29uZmlndXJhdGlvbil8JChQbGF0Zm9ybSkn
PT0nUHJvZHVjdGlvbnx4NjQnIj4KICAgICAgIDwvRm9yY2VkSW5jbHVkZUZpbGVzPgogICAgIDwv
Q2xDb21waWxlPgorICAgIDxDbENvbXBpbGUgSW5jbHVkZT0iLi5cdGVzdGluZ1xNaWNyb1Rhc2tU
ZXN0LmNwcCI+CisgICAgICA8UHJlY29tcGlsZWRIZWFkZXIgQ29uZGl0aW9uPSInJChDb25maWd1
cmF0aW9uKXwkKFBsYXRmb3JtKSc9PSdEZWJ1Z3xXaW4zMiciPgorICAgICAgPC9QcmVjb21waWxl
ZEhlYWRlcj4KKyAgICAgIDxQcmVjb21waWxlZEhlYWRlciBDb25kaXRpb249IickKENvbmZpZ3Vy
YXRpb24pfCQoUGxhdGZvcm0pJz09J0RlYnVnfHg2NCciPgorICAgICAgPC9QcmVjb21waWxlZEhl
YWRlcj4KKyAgICAgIDxQcmVjb21waWxlZEhlYWRlciBDb25kaXRpb249IickKENvbmZpZ3VyYXRp
b24pfCQoUGxhdGZvcm0pJz09J0RlYnVnX1dpbkNhaXJvfFdpbjMyJyI+CisgICAgICA8L1ByZWNv
bXBpbGVkSGVhZGVyPgorICAgICAgPFByZWNvbXBpbGVkSGVhZGVyIENvbmRpdGlvbj0iJyQoQ29u
ZmlndXJhdGlvbil8JChQbGF0Zm9ybSknPT0nRGVidWdfV2luQ2Fpcm98eDY0JyI+CisgICAgICA8
L1ByZWNvbXBpbGVkSGVhZGVyPgorICAgICAgPFByZWNvbXBpbGVkSGVhZGVyIENvbmRpdGlvbj0i
JyQoQ29uZmlndXJhdGlvbil8JChQbGF0Zm9ybSknPT0nRGVidWdTdWZmaXh8V2luMzInIj4KKyAg
ICAgIDwvUHJlY29tcGlsZWRIZWFkZXI+CisgICAgICA8UHJlY29tcGlsZWRIZWFkZXIgQ29uZGl0
aW9uPSInJChDb25maWd1cmF0aW9uKXwkKFBsYXRmb3JtKSc9PSdEZWJ1Z1N1ZmZpeHx4NjQnIj4K
KyAgICAgIDwvUHJlY29tcGlsZWRIZWFkZXI+CisgICAgICA8RGlzYWJsZVNwZWNpZmljV2Fybmlu
Z3MgQ29uZGl0aW9uPSInJChDb25maWd1cmF0aW9uKXwkKFBsYXRmb3JtKSc9PSdEZWJ1Z3xXaW4z
MiciPjQwNjU7NDI3Mzs0NTY1OzQ3MDE7NDcwMjslKERpc2FibGVTcGVjaWZpY1dhcm5pbmdzKTwv
RGlzYWJsZVNwZWNpZmljV2FybmluZ3M+CisgICAgICA8RGlzYWJsZVNwZWNpZmljV2FybmluZ3Mg
Q29uZGl0aW9uPSInJChDb25maWd1cmF0aW9uKXwkKFBsYXRmb3JtKSc9PSdEZWJ1Z3x4NjQnIj40
MDY1OzQyNzM7NDU2NTs0NzAxOzQ3MDI7JShEaXNhYmxlU3BlY2lmaWNXYXJuaW5ncyk8L0Rpc2Fi
bGVTcGVjaWZpY1dhcm5pbmdzPgorICAgICAgPERpc2FibGVTcGVjaWZpY1dhcm5pbmdzIENvbmRp
dGlvbj0iJyQoQ29uZmlndXJhdGlvbil8JChQbGF0Zm9ybSknPT0nRGVidWdfV2luQ2Fpcm98V2lu
MzInIj40MDY1OzQyNzM7NDU2NTs0NzAxOzQ3MDI7JShEaXNhYmxlU3BlY2lmaWNXYXJuaW5ncyk8
L0Rpc2FibGVTcGVjaWZpY1dhcm5pbmdzPgorICAgICAgPERpc2FibGVTcGVjaWZpY1dhcm5pbmdz
IENvbmRpdGlvbj0iJyQoQ29uZmlndXJhdGlvbil8JChQbGF0Zm9ybSknPT0nRGVidWdfV2luQ2Fp
cm98eDY0JyI+NDA2NTs0MjczOzQ1NjU7NDcwMTs0NzAyOyUoRGlzYWJsZVNwZWNpZmljV2Fybmlu
Z3MpPC9EaXNhYmxlU3BlY2lmaWNXYXJuaW5ncz4KKyAgICAgIDxEaXNhYmxlU3BlY2lmaWNXYXJu
aW5ncyBDb25kaXRpb249IickKENvbmZpZ3VyYXRpb24pfCQoUGxhdGZvcm0pJz09J0RlYnVnU3Vm
Zml4fFdpbjMyJyI+NDA2NTs0MjczOzQ1NjU7NDcwMTs0NzAyOyUoRGlzYWJsZVNwZWNpZmljV2Fy
bmluZ3MpPC9EaXNhYmxlU3BlY2lmaWNXYXJuaW5ncz4KKyAgICAgIDxEaXNhYmxlU3BlY2lmaWNX
YXJuaW5ncyBDb25kaXRpb249IickKENvbmZpZ3VyYXRpb24pfCQoUGxhdGZvcm0pJz09J0RlYnVn
U3VmZml4fHg2NCciPjQwNjU7NDI3Mzs0NTY1OzQ3MDE7NDcwMjslKERpc2FibGVTcGVjaWZpY1dh
cm5pbmdzKTwvRGlzYWJsZVNwZWNpZmljV2FybmluZ3M+CisgICAgICA8Rm9yY2VkSW5jbHVkZUZp
bGVzIENvbmRpdGlvbj0iJyQoQ29uZmlndXJhdGlvbil8JChQbGF0Zm9ybSknPT0nRGVidWd8V2lu
MzInIj4KKyAgICAgIDwvRm9yY2VkSW5jbHVkZUZpbGVzPgorICAgICAgPEZvcmNlZEluY2x1ZGVG
aWxlcyBDb25kaXRpb249IickKENvbmZpZ3VyYXRpb24pfCQoUGxhdGZvcm0pJz09J0RlYnVnfHg2
NCciPgorICAgICAgPC9Gb3JjZWRJbmNsdWRlRmlsZXM+CisgICAgICA8Rm9yY2VkSW5jbHVkZUZp
bGVzIENvbmRpdGlvbj0iJyQoQ29uZmlndXJhdGlvbil8JChQbGF0Zm9ybSknPT0nRGVidWdfV2lu
Q2Fpcm98V2luMzInIj4KKyAgICAgIDwvRm9yY2VkSW5jbHVkZUZpbGVzPgorICAgICAgPEZvcmNl
ZEluY2x1ZGVGaWxlcyBDb25kaXRpb249IickKENvbmZpZ3VyYXRpb24pfCQoUGxhdGZvcm0pJz09
J0RlYnVnX1dpbkNhaXJvfHg2NCciPgorICAgICAgPC9Gb3JjZWRJbmNsdWRlRmlsZXM+CisgICAg
ICA8Rm9yY2VkSW5jbHVkZUZpbGVzIENvbmRpdGlvbj0iJyQoQ29uZmlndXJhdGlvbil8JChQbGF0
Zm9ybSknPT0nRGVidWdTdWZmaXh8V2luMzInIj4KKyAgICAgIDwvRm9yY2VkSW5jbHVkZUZpbGVz
PgorICAgICAgPEZvcmNlZEluY2x1ZGVGaWxlcyBDb25kaXRpb249IickKENvbmZpZ3VyYXRpb24p
fCQoUGxhdGZvcm0pJz09J0RlYnVnU3VmZml4fHg2NCciPgorICAgICAgPC9Gb3JjZWRJbmNsdWRl
RmlsZXM+CisgICAgICA8UHJlY29tcGlsZWRIZWFkZXIgQ29uZGl0aW9uPSInJChDb25maWd1cmF0
aW9uKXwkKFBsYXRmb3JtKSc9PSdSZWxlYXNlfFdpbjMyJyI+CisgICAgICA8L1ByZWNvbXBpbGVk
SGVhZGVyPgorICAgICAgPFByZWNvbXBpbGVkSGVhZGVyIENvbmRpdGlvbj0iJyQoQ29uZmlndXJh
dGlvbil8JChQbGF0Zm9ybSknPT0nUmVsZWFzZXx4NjQnIj4KKyAgICAgIDwvUHJlY29tcGlsZWRI
ZWFkZXI+CisgICAgICA8UHJlY29tcGlsZWRIZWFkZXIgQ29uZGl0aW9uPSInJChDb25maWd1cmF0
aW9uKXwkKFBsYXRmb3JtKSc9PSdSZWxlYXNlX1dpbkNhaXJvfFdpbjMyJyI+CisgICAgICA8L1By
ZWNvbXBpbGVkSGVhZGVyPgorICAgICAgPFByZWNvbXBpbGVkSGVhZGVyIENvbmRpdGlvbj0iJyQo
Q29uZmlndXJhdGlvbil8JChQbGF0Zm9ybSknPT0nUmVsZWFzZV9XaW5DYWlyb3x4NjQnIj4KKyAg
ICAgIDwvUHJlY29tcGlsZWRIZWFkZXI+CisgICAgICA8UHJlY29tcGlsZWRIZWFkZXIgQ29uZGl0
aW9uPSInJChDb25maWd1cmF0aW9uKXwkKFBsYXRmb3JtKSc9PSdQcm9kdWN0aW9ufFdpbjMyJyI+
CisgICAgICA8L1ByZWNvbXBpbGVkSGVhZGVyPgorICAgICAgPFByZWNvbXBpbGVkSGVhZGVyIENv
bmRpdGlvbj0iJyQoQ29uZmlndXJhdGlvbil8JChQbGF0Zm9ybSknPT0nUHJvZHVjdGlvbnx4NjQn
Ij4KKyAgICAgIDwvUHJlY29tcGlsZWRIZWFkZXI+CisgICAgICA8RGlzYWJsZVNwZWNpZmljV2Fy
bmluZ3MgQ29uZGl0aW9uPSInJChDb25maWd1cmF0aW9uKXwkKFBsYXRmb3JtKSc9PSdSZWxlYXNl
fFdpbjMyJyI+NDA2NTs0MjczOzQ1NjU7NDcwMTs0NzAyOyUoRGlzYWJsZVNwZWNpZmljV2Fybmlu
Z3MpPC9EaXNhYmxlU3BlY2lmaWNXYXJuaW5ncz4KKyAgICAgIDxEaXNhYmxlU3BlY2lmaWNXYXJu
aW5ncyBDb25kaXRpb249IickKENvbmZpZ3VyYXRpb24pfCQoUGxhdGZvcm0pJz09J1JlbGVhc2V8
eDY0JyI+NDA2NTs0MjczOzQ1NjU7NDcwMTs0NzAyOyUoRGlzYWJsZVNwZWNpZmljV2FybmluZ3Mp
PC9EaXNhYmxlU3BlY2lmaWNXYXJuaW5ncz4KKyAgICAgIDxEaXNhYmxlU3BlY2lmaWNXYXJuaW5n
cyBDb25kaXRpb249IickKENvbmZpZ3VyYXRpb24pfCQoUGxhdGZvcm0pJz09J1JlbGVhc2VfV2lu
Q2Fpcm98V2luMzInIj40MDY1OzQyNzM7NDU2NTs0NzAxOzQ3MDI7JShEaXNhYmxlU3BlY2lmaWNX
YXJuaW5ncyk8L0Rpc2FibGVTcGVjaWZpY1dhcm5pbmdzPgorICAgICAgPERpc2FibGVTcGVjaWZp
Y1dhcm5pbmdzIENvbmRpdGlvbj0iJyQoQ29uZmlndXJhdGlvbil8JChQbGF0Zm9ybSknPT0nUmVs
ZWFzZV9XaW5DYWlyb3x4NjQnIj40MDY1OzQyNzM7NDU2NTs0NzAxOzQ3MDI7JShEaXNhYmxlU3Bl
Y2lmaWNXYXJuaW5ncyk8L0Rpc2FibGVTcGVjaWZpY1dhcm5pbmdzPgorICAgICAgPERpc2FibGVT
cGVjaWZpY1dhcm5pbmdzIENvbmRpdGlvbj0iJyQoQ29uZmlndXJhdGlvbil8JChQbGF0Zm9ybSkn
PT0nUHJvZHVjdGlvbnxXaW4zMiciPjQwNjU7NDI3Mzs0NTY1OzQ3MDE7NDcwMjslKERpc2FibGVT
cGVjaWZpY1dhcm5pbmdzKTwvRGlzYWJsZVNwZWNpZmljV2FybmluZ3M+CisgICAgICA8RGlzYWJs
ZVNwZWNpZmljV2FybmluZ3MgQ29uZGl0aW9uPSInJChDb25maWd1cmF0aW9uKXwkKFBsYXRmb3Jt
KSc9PSdQcm9kdWN0aW9ufHg2NCciPjQwNjU7NDI3Mzs0NTY1OzQ3MDE7NDcwMjslKERpc2FibGVT
cGVjaWZpY1dhcm5pbmdzKTwvRGlzYWJsZVNwZWNpZmljV2FybmluZ3M+CisgICAgICA8Rm9yY2Vk
SW5jbHVkZUZpbGVzIENvbmRpdGlvbj0iJyQoQ29uZmlndXJhdGlvbil8JChQbGF0Zm9ybSknPT0n
UmVsZWFzZXxXaW4zMiciPgorICAgICAgPC9Gb3JjZWRJbmNsdWRlRmlsZXM+CisgICAgICA8Rm9y
Y2VkSW5jbHVkZUZpbGVzIENvbmRpdGlvbj0iJyQoQ29uZmlndXJhdGlvbil8JChQbGF0Zm9ybSkn
PT0nUmVsZWFzZXx4NjQnIj4KKyAgICAgIDwvRm9yY2VkSW5jbHVkZUZpbGVzPgorICAgICAgPEZv
cmNlZEluY2x1ZGVGaWxlcyBDb25kaXRpb249IickKENvbmZpZ3VyYXRpb24pfCQoUGxhdGZvcm0p
Jz09J1JlbGVhc2VfV2luQ2Fpcm98V2luMzInIj4KKyAgICAgIDwvRm9yY2VkSW5jbHVkZUZpbGVz
PgorICAgICAgPEZvcmNlZEluY2x1ZGVGaWxlcyBDb25kaXRpb249IickKENvbmZpZ3VyYXRpb24p
fCQoUGxhdGZvcm0pJz09J1JlbGVhc2VfV2luQ2Fpcm98eDY0JyI+CisgICAgICA8L0ZvcmNlZElu
Y2x1ZGVGaWxlcz4KKyAgICAgIDxGb3JjZWRJbmNsdWRlRmlsZXMgQ29uZGl0aW9uPSInJChDb25m
aWd1cmF0aW9uKXwkKFBsYXRmb3JtKSc9PSdQcm9kdWN0aW9ufFdpbjMyJyI+CisgICAgICA8L0Zv
cmNlZEluY2x1ZGVGaWxlcz4KKyAgICAgIDxGb3JjZWRJbmNsdWRlRmlsZXMgQ29uZGl0aW9uPSIn
JChDb25maWd1cmF0aW9uKXwkKFBsYXRmb3JtKSc9PSdQcm9kdWN0aW9ufHg2NCciPgorICAgICAg
PC9Gb3JjZWRJbmNsdWRlRmlsZXM+CisgICAgPC9DbENvbXBpbGU+CiAgICAgPENsQ29tcGlsZSBJ
bmNsdWRlPSIuLlx0ZXN0aW5nXE1vY2tQYWdlT3ZlcmxheUNsaWVudC5jcHAiPgogICAgICAgPFBy
ZWNvbXBpbGVkSGVhZGVyIENvbmRpdGlvbj0iJyQoQ29uZmlndXJhdGlvbil8JChQbGF0Zm9ybSkn
PT0nRGVidWd8V2luMzInIj4KICAgICAgIDwvUHJlY29tcGlsZWRIZWFkZXI+CkBAIC05MTcsNiAr
OTc5LDcgQEAKICAgICA8Q2xJbmNsdWRlIEluY2x1ZGU9IiQoQ29uZmlndXJhdGlvbkJ1aWxkRGly
KVxvYmokKFBsYXRmb3JtQXJjaGl0ZWN0dXJlKVxXZWJDb3JlXERlcml2ZWRTb3VyY2VzXEpTSW50
ZXJuYWxTZXR0aW5nc0dlbmVyYXRlZC5oIiAvPgogICAgIDxDbEluY2x1ZGUgSW5jbHVkZT0iLi5c
dGVzdGluZ1xNYWxsb2NTdGF0aXN0aWNzLmgiIC8+CiAgICAgPENsSW5jbHVkZSBJbmNsdWRlPSIu
Llx0ZXN0aW5nXE1lbW9yeUluZm8uaCIgLz4KKyAgICA8Q2xJbmNsdWRlIEluY2x1ZGU9Ii4uXHRl
c3RpbmdcTWljcm9UYXNrVGVzdC5oIiAvPgogICAgIDxDbEluY2x1ZGUgSW5jbHVkZT0iLi5cdGVz
dGluZ1xNb2NrQ0RNLmgiIC8+CiAgICAgPENsSW5jbHVkZSBJbmNsdWRlPSIuLlx0ZXN0aW5nXE1v
Y2tQYWdlT3ZlcmxheUNsaWVudC5oIiAvPgogICAgIDxDbEluY2x1ZGUgSW5jbHVkZT0iLi5cdGVz
dGluZ1xUeXBlQ29udmVyc2lvbnMuaCIgLz4KQEAgLTkyOCw0ICs5OTEsNCBAQAogICA8SW1wb3J0
IFByb2plY3Q9IiQoVkNUYXJnZXRzUGF0aClcTWljcm9zb2Z0LkNwcC50YXJnZXRzIiAvPgogICA8
SW1wb3J0R3JvdXAgTGFiZWw9IkV4dGVuc2lvblRhcmdldHMiPgogICA8L0ltcG9ydEdyb3VwPgot
PC9Qcm9qZWN0PgpcIE5vIG5ld2xpbmUgYXQgZW5kIG9mIGZpbGUKKzwvUHJvamVjdD4KZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUudmN4cHJvai9XZWJDb3JlVGVzdFN1cHBvcnQu
dmN4cHJvai5maWx0ZXJzIGIvU291cmNlL1dlYkNvcmUvV2ViQ29yZS52Y3hwcm9qL1dlYkNvcmVU
ZXN0U3VwcG9ydC52Y3hwcm9qLmZpbHRlcnMKaW5kZXggNjQwMmQ1ZTRlMGI1NjQ5MTk3ZGY4NTAz
YjI0MDRmMWQxMjA4ZjY2OS4uNzYyOGYyN2ZlMDFhMDcxODMwOTVhNzljYTE0MDdhZmYzNDJjOTUw
OCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvV2ViQ29yZS52Y3hwcm9qL1dlYkNvcmVUZXN0
U3VwcG9ydC52Y3hwcm9qLmZpbHRlcnMKKysrIGIvU291cmNlL1dlYkNvcmUvV2ViQ29yZS52Y3hw
cm9qL1dlYkNvcmVUZXN0U3VwcG9ydC52Y3hwcm9qLmZpbHRlcnMKQEAgLTM5LDYgKzM5LDkgQEAK
ICAgICA8Q2xDb21waWxlIEluY2x1ZGU9Ii4uXHRlc3RpbmdcanNcV2ViQ29yZVRlc3RTdXBwb3J0
LmNwcCI+CiAgICAgICA8RmlsdGVyPnRlc3Rpbmc8L0ZpbHRlcj4KICAgICA8L0NsQ29tcGlsZT4K
KyAgICA8Q2xDb21waWxlIEluY2x1ZGU9Ii4uXHRlc3RpbmdcTWljcm9UYXNrVGVzdC5jcHAiPgor
ICAgICAgPEZpbHRlcj50ZXN0aW5nPC9GaWx0ZXI+CisgICAgPC9DbENvbXBpbGU+CiAgICAgPENs
Q29tcGlsZSBJbmNsdWRlPSIuLlx0ZXN0aW5nXE1vY2tDRE0uY3BwIj4KICAgICAgIDxGaWx0ZXI+
dGVzdGluZzwvRmlsdGVyPgogICAgIDwvQ2xDb21waWxlPgpAQCAtODcsNiArOTAsOSBAQAogICAg
ICAgPEZpbHRlcj50ZXN0aW5nPC9GaWx0ZXI+CiAgICAgPC9DbEluY2x1ZGU+CiAgICAgPENsSW5j
bHVkZSBJbmNsdWRlPSIuLlxjb25maWcuaCIgLz4KKyAgICA8Q2xJbmNsdWRlIEluY2x1ZGU9Ii4u
XHRlc3RpbmdcTWljcm9UYXNrVGVzdC5oIj4KKyAgICAgIDxGaWx0ZXI+dGVzdGluZzwvRmlsdGVy
PgorICAgIDwvQ2xJbmNsdWRlPgogICAgIDxDbEluY2x1ZGUgSW5jbHVkZT0iLi5cdGVzdGluZ1xN
b2NrQ0RNLmgiPgogICAgICAgPEZpbHRlcj50ZXN0aW5nPC9GaWx0ZXI+CiAgICAgPC9DbEluY2x1
ZGU+CkBAIC05NCw0ICsxMDAsNCBAQAogICAgICAgPEZpbHRlcj50ZXN0aW5nPC9GaWx0ZXI+CiAg
ICAgPC9DbEluY2x1ZGU+CiAgIDwvSXRlbUdyb3VwPgotPC9Qcm9qZWN0PgpcIE5vIG5ld2xpbmUg
YXQgZW5kIG9mIGZpbGUKKzwvUHJvamVjdD4KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL1dl
YkNvcmUueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvaiBiL1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUu
eGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvagppbmRleCBlOGM5N2E2MjNmZTY0NDRiYWZjM2RlYTcx
ZWNlNTQ0ZWQzZDFkMDE1Li4wODZlMWUxOTY0MTU0OTZhMWVlZjY1OGFhNWFmOTdkYmYyMzlhMTQx
IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9XZWJDb3JlLnhjb2RlcHJvai9wcm9qZWN0LnBi
eHByb2oKKysrIGIvU291cmNlL1dlYkNvcmUvV2ViQ29yZS54Y29kZXByb2ovcHJvamVjdC5wYnhw
cm9qCkBAIC0yMDg0LDYgKzIwODQsNyBAQAogCQk1MzZENUEyMzE5M0U4RTBDMDBDRTRDQUIgLyog
UGFyc2luZ1V0aWxpdGllcy5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBm
aWxlUmVmID0gNTM2RDVBMjIxOTNFOEUwQzAwQ0U0Q0FCIC8qIFBhcnNpbmdVdGlsaXRpZXMuaCAq
LzsgfTsKIAkJNTM2RDVBMjUxOTNGNDBGQzAwQ0U0Q0FCIC8qIFNvdXJjZVNpemVMaXN0LmNwcCBp
biBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDUzNkQ1QTI0MTkz
RjQwRkMwMENFNENBQiAvKiBTb3VyY2VTaXplTGlzdC5jcHAgKi87IH07CiAJCTUzNkQ1QTI3MTkz
RjQxMEIwMENFNENBQiAvKiBTb3VyY2VTaXplTGlzdC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0g
UEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNTM2RDVBMjYxOTNGNDEwQjAwQ0U0Q0FCIC8qIFNvdXJj
ZVNpemVMaXN0LmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsg
fTsKKwkJNTNCODk1QUYxOURDN0VEOTAwOUNBQTkzIC8qIE1pY3JvVGFzay5oIGluIEhlYWRlcnMg
Ki8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNTNCODk1QUQxOURDN0MzNzAwOUNB
QTkzIC8qIE1pY3JvVGFzay5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFB1YmxpYywg
KTsgfTsgfTsKIAkJNTNDODI5OEQxM0Q4RDkyNzAwREUyREVCIC8qIFJlbmRlckZsZXhpYmxlQm94
LmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDUzQzgy
OThCMTNEOEQ5MjcwMERFMkRFQiAvKiBSZW5kZXJGbGV4aWJsZUJveC5jcHAgKi87IH07CiAJCTUz
QzgyOThFMTNEOEQ5MjcwMERFMkRFQiAvKiBSZW5kZXJGbGV4aWJsZUJveC5oIGluIEhlYWRlcnMg
Ki8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNTNDODI5OEMxM0Q4RDkyNzAwREUy
REVCIC8qIFJlbmRlckZsZXhpYmxlQm94LmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAo
UHJpdmF0ZSwgKTsgfTsgfTsKIAkJNTNFMjlFNUUxNjdBOEExOTAwNTg2RDNEIC8qIEludGVybmFs
U2V0dGluZ3NHZW5lcmF0ZWQuY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxl
OyBmaWxlUmVmID0gNTNFMjlFNUMxNjdBOEExOTAwNTg2RDNEIC8qIEludGVybmFsU2V0dGluZ3NH
ZW5lcmF0ZWQuY3BwICovOyB9OwpAQCAtNTYxMiw2ICs1NjEzLDkgQEAKIAkJQ0EzQkY2N0UxMEQ5
OUJBRTAwRTZDRTUzIC8qIFNjcm9sbEFuaW1hdG9yLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQ
QlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBDQTNCRjY3RDEwRDk5QkFFMDBFNkNFNTMgLyogU2Nyb2xs
QW5pbWF0b3IuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9
OwogCQlDQUU5RjkwRjE0NjQ0MUYwMDBDMjQ1QjAgLyogQ1NTQXNwZWN0UmF0aW9WYWx1ZS5jcHAg
aW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBDQUU5RjkwRDE0
NjQ0MUYwMDBDMjQ1QjAgLyogQ1NTQXNwZWN0UmF0aW9WYWx1ZS5jcHAgKi87IH07CiAJCUNBRTlG
OTEwMTQ2NDQxRjAwMEMyNDVCMCAvKiBDU1NBc3BlY3RSYXRpb1ZhbHVlLmggaW4gSGVhZGVycyAq
LyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBDQUU5RjkwRTE0NjQ0MUYwMDBDMjQ1
QjAgLyogQ1NTQXNwZWN0UmF0aW9WYWx1ZS5oICovOyB9OworCQlDQjhDRjAxODFBOTM1OEQ0MDAw
RDUxMEIgLyogTWljcm9UYXNrLmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmls
ZTsgZmlsZVJlZiA9IENCOENGMDE1MUE5MzRCNDMwMDBENTEwQiAvKiBNaWNyb1Rhc2suY3BwICov
OyB9OworCQlDQjhDRjAxRDFBOTVERTQyMDAwRDUxMEIgLyogTWljcm9UYXNrVGVzdC5oIGluIEhl
YWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQ0I4Q0YwMUMxQTk1REU0
MjAwMEQ1MTBCIC8qIE1pY3JvVGFza1Rlc3QuaCAqLzsgfTsKKwkJQ0I4Q0YwMUYxQTk1REU1OTAw
MEQ1MTBCIC8qIE1pY3JvVGFza1Rlc3QuY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVp
bGRGaWxlOyBmaWxlUmVmID0gQ0I4Q0YwMUUxQTk1REU1OTAwMEQ1MTBCIC8qIE1pY3JvVGFza1Rl
c3QuY3BwICovOyB9OwogCQlDQ0MyQjUxNDE1RjYxMzA2MDA0OENERDYgLyogRGV2aWNlQ2xpZW50
LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBDQ0MyQjUx
MDE1RjYxMzA2MDA0OENERDYgLyogRGV2aWNlQ2xpZW50LmggKi87IHNldHRpbmdzID0ge0FUVFJJ
QlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKIAkJQ0NDMkI1MTUxNUY2MTMwNjAwNDhDREQ2IC8q
IERldmljZUNvbnRyb2xsZXIuY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxl
OyBmaWxlUmVmID0gQ0NDMkI1MTExNUY2MTMwNjAwNDhDREQ2IC8qIERldmljZUNvbnRyb2xsZXIu
Y3BwICovOyB9OwogCQlDQ0MyQjUxNjE1RjYxMzA2MDA0OENERDYgLyogRGV2aWNlQ29udHJvbGxl
ci5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQ0NDMkI1
MTIxNUY2MTMwNjAwNDhDREQ2IC8qIERldmljZUNvbnRyb2xsZXIuaCAqLzsgc2V0dGluZ3MgPSB7
QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OwpAQCAtOTIyNiw2ICs5MjMwLDcgQEAKIAkJ
NTM2RDVBMjIxOTNFOEUwQzAwQ0U0Q0FCIC8qIFBhcnNpbmdVdGlsaXRpZXMuaCAqLyA9IHtpc2Eg
PSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9
IHNvdXJjZWNvZGUuYy5oOyBuYW1lID0gUGFyc2luZ1V0aWxpdGllcy5oOyBwYXRoID0gcGFyc2Vy
L1BhcnNpbmdVdGlsaXRpZXMuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJNTM2RDVB
MjQxOTNGNDBGQzAwQ0U0Q0FCIC8qIFNvdXJjZVNpemVMaXN0LmNwcCAqLyA9IHtpc2EgPSBQQlhG
aWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJj
ZWNvZGUuY3BwLmNwcDsgcGF0aCA9IFNvdXJjZVNpemVMaXN0LmNwcDsgc291cmNlVHJlZSA9ICI8
Z3JvdXA+IjsgfTsKIAkJNTM2RDVBMjYxOTNGNDEwQjAwQ0U0Q0FCIC8qIFNvdXJjZVNpemVMaXN0
LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtu
b3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFNvdXJjZVNpemVMaXN0Lmg7IHNv
dXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTUzQjg5NUFEMTlEQzdDMzcwMDlDQUE5MyAvKiBN
aWNyb1Rhc2suaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0
OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gTWljcm9UYXNrLmg7
IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTUzQzgyOThCMTNEOEQ5MjcwMERFMkRFQiAv
KiBSZW5kZXJGbGV4aWJsZUJveC5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmls
ZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBh
dGggPSBSZW5kZXJGbGV4aWJsZUJveC5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJ
CTUzQzgyOThDMTNEOEQ5MjcwMERFMkRFQiAvKiBSZW5kZXJGbGV4aWJsZUJveC5oICovID0ge2lz
YSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBl
ID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBSZW5kZXJGbGV4aWJsZUJveC5oOyBzb3VyY2VUcmVl
ID0gIjxncm91cD4iOyB9OwogCQk1M0UyOUU1QzE2N0E4QTE5MDA1ODZEM0QgLyogSW50ZXJuYWxT
ZXR0aW5nc0dlbmVyYXRlZC5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVu
Y29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGgg
PSBJbnRlcm5hbFNldHRpbmdzR2VuZXJhdGVkLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+Ijsg
fTsKQEAgLTEzMDcyLDYgKzEzMDc3LDkgQEAKIAkJQ0EzQkY2N0QxMEQ5OUJBRTAwRTZDRTUzIC8q
IFNjcm9sbEFuaW1hdG9yLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29k
aW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFNjcm9s
bEFuaW1hdG9yLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCUNBRTlGOTBEMTQ2NDQx
RjAwMEMyNDVCMCAvKiBDU1NBc3BlY3RSYXRpb1ZhbHVlLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxl
UmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNv
ZGUuY3BwLmNwcDsgcGF0aCA9IENTU0FzcGVjdFJhdGlvVmFsdWUuY3BwOyBzb3VyY2VUcmVlID0g
Ijxncm91cD4iOyB9OwogCQlDQUU5RjkwRTE0NjQ0MUYwMDBDMjQ1QjAgLyogQ1NTQXNwZWN0UmF0
aW9WYWx1ZS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7
IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBDU1NBc3BlY3RSYXRp
b1ZhbHVlLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUNCOENGMDE1MUE5MzRCNDMw
MDBENTEwQiAvKiBNaWNyb1Rhc2suY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZp
bGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBw
YXRoID0gTWljcm9UYXNrLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQ0I4Q0Yw
MUMxQTk1REU0MjAwMEQ1MTBCIC8qIE1pY3JvVGFza1Rlc3QuaCAqLyA9IHtpc2EgPSBQQlhGaWxl
UmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNv
ZGUuYy5oOyBwYXRoID0gTWljcm9UYXNrVGVzdC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9
OworCQlDQjhDRjAxRTFBOTVERTU5MDAwRDUxMEIgLyogTWljcm9UYXNrVGVzdC5jcHAgKi8gPSB7
aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5
cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBNaWNyb1Rhc2tUZXN0LmNwcDsgc291cmNl
VHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJQ0NDMkI1MTAxNUY2MTMwNjAwNDhDREQ2IC8qIERldmlj
ZUNsaWVudC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7
IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBEZXZpY2VDbGllbnQu
aDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJQ0NDMkI1MTExNUY2MTMwNjAwNDhDREQ2
IC8qIERldmljZUNvbnRyb2xsZXIuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZp
bGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBw
YXRoID0gRGV2aWNlQ29udHJvbGxlci5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJ
CUNDQzJCNTEyMTVGNjEzMDYwMDQ4Q0RENiAvKiBEZXZpY2VDb250cm9sbGVyLmggKi8gPSB7aXNh
ID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUg
PSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IERldmljZUNvbnRyb2xsZXIuaDsgc291cmNlVHJlZSA9
ICI8Z3JvdXA+IjsgfTsKQEAgLTE1NjU3LDYgKzE1NjY1LDggQEAKIAkJCQlBN0JGN0VERDE0Qzkx
NzVBMDAxNDQ4OUQgLyogSW50ZXJuYWxTZXR0aW5ncy5oICovLAogCQkJCUE3QkY3RURFMTRDOTE3
NUEwMDE0NDg5RCAvKiBJbnRlcm5hbFNldHRpbmdzLmlkbCAqLywKIAkJCQlBN0JFN0VERDE0Qzkx
NzVBMDAxNDQ4OUQgLyogTWFsbG9jU3RhdGlzdGljcy5oICovLAorCQkJCUNCOENGMDFFMUE5NURF
NTkwMDBENTEwQiAvKiBNaWNyb1Rhc2tUZXN0LmNwcCAqLywKKwkJCQlDQjhDRjAxQzFBOTVERTQy
MDAwRDUxMEIgLyogTWljcm9UYXNrVGVzdC5oICovLAogCQkJCUE3QkU3RURFMTRDOTE3NUEwMDE0
NDg5RCAvKiBNYWxsb2NTdGF0aXN0aWNzLmlkbCAqLywKIAkJCQlDRDUzOTNDQjE3NURDQ0U2MDBD
MDcxMjMgLyogTWVtb3J5SW5mby5oICovLAogCQkJCUNENTM5M0NDMTc1RENDRTYwMEMwNzEyMyAv
KiBNZW1vcnlJbmZvLmlkbCAqLywKQEAgLTIyODU3LDYgKzIyODY3LDggQEAKIAkJCQlFMUFERUNC
RDBFNzZBQ0YxMDA0QTFBNUUgLyogTWVzc2FnZVBvcnQuaCAqLywKIAkJCQlFMUFERUNDNjBFNzZB
RDFGMDA0QTFBNUUgLyogTWVzc2FnZVBvcnQuaWRsICovLAogCQkJCTQxQkY3MDBBMEZFODZGNDkw
MDVFOERFQyAvKiBNZXNzYWdlUG9ydENoYW5uZWwuaCAqLywKKwkJCQk1M0I4OTVBRDE5REM3QzM3
MDA5Q0FBOTMgLyogTWljcm9UYXNrLmggKi8sCisJCQkJQ0I4Q0YwMTUxQTkzNEI0MzAwMEQ1MTBC
IC8qIE1pY3JvVGFzay5jcHAgKi8sCiAJCQkJODUwMzFCMkYwQTQ0RUZDNzAwRjk5MkUwIC8qIE1v
dXNlRXZlbnQuY3BwICovLAogCQkJCTg1MDMxQjMwMEE0NEVGQzcwMEY5OTJFMCAvKiBNb3VzZUV2
ZW50LmggKi8sCiAJCQkJMTQxQjk0RTUwOUVDNDIyMzAwMEU5NDEzIC8qIE1vdXNlRXZlbnQuaWRs
ICovLApAQCAtMjM0MjEsNiArMjM0MzMsNyBAQAogCQkJCTUzRUQzRkRGMTY3QTg4RTcwMDY3NjJF
NiAvKiBKU0ludGVybmFsU2V0dGluZ3NHZW5lcmF0ZWQuaCBpbiBIZWFkZXJzICovLAogCQkJCUE3
NDBCNTk1MTRDOTM1QUIwMEE3N0ZBNCAvKiBKU01hbGxvY1N0YXRpc3RpY3MuaCBpbiBIZWFkZXJz
ICovLAogCQkJCUNENTM5M0Q0MTc1RTAxODYwMEMwNzEyMyAvKiBKU01lbW9yeUluZm8uaCBpbiBI
ZWFkZXJzICovLAorCQkJCUNCOENGMDFEMUE5NURFNDIwMDBENTEwQiAvKiBNaWNyb1Rhc2tUZXN0
LmggaW4gSGVhZGVycyAqLywKIAkJCQlFQkY1MTIxRDE2OTY0OTZDMDA1NkJEMjUgLyogSlNUeXBl
Q29udmVyc2lvbnMuaCBpbiBIZWFkZXJzICovLAogCQkJCUNEQzI2QjQxMTYwQThDQ0UwMDI2NzU3
QiAvKiBNb2NrQ0RNLmggaW4gSGVhZGVycyAqLywKIAkJCQkyRDk3RjA0ODE5REQ0MTQwMDAxRUU5
QzMgLyogTW9ja1BhZ2VPdmVybGF5Q2xpZW50LmggaW4gSGVhZGVycyAqLywKQEAgLTI1ODMxLDYg
KzI1ODQ0LDcgQEAKIAkJCQk1M0M4Mjk4RTEzRDhEOTI3MDBERTJERUIgLyogUmVuZGVyRmxleGli
bGVCb3guaCBpbiBIZWFkZXJzICovLAogCQkJCTUwOENDQTRGMTNDRjEwNkIwMDMxNTFGMyAvKiBS
ZW5kZXJGbG93VGhyZWFkLmggaW4gSGVhZGVycyAqLywKIAkJCQlBODcxREVEMzBBMTUzMEM3MDBC
MTJBNjggLyogUmVuZGVyRnJhbWUuaCBpbiBIZWFkZXJzICovLAorCQkJCTUzQjg5NUFGMTlEQzdF
RDkwMDlDQUE5MyAvKiBNaWNyb1Rhc2suaCBpbiBIZWFkZXJzICovLAogCQkJCTBGRDMwODBGMTE3
Q0Y3RTcwMEE3OTFGNyAvKiBSZW5kZXJGcmFtZUJhc2UuaCBpbiBIZWFkZXJzICovLAogCQkJCUE4
NzFERUQxMEExNTMwQzcwMEIxMkE2OCAvKiBSZW5kZXJGcmFtZVNldC5oIGluIEhlYWRlcnMgKi8s
CiAJCQkJQ0RFQTdDODQxMjc2MjMwNDAwQjg0NkREIC8qIFJlbmRlckZ1bGxTY3JlZW4uaCBpbiBI
ZWFkZXJzICovLApAQCAtMjcxOTIsNiArMjcyMDYsNyBAQAogCQkJCTUzRTI5RTVFMTY3QThBMTkw
MDU4NkQzRCAvKiBJbnRlcm5hbFNldHRpbmdzR2VuZXJhdGVkLmNwcCBpbiBTb3VyY2VzICovLAog
CQkJCTQxN0RBNzFEMTM3MzVERkEwMDdDNTdGQiAvKiBKU0ludGVybmFscy5jcHAgaW4gU291cmNl
cyAqLywKIAkJCQlBNzQwQjVBNzE0QzkzNUFGMDBBNzdGQTQgLyogSlNJbnRlcm5hbFNldHRpbmdz
LmNwcCBpbiBTb3VyY2VzICovLAorCQkJCUNCOENGMDFGMUE5NURFNTkwMDBENTEwQiAvKiBNaWNy
b1Rhc2tUZXN0LmNwcCBpbiBTb3VyY2VzICovLAogCQkJCTUzRUQzRkRFMTY3QTg4RTcwMDY3NjJF
NiAvKiBKU0ludGVybmFsU2V0dGluZ3NHZW5lcmF0ZWQuY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJ
QTc0MEI1OTcxNEM5MzVBRjAwQTc3RkE0IC8qIEpTTWFsbG9jU3RhdGlzdGljcy5jcHAgaW4gU291
cmNlcyAqLywKIAkJCQlDRDUzOTNEMzE3NUUwMTg2MDBDMDcxMjMgLyogSlNNZW1vcnlJbmZvLmNw
cCBpbiBTb3VyY2VzICovLApAQCAtMjk4MjksNiArMjk4NDQsNyBAQAogCQkJCUIyMjI3QTkwMEQw
MEJGMjIwMDcxQjc4MiAvKiBTVkdQb2x5Z29uRWxlbWVudC5jcHAgaW4gU291cmNlcyAqLywKIAkJ
CQlCMjIyN0E5MzBEMDBCRjIyMDA3MUI3ODIgLyogU1ZHUG9seWxpbmVFbGVtZW50LmNwcCBpbiBT
b3VyY2VzICovLAogCQkJCUIyMjI3QTk2MEQwMEJGMjIwMDcxQjc4MiAvKiBTVkdQcmVzZXJ2ZUFz
cGVjdFJhdGlvLmNwcCBpbiBTb3VyY2VzICovLAorCQkJCUNCOENGMDE4MUE5MzU4RDQwMDBENTEw
QiAvKiBNaWNyb1Rhc2suY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJQjU0M0I4NTcxN0VCNzU4RjAw
M0JFOTNBIC8qIFNWR1Byb3BlcnR5SW5mby5jcHAgaW4gU291cmNlcyAqLywKIAkJCQlCMjIyN0E5
OTBEMDBCRjIyMDA3MUI3ODIgLyogU1ZHUmFkaWFsR3JhZGllbnRFbGVtZW50LmNwcCBpbiBTb3Vy
Y2VzICovLAogCQkJCUIyMjI3QTlEMEQwMEJGMjIwMDcxQjc4MiAvKiBTVkdSZWN0RWxlbWVudC5j
cHAgaW4gU291cmNlcyAqLywKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2RvbS9Eb2N1bWVu
dC5oIGIvU291cmNlL1dlYkNvcmUvZG9tL0RvY3VtZW50LmgKaW5kZXggNzZmYjFiNzljY2ViYzQ2
ODUxM2FjNTZlYjBiNDM4MGZmOWYzZDBlMy4uMGE0MTI1NjA1Njc4NmU2YmY3OTdlMzVkNzRiN2U3
NDY5MGZjNWRiOSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvZG9tL0RvY3VtZW50LmgKKysr
IGIvU291cmNlL1dlYkNvcmUvZG9tL0RvY3VtZW50LmgKQEAgLTEyNjAsNyArMTI2MCw3IEBAIHB1
YmxpYzoKICAgICB2b2lkIGFkZERpc2FibGVkRmllbGRzZXRFbGVtZW50KCkgeyBtX2Rpc2FibGVk
RmllbGRzZXRFbGVtZW50c0NvdW50Kys7IH0KICAgICB2b2lkIHJlbW92ZURpc2FibGVkRmllbGRz
ZXRFbGVtZW50KCkgeyBBU1NFUlQobV9kaXNhYmxlZEZpZWxkc2V0RWxlbWVudHNDb3VudCk7IG1f
ZGlzYWJsZWRGaWVsZHNldEVsZW1lbnRzQ291bnQtLTsgfQogCi0gICAgdmlydHVhbCB2b2lkIGFk
ZENvbnNvbGVNZXNzYWdlKE1lc3NhZ2VTb3VyY2UsIE1lc3NhZ2VMZXZlbCwgY29uc3QgU3RyaW5n
JiBtZXNzYWdlLCB1bnNpZ25lZCBsb25nIHJlcXVlc3RJZGVudGlmaWVyID0gMCkgb3ZlcnJpZGUg
ZmluYWw7CisgICAgV0VCQ09SRV9FWFBPUlQgdmlydHVhbCB2b2lkIGFkZENvbnNvbGVNZXNzYWdl
KE1lc3NhZ2VTb3VyY2UsIE1lc3NhZ2VMZXZlbCwgY29uc3QgU3RyaW5nJiBtZXNzYWdlLCB1bnNp
Z25lZCBsb25nIHJlcXVlc3RJZGVudGlmaWVyID0gMCkgb3ZlcnJpZGUgZmluYWw7CiAKICAgICBX
RUJDT1JFX0VYUE9SVCB2aXJ0dWFsIFNlY3VyaXR5T3JpZ2luKiB0b3BPcmlnaW4oKSBjb25zdCBv
dmVycmlkZSBmaW5hbDsKIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvZG9tL01pY3JvVGFz
ay5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9kb20vTWljcm9UYXNrLmNwcApuZXcgZmlsZSBtb2RlIDEw
MDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5jNzg2
ZTM1YTZmOTdmZmE0N2Y5NjAyYjczYmMzMjU2YTc2YmM2ZTJiCi0tLSAvZGV2L251bGwKKysrIGIv
U291cmNlL1dlYkNvcmUvZG9tL01pY3JvVGFzay5jcHAKQEAgLTAsMCArMSw1MiBAQAorLyoKKyAq
IENvcHlyaWdodCAoQykgMjAxNCBZb2F2IFdlaXNzICh5b2F2QHlvYXYud3MpCisgKiBDb3B5cmln
aHQgKEMpIDIwMTUgQWthbWFpIFRlY2hub2xvZ2llcyBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQu
CisgKgorICogVGhpcyBsaWJyYXJ5IGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmli
dXRlIGl0IGFuZC9vcgorICogbW9kaWZ5IGl0IHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05VIExp
YnJhcnkgR2VuZXJhbCBQdWJsaWMKKyAqIExpY2Vuc2UgYXMgcHVibGlzaGVkIGJ5IHRoZSBGcmVl
IFNvZnR3YXJlIEZvdW5kYXRpb247IGVpdGhlcgorICogdmVyc2lvbiAyIG9mIHRoZSBMaWNlbnNl
LCBvciAoYXQgeW91ciBvcHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLgorICoKKyAqIFRoaXMgbGli
cmFyeSBpcyBkaXN0cmlidXRlZCBpbiB0aGUgaG9wZSB0aGF0IGl0IHdpbGwgYmUgdXNlZnVsLAor
ICogYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2Fy
cmFudHkgb2YKKyAqIE1FUkNIQU5UQUJJTElUWSBvciBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIg
UFVSUE9TRS4gIFNlZSB0aGUgR05VCisgKiBMaWJyYXJ5IEdlbmVyYWwgUHVibGljIExpY2Vuc2Ug
Zm9yIG1vcmUgZGV0YWlscy4KKyAqCisgKiBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5
IG9mIHRoZSBHTlUgTGlicmFyeSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlCisgKiBhbG9uZyB3aXRo
IHRoaXMgbGlicmFyeTsgc2VlIHRoZSBmaWxlIENPUFlJTkcuTElCLiAgSWYgbm90LCB3cml0ZSB0
bworICogdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbiwgSW5jLiwgNTEgRnJhbmtsaW4gU3Ry
ZWV0LCBGaWZ0aCBGbG9vciwKKyAqIEJvc3RvbiwgTUEgMDIxMTAtMTMwMSwgVVNBLgorICoKKyAq
LworCisjaW5jbHVkZSAiY29uZmlnLmgiCisjaW5jbHVkZSAiTWljcm9UYXNrLmgiCisKKyNpbmNs
dWRlICJEb2N1bWVudC5oIgorI2luY2x1ZGUgPHd0Zi90ZXh0L1N0cmluZ0J1aWxkZXIuaD4KKwor
bmFtZXNwYWNlIFdlYkNvcmUgeworCitNaWNyb1Rhc2tRdWV1ZSYgTWljcm9UYXNrUXVldWU6OnNp
bmdsZXRvbigpCit7CisgICAgQVNTRVJUKGlzTWFpblRocmVhZCgpKTsKKyAgICBzdGF0aWMgTmV2
ZXJEZXN0cm95ZWQ8TWljcm9UYXNrUXVldWU+IHF1ZXVlOworICAgIHJldHVybiBxdWV1ZTsKK30K
Kwordm9pZCBNaWNyb1Rhc2tRdWV1ZTo6cXVldWVNaWNyb1Rhc2soc3RkOjp1bmlxdWVfcHRyPE1p
Y3JvVGFzaz4gdGFzaykKK3sKKyAgICBBU1NFUlQoaXNNYWluVGhyZWFkKCkpOworICAgIG1fbWlj
cm9UYXNrUXVldWUuYXBwZW5kKFdURjo6bW92ZSh0YXNrKSk7Cit9CisKK3ZvaWQgTWljcm9UYXNr
UXVldWU6OnJ1bk1pY3JvVGFza3MoKQoreworICAgIEFTU0VSVChpc01haW5UaHJlYWQoKSk7Cisg
ICAgZm9yIChhdXRvJiB0YXNrIDogbV9taWNyb1Rhc2tRdWV1ZSkKKyAgICAgICAgdGFzay0+cnVu
KCk7CisgICAgbV9taWNyb1Rhc2tRdWV1ZS5jbGVhcigpOworfQorCit9IC8vIG5hbWVzcGFjZSBX
ZWJDb3JlCisKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2RvbS9NaWNyb1Rhc2suaCBiL1Nv
dXJjZS9XZWJDb3JlL2RvbS9NaWNyb1Rhc2suaApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5hMzA3OGExZTU5NGIwODE3
MDhkZjVlYTdjMWI2NThkZGVkNDRlNzA5Ci0tLSAvZGV2L251bGwKKysrIGIvU291cmNlL1dlYkNv
cmUvZG9tL01pY3JvVGFzay5oCkBAIC0wLDAgKzEsNTcgQEAKKy8qCisgKiBDb3B5cmlnaHQgKEMp
IDIwMTQgWW9hdiBXZWlzcyAoeW9hdkB5b2F2LndzKQorICogQ29weXJpZ2h0IChDKSAyMDE1IEFr
YW1haSBUZWNobm9sb2dpZXMgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICoKKyAqIFRoaXMg
bGlicmFyeSBpcyBmcmVlIHNvZnR3YXJlOyB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IK
KyAqIG1vZGlmeSBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBMaWJyYXJ5IEdlbmVyYWwg
UHVibGljCisgKiBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieSB0aGUgRnJlZSBTb2Z0d2FyZSBGb3Vu
ZGF0aW9uOyBlaXRoZXIKKyAqIHZlcnNpb24gMiBvZiB0aGUgTGljZW5zZSwgb3IgKGF0IHlvdXIg
b3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KKyAqCisgKiBUaGlzIGxpYnJhcnkgaXMgZGlzdHJp
YnV0ZWQgaW4gdGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCwKKyAqIGJ1dCBXSVRIT1VU
IEFOWSBXQVJSQU5UWTsgd2l0aG91dCBldmVuIHRoZSBpbXBsaWVkIHdhcnJhbnR5IG9mCisgKiBN
RVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUg
dGhlIEdOVQorICogTGlicmFyeSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGZvciBtb3JlIGRldGFp
bHMuCisgKgorICogWW91IHNob3VsZCBoYXZlIHJlY2VpdmVkIGEgY29weSBvZiB0aGUgR05VIExp
YnJhcnkgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQorICogYWxvbmcgd2l0aCB0aGlzIGxpYnJhcnk7
IHNlZSB0aGUgZmlsZSBDT1BZSU5HLkxJQi4gIElmIG5vdCwgd3JpdGUgdG8KKyAqIHRoZSBGcmVl
IFNvZnR3YXJlIEZvdW5kYXRpb24sIEluYy4sIDUxIEZyYW5rbGluIFN0cmVldCwgRmlmdGggRmxv
b3IsCisgKiBCb3N0b24sIE1BIDAyMTEwLTEzMDEsIFVTQS4KKyAqCisgKi8KKworI2lmbmRlZiBN
aWNyb1Rhc2tfaAorI2RlZmluZSBNaWNyb1Rhc2tfaAorCisjaW5jbHVkZSA8d3RmL05ldmVyRGVz
dHJveWVkLmg+CisjaW5jbHVkZSA8d3RmL1JlZkNvdW50ZWQuaD4KKyNpbmNsdWRlIDx3dGYvVmVj
dG9yLmg+CisKKworbmFtZXNwYWNlIFdlYkNvcmUgeworCitjbGFzcyBNaWNyb1Rhc2sgOiBwdWJs
aWMgUmVmQ291bnRlZDxNaWNyb1Rhc2s+IHsKK3B1YmxpYzoKKyAgICB2aXJ0dWFsIHZvaWQgcnVu
KCkgPSAwOworICAgIHZpcnR1YWwgfk1pY3JvVGFzaygpIHsgfQorfTsKKworY2xhc3MgTWljcm9U
YXNrUXVldWUgeworICAgIGZyaWVuZCBOZXZlckRlc3Ryb3llZDxNaWNyb1Rhc2tRdWV1ZT47CisK
K3B1YmxpYzoKKyAgICBXRUJDT1JFX0VYUE9SVCBzdGF0aWMgTWljcm9UYXNrUXVldWUmIHNpbmds
ZXRvbigpOworICAgIH5NaWNyb1Rhc2tRdWV1ZSgpIHsgfQorCisgICAgV0VCQ09SRV9FWFBPUlQg
dm9pZCBxdWV1ZU1pY3JvVGFzayhzdGQ6OnVuaXF1ZV9wdHI8TWljcm9UYXNrPik7CisKKyAgICB2
b2lkIHJ1bk1pY3JvVGFza3MoKTsKKworcHJpdmF0ZToKKyAgICBNaWNyb1Rhc2tRdWV1ZSgpIHsg
fQorICAgIFZlY3RvcjxzdGQ6OnVuaXF1ZV9wdHI8TWljcm9UYXNrPj4gbV9taWNyb1Rhc2tRdWV1
ZTsKKworfTsKKworfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQorCisjZW5kaWYgLy8gTWljcm9UYXNr
X2gKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2RvbS9TY3JpcHRSdW5uZXIuY3BwIGIvU291
cmNlL1dlYkNvcmUvZG9tL1NjcmlwdFJ1bm5lci5jcHAKaW5kZXggZWQ5NGRhM2U3M2RiMTMwMTc4
Yjk5ZWE0YjdmOTJiNWFjMTk4MDlkNi4uYzQ2Yjc4ZTBmZmUzYzgxODM2MDQ3ZWNhM2EwN2FiOWNl
ZDEzYWYwNCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvZG9tL1NjcmlwdFJ1bm5lci5jcHAK
KysrIGIvU291cmNlL1dlYkNvcmUvZG9tL1NjcmlwdFJ1bm5lci5jcHAKQEAgLTI4LDYgKzI4LDcg
QEAKIAogI2luY2x1ZGUgIkNhY2hlZFNjcmlwdC5oIgogI2luY2x1ZGUgIkVsZW1lbnQuaCIKKyNp
bmNsdWRlICJNaWNyb1Rhc2suaCIKICNpbmNsdWRlICJQZW5kaW5nU2NyaXB0LmgiCiAjaW5jbHVk
ZSAiU2NyaXB0RWxlbWVudC5oIgogCkBAIC0xMTYsNiArMTE3LDcgQEAgdm9pZCBTY3JpcHRSdW5u
ZXI6OnRpbWVyRmlyZWQoKQogICAgICAgICB0b1NjcmlwdEVsZW1lbnRJZlBvc3NpYmxlKGVsZW1l
bnQuZ2V0KCkpLT5leGVjdXRlKGNhY2hlZFNjcmlwdCk7CiAgICAgICAgIG1fZG9jdW1lbnQuZGVj
cmVtZW50TG9hZEV2ZW50RGVsYXlDb3VudCgpOwogICAgIH0KKyAgICBNaWNyb1Rhc2tRdWV1ZTo6
c2luZ2xldG9uKCkucnVuTWljcm9UYXNrcygpOwogfQogCiB9CmRpZmYgLS1naXQgYS9Tb3VyY2Uv
V2ViQ29yZS9odG1sL3BhcnNlci9IVE1MU2NyaXB0UnVubmVyLmNwcCBiL1NvdXJjZS9XZWJDb3Jl
L2h0bWwvcGFyc2VyL0hUTUxTY3JpcHRSdW5uZXIuY3BwCmluZGV4IDQxZTcyNWY2MGRlODY4MWYx
Y2Y4ZGI0YjVjOThhZGI2MjYyMmYyMWIuLjI3ZGQ2NzM4MmE2MDBmYzAzMzg1MmVjOTAyOTIwMTY5
MmQxNDNkZWQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvcGFyc2VyL0hUTUxTY3Jp
cHRSdW5uZXIuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvcGFyc2VyL0hUTUxTY3JpcHRS
dW5uZXIuY3BwCkBAIC0zNiw2ICszNiw3IEBACiAjaW5jbHVkZSAiSFRNTE5hbWVzLmgiCiAjaW5j
bHVkZSAiSFRNTFNjcmlwdFJ1bm5lckhvc3QuaCIKICNpbmNsdWRlICJJZ25vcmVEZXN0cnVjdGl2
ZVdyaXRlQ291bnRJbmNyZW1lbnRlci5oIgorI2luY2x1ZGUgIk1pY3JvVGFzay5oIgogI2luY2x1
ZGUgIk11dGF0aW9uT2JzZXJ2ZXIuaCIKICNpbmNsdWRlICJOZXN0aW5nTGV2ZWxJbmNyZW1lbnRl
ci5oIgogI2luY2x1ZGUgIk5vdEltcGxlbWVudGVkLmgiCkBAIC0xMjksOCArMTMwLDEwIEBAIHZv
aWQgSFRNTFNjcmlwdFJ1bm5lcjo6ZXhlY3V0ZVBlbmRpbmdTY3JpcHRBbmREaXNwYXRjaEV2ZW50
KFBlbmRpbmdTY3JpcHQmIHBlbmRpCiAgICAgaWYgKHBlbmRpbmdTY3JpcHQuY2FjaGVkU2NyaXB0
KCkgJiYgcGVuZGluZ1NjcmlwdC53YXRjaGluZ0ZvckxvYWQoKSkKICAgICAgICAgc3RvcFdhdGNo
aW5nRm9yTG9hZChwZW5kaW5nU2NyaXB0KTsKIAotICAgIGlmICghaXNFeGVjdXRpbmdTY3JpcHQo
KSkKKyAgICBpZiAoIWlzRXhlY3V0aW5nU2NyaXB0KCkpIHsKICAgICAgICAgTXV0YXRpb25PYnNl
cnZlcjo6ZGVsaXZlckFsbE11dGF0aW9ucygpOworICAgICAgICBNaWNyb1Rhc2tRdWV1ZTo6c2lu
Z2xldG9uKCkucnVuTWljcm9UYXNrcygpOworICAgIH0KIAogICAgIC8vIENsZWFyIHRoZSBwZW5k
aW5nIHNjcmlwdCBiZWZvcmUgcG9zc2libGUgcmVudHJhbmN5IGZyb20gZXhlY3V0ZVNjcmlwdCgp
CiAgICAgUmVmUHRyPEVsZW1lbnQ+IGVsZW1lbnQgPSBwZW5kaW5nU2NyaXB0LnJlbGVhc2VFbGVt
ZW50QW5kQ2xlYXIoKTsKQEAgLTIzMSw2ICsyMzQsOCBAQCBib29sIEhUTUxTY3JpcHRSdW5uZXI6
OmV4ZWN1dGVTY3JpcHRzV2FpdGluZ0ZvclBhcnNpbmcoKQogICAgICAgICBpZiAoIW1fZG9jdW1l
bnQpCiAgICAgICAgICAgICByZXR1cm4gZmFsc2U7CiAgICAgfQorICAgIGlmICghaXNFeGVjdXRp
bmdTY3JpcHQoKSkKKyAgICAgICAgTWljcm9UYXNrUXVldWU6OnNpbmdsZXRvbigpLnJ1bk1pY3Jv
VGFza3MoKTsKICAgICByZXR1cm4gdHJ1ZTsKIH0KIApAQCAtMjkzLDggKzI5OCwxMCBAQCB2b2lk
IEhUTUxTY3JpcHRSdW5uZXI6OnJ1blNjcmlwdChFbGVtZW50KiBzY3JpcHQsIGNvbnN0IFRleHRQ
b3NpdGlvbiYgc2NyaXB0U3RhcgogICAgICAgICAvLyBldmVyeSBzY3JpcHQgZWxlbWVudCwgZXZl
biBpZiBpdCdzIG5vdCByZWFkeSB0byBleGVjdXRlIHlldC4gVGhlcmUncwogICAgICAgICAvLyB1
bmZvcnR1YW50ZWx5IG5vIG9idmlvdXMgd2F5IHRvIHRlbGwgaWYgcHJlcGFyZVNjcmlwdCBpcyBn
b2luZyB0bwogICAgICAgICAvLyBleGVjdXRlIHRoZSBzY3JpcHQgZnJvbSBvdXQgaGVyZS4KLSAg
ICAgICAgaWYgKCFpc0V4ZWN1dGluZ1NjcmlwdCgpKQorICAgICAgICBpZiAoIWlzRXhlY3V0aW5n
U2NyaXB0KCkpIHsKICAgICAgICAgICAgIE11dGF0aW9uT2JzZXJ2ZXI6OmRlbGl2ZXJBbGxNdXRh
dGlvbnMoKTsKKyAgICAgICAgICAgIE1pY3JvVGFza1F1ZXVlOjpzaW5nbGV0b24oKS5ydW5NaWNy
b1Rhc2tzKCk7CisgICAgICAgIH0KIAogICAgICAgICBJbnNlcnRpb25Qb2ludFJlY29yZCBpbnNl
cnRpb25Qb2ludFJlY29yZChtX2hvc3QuaW5wdXRTdHJlYW0oKSk7CiAgICAgICAgIE5lc3RpbmdM
ZXZlbEluY3JlbWVudGVyIG5lc3RpbmdMZXZlbEluY3JlbWVudGVyKG1fc2NyaXB0TmVzdGluZ0xl
dmVsKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3Rlc3RpbmcvSW50ZXJuYWxzLmNwcCBi
L1NvdXJjZS9XZWJDb3JlL3Rlc3RpbmcvSW50ZXJuYWxzLmNwcAppbmRleCAxMGJhM2NkYTY2MmUz
MGU3ZTFkMTc1ZGRiOWI5N2M4NGI5OWMyOWJlLi5hY2U5NzEwMmE1NTdkMGNlMzkzOTgxM2U4MDI2
NTAzMzdmMGY1ZjYxIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS90ZXN0aW5nL0ludGVybmFs
cy5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvdGVzdGluZy9JbnRlcm5hbHMuY3BwCkBAIC03OCw2
ICs3OCw4IEBACiAjaW5jbHVkZSAiTWVkaWFTZXNzaW9uTWFuYWdlci5oIgogI2luY2x1ZGUgIk1l
bW9yeUNhY2hlLmgiCiAjaW5jbHVkZSAiTWVtb3J5SW5mby5oIgorI2luY2x1ZGUgIk1pY3JvVGFz
ay5oIgorI2luY2x1ZGUgIk1pY3JvVGFza1Rlc3QuaCIKICNpbmNsdWRlICJNb2NrUGFnZU92ZXJs
YXlDbGllbnQuaCIKICNpbmNsdWRlICJQYWdlLmgiCiAjaW5jbHVkZSAiUGFnZU92ZXJsYXkuaCIK
QEAgLTI1MDMsNCArMjUwNSw5IEBAIGJvb2wgSW50ZXJuYWxzOjppc1BhZ2VQbGF5aW5nQXVkaW8o
KQogICAgIHJldHVybiBkb2N1bWVudC0+cGFnZSgpLT5pc1BsYXlpbmdBdWRpbygpOwogfQogCit2
b2lkIEludGVybmFsczo6cXVldWVNaWNyb1Rhc2soaW50IHRlc3ROdW1iZXIpCit7CisgICAgTWlj
cm9UYXNrUXVldWU6OnNpbmdsZXRvbigpLnF1ZXVlTWljcm9UYXNrKE1pY3JvVGFza1Rlc3Q6OmNy
ZWF0ZShjb250ZXh0RG9jdW1lbnQoKSwgdGVzdE51bWJlcikpOworfQorCiB9CmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViQ29yZS90ZXN0aW5nL0ludGVybmFscy5oIGIvU291cmNlL1dlYkNvcmUvdGVz
dGluZy9JbnRlcm5hbHMuaAppbmRleCAwOWE0NDlkNzJiMjVmZmQzNWNlMDAxZGY5NDVlZWQwZTlj
MmYyMmZiLi44ODRjNzM2MWRmYTU1MTY2YjA0ODUxZWYwOTU2NWQ1MTExMDVkNGEyIDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViQ29yZS90ZXN0aW5nL0ludGVybmFscy5oCisrKyBiL1NvdXJjZS9XZWJD
b3JlL3Rlc3RpbmcvSW50ZXJuYWxzLmgKQEAgLTM2MSw2ICszNjEsOCBAQCBwdWJsaWM6CiAgICAg
dm9pZCBzZXRQYWdlTXV0ZWQoYm9vbCk7CiAgICAgYm9vbCBpc1BhZ2VQbGF5aW5nQXVkaW8oKTsK
IAorICAgIHZvaWQgcXVldWVNaWNyb1Rhc2soaW50KTsKKwogcHJpdmF0ZToKICAgICBleHBsaWNp
dCBJbnRlcm5hbHMoRG9jdW1lbnQqKTsKICAgICBEb2N1bWVudCogY29udGV4dERvY3VtZW50KCkg
Y29uc3Q7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS90ZXN0aW5nL0ludGVybmFscy5pZGwg
Yi9Tb3VyY2UvV2ViQ29yZS90ZXN0aW5nL0ludGVybmFscy5pZGwKaW5kZXggZGMyYWQ1OWVjN2U3
MTcxNTI4YzA4NTc0MGM2N2RjYjY2NTU0ZDI3Yy4uMmI2M2I0ZmZiNmY5YWU4ZjBkZDE4MjBlMzkz
YzFhZjcxODViMjQyMSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvdGVzdGluZy9JbnRlcm5h
bHMuaWRsCisrKyBiL1NvdXJjZS9XZWJDb3JlL3Rlc3RpbmcvSW50ZXJuYWxzLmlkbApAQCAtMzE3
LDQgKzMxNyw1IEBAIGVudW0gUGFnZU92ZXJsYXlUeXBlIHsKIAogICAgIHZvaWQgc2V0UGFnZU11
dGVkKGJvb2xlYW4gbXV0ZWQpOwogICAgIGJvb2xlYW4gaXNQYWdlUGxheWluZ0F1ZGlvKCk7Cisg
ICAgdm9pZCBxdWV1ZU1pY3JvVGFzayhsb25nIHRlc3ROdW1iZXIpOwogfTsKZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJDb3JlL3Rlc3RpbmcvTWljcm9UYXNrVGVzdC5jcHAgYi9Tb3VyY2UvV2ViQ29y
ZS90ZXN0aW5nL01pY3JvVGFza1Rlc3QuY3BwCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjI5NDZkYmJhZDY4YzJjYzFh
MmQ4YmVhMDMyNjUwY2ZhZWJmNTg2ZjMKLS0tIC9kZXYvbnVsbAorKysgYi9Tb3VyY2UvV2ViQ29y
ZS90ZXN0aW5nL01pY3JvVGFza1Rlc3QuY3BwCkBAIC0wLDAgKzEsNDMgQEAKKy8qCisgKiBDb3B5
cmlnaHQgKEMpIDIwMTUgQWthbWFpIFRlY2hub2xvZ2llcyBJbmMuIEFsbCByaWdodHMgcmVzZXJ2
ZWQuCisgKgorICogVGhpcyBsaWJyYXJ5IGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0
cmlidXRlIGl0IGFuZC9vcgorICogbW9kaWZ5IGl0IHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05V
IExpYnJhcnkgR2VuZXJhbCBQdWJsaWMKKyAqIExpY2Vuc2UgYXMgcHVibGlzaGVkIGJ5IHRoZSBG
cmVlIFNvZnR3YXJlIEZvdW5kYXRpb247IGVpdGhlcgorICogdmVyc2lvbiAyIG9mIHRoZSBMaWNl
bnNlLCBvciAoYXQgeW91ciBvcHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLgorICoKKyAqIFRoaXMg
bGlicmFyeSBpcyBkaXN0cmlidXRlZCBpbiB0aGUgaG9wZSB0aGF0IGl0IHdpbGwgYmUgdXNlZnVs
LAorICogYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQg
d2FycmFudHkgb2YKKyAqIE1FUkNIQU5UQUJJTElUWSBvciBGSVRORVNTIEZPUiBBIFBBUlRJQ1VM
QVIgUFVSUE9TRS4gIFNlZSB0aGUgR05VCisgKiBMaWJyYXJ5IEdlbmVyYWwgUHVibGljIExpY2Vu
c2UgZm9yIG1vcmUgZGV0YWlscy4KKyAqCisgKiBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBj
b3B5IG9mIHRoZSBHTlUgTGlicmFyeSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlCisgKiBhbG9uZyB3
aXRoIHRoaXMgbGlicmFyeTsgc2VlIHRoZSBmaWxlIENPUFlJTkcuTElCLiAgSWYgbm90LCB3cml0
ZSB0bworICogdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbiwgSW5jLiwgNTEgRnJhbmtsaW4g
U3RyZWV0LCBGaWZ0aCBGbG9vciwKKyAqIEJvc3RvbiwgTUEgMDIxMTAtMTMwMSwgVVNBLgorICoK
KyAqLworCisjaW5jbHVkZSAiY29uZmlnLmgiCisjaW5jbHVkZSAiTWljcm9UYXNrVGVzdC5oIgor
CisjaW5jbHVkZSAiRG9jdW1lbnQuaCIKKworbmFtZXNwYWNlIFdlYkNvcmUgeworCit2b2lkIE1p
Y3JvVGFza1Rlc3Q6OnJ1bigpCit7CisgICAgU3RyaW5nQnVpbGRlciBtZXNzYWdlOworICAgIG1l
c3NhZ2UuYXBwZW5kKCJNaWNyb1Rhc2sgIyIpOworICAgIG1lc3NhZ2UuYXBwZW5kKFN0cmluZzo6
bnVtYmVyKG1fdGVzdE51bWJlcikpOworICAgIG1lc3NhZ2UuYXBwZW5kKCIgaGFzIHJhbi4iKTsK
KyAgICBpZiAobV9kb2N1bWVudCkKKyAgICAgICAgbV9kb2N1bWVudC0+YWRkQ29uc29sZU1lc3Nh
Z2UoTWVzc2FnZVNvdXJjZTo6SlMsIE1lc3NhZ2VMZXZlbDo6RGVidWcsIG1lc3NhZ2UudG9TdHJp
bmcoKSk7Cit9CisKK3N0ZDo6dW5pcXVlX3B0cjxNaWNyb1Rhc2tUZXN0PiBNaWNyb1Rhc2tUZXN0
OjpjcmVhdGUoUGFzc1JlZlB0cjxEb2N1bWVudD4gZG9jdW1lbnQsIGludCB0ZXN0TnVtYmVyKQor
eworICAgIHJldHVybiBzdGQ6OnVuaXF1ZV9wdHI8TWljcm9UYXNrVGVzdD4obmV3IE1pY3JvVGFz
a1Rlc3QoZG9jdW1lbnQsIHRlc3ROdW1iZXIpKTsKK30KKworfSAvLyBuYW1lc3BhY2UgV2ViQ29y
ZQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvdGVzdGluZy9NaWNyb1Rhc2tUZXN0LmggYi9T
b3VyY2UvV2ViQ29yZS90ZXN0aW5nL01pY3JvVGFza1Rlc3QuaApuZXcgZmlsZSBtb2RlIDEwMDY0
NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi42NWMxZWVl
NTdmZjViN2Q3MDZjZDVmZDQzZTVkYzJjNDBlMTc1MGE3Ci0tLSAvZGV2L251bGwKKysrIGIvU291
cmNlL1dlYkNvcmUvdGVzdGluZy9NaWNyb1Rhc2tUZXN0LmgKQEAgLTAsMCArMSw0OSBAQAorLyoK
KyAqIENvcHlyaWdodCAoQykgMjAxNSBBa2FtYWkgVGVjaG5vbG9naWVzIEluYy4gQWxsIHJpZ2h0
cyByZXNlcnZlZC4KKyAqCisgKiBUaGlzIGxpYnJhcnkgaXMgZnJlZSBzb2Z0d2FyZTsgeW91IGNh
biByZWRpc3RyaWJ1dGUgaXQgYW5kL29yCisgKiBtb2RpZnkgaXQgdW5kZXIgdGhlIHRlcm1zIG9m
IHRoZSBHTlUgTGlicmFyeSBHZW5lcmFsIFB1YmxpYworICogTGljZW5zZSBhcyBwdWJsaXNoZWQg
YnkgdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbjsgZWl0aGVyCisgKiB2ZXJzaW9uIDIgb2Yg
dGhlIExpY2Vuc2UsIG9yIChhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uCisgKgor
ICogVGhpcyBsaWJyYXJ5IGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBi
ZSB1c2VmdWwsCisgKiBidXQgV0lUSE9VVCBBTlkgV0FSUkFOVFk7IHdpdGhvdXQgZXZlbiB0aGUg
aW1wbGllZCB3YXJyYW50eSBvZgorICogTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MgRk9SIEEg
UEFSVElDVUxBUiBQVVJQT1NFLiAgU2VlIHRoZSBHTlUKKyAqIExpYnJhcnkgR2VuZXJhbCBQdWJs
aWMgTGljZW5zZSBmb3IgbW9yZSBkZXRhaWxzLgorICoKKyAqIFlvdSBzaG91bGQgaGF2ZSByZWNl
aXZlZCBhIGNvcHkgb2YgdGhlIEdOVSBMaWJyYXJ5IEdlbmVyYWwgUHVibGljIExpY2Vuc2UKKyAq
IGFsb25nIHdpdGggdGhpcyBsaWJyYXJ5OyBzZWUgdGhlIGZpbGUgQ09QWUlORy5MSUIuICBJZiBu
b3QsIHdyaXRlIHRvCisgKiB0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uLCBJbmMuLCA1MSBG
cmFua2xpbiBTdHJlZXQsIEZpZnRoIEZsb29yLAorICogQm9zdG9uLCBNQSAwMjExMC0xMzAxLCBV
U0EuCisgKgorICovCisKKyNpZm5kZWYgTWljcm9UYXNrVGVzdF9oCisjZGVmaW5lIE1pY3JvVGFz
a1Rlc3RfaAorCisjaW5jbHVkZSAiTWljcm9UYXNrLmgiCisjaW5jbHVkZSA8d3RmL1JlZkNvdW50
ZWQuaD4KKworbmFtZXNwYWNlIFdlYkNvcmUgeworCitjbGFzcyBEb2N1bWVudDsKKworY2xhc3Mg
TWljcm9UYXNrVGVzdDogcHVibGljIE1pY3JvVGFzayB7CitwdWJsaWM6CisgICAgdmlydHVhbCB2
b2lkIHJ1bigpIG92ZXJyaWRlOworICAgIFdFQkNPUkVfRVhQT1JUIHN0YXRpYyBzdGQ6OnVuaXF1
ZV9wdHI8TWljcm9UYXNrVGVzdD4gY3JlYXRlKFBhc3NSZWZQdHI8RG9jdW1lbnQ+LCBpbnQgdGVz
dE51bWJlcik7CisKK3ByaXZhdGU6CisgICAgTWljcm9UYXNrVGVzdChQYXNzUmVmUHRyPERvY3Vt
ZW50PiBkb2N1bWVudCwgaW50IHRlc3ROdW1iZXIpCisgICAgICAgIDogbV9kb2N1bWVudChkb2N1
bWVudCkKKyAgICAgICAgLCBtX3Rlc3ROdW1iZXIodGVzdE51bWJlcikKKyAgICB7CisgICAgfQor
CisgICAgUmVmUHRyPERvY3VtZW50PiBtX2RvY3VtZW50OworICAgIGludCBtX3Rlc3ROdW1iZXI7
Cit9OworCit9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCisKKyNlbmRpZgpkaWZmIC0tZ2l0IGEvTGF5
b3V0VGVzdHMvQ2hhbmdlTG9nIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCmluZGV4IGNmYTc0MWZk
NDMxMDg0N2QwZTAxMzMxNmYwYWE0ZDQwYTczNzkwYjIuLjAzNjk2MzAzYTU0ZWNlMWFkYzUyN2Mx
MmM2NjIwZjE3ODg4MjU2ZDIgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL0NoYW5nZUxvZworKysg
Yi9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKQEAgLTEsMyArMSwxNSBAQAorMjAxNS0wMi0xOSAgWW9h
diBXZWlzcyAgPHlvYXZAeW9hdi53cz4KKworICAgICAgICBBZGQgYSBtaWNyb3Rhc2sgYWJzdHJh
Y3Rpb24KKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTEz
NzQ5NgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIEFk
ZGluZyBhIHRlc3QgZm9yIG1pY3JvdGFzayBhYnN0cmFjdGlvbi4KKworICAgICAgICAqIGZhc3Qv
ZG9tL21pY3JvdGFzay1vcmRlci5odG1sOiBBZGRlZC4KKyAgICAgICAgKiBmYXN0L2RvbS9taWNy
b3Rhc2stb3JkZXItZXhwZWN0ZWQudHh0OiBBZGRlZC4KKwogMjAxNS0wMi0xNiAgU2VyZ2lvIFZp
bGxhciBTZW5pbiAgPHN2aWxsYXJAaWdhbGlhLmNvbT4KIAogICAgICAgICBVbnJldmlld2VkLiBV
cGxvYWRpbmcgYSBuZXcgdGVzdCB0aGF0IHNob3VsZCBoYXZlIGJlZW4gdXBsb2FkZWQgYXMKZGlm
ZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3QvZG9tL21pY3JvdGFzay1vcmRlci1leHBlY3RlZC50
eHQgYi9MYXlvdXRUZXN0cy9mYXN0L2RvbS9taWNyb3Rhc2stb3JkZXItZXhwZWN0ZWQudHh0Cm5l
dyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAuLmIwOTlhYjg3OTZlNTUxZWQ1NDYyODJjZDY3YjM1NGE2NDI0MWIyODUKLS0tIC9k
ZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9mYXN0L2RvbS9taWNyb3Rhc2stb3JkZXItZXhwZWN0
ZWQudHh0CkBAIC0wLDAgKzEsMTQgQEAKK0NPTlNPTEUgTUVTU0FHRTogTWljcm9UYXNrICMwIGhh
cyByYW4uCitDT05TT0xFIE1FU1NBR0U6IE1pY3JvVGFzayAjMSBoYXMgcmFuLgorQ09OU09MRSBN
RVNTQUdFOiBNaWNyb1Rhc2sgIzIgaGFzIHJhbi4KKyAKKworLS0tLS0tLS0KK0ZyYW1lOiAnZnJh
bWUxJworLS0tLS0tLS0KKworCistLS0tLS0tLQorRnJhbWU6ICdmcmFtZTInCistLS0tLS0tLQor
CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L2RvbS9taWNyb3Rhc2stb3JkZXIuaHRtbCBi
L0xheW91dFRlc3RzL2Zhc3QvZG9tL21pY3JvdGFzay1vcmRlci5odG1sCm5ldyBmaWxlIG1vZGUg
MTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjhh
NTcwNzg4ZjU2M2U0NDAyNWMzZGFmMTgxZjgxNTU4MGM4MmY3NTMKLS0tIC9kZXYvbnVsbAorKysg
Yi9MYXlvdXRUZXN0cy9mYXN0L2RvbS9taWNyb3Rhc2stb3JkZXIuaHRtbApAQCAtMCwwICsxLDI5
IEBACis8IURPQ1RZUEUgaHRtbD4KKzxzY3JpcHQ+CitpZiAod2luZG93LnRlc3RSdW5uZXIpIHsK
KyAgICB0ZXN0UnVubmVyLmR1bXBBc1RleHQoKTsKKyAgICB0ZXN0UnVubmVyLmR1bXBDaGlsZEZy
YW1lc0FzVGV4dCgpOworICAgIHRlc3RSdW5uZXIud2FpdFVudGlsRG9uZSgpOworfQorPC9zY3Jp
cHQ+Cis8aWZyYW1lIGlkPSJmcmFtZTEiPjwvaWZyYW1lPgorPGlmcmFtZSBpZD0iZnJhbWUyIj48
L2lmcmFtZT4KKzxzY3JpcHQ+CitpZih3aW5kb3cuaW50ZXJuYWxzKQorICAgIGludGVybmFscy5x
dWV1ZU1pY3JvVGFzaygwKTsKKwordmFyIGlmcmFtZTEgPSBkb2N1bWVudC5xdWVyeVNlbGVjdG9y
KCIjZnJhbWUxIikuY29udGVudFdpbmRvdzsKK3ZhciBpZnJhbWUyID0gZG9jdW1lbnQucXVlcnlT
ZWxlY3RvcigiI2ZyYW1lMiIpLmNvbnRlbnRXaW5kb3c7CisKK2lmKGlmcmFtZTEuaW50ZXJuYWxz
KQorICAgIGlmcmFtZTEuaW50ZXJuYWxzLnF1ZXVlTWljcm9UYXNrKDEpOworaWYoaWZyYW1lMi5p
bnRlcm5hbHMpCisgICAgaWZyYW1lMi5pbnRlcm5hbHMucXVldWVNaWNyb1Rhc2soMik7CisKK3Jl
cXVlc3RBbmltYXRpb25GcmFtZShmdW5jdGlvbigpIHsKKyAgICByZXF1ZXN0QW5pbWF0aW9uRnJh
bWUoZnVuY3Rpb24oKSB7CisgICAgICAgIGlmICh3aW5kb3cudGVzdFJ1bm5lcikKKyAgICAgICAg
ICAgIHRlc3RSdW5uZXIubm90aWZ5RG9uZSgpOworICAgIH0pOworfSk7Cis8L3NjcmlwdD4K
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>246889</attachid>
            <date>2015-02-19 03:58:40 -0800</date>
            <delta_ts>2015-02-19 14:35:32 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-137496-20150219125831.patch</filename>
            <type>text/plain</type>
            <size>37871</size>
            <attacher name="Yoav Weiss">yoav</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTgwMTQ1CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggZjQ5YjY5ZGExMjViY2Fk
ZWZmYmE2NzU3NTE2ZTUxM2M0OWNmNmE5MS4uYWM0YTI4ZWE0Mjc0ZjMzYjUxODcyM2VkZjc5MDVl
Yzc4ZWVmNzQxYiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDQ2IEBACisyMDE1LTAyLTE5ICBZb2F2
IFdlaXNzICA8eW9hdkB5b2F2LndzPgorCisgICAgICAgIEFkZCBhIG1pY3JvdGFzayBhYnN0cmFj
dGlvbgorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTM3
NDk2CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgVGhp
cyBwYXRjaCBhZGRzIGEgbWljcm90YXNrIGFic3RyYWN0aW9uOiBodHRwczovL2h0bWwuc3BlYy53
aGF0d2cub3JnL211bHRpcGFnZS93ZWJhcHBhcGlzLmh0bWwjbWljcm90YXNrCisgICAgICAgIFRo
YXQgYWJzdHJhY3Rpb24gaXMgcmVxdWlyZWQgaW4gb3JkZXIgdG8gZW5hYmxlIGFzeW5jIGxvYWRp
bmcgb2YgaW1hZ2VzLAorICAgICAgICB3aGljaCBpcyBpbiB0dXJuIHJlcXVpcmVkIHRvIGVuYWJs
ZSBzdXBwb3J0IGZvciB0aGUgcGljdHVyZSBlbGVtZW50LCBhcyB3ZWxsIGFzCisgICAgICAgIHRv
IG1ha2Ugc3VyZSB0aGF0IHRoZSBvcmRlciBvZiBwcm9wZXJ0aWVzIHNldCBvbiBIVE1MSW1hZ2VF
bGVtZW50IGhhcyBubyBpbXBsaWNhdGlvbnMuCisKKyAgICAgICAgKiBXZWJDb3JlLnZjeHByb2ov
V2ViQ29yZS52Y3hwcm9qOiBBZGQgTWljcm9UYXNrLntoLGNwcH0gdG8gdGhlIHByb2plY3QuCisg
ICAgICAgICogV2ViQ29yZS52Y3hwcm9qL1dlYkNvcmVUZXN0U3VwcG9ydC52Y3hwcm9qOiBBZGQg
TWljcm9UYXNrVGVzdC57aCxjcHB9IHRvIHRoZSBwcm9qZWN0LgorICAgICAgICAqIFdlYkNvcmUu
dmN4cHJvai9XZWJDb3JlLnZjeHByb2ouZmlsdGVyczogQWRkIE1pY3JvVGFzay57aCxjcHB9IHRv
IHRoZSBwcm9qZWN0LgorICAgICAgICAqIFdlYkNvcmUudmN4cHJvai9XZWJDb3JlVGVzdFN1cHBv
cnQudmN4cHJvai5maWx0ZXJzOiBBZGQgTWljcm9UYXNrVGVzdC57aCxjcHB9IHRvIHRoZSBwcm9q
ZWN0LgorICAgICAgICAqIFdlYkNvcmUueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvajogQWRkIE1p
Y3JvVGFza3ssVGVzdH0ue2gsY3BwfSB0byB0aGUgcHJvamVjdC4KKyAgICAgICAgKiBkb20vRG9j
dW1lbnQuaDogQWRkIFdFQkNPUkVfRVhQT1JUIHRvIGFkZENvbnNvbGVNZXNzYWdlLCBzbyBpdCBj
YW4gYmUgdXNlZCBpbiBNaWNyb1Rhc2tUZXN0IHRoYXQncyBpbiBXZWJDb3JlVGVzdFN1cHBvcnQu
LgorICAgICAgICAqIGRvbS9NaWNyb1Rhc2suaDogQWRkIGEgTWljcm9UYXNrIGludGVyZmFjZSBj
bGFzcy4gQWRkIGEgTWljcm9UYXNrUXVldWUgc2luZ2xldG9uLgorICAgICAgICAoV2ViQ29yZTo6
TWljcm9UYXNrOjp+TWljcm9UYXNrKToKKyAgICAgICAgKFdlYkNvcmU6Ok1pY3JvVGFzazo6cnVu
KTogUnVuIHRoZSBtaWNyb3Rhc2suCisgICAgICAgICogZG9tL01pY3JvVGFzay5jcHA6IEltcGxl
bWVudCB0aGUgTWljcm9UYXNrUXVldWUgc2luZ2xldG9uLgorICAgICAgICAoV2ViQ29yZTo6TWlj
cm9UYXNrUXVldWU6OnNpbmdsZXRvbik6IEdldCBhIHNpbmdsZXRvbiBpbnN0YW5jZSBvZiBNaWNy
b1Rhc2tRdWV1ZS4KKyAgICAgICAgKFdlYkNvcmU6Ok1pY3JvVGFza1F1ZXVlOjpxdWV1ZU1pY3Jv
VGFzayk6IEFkZCBhIG1pY3JvdGFzayB0byB0aGUgcXVldWUuCisgICAgICAgIChXZWJDb3JlOjpN
aWNyb1Rhc2tRdWV1ZTo6cnVuTWljcm9UYXNrcyk6IFJ1biBhbGwgdGhlIG1pY3JvdGFza3MgaW4g
dGhlIHF1ZXVlIGFuZCBjbGVhciBpdC4KKyAgICAgICAgKiBkb20vU2NyaXB0UnVubmVyLmNwcDog
VHJpZ2dlciBydW5uaW5nIG9mIGFsbCBtaWNyb3Rhc2tzIGluIHF1ZXVlLgorICAgICAgICAoV2Vi
Q29yZTo6U2NyaXB0UnVubmVyOjp0aW1lckZpcmVkKToKKyAgICAgICAgKiBodG1sL3BhcnNlci9I
VE1MU2NyaXB0UnVubmVyLmNwcDogVHJpZ2dlciBydW5uaW5nIG9mIGFsbCBtaWNyb3Rhc2tzIGlu
IHF1ZXVlLgorICAgICAgICAoV2ViQ29yZTo6SFRNTFNjcmlwdFJ1bm5lcjo6ZXhlY3V0ZVBlbmRp
bmdTY3JpcHRBbmREaXNwYXRjaEV2ZW50KToKKyAgICAgICAgKFdlYkNvcmU6OkhUTUxTY3JpcHRS
dW5uZXI6OmV4ZWN1dGVTY3JpcHRzV2FpdGluZ0ZvclBhcnNpbmcpOgorICAgICAgICAoV2ViQ29y
ZTo6SFRNTFNjcmlwdFJ1bm5lcjo6cnVuU2NyaXB0KToKKyAgICAgICAgKiB0ZXN0aW5nL0ludGVy
bmFscy5jcHA6IEFkZCBhIG1ldGhvZCB0byBxdWV1ZSBhIHRlc3QgbWljcm90YXNrLgorICAgICAg
ICAoV2ViQ29yZTo6SW50ZXJuYWxzOjpxdWV1ZU1pY3JvVGFzayk6CisgICAgICAgICogdGVzdGlu
Zy9JbnRlcm5hbHMuaDogQWRkIGEgbWV0aG9kIHRvIHF1ZXVlIGEgdGVzdCBtaWNyb3Rhc2suCisg
ICAgICAgIChXZWJDb3JlOjpJbnRlcm5hbHM6OnF1ZXVlTWljcm9UYXNrKToKKyAgICAgICAgKiB0
ZXN0aW5nL0ludGVybmFscy5pZGw6IEV4cG9zZSB0ZXN0IG1pY3JvdGFzayBxdWV1ZWluZyB0byB0
ZXN0IEpTLgorICAgICAgICAqIHRlc3RpbmcvTWljcm9UYXNrVGVzdC5jcHA6IEFkZCBhIHRlc3Qg
Y2xhc3MgdGhhdCBpbXBsZW1lbnRzIGEgbWljcm90YXNrIGFuZCBwcmludHMgdG8gdGhlIGNvbnNv
bGUgd2hlbiBpdCBydW5zLgorICAgICAgICAoV2ViQ29yZTo6TWljcm9UYXNrVGVzdDo6cnVuKTog
UnVuIHRoZSBtaWNyb3Rhc2sKKyAgICAgICAgKFdlYkNvcmU6Ok1pY3JvVGFza1Rlc3Q6OmNyZWF0
ZSk6IENyZWF0ZSBhIHRlc3QgbWljcm90YXNrLgorICAgICAgICAqIHRlc3RpbmcvTWljcm9UYXNr
VGVzdC5oOiBBZGQgYSB0ZXN0IGNsYXNzIHRoYXQgaW1wbGVtZW50cyBhIG1pY3JvdGFzay4KKyAg
ICAgICAgKFdlYkNvcmU6Ok1pY3JvVGFza1Rlc3Q6OnJ1bik6CisgICAgICAgIChXZWJDb3JlOjpN
aWNyb1Rhc2tUZXN0OjpjcmVhdGUpOgorCiAyMDE1LTAyLTEzICBTZXJnaW8gVmlsbGFyIFNlbmlu
ICA8c3ZpbGxhckBpZ2FsaWEuY29tPgogCiAgICAgICAgIFtDU1MgR3JpZCBMYXlvdXRdIEludmFs
aWQgaW5pdGlhbGl6YXRpb24gb2YgdHJhY2sgc2l6ZXMgd2l0aCBub24gc3Bhbm5pbmcgZ3JpZCBp
dGVtcwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvQ01ha2VMaXN0cy50eHQgYi9Tb3VyY2Uv
V2ViQ29yZS9DTWFrZUxpc3RzLnR4dAppbmRleCA2NDY2YmE1MTJmZWVjMTM1ZWU3MGMzNzNhMmU1
NjlkNmEwYzFkM2UwLi42MDJhM2VmMDYwYjkwZDVmYWE5NzBhY2EzMjY0MzI3NjNkZDEzMGRkIDEw
MDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9DTWFrZUxpc3RzLnR4dAorKysgYi9Tb3VyY2UvV2Vi
Q29yZS9DTWFrZUxpc3RzLnR4dApAQCAtMTM2OCw2ICsxMzY4LDcgQEAgc2V0KFdlYkNvcmVfU09V
UkNFUwogICAgIGRvbS9NZXNzYWdlRXZlbnQuY3BwCiAgICAgZG9tL01lc3NhZ2VQb3J0LmNwcAog
ICAgIGRvbS9NZXNzYWdlUG9ydENoYW5uZWwuY3BwCisgICAgZG9tL01pY3JvVGFzay5jcHAKICAg
ICBkb20vTW91c2VFdmVudC5jcHAKICAgICBkb20vTW91c2VSZWxhdGVkRXZlbnQuY3BwCiAgICAg
ZG9tL011dGF0aW9uRXZlbnQuY3BwCkBAIC0zMTUwLDYgKzMxNTEsNyBAQCBzZXQoV2ViQ29yZVRl
c3RTdXBwb3J0X1NPVVJDRVMKICAgICB0ZXN0aW5nL0ludGVybmFsU2V0dGluZ3MuY3BwCiAgICAg
dGVzdGluZy9JbnRlcm5hbHMuY3BwCiAKKyAgICB0ZXN0aW5nL01pY3JvVGFza1Rlc3QuY3BwCiAg
ICAgdGVzdGluZy9Nb2NrUGFnZU92ZXJsYXlDbGllbnQuY3BwCiAKICAgICB0ZXN0aW5nL2pzL1dl
YkNvcmVUZXN0U3VwcG9ydC5jcHAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUu
dmN4cHJvai9XZWJDb3JlLnZjeHByb2ogYi9Tb3VyY2UvV2ViQ29yZS9XZWJDb3JlLnZjeHByb2ov
V2ViQ29yZS52Y3hwcm9qCmluZGV4IDE0NDJiMWRhOTk3OWU5Y2MwOGIxZjNiZDIxNmI5NzJmMzVh
NDE0NTYuLjdlODhmZmFjNTYyZGRlNTBjNTI2MzZmMTI2YWE3ZDJhMTg0ZDAzY2MgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUudmN4cHJvai9XZWJDb3JlLnZjeHByb2oKKysrIGIv
U291cmNlL1dlYkNvcmUvV2ViQ29yZS52Y3hwcm9qL1dlYkNvcmUudmN4cHJvagpAQCAtMTM1NzUs
NiArMTM1NzUsNyBAQAogICAgICAgPEV4Y2x1ZGVkRnJvbUJ1aWxkIENvbmRpdGlvbj0iJyQoQ29u
ZmlndXJhdGlvbil8JChQbGF0Zm9ybSknPT0nUHJvZHVjdGlvbnxXaW4zMiciPnRydWU8L0V4Y2x1
ZGVkRnJvbUJ1aWxkPgogICAgICAgPEV4Y2x1ZGVkRnJvbUJ1aWxkIENvbmRpdGlvbj0iJyQoQ29u
ZmlndXJhdGlvbil8JChQbGF0Zm9ybSknPT0nUHJvZHVjdGlvbnx4NjQnIj50cnVlPC9FeGNsdWRl
ZEZyb21CdWlsZD4KICAgICA8L0NsQ29tcGlsZT4KKyAgICA8Q2xDb21waWxlIEluY2x1ZGU9Ii4u
XGRvbVxNaWNyb1Rhc2suY3BwIiAvPgogICAgIDxDbENvbXBpbGUgSW5jbHVkZT0iLi5cZG9tXE1v
dXNlRXZlbnQuY3BwIj4KICAgICAgIDxFeGNsdWRlZEZyb21CdWlsZCBDb25kaXRpb249IickKENv
bmZpZ3VyYXRpb24pfCQoUGxhdGZvcm0pJz09J0RlYnVnfFdpbjMyJyI+dHJ1ZTwvRXhjbHVkZWRG
cm9tQnVpbGQ+CiAgICAgICA8RXhjbHVkZWRGcm9tQnVpbGQgQ29uZGl0aW9uPSInJChDb25maWd1
cmF0aW9uKXwkKFBsYXRmb3JtKSc9PSdEZWJ1Z3x4NjQnIj50cnVlPC9FeGNsdWRlZEZyb21CdWls
ZD4KQEAgLTIwNzUwLDYgKzIwNzUxLDcgQEAKICAgICA8Q2xJbmNsdWRlIEluY2x1ZGU9Ii4uXGRv
bVxNZXNzYWdlRXZlbnQuaCIgLz4KICAgICA8Q2xJbmNsdWRlIEluY2x1ZGU9Ii4uXGRvbVxNZXNz
YWdlUG9ydC5oIiAvPgogICAgIDxDbEluY2x1ZGUgSW5jbHVkZT0iLi5cZG9tXE1lc3NhZ2VQb3J0
Q2hhbm5lbC5oIiAvPgorICAgIDxDbEluY2x1ZGUgSW5jbHVkZT0iLi5cZG9tXE1pY3JvVGFzay5o
IiAvPgogICAgIDxDbEluY2x1ZGUgSW5jbHVkZT0iLi5cZG9tXE1vdXNlRXZlbnQuaCIgLz4KICAg
ICA8Q2xJbmNsdWRlIEluY2x1ZGU9Ii4uXGRvbVxNb3VzZVJlbGF0ZWRFdmVudC5oIiAvPgogICAg
IDxDbEluY2x1ZGUgSW5jbHVkZT0iLi5cZG9tXE11dGF0aW9uRXZlbnQuaCIgLz4KQEAgLTIxNTUw
LDQgKzIxNTUyLDQgQEAKICAgPEltcG9ydEdyb3VwIExhYmVsPSJFeHRlbnNpb25UYXJnZXRzIj4K
ICAgICA8SW1wb3J0IFByb2plY3Q9IiQoVkNUYXJnZXRzUGF0aClcQnVpbGRDdXN0b21pemF0aW9u
c1xtYXNtLnRhcmdldHMiIC8+CiAgIDwvSW1wb3J0R3JvdXA+Ci08L1Byb2plY3Q+ClwgTm8gbmV3
bGluZSBhdCBlbmQgb2YgZmlsZQorPC9Qcm9qZWN0PgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNv
cmUvV2ViQ29yZS52Y3hwcm9qL1dlYkNvcmUudmN4cHJvai5maWx0ZXJzIGIvU291cmNlL1dlYkNv
cmUvV2ViQ29yZS52Y3hwcm9qL1dlYkNvcmUudmN4cHJvai5maWx0ZXJzCmluZGV4IDcyZThhZWU1
NWJhMjEzZDkxMTdlNmM5ZmNmNmM1MmMyNjUzNGQ0ZTIuLjY3OGI0ZDQ4YTEwZTEyY2ZjZmNhNWZk
NDEyYTk0ZTc2YmI1ZGFhMGUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUudmN4
cHJvai9XZWJDb3JlLnZjeHByb2ouZmlsdGVycworKysgYi9Tb3VyY2UvV2ViQ29yZS9XZWJDb3Jl
LnZjeHByb2ovV2ViQ29yZS52Y3hwcm9qLmZpbHRlcnMKQEAgLTMyMDQsNiArMzIwNCw5IEBACiAg
ICAgPENsQ29tcGlsZSBJbmNsdWRlPSIuLlxkb21cTWVzc2FnZVBvcnRDaGFubmVsLmNwcCI+CiAg
ICAgICA8RmlsdGVyPmRvbTwvRmlsdGVyPgogICAgIDwvQ2xDb21waWxlPgorICAgIDxDbENvbXBp
bGUgSW5jbHVkZT0iLi5cZG9tXE1pY3JvVGFzay5jcHAiPgorICAgICAgPEZpbHRlcj5kb208L0Zp
bHRlcj4KKyAgICA8L0NsQ29tcGlsZT4KICAgICA8Q2xDb21waWxlIEluY2x1ZGU9Ii4uXGRvbVxN
b3VzZUV2ZW50LmNwcCI+CiAgICAgICA8RmlsdGVyPmRvbTwvRmlsdGVyPgogICAgIDwvQ2xDb21w
aWxlPgpAQCAtMTAyNjYsNiArMTAyNjksOSBAQAogICAgIDxDbEluY2x1ZGUgSW5jbHVkZT0iLi5c
ZG9tXE1lc3NhZ2VQb3J0Q2hhbm5lbC5oIj4KICAgICAgIDxGaWx0ZXI+ZG9tPC9GaWx0ZXI+CiAg
ICAgPC9DbEluY2x1ZGU+CisgICAgPENsSW5jbHVkZSBJbmNsdWRlPSIuLlxkb21cTWljcm9UYXNr
LmgiPgorICAgICAgPEZpbHRlcj5kb208L0ZpbHRlcj4KKyAgICA8L0NsSW5jbHVkZT4KICAgICA8
Q2xJbmNsdWRlIEluY2x1ZGU9Ii4uXGRvbVxNb3VzZUV2ZW50LmgiPgogICAgICAgPEZpbHRlcj5k
b208L0ZpbHRlcj4KICAgICA8L0NsSW5jbHVkZT4KQEAgLTE1Mzc0LDQgKzE1MzgwLDQgQEAKICAg
ICAgIDxGaWx0ZXI+cGxhdGZvcm1cd2luPC9GaWx0ZXI+CiAgICAgPC9NQVNNPgogICA8L0l0ZW1H
cm91cD4KLTwvUHJvamVjdD4KXCBObyBuZXdsaW5lIGF0IGVuZCBvZiBmaWxlCis8L1Byb2plY3Q+
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9XZWJDb3JlLnZjeHByb2ovV2ViQ29yZVRlc3RT
dXBwb3J0LnZjeHByb2ogYi9Tb3VyY2UvV2ViQ29yZS9XZWJDb3JlLnZjeHByb2ovV2ViQ29yZVRl
c3RTdXBwb3J0LnZjeHByb2oKaW5kZXggZTNkYzgxOWZmOWU1M2IyYTRlMDVlYTAzN2I5YzU5NWM3
Y2Y3NWMxMy4uMTVmZWQ1YmUxMDY0OGQ3NWE4ZGExMGI1NDBkMDgxMzkxNWQyOGU1YiAxMDA2NDQK
LS0tIGEvU291cmNlL1dlYkNvcmUvV2ViQ29yZS52Y3hwcm9qL1dlYkNvcmVUZXN0U3VwcG9ydC52
Y3hwcm9qCisrKyBiL1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUudmN4cHJvai9XZWJDb3JlVGVzdFN1
cHBvcnQudmN4cHJvagpAQCAtNzA2LDYgKzcwNiw2OCBAQAogICAgICAgPEZvcmNlZEluY2x1ZGVG
aWxlcyBDb25kaXRpb249IickKENvbmZpZ3VyYXRpb24pfCQoUGxhdGZvcm0pJz09J1Byb2R1Y3Rp
b258eDY0JyI+CiAgICAgICA8L0ZvcmNlZEluY2x1ZGVGaWxlcz4KICAgICA8L0NsQ29tcGlsZT4K
KyAgICA8Q2xDb21waWxlIEluY2x1ZGU9Ii4uXHRlc3RpbmdcTWljcm9UYXNrVGVzdC5jcHAiPgor
ICAgICAgPFByZWNvbXBpbGVkSGVhZGVyIENvbmRpdGlvbj0iJyQoQ29uZmlndXJhdGlvbil8JChQ
bGF0Zm9ybSknPT0nRGVidWd8V2luMzInIj4KKyAgICAgIDwvUHJlY29tcGlsZWRIZWFkZXI+Cisg
ICAgICA8UHJlY29tcGlsZWRIZWFkZXIgQ29uZGl0aW9uPSInJChDb25maWd1cmF0aW9uKXwkKFBs
YXRmb3JtKSc9PSdEZWJ1Z3x4NjQnIj4KKyAgICAgIDwvUHJlY29tcGlsZWRIZWFkZXI+CisgICAg
ICA8UHJlY29tcGlsZWRIZWFkZXIgQ29uZGl0aW9uPSInJChDb25maWd1cmF0aW9uKXwkKFBsYXRm
b3JtKSc9PSdEZWJ1Z19XaW5DYWlyb3xXaW4zMiciPgorICAgICAgPC9QcmVjb21waWxlZEhlYWRl
cj4KKyAgICAgIDxQcmVjb21waWxlZEhlYWRlciBDb25kaXRpb249IickKENvbmZpZ3VyYXRpb24p
fCQoUGxhdGZvcm0pJz09J0RlYnVnX1dpbkNhaXJvfHg2NCciPgorICAgICAgPC9QcmVjb21waWxl
ZEhlYWRlcj4KKyAgICAgIDxQcmVjb21waWxlZEhlYWRlciBDb25kaXRpb249IickKENvbmZpZ3Vy
YXRpb24pfCQoUGxhdGZvcm0pJz09J0RlYnVnU3VmZml4fFdpbjMyJyI+CisgICAgICA8L1ByZWNv
bXBpbGVkSGVhZGVyPgorICAgICAgPFByZWNvbXBpbGVkSGVhZGVyIENvbmRpdGlvbj0iJyQoQ29u
ZmlndXJhdGlvbil8JChQbGF0Zm9ybSknPT0nRGVidWdTdWZmaXh8eDY0JyI+CisgICAgICA8L1By
ZWNvbXBpbGVkSGVhZGVyPgorICAgICAgPERpc2FibGVTcGVjaWZpY1dhcm5pbmdzIENvbmRpdGlv
bj0iJyQoQ29uZmlndXJhdGlvbil8JChQbGF0Zm9ybSknPT0nRGVidWd8V2luMzInIj40MDY1OzQy
NzM7NDU2NTs0NzAxOzQ3MDI7JShEaXNhYmxlU3BlY2lmaWNXYXJuaW5ncyk8L0Rpc2FibGVTcGVj
aWZpY1dhcm5pbmdzPgorICAgICAgPERpc2FibGVTcGVjaWZpY1dhcm5pbmdzIENvbmRpdGlvbj0i
JyQoQ29uZmlndXJhdGlvbil8JChQbGF0Zm9ybSknPT0nRGVidWd8eDY0JyI+NDA2NTs0MjczOzQ1
NjU7NDcwMTs0NzAyOyUoRGlzYWJsZVNwZWNpZmljV2FybmluZ3MpPC9EaXNhYmxlU3BlY2lmaWNX
YXJuaW5ncz4KKyAgICAgIDxEaXNhYmxlU3BlY2lmaWNXYXJuaW5ncyBDb25kaXRpb249IickKENv
bmZpZ3VyYXRpb24pfCQoUGxhdGZvcm0pJz09J0RlYnVnX1dpbkNhaXJvfFdpbjMyJyI+NDA2NTs0
MjczOzQ1NjU7NDcwMTs0NzAyOyUoRGlzYWJsZVNwZWNpZmljV2FybmluZ3MpPC9EaXNhYmxlU3Bl
Y2lmaWNXYXJuaW5ncz4KKyAgICAgIDxEaXNhYmxlU3BlY2lmaWNXYXJuaW5ncyBDb25kaXRpb249
IickKENvbmZpZ3VyYXRpb24pfCQoUGxhdGZvcm0pJz09J0RlYnVnX1dpbkNhaXJvfHg2NCciPjQw
NjU7NDI3Mzs0NTY1OzQ3MDE7NDcwMjslKERpc2FibGVTcGVjaWZpY1dhcm5pbmdzKTwvRGlzYWJs
ZVNwZWNpZmljV2FybmluZ3M+CisgICAgICA8RGlzYWJsZVNwZWNpZmljV2FybmluZ3MgQ29uZGl0
aW9uPSInJChDb25maWd1cmF0aW9uKXwkKFBsYXRmb3JtKSc9PSdEZWJ1Z1N1ZmZpeHxXaW4zMici
PjQwNjU7NDI3Mzs0NTY1OzQ3MDE7NDcwMjslKERpc2FibGVTcGVjaWZpY1dhcm5pbmdzKTwvRGlz
YWJsZVNwZWNpZmljV2FybmluZ3M+CisgICAgICA8RGlzYWJsZVNwZWNpZmljV2FybmluZ3MgQ29u
ZGl0aW9uPSInJChDb25maWd1cmF0aW9uKXwkKFBsYXRmb3JtKSc9PSdEZWJ1Z1N1ZmZpeHx4NjQn
Ij40MDY1OzQyNzM7NDU2NTs0NzAxOzQ3MDI7JShEaXNhYmxlU3BlY2lmaWNXYXJuaW5ncyk8L0Rp
c2FibGVTcGVjaWZpY1dhcm5pbmdzPgorICAgICAgPEZvcmNlZEluY2x1ZGVGaWxlcyBDb25kaXRp
b249IickKENvbmZpZ3VyYXRpb24pfCQoUGxhdGZvcm0pJz09J0RlYnVnfFdpbjMyJyI+CisgICAg
ICA8L0ZvcmNlZEluY2x1ZGVGaWxlcz4KKyAgICAgIDxGb3JjZWRJbmNsdWRlRmlsZXMgQ29uZGl0
aW9uPSInJChDb25maWd1cmF0aW9uKXwkKFBsYXRmb3JtKSc9PSdEZWJ1Z3x4NjQnIj4KKyAgICAg
IDwvRm9yY2VkSW5jbHVkZUZpbGVzPgorICAgICAgPEZvcmNlZEluY2x1ZGVGaWxlcyBDb25kaXRp
b249IickKENvbmZpZ3VyYXRpb24pfCQoUGxhdGZvcm0pJz09J0RlYnVnX1dpbkNhaXJvfFdpbjMy
JyI+CisgICAgICA8L0ZvcmNlZEluY2x1ZGVGaWxlcz4KKyAgICAgIDxGb3JjZWRJbmNsdWRlRmls
ZXMgQ29uZGl0aW9uPSInJChDb25maWd1cmF0aW9uKXwkKFBsYXRmb3JtKSc9PSdEZWJ1Z19XaW5D
YWlyb3x4NjQnIj4KKyAgICAgIDwvRm9yY2VkSW5jbHVkZUZpbGVzPgorICAgICAgPEZvcmNlZElu
Y2x1ZGVGaWxlcyBDb25kaXRpb249IickKENvbmZpZ3VyYXRpb24pfCQoUGxhdGZvcm0pJz09J0Rl
YnVnU3VmZml4fFdpbjMyJyI+CisgICAgICA8L0ZvcmNlZEluY2x1ZGVGaWxlcz4KKyAgICAgIDxG
b3JjZWRJbmNsdWRlRmlsZXMgQ29uZGl0aW9uPSInJChDb25maWd1cmF0aW9uKXwkKFBsYXRmb3Jt
KSc9PSdEZWJ1Z1N1ZmZpeHx4NjQnIj4KKyAgICAgIDwvRm9yY2VkSW5jbHVkZUZpbGVzPgorICAg
ICAgPFByZWNvbXBpbGVkSGVhZGVyIENvbmRpdGlvbj0iJyQoQ29uZmlndXJhdGlvbil8JChQbGF0
Zm9ybSknPT0nUmVsZWFzZXxXaW4zMiciPgorICAgICAgPC9QcmVjb21waWxlZEhlYWRlcj4KKyAg
ICAgIDxQcmVjb21waWxlZEhlYWRlciBDb25kaXRpb249IickKENvbmZpZ3VyYXRpb24pfCQoUGxh
dGZvcm0pJz09J1JlbGVhc2V8eDY0JyI+CisgICAgICA8L1ByZWNvbXBpbGVkSGVhZGVyPgorICAg
ICAgPFByZWNvbXBpbGVkSGVhZGVyIENvbmRpdGlvbj0iJyQoQ29uZmlndXJhdGlvbil8JChQbGF0
Zm9ybSknPT0nUmVsZWFzZV9XaW5DYWlyb3xXaW4zMiciPgorICAgICAgPC9QcmVjb21waWxlZEhl
YWRlcj4KKyAgICAgIDxQcmVjb21waWxlZEhlYWRlciBDb25kaXRpb249IickKENvbmZpZ3VyYXRp
b24pfCQoUGxhdGZvcm0pJz09J1JlbGVhc2VfV2luQ2Fpcm98eDY0JyI+CisgICAgICA8L1ByZWNv
bXBpbGVkSGVhZGVyPgorICAgICAgPFByZWNvbXBpbGVkSGVhZGVyIENvbmRpdGlvbj0iJyQoQ29u
ZmlndXJhdGlvbil8JChQbGF0Zm9ybSknPT0nUHJvZHVjdGlvbnxXaW4zMiciPgorICAgICAgPC9Q
cmVjb21waWxlZEhlYWRlcj4KKyAgICAgIDxQcmVjb21waWxlZEhlYWRlciBDb25kaXRpb249Iick
KENvbmZpZ3VyYXRpb24pfCQoUGxhdGZvcm0pJz09J1Byb2R1Y3Rpb258eDY0JyI+CisgICAgICA8
L1ByZWNvbXBpbGVkSGVhZGVyPgorICAgICAgPERpc2FibGVTcGVjaWZpY1dhcm5pbmdzIENvbmRp
dGlvbj0iJyQoQ29uZmlndXJhdGlvbil8JChQbGF0Zm9ybSknPT0nUmVsZWFzZXxXaW4zMiciPjQw
NjU7NDI3Mzs0NTY1OzQ3MDE7NDcwMjslKERpc2FibGVTcGVjaWZpY1dhcm5pbmdzKTwvRGlzYWJs
ZVNwZWNpZmljV2FybmluZ3M+CisgICAgICA8RGlzYWJsZVNwZWNpZmljV2FybmluZ3MgQ29uZGl0
aW9uPSInJChDb25maWd1cmF0aW9uKXwkKFBsYXRmb3JtKSc9PSdSZWxlYXNlfHg2NCciPjQwNjU7
NDI3Mzs0NTY1OzQ3MDE7NDcwMjslKERpc2FibGVTcGVjaWZpY1dhcm5pbmdzKTwvRGlzYWJsZVNw
ZWNpZmljV2FybmluZ3M+CisgICAgICA8RGlzYWJsZVNwZWNpZmljV2FybmluZ3MgQ29uZGl0aW9u
PSInJChDb25maWd1cmF0aW9uKXwkKFBsYXRmb3JtKSc9PSdSZWxlYXNlX1dpbkNhaXJvfFdpbjMy
JyI+NDA2NTs0MjczOzQ1NjU7NDcwMTs0NzAyOyUoRGlzYWJsZVNwZWNpZmljV2FybmluZ3MpPC9E
aXNhYmxlU3BlY2lmaWNXYXJuaW5ncz4KKyAgICAgIDxEaXNhYmxlU3BlY2lmaWNXYXJuaW5ncyBD
b25kaXRpb249IickKENvbmZpZ3VyYXRpb24pfCQoUGxhdGZvcm0pJz09J1JlbGVhc2VfV2luQ2Fp
cm98eDY0JyI+NDA2NTs0MjczOzQ1NjU7NDcwMTs0NzAyOyUoRGlzYWJsZVNwZWNpZmljV2Fybmlu
Z3MpPC9EaXNhYmxlU3BlY2lmaWNXYXJuaW5ncz4KKyAgICAgIDxEaXNhYmxlU3BlY2lmaWNXYXJu
aW5ncyBDb25kaXRpb249IickKENvbmZpZ3VyYXRpb24pfCQoUGxhdGZvcm0pJz09J1Byb2R1Y3Rp
b258V2luMzInIj40MDY1OzQyNzM7NDU2NTs0NzAxOzQ3MDI7JShEaXNhYmxlU3BlY2lmaWNXYXJu
aW5ncyk8L0Rpc2FibGVTcGVjaWZpY1dhcm5pbmdzPgorICAgICAgPERpc2FibGVTcGVjaWZpY1dh
cm5pbmdzIENvbmRpdGlvbj0iJyQoQ29uZmlndXJhdGlvbil8JChQbGF0Zm9ybSknPT0nUHJvZHVj
dGlvbnx4NjQnIj40MDY1OzQyNzM7NDU2NTs0NzAxOzQ3MDI7JShEaXNhYmxlU3BlY2lmaWNXYXJu
aW5ncyk8L0Rpc2FibGVTcGVjaWZpY1dhcm5pbmdzPgorICAgICAgPEZvcmNlZEluY2x1ZGVGaWxl
cyBDb25kaXRpb249IickKENvbmZpZ3VyYXRpb24pfCQoUGxhdGZvcm0pJz09J1JlbGVhc2V8V2lu
MzInIj4KKyAgICAgIDwvRm9yY2VkSW5jbHVkZUZpbGVzPgorICAgICAgPEZvcmNlZEluY2x1ZGVG
aWxlcyBDb25kaXRpb249IickKENvbmZpZ3VyYXRpb24pfCQoUGxhdGZvcm0pJz09J1JlbGVhc2V8
eDY0JyI+CisgICAgICA8L0ZvcmNlZEluY2x1ZGVGaWxlcz4KKyAgICAgIDxGb3JjZWRJbmNsdWRl
RmlsZXMgQ29uZGl0aW9uPSInJChDb25maWd1cmF0aW9uKXwkKFBsYXRmb3JtKSc9PSdSZWxlYXNl
X1dpbkNhaXJvfFdpbjMyJyI+CisgICAgICA8L0ZvcmNlZEluY2x1ZGVGaWxlcz4KKyAgICAgIDxG
b3JjZWRJbmNsdWRlRmlsZXMgQ29uZGl0aW9uPSInJChDb25maWd1cmF0aW9uKXwkKFBsYXRmb3Jt
KSc9PSdSZWxlYXNlX1dpbkNhaXJvfHg2NCciPgorICAgICAgPC9Gb3JjZWRJbmNsdWRlRmlsZXM+
CisgICAgICA8Rm9yY2VkSW5jbHVkZUZpbGVzIENvbmRpdGlvbj0iJyQoQ29uZmlndXJhdGlvbil8
JChQbGF0Zm9ybSknPT0nUHJvZHVjdGlvbnxXaW4zMiciPgorICAgICAgPC9Gb3JjZWRJbmNsdWRl
RmlsZXM+CisgICAgICA8Rm9yY2VkSW5jbHVkZUZpbGVzIENvbmRpdGlvbj0iJyQoQ29uZmlndXJh
dGlvbil8JChQbGF0Zm9ybSknPT0nUHJvZHVjdGlvbnx4NjQnIj4KKyAgICAgIDwvRm9yY2VkSW5j
bHVkZUZpbGVzPgorICAgIDwvQ2xDb21waWxlPgogICAgIDxDbENvbXBpbGUgSW5jbHVkZT0iLi5c
dGVzdGluZ1xNb2NrUGFnZU92ZXJsYXlDbGllbnQuY3BwIj4KICAgICAgIDxQcmVjb21waWxlZEhl
YWRlciBDb25kaXRpb249IickKENvbmZpZ3VyYXRpb24pfCQoUGxhdGZvcm0pJz09J0RlYnVnfFdp
bjMyJyI+CiAgICAgICA8L1ByZWNvbXBpbGVkSGVhZGVyPgpAQCAtOTE3LDYgKzk3OSw3IEBACiAg
ICAgPENsSW5jbHVkZSBJbmNsdWRlPSIkKENvbmZpZ3VyYXRpb25CdWlsZERpcilcb2JqJChQbGF0
Zm9ybUFyY2hpdGVjdHVyZSlcV2ViQ29yZVxEZXJpdmVkU291cmNlc1xKU0ludGVybmFsU2V0dGlu
Z3NHZW5lcmF0ZWQuaCIgLz4KICAgICA8Q2xJbmNsdWRlIEluY2x1ZGU9Ii4uXHRlc3RpbmdcTWFs
bG9jU3RhdGlzdGljcy5oIiAvPgogICAgIDxDbEluY2x1ZGUgSW5jbHVkZT0iLi5cdGVzdGluZ1xN
ZW1vcnlJbmZvLmgiIC8+CisgICAgPENsSW5jbHVkZSBJbmNsdWRlPSIuLlx0ZXN0aW5nXE1pY3Jv
VGFza1Rlc3QuaCIgLz4KICAgICA8Q2xJbmNsdWRlIEluY2x1ZGU9Ii4uXHRlc3RpbmdcTW9ja0NE
TS5oIiAvPgogICAgIDxDbEluY2x1ZGUgSW5jbHVkZT0iLi5cdGVzdGluZ1xNb2NrUGFnZU92ZXJs
YXlDbGllbnQuaCIgLz4KICAgICA8Q2xJbmNsdWRlIEluY2x1ZGU9Ii4uXHRlc3RpbmdcVHlwZUNv
bnZlcnNpb25zLmgiIC8+CkBAIC05MjgsNCArOTkxLDQgQEAKICAgPEltcG9ydCBQcm9qZWN0PSIk
KFZDVGFyZ2V0c1BhdGgpXE1pY3Jvc29mdC5DcHAudGFyZ2V0cyIgLz4KICAgPEltcG9ydEdyb3Vw
IExhYmVsPSJFeHRlbnNpb25UYXJnZXRzIj4KICAgPC9JbXBvcnRHcm91cD4KLTwvUHJvamVjdD4K
XCBObyBuZXdsaW5lIGF0IGVuZCBvZiBmaWxlCis8L1Byb2plY3Q+CmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViQ29yZS9XZWJDb3JlLnZjeHByb2ovV2ViQ29yZVRlc3RTdXBwb3J0LnZjeHByb2ouZmls
dGVycyBiL1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUudmN4cHJvai9XZWJDb3JlVGVzdFN1cHBvcnQu
dmN4cHJvai5maWx0ZXJzCmluZGV4IDY0MDJkNWU0ZTBiNTY0OTE5N2RmODUwM2IyNDA0ZjFkMTIw
OGY2NjkuLjc2MjhmMjdmZTAxYTA3MTgzMDk1YTc5Y2ExNDA3YWZmMzQyYzk1MDggMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUudmN4cHJvai9XZWJDb3JlVGVzdFN1cHBvcnQudmN4
cHJvai5maWx0ZXJzCisrKyBiL1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUudmN4cHJvai9XZWJDb3Jl
VGVzdFN1cHBvcnQudmN4cHJvai5maWx0ZXJzCkBAIC0zOSw2ICszOSw5IEBACiAgICAgPENsQ29t
cGlsZSBJbmNsdWRlPSIuLlx0ZXN0aW5nXGpzXFdlYkNvcmVUZXN0U3VwcG9ydC5jcHAiPgogICAg
ICAgPEZpbHRlcj50ZXN0aW5nPC9GaWx0ZXI+CiAgICAgPC9DbENvbXBpbGU+CisgICAgPENsQ29t
cGlsZSBJbmNsdWRlPSIuLlx0ZXN0aW5nXE1pY3JvVGFza1Rlc3QuY3BwIj4KKyAgICAgIDxGaWx0
ZXI+dGVzdGluZzwvRmlsdGVyPgorICAgIDwvQ2xDb21waWxlPgogICAgIDxDbENvbXBpbGUgSW5j
bHVkZT0iLi5cdGVzdGluZ1xNb2NrQ0RNLmNwcCI+CiAgICAgICA8RmlsdGVyPnRlc3Rpbmc8L0Zp
bHRlcj4KICAgICA8L0NsQ29tcGlsZT4KQEAgLTg3LDYgKzkwLDkgQEAKICAgICAgIDxGaWx0ZXI+
dGVzdGluZzwvRmlsdGVyPgogICAgIDwvQ2xJbmNsdWRlPgogICAgIDxDbEluY2x1ZGUgSW5jbHVk
ZT0iLi5cY29uZmlnLmgiIC8+CisgICAgPENsSW5jbHVkZSBJbmNsdWRlPSIuLlx0ZXN0aW5nXE1p
Y3JvVGFza1Rlc3QuaCI+CisgICAgICA8RmlsdGVyPnRlc3Rpbmc8L0ZpbHRlcj4KKyAgICA8L0Ns
SW5jbHVkZT4KICAgICA8Q2xJbmNsdWRlIEluY2x1ZGU9Ii4uXHRlc3RpbmdcTW9ja0NETS5oIj4K
ICAgICAgIDxGaWx0ZXI+dGVzdGluZzwvRmlsdGVyPgogICAgIDwvQ2xJbmNsdWRlPgpAQCAtOTQs
NCArMTAwLDQgQEAKICAgICAgIDxGaWx0ZXI+dGVzdGluZzwvRmlsdGVyPgogICAgIDwvQ2xJbmNs
dWRlPgogICA8L0l0ZW1Hcm91cD4KLTwvUHJvamVjdD4KXCBObyBuZXdsaW5lIGF0IGVuZCBvZiBm
aWxlCis8L1Byb2plY3Q+CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9XZWJDb3JlLnhjb2Rl
cHJvai9wcm9qZWN0LnBieHByb2ogYi9Tb3VyY2UvV2ViQ29yZS9XZWJDb3JlLnhjb2RlcHJvai9w
cm9qZWN0LnBieHByb2oKaW5kZXggZThjOTdhNjIzZmU2NDQ0YmFmYzNkZWE3MWVjZTU0NGVkM2Qx
ZDAxNS4uMDg2ZTFlMTk2NDE1NDk2YTFlZWY2NThhYTVhZjk3ZGJmMjM5YTE0MSAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYkNvcmUvV2ViQ29yZS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qCisrKyBi
L1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvagpAQCAtMjA4
NCw2ICsyMDg0LDcgQEAKIAkJNTM2RDVBMjMxOTNFOEUwQzAwQ0U0Q0FCIC8qIFBhcnNpbmdVdGls
aXRpZXMuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDUz
NkQ1QTIyMTkzRThFMEMwMENFNENBQiAvKiBQYXJzaW5nVXRpbGl0aWVzLmggKi87IH07CiAJCTUz
NkQ1QTI1MTkzRjQwRkMwMENFNENBQiAvKiBTb3VyY2VTaXplTGlzdC5jcHAgaW4gU291cmNlcyAq
LyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA1MzZENUEyNDE5M0Y0MEZDMDBDRTRD
QUIgLyogU291cmNlU2l6ZUxpc3QuY3BwICovOyB9OwogCQk1MzZENUEyNzE5M0Y0MTBCMDBDRTRD
QUIgLyogU291cmNlU2l6ZUxpc3QuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmls
ZTsgZmlsZVJlZiA9IDUzNkQ1QTI2MTkzRjQxMEIwMENFNENBQiAvKiBTb3VyY2VTaXplTGlzdC5o
ICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CisJCTUzQjg5
NUFGMTlEQzdFRDkwMDlDQUE5MyAvKiBNaWNyb1Rhc2suaCBpbiBIZWFkZXJzICovID0ge2lzYSA9
IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDUzQjg5NUFEMTlEQzdDMzcwMDlDQUE5MyAvKiBNaWNy
b1Rhc2suaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQdWJsaWMsICk7IH07IH07CiAJ
CTUzQzgyOThEMTNEOEQ5MjcwMERFMkRFQiAvKiBSZW5kZXJGbGV4aWJsZUJveC5jcHAgaW4gU291
cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA1M0M4Mjk4QjEzRDhEOTI3
MDBERTJERUIgLyogUmVuZGVyRmxleGlibGVCb3guY3BwICovOyB9OwogCQk1M0M4Mjk4RTEzRDhE
OTI3MDBERTJERUIgLyogUmVuZGVyRmxleGlibGVCb3guaCBpbiBIZWFkZXJzICovID0ge2lzYSA9
IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDUzQzgyOThDMTNEOEQ5MjcwMERFMkRFQiAvKiBSZW5k
ZXJGbGV4aWJsZUJveC5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7
IH07IH07CiAJCTUzRTI5RTVFMTY3QThBMTkwMDU4NkQzRCAvKiBJbnRlcm5hbFNldHRpbmdzR2Vu
ZXJhdGVkLmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9
IDUzRTI5RTVDMTY3QThBMTkwMDU4NkQzRCAvKiBJbnRlcm5hbFNldHRpbmdzR2VuZXJhdGVkLmNw
cCAqLzsgfTsKQEAgLTU2MTIsNiArNTYxMyw5IEBACiAJCUNBM0JGNjdFMTBEOTlCQUUwMEU2Q0U1
MyAvKiBTY3JvbGxBbmltYXRvci5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxl
OyBmaWxlUmVmID0gQ0EzQkY2N0QxMEQ5OUJBRTAwRTZDRTUzIC8qIFNjcm9sbEFuaW1hdG9yLmgg
Ki87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKIAkJQ0FFOUY5
MEYxNDY0NDFGMDAwQzI0NUIwIC8qIENTU0FzcGVjdFJhdGlvVmFsdWUuY3BwIGluIFNvdXJjZXMg
Ki8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQ0FFOUY5MEQxNDY0NDFGMDAwQzI0
NUIwIC8qIENTU0FzcGVjdFJhdGlvVmFsdWUuY3BwICovOyB9OwogCQlDQUU5RjkxMDE0NjQ0MUYw
MDBDMjQ1QjAgLyogQ1NTQXNwZWN0UmF0aW9WYWx1ZS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0g
UEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQ0FFOUY5MEUxNDY0NDFGMDAwQzI0NUIwIC8qIENTU0Fz
cGVjdFJhdGlvVmFsdWUuaCAqLzsgfTsKKwkJQ0I4Q0YwMTgxQTkzNThENDAwMEQ1MTBCIC8qIE1p
Y3JvVGFzay5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYg
PSBDQjhDRjAxNTFBOTM0QjQzMDAwRDUxMEIgLyogTWljcm9UYXNrLmNwcCAqLzsgfTsKKwkJQ0I4
Q0YwMUQxQTk1REU0MjAwMEQ1MTBCIC8qIE1pY3JvVGFza1Rlc3QuaCBpbiBIZWFkZXJzICovID0g
e2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IENCOENGMDFDMUE5NURFNDIwMDBENTEwQiAv
KiBNaWNyb1Rhc2tUZXN0LmggKi87IH07CisJCUNCOENGMDFGMUE5NURFNTkwMDBENTEwQiAvKiBN
aWNyb1Rhc2tUZXN0LmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmls
ZVJlZiA9IENCOENGMDFFMUE5NURFNTkwMDBENTEwQiAvKiBNaWNyb1Rhc2tUZXN0LmNwcCAqLzsg
fTsKIAkJQ0NDMkI1MTQxNUY2MTMwNjAwNDhDREQ2IC8qIERldmljZUNsaWVudC5oIGluIEhlYWRl
cnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQ0NDMkI1MTAxNUY2MTMwNjAw
NDhDREQ2IC8qIERldmljZUNsaWVudC5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFBy
aXZhdGUsICk7IH07IH07CiAJCUNDQzJCNTE1MTVGNjEzMDYwMDQ4Q0RENiAvKiBEZXZpY2VDb250
cm9sbGVyLmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9
IENDQzJCNTExMTVGNjEzMDYwMDQ4Q0RENiAvKiBEZXZpY2VDb250cm9sbGVyLmNwcCAqLzsgfTsK
IAkJQ0NDMkI1MTYxNUY2MTMwNjAwNDhDREQ2IC8qIERldmljZUNvbnRyb2xsZXIuaCBpbiBIZWFk
ZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IENDQzJCNTEyMTVGNjEzMDYw
MDQ4Q0RENiAvKiBEZXZpY2VDb250cm9sbGVyLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMg
PSAoUHJpdmF0ZSwgKTsgfTsgfTsKQEAgLTkyMjYsNiArOTIzMCw3IEBACiAJCTUzNkQ1QTIyMTkz
RThFMEMwMENFNENBQiAvKiBQYXJzaW5nVXRpbGl0aWVzLmggKi8gPSB7aXNhID0gUEJYRmlsZVJl
ZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2Rl
LmMuaDsgbmFtZSA9IFBhcnNpbmdVdGlsaXRpZXMuaDsgcGF0aCA9IHBhcnNlci9QYXJzaW5nVXRp
bGl0aWVzLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTUzNkQ1QTI0MTkzRjQwRkMw
MENFNENBQiAvKiBTb3VyY2VTaXplTGlzdC5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5j
ZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5j
cHA7IHBhdGggPSBTb3VyY2VTaXplTGlzdC5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07
CiAJCTUzNkQ1QTI2MTkzRjQxMEIwMENFNENBQiAvKiBTb3VyY2VTaXplTGlzdC5oICovID0ge2lz
YSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBl
ID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBTb3VyY2VTaXplTGlzdC5oOyBzb3VyY2VUcmVlID0g
Ijxncm91cD4iOyB9OworCQk1M0I4OTVBRDE5REM3QzM3MDA5Q0FBOTMgLyogTWljcm9UYXNrLmgg
Ki8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3du
RmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IE1pY3JvVGFzay5oOyBzb3VyY2VUcmVl
ID0gIjxncm91cD4iOyB9OwogCQk1M0M4Mjk4QjEzRDhEOTI3MDBERTJERUIgLyogUmVuZGVyRmxl
eGlibGVCb3guY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9
IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gUmVuZGVy
RmxleGlibGVCb3guY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQk1M0M4Mjk4QzEz
RDhEOTI3MDBERTJERUIgLyogUmVuZGVyRmxleGlibGVCb3guaCAqLyA9IHtpc2EgPSBQQlhGaWxl
UmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNv
ZGUuYy5oOyBwYXRoID0gUmVuZGVyRmxleGlibGVCb3guaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+
IjsgfTsKIAkJNTNFMjlFNUMxNjdBOEExOTAwNTg2RDNEIC8qIEludGVybmFsU2V0dGluZ3NHZW5l
cmF0ZWQuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7
IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gSW50ZXJuYWxT
ZXR0aW5nc0dlbmVyYXRlZC5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CkBAIC0xMzA3
Miw2ICsxMzA3Nyw5IEBACiAJCUNBM0JGNjdEMTBEOTlCQUUwMEU2Q0U1MyAvKiBTY3JvbGxBbmlt
YXRvci5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxh
c3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBTY3JvbGxBbmltYXRvci5o
OyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQlDQUU5RjkwRDE0NjQ0MUYwMDBDMjQ1QjAg
LyogQ1NTQXNwZWN0UmF0aW9WYWx1ZS5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsg
ZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7
IHBhdGggPSBDU1NBc3BlY3RSYXRpb1ZhbHVlLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+Ijsg
fTsKIAkJQ0FFOUY5MEUxNDY0NDFGMDAwQzI0NUIwIC8qIENTU0FzcGVjdFJhdGlvVmFsdWUuaCAq
LyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25G
aWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gQ1NTQXNwZWN0UmF0aW9WYWx1ZS5oOyBz
b3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlDQjhDRjAxNTFBOTM0QjQzMDAwRDUxMEIgLyog
TWljcm9UYXNrLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rpbmcg
PSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IE1pY3Jv
VGFzay5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUNCOENGMDFDMUE5NURFNDIw
MDBENTEwQiAvKiBNaWNyb1Rhc2tUZXN0LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsg
ZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0
aCA9IE1pY3JvVGFza1Rlc3QuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQ0I4Q0Yw
MUUxQTk1REU1OTAwMEQ1MTBCIC8qIE1pY3JvVGFza1Rlc3QuY3BwICovID0ge2lzYSA9IFBCWEZp
bGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNl
Y29kZS5jcHAuY3BwOyBwYXRoID0gTWljcm9UYXNrVGVzdC5jcHA7IHNvdXJjZVRyZWUgPSAiPGdy
b3VwPiI7IH07CiAJCUNDQzJCNTEwMTVGNjEzMDYwMDQ4Q0RENiAvKiBEZXZpY2VDbGllbnQuaCAq
LyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25G
aWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gRGV2aWNlQ2xpZW50Lmg7IHNvdXJjZVRy
ZWUgPSAiPGdyb3VwPiI7IH07CiAJCUNDQzJCNTExMTVGNjEzMDYwMDQ4Q0RENiAvKiBEZXZpY2VD
b250cm9sbGVyLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rpbmcg
PSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IERldmlj
ZUNvbnRyb2xsZXIuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQlDQ0MyQjUxMjE1
RjYxMzA2MDA0OENERDYgLyogRGV2aWNlQ29udHJvbGxlci5oICovID0ge2lzYSA9IFBCWEZpbGVS
ZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29k
ZS5jLmg7IHBhdGggPSBEZXZpY2VDb250cm9sbGVyLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7
IH07CkBAIC0xNTY1Nyw2ICsxNTY2NSw4IEBACiAJCQkJQTdCRjdFREQxNEM5MTc1QTAwMTQ0ODlE
IC8qIEludGVybmFsU2V0dGluZ3MuaCAqLywKIAkJCQlBN0JGN0VERTE0QzkxNzVBMDAxNDQ4OUQg
LyogSW50ZXJuYWxTZXR0aW5ncy5pZGwgKi8sCiAJCQkJQTdCRTdFREQxNEM5MTc1QTAwMTQ0ODlE
IC8qIE1hbGxvY1N0YXRpc3RpY3MuaCAqLywKKwkJCQlDQjhDRjAxRTFBOTVERTU5MDAwRDUxMEIg
LyogTWljcm9UYXNrVGVzdC5jcHAgKi8sCisJCQkJQ0I4Q0YwMUMxQTk1REU0MjAwMEQ1MTBCIC8q
IE1pY3JvVGFza1Rlc3QuaCAqLywKIAkJCQlBN0JFN0VERTE0QzkxNzVBMDAxNDQ4OUQgLyogTWFs
bG9jU3RhdGlzdGljcy5pZGwgKi8sCiAJCQkJQ0Q1MzkzQ0IxNzVEQ0NFNjAwQzA3MTIzIC8qIE1l
bW9yeUluZm8uaCAqLywKIAkJCQlDRDUzOTNDQzE3NURDQ0U2MDBDMDcxMjMgLyogTWVtb3J5SW5m
by5pZGwgKi8sCkBAIC0yMjg1Nyw2ICsyMjg2Nyw4IEBACiAJCQkJRTFBREVDQkQwRTc2QUNGMTAw
NEExQTVFIC8qIE1lc3NhZ2VQb3J0LmggKi8sCiAJCQkJRTFBREVDQzYwRTc2QUQxRjAwNEExQTVF
IC8qIE1lc3NhZ2VQb3J0LmlkbCAqLywKIAkJCQk0MUJGNzAwQTBGRTg2RjQ5MDA1RThERUMgLyog
TWVzc2FnZVBvcnRDaGFubmVsLmggKi8sCisJCQkJNTNCODk1QUQxOURDN0MzNzAwOUNBQTkzIC8q
IE1pY3JvVGFzay5oICovLAorCQkJCUNCOENGMDE1MUE5MzRCNDMwMDBENTEwQiAvKiBNaWNyb1Rh
c2suY3BwICovLAogCQkJCTg1MDMxQjJGMEE0NEVGQzcwMEY5OTJFMCAvKiBNb3VzZUV2ZW50LmNw
cCAqLywKIAkJCQk4NTAzMUIzMDBBNDRFRkM3MDBGOTkyRTAgLyogTW91c2VFdmVudC5oICovLAog
CQkJCTE0MUI5NEU1MDlFQzQyMjMwMDBFOTQxMyAvKiBNb3VzZUV2ZW50LmlkbCAqLywKQEAgLTIz
NDIxLDYgKzIzNDMzLDcgQEAKIAkJCQk1M0VEM0ZERjE2N0E4OEU3MDA2NzYyRTYgLyogSlNJbnRl
cm5hbFNldHRpbmdzR2VuZXJhdGVkLmggaW4gSGVhZGVycyAqLywKIAkJCQlBNzQwQjU5NTE0Qzkz
NUFCMDBBNzdGQTQgLyogSlNNYWxsb2NTdGF0aXN0aWNzLmggaW4gSGVhZGVycyAqLywKIAkJCQlD
RDUzOTNENDE3NUUwMTg2MDBDMDcxMjMgLyogSlNNZW1vcnlJbmZvLmggaW4gSGVhZGVycyAqLywK
KwkJCQlDQjhDRjAxRDFBOTVERTQyMDAwRDUxMEIgLyogTWljcm9UYXNrVGVzdC5oIGluIEhlYWRl
cnMgKi8sCiAJCQkJRUJGNTEyMUQxNjk2NDk2QzAwNTZCRDI1IC8qIEpTVHlwZUNvbnZlcnNpb25z
LmggaW4gSGVhZGVycyAqLywKIAkJCQlDREMyNkI0MTE2MEE4Q0NFMDAyNjc1N0IgLyogTW9ja0NE
TS5oIGluIEhlYWRlcnMgKi8sCiAJCQkJMkQ5N0YwNDgxOURENDE0MDAwMUVFOUMzIC8qIE1vY2tQ
YWdlT3ZlcmxheUNsaWVudC5oIGluIEhlYWRlcnMgKi8sCkBAIC0yNTgzMSw2ICsyNTg0NCw3IEBA
CiAJCQkJNTNDODI5OEUxM0Q4RDkyNzAwREUyREVCIC8qIFJlbmRlckZsZXhpYmxlQm94LmggaW4g
SGVhZGVycyAqLywKIAkJCQk1MDhDQ0E0RjEzQ0YxMDZCMDAzMTUxRjMgLyogUmVuZGVyRmxvd1Ro
cmVhZC5oIGluIEhlYWRlcnMgKi8sCiAJCQkJQTg3MURFRDMwQTE1MzBDNzAwQjEyQTY4IC8qIFJl
bmRlckZyYW1lLmggaW4gSGVhZGVycyAqLywKKwkJCQk1M0I4OTVBRjE5REM3RUQ5MDA5Q0FBOTMg
LyogTWljcm9UYXNrLmggaW4gSGVhZGVycyAqLywKIAkJCQkwRkQzMDgwRjExN0NGN0U3MDBBNzkx
RjcgLyogUmVuZGVyRnJhbWVCYXNlLmggaW4gSGVhZGVycyAqLywKIAkJCQlBODcxREVEMTBBMTUz
MEM3MDBCMTJBNjggLyogUmVuZGVyRnJhbWVTZXQuaCBpbiBIZWFkZXJzICovLAogCQkJCUNERUE3
Qzg0MTI3NjIzMDQwMEI4NDZERCAvKiBSZW5kZXJGdWxsU2NyZWVuLmggaW4gSGVhZGVycyAqLywK
QEAgLTI3MTkyLDYgKzI3MjA2LDcgQEAKIAkJCQk1M0UyOUU1RTE2N0E4QTE5MDA1ODZEM0QgLyog
SW50ZXJuYWxTZXR0aW5nc0dlbmVyYXRlZC5jcHAgaW4gU291cmNlcyAqLywKIAkJCQk0MTdEQTcx
RDEzNzM1REZBMDA3QzU3RkIgLyogSlNJbnRlcm5hbHMuY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJ
QTc0MEI1QTcxNEM5MzVBRjAwQTc3RkE0IC8qIEpTSW50ZXJuYWxTZXR0aW5ncy5jcHAgaW4gU291
cmNlcyAqLywKKwkJCQlDQjhDRjAxRjFBOTVERTU5MDAwRDUxMEIgLyogTWljcm9UYXNrVGVzdC5j
cHAgaW4gU291cmNlcyAqLywKIAkJCQk1M0VEM0ZERTE2N0E4OEU3MDA2NzYyRTYgLyogSlNJbnRl
cm5hbFNldHRpbmdzR2VuZXJhdGVkLmNwcCBpbiBTb3VyY2VzICovLAogCQkJCUE3NDBCNTk3MTRD
OTM1QUYwMEE3N0ZBNCAvKiBKU01hbGxvY1N0YXRpc3RpY3MuY3BwIGluIFNvdXJjZXMgKi8sCiAJ
CQkJQ0Q1MzkzRDMxNzVFMDE4NjAwQzA3MTIzIC8qIEpTTWVtb3J5SW5mby5jcHAgaW4gU291cmNl
cyAqLywKQEAgLTI5ODI5LDYgKzI5ODQ0LDcgQEAKIAkJCQlCMjIyN0E5MDBEMDBCRjIyMDA3MUI3
ODIgLyogU1ZHUG9seWdvbkVsZW1lbnQuY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJQjIyMjdBOTMw
RDAwQkYyMjAwNzFCNzgyIC8qIFNWR1BvbHlsaW5lRWxlbWVudC5jcHAgaW4gU291cmNlcyAqLywK
IAkJCQlCMjIyN0E5NjBEMDBCRjIyMDA3MUI3ODIgLyogU1ZHUHJlc2VydmVBc3BlY3RSYXRpby5j
cHAgaW4gU291cmNlcyAqLywKKwkJCQlDQjhDRjAxODFBOTM1OEQ0MDAwRDUxMEIgLyogTWljcm9U
YXNrLmNwcCBpbiBTb3VyY2VzICovLAogCQkJCUI1NDNCODU3MTdFQjc1OEYwMDNCRTkzQSAvKiBT
VkdQcm9wZXJ0eUluZm8uY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJQjIyMjdBOTkwRDAwQkYyMjAw
NzFCNzgyIC8qIFNWR1JhZGlhbEdyYWRpZW50RWxlbWVudC5jcHAgaW4gU291cmNlcyAqLywKIAkJ
CQlCMjIyN0E5RDBEMDBCRjIyMDA3MUI3ODIgLyogU1ZHUmVjdEVsZW1lbnQuY3BwIGluIFNvdXJj
ZXMgKi8sCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9kb20vRG9jdW1lbnQuaCBiL1NvdXJj
ZS9XZWJDb3JlL2RvbS9Eb2N1bWVudC5oCmluZGV4IDc2ZmIxYjc5Y2NlYmM0Njg1MTNhYzU2ZWIw
YjQzODBmZjlmM2QwZTMuLjBhNDEyNTYwNTY3ODZlNmJmNzk3ZTM1ZDc0YjdlNzQ2OTBmYzVkYjkg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2RvbS9Eb2N1bWVudC5oCisrKyBiL1NvdXJjZS9X
ZWJDb3JlL2RvbS9Eb2N1bWVudC5oCkBAIC0xMjYwLDcgKzEyNjAsNyBAQCBwdWJsaWM6CiAgICAg
dm9pZCBhZGREaXNhYmxlZEZpZWxkc2V0RWxlbWVudCgpIHsgbV9kaXNhYmxlZEZpZWxkc2V0RWxl
bWVudHNDb3VudCsrOyB9CiAgICAgdm9pZCByZW1vdmVEaXNhYmxlZEZpZWxkc2V0RWxlbWVudCgp
IHsgQVNTRVJUKG1fZGlzYWJsZWRGaWVsZHNldEVsZW1lbnRzQ291bnQpOyBtX2Rpc2FibGVkRmll
bGRzZXRFbGVtZW50c0NvdW50LS07IH0KIAotICAgIHZpcnR1YWwgdm9pZCBhZGRDb25zb2xlTWVz
c2FnZShNZXNzYWdlU291cmNlLCBNZXNzYWdlTGV2ZWwsIGNvbnN0IFN0cmluZyYgbWVzc2FnZSwg
dW5zaWduZWQgbG9uZyByZXF1ZXN0SWRlbnRpZmllciA9IDApIG92ZXJyaWRlIGZpbmFsOworICAg
IFdFQkNPUkVfRVhQT1JUIHZpcnR1YWwgdm9pZCBhZGRDb25zb2xlTWVzc2FnZShNZXNzYWdlU291
cmNlLCBNZXNzYWdlTGV2ZWwsIGNvbnN0IFN0cmluZyYgbWVzc2FnZSwgdW5zaWduZWQgbG9uZyBy
ZXF1ZXN0SWRlbnRpZmllciA9IDApIG92ZXJyaWRlIGZpbmFsOwogCiAgICAgV0VCQ09SRV9FWFBP
UlQgdmlydHVhbCBTZWN1cml0eU9yaWdpbiogdG9wT3JpZ2luKCkgY29uc3Qgb3ZlcnJpZGUgZmlu
YWw7CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2RvbS9NaWNyb1Rhc2suY3BwIGIvU291
cmNlL1dlYkNvcmUvZG9tL01pY3JvVGFzay5jcHAKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXgg
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uYzc4NmUzNWE2Zjk3ZmZh
NDdmOTYwMmI3M2JjMzI1NmE3NmJjNmUyYgotLS0gL2Rldi9udWxsCisrKyBiL1NvdXJjZS9XZWJD
b3JlL2RvbS9NaWNyb1Rhc2suY3BwCkBAIC0wLDAgKzEsNTIgQEAKKy8qCisgKiBDb3B5cmlnaHQg
KEMpIDIwMTQgWW9hdiBXZWlzcyAoeW9hdkB5b2F2LndzKQorICogQ29weXJpZ2h0IChDKSAyMDE1
IEFrYW1haSBUZWNobm9sb2dpZXMgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICoKKyAqIFRo
aXMgbGlicmFyeSBpcyBmcmVlIHNvZnR3YXJlOyB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQv
b3IKKyAqIG1vZGlmeSBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBMaWJyYXJ5IEdlbmVy
YWwgUHVibGljCisgKiBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieSB0aGUgRnJlZSBTb2Z0d2FyZSBG
b3VuZGF0aW9uOyBlaXRoZXIKKyAqIHZlcnNpb24gMiBvZiB0aGUgTGljZW5zZSwgb3IgKGF0IHlv
dXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KKyAqCisgKiBUaGlzIGxpYnJhcnkgaXMgZGlz
dHJpYnV0ZWQgaW4gdGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCwKKyAqIGJ1dCBXSVRI
T1VUIEFOWSBXQVJSQU5UWTsgd2l0aG91dCBldmVuIHRoZSBpbXBsaWVkIHdhcnJhbnR5IG9mCisg
KiBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBT
ZWUgdGhlIEdOVQorICogTGlicmFyeSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGZvciBtb3JlIGRl
dGFpbHMuCisgKgorICogWW91IHNob3VsZCBoYXZlIHJlY2VpdmVkIGEgY29weSBvZiB0aGUgR05V
IExpYnJhcnkgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQorICogYWxvbmcgd2l0aCB0aGlzIGxpYnJh
cnk7IHNlZSB0aGUgZmlsZSBDT1BZSU5HLkxJQi4gIElmIG5vdCwgd3JpdGUgdG8KKyAqIHRoZSBG
cmVlIFNvZnR3YXJlIEZvdW5kYXRpb24sIEluYy4sIDUxIEZyYW5rbGluIFN0cmVldCwgRmlmdGgg
Rmxvb3IsCisgKiBCb3N0b24sIE1BIDAyMTEwLTEzMDEsIFVTQS4KKyAqCisgKi8KKworI2luY2x1
ZGUgImNvbmZpZy5oIgorI2luY2x1ZGUgIk1pY3JvVGFzay5oIgorCisjaW5jbHVkZSAiRG9jdW1l
bnQuaCIKKyNpbmNsdWRlIDx3dGYvdGV4dC9TdHJpbmdCdWlsZGVyLmg+CisKK25hbWVzcGFjZSBX
ZWJDb3JlIHsKKworTWljcm9UYXNrUXVldWUmIE1pY3JvVGFza1F1ZXVlOjpzaW5nbGV0b24oKQor
eworICAgIEFTU0VSVChpc01haW5UaHJlYWQoKSk7CisgICAgc3RhdGljIE5ldmVyRGVzdHJveWVk
PE1pY3JvVGFza1F1ZXVlPiBxdWV1ZTsKKyAgICByZXR1cm4gcXVldWU7Cit9CisKK3ZvaWQgTWlj
cm9UYXNrUXVldWU6OnF1ZXVlTWljcm9UYXNrKHN0ZDo6dW5pcXVlX3B0cjxNaWNyb1Rhc2s+IHRh
c2spCit7CisgICAgQVNTRVJUKGlzTWFpblRocmVhZCgpKTsKKyAgICBtX21pY3JvVGFza1F1ZXVl
LmFwcGVuZChXVEY6Om1vdmUodGFzaykpOworfQorCit2b2lkIE1pY3JvVGFza1F1ZXVlOjpydW5N
aWNyb1Rhc2tzKCkKK3sKKyAgICBBU1NFUlQoaXNNYWluVGhyZWFkKCkpOworICAgIGZvciAoYXV0
byYgdGFzayA6IG1fbWljcm9UYXNrUXVldWUpCisgICAgICAgIHRhc2stPnJ1bigpOworICAgIG1f
bWljcm9UYXNrUXVldWUuY2xlYXIoKTsKK30KKworfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQorCmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9kb20vTWljcm9UYXNrLmggYi9Tb3VyY2UvV2ViQ29y
ZS9kb20vTWljcm9UYXNrLmgKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uYTMwNzhhMWU1OTRiMDgxNzA4ZGY1ZWE3YzFi
NjU4ZGRlZDQ0ZTcwOQotLS0gL2Rldi9udWxsCisrKyBiL1NvdXJjZS9XZWJDb3JlL2RvbS9NaWNy
b1Rhc2suaApAQCAtMCwwICsxLDU3IEBACisvKgorICogQ29weXJpZ2h0IChDKSAyMDE0IFlvYXYg
V2Vpc3MgKHlvYXZAeW9hdi53cykKKyAqIENvcHlyaWdodCAoQykgMjAxNSBBa2FtYWkgVGVjaG5v
bG9naWVzIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAqCisgKiBUaGlzIGxpYnJhcnkgaXMg
ZnJlZSBzb2Z0d2FyZTsgeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29yCisgKiBtb2RpZnkg
aXQgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUgTGlicmFyeSBHZW5lcmFsIFB1YmxpYworICog
TGljZW5zZSBhcyBwdWJsaXNoZWQgYnkgdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbjsgZWl0
aGVyCisgKiB2ZXJzaW9uIDIgb2YgdGhlIExpY2Vuc2UsIG9yIChhdCB5b3VyIG9wdGlvbikgYW55
IGxhdGVyIHZlcnNpb24uCisgKgorICogVGhpcyBsaWJyYXJ5IGlzIGRpc3RyaWJ1dGVkIGluIHRo
ZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCisgKiBidXQgV0lUSE9VVCBBTlkgV0FSUkFO
VFk7IHdpdGhvdXQgZXZlbiB0aGUgaW1wbGllZCB3YXJyYW50eSBvZgorICogTUVSQ0hBTlRBQklM
SVRZIG9yIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFLiAgU2VlIHRoZSBHTlUKKyAq
IExpYnJhcnkgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBmb3IgbW9yZSBkZXRhaWxzLgorICoKKyAq
IFlvdSBzaG91bGQgaGF2ZSByZWNlaXZlZCBhIGNvcHkgb2YgdGhlIEdOVSBMaWJyYXJ5IEdlbmVy
YWwgUHVibGljIExpY2Vuc2UKKyAqIGFsb25nIHdpdGggdGhpcyBsaWJyYXJ5OyBzZWUgdGhlIGZp
bGUgQ09QWUlORy5MSUIuICBJZiBub3QsIHdyaXRlIHRvCisgKiB0aGUgRnJlZSBTb2Z0d2FyZSBG
b3VuZGF0aW9uLCBJbmMuLCA1MSBGcmFua2xpbiBTdHJlZXQsIEZpZnRoIEZsb29yLAorICogQm9z
dG9uLCBNQSAwMjExMC0xMzAxLCBVU0EuCisgKgorICovCisKKyNpZm5kZWYgTWljcm9UYXNrX2gK
KyNkZWZpbmUgTWljcm9UYXNrX2gKKworI2luY2x1ZGUgPHd0Zi9OZXZlckRlc3Ryb3llZC5oPgor
I2luY2x1ZGUgPHd0Zi9SZWZDb3VudGVkLmg+CisjaW5jbHVkZSA8d3RmL1ZlY3Rvci5oPgorCisK
K25hbWVzcGFjZSBXZWJDb3JlIHsKKworY2xhc3MgTWljcm9UYXNrIDogcHVibGljIFJlZkNvdW50
ZWQ8TWljcm9UYXNrPiB7CitwdWJsaWM6CisgICAgdmlydHVhbCB2b2lkIHJ1bigpID0gMDsKKyAg
ICB2aXJ0dWFsIH5NaWNyb1Rhc2soKSB7IH0KK307CisKK2NsYXNzIE1pY3JvVGFza1F1ZXVlIHsK
KyAgICBmcmllbmQgTmV2ZXJEZXN0cm95ZWQ8TWljcm9UYXNrUXVldWU+OworCitwdWJsaWM6Cisg
ICAgV0VCQ09SRV9FWFBPUlQgc3RhdGljIE1pY3JvVGFza1F1ZXVlJiBzaW5nbGV0b24oKTsKKyAg
ICB+TWljcm9UYXNrUXVldWUoKSB7IH0KKworICAgIFdFQkNPUkVfRVhQT1JUIHZvaWQgcXVldWVN
aWNyb1Rhc2soc3RkOjp1bmlxdWVfcHRyPE1pY3JvVGFzaz4pOworCisgICAgdm9pZCBydW5NaWNy
b1Rhc2tzKCk7CisKK3ByaXZhdGU6CisgICAgTWljcm9UYXNrUXVldWUoKSB7IH0KKyAgICBWZWN0
b3I8c3RkOjp1bmlxdWVfcHRyPE1pY3JvVGFzaz4+IG1fbWljcm9UYXNrUXVldWU7CisKK307CisK
K30gLy8gbmFtZXNwYWNlIFdlYkNvcmUKKworI2VuZGlmIC8vIE1pY3JvVGFza19oCmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViQ29yZS9kb20vU2NyaXB0UnVubmVyLmNwcCBiL1NvdXJjZS9XZWJDb3Jl
L2RvbS9TY3JpcHRSdW5uZXIuY3BwCmluZGV4IGVkOTRkYTNlNzNkYjEzMDE3OGI5OWVhNGI3Zjky
YjVhYzE5ODA5ZDYuLmM0NmI3OGUwZmZlM2M4MTgzNjA0N2VjYTNhMDdhYjljZWQxM2FmMDQgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2RvbS9TY3JpcHRSdW5uZXIuY3BwCisrKyBiL1NvdXJj
ZS9XZWJDb3JlL2RvbS9TY3JpcHRSdW5uZXIuY3BwCkBAIC0yOCw2ICsyOCw3IEBACiAKICNpbmNs
dWRlICJDYWNoZWRTY3JpcHQuaCIKICNpbmNsdWRlICJFbGVtZW50LmgiCisjaW5jbHVkZSAiTWlj
cm9UYXNrLmgiCiAjaW5jbHVkZSAiUGVuZGluZ1NjcmlwdC5oIgogI2luY2x1ZGUgIlNjcmlwdEVs
ZW1lbnQuaCIKIApAQCAtMTE2LDYgKzExNyw3IEBAIHZvaWQgU2NyaXB0UnVubmVyOjp0aW1lckZp
cmVkKCkKICAgICAgICAgdG9TY3JpcHRFbGVtZW50SWZQb3NzaWJsZShlbGVtZW50LmdldCgpKS0+
ZXhlY3V0ZShjYWNoZWRTY3JpcHQpOwogICAgICAgICBtX2RvY3VtZW50LmRlY3JlbWVudExvYWRF
dmVudERlbGF5Q291bnQoKTsKICAgICB9CisgICAgTWljcm9UYXNrUXVldWU6OnNpbmdsZXRvbigp
LnJ1bk1pY3JvVGFza3MoKTsKIH0KIAogfQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvaHRt
bC9wYXJzZXIvSFRNTFNjcmlwdFJ1bm5lci5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL3BhcnNl
ci9IVE1MU2NyaXB0UnVubmVyLmNwcAppbmRleCA0MWU3MjVmNjBkZTg2ODFmMWNmOGRiNGI1Yzk4
YWRiNjI2MjJmMjFiLi4yN2RkNjczODJhNjAwZmMwMzM4NTJlYzkwMjkyMDE2OTJkMTQzZGVkIDEw
MDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9odG1sL3BhcnNlci9IVE1MU2NyaXB0UnVubmVyLmNw
cAorKysgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL3BhcnNlci9IVE1MU2NyaXB0UnVubmVyLmNwcApA
QCAtMzYsNiArMzYsNyBAQAogI2luY2x1ZGUgIkhUTUxOYW1lcy5oIgogI2luY2x1ZGUgIkhUTUxT
Y3JpcHRSdW5uZXJIb3N0LmgiCiAjaW5jbHVkZSAiSWdub3JlRGVzdHJ1Y3RpdmVXcml0ZUNvdW50
SW5jcmVtZW50ZXIuaCIKKyNpbmNsdWRlICJNaWNyb1Rhc2suaCIKICNpbmNsdWRlICJNdXRhdGlv
bk9ic2VydmVyLmgiCiAjaW5jbHVkZSAiTmVzdGluZ0xldmVsSW5jcmVtZW50ZXIuaCIKICNpbmNs
dWRlICJOb3RJbXBsZW1lbnRlZC5oIgpAQCAtMTI5LDggKzEzMCwxMCBAQCB2b2lkIEhUTUxTY3Jp
cHRSdW5uZXI6OmV4ZWN1dGVQZW5kaW5nU2NyaXB0QW5kRGlzcGF0Y2hFdmVudChQZW5kaW5nU2Ny
aXB0JiBwZW5kaQogICAgIGlmIChwZW5kaW5nU2NyaXB0LmNhY2hlZFNjcmlwdCgpICYmIHBlbmRp
bmdTY3JpcHQud2F0Y2hpbmdGb3JMb2FkKCkpCiAgICAgICAgIHN0b3BXYXRjaGluZ0ZvckxvYWQo
cGVuZGluZ1NjcmlwdCk7CiAKLSAgICBpZiAoIWlzRXhlY3V0aW5nU2NyaXB0KCkpCisgICAgaWYg
KCFpc0V4ZWN1dGluZ1NjcmlwdCgpKSB7CiAgICAgICAgIE11dGF0aW9uT2JzZXJ2ZXI6OmRlbGl2
ZXJBbGxNdXRhdGlvbnMoKTsKKyAgICAgICAgTWljcm9UYXNrUXVldWU6OnNpbmdsZXRvbigpLnJ1
bk1pY3JvVGFza3MoKTsKKyAgICB9CiAKICAgICAvLyBDbGVhciB0aGUgcGVuZGluZyBzY3JpcHQg
YmVmb3JlIHBvc3NpYmxlIHJlbnRyYW5jeSBmcm9tIGV4ZWN1dGVTY3JpcHQoKQogICAgIFJlZlB0
cjxFbGVtZW50PiBlbGVtZW50ID0gcGVuZGluZ1NjcmlwdC5yZWxlYXNlRWxlbWVudEFuZENsZWFy
KCk7CkBAIC0yMzEsNiArMjM0LDggQEAgYm9vbCBIVE1MU2NyaXB0UnVubmVyOjpleGVjdXRlU2Ny
aXB0c1dhaXRpbmdGb3JQYXJzaW5nKCkKICAgICAgICAgaWYgKCFtX2RvY3VtZW50KQogICAgICAg
ICAgICAgcmV0dXJuIGZhbHNlOwogICAgIH0KKyAgICBpZiAoIWlzRXhlY3V0aW5nU2NyaXB0KCkp
CisgICAgICAgIE1pY3JvVGFza1F1ZXVlOjpzaW5nbGV0b24oKS5ydW5NaWNyb1Rhc2tzKCk7CiAg
ICAgcmV0dXJuIHRydWU7CiB9CiAKQEAgLTI5Myw4ICsyOTgsMTAgQEAgdm9pZCBIVE1MU2NyaXB0
UnVubmVyOjpydW5TY3JpcHQoRWxlbWVudCogc2NyaXB0LCBjb25zdCBUZXh0UG9zaXRpb24mIHNj
cmlwdFN0YXIKICAgICAgICAgLy8gZXZlcnkgc2NyaXB0IGVsZW1lbnQsIGV2ZW4gaWYgaXQncyBu
b3QgcmVhZHkgdG8gZXhlY3V0ZSB5ZXQuIFRoZXJlJ3MKICAgICAgICAgLy8gdW5mb3J0dWFudGVs
eSBubyBvYnZpb3VzIHdheSB0byB0ZWxsIGlmIHByZXBhcmVTY3JpcHQgaXMgZ29pbmcgdG8KICAg
ICAgICAgLy8gZXhlY3V0ZSB0aGUgc2NyaXB0IGZyb20gb3V0IGhlcmUuCi0gICAgICAgIGlmICgh
aXNFeGVjdXRpbmdTY3JpcHQoKSkKKyAgICAgICAgaWYgKCFpc0V4ZWN1dGluZ1NjcmlwdCgpKSB7
CiAgICAgICAgICAgICBNdXRhdGlvbk9ic2VydmVyOjpkZWxpdmVyQWxsTXV0YXRpb25zKCk7Cisg
ICAgICAgICAgICBNaWNyb1Rhc2tRdWV1ZTo6c2luZ2xldG9uKCkucnVuTWljcm9UYXNrcygpOwor
ICAgICAgICB9CiAKICAgICAgICAgSW5zZXJ0aW9uUG9pbnRSZWNvcmQgaW5zZXJ0aW9uUG9pbnRS
ZWNvcmQobV9ob3N0LmlucHV0U3RyZWFtKCkpOwogICAgICAgICBOZXN0aW5nTGV2ZWxJbmNyZW1l
bnRlciBuZXN0aW5nTGV2ZWxJbmNyZW1lbnRlcihtX3NjcmlwdE5lc3RpbmdMZXZlbCk7CmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViQ29yZS90ZXN0aW5nL0ludGVybmFscy5jcHAgYi9Tb3VyY2UvV2Vi
Q29yZS90ZXN0aW5nL0ludGVybmFscy5jcHAKaW5kZXggMTBiYTNjZGE2NjJlMzBlN2UxZDE3NWRk
YjliOTdjODRiOTljMjliZS4uYWNlOTcxMDJhNTU3ZDBjZTM5Mzk4MTNlODAyNjUwMzM3ZjBmNWY2
MSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvdGVzdGluZy9JbnRlcm5hbHMuY3BwCisrKyBi
L1NvdXJjZS9XZWJDb3JlL3Rlc3RpbmcvSW50ZXJuYWxzLmNwcApAQCAtNzgsNiArNzgsOCBAQAog
I2luY2x1ZGUgIk1lZGlhU2Vzc2lvbk1hbmFnZXIuaCIKICNpbmNsdWRlICJNZW1vcnlDYWNoZS5o
IgogI2luY2x1ZGUgIk1lbW9yeUluZm8uaCIKKyNpbmNsdWRlICJNaWNyb1Rhc2suaCIKKyNpbmNs
dWRlICJNaWNyb1Rhc2tUZXN0LmgiCiAjaW5jbHVkZSAiTW9ja1BhZ2VPdmVybGF5Q2xpZW50Lmgi
CiAjaW5jbHVkZSAiUGFnZS5oIgogI2luY2x1ZGUgIlBhZ2VPdmVybGF5LmgiCkBAIC0yNTAzLDQg
KzI1MDUsOSBAQCBib29sIEludGVybmFsczo6aXNQYWdlUGxheWluZ0F1ZGlvKCkKICAgICByZXR1
cm4gZG9jdW1lbnQtPnBhZ2UoKS0+aXNQbGF5aW5nQXVkaW8oKTsKIH0KIAordm9pZCBJbnRlcm5h
bHM6OnF1ZXVlTWljcm9UYXNrKGludCB0ZXN0TnVtYmVyKQoreworICAgIE1pY3JvVGFza1F1ZXVl
OjpzaW5nbGV0b24oKS5xdWV1ZU1pY3JvVGFzayhNaWNyb1Rhc2tUZXN0OjpjcmVhdGUoY29udGV4
dERvY3VtZW50KCksIHRlc3ROdW1iZXIpKTsKK30KKwogfQpkaWZmIC0tZ2l0IGEvU291cmNlL1dl
YkNvcmUvdGVzdGluZy9JbnRlcm5hbHMuaCBiL1NvdXJjZS9XZWJDb3JlL3Rlc3RpbmcvSW50ZXJu
YWxzLmgKaW5kZXggMDlhNDQ5ZDcyYjI1ZmZkMzVjZTAwMWRmOTQ1ZWVkMGU5YzJmMjJmYi4uODg0
YzczNjFkZmE1NTE2NmIwNDg1MWVmMDk1NjVkNTExMTA1ZDRhMiAxMDA2NDQKLS0tIGEvU291cmNl
L1dlYkNvcmUvdGVzdGluZy9JbnRlcm5hbHMuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS90ZXN0aW5n
L0ludGVybmFscy5oCkBAIC0zNjEsNiArMzYxLDggQEAgcHVibGljOgogICAgIHZvaWQgc2V0UGFn
ZU11dGVkKGJvb2wpOwogICAgIGJvb2wgaXNQYWdlUGxheWluZ0F1ZGlvKCk7CiAKKyAgICB2b2lk
IHF1ZXVlTWljcm9UYXNrKGludCk7CisKIHByaXZhdGU6CiAgICAgZXhwbGljaXQgSW50ZXJuYWxz
KERvY3VtZW50Kik7CiAgICAgRG9jdW1lbnQqIGNvbnRleHREb2N1bWVudCgpIGNvbnN0OwpkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvdGVzdGluZy9JbnRlcm5hbHMuaWRsIGIvU291cmNlL1dl
YkNvcmUvdGVzdGluZy9JbnRlcm5hbHMuaWRsCmluZGV4IGRjMmFkNTllYzdlNzE3MTUyOGMwODU3
NDBjNjdkY2I2NjU1NGQyN2MuLjJiNjNiNGZmYjZmOWFlOGYwZGQxODIwZTM5M2MxYWY3MTg1YjI0
MjEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3Rlc3RpbmcvSW50ZXJuYWxzLmlkbAorKysg
Yi9Tb3VyY2UvV2ViQ29yZS90ZXN0aW5nL0ludGVybmFscy5pZGwKQEAgLTMxNyw0ICszMTcsNSBA
QCBlbnVtIFBhZ2VPdmVybGF5VHlwZSB7CiAKICAgICB2b2lkIHNldFBhZ2VNdXRlZChib29sZWFu
IG11dGVkKTsKICAgICBib29sZWFuIGlzUGFnZVBsYXlpbmdBdWRpbygpOworICAgIHZvaWQgcXVl
dWVNaWNyb1Rhc2sobG9uZyB0ZXN0TnVtYmVyKTsKIH07CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
Q29yZS90ZXN0aW5nL01pY3JvVGFza1Rlc3QuY3BwIGIvU291cmNlL1dlYkNvcmUvdGVzdGluZy9N
aWNyb1Rhc2tUZXN0LmNwcApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi4yOTQ2ZGJiYWQ2OGMyY2MxYTJkOGJlYTAzMjY1
MGNmYWViZjU4NmYzCi0tLSAvZGV2L251bGwKKysrIGIvU291cmNlL1dlYkNvcmUvdGVzdGluZy9N
aWNyb1Rhc2tUZXN0LmNwcApAQCAtMCwwICsxLDQzIEBACisvKgorICogQ29weXJpZ2h0IChDKSAy
MDE1IEFrYW1haSBUZWNobm9sb2dpZXMgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICoKKyAq
IFRoaXMgbGlicmFyeSBpcyBmcmVlIHNvZnR3YXJlOyB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBh
bmQvb3IKKyAqIG1vZGlmeSBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBMaWJyYXJ5IEdl
bmVyYWwgUHVibGljCisgKiBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieSB0aGUgRnJlZSBTb2Z0d2Fy
ZSBGb3VuZGF0aW9uOyBlaXRoZXIKKyAqIHZlcnNpb24gMiBvZiB0aGUgTGljZW5zZSwgb3IgKGF0
IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KKyAqCisgKiBUaGlzIGxpYnJhcnkgaXMg
ZGlzdHJpYnV0ZWQgaW4gdGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCwKKyAqIGJ1dCBX
SVRIT1VUIEFOWSBXQVJSQU5UWTsgd2l0aG91dCBldmVuIHRoZSBpbXBsaWVkIHdhcnJhbnR5IG9m
CisgKiBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0Uu
ICBTZWUgdGhlIEdOVQorICogTGlicmFyeSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGZvciBtb3Jl
IGRldGFpbHMuCisgKgorICogWW91IHNob3VsZCBoYXZlIHJlY2VpdmVkIGEgY29weSBvZiB0aGUg
R05VIExpYnJhcnkgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQorICogYWxvbmcgd2l0aCB0aGlzIGxp
YnJhcnk7IHNlZSB0aGUgZmlsZSBDT1BZSU5HLkxJQi4gIElmIG5vdCwgd3JpdGUgdG8KKyAqIHRo
ZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb24sIEluYy4sIDUxIEZyYW5rbGluIFN0cmVldCwgRmlm
dGggRmxvb3IsCisgKiBCb3N0b24sIE1BIDAyMTEwLTEzMDEsIFVTQS4KKyAqCisgKi8KKworI2lu
Y2x1ZGUgImNvbmZpZy5oIgorI2luY2x1ZGUgIk1pY3JvVGFza1Rlc3QuaCIKKworI2luY2x1ZGUg
IkRvY3VtZW50LmgiCisKK25hbWVzcGFjZSBXZWJDb3JlIHsKKwordm9pZCBNaWNyb1Rhc2tUZXN0
OjpydW4oKQoreworICAgIFN0cmluZ0J1aWxkZXIgbWVzc2FnZTsKKyAgICBtZXNzYWdlLmFwcGVu
ZCgiTWljcm9UYXNrICMiKTsKKyAgICBtZXNzYWdlLmFwcGVuZChTdHJpbmc6Om51bWJlcihtX3Rl
c3ROdW1iZXIpKTsKKyAgICBtZXNzYWdlLmFwcGVuZCgiIGhhcyByYW4uIik7CisgICAgaWYgKG1f
ZG9jdW1lbnQpCisgICAgICAgIG1fZG9jdW1lbnQtPmFkZENvbnNvbGVNZXNzYWdlKE1lc3NhZ2VT
b3VyY2U6OkpTLCBNZXNzYWdlTGV2ZWw6OkRlYnVnLCBtZXNzYWdlLnRvU3RyaW5nKCkpOworfQor
CitzdGQ6OnVuaXF1ZV9wdHI8TWljcm9UYXNrVGVzdD4gTWljcm9UYXNrVGVzdDo6Y3JlYXRlKFBh
c3NSZWZQdHI8RG9jdW1lbnQ+IGRvY3VtZW50LCBpbnQgdGVzdE51bWJlcikKK3sKKyAgICByZXR1
cm4gc3RkOjp1bmlxdWVfcHRyPE1pY3JvVGFza1Rlc3Q+KG5ldyBNaWNyb1Rhc2tUZXN0KGRvY3Vt
ZW50LCB0ZXN0TnVtYmVyKSk7Cit9CisKK30gLy8gbmFtZXNwYWNlIFdlYkNvcmUKZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJDb3JlL3Rlc3RpbmcvTWljcm9UYXNrVGVzdC5oIGIvU291cmNlL1dlYkNv
cmUvdGVzdGluZy9NaWNyb1Rhc2tUZXN0LmgKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uNjVjMWVlZTU3ZmY1YjdkNzA2
Y2Q1ZmQ0M2U1ZGMyYzQwZTE3NTBhNwotLS0gL2Rldi9udWxsCisrKyBiL1NvdXJjZS9XZWJDb3Jl
L3Rlc3RpbmcvTWljcm9UYXNrVGVzdC5oCkBAIC0wLDAgKzEsNDkgQEAKKy8qCisgKiBDb3B5cmln
aHQgKEMpIDIwMTUgQWthbWFpIFRlY2hub2xvZ2llcyBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQu
CisgKgorICogVGhpcyBsaWJyYXJ5IGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmli
dXRlIGl0IGFuZC9vcgorICogbW9kaWZ5IGl0IHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05VIExp
YnJhcnkgR2VuZXJhbCBQdWJsaWMKKyAqIExpY2Vuc2UgYXMgcHVibGlzaGVkIGJ5IHRoZSBGcmVl
IFNvZnR3YXJlIEZvdW5kYXRpb247IGVpdGhlcgorICogdmVyc2lvbiAyIG9mIHRoZSBMaWNlbnNl
LCBvciAoYXQgeW91ciBvcHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLgorICoKKyAqIFRoaXMgbGli
cmFyeSBpcyBkaXN0cmlidXRlZCBpbiB0aGUgaG9wZSB0aGF0IGl0IHdpbGwgYmUgdXNlZnVsLAor
ICogYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2Fy
cmFudHkgb2YKKyAqIE1FUkNIQU5UQUJJTElUWSBvciBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIg
UFVSUE9TRS4gIFNlZSB0aGUgR05VCisgKiBMaWJyYXJ5IEdlbmVyYWwgUHVibGljIExpY2Vuc2Ug
Zm9yIG1vcmUgZGV0YWlscy4KKyAqCisgKiBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5
IG9mIHRoZSBHTlUgTGlicmFyeSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlCisgKiBhbG9uZyB3aXRo
IHRoaXMgbGlicmFyeTsgc2VlIHRoZSBmaWxlIENPUFlJTkcuTElCLiAgSWYgbm90LCB3cml0ZSB0
bworICogdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbiwgSW5jLiwgNTEgRnJhbmtsaW4gU3Ry
ZWV0LCBGaWZ0aCBGbG9vciwKKyAqIEJvc3RvbiwgTUEgMDIxMTAtMTMwMSwgVVNBLgorICoKKyAq
LworCisjaWZuZGVmIE1pY3JvVGFza1Rlc3RfaAorI2RlZmluZSBNaWNyb1Rhc2tUZXN0X2gKKwor
I2luY2x1ZGUgIk1pY3JvVGFzay5oIgorI2luY2x1ZGUgPHd0Zi9SZWZDb3VudGVkLmg+CisKK25h
bWVzcGFjZSBXZWJDb3JlIHsKKworY2xhc3MgRG9jdW1lbnQ7CisKK2NsYXNzIE1pY3JvVGFza1Rl
c3Q6IHB1YmxpYyBNaWNyb1Rhc2sgeworcHVibGljOgorICAgIHZpcnR1YWwgdm9pZCBydW4oKSBv
dmVycmlkZTsKKyAgICBXRUJDT1JFX0VYUE9SVCBzdGF0aWMgc3RkOjp1bmlxdWVfcHRyPE1pY3Jv
VGFza1Rlc3Q+IGNyZWF0ZShQYXNzUmVmUHRyPERvY3VtZW50PiwgaW50IHRlc3ROdW1iZXIpOwor
Citwcml2YXRlOgorICAgIE1pY3JvVGFza1Rlc3QoUGFzc1JlZlB0cjxEb2N1bWVudD4gZG9jdW1l
bnQsIGludCB0ZXN0TnVtYmVyKQorICAgICAgICA6IG1fZG9jdW1lbnQoZG9jdW1lbnQpCisgICAg
ICAgICwgbV90ZXN0TnVtYmVyKHRlc3ROdW1iZXIpCisgICAgeworICAgIH0KKworICAgIFJlZlB0
cjxEb2N1bWVudD4gbV9kb2N1bWVudDsKKyAgICBpbnQgbV90ZXN0TnVtYmVyOworfTsKKworfSAv
LyBuYW1lc3BhY2UgV2ViQ29yZQorCisjZW5kaWYKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL0No
YW5nZUxvZyBiL0xheW91dFRlc3RzL0NoYW5nZUxvZwppbmRleCBjZmE3NDFmZDQzMTA4NDdkMGUw
MTMzMTZmMGFhNGQ0MGE3Mzc5MGIyLi4wMzY5NjMwM2E1NGVjZTFhZGM1MjdjMTJjNjYyMGYxNzg4
ODI1NmQyIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKKysrIGIvTGF5b3V0VGVz
dHMvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTUgQEAKKzIwMTUtMDItMTkgIFlvYXYgV2Vpc3MgIDx5
b2F2QHlvYXYud3M+CisKKyAgICAgICAgQWRkIGEgbWljcm90YXNrIGFic3RyYWN0aW9uCisgICAg
ICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xMzc0OTYKKworICAg
ICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBBZGRpbmcgYSB0ZXN0
IGZvciBtaWNyb3Rhc2sgYWJzdHJhY3Rpb24uCisKKyAgICAgICAgKiBmYXN0L2RvbS9taWNyb3Rh
c2stb3JkZXIuaHRtbDogQWRkZWQuCisgICAgICAgICogZmFzdC9kb20vbWljcm90YXNrLW9yZGVy
LWV4cGVjdGVkLnR4dDogQWRkZWQuCisKIDIwMTUtMDItMTYgIFNlcmdpbyBWaWxsYXIgU2VuaW4g
IDxzdmlsbGFyQGlnYWxpYS5jb20+CiAKICAgICAgICAgVW5yZXZpZXdlZC4gVXBsb2FkaW5nIGEg
bmV3IHRlc3QgdGhhdCBzaG91bGQgaGF2ZSBiZWVuIHVwbG9hZGVkIGFzCmRpZmYgLS1naXQgYS9M
YXlvdXRUZXN0cy9mYXN0L2RvbS9taWNyb3Rhc2stb3JkZXItZXhwZWN0ZWQudHh0IGIvTGF5b3V0
VGVzdHMvZmFzdC9kb20vbWljcm90YXNrLW9yZGVyLWV4cGVjdGVkLnR4dApuZXcgZmlsZSBtb2Rl
IDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi43
MGNjYTRiMTQ1MmJmYmFjZGFjMDNiMTUxZmVhMmMwMzU2ZmY3NGFlCi0tLSAvZGV2L251bGwKKysr
IGIvTGF5b3V0VGVzdHMvZmFzdC9kb20vbWljcm90YXNrLW9yZGVyLWV4cGVjdGVkLnR4dApAQCAt
MCwwICsxLDE1IEBACitDT05TT0xFIE1FU1NBR0U6IGxpbmUgMjM6IEZpbmlzaGVkIHF1ZXVlaW5n
IHRlc3RzLgorQ09OU09MRSBNRVNTQUdFOiBNaWNyb1Rhc2sgIzIgaGFzIHJhbi4KK0NPTlNPTEUg
TUVTU0FHRTogTWljcm9UYXNrICMxIGhhcyByYW4uCitDT05TT0xFIE1FU1NBR0U6IE1pY3JvVGFz
ayAjMCBoYXMgcmFuLgorIAorCistLS0tLS0tLQorRnJhbWU6ICdmcmFtZTEnCistLS0tLS0tLQor
CisKKy0tLS0tLS0tCitGcmFtZTogJ2ZyYW1lMicKKy0tLS0tLS0tCisKZGlmZiAtLWdpdCBhL0xh
eW91dFRlc3RzL2Zhc3QvZG9tL21pY3JvdGFzay1vcmRlci5odG1sIGIvTGF5b3V0VGVzdHMvZmFz
dC9kb20vbWljcm90YXNrLW9yZGVyLmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uNzljOGUyZjc4OTgzYTNlNjg1
ZWFjMTU1MDk1NjEwMTFlODYxZjlhOQotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2Zh
c3QvZG9tL21pY3JvdGFzay1vcmRlci5odG1sCkBAIC0wLDAgKzEsMjggQEAKKzwhRE9DVFlQRSBo
dG1sPgorPHNjcmlwdD4KK2lmICh3aW5kb3cudGVzdFJ1bm5lcikgeworICAgIHRlc3RSdW5uZXIu
ZHVtcEFzVGV4dCgpOworICAgIHRlc3RSdW5uZXIuZHVtcENoaWxkRnJhbWVzQXNUZXh0KCk7Cisg
ICAgdGVzdFJ1bm5lci53YWl0VW50aWxEb25lKCk7Cit9Cis8L3NjcmlwdD4KKzxpZnJhbWUgaWQ9
ImZyYW1lMSI+PC9pZnJhbWU+Cis8aWZyYW1lIGlkPSJmcmFtZTIiPjwvaWZyYW1lPgorPHNjcmlw
dD4KKwordmFyIGlmcmFtZTEgPSBkb2N1bWVudC5xdWVyeVNlbGVjdG9yKCIjZnJhbWUxIikuY29u
dGVudFdpbmRvdzsKK3ZhciBpZnJhbWUyID0gZG9jdW1lbnQucXVlcnlTZWxlY3RvcigiI2ZyYW1l
MiIpLmNvbnRlbnRXaW5kb3c7CisKK2lmKGlmcmFtZTIuaW50ZXJuYWxzKQorICAgIGlmcmFtZTIu
aW50ZXJuYWxzLnF1ZXVlTWljcm9UYXNrKDIpOworaWYoaWZyYW1lMS5pbnRlcm5hbHMpCisgICAg
aWZyYW1lMS5pbnRlcm5hbHMucXVldWVNaWNyb1Rhc2soMSk7CitpZih3aW5kb3cuaW50ZXJuYWxz
KQorICAgIGludGVybmFscy5xdWV1ZU1pY3JvVGFzaygwKTsKKworY29uc29sZS5sb2coIkZpbmlz
aGVkIHF1ZXVlaW5nIHRlc3RzLiIpOworcmVxdWVzdEFuaW1hdGlvbkZyYW1lKGZ1bmN0aW9uKCkg
eworICAgIGlmICh3aW5kb3cudGVzdFJ1bm5lcikKKyAgICAgICAgdGVzdFJ1bm5lci5ub3RpZnlE
b25lKCk7Cit9KTsKKzwvc2NyaXB0Pgo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>246922</attachid>
            <date>2015-02-19 14:35:45 -0800</date>
            <delta_ts>2015-02-20 16:05:14 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-137496-20150219233535.patch</filename>
            <type>text/plain</type>
            <size>41095</size>
            <attacher name="Yoav Weiss">yoav</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTgwMTQ1CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggZjQ5YjY5ZGExMjViY2Fk
ZWZmYmE2NzU3NTE2ZTUxM2M0OWNmNmE5MS4uYWM0YTI4ZWE0Mjc0ZjMzYjUxODcyM2VkZjc5MDVl
Yzc4ZWVmNzQxYiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDQ2IEBACisyMDE1LTAyLTE5ICBZb2F2
IFdlaXNzICA8eW9hdkB5b2F2LndzPgorCisgICAgICAgIEFkZCBhIG1pY3JvdGFzayBhYnN0cmFj
dGlvbgorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTM3
NDk2CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgVGhp
cyBwYXRjaCBhZGRzIGEgbWljcm90YXNrIGFic3RyYWN0aW9uOiBodHRwczovL2h0bWwuc3BlYy53
aGF0d2cub3JnL211bHRpcGFnZS93ZWJhcHBhcGlzLmh0bWwjbWljcm90YXNrCisgICAgICAgIFRo
YXQgYWJzdHJhY3Rpb24gaXMgcmVxdWlyZWQgaW4gb3JkZXIgdG8gZW5hYmxlIGFzeW5jIGxvYWRp
bmcgb2YgaW1hZ2VzLAorICAgICAgICB3aGljaCBpcyBpbiB0dXJuIHJlcXVpcmVkIHRvIGVuYWJs
ZSBzdXBwb3J0IGZvciB0aGUgcGljdHVyZSBlbGVtZW50LCBhcyB3ZWxsIGFzCisgICAgICAgIHRv
IG1ha2Ugc3VyZSB0aGF0IHRoZSBvcmRlciBvZiBwcm9wZXJ0aWVzIHNldCBvbiBIVE1MSW1hZ2VF
bGVtZW50IGhhcyBubyBpbXBsaWNhdGlvbnMuCisKKyAgICAgICAgKiBXZWJDb3JlLnZjeHByb2ov
V2ViQ29yZS52Y3hwcm9qOiBBZGQgTWljcm9UYXNrLntoLGNwcH0gdG8gdGhlIHByb2plY3QuCisg
ICAgICAgICogV2ViQ29yZS52Y3hwcm9qL1dlYkNvcmVUZXN0U3VwcG9ydC52Y3hwcm9qOiBBZGQg
TWljcm9UYXNrVGVzdC57aCxjcHB9IHRvIHRoZSBwcm9qZWN0LgorICAgICAgICAqIFdlYkNvcmUu
dmN4cHJvai9XZWJDb3JlLnZjeHByb2ouZmlsdGVyczogQWRkIE1pY3JvVGFzay57aCxjcHB9IHRv
IHRoZSBwcm9qZWN0LgorICAgICAgICAqIFdlYkNvcmUudmN4cHJvai9XZWJDb3JlVGVzdFN1cHBv
cnQudmN4cHJvai5maWx0ZXJzOiBBZGQgTWljcm9UYXNrVGVzdC57aCxjcHB9IHRvIHRoZSBwcm9q
ZWN0LgorICAgICAgICAqIFdlYkNvcmUueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvajogQWRkIE1p
Y3JvVGFza3ssVGVzdH0ue2gsY3BwfSB0byB0aGUgcHJvamVjdC4KKyAgICAgICAgKiBkb20vRG9j
dW1lbnQuaDogQWRkIFdFQkNPUkVfRVhQT1JUIHRvIGFkZENvbnNvbGVNZXNzYWdlLCBzbyBpdCBj
YW4gYmUgdXNlZCBpbiBNaWNyb1Rhc2tUZXN0IHRoYXQncyBpbiBXZWJDb3JlVGVzdFN1cHBvcnQu
LgorICAgICAgICAqIGRvbS9NaWNyb1Rhc2suaDogQWRkIGEgTWljcm9UYXNrIGludGVyZmFjZSBj
bGFzcy4gQWRkIGEgTWljcm9UYXNrUXVldWUgc2luZ2xldG9uLgorICAgICAgICAoV2ViQ29yZTo6
TWljcm9UYXNrOjp+TWljcm9UYXNrKToKKyAgICAgICAgKFdlYkNvcmU6Ok1pY3JvVGFzazo6cnVu
KTogUnVuIHRoZSBtaWNyb3Rhc2suCisgICAgICAgICogZG9tL01pY3JvVGFzay5jcHA6IEltcGxl
bWVudCB0aGUgTWljcm9UYXNrUXVldWUgc2luZ2xldG9uLgorICAgICAgICAoV2ViQ29yZTo6TWlj
cm9UYXNrUXVldWU6OnNpbmdsZXRvbik6IEdldCBhIHNpbmdsZXRvbiBpbnN0YW5jZSBvZiBNaWNy
b1Rhc2tRdWV1ZS4KKyAgICAgICAgKFdlYkNvcmU6Ok1pY3JvVGFza1F1ZXVlOjpxdWV1ZU1pY3Jv
VGFzayk6IEFkZCBhIG1pY3JvdGFzayB0byB0aGUgcXVldWUuCisgICAgICAgIChXZWJDb3JlOjpN
aWNyb1Rhc2tRdWV1ZTo6cnVuTWljcm9UYXNrcyk6IFJ1biBhbGwgdGhlIG1pY3JvdGFza3MgaW4g
dGhlIHF1ZXVlIGFuZCBjbGVhciBpdC4KKyAgICAgICAgKiBkb20vU2NyaXB0UnVubmVyLmNwcDog
VHJpZ2dlciBydW5uaW5nIG9mIGFsbCBtaWNyb3Rhc2tzIGluIHF1ZXVlLgorICAgICAgICAoV2Vi
Q29yZTo6U2NyaXB0UnVubmVyOjp0aW1lckZpcmVkKToKKyAgICAgICAgKiBodG1sL3BhcnNlci9I
VE1MU2NyaXB0UnVubmVyLmNwcDogVHJpZ2dlciBydW5uaW5nIG9mIGFsbCBtaWNyb3Rhc2tzIGlu
IHF1ZXVlLgorICAgICAgICAoV2ViQ29yZTo6SFRNTFNjcmlwdFJ1bm5lcjo6ZXhlY3V0ZVBlbmRp
bmdTY3JpcHRBbmREaXNwYXRjaEV2ZW50KToKKyAgICAgICAgKFdlYkNvcmU6OkhUTUxTY3JpcHRS
dW5uZXI6OmV4ZWN1dGVTY3JpcHRzV2FpdGluZ0ZvclBhcnNpbmcpOgorICAgICAgICAoV2ViQ29y
ZTo6SFRNTFNjcmlwdFJ1bm5lcjo6cnVuU2NyaXB0KToKKyAgICAgICAgKiB0ZXN0aW5nL0ludGVy
bmFscy5jcHA6IEFkZCBhIG1ldGhvZCB0byBxdWV1ZSBhIHRlc3QgbWljcm90YXNrLgorICAgICAg
ICAoV2ViQ29yZTo6SW50ZXJuYWxzOjpxdWV1ZU1pY3JvVGFzayk6CisgICAgICAgICogdGVzdGlu
Zy9JbnRlcm5hbHMuaDogQWRkIGEgbWV0aG9kIHRvIHF1ZXVlIGEgdGVzdCBtaWNyb3Rhc2suCisg
ICAgICAgIChXZWJDb3JlOjpJbnRlcm5hbHM6OnF1ZXVlTWljcm9UYXNrKToKKyAgICAgICAgKiB0
ZXN0aW5nL0ludGVybmFscy5pZGw6IEV4cG9zZSB0ZXN0IG1pY3JvdGFzayBxdWV1ZWluZyB0byB0
ZXN0IEpTLgorICAgICAgICAqIHRlc3RpbmcvTWljcm9UYXNrVGVzdC5jcHA6IEFkZCBhIHRlc3Qg
Y2xhc3MgdGhhdCBpbXBsZW1lbnRzIGEgbWljcm90YXNrIGFuZCBwcmludHMgdG8gdGhlIGNvbnNv
bGUgd2hlbiBpdCBydW5zLgorICAgICAgICAoV2ViQ29yZTo6TWljcm9UYXNrVGVzdDo6cnVuKTog
UnVuIHRoZSBtaWNyb3Rhc2sKKyAgICAgICAgKFdlYkNvcmU6Ok1pY3JvVGFza1Rlc3Q6OmNyZWF0
ZSk6IENyZWF0ZSBhIHRlc3QgbWljcm90YXNrLgorICAgICAgICAqIHRlc3RpbmcvTWljcm9UYXNr
VGVzdC5oOiBBZGQgYSB0ZXN0IGNsYXNzIHRoYXQgaW1wbGVtZW50cyBhIG1pY3JvdGFzay4KKyAg
ICAgICAgKFdlYkNvcmU6Ok1pY3JvVGFza1Rlc3Q6OnJ1bik6CisgICAgICAgIChXZWJDb3JlOjpN
aWNyb1Rhc2tUZXN0OjpjcmVhdGUpOgorCiAyMDE1LTAyLTEzICBTZXJnaW8gVmlsbGFyIFNlbmlu
ICA8c3ZpbGxhckBpZ2FsaWEuY29tPgogCiAgICAgICAgIFtDU1MgR3JpZCBMYXlvdXRdIEludmFs
aWQgaW5pdGlhbGl6YXRpb24gb2YgdHJhY2sgc2l6ZXMgd2l0aCBub24gc3Bhbm5pbmcgZ3JpZCBp
dGVtcwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvQ01ha2VMaXN0cy50eHQgYi9Tb3VyY2Uv
V2ViQ29yZS9DTWFrZUxpc3RzLnR4dAppbmRleCA2NDY2YmE1MTJmZWVjMTM1ZWU3MGMzNzNhMmU1
NjlkNmEwYzFkM2UwLi42MDJhM2VmMDYwYjkwZDVmYWE5NzBhY2EzMjY0MzI3NjNkZDEzMGRkIDEw
MDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9DTWFrZUxpc3RzLnR4dAorKysgYi9Tb3VyY2UvV2Vi
Q29yZS9DTWFrZUxpc3RzLnR4dApAQCAtMTM2OCw2ICsxMzY4LDcgQEAgc2V0KFdlYkNvcmVfU09V
UkNFUwogICAgIGRvbS9NZXNzYWdlRXZlbnQuY3BwCiAgICAgZG9tL01lc3NhZ2VQb3J0LmNwcAog
ICAgIGRvbS9NZXNzYWdlUG9ydENoYW5uZWwuY3BwCisgICAgZG9tL01pY3JvVGFzay5jcHAKICAg
ICBkb20vTW91c2VFdmVudC5jcHAKICAgICBkb20vTW91c2VSZWxhdGVkRXZlbnQuY3BwCiAgICAg
ZG9tL011dGF0aW9uRXZlbnQuY3BwCkBAIC0zMTUwLDYgKzMxNTEsNyBAQCBzZXQoV2ViQ29yZVRl
c3RTdXBwb3J0X1NPVVJDRVMKICAgICB0ZXN0aW5nL0ludGVybmFsU2V0dGluZ3MuY3BwCiAgICAg
dGVzdGluZy9JbnRlcm5hbHMuY3BwCiAKKyAgICB0ZXN0aW5nL01pY3JvVGFza1Rlc3QuY3BwCiAg
ICAgdGVzdGluZy9Nb2NrUGFnZU92ZXJsYXlDbGllbnQuY3BwCiAKICAgICB0ZXN0aW5nL2pzL1dl
YkNvcmVUZXN0U3VwcG9ydC5jcHAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUu
dmN4cHJvai9XZWJDb3JlLnZjeHByb2ogYi9Tb3VyY2UvV2ViQ29yZS9XZWJDb3JlLnZjeHByb2ov
V2ViQ29yZS52Y3hwcm9qCmluZGV4IDE0NDJiMWRhOTk3OWU5Y2MwOGIxZjNiZDIxNmI5NzJmMzVh
NDE0NTYuLjdlODhmZmFjNTYyZGRlNTBjNTI2MzZmMTI2YWE3ZDJhMTg0ZDAzY2MgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUudmN4cHJvai9XZWJDb3JlLnZjeHByb2oKKysrIGIv
U291cmNlL1dlYkNvcmUvV2ViQ29yZS52Y3hwcm9qL1dlYkNvcmUudmN4cHJvagpAQCAtMTM1NzUs
NiArMTM1NzUsNyBAQAogICAgICAgPEV4Y2x1ZGVkRnJvbUJ1aWxkIENvbmRpdGlvbj0iJyQoQ29u
ZmlndXJhdGlvbil8JChQbGF0Zm9ybSknPT0nUHJvZHVjdGlvbnxXaW4zMiciPnRydWU8L0V4Y2x1
ZGVkRnJvbUJ1aWxkPgogICAgICAgPEV4Y2x1ZGVkRnJvbUJ1aWxkIENvbmRpdGlvbj0iJyQoQ29u
ZmlndXJhdGlvbil8JChQbGF0Zm9ybSknPT0nUHJvZHVjdGlvbnx4NjQnIj50cnVlPC9FeGNsdWRl
ZEZyb21CdWlsZD4KICAgICA8L0NsQ29tcGlsZT4KKyAgICA8Q2xDb21waWxlIEluY2x1ZGU9Ii4u
XGRvbVxNaWNyb1Rhc2suY3BwIiAvPgogICAgIDxDbENvbXBpbGUgSW5jbHVkZT0iLi5cZG9tXE1v
dXNlRXZlbnQuY3BwIj4KICAgICAgIDxFeGNsdWRlZEZyb21CdWlsZCBDb25kaXRpb249IickKENv
bmZpZ3VyYXRpb24pfCQoUGxhdGZvcm0pJz09J0RlYnVnfFdpbjMyJyI+dHJ1ZTwvRXhjbHVkZWRG
cm9tQnVpbGQ+CiAgICAgICA8RXhjbHVkZWRGcm9tQnVpbGQgQ29uZGl0aW9uPSInJChDb25maWd1
cmF0aW9uKXwkKFBsYXRmb3JtKSc9PSdEZWJ1Z3x4NjQnIj50cnVlPC9FeGNsdWRlZEZyb21CdWls
ZD4KQEAgLTIwNzUwLDYgKzIwNzUxLDcgQEAKICAgICA8Q2xJbmNsdWRlIEluY2x1ZGU9Ii4uXGRv
bVxNZXNzYWdlRXZlbnQuaCIgLz4KICAgICA8Q2xJbmNsdWRlIEluY2x1ZGU9Ii4uXGRvbVxNZXNz
YWdlUG9ydC5oIiAvPgogICAgIDxDbEluY2x1ZGUgSW5jbHVkZT0iLi5cZG9tXE1lc3NhZ2VQb3J0
Q2hhbm5lbC5oIiAvPgorICAgIDxDbEluY2x1ZGUgSW5jbHVkZT0iLi5cZG9tXE1pY3JvVGFzay5o
IiAvPgogICAgIDxDbEluY2x1ZGUgSW5jbHVkZT0iLi5cZG9tXE1vdXNlRXZlbnQuaCIgLz4KICAg
ICA8Q2xJbmNsdWRlIEluY2x1ZGU9Ii4uXGRvbVxNb3VzZVJlbGF0ZWRFdmVudC5oIiAvPgogICAg
IDxDbEluY2x1ZGUgSW5jbHVkZT0iLi5cZG9tXE11dGF0aW9uRXZlbnQuaCIgLz4KQEAgLTIxNTUw
LDQgKzIxNTUyLDQgQEAKICAgPEltcG9ydEdyb3VwIExhYmVsPSJFeHRlbnNpb25UYXJnZXRzIj4K
ICAgICA8SW1wb3J0IFByb2plY3Q9IiQoVkNUYXJnZXRzUGF0aClcQnVpbGRDdXN0b21pemF0aW9u
c1xtYXNtLnRhcmdldHMiIC8+CiAgIDwvSW1wb3J0R3JvdXA+Ci08L1Byb2plY3Q+ClwgTm8gbmV3
bGluZSBhdCBlbmQgb2YgZmlsZQorPC9Qcm9qZWN0PgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNv
cmUvV2ViQ29yZS52Y3hwcm9qL1dlYkNvcmUudmN4cHJvai5maWx0ZXJzIGIvU291cmNlL1dlYkNv
cmUvV2ViQ29yZS52Y3hwcm9qL1dlYkNvcmUudmN4cHJvai5maWx0ZXJzCmluZGV4IDcyZThhZWU1
NWJhMjEzZDkxMTdlNmM5ZmNmNmM1MmMyNjUzNGQ0ZTIuLjY3OGI0ZDQ4YTEwZTEyY2ZjZmNhNWZk
NDEyYTk0ZTc2YmI1ZGFhMGUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUudmN4
cHJvai9XZWJDb3JlLnZjeHByb2ouZmlsdGVycworKysgYi9Tb3VyY2UvV2ViQ29yZS9XZWJDb3Jl
LnZjeHByb2ovV2ViQ29yZS52Y3hwcm9qLmZpbHRlcnMKQEAgLTMyMDQsNiArMzIwNCw5IEBACiAg
ICAgPENsQ29tcGlsZSBJbmNsdWRlPSIuLlxkb21cTWVzc2FnZVBvcnRDaGFubmVsLmNwcCI+CiAg
ICAgICA8RmlsdGVyPmRvbTwvRmlsdGVyPgogICAgIDwvQ2xDb21waWxlPgorICAgIDxDbENvbXBp
bGUgSW5jbHVkZT0iLi5cZG9tXE1pY3JvVGFzay5jcHAiPgorICAgICAgPEZpbHRlcj5kb208L0Zp
bHRlcj4KKyAgICA8L0NsQ29tcGlsZT4KICAgICA8Q2xDb21waWxlIEluY2x1ZGU9Ii4uXGRvbVxN
b3VzZUV2ZW50LmNwcCI+CiAgICAgICA8RmlsdGVyPmRvbTwvRmlsdGVyPgogICAgIDwvQ2xDb21w
aWxlPgpAQCAtMTAyNjYsNiArMTAyNjksOSBAQAogICAgIDxDbEluY2x1ZGUgSW5jbHVkZT0iLi5c
ZG9tXE1lc3NhZ2VQb3J0Q2hhbm5lbC5oIj4KICAgICAgIDxGaWx0ZXI+ZG9tPC9GaWx0ZXI+CiAg
ICAgPC9DbEluY2x1ZGU+CisgICAgPENsSW5jbHVkZSBJbmNsdWRlPSIuLlxkb21cTWljcm9UYXNr
LmgiPgorICAgICAgPEZpbHRlcj5kb208L0ZpbHRlcj4KKyAgICA8L0NsSW5jbHVkZT4KICAgICA8
Q2xJbmNsdWRlIEluY2x1ZGU9Ii4uXGRvbVxNb3VzZUV2ZW50LmgiPgogICAgICAgPEZpbHRlcj5k
b208L0ZpbHRlcj4KICAgICA8L0NsSW5jbHVkZT4KQEAgLTE1Mzc0LDQgKzE1MzgwLDQgQEAKICAg
ICAgIDxGaWx0ZXI+cGxhdGZvcm1cd2luPC9GaWx0ZXI+CiAgICAgPC9NQVNNPgogICA8L0l0ZW1H
cm91cD4KLTwvUHJvamVjdD4KXCBObyBuZXdsaW5lIGF0IGVuZCBvZiBmaWxlCis8L1Byb2plY3Q+
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9XZWJDb3JlLnZjeHByb2ovV2ViQ29yZVRlc3RT
dXBwb3J0LnZjeHByb2ogYi9Tb3VyY2UvV2ViQ29yZS9XZWJDb3JlLnZjeHByb2ovV2ViQ29yZVRl
c3RTdXBwb3J0LnZjeHByb2oKaW5kZXggZTNkYzgxOWZmOWU1M2IyYTRlMDVlYTAzN2I5YzU5NWM3
Y2Y3NWMxMy4uMTVmZWQ1YmUxMDY0OGQ3NWE4ZGExMGI1NDBkMDgxMzkxNWQyOGU1YiAxMDA2NDQK
LS0tIGEvU291cmNlL1dlYkNvcmUvV2ViQ29yZS52Y3hwcm9qL1dlYkNvcmVUZXN0U3VwcG9ydC52
Y3hwcm9qCisrKyBiL1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUudmN4cHJvai9XZWJDb3JlVGVzdFN1
cHBvcnQudmN4cHJvagpAQCAtNzA2LDYgKzcwNiw2OCBAQAogICAgICAgPEZvcmNlZEluY2x1ZGVG
aWxlcyBDb25kaXRpb249IickKENvbmZpZ3VyYXRpb24pfCQoUGxhdGZvcm0pJz09J1Byb2R1Y3Rp
b258eDY0JyI+CiAgICAgICA8L0ZvcmNlZEluY2x1ZGVGaWxlcz4KICAgICA8L0NsQ29tcGlsZT4K
KyAgICA8Q2xDb21waWxlIEluY2x1ZGU9Ii4uXHRlc3RpbmdcTWljcm9UYXNrVGVzdC5jcHAiPgor
ICAgICAgPFByZWNvbXBpbGVkSGVhZGVyIENvbmRpdGlvbj0iJyQoQ29uZmlndXJhdGlvbil8JChQ
bGF0Zm9ybSknPT0nRGVidWd8V2luMzInIj4KKyAgICAgIDwvUHJlY29tcGlsZWRIZWFkZXI+Cisg
ICAgICA8UHJlY29tcGlsZWRIZWFkZXIgQ29uZGl0aW9uPSInJChDb25maWd1cmF0aW9uKXwkKFBs
YXRmb3JtKSc9PSdEZWJ1Z3x4NjQnIj4KKyAgICAgIDwvUHJlY29tcGlsZWRIZWFkZXI+CisgICAg
ICA8UHJlY29tcGlsZWRIZWFkZXIgQ29uZGl0aW9uPSInJChDb25maWd1cmF0aW9uKXwkKFBsYXRm
b3JtKSc9PSdEZWJ1Z19XaW5DYWlyb3xXaW4zMiciPgorICAgICAgPC9QcmVjb21waWxlZEhlYWRl
cj4KKyAgICAgIDxQcmVjb21waWxlZEhlYWRlciBDb25kaXRpb249IickKENvbmZpZ3VyYXRpb24p
fCQoUGxhdGZvcm0pJz09J0RlYnVnX1dpbkNhaXJvfHg2NCciPgorICAgICAgPC9QcmVjb21waWxl
ZEhlYWRlcj4KKyAgICAgIDxQcmVjb21waWxlZEhlYWRlciBDb25kaXRpb249IickKENvbmZpZ3Vy
YXRpb24pfCQoUGxhdGZvcm0pJz09J0RlYnVnU3VmZml4fFdpbjMyJyI+CisgICAgICA8L1ByZWNv
bXBpbGVkSGVhZGVyPgorICAgICAgPFByZWNvbXBpbGVkSGVhZGVyIENvbmRpdGlvbj0iJyQoQ29u
ZmlndXJhdGlvbil8JChQbGF0Zm9ybSknPT0nRGVidWdTdWZmaXh8eDY0JyI+CisgICAgICA8L1By
ZWNvbXBpbGVkSGVhZGVyPgorICAgICAgPERpc2FibGVTcGVjaWZpY1dhcm5pbmdzIENvbmRpdGlv
bj0iJyQoQ29uZmlndXJhdGlvbil8JChQbGF0Zm9ybSknPT0nRGVidWd8V2luMzInIj40MDY1OzQy
NzM7NDU2NTs0NzAxOzQ3MDI7JShEaXNhYmxlU3BlY2lmaWNXYXJuaW5ncyk8L0Rpc2FibGVTcGVj
aWZpY1dhcm5pbmdzPgorICAgICAgPERpc2FibGVTcGVjaWZpY1dhcm5pbmdzIENvbmRpdGlvbj0i
JyQoQ29uZmlndXJhdGlvbil8JChQbGF0Zm9ybSknPT0nRGVidWd8eDY0JyI+NDA2NTs0MjczOzQ1
NjU7NDcwMTs0NzAyOyUoRGlzYWJsZVNwZWNpZmljV2FybmluZ3MpPC9EaXNhYmxlU3BlY2lmaWNX
YXJuaW5ncz4KKyAgICAgIDxEaXNhYmxlU3BlY2lmaWNXYXJuaW5ncyBDb25kaXRpb249IickKENv
bmZpZ3VyYXRpb24pfCQoUGxhdGZvcm0pJz09J0RlYnVnX1dpbkNhaXJvfFdpbjMyJyI+NDA2NTs0
MjczOzQ1NjU7NDcwMTs0NzAyOyUoRGlzYWJsZVNwZWNpZmljV2FybmluZ3MpPC9EaXNhYmxlU3Bl
Y2lmaWNXYXJuaW5ncz4KKyAgICAgIDxEaXNhYmxlU3BlY2lmaWNXYXJuaW5ncyBDb25kaXRpb249
IickKENvbmZpZ3VyYXRpb24pfCQoUGxhdGZvcm0pJz09J0RlYnVnX1dpbkNhaXJvfHg2NCciPjQw
NjU7NDI3Mzs0NTY1OzQ3MDE7NDcwMjslKERpc2FibGVTcGVjaWZpY1dhcm5pbmdzKTwvRGlzYWJs
ZVNwZWNpZmljV2FybmluZ3M+CisgICAgICA8RGlzYWJsZVNwZWNpZmljV2FybmluZ3MgQ29uZGl0
aW9uPSInJChDb25maWd1cmF0aW9uKXwkKFBsYXRmb3JtKSc9PSdEZWJ1Z1N1ZmZpeHxXaW4zMici
PjQwNjU7NDI3Mzs0NTY1OzQ3MDE7NDcwMjslKERpc2FibGVTcGVjaWZpY1dhcm5pbmdzKTwvRGlz
YWJsZVNwZWNpZmljV2FybmluZ3M+CisgICAgICA8RGlzYWJsZVNwZWNpZmljV2FybmluZ3MgQ29u
ZGl0aW9uPSInJChDb25maWd1cmF0aW9uKXwkKFBsYXRmb3JtKSc9PSdEZWJ1Z1N1ZmZpeHx4NjQn
Ij40MDY1OzQyNzM7NDU2NTs0NzAxOzQ3MDI7JShEaXNhYmxlU3BlY2lmaWNXYXJuaW5ncyk8L0Rp
c2FibGVTcGVjaWZpY1dhcm5pbmdzPgorICAgICAgPEZvcmNlZEluY2x1ZGVGaWxlcyBDb25kaXRp
b249IickKENvbmZpZ3VyYXRpb24pfCQoUGxhdGZvcm0pJz09J0RlYnVnfFdpbjMyJyI+CisgICAg
ICA8L0ZvcmNlZEluY2x1ZGVGaWxlcz4KKyAgICAgIDxGb3JjZWRJbmNsdWRlRmlsZXMgQ29uZGl0
aW9uPSInJChDb25maWd1cmF0aW9uKXwkKFBsYXRmb3JtKSc9PSdEZWJ1Z3x4NjQnIj4KKyAgICAg
IDwvRm9yY2VkSW5jbHVkZUZpbGVzPgorICAgICAgPEZvcmNlZEluY2x1ZGVGaWxlcyBDb25kaXRp
b249IickKENvbmZpZ3VyYXRpb24pfCQoUGxhdGZvcm0pJz09J0RlYnVnX1dpbkNhaXJvfFdpbjMy
JyI+CisgICAgICA8L0ZvcmNlZEluY2x1ZGVGaWxlcz4KKyAgICAgIDxGb3JjZWRJbmNsdWRlRmls
ZXMgQ29uZGl0aW9uPSInJChDb25maWd1cmF0aW9uKXwkKFBsYXRmb3JtKSc9PSdEZWJ1Z19XaW5D
YWlyb3x4NjQnIj4KKyAgICAgIDwvRm9yY2VkSW5jbHVkZUZpbGVzPgorICAgICAgPEZvcmNlZElu
Y2x1ZGVGaWxlcyBDb25kaXRpb249IickKENvbmZpZ3VyYXRpb24pfCQoUGxhdGZvcm0pJz09J0Rl
YnVnU3VmZml4fFdpbjMyJyI+CisgICAgICA8L0ZvcmNlZEluY2x1ZGVGaWxlcz4KKyAgICAgIDxG
b3JjZWRJbmNsdWRlRmlsZXMgQ29uZGl0aW9uPSInJChDb25maWd1cmF0aW9uKXwkKFBsYXRmb3Jt
KSc9PSdEZWJ1Z1N1ZmZpeHx4NjQnIj4KKyAgICAgIDwvRm9yY2VkSW5jbHVkZUZpbGVzPgorICAg
ICAgPFByZWNvbXBpbGVkSGVhZGVyIENvbmRpdGlvbj0iJyQoQ29uZmlndXJhdGlvbil8JChQbGF0
Zm9ybSknPT0nUmVsZWFzZXxXaW4zMiciPgorICAgICAgPC9QcmVjb21waWxlZEhlYWRlcj4KKyAg
ICAgIDxQcmVjb21waWxlZEhlYWRlciBDb25kaXRpb249IickKENvbmZpZ3VyYXRpb24pfCQoUGxh
dGZvcm0pJz09J1JlbGVhc2V8eDY0JyI+CisgICAgICA8L1ByZWNvbXBpbGVkSGVhZGVyPgorICAg
ICAgPFByZWNvbXBpbGVkSGVhZGVyIENvbmRpdGlvbj0iJyQoQ29uZmlndXJhdGlvbil8JChQbGF0
Zm9ybSknPT0nUmVsZWFzZV9XaW5DYWlyb3xXaW4zMiciPgorICAgICAgPC9QcmVjb21waWxlZEhl
YWRlcj4KKyAgICAgIDxQcmVjb21waWxlZEhlYWRlciBDb25kaXRpb249IickKENvbmZpZ3VyYXRp
b24pfCQoUGxhdGZvcm0pJz09J1JlbGVhc2VfV2luQ2Fpcm98eDY0JyI+CisgICAgICA8L1ByZWNv
bXBpbGVkSGVhZGVyPgorICAgICAgPFByZWNvbXBpbGVkSGVhZGVyIENvbmRpdGlvbj0iJyQoQ29u
ZmlndXJhdGlvbil8JChQbGF0Zm9ybSknPT0nUHJvZHVjdGlvbnxXaW4zMiciPgorICAgICAgPC9Q
cmVjb21waWxlZEhlYWRlcj4KKyAgICAgIDxQcmVjb21waWxlZEhlYWRlciBDb25kaXRpb249Iick
KENvbmZpZ3VyYXRpb24pfCQoUGxhdGZvcm0pJz09J1Byb2R1Y3Rpb258eDY0JyI+CisgICAgICA8
L1ByZWNvbXBpbGVkSGVhZGVyPgorICAgICAgPERpc2FibGVTcGVjaWZpY1dhcm5pbmdzIENvbmRp
dGlvbj0iJyQoQ29uZmlndXJhdGlvbil8JChQbGF0Zm9ybSknPT0nUmVsZWFzZXxXaW4zMiciPjQw
NjU7NDI3Mzs0NTY1OzQ3MDE7NDcwMjslKERpc2FibGVTcGVjaWZpY1dhcm5pbmdzKTwvRGlzYWJs
ZVNwZWNpZmljV2FybmluZ3M+CisgICAgICA8RGlzYWJsZVNwZWNpZmljV2FybmluZ3MgQ29uZGl0
aW9uPSInJChDb25maWd1cmF0aW9uKXwkKFBsYXRmb3JtKSc9PSdSZWxlYXNlfHg2NCciPjQwNjU7
NDI3Mzs0NTY1OzQ3MDE7NDcwMjslKERpc2FibGVTcGVjaWZpY1dhcm5pbmdzKTwvRGlzYWJsZVNw
ZWNpZmljV2FybmluZ3M+CisgICAgICA8RGlzYWJsZVNwZWNpZmljV2FybmluZ3MgQ29uZGl0aW9u
PSInJChDb25maWd1cmF0aW9uKXwkKFBsYXRmb3JtKSc9PSdSZWxlYXNlX1dpbkNhaXJvfFdpbjMy
JyI+NDA2NTs0MjczOzQ1NjU7NDcwMTs0NzAyOyUoRGlzYWJsZVNwZWNpZmljV2FybmluZ3MpPC9E
aXNhYmxlU3BlY2lmaWNXYXJuaW5ncz4KKyAgICAgIDxEaXNhYmxlU3BlY2lmaWNXYXJuaW5ncyBD
b25kaXRpb249IickKENvbmZpZ3VyYXRpb24pfCQoUGxhdGZvcm0pJz09J1JlbGVhc2VfV2luQ2Fp
cm98eDY0JyI+NDA2NTs0MjczOzQ1NjU7NDcwMTs0NzAyOyUoRGlzYWJsZVNwZWNpZmljV2Fybmlu
Z3MpPC9EaXNhYmxlU3BlY2lmaWNXYXJuaW5ncz4KKyAgICAgIDxEaXNhYmxlU3BlY2lmaWNXYXJu
aW5ncyBDb25kaXRpb249IickKENvbmZpZ3VyYXRpb24pfCQoUGxhdGZvcm0pJz09J1Byb2R1Y3Rp
b258V2luMzInIj40MDY1OzQyNzM7NDU2NTs0NzAxOzQ3MDI7JShEaXNhYmxlU3BlY2lmaWNXYXJu
aW5ncyk8L0Rpc2FibGVTcGVjaWZpY1dhcm5pbmdzPgorICAgICAgPERpc2FibGVTcGVjaWZpY1dh
cm5pbmdzIENvbmRpdGlvbj0iJyQoQ29uZmlndXJhdGlvbil8JChQbGF0Zm9ybSknPT0nUHJvZHVj
dGlvbnx4NjQnIj40MDY1OzQyNzM7NDU2NTs0NzAxOzQ3MDI7JShEaXNhYmxlU3BlY2lmaWNXYXJu
aW5ncyk8L0Rpc2FibGVTcGVjaWZpY1dhcm5pbmdzPgorICAgICAgPEZvcmNlZEluY2x1ZGVGaWxl
cyBDb25kaXRpb249IickKENvbmZpZ3VyYXRpb24pfCQoUGxhdGZvcm0pJz09J1JlbGVhc2V8V2lu
MzInIj4KKyAgICAgIDwvRm9yY2VkSW5jbHVkZUZpbGVzPgorICAgICAgPEZvcmNlZEluY2x1ZGVG
aWxlcyBDb25kaXRpb249IickKENvbmZpZ3VyYXRpb24pfCQoUGxhdGZvcm0pJz09J1JlbGVhc2V8
eDY0JyI+CisgICAgICA8L0ZvcmNlZEluY2x1ZGVGaWxlcz4KKyAgICAgIDxGb3JjZWRJbmNsdWRl
RmlsZXMgQ29uZGl0aW9uPSInJChDb25maWd1cmF0aW9uKXwkKFBsYXRmb3JtKSc9PSdSZWxlYXNl
X1dpbkNhaXJvfFdpbjMyJyI+CisgICAgICA8L0ZvcmNlZEluY2x1ZGVGaWxlcz4KKyAgICAgIDxG
b3JjZWRJbmNsdWRlRmlsZXMgQ29uZGl0aW9uPSInJChDb25maWd1cmF0aW9uKXwkKFBsYXRmb3Jt
KSc9PSdSZWxlYXNlX1dpbkNhaXJvfHg2NCciPgorICAgICAgPC9Gb3JjZWRJbmNsdWRlRmlsZXM+
CisgICAgICA8Rm9yY2VkSW5jbHVkZUZpbGVzIENvbmRpdGlvbj0iJyQoQ29uZmlndXJhdGlvbil8
JChQbGF0Zm9ybSknPT0nUHJvZHVjdGlvbnxXaW4zMiciPgorICAgICAgPC9Gb3JjZWRJbmNsdWRl
RmlsZXM+CisgICAgICA8Rm9yY2VkSW5jbHVkZUZpbGVzIENvbmRpdGlvbj0iJyQoQ29uZmlndXJh
dGlvbil8JChQbGF0Zm9ybSknPT0nUHJvZHVjdGlvbnx4NjQnIj4KKyAgICAgIDwvRm9yY2VkSW5j
bHVkZUZpbGVzPgorICAgIDwvQ2xDb21waWxlPgogICAgIDxDbENvbXBpbGUgSW5jbHVkZT0iLi5c
dGVzdGluZ1xNb2NrUGFnZU92ZXJsYXlDbGllbnQuY3BwIj4KICAgICAgIDxQcmVjb21waWxlZEhl
YWRlciBDb25kaXRpb249IickKENvbmZpZ3VyYXRpb24pfCQoUGxhdGZvcm0pJz09J0RlYnVnfFdp
bjMyJyI+CiAgICAgICA8L1ByZWNvbXBpbGVkSGVhZGVyPgpAQCAtOTE3LDYgKzk3OSw3IEBACiAg
ICAgPENsSW5jbHVkZSBJbmNsdWRlPSIkKENvbmZpZ3VyYXRpb25CdWlsZERpcilcb2JqJChQbGF0
Zm9ybUFyY2hpdGVjdHVyZSlcV2ViQ29yZVxEZXJpdmVkU291cmNlc1xKU0ludGVybmFsU2V0dGlu
Z3NHZW5lcmF0ZWQuaCIgLz4KICAgICA8Q2xJbmNsdWRlIEluY2x1ZGU9Ii4uXHRlc3RpbmdcTWFs
bG9jU3RhdGlzdGljcy5oIiAvPgogICAgIDxDbEluY2x1ZGUgSW5jbHVkZT0iLi5cdGVzdGluZ1xN
ZW1vcnlJbmZvLmgiIC8+CisgICAgPENsSW5jbHVkZSBJbmNsdWRlPSIuLlx0ZXN0aW5nXE1pY3Jv
VGFza1Rlc3QuaCIgLz4KICAgICA8Q2xJbmNsdWRlIEluY2x1ZGU9Ii4uXHRlc3RpbmdcTW9ja0NE
TS5oIiAvPgogICAgIDxDbEluY2x1ZGUgSW5jbHVkZT0iLi5cdGVzdGluZ1xNb2NrUGFnZU92ZXJs
YXlDbGllbnQuaCIgLz4KICAgICA8Q2xJbmNsdWRlIEluY2x1ZGU9Ii4uXHRlc3RpbmdcVHlwZUNv
bnZlcnNpb25zLmgiIC8+CkBAIC05MjgsNCArOTkxLDQgQEAKICAgPEltcG9ydCBQcm9qZWN0PSIk
KFZDVGFyZ2V0c1BhdGgpXE1pY3Jvc29mdC5DcHAudGFyZ2V0cyIgLz4KICAgPEltcG9ydEdyb3Vw
IExhYmVsPSJFeHRlbnNpb25UYXJnZXRzIj4KICAgPC9JbXBvcnRHcm91cD4KLTwvUHJvamVjdD4K
XCBObyBuZXdsaW5lIGF0IGVuZCBvZiBmaWxlCis8L1Byb2plY3Q+CmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViQ29yZS9XZWJDb3JlLnZjeHByb2ovV2ViQ29yZVRlc3RTdXBwb3J0LnZjeHByb2ouZmls
dGVycyBiL1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUudmN4cHJvai9XZWJDb3JlVGVzdFN1cHBvcnQu
dmN4cHJvai5maWx0ZXJzCmluZGV4IDY0MDJkNWU0ZTBiNTY0OTE5N2RmODUwM2IyNDA0ZjFkMTIw
OGY2NjkuLjc2MjhmMjdmZTAxYTA3MTgzMDk1YTc5Y2ExNDA3YWZmMzQyYzk1MDggMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUudmN4cHJvai9XZWJDb3JlVGVzdFN1cHBvcnQudmN4
cHJvai5maWx0ZXJzCisrKyBiL1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUudmN4cHJvai9XZWJDb3Jl
VGVzdFN1cHBvcnQudmN4cHJvai5maWx0ZXJzCkBAIC0zOSw2ICszOSw5IEBACiAgICAgPENsQ29t
cGlsZSBJbmNsdWRlPSIuLlx0ZXN0aW5nXGpzXFdlYkNvcmVUZXN0U3VwcG9ydC5jcHAiPgogICAg
ICAgPEZpbHRlcj50ZXN0aW5nPC9GaWx0ZXI+CiAgICAgPC9DbENvbXBpbGU+CisgICAgPENsQ29t
cGlsZSBJbmNsdWRlPSIuLlx0ZXN0aW5nXE1pY3JvVGFza1Rlc3QuY3BwIj4KKyAgICAgIDxGaWx0
ZXI+dGVzdGluZzwvRmlsdGVyPgorICAgIDwvQ2xDb21waWxlPgogICAgIDxDbENvbXBpbGUgSW5j
bHVkZT0iLi5cdGVzdGluZ1xNb2NrQ0RNLmNwcCI+CiAgICAgICA8RmlsdGVyPnRlc3Rpbmc8L0Zp
bHRlcj4KICAgICA8L0NsQ29tcGlsZT4KQEAgLTg3LDYgKzkwLDkgQEAKICAgICAgIDxGaWx0ZXI+
dGVzdGluZzwvRmlsdGVyPgogICAgIDwvQ2xJbmNsdWRlPgogICAgIDxDbEluY2x1ZGUgSW5jbHVk
ZT0iLi5cY29uZmlnLmgiIC8+CisgICAgPENsSW5jbHVkZSBJbmNsdWRlPSIuLlx0ZXN0aW5nXE1p
Y3JvVGFza1Rlc3QuaCI+CisgICAgICA8RmlsdGVyPnRlc3Rpbmc8L0ZpbHRlcj4KKyAgICA8L0Ns
SW5jbHVkZT4KICAgICA8Q2xJbmNsdWRlIEluY2x1ZGU9Ii4uXHRlc3RpbmdcTW9ja0NETS5oIj4K
ICAgICAgIDxGaWx0ZXI+dGVzdGluZzwvRmlsdGVyPgogICAgIDwvQ2xJbmNsdWRlPgpAQCAtOTQs
NCArMTAwLDQgQEAKICAgICAgIDxGaWx0ZXI+dGVzdGluZzwvRmlsdGVyPgogICAgIDwvQ2xJbmNs
dWRlPgogICA8L0l0ZW1Hcm91cD4KLTwvUHJvamVjdD4KXCBObyBuZXdsaW5lIGF0IGVuZCBvZiBm
aWxlCis8L1Byb2plY3Q+CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9XZWJDb3JlLnhjb2Rl
cHJvai9wcm9qZWN0LnBieHByb2ogYi9Tb3VyY2UvV2ViQ29yZS9XZWJDb3JlLnhjb2RlcHJvai9w
cm9qZWN0LnBieHByb2oKaW5kZXggZThjOTdhNjIzZmU2NDQ0YmFmYzNkZWE3MWVjZTU0NGVkM2Qx
ZDAxNS4uMDg2ZTFlMTk2NDE1NDk2YTFlZWY2NThhYTVhZjk3ZGJmMjM5YTE0MSAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYkNvcmUvV2ViQ29yZS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qCisrKyBi
L1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvagpAQCAtMjA4
NCw2ICsyMDg0LDcgQEAKIAkJNTM2RDVBMjMxOTNFOEUwQzAwQ0U0Q0FCIC8qIFBhcnNpbmdVdGls
aXRpZXMuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDUz
NkQ1QTIyMTkzRThFMEMwMENFNENBQiAvKiBQYXJzaW5nVXRpbGl0aWVzLmggKi87IH07CiAJCTUz
NkQ1QTI1MTkzRjQwRkMwMENFNENBQiAvKiBTb3VyY2VTaXplTGlzdC5jcHAgaW4gU291cmNlcyAq
LyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA1MzZENUEyNDE5M0Y0MEZDMDBDRTRD
QUIgLyogU291cmNlU2l6ZUxpc3QuY3BwICovOyB9OwogCQk1MzZENUEyNzE5M0Y0MTBCMDBDRTRD
QUIgLyogU291cmNlU2l6ZUxpc3QuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmls
ZTsgZmlsZVJlZiA9IDUzNkQ1QTI2MTkzRjQxMEIwMENFNENBQiAvKiBTb3VyY2VTaXplTGlzdC5o
ICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CisJCTUzQjg5
NUFGMTlEQzdFRDkwMDlDQUE5MyAvKiBNaWNyb1Rhc2suaCBpbiBIZWFkZXJzICovID0ge2lzYSA9
IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDUzQjg5NUFEMTlEQzdDMzcwMDlDQUE5MyAvKiBNaWNy
b1Rhc2suaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQdWJsaWMsICk7IH07IH07CiAJ
CTUzQzgyOThEMTNEOEQ5MjcwMERFMkRFQiAvKiBSZW5kZXJGbGV4aWJsZUJveC5jcHAgaW4gU291
cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA1M0M4Mjk4QjEzRDhEOTI3
MDBERTJERUIgLyogUmVuZGVyRmxleGlibGVCb3guY3BwICovOyB9OwogCQk1M0M4Mjk4RTEzRDhE
OTI3MDBERTJERUIgLyogUmVuZGVyRmxleGlibGVCb3guaCBpbiBIZWFkZXJzICovID0ge2lzYSA9
IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDUzQzgyOThDMTNEOEQ5MjcwMERFMkRFQiAvKiBSZW5k
ZXJGbGV4aWJsZUJveC5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7
IH07IH07CiAJCTUzRTI5RTVFMTY3QThBMTkwMDU4NkQzRCAvKiBJbnRlcm5hbFNldHRpbmdzR2Vu
ZXJhdGVkLmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9
IDUzRTI5RTVDMTY3QThBMTkwMDU4NkQzRCAvKiBJbnRlcm5hbFNldHRpbmdzR2VuZXJhdGVkLmNw
cCAqLzsgfTsKQEAgLTU2MTIsNiArNTYxMyw5IEBACiAJCUNBM0JGNjdFMTBEOTlCQUUwMEU2Q0U1
MyAvKiBTY3JvbGxBbmltYXRvci5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxl
OyBmaWxlUmVmID0gQ0EzQkY2N0QxMEQ5OUJBRTAwRTZDRTUzIC8qIFNjcm9sbEFuaW1hdG9yLmgg
Ki87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKIAkJQ0FFOUY5
MEYxNDY0NDFGMDAwQzI0NUIwIC8qIENTU0FzcGVjdFJhdGlvVmFsdWUuY3BwIGluIFNvdXJjZXMg
Ki8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQ0FFOUY5MEQxNDY0NDFGMDAwQzI0
NUIwIC8qIENTU0FzcGVjdFJhdGlvVmFsdWUuY3BwICovOyB9OwogCQlDQUU5RjkxMDE0NjQ0MUYw
MDBDMjQ1QjAgLyogQ1NTQXNwZWN0UmF0aW9WYWx1ZS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0g
UEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQ0FFOUY5MEUxNDY0NDFGMDAwQzI0NUIwIC8qIENTU0Fz
cGVjdFJhdGlvVmFsdWUuaCAqLzsgfTsKKwkJQ0I4Q0YwMTgxQTkzNThENDAwMEQ1MTBCIC8qIE1p
Y3JvVGFzay5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYg
PSBDQjhDRjAxNTFBOTM0QjQzMDAwRDUxMEIgLyogTWljcm9UYXNrLmNwcCAqLzsgfTsKKwkJQ0I4
Q0YwMUQxQTk1REU0MjAwMEQ1MTBCIC8qIE1pY3JvVGFza1Rlc3QuaCBpbiBIZWFkZXJzICovID0g
e2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IENCOENGMDFDMUE5NURFNDIwMDBENTEwQiAv
KiBNaWNyb1Rhc2tUZXN0LmggKi87IH07CisJCUNCOENGMDFGMUE5NURFNTkwMDBENTEwQiAvKiBN
aWNyb1Rhc2tUZXN0LmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmls
ZVJlZiA9IENCOENGMDFFMUE5NURFNTkwMDBENTEwQiAvKiBNaWNyb1Rhc2tUZXN0LmNwcCAqLzsg
fTsKIAkJQ0NDMkI1MTQxNUY2MTMwNjAwNDhDREQ2IC8qIERldmljZUNsaWVudC5oIGluIEhlYWRl
cnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQ0NDMkI1MTAxNUY2MTMwNjAw
NDhDREQ2IC8qIERldmljZUNsaWVudC5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFBy
aXZhdGUsICk7IH07IH07CiAJCUNDQzJCNTE1MTVGNjEzMDYwMDQ4Q0RENiAvKiBEZXZpY2VDb250
cm9sbGVyLmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9
IENDQzJCNTExMTVGNjEzMDYwMDQ4Q0RENiAvKiBEZXZpY2VDb250cm9sbGVyLmNwcCAqLzsgfTsK
IAkJQ0NDMkI1MTYxNUY2MTMwNjAwNDhDREQ2IC8qIERldmljZUNvbnRyb2xsZXIuaCBpbiBIZWFk
ZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IENDQzJCNTEyMTVGNjEzMDYw
MDQ4Q0RENiAvKiBEZXZpY2VDb250cm9sbGVyLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMg
PSAoUHJpdmF0ZSwgKTsgfTsgfTsKQEAgLTkyMjYsNiArOTIzMCw3IEBACiAJCTUzNkQ1QTIyMTkz
RThFMEMwMENFNENBQiAvKiBQYXJzaW5nVXRpbGl0aWVzLmggKi8gPSB7aXNhID0gUEJYRmlsZVJl
ZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2Rl
LmMuaDsgbmFtZSA9IFBhcnNpbmdVdGlsaXRpZXMuaDsgcGF0aCA9IHBhcnNlci9QYXJzaW5nVXRp
bGl0aWVzLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTUzNkQ1QTI0MTkzRjQwRkMw
MENFNENBQiAvKiBTb3VyY2VTaXplTGlzdC5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5j
ZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5j
cHA7IHBhdGggPSBTb3VyY2VTaXplTGlzdC5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07
CiAJCTUzNkQ1QTI2MTkzRjQxMEIwMENFNENBQiAvKiBTb3VyY2VTaXplTGlzdC5oICovID0ge2lz
YSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBl
ID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBTb3VyY2VTaXplTGlzdC5oOyBzb3VyY2VUcmVlID0g
Ijxncm91cD4iOyB9OworCQk1M0I4OTVBRDE5REM3QzM3MDA5Q0FBOTMgLyogTWljcm9UYXNrLmgg
Ki8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3du
RmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IE1pY3JvVGFzay5oOyBzb3VyY2VUcmVl
ID0gIjxncm91cD4iOyB9OwogCQk1M0M4Mjk4QjEzRDhEOTI3MDBERTJERUIgLyogUmVuZGVyRmxl
eGlibGVCb3guY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9
IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gUmVuZGVy
RmxleGlibGVCb3guY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQk1M0M4Mjk4QzEz
RDhEOTI3MDBERTJERUIgLyogUmVuZGVyRmxleGlibGVCb3guaCAqLyA9IHtpc2EgPSBQQlhGaWxl
UmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNv
ZGUuYy5oOyBwYXRoID0gUmVuZGVyRmxleGlibGVCb3guaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+
IjsgfTsKIAkJNTNFMjlFNUMxNjdBOEExOTAwNTg2RDNEIC8qIEludGVybmFsU2V0dGluZ3NHZW5l
cmF0ZWQuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7
IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gSW50ZXJuYWxT
ZXR0aW5nc0dlbmVyYXRlZC5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CkBAIC0xMzA3
Miw2ICsxMzA3Nyw5IEBACiAJCUNBM0JGNjdEMTBEOTlCQUUwMEU2Q0U1MyAvKiBTY3JvbGxBbmlt
YXRvci5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxh
c3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBTY3JvbGxBbmltYXRvci5o
OyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQlDQUU5RjkwRDE0NjQ0MUYwMDBDMjQ1QjAg
LyogQ1NTQXNwZWN0UmF0aW9WYWx1ZS5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsg
ZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7
IHBhdGggPSBDU1NBc3BlY3RSYXRpb1ZhbHVlLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+Ijsg
fTsKIAkJQ0FFOUY5MEUxNDY0NDFGMDAwQzI0NUIwIC8qIENTU0FzcGVjdFJhdGlvVmFsdWUuaCAq
LyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25G
aWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gQ1NTQXNwZWN0UmF0aW9WYWx1ZS5oOyBz
b3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlDQjhDRjAxNTFBOTM0QjQzMDAwRDUxMEIgLyog
TWljcm9UYXNrLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rpbmcg
PSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IE1pY3Jv
VGFzay5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUNCOENGMDFDMUE5NURFNDIw
MDBENTEwQiAvKiBNaWNyb1Rhc2tUZXN0LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsg
ZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0
aCA9IE1pY3JvVGFza1Rlc3QuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQ0I4Q0Yw
MUUxQTk1REU1OTAwMEQ1MTBCIC8qIE1pY3JvVGFza1Rlc3QuY3BwICovID0ge2lzYSA9IFBCWEZp
bGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNl
Y29kZS5jcHAuY3BwOyBwYXRoID0gTWljcm9UYXNrVGVzdC5jcHA7IHNvdXJjZVRyZWUgPSAiPGdy
b3VwPiI7IH07CiAJCUNDQzJCNTEwMTVGNjEzMDYwMDQ4Q0RENiAvKiBEZXZpY2VDbGllbnQuaCAq
LyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25G
aWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gRGV2aWNlQ2xpZW50Lmg7IHNvdXJjZVRy
ZWUgPSAiPGdyb3VwPiI7IH07CiAJCUNDQzJCNTExMTVGNjEzMDYwMDQ4Q0RENiAvKiBEZXZpY2VD
b250cm9sbGVyLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rpbmcg
PSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IERldmlj
ZUNvbnRyb2xsZXIuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQlDQ0MyQjUxMjE1
RjYxMzA2MDA0OENERDYgLyogRGV2aWNlQ29udHJvbGxlci5oICovID0ge2lzYSA9IFBCWEZpbGVS
ZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29k
ZS5jLmg7IHBhdGggPSBEZXZpY2VDb250cm9sbGVyLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7
IH07CkBAIC0xNTY1Nyw2ICsxNTY2NSw4IEBACiAJCQkJQTdCRjdFREQxNEM5MTc1QTAwMTQ0ODlE
IC8qIEludGVybmFsU2V0dGluZ3MuaCAqLywKIAkJCQlBN0JGN0VERTE0QzkxNzVBMDAxNDQ4OUQg
LyogSW50ZXJuYWxTZXR0aW5ncy5pZGwgKi8sCiAJCQkJQTdCRTdFREQxNEM5MTc1QTAwMTQ0ODlE
IC8qIE1hbGxvY1N0YXRpc3RpY3MuaCAqLywKKwkJCQlDQjhDRjAxRTFBOTVERTU5MDAwRDUxMEIg
LyogTWljcm9UYXNrVGVzdC5jcHAgKi8sCisJCQkJQ0I4Q0YwMUMxQTk1REU0MjAwMEQ1MTBCIC8q
IE1pY3JvVGFza1Rlc3QuaCAqLywKIAkJCQlBN0JFN0VERTE0QzkxNzVBMDAxNDQ4OUQgLyogTWFs
bG9jU3RhdGlzdGljcy5pZGwgKi8sCiAJCQkJQ0Q1MzkzQ0IxNzVEQ0NFNjAwQzA3MTIzIC8qIE1l
bW9yeUluZm8uaCAqLywKIAkJCQlDRDUzOTNDQzE3NURDQ0U2MDBDMDcxMjMgLyogTWVtb3J5SW5m
by5pZGwgKi8sCkBAIC0yMjg1Nyw2ICsyMjg2Nyw4IEBACiAJCQkJRTFBREVDQkQwRTc2QUNGMTAw
NEExQTVFIC8qIE1lc3NhZ2VQb3J0LmggKi8sCiAJCQkJRTFBREVDQzYwRTc2QUQxRjAwNEExQTVF
IC8qIE1lc3NhZ2VQb3J0LmlkbCAqLywKIAkJCQk0MUJGNzAwQTBGRTg2RjQ5MDA1RThERUMgLyog
TWVzc2FnZVBvcnRDaGFubmVsLmggKi8sCisJCQkJNTNCODk1QUQxOURDN0MzNzAwOUNBQTkzIC8q
IE1pY3JvVGFzay5oICovLAorCQkJCUNCOENGMDE1MUE5MzRCNDMwMDBENTEwQiAvKiBNaWNyb1Rh
c2suY3BwICovLAogCQkJCTg1MDMxQjJGMEE0NEVGQzcwMEY5OTJFMCAvKiBNb3VzZUV2ZW50LmNw
cCAqLywKIAkJCQk4NTAzMUIzMDBBNDRFRkM3MDBGOTkyRTAgLyogTW91c2VFdmVudC5oICovLAog
CQkJCTE0MUI5NEU1MDlFQzQyMjMwMDBFOTQxMyAvKiBNb3VzZUV2ZW50LmlkbCAqLywKQEAgLTIz
NDIxLDYgKzIzNDMzLDcgQEAKIAkJCQk1M0VEM0ZERjE2N0E4OEU3MDA2NzYyRTYgLyogSlNJbnRl
cm5hbFNldHRpbmdzR2VuZXJhdGVkLmggaW4gSGVhZGVycyAqLywKIAkJCQlBNzQwQjU5NTE0Qzkz
NUFCMDBBNzdGQTQgLyogSlNNYWxsb2NTdGF0aXN0aWNzLmggaW4gSGVhZGVycyAqLywKIAkJCQlD
RDUzOTNENDE3NUUwMTg2MDBDMDcxMjMgLyogSlNNZW1vcnlJbmZvLmggaW4gSGVhZGVycyAqLywK
KwkJCQlDQjhDRjAxRDFBOTVERTQyMDAwRDUxMEIgLyogTWljcm9UYXNrVGVzdC5oIGluIEhlYWRl
cnMgKi8sCiAJCQkJRUJGNTEyMUQxNjk2NDk2QzAwNTZCRDI1IC8qIEpTVHlwZUNvbnZlcnNpb25z
LmggaW4gSGVhZGVycyAqLywKIAkJCQlDREMyNkI0MTE2MEE4Q0NFMDAyNjc1N0IgLyogTW9ja0NE
TS5oIGluIEhlYWRlcnMgKi8sCiAJCQkJMkQ5N0YwNDgxOURENDE0MDAwMUVFOUMzIC8qIE1vY2tQ
YWdlT3ZlcmxheUNsaWVudC5oIGluIEhlYWRlcnMgKi8sCkBAIC0yNTgzMSw2ICsyNTg0NCw3IEBA
CiAJCQkJNTNDODI5OEUxM0Q4RDkyNzAwREUyREVCIC8qIFJlbmRlckZsZXhpYmxlQm94LmggaW4g
SGVhZGVycyAqLywKIAkJCQk1MDhDQ0E0RjEzQ0YxMDZCMDAzMTUxRjMgLyogUmVuZGVyRmxvd1Ro
cmVhZC5oIGluIEhlYWRlcnMgKi8sCiAJCQkJQTg3MURFRDMwQTE1MzBDNzAwQjEyQTY4IC8qIFJl
bmRlckZyYW1lLmggaW4gSGVhZGVycyAqLywKKwkJCQk1M0I4OTVBRjE5REM3RUQ5MDA5Q0FBOTMg
LyogTWljcm9UYXNrLmggaW4gSGVhZGVycyAqLywKIAkJCQkwRkQzMDgwRjExN0NGN0U3MDBBNzkx
RjcgLyogUmVuZGVyRnJhbWVCYXNlLmggaW4gSGVhZGVycyAqLywKIAkJCQlBODcxREVEMTBBMTUz
MEM3MDBCMTJBNjggLyogUmVuZGVyRnJhbWVTZXQuaCBpbiBIZWFkZXJzICovLAogCQkJCUNERUE3
Qzg0MTI3NjIzMDQwMEI4NDZERCAvKiBSZW5kZXJGdWxsU2NyZWVuLmggaW4gSGVhZGVycyAqLywK
QEAgLTI3MTkyLDYgKzI3MjA2LDcgQEAKIAkJCQk1M0UyOUU1RTE2N0E4QTE5MDA1ODZEM0QgLyog
SW50ZXJuYWxTZXR0aW5nc0dlbmVyYXRlZC5jcHAgaW4gU291cmNlcyAqLywKIAkJCQk0MTdEQTcx
RDEzNzM1REZBMDA3QzU3RkIgLyogSlNJbnRlcm5hbHMuY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJ
QTc0MEI1QTcxNEM5MzVBRjAwQTc3RkE0IC8qIEpTSW50ZXJuYWxTZXR0aW5ncy5jcHAgaW4gU291
cmNlcyAqLywKKwkJCQlDQjhDRjAxRjFBOTVERTU5MDAwRDUxMEIgLyogTWljcm9UYXNrVGVzdC5j
cHAgaW4gU291cmNlcyAqLywKIAkJCQk1M0VEM0ZERTE2N0E4OEU3MDA2NzYyRTYgLyogSlNJbnRl
cm5hbFNldHRpbmdzR2VuZXJhdGVkLmNwcCBpbiBTb3VyY2VzICovLAogCQkJCUE3NDBCNTk3MTRD
OTM1QUYwMEE3N0ZBNCAvKiBKU01hbGxvY1N0YXRpc3RpY3MuY3BwIGluIFNvdXJjZXMgKi8sCiAJ
CQkJQ0Q1MzkzRDMxNzVFMDE4NjAwQzA3MTIzIC8qIEpTTWVtb3J5SW5mby5jcHAgaW4gU291cmNl
cyAqLywKQEAgLTI5ODI5LDYgKzI5ODQ0LDcgQEAKIAkJCQlCMjIyN0E5MDBEMDBCRjIyMDA3MUI3
ODIgLyogU1ZHUG9seWdvbkVsZW1lbnQuY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJQjIyMjdBOTMw
RDAwQkYyMjAwNzFCNzgyIC8qIFNWR1BvbHlsaW5lRWxlbWVudC5jcHAgaW4gU291cmNlcyAqLywK
IAkJCQlCMjIyN0E5NjBEMDBCRjIyMDA3MUI3ODIgLyogU1ZHUHJlc2VydmVBc3BlY3RSYXRpby5j
cHAgaW4gU291cmNlcyAqLywKKwkJCQlDQjhDRjAxODFBOTM1OEQ0MDAwRDUxMEIgLyogTWljcm9U
YXNrLmNwcCBpbiBTb3VyY2VzICovLAogCQkJCUI1NDNCODU3MTdFQjc1OEYwMDNCRTkzQSAvKiBT
VkdQcm9wZXJ0eUluZm8uY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJQjIyMjdBOTkwRDAwQkYyMjAw
NzFCNzgyIC8qIFNWR1JhZGlhbEdyYWRpZW50RWxlbWVudC5jcHAgaW4gU291cmNlcyAqLywKIAkJ
CQlCMjIyN0E5RDBEMDBCRjIyMDA3MUI3ODIgLyogU1ZHUmVjdEVsZW1lbnQuY3BwIGluIFNvdXJj
ZXMgKi8sCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9kb20vRG9jdW1lbnQuaCBiL1NvdXJj
ZS9XZWJDb3JlL2RvbS9Eb2N1bWVudC5oCmluZGV4IDc2ZmIxYjc5Y2NlYmM0Njg1MTNhYzU2ZWIw
YjQzODBmZjlmM2QwZTMuLjBhNDEyNTYwNTY3ODZlNmJmNzk3ZTM1ZDc0YjdlNzQ2OTBmYzVkYjkg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2RvbS9Eb2N1bWVudC5oCisrKyBiL1NvdXJjZS9X
ZWJDb3JlL2RvbS9Eb2N1bWVudC5oCkBAIC0xMjYwLDcgKzEyNjAsNyBAQCBwdWJsaWM6CiAgICAg
dm9pZCBhZGREaXNhYmxlZEZpZWxkc2V0RWxlbWVudCgpIHsgbV9kaXNhYmxlZEZpZWxkc2V0RWxl
bWVudHNDb3VudCsrOyB9CiAgICAgdm9pZCByZW1vdmVEaXNhYmxlZEZpZWxkc2V0RWxlbWVudCgp
IHsgQVNTRVJUKG1fZGlzYWJsZWRGaWVsZHNldEVsZW1lbnRzQ291bnQpOyBtX2Rpc2FibGVkRmll
bGRzZXRFbGVtZW50c0NvdW50LS07IH0KIAotICAgIHZpcnR1YWwgdm9pZCBhZGRDb25zb2xlTWVz
c2FnZShNZXNzYWdlU291cmNlLCBNZXNzYWdlTGV2ZWwsIGNvbnN0IFN0cmluZyYgbWVzc2FnZSwg
dW5zaWduZWQgbG9uZyByZXF1ZXN0SWRlbnRpZmllciA9IDApIG92ZXJyaWRlIGZpbmFsOworICAg
IFdFQkNPUkVfRVhQT1JUIHZpcnR1YWwgdm9pZCBhZGRDb25zb2xlTWVzc2FnZShNZXNzYWdlU291
cmNlLCBNZXNzYWdlTGV2ZWwsIGNvbnN0IFN0cmluZyYgbWVzc2FnZSwgdW5zaWduZWQgbG9uZyBy
ZXF1ZXN0SWRlbnRpZmllciA9IDApIG92ZXJyaWRlIGZpbmFsOwogCiAgICAgV0VCQ09SRV9FWFBP
UlQgdmlydHVhbCBTZWN1cml0eU9yaWdpbiogdG9wT3JpZ2luKCkgY29uc3Qgb3ZlcnJpZGUgZmlu
YWw7CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2RvbS9NaWNyb1Rhc2suY3BwIGIvU291
cmNlL1dlYkNvcmUvZG9tL01pY3JvVGFzay5jcHAKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXgg
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uYzc4NmUzNWE2Zjk3ZmZh
NDdmOTYwMmI3M2JjMzI1NmE3NmJjNmUyYgotLS0gL2Rldi9udWxsCisrKyBiL1NvdXJjZS9XZWJD
b3JlL2RvbS9NaWNyb1Rhc2suY3BwCkBAIC0wLDAgKzEsNTIgQEAKKy8qCisgKiBDb3B5cmlnaHQg
KEMpIDIwMTQgWW9hdiBXZWlzcyAoeW9hdkB5b2F2LndzKQorICogQ29weXJpZ2h0IChDKSAyMDE1
IEFrYW1haSBUZWNobm9sb2dpZXMgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICoKKyAqIFRo
aXMgbGlicmFyeSBpcyBmcmVlIHNvZnR3YXJlOyB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQv
b3IKKyAqIG1vZGlmeSBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBMaWJyYXJ5IEdlbmVy
YWwgUHVibGljCisgKiBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieSB0aGUgRnJlZSBTb2Z0d2FyZSBG
b3VuZGF0aW9uOyBlaXRoZXIKKyAqIHZlcnNpb24gMiBvZiB0aGUgTGljZW5zZSwgb3IgKGF0IHlv
dXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KKyAqCisgKiBUaGlzIGxpYnJhcnkgaXMgZGlz
dHJpYnV0ZWQgaW4gdGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCwKKyAqIGJ1dCBXSVRI
T1VUIEFOWSBXQVJSQU5UWTsgd2l0aG91dCBldmVuIHRoZSBpbXBsaWVkIHdhcnJhbnR5IG9mCisg
KiBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBT
ZWUgdGhlIEdOVQorICogTGlicmFyeSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGZvciBtb3JlIGRl
dGFpbHMuCisgKgorICogWW91IHNob3VsZCBoYXZlIHJlY2VpdmVkIGEgY29weSBvZiB0aGUgR05V
IExpYnJhcnkgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQorICogYWxvbmcgd2l0aCB0aGlzIGxpYnJh
cnk7IHNlZSB0aGUgZmlsZSBDT1BZSU5HLkxJQi4gIElmIG5vdCwgd3JpdGUgdG8KKyAqIHRoZSBG
cmVlIFNvZnR3YXJlIEZvdW5kYXRpb24sIEluYy4sIDUxIEZyYW5rbGluIFN0cmVldCwgRmlmdGgg
Rmxvb3IsCisgKiBCb3N0b24sIE1BIDAyMTEwLTEzMDEsIFVTQS4KKyAqCisgKi8KKworI2luY2x1
ZGUgImNvbmZpZy5oIgorI2luY2x1ZGUgIk1pY3JvVGFzay5oIgorCisjaW5jbHVkZSAiRG9jdW1l
bnQuaCIKKyNpbmNsdWRlIDx3dGYvdGV4dC9TdHJpbmdCdWlsZGVyLmg+CisKK25hbWVzcGFjZSBX
ZWJDb3JlIHsKKworTWljcm9UYXNrUXVldWUmIE1pY3JvVGFza1F1ZXVlOjpzaW5nbGV0b24oKQor
eworICAgIEFTU0VSVChpc01haW5UaHJlYWQoKSk7CisgICAgc3RhdGljIE5ldmVyRGVzdHJveWVk
PE1pY3JvVGFza1F1ZXVlPiBxdWV1ZTsKKyAgICByZXR1cm4gcXVldWU7Cit9CisKK3ZvaWQgTWlj
cm9UYXNrUXVldWU6OnF1ZXVlTWljcm9UYXNrKHN0ZDo6dW5pcXVlX3B0cjxNaWNyb1Rhc2s+IHRh
c2spCit7CisgICAgQVNTRVJUKGlzTWFpblRocmVhZCgpKTsKKyAgICBtX21pY3JvVGFza1F1ZXVl
LmFwcGVuZChXVEY6Om1vdmUodGFzaykpOworfQorCit2b2lkIE1pY3JvVGFza1F1ZXVlOjpydW5N
aWNyb1Rhc2tzKCkKK3sKKyAgICBBU1NFUlQoaXNNYWluVGhyZWFkKCkpOworICAgIGZvciAoYXV0
byYgdGFzayA6IG1fbWljcm9UYXNrUXVldWUpCisgICAgICAgIHRhc2stPnJ1bigpOworICAgIG1f
bWljcm9UYXNrUXVldWUuY2xlYXIoKTsKK30KKworfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQorCmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9kb20vTWljcm9UYXNrLmggYi9Tb3VyY2UvV2ViQ29y
ZS9kb20vTWljcm9UYXNrLmgKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uNmVjNDBmMWQ3NDA3Y2JiMzY1YWIwYTA4OGI4
NTRkOGFmNDVlOTBhMgotLS0gL2Rldi9udWxsCisrKyBiL1NvdXJjZS9XZWJDb3JlL2RvbS9NaWNy
b1Rhc2suaApAQCAtMCwwICsxLDU2IEBACisvKgorICogQ29weXJpZ2h0IChDKSAyMDE0IFlvYXYg
V2Vpc3MgKHlvYXZAeW9hdi53cykKKyAqIENvcHlyaWdodCAoQykgMjAxNSBBa2FtYWkgVGVjaG5v
bG9naWVzIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAqCisgKiBUaGlzIGxpYnJhcnkgaXMg
ZnJlZSBzb2Z0d2FyZTsgeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29yCisgKiBtb2RpZnkg
aXQgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUgTGlicmFyeSBHZW5lcmFsIFB1YmxpYworICog
TGljZW5zZSBhcyBwdWJsaXNoZWQgYnkgdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbjsgZWl0
aGVyCisgKiB2ZXJzaW9uIDIgb2YgdGhlIExpY2Vuc2UsIG9yIChhdCB5b3VyIG9wdGlvbikgYW55
IGxhdGVyIHZlcnNpb24uCisgKgorICogVGhpcyBsaWJyYXJ5IGlzIGRpc3RyaWJ1dGVkIGluIHRo
ZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCisgKiBidXQgV0lUSE9VVCBBTlkgV0FSUkFO
VFk7IHdpdGhvdXQgZXZlbiB0aGUgaW1wbGllZCB3YXJyYW50eSBvZgorICogTUVSQ0hBTlRBQklM
SVRZIG9yIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFLiAgU2VlIHRoZSBHTlUKKyAq
IExpYnJhcnkgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBmb3IgbW9yZSBkZXRhaWxzLgorICoKKyAq
IFlvdSBzaG91bGQgaGF2ZSByZWNlaXZlZCBhIGNvcHkgb2YgdGhlIEdOVSBMaWJyYXJ5IEdlbmVy
YWwgUHVibGljIExpY2Vuc2UKKyAqIGFsb25nIHdpdGggdGhpcyBsaWJyYXJ5OyBzZWUgdGhlIGZp
bGUgQ09QWUlORy5MSUIuICBJZiBub3QsIHdyaXRlIHRvCisgKiB0aGUgRnJlZSBTb2Z0d2FyZSBG
b3VuZGF0aW9uLCBJbmMuLCA1MSBGcmFua2xpbiBTdHJlZXQsIEZpZnRoIEZsb29yLAorICogQm9z
dG9uLCBNQSAwMjExMC0xMzAxLCBVU0EuCisgKgorICovCisKKyNpZm5kZWYgTWljcm9UYXNrX2gK
KyNkZWZpbmUgTWljcm9UYXNrX2gKKworI2luY2x1ZGUgPHd0Zi9OZXZlckRlc3Ryb3llZC5oPgor
I2luY2x1ZGUgPHd0Zi9SZWZDb3VudGVkLmg+CisjaW5jbHVkZSA8d3RmL1ZlY3Rvci5oPgorCisK
K25hbWVzcGFjZSBXZWJDb3JlIHsKKworY2xhc3MgTWljcm9UYXNrIDogcHVibGljIFJlZkNvdW50
ZWQ8TWljcm9UYXNrPiB7CitwdWJsaWM6CisgICAgdmlydHVhbCB2b2lkIHJ1bigpID0gMDsKKyAg
ICB2aXJ0dWFsIH5NaWNyb1Rhc2soKSB7IH0KK307CisKK2NsYXNzIE1pY3JvVGFza1F1ZXVlIHsK
KyAgICBmcmllbmQgTmV2ZXJEZXN0cm95ZWQ8TWljcm9UYXNrUXVldWU+OworCitwdWJsaWM6Cisg
ICAgV0VCQ09SRV9FWFBPUlQgc3RhdGljIE1pY3JvVGFza1F1ZXVlJiBzaW5nbGV0b24oKTsKKyAg
ICB+TWljcm9UYXNrUXVldWUoKSB7IH0KKworICAgIFdFQkNPUkVfRVhQT1JUIHZvaWQgcXVldWVN
aWNyb1Rhc2soc3RkOjp1bmlxdWVfcHRyPE1pY3JvVGFzaz4pOworCisgICAgdm9pZCBydW5NaWNy
b1Rhc2tzKCk7CisKK3ByaXZhdGU6CisgICAgTWljcm9UYXNrUXVldWUoKSB7IH0KKyAgICBWZWN0
b3I8c3RkOjp1bmlxdWVfcHRyPE1pY3JvVGFzaz4+IG1fbWljcm9UYXNrUXVldWU7Cit9OworCit9
IC8vIG5hbWVzcGFjZSBXZWJDb3JlCisKKyNlbmRpZiAvLyBNaWNyb1Rhc2tfaApkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYkNvcmUvZG9tL1NjcmlwdFJ1bm5lci5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9k
b20vU2NyaXB0UnVubmVyLmNwcAppbmRleCBlZDk0ZGEzZTczZGIxMzAxNzhiOTllYTRiN2Y5MmI1
YWMxOTgwOWQ2Li5jNDZiNzhlMGZmZTNjODE4MzYwNDdlY2EzYTA3YWI5Y2VkMTNhZjA0IDEwMDY0
NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9kb20vU2NyaXB0UnVubmVyLmNwcAorKysgYi9Tb3VyY2Uv
V2ViQ29yZS9kb20vU2NyaXB0UnVubmVyLmNwcApAQCAtMjgsNiArMjgsNyBAQAogCiAjaW5jbHVk
ZSAiQ2FjaGVkU2NyaXB0LmgiCiAjaW5jbHVkZSAiRWxlbWVudC5oIgorI2luY2x1ZGUgIk1pY3Jv
VGFzay5oIgogI2luY2x1ZGUgIlBlbmRpbmdTY3JpcHQuaCIKICNpbmNsdWRlICJTY3JpcHRFbGVt
ZW50LmgiCiAKQEAgLTExNiw2ICsxMTcsNyBAQCB2b2lkIFNjcmlwdFJ1bm5lcjo6dGltZXJGaXJl
ZCgpCiAgICAgICAgIHRvU2NyaXB0RWxlbWVudElmUG9zc2libGUoZWxlbWVudC5nZXQoKSktPmV4
ZWN1dGUoY2FjaGVkU2NyaXB0KTsKICAgICAgICAgbV9kb2N1bWVudC5kZWNyZW1lbnRMb2FkRXZl
bnREZWxheUNvdW50KCk7CiAgICAgfQorICAgIE1pY3JvVGFza1F1ZXVlOjpzaW5nbGV0b24oKS5y
dW5NaWNyb1Rhc2tzKCk7CiB9CiAKIH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2h0bWwv
cGFyc2VyL0hUTUxTY3JpcHRSdW5uZXIuY3BwIGIvU291cmNlL1dlYkNvcmUvaHRtbC9wYXJzZXIv
SFRNTFNjcmlwdFJ1bm5lci5jcHAKaW5kZXggNDFlNzI1ZjYwZGU4NjgxZjFjZjhkYjRiNWM5OGFk
YjYyNjIyZjIxYi4uMjdkZDY3MzgyYTYwMGZjMDMzODUyZWM5MDI5MjAxNjkyZDE0M2RlZCAxMDA2
NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvaHRtbC9wYXJzZXIvSFRNTFNjcmlwdFJ1bm5lci5jcHAK
KysrIGIvU291cmNlL1dlYkNvcmUvaHRtbC9wYXJzZXIvSFRNTFNjcmlwdFJ1bm5lci5jcHAKQEAg
LTM2LDYgKzM2LDcgQEAKICNpbmNsdWRlICJIVE1MTmFtZXMuaCIKICNpbmNsdWRlICJIVE1MU2Ny
aXB0UnVubmVySG9zdC5oIgogI2luY2x1ZGUgIklnbm9yZURlc3RydWN0aXZlV3JpdGVDb3VudElu
Y3JlbWVudGVyLmgiCisjaW5jbHVkZSAiTWljcm9UYXNrLmgiCiAjaW5jbHVkZSAiTXV0YXRpb25P
YnNlcnZlci5oIgogI2luY2x1ZGUgIk5lc3RpbmdMZXZlbEluY3JlbWVudGVyLmgiCiAjaW5jbHVk
ZSAiTm90SW1wbGVtZW50ZWQuaCIKQEAgLTEyOSw4ICsxMzAsMTAgQEAgdm9pZCBIVE1MU2NyaXB0
UnVubmVyOjpleGVjdXRlUGVuZGluZ1NjcmlwdEFuZERpc3BhdGNoRXZlbnQoUGVuZGluZ1Njcmlw
dCYgcGVuZGkKICAgICBpZiAocGVuZGluZ1NjcmlwdC5jYWNoZWRTY3JpcHQoKSAmJiBwZW5kaW5n
U2NyaXB0LndhdGNoaW5nRm9yTG9hZCgpKQogICAgICAgICBzdG9wV2F0Y2hpbmdGb3JMb2FkKHBl
bmRpbmdTY3JpcHQpOwogCi0gICAgaWYgKCFpc0V4ZWN1dGluZ1NjcmlwdCgpKQorICAgIGlmICgh
aXNFeGVjdXRpbmdTY3JpcHQoKSkgewogICAgICAgICBNdXRhdGlvbk9ic2VydmVyOjpkZWxpdmVy
QWxsTXV0YXRpb25zKCk7CisgICAgICAgIE1pY3JvVGFza1F1ZXVlOjpzaW5nbGV0b24oKS5ydW5N
aWNyb1Rhc2tzKCk7CisgICAgfQogCiAgICAgLy8gQ2xlYXIgdGhlIHBlbmRpbmcgc2NyaXB0IGJl
Zm9yZSBwb3NzaWJsZSByZW50cmFuY3kgZnJvbSBleGVjdXRlU2NyaXB0KCkKICAgICBSZWZQdHI8
RWxlbWVudD4gZWxlbWVudCA9IHBlbmRpbmdTY3JpcHQucmVsZWFzZUVsZW1lbnRBbmRDbGVhcigp
OwpAQCAtMjMxLDYgKzIzNCw4IEBAIGJvb2wgSFRNTFNjcmlwdFJ1bm5lcjo6ZXhlY3V0ZVNjcmlw
dHNXYWl0aW5nRm9yUGFyc2luZygpCiAgICAgICAgIGlmICghbV9kb2N1bWVudCkKICAgICAgICAg
ICAgIHJldHVybiBmYWxzZTsKICAgICB9CisgICAgaWYgKCFpc0V4ZWN1dGluZ1NjcmlwdCgpKQor
ICAgICAgICBNaWNyb1Rhc2tRdWV1ZTo6c2luZ2xldG9uKCkucnVuTWljcm9UYXNrcygpOwogICAg
IHJldHVybiB0cnVlOwogfQogCkBAIC0yOTMsOCArMjk4LDEwIEBAIHZvaWQgSFRNTFNjcmlwdFJ1
bm5lcjo6cnVuU2NyaXB0KEVsZW1lbnQqIHNjcmlwdCwgY29uc3QgVGV4dFBvc2l0aW9uJiBzY3Jp
cHRTdGFyCiAgICAgICAgIC8vIGV2ZXJ5IHNjcmlwdCBlbGVtZW50LCBldmVuIGlmIGl0J3Mgbm90
IHJlYWR5IHRvIGV4ZWN1dGUgeWV0LiBUaGVyZSdzCiAgICAgICAgIC8vIHVuZm9ydHVhbnRlbHkg
bm8gb2J2aW91cyB3YXkgdG8gdGVsbCBpZiBwcmVwYXJlU2NyaXB0IGlzIGdvaW5nIHRvCiAgICAg
ICAgIC8vIGV4ZWN1dGUgdGhlIHNjcmlwdCBmcm9tIG91dCBoZXJlLgotICAgICAgICBpZiAoIWlz
RXhlY3V0aW5nU2NyaXB0KCkpCisgICAgICAgIGlmICghaXNFeGVjdXRpbmdTY3JpcHQoKSkgewog
ICAgICAgICAgICAgTXV0YXRpb25PYnNlcnZlcjo6ZGVsaXZlckFsbE11dGF0aW9ucygpOworICAg
ICAgICAgICAgTWljcm9UYXNrUXVldWU6OnNpbmdsZXRvbigpLnJ1bk1pY3JvVGFza3MoKTsKKyAg
ICAgICAgfQogCiAgICAgICAgIEluc2VydGlvblBvaW50UmVjb3JkIGluc2VydGlvblBvaW50UmVj
b3JkKG1faG9zdC5pbnB1dFN0cmVhbSgpKTsKICAgICAgICAgTmVzdGluZ0xldmVsSW5jcmVtZW50
ZXIgbmVzdGluZ0xldmVsSW5jcmVtZW50ZXIobV9zY3JpcHROZXN0aW5nTGV2ZWwpOwpkaWZmIC0t
Z2l0IGEvU291cmNlL1dlYkNvcmUvdGVzdGluZy9JbnRlcm5hbHMuY3BwIGIvU291cmNlL1dlYkNv
cmUvdGVzdGluZy9JbnRlcm5hbHMuY3BwCmluZGV4IDEwYmEzY2RhNjYyZTMwZTdlMWQxNzVkZGI5
Yjk3Yzg0Yjk5YzI5YmUuLmFjZTk3MTAyYTU1N2QwY2UzOTM5ODEzZTgwMjY1MDMzN2YwZjVmNjEg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3Rlc3RpbmcvSW50ZXJuYWxzLmNwcAorKysgYi9T
b3VyY2UvV2ViQ29yZS90ZXN0aW5nL0ludGVybmFscy5jcHAKQEAgLTc4LDYgKzc4LDggQEAKICNp
bmNsdWRlICJNZWRpYVNlc3Npb25NYW5hZ2VyLmgiCiAjaW5jbHVkZSAiTWVtb3J5Q2FjaGUuaCIK
ICNpbmNsdWRlICJNZW1vcnlJbmZvLmgiCisjaW5jbHVkZSAiTWljcm9UYXNrLmgiCisjaW5jbHVk
ZSAiTWljcm9UYXNrVGVzdC5oIgogI2luY2x1ZGUgIk1vY2tQYWdlT3ZlcmxheUNsaWVudC5oIgog
I2luY2x1ZGUgIlBhZ2UuaCIKICNpbmNsdWRlICJQYWdlT3ZlcmxheS5oIgpAQCAtMjUwMyw0ICsy
NTA1LDkgQEAgYm9vbCBJbnRlcm5hbHM6OmlzUGFnZVBsYXlpbmdBdWRpbygpCiAgICAgcmV0dXJu
IGRvY3VtZW50LT5wYWdlKCktPmlzUGxheWluZ0F1ZGlvKCk7CiB9CiAKK3ZvaWQgSW50ZXJuYWxz
OjpxdWV1ZU1pY3JvVGFzayhpbnQgdGVzdE51bWJlcikKK3sKKyAgICBNaWNyb1Rhc2tRdWV1ZTo6
c2luZ2xldG9uKCkucXVldWVNaWNyb1Rhc2soTWljcm9UYXNrVGVzdDo6Y3JlYXRlKGNvbnRleHRE
b2N1bWVudCgpLCB0ZXN0TnVtYmVyKSk7Cit9CisKIH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJD
b3JlL3Rlc3RpbmcvSW50ZXJuYWxzLmggYi9Tb3VyY2UvV2ViQ29yZS90ZXN0aW5nL0ludGVybmFs
cy5oCmluZGV4IDA5YTQ0OWQ3MmIyNWZmZDM1Y2UwMDFkZjk0NWVlZDBlOWMyZjIyZmIuLjg4NGM3
MzYxZGZhNTUxNjZiMDQ4NTFlZjA5NTY1ZDUxMTEwNWQ0YTIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJDb3JlL3Rlc3RpbmcvSW50ZXJuYWxzLmgKKysrIGIvU291cmNlL1dlYkNvcmUvdGVzdGluZy9J
bnRlcm5hbHMuaApAQCAtMzYxLDYgKzM2MSw4IEBAIHB1YmxpYzoKICAgICB2b2lkIHNldFBhZ2VN
dXRlZChib29sKTsKICAgICBib29sIGlzUGFnZVBsYXlpbmdBdWRpbygpOwogCisgICAgdm9pZCBx
dWV1ZU1pY3JvVGFzayhpbnQpOworCiBwcml2YXRlOgogICAgIGV4cGxpY2l0IEludGVybmFscyhE
b2N1bWVudCopOwogICAgIERvY3VtZW50KiBjb250ZXh0RG9jdW1lbnQoKSBjb25zdDsKZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJDb3JlL3Rlc3RpbmcvSW50ZXJuYWxzLmlkbCBiL1NvdXJjZS9XZWJD
b3JlL3Rlc3RpbmcvSW50ZXJuYWxzLmlkbAppbmRleCBkYzJhZDU5ZWM3ZTcxNzE1MjhjMDg1NzQw
YzY3ZGNiNjY1NTRkMjdjLi4yYjYzYjRmZmI2ZjlhZThmMGRkMTgyMGUzOTNjMWFmNzE4NWIyNDIx
IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS90ZXN0aW5nL0ludGVybmFscy5pZGwKKysrIGIv
U291cmNlL1dlYkNvcmUvdGVzdGluZy9JbnRlcm5hbHMuaWRsCkBAIC0zMTcsNCArMzE3LDUgQEAg
ZW51bSBQYWdlT3ZlcmxheVR5cGUgewogCiAgICAgdm9pZCBzZXRQYWdlTXV0ZWQoYm9vbGVhbiBt
dXRlZCk7CiAgICAgYm9vbGVhbiBpc1BhZ2VQbGF5aW5nQXVkaW8oKTsKKyAgICB2b2lkIHF1ZXVl
TWljcm9UYXNrKGxvbmcgdGVzdE51bWJlcik7CiB9OwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNv
cmUvdGVzdGluZy9NaWNyb1Rhc2tUZXN0LmNwcCBiL1NvdXJjZS9XZWJDb3JlL3Rlc3RpbmcvTWlj
cm9UYXNrVGVzdC5jcHAKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uZmE4MTk5YWIxYmZiNDkyNGI4MjMxMzJiY2ZmNjE0
YzFlYjZiOTdhMQotLS0gL2Rldi9udWxsCisrKyBiL1NvdXJjZS9XZWJDb3JlL3Rlc3RpbmcvTWlj
cm9UYXNrVGVzdC5jcHAKQEAgLTAsMCArMSw0MyBAQAorLyoKKyAqIENvcHlyaWdodCAoQykgMjAx
NSBBa2FtYWkgVGVjaG5vbG9naWVzIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAqCisgKiBU
aGlzIGxpYnJhcnkgaXMgZnJlZSBzb2Z0d2FyZTsgeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5k
L29yCisgKiBtb2RpZnkgaXQgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUgTGlicmFyeSBHZW5l
cmFsIFB1YmxpYworICogTGljZW5zZSBhcyBwdWJsaXNoZWQgYnkgdGhlIEZyZWUgU29mdHdhcmUg
Rm91bmRhdGlvbjsgZWl0aGVyCisgKiB2ZXJzaW9uIDIgb2YgdGhlIExpY2Vuc2UsIG9yIChhdCB5
b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uCisgKgorICogVGhpcyBsaWJyYXJ5IGlzIGRp
c3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCisgKiBidXQgV0lU
SE9VVCBBTlkgV0FSUkFOVFk7IHdpdGhvdXQgZXZlbiB0aGUgaW1wbGllZCB3YXJyYW50eSBvZgor
ICogTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFLiAg
U2VlIHRoZSBHTlUKKyAqIExpYnJhcnkgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBmb3IgbW9yZSBk
ZXRhaWxzLgorICoKKyAqIFlvdSBzaG91bGQgaGF2ZSByZWNlaXZlZCBhIGNvcHkgb2YgdGhlIEdO
VSBMaWJyYXJ5IEdlbmVyYWwgUHVibGljIExpY2Vuc2UKKyAqIGFsb25nIHdpdGggdGhpcyBsaWJy
YXJ5OyBzZWUgdGhlIGZpbGUgQ09QWUlORy5MSUIuICBJZiBub3QsIHdyaXRlIHRvCisgKiB0aGUg
RnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uLCBJbmMuLCA1MSBGcmFua2xpbiBTdHJlZXQsIEZpZnRo
IEZsb29yLAorICogQm9zdG9uLCBNQSAwMjExMC0xMzAxLCBVU0EuCisgKgorICovCisKKyNpbmNs
dWRlICJjb25maWcuaCIKKyNpbmNsdWRlICJNaWNyb1Rhc2tUZXN0LmgiCisKKyNpbmNsdWRlICJE
b2N1bWVudC5oIgorCituYW1lc3BhY2UgV2ViQ29yZSB7CisKK3ZvaWQgTWljcm9UYXNrVGVzdDo6
cnVuKCkKK3sKKyAgICBTdHJpbmdCdWlsZGVyIG1lc3NhZ2U7CisgICAgbWVzc2FnZS5hcHBlbmQo
Ik1pY3JvVGFzayAjIik7CisgICAgbWVzc2FnZS5hcHBlbmQoU3RyaW5nOjpudW1iZXIobV90ZXN0
TnVtYmVyKSk7CisgICAgbWVzc2FnZS5hcHBlbmQoIiBoYXMgcnVuLiIpOworICAgIGlmIChtX2Rv
Y3VtZW50KQorICAgICAgICBtX2RvY3VtZW50LT5hZGRDb25zb2xlTWVzc2FnZShNZXNzYWdlU291
cmNlOjpKUywgTWVzc2FnZUxldmVsOjpEZWJ1ZywgbWVzc2FnZS50b1N0cmluZygpKTsKK30KKwor
c3RkOjp1bmlxdWVfcHRyPE1pY3JvVGFza1Rlc3Q+IE1pY3JvVGFza1Rlc3Q6OmNyZWF0ZShQYXNz
UmVmUHRyPERvY3VtZW50PiBkb2N1bWVudCwgaW50IHRlc3ROdW1iZXIpCit7CisgICAgcmV0dXJu
IHN0ZDo6dW5pcXVlX3B0cjxNaWNyb1Rhc2tUZXN0PihuZXcgTWljcm9UYXNrVGVzdChkb2N1bWVu
dCwgdGVzdE51bWJlcikpOworfQorCit9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViQ29yZS90ZXN0aW5nL01pY3JvVGFza1Rlc3QuaCBiL1NvdXJjZS9XZWJDb3Jl
L3Rlc3RpbmcvTWljcm9UYXNrVGVzdC5oCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjY1YzFlZWU1N2ZmNWI3ZDcwNmNk
NWZkNDNlNWRjMmM0MGUxNzUwYTcKLS0tIC9kZXYvbnVsbAorKysgYi9Tb3VyY2UvV2ViQ29yZS90
ZXN0aW5nL01pY3JvVGFza1Rlc3QuaApAQCAtMCwwICsxLDQ5IEBACisvKgorICogQ29weXJpZ2h0
IChDKSAyMDE1IEFrYW1haSBUZWNobm9sb2dpZXMgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgor
ICoKKyAqIFRoaXMgbGlicmFyeSBpcyBmcmVlIHNvZnR3YXJlOyB5b3UgY2FuIHJlZGlzdHJpYnV0
ZSBpdCBhbmQvb3IKKyAqIG1vZGlmeSBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBMaWJy
YXJ5IEdlbmVyYWwgUHVibGljCisgKiBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieSB0aGUgRnJlZSBT
b2Z0d2FyZSBGb3VuZGF0aW9uOyBlaXRoZXIKKyAqIHZlcnNpb24gMiBvZiB0aGUgTGljZW5zZSwg
b3IgKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KKyAqCisgKiBUaGlzIGxpYnJh
cnkgaXMgZGlzdHJpYnV0ZWQgaW4gdGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCwKKyAq
IGJ1dCBXSVRIT1VUIEFOWSBXQVJSQU5UWTsgd2l0aG91dCBldmVuIHRoZSBpbXBsaWVkIHdhcnJh
bnR5IG9mCisgKiBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBV
UlBPU0UuICBTZWUgdGhlIEdOVQorICogTGlicmFyeSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGZv
ciBtb3JlIGRldGFpbHMuCisgKgorICogWW91IHNob3VsZCBoYXZlIHJlY2VpdmVkIGEgY29weSBv
ZiB0aGUgR05VIExpYnJhcnkgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQorICogYWxvbmcgd2l0aCB0
aGlzIGxpYnJhcnk7IHNlZSB0aGUgZmlsZSBDT1BZSU5HLkxJQi4gIElmIG5vdCwgd3JpdGUgdG8K
KyAqIHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb24sIEluYy4sIDUxIEZyYW5rbGluIFN0cmVl
dCwgRmlmdGggRmxvb3IsCisgKiBCb3N0b24sIE1BIDAyMTEwLTEzMDEsIFVTQS4KKyAqCisgKi8K
KworI2lmbmRlZiBNaWNyb1Rhc2tUZXN0X2gKKyNkZWZpbmUgTWljcm9UYXNrVGVzdF9oCisKKyNp
bmNsdWRlICJNaWNyb1Rhc2suaCIKKyNpbmNsdWRlIDx3dGYvUmVmQ291bnRlZC5oPgorCituYW1l
c3BhY2UgV2ViQ29yZSB7CisKK2NsYXNzIERvY3VtZW50OworCitjbGFzcyBNaWNyb1Rhc2tUZXN0
OiBwdWJsaWMgTWljcm9UYXNrIHsKK3B1YmxpYzoKKyAgICB2aXJ0dWFsIHZvaWQgcnVuKCkgb3Zl
cnJpZGU7CisgICAgV0VCQ09SRV9FWFBPUlQgc3RhdGljIHN0ZDo6dW5pcXVlX3B0cjxNaWNyb1Rh
c2tUZXN0PiBjcmVhdGUoUGFzc1JlZlB0cjxEb2N1bWVudD4sIGludCB0ZXN0TnVtYmVyKTsKKwor
cHJpdmF0ZToKKyAgICBNaWNyb1Rhc2tUZXN0KFBhc3NSZWZQdHI8RG9jdW1lbnQ+IGRvY3VtZW50
LCBpbnQgdGVzdE51bWJlcikKKyAgICAgICAgOiBtX2RvY3VtZW50KGRvY3VtZW50KQorICAgICAg
ICAsIG1fdGVzdE51bWJlcih0ZXN0TnVtYmVyKQorICAgIHsKKyAgICB9CisKKyAgICBSZWZQdHI8
RG9jdW1lbnQ+IG1fZG9jdW1lbnQ7CisgICAgaW50IG1fdGVzdE51bWJlcjsKK307CisKK30gLy8g
bmFtZXNwYWNlIFdlYkNvcmUKKworI2VuZGlmCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1dl
YktpdC52Y3hwcm9qL1dlYktpdEV4cG9ydEdlbmVyYXRvci9XZWJLaXRFeHBvcnRzLmRlZi5pbiBi
L1NvdXJjZS9XZWJLaXQvV2ViS2l0LnZjeHByb2ovV2ViS2l0RXhwb3J0R2VuZXJhdG9yL1dlYktp
dEV4cG9ydHMuZGVmLmluCmluZGV4IGQzMTI0YzA3YTM3NTU0YTExZGI2OTRjMTgyNGM0YjU0OThl
ZjMwYzcuLmQ0YmY0NTI1ZmZlYTE1YmViOWFkOTIyYTRjZmQ5MTA1OGNkOWYxMjggMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9XZWJLaXQvV2ViS2l0LnZjeHByb2ovV2ViS2l0RXhwb3J0R2VuZXJhdG9yL1dl
YktpdEV4cG9ydHMuZGVmLmluCisrKyBiL1NvdXJjZS9XZWJLaXQvV2ViS2l0LnZjeHByb2ovV2Vi
S2l0RXhwb3J0R2VuZXJhdG9yL1dlYktpdEV4cG9ydHMuZGVmLmluCkBAIC00NzksNiArNDc5LDkg
QEAgRVhQT1JUUwogICAgICAgICBzeW1ib2xXaXRoUG9pbnRlcig/cmVzb3VyY2VGb3JVUkxATWVt
b3J5Q2FjaGVAV2ViQ29yZUBAUUFFUEFWQ2FjaGVkUmVzb3VyY2VAMkBBQlZVUkxAMkBWU2Vzc2lv
bklEQDJAQFosID9yZXNvdXJjZUZvclVSTEBNZW1vcnlDYWNoZUBXZWJDb3JlQEBRRUFBUEVBVkNh
Y2hlZFJlc291cmNlQDJAQUVCVlVSTEAyQFZTZXNzaW9uSURAMkBAWikKICAgICAgICAgc3ltYm9s
V2l0aFBvaW50ZXIoP3JlZkBDU1NDb21wdXRlZFN0eWxlRGVjbGFyYXRpb25AV2ViQ29yZUBAVUFF
WFhaLCA/cmVmQENTU0NvbXB1dGVkU3R5bGVEZWNsYXJhdGlvbkBXZWJDb3JlQEBVRUFBWFhaKQog
ICAgICAgICBzeW1ib2xXaXRoUG9pbnRlcig/ZGVyZWZAQ1NTQ29tcHV0ZWRTdHlsZURlY2xhcmF0
aW9uQFdlYkNvcmVAQFVBRVhYWiwgP2RlcmVmQENTU0NvbXB1dGVkU3R5bGVEZWNsYXJhdGlvbkBX
ZWJDb3JlQEBVRUFBWFhaKQorICAgICAgICBzeW1ib2xXaXRoUG9pbnRlcig/c2luZ2xldG9uQE1p
Y3JvVGFza1F1ZXVlQFdlYkNvcmVAQFNBQUFWMTJAWFosID9zaW5nbGV0b25ATWljcm9UYXNrUXVl
dWVAV2ViQ29yZUBAU0FBQVYxMkBYWikKKyAgICAgICAgc3ltYm9sV2l0aFBvaW50ZXIoP3F1ZXVl
TWljcm9UYXNrQE1pY3JvVGFza1F1ZXVlQFdlYkNvcmVAQFFBRVhWPyR1bmlxdWVfcHRyQFZNaWNy
b1Rhc2tAV2ViQ29yZUBAVT8sID9xdWV1ZU1pY3JvVGFza0BNaWNyb1Rhc2tRdWV1ZUBXZWJDb3Jl
QEBRQUVYVj8kdW5pcXVlX3B0ckBWTWljcm9UYXNrQFdlYkNvcmVAQFU/KQorICAgICAgICBzeW1i
b2xXaXRoUG9pbnRlcig/YWRkQ29uc29sZU1lc3NhZ2VARG9jdW1lbnRAV2ViQ29yZUBAVUFFWFc0
TWVzc2FnZVNvdXJjZUBKU0NAQFc0TWVzc2FnZUxldmVsQDRAQUJWU3RyaW5nQFdURkBAS0BaLCA/
YWRkQ29uc29sZU1lc3NhZ2VARG9jdW1lbnRAV2ViQ29yZUBAVUFFWFc0TWVzc2FnZVNvdXJjZUBK
U0NAQFc0TWVzc2FnZUxldmVsQDRAQUJWU3RyaW5nQFdURkBAS0BaKQogI2lmICFDUFUoWDg2XzY0
KQogICAgICAgICA/aXNBUElWYWx1ZVdyYXBwZXJASlNDZWxsQEpTQ0BAUUJFX05YWgogI2VuZGlm
CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cgYi9MYXlvdXRUZXN0cy9DaGFuZ2VM
b2cKaW5kZXggY2ZhNzQxZmQ0MzEwODQ3ZDBlMDEzMzE2ZjBhYTRkNDBhNzM3OTBiMi4uZTMwZWQz
Mjc0ODkyMjIwMDJmYzAzMjUwMGEwNTAxNTMyZWZjMzBjYiAxMDA2NDQKLS0tIGEvTGF5b3V0VGVz
dHMvQ2hhbmdlTG9nCisrKyBiL0xheW91dFRlc3RzL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE3IEBA
CisyMDE1LTAyLTE5ICBZb2F2IFdlaXNzICA8eW9hdkB5b2F2LndzPgorCisgICAgICAgIEFkZCBh
IG1pY3JvdGFzayBhYnN0cmFjdGlvbgorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9z
aG93X2J1Zy5jZ2k/aWQ9MTM3NDk2CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BT
ISkuCisKKyAgICAgICAgQWRkaW5nIGEgdGVzdCBmb3IgbWljcm90YXNrIGFic3RyYWN0aW9uLgor
CisgICAgICAgICogZmFzdC9kb20vbWljcm90YXNrLWlub3JkZXIuaHRtbDogQWRkZWQuCisgICAg
ICAgICogZmFzdC9kb20vbWljcm90YXNrLWlub3JkZXItZXhwZWN0ZWQudHh0OiBBZGRlZC4KKyAg
ICAgICAgKiBmYXN0L2RvbS9taWNyb3Rhc2stcmV2ZXJzZS5odG1sOiBBZGRlZC4KKyAgICAgICAg
KiBmYXN0L2RvbS9taWNyb3Rhc2stcmV2ZXJzZS1leHBlY3RlZC50eHQ6IEFkZGVkLgorCiAyMDE1
LTAyLTE2ICBTZXJnaW8gVmlsbGFyIFNlbmluICA8c3ZpbGxhckBpZ2FsaWEuY29tPgogCiAgICAg
ICAgIFVucmV2aWV3ZWQuIFVwbG9hZGluZyBhIG5ldyB0ZXN0IHRoYXQgc2hvdWxkIGhhdmUgYmVl
biB1cGxvYWRlZCBhcwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9kb20vbWljcm90YXNr
LWlub3JkZXItZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvZmFzdC9kb20vbWljcm90YXNrLWlu
b3JkZXItZXhwZWN0ZWQudHh0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjAzODBiOTRjN2M4MTgzYTY5NmUxYWIyMjY5
OWVhY2FmY2QzZGQzNzMKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9mYXN0L2RvbS9t
aWNyb3Rhc2staW5vcmRlci1leHBlY3RlZC50eHQKQEAgLTAsMCArMSwxNSBAQAorQ09OU09MRSBN
RVNTQUdFOiBsaW5lIDIzOiBGaW5pc2hlZCBxdWV1ZWluZyB0ZXN0cy4KK0NPTlNPTEUgTUVTU0FH
RTogTWljcm9UYXNrICMyIGhhcyBydW4uCitDT05TT0xFIE1FU1NBR0U6IE1pY3JvVGFzayAjMSBo
YXMgcnVuLgorQ09OU09MRSBNRVNTQUdFOiBNaWNyb1Rhc2sgIzAgaGFzIHJ1bi4KKyAKKworLS0t
LS0tLS0KK0ZyYW1lOiAnZnJhbWUxJworLS0tLS0tLS0KKworCistLS0tLS0tLQorRnJhbWU6ICdm
cmFtZTInCistLS0tLS0tLQorCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L2RvbS9taWNy
b3Rhc2staW5vcmRlci5odG1sIGIvTGF5b3V0VGVzdHMvZmFzdC9kb20vbWljcm90YXNrLWlub3Jk
ZXIuaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwLi43OWM4ZTJmNzg5ODNhM2U2ODVlYWMxNTUwOTU2MTAxMWU4NjFm
OWE5Ci0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC9kb20vbWljcm90YXNrLWlu
b3JkZXIuaHRtbApAQCAtMCwwICsxLDI4IEBACis8IURPQ1RZUEUgaHRtbD4KKzxzY3JpcHQ+Citp
ZiAod2luZG93LnRlc3RSdW5uZXIpIHsKKyAgICB0ZXN0UnVubmVyLmR1bXBBc1RleHQoKTsKKyAg
ICB0ZXN0UnVubmVyLmR1bXBDaGlsZEZyYW1lc0FzVGV4dCgpOworICAgIHRlc3RSdW5uZXIud2Fp
dFVudGlsRG9uZSgpOworfQorPC9zY3JpcHQ+Cis8aWZyYW1lIGlkPSJmcmFtZTEiPjwvaWZyYW1l
PgorPGlmcmFtZSBpZD0iZnJhbWUyIj48L2lmcmFtZT4KKzxzY3JpcHQ+CisKK3ZhciBpZnJhbWUx
ID0gZG9jdW1lbnQucXVlcnlTZWxlY3RvcigiI2ZyYW1lMSIpLmNvbnRlbnRXaW5kb3c7Cit2YXIg
aWZyYW1lMiA9IGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoIiNmcmFtZTIiKS5jb250ZW50V2luZG93
OworCitpZihpZnJhbWUyLmludGVybmFscykKKyAgICBpZnJhbWUyLmludGVybmFscy5xdWV1ZU1p
Y3JvVGFzaygyKTsKK2lmKGlmcmFtZTEuaW50ZXJuYWxzKQorICAgIGlmcmFtZTEuaW50ZXJuYWxz
LnF1ZXVlTWljcm9UYXNrKDEpOworaWYod2luZG93LmludGVybmFscykKKyAgICBpbnRlcm5hbHMu
cXVldWVNaWNyb1Rhc2soMCk7CisKK2NvbnNvbGUubG9nKCJGaW5pc2hlZCBxdWV1ZWluZyB0ZXN0
cy4iKTsKK3JlcXVlc3RBbmltYXRpb25GcmFtZShmdW5jdGlvbigpIHsKKyAgICBpZiAod2luZG93
LnRlc3RSdW5uZXIpCisgICAgICAgIHRlc3RSdW5uZXIubm90aWZ5RG9uZSgpOworfSk7Cis8L3Nj
cmlwdD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3QvZG9tL21pY3JvdGFzay1yZXZlcnNl
LWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2Zhc3QvZG9tL21pY3JvdGFzay1yZXZlcnNlLWV4
cGVjdGVkLnR4dApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwLi4yZWM4OGJiNTRmMGJhZmZmMmI0OTRlMjIzM2FmZWU0MzU4
MzY3YTNhCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC9kb20vbWljcm90YXNr
LXJldmVyc2UtZXhwZWN0ZWQudHh0CkBAIC0wLDAgKzEsMTUgQEAKK0NPTlNPTEUgTUVTU0FHRTog
bGluZSAyMzogRmluaXNoZWQgcXVldWVpbmcgdGVzdHMuCitDT05TT0xFIE1FU1NBR0U6IE1pY3Jv
VGFzayAjMCBoYXMgcnVuLgorQ09OU09MRSBNRVNTQUdFOiBNaWNyb1Rhc2sgIzEgaGFzIHJ1bi4K
K0NPTlNPTEUgTUVTU0FHRTogTWljcm9UYXNrICMyIGhhcyBydW4uCisgCisKKy0tLS0tLS0tCitG
cmFtZTogJ2ZyYW1lMScKKy0tLS0tLS0tCisKKworLS0tLS0tLS0KK0ZyYW1lOiAnZnJhbWUyJwor
LS0tLS0tLS0KKwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9kb20vbWljcm90YXNrLXJl
dmVyc2UuaHRtbCBiL0xheW91dFRlc3RzL2Zhc3QvZG9tL21pY3JvdGFzay1yZXZlcnNlLmh0bWwK
bmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMC4uYjFiNGU3Nzg2MjE3YmFkMzZjZGY5MDQ5YjljM2U4ZjRmYTI3MmJkMAotLS0g
L2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2Zhc3QvZG9tL21pY3JvdGFzay1yZXZlcnNlLmh0
bWwKQEAgLTAsMCArMSwyOCBAQAorPCFET0NUWVBFIGh0bWw+Cis8c2NyaXB0PgoraWYgKHdpbmRv
dy50ZXN0UnVubmVyKSB7CisgICAgdGVzdFJ1bm5lci5kdW1wQXNUZXh0KCk7CisgICAgdGVzdFJ1
bm5lci5kdW1wQ2hpbGRGcmFtZXNBc1RleHQoKTsKKyAgICB0ZXN0UnVubmVyLndhaXRVbnRpbERv
bmUoKTsKK30KKzwvc2NyaXB0PgorPGlmcmFtZSBpZD0iZnJhbWUxIj48L2lmcmFtZT4KKzxpZnJh
bWUgaWQ9ImZyYW1lMiI+PC9pZnJhbWU+Cis8c2NyaXB0PgorCit2YXIgaWZyYW1lMSA9IGRvY3Vt
ZW50LnF1ZXJ5U2VsZWN0b3IoIiNmcmFtZTEiKS5jb250ZW50V2luZG93OwordmFyIGlmcmFtZTIg
PSBkb2N1bWVudC5xdWVyeVNlbGVjdG9yKCIjZnJhbWUyIikuY29udGVudFdpbmRvdzsKKworaWYo
d2luZG93LmludGVybmFscykKKyAgICBpbnRlcm5hbHMucXVldWVNaWNyb1Rhc2soMCk7CitpZihp
ZnJhbWUxLmludGVybmFscykKKyAgICBpZnJhbWUxLmludGVybmFscy5xdWV1ZU1pY3JvVGFzaygx
KTsKK2lmKGlmcmFtZTIuaW50ZXJuYWxzKQorICAgIGlmcmFtZTIuaW50ZXJuYWxzLnF1ZXVlTWlj
cm9UYXNrKDIpOworCitjb25zb2xlLmxvZygiRmluaXNoZWQgcXVldWVpbmcgdGVzdHMuIik7City
ZXF1ZXN0QW5pbWF0aW9uRnJhbWUoZnVuY3Rpb24oKSB7CisgICAgaWYgKHdpbmRvdy50ZXN0UnVu
bmVyKQorICAgICAgICB0ZXN0UnVubmVyLm5vdGlmeURvbmUoKTsKK30pOworPC9zY3JpcHQ+Cg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>247006</attachid>
            <date>2015-02-20 16:05:28 -0800</date>
            <delta_ts>2015-02-22 08:37:31 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-137496-20150221010518.patch</filename>
            <type>text/plain</type>
            <size>41205</size>
            <attacher name="Yoav Weiss">yoav</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTgwMTQ1CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggZjQ5YjY5ZGExMjViY2Fk
ZWZmYmE2NzU3NTE2ZTUxM2M0OWNmNmE5MS4uYWM0YTI4ZWE0Mjc0ZjMzYjUxODcyM2VkZjc5MDVl
Yzc4ZWVmNzQxYiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDQ2IEBACisyMDE1LTAyLTE5ICBZb2F2
IFdlaXNzICA8eW9hdkB5b2F2LndzPgorCisgICAgICAgIEFkZCBhIG1pY3JvdGFzayBhYnN0cmFj
dGlvbgorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTM3
NDk2CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgVGhp
cyBwYXRjaCBhZGRzIGEgbWljcm90YXNrIGFic3RyYWN0aW9uOiBodHRwczovL2h0bWwuc3BlYy53
aGF0d2cub3JnL211bHRpcGFnZS93ZWJhcHBhcGlzLmh0bWwjbWljcm90YXNrCisgICAgICAgIFRo
YXQgYWJzdHJhY3Rpb24gaXMgcmVxdWlyZWQgaW4gb3JkZXIgdG8gZW5hYmxlIGFzeW5jIGxvYWRp
bmcgb2YgaW1hZ2VzLAorICAgICAgICB3aGljaCBpcyBpbiB0dXJuIHJlcXVpcmVkIHRvIGVuYWJs
ZSBzdXBwb3J0IGZvciB0aGUgcGljdHVyZSBlbGVtZW50LCBhcyB3ZWxsIGFzCisgICAgICAgIHRv
IG1ha2Ugc3VyZSB0aGF0IHRoZSBvcmRlciBvZiBwcm9wZXJ0aWVzIHNldCBvbiBIVE1MSW1hZ2VF
bGVtZW50IGhhcyBubyBpbXBsaWNhdGlvbnMuCisKKyAgICAgICAgKiBXZWJDb3JlLnZjeHByb2ov
V2ViQ29yZS52Y3hwcm9qOiBBZGQgTWljcm9UYXNrLntoLGNwcH0gdG8gdGhlIHByb2plY3QuCisg
ICAgICAgICogV2ViQ29yZS52Y3hwcm9qL1dlYkNvcmVUZXN0U3VwcG9ydC52Y3hwcm9qOiBBZGQg
TWljcm9UYXNrVGVzdC57aCxjcHB9IHRvIHRoZSBwcm9qZWN0LgorICAgICAgICAqIFdlYkNvcmUu
dmN4cHJvai9XZWJDb3JlLnZjeHByb2ouZmlsdGVyczogQWRkIE1pY3JvVGFzay57aCxjcHB9IHRv
IHRoZSBwcm9qZWN0LgorICAgICAgICAqIFdlYkNvcmUudmN4cHJvai9XZWJDb3JlVGVzdFN1cHBv
cnQudmN4cHJvai5maWx0ZXJzOiBBZGQgTWljcm9UYXNrVGVzdC57aCxjcHB9IHRvIHRoZSBwcm9q
ZWN0LgorICAgICAgICAqIFdlYkNvcmUueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvajogQWRkIE1p
Y3JvVGFza3ssVGVzdH0ue2gsY3BwfSB0byB0aGUgcHJvamVjdC4KKyAgICAgICAgKiBkb20vRG9j
dW1lbnQuaDogQWRkIFdFQkNPUkVfRVhQT1JUIHRvIGFkZENvbnNvbGVNZXNzYWdlLCBzbyBpdCBj
YW4gYmUgdXNlZCBpbiBNaWNyb1Rhc2tUZXN0IHRoYXQncyBpbiBXZWJDb3JlVGVzdFN1cHBvcnQu
LgorICAgICAgICAqIGRvbS9NaWNyb1Rhc2suaDogQWRkIGEgTWljcm9UYXNrIGludGVyZmFjZSBj
bGFzcy4gQWRkIGEgTWljcm9UYXNrUXVldWUgc2luZ2xldG9uLgorICAgICAgICAoV2ViQ29yZTo6
TWljcm9UYXNrOjp+TWljcm9UYXNrKToKKyAgICAgICAgKFdlYkNvcmU6Ok1pY3JvVGFzazo6cnVu
KTogUnVuIHRoZSBtaWNyb3Rhc2suCisgICAgICAgICogZG9tL01pY3JvVGFzay5jcHA6IEltcGxl
bWVudCB0aGUgTWljcm9UYXNrUXVldWUgc2luZ2xldG9uLgorICAgICAgICAoV2ViQ29yZTo6TWlj
cm9UYXNrUXVldWU6OnNpbmdsZXRvbik6IEdldCBhIHNpbmdsZXRvbiBpbnN0YW5jZSBvZiBNaWNy
b1Rhc2tRdWV1ZS4KKyAgICAgICAgKFdlYkNvcmU6Ok1pY3JvVGFza1F1ZXVlOjpxdWV1ZU1pY3Jv
VGFzayk6IEFkZCBhIG1pY3JvdGFzayB0byB0aGUgcXVldWUuCisgICAgICAgIChXZWJDb3JlOjpN
aWNyb1Rhc2tRdWV1ZTo6cnVuTWljcm9UYXNrcyk6IFJ1biBhbGwgdGhlIG1pY3JvdGFza3MgaW4g
dGhlIHF1ZXVlIGFuZCBjbGVhciBpdC4KKyAgICAgICAgKiBkb20vU2NyaXB0UnVubmVyLmNwcDog
VHJpZ2dlciBydW5uaW5nIG9mIGFsbCBtaWNyb3Rhc2tzIGluIHF1ZXVlLgorICAgICAgICAoV2Vi
Q29yZTo6U2NyaXB0UnVubmVyOjp0aW1lckZpcmVkKToKKyAgICAgICAgKiBodG1sL3BhcnNlci9I
VE1MU2NyaXB0UnVubmVyLmNwcDogVHJpZ2dlciBydW5uaW5nIG9mIGFsbCBtaWNyb3Rhc2tzIGlu
IHF1ZXVlLgorICAgICAgICAoV2ViQ29yZTo6SFRNTFNjcmlwdFJ1bm5lcjo6ZXhlY3V0ZVBlbmRp
bmdTY3JpcHRBbmREaXNwYXRjaEV2ZW50KToKKyAgICAgICAgKFdlYkNvcmU6OkhUTUxTY3JpcHRS
dW5uZXI6OmV4ZWN1dGVTY3JpcHRzV2FpdGluZ0ZvclBhcnNpbmcpOgorICAgICAgICAoV2ViQ29y
ZTo6SFRNTFNjcmlwdFJ1bm5lcjo6cnVuU2NyaXB0KToKKyAgICAgICAgKiB0ZXN0aW5nL0ludGVy
bmFscy5jcHA6IEFkZCBhIG1ldGhvZCB0byBxdWV1ZSBhIHRlc3QgbWljcm90YXNrLgorICAgICAg
ICAoV2ViQ29yZTo6SW50ZXJuYWxzOjpxdWV1ZU1pY3JvVGFzayk6CisgICAgICAgICogdGVzdGlu
Zy9JbnRlcm5hbHMuaDogQWRkIGEgbWV0aG9kIHRvIHF1ZXVlIGEgdGVzdCBtaWNyb3Rhc2suCisg
ICAgICAgIChXZWJDb3JlOjpJbnRlcm5hbHM6OnF1ZXVlTWljcm9UYXNrKToKKyAgICAgICAgKiB0
ZXN0aW5nL0ludGVybmFscy5pZGw6IEV4cG9zZSB0ZXN0IG1pY3JvdGFzayBxdWV1ZWluZyB0byB0
ZXN0IEpTLgorICAgICAgICAqIHRlc3RpbmcvTWljcm9UYXNrVGVzdC5jcHA6IEFkZCBhIHRlc3Qg
Y2xhc3MgdGhhdCBpbXBsZW1lbnRzIGEgbWljcm90YXNrIGFuZCBwcmludHMgdG8gdGhlIGNvbnNv
bGUgd2hlbiBpdCBydW5zLgorICAgICAgICAoV2ViQ29yZTo6TWljcm9UYXNrVGVzdDo6cnVuKTog
UnVuIHRoZSBtaWNyb3Rhc2sKKyAgICAgICAgKFdlYkNvcmU6Ok1pY3JvVGFza1Rlc3Q6OmNyZWF0
ZSk6IENyZWF0ZSBhIHRlc3QgbWljcm90YXNrLgorICAgICAgICAqIHRlc3RpbmcvTWljcm9UYXNr
VGVzdC5oOiBBZGQgYSB0ZXN0IGNsYXNzIHRoYXQgaW1wbGVtZW50cyBhIG1pY3JvdGFzay4KKyAg
ICAgICAgKFdlYkNvcmU6Ok1pY3JvVGFza1Rlc3Q6OnJ1bik6CisgICAgICAgIChXZWJDb3JlOjpN
aWNyb1Rhc2tUZXN0OjpjcmVhdGUpOgorCiAyMDE1LTAyLTEzICBTZXJnaW8gVmlsbGFyIFNlbmlu
ICA8c3ZpbGxhckBpZ2FsaWEuY29tPgogCiAgICAgICAgIFtDU1MgR3JpZCBMYXlvdXRdIEludmFs
aWQgaW5pdGlhbGl6YXRpb24gb2YgdHJhY2sgc2l6ZXMgd2l0aCBub24gc3Bhbm5pbmcgZ3JpZCBp
dGVtcwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvQ01ha2VMaXN0cy50eHQgYi9Tb3VyY2Uv
V2ViQ29yZS9DTWFrZUxpc3RzLnR4dAppbmRleCA2NDY2YmE1MTJmZWVjMTM1ZWU3MGMzNzNhMmU1
NjlkNmEwYzFkM2UwLi42MDJhM2VmMDYwYjkwZDVmYWE5NzBhY2EzMjY0MzI3NjNkZDEzMGRkIDEw
MDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9DTWFrZUxpc3RzLnR4dAorKysgYi9Tb3VyY2UvV2Vi
Q29yZS9DTWFrZUxpc3RzLnR4dApAQCAtMTM2OCw2ICsxMzY4LDcgQEAgc2V0KFdlYkNvcmVfU09V
UkNFUwogICAgIGRvbS9NZXNzYWdlRXZlbnQuY3BwCiAgICAgZG9tL01lc3NhZ2VQb3J0LmNwcAog
ICAgIGRvbS9NZXNzYWdlUG9ydENoYW5uZWwuY3BwCisgICAgZG9tL01pY3JvVGFzay5jcHAKICAg
ICBkb20vTW91c2VFdmVudC5jcHAKICAgICBkb20vTW91c2VSZWxhdGVkRXZlbnQuY3BwCiAgICAg
ZG9tL011dGF0aW9uRXZlbnQuY3BwCkBAIC0zMTUwLDYgKzMxNTEsNyBAQCBzZXQoV2ViQ29yZVRl
c3RTdXBwb3J0X1NPVVJDRVMKICAgICB0ZXN0aW5nL0ludGVybmFsU2V0dGluZ3MuY3BwCiAgICAg
dGVzdGluZy9JbnRlcm5hbHMuY3BwCiAKKyAgICB0ZXN0aW5nL01pY3JvVGFza1Rlc3QuY3BwCiAg
ICAgdGVzdGluZy9Nb2NrUGFnZU92ZXJsYXlDbGllbnQuY3BwCiAKICAgICB0ZXN0aW5nL2pzL1dl
YkNvcmVUZXN0U3VwcG9ydC5jcHAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUu
dmN4cHJvai9XZWJDb3JlLnZjeHByb2ogYi9Tb3VyY2UvV2ViQ29yZS9XZWJDb3JlLnZjeHByb2ov
V2ViQ29yZS52Y3hwcm9qCmluZGV4IDE0NDJiMWRhOTk3OWU5Y2MwOGIxZjNiZDIxNmI5NzJmMzVh
NDE0NTYuLjdlODhmZmFjNTYyZGRlNTBjNTI2MzZmMTI2YWE3ZDJhMTg0ZDAzY2MgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUudmN4cHJvai9XZWJDb3JlLnZjeHByb2oKKysrIGIv
U291cmNlL1dlYkNvcmUvV2ViQ29yZS52Y3hwcm9qL1dlYkNvcmUudmN4cHJvagpAQCAtMTM1NzUs
NiArMTM1NzUsNyBAQAogICAgICAgPEV4Y2x1ZGVkRnJvbUJ1aWxkIENvbmRpdGlvbj0iJyQoQ29u
ZmlndXJhdGlvbil8JChQbGF0Zm9ybSknPT0nUHJvZHVjdGlvbnxXaW4zMiciPnRydWU8L0V4Y2x1
ZGVkRnJvbUJ1aWxkPgogICAgICAgPEV4Y2x1ZGVkRnJvbUJ1aWxkIENvbmRpdGlvbj0iJyQoQ29u
ZmlndXJhdGlvbil8JChQbGF0Zm9ybSknPT0nUHJvZHVjdGlvbnx4NjQnIj50cnVlPC9FeGNsdWRl
ZEZyb21CdWlsZD4KICAgICA8L0NsQ29tcGlsZT4KKyAgICA8Q2xDb21waWxlIEluY2x1ZGU9Ii4u
XGRvbVxNaWNyb1Rhc2suY3BwIiAvPgogICAgIDxDbENvbXBpbGUgSW5jbHVkZT0iLi5cZG9tXE1v
dXNlRXZlbnQuY3BwIj4KICAgICAgIDxFeGNsdWRlZEZyb21CdWlsZCBDb25kaXRpb249IickKENv
bmZpZ3VyYXRpb24pfCQoUGxhdGZvcm0pJz09J0RlYnVnfFdpbjMyJyI+dHJ1ZTwvRXhjbHVkZWRG
cm9tQnVpbGQ+CiAgICAgICA8RXhjbHVkZWRGcm9tQnVpbGQgQ29uZGl0aW9uPSInJChDb25maWd1
cmF0aW9uKXwkKFBsYXRmb3JtKSc9PSdEZWJ1Z3x4NjQnIj50cnVlPC9FeGNsdWRlZEZyb21CdWls
ZD4KQEAgLTIwNzUwLDYgKzIwNzUxLDcgQEAKICAgICA8Q2xJbmNsdWRlIEluY2x1ZGU9Ii4uXGRv
bVxNZXNzYWdlRXZlbnQuaCIgLz4KICAgICA8Q2xJbmNsdWRlIEluY2x1ZGU9Ii4uXGRvbVxNZXNz
YWdlUG9ydC5oIiAvPgogICAgIDxDbEluY2x1ZGUgSW5jbHVkZT0iLi5cZG9tXE1lc3NhZ2VQb3J0
Q2hhbm5lbC5oIiAvPgorICAgIDxDbEluY2x1ZGUgSW5jbHVkZT0iLi5cZG9tXE1pY3JvVGFzay5o
IiAvPgogICAgIDxDbEluY2x1ZGUgSW5jbHVkZT0iLi5cZG9tXE1vdXNlRXZlbnQuaCIgLz4KICAg
ICA8Q2xJbmNsdWRlIEluY2x1ZGU9Ii4uXGRvbVxNb3VzZVJlbGF0ZWRFdmVudC5oIiAvPgogICAg
IDxDbEluY2x1ZGUgSW5jbHVkZT0iLi5cZG9tXE11dGF0aW9uRXZlbnQuaCIgLz4KQEAgLTIxNTUw
LDQgKzIxNTUyLDQgQEAKICAgPEltcG9ydEdyb3VwIExhYmVsPSJFeHRlbnNpb25UYXJnZXRzIj4K
ICAgICA8SW1wb3J0IFByb2plY3Q9IiQoVkNUYXJnZXRzUGF0aClcQnVpbGRDdXN0b21pemF0aW9u
c1xtYXNtLnRhcmdldHMiIC8+CiAgIDwvSW1wb3J0R3JvdXA+Ci08L1Byb2plY3Q+ClwgTm8gbmV3
bGluZSBhdCBlbmQgb2YgZmlsZQorPC9Qcm9qZWN0PgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNv
cmUvV2ViQ29yZS52Y3hwcm9qL1dlYkNvcmUudmN4cHJvai5maWx0ZXJzIGIvU291cmNlL1dlYkNv
cmUvV2ViQ29yZS52Y3hwcm9qL1dlYkNvcmUudmN4cHJvai5maWx0ZXJzCmluZGV4IDcyZThhZWU1
NWJhMjEzZDkxMTdlNmM5ZmNmNmM1MmMyNjUzNGQ0ZTIuLjY3OGI0ZDQ4YTEwZTEyY2ZjZmNhNWZk
NDEyYTk0ZTc2YmI1ZGFhMGUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUudmN4
cHJvai9XZWJDb3JlLnZjeHByb2ouZmlsdGVycworKysgYi9Tb3VyY2UvV2ViQ29yZS9XZWJDb3Jl
LnZjeHByb2ovV2ViQ29yZS52Y3hwcm9qLmZpbHRlcnMKQEAgLTMyMDQsNiArMzIwNCw5IEBACiAg
ICAgPENsQ29tcGlsZSBJbmNsdWRlPSIuLlxkb21cTWVzc2FnZVBvcnRDaGFubmVsLmNwcCI+CiAg
ICAgICA8RmlsdGVyPmRvbTwvRmlsdGVyPgogICAgIDwvQ2xDb21waWxlPgorICAgIDxDbENvbXBp
bGUgSW5jbHVkZT0iLi5cZG9tXE1pY3JvVGFzay5jcHAiPgorICAgICAgPEZpbHRlcj5kb208L0Zp
bHRlcj4KKyAgICA8L0NsQ29tcGlsZT4KICAgICA8Q2xDb21waWxlIEluY2x1ZGU9Ii4uXGRvbVxN
b3VzZUV2ZW50LmNwcCI+CiAgICAgICA8RmlsdGVyPmRvbTwvRmlsdGVyPgogICAgIDwvQ2xDb21w
aWxlPgpAQCAtMTAyNjYsNiArMTAyNjksOSBAQAogICAgIDxDbEluY2x1ZGUgSW5jbHVkZT0iLi5c
ZG9tXE1lc3NhZ2VQb3J0Q2hhbm5lbC5oIj4KICAgICAgIDxGaWx0ZXI+ZG9tPC9GaWx0ZXI+CiAg
ICAgPC9DbEluY2x1ZGU+CisgICAgPENsSW5jbHVkZSBJbmNsdWRlPSIuLlxkb21cTWljcm9UYXNr
LmgiPgorICAgICAgPEZpbHRlcj5kb208L0ZpbHRlcj4KKyAgICA8L0NsSW5jbHVkZT4KICAgICA8
Q2xJbmNsdWRlIEluY2x1ZGU9Ii4uXGRvbVxNb3VzZUV2ZW50LmgiPgogICAgICAgPEZpbHRlcj5k
b208L0ZpbHRlcj4KICAgICA8L0NsSW5jbHVkZT4KQEAgLTE1Mzc0LDQgKzE1MzgwLDQgQEAKICAg
ICAgIDxGaWx0ZXI+cGxhdGZvcm1cd2luPC9GaWx0ZXI+CiAgICAgPC9NQVNNPgogICA8L0l0ZW1H
cm91cD4KLTwvUHJvamVjdD4KXCBObyBuZXdsaW5lIGF0IGVuZCBvZiBmaWxlCis8L1Byb2plY3Q+
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9XZWJDb3JlLnZjeHByb2ovV2ViQ29yZVRlc3RT
dXBwb3J0LnZjeHByb2ogYi9Tb3VyY2UvV2ViQ29yZS9XZWJDb3JlLnZjeHByb2ovV2ViQ29yZVRl
c3RTdXBwb3J0LnZjeHByb2oKaW5kZXggZTNkYzgxOWZmOWU1M2IyYTRlMDVlYTAzN2I5YzU5NWM3
Y2Y3NWMxMy4uMTVmZWQ1YmUxMDY0OGQ3NWE4ZGExMGI1NDBkMDgxMzkxNWQyOGU1YiAxMDA2NDQK
LS0tIGEvU291cmNlL1dlYkNvcmUvV2ViQ29yZS52Y3hwcm9qL1dlYkNvcmVUZXN0U3VwcG9ydC52
Y3hwcm9qCisrKyBiL1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUudmN4cHJvai9XZWJDb3JlVGVzdFN1
cHBvcnQudmN4cHJvagpAQCAtNzA2LDYgKzcwNiw2OCBAQAogICAgICAgPEZvcmNlZEluY2x1ZGVG
aWxlcyBDb25kaXRpb249IickKENvbmZpZ3VyYXRpb24pfCQoUGxhdGZvcm0pJz09J1Byb2R1Y3Rp
b258eDY0JyI+CiAgICAgICA8L0ZvcmNlZEluY2x1ZGVGaWxlcz4KICAgICA8L0NsQ29tcGlsZT4K
KyAgICA8Q2xDb21waWxlIEluY2x1ZGU9Ii4uXHRlc3RpbmdcTWljcm9UYXNrVGVzdC5jcHAiPgor
ICAgICAgPFByZWNvbXBpbGVkSGVhZGVyIENvbmRpdGlvbj0iJyQoQ29uZmlndXJhdGlvbil8JChQ
bGF0Zm9ybSknPT0nRGVidWd8V2luMzInIj4KKyAgICAgIDwvUHJlY29tcGlsZWRIZWFkZXI+Cisg
ICAgICA8UHJlY29tcGlsZWRIZWFkZXIgQ29uZGl0aW9uPSInJChDb25maWd1cmF0aW9uKXwkKFBs
YXRmb3JtKSc9PSdEZWJ1Z3x4NjQnIj4KKyAgICAgIDwvUHJlY29tcGlsZWRIZWFkZXI+CisgICAg
ICA8UHJlY29tcGlsZWRIZWFkZXIgQ29uZGl0aW9uPSInJChDb25maWd1cmF0aW9uKXwkKFBsYXRm
b3JtKSc9PSdEZWJ1Z19XaW5DYWlyb3xXaW4zMiciPgorICAgICAgPC9QcmVjb21waWxlZEhlYWRl
cj4KKyAgICAgIDxQcmVjb21waWxlZEhlYWRlciBDb25kaXRpb249IickKENvbmZpZ3VyYXRpb24p
fCQoUGxhdGZvcm0pJz09J0RlYnVnX1dpbkNhaXJvfHg2NCciPgorICAgICAgPC9QcmVjb21waWxl
ZEhlYWRlcj4KKyAgICAgIDxQcmVjb21waWxlZEhlYWRlciBDb25kaXRpb249IickKENvbmZpZ3Vy
YXRpb24pfCQoUGxhdGZvcm0pJz09J0RlYnVnU3VmZml4fFdpbjMyJyI+CisgICAgICA8L1ByZWNv
bXBpbGVkSGVhZGVyPgorICAgICAgPFByZWNvbXBpbGVkSGVhZGVyIENvbmRpdGlvbj0iJyQoQ29u
ZmlndXJhdGlvbil8JChQbGF0Zm9ybSknPT0nRGVidWdTdWZmaXh8eDY0JyI+CisgICAgICA8L1By
ZWNvbXBpbGVkSGVhZGVyPgorICAgICAgPERpc2FibGVTcGVjaWZpY1dhcm5pbmdzIENvbmRpdGlv
bj0iJyQoQ29uZmlndXJhdGlvbil8JChQbGF0Zm9ybSknPT0nRGVidWd8V2luMzInIj40MDY1OzQy
NzM7NDU2NTs0NzAxOzQ3MDI7JShEaXNhYmxlU3BlY2lmaWNXYXJuaW5ncyk8L0Rpc2FibGVTcGVj
aWZpY1dhcm5pbmdzPgorICAgICAgPERpc2FibGVTcGVjaWZpY1dhcm5pbmdzIENvbmRpdGlvbj0i
JyQoQ29uZmlndXJhdGlvbil8JChQbGF0Zm9ybSknPT0nRGVidWd8eDY0JyI+NDA2NTs0MjczOzQ1
NjU7NDcwMTs0NzAyOyUoRGlzYWJsZVNwZWNpZmljV2FybmluZ3MpPC9EaXNhYmxlU3BlY2lmaWNX
YXJuaW5ncz4KKyAgICAgIDxEaXNhYmxlU3BlY2lmaWNXYXJuaW5ncyBDb25kaXRpb249IickKENv
bmZpZ3VyYXRpb24pfCQoUGxhdGZvcm0pJz09J0RlYnVnX1dpbkNhaXJvfFdpbjMyJyI+NDA2NTs0
MjczOzQ1NjU7NDcwMTs0NzAyOyUoRGlzYWJsZVNwZWNpZmljV2FybmluZ3MpPC9EaXNhYmxlU3Bl
Y2lmaWNXYXJuaW5ncz4KKyAgICAgIDxEaXNhYmxlU3BlY2lmaWNXYXJuaW5ncyBDb25kaXRpb249
IickKENvbmZpZ3VyYXRpb24pfCQoUGxhdGZvcm0pJz09J0RlYnVnX1dpbkNhaXJvfHg2NCciPjQw
NjU7NDI3Mzs0NTY1OzQ3MDE7NDcwMjslKERpc2FibGVTcGVjaWZpY1dhcm5pbmdzKTwvRGlzYWJs
ZVNwZWNpZmljV2FybmluZ3M+CisgICAgICA8RGlzYWJsZVNwZWNpZmljV2FybmluZ3MgQ29uZGl0
aW9uPSInJChDb25maWd1cmF0aW9uKXwkKFBsYXRmb3JtKSc9PSdEZWJ1Z1N1ZmZpeHxXaW4zMici
PjQwNjU7NDI3Mzs0NTY1OzQ3MDE7NDcwMjslKERpc2FibGVTcGVjaWZpY1dhcm5pbmdzKTwvRGlz
YWJsZVNwZWNpZmljV2FybmluZ3M+CisgICAgICA8RGlzYWJsZVNwZWNpZmljV2FybmluZ3MgQ29u
ZGl0aW9uPSInJChDb25maWd1cmF0aW9uKXwkKFBsYXRmb3JtKSc9PSdEZWJ1Z1N1ZmZpeHx4NjQn
Ij40MDY1OzQyNzM7NDU2NTs0NzAxOzQ3MDI7JShEaXNhYmxlU3BlY2lmaWNXYXJuaW5ncyk8L0Rp
c2FibGVTcGVjaWZpY1dhcm5pbmdzPgorICAgICAgPEZvcmNlZEluY2x1ZGVGaWxlcyBDb25kaXRp
b249IickKENvbmZpZ3VyYXRpb24pfCQoUGxhdGZvcm0pJz09J0RlYnVnfFdpbjMyJyI+CisgICAg
ICA8L0ZvcmNlZEluY2x1ZGVGaWxlcz4KKyAgICAgIDxGb3JjZWRJbmNsdWRlRmlsZXMgQ29uZGl0
aW9uPSInJChDb25maWd1cmF0aW9uKXwkKFBsYXRmb3JtKSc9PSdEZWJ1Z3x4NjQnIj4KKyAgICAg
IDwvRm9yY2VkSW5jbHVkZUZpbGVzPgorICAgICAgPEZvcmNlZEluY2x1ZGVGaWxlcyBDb25kaXRp
b249IickKENvbmZpZ3VyYXRpb24pfCQoUGxhdGZvcm0pJz09J0RlYnVnX1dpbkNhaXJvfFdpbjMy
JyI+CisgICAgICA8L0ZvcmNlZEluY2x1ZGVGaWxlcz4KKyAgICAgIDxGb3JjZWRJbmNsdWRlRmls
ZXMgQ29uZGl0aW9uPSInJChDb25maWd1cmF0aW9uKXwkKFBsYXRmb3JtKSc9PSdEZWJ1Z19XaW5D
YWlyb3x4NjQnIj4KKyAgICAgIDwvRm9yY2VkSW5jbHVkZUZpbGVzPgorICAgICAgPEZvcmNlZElu
Y2x1ZGVGaWxlcyBDb25kaXRpb249IickKENvbmZpZ3VyYXRpb24pfCQoUGxhdGZvcm0pJz09J0Rl
YnVnU3VmZml4fFdpbjMyJyI+CisgICAgICA8L0ZvcmNlZEluY2x1ZGVGaWxlcz4KKyAgICAgIDxG
b3JjZWRJbmNsdWRlRmlsZXMgQ29uZGl0aW9uPSInJChDb25maWd1cmF0aW9uKXwkKFBsYXRmb3Jt
KSc9PSdEZWJ1Z1N1ZmZpeHx4NjQnIj4KKyAgICAgIDwvRm9yY2VkSW5jbHVkZUZpbGVzPgorICAg
ICAgPFByZWNvbXBpbGVkSGVhZGVyIENvbmRpdGlvbj0iJyQoQ29uZmlndXJhdGlvbil8JChQbGF0
Zm9ybSknPT0nUmVsZWFzZXxXaW4zMiciPgorICAgICAgPC9QcmVjb21waWxlZEhlYWRlcj4KKyAg
ICAgIDxQcmVjb21waWxlZEhlYWRlciBDb25kaXRpb249IickKENvbmZpZ3VyYXRpb24pfCQoUGxh
dGZvcm0pJz09J1JlbGVhc2V8eDY0JyI+CisgICAgICA8L1ByZWNvbXBpbGVkSGVhZGVyPgorICAg
ICAgPFByZWNvbXBpbGVkSGVhZGVyIENvbmRpdGlvbj0iJyQoQ29uZmlndXJhdGlvbil8JChQbGF0
Zm9ybSknPT0nUmVsZWFzZV9XaW5DYWlyb3xXaW4zMiciPgorICAgICAgPC9QcmVjb21waWxlZEhl
YWRlcj4KKyAgICAgIDxQcmVjb21waWxlZEhlYWRlciBDb25kaXRpb249IickKENvbmZpZ3VyYXRp
b24pfCQoUGxhdGZvcm0pJz09J1JlbGVhc2VfV2luQ2Fpcm98eDY0JyI+CisgICAgICA8L1ByZWNv
bXBpbGVkSGVhZGVyPgorICAgICAgPFByZWNvbXBpbGVkSGVhZGVyIENvbmRpdGlvbj0iJyQoQ29u
ZmlndXJhdGlvbil8JChQbGF0Zm9ybSknPT0nUHJvZHVjdGlvbnxXaW4zMiciPgorICAgICAgPC9Q
cmVjb21waWxlZEhlYWRlcj4KKyAgICAgIDxQcmVjb21waWxlZEhlYWRlciBDb25kaXRpb249Iick
KENvbmZpZ3VyYXRpb24pfCQoUGxhdGZvcm0pJz09J1Byb2R1Y3Rpb258eDY0JyI+CisgICAgICA8
L1ByZWNvbXBpbGVkSGVhZGVyPgorICAgICAgPERpc2FibGVTcGVjaWZpY1dhcm5pbmdzIENvbmRp
dGlvbj0iJyQoQ29uZmlndXJhdGlvbil8JChQbGF0Zm9ybSknPT0nUmVsZWFzZXxXaW4zMiciPjQw
NjU7NDI3Mzs0NTY1OzQ3MDE7NDcwMjslKERpc2FibGVTcGVjaWZpY1dhcm5pbmdzKTwvRGlzYWJs
ZVNwZWNpZmljV2FybmluZ3M+CisgICAgICA8RGlzYWJsZVNwZWNpZmljV2FybmluZ3MgQ29uZGl0
aW9uPSInJChDb25maWd1cmF0aW9uKXwkKFBsYXRmb3JtKSc9PSdSZWxlYXNlfHg2NCciPjQwNjU7
NDI3Mzs0NTY1OzQ3MDE7NDcwMjslKERpc2FibGVTcGVjaWZpY1dhcm5pbmdzKTwvRGlzYWJsZVNw
ZWNpZmljV2FybmluZ3M+CisgICAgICA8RGlzYWJsZVNwZWNpZmljV2FybmluZ3MgQ29uZGl0aW9u
PSInJChDb25maWd1cmF0aW9uKXwkKFBsYXRmb3JtKSc9PSdSZWxlYXNlX1dpbkNhaXJvfFdpbjMy
JyI+NDA2NTs0MjczOzQ1NjU7NDcwMTs0NzAyOyUoRGlzYWJsZVNwZWNpZmljV2FybmluZ3MpPC9E
aXNhYmxlU3BlY2lmaWNXYXJuaW5ncz4KKyAgICAgIDxEaXNhYmxlU3BlY2lmaWNXYXJuaW5ncyBD
b25kaXRpb249IickKENvbmZpZ3VyYXRpb24pfCQoUGxhdGZvcm0pJz09J1JlbGVhc2VfV2luQ2Fp
cm98eDY0JyI+NDA2NTs0MjczOzQ1NjU7NDcwMTs0NzAyOyUoRGlzYWJsZVNwZWNpZmljV2Fybmlu
Z3MpPC9EaXNhYmxlU3BlY2lmaWNXYXJuaW5ncz4KKyAgICAgIDxEaXNhYmxlU3BlY2lmaWNXYXJu
aW5ncyBDb25kaXRpb249IickKENvbmZpZ3VyYXRpb24pfCQoUGxhdGZvcm0pJz09J1Byb2R1Y3Rp
b258V2luMzInIj40MDY1OzQyNzM7NDU2NTs0NzAxOzQ3MDI7JShEaXNhYmxlU3BlY2lmaWNXYXJu
aW5ncyk8L0Rpc2FibGVTcGVjaWZpY1dhcm5pbmdzPgorICAgICAgPERpc2FibGVTcGVjaWZpY1dh
cm5pbmdzIENvbmRpdGlvbj0iJyQoQ29uZmlndXJhdGlvbil8JChQbGF0Zm9ybSknPT0nUHJvZHVj
dGlvbnx4NjQnIj40MDY1OzQyNzM7NDU2NTs0NzAxOzQ3MDI7JShEaXNhYmxlU3BlY2lmaWNXYXJu
aW5ncyk8L0Rpc2FibGVTcGVjaWZpY1dhcm5pbmdzPgorICAgICAgPEZvcmNlZEluY2x1ZGVGaWxl
cyBDb25kaXRpb249IickKENvbmZpZ3VyYXRpb24pfCQoUGxhdGZvcm0pJz09J1JlbGVhc2V8V2lu
MzInIj4KKyAgICAgIDwvRm9yY2VkSW5jbHVkZUZpbGVzPgorICAgICAgPEZvcmNlZEluY2x1ZGVG
aWxlcyBDb25kaXRpb249IickKENvbmZpZ3VyYXRpb24pfCQoUGxhdGZvcm0pJz09J1JlbGVhc2V8
eDY0JyI+CisgICAgICA8L0ZvcmNlZEluY2x1ZGVGaWxlcz4KKyAgICAgIDxGb3JjZWRJbmNsdWRl
RmlsZXMgQ29uZGl0aW9uPSInJChDb25maWd1cmF0aW9uKXwkKFBsYXRmb3JtKSc9PSdSZWxlYXNl
X1dpbkNhaXJvfFdpbjMyJyI+CisgICAgICA8L0ZvcmNlZEluY2x1ZGVGaWxlcz4KKyAgICAgIDxG
b3JjZWRJbmNsdWRlRmlsZXMgQ29uZGl0aW9uPSInJChDb25maWd1cmF0aW9uKXwkKFBsYXRmb3Jt
KSc9PSdSZWxlYXNlX1dpbkNhaXJvfHg2NCciPgorICAgICAgPC9Gb3JjZWRJbmNsdWRlRmlsZXM+
CisgICAgICA8Rm9yY2VkSW5jbHVkZUZpbGVzIENvbmRpdGlvbj0iJyQoQ29uZmlndXJhdGlvbil8
JChQbGF0Zm9ybSknPT0nUHJvZHVjdGlvbnxXaW4zMiciPgorICAgICAgPC9Gb3JjZWRJbmNsdWRl
RmlsZXM+CisgICAgICA8Rm9yY2VkSW5jbHVkZUZpbGVzIENvbmRpdGlvbj0iJyQoQ29uZmlndXJh
dGlvbil8JChQbGF0Zm9ybSknPT0nUHJvZHVjdGlvbnx4NjQnIj4KKyAgICAgIDwvRm9yY2VkSW5j
bHVkZUZpbGVzPgorICAgIDwvQ2xDb21waWxlPgogICAgIDxDbENvbXBpbGUgSW5jbHVkZT0iLi5c
dGVzdGluZ1xNb2NrUGFnZU92ZXJsYXlDbGllbnQuY3BwIj4KICAgICAgIDxQcmVjb21waWxlZEhl
YWRlciBDb25kaXRpb249IickKENvbmZpZ3VyYXRpb24pfCQoUGxhdGZvcm0pJz09J0RlYnVnfFdp
bjMyJyI+CiAgICAgICA8L1ByZWNvbXBpbGVkSGVhZGVyPgpAQCAtOTE3LDYgKzk3OSw3IEBACiAg
ICAgPENsSW5jbHVkZSBJbmNsdWRlPSIkKENvbmZpZ3VyYXRpb25CdWlsZERpcilcb2JqJChQbGF0
Zm9ybUFyY2hpdGVjdHVyZSlcV2ViQ29yZVxEZXJpdmVkU291cmNlc1xKU0ludGVybmFsU2V0dGlu
Z3NHZW5lcmF0ZWQuaCIgLz4KICAgICA8Q2xJbmNsdWRlIEluY2x1ZGU9Ii4uXHRlc3RpbmdcTWFs
bG9jU3RhdGlzdGljcy5oIiAvPgogICAgIDxDbEluY2x1ZGUgSW5jbHVkZT0iLi5cdGVzdGluZ1xN
ZW1vcnlJbmZvLmgiIC8+CisgICAgPENsSW5jbHVkZSBJbmNsdWRlPSIuLlx0ZXN0aW5nXE1pY3Jv
VGFza1Rlc3QuaCIgLz4KICAgICA8Q2xJbmNsdWRlIEluY2x1ZGU9Ii4uXHRlc3RpbmdcTW9ja0NE
TS5oIiAvPgogICAgIDxDbEluY2x1ZGUgSW5jbHVkZT0iLi5cdGVzdGluZ1xNb2NrUGFnZU92ZXJs
YXlDbGllbnQuaCIgLz4KICAgICA8Q2xJbmNsdWRlIEluY2x1ZGU9Ii4uXHRlc3RpbmdcVHlwZUNv
bnZlcnNpb25zLmgiIC8+CkBAIC05MjgsNCArOTkxLDQgQEAKICAgPEltcG9ydCBQcm9qZWN0PSIk
KFZDVGFyZ2V0c1BhdGgpXE1pY3Jvc29mdC5DcHAudGFyZ2V0cyIgLz4KICAgPEltcG9ydEdyb3Vw
IExhYmVsPSJFeHRlbnNpb25UYXJnZXRzIj4KICAgPC9JbXBvcnRHcm91cD4KLTwvUHJvamVjdD4K
XCBObyBuZXdsaW5lIGF0IGVuZCBvZiBmaWxlCis8L1Byb2plY3Q+CmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViQ29yZS9XZWJDb3JlLnZjeHByb2ovV2ViQ29yZVRlc3RTdXBwb3J0LnZjeHByb2ouZmls
dGVycyBiL1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUudmN4cHJvai9XZWJDb3JlVGVzdFN1cHBvcnQu
dmN4cHJvai5maWx0ZXJzCmluZGV4IDY0MDJkNWU0ZTBiNTY0OTE5N2RmODUwM2IyNDA0ZjFkMTIw
OGY2NjkuLjc2MjhmMjdmZTAxYTA3MTgzMDk1YTc5Y2ExNDA3YWZmMzQyYzk1MDggMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUudmN4cHJvai9XZWJDb3JlVGVzdFN1cHBvcnQudmN4
cHJvai5maWx0ZXJzCisrKyBiL1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUudmN4cHJvai9XZWJDb3Jl
VGVzdFN1cHBvcnQudmN4cHJvai5maWx0ZXJzCkBAIC0zOSw2ICszOSw5IEBACiAgICAgPENsQ29t
cGlsZSBJbmNsdWRlPSIuLlx0ZXN0aW5nXGpzXFdlYkNvcmVUZXN0U3VwcG9ydC5jcHAiPgogICAg
ICAgPEZpbHRlcj50ZXN0aW5nPC9GaWx0ZXI+CiAgICAgPC9DbENvbXBpbGU+CisgICAgPENsQ29t
cGlsZSBJbmNsdWRlPSIuLlx0ZXN0aW5nXE1pY3JvVGFza1Rlc3QuY3BwIj4KKyAgICAgIDxGaWx0
ZXI+dGVzdGluZzwvRmlsdGVyPgorICAgIDwvQ2xDb21waWxlPgogICAgIDxDbENvbXBpbGUgSW5j
bHVkZT0iLi5cdGVzdGluZ1xNb2NrQ0RNLmNwcCI+CiAgICAgICA8RmlsdGVyPnRlc3Rpbmc8L0Zp
bHRlcj4KICAgICA8L0NsQ29tcGlsZT4KQEAgLTg3LDYgKzkwLDkgQEAKICAgICAgIDxGaWx0ZXI+
dGVzdGluZzwvRmlsdGVyPgogICAgIDwvQ2xJbmNsdWRlPgogICAgIDxDbEluY2x1ZGUgSW5jbHVk
ZT0iLi5cY29uZmlnLmgiIC8+CisgICAgPENsSW5jbHVkZSBJbmNsdWRlPSIuLlx0ZXN0aW5nXE1p
Y3JvVGFza1Rlc3QuaCI+CisgICAgICA8RmlsdGVyPnRlc3Rpbmc8L0ZpbHRlcj4KKyAgICA8L0Ns
SW5jbHVkZT4KICAgICA8Q2xJbmNsdWRlIEluY2x1ZGU9Ii4uXHRlc3RpbmdcTW9ja0NETS5oIj4K
ICAgICAgIDxGaWx0ZXI+dGVzdGluZzwvRmlsdGVyPgogICAgIDwvQ2xJbmNsdWRlPgpAQCAtOTQs
NCArMTAwLDQgQEAKICAgICAgIDxGaWx0ZXI+dGVzdGluZzwvRmlsdGVyPgogICAgIDwvQ2xJbmNs
dWRlPgogICA8L0l0ZW1Hcm91cD4KLTwvUHJvamVjdD4KXCBObyBuZXdsaW5lIGF0IGVuZCBvZiBm
aWxlCis8L1Byb2plY3Q+CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9XZWJDb3JlLnhjb2Rl
cHJvai9wcm9qZWN0LnBieHByb2ogYi9Tb3VyY2UvV2ViQ29yZS9XZWJDb3JlLnhjb2RlcHJvai9w
cm9qZWN0LnBieHByb2oKaW5kZXggZThjOTdhNjIzZmU2NDQ0YmFmYzNkZWE3MWVjZTU0NGVkM2Qx
ZDAxNS4uMDg2ZTFlMTk2NDE1NDk2YTFlZWY2NThhYTVhZjk3ZGJmMjM5YTE0MSAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYkNvcmUvV2ViQ29yZS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qCisrKyBi
L1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvagpAQCAtMjA4
NCw2ICsyMDg0LDcgQEAKIAkJNTM2RDVBMjMxOTNFOEUwQzAwQ0U0Q0FCIC8qIFBhcnNpbmdVdGls
aXRpZXMuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDUz
NkQ1QTIyMTkzRThFMEMwMENFNENBQiAvKiBQYXJzaW5nVXRpbGl0aWVzLmggKi87IH07CiAJCTUz
NkQ1QTI1MTkzRjQwRkMwMENFNENBQiAvKiBTb3VyY2VTaXplTGlzdC5jcHAgaW4gU291cmNlcyAq
LyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA1MzZENUEyNDE5M0Y0MEZDMDBDRTRD
QUIgLyogU291cmNlU2l6ZUxpc3QuY3BwICovOyB9OwogCQk1MzZENUEyNzE5M0Y0MTBCMDBDRTRD
QUIgLyogU291cmNlU2l6ZUxpc3QuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmls
ZTsgZmlsZVJlZiA9IDUzNkQ1QTI2MTkzRjQxMEIwMENFNENBQiAvKiBTb3VyY2VTaXplTGlzdC5o
ICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CisJCTUzQjg5
NUFGMTlEQzdFRDkwMDlDQUE5MyAvKiBNaWNyb1Rhc2suaCBpbiBIZWFkZXJzICovID0ge2lzYSA9
IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDUzQjg5NUFEMTlEQzdDMzcwMDlDQUE5MyAvKiBNaWNy
b1Rhc2suaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQdWJsaWMsICk7IH07IH07CiAJ
CTUzQzgyOThEMTNEOEQ5MjcwMERFMkRFQiAvKiBSZW5kZXJGbGV4aWJsZUJveC5jcHAgaW4gU291
cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA1M0M4Mjk4QjEzRDhEOTI3
MDBERTJERUIgLyogUmVuZGVyRmxleGlibGVCb3guY3BwICovOyB9OwogCQk1M0M4Mjk4RTEzRDhE
OTI3MDBERTJERUIgLyogUmVuZGVyRmxleGlibGVCb3guaCBpbiBIZWFkZXJzICovID0ge2lzYSA9
IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDUzQzgyOThDMTNEOEQ5MjcwMERFMkRFQiAvKiBSZW5k
ZXJGbGV4aWJsZUJveC5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7
IH07IH07CiAJCTUzRTI5RTVFMTY3QThBMTkwMDU4NkQzRCAvKiBJbnRlcm5hbFNldHRpbmdzR2Vu
ZXJhdGVkLmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9
IDUzRTI5RTVDMTY3QThBMTkwMDU4NkQzRCAvKiBJbnRlcm5hbFNldHRpbmdzR2VuZXJhdGVkLmNw
cCAqLzsgfTsKQEAgLTU2MTIsNiArNTYxMyw5IEBACiAJCUNBM0JGNjdFMTBEOTlCQUUwMEU2Q0U1
MyAvKiBTY3JvbGxBbmltYXRvci5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxl
OyBmaWxlUmVmID0gQ0EzQkY2N0QxMEQ5OUJBRTAwRTZDRTUzIC8qIFNjcm9sbEFuaW1hdG9yLmgg
Ki87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKIAkJQ0FFOUY5
MEYxNDY0NDFGMDAwQzI0NUIwIC8qIENTU0FzcGVjdFJhdGlvVmFsdWUuY3BwIGluIFNvdXJjZXMg
Ki8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQ0FFOUY5MEQxNDY0NDFGMDAwQzI0
NUIwIC8qIENTU0FzcGVjdFJhdGlvVmFsdWUuY3BwICovOyB9OwogCQlDQUU5RjkxMDE0NjQ0MUYw
MDBDMjQ1QjAgLyogQ1NTQXNwZWN0UmF0aW9WYWx1ZS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0g
UEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQ0FFOUY5MEUxNDY0NDFGMDAwQzI0NUIwIC8qIENTU0Fz
cGVjdFJhdGlvVmFsdWUuaCAqLzsgfTsKKwkJQ0I4Q0YwMTgxQTkzNThENDAwMEQ1MTBCIC8qIE1p
Y3JvVGFzay5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYg
PSBDQjhDRjAxNTFBOTM0QjQzMDAwRDUxMEIgLyogTWljcm9UYXNrLmNwcCAqLzsgfTsKKwkJQ0I4
Q0YwMUQxQTk1REU0MjAwMEQ1MTBCIC8qIE1pY3JvVGFza1Rlc3QuaCBpbiBIZWFkZXJzICovID0g
e2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IENCOENGMDFDMUE5NURFNDIwMDBENTEwQiAv
KiBNaWNyb1Rhc2tUZXN0LmggKi87IH07CisJCUNCOENGMDFGMUE5NURFNTkwMDBENTEwQiAvKiBN
aWNyb1Rhc2tUZXN0LmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmls
ZVJlZiA9IENCOENGMDFFMUE5NURFNTkwMDBENTEwQiAvKiBNaWNyb1Rhc2tUZXN0LmNwcCAqLzsg
fTsKIAkJQ0NDMkI1MTQxNUY2MTMwNjAwNDhDREQ2IC8qIERldmljZUNsaWVudC5oIGluIEhlYWRl
cnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQ0NDMkI1MTAxNUY2MTMwNjAw
NDhDREQ2IC8qIERldmljZUNsaWVudC5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFBy
aXZhdGUsICk7IH07IH07CiAJCUNDQzJCNTE1MTVGNjEzMDYwMDQ4Q0RENiAvKiBEZXZpY2VDb250
cm9sbGVyLmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9
IENDQzJCNTExMTVGNjEzMDYwMDQ4Q0RENiAvKiBEZXZpY2VDb250cm9sbGVyLmNwcCAqLzsgfTsK
IAkJQ0NDMkI1MTYxNUY2MTMwNjAwNDhDREQ2IC8qIERldmljZUNvbnRyb2xsZXIuaCBpbiBIZWFk
ZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IENDQzJCNTEyMTVGNjEzMDYw
MDQ4Q0RENiAvKiBEZXZpY2VDb250cm9sbGVyLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMg
PSAoUHJpdmF0ZSwgKTsgfTsgfTsKQEAgLTkyMjYsNiArOTIzMCw3IEBACiAJCTUzNkQ1QTIyMTkz
RThFMEMwMENFNENBQiAvKiBQYXJzaW5nVXRpbGl0aWVzLmggKi8gPSB7aXNhID0gUEJYRmlsZVJl
ZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2Rl
LmMuaDsgbmFtZSA9IFBhcnNpbmdVdGlsaXRpZXMuaDsgcGF0aCA9IHBhcnNlci9QYXJzaW5nVXRp
bGl0aWVzLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTUzNkQ1QTI0MTkzRjQwRkMw
MENFNENBQiAvKiBTb3VyY2VTaXplTGlzdC5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5j
ZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5j
cHA7IHBhdGggPSBTb3VyY2VTaXplTGlzdC5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07
CiAJCTUzNkQ1QTI2MTkzRjQxMEIwMENFNENBQiAvKiBTb3VyY2VTaXplTGlzdC5oICovID0ge2lz
YSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBl
ID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBTb3VyY2VTaXplTGlzdC5oOyBzb3VyY2VUcmVlID0g
Ijxncm91cD4iOyB9OworCQk1M0I4OTVBRDE5REM3QzM3MDA5Q0FBOTMgLyogTWljcm9UYXNrLmgg
Ki8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3du
RmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IE1pY3JvVGFzay5oOyBzb3VyY2VUcmVl
ID0gIjxncm91cD4iOyB9OwogCQk1M0M4Mjk4QjEzRDhEOTI3MDBERTJERUIgLyogUmVuZGVyRmxl
eGlibGVCb3guY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9
IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gUmVuZGVy
RmxleGlibGVCb3guY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQk1M0M4Mjk4QzEz
RDhEOTI3MDBERTJERUIgLyogUmVuZGVyRmxleGlibGVCb3guaCAqLyA9IHtpc2EgPSBQQlhGaWxl
UmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNv
ZGUuYy5oOyBwYXRoID0gUmVuZGVyRmxleGlibGVCb3guaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+
IjsgfTsKIAkJNTNFMjlFNUMxNjdBOEExOTAwNTg2RDNEIC8qIEludGVybmFsU2V0dGluZ3NHZW5l
cmF0ZWQuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7
IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gSW50ZXJuYWxT
ZXR0aW5nc0dlbmVyYXRlZC5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CkBAIC0xMzA3
Miw2ICsxMzA3Nyw5IEBACiAJCUNBM0JGNjdEMTBEOTlCQUUwMEU2Q0U1MyAvKiBTY3JvbGxBbmlt
YXRvci5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxh
c3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBTY3JvbGxBbmltYXRvci5o
OyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQlDQUU5RjkwRDE0NjQ0MUYwMDBDMjQ1QjAg
LyogQ1NTQXNwZWN0UmF0aW9WYWx1ZS5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsg
ZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7
IHBhdGggPSBDU1NBc3BlY3RSYXRpb1ZhbHVlLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+Ijsg
fTsKIAkJQ0FFOUY5MEUxNDY0NDFGMDAwQzI0NUIwIC8qIENTU0FzcGVjdFJhdGlvVmFsdWUuaCAq
LyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25G
aWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gQ1NTQXNwZWN0UmF0aW9WYWx1ZS5oOyBz
b3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlDQjhDRjAxNTFBOTM0QjQzMDAwRDUxMEIgLyog
TWljcm9UYXNrLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rpbmcg
PSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IE1pY3Jv
VGFzay5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUNCOENGMDFDMUE5NURFNDIw
MDBENTEwQiAvKiBNaWNyb1Rhc2tUZXN0LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsg
ZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0
aCA9IE1pY3JvVGFza1Rlc3QuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQ0I4Q0Yw
MUUxQTk1REU1OTAwMEQ1MTBCIC8qIE1pY3JvVGFza1Rlc3QuY3BwICovID0ge2lzYSA9IFBCWEZp
bGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNl
Y29kZS5jcHAuY3BwOyBwYXRoID0gTWljcm9UYXNrVGVzdC5jcHA7IHNvdXJjZVRyZWUgPSAiPGdy
b3VwPiI7IH07CiAJCUNDQzJCNTEwMTVGNjEzMDYwMDQ4Q0RENiAvKiBEZXZpY2VDbGllbnQuaCAq
LyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25G
aWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gRGV2aWNlQ2xpZW50Lmg7IHNvdXJjZVRy
ZWUgPSAiPGdyb3VwPiI7IH07CiAJCUNDQzJCNTExMTVGNjEzMDYwMDQ4Q0RENiAvKiBEZXZpY2VD
b250cm9sbGVyLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rpbmcg
PSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IERldmlj
ZUNvbnRyb2xsZXIuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQlDQ0MyQjUxMjE1
RjYxMzA2MDA0OENERDYgLyogRGV2aWNlQ29udHJvbGxlci5oICovID0ge2lzYSA9IFBCWEZpbGVS
ZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29k
ZS5jLmg7IHBhdGggPSBEZXZpY2VDb250cm9sbGVyLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7
IH07CkBAIC0xNTY1Nyw2ICsxNTY2NSw4IEBACiAJCQkJQTdCRjdFREQxNEM5MTc1QTAwMTQ0ODlE
IC8qIEludGVybmFsU2V0dGluZ3MuaCAqLywKIAkJCQlBN0JGN0VERTE0QzkxNzVBMDAxNDQ4OUQg
LyogSW50ZXJuYWxTZXR0aW5ncy5pZGwgKi8sCiAJCQkJQTdCRTdFREQxNEM5MTc1QTAwMTQ0ODlE
IC8qIE1hbGxvY1N0YXRpc3RpY3MuaCAqLywKKwkJCQlDQjhDRjAxRTFBOTVERTU5MDAwRDUxMEIg
LyogTWljcm9UYXNrVGVzdC5jcHAgKi8sCisJCQkJQ0I4Q0YwMUMxQTk1REU0MjAwMEQ1MTBCIC8q
IE1pY3JvVGFza1Rlc3QuaCAqLywKIAkJCQlBN0JFN0VERTE0QzkxNzVBMDAxNDQ4OUQgLyogTWFs
bG9jU3RhdGlzdGljcy5pZGwgKi8sCiAJCQkJQ0Q1MzkzQ0IxNzVEQ0NFNjAwQzA3MTIzIC8qIE1l
bW9yeUluZm8uaCAqLywKIAkJCQlDRDUzOTNDQzE3NURDQ0U2MDBDMDcxMjMgLyogTWVtb3J5SW5m
by5pZGwgKi8sCkBAIC0yMjg1Nyw2ICsyMjg2Nyw4IEBACiAJCQkJRTFBREVDQkQwRTc2QUNGMTAw
NEExQTVFIC8qIE1lc3NhZ2VQb3J0LmggKi8sCiAJCQkJRTFBREVDQzYwRTc2QUQxRjAwNEExQTVF
IC8qIE1lc3NhZ2VQb3J0LmlkbCAqLywKIAkJCQk0MUJGNzAwQTBGRTg2RjQ5MDA1RThERUMgLyog
TWVzc2FnZVBvcnRDaGFubmVsLmggKi8sCisJCQkJNTNCODk1QUQxOURDN0MzNzAwOUNBQTkzIC8q
IE1pY3JvVGFzay5oICovLAorCQkJCUNCOENGMDE1MUE5MzRCNDMwMDBENTEwQiAvKiBNaWNyb1Rh
c2suY3BwICovLAogCQkJCTg1MDMxQjJGMEE0NEVGQzcwMEY5OTJFMCAvKiBNb3VzZUV2ZW50LmNw
cCAqLywKIAkJCQk4NTAzMUIzMDBBNDRFRkM3MDBGOTkyRTAgLyogTW91c2VFdmVudC5oICovLAog
CQkJCTE0MUI5NEU1MDlFQzQyMjMwMDBFOTQxMyAvKiBNb3VzZUV2ZW50LmlkbCAqLywKQEAgLTIz
NDIxLDYgKzIzNDMzLDcgQEAKIAkJCQk1M0VEM0ZERjE2N0E4OEU3MDA2NzYyRTYgLyogSlNJbnRl
cm5hbFNldHRpbmdzR2VuZXJhdGVkLmggaW4gSGVhZGVycyAqLywKIAkJCQlBNzQwQjU5NTE0Qzkz
NUFCMDBBNzdGQTQgLyogSlNNYWxsb2NTdGF0aXN0aWNzLmggaW4gSGVhZGVycyAqLywKIAkJCQlD
RDUzOTNENDE3NUUwMTg2MDBDMDcxMjMgLyogSlNNZW1vcnlJbmZvLmggaW4gSGVhZGVycyAqLywK
KwkJCQlDQjhDRjAxRDFBOTVERTQyMDAwRDUxMEIgLyogTWljcm9UYXNrVGVzdC5oIGluIEhlYWRl
cnMgKi8sCiAJCQkJRUJGNTEyMUQxNjk2NDk2QzAwNTZCRDI1IC8qIEpTVHlwZUNvbnZlcnNpb25z
LmggaW4gSGVhZGVycyAqLywKIAkJCQlDREMyNkI0MTE2MEE4Q0NFMDAyNjc1N0IgLyogTW9ja0NE
TS5oIGluIEhlYWRlcnMgKi8sCiAJCQkJMkQ5N0YwNDgxOURENDE0MDAwMUVFOUMzIC8qIE1vY2tQ
YWdlT3ZlcmxheUNsaWVudC5oIGluIEhlYWRlcnMgKi8sCkBAIC0yNTgzMSw2ICsyNTg0NCw3IEBA
CiAJCQkJNTNDODI5OEUxM0Q4RDkyNzAwREUyREVCIC8qIFJlbmRlckZsZXhpYmxlQm94LmggaW4g
SGVhZGVycyAqLywKIAkJCQk1MDhDQ0E0RjEzQ0YxMDZCMDAzMTUxRjMgLyogUmVuZGVyRmxvd1Ro
cmVhZC5oIGluIEhlYWRlcnMgKi8sCiAJCQkJQTg3MURFRDMwQTE1MzBDNzAwQjEyQTY4IC8qIFJl
bmRlckZyYW1lLmggaW4gSGVhZGVycyAqLywKKwkJCQk1M0I4OTVBRjE5REM3RUQ5MDA5Q0FBOTMg
LyogTWljcm9UYXNrLmggaW4gSGVhZGVycyAqLywKIAkJCQkwRkQzMDgwRjExN0NGN0U3MDBBNzkx
RjcgLyogUmVuZGVyRnJhbWVCYXNlLmggaW4gSGVhZGVycyAqLywKIAkJCQlBODcxREVEMTBBMTUz
MEM3MDBCMTJBNjggLyogUmVuZGVyRnJhbWVTZXQuaCBpbiBIZWFkZXJzICovLAogCQkJCUNERUE3
Qzg0MTI3NjIzMDQwMEI4NDZERCAvKiBSZW5kZXJGdWxsU2NyZWVuLmggaW4gSGVhZGVycyAqLywK
QEAgLTI3MTkyLDYgKzI3MjA2LDcgQEAKIAkJCQk1M0UyOUU1RTE2N0E4QTE5MDA1ODZEM0QgLyog
SW50ZXJuYWxTZXR0aW5nc0dlbmVyYXRlZC5jcHAgaW4gU291cmNlcyAqLywKIAkJCQk0MTdEQTcx
RDEzNzM1REZBMDA3QzU3RkIgLyogSlNJbnRlcm5hbHMuY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJ
QTc0MEI1QTcxNEM5MzVBRjAwQTc3RkE0IC8qIEpTSW50ZXJuYWxTZXR0aW5ncy5jcHAgaW4gU291
cmNlcyAqLywKKwkJCQlDQjhDRjAxRjFBOTVERTU5MDAwRDUxMEIgLyogTWljcm9UYXNrVGVzdC5j
cHAgaW4gU291cmNlcyAqLywKIAkJCQk1M0VEM0ZERTE2N0E4OEU3MDA2NzYyRTYgLyogSlNJbnRl
cm5hbFNldHRpbmdzR2VuZXJhdGVkLmNwcCBpbiBTb3VyY2VzICovLAogCQkJCUE3NDBCNTk3MTRD
OTM1QUYwMEE3N0ZBNCAvKiBKU01hbGxvY1N0YXRpc3RpY3MuY3BwIGluIFNvdXJjZXMgKi8sCiAJ
CQkJQ0Q1MzkzRDMxNzVFMDE4NjAwQzA3MTIzIC8qIEpTTWVtb3J5SW5mby5jcHAgaW4gU291cmNl
cyAqLywKQEAgLTI5ODI5LDYgKzI5ODQ0LDcgQEAKIAkJCQlCMjIyN0E5MDBEMDBCRjIyMDA3MUI3
ODIgLyogU1ZHUG9seWdvbkVsZW1lbnQuY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJQjIyMjdBOTMw
RDAwQkYyMjAwNzFCNzgyIC8qIFNWR1BvbHlsaW5lRWxlbWVudC5jcHAgaW4gU291cmNlcyAqLywK
IAkJCQlCMjIyN0E5NjBEMDBCRjIyMDA3MUI3ODIgLyogU1ZHUHJlc2VydmVBc3BlY3RSYXRpby5j
cHAgaW4gU291cmNlcyAqLywKKwkJCQlDQjhDRjAxODFBOTM1OEQ0MDAwRDUxMEIgLyogTWljcm9U
YXNrLmNwcCBpbiBTb3VyY2VzICovLAogCQkJCUI1NDNCODU3MTdFQjc1OEYwMDNCRTkzQSAvKiBT
VkdQcm9wZXJ0eUluZm8uY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJQjIyMjdBOTkwRDAwQkYyMjAw
NzFCNzgyIC8qIFNWR1JhZGlhbEdyYWRpZW50RWxlbWVudC5jcHAgaW4gU291cmNlcyAqLywKIAkJ
CQlCMjIyN0E5RDBEMDBCRjIyMDA3MUI3ODIgLyogU1ZHUmVjdEVsZW1lbnQuY3BwIGluIFNvdXJj
ZXMgKi8sCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9kb20vRG9jdW1lbnQuaCBiL1NvdXJj
ZS9XZWJDb3JlL2RvbS9Eb2N1bWVudC5oCmluZGV4IDc2ZmIxYjc5Y2NlYmM0Njg1MTNhYzU2ZWIw
YjQzODBmZjlmM2QwZTMuLjBhNDEyNTYwNTY3ODZlNmJmNzk3ZTM1ZDc0YjdlNzQ2OTBmYzVkYjkg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2RvbS9Eb2N1bWVudC5oCisrKyBiL1NvdXJjZS9X
ZWJDb3JlL2RvbS9Eb2N1bWVudC5oCkBAIC0xMjYwLDcgKzEyNjAsNyBAQCBwdWJsaWM6CiAgICAg
dm9pZCBhZGREaXNhYmxlZEZpZWxkc2V0RWxlbWVudCgpIHsgbV9kaXNhYmxlZEZpZWxkc2V0RWxl
bWVudHNDb3VudCsrOyB9CiAgICAgdm9pZCByZW1vdmVEaXNhYmxlZEZpZWxkc2V0RWxlbWVudCgp
IHsgQVNTRVJUKG1fZGlzYWJsZWRGaWVsZHNldEVsZW1lbnRzQ291bnQpOyBtX2Rpc2FibGVkRmll
bGRzZXRFbGVtZW50c0NvdW50LS07IH0KIAotICAgIHZpcnR1YWwgdm9pZCBhZGRDb25zb2xlTWVz
c2FnZShNZXNzYWdlU291cmNlLCBNZXNzYWdlTGV2ZWwsIGNvbnN0IFN0cmluZyYgbWVzc2FnZSwg
dW5zaWduZWQgbG9uZyByZXF1ZXN0SWRlbnRpZmllciA9IDApIG92ZXJyaWRlIGZpbmFsOworICAg
IFdFQkNPUkVfRVhQT1JUIHZpcnR1YWwgdm9pZCBhZGRDb25zb2xlTWVzc2FnZShNZXNzYWdlU291
cmNlLCBNZXNzYWdlTGV2ZWwsIGNvbnN0IFN0cmluZyYgbWVzc2FnZSwgdW5zaWduZWQgbG9uZyBy
ZXF1ZXN0SWRlbnRpZmllciA9IDApIG92ZXJyaWRlIGZpbmFsOwogCiAgICAgV0VCQ09SRV9FWFBP
UlQgdmlydHVhbCBTZWN1cml0eU9yaWdpbiogdG9wT3JpZ2luKCkgY29uc3Qgb3ZlcnJpZGUgZmlu
YWw7CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2RvbS9NaWNyb1Rhc2suY3BwIGIvU291
cmNlL1dlYkNvcmUvZG9tL01pY3JvVGFzay5jcHAKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXgg
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uYzc4NmUzNWE2Zjk3ZmZh
NDdmOTYwMmI3M2JjMzI1NmE3NmJjNmUyYgotLS0gL2Rldi9udWxsCisrKyBiL1NvdXJjZS9XZWJD
b3JlL2RvbS9NaWNyb1Rhc2suY3BwCkBAIC0wLDAgKzEsNTIgQEAKKy8qCisgKiBDb3B5cmlnaHQg
KEMpIDIwMTQgWW9hdiBXZWlzcyAoeW9hdkB5b2F2LndzKQorICogQ29weXJpZ2h0IChDKSAyMDE1
IEFrYW1haSBUZWNobm9sb2dpZXMgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICoKKyAqIFRo
aXMgbGlicmFyeSBpcyBmcmVlIHNvZnR3YXJlOyB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQv
b3IKKyAqIG1vZGlmeSBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBMaWJyYXJ5IEdlbmVy
YWwgUHVibGljCisgKiBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieSB0aGUgRnJlZSBTb2Z0d2FyZSBG
b3VuZGF0aW9uOyBlaXRoZXIKKyAqIHZlcnNpb24gMiBvZiB0aGUgTGljZW5zZSwgb3IgKGF0IHlv
dXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KKyAqCisgKiBUaGlzIGxpYnJhcnkgaXMgZGlz
dHJpYnV0ZWQgaW4gdGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCwKKyAqIGJ1dCBXSVRI
T1VUIEFOWSBXQVJSQU5UWTsgd2l0aG91dCBldmVuIHRoZSBpbXBsaWVkIHdhcnJhbnR5IG9mCisg
KiBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBT
ZWUgdGhlIEdOVQorICogTGlicmFyeSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGZvciBtb3JlIGRl
dGFpbHMuCisgKgorICogWW91IHNob3VsZCBoYXZlIHJlY2VpdmVkIGEgY29weSBvZiB0aGUgR05V
IExpYnJhcnkgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQorICogYWxvbmcgd2l0aCB0aGlzIGxpYnJh
cnk7IHNlZSB0aGUgZmlsZSBDT1BZSU5HLkxJQi4gIElmIG5vdCwgd3JpdGUgdG8KKyAqIHRoZSBG
cmVlIFNvZnR3YXJlIEZvdW5kYXRpb24sIEluYy4sIDUxIEZyYW5rbGluIFN0cmVldCwgRmlmdGgg
Rmxvb3IsCisgKiBCb3N0b24sIE1BIDAyMTEwLTEzMDEsIFVTQS4KKyAqCisgKi8KKworI2luY2x1
ZGUgImNvbmZpZy5oIgorI2luY2x1ZGUgIk1pY3JvVGFzay5oIgorCisjaW5jbHVkZSAiRG9jdW1l
bnQuaCIKKyNpbmNsdWRlIDx3dGYvdGV4dC9TdHJpbmdCdWlsZGVyLmg+CisKK25hbWVzcGFjZSBX
ZWJDb3JlIHsKKworTWljcm9UYXNrUXVldWUmIE1pY3JvVGFza1F1ZXVlOjpzaW5nbGV0b24oKQor
eworICAgIEFTU0VSVChpc01haW5UaHJlYWQoKSk7CisgICAgc3RhdGljIE5ldmVyRGVzdHJveWVk
PE1pY3JvVGFza1F1ZXVlPiBxdWV1ZTsKKyAgICByZXR1cm4gcXVldWU7Cit9CisKK3ZvaWQgTWlj
cm9UYXNrUXVldWU6OnF1ZXVlTWljcm9UYXNrKHN0ZDo6dW5pcXVlX3B0cjxNaWNyb1Rhc2s+IHRh
c2spCit7CisgICAgQVNTRVJUKGlzTWFpblRocmVhZCgpKTsKKyAgICBtX21pY3JvVGFza1F1ZXVl
LmFwcGVuZChXVEY6Om1vdmUodGFzaykpOworfQorCit2b2lkIE1pY3JvVGFza1F1ZXVlOjpydW5N
aWNyb1Rhc2tzKCkKK3sKKyAgICBBU1NFUlQoaXNNYWluVGhyZWFkKCkpOworICAgIGZvciAoYXV0
byYgdGFzayA6IG1fbWljcm9UYXNrUXVldWUpCisgICAgICAgIHRhc2stPnJ1bigpOworICAgIG1f
bWljcm9UYXNrUXVldWUuY2xlYXIoKTsKK30KKworfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQorCmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9kb20vTWljcm9UYXNrLmggYi9Tb3VyY2UvV2ViQ29y
ZS9kb20vTWljcm9UYXNrLmgKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uNmVjNDBmMWQ3NDA3Y2JiMzY1YWIwYTA4OGI4
NTRkOGFmNDVlOTBhMgotLS0gL2Rldi9udWxsCisrKyBiL1NvdXJjZS9XZWJDb3JlL2RvbS9NaWNy
b1Rhc2suaApAQCAtMCwwICsxLDU2IEBACisvKgorICogQ29weXJpZ2h0IChDKSAyMDE0IFlvYXYg
V2Vpc3MgKHlvYXZAeW9hdi53cykKKyAqIENvcHlyaWdodCAoQykgMjAxNSBBa2FtYWkgVGVjaG5v
bG9naWVzIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAqCisgKiBUaGlzIGxpYnJhcnkgaXMg
ZnJlZSBzb2Z0d2FyZTsgeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29yCisgKiBtb2RpZnkg
aXQgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUgTGlicmFyeSBHZW5lcmFsIFB1YmxpYworICog
TGljZW5zZSBhcyBwdWJsaXNoZWQgYnkgdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbjsgZWl0
aGVyCisgKiB2ZXJzaW9uIDIgb2YgdGhlIExpY2Vuc2UsIG9yIChhdCB5b3VyIG9wdGlvbikgYW55
IGxhdGVyIHZlcnNpb24uCisgKgorICogVGhpcyBsaWJyYXJ5IGlzIGRpc3RyaWJ1dGVkIGluIHRo
ZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCisgKiBidXQgV0lUSE9VVCBBTlkgV0FSUkFO
VFk7IHdpdGhvdXQgZXZlbiB0aGUgaW1wbGllZCB3YXJyYW50eSBvZgorICogTUVSQ0hBTlRBQklM
SVRZIG9yIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFLiAgU2VlIHRoZSBHTlUKKyAq
IExpYnJhcnkgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBmb3IgbW9yZSBkZXRhaWxzLgorICoKKyAq
IFlvdSBzaG91bGQgaGF2ZSByZWNlaXZlZCBhIGNvcHkgb2YgdGhlIEdOVSBMaWJyYXJ5IEdlbmVy
YWwgUHVibGljIExpY2Vuc2UKKyAqIGFsb25nIHdpdGggdGhpcyBsaWJyYXJ5OyBzZWUgdGhlIGZp
bGUgQ09QWUlORy5MSUIuICBJZiBub3QsIHdyaXRlIHRvCisgKiB0aGUgRnJlZSBTb2Z0d2FyZSBG
b3VuZGF0aW9uLCBJbmMuLCA1MSBGcmFua2xpbiBTdHJlZXQsIEZpZnRoIEZsb29yLAorICogQm9z
dG9uLCBNQSAwMjExMC0xMzAxLCBVU0EuCisgKgorICovCisKKyNpZm5kZWYgTWljcm9UYXNrX2gK
KyNkZWZpbmUgTWljcm9UYXNrX2gKKworI2luY2x1ZGUgPHd0Zi9OZXZlckRlc3Ryb3llZC5oPgor
I2luY2x1ZGUgPHd0Zi9SZWZDb3VudGVkLmg+CisjaW5jbHVkZSA8d3RmL1ZlY3Rvci5oPgorCisK
K25hbWVzcGFjZSBXZWJDb3JlIHsKKworY2xhc3MgTWljcm9UYXNrIDogcHVibGljIFJlZkNvdW50
ZWQ8TWljcm9UYXNrPiB7CitwdWJsaWM6CisgICAgdmlydHVhbCB2b2lkIHJ1bigpID0gMDsKKyAg
ICB2aXJ0dWFsIH5NaWNyb1Rhc2soKSB7IH0KK307CisKK2NsYXNzIE1pY3JvVGFza1F1ZXVlIHsK
KyAgICBmcmllbmQgTmV2ZXJEZXN0cm95ZWQ8TWljcm9UYXNrUXVldWU+OworCitwdWJsaWM6Cisg
ICAgV0VCQ09SRV9FWFBPUlQgc3RhdGljIE1pY3JvVGFza1F1ZXVlJiBzaW5nbGV0b24oKTsKKyAg
ICB+TWljcm9UYXNrUXVldWUoKSB7IH0KKworICAgIFdFQkNPUkVfRVhQT1JUIHZvaWQgcXVldWVN
aWNyb1Rhc2soc3RkOjp1bmlxdWVfcHRyPE1pY3JvVGFzaz4pOworCisgICAgdm9pZCBydW5NaWNy
b1Rhc2tzKCk7CisKK3ByaXZhdGU6CisgICAgTWljcm9UYXNrUXVldWUoKSB7IH0KKyAgICBWZWN0
b3I8c3RkOjp1bmlxdWVfcHRyPE1pY3JvVGFzaz4+IG1fbWljcm9UYXNrUXVldWU7Cit9OworCit9
IC8vIG5hbWVzcGFjZSBXZWJDb3JlCisKKyNlbmRpZiAvLyBNaWNyb1Rhc2tfaApkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYkNvcmUvZG9tL1NjcmlwdFJ1bm5lci5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9k
b20vU2NyaXB0UnVubmVyLmNwcAppbmRleCBlZDk0ZGEzZTczZGIxMzAxNzhiOTllYTRiN2Y5MmI1
YWMxOTgwOWQ2Li5jNDZiNzhlMGZmZTNjODE4MzYwNDdlY2EzYTA3YWI5Y2VkMTNhZjA0IDEwMDY0
NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9kb20vU2NyaXB0UnVubmVyLmNwcAorKysgYi9Tb3VyY2Uv
V2ViQ29yZS9kb20vU2NyaXB0UnVubmVyLmNwcApAQCAtMjgsNiArMjgsNyBAQAogCiAjaW5jbHVk
ZSAiQ2FjaGVkU2NyaXB0LmgiCiAjaW5jbHVkZSAiRWxlbWVudC5oIgorI2luY2x1ZGUgIk1pY3Jv
VGFzay5oIgogI2luY2x1ZGUgIlBlbmRpbmdTY3JpcHQuaCIKICNpbmNsdWRlICJTY3JpcHRFbGVt
ZW50LmgiCiAKQEAgLTExNiw2ICsxMTcsNyBAQCB2b2lkIFNjcmlwdFJ1bm5lcjo6dGltZXJGaXJl
ZCgpCiAgICAgICAgIHRvU2NyaXB0RWxlbWVudElmUG9zc2libGUoZWxlbWVudC5nZXQoKSktPmV4
ZWN1dGUoY2FjaGVkU2NyaXB0KTsKICAgICAgICAgbV9kb2N1bWVudC5kZWNyZW1lbnRMb2FkRXZl
bnREZWxheUNvdW50KCk7CiAgICAgfQorICAgIE1pY3JvVGFza1F1ZXVlOjpzaW5nbGV0b24oKS5y
dW5NaWNyb1Rhc2tzKCk7CiB9CiAKIH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2h0bWwv
cGFyc2VyL0hUTUxTY3JpcHRSdW5uZXIuY3BwIGIvU291cmNlL1dlYkNvcmUvaHRtbC9wYXJzZXIv
SFRNTFNjcmlwdFJ1bm5lci5jcHAKaW5kZXggNDFlNzI1ZjYwZGU4NjgxZjFjZjhkYjRiNWM5OGFk
YjYyNjIyZjIxYi4uMjdkZDY3MzgyYTYwMGZjMDMzODUyZWM5MDI5MjAxNjkyZDE0M2RlZCAxMDA2
NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvaHRtbC9wYXJzZXIvSFRNTFNjcmlwdFJ1bm5lci5jcHAK
KysrIGIvU291cmNlL1dlYkNvcmUvaHRtbC9wYXJzZXIvSFRNTFNjcmlwdFJ1bm5lci5jcHAKQEAg
LTM2LDYgKzM2LDcgQEAKICNpbmNsdWRlICJIVE1MTmFtZXMuaCIKICNpbmNsdWRlICJIVE1MU2Ny
aXB0UnVubmVySG9zdC5oIgogI2luY2x1ZGUgIklnbm9yZURlc3RydWN0aXZlV3JpdGVDb3VudElu
Y3JlbWVudGVyLmgiCisjaW5jbHVkZSAiTWljcm9UYXNrLmgiCiAjaW5jbHVkZSAiTXV0YXRpb25P
YnNlcnZlci5oIgogI2luY2x1ZGUgIk5lc3RpbmdMZXZlbEluY3JlbWVudGVyLmgiCiAjaW5jbHVk
ZSAiTm90SW1wbGVtZW50ZWQuaCIKQEAgLTEyOSw4ICsxMzAsMTAgQEAgdm9pZCBIVE1MU2NyaXB0
UnVubmVyOjpleGVjdXRlUGVuZGluZ1NjcmlwdEFuZERpc3BhdGNoRXZlbnQoUGVuZGluZ1Njcmlw
dCYgcGVuZGkKICAgICBpZiAocGVuZGluZ1NjcmlwdC5jYWNoZWRTY3JpcHQoKSAmJiBwZW5kaW5n
U2NyaXB0LndhdGNoaW5nRm9yTG9hZCgpKQogICAgICAgICBzdG9wV2F0Y2hpbmdGb3JMb2FkKHBl
bmRpbmdTY3JpcHQpOwogCi0gICAgaWYgKCFpc0V4ZWN1dGluZ1NjcmlwdCgpKQorICAgIGlmICgh
aXNFeGVjdXRpbmdTY3JpcHQoKSkgewogICAgICAgICBNdXRhdGlvbk9ic2VydmVyOjpkZWxpdmVy
QWxsTXV0YXRpb25zKCk7CisgICAgICAgIE1pY3JvVGFza1F1ZXVlOjpzaW5nbGV0b24oKS5ydW5N
aWNyb1Rhc2tzKCk7CisgICAgfQogCiAgICAgLy8gQ2xlYXIgdGhlIHBlbmRpbmcgc2NyaXB0IGJl
Zm9yZSBwb3NzaWJsZSByZW50cmFuY3kgZnJvbSBleGVjdXRlU2NyaXB0KCkKICAgICBSZWZQdHI8
RWxlbWVudD4gZWxlbWVudCA9IHBlbmRpbmdTY3JpcHQucmVsZWFzZUVsZW1lbnRBbmRDbGVhcigp
OwpAQCAtMjMxLDYgKzIzNCw4IEBAIGJvb2wgSFRNTFNjcmlwdFJ1bm5lcjo6ZXhlY3V0ZVNjcmlw
dHNXYWl0aW5nRm9yUGFyc2luZygpCiAgICAgICAgIGlmICghbV9kb2N1bWVudCkKICAgICAgICAg
ICAgIHJldHVybiBmYWxzZTsKICAgICB9CisgICAgaWYgKCFpc0V4ZWN1dGluZ1NjcmlwdCgpKQor
ICAgICAgICBNaWNyb1Rhc2tRdWV1ZTo6c2luZ2xldG9uKCkucnVuTWljcm9UYXNrcygpOwogICAg
IHJldHVybiB0cnVlOwogfQogCkBAIC0yOTMsOCArMjk4LDEwIEBAIHZvaWQgSFRNTFNjcmlwdFJ1
bm5lcjo6cnVuU2NyaXB0KEVsZW1lbnQqIHNjcmlwdCwgY29uc3QgVGV4dFBvc2l0aW9uJiBzY3Jp
cHRTdGFyCiAgICAgICAgIC8vIGV2ZXJ5IHNjcmlwdCBlbGVtZW50LCBldmVuIGlmIGl0J3Mgbm90
IHJlYWR5IHRvIGV4ZWN1dGUgeWV0LiBUaGVyZSdzCiAgICAgICAgIC8vIHVuZm9ydHVhbnRlbHkg
bm8gb2J2aW91cyB3YXkgdG8gdGVsbCBpZiBwcmVwYXJlU2NyaXB0IGlzIGdvaW5nIHRvCiAgICAg
ICAgIC8vIGV4ZWN1dGUgdGhlIHNjcmlwdCBmcm9tIG91dCBoZXJlLgotICAgICAgICBpZiAoIWlz
RXhlY3V0aW5nU2NyaXB0KCkpCisgICAgICAgIGlmICghaXNFeGVjdXRpbmdTY3JpcHQoKSkgewog
ICAgICAgICAgICAgTXV0YXRpb25PYnNlcnZlcjo6ZGVsaXZlckFsbE11dGF0aW9ucygpOworICAg
ICAgICAgICAgTWljcm9UYXNrUXVldWU6OnNpbmdsZXRvbigpLnJ1bk1pY3JvVGFza3MoKTsKKyAg
ICAgICAgfQogCiAgICAgICAgIEluc2VydGlvblBvaW50UmVjb3JkIGluc2VydGlvblBvaW50UmVj
b3JkKG1faG9zdC5pbnB1dFN0cmVhbSgpKTsKICAgICAgICAgTmVzdGluZ0xldmVsSW5jcmVtZW50
ZXIgbmVzdGluZ0xldmVsSW5jcmVtZW50ZXIobV9zY3JpcHROZXN0aW5nTGV2ZWwpOwpkaWZmIC0t
Z2l0IGEvU291cmNlL1dlYkNvcmUvdGVzdGluZy9JbnRlcm5hbHMuY3BwIGIvU291cmNlL1dlYkNv
cmUvdGVzdGluZy9JbnRlcm5hbHMuY3BwCmluZGV4IDEwYmEzY2RhNjYyZTMwZTdlMWQxNzVkZGI5
Yjk3Yzg0Yjk5YzI5YmUuLmFjZTk3MTAyYTU1N2QwY2UzOTM5ODEzZTgwMjY1MDMzN2YwZjVmNjEg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3Rlc3RpbmcvSW50ZXJuYWxzLmNwcAorKysgYi9T
b3VyY2UvV2ViQ29yZS90ZXN0aW5nL0ludGVybmFscy5jcHAKQEAgLTc4LDYgKzc4LDggQEAKICNp
bmNsdWRlICJNZWRpYVNlc3Npb25NYW5hZ2VyLmgiCiAjaW5jbHVkZSAiTWVtb3J5Q2FjaGUuaCIK
ICNpbmNsdWRlICJNZW1vcnlJbmZvLmgiCisjaW5jbHVkZSAiTWljcm9UYXNrLmgiCisjaW5jbHVk
ZSAiTWljcm9UYXNrVGVzdC5oIgogI2luY2x1ZGUgIk1vY2tQYWdlT3ZlcmxheUNsaWVudC5oIgog
I2luY2x1ZGUgIlBhZ2UuaCIKICNpbmNsdWRlICJQYWdlT3ZlcmxheS5oIgpAQCAtMjUwMyw0ICsy
NTA1LDkgQEAgYm9vbCBJbnRlcm5hbHM6OmlzUGFnZVBsYXlpbmdBdWRpbygpCiAgICAgcmV0dXJu
IGRvY3VtZW50LT5wYWdlKCktPmlzUGxheWluZ0F1ZGlvKCk7CiB9CiAKK3ZvaWQgSW50ZXJuYWxz
OjpxdWV1ZU1pY3JvVGFzayhpbnQgdGVzdE51bWJlcikKK3sKKyAgICBNaWNyb1Rhc2tRdWV1ZTo6
c2luZ2xldG9uKCkucXVldWVNaWNyb1Rhc2soTWljcm9UYXNrVGVzdDo6Y3JlYXRlKGNvbnRleHRE
b2N1bWVudCgpLCB0ZXN0TnVtYmVyKSk7Cit9CisKIH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJD
b3JlL3Rlc3RpbmcvSW50ZXJuYWxzLmggYi9Tb3VyY2UvV2ViQ29yZS90ZXN0aW5nL0ludGVybmFs
cy5oCmluZGV4IDA5YTQ0OWQ3MmIyNWZmZDM1Y2UwMDFkZjk0NWVlZDBlOWMyZjIyZmIuLjg4NGM3
MzYxZGZhNTUxNjZiMDQ4NTFlZjA5NTY1ZDUxMTEwNWQ0YTIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJDb3JlL3Rlc3RpbmcvSW50ZXJuYWxzLmgKKysrIGIvU291cmNlL1dlYkNvcmUvdGVzdGluZy9J
bnRlcm5hbHMuaApAQCAtMzYxLDYgKzM2MSw4IEBAIHB1YmxpYzoKICAgICB2b2lkIHNldFBhZ2VN
dXRlZChib29sKTsKICAgICBib29sIGlzUGFnZVBsYXlpbmdBdWRpbygpOwogCisgICAgdm9pZCBx
dWV1ZU1pY3JvVGFzayhpbnQpOworCiBwcml2YXRlOgogICAgIGV4cGxpY2l0IEludGVybmFscyhE
b2N1bWVudCopOwogICAgIERvY3VtZW50KiBjb250ZXh0RG9jdW1lbnQoKSBjb25zdDsKZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJDb3JlL3Rlc3RpbmcvSW50ZXJuYWxzLmlkbCBiL1NvdXJjZS9XZWJD
b3JlL3Rlc3RpbmcvSW50ZXJuYWxzLmlkbAppbmRleCBkYzJhZDU5ZWM3ZTcxNzE1MjhjMDg1NzQw
YzY3ZGNiNjY1NTRkMjdjLi4yYjYzYjRmZmI2ZjlhZThmMGRkMTgyMGUzOTNjMWFmNzE4NWIyNDIx
IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS90ZXN0aW5nL0ludGVybmFscy5pZGwKKysrIGIv
U291cmNlL1dlYkNvcmUvdGVzdGluZy9JbnRlcm5hbHMuaWRsCkBAIC0zMTcsNCArMzE3LDUgQEAg
ZW51bSBQYWdlT3ZlcmxheVR5cGUgewogCiAgICAgdm9pZCBzZXRQYWdlTXV0ZWQoYm9vbGVhbiBt
dXRlZCk7CiAgICAgYm9vbGVhbiBpc1BhZ2VQbGF5aW5nQXVkaW8oKTsKKyAgICB2b2lkIHF1ZXVl
TWljcm9UYXNrKGxvbmcgdGVzdE51bWJlcik7CiB9OwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNv
cmUvdGVzdGluZy9NaWNyb1Rhc2tUZXN0LmNwcCBiL1NvdXJjZS9XZWJDb3JlL3Rlc3RpbmcvTWlj
cm9UYXNrVGVzdC5jcHAKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uZmE4MTk5YWIxYmZiNDkyNGI4MjMxMzJiY2ZmNjE0
YzFlYjZiOTdhMQotLS0gL2Rldi9udWxsCisrKyBiL1NvdXJjZS9XZWJDb3JlL3Rlc3RpbmcvTWlj
cm9UYXNrVGVzdC5jcHAKQEAgLTAsMCArMSw0MyBAQAorLyoKKyAqIENvcHlyaWdodCAoQykgMjAx
NSBBa2FtYWkgVGVjaG5vbG9naWVzIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAqCisgKiBU
aGlzIGxpYnJhcnkgaXMgZnJlZSBzb2Z0d2FyZTsgeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5k
L29yCisgKiBtb2RpZnkgaXQgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUgTGlicmFyeSBHZW5l
cmFsIFB1YmxpYworICogTGljZW5zZSBhcyBwdWJsaXNoZWQgYnkgdGhlIEZyZWUgU29mdHdhcmUg
Rm91bmRhdGlvbjsgZWl0aGVyCisgKiB2ZXJzaW9uIDIgb2YgdGhlIExpY2Vuc2UsIG9yIChhdCB5
b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uCisgKgorICogVGhpcyBsaWJyYXJ5IGlzIGRp
c3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCisgKiBidXQgV0lU
SE9VVCBBTlkgV0FSUkFOVFk7IHdpdGhvdXQgZXZlbiB0aGUgaW1wbGllZCB3YXJyYW50eSBvZgor
ICogTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFLiAg
U2VlIHRoZSBHTlUKKyAqIExpYnJhcnkgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBmb3IgbW9yZSBk
ZXRhaWxzLgorICoKKyAqIFlvdSBzaG91bGQgaGF2ZSByZWNlaXZlZCBhIGNvcHkgb2YgdGhlIEdO
VSBMaWJyYXJ5IEdlbmVyYWwgUHVibGljIExpY2Vuc2UKKyAqIGFsb25nIHdpdGggdGhpcyBsaWJy
YXJ5OyBzZWUgdGhlIGZpbGUgQ09QWUlORy5MSUIuICBJZiBub3QsIHdyaXRlIHRvCisgKiB0aGUg
RnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uLCBJbmMuLCA1MSBGcmFua2xpbiBTdHJlZXQsIEZpZnRo
IEZsb29yLAorICogQm9zdG9uLCBNQSAwMjExMC0xMzAxLCBVU0EuCisgKgorICovCisKKyNpbmNs
dWRlICJjb25maWcuaCIKKyNpbmNsdWRlICJNaWNyb1Rhc2tUZXN0LmgiCisKKyNpbmNsdWRlICJE
b2N1bWVudC5oIgorCituYW1lc3BhY2UgV2ViQ29yZSB7CisKK3ZvaWQgTWljcm9UYXNrVGVzdDo6
cnVuKCkKK3sKKyAgICBTdHJpbmdCdWlsZGVyIG1lc3NhZ2U7CisgICAgbWVzc2FnZS5hcHBlbmQo
Ik1pY3JvVGFzayAjIik7CisgICAgbWVzc2FnZS5hcHBlbmQoU3RyaW5nOjpudW1iZXIobV90ZXN0
TnVtYmVyKSk7CisgICAgbWVzc2FnZS5hcHBlbmQoIiBoYXMgcnVuLiIpOworICAgIGlmIChtX2Rv
Y3VtZW50KQorICAgICAgICBtX2RvY3VtZW50LT5hZGRDb25zb2xlTWVzc2FnZShNZXNzYWdlU291
cmNlOjpKUywgTWVzc2FnZUxldmVsOjpEZWJ1ZywgbWVzc2FnZS50b1N0cmluZygpKTsKK30KKwor
c3RkOjp1bmlxdWVfcHRyPE1pY3JvVGFza1Rlc3Q+IE1pY3JvVGFza1Rlc3Q6OmNyZWF0ZShQYXNz
UmVmUHRyPERvY3VtZW50PiBkb2N1bWVudCwgaW50IHRlc3ROdW1iZXIpCit7CisgICAgcmV0dXJu
IHN0ZDo6dW5pcXVlX3B0cjxNaWNyb1Rhc2tUZXN0PihuZXcgTWljcm9UYXNrVGVzdChkb2N1bWVu
dCwgdGVzdE51bWJlcikpOworfQorCit9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViQ29yZS90ZXN0aW5nL01pY3JvVGFza1Rlc3QuaCBiL1NvdXJjZS9XZWJDb3Jl
L3Rlc3RpbmcvTWljcm9UYXNrVGVzdC5oCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjY1YzFlZWU1N2ZmNWI3ZDcwNmNk
NWZkNDNlNWRjMmM0MGUxNzUwYTcKLS0tIC9kZXYvbnVsbAorKysgYi9Tb3VyY2UvV2ViQ29yZS90
ZXN0aW5nL01pY3JvVGFza1Rlc3QuaApAQCAtMCwwICsxLDQ5IEBACisvKgorICogQ29weXJpZ2h0
IChDKSAyMDE1IEFrYW1haSBUZWNobm9sb2dpZXMgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgor
ICoKKyAqIFRoaXMgbGlicmFyeSBpcyBmcmVlIHNvZnR3YXJlOyB5b3UgY2FuIHJlZGlzdHJpYnV0
ZSBpdCBhbmQvb3IKKyAqIG1vZGlmeSBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBMaWJy
YXJ5IEdlbmVyYWwgUHVibGljCisgKiBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieSB0aGUgRnJlZSBT
b2Z0d2FyZSBGb3VuZGF0aW9uOyBlaXRoZXIKKyAqIHZlcnNpb24gMiBvZiB0aGUgTGljZW5zZSwg
b3IgKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KKyAqCisgKiBUaGlzIGxpYnJh
cnkgaXMgZGlzdHJpYnV0ZWQgaW4gdGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCwKKyAq
IGJ1dCBXSVRIT1VUIEFOWSBXQVJSQU5UWTsgd2l0aG91dCBldmVuIHRoZSBpbXBsaWVkIHdhcnJh
bnR5IG9mCisgKiBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBV
UlBPU0UuICBTZWUgdGhlIEdOVQorICogTGlicmFyeSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGZv
ciBtb3JlIGRldGFpbHMuCisgKgorICogWW91IHNob3VsZCBoYXZlIHJlY2VpdmVkIGEgY29weSBv
ZiB0aGUgR05VIExpYnJhcnkgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQorICogYWxvbmcgd2l0aCB0
aGlzIGxpYnJhcnk7IHNlZSB0aGUgZmlsZSBDT1BZSU5HLkxJQi4gIElmIG5vdCwgd3JpdGUgdG8K
KyAqIHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb24sIEluYy4sIDUxIEZyYW5rbGluIFN0cmVl
dCwgRmlmdGggRmxvb3IsCisgKiBCb3N0b24sIE1BIDAyMTEwLTEzMDEsIFVTQS4KKyAqCisgKi8K
KworI2lmbmRlZiBNaWNyb1Rhc2tUZXN0X2gKKyNkZWZpbmUgTWljcm9UYXNrVGVzdF9oCisKKyNp
bmNsdWRlICJNaWNyb1Rhc2suaCIKKyNpbmNsdWRlIDx3dGYvUmVmQ291bnRlZC5oPgorCituYW1l
c3BhY2UgV2ViQ29yZSB7CisKK2NsYXNzIERvY3VtZW50OworCitjbGFzcyBNaWNyb1Rhc2tUZXN0
OiBwdWJsaWMgTWljcm9UYXNrIHsKK3B1YmxpYzoKKyAgICB2aXJ0dWFsIHZvaWQgcnVuKCkgb3Zl
cnJpZGU7CisgICAgV0VCQ09SRV9FWFBPUlQgc3RhdGljIHN0ZDo6dW5pcXVlX3B0cjxNaWNyb1Rh
c2tUZXN0PiBjcmVhdGUoUGFzc1JlZlB0cjxEb2N1bWVudD4sIGludCB0ZXN0TnVtYmVyKTsKKwor
cHJpdmF0ZToKKyAgICBNaWNyb1Rhc2tUZXN0KFBhc3NSZWZQdHI8RG9jdW1lbnQ+IGRvY3VtZW50
LCBpbnQgdGVzdE51bWJlcikKKyAgICAgICAgOiBtX2RvY3VtZW50KGRvY3VtZW50KQorICAgICAg
ICAsIG1fdGVzdE51bWJlcih0ZXN0TnVtYmVyKQorICAgIHsKKyAgICB9CisKKyAgICBSZWZQdHI8
RG9jdW1lbnQ+IG1fZG9jdW1lbnQ7CisgICAgaW50IG1fdGVzdE51bWJlcjsKK307CisKK30gLy8g
bmFtZXNwYWNlIFdlYkNvcmUKKworI2VuZGlmCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1dl
YktpdC52Y3hwcm9qL1dlYktpdEV4cG9ydEdlbmVyYXRvci9XZWJLaXRFeHBvcnRzLmRlZi5pbiBi
L1NvdXJjZS9XZWJLaXQvV2ViS2l0LnZjeHByb2ovV2ViS2l0RXhwb3J0R2VuZXJhdG9yL1dlYktp
dEV4cG9ydHMuZGVmLmluCmluZGV4IGQzMTI0YzA3YTM3NTU0YTExZGI2OTRjMTgyNGM0YjU0OThl
ZjMwYzcuLjA1MDBmYzQwODQ0YTc4ODk1NWYxNWIwMmU1NGJjMGNhMzg1M2Q5OTUgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9XZWJLaXQvV2ViS2l0LnZjeHByb2ovV2ViS2l0RXhwb3J0R2VuZXJhdG9yL1dl
YktpdEV4cG9ydHMuZGVmLmluCisrKyBiL1NvdXJjZS9XZWJLaXQvV2ViS2l0LnZjeHByb2ovV2Vi
S2l0RXhwb3J0R2VuZXJhdG9yL1dlYktpdEV4cG9ydHMuZGVmLmluCkBAIC00NzksNiArNDc5LDkg
QEAgRVhQT1JUUwogICAgICAgICBzeW1ib2xXaXRoUG9pbnRlcig/cmVzb3VyY2VGb3JVUkxATWVt
b3J5Q2FjaGVAV2ViQ29yZUBAUUFFUEFWQ2FjaGVkUmVzb3VyY2VAMkBBQlZVUkxAMkBWU2Vzc2lv
bklEQDJAQFosID9yZXNvdXJjZUZvclVSTEBNZW1vcnlDYWNoZUBXZWJDb3JlQEBRRUFBUEVBVkNh
Y2hlZFJlc291cmNlQDJAQUVCVlVSTEAyQFZTZXNzaW9uSURAMkBAWikKICAgICAgICAgc3ltYm9s
V2l0aFBvaW50ZXIoP3JlZkBDU1NDb21wdXRlZFN0eWxlRGVjbGFyYXRpb25AV2ViQ29yZUBAVUFF
WFhaLCA/cmVmQENTU0NvbXB1dGVkU3R5bGVEZWNsYXJhdGlvbkBXZWJDb3JlQEBVRUFBWFhaKQog
ICAgICAgICBzeW1ib2xXaXRoUG9pbnRlcig/ZGVyZWZAQ1NTQ29tcHV0ZWRTdHlsZURlY2xhcmF0
aW9uQFdlYkNvcmVAQFVBRVhYWiwgP2RlcmVmQENTU0NvbXB1dGVkU3R5bGVEZWNsYXJhdGlvbkBX
ZWJDb3JlQEBVRUFBWFhaKQorICAgICAgICBzeW1ib2xXaXRoUG9pbnRlcig/c2luZ2xldG9uQE1p
Y3JvVGFza1F1ZXVlQFdlYkNvcmVAQFNBQUFWMTJAWFosID9zaW5nbGV0b25ATWljcm9UYXNrUXVl
dWVAV2ViQ29yZUBAU0FBQVYxMkBYWikKKyAgICAgICAgc3ltYm9sV2l0aFBvaW50ZXIoP3F1ZXVl
TWljcm9UYXNrQE1pY3JvVGFza1F1ZXVlQFdlYkNvcmVAQFFBRVhWPyR1bmlxdWVfcHRyQFZNaWNy
b1Rhc2tAV2ViQ29yZUBAVT8kZGVmYXVsdF9kZWxldGVAVk1pY3JvVGFza1F1ZXVlQFdlYkNvcmVA
QEBzdGRAQEBzdGRAQEBaLCA/cXVldWVNaWNyb1Rhc2tATWljcm9UYXNrUXVldWVAV2ViQ29yZUBA
UUFFWFY/JHVuaXF1ZV9wdHJAVk1pY3JvVGFza0BXZWJDb3JlQEBVPyRkZWZhdWx0X2RlbGV0ZUBW
TWljcm9UYXNrUXVldWVAV2ViQ29yZUBAQHN0ZEBAQHN0ZEBAQFopCisgICAgICAgIHN5bWJvbFdp
dGhQb2ludGVyKD9hZGRDb25zb2xlTWVzc2FnZUBEb2N1bWVudEBXZWJDb3JlQEBVQUVYVzRNZXNz
YWdlU291cmNlQEpTQ0BAVzRNZXNzYWdlTGV2ZWxANEBBQlZTdHJpbmdAV1RGQEBLQFosID9hZGRD
b25zb2xlTWVzc2FnZUBEb2N1bWVudEBXZWJDb3JlQEBVQUVYVzRNZXNzYWdlU291cmNlQEpTQ0BA
VzRNZXNzYWdlTGV2ZWxANEBBQlZTdHJpbmdAV1RGQEBLQFopCiAjaWYgIUNQVShYODZfNjQpCiAg
ICAgICAgID9pc0FQSVZhbHVlV3JhcHBlckBKU0NlbGxASlNDQEBRQkVfTlhaCiAjZW5kaWYKZGlm
ZiAtLWdpdCBhL0xheW91dFRlc3RzL0NoYW5nZUxvZyBiL0xheW91dFRlc3RzL0NoYW5nZUxvZwpp
bmRleCBjZmE3NDFmZDQzMTA4NDdkMGUwMTMzMTZmMGFhNGQ0MGE3Mzc5MGIyLi5lMzBlZDMyNzQ4
OTIyMjAwMmZjMDMyNTAwYTA1MDE1MzJlZmMzMGNiIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9D
aGFuZ2VMb2cKKysrIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTcgQEAKKzIw
MTUtMDItMTkgIFlvYXYgV2Vpc3MgIDx5b2F2QHlvYXYud3M+CisKKyAgICAgICAgQWRkIGEgbWlj
cm90YXNrIGFic3RyYWN0aW9uCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3df
YnVnLmNnaT9pZD0xMzc0OTYKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4K
KworICAgICAgICBBZGRpbmcgYSB0ZXN0IGZvciBtaWNyb3Rhc2sgYWJzdHJhY3Rpb24uCisKKyAg
ICAgICAgKiBmYXN0L2RvbS9taWNyb3Rhc2staW5vcmRlci5odG1sOiBBZGRlZC4KKyAgICAgICAg
KiBmYXN0L2RvbS9taWNyb3Rhc2staW5vcmRlci1leHBlY3RlZC50eHQ6IEFkZGVkLgorICAgICAg
ICAqIGZhc3QvZG9tL21pY3JvdGFzay1yZXZlcnNlLmh0bWw6IEFkZGVkLgorICAgICAgICAqIGZh
c3QvZG9tL21pY3JvdGFzay1yZXZlcnNlLWV4cGVjdGVkLnR4dDogQWRkZWQuCisKIDIwMTUtMDIt
MTYgIFNlcmdpbyBWaWxsYXIgU2VuaW4gIDxzdmlsbGFyQGlnYWxpYS5jb20+CiAKICAgICAgICAg
VW5yZXZpZXdlZC4gVXBsb2FkaW5nIGEgbmV3IHRlc3QgdGhhdCBzaG91bGQgaGF2ZSBiZWVuIHVw
bG9hZGVkIGFzCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L2RvbS9taWNyb3Rhc2staW5v
cmRlci1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9mYXN0L2RvbS9taWNyb3Rhc2staW5vcmRl
ci1leHBlY3RlZC50eHQKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uMDM4MGI5NGM3YzgxODNhNjk2ZTFhYjIyNjk5ZWFj
YWZjZDNkZDM3MwotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2Zhc3QvZG9tL21pY3Jv
dGFzay1pbm9yZGVyLWV4cGVjdGVkLnR4dApAQCAtMCwwICsxLDE1IEBACitDT05TT0xFIE1FU1NB
R0U6IGxpbmUgMjM6IEZpbmlzaGVkIHF1ZXVlaW5nIHRlc3RzLgorQ09OU09MRSBNRVNTQUdFOiBN
aWNyb1Rhc2sgIzIgaGFzIHJ1bi4KK0NPTlNPTEUgTUVTU0FHRTogTWljcm9UYXNrICMxIGhhcyBy
dW4uCitDT05TT0xFIE1FU1NBR0U6IE1pY3JvVGFzayAjMCBoYXMgcnVuLgorIAorCistLS0tLS0t
LQorRnJhbWU6ICdmcmFtZTEnCistLS0tLS0tLQorCisKKy0tLS0tLS0tCitGcmFtZTogJ2ZyYW1l
MicKKy0tLS0tLS0tCisKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3QvZG9tL21pY3JvdGFz
ay1pbm9yZGVyLmh0bWwgYi9MYXlvdXRUZXN0cy9mYXN0L2RvbS9taWNyb3Rhc2staW5vcmRlci5o
dG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAuLjc5YzhlMmY3ODk4M2EzZTY4NWVhYzE1NTA5NTYxMDExZTg2MWY5YTkK
LS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9mYXN0L2RvbS9taWNyb3Rhc2staW5vcmRl
ci5odG1sCkBAIC0wLDAgKzEsMjggQEAKKzwhRE9DVFlQRSBodG1sPgorPHNjcmlwdD4KK2lmICh3
aW5kb3cudGVzdFJ1bm5lcikgeworICAgIHRlc3RSdW5uZXIuZHVtcEFzVGV4dCgpOworICAgIHRl
c3RSdW5uZXIuZHVtcENoaWxkRnJhbWVzQXNUZXh0KCk7CisgICAgdGVzdFJ1bm5lci53YWl0VW50
aWxEb25lKCk7Cit9Cis8L3NjcmlwdD4KKzxpZnJhbWUgaWQ9ImZyYW1lMSI+PC9pZnJhbWU+Cis8
aWZyYW1lIGlkPSJmcmFtZTIiPjwvaWZyYW1lPgorPHNjcmlwdD4KKwordmFyIGlmcmFtZTEgPSBk
b2N1bWVudC5xdWVyeVNlbGVjdG9yKCIjZnJhbWUxIikuY29udGVudFdpbmRvdzsKK3ZhciBpZnJh
bWUyID0gZG9jdW1lbnQucXVlcnlTZWxlY3RvcigiI2ZyYW1lMiIpLmNvbnRlbnRXaW5kb3c7CisK
K2lmKGlmcmFtZTIuaW50ZXJuYWxzKQorICAgIGlmcmFtZTIuaW50ZXJuYWxzLnF1ZXVlTWljcm9U
YXNrKDIpOworaWYoaWZyYW1lMS5pbnRlcm5hbHMpCisgICAgaWZyYW1lMS5pbnRlcm5hbHMucXVl
dWVNaWNyb1Rhc2soMSk7CitpZih3aW5kb3cuaW50ZXJuYWxzKQorICAgIGludGVybmFscy5xdWV1
ZU1pY3JvVGFzaygwKTsKKworY29uc29sZS5sb2coIkZpbmlzaGVkIHF1ZXVlaW5nIHRlc3RzLiIp
OworcmVxdWVzdEFuaW1hdGlvbkZyYW1lKGZ1bmN0aW9uKCkgeworICAgIGlmICh3aW5kb3cudGVz
dFJ1bm5lcikKKyAgICAgICAgdGVzdFJ1bm5lci5ub3RpZnlEb25lKCk7Cit9KTsKKzwvc2NyaXB0
PgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9kb20vbWljcm90YXNrLXJldmVyc2UtZXhw
ZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvZmFzdC9kb20vbWljcm90YXNrLXJldmVyc2UtZXhwZWN0
ZWQudHh0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAuLjJlYzg4YmI1NGYwYmFmZmYyYjQ5NGUyMjMzYWZlZTQzNTgzNjdh
M2EKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9mYXN0L2RvbS9taWNyb3Rhc2stcmV2
ZXJzZS1leHBlY3RlZC50eHQKQEAgLTAsMCArMSwxNSBAQAorQ09OU09MRSBNRVNTQUdFOiBsaW5l
IDIzOiBGaW5pc2hlZCBxdWV1ZWluZyB0ZXN0cy4KK0NPTlNPTEUgTUVTU0FHRTogTWljcm9UYXNr
ICMwIGhhcyBydW4uCitDT05TT0xFIE1FU1NBR0U6IE1pY3JvVGFzayAjMSBoYXMgcnVuLgorQ09O
U09MRSBNRVNTQUdFOiBNaWNyb1Rhc2sgIzIgaGFzIHJ1bi4KKyAKKworLS0tLS0tLS0KK0ZyYW1l
OiAnZnJhbWUxJworLS0tLS0tLS0KKworCistLS0tLS0tLQorRnJhbWU6ICdmcmFtZTInCistLS0t
LS0tLQorCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L2RvbS9taWNyb3Rhc2stcmV2ZXJz
ZS5odG1sIGIvTGF5b3V0VGVzdHMvZmFzdC9kb20vbWljcm90YXNrLXJldmVyc2UuaHRtbApuZXcg
ZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwLi5iMWI0ZTc3ODYyMTdiYWQzNmNkZjkwNDliOWMzZThmNGZhMjcyYmQwCi0tLSAvZGV2
L251bGwKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC9kb20vbWljcm90YXNrLXJldmVyc2UuaHRtbApA
QCAtMCwwICsxLDI4IEBACis8IURPQ1RZUEUgaHRtbD4KKzxzY3JpcHQ+CitpZiAod2luZG93LnRl
c3RSdW5uZXIpIHsKKyAgICB0ZXN0UnVubmVyLmR1bXBBc1RleHQoKTsKKyAgICB0ZXN0UnVubmVy
LmR1bXBDaGlsZEZyYW1lc0FzVGV4dCgpOworICAgIHRlc3RSdW5uZXIud2FpdFVudGlsRG9uZSgp
OworfQorPC9zY3JpcHQ+Cis8aWZyYW1lIGlkPSJmcmFtZTEiPjwvaWZyYW1lPgorPGlmcmFtZSBp
ZD0iZnJhbWUyIj48L2lmcmFtZT4KKzxzY3JpcHQ+CisKK3ZhciBpZnJhbWUxID0gZG9jdW1lbnQu
cXVlcnlTZWxlY3RvcigiI2ZyYW1lMSIpLmNvbnRlbnRXaW5kb3c7Cit2YXIgaWZyYW1lMiA9IGRv
Y3VtZW50LnF1ZXJ5U2VsZWN0b3IoIiNmcmFtZTIiKS5jb250ZW50V2luZG93OworCitpZih3aW5k
b3cuaW50ZXJuYWxzKQorICAgIGludGVybmFscy5xdWV1ZU1pY3JvVGFzaygwKTsKK2lmKGlmcmFt
ZTEuaW50ZXJuYWxzKQorICAgIGlmcmFtZTEuaW50ZXJuYWxzLnF1ZXVlTWljcm9UYXNrKDEpOwor
aWYoaWZyYW1lMi5pbnRlcm5hbHMpCisgICAgaWZyYW1lMi5pbnRlcm5hbHMucXVldWVNaWNyb1Rh
c2soMik7CisKK2NvbnNvbGUubG9nKCJGaW5pc2hlZCBxdWV1ZWluZyB0ZXN0cy4iKTsKK3JlcXVl
c3RBbmltYXRpb25GcmFtZShmdW5jdGlvbigpIHsKKyAgICBpZiAod2luZG93LnRlc3RSdW5uZXIp
CisgICAgICAgIHRlc3RSdW5uZXIubm90aWZ5RG9uZSgpOworfSk7Cis8L3NjcmlwdD4K
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>247083</attachid>
            <date>2015-02-22 08:37:48 -0800</date>
            <delta_ts>2015-03-02 07:54:28 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-137496-20150222173736.patch</filename>
            <type>text/plain</type>
            <size>41195</size>
            <attacher name="Yoav Weiss">yoav</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTgwMTQ1CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggZjQ5YjY5ZGExMjViY2Fk
ZWZmYmE2NzU3NTE2ZTUxM2M0OWNmNmE5MS4uYWM0YTI4ZWE0Mjc0ZjMzYjUxODcyM2VkZjc5MDVl
Yzc4ZWVmNzQxYiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDQ2IEBACisyMDE1LTAyLTE5ICBZb2F2
IFdlaXNzICA8eW9hdkB5b2F2LndzPgorCisgICAgICAgIEFkZCBhIG1pY3JvdGFzayBhYnN0cmFj
dGlvbgorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTM3
NDk2CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgVGhp
cyBwYXRjaCBhZGRzIGEgbWljcm90YXNrIGFic3RyYWN0aW9uOiBodHRwczovL2h0bWwuc3BlYy53
aGF0d2cub3JnL211bHRpcGFnZS93ZWJhcHBhcGlzLmh0bWwjbWljcm90YXNrCisgICAgICAgIFRo
YXQgYWJzdHJhY3Rpb24gaXMgcmVxdWlyZWQgaW4gb3JkZXIgdG8gZW5hYmxlIGFzeW5jIGxvYWRp
bmcgb2YgaW1hZ2VzLAorICAgICAgICB3aGljaCBpcyBpbiB0dXJuIHJlcXVpcmVkIHRvIGVuYWJs
ZSBzdXBwb3J0IGZvciB0aGUgcGljdHVyZSBlbGVtZW50LCBhcyB3ZWxsIGFzCisgICAgICAgIHRv
IG1ha2Ugc3VyZSB0aGF0IHRoZSBvcmRlciBvZiBwcm9wZXJ0aWVzIHNldCBvbiBIVE1MSW1hZ2VF
bGVtZW50IGhhcyBubyBpbXBsaWNhdGlvbnMuCisKKyAgICAgICAgKiBXZWJDb3JlLnZjeHByb2ov
V2ViQ29yZS52Y3hwcm9qOiBBZGQgTWljcm9UYXNrLntoLGNwcH0gdG8gdGhlIHByb2plY3QuCisg
ICAgICAgICogV2ViQ29yZS52Y3hwcm9qL1dlYkNvcmVUZXN0U3VwcG9ydC52Y3hwcm9qOiBBZGQg
TWljcm9UYXNrVGVzdC57aCxjcHB9IHRvIHRoZSBwcm9qZWN0LgorICAgICAgICAqIFdlYkNvcmUu
dmN4cHJvai9XZWJDb3JlLnZjeHByb2ouZmlsdGVyczogQWRkIE1pY3JvVGFzay57aCxjcHB9IHRv
IHRoZSBwcm9qZWN0LgorICAgICAgICAqIFdlYkNvcmUudmN4cHJvai9XZWJDb3JlVGVzdFN1cHBv
cnQudmN4cHJvai5maWx0ZXJzOiBBZGQgTWljcm9UYXNrVGVzdC57aCxjcHB9IHRvIHRoZSBwcm9q
ZWN0LgorICAgICAgICAqIFdlYkNvcmUueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvajogQWRkIE1p
Y3JvVGFza3ssVGVzdH0ue2gsY3BwfSB0byB0aGUgcHJvamVjdC4KKyAgICAgICAgKiBkb20vRG9j
dW1lbnQuaDogQWRkIFdFQkNPUkVfRVhQT1JUIHRvIGFkZENvbnNvbGVNZXNzYWdlLCBzbyBpdCBj
YW4gYmUgdXNlZCBpbiBNaWNyb1Rhc2tUZXN0IHRoYXQncyBpbiBXZWJDb3JlVGVzdFN1cHBvcnQu
LgorICAgICAgICAqIGRvbS9NaWNyb1Rhc2suaDogQWRkIGEgTWljcm9UYXNrIGludGVyZmFjZSBj
bGFzcy4gQWRkIGEgTWljcm9UYXNrUXVldWUgc2luZ2xldG9uLgorICAgICAgICAoV2ViQ29yZTo6
TWljcm9UYXNrOjp+TWljcm9UYXNrKToKKyAgICAgICAgKFdlYkNvcmU6Ok1pY3JvVGFzazo6cnVu
KTogUnVuIHRoZSBtaWNyb3Rhc2suCisgICAgICAgICogZG9tL01pY3JvVGFzay5jcHA6IEltcGxl
bWVudCB0aGUgTWljcm9UYXNrUXVldWUgc2luZ2xldG9uLgorICAgICAgICAoV2ViQ29yZTo6TWlj
cm9UYXNrUXVldWU6OnNpbmdsZXRvbik6IEdldCBhIHNpbmdsZXRvbiBpbnN0YW5jZSBvZiBNaWNy
b1Rhc2tRdWV1ZS4KKyAgICAgICAgKFdlYkNvcmU6Ok1pY3JvVGFza1F1ZXVlOjpxdWV1ZU1pY3Jv
VGFzayk6IEFkZCBhIG1pY3JvdGFzayB0byB0aGUgcXVldWUuCisgICAgICAgIChXZWJDb3JlOjpN
aWNyb1Rhc2tRdWV1ZTo6cnVuTWljcm9UYXNrcyk6IFJ1biBhbGwgdGhlIG1pY3JvdGFza3MgaW4g
dGhlIHF1ZXVlIGFuZCBjbGVhciBpdC4KKyAgICAgICAgKiBkb20vU2NyaXB0UnVubmVyLmNwcDog
VHJpZ2dlciBydW5uaW5nIG9mIGFsbCBtaWNyb3Rhc2tzIGluIHF1ZXVlLgorICAgICAgICAoV2Vi
Q29yZTo6U2NyaXB0UnVubmVyOjp0aW1lckZpcmVkKToKKyAgICAgICAgKiBodG1sL3BhcnNlci9I
VE1MU2NyaXB0UnVubmVyLmNwcDogVHJpZ2dlciBydW5uaW5nIG9mIGFsbCBtaWNyb3Rhc2tzIGlu
IHF1ZXVlLgorICAgICAgICAoV2ViQ29yZTo6SFRNTFNjcmlwdFJ1bm5lcjo6ZXhlY3V0ZVBlbmRp
bmdTY3JpcHRBbmREaXNwYXRjaEV2ZW50KToKKyAgICAgICAgKFdlYkNvcmU6OkhUTUxTY3JpcHRS
dW5uZXI6OmV4ZWN1dGVTY3JpcHRzV2FpdGluZ0ZvclBhcnNpbmcpOgorICAgICAgICAoV2ViQ29y
ZTo6SFRNTFNjcmlwdFJ1bm5lcjo6cnVuU2NyaXB0KToKKyAgICAgICAgKiB0ZXN0aW5nL0ludGVy
bmFscy5jcHA6IEFkZCBhIG1ldGhvZCB0byBxdWV1ZSBhIHRlc3QgbWljcm90YXNrLgorICAgICAg
ICAoV2ViQ29yZTo6SW50ZXJuYWxzOjpxdWV1ZU1pY3JvVGFzayk6CisgICAgICAgICogdGVzdGlu
Zy9JbnRlcm5hbHMuaDogQWRkIGEgbWV0aG9kIHRvIHF1ZXVlIGEgdGVzdCBtaWNyb3Rhc2suCisg
ICAgICAgIChXZWJDb3JlOjpJbnRlcm5hbHM6OnF1ZXVlTWljcm9UYXNrKToKKyAgICAgICAgKiB0
ZXN0aW5nL0ludGVybmFscy5pZGw6IEV4cG9zZSB0ZXN0IG1pY3JvdGFzayBxdWV1ZWluZyB0byB0
ZXN0IEpTLgorICAgICAgICAqIHRlc3RpbmcvTWljcm9UYXNrVGVzdC5jcHA6IEFkZCBhIHRlc3Qg
Y2xhc3MgdGhhdCBpbXBsZW1lbnRzIGEgbWljcm90YXNrIGFuZCBwcmludHMgdG8gdGhlIGNvbnNv
bGUgd2hlbiBpdCBydW5zLgorICAgICAgICAoV2ViQ29yZTo6TWljcm9UYXNrVGVzdDo6cnVuKTog
UnVuIHRoZSBtaWNyb3Rhc2sKKyAgICAgICAgKFdlYkNvcmU6Ok1pY3JvVGFza1Rlc3Q6OmNyZWF0
ZSk6IENyZWF0ZSBhIHRlc3QgbWljcm90YXNrLgorICAgICAgICAqIHRlc3RpbmcvTWljcm9UYXNr
VGVzdC5oOiBBZGQgYSB0ZXN0IGNsYXNzIHRoYXQgaW1wbGVtZW50cyBhIG1pY3JvdGFzay4KKyAg
ICAgICAgKFdlYkNvcmU6Ok1pY3JvVGFza1Rlc3Q6OnJ1bik6CisgICAgICAgIChXZWJDb3JlOjpN
aWNyb1Rhc2tUZXN0OjpjcmVhdGUpOgorCiAyMDE1LTAyLTEzICBTZXJnaW8gVmlsbGFyIFNlbmlu
ICA8c3ZpbGxhckBpZ2FsaWEuY29tPgogCiAgICAgICAgIFtDU1MgR3JpZCBMYXlvdXRdIEludmFs
aWQgaW5pdGlhbGl6YXRpb24gb2YgdHJhY2sgc2l6ZXMgd2l0aCBub24gc3Bhbm5pbmcgZ3JpZCBp
dGVtcwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvQ01ha2VMaXN0cy50eHQgYi9Tb3VyY2Uv
V2ViQ29yZS9DTWFrZUxpc3RzLnR4dAppbmRleCA2NDY2YmE1MTJmZWVjMTM1ZWU3MGMzNzNhMmU1
NjlkNmEwYzFkM2UwLi42MDJhM2VmMDYwYjkwZDVmYWE5NzBhY2EzMjY0MzI3NjNkZDEzMGRkIDEw
MDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9DTWFrZUxpc3RzLnR4dAorKysgYi9Tb3VyY2UvV2Vi
Q29yZS9DTWFrZUxpc3RzLnR4dApAQCAtMTM2OCw2ICsxMzY4LDcgQEAgc2V0KFdlYkNvcmVfU09V
UkNFUwogICAgIGRvbS9NZXNzYWdlRXZlbnQuY3BwCiAgICAgZG9tL01lc3NhZ2VQb3J0LmNwcAog
ICAgIGRvbS9NZXNzYWdlUG9ydENoYW5uZWwuY3BwCisgICAgZG9tL01pY3JvVGFzay5jcHAKICAg
ICBkb20vTW91c2VFdmVudC5jcHAKICAgICBkb20vTW91c2VSZWxhdGVkRXZlbnQuY3BwCiAgICAg
ZG9tL011dGF0aW9uRXZlbnQuY3BwCkBAIC0zMTUwLDYgKzMxNTEsNyBAQCBzZXQoV2ViQ29yZVRl
c3RTdXBwb3J0X1NPVVJDRVMKICAgICB0ZXN0aW5nL0ludGVybmFsU2V0dGluZ3MuY3BwCiAgICAg
dGVzdGluZy9JbnRlcm5hbHMuY3BwCiAKKyAgICB0ZXN0aW5nL01pY3JvVGFza1Rlc3QuY3BwCiAg
ICAgdGVzdGluZy9Nb2NrUGFnZU92ZXJsYXlDbGllbnQuY3BwCiAKICAgICB0ZXN0aW5nL2pzL1dl
YkNvcmVUZXN0U3VwcG9ydC5jcHAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUu
dmN4cHJvai9XZWJDb3JlLnZjeHByb2ogYi9Tb3VyY2UvV2ViQ29yZS9XZWJDb3JlLnZjeHByb2ov
V2ViQ29yZS52Y3hwcm9qCmluZGV4IDE0NDJiMWRhOTk3OWU5Y2MwOGIxZjNiZDIxNmI5NzJmMzVh
NDE0NTYuLjdlODhmZmFjNTYyZGRlNTBjNTI2MzZmMTI2YWE3ZDJhMTg0ZDAzY2MgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUudmN4cHJvai9XZWJDb3JlLnZjeHByb2oKKysrIGIv
U291cmNlL1dlYkNvcmUvV2ViQ29yZS52Y3hwcm9qL1dlYkNvcmUudmN4cHJvagpAQCAtMTM1NzUs
NiArMTM1NzUsNyBAQAogICAgICAgPEV4Y2x1ZGVkRnJvbUJ1aWxkIENvbmRpdGlvbj0iJyQoQ29u
ZmlndXJhdGlvbil8JChQbGF0Zm9ybSknPT0nUHJvZHVjdGlvbnxXaW4zMiciPnRydWU8L0V4Y2x1
ZGVkRnJvbUJ1aWxkPgogICAgICAgPEV4Y2x1ZGVkRnJvbUJ1aWxkIENvbmRpdGlvbj0iJyQoQ29u
ZmlndXJhdGlvbil8JChQbGF0Zm9ybSknPT0nUHJvZHVjdGlvbnx4NjQnIj50cnVlPC9FeGNsdWRl
ZEZyb21CdWlsZD4KICAgICA8L0NsQ29tcGlsZT4KKyAgICA8Q2xDb21waWxlIEluY2x1ZGU9Ii4u
XGRvbVxNaWNyb1Rhc2suY3BwIiAvPgogICAgIDxDbENvbXBpbGUgSW5jbHVkZT0iLi5cZG9tXE1v
dXNlRXZlbnQuY3BwIj4KICAgICAgIDxFeGNsdWRlZEZyb21CdWlsZCBDb25kaXRpb249IickKENv
bmZpZ3VyYXRpb24pfCQoUGxhdGZvcm0pJz09J0RlYnVnfFdpbjMyJyI+dHJ1ZTwvRXhjbHVkZWRG
cm9tQnVpbGQ+CiAgICAgICA8RXhjbHVkZWRGcm9tQnVpbGQgQ29uZGl0aW9uPSInJChDb25maWd1
cmF0aW9uKXwkKFBsYXRmb3JtKSc9PSdEZWJ1Z3x4NjQnIj50cnVlPC9FeGNsdWRlZEZyb21CdWls
ZD4KQEAgLTIwNzUwLDYgKzIwNzUxLDcgQEAKICAgICA8Q2xJbmNsdWRlIEluY2x1ZGU9Ii4uXGRv
bVxNZXNzYWdlRXZlbnQuaCIgLz4KICAgICA8Q2xJbmNsdWRlIEluY2x1ZGU9Ii4uXGRvbVxNZXNz
YWdlUG9ydC5oIiAvPgogICAgIDxDbEluY2x1ZGUgSW5jbHVkZT0iLi5cZG9tXE1lc3NhZ2VQb3J0
Q2hhbm5lbC5oIiAvPgorICAgIDxDbEluY2x1ZGUgSW5jbHVkZT0iLi5cZG9tXE1pY3JvVGFzay5o
IiAvPgogICAgIDxDbEluY2x1ZGUgSW5jbHVkZT0iLi5cZG9tXE1vdXNlRXZlbnQuaCIgLz4KICAg
ICA8Q2xJbmNsdWRlIEluY2x1ZGU9Ii4uXGRvbVxNb3VzZVJlbGF0ZWRFdmVudC5oIiAvPgogICAg
IDxDbEluY2x1ZGUgSW5jbHVkZT0iLi5cZG9tXE11dGF0aW9uRXZlbnQuaCIgLz4KQEAgLTIxNTUw
LDQgKzIxNTUyLDQgQEAKICAgPEltcG9ydEdyb3VwIExhYmVsPSJFeHRlbnNpb25UYXJnZXRzIj4K
ICAgICA8SW1wb3J0IFByb2plY3Q9IiQoVkNUYXJnZXRzUGF0aClcQnVpbGRDdXN0b21pemF0aW9u
c1xtYXNtLnRhcmdldHMiIC8+CiAgIDwvSW1wb3J0R3JvdXA+Ci08L1Byb2plY3Q+ClwgTm8gbmV3
bGluZSBhdCBlbmQgb2YgZmlsZQorPC9Qcm9qZWN0PgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNv
cmUvV2ViQ29yZS52Y3hwcm9qL1dlYkNvcmUudmN4cHJvai5maWx0ZXJzIGIvU291cmNlL1dlYkNv
cmUvV2ViQ29yZS52Y3hwcm9qL1dlYkNvcmUudmN4cHJvai5maWx0ZXJzCmluZGV4IDcyZThhZWU1
NWJhMjEzZDkxMTdlNmM5ZmNmNmM1MmMyNjUzNGQ0ZTIuLjY3OGI0ZDQ4YTEwZTEyY2ZjZmNhNWZk
NDEyYTk0ZTc2YmI1ZGFhMGUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUudmN4
cHJvai9XZWJDb3JlLnZjeHByb2ouZmlsdGVycworKysgYi9Tb3VyY2UvV2ViQ29yZS9XZWJDb3Jl
LnZjeHByb2ovV2ViQ29yZS52Y3hwcm9qLmZpbHRlcnMKQEAgLTMyMDQsNiArMzIwNCw5IEBACiAg
ICAgPENsQ29tcGlsZSBJbmNsdWRlPSIuLlxkb21cTWVzc2FnZVBvcnRDaGFubmVsLmNwcCI+CiAg
ICAgICA8RmlsdGVyPmRvbTwvRmlsdGVyPgogICAgIDwvQ2xDb21waWxlPgorICAgIDxDbENvbXBp
bGUgSW5jbHVkZT0iLi5cZG9tXE1pY3JvVGFzay5jcHAiPgorICAgICAgPEZpbHRlcj5kb208L0Zp
bHRlcj4KKyAgICA8L0NsQ29tcGlsZT4KICAgICA8Q2xDb21waWxlIEluY2x1ZGU9Ii4uXGRvbVxN
b3VzZUV2ZW50LmNwcCI+CiAgICAgICA8RmlsdGVyPmRvbTwvRmlsdGVyPgogICAgIDwvQ2xDb21w
aWxlPgpAQCAtMTAyNjYsNiArMTAyNjksOSBAQAogICAgIDxDbEluY2x1ZGUgSW5jbHVkZT0iLi5c
ZG9tXE1lc3NhZ2VQb3J0Q2hhbm5lbC5oIj4KICAgICAgIDxGaWx0ZXI+ZG9tPC9GaWx0ZXI+CiAg
ICAgPC9DbEluY2x1ZGU+CisgICAgPENsSW5jbHVkZSBJbmNsdWRlPSIuLlxkb21cTWljcm9UYXNr
LmgiPgorICAgICAgPEZpbHRlcj5kb208L0ZpbHRlcj4KKyAgICA8L0NsSW5jbHVkZT4KICAgICA8
Q2xJbmNsdWRlIEluY2x1ZGU9Ii4uXGRvbVxNb3VzZUV2ZW50LmgiPgogICAgICAgPEZpbHRlcj5k
b208L0ZpbHRlcj4KICAgICA8L0NsSW5jbHVkZT4KQEAgLTE1Mzc0LDQgKzE1MzgwLDQgQEAKICAg
ICAgIDxGaWx0ZXI+cGxhdGZvcm1cd2luPC9GaWx0ZXI+CiAgICAgPC9NQVNNPgogICA8L0l0ZW1H
cm91cD4KLTwvUHJvamVjdD4KXCBObyBuZXdsaW5lIGF0IGVuZCBvZiBmaWxlCis8L1Byb2plY3Q+
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9XZWJDb3JlLnZjeHByb2ovV2ViQ29yZVRlc3RT
dXBwb3J0LnZjeHByb2ogYi9Tb3VyY2UvV2ViQ29yZS9XZWJDb3JlLnZjeHByb2ovV2ViQ29yZVRl
c3RTdXBwb3J0LnZjeHByb2oKaW5kZXggZTNkYzgxOWZmOWU1M2IyYTRlMDVlYTAzN2I5YzU5NWM3
Y2Y3NWMxMy4uMTVmZWQ1YmUxMDY0OGQ3NWE4ZGExMGI1NDBkMDgxMzkxNWQyOGU1YiAxMDA2NDQK
LS0tIGEvU291cmNlL1dlYkNvcmUvV2ViQ29yZS52Y3hwcm9qL1dlYkNvcmVUZXN0U3VwcG9ydC52
Y3hwcm9qCisrKyBiL1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUudmN4cHJvai9XZWJDb3JlVGVzdFN1
cHBvcnQudmN4cHJvagpAQCAtNzA2LDYgKzcwNiw2OCBAQAogICAgICAgPEZvcmNlZEluY2x1ZGVG
aWxlcyBDb25kaXRpb249IickKENvbmZpZ3VyYXRpb24pfCQoUGxhdGZvcm0pJz09J1Byb2R1Y3Rp
b258eDY0JyI+CiAgICAgICA8L0ZvcmNlZEluY2x1ZGVGaWxlcz4KICAgICA8L0NsQ29tcGlsZT4K
KyAgICA8Q2xDb21waWxlIEluY2x1ZGU9Ii4uXHRlc3RpbmdcTWljcm9UYXNrVGVzdC5jcHAiPgor
ICAgICAgPFByZWNvbXBpbGVkSGVhZGVyIENvbmRpdGlvbj0iJyQoQ29uZmlndXJhdGlvbil8JChQ
bGF0Zm9ybSknPT0nRGVidWd8V2luMzInIj4KKyAgICAgIDwvUHJlY29tcGlsZWRIZWFkZXI+Cisg
ICAgICA8UHJlY29tcGlsZWRIZWFkZXIgQ29uZGl0aW9uPSInJChDb25maWd1cmF0aW9uKXwkKFBs
YXRmb3JtKSc9PSdEZWJ1Z3x4NjQnIj4KKyAgICAgIDwvUHJlY29tcGlsZWRIZWFkZXI+CisgICAg
ICA8UHJlY29tcGlsZWRIZWFkZXIgQ29uZGl0aW9uPSInJChDb25maWd1cmF0aW9uKXwkKFBsYXRm
b3JtKSc9PSdEZWJ1Z19XaW5DYWlyb3xXaW4zMiciPgorICAgICAgPC9QcmVjb21waWxlZEhlYWRl
cj4KKyAgICAgIDxQcmVjb21waWxlZEhlYWRlciBDb25kaXRpb249IickKENvbmZpZ3VyYXRpb24p
fCQoUGxhdGZvcm0pJz09J0RlYnVnX1dpbkNhaXJvfHg2NCciPgorICAgICAgPC9QcmVjb21waWxl
ZEhlYWRlcj4KKyAgICAgIDxQcmVjb21waWxlZEhlYWRlciBDb25kaXRpb249IickKENvbmZpZ3Vy
YXRpb24pfCQoUGxhdGZvcm0pJz09J0RlYnVnU3VmZml4fFdpbjMyJyI+CisgICAgICA8L1ByZWNv
bXBpbGVkSGVhZGVyPgorICAgICAgPFByZWNvbXBpbGVkSGVhZGVyIENvbmRpdGlvbj0iJyQoQ29u
ZmlndXJhdGlvbil8JChQbGF0Zm9ybSknPT0nRGVidWdTdWZmaXh8eDY0JyI+CisgICAgICA8L1By
ZWNvbXBpbGVkSGVhZGVyPgorICAgICAgPERpc2FibGVTcGVjaWZpY1dhcm5pbmdzIENvbmRpdGlv
bj0iJyQoQ29uZmlndXJhdGlvbil8JChQbGF0Zm9ybSknPT0nRGVidWd8V2luMzInIj40MDY1OzQy
NzM7NDU2NTs0NzAxOzQ3MDI7JShEaXNhYmxlU3BlY2lmaWNXYXJuaW5ncyk8L0Rpc2FibGVTcGVj
aWZpY1dhcm5pbmdzPgorICAgICAgPERpc2FibGVTcGVjaWZpY1dhcm5pbmdzIENvbmRpdGlvbj0i
JyQoQ29uZmlndXJhdGlvbil8JChQbGF0Zm9ybSknPT0nRGVidWd8eDY0JyI+NDA2NTs0MjczOzQ1
NjU7NDcwMTs0NzAyOyUoRGlzYWJsZVNwZWNpZmljV2FybmluZ3MpPC9EaXNhYmxlU3BlY2lmaWNX
YXJuaW5ncz4KKyAgICAgIDxEaXNhYmxlU3BlY2lmaWNXYXJuaW5ncyBDb25kaXRpb249IickKENv
bmZpZ3VyYXRpb24pfCQoUGxhdGZvcm0pJz09J0RlYnVnX1dpbkNhaXJvfFdpbjMyJyI+NDA2NTs0
MjczOzQ1NjU7NDcwMTs0NzAyOyUoRGlzYWJsZVNwZWNpZmljV2FybmluZ3MpPC9EaXNhYmxlU3Bl
Y2lmaWNXYXJuaW5ncz4KKyAgICAgIDxEaXNhYmxlU3BlY2lmaWNXYXJuaW5ncyBDb25kaXRpb249
IickKENvbmZpZ3VyYXRpb24pfCQoUGxhdGZvcm0pJz09J0RlYnVnX1dpbkNhaXJvfHg2NCciPjQw
NjU7NDI3Mzs0NTY1OzQ3MDE7NDcwMjslKERpc2FibGVTcGVjaWZpY1dhcm5pbmdzKTwvRGlzYWJs
ZVNwZWNpZmljV2FybmluZ3M+CisgICAgICA8RGlzYWJsZVNwZWNpZmljV2FybmluZ3MgQ29uZGl0
aW9uPSInJChDb25maWd1cmF0aW9uKXwkKFBsYXRmb3JtKSc9PSdEZWJ1Z1N1ZmZpeHxXaW4zMici
PjQwNjU7NDI3Mzs0NTY1OzQ3MDE7NDcwMjslKERpc2FibGVTcGVjaWZpY1dhcm5pbmdzKTwvRGlz
YWJsZVNwZWNpZmljV2FybmluZ3M+CisgICAgICA8RGlzYWJsZVNwZWNpZmljV2FybmluZ3MgQ29u
ZGl0aW9uPSInJChDb25maWd1cmF0aW9uKXwkKFBsYXRmb3JtKSc9PSdEZWJ1Z1N1ZmZpeHx4NjQn
Ij40MDY1OzQyNzM7NDU2NTs0NzAxOzQ3MDI7JShEaXNhYmxlU3BlY2lmaWNXYXJuaW5ncyk8L0Rp
c2FibGVTcGVjaWZpY1dhcm5pbmdzPgorICAgICAgPEZvcmNlZEluY2x1ZGVGaWxlcyBDb25kaXRp
b249IickKENvbmZpZ3VyYXRpb24pfCQoUGxhdGZvcm0pJz09J0RlYnVnfFdpbjMyJyI+CisgICAg
ICA8L0ZvcmNlZEluY2x1ZGVGaWxlcz4KKyAgICAgIDxGb3JjZWRJbmNsdWRlRmlsZXMgQ29uZGl0
aW9uPSInJChDb25maWd1cmF0aW9uKXwkKFBsYXRmb3JtKSc9PSdEZWJ1Z3x4NjQnIj4KKyAgICAg
IDwvRm9yY2VkSW5jbHVkZUZpbGVzPgorICAgICAgPEZvcmNlZEluY2x1ZGVGaWxlcyBDb25kaXRp
b249IickKENvbmZpZ3VyYXRpb24pfCQoUGxhdGZvcm0pJz09J0RlYnVnX1dpbkNhaXJvfFdpbjMy
JyI+CisgICAgICA8L0ZvcmNlZEluY2x1ZGVGaWxlcz4KKyAgICAgIDxGb3JjZWRJbmNsdWRlRmls
ZXMgQ29uZGl0aW9uPSInJChDb25maWd1cmF0aW9uKXwkKFBsYXRmb3JtKSc9PSdEZWJ1Z19XaW5D
YWlyb3x4NjQnIj4KKyAgICAgIDwvRm9yY2VkSW5jbHVkZUZpbGVzPgorICAgICAgPEZvcmNlZElu
Y2x1ZGVGaWxlcyBDb25kaXRpb249IickKENvbmZpZ3VyYXRpb24pfCQoUGxhdGZvcm0pJz09J0Rl
YnVnU3VmZml4fFdpbjMyJyI+CisgICAgICA8L0ZvcmNlZEluY2x1ZGVGaWxlcz4KKyAgICAgIDxG
b3JjZWRJbmNsdWRlRmlsZXMgQ29uZGl0aW9uPSInJChDb25maWd1cmF0aW9uKXwkKFBsYXRmb3Jt
KSc9PSdEZWJ1Z1N1ZmZpeHx4NjQnIj4KKyAgICAgIDwvRm9yY2VkSW5jbHVkZUZpbGVzPgorICAg
ICAgPFByZWNvbXBpbGVkSGVhZGVyIENvbmRpdGlvbj0iJyQoQ29uZmlndXJhdGlvbil8JChQbGF0
Zm9ybSknPT0nUmVsZWFzZXxXaW4zMiciPgorICAgICAgPC9QcmVjb21waWxlZEhlYWRlcj4KKyAg
ICAgIDxQcmVjb21waWxlZEhlYWRlciBDb25kaXRpb249IickKENvbmZpZ3VyYXRpb24pfCQoUGxh
dGZvcm0pJz09J1JlbGVhc2V8eDY0JyI+CisgICAgICA8L1ByZWNvbXBpbGVkSGVhZGVyPgorICAg
ICAgPFByZWNvbXBpbGVkSGVhZGVyIENvbmRpdGlvbj0iJyQoQ29uZmlndXJhdGlvbil8JChQbGF0
Zm9ybSknPT0nUmVsZWFzZV9XaW5DYWlyb3xXaW4zMiciPgorICAgICAgPC9QcmVjb21waWxlZEhl
YWRlcj4KKyAgICAgIDxQcmVjb21waWxlZEhlYWRlciBDb25kaXRpb249IickKENvbmZpZ3VyYXRp
b24pfCQoUGxhdGZvcm0pJz09J1JlbGVhc2VfV2luQ2Fpcm98eDY0JyI+CisgICAgICA8L1ByZWNv
bXBpbGVkSGVhZGVyPgorICAgICAgPFByZWNvbXBpbGVkSGVhZGVyIENvbmRpdGlvbj0iJyQoQ29u
ZmlndXJhdGlvbil8JChQbGF0Zm9ybSknPT0nUHJvZHVjdGlvbnxXaW4zMiciPgorICAgICAgPC9Q
cmVjb21waWxlZEhlYWRlcj4KKyAgICAgIDxQcmVjb21waWxlZEhlYWRlciBDb25kaXRpb249Iick
KENvbmZpZ3VyYXRpb24pfCQoUGxhdGZvcm0pJz09J1Byb2R1Y3Rpb258eDY0JyI+CisgICAgICA8
L1ByZWNvbXBpbGVkSGVhZGVyPgorICAgICAgPERpc2FibGVTcGVjaWZpY1dhcm5pbmdzIENvbmRp
dGlvbj0iJyQoQ29uZmlndXJhdGlvbil8JChQbGF0Zm9ybSknPT0nUmVsZWFzZXxXaW4zMiciPjQw
NjU7NDI3Mzs0NTY1OzQ3MDE7NDcwMjslKERpc2FibGVTcGVjaWZpY1dhcm5pbmdzKTwvRGlzYWJs
ZVNwZWNpZmljV2FybmluZ3M+CisgICAgICA8RGlzYWJsZVNwZWNpZmljV2FybmluZ3MgQ29uZGl0
aW9uPSInJChDb25maWd1cmF0aW9uKXwkKFBsYXRmb3JtKSc9PSdSZWxlYXNlfHg2NCciPjQwNjU7
NDI3Mzs0NTY1OzQ3MDE7NDcwMjslKERpc2FibGVTcGVjaWZpY1dhcm5pbmdzKTwvRGlzYWJsZVNw
ZWNpZmljV2FybmluZ3M+CisgICAgICA8RGlzYWJsZVNwZWNpZmljV2FybmluZ3MgQ29uZGl0aW9u
PSInJChDb25maWd1cmF0aW9uKXwkKFBsYXRmb3JtKSc9PSdSZWxlYXNlX1dpbkNhaXJvfFdpbjMy
JyI+NDA2NTs0MjczOzQ1NjU7NDcwMTs0NzAyOyUoRGlzYWJsZVNwZWNpZmljV2FybmluZ3MpPC9E
aXNhYmxlU3BlY2lmaWNXYXJuaW5ncz4KKyAgICAgIDxEaXNhYmxlU3BlY2lmaWNXYXJuaW5ncyBD
b25kaXRpb249IickKENvbmZpZ3VyYXRpb24pfCQoUGxhdGZvcm0pJz09J1JlbGVhc2VfV2luQ2Fp
cm98eDY0JyI+NDA2NTs0MjczOzQ1NjU7NDcwMTs0NzAyOyUoRGlzYWJsZVNwZWNpZmljV2Fybmlu
Z3MpPC9EaXNhYmxlU3BlY2lmaWNXYXJuaW5ncz4KKyAgICAgIDxEaXNhYmxlU3BlY2lmaWNXYXJu
aW5ncyBDb25kaXRpb249IickKENvbmZpZ3VyYXRpb24pfCQoUGxhdGZvcm0pJz09J1Byb2R1Y3Rp
b258V2luMzInIj40MDY1OzQyNzM7NDU2NTs0NzAxOzQ3MDI7JShEaXNhYmxlU3BlY2lmaWNXYXJu
aW5ncyk8L0Rpc2FibGVTcGVjaWZpY1dhcm5pbmdzPgorICAgICAgPERpc2FibGVTcGVjaWZpY1dh
cm5pbmdzIENvbmRpdGlvbj0iJyQoQ29uZmlndXJhdGlvbil8JChQbGF0Zm9ybSknPT0nUHJvZHVj
dGlvbnx4NjQnIj40MDY1OzQyNzM7NDU2NTs0NzAxOzQ3MDI7JShEaXNhYmxlU3BlY2lmaWNXYXJu
aW5ncyk8L0Rpc2FibGVTcGVjaWZpY1dhcm5pbmdzPgorICAgICAgPEZvcmNlZEluY2x1ZGVGaWxl
cyBDb25kaXRpb249IickKENvbmZpZ3VyYXRpb24pfCQoUGxhdGZvcm0pJz09J1JlbGVhc2V8V2lu
MzInIj4KKyAgICAgIDwvRm9yY2VkSW5jbHVkZUZpbGVzPgorICAgICAgPEZvcmNlZEluY2x1ZGVG
aWxlcyBDb25kaXRpb249IickKENvbmZpZ3VyYXRpb24pfCQoUGxhdGZvcm0pJz09J1JlbGVhc2V8
eDY0JyI+CisgICAgICA8L0ZvcmNlZEluY2x1ZGVGaWxlcz4KKyAgICAgIDxGb3JjZWRJbmNsdWRl
RmlsZXMgQ29uZGl0aW9uPSInJChDb25maWd1cmF0aW9uKXwkKFBsYXRmb3JtKSc9PSdSZWxlYXNl
X1dpbkNhaXJvfFdpbjMyJyI+CisgICAgICA8L0ZvcmNlZEluY2x1ZGVGaWxlcz4KKyAgICAgIDxG
b3JjZWRJbmNsdWRlRmlsZXMgQ29uZGl0aW9uPSInJChDb25maWd1cmF0aW9uKXwkKFBsYXRmb3Jt
KSc9PSdSZWxlYXNlX1dpbkNhaXJvfHg2NCciPgorICAgICAgPC9Gb3JjZWRJbmNsdWRlRmlsZXM+
CisgICAgICA8Rm9yY2VkSW5jbHVkZUZpbGVzIENvbmRpdGlvbj0iJyQoQ29uZmlndXJhdGlvbil8
JChQbGF0Zm9ybSknPT0nUHJvZHVjdGlvbnxXaW4zMiciPgorICAgICAgPC9Gb3JjZWRJbmNsdWRl
RmlsZXM+CisgICAgICA8Rm9yY2VkSW5jbHVkZUZpbGVzIENvbmRpdGlvbj0iJyQoQ29uZmlndXJh
dGlvbil8JChQbGF0Zm9ybSknPT0nUHJvZHVjdGlvbnx4NjQnIj4KKyAgICAgIDwvRm9yY2VkSW5j
bHVkZUZpbGVzPgorICAgIDwvQ2xDb21waWxlPgogICAgIDxDbENvbXBpbGUgSW5jbHVkZT0iLi5c
dGVzdGluZ1xNb2NrUGFnZU92ZXJsYXlDbGllbnQuY3BwIj4KICAgICAgIDxQcmVjb21waWxlZEhl
YWRlciBDb25kaXRpb249IickKENvbmZpZ3VyYXRpb24pfCQoUGxhdGZvcm0pJz09J0RlYnVnfFdp
bjMyJyI+CiAgICAgICA8L1ByZWNvbXBpbGVkSGVhZGVyPgpAQCAtOTE3LDYgKzk3OSw3IEBACiAg
ICAgPENsSW5jbHVkZSBJbmNsdWRlPSIkKENvbmZpZ3VyYXRpb25CdWlsZERpcilcb2JqJChQbGF0
Zm9ybUFyY2hpdGVjdHVyZSlcV2ViQ29yZVxEZXJpdmVkU291cmNlc1xKU0ludGVybmFsU2V0dGlu
Z3NHZW5lcmF0ZWQuaCIgLz4KICAgICA8Q2xJbmNsdWRlIEluY2x1ZGU9Ii4uXHRlc3RpbmdcTWFs
bG9jU3RhdGlzdGljcy5oIiAvPgogICAgIDxDbEluY2x1ZGUgSW5jbHVkZT0iLi5cdGVzdGluZ1xN
ZW1vcnlJbmZvLmgiIC8+CisgICAgPENsSW5jbHVkZSBJbmNsdWRlPSIuLlx0ZXN0aW5nXE1pY3Jv
VGFza1Rlc3QuaCIgLz4KICAgICA8Q2xJbmNsdWRlIEluY2x1ZGU9Ii4uXHRlc3RpbmdcTW9ja0NE
TS5oIiAvPgogICAgIDxDbEluY2x1ZGUgSW5jbHVkZT0iLi5cdGVzdGluZ1xNb2NrUGFnZU92ZXJs
YXlDbGllbnQuaCIgLz4KICAgICA8Q2xJbmNsdWRlIEluY2x1ZGU9Ii4uXHRlc3RpbmdcVHlwZUNv
bnZlcnNpb25zLmgiIC8+CkBAIC05MjgsNCArOTkxLDQgQEAKICAgPEltcG9ydCBQcm9qZWN0PSIk
KFZDVGFyZ2V0c1BhdGgpXE1pY3Jvc29mdC5DcHAudGFyZ2V0cyIgLz4KICAgPEltcG9ydEdyb3Vw
IExhYmVsPSJFeHRlbnNpb25UYXJnZXRzIj4KICAgPC9JbXBvcnRHcm91cD4KLTwvUHJvamVjdD4K
XCBObyBuZXdsaW5lIGF0IGVuZCBvZiBmaWxlCis8L1Byb2plY3Q+CmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViQ29yZS9XZWJDb3JlLnZjeHByb2ovV2ViQ29yZVRlc3RTdXBwb3J0LnZjeHByb2ouZmls
dGVycyBiL1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUudmN4cHJvai9XZWJDb3JlVGVzdFN1cHBvcnQu
dmN4cHJvai5maWx0ZXJzCmluZGV4IDY0MDJkNWU0ZTBiNTY0OTE5N2RmODUwM2IyNDA0ZjFkMTIw
OGY2NjkuLjc2MjhmMjdmZTAxYTA3MTgzMDk1YTc5Y2ExNDA3YWZmMzQyYzk1MDggMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUudmN4cHJvai9XZWJDb3JlVGVzdFN1cHBvcnQudmN4
cHJvai5maWx0ZXJzCisrKyBiL1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUudmN4cHJvai9XZWJDb3Jl
VGVzdFN1cHBvcnQudmN4cHJvai5maWx0ZXJzCkBAIC0zOSw2ICszOSw5IEBACiAgICAgPENsQ29t
cGlsZSBJbmNsdWRlPSIuLlx0ZXN0aW5nXGpzXFdlYkNvcmVUZXN0U3VwcG9ydC5jcHAiPgogICAg
ICAgPEZpbHRlcj50ZXN0aW5nPC9GaWx0ZXI+CiAgICAgPC9DbENvbXBpbGU+CisgICAgPENsQ29t
cGlsZSBJbmNsdWRlPSIuLlx0ZXN0aW5nXE1pY3JvVGFza1Rlc3QuY3BwIj4KKyAgICAgIDxGaWx0
ZXI+dGVzdGluZzwvRmlsdGVyPgorICAgIDwvQ2xDb21waWxlPgogICAgIDxDbENvbXBpbGUgSW5j
bHVkZT0iLi5cdGVzdGluZ1xNb2NrQ0RNLmNwcCI+CiAgICAgICA8RmlsdGVyPnRlc3Rpbmc8L0Zp
bHRlcj4KICAgICA8L0NsQ29tcGlsZT4KQEAgLTg3LDYgKzkwLDkgQEAKICAgICAgIDxGaWx0ZXI+
dGVzdGluZzwvRmlsdGVyPgogICAgIDwvQ2xJbmNsdWRlPgogICAgIDxDbEluY2x1ZGUgSW5jbHVk
ZT0iLi5cY29uZmlnLmgiIC8+CisgICAgPENsSW5jbHVkZSBJbmNsdWRlPSIuLlx0ZXN0aW5nXE1p
Y3JvVGFza1Rlc3QuaCI+CisgICAgICA8RmlsdGVyPnRlc3Rpbmc8L0ZpbHRlcj4KKyAgICA8L0Ns
SW5jbHVkZT4KICAgICA8Q2xJbmNsdWRlIEluY2x1ZGU9Ii4uXHRlc3RpbmdcTW9ja0NETS5oIj4K
ICAgICAgIDxGaWx0ZXI+dGVzdGluZzwvRmlsdGVyPgogICAgIDwvQ2xJbmNsdWRlPgpAQCAtOTQs
NCArMTAwLDQgQEAKICAgICAgIDxGaWx0ZXI+dGVzdGluZzwvRmlsdGVyPgogICAgIDwvQ2xJbmNs
dWRlPgogICA8L0l0ZW1Hcm91cD4KLTwvUHJvamVjdD4KXCBObyBuZXdsaW5lIGF0IGVuZCBvZiBm
aWxlCis8L1Byb2plY3Q+CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9XZWJDb3JlLnhjb2Rl
cHJvai9wcm9qZWN0LnBieHByb2ogYi9Tb3VyY2UvV2ViQ29yZS9XZWJDb3JlLnhjb2RlcHJvai9w
cm9qZWN0LnBieHByb2oKaW5kZXggZThjOTdhNjIzZmU2NDQ0YmFmYzNkZWE3MWVjZTU0NGVkM2Qx
ZDAxNS4uMDg2ZTFlMTk2NDE1NDk2YTFlZWY2NThhYTVhZjk3ZGJmMjM5YTE0MSAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYkNvcmUvV2ViQ29yZS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qCisrKyBi
L1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvagpAQCAtMjA4
NCw2ICsyMDg0LDcgQEAKIAkJNTM2RDVBMjMxOTNFOEUwQzAwQ0U0Q0FCIC8qIFBhcnNpbmdVdGls
aXRpZXMuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDUz
NkQ1QTIyMTkzRThFMEMwMENFNENBQiAvKiBQYXJzaW5nVXRpbGl0aWVzLmggKi87IH07CiAJCTUz
NkQ1QTI1MTkzRjQwRkMwMENFNENBQiAvKiBTb3VyY2VTaXplTGlzdC5jcHAgaW4gU291cmNlcyAq
LyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA1MzZENUEyNDE5M0Y0MEZDMDBDRTRD
QUIgLyogU291cmNlU2l6ZUxpc3QuY3BwICovOyB9OwogCQk1MzZENUEyNzE5M0Y0MTBCMDBDRTRD
QUIgLyogU291cmNlU2l6ZUxpc3QuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmls
ZTsgZmlsZVJlZiA9IDUzNkQ1QTI2MTkzRjQxMEIwMENFNENBQiAvKiBTb3VyY2VTaXplTGlzdC5o
ICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CisJCTUzQjg5
NUFGMTlEQzdFRDkwMDlDQUE5MyAvKiBNaWNyb1Rhc2suaCBpbiBIZWFkZXJzICovID0ge2lzYSA9
IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDUzQjg5NUFEMTlEQzdDMzcwMDlDQUE5MyAvKiBNaWNy
b1Rhc2suaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQdWJsaWMsICk7IH07IH07CiAJ
CTUzQzgyOThEMTNEOEQ5MjcwMERFMkRFQiAvKiBSZW5kZXJGbGV4aWJsZUJveC5jcHAgaW4gU291
cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA1M0M4Mjk4QjEzRDhEOTI3
MDBERTJERUIgLyogUmVuZGVyRmxleGlibGVCb3guY3BwICovOyB9OwogCQk1M0M4Mjk4RTEzRDhE
OTI3MDBERTJERUIgLyogUmVuZGVyRmxleGlibGVCb3guaCBpbiBIZWFkZXJzICovID0ge2lzYSA9
IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDUzQzgyOThDMTNEOEQ5MjcwMERFMkRFQiAvKiBSZW5k
ZXJGbGV4aWJsZUJveC5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7
IH07IH07CiAJCTUzRTI5RTVFMTY3QThBMTkwMDU4NkQzRCAvKiBJbnRlcm5hbFNldHRpbmdzR2Vu
ZXJhdGVkLmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9
IDUzRTI5RTVDMTY3QThBMTkwMDU4NkQzRCAvKiBJbnRlcm5hbFNldHRpbmdzR2VuZXJhdGVkLmNw
cCAqLzsgfTsKQEAgLTU2MTIsNiArNTYxMyw5IEBACiAJCUNBM0JGNjdFMTBEOTlCQUUwMEU2Q0U1
MyAvKiBTY3JvbGxBbmltYXRvci5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxl
OyBmaWxlUmVmID0gQ0EzQkY2N0QxMEQ5OUJBRTAwRTZDRTUzIC8qIFNjcm9sbEFuaW1hdG9yLmgg
Ki87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKIAkJQ0FFOUY5
MEYxNDY0NDFGMDAwQzI0NUIwIC8qIENTU0FzcGVjdFJhdGlvVmFsdWUuY3BwIGluIFNvdXJjZXMg
Ki8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQ0FFOUY5MEQxNDY0NDFGMDAwQzI0
NUIwIC8qIENTU0FzcGVjdFJhdGlvVmFsdWUuY3BwICovOyB9OwogCQlDQUU5RjkxMDE0NjQ0MUYw
MDBDMjQ1QjAgLyogQ1NTQXNwZWN0UmF0aW9WYWx1ZS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0g
UEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQ0FFOUY5MEUxNDY0NDFGMDAwQzI0NUIwIC8qIENTU0Fz
cGVjdFJhdGlvVmFsdWUuaCAqLzsgfTsKKwkJQ0I4Q0YwMTgxQTkzNThENDAwMEQ1MTBCIC8qIE1p
Y3JvVGFzay5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYg
PSBDQjhDRjAxNTFBOTM0QjQzMDAwRDUxMEIgLyogTWljcm9UYXNrLmNwcCAqLzsgfTsKKwkJQ0I4
Q0YwMUQxQTk1REU0MjAwMEQ1MTBCIC8qIE1pY3JvVGFza1Rlc3QuaCBpbiBIZWFkZXJzICovID0g
e2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IENCOENGMDFDMUE5NURFNDIwMDBENTEwQiAv
KiBNaWNyb1Rhc2tUZXN0LmggKi87IH07CisJCUNCOENGMDFGMUE5NURFNTkwMDBENTEwQiAvKiBN
aWNyb1Rhc2tUZXN0LmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmls
ZVJlZiA9IENCOENGMDFFMUE5NURFNTkwMDBENTEwQiAvKiBNaWNyb1Rhc2tUZXN0LmNwcCAqLzsg
fTsKIAkJQ0NDMkI1MTQxNUY2MTMwNjAwNDhDREQ2IC8qIERldmljZUNsaWVudC5oIGluIEhlYWRl
cnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQ0NDMkI1MTAxNUY2MTMwNjAw
NDhDREQ2IC8qIERldmljZUNsaWVudC5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFBy
aXZhdGUsICk7IH07IH07CiAJCUNDQzJCNTE1MTVGNjEzMDYwMDQ4Q0RENiAvKiBEZXZpY2VDb250
cm9sbGVyLmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9
IENDQzJCNTExMTVGNjEzMDYwMDQ4Q0RENiAvKiBEZXZpY2VDb250cm9sbGVyLmNwcCAqLzsgfTsK
IAkJQ0NDMkI1MTYxNUY2MTMwNjAwNDhDREQ2IC8qIERldmljZUNvbnRyb2xsZXIuaCBpbiBIZWFk
ZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IENDQzJCNTEyMTVGNjEzMDYw
MDQ4Q0RENiAvKiBEZXZpY2VDb250cm9sbGVyLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMg
PSAoUHJpdmF0ZSwgKTsgfTsgfTsKQEAgLTkyMjYsNiArOTIzMCw3IEBACiAJCTUzNkQ1QTIyMTkz
RThFMEMwMENFNENBQiAvKiBQYXJzaW5nVXRpbGl0aWVzLmggKi8gPSB7aXNhID0gUEJYRmlsZVJl
ZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2Rl
LmMuaDsgbmFtZSA9IFBhcnNpbmdVdGlsaXRpZXMuaDsgcGF0aCA9IHBhcnNlci9QYXJzaW5nVXRp
bGl0aWVzLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTUzNkQ1QTI0MTkzRjQwRkMw
MENFNENBQiAvKiBTb3VyY2VTaXplTGlzdC5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5j
ZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5j
cHA7IHBhdGggPSBTb3VyY2VTaXplTGlzdC5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07
CiAJCTUzNkQ1QTI2MTkzRjQxMEIwMENFNENBQiAvKiBTb3VyY2VTaXplTGlzdC5oICovID0ge2lz
YSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBl
ID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBTb3VyY2VTaXplTGlzdC5oOyBzb3VyY2VUcmVlID0g
Ijxncm91cD4iOyB9OworCQk1M0I4OTVBRDE5REM3QzM3MDA5Q0FBOTMgLyogTWljcm9UYXNrLmgg
Ki8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3du
RmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IE1pY3JvVGFzay5oOyBzb3VyY2VUcmVl
ID0gIjxncm91cD4iOyB9OwogCQk1M0M4Mjk4QjEzRDhEOTI3MDBERTJERUIgLyogUmVuZGVyRmxl
eGlibGVCb3guY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9
IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gUmVuZGVy
RmxleGlibGVCb3guY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQk1M0M4Mjk4QzEz
RDhEOTI3MDBERTJERUIgLyogUmVuZGVyRmxleGlibGVCb3guaCAqLyA9IHtpc2EgPSBQQlhGaWxl
UmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNv
ZGUuYy5oOyBwYXRoID0gUmVuZGVyRmxleGlibGVCb3guaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+
IjsgfTsKIAkJNTNFMjlFNUMxNjdBOEExOTAwNTg2RDNEIC8qIEludGVybmFsU2V0dGluZ3NHZW5l
cmF0ZWQuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7
IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gSW50ZXJuYWxT
ZXR0aW5nc0dlbmVyYXRlZC5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CkBAIC0xMzA3
Miw2ICsxMzA3Nyw5IEBACiAJCUNBM0JGNjdEMTBEOTlCQUUwMEU2Q0U1MyAvKiBTY3JvbGxBbmlt
YXRvci5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxh
c3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBTY3JvbGxBbmltYXRvci5o
OyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQlDQUU5RjkwRDE0NjQ0MUYwMDBDMjQ1QjAg
LyogQ1NTQXNwZWN0UmF0aW9WYWx1ZS5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsg
ZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7
IHBhdGggPSBDU1NBc3BlY3RSYXRpb1ZhbHVlLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+Ijsg
fTsKIAkJQ0FFOUY5MEUxNDY0NDFGMDAwQzI0NUIwIC8qIENTU0FzcGVjdFJhdGlvVmFsdWUuaCAq
LyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25G
aWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gQ1NTQXNwZWN0UmF0aW9WYWx1ZS5oOyBz
b3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlDQjhDRjAxNTFBOTM0QjQzMDAwRDUxMEIgLyog
TWljcm9UYXNrLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rpbmcg
PSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IE1pY3Jv
VGFzay5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUNCOENGMDFDMUE5NURFNDIw
MDBENTEwQiAvKiBNaWNyb1Rhc2tUZXN0LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsg
ZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0
aCA9IE1pY3JvVGFza1Rlc3QuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQ0I4Q0Yw
MUUxQTk1REU1OTAwMEQ1MTBCIC8qIE1pY3JvVGFza1Rlc3QuY3BwICovID0ge2lzYSA9IFBCWEZp
bGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNl
Y29kZS5jcHAuY3BwOyBwYXRoID0gTWljcm9UYXNrVGVzdC5jcHA7IHNvdXJjZVRyZWUgPSAiPGdy
b3VwPiI7IH07CiAJCUNDQzJCNTEwMTVGNjEzMDYwMDQ4Q0RENiAvKiBEZXZpY2VDbGllbnQuaCAq
LyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25G
aWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gRGV2aWNlQ2xpZW50Lmg7IHNvdXJjZVRy
ZWUgPSAiPGdyb3VwPiI7IH07CiAJCUNDQzJCNTExMTVGNjEzMDYwMDQ4Q0RENiAvKiBEZXZpY2VD
b250cm9sbGVyLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rpbmcg
PSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IERldmlj
ZUNvbnRyb2xsZXIuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQlDQ0MyQjUxMjE1
RjYxMzA2MDA0OENERDYgLyogRGV2aWNlQ29udHJvbGxlci5oICovID0ge2lzYSA9IFBCWEZpbGVS
ZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29k
ZS5jLmg7IHBhdGggPSBEZXZpY2VDb250cm9sbGVyLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7
IH07CkBAIC0xNTY1Nyw2ICsxNTY2NSw4IEBACiAJCQkJQTdCRjdFREQxNEM5MTc1QTAwMTQ0ODlE
IC8qIEludGVybmFsU2V0dGluZ3MuaCAqLywKIAkJCQlBN0JGN0VERTE0QzkxNzVBMDAxNDQ4OUQg
LyogSW50ZXJuYWxTZXR0aW5ncy5pZGwgKi8sCiAJCQkJQTdCRTdFREQxNEM5MTc1QTAwMTQ0ODlE
IC8qIE1hbGxvY1N0YXRpc3RpY3MuaCAqLywKKwkJCQlDQjhDRjAxRTFBOTVERTU5MDAwRDUxMEIg
LyogTWljcm9UYXNrVGVzdC5jcHAgKi8sCisJCQkJQ0I4Q0YwMUMxQTk1REU0MjAwMEQ1MTBCIC8q
IE1pY3JvVGFza1Rlc3QuaCAqLywKIAkJCQlBN0JFN0VERTE0QzkxNzVBMDAxNDQ4OUQgLyogTWFs
bG9jU3RhdGlzdGljcy5pZGwgKi8sCiAJCQkJQ0Q1MzkzQ0IxNzVEQ0NFNjAwQzA3MTIzIC8qIE1l
bW9yeUluZm8uaCAqLywKIAkJCQlDRDUzOTNDQzE3NURDQ0U2MDBDMDcxMjMgLyogTWVtb3J5SW5m
by5pZGwgKi8sCkBAIC0yMjg1Nyw2ICsyMjg2Nyw4IEBACiAJCQkJRTFBREVDQkQwRTc2QUNGMTAw
NEExQTVFIC8qIE1lc3NhZ2VQb3J0LmggKi8sCiAJCQkJRTFBREVDQzYwRTc2QUQxRjAwNEExQTVF
IC8qIE1lc3NhZ2VQb3J0LmlkbCAqLywKIAkJCQk0MUJGNzAwQTBGRTg2RjQ5MDA1RThERUMgLyog
TWVzc2FnZVBvcnRDaGFubmVsLmggKi8sCisJCQkJNTNCODk1QUQxOURDN0MzNzAwOUNBQTkzIC8q
IE1pY3JvVGFzay5oICovLAorCQkJCUNCOENGMDE1MUE5MzRCNDMwMDBENTEwQiAvKiBNaWNyb1Rh
c2suY3BwICovLAogCQkJCTg1MDMxQjJGMEE0NEVGQzcwMEY5OTJFMCAvKiBNb3VzZUV2ZW50LmNw
cCAqLywKIAkJCQk4NTAzMUIzMDBBNDRFRkM3MDBGOTkyRTAgLyogTW91c2VFdmVudC5oICovLAog
CQkJCTE0MUI5NEU1MDlFQzQyMjMwMDBFOTQxMyAvKiBNb3VzZUV2ZW50LmlkbCAqLywKQEAgLTIz
NDIxLDYgKzIzNDMzLDcgQEAKIAkJCQk1M0VEM0ZERjE2N0E4OEU3MDA2NzYyRTYgLyogSlNJbnRl
cm5hbFNldHRpbmdzR2VuZXJhdGVkLmggaW4gSGVhZGVycyAqLywKIAkJCQlBNzQwQjU5NTE0Qzkz
NUFCMDBBNzdGQTQgLyogSlNNYWxsb2NTdGF0aXN0aWNzLmggaW4gSGVhZGVycyAqLywKIAkJCQlD
RDUzOTNENDE3NUUwMTg2MDBDMDcxMjMgLyogSlNNZW1vcnlJbmZvLmggaW4gSGVhZGVycyAqLywK
KwkJCQlDQjhDRjAxRDFBOTVERTQyMDAwRDUxMEIgLyogTWljcm9UYXNrVGVzdC5oIGluIEhlYWRl
cnMgKi8sCiAJCQkJRUJGNTEyMUQxNjk2NDk2QzAwNTZCRDI1IC8qIEpTVHlwZUNvbnZlcnNpb25z
LmggaW4gSGVhZGVycyAqLywKIAkJCQlDREMyNkI0MTE2MEE4Q0NFMDAyNjc1N0IgLyogTW9ja0NE
TS5oIGluIEhlYWRlcnMgKi8sCiAJCQkJMkQ5N0YwNDgxOURENDE0MDAwMUVFOUMzIC8qIE1vY2tQ
YWdlT3ZlcmxheUNsaWVudC5oIGluIEhlYWRlcnMgKi8sCkBAIC0yNTgzMSw2ICsyNTg0NCw3IEBA
CiAJCQkJNTNDODI5OEUxM0Q4RDkyNzAwREUyREVCIC8qIFJlbmRlckZsZXhpYmxlQm94LmggaW4g
SGVhZGVycyAqLywKIAkJCQk1MDhDQ0E0RjEzQ0YxMDZCMDAzMTUxRjMgLyogUmVuZGVyRmxvd1Ro
cmVhZC5oIGluIEhlYWRlcnMgKi8sCiAJCQkJQTg3MURFRDMwQTE1MzBDNzAwQjEyQTY4IC8qIFJl
bmRlckZyYW1lLmggaW4gSGVhZGVycyAqLywKKwkJCQk1M0I4OTVBRjE5REM3RUQ5MDA5Q0FBOTMg
LyogTWljcm9UYXNrLmggaW4gSGVhZGVycyAqLywKIAkJCQkwRkQzMDgwRjExN0NGN0U3MDBBNzkx
RjcgLyogUmVuZGVyRnJhbWVCYXNlLmggaW4gSGVhZGVycyAqLywKIAkJCQlBODcxREVEMTBBMTUz
MEM3MDBCMTJBNjggLyogUmVuZGVyRnJhbWVTZXQuaCBpbiBIZWFkZXJzICovLAogCQkJCUNERUE3
Qzg0MTI3NjIzMDQwMEI4NDZERCAvKiBSZW5kZXJGdWxsU2NyZWVuLmggaW4gSGVhZGVycyAqLywK
QEAgLTI3MTkyLDYgKzI3MjA2LDcgQEAKIAkJCQk1M0UyOUU1RTE2N0E4QTE5MDA1ODZEM0QgLyog
SW50ZXJuYWxTZXR0aW5nc0dlbmVyYXRlZC5jcHAgaW4gU291cmNlcyAqLywKIAkJCQk0MTdEQTcx
RDEzNzM1REZBMDA3QzU3RkIgLyogSlNJbnRlcm5hbHMuY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJ
QTc0MEI1QTcxNEM5MzVBRjAwQTc3RkE0IC8qIEpTSW50ZXJuYWxTZXR0aW5ncy5jcHAgaW4gU291
cmNlcyAqLywKKwkJCQlDQjhDRjAxRjFBOTVERTU5MDAwRDUxMEIgLyogTWljcm9UYXNrVGVzdC5j
cHAgaW4gU291cmNlcyAqLywKIAkJCQk1M0VEM0ZERTE2N0E4OEU3MDA2NzYyRTYgLyogSlNJbnRl
cm5hbFNldHRpbmdzR2VuZXJhdGVkLmNwcCBpbiBTb3VyY2VzICovLAogCQkJCUE3NDBCNTk3MTRD
OTM1QUYwMEE3N0ZBNCAvKiBKU01hbGxvY1N0YXRpc3RpY3MuY3BwIGluIFNvdXJjZXMgKi8sCiAJ
CQkJQ0Q1MzkzRDMxNzVFMDE4NjAwQzA3MTIzIC8qIEpTTWVtb3J5SW5mby5jcHAgaW4gU291cmNl
cyAqLywKQEAgLTI5ODI5LDYgKzI5ODQ0LDcgQEAKIAkJCQlCMjIyN0E5MDBEMDBCRjIyMDA3MUI3
ODIgLyogU1ZHUG9seWdvbkVsZW1lbnQuY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJQjIyMjdBOTMw
RDAwQkYyMjAwNzFCNzgyIC8qIFNWR1BvbHlsaW5lRWxlbWVudC5jcHAgaW4gU291cmNlcyAqLywK
IAkJCQlCMjIyN0E5NjBEMDBCRjIyMDA3MUI3ODIgLyogU1ZHUHJlc2VydmVBc3BlY3RSYXRpby5j
cHAgaW4gU291cmNlcyAqLywKKwkJCQlDQjhDRjAxODFBOTM1OEQ0MDAwRDUxMEIgLyogTWljcm9U
YXNrLmNwcCBpbiBTb3VyY2VzICovLAogCQkJCUI1NDNCODU3MTdFQjc1OEYwMDNCRTkzQSAvKiBT
VkdQcm9wZXJ0eUluZm8uY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJQjIyMjdBOTkwRDAwQkYyMjAw
NzFCNzgyIC8qIFNWR1JhZGlhbEdyYWRpZW50RWxlbWVudC5jcHAgaW4gU291cmNlcyAqLywKIAkJ
CQlCMjIyN0E5RDBEMDBCRjIyMDA3MUI3ODIgLyogU1ZHUmVjdEVsZW1lbnQuY3BwIGluIFNvdXJj
ZXMgKi8sCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9kb20vRG9jdW1lbnQuaCBiL1NvdXJj
ZS9XZWJDb3JlL2RvbS9Eb2N1bWVudC5oCmluZGV4IDc2ZmIxYjc5Y2NlYmM0Njg1MTNhYzU2ZWIw
YjQzODBmZjlmM2QwZTMuLjBhNDEyNTYwNTY3ODZlNmJmNzk3ZTM1ZDc0YjdlNzQ2OTBmYzVkYjkg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2RvbS9Eb2N1bWVudC5oCisrKyBiL1NvdXJjZS9X
ZWJDb3JlL2RvbS9Eb2N1bWVudC5oCkBAIC0xMjYwLDcgKzEyNjAsNyBAQCBwdWJsaWM6CiAgICAg
dm9pZCBhZGREaXNhYmxlZEZpZWxkc2V0RWxlbWVudCgpIHsgbV9kaXNhYmxlZEZpZWxkc2V0RWxl
bWVudHNDb3VudCsrOyB9CiAgICAgdm9pZCByZW1vdmVEaXNhYmxlZEZpZWxkc2V0RWxlbWVudCgp
IHsgQVNTRVJUKG1fZGlzYWJsZWRGaWVsZHNldEVsZW1lbnRzQ291bnQpOyBtX2Rpc2FibGVkRmll
bGRzZXRFbGVtZW50c0NvdW50LS07IH0KIAotICAgIHZpcnR1YWwgdm9pZCBhZGRDb25zb2xlTWVz
c2FnZShNZXNzYWdlU291cmNlLCBNZXNzYWdlTGV2ZWwsIGNvbnN0IFN0cmluZyYgbWVzc2FnZSwg
dW5zaWduZWQgbG9uZyByZXF1ZXN0SWRlbnRpZmllciA9IDApIG92ZXJyaWRlIGZpbmFsOworICAg
IFdFQkNPUkVfRVhQT1JUIHZpcnR1YWwgdm9pZCBhZGRDb25zb2xlTWVzc2FnZShNZXNzYWdlU291
cmNlLCBNZXNzYWdlTGV2ZWwsIGNvbnN0IFN0cmluZyYgbWVzc2FnZSwgdW5zaWduZWQgbG9uZyBy
ZXF1ZXN0SWRlbnRpZmllciA9IDApIG92ZXJyaWRlIGZpbmFsOwogCiAgICAgV0VCQ09SRV9FWFBP
UlQgdmlydHVhbCBTZWN1cml0eU9yaWdpbiogdG9wT3JpZ2luKCkgY29uc3Qgb3ZlcnJpZGUgZmlu
YWw7CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2RvbS9NaWNyb1Rhc2suY3BwIGIvU291
cmNlL1dlYkNvcmUvZG9tL01pY3JvVGFzay5jcHAKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXgg
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uYzc4NmUzNWE2Zjk3ZmZh
NDdmOTYwMmI3M2JjMzI1NmE3NmJjNmUyYgotLS0gL2Rldi9udWxsCisrKyBiL1NvdXJjZS9XZWJD
b3JlL2RvbS9NaWNyb1Rhc2suY3BwCkBAIC0wLDAgKzEsNTIgQEAKKy8qCisgKiBDb3B5cmlnaHQg
KEMpIDIwMTQgWW9hdiBXZWlzcyAoeW9hdkB5b2F2LndzKQorICogQ29weXJpZ2h0IChDKSAyMDE1
IEFrYW1haSBUZWNobm9sb2dpZXMgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICoKKyAqIFRo
aXMgbGlicmFyeSBpcyBmcmVlIHNvZnR3YXJlOyB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQv
b3IKKyAqIG1vZGlmeSBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBMaWJyYXJ5IEdlbmVy
YWwgUHVibGljCisgKiBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieSB0aGUgRnJlZSBTb2Z0d2FyZSBG
b3VuZGF0aW9uOyBlaXRoZXIKKyAqIHZlcnNpb24gMiBvZiB0aGUgTGljZW5zZSwgb3IgKGF0IHlv
dXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KKyAqCisgKiBUaGlzIGxpYnJhcnkgaXMgZGlz
dHJpYnV0ZWQgaW4gdGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCwKKyAqIGJ1dCBXSVRI
T1VUIEFOWSBXQVJSQU5UWTsgd2l0aG91dCBldmVuIHRoZSBpbXBsaWVkIHdhcnJhbnR5IG9mCisg
KiBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBT
ZWUgdGhlIEdOVQorICogTGlicmFyeSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGZvciBtb3JlIGRl
dGFpbHMuCisgKgorICogWW91IHNob3VsZCBoYXZlIHJlY2VpdmVkIGEgY29weSBvZiB0aGUgR05V
IExpYnJhcnkgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQorICogYWxvbmcgd2l0aCB0aGlzIGxpYnJh
cnk7IHNlZSB0aGUgZmlsZSBDT1BZSU5HLkxJQi4gIElmIG5vdCwgd3JpdGUgdG8KKyAqIHRoZSBG
cmVlIFNvZnR3YXJlIEZvdW5kYXRpb24sIEluYy4sIDUxIEZyYW5rbGluIFN0cmVldCwgRmlmdGgg
Rmxvb3IsCisgKiBCb3N0b24sIE1BIDAyMTEwLTEzMDEsIFVTQS4KKyAqCisgKi8KKworI2luY2x1
ZGUgImNvbmZpZy5oIgorI2luY2x1ZGUgIk1pY3JvVGFzay5oIgorCisjaW5jbHVkZSAiRG9jdW1l
bnQuaCIKKyNpbmNsdWRlIDx3dGYvdGV4dC9TdHJpbmdCdWlsZGVyLmg+CisKK25hbWVzcGFjZSBX
ZWJDb3JlIHsKKworTWljcm9UYXNrUXVldWUmIE1pY3JvVGFza1F1ZXVlOjpzaW5nbGV0b24oKQor
eworICAgIEFTU0VSVChpc01haW5UaHJlYWQoKSk7CisgICAgc3RhdGljIE5ldmVyRGVzdHJveWVk
PE1pY3JvVGFza1F1ZXVlPiBxdWV1ZTsKKyAgICByZXR1cm4gcXVldWU7Cit9CisKK3ZvaWQgTWlj
cm9UYXNrUXVldWU6OnF1ZXVlTWljcm9UYXNrKHN0ZDo6dW5pcXVlX3B0cjxNaWNyb1Rhc2s+IHRh
c2spCit7CisgICAgQVNTRVJUKGlzTWFpblRocmVhZCgpKTsKKyAgICBtX21pY3JvVGFza1F1ZXVl
LmFwcGVuZChXVEY6Om1vdmUodGFzaykpOworfQorCit2b2lkIE1pY3JvVGFza1F1ZXVlOjpydW5N
aWNyb1Rhc2tzKCkKK3sKKyAgICBBU1NFUlQoaXNNYWluVGhyZWFkKCkpOworICAgIGZvciAoYXV0
byYgdGFzayA6IG1fbWljcm9UYXNrUXVldWUpCisgICAgICAgIHRhc2stPnJ1bigpOworICAgIG1f
bWljcm9UYXNrUXVldWUuY2xlYXIoKTsKK30KKworfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQorCmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9kb20vTWljcm9UYXNrLmggYi9Tb3VyY2UvV2ViQ29y
ZS9kb20vTWljcm9UYXNrLmgKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uNmVjNDBmMWQ3NDA3Y2JiMzY1YWIwYTA4OGI4
NTRkOGFmNDVlOTBhMgotLS0gL2Rldi9udWxsCisrKyBiL1NvdXJjZS9XZWJDb3JlL2RvbS9NaWNy
b1Rhc2suaApAQCAtMCwwICsxLDU2IEBACisvKgorICogQ29weXJpZ2h0IChDKSAyMDE0IFlvYXYg
V2Vpc3MgKHlvYXZAeW9hdi53cykKKyAqIENvcHlyaWdodCAoQykgMjAxNSBBa2FtYWkgVGVjaG5v
bG9naWVzIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAqCisgKiBUaGlzIGxpYnJhcnkgaXMg
ZnJlZSBzb2Z0d2FyZTsgeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29yCisgKiBtb2RpZnkg
aXQgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUgTGlicmFyeSBHZW5lcmFsIFB1YmxpYworICog
TGljZW5zZSBhcyBwdWJsaXNoZWQgYnkgdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbjsgZWl0
aGVyCisgKiB2ZXJzaW9uIDIgb2YgdGhlIExpY2Vuc2UsIG9yIChhdCB5b3VyIG9wdGlvbikgYW55
IGxhdGVyIHZlcnNpb24uCisgKgorICogVGhpcyBsaWJyYXJ5IGlzIGRpc3RyaWJ1dGVkIGluIHRo
ZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCisgKiBidXQgV0lUSE9VVCBBTlkgV0FSUkFO
VFk7IHdpdGhvdXQgZXZlbiB0aGUgaW1wbGllZCB3YXJyYW50eSBvZgorICogTUVSQ0hBTlRBQklM
SVRZIG9yIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFLiAgU2VlIHRoZSBHTlUKKyAq
IExpYnJhcnkgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBmb3IgbW9yZSBkZXRhaWxzLgorICoKKyAq
IFlvdSBzaG91bGQgaGF2ZSByZWNlaXZlZCBhIGNvcHkgb2YgdGhlIEdOVSBMaWJyYXJ5IEdlbmVy
YWwgUHVibGljIExpY2Vuc2UKKyAqIGFsb25nIHdpdGggdGhpcyBsaWJyYXJ5OyBzZWUgdGhlIGZp
bGUgQ09QWUlORy5MSUIuICBJZiBub3QsIHdyaXRlIHRvCisgKiB0aGUgRnJlZSBTb2Z0d2FyZSBG
b3VuZGF0aW9uLCBJbmMuLCA1MSBGcmFua2xpbiBTdHJlZXQsIEZpZnRoIEZsb29yLAorICogQm9z
dG9uLCBNQSAwMjExMC0xMzAxLCBVU0EuCisgKgorICovCisKKyNpZm5kZWYgTWljcm9UYXNrX2gK
KyNkZWZpbmUgTWljcm9UYXNrX2gKKworI2luY2x1ZGUgPHd0Zi9OZXZlckRlc3Ryb3llZC5oPgor
I2luY2x1ZGUgPHd0Zi9SZWZDb3VudGVkLmg+CisjaW5jbHVkZSA8d3RmL1ZlY3Rvci5oPgorCisK
K25hbWVzcGFjZSBXZWJDb3JlIHsKKworY2xhc3MgTWljcm9UYXNrIDogcHVibGljIFJlZkNvdW50
ZWQ8TWljcm9UYXNrPiB7CitwdWJsaWM6CisgICAgdmlydHVhbCB2b2lkIHJ1bigpID0gMDsKKyAg
ICB2aXJ0dWFsIH5NaWNyb1Rhc2soKSB7IH0KK307CisKK2NsYXNzIE1pY3JvVGFza1F1ZXVlIHsK
KyAgICBmcmllbmQgTmV2ZXJEZXN0cm95ZWQ8TWljcm9UYXNrUXVldWU+OworCitwdWJsaWM6Cisg
ICAgV0VCQ09SRV9FWFBPUlQgc3RhdGljIE1pY3JvVGFza1F1ZXVlJiBzaW5nbGV0b24oKTsKKyAg
ICB+TWljcm9UYXNrUXVldWUoKSB7IH0KKworICAgIFdFQkNPUkVfRVhQT1JUIHZvaWQgcXVldWVN
aWNyb1Rhc2soc3RkOjp1bmlxdWVfcHRyPE1pY3JvVGFzaz4pOworCisgICAgdm9pZCBydW5NaWNy
b1Rhc2tzKCk7CisKK3ByaXZhdGU6CisgICAgTWljcm9UYXNrUXVldWUoKSB7IH0KKyAgICBWZWN0
b3I8c3RkOjp1bmlxdWVfcHRyPE1pY3JvVGFzaz4+IG1fbWljcm9UYXNrUXVldWU7Cit9OworCit9
IC8vIG5hbWVzcGFjZSBXZWJDb3JlCisKKyNlbmRpZiAvLyBNaWNyb1Rhc2tfaApkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYkNvcmUvZG9tL1NjcmlwdFJ1bm5lci5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9k
b20vU2NyaXB0UnVubmVyLmNwcAppbmRleCBlZDk0ZGEzZTczZGIxMzAxNzhiOTllYTRiN2Y5MmI1
YWMxOTgwOWQ2Li5jNDZiNzhlMGZmZTNjODE4MzYwNDdlY2EzYTA3YWI5Y2VkMTNhZjA0IDEwMDY0
NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9kb20vU2NyaXB0UnVubmVyLmNwcAorKysgYi9Tb3VyY2Uv
V2ViQ29yZS9kb20vU2NyaXB0UnVubmVyLmNwcApAQCAtMjgsNiArMjgsNyBAQAogCiAjaW5jbHVk
ZSAiQ2FjaGVkU2NyaXB0LmgiCiAjaW5jbHVkZSAiRWxlbWVudC5oIgorI2luY2x1ZGUgIk1pY3Jv
VGFzay5oIgogI2luY2x1ZGUgIlBlbmRpbmdTY3JpcHQuaCIKICNpbmNsdWRlICJTY3JpcHRFbGVt
ZW50LmgiCiAKQEAgLTExNiw2ICsxMTcsNyBAQCB2b2lkIFNjcmlwdFJ1bm5lcjo6dGltZXJGaXJl
ZCgpCiAgICAgICAgIHRvU2NyaXB0RWxlbWVudElmUG9zc2libGUoZWxlbWVudC5nZXQoKSktPmV4
ZWN1dGUoY2FjaGVkU2NyaXB0KTsKICAgICAgICAgbV9kb2N1bWVudC5kZWNyZW1lbnRMb2FkRXZl
bnREZWxheUNvdW50KCk7CiAgICAgfQorICAgIE1pY3JvVGFza1F1ZXVlOjpzaW5nbGV0b24oKS5y
dW5NaWNyb1Rhc2tzKCk7CiB9CiAKIH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2h0bWwv
cGFyc2VyL0hUTUxTY3JpcHRSdW5uZXIuY3BwIGIvU291cmNlL1dlYkNvcmUvaHRtbC9wYXJzZXIv
SFRNTFNjcmlwdFJ1bm5lci5jcHAKaW5kZXggNDFlNzI1ZjYwZGU4NjgxZjFjZjhkYjRiNWM5OGFk
YjYyNjIyZjIxYi4uMjdkZDY3MzgyYTYwMGZjMDMzODUyZWM5MDI5MjAxNjkyZDE0M2RlZCAxMDA2
NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvaHRtbC9wYXJzZXIvSFRNTFNjcmlwdFJ1bm5lci5jcHAK
KysrIGIvU291cmNlL1dlYkNvcmUvaHRtbC9wYXJzZXIvSFRNTFNjcmlwdFJ1bm5lci5jcHAKQEAg
LTM2LDYgKzM2LDcgQEAKICNpbmNsdWRlICJIVE1MTmFtZXMuaCIKICNpbmNsdWRlICJIVE1MU2Ny
aXB0UnVubmVySG9zdC5oIgogI2luY2x1ZGUgIklnbm9yZURlc3RydWN0aXZlV3JpdGVDb3VudElu
Y3JlbWVudGVyLmgiCisjaW5jbHVkZSAiTWljcm9UYXNrLmgiCiAjaW5jbHVkZSAiTXV0YXRpb25P
YnNlcnZlci5oIgogI2luY2x1ZGUgIk5lc3RpbmdMZXZlbEluY3JlbWVudGVyLmgiCiAjaW5jbHVk
ZSAiTm90SW1wbGVtZW50ZWQuaCIKQEAgLTEyOSw4ICsxMzAsMTAgQEAgdm9pZCBIVE1MU2NyaXB0
UnVubmVyOjpleGVjdXRlUGVuZGluZ1NjcmlwdEFuZERpc3BhdGNoRXZlbnQoUGVuZGluZ1Njcmlw
dCYgcGVuZGkKICAgICBpZiAocGVuZGluZ1NjcmlwdC5jYWNoZWRTY3JpcHQoKSAmJiBwZW5kaW5n
U2NyaXB0LndhdGNoaW5nRm9yTG9hZCgpKQogICAgICAgICBzdG9wV2F0Y2hpbmdGb3JMb2FkKHBl
bmRpbmdTY3JpcHQpOwogCi0gICAgaWYgKCFpc0V4ZWN1dGluZ1NjcmlwdCgpKQorICAgIGlmICgh
aXNFeGVjdXRpbmdTY3JpcHQoKSkgewogICAgICAgICBNdXRhdGlvbk9ic2VydmVyOjpkZWxpdmVy
QWxsTXV0YXRpb25zKCk7CisgICAgICAgIE1pY3JvVGFza1F1ZXVlOjpzaW5nbGV0b24oKS5ydW5N
aWNyb1Rhc2tzKCk7CisgICAgfQogCiAgICAgLy8gQ2xlYXIgdGhlIHBlbmRpbmcgc2NyaXB0IGJl
Zm9yZSBwb3NzaWJsZSByZW50cmFuY3kgZnJvbSBleGVjdXRlU2NyaXB0KCkKICAgICBSZWZQdHI8
RWxlbWVudD4gZWxlbWVudCA9IHBlbmRpbmdTY3JpcHQucmVsZWFzZUVsZW1lbnRBbmRDbGVhcigp
OwpAQCAtMjMxLDYgKzIzNCw4IEBAIGJvb2wgSFRNTFNjcmlwdFJ1bm5lcjo6ZXhlY3V0ZVNjcmlw
dHNXYWl0aW5nRm9yUGFyc2luZygpCiAgICAgICAgIGlmICghbV9kb2N1bWVudCkKICAgICAgICAg
ICAgIHJldHVybiBmYWxzZTsKICAgICB9CisgICAgaWYgKCFpc0V4ZWN1dGluZ1NjcmlwdCgpKQor
ICAgICAgICBNaWNyb1Rhc2tRdWV1ZTo6c2luZ2xldG9uKCkucnVuTWljcm9UYXNrcygpOwogICAg
IHJldHVybiB0cnVlOwogfQogCkBAIC0yOTMsOCArMjk4LDEwIEBAIHZvaWQgSFRNTFNjcmlwdFJ1
bm5lcjo6cnVuU2NyaXB0KEVsZW1lbnQqIHNjcmlwdCwgY29uc3QgVGV4dFBvc2l0aW9uJiBzY3Jp
cHRTdGFyCiAgICAgICAgIC8vIGV2ZXJ5IHNjcmlwdCBlbGVtZW50LCBldmVuIGlmIGl0J3Mgbm90
IHJlYWR5IHRvIGV4ZWN1dGUgeWV0LiBUaGVyZSdzCiAgICAgICAgIC8vIHVuZm9ydHVhbnRlbHkg
bm8gb2J2aW91cyB3YXkgdG8gdGVsbCBpZiBwcmVwYXJlU2NyaXB0IGlzIGdvaW5nIHRvCiAgICAg
ICAgIC8vIGV4ZWN1dGUgdGhlIHNjcmlwdCBmcm9tIG91dCBoZXJlLgotICAgICAgICBpZiAoIWlz
RXhlY3V0aW5nU2NyaXB0KCkpCisgICAgICAgIGlmICghaXNFeGVjdXRpbmdTY3JpcHQoKSkgewog
ICAgICAgICAgICAgTXV0YXRpb25PYnNlcnZlcjo6ZGVsaXZlckFsbE11dGF0aW9ucygpOworICAg
ICAgICAgICAgTWljcm9UYXNrUXVldWU6OnNpbmdsZXRvbigpLnJ1bk1pY3JvVGFza3MoKTsKKyAg
ICAgICAgfQogCiAgICAgICAgIEluc2VydGlvblBvaW50UmVjb3JkIGluc2VydGlvblBvaW50UmVj
b3JkKG1faG9zdC5pbnB1dFN0cmVhbSgpKTsKICAgICAgICAgTmVzdGluZ0xldmVsSW5jcmVtZW50
ZXIgbmVzdGluZ0xldmVsSW5jcmVtZW50ZXIobV9zY3JpcHROZXN0aW5nTGV2ZWwpOwpkaWZmIC0t
Z2l0IGEvU291cmNlL1dlYkNvcmUvdGVzdGluZy9JbnRlcm5hbHMuY3BwIGIvU291cmNlL1dlYkNv
cmUvdGVzdGluZy9JbnRlcm5hbHMuY3BwCmluZGV4IDEwYmEzY2RhNjYyZTMwZTdlMWQxNzVkZGI5
Yjk3Yzg0Yjk5YzI5YmUuLmFjZTk3MTAyYTU1N2QwY2UzOTM5ODEzZTgwMjY1MDMzN2YwZjVmNjEg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3Rlc3RpbmcvSW50ZXJuYWxzLmNwcAorKysgYi9T
b3VyY2UvV2ViQ29yZS90ZXN0aW5nL0ludGVybmFscy5jcHAKQEAgLTc4LDYgKzc4LDggQEAKICNp
bmNsdWRlICJNZWRpYVNlc3Npb25NYW5hZ2VyLmgiCiAjaW5jbHVkZSAiTWVtb3J5Q2FjaGUuaCIK
ICNpbmNsdWRlICJNZW1vcnlJbmZvLmgiCisjaW5jbHVkZSAiTWljcm9UYXNrLmgiCisjaW5jbHVk
ZSAiTWljcm9UYXNrVGVzdC5oIgogI2luY2x1ZGUgIk1vY2tQYWdlT3ZlcmxheUNsaWVudC5oIgog
I2luY2x1ZGUgIlBhZ2UuaCIKICNpbmNsdWRlICJQYWdlT3ZlcmxheS5oIgpAQCAtMjUwMyw0ICsy
NTA1LDkgQEAgYm9vbCBJbnRlcm5hbHM6OmlzUGFnZVBsYXlpbmdBdWRpbygpCiAgICAgcmV0dXJu
IGRvY3VtZW50LT5wYWdlKCktPmlzUGxheWluZ0F1ZGlvKCk7CiB9CiAKK3ZvaWQgSW50ZXJuYWxz
OjpxdWV1ZU1pY3JvVGFzayhpbnQgdGVzdE51bWJlcikKK3sKKyAgICBNaWNyb1Rhc2tRdWV1ZTo6
c2luZ2xldG9uKCkucXVldWVNaWNyb1Rhc2soTWljcm9UYXNrVGVzdDo6Y3JlYXRlKGNvbnRleHRE
b2N1bWVudCgpLCB0ZXN0TnVtYmVyKSk7Cit9CisKIH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJD
b3JlL3Rlc3RpbmcvSW50ZXJuYWxzLmggYi9Tb3VyY2UvV2ViQ29yZS90ZXN0aW5nL0ludGVybmFs
cy5oCmluZGV4IDA5YTQ0OWQ3MmIyNWZmZDM1Y2UwMDFkZjk0NWVlZDBlOWMyZjIyZmIuLjg4NGM3
MzYxZGZhNTUxNjZiMDQ4NTFlZjA5NTY1ZDUxMTEwNWQ0YTIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJDb3JlL3Rlc3RpbmcvSW50ZXJuYWxzLmgKKysrIGIvU291cmNlL1dlYkNvcmUvdGVzdGluZy9J
bnRlcm5hbHMuaApAQCAtMzYxLDYgKzM2MSw4IEBAIHB1YmxpYzoKICAgICB2b2lkIHNldFBhZ2VN
dXRlZChib29sKTsKICAgICBib29sIGlzUGFnZVBsYXlpbmdBdWRpbygpOwogCisgICAgdm9pZCBx
dWV1ZU1pY3JvVGFzayhpbnQpOworCiBwcml2YXRlOgogICAgIGV4cGxpY2l0IEludGVybmFscyhE
b2N1bWVudCopOwogICAgIERvY3VtZW50KiBjb250ZXh0RG9jdW1lbnQoKSBjb25zdDsKZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJDb3JlL3Rlc3RpbmcvSW50ZXJuYWxzLmlkbCBiL1NvdXJjZS9XZWJD
b3JlL3Rlc3RpbmcvSW50ZXJuYWxzLmlkbAppbmRleCBkYzJhZDU5ZWM3ZTcxNzE1MjhjMDg1NzQw
YzY3ZGNiNjY1NTRkMjdjLi4yYjYzYjRmZmI2ZjlhZThmMGRkMTgyMGUzOTNjMWFmNzE4NWIyNDIx
IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS90ZXN0aW5nL0ludGVybmFscy5pZGwKKysrIGIv
U291cmNlL1dlYkNvcmUvdGVzdGluZy9JbnRlcm5hbHMuaWRsCkBAIC0zMTcsNCArMzE3LDUgQEAg
ZW51bSBQYWdlT3ZlcmxheVR5cGUgewogCiAgICAgdm9pZCBzZXRQYWdlTXV0ZWQoYm9vbGVhbiBt
dXRlZCk7CiAgICAgYm9vbGVhbiBpc1BhZ2VQbGF5aW5nQXVkaW8oKTsKKyAgICB2b2lkIHF1ZXVl
TWljcm9UYXNrKGxvbmcgdGVzdE51bWJlcik7CiB9OwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNv
cmUvdGVzdGluZy9NaWNyb1Rhc2tUZXN0LmNwcCBiL1NvdXJjZS9XZWJDb3JlL3Rlc3RpbmcvTWlj
cm9UYXNrVGVzdC5jcHAKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uZmE4MTk5YWIxYmZiNDkyNGI4MjMxMzJiY2ZmNjE0
YzFlYjZiOTdhMQotLS0gL2Rldi9udWxsCisrKyBiL1NvdXJjZS9XZWJDb3JlL3Rlc3RpbmcvTWlj
cm9UYXNrVGVzdC5jcHAKQEAgLTAsMCArMSw0MyBAQAorLyoKKyAqIENvcHlyaWdodCAoQykgMjAx
NSBBa2FtYWkgVGVjaG5vbG9naWVzIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAqCisgKiBU
aGlzIGxpYnJhcnkgaXMgZnJlZSBzb2Z0d2FyZTsgeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5k
L29yCisgKiBtb2RpZnkgaXQgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUgTGlicmFyeSBHZW5l
cmFsIFB1YmxpYworICogTGljZW5zZSBhcyBwdWJsaXNoZWQgYnkgdGhlIEZyZWUgU29mdHdhcmUg
Rm91bmRhdGlvbjsgZWl0aGVyCisgKiB2ZXJzaW9uIDIgb2YgdGhlIExpY2Vuc2UsIG9yIChhdCB5
b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uCisgKgorICogVGhpcyBsaWJyYXJ5IGlzIGRp
c3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCisgKiBidXQgV0lU
SE9VVCBBTlkgV0FSUkFOVFk7IHdpdGhvdXQgZXZlbiB0aGUgaW1wbGllZCB3YXJyYW50eSBvZgor
ICogTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFLiAg
U2VlIHRoZSBHTlUKKyAqIExpYnJhcnkgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBmb3IgbW9yZSBk
ZXRhaWxzLgorICoKKyAqIFlvdSBzaG91bGQgaGF2ZSByZWNlaXZlZCBhIGNvcHkgb2YgdGhlIEdO
VSBMaWJyYXJ5IEdlbmVyYWwgUHVibGljIExpY2Vuc2UKKyAqIGFsb25nIHdpdGggdGhpcyBsaWJy
YXJ5OyBzZWUgdGhlIGZpbGUgQ09QWUlORy5MSUIuICBJZiBub3QsIHdyaXRlIHRvCisgKiB0aGUg
RnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uLCBJbmMuLCA1MSBGcmFua2xpbiBTdHJlZXQsIEZpZnRo
IEZsb29yLAorICogQm9zdG9uLCBNQSAwMjExMC0xMzAxLCBVU0EuCisgKgorICovCisKKyNpbmNs
dWRlICJjb25maWcuaCIKKyNpbmNsdWRlICJNaWNyb1Rhc2tUZXN0LmgiCisKKyNpbmNsdWRlICJE
b2N1bWVudC5oIgorCituYW1lc3BhY2UgV2ViQ29yZSB7CisKK3ZvaWQgTWljcm9UYXNrVGVzdDo6
cnVuKCkKK3sKKyAgICBTdHJpbmdCdWlsZGVyIG1lc3NhZ2U7CisgICAgbWVzc2FnZS5hcHBlbmQo
Ik1pY3JvVGFzayAjIik7CisgICAgbWVzc2FnZS5hcHBlbmQoU3RyaW5nOjpudW1iZXIobV90ZXN0
TnVtYmVyKSk7CisgICAgbWVzc2FnZS5hcHBlbmQoIiBoYXMgcnVuLiIpOworICAgIGlmIChtX2Rv
Y3VtZW50KQorICAgICAgICBtX2RvY3VtZW50LT5hZGRDb25zb2xlTWVzc2FnZShNZXNzYWdlU291
cmNlOjpKUywgTWVzc2FnZUxldmVsOjpEZWJ1ZywgbWVzc2FnZS50b1N0cmluZygpKTsKK30KKwor
c3RkOjp1bmlxdWVfcHRyPE1pY3JvVGFza1Rlc3Q+IE1pY3JvVGFza1Rlc3Q6OmNyZWF0ZShQYXNz
UmVmUHRyPERvY3VtZW50PiBkb2N1bWVudCwgaW50IHRlc3ROdW1iZXIpCit7CisgICAgcmV0dXJu
IHN0ZDo6dW5pcXVlX3B0cjxNaWNyb1Rhc2tUZXN0PihuZXcgTWljcm9UYXNrVGVzdChkb2N1bWVu
dCwgdGVzdE51bWJlcikpOworfQorCit9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViQ29yZS90ZXN0aW5nL01pY3JvVGFza1Rlc3QuaCBiL1NvdXJjZS9XZWJDb3Jl
L3Rlc3RpbmcvTWljcm9UYXNrVGVzdC5oCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjY1YzFlZWU1N2ZmNWI3ZDcwNmNk
NWZkNDNlNWRjMmM0MGUxNzUwYTcKLS0tIC9kZXYvbnVsbAorKysgYi9Tb3VyY2UvV2ViQ29yZS90
ZXN0aW5nL01pY3JvVGFza1Rlc3QuaApAQCAtMCwwICsxLDQ5IEBACisvKgorICogQ29weXJpZ2h0
IChDKSAyMDE1IEFrYW1haSBUZWNobm9sb2dpZXMgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgor
ICoKKyAqIFRoaXMgbGlicmFyeSBpcyBmcmVlIHNvZnR3YXJlOyB5b3UgY2FuIHJlZGlzdHJpYnV0
ZSBpdCBhbmQvb3IKKyAqIG1vZGlmeSBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBMaWJy
YXJ5IEdlbmVyYWwgUHVibGljCisgKiBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieSB0aGUgRnJlZSBT
b2Z0d2FyZSBGb3VuZGF0aW9uOyBlaXRoZXIKKyAqIHZlcnNpb24gMiBvZiB0aGUgTGljZW5zZSwg
b3IgKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KKyAqCisgKiBUaGlzIGxpYnJh
cnkgaXMgZGlzdHJpYnV0ZWQgaW4gdGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCwKKyAq
IGJ1dCBXSVRIT1VUIEFOWSBXQVJSQU5UWTsgd2l0aG91dCBldmVuIHRoZSBpbXBsaWVkIHdhcnJh
bnR5IG9mCisgKiBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBV
UlBPU0UuICBTZWUgdGhlIEdOVQorICogTGlicmFyeSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGZv
ciBtb3JlIGRldGFpbHMuCisgKgorICogWW91IHNob3VsZCBoYXZlIHJlY2VpdmVkIGEgY29weSBv
ZiB0aGUgR05VIExpYnJhcnkgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQorICogYWxvbmcgd2l0aCB0
aGlzIGxpYnJhcnk7IHNlZSB0aGUgZmlsZSBDT1BZSU5HLkxJQi4gIElmIG5vdCwgd3JpdGUgdG8K
KyAqIHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb24sIEluYy4sIDUxIEZyYW5rbGluIFN0cmVl
dCwgRmlmdGggRmxvb3IsCisgKiBCb3N0b24sIE1BIDAyMTEwLTEzMDEsIFVTQS4KKyAqCisgKi8K
KworI2lmbmRlZiBNaWNyb1Rhc2tUZXN0X2gKKyNkZWZpbmUgTWljcm9UYXNrVGVzdF9oCisKKyNp
bmNsdWRlICJNaWNyb1Rhc2suaCIKKyNpbmNsdWRlIDx3dGYvUmVmQ291bnRlZC5oPgorCituYW1l
c3BhY2UgV2ViQ29yZSB7CisKK2NsYXNzIERvY3VtZW50OworCitjbGFzcyBNaWNyb1Rhc2tUZXN0
OiBwdWJsaWMgTWljcm9UYXNrIHsKK3B1YmxpYzoKKyAgICB2aXJ0dWFsIHZvaWQgcnVuKCkgb3Zl
cnJpZGU7CisgICAgV0VCQ09SRV9FWFBPUlQgc3RhdGljIHN0ZDo6dW5pcXVlX3B0cjxNaWNyb1Rh
c2tUZXN0PiBjcmVhdGUoUGFzc1JlZlB0cjxEb2N1bWVudD4sIGludCB0ZXN0TnVtYmVyKTsKKwor
cHJpdmF0ZToKKyAgICBNaWNyb1Rhc2tUZXN0KFBhc3NSZWZQdHI8RG9jdW1lbnQ+IGRvY3VtZW50
LCBpbnQgdGVzdE51bWJlcikKKyAgICAgICAgOiBtX2RvY3VtZW50KGRvY3VtZW50KQorICAgICAg
ICAsIG1fdGVzdE51bWJlcih0ZXN0TnVtYmVyKQorICAgIHsKKyAgICB9CisKKyAgICBSZWZQdHI8
RG9jdW1lbnQ+IG1fZG9jdW1lbnQ7CisgICAgaW50IG1fdGVzdE51bWJlcjsKK307CisKK30gLy8g
bmFtZXNwYWNlIFdlYkNvcmUKKworI2VuZGlmCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1dl
YktpdC52Y3hwcm9qL1dlYktpdEV4cG9ydEdlbmVyYXRvci9XZWJLaXRFeHBvcnRzLmRlZi5pbiBi
L1NvdXJjZS9XZWJLaXQvV2ViS2l0LnZjeHByb2ovV2ViS2l0RXhwb3J0R2VuZXJhdG9yL1dlYktp
dEV4cG9ydHMuZGVmLmluCmluZGV4IGQzMTI0YzA3YTM3NTU0YTExZGI2OTRjMTgyNGM0YjU0OThl
ZjMwYzcuLjQ2NzdkY2FjM2YxNjQ4ZDQ1M2RhOTlhMTQ4OTk1MmZjNTNhY2QyMmIgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9XZWJLaXQvV2ViS2l0LnZjeHByb2ovV2ViS2l0RXhwb3J0R2VuZXJhdG9yL1dl
YktpdEV4cG9ydHMuZGVmLmluCisrKyBiL1NvdXJjZS9XZWJLaXQvV2ViS2l0LnZjeHByb2ovV2Vi
S2l0RXhwb3J0R2VuZXJhdG9yL1dlYktpdEV4cG9ydHMuZGVmLmluCkBAIC00NzksNiArNDc5LDkg
QEAgRVhQT1JUUwogICAgICAgICBzeW1ib2xXaXRoUG9pbnRlcig/cmVzb3VyY2VGb3JVUkxATWVt
b3J5Q2FjaGVAV2ViQ29yZUBAUUFFUEFWQ2FjaGVkUmVzb3VyY2VAMkBBQlZVUkxAMkBWU2Vzc2lv
bklEQDJAQFosID9yZXNvdXJjZUZvclVSTEBNZW1vcnlDYWNoZUBXZWJDb3JlQEBRRUFBUEVBVkNh
Y2hlZFJlc291cmNlQDJAQUVCVlVSTEAyQFZTZXNzaW9uSURAMkBAWikKICAgICAgICAgc3ltYm9s
V2l0aFBvaW50ZXIoP3JlZkBDU1NDb21wdXRlZFN0eWxlRGVjbGFyYXRpb25AV2ViQ29yZUBAVUFF
WFhaLCA/cmVmQENTU0NvbXB1dGVkU3R5bGVEZWNsYXJhdGlvbkBXZWJDb3JlQEBVRUFBWFhaKQog
ICAgICAgICBzeW1ib2xXaXRoUG9pbnRlcig/ZGVyZWZAQ1NTQ29tcHV0ZWRTdHlsZURlY2xhcmF0
aW9uQFdlYkNvcmVAQFVBRVhYWiwgP2RlcmVmQENTU0NvbXB1dGVkU3R5bGVEZWNsYXJhdGlvbkBX
ZWJDb3JlQEBVRUFBWFhaKQorICAgICAgICBzeW1ib2xXaXRoUG9pbnRlcig/c2luZ2xldG9uQE1p
Y3JvVGFza1F1ZXVlQFdlYkNvcmVAQFNBQUFWMTJAWFosID9zaW5nbGV0b25ATWljcm9UYXNrUXVl
dWVAV2ViQ29yZUBAU0FBQVYxMkBYWikKKyAgICAgICAgc3ltYm9sV2l0aFBvaW50ZXIoP3F1ZXVl
TWljcm9UYXNrQE1pY3JvVGFza1F1ZXVlQFdlYkNvcmVAQFFBRVhWPyR1bmlxdWVfcHRyQFZNaWNy
b1Rhc2tAV2ViQ29yZUBAVT8kZGVmYXVsdF9kZWxldGVAVk1pY3JvVGFza0BXZWJDb3JlQEBAc3Rk
QEBAc3RkQEBAWiwgP3F1ZXVlTWljcm9UYXNrQE1pY3JvVGFza1F1ZXVlQFdlYkNvcmVAQFFBRVhW
PyR1bmlxdWVfcHRyQFZNaWNyb1Rhc2tAV2ViQ29yZUBAVT8kZGVmYXVsdF9kZWxldGVAVk1pY3Jv
VGFza0BXZWJDb3JlQEBAc3RkQEBAc3RkQEBAWikKKyAgICAgICAgc3ltYm9sV2l0aFBvaW50ZXIo
P2FkZENvbnNvbGVNZXNzYWdlQERvY3VtZW50QFdlYkNvcmVAQFVBRVhXNE1lc3NhZ2VTb3VyY2VA
SlNDQEBXNE1lc3NhZ2VMZXZlbEA0QEFCVlN0cmluZ0BXVEZAQEtAWiwgP2FkZENvbnNvbGVNZXNz
YWdlQERvY3VtZW50QFdlYkNvcmVAQFVBRVhXNE1lc3NhZ2VTb3VyY2VASlNDQEBXNE1lc3NhZ2VM
ZXZlbEA0QEFCVlN0cmluZ0BXVEZAQEtAWikKICNpZiAhQ1BVKFg4Nl82NCkKICAgICAgICAgP2lz
QVBJVmFsdWVXcmFwcGVyQEpTQ2VsbEBKU0NAQFFCRV9OWFoKICNlbmRpZgpkaWZmIC0tZ2l0IGEv
TGF5b3V0VGVzdHMvQ2hhbmdlTG9nIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCmluZGV4IGNmYTc0
MWZkNDMxMDg0N2QwZTAxMzMxNmYwYWE0ZDQwYTczNzkwYjIuLmUzMGVkMzI3NDg5MjIyMDAyZmMw
MzI1MDBhMDUwMTUzMmVmYzMwY2IgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL0NoYW5nZUxvZwor
KysgYi9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKQEAgLTEsMyArMSwxNyBAQAorMjAxNS0wMi0xOSAg
WW9hdiBXZWlzcyAgPHlvYXZAeW9hdi53cz4KKworICAgICAgICBBZGQgYSBtaWNyb3Rhc2sgYWJz
dHJhY3Rpb24KKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lk
PTEzNzQ5NgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAg
IEFkZGluZyBhIHRlc3QgZm9yIG1pY3JvdGFzayBhYnN0cmFjdGlvbi4KKworICAgICAgICAqIGZh
c3QvZG9tL21pY3JvdGFzay1pbm9yZGVyLmh0bWw6IEFkZGVkLgorICAgICAgICAqIGZhc3QvZG9t
L21pY3JvdGFzay1pbm9yZGVyLWV4cGVjdGVkLnR4dDogQWRkZWQuCisgICAgICAgICogZmFzdC9k
b20vbWljcm90YXNrLXJldmVyc2UuaHRtbDogQWRkZWQuCisgICAgICAgICogZmFzdC9kb20vbWlj
cm90YXNrLXJldmVyc2UtZXhwZWN0ZWQudHh0OiBBZGRlZC4KKwogMjAxNS0wMi0xNiAgU2VyZ2lv
IFZpbGxhciBTZW5pbiAgPHN2aWxsYXJAaWdhbGlhLmNvbT4KIAogICAgICAgICBVbnJldmlld2Vk
LiBVcGxvYWRpbmcgYSBuZXcgdGVzdCB0aGF0IHNob3VsZCBoYXZlIGJlZW4gdXBsb2FkZWQgYXMK
ZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3QvZG9tL21pY3JvdGFzay1pbm9yZGVyLWV4cGVj
dGVkLnR4dCBiL0xheW91dFRlc3RzL2Zhc3QvZG9tL21pY3JvdGFzay1pbm9yZGVyLWV4cGVjdGVk
LnR4dApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwLi4wMzgwYjk0YzdjODE4M2E2OTZlMWFiMjI2OTllYWNhZmNkM2RkMzcz
Ci0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC9kb20vbWljcm90YXNrLWlub3Jk
ZXItZXhwZWN0ZWQudHh0CkBAIC0wLDAgKzEsMTUgQEAKK0NPTlNPTEUgTUVTU0FHRTogbGluZSAy
MzogRmluaXNoZWQgcXVldWVpbmcgdGVzdHMuCitDT05TT0xFIE1FU1NBR0U6IE1pY3JvVGFzayAj
MiBoYXMgcnVuLgorQ09OU09MRSBNRVNTQUdFOiBNaWNyb1Rhc2sgIzEgaGFzIHJ1bi4KK0NPTlNP
TEUgTUVTU0FHRTogTWljcm9UYXNrICMwIGhhcyBydW4uCisgCisKKy0tLS0tLS0tCitGcmFtZTog
J2ZyYW1lMScKKy0tLS0tLS0tCisKKworLS0tLS0tLS0KK0ZyYW1lOiAnZnJhbWUyJworLS0tLS0t
LS0KKwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9kb20vbWljcm90YXNrLWlub3JkZXIu
aHRtbCBiL0xheW91dFRlc3RzL2Zhc3QvZG9tL21pY3JvdGFzay1pbm9yZGVyLmh0bWwKbmV3IGZp
bGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMC4uNzljOGUyZjc4OTgzYTNlNjg1ZWFjMTU1MDk1NjEwMTFlODYxZjlhOQotLS0gL2Rldi9u
dWxsCisrKyBiL0xheW91dFRlc3RzL2Zhc3QvZG9tL21pY3JvdGFzay1pbm9yZGVyLmh0bWwKQEAg
LTAsMCArMSwyOCBAQAorPCFET0NUWVBFIGh0bWw+Cis8c2NyaXB0PgoraWYgKHdpbmRvdy50ZXN0
UnVubmVyKSB7CisgICAgdGVzdFJ1bm5lci5kdW1wQXNUZXh0KCk7CisgICAgdGVzdFJ1bm5lci5k
dW1wQ2hpbGRGcmFtZXNBc1RleHQoKTsKKyAgICB0ZXN0UnVubmVyLndhaXRVbnRpbERvbmUoKTsK
K30KKzwvc2NyaXB0PgorPGlmcmFtZSBpZD0iZnJhbWUxIj48L2lmcmFtZT4KKzxpZnJhbWUgaWQ9
ImZyYW1lMiI+PC9pZnJhbWU+Cis8c2NyaXB0PgorCit2YXIgaWZyYW1lMSA9IGRvY3VtZW50LnF1
ZXJ5U2VsZWN0b3IoIiNmcmFtZTEiKS5jb250ZW50V2luZG93OwordmFyIGlmcmFtZTIgPSBkb2N1
bWVudC5xdWVyeVNlbGVjdG9yKCIjZnJhbWUyIikuY29udGVudFdpbmRvdzsKKworaWYoaWZyYW1l
Mi5pbnRlcm5hbHMpCisgICAgaWZyYW1lMi5pbnRlcm5hbHMucXVldWVNaWNyb1Rhc2soMik7Citp
ZihpZnJhbWUxLmludGVybmFscykKKyAgICBpZnJhbWUxLmludGVybmFscy5xdWV1ZU1pY3JvVGFz
aygxKTsKK2lmKHdpbmRvdy5pbnRlcm5hbHMpCisgICAgaW50ZXJuYWxzLnF1ZXVlTWljcm9UYXNr
KDApOworCitjb25zb2xlLmxvZygiRmluaXNoZWQgcXVldWVpbmcgdGVzdHMuIik7CityZXF1ZXN0
QW5pbWF0aW9uRnJhbWUoZnVuY3Rpb24oKSB7CisgICAgaWYgKHdpbmRvdy50ZXN0UnVubmVyKQor
ICAgICAgICB0ZXN0UnVubmVyLm5vdGlmeURvbmUoKTsKK30pOworPC9zY3JpcHQ+CmRpZmYgLS1n
aXQgYS9MYXlvdXRUZXN0cy9mYXN0L2RvbS9taWNyb3Rhc2stcmV2ZXJzZS1leHBlY3RlZC50eHQg
Yi9MYXlvdXRUZXN0cy9mYXN0L2RvbS9taWNyb3Rhc2stcmV2ZXJzZS1leHBlY3RlZC50eHQKbmV3
IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMC4uMmVjODhiYjU0ZjBiYWZmZjJiNDk0ZTIyMzNhZmVlNDM1ODM2N2EzYQotLS0gL2Rl
di9udWxsCisrKyBiL0xheW91dFRlc3RzL2Zhc3QvZG9tL21pY3JvdGFzay1yZXZlcnNlLWV4cGVj
dGVkLnR4dApAQCAtMCwwICsxLDE1IEBACitDT05TT0xFIE1FU1NBR0U6IGxpbmUgMjM6IEZpbmlz
aGVkIHF1ZXVlaW5nIHRlc3RzLgorQ09OU09MRSBNRVNTQUdFOiBNaWNyb1Rhc2sgIzAgaGFzIHJ1
bi4KK0NPTlNPTEUgTUVTU0FHRTogTWljcm9UYXNrICMxIGhhcyBydW4uCitDT05TT0xFIE1FU1NB
R0U6IE1pY3JvVGFzayAjMiBoYXMgcnVuLgorIAorCistLS0tLS0tLQorRnJhbWU6ICdmcmFtZTEn
CistLS0tLS0tLQorCisKKy0tLS0tLS0tCitGcmFtZTogJ2ZyYW1lMicKKy0tLS0tLS0tCisKZGlm
ZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3QvZG9tL21pY3JvdGFzay1yZXZlcnNlLmh0bWwgYi9M
YXlvdXRUZXN0cy9mYXN0L2RvbS9taWNyb3Rhc2stcmV2ZXJzZS5odG1sCm5ldyBmaWxlIG1vZGUg
MTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmIx
YjRlNzc4NjIxN2JhZDM2Y2RmOTA0OWI5YzNlOGY0ZmEyNzJiZDAKLS0tIC9kZXYvbnVsbAorKysg
Yi9MYXlvdXRUZXN0cy9mYXN0L2RvbS9taWNyb3Rhc2stcmV2ZXJzZS5odG1sCkBAIC0wLDAgKzEs
MjggQEAKKzwhRE9DVFlQRSBodG1sPgorPHNjcmlwdD4KK2lmICh3aW5kb3cudGVzdFJ1bm5lcikg
eworICAgIHRlc3RSdW5uZXIuZHVtcEFzVGV4dCgpOworICAgIHRlc3RSdW5uZXIuZHVtcENoaWxk
RnJhbWVzQXNUZXh0KCk7CisgICAgdGVzdFJ1bm5lci53YWl0VW50aWxEb25lKCk7Cit9Cis8L3Nj
cmlwdD4KKzxpZnJhbWUgaWQ9ImZyYW1lMSI+PC9pZnJhbWU+Cis8aWZyYW1lIGlkPSJmcmFtZTIi
PjwvaWZyYW1lPgorPHNjcmlwdD4KKwordmFyIGlmcmFtZTEgPSBkb2N1bWVudC5xdWVyeVNlbGVj
dG9yKCIjZnJhbWUxIikuY29udGVudFdpbmRvdzsKK3ZhciBpZnJhbWUyID0gZG9jdW1lbnQucXVl
cnlTZWxlY3RvcigiI2ZyYW1lMiIpLmNvbnRlbnRXaW5kb3c7CisKK2lmKHdpbmRvdy5pbnRlcm5h
bHMpCisgICAgaW50ZXJuYWxzLnF1ZXVlTWljcm9UYXNrKDApOworaWYoaWZyYW1lMS5pbnRlcm5h
bHMpCisgICAgaWZyYW1lMS5pbnRlcm5hbHMucXVldWVNaWNyb1Rhc2soMSk7CitpZihpZnJhbWUy
LmludGVybmFscykKKyAgICBpZnJhbWUyLmludGVybmFscy5xdWV1ZU1pY3JvVGFzaygyKTsKKwor
Y29uc29sZS5sb2coIkZpbmlzaGVkIHF1ZXVlaW5nIHRlc3RzLiIpOworcmVxdWVzdEFuaW1hdGlv
bkZyYW1lKGZ1bmN0aW9uKCkgeworICAgIGlmICh3aW5kb3cudGVzdFJ1bm5lcikKKyAgICAgICAg
dGVzdFJ1bm5lci5ub3RpZnlEb25lKCk7Cit9KTsKKzwvc2NyaXB0Pgo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>247667</attachid>
            <date>2015-03-02 07:54:34 -0800</date>
            <delta_ts>2015-03-02 08:12:15 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-137496-20150302075418.patch</filename>
            <type>text/plain</type>
            <size>43398</size>
            <attacher name="Yoav Weiss">yoav</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTgwMTQ1CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggZjQ5YjY5ZGExMjViY2Fk
ZWZmYmE2NzU3NTE2ZTUxM2M0OWNmNmE5MS4uMWZkODE3NWQxMjc5Yzg3NzkyZGFiMGRhYTE3OTAx
NTc2MDEzNjMwNSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDQ2IEBACisyMDE1LTAyLTE5ICBZb2F2
IFdlaXNzICA8eW9hdkB5b2F2LndzPgorCisgICAgICAgIEFkZCBhIG1pY3JvdGFzayBhYnN0cmFj
dGlvbgorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTM3
NDk2CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgU2FtIFdlaW5pZy4KKworICAgICAgICBUaGlzIHBh
dGNoIGFkZHMgYSBtaWNyb3Rhc2sgYWJzdHJhY3Rpb246IGh0dHBzOi8vaHRtbC5zcGVjLndoYXR3
Zy5vcmcvbXVsdGlwYWdlL3dlYmFwcGFwaXMuaHRtbCNtaWNyb3Rhc2sKKyAgICAgICAgVGhhdCBh
YnN0cmFjdGlvbiBpcyByZXF1aXJlZCBpbiBvcmRlciB0byBlbmFibGUgYXN5bmMgbG9hZGluZyBv
ZiBpbWFnZXMsCisgICAgICAgIHdoaWNoIGlzIGluIHR1cm4gcmVxdWlyZWQgdG8gZW5hYmxlIHN1
cHBvcnQgZm9yIHRoZSBwaWN0dXJlIGVsZW1lbnQsIGFzIHdlbGwgYXMKKyAgICAgICAgdG8gbWFr
ZSBzdXJlIHRoYXQgdGhlIG9yZGVyIG9mIHByb3BlcnRpZXMgc2V0IG9uIEhUTUxJbWFnZUVsZW1l
bnQgaGFzIG5vIGltcGxpY2F0aW9ucy4KKworICAgICAgICAqIFdlYkNvcmUudmN4cHJvai9XZWJD
b3JlLnZjeHByb2o6IEFkZCBNaWNyb1Rhc2sue2gsY3BwfSB0byB0aGUgcHJvamVjdC4KKyAgICAg
ICAgKiBXZWJDb3JlLnZjeHByb2ovV2ViQ29yZVRlc3RTdXBwb3J0LnZjeHByb2o6IEFkZCBNaWNy
b1Rhc2tUZXN0LntoLGNwcH0gdG8gdGhlIHByb2plY3QuCisgICAgICAgICogV2ViQ29yZS52Y3hw
cm9qL1dlYkNvcmUudmN4cHJvai5maWx0ZXJzOiBBZGQgTWljcm9UYXNrLntoLGNwcH0gdG8gdGhl
IHByb2plY3QuCisgICAgICAgICogV2ViQ29yZS52Y3hwcm9qL1dlYkNvcmVUZXN0U3VwcG9ydC52
Y3hwcm9qLmZpbHRlcnM6IEFkZCBNaWNyb1Rhc2tUZXN0LntoLGNwcH0gdG8gdGhlIHByb2plY3Qu
CisgICAgICAgICogV2ViQ29yZS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qOiBBZGQgTWljcm9U
YXNreyxUZXN0fS57aCxjcHB9IHRvIHRoZSBwcm9qZWN0LgorICAgICAgICAqIGRvbS9Eb2N1bWVu
dC5oOiBBZGQgV0VCQ09SRV9FWFBPUlQgdG8gYWRkQ29uc29sZU1lc3NhZ2UsIHNvIGl0IGNhbiBi
ZSB1c2VkIGluIE1pY3JvVGFza1Rlc3QgdGhhdCdzIGluIFdlYkNvcmVUZXN0U3VwcG9ydC4uCisg
ICAgICAgICogZG9tL01pY3JvVGFzay5oOiBBZGQgYSBNaWNyb1Rhc2sgaW50ZXJmYWNlIGNsYXNz
LiBBZGQgYSBNaWNyb1Rhc2tRdWV1ZSBzaW5nbGV0b24uCisgICAgICAgIChXZWJDb3JlOjpNaWNy
b1Rhc2s6On5NaWNyb1Rhc2spOgorICAgICAgICAoV2ViQ29yZTo6TWljcm9UYXNrOjpydW4pOiBS
dW4gdGhlIG1pY3JvdGFzay4KKyAgICAgICAgKiBkb20vTWljcm9UYXNrLmNwcDogSW1wbGVtZW50
IHRoZSBNaWNyb1Rhc2tRdWV1ZSBzaW5nbGV0b24uCisgICAgICAgIChXZWJDb3JlOjpNaWNyb1Rh
c2tRdWV1ZTo6c2luZ2xldG9uKTogR2V0IGEgc2luZ2xldG9uIGluc3RhbmNlIG9mIE1pY3JvVGFz
a1F1ZXVlLgorICAgICAgICAoV2ViQ29yZTo6TWljcm9UYXNrUXVldWU6OnF1ZXVlTWljcm9UYXNr
KTogQWRkIGEgbWljcm90YXNrIHRvIHRoZSBxdWV1ZS4KKyAgICAgICAgKFdlYkNvcmU6Ok1pY3Jv
VGFza1F1ZXVlOjpydW5NaWNyb1Rhc2tzKTogUnVuIGFsbCB0aGUgbWljcm90YXNrcyBpbiB0aGUg
cXVldWUgYW5kIGNsZWFyIGl0LgorICAgICAgICAqIGRvbS9TY3JpcHRSdW5uZXIuY3BwOiBUcmln
Z2VyIHJ1bm5pbmcgb2YgYWxsIG1pY3JvdGFza3MgaW4gcXVldWUuCisgICAgICAgIChXZWJDb3Jl
OjpTY3JpcHRSdW5uZXI6OnRpbWVyRmlyZWQpOgorICAgICAgICAqIGh0bWwvcGFyc2VyL0hUTUxT
Y3JpcHRSdW5uZXIuY3BwOiBUcmlnZ2VyIHJ1bm5pbmcgb2YgYWxsIG1pY3JvdGFza3MgaW4gcXVl
dWUuCisgICAgICAgIChXZWJDb3JlOjpIVE1MU2NyaXB0UnVubmVyOjpleGVjdXRlUGVuZGluZ1Nj
cmlwdEFuZERpc3BhdGNoRXZlbnQpOgorICAgICAgICAoV2ViQ29yZTo6SFRNTFNjcmlwdFJ1bm5l
cjo6ZXhlY3V0ZVNjcmlwdHNXYWl0aW5nRm9yUGFyc2luZyk6CisgICAgICAgIChXZWJDb3JlOjpI
VE1MU2NyaXB0UnVubmVyOjpydW5TY3JpcHQpOgorICAgICAgICAqIHRlc3RpbmcvSW50ZXJuYWxz
LmNwcDogQWRkIGEgbWV0aG9kIHRvIHF1ZXVlIGEgdGVzdCBtaWNyb3Rhc2suCisgICAgICAgIChX
ZWJDb3JlOjpJbnRlcm5hbHM6OnF1ZXVlTWljcm9UYXNrKToKKyAgICAgICAgKiB0ZXN0aW5nL0lu
dGVybmFscy5oOiBBZGQgYSBtZXRob2QgdG8gcXVldWUgYSB0ZXN0IG1pY3JvdGFzay4KKyAgICAg
ICAgKFdlYkNvcmU6OkludGVybmFsczo6cXVldWVNaWNyb1Rhc2spOgorICAgICAgICAqIHRlc3Rp
bmcvSW50ZXJuYWxzLmlkbDogRXhwb3NlIHRlc3QgbWljcm90YXNrIHF1ZXVlaW5nIHRvIHRlc3Qg
SlMuCisgICAgICAgICogdGVzdGluZy9NaWNyb1Rhc2tUZXN0LmNwcDogQWRkIGEgdGVzdCBjbGFz
cyB0aGF0IGltcGxlbWVudHMgYSBtaWNyb3Rhc2sgYW5kIHByaW50cyB0byB0aGUgY29uc29sZSB3
aGVuIGl0IHJ1bnMuCisgICAgICAgIChXZWJDb3JlOjpNaWNyb1Rhc2tUZXN0OjpydW4pOiBSdW4g
dGhlIG1pY3JvdGFzaworICAgICAgICAoV2ViQ29yZTo6TWljcm9UYXNrVGVzdDo6Y3JlYXRlKTog
Q3JlYXRlIGEgdGVzdCBtaWNyb3Rhc2suCisgICAgICAgICogdGVzdGluZy9NaWNyb1Rhc2tUZXN0
Lmg6IEFkZCBhIHRlc3QgY2xhc3MgdGhhdCBpbXBsZW1lbnRzIGEgbWljcm90YXNrLgorICAgICAg
ICAoV2ViQ29yZTo6TWljcm9UYXNrVGVzdDo6cnVuKToKKyAgICAgICAgKFdlYkNvcmU6Ok1pY3Jv
VGFza1Rlc3Q6OmNyZWF0ZSk6CisKIDIwMTUtMDItMTMgIFNlcmdpbyBWaWxsYXIgU2VuaW4gIDxz
dmlsbGFyQGlnYWxpYS5jb20+CiAKICAgICAgICAgW0NTUyBHcmlkIExheW91dF0gSW52YWxpZCBp
bml0aWFsaXphdGlvbiBvZiB0cmFjayBzaXplcyB3aXRoIG5vbiBzcGFubmluZyBncmlkIGl0ZW1z
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9DTWFrZUxpc3RzLnR4dCBiL1NvdXJjZS9XZWJD
b3JlL0NNYWtlTGlzdHMudHh0CmluZGV4IDY0NjZiYTUxMmZlZWMxMzVlZTcwYzM3M2EyZTU2OWQ2
YTBjMWQzZTAuLjYwMmEzZWYwNjBiOTBkNWZhYTk3MGFjYTMyNjQzMjc2M2RkMTMwZGQgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL0NNYWtlTGlzdHMudHh0CisrKyBiL1NvdXJjZS9XZWJDb3Jl
L0NNYWtlTGlzdHMudHh0CkBAIC0xMzY4LDYgKzEzNjgsNyBAQCBzZXQoV2ViQ29yZV9TT1VSQ0VT
CiAgICAgZG9tL01lc3NhZ2VFdmVudC5jcHAKICAgICBkb20vTWVzc2FnZVBvcnQuY3BwCiAgICAg
ZG9tL01lc3NhZ2VQb3J0Q2hhbm5lbC5jcHAKKyAgICBkb20vTWljcm9UYXNrLmNwcAogICAgIGRv
bS9Nb3VzZUV2ZW50LmNwcAogICAgIGRvbS9Nb3VzZVJlbGF0ZWRFdmVudC5jcHAKICAgICBkb20v
TXV0YXRpb25FdmVudC5jcHAKQEAgLTMxNTAsNiArMzE1MSw3IEBAIHNldChXZWJDb3JlVGVzdFN1
cHBvcnRfU09VUkNFUwogICAgIHRlc3RpbmcvSW50ZXJuYWxTZXR0aW5ncy5jcHAKICAgICB0ZXN0
aW5nL0ludGVybmFscy5jcHAKIAorICAgIHRlc3RpbmcvTWljcm9UYXNrVGVzdC5jcHAKICAgICB0
ZXN0aW5nL01vY2tQYWdlT3ZlcmxheUNsaWVudC5jcHAKIAogICAgIHRlc3RpbmcvanMvV2ViQ29y
ZVRlc3RTdXBwb3J0LmNwcApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvV2ViQ29yZS52Y3hw
cm9qL1dlYkNvcmUudmN4cHJvaiBiL1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUudmN4cHJvai9XZWJD
b3JlLnZjeHByb2oKaW5kZXggMTQ0MmIxZGE5OTc5ZTljYzA4YjFmM2JkMjE2Yjk3MmYzNWE0MTQ1
Ni4uN2U4OGZmYWM1NjJkZGU1MGM1MjYzNmYxMjZhYTdkMmExODRkMDNjYyAxMDA2NDQKLS0tIGEv
U291cmNlL1dlYkNvcmUvV2ViQ29yZS52Y3hwcm9qL1dlYkNvcmUudmN4cHJvagorKysgYi9Tb3Vy
Y2UvV2ViQ29yZS9XZWJDb3JlLnZjeHByb2ovV2ViQ29yZS52Y3hwcm9qCkBAIC0xMzU3NSw2ICsx
MzU3NSw3IEBACiAgICAgICA8RXhjbHVkZWRGcm9tQnVpbGQgQ29uZGl0aW9uPSInJChDb25maWd1
cmF0aW9uKXwkKFBsYXRmb3JtKSc9PSdQcm9kdWN0aW9ufFdpbjMyJyI+dHJ1ZTwvRXhjbHVkZWRG
cm9tQnVpbGQ+CiAgICAgICA8RXhjbHVkZWRGcm9tQnVpbGQgQ29uZGl0aW9uPSInJChDb25maWd1
cmF0aW9uKXwkKFBsYXRmb3JtKSc9PSdQcm9kdWN0aW9ufHg2NCciPnRydWU8L0V4Y2x1ZGVkRnJv
bUJ1aWxkPgogICAgIDwvQ2xDb21waWxlPgorICAgIDxDbENvbXBpbGUgSW5jbHVkZT0iLi5cZG9t
XE1pY3JvVGFzay5jcHAiIC8+CiAgICAgPENsQ29tcGlsZSBJbmNsdWRlPSIuLlxkb21cTW91c2VF
dmVudC5jcHAiPgogICAgICAgPEV4Y2x1ZGVkRnJvbUJ1aWxkIENvbmRpdGlvbj0iJyQoQ29uZmln
dXJhdGlvbil8JChQbGF0Zm9ybSknPT0nRGVidWd8V2luMzInIj50cnVlPC9FeGNsdWRlZEZyb21C
dWlsZD4KICAgICAgIDxFeGNsdWRlZEZyb21CdWlsZCBDb25kaXRpb249IickKENvbmZpZ3VyYXRp
b24pfCQoUGxhdGZvcm0pJz09J0RlYnVnfHg2NCciPnRydWU8L0V4Y2x1ZGVkRnJvbUJ1aWxkPgpA
QCAtMjA3NTAsNiArMjA3NTEsNyBAQAogICAgIDxDbEluY2x1ZGUgSW5jbHVkZT0iLi5cZG9tXE1l
c3NhZ2VFdmVudC5oIiAvPgogICAgIDxDbEluY2x1ZGUgSW5jbHVkZT0iLi5cZG9tXE1lc3NhZ2VQ
b3J0LmgiIC8+CiAgICAgPENsSW5jbHVkZSBJbmNsdWRlPSIuLlxkb21cTWVzc2FnZVBvcnRDaGFu
bmVsLmgiIC8+CisgICAgPENsSW5jbHVkZSBJbmNsdWRlPSIuLlxkb21cTWljcm9UYXNrLmgiIC8+
CiAgICAgPENsSW5jbHVkZSBJbmNsdWRlPSIuLlxkb21cTW91c2VFdmVudC5oIiAvPgogICAgIDxD
bEluY2x1ZGUgSW5jbHVkZT0iLi5cZG9tXE1vdXNlUmVsYXRlZEV2ZW50LmgiIC8+CiAgICAgPENs
SW5jbHVkZSBJbmNsdWRlPSIuLlxkb21cTXV0YXRpb25FdmVudC5oIiAvPgpAQCAtMjE1NTAsNCAr
MjE1NTIsNCBAQAogICA8SW1wb3J0R3JvdXAgTGFiZWw9IkV4dGVuc2lvblRhcmdldHMiPgogICAg
IDxJbXBvcnQgUHJvamVjdD0iJChWQ1RhcmdldHNQYXRoKVxCdWlsZEN1c3RvbWl6YXRpb25zXG1h
c20udGFyZ2V0cyIgLz4KICAgPC9JbXBvcnRHcm91cD4KLTwvUHJvamVjdD4KXCBObyBuZXdsaW5l
IGF0IGVuZCBvZiBmaWxlCis8L1Byb2plY3Q+CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9X
ZWJDb3JlLnZjeHByb2ovV2ViQ29yZS52Y3hwcm9qLmZpbHRlcnMgYi9Tb3VyY2UvV2ViQ29yZS9X
ZWJDb3JlLnZjeHByb2ovV2ViQ29yZS52Y3hwcm9qLmZpbHRlcnMKaW5kZXggNzJlOGFlZTU1YmEy
MTNkOTExN2U2YzlmY2Y2YzUyYzI2NTM0ZDRlMi4uNjc4YjRkNDhhMTBlMTJjZmNmY2E1ZmQ0MTJh
OTRlNzZiYjVkYWEwZSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvV2ViQ29yZS52Y3hwcm9q
L1dlYkNvcmUudmN4cHJvai5maWx0ZXJzCisrKyBiL1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUudmN4
cHJvai9XZWJDb3JlLnZjeHByb2ouZmlsdGVycwpAQCAtMzIwNCw2ICszMjA0LDkgQEAKICAgICA8
Q2xDb21waWxlIEluY2x1ZGU9Ii4uXGRvbVxNZXNzYWdlUG9ydENoYW5uZWwuY3BwIj4KICAgICAg
IDxGaWx0ZXI+ZG9tPC9GaWx0ZXI+CiAgICAgPC9DbENvbXBpbGU+CisgICAgPENsQ29tcGlsZSBJ
bmNsdWRlPSIuLlxkb21cTWljcm9UYXNrLmNwcCI+CisgICAgICA8RmlsdGVyPmRvbTwvRmlsdGVy
PgorICAgIDwvQ2xDb21waWxlPgogICAgIDxDbENvbXBpbGUgSW5jbHVkZT0iLi5cZG9tXE1vdXNl
RXZlbnQuY3BwIj4KICAgICAgIDxGaWx0ZXI+ZG9tPC9GaWx0ZXI+CiAgICAgPC9DbENvbXBpbGU+
CkBAIC0xMDI2Niw2ICsxMDI2OSw5IEBACiAgICAgPENsSW5jbHVkZSBJbmNsdWRlPSIuLlxkb21c
TWVzc2FnZVBvcnRDaGFubmVsLmgiPgogICAgICAgPEZpbHRlcj5kb208L0ZpbHRlcj4KICAgICA8
L0NsSW5jbHVkZT4KKyAgICA8Q2xJbmNsdWRlIEluY2x1ZGU9Ii4uXGRvbVxNaWNyb1Rhc2suaCI+
CisgICAgICA8RmlsdGVyPmRvbTwvRmlsdGVyPgorICAgIDwvQ2xJbmNsdWRlPgogICAgIDxDbElu
Y2x1ZGUgSW5jbHVkZT0iLi5cZG9tXE1vdXNlRXZlbnQuaCI+CiAgICAgICA8RmlsdGVyPmRvbTwv
RmlsdGVyPgogICAgIDwvQ2xJbmNsdWRlPgpAQCAtMTUzNzQsNCArMTUzODAsNCBAQAogICAgICAg
PEZpbHRlcj5wbGF0Zm9ybVx3aW48L0ZpbHRlcj4KICAgICA8L01BU00+CiAgIDwvSXRlbUdyb3Vw
PgotPC9Qcm9qZWN0PgpcIE5vIG5ld2xpbmUgYXQgZW5kIG9mIGZpbGUKKzwvUHJvamVjdD4KZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUudmN4cHJvai9XZWJDb3JlVGVzdFN1cHBv
cnQudmN4cHJvaiBiL1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUudmN4cHJvai9XZWJDb3JlVGVzdFN1
cHBvcnQudmN4cHJvagppbmRleCBlM2RjODE5ZmY5ZTUzYjJhNGUwNWVhMDM3YjljNTk1YzdjZjc1
YzEzLi4xNWZlZDViZTEwNjQ4ZDc1YThkYTEwYjU0MGQwODEzOTE1ZDI4ZTViIDEwMDY0NAotLS0g
YS9Tb3VyY2UvV2ViQ29yZS9XZWJDb3JlLnZjeHByb2ovV2ViQ29yZVRlc3RTdXBwb3J0LnZjeHBy
b2oKKysrIGIvU291cmNlL1dlYkNvcmUvV2ViQ29yZS52Y3hwcm9qL1dlYkNvcmVUZXN0U3VwcG9y
dC52Y3hwcm9qCkBAIC03MDYsNiArNzA2LDY4IEBACiAgICAgICA8Rm9yY2VkSW5jbHVkZUZpbGVz
IENvbmRpdGlvbj0iJyQoQ29uZmlndXJhdGlvbil8JChQbGF0Zm9ybSknPT0nUHJvZHVjdGlvbnx4
NjQnIj4KICAgICAgIDwvRm9yY2VkSW5jbHVkZUZpbGVzPgogICAgIDwvQ2xDb21waWxlPgorICAg
IDxDbENvbXBpbGUgSW5jbHVkZT0iLi5cdGVzdGluZ1xNaWNyb1Rhc2tUZXN0LmNwcCI+CisgICAg
ICA8UHJlY29tcGlsZWRIZWFkZXIgQ29uZGl0aW9uPSInJChDb25maWd1cmF0aW9uKXwkKFBsYXRm
b3JtKSc9PSdEZWJ1Z3xXaW4zMiciPgorICAgICAgPC9QcmVjb21waWxlZEhlYWRlcj4KKyAgICAg
IDxQcmVjb21waWxlZEhlYWRlciBDb25kaXRpb249IickKENvbmZpZ3VyYXRpb24pfCQoUGxhdGZv
cm0pJz09J0RlYnVnfHg2NCciPgorICAgICAgPC9QcmVjb21waWxlZEhlYWRlcj4KKyAgICAgIDxQ
cmVjb21waWxlZEhlYWRlciBDb25kaXRpb249IickKENvbmZpZ3VyYXRpb24pfCQoUGxhdGZvcm0p
Jz09J0RlYnVnX1dpbkNhaXJvfFdpbjMyJyI+CisgICAgICA8L1ByZWNvbXBpbGVkSGVhZGVyPgor
ICAgICAgPFByZWNvbXBpbGVkSGVhZGVyIENvbmRpdGlvbj0iJyQoQ29uZmlndXJhdGlvbil8JChQ
bGF0Zm9ybSknPT0nRGVidWdfV2luQ2Fpcm98eDY0JyI+CisgICAgICA8L1ByZWNvbXBpbGVkSGVh
ZGVyPgorICAgICAgPFByZWNvbXBpbGVkSGVhZGVyIENvbmRpdGlvbj0iJyQoQ29uZmlndXJhdGlv
bil8JChQbGF0Zm9ybSknPT0nRGVidWdTdWZmaXh8V2luMzInIj4KKyAgICAgIDwvUHJlY29tcGls
ZWRIZWFkZXI+CisgICAgICA8UHJlY29tcGlsZWRIZWFkZXIgQ29uZGl0aW9uPSInJChDb25maWd1
cmF0aW9uKXwkKFBsYXRmb3JtKSc9PSdEZWJ1Z1N1ZmZpeHx4NjQnIj4KKyAgICAgIDwvUHJlY29t
cGlsZWRIZWFkZXI+CisgICAgICA8RGlzYWJsZVNwZWNpZmljV2FybmluZ3MgQ29uZGl0aW9uPSIn
JChDb25maWd1cmF0aW9uKXwkKFBsYXRmb3JtKSc9PSdEZWJ1Z3xXaW4zMiciPjQwNjU7NDI3Mzs0
NTY1OzQ3MDE7NDcwMjslKERpc2FibGVTcGVjaWZpY1dhcm5pbmdzKTwvRGlzYWJsZVNwZWNpZmlj
V2FybmluZ3M+CisgICAgICA8RGlzYWJsZVNwZWNpZmljV2FybmluZ3MgQ29uZGl0aW9uPSInJChD
b25maWd1cmF0aW9uKXwkKFBsYXRmb3JtKSc9PSdEZWJ1Z3x4NjQnIj40MDY1OzQyNzM7NDU2NTs0
NzAxOzQ3MDI7JShEaXNhYmxlU3BlY2lmaWNXYXJuaW5ncyk8L0Rpc2FibGVTcGVjaWZpY1dhcm5p
bmdzPgorICAgICAgPERpc2FibGVTcGVjaWZpY1dhcm5pbmdzIENvbmRpdGlvbj0iJyQoQ29uZmln
dXJhdGlvbil8JChQbGF0Zm9ybSknPT0nRGVidWdfV2luQ2Fpcm98V2luMzInIj40MDY1OzQyNzM7
NDU2NTs0NzAxOzQ3MDI7JShEaXNhYmxlU3BlY2lmaWNXYXJuaW5ncyk8L0Rpc2FibGVTcGVjaWZp
Y1dhcm5pbmdzPgorICAgICAgPERpc2FibGVTcGVjaWZpY1dhcm5pbmdzIENvbmRpdGlvbj0iJyQo
Q29uZmlndXJhdGlvbil8JChQbGF0Zm9ybSknPT0nRGVidWdfV2luQ2Fpcm98eDY0JyI+NDA2NTs0
MjczOzQ1NjU7NDcwMTs0NzAyOyUoRGlzYWJsZVNwZWNpZmljV2FybmluZ3MpPC9EaXNhYmxlU3Bl
Y2lmaWNXYXJuaW5ncz4KKyAgICAgIDxEaXNhYmxlU3BlY2lmaWNXYXJuaW5ncyBDb25kaXRpb249
IickKENvbmZpZ3VyYXRpb24pfCQoUGxhdGZvcm0pJz09J0RlYnVnU3VmZml4fFdpbjMyJyI+NDA2
NTs0MjczOzQ1NjU7NDcwMTs0NzAyOyUoRGlzYWJsZVNwZWNpZmljV2FybmluZ3MpPC9EaXNhYmxl
U3BlY2lmaWNXYXJuaW5ncz4KKyAgICAgIDxEaXNhYmxlU3BlY2lmaWNXYXJuaW5ncyBDb25kaXRp
b249IickKENvbmZpZ3VyYXRpb24pfCQoUGxhdGZvcm0pJz09J0RlYnVnU3VmZml4fHg2NCciPjQw
NjU7NDI3Mzs0NTY1OzQ3MDE7NDcwMjslKERpc2FibGVTcGVjaWZpY1dhcm5pbmdzKTwvRGlzYWJs
ZVNwZWNpZmljV2FybmluZ3M+CisgICAgICA8Rm9yY2VkSW5jbHVkZUZpbGVzIENvbmRpdGlvbj0i
JyQoQ29uZmlndXJhdGlvbil8JChQbGF0Zm9ybSknPT0nRGVidWd8V2luMzInIj4KKyAgICAgIDwv
Rm9yY2VkSW5jbHVkZUZpbGVzPgorICAgICAgPEZvcmNlZEluY2x1ZGVGaWxlcyBDb25kaXRpb249
IickKENvbmZpZ3VyYXRpb24pfCQoUGxhdGZvcm0pJz09J0RlYnVnfHg2NCciPgorICAgICAgPC9G
b3JjZWRJbmNsdWRlRmlsZXM+CisgICAgICA8Rm9yY2VkSW5jbHVkZUZpbGVzIENvbmRpdGlvbj0i
JyQoQ29uZmlndXJhdGlvbil8JChQbGF0Zm9ybSknPT0nRGVidWdfV2luQ2Fpcm98V2luMzInIj4K
KyAgICAgIDwvRm9yY2VkSW5jbHVkZUZpbGVzPgorICAgICAgPEZvcmNlZEluY2x1ZGVGaWxlcyBD
b25kaXRpb249IickKENvbmZpZ3VyYXRpb24pfCQoUGxhdGZvcm0pJz09J0RlYnVnX1dpbkNhaXJv
fHg2NCciPgorICAgICAgPC9Gb3JjZWRJbmNsdWRlRmlsZXM+CisgICAgICA8Rm9yY2VkSW5jbHVk
ZUZpbGVzIENvbmRpdGlvbj0iJyQoQ29uZmlndXJhdGlvbil8JChQbGF0Zm9ybSknPT0nRGVidWdT
dWZmaXh8V2luMzInIj4KKyAgICAgIDwvRm9yY2VkSW5jbHVkZUZpbGVzPgorICAgICAgPEZvcmNl
ZEluY2x1ZGVGaWxlcyBDb25kaXRpb249IickKENvbmZpZ3VyYXRpb24pfCQoUGxhdGZvcm0pJz09
J0RlYnVnU3VmZml4fHg2NCciPgorICAgICAgPC9Gb3JjZWRJbmNsdWRlRmlsZXM+CisgICAgICA8
UHJlY29tcGlsZWRIZWFkZXIgQ29uZGl0aW9uPSInJChDb25maWd1cmF0aW9uKXwkKFBsYXRmb3Jt
KSc9PSdSZWxlYXNlfFdpbjMyJyI+CisgICAgICA8L1ByZWNvbXBpbGVkSGVhZGVyPgorICAgICAg
PFByZWNvbXBpbGVkSGVhZGVyIENvbmRpdGlvbj0iJyQoQ29uZmlndXJhdGlvbil8JChQbGF0Zm9y
bSknPT0nUmVsZWFzZXx4NjQnIj4KKyAgICAgIDwvUHJlY29tcGlsZWRIZWFkZXI+CisgICAgICA8
UHJlY29tcGlsZWRIZWFkZXIgQ29uZGl0aW9uPSInJChDb25maWd1cmF0aW9uKXwkKFBsYXRmb3Jt
KSc9PSdSZWxlYXNlX1dpbkNhaXJvfFdpbjMyJyI+CisgICAgICA8L1ByZWNvbXBpbGVkSGVhZGVy
PgorICAgICAgPFByZWNvbXBpbGVkSGVhZGVyIENvbmRpdGlvbj0iJyQoQ29uZmlndXJhdGlvbil8
JChQbGF0Zm9ybSknPT0nUmVsZWFzZV9XaW5DYWlyb3x4NjQnIj4KKyAgICAgIDwvUHJlY29tcGls
ZWRIZWFkZXI+CisgICAgICA8UHJlY29tcGlsZWRIZWFkZXIgQ29uZGl0aW9uPSInJChDb25maWd1
cmF0aW9uKXwkKFBsYXRmb3JtKSc9PSdQcm9kdWN0aW9ufFdpbjMyJyI+CisgICAgICA8L1ByZWNv
bXBpbGVkSGVhZGVyPgorICAgICAgPFByZWNvbXBpbGVkSGVhZGVyIENvbmRpdGlvbj0iJyQoQ29u
ZmlndXJhdGlvbil8JChQbGF0Zm9ybSknPT0nUHJvZHVjdGlvbnx4NjQnIj4KKyAgICAgIDwvUHJl
Y29tcGlsZWRIZWFkZXI+CisgICAgICA8RGlzYWJsZVNwZWNpZmljV2FybmluZ3MgQ29uZGl0aW9u
PSInJChDb25maWd1cmF0aW9uKXwkKFBsYXRmb3JtKSc9PSdSZWxlYXNlfFdpbjMyJyI+NDA2NTs0
MjczOzQ1NjU7NDcwMTs0NzAyOyUoRGlzYWJsZVNwZWNpZmljV2FybmluZ3MpPC9EaXNhYmxlU3Bl
Y2lmaWNXYXJuaW5ncz4KKyAgICAgIDxEaXNhYmxlU3BlY2lmaWNXYXJuaW5ncyBDb25kaXRpb249
IickKENvbmZpZ3VyYXRpb24pfCQoUGxhdGZvcm0pJz09J1JlbGVhc2V8eDY0JyI+NDA2NTs0Mjcz
OzQ1NjU7NDcwMTs0NzAyOyUoRGlzYWJsZVNwZWNpZmljV2FybmluZ3MpPC9EaXNhYmxlU3BlY2lm
aWNXYXJuaW5ncz4KKyAgICAgIDxEaXNhYmxlU3BlY2lmaWNXYXJuaW5ncyBDb25kaXRpb249Iick
KENvbmZpZ3VyYXRpb24pfCQoUGxhdGZvcm0pJz09J1JlbGVhc2VfV2luQ2Fpcm98V2luMzInIj40
MDY1OzQyNzM7NDU2NTs0NzAxOzQ3MDI7JShEaXNhYmxlU3BlY2lmaWNXYXJuaW5ncyk8L0Rpc2Fi
bGVTcGVjaWZpY1dhcm5pbmdzPgorICAgICAgPERpc2FibGVTcGVjaWZpY1dhcm5pbmdzIENvbmRp
dGlvbj0iJyQoQ29uZmlndXJhdGlvbil8JChQbGF0Zm9ybSknPT0nUmVsZWFzZV9XaW5DYWlyb3x4
NjQnIj40MDY1OzQyNzM7NDU2NTs0NzAxOzQ3MDI7JShEaXNhYmxlU3BlY2lmaWNXYXJuaW5ncyk8
L0Rpc2FibGVTcGVjaWZpY1dhcm5pbmdzPgorICAgICAgPERpc2FibGVTcGVjaWZpY1dhcm5pbmdz
IENvbmRpdGlvbj0iJyQoQ29uZmlndXJhdGlvbil8JChQbGF0Zm9ybSknPT0nUHJvZHVjdGlvbnxX
aW4zMiciPjQwNjU7NDI3Mzs0NTY1OzQ3MDE7NDcwMjslKERpc2FibGVTcGVjaWZpY1dhcm5pbmdz
KTwvRGlzYWJsZVNwZWNpZmljV2FybmluZ3M+CisgICAgICA8RGlzYWJsZVNwZWNpZmljV2Fybmlu
Z3MgQ29uZGl0aW9uPSInJChDb25maWd1cmF0aW9uKXwkKFBsYXRmb3JtKSc9PSdQcm9kdWN0aW9u
fHg2NCciPjQwNjU7NDI3Mzs0NTY1OzQ3MDE7NDcwMjslKERpc2FibGVTcGVjaWZpY1dhcm5pbmdz
KTwvRGlzYWJsZVNwZWNpZmljV2FybmluZ3M+CisgICAgICA8Rm9yY2VkSW5jbHVkZUZpbGVzIENv
bmRpdGlvbj0iJyQoQ29uZmlndXJhdGlvbil8JChQbGF0Zm9ybSknPT0nUmVsZWFzZXxXaW4zMici
PgorICAgICAgPC9Gb3JjZWRJbmNsdWRlRmlsZXM+CisgICAgICA8Rm9yY2VkSW5jbHVkZUZpbGVz
IENvbmRpdGlvbj0iJyQoQ29uZmlndXJhdGlvbil8JChQbGF0Zm9ybSknPT0nUmVsZWFzZXx4NjQn
Ij4KKyAgICAgIDwvRm9yY2VkSW5jbHVkZUZpbGVzPgorICAgICAgPEZvcmNlZEluY2x1ZGVGaWxl
cyBDb25kaXRpb249IickKENvbmZpZ3VyYXRpb24pfCQoUGxhdGZvcm0pJz09J1JlbGVhc2VfV2lu
Q2Fpcm98V2luMzInIj4KKyAgICAgIDwvRm9yY2VkSW5jbHVkZUZpbGVzPgorICAgICAgPEZvcmNl
ZEluY2x1ZGVGaWxlcyBDb25kaXRpb249IickKENvbmZpZ3VyYXRpb24pfCQoUGxhdGZvcm0pJz09
J1JlbGVhc2VfV2luQ2Fpcm98eDY0JyI+CisgICAgICA8L0ZvcmNlZEluY2x1ZGVGaWxlcz4KKyAg
ICAgIDxGb3JjZWRJbmNsdWRlRmlsZXMgQ29uZGl0aW9uPSInJChDb25maWd1cmF0aW9uKXwkKFBs
YXRmb3JtKSc9PSdQcm9kdWN0aW9ufFdpbjMyJyI+CisgICAgICA8L0ZvcmNlZEluY2x1ZGVGaWxl
cz4KKyAgICAgIDxGb3JjZWRJbmNsdWRlRmlsZXMgQ29uZGl0aW9uPSInJChDb25maWd1cmF0aW9u
KXwkKFBsYXRmb3JtKSc9PSdQcm9kdWN0aW9ufHg2NCciPgorICAgICAgPC9Gb3JjZWRJbmNsdWRl
RmlsZXM+CisgICAgPC9DbENvbXBpbGU+CiAgICAgPENsQ29tcGlsZSBJbmNsdWRlPSIuLlx0ZXN0
aW5nXE1vY2tQYWdlT3ZlcmxheUNsaWVudC5jcHAiPgogICAgICAgPFByZWNvbXBpbGVkSGVhZGVy
IENvbmRpdGlvbj0iJyQoQ29uZmlndXJhdGlvbil8JChQbGF0Zm9ybSknPT0nRGVidWd8V2luMzIn
Ij4KICAgICAgIDwvUHJlY29tcGlsZWRIZWFkZXI+CkBAIC05MTcsNiArOTc5LDcgQEAKICAgICA8
Q2xJbmNsdWRlIEluY2x1ZGU9IiQoQ29uZmlndXJhdGlvbkJ1aWxkRGlyKVxvYmokKFBsYXRmb3Jt
QXJjaGl0ZWN0dXJlKVxXZWJDb3JlXERlcml2ZWRTb3VyY2VzXEpTSW50ZXJuYWxTZXR0aW5nc0dl
bmVyYXRlZC5oIiAvPgogICAgIDxDbEluY2x1ZGUgSW5jbHVkZT0iLi5cdGVzdGluZ1xNYWxsb2NT
dGF0aXN0aWNzLmgiIC8+CiAgICAgPENsSW5jbHVkZSBJbmNsdWRlPSIuLlx0ZXN0aW5nXE1lbW9y
eUluZm8uaCIgLz4KKyAgICA8Q2xJbmNsdWRlIEluY2x1ZGU9Ii4uXHRlc3RpbmdcTWljcm9UYXNr
VGVzdC5oIiAvPgogICAgIDxDbEluY2x1ZGUgSW5jbHVkZT0iLi5cdGVzdGluZ1xNb2NrQ0RNLmgi
IC8+CiAgICAgPENsSW5jbHVkZSBJbmNsdWRlPSIuLlx0ZXN0aW5nXE1vY2tQYWdlT3ZlcmxheUNs
aWVudC5oIiAvPgogICAgIDxDbEluY2x1ZGUgSW5jbHVkZT0iLi5cdGVzdGluZ1xUeXBlQ29udmVy
c2lvbnMuaCIgLz4KQEAgLTkyOCw0ICs5OTEsNCBAQAogICA8SW1wb3J0IFByb2plY3Q9IiQoVkNU
YXJnZXRzUGF0aClcTWljcm9zb2Z0LkNwcC50YXJnZXRzIiAvPgogICA8SW1wb3J0R3JvdXAgTGFi
ZWw9IkV4dGVuc2lvblRhcmdldHMiPgogICA8L0ltcG9ydEdyb3VwPgotPC9Qcm9qZWN0PgpcIE5v
IG5ld2xpbmUgYXQgZW5kIG9mIGZpbGUKKzwvUHJvamVjdD4KZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJDb3JlL1dlYkNvcmUudmN4cHJvai9XZWJDb3JlVGVzdFN1cHBvcnQudmN4cHJvai5maWx0ZXJz
IGIvU291cmNlL1dlYkNvcmUvV2ViQ29yZS52Y3hwcm9qL1dlYkNvcmVUZXN0U3VwcG9ydC52Y3hw
cm9qLmZpbHRlcnMKaW5kZXggNjQwMmQ1ZTRlMGI1NjQ5MTk3ZGY4NTAzYjI0MDRmMWQxMjA4ZjY2
OS4uNzYyOGYyN2ZlMDFhMDcxODMwOTVhNzljYTE0MDdhZmYzNDJjOTUwOCAxMDA2NDQKLS0tIGEv
U291cmNlL1dlYkNvcmUvV2ViQ29yZS52Y3hwcm9qL1dlYkNvcmVUZXN0U3VwcG9ydC52Y3hwcm9q
LmZpbHRlcnMKKysrIGIvU291cmNlL1dlYkNvcmUvV2ViQ29yZS52Y3hwcm9qL1dlYkNvcmVUZXN0
U3VwcG9ydC52Y3hwcm9qLmZpbHRlcnMKQEAgLTM5LDYgKzM5LDkgQEAKICAgICA8Q2xDb21waWxl
IEluY2x1ZGU9Ii4uXHRlc3RpbmdcanNcV2ViQ29yZVRlc3RTdXBwb3J0LmNwcCI+CiAgICAgICA8
RmlsdGVyPnRlc3Rpbmc8L0ZpbHRlcj4KICAgICA8L0NsQ29tcGlsZT4KKyAgICA8Q2xDb21waWxl
IEluY2x1ZGU9Ii4uXHRlc3RpbmdcTWljcm9UYXNrVGVzdC5jcHAiPgorICAgICAgPEZpbHRlcj50
ZXN0aW5nPC9GaWx0ZXI+CisgICAgPC9DbENvbXBpbGU+CiAgICAgPENsQ29tcGlsZSBJbmNsdWRl
PSIuLlx0ZXN0aW5nXE1vY2tDRE0uY3BwIj4KICAgICAgIDxGaWx0ZXI+dGVzdGluZzwvRmlsdGVy
PgogICAgIDwvQ2xDb21waWxlPgpAQCAtODcsNiArOTAsOSBAQAogICAgICAgPEZpbHRlcj50ZXN0
aW5nPC9GaWx0ZXI+CiAgICAgPC9DbEluY2x1ZGU+CiAgICAgPENsSW5jbHVkZSBJbmNsdWRlPSIu
Llxjb25maWcuaCIgLz4KKyAgICA8Q2xJbmNsdWRlIEluY2x1ZGU9Ii4uXHRlc3RpbmdcTWljcm9U
YXNrVGVzdC5oIj4KKyAgICAgIDxGaWx0ZXI+dGVzdGluZzwvRmlsdGVyPgorICAgIDwvQ2xJbmNs
dWRlPgogICAgIDxDbEluY2x1ZGUgSW5jbHVkZT0iLi5cdGVzdGluZ1xNb2NrQ0RNLmgiPgogICAg
ICAgPEZpbHRlcj50ZXN0aW5nPC9GaWx0ZXI+CiAgICAgPC9DbEluY2x1ZGU+CkBAIC05NCw0ICsx
MDAsNCBAQAogICAgICAgPEZpbHRlcj50ZXN0aW5nPC9GaWx0ZXI+CiAgICAgPC9DbEluY2x1ZGU+
CiAgIDwvSXRlbUdyb3VwPgotPC9Qcm9qZWN0PgpcIE5vIG5ld2xpbmUgYXQgZW5kIG9mIGZpbGUK
KzwvUHJvamVjdD4KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUueGNvZGVwcm9q
L3Byb2plY3QucGJ4cHJvaiBiL1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUueGNvZGVwcm9qL3Byb2pl
Y3QucGJ4cHJvagppbmRleCBlOGM5N2E2MjNmZTY0NDRiYWZjM2RlYTcxZWNlNTQ0ZWQzZDFkMDE1
Li4wODZlMWUxOTY0MTU0OTZhMWVlZjY1OGFhNWFmOTdkYmYyMzlhMTQxIDEwMDY0NAotLS0gYS9T
b3VyY2UvV2ViQ29yZS9XZWJDb3JlLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2oKKysrIGIvU291
cmNlL1dlYkNvcmUvV2ViQ29yZS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qCkBAIC0yMDg0LDYg
KzIwODQsNyBAQAogCQk1MzZENUEyMzE5M0U4RTBDMDBDRTRDQUIgLyogUGFyc2luZ1V0aWxpdGll
cy5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNTM2RDVB
MjIxOTNFOEUwQzAwQ0U0Q0FCIC8qIFBhcnNpbmdVdGlsaXRpZXMuaCAqLzsgfTsKIAkJNTM2RDVB
MjUxOTNGNDBGQzAwQ0U0Q0FCIC8qIFNvdXJjZVNpemVMaXN0LmNwcCBpbiBTb3VyY2VzICovID0g
e2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDUzNkQ1QTI0MTkzRjQwRkMwMENFNENBQiAv
KiBTb3VyY2VTaXplTGlzdC5jcHAgKi87IH07CiAJCTUzNkQ1QTI3MTkzRjQxMEIwMENFNENBQiAv
KiBTb3VyY2VTaXplTGlzdC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBm
aWxlUmVmID0gNTM2RDVBMjYxOTNGNDEwQjAwQ0U0Q0FCIC8qIFNvdXJjZVNpemVMaXN0LmggKi87
IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJNTNCODk1QUYx
OURDN0VEOTAwOUNBQTkzIC8qIE1pY3JvVGFzay5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJY
QnVpbGRGaWxlOyBmaWxlUmVmID0gNTNCODk1QUQxOURDN0MzNzAwOUNBQTkzIC8qIE1pY3JvVGFz
ay5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFB1YmxpYywgKTsgfTsgfTsKIAkJNTND
ODI5OEQxM0Q4RDkyNzAwREUyREVCIC8qIFJlbmRlckZsZXhpYmxlQm94LmNwcCBpbiBTb3VyY2Vz
ICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDUzQzgyOThCMTNEOEQ5MjcwMERF
MkRFQiAvKiBSZW5kZXJGbGV4aWJsZUJveC5jcHAgKi87IH07CiAJCTUzQzgyOThFMTNEOEQ5Mjcw
MERFMkRFQiAvKiBSZW5kZXJGbGV4aWJsZUJveC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJY
QnVpbGRGaWxlOyBmaWxlUmVmID0gNTNDODI5OEMxM0Q4RDkyNzAwREUyREVCIC8qIFJlbmRlckZs
ZXhpYmxlQm94LmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsg
fTsKIAkJNTNFMjlFNUUxNjdBOEExOTAwNTg2RDNEIC8qIEludGVybmFsU2V0dGluZ3NHZW5lcmF0
ZWQuY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNTNF
MjlFNUMxNjdBOEExOTAwNTg2RDNEIC8qIEludGVybmFsU2V0dGluZ3NHZW5lcmF0ZWQuY3BwICov
OyB9OwpAQCAtNTYxMiw2ICs1NjEzLDkgQEAKIAkJQ0EzQkY2N0UxMEQ5OUJBRTAwRTZDRTUzIC8q
IFNjcm9sbEFuaW1hdG9yLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZp
bGVSZWYgPSBDQTNCRjY3RDEwRDk5QkFFMDBFNkNFNTMgLyogU2Nyb2xsQW5pbWF0b3IuaCAqLzsg
c2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OwogCQlDQUU5RjkwRjE0
NjQ0MUYwMDBDMjQ1QjAgLyogQ1NTQXNwZWN0UmF0aW9WYWx1ZS5jcHAgaW4gU291cmNlcyAqLyA9
IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBDQUU5RjkwRDE0NjQ0MUYwMDBDMjQ1QjAg
LyogQ1NTQXNwZWN0UmF0aW9WYWx1ZS5jcHAgKi87IH07CiAJCUNBRTlGOTEwMTQ2NDQxRjAwMEMy
NDVCMCAvKiBDU1NBc3BlY3RSYXRpb1ZhbHVlLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhC
dWlsZEZpbGU7IGZpbGVSZWYgPSBDQUU5RjkwRTE0NjQ0MUYwMDBDMjQ1QjAgLyogQ1NTQXNwZWN0
UmF0aW9WYWx1ZS5oICovOyB9OworCQlDQjhDRjAxODFBOTM1OEQ0MDAwRDUxMEIgLyogTWljcm9U
YXNrLmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IENC
OENGMDE1MUE5MzRCNDMwMDBENTEwQiAvKiBNaWNyb1Rhc2suY3BwICovOyB9OworCQlDQjhDRjAx
RDFBOTVERTQyMDAwRDUxMEIgLyogTWljcm9UYXNrVGVzdC5oIGluIEhlYWRlcnMgKi8gPSB7aXNh
ID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQ0I4Q0YwMUMxQTk1REU0MjAwMEQ1MTBCIC8qIE1p
Y3JvVGFza1Rlc3QuaCAqLzsgfTsKKwkJQ0I4Q0YwMUYxQTk1REU1OTAwMEQ1MTBCIC8qIE1pY3Jv
VGFza1Rlc3QuY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVm
ID0gQ0I4Q0YwMUUxQTk1REU1OTAwMEQ1MTBCIC8qIE1pY3JvVGFza1Rlc3QuY3BwICovOyB9Owog
CQlDQ0MyQjUxNDE1RjYxMzA2MDA0OENERDYgLyogRGV2aWNlQ2xpZW50LmggaW4gSGVhZGVycyAq
LyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBDQ0MyQjUxMDE1RjYxMzA2MDA0OENE
RDYgLyogRGV2aWNlQ2xpZW50LmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0
ZSwgKTsgfTsgfTsKIAkJQ0NDMkI1MTUxNUY2MTMwNjAwNDhDREQ2IC8qIERldmljZUNvbnRyb2xs
ZXIuY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQ0ND
MkI1MTExNUY2MTMwNjAwNDhDREQ2IC8qIERldmljZUNvbnRyb2xsZXIuY3BwICovOyB9OwogCQlD
Q0MyQjUxNjE1RjYxMzA2MDA0OENERDYgLyogRGV2aWNlQ29udHJvbGxlci5oIGluIEhlYWRlcnMg
Ki8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQ0NDMkI1MTIxNUY2MTMwNjAwNDhD
REQ2IC8qIERldmljZUNvbnRyb2xsZXIuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQ
cml2YXRlLCApOyB9OyB9OwpAQCAtOTIyNiw2ICs5MjMwLDcgQEAKIAkJNTM2RDVBMjIxOTNFOEUw
QzAwQ0U0Q0FCIC8qIFBhcnNpbmdVdGlsaXRpZXMuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJl
bmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5o
OyBuYW1lID0gUGFyc2luZ1V0aWxpdGllcy5oOyBwYXRoID0gcGFyc2VyL1BhcnNpbmdVdGlsaXRp
ZXMuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJNTM2RDVBMjQxOTNGNDBGQzAwQ0U0
Q0FCIC8qIFNvdXJjZVNpemVMaXN0LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBm
aWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsg
cGF0aCA9IFNvdXJjZVNpemVMaXN0LmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJ
NTM2RDVBMjYxOTNGNDEwQjAwQ0U0Q0FCIC8qIFNvdXJjZVNpemVMaXN0LmggKi8gPSB7aXNhID0g
UEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBz
b3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFNvdXJjZVNpemVMaXN0Lmg7IHNvdXJjZVRyZWUgPSAiPGdy
b3VwPiI7IH07CisJCTUzQjg5NUFEMTlEQzdDMzcwMDlDQUE5MyAvKiBNaWNyb1Rhc2suaCAqLyA9
IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxl
VHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gTWljcm9UYXNrLmg7IHNvdXJjZVRyZWUgPSAi
PGdyb3VwPiI7IH07CiAJCTUzQzgyOThCMTNEOEQ5MjcwMERFMkRFQiAvKiBSZW5kZXJGbGV4aWJs
ZUJveC5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsg
bGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBSZW5kZXJGbGV4
aWJsZUJveC5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTUzQzgyOThDMTNEOEQ5
MjcwMERFMkRFQiAvKiBSZW5kZXJGbGV4aWJsZUJveC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZl
cmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5j
Lmg7IHBhdGggPSBSZW5kZXJGbGV4aWJsZUJveC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9
OwogCQk1M0UyOUU1QzE2N0E4QTE5MDA1ODZEM0QgLyogSW50ZXJuYWxTZXR0aW5nc0dlbmVyYXRl
ZC5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFz
dEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBJbnRlcm5hbFNldHRp
bmdzR2VuZXJhdGVkLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKQEAgLTEzMDcyLDYg
KzEzMDc3LDkgQEAKIAkJQ0EzQkY2N0QxMEQ5OUJBRTAwRTZDRTUzIC8qIFNjcm9sbEFuaW1hdG9y
LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtu
b3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFNjcm9sbEFuaW1hdG9yLmg7IHNv
dXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCUNBRTlGOTBEMTQ2NDQxRjAwMEMyNDVCMCAvKiBD
U1NBc3BlY3RSYXRpb1ZhbHVlLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxl
RW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0
aCA9IENTU0FzcGVjdFJhdGlvVmFsdWUuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9Owog
CQlDQUU5RjkwRTE0NjQ0MUYwMDBDMjQ1QjAgLyogQ1NTQXNwZWN0UmF0aW9WYWx1ZS5oICovID0g
e2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVU
eXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBDU1NBc3BlY3RSYXRpb1ZhbHVlLmg7IHNvdXJj
ZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUNCOENGMDE1MUE5MzRCNDMwMDBENTEwQiAvKiBNaWNy
b1Rhc2suY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7
IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gTWljcm9UYXNr
LmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQ0I4Q0YwMUMxQTk1REU0MjAwMEQ1
MTBCIC8qIE1pY3JvVGFza1Rlc3QuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxl
RW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0g
TWljcm9UYXNrVGVzdC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlDQjhDRjAxRTFB
OTVERTU5MDAwRDUxMEIgLyogTWljcm9UYXNrVGVzdC5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJl
ZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2Rl
LmNwcC5jcHA7IHBhdGggPSBNaWNyb1Rhc2tUZXN0LmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+
IjsgfTsKIAkJQ0NDMkI1MTAxNUY2MTMwNjAwNDhDREQ2IC8qIERldmljZUNsaWVudC5oICovID0g
e2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVU
eXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBEZXZpY2VDbGllbnQuaDsgc291cmNlVHJlZSA9
ICI8Z3JvdXA+IjsgfTsKIAkJQ0NDMkI1MTExNUY2MTMwNjAwNDhDREQ2IC8qIERldmljZUNvbnRy
b2xsZXIuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7
IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gRGV2aWNlQ29u
dHJvbGxlci5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCUNDQzJCNTEyMTVGNjEz
MDYwMDQ4Q0RENiAvKiBEZXZpY2VDb250cm9sbGVyLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVy
ZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMu
aDsgcGF0aCA9IERldmljZUNvbnRyb2xsZXIuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsK
QEAgLTE1NjU3LDYgKzE1NjY1LDggQEAKIAkJCQlBN0JGN0VERDE0QzkxNzVBMDAxNDQ4OUQgLyog
SW50ZXJuYWxTZXR0aW5ncy5oICovLAogCQkJCUE3QkY3RURFMTRDOTE3NUEwMDE0NDg5RCAvKiBJ
bnRlcm5hbFNldHRpbmdzLmlkbCAqLywKIAkJCQlBN0JFN0VERDE0QzkxNzVBMDAxNDQ4OUQgLyog
TWFsbG9jU3RhdGlzdGljcy5oICovLAorCQkJCUNCOENGMDFFMUE5NURFNTkwMDBENTEwQiAvKiBN
aWNyb1Rhc2tUZXN0LmNwcCAqLywKKwkJCQlDQjhDRjAxQzFBOTVERTQyMDAwRDUxMEIgLyogTWlj
cm9UYXNrVGVzdC5oICovLAogCQkJCUE3QkU3RURFMTRDOTE3NUEwMDE0NDg5RCAvKiBNYWxsb2NT
dGF0aXN0aWNzLmlkbCAqLywKIAkJCQlDRDUzOTNDQjE3NURDQ0U2MDBDMDcxMjMgLyogTWVtb3J5
SW5mby5oICovLAogCQkJCUNENTM5M0NDMTc1RENDRTYwMEMwNzEyMyAvKiBNZW1vcnlJbmZvLmlk
bCAqLywKQEAgLTIyODU3LDYgKzIyODY3LDggQEAKIAkJCQlFMUFERUNCRDBFNzZBQ0YxMDA0QTFB
NUUgLyogTWVzc2FnZVBvcnQuaCAqLywKIAkJCQlFMUFERUNDNjBFNzZBRDFGMDA0QTFBNUUgLyog
TWVzc2FnZVBvcnQuaWRsICovLAogCQkJCTQxQkY3MDBBMEZFODZGNDkwMDVFOERFQyAvKiBNZXNz
YWdlUG9ydENoYW5uZWwuaCAqLywKKwkJCQk1M0I4OTVBRDE5REM3QzM3MDA5Q0FBOTMgLyogTWlj
cm9UYXNrLmggKi8sCisJCQkJQ0I4Q0YwMTUxQTkzNEI0MzAwMEQ1MTBCIC8qIE1pY3JvVGFzay5j
cHAgKi8sCiAJCQkJODUwMzFCMkYwQTQ0RUZDNzAwRjk5MkUwIC8qIE1vdXNlRXZlbnQuY3BwICov
LAogCQkJCTg1MDMxQjMwMEE0NEVGQzcwMEY5OTJFMCAvKiBNb3VzZUV2ZW50LmggKi8sCiAJCQkJ
MTQxQjk0RTUwOUVDNDIyMzAwMEU5NDEzIC8qIE1vdXNlRXZlbnQuaWRsICovLApAQCAtMjM0MjEs
NiArMjM0MzMsNyBAQAogCQkJCTUzRUQzRkRGMTY3QTg4RTcwMDY3NjJFNiAvKiBKU0ludGVybmFs
U2V0dGluZ3NHZW5lcmF0ZWQuaCBpbiBIZWFkZXJzICovLAogCQkJCUE3NDBCNTk1MTRDOTM1QUIw
MEE3N0ZBNCAvKiBKU01hbGxvY1N0YXRpc3RpY3MuaCBpbiBIZWFkZXJzICovLAogCQkJCUNENTM5
M0Q0MTc1RTAxODYwMEMwNzEyMyAvKiBKU01lbW9yeUluZm8uaCBpbiBIZWFkZXJzICovLAorCQkJ
CUNCOENGMDFEMUE5NURFNDIwMDBENTEwQiAvKiBNaWNyb1Rhc2tUZXN0LmggaW4gSGVhZGVycyAq
LywKIAkJCQlFQkY1MTIxRDE2OTY0OTZDMDA1NkJEMjUgLyogSlNUeXBlQ29udmVyc2lvbnMuaCBp
biBIZWFkZXJzICovLAogCQkJCUNEQzI2QjQxMTYwQThDQ0UwMDI2NzU3QiAvKiBNb2NrQ0RNLmgg
aW4gSGVhZGVycyAqLywKIAkJCQkyRDk3RjA0ODE5REQ0MTQwMDAxRUU5QzMgLyogTW9ja1BhZ2VP
dmVybGF5Q2xpZW50LmggaW4gSGVhZGVycyAqLywKQEAgLTI1ODMxLDYgKzI1ODQ0LDcgQEAKIAkJ
CQk1M0M4Mjk4RTEzRDhEOTI3MDBERTJERUIgLyogUmVuZGVyRmxleGlibGVCb3guaCBpbiBIZWFk
ZXJzICovLAogCQkJCTUwOENDQTRGMTNDRjEwNkIwMDMxNTFGMyAvKiBSZW5kZXJGbG93VGhyZWFk
LmggaW4gSGVhZGVycyAqLywKIAkJCQlBODcxREVEMzBBMTUzMEM3MDBCMTJBNjggLyogUmVuZGVy
RnJhbWUuaCBpbiBIZWFkZXJzICovLAorCQkJCTUzQjg5NUFGMTlEQzdFRDkwMDlDQUE5MyAvKiBN
aWNyb1Rhc2suaCBpbiBIZWFkZXJzICovLAogCQkJCTBGRDMwODBGMTE3Q0Y3RTcwMEE3OTFGNyAv
KiBSZW5kZXJGcmFtZUJhc2UuaCBpbiBIZWFkZXJzICovLAogCQkJCUE4NzFERUQxMEExNTMwQzcw
MEIxMkE2OCAvKiBSZW5kZXJGcmFtZVNldC5oIGluIEhlYWRlcnMgKi8sCiAJCQkJQ0RFQTdDODQx
Mjc2MjMwNDAwQjg0NkREIC8qIFJlbmRlckZ1bGxTY3JlZW4uaCBpbiBIZWFkZXJzICovLApAQCAt
MjcxOTIsNiArMjcyMDYsNyBAQAogCQkJCTUzRTI5RTVFMTY3QThBMTkwMDU4NkQzRCAvKiBJbnRl
cm5hbFNldHRpbmdzR2VuZXJhdGVkLmNwcCBpbiBTb3VyY2VzICovLAogCQkJCTQxN0RBNzFEMTM3
MzVERkEwMDdDNTdGQiAvKiBKU0ludGVybmFscy5jcHAgaW4gU291cmNlcyAqLywKIAkJCQlBNzQw
QjVBNzE0QzkzNUFGMDBBNzdGQTQgLyogSlNJbnRlcm5hbFNldHRpbmdzLmNwcCBpbiBTb3VyY2Vz
ICovLAorCQkJCUNCOENGMDFGMUE5NURFNTkwMDBENTEwQiAvKiBNaWNyb1Rhc2tUZXN0LmNwcCBp
biBTb3VyY2VzICovLAogCQkJCTUzRUQzRkRFMTY3QTg4RTcwMDY3NjJFNiAvKiBKU0ludGVybmFs
U2V0dGluZ3NHZW5lcmF0ZWQuY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJQTc0MEI1OTcxNEM5MzVB
RjAwQTc3RkE0IC8qIEpTTWFsbG9jU3RhdGlzdGljcy5jcHAgaW4gU291cmNlcyAqLywKIAkJCQlD
RDUzOTNEMzE3NUUwMTg2MDBDMDcxMjMgLyogSlNNZW1vcnlJbmZvLmNwcCBpbiBTb3VyY2VzICov
LApAQCAtMjk4MjksNiArMjk4NDQsNyBAQAogCQkJCUIyMjI3QTkwMEQwMEJGMjIwMDcxQjc4MiAv
KiBTVkdQb2x5Z29uRWxlbWVudC5jcHAgaW4gU291cmNlcyAqLywKIAkJCQlCMjIyN0E5MzBEMDBC
RjIyMDA3MUI3ODIgLyogU1ZHUG9seWxpbmVFbGVtZW50LmNwcCBpbiBTb3VyY2VzICovLAogCQkJ
CUIyMjI3QTk2MEQwMEJGMjIwMDcxQjc4MiAvKiBTVkdQcmVzZXJ2ZUFzcGVjdFJhdGlvLmNwcCBp
biBTb3VyY2VzICovLAorCQkJCUNCOENGMDE4MUE5MzU4RDQwMDBENTEwQiAvKiBNaWNyb1Rhc2su
Y3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJQjU0M0I4NTcxN0VCNzU4RjAwM0JFOTNBIC8qIFNWR1By
b3BlcnR5SW5mby5jcHAgaW4gU291cmNlcyAqLywKIAkJCQlCMjIyN0E5OTBEMDBCRjIyMDA3MUI3
ODIgLyogU1ZHUmFkaWFsR3JhZGllbnRFbGVtZW50LmNwcCBpbiBTb3VyY2VzICovLAogCQkJCUIy
MjI3QTlEMEQwMEJGMjIwMDcxQjc4MiAvKiBTVkdSZWN0RWxlbWVudC5jcHAgaW4gU291cmNlcyAq
LywKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2RvbS9Eb2N1bWVudC5oIGIvU291cmNlL1dl
YkNvcmUvZG9tL0RvY3VtZW50LmgKaW5kZXggNzZmYjFiNzljY2ViYzQ2ODUxM2FjNTZlYjBiNDM4
MGZmOWYzZDBlMy4uM2QyZjU3ZWI1OTdlODNlODhiMzNjODQyYmRjNzUwNGY2OWM1ODZjYiAxMDA2
NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvZG9tL0RvY3VtZW50LmgKKysrIGIvU291cmNlL1dlYkNv
cmUvZG9tL0RvY3VtZW50LmgKQEAgLTEyNjAsNyArMTI2MCw3IEBAIHB1YmxpYzoKICAgICB2b2lk
IGFkZERpc2FibGVkRmllbGRzZXRFbGVtZW50KCkgeyBtX2Rpc2FibGVkRmllbGRzZXRFbGVtZW50
c0NvdW50Kys7IH0KICAgICB2b2lkIHJlbW92ZURpc2FibGVkRmllbGRzZXRFbGVtZW50KCkgeyBB
U1NFUlQobV9kaXNhYmxlZEZpZWxkc2V0RWxlbWVudHNDb3VudCk7IG1fZGlzYWJsZWRGaWVsZHNl
dEVsZW1lbnRzQ291bnQtLTsgfQogCi0gICAgdmlydHVhbCB2b2lkIGFkZENvbnNvbGVNZXNzYWdl
KE1lc3NhZ2VTb3VyY2UsIE1lc3NhZ2VMZXZlbCwgY29uc3QgU3RyaW5nJiBtZXNzYWdlLCB1bnNp
Z25lZCBsb25nIHJlcXVlc3RJZGVudGlmaWVyID0gMCkgb3ZlcnJpZGUgZmluYWw7CisgICAgV0VC
Q09SRV9FWFBPUlQgdmlydHVhbCB2b2lkIGFkZENvbnNvbGVNZXNzYWdlKE1lc3NhZ2VTb3VyY2Us
IE1lc3NhZ2VMZXZlbCwgY29uc3QgU3RyaW5nJiBtZXNzYWdlLCB1bnNpZ25lZCBsb25nIHJlcXVl
c3RJZGVudGlmaWVyID0gMCkgb3ZlcnJpZGUgZmluYWw7CiAKICAgICBXRUJDT1JFX0VYUE9SVCB2
aXJ0dWFsIFNlY3VyaXR5T3JpZ2luKiB0b3BPcmlnaW4oKSBjb25zdCBvdmVycmlkZSBmaW5hbDsK
IApAQCAtMTI4Niw2ICsxMjg2LDcgQEAgcHVibGljOgogICAgIGJvb2wgaXNQbGF5aW5nQXVkaW8o
KSBjb25zdCB7IHJldHVybiBtX2lzUGxheWluZ0F1ZGlvOyB9CiAgICAgV0VCQ09SRV9FWFBPUlQg
dm9pZCB1cGRhdGVJc1BsYXlpbmdBdWRpbygpOwogICAgIHZvaWQgcGFnZU11dGVkU3RhdGVEaWRD
aGFuZ2UoKTsKKyAgICBXZWFrUHRyPERvY3VtZW50PiBjcmVhdGVXZWFrUHRyKCkgeyByZXR1cm4g
bV93ZWFrRmFjdG9yeS5jcmVhdGVXZWFrUHRyKCk7IH0KIAogcHJvdGVjdGVkOgogICAgIGVudW0g
Q29uc3RydWN0aW9uRmxhZ3MgeyBTeW50aGVzaXplZCA9IDEsIE5vblJlbmRlcmVkUGxhY2Vob2xk
ZXIgPSAxIDw8IDEgfTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2RvbS9NaWNyb1Rhc2su
Y3BwIGIvU291cmNlL1dlYkNvcmUvZG9tL01pY3JvVGFzay5jcHAKbmV3IGZpbGUgbW9kZSAxMDA2
NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uYzc4NmUz
NWE2Zjk3ZmZhNDdmOTYwMmI3M2JjMzI1NmE3NmJjNmUyYgotLS0gL2Rldi9udWxsCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL2RvbS9NaWNyb1Rhc2suY3BwCkBAIC0wLDAgKzEsNTIgQEAKKy8qCisgKiBD
b3B5cmlnaHQgKEMpIDIwMTQgWW9hdiBXZWlzcyAoeW9hdkB5b2F2LndzKQorICogQ29weXJpZ2h0
IChDKSAyMDE1IEFrYW1haSBUZWNobm9sb2dpZXMgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgor
ICoKKyAqIFRoaXMgbGlicmFyeSBpcyBmcmVlIHNvZnR3YXJlOyB5b3UgY2FuIHJlZGlzdHJpYnV0
ZSBpdCBhbmQvb3IKKyAqIG1vZGlmeSBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBMaWJy
YXJ5IEdlbmVyYWwgUHVibGljCisgKiBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieSB0aGUgRnJlZSBT
b2Z0d2FyZSBGb3VuZGF0aW9uOyBlaXRoZXIKKyAqIHZlcnNpb24gMiBvZiB0aGUgTGljZW5zZSwg
b3IgKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KKyAqCisgKiBUaGlzIGxpYnJh
cnkgaXMgZGlzdHJpYnV0ZWQgaW4gdGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCwKKyAq
IGJ1dCBXSVRIT1VUIEFOWSBXQVJSQU5UWTsgd2l0aG91dCBldmVuIHRoZSBpbXBsaWVkIHdhcnJh
bnR5IG9mCisgKiBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBV
UlBPU0UuICBTZWUgdGhlIEdOVQorICogTGlicmFyeSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGZv
ciBtb3JlIGRldGFpbHMuCisgKgorICogWW91IHNob3VsZCBoYXZlIHJlY2VpdmVkIGEgY29weSBv
ZiB0aGUgR05VIExpYnJhcnkgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQorICogYWxvbmcgd2l0aCB0
aGlzIGxpYnJhcnk7IHNlZSB0aGUgZmlsZSBDT1BZSU5HLkxJQi4gIElmIG5vdCwgd3JpdGUgdG8K
KyAqIHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb24sIEluYy4sIDUxIEZyYW5rbGluIFN0cmVl
dCwgRmlmdGggRmxvb3IsCisgKiBCb3N0b24sIE1BIDAyMTEwLTEzMDEsIFVTQS4KKyAqCisgKi8K
KworI2luY2x1ZGUgImNvbmZpZy5oIgorI2luY2x1ZGUgIk1pY3JvVGFzay5oIgorCisjaW5jbHVk
ZSAiRG9jdW1lbnQuaCIKKyNpbmNsdWRlIDx3dGYvdGV4dC9TdHJpbmdCdWlsZGVyLmg+CisKK25h
bWVzcGFjZSBXZWJDb3JlIHsKKworTWljcm9UYXNrUXVldWUmIE1pY3JvVGFza1F1ZXVlOjpzaW5n
bGV0b24oKQoreworICAgIEFTU0VSVChpc01haW5UaHJlYWQoKSk7CisgICAgc3RhdGljIE5ldmVy
RGVzdHJveWVkPE1pY3JvVGFza1F1ZXVlPiBxdWV1ZTsKKyAgICByZXR1cm4gcXVldWU7Cit9CisK
K3ZvaWQgTWljcm9UYXNrUXVldWU6OnF1ZXVlTWljcm9UYXNrKHN0ZDo6dW5pcXVlX3B0cjxNaWNy
b1Rhc2s+IHRhc2spCit7CisgICAgQVNTRVJUKGlzTWFpblRocmVhZCgpKTsKKyAgICBtX21pY3Jv
VGFza1F1ZXVlLmFwcGVuZChXVEY6Om1vdmUodGFzaykpOworfQorCit2b2lkIE1pY3JvVGFza1F1
ZXVlOjpydW5NaWNyb1Rhc2tzKCkKK3sKKyAgICBBU1NFUlQoaXNNYWluVGhyZWFkKCkpOworICAg
IGZvciAoYXV0byYgdGFzayA6IG1fbWljcm9UYXNrUXVldWUpCisgICAgICAgIHRhc2stPnJ1bigp
OworICAgIG1fbWljcm9UYXNrUXVldWUuY2xlYXIoKTsKK30KKworfSAvLyBuYW1lc3BhY2UgV2Vi
Q29yZQorCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9kb20vTWljcm9UYXNrLmggYi9Tb3Vy
Y2UvV2ViQ29yZS9kb20vTWljcm9UYXNrLmgKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uNmVjNDBmMWQ3NDA3Y2JiMzY1
YWIwYTA4OGI4NTRkOGFmNDVlOTBhMgotLS0gL2Rldi9udWxsCisrKyBiL1NvdXJjZS9XZWJDb3Jl
L2RvbS9NaWNyb1Rhc2suaApAQCAtMCwwICsxLDU2IEBACisvKgorICogQ29weXJpZ2h0IChDKSAy
MDE0IFlvYXYgV2Vpc3MgKHlvYXZAeW9hdi53cykKKyAqIENvcHlyaWdodCAoQykgMjAxNSBBa2Ft
YWkgVGVjaG5vbG9naWVzIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAqCisgKiBUaGlzIGxp
YnJhcnkgaXMgZnJlZSBzb2Z0d2FyZTsgeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29yCisg
KiBtb2RpZnkgaXQgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUgTGlicmFyeSBHZW5lcmFsIFB1
YmxpYworICogTGljZW5zZSBhcyBwdWJsaXNoZWQgYnkgdGhlIEZyZWUgU29mdHdhcmUgRm91bmRh
dGlvbjsgZWl0aGVyCisgKiB2ZXJzaW9uIDIgb2YgdGhlIExpY2Vuc2UsIG9yIChhdCB5b3VyIG9w
dGlvbikgYW55IGxhdGVyIHZlcnNpb24uCisgKgorICogVGhpcyBsaWJyYXJ5IGlzIGRpc3RyaWJ1
dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCisgKiBidXQgV0lUSE9VVCBB
TlkgV0FSUkFOVFk7IHdpdGhvdXQgZXZlbiB0aGUgaW1wbGllZCB3YXJyYW50eSBvZgorICogTUVS
Q0hBTlRBQklMSVRZIG9yIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFLiAgU2VlIHRo
ZSBHTlUKKyAqIExpYnJhcnkgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBmb3IgbW9yZSBkZXRhaWxz
LgorICoKKyAqIFlvdSBzaG91bGQgaGF2ZSByZWNlaXZlZCBhIGNvcHkgb2YgdGhlIEdOVSBMaWJy
YXJ5IEdlbmVyYWwgUHVibGljIExpY2Vuc2UKKyAqIGFsb25nIHdpdGggdGhpcyBsaWJyYXJ5OyBz
ZWUgdGhlIGZpbGUgQ09QWUlORy5MSUIuICBJZiBub3QsIHdyaXRlIHRvCisgKiB0aGUgRnJlZSBT
b2Z0d2FyZSBGb3VuZGF0aW9uLCBJbmMuLCA1MSBGcmFua2xpbiBTdHJlZXQsIEZpZnRoIEZsb29y
LAorICogQm9zdG9uLCBNQSAwMjExMC0xMzAxLCBVU0EuCisgKgorICovCisKKyNpZm5kZWYgTWlj
cm9UYXNrX2gKKyNkZWZpbmUgTWljcm9UYXNrX2gKKworI2luY2x1ZGUgPHd0Zi9OZXZlckRlc3Ry
b3llZC5oPgorI2luY2x1ZGUgPHd0Zi9SZWZDb3VudGVkLmg+CisjaW5jbHVkZSA8d3RmL1ZlY3Rv
ci5oPgorCisKK25hbWVzcGFjZSBXZWJDb3JlIHsKKworY2xhc3MgTWljcm9UYXNrIDogcHVibGlj
IFJlZkNvdW50ZWQ8TWljcm9UYXNrPiB7CitwdWJsaWM6CisgICAgdmlydHVhbCB2b2lkIHJ1bigp
ID0gMDsKKyAgICB2aXJ0dWFsIH5NaWNyb1Rhc2soKSB7IH0KK307CisKK2NsYXNzIE1pY3JvVGFz
a1F1ZXVlIHsKKyAgICBmcmllbmQgTmV2ZXJEZXN0cm95ZWQ8TWljcm9UYXNrUXVldWU+OworCitw
dWJsaWM6CisgICAgV0VCQ09SRV9FWFBPUlQgc3RhdGljIE1pY3JvVGFza1F1ZXVlJiBzaW5nbGV0
b24oKTsKKyAgICB+TWljcm9UYXNrUXVldWUoKSB7IH0KKworICAgIFdFQkNPUkVfRVhQT1JUIHZv
aWQgcXVldWVNaWNyb1Rhc2soc3RkOjp1bmlxdWVfcHRyPE1pY3JvVGFzaz4pOworCisgICAgdm9p
ZCBydW5NaWNyb1Rhc2tzKCk7CisKK3ByaXZhdGU6CisgICAgTWljcm9UYXNrUXVldWUoKSB7IH0K
KyAgICBWZWN0b3I8c3RkOjp1bmlxdWVfcHRyPE1pY3JvVGFzaz4+IG1fbWljcm9UYXNrUXVldWU7
Cit9OworCit9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCisKKyNlbmRpZiAvLyBNaWNyb1Rhc2tfaApk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvZG9tL1NjcmlwdFJ1bm5lci5jcHAgYi9Tb3VyY2Uv
V2ViQ29yZS9kb20vU2NyaXB0UnVubmVyLmNwcAppbmRleCBlZDk0ZGEzZTczZGIxMzAxNzhiOTll
YTRiN2Y5MmI1YWMxOTgwOWQ2Li5jNDZiNzhlMGZmZTNjODE4MzYwNDdlY2EzYTA3YWI5Y2VkMTNh
ZjA0IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9kb20vU2NyaXB0UnVubmVyLmNwcAorKysg
Yi9Tb3VyY2UvV2ViQ29yZS9kb20vU2NyaXB0UnVubmVyLmNwcApAQCAtMjgsNiArMjgsNyBAQAog
CiAjaW5jbHVkZSAiQ2FjaGVkU2NyaXB0LmgiCiAjaW5jbHVkZSAiRWxlbWVudC5oIgorI2luY2x1
ZGUgIk1pY3JvVGFzay5oIgogI2luY2x1ZGUgIlBlbmRpbmdTY3JpcHQuaCIKICNpbmNsdWRlICJT
Y3JpcHRFbGVtZW50LmgiCiAKQEAgLTExNiw2ICsxMTcsNyBAQCB2b2lkIFNjcmlwdFJ1bm5lcjo6
dGltZXJGaXJlZCgpCiAgICAgICAgIHRvU2NyaXB0RWxlbWVudElmUG9zc2libGUoZWxlbWVudC5n
ZXQoKSktPmV4ZWN1dGUoY2FjaGVkU2NyaXB0KTsKICAgICAgICAgbV9kb2N1bWVudC5kZWNyZW1l
bnRMb2FkRXZlbnREZWxheUNvdW50KCk7CiAgICAgfQorICAgIE1pY3JvVGFza1F1ZXVlOjpzaW5n
bGV0b24oKS5ydW5NaWNyb1Rhc2tzKCk7CiB9CiAKIH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJD
b3JlL2h0bWwvcGFyc2VyL0hUTUxTY3JpcHRSdW5uZXIuY3BwIGIvU291cmNlL1dlYkNvcmUvaHRt
bC9wYXJzZXIvSFRNTFNjcmlwdFJ1bm5lci5jcHAKaW5kZXggNDFlNzI1ZjYwZGU4NjgxZjFjZjhk
YjRiNWM5OGFkYjYyNjIyZjIxYi4uMjdkZDY3MzgyYTYwMGZjMDMzODUyZWM5MDI5MjAxNjkyZDE0
M2RlZCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvaHRtbC9wYXJzZXIvSFRNTFNjcmlwdFJ1
bm5lci5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvaHRtbC9wYXJzZXIvSFRNTFNjcmlwdFJ1bm5l
ci5jcHAKQEAgLTM2LDYgKzM2LDcgQEAKICNpbmNsdWRlICJIVE1MTmFtZXMuaCIKICNpbmNsdWRl
ICJIVE1MU2NyaXB0UnVubmVySG9zdC5oIgogI2luY2x1ZGUgIklnbm9yZURlc3RydWN0aXZlV3Jp
dGVDb3VudEluY3JlbWVudGVyLmgiCisjaW5jbHVkZSAiTWljcm9UYXNrLmgiCiAjaW5jbHVkZSAi
TXV0YXRpb25PYnNlcnZlci5oIgogI2luY2x1ZGUgIk5lc3RpbmdMZXZlbEluY3JlbWVudGVyLmgi
CiAjaW5jbHVkZSAiTm90SW1wbGVtZW50ZWQuaCIKQEAgLTEyOSw4ICsxMzAsMTAgQEAgdm9pZCBI
VE1MU2NyaXB0UnVubmVyOjpleGVjdXRlUGVuZGluZ1NjcmlwdEFuZERpc3BhdGNoRXZlbnQoUGVu
ZGluZ1NjcmlwdCYgcGVuZGkKICAgICBpZiAocGVuZGluZ1NjcmlwdC5jYWNoZWRTY3JpcHQoKSAm
JiBwZW5kaW5nU2NyaXB0LndhdGNoaW5nRm9yTG9hZCgpKQogICAgICAgICBzdG9wV2F0Y2hpbmdG
b3JMb2FkKHBlbmRpbmdTY3JpcHQpOwogCi0gICAgaWYgKCFpc0V4ZWN1dGluZ1NjcmlwdCgpKQor
ICAgIGlmICghaXNFeGVjdXRpbmdTY3JpcHQoKSkgewogICAgICAgICBNdXRhdGlvbk9ic2VydmVy
OjpkZWxpdmVyQWxsTXV0YXRpb25zKCk7CisgICAgICAgIE1pY3JvVGFza1F1ZXVlOjpzaW5nbGV0
b24oKS5ydW5NaWNyb1Rhc2tzKCk7CisgICAgfQogCiAgICAgLy8gQ2xlYXIgdGhlIHBlbmRpbmcg
c2NyaXB0IGJlZm9yZSBwb3NzaWJsZSByZW50cmFuY3kgZnJvbSBleGVjdXRlU2NyaXB0KCkKICAg
ICBSZWZQdHI8RWxlbWVudD4gZWxlbWVudCA9IHBlbmRpbmdTY3JpcHQucmVsZWFzZUVsZW1lbnRB
bmRDbGVhcigpOwpAQCAtMjMxLDYgKzIzNCw4IEBAIGJvb2wgSFRNTFNjcmlwdFJ1bm5lcjo6ZXhl
Y3V0ZVNjcmlwdHNXYWl0aW5nRm9yUGFyc2luZygpCiAgICAgICAgIGlmICghbV9kb2N1bWVudCkK
ICAgICAgICAgICAgIHJldHVybiBmYWxzZTsKICAgICB9CisgICAgaWYgKCFpc0V4ZWN1dGluZ1Nj
cmlwdCgpKQorICAgICAgICBNaWNyb1Rhc2tRdWV1ZTo6c2luZ2xldG9uKCkucnVuTWljcm9UYXNr
cygpOwogICAgIHJldHVybiB0cnVlOwogfQogCkBAIC0yOTMsOCArMjk4LDEwIEBAIHZvaWQgSFRN
TFNjcmlwdFJ1bm5lcjo6cnVuU2NyaXB0KEVsZW1lbnQqIHNjcmlwdCwgY29uc3QgVGV4dFBvc2l0
aW9uJiBzY3JpcHRTdGFyCiAgICAgICAgIC8vIGV2ZXJ5IHNjcmlwdCBlbGVtZW50LCBldmVuIGlm
IGl0J3Mgbm90IHJlYWR5IHRvIGV4ZWN1dGUgeWV0LiBUaGVyZSdzCiAgICAgICAgIC8vIHVuZm9y
dHVhbnRlbHkgbm8gb2J2aW91cyB3YXkgdG8gdGVsbCBpZiBwcmVwYXJlU2NyaXB0IGlzIGdvaW5n
IHRvCiAgICAgICAgIC8vIGV4ZWN1dGUgdGhlIHNjcmlwdCBmcm9tIG91dCBoZXJlLgotICAgICAg
ICBpZiAoIWlzRXhlY3V0aW5nU2NyaXB0KCkpCisgICAgICAgIGlmICghaXNFeGVjdXRpbmdTY3Jp
cHQoKSkgewogICAgICAgICAgICAgTXV0YXRpb25PYnNlcnZlcjo6ZGVsaXZlckFsbE11dGF0aW9u
cygpOworICAgICAgICAgICAgTWljcm9UYXNrUXVldWU6OnNpbmdsZXRvbigpLnJ1bk1pY3JvVGFz
a3MoKTsKKyAgICAgICAgfQogCiAgICAgICAgIEluc2VydGlvblBvaW50UmVjb3JkIGluc2VydGlv
blBvaW50UmVjb3JkKG1faG9zdC5pbnB1dFN0cmVhbSgpKTsKICAgICAgICAgTmVzdGluZ0xldmVs
SW5jcmVtZW50ZXIgbmVzdGluZ0xldmVsSW5jcmVtZW50ZXIobV9zY3JpcHROZXN0aW5nTGV2ZWwp
OwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvdGVzdGluZy9JbnRlcm5hbHMuY3BwIGIvU291
cmNlL1dlYkNvcmUvdGVzdGluZy9JbnRlcm5hbHMuY3BwCmluZGV4IDEwYmEzY2RhNjYyZTMwZTdl
MWQxNzVkZGI5Yjk3Yzg0Yjk5YzI5YmUuLmEzMzgxNGJhNGYyNDkyNDdiNWQ0YjgxYWFjN2MzOTY5
OTBjMDJmODMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3Rlc3RpbmcvSW50ZXJuYWxzLmNw
cAorKysgYi9Tb3VyY2UvV2ViQ29yZS90ZXN0aW5nL0ludGVybmFscy5jcHAKQEAgLTc4LDYgKzc4
LDggQEAKICNpbmNsdWRlICJNZWRpYVNlc3Npb25NYW5hZ2VyLmgiCiAjaW5jbHVkZSAiTWVtb3J5
Q2FjaGUuaCIKICNpbmNsdWRlICJNZW1vcnlJbmZvLmgiCisjaW5jbHVkZSAiTWljcm9UYXNrLmgi
CisjaW5jbHVkZSAiTWljcm9UYXNrVGVzdC5oIgogI2luY2x1ZGUgIk1vY2tQYWdlT3ZlcmxheUNs
aWVudC5oIgogI2luY2x1ZGUgIlBhZ2UuaCIKICNpbmNsdWRlICJQYWdlT3ZlcmxheS5oIgpAQCAt
MjUwMyw0ICsyNTA1LDEwIEBAIGJvb2wgSW50ZXJuYWxzOjppc1BhZ2VQbGF5aW5nQXVkaW8oKQog
ICAgIHJldHVybiBkb2N1bWVudC0+cGFnZSgpLT5pc1BsYXlpbmdBdWRpbygpOwogfQogCit2b2lk
IEludGVybmFsczo6cXVldWVNaWNyb1Rhc2soaW50IHRlc3ROdW1iZXIpCit7CisgICAgaWYgKGNv
bnRleHREb2N1bWVudCgpKQorICAgICAgICBNaWNyb1Rhc2tRdWV1ZTo6c2luZ2xldG9uKCkucXVl
dWVNaWNyb1Rhc2soTWljcm9UYXNrVGVzdDo6Y3JlYXRlKGNvbnRleHREb2N1bWVudCgpLT5jcmVh
dGVXZWFrUHRyKCksIHRlc3ROdW1iZXIpKTsKK30KKwogfQpkaWZmIC0tZ2l0IGEvU291cmNlL1dl
YkNvcmUvdGVzdGluZy9JbnRlcm5hbHMuaCBiL1NvdXJjZS9XZWJDb3JlL3Rlc3RpbmcvSW50ZXJu
YWxzLmgKaW5kZXggMDlhNDQ5ZDcyYjI1ZmZkMzVjZTAwMWRmOTQ1ZWVkMGU5YzJmMjJmYi4uODg0
YzczNjFkZmE1NTE2NmIwNDg1MWVmMDk1NjVkNTExMTA1ZDRhMiAxMDA2NDQKLS0tIGEvU291cmNl
L1dlYkNvcmUvdGVzdGluZy9JbnRlcm5hbHMuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS90ZXN0aW5n
L0ludGVybmFscy5oCkBAIC0zNjEsNiArMzYxLDggQEAgcHVibGljOgogICAgIHZvaWQgc2V0UGFn
ZU11dGVkKGJvb2wpOwogICAgIGJvb2wgaXNQYWdlUGxheWluZ0F1ZGlvKCk7CiAKKyAgICB2b2lk
IHF1ZXVlTWljcm9UYXNrKGludCk7CisKIHByaXZhdGU6CiAgICAgZXhwbGljaXQgSW50ZXJuYWxz
KERvY3VtZW50Kik7CiAgICAgRG9jdW1lbnQqIGNvbnRleHREb2N1bWVudCgpIGNvbnN0OwpkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvdGVzdGluZy9JbnRlcm5hbHMuaWRsIGIvU291cmNlL1dl
YkNvcmUvdGVzdGluZy9JbnRlcm5hbHMuaWRsCmluZGV4IGRjMmFkNTllYzdlNzE3MTUyOGMwODU3
NDBjNjdkY2I2NjU1NGQyN2MuLjJiNjNiNGZmYjZmOWFlOGYwZGQxODIwZTM5M2MxYWY3MTg1YjI0
MjEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3Rlc3RpbmcvSW50ZXJuYWxzLmlkbAorKysg
Yi9Tb3VyY2UvV2ViQ29yZS90ZXN0aW5nL0ludGVybmFscy5pZGwKQEAgLTMxNyw0ICszMTcsNSBA
QCBlbnVtIFBhZ2VPdmVybGF5VHlwZSB7CiAKICAgICB2b2lkIHNldFBhZ2VNdXRlZChib29sZWFu
IG11dGVkKTsKICAgICBib29sZWFuIGlzUGFnZVBsYXlpbmdBdWRpbygpOworICAgIHZvaWQgcXVl
dWVNaWNyb1Rhc2sobG9uZyB0ZXN0TnVtYmVyKTsKIH07CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
Q29yZS90ZXN0aW5nL01pY3JvVGFza1Rlc3QuY3BwIGIvU291cmNlL1dlYkNvcmUvdGVzdGluZy9N
aWNyb1Rhc2tUZXN0LmNwcApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi40MTNmMmZkYTgzYmNmN2Y0Y2NhYzY2ZGMwOWNj
NWU2ZjNkODRiMWFiCi0tLSAvZGV2L251bGwKKysrIGIvU291cmNlL1dlYkNvcmUvdGVzdGluZy9N
aWNyb1Rhc2tUZXN0LmNwcApAQCAtMCwwICsxLDQzIEBACisvKgorICogQ29weXJpZ2h0IChDKSAy
MDE1IEFrYW1haSBUZWNobm9sb2dpZXMgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICoKKyAq
IFRoaXMgbGlicmFyeSBpcyBmcmVlIHNvZnR3YXJlOyB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBh
bmQvb3IKKyAqIG1vZGlmeSBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBMaWJyYXJ5IEdl
bmVyYWwgUHVibGljCisgKiBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieSB0aGUgRnJlZSBTb2Z0d2Fy
ZSBGb3VuZGF0aW9uOyBlaXRoZXIKKyAqIHZlcnNpb24gMiBvZiB0aGUgTGljZW5zZSwgb3IgKGF0
IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KKyAqCisgKiBUaGlzIGxpYnJhcnkgaXMg
ZGlzdHJpYnV0ZWQgaW4gdGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCwKKyAqIGJ1dCBX
SVRIT1VUIEFOWSBXQVJSQU5UWTsgd2l0aG91dCBldmVuIHRoZSBpbXBsaWVkIHdhcnJhbnR5IG9m
CisgKiBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0Uu
ICBTZWUgdGhlIEdOVQorICogTGlicmFyeSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGZvciBtb3Jl
IGRldGFpbHMuCisgKgorICogWW91IHNob3VsZCBoYXZlIHJlY2VpdmVkIGEgY29weSBvZiB0aGUg
R05VIExpYnJhcnkgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQorICogYWxvbmcgd2l0aCB0aGlzIGxp
YnJhcnk7IHNlZSB0aGUgZmlsZSBDT1BZSU5HLkxJQi4gIElmIG5vdCwgd3JpdGUgdG8KKyAqIHRo
ZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb24sIEluYy4sIDUxIEZyYW5rbGluIFN0cmVldCwgRmlm
dGggRmxvb3IsCisgKiBCb3N0b24sIE1BIDAyMTEwLTEzMDEsIFVTQS4KKyAqCisgKi8KKworI2lu
Y2x1ZGUgImNvbmZpZy5oIgorI2luY2x1ZGUgIk1pY3JvVGFza1Rlc3QuaCIKKworI2luY2x1ZGUg
IkRvY3VtZW50LmgiCisKK25hbWVzcGFjZSBXZWJDb3JlIHsKKwordm9pZCBNaWNyb1Rhc2tUZXN0
OjpydW4oKQoreworICAgIFN0cmluZ0J1aWxkZXIgbWVzc2FnZTsKKyAgICBtZXNzYWdlLmFwcGVu
ZCgiTWljcm9UYXNrICMiKTsKKyAgICBtZXNzYWdlLmFwcGVuZChTdHJpbmc6Om51bWJlcihtX3Rl
c3ROdW1iZXIpKTsKKyAgICBtZXNzYWdlLmFwcGVuZCgiIGhhcyBydW4uIik7CisgICAgaWYgKG1f
ZG9jdW1lbnQpCisgICAgICAgIG1fZG9jdW1lbnQtPmFkZENvbnNvbGVNZXNzYWdlKE1lc3NhZ2VT
b3VyY2U6OkpTLCBNZXNzYWdlTGV2ZWw6OkRlYnVnLCBtZXNzYWdlLnRvU3RyaW5nKCkpOworfQor
CitzdGQ6OnVuaXF1ZV9wdHI8TWljcm9UYXNrVGVzdD4gTWljcm9UYXNrVGVzdDo6Y3JlYXRlKFdl
YWtQdHI8RG9jdW1lbnQ+IGRvY3VtZW50LCBpbnQgdGVzdE51bWJlcikKK3sKKyAgICByZXR1cm4g
c3RkOjp1bmlxdWVfcHRyPE1pY3JvVGFza1Rlc3Q+KG5ldyBNaWNyb1Rhc2tUZXN0KGRvY3VtZW50
LCB0ZXN0TnVtYmVyKSk7Cit9CisKK30gLy8gbmFtZXNwYWNlIFdlYkNvcmUKZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJDb3JlL3Rlc3RpbmcvTWljcm9UYXNrVGVzdC5oIGIvU291cmNlL1dlYkNvcmUv
dGVzdGluZy9NaWNyb1Rhc2tUZXN0LmgKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uMGY1YjJjN2YyNDk1NWQ4OTRjMjBj
OGVjOTFhOWY4MTkyODI0YjBiYQotLS0gL2Rldi9udWxsCisrKyBiL1NvdXJjZS9XZWJDb3JlL3Rl
c3RpbmcvTWljcm9UYXNrVGVzdC5oCkBAIC0wLDAgKzEsNDkgQEAKKy8qCisgKiBDb3B5cmlnaHQg
KEMpIDIwMTUgQWthbWFpIFRlY2hub2xvZ2llcyBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisg
KgorICogVGhpcyBsaWJyYXJ5IGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRl
IGl0IGFuZC9vcgorICogbW9kaWZ5IGl0IHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05VIExpYnJh
cnkgR2VuZXJhbCBQdWJsaWMKKyAqIExpY2Vuc2UgYXMgcHVibGlzaGVkIGJ5IHRoZSBGcmVlIFNv
ZnR3YXJlIEZvdW5kYXRpb247IGVpdGhlcgorICogdmVyc2lvbiAyIG9mIHRoZSBMaWNlbnNlLCBv
ciAoYXQgeW91ciBvcHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLgorICoKKyAqIFRoaXMgbGlicmFy
eSBpcyBkaXN0cmlidXRlZCBpbiB0aGUgaG9wZSB0aGF0IGl0IHdpbGwgYmUgdXNlZnVsLAorICog
YnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFu
dHkgb2YKKyAqIE1FUkNIQU5UQUJJTElUWSBvciBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVS
UE9TRS4gIFNlZSB0aGUgR05VCisgKiBMaWJyYXJ5IEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9y
IG1vcmUgZGV0YWlscy4KKyAqCisgKiBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9m
IHRoZSBHTlUgTGlicmFyeSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlCisgKiBhbG9uZyB3aXRoIHRo
aXMgbGlicmFyeTsgc2VlIHRoZSBmaWxlIENPUFlJTkcuTElCLiAgSWYgbm90LCB3cml0ZSB0bwor
ICogdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbiwgSW5jLiwgNTEgRnJhbmtsaW4gU3RyZWV0
LCBGaWZ0aCBGbG9vciwKKyAqIEJvc3RvbiwgTUEgMDIxMTAtMTMwMSwgVVNBLgorICoKKyAqLwor
CisjaWZuZGVmIE1pY3JvVGFza1Rlc3RfaAorI2RlZmluZSBNaWNyb1Rhc2tUZXN0X2gKKworI2lu
Y2x1ZGUgIk1pY3JvVGFzay5oIgorI2luY2x1ZGUgPHd0Zi9XZWFrUHRyLmg+CisKK25hbWVzcGFj
ZSBXZWJDb3JlIHsKKworY2xhc3MgRG9jdW1lbnQ7CisKK2NsYXNzIE1pY3JvVGFza1Rlc3QgOiBw
dWJsaWMgTWljcm9UYXNrIHsKK3B1YmxpYzoKKyAgICB2aXJ0dWFsIHZvaWQgcnVuKCkgb3ZlcnJp
ZGU7CisgICAgV0VCQ09SRV9FWFBPUlQgc3RhdGljIHN0ZDo6dW5pcXVlX3B0cjxNaWNyb1Rhc2tU
ZXN0PiBjcmVhdGUoV2Vha1B0cjxEb2N1bWVudD4sIGludCB0ZXN0TnVtYmVyKTsKKworcHJpdmF0
ZToKKyAgICBNaWNyb1Rhc2tUZXN0KFdlYWtQdHI8RG9jdW1lbnQ+IGRvY3VtZW50LCBpbnQgdGVz
dE51bWJlcikKKyAgICAgICAgOiBtX2RvY3VtZW50KGRvY3VtZW50KQorICAgICAgICAsIG1fdGVz
dE51bWJlcih0ZXN0TnVtYmVyKQorICAgIHsKKyAgICB9CisKKyAgICBXZWFrUHRyPERvY3VtZW50
PiBtX2RvY3VtZW50OworICAgIGludCBtX3Rlc3ROdW1iZXI7Cit9OworCit9IC8vIG5hbWVzcGFj
ZSBXZWJDb3JlCisKKyNlbmRpZgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9XZWJLaXQudmN4
cHJvai9XZWJLaXRFeHBvcnRHZW5lcmF0b3IvV2ViS2l0RXhwb3J0cy5kZWYuaW4gYi9Tb3VyY2Uv
V2ViS2l0L1dlYktpdC52Y3hwcm9qL1dlYktpdEV4cG9ydEdlbmVyYXRvci9XZWJLaXRFeHBvcnRz
LmRlZi5pbgppbmRleCBkMzEyNGMwN2EzNzU1NGExMWRiNjk0YzE4MjRjNGI1NDk4ZWYzMGM3Li40
Njc3ZGNhYzNmMTY0OGQ0NTNkYTk5YTE0ODk5NTJmYzUzYWNkMjJiIDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViS2l0L1dlYktpdC52Y3hwcm9qL1dlYktpdEV4cG9ydEdlbmVyYXRvci9XZWJLaXRFeHBv
cnRzLmRlZi5pbgorKysgYi9Tb3VyY2UvV2ViS2l0L1dlYktpdC52Y3hwcm9qL1dlYktpdEV4cG9y
dEdlbmVyYXRvci9XZWJLaXRFeHBvcnRzLmRlZi5pbgpAQCAtNDc5LDYgKzQ3OSw5IEBAIEVYUE9S
VFMKICAgICAgICAgc3ltYm9sV2l0aFBvaW50ZXIoP3Jlc291cmNlRm9yVVJMQE1lbW9yeUNhY2hl
QFdlYkNvcmVAQFFBRVBBVkNhY2hlZFJlc291cmNlQDJAQUJWVVJMQDJAVlNlc3Npb25JREAyQEBa
LCA/cmVzb3VyY2VGb3JVUkxATWVtb3J5Q2FjaGVAV2ViQ29yZUBAUUVBQVBFQVZDYWNoZWRSZXNv
dXJjZUAyQEFFQlZVUkxAMkBWU2Vzc2lvbklEQDJAQFopCiAgICAgICAgIHN5bWJvbFdpdGhQb2lu
dGVyKD9yZWZAQ1NTQ29tcHV0ZWRTdHlsZURlY2xhcmF0aW9uQFdlYkNvcmVAQFVBRVhYWiwgP3Jl
ZkBDU1NDb21wdXRlZFN0eWxlRGVjbGFyYXRpb25AV2ViQ29yZUBAVUVBQVhYWikKICAgICAgICAg
c3ltYm9sV2l0aFBvaW50ZXIoP2RlcmVmQENTU0NvbXB1dGVkU3R5bGVEZWNsYXJhdGlvbkBXZWJD
b3JlQEBVQUVYWFosID9kZXJlZkBDU1NDb21wdXRlZFN0eWxlRGVjbGFyYXRpb25AV2ViQ29yZUBA
VUVBQVhYWikKKyAgICAgICAgc3ltYm9sV2l0aFBvaW50ZXIoP3NpbmdsZXRvbkBNaWNyb1Rhc2tR
dWV1ZUBXZWJDb3JlQEBTQUFBVjEyQFhaLCA/c2luZ2xldG9uQE1pY3JvVGFza1F1ZXVlQFdlYkNv
cmVAQFNBQUFWMTJAWFopCisgICAgICAgIHN5bWJvbFdpdGhQb2ludGVyKD9xdWV1ZU1pY3JvVGFz
a0BNaWNyb1Rhc2tRdWV1ZUBXZWJDb3JlQEBRQUVYVj8kdW5pcXVlX3B0ckBWTWljcm9UYXNrQFdl
YkNvcmVAQFU/JGRlZmF1bHRfZGVsZXRlQFZNaWNyb1Rhc2tAV2ViQ29yZUBAQHN0ZEBAQHN0ZEBA
QFosID9xdWV1ZU1pY3JvVGFza0BNaWNyb1Rhc2tRdWV1ZUBXZWJDb3JlQEBRQUVYVj8kdW5pcXVl
X3B0ckBWTWljcm9UYXNrQFdlYkNvcmVAQFU/JGRlZmF1bHRfZGVsZXRlQFZNaWNyb1Rhc2tAV2Vi
Q29yZUBAQHN0ZEBAQHN0ZEBAQFopCisgICAgICAgIHN5bWJvbFdpdGhQb2ludGVyKD9hZGRDb25z
b2xlTWVzc2FnZUBEb2N1bWVudEBXZWJDb3JlQEBVQUVYVzRNZXNzYWdlU291cmNlQEpTQ0BAVzRN
ZXNzYWdlTGV2ZWxANEBBQlZTdHJpbmdAV1RGQEBLQFosID9hZGRDb25zb2xlTWVzc2FnZUBEb2N1
bWVudEBXZWJDb3JlQEBVQUVYVzRNZXNzYWdlU291cmNlQEpTQ0BAVzRNZXNzYWdlTGV2ZWxANEBB
QlZTdHJpbmdAV1RGQEBLQFopCiAjaWYgIUNQVShYODZfNjQpCiAgICAgICAgID9pc0FQSVZhbHVl
V3JhcHBlckBKU0NlbGxASlNDQEBRQkVfTlhaCiAjZW5kaWYKZGlmZiAtLWdpdCBhL0xheW91dFRl
c3RzL0NoYW5nZUxvZyBiL0xheW91dFRlc3RzL0NoYW5nZUxvZwppbmRleCBjZmE3NDFmZDQzMTA4
NDdkMGUwMTMzMTZmMGFhNGQ0MGE3Mzc5MGIyLi40MzgxYTg0ZTdkMjRkMmIzMzUzYjYyYzk3ZTNk
MzYzNDM2MzliMzk1IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKKysrIGIvTGF5
b3V0VGVzdHMvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTkgQEAKKzIwMTUtMDItMTkgIFlvYXYgV2Vp
c3MgIDx5b2F2QHlvYXYud3M+CisKKyAgICAgICAgQWRkIGEgbWljcm90YXNrIGFic3RyYWN0aW9u
CisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xMzc0OTYK
KworICAgICAgICBSZXZpZXdlZCBieSBTYW0gV2VpbmlnLgorCisgICAgICAgIEFkZGluZyBhIHRl
c3QgZm9yIG1pY3JvdGFzayBhYnN0cmFjdGlvbi4KKworICAgICAgICAqIGZhc3QvZG9tL21pY3Jv
dGFzay1kZXRhY2guaHRtbDogQWRkZWQuCisgICAgICAgICogZmFzdC9kb20vbWljcm90YXNrLWRl
dGFjaC1leHBlY3RlZC50eHQ6IEFkZGVkLgorICAgICAgICAqIGZhc3QvZG9tL21pY3JvdGFzay1p
bm9yZGVyLmh0bWw6IEFkZGVkLgorICAgICAgICAqIGZhc3QvZG9tL21pY3JvdGFzay1pbm9yZGVy
LWV4cGVjdGVkLnR4dDogQWRkZWQuCisgICAgICAgICogZmFzdC9kb20vbWljcm90YXNrLXJldmVy
c2UuaHRtbDogQWRkZWQuCisgICAgICAgICogZmFzdC9kb20vbWljcm90YXNrLXJldmVyc2UtZXhw
ZWN0ZWQudHh0OiBBZGRlZC4KKwogMjAxNS0wMi0xNiAgU2VyZ2lvIFZpbGxhciBTZW5pbiAgPHN2
aWxsYXJAaWdhbGlhLmNvbT4KIAogICAgICAgICBVbnJldmlld2VkLiBVcGxvYWRpbmcgYSBuZXcg
dGVzdCB0aGF0IHNob3VsZCBoYXZlIGJlZW4gdXBsb2FkZWQgYXMKZGlmZiAtLWdpdCBhL0xheW91
dFRlc3RzL2Zhc3QvZG9tL21pY3JvdGFzay1kZXRhY2gtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVz
dHMvZmFzdC9kb20vbWljcm90YXNrLWRldGFjaC1leHBlY3RlZC50eHQKbmV3IGZpbGUgbW9kZSAx
MDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uMjhj
ZDI5NTY4ZTIwZjZlZTRkYmQ5YTQxY2I2Zjg2YzQ4MjdmOTE2MQotLS0gL2Rldi9udWxsCisrKyBi
L0xheW91dFRlc3RzL2Zhc3QvZG9tL21pY3JvdGFzay1kZXRhY2gtZXhwZWN0ZWQudHh0CkBAIC0w
LDAgKzEsOSBAQAorQ09OU09MRSBNRVNTQUdFOiBsaW5lIDMxOiBGaW5pc2hlZCBxdWV1ZWluZyB0
ZXN0cy4KK0NPTlNPTEUgTUVTU0FHRTogTWljcm9UYXNrICMxIGhhcyBydW4uCitDT05TT0xFIE1F
U1NBR0U6IE1pY3JvVGFzayAjMCBoYXMgcnVuLgorCisKKy0tLS0tLS0tCitGcmFtZTogJ2ZyYW1l
MScKKy0tLS0tLS0tCisKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3QvZG9tL21pY3JvdGFz
ay1kZXRhY2guaHRtbCBiL0xheW91dFRlc3RzL2Zhc3QvZG9tL21pY3JvdGFzay1kZXRhY2guaHRt
bApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwLi44OTc3NzMyN2VhNTczMTU1ZmJiNjZkYTI2ZDI3OTA0NWJmMWZjYTRkCi0t
LSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC9kb20vbWljcm90YXNrLWRldGFjaC5o
dG1sCkBAIC0wLDAgKzEsMzcgQEAKKzwhRE9DVFlQRSBodG1sPgorPHNjcmlwdD4KK2lmICh3aW5k
b3cudGVzdFJ1bm5lcikgeworICAgIHRlc3RSdW5uZXIuZHVtcEFzVGV4dCgpOworICAgIHRlc3RS
dW5uZXIuZHVtcENoaWxkRnJhbWVzQXNUZXh0KCk7CisgICAgdGVzdFJ1bm5lci53YWl0VW50aWxE
b25lKCk7Cit9Cis8L3NjcmlwdD4KKzxib2R5PgorPGlmcmFtZSBpZD0iZnJhbWUxIj48L2lmcmFt
ZT4KKzxpZnJhbWUgaWQ9ImZyYW1lMiI+PC9pZnJhbWU+Cis8c2NyaXB0PgorCisoZnVuY3Rpb24o
KSB7CisgICAgdmFyIGlmcmFtZTEgPSBkb2N1bWVudC5xdWVyeVNlbGVjdG9yKCIjZnJhbWUxIiku
Y29udGVudFdpbmRvdzsKKyAgICB2YXIgaWZyYW1lMk5vZGUgPSBkb2N1bWVudC5xdWVyeVNlbGVj
dG9yKCIjZnJhbWUyIik7CisgICAgdmFyIGlmcmFtZTIgPSBpZnJhbWUyTm9kZS5jb250ZW50V2lu
ZG93OworCisgICAgaWYoaWZyYW1lMi5pbnRlcm5hbHMpCisgICAgICAgIGlmcmFtZTIuaW50ZXJu
YWxzLnF1ZXVlTWljcm9UYXNrKDIpOworICAgIGlmKGlmcmFtZTEuaW50ZXJuYWxzKQorICAgICAg
ICBpZnJhbWUxLmludGVybmFscy5xdWV1ZU1pY3JvVGFzaygxKTsKKyAgICBpZih3aW5kb3cuaW50
ZXJuYWxzKQorICAgICAgICBpbnRlcm5hbHMucXVldWVNaWNyb1Rhc2soMCk7CisgICAgZG9jdW1l
bnQuYm9keS5yZW1vdmVDaGlsZChpZnJhbWUyTm9kZSk7Cit9KCkpOworCitpZiAod2luZG93LkdD
Q29udHJvbGxlcikKKyAgICBHQ0NvbnRyb2xsZXIuY29sbGVjdCgpOworCitjb25zb2xlLmxvZygi
RmluaXNoZWQgcXVldWVpbmcgdGVzdHMuIik7CityZXF1ZXN0QW5pbWF0aW9uRnJhbWUoZnVuY3Rp
b24oKSB7CisgICAgaWYgKHdpbmRvdy50ZXN0UnVubmVyKQorICAgICAgICB0ZXN0UnVubmVyLm5v
dGlmeURvbmUoKTsKK30pOworPC9zY3JpcHQ+Cis8L2JvZHk+CmRpZmYgLS1naXQgYS9MYXlvdXRU
ZXN0cy9mYXN0L2RvbS9taWNyb3Rhc2staW5vcmRlci1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0
cy9mYXN0L2RvbS9taWNyb3Rhc2staW5vcmRlci1leHBlY3RlZC50eHQKbmV3IGZpbGUgbW9kZSAx
MDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uMDM4
MGI5NGM3YzgxODNhNjk2ZTFhYjIyNjk5ZWFjYWZjZDNkZDM3MwotLS0gL2Rldi9udWxsCisrKyBi
L0xheW91dFRlc3RzL2Zhc3QvZG9tL21pY3JvdGFzay1pbm9yZGVyLWV4cGVjdGVkLnR4dApAQCAt
MCwwICsxLDE1IEBACitDT05TT0xFIE1FU1NBR0U6IGxpbmUgMjM6IEZpbmlzaGVkIHF1ZXVlaW5n
IHRlc3RzLgorQ09OU09MRSBNRVNTQUdFOiBNaWNyb1Rhc2sgIzIgaGFzIHJ1bi4KK0NPTlNPTEUg
TUVTU0FHRTogTWljcm9UYXNrICMxIGhhcyBydW4uCitDT05TT0xFIE1FU1NBR0U6IE1pY3JvVGFz
ayAjMCBoYXMgcnVuLgorIAorCistLS0tLS0tLQorRnJhbWU6ICdmcmFtZTEnCistLS0tLS0tLQor
CisKKy0tLS0tLS0tCitGcmFtZTogJ2ZyYW1lMicKKy0tLS0tLS0tCisKZGlmZiAtLWdpdCBhL0xh
eW91dFRlc3RzL2Zhc3QvZG9tL21pY3JvdGFzay1pbm9yZGVyLmh0bWwgYi9MYXlvdXRUZXN0cy9m
YXN0L2RvbS9taWNyb3Rhc2staW5vcmRlci5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4
IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjc5YzhlMmY3ODk4M2Ez
ZTY4NWVhYzE1NTA5NTYxMDExZTg2MWY5YTkKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0
cy9mYXN0L2RvbS9taWNyb3Rhc2staW5vcmRlci5odG1sCkBAIC0wLDAgKzEsMjggQEAKKzwhRE9D
VFlQRSBodG1sPgorPHNjcmlwdD4KK2lmICh3aW5kb3cudGVzdFJ1bm5lcikgeworICAgIHRlc3RS
dW5uZXIuZHVtcEFzVGV4dCgpOworICAgIHRlc3RSdW5uZXIuZHVtcENoaWxkRnJhbWVzQXNUZXh0
KCk7CisgICAgdGVzdFJ1bm5lci53YWl0VW50aWxEb25lKCk7Cit9Cis8L3NjcmlwdD4KKzxpZnJh
bWUgaWQ9ImZyYW1lMSI+PC9pZnJhbWU+Cis8aWZyYW1lIGlkPSJmcmFtZTIiPjwvaWZyYW1lPgor
PHNjcmlwdD4KKwordmFyIGlmcmFtZTEgPSBkb2N1bWVudC5xdWVyeVNlbGVjdG9yKCIjZnJhbWUx
IikuY29udGVudFdpbmRvdzsKK3ZhciBpZnJhbWUyID0gZG9jdW1lbnQucXVlcnlTZWxlY3Rvcigi
I2ZyYW1lMiIpLmNvbnRlbnRXaW5kb3c7CisKK2lmKGlmcmFtZTIuaW50ZXJuYWxzKQorICAgIGlm
cmFtZTIuaW50ZXJuYWxzLnF1ZXVlTWljcm9UYXNrKDIpOworaWYoaWZyYW1lMS5pbnRlcm5hbHMp
CisgICAgaWZyYW1lMS5pbnRlcm5hbHMucXVldWVNaWNyb1Rhc2soMSk7CitpZih3aW5kb3cuaW50
ZXJuYWxzKQorICAgIGludGVybmFscy5xdWV1ZU1pY3JvVGFzaygwKTsKKworY29uc29sZS5sb2co
IkZpbmlzaGVkIHF1ZXVlaW5nIHRlc3RzLiIpOworcmVxdWVzdEFuaW1hdGlvbkZyYW1lKGZ1bmN0
aW9uKCkgeworICAgIGlmICh3aW5kb3cudGVzdFJ1bm5lcikKKyAgICAgICAgdGVzdFJ1bm5lci5u
b3RpZnlEb25lKCk7Cit9KTsKKzwvc2NyaXB0PgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFz
dC9kb20vbWljcm90YXNrLXJldmVyc2UtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvZmFzdC9k
b20vbWljcm90YXNrLXJldmVyc2UtZXhwZWN0ZWQudHh0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0Cmlu
ZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjJlYzg4YmI1NGYw
YmFmZmYyYjQ5NGUyMjMzYWZlZTQzNTgzNjdhM2EKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRU
ZXN0cy9mYXN0L2RvbS9taWNyb3Rhc2stcmV2ZXJzZS1leHBlY3RlZC50eHQKQEAgLTAsMCArMSwx
NSBAQAorQ09OU09MRSBNRVNTQUdFOiBsaW5lIDIzOiBGaW5pc2hlZCBxdWV1ZWluZyB0ZXN0cy4K
K0NPTlNPTEUgTUVTU0FHRTogTWljcm9UYXNrICMwIGhhcyBydW4uCitDT05TT0xFIE1FU1NBR0U6
IE1pY3JvVGFzayAjMSBoYXMgcnVuLgorQ09OU09MRSBNRVNTQUdFOiBNaWNyb1Rhc2sgIzIgaGFz
IHJ1bi4KKyAKKworLS0tLS0tLS0KK0ZyYW1lOiAnZnJhbWUxJworLS0tLS0tLS0KKworCistLS0t
LS0tLQorRnJhbWU6ICdmcmFtZTInCistLS0tLS0tLQorCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0
cy9mYXN0L2RvbS9taWNyb3Rhc2stcmV2ZXJzZS5odG1sIGIvTGF5b3V0VGVzdHMvZmFzdC9kb20v
bWljcm90YXNrLXJldmVyc2UuaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5iMWI0ZTc3ODYyMTdiYWQzNmNkZjkw
NDliOWMzZThmNGZhMjcyYmQwCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC9k
b20vbWljcm90YXNrLXJldmVyc2UuaHRtbApAQCAtMCwwICsxLDI4IEBACis8IURPQ1RZUEUgaHRt
bD4KKzxzY3JpcHQ+CitpZiAod2luZG93LnRlc3RSdW5uZXIpIHsKKyAgICB0ZXN0UnVubmVyLmR1
bXBBc1RleHQoKTsKKyAgICB0ZXN0UnVubmVyLmR1bXBDaGlsZEZyYW1lc0FzVGV4dCgpOworICAg
IHRlc3RSdW5uZXIud2FpdFVudGlsRG9uZSgpOworfQorPC9zY3JpcHQ+Cis8aWZyYW1lIGlkPSJm
cmFtZTEiPjwvaWZyYW1lPgorPGlmcmFtZSBpZD0iZnJhbWUyIj48L2lmcmFtZT4KKzxzY3JpcHQ+
CisKK3ZhciBpZnJhbWUxID0gZG9jdW1lbnQucXVlcnlTZWxlY3RvcigiI2ZyYW1lMSIpLmNvbnRl
bnRXaW5kb3c7Cit2YXIgaWZyYW1lMiA9IGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoIiNmcmFtZTIi
KS5jb250ZW50V2luZG93OworCitpZih3aW5kb3cuaW50ZXJuYWxzKQorICAgIGludGVybmFscy5x
dWV1ZU1pY3JvVGFzaygwKTsKK2lmKGlmcmFtZTEuaW50ZXJuYWxzKQorICAgIGlmcmFtZTEuaW50
ZXJuYWxzLnF1ZXVlTWljcm9UYXNrKDEpOworaWYoaWZyYW1lMi5pbnRlcm5hbHMpCisgICAgaWZy
YW1lMi5pbnRlcm5hbHMucXVldWVNaWNyb1Rhc2soMik7CisKK2NvbnNvbGUubG9nKCJGaW5pc2hl
ZCBxdWV1ZWluZyB0ZXN0cy4iKTsKK3JlcXVlc3RBbmltYXRpb25GcmFtZShmdW5jdGlvbigpIHsK
KyAgICBpZiAod2luZG93LnRlc3RSdW5uZXIpCisgICAgICAgIHRlc3RSdW5uZXIubm90aWZ5RG9u
ZSgpOworfSk7Cis8L3NjcmlwdD4K
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>247669</attachid>
            <date>2015-03-02 08:12:22 -0800</date>
            <delta_ts>2015-03-02 14:10:19 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-137496-20150302081205.patch</filename>
            <type>text/plain</type>
            <size>36583</size>
            <attacher name="Yoav Weiss">yoav</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTgwODg0CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggMjI5ZDYwOTEzYjhmMTFj
YTM3NjIwNGQ4MWJlYmI1Yzk2NTI4NzU3NS4uZTU3MDBiZWJlYmU0MWQ0MDFmMTFmOWI5Y2E0ZTgx
OWEyZTMxNzg0NiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDQ2IEBACisyMDE1LTAzLTAyICBZb2F2
IFdlaXNzICA8eW9hdkB5b2F2LndzPgorCisgICAgICAgIEFkZCBhIG1pY3JvdGFzayBhYnN0cmFj
dGlvbgorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTM3
NDk2CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgU2FtIFdlaW5pZy4KKworICAgICAgICBUaGlzIHBh
dGNoIGFkZHMgYSBtaWNyb3Rhc2sgYWJzdHJhY3Rpb246IGh0dHBzOi8vaHRtbC5zcGVjLndoYXR3
Zy5vcmcvbXVsdGlwYWdlL3dlYmFwcGFwaXMuaHRtbCNtaWNyb3Rhc2sKKyAgICAgICAgVGhhdCBh
YnN0cmFjdGlvbiBpcyByZXF1aXJlZCBpbiBvcmRlciB0byBlbmFibGUgYXN5bmMgbG9hZGluZyBv
ZiBpbWFnZXMsCisgICAgICAgIHdoaWNoIGlzIGluIHR1cm4gcmVxdWlyZWQgdG8gZW5hYmxlIHN1
cHBvcnQgZm9yIHRoZSBwaWN0dXJlIGVsZW1lbnQsIGFzIHdlbGwgYXMKKyAgICAgICAgdG8gbWFr
ZSBzdXJlIHRoYXQgdGhlIG9yZGVyIG9mIHByb3BlcnRpZXMgc2V0IG9uIEhUTUxJbWFnZUVsZW1l
bnQgaGFzIG5vIGltcGxpY2F0aW9ucy4KKworICAgICAgICAqIFdlYkNvcmUudmN4cHJvai9XZWJD
b3JlLnZjeHByb2o6IEFkZCBNaWNyb1Rhc2sue2gsY3BwfSB0byB0aGUgcHJvamVjdC4KKyAgICAg
ICAgKiBXZWJDb3JlLnZjeHByb2ovV2ViQ29yZVRlc3RTdXBwb3J0LnZjeHByb2o6IEFkZCBNaWNy
b1Rhc2tUZXN0LntoLGNwcH0gdG8gdGhlIHByb2plY3QuCisgICAgICAgICogV2ViQ29yZS52Y3hw
cm9qL1dlYkNvcmUudmN4cHJvai5maWx0ZXJzOiBBZGQgTWljcm9UYXNrLntoLGNwcH0gdG8gdGhl
IHByb2plY3QuCisgICAgICAgICogV2ViQ29yZS52Y3hwcm9qL1dlYkNvcmVUZXN0U3VwcG9ydC52
Y3hwcm9qLmZpbHRlcnM6IEFkZCBNaWNyb1Rhc2tUZXN0LntoLGNwcH0gdG8gdGhlIHByb2plY3Qu
CisgICAgICAgICogV2ViQ29yZS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qOiBBZGQgTWljcm9U
YXNreyxUZXN0fS57aCxjcHB9IHRvIHRoZSBwcm9qZWN0LgorICAgICAgICAqIGRvbS9Eb2N1bWVu
dC5oOiBBZGQgV0VCQ09SRV9FWFBPUlQgdG8gYWRkQ29uc29sZU1lc3NhZ2UsIHNvIGl0IGNhbiBi
ZSB1c2VkIGluIE1pY3JvVGFza1Rlc3QgdGhhdCdzIGluIFdlYkNvcmVUZXN0U3VwcG9ydC4uCisg
ICAgICAgICogZG9tL01pY3JvVGFzay5oOiBBZGQgYSBNaWNyb1Rhc2sgaW50ZXJmYWNlIGNsYXNz
LiBBZGQgYSBNaWNyb1Rhc2tRdWV1ZSBzaW5nbGV0b24uCisgICAgICAgIChXZWJDb3JlOjpNaWNy
b1Rhc2s6On5NaWNyb1Rhc2spOgorICAgICAgICAoV2ViQ29yZTo6TWljcm9UYXNrOjpydW4pOiBS
dW4gdGhlIG1pY3JvdGFzay4KKyAgICAgICAgKiBkb20vTWljcm9UYXNrLmNwcDogSW1wbGVtZW50
IHRoZSBNaWNyb1Rhc2tRdWV1ZSBzaW5nbGV0b24uCisgICAgICAgIChXZWJDb3JlOjpNaWNyb1Rh
c2tRdWV1ZTo6c2luZ2xldG9uKTogR2V0IGEgc2luZ2xldG9uIGluc3RhbmNlIG9mIE1pY3JvVGFz
a1F1ZXVlLgorICAgICAgICAoV2ViQ29yZTo6TWljcm9UYXNrUXVldWU6OnF1ZXVlTWljcm9UYXNr
KTogQWRkIGEgbWljcm90YXNrIHRvIHRoZSBxdWV1ZS4KKyAgICAgICAgKFdlYkNvcmU6Ok1pY3Jv
VGFza1F1ZXVlOjpydW5NaWNyb1Rhc2tzKTogUnVuIGFsbCB0aGUgbWljcm90YXNrcyBpbiB0aGUg
cXVldWUgYW5kIGNsZWFyIGl0LgorICAgICAgICAqIGRvbS9TY3JpcHRSdW5uZXIuY3BwOiBUcmln
Z2VyIHJ1bm5pbmcgb2YgYWxsIG1pY3JvdGFza3MgaW4gcXVldWUuCisgICAgICAgIChXZWJDb3Jl
OjpTY3JpcHRSdW5uZXI6OnRpbWVyRmlyZWQpOgorICAgICAgICAqIGh0bWwvcGFyc2VyL0hUTUxT
Y3JpcHRSdW5uZXIuY3BwOiBUcmlnZ2VyIHJ1bm5pbmcgb2YgYWxsIG1pY3JvdGFza3MgaW4gcXVl
dWUuCisgICAgICAgIChXZWJDb3JlOjpIVE1MU2NyaXB0UnVubmVyOjpleGVjdXRlUGVuZGluZ1Nj
cmlwdEFuZERpc3BhdGNoRXZlbnQpOgorICAgICAgICAoV2ViQ29yZTo6SFRNTFNjcmlwdFJ1bm5l
cjo6ZXhlY3V0ZVNjcmlwdHNXYWl0aW5nRm9yUGFyc2luZyk6CisgICAgICAgIChXZWJDb3JlOjpI
VE1MU2NyaXB0UnVubmVyOjpydW5TY3JpcHQpOgorICAgICAgICAqIHRlc3RpbmcvSW50ZXJuYWxz
LmNwcDogQWRkIGEgbWV0aG9kIHRvIHF1ZXVlIGEgdGVzdCBtaWNyb3Rhc2suCisgICAgICAgIChX
ZWJDb3JlOjpJbnRlcm5hbHM6OnF1ZXVlTWljcm9UYXNrKToKKyAgICAgICAgKiB0ZXN0aW5nL0lu
dGVybmFscy5oOiBBZGQgYSBtZXRob2QgdG8gcXVldWUgYSB0ZXN0IG1pY3JvdGFzay4KKyAgICAg
ICAgKFdlYkNvcmU6OkludGVybmFsczo6cXVldWVNaWNyb1Rhc2spOgorICAgICAgICAqIHRlc3Rp
bmcvSW50ZXJuYWxzLmlkbDogRXhwb3NlIHRlc3QgbWljcm90YXNrIHF1ZXVlaW5nIHRvIHRlc3Qg
SlMuCisgICAgICAgICogdGVzdGluZy9NaWNyb1Rhc2tUZXN0LmNwcDogQWRkIGEgdGVzdCBjbGFz
cyB0aGF0IGltcGxlbWVudHMgYSBtaWNyb3Rhc2sgYW5kIHByaW50cyB0byB0aGUgY29uc29sZSB3
aGVuIGl0IHJ1bnMuCisgICAgICAgIChXZWJDb3JlOjpNaWNyb1Rhc2tUZXN0OjpydW4pOiBSdW4g
dGhlIG1pY3JvdGFzaworICAgICAgICAoV2ViQ29yZTo6TWljcm9UYXNrVGVzdDo6Y3JlYXRlKTog
Q3JlYXRlIGEgdGVzdCBtaWNyb3Rhc2suCisgICAgICAgICogdGVzdGluZy9NaWNyb1Rhc2tUZXN0
Lmg6IEFkZCBhIHRlc3QgY2xhc3MgdGhhdCBpbXBsZW1lbnRzIGEgbWljcm90YXNrLgorICAgICAg
ICAoV2ViQ29yZTo6TWljcm9UYXNrVGVzdDo6cnVuKToKKyAgICAgICAgKFdlYkNvcmU6Ok1pY3Jv
VGFza1Rlc3Q6OmNyZWF0ZSk6CisKIDIwMTUtMDMtMDIgIERhdmlkIEtpbHplciAgPGRka2lsemVy
QGFwcGxlLmNvbT4KIAogICAgICAgICBSRUdSRVNTSU9OIChyMTgwODgyKTogQnVpbGQgZmFpbHVy
ZTogTWV0aG9kcyBub3QgbWFya2VkIG92ZXJyaWRlIGluIEdyYXBoaWNzTGF5ZXJDQS5oCmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9DTWFrZUxpc3RzLnR4dCBiL1NvdXJjZS9XZWJDb3JlL0NN
YWtlTGlzdHMudHh0CmluZGV4IDMyODk4YzdkMGVkNDBjZTBhMGNhM2Y4MTFmN2UwYTUyMDk5ZTZh
NzUuLjc1MzQ2NGI1NzRiNzYzNmJjM2Q3NTVjNDRjOTFlZmUyZjc4YTNhODMgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9XZWJDb3JlL0NNYWtlTGlzdHMudHh0CisrKyBiL1NvdXJjZS9XZWJDb3JlL0NNYWtl
TGlzdHMudHh0CkBAIC0xMzcwLDYgKzEzNzAsNyBAQCBzZXQoV2ViQ29yZV9TT1VSQ0VTCiAgICAg
ZG9tL01lc3NhZ2VFdmVudC5jcHAKICAgICBkb20vTWVzc2FnZVBvcnQuY3BwCiAgICAgZG9tL01l
c3NhZ2VQb3J0Q2hhbm5lbC5jcHAKKyAgICBkb20vTWljcm9UYXNrLmNwcAogICAgIGRvbS9Nb3Vz
ZUV2ZW50LmNwcAogICAgIGRvbS9Nb3VzZVJlbGF0ZWRFdmVudC5jcHAKICAgICBkb20vTXV0YXRp
b25FdmVudC5jcHAKQEAgLTMxNTQsNiArMzE1NSw3IEBAIHNldChXZWJDb3JlVGVzdFN1cHBvcnRf
U09VUkNFUwogICAgIHRlc3RpbmcvSW50ZXJuYWxTZXR0aW5ncy5jcHAKICAgICB0ZXN0aW5nL0lu
dGVybmFscy5jcHAKIAorICAgIHRlc3RpbmcvTWljcm9UYXNrVGVzdC5jcHAKICAgICB0ZXN0aW5n
L01vY2tQYWdlT3ZlcmxheUNsaWVudC5jcHAKIAogICAgIHRlc3RpbmcvanMvV2ViQ29yZVRlc3RT
dXBwb3J0LmNwcApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvV2ViQ29yZS52Y3hwcm9qL1dl
YkNvcmUudmN4cHJvaiBiL1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUudmN4cHJvai9XZWJDb3JlLnZj
eHByb2oKaW5kZXggMDQ0MmJmMzFhNTBmMmY0ODZjNDE5NjQyMjg3NGEyMjY4NzY5MjljOS4uMzEw
ZGJiNzcyNzA2YjUxMGZkNzE1ZTgwMmY2M2UyYTQxNGE3MjMzMyAxMDA2NDQKLS0tIGEvU291cmNl
L1dlYkNvcmUvV2ViQ29yZS52Y3hwcm9qL1dlYkNvcmUudmN4cHJvagorKysgYi9Tb3VyY2UvV2Vi
Q29yZS9XZWJDb3JlLnZjeHByb2ovV2ViQ29yZS52Y3hwcm9qCkBAIC0xMzQzNCw2ICsxMzQzNCw3
IEBACiAgICAgICA8RXhjbHVkZWRGcm9tQnVpbGQgQ29uZGl0aW9uPSInJChDb25maWd1cmF0aW9u
KXwkKFBsYXRmb3JtKSc9PSdQcm9kdWN0aW9ufFdpbjMyJyI+dHJ1ZTwvRXhjbHVkZWRGcm9tQnVp
bGQ+CiAgICAgICA8RXhjbHVkZWRGcm9tQnVpbGQgQ29uZGl0aW9uPSInJChDb25maWd1cmF0aW9u
KXwkKFBsYXRmb3JtKSc9PSdQcm9kdWN0aW9ufHg2NCciPnRydWU8L0V4Y2x1ZGVkRnJvbUJ1aWxk
PgogICAgIDwvQ2xDb21waWxlPgorICAgIDxDbENvbXBpbGUgSW5jbHVkZT0iLi5cZG9tXE1pY3Jv
VGFzay5jcHAiIC8+CiAgICAgPENsQ29tcGlsZSBJbmNsdWRlPSIuLlxkb21cTW91c2VFdmVudC5j
cHAiPgogICAgICAgPEV4Y2x1ZGVkRnJvbUJ1aWxkIENvbmRpdGlvbj0iJyQoQ29uZmlndXJhdGlv
bil8JChQbGF0Zm9ybSknPT0nRGVidWd8V2luMzInIj50cnVlPC9FeGNsdWRlZEZyb21CdWlsZD4K
ICAgICAgIDxFeGNsdWRlZEZyb21CdWlsZCBDb25kaXRpb249IickKENvbmZpZ3VyYXRpb24pfCQo
UGxhdGZvcm0pJz09J0RlYnVnfHg2NCciPnRydWU8L0V4Y2x1ZGVkRnJvbUJ1aWxkPgpAQCAtMjA2
MjQsNiArMjA2MjUsNyBAQAogICAgIDxDbEluY2x1ZGUgSW5jbHVkZT0iLi5cZG9tXE1lc3NhZ2VF
dmVudC5oIiAvPgogICAgIDxDbEluY2x1ZGUgSW5jbHVkZT0iLi5cZG9tXE1lc3NhZ2VQb3J0Lmgi
IC8+CiAgICAgPENsSW5jbHVkZSBJbmNsdWRlPSIuLlxkb21cTWVzc2FnZVBvcnRDaGFubmVsLmgi
IC8+CisgICAgPENsSW5jbHVkZSBJbmNsdWRlPSIuLlxkb21cTWljcm9UYXNrLmgiIC8+CiAgICAg
PENsSW5jbHVkZSBJbmNsdWRlPSIuLlxkb21cTW91c2VFdmVudC5oIiAvPgogICAgIDxDbEluY2x1
ZGUgSW5jbHVkZT0iLi5cZG9tXE1vdXNlUmVsYXRlZEV2ZW50LmgiIC8+CiAgICAgPENsSW5jbHVk
ZSBJbmNsdWRlPSIuLlxkb21cTXV0YXRpb25FdmVudC5oIiAvPgpAQCAtMjE0MjUsNCArMjE0Mjcs
NCBAQAogICA8SW1wb3J0R3JvdXAgTGFiZWw9IkV4dGVuc2lvblRhcmdldHMiPgogICAgIDxJbXBv
cnQgUHJvamVjdD0iJChWQ1RhcmdldHNQYXRoKVxCdWlsZEN1c3RvbWl6YXRpb25zXG1hc20udGFy
Z2V0cyIgLz4KICAgPC9JbXBvcnRHcm91cD4KLTwvUHJvamVjdD4KXCBObyBuZXdsaW5lIGF0IGVu
ZCBvZiBmaWxlCis8L1Byb2plY3Q+CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9XZWJDb3Jl
LnZjeHByb2ovV2ViQ29yZS52Y3hwcm9qLmZpbHRlcnMgYi9Tb3VyY2UvV2ViQ29yZS9XZWJDb3Jl
LnZjeHByb2ovV2ViQ29yZS52Y3hwcm9qLmZpbHRlcnMKaW5kZXggODM0ZWYxNjdmY2Y0YjYyNjQz
YWExMGNmNjQ3NWM0MGQwZmYzZTdlMC4uYjkxZjA4Zjk1MWM4ZWNjMWRkYTUwMzc1MTdkMTgzMWRk
YjUzNjQ2MiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvV2ViQ29yZS52Y3hwcm9qL1dlYkNv
cmUudmN4cHJvai5maWx0ZXJzCisrKyBiL1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUudmN4cHJvai9X
ZWJDb3JlLnZjeHByb2ouZmlsdGVycwpAQCAtMzIwMSw2ICszMjAxLDkgQEAKICAgICA8Q2xDb21w
aWxlIEluY2x1ZGU9Ii4uXGRvbVxNZXNzYWdlUG9ydENoYW5uZWwuY3BwIj4KICAgICAgIDxGaWx0
ZXI+ZG9tPC9GaWx0ZXI+CiAgICAgPC9DbENvbXBpbGU+CisgICAgPENsQ29tcGlsZSBJbmNsdWRl
PSIuLlxkb21cTWljcm9UYXNrLmNwcCI+CisgICAgICA8RmlsdGVyPmRvbTwvRmlsdGVyPgorICAg
IDwvQ2xDb21waWxlPgogICAgIDxDbENvbXBpbGUgSW5jbHVkZT0iLi5cZG9tXE1vdXNlRXZlbnQu
Y3BwIj4KICAgICAgIDxGaWx0ZXI+ZG9tPC9GaWx0ZXI+CiAgICAgPC9DbENvbXBpbGU+CkBAIC0x
MDI2OSw2ICsxMDI3Miw5IEBACiAgICAgPENsSW5jbHVkZSBJbmNsdWRlPSIuLlxkb21cTWVzc2Fn
ZVBvcnRDaGFubmVsLmgiPgogICAgICAgPEZpbHRlcj5kb208L0ZpbHRlcj4KICAgICA8L0NsSW5j
bHVkZT4KKyAgICA8Q2xJbmNsdWRlIEluY2x1ZGU9Ii4uXGRvbVxNaWNyb1Rhc2suaCI+CisgICAg
ICA8RmlsdGVyPmRvbTwvRmlsdGVyPgorICAgIDwvQ2xJbmNsdWRlPgogICAgIDxDbEluY2x1ZGUg
SW5jbHVkZT0iLi5cZG9tXE1vdXNlRXZlbnQuaCI+CiAgICAgICA8RmlsdGVyPmRvbTwvRmlsdGVy
PgogICAgIDwvQ2xJbmNsdWRlPgpAQCAtMTUzOTUsNCArMTU0MDEsNCBAQAogICAgICAgPEZpbHRl
cj5wbGF0Zm9ybVx3aW48L0ZpbHRlcj4KICAgICA8L01BU00+CiAgIDwvSXRlbUdyb3VwPgotPC9Q
cm9qZWN0PgpcIE5vIG5ld2xpbmUgYXQgZW5kIG9mIGZpbGUKKzwvUHJvamVjdD4KZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUudmN4cHJvai9XZWJDb3JlVGVzdFN1cHBvcnQudmN4
cHJvaiBiL1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUudmN4cHJvai9XZWJDb3JlVGVzdFN1cHBvcnQu
dmN4cHJvagppbmRleCAyZjgxNjM5YjFhM2ZmNTIwNmIyMWFmMGNlYjBmYzM5MzEzZWFkODgxLi40
MzNlYWYyNzg4MWNlY2M5YWNjZjY4MThhMmM3NjBkZTFhZjVjMTNjIDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViQ29yZS9XZWJDb3JlLnZjeHByb2ovV2ViQ29yZVRlc3RTdXBwb3J0LnZjeHByb2oKKysr
IGIvU291cmNlL1dlYkNvcmUvV2ViQ29yZS52Y3hwcm9qL1dlYkNvcmVUZXN0U3VwcG9ydC52Y3hw
cm9qCkBAIC0yNzUsNiArMjc1LDcgQEAKICAgICAgIDxGb3JjZWRJbmNsdWRlRmlsZXMgQ29uZGl0
aW9uPSInJChDb25maWd1cmF0aW9uKXwkKFBsYXRmb3JtKSc9PSdSZWxlYXNlX1dpbkNhaXJvfHg2
NCciPgogICAgICAgPC9Gb3JjZWRJbmNsdWRlRmlsZXM+CiAgICAgPC9DbENvbXBpbGU+CisgICAg
PENsQ29tcGlsZSBJbmNsdWRlPSIuLlx0ZXN0aW5nXE1pY3JvVGFza1Rlc3QuY3BwIiAvPgogICAg
IDxDbENvbXBpbGUgSW5jbHVkZT0iLi5cdGVzdGluZ1xNb2NrUGFnZU92ZXJsYXlDbGllbnQuY3Bw
IiAvPgogICAgIDxDbENvbXBpbGUgSW5jbHVkZT0iLi5cdGVzdGluZ1xJbnRlcm5hbFNldHRpbmdz
LmNwcCIgLz4KICAgICA8Q2xDb21waWxlIEluY2x1ZGU9Ii4uXHRlc3RpbmdcanNcV2ViQ29yZVRl
c3RTdXBwb3J0LmNwcCIgLz4KQEAgLTI5MSw2ICsyOTIsNyBAQAogICAgIDxDbEluY2x1ZGUgSW5j
bHVkZT0iLi5cdGVzdGluZ1xqc1xXZWJDb3JlVGVzdFN1cHBvcnRQcmVmaXguaCIgLz4KICAgICA8
Q2xJbmNsdWRlIEluY2x1ZGU9Ii4uXHRlc3RpbmdcTWFsbG9jU3RhdGlzdGljcy5oIiAvPgogICAg
IDxDbEluY2x1ZGUgSW5jbHVkZT0iLi5cdGVzdGluZ1xNZW1vcnlJbmZvLmgiIC8+CisgICAgPENs
SW5jbHVkZSBJbmNsdWRlPSIuLlx0ZXN0aW5nXE1pY3JvVGFza1Rlc3QuaCIgLz4KICAgICA8Q2xJ
bmNsdWRlIEluY2x1ZGU9Ii4uXHRlc3RpbmdcTW9ja0NETS5oIiAvPgogICAgIDxDbEluY2x1ZGUg
SW5jbHVkZT0iLi5cdGVzdGluZ1xNb2NrUGFnZU92ZXJsYXlDbGllbnQuaCIgLz4KICAgICA8Q2xJ
bmNsdWRlIEluY2x1ZGU9Ii4uXHRlc3RpbmdcVHlwZUNvbnZlcnNpb25zLmgiIC8+CmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViQ29yZS9XZWJDb3JlLnZjeHByb2ovV2ViQ29yZVRlc3RTdXBwb3J0LnZj
eHByb2ouZmlsdGVycyBiL1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUudmN4cHJvai9XZWJDb3JlVGVz
dFN1cHBvcnQudmN4cHJvai5maWx0ZXJzCmluZGV4IDY0ODg2YTgyODlkMDdmMjg0ZGUxNGQyMTU2
OWZhYzU4OTBjZWIwZWQuLjQyY2E3MjhlYzY4MGIyMzZiOTgzMDM0ZDNmMmVmYjg4ZGM4MDg0MDUg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUudmN4cHJvai9XZWJDb3JlVGVzdFN1
cHBvcnQudmN4cHJvai5maWx0ZXJzCisrKyBiL1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUudmN4cHJv
ai9XZWJDb3JlVGVzdFN1cHBvcnQudmN4cHJvai5maWx0ZXJzCkBAIC0zOSw2ICszOSw5IEBACiAg
ICAgPENsQ29tcGlsZSBJbmNsdWRlPSIuLlx0ZXN0aW5nXGpzXFdlYkNvcmVUZXN0U3VwcG9ydC5j
cHAiPgogICAgICAgPEZpbHRlcj50ZXN0aW5nPC9GaWx0ZXI+CiAgICAgPC9DbENvbXBpbGU+Cisg
ICAgPENsQ29tcGlsZSBJbmNsdWRlPSIuLlx0ZXN0aW5nXE1pY3JvVGFza1Rlc3QuY3BwIj4KKyAg
ICAgIDxGaWx0ZXI+dGVzdGluZzwvRmlsdGVyPgorICAgIDwvQ2xDb21waWxlPgogICAgIDxDbENv
bXBpbGUgSW5jbHVkZT0iLi5cdGVzdGluZ1xNb2NrQ0RNLmNwcCI+CiAgICAgICA8RmlsdGVyPnRl
c3Rpbmc8L0ZpbHRlcj4KICAgICA8L0NsQ29tcGlsZT4KQEAgLTkwLDYgKzkzLDkgQEAKICAgICAg
IDxGaWx0ZXI+dGVzdGluZzwvRmlsdGVyPgogICAgIDwvQ2xJbmNsdWRlPgogICAgIDxDbEluY2x1
ZGUgSW5jbHVkZT0iLi5cY29uZmlnLmgiIC8+CisgICAgPENsSW5jbHVkZSBJbmNsdWRlPSIuLlx0
ZXN0aW5nXE1pY3JvVGFza1Rlc3QuaCI+CisgICAgICA8RmlsdGVyPnRlc3Rpbmc8L0ZpbHRlcj4K
KyAgICA8L0NsSW5jbHVkZT4KICAgICA8Q2xJbmNsdWRlIEluY2x1ZGU9Ii4uXHRlc3RpbmdcTW9j
a0NETS5oIj4KICAgICAgIDxGaWx0ZXI+dGVzdGluZzwvRmlsdGVyPgogICAgIDwvQ2xJbmNsdWRl
PgpAQCAtMTAwLDQgKzEwNiw0IEBACiAgICAgICA8RmlsdGVyPnRlc3Rpbmc8L0ZpbHRlcj4KICAg
ICA8L0NsSW5jbHVkZT4KICAgPC9JdGVtR3JvdXA+Ci08L1Byb2plY3Q+ClwgTm8gbmV3bGluZSBh
dCBlbmQgb2YgZmlsZQorPC9Qcm9qZWN0PgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvV2Vi
Q29yZS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qIGIvU291cmNlL1dlYkNvcmUvV2ViQ29yZS54
Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qCmluZGV4IGMwZWQxNmJhMWY3MzUwMmUwZTI0OTNhYmE0
MTdhODExZTE5ZDdiM2YuLmVlOGRmMDgwOWQ4ODczODkyNTZhMDA4NDRiNGM2ZWFkYmVhOWQ3MTkg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUueGNvZGVwcm9qL3Byb2plY3QucGJ4
cHJvagorKysgYi9Tb3VyY2UvV2ViQ29yZS9XZWJDb3JlLnhjb2RlcHJvai9wcm9qZWN0LnBieHBy
b2oKQEAgLTIwODAsNiArMjA4MCw3IEBACiAJCTUzNkQ1QTIzMTkzRThFMEMwMENFNENBQiAvKiBQ
YXJzaW5nVXRpbGl0aWVzLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZp
bGVSZWYgPSA1MzZENUEyMjE5M0U4RTBDMDBDRTRDQUIgLyogUGFyc2luZ1V0aWxpdGllcy5oICov
OyB9OwogCQk1MzZENUEyNTE5M0Y0MEZDMDBDRTRDQUIgLyogU291cmNlU2l6ZUxpc3QuY3BwIGlu
IFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNTM2RDVBMjQxOTNG
NDBGQzAwQ0U0Q0FCIC8qIFNvdXJjZVNpemVMaXN0LmNwcCAqLzsgfTsKIAkJNTM2RDVBMjcxOTNG
NDEwQjAwQ0U0Q0FCIC8qIFNvdXJjZVNpemVMaXN0LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQ
QlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA1MzZENUEyNjE5M0Y0MTBCMDBDRTRDQUIgLyogU291cmNl
U2l6ZUxpc3QuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9
OworCQk1M0I4OTVBRjE5REM3RUQ5MDA5Q0FBOTMgLyogTWljcm9UYXNrLmggaW4gSGVhZGVycyAq
LyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA1M0I4OTVBRDE5REM3QzM3MDA5Q0FB
OTMgLyogTWljcm9UYXNrLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHVibGljLCAp
OyB9OyB9OwogCQk1M0M4Mjk4RDEzRDhEOTI3MDBERTJERUIgLyogUmVuZGVyRmxleGlibGVCb3gu
Y3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNTNDODI5
OEIxM0Q4RDkyNzAwREUyREVCIC8qIFJlbmRlckZsZXhpYmxlQm94LmNwcCAqLzsgfTsKIAkJNTND
ODI5OEUxM0Q4RDkyNzAwREUyREVCIC8qIFJlbmRlckZsZXhpYmxlQm94LmggaW4gSGVhZGVycyAq
LyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA1M0M4Mjk4QzEzRDhEOTI3MDBERTJE
RUIgLyogUmVuZGVyRmxleGlibGVCb3guaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQ
cml2YXRlLCApOyB9OyB9OwogCQk1M0UyOUU1RTE2N0E4QTE5MDA1ODZEM0QgLyogSW50ZXJuYWxT
ZXR0aW5nc0dlbmVyYXRlZC5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7
IGZpbGVSZWYgPSA1M0UyOUU1QzE2N0E4QTE5MDA1ODZEM0QgLyogSW50ZXJuYWxTZXR0aW5nc0dl
bmVyYXRlZC5jcHAgKi87IH07CkBAIC01NjIxLDYgKzU2MjIsOSBAQAogCQlDQTNCRjY3RTEwRDk5
QkFFMDBFNkNFNTMgLyogU2Nyb2xsQW5pbWF0b3IuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBC
WEJ1aWxkRmlsZTsgZmlsZVJlZiA9IENBM0JGNjdEMTBEOTlCQUUwMEU2Q0U1MyAvKiBTY3JvbGxB
bmltYXRvci5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07
CiAJCUNBRTlGOTBGMTQ2NDQxRjAwMEMyNDVCMCAvKiBDU1NBc3BlY3RSYXRpb1ZhbHVlLmNwcCBp
biBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IENBRTlGOTBEMTQ2
NDQxRjAwMEMyNDVCMCAvKiBDU1NBc3BlY3RSYXRpb1ZhbHVlLmNwcCAqLzsgfTsKIAkJQ0FFOUY5
MTAxNDY0NDFGMDAwQzI0NUIwIC8qIENTU0FzcGVjdFJhdGlvVmFsdWUuaCBpbiBIZWFkZXJzICov
ID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IENBRTlGOTBFMTQ2NDQxRjAwMEMyNDVC
MCAvKiBDU1NBc3BlY3RSYXRpb1ZhbHVlLmggKi87IH07CisJCUNCOENGMDE4MUE5MzU4RDQwMDBE
NTEwQiAvKiBNaWNyb1Rhc2suY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxl
OyBmaWxlUmVmID0gQ0I4Q0YwMTUxQTkzNEI0MzAwMEQ1MTBCIC8qIE1pY3JvVGFzay5jcHAgKi87
IH07CisJCUNCOENGMDFEMUE5NURFNDIwMDBENTEwQiAvKiBNaWNyb1Rhc2tUZXN0LmggaW4gSGVh
ZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBDQjhDRjAxQzFBOTVERTQy
MDAwRDUxMEIgLyogTWljcm9UYXNrVGVzdC5oICovOyB9OworCQlDQjhDRjAxRjFBOTVERTU5MDAw
RDUxMEIgLyogTWljcm9UYXNrVGVzdC5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWls
ZEZpbGU7IGZpbGVSZWYgPSBDQjhDRjAxRTFBOTVERTU5MDAwRDUxMEIgLyogTWljcm9UYXNrVGVz
dC5jcHAgKi87IH07CiAJCUNDQzJCNTE0MTVGNjEzMDYwMDQ4Q0RENiAvKiBEZXZpY2VDbGllbnQu
aCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IENDQzJCNTEw
MTVGNjEzMDYwMDQ4Q0RENiAvKiBEZXZpY2VDbGllbnQuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklC
VVRFUyA9IChQcml2YXRlLCApOyB9OyB9OwogCQlDQ0MyQjUxNTE1RjYxMzA2MDA0OENERDYgLyog
RGV2aWNlQ29udHJvbGxlci5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7
IGZpbGVSZWYgPSBDQ0MyQjUxMTE1RjYxMzA2MDA0OENERDYgLyogRGV2aWNlQ29udHJvbGxlci5j
cHAgKi87IH07CiAJCUNDQzJCNTE2MTVGNjEzMDYwMDQ4Q0RENiAvKiBEZXZpY2VDb250cm9sbGVy
LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBDQ0MyQjUx
MjE1RjYxMzA2MDA0OENERDYgLyogRGV2aWNlQ29udHJvbGxlci5oICovOyBzZXR0aW5ncyA9IHtB
VFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CkBAIC05MjI5LDYgKzkyMzMsNyBAQAogCQk1
MzZENUEyMjE5M0U4RTBDMDBDRTRDQUIgLyogUGFyc2luZ1V0aWxpdGllcy5oICovID0ge2lzYSA9
IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0g
c291cmNlY29kZS5jLmg7IG5hbWUgPSBQYXJzaW5nVXRpbGl0aWVzLmg7IHBhdGggPSBwYXJzZXIv
UGFyc2luZ1V0aWxpdGllcy5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQk1MzZENUEy
NDE5M0Y0MEZDMDBDRTRDQUIgLyogU291cmNlU2l6ZUxpc3QuY3BwICovID0ge2lzYSA9IFBCWEZp
bGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNl
Y29kZS5jcHAuY3BwOyBwYXRoID0gU291cmNlU2l6ZUxpc3QuY3BwOyBzb3VyY2VUcmVlID0gIjxn
cm91cD4iOyB9OwogCQk1MzZENUEyNjE5M0Y0MTBCMDBDRTRDQUIgLyogU291cmNlU2l6ZUxpc3Qu
aCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25v
d25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gU291cmNlU2l6ZUxpc3QuaDsgc291
cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNTNCODk1QUQxOURDN0MzNzAwOUNBQTkzIC8qIE1p
Y3JvVGFzay5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7
IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBNaWNyb1Rhc2suaDsg
c291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJNTNDODI5OEIxM0Q4RDkyNzAwREUyREVCIC8q
IFJlbmRlckZsZXhpYmxlQm94LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxl
RW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0
aCA9IFJlbmRlckZsZXhpYmxlQm94LmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJ
NTNDODI5OEMxM0Q4RDkyNzAwREUyREVCIC8qIFJlbmRlckZsZXhpYmxlQm94LmggKi8gPSB7aXNh
ID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUg
PSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFJlbmRlckZsZXhpYmxlQm94Lmg7IHNvdXJjZVRyZWUg
PSAiPGdyb3VwPiI7IH07CiAJCTUzRTI5RTVDMTY3QThBMTkwMDU4NkQzRCAvKiBJbnRlcm5hbFNl
dHRpbmdzR2VuZXJhdGVkLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5j
b2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9
IEludGVybmFsU2V0dGluZ3NHZW5lcmF0ZWQuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9
OwpAQCAtMTMwODcsNiArMTMwOTIsOSBAQAogCQlDQTNCRjY3RDEwRDk5QkFFMDBFNkNFNTMgLyog
U2Nyb2xsQW5pbWF0b3IuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rp
bmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gU2Nyb2xs
QW5pbWF0b3IuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJQ0FFOUY5MEQxNDY0NDFG
MDAwQzI0NUIwIC8qIENTU0FzcGVjdFJhdGlvVmFsdWUuY3BwICovID0ge2lzYSA9IFBCWEZpbGVS
ZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29k
ZS5jcHAuY3BwOyBwYXRoID0gQ1NTQXNwZWN0UmF0aW9WYWx1ZS5jcHA7IHNvdXJjZVRyZWUgPSAi
PGdyb3VwPiI7IH07CiAJCUNBRTlGOTBFMTQ2NDQxRjAwMEMyNDVCMCAvKiBDU1NBc3BlY3RSYXRp
b1ZhbHVlLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsg
bGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IENTU0FzcGVjdFJhdGlv
VmFsdWUuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQ0I4Q0YwMTUxQTkzNEI0MzAw
MEQ1MTBCIC8qIE1pY3JvVGFzay5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmls
ZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBh
dGggPSBNaWNyb1Rhc2suY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlDQjhDRjAx
QzFBOTVERTQyMDAwRDUxMEIgLyogTWljcm9UYXNrVGVzdC5oICovID0ge2lzYSA9IFBCWEZpbGVS
ZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29k
ZS5jLmg7IHBhdGggPSBNaWNyb1Rhc2tUZXN0Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07
CisJCUNCOENGMDFFMUE5NURFNTkwMDBENTEwQiAvKiBNaWNyb1Rhc2tUZXN0LmNwcCAqLyA9IHtp
c2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlw
ZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IE1pY3JvVGFza1Rlc3QuY3BwOyBzb3VyY2VU
cmVlID0gIjxncm91cD4iOyB9OwogCQlDQ0MyQjUxMDE1RjYxMzA2MDA0OENERDYgLyogRGV2aWNl
Q2xpZW50LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsg
bGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IERldmljZUNsaWVudC5o
OyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQlDQ0MyQjUxMTE1RjYxMzA2MDA0OENERDYg
LyogRGV2aWNlQ29udHJvbGxlci5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmls
ZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBh
dGggPSBEZXZpY2VDb250cm9sbGVyLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJ
Q0NDMkI1MTIxNUY2MTMwNjAwNDhDREQ2IC8qIERldmljZUNvbnRyb2xsZXIuaCAqLyA9IHtpc2Eg
PSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9
IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gRGV2aWNlQ29udHJvbGxlci5oOyBzb3VyY2VUcmVlID0g
Ijxncm91cD4iOyB9OwpAQCAtMTU2NzEsNiArMTU2NzksOCBAQAogCQkJCUE3QkY3RUREMTRDOTE3
NUEwMDE0NDg5RCAvKiBJbnRlcm5hbFNldHRpbmdzLmggKi8sCiAJCQkJQTdCRjdFREUxNEM5MTc1
QTAwMTQ0ODlEIC8qIEludGVybmFsU2V0dGluZ3MuaWRsICovLAogCQkJCUE3QkU3RUREMTRDOTE3
NUEwMDE0NDg5RCAvKiBNYWxsb2NTdGF0aXN0aWNzLmggKi8sCisJCQkJQ0I4Q0YwMUUxQTk1REU1
OTAwMEQ1MTBCIC8qIE1pY3JvVGFza1Rlc3QuY3BwICovLAorCQkJCUNCOENGMDFDMUE5NURFNDIw
MDBENTEwQiAvKiBNaWNyb1Rhc2tUZXN0LmggKi8sCiAJCQkJQTdCRTdFREUxNEM5MTc1QTAwMTQ0
ODlEIC8qIE1hbGxvY1N0YXRpc3RpY3MuaWRsICovLAogCQkJCUNENTM5M0NCMTc1RENDRTYwMEMw
NzEyMyAvKiBNZW1vcnlJbmZvLmggKi8sCiAJCQkJQ0Q1MzkzQ0MxNzVEQ0NFNjAwQzA3MTIzIC8q
IE1lbW9yeUluZm8uaWRsICovLApAQCAtMjI4NzksNiArMjI4ODksOCBAQAogCQkJCUUxQURFQ0JE
MEU3NkFDRjEwMDRBMUE1RSAvKiBNZXNzYWdlUG9ydC5oICovLAogCQkJCUUxQURFQ0M2MEU3NkFE
MUYwMDRBMUE1RSAvKiBNZXNzYWdlUG9ydC5pZGwgKi8sCiAJCQkJNDFCRjcwMEEwRkU4NkY0OTAw
NUU4REVDIC8qIE1lc3NhZ2VQb3J0Q2hhbm5lbC5oICovLAorCQkJCTUzQjg5NUFEMTlEQzdDMzcw
MDlDQUE5MyAvKiBNaWNyb1Rhc2suaCAqLywKKwkJCQlDQjhDRjAxNTFBOTM0QjQzMDAwRDUxMEIg
LyogTWljcm9UYXNrLmNwcCAqLywKIAkJCQk4NTAzMUIyRjBBNDRFRkM3MDBGOTkyRTAgLyogTW91
c2VFdmVudC5jcHAgKi8sCiAJCQkJODUwMzFCMzAwQTQ0RUZDNzAwRjk5MkUwIC8qIE1vdXNlRXZl
bnQuaCAqLywKIAkJCQkxNDFCOTRFNTA5RUM0MjIzMDAwRTk0MTMgLyogTW91c2VFdmVudC5pZGwg
Ki8sCkBAIC0yMzQ0Myw2ICsyMzQ1NSw3IEBACiAJCQkJNTNFRDNGREYxNjdBODhFNzAwNjc2MkU2
IC8qIEpTSW50ZXJuYWxTZXR0aW5nc0dlbmVyYXRlZC5oIGluIEhlYWRlcnMgKi8sCiAJCQkJQTc0
MEI1OTUxNEM5MzVBQjAwQTc3RkE0IC8qIEpTTWFsbG9jU3RhdGlzdGljcy5oIGluIEhlYWRlcnMg
Ki8sCiAJCQkJQ0Q1MzkzRDQxNzVFMDE4NjAwQzA3MTIzIC8qIEpTTWVtb3J5SW5mby5oIGluIEhl
YWRlcnMgKi8sCisJCQkJQ0I4Q0YwMUQxQTk1REU0MjAwMEQ1MTBCIC8qIE1pY3JvVGFza1Rlc3Qu
aCBpbiBIZWFkZXJzICovLAogCQkJCUVCRjUxMjFEMTY5NjQ5NkMwMDU2QkQyNSAvKiBKU1R5cGVD
b252ZXJzaW9ucy5oIGluIEhlYWRlcnMgKi8sCiAJCQkJQ0RDMjZCNDExNjBBOENDRTAwMjY3NTdC
IC8qIE1vY2tDRE0uaCBpbiBIZWFkZXJzICovLAogCQkJCTJEOTdGMDQ4MTlERDQxNDAwMDFFRTlD
MyAvKiBNb2NrUGFnZU92ZXJsYXlDbGllbnQuaCBpbiBIZWFkZXJzICovLApAQCAtMjU4NjYsNiAr
MjU4NzksNyBAQAogCQkJCTUzQzgyOThFMTNEOEQ5MjcwMERFMkRFQiAvKiBSZW5kZXJGbGV4aWJs
ZUJveC5oIGluIEhlYWRlcnMgKi8sCiAJCQkJNTA4Q0NBNEYxM0NGMTA2QjAwMzE1MUYzIC8qIFJl
bmRlckZsb3dUaHJlYWQuaCBpbiBIZWFkZXJzICovLAogCQkJCUE4NzFERUQzMEExNTMwQzcwMEIx
MkE2OCAvKiBSZW5kZXJGcmFtZS5oIGluIEhlYWRlcnMgKi8sCisJCQkJNTNCODk1QUYxOURDN0VE
OTAwOUNBQTkzIC8qIE1pY3JvVGFzay5oIGluIEhlYWRlcnMgKi8sCiAJCQkJMEZEMzA4MEYxMTdD
RjdFNzAwQTc5MUY3IC8qIFJlbmRlckZyYW1lQmFzZS5oIGluIEhlYWRlcnMgKi8sCiAJCQkJQTg3
MURFRDEwQTE1MzBDNzAwQjEyQTY4IC8qIFJlbmRlckZyYW1lU2V0LmggaW4gSGVhZGVycyAqLywK
IAkJCQlDREVBN0M4NDEyNzYyMzA0MDBCODQ2REQgLyogUmVuZGVyRnVsbFNjcmVlbi5oIGluIEhl
YWRlcnMgKi8sCkBAIC0yNzE5Myw2ICsyNzIwNyw3IEBACiAJCQkJNTNFMjlFNUUxNjdBOEExOTAw
NTg2RDNEIC8qIEludGVybmFsU2V0dGluZ3NHZW5lcmF0ZWQuY3BwIGluIFNvdXJjZXMgKi8sCiAJ
CQkJNDE3REE3MUQxMzczNURGQTAwN0M1N0ZCIC8qIEpTSW50ZXJuYWxzLmNwcCBpbiBTb3VyY2Vz
ICovLAogCQkJCUE3NDBCNUE3MTRDOTM1QUYwMEE3N0ZBNCAvKiBKU0ludGVybmFsU2V0dGluZ3Mu
Y3BwIGluIFNvdXJjZXMgKi8sCisJCQkJQ0I4Q0YwMUYxQTk1REU1OTAwMEQ1MTBCIC8qIE1pY3Jv
VGFza1Rlc3QuY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJNTNFRDNGREUxNjdBODhFNzAwNjc2MkU2
IC8qIEpTSW50ZXJuYWxTZXR0aW5nc0dlbmVyYXRlZC5jcHAgaW4gU291cmNlcyAqLywKIAkJCQlB
NzQwQjU5NzE0QzkzNUFGMDBBNzdGQTQgLyogSlNNYWxsb2NTdGF0aXN0aWNzLmNwcCBpbiBTb3Vy
Y2VzICovLAogCQkJCUNENTM5M0QzMTc1RTAxODYwMEMwNzEyMyAvKiBKU01lbW9yeUluZm8uY3Bw
IGluIFNvdXJjZXMgKi8sCkBAIC0yOTgyOCw2ICsyOTg0Myw3IEBACiAJCQkJQjIyMjdBOTAwRDAw
QkYyMjAwNzFCNzgyIC8qIFNWR1BvbHlnb25FbGVtZW50LmNwcCBpbiBTb3VyY2VzICovLAogCQkJ
CUIyMjI3QTkzMEQwMEJGMjIwMDcxQjc4MiAvKiBTVkdQb2x5bGluZUVsZW1lbnQuY3BwIGluIFNv
dXJjZXMgKi8sCiAJCQkJQjIyMjdBOTYwRDAwQkYyMjAwNzFCNzgyIC8qIFNWR1ByZXNlcnZlQXNw
ZWN0UmF0aW8uY3BwIGluIFNvdXJjZXMgKi8sCisJCQkJQ0I4Q0YwMTgxQTkzNThENDAwMEQ1MTBC
IC8qIE1pY3JvVGFzay5jcHAgaW4gU291cmNlcyAqLywKIAkJCQlCNTQzQjg1NzE3RUI3NThGMDAz
QkU5M0EgLyogU1ZHUHJvcGVydHlJbmZvLmNwcCBpbiBTb3VyY2VzICovLAogCQkJCUIyMjI3QTk5
MEQwMEJGMjIwMDcxQjc4MiAvKiBTVkdSYWRpYWxHcmFkaWVudEVsZW1lbnQuY3BwIGluIFNvdXJj
ZXMgKi8sCiAJCQkJQjIyMjdBOUQwRDAwQkYyMjAwNzFCNzgyIC8qIFNWR1JlY3RFbGVtZW50LmNw
cCBpbiBTb3VyY2VzICovLApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvZG9tL0RvY3VtZW50
LmggYi9Tb3VyY2UvV2ViQ29yZS9kb20vRG9jdW1lbnQuaAppbmRleCAxNTQ0NGE2ZTE5ZWIyN2Mx
YTZhMjM3ZGFiOTgyMmNlN2Q3YzY4OWIxLi4zZjExMzE5NDlkMjVmZWVmNjhhNWVkNjA2MjVlMTBh
MWM1NTZkZmY2IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9kb20vRG9jdW1lbnQuaAorKysg
Yi9Tb3VyY2UvV2ViQ29yZS9kb20vRG9jdW1lbnQuaApAQCAtMTI2Miw3ICsxMjYyLDcgQEAgcHVi
bGljOgogICAgIHZvaWQgYWRkRGlzYWJsZWRGaWVsZHNldEVsZW1lbnQoKSB7IG1fZGlzYWJsZWRG
aWVsZHNldEVsZW1lbnRzQ291bnQrKzsgfQogICAgIHZvaWQgcmVtb3ZlRGlzYWJsZWRGaWVsZHNl
dEVsZW1lbnQoKSB7IEFTU0VSVChtX2Rpc2FibGVkRmllbGRzZXRFbGVtZW50c0NvdW50KTsgbV9k
aXNhYmxlZEZpZWxkc2V0RWxlbWVudHNDb3VudC0tOyB9CiAKLSAgICB2aXJ0dWFsIHZvaWQgYWRk
Q29uc29sZU1lc3NhZ2UoTWVzc2FnZVNvdXJjZSwgTWVzc2FnZUxldmVsLCBjb25zdCBTdHJpbmcm
IG1lc3NhZ2UsIHVuc2lnbmVkIGxvbmcgcmVxdWVzdElkZW50aWZpZXIgPSAwKSBvdmVycmlkZSBm
aW5hbDsKKyAgICBXRUJDT1JFX0VYUE9SVCB2aXJ0dWFsIHZvaWQgYWRkQ29uc29sZU1lc3NhZ2Uo
TWVzc2FnZVNvdXJjZSwgTWVzc2FnZUxldmVsLCBjb25zdCBTdHJpbmcmIG1lc3NhZ2UsIHVuc2ln
bmVkIGxvbmcgcmVxdWVzdElkZW50aWZpZXIgPSAwKSBvdmVycmlkZSBmaW5hbDsKIAogICAgIFdF
QkNPUkVfRVhQT1JUIHZpcnR1YWwgU2VjdXJpdHlPcmlnaW4qIHRvcE9yaWdpbigpIGNvbnN0IG92
ZXJyaWRlIGZpbmFsOwogCkBAIC0xMjg4LDYgKzEyODgsNyBAQCBwdWJsaWM6CiAgICAgYm9vbCBp
c1BsYXlpbmdBdWRpbygpIGNvbnN0IHsgcmV0dXJuIG1faXNQbGF5aW5nQXVkaW87IH0KICAgICBX
RUJDT1JFX0VYUE9SVCB2b2lkIHVwZGF0ZUlzUGxheWluZ0F1ZGlvKCk7CiAgICAgdm9pZCBwYWdl
TXV0ZWRTdGF0ZURpZENoYW5nZSgpOworICAgIFdlYWtQdHI8RG9jdW1lbnQ+IGNyZWF0ZVdlYWtQ
dHIoKSB7IHJldHVybiBtX3dlYWtGYWN0b3J5LmNyZWF0ZVdlYWtQdHIoKTsgfQogCiBwcm90ZWN0
ZWQ6CiAgICAgZW51bSBDb25zdHJ1Y3Rpb25GbGFncyB7IFN5bnRoZXNpemVkID0gMSwgTm9uUmVu
ZGVyZWRQbGFjZWhvbGRlciA9IDEgPDwgMSB9OwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUv
ZG9tL01pY3JvVGFzay5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9kb20vTWljcm9UYXNrLmNwcApuZXcg
ZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwLi5jNzg2ZTM1YTZmOTdmZmE0N2Y5NjAyYjczYmMzMjU2YTc2YmM2ZTJiCi0tLSAvZGV2
L251bGwKKysrIGIvU291cmNlL1dlYkNvcmUvZG9tL01pY3JvVGFzay5jcHAKQEAgLTAsMCArMSw1
MiBAQAorLyoKKyAqIENvcHlyaWdodCAoQykgMjAxNCBZb2F2IFdlaXNzICh5b2F2QHlvYXYud3Mp
CisgKiBDb3B5cmlnaHQgKEMpIDIwMTUgQWthbWFpIFRlY2hub2xvZ2llcyBJbmMuIEFsbCByaWdo
dHMgcmVzZXJ2ZWQuCisgKgorICogVGhpcyBsaWJyYXJ5IGlzIGZyZWUgc29mdHdhcmU7IHlvdSBj
YW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vcgorICogbW9kaWZ5IGl0IHVuZGVyIHRoZSB0ZXJtcyBv
ZiB0aGUgR05VIExpYnJhcnkgR2VuZXJhbCBQdWJsaWMKKyAqIExpY2Vuc2UgYXMgcHVibGlzaGVk
IGJ5IHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb247IGVpdGhlcgorICogdmVyc2lvbiAyIG9m
IHRoZSBMaWNlbnNlLCBvciAoYXQgeW91ciBvcHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLgorICoK
KyAqIFRoaXMgbGlicmFyeSBpcyBkaXN0cmlidXRlZCBpbiB0aGUgaG9wZSB0aGF0IGl0IHdpbGwg
YmUgdXNlZnVsLAorICogYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhl
IGltcGxpZWQgd2FycmFudHkgb2YKKyAqIE1FUkNIQU5UQUJJTElUWSBvciBGSVRORVNTIEZPUiBB
IFBBUlRJQ1VMQVIgUFVSUE9TRS4gIFNlZSB0aGUgR05VCisgKiBMaWJyYXJ5IEdlbmVyYWwgUHVi
bGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KKyAqCisgKiBZb3Ugc2hvdWxkIGhhdmUgcmVj
ZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgTGlicmFyeSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlCisg
KiBhbG9uZyB3aXRoIHRoaXMgbGlicmFyeTsgc2VlIHRoZSBmaWxlIENPUFlJTkcuTElCLiAgSWYg
bm90LCB3cml0ZSB0bworICogdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbiwgSW5jLiwgNTEg
RnJhbmtsaW4gU3RyZWV0LCBGaWZ0aCBGbG9vciwKKyAqIEJvc3RvbiwgTUEgMDIxMTAtMTMwMSwg
VVNBLgorICoKKyAqLworCisjaW5jbHVkZSAiY29uZmlnLmgiCisjaW5jbHVkZSAiTWljcm9UYXNr
LmgiCisKKyNpbmNsdWRlICJEb2N1bWVudC5oIgorI2luY2x1ZGUgPHd0Zi90ZXh0L1N0cmluZ0J1
aWxkZXIuaD4KKworbmFtZXNwYWNlIFdlYkNvcmUgeworCitNaWNyb1Rhc2tRdWV1ZSYgTWljcm9U
YXNrUXVldWU6OnNpbmdsZXRvbigpCit7CisgICAgQVNTRVJUKGlzTWFpblRocmVhZCgpKTsKKyAg
ICBzdGF0aWMgTmV2ZXJEZXN0cm95ZWQ8TWljcm9UYXNrUXVldWU+IHF1ZXVlOworICAgIHJldHVy
biBxdWV1ZTsKK30KKwordm9pZCBNaWNyb1Rhc2tRdWV1ZTo6cXVldWVNaWNyb1Rhc2soc3RkOjp1
bmlxdWVfcHRyPE1pY3JvVGFzaz4gdGFzaykKK3sKKyAgICBBU1NFUlQoaXNNYWluVGhyZWFkKCkp
OworICAgIG1fbWljcm9UYXNrUXVldWUuYXBwZW5kKFdURjo6bW92ZSh0YXNrKSk7Cit9CisKK3Zv
aWQgTWljcm9UYXNrUXVldWU6OnJ1bk1pY3JvVGFza3MoKQoreworICAgIEFTU0VSVChpc01haW5U
aHJlYWQoKSk7CisgICAgZm9yIChhdXRvJiB0YXNrIDogbV9taWNyb1Rhc2tRdWV1ZSkKKyAgICAg
ICAgdGFzay0+cnVuKCk7CisgICAgbV9taWNyb1Rhc2tRdWV1ZS5jbGVhcigpOworfQorCit9IC8v
IG5hbWVzcGFjZSBXZWJDb3JlCisKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2RvbS9NaWNy
b1Rhc2suaCBiL1NvdXJjZS9XZWJDb3JlL2RvbS9NaWNyb1Rhc2suaApuZXcgZmlsZSBtb2RlIDEw
MDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi42ZWM0
MGYxZDc0MDdjYmIzNjVhYjBhMDg4Yjg1NGQ4YWY0NWU5MGEyCi0tLSAvZGV2L251bGwKKysrIGIv
U291cmNlL1dlYkNvcmUvZG9tL01pY3JvVGFzay5oCkBAIC0wLDAgKzEsNTYgQEAKKy8qCisgKiBD
b3B5cmlnaHQgKEMpIDIwMTQgWW9hdiBXZWlzcyAoeW9hdkB5b2F2LndzKQorICogQ29weXJpZ2h0
IChDKSAyMDE1IEFrYW1haSBUZWNobm9sb2dpZXMgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgor
ICoKKyAqIFRoaXMgbGlicmFyeSBpcyBmcmVlIHNvZnR3YXJlOyB5b3UgY2FuIHJlZGlzdHJpYnV0
ZSBpdCBhbmQvb3IKKyAqIG1vZGlmeSBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBMaWJy
YXJ5IEdlbmVyYWwgUHVibGljCisgKiBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieSB0aGUgRnJlZSBT
b2Z0d2FyZSBGb3VuZGF0aW9uOyBlaXRoZXIKKyAqIHZlcnNpb24gMiBvZiB0aGUgTGljZW5zZSwg
b3IgKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KKyAqCisgKiBUaGlzIGxpYnJh
cnkgaXMgZGlzdHJpYnV0ZWQgaW4gdGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCwKKyAq
IGJ1dCBXSVRIT1VUIEFOWSBXQVJSQU5UWTsgd2l0aG91dCBldmVuIHRoZSBpbXBsaWVkIHdhcnJh
bnR5IG9mCisgKiBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBV
UlBPU0UuICBTZWUgdGhlIEdOVQorICogTGlicmFyeSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGZv
ciBtb3JlIGRldGFpbHMuCisgKgorICogWW91IHNob3VsZCBoYXZlIHJlY2VpdmVkIGEgY29weSBv
ZiB0aGUgR05VIExpYnJhcnkgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQorICogYWxvbmcgd2l0aCB0
aGlzIGxpYnJhcnk7IHNlZSB0aGUgZmlsZSBDT1BZSU5HLkxJQi4gIElmIG5vdCwgd3JpdGUgdG8K
KyAqIHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb24sIEluYy4sIDUxIEZyYW5rbGluIFN0cmVl
dCwgRmlmdGggRmxvb3IsCisgKiBCb3N0b24sIE1BIDAyMTEwLTEzMDEsIFVTQS4KKyAqCisgKi8K
KworI2lmbmRlZiBNaWNyb1Rhc2tfaAorI2RlZmluZSBNaWNyb1Rhc2tfaAorCisjaW5jbHVkZSA8
d3RmL05ldmVyRGVzdHJveWVkLmg+CisjaW5jbHVkZSA8d3RmL1JlZkNvdW50ZWQuaD4KKyNpbmNs
dWRlIDx3dGYvVmVjdG9yLmg+CisKKworbmFtZXNwYWNlIFdlYkNvcmUgeworCitjbGFzcyBNaWNy
b1Rhc2sgOiBwdWJsaWMgUmVmQ291bnRlZDxNaWNyb1Rhc2s+IHsKK3B1YmxpYzoKKyAgICB2aXJ0
dWFsIHZvaWQgcnVuKCkgPSAwOworICAgIHZpcnR1YWwgfk1pY3JvVGFzaygpIHsgfQorfTsKKwor
Y2xhc3MgTWljcm9UYXNrUXVldWUgeworICAgIGZyaWVuZCBOZXZlckRlc3Ryb3llZDxNaWNyb1Rh
c2tRdWV1ZT47CisKK3B1YmxpYzoKKyAgICBXRUJDT1JFX0VYUE9SVCBzdGF0aWMgTWljcm9UYXNr
UXVldWUmIHNpbmdsZXRvbigpOworICAgIH5NaWNyb1Rhc2tRdWV1ZSgpIHsgfQorCisgICAgV0VC
Q09SRV9FWFBPUlQgdm9pZCBxdWV1ZU1pY3JvVGFzayhzdGQ6OnVuaXF1ZV9wdHI8TWljcm9UYXNr
Pik7CisKKyAgICB2b2lkIHJ1bk1pY3JvVGFza3MoKTsKKworcHJpdmF0ZToKKyAgICBNaWNyb1Rh
c2tRdWV1ZSgpIHsgfQorICAgIFZlY3RvcjxzdGQ6OnVuaXF1ZV9wdHI8TWljcm9UYXNrPj4gbV9t
aWNyb1Rhc2tRdWV1ZTsKK307CisKK30gLy8gbmFtZXNwYWNlIFdlYkNvcmUKKworI2VuZGlmIC8v
IE1pY3JvVGFza19oCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9kb20vU2NyaXB0UnVubmVy
LmNwcCBiL1NvdXJjZS9XZWJDb3JlL2RvbS9TY3JpcHRSdW5uZXIuY3BwCmluZGV4IGVkOTRkYTNl
NzNkYjEzMDE3OGI5OWVhNGI3ZjkyYjVhYzE5ODA5ZDYuLmM0NmI3OGUwZmZlM2M4MTgzNjA0N2Vj
YTNhMDdhYjljZWQxM2FmMDQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2RvbS9TY3JpcHRS
dW5uZXIuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2RvbS9TY3JpcHRSdW5uZXIuY3BwCkBAIC0y
OCw2ICsyOCw3IEBACiAKICNpbmNsdWRlICJDYWNoZWRTY3JpcHQuaCIKICNpbmNsdWRlICJFbGVt
ZW50LmgiCisjaW5jbHVkZSAiTWljcm9UYXNrLmgiCiAjaW5jbHVkZSAiUGVuZGluZ1NjcmlwdC5o
IgogI2luY2x1ZGUgIlNjcmlwdEVsZW1lbnQuaCIKIApAQCAtMTE2LDYgKzExNyw3IEBAIHZvaWQg
U2NyaXB0UnVubmVyOjp0aW1lckZpcmVkKCkKICAgICAgICAgdG9TY3JpcHRFbGVtZW50SWZQb3Nz
aWJsZShlbGVtZW50LmdldCgpKS0+ZXhlY3V0ZShjYWNoZWRTY3JpcHQpOwogICAgICAgICBtX2Rv
Y3VtZW50LmRlY3JlbWVudExvYWRFdmVudERlbGF5Q291bnQoKTsKICAgICB9CisgICAgTWljcm9U
YXNrUXVldWU6OnNpbmdsZXRvbigpLnJ1bk1pY3JvVGFza3MoKTsKIH0KIAogfQpkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYkNvcmUvaHRtbC9wYXJzZXIvSFRNTFNjcmlwdFJ1bm5lci5jcHAgYi9Tb3Vy
Y2UvV2ViQ29yZS9odG1sL3BhcnNlci9IVE1MU2NyaXB0UnVubmVyLmNwcAppbmRleCA0MWU3MjVm
NjBkZTg2ODFmMWNmOGRiNGI1Yzk4YWRiNjI2MjJmMjFiLi4yN2RkNjczODJhNjAwZmMwMzM4NTJl
YzkwMjkyMDE2OTJkMTQzZGVkIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9odG1sL3BhcnNl
ci9IVE1MU2NyaXB0UnVubmVyLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL3BhcnNlci9I
VE1MU2NyaXB0UnVubmVyLmNwcApAQCAtMzYsNiArMzYsNyBAQAogI2luY2x1ZGUgIkhUTUxOYW1l
cy5oIgogI2luY2x1ZGUgIkhUTUxTY3JpcHRSdW5uZXJIb3N0LmgiCiAjaW5jbHVkZSAiSWdub3Jl
RGVzdHJ1Y3RpdmVXcml0ZUNvdW50SW5jcmVtZW50ZXIuaCIKKyNpbmNsdWRlICJNaWNyb1Rhc2su
aCIKICNpbmNsdWRlICJNdXRhdGlvbk9ic2VydmVyLmgiCiAjaW5jbHVkZSAiTmVzdGluZ0xldmVs
SW5jcmVtZW50ZXIuaCIKICNpbmNsdWRlICJOb3RJbXBsZW1lbnRlZC5oIgpAQCAtMTI5LDggKzEz
MCwxMCBAQCB2b2lkIEhUTUxTY3JpcHRSdW5uZXI6OmV4ZWN1dGVQZW5kaW5nU2NyaXB0QW5kRGlz
cGF0Y2hFdmVudChQZW5kaW5nU2NyaXB0JiBwZW5kaQogICAgIGlmIChwZW5kaW5nU2NyaXB0LmNh
Y2hlZFNjcmlwdCgpICYmIHBlbmRpbmdTY3JpcHQud2F0Y2hpbmdGb3JMb2FkKCkpCiAgICAgICAg
IHN0b3BXYXRjaGluZ0ZvckxvYWQocGVuZGluZ1NjcmlwdCk7CiAKLSAgICBpZiAoIWlzRXhlY3V0
aW5nU2NyaXB0KCkpCisgICAgaWYgKCFpc0V4ZWN1dGluZ1NjcmlwdCgpKSB7CiAgICAgICAgIE11
dGF0aW9uT2JzZXJ2ZXI6OmRlbGl2ZXJBbGxNdXRhdGlvbnMoKTsKKyAgICAgICAgTWljcm9UYXNr
UXVldWU6OnNpbmdsZXRvbigpLnJ1bk1pY3JvVGFza3MoKTsKKyAgICB9CiAKICAgICAvLyBDbGVh
ciB0aGUgcGVuZGluZyBzY3JpcHQgYmVmb3JlIHBvc3NpYmxlIHJlbnRyYW5jeSBmcm9tIGV4ZWN1
dGVTY3JpcHQoKQogICAgIFJlZlB0cjxFbGVtZW50PiBlbGVtZW50ID0gcGVuZGluZ1NjcmlwdC5y
ZWxlYXNlRWxlbWVudEFuZENsZWFyKCk7CkBAIC0yMzEsNiArMjM0LDggQEAgYm9vbCBIVE1MU2Ny
aXB0UnVubmVyOjpleGVjdXRlU2NyaXB0c1dhaXRpbmdGb3JQYXJzaW5nKCkKICAgICAgICAgaWYg
KCFtX2RvY3VtZW50KQogICAgICAgICAgICAgcmV0dXJuIGZhbHNlOwogICAgIH0KKyAgICBpZiAo
IWlzRXhlY3V0aW5nU2NyaXB0KCkpCisgICAgICAgIE1pY3JvVGFza1F1ZXVlOjpzaW5nbGV0b24o
KS5ydW5NaWNyb1Rhc2tzKCk7CiAgICAgcmV0dXJuIHRydWU7CiB9CiAKQEAgLTI5Myw4ICsyOTgs
MTAgQEAgdm9pZCBIVE1MU2NyaXB0UnVubmVyOjpydW5TY3JpcHQoRWxlbWVudCogc2NyaXB0LCBj
b25zdCBUZXh0UG9zaXRpb24mIHNjcmlwdFN0YXIKICAgICAgICAgLy8gZXZlcnkgc2NyaXB0IGVs
ZW1lbnQsIGV2ZW4gaWYgaXQncyBub3QgcmVhZHkgdG8gZXhlY3V0ZSB5ZXQuIFRoZXJlJ3MKICAg
ICAgICAgLy8gdW5mb3J0dWFudGVseSBubyBvYnZpb3VzIHdheSB0byB0ZWxsIGlmIHByZXBhcmVT
Y3JpcHQgaXMgZ29pbmcgdG8KICAgICAgICAgLy8gZXhlY3V0ZSB0aGUgc2NyaXB0IGZyb20gb3V0
IGhlcmUuCi0gICAgICAgIGlmICghaXNFeGVjdXRpbmdTY3JpcHQoKSkKKyAgICAgICAgaWYgKCFp
c0V4ZWN1dGluZ1NjcmlwdCgpKSB7CiAgICAgICAgICAgICBNdXRhdGlvbk9ic2VydmVyOjpkZWxp
dmVyQWxsTXV0YXRpb25zKCk7CisgICAgICAgICAgICBNaWNyb1Rhc2tRdWV1ZTo6c2luZ2xldG9u
KCkucnVuTWljcm9UYXNrcygpOworICAgICAgICB9CiAKICAgICAgICAgSW5zZXJ0aW9uUG9pbnRS
ZWNvcmQgaW5zZXJ0aW9uUG9pbnRSZWNvcmQobV9ob3N0LmlucHV0U3RyZWFtKCkpOwogICAgICAg
ICBOZXN0aW5nTGV2ZWxJbmNyZW1lbnRlciBuZXN0aW5nTGV2ZWxJbmNyZW1lbnRlcihtX3Njcmlw
dE5lc3RpbmdMZXZlbCk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS90ZXN0aW5nL0ludGVy
bmFscy5jcHAgYi9Tb3VyY2UvV2ViQ29yZS90ZXN0aW5nL0ludGVybmFscy5jcHAKaW5kZXggZGE2
ZTcwOTBjNjI0ZjE1NTRiMzg3ZjIwMWM4ZWE1NzVmNzRhODdlMC4uNTcxNmY4NGQxM2RlMWQ0NjU4
NDQ3OGY0ODgwZWNjYzZhNTY4Y2FiZiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvdGVzdGlu
Zy9JbnRlcm5hbHMuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3Rlc3RpbmcvSW50ZXJuYWxzLmNw
cApAQCAtNzksNiArNzksOCBAQAogI2luY2x1ZGUgIk1lZGlhU2Vzc2lvbk1hbmFnZXIuaCIKICNp
bmNsdWRlICJNZW1vcnlDYWNoZS5oIgogI2luY2x1ZGUgIk1lbW9yeUluZm8uaCIKKyNpbmNsdWRl
ICJNaWNyb1Rhc2suaCIKKyNpbmNsdWRlICJNaWNyb1Rhc2tUZXN0LmgiCiAjaW5jbHVkZSAiTW9j
a1BhZ2VPdmVybGF5Q2xpZW50LmgiCiAjaW5jbHVkZSAiUGFnZS5oIgogI2luY2x1ZGUgIlBhZ2VD
YWNoZS5oIgpAQCAtMjUzMiw0ICsyNTM0LDEwIEBAIFJlZlB0cjxGaWxlPiBJbnRlcm5hbHM6OmNy
ZWF0ZUZpbGUoY29uc3QgU3RyaW5nJiBwYXRoKQogICAgIHJldHVybiBGaWxlOjpjcmVhdGUodXJs
LmZpbGVTeXN0ZW1QYXRoKCkpOwogfQogCit2b2lkIEludGVybmFsczo6cXVldWVNaWNyb1Rhc2so
aW50IHRlc3ROdW1iZXIpCit7CisgICAgaWYgKGNvbnRleHREb2N1bWVudCgpKQorICAgICAgICBN
aWNyb1Rhc2tRdWV1ZTo6c2luZ2xldG9uKCkucXVldWVNaWNyb1Rhc2soTWljcm9UYXNrVGVzdDo6
Y3JlYXRlKGNvbnRleHREb2N1bWVudCgpLT5jcmVhdGVXZWFrUHRyKCksIHRlc3ROdW1iZXIpKTsK
K30KKwogfQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvdGVzdGluZy9JbnRlcm5hbHMuaCBi
L1NvdXJjZS9XZWJDb3JlL3Rlc3RpbmcvSW50ZXJuYWxzLmgKaW5kZXggMWI5YjhkNzhjNjkyZTgz
MmRiNmI2ZmQ5ZDk2ZjRlY2RmODgwYWE5Mi4uYzg3OGY1OTA2Y2NlYjU4MDkwMjMwYmQ2NDEyMGE2
ODA2YzBjY2U5ZCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvdGVzdGluZy9JbnRlcm5hbHMu
aAorKysgYi9Tb3VyY2UvV2ViQ29yZS90ZXN0aW5nL0ludGVybmFscy5oCkBAIC0zNjYsNiArMzY2
LDcgQEAgcHVibGljOgogICAgIGJvb2wgaXNQYWdlUGxheWluZ0F1ZGlvKCk7CiAKICAgICBSZWZQ
dHI8RmlsZT4gY3JlYXRlRmlsZShjb25zdCBTdHJpbmcmKTsKKyAgICB2b2lkIHF1ZXVlTWljcm9U
YXNrKGludCk7CiAKIHByaXZhdGU6CiAgICAgZXhwbGljaXQgSW50ZXJuYWxzKERvY3VtZW50Kik7
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS90ZXN0aW5nL0ludGVybmFscy5pZGwgYi9Tb3Vy
Y2UvV2ViQ29yZS90ZXN0aW5nL0ludGVybmFscy5pZGwKaW5kZXggNDk3NzI1Y2QyYjkwY2U5MWY1
YjI0ZThhN2Y0MWZkNDU1NDBhYzY2Yy4uNDA2YTkyYmRmY2MwMmMxMTNmMDExZDczNTY5ZTg3ZDU2
ODE5NzUwMyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvdGVzdGluZy9JbnRlcm5hbHMuaWRs
CisrKyBiL1NvdXJjZS9XZWJDb3JlL3Rlc3RpbmcvSW50ZXJuYWxzLmlkbApAQCAtMzIyLDQgKzMy
Miw1IEBAIGVudW0gUGFnZU92ZXJsYXlUeXBlIHsKICAgICBib29sZWFuIGlzUGFnZVBsYXlpbmdB
dWRpbygpOwogICAgIAogICAgIEZpbGUgY3JlYXRlRmlsZShET01TdHJpbmcgdXJsKTsKKyAgICB2
b2lkIHF1ZXVlTWljcm9UYXNrKGxvbmcgdGVzdE51bWJlcik7CiB9OwpkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYkNvcmUvdGVzdGluZy9NaWNyb1Rhc2tUZXN0LmNwcCBiL1NvdXJjZS9XZWJDb3JlL3Rl
c3RpbmcvTWljcm9UYXNrVGVzdC5jcHAKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uNDEzZjJmZGE4M2JjZjdmNGNjYWM2
NmRjMDljYzVlNmYzZDg0YjFhYgotLS0gL2Rldi9udWxsCisrKyBiL1NvdXJjZS9XZWJDb3JlL3Rl
c3RpbmcvTWljcm9UYXNrVGVzdC5jcHAKQEAgLTAsMCArMSw0MyBAQAorLyoKKyAqIENvcHlyaWdo
dCAoQykgMjAxNSBBa2FtYWkgVGVjaG5vbG9naWVzIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4K
KyAqCisgKiBUaGlzIGxpYnJhcnkgaXMgZnJlZSBzb2Z0d2FyZTsgeW91IGNhbiByZWRpc3RyaWJ1
dGUgaXQgYW5kL29yCisgKiBtb2RpZnkgaXQgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUgTGli
cmFyeSBHZW5lcmFsIFB1YmxpYworICogTGljZW5zZSBhcyBwdWJsaXNoZWQgYnkgdGhlIEZyZWUg
U29mdHdhcmUgRm91bmRhdGlvbjsgZWl0aGVyCisgKiB2ZXJzaW9uIDIgb2YgdGhlIExpY2Vuc2Us
IG9yIChhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uCisgKgorICogVGhpcyBsaWJy
YXJ5IGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCisg
KiBidXQgV0lUSE9VVCBBTlkgV0FSUkFOVFk7IHdpdGhvdXQgZXZlbiB0aGUgaW1wbGllZCB3YXJy
YW50eSBvZgorICogTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQ
VVJQT1NFLiAgU2VlIHRoZSBHTlUKKyAqIExpYnJhcnkgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBm
b3IgbW9yZSBkZXRhaWxzLgorICoKKyAqIFlvdSBzaG91bGQgaGF2ZSByZWNlaXZlZCBhIGNvcHkg
b2YgdGhlIEdOVSBMaWJyYXJ5IEdlbmVyYWwgUHVibGljIExpY2Vuc2UKKyAqIGFsb25nIHdpdGgg
dGhpcyBsaWJyYXJ5OyBzZWUgdGhlIGZpbGUgQ09QWUlORy5MSUIuICBJZiBub3QsIHdyaXRlIHRv
CisgKiB0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uLCBJbmMuLCA1MSBGcmFua2xpbiBTdHJl
ZXQsIEZpZnRoIEZsb29yLAorICogQm9zdG9uLCBNQSAwMjExMC0xMzAxLCBVU0EuCisgKgorICov
CisKKyNpbmNsdWRlICJjb25maWcuaCIKKyNpbmNsdWRlICJNaWNyb1Rhc2tUZXN0LmgiCisKKyNp
bmNsdWRlICJEb2N1bWVudC5oIgorCituYW1lc3BhY2UgV2ViQ29yZSB7CisKK3ZvaWQgTWljcm9U
YXNrVGVzdDo6cnVuKCkKK3sKKyAgICBTdHJpbmdCdWlsZGVyIG1lc3NhZ2U7CisgICAgbWVzc2Fn
ZS5hcHBlbmQoIk1pY3JvVGFzayAjIik7CisgICAgbWVzc2FnZS5hcHBlbmQoU3RyaW5nOjpudW1i
ZXIobV90ZXN0TnVtYmVyKSk7CisgICAgbWVzc2FnZS5hcHBlbmQoIiBoYXMgcnVuLiIpOworICAg
IGlmIChtX2RvY3VtZW50KQorICAgICAgICBtX2RvY3VtZW50LT5hZGRDb25zb2xlTWVzc2FnZShN
ZXNzYWdlU291cmNlOjpKUywgTWVzc2FnZUxldmVsOjpEZWJ1ZywgbWVzc2FnZS50b1N0cmluZygp
KTsKK30KKworc3RkOjp1bmlxdWVfcHRyPE1pY3JvVGFza1Rlc3Q+IE1pY3JvVGFza1Rlc3Q6OmNy
ZWF0ZShXZWFrUHRyPERvY3VtZW50PiBkb2N1bWVudCwgaW50IHRlc3ROdW1iZXIpCit7CisgICAg
cmV0dXJuIHN0ZDo6dW5pcXVlX3B0cjxNaWNyb1Rhc2tUZXN0PihuZXcgTWljcm9UYXNrVGVzdChk
b2N1bWVudCwgdGVzdE51bWJlcikpOworfQorCit9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViQ29yZS90ZXN0aW5nL01pY3JvVGFza1Rlc3QuaCBiL1NvdXJjZS9X
ZWJDb3JlL3Rlc3RpbmcvTWljcm9UYXNrVGVzdC5oCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4
IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjBmNWIyYzdmMjQ5NTVk
ODk0YzIwYzhlYzkxYTlmODE5MjgyNGIwYmEKLS0tIC9kZXYvbnVsbAorKysgYi9Tb3VyY2UvV2Vi
Q29yZS90ZXN0aW5nL01pY3JvVGFza1Rlc3QuaApAQCAtMCwwICsxLDQ5IEBACisvKgorICogQ29w
eXJpZ2h0IChDKSAyMDE1IEFrYW1haSBUZWNobm9sb2dpZXMgSW5jLiBBbGwgcmlnaHRzIHJlc2Vy
dmVkLgorICoKKyAqIFRoaXMgbGlicmFyeSBpcyBmcmVlIHNvZnR3YXJlOyB5b3UgY2FuIHJlZGlz
dHJpYnV0ZSBpdCBhbmQvb3IKKyAqIG1vZGlmeSBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdO
VSBMaWJyYXJ5IEdlbmVyYWwgUHVibGljCisgKiBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieSB0aGUg
RnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uOyBlaXRoZXIKKyAqIHZlcnNpb24gMiBvZiB0aGUgTGlj
ZW5zZSwgb3IgKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KKyAqCisgKiBUaGlz
IGxpYnJhcnkgaXMgZGlzdHJpYnV0ZWQgaW4gdGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1
bCwKKyAqIGJ1dCBXSVRIT1VUIEFOWSBXQVJSQU5UWTsgd2l0aG91dCBldmVuIHRoZSBpbXBsaWVk
IHdhcnJhbnR5IG9mCisgKiBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNV
TEFSIFBVUlBPU0UuICBTZWUgdGhlIEdOVQorICogTGlicmFyeSBHZW5lcmFsIFB1YmxpYyBMaWNl
bnNlIGZvciBtb3JlIGRldGFpbHMuCisgKgorICogWW91IHNob3VsZCBoYXZlIHJlY2VpdmVkIGEg
Y29weSBvZiB0aGUgR05VIExpYnJhcnkgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQorICogYWxvbmcg
d2l0aCB0aGlzIGxpYnJhcnk7IHNlZSB0aGUgZmlsZSBDT1BZSU5HLkxJQi4gIElmIG5vdCwgd3Jp
dGUgdG8KKyAqIHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb24sIEluYy4sIDUxIEZyYW5rbGlu
IFN0cmVldCwgRmlmdGggRmxvb3IsCisgKiBCb3N0b24sIE1BIDAyMTEwLTEzMDEsIFVTQS4KKyAq
CisgKi8KKworI2lmbmRlZiBNaWNyb1Rhc2tUZXN0X2gKKyNkZWZpbmUgTWljcm9UYXNrVGVzdF9o
CisKKyNpbmNsdWRlICJNaWNyb1Rhc2suaCIKKyNpbmNsdWRlIDx3dGYvV2Vha1B0ci5oPgorCitu
YW1lc3BhY2UgV2ViQ29yZSB7CisKK2NsYXNzIERvY3VtZW50OworCitjbGFzcyBNaWNyb1Rhc2tU
ZXN0IDogcHVibGljIE1pY3JvVGFzayB7CitwdWJsaWM6CisgICAgdmlydHVhbCB2b2lkIHJ1bigp
IG92ZXJyaWRlOworICAgIFdFQkNPUkVfRVhQT1JUIHN0YXRpYyBzdGQ6OnVuaXF1ZV9wdHI8TWlj
cm9UYXNrVGVzdD4gY3JlYXRlKFdlYWtQdHI8RG9jdW1lbnQ+LCBpbnQgdGVzdE51bWJlcik7CisK
K3ByaXZhdGU6CisgICAgTWljcm9UYXNrVGVzdChXZWFrUHRyPERvY3VtZW50PiBkb2N1bWVudCwg
aW50IHRlc3ROdW1iZXIpCisgICAgICAgIDogbV9kb2N1bWVudChkb2N1bWVudCkKKyAgICAgICAg
LCBtX3Rlc3ROdW1iZXIodGVzdE51bWJlcikKKyAgICB7CisgICAgfQorCisgICAgV2Vha1B0cjxE
b2N1bWVudD4gbV9kb2N1bWVudDsKKyAgICBpbnQgbV90ZXN0TnVtYmVyOworfTsKKworfSAvLyBu
YW1lc3BhY2UgV2ViQ29yZQorCisjZW5kaWYKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL0NoYW5n
ZUxvZyBiL0xheW91dFRlc3RzL0NoYW5nZUxvZwppbmRleCA1M2Y5YWIzMmFkMDI4N2Y0YTUxNWRl
YTcwYjgwNjY1MzY0YTM0NTE0Li41Y2EzMzI5NGUxOWExNWM1ZGEyMGUzMTkyZmU2NWQ2YmUxYzg4
NmY1IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKKysrIGIvTGF5b3V0VGVzdHMv
Q2hhbmdlTG9nCkBAIC0xLDMgKzEsMTkgQEAKKzIwMTUtMDMtMDIgICBZb2F2IFdlaXNzICA8eW9h
dkB5b2F2LndzPgorCisgICAgICAgIEFkZCBhIG1pY3JvdGFzayBhYnN0cmFjdGlvbgorICAgICAg
ICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTM3NDk2CisKKyAgICAg
ICAgUmV2aWV3ZWQgYnkgU2FtIFdlaW5pZy4KKworICAgICAgICBBZGRpbmcgYSB0ZXN0IGZvciBt
aWNyb3Rhc2sgYWJzdHJhY3Rpb24uCisKKyAgICAgICAgKiBmYXN0L2RvbS9taWNyb3Rhc2stZGV0
YWNoLmh0bWw6IEFkZGVkLgorICAgICAgICAqIGZhc3QvZG9tL21pY3JvdGFzay1kZXRhY2gtZXhw
ZWN0ZWQudHh0OiBBZGRlZC4KKyAgICAgICAgKiBmYXN0L2RvbS9taWNyb3Rhc2staW5vcmRlci5o
dG1sOiBBZGRlZC4KKyAgICAgICAgKiBmYXN0L2RvbS9taWNyb3Rhc2staW5vcmRlci1leHBlY3Rl
ZC50eHQ6IEFkZGVkLgorICAgICAgICAqIGZhc3QvZG9tL21pY3JvdGFzay1yZXZlcnNlLmh0bWw6
IEFkZGVkLgorICAgICAgICAqIGZhc3QvZG9tL21pY3JvdGFzay1yZXZlcnNlLWV4cGVjdGVkLnR4
dDogQWRkZWQuCisKIDIwMTUtMDMtMDEgIFNpbW9uIEZyYXNlciAgPHNpbW9uLmZyYXNlckBhcHBs
ZS5jb20+CiAKICAgICAgICAgTWFrZSBjbGlwLXBhdGggd29yayBvbiA8dmlkZW8+LCA8Y2FudmFz
PiBldGMuCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L2RvbS9taWNyb3Rhc2stZGV0YWNo
LWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2Zhc3QvZG9tL21pY3JvdGFzay1kZXRhY2gtZXhw
ZWN0ZWQudHh0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAuLjI4Y2QyOTU2OGUyMGY2ZWU0ZGJkOWE0MWNiNmY4NmM0ODI3
ZjkxNjEKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9mYXN0L2RvbS9taWNyb3Rhc2st
ZGV0YWNoLWV4cGVjdGVkLnR4dApAQCAtMCwwICsxLDkgQEAKK0NPTlNPTEUgTUVTU0FHRTogbGlu
ZSAzMTogRmluaXNoZWQgcXVldWVpbmcgdGVzdHMuCitDT05TT0xFIE1FU1NBR0U6IE1pY3JvVGFz
ayAjMSBoYXMgcnVuLgorQ09OU09MRSBNRVNTQUdFOiBNaWNyb1Rhc2sgIzAgaGFzIHJ1bi4KKwor
CistLS0tLS0tLQorRnJhbWU6ICdmcmFtZTEnCistLS0tLS0tLQorCmRpZmYgLS1naXQgYS9MYXlv
dXRUZXN0cy9mYXN0L2RvbS9taWNyb3Rhc2stZGV0YWNoLmh0bWwgYi9MYXlvdXRUZXN0cy9mYXN0
L2RvbS9taWNyb3Rhc2stZGV0YWNoLmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uODk3NzczMjdlYTU3MzE1NWZi
YjY2ZGEyNmQyNzkwNDViZjFmY2E0ZAotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2Zh
c3QvZG9tL21pY3JvdGFzay1kZXRhY2guaHRtbApAQCAtMCwwICsxLDM3IEBACis8IURPQ1RZUEUg
aHRtbD4KKzxzY3JpcHQ+CitpZiAod2luZG93LnRlc3RSdW5uZXIpIHsKKyAgICB0ZXN0UnVubmVy
LmR1bXBBc1RleHQoKTsKKyAgICB0ZXN0UnVubmVyLmR1bXBDaGlsZEZyYW1lc0FzVGV4dCgpOwor
ICAgIHRlc3RSdW5uZXIud2FpdFVudGlsRG9uZSgpOworfQorPC9zY3JpcHQ+Cis8Ym9keT4KKzxp
ZnJhbWUgaWQ9ImZyYW1lMSI+PC9pZnJhbWU+Cis8aWZyYW1lIGlkPSJmcmFtZTIiPjwvaWZyYW1l
PgorPHNjcmlwdD4KKworKGZ1bmN0aW9uKCkgeworICAgIHZhciBpZnJhbWUxID0gZG9jdW1lbnQu
cXVlcnlTZWxlY3RvcigiI2ZyYW1lMSIpLmNvbnRlbnRXaW5kb3c7CisgICAgdmFyIGlmcmFtZTJO
b2RlID0gZG9jdW1lbnQucXVlcnlTZWxlY3RvcigiI2ZyYW1lMiIpOworICAgIHZhciBpZnJhbWUy
ID0gaWZyYW1lMk5vZGUuY29udGVudFdpbmRvdzsKKworICAgIGlmKGlmcmFtZTIuaW50ZXJuYWxz
KQorICAgICAgICBpZnJhbWUyLmludGVybmFscy5xdWV1ZU1pY3JvVGFzaygyKTsKKyAgICBpZihp
ZnJhbWUxLmludGVybmFscykKKyAgICAgICAgaWZyYW1lMS5pbnRlcm5hbHMucXVldWVNaWNyb1Rh
c2soMSk7CisgICAgaWYod2luZG93LmludGVybmFscykKKyAgICAgICAgaW50ZXJuYWxzLnF1ZXVl
TWljcm9UYXNrKDApOworICAgIGRvY3VtZW50LmJvZHkucmVtb3ZlQ2hpbGQoaWZyYW1lMk5vZGUp
OworfSgpKTsKKworaWYgKHdpbmRvdy5HQ0NvbnRyb2xsZXIpCisgICAgR0NDb250cm9sbGVyLmNv
bGxlY3QoKTsKKworY29uc29sZS5sb2coIkZpbmlzaGVkIHF1ZXVlaW5nIHRlc3RzLiIpOworcmVx
dWVzdEFuaW1hdGlvbkZyYW1lKGZ1bmN0aW9uKCkgeworICAgIGlmICh3aW5kb3cudGVzdFJ1bm5l
cikKKyAgICAgICAgdGVzdFJ1bm5lci5ub3RpZnlEb25lKCk7Cit9KTsKKzwvc2NyaXB0PgorPC9i
b2R5PgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9kb20vbWljcm90YXNrLWlub3JkZXIt
ZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvZmFzdC9kb20vbWljcm90YXNrLWlub3JkZXItZXhw
ZWN0ZWQudHh0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAuLjAzODBiOTRjN2M4MTgzYTY5NmUxYWIyMjY5OWVhY2FmY2Qz
ZGQzNzMKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9mYXN0L2RvbS9taWNyb3Rhc2st
aW5vcmRlci1leHBlY3RlZC50eHQKQEAgLTAsMCArMSwxNSBAQAorQ09OU09MRSBNRVNTQUdFOiBs
aW5lIDIzOiBGaW5pc2hlZCBxdWV1ZWluZyB0ZXN0cy4KK0NPTlNPTEUgTUVTU0FHRTogTWljcm9U
YXNrICMyIGhhcyBydW4uCitDT05TT0xFIE1FU1NBR0U6IE1pY3JvVGFzayAjMSBoYXMgcnVuLgor
Q09OU09MRSBNRVNTQUdFOiBNaWNyb1Rhc2sgIzAgaGFzIHJ1bi4KKyAKKworLS0tLS0tLS0KK0Zy
YW1lOiAnZnJhbWUxJworLS0tLS0tLS0KKworCistLS0tLS0tLQorRnJhbWU6ICdmcmFtZTInCist
LS0tLS0tLQorCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L2RvbS9taWNyb3Rhc2staW5v
cmRlci5odG1sIGIvTGF5b3V0VGVzdHMvZmFzdC9kb20vbWljcm90YXNrLWlub3JkZXIuaHRtbApu
ZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwLi43OWM4ZTJmNzg5ODNhM2U2ODVlYWMxNTUwOTU2MTAxMWU4NjFmOWE5Ci0tLSAv
ZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC9kb20vbWljcm90YXNrLWlub3JkZXIuaHRt
bApAQCAtMCwwICsxLDI4IEBACis8IURPQ1RZUEUgaHRtbD4KKzxzY3JpcHQ+CitpZiAod2luZG93
LnRlc3RSdW5uZXIpIHsKKyAgICB0ZXN0UnVubmVyLmR1bXBBc1RleHQoKTsKKyAgICB0ZXN0UnVu
bmVyLmR1bXBDaGlsZEZyYW1lc0FzVGV4dCgpOworICAgIHRlc3RSdW5uZXIud2FpdFVudGlsRG9u
ZSgpOworfQorPC9zY3JpcHQ+Cis8aWZyYW1lIGlkPSJmcmFtZTEiPjwvaWZyYW1lPgorPGlmcmFt
ZSBpZD0iZnJhbWUyIj48L2lmcmFtZT4KKzxzY3JpcHQ+CisKK3ZhciBpZnJhbWUxID0gZG9jdW1l
bnQucXVlcnlTZWxlY3RvcigiI2ZyYW1lMSIpLmNvbnRlbnRXaW5kb3c7Cit2YXIgaWZyYW1lMiA9
IGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoIiNmcmFtZTIiKS5jb250ZW50V2luZG93OworCitpZihp
ZnJhbWUyLmludGVybmFscykKKyAgICBpZnJhbWUyLmludGVybmFscy5xdWV1ZU1pY3JvVGFzaygy
KTsKK2lmKGlmcmFtZTEuaW50ZXJuYWxzKQorICAgIGlmcmFtZTEuaW50ZXJuYWxzLnF1ZXVlTWlj
cm9UYXNrKDEpOworaWYod2luZG93LmludGVybmFscykKKyAgICBpbnRlcm5hbHMucXVldWVNaWNy
b1Rhc2soMCk7CisKK2NvbnNvbGUubG9nKCJGaW5pc2hlZCBxdWV1ZWluZyB0ZXN0cy4iKTsKK3Jl
cXVlc3RBbmltYXRpb25GcmFtZShmdW5jdGlvbigpIHsKKyAgICBpZiAod2luZG93LnRlc3RSdW5u
ZXIpCisgICAgICAgIHRlc3RSdW5uZXIubm90aWZ5RG9uZSgpOworfSk7Cis8L3NjcmlwdD4KZGlm
ZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3QvZG9tL21pY3JvdGFzay1yZXZlcnNlLWV4cGVjdGVk
LnR4dCBiL0xheW91dFRlc3RzL2Zhc3QvZG9tL21pY3JvdGFzay1yZXZlcnNlLWV4cGVjdGVkLnR4
dApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwLi4yZWM4OGJiNTRmMGJhZmZmMmI0OTRlMjIzM2FmZWU0MzU4MzY3YTNhCi0t
LSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC9kb20vbWljcm90YXNrLXJldmVyc2Ut
ZXhwZWN0ZWQudHh0CkBAIC0wLDAgKzEsMTUgQEAKK0NPTlNPTEUgTUVTU0FHRTogbGluZSAyMzog
RmluaXNoZWQgcXVldWVpbmcgdGVzdHMuCitDT05TT0xFIE1FU1NBR0U6IE1pY3JvVGFzayAjMCBo
YXMgcnVuLgorQ09OU09MRSBNRVNTQUdFOiBNaWNyb1Rhc2sgIzEgaGFzIHJ1bi4KK0NPTlNPTEUg
TUVTU0FHRTogTWljcm9UYXNrICMyIGhhcyBydW4uCisgCisKKy0tLS0tLS0tCitGcmFtZTogJ2Zy
YW1lMScKKy0tLS0tLS0tCisKKworLS0tLS0tLS0KK0ZyYW1lOiAnZnJhbWUyJworLS0tLS0tLS0K
KwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9kb20vbWljcm90YXNrLXJldmVyc2UuaHRt
bCBiL0xheW91dFRlc3RzL2Zhc3QvZG9tL21pY3JvdGFzay1yZXZlcnNlLmh0bWwKbmV3IGZpbGUg
bW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MC4uYjFiNGU3Nzg2MjE3YmFkMzZjZGY5MDQ5YjljM2U4ZjRmYTI3MmJkMAotLS0gL2Rldi9udWxs
CisrKyBiL0xheW91dFRlc3RzL2Zhc3QvZG9tL21pY3JvdGFzay1yZXZlcnNlLmh0bWwKQEAgLTAs
MCArMSwyOCBAQAorPCFET0NUWVBFIGh0bWw+Cis8c2NyaXB0PgoraWYgKHdpbmRvdy50ZXN0UnVu
bmVyKSB7CisgICAgdGVzdFJ1bm5lci5kdW1wQXNUZXh0KCk7CisgICAgdGVzdFJ1bm5lci5kdW1w
Q2hpbGRGcmFtZXNBc1RleHQoKTsKKyAgICB0ZXN0UnVubmVyLndhaXRVbnRpbERvbmUoKTsKK30K
Kzwvc2NyaXB0PgorPGlmcmFtZSBpZD0iZnJhbWUxIj48L2lmcmFtZT4KKzxpZnJhbWUgaWQ9ImZy
YW1lMiI+PC9pZnJhbWU+Cis8c2NyaXB0PgorCit2YXIgaWZyYW1lMSA9IGRvY3VtZW50LnF1ZXJ5
U2VsZWN0b3IoIiNmcmFtZTEiKS5jb250ZW50V2luZG93OwordmFyIGlmcmFtZTIgPSBkb2N1bWVu
dC5xdWVyeVNlbGVjdG9yKCIjZnJhbWUyIikuY29udGVudFdpbmRvdzsKKworaWYod2luZG93Lmlu
dGVybmFscykKKyAgICBpbnRlcm5hbHMucXVldWVNaWNyb1Rhc2soMCk7CitpZihpZnJhbWUxLmlu
dGVybmFscykKKyAgICBpZnJhbWUxLmludGVybmFscy5xdWV1ZU1pY3JvVGFzaygxKTsKK2lmKGlm
cmFtZTIuaW50ZXJuYWxzKQorICAgIGlmcmFtZTIuaW50ZXJuYWxzLnF1ZXVlTWljcm9UYXNrKDIp
OworCitjb25zb2xlLmxvZygiRmluaXNoZWQgcXVldWVpbmcgdGVzdHMuIik7CityZXF1ZXN0QW5p
bWF0aW9uRnJhbWUoZnVuY3Rpb24oKSB7CisgICAgaWYgKHdpbmRvdy50ZXN0UnVubmVyKQorICAg
ICAgICB0ZXN0UnVubmVyLm5vdGlmeURvbmUoKTsKK30pOworPC9zY3JpcHQ+Cg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>247697</attachid>
            <date>2015-03-02 14:10:29 -0800</date>
            <delta_ts>2015-03-03 00:15:18 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-137496-20150302141012.patch</filename>
            <type>text/plain</type>
            <size>36595</size>
            <attacher name="Yoav Weiss">yoav</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTgwODg0CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggMjI5ZDYwOTEzYjhmMTFj
YTM3NjIwNGQ4MWJlYmI1Yzk2NTI4NzU3NS4uZTU3MDBiZWJlYmU0MWQ0MDFmMTFmOWI5Y2E0ZTgx
OWEyZTMxNzg0NiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDQ2IEBACisyMDE1LTAzLTAyICBZb2F2
IFdlaXNzICA8eW9hdkB5b2F2LndzPgorCisgICAgICAgIEFkZCBhIG1pY3JvdGFzayBhYnN0cmFj
dGlvbgorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTM3
NDk2CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgU2FtIFdlaW5pZy4KKworICAgICAgICBUaGlzIHBh
dGNoIGFkZHMgYSBtaWNyb3Rhc2sgYWJzdHJhY3Rpb246IGh0dHBzOi8vaHRtbC5zcGVjLndoYXR3
Zy5vcmcvbXVsdGlwYWdlL3dlYmFwcGFwaXMuaHRtbCNtaWNyb3Rhc2sKKyAgICAgICAgVGhhdCBh
YnN0cmFjdGlvbiBpcyByZXF1aXJlZCBpbiBvcmRlciB0byBlbmFibGUgYXN5bmMgbG9hZGluZyBv
ZiBpbWFnZXMsCisgICAgICAgIHdoaWNoIGlzIGluIHR1cm4gcmVxdWlyZWQgdG8gZW5hYmxlIHN1
cHBvcnQgZm9yIHRoZSBwaWN0dXJlIGVsZW1lbnQsIGFzIHdlbGwgYXMKKyAgICAgICAgdG8gbWFr
ZSBzdXJlIHRoYXQgdGhlIG9yZGVyIG9mIHByb3BlcnRpZXMgc2V0IG9uIEhUTUxJbWFnZUVsZW1l
bnQgaGFzIG5vIGltcGxpY2F0aW9ucy4KKworICAgICAgICAqIFdlYkNvcmUudmN4cHJvai9XZWJD
b3JlLnZjeHByb2o6IEFkZCBNaWNyb1Rhc2sue2gsY3BwfSB0byB0aGUgcHJvamVjdC4KKyAgICAg
ICAgKiBXZWJDb3JlLnZjeHByb2ovV2ViQ29yZVRlc3RTdXBwb3J0LnZjeHByb2o6IEFkZCBNaWNy
b1Rhc2tUZXN0LntoLGNwcH0gdG8gdGhlIHByb2plY3QuCisgICAgICAgICogV2ViQ29yZS52Y3hw
cm9qL1dlYkNvcmUudmN4cHJvai5maWx0ZXJzOiBBZGQgTWljcm9UYXNrLntoLGNwcH0gdG8gdGhl
IHByb2plY3QuCisgICAgICAgICogV2ViQ29yZS52Y3hwcm9qL1dlYkNvcmVUZXN0U3VwcG9ydC52
Y3hwcm9qLmZpbHRlcnM6IEFkZCBNaWNyb1Rhc2tUZXN0LntoLGNwcH0gdG8gdGhlIHByb2plY3Qu
CisgICAgICAgICogV2ViQ29yZS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qOiBBZGQgTWljcm9U
YXNreyxUZXN0fS57aCxjcHB9IHRvIHRoZSBwcm9qZWN0LgorICAgICAgICAqIGRvbS9Eb2N1bWVu
dC5oOiBBZGQgV0VCQ09SRV9FWFBPUlQgdG8gYWRkQ29uc29sZU1lc3NhZ2UsIHNvIGl0IGNhbiBi
ZSB1c2VkIGluIE1pY3JvVGFza1Rlc3QgdGhhdCdzIGluIFdlYkNvcmVUZXN0U3VwcG9ydC4uCisg
ICAgICAgICogZG9tL01pY3JvVGFzay5oOiBBZGQgYSBNaWNyb1Rhc2sgaW50ZXJmYWNlIGNsYXNz
LiBBZGQgYSBNaWNyb1Rhc2tRdWV1ZSBzaW5nbGV0b24uCisgICAgICAgIChXZWJDb3JlOjpNaWNy
b1Rhc2s6On5NaWNyb1Rhc2spOgorICAgICAgICAoV2ViQ29yZTo6TWljcm9UYXNrOjpydW4pOiBS
dW4gdGhlIG1pY3JvdGFzay4KKyAgICAgICAgKiBkb20vTWljcm9UYXNrLmNwcDogSW1wbGVtZW50
IHRoZSBNaWNyb1Rhc2tRdWV1ZSBzaW5nbGV0b24uCisgICAgICAgIChXZWJDb3JlOjpNaWNyb1Rh
c2tRdWV1ZTo6c2luZ2xldG9uKTogR2V0IGEgc2luZ2xldG9uIGluc3RhbmNlIG9mIE1pY3JvVGFz
a1F1ZXVlLgorICAgICAgICAoV2ViQ29yZTo6TWljcm9UYXNrUXVldWU6OnF1ZXVlTWljcm9UYXNr
KTogQWRkIGEgbWljcm90YXNrIHRvIHRoZSBxdWV1ZS4KKyAgICAgICAgKFdlYkNvcmU6Ok1pY3Jv
VGFza1F1ZXVlOjpydW5NaWNyb1Rhc2tzKTogUnVuIGFsbCB0aGUgbWljcm90YXNrcyBpbiB0aGUg
cXVldWUgYW5kIGNsZWFyIGl0LgorICAgICAgICAqIGRvbS9TY3JpcHRSdW5uZXIuY3BwOiBUcmln
Z2VyIHJ1bm5pbmcgb2YgYWxsIG1pY3JvdGFza3MgaW4gcXVldWUuCisgICAgICAgIChXZWJDb3Jl
OjpTY3JpcHRSdW5uZXI6OnRpbWVyRmlyZWQpOgorICAgICAgICAqIGh0bWwvcGFyc2VyL0hUTUxT
Y3JpcHRSdW5uZXIuY3BwOiBUcmlnZ2VyIHJ1bm5pbmcgb2YgYWxsIG1pY3JvdGFza3MgaW4gcXVl
dWUuCisgICAgICAgIChXZWJDb3JlOjpIVE1MU2NyaXB0UnVubmVyOjpleGVjdXRlUGVuZGluZ1Nj
cmlwdEFuZERpc3BhdGNoRXZlbnQpOgorICAgICAgICAoV2ViQ29yZTo6SFRNTFNjcmlwdFJ1bm5l
cjo6ZXhlY3V0ZVNjcmlwdHNXYWl0aW5nRm9yUGFyc2luZyk6CisgICAgICAgIChXZWJDb3JlOjpI
VE1MU2NyaXB0UnVubmVyOjpydW5TY3JpcHQpOgorICAgICAgICAqIHRlc3RpbmcvSW50ZXJuYWxz
LmNwcDogQWRkIGEgbWV0aG9kIHRvIHF1ZXVlIGEgdGVzdCBtaWNyb3Rhc2suCisgICAgICAgIChX
ZWJDb3JlOjpJbnRlcm5hbHM6OnF1ZXVlTWljcm9UYXNrKToKKyAgICAgICAgKiB0ZXN0aW5nL0lu
dGVybmFscy5oOiBBZGQgYSBtZXRob2QgdG8gcXVldWUgYSB0ZXN0IG1pY3JvdGFzay4KKyAgICAg
ICAgKFdlYkNvcmU6OkludGVybmFsczo6cXVldWVNaWNyb1Rhc2spOgorICAgICAgICAqIHRlc3Rp
bmcvSW50ZXJuYWxzLmlkbDogRXhwb3NlIHRlc3QgbWljcm90YXNrIHF1ZXVlaW5nIHRvIHRlc3Qg
SlMuCisgICAgICAgICogdGVzdGluZy9NaWNyb1Rhc2tUZXN0LmNwcDogQWRkIGEgdGVzdCBjbGFz
cyB0aGF0IGltcGxlbWVudHMgYSBtaWNyb3Rhc2sgYW5kIHByaW50cyB0byB0aGUgY29uc29sZSB3
aGVuIGl0IHJ1bnMuCisgICAgICAgIChXZWJDb3JlOjpNaWNyb1Rhc2tUZXN0OjpydW4pOiBSdW4g
dGhlIG1pY3JvdGFzaworICAgICAgICAoV2ViQ29yZTo6TWljcm9UYXNrVGVzdDo6Y3JlYXRlKTog
Q3JlYXRlIGEgdGVzdCBtaWNyb3Rhc2suCisgICAgICAgICogdGVzdGluZy9NaWNyb1Rhc2tUZXN0
Lmg6IEFkZCBhIHRlc3QgY2xhc3MgdGhhdCBpbXBsZW1lbnRzIGEgbWljcm90YXNrLgorICAgICAg
ICAoV2ViQ29yZTo6TWljcm9UYXNrVGVzdDo6cnVuKToKKyAgICAgICAgKFdlYkNvcmU6Ok1pY3Jv
VGFza1Rlc3Q6OmNyZWF0ZSk6CisKIDIwMTUtMDMtMDIgIERhdmlkIEtpbHplciAgPGRka2lsemVy
QGFwcGxlLmNvbT4KIAogICAgICAgICBSRUdSRVNTSU9OIChyMTgwODgyKTogQnVpbGQgZmFpbHVy
ZTogTWV0aG9kcyBub3QgbWFya2VkIG92ZXJyaWRlIGluIEdyYXBoaWNzTGF5ZXJDQS5oCmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9DTWFrZUxpc3RzLnR4dCBiL1NvdXJjZS9XZWJDb3JlL0NN
YWtlTGlzdHMudHh0CmluZGV4IDMyODk4YzdkMGVkNDBjZTBhMGNhM2Y4MTFmN2UwYTUyMDk5ZTZh
NzUuLjc1MzQ2NGI1NzRiNzYzNmJjM2Q3NTVjNDRjOTFlZmUyZjc4YTNhODMgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9XZWJDb3JlL0NNYWtlTGlzdHMudHh0CisrKyBiL1NvdXJjZS9XZWJDb3JlL0NNYWtl
TGlzdHMudHh0CkBAIC0xMzcwLDYgKzEzNzAsNyBAQCBzZXQoV2ViQ29yZV9TT1VSQ0VTCiAgICAg
ZG9tL01lc3NhZ2VFdmVudC5jcHAKICAgICBkb20vTWVzc2FnZVBvcnQuY3BwCiAgICAgZG9tL01l
c3NhZ2VQb3J0Q2hhbm5lbC5jcHAKKyAgICBkb20vTWljcm9UYXNrLmNwcAogICAgIGRvbS9Nb3Vz
ZUV2ZW50LmNwcAogICAgIGRvbS9Nb3VzZVJlbGF0ZWRFdmVudC5jcHAKICAgICBkb20vTXV0YXRp
b25FdmVudC5jcHAKQEAgLTMxNTQsNiArMzE1NSw3IEBAIHNldChXZWJDb3JlVGVzdFN1cHBvcnRf
U09VUkNFUwogICAgIHRlc3RpbmcvSW50ZXJuYWxTZXR0aW5ncy5jcHAKICAgICB0ZXN0aW5nL0lu
dGVybmFscy5jcHAKIAorICAgIHRlc3RpbmcvTWljcm9UYXNrVGVzdC5jcHAKICAgICB0ZXN0aW5n
L01vY2tQYWdlT3ZlcmxheUNsaWVudC5jcHAKIAogICAgIHRlc3RpbmcvanMvV2ViQ29yZVRlc3RT
dXBwb3J0LmNwcApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvV2ViQ29yZS52Y3hwcm9qL1dl
YkNvcmUudmN4cHJvaiBiL1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUudmN4cHJvai9XZWJDb3JlLnZj
eHByb2oKaW5kZXggMDQ0MmJmMzFhNTBmMmY0ODZjNDE5NjQyMjg3NGEyMjY4NzY5MjljOS4uMzEw
ZGJiNzcyNzA2YjUxMGZkNzE1ZTgwMmY2M2UyYTQxNGE3MjMzMyAxMDA2NDQKLS0tIGEvU291cmNl
L1dlYkNvcmUvV2ViQ29yZS52Y3hwcm9qL1dlYkNvcmUudmN4cHJvagorKysgYi9Tb3VyY2UvV2Vi
Q29yZS9XZWJDb3JlLnZjeHByb2ovV2ViQ29yZS52Y3hwcm9qCkBAIC0xMzQzNCw2ICsxMzQzNCw3
IEBACiAgICAgICA8RXhjbHVkZWRGcm9tQnVpbGQgQ29uZGl0aW9uPSInJChDb25maWd1cmF0aW9u
KXwkKFBsYXRmb3JtKSc9PSdQcm9kdWN0aW9ufFdpbjMyJyI+dHJ1ZTwvRXhjbHVkZWRGcm9tQnVp
bGQ+CiAgICAgICA8RXhjbHVkZWRGcm9tQnVpbGQgQ29uZGl0aW9uPSInJChDb25maWd1cmF0aW9u
KXwkKFBsYXRmb3JtKSc9PSdQcm9kdWN0aW9ufHg2NCciPnRydWU8L0V4Y2x1ZGVkRnJvbUJ1aWxk
PgogICAgIDwvQ2xDb21waWxlPgorICAgIDxDbENvbXBpbGUgSW5jbHVkZT0iLi5cZG9tXE1pY3Jv
VGFzay5jcHAiIC8+CiAgICAgPENsQ29tcGlsZSBJbmNsdWRlPSIuLlxkb21cTW91c2VFdmVudC5j
cHAiPgogICAgICAgPEV4Y2x1ZGVkRnJvbUJ1aWxkIENvbmRpdGlvbj0iJyQoQ29uZmlndXJhdGlv
bil8JChQbGF0Zm9ybSknPT0nRGVidWd8V2luMzInIj50cnVlPC9FeGNsdWRlZEZyb21CdWlsZD4K
ICAgICAgIDxFeGNsdWRlZEZyb21CdWlsZCBDb25kaXRpb249IickKENvbmZpZ3VyYXRpb24pfCQo
UGxhdGZvcm0pJz09J0RlYnVnfHg2NCciPnRydWU8L0V4Y2x1ZGVkRnJvbUJ1aWxkPgpAQCAtMjA2
MjQsNiArMjA2MjUsNyBAQAogICAgIDxDbEluY2x1ZGUgSW5jbHVkZT0iLi5cZG9tXE1lc3NhZ2VF
dmVudC5oIiAvPgogICAgIDxDbEluY2x1ZGUgSW5jbHVkZT0iLi5cZG9tXE1lc3NhZ2VQb3J0Lmgi
IC8+CiAgICAgPENsSW5jbHVkZSBJbmNsdWRlPSIuLlxkb21cTWVzc2FnZVBvcnRDaGFubmVsLmgi
IC8+CisgICAgPENsSW5jbHVkZSBJbmNsdWRlPSIuLlxkb21cTWljcm9UYXNrLmgiIC8+CiAgICAg
PENsSW5jbHVkZSBJbmNsdWRlPSIuLlxkb21cTW91c2VFdmVudC5oIiAvPgogICAgIDxDbEluY2x1
ZGUgSW5jbHVkZT0iLi5cZG9tXE1vdXNlUmVsYXRlZEV2ZW50LmgiIC8+CiAgICAgPENsSW5jbHVk
ZSBJbmNsdWRlPSIuLlxkb21cTXV0YXRpb25FdmVudC5oIiAvPgpAQCAtMjE0MjUsNCArMjE0Mjcs
NCBAQAogICA8SW1wb3J0R3JvdXAgTGFiZWw9IkV4dGVuc2lvblRhcmdldHMiPgogICAgIDxJbXBv
cnQgUHJvamVjdD0iJChWQ1RhcmdldHNQYXRoKVxCdWlsZEN1c3RvbWl6YXRpb25zXG1hc20udGFy
Z2V0cyIgLz4KICAgPC9JbXBvcnRHcm91cD4KLTwvUHJvamVjdD4KXCBObyBuZXdsaW5lIGF0IGVu
ZCBvZiBmaWxlCis8L1Byb2plY3Q+CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9XZWJDb3Jl
LnZjeHByb2ovV2ViQ29yZS52Y3hwcm9qLmZpbHRlcnMgYi9Tb3VyY2UvV2ViQ29yZS9XZWJDb3Jl
LnZjeHByb2ovV2ViQ29yZS52Y3hwcm9qLmZpbHRlcnMKaW5kZXggODM0ZWYxNjdmY2Y0YjYyNjQz
YWExMGNmNjQ3NWM0MGQwZmYzZTdlMC4uYjkxZjA4Zjk1MWM4ZWNjMWRkYTUwMzc1MTdkMTgzMWRk
YjUzNjQ2MiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvV2ViQ29yZS52Y3hwcm9qL1dlYkNv
cmUudmN4cHJvai5maWx0ZXJzCisrKyBiL1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUudmN4cHJvai9X
ZWJDb3JlLnZjeHByb2ouZmlsdGVycwpAQCAtMzIwMSw2ICszMjAxLDkgQEAKICAgICA8Q2xDb21w
aWxlIEluY2x1ZGU9Ii4uXGRvbVxNZXNzYWdlUG9ydENoYW5uZWwuY3BwIj4KICAgICAgIDxGaWx0
ZXI+ZG9tPC9GaWx0ZXI+CiAgICAgPC9DbENvbXBpbGU+CisgICAgPENsQ29tcGlsZSBJbmNsdWRl
PSIuLlxkb21cTWljcm9UYXNrLmNwcCI+CisgICAgICA8RmlsdGVyPmRvbTwvRmlsdGVyPgorICAg
IDwvQ2xDb21waWxlPgogICAgIDxDbENvbXBpbGUgSW5jbHVkZT0iLi5cZG9tXE1vdXNlRXZlbnQu
Y3BwIj4KICAgICAgIDxGaWx0ZXI+ZG9tPC9GaWx0ZXI+CiAgICAgPC9DbENvbXBpbGU+CkBAIC0x
MDI2OSw2ICsxMDI3Miw5IEBACiAgICAgPENsSW5jbHVkZSBJbmNsdWRlPSIuLlxkb21cTWVzc2Fn
ZVBvcnRDaGFubmVsLmgiPgogICAgICAgPEZpbHRlcj5kb208L0ZpbHRlcj4KICAgICA8L0NsSW5j
bHVkZT4KKyAgICA8Q2xJbmNsdWRlIEluY2x1ZGU9Ii4uXGRvbVxNaWNyb1Rhc2suaCI+CisgICAg
ICA8RmlsdGVyPmRvbTwvRmlsdGVyPgorICAgIDwvQ2xJbmNsdWRlPgogICAgIDxDbEluY2x1ZGUg
SW5jbHVkZT0iLi5cZG9tXE1vdXNlRXZlbnQuaCI+CiAgICAgICA8RmlsdGVyPmRvbTwvRmlsdGVy
PgogICAgIDwvQ2xJbmNsdWRlPgpAQCAtMTUzOTUsNCArMTU0MDEsNCBAQAogICAgICAgPEZpbHRl
cj5wbGF0Zm9ybVx3aW48L0ZpbHRlcj4KICAgICA8L01BU00+CiAgIDwvSXRlbUdyb3VwPgotPC9Q
cm9qZWN0PgpcIE5vIG5ld2xpbmUgYXQgZW5kIG9mIGZpbGUKKzwvUHJvamVjdD4KZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUudmN4cHJvai9XZWJDb3JlVGVzdFN1cHBvcnQudmN4
cHJvaiBiL1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUudmN4cHJvai9XZWJDb3JlVGVzdFN1cHBvcnQu
dmN4cHJvagppbmRleCAyZjgxNjM5YjFhM2ZmNTIwNmIyMWFmMGNlYjBmYzM5MzEzZWFkODgxLi40
MzNlYWYyNzg4MWNlY2M5YWNjZjY4MThhMmM3NjBkZTFhZjVjMTNjIDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViQ29yZS9XZWJDb3JlLnZjeHByb2ovV2ViQ29yZVRlc3RTdXBwb3J0LnZjeHByb2oKKysr
IGIvU291cmNlL1dlYkNvcmUvV2ViQ29yZS52Y3hwcm9qL1dlYkNvcmVUZXN0U3VwcG9ydC52Y3hw
cm9qCkBAIC0yNzUsNiArMjc1LDcgQEAKICAgICAgIDxGb3JjZWRJbmNsdWRlRmlsZXMgQ29uZGl0
aW9uPSInJChDb25maWd1cmF0aW9uKXwkKFBsYXRmb3JtKSc9PSdSZWxlYXNlX1dpbkNhaXJvfHg2
NCciPgogICAgICAgPC9Gb3JjZWRJbmNsdWRlRmlsZXM+CiAgICAgPC9DbENvbXBpbGU+CisgICAg
PENsQ29tcGlsZSBJbmNsdWRlPSIuLlx0ZXN0aW5nXE1pY3JvVGFza1Rlc3QuY3BwIiAvPgogICAg
IDxDbENvbXBpbGUgSW5jbHVkZT0iLi5cdGVzdGluZ1xNb2NrUGFnZU92ZXJsYXlDbGllbnQuY3Bw
IiAvPgogICAgIDxDbENvbXBpbGUgSW5jbHVkZT0iLi5cdGVzdGluZ1xJbnRlcm5hbFNldHRpbmdz
LmNwcCIgLz4KICAgICA8Q2xDb21waWxlIEluY2x1ZGU9Ii4uXHRlc3RpbmdcanNcV2ViQ29yZVRl
c3RTdXBwb3J0LmNwcCIgLz4KQEAgLTI5MSw2ICsyOTIsNyBAQAogICAgIDxDbEluY2x1ZGUgSW5j
bHVkZT0iLi5cdGVzdGluZ1xqc1xXZWJDb3JlVGVzdFN1cHBvcnRQcmVmaXguaCIgLz4KICAgICA8
Q2xJbmNsdWRlIEluY2x1ZGU9Ii4uXHRlc3RpbmdcTWFsbG9jU3RhdGlzdGljcy5oIiAvPgogICAg
IDxDbEluY2x1ZGUgSW5jbHVkZT0iLi5cdGVzdGluZ1xNZW1vcnlJbmZvLmgiIC8+CisgICAgPENs
SW5jbHVkZSBJbmNsdWRlPSIuLlx0ZXN0aW5nXE1pY3JvVGFza1Rlc3QuaCIgLz4KICAgICA8Q2xJ
bmNsdWRlIEluY2x1ZGU9Ii4uXHRlc3RpbmdcTW9ja0NETS5oIiAvPgogICAgIDxDbEluY2x1ZGUg
SW5jbHVkZT0iLi5cdGVzdGluZ1xNb2NrUGFnZU92ZXJsYXlDbGllbnQuaCIgLz4KICAgICA8Q2xJ
bmNsdWRlIEluY2x1ZGU9Ii4uXHRlc3RpbmdcVHlwZUNvbnZlcnNpb25zLmgiIC8+CmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViQ29yZS9XZWJDb3JlLnZjeHByb2ovV2ViQ29yZVRlc3RTdXBwb3J0LnZj
eHByb2ouZmlsdGVycyBiL1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUudmN4cHJvai9XZWJDb3JlVGVz
dFN1cHBvcnQudmN4cHJvai5maWx0ZXJzCmluZGV4IDY0ODg2YTgyODlkMDdmMjg0ZGUxNGQyMTU2
OWZhYzU4OTBjZWIwZWQuLjQyY2E3MjhlYzY4MGIyMzZiOTgzMDM0ZDNmMmVmYjg4ZGM4MDg0MDUg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUudmN4cHJvai9XZWJDb3JlVGVzdFN1
cHBvcnQudmN4cHJvai5maWx0ZXJzCisrKyBiL1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUudmN4cHJv
ai9XZWJDb3JlVGVzdFN1cHBvcnQudmN4cHJvai5maWx0ZXJzCkBAIC0zOSw2ICszOSw5IEBACiAg
ICAgPENsQ29tcGlsZSBJbmNsdWRlPSIuLlx0ZXN0aW5nXGpzXFdlYkNvcmVUZXN0U3VwcG9ydC5j
cHAiPgogICAgICAgPEZpbHRlcj50ZXN0aW5nPC9GaWx0ZXI+CiAgICAgPC9DbENvbXBpbGU+Cisg
ICAgPENsQ29tcGlsZSBJbmNsdWRlPSIuLlx0ZXN0aW5nXE1pY3JvVGFza1Rlc3QuY3BwIj4KKyAg
ICAgIDxGaWx0ZXI+dGVzdGluZzwvRmlsdGVyPgorICAgIDwvQ2xDb21waWxlPgogICAgIDxDbENv
bXBpbGUgSW5jbHVkZT0iLi5cdGVzdGluZ1xNb2NrQ0RNLmNwcCI+CiAgICAgICA8RmlsdGVyPnRl
c3Rpbmc8L0ZpbHRlcj4KICAgICA8L0NsQ29tcGlsZT4KQEAgLTkwLDYgKzkzLDkgQEAKICAgICAg
IDxGaWx0ZXI+dGVzdGluZzwvRmlsdGVyPgogICAgIDwvQ2xJbmNsdWRlPgogICAgIDxDbEluY2x1
ZGUgSW5jbHVkZT0iLi5cY29uZmlnLmgiIC8+CisgICAgPENsSW5jbHVkZSBJbmNsdWRlPSIuLlx0
ZXN0aW5nXE1pY3JvVGFza1Rlc3QuaCI+CisgICAgICA8RmlsdGVyPnRlc3Rpbmc8L0ZpbHRlcj4K
KyAgICA8L0NsSW5jbHVkZT4KICAgICA8Q2xJbmNsdWRlIEluY2x1ZGU9Ii4uXHRlc3RpbmdcTW9j
a0NETS5oIj4KICAgICAgIDxGaWx0ZXI+dGVzdGluZzwvRmlsdGVyPgogICAgIDwvQ2xJbmNsdWRl
PgpAQCAtMTAwLDQgKzEwNiw0IEBACiAgICAgICA8RmlsdGVyPnRlc3Rpbmc8L0ZpbHRlcj4KICAg
ICA8L0NsSW5jbHVkZT4KICAgPC9JdGVtR3JvdXA+Ci08L1Byb2plY3Q+ClwgTm8gbmV3bGluZSBh
dCBlbmQgb2YgZmlsZQorPC9Qcm9qZWN0PgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvV2Vi
Q29yZS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qIGIvU291cmNlL1dlYkNvcmUvV2ViQ29yZS54
Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qCmluZGV4IGMwZWQxNmJhMWY3MzUwMmUwZTI0OTNhYmE0
MTdhODExZTE5ZDdiM2YuLmVlOGRmMDgwOWQ4ODczODkyNTZhMDA4NDRiNGM2ZWFkYmVhOWQ3MTkg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUueGNvZGVwcm9qL3Byb2plY3QucGJ4
cHJvagorKysgYi9Tb3VyY2UvV2ViQ29yZS9XZWJDb3JlLnhjb2RlcHJvai9wcm9qZWN0LnBieHBy
b2oKQEAgLTIwODAsNiArMjA4MCw3IEBACiAJCTUzNkQ1QTIzMTkzRThFMEMwMENFNENBQiAvKiBQ
YXJzaW5nVXRpbGl0aWVzLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZp
bGVSZWYgPSA1MzZENUEyMjE5M0U4RTBDMDBDRTRDQUIgLyogUGFyc2luZ1V0aWxpdGllcy5oICov
OyB9OwogCQk1MzZENUEyNTE5M0Y0MEZDMDBDRTRDQUIgLyogU291cmNlU2l6ZUxpc3QuY3BwIGlu
IFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNTM2RDVBMjQxOTNG
NDBGQzAwQ0U0Q0FCIC8qIFNvdXJjZVNpemVMaXN0LmNwcCAqLzsgfTsKIAkJNTM2RDVBMjcxOTNG
NDEwQjAwQ0U0Q0FCIC8qIFNvdXJjZVNpemVMaXN0LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQ
QlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA1MzZENUEyNjE5M0Y0MTBCMDBDRTRDQUIgLyogU291cmNl
U2l6ZUxpc3QuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9
OworCQk1M0I4OTVBRjE5REM3RUQ5MDA5Q0FBOTMgLyogTWljcm9UYXNrLmggaW4gSGVhZGVycyAq
LyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA1M0I4OTVBRDE5REM3QzM3MDA5Q0FB
OTMgLyogTWljcm9UYXNrLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHVibGljLCAp
OyB9OyB9OwogCQk1M0M4Mjk4RDEzRDhEOTI3MDBERTJERUIgLyogUmVuZGVyRmxleGlibGVCb3gu
Y3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNTNDODI5
OEIxM0Q4RDkyNzAwREUyREVCIC8qIFJlbmRlckZsZXhpYmxlQm94LmNwcCAqLzsgfTsKIAkJNTND
ODI5OEUxM0Q4RDkyNzAwREUyREVCIC8qIFJlbmRlckZsZXhpYmxlQm94LmggaW4gSGVhZGVycyAq
LyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA1M0M4Mjk4QzEzRDhEOTI3MDBERTJE
RUIgLyogUmVuZGVyRmxleGlibGVCb3guaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQ
cml2YXRlLCApOyB9OyB9OwogCQk1M0UyOUU1RTE2N0E4QTE5MDA1ODZEM0QgLyogSW50ZXJuYWxT
ZXR0aW5nc0dlbmVyYXRlZC5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7
IGZpbGVSZWYgPSA1M0UyOUU1QzE2N0E4QTE5MDA1ODZEM0QgLyogSW50ZXJuYWxTZXR0aW5nc0dl
bmVyYXRlZC5jcHAgKi87IH07CkBAIC01NjIxLDYgKzU2MjIsOSBAQAogCQlDQTNCRjY3RTEwRDk5
QkFFMDBFNkNFNTMgLyogU2Nyb2xsQW5pbWF0b3IuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBC
WEJ1aWxkRmlsZTsgZmlsZVJlZiA9IENBM0JGNjdEMTBEOTlCQUUwMEU2Q0U1MyAvKiBTY3JvbGxB
bmltYXRvci5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07
CiAJCUNBRTlGOTBGMTQ2NDQxRjAwMEMyNDVCMCAvKiBDU1NBc3BlY3RSYXRpb1ZhbHVlLmNwcCBp
biBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IENBRTlGOTBEMTQ2
NDQxRjAwMEMyNDVCMCAvKiBDU1NBc3BlY3RSYXRpb1ZhbHVlLmNwcCAqLzsgfTsKIAkJQ0FFOUY5
MTAxNDY0NDFGMDAwQzI0NUIwIC8qIENTU0FzcGVjdFJhdGlvVmFsdWUuaCBpbiBIZWFkZXJzICov
ID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IENBRTlGOTBFMTQ2NDQxRjAwMEMyNDVC
MCAvKiBDU1NBc3BlY3RSYXRpb1ZhbHVlLmggKi87IH07CisJCUNCOENGMDE4MUE5MzU4RDQwMDBE
NTEwQiAvKiBNaWNyb1Rhc2suY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxl
OyBmaWxlUmVmID0gQ0I4Q0YwMTUxQTkzNEI0MzAwMEQ1MTBCIC8qIE1pY3JvVGFzay5jcHAgKi87
IH07CisJCUNCOENGMDFEMUE5NURFNDIwMDBENTEwQiAvKiBNaWNyb1Rhc2tUZXN0LmggaW4gSGVh
ZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBDQjhDRjAxQzFBOTVERTQy
MDAwRDUxMEIgLyogTWljcm9UYXNrVGVzdC5oICovOyB9OworCQlDQjhDRjAxRjFBOTVERTU5MDAw
RDUxMEIgLyogTWljcm9UYXNrVGVzdC5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWls
ZEZpbGU7IGZpbGVSZWYgPSBDQjhDRjAxRTFBOTVERTU5MDAwRDUxMEIgLyogTWljcm9UYXNrVGVz
dC5jcHAgKi87IH07CiAJCUNDQzJCNTE0MTVGNjEzMDYwMDQ4Q0RENiAvKiBEZXZpY2VDbGllbnQu
aCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IENDQzJCNTEw
MTVGNjEzMDYwMDQ4Q0RENiAvKiBEZXZpY2VDbGllbnQuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklC
VVRFUyA9IChQcml2YXRlLCApOyB9OyB9OwogCQlDQ0MyQjUxNTE1RjYxMzA2MDA0OENERDYgLyog
RGV2aWNlQ29udHJvbGxlci5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7
IGZpbGVSZWYgPSBDQ0MyQjUxMTE1RjYxMzA2MDA0OENERDYgLyogRGV2aWNlQ29udHJvbGxlci5j
cHAgKi87IH07CiAJCUNDQzJCNTE2MTVGNjEzMDYwMDQ4Q0RENiAvKiBEZXZpY2VDb250cm9sbGVy
LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBDQ0MyQjUx
MjE1RjYxMzA2MDA0OENERDYgLyogRGV2aWNlQ29udHJvbGxlci5oICovOyBzZXR0aW5ncyA9IHtB
VFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CkBAIC05MjI5LDYgKzkyMzMsNyBAQAogCQk1
MzZENUEyMjE5M0U4RTBDMDBDRTRDQUIgLyogUGFyc2luZ1V0aWxpdGllcy5oICovID0ge2lzYSA9
IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0g
c291cmNlY29kZS5jLmg7IG5hbWUgPSBQYXJzaW5nVXRpbGl0aWVzLmg7IHBhdGggPSBwYXJzZXIv
UGFyc2luZ1V0aWxpdGllcy5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQk1MzZENUEy
NDE5M0Y0MEZDMDBDRTRDQUIgLyogU291cmNlU2l6ZUxpc3QuY3BwICovID0ge2lzYSA9IFBCWEZp
bGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNl
Y29kZS5jcHAuY3BwOyBwYXRoID0gU291cmNlU2l6ZUxpc3QuY3BwOyBzb3VyY2VUcmVlID0gIjxn
cm91cD4iOyB9OwogCQk1MzZENUEyNjE5M0Y0MTBCMDBDRTRDQUIgLyogU291cmNlU2l6ZUxpc3Qu
aCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25v
d25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gU291cmNlU2l6ZUxpc3QuaDsgc291
cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNTNCODk1QUQxOURDN0MzNzAwOUNBQTkzIC8qIE1p
Y3JvVGFzay5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7
IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBNaWNyb1Rhc2suaDsg
c291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJNTNDODI5OEIxM0Q4RDkyNzAwREUyREVCIC8q
IFJlbmRlckZsZXhpYmxlQm94LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxl
RW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0
aCA9IFJlbmRlckZsZXhpYmxlQm94LmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJ
NTNDODI5OEMxM0Q4RDkyNzAwREUyREVCIC8qIFJlbmRlckZsZXhpYmxlQm94LmggKi8gPSB7aXNh
ID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUg
PSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFJlbmRlckZsZXhpYmxlQm94Lmg7IHNvdXJjZVRyZWUg
PSAiPGdyb3VwPiI7IH07CiAJCTUzRTI5RTVDMTY3QThBMTkwMDU4NkQzRCAvKiBJbnRlcm5hbFNl
dHRpbmdzR2VuZXJhdGVkLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5j
b2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9
IEludGVybmFsU2V0dGluZ3NHZW5lcmF0ZWQuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9
OwpAQCAtMTMwODcsNiArMTMwOTIsOSBAQAogCQlDQTNCRjY3RDEwRDk5QkFFMDBFNkNFNTMgLyog
U2Nyb2xsQW5pbWF0b3IuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rp
bmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gU2Nyb2xs
QW5pbWF0b3IuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJQ0FFOUY5MEQxNDY0NDFG
MDAwQzI0NUIwIC8qIENTU0FzcGVjdFJhdGlvVmFsdWUuY3BwICovID0ge2lzYSA9IFBCWEZpbGVS
ZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29k
ZS5jcHAuY3BwOyBwYXRoID0gQ1NTQXNwZWN0UmF0aW9WYWx1ZS5jcHA7IHNvdXJjZVRyZWUgPSAi
PGdyb3VwPiI7IH07CiAJCUNBRTlGOTBFMTQ2NDQxRjAwMEMyNDVCMCAvKiBDU1NBc3BlY3RSYXRp
b1ZhbHVlLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsg
bGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IENTU0FzcGVjdFJhdGlv
VmFsdWUuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQ0I4Q0YwMTUxQTkzNEI0MzAw
MEQ1MTBCIC8qIE1pY3JvVGFzay5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmls
ZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBh
dGggPSBNaWNyb1Rhc2suY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlDQjhDRjAx
QzFBOTVERTQyMDAwRDUxMEIgLyogTWljcm9UYXNrVGVzdC5oICovID0ge2lzYSA9IFBCWEZpbGVS
ZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29k
ZS5jLmg7IHBhdGggPSBNaWNyb1Rhc2tUZXN0Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07
CisJCUNCOENGMDFFMUE5NURFNTkwMDBENTEwQiAvKiBNaWNyb1Rhc2tUZXN0LmNwcCAqLyA9IHtp
c2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlw
ZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IE1pY3JvVGFza1Rlc3QuY3BwOyBzb3VyY2VU
cmVlID0gIjxncm91cD4iOyB9OwogCQlDQ0MyQjUxMDE1RjYxMzA2MDA0OENERDYgLyogRGV2aWNl
Q2xpZW50LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsg
bGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IERldmljZUNsaWVudC5o
OyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQlDQ0MyQjUxMTE1RjYxMzA2MDA0OENERDYg
LyogRGV2aWNlQ29udHJvbGxlci5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmls
ZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBh
dGggPSBEZXZpY2VDb250cm9sbGVyLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJ
Q0NDMkI1MTIxNUY2MTMwNjAwNDhDREQ2IC8qIERldmljZUNvbnRyb2xsZXIuaCAqLyA9IHtpc2Eg
PSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9
IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gRGV2aWNlQ29udHJvbGxlci5oOyBzb3VyY2VUcmVlID0g
Ijxncm91cD4iOyB9OwpAQCAtMTU2NzEsNiArMTU2NzksOCBAQAogCQkJCUE3QkY3RUREMTRDOTE3
NUEwMDE0NDg5RCAvKiBJbnRlcm5hbFNldHRpbmdzLmggKi8sCiAJCQkJQTdCRjdFREUxNEM5MTc1
QTAwMTQ0ODlEIC8qIEludGVybmFsU2V0dGluZ3MuaWRsICovLAogCQkJCUE3QkU3RUREMTRDOTE3
NUEwMDE0NDg5RCAvKiBNYWxsb2NTdGF0aXN0aWNzLmggKi8sCisJCQkJQ0I4Q0YwMUUxQTk1REU1
OTAwMEQ1MTBCIC8qIE1pY3JvVGFza1Rlc3QuY3BwICovLAorCQkJCUNCOENGMDFDMUE5NURFNDIw
MDBENTEwQiAvKiBNaWNyb1Rhc2tUZXN0LmggKi8sCiAJCQkJQTdCRTdFREUxNEM5MTc1QTAwMTQ0
ODlEIC8qIE1hbGxvY1N0YXRpc3RpY3MuaWRsICovLAogCQkJCUNENTM5M0NCMTc1RENDRTYwMEMw
NzEyMyAvKiBNZW1vcnlJbmZvLmggKi8sCiAJCQkJQ0Q1MzkzQ0MxNzVEQ0NFNjAwQzA3MTIzIC8q
IE1lbW9yeUluZm8uaWRsICovLApAQCAtMjI4NzksNiArMjI4ODksOCBAQAogCQkJCUUxQURFQ0JE
MEU3NkFDRjEwMDRBMUE1RSAvKiBNZXNzYWdlUG9ydC5oICovLAogCQkJCUUxQURFQ0M2MEU3NkFE
MUYwMDRBMUE1RSAvKiBNZXNzYWdlUG9ydC5pZGwgKi8sCiAJCQkJNDFCRjcwMEEwRkU4NkY0OTAw
NUU4REVDIC8qIE1lc3NhZ2VQb3J0Q2hhbm5lbC5oICovLAorCQkJCTUzQjg5NUFEMTlEQzdDMzcw
MDlDQUE5MyAvKiBNaWNyb1Rhc2suaCAqLywKKwkJCQlDQjhDRjAxNTFBOTM0QjQzMDAwRDUxMEIg
LyogTWljcm9UYXNrLmNwcCAqLywKIAkJCQk4NTAzMUIyRjBBNDRFRkM3MDBGOTkyRTAgLyogTW91
c2VFdmVudC5jcHAgKi8sCiAJCQkJODUwMzFCMzAwQTQ0RUZDNzAwRjk5MkUwIC8qIE1vdXNlRXZl
bnQuaCAqLywKIAkJCQkxNDFCOTRFNTA5RUM0MjIzMDAwRTk0MTMgLyogTW91c2VFdmVudC5pZGwg
Ki8sCkBAIC0yMzQ0Myw2ICsyMzQ1NSw3IEBACiAJCQkJNTNFRDNGREYxNjdBODhFNzAwNjc2MkU2
IC8qIEpTSW50ZXJuYWxTZXR0aW5nc0dlbmVyYXRlZC5oIGluIEhlYWRlcnMgKi8sCiAJCQkJQTc0
MEI1OTUxNEM5MzVBQjAwQTc3RkE0IC8qIEpTTWFsbG9jU3RhdGlzdGljcy5oIGluIEhlYWRlcnMg
Ki8sCiAJCQkJQ0Q1MzkzRDQxNzVFMDE4NjAwQzA3MTIzIC8qIEpTTWVtb3J5SW5mby5oIGluIEhl
YWRlcnMgKi8sCisJCQkJQ0I4Q0YwMUQxQTk1REU0MjAwMEQ1MTBCIC8qIE1pY3JvVGFza1Rlc3Qu
aCBpbiBIZWFkZXJzICovLAogCQkJCUVCRjUxMjFEMTY5NjQ5NkMwMDU2QkQyNSAvKiBKU1R5cGVD
b252ZXJzaW9ucy5oIGluIEhlYWRlcnMgKi8sCiAJCQkJQ0RDMjZCNDExNjBBOENDRTAwMjY3NTdC
IC8qIE1vY2tDRE0uaCBpbiBIZWFkZXJzICovLAogCQkJCTJEOTdGMDQ4MTlERDQxNDAwMDFFRTlD
MyAvKiBNb2NrUGFnZU92ZXJsYXlDbGllbnQuaCBpbiBIZWFkZXJzICovLApAQCAtMjU4NjYsNiAr
MjU4NzksNyBAQAogCQkJCTUzQzgyOThFMTNEOEQ5MjcwMERFMkRFQiAvKiBSZW5kZXJGbGV4aWJs
ZUJveC5oIGluIEhlYWRlcnMgKi8sCiAJCQkJNTA4Q0NBNEYxM0NGMTA2QjAwMzE1MUYzIC8qIFJl
bmRlckZsb3dUaHJlYWQuaCBpbiBIZWFkZXJzICovLAogCQkJCUE4NzFERUQzMEExNTMwQzcwMEIx
MkE2OCAvKiBSZW5kZXJGcmFtZS5oIGluIEhlYWRlcnMgKi8sCisJCQkJNTNCODk1QUYxOURDN0VE
OTAwOUNBQTkzIC8qIE1pY3JvVGFzay5oIGluIEhlYWRlcnMgKi8sCiAJCQkJMEZEMzA4MEYxMTdD
RjdFNzAwQTc5MUY3IC8qIFJlbmRlckZyYW1lQmFzZS5oIGluIEhlYWRlcnMgKi8sCiAJCQkJQTg3
MURFRDEwQTE1MzBDNzAwQjEyQTY4IC8qIFJlbmRlckZyYW1lU2V0LmggaW4gSGVhZGVycyAqLywK
IAkJCQlDREVBN0M4NDEyNzYyMzA0MDBCODQ2REQgLyogUmVuZGVyRnVsbFNjcmVlbi5oIGluIEhl
YWRlcnMgKi8sCkBAIC0yNzE5Myw2ICsyNzIwNyw3IEBACiAJCQkJNTNFMjlFNUUxNjdBOEExOTAw
NTg2RDNEIC8qIEludGVybmFsU2V0dGluZ3NHZW5lcmF0ZWQuY3BwIGluIFNvdXJjZXMgKi8sCiAJ
CQkJNDE3REE3MUQxMzczNURGQTAwN0M1N0ZCIC8qIEpTSW50ZXJuYWxzLmNwcCBpbiBTb3VyY2Vz
ICovLAogCQkJCUE3NDBCNUE3MTRDOTM1QUYwMEE3N0ZBNCAvKiBKU0ludGVybmFsU2V0dGluZ3Mu
Y3BwIGluIFNvdXJjZXMgKi8sCisJCQkJQ0I4Q0YwMUYxQTk1REU1OTAwMEQ1MTBCIC8qIE1pY3Jv
VGFza1Rlc3QuY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJNTNFRDNGREUxNjdBODhFNzAwNjc2MkU2
IC8qIEpTSW50ZXJuYWxTZXR0aW5nc0dlbmVyYXRlZC5jcHAgaW4gU291cmNlcyAqLywKIAkJCQlB
NzQwQjU5NzE0QzkzNUFGMDBBNzdGQTQgLyogSlNNYWxsb2NTdGF0aXN0aWNzLmNwcCBpbiBTb3Vy
Y2VzICovLAogCQkJCUNENTM5M0QzMTc1RTAxODYwMEMwNzEyMyAvKiBKU01lbW9yeUluZm8uY3Bw
IGluIFNvdXJjZXMgKi8sCkBAIC0yOTgyOCw2ICsyOTg0Myw3IEBACiAJCQkJQjIyMjdBOTAwRDAw
QkYyMjAwNzFCNzgyIC8qIFNWR1BvbHlnb25FbGVtZW50LmNwcCBpbiBTb3VyY2VzICovLAogCQkJ
CUIyMjI3QTkzMEQwMEJGMjIwMDcxQjc4MiAvKiBTVkdQb2x5bGluZUVsZW1lbnQuY3BwIGluIFNv
dXJjZXMgKi8sCiAJCQkJQjIyMjdBOTYwRDAwQkYyMjAwNzFCNzgyIC8qIFNWR1ByZXNlcnZlQXNw
ZWN0UmF0aW8uY3BwIGluIFNvdXJjZXMgKi8sCisJCQkJQ0I4Q0YwMTgxQTkzNThENDAwMEQ1MTBC
IC8qIE1pY3JvVGFzay5jcHAgaW4gU291cmNlcyAqLywKIAkJCQlCNTQzQjg1NzE3RUI3NThGMDAz
QkU5M0EgLyogU1ZHUHJvcGVydHlJbmZvLmNwcCBpbiBTb3VyY2VzICovLAogCQkJCUIyMjI3QTk5
MEQwMEJGMjIwMDcxQjc4MiAvKiBTVkdSYWRpYWxHcmFkaWVudEVsZW1lbnQuY3BwIGluIFNvdXJj
ZXMgKi8sCiAJCQkJQjIyMjdBOUQwRDAwQkYyMjAwNzFCNzgyIC8qIFNWR1JlY3RFbGVtZW50LmNw
cCBpbiBTb3VyY2VzICovLApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvZG9tL0RvY3VtZW50
LmggYi9Tb3VyY2UvV2ViQ29yZS9kb20vRG9jdW1lbnQuaAppbmRleCAxNTQ0NGE2ZTE5ZWIyN2Mx
YTZhMjM3ZGFiOTgyMmNlN2Q3YzY4OWIxLi4zZjExMzE5NDlkMjVmZWVmNjhhNWVkNjA2MjVlMTBh
MWM1NTZkZmY2IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9kb20vRG9jdW1lbnQuaAorKysg
Yi9Tb3VyY2UvV2ViQ29yZS9kb20vRG9jdW1lbnQuaApAQCAtMTI2Miw3ICsxMjYyLDcgQEAgcHVi
bGljOgogICAgIHZvaWQgYWRkRGlzYWJsZWRGaWVsZHNldEVsZW1lbnQoKSB7IG1fZGlzYWJsZWRG
aWVsZHNldEVsZW1lbnRzQ291bnQrKzsgfQogICAgIHZvaWQgcmVtb3ZlRGlzYWJsZWRGaWVsZHNl
dEVsZW1lbnQoKSB7IEFTU0VSVChtX2Rpc2FibGVkRmllbGRzZXRFbGVtZW50c0NvdW50KTsgbV9k
aXNhYmxlZEZpZWxkc2V0RWxlbWVudHNDb3VudC0tOyB9CiAKLSAgICB2aXJ0dWFsIHZvaWQgYWRk
Q29uc29sZU1lc3NhZ2UoTWVzc2FnZVNvdXJjZSwgTWVzc2FnZUxldmVsLCBjb25zdCBTdHJpbmcm
IG1lc3NhZ2UsIHVuc2lnbmVkIGxvbmcgcmVxdWVzdElkZW50aWZpZXIgPSAwKSBvdmVycmlkZSBm
aW5hbDsKKyAgICBXRUJDT1JFX0VYUE9SVCB2aXJ0dWFsIHZvaWQgYWRkQ29uc29sZU1lc3NhZ2Uo
TWVzc2FnZVNvdXJjZSwgTWVzc2FnZUxldmVsLCBjb25zdCBTdHJpbmcmIG1lc3NhZ2UsIHVuc2ln
bmVkIGxvbmcgcmVxdWVzdElkZW50aWZpZXIgPSAwKSBvdmVycmlkZSBmaW5hbDsKIAogICAgIFdF
QkNPUkVfRVhQT1JUIHZpcnR1YWwgU2VjdXJpdHlPcmlnaW4qIHRvcE9yaWdpbigpIGNvbnN0IG92
ZXJyaWRlIGZpbmFsOwogCkBAIC0xMjg4LDYgKzEyODgsNyBAQCBwdWJsaWM6CiAgICAgYm9vbCBp
c1BsYXlpbmdBdWRpbygpIGNvbnN0IHsgcmV0dXJuIG1faXNQbGF5aW5nQXVkaW87IH0KICAgICBX
RUJDT1JFX0VYUE9SVCB2b2lkIHVwZGF0ZUlzUGxheWluZ0F1ZGlvKCk7CiAgICAgdm9pZCBwYWdl
TXV0ZWRTdGF0ZURpZENoYW5nZSgpOworICAgIFdlYWtQdHI8RG9jdW1lbnQ+IGNyZWF0ZVdlYWtQ
dHIoKSB7IHJldHVybiBtX3dlYWtGYWN0b3J5LmNyZWF0ZVdlYWtQdHIoKTsgfQogCiBwcm90ZWN0
ZWQ6CiAgICAgZW51bSBDb25zdHJ1Y3Rpb25GbGFncyB7IFN5bnRoZXNpemVkID0gMSwgTm9uUmVu
ZGVyZWRQbGFjZWhvbGRlciA9IDEgPDwgMSB9OwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUv
ZG9tL01pY3JvVGFzay5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9kb20vTWljcm9UYXNrLmNwcApuZXcg
ZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwLi5jNzg2ZTM1YTZmOTdmZmE0N2Y5NjAyYjczYmMzMjU2YTc2YmM2ZTJiCi0tLSAvZGV2
L251bGwKKysrIGIvU291cmNlL1dlYkNvcmUvZG9tL01pY3JvVGFzay5jcHAKQEAgLTAsMCArMSw1
MiBAQAorLyoKKyAqIENvcHlyaWdodCAoQykgMjAxNCBZb2F2IFdlaXNzICh5b2F2QHlvYXYud3Mp
CisgKiBDb3B5cmlnaHQgKEMpIDIwMTUgQWthbWFpIFRlY2hub2xvZ2llcyBJbmMuIEFsbCByaWdo
dHMgcmVzZXJ2ZWQuCisgKgorICogVGhpcyBsaWJyYXJ5IGlzIGZyZWUgc29mdHdhcmU7IHlvdSBj
YW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vcgorICogbW9kaWZ5IGl0IHVuZGVyIHRoZSB0ZXJtcyBv
ZiB0aGUgR05VIExpYnJhcnkgR2VuZXJhbCBQdWJsaWMKKyAqIExpY2Vuc2UgYXMgcHVibGlzaGVk
IGJ5IHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb247IGVpdGhlcgorICogdmVyc2lvbiAyIG9m
IHRoZSBMaWNlbnNlLCBvciAoYXQgeW91ciBvcHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLgorICoK
KyAqIFRoaXMgbGlicmFyeSBpcyBkaXN0cmlidXRlZCBpbiB0aGUgaG9wZSB0aGF0IGl0IHdpbGwg
YmUgdXNlZnVsLAorICogYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhl
IGltcGxpZWQgd2FycmFudHkgb2YKKyAqIE1FUkNIQU5UQUJJTElUWSBvciBGSVRORVNTIEZPUiBB
IFBBUlRJQ1VMQVIgUFVSUE9TRS4gIFNlZSB0aGUgR05VCisgKiBMaWJyYXJ5IEdlbmVyYWwgUHVi
bGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KKyAqCisgKiBZb3Ugc2hvdWxkIGhhdmUgcmVj
ZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgTGlicmFyeSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlCisg
KiBhbG9uZyB3aXRoIHRoaXMgbGlicmFyeTsgc2VlIHRoZSBmaWxlIENPUFlJTkcuTElCLiAgSWYg
bm90LCB3cml0ZSB0bworICogdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbiwgSW5jLiwgNTEg
RnJhbmtsaW4gU3RyZWV0LCBGaWZ0aCBGbG9vciwKKyAqIEJvc3RvbiwgTUEgMDIxMTAtMTMwMSwg
VVNBLgorICoKKyAqLworCisjaW5jbHVkZSAiY29uZmlnLmgiCisjaW5jbHVkZSAiTWljcm9UYXNr
LmgiCisKKyNpbmNsdWRlICJEb2N1bWVudC5oIgorI2luY2x1ZGUgPHd0Zi90ZXh0L1N0cmluZ0J1
aWxkZXIuaD4KKworbmFtZXNwYWNlIFdlYkNvcmUgeworCitNaWNyb1Rhc2tRdWV1ZSYgTWljcm9U
YXNrUXVldWU6OnNpbmdsZXRvbigpCit7CisgICAgQVNTRVJUKGlzTWFpblRocmVhZCgpKTsKKyAg
ICBzdGF0aWMgTmV2ZXJEZXN0cm95ZWQ8TWljcm9UYXNrUXVldWU+IHF1ZXVlOworICAgIHJldHVy
biBxdWV1ZTsKK30KKwordm9pZCBNaWNyb1Rhc2tRdWV1ZTo6cXVldWVNaWNyb1Rhc2soc3RkOjp1
bmlxdWVfcHRyPE1pY3JvVGFzaz4gdGFzaykKK3sKKyAgICBBU1NFUlQoaXNNYWluVGhyZWFkKCkp
OworICAgIG1fbWljcm9UYXNrUXVldWUuYXBwZW5kKFdURjo6bW92ZSh0YXNrKSk7Cit9CisKK3Zv
aWQgTWljcm9UYXNrUXVldWU6OnJ1bk1pY3JvVGFza3MoKQoreworICAgIEFTU0VSVChpc01haW5U
aHJlYWQoKSk7CisgICAgZm9yIChhdXRvJiB0YXNrIDogbV9taWNyb1Rhc2tRdWV1ZSkKKyAgICAg
ICAgdGFzay0+cnVuKCk7CisgICAgbV9taWNyb1Rhc2tRdWV1ZS5jbGVhcigpOworfQorCit9IC8v
IG5hbWVzcGFjZSBXZWJDb3JlCisKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2RvbS9NaWNy
b1Rhc2suaCBiL1NvdXJjZS9XZWJDb3JlL2RvbS9NaWNyb1Rhc2suaApuZXcgZmlsZSBtb2RlIDEw
MDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi42ZWM0
MGYxZDc0MDdjYmIzNjVhYjBhMDg4Yjg1NGQ4YWY0NWU5MGEyCi0tLSAvZGV2L251bGwKKysrIGIv
U291cmNlL1dlYkNvcmUvZG9tL01pY3JvVGFzay5oCkBAIC0wLDAgKzEsNTYgQEAKKy8qCisgKiBD
b3B5cmlnaHQgKEMpIDIwMTQgWW9hdiBXZWlzcyAoeW9hdkB5b2F2LndzKQorICogQ29weXJpZ2h0
IChDKSAyMDE1IEFrYW1haSBUZWNobm9sb2dpZXMgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgor
ICoKKyAqIFRoaXMgbGlicmFyeSBpcyBmcmVlIHNvZnR3YXJlOyB5b3UgY2FuIHJlZGlzdHJpYnV0
ZSBpdCBhbmQvb3IKKyAqIG1vZGlmeSBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBMaWJy
YXJ5IEdlbmVyYWwgUHVibGljCisgKiBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieSB0aGUgRnJlZSBT
b2Z0d2FyZSBGb3VuZGF0aW9uOyBlaXRoZXIKKyAqIHZlcnNpb24gMiBvZiB0aGUgTGljZW5zZSwg
b3IgKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KKyAqCisgKiBUaGlzIGxpYnJh
cnkgaXMgZGlzdHJpYnV0ZWQgaW4gdGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCwKKyAq
IGJ1dCBXSVRIT1VUIEFOWSBXQVJSQU5UWTsgd2l0aG91dCBldmVuIHRoZSBpbXBsaWVkIHdhcnJh
bnR5IG9mCisgKiBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBV
UlBPU0UuICBTZWUgdGhlIEdOVQorICogTGlicmFyeSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGZv
ciBtb3JlIGRldGFpbHMuCisgKgorICogWW91IHNob3VsZCBoYXZlIHJlY2VpdmVkIGEgY29weSBv
ZiB0aGUgR05VIExpYnJhcnkgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQorICogYWxvbmcgd2l0aCB0
aGlzIGxpYnJhcnk7IHNlZSB0aGUgZmlsZSBDT1BZSU5HLkxJQi4gIElmIG5vdCwgd3JpdGUgdG8K
KyAqIHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb24sIEluYy4sIDUxIEZyYW5rbGluIFN0cmVl
dCwgRmlmdGggRmxvb3IsCisgKiBCb3N0b24sIE1BIDAyMTEwLTEzMDEsIFVTQS4KKyAqCisgKi8K
KworI2lmbmRlZiBNaWNyb1Rhc2tfaAorI2RlZmluZSBNaWNyb1Rhc2tfaAorCisjaW5jbHVkZSA8
d3RmL05ldmVyRGVzdHJveWVkLmg+CisjaW5jbHVkZSA8d3RmL1JlZkNvdW50ZWQuaD4KKyNpbmNs
dWRlIDx3dGYvVmVjdG9yLmg+CisKKworbmFtZXNwYWNlIFdlYkNvcmUgeworCitjbGFzcyBNaWNy
b1Rhc2sgOiBwdWJsaWMgUmVmQ291bnRlZDxNaWNyb1Rhc2s+IHsKK3B1YmxpYzoKKyAgICB2aXJ0
dWFsIHZvaWQgcnVuKCkgPSAwOworICAgIHZpcnR1YWwgfk1pY3JvVGFzaygpIHsgfQorfTsKKwor
Y2xhc3MgTWljcm9UYXNrUXVldWUgeworICAgIGZyaWVuZCBOZXZlckRlc3Ryb3llZDxNaWNyb1Rh
c2tRdWV1ZT47CisKK3B1YmxpYzoKKyAgICBXRUJDT1JFX0VYUE9SVCBzdGF0aWMgTWljcm9UYXNr
UXVldWUmIHNpbmdsZXRvbigpOworICAgIH5NaWNyb1Rhc2tRdWV1ZSgpIHsgfQorCisgICAgV0VC
Q09SRV9FWFBPUlQgdm9pZCBxdWV1ZU1pY3JvVGFzayhzdGQ6OnVuaXF1ZV9wdHI8TWljcm9UYXNr
Pik7CisKKyAgICB2b2lkIHJ1bk1pY3JvVGFza3MoKTsKKworcHJpdmF0ZToKKyAgICBNaWNyb1Rh
c2tRdWV1ZSgpIHsgfQorICAgIFZlY3RvcjxzdGQ6OnVuaXF1ZV9wdHI8TWljcm9UYXNrPj4gbV9t
aWNyb1Rhc2tRdWV1ZTsKK307CisKK30gLy8gbmFtZXNwYWNlIFdlYkNvcmUKKworI2VuZGlmIC8v
IE1pY3JvVGFza19oCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9kb20vU2NyaXB0UnVubmVy
LmNwcCBiL1NvdXJjZS9XZWJDb3JlL2RvbS9TY3JpcHRSdW5uZXIuY3BwCmluZGV4IGVkOTRkYTNl
NzNkYjEzMDE3OGI5OWVhNGI3ZjkyYjVhYzE5ODA5ZDYuLmM0NmI3OGUwZmZlM2M4MTgzNjA0N2Vj
YTNhMDdhYjljZWQxM2FmMDQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2RvbS9TY3JpcHRS
dW5uZXIuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2RvbS9TY3JpcHRSdW5uZXIuY3BwCkBAIC0y
OCw2ICsyOCw3IEBACiAKICNpbmNsdWRlICJDYWNoZWRTY3JpcHQuaCIKICNpbmNsdWRlICJFbGVt
ZW50LmgiCisjaW5jbHVkZSAiTWljcm9UYXNrLmgiCiAjaW5jbHVkZSAiUGVuZGluZ1NjcmlwdC5o
IgogI2luY2x1ZGUgIlNjcmlwdEVsZW1lbnQuaCIKIApAQCAtMTE2LDYgKzExNyw3IEBAIHZvaWQg
U2NyaXB0UnVubmVyOjp0aW1lckZpcmVkKCkKICAgICAgICAgdG9TY3JpcHRFbGVtZW50SWZQb3Nz
aWJsZShlbGVtZW50LmdldCgpKS0+ZXhlY3V0ZShjYWNoZWRTY3JpcHQpOwogICAgICAgICBtX2Rv
Y3VtZW50LmRlY3JlbWVudExvYWRFdmVudERlbGF5Q291bnQoKTsKICAgICB9CisgICAgTWljcm9U
YXNrUXVldWU6OnNpbmdsZXRvbigpLnJ1bk1pY3JvVGFza3MoKTsKIH0KIAogfQpkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYkNvcmUvaHRtbC9wYXJzZXIvSFRNTFNjcmlwdFJ1bm5lci5jcHAgYi9Tb3Vy
Y2UvV2ViQ29yZS9odG1sL3BhcnNlci9IVE1MU2NyaXB0UnVubmVyLmNwcAppbmRleCA0MWU3MjVm
NjBkZTg2ODFmMWNmOGRiNGI1Yzk4YWRiNjI2MjJmMjFiLi4yN2RkNjczODJhNjAwZmMwMzM4NTJl
YzkwMjkyMDE2OTJkMTQzZGVkIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9odG1sL3BhcnNl
ci9IVE1MU2NyaXB0UnVubmVyLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL3BhcnNlci9I
VE1MU2NyaXB0UnVubmVyLmNwcApAQCAtMzYsNiArMzYsNyBAQAogI2luY2x1ZGUgIkhUTUxOYW1l
cy5oIgogI2luY2x1ZGUgIkhUTUxTY3JpcHRSdW5uZXJIb3N0LmgiCiAjaW5jbHVkZSAiSWdub3Jl
RGVzdHJ1Y3RpdmVXcml0ZUNvdW50SW5jcmVtZW50ZXIuaCIKKyNpbmNsdWRlICJNaWNyb1Rhc2su
aCIKICNpbmNsdWRlICJNdXRhdGlvbk9ic2VydmVyLmgiCiAjaW5jbHVkZSAiTmVzdGluZ0xldmVs
SW5jcmVtZW50ZXIuaCIKICNpbmNsdWRlICJOb3RJbXBsZW1lbnRlZC5oIgpAQCAtMTI5LDggKzEz
MCwxMCBAQCB2b2lkIEhUTUxTY3JpcHRSdW5uZXI6OmV4ZWN1dGVQZW5kaW5nU2NyaXB0QW5kRGlz
cGF0Y2hFdmVudChQZW5kaW5nU2NyaXB0JiBwZW5kaQogICAgIGlmIChwZW5kaW5nU2NyaXB0LmNh
Y2hlZFNjcmlwdCgpICYmIHBlbmRpbmdTY3JpcHQud2F0Y2hpbmdGb3JMb2FkKCkpCiAgICAgICAg
IHN0b3BXYXRjaGluZ0ZvckxvYWQocGVuZGluZ1NjcmlwdCk7CiAKLSAgICBpZiAoIWlzRXhlY3V0
aW5nU2NyaXB0KCkpCisgICAgaWYgKCFpc0V4ZWN1dGluZ1NjcmlwdCgpKSB7CiAgICAgICAgIE11
dGF0aW9uT2JzZXJ2ZXI6OmRlbGl2ZXJBbGxNdXRhdGlvbnMoKTsKKyAgICAgICAgTWljcm9UYXNr
UXVldWU6OnNpbmdsZXRvbigpLnJ1bk1pY3JvVGFza3MoKTsKKyAgICB9CiAKICAgICAvLyBDbGVh
ciB0aGUgcGVuZGluZyBzY3JpcHQgYmVmb3JlIHBvc3NpYmxlIHJlbnRyYW5jeSBmcm9tIGV4ZWN1
dGVTY3JpcHQoKQogICAgIFJlZlB0cjxFbGVtZW50PiBlbGVtZW50ID0gcGVuZGluZ1NjcmlwdC5y
ZWxlYXNlRWxlbWVudEFuZENsZWFyKCk7CkBAIC0yMzEsNiArMjM0LDggQEAgYm9vbCBIVE1MU2Ny
aXB0UnVubmVyOjpleGVjdXRlU2NyaXB0c1dhaXRpbmdGb3JQYXJzaW5nKCkKICAgICAgICAgaWYg
KCFtX2RvY3VtZW50KQogICAgICAgICAgICAgcmV0dXJuIGZhbHNlOwogICAgIH0KKyAgICBpZiAo
IWlzRXhlY3V0aW5nU2NyaXB0KCkpCisgICAgICAgIE1pY3JvVGFza1F1ZXVlOjpzaW5nbGV0b24o
KS5ydW5NaWNyb1Rhc2tzKCk7CiAgICAgcmV0dXJuIHRydWU7CiB9CiAKQEAgLTI5Myw4ICsyOTgs
MTAgQEAgdm9pZCBIVE1MU2NyaXB0UnVubmVyOjpydW5TY3JpcHQoRWxlbWVudCogc2NyaXB0LCBj
b25zdCBUZXh0UG9zaXRpb24mIHNjcmlwdFN0YXIKICAgICAgICAgLy8gZXZlcnkgc2NyaXB0IGVs
ZW1lbnQsIGV2ZW4gaWYgaXQncyBub3QgcmVhZHkgdG8gZXhlY3V0ZSB5ZXQuIFRoZXJlJ3MKICAg
ICAgICAgLy8gdW5mb3J0dWFudGVseSBubyBvYnZpb3VzIHdheSB0byB0ZWxsIGlmIHByZXBhcmVT
Y3JpcHQgaXMgZ29pbmcgdG8KICAgICAgICAgLy8gZXhlY3V0ZSB0aGUgc2NyaXB0IGZyb20gb3V0
IGhlcmUuCi0gICAgICAgIGlmICghaXNFeGVjdXRpbmdTY3JpcHQoKSkKKyAgICAgICAgaWYgKCFp
c0V4ZWN1dGluZ1NjcmlwdCgpKSB7CiAgICAgICAgICAgICBNdXRhdGlvbk9ic2VydmVyOjpkZWxp
dmVyQWxsTXV0YXRpb25zKCk7CisgICAgICAgICAgICBNaWNyb1Rhc2tRdWV1ZTo6c2luZ2xldG9u
KCkucnVuTWljcm9UYXNrcygpOworICAgICAgICB9CiAKICAgICAgICAgSW5zZXJ0aW9uUG9pbnRS
ZWNvcmQgaW5zZXJ0aW9uUG9pbnRSZWNvcmQobV9ob3N0LmlucHV0U3RyZWFtKCkpOwogICAgICAg
ICBOZXN0aW5nTGV2ZWxJbmNyZW1lbnRlciBuZXN0aW5nTGV2ZWxJbmNyZW1lbnRlcihtX3Njcmlw
dE5lc3RpbmdMZXZlbCk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS90ZXN0aW5nL0ludGVy
bmFscy5jcHAgYi9Tb3VyY2UvV2ViQ29yZS90ZXN0aW5nL0ludGVybmFscy5jcHAKaW5kZXggZGE2
ZTcwOTBjNjI0ZjE1NTRiMzg3ZjIwMWM4ZWE1NzVmNzRhODdlMC4uNTcxNmY4NGQxM2RlMWQ0NjU4
NDQ3OGY0ODgwZWNjYzZhNTY4Y2FiZiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvdGVzdGlu
Zy9JbnRlcm5hbHMuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3Rlc3RpbmcvSW50ZXJuYWxzLmNw
cApAQCAtNzksNiArNzksOCBAQAogI2luY2x1ZGUgIk1lZGlhU2Vzc2lvbk1hbmFnZXIuaCIKICNp
bmNsdWRlICJNZW1vcnlDYWNoZS5oIgogI2luY2x1ZGUgIk1lbW9yeUluZm8uaCIKKyNpbmNsdWRl
ICJNaWNyb1Rhc2suaCIKKyNpbmNsdWRlICJNaWNyb1Rhc2tUZXN0LmgiCiAjaW5jbHVkZSAiTW9j
a1BhZ2VPdmVybGF5Q2xpZW50LmgiCiAjaW5jbHVkZSAiUGFnZS5oIgogI2luY2x1ZGUgIlBhZ2VD
YWNoZS5oIgpAQCAtMjUzMiw0ICsyNTM0LDEwIEBAIFJlZlB0cjxGaWxlPiBJbnRlcm5hbHM6OmNy
ZWF0ZUZpbGUoY29uc3QgU3RyaW5nJiBwYXRoKQogICAgIHJldHVybiBGaWxlOjpjcmVhdGUodXJs
LmZpbGVTeXN0ZW1QYXRoKCkpOwogfQogCit2b2lkIEludGVybmFsczo6cXVldWVNaWNyb1Rhc2so
aW50IHRlc3ROdW1iZXIpCit7CisgICAgaWYgKGNvbnRleHREb2N1bWVudCgpKQorICAgICAgICBN
aWNyb1Rhc2tRdWV1ZTo6c2luZ2xldG9uKCkucXVldWVNaWNyb1Rhc2soTWljcm9UYXNrVGVzdDo6
Y3JlYXRlKGNvbnRleHREb2N1bWVudCgpLT5jcmVhdGVXZWFrUHRyKCksIHRlc3ROdW1iZXIpKTsK
K30KKwogfQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvdGVzdGluZy9JbnRlcm5hbHMuaCBi
L1NvdXJjZS9XZWJDb3JlL3Rlc3RpbmcvSW50ZXJuYWxzLmgKaW5kZXggMWI5YjhkNzhjNjkyZTgz
MmRiNmI2ZmQ5ZDk2ZjRlY2RmODgwYWE5Mi4uYzg3OGY1OTA2Y2NlYjU4MDkwMjMwYmQ2NDEyMGE2
ODA2YzBjY2U5ZCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvdGVzdGluZy9JbnRlcm5hbHMu
aAorKysgYi9Tb3VyY2UvV2ViQ29yZS90ZXN0aW5nL0ludGVybmFscy5oCkBAIC0zNjYsNiArMzY2
LDcgQEAgcHVibGljOgogICAgIGJvb2wgaXNQYWdlUGxheWluZ0F1ZGlvKCk7CiAKICAgICBSZWZQ
dHI8RmlsZT4gY3JlYXRlRmlsZShjb25zdCBTdHJpbmcmKTsKKyAgICB2b2lkIHF1ZXVlTWljcm9U
YXNrKGludCk7CiAKIHByaXZhdGU6CiAgICAgZXhwbGljaXQgSW50ZXJuYWxzKERvY3VtZW50Kik7
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS90ZXN0aW5nL0ludGVybmFscy5pZGwgYi9Tb3Vy
Y2UvV2ViQ29yZS90ZXN0aW5nL0ludGVybmFscy5pZGwKaW5kZXggNDk3NzI1Y2QyYjkwY2U5MWY1
YjI0ZThhN2Y0MWZkNDU1NDBhYzY2Yy4uNDA2YTkyYmRmY2MwMmMxMTNmMDExZDczNTY5ZTg3ZDU2
ODE5NzUwMyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvdGVzdGluZy9JbnRlcm5hbHMuaWRs
CisrKyBiL1NvdXJjZS9XZWJDb3JlL3Rlc3RpbmcvSW50ZXJuYWxzLmlkbApAQCAtMzIyLDQgKzMy
Miw1IEBAIGVudW0gUGFnZU92ZXJsYXlUeXBlIHsKICAgICBib29sZWFuIGlzUGFnZVBsYXlpbmdB
dWRpbygpOwogICAgIAogICAgIEZpbGUgY3JlYXRlRmlsZShET01TdHJpbmcgdXJsKTsKKyAgICB2
b2lkIHF1ZXVlTWljcm9UYXNrKGxvbmcgdGVzdE51bWJlcik7CiB9OwpkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYkNvcmUvdGVzdGluZy9NaWNyb1Rhc2tUZXN0LmNwcCBiL1NvdXJjZS9XZWJDb3JlL3Rl
c3RpbmcvTWljcm9UYXNrVGVzdC5jcHAKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uNDEzZjJmZGE4M2JjZjdmNGNjYWM2
NmRjMDljYzVlNmYzZDg0YjFhYgotLS0gL2Rldi9udWxsCisrKyBiL1NvdXJjZS9XZWJDb3JlL3Rl
c3RpbmcvTWljcm9UYXNrVGVzdC5jcHAKQEAgLTAsMCArMSw0MyBAQAorLyoKKyAqIENvcHlyaWdo
dCAoQykgMjAxNSBBa2FtYWkgVGVjaG5vbG9naWVzIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4K
KyAqCisgKiBUaGlzIGxpYnJhcnkgaXMgZnJlZSBzb2Z0d2FyZTsgeW91IGNhbiByZWRpc3RyaWJ1
dGUgaXQgYW5kL29yCisgKiBtb2RpZnkgaXQgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUgTGli
cmFyeSBHZW5lcmFsIFB1YmxpYworICogTGljZW5zZSBhcyBwdWJsaXNoZWQgYnkgdGhlIEZyZWUg
U29mdHdhcmUgRm91bmRhdGlvbjsgZWl0aGVyCisgKiB2ZXJzaW9uIDIgb2YgdGhlIExpY2Vuc2Us
IG9yIChhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uCisgKgorICogVGhpcyBsaWJy
YXJ5IGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCisg
KiBidXQgV0lUSE9VVCBBTlkgV0FSUkFOVFk7IHdpdGhvdXQgZXZlbiB0aGUgaW1wbGllZCB3YXJy
YW50eSBvZgorICogTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQ
VVJQT1NFLiAgU2VlIHRoZSBHTlUKKyAqIExpYnJhcnkgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBm
b3IgbW9yZSBkZXRhaWxzLgorICoKKyAqIFlvdSBzaG91bGQgaGF2ZSByZWNlaXZlZCBhIGNvcHkg
b2YgdGhlIEdOVSBMaWJyYXJ5IEdlbmVyYWwgUHVibGljIExpY2Vuc2UKKyAqIGFsb25nIHdpdGgg
dGhpcyBsaWJyYXJ5OyBzZWUgdGhlIGZpbGUgQ09QWUlORy5MSUIuICBJZiBub3QsIHdyaXRlIHRv
CisgKiB0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uLCBJbmMuLCA1MSBGcmFua2xpbiBTdHJl
ZXQsIEZpZnRoIEZsb29yLAorICogQm9zdG9uLCBNQSAwMjExMC0xMzAxLCBVU0EuCisgKgorICov
CisKKyNpbmNsdWRlICJjb25maWcuaCIKKyNpbmNsdWRlICJNaWNyb1Rhc2tUZXN0LmgiCisKKyNp
bmNsdWRlICJEb2N1bWVudC5oIgorCituYW1lc3BhY2UgV2ViQ29yZSB7CisKK3ZvaWQgTWljcm9U
YXNrVGVzdDo6cnVuKCkKK3sKKyAgICBTdHJpbmdCdWlsZGVyIG1lc3NhZ2U7CisgICAgbWVzc2Fn
ZS5hcHBlbmQoIk1pY3JvVGFzayAjIik7CisgICAgbWVzc2FnZS5hcHBlbmQoU3RyaW5nOjpudW1i
ZXIobV90ZXN0TnVtYmVyKSk7CisgICAgbWVzc2FnZS5hcHBlbmQoIiBoYXMgcnVuLiIpOworICAg
IGlmIChtX2RvY3VtZW50KQorICAgICAgICBtX2RvY3VtZW50LT5hZGRDb25zb2xlTWVzc2FnZShN
ZXNzYWdlU291cmNlOjpKUywgTWVzc2FnZUxldmVsOjpEZWJ1ZywgbWVzc2FnZS50b1N0cmluZygp
KTsKK30KKworc3RkOjp1bmlxdWVfcHRyPE1pY3JvVGFza1Rlc3Q+IE1pY3JvVGFza1Rlc3Q6OmNy
ZWF0ZShXZWFrUHRyPERvY3VtZW50PiBkb2N1bWVudCwgaW50IHRlc3ROdW1iZXIpCit7CisgICAg
cmV0dXJuIHN0ZDo6dW5pcXVlX3B0cjxNaWNyb1Rhc2tUZXN0PihuZXcgTWljcm9UYXNrVGVzdChk
b2N1bWVudCwgdGVzdE51bWJlcikpOworfQorCit9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViQ29yZS90ZXN0aW5nL01pY3JvVGFza1Rlc3QuaCBiL1NvdXJjZS9X
ZWJDb3JlL3Rlc3RpbmcvTWljcm9UYXNrVGVzdC5oCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4
IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmE3NDIyZTg2NzhiZjJm
N2ZmYWYzMTllYmFkODMyZDMzNzE0MGQyZTIKLS0tIC9kZXYvbnVsbAorKysgYi9Tb3VyY2UvV2Vi
Q29yZS90ZXN0aW5nL01pY3JvVGFza1Rlc3QuaApAQCAtMCwwICsxLDQ5IEBACisvKgorICogQ29w
eXJpZ2h0IChDKSAyMDE1IEFrYW1haSBUZWNobm9sb2dpZXMgSW5jLiBBbGwgcmlnaHRzIHJlc2Vy
dmVkLgorICoKKyAqIFRoaXMgbGlicmFyeSBpcyBmcmVlIHNvZnR3YXJlOyB5b3UgY2FuIHJlZGlz
dHJpYnV0ZSBpdCBhbmQvb3IKKyAqIG1vZGlmeSBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdO
VSBMaWJyYXJ5IEdlbmVyYWwgUHVibGljCisgKiBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieSB0aGUg
RnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uOyBlaXRoZXIKKyAqIHZlcnNpb24gMiBvZiB0aGUgTGlj
ZW5zZSwgb3IgKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KKyAqCisgKiBUaGlz
IGxpYnJhcnkgaXMgZGlzdHJpYnV0ZWQgaW4gdGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1
bCwKKyAqIGJ1dCBXSVRIT1VUIEFOWSBXQVJSQU5UWTsgd2l0aG91dCBldmVuIHRoZSBpbXBsaWVk
IHdhcnJhbnR5IG9mCisgKiBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNV
TEFSIFBVUlBPU0UuICBTZWUgdGhlIEdOVQorICogTGlicmFyeSBHZW5lcmFsIFB1YmxpYyBMaWNl
bnNlIGZvciBtb3JlIGRldGFpbHMuCisgKgorICogWW91IHNob3VsZCBoYXZlIHJlY2VpdmVkIGEg
Y29weSBvZiB0aGUgR05VIExpYnJhcnkgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQorICogYWxvbmcg
d2l0aCB0aGlzIGxpYnJhcnk7IHNlZSB0aGUgZmlsZSBDT1BZSU5HLkxJQi4gIElmIG5vdCwgd3Jp
dGUgdG8KKyAqIHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb24sIEluYy4sIDUxIEZyYW5rbGlu
IFN0cmVldCwgRmlmdGggRmxvb3IsCisgKiBCb3N0b24sIE1BIDAyMTEwLTEzMDEsIFVTQS4KKyAq
CisgKi8KKworI2lmbmRlZiBNaWNyb1Rhc2tUZXN0X2gKKyNkZWZpbmUgTWljcm9UYXNrVGVzdF9o
CisKKyNpbmNsdWRlICJNaWNyb1Rhc2suaCIKKyNpbmNsdWRlIDx3dGYvV2Vha1B0ci5oPgorCitu
YW1lc3BhY2UgV2ViQ29yZSB7CisKK2NsYXNzIERvY3VtZW50OworCitjbGFzcyBNaWNyb1Rhc2tU
ZXN0IDogcHVibGljIE1pY3JvVGFzayB7CitwdWJsaWM6CisgICAgdmlydHVhbCB2b2lkIHJ1bigp
IG92ZXJyaWRlOworICAgIFdFQkNPUkVfVEVTVFNVUFBPUlRfRVhQT1JUIHN0YXRpYyBzdGQ6OnVu
aXF1ZV9wdHI8TWljcm9UYXNrVGVzdD4gY3JlYXRlKFdlYWtQdHI8RG9jdW1lbnQ+LCBpbnQgdGVz
dE51bWJlcik7CisKK3ByaXZhdGU6CisgICAgTWljcm9UYXNrVGVzdChXZWFrUHRyPERvY3VtZW50
PiBkb2N1bWVudCwgaW50IHRlc3ROdW1iZXIpCisgICAgICAgIDogbV9kb2N1bWVudChkb2N1bWVu
dCkKKyAgICAgICAgLCBtX3Rlc3ROdW1iZXIodGVzdE51bWJlcikKKyAgICB7CisgICAgfQorCisg
ICAgV2Vha1B0cjxEb2N1bWVudD4gbV9kb2N1bWVudDsKKyAgICBpbnQgbV90ZXN0TnVtYmVyOwor
fTsKKworfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQorCisjZW5kaWYKZGlmZiAtLWdpdCBhL0xheW91
dFRlc3RzL0NoYW5nZUxvZyBiL0xheW91dFRlc3RzL0NoYW5nZUxvZwppbmRleCA1M2Y5YWIzMmFk
MDI4N2Y0YTUxNWRlYTcwYjgwNjY1MzY0YTM0NTE0Li41Y2EzMzI5NGUxOWExNWM1ZGEyMGUzMTky
ZmU2NWQ2YmUxYzg4NmY1IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKKysrIGIv
TGF5b3V0VGVzdHMvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTkgQEAKKzIwMTUtMDMtMDIgICBZb2F2
IFdlaXNzICA8eW9hdkB5b2F2LndzPgorCisgICAgICAgIEFkZCBhIG1pY3JvdGFzayBhYnN0cmFj
dGlvbgorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTM3
NDk2CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgU2FtIFdlaW5pZy4KKworICAgICAgICBBZGRpbmcg
YSB0ZXN0IGZvciBtaWNyb3Rhc2sgYWJzdHJhY3Rpb24uCisKKyAgICAgICAgKiBmYXN0L2RvbS9t
aWNyb3Rhc2stZGV0YWNoLmh0bWw6IEFkZGVkLgorICAgICAgICAqIGZhc3QvZG9tL21pY3JvdGFz
ay1kZXRhY2gtZXhwZWN0ZWQudHh0OiBBZGRlZC4KKyAgICAgICAgKiBmYXN0L2RvbS9taWNyb3Rh
c2staW5vcmRlci5odG1sOiBBZGRlZC4KKyAgICAgICAgKiBmYXN0L2RvbS9taWNyb3Rhc2staW5v
cmRlci1leHBlY3RlZC50eHQ6IEFkZGVkLgorICAgICAgICAqIGZhc3QvZG9tL21pY3JvdGFzay1y
ZXZlcnNlLmh0bWw6IEFkZGVkLgorICAgICAgICAqIGZhc3QvZG9tL21pY3JvdGFzay1yZXZlcnNl
LWV4cGVjdGVkLnR4dDogQWRkZWQuCisKIDIwMTUtMDMtMDEgIFNpbW9uIEZyYXNlciAgPHNpbW9u
LmZyYXNlckBhcHBsZS5jb20+CiAKICAgICAgICAgTWFrZSBjbGlwLXBhdGggd29yayBvbiA8dmlk
ZW8+LCA8Y2FudmFzPiBldGMuCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L2RvbS9taWNy
b3Rhc2stZGV0YWNoLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2Zhc3QvZG9tL21pY3JvdGFz
ay1kZXRhY2gtZXhwZWN0ZWQudHh0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjI4Y2QyOTU2OGUyMGY2ZWU0ZGJkOWE0
MWNiNmY4NmM0ODI3ZjkxNjEKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9mYXN0L2Rv
bS9taWNyb3Rhc2stZGV0YWNoLWV4cGVjdGVkLnR4dApAQCAtMCwwICsxLDkgQEAKK0NPTlNPTEUg
TUVTU0FHRTogbGluZSAzMTogRmluaXNoZWQgcXVldWVpbmcgdGVzdHMuCitDT05TT0xFIE1FU1NB
R0U6IE1pY3JvVGFzayAjMSBoYXMgcnVuLgorQ09OU09MRSBNRVNTQUdFOiBNaWNyb1Rhc2sgIzAg
aGFzIHJ1bi4KKworCistLS0tLS0tLQorRnJhbWU6ICdmcmFtZTEnCistLS0tLS0tLQorCmRpZmYg
LS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L2RvbS9taWNyb3Rhc2stZGV0YWNoLmh0bWwgYi9MYXlv
dXRUZXN0cy9mYXN0L2RvbS9taWNyb3Rhc2stZGV0YWNoLmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2
NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uODk3Nzcz
MjdlYTU3MzE1NWZiYjY2ZGEyNmQyNzkwNDViZjFmY2E0ZAotLS0gL2Rldi9udWxsCisrKyBiL0xh
eW91dFRlc3RzL2Zhc3QvZG9tL21pY3JvdGFzay1kZXRhY2guaHRtbApAQCAtMCwwICsxLDM3IEBA
Cis8IURPQ1RZUEUgaHRtbD4KKzxzY3JpcHQ+CitpZiAod2luZG93LnRlc3RSdW5uZXIpIHsKKyAg
ICB0ZXN0UnVubmVyLmR1bXBBc1RleHQoKTsKKyAgICB0ZXN0UnVubmVyLmR1bXBDaGlsZEZyYW1l
c0FzVGV4dCgpOworICAgIHRlc3RSdW5uZXIud2FpdFVudGlsRG9uZSgpOworfQorPC9zY3JpcHQ+
Cis8Ym9keT4KKzxpZnJhbWUgaWQ9ImZyYW1lMSI+PC9pZnJhbWU+Cis8aWZyYW1lIGlkPSJmcmFt
ZTIiPjwvaWZyYW1lPgorPHNjcmlwdD4KKworKGZ1bmN0aW9uKCkgeworICAgIHZhciBpZnJhbWUx
ID0gZG9jdW1lbnQucXVlcnlTZWxlY3RvcigiI2ZyYW1lMSIpLmNvbnRlbnRXaW5kb3c7CisgICAg
dmFyIGlmcmFtZTJOb2RlID0gZG9jdW1lbnQucXVlcnlTZWxlY3RvcigiI2ZyYW1lMiIpOworICAg
IHZhciBpZnJhbWUyID0gaWZyYW1lMk5vZGUuY29udGVudFdpbmRvdzsKKworICAgIGlmKGlmcmFt
ZTIuaW50ZXJuYWxzKQorICAgICAgICBpZnJhbWUyLmludGVybmFscy5xdWV1ZU1pY3JvVGFzaygy
KTsKKyAgICBpZihpZnJhbWUxLmludGVybmFscykKKyAgICAgICAgaWZyYW1lMS5pbnRlcm5hbHMu
cXVldWVNaWNyb1Rhc2soMSk7CisgICAgaWYod2luZG93LmludGVybmFscykKKyAgICAgICAgaW50
ZXJuYWxzLnF1ZXVlTWljcm9UYXNrKDApOworICAgIGRvY3VtZW50LmJvZHkucmVtb3ZlQ2hpbGQo
aWZyYW1lMk5vZGUpOworfSgpKTsKKworaWYgKHdpbmRvdy5HQ0NvbnRyb2xsZXIpCisgICAgR0ND
b250cm9sbGVyLmNvbGxlY3QoKTsKKworY29uc29sZS5sb2coIkZpbmlzaGVkIHF1ZXVlaW5nIHRl
c3RzLiIpOworcmVxdWVzdEFuaW1hdGlvbkZyYW1lKGZ1bmN0aW9uKCkgeworICAgIGlmICh3aW5k
b3cudGVzdFJ1bm5lcikKKyAgICAgICAgdGVzdFJ1bm5lci5ub3RpZnlEb25lKCk7Cit9KTsKKzwv
c2NyaXB0PgorPC9ib2R5PgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9kb20vbWljcm90
YXNrLWlub3JkZXItZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvZmFzdC9kb20vbWljcm90YXNr
LWlub3JkZXItZXhwZWN0ZWQudHh0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjAzODBiOTRjN2M4MTgzYTY5NmUxYWIy
MjY5OWVhY2FmY2QzZGQzNzMKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9mYXN0L2Rv
bS9taWNyb3Rhc2staW5vcmRlci1leHBlY3RlZC50eHQKQEAgLTAsMCArMSwxNSBAQAorQ09OU09M
RSBNRVNTQUdFOiBsaW5lIDIzOiBGaW5pc2hlZCBxdWV1ZWluZyB0ZXN0cy4KK0NPTlNPTEUgTUVT
U0FHRTogTWljcm9UYXNrICMyIGhhcyBydW4uCitDT05TT0xFIE1FU1NBR0U6IE1pY3JvVGFzayAj
MSBoYXMgcnVuLgorQ09OU09MRSBNRVNTQUdFOiBNaWNyb1Rhc2sgIzAgaGFzIHJ1bi4KKyAKKwor
LS0tLS0tLS0KK0ZyYW1lOiAnZnJhbWUxJworLS0tLS0tLS0KKworCistLS0tLS0tLQorRnJhbWU6
ICdmcmFtZTInCistLS0tLS0tLQorCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L2RvbS9t
aWNyb3Rhc2staW5vcmRlci5odG1sIGIvTGF5b3V0VGVzdHMvZmFzdC9kb20vbWljcm90YXNrLWlu
b3JkZXIuaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwLi43OWM4ZTJmNzg5ODNhM2U2ODVlYWMxNTUwOTU2MTAxMWU4
NjFmOWE5Ci0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC9kb20vbWljcm90YXNr
LWlub3JkZXIuaHRtbApAQCAtMCwwICsxLDI4IEBACis8IURPQ1RZUEUgaHRtbD4KKzxzY3JpcHQ+
CitpZiAod2luZG93LnRlc3RSdW5uZXIpIHsKKyAgICB0ZXN0UnVubmVyLmR1bXBBc1RleHQoKTsK
KyAgICB0ZXN0UnVubmVyLmR1bXBDaGlsZEZyYW1lc0FzVGV4dCgpOworICAgIHRlc3RSdW5uZXIu
d2FpdFVudGlsRG9uZSgpOworfQorPC9zY3JpcHQ+Cis8aWZyYW1lIGlkPSJmcmFtZTEiPjwvaWZy
YW1lPgorPGlmcmFtZSBpZD0iZnJhbWUyIj48L2lmcmFtZT4KKzxzY3JpcHQ+CisKK3ZhciBpZnJh
bWUxID0gZG9jdW1lbnQucXVlcnlTZWxlY3RvcigiI2ZyYW1lMSIpLmNvbnRlbnRXaW5kb3c7Cit2
YXIgaWZyYW1lMiA9IGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoIiNmcmFtZTIiKS5jb250ZW50V2lu
ZG93OworCitpZihpZnJhbWUyLmludGVybmFscykKKyAgICBpZnJhbWUyLmludGVybmFscy5xdWV1
ZU1pY3JvVGFzaygyKTsKK2lmKGlmcmFtZTEuaW50ZXJuYWxzKQorICAgIGlmcmFtZTEuaW50ZXJu
YWxzLnF1ZXVlTWljcm9UYXNrKDEpOworaWYod2luZG93LmludGVybmFscykKKyAgICBpbnRlcm5h
bHMucXVldWVNaWNyb1Rhc2soMCk7CisKK2NvbnNvbGUubG9nKCJGaW5pc2hlZCBxdWV1ZWluZyB0
ZXN0cy4iKTsKK3JlcXVlc3RBbmltYXRpb25GcmFtZShmdW5jdGlvbigpIHsKKyAgICBpZiAod2lu
ZG93LnRlc3RSdW5uZXIpCisgICAgICAgIHRlc3RSdW5uZXIubm90aWZ5RG9uZSgpOworfSk7Cis8
L3NjcmlwdD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3QvZG9tL21pY3JvdGFzay1yZXZl
cnNlLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2Zhc3QvZG9tL21pY3JvdGFzay1yZXZlcnNl
LWV4cGVjdGVkLnR4dApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi4yZWM4OGJiNTRmMGJhZmZmMmI0OTRlMjIzM2FmZWU0
MzU4MzY3YTNhCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC9kb20vbWljcm90
YXNrLXJldmVyc2UtZXhwZWN0ZWQudHh0CkBAIC0wLDAgKzEsMTUgQEAKK0NPTlNPTEUgTUVTU0FH
RTogbGluZSAyMzogRmluaXNoZWQgcXVldWVpbmcgdGVzdHMuCitDT05TT0xFIE1FU1NBR0U6IE1p
Y3JvVGFzayAjMCBoYXMgcnVuLgorQ09OU09MRSBNRVNTQUdFOiBNaWNyb1Rhc2sgIzEgaGFzIHJ1
bi4KK0NPTlNPTEUgTUVTU0FHRTogTWljcm9UYXNrICMyIGhhcyBydW4uCisgCisKKy0tLS0tLS0t
CitGcmFtZTogJ2ZyYW1lMScKKy0tLS0tLS0tCisKKworLS0tLS0tLS0KK0ZyYW1lOiAnZnJhbWUy
JworLS0tLS0tLS0KKwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9kb20vbWljcm90YXNr
LXJldmVyc2UuaHRtbCBiL0xheW91dFRlc3RzL2Zhc3QvZG9tL21pY3JvdGFzay1yZXZlcnNlLmh0
bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMC4uYjFiNGU3Nzg2MjE3YmFkMzZjZGY5MDQ5YjljM2U4ZjRmYTI3MmJkMAot
LS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2Zhc3QvZG9tL21pY3JvdGFzay1yZXZlcnNl
Lmh0bWwKQEAgLTAsMCArMSwyOCBAQAorPCFET0NUWVBFIGh0bWw+Cis8c2NyaXB0PgoraWYgKHdp
bmRvdy50ZXN0UnVubmVyKSB7CisgICAgdGVzdFJ1bm5lci5kdW1wQXNUZXh0KCk7CisgICAgdGVz
dFJ1bm5lci5kdW1wQ2hpbGRGcmFtZXNBc1RleHQoKTsKKyAgICB0ZXN0UnVubmVyLndhaXRVbnRp
bERvbmUoKTsKK30KKzwvc2NyaXB0PgorPGlmcmFtZSBpZD0iZnJhbWUxIj48L2lmcmFtZT4KKzxp
ZnJhbWUgaWQ9ImZyYW1lMiI+PC9pZnJhbWU+Cis8c2NyaXB0PgorCit2YXIgaWZyYW1lMSA9IGRv
Y3VtZW50LnF1ZXJ5U2VsZWN0b3IoIiNmcmFtZTEiKS5jb250ZW50V2luZG93OwordmFyIGlmcmFt
ZTIgPSBkb2N1bWVudC5xdWVyeVNlbGVjdG9yKCIjZnJhbWUyIikuY29udGVudFdpbmRvdzsKKwor
aWYod2luZG93LmludGVybmFscykKKyAgICBpbnRlcm5hbHMucXVldWVNaWNyb1Rhc2soMCk7Citp
ZihpZnJhbWUxLmludGVybmFscykKKyAgICBpZnJhbWUxLmludGVybmFscy5xdWV1ZU1pY3JvVGFz
aygxKTsKK2lmKGlmcmFtZTIuaW50ZXJuYWxzKQorICAgIGlmcmFtZTIuaW50ZXJuYWxzLnF1ZXVl
TWljcm9UYXNrKDIpOworCitjb25zb2xlLmxvZygiRmluaXNoZWQgcXVldWVpbmcgdGVzdHMuIik7
CityZXF1ZXN0QW5pbWF0aW9uRnJhbWUoZnVuY3Rpb24oKSB7CisgICAgaWYgKHdpbmRvdy50ZXN0
UnVubmVyKQorICAgICAgICB0ZXN0UnVubmVyLm5vdGlmeURvbmUoKTsKK30pOworPC9zY3JpcHQ+
Cg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>247752</attachid>
            <date>2015-03-03 00:15:28 -0800</date>
            <delta_ts>2015-03-03 16:34:20 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-137496-20150303001510.patch</filename>
            <type>text/plain</type>
            <size>36535</size>
            <attacher name="Yoav Weiss">yoav</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTgwODg0CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggMjI5ZDYwOTEzYjhmMTFj
YTM3NjIwNGQ4MWJlYmI1Yzk2NTI4NzU3NS4uZTU3MDBiZWJlYmU0MWQ0MDFmMTFmOWI5Y2E0ZTgx
OWEyZTMxNzg0NiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDQ2IEBACisyMDE1LTAzLTAyICBZb2F2
IFdlaXNzICA8eW9hdkB5b2F2LndzPgorCisgICAgICAgIEFkZCBhIG1pY3JvdGFzayBhYnN0cmFj
dGlvbgorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTM3
NDk2CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgU2FtIFdlaW5pZy4KKworICAgICAgICBUaGlzIHBh
dGNoIGFkZHMgYSBtaWNyb3Rhc2sgYWJzdHJhY3Rpb246IGh0dHBzOi8vaHRtbC5zcGVjLndoYXR3
Zy5vcmcvbXVsdGlwYWdlL3dlYmFwcGFwaXMuaHRtbCNtaWNyb3Rhc2sKKyAgICAgICAgVGhhdCBh
YnN0cmFjdGlvbiBpcyByZXF1aXJlZCBpbiBvcmRlciB0byBlbmFibGUgYXN5bmMgbG9hZGluZyBv
ZiBpbWFnZXMsCisgICAgICAgIHdoaWNoIGlzIGluIHR1cm4gcmVxdWlyZWQgdG8gZW5hYmxlIHN1
cHBvcnQgZm9yIHRoZSBwaWN0dXJlIGVsZW1lbnQsIGFzIHdlbGwgYXMKKyAgICAgICAgdG8gbWFr
ZSBzdXJlIHRoYXQgdGhlIG9yZGVyIG9mIHByb3BlcnRpZXMgc2V0IG9uIEhUTUxJbWFnZUVsZW1l
bnQgaGFzIG5vIGltcGxpY2F0aW9ucy4KKworICAgICAgICAqIFdlYkNvcmUudmN4cHJvai9XZWJD
b3JlLnZjeHByb2o6IEFkZCBNaWNyb1Rhc2sue2gsY3BwfSB0byB0aGUgcHJvamVjdC4KKyAgICAg
ICAgKiBXZWJDb3JlLnZjeHByb2ovV2ViQ29yZVRlc3RTdXBwb3J0LnZjeHByb2o6IEFkZCBNaWNy
b1Rhc2tUZXN0LntoLGNwcH0gdG8gdGhlIHByb2plY3QuCisgICAgICAgICogV2ViQ29yZS52Y3hw
cm9qL1dlYkNvcmUudmN4cHJvai5maWx0ZXJzOiBBZGQgTWljcm9UYXNrLntoLGNwcH0gdG8gdGhl
IHByb2plY3QuCisgICAgICAgICogV2ViQ29yZS52Y3hwcm9qL1dlYkNvcmVUZXN0U3VwcG9ydC52
Y3hwcm9qLmZpbHRlcnM6IEFkZCBNaWNyb1Rhc2tUZXN0LntoLGNwcH0gdG8gdGhlIHByb2plY3Qu
CisgICAgICAgICogV2ViQ29yZS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qOiBBZGQgTWljcm9U
YXNreyxUZXN0fS57aCxjcHB9IHRvIHRoZSBwcm9qZWN0LgorICAgICAgICAqIGRvbS9Eb2N1bWVu
dC5oOiBBZGQgV0VCQ09SRV9FWFBPUlQgdG8gYWRkQ29uc29sZU1lc3NhZ2UsIHNvIGl0IGNhbiBi
ZSB1c2VkIGluIE1pY3JvVGFza1Rlc3QgdGhhdCdzIGluIFdlYkNvcmVUZXN0U3VwcG9ydC4uCisg
ICAgICAgICogZG9tL01pY3JvVGFzay5oOiBBZGQgYSBNaWNyb1Rhc2sgaW50ZXJmYWNlIGNsYXNz
LiBBZGQgYSBNaWNyb1Rhc2tRdWV1ZSBzaW5nbGV0b24uCisgICAgICAgIChXZWJDb3JlOjpNaWNy
b1Rhc2s6On5NaWNyb1Rhc2spOgorICAgICAgICAoV2ViQ29yZTo6TWljcm9UYXNrOjpydW4pOiBS
dW4gdGhlIG1pY3JvdGFzay4KKyAgICAgICAgKiBkb20vTWljcm9UYXNrLmNwcDogSW1wbGVtZW50
IHRoZSBNaWNyb1Rhc2tRdWV1ZSBzaW5nbGV0b24uCisgICAgICAgIChXZWJDb3JlOjpNaWNyb1Rh
c2tRdWV1ZTo6c2luZ2xldG9uKTogR2V0IGEgc2luZ2xldG9uIGluc3RhbmNlIG9mIE1pY3JvVGFz
a1F1ZXVlLgorICAgICAgICAoV2ViQ29yZTo6TWljcm9UYXNrUXVldWU6OnF1ZXVlTWljcm9UYXNr
KTogQWRkIGEgbWljcm90YXNrIHRvIHRoZSBxdWV1ZS4KKyAgICAgICAgKFdlYkNvcmU6Ok1pY3Jv
VGFza1F1ZXVlOjpydW5NaWNyb1Rhc2tzKTogUnVuIGFsbCB0aGUgbWljcm90YXNrcyBpbiB0aGUg
cXVldWUgYW5kIGNsZWFyIGl0LgorICAgICAgICAqIGRvbS9TY3JpcHRSdW5uZXIuY3BwOiBUcmln
Z2VyIHJ1bm5pbmcgb2YgYWxsIG1pY3JvdGFza3MgaW4gcXVldWUuCisgICAgICAgIChXZWJDb3Jl
OjpTY3JpcHRSdW5uZXI6OnRpbWVyRmlyZWQpOgorICAgICAgICAqIGh0bWwvcGFyc2VyL0hUTUxT
Y3JpcHRSdW5uZXIuY3BwOiBUcmlnZ2VyIHJ1bm5pbmcgb2YgYWxsIG1pY3JvdGFza3MgaW4gcXVl
dWUuCisgICAgICAgIChXZWJDb3JlOjpIVE1MU2NyaXB0UnVubmVyOjpleGVjdXRlUGVuZGluZ1Nj
cmlwdEFuZERpc3BhdGNoRXZlbnQpOgorICAgICAgICAoV2ViQ29yZTo6SFRNTFNjcmlwdFJ1bm5l
cjo6ZXhlY3V0ZVNjcmlwdHNXYWl0aW5nRm9yUGFyc2luZyk6CisgICAgICAgIChXZWJDb3JlOjpI
VE1MU2NyaXB0UnVubmVyOjpydW5TY3JpcHQpOgorICAgICAgICAqIHRlc3RpbmcvSW50ZXJuYWxz
LmNwcDogQWRkIGEgbWV0aG9kIHRvIHF1ZXVlIGEgdGVzdCBtaWNyb3Rhc2suCisgICAgICAgIChX
ZWJDb3JlOjpJbnRlcm5hbHM6OnF1ZXVlTWljcm9UYXNrKToKKyAgICAgICAgKiB0ZXN0aW5nL0lu
dGVybmFscy5oOiBBZGQgYSBtZXRob2QgdG8gcXVldWUgYSB0ZXN0IG1pY3JvdGFzay4KKyAgICAg
ICAgKFdlYkNvcmU6OkludGVybmFsczo6cXVldWVNaWNyb1Rhc2spOgorICAgICAgICAqIHRlc3Rp
bmcvSW50ZXJuYWxzLmlkbDogRXhwb3NlIHRlc3QgbWljcm90YXNrIHF1ZXVlaW5nIHRvIHRlc3Qg
SlMuCisgICAgICAgICogdGVzdGluZy9NaWNyb1Rhc2tUZXN0LmNwcDogQWRkIGEgdGVzdCBjbGFz
cyB0aGF0IGltcGxlbWVudHMgYSBtaWNyb3Rhc2sgYW5kIHByaW50cyB0byB0aGUgY29uc29sZSB3
aGVuIGl0IHJ1bnMuCisgICAgICAgIChXZWJDb3JlOjpNaWNyb1Rhc2tUZXN0OjpydW4pOiBSdW4g
dGhlIG1pY3JvdGFzaworICAgICAgICAoV2ViQ29yZTo6TWljcm9UYXNrVGVzdDo6Y3JlYXRlKTog
Q3JlYXRlIGEgdGVzdCBtaWNyb3Rhc2suCisgICAgICAgICogdGVzdGluZy9NaWNyb1Rhc2tUZXN0
Lmg6IEFkZCBhIHRlc3QgY2xhc3MgdGhhdCBpbXBsZW1lbnRzIGEgbWljcm90YXNrLgorICAgICAg
ICAoV2ViQ29yZTo6TWljcm9UYXNrVGVzdDo6cnVuKToKKyAgICAgICAgKFdlYkNvcmU6Ok1pY3Jv
VGFza1Rlc3Q6OmNyZWF0ZSk6CisKIDIwMTUtMDMtMDIgIERhdmlkIEtpbHplciAgPGRka2lsemVy
QGFwcGxlLmNvbT4KIAogICAgICAgICBSRUdSRVNTSU9OIChyMTgwODgyKTogQnVpbGQgZmFpbHVy
ZTogTWV0aG9kcyBub3QgbWFya2VkIG92ZXJyaWRlIGluIEdyYXBoaWNzTGF5ZXJDQS5oCmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9DTWFrZUxpc3RzLnR4dCBiL1NvdXJjZS9XZWJDb3JlL0NN
YWtlTGlzdHMudHh0CmluZGV4IDMyODk4YzdkMGVkNDBjZTBhMGNhM2Y4MTFmN2UwYTUyMDk5ZTZh
NzUuLjc1MzQ2NGI1NzRiNzYzNmJjM2Q3NTVjNDRjOTFlZmUyZjc4YTNhODMgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9XZWJDb3JlL0NNYWtlTGlzdHMudHh0CisrKyBiL1NvdXJjZS9XZWJDb3JlL0NNYWtl
TGlzdHMudHh0CkBAIC0xMzcwLDYgKzEzNzAsNyBAQCBzZXQoV2ViQ29yZV9TT1VSQ0VTCiAgICAg
ZG9tL01lc3NhZ2VFdmVudC5jcHAKICAgICBkb20vTWVzc2FnZVBvcnQuY3BwCiAgICAgZG9tL01l
c3NhZ2VQb3J0Q2hhbm5lbC5jcHAKKyAgICBkb20vTWljcm9UYXNrLmNwcAogICAgIGRvbS9Nb3Vz
ZUV2ZW50LmNwcAogICAgIGRvbS9Nb3VzZVJlbGF0ZWRFdmVudC5jcHAKICAgICBkb20vTXV0YXRp
b25FdmVudC5jcHAKQEAgLTMxNTQsNiArMzE1NSw3IEBAIHNldChXZWJDb3JlVGVzdFN1cHBvcnRf
U09VUkNFUwogICAgIHRlc3RpbmcvSW50ZXJuYWxTZXR0aW5ncy5jcHAKICAgICB0ZXN0aW5nL0lu
dGVybmFscy5jcHAKIAorICAgIHRlc3RpbmcvTWljcm9UYXNrVGVzdC5jcHAKICAgICB0ZXN0aW5n
L01vY2tQYWdlT3ZlcmxheUNsaWVudC5jcHAKIAogICAgIHRlc3RpbmcvanMvV2ViQ29yZVRlc3RT
dXBwb3J0LmNwcApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvV2ViQ29yZS52Y3hwcm9qL1dl
YkNvcmUudmN4cHJvaiBiL1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUudmN4cHJvai9XZWJDb3JlLnZj
eHByb2oKaW5kZXggMDQ0MmJmMzFhNTBmMmY0ODZjNDE5NjQyMjg3NGEyMjY4NzY5MjljOS4uMzEw
ZGJiNzcyNzA2YjUxMGZkNzE1ZTgwMmY2M2UyYTQxNGE3MjMzMyAxMDA2NDQKLS0tIGEvU291cmNl
L1dlYkNvcmUvV2ViQ29yZS52Y3hwcm9qL1dlYkNvcmUudmN4cHJvagorKysgYi9Tb3VyY2UvV2Vi
Q29yZS9XZWJDb3JlLnZjeHByb2ovV2ViQ29yZS52Y3hwcm9qCkBAIC0xMzQzNCw2ICsxMzQzNCw3
IEBACiAgICAgICA8RXhjbHVkZWRGcm9tQnVpbGQgQ29uZGl0aW9uPSInJChDb25maWd1cmF0aW9u
KXwkKFBsYXRmb3JtKSc9PSdQcm9kdWN0aW9ufFdpbjMyJyI+dHJ1ZTwvRXhjbHVkZWRGcm9tQnVp
bGQ+CiAgICAgICA8RXhjbHVkZWRGcm9tQnVpbGQgQ29uZGl0aW9uPSInJChDb25maWd1cmF0aW9u
KXwkKFBsYXRmb3JtKSc9PSdQcm9kdWN0aW9ufHg2NCciPnRydWU8L0V4Y2x1ZGVkRnJvbUJ1aWxk
PgogICAgIDwvQ2xDb21waWxlPgorICAgIDxDbENvbXBpbGUgSW5jbHVkZT0iLi5cZG9tXE1pY3Jv
VGFzay5jcHAiIC8+CiAgICAgPENsQ29tcGlsZSBJbmNsdWRlPSIuLlxkb21cTW91c2VFdmVudC5j
cHAiPgogICAgICAgPEV4Y2x1ZGVkRnJvbUJ1aWxkIENvbmRpdGlvbj0iJyQoQ29uZmlndXJhdGlv
bil8JChQbGF0Zm9ybSknPT0nRGVidWd8V2luMzInIj50cnVlPC9FeGNsdWRlZEZyb21CdWlsZD4K
ICAgICAgIDxFeGNsdWRlZEZyb21CdWlsZCBDb25kaXRpb249IickKENvbmZpZ3VyYXRpb24pfCQo
UGxhdGZvcm0pJz09J0RlYnVnfHg2NCciPnRydWU8L0V4Y2x1ZGVkRnJvbUJ1aWxkPgpAQCAtMjA2
MjQsNiArMjA2MjUsNyBAQAogICAgIDxDbEluY2x1ZGUgSW5jbHVkZT0iLi5cZG9tXE1lc3NhZ2VF
dmVudC5oIiAvPgogICAgIDxDbEluY2x1ZGUgSW5jbHVkZT0iLi5cZG9tXE1lc3NhZ2VQb3J0Lmgi
IC8+CiAgICAgPENsSW5jbHVkZSBJbmNsdWRlPSIuLlxkb21cTWVzc2FnZVBvcnRDaGFubmVsLmgi
IC8+CisgICAgPENsSW5jbHVkZSBJbmNsdWRlPSIuLlxkb21cTWljcm9UYXNrLmgiIC8+CiAgICAg
PENsSW5jbHVkZSBJbmNsdWRlPSIuLlxkb21cTW91c2VFdmVudC5oIiAvPgogICAgIDxDbEluY2x1
ZGUgSW5jbHVkZT0iLi5cZG9tXE1vdXNlUmVsYXRlZEV2ZW50LmgiIC8+CiAgICAgPENsSW5jbHVk
ZSBJbmNsdWRlPSIuLlxkb21cTXV0YXRpb25FdmVudC5oIiAvPgpAQCAtMjE0MjUsNCArMjE0Mjcs
NCBAQAogICA8SW1wb3J0R3JvdXAgTGFiZWw9IkV4dGVuc2lvblRhcmdldHMiPgogICAgIDxJbXBv
cnQgUHJvamVjdD0iJChWQ1RhcmdldHNQYXRoKVxCdWlsZEN1c3RvbWl6YXRpb25zXG1hc20udGFy
Z2V0cyIgLz4KICAgPC9JbXBvcnRHcm91cD4KLTwvUHJvamVjdD4KXCBObyBuZXdsaW5lIGF0IGVu
ZCBvZiBmaWxlCis8L1Byb2plY3Q+CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9XZWJDb3Jl
LnZjeHByb2ovV2ViQ29yZS52Y3hwcm9qLmZpbHRlcnMgYi9Tb3VyY2UvV2ViQ29yZS9XZWJDb3Jl
LnZjeHByb2ovV2ViQ29yZS52Y3hwcm9qLmZpbHRlcnMKaW5kZXggODM0ZWYxNjdmY2Y0YjYyNjQz
YWExMGNmNjQ3NWM0MGQwZmYzZTdlMC4uYjkxZjA4Zjk1MWM4ZWNjMWRkYTUwMzc1MTdkMTgzMWRk
YjUzNjQ2MiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvV2ViQ29yZS52Y3hwcm9qL1dlYkNv
cmUudmN4cHJvai5maWx0ZXJzCisrKyBiL1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUudmN4cHJvai9X
ZWJDb3JlLnZjeHByb2ouZmlsdGVycwpAQCAtMzIwMSw2ICszMjAxLDkgQEAKICAgICA8Q2xDb21w
aWxlIEluY2x1ZGU9Ii4uXGRvbVxNZXNzYWdlUG9ydENoYW5uZWwuY3BwIj4KICAgICAgIDxGaWx0
ZXI+ZG9tPC9GaWx0ZXI+CiAgICAgPC9DbENvbXBpbGU+CisgICAgPENsQ29tcGlsZSBJbmNsdWRl
PSIuLlxkb21cTWljcm9UYXNrLmNwcCI+CisgICAgICA8RmlsdGVyPmRvbTwvRmlsdGVyPgorICAg
IDwvQ2xDb21waWxlPgogICAgIDxDbENvbXBpbGUgSW5jbHVkZT0iLi5cZG9tXE1vdXNlRXZlbnQu
Y3BwIj4KICAgICAgIDxGaWx0ZXI+ZG9tPC9GaWx0ZXI+CiAgICAgPC9DbENvbXBpbGU+CkBAIC0x
MDI2OSw2ICsxMDI3Miw5IEBACiAgICAgPENsSW5jbHVkZSBJbmNsdWRlPSIuLlxkb21cTWVzc2Fn
ZVBvcnRDaGFubmVsLmgiPgogICAgICAgPEZpbHRlcj5kb208L0ZpbHRlcj4KICAgICA8L0NsSW5j
bHVkZT4KKyAgICA8Q2xJbmNsdWRlIEluY2x1ZGU9Ii4uXGRvbVxNaWNyb1Rhc2suaCI+CisgICAg
ICA8RmlsdGVyPmRvbTwvRmlsdGVyPgorICAgIDwvQ2xJbmNsdWRlPgogICAgIDxDbEluY2x1ZGUg
SW5jbHVkZT0iLi5cZG9tXE1vdXNlRXZlbnQuaCI+CiAgICAgICA8RmlsdGVyPmRvbTwvRmlsdGVy
PgogICAgIDwvQ2xJbmNsdWRlPgpAQCAtMTUzOTUsNCArMTU0MDEsNCBAQAogICAgICAgPEZpbHRl
cj5wbGF0Zm9ybVx3aW48L0ZpbHRlcj4KICAgICA8L01BU00+CiAgIDwvSXRlbUdyb3VwPgotPC9Q
cm9qZWN0PgpcIE5vIG5ld2xpbmUgYXQgZW5kIG9mIGZpbGUKKzwvUHJvamVjdD4KZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUudmN4cHJvai9XZWJDb3JlVGVzdFN1cHBvcnQudmN4
cHJvaiBiL1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUudmN4cHJvai9XZWJDb3JlVGVzdFN1cHBvcnQu
dmN4cHJvagppbmRleCAyZjgxNjM5YjFhM2ZmNTIwNmIyMWFmMGNlYjBmYzM5MzEzZWFkODgxLi40
MzNlYWYyNzg4MWNlY2M5YWNjZjY4MThhMmM3NjBkZTFhZjVjMTNjIDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViQ29yZS9XZWJDb3JlLnZjeHByb2ovV2ViQ29yZVRlc3RTdXBwb3J0LnZjeHByb2oKKysr
IGIvU291cmNlL1dlYkNvcmUvV2ViQ29yZS52Y3hwcm9qL1dlYkNvcmVUZXN0U3VwcG9ydC52Y3hw
cm9qCkBAIC0yNzUsNiArMjc1LDcgQEAKICAgICAgIDxGb3JjZWRJbmNsdWRlRmlsZXMgQ29uZGl0
aW9uPSInJChDb25maWd1cmF0aW9uKXwkKFBsYXRmb3JtKSc9PSdSZWxlYXNlX1dpbkNhaXJvfHg2
NCciPgogICAgICAgPC9Gb3JjZWRJbmNsdWRlRmlsZXM+CiAgICAgPC9DbENvbXBpbGU+CisgICAg
PENsQ29tcGlsZSBJbmNsdWRlPSIuLlx0ZXN0aW5nXE1pY3JvVGFza1Rlc3QuY3BwIiAvPgogICAg
IDxDbENvbXBpbGUgSW5jbHVkZT0iLi5cdGVzdGluZ1xNb2NrUGFnZU92ZXJsYXlDbGllbnQuY3Bw
IiAvPgogICAgIDxDbENvbXBpbGUgSW5jbHVkZT0iLi5cdGVzdGluZ1xJbnRlcm5hbFNldHRpbmdz
LmNwcCIgLz4KICAgICA8Q2xDb21waWxlIEluY2x1ZGU9Ii4uXHRlc3RpbmdcanNcV2ViQ29yZVRl
c3RTdXBwb3J0LmNwcCIgLz4KQEAgLTI5MSw2ICsyOTIsNyBAQAogICAgIDxDbEluY2x1ZGUgSW5j
bHVkZT0iLi5cdGVzdGluZ1xqc1xXZWJDb3JlVGVzdFN1cHBvcnRQcmVmaXguaCIgLz4KICAgICA8
Q2xJbmNsdWRlIEluY2x1ZGU9Ii4uXHRlc3RpbmdcTWFsbG9jU3RhdGlzdGljcy5oIiAvPgogICAg
IDxDbEluY2x1ZGUgSW5jbHVkZT0iLi5cdGVzdGluZ1xNZW1vcnlJbmZvLmgiIC8+CisgICAgPENs
SW5jbHVkZSBJbmNsdWRlPSIuLlx0ZXN0aW5nXE1pY3JvVGFza1Rlc3QuaCIgLz4KICAgICA8Q2xJ
bmNsdWRlIEluY2x1ZGU9Ii4uXHRlc3RpbmdcTW9ja0NETS5oIiAvPgogICAgIDxDbEluY2x1ZGUg
SW5jbHVkZT0iLi5cdGVzdGluZ1xNb2NrUGFnZU92ZXJsYXlDbGllbnQuaCIgLz4KICAgICA8Q2xJ
bmNsdWRlIEluY2x1ZGU9Ii4uXHRlc3RpbmdcVHlwZUNvbnZlcnNpb25zLmgiIC8+CmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViQ29yZS9XZWJDb3JlLnZjeHByb2ovV2ViQ29yZVRlc3RTdXBwb3J0LnZj
eHByb2ouZmlsdGVycyBiL1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUudmN4cHJvai9XZWJDb3JlVGVz
dFN1cHBvcnQudmN4cHJvai5maWx0ZXJzCmluZGV4IDY0ODg2YTgyODlkMDdmMjg0ZGUxNGQyMTU2
OWZhYzU4OTBjZWIwZWQuLjQyY2E3MjhlYzY4MGIyMzZiOTgzMDM0ZDNmMmVmYjg4ZGM4MDg0MDUg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUudmN4cHJvai9XZWJDb3JlVGVzdFN1
cHBvcnQudmN4cHJvai5maWx0ZXJzCisrKyBiL1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUudmN4cHJv
ai9XZWJDb3JlVGVzdFN1cHBvcnQudmN4cHJvai5maWx0ZXJzCkBAIC0zOSw2ICszOSw5IEBACiAg
ICAgPENsQ29tcGlsZSBJbmNsdWRlPSIuLlx0ZXN0aW5nXGpzXFdlYkNvcmVUZXN0U3VwcG9ydC5j
cHAiPgogICAgICAgPEZpbHRlcj50ZXN0aW5nPC9GaWx0ZXI+CiAgICAgPC9DbENvbXBpbGU+Cisg
ICAgPENsQ29tcGlsZSBJbmNsdWRlPSIuLlx0ZXN0aW5nXE1pY3JvVGFza1Rlc3QuY3BwIj4KKyAg
ICAgIDxGaWx0ZXI+dGVzdGluZzwvRmlsdGVyPgorICAgIDwvQ2xDb21waWxlPgogICAgIDxDbENv
bXBpbGUgSW5jbHVkZT0iLi5cdGVzdGluZ1xNb2NrQ0RNLmNwcCI+CiAgICAgICA8RmlsdGVyPnRl
c3Rpbmc8L0ZpbHRlcj4KICAgICA8L0NsQ29tcGlsZT4KQEAgLTkwLDYgKzkzLDkgQEAKICAgICAg
IDxGaWx0ZXI+dGVzdGluZzwvRmlsdGVyPgogICAgIDwvQ2xJbmNsdWRlPgogICAgIDxDbEluY2x1
ZGUgSW5jbHVkZT0iLi5cY29uZmlnLmgiIC8+CisgICAgPENsSW5jbHVkZSBJbmNsdWRlPSIuLlx0
ZXN0aW5nXE1pY3JvVGFza1Rlc3QuaCI+CisgICAgICA8RmlsdGVyPnRlc3Rpbmc8L0ZpbHRlcj4K
KyAgICA8L0NsSW5jbHVkZT4KICAgICA8Q2xJbmNsdWRlIEluY2x1ZGU9Ii4uXHRlc3RpbmdcTW9j
a0NETS5oIj4KICAgICAgIDxGaWx0ZXI+dGVzdGluZzwvRmlsdGVyPgogICAgIDwvQ2xJbmNsdWRl
PgpAQCAtMTAwLDQgKzEwNiw0IEBACiAgICAgICA8RmlsdGVyPnRlc3Rpbmc8L0ZpbHRlcj4KICAg
ICA8L0NsSW5jbHVkZT4KICAgPC9JdGVtR3JvdXA+Ci08L1Byb2plY3Q+ClwgTm8gbmV3bGluZSBh
dCBlbmQgb2YgZmlsZQorPC9Qcm9qZWN0PgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvV2Vi
Q29yZS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qIGIvU291cmNlL1dlYkNvcmUvV2ViQ29yZS54
Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qCmluZGV4IGMwZWQxNmJhMWY3MzUwMmUwZTI0OTNhYmE0
MTdhODExZTE5ZDdiM2YuLmVlOGRmMDgwOWQ4ODczODkyNTZhMDA4NDRiNGM2ZWFkYmVhOWQ3MTkg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUueGNvZGVwcm9qL3Byb2plY3QucGJ4
cHJvagorKysgYi9Tb3VyY2UvV2ViQ29yZS9XZWJDb3JlLnhjb2RlcHJvai9wcm9qZWN0LnBieHBy
b2oKQEAgLTIwODAsNiArMjA4MCw3IEBACiAJCTUzNkQ1QTIzMTkzRThFMEMwMENFNENBQiAvKiBQ
YXJzaW5nVXRpbGl0aWVzLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZp
bGVSZWYgPSA1MzZENUEyMjE5M0U4RTBDMDBDRTRDQUIgLyogUGFyc2luZ1V0aWxpdGllcy5oICov
OyB9OwogCQk1MzZENUEyNTE5M0Y0MEZDMDBDRTRDQUIgLyogU291cmNlU2l6ZUxpc3QuY3BwIGlu
IFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNTM2RDVBMjQxOTNG
NDBGQzAwQ0U0Q0FCIC8qIFNvdXJjZVNpemVMaXN0LmNwcCAqLzsgfTsKIAkJNTM2RDVBMjcxOTNG
NDEwQjAwQ0U0Q0FCIC8qIFNvdXJjZVNpemVMaXN0LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQ
QlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA1MzZENUEyNjE5M0Y0MTBCMDBDRTRDQUIgLyogU291cmNl
U2l6ZUxpc3QuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9
OworCQk1M0I4OTVBRjE5REM3RUQ5MDA5Q0FBOTMgLyogTWljcm9UYXNrLmggaW4gSGVhZGVycyAq
LyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA1M0I4OTVBRDE5REM3QzM3MDA5Q0FB
OTMgLyogTWljcm9UYXNrLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHVibGljLCAp
OyB9OyB9OwogCQk1M0M4Mjk4RDEzRDhEOTI3MDBERTJERUIgLyogUmVuZGVyRmxleGlibGVCb3gu
Y3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNTNDODI5
OEIxM0Q4RDkyNzAwREUyREVCIC8qIFJlbmRlckZsZXhpYmxlQm94LmNwcCAqLzsgfTsKIAkJNTND
ODI5OEUxM0Q4RDkyNzAwREUyREVCIC8qIFJlbmRlckZsZXhpYmxlQm94LmggaW4gSGVhZGVycyAq
LyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA1M0M4Mjk4QzEzRDhEOTI3MDBERTJE
RUIgLyogUmVuZGVyRmxleGlibGVCb3guaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQ
cml2YXRlLCApOyB9OyB9OwogCQk1M0UyOUU1RTE2N0E4QTE5MDA1ODZEM0QgLyogSW50ZXJuYWxT
ZXR0aW5nc0dlbmVyYXRlZC5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7
IGZpbGVSZWYgPSA1M0UyOUU1QzE2N0E4QTE5MDA1ODZEM0QgLyogSW50ZXJuYWxTZXR0aW5nc0dl
bmVyYXRlZC5jcHAgKi87IH07CkBAIC01NjIxLDYgKzU2MjIsOSBAQAogCQlDQTNCRjY3RTEwRDk5
QkFFMDBFNkNFNTMgLyogU2Nyb2xsQW5pbWF0b3IuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBC
WEJ1aWxkRmlsZTsgZmlsZVJlZiA9IENBM0JGNjdEMTBEOTlCQUUwMEU2Q0U1MyAvKiBTY3JvbGxB
bmltYXRvci5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07
CiAJCUNBRTlGOTBGMTQ2NDQxRjAwMEMyNDVCMCAvKiBDU1NBc3BlY3RSYXRpb1ZhbHVlLmNwcCBp
biBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IENBRTlGOTBEMTQ2
NDQxRjAwMEMyNDVCMCAvKiBDU1NBc3BlY3RSYXRpb1ZhbHVlLmNwcCAqLzsgfTsKIAkJQ0FFOUY5
MTAxNDY0NDFGMDAwQzI0NUIwIC8qIENTU0FzcGVjdFJhdGlvVmFsdWUuaCBpbiBIZWFkZXJzICov
ID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IENBRTlGOTBFMTQ2NDQxRjAwMEMyNDVC
MCAvKiBDU1NBc3BlY3RSYXRpb1ZhbHVlLmggKi87IH07CisJCUNCOENGMDE4MUE5MzU4RDQwMDBE
NTEwQiAvKiBNaWNyb1Rhc2suY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxl
OyBmaWxlUmVmID0gQ0I4Q0YwMTUxQTkzNEI0MzAwMEQ1MTBCIC8qIE1pY3JvVGFzay5jcHAgKi87
IH07CisJCUNCOENGMDFEMUE5NURFNDIwMDBENTEwQiAvKiBNaWNyb1Rhc2tUZXN0LmggaW4gSGVh
ZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBDQjhDRjAxQzFBOTVERTQy
MDAwRDUxMEIgLyogTWljcm9UYXNrVGVzdC5oICovOyB9OworCQlDQjhDRjAxRjFBOTVERTU5MDAw
RDUxMEIgLyogTWljcm9UYXNrVGVzdC5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWls
ZEZpbGU7IGZpbGVSZWYgPSBDQjhDRjAxRTFBOTVERTU5MDAwRDUxMEIgLyogTWljcm9UYXNrVGVz
dC5jcHAgKi87IH07CiAJCUNDQzJCNTE0MTVGNjEzMDYwMDQ4Q0RENiAvKiBEZXZpY2VDbGllbnQu
aCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IENDQzJCNTEw
MTVGNjEzMDYwMDQ4Q0RENiAvKiBEZXZpY2VDbGllbnQuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklC
VVRFUyA9IChQcml2YXRlLCApOyB9OyB9OwogCQlDQ0MyQjUxNTE1RjYxMzA2MDA0OENERDYgLyog
RGV2aWNlQ29udHJvbGxlci5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7
IGZpbGVSZWYgPSBDQ0MyQjUxMTE1RjYxMzA2MDA0OENERDYgLyogRGV2aWNlQ29udHJvbGxlci5j
cHAgKi87IH07CiAJCUNDQzJCNTE2MTVGNjEzMDYwMDQ4Q0RENiAvKiBEZXZpY2VDb250cm9sbGVy
LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBDQ0MyQjUx
MjE1RjYxMzA2MDA0OENERDYgLyogRGV2aWNlQ29udHJvbGxlci5oICovOyBzZXR0aW5ncyA9IHtB
VFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CkBAIC05MjI5LDYgKzkyMzMsNyBAQAogCQk1
MzZENUEyMjE5M0U4RTBDMDBDRTRDQUIgLyogUGFyc2luZ1V0aWxpdGllcy5oICovID0ge2lzYSA9
IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0g
c291cmNlY29kZS5jLmg7IG5hbWUgPSBQYXJzaW5nVXRpbGl0aWVzLmg7IHBhdGggPSBwYXJzZXIv
UGFyc2luZ1V0aWxpdGllcy5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQk1MzZENUEy
NDE5M0Y0MEZDMDBDRTRDQUIgLyogU291cmNlU2l6ZUxpc3QuY3BwICovID0ge2lzYSA9IFBCWEZp
bGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNl
Y29kZS5jcHAuY3BwOyBwYXRoID0gU291cmNlU2l6ZUxpc3QuY3BwOyBzb3VyY2VUcmVlID0gIjxn
cm91cD4iOyB9OwogCQk1MzZENUEyNjE5M0Y0MTBCMDBDRTRDQUIgLyogU291cmNlU2l6ZUxpc3Qu
aCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25v
d25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gU291cmNlU2l6ZUxpc3QuaDsgc291
cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNTNCODk1QUQxOURDN0MzNzAwOUNBQTkzIC8qIE1p
Y3JvVGFzay5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7
IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBNaWNyb1Rhc2suaDsg
c291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJNTNDODI5OEIxM0Q4RDkyNzAwREUyREVCIC8q
IFJlbmRlckZsZXhpYmxlQm94LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxl
RW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0
aCA9IFJlbmRlckZsZXhpYmxlQm94LmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJ
NTNDODI5OEMxM0Q4RDkyNzAwREUyREVCIC8qIFJlbmRlckZsZXhpYmxlQm94LmggKi8gPSB7aXNh
ID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUg
PSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFJlbmRlckZsZXhpYmxlQm94Lmg7IHNvdXJjZVRyZWUg
PSAiPGdyb3VwPiI7IH07CiAJCTUzRTI5RTVDMTY3QThBMTkwMDU4NkQzRCAvKiBJbnRlcm5hbFNl
dHRpbmdzR2VuZXJhdGVkLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5j
b2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9
IEludGVybmFsU2V0dGluZ3NHZW5lcmF0ZWQuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9
OwpAQCAtMTMwODcsNiArMTMwOTIsOSBAQAogCQlDQTNCRjY3RDEwRDk5QkFFMDBFNkNFNTMgLyog
U2Nyb2xsQW5pbWF0b3IuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rp
bmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gU2Nyb2xs
QW5pbWF0b3IuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJQ0FFOUY5MEQxNDY0NDFG
MDAwQzI0NUIwIC8qIENTU0FzcGVjdFJhdGlvVmFsdWUuY3BwICovID0ge2lzYSA9IFBCWEZpbGVS
ZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29k
ZS5jcHAuY3BwOyBwYXRoID0gQ1NTQXNwZWN0UmF0aW9WYWx1ZS5jcHA7IHNvdXJjZVRyZWUgPSAi
PGdyb3VwPiI7IH07CiAJCUNBRTlGOTBFMTQ2NDQxRjAwMEMyNDVCMCAvKiBDU1NBc3BlY3RSYXRp
b1ZhbHVlLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsg
bGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IENTU0FzcGVjdFJhdGlv
VmFsdWUuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQ0I4Q0YwMTUxQTkzNEI0MzAw
MEQ1MTBCIC8qIE1pY3JvVGFzay5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmls
ZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBh
dGggPSBNaWNyb1Rhc2suY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlDQjhDRjAx
QzFBOTVERTQyMDAwRDUxMEIgLyogTWljcm9UYXNrVGVzdC5oICovID0ge2lzYSA9IFBCWEZpbGVS
ZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29k
ZS5jLmg7IHBhdGggPSBNaWNyb1Rhc2tUZXN0Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07
CisJCUNCOENGMDFFMUE5NURFNTkwMDBENTEwQiAvKiBNaWNyb1Rhc2tUZXN0LmNwcCAqLyA9IHtp
c2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlw
ZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IE1pY3JvVGFza1Rlc3QuY3BwOyBzb3VyY2VU
cmVlID0gIjxncm91cD4iOyB9OwogCQlDQ0MyQjUxMDE1RjYxMzA2MDA0OENERDYgLyogRGV2aWNl
Q2xpZW50LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsg
bGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IERldmljZUNsaWVudC5o
OyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQlDQ0MyQjUxMTE1RjYxMzA2MDA0OENERDYg
LyogRGV2aWNlQ29udHJvbGxlci5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmls
ZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBh
dGggPSBEZXZpY2VDb250cm9sbGVyLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJ
Q0NDMkI1MTIxNUY2MTMwNjAwNDhDREQ2IC8qIERldmljZUNvbnRyb2xsZXIuaCAqLyA9IHtpc2Eg
PSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9
IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gRGV2aWNlQ29udHJvbGxlci5oOyBzb3VyY2VUcmVlID0g
Ijxncm91cD4iOyB9OwpAQCAtMTU2NzEsNiArMTU2NzksOCBAQAogCQkJCUE3QkY3RUREMTRDOTE3
NUEwMDE0NDg5RCAvKiBJbnRlcm5hbFNldHRpbmdzLmggKi8sCiAJCQkJQTdCRjdFREUxNEM5MTc1
QTAwMTQ0ODlEIC8qIEludGVybmFsU2V0dGluZ3MuaWRsICovLAogCQkJCUE3QkU3RUREMTRDOTE3
NUEwMDE0NDg5RCAvKiBNYWxsb2NTdGF0aXN0aWNzLmggKi8sCisJCQkJQ0I4Q0YwMUUxQTk1REU1
OTAwMEQ1MTBCIC8qIE1pY3JvVGFza1Rlc3QuY3BwICovLAorCQkJCUNCOENGMDFDMUE5NURFNDIw
MDBENTEwQiAvKiBNaWNyb1Rhc2tUZXN0LmggKi8sCiAJCQkJQTdCRTdFREUxNEM5MTc1QTAwMTQ0
ODlEIC8qIE1hbGxvY1N0YXRpc3RpY3MuaWRsICovLAogCQkJCUNENTM5M0NCMTc1RENDRTYwMEMw
NzEyMyAvKiBNZW1vcnlJbmZvLmggKi8sCiAJCQkJQ0Q1MzkzQ0MxNzVEQ0NFNjAwQzA3MTIzIC8q
IE1lbW9yeUluZm8uaWRsICovLApAQCAtMjI4NzksNiArMjI4ODksOCBAQAogCQkJCUUxQURFQ0JE
MEU3NkFDRjEwMDRBMUE1RSAvKiBNZXNzYWdlUG9ydC5oICovLAogCQkJCUUxQURFQ0M2MEU3NkFE
MUYwMDRBMUE1RSAvKiBNZXNzYWdlUG9ydC5pZGwgKi8sCiAJCQkJNDFCRjcwMEEwRkU4NkY0OTAw
NUU4REVDIC8qIE1lc3NhZ2VQb3J0Q2hhbm5lbC5oICovLAorCQkJCTUzQjg5NUFEMTlEQzdDMzcw
MDlDQUE5MyAvKiBNaWNyb1Rhc2suaCAqLywKKwkJCQlDQjhDRjAxNTFBOTM0QjQzMDAwRDUxMEIg
LyogTWljcm9UYXNrLmNwcCAqLywKIAkJCQk4NTAzMUIyRjBBNDRFRkM3MDBGOTkyRTAgLyogTW91
c2VFdmVudC5jcHAgKi8sCiAJCQkJODUwMzFCMzAwQTQ0RUZDNzAwRjk5MkUwIC8qIE1vdXNlRXZl
bnQuaCAqLywKIAkJCQkxNDFCOTRFNTA5RUM0MjIzMDAwRTk0MTMgLyogTW91c2VFdmVudC5pZGwg
Ki8sCkBAIC0yMzQ0Myw2ICsyMzQ1NSw3IEBACiAJCQkJNTNFRDNGREYxNjdBODhFNzAwNjc2MkU2
IC8qIEpTSW50ZXJuYWxTZXR0aW5nc0dlbmVyYXRlZC5oIGluIEhlYWRlcnMgKi8sCiAJCQkJQTc0
MEI1OTUxNEM5MzVBQjAwQTc3RkE0IC8qIEpTTWFsbG9jU3RhdGlzdGljcy5oIGluIEhlYWRlcnMg
Ki8sCiAJCQkJQ0Q1MzkzRDQxNzVFMDE4NjAwQzA3MTIzIC8qIEpTTWVtb3J5SW5mby5oIGluIEhl
YWRlcnMgKi8sCisJCQkJQ0I4Q0YwMUQxQTk1REU0MjAwMEQ1MTBCIC8qIE1pY3JvVGFza1Rlc3Qu
aCBpbiBIZWFkZXJzICovLAogCQkJCUVCRjUxMjFEMTY5NjQ5NkMwMDU2QkQyNSAvKiBKU1R5cGVD
b252ZXJzaW9ucy5oIGluIEhlYWRlcnMgKi8sCiAJCQkJQ0RDMjZCNDExNjBBOENDRTAwMjY3NTdC
IC8qIE1vY2tDRE0uaCBpbiBIZWFkZXJzICovLAogCQkJCTJEOTdGMDQ4MTlERDQxNDAwMDFFRTlD
MyAvKiBNb2NrUGFnZU92ZXJsYXlDbGllbnQuaCBpbiBIZWFkZXJzICovLApAQCAtMjU4NjYsNiAr
MjU4NzksNyBAQAogCQkJCTUzQzgyOThFMTNEOEQ5MjcwMERFMkRFQiAvKiBSZW5kZXJGbGV4aWJs
ZUJveC5oIGluIEhlYWRlcnMgKi8sCiAJCQkJNTA4Q0NBNEYxM0NGMTA2QjAwMzE1MUYzIC8qIFJl
bmRlckZsb3dUaHJlYWQuaCBpbiBIZWFkZXJzICovLAogCQkJCUE4NzFERUQzMEExNTMwQzcwMEIx
MkE2OCAvKiBSZW5kZXJGcmFtZS5oIGluIEhlYWRlcnMgKi8sCisJCQkJNTNCODk1QUYxOURDN0VE
OTAwOUNBQTkzIC8qIE1pY3JvVGFzay5oIGluIEhlYWRlcnMgKi8sCiAJCQkJMEZEMzA4MEYxMTdD
RjdFNzAwQTc5MUY3IC8qIFJlbmRlckZyYW1lQmFzZS5oIGluIEhlYWRlcnMgKi8sCiAJCQkJQTg3
MURFRDEwQTE1MzBDNzAwQjEyQTY4IC8qIFJlbmRlckZyYW1lU2V0LmggaW4gSGVhZGVycyAqLywK
IAkJCQlDREVBN0M4NDEyNzYyMzA0MDBCODQ2REQgLyogUmVuZGVyRnVsbFNjcmVlbi5oIGluIEhl
YWRlcnMgKi8sCkBAIC0yNzE5Myw2ICsyNzIwNyw3IEBACiAJCQkJNTNFMjlFNUUxNjdBOEExOTAw
NTg2RDNEIC8qIEludGVybmFsU2V0dGluZ3NHZW5lcmF0ZWQuY3BwIGluIFNvdXJjZXMgKi8sCiAJ
CQkJNDE3REE3MUQxMzczNURGQTAwN0M1N0ZCIC8qIEpTSW50ZXJuYWxzLmNwcCBpbiBTb3VyY2Vz
ICovLAogCQkJCUE3NDBCNUE3MTRDOTM1QUYwMEE3N0ZBNCAvKiBKU0ludGVybmFsU2V0dGluZ3Mu
Y3BwIGluIFNvdXJjZXMgKi8sCisJCQkJQ0I4Q0YwMUYxQTk1REU1OTAwMEQ1MTBCIC8qIE1pY3Jv
VGFza1Rlc3QuY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJNTNFRDNGREUxNjdBODhFNzAwNjc2MkU2
IC8qIEpTSW50ZXJuYWxTZXR0aW5nc0dlbmVyYXRlZC5jcHAgaW4gU291cmNlcyAqLywKIAkJCQlB
NzQwQjU5NzE0QzkzNUFGMDBBNzdGQTQgLyogSlNNYWxsb2NTdGF0aXN0aWNzLmNwcCBpbiBTb3Vy
Y2VzICovLAogCQkJCUNENTM5M0QzMTc1RTAxODYwMEMwNzEyMyAvKiBKU01lbW9yeUluZm8uY3Bw
IGluIFNvdXJjZXMgKi8sCkBAIC0yOTgyOCw2ICsyOTg0Myw3IEBACiAJCQkJQjIyMjdBOTAwRDAw
QkYyMjAwNzFCNzgyIC8qIFNWR1BvbHlnb25FbGVtZW50LmNwcCBpbiBTb3VyY2VzICovLAogCQkJ
CUIyMjI3QTkzMEQwMEJGMjIwMDcxQjc4MiAvKiBTVkdQb2x5bGluZUVsZW1lbnQuY3BwIGluIFNv
dXJjZXMgKi8sCiAJCQkJQjIyMjdBOTYwRDAwQkYyMjAwNzFCNzgyIC8qIFNWR1ByZXNlcnZlQXNw
ZWN0UmF0aW8uY3BwIGluIFNvdXJjZXMgKi8sCisJCQkJQ0I4Q0YwMTgxQTkzNThENDAwMEQ1MTBC
IC8qIE1pY3JvVGFzay5jcHAgaW4gU291cmNlcyAqLywKIAkJCQlCNTQzQjg1NzE3RUI3NThGMDAz
QkU5M0EgLyogU1ZHUHJvcGVydHlJbmZvLmNwcCBpbiBTb3VyY2VzICovLAogCQkJCUIyMjI3QTk5
MEQwMEJGMjIwMDcxQjc4MiAvKiBTVkdSYWRpYWxHcmFkaWVudEVsZW1lbnQuY3BwIGluIFNvdXJj
ZXMgKi8sCiAJCQkJQjIyMjdBOUQwRDAwQkYyMjAwNzFCNzgyIC8qIFNWR1JlY3RFbGVtZW50LmNw
cCBpbiBTb3VyY2VzICovLApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvZG9tL0RvY3VtZW50
LmggYi9Tb3VyY2UvV2ViQ29yZS9kb20vRG9jdW1lbnQuaAppbmRleCAxNTQ0NGE2ZTE5ZWIyN2Mx
YTZhMjM3ZGFiOTgyMmNlN2Q3YzY4OWIxLi4zZjExMzE5NDlkMjVmZWVmNjhhNWVkNjA2MjVlMTBh
MWM1NTZkZmY2IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9kb20vRG9jdW1lbnQuaAorKysg
Yi9Tb3VyY2UvV2ViQ29yZS9kb20vRG9jdW1lbnQuaApAQCAtMTI2Miw3ICsxMjYyLDcgQEAgcHVi
bGljOgogICAgIHZvaWQgYWRkRGlzYWJsZWRGaWVsZHNldEVsZW1lbnQoKSB7IG1fZGlzYWJsZWRG
aWVsZHNldEVsZW1lbnRzQ291bnQrKzsgfQogICAgIHZvaWQgcmVtb3ZlRGlzYWJsZWRGaWVsZHNl
dEVsZW1lbnQoKSB7IEFTU0VSVChtX2Rpc2FibGVkRmllbGRzZXRFbGVtZW50c0NvdW50KTsgbV9k
aXNhYmxlZEZpZWxkc2V0RWxlbWVudHNDb3VudC0tOyB9CiAKLSAgICB2aXJ0dWFsIHZvaWQgYWRk
Q29uc29sZU1lc3NhZ2UoTWVzc2FnZVNvdXJjZSwgTWVzc2FnZUxldmVsLCBjb25zdCBTdHJpbmcm
IG1lc3NhZ2UsIHVuc2lnbmVkIGxvbmcgcmVxdWVzdElkZW50aWZpZXIgPSAwKSBvdmVycmlkZSBm
aW5hbDsKKyAgICBXRUJDT1JFX0VYUE9SVCB2aXJ0dWFsIHZvaWQgYWRkQ29uc29sZU1lc3NhZ2Uo
TWVzc2FnZVNvdXJjZSwgTWVzc2FnZUxldmVsLCBjb25zdCBTdHJpbmcmIG1lc3NhZ2UsIHVuc2ln
bmVkIGxvbmcgcmVxdWVzdElkZW50aWZpZXIgPSAwKSBvdmVycmlkZSBmaW5hbDsKIAogICAgIFdF
QkNPUkVfRVhQT1JUIHZpcnR1YWwgU2VjdXJpdHlPcmlnaW4qIHRvcE9yaWdpbigpIGNvbnN0IG92
ZXJyaWRlIGZpbmFsOwogCkBAIC0xMjg4LDYgKzEyODgsNyBAQCBwdWJsaWM6CiAgICAgYm9vbCBp
c1BsYXlpbmdBdWRpbygpIGNvbnN0IHsgcmV0dXJuIG1faXNQbGF5aW5nQXVkaW87IH0KICAgICBX
RUJDT1JFX0VYUE9SVCB2b2lkIHVwZGF0ZUlzUGxheWluZ0F1ZGlvKCk7CiAgICAgdm9pZCBwYWdl
TXV0ZWRTdGF0ZURpZENoYW5nZSgpOworICAgIFdlYWtQdHI8RG9jdW1lbnQ+IGNyZWF0ZVdlYWtQ
dHIoKSB7IHJldHVybiBtX3dlYWtGYWN0b3J5LmNyZWF0ZVdlYWtQdHIoKTsgfQogCiBwcm90ZWN0
ZWQ6CiAgICAgZW51bSBDb25zdHJ1Y3Rpb25GbGFncyB7IFN5bnRoZXNpemVkID0gMSwgTm9uUmVu
ZGVyZWRQbGFjZWhvbGRlciA9IDEgPDwgMSB9OwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUv
ZG9tL01pY3JvVGFzay5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9kb20vTWljcm9UYXNrLmNwcApuZXcg
ZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwLi5jNzg2ZTM1YTZmOTdmZmE0N2Y5NjAyYjczYmMzMjU2YTc2YmM2ZTJiCi0tLSAvZGV2
L251bGwKKysrIGIvU291cmNlL1dlYkNvcmUvZG9tL01pY3JvVGFzay5jcHAKQEAgLTAsMCArMSw1
MiBAQAorLyoKKyAqIENvcHlyaWdodCAoQykgMjAxNCBZb2F2IFdlaXNzICh5b2F2QHlvYXYud3Mp
CisgKiBDb3B5cmlnaHQgKEMpIDIwMTUgQWthbWFpIFRlY2hub2xvZ2llcyBJbmMuIEFsbCByaWdo
dHMgcmVzZXJ2ZWQuCisgKgorICogVGhpcyBsaWJyYXJ5IGlzIGZyZWUgc29mdHdhcmU7IHlvdSBj
YW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vcgorICogbW9kaWZ5IGl0IHVuZGVyIHRoZSB0ZXJtcyBv
ZiB0aGUgR05VIExpYnJhcnkgR2VuZXJhbCBQdWJsaWMKKyAqIExpY2Vuc2UgYXMgcHVibGlzaGVk
IGJ5IHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb247IGVpdGhlcgorICogdmVyc2lvbiAyIG9m
IHRoZSBMaWNlbnNlLCBvciAoYXQgeW91ciBvcHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLgorICoK
KyAqIFRoaXMgbGlicmFyeSBpcyBkaXN0cmlidXRlZCBpbiB0aGUgaG9wZSB0aGF0IGl0IHdpbGwg
YmUgdXNlZnVsLAorICogYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhl
IGltcGxpZWQgd2FycmFudHkgb2YKKyAqIE1FUkNIQU5UQUJJTElUWSBvciBGSVRORVNTIEZPUiBB
IFBBUlRJQ1VMQVIgUFVSUE9TRS4gIFNlZSB0aGUgR05VCisgKiBMaWJyYXJ5IEdlbmVyYWwgUHVi
bGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KKyAqCisgKiBZb3Ugc2hvdWxkIGhhdmUgcmVj
ZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgTGlicmFyeSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlCisg
KiBhbG9uZyB3aXRoIHRoaXMgbGlicmFyeTsgc2VlIHRoZSBmaWxlIENPUFlJTkcuTElCLiAgSWYg
bm90LCB3cml0ZSB0bworICogdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbiwgSW5jLiwgNTEg
RnJhbmtsaW4gU3RyZWV0LCBGaWZ0aCBGbG9vciwKKyAqIEJvc3RvbiwgTUEgMDIxMTAtMTMwMSwg
VVNBLgorICoKKyAqLworCisjaW5jbHVkZSAiY29uZmlnLmgiCisjaW5jbHVkZSAiTWljcm9UYXNr
LmgiCisKKyNpbmNsdWRlICJEb2N1bWVudC5oIgorI2luY2x1ZGUgPHd0Zi90ZXh0L1N0cmluZ0J1
aWxkZXIuaD4KKworbmFtZXNwYWNlIFdlYkNvcmUgeworCitNaWNyb1Rhc2tRdWV1ZSYgTWljcm9U
YXNrUXVldWU6OnNpbmdsZXRvbigpCit7CisgICAgQVNTRVJUKGlzTWFpblRocmVhZCgpKTsKKyAg
ICBzdGF0aWMgTmV2ZXJEZXN0cm95ZWQ8TWljcm9UYXNrUXVldWU+IHF1ZXVlOworICAgIHJldHVy
biBxdWV1ZTsKK30KKwordm9pZCBNaWNyb1Rhc2tRdWV1ZTo6cXVldWVNaWNyb1Rhc2soc3RkOjp1
bmlxdWVfcHRyPE1pY3JvVGFzaz4gdGFzaykKK3sKKyAgICBBU1NFUlQoaXNNYWluVGhyZWFkKCkp
OworICAgIG1fbWljcm9UYXNrUXVldWUuYXBwZW5kKFdURjo6bW92ZSh0YXNrKSk7Cit9CisKK3Zv
aWQgTWljcm9UYXNrUXVldWU6OnJ1bk1pY3JvVGFza3MoKQoreworICAgIEFTU0VSVChpc01haW5U
aHJlYWQoKSk7CisgICAgZm9yIChhdXRvJiB0YXNrIDogbV9taWNyb1Rhc2tRdWV1ZSkKKyAgICAg
ICAgdGFzay0+cnVuKCk7CisgICAgbV9taWNyb1Rhc2tRdWV1ZS5jbGVhcigpOworfQorCit9IC8v
IG5hbWVzcGFjZSBXZWJDb3JlCisKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2RvbS9NaWNy
b1Rhc2suaCBiL1NvdXJjZS9XZWJDb3JlL2RvbS9NaWNyb1Rhc2suaApuZXcgZmlsZSBtb2RlIDEw
MDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5mYmQ2
NmE1YzU5NGM3OTUxMDk2ZmE1MGNkODg5ZTYwMzNjMmZmM2MyCi0tLSAvZGV2L251bGwKKysrIGIv
U291cmNlL1dlYkNvcmUvZG9tL01pY3JvVGFzay5oCkBAIC0wLDAgKzEsNTUgQEAKKy8qCisgKiBD
b3B5cmlnaHQgKEMpIDIwMTQgWW9hdiBXZWlzcyAoeW9hdkB5b2F2LndzKQorICogQ29weXJpZ2h0
IChDKSAyMDE1IEFrYW1haSBUZWNobm9sb2dpZXMgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgor
ICoKKyAqIFRoaXMgbGlicmFyeSBpcyBmcmVlIHNvZnR3YXJlOyB5b3UgY2FuIHJlZGlzdHJpYnV0
ZSBpdCBhbmQvb3IKKyAqIG1vZGlmeSBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBMaWJy
YXJ5IEdlbmVyYWwgUHVibGljCisgKiBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieSB0aGUgRnJlZSBT
b2Z0d2FyZSBGb3VuZGF0aW9uOyBlaXRoZXIKKyAqIHZlcnNpb24gMiBvZiB0aGUgTGljZW5zZSwg
b3IgKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KKyAqCisgKiBUaGlzIGxpYnJh
cnkgaXMgZGlzdHJpYnV0ZWQgaW4gdGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCwKKyAq
IGJ1dCBXSVRIT1VUIEFOWSBXQVJSQU5UWTsgd2l0aG91dCBldmVuIHRoZSBpbXBsaWVkIHdhcnJh
bnR5IG9mCisgKiBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBV
UlBPU0UuICBTZWUgdGhlIEdOVQorICogTGlicmFyeSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGZv
ciBtb3JlIGRldGFpbHMuCisgKgorICogWW91IHNob3VsZCBoYXZlIHJlY2VpdmVkIGEgY29weSBv
ZiB0aGUgR05VIExpYnJhcnkgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQorICogYWxvbmcgd2l0aCB0
aGlzIGxpYnJhcnk7IHNlZSB0aGUgZmlsZSBDT1BZSU5HLkxJQi4gIElmIG5vdCwgd3JpdGUgdG8K
KyAqIHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb24sIEluYy4sIDUxIEZyYW5rbGluIFN0cmVl
dCwgRmlmdGggRmxvb3IsCisgKiBCb3N0b24sIE1BIDAyMTEwLTEzMDEsIFVTQS4KKyAqCisgKi8K
KworI2lmbmRlZiBNaWNyb1Rhc2tfaAorI2RlZmluZSBNaWNyb1Rhc2tfaAorCisjaW5jbHVkZSA8
d3RmL05ldmVyRGVzdHJveWVkLmg+CisjaW5jbHVkZSA8d3RmL1ZlY3Rvci5oPgorCisKK25hbWVz
cGFjZSBXZWJDb3JlIHsKKworY2xhc3MgTWljcm9UYXNrIHsKK3B1YmxpYzoKKyAgICB2aXJ0dWFs
IHZvaWQgcnVuKCkgPSAwOworICAgIHZpcnR1YWwgfk1pY3JvVGFzaygpIHsgfQorfTsKKworY2xh
c3MgTWljcm9UYXNrUXVldWUgeworICAgIGZyaWVuZCBOZXZlckRlc3Ryb3llZDxNaWNyb1Rhc2tR
dWV1ZT47CisKK3B1YmxpYzoKKyAgICBXRUJDT1JFX0VYUE9SVCBzdGF0aWMgTWljcm9UYXNrUXVl
dWUmIHNpbmdsZXRvbigpOworICAgIH5NaWNyb1Rhc2tRdWV1ZSgpIHsgfQorCisgICAgV0VCQ09S
RV9FWFBPUlQgdm9pZCBxdWV1ZU1pY3JvVGFzayhzdGQ6OnVuaXF1ZV9wdHI8TWljcm9UYXNrPik7
CisKKyAgICB2b2lkIHJ1bk1pY3JvVGFza3MoKTsKKworcHJpdmF0ZToKKyAgICBNaWNyb1Rhc2tR
dWV1ZSgpIHsgfQorICAgIFZlY3RvcjxzdGQ6OnVuaXF1ZV9wdHI8TWljcm9UYXNrPj4gbV9taWNy
b1Rhc2tRdWV1ZTsKK307CisKK30gLy8gbmFtZXNwYWNlIFdlYkNvcmUKKworI2VuZGlmIC8vIE1p
Y3JvVGFza19oCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9kb20vU2NyaXB0UnVubmVyLmNw
cCBiL1NvdXJjZS9XZWJDb3JlL2RvbS9TY3JpcHRSdW5uZXIuY3BwCmluZGV4IGVkOTRkYTNlNzNk
YjEzMDE3OGI5OWVhNGI3ZjkyYjVhYzE5ODA5ZDYuLmM0NmI3OGUwZmZlM2M4MTgzNjA0N2VjYTNh
MDdhYjljZWQxM2FmMDQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2RvbS9TY3JpcHRSdW5u
ZXIuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2RvbS9TY3JpcHRSdW5uZXIuY3BwCkBAIC0yOCw2
ICsyOCw3IEBACiAKICNpbmNsdWRlICJDYWNoZWRTY3JpcHQuaCIKICNpbmNsdWRlICJFbGVtZW50
LmgiCisjaW5jbHVkZSAiTWljcm9UYXNrLmgiCiAjaW5jbHVkZSAiUGVuZGluZ1NjcmlwdC5oIgog
I2luY2x1ZGUgIlNjcmlwdEVsZW1lbnQuaCIKIApAQCAtMTE2LDYgKzExNyw3IEBAIHZvaWQgU2Ny
aXB0UnVubmVyOjp0aW1lckZpcmVkKCkKICAgICAgICAgdG9TY3JpcHRFbGVtZW50SWZQb3NzaWJs
ZShlbGVtZW50LmdldCgpKS0+ZXhlY3V0ZShjYWNoZWRTY3JpcHQpOwogICAgICAgICBtX2RvY3Vt
ZW50LmRlY3JlbWVudExvYWRFdmVudERlbGF5Q291bnQoKTsKICAgICB9CisgICAgTWljcm9UYXNr
UXVldWU6OnNpbmdsZXRvbigpLnJ1bk1pY3JvVGFza3MoKTsKIH0KIAogfQpkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYkNvcmUvaHRtbC9wYXJzZXIvSFRNTFNjcmlwdFJ1bm5lci5jcHAgYi9Tb3VyY2Uv
V2ViQ29yZS9odG1sL3BhcnNlci9IVE1MU2NyaXB0UnVubmVyLmNwcAppbmRleCA0MWU3MjVmNjBk
ZTg2ODFmMWNmOGRiNGI1Yzk4YWRiNjI2MjJmMjFiLi4yN2RkNjczODJhNjAwZmMwMzM4NTJlYzkw
MjkyMDE2OTJkMTQzZGVkIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9odG1sL3BhcnNlci9I
VE1MU2NyaXB0UnVubmVyLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL3BhcnNlci9IVE1M
U2NyaXB0UnVubmVyLmNwcApAQCAtMzYsNiArMzYsNyBAQAogI2luY2x1ZGUgIkhUTUxOYW1lcy5o
IgogI2luY2x1ZGUgIkhUTUxTY3JpcHRSdW5uZXJIb3N0LmgiCiAjaW5jbHVkZSAiSWdub3JlRGVz
dHJ1Y3RpdmVXcml0ZUNvdW50SW5jcmVtZW50ZXIuaCIKKyNpbmNsdWRlICJNaWNyb1Rhc2suaCIK
ICNpbmNsdWRlICJNdXRhdGlvbk9ic2VydmVyLmgiCiAjaW5jbHVkZSAiTmVzdGluZ0xldmVsSW5j
cmVtZW50ZXIuaCIKICNpbmNsdWRlICJOb3RJbXBsZW1lbnRlZC5oIgpAQCAtMTI5LDggKzEzMCwx
MCBAQCB2b2lkIEhUTUxTY3JpcHRSdW5uZXI6OmV4ZWN1dGVQZW5kaW5nU2NyaXB0QW5kRGlzcGF0
Y2hFdmVudChQZW5kaW5nU2NyaXB0JiBwZW5kaQogICAgIGlmIChwZW5kaW5nU2NyaXB0LmNhY2hl
ZFNjcmlwdCgpICYmIHBlbmRpbmdTY3JpcHQud2F0Y2hpbmdGb3JMb2FkKCkpCiAgICAgICAgIHN0
b3BXYXRjaGluZ0ZvckxvYWQocGVuZGluZ1NjcmlwdCk7CiAKLSAgICBpZiAoIWlzRXhlY3V0aW5n
U2NyaXB0KCkpCisgICAgaWYgKCFpc0V4ZWN1dGluZ1NjcmlwdCgpKSB7CiAgICAgICAgIE11dGF0
aW9uT2JzZXJ2ZXI6OmRlbGl2ZXJBbGxNdXRhdGlvbnMoKTsKKyAgICAgICAgTWljcm9UYXNrUXVl
dWU6OnNpbmdsZXRvbigpLnJ1bk1pY3JvVGFza3MoKTsKKyAgICB9CiAKICAgICAvLyBDbGVhciB0
aGUgcGVuZGluZyBzY3JpcHQgYmVmb3JlIHBvc3NpYmxlIHJlbnRyYW5jeSBmcm9tIGV4ZWN1dGVT
Y3JpcHQoKQogICAgIFJlZlB0cjxFbGVtZW50PiBlbGVtZW50ID0gcGVuZGluZ1NjcmlwdC5yZWxl
YXNlRWxlbWVudEFuZENsZWFyKCk7CkBAIC0yMzEsNiArMjM0LDggQEAgYm9vbCBIVE1MU2NyaXB0
UnVubmVyOjpleGVjdXRlU2NyaXB0c1dhaXRpbmdGb3JQYXJzaW5nKCkKICAgICAgICAgaWYgKCFt
X2RvY3VtZW50KQogICAgICAgICAgICAgcmV0dXJuIGZhbHNlOwogICAgIH0KKyAgICBpZiAoIWlz
RXhlY3V0aW5nU2NyaXB0KCkpCisgICAgICAgIE1pY3JvVGFza1F1ZXVlOjpzaW5nbGV0b24oKS5y
dW5NaWNyb1Rhc2tzKCk7CiAgICAgcmV0dXJuIHRydWU7CiB9CiAKQEAgLTI5Myw4ICsyOTgsMTAg
QEAgdm9pZCBIVE1MU2NyaXB0UnVubmVyOjpydW5TY3JpcHQoRWxlbWVudCogc2NyaXB0LCBjb25z
dCBUZXh0UG9zaXRpb24mIHNjcmlwdFN0YXIKICAgICAgICAgLy8gZXZlcnkgc2NyaXB0IGVsZW1l
bnQsIGV2ZW4gaWYgaXQncyBub3QgcmVhZHkgdG8gZXhlY3V0ZSB5ZXQuIFRoZXJlJ3MKICAgICAg
ICAgLy8gdW5mb3J0dWFudGVseSBubyBvYnZpb3VzIHdheSB0byB0ZWxsIGlmIHByZXBhcmVTY3Jp
cHQgaXMgZ29pbmcgdG8KICAgICAgICAgLy8gZXhlY3V0ZSB0aGUgc2NyaXB0IGZyb20gb3V0IGhl
cmUuCi0gICAgICAgIGlmICghaXNFeGVjdXRpbmdTY3JpcHQoKSkKKyAgICAgICAgaWYgKCFpc0V4
ZWN1dGluZ1NjcmlwdCgpKSB7CiAgICAgICAgICAgICBNdXRhdGlvbk9ic2VydmVyOjpkZWxpdmVy
QWxsTXV0YXRpb25zKCk7CisgICAgICAgICAgICBNaWNyb1Rhc2tRdWV1ZTo6c2luZ2xldG9uKCku
cnVuTWljcm9UYXNrcygpOworICAgICAgICB9CiAKICAgICAgICAgSW5zZXJ0aW9uUG9pbnRSZWNv
cmQgaW5zZXJ0aW9uUG9pbnRSZWNvcmQobV9ob3N0LmlucHV0U3RyZWFtKCkpOwogICAgICAgICBO
ZXN0aW5nTGV2ZWxJbmNyZW1lbnRlciBuZXN0aW5nTGV2ZWxJbmNyZW1lbnRlcihtX3NjcmlwdE5l
c3RpbmdMZXZlbCk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS90ZXN0aW5nL0ludGVybmFs
cy5jcHAgYi9Tb3VyY2UvV2ViQ29yZS90ZXN0aW5nL0ludGVybmFscy5jcHAKaW5kZXggZGE2ZTcw
OTBjNjI0ZjE1NTRiMzg3ZjIwMWM4ZWE1NzVmNzRhODdlMC4uNTcxNmY4NGQxM2RlMWQ0NjU4NDQ3
OGY0ODgwZWNjYzZhNTY4Y2FiZiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvdGVzdGluZy9J
bnRlcm5hbHMuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3Rlc3RpbmcvSW50ZXJuYWxzLmNwcApA
QCAtNzksNiArNzksOCBAQAogI2luY2x1ZGUgIk1lZGlhU2Vzc2lvbk1hbmFnZXIuaCIKICNpbmNs
dWRlICJNZW1vcnlDYWNoZS5oIgogI2luY2x1ZGUgIk1lbW9yeUluZm8uaCIKKyNpbmNsdWRlICJN
aWNyb1Rhc2suaCIKKyNpbmNsdWRlICJNaWNyb1Rhc2tUZXN0LmgiCiAjaW5jbHVkZSAiTW9ja1Bh
Z2VPdmVybGF5Q2xpZW50LmgiCiAjaW5jbHVkZSAiUGFnZS5oIgogI2luY2x1ZGUgIlBhZ2VDYWNo
ZS5oIgpAQCAtMjUzMiw0ICsyNTM0LDEwIEBAIFJlZlB0cjxGaWxlPiBJbnRlcm5hbHM6OmNyZWF0
ZUZpbGUoY29uc3QgU3RyaW5nJiBwYXRoKQogICAgIHJldHVybiBGaWxlOjpjcmVhdGUodXJsLmZp
bGVTeXN0ZW1QYXRoKCkpOwogfQogCit2b2lkIEludGVybmFsczo6cXVldWVNaWNyb1Rhc2soaW50
IHRlc3ROdW1iZXIpCit7CisgICAgaWYgKGNvbnRleHREb2N1bWVudCgpKQorICAgICAgICBNaWNy
b1Rhc2tRdWV1ZTo6c2luZ2xldG9uKCkucXVldWVNaWNyb1Rhc2soTWljcm9UYXNrVGVzdDo6Y3Jl
YXRlKGNvbnRleHREb2N1bWVudCgpLT5jcmVhdGVXZWFrUHRyKCksIHRlc3ROdW1iZXIpKTsKK30K
KwogfQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvdGVzdGluZy9JbnRlcm5hbHMuaCBiL1Nv
dXJjZS9XZWJDb3JlL3Rlc3RpbmcvSW50ZXJuYWxzLmgKaW5kZXggMWI5YjhkNzhjNjkyZTgzMmRi
NmI2ZmQ5ZDk2ZjRlY2RmODgwYWE5Mi4uYzg3OGY1OTA2Y2NlYjU4MDkwMjMwYmQ2NDEyMGE2ODA2
YzBjY2U5ZCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvdGVzdGluZy9JbnRlcm5hbHMuaAor
KysgYi9Tb3VyY2UvV2ViQ29yZS90ZXN0aW5nL0ludGVybmFscy5oCkBAIC0zNjYsNiArMzY2LDcg
QEAgcHVibGljOgogICAgIGJvb2wgaXNQYWdlUGxheWluZ0F1ZGlvKCk7CiAKICAgICBSZWZQdHI8
RmlsZT4gY3JlYXRlRmlsZShjb25zdCBTdHJpbmcmKTsKKyAgICB2b2lkIHF1ZXVlTWljcm9UYXNr
KGludCk7CiAKIHByaXZhdGU6CiAgICAgZXhwbGljaXQgSW50ZXJuYWxzKERvY3VtZW50Kik7CmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS90ZXN0aW5nL0ludGVybmFscy5pZGwgYi9Tb3VyY2Uv
V2ViQ29yZS90ZXN0aW5nL0ludGVybmFscy5pZGwKaW5kZXggNDk3NzI1Y2QyYjkwY2U5MWY1YjI0
ZThhN2Y0MWZkNDU1NDBhYzY2Yy4uNDA2YTkyYmRmY2MwMmMxMTNmMDExZDczNTY5ZTg3ZDU2ODE5
NzUwMyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvdGVzdGluZy9JbnRlcm5hbHMuaWRsCisr
KyBiL1NvdXJjZS9XZWJDb3JlL3Rlc3RpbmcvSW50ZXJuYWxzLmlkbApAQCAtMzIyLDQgKzMyMiw1
IEBAIGVudW0gUGFnZU92ZXJsYXlUeXBlIHsKICAgICBib29sZWFuIGlzUGFnZVBsYXlpbmdBdWRp
bygpOwogICAgIAogICAgIEZpbGUgY3JlYXRlRmlsZShET01TdHJpbmcgdXJsKTsKKyAgICB2b2lk
IHF1ZXVlTWljcm9UYXNrKGxvbmcgdGVzdE51bWJlcik7CiB9OwpkaWZmIC0tZ2l0IGEvU291cmNl
L1dlYkNvcmUvdGVzdGluZy9NaWNyb1Rhc2tUZXN0LmNwcCBiL1NvdXJjZS9XZWJDb3JlL3Rlc3Rp
bmcvTWljcm9UYXNrVGVzdC5jcHAKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uNDEzZjJmZGE4M2JjZjdmNGNjYWM2NmRj
MDljYzVlNmYzZDg0YjFhYgotLS0gL2Rldi9udWxsCisrKyBiL1NvdXJjZS9XZWJDb3JlL3Rlc3Rp
bmcvTWljcm9UYXNrVGVzdC5jcHAKQEAgLTAsMCArMSw0MyBAQAorLyoKKyAqIENvcHlyaWdodCAo
QykgMjAxNSBBa2FtYWkgVGVjaG5vbG9naWVzIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAq
CisgKiBUaGlzIGxpYnJhcnkgaXMgZnJlZSBzb2Z0d2FyZTsgeW91IGNhbiByZWRpc3RyaWJ1dGUg
aXQgYW5kL29yCisgKiBtb2RpZnkgaXQgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUgTGlicmFy
eSBHZW5lcmFsIFB1YmxpYworICogTGljZW5zZSBhcyBwdWJsaXNoZWQgYnkgdGhlIEZyZWUgU29m
dHdhcmUgRm91bmRhdGlvbjsgZWl0aGVyCisgKiB2ZXJzaW9uIDIgb2YgdGhlIExpY2Vuc2UsIG9y
IChhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uCisgKgorICogVGhpcyBsaWJyYXJ5
IGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCisgKiBi
dXQgV0lUSE9VVCBBTlkgV0FSUkFOVFk7IHdpdGhvdXQgZXZlbiB0aGUgaW1wbGllZCB3YXJyYW50
eSBvZgorICogTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQ
T1NFLiAgU2VlIHRoZSBHTlUKKyAqIExpYnJhcnkgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBmb3Ig
bW9yZSBkZXRhaWxzLgorICoKKyAqIFlvdSBzaG91bGQgaGF2ZSByZWNlaXZlZCBhIGNvcHkgb2Yg
dGhlIEdOVSBMaWJyYXJ5IEdlbmVyYWwgUHVibGljIExpY2Vuc2UKKyAqIGFsb25nIHdpdGggdGhp
cyBsaWJyYXJ5OyBzZWUgdGhlIGZpbGUgQ09QWUlORy5MSUIuICBJZiBub3QsIHdyaXRlIHRvCisg
KiB0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uLCBJbmMuLCA1MSBGcmFua2xpbiBTdHJlZXQs
IEZpZnRoIEZsb29yLAorICogQm9zdG9uLCBNQSAwMjExMC0xMzAxLCBVU0EuCisgKgorICovCisK
KyNpbmNsdWRlICJjb25maWcuaCIKKyNpbmNsdWRlICJNaWNyb1Rhc2tUZXN0LmgiCisKKyNpbmNs
dWRlICJEb2N1bWVudC5oIgorCituYW1lc3BhY2UgV2ViQ29yZSB7CisKK3ZvaWQgTWljcm9UYXNr
VGVzdDo6cnVuKCkKK3sKKyAgICBTdHJpbmdCdWlsZGVyIG1lc3NhZ2U7CisgICAgbWVzc2FnZS5h
cHBlbmQoIk1pY3JvVGFzayAjIik7CisgICAgbWVzc2FnZS5hcHBlbmQoU3RyaW5nOjpudW1iZXIo
bV90ZXN0TnVtYmVyKSk7CisgICAgbWVzc2FnZS5hcHBlbmQoIiBoYXMgcnVuLiIpOworICAgIGlm
IChtX2RvY3VtZW50KQorICAgICAgICBtX2RvY3VtZW50LT5hZGRDb25zb2xlTWVzc2FnZShNZXNz
YWdlU291cmNlOjpKUywgTWVzc2FnZUxldmVsOjpEZWJ1ZywgbWVzc2FnZS50b1N0cmluZygpKTsK
K30KKworc3RkOjp1bmlxdWVfcHRyPE1pY3JvVGFza1Rlc3Q+IE1pY3JvVGFza1Rlc3Q6OmNyZWF0
ZShXZWFrUHRyPERvY3VtZW50PiBkb2N1bWVudCwgaW50IHRlc3ROdW1iZXIpCit7CisgICAgcmV0
dXJuIHN0ZDo6dW5pcXVlX3B0cjxNaWNyb1Rhc2tUZXN0PihuZXcgTWljcm9UYXNrVGVzdChkb2N1
bWVudCwgdGVzdE51bWJlcikpOworfQorCit9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViQ29yZS90ZXN0aW5nL01pY3JvVGFza1Rlc3QuaCBiL1NvdXJjZS9XZWJD
b3JlL3Rlc3RpbmcvTWljcm9UYXNrVGVzdC5oCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmE3NDIyZTg2NzhiZjJmN2Zm
YWYzMTllYmFkODMyZDMzNzE0MGQyZTIKLS0tIC9kZXYvbnVsbAorKysgYi9Tb3VyY2UvV2ViQ29y
ZS90ZXN0aW5nL01pY3JvVGFza1Rlc3QuaApAQCAtMCwwICsxLDQ5IEBACisvKgorICogQ29weXJp
Z2h0IChDKSAyMDE1IEFrYW1haSBUZWNobm9sb2dpZXMgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVk
LgorICoKKyAqIFRoaXMgbGlicmFyeSBpcyBmcmVlIHNvZnR3YXJlOyB5b3UgY2FuIHJlZGlzdHJp
YnV0ZSBpdCBhbmQvb3IKKyAqIG1vZGlmeSBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBM
aWJyYXJ5IEdlbmVyYWwgUHVibGljCisgKiBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieSB0aGUgRnJl
ZSBTb2Z0d2FyZSBGb3VuZGF0aW9uOyBlaXRoZXIKKyAqIHZlcnNpb24gMiBvZiB0aGUgTGljZW5z
ZSwgb3IgKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KKyAqCisgKiBUaGlzIGxp
YnJhcnkgaXMgZGlzdHJpYnV0ZWQgaW4gdGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCwK
KyAqIGJ1dCBXSVRIT1VUIEFOWSBXQVJSQU5UWTsgd2l0aG91dCBldmVuIHRoZSBpbXBsaWVkIHdh
cnJhbnR5IG9mCisgKiBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFS
IFBVUlBPU0UuICBTZWUgdGhlIEdOVQorICogTGlicmFyeSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNl
IGZvciBtb3JlIGRldGFpbHMuCisgKgorICogWW91IHNob3VsZCBoYXZlIHJlY2VpdmVkIGEgY29w
eSBvZiB0aGUgR05VIExpYnJhcnkgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQorICogYWxvbmcgd2l0
aCB0aGlzIGxpYnJhcnk7IHNlZSB0aGUgZmlsZSBDT1BZSU5HLkxJQi4gIElmIG5vdCwgd3JpdGUg
dG8KKyAqIHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb24sIEluYy4sIDUxIEZyYW5rbGluIFN0
cmVldCwgRmlmdGggRmxvb3IsCisgKiBCb3N0b24sIE1BIDAyMTEwLTEzMDEsIFVTQS4KKyAqCisg
Ki8KKworI2lmbmRlZiBNaWNyb1Rhc2tUZXN0X2gKKyNkZWZpbmUgTWljcm9UYXNrVGVzdF9oCisK
KyNpbmNsdWRlICJNaWNyb1Rhc2suaCIKKyNpbmNsdWRlIDx3dGYvV2Vha1B0ci5oPgorCituYW1l
c3BhY2UgV2ViQ29yZSB7CisKK2NsYXNzIERvY3VtZW50OworCitjbGFzcyBNaWNyb1Rhc2tUZXN0
IDogcHVibGljIE1pY3JvVGFzayB7CitwdWJsaWM6CisgICAgdmlydHVhbCB2b2lkIHJ1bigpIG92
ZXJyaWRlOworICAgIFdFQkNPUkVfVEVTVFNVUFBPUlRfRVhQT1JUIHN0YXRpYyBzdGQ6OnVuaXF1
ZV9wdHI8TWljcm9UYXNrVGVzdD4gY3JlYXRlKFdlYWtQdHI8RG9jdW1lbnQ+LCBpbnQgdGVzdE51
bWJlcik7CisKK3ByaXZhdGU6CisgICAgTWljcm9UYXNrVGVzdChXZWFrUHRyPERvY3VtZW50PiBk
b2N1bWVudCwgaW50IHRlc3ROdW1iZXIpCisgICAgICAgIDogbV9kb2N1bWVudChkb2N1bWVudCkK
KyAgICAgICAgLCBtX3Rlc3ROdW1iZXIodGVzdE51bWJlcikKKyAgICB7CisgICAgfQorCisgICAg
V2Vha1B0cjxEb2N1bWVudD4gbV9kb2N1bWVudDsKKyAgICBpbnQgbV90ZXN0TnVtYmVyOworfTsK
KworfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQorCisjZW5kaWYKZGlmZiAtLWdpdCBhL0xheW91dFRl
c3RzL0NoYW5nZUxvZyBiL0xheW91dFRlc3RzL0NoYW5nZUxvZwppbmRleCA1M2Y5YWIzMmFkMDI4
N2Y0YTUxNWRlYTcwYjgwNjY1MzY0YTM0NTE0Li41Y2EzMzI5NGUxOWExNWM1ZGEyMGUzMTkyZmU2
NWQ2YmUxYzg4NmY1IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKKysrIGIvTGF5
b3V0VGVzdHMvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTkgQEAKKzIwMTUtMDMtMDIgICBZb2F2IFdl
aXNzICA8eW9hdkB5b2F2LndzPgorCisgICAgICAgIEFkZCBhIG1pY3JvdGFzayBhYnN0cmFjdGlv
bgorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTM3NDk2
CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgU2FtIFdlaW5pZy4KKworICAgICAgICBBZGRpbmcgYSB0
ZXN0IGZvciBtaWNyb3Rhc2sgYWJzdHJhY3Rpb24uCisKKyAgICAgICAgKiBmYXN0L2RvbS9taWNy
b3Rhc2stZGV0YWNoLmh0bWw6IEFkZGVkLgorICAgICAgICAqIGZhc3QvZG9tL21pY3JvdGFzay1k
ZXRhY2gtZXhwZWN0ZWQudHh0OiBBZGRlZC4KKyAgICAgICAgKiBmYXN0L2RvbS9taWNyb3Rhc2st
aW5vcmRlci5odG1sOiBBZGRlZC4KKyAgICAgICAgKiBmYXN0L2RvbS9taWNyb3Rhc2staW5vcmRl
ci1leHBlY3RlZC50eHQ6IEFkZGVkLgorICAgICAgICAqIGZhc3QvZG9tL21pY3JvdGFzay1yZXZl
cnNlLmh0bWw6IEFkZGVkLgorICAgICAgICAqIGZhc3QvZG9tL21pY3JvdGFzay1yZXZlcnNlLWV4
cGVjdGVkLnR4dDogQWRkZWQuCisKIDIwMTUtMDMtMDEgIFNpbW9uIEZyYXNlciAgPHNpbW9uLmZy
YXNlckBhcHBsZS5jb20+CiAKICAgICAgICAgTWFrZSBjbGlwLXBhdGggd29yayBvbiA8dmlkZW8+
LCA8Y2FudmFzPiBldGMuCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L2RvbS9taWNyb3Rh
c2stZGV0YWNoLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2Zhc3QvZG9tL21pY3JvdGFzay1k
ZXRhY2gtZXhwZWN0ZWQudHh0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjI4Y2QyOTU2OGUyMGY2ZWU0ZGJkOWE0MWNi
NmY4NmM0ODI3ZjkxNjEKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9mYXN0L2RvbS9t
aWNyb3Rhc2stZGV0YWNoLWV4cGVjdGVkLnR4dApAQCAtMCwwICsxLDkgQEAKK0NPTlNPTEUgTUVT
U0FHRTogbGluZSAzMTogRmluaXNoZWQgcXVldWVpbmcgdGVzdHMuCitDT05TT0xFIE1FU1NBR0U6
IE1pY3JvVGFzayAjMSBoYXMgcnVuLgorQ09OU09MRSBNRVNTQUdFOiBNaWNyb1Rhc2sgIzAgaGFz
IHJ1bi4KKworCistLS0tLS0tLQorRnJhbWU6ICdmcmFtZTEnCistLS0tLS0tLQorCmRpZmYgLS1n
aXQgYS9MYXlvdXRUZXN0cy9mYXN0L2RvbS9taWNyb3Rhc2stZGV0YWNoLmh0bWwgYi9MYXlvdXRU
ZXN0cy9mYXN0L2RvbS9taWNyb3Rhc2stZGV0YWNoLmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQK
aW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uODk3NzczMjdl
YTU3MzE1NWZiYjY2ZGEyNmQyNzkwNDViZjFmY2E0ZAotLS0gL2Rldi9udWxsCisrKyBiL0xheW91
dFRlc3RzL2Zhc3QvZG9tL21pY3JvdGFzay1kZXRhY2guaHRtbApAQCAtMCwwICsxLDM3IEBACis8
IURPQ1RZUEUgaHRtbD4KKzxzY3JpcHQ+CitpZiAod2luZG93LnRlc3RSdW5uZXIpIHsKKyAgICB0
ZXN0UnVubmVyLmR1bXBBc1RleHQoKTsKKyAgICB0ZXN0UnVubmVyLmR1bXBDaGlsZEZyYW1lc0Fz
VGV4dCgpOworICAgIHRlc3RSdW5uZXIud2FpdFVudGlsRG9uZSgpOworfQorPC9zY3JpcHQ+Cis8
Ym9keT4KKzxpZnJhbWUgaWQ9ImZyYW1lMSI+PC9pZnJhbWU+Cis8aWZyYW1lIGlkPSJmcmFtZTIi
PjwvaWZyYW1lPgorPHNjcmlwdD4KKworKGZ1bmN0aW9uKCkgeworICAgIHZhciBpZnJhbWUxID0g
ZG9jdW1lbnQucXVlcnlTZWxlY3RvcigiI2ZyYW1lMSIpLmNvbnRlbnRXaW5kb3c7CisgICAgdmFy
IGlmcmFtZTJOb2RlID0gZG9jdW1lbnQucXVlcnlTZWxlY3RvcigiI2ZyYW1lMiIpOworICAgIHZh
ciBpZnJhbWUyID0gaWZyYW1lMk5vZGUuY29udGVudFdpbmRvdzsKKworICAgIGlmKGlmcmFtZTIu
aW50ZXJuYWxzKQorICAgICAgICBpZnJhbWUyLmludGVybmFscy5xdWV1ZU1pY3JvVGFzaygyKTsK
KyAgICBpZihpZnJhbWUxLmludGVybmFscykKKyAgICAgICAgaWZyYW1lMS5pbnRlcm5hbHMucXVl
dWVNaWNyb1Rhc2soMSk7CisgICAgaWYod2luZG93LmludGVybmFscykKKyAgICAgICAgaW50ZXJu
YWxzLnF1ZXVlTWljcm9UYXNrKDApOworICAgIGRvY3VtZW50LmJvZHkucmVtb3ZlQ2hpbGQoaWZy
YW1lMk5vZGUpOworfSgpKTsKKworaWYgKHdpbmRvdy5HQ0NvbnRyb2xsZXIpCisgICAgR0NDb250
cm9sbGVyLmNvbGxlY3QoKTsKKworY29uc29sZS5sb2coIkZpbmlzaGVkIHF1ZXVlaW5nIHRlc3Rz
LiIpOworcmVxdWVzdEFuaW1hdGlvbkZyYW1lKGZ1bmN0aW9uKCkgeworICAgIGlmICh3aW5kb3cu
dGVzdFJ1bm5lcikKKyAgICAgICAgdGVzdFJ1bm5lci5ub3RpZnlEb25lKCk7Cit9KTsKKzwvc2Ny
aXB0PgorPC9ib2R5PgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9kb20vbWljcm90YXNr
LWlub3JkZXItZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvZmFzdC9kb20vbWljcm90YXNrLWlu
b3JkZXItZXhwZWN0ZWQudHh0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjAzODBiOTRjN2M4MTgzYTY5NmUxYWIyMjY5
OWVhY2FmY2QzZGQzNzMKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9mYXN0L2RvbS9t
aWNyb3Rhc2staW5vcmRlci1leHBlY3RlZC50eHQKQEAgLTAsMCArMSwxNSBAQAorQ09OU09MRSBN
RVNTQUdFOiBsaW5lIDIzOiBGaW5pc2hlZCBxdWV1ZWluZyB0ZXN0cy4KK0NPTlNPTEUgTUVTU0FH
RTogTWljcm9UYXNrICMyIGhhcyBydW4uCitDT05TT0xFIE1FU1NBR0U6IE1pY3JvVGFzayAjMSBo
YXMgcnVuLgorQ09OU09MRSBNRVNTQUdFOiBNaWNyb1Rhc2sgIzAgaGFzIHJ1bi4KKyAKKworLS0t
LS0tLS0KK0ZyYW1lOiAnZnJhbWUxJworLS0tLS0tLS0KKworCistLS0tLS0tLQorRnJhbWU6ICdm
cmFtZTInCistLS0tLS0tLQorCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L2RvbS9taWNy
b3Rhc2staW5vcmRlci5odG1sIGIvTGF5b3V0VGVzdHMvZmFzdC9kb20vbWljcm90YXNrLWlub3Jk
ZXIuaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwLi43OWM4ZTJmNzg5ODNhM2U2ODVlYWMxNTUwOTU2MTAxMWU4NjFm
OWE5Ci0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC9kb20vbWljcm90YXNrLWlu
b3JkZXIuaHRtbApAQCAtMCwwICsxLDI4IEBACis8IURPQ1RZUEUgaHRtbD4KKzxzY3JpcHQ+Citp
ZiAod2luZG93LnRlc3RSdW5uZXIpIHsKKyAgICB0ZXN0UnVubmVyLmR1bXBBc1RleHQoKTsKKyAg
ICB0ZXN0UnVubmVyLmR1bXBDaGlsZEZyYW1lc0FzVGV4dCgpOworICAgIHRlc3RSdW5uZXIud2Fp
dFVudGlsRG9uZSgpOworfQorPC9zY3JpcHQ+Cis8aWZyYW1lIGlkPSJmcmFtZTEiPjwvaWZyYW1l
PgorPGlmcmFtZSBpZD0iZnJhbWUyIj48L2lmcmFtZT4KKzxzY3JpcHQ+CisKK3ZhciBpZnJhbWUx
ID0gZG9jdW1lbnQucXVlcnlTZWxlY3RvcigiI2ZyYW1lMSIpLmNvbnRlbnRXaW5kb3c7Cit2YXIg
aWZyYW1lMiA9IGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoIiNmcmFtZTIiKS5jb250ZW50V2luZG93
OworCitpZihpZnJhbWUyLmludGVybmFscykKKyAgICBpZnJhbWUyLmludGVybmFscy5xdWV1ZU1p
Y3JvVGFzaygyKTsKK2lmKGlmcmFtZTEuaW50ZXJuYWxzKQorICAgIGlmcmFtZTEuaW50ZXJuYWxz
LnF1ZXVlTWljcm9UYXNrKDEpOworaWYod2luZG93LmludGVybmFscykKKyAgICBpbnRlcm5hbHMu
cXVldWVNaWNyb1Rhc2soMCk7CisKK2NvbnNvbGUubG9nKCJGaW5pc2hlZCBxdWV1ZWluZyB0ZXN0
cy4iKTsKK3JlcXVlc3RBbmltYXRpb25GcmFtZShmdW5jdGlvbigpIHsKKyAgICBpZiAod2luZG93
LnRlc3RSdW5uZXIpCisgICAgICAgIHRlc3RSdW5uZXIubm90aWZ5RG9uZSgpOworfSk7Cis8L3Nj
cmlwdD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3QvZG9tL21pY3JvdGFzay1yZXZlcnNl
LWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2Zhc3QvZG9tL21pY3JvdGFzay1yZXZlcnNlLWV4
cGVjdGVkLnR4dApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwLi4yZWM4OGJiNTRmMGJhZmZmMmI0OTRlMjIzM2FmZWU0MzU4
MzY3YTNhCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC9kb20vbWljcm90YXNr
LXJldmVyc2UtZXhwZWN0ZWQudHh0CkBAIC0wLDAgKzEsMTUgQEAKK0NPTlNPTEUgTUVTU0FHRTog
bGluZSAyMzogRmluaXNoZWQgcXVldWVpbmcgdGVzdHMuCitDT05TT0xFIE1FU1NBR0U6IE1pY3Jv
VGFzayAjMCBoYXMgcnVuLgorQ09OU09MRSBNRVNTQUdFOiBNaWNyb1Rhc2sgIzEgaGFzIHJ1bi4K
K0NPTlNPTEUgTUVTU0FHRTogTWljcm9UYXNrICMyIGhhcyBydW4uCisgCisKKy0tLS0tLS0tCitG
cmFtZTogJ2ZyYW1lMScKKy0tLS0tLS0tCisKKworLS0tLS0tLS0KK0ZyYW1lOiAnZnJhbWUyJwor
LS0tLS0tLS0KKwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9kb20vbWljcm90YXNrLXJl
dmVyc2UuaHRtbCBiL0xheW91dFRlc3RzL2Zhc3QvZG9tL21pY3JvdGFzay1yZXZlcnNlLmh0bWwK
bmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMC4uYjFiNGU3Nzg2MjE3YmFkMzZjZGY5MDQ5YjljM2U4ZjRmYTI3MmJkMAotLS0g
L2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2Zhc3QvZG9tL21pY3JvdGFzay1yZXZlcnNlLmh0
bWwKQEAgLTAsMCArMSwyOCBAQAorPCFET0NUWVBFIGh0bWw+Cis8c2NyaXB0PgoraWYgKHdpbmRv
dy50ZXN0UnVubmVyKSB7CisgICAgdGVzdFJ1bm5lci5kdW1wQXNUZXh0KCk7CisgICAgdGVzdFJ1
bm5lci5kdW1wQ2hpbGRGcmFtZXNBc1RleHQoKTsKKyAgICB0ZXN0UnVubmVyLndhaXRVbnRpbERv
bmUoKTsKK30KKzwvc2NyaXB0PgorPGlmcmFtZSBpZD0iZnJhbWUxIj48L2lmcmFtZT4KKzxpZnJh
bWUgaWQ9ImZyYW1lMiI+PC9pZnJhbWU+Cis8c2NyaXB0PgorCit2YXIgaWZyYW1lMSA9IGRvY3Vt
ZW50LnF1ZXJ5U2VsZWN0b3IoIiNmcmFtZTEiKS5jb250ZW50V2luZG93OwordmFyIGlmcmFtZTIg
PSBkb2N1bWVudC5xdWVyeVNlbGVjdG9yKCIjZnJhbWUyIikuY29udGVudFdpbmRvdzsKKworaWYo
d2luZG93LmludGVybmFscykKKyAgICBpbnRlcm5hbHMucXVldWVNaWNyb1Rhc2soMCk7CitpZihp
ZnJhbWUxLmludGVybmFscykKKyAgICBpZnJhbWUxLmludGVybmFscy5xdWV1ZU1pY3JvVGFzaygx
KTsKK2lmKGlmcmFtZTIuaW50ZXJuYWxzKQorICAgIGlmcmFtZTIuaW50ZXJuYWxzLnF1ZXVlTWlj
cm9UYXNrKDIpOworCitjb25zb2xlLmxvZygiRmluaXNoZWQgcXVldWVpbmcgdGVzdHMuIik7City
ZXF1ZXN0QW5pbWF0aW9uRnJhbWUoZnVuY3Rpb24oKSB7CisgICAgaWYgKHdpbmRvdy50ZXN0UnVu
bmVyKQorICAgICAgICB0ZXN0UnVubmVyLm5vdGlmeURvbmUoKTsKK30pOworPC9zY3JpcHQ+Cg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>247812</attachid>
            <date>2015-03-03 16:34:27 -0800</date>
            <delta_ts>2015-03-03 23:04:44 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-137496-20150303163409.patch</filename>
            <type>text/plain</type>
            <size>36692</size>
            <attacher name="Yoav Weiss">yoav</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTgwOTI4CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggY2RjZGRiNTJjZjBiNTk4
ZWI1ZjhiYzJhNDMyMDM1ZjJiNDQzZTg4NS4uMzVkZDFhODhiM2Q1MjRkYWY0ZDFkZGFmN2YzOWFm
NGVjMjZjMTE0NiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDQ4IEBACisyMDE1LTAzLTAzICBZb2F2
IFdlaXNzICA8eW9hdkB5b2F2LndzPgorCisgICAgICAgIEFkZCBhIG1pY3JvdGFzayBhYnN0cmFj
dGlvbgorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTM3
NDk2CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgU2FtIFdlaW5pZy4KKworICAgICAgICBUaGlzIHBh
dGNoIGFkZHMgYSBtaWNyb3Rhc2sgYWJzdHJhY3Rpb246IGh0dHBzOi8vaHRtbC5zcGVjLndoYXR3
Zy5vcmcvbXVsdGlwYWdlL3dlYmFwcGFwaXMuaHRtbCNtaWNyb3Rhc2sKKyAgICAgICAgVGhhdCBh
YnN0cmFjdGlvbiBpcyByZXF1aXJlZCBpbiBvcmRlciB0byBlbmFibGUgYXN5bmMgbG9hZGluZyBv
ZiBpbWFnZXMsCisgICAgICAgIHdoaWNoIGlzIGluIHR1cm4gcmVxdWlyZWQgdG8gZW5hYmxlIHN1
cHBvcnQgZm9yIHRoZSBwaWN0dXJlIGVsZW1lbnQsIGFzIHdlbGwgYXMKKyAgICAgICAgdG8gbWFr
ZSBzdXJlIHRoYXQgdGhlIG9yZGVyIG9mIHByb3BlcnRpZXMgc2V0IG9uIEhUTUxJbWFnZUVsZW1l
bnQgaGFzIG5vIGltcGxpY2F0aW9ucy4KKworICAgICAgICBBIHNpbWlsYXIgcGF0Y2ggd2FzIHJv
bGxlZCBiYWNrIGluIHIxODA5MTQuIFRoaXMgcGF0Y2ggaXMgYW4gaW1wcm92ZWQgdmVyc2lvbi4K
KworICAgICAgICAqIFdlYkNvcmUudmN4cHJvai9XZWJDb3JlLnZjeHByb2o6IEFkZCBNaWNyb1Rh
c2sue2gsY3BwfSB0byB0aGUgcHJvamVjdC4KKyAgICAgICAgKiBXZWJDb3JlLnZjeHByb2ovV2Vi
Q29yZVRlc3RTdXBwb3J0LnZjeHByb2o6IEFkZCBNaWNyb1Rhc2tUZXN0LntoLGNwcH0gdG8gdGhl
IHByb2plY3QuCisgICAgICAgICogV2ViQ29yZS52Y3hwcm9qL1dlYkNvcmUudmN4cHJvai5maWx0
ZXJzOiBBZGQgTWljcm9UYXNrLntoLGNwcH0gdG8gdGhlIHByb2plY3QuCisgICAgICAgICogV2Vi
Q29yZS52Y3hwcm9qL1dlYkNvcmVUZXN0U3VwcG9ydC52Y3hwcm9qLmZpbHRlcnM6IEFkZCBNaWNy
b1Rhc2tUZXN0LntoLGNwcH0gdG8gdGhlIHByb2plY3QuCisgICAgICAgICogV2ViQ29yZS54Y29k
ZXByb2ovcHJvamVjdC5wYnhwcm9qOiBBZGQgTWljcm9UYXNreyxUZXN0fS57aCxjcHB9IHRvIHRo
ZSBwcm9qZWN0LgorICAgICAgICAqIGRvbS9Eb2N1bWVudC5oOiBBZGQgV0VCQ09SRV9FWFBPUlQg
dG8gYWRkQ29uc29sZU1lc3NhZ2UsIHNvIGl0IGNhbiBiZSB1c2VkIGluIE1pY3JvVGFza1Rlc3Qg
dGhhdCdzIGluIFdlYkNvcmVUZXN0U3VwcG9ydC4uCisgICAgICAgICogZG9tL01pY3JvVGFzay5o
OiBBZGQgYSBNaWNyb1Rhc2sgaW50ZXJmYWNlIGNsYXNzLiBBZGQgYSBNaWNyb1Rhc2tRdWV1ZSBz
aW5nbGV0b24uCisgICAgICAgIChXZWJDb3JlOjpNaWNyb1Rhc2s6On5NaWNyb1Rhc2spOgorICAg
ICAgICAoV2ViQ29yZTo6TWljcm9UYXNrOjpydW4pOiBSdW4gdGhlIG1pY3JvdGFzay4KKyAgICAg
ICAgKiBkb20vTWljcm9UYXNrLmNwcDogSW1wbGVtZW50IHRoZSBNaWNyb1Rhc2tRdWV1ZSBzaW5n
bGV0b24uCisgICAgICAgIChXZWJDb3JlOjpNaWNyb1Rhc2tRdWV1ZTo6c2luZ2xldG9uKTogR2V0
IGEgc2luZ2xldG9uIGluc3RhbmNlIG9mIE1pY3JvVGFza1F1ZXVlLgorICAgICAgICAoV2ViQ29y
ZTo6TWljcm9UYXNrUXVldWU6OnF1ZXVlTWljcm9UYXNrKTogQWRkIGEgbWljcm90YXNrIHRvIHRo
ZSBxdWV1ZS4KKyAgICAgICAgKFdlYkNvcmU6Ok1pY3JvVGFza1F1ZXVlOjpydW5NaWNyb1Rhc2tz
KTogUnVuIGFsbCB0aGUgbWljcm90YXNrcyBpbiB0aGUgcXVldWUgYW5kIGNsZWFyIGl0LgorICAg
ICAgICAqIGRvbS9TY3JpcHRSdW5uZXIuY3BwOiBUcmlnZ2VyIHJ1bm5pbmcgb2YgYWxsIG1pY3Jv
dGFza3MgaW4gcXVldWUuCisgICAgICAgIChXZWJDb3JlOjpTY3JpcHRSdW5uZXI6OnRpbWVyRmly
ZWQpOgorICAgICAgICAqIGh0bWwvcGFyc2VyL0hUTUxTY3JpcHRSdW5uZXIuY3BwOiBUcmlnZ2Vy
IHJ1bm5pbmcgb2YgYWxsIG1pY3JvdGFza3MgaW4gcXVldWUuCisgICAgICAgIChXZWJDb3JlOjpI
VE1MU2NyaXB0UnVubmVyOjpleGVjdXRlUGVuZGluZ1NjcmlwdEFuZERpc3BhdGNoRXZlbnQpOgor
ICAgICAgICAoV2ViQ29yZTo6SFRNTFNjcmlwdFJ1bm5lcjo6ZXhlY3V0ZVNjcmlwdHNXYWl0aW5n
Rm9yUGFyc2luZyk6CisgICAgICAgIChXZWJDb3JlOjpIVE1MU2NyaXB0UnVubmVyOjpydW5TY3Jp
cHQpOgorICAgICAgICAqIHRlc3RpbmcvSW50ZXJuYWxzLmNwcDogQWRkIGEgbWV0aG9kIHRvIHF1
ZXVlIGEgdGVzdCBtaWNyb3Rhc2suCisgICAgICAgIChXZWJDb3JlOjpJbnRlcm5hbHM6OnF1ZXVl
TWljcm9UYXNrKToKKyAgICAgICAgKiB0ZXN0aW5nL0ludGVybmFscy5oOiBBZGQgYSBtZXRob2Qg
dG8gcXVldWUgYSB0ZXN0IG1pY3JvdGFzay4KKyAgICAgICAgKFdlYkNvcmU6OkludGVybmFsczo6
cXVldWVNaWNyb1Rhc2spOgorICAgICAgICAqIHRlc3RpbmcvSW50ZXJuYWxzLmlkbDogRXhwb3Nl
IHRlc3QgbWljcm90YXNrIHF1ZXVlaW5nIHRvIHRlc3QgSlMuCisgICAgICAgICogdGVzdGluZy9N
aWNyb1Rhc2tUZXN0LmNwcDogQWRkIGEgdGVzdCBjbGFzcyB0aGF0IGltcGxlbWVudHMgYSBtaWNy
b3Rhc2sgYW5kIHByaW50cyB0byB0aGUgY29uc29sZSB3aGVuIGl0IHJ1bnMuCisgICAgICAgIChX
ZWJDb3JlOjpNaWNyb1Rhc2tUZXN0OjpydW4pOiBSdW4gdGhlIG1pY3JvdGFzaworICAgICAgICAo
V2ViQ29yZTo6TWljcm9UYXNrVGVzdDo6Y3JlYXRlKTogQ3JlYXRlIGEgdGVzdCBtaWNyb3Rhc2su
CisgICAgICAgICogdGVzdGluZy9NaWNyb1Rhc2tUZXN0Lmg6IEFkZCBhIHRlc3QgY2xhc3MgdGhh
dCBpbXBsZW1lbnRzIGEgbWljcm90YXNrLgorICAgICAgICAoV2ViQ29yZTo6TWljcm9UYXNrVGVz
dDo6cnVuKToKKyAgICAgICAgKFdlYkNvcmU6Ok1pY3JvVGFza1Rlc3Q6OmNyZWF0ZSk6CisKIDIw
MTUtMDMtMDIgIENhcmxvcyBHYXJjaWEgQ2FtcG9zICA8Y2dhcmNpYUBpZ2FsaWEuY29tPgogCiAg
ICAgICAgIFtTT1VQXSBVc2UgU291cE1lc3NhZ2U6OnN0YXJ0aW5nIGluc3RlYWQgb2YgU291cFNl
c3Npb246OnJlcXVlc3Qtc3RhcnRlZApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvQ01ha2VM
aXN0cy50eHQgYi9Tb3VyY2UvV2ViQ29yZS9DTWFrZUxpc3RzLnR4dAppbmRleCAzMjg5OGM3ZDBl
ZDQwY2UwYTBjYTNmODExZjdlMGE1MjA5OWU2YTc1Li43NTM0NjRiNTc0Yjc2MzZiYzNkNzU1YzQ0
YzkxZWZlMmY3OGEzYTgzIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9DTWFrZUxpc3RzLnR4
dAorKysgYi9Tb3VyY2UvV2ViQ29yZS9DTWFrZUxpc3RzLnR4dApAQCAtMTM3MCw2ICsxMzcwLDcg
QEAgc2V0KFdlYkNvcmVfU09VUkNFUwogICAgIGRvbS9NZXNzYWdlRXZlbnQuY3BwCiAgICAgZG9t
L01lc3NhZ2VQb3J0LmNwcAogICAgIGRvbS9NZXNzYWdlUG9ydENoYW5uZWwuY3BwCisgICAgZG9t
L01pY3JvVGFzay5jcHAKICAgICBkb20vTW91c2VFdmVudC5jcHAKICAgICBkb20vTW91c2VSZWxh
dGVkRXZlbnQuY3BwCiAgICAgZG9tL011dGF0aW9uRXZlbnQuY3BwCkBAIC0zMTU0LDYgKzMxNTUs
NyBAQCBzZXQoV2ViQ29yZVRlc3RTdXBwb3J0X1NPVVJDRVMKICAgICB0ZXN0aW5nL0ludGVybmFs
U2V0dGluZ3MuY3BwCiAgICAgdGVzdGluZy9JbnRlcm5hbHMuY3BwCiAKKyAgICB0ZXN0aW5nL01p
Y3JvVGFza1Rlc3QuY3BwCiAgICAgdGVzdGluZy9Nb2NrUGFnZU92ZXJsYXlDbGllbnQuY3BwCiAK
ICAgICB0ZXN0aW5nL2pzL1dlYkNvcmVUZXN0U3VwcG9ydC5jcHAKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJDb3JlL1dlYkNvcmUudmN4cHJvai9XZWJDb3JlLnZjeHByb2ogYi9Tb3VyY2UvV2ViQ29y
ZS9XZWJDb3JlLnZjeHByb2ovV2ViQ29yZS52Y3hwcm9qCmluZGV4IDA0NDJiZjMxYTUwZjJmNDg2
YzQxOTY0MjI4NzRhMjI2ODc2OTI5YzkuLjMxMGRiYjc3MjcwNmI1MTBmZDcxNWU4MDJmNjNlMmE0
MTRhNzIzMzMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUudmN4cHJvai9XZWJD
b3JlLnZjeHByb2oKKysrIGIvU291cmNlL1dlYkNvcmUvV2ViQ29yZS52Y3hwcm9qL1dlYkNvcmUu
dmN4cHJvagpAQCAtMTM0MzQsNiArMTM0MzQsNyBAQAogICAgICAgPEV4Y2x1ZGVkRnJvbUJ1aWxk
IENvbmRpdGlvbj0iJyQoQ29uZmlndXJhdGlvbil8JChQbGF0Zm9ybSknPT0nUHJvZHVjdGlvbnxX
aW4zMiciPnRydWU8L0V4Y2x1ZGVkRnJvbUJ1aWxkPgogICAgICAgPEV4Y2x1ZGVkRnJvbUJ1aWxk
IENvbmRpdGlvbj0iJyQoQ29uZmlndXJhdGlvbil8JChQbGF0Zm9ybSknPT0nUHJvZHVjdGlvbnx4
NjQnIj50cnVlPC9FeGNsdWRlZEZyb21CdWlsZD4KICAgICA8L0NsQ29tcGlsZT4KKyAgICA8Q2xD
b21waWxlIEluY2x1ZGU9Ii4uXGRvbVxNaWNyb1Rhc2suY3BwIiAvPgogICAgIDxDbENvbXBpbGUg
SW5jbHVkZT0iLi5cZG9tXE1vdXNlRXZlbnQuY3BwIj4KICAgICAgIDxFeGNsdWRlZEZyb21CdWls
ZCBDb25kaXRpb249IickKENvbmZpZ3VyYXRpb24pfCQoUGxhdGZvcm0pJz09J0RlYnVnfFdpbjMy
JyI+dHJ1ZTwvRXhjbHVkZWRGcm9tQnVpbGQ+CiAgICAgICA8RXhjbHVkZWRGcm9tQnVpbGQgQ29u
ZGl0aW9uPSInJChDb25maWd1cmF0aW9uKXwkKFBsYXRmb3JtKSc9PSdEZWJ1Z3x4NjQnIj50cnVl
PC9FeGNsdWRlZEZyb21CdWlsZD4KQEAgLTIwNjI0LDYgKzIwNjI1LDcgQEAKICAgICA8Q2xJbmNs
dWRlIEluY2x1ZGU9Ii4uXGRvbVxNZXNzYWdlRXZlbnQuaCIgLz4KICAgICA8Q2xJbmNsdWRlIElu
Y2x1ZGU9Ii4uXGRvbVxNZXNzYWdlUG9ydC5oIiAvPgogICAgIDxDbEluY2x1ZGUgSW5jbHVkZT0i
Li5cZG9tXE1lc3NhZ2VQb3J0Q2hhbm5lbC5oIiAvPgorICAgIDxDbEluY2x1ZGUgSW5jbHVkZT0i
Li5cZG9tXE1pY3JvVGFzay5oIiAvPgogICAgIDxDbEluY2x1ZGUgSW5jbHVkZT0iLi5cZG9tXE1v
dXNlRXZlbnQuaCIgLz4KICAgICA8Q2xJbmNsdWRlIEluY2x1ZGU9Ii4uXGRvbVxNb3VzZVJlbGF0
ZWRFdmVudC5oIiAvPgogICAgIDxDbEluY2x1ZGUgSW5jbHVkZT0iLi5cZG9tXE11dGF0aW9uRXZl
bnQuaCIgLz4KQEAgLTIxNDI1LDQgKzIxNDI3LDQgQEAKICAgPEltcG9ydEdyb3VwIExhYmVsPSJF
eHRlbnNpb25UYXJnZXRzIj4KICAgICA8SW1wb3J0IFByb2plY3Q9IiQoVkNUYXJnZXRzUGF0aClc
QnVpbGRDdXN0b21pemF0aW9uc1xtYXNtLnRhcmdldHMiIC8+CiAgIDwvSW1wb3J0R3JvdXA+Ci08
L1Byb2plY3Q+ClwgTm8gbmV3bGluZSBhdCBlbmQgb2YgZmlsZQorPC9Qcm9qZWN0PgpkaWZmIC0t
Z2l0IGEvU291cmNlL1dlYkNvcmUvV2ViQ29yZS52Y3hwcm9qL1dlYkNvcmUudmN4cHJvai5maWx0
ZXJzIGIvU291cmNlL1dlYkNvcmUvV2ViQ29yZS52Y3hwcm9qL1dlYkNvcmUudmN4cHJvai5maWx0
ZXJzCmluZGV4IDgzNGVmMTY3ZmNmNGI2MjY0M2FhMTBjZjY0NzVjNDBkMGZmM2U3ZTAuLmI5MWYw
OGY5NTFjOGVjYzFkZGE1MDM3NTE3ZDE4MzFkZGI1MzY0NjIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJDb3JlL1dlYkNvcmUudmN4cHJvai9XZWJDb3JlLnZjeHByb2ouZmlsdGVycworKysgYi9Tb3Vy
Y2UvV2ViQ29yZS9XZWJDb3JlLnZjeHByb2ovV2ViQ29yZS52Y3hwcm9qLmZpbHRlcnMKQEAgLTMy
MDEsNiArMzIwMSw5IEBACiAgICAgPENsQ29tcGlsZSBJbmNsdWRlPSIuLlxkb21cTWVzc2FnZVBv
cnRDaGFubmVsLmNwcCI+CiAgICAgICA8RmlsdGVyPmRvbTwvRmlsdGVyPgogICAgIDwvQ2xDb21w
aWxlPgorICAgIDxDbENvbXBpbGUgSW5jbHVkZT0iLi5cZG9tXE1pY3JvVGFzay5jcHAiPgorICAg
ICAgPEZpbHRlcj5kb208L0ZpbHRlcj4KKyAgICA8L0NsQ29tcGlsZT4KICAgICA8Q2xDb21waWxl
IEluY2x1ZGU9Ii4uXGRvbVxNb3VzZUV2ZW50LmNwcCI+CiAgICAgICA8RmlsdGVyPmRvbTwvRmls
dGVyPgogICAgIDwvQ2xDb21waWxlPgpAQCAtMTAyNjksNiArMTAyNzIsOSBAQAogICAgIDxDbElu
Y2x1ZGUgSW5jbHVkZT0iLi5cZG9tXE1lc3NhZ2VQb3J0Q2hhbm5lbC5oIj4KICAgICAgIDxGaWx0
ZXI+ZG9tPC9GaWx0ZXI+CiAgICAgPC9DbEluY2x1ZGU+CisgICAgPENsSW5jbHVkZSBJbmNsdWRl
PSIuLlxkb21cTWljcm9UYXNrLmgiPgorICAgICAgPEZpbHRlcj5kb208L0ZpbHRlcj4KKyAgICA8
L0NsSW5jbHVkZT4KICAgICA8Q2xJbmNsdWRlIEluY2x1ZGU9Ii4uXGRvbVxNb3VzZUV2ZW50Lmgi
PgogICAgICAgPEZpbHRlcj5kb208L0ZpbHRlcj4KICAgICA8L0NsSW5jbHVkZT4KQEAgLTE1Mzk1
LDQgKzE1NDAxLDQgQEAKICAgICAgIDxGaWx0ZXI+cGxhdGZvcm1cd2luPC9GaWx0ZXI+CiAgICAg
PC9NQVNNPgogICA8L0l0ZW1Hcm91cD4KLTwvUHJvamVjdD4KXCBObyBuZXdsaW5lIGF0IGVuZCBv
ZiBmaWxlCis8L1Byb2plY3Q+CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9XZWJDb3JlLnZj
eHByb2ovV2ViQ29yZVRlc3RTdXBwb3J0LnZjeHByb2ogYi9Tb3VyY2UvV2ViQ29yZS9XZWJDb3Jl
LnZjeHByb2ovV2ViQ29yZVRlc3RTdXBwb3J0LnZjeHByb2oKaW5kZXggMmY4MTYzOWIxYTNmZjUy
MDZiMjFhZjBjZWIwZmMzOTMxM2VhZDg4MS4uNDMzZWFmMjc4ODFjZWNjOWFjY2Y2ODE4YTJjNzYw
ZGUxYWY1YzEzYyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvV2ViQ29yZS52Y3hwcm9qL1dl
YkNvcmVUZXN0U3VwcG9ydC52Y3hwcm9qCisrKyBiL1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUudmN4
cHJvai9XZWJDb3JlVGVzdFN1cHBvcnQudmN4cHJvagpAQCAtMjc1LDYgKzI3NSw3IEBACiAgICAg
ICA8Rm9yY2VkSW5jbHVkZUZpbGVzIENvbmRpdGlvbj0iJyQoQ29uZmlndXJhdGlvbil8JChQbGF0
Zm9ybSknPT0nUmVsZWFzZV9XaW5DYWlyb3x4NjQnIj4KICAgICAgIDwvRm9yY2VkSW5jbHVkZUZp
bGVzPgogICAgIDwvQ2xDb21waWxlPgorICAgIDxDbENvbXBpbGUgSW5jbHVkZT0iLi5cdGVzdGlu
Z1xNaWNyb1Rhc2tUZXN0LmNwcCIgLz4KICAgICA8Q2xDb21waWxlIEluY2x1ZGU9Ii4uXHRlc3Rp
bmdcTW9ja1BhZ2VPdmVybGF5Q2xpZW50LmNwcCIgLz4KICAgICA8Q2xDb21waWxlIEluY2x1ZGU9
Ii4uXHRlc3RpbmdcSW50ZXJuYWxTZXR0aW5ncy5jcHAiIC8+CiAgICAgPENsQ29tcGlsZSBJbmNs
dWRlPSIuLlx0ZXN0aW5nXGpzXFdlYkNvcmVUZXN0U3VwcG9ydC5jcHAiIC8+CkBAIC0yOTEsNiAr
MjkyLDcgQEAKICAgICA8Q2xJbmNsdWRlIEluY2x1ZGU9Ii4uXHRlc3RpbmdcanNcV2ViQ29yZVRl
c3RTdXBwb3J0UHJlZml4LmgiIC8+CiAgICAgPENsSW5jbHVkZSBJbmNsdWRlPSIuLlx0ZXN0aW5n
XE1hbGxvY1N0YXRpc3RpY3MuaCIgLz4KICAgICA8Q2xJbmNsdWRlIEluY2x1ZGU9Ii4uXHRlc3Rp
bmdcTWVtb3J5SW5mby5oIiAvPgorICAgIDxDbEluY2x1ZGUgSW5jbHVkZT0iLi5cdGVzdGluZ1xN
aWNyb1Rhc2tUZXN0LmgiIC8+CiAgICAgPENsSW5jbHVkZSBJbmNsdWRlPSIuLlx0ZXN0aW5nXE1v
Y2tDRE0uaCIgLz4KICAgICA8Q2xJbmNsdWRlIEluY2x1ZGU9Ii4uXHRlc3RpbmdcTW9ja1BhZ2VP
dmVybGF5Q2xpZW50LmgiIC8+CiAgICAgPENsSW5jbHVkZSBJbmNsdWRlPSIuLlx0ZXN0aW5nXFR5
cGVDb252ZXJzaW9ucy5oIiAvPgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvV2ViQ29yZS52
Y3hwcm9qL1dlYkNvcmVUZXN0U3VwcG9ydC52Y3hwcm9qLmZpbHRlcnMgYi9Tb3VyY2UvV2ViQ29y
ZS9XZWJDb3JlLnZjeHByb2ovV2ViQ29yZVRlc3RTdXBwb3J0LnZjeHByb2ouZmlsdGVycwppbmRl
eCA2NDg4NmE4Mjg5ZDA3ZjI4NGRlMTRkMjE1NjlmYWM1ODkwY2ViMGVkLi40MmNhNzI4ZWM2ODBi
MjM2Yjk4MzAzNGQzZjJlZmI4OGRjODA4NDA1IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9X
ZWJDb3JlLnZjeHByb2ovV2ViQ29yZVRlc3RTdXBwb3J0LnZjeHByb2ouZmlsdGVycworKysgYi9T
b3VyY2UvV2ViQ29yZS9XZWJDb3JlLnZjeHByb2ovV2ViQ29yZVRlc3RTdXBwb3J0LnZjeHByb2ou
ZmlsdGVycwpAQCAtMzksNiArMzksOSBAQAogICAgIDxDbENvbXBpbGUgSW5jbHVkZT0iLi5cdGVz
dGluZ1xqc1xXZWJDb3JlVGVzdFN1cHBvcnQuY3BwIj4KICAgICAgIDxGaWx0ZXI+dGVzdGluZzwv
RmlsdGVyPgogICAgIDwvQ2xDb21waWxlPgorICAgIDxDbENvbXBpbGUgSW5jbHVkZT0iLi5cdGVz
dGluZ1xNaWNyb1Rhc2tUZXN0LmNwcCI+CisgICAgICA8RmlsdGVyPnRlc3Rpbmc8L0ZpbHRlcj4K
KyAgICA8L0NsQ29tcGlsZT4KICAgICA8Q2xDb21waWxlIEluY2x1ZGU9Ii4uXHRlc3RpbmdcTW9j
a0NETS5jcHAiPgogICAgICAgPEZpbHRlcj50ZXN0aW5nPC9GaWx0ZXI+CiAgICAgPC9DbENvbXBp
bGU+CkBAIC05MCw2ICs5Myw5IEBACiAgICAgICA8RmlsdGVyPnRlc3Rpbmc8L0ZpbHRlcj4KICAg
ICA8L0NsSW5jbHVkZT4KICAgICA8Q2xJbmNsdWRlIEluY2x1ZGU9Ii4uXGNvbmZpZy5oIiAvPgor
ICAgIDxDbEluY2x1ZGUgSW5jbHVkZT0iLi5cdGVzdGluZ1xNaWNyb1Rhc2tUZXN0LmgiPgorICAg
ICAgPEZpbHRlcj50ZXN0aW5nPC9GaWx0ZXI+CisgICAgPC9DbEluY2x1ZGU+CiAgICAgPENsSW5j
bHVkZSBJbmNsdWRlPSIuLlx0ZXN0aW5nXE1vY2tDRE0uaCI+CiAgICAgICA8RmlsdGVyPnRlc3Rp
bmc8L0ZpbHRlcj4KICAgICA8L0NsSW5jbHVkZT4KQEAgLTEwMCw0ICsxMDYsNCBAQAogICAgICAg
PEZpbHRlcj50ZXN0aW5nPC9GaWx0ZXI+CiAgICAgPC9DbEluY2x1ZGU+CiAgIDwvSXRlbUdyb3Vw
PgotPC9Qcm9qZWN0PgpcIE5vIG5ld2xpbmUgYXQgZW5kIG9mIGZpbGUKKzwvUHJvamVjdD4KZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJv
aiBiL1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvagppbmRl
eCBjMGVkMTZiYTFmNzM1MDJlMGUyNDkzYWJhNDE3YTgxMWUxOWQ3YjNmLi5lZThkZjA4MDlkODg3
Mzg5MjU2YTAwODQ0YjRjNmVhZGJlYTlkNzE5IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9X
ZWJDb3JlLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2oKKysrIGIvU291cmNlL1dlYkNvcmUvV2Vi
Q29yZS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qCkBAIC0yMDgwLDYgKzIwODAsNyBAQAogCQk1
MzZENUEyMzE5M0U4RTBDMDBDRTRDQUIgLyogUGFyc2luZ1V0aWxpdGllcy5oIGluIEhlYWRlcnMg
Ki8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNTM2RDVBMjIxOTNFOEUwQzAwQ0U0
Q0FCIC8qIFBhcnNpbmdVdGlsaXRpZXMuaCAqLzsgfTsKIAkJNTM2RDVBMjUxOTNGNDBGQzAwQ0U0
Q0FCIC8qIFNvdXJjZVNpemVMaXN0LmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxk
RmlsZTsgZmlsZVJlZiA9IDUzNkQ1QTI0MTkzRjQwRkMwMENFNENBQiAvKiBTb3VyY2VTaXplTGlz
dC5jcHAgKi87IH07CiAJCTUzNkQ1QTI3MTkzRjQxMEIwMENFNENBQiAvKiBTb3VyY2VTaXplTGlz
dC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNTM2RDVB
MjYxOTNGNDEwQjAwQ0U0Q0FCIC8qIFNvdXJjZVNpemVMaXN0LmggKi87IHNldHRpbmdzID0ge0FU
VFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJNTNCODk1QUYxOURDN0VEOTAwOUNBQTkz
IC8qIE1pY3JvVGFzay5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxl
UmVmID0gNTNCODk1QUQxOURDN0MzNzAwOUNBQTkzIC8qIE1pY3JvVGFzay5oICovOyBzZXR0aW5n
cyA9IHtBVFRSSUJVVEVTID0gKFB1YmxpYywgKTsgfTsgfTsKIAkJNTNDODI5OEQxM0Q4RDkyNzAw
REUyREVCIC8qIFJlbmRlckZsZXhpYmxlQm94LmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBC
WEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDUzQzgyOThCMTNEOEQ5MjcwMERFMkRFQiAvKiBSZW5kZXJG
bGV4aWJsZUJveC5jcHAgKi87IH07CiAJCTUzQzgyOThFMTNEOEQ5MjcwMERFMkRFQiAvKiBSZW5k
ZXJGbGV4aWJsZUJveC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxl
UmVmID0gNTNDODI5OEMxM0Q4RDkyNzAwREUyREVCIC8qIFJlbmRlckZsZXhpYmxlQm94LmggKi87
IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKIAkJNTNFMjlFNUUx
NjdBOEExOTAwNTg2RDNEIC8qIEludGVybmFsU2V0dGluZ3NHZW5lcmF0ZWQuY3BwIGluIFNvdXJj
ZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNTNFMjlFNUMxNjdBOEExOTAw
NTg2RDNEIC8qIEludGVybmFsU2V0dGluZ3NHZW5lcmF0ZWQuY3BwICovOyB9OwpAQCAtNTYyMSw2
ICs1NjIyLDkgQEAKIAkJQ0EzQkY2N0UxMEQ5OUJBRTAwRTZDRTUzIC8qIFNjcm9sbEFuaW1hdG9y
LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBDQTNCRjY3
RDEwRDk5QkFFMDBFNkNFNTMgLyogU2Nyb2xsQW5pbWF0b3IuaCAqLzsgc2V0dGluZ3MgPSB7QVRU
UklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OwogCQlDQUU5RjkwRjE0NjQ0MUYwMDBDMjQ1QjAg
LyogQ1NTQXNwZWN0UmF0aW9WYWx1ZS5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWls
ZEZpbGU7IGZpbGVSZWYgPSBDQUU5RjkwRDE0NjQ0MUYwMDBDMjQ1QjAgLyogQ1NTQXNwZWN0UmF0
aW9WYWx1ZS5jcHAgKi87IH07CiAJCUNBRTlGOTEwMTQ2NDQxRjAwMEMyNDVCMCAvKiBDU1NBc3Bl
Y3RSYXRpb1ZhbHVlLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVS
ZWYgPSBDQUU5RjkwRTE0NjQ0MUYwMDBDMjQ1QjAgLyogQ1NTQXNwZWN0UmF0aW9WYWx1ZS5oICov
OyB9OworCQlDQjhDRjAxODFBOTM1OEQ0MDAwRDUxMEIgLyogTWljcm9UYXNrLmNwcCBpbiBTb3Vy
Y2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IENCOENGMDE1MUE5MzRCNDMw
MDBENTEwQiAvKiBNaWNyb1Rhc2suY3BwICovOyB9OworCQlDQjhDRjAxRDFBOTVERTQyMDAwRDUx
MEIgLyogTWljcm9UYXNrVGVzdC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxl
OyBmaWxlUmVmID0gQ0I4Q0YwMUMxQTk1REU0MjAwMEQ1MTBCIC8qIE1pY3JvVGFza1Rlc3QuaCAq
LzsgfTsKKwkJQ0I4Q0YwMUYxQTk1REU1OTAwMEQ1MTBCIC8qIE1pY3JvVGFza1Rlc3QuY3BwIGlu
IFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQ0I4Q0YwMUUxQTk1
REU1OTAwMEQ1MTBCIC8qIE1pY3JvVGFza1Rlc3QuY3BwICovOyB9OwogCQlDQ0MyQjUxNDE1RjYx
MzA2MDA0OENERDYgLyogRGV2aWNlQ2xpZW50LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhC
dWlsZEZpbGU7IGZpbGVSZWYgPSBDQ0MyQjUxMDE1RjYxMzA2MDA0OENERDYgLyogRGV2aWNlQ2xp
ZW50LmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKIAkJ
Q0NDMkI1MTUxNUY2MTMwNjAwNDhDREQ2IC8qIERldmljZUNvbnRyb2xsZXIuY3BwIGluIFNvdXJj
ZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQ0NDMkI1MTExNUY2MTMwNjAw
NDhDREQ2IC8qIERldmljZUNvbnRyb2xsZXIuY3BwICovOyB9OwogCQlDQ0MyQjUxNjE1RjYxMzA2
MDA0OENERDYgLyogRGV2aWNlQ29udHJvbGxlci5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJY
QnVpbGRGaWxlOyBmaWxlUmVmID0gQ0NDMkI1MTIxNUY2MTMwNjAwNDhDREQ2IC8qIERldmljZUNv
bnRyb2xsZXIuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9
OwpAQCAtOTIyOSw2ICs5MjMzLDcgQEAKIAkJNTM2RDVBMjIxOTNFOEUwQzAwQ0U0Q0FCIC8qIFBh
cnNpbmdVdGlsaXRpZXMuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rp
bmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBuYW1lID0gUGFyc2lu
Z1V0aWxpdGllcy5oOyBwYXRoID0gcGFyc2VyL1BhcnNpbmdVdGlsaXRpZXMuaDsgc291cmNlVHJl
ZSA9ICI8Z3JvdXA+IjsgfTsKIAkJNTM2RDVBMjQxOTNGNDBGQzAwQ0U0Q0FCIC8qIFNvdXJjZVNp
emVMaXN0LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0
OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IFNvdXJjZVNp
emVMaXN0LmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJNTM2RDVBMjYxOTNGNDEw
QjAwQ0U0Q0FCIC8qIFNvdXJjZVNpemVMaXN0LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5j
ZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsg
cGF0aCA9IFNvdXJjZVNpemVMaXN0Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTUz
Qjg5NUFEMTlEQzdDMzcwMDlDQUE5MyAvKiBNaWNyb1Rhc2suaCAqLyA9IHtpc2EgPSBQQlhGaWxl
UmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNv
ZGUuYy5oOyBwYXRoID0gTWljcm9UYXNrLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJ
CTUzQzgyOThCMTNEOEQ5MjcwMERFMkRFQiAvKiBSZW5kZXJGbGV4aWJsZUJveC5jcHAgKi8gPSB7
aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5
cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBSZW5kZXJGbGV4aWJsZUJveC5jcHA7IHNv
dXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTUzQzgyOThDMTNEOEQ5MjcwMERFMkRFQiAvKiBS
ZW5kZXJGbGV4aWJsZUJveC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNv
ZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBSZW5k
ZXJGbGV4aWJsZUJveC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQk1M0UyOUU1QzE2
N0E4QTE5MDA1ODZEM0QgLyogSW50ZXJuYWxTZXR0aW5nc0dlbmVyYXRlZC5jcHAgKi8gPSB7aXNh
ID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUg
PSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBJbnRlcm5hbFNldHRpbmdzR2VuZXJhdGVkLmNw
cDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKQEAgLTEzMDg3LDYgKzEzMDkyLDkgQEAKIAkJ
Q0EzQkY2N0QxMEQ5OUJBRTAwRTZDRTUzIC8qIFNjcm9sbEFuaW1hdG9yLmggKi8gPSB7aXNhID0g
UEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBz
b3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFNjcm9sbEFuaW1hdG9yLmg7IHNvdXJjZVRyZWUgPSAiPGdy
b3VwPiI7IH07CiAJCUNBRTlGOTBEMTQ2NDQxRjAwMEMyNDVCMCAvKiBDU1NBc3BlY3RSYXRpb1Zh
bHVlLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBs
YXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IENTU0FzcGVjdFJh
dGlvVmFsdWUuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQlDQUU5RjkwRTE0NjQ0
MUYwMDBDMjQ1QjAgLyogQ1NTQXNwZWN0UmF0aW9WYWx1ZS5oICovID0ge2lzYSA9IFBCWEZpbGVS
ZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29k
ZS5jLmg7IHBhdGggPSBDU1NBc3BlY3RSYXRpb1ZhbHVlLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3Vw
PiI7IH07CisJCUNCOENGMDE1MUE5MzRCNDMwMDBENTEwQiAvKiBNaWNyb1Rhc2suY3BwICovID0g
e2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVU
eXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gTWljcm9UYXNrLmNwcDsgc291cmNlVHJl
ZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQ0I4Q0YwMUMxQTk1REU0MjAwMEQ1MTBCIC8qIE1pY3JvVGFz
a1Rlc3QuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBs
YXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gTWljcm9UYXNrVGVzdC5o
OyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlDQjhDRjAxRTFBOTVERTU5MDAwRDUxMEIg
LyogTWljcm9UYXNrVGVzdC5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVu
Y29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGgg
PSBNaWNyb1Rhc2tUZXN0LmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJQ0NDMkI1
MTAxNUY2MTMwNjAwNDhDREQ2IC8qIERldmljZUNsaWVudC5oICovID0ge2lzYSA9IFBCWEZpbGVS
ZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29k
ZS5jLmg7IHBhdGggPSBEZXZpY2VDbGllbnQuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsK
IAkJQ0NDMkI1MTExNUY2MTMwNjAwNDhDREQ2IC8qIERldmljZUNvbnRyb2xsZXIuY3BwICovID0g
e2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVU
eXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gRGV2aWNlQ29udHJvbGxlci5jcHA7IHNv
dXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCUNDQzJCNTEyMTVGNjEzMDYwMDQ4Q0RENiAvKiBE
ZXZpY2VDb250cm9sbGVyLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29k
aW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IERldmlj
ZUNvbnRyb2xsZXIuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKQEAgLTE1NjcxLDYgKzE1
Njc5LDggQEAKIAkJCQlBN0JGN0VERDE0QzkxNzVBMDAxNDQ4OUQgLyogSW50ZXJuYWxTZXR0aW5n
cy5oICovLAogCQkJCUE3QkY3RURFMTRDOTE3NUEwMDE0NDg5RCAvKiBJbnRlcm5hbFNldHRpbmdz
LmlkbCAqLywKIAkJCQlBN0JFN0VERDE0QzkxNzVBMDAxNDQ4OUQgLyogTWFsbG9jU3RhdGlzdGlj
cy5oICovLAorCQkJCUNCOENGMDFFMUE5NURFNTkwMDBENTEwQiAvKiBNaWNyb1Rhc2tUZXN0LmNw
cCAqLywKKwkJCQlDQjhDRjAxQzFBOTVERTQyMDAwRDUxMEIgLyogTWljcm9UYXNrVGVzdC5oICov
LAogCQkJCUE3QkU3RURFMTRDOTE3NUEwMDE0NDg5RCAvKiBNYWxsb2NTdGF0aXN0aWNzLmlkbCAq
LywKIAkJCQlDRDUzOTNDQjE3NURDQ0U2MDBDMDcxMjMgLyogTWVtb3J5SW5mby5oICovLAogCQkJ
CUNENTM5M0NDMTc1RENDRTYwMEMwNzEyMyAvKiBNZW1vcnlJbmZvLmlkbCAqLywKQEAgLTIyODc5
LDYgKzIyODg5LDggQEAKIAkJCQlFMUFERUNCRDBFNzZBQ0YxMDA0QTFBNUUgLyogTWVzc2FnZVBv
cnQuaCAqLywKIAkJCQlFMUFERUNDNjBFNzZBRDFGMDA0QTFBNUUgLyogTWVzc2FnZVBvcnQuaWRs
ICovLAogCQkJCTQxQkY3MDBBMEZFODZGNDkwMDVFOERFQyAvKiBNZXNzYWdlUG9ydENoYW5uZWwu
aCAqLywKKwkJCQk1M0I4OTVBRDE5REM3QzM3MDA5Q0FBOTMgLyogTWljcm9UYXNrLmggKi8sCisJ
CQkJQ0I4Q0YwMTUxQTkzNEI0MzAwMEQ1MTBCIC8qIE1pY3JvVGFzay5jcHAgKi8sCiAJCQkJODUw
MzFCMkYwQTQ0RUZDNzAwRjk5MkUwIC8qIE1vdXNlRXZlbnQuY3BwICovLAogCQkJCTg1MDMxQjMw
MEE0NEVGQzcwMEY5OTJFMCAvKiBNb3VzZUV2ZW50LmggKi8sCiAJCQkJMTQxQjk0RTUwOUVDNDIy
MzAwMEU5NDEzIC8qIE1vdXNlRXZlbnQuaWRsICovLApAQCAtMjM0NDMsNiArMjM0NTUsNyBAQAog
CQkJCTUzRUQzRkRGMTY3QTg4RTcwMDY3NjJFNiAvKiBKU0ludGVybmFsU2V0dGluZ3NHZW5lcmF0
ZWQuaCBpbiBIZWFkZXJzICovLAogCQkJCUE3NDBCNTk1MTRDOTM1QUIwMEE3N0ZBNCAvKiBKU01h
bGxvY1N0YXRpc3RpY3MuaCBpbiBIZWFkZXJzICovLAogCQkJCUNENTM5M0Q0MTc1RTAxODYwMEMw
NzEyMyAvKiBKU01lbW9yeUluZm8uaCBpbiBIZWFkZXJzICovLAorCQkJCUNCOENGMDFEMUE5NURF
NDIwMDBENTEwQiAvKiBNaWNyb1Rhc2tUZXN0LmggaW4gSGVhZGVycyAqLywKIAkJCQlFQkY1MTIx
RDE2OTY0OTZDMDA1NkJEMjUgLyogSlNUeXBlQ29udmVyc2lvbnMuaCBpbiBIZWFkZXJzICovLAog
CQkJCUNEQzI2QjQxMTYwQThDQ0UwMDI2NzU3QiAvKiBNb2NrQ0RNLmggaW4gSGVhZGVycyAqLywK
IAkJCQkyRDk3RjA0ODE5REQ0MTQwMDAxRUU5QzMgLyogTW9ja1BhZ2VPdmVybGF5Q2xpZW50Lmgg
aW4gSGVhZGVycyAqLywKQEAgLTI1ODY2LDYgKzI1ODc5LDcgQEAKIAkJCQk1M0M4Mjk4RTEzRDhE
OTI3MDBERTJERUIgLyogUmVuZGVyRmxleGlibGVCb3guaCBpbiBIZWFkZXJzICovLAogCQkJCTUw
OENDQTRGMTNDRjEwNkIwMDMxNTFGMyAvKiBSZW5kZXJGbG93VGhyZWFkLmggaW4gSGVhZGVycyAq
LywKIAkJCQlBODcxREVEMzBBMTUzMEM3MDBCMTJBNjggLyogUmVuZGVyRnJhbWUuaCBpbiBIZWFk
ZXJzICovLAorCQkJCTUzQjg5NUFGMTlEQzdFRDkwMDlDQUE5MyAvKiBNaWNyb1Rhc2suaCBpbiBI
ZWFkZXJzICovLAogCQkJCTBGRDMwODBGMTE3Q0Y3RTcwMEE3OTFGNyAvKiBSZW5kZXJGcmFtZUJh
c2UuaCBpbiBIZWFkZXJzICovLAogCQkJCUE4NzFERUQxMEExNTMwQzcwMEIxMkE2OCAvKiBSZW5k
ZXJGcmFtZVNldC5oIGluIEhlYWRlcnMgKi8sCiAJCQkJQ0RFQTdDODQxMjc2MjMwNDAwQjg0NkRE
IC8qIFJlbmRlckZ1bGxTY3JlZW4uaCBpbiBIZWFkZXJzICovLApAQCAtMjcxOTMsNiArMjcyMDcs
NyBAQAogCQkJCTUzRTI5RTVFMTY3QThBMTkwMDU4NkQzRCAvKiBJbnRlcm5hbFNldHRpbmdzR2Vu
ZXJhdGVkLmNwcCBpbiBTb3VyY2VzICovLAogCQkJCTQxN0RBNzFEMTM3MzVERkEwMDdDNTdGQiAv
KiBKU0ludGVybmFscy5jcHAgaW4gU291cmNlcyAqLywKIAkJCQlBNzQwQjVBNzE0QzkzNUFGMDBB
NzdGQTQgLyogSlNJbnRlcm5hbFNldHRpbmdzLmNwcCBpbiBTb3VyY2VzICovLAorCQkJCUNCOENG
MDFGMUE5NURFNTkwMDBENTEwQiAvKiBNaWNyb1Rhc2tUZXN0LmNwcCBpbiBTb3VyY2VzICovLAog
CQkJCTUzRUQzRkRFMTY3QTg4RTcwMDY3NjJFNiAvKiBKU0ludGVybmFsU2V0dGluZ3NHZW5lcmF0
ZWQuY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJQTc0MEI1OTcxNEM5MzVBRjAwQTc3RkE0IC8qIEpT
TWFsbG9jU3RhdGlzdGljcy5jcHAgaW4gU291cmNlcyAqLywKIAkJCQlDRDUzOTNEMzE3NUUwMTg2
MDBDMDcxMjMgLyogSlNNZW1vcnlJbmZvLmNwcCBpbiBTb3VyY2VzICovLApAQCAtMjk4MjgsNiAr
Mjk4NDMsNyBAQAogCQkJCUIyMjI3QTkwMEQwMEJGMjIwMDcxQjc4MiAvKiBTVkdQb2x5Z29uRWxl
bWVudC5jcHAgaW4gU291cmNlcyAqLywKIAkJCQlCMjIyN0E5MzBEMDBCRjIyMDA3MUI3ODIgLyog
U1ZHUG9seWxpbmVFbGVtZW50LmNwcCBpbiBTb3VyY2VzICovLAogCQkJCUIyMjI3QTk2MEQwMEJG
MjIwMDcxQjc4MiAvKiBTVkdQcmVzZXJ2ZUFzcGVjdFJhdGlvLmNwcCBpbiBTb3VyY2VzICovLAor
CQkJCUNCOENGMDE4MUE5MzU4RDQwMDBENTEwQiAvKiBNaWNyb1Rhc2suY3BwIGluIFNvdXJjZXMg
Ki8sCiAJCQkJQjU0M0I4NTcxN0VCNzU4RjAwM0JFOTNBIC8qIFNWR1Byb3BlcnR5SW5mby5jcHAg
aW4gU291cmNlcyAqLywKIAkJCQlCMjIyN0E5OTBEMDBCRjIyMDA3MUI3ODIgLyogU1ZHUmFkaWFs
R3JhZGllbnRFbGVtZW50LmNwcCBpbiBTb3VyY2VzICovLAogCQkJCUIyMjI3QTlEMEQwMEJGMjIw
MDcxQjc4MiAvKiBTVkdSZWN0RWxlbWVudC5jcHAgaW4gU291cmNlcyAqLywKZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJDb3JlL2RvbS9Eb2N1bWVudC5oIGIvU291cmNlL1dlYkNvcmUvZG9tL0RvY3Vt
ZW50LmgKaW5kZXggMTU0NDRhNmUxOWViMjdjMWE2YTIzN2RhYjk4MjJjZTdkN2M2ODliMS4uM2Yx
MTMxOTQ5ZDI1ZmVlZjY4YTVlZDYwNjI1ZTEwYTFjNTU2ZGZmNiAxMDA2NDQKLS0tIGEvU291cmNl
L1dlYkNvcmUvZG9tL0RvY3VtZW50LmgKKysrIGIvU291cmNlL1dlYkNvcmUvZG9tL0RvY3VtZW50
LmgKQEAgLTEyNjIsNyArMTI2Miw3IEBAIHB1YmxpYzoKICAgICB2b2lkIGFkZERpc2FibGVkRmll
bGRzZXRFbGVtZW50KCkgeyBtX2Rpc2FibGVkRmllbGRzZXRFbGVtZW50c0NvdW50Kys7IH0KICAg
ICB2b2lkIHJlbW92ZURpc2FibGVkRmllbGRzZXRFbGVtZW50KCkgeyBBU1NFUlQobV9kaXNhYmxl
ZEZpZWxkc2V0RWxlbWVudHNDb3VudCk7IG1fZGlzYWJsZWRGaWVsZHNldEVsZW1lbnRzQ291bnQt
LTsgfQogCi0gICAgdmlydHVhbCB2b2lkIGFkZENvbnNvbGVNZXNzYWdlKE1lc3NhZ2VTb3VyY2Us
IE1lc3NhZ2VMZXZlbCwgY29uc3QgU3RyaW5nJiBtZXNzYWdlLCB1bnNpZ25lZCBsb25nIHJlcXVl
c3RJZGVudGlmaWVyID0gMCkgb3ZlcnJpZGUgZmluYWw7CisgICAgV0VCQ09SRV9FWFBPUlQgdmly
dHVhbCB2b2lkIGFkZENvbnNvbGVNZXNzYWdlKE1lc3NhZ2VTb3VyY2UsIE1lc3NhZ2VMZXZlbCwg
Y29uc3QgU3RyaW5nJiBtZXNzYWdlLCB1bnNpZ25lZCBsb25nIHJlcXVlc3RJZGVudGlmaWVyID0g
MCkgb3ZlcnJpZGUgZmluYWw7CiAKICAgICBXRUJDT1JFX0VYUE9SVCB2aXJ0dWFsIFNlY3VyaXR5
T3JpZ2luKiB0b3BPcmlnaW4oKSBjb25zdCBvdmVycmlkZSBmaW5hbDsKIApAQCAtMTI4OCw2ICsx
Mjg4LDcgQEAgcHVibGljOgogICAgIGJvb2wgaXNQbGF5aW5nQXVkaW8oKSBjb25zdCB7IHJldHVy
biBtX2lzUGxheWluZ0F1ZGlvOyB9CiAgICAgV0VCQ09SRV9FWFBPUlQgdm9pZCB1cGRhdGVJc1Bs
YXlpbmdBdWRpbygpOwogICAgIHZvaWQgcGFnZU11dGVkU3RhdGVEaWRDaGFuZ2UoKTsKKyAgICBX
ZWFrUHRyPERvY3VtZW50PiBjcmVhdGVXZWFrUHRyKCkgeyByZXR1cm4gbV93ZWFrRmFjdG9yeS5j
cmVhdGVXZWFrUHRyKCk7IH0KIAogcHJvdGVjdGVkOgogICAgIGVudW0gQ29uc3RydWN0aW9uRmxh
Z3MgeyBTeW50aGVzaXplZCA9IDEsIE5vblJlbmRlcmVkUGxhY2Vob2xkZXIgPSAxIDw8IDEgfTsK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2RvbS9NaWNyb1Rhc2suY3BwIGIvU291cmNlL1dl
YkNvcmUvZG9tL01pY3JvVGFzay5jcHAKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uYzc4NmUzNWE2Zjk3ZmZhNDdmOTYw
MmI3M2JjMzI1NmE3NmJjNmUyYgotLS0gL2Rldi9udWxsCisrKyBiL1NvdXJjZS9XZWJDb3JlL2Rv
bS9NaWNyb1Rhc2suY3BwCkBAIC0wLDAgKzEsNTIgQEAKKy8qCisgKiBDb3B5cmlnaHQgKEMpIDIw
MTQgWW9hdiBXZWlzcyAoeW9hdkB5b2F2LndzKQorICogQ29weXJpZ2h0IChDKSAyMDE1IEFrYW1h
aSBUZWNobm9sb2dpZXMgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICoKKyAqIFRoaXMgbGli
cmFyeSBpcyBmcmVlIHNvZnR3YXJlOyB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IKKyAq
IG1vZGlmeSBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBMaWJyYXJ5IEdlbmVyYWwgUHVi
bGljCisgKiBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieSB0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0
aW9uOyBlaXRoZXIKKyAqIHZlcnNpb24gMiBvZiB0aGUgTGljZW5zZSwgb3IgKGF0IHlvdXIgb3B0
aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KKyAqCisgKiBUaGlzIGxpYnJhcnkgaXMgZGlzdHJpYnV0
ZWQgaW4gdGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCwKKyAqIGJ1dCBXSVRIT1VUIEFO
WSBXQVJSQU5UWTsgd2l0aG91dCBldmVuIHRoZSBpbXBsaWVkIHdhcnJhbnR5IG9mCisgKiBNRVJD
SEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhl
IEdOVQorICogTGlicmFyeSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGZvciBtb3JlIGRldGFpbHMu
CisgKgorICogWW91IHNob3VsZCBoYXZlIHJlY2VpdmVkIGEgY29weSBvZiB0aGUgR05VIExpYnJh
cnkgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQorICogYWxvbmcgd2l0aCB0aGlzIGxpYnJhcnk7IHNl
ZSB0aGUgZmlsZSBDT1BZSU5HLkxJQi4gIElmIG5vdCwgd3JpdGUgdG8KKyAqIHRoZSBGcmVlIFNv
ZnR3YXJlIEZvdW5kYXRpb24sIEluYy4sIDUxIEZyYW5rbGluIFN0cmVldCwgRmlmdGggRmxvb3Is
CisgKiBCb3N0b24sIE1BIDAyMTEwLTEzMDEsIFVTQS4KKyAqCisgKi8KKworI2luY2x1ZGUgImNv
bmZpZy5oIgorI2luY2x1ZGUgIk1pY3JvVGFzay5oIgorCisjaW5jbHVkZSAiRG9jdW1lbnQuaCIK
KyNpbmNsdWRlIDx3dGYvdGV4dC9TdHJpbmdCdWlsZGVyLmg+CisKK25hbWVzcGFjZSBXZWJDb3Jl
IHsKKworTWljcm9UYXNrUXVldWUmIE1pY3JvVGFza1F1ZXVlOjpzaW5nbGV0b24oKQoreworICAg
IEFTU0VSVChpc01haW5UaHJlYWQoKSk7CisgICAgc3RhdGljIE5ldmVyRGVzdHJveWVkPE1pY3Jv
VGFza1F1ZXVlPiBxdWV1ZTsKKyAgICByZXR1cm4gcXVldWU7Cit9CisKK3ZvaWQgTWljcm9UYXNr
UXVldWU6OnF1ZXVlTWljcm9UYXNrKHN0ZDo6dW5pcXVlX3B0cjxNaWNyb1Rhc2s+IHRhc2spCit7
CisgICAgQVNTRVJUKGlzTWFpblRocmVhZCgpKTsKKyAgICBtX21pY3JvVGFza1F1ZXVlLmFwcGVu
ZChXVEY6Om1vdmUodGFzaykpOworfQorCit2b2lkIE1pY3JvVGFza1F1ZXVlOjpydW5NaWNyb1Rh
c2tzKCkKK3sKKyAgICBBU1NFUlQoaXNNYWluVGhyZWFkKCkpOworICAgIGZvciAoYXV0byYgdGFz
ayA6IG1fbWljcm9UYXNrUXVldWUpCisgICAgICAgIHRhc2stPnJ1bigpOworICAgIG1fbWljcm9U
YXNrUXVldWUuY2xlYXIoKTsKK30KKworfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQorCmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViQ29yZS9kb20vTWljcm9UYXNrLmggYi9Tb3VyY2UvV2ViQ29yZS9kb20v
TWljcm9UYXNrLmgKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uZmJkNjZhNWM1OTRjNzk1MTA5NmZhNTBjZDg4OWU2MDMz
YzJmZjNjMgotLS0gL2Rldi9udWxsCisrKyBiL1NvdXJjZS9XZWJDb3JlL2RvbS9NaWNyb1Rhc2su
aApAQCAtMCwwICsxLDU1IEBACisvKgorICogQ29weXJpZ2h0IChDKSAyMDE0IFlvYXYgV2Vpc3Mg
KHlvYXZAeW9hdi53cykKKyAqIENvcHlyaWdodCAoQykgMjAxNSBBa2FtYWkgVGVjaG5vbG9naWVz
IEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAqCisgKiBUaGlzIGxpYnJhcnkgaXMgZnJlZSBz
b2Z0d2FyZTsgeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29yCisgKiBtb2RpZnkgaXQgdW5k
ZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUgTGlicmFyeSBHZW5lcmFsIFB1YmxpYworICogTGljZW5z
ZSBhcyBwdWJsaXNoZWQgYnkgdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbjsgZWl0aGVyCisg
KiB2ZXJzaW9uIDIgb2YgdGhlIExpY2Vuc2UsIG9yIChhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVy
IHZlcnNpb24uCisgKgorICogVGhpcyBsaWJyYXJ5IGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3Bl
IHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCisgKiBidXQgV0lUSE9VVCBBTlkgV0FSUkFOVFk7IHdp
dGhvdXQgZXZlbiB0aGUgaW1wbGllZCB3YXJyYW50eSBvZgorICogTUVSQ0hBTlRBQklMSVRZIG9y
IEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFLiAgU2VlIHRoZSBHTlUKKyAqIExpYnJh
cnkgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBmb3IgbW9yZSBkZXRhaWxzLgorICoKKyAqIFlvdSBz
aG91bGQgaGF2ZSByZWNlaXZlZCBhIGNvcHkgb2YgdGhlIEdOVSBMaWJyYXJ5IEdlbmVyYWwgUHVi
bGljIExpY2Vuc2UKKyAqIGFsb25nIHdpdGggdGhpcyBsaWJyYXJ5OyBzZWUgdGhlIGZpbGUgQ09Q
WUlORy5MSUIuICBJZiBub3QsIHdyaXRlIHRvCisgKiB0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0
aW9uLCBJbmMuLCA1MSBGcmFua2xpbiBTdHJlZXQsIEZpZnRoIEZsb29yLAorICogQm9zdG9uLCBN
QSAwMjExMC0xMzAxLCBVU0EuCisgKgorICovCisKKyNpZm5kZWYgTWljcm9UYXNrX2gKKyNkZWZp
bmUgTWljcm9UYXNrX2gKKworI2luY2x1ZGUgPHd0Zi9OZXZlckRlc3Ryb3llZC5oPgorI2luY2x1
ZGUgPHd0Zi9WZWN0b3IuaD4KKworCituYW1lc3BhY2UgV2ViQ29yZSB7CisKK2NsYXNzIE1pY3Jv
VGFzayB7CitwdWJsaWM6CisgICAgdmlydHVhbCB2b2lkIHJ1bigpID0gMDsKKyAgICB2aXJ0dWFs
IH5NaWNyb1Rhc2soKSB7IH0KK307CisKK2NsYXNzIE1pY3JvVGFza1F1ZXVlIHsKKyAgICBmcmll
bmQgTmV2ZXJEZXN0cm95ZWQ8TWljcm9UYXNrUXVldWU+OworCitwdWJsaWM6CisgICAgV0VCQ09S
RV9FWFBPUlQgc3RhdGljIE1pY3JvVGFza1F1ZXVlJiBzaW5nbGV0b24oKTsKKyAgICB+TWljcm9U
YXNrUXVldWUoKSB7IH0KKworICAgIFdFQkNPUkVfRVhQT1JUIHZvaWQgcXVldWVNaWNyb1Rhc2so
c3RkOjp1bmlxdWVfcHRyPE1pY3JvVGFzaz4pOworCisgICAgdm9pZCBydW5NaWNyb1Rhc2tzKCk7
CisKK3ByaXZhdGU6CisgICAgTWljcm9UYXNrUXVldWUoKSB7IH0KKyAgICBWZWN0b3I8c3RkOjp1
bmlxdWVfcHRyPE1pY3JvVGFzaz4+IG1fbWljcm9UYXNrUXVldWU7Cit9OworCit9IC8vIG5hbWVz
cGFjZSBXZWJDb3JlCisKKyNlbmRpZiAvLyBNaWNyb1Rhc2tfaApkaWZmIC0tZ2l0IGEvU291cmNl
L1dlYkNvcmUvZG9tL1NjcmlwdFJ1bm5lci5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9kb20vU2NyaXB0
UnVubmVyLmNwcAppbmRleCBlZDk0ZGEzZTczZGIxMzAxNzhiOTllYTRiN2Y5MmI1YWMxOTgwOWQ2
Li5jNDZiNzhlMGZmZTNjODE4MzYwNDdlY2EzYTA3YWI5Y2VkMTNhZjA0IDEwMDY0NAotLS0gYS9T
b3VyY2UvV2ViQ29yZS9kb20vU2NyaXB0UnVubmVyLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9k
b20vU2NyaXB0UnVubmVyLmNwcApAQCAtMjgsNiArMjgsNyBAQAogCiAjaW5jbHVkZSAiQ2FjaGVk
U2NyaXB0LmgiCiAjaW5jbHVkZSAiRWxlbWVudC5oIgorI2luY2x1ZGUgIk1pY3JvVGFzay5oIgog
I2luY2x1ZGUgIlBlbmRpbmdTY3JpcHQuaCIKICNpbmNsdWRlICJTY3JpcHRFbGVtZW50LmgiCiAK
QEAgLTExNiw2ICsxMTcsNyBAQCB2b2lkIFNjcmlwdFJ1bm5lcjo6dGltZXJGaXJlZCgpCiAgICAg
ICAgIHRvU2NyaXB0RWxlbWVudElmUG9zc2libGUoZWxlbWVudC5nZXQoKSktPmV4ZWN1dGUoY2Fj
aGVkU2NyaXB0KTsKICAgICAgICAgbV9kb2N1bWVudC5kZWNyZW1lbnRMb2FkRXZlbnREZWxheUNv
dW50KCk7CiAgICAgfQorICAgIE1pY3JvVGFza1F1ZXVlOjpzaW5nbGV0b24oKS5ydW5NaWNyb1Rh
c2tzKCk7CiB9CiAKIH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvcGFyc2VyL0hU
TUxTY3JpcHRSdW5uZXIuY3BwIGIvU291cmNlL1dlYkNvcmUvaHRtbC9wYXJzZXIvSFRNTFNjcmlw
dFJ1bm5lci5jcHAKaW5kZXggNDFlNzI1ZjYwZGU4NjgxZjFjZjhkYjRiNWM5OGFkYjYyNjIyZjIx
Yi4uMjdkZDY3MzgyYTYwMGZjMDMzODUyZWM5MDI5MjAxNjkyZDE0M2RlZCAxMDA2NDQKLS0tIGEv
U291cmNlL1dlYkNvcmUvaHRtbC9wYXJzZXIvSFRNTFNjcmlwdFJ1bm5lci5jcHAKKysrIGIvU291
cmNlL1dlYkNvcmUvaHRtbC9wYXJzZXIvSFRNTFNjcmlwdFJ1bm5lci5jcHAKQEAgLTM2LDYgKzM2
LDcgQEAKICNpbmNsdWRlICJIVE1MTmFtZXMuaCIKICNpbmNsdWRlICJIVE1MU2NyaXB0UnVubmVy
SG9zdC5oIgogI2luY2x1ZGUgIklnbm9yZURlc3RydWN0aXZlV3JpdGVDb3VudEluY3JlbWVudGVy
LmgiCisjaW5jbHVkZSAiTWljcm9UYXNrLmgiCiAjaW5jbHVkZSAiTXV0YXRpb25PYnNlcnZlci5o
IgogI2luY2x1ZGUgIk5lc3RpbmdMZXZlbEluY3JlbWVudGVyLmgiCiAjaW5jbHVkZSAiTm90SW1w
bGVtZW50ZWQuaCIKQEAgLTEyOSw4ICsxMzAsMTAgQEAgdm9pZCBIVE1MU2NyaXB0UnVubmVyOjpl
eGVjdXRlUGVuZGluZ1NjcmlwdEFuZERpc3BhdGNoRXZlbnQoUGVuZGluZ1NjcmlwdCYgcGVuZGkK
ICAgICBpZiAocGVuZGluZ1NjcmlwdC5jYWNoZWRTY3JpcHQoKSAmJiBwZW5kaW5nU2NyaXB0Lndh
dGNoaW5nRm9yTG9hZCgpKQogICAgICAgICBzdG9wV2F0Y2hpbmdGb3JMb2FkKHBlbmRpbmdTY3Jp
cHQpOwogCi0gICAgaWYgKCFpc0V4ZWN1dGluZ1NjcmlwdCgpKQorICAgIGlmICghaXNFeGVjdXRp
bmdTY3JpcHQoKSkgewogICAgICAgICBNdXRhdGlvbk9ic2VydmVyOjpkZWxpdmVyQWxsTXV0YXRp
b25zKCk7CisgICAgICAgIE1pY3JvVGFza1F1ZXVlOjpzaW5nbGV0b24oKS5ydW5NaWNyb1Rhc2tz
KCk7CisgICAgfQogCiAgICAgLy8gQ2xlYXIgdGhlIHBlbmRpbmcgc2NyaXB0IGJlZm9yZSBwb3Nz
aWJsZSByZW50cmFuY3kgZnJvbSBleGVjdXRlU2NyaXB0KCkKICAgICBSZWZQdHI8RWxlbWVudD4g
ZWxlbWVudCA9IHBlbmRpbmdTY3JpcHQucmVsZWFzZUVsZW1lbnRBbmRDbGVhcigpOwpAQCAtMjMx
LDYgKzIzNCw4IEBAIGJvb2wgSFRNTFNjcmlwdFJ1bm5lcjo6ZXhlY3V0ZVNjcmlwdHNXYWl0aW5n
Rm9yUGFyc2luZygpCiAgICAgICAgIGlmICghbV9kb2N1bWVudCkKICAgICAgICAgICAgIHJldHVy
biBmYWxzZTsKICAgICB9CisgICAgaWYgKCFpc0V4ZWN1dGluZ1NjcmlwdCgpKQorICAgICAgICBN
aWNyb1Rhc2tRdWV1ZTo6c2luZ2xldG9uKCkucnVuTWljcm9UYXNrcygpOwogICAgIHJldHVybiB0
cnVlOwogfQogCkBAIC0yOTMsOCArMjk4LDEwIEBAIHZvaWQgSFRNTFNjcmlwdFJ1bm5lcjo6cnVu
U2NyaXB0KEVsZW1lbnQqIHNjcmlwdCwgY29uc3QgVGV4dFBvc2l0aW9uJiBzY3JpcHRTdGFyCiAg
ICAgICAgIC8vIGV2ZXJ5IHNjcmlwdCBlbGVtZW50LCBldmVuIGlmIGl0J3Mgbm90IHJlYWR5IHRv
IGV4ZWN1dGUgeWV0LiBUaGVyZSdzCiAgICAgICAgIC8vIHVuZm9ydHVhbnRlbHkgbm8gb2J2aW91
cyB3YXkgdG8gdGVsbCBpZiBwcmVwYXJlU2NyaXB0IGlzIGdvaW5nIHRvCiAgICAgICAgIC8vIGV4
ZWN1dGUgdGhlIHNjcmlwdCBmcm9tIG91dCBoZXJlLgotICAgICAgICBpZiAoIWlzRXhlY3V0aW5n
U2NyaXB0KCkpCisgICAgICAgIGlmICghaXNFeGVjdXRpbmdTY3JpcHQoKSkgewogICAgICAgICAg
ICAgTXV0YXRpb25PYnNlcnZlcjo6ZGVsaXZlckFsbE11dGF0aW9ucygpOworICAgICAgICAgICAg
TWljcm9UYXNrUXVldWU6OnNpbmdsZXRvbigpLnJ1bk1pY3JvVGFza3MoKTsKKyAgICAgICAgfQog
CiAgICAgICAgIEluc2VydGlvblBvaW50UmVjb3JkIGluc2VydGlvblBvaW50UmVjb3JkKG1faG9z
dC5pbnB1dFN0cmVhbSgpKTsKICAgICAgICAgTmVzdGluZ0xldmVsSW5jcmVtZW50ZXIgbmVzdGlu
Z0xldmVsSW5jcmVtZW50ZXIobV9zY3JpcHROZXN0aW5nTGV2ZWwpOwpkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYkNvcmUvdGVzdGluZy9JbnRlcm5hbHMuY3BwIGIvU291cmNlL1dlYkNvcmUvdGVzdGlu
Zy9JbnRlcm5hbHMuY3BwCmluZGV4IGRhNmU3MDkwYzYyNGYxNTU0YjM4N2YyMDFjOGVhNTc1Zjc0
YTg3ZTAuLjU3MTZmODRkMTNkZTFkNDY1ODQ0NzhmNDg4MGVjY2M2YTU2OGNhYmYgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9XZWJDb3JlL3Rlc3RpbmcvSW50ZXJuYWxzLmNwcAorKysgYi9Tb3VyY2UvV2Vi
Q29yZS90ZXN0aW5nL0ludGVybmFscy5jcHAKQEAgLTc5LDYgKzc5LDggQEAKICNpbmNsdWRlICJN
ZWRpYVNlc3Npb25NYW5hZ2VyLmgiCiAjaW5jbHVkZSAiTWVtb3J5Q2FjaGUuaCIKICNpbmNsdWRl
ICJNZW1vcnlJbmZvLmgiCisjaW5jbHVkZSAiTWljcm9UYXNrLmgiCisjaW5jbHVkZSAiTWljcm9U
YXNrVGVzdC5oIgogI2luY2x1ZGUgIk1vY2tQYWdlT3ZlcmxheUNsaWVudC5oIgogI2luY2x1ZGUg
IlBhZ2UuaCIKICNpbmNsdWRlICJQYWdlQ2FjaGUuaCIKQEAgLTI1MzIsNCArMjUzNCwxMCBAQCBS
ZWZQdHI8RmlsZT4gSW50ZXJuYWxzOjpjcmVhdGVGaWxlKGNvbnN0IFN0cmluZyYgcGF0aCkKICAg
ICByZXR1cm4gRmlsZTo6Y3JlYXRlKHVybC5maWxlU3lzdGVtUGF0aCgpKTsKIH0KIAordm9pZCBJ
bnRlcm5hbHM6OnF1ZXVlTWljcm9UYXNrKGludCB0ZXN0TnVtYmVyKQoreworICAgIGlmIChjb250
ZXh0RG9jdW1lbnQoKSkKKyAgICAgICAgTWljcm9UYXNrUXVldWU6OnNpbmdsZXRvbigpLnF1ZXVl
TWljcm9UYXNrKE1pY3JvVGFza1Rlc3Q6OmNyZWF0ZShjb250ZXh0RG9jdW1lbnQoKS0+Y3JlYXRl
V2Vha1B0cigpLCB0ZXN0TnVtYmVyKSk7Cit9CisKIH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJD
b3JlL3Rlc3RpbmcvSW50ZXJuYWxzLmggYi9Tb3VyY2UvV2ViQ29yZS90ZXN0aW5nL0ludGVybmFs
cy5oCmluZGV4IDFiOWI4ZDc4YzY5MmU4MzJkYjZiNmZkOWQ5NmY0ZWNkZjg4MGFhOTIuLmM4Nzhm
NTkwNmNjZWI1ODA5MDIzMGJkNjQxMjBhNjgwNmMwY2NlOWQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJDb3JlL3Rlc3RpbmcvSW50ZXJuYWxzLmgKKysrIGIvU291cmNlL1dlYkNvcmUvdGVzdGluZy9J
bnRlcm5hbHMuaApAQCAtMzY2LDYgKzM2Niw3IEBAIHB1YmxpYzoKICAgICBib29sIGlzUGFnZVBs
YXlpbmdBdWRpbygpOwogCiAgICAgUmVmUHRyPEZpbGU+IGNyZWF0ZUZpbGUoY29uc3QgU3RyaW5n
Jik7CisgICAgdm9pZCBxdWV1ZU1pY3JvVGFzayhpbnQpOwogCiBwcml2YXRlOgogICAgIGV4cGxp
Y2l0IEludGVybmFscyhEb2N1bWVudCopOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvdGVz
dGluZy9JbnRlcm5hbHMuaWRsIGIvU291cmNlL1dlYkNvcmUvdGVzdGluZy9JbnRlcm5hbHMuaWRs
CmluZGV4IDQ5NzcyNWNkMmI5MGNlOTFmNWIyNGU4YTdmNDFmZDQ1NTQwYWM2NmMuLjQwNmE5MmJk
ZmNjMDJjMTEzZjAxMWQ3MzU2OWU4N2Q1NjgxOTc1MDMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJD
b3JlL3Rlc3RpbmcvSW50ZXJuYWxzLmlkbAorKysgYi9Tb3VyY2UvV2ViQ29yZS90ZXN0aW5nL0lu
dGVybmFscy5pZGwKQEAgLTMyMiw0ICszMjIsNSBAQCBlbnVtIFBhZ2VPdmVybGF5VHlwZSB7CiAg
ICAgYm9vbGVhbiBpc1BhZ2VQbGF5aW5nQXVkaW8oKTsKICAgICAKICAgICBGaWxlIGNyZWF0ZUZp
bGUoRE9NU3RyaW5nIHVybCk7CisgICAgdm9pZCBxdWV1ZU1pY3JvVGFzayhsb25nIHRlc3ROdW1i
ZXIpOwogfTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3Rlc3RpbmcvTWljcm9UYXNrVGVz
dC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS90ZXN0aW5nL01pY3JvVGFza1Rlc3QuY3BwCm5ldyBmaWxl
IG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAuLjQxM2YyZmRhODNiY2Y3ZjRjY2FjNjZkYzA5Y2M1ZTZmM2Q4NGIxYWIKLS0tIC9kZXYvbnVs
bAorKysgYi9Tb3VyY2UvV2ViQ29yZS90ZXN0aW5nL01pY3JvVGFza1Rlc3QuY3BwCkBAIC0wLDAg
KzEsNDMgQEAKKy8qCisgKiBDb3B5cmlnaHQgKEMpIDIwMTUgQWthbWFpIFRlY2hub2xvZ2llcyBJ
bmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKgorICogVGhpcyBsaWJyYXJ5IGlzIGZyZWUgc29m
dHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vcgorICogbW9kaWZ5IGl0IHVuZGVy
IHRoZSB0ZXJtcyBvZiB0aGUgR05VIExpYnJhcnkgR2VuZXJhbCBQdWJsaWMKKyAqIExpY2Vuc2Ug
YXMgcHVibGlzaGVkIGJ5IHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb247IGVpdGhlcgorICog
dmVyc2lvbiAyIG9mIHRoZSBMaWNlbnNlLCBvciAoYXQgeW91ciBvcHRpb24pIGFueSBsYXRlciB2
ZXJzaW9uLgorICoKKyAqIFRoaXMgbGlicmFyeSBpcyBkaXN0cmlidXRlZCBpbiB0aGUgaG9wZSB0
aGF0IGl0IHdpbGwgYmUgdXNlZnVsLAorICogYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRo
b3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKKyAqIE1FUkNIQU5UQUJJTElUWSBvciBG
SVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRS4gIFNlZSB0aGUgR05VCisgKiBMaWJyYXJ5
IEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KKyAqCisgKiBZb3Ugc2hv
dWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgTGlicmFyeSBHZW5lcmFsIFB1Ymxp
YyBMaWNlbnNlCisgKiBhbG9uZyB3aXRoIHRoaXMgbGlicmFyeTsgc2VlIHRoZSBmaWxlIENPUFlJ
TkcuTElCLiAgSWYgbm90LCB3cml0ZSB0bworICogdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlv
biwgSW5jLiwgNTEgRnJhbmtsaW4gU3RyZWV0LCBGaWZ0aCBGbG9vciwKKyAqIEJvc3RvbiwgTUEg
MDIxMTAtMTMwMSwgVVNBLgorICoKKyAqLworCisjaW5jbHVkZSAiY29uZmlnLmgiCisjaW5jbHVk
ZSAiTWljcm9UYXNrVGVzdC5oIgorCisjaW5jbHVkZSAiRG9jdW1lbnQuaCIKKworbmFtZXNwYWNl
IFdlYkNvcmUgeworCit2b2lkIE1pY3JvVGFza1Rlc3Q6OnJ1bigpCit7CisgICAgU3RyaW5nQnVp
bGRlciBtZXNzYWdlOworICAgIG1lc3NhZ2UuYXBwZW5kKCJNaWNyb1Rhc2sgIyIpOworICAgIG1l
c3NhZ2UuYXBwZW5kKFN0cmluZzo6bnVtYmVyKG1fdGVzdE51bWJlcikpOworICAgIG1lc3NhZ2Uu
YXBwZW5kKCIgaGFzIHJ1bi4iKTsKKyAgICBpZiAobV9kb2N1bWVudCkKKyAgICAgICAgbV9kb2N1
bWVudC0+YWRkQ29uc29sZU1lc3NhZ2UoTWVzc2FnZVNvdXJjZTo6SlMsIE1lc3NhZ2VMZXZlbDo6
RGVidWcsIG1lc3NhZ2UudG9TdHJpbmcoKSk7Cit9CisKK3N0ZDo6dW5pcXVlX3B0cjxNaWNyb1Rh
c2tUZXN0PiBNaWNyb1Rhc2tUZXN0OjpjcmVhdGUoV2Vha1B0cjxEb2N1bWVudD4gZG9jdW1lbnQs
IGludCB0ZXN0TnVtYmVyKQoreworICAgIHJldHVybiBzdGQ6OnVuaXF1ZV9wdHI8TWljcm9UYXNr
VGVzdD4obmV3IE1pY3JvVGFza1Rlc3QoZG9jdW1lbnQsIHRlc3ROdW1iZXIpKTsKK30KKworfSAv
LyBuYW1lc3BhY2UgV2ViQ29yZQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvdGVzdGluZy9N
aWNyb1Rhc2tUZXN0LmggYi9Tb3VyY2UvV2ViQ29yZS90ZXN0aW5nL01pY3JvVGFza1Rlc3QuaApu
ZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwLi5hNzQyMmU4Njc4YmYyZjdmZmFmMzE5ZWJhZDgzMmQzMzcxNDBkMmUyCi0tLSAv
ZGV2L251bGwKKysrIGIvU291cmNlL1dlYkNvcmUvdGVzdGluZy9NaWNyb1Rhc2tUZXN0LmgKQEAg
LTAsMCArMSw0OSBAQAorLyoKKyAqIENvcHlyaWdodCAoQykgMjAxNSBBa2FtYWkgVGVjaG5vbG9n
aWVzIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAqCisgKiBUaGlzIGxpYnJhcnkgaXMgZnJl
ZSBzb2Z0d2FyZTsgeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29yCisgKiBtb2RpZnkgaXQg
dW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUgTGlicmFyeSBHZW5lcmFsIFB1YmxpYworICogTGlj
ZW5zZSBhcyBwdWJsaXNoZWQgYnkgdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbjsgZWl0aGVy
CisgKiB2ZXJzaW9uIDIgb2YgdGhlIExpY2Vuc2UsIG9yIChhdCB5b3VyIG9wdGlvbikgYW55IGxh
dGVyIHZlcnNpb24uCisgKgorICogVGhpcyBsaWJyYXJ5IGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBo
b3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCisgKiBidXQgV0lUSE9VVCBBTlkgV0FSUkFOVFk7
IHdpdGhvdXQgZXZlbiB0aGUgaW1wbGllZCB3YXJyYW50eSBvZgorICogTUVSQ0hBTlRBQklMSVRZ
IG9yIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFLiAgU2VlIHRoZSBHTlUKKyAqIExp
YnJhcnkgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBmb3IgbW9yZSBkZXRhaWxzLgorICoKKyAqIFlv
dSBzaG91bGQgaGF2ZSByZWNlaXZlZCBhIGNvcHkgb2YgdGhlIEdOVSBMaWJyYXJ5IEdlbmVyYWwg
UHVibGljIExpY2Vuc2UKKyAqIGFsb25nIHdpdGggdGhpcyBsaWJyYXJ5OyBzZWUgdGhlIGZpbGUg
Q09QWUlORy5MSUIuICBJZiBub3QsIHdyaXRlIHRvCisgKiB0aGUgRnJlZSBTb2Z0d2FyZSBGb3Vu
ZGF0aW9uLCBJbmMuLCA1MSBGcmFua2xpbiBTdHJlZXQsIEZpZnRoIEZsb29yLAorICogQm9zdG9u
LCBNQSAwMjExMC0xMzAxLCBVU0EuCisgKgorICovCisKKyNpZm5kZWYgTWljcm9UYXNrVGVzdF9o
CisjZGVmaW5lIE1pY3JvVGFza1Rlc3RfaAorCisjaW5jbHVkZSAiTWljcm9UYXNrLmgiCisjaW5j
bHVkZSA8d3RmL1dlYWtQdHIuaD4KKworbmFtZXNwYWNlIFdlYkNvcmUgeworCitjbGFzcyBEb2N1
bWVudDsKKworY2xhc3MgTWljcm9UYXNrVGVzdCA6IHB1YmxpYyBNaWNyb1Rhc2sgeworcHVibGlj
OgorICAgIHZpcnR1YWwgdm9pZCBydW4oKSBvdmVycmlkZTsKKyAgICBXRUJDT1JFX1RFU1RTVVBQ
T1JUX0VYUE9SVCBzdGF0aWMgc3RkOjp1bmlxdWVfcHRyPE1pY3JvVGFza1Rlc3Q+IGNyZWF0ZShX
ZWFrUHRyPERvY3VtZW50PiwgaW50IHRlc3ROdW1iZXIpOworCitwcml2YXRlOgorICAgIE1pY3Jv
VGFza1Rlc3QoV2Vha1B0cjxEb2N1bWVudD4gZG9jdW1lbnQsIGludCB0ZXN0TnVtYmVyKQorICAg
ICAgICA6IG1fZG9jdW1lbnQoZG9jdW1lbnQpCisgICAgICAgICwgbV90ZXN0TnVtYmVyKHRlc3RO
dW1iZXIpCisgICAgeworICAgIH0KKworICAgIFdlYWtQdHI8RG9jdW1lbnQ+IG1fZG9jdW1lbnQ7
CisgICAgaW50IG1fdGVzdE51bWJlcjsKK307CisKK30gLy8gbmFtZXNwYWNlIFdlYkNvcmUKKwor
I2VuZGlmCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cgYi9MYXlvdXRUZXN0cy9D
aGFuZ2VMb2cKaW5kZXggMzRhZGU1M2VmMDY0NWI2MDRkMzNhZmU3NzUwZTJkM2NiMzk5NGE3MC4u
MDE2MDkyNzk5NzdlYmUxOWQzYTE4OWEzYTIzZDc1NzE1ZTU0MmM0MyAxMDA2NDQKLS0tIGEvTGF5
b3V0VGVzdHMvQ2hhbmdlTG9nCisrKyBiL0xheW91dFRlc3RzL0NoYW5nZUxvZwpAQCAtMSwzICsx
LDIwIEBACisyMDE1LTAzLTAzICAgWW9hdiBXZWlzcyAgPHlvYXZAeW9hdi53cz4KKworICAgICAg
ICBBZGQgYSBtaWNyb3Rhc2sgYWJzdHJhY3Rpb24KKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtp
dC5vcmcvc2hvd19idWcuY2dpP2lkPTEzNzQ5NgorCisgICAgICAgIFJldmlld2VkIGJ5IFNhbSBX
ZWluaWcuCisKKyAgICAgICAgQWRkaW5nIGEgdGVzdCBmb3IgbWljcm90YXNrIGFic3RyYWN0aW9u
LgorICAgICAgICBBIHNpbWlsYXIgcGF0Y2ggd2FzIHJvbGxlZCBiYWNrIGluIHIxODA5MTQuCisK
KyAgICAgICAgKiBmYXN0L2RvbS9taWNyb3Rhc2stZGV0YWNoLmh0bWw6IEFkZGVkLgorICAgICAg
ICAqIGZhc3QvZG9tL21pY3JvdGFzay1kZXRhY2gtZXhwZWN0ZWQudHh0OiBBZGRlZC4KKyAgICAg
ICAgKiBmYXN0L2RvbS9taWNyb3Rhc2staW5vcmRlci5odG1sOiBBZGRlZC4KKyAgICAgICAgKiBm
YXN0L2RvbS9taWNyb3Rhc2staW5vcmRlci1leHBlY3RlZC50eHQ6IEFkZGVkLgorICAgICAgICAq
IGZhc3QvZG9tL21pY3JvdGFzay1yZXZlcnNlLmh0bWw6IEFkZGVkLgorICAgICAgICAqIGZhc3Qv
ZG9tL21pY3JvdGFzay1yZXZlcnNlLWV4cGVjdGVkLnR4dDogQWRkZWQuCisKIDIwMTUtMDMtMDIg
IE1hcmsgTGFtICA8bWFyay5sYW1AYXBwbGUuY29tPgogCiAgICAgICAgIEdhcmRlbmluZzogc2tp
cHBpbmcgaW5zcGVjdG9yL3RpbWVsaW5lIHRlc3RzIHNpbmNlIHRoZXkgYXJlIHN0aWxsIGZsYWt5
LgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9kb20vbWljcm90YXNrLWRldGFjaC1leHBl
Y3RlZC50eHQgYi9MYXlvdXRUZXN0cy9mYXN0L2RvbS9taWNyb3Rhc2stZGV0YWNoLWV4cGVjdGVk
LnR4dApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwLi4yOGNkMjk1NjhlMjBmNmVlNGRiZDlhNDFjYjZmODZjNDgyN2Y5MTYx
Ci0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC9kb20vbWljcm90YXNrLWRldGFj
aC1leHBlY3RlZC50eHQKQEAgLTAsMCArMSw5IEBACitDT05TT0xFIE1FU1NBR0U6IGxpbmUgMzE6
IEZpbmlzaGVkIHF1ZXVlaW5nIHRlc3RzLgorQ09OU09MRSBNRVNTQUdFOiBNaWNyb1Rhc2sgIzEg
aGFzIHJ1bi4KK0NPTlNPTEUgTUVTU0FHRTogTWljcm9UYXNrICMwIGhhcyBydW4uCisKKworLS0t
LS0tLS0KK0ZyYW1lOiAnZnJhbWUxJworLS0tLS0tLS0KKwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVz
dHMvZmFzdC9kb20vbWljcm90YXNrLWRldGFjaC5odG1sIGIvTGF5b3V0VGVzdHMvZmFzdC9kb20v
bWljcm90YXNrLWRldGFjaC5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjg5Nzc3MzI3ZWE1NzMxNTVmYmI2NmRh
MjZkMjc5MDQ1YmYxZmNhNGQKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9mYXN0L2Rv
bS9taWNyb3Rhc2stZGV0YWNoLmh0bWwKQEAgLTAsMCArMSwzNyBAQAorPCFET0NUWVBFIGh0bWw+
Cis8c2NyaXB0PgoraWYgKHdpbmRvdy50ZXN0UnVubmVyKSB7CisgICAgdGVzdFJ1bm5lci5kdW1w
QXNUZXh0KCk7CisgICAgdGVzdFJ1bm5lci5kdW1wQ2hpbGRGcmFtZXNBc1RleHQoKTsKKyAgICB0
ZXN0UnVubmVyLndhaXRVbnRpbERvbmUoKTsKK30KKzwvc2NyaXB0PgorPGJvZHk+Cis8aWZyYW1l
IGlkPSJmcmFtZTEiPjwvaWZyYW1lPgorPGlmcmFtZSBpZD0iZnJhbWUyIj48L2lmcmFtZT4KKzxz
Y3JpcHQ+CisKKyhmdW5jdGlvbigpIHsKKyAgICB2YXIgaWZyYW1lMSA9IGRvY3VtZW50LnF1ZXJ5
U2VsZWN0b3IoIiNmcmFtZTEiKS5jb250ZW50V2luZG93OworICAgIHZhciBpZnJhbWUyTm9kZSA9
IGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoIiNmcmFtZTIiKTsKKyAgICB2YXIgaWZyYW1lMiA9IGlm
cmFtZTJOb2RlLmNvbnRlbnRXaW5kb3c7CisKKyAgICBpZihpZnJhbWUyLmludGVybmFscykKKyAg
ICAgICAgaWZyYW1lMi5pbnRlcm5hbHMucXVldWVNaWNyb1Rhc2soMik7CisgICAgaWYoaWZyYW1l
MS5pbnRlcm5hbHMpCisgICAgICAgIGlmcmFtZTEuaW50ZXJuYWxzLnF1ZXVlTWljcm9UYXNrKDEp
OworICAgIGlmKHdpbmRvdy5pbnRlcm5hbHMpCisgICAgICAgIGludGVybmFscy5xdWV1ZU1pY3Jv
VGFzaygwKTsKKyAgICBkb2N1bWVudC5ib2R5LnJlbW92ZUNoaWxkKGlmcmFtZTJOb2RlKTsKK30o
KSk7CisKK2lmICh3aW5kb3cuR0NDb250cm9sbGVyKQorICAgIEdDQ29udHJvbGxlci5jb2xsZWN0
KCk7CisKK2NvbnNvbGUubG9nKCJGaW5pc2hlZCBxdWV1ZWluZyB0ZXN0cy4iKTsKK3JlcXVlc3RB
bmltYXRpb25GcmFtZShmdW5jdGlvbigpIHsKKyAgICBpZiAod2luZG93LnRlc3RSdW5uZXIpCisg
ICAgICAgIHRlc3RSdW5uZXIubm90aWZ5RG9uZSgpOworfSk7Cis8L3NjcmlwdD4KKzwvYm9keT4K
ZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3QvZG9tL21pY3JvdGFzay1pbm9yZGVyLWV4cGVj
dGVkLnR4dCBiL0xheW91dFRlc3RzL2Zhc3QvZG9tL21pY3JvdGFzay1pbm9yZGVyLWV4cGVjdGVk
LnR4dApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwLi4wMzgwYjk0YzdjODE4M2E2OTZlMWFiMjI2OTllYWNhZmNkM2RkMzcz
Ci0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC9kb20vbWljcm90YXNrLWlub3Jk
ZXItZXhwZWN0ZWQudHh0CkBAIC0wLDAgKzEsMTUgQEAKK0NPTlNPTEUgTUVTU0FHRTogbGluZSAy
MzogRmluaXNoZWQgcXVldWVpbmcgdGVzdHMuCitDT05TT0xFIE1FU1NBR0U6IE1pY3JvVGFzayAj
MiBoYXMgcnVuLgorQ09OU09MRSBNRVNTQUdFOiBNaWNyb1Rhc2sgIzEgaGFzIHJ1bi4KK0NPTlNP
TEUgTUVTU0FHRTogTWljcm9UYXNrICMwIGhhcyBydW4uCisgCisKKy0tLS0tLS0tCitGcmFtZTog
J2ZyYW1lMScKKy0tLS0tLS0tCisKKworLS0tLS0tLS0KK0ZyYW1lOiAnZnJhbWUyJworLS0tLS0t
LS0KKwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9kb20vbWljcm90YXNrLWlub3JkZXIu
aHRtbCBiL0xheW91dFRlc3RzL2Zhc3QvZG9tL21pY3JvdGFzay1pbm9yZGVyLmh0bWwKbmV3IGZp
bGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMC4uNzljOGUyZjc4OTgzYTNlNjg1ZWFjMTU1MDk1NjEwMTFlODYxZjlhOQotLS0gL2Rldi9u
dWxsCisrKyBiL0xheW91dFRlc3RzL2Zhc3QvZG9tL21pY3JvdGFzay1pbm9yZGVyLmh0bWwKQEAg
LTAsMCArMSwyOCBAQAorPCFET0NUWVBFIGh0bWw+Cis8c2NyaXB0PgoraWYgKHdpbmRvdy50ZXN0
UnVubmVyKSB7CisgICAgdGVzdFJ1bm5lci5kdW1wQXNUZXh0KCk7CisgICAgdGVzdFJ1bm5lci5k
dW1wQ2hpbGRGcmFtZXNBc1RleHQoKTsKKyAgICB0ZXN0UnVubmVyLndhaXRVbnRpbERvbmUoKTsK
K30KKzwvc2NyaXB0PgorPGlmcmFtZSBpZD0iZnJhbWUxIj48L2lmcmFtZT4KKzxpZnJhbWUgaWQ9
ImZyYW1lMiI+PC9pZnJhbWU+Cis8c2NyaXB0PgorCit2YXIgaWZyYW1lMSA9IGRvY3VtZW50LnF1
ZXJ5U2VsZWN0b3IoIiNmcmFtZTEiKS5jb250ZW50V2luZG93OwordmFyIGlmcmFtZTIgPSBkb2N1
bWVudC5xdWVyeVNlbGVjdG9yKCIjZnJhbWUyIikuY29udGVudFdpbmRvdzsKKworaWYoaWZyYW1l
Mi5pbnRlcm5hbHMpCisgICAgaWZyYW1lMi5pbnRlcm5hbHMucXVldWVNaWNyb1Rhc2soMik7Citp
ZihpZnJhbWUxLmludGVybmFscykKKyAgICBpZnJhbWUxLmludGVybmFscy5xdWV1ZU1pY3JvVGFz
aygxKTsKK2lmKHdpbmRvdy5pbnRlcm5hbHMpCisgICAgaW50ZXJuYWxzLnF1ZXVlTWljcm9UYXNr
KDApOworCitjb25zb2xlLmxvZygiRmluaXNoZWQgcXVldWVpbmcgdGVzdHMuIik7CityZXF1ZXN0
QW5pbWF0aW9uRnJhbWUoZnVuY3Rpb24oKSB7CisgICAgaWYgKHdpbmRvdy50ZXN0UnVubmVyKQor
ICAgICAgICB0ZXN0UnVubmVyLm5vdGlmeURvbmUoKTsKK30pOworPC9zY3JpcHQ+CmRpZmYgLS1n
aXQgYS9MYXlvdXRUZXN0cy9mYXN0L2RvbS9taWNyb3Rhc2stcmV2ZXJzZS1leHBlY3RlZC50eHQg
Yi9MYXlvdXRUZXN0cy9mYXN0L2RvbS9taWNyb3Rhc2stcmV2ZXJzZS1leHBlY3RlZC50eHQKbmV3
IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMC4uMmVjODhiYjU0ZjBiYWZmZjJiNDk0ZTIyMzNhZmVlNDM1ODM2N2EzYQotLS0gL2Rl
di9udWxsCisrKyBiL0xheW91dFRlc3RzL2Zhc3QvZG9tL21pY3JvdGFzay1yZXZlcnNlLWV4cGVj
dGVkLnR4dApAQCAtMCwwICsxLDE1IEBACitDT05TT0xFIE1FU1NBR0U6IGxpbmUgMjM6IEZpbmlz
aGVkIHF1ZXVlaW5nIHRlc3RzLgorQ09OU09MRSBNRVNTQUdFOiBNaWNyb1Rhc2sgIzAgaGFzIHJ1
bi4KK0NPTlNPTEUgTUVTU0FHRTogTWljcm9UYXNrICMxIGhhcyBydW4uCitDT05TT0xFIE1FU1NB
R0U6IE1pY3JvVGFzayAjMiBoYXMgcnVuLgorIAorCistLS0tLS0tLQorRnJhbWU6ICdmcmFtZTEn
CistLS0tLS0tLQorCisKKy0tLS0tLS0tCitGcmFtZTogJ2ZyYW1lMicKKy0tLS0tLS0tCisKZGlm
ZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3QvZG9tL21pY3JvdGFzay1yZXZlcnNlLmh0bWwgYi9M
YXlvdXRUZXN0cy9mYXN0L2RvbS9taWNyb3Rhc2stcmV2ZXJzZS5odG1sCm5ldyBmaWxlIG1vZGUg
MTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmIx
YjRlNzc4NjIxN2JhZDM2Y2RmOTA0OWI5YzNlOGY0ZmEyNzJiZDAKLS0tIC9kZXYvbnVsbAorKysg
Yi9MYXlvdXRUZXN0cy9mYXN0L2RvbS9taWNyb3Rhc2stcmV2ZXJzZS5odG1sCkBAIC0wLDAgKzEs
MjggQEAKKzwhRE9DVFlQRSBodG1sPgorPHNjcmlwdD4KK2lmICh3aW5kb3cudGVzdFJ1bm5lcikg
eworICAgIHRlc3RSdW5uZXIuZHVtcEFzVGV4dCgpOworICAgIHRlc3RSdW5uZXIuZHVtcENoaWxk
RnJhbWVzQXNUZXh0KCk7CisgICAgdGVzdFJ1bm5lci53YWl0VW50aWxEb25lKCk7Cit9Cis8L3Nj
cmlwdD4KKzxpZnJhbWUgaWQ9ImZyYW1lMSI+PC9pZnJhbWU+Cis8aWZyYW1lIGlkPSJmcmFtZTIi
PjwvaWZyYW1lPgorPHNjcmlwdD4KKwordmFyIGlmcmFtZTEgPSBkb2N1bWVudC5xdWVyeVNlbGVj
dG9yKCIjZnJhbWUxIikuY29udGVudFdpbmRvdzsKK3ZhciBpZnJhbWUyID0gZG9jdW1lbnQucXVl
cnlTZWxlY3RvcigiI2ZyYW1lMiIpLmNvbnRlbnRXaW5kb3c7CisKK2lmKHdpbmRvdy5pbnRlcm5h
bHMpCisgICAgaW50ZXJuYWxzLnF1ZXVlTWljcm9UYXNrKDApOworaWYoaWZyYW1lMS5pbnRlcm5h
bHMpCisgICAgaWZyYW1lMS5pbnRlcm5hbHMucXVldWVNaWNyb1Rhc2soMSk7CitpZihpZnJhbWUy
LmludGVybmFscykKKyAgICBpZnJhbWUyLmludGVybmFscy5xdWV1ZU1pY3JvVGFzaygyKTsKKwor
Y29uc29sZS5sb2coIkZpbmlzaGVkIHF1ZXVlaW5nIHRlc3RzLiIpOworcmVxdWVzdEFuaW1hdGlv
bkZyYW1lKGZ1bmN0aW9uKCkgeworICAgIGlmICh3aW5kb3cudGVzdFJ1bm5lcikKKyAgICAgICAg
dGVzdFJ1bm5lci5ub3RpZnlEb25lKCk7Cit9KTsKKzwvc2NyaXB0Pgo=
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>247843</attachid>
            <date>2015-03-03 23:04:53 -0800</date>
            <delta_ts>2015-03-03 23:55:52 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-137496-20150303230434.patch</filename>
            <type>text/plain</type>
            <size>36655</size>
            <attacher name="Yoav Weiss">yoav</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTgwOTI4CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggY2RjZGRiNTJjZjBiNTk4
ZWI1ZjhiYzJhNDMyMDM1ZjJiNDQzZTg4NS4uMzVkZDFhODhiM2Q1MjRkYWY0ZDFkZGFmN2YzOWFm
NGVjMjZjMTE0NiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDQ4IEBACisyMDE1LTAzLTAzICBZb2F2
IFdlaXNzICA8eW9hdkB5b2F2LndzPgorCisgICAgICAgIEFkZCBhIG1pY3JvdGFzayBhYnN0cmFj
dGlvbgorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTM3
NDk2CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgU2FtIFdlaW5pZy4KKworICAgICAgICBUaGlzIHBh
dGNoIGFkZHMgYSBtaWNyb3Rhc2sgYWJzdHJhY3Rpb246IGh0dHBzOi8vaHRtbC5zcGVjLndoYXR3
Zy5vcmcvbXVsdGlwYWdlL3dlYmFwcGFwaXMuaHRtbCNtaWNyb3Rhc2sKKyAgICAgICAgVGhhdCBh
YnN0cmFjdGlvbiBpcyByZXF1aXJlZCBpbiBvcmRlciB0byBlbmFibGUgYXN5bmMgbG9hZGluZyBv
ZiBpbWFnZXMsCisgICAgICAgIHdoaWNoIGlzIGluIHR1cm4gcmVxdWlyZWQgdG8gZW5hYmxlIHN1
cHBvcnQgZm9yIHRoZSBwaWN0dXJlIGVsZW1lbnQsIGFzIHdlbGwgYXMKKyAgICAgICAgdG8gbWFr
ZSBzdXJlIHRoYXQgdGhlIG9yZGVyIG9mIHByb3BlcnRpZXMgc2V0IG9uIEhUTUxJbWFnZUVsZW1l
bnQgaGFzIG5vIGltcGxpY2F0aW9ucy4KKworICAgICAgICBBIHNpbWlsYXIgcGF0Y2ggd2FzIHJv
bGxlZCBiYWNrIGluIHIxODA5MTQuIFRoaXMgcGF0Y2ggaXMgYW4gaW1wcm92ZWQgdmVyc2lvbi4K
KworICAgICAgICAqIFdlYkNvcmUudmN4cHJvai9XZWJDb3JlLnZjeHByb2o6IEFkZCBNaWNyb1Rh
c2sue2gsY3BwfSB0byB0aGUgcHJvamVjdC4KKyAgICAgICAgKiBXZWJDb3JlLnZjeHByb2ovV2Vi
Q29yZVRlc3RTdXBwb3J0LnZjeHByb2o6IEFkZCBNaWNyb1Rhc2tUZXN0LntoLGNwcH0gdG8gdGhl
IHByb2plY3QuCisgICAgICAgICogV2ViQ29yZS52Y3hwcm9qL1dlYkNvcmUudmN4cHJvai5maWx0
ZXJzOiBBZGQgTWljcm9UYXNrLntoLGNwcH0gdG8gdGhlIHByb2plY3QuCisgICAgICAgICogV2Vi
Q29yZS52Y3hwcm9qL1dlYkNvcmVUZXN0U3VwcG9ydC52Y3hwcm9qLmZpbHRlcnM6IEFkZCBNaWNy
b1Rhc2tUZXN0LntoLGNwcH0gdG8gdGhlIHByb2plY3QuCisgICAgICAgICogV2ViQ29yZS54Y29k
ZXByb2ovcHJvamVjdC5wYnhwcm9qOiBBZGQgTWljcm9UYXNreyxUZXN0fS57aCxjcHB9IHRvIHRo
ZSBwcm9qZWN0LgorICAgICAgICAqIGRvbS9Eb2N1bWVudC5oOiBBZGQgV0VCQ09SRV9FWFBPUlQg
dG8gYWRkQ29uc29sZU1lc3NhZ2UsIHNvIGl0IGNhbiBiZSB1c2VkIGluIE1pY3JvVGFza1Rlc3Qg
dGhhdCdzIGluIFdlYkNvcmVUZXN0U3VwcG9ydC4uCisgICAgICAgICogZG9tL01pY3JvVGFzay5o
OiBBZGQgYSBNaWNyb1Rhc2sgaW50ZXJmYWNlIGNsYXNzLiBBZGQgYSBNaWNyb1Rhc2tRdWV1ZSBz
aW5nbGV0b24uCisgICAgICAgIChXZWJDb3JlOjpNaWNyb1Rhc2s6On5NaWNyb1Rhc2spOgorICAg
ICAgICAoV2ViQ29yZTo6TWljcm9UYXNrOjpydW4pOiBSdW4gdGhlIG1pY3JvdGFzay4KKyAgICAg
ICAgKiBkb20vTWljcm9UYXNrLmNwcDogSW1wbGVtZW50IHRoZSBNaWNyb1Rhc2tRdWV1ZSBzaW5n
bGV0b24uCisgICAgICAgIChXZWJDb3JlOjpNaWNyb1Rhc2tRdWV1ZTo6c2luZ2xldG9uKTogR2V0
IGEgc2luZ2xldG9uIGluc3RhbmNlIG9mIE1pY3JvVGFza1F1ZXVlLgorICAgICAgICAoV2ViQ29y
ZTo6TWljcm9UYXNrUXVldWU6OnF1ZXVlTWljcm9UYXNrKTogQWRkIGEgbWljcm90YXNrIHRvIHRo
ZSBxdWV1ZS4KKyAgICAgICAgKFdlYkNvcmU6Ok1pY3JvVGFza1F1ZXVlOjpydW5NaWNyb1Rhc2tz
KTogUnVuIGFsbCB0aGUgbWljcm90YXNrcyBpbiB0aGUgcXVldWUgYW5kIGNsZWFyIGl0LgorICAg
ICAgICAqIGRvbS9TY3JpcHRSdW5uZXIuY3BwOiBUcmlnZ2VyIHJ1bm5pbmcgb2YgYWxsIG1pY3Jv
dGFza3MgaW4gcXVldWUuCisgICAgICAgIChXZWJDb3JlOjpTY3JpcHRSdW5uZXI6OnRpbWVyRmly
ZWQpOgorICAgICAgICAqIGh0bWwvcGFyc2VyL0hUTUxTY3JpcHRSdW5uZXIuY3BwOiBUcmlnZ2Vy
IHJ1bm5pbmcgb2YgYWxsIG1pY3JvdGFza3MgaW4gcXVldWUuCisgICAgICAgIChXZWJDb3JlOjpI
VE1MU2NyaXB0UnVubmVyOjpleGVjdXRlUGVuZGluZ1NjcmlwdEFuZERpc3BhdGNoRXZlbnQpOgor
ICAgICAgICAoV2ViQ29yZTo6SFRNTFNjcmlwdFJ1bm5lcjo6ZXhlY3V0ZVNjcmlwdHNXYWl0aW5n
Rm9yUGFyc2luZyk6CisgICAgICAgIChXZWJDb3JlOjpIVE1MU2NyaXB0UnVubmVyOjpydW5TY3Jp
cHQpOgorICAgICAgICAqIHRlc3RpbmcvSW50ZXJuYWxzLmNwcDogQWRkIGEgbWV0aG9kIHRvIHF1
ZXVlIGEgdGVzdCBtaWNyb3Rhc2suCisgICAgICAgIChXZWJDb3JlOjpJbnRlcm5hbHM6OnF1ZXVl
TWljcm9UYXNrKToKKyAgICAgICAgKiB0ZXN0aW5nL0ludGVybmFscy5oOiBBZGQgYSBtZXRob2Qg
dG8gcXVldWUgYSB0ZXN0IG1pY3JvdGFzay4KKyAgICAgICAgKFdlYkNvcmU6OkludGVybmFsczo6
cXVldWVNaWNyb1Rhc2spOgorICAgICAgICAqIHRlc3RpbmcvSW50ZXJuYWxzLmlkbDogRXhwb3Nl
IHRlc3QgbWljcm90YXNrIHF1ZXVlaW5nIHRvIHRlc3QgSlMuCisgICAgICAgICogdGVzdGluZy9N
aWNyb1Rhc2tUZXN0LmNwcDogQWRkIGEgdGVzdCBjbGFzcyB0aGF0IGltcGxlbWVudHMgYSBtaWNy
b3Rhc2sgYW5kIHByaW50cyB0byB0aGUgY29uc29sZSB3aGVuIGl0IHJ1bnMuCisgICAgICAgIChX
ZWJDb3JlOjpNaWNyb1Rhc2tUZXN0OjpydW4pOiBSdW4gdGhlIG1pY3JvdGFzaworICAgICAgICAo
V2ViQ29yZTo6TWljcm9UYXNrVGVzdDo6Y3JlYXRlKTogQ3JlYXRlIGEgdGVzdCBtaWNyb3Rhc2su
CisgICAgICAgICogdGVzdGluZy9NaWNyb1Rhc2tUZXN0Lmg6IEFkZCBhIHRlc3QgY2xhc3MgdGhh
dCBpbXBsZW1lbnRzIGEgbWljcm90YXNrLgorICAgICAgICAoV2ViQ29yZTo6TWljcm9UYXNrVGVz
dDo6cnVuKToKKyAgICAgICAgKFdlYkNvcmU6Ok1pY3JvVGFza1Rlc3Q6OmNyZWF0ZSk6CisKIDIw
MTUtMDMtMDIgIENhcmxvcyBHYXJjaWEgQ2FtcG9zICA8Y2dhcmNpYUBpZ2FsaWEuY29tPgogCiAg
ICAgICAgIFtTT1VQXSBVc2UgU291cE1lc3NhZ2U6OnN0YXJ0aW5nIGluc3RlYWQgb2YgU291cFNl
c3Npb246OnJlcXVlc3Qtc3RhcnRlZApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvQ01ha2VM
aXN0cy50eHQgYi9Tb3VyY2UvV2ViQ29yZS9DTWFrZUxpc3RzLnR4dAppbmRleCAzMjg5OGM3ZDBl
ZDQwY2UwYTBjYTNmODExZjdlMGE1MjA5OWU2YTc1Li43NTM0NjRiNTc0Yjc2MzZiYzNkNzU1YzQ0
YzkxZWZlMmY3OGEzYTgzIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9DTWFrZUxpc3RzLnR4
dAorKysgYi9Tb3VyY2UvV2ViQ29yZS9DTWFrZUxpc3RzLnR4dApAQCAtMTM3MCw2ICsxMzcwLDcg
QEAgc2V0KFdlYkNvcmVfU09VUkNFUwogICAgIGRvbS9NZXNzYWdlRXZlbnQuY3BwCiAgICAgZG9t
L01lc3NhZ2VQb3J0LmNwcAogICAgIGRvbS9NZXNzYWdlUG9ydENoYW5uZWwuY3BwCisgICAgZG9t
L01pY3JvVGFzay5jcHAKICAgICBkb20vTW91c2VFdmVudC5jcHAKICAgICBkb20vTW91c2VSZWxh
dGVkRXZlbnQuY3BwCiAgICAgZG9tL011dGF0aW9uRXZlbnQuY3BwCkBAIC0zMTU0LDYgKzMxNTUs
NyBAQCBzZXQoV2ViQ29yZVRlc3RTdXBwb3J0X1NPVVJDRVMKICAgICB0ZXN0aW5nL0ludGVybmFs
U2V0dGluZ3MuY3BwCiAgICAgdGVzdGluZy9JbnRlcm5hbHMuY3BwCiAKKyAgICB0ZXN0aW5nL01p
Y3JvVGFza1Rlc3QuY3BwCiAgICAgdGVzdGluZy9Nb2NrUGFnZU92ZXJsYXlDbGllbnQuY3BwCiAK
ICAgICB0ZXN0aW5nL2pzL1dlYkNvcmVUZXN0U3VwcG9ydC5jcHAKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJDb3JlL1dlYkNvcmUudmN4cHJvai9XZWJDb3JlLnZjeHByb2ogYi9Tb3VyY2UvV2ViQ29y
ZS9XZWJDb3JlLnZjeHByb2ovV2ViQ29yZS52Y3hwcm9qCmluZGV4IDA0NDJiZjMxYTUwZjJmNDg2
YzQxOTY0MjI4NzRhMjI2ODc2OTI5YzkuLjMxMGRiYjc3MjcwNmI1MTBmZDcxNWU4MDJmNjNlMmE0
MTRhNzIzMzMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUudmN4cHJvai9XZWJD
b3JlLnZjeHByb2oKKysrIGIvU291cmNlL1dlYkNvcmUvV2ViQ29yZS52Y3hwcm9qL1dlYkNvcmUu
dmN4cHJvagpAQCAtMTM0MzQsNiArMTM0MzQsNyBAQAogICAgICAgPEV4Y2x1ZGVkRnJvbUJ1aWxk
IENvbmRpdGlvbj0iJyQoQ29uZmlndXJhdGlvbil8JChQbGF0Zm9ybSknPT0nUHJvZHVjdGlvbnxX
aW4zMiciPnRydWU8L0V4Y2x1ZGVkRnJvbUJ1aWxkPgogICAgICAgPEV4Y2x1ZGVkRnJvbUJ1aWxk
IENvbmRpdGlvbj0iJyQoQ29uZmlndXJhdGlvbil8JChQbGF0Zm9ybSknPT0nUHJvZHVjdGlvbnx4
NjQnIj50cnVlPC9FeGNsdWRlZEZyb21CdWlsZD4KICAgICA8L0NsQ29tcGlsZT4KKyAgICA8Q2xD
b21waWxlIEluY2x1ZGU9Ii4uXGRvbVxNaWNyb1Rhc2suY3BwIiAvPgogICAgIDxDbENvbXBpbGUg
SW5jbHVkZT0iLi5cZG9tXE1vdXNlRXZlbnQuY3BwIj4KICAgICAgIDxFeGNsdWRlZEZyb21CdWls
ZCBDb25kaXRpb249IickKENvbmZpZ3VyYXRpb24pfCQoUGxhdGZvcm0pJz09J0RlYnVnfFdpbjMy
JyI+dHJ1ZTwvRXhjbHVkZWRGcm9tQnVpbGQ+CiAgICAgICA8RXhjbHVkZWRGcm9tQnVpbGQgQ29u
ZGl0aW9uPSInJChDb25maWd1cmF0aW9uKXwkKFBsYXRmb3JtKSc9PSdEZWJ1Z3x4NjQnIj50cnVl
PC9FeGNsdWRlZEZyb21CdWlsZD4KQEAgLTIwNjI0LDYgKzIwNjI1LDcgQEAKICAgICA8Q2xJbmNs
dWRlIEluY2x1ZGU9Ii4uXGRvbVxNZXNzYWdlRXZlbnQuaCIgLz4KICAgICA8Q2xJbmNsdWRlIElu
Y2x1ZGU9Ii4uXGRvbVxNZXNzYWdlUG9ydC5oIiAvPgogICAgIDxDbEluY2x1ZGUgSW5jbHVkZT0i
Li5cZG9tXE1lc3NhZ2VQb3J0Q2hhbm5lbC5oIiAvPgorICAgIDxDbEluY2x1ZGUgSW5jbHVkZT0i
Li5cZG9tXE1pY3JvVGFzay5oIiAvPgogICAgIDxDbEluY2x1ZGUgSW5jbHVkZT0iLi5cZG9tXE1v
dXNlRXZlbnQuaCIgLz4KICAgICA8Q2xJbmNsdWRlIEluY2x1ZGU9Ii4uXGRvbVxNb3VzZVJlbGF0
ZWRFdmVudC5oIiAvPgogICAgIDxDbEluY2x1ZGUgSW5jbHVkZT0iLi5cZG9tXE11dGF0aW9uRXZl
bnQuaCIgLz4KQEAgLTIxNDI1LDQgKzIxNDI3LDQgQEAKICAgPEltcG9ydEdyb3VwIExhYmVsPSJF
eHRlbnNpb25UYXJnZXRzIj4KICAgICA8SW1wb3J0IFByb2plY3Q9IiQoVkNUYXJnZXRzUGF0aClc
QnVpbGRDdXN0b21pemF0aW9uc1xtYXNtLnRhcmdldHMiIC8+CiAgIDwvSW1wb3J0R3JvdXA+Ci08
L1Byb2plY3Q+ClwgTm8gbmV3bGluZSBhdCBlbmQgb2YgZmlsZQorPC9Qcm9qZWN0PgpkaWZmIC0t
Z2l0IGEvU291cmNlL1dlYkNvcmUvV2ViQ29yZS52Y3hwcm9qL1dlYkNvcmUudmN4cHJvai5maWx0
ZXJzIGIvU291cmNlL1dlYkNvcmUvV2ViQ29yZS52Y3hwcm9qL1dlYkNvcmUudmN4cHJvai5maWx0
ZXJzCmluZGV4IDgzNGVmMTY3ZmNmNGI2MjY0M2FhMTBjZjY0NzVjNDBkMGZmM2U3ZTAuLmI5MWYw
OGY5NTFjOGVjYzFkZGE1MDM3NTE3ZDE4MzFkZGI1MzY0NjIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJDb3JlL1dlYkNvcmUudmN4cHJvai9XZWJDb3JlLnZjeHByb2ouZmlsdGVycworKysgYi9Tb3Vy
Y2UvV2ViQ29yZS9XZWJDb3JlLnZjeHByb2ovV2ViQ29yZS52Y3hwcm9qLmZpbHRlcnMKQEAgLTMy
MDEsNiArMzIwMSw5IEBACiAgICAgPENsQ29tcGlsZSBJbmNsdWRlPSIuLlxkb21cTWVzc2FnZVBv
cnRDaGFubmVsLmNwcCI+CiAgICAgICA8RmlsdGVyPmRvbTwvRmlsdGVyPgogICAgIDwvQ2xDb21w
aWxlPgorICAgIDxDbENvbXBpbGUgSW5jbHVkZT0iLi5cZG9tXE1pY3JvVGFzay5jcHAiPgorICAg
ICAgPEZpbHRlcj5kb208L0ZpbHRlcj4KKyAgICA8L0NsQ29tcGlsZT4KICAgICA8Q2xDb21waWxl
IEluY2x1ZGU9Ii4uXGRvbVxNb3VzZUV2ZW50LmNwcCI+CiAgICAgICA8RmlsdGVyPmRvbTwvRmls
dGVyPgogICAgIDwvQ2xDb21waWxlPgpAQCAtMTAyNjksNiArMTAyNzIsOSBAQAogICAgIDxDbElu
Y2x1ZGUgSW5jbHVkZT0iLi5cZG9tXE1lc3NhZ2VQb3J0Q2hhbm5lbC5oIj4KICAgICAgIDxGaWx0
ZXI+ZG9tPC9GaWx0ZXI+CiAgICAgPC9DbEluY2x1ZGU+CisgICAgPENsSW5jbHVkZSBJbmNsdWRl
PSIuLlxkb21cTWljcm9UYXNrLmgiPgorICAgICAgPEZpbHRlcj5kb208L0ZpbHRlcj4KKyAgICA8
L0NsSW5jbHVkZT4KICAgICA8Q2xJbmNsdWRlIEluY2x1ZGU9Ii4uXGRvbVxNb3VzZUV2ZW50Lmgi
PgogICAgICAgPEZpbHRlcj5kb208L0ZpbHRlcj4KICAgICA8L0NsSW5jbHVkZT4KQEAgLTE1Mzk1
LDQgKzE1NDAxLDQgQEAKICAgICAgIDxGaWx0ZXI+cGxhdGZvcm1cd2luPC9GaWx0ZXI+CiAgICAg
PC9NQVNNPgogICA8L0l0ZW1Hcm91cD4KLTwvUHJvamVjdD4KXCBObyBuZXdsaW5lIGF0IGVuZCBv
ZiBmaWxlCis8L1Byb2plY3Q+CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9XZWJDb3JlLnZj
eHByb2ovV2ViQ29yZVRlc3RTdXBwb3J0LnZjeHByb2ogYi9Tb3VyY2UvV2ViQ29yZS9XZWJDb3Jl
LnZjeHByb2ovV2ViQ29yZVRlc3RTdXBwb3J0LnZjeHByb2oKaW5kZXggMmY4MTYzOWIxYTNmZjUy
MDZiMjFhZjBjZWIwZmMzOTMxM2VhZDg4MS4uNDMzZWFmMjc4ODFjZWNjOWFjY2Y2ODE4YTJjNzYw
ZGUxYWY1YzEzYyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvV2ViQ29yZS52Y3hwcm9qL1dl
YkNvcmVUZXN0U3VwcG9ydC52Y3hwcm9qCisrKyBiL1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUudmN4
cHJvai9XZWJDb3JlVGVzdFN1cHBvcnQudmN4cHJvagpAQCAtMjc1LDYgKzI3NSw3IEBACiAgICAg
ICA8Rm9yY2VkSW5jbHVkZUZpbGVzIENvbmRpdGlvbj0iJyQoQ29uZmlndXJhdGlvbil8JChQbGF0
Zm9ybSknPT0nUmVsZWFzZV9XaW5DYWlyb3x4NjQnIj4KICAgICAgIDwvRm9yY2VkSW5jbHVkZUZp
bGVzPgogICAgIDwvQ2xDb21waWxlPgorICAgIDxDbENvbXBpbGUgSW5jbHVkZT0iLi5cdGVzdGlu
Z1xNaWNyb1Rhc2tUZXN0LmNwcCIgLz4KICAgICA8Q2xDb21waWxlIEluY2x1ZGU9Ii4uXHRlc3Rp
bmdcTW9ja1BhZ2VPdmVybGF5Q2xpZW50LmNwcCIgLz4KICAgICA8Q2xDb21waWxlIEluY2x1ZGU9
Ii4uXHRlc3RpbmdcSW50ZXJuYWxTZXR0aW5ncy5jcHAiIC8+CiAgICAgPENsQ29tcGlsZSBJbmNs
dWRlPSIuLlx0ZXN0aW5nXGpzXFdlYkNvcmVUZXN0U3VwcG9ydC5jcHAiIC8+CkBAIC0yOTEsNiAr
MjkyLDcgQEAKICAgICA8Q2xJbmNsdWRlIEluY2x1ZGU9Ii4uXHRlc3RpbmdcanNcV2ViQ29yZVRl
c3RTdXBwb3J0UHJlZml4LmgiIC8+CiAgICAgPENsSW5jbHVkZSBJbmNsdWRlPSIuLlx0ZXN0aW5n
XE1hbGxvY1N0YXRpc3RpY3MuaCIgLz4KICAgICA8Q2xJbmNsdWRlIEluY2x1ZGU9Ii4uXHRlc3Rp
bmdcTWVtb3J5SW5mby5oIiAvPgorICAgIDxDbEluY2x1ZGUgSW5jbHVkZT0iLi5cdGVzdGluZ1xN
aWNyb1Rhc2tUZXN0LmgiIC8+CiAgICAgPENsSW5jbHVkZSBJbmNsdWRlPSIuLlx0ZXN0aW5nXE1v
Y2tDRE0uaCIgLz4KICAgICA8Q2xJbmNsdWRlIEluY2x1ZGU9Ii4uXHRlc3RpbmdcTW9ja1BhZ2VP
dmVybGF5Q2xpZW50LmgiIC8+CiAgICAgPENsSW5jbHVkZSBJbmNsdWRlPSIuLlx0ZXN0aW5nXFR5
cGVDb252ZXJzaW9ucy5oIiAvPgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvV2ViQ29yZS52
Y3hwcm9qL1dlYkNvcmVUZXN0U3VwcG9ydC52Y3hwcm9qLmZpbHRlcnMgYi9Tb3VyY2UvV2ViQ29y
ZS9XZWJDb3JlLnZjeHByb2ovV2ViQ29yZVRlc3RTdXBwb3J0LnZjeHByb2ouZmlsdGVycwppbmRl
eCA2NDg4NmE4Mjg5ZDA3ZjI4NGRlMTRkMjE1NjlmYWM1ODkwY2ViMGVkLi40MmNhNzI4ZWM2ODBi
MjM2Yjk4MzAzNGQzZjJlZmI4OGRjODA4NDA1IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9X
ZWJDb3JlLnZjeHByb2ovV2ViQ29yZVRlc3RTdXBwb3J0LnZjeHByb2ouZmlsdGVycworKysgYi9T
b3VyY2UvV2ViQ29yZS9XZWJDb3JlLnZjeHByb2ovV2ViQ29yZVRlc3RTdXBwb3J0LnZjeHByb2ou
ZmlsdGVycwpAQCAtMzksNiArMzksOSBAQAogICAgIDxDbENvbXBpbGUgSW5jbHVkZT0iLi5cdGVz
dGluZ1xqc1xXZWJDb3JlVGVzdFN1cHBvcnQuY3BwIj4KICAgICAgIDxGaWx0ZXI+dGVzdGluZzwv
RmlsdGVyPgogICAgIDwvQ2xDb21waWxlPgorICAgIDxDbENvbXBpbGUgSW5jbHVkZT0iLi5cdGVz
dGluZ1xNaWNyb1Rhc2tUZXN0LmNwcCI+CisgICAgICA8RmlsdGVyPnRlc3Rpbmc8L0ZpbHRlcj4K
KyAgICA8L0NsQ29tcGlsZT4KICAgICA8Q2xDb21waWxlIEluY2x1ZGU9Ii4uXHRlc3RpbmdcTW9j
a0NETS5jcHAiPgogICAgICAgPEZpbHRlcj50ZXN0aW5nPC9GaWx0ZXI+CiAgICAgPC9DbENvbXBp
bGU+CkBAIC05MCw2ICs5Myw5IEBACiAgICAgICA8RmlsdGVyPnRlc3Rpbmc8L0ZpbHRlcj4KICAg
ICA8L0NsSW5jbHVkZT4KICAgICA8Q2xJbmNsdWRlIEluY2x1ZGU9Ii4uXGNvbmZpZy5oIiAvPgor
ICAgIDxDbEluY2x1ZGUgSW5jbHVkZT0iLi5cdGVzdGluZ1xNaWNyb1Rhc2tUZXN0LmgiPgorICAg
ICAgPEZpbHRlcj50ZXN0aW5nPC9GaWx0ZXI+CisgICAgPC9DbEluY2x1ZGU+CiAgICAgPENsSW5j
bHVkZSBJbmNsdWRlPSIuLlx0ZXN0aW5nXE1vY2tDRE0uaCI+CiAgICAgICA8RmlsdGVyPnRlc3Rp
bmc8L0ZpbHRlcj4KICAgICA8L0NsSW5jbHVkZT4KQEAgLTEwMCw0ICsxMDYsNCBAQAogICAgICAg
PEZpbHRlcj50ZXN0aW5nPC9GaWx0ZXI+CiAgICAgPC9DbEluY2x1ZGU+CiAgIDwvSXRlbUdyb3Vw
PgotPC9Qcm9qZWN0PgpcIE5vIG5ld2xpbmUgYXQgZW5kIG9mIGZpbGUKKzwvUHJvamVjdD4KZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJv
aiBiL1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvagppbmRl
eCBjMGVkMTZiYTFmNzM1MDJlMGUyNDkzYWJhNDE3YTgxMWUxOWQ3YjNmLi5lZThkZjA4MDlkODg3
Mzg5MjU2YTAwODQ0YjRjNmVhZGJlYTlkNzE5IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9X
ZWJDb3JlLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2oKKysrIGIvU291cmNlL1dlYkNvcmUvV2Vi
Q29yZS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qCkBAIC0yMDgwLDYgKzIwODAsNyBAQAogCQk1
MzZENUEyMzE5M0U4RTBDMDBDRTRDQUIgLyogUGFyc2luZ1V0aWxpdGllcy5oIGluIEhlYWRlcnMg
Ki8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNTM2RDVBMjIxOTNFOEUwQzAwQ0U0
Q0FCIC8qIFBhcnNpbmdVdGlsaXRpZXMuaCAqLzsgfTsKIAkJNTM2RDVBMjUxOTNGNDBGQzAwQ0U0
Q0FCIC8qIFNvdXJjZVNpemVMaXN0LmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxk
RmlsZTsgZmlsZVJlZiA9IDUzNkQ1QTI0MTkzRjQwRkMwMENFNENBQiAvKiBTb3VyY2VTaXplTGlz
dC5jcHAgKi87IH07CiAJCTUzNkQ1QTI3MTkzRjQxMEIwMENFNENBQiAvKiBTb3VyY2VTaXplTGlz
dC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNTM2RDVB
MjYxOTNGNDEwQjAwQ0U0Q0FCIC8qIFNvdXJjZVNpemVMaXN0LmggKi87IHNldHRpbmdzID0ge0FU
VFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJNTNCODk1QUYxOURDN0VEOTAwOUNBQTkz
IC8qIE1pY3JvVGFzay5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxl
UmVmID0gNTNCODk1QUQxOURDN0MzNzAwOUNBQTkzIC8qIE1pY3JvVGFzay5oICovOyBzZXR0aW5n
cyA9IHtBVFRSSUJVVEVTID0gKFB1YmxpYywgKTsgfTsgfTsKIAkJNTNDODI5OEQxM0Q4RDkyNzAw
REUyREVCIC8qIFJlbmRlckZsZXhpYmxlQm94LmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBC
WEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDUzQzgyOThCMTNEOEQ5MjcwMERFMkRFQiAvKiBSZW5kZXJG
bGV4aWJsZUJveC5jcHAgKi87IH07CiAJCTUzQzgyOThFMTNEOEQ5MjcwMERFMkRFQiAvKiBSZW5k
ZXJGbGV4aWJsZUJveC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxl
UmVmID0gNTNDODI5OEMxM0Q4RDkyNzAwREUyREVCIC8qIFJlbmRlckZsZXhpYmxlQm94LmggKi87
IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKIAkJNTNFMjlFNUUx
NjdBOEExOTAwNTg2RDNEIC8qIEludGVybmFsU2V0dGluZ3NHZW5lcmF0ZWQuY3BwIGluIFNvdXJj
ZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNTNFMjlFNUMxNjdBOEExOTAw
NTg2RDNEIC8qIEludGVybmFsU2V0dGluZ3NHZW5lcmF0ZWQuY3BwICovOyB9OwpAQCAtNTYyMSw2
ICs1NjIyLDkgQEAKIAkJQ0EzQkY2N0UxMEQ5OUJBRTAwRTZDRTUzIC8qIFNjcm9sbEFuaW1hdG9y
LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBDQTNCRjY3
RDEwRDk5QkFFMDBFNkNFNTMgLyogU2Nyb2xsQW5pbWF0b3IuaCAqLzsgc2V0dGluZ3MgPSB7QVRU
UklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OwogCQlDQUU5RjkwRjE0NjQ0MUYwMDBDMjQ1QjAg
LyogQ1NTQXNwZWN0UmF0aW9WYWx1ZS5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWls
ZEZpbGU7IGZpbGVSZWYgPSBDQUU5RjkwRDE0NjQ0MUYwMDBDMjQ1QjAgLyogQ1NTQXNwZWN0UmF0
aW9WYWx1ZS5jcHAgKi87IH07CiAJCUNBRTlGOTEwMTQ2NDQxRjAwMEMyNDVCMCAvKiBDU1NBc3Bl
Y3RSYXRpb1ZhbHVlLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVS
ZWYgPSBDQUU5RjkwRTE0NjQ0MUYwMDBDMjQ1QjAgLyogQ1NTQXNwZWN0UmF0aW9WYWx1ZS5oICov
OyB9OworCQlDQjhDRjAxODFBOTM1OEQ0MDAwRDUxMEIgLyogTWljcm9UYXNrLmNwcCBpbiBTb3Vy
Y2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IENCOENGMDE1MUE5MzRCNDMw
MDBENTEwQiAvKiBNaWNyb1Rhc2suY3BwICovOyB9OworCQlDQjhDRjAxRDFBOTVERTQyMDAwRDUx
MEIgLyogTWljcm9UYXNrVGVzdC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxl
OyBmaWxlUmVmID0gQ0I4Q0YwMUMxQTk1REU0MjAwMEQ1MTBCIC8qIE1pY3JvVGFza1Rlc3QuaCAq
LzsgfTsKKwkJQ0I4Q0YwMUYxQTk1REU1OTAwMEQ1MTBCIC8qIE1pY3JvVGFza1Rlc3QuY3BwIGlu
IFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQ0I4Q0YwMUUxQTk1
REU1OTAwMEQ1MTBCIC8qIE1pY3JvVGFza1Rlc3QuY3BwICovOyB9OwogCQlDQ0MyQjUxNDE1RjYx
MzA2MDA0OENERDYgLyogRGV2aWNlQ2xpZW50LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhC
dWlsZEZpbGU7IGZpbGVSZWYgPSBDQ0MyQjUxMDE1RjYxMzA2MDA0OENERDYgLyogRGV2aWNlQ2xp
ZW50LmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKIAkJ
Q0NDMkI1MTUxNUY2MTMwNjAwNDhDREQ2IC8qIERldmljZUNvbnRyb2xsZXIuY3BwIGluIFNvdXJj
ZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQ0NDMkI1MTExNUY2MTMwNjAw
NDhDREQ2IC8qIERldmljZUNvbnRyb2xsZXIuY3BwICovOyB9OwogCQlDQ0MyQjUxNjE1RjYxMzA2
MDA0OENERDYgLyogRGV2aWNlQ29udHJvbGxlci5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJY
QnVpbGRGaWxlOyBmaWxlUmVmID0gQ0NDMkI1MTIxNUY2MTMwNjAwNDhDREQ2IC8qIERldmljZUNv
bnRyb2xsZXIuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9
OwpAQCAtOTIyOSw2ICs5MjMzLDcgQEAKIAkJNTM2RDVBMjIxOTNFOEUwQzAwQ0U0Q0FCIC8qIFBh
cnNpbmdVdGlsaXRpZXMuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rp
bmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBuYW1lID0gUGFyc2lu
Z1V0aWxpdGllcy5oOyBwYXRoID0gcGFyc2VyL1BhcnNpbmdVdGlsaXRpZXMuaDsgc291cmNlVHJl
ZSA9ICI8Z3JvdXA+IjsgfTsKIAkJNTM2RDVBMjQxOTNGNDBGQzAwQ0U0Q0FCIC8qIFNvdXJjZVNp
emVMaXN0LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0
OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IFNvdXJjZVNp
emVMaXN0LmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJNTM2RDVBMjYxOTNGNDEw
QjAwQ0U0Q0FCIC8qIFNvdXJjZVNpemVMaXN0LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5j
ZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsg
cGF0aCA9IFNvdXJjZVNpemVMaXN0Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTUz
Qjg5NUFEMTlEQzdDMzcwMDlDQUE5MyAvKiBNaWNyb1Rhc2suaCAqLyA9IHtpc2EgPSBQQlhGaWxl
UmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNv
ZGUuYy5oOyBwYXRoID0gTWljcm9UYXNrLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJ
CTUzQzgyOThCMTNEOEQ5MjcwMERFMkRFQiAvKiBSZW5kZXJGbGV4aWJsZUJveC5jcHAgKi8gPSB7
aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5
cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBSZW5kZXJGbGV4aWJsZUJveC5jcHA7IHNv
dXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTUzQzgyOThDMTNEOEQ5MjcwMERFMkRFQiAvKiBS
ZW5kZXJGbGV4aWJsZUJveC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNv
ZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBSZW5k
ZXJGbGV4aWJsZUJveC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQk1M0UyOUU1QzE2
N0E4QTE5MDA1ODZEM0QgLyogSW50ZXJuYWxTZXR0aW5nc0dlbmVyYXRlZC5jcHAgKi8gPSB7aXNh
ID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUg
PSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBJbnRlcm5hbFNldHRpbmdzR2VuZXJhdGVkLmNw
cDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKQEAgLTEzMDg3LDYgKzEzMDkyLDkgQEAKIAkJ
Q0EzQkY2N0QxMEQ5OUJBRTAwRTZDRTUzIC8qIFNjcm9sbEFuaW1hdG9yLmggKi8gPSB7aXNhID0g
UEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBz
b3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFNjcm9sbEFuaW1hdG9yLmg7IHNvdXJjZVRyZWUgPSAiPGdy
b3VwPiI7IH07CiAJCUNBRTlGOTBEMTQ2NDQxRjAwMEMyNDVCMCAvKiBDU1NBc3BlY3RSYXRpb1Zh
bHVlLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBs
YXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IENTU0FzcGVjdFJh
dGlvVmFsdWUuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQlDQUU5RjkwRTE0NjQ0
MUYwMDBDMjQ1QjAgLyogQ1NTQXNwZWN0UmF0aW9WYWx1ZS5oICovID0ge2lzYSA9IFBCWEZpbGVS
ZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29k
ZS5jLmg7IHBhdGggPSBDU1NBc3BlY3RSYXRpb1ZhbHVlLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3Vw
PiI7IH07CisJCUNCOENGMDE1MUE5MzRCNDMwMDBENTEwQiAvKiBNaWNyb1Rhc2suY3BwICovID0g
e2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVU
eXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gTWljcm9UYXNrLmNwcDsgc291cmNlVHJl
ZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQ0I4Q0YwMUMxQTk1REU0MjAwMEQ1MTBCIC8qIE1pY3JvVGFz
a1Rlc3QuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBs
YXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gTWljcm9UYXNrVGVzdC5o
OyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlDQjhDRjAxRTFBOTVERTU5MDAwRDUxMEIg
LyogTWljcm9UYXNrVGVzdC5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVu
Y29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGgg
PSBNaWNyb1Rhc2tUZXN0LmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJQ0NDMkI1
MTAxNUY2MTMwNjAwNDhDREQ2IC8qIERldmljZUNsaWVudC5oICovID0ge2lzYSA9IFBCWEZpbGVS
ZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29k
ZS5jLmg7IHBhdGggPSBEZXZpY2VDbGllbnQuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsK
IAkJQ0NDMkI1MTExNUY2MTMwNjAwNDhDREQ2IC8qIERldmljZUNvbnRyb2xsZXIuY3BwICovID0g
e2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVU
eXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gRGV2aWNlQ29udHJvbGxlci5jcHA7IHNv
dXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCUNDQzJCNTEyMTVGNjEzMDYwMDQ4Q0RENiAvKiBE
ZXZpY2VDb250cm9sbGVyLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29k
aW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IERldmlj
ZUNvbnRyb2xsZXIuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKQEAgLTE1NjcxLDYgKzE1
Njc5LDggQEAKIAkJCQlBN0JGN0VERDE0QzkxNzVBMDAxNDQ4OUQgLyogSW50ZXJuYWxTZXR0aW5n
cy5oICovLAogCQkJCUE3QkY3RURFMTRDOTE3NUEwMDE0NDg5RCAvKiBJbnRlcm5hbFNldHRpbmdz
LmlkbCAqLywKIAkJCQlBN0JFN0VERDE0QzkxNzVBMDAxNDQ4OUQgLyogTWFsbG9jU3RhdGlzdGlj
cy5oICovLAorCQkJCUNCOENGMDFFMUE5NURFNTkwMDBENTEwQiAvKiBNaWNyb1Rhc2tUZXN0LmNw
cCAqLywKKwkJCQlDQjhDRjAxQzFBOTVERTQyMDAwRDUxMEIgLyogTWljcm9UYXNrVGVzdC5oICov
LAogCQkJCUE3QkU3RURFMTRDOTE3NUEwMDE0NDg5RCAvKiBNYWxsb2NTdGF0aXN0aWNzLmlkbCAq
LywKIAkJCQlDRDUzOTNDQjE3NURDQ0U2MDBDMDcxMjMgLyogTWVtb3J5SW5mby5oICovLAogCQkJ
CUNENTM5M0NDMTc1RENDRTYwMEMwNzEyMyAvKiBNZW1vcnlJbmZvLmlkbCAqLywKQEAgLTIyODc5
LDYgKzIyODg5LDggQEAKIAkJCQlFMUFERUNCRDBFNzZBQ0YxMDA0QTFBNUUgLyogTWVzc2FnZVBv
cnQuaCAqLywKIAkJCQlFMUFERUNDNjBFNzZBRDFGMDA0QTFBNUUgLyogTWVzc2FnZVBvcnQuaWRs
ICovLAogCQkJCTQxQkY3MDBBMEZFODZGNDkwMDVFOERFQyAvKiBNZXNzYWdlUG9ydENoYW5uZWwu
aCAqLywKKwkJCQk1M0I4OTVBRDE5REM3QzM3MDA5Q0FBOTMgLyogTWljcm9UYXNrLmggKi8sCisJ
CQkJQ0I4Q0YwMTUxQTkzNEI0MzAwMEQ1MTBCIC8qIE1pY3JvVGFzay5jcHAgKi8sCiAJCQkJODUw
MzFCMkYwQTQ0RUZDNzAwRjk5MkUwIC8qIE1vdXNlRXZlbnQuY3BwICovLAogCQkJCTg1MDMxQjMw
MEE0NEVGQzcwMEY5OTJFMCAvKiBNb3VzZUV2ZW50LmggKi8sCiAJCQkJMTQxQjk0RTUwOUVDNDIy
MzAwMEU5NDEzIC8qIE1vdXNlRXZlbnQuaWRsICovLApAQCAtMjM0NDMsNiArMjM0NTUsNyBAQAog
CQkJCTUzRUQzRkRGMTY3QTg4RTcwMDY3NjJFNiAvKiBKU0ludGVybmFsU2V0dGluZ3NHZW5lcmF0
ZWQuaCBpbiBIZWFkZXJzICovLAogCQkJCUE3NDBCNTk1MTRDOTM1QUIwMEE3N0ZBNCAvKiBKU01h
bGxvY1N0YXRpc3RpY3MuaCBpbiBIZWFkZXJzICovLAogCQkJCUNENTM5M0Q0MTc1RTAxODYwMEMw
NzEyMyAvKiBKU01lbW9yeUluZm8uaCBpbiBIZWFkZXJzICovLAorCQkJCUNCOENGMDFEMUE5NURF
NDIwMDBENTEwQiAvKiBNaWNyb1Rhc2tUZXN0LmggaW4gSGVhZGVycyAqLywKIAkJCQlFQkY1MTIx
RDE2OTY0OTZDMDA1NkJEMjUgLyogSlNUeXBlQ29udmVyc2lvbnMuaCBpbiBIZWFkZXJzICovLAog
CQkJCUNEQzI2QjQxMTYwQThDQ0UwMDI2NzU3QiAvKiBNb2NrQ0RNLmggaW4gSGVhZGVycyAqLywK
IAkJCQkyRDk3RjA0ODE5REQ0MTQwMDAxRUU5QzMgLyogTW9ja1BhZ2VPdmVybGF5Q2xpZW50Lmgg
aW4gSGVhZGVycyAqLywKQEAgLTI1ODY2LDYgKzI1ODc5LDcgQEAKIAkJCQk1M0M4Mjk4RTEzRDhE
OTI3MDBERTJERUIgLyogUmVuZGVyRmxleGlibGVCb3guaCBpbiBIZWFkZXJzICovLAogCQkJCTUw
OENDQTRGMTNDRjEwNkIwMDMxNTFGMyAvKiBSZW5kZXJGbG93VGhyZWFkLmggaW4gSGVhZGVycyAq
LywKIAkJCQlBODcxREVEMzBBMTUzMEM3MDBCMTJBNjggLyogUmVuZGVyRnJhbWUuaCBpbiBIZWFk
ZXJzICovLAorCQkJCTUzQjg5NUFGMTlEQzdFRDkwMDlDQUE5MyAvKiBNaWNyb1Rhc2suaCBpbiBI
ZWFkZXJzICovLAogCQkJCTBGRDMwODBGMTE3Q0Y3RTcwMEE3OTFGNyAvKiBSZW5kZXJGcmFtZUJh
c2UuaCBpbiBIZWFkZXJzICovLAogCQkJCUE4NzFERUQxMEExNTMwQzcwMEIxMkE2OCAvKiBSZW5k
ZXJGcmFtZVNldC5oIGluIEhlYWRlcnMgKi8sCiAJCQkJQ0RFQTdDODQxMjc2MjMwNDAwQjg0NkRE
IC8qIFJlbmRlckZ1bGxTY3JlZW4uaCBpbiBIZWFkZXJzICovLApAQCAtMjcxOTMsNiArMjcyMDcs
NyBAQAogCQkJCTUzRTI5RTVFMTY3QThBMTkwMDU4NkQzRCAvKiBJbnRlcm5hbFNldHRpbmdzR2Vu
ZXJhdGVkLmNwcCBpbiBTb3VyY2VzICovLAogCQkJCTQxN0RBNzFEMTM3MzVERkEwMDdDNTdGQiAv
KiBKU0ludGVybmFscy5jcHAgaW4gU291cmNlcyAqLywKIAkJCQlBNzQwQjVBNzE0QzkzNUFGMDBB
NzdGQTQgLyogSlNJbnRlcm5hbFNldHRpbmdzLmNwcCBpbiBTb3VyY2VzICovLAorCQkJCUNCOENG
MDFGMUE5NURFNTkwMDBENTEwQiAvKiBNaWNyb1Rhc2tUZXN0LmNwcCBpbiBTb3VyY2VzICovLAog
CQkJCTUzRUQzRkRFMTY3QTg4RTcwMDY3NjJFNiAvKiBKU0ludGVybmFsU2V0dGluZ3NHZW5lcmF0
ZWQuY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJQTc0MEI1OTcxNEM5MzVBRjAwQTc3RkE0IC8qIEpT
TWFsbG9jU3RhdGlzdGljcy5jcHAgaW4gU291cmNlcyAqLywKIAkJCQlDRDUzOTNEMzE3NUUwMTg2
MDBDMDcxMjMgLyogSlNNZW1vcnlJbmZvLmNwcCBpbiBTb3VyY2VzICovLApAQCAtMjk4MjgsNiAr
Mjk4NDMsNyBAQAogCQkJCUIyMjI3QTkwMEQwMEJGMjIwMDcxQjc4MiAvKiBTVkdQb2x5Z29uRWxl
bWVudC5jcHAgaW4gU291cmNlcyAqLywKIAkJCQlCMjIyN0E5MzBEMDBCRjIyMDA3MUI3ODIgLyog
U1ZHUG9seWxpbmVFbGVtZW50LmNwcCBpbiBTb3VyY2VzICovLAogCQkJCUIyMjI3QTk2MEQwMEJG
MjIwMDcxQjc4MiAvKiBTVkdQcmVzZXJ2ZUFzcGVjdFJhdGlvLmNwcCBpbiBTb3VyY2VzICovLAor
CQkJCUNCOENGMDE4MUE5MzU4RDQwMDBENTEwQiAvKiBNaWNyb1Rhc2suY3BwIGluIFNvdXJjZXMg
Ki8sCiAJCQkJQjU0M0I4NTcxN0VCNzU4RjAwM0JFOTNBIC8qIFNWR1Byb3BlcnR5SW5mby5jcHAg
aW4gU291cmNlcyAqLywKIAkJCQlCMjIyN0E5OTBEMDBCRjIyMDA3MUI3ODIgLyogU1ZHUmFkaWFs
R3JhZGllbnRFbGVtZW50LmNwcCBpbiBTb3VyY2VzICovLAogCQkJCUIyMjI3QTlEMEQwMEJGMjIw
MDcxQjc4MiAvKiBTVkdSZWN0RWxlbWVudC5jcHAgaW4gU291cmNlcyAqLywKZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJDb3JlL2RvbS9Eb2N1bWVudC5oIGIvU291cmNlL1dlYkNvcmUvZG9tL0RvY3Vt
ZW50LmgKaW5kZXggMTU0NDRhNmUxOWViMjdjMWE2YTIzN2RhYjk4MjJjZTdkN2M2ODliMS4uM2Yx
MTMxOTQ5ZDI1ZmVlZjY4YTVlZDYwNjI1ZTEwYTFjNTU2ZGZmNiAxMDA2NDQKLS0tIGEvU291cmNl
L1dlYkNvcmUvZG9tL0RvY3VtZW50LmgKKysrIGIvU291cmNlL1dlYkNvcmUvZG9tL0RvY3VtZW50
LmgKQEAgLTEyNjIsNyArMTI2Miw3IEBAIHB1YmxpYzoKICAgICB2b2lkIGFkZERpc2FibGVkRmll
bGRzZXRFbGVtZW50KCkgeyBtX2Rpc2FibGVkRmllbGRzZXRFbGVtZW50c0NvdW50Kys7IH0KICAg
ICB2b2lkIHJlbW92ZURpc2FibGVkRmllbGRzZXRFbGVtZW50KCkgeyBBU1NFUlQobV9kaXNhYmxl
ZEZpZWxkc2V0RWxlbWVudHNDb3VudCk7IG1fZGlzYWJsZWRGaWVsZHNldEVsZW1lbnRzQ291bnQt
LTsgfQogCi0gICAgdmlydHVhbCB2b2lkIGFkZENvbnNvbGVNZXNzYWdlKE1lc3NhZ2VTb3VyY2Us
IE1lc3NhZ2VMZXZlbCwgY29uc3QgU3RyaW5nJiBtZXNzYWdlLCB1bnNpZ25lZCBsb25nIHJlcXVl
c3RJZGVudGlmaWVyID0gMCkgb3ZlcnJpZGUgZmluYWw7CisgICAgV0VCQ09SRV9FWFBPUlQgdmly
dHVhbCB2b2lkIGFkZENvbnNvbGVNZXNzYWdlKE1lc3NhZ2VTb3VyY2UsIE1lc3NhZ2VMZXZlbCwg
Y29uc3QgU3RyaW5nJiBtZXNzYWdlLCB1bnNpZ25lZCBsb25nIHJlcXVlc3RJZGVudGlmaWVyID0g
MCkgb3ZlcnJpZGUgZmluYWw7CiAKICAgICBXRUJDT1JFX0VYUE9SVCB2aXJ0dWFsIFNlY3VyaXR5
T3JpZ2luKiB0b3BPcmlnaW4oKSBjb25zdCBvdmVycmlkZSBmaW5hbDsKIApAQCAtMTI4OCw2ICsx
Mjg4LDcgQEAgcHVibGljOgogICAgIGJvb2wgaXNQbGF5aW5nQXVkaW8oKSBjb25zdCB7IHJldHVy
biBtX2lzUGxheWluZ0F1ZGlvOyB9CiAgICAgV0VCQ09SRV9FWFBPUlQgdm9pZCB1cGRhdGVJc1Bs
YXlpbmdBdWRpbygpOwogICAgIHZvaWQgcGFnZU11dGVkU3RhdGVEaWRDaGFuZ2UoKTsKKyAgICBX
ZWFrUHRyPERvY3VtZW50PiBjcmVhdGVXZWFrUHRyKCkgeyByZXR1cm4gbV93ZWFrRmFjdG9yeS5j
cmVhdGVXZWFrUHRyKCk7IH0KIAogcHJvdGVjdGVkOgogICAgIGVudW0gQ29uc3RydWN0aW9uRmxh
Z3MgeyBTeW50aGVzaXplZCA9IDEsIE5vblJlbmRlcmVkUGxhY2Vob2xkZXIgPSAxIDw8IDEgfTsK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2RvbS9NaWNyb1Rhc2suY3BwIGIvU291cmNlL1dl
YkNvcmUvZG9tL01pY3JvVGFzay5jcHAKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uNjdlZWJkMTFiMmEwYzc5OTM3NmUx
ZjEwZmI2Y2JjZTIxYmZhNDgwNAotLS0gL2Rldi9udWxsCisrKyBiL1NvdXJjZS9XZWJDb3JlL2Rv
bS9NaWNyb1Rhc2suY3BwCkBAIC0wLDAgKzEsNTEgQEAKKy8qCisgKiBDb3B5cmlnaHQgKEMpIDIw
MTQgWW9hdiBXZWlzcyAoeW9hdkB5b2F2LndzKQorICogQ29weXJpZ2h0IChDKSAyMDE1IEFrYW1h
aSBUZWNobm9sb2dpZXMgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICoKKyAqIFRoaXMgbGli
cmFyeSBpcyBmcmVlIHNvZnR3YXJlOyB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IKKyAq
IG1vZGlmeSBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBMaWJyYXJ5IEdlbmVyYWwgUHVi
bGljCisgKiBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieSB0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0
aW9uOyBlaXRoZXIKKyAqIHZlcnNpb24gMiBvZiB0aGUgTGljZW5zZSwgb3IgKGF0IHlvdXIgb3B0
aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KKyAqCisgKiBUaGlzIGxpYnJhcnkgaXMgZGlzdHJpYnV0
ZWQgaW4gdGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCwKKyAqIGJ1dCBXSVRIT1VUIEFO
WSBXQVJSQU5UWTsgd2l0aG91dCBldmVuIHRoZSBpbXBsaWVkIHdhcnJhbnR5IG9mCisgKiBNRVJD
SEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhl
IEdOVQorICogTGlicmFyeSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGZvciBtb3JlIGRldGFpbHMu
CisgKgorICogWW91IHNob3VsZCBoYXZlIHJlY2VpdmVkIGEgY29weSBvZiB0aGUgR05VIExpYnJh
cnkgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQorICogYWxvbmcgd2l0aCB0aGlzIGxpYnJhcnk7IHNl
ZSB0aGUgZmlsZSBDT1BZSU5HLkxJQi4gIElmIG5vdCwgd3JpdGUgdG8KKyAqIHRoZSBGcmVlIFNv
ZnR3YXJlIEZvdW5kYXRpb24sIEluYy4sIDUxIEZyYW5rbGluIFN0cmVldCwgRmlmdGggRmxvb3Is
CisgKiBCb3N0b24sIE1BIDAyMTEwLTEzMDEsIFVTQS4KKyAqCisgKi8KKworI2luY2x1ZGUgImNv
bmZpZy5oIgorI2luY2x1ZGUgIk1pY3JvVGFzay5oIgorCisjaW5jbHVkZSAiRG9jdW1lbnQuaCIK
KworbmFtZXNwYWNlIFdlYkNvcmUgeworCitNaWNyb1Rhc2tRdWV1ZSYgTWljcm9UYXNrUXVldWU6
OnNpbmdsZXRvbigpCit7CisgICAgQVNTRVJUKGlzTWFpblRocmVhZCgpKTsKKyAgICBzdGF0aWMg
TmV2ZXJEZXN0cm95ZWQ8TWljcm9UYXNrUXVldWU+IHF1ZXVlOworICAgIHJldHVybiBxdWV1ZTsK
K30KKwordm9pZCBNaWNyb1Rhc2tRdWV1ZTo6cXVldWVNaWNyb1Rhc2soc3RkOjp1bmlxdWVfcHRy
PE1pY3JvVGFzaz4gdGFzaykKK3sKKyAgICBBU1NFUlQoaXNNYWluVGhyZWFkKCkpOworICAgIG1f
bWljcm9UYXNrUXVldWUuYXBwZW5kKFdURjo6bW92ZSh0YXNrKSk7Cit9CisKK3ZvaWQgTWljcm9U
YXNrUXVldWU6OnJ1bk1pY3JvVGFza3MoKQoreworICAgIEFTU0VSVChpc01haW5UaHJlYWQoKSk7
CisgICAgZm9yIChhdXRvJiB0YXNrIDogbV9taWNyb1Rhc2tRdWV1ZSkKKyAgICAgICAgdGFzay0+
cnVuKCk7CisgICAgbV9taWNyb1Rhc2tRdWV1ZS5jbGVhcigpOworfQorCit9IC8vIG5hbWVzcGFj
ZSBXZWJDb3JlCisKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2RvbS9NaWNyb1Rhc2suaCBi
L1NvdXJjZS9XZWJDb3JlL2RvbS9NaWNyb1Rhc2suaApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRl
eCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5mYmQ2NmE1YzU5NGM3
OTUxMDk2ZmE1MGNkODg5ZTYwMzNjMmZmM2MyCi0tLSAvZGV2L251bGwKKysrIGIvU291cmNlL1dl
YkNvcmUvZG9tL01pY3JvVGFzay5oCkBAIC0wLDAgKzEsNTUgQEAKKy8qCisgKiBDb3B5cmlnaHQg
KEMpIDIwMTQgWW9hdiBXZWlzcyAoeW9hdkB5b2F2LndzKQorICogQ29weXJpZ2h0IChDKSAyMDE1
IEFrYW1haSBUZWNobm9sb2dpZXMgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICoKKyAqIFRo
aXMgbGlicmFyeSBpcyBmcmVlIHNvZnR3YXJlOyB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQv
b3IKKyAqIG1vZGlmeSBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBMaWJyYXJ5IEdlbmVy
YWwgUHVibGljCisgKiBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieSB0aGUgRnJlZSBTb2Z0d2FyZSBG
b3VuZGF0aW9uOyBlaXRoZXIKKyAqIHZlcnNpb24gMiBvZiB0aGUgTGljZW5zZSwgb3IgKGF0IHlv
dXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KKyAqCisgKiBUaGlzIGxpYnJhcnkgaXMgZGlz
dHJpYnV0ZWQgaW4gdGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCwKKyAqIGJ1dCBXSVRI
T1VUIEFOWSBXQVJSQU5UWTsgd2l0aG91dCBldmVuIHRoZSBpbXBsaWVkIHdhcnJhbnR5IG9mCisg
KiBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBT
ZWUgdGhlIEdOVQorICogTGlicmFyeSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGZvciBtb3JlIGRl
dGFpbHMuCisgKgorICogWW91IHNob3VsZCBoYXZlIHJlY2VpdmVkIGEgY29weSBvZiB0aGUgR05V
IExpYnJhcnkgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQorICogYWxvbmcgd2l0aCB0aGlzIGxpYnJh
cnk7IHNlZSB0aGUgZmlsZSBDT1BZSU5HLkxJQi4gIElmIG5vdCwgd3JpdGUgdG8KKyAqIHRoZSBG
cmVlIFNvZnR3YXJlIEZvdW5kYXRpb24sIEluYy4sIDUxIEZyYW5rbGluIFN0cmVldCwgRmlmdGgg
Rmxvb3IsCisgKiBCb3N0b24sIE1BIDAyMTEwLTEzMDEsIFVTQS4KKyAqCisgKi8KKworI2lmbmRl
ZiBNaWNyb1Rhc2tfaAorI2RlZmluZSBNaWNyb1Rhc2tfaAorCisjaW5jbHVkZSA8d3RmL05ldmVy
RGVzdHJveWVkLmg+CisjaW5jbHVkZSA8d3RmL1ZlY3Rvci5oPgorCisKK25hbWVzcGFjZSBXZWJD
b3JlIHsKKworY2xhc3MgTWljcm9UYXNrIHsKK3B1YmxpYzoKKyAgICB2aXJ0dWFsIHZvaWQgcnVu
KCkgPSAwOworICAgIHZpcnR1YWwgfk1pY3JvVGFzaygpIHsgfQorfTsKKworY2xhc3MgTWljcm9U
YXNrUXVldWUgeworICAgIGZyaWVuZCBOZXZlckRlc3Ryb3llZDxNaWNyb1Rhc2tRdWV1ZT47CisK
K3B1YmxpYzoKKyAgICBXRUJDT1JFX0VYUE9SVCBzdGF0aWMgTWljcm9UYXNrUXVldWUmIHNpbmds
ZXRvbigpOworICAgIH5NaWNyb1Rhc2tRdWV1ZSgpIHsgfQorCisgICAgV0VCQ09SRV9FWFBPUlQg
dm9pZCBxdWV1ZU1pY3JvVGFzayhzdGQ6OnVuaXF1ZV9wdHI8TWljcm9UYXNrPik7CisKKyAgICB2
b2lkIHJ1bk1pY3JvVGFza3MoKTsKKworcHJpdmF0ZToKKyAgICBNaWNyb1Rhc2tRdWV1ZSgpIHsg
fQorICAgIFZlY3RvcjxzdGQ6OnVuaXF1ZV9wdHI8TWljcm9UYXNrPj4gbV9taWNyb1Rhc2tRdWV1
ZTsKK307CisKK30gLy8gbmFtZXNwYWNlIFdlYkNvcmUKKworI2VuZGlmIC8vIE1pY3JvVGFza19o
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9kb20vU2NyaXB0UnVubmVyLmNwcCBiL1NvdXJj
ZS9XZWJDb3JlL2RvbS9TY3JpcHRSdW5uZXIuY3BwCmluZGV4IGVkOTRkYTNlNzNkYjEzMDE3OGI5
OWVhNGI3ZjkyYjVhYzE5ODA5ZDYuLmM0NmI3OGUwZmZlM2M4MTgzNjA0N2VjYTNhMDdhYjljZWQx
M2FmMDQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2RvbS9TY3JpcHRSdW5uZXIuY3BwCisr
KyBiL1NvdXJjZS9XZWJDb3JlL2RvbS9TY3JpcHRSdW5uZXIuY3BwCkBAIC0yOCw2ICsyOCw3IEBA
CiAKICNpbmNsdWRlICJDYWNoZWRTY3JpcHQuaCIKICNpbmNsdWRlICJFbGVtZW50LmgiCisjaW5j
bHVkZSAiTWljcm9UYXNrLmgiCiAjaW5jbHVkZSAiUGVuZGluZ1NjcmlwdC5oIgogI2luY2x1ZGUg
IlNjcmlwdEVsZW1lbnQuaCIKIApAQCAtMTE2LDYgKzExNyw3IEBAIHZvaWQgU2NyaXB0UnVubmVy
Ojp0aW1lckZpcmVkKCkKICAgICAgICAgdG9TY3JpcHRFbGVtZW50SWZQb3NzaWJsZShlbGVtZW50
LmdldCgpKS0+ZXhlY3V0ZShjYWNoZWRTY3JpcHQpOwogICAgICAgICBtX2RvY3VtZW50LmRlY3Jl
bWVudExvYWRFdmVudERlbGF5Q291bnQoKTsKICAgICB9CisgICAgTWljcm9UYXNrUXVldWU6OnNp
bmdsZXRvbigpLnJ1bk1pY3JvVGFza3MoKTsKIH0KIAogfQpkaWZmIC0tZ2l0IGEvU291cmNlL1dl
YkNvcmUvaHRtbC9wYXJzZXIvSFRNTFNjcmlwdFJ1bm5lci5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9o
dG1sL3BhcnNlci9IVE1MU2NyaXB0UnVubmVyLmNwcAppbmRleCA0MWU3MjVmNjBkZTg2ODFmMWNm
OGRiNGI1Yzk4YWRiNjI2MjJmMjFiLi4yN2RkNjczODJhNjAwZmMwMzM4NTJlYzkwMjkyMDE2OTJk
MTQzZGVkIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9odG1sL3BhcnNlci9IVE1MU2NyaXB0
UnVubmVyLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL3BhcnNlci9IVE1MU2NyaXB0UnVu
bmVyLmNwcApAQCAtMzYsNiArMzYsNyBAQAogI2luY2x1ZGUgIkhUTUxOYW1lcy5oIgogI2luY2x1
ZGUgIkhUTUxTY3JpcHRSdW5uZXJIb3N0LmgiCiAjaW5jbHVkZSAiSWdub3JlRGVzdHJ1Y3RpdmVX
cml0ZUNvdW50SW5jcmVtZW50ZXIuaCIKKyNpbmNsdWRlICJNaWNyb1Rhc2suaCIKICNpbmNsdWRl
ICJNdXRhdGlvbk9ic2VydmVyLmgiCiAjaW5jbHVkZSAiTmVzdGluZ0xldmVsSW5jcmVtZW50ZXIu
aCIKICNpbmNsdWRlICJOb3RJbXBsZW1lbnRlZC5oIgpAQCAtMTI5LDggKzEzMCwxMCBAQCB2b2lk
IEhUTUxTY3JpcHRSdW5uZXI6OmV4ZWN1dGVQZW5kaW5nU2NyaXB0QW5kRGlzcGF0Y2hFdmVudChQ
ZW5kaW5nU2NyaXB0JiBwZW5kaQogICAgIGlmIChwZW5kaW5nU2NyaXB0LmNhY2hlZFNjcmlwdCgp
ICYmIHBlbmRpbmdTY3JpcHQud2F0Y2hpbmdGb3JMb2FkKCkpCiAgICAgICAgIHN0b3BXYXRjaGlu
Z0ZvckxvYWQocGVuZGluZ1NjcmlwdCk7CiAKLSAgICBpZiAoIWlzRXhlY3V0aW5nU2NyaXB0KCkp
CisgICAgaWYgKCFpc0V4ZWN1dGluZ1NjcmlwdCgpKSB7CiAgICAgICAgIE11dGF0aW9uT2JzZXJ2
ZXI6OmRlbGl2ZXJBbGxNdXRhdGlvbnMoKTsKKyAgICAgICAgTWljcm9UYXNrUXVldWU6OnNpbmds
ZXRvbigpLnJ1bk1pY3JvVGFza3MoKTsKKyAgICB9CiAKICAgICAvLyBDbGVhciB0aGUgcGVuZGlu
ZyBzY3JpcHQgYmVmb3JlIHBvc3NpYmxlIHJlbnRyYW5jeSBmcm9tIGV4ZWN1dGVTY3JpcHQoKQog
ICAgIFJlZlB0cjxFbGVtZW50PiBlbGVtZW50ID0gcGVuZGluZ1NjcmlwdC5yZWxlYXNlRWxlbWVu
dEFuZENsZWFyKCk7CkBAIC0yMzEsNiArMjM0LDggQEAgYm9vbCBIVE1MU2NyaXB0UnVubmVyOjpl
eGVjdXRlU2NyaXB0c1dhaXRpbmdGb3JQYXJzaW5nKCkKICAgICAgICAgaWYgKCFtX2RvY3VtZW50
KQogICAgICAgICAgICAgcmV0dXJuIGZhbHNlOwogICAgIH0KKyAgICBpZiAoIWlzRXhlY3V0aW5n
U2NyaXB0KCkpCisgICAgICAgIE1pY3JvVGFza1F1ZXVlOjpzaW5nbGV0b24oKS5ydW5NaWNyb1Rh
c2tzKCk7CiAgICAgcmV0dXJuIHRydWU7CiB9CiAKQEAgLTI5Myw4ICsyOTgsMTAgQEAgdm9pZCBI
VE1MU2NyaXB0UnVubmVyOjpydW5TY3JpcHQoRWxlbWVudCogc2NyaXB0LCBjb25zdCBUZXh0UG9z
aXRpb24mIHNjcmlwdFN0YXIKICAgICAgICAgLy8gZXZlcnkgc2NyaXB0IGVsZW1lbnQsIGV2ZW4g
aWYgaXQncyBub3QgcmVhZHkgdG8gZXhlY3V0ZSB5ZXQuIFRoZXJlJ3MKICAgICAgICAgLy8gdW5m
b3J0dWFudGVseSBubyBvYnZpb3VzIHdheSB0byB0ZWxsIGlmIHByZXBhcmVTY3JpcHQgaXMgZ29p
bmcgdG8KICAgICAgICAgLy8gZXhlY3V0ZSB0aGUgc2NyaXB0IGZyb20gb3V0IGhlcmUuCi0gICAg
ICAgIGlmICghaXNFeGVjdXRpbmdTY3JpcHQoKSkKKyAgICAgICAgaWYgKCFpc0V4ZWN1dGluZ1Nj
cmlwdCgpKSB7CiAgICAgICAgICAgICBNdXRhdGlvbk9ic2VydmVyOjpkZWxpdmVyQWxsTXV0YXRp
b25zKCk7CisgICAgICAgICAgICBNaWNyb1Rhc2tRdWV1ZTo6c2luZ2xldG9uKCkucnVuTWljcm9U
YXNrcygpOworICAgICAgICB9CiAKICAgICAgICAgSW5zZXJ0aW9uUG9pbnRSZWNvcmQgaW5zZXJ0
aW9uUG9pbnRSZWNvcmQobV9ob3N0LmlucHV0U3RyZWFtKCkpOwogICAgICAgICBOZXN0aW5nTGV2
ZWxJbmNyZW1lbnRlciBuZXN0aW5nTGV2ZWxJbmNyZW1lbnRlcihtX3NjcmlwdE5lc3RpbmdMZXZl
bCk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS90ZXN0aW5nL0ludGVybmFscy5jcHAgYi9T
b3VyY2UvV2ViQ29yZS90ZXN0aW5nL0ludGVybmFscy5jcHAKaW5kZXggZGE2ZTcwOTBjNjI0ZjE1
NTRiMzg3ZjIwMWM4ZWE1NzVmNzRhODdlMC4uNTcxNmY4NGQxM2RlMWQ0NjU4NDQ3OGY0ODgwZWNj
YzZhNTY4Y2FiZiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvdGVzdGluZy9JbnRlcm5hbHMu
Y3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3Rlc3RpbmcvSW50ZXJuYWxzLmNwcApAQCAtNzksNiAr
NzksOCBAQAogI2luY2x1ZGUgIk1lZGlhU2Vzc2lvbk1hbmFnZXIuaCIKICNpbmNsdWRlICJNZW1v
cnlDYWNoZS5oIgogI2luY2x1ZGUgIk1lbW9yeUluZm8uaCIKKyNpbmNsdWRlICJNaWNyb1Rhc2su
aCIKKyNpbmNsdWRlICJNaWNyb1Rhc2tUZXN0LmgiCiAjaW5jbHVkZSAiTW9ja1BhZ2VPdmVybGF5
Q2xpZW50LmgiCiAjaW5jbHVkZSAiUGFnZS5oIgogI2luY2x1ZGUgIlBhZ2VDYWNoZS5oIgpAQCAt
MjUzMiw0ICsyNTM0LDEwIEBAIFJlZlB0cjxGaWxlPiBJbnRlcm5hbHM6OmNyZWF0ZUZpbGUoY29u
c3QgU3RyaW5nJiBwYXRoKQogICAgIHJldHVybiBGaWxlOjpjcmVhdGUodXJsLmZpbGVTeXN0ZW1Q
YXRoKCkpOwogfQogCit2b2lkIEludGVybmFsczo6cXVldWVNaWNyb1Rhc2soaW50IHRlc3ROdW1i
ZXIpCit7CisgICAgaWYgKGNvbnRleHREb2N1bWVudCgpKQorICAgICAgICBNaWNyb1Rhc2tRdWV1
ZTo6c2luZ2xldG9uKCkucXVldWVNaWNyb1Rhc2soTWljcm9UYXNrVGVzdDo6Y3JlYXRlKGNvbnRl
eHREb2N1bWVudCgpLT5jcmVhdGVXZWFrUHRyKCksIHRlc3ROdW1iZXIpKTsKK30KKwogfQpkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvdGVzdGluZy9JbnRlcm5hbHMuaCBiL1NvdXJjZS9XZWJD
b3JlL3Rlc3RpbmcvSW50ZXJuYWxzLmgKaW5kZXggMWI5YjhkNzhjNjkyZTgzMmRiNmI2ZmQ5ZDk2
ZjRlY2RmODgwYWE5Mi4uYzg3OGY1OTA2Y2NlYjU4MDkwMjMwYmQ2NDEyMGE2ODA2YzBjY2U5ZCAx
MDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvdGVzdGluZy9JbnRlcm5hbHMuaAorKysgYi9Tb3Vy
Y2UvV2ViQ29yZS90ZXN0aW5nL0ludGVybmFscy5oCkBAIC0zNjYsNiArMzY2LDcgQEAgcHVibGlj
OgogICAgIGJvb2wgaXNQYWdlUGxheWluZ0F1ZGlvKCk7CiAKICAgICBSZWZQdHI8RmlsZT4gY3Jl
YXRlRmlsZShjb25zdCBTdHJpbmcmKTsKKyAgICB2b2lkIHF1ZXVlTWljcm9UYXNrKGludCk7CiAK
IHByaXZhdGU6CiAgICAgZXhwbGljaXQgSW50ZXJuYWxzKERvY3VtZW50Kik7CmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViQ29yZS90ZXN0aW5nL0ludGVybmFscy5pZGwgYi9Tb3VyY2UvV2ViQ29yZS90
ZXN0aW5nL0ludGVybmFscy5pZGwKaW5kZXggNDk3NzI1Y2QyYjkwY2U5MWY1YjI0ZThhN2Y0MWZk
NDU1NDBhYzY2Yy4uNDA2YTkyYmRmY2MwMmMxMTNmMDExZDczNTY5ZTg3ZDU2ODE5NzUwMyAxMDA2
NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvdGVzdGluZy9JbnRlcm5hbHMuaWRsCisrKyBiL1NvdXJj
ZS9XZWJDb3JlL3Rlc3RpbmcvSW50ZXJuYWxzLmlkbApAQCAtMzIyLDQgKzMyMiw1IEBAIGVudW0g
UGFnZU92ZXJsYXlUeXBlIHsKICAgICBib29sZWFuIGlzUGFnZVBsYXlpbmdBdWRpbygpOwogICAg
IAogICAgIEZpbGUgY3JlYXRlRmlsZShET01TdHJpbmcgdXJsKTsKKyAgICB2b2lkIHF1ZXVlTWlj
cm9UYXNrKGxvbmcgdGVzdE51bWJlcik7CiB9OwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUv
dGVzdGluZy9NaWNyb1Rhc2tUZXN0LmNwcCBiL1NvdXJjZS9XZWJDb3JlL3Rlc3RpbmcvTWljcm9U
YXNrVGVzdC5jcHAKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uNDEzZjJmZGE4M2JjZjdmNGNjYWM2NmRjMDljYzVlNmYz
ZDg0YjFhYgotLS0gL2Rldi9udWxsCisrKyBiL1NvdXJjZS9XZWJDb3JlL3Rlc3RpbmcvTWljcm9U
YXNrVGVzdC5jcHAKQEAgLTAsMCArMSw0MyBAQAorLyoKKyAqIENvcHlyaWdodCAoQykgMjAxNSBB
a2FtYWkgVGVjaG5vbG9naWVzIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAqCisgKiBUaGlz
IGxpYnJhcnkgaXMgZnJlZSBzb2Z0d2FyZTsgeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29y
CisgKiBtb2RpZnkgaXQgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUgTGlicmFyeSBHZW5lcmFs
IFB1YmxpYworICogTGljZW5zZSBhcyBwdWJsaXNoZWQgYnkgdGhlIEZyZWUgU29mdHdhcmUgRm91
bmRhdGlvbjsgZWl0aGVyCisgKiB2ZXJzaW9uIDIgb2YgdGhlIExpY2Vuc2UsIG9yIChhdCB5b3Vy
IG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uCisgKgorICogVGhpcyBsaWJyYXJ5IGlzIGRpc3Ry
aWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCisgKiBidXQgV0lUSE9V
VCBBTlkgV0FSUkFOVFk7IHdpdGhvdXQgZXZlbiB0aGUgaW1wbGllZCB3YXJyYW50eSBvZgorICog
TUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFLiAgU2Vl
IHRoZSBHTlUKKyAqIExpYnJhcnkgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBmb3IgbW9yZSBkZXRh
aWxzLgorICoKKyAqIFlvdSBzaG91bGQgaGF2ZSByZWNlaXZlZCBhIGNvcHkgb2YgdGhlIEdOVSBM
aWJyYXJ5IEdlbmVyYWwgUHVibGljIExpY2Vuc2UKKyAqIGFsb25nIHdpdGggdGhpcyBsaWJyYXJ5
OyBzZWUgdGhlIGZpbGUgQ09QWUlORy5MSUIuICBJZiBub3QsIHdyaXRlIHRvCisgKiB0aGUgRnJl
ZSBTb2Z0d2FyZSBGb3VuZGF0aW9uLCBJbmMuLCA1MSBGcmFua2xpbiBTdHJlZXQsIEZpZnRoIEZs
b29yLAorICogQm9zdG9uLCBNQSAwMjExMC0xMzAxLCBVU0EuCisgKgorICovCisKKyNpbmNsdWRl
ICJjb25maWcuaCIKKyNpbmNsdWRlICJNaWNyb1Rhc2tUZXN0LmgiCisKKyNpbmNsdWRlICJEb2N1
bWVudC5oIgorCituYW1lc3BhY2UgV2ViQ29yZSB7CisKK3ZvaWQgTWljcm9UYXNrVGVzdDo6cnVu
KCkKK3sKKyAgICBTdHJpbmdCdWlsZGVyIG1lc3NhZ2U7CisgICAgbWVzc2FnZS5hcHBlbmQoIk1p
Y3JvVGFzayAjIik7CisgICAgbWVzc2FnZS5hcHBlbmQoU3RyaW5nOjpudW1iZXIobV90ZXN0TnVt
YmVyKSk7CisgICAgbWVzc2FnZS5hcHBlbmQoIiBoYXMgcnVuLiIpOworICAgIGlmIChtX2RvY3Vt
ZW50KQorICAgICAgICBtX2RvY3VtZW50LT5hZGRDb25zb2xlTWVzc2FnZShNZXNzYWdlU291cmNl
OjpKUywgTWVzc2FnZUxldmVsOjpEZWJ1ZywgbWVzc2FnZS50b1N0cmluZygpKTsKK30KKworc3Rk
Ojp1bmlxdWVfcHRyPE1pY3JvVGFza1Rlc3Q+IE1pY3JvVGFza1Rlc3Q6OmNyZWF0ZShXZWFrUHRy
PERvY3VtZW50PiBkb2N1bWVudCwgaW50IHRlc3ROdW1iZXIpCit7CisgICAgcmV0dXJuIHN0ZDo6
dW5pcXVlX3B0cjxNaWNyb1Rhc2tUZXN0PihuZXcgTWljcm9UYXNrVGVzdChkb2N1bWVudCwgdGVz
dE51bWJlcikpOworfQorCit9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViQ29yZS90ZXN0aW5nL01pY3JvVGFza1Rlc3QuaCBiL1NvdXJjZS9XZWJDb3JlL3Rlc3Rp
bmcvTWljcm9UYXNrVGVzdC5oCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmE3NDIyZTg2NzhiZjJmN2ZmYWYzMTllYmFk
ODMyZDMzNzE0MGQyZTIKLS0tIC9kZXYvbnVsbAorKysgYi9Tb3VyY2UvV2ViQ29yZS90ZXN0aW5n
L01pY3JvVGFza1Rlc3QuaApAQCAtMCwwICsxLDQ5IEBACisvKgorICogQ29weXJpZ2h0IChDKSAy
MDE1IEFrYW1haSBUZWNobm9sb2dpZXMgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICoKKyAq
IFRoaXMgbGlicmFyeSBpcyBmcmVlIHNvZnR3YXJlOyB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBh
bmQvb3IKKyAqIG1vZGlmeSBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBMaWJyYXJ5IEdl
bmVyYWwgUHVibGljCisgKiBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieSB0aGUgRnJlZSBTb2Z0d2Fy
ZSBGb3VuZGF0aW9uOyBlaXRoZXIKKyAqIHZlcnNpb24gMiBvZiB0aGUgTGljZW5zZSwgb3IgKGF0
IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KKyAqCisgKiBUaGlzIGxpYnJhcnkgaXMg
ZGlzdHJpYnV0ZWQgaW4gdGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCwKKyAqIGJ1dCBX
SVRIT1VUIEFOWSBXQVJSQU5UWTsgd2l0aG91dCBldmVuIHRoZSBpbXBsaWVkIHdhcnJhbnR5IG9m
CisgKiBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0Uu
ICBTZWUgdGhlIEdOVQorICogTGlicmFyeSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGZvciBtb3Jl
IGRldGFpbHMuCisgKgorICogWW91IHNob3VsZCBoYXZlIHJlY2VpdmVkIGEgY29weSBvZiB0aGUg
R05VIExpYnJhcnkgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQorICogYWxvbmcgd2l0aCB0aGlzIGxp
YnJhcnk7IHNlZSB0aGUgZmlsZSBDT1BZSU5HLkxJQi4gIElmIG5vdCwgd3JpdGUgdG8KKyAqIHRo
ZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb24sIEluYy4sIDUxIEZyYW5rbGluIFN0cmVldCwgRmlm
dGggRmxvb3IsCisgKiBCb3N0b24sIE1BIDAyMTEwLTEzMDEsIFVTQS4KKyAqCisgKi8KKworI2lm
bmRlZiBNaWNyb1Rhc2tUZXN0X2gKKyNkZWZpbmUgTWljcm9UYXNrVGVzdF9oCisKKyNpbmNsdWRl
ICJNaWNyb1Rhc2suaCIKKyNpbmNsdWRlIDx3dGYvV2Vha1B0ci5oPgorCituYW1lc3BhY2UgV2Vi
Q29yZSB7CisKK2NsYXNzIERvY3VtZW50OworCitjbGFzcyBNaWNyb1Rhc2tUZXN0IDogcHVibGlj
IE1pY3JvVGFzayB7CitwdWJsaWM6CisgICAgdmlydHVhbCB2b2lkIHJ1bigpIG92ZXJyaWRlOwor
ICAgIFdFQkNPUkVfVEVTVFNVUFBPUlRfRVhQT1JUIHN0YXRpYyBzdGQ6OnVuaXF1ZV9wdHI8TWlj
cm9UYXNrVGVzdD4gY3JlYXRlKFdlYWtQdHI8RG9jdW1lbnQ+LCBpbnQgdGVzdE51bWJlcik7CisK
K3ByaXZhdGU6CisgICAgTWljcm9UYXNrVGVzdChXZWFrUHRyPERvY3VtZW50PiBkb2N1bWVudCwg
aW50IHRlc3ROdW1iZXIpCisgICAgICAgIDogbV9kb2N1bWVudChkb2N1bWVudCkKKyAgICAgICAg
LCBtX3Rlc3ROdW1iZXIodGVzdE51bWJlcikKKyAgICB7CisgICAgfQorCisgICAgV2Vha1B0cjxE
b2N1bWVudD4gbV9kb2N1bWVudDsKKyAgICBpbnQgbV90ZXN0TnVtYmVyOworfTsKKworfSAvLyBu
YW1lc3BhY2UgV2ViQ29yZQorCisjZW5kaWYKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL0NoYW5n
ZUxvZyBiL0xheW91dFRlc3RzL0NoYW5nZUxvZwppbmRleCAzNGFkZTUzZWYwNjQ1YjYwNGQzM2Fm
ZTc3NTBlMmQzY2IzOTk0YTcwLi4wMTYwOTI3OTk3N2ViZTE5ZDNhMTg5YTNhMjNkNzU3MTVlNTQy
YzQzIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKKysrIGIvTGF5b3V0VGVzdHMv
Q2hhbmdlTG9nCkBAIC0xLDMgKzEsMjAgQEAKKzIwMTUtMDMtMDMgICBZb2F2IFdlaXNzICA8eW9h
dkB5b2F2LndzPgorCisgICAgICAgIEFkZCBhIG1pY3JvdGFzayBhYnN0cmFjdGlvbgorICAgICAg
ICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTM3NDk2CisKKyAgICAg
ICAgUmV2aWV3ZWQgYnkgU2FtIFdlaW5pZy4KKworICAgICAgICBBZGRpbmcgYSB0ZXN0IGZvciBt
aWNyb3Rhc2sgYWJzdHJhY3Rpb24uCisgICAgICAgIEEgc2ltaWxhciBwYXRjaCB3YXMgcm9sbGVk
IGJhY2sgaW4gcjE4MDkxNC4KKworICAgICAgICAqIGZhc3QvZG9tL21pY3JvdGFzay1kZXRhY2gu
aHRtbDogQWRkZWQuCisgICAgICAgICogZmFzdC9kb20vbWljcm90YXNrLWRldGFjaC1leHBlY3Rl
ZC50eHQ6IEFkZGVkLgorICAgICAgICAqIGZhc3QvZG9tL21pY3JvdGFzay1pbm9yZGVyLmh0bWw6
IEFkZGVkLgorICAgICAgICAqIGZhc3QvZG9tL21pY3JvdGFzay1pbm9yZGVyLWV4cGVjdGVkLnR4
dDogQWRkZWQuCisgICAgICAgICogZmFzdC9kb20vbWljcm90YXNrLXJldmVyc2UuaHRtbDogQWRk
ZWQuCisgICAgICAgICogZmFzdC9kb20vbWljcm90YXNrLXJldmVyc2UtZXhwZWN0ZWQudHh0OiBB
ZGRlZC4KKwogMjAxNS0wMy0wMiAgTWFyayBMYW0gIDxtYXJrLmxhbUBhcHBsZS5jb20+CiAKICAg
ICAgICAgR2FyZGVuaW5nOiBza2lwcGluZyBpbnNwZWN0b3IvdGltZWxpbmUgdGVzdHMgc2luY2Ug
dGhleSBhcmUgc3RpbGwgZmxha3kuCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L2RvbS9t
aWNyb3Rhc2stZGV0YWNoLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2Zhc3QvZG9tL21pY3Jv
dGFzay1kZXRhY2gtZXhwZWN0ZWQudHh0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjI4Y2QyOTU2OGUyMGY2ZWU0ZGJk
OWE0MWNiNmY4NmM0ODI3ZjkxNjEKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9mYXN0
L2RvbS9taWNyb3Rhc2stZGV0YWNoLWV4cGVjdGVkLnR4dApAQCAtMCwwICsxLDkgQEAKK0NPTlNP
TEUgTUVTU0FHRTogbGluZSAzMTogRmluaXNoZWQgcXVldWVpbmcgdGVzdHMuCitDT05TT0xFIE1F
U1NBR0U6IE1pY3JvVGFzayAjMSBoYXMgcnVuLgorQ09OU09MRSBNRVNTQUdFOiBNaWNyb1Rhc2sg
IzAgaGFzIHJ1bi4KKworCistLS0tLS0tLQorRnJhbWU6ICdmcmFtZTEnCistLS0tLS0tLQorCmRp
ZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L2RvbS9taWNyb3Rhc2stZGV0YWNoLmh0bWwgYi9M
YXlvdXRUZXN0cy9mYXN0L2RvbS9taWNyb3Rhc2stZGV0YWNoLmh0bWwKbmV3IGZpbGUgbW9kZSAx
MDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uODk3
NzczMjdlYTU3MzE1NWZiYjY2ZGEyNmQyNzkwNDViZjFmY2E0ZAotLS0gL2Rldi9udWxsCisrKyBi
L0xheW91dFRlc3RzL2Zhc3QvZG9tL21pY3JvdGFzay1kZXRhY2guaHRtbApAQCAtMCwwICsxLDM3
IEBACis8IURPQ1RZUEUgaHRtbD4KKzxzY3JpcHQ+CitpZiAod2luZG93LnRlc3RSdW5uZXIpIHsK
KyAgICB0ZXN0UnVubmVyLmR1bXBBc1RleHQoKTsKKyAgICB0ZXN0UnVubmVyLmR1bXBDaGlsZEZy
YW1lc0FzVGV4dCgpOworICAgIHRlc3RSdW5uZXIud2FpdFVudGlsRG9uZSgpOworfQorPC9zY3Jp
cHQ+Cis8Ym9keT4KKzxpZnJhbWUgaWQ9ImZyYW1lMSI+PC9pZnJhbWU+Cis8aWZyYW1lIGlkPSJm
cmFtZTIiPjwvaWZyYW1lPgorPHNjcmlwdD4KKworKGZ1bmN0aW9uKCkgeworICAgIHZhciBpZnJh
bWUxID0gZG9jdW1lbnQucXVlcnlTZWxlY3RvcigiI2ZyYW1lMSIpLmNvbnRlbnRXaW5kb3c7Cisg
ICAgdmFyIGlmcmFtZTJOb2RlID0gZG9jdW1lbnQucXVlcnlTZWxlY3RvcigiI2ZyYW1lMiIpOwor
ICAgIHZhciBpZnJhbWUyID0gaWZyYW1lMk5vZGUuY29udGVudFdpbmRvdzsKKworICAgIGlmKGlm
cmFtZTIuaW50ZXJuYWxzKQorICAgICAgICBpZnJhbWUyLmludGVybmFscy5xdWV1ZU1pY3JvVGFz
aygyKTsKKyAgICBpZihpZnJhbWUxLmludGVybmFscykKKyAgICAgICAgaWZyYW1lMS5pbnRlcm5h
bHMucXVldWVNaWNyb1Rhc2soMSk7CisgICAgaWYod2luZG93LmludGVybmFscykKKyAgICAgICAg
aW50ZXJuYWxzLnF1ZXVlTWljcm9UYXNrKDApOworICAgIGRvY3VtZW50LmJvZHkucmVtb3ZlQ2hp
bGQoaWZyYW1lMk5vZGUpOworfSgpKTsKKworaWYgKHdpbmRvdy5HQ0NvbnRyb2xsZXIpCisgICAg
R0NDb250cm9sbGVyLmNvbGxlY3QoKTsKKworY29uc29sZS5sb2coIkZpbmlzaGVkIHF1ZXVlaW5n
IHRlc3RzLiIpOworcmVxdWVzdEFuaW1hdGlvbkZyYW1lKGZ1bmN0aW9uKCkgeworICAgIGlmICh3
aW5kb3cudGVzdFJ1bm5lcikKKyAgICAgICAgdGVzdFJ1bm5lci5ub3RpZnlEb25lKCk7Cit9KTsK
Kzwvc2NyaXB0PgorPC9ib2R5PgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9kb20vbWlj
cm90YXNrLWlub3JkZXItZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvZmFzdC9kb20vbWljcm90
YXNrLWlub3JkZXItZXhwZWN0ZWQudHh0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjAzODBiOTRjN2M4MTgzYTY5NmUx
YWIyMjY5OWVhY2FmY2QzZGQzNzMKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9mYXN0
L2RvbS9taWNyb3Rhc2staW5vcmRlci1leHBlY3RlZC50eHQKQEAgLTAsMCArMSwxNSBAQAorQ09O
U09MRSBNRVNTQUdFOiBsaW5lIDIzOiBGaW5pc2hlZCBxdWV1ZWluZyB0ZXN0cy4KK0NPTlNPTEUg
TUVTU0FHRTogTWljcm9UYXNrICMyIGhhcyBydW4uCitDT05TT0xFIE1FU1NBR0U6IE1pY3JvVGFz
ayAjMSBoYXMgcnVuLgorQ09OU09MRSBNRVNTQUdFOiBNaWNyb1Rhc2sgIzAgaGFzIHJ1bi4KKyAK
KworLS0tLS0tLS0KK0ZyYW1lOiAnZnJhbWUxJworLS0tLS0tLS0KKworCistLS0tLS0tLQorRnJh
bWU6ICdmcmFtZTInCistLS0tLS0tLQorCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L2Rv
bS9taWNyb3Rhc2staW5vcmRlci5odG1sIGIvTGF5b3V0VGVzdHMvZmFzdC9kb20vbWljcm90YXNr
LWlub3JkZXIuaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi43OWM4ZTJmNzg5ODNhM2U2ODVlYWMxNTUwOTU2MTAx
MWU4NjFmOWE5Ci0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC9kb20vbWljcm90
YXNrLWlub3JkZXIuaHRtbApAQCAtMCwwICsxLDI4IEBACis8IURPQ1RZUEUgaHRtbD4KKzxzY3Jp
cHQ+CitpZiAod2luZG93LnRlc3RSdW5uZXIpIHsKKyAgICB0ZXN0UnVubmVyLmR1bXBBc1RleHQo
KTsKKyAgICB0ZXN0UnVubmVyLmR1bXBDaGlsZEZyYW1lc0FzVGV4dCgpOworICAgIHRlc3RSdW5u
ZXIud2FpdFVudGlsRG9uZSgpOworfQorPC9zY3JpcHQ+Cis8aWZyYW1lIGlkPSJmcmFtZTEiPjwv
aWZyYW1lPgorPGlmcmFtZSBpZD0iZnJhbWUyIj48L2lmcmFtZT4KKzxzY3JpcHQ+CisKK3ZhciBp
ZnJhbWUxID0gZG9jdW1lbnQucXVlcnlTZWxlY3RvcigiI2ZyYW1lMSIpLmNvbnRlbnRXaW5kb3c7
Cit2YXIgaWZyYW1lMiA9IGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoIiNmcmFtZTIiKS5jb250ZW50
V2luZG93OworCitpZihpZnJhbWUyLmludGVybmFscykKKyAgICBpZnJhbWUyLmludGVybmFscy5x
dWV1ZU1pY3JvVGFzaygyKTsKK2lmKGlmcmFtZTEuaW50ZXJuYWxzKQorICAgIGlmcmFtZTEuaW50
ZXJuYWxzLnF1ZXVlTWljcm9UYXNrKDEpOworaWYod2luZG93LmludGVybmFscykKKyAgICBpbnRl
cm5hbHMucXVldWVNaWNyb1Rhc2soMCk7CisKK2NvbnNvbGUubG9nKCJGaW5pc2hlZCBxdWV1ZWlu
ZyB0ZXN0cy4iKTsKK3JlcXVlc3RBbmltYXRpb25GcmFtZShmdW5jdGlvbigpIHsKKyAgICBpZiAo
d2luZG93LnRlc3RSdW5uZXIpCisgICAgICAgIHRlc3RSdW5uZXIubm90aWZ5RG9uZSgpOworfSk7
Cis8L3NjcmlwdD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3QvZG9tL21pY3JvdGFzay1y
ZXZlcnNlLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2Zhc3QvZG9tL21pY3JvdGFzay1yZXZl
cnNlLWV4cGVjdGVkLnR4dApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi4yZWM4OGJiNTRmMGJhZmZmMmI0OTRlMjIzM2Fm
ZWU0MzU4MzY3YTNhCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC9kb20vbWlj
cm90YXNrLXJldmVyc2UtZXhwZWN0ZWQudHh0CkBAIC0wLDAgKzEsMTUgQEAKK0NPTlNPTEUgTUVT
U0FHRTogbGluZSAyMzogRmluaXNoZWQgcXVldWVpbmcgdGVzdHMuCitDT05TT0xFIE1FU1NBR0U6
IE1pY3JvVGFzayAjMCBoYXMgcnVuLgorQ09OU09MRSBNRVNTQUdFOiBNaWNyb1Rhc2sgIzEgaGFz
IHJ1bi4KK0NPTlNPTEUgTUVTU0FHRTogTWljcm9UYXNrICMyIGhhcyBydW4uCisgCisKKy0tLS0t
LS0tCitGcmFtZTogJ2ZyYW1lMScKKy0tLS0tLS0tCisKKworLS0tLS0tLS0KK0ZyYW1lOiAnZnJh
bWUyJworLS0tLS0tLS0KKwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9kb20vbWljcm90
YXNrLXJldmVyc2UuaHRtbCBiL0xheW91dFRlc3RzL2Zhc3QvZG9tL21pY3JvdGFzay1yZXZlcnNl
Lmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMC4uYjFiNGU3Nzg2MjE3YmFkMzZjZGY5MDQ5YjljM2U4ZjRmYTI3MmJk
MAotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2Zhc3QvZG9tL21pY3JvdGFzay1yZXZl
cnNlLmh0bWwKQEAgLTAsMCArMSwyOCBAQAorPCFET0NUWVBFIGh0bWw+Cis8c2NyaXB0PgoraWYg
KHdpbmRvdy50ZXN0UnVubmVyKSB7CisgICAgdGVzdFJ1bm5lci5kdW1wQXNUZXh0KCk7CisgICAg
dGVzdFJ1bm5lci5kdW1wQ2hpbGRGcmFtZXNBc1RleHQoKTsKKyAgICB0ZXN0UnVubmVyLndhaXRV
bnRpbERvbmUoKTsKK30KKzwvc2NyaXB0PgorPGlmcmFtZSBpZD0iZnJhbWUxIj48L2lmcmFtZT4K
KzxpZnJhbWUgaWQ9ImZyYW1lMiI+PC9pZnJhbWU+Cis8c2NyaXB0PgorCit2YXIgaWZyYW1lMSA9
IGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoIiNmcmFtZTEiKS5jb250ZW50V2luZG93OwordmFyIGlm
cmFtZTIgPSBkb2N1bWVudC5xdWVyeVNlbGVjdG9yKCIjZnJhbWUyIikuY29udGVudFdpbmRvdzsK
KworaWYod2luZG93LmludGVybmFscykKKyAgICBpbnRlcm5hbHMucXVldWVNaWNyb1Rhc2soMCk7
CitpZihpZnJhbWUxLmludGVybmFscykKKyAgICBpZnJhbWUxLmludGVybmFscy5xdWV1ZU1pY3Jv
VGFzaygxKTsKK2lmKGlmcmFtZTIuaW50ZXJuYWxzKQorICAgIGlmcmFtZTIuaW50ZXJuYWxzLnF1
ZXVlTWljcm9UYXNrKDIpOworCitjb25zb2xlLmxvZygiRmluaXNoZWQgcXVldWVpbmcgdGVzdHMu
Iik7CityZXF1ZXN0QW5pbWF0aW9uRnJhbWUoZnVuY3Rpb24oKSB7CisgICAgaWYgKHdpbmRvdy50
ZXN0UnVubmVyKQorICAgICAgICB0ZXN0UnVubmVyLm5vdGlmeURvbmUoKTsKK30pOworPC9zY3Jp
cHQ+Cg==
</data>

          </attachment>
      

    </bug>

</bugzilla>