<?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>43988</bug_id>
          
          <creation_ts>2010-08-13 12:58:27 -0700</creation_ts>
          <short_desc>Web Inspector: Remote Web Inspector support for QtWebKit</short_desc>
          <delta_ts>2010-12-16 09:38:41 -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>Web Inspector (Deprecated)</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>All</rep_platform>
          <op_sys>All</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords></keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          <dependson>43970</dependson>
          
          <everconfirmed>0</everconfirmed>
          <reporter name="Jamey Hicks">jamey.hicks</reporter>
          <assigned_to name="Nobody">webkit-unassigned</assigned_to>
          <cc>abarth</cc>
    
    <cc>bweinstein</cc>
    
    <cc>commit-queue</cc>
    
    <cc>eostroukhov</cc>
    
    <cc>eric</cc>
    
    <cc>joepeck</cc>
    
    <cc>keishi</cc>
    
    <cc>kenneth</cc>
    
    <cc>kent.hansen</cc>
    
    <cc>loislo</cc>
    
    <cc>pfeldman</cc>
    
    <cc>pmuellr</cc>
    
    <cc>rik</cc>
    
    <cc>timothy</cc>
    
    <cc>webkit-ews</cc>
    
    <cc>webkit.review.bot</cc>
    
    <cc>yurys</cc>
    
    <cc>zuh</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>264474</commentid>
    <comment_count>0</comment_count>
      <attachid>64366</attachid>
    <who name="Jamey Hicks">jamey.hicks</who>
    <bug_when>2010-08-13 12:58:27 -0700</bug_when>
    <thetext>Created attachment 64366
patch to enable remote web inspector for Qt

Adds Qt support for remote Web Inspector.

Runs a web debug server on port 9222, as specified by property q_webDebugServerPort on QWebPage instances. All pages with that property set will be remotely inspectable.

URL for remote inspection of first QWebPage is http://localhost:9222/devtools/page/1 (where 1 is the number of the QWebPage instance).</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>264475</commentid>
    <comment_count>1</comment_count>
      <attachid>64367</attachid>
    <who name="Jamey Hicks">jamey.hicks</who>
    <bug_when>2010-08-13 12:59:53 -0700</bug_when>
    <thetext>Created attachment 64367
screen shot showing Safari on right remotely inspecting QtTestBrowser on left</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>264478</commentid>
    <comment_count>2</comment_count>
    <who name="Jamey Hicks">jamey.hicks</who>
    <bug_when>2010-08-13 13:07:07 -0700</bug_when>
    <thetext>This patch depends on the addition of a WebSocket to inspector.js to communicate with the inspector backend in the remote case.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>264618</commentid>
    <comment_count>3</comment_count>
      <attachid>64404</attachid>
    <who name="Ilya Tikhonovsky">loislo</who>
    <bug_when>2010-08-13 21:51:25 -0700</bug_when>
    <thetext>Created attachment 64404
the same patch just for checking on try bots. Old one was  not processed because jamey.hicks is not a committer.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>264683</commentid>
    <comment_count>4</comment_count>
    <who name="Kenneth Rohde Christiansen">kenneth</who>
    <bug_when>2010-08-14 08:12:44 -0700</bug_when>
    <thetext>Hmm, this didn&apos;t seem to apply for some reason.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>265499</commentid>
    <comment_count>5</comment_count>
      <attachid>64581</attachid>
    <who name="Jamey Hicks">jamey.hicks</who>
    <bug_when>2010-08-17 06:17:44 -0700</bug_when>
    <thetext>Created attachment 64581
revised patch to apply against current webkit trunk</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>265594</commentid>
    <comment_count>6</comment_count>
      <attachid>64599</attachid>
    <who name="Jamey Hicks">jamey.hicks</who>
    <bug_when>2010-08-17 09:13:33 -0700</bug_when>
    <thetext>Created attachment 64599
patch to enable remote web inspector for qtwebkit

Previous patch had two problems:
1) remote web inspector was alway enabled. Now enabled only if property _q_webDebugServerPort is set on QWebPage instances. QtTestBrowser takes argument -remote-inspector-port to control this property.
2) Fixed a segv on close of the QWebView window when remote inspector is enabled.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>265860</commentid>
    <comment_count>7</comment_count>
      <attachid>64599</attachid>
    <who name="Ariya Hidayat">ariya.hidayat</who>
    <bug_when>2010-08-17 17:15:41 -0700</bug_when>
    <thetext>Comment on attachment 64599
patch to enable remote web inspector for qtwebkit

Overall looks good, with some minor issues (hence r-). I might add more comments soon.

WebCore/WebCore.pro:2271
 +      ../WebKit/qt/WebCoreSupport/WebDebugServerQt.cpp \
Does it have to be WebDebugServerQt? Can we use a name like InspectorServerQt?

WebKit/qt/Api/qwebinspector.cpp:211
 +  
This function is really confusing. It&apos;s not clear who owns newRemoteFrontend. This is mostly looking like &quot;please reparent this object&quot; rather than &quot;please use this object as the remote front-end&quot;. Is the setParent part really necessary.

WebKit/qt/Api/qwebpage.cpp:1301
 +  	webDebugServer-&gt;listen(q-&gt;property(&quot;_q_webDebugServerPort&quot;).toInt());
Use spaces to indent, not tabs.

WebKit/qt/Api/qwebpage.cpp: 
 +  #include &lt;QHttpRequestHeader&gt;
Why is this one removed?

WebKit/qt/WebCoreSupport/InspectorClientQt.cpp:155
 +  
No need to add extra space

WebKit/qt/WebCoreSupport/InspectorClientQt.cpp:171
 +      // m_inspectedWebPage-&gt;d-&gt;inspectorController()-&gt;disconnectFrontend();
Is this TODO or FIXME? XXX does not really describe anything.
Also if disconnect is really necessary, then definitely it needs to be implemented.

WebKit/qt/WebCoreSupport/InspectorClientQt.cpp:232
 +          || (m_inspectedWebPage &amp;&amp; m_inspectedWebPage-&gt;property(&quot;_q_webDebugServerPort&quot;).isValid())) {
This property access is repeated many times. Maybe it&apos;s worth to create a function for that?

WebKit/qt/WebCoreSupport/WebDebugServerQt.cpp:40
 +  static bool debug = false;
We need to leave out all debugging.

WebKit/qt/WebCoreSupport/WebDebugServerQt.cpp:88
 +  
Will we leak here? Who deletes sServer?

WebKit/qt/WebCoreSupport/WebDebugServerQt.cpp:118
 +          mTcpServer-&gt;setParent(0);
Why don&apos;t we delete mTcpServer as well?

WebKit/qt/WebCoreSupport/WebDebugServerQt.cpp:208
 +            
Do we need all these qDebug?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>266825</commentid>
    <comment_count>8</comment_count>
      <attachid>64874</attachid>
    <who name="Jamey Hicks">jamey.hicks</who>
    <bug_when>2010-08-19 10:53:23 -0700</bug_when>
    <thetext>Created attachment 64874
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>269152</commentid>
    <comment_count>9</comment_count>
      <attachid>64874</attachid>
    <who name="Kenneth Rohde Christiansen">kenneth</who>
    <bug_when>2010-08-25 04:37:20 -0700</bug_when>
    <thetext>Comment on attachment 64874
Patch

WebKit/qt/Api/qwebinspector.cpp:199
 +  /*! \internal */
In Qt we normally don&apos;t write this on one line.

WebKit/qt/WebCoreSupport/InspectorClientQt.cpp:235
 +          || (m_inspectedWebPage &amp;&amp; m_inspectedWebPage-&gt;d-&gt;inspectorServerPort())) {
no reason to put this on two lines. lines below are wider :-)

WebKit/qt/WebCoreSupport/InspectorClientQt.cpp:238
 +              || !m_inspectedWebPage-&gt;d
do you really need to check if it has the private? Seems more like an assert to me

WebKit/qt/WebCoreSupport/InspectorServerQt.cpp:151
 +          new HttpRequestHandler(mTcpConnection, this);
put this on the same line

WebKit/qt/WebCoreSupport/InspectorServerQt.cpp:162
 +      mEndOfHeaders = false;    
We use m_ not just m, please fix.

WebKit/qt/WebCoreSupport/InspectorServerQt.cpp:189
 +  
please remove this newline

WebKit/qt/WebCoreSupport/InspectorServerQt.cpp:257
 +          int rc = file.open(QIODevice::ReadOnly);
rc meaning what?

WebKit/qt/WebCoreSupport/InspectorServerQt.cpp:255
 +          QString path = QLatin1String(&quot;:&quot;) + mPath;
Wouldn&apos;t using .arg() be more effecient?

WebKit/qt/WebCoreSupport/InspectorServerQt.cpp:262
 +          int code = file.exists() ? 200 : 404;
Dont we have defines for these numbers in webcore?

WebKit/qt/WebCoreSupport/InspectorServerQt.cpp:311
 +  
strange and useless newline inside beginning of if(

WebKit/qt/WebCoreSupport/InspectorServerQt.cpp:329
 +          mData = mData.mid(len+2);
would need spaces around +

WebKit/qt/WebCoreSupport/InspectorServerQt.h:23
 +  class QTcpServer;
These should not be defined above the includes

WebKit/qt/WebCoreSupport/InspectorServerQt.h:40
 +          public:
strange indentation of public:

WebKit/qt/WebCoreSupport/InspectorServerQt.h:46
 +      void registerPage(QWebPage *page, InspectorClientQt* client);
* should be left aligned

WebKit/qt/WebCoreSupport/InspectorServerQt.h:47
 +      void unregisterPage(QWebPage *page);
same here

WebKit/qt/WebCoreSupport/InspectorServerQt.h:62
 +      private slots:
wrong indentation! should be above the private fields

WebKit/qt/WebCoreSupport/InspectorServerQt.h:63
 +      void gotNewConnection();
receivedNewConnection? establishedNewConnection... check what is used for QSocket and friends

WebKit/qt/WebCoreSupport/InspectorServerQt.h:69
 +          public:
wrong indentation

WebKit/qt/WebCoreSupport/InspectorServerQt.h:81
 +          public:
again!

WebKit/qt/WebCoreSupport/InspectorServerQt.h:86
 +      virtual int webSocketSend(const char *payload, size_t len);
length

WebKitTools/QtTestBrowser/launcherwindow.cpp:97
 +  
no need for two newlines, one will do</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>269882</commentid>
    <comment_count>10</comment_count>
      <attachid>65565</attachid>
    <who name="Jamey Hicks">jamey.hicks</who>
    <bug_when>2010-08-26 07:50:00 -0700</bug_when>
    <thetext>Created attachment 65565
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>269884</commentid>
    <comment_count>11</comment_count>
    <who name="Early Warning System Bot">webkit-ews</who>
    <bug_when>2010-08-26 07:59:14 -0700</bug_when>
    <thetext>Attachment 65565 did not build on qt:
Build output: http://queues.webkit.org/results/3806110</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>269887</commentid>
    <comment_count>12</comment_count>
      <attachid>65566</attachid>
    <who name="Jamey Hicks">jamey.hicks</who>
    <bug_when>2010-08-26 08:10:23 -0700</bug_when>
    <thetext>Created attachment 65566
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>270085</commentid>
    <comment_count>13</comment_count>
      <attachid>65566</attachid>
    <who name="Ilya Tikhonovsky">loislo</who>
    <bug_when>2010-08-26 13:36:38 -0700</bug_when>
    <thetext>Comment on attachment 65566
Patch


WebKit/qt/WebCoreSupport/InspectorServerQt.h:62
 +      QMap&lt;QWebPage*, InspectorClientQt*&gt; m_inspectorClients;
It is not clear for me why you use two maps. id to page and page to client.
As I can see you can use simple map id to client.

WebKit/qt/WebCoreSupport/InspectorClientQt.cpp:266
 +  void InspectorClientQt::dispatch(const String &amp;message)
Usually we are using InspectorClient only for sending messages to inspector.
The dispatch implementation should be in InspectorFrontendClient.


WebKit/qt/WebCoreSupport/InspectorClientQt.cpp:129
 +      }
it is not clear for me why you need an explicit m_remoteInspector flag.
I think it would be better to keep both abilities.
1) open local inspector
2) open remote inspector.

WebKit/qt/WebCoreSupport/InspectorClientQt.cpp:243
 +    if (m_remoteInspector 
 +          || (m_inspectedWebPage &amp;&amp; m_inspectedWebPage-&gt;d-&gt;inspectorServerPort())) {
 +          m_remoteInspector = true;
 +          Q_ASSERT(m_inspectedWebPage-&gt;d-&gt;inspector-&gt;d-&gt;remoteFrontend);
 +  
 +          RemoteFrontendChannel* session = qobject_cast&lt;RemoteFrontendChannel*&gt;(m_inspectedWebPage-&gt;d-&gt;inspector-&gt;d-&gt;remoteFrontend);
 +          if (session)
 +              session-&gt;sendMessageToFrontend(message);
 +          return true;
 +      }

I think this portion of code can be simplified a bit.
1) m_remoteFrontend is unnecessary
2) m_inspectedWebPage is always not null
In that case you can just check the RemoteFrontendChannel and if it is not established then try to use local inspector.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>270460</commentid>
    <comment_count>14</comment_count>
    <who name="Jamey Hicks">jamey.hicks</who>
    <bug_when>2010-08-27 06:35:00 -0700</bug_when>
    <thetext>(In reply to comment #13)
&gt; (From update of attachment 65566 [details])
&gt; 
&gt; WebKit/qt/WebCoreSupport/InspectorServerQt.h:62
&gt;  +      QMap&lt;QWebPage*, InspectorClientQt*&gt; m_inspectorClients;
&gt; It is not clear for me why you use two maps. id to page and page to client.
&gt; As I can see you can use simple map id to client.

Good point.

&gt; WebKit/qt/WebCoreSupport/InspectorClientQt.cpp:266
&gt;  +  void InspectorClientQt::dispatch(const String &amp;message)
&gt; Usually we are using InspectorClient only for sending messages to inspector.
&gt; The dispatch implementation should be in InspectorFrontendClient.

I&apos;ll clean this up.

&gt; 
&gt; WebKit/qt/WebCoreSupport/InspectorClientQt.cpp:129

&gt; 
&gt; I think this portion of code can be simplified a bit.
&gt; 1) m_remoteFrontend is unnecessary
&gt; 2) m_inspectedWebPage is always not null
&gt; In that case you can just check the RemoteFrontendChannel and if it is not established then try to use local inspector.

You are right. The code evolved over time and I did not notice that m_remoteInspector was no longer necessary.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>270497</commentid>
    <comment_count>15</comment_count>
      <attachid>65715</attachid>
    <who name="Jamey Hicks">jamey.hicks</who>
    <bug_when>2010-08-27 07:45:44 -0700</bug_when>
    <thetext>Created attachment 65715
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>270513</commentid>
    <comment_count>16</comment_count>
      <attachid>65715</attachid>
    <who name="Ilya Tikhonovsky">loislo</who>
    <bug_when>2010-08-27 08:45:19 -0700</bug_when>
    <thetext>Comment on attachment 65715
Patch

WebKit/qt/WebCoreSupport/InspectorClientQt.cpp:129
 +      if (m_inspectedWebPage-&gt;d-&gt;inspectorServerPort())
 +          return;

do you mean that the local inspector should be blocked if the remote debugging port is specified.

In chromium you still be able to invoke local inspector for a page even if the remote port was specified.
But only one inspector per page at a time.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>270594</commentid>
    <comment_count>17</comment_count>
      <attachid>65715</attachid>
    <who name="Ariya Hidayat">ariya.hidayat</who>
    <bug_when>2010-08-27 11:04:02 -0700</bug_when>
    <thetext>Comment on attachment 65715
Patch

First question: does everything still compile if we build without inspector support?

WebKit/qt/WebCoreSupport/InspectorServerQt.cpp:89
 +          sServer = new InspectorServerQt();
This is not deleted anywhere. To avoid intentional leak, make QCoreApplication::instance as the parent object so it gets deleted by the application on exit.

WebKit/qt/WebCoreSupport/InspectorServerQt.cpp:286
 +      m_tcpConnection = 0;
Any reason to only nullify this and not delete it? Although it will be deleted by the owning server socket, it will stay around in memory until the server socket dies.

WebKit/qt/WebCoreSupport/InspectorServerQt.cpp:151
 +      QTcpSocket* m_tcpConnection = m_tcpServer-&gt;nextPendingConnection();
This is a local variable, don&apos;t use m_ prefix (to avoid confusion with variables of the same name in another class).

WebKit/qt/WebCoreSupport/InspectorServerQt.cpp:324
 +          size_t length = pos - 1;
What happens if pos is 0 or 1?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>272070</commentid>
    <comment_count>18</comment_count>
      <attachid>66045</attachid>
    <who name="Jamey Hicks">jamey.hicks</who>
    <bug_when>2010-08-31 06:38:52 -0700</bug_when>
    <thetext>Created attachment 66045
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>272147</commentid>
    <comment_count>19</comment_count>
      <attachid>66045</attachid>
    <who name="Ilya Tikhonovsky">loislo</who>
    <bug_when>2010-08-31 09:46:52 -0700</bug_when>
    <thetext>Comment on attachment 66045
Patch

&gt; WebKit/qt/WebCoreSupport/InspectorClientQt.cpp:231
&gt; +        Q_ASSERT(m_inspectedWebPage-&gt;d-&gt;inspector-&gt;d-&gt;remoteFrontend);
Nit: This assert is not neccessary.

Inspector&apos;s business logic looks good to me.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>278164</commentid>
    <comment_count>20</comment_count>
      <attachid>67401</attachid>
    <who name="Jamey Hicks">jamey.hicks</who>
    <bug_when>2010-09-13 06:11:47 -0700</bug_when>
    <thetext>Created attachment 67401
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>278238</commentid>
    <comment_count>21</comment_count>
      <attachid>67401</attachid>
    <who name="Kenneth Rohde Christiansen">kenneth</who>
    <bug_when>2010-09-13 09:09:40 -0700</bug_when>
    <thetext>Comment on attachment 67401
Patch

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

&gt; WebKit/qt/Api/qwebinspector_p.h:40
&gt; +    void attachRemoteFrontend(QObject* newRemoteFrontend);
so it actually substitutes it? attachAndReplaceFrontend?

&gt; WebKit/qt/ChangeLog:15
&gt; +            http://localhost:9222/devtools/page/1
Couldn&apos;t http://localhost:9222/devtools redirect to page/1 or so automatically?

&gt; WebKit/qt/WebCoreSupport/InspectorClientQt.cpp:129
&gt; +    // remote frontend was attached
Comments start with capital and end with dot.

&gt; WebKit/qt/WebCoreSupport/InspectorServerQt.cpp:44
&gt; +static void setChallengeNumber(unsigned char* buf, uint32_t number)
Maybe add a comment on what it does on top

&gt; WebKit/qt/WebCoreSupport/InspectorServerQt.cpp:67
&gt; +static quint32 getChallengeNumberFromField(QString field)
parseChallengeNumber?

&gt; WebKit/qt/WebCoreSupport/InspectorServerQt.cpp:88
&gt; +    // sServer is deleted in unregisterClient() when the last client is unregistered.
sServer? Badly named variable

&gt; WebKit/qt/WebCoreSupport/InspectorServerQt.cpp:144
&gt; +        sServer = 0;
Who is responsible for freeing this?

&gt; WebKit/qt/WebCoreSupport/InspectorServerQt.cpp:335
&gt; +        size_t length = pos - 1;
Is pos always &gt; 0 here? Comment

&gt; WebKit/qt/WebCoreSupport/InspectorServerQt.cpp:344
&gt; +        m_data = m_data.mid(length + 2);
comment about the + 2

&gt; WebKit/qt/WebCoreSupport/InspectorServerQt.cpp:354
&gt; +bool RemoteFrontendChannel::sendMessageToFrontend(const String &amp;message)
&amp; is placed wrongly

&gt; WebKit/qt/WebCoreSupport/InspectorServerQt.h:50
&gt; +    InspectorClientQt* inspectorClient(int pageNum);
inspectorClientForPageId or something similar?

&gt; WebKit/qt/WebCoreSupport/InspectorServerQt.h:107
&gt; +
This newline is not needed here.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>278892</commentid>
    <comment_count>22</comment_count>
      <attachid>67549</attachid>
    <who name="Jamey Hicks">jamey.hicks</who>
    <bug_when>2010-09-14 07:43:26 -0700</bug_when>
    <thetext>Created attachment 67549
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>282298</commentid>
    <comment_count>23</comment_count>
      <attachid>67549</attachid>
    <who name="Kenneth Rohde Christiansen">kenneth</who>
    <bug_when>2010-09-21 07:30:17 -0700</bug_when>
    <thetext>Comment on attachment 67549
Patch

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

&gt; WebKit/qt/WebCoreSupport/InspectorServerQt.cpp:67
&gt; +/*
&gt; + * Parses and returns a WebSocket challenge number according to the method specified in the WebSocket protocol.
&gt; + *
&gt; + * The field contains numeric digits interspersed with spaces and
&gt; + * non-numeric digits. The protocol ignores the characters that are
&gt; + * neither digits nor spaces. The digits are concatenated and
&gt; + * interpreted as a long int. The result is this number divided by the
&gt; + * number of spaces.
&gt; + */

We don&apos;t add * per line. Look at our other comments.

&gt; WebKit/qt/WebCoreSupport/InspectorServerQt.cpp:75
&gt; +            nSpaces++;

numSpaces?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>282981</commentid>
    <comment_count>24</comment_count>
      <attachid>68382</attachid>
    <who name="Jamey Hicks">jamey.hicks</who>
    <bug_when>2010-09-22 09:40:39 -0700</bug_when>
    <thetext>Created attachment 68382
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>283037</commentid>
    <comment_count>25</comment_count>
      <attachid>68382</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2010-09-22 10:34:05 -0700</bug_when>
    <thetext>Comment on attachment 68382
Patch

Clearing flags on attachment: 68382

Committed r68056: &lt;http://trac.webkit.org/changeset/68056&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>283039</commentid>
    <comment_count>26</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2010-09-22 10:34:17 -0700</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>283052</commentid>
    <comment_count>27</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2010-09-22 10:57:01 -0700</bug_when>
    <thetext>http://trac.webkit.org/changeset/68056 might have broken Qt Windows 32-bit Release
The following changes are on the blame list:
http://trac.webkit.org/changeset/68056
http://trac.webkit.org/changeset/68055</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>64366</attachid>
            <date>2010-08-13 12:58:27 -0700</date>
            <delta_ts>2010-08-13 21:51:25 -0700</delta_ts>
            <desc>patch to enable remote web inspector for Qt</desc>
            <filename>qt-remote-web-inspector.patch</filename>
            <type>text/plain</type>
            <size>60941</size>
            <attacher name="Jamey Hicks">jamey.hicks</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1dlYkNvcmUvQ2hhbmdlTG9nIGIvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXgg
ZGQ2ODliYS4uZGJjZDJkNiAxMDA2NDQKLS0tIGEvV2ViQ29yZS9DaGFuZ2VMb2cKKysrIGIvV2Vi
Q29yZS9DaGFuZ2VMb2cKQEAgLTEsMyArMSw0NzQgQEAKKzIwMTAtMDgtMTMgIEphbWV5IEhpY2tz
ICA8amFtZXkuaGlja3NAbm9raWEuY29tPgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAo
T09QUyEpLgorCisgICAgICAgIGRldnRvb2xzIHN0dWZmIGZyb20gY2hyb21pdW0gZm9yIHJlbW90
ZSBpbnNwZWN0b3IKKworICAgICAgICBOZWVkIGEgc2hvcnQgZGVzY3JpcHRpb24gYW5kIGJ1ZyBV
UkwgKE9PUFMhKQorCisgICAgICAgIE5vIG5ldyB0ZXN0cy4gKE9PUFMhKQorCisgICAgICAgICog
aW5zcGVjdG9yL2RldnRvb2xzL0RlYnVnZ2VyU2NyaXB0LmpzOiBDb3BpZWQgZnJvbSBXZWJLaXQv
Y2hyb21pdW0vc3JjL2pzL0RlYnVnZ2VyU2NyaXB0LmpzLgorICAgICAgICAoKToKKyAgICAgICAg
KC4pOgorICAgICAgICAqIGluc3BlY3Rvci9kZXZ0b29scy9EZXZUb29scy5qczogQWRkZWQuCisg
ICAgICAgIChkZXZ0b29scy5kaXNwYXRjaCk6CisgICAgICAgIChkZXZ0b29scy5Ub29sc0FnZW50
KToKKyAgICAgICAgKC4pOgorICAgICAgICAoKToKKyAgICAgICAgKFdlYkluc3BlY3Rvci5sb2Fk
ZWQpOgorICAgICAgICAoV2ViSW5zcGVjdG9yLmRvTG9hZGVkRG9uZSk6CisgICAgICAgIChkZXZ0
b29scy5kb21Db250ZW50TG9hZGVkKToKKyAgICAgICAgKFdlYkluc3BlY3Rvci5UZXN0Q29udHJv
bGxlci5wcm90b3R5cGUucnVuQWZ0ZXJQZW5kaW5nRGlzcGF0Y2hlcyk6CisgICAgICAgIChXZWJJ
bnNwZWN0b3IucXVldWVzQXJlRW1wdHkpOgorICAgICAgICAoV2ViSW5zcGVjdG9yLnNldFRvb2xi
YXJDb2xvcnMpOgorICAgICAgICAoV2ViSW5zcGVjdG9yLnJlc2V0VG9vbGJhckNvbG9ycyk6Cisg
ICAgICAgICguUmVtb3RlRGVidWdnZXJBZ2VudC5zZXRDb250ZXh0SWQpOgorICAgICAgICAoSW5z
cGVjdG9yQmFja2VuZC5wYXVzZSk6CisgICAgICAgICogaW5zcGVjdG9yL2RldnRvb2xzL0RldlRv
b2xzSG9zdFN0dWIuanM6IENvcGllZCBmcm9tIFdlYktpdC9jaHJvbWl1bS9zcmMvanMvRGV2VG9v
bHNIb3N0U3R1Yi5qcy4KKyAgICAgICAgKiBpbnNwZWN0b3IvZGV2dG9vbHMvSGVhcFByb2ZpbGVy
UGFuZWwuanM6IENvcGllZCBmcm9tIFdlYktpdC9jaHJvbWl1bS9zcmMvanMvSGVhcFByb2ZpbGVy
UGFuZWwuanMuCisgICAgICAgIChXZWJJbnNwZWN0b3IuUHJvZmlsZXNQYW5lbC5wcm90b3R5cGUu
YWRkU25hcHNob3QpOgorICAgICAgICAoV2ViSW5zcGVjdG9yLkhlYXBTbmFwc2hvdFZpZXcpOgor
ICAgICAgICAoV2ViSW5zcGVjdG9yLkhlYXBTbmFwc2hvdFZpZXcucHJvdG90eXBlLmdldCBzdGF0
dXNCYXJJdGVtcyk6CisgICAgICAgIChXZWJJbnNwZWN0b3IuSGVhcFNuYXBzaG90Vmlldy5wcm90
b3R5cGUuZ2V0IHByb2ZpbGUpOgorICAgICAgICAoV2ViSW5zcGVjdG9yLkhlYXBTbmFwc2hvdFZp
ZXcucHJvdG90eXBlLnNldCBwcm9maWxlKToKKyAgICAgICAgKFdlYkluc3BlY3Rvci5IZWFwU25h
cHNob3RWaWV3LnByb3RvdHlwZS5zaG93KToKKyAgICAgICAgKFdlYkluc3BlY3Rvci5IZWFwU25h
cHNob3RWaWV3LnByb3RvdHlwZS5oaWRlKToKKyAgICAgICAgKFdlYkluc3BlY3Rvci5IZWFwU25h
cHNob3RWaWV3LnByb3RvdHlwZS5yZXNpemUpOgorICAgICAgICAoV2ViSW5zcGVjdG9yLkhlYXBT
bmFwc2hvdFZpZXcucHJvdG90eXBlLnJlZnJlc2gpOgorICAgICAgICAoV2ViSW5zcGVjdG9yLkhl
YXBTbmFwc2hvdFZpZXcucHJvdG90eXBlLnJlZnJlc2hTaG93QXNQZXJjZW50cyk6CisgICAgICAg
IChXZWJJbnNwZWN0b3IuSGVhcFNuYXBzaG90Vmlldy5wcm90b3R5cGUuX2RlbGV0ZVNlYXJjaE1h
dGNoZWRGbGFncyk6CisgICAgICAgIChXZWJJbnNwZWN0b3IuSGVhcFNuYXBzaG90Vmlldy5wcm90
b3R5cGUuc2VhcmNoQ2FuY2VsZWQpOgorICAgICAgICAoV2ViSW5zcGVjdG9yLkhlYXBTbmFwc2hv
dFZpZXcucHJvdG90eXBlLnBlcmZvcm1TZWFyY2gpOgorICAgICAgICAoV2ViSW5zcGVjdG9yLkhl
YXBTbmFwc2hvdFZpZXcucHJvdG90eXBlLmp1bXBUb0ZpcnN0U2VhcmNoUmVzdWx0LldlYkluc3Bl
Y3Rvci5DUFVQcm9maWxlVmlldy5wcm90b3R5cGUuanVtcFRvRmlyc3RTZWFyY2hSZXN1bHQuanVt
cFRvTGFzdFNlYXJjaFJlc3VsdC5XZWJJbnNwZWN0b3IuQ1BVUHJvZmlsZVZpZXcucHJvdG90eXBl
Lmp1bXBUb0xhc3RTZWFyY2hSZXN1bHQuanVtcFRvTmV4dFNlYXJjaFJlc3VsdC5XZWJJbnNwZWN0
b3IuQ1BVUHJvZmlsZVZpZXcucHJvdG90eXBlLmp1bXBUb05leHRTZWFyY2hSZXN1bHQuanVtcFRv
UHJldmlvdXNTZWFyY2hSZXN1bHQuV2ViSW5zcGVjdG9yLkNQVVByb2ZpbGVWaWV3LnByb3RvdHlw
ZS5qdW1wVG9QcmV2aW91c1NlYXJjaFJlc3VsdC5zaG93aW5nRmlyc3RTZWFyY2hSZXN1bHQuV2Vi
SW5zcGVjdG9yLkNQVVByb2ZpbGVWaWV3LnByb3RvdHlwZS5zaG93aW5nRmlyc3RTZWFyY2hSZXN1
bHQuc2hvd2luZ0xhc3RTZWFyY2hSZXN1bHQuV2ViSW5zcGVjdG9yLkNQVVByb2ZpbGVWaWV3LnBy
b3RvdHlwZS5zaG93aW5nTGFzdFNlYXJjaFJlc3VsdC5fanVtcFRvU2VhcmNoUmVzdWx0LldlYklu
c3BlY3Rvci5DUFVQcm9maWxlVmlldy5wcm90b3R5cGUuX2p1bXBUb1NlYXJjaFJlc3VsdC5yZWZy
ZXNoVmlzaWJsZURhdGEpOgorICAgICAgICAoV2ViSW5zcGVjdG9yLkhlYXBTbmFwc2hvdFZpZXcu
cHJvdG90eXBlLl9jaGFuZ2VCYXNlKToKKyAgICAgICAgKFdlYkluc3BlY3Rvci5IZWFwU25hcHNo
b3RWaWV3LnByb3RvdHlwZS5fY3JlYXRlU25hcHNob3REYXRhR3JpZExpc3QpOgorICAgICAgICAo
V2ViSW5zcGVjdG9yLkhlYXBTbmFwc2hvdFZpZXcucHJvdG90eXBlLl9tb3VzZURvd25JbkRhdGFH
cmlkKToKKyAgICAgICAgKFdlYkluc3BlY3Rvci5IZWFwU25hcHNob3RWaWV3LnByb3RvdHlwZS5n
ZXQgX2lzU2hvd2luZ0FzUGVyY2VudCk6CisgICAgICAgIChXZWJJbnNwZWN0b3IuSGVhcFNuYXBz
aG90Vmlldy5wcm90b3R5cGUuX3BlcmNlbnRDbGlja2VkKToKKyAgICAgICAgKFdlYkluc3BlY3Rv
ci5IZWFwU25hcHNob3RWaWV3LnByb3RvdHlwZS5fcmVzZXREYXRhR3JpZExpc3QpOgorICAgICAg
ICAoV2ViSW5zcGVjdG9yLkhlYXBTbmFwc2hvdFZpZXcucHJvdG90eXBlLl9zb3J0RGF0YSk6Cisg
ICAgICAgIChXZWJJbnNwZWN0b3IuSGVhcFNuYXBzaG90Vmlldy5wcm90b3R5cGUuX3VwZGF0ZUJh
c2VPcHRpb25zKToKKyAgICAgICAgKFdlYkluc3BlY3Rvci5IZWFwU25hcHNob3RWaWV3LnByb3Rv
dHlwZS5fdXBkYXRlUGVyY2VudEJ1dHRvbik6CisgICAgICAgIChXZWJJbnNwZWN0b3IuSGVhcFNu
YXBzaG90Vmlldy5wcm90b3R5cGUuX3VwZGF0ZVN1bW1hcnlHcmFwaCk6CisgICAgICAgIChXZWJJ
bnNwZWN0b3IuSGVhcFNuYXBzaG90Vmlldy5TZWFyY2hIZWxwZXIub3BlcmF0aW9ucy5MRVNTKToK
KyAgICAgICAgKFdlYkluc3BlY3Rvci5IZWFwU25hcHNob3RWaWV3LlNlYXJjaEhlbHBlci5vcGVy
YXRpb25zLkxFU1NfT1JfRVFVQUwpOgorICAgICAgICAoV2ViSW5zcGVjdG9yLkhlYXBTbmFwc2hv
dFZpZXcuU2VhcmNoSGVscGVyLm9wZXJhdGlvbnMuRVFVQUwpOgorICAgICAgICAoV2ViSW5zcGVj
dG9yLkhlYXBTbmFwc2hvdFZpZXcuU2VhcmNoSGVscGVyLm9wZXJhdGlvbnMuR1JFQVRFUl9PUl9F
UVVBTCk6CisgICAgICAgIChXZWJJbnNwZWN0b3IuSGVhcFNuYXBzaG90Vmlldy5TZWFyY2hIZWxw
ZXIub3BlcmF0aW9ucy5HUkVBVEVSKToKKyAgICAgICAgKFdlYkluc3BlY3Rvci5IZWFwU25hcHNo
b3RWaWV3LlNlYXJjaEhlbHBlci5wYXJzZU9wZXJhdGlvbkFuZE51bWJlcik6CisgICAgICAgIChX
ZWJJbnNwZWN0b3IuSGVhcFN1bW1hcnlDYWxjdWxhdG9yKToKKyAgICAgICAgKFdlYkluc3BlY3Rv
ci5IZWFwU3VtbWFyeUNhbGN1bGF0b3IucHJvdG90eXBlLmNvbXB1dGVTdW1tYXJ5VmFsdWVzKToK
KyAgICAgICAgKFdlYkluc3BlY3Rvci5IZWFwU3VtbWFyeUNhbGN1bGF0b3IucHJvdG90eXBlLmZv
cm1hdFZhbHVlKToKKyAgICAgICAgKFdlYkluc3BlY3Rvci5IZWFwU3VtbWFyeUNhbGN1bGF0b3Iu
cHJvdG90eXBlLmdldCBzaG93QXNQZXJjZW50KToKKyAgICAgICAgKFdlYkluc3BlY3Rvci5IZWFw
U3VtbWFyeUNhbGN1bGF0b3IucHJvdG90eXBlLnNldCBzaG93QXNQZXJjZW50KToKKyAgICAgICAg
KFdlYkluc3BlY3Rvci5IZWFwU3VtbWFyeUNvdW50Q2FsY3VsYXRvcik6CisgICAgICAgIChXZWJJ
bnNwZWN0b3IuSGVhcFN1bW1hcnlDb3VudENhbGN1bGF0b3IucHJvdG90eXBlLl9oaWdoRnJvbUxv
dyk6CisgICAgICAgIChXZWJJbnNwZWN0b3IuSGVhcFN1bW1hcnlDb3VudENhbGN1bGF0b3IucHJv
dG90eXBlLl92YWx1ZVRvU3RyaW5nKToKKyAgICAgICAgKFdlYkluc3BlY3Rvci5IZWFwU3VtbWFy
eVNpemVDYWxjdWxhdG9yKToKKyAgICAgICAgKFdlYkluc3BlY3Rvci5IZWFwU3VtbWFyeVNpemVD
YWxjdWxhdG9yLnByb3RvdHlwZS5faGlnaEZyb21Mb3cpOgorICAgICAgICAoV2ViSW5zcGVjdG9y
LkhlYXBTbmFwc2hvdFNpZGViYXJUcmVlRWxlbWVudCk6CisgICAgICAgIChXZWJJbnNwZWN0b3Iu
SGVhcFNuYXBzaG90U2lkZWJhclRyZWVFbGVtZW50LnByb3RvdHlwZS5nZXQgbWFpblRpdGxlKToK
KyAgICAgICAgKFdlYkluc3BlY3Rvci5IZWFwU25hcHNob3RTaWRlYmFyVHJlZUVsZW1lbnQucHJv
dG90eXBlLnNldCBtYWluVGl0bGUpOgorICAgICAgICAoV2ViSW5zcGVjdG9yLkhlYXBTbmFwc2hv
dERhdGFHcmlkTm9kZVdpdGhSZXRhaW5lcnMpOgorICAgICAgICAoV2ViSW5zcGVjdG9yLkhlYXBT
bmFwc2hvdERhdGFHcmlkTm9kZVdpdGhSZXRhaW5lcnMucHJvdG90eXBlLmdldCBfaGFzUmV0YWlu
ZXJzKToKKyAgICAgICAgKFdlYkluc3BlY3Rvci5IZWFwU25hcHNob3REYXRhR3JpZE5vZGVXaXRo
UmV0YWluZXJzLnByb3RvdHlwZS5nZXQgX3BhcmVudCk6CisgICAgICAgIChXZWJJbnNwZWN0b3Iu
SGVhcFNuYXBzaG90RGF0YUdyaWROb2RlV2l0aFJldGFpbmVycy5wcm90b3R5cGUuX3BvcHVsYXRl
LmlmKToKKyAgICAgICAgKFdlYkluc3BlY3Rvci5IZWFwU25hcHNob3REYXRhR3JpZE5vZGVXaXRo
UmV0YWluZXJzLnByb3RvdHlwZS5fcG9wdWxhdGUpOgorICAgICAgICAoV2ViSW5zcGVjdG9yLkhl
YXBTbmFwc2hvdERhdGFHcmlkTm9kZVdpdGhSZXRhaW5lcnMucHJvdG90eXBlLnByb2R1Y2VEaWZm
KToKKyAgICAgICAgKFdlYkluc3BlY3Rvci5IZWFwU25hcHNob3REYXRhR3JpZE5vZGVXaXRoUmV0
YWluZXJzLnByb3RvdHlwZS5zb3J0KToKKyAgICAgICAgKFdlYkluc3BlY3Rvci5IZWFwU25hcHNo
b3REYXRhR3JpZE5vZGVXaXRoUmV0YWluZXJzLnByb3RvdHlwZS5zaWduRm9yRGVsdGEpOgorICAg
ICAgICAoV2ViSW5zcGVjdG9yLkhlYXBTbmFwc2hvdERhdGFHcmlkTm9kZVdpdGhSZXRhaW5lcnMu
cHJvdG90eXBlLnNob3dEZWx0YUFzUGVyY2VudCk6CisgICAgICAgIChXZWJJbnNwZWN0b3IuSGVh
cFNuYXBzaG90RGF0YUdyaWROb2RlV2l0aFJldGFpbmVycy5wcm90b3R5cGUuZ2V0VG90YWxDb3Vu
dCk6CisgICAgICAgIChXZWJJbnNwZWN0b3IuSGVhcFNuYXBzaG90RGF0YUdyaWROb2RlV2l0aFJl
dGFpbmVycy5wcm90b3R5cGUuZ2V0VG90YWxTaXplKToKKyAgICAgICAgKFdlYkluc3BlY3Rvci5I
ZWFwU25hcHNob3REYXRhR3JpZE5vZGVXaXRoUmV0YWluZXJzLnByb3RvdHlwZS5nZXQgY291bnRQ
ZXJjZW50KToKKyAgICAgICAgKFdlYkluc3BlY3Rvci5IZWFwU25hcHNob3REYXRhR3JpZE5vZGVX
aXRoUmV0YWluZXJzLnByb3RvdHlwZS5nZXQgc2l6ZVBlcmNlbnQpOgorICAgICAgICAoV2ViSW5z
cGVjdG9yLkhlYXBTbmFwc2hvdERhdGFHcmlkTm9kZVdpdGhSZXRhaW5lcnMucHJvdG90eXBlLmdl
dCBjb3VudERlbHRhUGVyY2VudCk6CisgICAgICAgIChXZWJJbnNwZWN0b3IuSGVhcFNuYXBzaG90
RGF0YUdyaWROb2RlV2l0aFJldGFpbmVycy5wcm90b3R5cGUuZ2V0IHNpemVEZWx0YVBlcmNlbnQp
OgorICAgICAgICAoV2ViSW5zcGVjdG9yLkhlYXBTbmFwc2hvdERhdGFHcmlkTm9kZVdpdGhSZXRh
aW5lcnMucHJvdG90eXBlLmdldCBkYXRhKToKKyAgICAgICAgKFdlYkluc3BlY3Rvci5IZWFwU25h
cHNob3REYXRhR3JpZE5vZGVXaXRoUmV0YWluZXJzLnByb3RvdHlwZS5jcmVhdGVDZWxsKToKKyAg
ICAgICAgKFdlYkluc3BlY3Rvci5IZWFwU25hcHNob3REYXRhR3JpZE5vZGUpOgorICAgICAgICAo
V2ViSW5zcGVjdG9yLkhlYXBTbmFwc2hvdERhdGFHcmlkTGlzdCk6CisgICAgICAgIChXZWJJbnNw
ZWN0b3IuSGVhcFNuYXBzaG90RGF0YUdyaWRMaXN0LnByb3RvdHlwZS5hcHBlbmRDaGlsZCk6Cisg
ICAgICAgIChXZWJJbnNwZWN0b3IuSGVhcFNuYXBzaG90RGF0YUdyaWRMaXN0LnByb3RvdHlwZS5p
bnNlcnRDaGlsZCk6CisgICAgICAgIChXZWJJbnNwZWN0b3IuSGVhcFNuYXBzaG90RGF0YUdyaWRM
aXN0LnByb3RvdHlwZS5yZW1vdmVDaGlsZHJlbik6CisgICAgICAgIChXZWJJbnNwZWN0b3IuSGVh
cFNuYXBzaG90RGF0YUdyaWRMaXN0LnByb3RvdHlwZS5wb3B1bGF0ZUNoaWxkcmVuKToKKyAgICAg
ICAgKFdlYkluc3BlY3Rvci5IZWFwU25hcHNob3REYXRhR3JpZExpc3QucHJvcGVydHlDb21wYXJh
dG9yLmNvbXBhcmF0b3IpOgorICAgICAgICAoV2ViSW5zcGVjdG9yLkhlYXBTbmFwc2hvdERhdGFH
cmlkTGlzdC5wcm9wZXJ0eUNvbXBhcmF0b3IpOgorICAgICAgICAoV2ViSW5zcGVjdG9yLkhlYXBT
bmFwc2hvdERhdGFHcmlkUmV0YWluZXJOb2RlKToKKyAgICAgICAgKFdlYkluc3BlY3Rvci5IZWFw
U25hcHNob3REYXRhR3JpZFJldGFpbmVyTm9kZS5wcm90b3R5cGUuZ2V0IHNpemVQZXJjZW50KToK
KyAgICAgICAgKFdlYkluc3BlY3Rvci5IZWFwU25hcHNob3REYXRhR3JpZFJldGFpbmVyTm9kZS5w
cm90b3R5cGUuZ2V0IHNpemVEZWx0YVBlcmNlbnQpOgorICAgICAgICAoV2ViSW5zcGVjdG9yLkhl
YXBTbmFwc2hvdERhdGFHcmlkUmV0YWluZXJOb2RlLnByb3RvdHlwZS5fY2FsY3VsYXRlUmV0YWlu
ZXJzKToKKyAgICAgICAgKFdlYkluc3BlY3Rvci5IZWFwU25hcHNob3RQcm9maWxlVHlwZSk6Cisg
ICAgICAgIChXZWJJbnNwZWN0b3IuSGVhcFNuYXBzaG90UHJvZmlsZVR5cGUucHJvdG90eXBlLmdl
dCBidXR0b25Ub29sdGlwKToKKyAgICAgICAgKFdlYkluc3BlY3Rvci5IZWFwU25hcHNob3RQcm9m
aWxlVHlwZS5wcm90b3R5cGUuZ2V0IGJ1dHRvblN0eWxlKToKKyAgICAgICAgKFdlYkluc3BlY3Rv
ci5IZWFwU25hcHNob3RQcm9maWxlVHlwZS5wcm90b3R5cGUuYnV0dG9uQ2xpY2tlZCk6CisgICAg
ICAgIChXZWJJbnNwZWN0b3IuSGVhcFNuYXBzaG90UHJvZmlsZVR5cGUucHJvdG90eXBlLmdldCB3
ZWxjb21lTWVzc2FnZSk6CisgICAgICAgIChXZWJJbnNwZWN0b3IuSGVhcFNuYXBzaG90UHJvZmls
ZVR5cGUucHJvdG90eXBlLmNyZWF0ZVNpZGViYXJUcmVlRWxlbWVudEZvclByb2ZpbGUpOgorICAg
ICAgICAoV2ViSW5zcGVjdG9yLkhlYXBTbmFwc2hvdFByb2ZpbGVUeXBlLnByb3RvdHlwZS5jcmVh
dGVWaWV3KToKKyAgICAgICAgKCk6CisgICAgICAgICogaW5zcGVjdG9yL2RldnRvb2xzL0ltYWdl
cy9zZWdtZW50Q2hyb21pdW0ucG5nOiBDb3BpZWQgZnJvbSBXZWJLaXQvY2hyb21pdW0vc3JjL2pz
L0ltYWdlcy9zZWdtZW50Q2hyb21pdW0ucG5nLgorICAgICAgICAqIGluc3BlY3Rvci9kZXZ0b29s
cy9JbWFnZXMvc2VnbWVudEhvdmVyQ2hyb21pdW0ucG5nOiBDb3BpZWQgZnJvbSBXZWJLaXQvY2hy
b21pdW0vc3JjL2pzL0ltYWdlcy9zZWdtZW50SG92ZXJDaHJvbWl1bS5wbmcuCisgICAgICAgICog
aW5zcGVjdG9yL2RldnRvb2xzL0ltYWdlcy9zZWdtZW50SG92ZXJFbmRDaHJvbWl1bS5wbmc6IENv
cGllZCBmcm9tIFdlYktpdC9jaHJvbWl1bS9zcmMvanMvSW1hZ2VzL3NlZ21lbnRIb3ZlckVuZENo
cm9taXVtLnBuZy4KKyAgICAgICAgKiBpbnNwZWN0b3IvZGV2dG9vbHMvSW1hZ2VzL3NlZ21lbnRT
ZWxlY3RlZENocm9taXVtLnBuZzogQ29waWVkIGZyb20gV2ViS2l0L2Nocm9taXVtL3NyYy9qcy9J
bWFnZXMvc2VnbWVudFNlbGVjdGVkQ2hyb21pdW0ucG5nLgorICAgICAgICAqIGluc3BlY3Rvci9k
ZXZ0b29scy9JbWFnZXMvc2VnbWVudFNlbGVjdGVkRW5kQ2hyb21pdW0ucG5nOiBDb3BpZWQgZnJv
bSBXZWJLaXQvY2hyb21pdW0vc3JjL2pzL0ltYWdlcy9zZWdtZW50U2VsZWN0ZWRFbmRDaHJvbWl1
bS5wbmcuCisgICAgICAgICogaW5zcGVjdG9yL2RldnRvb2xzL0ltYWdlcy9zdGF0dXNiYXJCYWNr
Z3JvdW5kQ2hyb21pdW0ucG5nOiBDb3BpZWQgZnJvbSBXZWJLaXQvY2hyb21pdW0vc3JjL2pzL0lt
YWdlcy9zdGF0dXNiYXJCYWNrZ3JvdW5kQ2hyb21pdW0ucG5nLgorICAgICAgICAqIGluc3BlY3Rv
ci9kZXZ0b29scy9JbWFnZXMvc3RhdHVzYmFyQm90dG9tQmFja2dyb3VuZENocm9taXVtLnBuZzog
Q29waWVkIGZyb20gV2ViS2l0L2Nocm9taXVtL3NyYy9qcy9JbWFnZXMvc3RhdHVzYmFyQm90dG9t
QmFja2dyb3VuZENocm9taXVtLnBuZy4KKyAgICAgICAgKiBpbnNwZWN0b3IvZGV2dG9vbHMvSW1h
Z2VzL3N0YXR1c2JhckJ1dHRvbnNDaHJvbWl1bS5wbmc6IENvcGllZCBmcm9tIFdlYktpdC9jaHJv
bWl1bS9zcmMvanMvSW1hZ2VzL3N0YXR1c2JhckJ1dHRvbnNDaHJvbWl1bS5wbmcuCisgICAgICAg
ICogaW5zcGVjdG9yL2RldnRvb2xzL0ltYWdlcy9zdGF0dXNiYXJNZW51QnV0dG9uQ2hyb21pdW0u
cG5nOiBDb3BpZWQgZnJvbSBXZWJLaXQvY2hyb21pdW0vc3JjL2pzL0ltYWdlcy9zdGF0dXNiYXJN
ZW51QnV0dG9uQ2hyb21pdW0ucG5nLgorICAgICAgICAqIGluc3BlY3Rvci9kZXZ0b29scy9JbWFn
ZXMvc3RhdHVzYmFyTWVudUJ1dHRvblNlbGVjdGVkQ2hyb21pdW0ucG5nOiBDb3BpZWQgZnJvbSBX
ZWJLaXQvY2hyb21pdW0vc3JjL2pzL0ltYWdlcy9zdGF0dXNiYXJNZW51QnV0dG9uU2VsZWN0ZWRD
aHJvbWl1bS5wbmcuCisgICAgICAgICogaW5zcGVjdG9yL2RldnRvb2xzL1Byb2ZpbGVyQWdlbnQu
anM6IENvcGllZCBmcm9tIFdlYktpdC9jaHJvbWl1bS9zcmMvanMvUHJvZmlsZXJBZ2VudC5qcy4K
KyAgICAgICAgKGRldnRvb2xzLlByb2ZpbGVyQWdlbnQpOgorICAgICAgICAoZGV2dG9vbHMuUHJv
ZmlsZXJBZ2VudC5wcm90b3R5cGUuaW5pdGlhbGl6ZVByb2ZpbGluZyk6CisgICAgICAgIChkZXZ0
b29scy5Qcm9maWxlckFnZW50LnByb3RvdHlwZS5fZ2V0TmV4dExvZ0xpbmVzLmVsc2UuZGVsYXll
ZFJlcXVlc3QpOgorICAgICAgICAoZGV2dG9vbHMuUHJvZmlsZXJBZ2VudC5wcm90b3R5cGUuX2dl
dE5leHRMb2dMaW5lcyk6CisgICAgICAgIChkZXZ0b29scy5Qcm9maWxlckFnZW50LnByb3RvdHlw
ZS5zdGFydFByb2ZpbGluZyk6CisgICAgICAgIChkZXZ0b29scy5Qcm9maWxlckFnZW50LnByb3Rv
dHlwZS5fZGlkR2V0UHJvZmlsZXJMb2dMaW5lcyk6CisgICAgICAgICogaW5zcGVjdG9yL2RldnRv
b2xzL1Byb2ZpbGVyUHJvY2Vzc29yLmpzOiBDb3BpZWQgZnJvbSBXZWJLaXQvY2hyb21pdW0vc3Jj
L2pzL1Byb2ZpbGVyUHJvY2Vzc29yLmpzLgorICAgICAgICAoZGV2dG9vbHMucHJvZmlsZXIuV2Vi
S2l0Vmlld0J1aWxkZXIpOgorICAgICAgICAoZGV2dG9vbHMucHJvZmlsZXIuV2ViS2l0Vmlld0J1
aWxkZXIucHJvdG90eXBlLmNyZWF0ZVZpZXdOb2RlKToKKyAgICAgICAgKGRldnRvb2xzLnByb2Zp
bGVyLldlYktpdFZpZXdOb2RlKToKKyAgICAgICAgKHNldCBnZXQgZGV2dG9vbHMucHJvZmlsZXIu
V2ViS2l0Vmlld05vZGUucHJvdG90eXBlLmluaXRGdW5jSW5mb18pOgorICAgICAgICAoZGV2dG9v
bHMucHJvZmlsZXIuSnNQcm9maWxlKToKKyAgICAgICAgKGRldnRvb2xzLnByb2ZpbGVyLkpzUHJv
ZmlsZS5wcm90b3R5cGUuc2tpcFRoaXNGdW5jdGlvbik6CisgICAgICAgIChkZXZ0b29scy5wcm9m
aWxlci5Qcm9jZXNzb3IpOgorICAgICAgICAoZGV2dG9vbHMucHJvZmlsZXIuUHJvY2Vzc29yLnBy
b3RvdHlwZS5wcmludEVycm9yKToKKyAgICAgICAgKGRldnRvb2xzLnByb2ZpbGVyLlByb2Nlc3Nv
ci5wcm90b3R5cGUuc2tpcERpc3BhdGNoKToKKyAgICAgICAgKGRldnRvb2xzLnByb2ZpbGVyLlBy
b2Nlc3Nvci5wcm90b3R5cGUuc2V0Q2FsbGJhY2tzKToKKyAgICAgICAgKGRldnRvb2xzLnByb2Zp
bGVyLlByb2Nlc3Nvci5wcm90b3R5cGUuc2V0TmV3UHJvZmlsZUNhbGxiYWNrKToKKyAgICAgICAg
KGRldnRvb2xzLnByb2ZpbGVyLlByb2Nlc3Nvci5wcm90b3R5cGUucHJvY2Vzc1Byb2ZpbGVyXy5z
d2l0Y2guYnJlYWspOgorICAgICAgICAoZGV2dG9vbHMucHJvZmlsZXIuUHJvY2Vzc29yLnByb3Rv
dHlwZS5wcm9jZXNzUHJvZmlsZXJfKToKKyAgICAgICAgKGRldnRvb2xzLnByb2ZpbGVyLlByb2Nl
c3Nvci5wcm90b3R5cGUucHJvY2Vzc0NvZGVDcmVhdGlvbl8pOgorICAgICAgICAoZGV2dG9vbHMu
cHJvZmlsZXIuUHJvY2Vzc29yLnByb3RvdHlwZS5wcm9jZXNzQ29kZU1vdmVfKToKKyAgICAgICAg
KGRldnRvb2xzLnByb2ZpbGVyLlByb2Nlc3Nvci5wcm90b3R5cGUucHJvY2Vzc0NvZGVEZWxldGVf
KToKKyAgICAgICAgKGRldnRvb2xzLnByb2ZpbGVyLlByb2Nlc3Nvci5wcm90b3R5cGUucHJvY2Vz
c0Z1bmN0aW9uQ3JlYXRpb25fKToKKyAgICAgICAgKGRldnRvb2xzLnByb2ZpbGVyLlByb2Nlc3Nv
ci5wcm90b3R5cGUucHJvY2Vzc0Z1bmN0aW9uTW92ZV8pOgorICAgICAgICAoZGV2dG9vbHMucHJv
ZmlsZXIuUHJvY2Vzc29yLnByb3RvdHlwZS5wcm9jZXNzRnVuY3Rpb25EZWxldGVfKToKKyAgICAg
ICAgKGRldnRvb2xzLnByb2ZpbGVyLlByb2Nlc3Nvci5wcm90b3R5cGUucHJvY2Vzc1RpY2tfKToK
KyAgICAgICAgKGRldnRvb2xzLnByb2ZpbGVyLlByb2Nlc3Nvci5wcm90b3R5cGUucHJvY2Vzc1Rp
Y2tWMl8pOgorICAgICAgICAoZGV2dG9vbHMucHJvZmlsZXIuUHJvY2Vzc29yLnByb3RvdHlwZS5w
cm9jZXNzSGVhcFNhbXBsZUJlZ2luXyk6CisgICAgICAgIChkZXZ0b29scy5wcm9maWxlci5Qcm9j
ZXNzb3IucHJvdG90eXBlLnByb2Nlc3NIZWFwU2FtcGxlU3RhdHNfKToKKyAgICAgICAgKGRldnRv
b2xzLnByb2ZpbGVyLlByb2Nlc3Nvci5wcm90b3R5cGUucHJvY2Vzc0hlYXBTYW1wbGVJdGVtXyk6
CisgICAgICAgIChkZXZ0b29scy5wcm9maWxlci5Qcm9jZXNzb3IucHJvdG90eXBlLnByb2Nlc3NI
ZWFwSnNDb25zSXRlbV8pOgorICAgICAgICAoZGV2dG9vbHMucHJvZmlsZXIuUHJvY2Vzc29yLnBy
b3RvdHlwZS5wcm9jZXNzSGVhcEpzUmV0SXRlbV8ubWVyZ2VSZXRhaW5lcnMpOgorICAgICAgICAo
ZGV2dG9vbHMucHJvZmlsZXIuUHJvY2Vzc29yLnByb3RvdHlwZS5wcm9jZXNzSGVhcEpzUmV0SXRl
bV8pOgorICAgICAgICAoZGV2dG9vbHMucHJvZmlsZXIuUHJvY2Vzc29yLnByb3RvdHlwZS5wcm9j
ZXNzSGVhcFNhbXBsZUVuZF8pOgorICAgICAgICAoZGV2dG9vbHMucHJvZmlsZXIuUHJvY2Vzc29y
LnByb3RvdHlwZS5jcmVhdGVQcm9maWxlRm9yVmlldyk6CisgICAgICAgICogaW5zcGVjdG9yL2Rl
dnRvb2xzL1Rlc3RzLmpzOiBDb3BpZWQgZnJvbSBXZWJLaXQvY2hyb21pdW0vc3JjL2pzL1Rlc3Rz
LmpzLgorICAgICAgICAoLlRlc3RTdWl0ZSk6CisgICAgICAgICguVGVzdFN1aXRlLnByb3RvdHlw
ZS5mYWlsKToKKyAgICAgICAgKC5UZXN0U3VpdGUucHJvdG90eXBlLmFzc2VydEVxdWFscyk6Cisg
ICAgICAgICguVGVzdFN1aXRlLnByb3RvdHlwZS5hc3NlcnRUcnVlKToKKyAgICAgICAgKC5UZXN0
U3VpdGUucHJvdG90eXBlLmFzc2VydENvbnRhaW5zKToKKyAgICAgICAgKC5UZXN0U3VpdGUucHJv
dG90eXBlLnRha2VDb250cm9sKToKKyAgICAgICAgKC5UZXN0U3VpdGUucHJvdG90eXBlLnJlbGVh
c2VDb250cm9sKToKKyAgICAgICAgKC5UZXN0U3VpdGUucHJvdG90eXBlLnJlcG9ydE9rXyk6Cisg
ICAgICAgICguVGVzdFN1aXRlLnByb3RvdHlwZS5yZXBvcnRGYWlsdXJlXyk6CisgICAgICAgICgu
VGVzdFN1aXRlLnByb3RvdHlwZS5ydW5UZXN0KToKKyAgICAgICAgKC5UZXN0U3VpdGUucHJvdG90
eXBlLnNob3dQYW5lbCk6CisgICAgICAgICguVGVzdFN1aXRlLnByb3RvdHlwZS5hZGRTbmlmZmVy
LnJlY2VpdmVyLm1ldGhvZE5hbWUpOgorICAgICAgICAoLlRlc3RTdWl0ZS5wcm90b3R5cGUuYWRk
U25pZmZlcik6CisgICAgICAgICguVGVzdFN1aXRlLnByb3RvdHlwZS50ZXN0SG9zdElzUHJlc2Vu
dCk6CisgICAgICAgICguVGVzdFN1aXRlLnByb3RvdHlwZS50ZXN0RWxlbWVudHNUcmVlUm9vdCk6
CisgICAgICAgICguVGVzdFN1aXRlLnByb3RvdHlwZS50ZXN0TWFpblJlc291cmNlKToKKyAgICAg
ICAgKC5UZXN0U3VpdGUucHJvdG90eXBlLnRlc3RSZXNvdXJjZUNvbnRlbnRMZW5ndGgudGhpcy5h
ZGRTbmlmZmVyLik6CisgICAgICAgICguVGVzdFN1aXRlLnByb3RvdHlwZS50ZXN0UmVzb3VyY2VI
ZWFkZXJzKToKKyAgICAgICAgKC5UZXN0U3VpdGUucHJvdG90eXBlLnRlc3RDYWNoZWRSZXNvdXJj
ZU1pbWVUeXBlLnRoaXMuYWRkU25pZmZlci4pOgorICAgICAgICAoLlRlc3RTdWl0ZS5wcm90b3R5
cGUudGVzdENhY2hlZFJlc291cmNlTWltZVR5cGUpOgorICAgICAgICAoLlRlc3RTdWl0ZS5wcm90
b3R5cGUudGVzdFByb2ZpbGVyVGFiLmZpbmREaXNwbGF5ZWROb2RlKToKKyAgICAgICAgKC5UZXN0
U3VpdGUucHJvdG90eXBlLnRlc3RQcm9maWxlclRhYi5maW5kVmlzaWJsZVZpZXcpOgorICAgICAg
ICAoLlRlc3RTdWl0ZS5wcm90b3R5cGUudGVzdFByb2ZpbGVyVGFiKToKKyAgICAgICAgKC5UZXN0
U3VpdGUucHJvdG90eXBlLnRlc3RIZWFwUHJvZmlsZXIuZmluZERpc3BsYXllZE5vZGUpOgorICAg
ICAgICAoLlRlc3RTdWl0ZS5wcm90b3R5cGUudGVzdEhlYXBQcm9maWxlci5maW5kVmlzaWJsZVZp
ZXcpOgorICAgICAgICAoLlRlc3RTdWl0ZS5wcm90b3R5cGUudGVzdEhlYXBQcm9maWxlcik6Cisg
ICAgICAgICguVGVzdFN1aXRlLnByb3RvdHlwZS50ZXN0U2NyaXB0c1RhYklzUG9wdWxhdGVkT25J
bnNwZWN0ZWRQYWdlUmVmcmVzaC53YWl0VW50aWxTY3JpcHRJc1BhcnNlZCk6CisgICAgICAgICgu
VGVzdFN1aXRlLnByb3RvdHlwZS50ZXN0Tm9TY3JpcHREdXBsaWNhdGVzT25QYW5lbFN3aXRjaC5z
d2l0Y2hUb0VsZW1lbnRzVGFiKToKKyAgICAgICAgKC5UZXN0U3VpdGUucHJvdG90eXBlLnRlc3RO
b1NjcmlwdER1cGxpY2F0ZXNPblBhbmVsU3dpdGNoLnN3aXRjaFRvU2NyaXB0c1RhYik6CisgICAg
ICAgICguVGVzdFN1aXRlLnByb3RvdHlwZS50ZXN0Tm9TY3JpcHREdXBsaWNhdGVzT25QYW5lbFN3
aXRjaC5jaGVja1NjcmlwdHNQYW5lbCk6CisgICAgICAgICguVGVzdFN1aXRlLnByb3RvdHlwZS50
ZXN0Tm9TY3JpcHREdXBsaWNhdGVzT25QYW5lbFN3aXRjaC5jaGVja05vRHVwbGljYXRlcyk6Cisg
ICAgICAgICguVGVzdFN1aXRlLnByb3RvdHlwZS50ZXN0U2V0QnJlYWtwb2ludC50aGlzKToKKyAg
ICAgICAgKC5UZXN0U3VpdGUucHJvdG90eXBlLnRlc3RTZXRCcmVha3BvaW50KToKKyAgICAgICAg
KC5UZXN0U3VpdGUucHJvdG90eXBlLnRlc3RQYXVzZU9uRXhjZXB0aW9uKToKKyAgICAgICAgKC5U
ZXN0U3VpdGUucHJvdG90eXBlLnRlc3RQYXVzZVdoZW5Mb2FkaW5nRGV2VG9vbHMpOgorICAgICAg
ICAoLlRlc3RTdWl0ZS5wcm90b3R5cGUudGVzdFBhdXNlV2hlblNjcmlwdElzUnVubmluZy50ZXN0
U2NyaXB0UGF1c2VBZnRlckRlbGF5KToKKyAgICAgICAgKC5UZXN0U3VpdGUucHJvdG90eXBlLnRl
c3RQYXVzZVdoZW5TY3JpcHRJc1J1bm5pbmcudGVzdFNjcmlwdFBhdXNlKToKKyAgICAgICAgKC5U
ZXN0U3VpdGUucHJvdG90eXBlLnRlc3RQYXVzZVdoZW5TY3JpcHRJc1J1bm5pbmcpOgorICAgICAg
ICAoLlRlc3RTdWl0ZS5wcm90b3R5cGUub3B0aW9uc1RvU3RyaW5nXyk6CisgICAgICAgICguVGVz
dFN1aXRlLnByb3RvdHlwZS5ldmFsdWF0ZUluQ29uc29sZV8pOgorICAgICAgICAoLlRlc3RTdWl0
ZS5wcm90b3R5cGUudGVzdEV2YWxPbkNhbGxGcmFtZS53YWl0Rm9yQnJlYWtwb2ludEhpdCk6Cisg
ICAgICAgICguVGVzdFN1aXRlLnByb3RvdHlwZS50ZXN0Q29tcGxldGlvbk9uUGF1c2UpOgorICAg
ICAgICAoLlRlc3RTdWl0ZS5wcm90b3R5cGUudGVzdENvbXBsZXRpb25PblBhdXNlLnRlc3RMb2Nh
bHNDb21wbGV0aW9uKToKKyAgICAgICAgKC5UZXN0U3VpdGUucHJvdG90eXBlLnRlc3RDb21wbGV0
aW9uT25QYXVzZS50ZXN0VGhpc0NvbXBsZXRpb24pOgorICAgICAgICAoLlRlc3RTdWl0ZS5wcm90
b3R5cGUudGVzdENvbXBsZXRpb25PblBhdXNlLnRlc3RGaWVsZENvbXBsZXRpb24pOgorICAgICAg
ICAoLlRlc3RTdWl0ZS5wcm90b3R5cGUudGVzdENvbXBsZXRpb25PblBhdXNlLmNoZWNrQ29tcGxl
dGlvbnMpOgorICAgICAgICAoLlRlc3RTdWl0ZS5wcm90b3R5cGUudGVzdEF1dG9Db250aW51ZU9u
U3ludGF4RXJyb3IpOgorICAgICAgICAoLlRlc3RTdWl0ZS5wcm90b3R5cGUuX2NoZWNrRXhlY3V0
aW9uTGluZSk6CisgICAgICAgICguVGVzdFN1aXRlLnByb3RvdHlwZS5fc2NyaXB0c0FyZVBhcnNl
ZCk6CisgICAgICAgICguVGVzdFN1aXRlLnByb3RvdHlwZS5fd2FpdEZvclNjcmlwdFBhdXNlKToK
KyAgICAgICAgKC5UZXN0U3VpdGUucHJvdG90eXBlLl9jaGVja1NvdXJjZUZyYW1lV2hlbkxvYWRl
ZC5jaGVja0V4ZWNMaW5lKToKKyAgICAgICAgKC5UZXN0U3VpdGUucHJvdG90eXBlLl9jaGVja1Nv
dXJjZUZyYW1lV2hlbkxvYWRlZCk6CisgICAgICAgICguVGVzdFN1aXRlLnByb3RvdHlwZS5fcGVy
Zm9ybVN0ZXBzLmRvTmV4dEFjdGlvbik6CisgICAgICAgICguVGVzdFN1aXRlLnByb3RvdHlwZS5f
cGVyZm9ybVN0ZXBzKToKKyAgICAgICAgKC5UZXN0U3VpdGUucHJvdG90eXBlLl9leGVjdXRlQ29k
ZVdoZW5TY3JpcHRzQXJlUGFyc2VkLmV4ZWN1dGVGdW5jdGlvbkluSW5zcGVjdGVkUGFnZSk6Cisg
ICAgICAgICguVGVzdFN1aXRlLnByb3RvdHlwZS5fd2FpdFVudGlsU2NyaXB0c0FyZVBhcnNlZC53
YWl0Rm9yQWxsU2NyaXB0cyk6CisgICAgICAgICguVGVzdFN1aXRlLnByb3RvdHlwZS5fd2FpdFVu
dGlsU2NyaXB0c0FyZVBhcnNlZCk6CisgICAgICAgICguVGVzdFN1aXRlLnByb3RvdHlwZS5fZXhl
Y3V0ZUZ1bmN0aW9uRm9yU3RlcFRlc3QpOgorICAgICAgICAoLlRlc3RTdWl0ZS5wcm90b3R5cGUu
dGVzdFN0ZXBPdmVyKToKKyAgICAgICAgKC5UZXN0U3VpdGUucHJvdG90eXBlLnRlc3RTdGVwT3V0
KToKKyAgICAgICAgKC5UZXN0U3VpdGUucHJvdG90eXBlLnRlc3RTdGVwSW4pOgorICAgICAgICAo
LlRlc3RTdWl0ZS5wcm90b3R5cGUuX2V2YWx1YXRlWHBhdGgpOgorICAgICAgICAoLlRlc3RTdWl0
ZS5wcm90b3R5cGUuX2ZpbmROb2RlKToKKyAgICAgICAgKC5UZXN0U3VpdGUucHJvdG90eXBlLl9m
aW5kVGV4dCk6CisgICAgICAgICguVGVzdFN1aXRlLnByb3RvdHlwZS5fbm9kZUl0ZXJhdG9yKToK
KyAgICAgICAgKC5UZXN0U3VpdGUucHJvdG90eXBlLl9jaGVja1Njb3BlU2VjdGlvbkRpdik6Cisg
ICAgICAgICguVGVzdFN1aXRlLnByb3RvdHlwZS5fZXhwYW5kU2NvcGVTZWN0aW9ucy51cGRhdGVM
aXN0ZW5lcik6CisgICAgICAgICguVGVzdFN1aXRlLnByb3RvdHlwZS5fZXhwYW5kU2NvcGVTZWN0
aW9ucyk6CisgICAgICAgICguVGVzdFN1aXRlLnByb3RvdHlwZS50ZXN0RXhwYW5kU2NvcGUpOgor
ICAgICAgICAoLlRlc3RTdWl0ZS5wcm90b3R5cGUudGVzdEV4cGFuZFNjb3BlLmV4YW1pbmVTY29w
ZXMpOgorICAgICAgICAoLlRlc3RTdWl0ZS5wcm90b3R5cGUuX2ZpbmRDaGlsZFByb3BlcnR5KToK
KyAgICAgICAgKC5UZXN0U3VpdGUucHJvdG90eXBlLl9ob29rR2V0UHJvcGVydGllc0NhbGxiYWNr
LmFjY2Vzc29yLmdldFByb3BlcnRpZXMpOgorICAgICAgICAoLlRlc3RTdWl0ZS5wcm90b3R5cGUu
X2hvb2tHZXRQcm9wZXJ0aWVzQ2FsbGJhY2sudHJ5KToKKyAgICAgICAgKC5UZXN0U3VpdGUucHJv
dG90eXBlLl9ob29rR2V0UHJvcGVydGllc0NhbGxiYWNrKToKKyAgICAgICAgKC5UZXN0U3VpdGUu
cHJvdG90eXBlLnRlc3REZWJ1Z0ludHJpbnNpY1Byb3BlcnRpZXMuZXhwYW5kTG9jYWxTY29wZSk6
CisgICAgICAgICguVGVzdFN1aXRlLnByb3RvdHlwZS50ZXN0RGVidWdJbnRyaW5zaWNQcm9wZXJ0
aWVzKToKKyAgICAgICAgKC5UZXN0U3VpdGUucHJvdG90eXBlLnRlc3REZWJ1Z0ludHJpbnNpY1By
b3BlcnRpZXMuZXhwYW5kQW5kQ2hlY2tOZXh0UHJvcGVydHkpOgorICAgICAgICAoLlRlc3RTdWl0
ZS5wcm90b3R5cGUudGVzdERlYnVnSW50cmluc2ljUHJvcGVydGllcy5jaGVja1Byb3BlcnR5KToK
KyAgICAgICAgKC5UZXN0U3VpdGUuY3JlYXRlS2V5RXZlbnQpOgorICAgICAgICAoLlRlc3RTdWl0
ZS5wcm90b3R5cGUudGVzdENvbnNvbGVMb2cuYXNzZXJ0TmV4dCk6CisgICAgICAgICguVGVzdFN1
aXRlLnByb3RvdHlwZS50ZXN0Q29uc29sZUxvZyk6CisgICAgICAgICguVGVzdFN1aXRlLnByb3Rv
dHlwZS50ZXN0RXZhbEdsb2JhbC5pbml0RXZhbCk6CisgICAgICAgICguVGVzdFN1aXRlLnByb3Rv
dHlwZS50ZXN0RXZhbEdsb2JhbCk6CisgICAgICAgICguVGVzdFN1aXRlLnByb3RvdHlwZS50ZXN0
TWVzc2FnZUxvb3BSZWVudHJhbnQudGhpcyk6CisgICAgICAgICguVGVzdFN1aXRlLnByb3RvdHlw
ZS50ZXN0U2hvd1N0b3JhZ2VQYW5lbC50aGlzLmFkZFNuaWZmZXIuKToKKyAgICAgICAgKC5UZXN0
U3VpdGUucHJvdG90eXBlLnRlc3RTaG93U3RvcmFnZVBhbmVsLnRoaXMuYWRkU25pZmZlcik6Cisg
ICAgICAgICgudWlUZXN0cy5ydW5BbGxUZXN0cyk6CisgICAgICAgICgudWlUZXN0cy5ydW5UZXN0
KToKKyAgICAgICAgKC5UZXN0U3VpdGUucHJvdG90eXBlLnRlc3RTaG93U3RvcmFnZVBhbmVsLnRo
aXMpOgorICAgICAgICAoLik6CisgICAgICAgICguVGVzdFN1aXRlLnByb3RvdHlwZS50ZXN0U2hv
d1N0b3JhZ2VQYW5lbCk6CisgICAgICAgICogaW5zcGVjdG9yL2RldnRvb2xzL2NvZGVtYXAuanM6
IEFkZGVkLgorICAgICAgICAoZGV2dG9vbHMucHJvZmlsZXIuQ29kZU1hcCk6CisgICAgICAgIChk
ZXZ0b29scy5wcm9maWxlci5Db2RlTWFwLnByb3RvdHlwZS5hZGRDb2RlKToKKyAgICAgICAgKGRl
dnRvb2xzLnByb2ZpbGVyLkNvZGVNYXAucHJvdG90eXBlLm1vdmVDb2RlKToKKyAgICAgICAgKGRl
dnRvb2xzLnByb2ZpbGVyLkNvZGVNYXAucHJvdG90eXBlLmRlbGV0ZUNvZGUpOgorICAgICAgICAo
ZGV2dG9vbHMucHJvZmlsZXIuQ29kZU1hcC5wcm90b3R5cGUuYWRkTGlicmFyeSk6CisgICAgICAg
IChkZXZ0b29scy5wcm9maWxlci5Db2RlTWFwLnByb3RvdHlwZS5hZGRTdGF0aWNDb2RlKToKKyAg
ICAgICAgKGRldnRvb2xzLnByb2ZpbGVyLkNvZGVNYXAucHJvdG90eXBlLm1hcmtQYWdlc18pOgor
ICAgICAgICAoZGV2dG9vbHMucHJvZmlsZXIuQ29kZU1hcC5wcm90b3R5cGUuaXNBZGRyZXNzQmVs
b25nc1RvXyk6CisgICAgICAgIChkZXZ0b29scy5wcm9maWxlci5Db2RlTWFwLnByb3RvdHlwZS5m
aW5kSW5UcmVlXyk6CisgICAgICAgIChkZXZ0b29scy5wcm9maWxlci5Db2RlTWFwLnByb3RvdHlw
ZS5maW5kRW50cnkpOgorICAgICAgICAoZGV2dG9vbHMucHJvZmlsZXIuQ29kZU1hcC5wcm90b3R5
cGUuZmluZER5bmFtaWNFbnRyeUJ5U3RhcnRBZGRyZXNzKToKKyAgICAgICAgKGRldnRvb2xzLnBy
b2ZpbGVyLkNvZGVNYXAucHJvdG90eXBlLmdldEFsbER5bmFtaWNFbnRyaWVzKToKKyAgICAgICAg
KGRldnRvb2xzLnByb2ZpbGVyLkNvZGVNYXAucHJvdG90eXBlLmdldEFsbFN0YXRpY0VudHJpZXMp
OgorICAgICAgICAoZGV2dG9vbHMucHJvZmlsZXIuQ29kZU1hcC5wcm90b3R5cGUuZ2V0QWxsTGli
cmFyaWVzRW50cmllcyk6CisgICAgICAgIChkZXZ0b29scy5wcm9maWxlci5Db2RlTWFwLkNvZGVF
bnRyeSk6CisgICAgICAgIChkZXZ0b29scy5wcm9maWxlci5Db2RlTWFwLkNvZGVFbnRyeS5wcm90
b3R5cGUuZ2V0TmFtZSk6CisgICAgICAgIChkZXZ0b29scy5wcm9maWxlci5Db2RlTWFwLkNvZGVF
bnRyeS5wcm90b3R5cGUudG9TdHJpbmcpOgorICAgICAgICAoZGV2dG9vbHMucHJvZmlsZXIuQ29k
ZU1hcC5OYW1lR2VuZXJhdG9yKToKKyAgICAgICAgKGRldnRvb2xzLnByb2ZpbGVyLkNvZGVNYXAu
TmFtZUdlbmVyYXRvci5wcm90b3R5cGUuZ2V0TmFtZSk6CisgICAgICAgICogaW5zcGVjdG9yL2Rl
dnRvb2xzL2NvbnNhcnJheS5qczogQWRkZWQuCisgICAgICAgIChDb25zQXJyYXkpOgorICAgICAg
ICAoQ29uc0FycmF5LnByb3RvdHlwZS5jb25jYXQpOgorICAgICAgICAoQ29uc0FycmF5LnByb3Rv
dHlwZS5hdEVuZCk6CisgICAgICAgIChDb25zQXJyYXkucHJvdG90eXBlLm5leHQpOgorICAgICAg
ICAoQ29uc0FycmF5LkNlbGwpOgorICAgICAgICAqIGluc3BlY3Rvci9kZXZ0b29scy9jc3ZwYXJz
ZXIuanM6IEFkZGVkLgorICAgICAgICAoZGV2dG9vbHMucHJvZmlsZXIuQ3N2UGFyc2VyKToKKyAg
ICAgICAgKGRldnRvb2xzLnByb2ZpbGVyLkNzdlBhcnNlci5DU1ZfRklFTERfUkVfKToKKyAgICAg
ICAgKiBpbnNwZWN0b3IvZGV2dG9vbHMvZGV2VG9vbHMuY3NzOiBDb3BpZWQgZnJvbSBXZWJLaXQv
Y2hyb21pdW0vc3JjL2pzL2RldlRvb2xzLmNzcy4KKyAgICAgICAgKC5kYXRhLWdyaWQgdGFibGUp
OgorICAgICAgICAoYm9keS5hdHRhY2hlZCAjdG9vbGJhcik6CisgICAgICAgIChib2R5LnBsYXRm
b3JtLXdpbmRvd3MgI3Rvb2xiYXIsIGJvZHkucGxhdGZvcm0td2luZG93cy5pbmFjdGl2ZSAjdG9v
bGJhcik6CisgICAgICAgIChib2R5LmRldGFjaGVkLnBsYXRmb3JtLW1hYy1sZW9wYXJkICN0b29s
YmFyKToKKyAgICAgICAgKGJvZHkuZGV0YWNoZWQucGxhdGZvcm0tbWFjLWxlb3BhcmQuaW5hY3Rp
dmUgI3Rvb2xiYXIpOgorICAgICAgICAoYm9keS5kZXRhY2hlZC5wbGF0Zm9ybS1tYWMtc25vd2xl
b3BhcmQgI3Rvb2xiYXIpOgorICAgICAgICAoYm9keS5kZXRhY2hlZC5wbGF0Zm9ybS1tYWMtc25v
d2xlb3BhcmQuaW5hY3RpdmUgI3Rvb2xiYXIpOgorICAgICAgICAoYm9keS5wbGF0Zm9ybS1saW51
eCAjc2NyaXB0cy1maWxlcyk6CisgICAgICAgICguaGVhcC1zbmFwc2hvdC1zdGF0dXMtYmFyLWl0
ZW0gLmdseXBoKToKKyAgICAgICAgKC5oZWFwLXNuYXBzaG90LXNpZGViYXItdHJlZS1pdGVtIC5p
Y29uKToKKyAgICAgICAgKC5oZWFwLXNuYXBzaG90LXNpZGViYXItdHJlZS1pdGVtLnNtYWxsIC5p
Y29uKToKKyAgICAgICAgKC5oZWFwLXNuYXBzaG90LXZpZXcpOgorICAgICAgICAoLmhlYXAtc25h
cHNob3Qtdmlldy52aXNpYmxlKToKKyAgICAgICAgKC5oZWFwLXNuYXBzaG90LXZpZXcgLmRhdGEt
Z3JpZCk6CisgICAgICAgICguaGVhcC1zbmFwc2hvdC12aWV3IC5kYXRhLWdyaWQgdGguY291bnQt
Y29sdW1uKToKKyAgICAgICAgKC5oZWFwLXNuYXBzaG90LXZpZXcgLmRhdGEtZ3JpZCB0ZC5jb3Vu
dC1jb2x1bW4pOgorICAgICAgICAoLmhlYXAtc25hcHNob3QtdmlldyAuZGF0YS1ncmlkIHRoLnNp
emUtY29sdW1uKToKKyAgICAgICAgKC5oZWFwLXNuYXBzaG90LXZpZXcgLmRhdGEtZ3JpZCB0ZC5z
aXplLWNvbHVtbik6CisgICAgICAgICguaGVhcC1zbmFwc2hvdC12aWV3IC5kYXRhLWdyaWQgdGgu
Y291bnREZWx0YS1jb2x1bW4pOgorICAgICAgICAoLmhlYXAtc25hcHNob3QtdmlldyAuZGF0YS1n
cmlkIHRkLmNvdW50RGVsdGEtY29sdW1uKToKKyAgICAgICAgKC5oZWFwLXNuYXBzaG90LXZpZXcg
LmRhdGEtZ3JpZCB0aC5zaXplRGVsdGEtY29sdW1uKToKKyAgICAgICAgKC5oZWFwLXNuYXBzaG90
LXZpZXcgLmRhdGEtZ3JpZCB0ZC5zaXplRGVsdGEtY29sdW1uKToKKyAgICAgICAgKCNoZWFwLXNu
YXBzaG90LXN1bW1hcnktY29udGFpbmVyKToKKyAgICAgICAgKC5oZWFwLXNuYXBzaG90LXN1bW1h
cnkpOgorICAgICAgICAoLmhlYXAtc25hcHNob3Qtc3VtbWFyeSBjYW52YXMuc3VtbWFyeS1ncmFw
aCk6CisgICAgICAgICguaGVhcC1zbmFwc2hvdC1zdW1tYXJ5LWxhYmVsKToKKyAgICAgICAgKC5z
ZWN0aW9uID4gLmhlYWRlcik6CisgICAgICAgICguY29uc29sZS1ncm91cC1tZXNzYWdlcyAuc2Vj
dGlvbiA+IC5oZWFkZXIpOgorICAgICAgICAoI3Jlc291cmNlcy1maWx0ZXIpOgorICAgICAgICAo
LmNydW1icyAuY3J1bWIpOgorICAgICAgICAoLmNydW1icyAuY3J1bWIuc2VsZWN0ZWQpOgorICAg
ICAgICAoLmNydW1icyAuY3J1bWIuc2VsZWN0ZWQ6aG92ZXIpOgorICAgICAgICAoLmNydW1icyAu
Y3J1bWIuc2VsZWN0ZWQuZW5kLCAuY3J1bWJzIC5jcnVtYi5zZWxlY3RlZC5lbmQ6aG92ZXIpOgor
ICAgICAgICAoLmNydW1icyAuY3J1bWI6aG92ZXIpOgorICAgICAgICAoLmNydW1icyAuY3J1bWIu
ZGltbWVkOmhvdmVyKToKKyAgICAgICAgKC5jcnVtYnMgLmNydW1iLmVuZDpob3Zlcik6CisgICAg
ICAgIChib2R5LmRyYXdlci12aXNpYmxlICNtYWluLXN0YXR1cy1iYXIpOgorICAgICAgICAoLnN0
YXR1cy1iYXIpOgorICAgICAgICAoYnV0dG9uLnN0YXR1cy1iYXItaXRlbSk6CisgICAgICAgIChz
ZWxlY3Quc3RhdHVzLWJhci1pdGVtOmFjdGl2ZSk6CisgICAgICAgICgjZHJhd2VyKToKKyAgICAg
ICAgKHNlbGVjdC5zdGF0dXMtYmFyLWl0ZW0pOgorICAgICAgICAoLnNjb3BlLWJhciBsaS5zZWxl
Y3RlZCk6CisgICAgICAgICguc2NvcGUtYmFyIGxpOmFjdGl2ZSk6CisgICAgICAgICgudGltZWxp
bmUtY2F0ZWdvcnktc3RhdHVzYmFyLWl0ZW0gaW5wdXQpOgorICAgICAgICAqIGluc3BlY3Rvci9k
ZXZ0b29scy9kZXZ0b29scy5odG1sOiBBZGRlZC4KKyAgICAgICAgKiBpbnNwZWN0b3IvZGV2dG9v
bHMvZGV2dG9vbHMucXJjOiBBZGRlZC4KKyAgICAgICAgKiBpbnNwZWN0b3IvZGV2dG9vbHMvbG9n
cmVhZGVyLmpzOiBBZGRlZC4KKyAgICAgICAgKGRldnRvb2xzLnByb2ZpbGVyLkxvZ1JlYWRlcik6
CisgICAgICAgIChkZXZ0b29scy5wcm9maWxlci5Mb2dSZWFkZXIucHJvdG90eXBlLmNyZWF0ZUFk
ZHJlc3NQYXJzZXIpOgorICAgICAgICAoZGV2dG9vbHMucHJvZmlsZXIuTG9nUmVhZGVyLnByb3Rv
dHlwZS5leHBhbmRBbGlhcyk6CisgICAgICAgIChkZXZ0b29scy5wcm9maWxlci5Mb2dSZWFkZXIu
cHJvdG90eXBlLnByaW50RXJyb3IpOgorICAgICAgICAoZGV2dG9vbHMucHJvZmlsZXIuTG9nUmVh
ZGVyLnByb3RvdHlwZS5wcm9jZXNzTG9nQ2h1bmspOgorICAgICAgICAoZGV2dG9vbHMucHJvZmls
ZXIuTG9nUmVhZGVyLnByb3RvdHlwZS5wcm9jZXNzTG9nTGluZSk6CisgICAgICAgIChkZXZ0b29s
cy5wcm9maWxlci5Mb2dSZWFkZXIucHJvdG90eXBlLnByb2Nlc3NTdGFjayk6CisgICAgICAgIChk
ZXZ0b29scy5wcm9maWxlci5Mb2dSZWFkZXIucHJvdG90eXBlLnNraXBEaXNwYXRjaCk6CisgICAg
ICAgIChkZXZ0b29scy5wcm9maWxlci5Mb2dSZWFkZXIucHJvdG90eXBlLmRpc3BhdGNoTG9nUm93
Xyk6CisgICAgICAgIChkZXZ0b29scy5wcm9maWxlci5Mb2dSZWFkZXIucHJvdG90eXBlLmV4cGFu
ZEJhY2tSZWZfKToKKyAgICAgICAgKGRldnRvb2xzLnByb2ZpbGVyLkxvZ1JlYWRlci5wcm90b3R5
cGUuaW5pdEJhY2tSZWZzQ29tbWFuZHNfKToKKyAgICAgICAgKGRldnRvb2xzLnByb2ZpbGVyLkxv
Z1JlYWRlci5wcm90b3R5cGUucHJvY2Vzc0FsaWFzXyk6CisgICAgICAgIChkZXZ0b29scy5wcm9m
aWxlci5Mb2dSZWFkZXIucHJvdG90eXBlLnByb2Nlc3NMb2dfKToKKyAgICAgICAgKGRldnRvb2xz
LnByb2ZpbGVyLkxvZ1JlYWRlci5wcm90b3R5cGUucHJvY2Vzc1JlcGVhdF8pOgorICAgICAgICAq
IGluc3BlY3Rvci9kZXZ0b29scy9wcm9maWxlLmpzOiBBZGRlZC4KKyAgICAgICAgKGRldnRvb2xz
LnByb2ZpbGVyLlByb2ZpbGUpOgorICAgICAgICAoZGV2dG9vbHMucHJvZmlsZXIuUHJvZmlsZS5w
cm90b3R5cGUuc2tpcFRoaXNGdW5jdGlvbik6CisgICAgICAgIChkZXZ0b29scy5wcm9maWxlci5Q
cm9maWxlLnByb3RvdHlwZS5oYW5kbGVVbmtub3duQ29kZSk6CisgICAgICAgIChkZXZ0b29scy5w
cm9maWxlci5Qcm9maWxlLnByb3RvdHlwZS5hZGRMaWJyYXJ5KToKKyAgICAgICAgKGRldnRvb2xz
LnByb2ZpbGVyLlByb2ZpbGUucHJvdG90eXBlLmFkZFN0YXRpY0NvZGUpOgorICAgICAgICAoZGV2
dG9vbHMucHJvZmlsZXIuUHJvZmlsZS5wcm90b3R5cGUuYWRkQ29kZSk6CisgICAgICAgIChkZXZ0
b29scy5wcm9maWxlci5Qcm9maWxlLnByb3RvdHlwZS5hZGRDb2RlQWxpYXMpOgorICAgICAgICAo
ZGV2dG9vbHMucHJvZmlsZXIuUHJvZmlsZS5wcm90b3R5cGUubW92ZUNvZGUpOgorICAgICAgICAo
ZGV2dG9vbHMucHJvZmlsZXIuUHJvZmlsZS5wcm90b3R5cGUuZGVsZXRlQ29kZSk6CisgICAgICAg
IChkZXZ0b29scy5wcm9maWxlci5Qcm9maWxlLnByb3RvdHlwZS5zYWZlTW92ZUR5bmFtaWNDb2Rl
KToKKyAgICAgICAgKGRldnRvb2xzLnByb2ZpbGVyLlByb2ZpbGUucHJvdG90eXBlLnNhZmVEZWxl
dGVEeW5hbWljQ29kZSk6CisgICAgICAgIChkZXZ0b29scy5wcm9maWxlci5Qcm9maWxlLnByb3Rv
dHlwZS5maW5kRW50cnkpOgorICAgICAgICAoZGV2dG9vbHMucHJvZmlsZXIuUHJvZmlsZS5wcm90
b3R5cGUucmVjb3JkVGljayk6CisgICAgICAgIChkZXZ0b29scy5wcm9maWxlci5Qcm9maWxlLnBy
b3RvdHlwZS5yZXNvbHZlQW5kRmlsdGVyRnVuY3NfKToKKyAgICAgICAgKGRldnRvb2xzLnByb2Zp
bGVyLlByb2ZpbGUucHJvdG90eXBlLnRyYXZlcnNlVG9wRG93blRyZWUpOgorICAgICAgICAoZGV2
dG9vbHMucHJvZmlsZXIuUHJvZmlsZS5wcm90b3R5cGUudHJhdmVyc2VCb3R0b21VcFRyZWUpOgor
ICAgICAgICAoZGV2dG9vbHMucHJvZmlsZXIuUHJvZmlsZS5wcm90b3R5cGUuZ2V0VG9wRG93blBy
b2ZpbGUpOgorICAgICAgICAoZGV2dG9vbHMucHJvZmlsZXIuUHJvZmlsZS5wcm90b3R5cGUuZ2V0
Qm90dG9tVXBQcm9maWxlKToKKyAgICAgICAgKGRldnRvb2xzLnByb2ZpbGVyLlByb2ZpbGUucHJv
dG90eXBlLmdldFRyZWVQcm9maWxlXyk6CisgICAgICAgIChkZXZ0b29scy5wcm9maWxlci5Qcm9m
aWxlLnByb3RvdHlwZS5nZXRGbGF0UHJvZmlsZSk6CisgICAgICAgIChkZXZ0b29scy5wcm9maWxl
ci5Qcm9maWxlLkR5bmFtaWNDb2RlRW50cnkpOgorICAgICAgICAoZGV2dG9vbHMucHJvZmlsZXIu
UHJvZmlsZS5EeW5hbWljQ29kZUVudHJ5LnByb3RvdHlwZS5nZXROYW1lKToKKyAgICAgICAgKGRl
dnRvb2xzLnByb2ZpbGVyLlByb2ZpbGUuRHluYW1pY0NvZGVFbnRyeS5wcm90b3R5cGUuZ2V0UmF3
TmFtZSk6CisgICAgICAgIChkZXZ0b29scy5wcm9maWxlci5Qcm9maWxlLkR5bmFtaWNDb2RlRW50
cnkucHJvdG90eXBlLmlzSlNGdW5jdGlvbik6CisgICAgICAgIChkZXZ0b29scy5wcm9maWxlci5D
YWxsVHJlZSk6CisgICAgICAgIChkZXZ0b29scy5wcm9maWxlci5DYWxsVHJlZS5wcm90b3R5cGUu
Z2V0Um9vdCk6CisgICAgICAgIChkZXZ0b29scy5wcm9maWxlci5DYWxsVHJlZS5wcm90b3R5cGUu
YWRkUGF0aCk6CisgICAgICAgIChkZXZ0b29scy5wcm9maWxlci5DYWxsVHJlZS5wcm90b3R5cGUu
ZmluZE9yQWRkQ2hpbGQpOgorICAgICAgICAoZGV2dG9vbHMucHJvZmlsZXIuQ2FsbFRyZWUucHJv
dG90eXBlLmNsb25lU3VidHJlZSk6CisgICAgICAgIChkZXZ0b29scy5wcm9maWxlci5DYWxsVHJl
ZS5wcm90b3R5cGUuY29tcHV0ZVRvdGFsV2VpZ2h0cyk6CisgICAgICAgIChkZXZ0b29scy5wcm9m
aWxlci5DYWxsVHJlZS5wcm90b3R5cGUudHJhdmVyc2UpOgorICAgICAgICAoZGV2dG9vbHMucHJv
ZmlsZXIuQ2FsbFRyZWUucHJvdG90eXBlLnRyYXZlcnNlSW5EZXB0aCk6CisgICAgICAgIChkZXZ0
b29scy5wcm9maWxlci5DYWxsVHJlZS5Ob2RlKToKKyAgICAgICAgKGRldnRvb2xzLnByb2ZpbGVy
LkNhbGxUcmVlLk5vZGUucHJvdG90eXBlLmFkZENoaWxkKToKKyAgICAgICAgKGRldnRvb2xzLnBy
b2ZpbGVyLkNhbGxUcmVlLk5vZGUucHJvdG90eXBlLmNvbXB1dGVUb3RhbFdlaWdodCk6CisgICAg
ICAgIChkZXZ0b29scy5wcm9maWxlci5DYWxsVHJlZS5Ob2RlLnByb3RvdHlwZS5maW5kQ2hpbGQp
OgorICAgICAgICAoZGV2dG9vbHMucHJvZmlsZXIuQ2FsbFRyZWUuTm9kZS5wcm90b3R5cGUuZmlu
ZE9yQWRkQ2hpbGQpOgorICAgICAgICAoZGV2dG9vbHMucHJvZmlsZXIuQ2FsbFRyZWUuTm9kZS5w
cm90b3R5cGUuZm9yRWFjaENoaWxkKToKKyAgICAgICAgKGRldnRvb2xzLnByb2ZpbGVyLkNhbGxU
cmVlLk5vZGUucHJvdG90eXBlLndhbGtVcFRvUm9vdCk6CisgICAgICAgIChkZXZ0b29scy5wcm9m
aWxlci5DYWxsVHJlZS5Ob2RlLnByb3RvdHlwZS5kZXNjZW5kVG9DaGlsZCk6CisgICAgICAgICog
aW5zcGVjdG9yL2RldnRvb2xzL3Byb2ZpbGVfdmlldy5qczogQWRkZWQuCisgICAgICAgIChkZXZ0
b29scy5wcm9maWxlci5WaWV3QnVpbGRlcik6CisgICAgICAgIChkZXZ0b29scy5wcm9maWxlci5W
aWV3QnVpbGRlci5wcm90b3R5cGUuYnVpbGRWaWV3KToKKyAgICAgICAgKGRldnRvb2xzLnByb2Zp
bGVyLlZpZXdCdWlsZGVyLnByb3RvdHlwZS5jcmVhdGVWaWV3KToKKyAgICAgICAgKGRldnRvb2xz
LnByb2ZpbGVyLlZpZXdCdWlsZGVyLnByb3RvdHlwZS5jcmVhdGVWaWV3Tm9kZSk6CisgICAgICAg
IChkZXZ0b29scy5wcm9maWxlci5Qcm9maWxlVmlldyk6CisgICAgICAgIChkZXZ0b29scy5wcm9m
aWxlci5Qcm9maWxlVmlldy5wcm90b3R5cGUuc29ydCk6CisgICAgICAgIChkZXZ0b29scy5wcm9m
aWxlci5Qcm9maWxlVmlldy5wcm90b3R5cGUudHJhdmVyc2UpOgorICAgICAgICAoZGV2dG9vbHMu
cHJvZmlsZXIuUHJvZmlsZVZpZXcuTm9kZSk6CisgICAgICAgIChkZXZ0b29scyk6CisgICAgICAg
IChkZXZ0b29scy5wcm9maWxlci5Qcm9maWxlVmlldy5Ob2RlLnByb3RvdHlwZS5hZGRDaGlsZCk6
CisgICAgICAgIChkZXZ0b29scy5wcm9maWxlci5Qcm9maWxlVmlldy5Ob2RlLnByb3RvdHlwZS5z
b3J0Q2hpbGRyZW4pOgorICAgICAgICAqIGluc3BlY3Rvci9kZXZ0b29scy9zcGxheXRyZWUuanM6
IEFkZGVkLgorICAgICAgICAoZ29vZy5zdHJ1Y3RzLlNwbGF5VHJlZSk6CisgICAgICAgIChnb29n
LnN0cnVjdHMuU3BsYXlUcmVlLnByb3RvdHlwZS5pc0VtcHR5KToKKyAgICAgICAgKGdvb2cuc3Ry
dWN0cy5TcGxheVRyZWUucHJvdG90eXBlLmluc2VydCk6CisgICAgICAgIChnb29nLnN0cnVjdHMu
U3BsYXlUcmVlLnByb3RvdHlwZS5yZW1vdmUpOgorICAgICAgICAoZ29vZy5zdHJ1Y3RzLlNwbGF5
VHJlZS5wcm90b3R5cGUuZmluZCk6CisgICAgICAgIChnb29nLnN0cnVjdHMuU3BsYXlUcmVlLnBy
b3RvdHlwZS5maW5kTWluKToKKyAgICAgICAgKGdvb2cuc3RydWN0cy5TcGxheVRyZWUucHJvdG90
eXBlLmZpbmRNYXgpOgorICAgICAgICAoZ29vZy5zdHJ1Y3RzLlNwbGF5VHJlZS5wcm90b3R5cGUu
ZmluZEdyZWF0ZXN0TGVzc1RoYW4pOgorICAgICAgICAoZ29vZy5zdHJ1Y3RzLlNwbGF5VHJlZS5w
cm90b3R5cGUuc3BsYXlfKToKKyAgICAgICAgKGdvb2cuc3RydWN0cy5TcGxheVRyZWUucHJvdG90
eXBlLnRyYXZlcnNlXyk6CisgICAgICAgIChnb29nLnN0cnVjdHMuU3BsYXlUcmVlLk5vZGUpOgor
ICAgICAgICAqIGluc3BlY3Rvci9kZXZ0b29scy90aWNrcHJvY2Vzc29yLWRyaXZlci5qczogQWRk
ZWQuCisgICAgICAgIChwcm9jZXNzQXJndW1lbnRzKToKKyAgICAgICAgKiBpbnNwZWN0b3IvZGV2
dG9vbHMvdGlja3Byb2Nlc3Nvci5qczogQWRkZWQuCisgICAgICAgIChQcm9maWxlLnRoaXMuc2tp
cFRoaXNGdW5jdGlvbik6CisgICAgICAgIChQcm9maWxlKToKKyAgICAgICAgKCk6CisgICAgICAg
IChpbmhlcml0cyk6CisgICAgICAgIChTbmFwc2hvdExvZ1Byb2Nlc3Nvci5Qcm9maWxlLnByb3Rv
dHlwZS5oYW5kbGVVbmtub3duQ29kZSk6CisgICAgICAgIChTbmFwc2hvdExvZ1Byb2Nlc3Nvcik6
CisgICAgICAgIChTbmFwc2hvdExvZ1Byb2Nlc3Nvci5wcm90b3R5cGUucHJvY2Vzc0NvZGVDcmVh
dGlvbik6CisgICAgICAgIChTbmFwc2hvdExvZ1Byb2Nlc3Nvci5wcm90b3R5cGUucHJvY2Vzc0Nv
ZGVNb3ZlKToKKyAgICAgICAgKFNuYXBzaG90TG9nUHJvY2Vzc29yLnByb3RvdHlwZS5wcm9jZXNz
Q29kZURlbGV0ZSk6CisgICAgICAgIChTbmFwc2hvdExvZ1Byb2Nlc3Nvci5wcm90b3R5cGUucHJv
Y2Vzc1NuYXBzaG90UG9zaXRpb24pOgorICAgICAgICAoU25hcHNob3RMb2dQcm9jZXNzb3IucHJv
dG90eXBlLnByb2Nlc3NMb2dGaWxlKToKKyAgICAgICAgKFNuYXBzaG90TG9nUHJvY2Vzc29yLnBy
b3RvdHlwZS5nZXRTZXJpYWxpemVkRW50cnlOYW1lKToKKyAgICAgICAgKFRpY2tQcm9jZXNzb3Iu
UHJvZmlsZS5wcm90b3R5cGUuaGFuZGxlVW5rbm93bkNvZGUpOgorICAgICAgICAoVGlja1Byb2Nl
c3Nvcik6CisgICAgICAgIChUaWNrUHJvY2Vzc29yLnByb3RvdHlwZS5wcmludEVycm9yKToKKyAg
ICAgICAgKFRpY2tQcm9jZXNzb3IucHJvdG90eXBlLnNldENvZGVUeXBlKToKKyAgICAgICAgKFRp
Y2tQcm9jZXNzb3IucHJvdG90eXBlLmlzU2hhcmVkTGlicmFyeSk6CisgICAgICAgIChUaWNrUHJv
Y2Vzc29yLnByb3RvdHlwZS5pc0NwcENvZGUpOgorICAgICAgICAoVGlja1Byb2Nlc3Nvci5wcm90
b3R5cGUuaXNKc0NvZGUpOgorICAgICAgICAoVGlja1Byb2Nlc3Nvci5wcm90b3R5cGUucHJvY2Vz
c0xvZ0ZpbGUpOgorICAgICAgICAoVGlja1Byb2Nlc3Nvci5wcm90b3R5cGUucHJvY2Vzc0xvZ0Zp
bGVJblRlc3QpOgorICAgICAgICAoVGlja1Byb2Nlc3Nvci5wcm90b3R5cGUucHJvY2Vzc1NoYXJl
ZExpYnJhcnkpOgorICAgICAgICAoVGlja1Byb2Nlc3Nvci5wcm90b3R5cGUucHJvY2Vzc0NvZGVD
cmVhdGlvbik6CisgICAgICAgIChUaWNrUHJvY2Vzc29yLnByb3RvdHlwZS5wcm9jZXNzQ29kZU1v
dmUpOgorICAgICAgICAoVGlja1Byb2Nlc3Nvci5wcm90b3R5cGUucHJvY2Vzc0NvZGVEZWxldGUp
OgorICAgICAgICAoVGlja1Byb2Nlc3Nvci5wcm90b3R5cGUucHJvY2Vzc0Z1bmN0aW9uQ3JlYXRp
b24pOgorICAgICAgICAoVGlja1Byb2Nlc3Nvci5wcm90b3R5cGUucHJvY2Vzc0Z1bmN0aW9uTW92
ZSk6CisgICAgICAgIChUaWNrUHJvY2Vzc29yLnByb3RvdHlwZS5wcm9jZXNzRnVuY3Rpb25EZWxl
dGUpOgorICAgICAgICAoVGlja1Byb2Nlc3Nvci5wcm90b3R5cGUucHJvY2Vzc1NuYXBzaG90UG9z
aXRpb24pOgorICAgICAgICAoVGlja1Byb2Nlc3Nvci5wcm90b3R5cGUuaW5jbHVkZVRpY2spOgor
ICAgICAgICAoVGlja1Byb2Nlc3Nvci5wcm90b3R5cGUucHJvY2Vzc1RpY2spOgorICAgICAgICAo
VGlja1Byb2Nlc3Nvci5wcm90b3R5cGUucHJvY2Vzc0hlYXBTYW1wbGVCZWdpbik6CisgICAgICAg
IChUaWNrUHJvY2Vzc29yLnByb3RvdHlwZS5wcm9jZXNzSGVhcFNhbXBsZUVuZCk6CisgICAgICAg
IChUaWNrUHJvY2Vzc29yLnByb3RvdHlwZS5wcm9jZXNzSlNQcm9kdWNlcik6CisgICAgICAgIChU
aWNrUHJvY2Vzc29yLnByb3RvdHlwZS5wcmludFN0YXRpc3RpY3MudGhpcyk6CisgICAgICAgIChU
aWNrUHJvY2Vzc29yLnByb3RvdHlwZS5wcmludFN0YXRpc3RpY3MpOgorICAgICAgICAocGFkTGVm
dCk6CisgICAgICAgIChUaWNrUHJvY2Vzc29yLnByb3RvdHlwZS5wcmludEhlYWRlcik6CisgICAg
ICAgIChUaWNrUHJvY2Vzc29yLnByb3RvdHlwZS5wcmludEhlYXZ5UHJvZkhlYWRlcik6CisgICAg
ICAgIChUaWNrUHJvY2Vzc29yLnByb3RvdHlwZS5wcmludENvdW50ZXIpOgorICAgICAgICAoVGlj
a1Byb2Nlc3Nvci5wcm90b3R5cGUucHJvY2Vzc1Byb2ZpbGUpOgorICAgICAgICAoVGlja1Byb2Nl
c3Nvci5wcm90b3R5cGUucHJpbnRFbnRyaWVzKToKKyAgICAgICAgKFRpY2tQcm9jZXNzb3IucHJv
dG90eXBlLnByaW50SGVhdnlQcm9maWxlKToKKyAgICAgICAgKENwcEVudHJpZXNQcm92aWRlci5w
cm90b3R5cGUucGFyc2VWbVN5bWJvbHMuYWRkRW50cnkpOgorICAgICAgICAoQ3BwRW50cmllc1By
b3ZpZGVyLnByb3RvdHlwZS5wYXJzZVZtU3ltYm9scyk6CisgICAgICAgIChDcHBFbnRyaWVzUHJv
dmlkZXIucHJvdG90eXBlLmxvYWRTeW1ib2xzKToKKyAgICAgICAgKENwcEVudHJpZXNQcm92aWRl
ci5wcm90b3R5cGUucGFyc2VOZXh0TGluZSk6CisgICAgICAgIChVbml4Q3BwRW50cmllc1Byb3Zp
ZGVyKToKKyAgICAgICAgKFVuaXhDcHBFbnRyaWVzUHJvdmlkZXIucHJvdG90eXBlLmxvYWRTeW1i
b2xzKToKKyAgICAgICAgKFVuaXhDcHBFbnRyaWVzUHJvdmlkZXIucHJvdG90eXBlLnBhcnNlTmV4
dExpbmUpOgorICAgICAgICAoTWFjQ3BwRW50cmllc1Byb3ZpZGVyKToKKyAgICAgICAgKE1hY0Nw
cEVudHJpZXNQcm92aWRlci5wcm90b3R5cGUubG9hZFN5bWJvbHMpOgorICAgICAgICAoV2luZG93
c0NwcEVudHJpZXNQcm92aWRlci5wcm90b3R5cGUubG9hZFN5bWJvbHMpOgorICAgICAgICAoV2lu
ZG93c0NwcEVudHJpZXNQcm92aWRlci5wcm90b3R5cGUucGFyc2VOZXh0TGluZSk6CisgICAgICAg
IChXaW5kb3dzQ3BwRW50cmllc1Byb3ZpZGVyLnByb3RvdHlwZS51bm1hbmdsZU5hbWUpOgorICAg
ICAgICAoQXJndW1lbnRzUHJvY2Vzc29yKToKKyAgICAgICAgKEFyZ3VtZW50c1Byb2Nlc3Nvci5w
cm90b3R5cGUucGFyc2UpOgorICAgICAgICAoQXJndW1lbnRzUHJvY2Vzc29yLnByb3RvdHlwZS5y
ZXN1bHQpOgorICAgICAgICAoQXJndW1lbnRzUHJvY2Vzc29yLnByb3RvdHlwZS5wcmludFVzYWdl
QW5kRXhpdCk6CisgICAgICAgICogaW5zcGVjdG9yL2Zyb250LWVuZC9XZWJLaXQucXJjOgorICAg
ICAgICAqIGluc3BlY3Rvci9mcm9udC1lbmQvZGV2dG9vbHMuaHRtbDogQWRkZWQuCisgICAgICAg
ICogaW5zcGVjdG9yL2Zyb250LWVuZC9pbnNwZWN0b3IuaHRtbDoKKwogMjAxMC0wOC0xMyAgRGly
ayBTY2h1bHplICA8a3JpdEB3ZWJraXQub3JnPgogCiAgICAgICAgIFJldmlld2VkIGJ5IE5pa29s
YXMgWmltbWVybWFubi4KZGlmZiAtLWdpdCBhL1dlYkNvcmUvV2ViQ29yZS5wcm8gYi9XZWJDb3Jl
L1dlYkNvcmUucHJvCmluZGV4IGY4MmY4ZjYuLjM2NWEwYmEgMTAwNjQ0Ci0tLSBhL1dlYkNvcmUv
V2ViQ29yZS5wcm8KKysrIGIvV2ViQ29yZS9XZWJDb3JlLnBybwpAQCAtMTM4LDYgKzEzOCw3IEBA
IFJFU09VUkNFUyArPSBcCiAKICFzeW1iaWFuOiFtYWVtbzUgewogICAgIFJFU09VUkNFUyArPSAk
JFBXRC8uLi9XZWJDb3JlL2luc3BlY3Rvci9mcm9udC1lbmQvV2ViS2l0LnFyYworICAgIFJFU09V
UkNFUyArPSAkJFBXRC8uLi9XZWJDb3JlL2luc3BlY3Rvci9kZXZ0b29scy9kZXZ0b29scy5xcmMK
IH0KIAogbWFlbW81fHN5bWJpYW58ZW1iZWRkZWQgewpAQCAtMjE2OCw2ICsyMTY5LDcgQEAgSEVB
REVSUyArPSBcCiAgICAgeG1sL1hTTFRQcm9jZXNzb3IuaCBcCiAgICAgeG1sL1hTTFRVbmljb2Rl
U29ydC5oIFwKICAgICAkJFBXRC8uLi9XZWJLaXQvcXQvQXBpL3F3ZWJwbHVnaW5kYXRhYmFzZV9w
LmggXAorICAgICQkUFdELy4uL1dlYktpdC9xdC9XZWJDb3JlU3VwcG9ydC9XZWJEZWJ1Z1NlcnZl
clF0LmggXAogICAgICQkUFdELy4uL1dlYktpdC9xdC9XZWJDb3JlU3VwcG9ydC9RdEZhbGxiYWNr
V2ViUG9wdXAuaCBcCiAgICAgJCRQV0QvLi4vV2ViS2l0L3F0L1dlYkNvcmVTdXBwb3J0L0ZyYW1l
TG9hZGVyQ2xpZW50UXQuaCBcCiAgICAgJCRQV0QvLi4vV2ViS2l0L3F0L1dlYkNvcmVTdXBwb3J0
L05vdGlmaWNhdGlvblByZXNlbnRlckNsaWVudFF0LmggXApAQCAtMjI1OSw2ICsyMjYxLDcgQEAg
U09VUkNFUyArPSBcCiAgICAgLi4vV2ViS2l0L3F0L1dlYkNvcmVTdXBwb3J0L0VkaXRvckNsaWVu
dFF0LmNwcCBcCiAgICAgLi4vV2ViS2l0L3F0L1dlYkNvcmVTdXBwb3J0L0VkaXRDb21tYW5kUXQu
Y3BwIFwKICAgICAuLi9XZWJLaXQvcXQvV2ViQ29yZVN1cHBvcnQvRnJhbWVMb2FkZXJDbGllbnRR
dC5jcHAgXAorICAgIC4uL1dlYktpdC9xdC9XZWJDb3JlU3VwcG9ydC9XZWJEZWJ1Z1NlcnZlclF0
LmNwcCBcCiAgICAgLi4vV2ViS2l0L3F0L1dlYkNvcmVTdXBwb3J0L0luc3BlY3RvckNsaWVudFF0
LmNwcCBcCiAgICAgLi4vV2ViS2l0L3F0L1dlYkNvcmVTdXBwb3J0L05vdGlmaWNhdGlvblByZXNl
bnRlckNsaWVudFF0LmNwcCBcCiAgICAgLi4vV2ViS2l0L3F0L1dlYkNvcmVTdXBwb3J0L1BhZ2VD
bGllbnRRdC5jcHAgXApkaWZmIC0tZ2l0IGEvV2ViS2l0L3F0L0FwaS9xd2ViaW5zcGVjdG9yLmNw
cCBiL1dlYktpdC9xdC9BcGkvcXdlYmluc3BlY3Rvci5jcHAKaW5kZXggODAyZWE5OC4uNWE4Yjlk
MCAxMDA2NDQKLS0tIGEvV2ViS2l0L3F0L0FwaS9xd2ViaW5zcGVjdG9yLmNwcAorKysgYi9XZWJL
aXQvcXQvQXBpL3F3ZWJpbnNwZWN0b3IuY3BwCkBAIC0xOTYsNiArMTk2LDE5IEBAIHZvaWQgUVdl
Ykluc3BlY3RvclByaXZhdGU6OnNldEZyb250ZW5kKFFXaWRnZXQqIG5ld0Zyb250ZW5kKQogICAg
IH0KIH0KIAorLyohIFxpbnRlcm5hbCAqLwordm9pZCBRV2ViSW5zcGVjdG9yUHJpdmF0ZTo6c2V0
UmVtb3RlRnJvbnRlbmQoUU9iamVjdCogbmV3UmVtb3RlRnJvbnRlbmQpCit7CisgICAgaWYgKHJl
bW90ZUZyb250ZW5kKQorICAgICAgICByZW1vdGVGcm9udGVuZC0+c2V0UGFyZW50KDApOworCisg
ICAgcmVtb3RlRnJvbnRlbmQgPSBuZXdSZW1vdGVGcm9udGVuZDsKKworICAgIGlmIChyZW1vdGVG
cm9udGVuZCkgeworICAgICAgICByZW1vdGVGcm9udGVuZC0+c2V0UGFyZW50KHEpOworICAgIH0K
K30KKwogdm9pZCBRV2ViSW5zcGVjdG9yUHJpdmF0ZTo6YWRqdXN0RnJvbnRlbmRTaXplKGNvbnN0
IFFTaXplJiBzaXplKQogewogICAgIGlmIChmcm9udGVuZCkKZGlmZiAtLWdpdCBhL1dlYktpdC9x
dC9BcGkvcXdlYmluc3BlY3Rvcl9wLmggYi9XZWJLaXQvcXQvQXBpL3F3ZWJpbnNwZWN0b3JfcC5o
CmluZGV4IDRkMzI3Y2MuLjM3NWJkZmMgMTAwNjQ0Ci0tLSBhL1dlYktpdC9xdC9BcGkvcXdlYmlu
c3BlY3Rvcl9wLmgKKysrIGIvV2ViS2l0L3F0L0FwaS9xd2ViaW5zcGVjdG9yX3AuaApAQCAtMzMs
MTQgKzMzLDE3IEBAIHB1YmxpYzoKICAgICA6IHEocXEpCiAgICAgLCBwYWdlKDApCiAgICAgLCBm
cm9udGVuZCgwKQorICAgICwgcmVtb3RlRnJvbnRlbmQoMCkKICAgICB7fQogCiAgICAgdm9pZCBz
ZXRGcm9udGVuZChRV2lkZ2V0KiBuZXdGcm9udGVuZCk7CisgICAgdm9pZCBzZXRSZW1vdGVGcm9u
dGVuZChRT2JqZWN0KiBuZXdSZW1vdGVGcm9udGVuZCk7CiAgICAgdm9pZCBhZGp1c3RGcm9udGVu
ZFNpemUoY29uc3QgUVNpemUmIHNpemUpOwogCiAgICAgUVdlYkluc3BlY3RvciogcTsKICAgICBR
V2ViUGFnZSogcGFnZTsKICAgICBRV2lkZ2V0KiBmcm9udGVuZDsKKyAgICBRT2JqZWN0KiByZW1v
dGVGcm9udGVuZDsKIH07CiAKICNlbmRpZgpkaWZmIC0tZ2l0IGEvV2ViS2l0L3F0L0FwaS9xd2Vi
cGFnZS5jcHAgYi9XZWJLaXQvcXQvQXBpL3F3ZWJwYWdlLmNwcAppbmRleCA1MTZlYmM5Li5kOTg3
ZmUwIDEwMDY0NAotLS0gYS9XZWJLaXQvcXQvQXBpL3F3ZWJwYWdlLmNwcAorKysgYi9XZWJLaXQv
cXQvQXBpL3F3ZWJwYWdlLmNwcApAQCAtNzYsNiArNzYsNyBAQAogI2luY2x1ZGUgIkhUTUxJbnB1
dEVsZW1lbnQuaCIKICNpbmNsdWRlICJIVE1MTmFtZXMuaCIKICNpbmNsdWRlICJIaXRUZXN0UmVz
dWx0LmgiCisjaW5jbHVkZSAiV2ViRGVidWdTZXJ2ZXJRdC5oIgogI2luY2x1ZGUgIldpbmRvd0Zl
YXR1cmVzLmgiCiAjaW5jbHVkZSAiTG9jYWxpemVkU3RyaW5ncy5oIgogI2luY2x1ZGUgIkNhY2hl
LmgiCkBAIC05NSw3ICs5Niw2IEBACiAjaW5jbHVkZSA8UURyYWdNb3ZlRXZlbnQ+CiAjaW5jbHVk
ZSA8UURyb3BFdmVudD4KICNpbmNsdWRlIDxRRmlsZURpYWxvZz4KLSNpbmNsdWRlIDxRSHR0cFJl
cXVlc3RIZWFkZXI+CiAjaW5jbHVkZSA8UUlucHV0RGlhbG9nPgogI2luY2x1ZGUgPFFMb2NhbGU+
CiAjaW5jbHVkZSA8UU1lc3NhZ2VCb3g+CkBAIC0xMjk2LDYgKzEyOTYsMTEgQEAgdm9pZCBRV2Vi
UGFnZVByaXZhdGU6OmR5bmFtaWNQcm9wZXJ0eUNoYW5nZUV2ZW50KFFEeW5hbWljUHJvcGVydHlD
aGFuZ2VFdmVudCogZXYKICAgICAgICAgZnJhbWUtPnRpbGVkQmFja2luZ1N0b3JlKCktPnNldEtl
ZXBBbmRDb3ZlckFyZWFNdWx0aXBsaWVycyhrZWVwTXVsdGlwbGllciwgY292ZXJNdWx0aXBsaWVy
KTsKICAgICB9CiAjZW5kaWYKKyAgICBlbHNlIGlmIChldmVudC0+cHJvcGVydHlOYW1lKCkgPT0g
Il9xX3dlYkRlYnVnU2VydmVyUG9ydCIpIHsKKwlxRGVidWcoKSA8PCAiUVdlYlBhZ2U6OlFXZWJQ
YWdlIiA8PCAiX3Ffd2ViRGVidWdTZXJ2ZXJQb3J0IiA8PCBxLT5wcm9wZXJ0eSgiX3Ffd2ViRGVi
dWdTZXJ2ZXJQb3J0Iik7CisJV2ViRGVidWdTZXJ2ZXJRdCAqd2ViRGVidWdTZXJ2ZXIgPSBXZWJE
ZWJ1Z1NlcnZlclF0OjpzZXJ2ZXIoKTsKKwl3ZWJEZWJ1Z1NlcnZlci0+bGlzdGVuKHEtPnByb3Bl
cnR5KCJfcV93ZWJEZWJ1Z1NlcnZlclBvcnQiKS50b0ludCgpKTsKKyAgICB9CiB9CiAjZW5kaWYK
IApAQCAtMTg4Nyw2ICsxODkyLDcgQEAgUVdlYlBhZ2U6On5RV2ViUGFnZSgpCiAgICAgICAgIGVs
c2UKICAgICAgICAgICAgIGQtPmluc3BlY3Rvci0+c2V0UGFnZSgwKTsKICAgICB9CisKICAgICBk
ZWxldGUgZDsKIH0KIApkaWZmIC0tZ2l0IGEvV2ViS2l0L3F0L0NoYW5nZUxvZyBiL1dlYktpdC9x
dC9DaGFuZ2VMb2cKaW5kZXggOWJhN2JmOC4uOGM0NTdmMCAxMDA2NDQKLS0tIGEvV2ViS2l0L3F0
L0NoYW5nZUxvZworKysgYi9XZWJLaXQvcXQvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsNTYgQEAKKzIw
MTAtMDgtMTMgIEphbWV5IEhpY2tzICA8amFtZXkuaGlja3NAbm9raWEuY29tPgorCisgICAgICAg
IFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIFtRdF0gUmVtb3RlIFdlYiBJ
bnNwZWN0b3Igc3VwcG9ydCBmb3IgUXRXZWJLaXQKKworICAgICAgICBVbnRpbCB3ZSBoYXZlIGFu
IEFQSSBmb3IgZW5hYmxpbmcgcmVtb3RlIFdlYiBJbnNwZWN0b3IsIHNldAorICAgICAgICBwcm9w
ZXJ0eSBxX3dlYkRlYnVnU2VydmVyUG9ydCBvbiB0aGUgUVdlYlBhZ2UuIEFsbCBwYWdlcyB3aXRo
IHRoYXQKKyAgICAgICAgcHJvcGVydHkgc2V0IHdpbGwgYmUgcmVtb3RlbHkgaW5zcGVjdGFibGUu
CisKKyAgICAgICAgVVJMIGZvciByZW1vdGUgaW5zcGVjdGlvbiBpcyBodHRwOi8vbG9jYWxob3N0
OlBPUlQvZGV2dG9vbHMvcGFnZS9OCisgICAgICAgIHdoZXJlIFBPUlQgaXMgc3BlY2lmaWVkIGJ5
IHFfd2ViRGVidWdTZXJ2ZXJQb3J0IGFuZCBOIGlzIHRoZQorICAgICAgICBudW1iZXIgb2YgdGhl
IFFXZWJQYWdlIGluc3RhbmNlIHN0YXJ0aW5nIGZyb20gMS4KKyAgICAgICAgCisgICAgICAgICog
QXBpL3F3ZWJpbnNwZWN0b3IuY3BwOgorICAgICAgICAoUVdlYkluc3BlY3RvclByaXZhdGU6OnNl
dFJlbW90ZUZyb250ZW5kKToKKyAgICAgICAgKiBBcGkvcXdlYmluc3BlY3Rvcl9wLmg6CisgICAg
ICAgIChRV2ViSW5zcGVjdG9yUHJpdmF0ZTo6UVdlYkluc3BlY3RvclByaXZhdGUpOgorICAgICAg
ICAqIEFwaS9xd2VicGFnZS5jcHA6CisgICAgICAgIChRV2ViUGFnZVByaXZhdGU6OmR5bmFtaWNQ
cm9wZXJ0eUNoYW5nZUV2ZW50KToKKyAgICAgICAgKFFXZWJQYWdlOjp+UVdlYlBhZ2UpOgorICAg
ICAgICAqIFdlYkNvcmVTdXBwb3J0L0luc3BlY3RvckNsaWVudFF0LmNwcDoKKyAgICAgICAgKFdl
YkNvcmU6Okluc3BlY3RvckNsaWVudFF0OjpJbnNwZWN0b3JDbGllbnRRdCk6CisgICAgICAgIChX
ZWJDb3JlOjpJbnNwZWN0b3JDbGllbnRRdDo6aW5zcGVjdG9yRGVzdHJveWVkKToKKyAgICAgICAg
KFdlYkNvcmU6Okluc3BlY3RvckNsaWVudFF0OjpvcGVuSW5zcGVjdG9yRnJvbnRlbmQpOgorICAg
ICAgICAoV2ViQ29yZTo6SW5zcGVjdG9yQ2xpZW50UXQ6OnNldFJlbW90ZUZyb250ZW5kKToKKyAg
ICAgICAgKFdlYkNvcmU6Okluc3BlY3RvckNsaWVudFF0OjpzZW5kTWVzc2FnZVRvRnJvbnRlbmQp
OgorICAgICAgICAoV2ViQ29yZTo6SW5zcGVjdG9yQ2xpZW50UXQ6OmRpc3BhdGNoKToKKyAgICAg
ICAgKiBXZWJDb3JlU3VwcG9ydC9JbnNwZWN0b3JDbGllbnRRdC5oOgorICAgICAgICAqIFdlYkNv
cmVTdXBwb3J0L1dlYkRlYnVnU2VydmVyUXQuY3BwOiBBZGRlZC4KKyAgICAgICAgKFdlYkNvcmU6
OnNldENoYWxsZW5nZU51bWJlcik6CisgICAgICAgIChXZWJDb3JlOjpnZW5lcmF0ZUV4cGVjdGVk
Q2hhbGxlbmdlUmVzcG9uc2UpOgorICAgICAgICAoV2ViQ29yZTo6Z2V0Q2hhbGxlbmdlTnVtYmVy
RnJvbUZpZWxkKToKKyAgICAgICAgKFdlYkNvcmU6OldlYkRlYnVnU2VydmVyUXQ6OnNlcnZlcik6
CisgICAgICAgIChXZWJDb3JlOjpXZWJEZWJ1Z1NlcnZlclF0OjpXZWJEZWJ1Z1NlcnZlclF0KToK
KyAgICAgICAgKFdlYkNvcmU6OldlYkRlYnVnU2VydmVyUXQ6On5XZWJEZWJ1Z1NlcnZlclF0KToK
KyAgICAgICAgKFdlYkNvcmU6OldlYkRlYnVnU2VydmVyUXQ6Omxpc3Rlbik6CisgICAgICAgIChX
ZWJDb3JlOjpXZWJEZWJ1Z1NlcnZlclF0OjpjbG9zZSk6CisgICAgICAgIChXZWJDb3JlOjpXZWJE
ZWJ1Z1NlcnZlclF0OjppbnNwZWN0b3JDbGllbnQpOgorICAgICAgICAoV2ViQ29yZTo6V2ViRGVi
dWdTZXJ2ZXJRdDo6cmVnaXN0ZXJQYWdlKToKKyAgICAgICAgKFdlYkNvcmU6OldlYkRlYnVnU2Vy
dmVyUXQ6OnVucmVnaXN0ZXJQYWdlKToKKyAgICAgICAgKFdlYkNvcmU6OldlYkRlYnVnU2VydmVy
UXQ6OmdvdE5ld0Nvbm5lY3Rpb24pOgorICAgICAgICAoV2ViQ29yZTo6SHR0cFJlcXVlc3RIYW5k
bGVyOjpIdHRwUmVxdWVzdEhhbmRsZXIpOgorICAgICAgICAoV2ViQ29yZTo6SHR0cFJlcXVlc3RI
YW5kbGVyOjp+SHR0cFJlcXVlc3RIYW5kbGVyKToKKyAgICAgICAgKFdlYkNvcmU6Okh0dHBSZXF1
ZXN0SGFuZGxlcjo6dGNwUmVhZHlSZWFkKToKKyAgICAgICAgKFdlYkNvcmU6Okh0dHBSZXF1ZXN0
SGFuZGxlcjo6Y29tcGxldGVSZXF1ZXN0KToKKyAgICAgICAgKFdlYkNvcmU6Okh0dHBSZXF1ZXN0
SGFuZGxlcjo6dGNwQ29ubmVjdGlvbkRpc2Nvbm5lY3RlZCk6CisgICAgICAgIChXZWJDb3JlOjpI
dHRwUmVxdWVzdEhhbmRsZXI6OndlYlNvY2tldFNlbmQpOgorICAgICAgICAoV2ViQ29yZTo6SHR0
cFJlcXVlc3RIYW5kbGVyOjp3ZWJTb2NrZXRSZWFkeVJlYWQpOgorICAgICAgICAoV2ViQ29yZTo6
UmVtb3RlRnJvbnRlbmRDaGFubmVsOjpSZW1vdGVGcm9udGVuZENoYW5uZWwpOgorICAgICAgICAo
V2ViQ29yZTo6UmVtb3RlRnJvbnRlbmRDaGFubmVsOjpzZW5kTWVzc2FnZVRvRnJvbnRlbmQpOgor
ICAgICAgICAqIFdlYkNvcmVTdXBwb3J0L1dlYkRlYnVnU2VydmVyUXQuaDogQWRkZWQuCisKIDIw
MTAtMDgtMTIgIEplcmVteSBPcmxvdyAgPGpvcmxvd0BjaHJvbWl1bS5vcmc+CiAKICAgICAgICAg
UmV2ZXJ0IGZvciBub3cKZGlmZiAtLWdpdCBhL1dlYktpdC9xdC9XZWJDb3JlU3VwcG9ydC9JbnNw
ZWN0b3JDbGllbnRRdC5jcHAgYi9XZWJLaXQvcXQvV2ViQ29yZVN1cHBvcnQvSW5zcGVjdG9yQ2xp
ZW50UXQuY3BwCmluZGV4IGUxM2Y2YzMuLmU5ZGE4MGQgMTAwNjQ0Ci0tLSBhL1dlYktpdC9xdC9X
ZWJDb3JlU3VwcG9ydC9JbnNwZWN0b3JDbGllbnRRdC5jcHAKKysrIGIvV2ViS2l0L3F0L1dlYkNv
cmVTdXBwb3J0L0luc3BlY3RvckNsaWVudFF0LmNwcApAQCAtMzIsMTEgKzMyLDE0IEBACiAjaW5j
bHVkZSAiSW5zcGVjdG9yQ2xpZW50UXQuaCIKIAogI2luY2x1ZGUgIkZyYW1lLmgiCisjaW5jbHVk
ZSAiSW5zcGVjdG9yQmFja2VuZERpc3BhdGNoZXIuaCIKICNpbmNsdWRlICJJbnNwZWN0b3JDb250
cm9sbGVyLmgiCiAjaW5jbHVkZSAiTm90SW1wbGVtZW50ZWQuaCIKICNpbmNsdWRlICJQYWdlLmgi
CiAjaW5jbHVkZSAiUGxhdGZvcm1TdHJpbmcuaCIKKyNpbmNsdWRlICJSZW1vdGVJbnNwZWN0b3JG
cm9udGVuZC5oIgogI2luY2x1ZGUgIlNjcmlwdENvbnRyb2xsZXIuaCIKKyNpbmNsdWRlICJXZWJE
ZWJ1Z1NlcnZlclF0LmgiCiAjaW5jbHVkZSAicXdlYmluc3BlY3Rvci5oIgogI2luY2x1ZGUgInF3
ZWJpbnNwZWN0b3JfcC5oIgogI2luY2x1ZGUgInF3ZWJwYWdlLmgiCkBAIC05NiwxNSArOTksMjMg
QEAgcHVibGljIHNsb3RzOgogSW5zcGVjdG9yQ2xpZW50UXQ6Okluc3BlY3RvckNsaWVudFF0KFFX
ZWJQYWdlKiBwYWdlKQogICAgIDogbV9pbnNwZWN0ZWRXZWJQYWdlKHBhZ2UpCiAgICAgLCBtX2Zy
b250ZW5kV2ViUGFnZSgwKQote30KKyAgICAsIG1fcmVtb3RlSW5zcGVjdG9yKHRydWUpCit7Cisg
ICAgV2ViRGVidWdTZXJ2ZXJRdCogd2ViRGVidWdTZXJ2ZXIgPSBXZWJEZWJ1Z1NlcnZlclF0Ojpz
ZXJ2ZXIoKTsKKyAgICB3ZWJEZWJ1Z1NlcnZlci0+cmVnaXN0ZXJQYWdlKHBhZ2UsIHRoaXMpOwor
fQogCiB2b2lkIEluc3BlY3RvckNsaWVudFF0OjppbnNwZWN0b3JEZXN0cm95ZWQoKQogeworICAg
IFdlYkRlYnVnU2VydmVyUXQqIHdlYkRlYnVnU2VydmVyID0gV2ViRGVidWdTZXJ2ZXJRdDo6c2Vy
dmVyKCk7CisgICAgaWYgKHdlYkRlYnVnU2VydmVyKQorICAgICAgICB3ZWJEZWJ1Z1NlcnZlci0+
dW5yZWdpc3RlclBhZ2UobV9pbnNwZWN0ZWRXZWJQYWdlKTsKKwogICAgIGRlbGV0ZSB0aGlzOwog
fQogCiAgICAgCi12b2lkIEluc3BlY3RvckNsaWVudFF0OjpvcGVuSW5zcGVjdG9yRnJvbnRlbmQo
V2ViQ29yZTo6SW5zcGVjdG9yQ29udHJvbGxlciopCit2b2lkIEluc3BlY3RvckNsaWVudFF0Ojpv
cGVuSW5zcGVjdG9yRnJvbnRlbmQoV2ViQ29yZTo6SW5zcGVjdG9yQ29udHJvbGxlciogaW5zcGVj
dG9yQ29udHJvbGxlcikKIHsKICAgICBRV2ViVmlldyogaW5zcGVjdG9yVmlldyA9IG5ldyBRV2Vi
VmlldzsKICAgICBJbnNwZWN0b3JDbGllbnRXZWJQYWdlKiBpbnNwZWN0b3JQYWdlID0gbmV3IElu
c3BlY3RvckNsaWVudFdlYlBhZ2UoaW5zcGVjdG9yVmlldyk7CkBAIC0xMTUsMjQgKzEyNiwyNyBA
QCB2b2lkIEluc3BlY3RvckNsaWVudFF0OjpvcGVuSW5zcGVjdG9yRnJvbnRlbmQoV2ViQ29yZTo6
SW5zcGVjdG9yQ29udHJvbGxlciopCiAgICAgLy8gV2ViIGluc3BlY3Rvci4gVGhpcyBpcyB1c2Vk
IGZvciBTREsgcHVycG9zZXMuIFBsZWFzZSBrZWVwIHRoaXMgaG9vawogICAgIC8vIGFyb3VuZCBh
bmQgZG9uJ3QgcmVtb3ZlIGl0LgogICAgIC8vIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3df
YnVnLmNnaT9pZD0zNTM0MAotICAgIFFVcmwgaW5zcGVjdG9yVXJsOworICAgIGlmICghbV9yZW1v
dGVJbnNwZWN0b3IpIHsKKworICAgICAgICBRVXJsIGluc3BlY3RvclVybDsKICNpZm5kZWYgUVRf
Tk9fUFJPUEVSVElFUwotICAgIGluc3BlY3RvclVybCA9IGluc3BlY3Rvci0+cHJvcGVydHkoIl9x
X2luc3BlY3RvclVybCIpLnRvVXJsKCk7CisgICAgICAgIGluc3BlY3RvclVybCA9IGluc3BlY3Rv
ci0+cHJvcGVydHkoIl9xX2luc3BlY3RvclVybCIpLnRvVXJsKCk7CiAjZW5kaWYKLSAgICBpZiAo
IWluc3BlY3RvclVybC5pc1ZhbGlkKCkpCi0gICAgICAgIGluc3BlY3RvclVybCA9IFFVcmwoInFy
Yzovd2Via2l0L2luc3BlY3Rvci9pbnNwZWN0b3IuaHRtbCIpOworICAgICAgICBpZiAoIWluc3Bl
Y3RvclVybC5pc1ZhbGlkKCkpCisgICAgICAgICAgICBpbnNwZWN0b3JVcmwgPSBRVXJsKCJxcmM6
L3dlYmtpdC9pbnNwZWN0b3IvaW5zcGVjdG9yLmh0bWwiKTsKIAogI2lmbmRlZiBRVF9OT19QUk9Q
RVJUSUVTCi0gICAgUVZhcmlhbnQgaW5zcGVjdG9ySmF2YVNjcmlwdFdpbmRvd09iamVjdHMgPSBp
bnNwZWN0b3ItPnByb3BlcnR5KCJfcV9pbnNwZWN0b3JKYXZhU2NyaXB0V2luZG93T2JqZWN0cyIp
OwotICAgIGlmIChpbnNwZWN0b3JKYXZhU2NyaXB0V2luZG93T2JqZWN0cy5pc1ZhbGlkKCkpCi0g
ICAgICAgIGluc3BlY3RvclBhZ2UtPnNldFByb3BlcnR5KCJfcV9pbnNwZWN0b3JKYXZhU2NyaXB0
V2luZG93T2JqZWN0cyIsIGluc3BlY3RvckphdmFTY3JpcHRXaW5kb3dPYmplY3RzKTsKKyAgICAg
ICAgUVZhcmlhbnQgaW5zcGVjdG9ySmF2YVNjcmlwdFdpbmRvd09iamVjdHMgPSBpbnNwZWN0b3It
PnByb3BlcnR5KCJfcV9pbnNwZWN0b3JKYXZhU2NyaXB0V2luZG93T2JqZWN0cyIpOworICAgICAg
ICBpZiAoaW5zcGVjdG9ySmF2YVNjcmlwdFdpbmRvd09iamVjdHMuaXNWYWxpZCgpKQorICAgICAg
ICAgICAgaW5zcGVjdG9yUGFnZS0+c2V0UHJvcGVydHkoIl9xX2luc3BlY3RvckphdmFTY3JpcHRX
aW5kb3dPYmplY3RzIiwgaW5zcGVjdG9ySmF2YVNjcmlwdFdpbmRvd09iamVjdHMpOwogI2VuZGlm
Ci0gICAgaW5zcGVjdG9yVmlldy0+cGFnZSgpLT5tYWluRnJhbWUoKS0+bG9hZChpbnNwZWN0b3JV
cmwpOwotICAgIG1faW5zcGVjdGVkV2ViUGFnZS0+ZC0+aW5zcGVjdG9yRnJvbnRlbmQgPSBpbnNw
ZWN0b3JWaWV3OwotICAgIGluc3BlY3Rvci0+ZC0+c2V0RnJvbnRlbmQoaW5zcGVjdG9yVmlldyk7
CisgICAgICAgIGluc3BlY3RvclZpZXctPnBhZ2UoKS0+bWFpbkZyYW1lKCktPmxvYWQoaW5zcGVj
dG9yVXJsKTsKKyAgICAgICAgbV9pbnNwZWN0ZWRXZWJQYWdlLT5kLT5pbnNwZWN0b3JGcm9udGVu
ZCA9IGluc3BlY3RvclZpZXc7CisgICAgICAgIGluc3BlY3Rvci0+ZC0+c2V0RnJvbnRlbmQoaW5z
cGVjdG9yVmlldyk7CiAKLSAgICBpbnNwZWN0b3JWaWV3LT5wYWdlKCktPmQtPnBhZ2UtPmluc3Bl
Y3RvckNvbnRyb2xsZXIoKS0+c2V0SW5zcGVjdG9yRnJvbnRlbmRDbGllbnQobmV3IEluc3BlY3Rv
ckZyb250ZW5kQ2xpZW50UXQobV9pbnNwZWN0ZWRXZWJQYWdlLCBpbnNwZWN0b3JWaWV3LCB0aGlz
KSk7Ci0gICAgbV9mcm9udGVuZFdlYlBhZ2UgPSBpbnNwZWN0b3JQYWdlOworICAgICAgICBpbnNw
ZWN0b3JWaWV3LT5wYWdlKCktPmQtPnBhZ2UtPmluc3BlY3RvckNvbnRyb2xsZXIoKS0+c2V0SW5z
cGVjdG9yRnJvbnRlbmRDbGllbnQobmV3IEluc3BlY3RvckZyb250ZW5kQ2xpZW50UXQobV9pbnNw
ZWN0ZWRXZWJQYWdlLCBpbnNwZWN0b3JWaWV3LCB0aGlzKSk7CisgICAgICAgIG1fZnJvbnRlbmRX
ZWJQYWdlID0gaW5zcGVjdG9yUGFnZTsKKyAgICB9CiB9CiAKIHZvaWQgSW5zcGVjdG9yQ2xpZW50
UXQ6OnJlbGVhc2VGcm9udGVuZFBhZ2UoKQpAQCAtMTQwLDYgKzE1NCwxOSBAQCB2b2lkIEluc3Bl
Y3RvckNsaWVudFF0OjpyZWxlYXNlRnJvbnRlbmRQYWdlKCkKICAgICBtX2Zyb250ZW5kV2ViUGFn
ZSA9IDA7CiB9CiAKKwordm9pZCBJbnNwZWN0b3JDbGllbnRRdDo6c2V0UmVtb3RlRnJvbnRlbmQo
UmVtb3RlRnJvbnRlbmRDaGFubmVsKiBjaGFubmVsKQoreworI2lmIEVOQUJMRShJTlNQRUNUT1Ip
CisgICAgcURlYnVnKCkgPDwgIkluc3BlY3RvckNsaWVudFF0OjpzZXRSZW1vdGVGcm9udGVuZCI7
CisgICAgbV9pbnNwZWN0ZWRXZWJQYWdlLT5kLT5pbnNwZWN0b3ItPmQtPnNldFJlbW90ZUZyb250
ZW5kKGNoYW5uZWwpOworICAgIG1faW5zcGVjdGVkV2ViUGFnZS0+ZC0+aW5zcGVjdG9yQ29udHJv
bGxlcigpLT5jb25uZWN0RnJvbnRlbmQoKTsKKworICAgIC8vIFhYWCBzb21ld2hlcmUgbmVlZCB0
byBwcm92aWRlIGNhbGwgdG86CisgICAgLy8gbV9pbnNwZWN0ZWRXZWJQYWdlLT5kLT5pbnNwZWN0
b3JDb250cm9sbGVyKCktPmRpc2Nvbm5lY3RGcm9udGVuZCgpOworI2VuZGlmCit9CisKIHZvaWQg
SW5zcGVjdG9yQ2xpZW50UXQ6OmhpZ2hsaWdodChOb2RlKikKIHsKICAgICBub3RJbXBsZW1lbnRl
ZCgpOwpAQCAtMTk2LDYgKzIyMywxMiBAQCB2b2lkIEluc3BlY3RvckNsaWVudFF0OjpzdG9yZVNl
dHRpbmcoY29uc3QgU3RyaW5nJiBrZXksIGNvbnN0IFN0cmluZyYgc2V0dGluZykKIAogYm9vbCBJ
bnNwZWN0b3JDbGllbnRRdDo6c2VuZE1lc3NhZ2VUb0Zyb250ZW5kKGNvbnN0IFN0cmluZyYgbWVz
c2FnZSkKIHsKKyAgICBpZiAobV9yZW1vdGVJbnNwZWN0b3IpIHsKKyAgICAgICAgaWYgKCFtX2lu
c3BlY3RlZFdlYlBhZ2UpCisgICAgICAgICAgICByZXR1cm4gZmFsc2U7CisgICAgICAgIFJlbW90
ZUZyb250ZW5kQ2hhbm5lbCogc2Vzc2lvbiA9IHFvYmplY3RfY2FzdDxSZW1vdGVGcm9udGVuZENo
YW5uZWwqPihtX2luc3BlY3RlZFdlYlBhZ2UtPmQtPmluc3BlY3Rvci0+ZC0+cmVtb3RlRnJvbnRl
bmQpOworICAgICAgICBzZXNzaW9uLT5zZW5kTWVzc2FnZVRvRnJvbnRlbmQobWVzc2FnZSk7Cisg
ICAgfQogICAgIGlmICghbV9mcm9udGVuZFdlYlBhZ2UpCiAgICAgICAgIHJldHVybiBmYWxzZTsK
IApAQCAtMjE4LDYgKzI1MSwxMiBAQCBib29sIEluc3BlY3RvckNsaWVudFF0OjpzZW5kTWVzc2Fn
ZVRvRnJvbnRlbmQoY29uc3QgU3RyaW5nJiBtZXNzYWdlKQogICAgIHJldHVybiB0cnVlOwogfQog
Cit2b2lkIEluc3BlY3RvckNsaWVudFF0OjpkaXNwYXRjaChjb25zdCBTdHJpbmcgJm1lc3NhZ2Up
Cit7CisgICAgSW5zcGVjdG9yQ29udHJvbGxlciogaW5zcGVjdG9yQ29udHJvbGxlciA9IG1faW5z
cGVjdGVkV2ViUGFnZS0+ZC0+cGFnZS0+aW5zcGVjdG9yQ29udHJvbGxlcigpOworICAgIGluc3Bl
Y3RvckNvbnRyb2xsZXItPmluc3BlY3RvckJhY2tlbmREaXNwYXRjaGVyKCktPmRpc3BhdGNoKG1l
c3NhZ2UpOworfQorCiBzdGF0aWMgU3RyaW5nIHZhcmlhbnRUb1NldHRpbmcoY29uc3QgUVZhcmlh
bnQmIHF2YXJpYW50KQogewogICAgIFN0cmluZyByZXRWYWw7CmRpZmYgLS1naXQgYS9XZWJLaXQv
cXQvV2ViQ29yZVN1cHBvcnQvSW5zcGVjdG9yQ2xpZW50UXQuaCBiL1dlYktpdC9xdC9XZWJDb3Jl
U3VwcG9ydC9JbnNwZWN0b3JDbGllbnRRdC5oCmluZGV4IDk1MjZjODguLjQ1NWM5ZGIgMTAwNjQ0
Ci0tLSBhL1dlYktpdC9xdC9XZWJDb3JlU3VwcG9ydC9JbnNwZWN0b3JDbGllbnRRdC5oCisrKyBi
L1dlYktpdC9xdC9XZWJDb3JlU3VwcG9ydC9JbnNwZWN0b3JDbGllbnRRdC5oCkBAIC00Myw2ICs0
Myw3IEBAIGNsYXNzIFFXZWJWaWV3OwogbmFtZXNwYWNlIFdlYkNvcmUgewogY2xhc3MgTm9kZTsK
IGNsYXNzIFBhZ2U7CitjbGFzcyBSZW1vdGVGcm9udGVuZENoYW5uZWw7CiAKIGNsYXNzIEluc3Bl
Y3RvckNsaWVudFF0IDogcHVibGljIEluc3BlY3RvckNsaWVudCB7CiBwdWJsaWM6CkBAIC01OSwx
MiArNjAsMTYgQEAgcHVibGljOgogICAgIHZpcnR1YWwgdm9pZCBzdG9yZVNldHRpbmcoY29uc3Qg
U3RyaW5nJiBrZXksIGNvbnN0IFN0cmluZyYgdmFsdWUpOwogCiAgICAgdmlydHVhbCBib29sIHNl
bmRNZXNzYWdlVG9Gcm9udGVuZChjb25zdCBTdHJpbmcmKTsKKyAgICB2aXJ0dWFsIHZvaWQgZGlz
cGF0Y2goY29uc3QgU3RyaW5nICZtZXNzYWdlKTsKIAogICAgIHZvaWQgcmVsZWFzZUZyb250ZW5k
UGFnZSgpOwogCisgICAgdm9pZCBzZXRSZW1vdGVGcm9udGVuZChSZW1vdGVGcm9udGVuZENoYW5u
ZWwgKmNoYW5uZWwpOworCiBwcml2YXRlOgogICAgIFFXZWJQYWdlKiBtX2luc3BlY3RlZFdlYlBh
Z2U7CiAgICAgUVdlYlBhZ2UqIG1fZnJvbnRlbmRXZWJQYWdlOworICAgIGJvb2wgbV9yZW1vdGVJ
bnNwZWN0b3I7CiB9OwogCiBjbGFzcyBJbnNwZWN0b3JGcm9udGVuZENsaWVudFF0IDogcHVibGlj
IEluc3BlY3RvckZyb250ZW5kQ2xpZW50TG9jYWwgewpAQCAtOTUsNiArMTAwLDcgQEAgcHJpdmF0
ZToKICAgICBib29sIG1fZGVzdHJveWluZ0luc3BlY3RvclZpZXc7CiAgICAgSW5zcGVjdG9yQ2xp
ZW50UXQqIG1faW5zcGVjdG9yQ2xpZW50OwogfTsKKwogfQogCiAjZW5kaWYKZGlmZiAtLWdpdCBh
L1dlYktpdC9xdC9XZWJDb3JlU3VwcG9ydC9XZWJEZWJ1Z1NlcnZlclF0LmNwcCBiL1dlYktpdC9x
dC9XZWJDb3JlU3VwcG9ydC9XZWJEZWJ1Z1NlcnZlclF0LmNwcApuZXcgZmlsZSBtb2RlIDEwMDY0
NAppbmRleCAwMDAwMDAwLi5jNjE2ODkyCi0tLSAvZGV2L251bGwKKysrIGIvV2ViS2l0L3F0L1dl
YkNvcmVTdXBwb3J0L1dlYkRlYnVnU2VydmVyUXQuY3BwCkBAIC0wLDAgKzEsNDIyIEBACisvKgor
ICBDb3B5cmlnaHQgKEMpIDIwMTAgTm9raWEgQ29ycG9yYXRpb24gYW5kL29yIGl0cyBzdWJzaWRp
YXJ5KC1pZXMpCisKKyAgVGhpcyBsaWJyYXJ5IGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVk
aXN0cmlidXRlIGl0IGFuZC9vcgorICBtb2RpZnkgaXQgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBH
TlUgTGlicmFyeSBHZW5lcmFsIFB1YmxpYworICBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieSB0aGUg
RnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uOyBlaXRoZXIKKyAgdmVyc2lvbiAyIG9mIHRoZSBMaWNl
bnNlLCBvciAoYXQgeW91ciBvcHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLgorCisgIFRoaXMgbGli
cmFyeSBpcyBkaXN0cmlidXRlZCBpbiB0aGUgaG9wZSB0aGF0IGl0IHdpbGwgYmUgdXNlZnVsLAor
ICBidXQgV0lUSE9VVCBBTlkgV0FSUkFOVFk7IHdpdGhvdXQgZXZlbiB0aGUgaW1wbGllZCB3YXJy
YW50eSBvZgorICBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBV
UlBPU0UuICBTZWUgdGhlIEdOVQorICBMaWJyYXJ5IEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9y
IG1vcmUgZGV0YWlscy4KKworICBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRo
ZSBHTlUgTGlicmFyeSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlCisgIGFsb25nIHdpdGggdGhpcyBs
aWJyYXJ5OyBzZWUgdGhlIGZpbGUgQ09QWUlORy5MSUIuICBJZiBub3QsIHdyaXRlIHRvCisgIHRo
ZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb24sIEluYy4sIDUxIEZyYW5rbGluIFN0cmVldCwgRmlm
dGggRmxvb3IsCisgIEJvc3RvbiwgTUEgMDIxMTAtMTMwMSwgVVNBLgorKi8KKworCisjaW5jbHVk
ZSAiY29uZmlnLmgiCisjaW5jbHVkZSAiV2ViRGVidWdTZXJ2ZXJRdC5oIgorCisjaW5jbHVkZSAi
SW5zcGVjdG9yQ2xpZW50UXQuaCIKKyNpbmNsdWRlICJNRDUuaCIKKyNpbmNsdWRlIDxRRmlsZT4K
KyNpbmNsdWRlIDxRSHR0cEhlYWRlcj4KKyNpbmNsdWRlIDxRSHR0cFJlcXVlc3RIZWFkZXI+Cisj
aW5jbHVkZSA8UUh0dHBSZXNwb25zZUhlYWRlcj4KKyNpbmNsdWRlIDxRU3RyaW5nPgorI2luY2x1
ZGUgPFFTdHJpbmdMaXN0PgorI2luY2x1ZGUgPFFUY3BTZXJ2ZXI+CisjaW5jbHVkZSA8UVRjcFNv
Y2tldD4KKyNpbmNsdWRlIDxRVXJsPgorI2luY2x1ZGUgPFFXaWRnZXQ+CisjaW5jbHVkZSA8cWVu
ZGlhbi5oPgorCituYW1lc3BhY2UgV2ViQ29yZSB7CisKK3N0YXRpYyBib29sIGRlYnVnID0gZmFs
c2U7CisKK3N0YXRpYyB2b2lkIHNldENoYWxsZW5nZU51bWJlcih1bnNpZ25lZCBjaGFyKiBidWYs
IHVpbnQzMl90IG51bWJlcikKK3sKKyAgICB1bnNpZ25lZCBjaGFyKiBwID0gYnVmICsgMzsKKyAg
ICBmb3IgKGludCBpID0gMDsgaSA8IDQ7IGkrKykgeworICAgICAgICAqcCA9IG51bWJlciAmIDB4
RkY7CisgICAgICAgIC0tcDsKKyAgICAgICAgbnVtYmVyID4+PSA4OworICAgIH0KK30KKworc3Rh
dGljIHZvaWQgZ2VuZXJhdGVFeHBlY3RlZENoYWxsZW5nZVJlc3BvbnNlKHVpbnQzMl90IG51bWJl
cjEsIHVpbnQzMl90IG51bWJlcjIsIHVuc2lnbmVkIGNoYXIga2V5M1s4XSwgdW5zaWduZWQgY2hh
ciBleHBlY3RlZENoYWxsZW5nZVsxNl0pCit7CisgICAgdW5zaWduZWQgY2hhciBjaGFsbGVuZ2Vb
MTZdOworICAgIHNldENoYWxsZW5nZU51bWJlcigmY2hhbGxlbmdlWzBdLCBudW1iZXIxKTsKKyAg
ICBzZXRDaGFsbGVuZ2VOdW1iZXIoJmNoYWxsZW5nZVs0XSwgbnVtYmVyMik7CisgICAgbWVtY3B5
KCZjaGFsbGVuZ2VbOF0sIGtleTMsIDgpOworICAgIE1ENSBtZDU7CisgICAgbWQ1LmFkZEJ5dGVz
KGNoYWxsZW5nZSwgc2l6ZW9mKGNoYWxsZW5nZSkpOworICAgIFZlY3Rvcjx1aW50OF90LCAxNj4g
ZGlnZXN0OworICAgIG1kNS5jaGVja3N1bShkaWdlc3QpOworICAgIG1lbWNweShleHBlY3RlZENo
YWxsZW5nZSwgZGlnZXN0LmRhdGEoKSwgMTYpOworfQorCitzdGF0aWMgcXVpbnQzMiBnZXRDaGFs
bGVuZ2VOdW1iZXJGcm9tRmllbGQoUVN0cmluZyBmaWVsZCkKK3sKKyAgICBRU3RyaW5nIG5TdHJp
bmc7CisgICAgaW50IG5TcGFjZXMgPSAwOworICAgIGZvciAoaW50IGkgPSAwOyBpIDwgZmllbGQu
c2l6ZSgpOyBpKyspIHsKKyAgICAgICAgUUNoYXIgYyA9IGZpZWxkW2ldOworICAgICAgICBpZiAo
YyA9PSAoUUNoYXIpJyAnKSB7CisgICAgICAgICAgICBuU3BhY2VzKys7CisgICAgICAgIH0gZWxz
ZSBpZiAoKGMgPj0gKFFDaGFyKScwJykgJiYgKGMgPD0gKFFDaGFyKSc5JykpIHsKKyAgICAgICAg
ICAgIG5TdHJpbmcuYXBwZW5kKChRQ2hhciljKTsKKyAgICAgICAgfQorICAgIH0KKyAgICBxdWlu
dDMyIG51bSA9IG5TdHJpbmcudG9Mb25nKCk7CisgICAgcXVpbnQzMiByZXN1bHQgPSAoblNwYWNl
cyA/IChudW0gLyBuU3BhY2VzKSA6IG51bSk7CisgICAgcURlYnVnKCkgPDwgImdldENoYWxsZW5n
ZU51bWJlciIgPDwgZmllbGQgPDwgIm5TdHJpbmciIDw8IG5TdHJpbmcgPDwgIm51bSIgPDwgbnVt
IDw8IG5TcGFjZXMgPDwgInJlc3VsdCIgPDwgcmVzdWx0OworICAgIHJldHVybiByZXN1bHQ7Cit9
CisKK3N0YXRpYyBXZWJEZWJ1Z1NlcnZlclF0KiBzU2VydmVyOworCitXZWJEZWJ1Z1NlcnZlclF0
KiBXZWJEZWJ1Z1NlcnZlclF0OjpzZXJ2ZXIoKQoreworICAgIGlmICghc1NlcnZlcikKKyAgICAg
ICAgc1NlcnZlciA9IG5ldyBXZWJEZWJ1Z1NlcnZlclF0KCk7CisKKyAgICByZXR1cm4gc1NlcnZl
cjsKK30KKworV2ViRGVidWdTZXJ2ZXJRdDo6V2ViRGVidWdTZXJ2ZXJRdCgpCisgICAgOiBRT2Jq
ZWN0KCkKKyAgICAsIG1UY3BTZXJ2ZXIoMCkKKyAgICAsIG1QYWdlTnVtYmVyKDEpCit7CisgICAg
cURlYnVnKCkgPDwgIioqKioqKioqIG5ldyBXZWJEZWJ1Z1NlcnZlclF0ICoqKioqKioqIjsKK30K
KworV2ViRGVidWdTZXJ2ZXJRdDo6fldlYkRlYnVnU2VydmVyUXQoKQoreworICAgIHFEZWJ1Zygp
IDw8ICIqKioqKioqKiBkZWxldGUgfldlYkRlYnVnU2VydmVyUXQgKioqKioqKioiOworICAgIGNs
b3NlKCk7Cit9CisKK3ZvaWQgV2ViRGVidWdTZXJ2ZXJRdDo6bGlzdGVuKHF1aW50MTYgcG9ydCkK
K3sKKyAgICBpZiAobVRjcFNlcnZlcikKKyAgICAgICAgcmV0dXJuOworICAgIHFEZWJ1ZygpIDw8
ICIqKioqKioqKiBwb3J0ICIgPDwgcG9ydCA8PCAiICoqKioqKioqIjsKKyAgICBtVGNwU2VydmVy
ID0gbmV3IFFUY3BTZXJ2ZXIoKTsKKyAgICBtVGNwU2VydmVyLT5saXN0ZW4oUUhvc3RBZGRyZXNz
OjpBbnksIHBvcnQpOworICAgIGNvbm5lY3QobVRjcFNlcnZlciwgU0lHTkFMKG5ld0Nvbm5lY3Rp
b24oKSksIFNMT1QoZ290TmV3Q29ubmVjdGlvbigpKSk7Cit9CisKK3ZvaWQgV2ViRGVidWdTZXJ2
ZXJRdDo6Y2xvc2UoKQoreworICAgIGlmIChtVGNwU2VydmVyKSB7CisgICAgICAgIG1UY3BTZXJ2
ZXItPmNsb3NlKCk7CisgICAgICAgIG1UY3BTZXJ2ZXItPnNldFBhcmVudCgwKTsKKyAgICB9Cisg
ICAgbVRjcFNlcnZlciA9IDA7Cit9CisKK0luc3BlY3RvckNsaWVudFF0KiBXZWJEZWJ1Z1NlcnZl
clF0OjppbnNwZWN0b3JDbGllbnQoaW50IHBhZ2VOdW0pCit7CisgICAgUVdlYlBhZ2UqIHBhZ2Ug
PSBtUGFnZXMudmFsdWUocGFnZU51bSk7CisgICAgSW5zcGVjdG9yQ2xpZW50UXQqIGNsaWVudCA9
IG1JbnNwZWN0b3JDbGllbnRzLnZhbHVlKHBhZ2UsIDApOworICAgIHFEZWJ1ZygpIDw8ICJXZWJE
ZWJ1Z1NlcnZlclF0OjppbnNwZWN0b3JDbGllbnQiIDw8IHBhZ2VOdW0gCisgICAgICAgICAgICAg
PDwgKHBhZ2UgPyAiaGFzIHBhZ2UiIDogIm5vIHBhZ2UiKQorICAgICAgICAgICAgIDw8IChjbGll
bnQgPyAiaGFzIGNsaWVudCIgOiAibm8gY2xpZW50Iik7CisgICAgcmV0dXJuIGNsaWVudDsKK30K
Kwordm9pZCBXZWJEZWJ1Z1NlcnZlclF0OjpyZWdpc3RlclBhZ2UoUVdlYlBhZ2UqIHBhZ2UsIElu
c3BlY3RvckNsaWVudFF0KiBjbGllbnQpCit7CisgICAgcURlYnVnKCkgPDwgIldlYkRlYnVnU2Vy
dmVyUXQ6OnJlZ2lzdGVyUGFnZSI7CisgICAgaWYgKCFtUGFnZXMua2V5KHBhZ2UpKQorICAgICAg
ICBtUGFnZXMuaW5zZXJ0KG1QYWdlTnVtYmVyKyssIHBhZ2UpOworICAgIG1JbnNwZWN0b3JDbGll
bnRzLmluc2VydChwYWdlLCBjbGllbnQpOworfQorCit2b2lkIFdlYkRlYnVnU2VydmVyUXQ6OnVu
cmVnaXN0ZXJQYWdlKFFXZWJQYWdlKiBwYWdlKQoreworICAgIGludCBwYWdlTnVtID0gbVBhZ2Vz
LmtleShwYWdlKTsKKyAgICBtUGFnZXMucmVtb3ZlKHBhZ2VOdW0pOworICAgIG1JbnNwZWN0b3JD
bGllbnRzLnJlbW92ZShwYWdlKTsKK30KKwordm9pZCBXZWJEZWJ1Z1NlcnZlclF0Ojpnb3ROZXdD
b25uZWN0aW9uKCkKK3sKKyAgICBRVGNwU29ja2V0KiBtVGNwQ29ubmVjdGlvbiA9IG1UY3BTZXJ2
ZXItPm5leHRQZW5kaW5nQ29ubmVjdGlvbigpOworICAgIEh0dHBSZXF1ZXN0SGFuZGxlciogaGFu
ZGxlciA9CisgICAgICAgIG5ldyBIdHRwUmVxdWVzdEhhbmRsZXIobVRjcENvbm5lY3Rpb24sIHRo
aXMpOworICAgIGhhbmRsZXItPnNldFBhcmVudCh0aGlzKTsKK30KKworSHR0cFJlcXVlc3RIYW5k
bGVyOjpIdHRwUmVxdWVzdEhhbmRsZXIoUVRjcFNvY2tldCogdGNwQ29ubmVjdGlvbiwgV2ViRGVi
dWdTZXJ2ZXJRdCogc2VydmVyKQorICAgIDogUU9iamVjdChzZXJ2ZXIpCisgICAgLCBtVGNwQ29u
bmVjdGlvbih0Y3BDb25uZWN0aW9uKQorICAgICwgbVNlcnZlcihzZXJ2ZXIpCisgICAgLCBtSXNX
ZWJTb2NrZXQoZmFsc2UpCisgICAgLCBtSW5zcGVjdG9yQ2xpZW50KDApCit7CisgICAgbUVuZE9m
SGVhZGVycyA9IGZhbHNlOyAgICAKKyAgICBtQ29udGVudExlbmd0aCA9IDA7CisKKyAgICBjb25u
ZWN0KG1UY3BDb25uZWN0aW9uLCBTSUdOQUwocmVhZHlSZWFkKCkpLCBTTE9UKHRjcFJlYWR5UmVh
ZCgpKSk7CisgICAgY29ubmVjdChtVGNwQ29ubmVjdGlvbiwgU0lHTkFMKGRpc2Nvbm5lY3RlZCgp
KSwgU0xPVCh0Y3BDb25uZWN0aW9uRGlzY29ubmVjdGVkKCkpKTsKK30KKworSHR0cFJlcXVlc3RI
YW5kbGVyOjp+SHR0cFJlcXVlc3RIYW5kbGVyKCkKK3sKK30KKwordm9pZCBIdHRwUmVxdWVzdEhh
bmRsZXI6OnRjcFJlYWR5UmVhZCgpCit7CisgICAgUUh0dHBSZXF1ZXN0SGVhZGVyIGhlYWRlcjsK
KyAgICBpZiAoIW1UY3BDb25uZWN0aW9uKSB7CisgICAgICAgIHFEZWJ1ZygpIDw8ICJIdHRwUmVx
dWVzdEhhbmRsZXI6OnRjcFJlYWR5UmVhZCIgPDwgIm5vIHRjcENvbm5lY3Rpb24iOworICAgICAg
ICByZXR1cm47CisgICAgfQorICAgIGlmICghbUVuZE9mSGVhZGVycykgeworICAgICAgICB3aGls
ZSAobVRjcENvbm5lY3Rpb24tPmJ5dGVzQXZhaWxhYmxlKCkgJiYgIW1FbmRPZkhlYWRlcnMpIHsK
KyAgICAgICAgICAgIGlmICgwKSAKKyAgICAgICAgICAgICAgICBxRGVidWcoKSA8PCAiLTEtIGJ5
dGVzQXZhaWxhYmxlOiIgPDwgbVRjcENvbm5lY3Rpb24tPmJ5dGVzQXZhaWxhYmxlKCk7CisgICAg
ICAgICAgICBRQnl0ZUFycmF5IGxpbmUgPSBtVGNwQ29ubmVjdGlvbi0+cmVhZExpbmUoKTsKKyAg
ICAgICAgICAgIG1EYXRhLmFwcGVuZChsaW5lKTsKKyAgICAgICAgICAgIGlmIChsaW5lID09ICJc
clxuIikKKyAgICAgICAgICAgICAgICBtRW5kT2ZIZWFkZXJzID0gdHJ1ZTsKKyAgICAgICAgfQor
ICAgICAgICBpZiAobUVuZE9mSGVhZGVycykgeworICAgICAgICAgICAgaGVhZGVyID0gUUh0dHBS
ZXF1ZXN0SGVhZGVyKFFTdHJpbmc6OmZyb21MYXRpbjEobURhdGEpKTsKKyAgICAgICAgICAgIGlm
IChoZWFkZXIuaXNWYWxpZCgpKSB7CisKKyAgICAgICAgICAgICAgICBtTWV0aG9kID0gaGVhZGVy
Lm1ldGhvZCgpOworICAgICAgICAgICAgICAgIG1QYXRoID0gaGVhZGVyLnBhdGgoKTsKKyAgICAg
ICAgICAgICAgICBtQ29udGVudFR5cGUgPSBoZWFkZXIuY29udGVudFR5cGUoKS50b0xhdGluMSgp
OworICAgICAgICAgICAgICAgIG1Db250ZW50TGVuZ3RoID0gaGVhZGVyLmNvbnRlbnRMZW5ndGgo
KTsKKyAgICAgICAgICAgICAgICBpZiAoaGVhZGVyLmhhc0tleSgiVXBncmFkZSIpICYmIChoZWFk
ZXIudmFsdWUoIlVwZ3JhZGUiKSA9PSBRTGF0aW4xU3RyaW5nKCJXZWJTb2NrZXQiKSkpCisgICAg
ICAgICAgICAgICAgICAgIG1Jc1dlYlNvY2tldCA9IHRydWU7CisKKyAgICAgICAgICAgICAgICBt
RGF0YS5jbGVhcigpOworICAgICAgICAgICAgfSBlbHNlIHsKKyAgICAgICAgICAgICAgICBxRGVi
dWcoKSA8PCAiQ291bGQgbm90IHBhcnNlIEhUVFAgaGVhZGVyOiIgPDwgbURhdGE7CisgICAgICAg
ICAgICB9CisgICAgICAgIH0KKyAgICB9CisgICAgaWYgKGZhbHNlKQorICAgICAgICBxRGVidWco
KSA8PCAidGNwUmVhZHlSZWFkIiAKKyAgICAgICAgICAgICAgICAgPDwgIm1NZXRob2QiIDw8IG1N
ZXRob2QKKyAgICAgICAgICAgICAgICAgPDwgIm1QYXRoIiA8PCBtUGF0aAorICAgICAgICAgICAg
ICAgICA8PCAibUlzV2ViU29ja2V0IiA8PCBtSXNXZWJTb2NrZXQKKyAgICAgICAgICAgICAgICAg
PDwgIm1Db250ZW50VHlwZSIgPDwgbUNvbnRlbnRUeXBlCisgICAgICAgICAgICAgICAgIDw8ICJt
Q29udGVudExlbmd0aCIgPDwgbUNvbnRlbnRMZW5ndGgKKyAgICAgICAgICAgICAgICAgPDwgImJ5
dGVzQXZhaWxhYmxlIiA8PCBtVGNwQ29ubmVjdGlvbi0+Ynl0ZXNBdmFpbGFibGUoKTsKKyAgICAg
ICAgICAKKworICAgIGlmIChtRW5kT2ZIZWFkZXJzKSB7CisKKyAgICAgICAgUVN0cmluZ0xpc3Qg
cGF0aEFuZFF1ZXJ5ID0gbVBhdGguc3BsaXQoIj8iKTsKKyAgICAgICAgaWYgKGRlYnVnKQorICAg
ICAgICAgICAgcURlYnVnKCkgPDwgInBhdGhBbmRRdWVyeSIgPDwgcGF0aEFuZFF1ZXJ5OworICAg
ICAgICBRU3RyaW5nTGlzdCB3b3JkcyA9IHBhdGhBbmRRdWVyeVswXS5zcGxpdChRU3RyaW5nOjpm
cm9tTGF0aW4xKCIvIikpOworICAgICAgICBxRGVidWcoKSA8PCAid29yZHMiIDw8IHdvcmRzOwor
ICAgICAgICBpZiAoMCkgeworICAgICAgICAgICAgUVN0cmluZ0xpc3QgcXVlcnlXb3JkczsKKyAg
ICAgICAgICAgIGlmIChwYXRoQW5kUXVlcnkuc2l6ZSgpID4gMSkgCisgICAgICAgICAgICAgICAg
cXVlcnlXb3JkcyA9IHBhdGhBbmRRdWVyeVsxXS5zcGxpdChRU3RyaW5nOjpmcm9tTGF0aW4xKCI9
IikpOworICAgICAgICB9CisKKyAgICAgICAgaWYgKG1Jc1dlYlNvY2tldCkgeworICAgICAgICAg
ICAgLy8gc3dpdGNoIHRvIHdlYnNvY2tldC1zdHlsZSBXZWJTb2NrZXRTZXJ2aWNlIG1lc3NhZ2lu
ZworICAgICAgICAgICAgaWYgKG1UY3BDb25uZWN0aW9uKSB7CisgICAgICAgICAgICAgICAgbVRj
cENvbm5lY3Rpb24tPmRpc2Nvbm5lY3QoU0lHTkFMKHJlYWR5UmVhZCgpKSk7CisgICAgICAgICAg
ICAgICAgY29ubmVjdChtVGNwQ29ubmVjdGlvbiwgU0lHTkFMKHJlYWR5UmVhZCgpKSwgU0xPVCh3
ZWJTb2NrZXRSZWFkeVJlYWQoKSkpOworCisgICAgICAgICAgICAgICAgUUJ5dGVBcnJheSBrZXkz
ID0gbVRjcENvbm5lY3Rpb24tPnJlYWQoOCk7CisgICAgICAgICAgICAgICAgcURlYnVnKCkgPDwg
ZW5kbDsKKyAgICAgICAgICAgICAgICBxRGVidWcoKSA8PCBoZWFkZXIudG9TdHJpbmcoKTsKKyAg
ICAgICAgICAgICAgICBxRGVidWcoKSA8PCAia2V5MyIgPDwga2V5My50b0hleCgpOworICAgICAg
ICAgICAgICAgIHFEZWJ1ZygpIDw8IGVuZGw7CisKKyAgICAgICAgICAgICAgICBxdWludDMyIG51
bWJlcjEgPSBnZXRDaGFsbGVuZ2VOdW1iZXJGcm9tRmllbGQoaGVhZGVyLnZhbHVlKCJTZWMtV2Vi
U29ja2V0LUtleTEiKSk7CisgICAgICAgICAgICAgICAgcXVpbnQzMiBudW1iZXIyID0gZ2V0Q2hh
bGxlbmdlTnVtYmVyRnJvbUZpZWxkKGhlYWRlci52YWx1ZSgiU2VjLVdlYlNvY2tldC1LZXkyIikp
OworICAgICAgICAgICAgICAgIAorICAgICAgICAgICAgICAgIGNoYXIgcmVzcG9uc2VEYXRhWzE2
XTsKKyAgICAgICAgICAgICAgICBnZW5lcmF0ZUV4cGVjdGVkQ2hhbGxlbmdlUmVzcG9uc2UobnVt
YmVyMSwgbnVtYmVyMiwgKHVuc2lnbmVkIGNoYXIqKWtleTMuZGF0YSgpLCAodW5zaWduZWQgY2hh
ciopcmVzcG9uc2VEYXRhKTsKKyAgICAgICAgICAgICAgICBRQnl0ZUFycmF5IHJlc3BvbnNlKHJl
c3BvbnNlRGF0YSwgc2l6ZW9mKHJlc3BvbnNlRGF0YSkpOworICAgICAgICAgICAgICAgIHFEZWJ1
ZygpIDw8ICJjaGFsbGVuZ2UgcmVzcG9uc2UiIDw8IHJlc3BvbnNlLnRvSGV4KCk7CisKKyAgICAg
ICAgICAgICAgICBRSHR0cFJlc3BvbnNlSGVhZGVyIHJlc3BvbnNlSGVhZGVyKDEwMSwgIldlYlNv
Y2tldCBQcm90b2NvbCBIYW5kc2hha2UiLCAxLCAxKTsKKyAgICAgICAgICAgICAgICByZXNwb25z
ZUhlYWRlci5zZXRWYWx1ZSgiVXBncmFkZSIsIGhlYWRlci52YWx1ZSgiVXBncmFkZSIpKTsKKyAg
ICAgICAgICAgICAgICByZXNwb25zZUhlYWRlci5zZXRWYWx1ZSgiQ29ubmVjdGlvbiIsIGhlYWRl
ci52YWx1ZSgiQ29ubmVjdGlvbiIpKTsKKyAgICAgICAgICAgICAgICByZXNwb25zZUhlYWRlci5z
ZXRWYWx1ZSgiU2VjLVdlYlNvY2tldC1PcmlnaW4iLCBoZWFkZXIudmFsdWUoIk9yaWdpbiIpKTsK
KyAgICAgICAgICAgICAgICByZXNwb25zZUhlYWRlci5zZXRWYWx1ZSgiU2VjLVdlYlNvY2tldC1M
b2NhdGlvbiIsICgid3M6Ly8iICsgaGVhZGVyLnZhbHVlKCJIb3N0IikgKyBtUGF0aCkpOworICAg
ICAgICAgICAgICAgIHJlc3BvbnNlSGVhZGVyLnNldENvbnRlbnRMZW5ndGgocmVzcG9uc2Uuc2l6
ZSgpKTsKKyAgICAgICAgICAgICAgICBtVGNwQ29ubmVjdGlvbi0+d3JpdGUocmVzcG9uc2VIZWFk
ZXIudG9TdHJpbmcoKS50b0xhdGluMSgpKTsKKyAgICAgICAgICAgICAgICBtVGNwQ29ubmVjdGlv
bi0+d3JpdGUocmVzcG9uc2UpOworICAgICAgICAgICAgICAgIG1UY3BDb25uZWN0aW9uLT5mbHVz
aCgpOworCisgICAgICAgICAgICAgICAgaWYgKCh3b3Jkcy5zaXplKCkgPT0gNCkKKyAgICAgICAg
ICAgICAgICAgICAgJiYgKHdvcmRzWzFdID09IFFTdHJpbmc6OmZyb21MYXRpbjEoImRldnRvb2xz
IikpCisgICAgICAgICAgICAgICAgICAgICYmICh3b3Jkc1syXSA9PSBRU3RyaW5nOjpmcm9tTGF0
aW4xKCJwYWdlIikpKSB7CisgICAgICAgICAgICAgICAgICAgIGludCBwYWdlTnVtID0gd29yZHNb
M10udG9JbnQoKTsKKyAgICAgICAgICAgICAgICAgICAgcURlYnVnKCkgPDwgInBhZ2VOdW0iIDw8
IHBhZ2VOdW07CisgICAgICAgICAgICAgICAgICAgIG1JbnNwZWN0b3JDbGllbnQgPSBtU2VydmVy
LT5pbnNwZWN0b3JDbGllbnQocGFnZU51bSk7CisgICAgICAgICAgICAgICAgICAgIGlmIChtSW5z
cGVjdG9yQ2xpZW50KQorICAgICAgICAgICAgICAgICAgICAgICAgbUluc3BlY3RvckNsaWVudC0+
c2V0UmVtb3RlRnJvbnRlbmQobmV3IFJlbW90ZUZyb250ZW5kQ2hhbm5lbCh0aGlzKSk7CisgICAg
ICAgICAgICAgICAgfQorICAgICAgICAgICAgICAgIHFEZWJ1ZygpIDw8IHJlc3BvbnNlSGVhZGVy
LnRvU3RyaW5nKCk7CisgICAgICAgICAgICB9IGVsc2UgeworICAgICAgICAgICAgICAgIHFEZWJ1
ZygpIDw8IF9fRlVOQ1RJT05fXyA8PCBfX0ZJTEVfXyA8PCBfX0xJTkVfXyA8PCAibVRjcENvbm5l
Y3Rpb24gbnVsbCAoZGlzY29ubmVjdGVkPykiOworICAgICAgICAgICAgfQorCisgICAgICAgICAg
ICByZXR1cm47CisgICAgICAgIH0KKyAgICAgICAgaWYgKG1Db250ZW50TGVuZ3RoICYmIChtVGNw
Q29ubmVjdGlvbi0+Ynl0ZXNBdmFpbGFibGUoKSA8IG1Db250ZW50TGVuZ3RoKSkgeworICAgICAg
ICAgICAgcURlYnVnKCkgPDwgInNob3J0IGNvbnRlbnQsIHdhaXRpbmcgZm9yIG1vcmUgZGF0YSAu
Li4iCisgICAgICAgICAgICAgICAgICAgICA8PCAibU1ldGhvZCIgPDwgbU1ldGhvZAorICAgICAg
ICAgICAgICAgICAgICAgPDwgIm1QYXRoIiA8PCBtUGF0aAorICAgICAgICAgICAgICAgICAgICAg
PDwgIm1Db250ZW50VHlwZSIgPDwgbUNvbnRlbnRUeXBlCisgICAgICAgICAgICAgICAgICAgICA8
PCAibUNvbnRlbnRMZW5ndGgiIDw8IG1Db250ZW50TGVuZ3RoCisgICAgICAgICAgICAgICAgICAg
ICA8PCAiYnl0ZXNBdmFpbGFibGUiIDw8IG1UY3BDb25uZWN0aW9uLT5ieXRlc0F2YWlsYWJsZSgp
OworICAgICAgICAgICAgcmV0dXJuOworICAgICAgICB9CisKKyAgICAgICAgUUJ5dGVBcnJheSBj
b250ZW50ID0gbVRjcENvbm5lY3Rpb24tPnJlYWQobUNvbnRlbnRMZW5ndGgpOworICAgICAgICBt
RW5kT2ZIZWFkZXJzID0gZmFsc2U7CisKKyAgICAgICAgUVN0cmluZyBjbWR0eXBlID0gd29yZHNb
MV07CisgICAgICAgIGlmIChkZWJ1ZykgeworICAgICAgICAgICAgcURlYnVnKCkgPDwgImNtZHR5
cGUiIDw8IHdvcmRzWzBdIDw8IGNtZHR5cGU7CisgICAgICAgICAgICBxRGVidWcoKSA8PCBoZWFk
ZXIudG9TdHJpbmcoKTsKKyAgICAgICAgfQorCisgICAgICAgIFFTdHJpbmdMaXN0IHBhdGh3b3Jk
cyA9IHdvcmRzLm1pZCgxKTsKKyAgICAgICAgUVN0cmluZyBwYXRoID0gUUxhdGluMVN0cmluZygi
Oi8iKTsKKyAgICAgICAgcGF0aC5hcHBlbmQocGF0aHdvcmRzLmpvaW4oUVN0cmluZzo6ZnJvbUxh
dGluMSgiLyIpKSk7CisgICAgICAgIFFGaWxlIGZpbGUocGF0aCk7CisgICAgICAgIGludCByYyA9
IGZpbGUub3BlbihRSU9EZXZpY2U6OlJlYWRPbmx5KTsKKyAgICAgICAgUUJ5dGVBcnJheSByZXNw
b25zZTsKKyAgICAgICAgaWYgKHJjKSAKKyAgICAgICAgICAgIHJlc3BvbnNlID0gZmlsZS5yZWFk
QWxsKCk7CisKKyAgICAgICAgY29tcGxldGVSZXF1ZXN0KGZpbGUuZXhpc3RzKCkgPyAyMDAgOiA0
MDQsIHJlc3BvbnNlKTsKKyAgICAgICAgcmV0dXJuOworICAgIH0KK30KKwordm9pZCBIdHRwUmVx
dWVzdEhhbmRsZXI6OmNvbXBsZXRlUmVxdWVzdChpbnQgY29kZSwgUUJ5dGVBcnJheSByZXNwb25z
ZSkKK3sKKworICAgIGlmIChkZWJ1ZykKKyAgICAgICAgcURlYnVnKCkgPDwgIkh0dHBSZXF1ZXN0
SGFuZGxlcjo6Y29tcGxldGVSZXF1ZXN0IiAKKyAgICAgICAgICAgICAgICAgPDwgY29kZSAKKyAg
ICAgICAgICAgICAgICAgPDwgKG1UY3BDb25uZWN0aW9uID8gImNvbm5lY3RlZCIgOiAiZGlzY29u
bmVjdGVkIikgCisgICAgICAgICAgICAgICAgIDw8IChtSXNXZWJTb2NrZXQgPyAiV2ViU29ja2V0
IiA6ICIiKTsKKyAgICBpZiAoIW1Jc1dlYlNvY2tldCkgeworICAgICAgICBRU3RyaW5nIHRleHQg
PSAgKGNvZGUgPT0gMjAwKSA/IFFTdHJpbmc6OmZyb21MYXRpbjEoIk9LIikgOiBRU3RyaW5nOjpm
cm9tTGF0aW4xKCJOb3QgT0siKTsKKyAgICAgICAgUUh0dHBSZXNwb25zZUhlYWRlciByZXNwb25z
ZUhlYWRlcihjb2RlLCB0ZXh0LCAxLCAwKTsKKyAgICAgICAgcmVzcG9uc2VIZWFkZXIuc2V0VmFs
dWVzKG1SZXNwb25zZUhlYWRlcnMpOworICAgICAgICByZXNwb25zZUhlYWRlci5zZXRDb250ZW50
TGVuZ3RoKHJlc3BvbnNlLnNpemUoKSk7CisgICAgICAgIGlmICghbUNvbnRlbnRUeXBlLmlzRW1w
dHkoKSkKKyAgICAgICAgICAgIHJlc3BvbnNlSGVhZGVyLnNldENvbnRlbnRUeXBlKFFTdHJpbmc6
OmZyb21MYXRpbjEobUNvbnRlbnRUeXBlKSk7CisKKyAgICAgICAgUUJ5dGVBcnJheSBhc2NpaUhl
YWRlciA9IHJlc3BvbnNlSGVhZGVyLnRvU3RyaW5nKCkudG9Bc2NpaSgpOworICAgICAgICBtVGNw
Q29ubmVjdGlvbi0+d3JpdGUoYXNjaWlIZWFkZXIpOworICAgIH0KKworICAgIGlmIChtSXNXZWJT
b2NrZXQpCisgICAgICAgIG1UY3BDb25uZWN0aW9uLT5wdXRDaGFyKDB4MDApOworICAgIG1UY3BD
b25uZWN0aW9uLT53cml0ZShyZXNwb25zZSk7CisgICAgaWYgKG1Jc1dlYlNvY2tldCkKKyAgICAg
ICAgbVRjcENvbm5lY3Rpb24tPnB1dENoYXIoMHhGRik7CisgICAgbVRjcENvbm5lY3Rpb24tPmZs
dXNoKCk7CisgICAgaWYgKCFtSXNXZWJTb2NrZXQpCisgICAgICAgIG1UY3BDb25uZWN0aW9uLT5j
bG9zZSgpOworCit9CisKK3ZvaWQgSHR0cFJlcXVlc3RIYW5kbGVyOjp0Y3BDb25uZWN0aW9uRGlz
Y29ubmVjdGVkKCkKK3sKKyAgICBpZiAobVRjcENvbm5lY3Rpb24gJiYgbVRjcENvbm5lY3Rpb24t
PmJ5dGVzQXZhaWxhYmxlKCkpIHsKKyAgICAgICAgUUJ5dGVBcnJheSBjb250ZW50ID0gbVRjcENv
bm5lY3Rpb24tPnJlYWQobVRjcENvbm5lY3Rpb24tPmJ5dGVzQXZhaWxhYmxlKCkpOworICAgICAg
ICBxRGVidWcoKSA8PCAiSHR0cFJlcXVlc3RIYW5kbGVyOjp0Y3BDb25uZWN0aW9uRGlzY29ubmVj
dGVkIiA8PCAidHJhaWxpbmcgY29udGVudCIgPDwgY29udGVudDsKKyAgICB9CisgICAgbVRjcENv
bm5lY3Rpb24gPSAwOworfQorCitpbnQgSHR0cFJlcXVlc3RIYW5kbGVyOjp3ZWJTb2NrZXRTZW5k
KFFCeXRlQXJyYXkgcGF5bG9hZCkKK3sKKyAgICBtVGNwQ29ubmVjdGlvbi0+cHV0Q2hhcigweDAw
KTsKKyAgICBpbnQgbkJ5dGVzID0gbVRjcENvbm5lY3Rpb24tPndyaXRlKHBheWxvYWQpOworICAg
IG1UY3BDb25uZWN0aW9uLT5wdXRDaGFyKDB4RkYpOworICAgIG1UY3BDb25uZWN0aW9uLT5mbHVz
aCgpOworICAgIHJldHVybiBuQnl0ZXM7Cit9CisKK2ludCBIdHRwUmVxdWVzdEhhbmRsZXI6Ondl
YlNvY2tldFNlbmQoY29uc3QgY2hhciogZGF0YSwgc2l6ZV90IGxlbikKK3sKKyAgICBtVGNwQ29u
bmVjdGlvbi0+cHV0Q2hhcigweDAwKTsKKyAgICBpbnQgbkJ5dGVzID0gbVRjcENvbm5lY3Rpb24t
PndyaXRlKGRhdGEsIGxlbik7CisgICAgbVRjcENvbm5lY3Rpb24tPnB1dENoYXIoMHhGRik7Cisg
ICAgbVRjcENvbm5lY3Rpb24tPmZsdXNoKCk7CisgICAgcmV0dXJuIG5CeXRlczsKK30KKwordm9p
ZCBIdHRwUmVxdWVzdEhhbmRsZXI6OndlYlNvY2tldFJlYWR5UmVhZCgpCit7CisgICAgaWYgKCFt
VGNwQ29ubmVjdGlvbi0+Ynl0ZXNBdmFpbGFibGUoKSkKKyAgICAgICAgcmV0dXJuOworICAgIFFC
eXRlQXJyYXkgY29udGVudCA9IG1UY3BDb25uZWN0aW9uLT5yZWFkKG1UY3BDb25uZWN0aW9uLT5i
eXRlc0F2YWlsYWJsZSgpKTsKKyAgICBtRGF0YS5hcHBlbmQoY29udGVudCk7CisgICAgaWYgKDAp
IHsKKyAgICAgICAgcURlYnVnKCkgPDwgIndlYlNvY2tldFJlYWR5UmVhZCIgPDwgImNvbnRlbnQu
c2l6ZSgpIiA8PCBjb250ZW50LnNpemUoKSAKKyAgICAgICAgICAgICAgICAgPDwgIm1EYXRhLnNp
emUoKSIgPDwgbURhdGEuc2l6ZSgpOworICAgICAgICBxRGVidWcoKSA8PCBtRGF0YTsKKyAgICAg
ICAgcURlYnVnKCkgPDwgZW5kbDsKKyAgICB9CisgICAgd2hpbGUgKG1EYXRhLnNpemUoKSA+IDAp
IHsKKworICAgICAgICBpZiAobURhdGFbMF0pIHsKKyAgICAgICAgICAgIHFDcml0aWNhbCgpIDw8
ICAid2ViU29ja2V0UmVhZHlSZWFkOiB1bmtub3duIGZyYW1lIHR5cGUiIDw8IG1EYXRhWzBdOwor
ICAgICAgICAgICAgbURhdGEuY2xlYXIoKTsKKyAgICAgICAgICAgIG1UY3BDb25uZWN0aW9uLT5j
bG9zZSgpOworICAgICAgICAgICAgcmV0dXJuOworICAgICAgICB9CisgICAgICAgIGludCBwb3Mg
PSBtRGF0YS5pbmRleE9mKDB4ZmYsIDEpOworICAgICAgICBpZiAocG9zIDwgMCkKKyAgICAgICAg
ICAgIHJldHVybjsKKworICAgICAgICBzaXplX3QgbGVuID0gcG9zIC0gMTsKKworICAgICAgICBR
Qnl0ZUFycmF5IHBheWxvYWQgPSBtRGF0YS5taWQoMSwgbGVuKTsKKworICAgICAgICBpZiAobUlu
c3BlY3RvckNsaWVudCkKKyAgICAgICAgICAgIG1JbnNwZWN0b3JDbGllbnQtPmRpc3BhdGNoKFFT
dHJpbmc6OmZyb21VdGY4KHBheWxvYWQpKTsKKworICAgICAgICBtRGF0YSA9IG1EYXRhLm1pZChs
ZW4rMik7CisgICAgfQorCit9CisKK1JlbW90ZUZyb250ZW5kQ2hhbm5lbDo6UmVtb3RlRnJvbnRl
bmRDaGFubmVsKEh0dHBSZXF1ZXN0SGFuZGxlciogcmVxdWVzdEhhbmRsZXIpCisgICAgOiBRT2Jq
ZWN0KHJlcXVlc3RIYW5kbGVyKQorICAgICwgbV9yZXF1ZXN0SGFuZGxlcihyZXF1ZXN0SGFuZGxl
cikKK3sKK30KKworYm9vbCBSZW1vdGVGcm9udGVuZENoYW5uZWw6OnNlbmRNZXNzYWdlVG9Gcm9u
dGVuZChjb25zdCBTdHJpbmcgJm1lc3NhZ2UpCit7CisgICAgaWYgKGRlYnVnKQorICAgICAgICBx
RGVidWcoKSA8PCAiUmVtb3RlRnJvbnRlbmRDaGFubmVsOjpzZW5kTWVzc2FnZVRvRnJvbnRlbmQi
IDw8IG1lc3NhZ2U7CisgICAgaWYgKCFtX3JlcXVlc3RIYW5kbGVyKQorICAgICAgICByZXR1cm4g
ZmFsc2U7CisgICAgQ1N0cmluZyBjc3RyID0gbWVzc2FnZS51dGY4KCk7CisgICAgcmV0dXJuIG1f
cmVxdWVzdEhhbmRsZXItPndlYlNvY2tldFNlbmQoY3N0ci5kYXRhKCksIGNzdHIubGVuZ3RoKCkp
OworfQorCit9CmRpZmYgLS1naXQgYS9XZWJLaXQvcXQvV2ViQ29yZVN1cHBvcnQvV2ViRGVidWdT
ZXJ2ZXJRdC5oIGIvV2ViS2l0L3F0L1dlYkNvcmVTdXBwb3J0L1dlYkRlYnVnU2VydmVyUXQuaApu
ZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5jMWNlYmQ3Ci0tLSAvZGV2L251bGwK
KysrIGIvV2ViS2l0L3F0L1dlYkNvcmVTdXBwb3J0L1dlYkRlYnVnU2VydmVyUXQuaApAQCAtMCww
ICsxLDExNCBAQAorLyoKKyAgICBDb3B5cmlnaHQgKEMpIDIwMTAgTm9raWEgQ29ycG9yYXRpb24g
YW5kL29yIGl0cyBzdWJzaWRpYXJ5KC1pZXMpCisKKyAgICBUaGlzIGxpYnJhcnkgaXMgZnJlZSBz
b2Z0d2FyZTsgeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29yCisgICAgbW9kaWZ5IGl0IHVu
ZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05VIExpYnJhcnkgR2VuZXJhbCBQdWJsaWMKKyAgICBMaWNl
bnNlIGFzIHB1Ymxpc2hlZCBieSB0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uOyBlaXRoZXIK
KyAgICB2ZXJzaW9uIDIgb2YgdGhlIExpY2Vuc2UsIG9yIChhdCB5b3VyIG9wdGlvbikgYW55IGxh
dGVyIHZlcnNpb24uCisKKyAgICBUaGlzIGxpYnJhcnkgaXMgZGlzdHJpYnV0ZWQgaW4gdGhlIGhv
cGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCwKKyAgICBidXQgV0lUSE9VVCBBTlkgV0FSUkFOVFk7
IHdpdGhvdXQgZXZlbiB0aGUgaW1wbGllZCB3YXJyYW50eSBvZgorICAgIE1FUkNIQU5UQUJJTElU
WSBvciBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRS4gIFNlZSB0aGUgR05VCisgICAg
TGlicmFyeSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGZvciBtb3JlIGRldGFpbHMuCisKKyAgICBZ
b3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgTGlicmFyeSBHZW5lcmFs
IFB1YmxpYyBMaWNlbnNlCisgICAgYWxvbmcgd2l0aCB0aGlzIGxpYnJhcnk7IHNlZSB0aGUgZmls
ZSBDT1BZSU5HLkxJQi4gIElmIG5vdCwgd3JpdGUgdG8KKyAgICB0aGUgRnJlZSBTb2Z0d2FyZSBG
b3VuZGF0aW9uLCBJbmMuLCA1MSBGcmFua2xpbiBTdHJlZXQsIEZpZnRoIEZsb29yLAorICAgIEJv
c3RvbiwgTUEgMDIxMTAtMTMwMSwgVVNBLgorKi8KKworI2lmbmRlZiBXZWJEZWJ1Z1NlcnZlclF0
X2gKKyNkZWZpbmUgV2ViRGVidWdTZXJ2ZXJRdF9oCisKKyNpbmNsdWRlICJJbnNwZWN0b3JDbGll
bnRRdC5oIgorCitjbGFzcyBRVGNwU2VydmVyOworY2xhc3MgUVRjcFNvY2tldDsKKyNpbmNsdWRl
IDxRTGlzdD4KKyNpbmNsdWRlIDxRTWFwPgorI2luY2x1ZGUgPFFPYmplY3Q+CisjaW5jbHVkZSA8
UVBhaXI+CisjaW5jbHVkZSA8UVN0cmluZz4KKworbmFtZXNwYWNlIFdlYkNvcmUgeworY2xhc3Mg
SHR0cFJlcXVlc3RIYW5kbGVyOworY2xhc3MgSW5zcGVjdG9yQ2xpZW50UXQ7CisKK2NsYXNzIFdl
YkRlYnVnU2VydmVyUXQgOiBwdWJsaWMgUU9iamVjdCB7CisgICAgUV9PQkpFQ1QKKyAgICAgICAg
cHVibGljOgorCisgICAgc3RhdGljIFdlYkRlYnVnU2VydmVyUXQqIHNlcnZlcigpOworCisgICAg
dm9pZCBsaXN0ZW4ocXVpbnQxNiBwb3J0KTsKKworICAgIHZvaWQgcmVnaXN0ZXJQYWdlKFFXZWJQ
YWdlICpwYWdlLCBJbnNwZWN0b3JDbGllbnRRdCogY2xpZW50KTsKKyAgICB2b2lkIHVucmVnaXN0
ZXJQYWdlKFFXZWJQYWdlICpwYWdlKTsKKworICAgIHZvaWQgY2xvc2UoKTsKKyAgICBJbnNwZWN0
b3JDbGllbnRRdCogaW5zcGVjdG9yQ2xpZW50KGludCBwYWdlTnVtKTsKKworcHJvdGVjdGVkOgor
ICAgIFdlYkRlYnVnU2VydmVyUXQoKTsKKyAgICB2aXJ0dWFsIH5XZWJEZWJ1Z1NlcnZlclF0KCk7
CisKK3ByaXZhdGU6CisgICAgUVRjcFNlcnZlciogbVRjcFNlcnZlcjsKKyAgICBRTWFwPGludCwg
UVdlYlBhZ2UqPiBtUGFnZXM7CisgICAgUU1hcDxRV2ViUGFnZSosIEluc3BlY3RvckNsaWVudFF0
Kj4gbUluc3BlY3RvckNsaWVudHM7CisgICAgaW50IG1QYWdlTnVtYmVyOworCisgICAgcHJpdmF0
ZSBzbG90czoKKyAgICB2b2lkIGdvdE5ld0Nvbm5lY3Rpb24oKTsKKworfTsKKworY2xhc3MgUmVt
b3RlRnJvbnRlbmRDaGFubmVsIDogcHVibGljIFFPYmplY3QgeworICAgIFFfT0JKRUNUCisgICAg
ICAgIHB1YmxpYzoKKworICAgIFJlbW90ZUZyb250ZW5kQ2hhbm5lbChIdHRwUmVxdWVzdEhhbmRs
ZXIqIHJlcXVlc3RIYW5kbGVyKTsKKyAgICBib29sIHNlbmRNZXNzYWdlVG9Gcm9udGVuZChjb25z
dCBTdHJpbmcmIG1lc3NhZ2UpOworCitwcml2YXRlOgorICAgIEh0dHBSZXF1ZXN0SGFuZGxlciog
bV9yZXF1ZXN0SGFuZGxlcjsKK307CisKK2NsYXNzIEh0dHBSZXF1ZXN0SGFuZGxlciA6IHB1Ymxp
YyBRT2JqZWN0IHsKKyAgICBRX09CSkVDVAorCisgICAgICAgIHB1YmxpYzoKKworICAgIEh0dHBS
ZXF1ZXN0SGFuZGxlcihRVGNwU29ja2V0ICp0Y3BDb25uZWN0aW9uLCBXZWJEZWJ1Z1NlcnZlclF0
ICpzZXJ2ZXIpOworICAgIHZpcnR1YWwgfkh0dHBSZXF1ZXN0SGFuZGxlcigpOworICAgIHZpcnR1
YWwgdm9pZCBjb21wbGV0ZVJlcXVlc3QoaW50IGNvZGUsIFFCeXRlQXJyYXkgcmVzcG9uc2UpOwor
ICAgIHZpcnR1YWwgaW50IHdlYlNvY2tldFNlbmQoUUJ5dGVBcnJheSBwYXlsb2FkKTsKKyAgICB2
aXJ0dWFsIGludCB3ZWJTb2NrZXRTZW5kKGNvbnN0IGNoYXIgKnBheWxvYWQsIHNpemVfdCBsZW4p
OworCitwcml2YXRlOgorICAgIFFUY3BTb2NrZXQqIG1UY3BDb25uZWN0aW9uOworICAgIFdlYkRl
YnVnU2VydmVyUXQqIG1TZXJ2ZXI7CisKKyAgICBRU3RyaW5nIG1NZXRob2Q7CisgICAgUVN0cmlu
ZyBtUGF0aDsKKyAgICBRQnl0ZUFycmF5IG1Db250ZW50VHlwZTsKKyAgICBpbnQgbUNvbnRlbnRM
ZW5ndGg7CisgICAgYm9vbCBtRW5kT2ZIZWFkZXJzOworICAgIFFCeXRlQXJyYXkgbURhdGE7Cisg
ICAgUUxpc3Q8UVBhaXI8UVN0cmluZywgUVN0cmluZz4gPiBtUmVzcG9uc2VIZWFkZXJzOworICAg
IGJvb2wgbUlzV2ViU29ja2V0OworICAgIEluc3BlY3RvckNsaWVudFF0KiBtSW5zcGVjdG9yQ2xp
ZW50OworCisgICAgdm9pZCBoYW5kbGVJbnNwZWN0b3JSZXF1ZXN0KFFTdHJpbmdMaXN0IHdvcmRz
KTsKKyAgICB2b2lkIGhhbmRsZUZyb21Gcm9udGVuZFJlcXVlc3QoKTsKKyAgICB2b2lkIGhhbmRs
ZVJlc291cmNlUmVxdWVzdChRU3RyaW5nTGlzdCB3b3Jkcyk7CisKKyAgICBwcml2YXRlIHNsb3Rz
OgorICAgIHZvaWQgdGNwUmVhZHlSZWFkKCk7CisgICAgdm9pZCB0Y3BDb25uZWN0aW9uRGlzY29u
bmVjdGVkKCk7CisgICAgdm9pZCB3ZWJTb2NrZXRSZWFkeVJlYWQoKTsKKworfTsKKworfQorI2Vu
ZGlmCmRpZmYgLS1naXQgYS9XZWJLaXRUb29scy9DaGFuZ2VMb2cgYi9XZWJLaXRUb29scy9DaGFu
Z2VMb2cKaW5kZXggZWNiYjQ4Zi4uZDRhYzFhMyAxMDA2NDQKLS0tIGEvV2ViS2l0VG9vbHMvQ2hh
bmdlTG9nCisrKyBiL1dlYktpdFRvb2xzL0NoYW5nZUxvZwpAQCAtMSwzICsxLDIwIEBACisyMDEw
LTA4LTEzICBKYW1leSBIaWNrcyAgPGphbWV5LmhpY2tzQG5va2lhLmNvbT4KKworICAgICAgICBS
ZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICByZW1vdGUgV2ViIEluc3BlY3Rv
ciBzdXBwb3J0IGZvciBRdFdlYktpdAorCisgICAgICAgIFVudGlsIHdlIGhhdmUgYW4gQVBJIGZv
ciBlbmFibGluZyByZW1vdGUgV2ViIEluc3BlY3Rvciwgc2V0CisgICAgICAgIHByb3BlcnR5IHFf
d2ViRGVidWdTZXJ2ZXJQb3J0IG9uIHRoZSBRV2ViUGFnZS4gQWxsIHBhZ2VzIHdpdGggdGhhdAor
ICAgICAgICBwcm9wZXJ0eSBzZXQgd2lsbCBiZSByZW1vdGVseSBpbnNwZWN0YWJsZS4KKworICAg
ICAgICBVUkwgZm9yIHJlbW90ZSBpbnNwZWN0aW9uIGlzIGh0dHA6Ly9sb2NhbGhvc3Q6UE9SVC9k
ZXZ0b29scy9wYWdlL04KKyAgICAgICAgd2hlcmUgUE9SVCBpcyBzcGVjaWZpZWQgYnkgcV93ZWJE
ZWJ1Z1NlcnZlclBvcnQgYW5kIE4gaXMgdGhlCisgICAgICAgIG51bWJlciBvZiB0aGUgUVdlYlBh
Z2UgaW5zdGFuY2Ugc3RhcnRpbmcgZnJvbSAxLgorICAgICAgICAKKyAgICAgICAgKiBRdFRlc3RC
cm93c2VyL21haW53aW5kb3cuY3BwOgorICAgICAgICAoTWFpbldpbmRvdzo6TWFpbldpbmRvdyk6
CisKIDIwMTAtMDgtMTMgIEtlbmljaGkgSXNoaWJhc2hpICA8YmFzaGlAZ29vZ2xlLmNvbT4KIAog
ICAgICAgICBSZXZpZXdlZCBieSBTaGluaWNoaXJvIEhhbWFqaS4KZGlmZiAtLWdpdCBhL1dlYktp
dFRvb2xzL1F0VGVzdEJyb3dzZXIvbWFpbndpbmRvdy5jcHAgYi9XZWJLaXRUb29scy9RdFRlc3RC
cm93c2VyL21haW53aW5kb3cuY3BwCmluZGV4IGFiYjYwOGYuLjY4YTRlOTEgMTAwNjQ0Ci0tLSBh
L1dlYktpdFRvb2xzL1F0VGVzdEJyb3dzZXIvbWFpbndpbmRvdy5jcHAKKysrIGIvV2ViS2l0VG9v
bHMvUXRUZXN0QnJvd3Nlci9tYWlud2luZG93LmNwcApAQCAtNDIsNiArNDIsOCBAQCBNYWluV2lu
ZG93OjpNYWluV2luZG93KGNvbnN0IFFTdHJpbmcmIHVybCkKICAgICBpZiAocWdldGVudigiUVRU
RVNUQlJPV1NFUl9VU0VfQVJHQl9WSVNVQUxTIikudG9JbnQoKSA9PSAxKQogICAgICAgICBzZXRB
dHRyaWJ1dGUoUXQ6OldBX1RyYW5zbHVjZW50QmFja2dyb3VuZCk7CiAKKyAgICBtX3BhZ2UtPnNl
dFByb3BlcnR5KCJfcV93ZWJEZWJ1Z1NlcnZlclBvcnQiLCA5MjIyKTsKKwogICAgIGJ1aWxkVUko
KTsKIH0KIAo=
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="0"
              isprivate="0"
          >
            <attachid>64367</attachid>
            <date>2010-08-13 12:59:53 -0700</date>
            <delta_ts>2010-08-13 12:59:53 -0700</delta_ts>
            <desc>screen shot showing Safari on right remotely inspecting QtTestBrowser on left</desc>
            <filename>remote-web-inspector.png</filename>
            <type>image/png</type>
            <size>466660</size>
            <attacher name="Jamey Hicks">jamey.hicks</attacher>
            
              <data encoding="base64">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
jNHj2gr2N9yfXNvDtUSVj+XoTynj0dxSQ9Muw3OOR01NjM3HtVHO1cT/29xSQ/Muw0vqb3hf2F7U
GJYz/7aaOCTyuPE7DMlrLx4TOevP1a/W9rq87WtsrKKxsbXg+ZHpDyJ8m4l4TDJ8dAtidEvZ52/m
uRduX775HjWW5VwPmlpq2C6yjyLSrm/HP49z+aPc+Zx5Pcps9wDvelTIXrHnb9hWW3t93vbl88fA
jgYGdjQE24eOqMATGR6koxCu91OyBBxhfviNgdujUUIjax3ctS5KghsDYpteEsIwuRv+nAthEjiX
LEZmuf5AFFFdTPstLCwsLCyKxTRvLTq5D3rG04Qo+fhK1Juv7nLaVCoyA9cqqQldyF5f6utbbqzK
9qOSfcrkWCrRt40l0WSp7ejv8hsOvviG9sQypBfB7K+cTKRzIplAJROhzEAiONpFEfOip10vllpq
nRYV7UdMu54ytCSORON6/2KIYE9QgwBXucRigIuJlBU+YZfL8Xnpj9zbg+jiMk/kKKmF0ojPbFsm
V112NG+mFIdSmupqF62hoWYdPT3daVIiWQtWIRBSEo/HSCSSrFm5kiVLFtG9bg1SaOrq6mhuakgj
nX1NZymdINI5FeUscuo550oimM+HhZIOlktIF9eO0k/aNPvKs5+p8pGD5Sk0z8qdz9aetWftWXvW
3qZlrxzUbNGIWCCQvRK0Rmlw4gItFDoWfGki4ma/VqDVprvIziSiw9syy0WVybU9nDywlCjoqDaE
6yiVOLewsLCwsCgF64Ok7e96J39OEwH2FxnYX0StxRdj/mwoVA9oRK3sJlMSV5CipP2EgwI3Y00l
0F6aQcArZSKbEdoL5NQoTx/aRYE2chp4MdI+3axTZnBwvGhpQ4ArrUwSQicJjqNJ4pJEo6UssLSL
0j8uFI7qZT/UmYxh+ZOl9GhokdNWmDxVSiGl8ZzWDlVVcZRyUa5La2sLCz79jHjtYJLJJGHN6ZiX
ILAn0cuKFcvoXPwpvb3dxB2H2rpaapoHGKLZKxePx7JIZymlV7dPOhOQ0PkujOX6L9NeX2Q6Mscl
s319lVMpGB0d+qvT5mjmqxLzmQqfH9aetWftWXvWXv/bKw21LTXIhQ5uQoEjkCYUAC1Ax01uAUep
ICu0wMH5HNzPRhHRucoUs70QMVzqMX3RlrawsLCwsCgGfgRyVCTytNC61t/uk8aZ5fPZ6Uu9/r5w
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
M+OZCGcEAQMS1BMwK2aSioiYMd0ZkNMz3nmvCRHQE/A88xlAAQVMIDtdVe8f1TPTM9szO5sIWr/9
zGd7urqffqrqqequZ57+PRhPWIJoZUOmZeiElpD6LiOvaEf3JffL2A+psrBdIp+0PBH5q5hTNInc
js+OLbtw+/v3UmbKmPn+3XRq2TXzzDBK9qBWfbh06RS+S/zAyp++ZtiC81PHdG3ZjVvem0OZSmQK
9+uW42yO4qa9zmLQwkk8v/IlNgQbUDrgw+8+ztKvK7e/f19Ev25px6wuo75fj4Qp48ql01L6ZmP0
oovxhM9puw5mdsc/87cv/1mQbWYnKEy/vi0yeJyT3M1xfM7xvJ6VTzIY54gulDKkEGTbX03bc1Xl
nXzKYDp02Jtzzh5Ln579uHTilfTu3TMlj9T/6HZa7vARp9OgXj2OOeJ4hpx4Mnvv2Q7f91P6Zdaf
cvpF9518ymD2ztKlT+9eOes7ePCJnHLy8NChVV5eXDtMmnQhU6fdyoG9+jNq5Hns037vjPbLlFm+
/fr07sWFF17Mgb36M/PmWVx2+cU59Zsw6Xxe/r9XOaTPHxg+7Bw6d9ovQ2ZuWYKTTxmUpy0Ew0ac
TsOGDRl45An8adCp7LffPqkxEGcvAPt0aM/Qk05h4JEnsN1223HmmadntNPgISfy5YoVdNpv35z2
Mnbvkxn9+vU0uv33tLp3f95c/R7/6j8z1X6P9b2JY165gkYzd+V3TxzHIb/pnNXvmW2a+/jC7C+u
j6L9kXR49tr/YE770zCW/nspM2+bzu9+97vUubltIr6fLr1iUqX02ze23a1+o0YNo3FpE44bOIjj
Bg6idPumjBx5RkpeVLezR55Hhyzd0tvpvh824jS2i7WNOP3ibSXX/BKtb7Zu++TUTWTYZkXzVUX9
EadftPzMHGOjKvWVWff8qvRHdP6r7sOcCcOaLdWGsLxq2IgBoQ02vMBGAQgJuLWcg4ODg4PDVokn
nniCKVOm8PHHH6P11vHaUtfNHDiVfMs5Lk+Ug4PDtouoHy3p7LVeutDnJyzlho+0jBhKgwZdFqB/
huLAp44qRmrfrqX8qGPNIHW4XjOWObpIC3wt8LWl+lDCoGSYvD3kf1ZCYKTEYNAYAk8itm/cxaAE
RgUYU0ZCf8/aDe/WaGMopdi0aRNFXl0SiQRBEKCULtjJ2OLB3Vg16MOCy/7342cc9vp4vln7Li2a
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
3ahTOP+9W4qOYX3HvfD4Nq1f1PSrfc+8ft1atF/jf7MLV71/N4mLAXhhxstgq3jhq5cBSFzMlR/c
wx6r7erfq+OEl05Hrl0FuaIHOz22H3Mzc2vVef7rl/r1V1az98TD+cX9UqfdBz97jFH/PZh3truN
dXv44yOXdPQjkPc/+7oYv7hf2GviYciV1ch1q3LB65fVOsaJJpzw0mnItSvX6utbs99GbhqK1roJ
UOSmoUyZ80663enpdtXs9Nj+zM3MK9qHBfEv7PfUEcjVfZGr+3LAU0eyIK7ZX7mkYzoeq6bj8Sd+
cQupifTuyFmvno9cvQJy3ao8+NmjnDP5IuSaFZHrVuXJL57N1VV7f6rT/ZmX21+5pCP/eHsCcuOa
yGXd6Hzbhrw5e0qZY9r859Pmra+gdgNJBHGFzxBtxGDSpB7gcM4Lzonx5mYmjtKnyAKBQCAQCLQk
jcnrtDi2z5/LBgKB5mPcuHFLrJ6mtt1cfW+wLvVzFacABqsGo0KlVBA5CxiMCE4ckdGcLzOJw4oQ
WUOEgiSoUdDUntmRS2bIQkuyEJIMJC4VlkV8eSMgFiLxiQoVXIVvwyhYMUSJwcZg2sRCRSJYBYMs
1uidYhYN5Zavz0Zj8sxJHDpwP9pEVRw2cH9em/lyrbJ/HnwI7aJ2bN13LMz9omg72bJnDDmerlVd
S/bloNX2ptJUcOjA/Xh11qRFGodsf6tsZa6/+Zy51l9q9eGAlXdltzfO4cQ3zuajnz7l8hFn11v/
Bj3WZ3iHPuzz0tGM7NCXUT3Wq7X+6RnP8qcXj6PfHYPY/el94YePy1rXEKXG+c1Zr3Lwavv44zNo
/7rflwZsOvKtOpY13+hTTjmFgw8+mOeff57rrruOKVOmlB7fP/+ZPfbYg4kTJ/L4E4/Tv39/Lr74
4kbXe9VVV/HNN99w7733cu+99zJz5kyuvvrq4p/VNFp78uTJdSK3J0+ezA033MAzzzzDJptswpln
nplbd+ONN/Lee+9x22238cQTT1BVVcVll11W//einvrK6fO3337LI488wmGHHcZJJ51U6/1FF120
yH2rr+36xifLKj3X5i8vnsZnP35WdP3dnz/DV/NnItf/Brmymh0f3Yfvfvk+t/6T2e8xrMfauffr
9BjK+9+8V+cYNfbztLj7lU//jiuwaucBPPH50wA8OWMSB675B56a7s+h//38Kdbssir9OvQF4OzX
LuS5Wf/jy/HP89NBn9Ahassx//f3WnU++uWLfL3XS3y939tMm/81J79c+7x4wzv/YvvnTuaTne9j
cNeBdc87aSS0HvVTXlR0XU56+Symz5/N1/u9zazfv8T9Xz5Xa32pvg5Zfg26Vi3H03nln/riOZZv
05k1u61e1j7m+jDpDD6ZO5Ov93mDWXu/wQc/fcnJk85s1HjM+Hk2cw+cyg2j/872D+/HV/O/Ye4B
73LD6L+z+XN/bXB/8nnsy+eZPu5x5h76BUevsi3bPHlEo8Z0acG5NPuz5j2lI+ptOIxgbUQEiL+B
Qnz2jzBTCAQCgUDgV0bLWUsGAoFAbYwoFqWiwnoLDfVezQpkIoOzgjOKSOItOIxBnBJVRHTu1pnl
enTy/tFqECpInZ4RYxB8dLNaxViDjQw2TVjocLlznrGCOkU1xlaAjTTn9exwOCMkAqaNgwpSf8M6
FhyL/0Sdm9TVc7JevssgXpk9uVG+wfm/QFaaCj8oGEDr7Uv7iva5PjXU79p9F+I0um9B8kuTxqVd
1K7W+7PWPpHnRl/Cap1W5Ogpl7L/S8c0WMeFax3P4188wflrHV9krfLmTi/lopmzkdYNr6ufKlsJ
gBVbd5wLBORi0c7541lfdHRjLu6t/VfoqqoqZs+ezffff0/Pnj05+eSTS5a98847WXfddamqqqJD
hw4cdthhvPTSS42u97HHHuOYY46ha9eudO3aleOOO47//ve/je77CSecQI8ePWjbti177bUXU6dO
za27//77Of744+nRowft2rXjT3/6E0899dQi11dOnw866CDatm3LVlttxfz58znwwANz7z/55JNF
7ltTx+vZbW7hp4VzWenOLZGr+rDjo/vw5U/TawrMn8OHP3zGnL0mMeeAqXSI2rHf00fXrF/4U+68
BNChogMs/KnJn6eW7BfAnweN47qpdwDw6FevcMqwY3h4pvfyv27qHRw+aLdc2VOm/IubxpxPnw69
6VDRgQtHncq1H95fq77rNj6H7m27071td67f+BzOf++uWusPeOIwXhh7BSt17N+k7+iF792Va6tH
u+7cuNG5tdbX19cz1tiTK6bclCt7+dsTOH2NPcvexywXvXcX1+f14YaNz+OCqf9p1HicMfIE2kft
+P3AXSEzl1NHHF/zfs7URo39DZtcSO8OvWgftePYdY5g+qw3l83JZAKa+FwKImCM8dehSHLJOpzk
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
i/jT8esAlvKhAOGTaO8ZAVeghZdsjJDY2iKkFUJopM9Gu55Nh7ZdNGCJcCHDsEyohfdCY6FDrjcP
kp6LhvSmRZ6XtC3QPo1yNCiQCJTr/a+VRkuNsAVSuxqlladuW176dENR20kgsqy6kNhQ2USRtquf
oGqyyqi+fl1kTD+F1q924e6Nr/KvXnfVenKs3G9dInNNMcTatj4xx+r3ZMngqr5vRyvQn6isWLGC
559/ngULFjBkyBDuvffe6LIXXniBr7/+mldeeYV58+YRCAR4/PHHq2y/Zs0apk+fzvLly+u9TWVu
vvlmRo8ezQcffMDceXNp164djz766HHtA6CgoIA5c+Ywbtw47rjjjiqvJ02adFTxxBqz5ORkhg4d
ysyZM6PrLV++nO7du1cRnwH69+8fFVoXLlyI3+fnk08+iW4zYMCAWmOpq6+//vWvXHfddXzyySc8
++yzfPXVVzUe+8j/lYXfyZMnk5+fz6xZs5g1axZ79+5lypQpNY7tlClTKC4u5u233+a1117jyy+/
rLK8tuNVUwzfV8pLy/H7bdLS0lDK5aO3n2XBu69ihQqQ0jZXND9ghBZRWzIdPZccfq0hbJymKxXQ
MJNdg8FgMBj+l/NDXY9aTAaDwfC9mrMoC5T28pQ1CGmB9oqpa0uibIG2vMLqUkiwBY52UVIhhItG
e1nRWnn6cMSmOSTQIY2SbtgbGgQWCIkW0uvHlt79oG7YvlAIBIrwjaTe3aO2BcJCBrTADptPKw1B
x2nQE0J9iCUGN6YYXbnvuoTdmmLKu3IzeVduIm/4PM5KPb3e/dc3A7ym/muK+2gEdK01ub/Y1KBj
3lDH8PvA7bffTkZGBvHx8YwdO5ZvvvkmuuzNN9/kj3/8IxkZGSQkJHDjjTcyf/78KtvffPPNpKSk
HNU2lZkxYwa9e/eOZoOOGzeOxYsXH9c+AH77298SHx/PhRdeSGlpKddee2309ebNm48qnprG7Mor
r2TmzJk44e+1jz76iIsuuuiIWAYMGFBFgB41elRUgF6xYgX9+/evM5ba+goEAuzbt4/CwkKysrL4
y1/+clSfiffee49bb72V1NRUUlNTGT9+PO+//36N68+dO5dbbrmFlJQUUlJSuPnmm6ssP5bj9X2l
XefeCBVkxSczWf3+RPqmf02b8tdxNjyJataD0tJSSkpKKCkupqS4mNLSUoLBoLnS+QEQcVCrbp0l
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
gg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>64404</attachid>
            <date>2010-08-13 21:51:25 -0700</date>
            <delta_ts>2010-08-26 12:41:03 -0700</delta_ts>
            <desc>the same patch just for checking on try bots. Old one was  not processed because jamey.hicks is not a committer.</desc>
            <filename>patch</filename>
            <type>text/plain</type>
            <size>60941</size>
            <attacher name="Ilya Tikhonovsky">loislo</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1dlYkNvcmUvQ2hhbmdlTG9nIGIvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXgg
ZGQ2ODliYS4uZGJjZDJkNiAxMDA2NDQKLS0tIGEvV2ViQ29yZS9DaGFuZ2VMb2cKKysrIGIvV2Vi
Q29yZS9DaGFuZ2VMb2cKQEAgLTEsMyArMSw0NzQgQEAKKzIwMTAtMDgtMTMgIEphbWV5IEhpY2tz
ICA8amFtZXkuaGlja3NAbm9raWEuY29tPgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAo
T09QUyEpLgorCisgICAgICAgIGRldnRvb2xzIHN0dWZmIGZyb20gY2hyb21pdW0gZm9yIHJlbW90
ZSBpbnNwZWN0b3IKKworICAgICAgICBOZWVkIGEgc2hvcnQgZGVzY3JpcHRpb24gYW5kIGJ1ZyBV
UkwgKE9PUFMhKQorCisgICAgICAgIE5vIG5ldyB0ZXN0cy4gKE9PUFMhKQorCisgICAgICAgICog
aW5zcGVjdG9yL2RldnRvb2xzL0RlYnVnZ2VyU2NyaXB0LmpzOiBDb3BpZWQgZnJvbSBXZWJLaXQv
Y2hyb21pdW0vc3JjL2pzL0RlYnVnZ2VyU2NyaXB0LmpzLgorICAgICAgICAoKToKKyAgICAgICAg
KC4pOgorICAgICAgICAqIGluc3BlY3Rvci9kZXZ0b29scy9EZXZUb29scy5qczogQWRkZWQuCisg
ICAgICAgIChkZXZ0b29scy5kaXNwYXRjaCk6CisgICAgICAgIChkZXZ0b29scy5Ub29sc0FnZW50
KToKKyAgICAgICAgKC4pOgorICAgICAgICAoKToKKyAgICAgICAgKFdlYkluc3BlY3Rvci5sb2Fk
ZWQpOgorICAgICAgICAoV2ViSW5zcGVjdG9yLmRvTG9hZGVkRG9uZSk6CisgICAgICAgIChkZXZ0
b29scy5kb21Db250ZW50TG9hZGVkKToKKyAgICAgICAgKFdlYkluc3BlY3Rvci5UZXN0Q29udHJv
bGxlci5wcm90b3R5cGUucnVuQWZ0ZXJQZW5kaW5nRGlzcGF0Y2hlcyk6CisgICAgICAgIChXZWJJ
bnNwZWN0b3IucXVldWVzQXJlRW1wdHkpOgorICAgICAgICAoV2ViSW5zcGVjdG9yLnNldFRvb2xi
YXJDb2xvcnMpOgorICAgICAgICAoV2ViSW5zcGVjdG9yLnJlc2V0VG9vbGJhckNvbG9ycyk6Cisg
ICAgICAgICguUmVtb3RlRGVidWdnZXJBZ2VudC5zZXRDb250ZXh0SWQpOgorICAgICAgICAoSW5z
cGVjdG9yQmFja2VuZC5wYXVzZSk6CisgICAgICAgICogaW5zcGVjdG9yL2RldnRvb2xzL0RldlRv
b2xzSG9zdFN0dWIuanM6IENvcGllZCBmcm9tIFdlYktpdC9jaHJvbWl1bS9zcmMvanMvRGV2VG9v
bHNIb3N0U3R1Yi5qcy4KKyAgICAgICAgKiBpbnNwZWN0b3IvZGV2dG9vbHMvSGVhcFByb2ZpbGVy
UGFuZWwuanM6IENvcGllZCBmcm9tIFdlYktpdC9jaHJvbWl1bS9zcmMvanMvSGVhcFByb2ZpbGVy
UGFuZWwuanMuCisgICAgICAgIChXZWJJbnNwZWN0b3IuUHJvZmlsZXNQYW5lbC5wcm90b3R5cGUu
YWRkU25hcHNob3QpOgorICAgICAgICAoV2ViSW5zcGVjdG9yLkhlYXBTbmFwc2hvdFZpZXcpOgor
ICAgICAgICAoV2ViSW5zcGVjdG9yLkhlYXBTbmFwc2hvdFZpZXcucHJvdG90eXBlLmdldCBzdGF0
dXNCYXJJdGVtcyk6CisgICAgICAgIChXZWJJbnNwZWN0b3IuSGVhcFNuYXBzaG90Vmlldy5wcm90
b3R5cGUuZ2V0IHByb2ZpbGUpOgorICAgICAgICAoV2ViSW5zcGVjdG9yLkhlYXBTbmFwc2hvdFZp
ZXcucHJvdG90eXBlLnNldCBwcm9maWxlKToKKyAgICAgICAgKFdlYkluc3BlY3Rvci5IZWFwU25h
cHNob3RWaWV3LnByb3RvdHlwZS5zaG93KToKKyAgICAgICAgKFdlYkluc3BlY3Rvci5IZWFwU25h
cHNob3RWaWV3LnByb3RvdHlwZS5oaWRlKToKKyAgICAgICAgKFdlYkluc3BlY3Rvci5IZWFwU25h
cHNob3RWaWV3LnByb3RvdHlwZS5yZXNpemUpOgorICAgICAgICAoV2ViSW5zcGVjdG9yLkhlYXBT
bmFwc2hvdFZpZXcucHJvdG90eXBlLnJlZnJlc2gpOgorICAgICAgICAoV2ViSW5zcGVjdG9yLkhl
YXBTbmFwc2hvdFZpZXcucHJvdG90eXBlLnJlZnJlc2hTaG93QXNQZXJjZW50cyk6CisgICAgICAg
IChXZWJJbnNwZWN0b3IuSGVhcFNuYXBzaG90Vmlldy5wcm90b3R5cGUuX2RlbGV0ZVNlYXJjaE1h
dGNoZWRGbGFncyk6CisgICAgICAgIChXZWJJbnNwZWN0b3IuSGVhcFNuYXBzaG90Vmlldy5wcm90
b3R5cGUuc2VhcmNoQ2FuY2VsZWQpOgorICAgICAgICAoV2ViSW5zcGVjdG9yLkhlYXBTbmFwc2hv
dFZpZXcucHJvdG90eXBlLnBlcmZvcm1TZWFyY2gpOgorICAgICAgICAoV2ViSW5zcGVjdG9yLkhl
YXBTbmFwc2hvdFZpZXcucHJvdG90eXBlLmp1bXBUb0ZpcnN0U2VhcmNoUmVzdWx0LldlYkluc3Bl
Y3Rvci5DUFVQcm9maWxlVmlldy5wcm90b3R5cGUuanVtcFRvRmlyc3RTZWFyY2hSZXN1bHQuanVt
cFRvTGFzdFNlYXJjaFJlc3VsdC5XZWJJbnNwZWN0b3IuQ1BVUHJvZmlsZVZpZXcucHJvdG90eXBl
Lmp1bXBUb0xhc3RTZWFyY2hSZXN1bHQuanVtcFRvTmV4dFNlYXJjaFJlc3VsdC5XZWJJbnNwZWN0
b3IuQ1BVUHJvZmlsZVZpZXcucHJvdG90eXBlLmp1bXBUb05leHRTZWFyY2hSZXN1bHQuanVtcFRv
UHJldmlvdXNTZWFyY2hSZXN1bHQuV2ViSW5zcGVjdG9yLkNQVVByb2ZpbGVWaWV3LnByb3RvdHlw
ZS5qdW1wVG9QcmV2aW91c1NlYXJjaFJlc3VsdC5zaG93aW5nRmlyc3RTZWFyY2hSZXN1bHQuV2Vi
SW5zcGVjdG9yLkNQVVByb2ZpbGVWaWV3LnByb3RvdHlwZS5zaG93aW5nRmlyc3RTZWFyY2hSZXN1
bHQuc2hvd2luZ0xhc3RTZWFyY2hSZXN1bHQuV2ViSW5zcGVjdG9yLkNQVVByb2ZpbGVWaWV3LnBy
b3RvdHlwZS5zaG93aW5nTGFzdFNlYXJjaFJlc3VsdC5fanVtcFRvU2VhcmNoUmVzdWx0LldlYklu
c3BlY3Rvci5DUFVQcm9maWxlVmlldy5wcm90b3R5cGUuX2p1bXBUb1NlYXJjaFJlc3VsdC5yZWZy
ZXNoVmlzaWJsZURhdGEpOgorICAgICAgICAoV2ViSW5zcGVjdG9yLkhlYXBTbmFwc2hvdFZpZXcu
cHJvdG90eXBlLl9jaGFuZ2VCYXNlKToKKyAgICAgICAgKFdlYkluc3BlY3Rvci5IZWFwU25hcHNo
b3RWaWV3LnByb3RvdHlwZS5fY3JlYXRlU25hcHNob3REYXRhR3JpZExpc3QpOgorICAgICAgICAo
V2ViSW5zcGVjdG9yLkhlYXBTbmFwc2hvdFZpZXcucHJvdG90eXBlLl9tb3VzZURvd25JbkRhdGFH
cmlkKToKKyAgICAgICAgKFdlYkluc3BlY3Rvci5IZWFwU25hcHNob3RWaWV3LnByb3RvdHlwZS5n
ZXQgX2lzU2hvd2luZ0FzUGVyY2VudCk6CisgICAgICAgIChXZWJJbnNwZWN0b3IuSGVhcFNuYXBz
aG90Vmlldy5wcm90b3R5cGUuX3BlcmNlbnRDbGlja2VkKToKKyAgICAgICAgKFdlYkluc3BlY3Rv
ci5IZWFwU25hcHNob3RWaWV3LnByb3RvdHlwZS5fcmVzZXREYXRhR3JpZExpc3QpOgorICAgICAg
ICAoV2ViSW5zcGVjdG9yLkhlYXBTbmFwc2hvdFZpZXcucHJvdG90eXBlLl9zb3J0RGF0YSk6Cisg
ICAgICAgIChXZWJJbnNwZWN0b3IuSGVhcFNuYXBzaG90Vmlldy5wcm90b3R5cGUuX3VwZGF0ZUJh
c2VPcHRpb25zKToKKyAgICAgICAgKFdlYkluc3BlY3Rvci5IZWFwU25hcHNob3RWaWV3LnByb3Rv
dHlwZS5fdXBkYXRlUGVyY2VudEJ1dHRvbik6CisgICAgICAgIChXZWJJbnNwZWN0b3IuSGVhcFNu
YXBzaG90Vmlldy5wcm90b3R5cGUuX3VwZGF0ZVN1bW1hcnlHcmFwaCk6CisgICAgICAgIChXZWJJ
bnNwZWN0b3IuSGVhcFNuYXBzaG90Vmlldy5TZWFyY2hIZWxwZXIub3BlcmF0aW9ucy5MRVNTKToK
KyAgICAgICAgKFdlYkluc3BlY3Rvci5IZWFwU25hcHNob3RWaWV3LlNlYXJjaEhlbHBlci5vcGVy
YXRpb25zLkxFU1NfT1JfRVFVQUwpOgorICAgICAgICAoV2ViSW5zcGVjdG9yLkhlYXBTbmFwc2hv
dFZpZXcuU2VhcmNoSGVscGVyLm9wZXJhdGlvbnMuRVFVQUwpOgorICAgICAgICAoV2ViSW5zcGVj
dG9yLkhlYXBTbmFwc2hvdFZpZXcuU2VhcmNoSGVscGVyLm9wZXJhdGlvbnMuR1JFQVRFUl9PUl9F
UVVBTCk6CisgICAgICAgIChXZWJJbnNwZWN0b3IuSGVhcFNuYXBzaG90Vmlldy5TZWFyY2hIZWxw
ZXIub3BlcmF0aW9ucy5HUkVBVEVSKToKKyAgICAgICAgKFdlYkluc3BlY3Rvci5IZWFwU25hcHNo
b3RWaWV3LlNlYXJjaEhlbHBlci5wYXJzZU9wZXJhdGlvbkFuZE51bWJlcik6CisgICAgICAgIChX
ZWJJbnNwZWN0b3IuSGVhcFN1bW1hcnlDYWxjdWxhdG9yKToKKyAgICAgICAgKFdlYkluc3BlY3Rv
ci5IZWFwU3VtbWFyeUNhbGN1bGF0b3IucHJvdG90eXBlLmNvbXB1dGVTdW1tYXJ5VmFsdWVzKToK
KyAgICAgICAgKFdlYkluc3BlY3Rvci5IZWFwU3VtbWFyeUNhbGN1bGF0b3IucHJvdG90eXBlLmZv
cm1hdFZhbHVlKToKKyAgICAgICAgKFdlYkluc3BlY3Rvci5IZWFwU3VtbWFyeUNhbGN1bGF0b3Iu
cHJvdG90eXBlLmdldCBzaG93QXNQZXJjZW50KToKKyAgICAgICAgKFdlYkluc3BlY3Rvci5IZWFw
U3VtbWFyeUNhbGN1bGF0b3IucHJvdG90eXBlLnNldCBzaG93QXNQZXJjZW50KToKKyAgICAgICAg
KFdlYkluc3BlY3Rvci5IZWFwU3VtbWFyeUNvdW50Q2FsY3VsYXRvcik6CisgICAgICAgIChXZWJJ
bnNwZWN0b3IuSGVhcFN1bW1hcnlDb3VudENhbGN1bGF0b3IucHJvdG90eXBlLl9oaWdoRnJvbUxv
dyk6CisgICAgICAgIChXZWJJbnNwZWN0b3IuSGVhcFN1bW1hcnlDb3VudENhbGN1bGF0b3IucHJv
dG90eXBlLl92YWx1ZVRvU3RyaW5nKToKKyAgICAgICAgKFdlYkluc3BlY3Rvci5IZWFwU3VtbWFy
eVNpemVDYWxjdWxhdG9yKToKKyAgICAgICAgKFdlYkluc3BlY3Rvci5IZWFwU3VtbWFyeVNpemVD
YWxjdWxhdG9yLnByb3RvdHlwZS5faGlnaEZyb21Mb3cpOgorICAgICAgICAoV2ViSW5zcGVjdG9y
LkhlYXBTbmFwc2hvdFNpZGViYXJUcmVlRWxlbWVudCk6CisgICAgICAgIChXZWJJbnNwZWN0b3Iu
SGVhcFNuYXBzaG90U2lkZWJhclRyZWVFbGVtZW50LnByb3RvdHlwZS5nZXQgbWFpblRpdGxlKToK
KyAgICAgICAgKFdlYkluc3BlY3Rvci5IZWFwU25hcHNob3RTaWRlYmFyVHJlZUVsZW1lbnQucHJv
dG90eXBlLnNldCBtYWluVGl0bGUpOgorICAgICAgICAoV2ViSW5zcGVjdG9yLkhlYXBTbmFwc2hv
dERhdGFHcmlkTm9kZVdpdGhSZXRhaW5lcnMpOgorICAgICAgICAoV2ViSW5zcGVjdG9yLkhlYXBT
bmFwc2hvdERhdGFHcmlkTm9kZVdpdGhSZXRhaW5lcnMucHJvdG90eXBlLmdldCBfaGFzUmV0YWlu
ZXJzKToKKyAgICAgICAgKFdlYkluc3BlY3Rvci5IZWFwU25hcHNob3REYXRhR3JpZE5vZGVXaXRo
UmV0YWluZXJzLnByb3RvdHlwZS5nZXQgX3BhcmVudCk6CisgICAgICAgIChXZWJJbnNwZWN0b3Iu
SGVhcFNuYXBzaG90RGF0YUdyaWROb2RlV2l0aFJldGFpbmVycy5wcm90b3R5cGUuX3BvcHVsYXRl
LmlmKToKKyAgICAgICAgKFdlYkluc3BlY3Rvci5IZWFwU25hcHNob3REYXRhR3JpZE5vZGVXaXRo
UmV0YWluZXJzLnByb3RvdHlwZS5fcG9wdWxhdGUpOgorICAgICAgICAoV2ViSW5zcGVjdG9yLkhl
YXBTbmFwc2hvdERhdGFHcmlkTm9kZVdpdGhSZXRhaW5lcnMucHJvdG90eXBlLnByb2R1Y2VEaWZm
KToKKyAgICAgICAgKFdlYkluc3BlY3Rvci5IZWFwU25hcHNob3REYXRhR3JpZE5vZGVXaXRoUmV0
YWluZXJzLnByb3RvdHlwZS5zb3J0KToKKyAgICAgICAgKFdlYkluc3BlY3Rvci5IZWFwU25hcHNo
b3REYXRhR3JpZE5vZGVXaXRoUmV0YWluZXJzLnByb3RvdHlwZS5zaWduRm9yRGVsdGEpOgorICAg
ICAgICAoV2ViSW5zcGVjdG9yLkhlYXBTbmFwc2hvdERhdGFHcmlkTm9kZVdpdGhSZXRhaW5lcnMu
cHJvdG90eXBlLnNob3dEZWx0YUFzUGVyY2VudCk6CisgICAgICAgIChXZWJJbnNwZWN0b3IuSGVh
cFNuYXBzaG90RGF0YUdyaWROb2RlV2l0aFJldGFpbmVycy5wcm90b3R5cGUuZ2V0VG90YWxDb3Vu
dCk6CisgICAgICAgIChXZWJJbnNwZWN0b3IuSGVhcFNuYXBzaG90RGF0YUdyaWROb2RlV2l0aFJl
dGFpbmVycy5wcm90b3R5cGUuZ2V0VG90YWxTaXplKToKKyAgICAgICAgKFdlYkluc3BlY3Rvci5I
ZWFwU25hcHNob3REYXRhR3JpZE5vZGVXaXRoUmV0YWluZXJzLnByb3RvdHlwZS5nZXQgY291bnRQ
ZXJjZW50KToKKyAgICAgICAgKFdlYkluc3BlY3Rvci5IZWFwU25hcHNob3REYXRhR3JpZE5vZGVX
aXRoUmV0YWluZXJzLnByb3RvdHlwZS5nZXQgc2l6ZVBlcmNlbnQpOgorICAgICAgICAoV2ViSW5z
cGVjdG9yLkhlYXBTbmFwc2hvdERhdGFHcmlkTm9kZVdpdGhSZXRhaW5lcnMucHJvdG90eXBlLmdl
dCBjb3VudERlbHRhUGVyY2VudCk6CisgICAgICAgIChXZWJJbnNwZWN0b3IuSGVhcFNuYXBzaG90
RGF0YUdyaWROb2RlV2l0aFJldGFpbmVycy5wcm90b3R5cGUuZ2V0IHNpemVEZWx0YVBlcmNlbnQp
OgorICAgICAgICAoV2ViSW5zcGVjdG9yLkhlYXBTbmFwc2hvdERhdGFHcmlkTm9kZVdpdGhSZXRh
aW5lcnMucHJvdG90eXBlLmdldCBkYXRhKToKKyAgICAgICAgKFdlYkluc3BlY3Rvci5IZWFwU25h
cHNob3REYXRhR3JpZE5vZGVXaXRoUmV0YWluZXJzLnByb3RvdHlwZS5jcmVhdGVDZWxsKToKKyAg
ICAgICAgKFdlYkluc3BlY3Rvci5IZWFwU25hcHNob3REYXRhR3JpZE5vZGUpOgorICAgICAgICAo
V2ViSW5zcGVjdG9yLkhlYXBTbmFwc2hvdERhdGFHcmlkTGlzdCk6CisgICAgICAgIChXZWJJbnNw
ZWN0b3IuSGVhcFNuYXBzaG90RGF0YUdyaWRMaXN0LnByb3RvdHlwZS5hcHBlbmRDaGlsZCk6Cisg
ICAgICAgIChXZWJJbnNwZWN0b3IuSGVhcFNuYXBzaG90RGF0YUdyaWRMaXN0LnByb3RvdHlwZS5p
bnNlcnRDaGlsZCk6CisgICAgICAgIChXZWJJbnNwZWN0b3IuSGVhcFNuYXBzaG90RGF0YUdyaWRM
aXN0LnByb3RvdHlwZS5yZW1vdmVDaGlsZHJlbik6CisgICAgICAgIChXZWJJbnNwZWN0b3IuSGVh
cFNuYXBzaG90RGF0YUdyaWRMaXN0LnByb3RvdHlwZS5wb3B1bGF0ZUNoaWxkcmVuKToKKyAgICAg
ICAgKFdlYkluc3BlY3Rvci5IZWFwU25hcHNob3REYXRhR3JpZExpc3QucHJvcGVydHlDb21wYXJh
dG9yLmNvbXBhcmF0b3IpOgorICAgICAgICAoV2ViSW5zcGVjdG9yLkhlYXBTbmFwc2hvdERhdGFH
cmlkTGlzdC5wcm9wZXJ0eUNvbXBhcmF0b3IpOgorICAgICAgICAoV2ViSW5zcGVjdG9yLkhlYXBT
bmFwc2hvdERhdGFHcmlkUmV0YWluZXJOb2RlKToKKyAgICAgICAgKFdlYkluc3BlY3Rvci5IZWFw
U25hcHNob3REYXRhR3JpZFJldGFpbmVyTm9kZS5wcm90b3R5cGUuZ2V0IHNpemVQZXJjZW50KToK
KyAgICAgICAgKFdlYkluc3BlY3Rvci5IZWFwU25hcHNob3REYXRhR3JpZFJldGFpbmVyTm9kZS5w
cm90b3R5cGUuZ2V0IHNpemVEZWx0YVBlcmNlbnQpOgorICAgICAgICAoV2ViSW5zcGVjdG9yLkhl
YXBTbmFwc2hvdERhdGFHcmlkUmV0YWluZXJOb2RlLnByb3RvdHlwZS5fY2FsY3VsYXRlUmV0YWlu
ZXJzKToKKyAgICAgICAgKFdlYkluc3BlY3Rvci5IZWFwU25hcHNob3RQcm9maWxlVHlwZSk6Cisg
ICAgICAgIChXZWJJbnNwZWN0b3IuSGVhcFNuYXBzaG90UHJvZmlsZVR5cGUucHJvdG90eXBlLmdl
dCBidXR0b25Ub29sdGlwKToKKyAgICAgICAgKFdlYkluc3BlY3Rvci5IZWFwU25hcHNob3RQcm9m
aWxlVHlwZS5wcm90b3R5cGUuZ2V0IGJ1dHRvblN0eWxlKToKKyAgICAgICAgKFdlYkluc3BlY3Rv
ci5IZWFwU25hcHNob3RQcm9maWxlVHlwZS5wcm90b3R5cGUuYnV0dG9uQ2xpY2tlZCk6CisgICAg
ICAgIChXZWJJbnNwZWN0b3IuSGVhcFNuYXBzaG90UHJvZmlsZVR5cGUucHJvdG90eXBlLmdldCB3
ZWxjb21lTWVzc2FnZSk6CisgICAgICAgIChXZWJJbnNwZWN0b3IuSGVhcFNuYXBzaG90UHJvZmls
ZVR5cGUucHJvdG90eXBlLmNyZWF0ZVNpZGViYXJUcmVlRWxlbWVudEZvclByb2ZpbGUpOgorICAg
ICAgICAoV2ViSW5zcGVjdG9yLkhlYXBTbmFwc2hvdFByb2ZpbGVUeXBlLnByb3RvdHlwZS5jcmVh
dGVWaWV3KToKKyAgICAgICAgKCk6CisgICAgICAgICogaW5zcGVjdG9yL2RldnRvb2xzL0ltYWdl
cy9zZWdtZW50Q2hyb21pdW0ucG5nOiBDb3BpZWQgZnJvbSBXZWJLaXQvY2hyb21pdW0vc3JjL2pz
L0ltYWdlcy9zZWdtZW50Q2hyb21pdW0ucG5nLgorICAgICAgICAqIGluc3BlY3Rvci9kZXZ0b29s
cy9JbWFnZXMvc2VnbWVudEhvdmVyQ2hyb21pdW0ucG5nOiBDb3BpZWQgZnJvbSBXZWJLaXQvY2hy
b21pdW0vc3JjL2pzL0ltYWdlcy9zZWdtZW50SG92ZXJDaHJvbWl1bS5wbmcuCisgICAgICAgICog
aW5zcGVjdG9yL2RldnRvb2xzL0ltYWdlcy9zZWdtZW50SG92ZXJFbmRDaHJvbWl1bS5wbmc6IENv
cGllZCBmcm9tIFdlYktpdC9jaHJvbWl1bS9zcmMvanMvSW1hZ2VzL3NlZ21lbnRIb3ZlckVuZENo
cm9taXVtLnBuZy4KKyAgICAgICAgKiBpbnNwZWN0b3IvZGV2dG9vbHMvSW1hZ2VzL3NlZ21lbnRT
ZWxlY3RlZENocm9taXVtLnBuZzogQ29waWVkIGZyb20gV2ViS2l0L2Nocm9taXVtL3NyYy9qcy9J
bWFnZXMvc2VnbWVudFNlbGVjdGVkQ2hyb21pdW0ucG5nLgorICAgICAgICAqIGluc3BlY3Rvci9k
ZXZ0b29scy9JbWFnZXMvc2VnbWVudFNlbGVjdGVkRW5kQ2hyb21pdW0ucG5nOiBDb3BpZWQgZnJv
bSBXZWJLaXQvY2hyb21pdW0vc3JjL2pzL0ltYWdlcy9zZWdtZW50U2VsZWN0ZWRFbmRDaHJvbWl1
bS5wbmcuCisgICAgICAgICogaW5zcGVjdG9yL2RldnRvb2xzL0ltYWdlcy9zdGF0dXNiYXJCYWNr
Z3JvdW5kQ2hyb21pdW0ucG5nOiBDb3BpZWQgZnJvbSBXZWJLaXQvY2hyb21pdW0vc3JjL2pzL0lt
YWdlcy9zdGF0dXNiYXJCYWNrZ3JvdW5kQ2hyb21pdW0ucG5nLgorICAgICAgICAqIGluc3BlY3Rv
ci9kZXZ0b29scy9JbWFnZXMvc3RhdHVzYmFyQm90dG9tQmFja2dyb3VuZENocm9taXVtLnBuZzog
Q29waWVkIGZyb20gV2ViS2l0L2Nocm9taXVtL3NyYy9qcy9JbWFnZXMvc3RhdHVzYmFyQm90dG9t
QmFja2dyb3VuZENocm9taXVtLnBuZy4KKyAgICAgICAgKiBpbnNwZWN0b3IvZGV2dG9vbHMvSW1h
Z2VzL3N0YXR1c2JhckJ1dHRvbnNDaHJvbWl1bS5wbmc6IENvcGllZCBmcm9tIFdlYktpdC9jaHJv
bWl1bS9zcmMvanMvSW1hZ2VzL3N0YXR1c2JhckJ1dHRvbnNDaHJvbWl1bS5wbmcuCisgICAgICAg
ICogaW5zcGVjdG9yL2RldnRvb2xzL0ltYWdlcy9zdGF0dXNiYXJNZW51QnV0dG9uQ2hyb21pdW0u
cG5nOiBDb3BpZWQgZnJvbSBXZWJLaXQvY2hyb21pdW0vc3JjL2pzL0ltYWdlcy9zdGF0dXNiYXJN
ZW51QnV0dG9uQ2hyb21pdW0ucG5nLgorICAgICAgICAqIGluc3BlY3Rvci9kZXZ0b29scy9JbWFn
ZXMvc3RhdHVzYmFyTWVudUJ1dHRvblNlbGVjdGVkQ2hyb21pdW0ucG5nOiBDb3BpZWQgZnJvbSBX
ZWJLaXQvY2hyb21pdW0vc3JjL2pzL0ltYWdlcy9zdGF0dXNiYXJNZW51QnV0dG9uU2VsZWN0ZWRD
aHJvbWl1bS5wbmcuCisgICAgICAgICogaW5zcGVjdG9yL2RldnRvb2xzL1Byb2ZpbGVyQWdlbnQu
anM6IENvcGllZCBmcm9tIFdlYktpdC9jaHJvbWl1bS9zcmMvanMvUHJvZmlsZXJBZ2VudC5qcy4K
KyAgICAgICAgKGRldnRvb2xzLlByb2ZpbGVyQWdlbnQpOgorICAgICAgICAoZGV2dG9vbHMuUHJv
ZmlsZXJBZ2VudC5wcm90b3R5cGUuaW5pdGlhbGl6ZVByb2ZpbGluZyk6CisgICAgICAgIChkZXZ0
b29scy5Qcm9maWxlckFnZW50LnByb3RvdHlwZS5fZ2V0TmV4dExvZ0xpbmVzLmVsc2UuZGVsYXll
ZFJlcXVlc3QpOgorICAgICAgICAoZGV2dG9vbHMuUHJvZmlsZXJBZ2VudC5wcm90b3R5cGUuX2dl
dE5leHRMb2dMaW5lcyk6CisgICAgICAgIChkZXZ0b29scy5Qcm9maWxlckFnZW50LnByb3RvdHlw
ZS5zdGFydFByb2ZpbGluZyk6CisgICAgICAgIChkZXZ0b29scy5Qcm9maWxlckFnZW50LnByb3Rv
dHlwZS5fZGlkR2V0UHJvZmlsZXJMb2dMaW5lcyk6CisgICAgICAgICogaW5zcGVjdG9yL2RldnRv
b2xzL1Byb2ZpbGVyUHJvY2Vzc29yLmpzOiBDb3BpZWQgZnJvbSBXZWJLaXQvY2hyb21pdW0vc3Jj
L2pzL1Byb2ZpbGVyUHJvY2Vzc29yLmpzLgorICAgICAgICAoZGV2dG9vbHMucHJvZmlsZXIuV2Vi
S2l0Vmlld0J1aWxkZXIpOgorICAgICAgICAoZGV2dG9vbHMucHJvZmlsZXIuV2ViS2l0Vmlld0J1
aWxkZXIucHJvdG90eXBlLmNyZWF0ZVZpZXdOb2RlKToKKyAgICAgICAgKGRldnRvb2xzLnByb2Zp
bGVyLldlYktpdFZpZXdOb2RlKToKKyAgICAgICAgKHNldCBnZXQgZGV2dG9vbHMucHJvZmlsZXIu
V2ViS2l0Vmlld05vZGUucHJvdG90eXBlLmluaXRGdW5jSW5mb18pOgorICAgICAgICAoZGV2dG9v
bHMucHJvZmlsZXIuSnNQcm9maWxlKToKKyAgICAgICAgKGRldnRvb2xzLnByb2ZpbGVyLkpzUHJv
ZmlsZS5wcm90b3R5cGUuc2tpcFRoaXNGdW5jdGlvbik6CisgICAgICAgIChkZXZ0b29scy5wcm9m
aWxlci5Qcm9jZXNzb3IpOgorICAgICAgICAoZGV2dG9vbHMucHJvZmlsZXIuUHJvY2Vzc29yLnBy
b3RvdHlwZS5wcmludEVycm9yKToKKyAgICAgICAgKGRldnRvb2xzLnByb2ZpbGVyLlByb2Nlc3Nv
ci5wcm90b3R5cGUuc2tpcERpc3BhdGNoKToKKyAgICAgICAgKGRldnRvb2xzLnByb2ZpbGVyLlBy
b2Nlc3Nvci5wcm90b3R5cGUuc2V0Q2FsbGJhY2tzKToKKyAgICAgICAgKGRldnRvb2xzLnByb2Zp
bGVyLlByb2Nlc3Nvci5wcm90b3R5cGUuc2V0TmV3UHJvZmlsZUNhbGxiYWNrKToKKyAgICAgICAg
KGRldnRvb2xzLnByb2ZpbGVyLlByb2Nlc3Nvci5wcm90b3R5cGUucHJvY2Vzc1Byb2ZpbGVyXy5z
d2l0Y2guYnJlYWspOgorICAgICAgICAoZGV2dG9vbHMucHJvZmlsZXIuUHJvY2Vzc29yLnByb3Rv
dHlwZS5wcm9jZXNzUHJvZmlsZXJfKToKKyAgICAgICAgKGRldnRvb2xzLnByb2ZpbGVyLlByb2Nl
c3Nvci5wcm90b3R5cGUucHJvY2Vzc0NvZGVDcmVhdGlvbl8pOgorICAgICAgICAoZGV2dG9vbHMu
cHJvZmlsZXIuUHJvY2Vzc29yLnByb3RvdHlwZS5wcm9jZXNzQ29kZU1vdmVfKToKKyAgICAgICAg
KGRldnRvb2xzLnByb2ZpbGVyLlByb2Nlc3Nvci5wcm90b3R5cGUucHJvY2Vzc0NvZGVEZWxldGVf
KToKKyAgICAgICAgKGRldnRvb2xzLnByb2ZpbGVyLlByb2Nlc3Nvci5wcm90b3R5cGUucHJvY2Vz
c0Z1bmN0aW9uQ3JlYXRpb25fKToKKyAgICAgICAgKGRldnRvb2xzLnByb2ZpbGVyLlByb2Nlc3Nv
ci5wcm90b3R5cGUucHJvY2Vzc0Z1bmN0aW9uTW92ZV8pOgorICAgICAgICAoZGV2dG9vbHMucHJv
ZmlsZXIuUHJvY2Vzc29yLnByb3RvdHlwZS5wcm9jZXNzRnVuY3Rpb25EZWxldGVfKToKKyAgICAg
ICAgKGRldnRvb2xzLnByb2ZpbGVyLlByb2Nlc3Nvci5wcm90b3R5cGUucHJvY2Vzc1RpY2tfKToK
KyAgICAgICAgKGRldnRvb2xzLnByb2ZpbGVyLlByb2Nlc3Nvci5wcm90b3R5cGUucHJvY2Vzc1Rp
Y2tWMl8pOgorICAgICAgICAoZGV2dG9vbHMucHJvZmlsZXIuUHJvY2Vzc29yLnByb3RvdHlwZS5w
cm9jZXNzSGVhcFNhbXBsZUJlZ2luXyk6CisgICAgICAgIChkZXZ0b29scy5wcm9maWxlci5Qcm9j
ZXNzb3IucHJvdG90eXBlLnByb2Nlc3NIZWFwU2FtcGxlU3RhdHNfKToKKyAgICAgICAgKGRldnRv
b2xzLnByb2ZpbGVyLlByb2Nlc3Nvci5wcm90b3R5cGUucHJvY2Vzc0hlYXBTYW1wbGVJdGVtXyk6
CisgICAgICAgIChkZXZ0b29scy5wcm9maWxlci5Qcm9jZXNzb3IucHJvdG90eXBlLnByb2Nlc3NI
ZWFwSnNDb25zSXRlbV8pOgorICAgICAgICAoZGV2dG9vbHMucHJvZmlsZXIuUHJvY2Vzc29yLnBy
b3RvdHlwZS5wcm9jZXNzSGVhcEpzUmV0SXRlbV8ubWVyZ2VSZXRhaW5lcnMpOgorICAgICAgICAo
ZGV2dG9vbHMucHJvZmlsZXIuUHJvY2Vzc29yLnByb3RvdHlwZS5wcm9jZXNzSGVhcEpzUmV0SXRl
bV8pOgorICAgICAgICAoZGV2dG9vbHMucHJvZmlsZXIuUHJvY2Vzc29yLnByb3RvdHlwZS5wcm9j
ZXNzSGVhcFNhbXBsZUVuZF8pOgorICAgICAgICAoZGV2dG9vbHMucHJvZmlsZXIuUHJvY2Vzc29y
LnByb3RvdHlwZS5jcmVhdGVQcm9maWxlRm9yVmlldyk6CisgICAgICAgICogaW5zcGVjdG9yL2Rl
dnRvb2xzL1Rlc3RzLmpzOiBDb3BpZWQgZnJvbSBXZWJLaXQvY2hyb21pdW0vc3JjL2pzL1Rlc3Rz
LmpzLgorICAgICAgICAoLlRlc3RTdWl0ZSk6CisgICAgICAgICguVGVzdFN1aXRlLnByb3RvdHlw
ZS5mYWlsKToKKyAgICAgICAgKC5UZXN0U3VpdGUucHJvdG90eXBlLmFzc2VydEVxdWFscyk6Cisg
ICAgICAgICguVGVzdFN1aXRlLnByb3RvdHlwZS5hc3NlcnRUcnVlKToKKyAgICAgICAgKC5UZXN0
U3VpdGUucHJvdG90eXBlLmFzc2VydENvbnRhaW5zKToKKyAgICAgICAgKC5UZXN0U3VpdGUucHJv
dG90eXBlLnRha2VDb250cm9sKToKKyAgICAgICAgKC5UZXN0U3VpdGUucHJvdG90eXBlLnJlbGVh
c2VDb250cm9sKToKKyAgICAgICAgKC5UZXN0U3VpdGUucHJvdG90eXBlLnJlcG9ydE9rXyk6Cisg
ICAgICAgICguVGVzdFN1aXRlLnByb3RvdHlwZS5yZXBvcnRGYWlsdXJlXyk6CisgICAgICAgICgu
VGVzdFN1aXRlLnByb3RvdHlwZS5ydW5UZXN0KToKKyAgICAgICAgKC5UZXN0U3VpdGUucHJvdG90
eXBlLnNob3dQYW5lbCk6CisgICAgICAgICguVGVzdFN1aXRlLnByb3RvdHlwZS5hZGRTbmlmZmVy
LnJlY2VpdmVyLm1ldGhvZE5hbWUpOgorICAgICAgICAoLlRlc3RTdWl0ZS5wcm90b3R5cGUuYWRk
U25pZmZlcik6CisgICAgICAgICguVGVzdFN1aXRlLnByb3RvdHlwZS50ZXN0SG9zdElzUHJlc2Vu
dCk6CisgICAgICAgICguVGVzdFN1aXRlLnByb3RvdHlwZS50ZXN0RWxlbWVudHNUcmVlUm9vdCk6
CisgICAgICAgICguVGVzdFN1aXRlLnByb3RvdHlwZS50ZXN0TWFpblJlc291cmNlKToKKyAgICAg
ICAgKC5UZXN0U3VpdGUucHJvdG90eXBlLnRlc3RSZXNvdXJjZUNvbnRlbnRMZW5ndGgudGhpcy5h
ZGRTbmlmZmVyLik6CisgICAgICAgICguVGVzdFN1aXRlLnByb3RvdHlwZS50ZXN0UmVzb3VyY2VI
ZWFkZXJzKToKKyAgICAgICAgKC5UZXN0U3VpdGUucHJvdG90eXBlLnRlc3RDYWNoZWRSZXNvdXJj
ZU1pbWVUeXBlLnRoaXMuYWRkU25pZmZlci4pOgorICAgICAgICAoLlRlc3RTdWl0ZS5wcm90b3R5
cGUudGVzdENhY2hlZFJlc291cmNlTWltZVR5cGUpOgorICAgICAgICAoLlRlc3RTdWl0ZS5wcm90
b3R5cGUudGVzdFByb2ZpbGVyVGFiLmZpbmREaXNwbGF5ZWROb2RlKToKKyAgICAgICAgKC5UZXN0
U3VpdGUucHJvdG90eXBlLnRlc3RQcm9maWxlclRhYi5maW5kVmlzaWJsZVZpZXcpOgorICAgICAg
ICAoLlRlc3RTdWl0ZS5wcm90b3R5cGUudGVzdFByb2ZpbGVyVGFiKToKKyAgICAgICAgKC5UZXN0
U3VpdGUucHJvdG90eXBlLnRlc3RIZWFwUHJvZmlsZXIuZmluZERpc3BsYXllZE5vZGUpOgorICAg
ICAgICAoLlRlc3RTdWl0ZS5wcm90b3R5cGUudGVzdEhlYXBQcm9maWxlci5maW5kVmlzaWJsZVZp
ZXcpOgorICAgICAgICAoLlRlc3RTdWl0ZS5wcm90b3R5cGUudGVzdEhlYXBQcm9maWxlcik6Cisg
ICAgICAgICguVGVzdFN1aXRlLnByb3RvdHlwZS50ZXN0U2NyaXB0c1RhYklzUG9wdWxhdGVkT25J
bnNwZWN0ZWRQYWdlUmVmcmVzaC53YWl0VW50aWxTY3JpcHRJc1BhcnNlZCk6CisgICAgICAgICgu
VGVzdFN1aXRlLnByb3RvdHlwZS50ZXN0Tm9TY3JpcHREdXBsaWNhdGVzT25QYW5lbFN3aXRjaC5z
d2l0Y2hUb0VsZW1lbnRzVGFiKToKKyAgICAgICAgKC5UZXN0U3VpdGUucHJvdG90eXBlLnRlc3RO
b1NjcmlwdER1cGxpY2F0ZXNPblBhbmVsU3dpdGNoLnN3aXRjaFRvU2NyaXB0c1RhYik6CisgICAg
ICAgICguVGVzdFN1aXRlLnByb3RvdHlwZS50ZXN0Tm9TY3JpcHREdXBsaWNhdGVzT25QYW5lbFN3
aXRjaC5jaGVja1NjcmlwdHNQYW5lbCk6CisgICAgICAgICguVGVzdFN1aXRlLnByb3RvdHlwZS50
ZXN0Tm9TY3JpcHREdXBsaWNhdGVzT25QYW5lbFN3aXRjaC5jaGVja05vRHVwbGljYXRlcyk6Cisg
ICAgICAgICguVGVzdFN1aXRlLnByb3RvdHlwZS50ZXN0U2V0QnJlYWtwb2ludC50aGlzKToKKyAg
ICAgICAgKC5UZXN0U3VpdGUucHJvdG90eXBlLnRlc3RTZXRCcmVha3BvaW50KToKKyAgICAgICAg
KC5UZXN0U3VpdGUucHJvdG90eXBlLnRlc3RQYXVzZU9uRXhjZXB0aW9uKToKKyAgICAgICAgKC5U
ZXN0U3VpdGUucHJvdG90eXBlLnRlc3RQYXVzZVdoZW5Mb2FkaW5nRGV2VG9vbHMpOgorICAgICAg
ICAoLlRlc3RTdWl0ZS5wcm90b3R5cGUudGVzdFBhdXNlV2hlblNjcmlwdElzUnVubmluZy50ZXN0
U2NyaXB0UGF1c2VBZnRlckRlbGF5KToKKyAgICAgICAgKC5UZXN0U3VpdGUucHJvdG90eXBlLnRl
c3RQYXVzZVdoZW5TY3JpcHRJc1J1bm5pbmcudGVzdFNjcmlwdFBhdXNlKToKKyAgICAgICAgKC5U
ZXN0U3VpdGUucHJvdG90eXBlLnRlc3RQYXVzZVdoZW5TY3JpcHRJc1J1bm5pbmcpOgorICAgICAg
ICAoLlRlc3RTdWl0ZS5wcm90b3R5cGUub3B0aW9uc1RvU3RyaW5nXyk6CisgICAgICAgICguVGVz
dFN1aXRlLnByb3RvdHlwZS5ldmFsdWF0ZUluQ29uc29sZV8pOgorICAgICAgICAoLlRlc3RTdWl0
ZS5wcm90b3R5cGUudGVzdEV2YWxPbkNhbGxGcmFtZS53YWl0Rm9yQnJlYWtwb2ludEhpdCk6Cisg
ICAgICAgICguVGVzdFN1aXRlLnByb3RvdHlwZS50ZXN0Q29tcGxldGlvbk9uUGF1c2UpOgorICAg
ICAgICAoLlRlc3RTdWl0ZS5wcm90b3R5cGUudGVzdENvbXBsZXRpb25PblBhdXNlLnRlc3RMb2Nh
bHNDb21wbGV0aW9uKToKKyAgICAgICAgKC5UZXN0U3VpdGUucHJvdG90eXBlLnRlc3RDb21wbGV0
aW9uT25QYXVzZS50ZXN0VGhpc0NvbXBsZXRpb24pOgorICAgICAgICAoLlRlc3RTdWl0ZS5wcm90
b3R5cGUudGVzdENvbXBsZXRpb25PblBhdXNlLnRlc3RGaWVsZENvbXBsZXRpb24pOgorICAgICAg
ICAoLlRlc3RTdWl0ZS5wcm90b3R5cGUudGVzdENvbXBsZXRpb25PblBhdXNlLmNoZWNrQ29tcGxl
dGlvbnMpOgorICAgICAgICAoLlRlc3RTdWl0ZS5wcm90b3R5cGUudGVzdEF1dG9Db250aW51ZU9u
U3ludGF4RXJyb3IpOgorICAgICAgICAoLlRlc3RTdWl0ZS5wcm90b3R5cGUuX2NoZWNrRXhlY3V0
aW9uTGluZSk6CisgICAgICAgICguVGVzdFN1aXRlLnByb3RvdHlwZS5fc2NyaXB0c0FyZVBhcnNl
ZCk6CisgICAgICAgICguVGVzdFN1aXRlLnByb3RvdHlwZS5fd2FpdEZvclNjcmlwdFBhdXNlKToK
KyAgICAgICAgKC5UZXN0U3VpdGUucHJvdG90eXBlLl9jaGVja1NvdXJjZUZyYW1lV2hlbkxvYWRl
ZC5jaGVja0V4ZWNMaW5lKToKKyAgICAgICAgKC5UZXN0U3VpdGUucHJvdG90eXBlLl9jaGVja1Nv
dXJjZUZyYW1lV2hlbkxvYWRlZCk6CisgICAgICAgICguVGVzdFN1aXRlLnByb3RvdHlwZS5fcGVy
Zm9ybVN0ZXBzLmRvTmV4dEFjdGlvbik6CisgICAgICAgICguVGVzdFN1aXRlLnByb3RvdHlwZS5f
cGVyZm9ybVN0ZXBzKToKKyAgICAgICAgKC5UZXN0U3VpdGUucHJvdG90eXBlLl9leGVjdXRlQ29k
ZVdoZW5TY3JpcHRzQXJlUGFyc2VkLmV4ZWN1dGVGdW5jdGlvbkluSW5zcGVjdGVkUGFnZSk6Cisg
ICAgICAgICguVGVzdFN1aXRlLnByb3RvdHlwZS5fd2FpdFVudGlsU2NyaXB0c0FyZVBhcnNlZC53
YWl0Rm9yQWxsU2NyaXB0cyk6CisgICAgICAgICguVGVzdFN1aXRlLnByb3RvdHlwZS5fd2FpdFVu
dGlsU2NyaXB0c0FyZVBhcnNlZCk6CisgICAgICAgICguVGVzdFN1aXRlLnByb3RvdHlwZS5fZXhl
Y3V0ZUZ1bmN0aW9uRm9yU3RlcFRlc3QpOgorICAgICAgICAoLlRlc3RTdWl0ZS5wcm90b3R5cGUu
dGVzdFN0ZXBPdmVyKToKKyAgICAgICAgKC5UZXN0U3VpdGUucHJvdG90eXBlLnRlc3RTdGVwT3V0
KToKKyAgICAgICAgKC5UZXN0U3VpdGUucHJvdG90eXBlLnRlc3RTdGVwSW4pOgorICAgICAgICAo
LlRlc3RTdWl0ZS5wcm90b3R5cGUuX2V2YWx1YXRlWHBhdGgpOgorICAgICAgICAoLlRlc3RTdWl0
ZS5wcm90b3R5cGUuX2ZpbmROb2RlKToKKyAgICAgICAgKC5UZXN0U3VpdGUucHJvdG90eXBlLl9m
aW5kVGV4dCk6CisgICAgICAgICguVGVzdFN1aXRlLnByb3RvdHlwZS5fbm9kZUl0ZXJhdG9yKToK
KyAgICAgICAgKC5UZXN0U3VpdGUucHJvdG90eXBlLl9jaGVja1Njb3BlU2VjdGlvbkRpdik6Cisg
ICAgICAgICguVGVzdFN1aXRlLnByb3RvdHlwZS5fZXhwYW5kU2NvcGVTZWN0aW9ucy51cGRhdGVM
aXN0ZW5lcik6CisgICAgICAgICguVGVzdFN1aXRlLnByb3RvdHlwZS5fZXhwYW5kU2NvcGVTZWN0
aW9ucyk6CisgICAgICAgICguVGVzdFN1aXRlLnByb3RvdHlwZS50ZXN0RXhwYW5kU2NvcGUpOgor
ICAgICAgICAoLlRlc3RTdWl0ZS5wcm90b3R5cGUudGVzdEV4cGFuZFNjb3BlLmV4YW1pbmVTY29w
ZXMpOgorICAgICAgICAoLlRlc3RTdWl0ZS5wcm90b3R5cGUuX2ZpbmRDaGlsZFByb3BlcnR5KToK
KyAgICAgICAgKC5UZXN0U3VpdGUucHJvdG90eXBlLl9ob29rR2V0UHJvcGVydGllc0NhbGxiYWNr
LmFjY2Vzc29yLmdldFByb3BlcnRpZXMpOgorICAgICAgICAoLlRlc3RTdWl0ZS5wcm90b3R5cGUu
X2hvb2tHZXRQcm9wZXJ0aWVzQ2FsbGJhY2sudHJ5KToKKyAgICAgICAgKC5UZXN0U3VpdGUucHJv
dG90eXBlLl9ob29rR2V0UHJvcGVydGllc0NhbGxiYWNrKToKKyAgICAgICAgKC5UZXN0U3VpdGUu
cHJvdG90eXBlLnRlc3REZWJ1Z0ludHJpbnNpY1Byb3BlcnRpZXMuZXhwYW5kTG9jYWxTY29wZSk6
CisgICAgICAgICguVGVzdFN1aXRlLnByb3RvdHlwZS50ZXN0RGVidWdJbnRyaW5zaWNQcm9wZXJ0
aWVzKToKKyAgICAgICAgKC5UZXN0U3VpdGUucHJvdG90eXBlLnRlc3REZWJ1Z0ludHJpbnNpY1By
b3BlcnRpZXMuZXhwYW5kQW5kQ2hlY2tOZXh0UHJvcGVydHkpOgorICAgICAgICAoLlRlc3RTdWl0
ZS5wcm90b3R5cGUudGVzdERlYnVnSW50cmluc2ljUHJvcGVydGllcy5jaGVja1Byb3BlcnR5KToK
KyAgICAgICAgKC5UZXN0U3VpdGUuY3JlYXRlS2V5RXZlbnQpOgorICAgICAgICAoLlRlc3RTdWl0
ZS5wcm90b3R5cGUudGVzdENvbnNvbGVMb2cuYXNzZXJ0TmV4dCk6CisgICAgICAgICguVGVzdFN1
aXRlLnByb3RvdHlwZS50ZXN0Q29uc29sZUxvZyk6CisgICAgICAgICguVGVzdFN1aXRlLnByb3Rv
dHlwZS50ZXN0RXZhbEdsb2JhbC5pbml0RXZhbCk6CisgICAgICAgICguVGVzdFN1aXRlLnByb3Rv
dHlwZS50ZXN0RXZhbEdsb2JhbCk6CisgICAgICAgICguVGVzdFN1aXRlLnByb3RvdHlwZS50ZXN0
TWVzc2FnZUxvb3BSZWVudHJhbnQudGhpcyk6CisgICAgICAgICguVGVzdFN1aXRlLnByb3RvdHlw
ZS50ZXN0U2hvd1N0b3JhZ2VQYW5lbC50aGlzLmFkZFNuaWZmZXIuKToKKyAgICAgICAgKC5UZXN0
U3VpdGUucHJvdG90eXBlLnRlc3RTaG93U3RvcmFnZVBhbmVsLnRoaXMuYWRkU25pZmZlcik6Cisg
ICAgICAgICgudWlUZXN0cy5ydW5BbGxUZXN0cyk6CisgICAgICAgICgudWlUZXN0cy5ydW5UZXN0
KToKKyAgICAgICAgKC5UZXN0U3VpdGUucHJvdG90eXBlLnRlc3RTaG93U3RvcmFnZVBhbmVsLnRo
aXMpOgorICAgICAgICAoLik6CisgICAgICAgICguVGVzdFN1aXRlLnByb3RvdHlwZS50ZXN0U2hv
d1N0b3JhZ2VQYW5lbCk6CisgICAgICAgICogaW5zcGVjdG9yL2RldnRvb2xzL2NvZGVtYXAuanM6
IEFkZGVkLgorICAgICAgICAoZGV2dG9vbHMucHJvZmlsZXIuQ29kZU1hcCk6CisgICAgICAgIChk
ZXZ0b29scy5wcm9maWxlci5Db2RlTWFwLnByb3RvdHlwZS5hZGRDb2RlKToKKyAgICAgICAgKGRl
dnRvb2xzLnByb2ZpbGVyLkNvZGVNYXAucHJvdG90eXBlLm1vdmVDb2RlKToKKyAgICAgICAgKGRl
dnRvb2xzLnByb2ZpbGVyLkNvZGVNYXAucHJvdG90eXBlLmRlbGV0ZUNvZGUpOgorICAgICAgICAo
ZGV2dG9vbHMucHJvZmlsZXIuQ29kZU1hcC5wcm90b3R5cGUuYWRkTGlicmFyeSk6CisgICAgICAg
IChkZXZ0b29scy5wcm9maWxlci5Db2RlTWFwLnByb3RvdHlwZS5hZGRTdGF0aWNDb2RlKToKKyAg
ICAgICAgKGRldnRvb2xzLnByb2ZpbGVyLkNvZGVNYXAucHJvdG90eXBlLm1hcmtQYWdlc18pOgor
ICAgICAgICAoZGV2dG9vbHMucHJvZmlsZXIuQ29kZU1hcC5wcm90b3R5cGUuaXNBZGRyZXNzQmVs
b25nc1RvXyk6CisgICAgICAgIChkZXZ0b29scy5wcm9maWxlci5Db2RlTWFwLnByb3RvdHlwZS5m
aW5kSW5UcmVlXyk6CisgICAgICAgIChkZXZ0b29scy5wcm9maWxlci5Db2RlTWFwLnByb3RvdHlw
ZS5maW5kRW50cnkpOgorICAgICAgICAoZGV2dG9vbHMucHJvZmlsZXIuQ29kZU1hcC5wcm90b3R5
cGUuZmluZER5bmFtaWNFbnRyeUJ5U3RhcnRBZGRyZXNzKToKKyAgICAgICAgKGRldnRvb2xzLnBy
b2ZpbGVyLkNvZGVNYXAucHJvdG90eXBlLmdldEFsbER5bmFtaWNFbnRyaWVzKToKKyAgICAgICAg
KGRldnRvb2xzLnByb2ZpbGVyLkNvZGVNYXAucHJvdG90eXBlLmdldEFsbFN0YXRpY0VudHJpZXMp
OgorICAgICAgICAoZGV2dG9vbHMucHJvZmlsZXIuQ29kZU1hcC5wcm90b3R5cGUuZ2V0QWxsTGli
cmFyaWVzRW50cmllcyk6CisgICAgICAgIChkZXZ0b29scy5wcm9maWxlci5Db2RlTWFwLkNvZGVF
bnRyeSk6CisgICAgICAgIChkZXZ0b29scy5wcm9maWxlci5Db2RlTWFwLkNvZGVFbnRyeS5wcm90
b3R5cGUuZ2V0TmFtZSk6CisgICAgICAgIChkZXZ0b29scy5wcm9maWxlci5Db2RlTWFwLkNvZGVF
bnRyeS5wcm90b3R5cGUudG9TdHJpbmcpOgorICAgICAgICAoZGV2dG9vbHMucHJvZmlsZXIuQ29k
ZU1hcC5OYW1lR2VuZXJhdG9yKToKKyAgICAgICAgKGRldnRvb2xzLnByb2ZpbGVyLkNvZGVNYXAu
TmFtZUdlbmVyYXRvci5wcm90b3R5cGUuZ2V0TmFtZSk6CisgICAgICAgICogaW5zcGVjdG9yL2Rl
dnRvb2xzL2NvbnNhcnJheS5qczogQWRkZWQuCisgICAgICAgIChDb25zQXJyYXkpOgorICAgICAg
ICAoQ29uc0FycmF5LnByb3RvdHlwZS5jb25jYXQpOgorICAgICAgICAoQ29uc0FycmF5LnByb3Rv
dHlwZS5hdEVuZCk6CisgICAgICAgIChDb25zQXJyYXkucHJvdG90eXBlLm5leHQpOgorICAgICAg
ICAoQ29uc0FycmF5LkNlbGwpOgorICAgICAgICAqIGluc3BlY3Rvci9kZXZ0b29scy9jc3ZwYXJz
ZXIuanM6IEFkZGVkLgorICAgICAgICAoZGV2dG9vbHMucHJvZmlsZXIuQ3N2UGFyc2VyKToKKyAg
ICAgICAgKGRldnRvb2xzLnByb2ZpbGVyLkNzdlBhcnNlci5DU1ZfRklFTERfUkVfKToKKyAgICAg
ICAgKiBpbnNwZWN0b3IvZGV2dG9vbHMvZGV2VG9vbHMuY3NzOiBDb3BpZWQgZnJvbSBXZWJLaXQv
Y2hyb21pdW0vc3JjL2pzL2RldlRvb2xzLmNzcy4KKyAgICAgICAgKC5kYXRhLWdyaWQgdGFibGUp
OgorICAgICAgICAoYm9keS5hdHRhY2hlZCAjdG9vbGJhcik6CisgICAgICAgIChib2R5LnBsYXRm
b3JtLXdpbmRvd3MgI3Rvb2xiYXIsIGJvZHkucGxhdGZvcm0td2luZG93cy5pbmFjdGl2ZSAjdG9v
bGJhcik6CisgICAgICAgIChib2R5LmRldGFjaGVkLnBsYXRmb3JtLW1hYy1sZW9wYXJkICN0b29s
YmFyKToKKyAgICAgICAgKGJvZHkuZGV0YWNoZWQucGxhdGZvcm0tbWFjLWxlb3BhcmQuaW5hY3Rp
dmUgI3Rvb2xiYXIpOgorICAgICAgICAoYm9keS5kZXRhY2hlZC5wbGF0Zm9ybS1tYWMtc25vd2xl
b3BhcmQgI3Rvb2xiYXIpOgorICAgICAgICAoYm9keS5kZXRhY2hlZC5wbGF0Zm9ybS1tYWMtc25v
d2xlb3BhcmQuaW5hY3RpdmUgI3Rvb2xiYXIpOgorICAgICAgICAoYm9keS5wbGF0Zm9ybS1saW51
eCAjc2NyaXB0cy1maWxlcyk6CisgICAgICAgICguaGVhcC1zbmFwc2hvdC1zdGF0dXMtYmFyLWl0
ZW0gLmdseXBoKToKKyAgICAgICAgKC5oZWFwLXNuYXBzaG90LXNpZGViYXItdHJlZS1pdGVtIC5p
Y29uKToKKyAgICAgICAgKC5oZWFwLXNuYXBzaG90LXNpZGViYXItdHJlZS1pdGVtLnNtYWxsIC5p
Y29uKToKKyAgICAgICAgKC5oZWFwLXNuYXBzaG90LXZpZXcpOgorICAgICAgICAoLmhlYXAtc25h
cHNob3Qtdmlldy52aXNpYmxlKToKKyAgICAgICAgKC5oZWFwLXNuYXBzaG90LXZpZXcgLmRhdGEt
Z3JpZCk6CisgICAgICAgICguaGVhcC1zbmFwc2hvdC12aWV3IC5kYXRhLWdyaWQgdGguY291bnQt
Y29sdW1uKToKKyAgICAgICAgKC5oZWFwLXNuYXBzaG90LXZpZXcgLmRhdGEtZ3JpZCB0ZC5jb3Vu
dC1jb2x1bW4pOgorICAgICAgICAoLmhlYXAtc25hcHNob3QtdmlldyAuZGF0YS1ncmlkIHRoLnNp
emUtY29sdW1uKToKKyAgICAgICAgKC5oZWFwLXNuYXBzaG90LXZpZXcgLmRhdGEtZ3JpZCB0ZC5z
aXplLWNvbHVtbik6CisgICAgICAgICguaGVhcC1zbmFwc2hvdC12aWV3IC5kYXRhLWdyaWQgdGgu
Y291bnREZWx0YS1jb2x1bW4pOgorICAgICAgICAoLmhlYXAtc25hcHNob3QtdmlldyAuZGF0YS1n
cmlkIHRkLmNvdW50RGVsdGEtY29sdW1uKToKKyAgICAgICAgKC5oZWFwLXNuYXBzaG90LXZpZXcg
LmRhdGEtZ3JpZCB0aC5zaXplRGVsdGEtY29sdW1uKToKKyAgICAgICAgKC5oZWFwLXNuYXBzaG90
LXZpZXcgLmRhdGEtZ3JpZCB0ZC5zaXplRGVsdGEtY29sdW1uKToKKyAgICAgICAgKCNoZWFwLXNu
YXBzaG90LXN1bW1hcnktY29udGFpbmVyKToKKyAgICAgICAgKC5oZWFwLXNuYXBzaG90LXN1bW1h
cnkpOgorICAgICAgICAoLmhlYXAtc25hcHNob3Qtc3VtbWFyeSBjYW52YXMuc3VtbWFyeS1ncmFw
aCk6CisgICAgICAgICguaGVhcC1zbmFwc2hvdC1zdW1tYXJ5LWxhYmVsKToKKyAgICAgICAgKC5z
ZWN0aW9uID4gLmhlYWRlcik6CisgICAgICAgICguY29uc29sZS1ncm91cC1tZXNzYWdlcyAuc2Vj
dGlvbiA+IC5oZWFkZXIpOgorICAgICAgICAoI3Jlc291cmNlcy1maWx0ZXIpOgorICAgICAgICAo
LmNydW1icyAuY3J1bWIpOgorICAgICAgICAoLmNydW1icyAuY3J1bWIuc2VsZWN0ZWQpOgorICAg
ICAgICAoLmNydW1icyAuY3J1bWIuc2VsZWN0ZWQ6aG92ZXIpOgorICAgICAgICAoLmNydW1icyAu
Y3J1bWIuc2VsZWN0ZWQuZW5kLCAuY3J1bWJzIC5jcnVtYi5zZWxlY3RlZC5lbmQ6aG92ZXIpOgor
ICAgICAgICAoLmNydW1icyAuY3J1bWI6aG92ZXIpOgorICAgICAgICAoLmNydW1icyAuY3J1bWIu
ZGltbWVkOmhvdmVyKToKKyAgICAgICAgKC5jcnVtYnMgLmNydW1iLmVuZDpob3Zlcik6CisgICAg
ICAgIChib2R5LmRyYXdlci12aXNpYmxlICNtYWluLXN0YXR1cy1iYXIpOgorICAgICAgICAoLnN0
YXR1cy1iYXIpOgorICAgICAgICAoYnV0dG9uLnN0YXR1cy1iYXItaXRlbSk6CisgICAgICAgIChz
ZWxlY3Quc3RhdHVzLWJhci1pdGVtOmFjdGl2ZSk6CisgICAgICAgICgjZHJhd2VyKToKKyAgICAg
ICAgKHNlbGVjdC5zdGF0dXMtYmFyLWl0ZW0pOgorICAgICAgICAoLnNjb3BlLWJhciBsaS5zZWxl
Y3RlZCk6CisgICAgICAgICguc2NvcGUtYmFyIGxpOmFjdGl2ZSk6CisgICAgICAgICgudGltZWxp
bmUtY2F0ZWdvcnktc3RhdHVzYmFyLWl0ZW0gaW5wdXQpOgorICAgICAgICAqIGluc3BlY3Rvci9k
ZXZ0b29scy9kZXZ0b29scy5odG1sOiBBZGRlZC4KKyAgICAgICAgKiBpbnNwZWN0b3IvZGV2dG9v
bHMvZGV2dG9vbHMucXJjOiBBZGRlZC4KKyAgICAgICAgKiBpbnNwZWN0b3IvZGV2dG9vbHMvbG9n
cmVhZGVyLmpzOiBBZGRlZC4KKyAgICAgICAgKGRldnRvb2xzLnByb2ZpbGVyLkxvZ1JlYWRlcik6
CisgICAgICAgIChkZXZ0b29scy5wcm9maWxlci5Mb2dSZWFkZXIucHJvdG90eXBlLmNyZWF0ZUFk
ZHJlc3NQYXJzZXIpOgorICAgICAgICAoZGV2dG9vbHMucHJvZmlsZXIuTG9nUmVhZGVyLnByb3Rv
dHlwZS5leHBhbmRBbGlhcyk6CisgICAgICAgIChkZXZ0b29scy5wcm9maWxlci5Mb2dSZWFkZXIu
cHJvdG90eXBlLnByaW50RXJyb3IpOgorICAgICAgICAoZGV2dG9vbHMucHJvZmlsZXIuTG9nUmVh
ZGVyLnByb3RvdHlwZS5wcm9jZXNzTG9nQ2h1bmspOgorICAgICAgICAoZGV2dG9vbHMucHJvZmls
ZXIuTG9nUmVhZGVyLnByb3RvdHlwZS5wcm9jZXNzTG9nTGluZSk6CisgICAgICAgIChkZXZ0b29s
cy5wcm9maWxlci5Mb2dSZWFkZXIucHJvdG90eXBlLnByb2Nlc3NTdGFjayk6CisgICAgICAgIChk
ZXZ0b29scy5wcm9maWxlci5Mb2dSZWFkZXIucHJvdG90eXBlLnNraXBEaXNwYXRjaCk6CisgICAg
ICAgIChkZXZ0b29scy5wcm9maWxlci5Mb2dSZWFkZXIucHJvdG90eXBlLmRpc3BhdGNoTG9nUm93
Xyk6CisgICAgICAgIChkZXZ0b29scy5wcm9maWxlci5Mb2dSZWFkZXIucHJvdG90eXBlLmV4cGFu
ZEJhY2tSZWZfKToKKyAgICAgICAgKGRldnRvb2xzLnByb2ZpbGVyLkxvZ1JlYWRlci5wcm90b3R5
cGUuaW5pdEJhY2tSZWZzQ29tbWFuZHNfKToKKyAgICAgICAgKGRldnRvb2xzLnByb2ZpbGVyLkxv
Z1JlYWRlci5wcm90b3R5cGUucHJvY2Vzc0FsaWFzXyk6CisgICAgICAgIChkZXZ0b29scy5wcm9m
aWxlci5Mb2dSZWFkZXIucHJvdG90eXBlLnByb2Nlc3NMb2dfKToKKyAgICAgICAgKGRldnRvb2xz
LnByb2ZpbGVyLkxvZ1JlYWRlci5wcm90b3R5cGUucHJvY2Vzc1JlcGVhdF8pOgorICAgICAgICAq
IGluc3BlY3Rvci9kZXZ0b29scy9wcm9maWxlLmpzOiBBZGRlZC4KKyAgICAgICAgKGRldnRvb2xz
LnByb2ZpbGVyLlByb2ZpbGUpOgorICAgICAgICAoZGV2dG9vbHMucHJvZmlsZXIuUHJvZmlsZS5w
cm90b3R5cGUuc2tpcFRoaXNGdW5jdGlvbik6CisgICAgICAgIChkZXZ0b29scy5wcm9maWxlci5Q
cm9maWxlLnByb3RvdHlwZS5oYW5kbGVVbmtub3duQ29kZSk6CisgICAgICAgIChkZXZ0b29scy5w
cm9maWxlci5Qcm9maWxlLnByb3RvdHlwZS5hZGRMaWJyYXJ5KToKKyAgICAgICAgKGRldnRvb2xz
LnByb2ZpbGVyLlByb2ZpbGUucHJvdG90eXBlLmFkZFN0YXRpY0NvZGUpOgorICAgICAgICAoZGV2
dG9vbHMucHJvZmlsZXIuUHJvZmlsZS5wcm90b3R5cGUuYWRkQ29kZSk6CisgICAgICAgIChkZXZ0
b29scy5wcm9maWxlci5Qcm9maWxlLnByb3RvdHlwZS5hZGRDb2RlQWxpYXMpOgorICAgICAgICAo
ZGV2dG9vbHMucHJvZmlsZXIuUHJvZmlsZS5wcm90b3R5cGUubW92ZUNvZGUpOgorICAgICAgICAo
ZGV2dG9vbHMucHJvZmlsZXIuUHJvZmlsZS5wcm90b3R5cGUuZGVsZXRlQ29kZSk6CisgICAgICAg
IChkZXZ0b29scy5wcm9maWxlci5Qcm9maWxlLnByb3RvdHlwZS5zYWZlTW92ZUR5bmFtaWNDb2Rl
KToKKyAgICAgICAgKGRldnRvb2xzLnByb2ZpbGVyLlByb2ZpbGUucHJvdG90eXBlLnNhZmVEZWxl
dGVEeW5hbWljQ29kZSk6CisgICAgICAgIChkZXZ0b29scy5wcm9maWxlci5Qcm9maWxlLnByb3Rv
dHlwZS5maW5kRW50cnkpOgorICAgICAgICAoZGV2dG9vbHMucHJvZmlsZXIuUHJvZmlsZS5wcm90
b3R5cGUucmVjb3JkVGljayk6CisgICAgICAgIChkZXZ0b29scy5wcm9maWxlci5Qcm9maWxlLnBy
b3RvdHlwZS5yZXNvbHZlQW5kRmlsdGVyRnVuY3NfKToKKyAgICAgICAgKGRldnRvb2xzLnByb2Zp
bGVyLlByb2ZpbGUucHJvdG90eXBlLnRyYXZlcnNlVG9wRG93blRyZWUpOgorICAgICAgICAoZGV2
dG9vbHMucHJvZmlsZXIuUHJvZmlsZS5wcm90b3R5cGUudHJhdmVyc2VCb3R0b21VcFRyZWUpOgor
ICAgICAgICAoZGV2dG9vbHMucHJvZmlsZXIuUHJvZmlsZS5wcm90b3R5cGUuZ2V0VG9wRG93blBy
b2ZpbGUpOgorICAgICAgICAoZGV2dG9vbHMucHJvZmlsZXIuUHJvZmlsZS5wcm90b3R5cGUuZ2V0
Qm90dG9tVXBQcm9maWxlKToKKyAgICAgICAgKGRldnRvb2xzLnByb2ZpbGVyLlByb2ZpbGUucHJv
dG90eXBlLmdldFRyZWVQcm9maWxlXyk6CisgICAgICAgIChkZXZ0b29scy5wcm9maWxlci5Qcm9m
aWxlLnByb3RvdHlwZS5nZXRGbGF0UHJvZmlsZSk6CisgICAgICAgIChkZXZ0b29scy5wcm9maWxl
ci5Qcm9maWxlLkR5bmFtaWNDb2RlRW50cnkpOgorICAgICAgICAoZGV2dG9vbHMucHJvZmlsZXIu
UHJvZmlsZS5EeW5hbWljQ29kZUVudHJ5LnByb3RvdHlwZS5nZXROYW1lKToKKyAgICAgICAgKGRl
dnRvb2xzLnByb2ZpbGVyLlByb2ZpbGUuRHluYW1pY0NvZGVFbnRyeS5wcm90b3R5cGUuZ2V0UmF3
TmFtZSk6CisgICAgICAgIChkZXZ0b29scy5wcm9maWxlci5Qcm9maWxlLkR5bmFtaWNDb2RlRW50
cnkucHJvdG90eXBlLmlzSlNGdW5jdGlvbik6CisgICAgICAgIChkZXZ0b29scy5wcm9maWxlci5D
YWxsVHJlZSk6CisgICAgICAgIChkZXZ0b29scy5wcm9maWxlci5DYWxsVHJlZS5wcm90b3R5cGUu
Z2V0Um9vdCk6CisgICAgICAgIChkZXZ0b29scy5wcm9maWxlci5DYWxsVHJlZS5wcm90b3R5cGUu
YWRkUGF0aCk6CisgICAgICAgIChkZXZ0b29scy5wcm9maWxlci5DYWxsVHJlZS5wcm90b3R5cGUu
ZmluZE9yQWRkQ2hpbGQpOgorICAgICAgICAoZGV2dG9vbHMucHJvZmlsZXIuQ2FsbFRyZWUucHJv
dG90eXBlLmNsb25lU3VidHJlZSk6CisgICAgICAgIChkZXZ0b29scy5wcm9maWxlci5DYWxsVHJl
ZS5wcm90b3R5cGUuY29tcHV0ZVRvdGFsV2VpZ2h0cyk6CisgICAgICAgIChkZXZ0b29scy5wcm9m
aWxlci5DYWxsVHJlZS5wcm90b3R5cGUudHJhdmVyc2UpOgorICAgICAgICAoZGV2dG9vbHMucHJv
ZmlsZXIuQ2FsbFRyZWUucHJvdG90eXBlLnRyYXZlcnNlSW5EZXB0aCk6CisgICAgICAgIChkZXZ0
b29scy5wcm9maWxlci5DYWxsVHJlZS5Ob2RlKToKKyAgICAgICAgKGRldnRvb2xzLnByb2ZpbGVy
LkNhbGxUcmVlLk5vZGUucHJvdG90eXBlLmFkZENoaWxkKToKKyAgICAgICAgKGRldnRvb2xzLnBy
b2ZpbGVyLkNhbGxUcmVlLk5vZGUucHJvdG90eXBlLmNvbXB1dGVUb3RhbFdlaWdodCk6CisgICAg
ICAgIChkZXZ0b29scy5wcm9maWxlci5DYWxsVHJlZS5Ob2RlLnByb3RvdHlwZS5maW5kQ2hpbGQp
OgorICAgICAgICAoZGV2dG9vbHMucHJvZmlsZXIuQ2FsbFRyZWUuTm9kZS5wcm90b3R5cGUuZmlu
ZE9yQWRkQ2hpbGQpOgorICAgICAgICAoZGV2dG9vbHMucHJvZmlsZXIuQ2FsbFRyZWUuTm9kZS5w
cm90b3R5cGUuZm9yRWFjaENoaWxkKToKKyAgICAgICAgKGRldnRvb2xzLnByb2ZpbGVyLkNhbGxU
cmVlLk5vZGUucHJvdG90eXBlLndhbGtVcFRvUm9vdCk6CisgICAgICAgIChkZXZ0b29scy5wcm9m
aWxlci5DYWxsVHJlZS5Ob2RlLnByb3RvdHlwZS5kZXNjZW5kVG9DaGlsZCk6CisgICAgICAgICog
aW5zcGVjdG9yL2RldnRvb2xzL3Byb2ZpbGVfdmlldy5qczogQWRkZWQuCisgICAgICAgIChkZXZ0
b29scy5wcm9maWxlci5WaWV3QnVpbGRlcik6CisgICAgICAgIChkZXZ0b29scy5wcm9maWxlci5W
aWV3QnVpbGRlci5wcm90b3R5cGUuYnVpbGRWaWV3KToKKyAgICAgICAgKGRldnRvb2xzLnByb2Zp
bGVyLlZpZXdCdWlsZGVyLnByb3RvdHlwZS5jcmVhdGVWaWV3KToKKyAgICAgICAgKGRldnRvb2xz
LnByb2ZpbGVyLlZpZXdCdWlsZGVyLnByb3RvdHlwZS5jcmVhdGVWaWV3Tm9kZSk6CisgICAgICAg
IChkZXZ0b29scy5wcm9maWxlci5Qcm9maWxlVmlldyk6CisgICAgICAgIChkZXZ0b29scy5wcm9m
aWxlci5Qcm9maWxlVmlldy5wcm90b3R5cGUuc29ydCk6CisgICAgICAgIChkZXZ0b29scy5wcm9m
aWxlci5Qcm9maWxlVmlldy5wcm90b3R5cGUudHJhdmVyc2UpOgorICAgICAgICAoZGV2dG9vbHMu
cHJvZmlsZXIuUHJvZmlsZVZpZXcuTm9kZSk6CisgICAgICAgIChkZXZ0b29scyk6CisgICAgICAg
IChkZXZ0b29scy5wcm9maWxlci5Qcm9maWxlVmlldy5Ob2RlLnByb3RvdHlwZS5hZGRDaGlsZCk6
CisgICAgICAgIChkZXZ0b29scy5wcm9maWxlci5Qcm9maWxlVmlldy5Ob2RlLnByb3RvdHlwZS5z
b3J0Q2hpbGRyZW4pOgorICAgICAgICAqIGluc3BlY3Rvci9kZXZ0b29scy9zcGxheXRyZWUuanM6
IEFkZGVkLgorICAgICAgICAoZ29vZy5zdHJ1Y3RzLlNwbGF5VHJlZSk6CisgICAgICAgIChnb29n
LnN0cnVjdHMuU3BsYXlUcmVlLnByb3RvdHlwZS5pc0VtcHR5KToKKyAgICAgICAgKGdvb2cuc3Ry
dWN0cy5TcGxheVRyZWUucHJvdG90eXBlLmluc2VydCk6CisgICAgICAgIChnb29nLnN0cnVjdHMu
U3BsYXlUcmVlLnByb3RvdHlwZS5yZW1vdmUpOgorICAgICAgICAoZ29vZy5zdHJ1Y3RzLlNwbGF5
VHJlZS5wcm90b3R5cGUuZmluZCk6CisgICAgICAgIChnb29nLnN0cnVjdHMuU3BsYXlUcmVlLnBy
b3RvdHlwZS5maW5kTWluKToKKyAgICAgICAgKGdvb2cuc3RydWN0cy5TcGxheVRyZWUucHJvdG90
eXBlLmZpbmRNYXgpOgorICAgICAgICAoZ29vZy5zdHJ1Y3RzLlNwbGF5VHJlZS5wcm90b3R5cGUu
ZmluZEdyZWF0ZXN0TGVzc1RoYW4pOgorICAgICAgICAoZ29vZy5zdHJ1Y3RzLlNwbGF5VHJlZS5w
cm90b3R5cGUuc3BsYXlfKToKKyAgICAgICAgKGdvb2cuc3RydWN0cy5TcGxheVRyZWUucHJvdG90
eXBlLnRyYXZlcnNlXyk6CisgICAgICAgIChnb29nLnN0cnVjdHMuU3BsYXlUcmVlLk5vZGUpOgor
ICAgICAgICAqIGluc3BlY3Rvci9kZXZ0b29scy90aWNrcHJvY2Vzc29yLWRyaXZlci5qczogQWRk
ZWQuCisgICAgICAgIChwcm9jZXNzQXJndW1lbnRzKToKKyAgICAgICAgKiBpbnNwZWN0b3IvZGV2
dG9vbHMvdGlja3Byb2Nlc3Nvci5qczogQWRkZWQuCisgICAgICAgIChQcm9maWxlLnRoaXMuc2tp
cFRoaXNGdW5jdGlvbik6CisgICAgICAgIChQcm9maWxlKToKKyAgICAgICAgKCk6CisgICAgICAg
IChpbmhlcml0cyk6CisgICAgICAgIChTbmFwc2hvdExvZ1Byb2Nlc3Nvci5Qcm9maWxlLnByb3Rv
dHlwZS5oYW5kbGVVbmtub3duQ29kZSk6CisgICAgICAgIChTbmFwc2hvdExvZ1Byb2Nlc3Nvcik6
CisgICAgICAgIChTbmFwc2hvdExvZ1Byb2Nlc3Nvci5wcm90b3R5cGUucHJvY2Vzc0NvZGVDcmVh
dGlvbik6CisgICAgICAgIChTbmFwc2hvdExvZ1Byb2Nlc3Nvci5wcm90b3R5cGUucHJvY2Vzc0Nv
ZGVNb3ZlKToKKyAgICAgICAgKFNuYXBzaG90TG9nUHJvY2Vzc29yLnByb3RvdHlwZS5wcm9jZXNz
Q29kZURlbGV0ZSk6CisgICAgICAgIChTbmFwc2hvdExvZ1Byb2Nlc3Nvci5wcm90b3R5cGUucHJv
Y2Vzc1NuYXBzaG90UG9zaXRpb24pOgorICAgICAgICAoU25hcHNob3RMb2dQcm9jZXNzb3IucHJv
dG90eXBlLnByb2Nlc3NMb2dGaWxlKToKKyAgICAgICAgKFNuYXBzaG90TG9nUHJvY2Vzc29yLnBy
b3RvdHlwZS5nZXRTZXJpYWxpemVkRW50cnlOYW1lKToKKyAgICAgICAgKFRpY2tQcm9jZXNzb3Iu
UHJvZmlsZS5wcm90b3R5cGUuaGFuZGxlVW5rbm93bkNvZGUpOgorICAgICAgICAoVGlja1Byb2Nl
c3Nvcik6CisgICAgICAgIChUaWNrUHJvY2Vzc29yLnByb3RvdHlwZS5wcmludEVycm9yKToKKyAg
ICAgICAgKFRpY2tQcm9jZXNzb3IucHJvdG90eXBlLnNldENvZGVUeXBlKToKKyAgICAgICAgKFRp
Y2tQcm9jZXNzb3IucHJvdG90eXBlLmlzU2hhcmVkTGlicmFyeSk6CisgICAgICAgIChUaWNrUHJv
Y2Vzc29yLnByb3RvdHlwZS5pc0NwcENvZGUpOgorICAgICAgICAoVGlja1Byb2Nlc3Nvci5wcm90
b3R5cGUuaXNKc0NvZGUpOgorICAgICAgICAoVGlja1Byb2Nlc3Nvci5wcm90b3R5cGUucHJvY2Vz
c0xvZ0ZpbGUpOgorICAgICAgICAoVGlja1Byb2Nlc3Nvci5wcm90b3R5cGUucHJvY2Vzc0xvZ0Zp
bGVJblRlc3QpOgorICAgICAgICAoVGlja1Byb2Nlc3Nvci5wcm90b3R5cGUucHJvY2Vzc1NoYXJl
ZExpYnJhcnkpOgorICAgICAgICAoVGlja1Byb2Nlc3Nvci5wcm90b3R5cGUucHJvY2Vzc0NvZGVD
cmVhdGlvbik6CisgICAgICAgIChUaWNrUHJvY2Vzc29yLnByb3RvdHlwZS5wcm9jZXNzQ29kZU1v
dmUpOgorICAgICAgICAoVGlja1Byb2Nlc3Nvci5wcm90b3R5cGUucHJvY2Vzc0NvZGVEZWxldGUp
OgorICAgICAgICAoVGlja1Byb2Nlc3Nvci5wcm90b3R5cGUucHJvY2Vzc0Z1bmN0aW9uQ3JlYXRp
b24pOgorICAgICAgICAoVGlja1Byb2Nlc3Nvci5wcm90b3R5cGUucHJvY2Vzc0Z1bmN0aW9uTW92
ZSk6CisgICAgICAgIChUaWNrUHJvY2Vzc29yLnByb3RvdHlwZS5wcm9jZXNzRnVuY3Rpb25EZWxl
dGUpOgorICAgICAgICAoVGlja1Byb2Nlc3Nvci5wcm90b3R5cGUucHJvY2Vzc1NuYXBzaG90UG9z
aXRpb24pOgorICAgICAgICAoVGlja1Byb2Nlc3Nvci5wcm90b3R5cGUuaW5jbHVkZVRpY2spOgor
ICAgICAgICAoVGlja1Byb2Nlc3Nvci5wcm90b3R5cGUucHJvY2Vzc1RpY2spOgorICAgICAgICAo
VGlja1Byb2Nlc3Nvci5wcm90b3R5cGUucHJvY2Vzc0hlYXBTYW1wbGVCZWdpbik6CisgICAgICAg
IChUaWNrUHJvY2Vzc29yLnByb3RvdHlwZS5wcm9jZXNzSGVhcFNhbXBsZUVuZCk6CisgICAgICAg
IChUaWNrUHJvY2Vzc29yLnByb3RvdHlwZS5wcm9jZXNzSlNQcm9kdWNlcik6CisgICAgICAgIChU
aWNrUHJvY2Vzc29yLnByb3RvdHlwZS5wcmludFN0YXRpc3RpY3MudGhpcyk6CisgICAgICAgIChU
aWNrUHJvY2Vzc29yLnByb3RvdHlwZS5wcmludFN0YXRpc3RpY3MpOgorICAgICAgICAocGFkTGVm
dCk6CisgICAgICAgIChUaWNrUHJvY2Vzc29yLnByb3RvdHlwZS5wcmludEhlYWRlcik6CisgICAg
ICAgIChUaWNrUHJvY2Vzc29yLnByb3RvdHlwZS5wcmludEhlYXZ5UHJvZkhlYWRlcik6CisgICAg
ICAgIChUaWNrUHJvY2Vzc29yLnByb3RvdHlwZS5wcmludENvdW50ZXIpOgorICAgICAgICAoVGlj
a1Byb2Nlc3Nvci5wcm90b3R5cGUucHJvY2Vzc1Byb2ZpbGUpOgorICAgICAgICAoVGlja1Byb2Nl
c3Nvci5wcm90b3R5cGUucHJpbnRFbnRyaWVzKToKKyAgICAgICAgKFRpY2tQcm9jZXNzb3IucHJv
dG90eXBlLnByaW50SGVhdnlQcm9maWxlKToKKyAgICAgICAgKENwcEVudHJpZXNQcm92aWRlci5w
cm90b3R5cGUucGFyc2VWbVN5bWJvbHMuYWRkRW50cnkpOgorICAgICAgICAoQ3BwRW50cmllc1By
b3ZpZGVyLnByb3RvdHlwZS5wYXJzZVZtU3ltYm9scyk6CisgICAgICAgIChDcHBFbnRyaWVzUHJv
dmlkZXIucHJvdG90eXBlLmxvYWRTeW1ib2xzKToKKyAgICAgICAgKENwcEVudHJpZXNQcm92aWRl
ci5wcm90b3R5cGUucGFyc2VOZXh0TGluZSk6CisgICAgICAgIChVbml4Q3BwRW50cmllc1Byb3Zp
ZGVyKToKKyAgICAgICAgKFVuaXhDcHBFbnRyaWVzUHJvdmlkZXIucHJvdG90eXBlLmxvYWRTeW1i
b2xzKToKKyAgICAgICAgKFVuaXhDcHBFbnRyaWVzUHJvdmlkZXIucHJvdG90eXBlLnBhcnNlTmV4
dExpbmUpOgorICAgICAgICAoTWFjQ3BwRW50cmllc1Byb3ZpZGVyKToKKyAgICAgICAgKE1hY0Nw
cEVudHJpZXNQcm92aWRlci5wcm90b3R5cGUubG9hZFN5bWJvbHMpOgorICAgICAgICAoV2luZG93
c0NwcEVudHJpZXNQcm92aWRlci5wcm90b3R5cGUubG9hZFN5bWJvbHMpOgorICAgICAgICAoV2lu
ZG93c0NwcEVudHJpZXNQcm92aWRlci5wcm90b3R5cGUucGFyc2VOZXh0TGluZSk6CisgICAgICAg
IChXaW5kb3dzQ3BwRW50cmllc1Byb3ZpZGVyLnByb3RvdHlwZS51bm1hbmdsZU5hbWUpOgorICAg
ICAgICAoQXJndW1lbnRzUHJvY2Vzc29yKToKKyAgICAgICAgKEFyZ3VtZW50c1Byb2Nlc3Nvci5w
cm90b3R5cGUucGFyc2UpOgorICAgICAgICAoQXJndW1lbnRzUHJvY2Vzc29yLnByb3RvdHlwZS5y
ZXN1bHQpOgorICAgICAgICAoQXJndW1lbnRzUHJvY2Vzc29yLnByb3RvdHlwZS5wcmludFVzYWdl
QW5kRXhpdCk6CisgICAgICAgICogaW5zcGVjdG9yL2Zyb250LWVuZC9XZWJLaXQucXJjOgorICAg
ICAgICAqIGluc3BlY3Rvci9mcm9udC1lbmQvZGV2dG9vbHMuaHRtbDogQWRkZWQuCisgICAgICAg
ICogaW5zcGVjdG9yL2Zyb250LWVuZC9pbnNwZWN0b3IuaHRtbDoKKwogMjAxMC0wOC0xMyAgRGly
ayBTY2h1bHplICA8a3JpdEB3ZWJraXQub3JnPgogCiAgICAgICAgIFJldmlld2VkIGJ5IE5pa29s
YXMgWmltbWVybWFubi4KZGlmZiAtLWdpdCBhL1dlYkNvcmUvV2ViQ29yZS5wcm8gYi9XZWJDb3Jl
L1dlYkNvcmUucHJvCmluZGV4IGY4MmY4ZjYuLjM2NWEwYmEgMTAwNjQ0Ci0tLSBhL1dlYkNvcmUv
V2ViQ29yZS5wcm8KKysrIGIvV2ViQ29yZS9XZWJDb3JlLnBybwpAQCAtMTM4LDYgKzEzOCw3IEBA
IFJFU09VUkNFUyArPSBcCiAKICFzeW1iaWFuOiFtYWVtbzUgewogICAgIFJFU09VUkNFUyArPSAk
JFBXRC8uLi9XZWJDb3JlL2luc3BlY3Rvci9mcm9udC1lbmQvV2ViS2l0LnFyYworICAgIFJFU09V
UkNFUyArPSAkJFBXRC8uLi9XZWJDb3JlL2luc3BlY3Rvci9kZXZ0b29scy9kZXZ0b29scy5xcmMK
IH0KIAogbWFlbW81fHN5bWJpYW58ZW1iZWRkZWQgewpAQCAtMjE2OCw2ICsyMTY5LDcgQEAgSEVB
REVSUyArPSBcCiAgICAgeG1sL1hTTFRQcm9jZXNzb3IuaCBcCiAgICAgeG1sL1hTTFRVbmljb2Rl
U29ydC5oIFwKICAgICAkJFBXRC8uLi9XZWJLaXQvcXQvQXBpL3F3ZWJwbHVnaW5kYXRhYmFzZV9w
LmggXAorICAgICQkUFdELy4uL1dlYktpdC9xdC9XZWJDb3JlU3VwcG9ydC9XZWJEZWJ1Z1NlcnZl
clF0LmggXAogICAgICQkUFdELy4uL1dlYktpdC9xdC9XZWJDb3JlU3VwcG9ydC9RdEZhbGxiYWNr
V2ViUG9wdXAuaCBcCiAgICAgJCRQV0QvLi4vV2ViS2l0L3F0L1dlYkNvcmVTdXBwb3J0L0ZyYW1l
TG9hZGVyQ2xpZW50UXQuaCBcCiAgICAgJCRQV0QvLi4vV2ViS2l0L3F0L1dlYkNvcmVTdXBwb3J0
L05vdGlmaWNhdGlvblByZXNlbnRlckNsaWVudFF0LmggXApAQCAtMjI1OSw2ICsyMjYxLDcgQEAg
U09VUkNFUyArPSBcCiAgICAgLi4vV2ViS2l0L3F0L1dlYkNvcmVTdXBwb3J0L0VkaXRvckNsaWVu
dFF0LmNwcCBcCiAgICAgLi4vV2ViS2l0L3F0L1dlYkNvcmVTdXBwb3J0L0VkaXRDb21tYW5kUXQu
Y3BwIFwKICAgICAuLi9XZWJLaXQvcXQvV2ViQ29yZVN1cHBvcnQvRnJhbWVMb2FkZXJDbGllbnRR
dC5jcHAgXAorICAgIC4uL1dlYktpdC9xdC9XZWJDb3JlU3VwcG9ydC9XZWJEZWJ1Z1NlcnZlclF0
LmNwcCBcCiAgICAgLi4vV2ViS2l0L3F0L1dlYkNvcmVTdXBwb3J0L0luc3BlY3RvckNsaWVudFF0
LmNwcCBcCiAgICAgLi4vV2ViS2l0L3F0L1dlYkNvcmVTdXBwb3J0L05vdGlmaWNhdGlvblByZXNl
bnRlckNsaWVudFF0LmNwcCBcCiAgICAgLi4vV2ViS2l0L3F0L1dlYkNvcmVTdXBwb3J0L1BhZ2VD
bGllbnRRdC5jcHAgXApkaWZmIC0tZ2l0IGEvV2ViS2l0L3F0L0FwaS9xd2ViaW5zcGVjdG9yLmNw
cCBiL1dlYktpdC9xdC9BcGkvcXdlYmluc3BlY3Rvci5jcHAKaW5kZXggODAyZWE5OC4uNWE4Yjlk
MCAxMDA2NDQKLS0tIGEvV2ViS2l0L3F0L0FwaS9xd2ViaW5zcGVjdG9yLmNwcAorKysgYi9XZWJL
aXQvcXQvQXBpL3F3ZWJpbnNwZWN0b3IuY3BwCkBAIC0xOTYsNiArMTk2LDE5IEBAIHZvaWQgUVdl
Ykluc3BlY3RvclByaXZhdGU6OnNldEZyb250ZW5kKFFXaWRnZXQqIG5ld0Zyb250ZW5kKQogICAg
IH0KIH0KIAorLyohIFxpbnRlcm5hbCAqLwordm9pZCBRV2ViSW5zcGVjdG9yUHJpdmF0ZTo6c2V0
UmVtb3RlRnJvbnRlbmQoUU9iamVjdCogbmV3UmVtb3RlRnJvbnRlbmQpCit7CisgICAgaWYgKHJl
bW90ZUZyb250ZW5kKQorICAgICAgICByZW1vdGVGcm9udGVuZC0+c2V0UGFyZW50KDApOworCisg
ICAgcmVtb3RlRnJvbnRlbmQgPSBuZXdSZW1vdGVGcm9udGVuZDsKKworICAgIGlmIChyZW1vdGVG
cm9udGVuZCkgeworICAgICAgICByZW1vdGVGcm9udGVuZC0+c2V0UGFyZW50KHEpOworICAgIH0K
K30KKwogdm9pZCBRV2ViSW5zcGVjdG9yUHJpdmF0ZTo6YWRqdXN0RnJvbnRlbmRTaXplKGNvbnN0
IFFTaXplJiBzaXplKQogewogICAgIGlmIChmcm9udGVuZCkKZGlmZiAtLWdpdCBhL1dlYktpdC9x
dC9BcGkvcXdlYmluc3BlY3Rvcl9wLmggYi9XZWJLaXQvcXQvQXBpL3F3ZWJpbnNwZWN0b3JfcC5o
CmluZGV4IDRkMzI3Y2MuLjM3NWJkZmMgMTAwNjQ0Ci0tLSBhL1dlYktpdC9xdC9BcGkvcXdlYmlu
c3BlY3Rvcl9wLmgKKysrIGIvV2ViS2l0L3F0L0FwaS9xd2ViaW5zcGVjdG9yX3AuaApAQCAtMzMs
MTQgKzMzLDE3IEBAIHB1YmxpYzoKICAgICA6IHEocXEpCiAgICAgLCBwYWdlKDApCiAgICAgLCBm
cm9udGVuZCgwKQorICAgICwgcmVtb3RlRnJvbnRlbmQoMCkKICAgICB7fQogCiAgICAgdm9pZCBz
ZXRGcm9udGVuZChRV2lkZ2V0KiBuZXdGcm9udGVuZCk7CisgICAgdm9pZCBzZXRSZW1vdGVGcm9u
dGVuZChRT2JqZWN0KiBuZXdSZW1vdGVGcm9udGVuZCk7CiAgICAgdm9pZCBhZGp1c3RGcm9udGVu
ZFNpemUoY29uc3QgUVNpemUmIHNpemUpOwogCiAgICAgUVdlYkluc3BlY3RvciogcTsKICAgICBR
V2ViUGFnZSogcGFnZTsKICAgICBRV2lkZ2V0KiBmcm9udGVuZDsKKyAgICBRT2JqZWN0KiByZW1v
dGVGcm9udGVuZDsKIH07CiAKICNlbmRpZgpkaWZmIC0tZ2l0IGEvV2ViS2l0L3F0L0FwaS9xd2Vi
cGFnZS5jcHAgYi9XZWJLaXQvcXQvQXBpL3F3ZWJwYWdlLmNwcAppbmRleCA1MTZlYmM5Li5kOTg3
ZmUwIDEwMDY0NAotLS0gYS9XZWJLaXQvcXQvQXBpL3F3ZWJwYWdlLmNwcAorKysgYi9XZWJLaXQv
cXQvQXBpL3F3ZWJwYWdlLmNwcApAQCAtNzYsNiArNzYsNyBAQAogI2luY2x1ZGUgIkhUTUxJbnB1
dEVsZW1lbnQuaCIKICNpbmNsdWRlICJIVE1MTmFtZXMuaCIKICNpbmNsdWRlICJIaXRUZXN0UmVz
dWx0LmgiCisjaW5jbHVkZSAiV2ViRGVidWdTZXJ2ZXJRdC5oIgogI2luY2x1ZGUgIldpbmRvd0Zl
YXR1cmVzLmgiCiAjaW5jbHVkZSAiTG9jYWxpemVkU3RyaW5ncy5oIgogI2luY2x1ZGUgIkNhY2hl
LmgiCkBAIC05NSw3ICs5Niw2IEBACiAjaW5jbHVkZSA8UURyYWdNb3ZlRXZlbnQ+CiAjaW5jbHVk
ZSA8UURyb3BFdmVudD4KICNpbmNsdWRlIDxRRmlsZURpYWxvZz4KLSNpbmNsdWRlIDxRSHR0cFJl
cXVlc3RIZWFkZXI+CiAjaW5jbHVkZSA8UUlucHV0RGlhbG9nPgogI2luY2x1ZGUgPFFMb2NhbGU+
CiAjaW5jbHVkZSA8UU1lc3NhZ2VCb3g+CkBAIC0xMjk2LDYgKzEyOTYsMTEgQEAgdm9pZCBRV2Vi
UGFnZVByaXZhdGU6OmR5bmFtaWNQcm9wZXJ0eUNoYW5nZUV2ZW50KFFEeW5hbWljUHJvcGVydHlD
aGFuZ2VFdmVudCogZXYKICAgICAgICAgZnJhbWUtPnRpbGVkQmFja2luZ1N0b3JlKCktPnNldEtl
ZXBBbmRDb3ZlckFyZWFNdWx0aXBsaWVycyhrZWVwTXVsdGlwbGllciwgY292ZXJNdWx0aXBsaWVy
KTsKICAgICB9CiAjZW5kaWYKKyAgICBlbHNlIGlmIChldmVudC0+cHJvcGVydHlOYW1lKCkgPT0g
Il9xX3dlYkRlYnVnU2VydmVyUG9ydCIpIHsKKwlxRGVidWcoKSA8PCAiUVdlYlBhZ2U6OlFXZWJQ
YWdlIiA8PCAiX3Ffd2ViRGVidWdTZXJ2ZXJQb3J0IiA8PCBxLT5wcm9wZXJ0eSgiX3Ffd2ViRGVi
dWdTZXJ2ZXJQb3J0Iik7CisJV2ViRGVidWdTZXJ2ZXJRdCAqd2ViRGVidWdTZXJ2ZXIgPSBXZWJE
ZWJ1Z1NlcnZlclF0OjpzZXJ2ZXIoKTsKKwl3ZWJEZWJ1Z1NlcnZlci0+bGlzdGVuKHEtPnByb3Bl
cnR5KCJfcV93ZWJEZWJ1Z1NlcnZlclBvcnQiKS50b0ludCgpKTsKKyAgICB9CiB9CiAjZW5kaWYK
IApAQCAtMTg4Nyw2ICsxODkyLDcgQEAgUVdlYlBhZ2U6On5RV2ViUGFnZSgpCiAgICAgICAgIGVs
c2UKICAgICAgICAgICAgIGQtPmluc3BlY3Rvci0+c2V0UGFnZSgwKTsKICAgICB9CisKICAgICBk
ZWxldGUgZDsKIH0KIApkaWZmIC0tZ2l0IGEvV2ViS2l0L3F0L0NoYW5nZUxvZyBiL1dlYktpdC9x
dC9DaGFuZ2VMb2cKaW5kZXggOWJhN2JmOC4uOGM0NTdmMCAxMDA2NDQKLS0tIGEvV2ViS2l0L3F0
L0NoYW5nZUxvZworKysgYi9XZWJLaXQvcXQvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsNTYgQEAKKzIw
MTAtMDgtMTMgIEphbWV5IEhpY2tzICA8amFtZXkuaGlja3NAbm9raWEuY29tPgorCisgICAgICAg
IFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIFtRdF0gUmVtb3RlIFdlYiBJ
bnNwZWN0b3Igc3VwcG9ydCBmb3IgUXRXZWJLaXQKKworICAgICAgICBVbnRpbCB3ZSBoYXZlIGFu
IEFQSSBmb3IgZW5hYmxpbmcgcmVtb3RlIFdlYiBJbnNwZWN0b3IsIHNldAorICAgICAgICBwcm9w
ZXJ0eSBxX3dlYkRlYnVnU2VydmVyUG9ydCBvbiB0aGUgUVdlYlBhZ2UuIEFsbCBwYWdlcyB3aXRo
IHRoYXQKKyAgICAgICAgcHJvcGVydHkgc2V0IHdpbGwgYmUgcmVtb3RlbHkgaW5zcGVjdGFibGUu
CisKKyAgICAgICAgVVJMIGZvciByZW1vdGUgaW5zcGVjdGlvbiBpcyBodHRwOi8vbG9jYWxob3N0
OlBPUlQvZGV2dG9vbHMvcGFnZS9OCisgICAgICAgIHdoZXJlIFBPUlQgaXMgc3BlY2lmaWVkIGJ5
IHFfd2ViRGVidWdTZXJ2ZXJQb3J0IGFuZCBOIGlzIHRoZQorICAgICAgICBudW1iZXIgb2YgdGhl
IFFXZWJQYWdlIGluc3RhbmNlIHN0YXJ0aW5nIGZyb20gMS4KKyAgICAgICAgCisgICAgICAgICog
QXBpL3F3ZWJpbnNwZWN0b3IuY3BwOgorICAgICAgICAoUVdlYkluc3BlY3RvclByaXZhdGU6OnNl
dFJlbW90ZUZyb250ZW5kKToKKyAgICAgICAgKiBBcGkvcXdlYmluc3BlY3Rvcl9wLmg6CisgICAg
ICAgIChRV2ViSW5zcGVjdG9yUHJpdmF0ZTo6UVdlYkluc3BlY3RvclByaXZhdGUpOgorICAgICAg
ICAqIEFwaS9xd2VicGFnZS5jcHA6CisgICAgICAgIChRV2ViUGFnZVByaXZhdGU6OmR5bmFtaWNQ
cm9wZXJ0eUNoYW5nZUV2ZW50KToKKyAgICAgICAgKFFXZWJQYWdlOjp+UVdlYlBhZ2UpOgorICAg
ICAgICAqIFdlYkNvcmVTdXBwb3J0L0luc3BlY3RvckNsaWVudFF0LmNwcDoKKyAgICAgICAgKFdl
YkNvcmU6Okluc3BlY3RvckNsaWVudFF0OjpJbnNwZWN0b3JDbGllbnRRdCk6CisgICAgICAgIChX
ZWJDb3JlOjpJbnNwZWN0b3JDbGllbnRRdDo6aW5zcGVjdG9yRGVzdHJveWVkKToKKyAgICAgICAg
KFdlYkNvcmU6Okluc3BlY3RvckNsaWVudFF0OjpvcGVuSW5zcGVjdG9yRnJvbnRlbmQpOgorICAg
ICAgICAoV2ViQ29yZTo6SW5zcGVjdG9yQ2xpZW50UXQ6OnNldFJlbW90ZUZyb250ZW5kKToKKyAg
ICAgICAgKFdlYkNvcmU6Okluc3BlY3RvckNsaWVudFF0OjpzZW5kTWVzc2FnZVRvRnJvbnRlbmQp
OgorICAgICAgICAoV2ViQ29yZTo6SW5zcGVjdG9yQ2xpZW50UXQ6OmRpc3BhdGNoKToKKyAgICAg
ICAgKiBXZWJDb3JlU3VwcG9ydC9JbnNwZWN0b3JDbGllbnRRdC5oOgorICAgICAgICAqIFdlYkNv
cmVTdXBwb3J0L1dlYkRlYnVnU2VydmVyUXQuY3BwOiBBZGRlZC4KKyAgICAgICAgKFdlYkNvcmU6
OnNldENoYWxsZW5nZU51bWJlcik6CisgICAgICAgIChXZWJDb3JlOjpnZW5lcmF0ZUV4cGVjdGVk
Q2hhbGxlbmdlUmVzcG9uc2UpOgorICAgICAgICAoV2ViQ29yZTo6Z2V0Q2hhbGxlbmdlTnVtYmVy
RnJvbUZpZWxkKToKKyAgICAgICAgKFdlYkNvcmU6OldlYkRlYnVnU2VydmVyUXQ6OnNlcnZlcik6
CisgICAgICAgIChXZWJDb3JlOjpXZWJEZWJ1Z1NlcnZlclF0OjpXZWJEZWJ1Z1NlcnZlclF0KToK
KyAgICAgICAgKFdlYkNvcmU6OldlYkRlYnVnU2VydmVyUXQ6On5XZWJEZWJ1Z1NlcnZlclF0KToK
KyAgICAgICAgKFdlYkNvcmU6OldlYkRlYnVnU2VydmVyUXQ6Omxpc3Rlbik6CisgICAgICAgIChX
ZWJDb3JlOjpXZWJEZWJ1Z1NlcnZlclF0OjpjbG9zZSk6CisgICAgICAgIChXZWJDb3JlOjpXZWJE
ZWJ1Z1NlcnZlclF0OjppbnNwZWN0b3JDbGllbnQpOgorICAgICAgICAoV2ViQ29yZTo6V2ViRGVi
dWdTZXJ2ZXJRdDo6cmVnaXN0ZXJQYWdlKToKKyAgICAgICAgKFdlYkNvcmU6OldlYkRlYnVnU2Vy
dmVyUXQ6OnVucmVnaXN0ZXJQYWdlKToKKyAgICAgICAgKFdlYkNvcmU6OldlYkRlYnVnU2VydmVy
UXQ6OmdvdE5ld0Nvbm5lY3Rpb24pOgorICAgICAgICAoV2ViQ29yZTo6SHR0cFJlcXVlc3RIYW5k
bGVyOjpIdHRwUmVxdWVzdEhhbmRsZXIpOgorICAgICAgICAoV2ViQ29yZTo6SHR0cFJlcXVlc3RI
YW5kbGVyOjp+SHR0cFJlcXVlc3RIYW5kbGVyKToKKyAgICAgICAgKFdlYkNvcmU6Okh0dHBSZXF1
ZXN0SGFuZGxlcjo6dGNwUmVhZHlSZWFkKToKKyAgICAgICAgKFdlYkNvcmU6Okh0dHBSZXF1ZXN0
SGFuZGxlcjo6Y29tcGxldGVSZXF1ZXN0KToKKyAgICAgICAgKFdlYkNvcmU6Okh0dHBSZXF1ZXN0
SGFuZGxlcjo6dGNwQ29ubmVjdGlvbkRpc2Nvbm5lY3RlZCk6CisgICAgICAgIChXZWJDb3JlOjpI
dHRwUmVxdWVzdEhhbmRsZXI6OndlYlNvY2tldFNlbmQpOgorICAgICAgICAoV2ViQ29yZTo6SHR0
cFJlcXVlc3RIYW5kbGVyOjp3ZWJTb2NrZXRSZWFkeVJlYWQpOgorICAgICAgICAoV2ViQ29yZTo6
UmVtb3RlRnJvbnRlbmRDaGFubmVsOjpSZW1vdGVGcm9udGVuZENoYW5uZWwpOgorICAgICAgICAo
V2ViQ29yZTo6UmVtb3RlRnJvbnRlbmRDaGFubmVsOjpzZW5kTWVzc2FnZVRvRnJvbnRlbmQpOgor
ICAgICAgICAqIFdlYkNvcmVTdXBwb3J0L1dlYkRlYnVnU2VydmVyUXQuaDogQWRkZWQuCisKIDIw
MTAtMDgtMTIgIEplcmVteSBPcmxvdyAgPGpvcmxvd0BjaHJvbWl1bS5vcmc+CiAKICAgICAgICAg
UmV2ZXJ0IGZvciBub3cKZGlmZiAtLWdpdCBhL1dlYktpdC9xdC9XZWJDb3JlU3VwcG9ydC9JbnNw
ZWN0b3JDbGllbnRRdC5jcHAgYi9XZWJLaXQvcXQvV2ViQ29yZVN1cHBvcnQvSW5zcGVjdG9yQ2xp
ZW50UXQuY3BwCmluZGV4IGUxM2Y2YzMuLmU5ZGE4MGQgMTAwNjQ0Ci0tLSBhL1dlYktpdC9xdC9X
ZWJDb3JlU3VwcG9ydC9JbnNwZWN0b3JDbGllbnRRdC5jcHAKKysrIGIvV2ViS2l0L3F0L1dlYkNv
cmVTdXBwb3J0L0luc3BlY3RvckNsaWVudFF0LmNwcApAQCAtMzIsMTEgKzMyLDE0IEBACiAjaW5j
bHVkZSAiSW5zcGVjdG9yQ2xpZW50UXQuaCIKIAogI2luY2x1ZGUgIkZyYW1lLmgiCisjaW5jbHVk
ZSAiSW5zcGVjdG9yQmFja2VuZERpc3BhdGNoZXIuaCIKICNpbmNsdWRlICJJbnNwZWN0b3JDb250
cm9sbGVyLmgiCiAjaW5jbHVkZSAiTm90SW1wbGVtZW50ZWQuaCIKICNpbmNsdWRlICJQYWdlLmgi
CiAjaW5jbHVkZSAiUGxhdGZvcm1TdHJpbmcuaCIKKyNpbmNsdWRlICJSZW1vdGVJbnNwZWN0b3JG
cm9udGVuZC5oIgogI2luY2x1ZGUgIlNjcmlwdENvbnRyb2xsZXIuaCIKKyNpbmNsdWRlICJXZWJE
ZWJ1Z1NlcnZlclF0LmgiCiAjaW5jbHVkZSAicXdlYmluc3BlY3Rvci5oIgogI2luY2x1ZGUgInF3
ZWJpbnNwZWN0b3JfcC5oIgogI2luY2x1ZGUgInF3ZWJwYWdlLmgiCkBAIC05NiwxNSArOTksMjMg
QEAgcHVibGljIHNsb3RzOgogSW5zcGVjdG9yQ2xpZW50UXQ6Okluc3BlY3RvckNsaWVudFF0KFFX
ZWJQYWdlKiBwYWdlKQogICAgIDogbV9pbnNwZWN0ZWRXZWJQYWdlKHBhZ2UpCiAgICAgLCBtX2Zy
b250ZW5kV2ViUGFnZSgwKQote30KKyAgICAsIG1fcmVtb3RlSW5zcGVjdG9yKHRydWUpCit7Cisg
ICAgV2ViRGVidWdTZXJ2ZXJRdCogd2ViRGVidWdTZXJ2ZXIgPSBXZWJEZWJ1Z1NlcnZlclF0Ojpz
ZXJ2ZXIoKTsKKyAgICB3ZWJEZWJ1Z1NlcnZlci0+cmVnaXN0ZXJQYWdlKHBhZ2UsIHRoaXMpOwor
fQogCiB2b2lkIEluc3BlY3RvckNsaWVudFF0OjppbnNwZWN0b3JEZXN0cm95ZWQoKQogeworICAg
IFdlYkRlYnVnU2VydmVyUXQqIHdlYkRlYnVnU2VydmVyID0gV2ViRGVidWdTZXJ2ZXJRdDo6c2Vy
dmVyKCk7CisgICAgaWYgKHdlYkRlYnVnU2VydmVyKQorICAgICAgICB3ZWJEZWJ1Z1NlcnZlci0+
dW5yZWdpc3RlclBhZ2UobV9pbnNwZWN0ZWRXZWJQYWdlKTsKKwogICAgIGRlbGV0ZSB0aGlzOwog
fQogCiAgICAgCi12b2lkIEluc3BlY3RvckNsaWVudFF0OjpvcGVuSW5zcGVjdG9yRnJvbnRlbmQo
V2ViQ29yZTo6SW5zcGVjdG9yQ29udHJvbGxlciopCit2b2lkIEluc3BlY3RvckNsaWVudFF0Ojpv
cGVuSW5zcGVjdG9yRnJvbnRlbmQoV2ViQ29yZTo6SW5zcGVjdG9yQ29udHJvbGxlciogaW5zcGVj
dG9yQ29udHJvbGxlcikKIHsKICAgICBRV2ViVmlldyogaW5zcGVjdG9yVmlldyA9IG5ldyBRV2Vi
VmlldzsKICAgICBJbnNwZWN0b3JDbGllbnRXZWJQYWdlKiBpbnNwZWN0b3JQYWdlID0gbmV3IElu
c3BlY3RvckNsaWVudFdlYlBhZ2UoaW5zcGVjdG9yVmlldyk7CkBAIC0xMTUsMjQgKzEyNiwyNyBA
QCB2b2lkIEluc3BlY3RvckNsaWVudFF0OjpvcGVuSW5zcGVjdG9yRnJvbnRlbmQoV2ViQ29yZTo6
SW5zcGVjdG9yQ29udHJvbGxlciopCiAgICAgLy8gV2ViIGluc3BlY3Rvci4gVGhpcyBpcyB1c2Vk
IGZvciBTREsgcHVycG9zZXMuIFBsZWFzZSBrZWVwIHRoaXMgaG9vawogICAgIC8vIGFyb3VuZCBh
bmQgZG9uJ3QgcmVtb3ZlIGl0LgogICAgIC8vIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3df
YnVnLmNnaT9pZD0zNTM0MAotICAgIFFVcmwgaW5zcGVjdG9yVXJsOworICAgIGlmICghbV9yZW1v
dGVJbnNwZWN0b3IpIHsKKworICAgICAgICBRVXJsIGluc3BlY3RvclVybDsKICNpZm5kZWYgUVRf
Tk9fUFJPUEVSVElFUwotICAgIGluc3BlY3RvclVybCA9IGluc3BlY3Rvci0+cHJvcGVydHkoIl9x
X2luc3BlY3RvclVybCIpLnRvVXJsKCk7CisgICAgICAgIGluc3BlY3RvclVybCA9IGluc3BlY3Rv
ci0+cHJvcGVydHkoIl9xX2luc3BlY3RvclVybCIpLnRvVXJsKCk7CiAjZW5kaWYKLSAgICBpZiAo
IWluc3BlY3RvclVybC5pc1ZhbGlkKCkpCi0gICAgICAgIGluc3BlY3RvclVybCA9IFFVcmwoInFy
Yzovd2Via2l0L2luc3BlY3Rvci9pbnNwZWN0b3IuaHRtbCIpOworICAgICAgICBpZiAoIWluc3Bl
Y3RvclVybC5pc1ZhbGlkKCkpCisgICAgICAgICAgICBpbnNwZWN0b3JVcmwgPSBRVXJsKCJxcmM6
L3dlYmtpdC9pbnNwZWN0b3IvaW5zcGVjdG9yLmh0bWwiKTsKIAogI2lmbmRlZiBRVF9OT19QUk9Q
RVJUSUVTCi0gICAgUVZhcmlhbnQgaW5zcGVjdG9ySmF2YVNjcmlwdFdpbmRvd09iamVjdHMgPSBp
bnNwZWN0b3ItPnByb3BlcnR5KCJfcV9pbnNwZWN0b3JKYXZhU2NyaXB0V2luZG93T2JqZWN0cyIp
OwotICAgIGlmIChpbnNwZWN0b3JKYXZhU2NyaXB0V2luZG93T2JqZWN0cy5pc1ZhbGlkKCkpCi0g
ICAgICAgIGluc3BlY3RvclBhZ2UtPnNldFByb3BlcnR5KCJfcV9pbnNwZWN0b3JKYXZhU2NyaXB0
V2luZG93T2JqZWN0cyIsIGluc3BlY3RvckphdmFTY3JpcHRXaW5kb3dPYmplY3RzKTsKKyAgICAg
ICAgUVZhcmlhbnQgaW5zcGVjdG9ySmF2YVNjcmlwdFdpbmRvd09iamVjdHMgPSBpbnNwZWN0b3It
PnByb3BlcnR5KCJfcV9pbnNwZWN0b3JKYXZhU2NyaXB0V2luZG93T2JqZWN0cyIpOworICAgICAg
ICBpZiAoaW5zcGVjdG9ySmF2YVNjcmlwdFdpbmRvd09iamVjdHMuaXNWYWxpZCgpKQorICAgICAg
ICAgICAgaW5zcGVjdG9yUGFnZS0+c2V0UHJvcGVydHkoIl9xX2luc3BlY3RvckphdmFTY3JpcHRX
aW5kb3dPYmplY3RzIiwgaW5zcGVjdG9ySmF2YVNjcmlwdFdpbmRvd09iamVjdHMpOwogI2VuZGlm
Ci0gICAgaW5zcGVjdG9yVmlldy0+cGFnZSgpLT5tYWluRnJhbWUoKS0+bG9hZChpbnNwZWN0b3JV
cmwpOwotICAgIG1faW5zcGVjdGVkV2ViUGFnZS0+ZC0+aW5zcGVjdG9yRnJvbnRlbmQgPSBpbnNw
ZWN0b3JWaWV3OwotICAgIGluc3BlY3Rvci0+ZC0+c2V0RnJvbnRlbmQoaW5zcGVjdG9yVmlldyk7
CisgICAgICAgIGluc3BlY3RvclZpZXctPnBhZ2UoKS0+bWFpbkZyYW1lKCktPmxvYWQoaW5zcGVj
dG9yVXJsKTsKKyAgICAgICAgbV9pbnNwZWN0ZWRXZWJQYWdlLT5kLT5pbnNwZWN0b3JGcm9udGVu
ZCA9IGluc3BlY3RvclZpZXc7CisgICAgICAgIGluc3BlY3Rvci0+ZC0+c2V0RnJvbnRlbmQoaW5z
cGVjdG9yVmlldyk7CiAKLSAgICBpbnNwZWN0b3JWaWV3LT5wYWdlKCktPmQtPnBhZ2UtPmluc3Bl
Y3RvckNvbnRyb2xsZXIoKS0+c2V0SW5zcGVjdG9yRnJvbnRlbmRDbGllbnQobmV3IEluc3BlY3Rv
ckZyb250ZW5kQ2xpZW50UXQobV9pbnNwZWN0ZWRXZWJQYWdlLCBpbnNwZWN0b3JWaWV3LCB0aGlz
KSk7Ci0gICAgbV9mcm9udGVuZFdlYlBhZ2UgPSBpbnNwZWN0b3JQYWdlOworICAgICAgICBpbnNw
ZWN0b3JWaWV3LT5wYWdlKCktPmQtPnBhZ2UtPmluc3BlY3RvckNvbnRyb2xsZXIoKS0+c2V0SW5z
cGVjdG9yRnJvbnRlbmRDbGllbnQobmV3IEluc3BlY3RvckZyb250ZW5kQ2xpZW50UXQobV9pbnNw
ZWN0ZWRXZWJQYWdlLCBpbnNwZWN0b3JWaWV3LCB0aGlzKSk7CisgICAgICAgIG1fZnJvbnRlbmRX
ZWJQYWdlID0gaW5zcGVjdG9yUGFnZTsKKyAgICB9CiB9CiAKIHZvaWQgSW5zcGVjdG9yQ2xpZW50
UXQ6OnJlbGVhc2VGcm9udGVuZFBhZ2UoKQpAQCAtMTQwLDYgKzE1NCwxOSBAQCB2b2lkIEluc3Bl
Y3RvckNsaWVudFF0OjpyZWxlYXNlRnJvbnRlbmRQYWdlKCkKICAgICBtX2Zyb250ZW5kV2ViUGFn
ZSA9IDA7CiB9CiAKKwordm9pZCBJbnNwZWN0b3JDbGllbnRRdDo6c2V0UmVtb3RlRnJvbnRlbmQo
UmVtb3RlRnJvbnRlbmRDaGFubmVsKiBjaGFubmVsKQoreworI2lmIEVOQUJMRShJTlNQRUNUT1Ip
CisgICAgcURlYnVnKCkgPDwgIkluc3BlY3RvckNsaWVudFF0OjpzZXRSZW1vdGVGcm9udGVuZCI7
CisgICAgbV9pbnNwZWN0ZWRXZWJQYWdlLT5kLT5pbnNwZWN0b3ItPmQtPnNldFJlbW90ZUZyb250
ZW5kKGNoYW5uZWwpOworICAgIG1faW5zcGVjdGVkV2ViUGFnZS0+ZC0+aW5zcGVjdG9yQ29udHJv
bGxlcigpLT5jb25uZWN0RnJvbnRlbmQoKTsKKworICAgIC8vIFhYWCBzb21ld2hlcmUgbmVlZCB0
byBwcm92aWRlIGNhbGwgdG86CisgICAgLy8gbV9pbnNwZWN0ZWRXZWJQYWdlLT5kLT5pbnNwZWN0
b3JDb250cm9sbGVyKCktPmRpc2Nvbm5lY3RGcm9udGVuZCgpOworI2VuZGlmCit9CisKIHZvaWQg
SW5zcGVjdG9yQ2xpZW50UXQ6OmhpZ2hsaWdodChOb2RlKikKIHsKICAgICBub3RJbXBsZW1lbnRl
ZCgpOwpAQCAtMTk2LDYgKzIyMywxMiBAQCB2b2lkIEluc3BlY3RvckNsaWVudFF0OjpzdG9yZVNl
dHRpbmcoY29uc3QgU3RyaW5nJiBrZXksIGNvbnN0IFN0cmluZyYgc2V0dGluZykKIAogYm9vbCBJ
bnNwZWN0b3JDbGllbnRRdDo6c2VuZE1lc3NhZ2VUb0Zyb250ZW5kKGNvbnN0IFN0cmluZyYgbWVz
c2FnZSkKIHsKKyAgICBpZiAobV9yZW1vdGVJbnNwZWN0b3IpIHsKKyAgICAgICAgaWYgKCFtX2lu
c3BlY3RlZFdlYlBhZ2UpCisgICAgICAgICAgICByZXR1cm4gZmFsc2U7CisgICAgICAgIFJlbW90
ZUZyb250ZW5kQ2hhbm5lbCogc2Vzc2lvbiA9IHFvYmplY3RfY2FzdDxSZW1vdGVGcm9udGVuZENo
YW5uZWwqPihtX2luc3BlY3RlZFdlYlBhZ2UtPmQtPmluc3BlY3Rvci0+ZC0+cmVtb3RlRnJvbnRl
bmQpOworICAgICAgICBzZXNzaW9uLT5zZW5kTWVzc2FnZVRvRnJvbnRlbmQobWVzc2FnZSk7Cisg
ICAgfQogICAgIGlmICghbV9mcm9udGVuZFdlYlBhZ2UpCiAgICAgICAgIHJldHVybiBmYWxzZTsK
IApAQCAtMjE4LDYgKzI1MSwxMiBAQCBib29sIEluc3BlY3RvckNsaWVudFF0OjpzZW5kTWVzc2Fn
ZVRvRnJvbnRlbmQoY29uc3QgU3RyaW5nJiBtZXNzYWdlKQogICAgIHJldHVybiB0cnVlOwogfQog
Cit2b2lkIEluc3BlY3RvckNsaWVudFF0OjpkaXNwYXRjaChjb25zdCBTdHJpbmcgJm1lc3NhZ2Up
Cit7CisgICAgSW5zcGVjdG9yQ29udHJvbGxlciogaW5zcGVjdG9yQ29udHJvbGxlciA9IG1faW5z
cGVjdGVkV2ViUGFnZS0+ZC0+cGFnZS0+aW5zcGVjdG9yQ29udHJvbGxlcigpOworICAgIGluc3Bl
Y3RvckNvbnRyb2xsZXItPmluc3BlY3RvckJhY2tlbmREaXNwYXRjaGVyKCktPmRpc3BhdGNoKG1l
c3NhZ2UpOworfQorCiBzdGF0aWMgU3RyaW5nIHZhcmlhbnRUb1NldHRpbmcoY29uc3QgUVZhcmlh
bnQmIHF2YXJpYW50KQogewogICAgIFN0cmluZyByZXRWYWw7CmRpZmYgLS1naXQgYS9XZWJLaXQv
cXQvV2ViQ29yZVN1cHBvcnQvSW5zcGVjdG9yQ2xpZW50UXQuaCBiL1dlYktpdC9xdC9XZWJDb3Jl
U3VwcG9ydC9JbnNwZWN0b3JDbGllbnRRdC5oCmluZGV4IDk1MjZjODguLjQ1NWM5ZGIgMTAwNjQ0
Ci0tLSBhL1dlYktpdC9xdC9XZWJDb3JlU3VwcG9ydC9JbnNwZWN0b3JDbGllbnRRdC5oCisrKyBi
L1dlYktpdC9xdC9XZWJDb3JlU3VwcG9ydC9JbnNwZWN0b3JDbGllbnRRdC5oCkBAIC00Myw2ICs0
Myw3IEBAIGNsYXNzIFFXZWJWaWV3OwogbmFtZXNwYWNlIFdlYkNvcmUgewogY2xhc3MgTm9kZTsK
IGNsYXNzIFBhZ2U7CitjbGFzcyBSZW1vdGVGcm9udGVuZENoYW5uZWw7CiAKIGNsYXNzIEluc3Bl
Y3RvckNsaWVudFF0IDogcHVibGljIEluc3BlY3RvckNsaWVudCB7CiBwdWJsaWM6CkBAIC01OSwx
MiArNjAsMTYgQEAgcHVibGljOgogICAgIHZpcnR1YWwgdm9pZCBzdG9yZVNldHRpbmcoY29uc3Qg
U3RyaW5nJiBrZXksIGNvbnN0IFN0cmluZyYgdmFsdWUpOwogCiAgICAgdmlydHVhbCBib29sIHNl
bmRNZXNzYWdlVG9Gcm9udGVuZChjb25zdCBTdHJpbmcmKTsKKyAgICB2aXJ0dWFsIHZvaWQgZGlz
cGF0Y2goY29uc3QgU3RyaW5nICZtZXNzYWdlKTsKIAogICAgIHZvaWQgcmVsZWFzZUZyb250ZW5k
UGFnZSgpOwogCisgICAgdm9pZCBzZXRSZW1vdGVGcm9udGVuZChSZW1vdGVGcm9udGVuZENoYW5u
ZWwgKmNoYW5uZWwpOworCiBwcml2YXRlOgogICAgIFFXZWJQYWdlKiBtX2luc3BlY3RlZFdlYlBh
Z2U7CiAgICAgUVdlYlBhZ2UqIG1fZnJvbnRlbmRXZWJQYWdlOworICAgIGJvb2wgbV9yZW1vdGVJ
bnNwZWN0b3I7CiB9OwogCiBjbGFzcyBJbnNwZWN0b3JGcm9udGVuZENsaWVudFF0IDogcHVibGlj
IEluc3BlY3RvckZyb250ZW5kQ2xpZW50TG9jYWwgewpAQCAtOTUsNiArMTAwLDcgQEAgcHJpdmF0
ZToKICAgICBib29sIG1fZGVzdHJveWluZ0luc3BlY3RvclZpZXc7CiAgICAgSW5zcGVjdG9yQ2xp
ZW50UXQqIG1faW5zcGVjdG9yQ2xpZW50OwogfTsKKwogfQogCiAjZW5kaWYKZGlmZiAtLWdpdCBh
L1dlYktpdC9xdC9XZWJDb3JlU3VwcG9ydC9XZWJEZWJ1Z1NlcnZlclF0LmNwcCBiL1dlYktpdC9x
dC9XZWJDb3JlU3VwcG9ydC9XZWJEZWJ1Z1NlcnZlclF0LmNwcApuZXcgZmlsZSBtb2RlIDEwMDY0
NAppbmRleCAwMDAwMDAwLi5jNjE2ODkyCi0tLSAvZGV2L251bGwKKysrIGIvV2ViS2l0L3F0L1dl
YkNvcmVTdXBwb3J0L1dlYkRlYnVnU2VydmVyUXQuY3BwCkBAIC0wLDAgKzEsNDIyIEBACisvKgor
ICBDb3B5cmlnaHQgKEMpIDIwMTAgTm9raWEgQ29ycG9yYXRpb24gYW5kL29yIGl0cyBzdWJzaWRp
YXJ5KC1pZXMpCisKKyAgVGhpcyBsaWJyYXJ5IGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVk
aXN0cmlidXRlIGl0IGFuZC9vcgorICBtb2RpZnkgaXQgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBH
TlUgTGlicmFyeSBHZW5lcmFsIFB1YmxpYworICBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieSB0aGUg
RnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uOyBlaXRoZXIKKyAgdmVyc2lvbiAyIG9mIHRoZSBMaWNl
bnNlLCBvciAoYXQgeW91ciBvcHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLgorCisgIFRoaXMgbGli
cmFyeSBpcyBkaXN0cmlidXRlZCBpbiB0aGUgaG9wZSB0aGF0IGl0IHdpbGwgYmUgdXNlZnVsLAor
ICBidXQgV0lUSE9VVCBBTlkgV0FSUkFOVFk7IHdpdGhvdXQgZXZlbiB0aGUgaW1wbGllZCB3YXJy
YW50eSBvZgorICBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBV
UlBPU0UuICBTZWUgdGhlIEdOVQorICBMaWJyYXJ5IEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9y
IG1vcmUgZGV0YWlscy4KKworICBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRo
ZSBHTlUgTGlicmFyeSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlCisgIGFsb25nIHdpdGggdGhpcyBs
aWJyYXJ5OyBzZWUgdGhlIGZpbGUgQ09QWUlORy5MSUIuICBJZiBub3QsIHdyaXRlIHRvCisgIHRo
ZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb24sIEluYy4sIDUxIEZyYW5rbGluIFN0cmVldCwgRmlm
dGggRmxvb3IsCisgIEJvc3RvbiwgTUEgMDIxMTAtMTMwMSwgVVNBLgorKi8KKworCisjaW5jbHVk
ZSAiY29uZmlnLmgiCisjaW5jbHVkZSAiV2ViRGVidWdTZXJ2ZXJRdC5oIgorCisjaW5jbHVkZSAi
SW5zcGVjdG9yQ2xpZW50UXQuaCIKKyNpbmNsdWRlICJNRDUuaCIKKyNpbmNsdWRlIDxRRmlsZT4K
KyNpbmNsdWRlIDxRSHR0cEhlYWRlcj4KKyNpbmNsdWRlIDxRSHR0cFJlcXVlc3RIZWFkZXI+Cisj
aW5jbHVkZSA8UUh0dHBSZXNwb25zZUhlYWRlcj4KKyNpbmNsdWRlIDxRU3RyaW5nPgorI2luY2x1
ZGUgPFFTdHJpbmdMaXN0PgorI2luY2x1ZGUgPFFUY3BTZXJ2ZXI+CisjaW5jbHVkZSA8UVRjcFNv
Y2tldD4KKyNpbmNsdWRlIDxRVXJsPgorI2luY2x1ZGUgPFFXaWRnZXQ+CisjaW5jbHVkZSA8cWVu
ZGlhbi5oPgorCituYW1lc3BhY2UgV2ViQ29yZSB7CisKK3N0YXRpYyBib29sIGRlYnVnID0gZmFs
c2U7CisKK3N0YXRpYyB2b2lkIHNldENoYWxsZW5nZU51bWJlcih1bnNpZ25lZCBjaGFyKiBidWYs
IHVpbnQzMl90IG51bWJlcikKK3sKKyAgICB1bnNpZ25lZCBjaGFyKiBwID0gYnVmICsgMzsKKyAg
ICBmb3IgKGludCBpID0gMDsgaSA8IDQ7IGkrKykgeworICAgICAgICAqcCA9IG51bWJlciAmIDB4
RkY7CisgICAgICAgIC0tcDsKKyAgICAgICAgbnVtYmVyID4+PSA4OworICAgIH0KK30KKworc3Rh
dGljIHZvaWQgZ2VuZXJhdGVFeHBlY3RlZENoYWxsZW5nZVJlc3BvbnNlKHVpbnQzMl90IG51bWJl
cjEsIHVpbnQzMl90IG51bWJlcjIsIHVuc2lnbmVkIGNoYXIga2V5M1s4XSwgdW5zaWduZWQgY2hh
ciBleHBlY3RlZENoYWxsZW5nZVsxNl0pCit7CisgICAgdW5zaWduZWQgY2hhciBjaGFsbGVuZ2Vb
MTZdOworICAgIHNldENoYWxsZW5nZU51bWJlcigmY2hhbGxlbmdlWzBdLCBudW1iZXIxKTsKKyAg
ICBzZXRDaGFsbGVuZ2VOdW1iZXIoJmNoYWxsZW5nZVs0XSwgbnVtYmVyMik7CisgICAgbWVtY3B5
KCZjaGFsbGVuZ2VbOF0sIGtleTMsIDgpOworICAgIE1ENSBtZDU7CisgICAgbWQ1LmFkZEJ5dGVz
KGNoYWxsZW5nZSwgc2l6ZW9mKGNoYWxsZW5nZSkpOworICAgIFZlY3Rvcjx1aW50OF90LCAxNj4g
ZGlnZXN0OworICAgIG1kNS5jaGVja3N1bShkaWdlc3QpOworICAgIG1lbWNweShleHBlY3RlZENo
YWxsZW5nZSwgZGlnZXN0LmRhdGEoKSwgMTYpOworfQorCitzdGF0aWMgcXVpbnQzMiBnZXRDaGFs
bGVuZ2VOdW1iZXJGcm9tRmllbGQoUVN0cmluZyBmaWVsZCkKK3sKKyAgICBRU3RyaW5nIG5TdHJp
bmc7CisgICAgaW50IG5TcGFjZXMgPSAwOworICAgIGZvciAoaW50IGkgPSAwOyBpIDwgZmllbGQu
c2l6ZSgpOyBpKyspIHsKKyAgICAgICAgUUNoYXIgYyA9IGZpZWxkW2ldOworICAgICAgICBpZiAo
YyA9PSAoUUNoYXIpJyAnKSB7CisgICAgICAgICAgICBuU3BhY2VzKys7CisgICAgICAgIH0gZWxz
ZSBpZiAoKGMgPj0gKFFDaGFyKScwJykgJiYgKGMgPD0gKFFDaGFyKSc5JykpIHsKKyAgICAgICAg
ICAgIG5TdHJpbmcuYXBwZW5kKChRQ2hhciljKTsKKyAgICAgICAgfQorICAgIH0KKyAgICBxdWlu
dDMyIG51bSA9IG5TdHJpbmcudG9Mb25nKCk7CisgICAgcXVpbnQzMiByZXN1bHQgPSAoblNwYWNl
cyA/IChudW0gLyBuU3BhY2VzKSA6IG51bSk7CisgICAgcURlYnVnKCkgPDwgImdldENoYWxsZW5n
ZU51bWJlciIgPDwgZmllbGQgPDwgIm5TdHJpbmciIDw8IG5TdHJpbmcgPDwgIm51bSIgPDwgbnVt
IDw8IG5TcGFjZXMgPDwgInJlc3VsdCIgPDwgcmVzdWx0OworICAgIHJldHVybiByZXN1bHQ7Cit9
CisKK3N0YXRpYyBXZWJEZWJ1Z1NlcnZlclF0KiBzU2VydmVyOworCitXZWJEZWJ1Z1NlcnZlclF0
KiBXZWJEZWJ1Z1NlcnZlclF0OjpzZXJ2ZXIoKQoreworICAgIGlmICghc1NlcnZlcikKKyAgICAg
ICAgc1NlcnZlciA9IG5ldyBXZWJEZWJ1Z1NlcnZlclF0KCk7CisKKyAgICByZXR1cm4gc1NlcnZl
cjsKK30KKworV2ViRGVidWdTZXJ2ZXJRdDo6V2ViRGVidWdTZXJ2ZXJRdCgpCisgICAgOiBRT2Jq
ZWN0KCkKKyAgICAsIG1UY3BTZXJ2ZXIoMCkKKyAgICAsIG1QYWdlTnVtYmVyKDEpCit7CisgICAg
cURlYnVnKCkgPDwgIioqKioqKioqIG5ldyBXZWJEZWJ1Z1NlcnZlclF0ICoqKioqKioqIjsKK30K
KworV2ViRGVidWdTZXJ2ZXJRdDo6fldlYkRlYnVnU2VydmVyUXQoKQoreworICAgIHFEZWJ1Zygp
IDw8ICIqKioqKioqKiBkZWxldGUgfldlYkRlYnVnU2VydmVyUXQgKioqKioqKioiOworICAgIGNs
b3NlKCk7Cit9CisKK3ZvaWQgV2ViRGVidWdTZXJ2ZXJRdDo6bGlzdGVuKHF1aW50MTYgcG9ydCkK
K3sKKyAgICBpZiAobVRjcFNlcnZlcikKKyAgICAgICAgcmV0dXJuOworICAgIHFEZWJ1ZygpIDw8
ICIqKioqKioqKiBwb3J0ICIgPDwgcG9ydCA8PCAiICoqKioqKioqIjsKKyAgICBtVGNwU2VydmVy
ID0gbmV3IFFUY3BTZXJ2ZXIoKTsKKyAgICBtVGNwU2VydmVyLT5saXN0ZW4oUUhvc3RBZGRyZXNz
OjpBbnksIHBvcnQpOworICAgIGNvbm5lY3QobVRjcFNlcnZlciwgU0lHTkFMKG5ld0Nvbm5lY3Rp
b24oKSksIFNMT1QoZ290TmV3Q29ubmVjdGlvbigpKSk7Cit9CisKK3ZvaWQgV2ViRGVidWdTZXJ2
ZXJRdDo6Y2xvc2UoKQoreworICAgIGlmIChtVGNwU2VydmVyKSB7CisgICAgICAgIG1UY3BTZXJ2
ZXItPmNsb3NlKCk7CisgICAgICAgIG1UY3BTZXJ2ZXItPnNldFBhcmVudCgwKTsKKyAgICB9Cisg
ICAgbVRjcFNlcnZlciA9IDA7Cit9CisKK0luc3BlY3RvckNsaWVudFF0KiBXZWJEZWJ1Z1NlcnZl
clF0OjppbnNwZWN0b3JDbGllbnQoaW50IHBhZ2VOdW0pCit7CisgICAgUVdlYlBhZ2UqIHBhZ2Ug
PSBtUGFnZXMudmFsdWUocGFnZU51bSk7CisgICAgSW5zcGVjdG9yQ2xpZW50UXQqIGNsaWVudCA9
IG1JbnNwZWN0b3JDbGllbnRzLnZhbHVlKHBhZ2UsIDApOworICAgIHFEZWJ1ZygpIDw8ICJXZWJE
ZWJ1Z1NlcnZlclF0OjppbnNwZWN0b3JDbGllbnQiIDw8IHBhZ2VOdW0gCisgICAgICAgICAgICAg
PDwgKHBhZ2UgPyAiaGFzIHBhZ2UiIDogIm5vIHBhZ2UiKQorICAgICAgICAgICAgIDw8IChjbGll
bnQgPyAiaGFzIGNsaWVudCIgOiAibm8gY2xpZW50Iik7CisgICAgcmV0dXJuIGNsaWVudDsKK30K
Kwordm9pZCBXZWJEZWJ1Z1NlcnZlclF0OjpyZWdpc3RlclBhZ2UoUVdlYlBhZ2UqIHBhZ2UsIElu
c3BlY3RvckNsaWVudFF0KiBjbGllbnQpCit7CisgICAgcURlYnVnKCkgPDwgIldlYkRlYnVnU2Vy
dmVyUXQ6OnJlZ2lzdGVyUGFnZSI7CisgICAgaWYgKCFtUGFnZXMua2V5KHBhZ2UpKQorICAgICAg
ICBtUGFnZXMuaW5zZXJ0KG1QYWdlTnVtYmVyKyssIHBhZ2UpOworICAgIG1JbnNwZWN0b3JDbGll
bnRzLmluc2VydChwYWdlLCBjbGllbnQpOworfQorCit2b2lkIFdlYkRlYnVnU2VydmVyUXQ6OnVu
cmVnaXN0ZXJQYWdlKFFXZWJQYWdlKiBwYWdlKQoreworICAgIGludCBwYWdlTnVtID0gbVBhZ2Vz
LmtleShwYWdlKTsKKyAgICBtUGFnZXMucmVtb3ZlKHBhZ2VOdW0pOworICAgIG1JbnNwZWN0b3JD
bGllbnRzLnJlbW92ZShwYWdlKTsKK30KKwordm9pZCBXZWJEZWJ1Z1NlcnZlclF0Ojpnb3ROZXdD
b25uZWN0aW9uKCkKK3sKKyAgICBRVGNwU29ja2V0KiBtVGNwQ29ubmVjdGlvbiA9IG1UY3BTZXJ2
ZXItPm5leHRQZW5kaW5nQ29ubmVjdGlvbigpOworICAgIEh0dHBSZXF1ZXN0SGFuZGxlciogaGFu
ZGxlciA9CisgICAgICAgIG5ldyBIdHRwUmVxdWVzdEhhbmRsZXIobVRjcENvbm5lY3Rpb24sIHRo
aXMpOworICAgIGhhbmRsZXItPnNldFBhcmVudCh0aGlzKTsKK30KKworSHR0cFJlcXVlc3RIYW5k
bGVyOjpIdHRwUmVxdWVzdEhhbmRsZXIoUVRjcFNvY2tldCogdGNwQ29ubmVjdGlvbiwgV2ViRGVi
dWdTZXJ2ZXJRdCogc2VydmVyKQorICAgIDogUU9iamVjdChzZXJ2ZXIpCisgICAgLCBtVGNwQ29u
bmVjdGlvbih0Y3BDb25uZWN0aW9uKQorICAgICwgbVNlcnZlcihzZXJ2ZXIpCisgICAgLCBtSXNX
ZWJTb2NrZXQoZmFsc2UpCisgICAgLCBtSW5zcGVjdG9yQ2xpZW50KDApCit7CisgICAgbUVuZE9m
SGVhZGVycyA9IGZhbHNlOyAgICAKKyAgICBtQ29udGVudExlbmd0aCA9IDA7CisKKyAgICBjb25u
ZWN0KG1UY3BDb25uZWN0aW9uLCBTSUdOQUwocmVhZHlSZWFkKCkpLCBTTE9UKHRjcFJlYWR5UmVh
ZCgpKSk7CisgICAgY29ubmVjdChtVGNwQ29ubmVjdGlvbiwgU0lHTkFMKGRpc2Nvbm5lY3RlZCgp
KSwgU0xPVCh0Y3BDb25uZWN0aW9uRGlzY29ubmVjdGVkKCkpKTsKK30KKworSHR0cFJlcXVlc3RI
YW5kbGVyOjp+SHR0cFJlcXVlc3RIYW5kbGVyKCkKK3sKK30KKwordm9pZCBIdHRwUmVxdWVzdEhh
bmRsZXI6OnRjcFJlYWR5UmVhZCgpCit7CisgICAgUUh0dHBSZXF1ZXN0SGVhZGVyIGhlYWRlcjsK
KyAgICBpZiAoIW1UY3BDb25uZWN0aW9uKSB7CisgICAgICAgIHFEZWJ1ZygpIDw8ICJIdHRwUmVx
dWVzdEhhbmRsZXI6OnRjcFJlYWR5UmVhZCIgPDwgIm5vIHRjcENvbm5lY3Rpb24iOworICAgICAg
ICByZXR1cm47CisgICAgfQorICAgIGlmICghbUVuZE9mSGVhZGVycykgeworICAgICAgICB3aGls
ZSAobVRjcENvbm5lY3Rpb24tPmJ5dGVzQXZhaWxhYmxlKCkgJiYgIW1FbmRPZkhlYWRlcnMpIHsK
KyAgICAgICAgICAgIGlmICgwKSAKKyAgICAgICAgICAgICAgICBxRGVidWcoKSA8PCAiLTEtIGJ5
dGVzQXZhaWxhYmxlOiIgPDwgbVRjcENvbm5lY3Rpb24tPmJ5dGVzQXZhaWxhYmxlKCk7CisgICAg
ICAgICAgICBRQnl0ZUFycmF5IGxpbmUgPSBtVGNwQ29ubmVjdGlvbi0+cmVhZExpbmUoKTsKKyAg
ICAgICAgICAgIG1EYXRhLmFwcGVuZChsaW5lKTsKKyAgICAgICAgICAgIGlmIChsaW5lID09ICJc
clxuIikKKyAgICAgICAgICAgICAgICBtRW5kT2ZIZWFkZXJzID0gdHJ1ZTsKKyAgICAgICAgfQor
ICAgICAgICBpZiAobUVuZE9mSGVhZGVycykgeworICAgICAgICAgICAgaGVhZGVyID0gUUh0dHBS
ZXF1ZXN0SGVhZGVyKFFTdHJpbmc6OmZyb21MYXRpbjEobURhdGEpKTsKKyAgICAgICAgICAgIGlm
IChoZWFkZXIuaXNWYWxpZCgpKSB7CisKKyAgICAgICAgICAgICAgICBtTWV0aG9kID0gaGVhZGVy
Lm1ldGhvZCgpOworICAgICAgICAgICAgICAgIG1QYXRoID0gaGVhZGVyLnBhdGgoKTsKKyAgICAg
ICAgICAgICAgICBtQ29udGVudFR5cGUgPSBoZWFkZXIuY29udGVudFR5cGUoKS50b0xhdGluMSgp
OworICAgICAgICAgICAgICAgIG1Db250ZW50TGVuZ3RoID0gaGVhZGVyLmNvbnRlbnRMZW5ndGgo
KTsKKyAgICAgICAgICAgICAgICBpZiAoaGVhZGVyLmhhc0tleSgiVXBncmFkZSIpICYmIChoZWFk
ZXIudmFsdWUoIlVwZ3JhZGUiKSA9PSBRTGF0aW4xU3RyaW5nKCJXZWJTb2NrZXQiKSkpCisgICAg
ICAgICAgICAgICAgICAgIG1Jc1dlYlNvY2tldCA9IHRydWU7CisKKyAgICAgICAgICAgICAgICBt
RGF0YS5jbGVhcigpOworICAgICAgICAgICAgfSBlbHNlIHsKKyAgICAgICAgICAgICAgICBxRGVi
dWcoKSA8PCAiQ291bGQgbm90IHBhcnNlIEhUVFAgaGVhZGVyOiIgPDwgbURhdGE7CisgICAgICAg
ICAgICB9CisgICAgICAgIH0KKyAgICB9CisgICAgaWYgKGZhbHNlKQorICAgICAgICBxRGVidWco
KSA8PCAidGNwUmVhZHlSZWFkIiAKKyAgICAgICAgICAgICAgICAgPDwgIm1NZXRob2QiIDw8IG1N
ZXRob2QKKyAgICAgICAgICAgICAgICAgPDwgIm1QYXRoIiA8PCBtUGF0aAorICAgICAgICAgICAg
ICAgICA8PCAibUlzV2ViU29ja2V0IiA8PCBtSXNXZWJTb2NrZXQKKyAgICAgICAgICAgICAgICAg
PDwgIm1Db250ZW50VHlwZSIgPDwgbUNvbnRlbnRUeXBlCisgICAgICAgICAgICAgICAgIDw8ICJt
Q29udGVudExlbmd0aCIgPDwgbUNvbnRlbnRMZW5ndGgKKyAgICAgICAgICAgICAgICAgPDwgImJ5
dGVzQXZhaWxhYmxlIiA8PCBtVGNwQ29ubmVjdGlvbi0+Ynl0ZXNBdmFpbGFibGUoKTsKKyAgICAg
ICAgICAKKworICAgIGlmIChtRW5kT2ZIZWFkZXJzKSB7CisKKyAgICAgICAgUVN0cmluZ0xpc3Qg
cGF0aEFuZFF1ZXJ5ID0gbVBhdGguc3BsaXQoIj8iKTsKKyAgICAgICAgaWYgKGRlYnVnKQorICAg
ICAgICAgICAgcURlYnVnKCkgPDwgInBhdGhBbmRRdWVyeSIgPDwgcGF0aEFuZFF1ZXJ5OworICAg
ICAgICBRU3RyaW5nTGlzdCB3b3JkcyA9IHBhdGhBbmRRdWVyeVswXS5zcGxpdChRU3RyaW5nOjpm
cm9tTGF0aW4xKCIvIikpOworICAgICAgICBxRGVidWcoKSA8PCAid29yZHMiIDw8IHdvcmRzOwor
ICAgICAgICBpZiAoMCkgeworICAgICAgICAgICAgUVN0cmluZ0xpc3QgcXVlcnlXb3JkczsKKyAg
ICAgICAgICAgIGlmIChwYXRoQW5kUXVlcnkuc2l6ZSgpID4gMSkgCisgICAgICAgICAgICAgICAg
cXVlcnlXb3JkcyA9IHBhdGhBbmRRdWVyeVsxXS5zcGxpdChRU3RyaW5nOjpmcm9tTGF0aW4xKCI9
IikpOworICAgICAgICB9CisKKyAgICAgICAgaWYgKG1Jc1dlYlNvY2tldCkgeworICAgICAgICAg
ICAgLy8gc3dpdGNoIHRvIHdlYnNvY2tldC1zdHlsZSBXZWJTb2NrZXRTZXJ2aWNlIG1lc3NhZ2lu
ZworICAgICAgICAgICAgaWYgKG1UY3BDb25uZWN0aW9uKSB7CisgICAgICAgICAgICAgICAgbVRj
cENvbm5lY3Rpb24tPmRpc2Nvbm5lY3QoU0lHTkFMKHJlYWR5UmVhZCgpKSk7CisgICAgICAgICAg
ICAgICAgY29ubmVjdChtVGNwQ29ubmVjdGlvbiwgU0lHTkFMKHJlYWR5UmVhZCgpKSwgU0xPVCh3
ZWJTb2NrZXRSZWFkeVJlYWQoKSkpOworCisgICAgICAgICAgICAgICAgUUJ5dGVBcnJheSBrZXkz
ID0gbVRjcENvbm5lY3Rpb24tPnJlYWQoOCk7CisgICAgICAgICAgICAgICAgcURlYnVnKCkgPDwg
ZW5kbDsKKyAgICAgICAgICAgICAgICBxRGVidWcoKSA8PCBoZWFkZXIudG9TdHJpbmcoKTsKKyAg
ICAgICAgICAgICAgICBxRGVidWcoKSA8PCAia2V5MyIgPDwga2V5My50b0hleCgpOworICAgICAg
ICAgICAgICAgIHFEZWJ1ZygpIDw8IGVuZGw7CisKKyAgICAgICAgICAgICAgICBxdWludDMyIG51
bWJlcjEgPSBnZXRDaGFsbGVuZ2VOdW1iZXJGcm9tRmllbGQoaGVhZGVyLnZhbHVlKCJTZWMtV2Vi
U29ja2V0LUtleTEiKSk7CisgICAgICAgICAgICAgICAgcXVpbnQzMiBudW1iZXIyID0gZ2V0Q2hh
bGxlbmdlTnVtYmVyRnJvbUZpZWxkKGhlYWRlci52YWx1ZSgiU2VjLVdlYlNvY2tldC1LZXkyIikp
OworICAgICAgICAgICAgICAgIAorICAgICAgICAgICAgICAgIGNoYXIgcmVzcG9uc2VEYXRhWzE2
XTsKKyAgICAgICAgICAgICAgICBnZW5lcmF0ZUV4cGVjdGVkQ2hhbGxlbmdlUmVzcG9uc2UobnVt
YmVyMSwgbnVtYmVyMiwgKHVuc2lnbmVkIGNoYXIqKWtleTMuZGF0YSgpLCAodW5zaWduZWQgY2hh
ciopcmVzcG9uc2VEYXRhKTsKKyAgICAgICAgICAgICAgICBRQnl0ZUFycmF5IHJlc3BvbnNlKHJl
c3BvbnNlRGF0YSwgc2l6ZW9mKHJlc3BvbnNlRGF0YSkpOworICAgICAgICAgICAgICAgIHFEZWJ1
ZygpIDw8ICJjaGFsbGVuZ2UgcmVzcG9uc2UiIDw8IHJlc3BvbnNlLnRvSGV4KCk7CisKKyAgICAg
ICAgICAgICAgICBRSHR0cFJlc3BvbnNlSGVhZGVyIHJlc3BvbnNlSGVhZGVyKDEwMSwgIldlYlNv
Y2tldCBQcm90b2NvbCBIYW5kc2hha2UiLCAxLCAxKTsKKyAgICAgICAgICAgICAgICByZXNwb25z
ZUhlYWRlci5zZXRWYWx1ZSgiVXBncmFkZSIsIGhlYWRlci52YWx1ZSgiVXBncmFkZSIpKTsKKyAg
ICAgICAgICAgICAgICByZXNwb25zZUhlYWRlci5zZXRWYWx1ZSgiQ29ubmVjdGlvbiIsIGhlYWRl
ci52YWx1ZSgiQ29ubmVjdGlvbiIpKTsKKyAgICAgICAgICAgICAgICByZXNwb25zZUhlYWRlci5z
ZXRWYWx1ZSgiU2VjLVdlYlNvY2tldC1PcmlnaW4iLCBoZWFkZXIudmFsdWUoIk9yaWdpbiIpKTsK
KyAgICAgICAgICAgICAgICByZXNwb25zZUhlYWRlci5zZXRWYWx1ZSgiU2VjLVdlYlNvY2tldC1M
b2NhdGlvbiIsICgid3M6Ly8iICsgaGVhZGVyLnZhbHVlKCJIb3N0IikgKyBtUGF0aCkpOworICAg
ICAgICAgICAgICAgIHJlc3BvbnNlSGVhZGVyLnNldENvbnRlbnRMZW5ndGgocmVzcG9uc2Uuc2l6
ZSgpKTsKKyAgICAgICAgICAgICAgICBtVGNwQ29ubmVjdGlvbi0+d3JpdGUocmVzcG9uc2VIZWFk
ZXIudG9TdHJpbmcoKS50b0xhdGluMSgpKTsKKyAgICAgICAgICAgICAgICBtVGNwQ29ubmVjdGlv
bi0+d3JpdGUocmVzcG9uc2UpOworICAgICAgICAgICAgICAgIG1UY3BDb25uZWN0aW9uLT5mbHVz
aCgpOworCisgICAgICAgICAgICAgICAgaWYgKCh3b3Jkcy5zaXplKCkgPT0gNCkKKyAgICAgICAg
ICAgICAgICAgICAgJiYgKHdvcmRzWzFdID09IFFTdHJpbmc6OmZyb21MYXRpbjEoImRldnRvb2xz
IikpCisgICAgICAgICAgICAgICAgICAgICYmICh3b3Jkc1syXSA9PSBRU3RyaW5nOjpmcm9tTGF0
aW4xKCJwYWdlIikpKSB7CisgICAgICAgICAgICAgICAgICAgIGludCBwYWdlTnVtID0gd29yZHNb
M10udG9JbnQoKTsKKyAgICAgICAgICAgICAgICAgICAgcURlYnVnKCkgPDwgInBhZ2VOdW0iIDw8
IHBhZ2VOdW07CisgICAgICAgICAgICAgICAgICAgIG1JbnNwZWN0b3JDbGllbnQgPSBtU2VydmVy
LT5pbnNwZWN0b3JDbGllbnQocGFnZU51bSk7CisgICAgICAgICAgICAgICAgICAgIGlmIChtSW5z
cGVjdG9yQ2xpZW50KQorICAgICAgICAgICAgICAgICAgICAgICAgbUluc3BlY3RvckNsaWVudC0+
c2V0UmVtb3RlRnJvbnRlbmQobmV3IFJlbW90ZUZyb250ZW5kQ2hhbm5lbCh0aGlzKSk7CisgICAg
ICAgICAgICAgICAgfQorICAgICAgICAgICAgICAgIHFEZWJ1ZygpIDw8IHJlc3BvbnNlSGVhZGVy
LnRvU3RyaW5nKCk7CisgICAgICAgICAgICB9IGVsc2UgeworICAgICAgICAgICAgICAgIHFEZWJ1
ZygpIDw8IF9fRlVOQ1RJT05fXyA8PCBfX0ZJTEVfXyA8PCBfX0xJTkVfXyA8PCAibVRjcENvbm5l
Y3Rpb24gbnVsbCAoZGlzY29ubmVjdGVkPykiOworICAgICAgICAgICAgfQorCisgICAgICAgICAg
ICByZXR1cm47CisgICAgICAgIH0KKyAgICAgICAgaWYgKG1Db250ZW50TGVuZ3RoICYmIChtVGNw
Q29ubmVjdGlvbi0+Ynl0ZXNBdmFpbGFibGUoKSA8IG1Db250ZW50TGVuZ3RoKSkgeworICAgICAg
ICAgICAgcURlYnVnKCkgPDwgInNob3J0IGNvbnRlbnQsIHdhaXRpbmcgZm9yIG1vcmUgZGF0YSAu
Li4iCisgICAgICAgICAgICAgICAgICAgICA8PCAibU1ldGhvZCIgPDwgbU1ldGhvZAorICAgICAg
ICAgICAgICAgICAgICAgPDwgIm1QYXRoIiA8PCBtUGF0aAorICAgICAgICAgICAgICAgICAgICAg
PDwgIm1Db250ZW50VHlwZSIgPDwgbUNvbnRlbnRUeXBlCisgICAgICAgICAgICAgICAgICAgICA8
PCAibUNvbnRlbnRMZW5ndGgiIDw8IG1Db250ZW50TGVuZ3RoCisgICAgICAgICAgICAgICAgICAg
ICA8PCAiYnl0ZXNBdmFpbGFibGUiIDw8IG1UY3BDb25uZWN0aW9uLT5ieXRlc0F2YWlsYWJsZSgp
OworICAgICAgICAgICAgcmV0dXJuOworICAgICAgICB9CisKKyAgICAgICAgUUJ5dGVBcnJheSBj
b250ZW50ID0gbVRjcENvbm5lY3Rpb24tPnJlYWQobUNvbnRlbnRMZW5ndGgpOworICAgICAgICBt
RW5kT2ZIZWFkZXJzID0gZmFsc2U7CisKKyAgICAgICAgUVN0cmluZyBjbWR0eXBlID0gd29yZHNb
MV07CisgICAgICAgIGlmIChkZWJ1ZykgeworICAgICAgICAgICAgcURlYnVnKCkgPDwgImNtZHR5
cGUiIDw8IHdvcmRzWzBdIDw8IGNtZHR5cGU7CisgICAgICAgICAgICBxRGVidWcoKSA8PCBoZWFk
ZXIudG9TdHJpbmcoKTsKKyAgICAgICAgfQorCisgICAgICAgIFFTdHJpbmdMaXN0IHBhdGh3b3Jk
cyA9IHdvcmRzLm1pZCgxKTsKKyAgICAgICAgUVN0cmluZyBwYXRoID0gUUxhdGluMVN0cmluZygi
Oi8iKTsKKyAgICAgICAgcGF0aC5hcHBlbmQocGF0aHdvcmRzLmpvaW4oUVN0cmluZzo6ZnJvbUxh
dGluMSgiLyIpKSk7CisgICAgICAgIFFGaWxlIGZpbGUocGF0aCk7CisgICAgICAgIGludCByYyA9
IGZpbGUub3BlbihRSU9EZXZpY2U6OlJlYWRPbmx5KTsKKyAgICAgICAgUUJ5dGVBcnJheSByZXNw
b25zZTsKKyAgICAgICAgaWYgKHJjKSAKKyAgICAgICAgICAgIHJlc3BvbnNlID0gZmlsZS5yZWFk
QWxsKCk7CisKKyAgICAgICAgY29tcGxldGVSZXF1ZXN0KGZpbGUuZXhpc3RzKCkgPyAyMDAgOiA0
MDQsIHJlc3BvbnNlKTsKKyAgICAgICAgcmV0dXJuOworICAgIH0KK30KKwordm9pZCBIdHRwUmVx
dWVzdEhhbmRsZXI6OmNvbXBsZXRlUmVxdWVzdChpbnQgY29kZSwgUUJ5dGVBcnJheSByZXNwb25z
ZSkKK3sKKworICAgIGlmIChkZWJ1ZykKKyAgICAgICAgcURlYnVnKCkgPDwgIkh0dHBSZXF1ZXN0
SGFuZGxlcjo6Y29tcGxldGVSZXF1ZXN0IiAKKyAgICAgICAgICAgICAgICAgPDwgY29kZSAKKyAg
ICAgICAgICAgICAgICAgPDwgKG1UY3BDb25uZWN0aW9uID8gImNvbm5lY3RlZCIgOiAiZGlzY29u
bmVjdGVkIikgCisgICAgICAgICAgICAgICAgIDw8IChtSXNXZWJTb2NrZXQgPyAiV2ViU29ja2V0
IiA6ICIiKTsKKyAgICBpZiAoIW1Jc1dlYlNvY2tldCkgeworICAgICAgICBRU3RyaW5nIHRleHQg
PSAgKGNvZGUgPT0gMjAwKSA/IFFTdHJpbmc6OmZyb21MYXRpbjEoIk9LIikgOiBRU3RyaW5nOjpm
cm9tTGF0aW4xKCJOb3QgT0siKTsKKyAgICAgICAgUUh0dHBSZXNwb25zZUhlYWRlciByZXNwb25z
ZUhlYWRlcihjb2RlLCB0ZXh0LCAxLCAwKTsKKyAgICAgICAgcmVzcG9uc2VIZWFkZXIuc2V0VmFs
dWVzKG1SZXNwb25zZUhlYWRlcnMpOworICAgICAgICByZXNwb25zZUhlYWRlci5zZXRDb250ZW50
TGVuZ3RoKHJlc3BvbnNlLnNpemUoKSk7CisgICAgICAgIGlmICghbUNvbnRlbnRUeXBlLmlzRW1w
dHkoKSkKKyAgICAgICAgICAgIHJlc3BvbnNlSGVhZGVyLnNldENvbnRlbnRUeXBlKFFTdHJpbmc6
OmZyb21MYXRpbjEobUNvbnRlbnRUeXBlKSk7CisKKyAgICAgICAgUUJ5dGVBcnJheSBhc2NpaUhl
YWRlciA9IHJlc3BvbnNlSGVhZGVyLnRvU3RyaW5nKCkudG9Bc2NpaSgpOworICAgICAgICBtVGNw
Q29ubmVjdGlvbi0+d3JpdGUoYXNjaWlIZWFkZXIpOworICAgIH0KKworICAgIGlmIChtSXNXZWJT
b2NrZXQpCisgICAgICAgIG1UY3BDb25uZWN0aW9uLT5wdXRDaGFyKDB4MDApOworICAgIG1UY3BD
b25uZWN0aW9uLT53cml0ZShyZXNwb25zZSk7CisgICAgaWYgKG1Jc1dlYlNvY2tldCkKKyAgICAg
ICAgbVRjcENvbm5lY3Rpb24tPnB1dENoYXIoMHhGRik7CisgICAgbVRjcENvbm5lY3Rpb24tPmZs
dXNoKCk7CisgICAgaWYgKCFtSXNXZWJTb2NrZXQpCisgICAgICAgIG1UY3BDb25uZWN0aW9uLT5j
bG9zZSgpOworCit9CisKK3ZvaWQgSHR0cFJlcXVlc3RIYW5kbGVyOjp0Y3BDb25uZWN0aW9uRGlz
Y29ubmVjdGVkKCkKK3sKKyAgICBpZiAobVRjcENvbm5lY3Rpb24gJiYgbVRjcENvbm5lY3Rpb24t
PmJ5dGVzQXZhaWxhYmxlKCkpIHsKKyAgICAgICAgUUJ5dGVBcnJheSBjb250ZW50ID0gbVRjcENv
bm5lY3Rpb24tPnJlYWQobVRjcENvbm5lY3Rpb24tPmJ5dGVzQXZhaWxhYmxlKCkpOworICAgICAg
ICBxRGVidWcoKSA8PCAiSHR0cFJlcXVlc3RIYW5kbGVyOjp0Y3BDb25uZWN0aW9uRGlzY29ubmVj
dGVkIiA8PCAidHJhaWxpbmcgY29udGVudCIgPDwgY29udGVudDsKKyAgICB9CisgICAgbVRjcENv
bm5lY3Rpb24gPSAwOworfQorCitpbnQgSHR0cFJlcXVlc3RIYW5kbGVyOjp3ZWJTb2NrZXRTZW5k
KFFCeXRlQXJyYXkgcGF5bG9hZCkKK3sKKyAgICBtVGNwQ29ubmVjdGlvbi0+cHV0Q2hhcigweDAw
KTsKKyAgICBpbnQgbkJ5dGVzID0gbVRjcENvbm5lY3Rpb24tPndyaXRlKHBheWxvYWQpOworICAg
IG1UY3BDb25uZWN0aW9uLT5wdXRDaGFyKDB4RkYpOworICAgIG1UY3BDb25uZWN0aW9uLT5mbHVz
aCgpOworICAgIHJldHVybiBuQnl0ZXM7Cit9CisKK2ludCBIdHRwUmVxdWVzdEhhbmRsZXI6Ondl
YlNvY2tldFNlbmQoY29uc3QgY2hhciogZGF0YSwgc2l6ZV90IGxlbikKK3sKKyAgICBtVGNwQ29u
bmVjdGlvbi0+cHV0Q2hhcigweDAwKTsKKyAgICBpbnQgbkJ5dGVzID0gbVRjcENvbm5lY3Rpb24t
PndyaXRlKGRhdGEsIGxlbik7CisgICAgbVRjcENvbm5lY3Rpb24tPnB1dENoYXIoMHhGRik7Cisg
ICAgbVRjcENvbm5lY3Rpb24tPmZsdXNoKCk7CisgICAgcmV0dXJuIG5CeXRlczsKK30KKwordm9p
ZCBIdHRwUmVxdWVzdEhhbmRsZXI6OndlYlNvY2tldFJlYWR5UmVhZCgpCit7CisgICAgaWYgKCFt
VGNwQ29ubmVjdGlvbi0+Ynl0ZXNBdmFpbGFibGUoKSkKKyAgICAgICAgcmV0dXJuOworICAgIFFC
eXRlQXJyYXkgY29udGVudCA9IG1UY3BDb25uZWN0aW9uLT5yZWFkKG1UY3BDb25uZWN0aW9uLT5i
eXRlc0F2YWlsYWJsZSgpKTsKKyAgICBtRGF0YS5hcHBlbmQoY29udGVudCk7CisgICAgaWYgKDAp
IHsKKyAgICAgICAgcURlYnVnKCkgPDwgIndlYlNvY2tldFJlYWR5UmVhZCIgPDwgImNvbnRlbnQu
c2l6ZSgpIiA8PCBjb250ZW50LnNpemUoKSAKKyAgICAgICAgICAgICAgICAgPDwgIm1EYXRhLnNp
emUoKSIgPDwgbURhdGEuc2l6ZSgpOworICAgICAgICBxRGVidWcoKSA8PCBtRGF0YTsKKyAgICAg
ICAgcURlYnVnKCkgPDwgZW5kbDsKKyAgICB9CisgICAgd2hpbGUgKG1EYXRhLnNpemUoKSA+IDAp
IHsKKworICAgICAgICBpZiAobURhdGFbMF0pIHsKKyAgICAgICAgICAgIHFDcml0aWNhbCgpIDw8
ICAid2ViU29ja2V0UmVhZHlSZWFkOiB1bmtub3duIGZyYW1lIHR5cGUiIDw8IG1EYXRhWzBdOwor
ICAgICAgICAgICAgbURhdGEuY2xlYXIoKTsKKyAgICAgICAgICAgIG1UY3BDb25uZWN0aW9uLT5j
bG9zZSgpOworICAgICAgICAgICAgcmV0dXJuOworICAgICAgICB9CisgICAgICAgIGludCBwb3Mg
PSBtRGF0YS5pbmRleE9mKDB4ZmYsIDEpOworICAgICAgICBpZiAocG9zIDwgMCkKKyAgICAgICAg
ICAgIHJldHVybjsKKworICAgICAgICBzaXplX3QgbGVuID0gcG9zIC0gMTsKKworICAgICAgICBR
Qnl0ZUFycmF5IHBheWxvYWQgPSBtRGF0YS5taWQoMSwgbGVuKTsKKworICAgICAgICBpZiAobUlu
c3BlY3RvckNsaWVudCkKKyAgICAgICAgICAgIG1JbnNwZWN0b3JDbGllbnQtPmRpc3BhdGNoKFFT
dHJpbmc6OmZyb21VdGY4KHBheWxvYWQpKTsKKworICAgICAgICBtRGF0YSA9IG1EYXRhLm1pZChs
ZW4rMik7CisgICAgfQorCit9CisKK1JlbW90ZUZyb250ZW5kQ2hhbm5lbDo6UmVtb3RlRnJvbnRl
bmRDaGFubmVsKEh0dHBSZXF1ZXN0SGFuZGxlciogcmVxdWVzdEhhbmRsZXIpCisgICAgOiBRT2Jq
ZWN0KHJlcXVlc3RIYW5kbGVyKQorICAgICwgbV9yZXF1ZXN0SGFuZGxlcihyZXF1ZXN0SGFuZGxl
cikKK3sKK30KKworYm9vbCBSZW1vdGVGcm9udGVuZENoYW5uZWw6OnNlbmRNZXNzYWdlVG9Gcm9u
dGVuZChjb25zdCBTdHJpbmcgJm1lc3NhZ2UpCit7CisgICAgaWYgKGRlYnVnKQorICAgICAgICBx
RGVidWcoKSA8PCAiUmVtb3RlRnJvbnRlbmRDaGFubmVsOjpzZW5kTWVzc2FnZVRvRnJvbnRlbmQi
IDw8IG1lc3NhZ2U7CisgICAgaWYgKCFtX3JlcXVlc3RIYW5kbGVyKQorICAgICAgICByZXR1cm4g
ZmFsc2U7CisgICAgQ1N0cmluZyBjc3RyID0gbWVzc2FnZS51dGY4KCk7CisgICAgcmV0dXJuIG1f
cmVxdWVzdEhhbmRsZXItPndlYlNvY2tldFNlbmQoY3N0ci5kYXRhKCksIGNzdHIubGVuZ3RoKCkp
OworfQorCit9CmRpZmYgLS1naXQgYS9XZWJLaXQvcXQvV2ViQ29yZVN1cHBvcnQvV2ViRGVidWdT
ZXJ2ZXJRdC5oIGIvV2ViS2l0L3F0L1dlYkNvcmVTdXBwb3J0L1dlYkRlYnVnU2VydmVyUXQuaApu
ZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5jMWNlYmQ3Ci0tLSAvZGV2L251bGwK
KysrIGIvV2ViS2l0L3F0L1dlYkNvcmVTdXBwb3J0L1dlYkRlYnVnU2VydmVyUXQuaApAQCAtMCww
ICsxLDExNCBAQAorLyoKKyAgICBDb3B5cmlnaHQgKEMpIDIwMTAgTm9raWEgQ29ycG9yYXRpb24g
YW5kL29yIGl0cyBzdWJzaWRpYXJ5KC1pZXMpCisKKyAgICBUaGlzIGxpYnJhcnkgaXMgZnJlZSBz
b2Z0d2FyZTsgeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29yCisgICAgbW9kaWZ5IGl0IHVu
ZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05VIExpYnJhcnkgR2VuZXJhbCBQdWJsaWMKKyAgICBMaWNl
bnNlIGFzIHB1Ymxpc2hlZCBieSB0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uOyBlaXRoZXIK
KyAgICB2ZXJzaW9uIDIgb2YgdGhlIExpY2Vuc2UsIG9yIChhdCB5b3VyIG9wdGlvbikgYW55IGxh
dGVyIHZlcnNpb24uCisKKyAgICBUaGlzIGxpYnJhcnkgaXMgZGlzdHJpYnV0ZWQgaW4gdGhlIGhv
cGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCwKKyAgICBidXQgV0lUSE9VVCBBTlkgV0FSUkFOVFk7
IHdpdGhvdXQgZXZlbiB0aGUgaW1wbGllZCB3YXJyYW50eSBvZgorICAgIE1FUkNIQU5UQUJJTElU
WSBvciBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRS4gIFNlZSB0aGUgR05VCisgICAg
TGlicmFyeSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGZvciBtb3JlIGRldGFpbHMuCisKKyAgICBZ
b3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgTGlicmFyeSBHZW5lcmFs
IFB1YmxpYyBMaWNlbnNlCisgICAgYWxvbmcgd2l0aCB0aGlzIGxpYnJhcnk7IHNlZSB0aGUgZmls
ZSBDT1BZSU5HLkxJQi4gIElmIG5vdCwgd3JpdGUgdG8KKyAgICB0aGUgRnJlZSBTb2Z0d2FyZSBG
b3VuZGF0aW9uLCBJbmMuLCA1MSBGcmFua2xpbiBTdHJlZXQsIEZpZnRoIEZsb29yLAorICAgIEJv
c3RvbiwgTUEgMDIxMTAtMTMwMSwgVVNBLgorKi8KKworI2lmbmRlZiBXZWJEZWJ1Z1NlcnZlclF0
X2gKKyNkZWZpbmUgV2ViRGVidWdTZXJ2ZXJRdF9oCisKKyNpbmNsdWRlICJJbnNwZWN0b3JDbGll
bnRRdC5oIgorCitjbGFzcyBRVGNwU2VydmVyOworY2xhc3MgUVRjcFNvY2tldDsKKyNpbmNsdWRl
IDxRTGlzdD4KKyNpbmNsdWRlIDxRTWFwPgorI2luY2x1ZGUgPFFPYmplY3Q+CisjaW5jbHVkZSA8
UVBhaXI+CisjaW5jbHVkZSA8UVN0cmluZz4KKworbmFtZXNwYWNlIFdlYkNvcmUgeworY2xhc3Mg
SHR0cFJlcXVlc3RIYW5kbGVyOworY2xhc3MgSW5zcGVjdG9yQ2xpZW50UXQ7CisKK2NsYXNzIFdl
YkRlYnVnU2VydmVyUXQgOiBwdWJsaWMgUU9iamVjdCB7CisgICAgUV9PQkpFQ1QKKyAgICAgICAg
cHVibGljOgorCisgICAgc3RhdGljIFdlYkRlYnVnU2VydmVyUXQqIHNlcnZlcigpOworCisgICAg
dm9pZCBsaXN0ZW4ocXVpbnQxNiBwb3J0KTsKKworICAgIHZvaWQgcmVnaXN0ZXJQYWdlKFFXZWJQ
YWdlICpwYWdlLCBJbnNwZWN0b3JDbGllbnRRdCogY2xpZW50KTsKKyAgICB2b2lkIHVucmVnaXN0
ZXJQYWdlKFFXZWJQYWdlICpwYWdlKTsKKworICAgIHZvaWQgY2xvc2UoKTsKKyAgICBJbnNwZWN0
b3JDbGllbnRRdCogaW5zcGVjdG9yQ2xpZW50KGludCBwYWdlTnVtKTsKKworcHJvdGVjdGVkOgor
ICAgIFdlYkRlYnVnU2VydmVyUXQoKTsKKyAgICB2aXJ0dWFsIH5XZWJEZWJ1Z1NlcnZlclF0KCk7
CisKK3ByaXZhdGU6CisgICAgUVRjcFNlcnZlciogbVRjcFNlcnZlcjsKKyAgICBRTWFwPGludCwg
UVdlYlBhZ2UqPiBtUGFnZXM7CisgICAgUU1hcDxRV2ViUGFnZSosIEluc3BlY3RvckNsaWVudFF0
Kj4gbUluc3BlY3RvckNsaWVudHM7CisgICAgaW50IG1QYWdlTnVtYmVyOworCisgICAgcHJpdmF0
ZSBzbG90czoKKyAgICB2b2lkIGdvdE5ld0Nvbm5lY3Rpb24oKTsKKworfTsKKworY2xhc3MgUmVt
b3RlRnJvbnRlbmRDaGFubmVsIDogcHVibGljIFFPYmplY3QgeworICAgIFFfT0JKRUNUCisgICAg
ICAgIHB1YmxpYzoKKworICAgIFJlbW90ZUZyb250ZW5kQ2hhbm5lbChIdHRwUmVxdWVzdEhhbmRs
ZXIqIHJlcXVlc3RIYW5kbGVyKTsKKyAgICBib29sIHNlbmRNZXNzYWdlVG9Gcm9udGVuZChjb25z
dCBTdHJpbmcmIG1lc3NhZ2UpOworCitwcml2YXRlOgorICAgIEh0dHBSZXF1ZXN0SGFuZGxlciog
bV9yZXF1ZXN0SGFuZGxlcjsKK307CisKK2NsYXNzIEh0dHBSZXF1ZXN0SGFuZGxlciA6IHB1Ymxp
YyBRT2JqZWN0IHsKKyAgICBRX09CSkVDVAorCisgICAgICAgIHB1YmxpYzoKKworICAgIEh0dHBS
ZXF1ZXN0SGFuZGxlcihRVGNwU29ja2V0ICp0Y3BDb25uZWN0aW9uLCBXZWJEZWJ1Z1NlcnZlclF0
ICpzZXJ2ZXIpOworICAgIHZpcnR1YWwgfkh0dHBSZXF1ZXN0SGFuZGxlcigpOworICAgIHZpcnR1
YWwgdm9pZCBjb21wbGV0ZVJlcXVlc3QoaW50IGNvZGUsIFFCeXRlQXJyYXkgcmVzcG9uc2UpOwor
ICAgIHZpcnR1YWwgaW50IHdlYlNvY2tldFNlbmQoUUJ5dGVBcnJheSBwYXlsb2FkKTsKKyAgICB2
aXJ0dWFsIGludCB3ZWJTb2NrZXRTZW5kKGNvbnN0IGNoYXIgKnBheWxvYWQsIHNpemVfdCBsZW4p
OworCitwcml2YXRlOgorICAgIFFUY3BTb2NrZXQqIG1UY3BDb25uZWN0aW9uOworICAgIFdlYkRl
YnVnU2VydmVyUXQqIG1TZXJ2ZXI7CisKKyAgICBRU3RyaW5nIG1NZXRob2Q7CisgICAgUVN0cmlu
ZyBtUGF0aDsKKyAgICBRQnl0ZUFycmF5IG1Db250ZW50VHlwZTsKKyAgICBpbnQgbUNvbnRlbnRM
ZW5ndGg7CisgICAgYm9vbCBtRW5kT2ZIZWFkZXJzOworICAgIFFCeXRlQXJyYXkgbURhdGE7Cisg
ICAgUUxpc3Q8UVBhaXI8UVN0cmluZywgUVN0cmluZz4gPiBtUmVzcG9uc2VIZWFkZXJzOworICAg
IGJvb2wgbUlzV2ViU29ja2V0OworICAgIEluc3BlY3RvckNsaWVudFF0KiBtSW5zcGVjdG9yQ2xp
ZW50OworCisgICAgdm9pZCBoYW5kbGVJbnNwZWN0b3JSZXF1ZXN0KFFTdHJpbmdMaXN0IHdvcmRz
KTsKKyAgICB2b2lkIGhhbmRsZUZyb21Gcm9udGVuZFJlcXVlc3QoKTsKKyAgICB2b2lkIGhhbmRs
ZVJlc291cmNlUmVxdWVzdChRU3RyaW5nTGlzdCB3b3Jkcyk7CisKKyAgICBwcml2YXRlIHNsb3Rz
OgorICAgIHZvaWQgdGNwUmVhZHlSZWFkKCk7CisgICAgdm9pZCB0Y3BDb25uZWN0aW9uRGlzY29u
bmVjdGVkKCk7CisgICAgdm9pZCB3ZWJTb2NrZXRSZWFkeVJlYWQoKTsKKworfTsKKworfQorI2Vu
ZGlmCmRpZmYgLS1naXQgYS9XZWJLaXRUb29scy9DaGFuZ2VMb2cgYi9XZWJLaXRUb29scy9DaGFu
Z2VMb2cKaW5kZXggZWNiYjQ4Zi4uZDRhYzFhMyAxMDA2NDQKLS0tIGEvV2ViS2l0VG9vbHMvQ2hh
bmdlTG9nCisrKyBiL1dlYktpdFRvb2xzL0NoYW5nZUxvZwpAQCAtMSwzICsxLDIwIEBACisyMDEw
LTA4LTEzICBKYW1leSBIaWNrcyAgPGphbWV5LmhpY2tzQG5va2lhLmNvbT4KKworICAgICAgICBS
ZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICByZW1vdGUgV2ViIEluc3BlY3Rv
ciBzdXBwb3J0IGZvciBRdFdlYktpdAorCisgICAgICAgIFVudGlsIHdlIGhhdmUgYW4gQVBJIGZv
ciBlbmFibGluZyByZW1vdGUgV2ViIEluc3BlY3Rvciwgc2V0CisgICAgICAgIHByb3BlcnR5IHFf
d2ViRGVidWdTZXJ2ZXJQb3J0IG9uIHRoZSBRV2ViUGFnZS4gQWxsIHBhZ2VzIHdpdGggdGhhdAor
ICAgICAgICBwcm9wZXJ0eSBzZXQgd2lsbCBiZSByZW1vdGVseSBpbnNwZWN0YWJsZS4KKworICAg
ICAgICBVUkwgZm9yIHJlbW90ZSBpbnNwZWN0aW9uIGlzIGh0dHA6Ly9sb2NhbGhvc3Q6UE9SVC9k
ZXZ0b29scy9wYWdlL04KKyAgICAgICAgd2hlcmUgUE9SVCBpcyBzcGVjaWZpZWQgYnkgcV93ZWJE
ZWJ1Z1NlcnZlclBvcnQgYW5kIE4gaXMgdGhlCisgICAgICAgIG51bWJlciBvZiB0aGUgUVdlYlBh
Z2UgaW5zdGFuY2Ugc3RhcnRpbmcgZnJvbSAxLgorICAgICAgICAKKyAgICAgICAgKiBRdFRlc3RC
cm93c2VyL21haW53aW5kb3cuY3BwOgorICAgICAgICAoTWFpbldpbmRvdzo6TWFpbldpbmRvdyk6
CisKIDIwMTAtMDgtMTMgIEtlbmljaGkgSXNoaWJhc2hpICA8YmFzaGlAZ29vZ2xlLmNvbT4KIAog
ICAgICAgICBSZXZpZXdlZCBieSBTaGluaWNoaXJvIEhhbWFqaS4KZGlmZiAtLWdpdCBhL1dlYktp
dFRvb2xzL1F0VGVzdEJyb3dzZXIvbWFpbndpbmRvdy5jcHAgYi9XZWJLaXRUb29scy9RdFRlc3RC
cm93c2VyL21haW53aW5kb3cuY3BwCmluZGV4IGFiYjYwOGYuLjY4YTRlOTEgMTAwNjQ0Ci0tLSBh
L1dlYktpdFRvb2xzL1F0VGVzdEJyb3dzZXIvbWFpbndpbmRvdy5jcHAKKysrIGIvV2ViS2l0VG9v
bHMvUXRUZXN0QnJvd3Nlci9tYWlud2luZG93LmNwcApAQCAtNDIsNiArNDIsOCBAQCBNYWluV2lu
ZG93OjpNYWluV2luZG93KGNvbnN0IFFTdHJpbmcmIHVybCkKICAgICBpZiAocWdldGVudigiUVRU
RVNUQlJPV1NFUl9VU0VfQVJHQl9WSVNVQUxTIikudG9JbnQoKSA9PSAxKQogICAgICAgICBzZXRB
dHRyaWJ1dGUoUXQ6OldBX1RyYW5zbHVjZW50QmFja2dyb3VuZCk7CiAKKyAgICBtX3BhZ2UtPnNl
dFByb3BlcnR5KCJfcV93ZWJEZWJ1Z1NlcnZlclBvcnQiLCA5MjIyKTsKKwogICAgIGJ1aWxkVUko
KTsKIH0KIAo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>64581</attachid>
            <date>2010-08-17 06:17:44 -0700</date>
            <delta_ts>2010-08-19 10:53:12 -0700</delta_ts>
            <desc>revised patch to apply against current webkit trunk</desc>
            <filename>qt-remote-web-inspector.patch</filename>
            <type>text/plain</type>
            <size>30024</size>
            <attacher name="Jamey Hicks">jamey.hicks</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1dlYkNvcmUvQ2hhbmdlTG9nIGIvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXgg
NTI4OGU0ZC4uYmNjOWIyZSAxMDA2NDQKLS0tIGEvV2ViQ29yZS9DaGFuZ2VMb2cKKysrIGIvV2Vi
Q29yZS9DaGFuZ2VMb2cKQEAgLTEsMyArMSwxOSBAQAorMjAxMC0wOC0xNyAgSmFtZXkgSGlja3Mg
IDxqYW1leS5oaWNrc0Bub2tpYS5jb20+CisKKyAgICAgICAgW1F0XSBSZW1vdGUgV2ViIEluc3Bl
Y3RvciBzdXBwb3J0IGZvciBRdFdlYktpdAorCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQu
b3JnL3Nob3dfYnVnLmNnaT9pZD00Mzk4OAorCisgICAgICAgIFJ1bnMgYSB3ZWIgZGVidWcgc2Vy
dmVyIG9uIHBvcnQgOTIyMiwgYXMgc3BlY2lmaWVkIGJ5IHByb3BlcnR5CisgICAgICAgIF9xX3dl
YkRlYnVnU2VydmVyUG9ydCBvbiBRV2ViUGFnZSBpbnN0YW5jZXMuIEFsbCBwYWdlcyB3aXRoIHRo
YXQKKyAgICAgICAgcHJvcGVydHkgc2V0IHdpbGwgYmUgcmVtb3RlbHkgaW5zcGVjdGFibGUuCisK
KyAgICAgICAgVVJMIGZvciByZW1vdGUgaW5zcGVjdGlvbiBvZiBmaXJzdCBRV2ViUGFnZSBpcwor
ICAgICAgICAgICAgaHR0cDovL2xvY2FsaG9zdDo5MjIyL2RldnRvb2xzL3BhZ2UvMQorICAgICAg
ICB3aGVyZSAxIGlzIHRoZSBudW1iZXIgb2YgdGhlIFFXZWJQYWdlIGluc3RhbmNlLgorICAgICAg
ICAKKyAgICAgICAgKiBXZWJDb3JlLnBybzoKKwogMjAxMC0wOC0xNyAgWGFuIExvcGV6ICA8eGxv
cGV6QGlnYWxpYS5jb20+CiAKICAgICAgICAgUmV2aWV3ZWQgYnkgR3VzdGF2byBOb3JvbmhhLgpk
aWZmIC0tZ2l0IGEvV2ViQ29yZS9XZWJDb3JlLnBybyBiL1dlYkNvcmUvV2ViQ29yZS5wcm8KaW5k
ZXggNzZlMzc4Mi4uMmI4ZWZkMyAxMDA2NDQKLS0tIGEvV2ViQ29yZS9XZWJDb3JlLnBybworKysg
Yi9XZWJDb3JlL1dlYkNvcmUucHJvCkBAIC0yMTY2LDYgKzIxNjYsNyBAQCBIRUFERVJTICs9IFwK
ICAgICB4bWwvWFNMVFByb2Nlc3Nvci5oIFwKICAgICB4bWwvWFNMVFVuaWNvZGVTb3J0LmggXAog
ICAgICQkUFdELy4uL1dlYktpdC9xdC9BcGkvcXdlYnBsdWdpbmRhdGFiYXNlX3AuaCBcCisgICAg
JCRQV0QvLi4vV2ViS2l0L3F0L1dlYkNvcmVTdXBwb3J0L1dlYkRlYnVnU2VydmVyUXQuaCBcCiAg
ICAgJCRQV0QvLi4vV2ViS2l0L3F0L1dlYkNvcmVTdXBwb3J0L1F0RmFsbGJhY2tXZWJQb3B1cC5o
IFwKICAgICAkJFBXRC8uLi9XZWJLaXQvcXQvV2ViQ29yZVN1cHBvcnQvRnJhbWVMb2FkZXJDbGll
bnRRdC5oIFwKICAgICAkJFBXRC8uLi9XZWJLaXQvcXQvV2ViQ29yZVN1cHBvcnQvTm90aWZpY2F0
aW9uUHJlc2VudGVyQ2xpZW50UXQuaCBcCkBAIC0yMjU4LDYgKzIyNTksNyBAQCBTT1VSQ0VTICs9
IFwKICAgICAuLi9XZWJLaXQvcXQvV2ViQ29yZVN1cHBvcnQvRWRpdG9yQ2xpZW50UXQuY3BwIFwK
ICAgICAuLi9XZWJLaXQvcXQvV2ViQ29yZVN1cHBvcnQvRWRpdENvbW1hbmRRdC5jcHAgXAogICAg
IC4uL1dlYktpdC9xdC9XZWJDb3JlU3VwcG9ydC9GcmFtZUxvYWRlckNsaWVudFF0LmNwcCBcCisg
ICAgLi4vV2ViS2l0L3F0L1dlYkNvcmVTdXBwb3J0L1dlYkRlYnVnU2VydmVyUXQuY3BwIFwKICAg
ICAuLi9XZWJLaXQvcXQvV2ViQ29yZVN1cHBvcnQvSW5zcGVjdG9yQ2xpZW50UXQuY3BwIFwKICAg
ICAuLi9XZWJLaXQvcXQvV2ViQ29yZVN1cHBvcnQvTm90aWZpY2F0aW9uUHJlc2VudGVyQ2xpZW50
UXQuY3BwIFwKICAgICAuLi9XZWJLaXQvcXQvV2ViQ29yZVN1cHBvcnQvUGFnZUNsaWVudFF0LmNw
cCBcCmRpZmYgLS1naXQgYS9XZWJLaXQvcXQvQXBpL3F3ZWJpbnNwZWN0b3IuY3BwIGIvV2ViS2l0
L3F0L0FwaS9xd2ViaW5zcGVjdG9yLmNwcAppbmRleCA4MDJlYTk4Li41YThiOWQwIDEwMDY0NAot
LS0gYS9XZWJLaXQvcXQvQXBpL3F3ZWJpbnNwZWN0b3IuY3BwCisrKyBiL1dlYktpdC9xdC9BcGkv
cXdlYmluc3BlY3Rvci5jcHAKQEAgLTE5Niw2ICsxOTYsMTkgQEAgdm9pZCBRV2ViSW5zcGVjdG9y
UHJpdmF0ZTo6c2V0RnJvbnRlbmQoUVdpZGdldCogbmV3RnJvbnRlbmQpCiAgICAgfQogfQogCisv
KiEgXGludGVybmFsICovCit2b2lkIFFXZWJJbnNwZWN0b3JQcml2YXRlOjpzZXRSZW1vdGVGcm9u
dGVuZChRT2JqZWN0KiBuZXdSZW1vdGVGcm9udGVuZCkKK3sKKyAgICBpZiAocmVtb3RlRnJvbnRl
bmQpCisgICAgICAgIHJlbW90ZUZyb250ZW5kLT5zZXRQYXJlbnQoMCk7CisKKyAgICByZW1vdGVG
cm9udGVuZCA9IG5ld1JlbW90ZUZyb250ZW5kOworCisgICAgaWYgKHJlbW90ZUZyb250ZW5kKSB7
CisgICAgICAgIHJlbW90ZUZyb250ZW5kLT5zZXRQYXJlbnQocSk7CisgICAgfQorfQorCiB2b2lk
IFFXZWJJbnNwZWN0b3JQcml2YXRlOjphZGp1c3RGcm9udGVuZFNpemUoY29uc3QgUVNpemUmIHNp
emUpCiB7CiAgICAgaWYgKGZyb250ZW5kKQpkaWZmIC0tZ2l0IGEvV2ViS2l0L3F0L0FwaS9xd2Vi
aW5zcGVjdG9yX3AuaCBiL1dlYktpdC9xdC9BcGkvcXdlYmluc3BlY3Rvcl9wLmgKaW5kZXggNGQz
MjdjYy4uMzc1YmRmYyAxMDA2NDQKLS0tIGEvV2ViS2l0L3F0L0FwaS9xd2ViaW5zcGVjdG9yX3Au
aAorKysgYi9XZWJLaXQvcXQvQXBpL3F3ZWJpbnNwZWN0b3JfcC5oCkBAIC0zMywxNCArMzMsMTcg
QEAgcHVibGljOgogICAgIDogcShxcSkKICAgICAsIHBhZ2UoMCkKICAgICAsIGZyb250ZW5kKDAp
CisgICAgLCByZW1vdGVGcm9udGVuZCgwKQogICAgIHt9CiAKICAgICB2b2lkIHNldEZyb250ZW5k
KFFXaWRnZXQqIG5ld0Zyb250ZW5kKTsKKyAgICB2b2lkIHNldFJlbW90ZUZyb250ZW5kKFFPYmpl
Y3QqIG5ld1JlbW90ZUZyb250ZW5kKTsKICAgICB2b2lkIGFkanVzdEZyb250ZW5kU2l6ZShjb25z
dCBRU2l6ZSYgc2l6ZSk7CiAKICAgICBRV2ViSW5zcGVjdG9yKiBxOwogICAgIFFXZWJQYWdlKiBw
YWdlOwogICAgIFFXaWRnZXQqIGZyb250ZW5kOworICAgIFFPYmplY3QqIHJlbW90ZUZyb250ZW5k
OwogfTsKIAogI2VuZGlmCmRpZmYgLS1naXQgYS9XZWJLaXQvcXQvQXBpL3F3ZWJwYWdlLmNwcCBi
L1dlYktpdC9xdC9BcGkvcXdlYnBhZ2UuY3BwCmluZGV4IDUxNmViYzkuLjI0YzA1ZTUgMTAwNjQ0
Ci0tLSBhL1dlYktpdC9xdC9BcGkvcXdlYnBhZ2UuY3BwCisrKyBiL1dlYktpdC9xdC9BcGkvcXdl
YnBhZ2UuY3BwCkBAIC03Niw2ICs3Niw3IEBACiAjaW5jbHVkZSAiSFRNTElucHV0RWxlbWVudC5o
IgogI2luY2x1ZGUgIkhUTUxOYW1lcy5oIgogI2luY2x1ZGUgIkhpdFRlc3RSZXN1bHQuaCIKKyNp
bmNsdWRlICJXZWJEZWJ1Z1NlcnZlclF0LmgiCiAjaW5jbHVkZSAiV2luZG93RmVhdHVyZXMuaCIK
ICNpbmNsdWRlICJMb2NhbGl6ZWRTdHJpbmdzLmgiCiAjaW5jbHVkZSAiQ2FjaGUuaCIKQEAgLTk1
LDcgKzk2LDYgQEAKICNpbmNsdWRlIDxRRHJhZ01vdmVFdmVudD4KICNpbmNsdWRlIDxRRHJvcEV2
ZW50PgogI2luY2x1ZGUgPFFGaWxlRGlhbG9nPgotI2luY2x1ZGUgPFFIdHRwUmVxdWVzdEhlYWRl
cj4KICNpbmNsdWRlIDxRSW5wdXREaWFsb2c+CiAjaW5jbHVkZSA8UUxvY2FsZT4KICNpbmNsdWRl
IDxRTWVzc2FnZUJveD4KQEAgLTEyOTYsNiArMTI5NiwxMCBAQCB2b2lkIFFXZWJQYWdlUHJpdmF0
ZTo6ZHluYW1pY1Byb3BlcnR5Q2hhbmdlRXZlbnQoUUR5bmFtaWNQcm9wZXJ0eUNoYW5nZUV2ZW50
KiBldgogICAgICAgICBmcmFtZS0+dGlsZWRCYWNraW5nU3RvcmUoKS0+c2V0S2VlcEFuZENvdmVy
QXJlYU11bHRpcGxpZXJzKGtlZXBNdWx0aXBsaWVyLCBjb3Zlck11bHRpcGxpZXIpOwogICAgIH0K
ICNlbmRpZgorICAgIGVsc2UgaWYgKGV2ZW50LT5wcm9wZXJ0eU5hbWUoKSA9PSAiX3Ffd2ViRGVi
dWdTZXJ2ZXJQb3J0IikgeworCVdlYkRlYnVnU2VydmVyUXQgKndlYkRlYnVnU2VydmVyID0gV2Vi
RGVidWdTZXJ2ZXJRdDo6c2VydmVyKCk7CisJd2ViRGVidWdTZXJ2ZXItPmxpc3RlbihxLT5wcm9w
ZXJ0eSgiX3Ffd2ViRGVidWdTZXJ2ZXJQb3J0IikudG9JbnQoKSk7CisgICAgfQogfQogI2VuZGlm
CiAKQEAgLTE4ODcsNiArMTg5MSw3IEBAIFFXZWJQYWdlOjp+UVdlYlBhZ2UoKQogICAgICAgICBl
bHNlCiAgICAgICAgICAgICBkLT5pbnNwZWN0b3ItPnNldFBhZ2UoMCk7CiAgICAgfQorCiAgICAg
ZGVsZXRlIGQ7CiB9CiAKZGlmZiAtLWdpdCBhL1dlYktpdC9xdC9DaGFuZ2VMb2cgYi9XZWJLaXQv
cXQvQ2hhbmdlTG9nCmluZGV4IGE3ZGE3NDEuLjFhMTY4MGQgMTAwNjQ0Ci0tLSBhL1dlYktpdC9x
dC9DaGFuZ2VMb2cKKysrIGIvV2ViS2l0L3F0L0NoYW5nZUxvZwpAQCAtMSwzICsxLDU1IEBACisy
MDEwLTA4LTE3ICBKYW1leSBIaWNrcyAgPGphbWV5LmhpY2tzQG5va2lhLmNvbT4KKworICAgICAg
ICBbUXRdIFJlbW90ZSBXZWIgSW5zcGVjdG9yIHN1cHBvcnQgZm9yIFF0V2ViS2l0CisKKyAgICAg
ICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTQzOTg4CisKKyAgICAg
ICAgUnVucyBhIHdlYiBkZWJ1ZyBzZXJ2ZXIgb24gcG9ydCA5MjIyLCBhcyBzcGVjaWZpZWQgYnkg
cHJvcGVydHkKKyAgICAgICAgX3Ffd2ViRGVidWdTZXJ2ZXJQb3J0IG9uIFFXZWJQYWdlIGluc3Rh
bmNlcy4gQWxsIHBhZ2VzIHdpdGggdGhhdAorICAgICAgICBwcm9wZXJ0eSBzZXQgd2lsbCBiZSBy
ZW1vdGVseSBpbnNwZWN0YWJsZS4KKworICAgICAgICBVUkwgZm9yIHJlbW90ZSBpbnNwZWN0aW9u
IG9mIGZpcnN0IFFXZWJQYWdlIGlzCisgICAgICAgICAgICBodHRwOi8vbG9jYWxob3N0OjkyMjIv
ZGV2dG9vbHMvcGFnZS8xCisgICAgICAgIHdoZXJlIDEgaXMgdGhlIG51bWJlciBvZiB0aGUgUVdl
YlBhZ2UgaW5zdGFuY2UuCisgICAgICAgIAorICAgICAgICAqIEFwaS9xd2ViaW5zcGVjdG9yLmNw
cDoKKyAgICAgICAgKFFXZWJJbnNwZWN0b3JQcml2YXRlOjpzZXRSZW1vdGVGcm9udGVuZCk6Cisg
ICAgICAgICogQXBpL3F3ZWJpbnNwZWN0b3JfcC5oOgorICAgICAgICAoUVdlYkluc3BlY3RvclBy
aXZhdGU6OlFXZWJJbnNwZWN0b3JQcml2YXRlKToKKyAgICAgICAgKiBBcGkvcXdlYnBhZ2UuY3Bw
OgorICAgICAgICAoUVdlYlBhZ2VQcml2YXRlOjpkeW5hbWljUHJvcGVydHlDaGFuZ2VFdmVudCk6
CisgICAgICAgIChRV2ViUGFnZTo6flFXZWJQYWdlKToKKyAgICAgICAgKiBXZWJDb3JlU3VwcG9y
dC9JbnNwZWN0b3JDbGllbnRRdC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpJbnNwZWN0b3JDbGll
bnRRdDo6SW5zcGVjdG9yQ2xpZW50UXQpOgorICAgICAgICAoV2ViQ29yZTo6SW5zcGVjdG9yQ2xp
ZW50UXQ6Omluc3BlY3RvckRlc3Ryb3llZCk6CisgICAgICAgIChXZWJDb3JlOjpJbnNwZWN0b3JD
bGllbnRRdDo6b3Blbkluc3BlY3RvckZyb250ZW5kKToKKyAgICAgICAgKFdlYkNvcmU6Okluc3Bl
Y3RvckNsaWVudFF0OjpzZXRSZW1vdGVGcm9udGVuZCk6CisgICAgICAgIChXZWJDb3JlOjpJbnNw
ZWN0b3JDbGllbnRRdDo6c2VuZE1lc3NhZ2VUb0Zyb250ZW5kKToKKyAgICAgICAgKFdlYkNvcmU6
Okluc3BlY3RvckNsaWVudFF0OjpkaXNwYXRjaCk6CisgICAgICAgICogV2ViQ29yZVN1cHBvcnQv
SW5zcGVjdG9yQ2xpZW50UXQuaDoKKyAgICAgICAgKiBXZWJDb3JlU3VwcG9ydC9XZWJEZWJ1Z1Nl
cnZlclF0LmNwcDogQWRkZWQuCisgICAgICAgIChXZWJDb3JlOjpzZXRDaGFsbGVuZ2VOdW1iZXIp
OgorICAgICAgICAoV2ViQ29yZTo6Z2VuZXJhdGVFeHBlY3RlZENoYWxsZW5nZVJlc3BvbnNlKToK
KyAgICAgICAgKFdlYkNvcmU6OmdldENoYWxsZW5nZU51bWJlckZyb21GaWVsZCk6CisgICAgICAg
IChXZWJDb3JlOjpXZWJEZWJ1Z1NlcnZlclF0OjpzZXJ2ZXIpOgorICAgICAgICAoV2ViQ29yZTo6
V2ViRGVidWdTZXJ2ZXJRdDo6V2ViRGVidWdTZXJ2ZXJRdCk6CisgICAgICAgIChXZWJDb3JlOjpX
ZWJEZWJ1Z1NlcnZlclF0Ojp+V2ViRGVidWdTZXJ2ZXJRdCk6CisgICAgICAgIChXZWJDb3JlOjpX
ZWJEZWJ1Z1NlcnZlclF0OjpsaXN0ZW4pOgorICAgICAgICAoV2ViQ29yZTo6V2ViRGVidWdTZXJ2
ZXJRdDo6Y2xvc2UpOgorICAgICAgICAoV2ViQ29yZTo6V2ViRGVidWdTZXJ2ZXJRdDo6aW5zcGVj
dG9yQ2xpZW50KToKKyAgICAgICAgKFdlYkNvcmU6OldlYkRlYnVnU2VydmVyUXQ6OnJlZ2lzdGVy
UGFnZSk6CisgICAgICAgIChXZWJDb3JlOjpXZWJEZWJ1Z1NlcnZlclF0Ojp1bnJlZ2lzdGVyUGFn
ZSk6CisgICAgICAgIChXZWJDb3JlOjpXZWJEZWJ1Z1NlcnZlclF0Ojpnb3ROZXdDb25uZWN0aW9u
KToKKyAgICAgICAgKFdlYkNvcmU6Okh0dHBSZXF1ZXN0SGFuZGxlcjo6SHR0cFJlcXVlc3RIYW5k
bGVyKToKKyAgICAgICAgKFdlYkNvcmU6Okh0dHBSZXF1ZXN0SGFuZGxlcjo6fkh0dHBSZXF1ZXN0
SGFuZGxlcik6CisgICAgICAgIChXZWJDb3JlOjpIdHRwUmVxdWVzdEhhbmRsZXI6OnRjcFJlYWR5
UmVhZCk6CisgICAgICAgIChXZWJDb3JlOjpIdHRwUmVxdWVzdEhhbmRsZXI6OnRjcENvbm5lY3Rp
b25EaXNjb25uZWN0ZWQpOgorICAgICAgICAoV2ViQ29yZTo6SHR0cFJlcXVlc3RIYW5kbGVyOjp3
ZWJTb2NrZXRTZW5kKToKKyAgICAgICAgKFdlYkNvcmU6Okh0dHBSZXF1ZXN0SGFuZGxlcjo6d2Vi
U29ja2V0UmVhZHlSZWFkKToKKyAgICAgICAgKFdlYkNvcmU6OlJlbW90ZUZyb250ZW5kQ2hhbm5l
bDo6UmVtb3RlRnJvbnRlbmRDaGFubmVsKToKKyAgICAgICAgKFdlYkNvcmU6OlJlbW90ZUZyb250
ZW5kQ2hhbm5lbDo6c2VuZE1lc3NhZ2VUb0Zyb250ZW5kKToKKyAgICAgICAgKiBXZWJDb3JlU3Vw
cG9ydC9XZWJEZWJ1Z1NlcnZlclF0Lmg6IEFkZGVkLgorCiAyMDEwLTA4LTE2ICBUb3IgQXJuZSBW
ZXN0YsO4ICA8dG9yLmFybmUudmVzdGJvQG5va2lhLmNvbT4KIAogICAgICAgICBSZXZpZXdlZCBi
eSBLZW5uZXRoIENocmlzdGlhbnNlbi4KZGlmZiAtLWdpdCBhL1dlYktpdC9xdC9XZWJDb3JlU3Vw
cG9ydC9JbnNwZWN0b3JDbGllbnRRdC5jcHAgYi9XZWJLaXQvcXQvV2ViQ29yZVN1cHBvcnQvSW5z
cGVjdG9yQ2xpZW50UXQuY3BwCmluZGV4IGUxM2Y2YzMuLmYxYjI1NWMgMTAwNjQ0Ci0tLSBhL1dl
YktpdC9xdC9XZWJDb3JlU3VwcG9ydC9JbnNwZWN0b3JDbGllbnRRdC5jcHAKKysrIGIvV2ViS2l0
L3F0L1dlYkNvcmVTdXBwb3J0L0luc3BlY3RvckNsaWVudFF0LmNwcApAQCAtMzIsMTEgKzMyLDE0
IEBACiAjaW5jbHVkZSAiSW5zcGVjdG9yQ2xpZW50UXQuaCIKIAogI2luY2x1ZGUgIkZyYW1lLmgi
CisjaW5jbHVkZSAiSW5zcGVjdG9yQmFja2VuZERpc3BhdGNoZXIuaCIKICNpbmNsdWRlICJJbnNw
ZWN0b3JDb250cm9sbGVyLmgiCiAjaW5jbHVkZSAiTm90SW1wbGVtZW50ZWQuaCIKICNpbmNsdWRl
ICJQYWdlLmgiCiAjaW5jbHVkZSAiUGxhdGZvcm1TdHJpbmcuaCIKKyNpbmNsdWRlICJSZW1vdGVJ
bnNwZWN0b3JGcm9udGVuZC5oIgogI2luY2x1ZGUgIlNjcmlwdENvbnRyb2xsZXIuaCIKKyNpbmNs
dWRlICJXZWJEZWJ1Z1NlcnZlclF0LmgiCiAjaW5jbHVkZSAicXdlYmluc3BlY3Rvci5oIgogI2lu
Y2x1ZGUgInF3ZWJpbnNwZWN0b3JfcC5oIgogI2luY2x1ZGUgInF3ZWJwYWdlLmgiCkBAIC05Niwx
NSArOTksMjMgQEAgcHVibGljIHNsb3RzOgogSW5zcGVjdG9yQ2xpZW50UXQ6Okluc3BlY3RvckNs
aWVudFF0KFFXZWJQYWdlKiBwYWdlKQogICAgIDogbV9pbnNwZWN0ZWRXZWJQYWdlKHBhZ2UpCiAg
ICAgLCBtX2Zyb250ZW5kV2ViUGFnZSgwKQote30KKyAgICAsIG1fcmVtb3RlSW5zcGVjdG9yKHRy
dWUpCit7CisgICAgV2ViRGVidWdTZXJ2ZXJRdCogd2ViRGVidWdTZXJ2ZXIgPSBXZWJEZWJ1Z1Nl
cnZlclF0OjpzZXJ2ZXIoKTsKKyAgICB3ZWJEZWJ1Z1NlcnZlci0+cmVnaXN0ZXJQYWdlKHBhZ2Us
IHRoaXMpOworfQogCiB2b2lkIEluc3BlY3RvckNsaWVudFF0OjppbnNwZWN0b3JEZXN0cm95ZWQo
KQogeworICAgIFdlYkRlYnVnU2VydmVyUXQqIHdlYkRlYnVnU2VydmVyID0gV2ViRGVidWdTZXJ2
ZXJRdDo6c2VydmVyKCk7CisgICAgaWYgKHdlYkRlYnVnU2VydmVyKQorICAgICAgICB3ZWJEZWJ1
Z1NlcnZlci0+dW5yZWdpc3RlclBhZ2UobV9pbnNwZWN0ZWRXZWJQYWdlKTsKKwogICAgIGRlbGV0
ZSB0aGlzOwogfQogCiAgICAgCi12b2lkIEluc3BlY3RvckNsaWVudFF0OjpvcGVuSW5zcGVjdG9y
RnJvbnRlbmQoV2ViQ29yZTo6SW5zcGVjdG9yQ29udHJvbGxlciopCit2b2lkIEluc3BlY3RvckNs
aWVudFF0OjpvcGVuSW5zcGVjdG9yRnJvbnRlbmQoV2ViQ29yZTo6SW5zcGVjdG9yQ29udHJvbGxl
ciogaW5zcGVjdG9yQ29udHJvbGxlcikKIHsKICAgICBRV2ViVmlldyogaW5zcGVjdG9yVmlldyA9
IG5ldyBRV2ViVmlldzsKICAgICBJbnNwZWN0b3JDbGllbnRXZWJQYWdlKiBpbnNwZWN0b3JQYWdl
ID0gbmV3IEluc3BlY3RvckNsaWVudFdlYlBhZ2UoaW5zcGVjdG9yVmlldyk7CkBAIC0xMTUsMjQg
KzEyNiwyNyBAQCB2b2lkIEluc3BlY3RvckNsaWVudFF0OjpvcGVuSW5zcGVjdG9yRnJvbnRlbmQo
V2ViQ29yZTo6SW5zcGVjdG9yQ29udHJvbGxlciopCiAgICAgLy8gV2ViIGluc3BlY3Rvci4gVGhp
cyBpcyB1c2VkIGZvciBTREsgcHVycG9zZXMuIFBsZWFzZSBrZWVwIHRoaXMgaG9vawogICAgIC8v
IGFyb3VuZCBhbmQgZG9uJ3QgcmVtb3ZlIGl0LgogICAgIC8vIGh0dHBzOi8vYnVncy53ZWJraXQu
b3JnL3Nob3dfYnVnLmNnaT9pZD0zNTM0MAotICAgIFFVcmwgaW5zcGVjdG9yVXJsOworICAgIGlm
ICghbV9yZW1vdGVJbnNwZWN0b3IpIHsKKworICAgICAgICBRVXJsIGluc3BlY3RvclVybDsKICNp
Zm5kZWYgUVRfTk9fUFJPUEVSVElFUwotICAgIGluc3BlY3RvclVybCA9IGluc3BlY3Rvci0+cHJv
cGVydHkoIl9xX2luc3BlY3RvclVybCIpLnRvVXJsKCk7CisgICAgICAgIGluc3BlY3RvclVybCA9
IGluc3BlY3Rvci0+cHJvcGVydHkoIl9xX2luc3BlY3RvclVybCIpLnRvVXJsKCk7CiAjZW5kaWYK
LSAgICBpZiAoIWluc3BlY3RvclVybC5pc1ZhbGlkKCkpCi0gICAgICAgIGluc3BlY3RvclVybCA9
IFFVcmwoInFyYzovd2Via2l0L2luc3BlY3Rvci9pbnNwZWN0b3IuaHRtbCIpOworICAgICAgICBp
ZiAoIWluc3BlY3RvclVybC5pc1ZhbGlkKCkpCisgICAgICAgICAgICBpbnNwZWN0b3JVcmwgPSBR
VXJsKCJxcmM6L3dlYmtpdC9pbnNwZWN0b3IvaW5zcGVjdG9yLmh0bWwiKTsKIAogI2lmbmRlZiBR
VF9OT19QUk9QRVJUSUVTCi0gICAgUVZhcmlhbnQgaW5zcGVjdG9ySmF2YVNjcmlwdFdpbmRvd09i
amVjdHMgPSBpbnNwZWN0b3ItPnByb3BlcnR5KCJfcV9pbnNwZWN0b3JKYXZhU2NyaXB0V2luZG93
T2JqZWN0cyIpOwotICAgIGlmIChpbnNwZWN0b3JKYXZhU2NyaXB0V2luZG93T2JqZWN0cy5pc1Zh
bGlkKCkpCi0gICAgICAgIGluc3BlY3RvclBhZ2UtPnNldFByb3BlcnR5KCJfcV9pbnNwZWN0b3JK
YXZhU2NyaXB0V2luZG93T2JqZWN0cyIsIGluc3BlY3RvckphdmFTY3JpcHRXaW5kb3dPYmplY3Rz
KTsKKyAgICAgICAgUVZhcmlhbnQgaW5zcGVjdG9ySmF2YVNjcmlwdFdpbmRvd09iamVjdHMgPSBp
bnNwZWN0b3ItPnByb3BlcnR5KCJfcV9pbnNwZWN0b3JKYXZhU2NyaXB0V2luZG93T2JqZWN0cyIp
OworICAgICAgICBpZiAoaW5zcGVjdG9ySmF2YVNjcmlwdFdpbmRvd09iamVjdHMuaXNWYWxpZCgp
KQorICAgICAgICAgICAgaW5zcGVjdG9yUGFnZS0+c2V0UHJvcGVydHkoIl9xX2luc3BlY3Rvckph
dmFTY3JpcHRXaW5kb3dPYmplY3RzIiwgaW5zcGVjdG9ySmF2YVNjcmlwdFdpbmRvd09iamVjdHMp
OwogI2VuZGlmCi0gICAgaW5zcGVjdG9yVmlldy0+cGFnZSgpLT5tYWluRnJhbWUoKS0+bG9hZChp
bnNwZWN0b3JVcmwpOwotICAgIG1faW5zcGVjdGVkV2ViUGFnZS0+ZC0+aW5zcGVjdG9yRnJvbnRl
bmQgPSBpbnNwZWN0b3JWaWV3OwotICAgIGluc3BlY3Rvci0+ZC0+c2V0RnJvbnRlbmQoaW5zcGVj
dG9yVmlldyk7CisgICAgICAgIGluc3BlY3RvclZpZXctPnBhZ2UoKS0+bWFpbkZyYW1lKCktPmxv
YWQoaW5zcGVjdG9yVXJsKTsKKyAgICAgICAgbV9pbnNwZWN0ZWRXZWJQYWdlLT5kLT5pbnNwZWN0
b3JGcm9udGVuZCA9IGluc3BlY3RvclZpZXc7CisgICAgICAgIGluc3BlY3Rvci0+ZC0+c2V0RnJv
bnRlbmQoaW5zcGVjdG9yVmlldyk7CiAKLSAgICBpbnNwZWN0b3JWaWV3LT5wYWdlKCktPmQtPnBh
Z2UtPmluc3BlY3RvckNvbnRyb2xsZXIoKS0+c2V0SW5zcGVjdG9yRnJvbnRlbmRDbGllbnQobmV3
IEluc3BlY3RvckZyb250ZW5kQ2xpZW50UXQobV9pbnNwZWN0ZWRXZWJQYWdlLCBpbnNwZWN0b3JW
aWV3LCB0aGlzKSk7Ci0gICAgbV9mcm9udGVuZFdlYlBhZ2UgPSBpbnNwZWN0b3JQYWdlOworICAg
ICAgICBpbnNwZWN0b3JWaWV3LT5wYWdlKCktPmQtPnBhZ2UtPmluc3BlY3RvckNvbnRyb2xsZXIo
KS0+c2V0SW5zcGVjdG9yRnJvbnRlbmRDbGllbnQobmV3IEluc3BlY3RvckZyb250ZW5kQ2xpZW50
UXQobV9pbnNwZWN0ZWRXZWJQYWdlLCBpbnNwZWN0b3JWaWV3LCB0aGlzKSk7CisgICAgICAgIG1f
ZnJvbnRlbmRXZWJQYWdlID0gaW5zcGVjdG9yUGFnZTsKKyAgICB9CiB9CiAKIHZvaWQgSW5zcGVj
dG9yQ2xpZW50UXQ6OnJlbGVhc2VGcm9udGVuZFBhZ2UoKQpAQCAtMTQwLDYgKzE1NCwxOCBAQCB2
b2lkIEluc3BlY3RvckNsaWVudFF0OjpyZWxlYXNlRnJvbnRlbmRQYWdlKCkKICAgICBtX2Zyb250
ZW5kV2ViUGFnZSA9IDA7CiB9CiAKKwordm9pZCBJbnNwZWN0b3JDbGllbnRRdDo6c2V0UmVtb3Rl
RnJvbnRlbmQoUmVtb3RlRnJvbnRlbmRDaGFubmVsKiBjaGFubmVsKQoreworI2lmIEVOQUJMRShJ
TlNQRUNUT1IpCisgICAgbV9pbnNwZWN0ZWRXZWJQYWdlLT5kLT5pbnNwZWN0b3ItPmQtPnNldFJl
bW90ZUZyb250ZW5kKGNoYW5uZWwpOworICAgIG1faW5zcGVjdGVkV2ViUGFnZS0+ZC0+aW5zcGVj
dG9yQ29udHJvbGxlcigpLT5jb25uZWN0RnJvbnRlbmQoKTsKKworICAgIC8vIFhYWCBzb21ld2hl
cmUgbmVlZCB0byBwcm92aWRlIGNhbGwgdG86CisgICAgLy8gbV9pbnNwZWN0ZWRXZWJQYWdlLT5k
LT5pbnNwZWN0b3JDb250cm9sbGVyKCktPmRpc2Nvbm5lY3RGcm9udGVuZCgpOworI2VuZGlmCit9
CisKIHZvaWQgSW5zcGVjdG9yQ2xpZW50UXQ6OmhpZ2hsaWdodChOb2RlKikKIHsKICAgICBub3RJ
bXBsZW1lbnRlZCgpOwpAQCAtMTk2LDYgKzIyMiwxMiBAQCB2b2lkIEluc3BlY3RvckNsaWVudFF0
OjpzdG9yZVNldHRpbmcoY29uc3QgU3RyaW5nJiBrZXksIGNvbnN0IFN0cmluZyYgc2V0dGluZykK
IAogYm9vbCBJbnNwZWN0b3JDbGllbnRRdDo6c2VuZE1lc3NhZ2VUb0Zyb250ZW5kKGNvbnN0IFN0
cmluZyYgbWVzc2FnZSkKIHsKKyAgICBpZiAobV9yZW1vdGVJbnNwZWN0b3IpIHsKKyAgICAgICAg
aWYgKCFtX2luc3BlY3RlZFdlYlBhZ2UpCisgICAgICAgICAgICByZXR1cm4gZmFsc2U7CisgICAg
ICAgIFJlbW90ZUZyb250ZW5kQ2hhbm5lbCogc2Vzc2lvbiA9IHFvYmplY3RfY2FzdDxSZW1vdGVG
cm9udGVuZENoYW5uZWwqPihtX2luc3BlY3RlZFdlYlBhZ2UtPmQtPmluc3BlY3Rvci0+ZC0+cmVt
b3RlRnJvbnRlbmQpOworICAgICAgICBzZXNzaW9uLT5zZW5kTWVzc2FnZVRvRnJvbnRlbmQobWVz
c2FnZSk7CisgICAgfQogICAgIGlmICghbV9mcm9udGVuZFdlYlBhZ2UpCiAgICAgICAgIHJldHVy
biBmYWxzZTsKIApAQCAtMjE4LDYgKzI1MCwxMiBAQCBib29sIEluc3BlY3RvckNsaWVudFF0Ojpz
ZW5kTWVzc2FnZVRvRnJvbnRlbmQoY29uc3QgU3RyaW5nJiBtZXNzYWdlKQogICAgIHJldHVybiB0
cnVlOwogfQogCit2b2lkIEluc3BlY3RvckNsaWVudFF0OjpkaXNwYXRjaChjb25zdCBTdHJpbmcg
Jm1lc3NhZ2UpCit7CisgICAgSW5zcGVjdG9yQ29udHJvbGxlciogaW5zcGVjdG9yQ29udHJvbGxl
ciA9IG1faW5zcGVjdGVkV2ViUGFnZS0+ZC0+cGFnZS0+aW5zcGVjdG9yQ29udHJvbGxlcigpOwor
ICAgIGluc3BlY3RvckNvbnRyb2xsZXItPmluc3BlY3RvckJhY2tlbmREaXNwYXRjaGVyKCktPmRp
c3BhdGNoKG1lc3NhZ2UpOworfQorCiBzdGF0aWMgU3RyaW5nIHZhcmlhbnRUb1NldHRpbmcoY29u
c3QgUVZhcmlhbnQmIHF2YXJpYW50KQogewogICAgIFN0cmluZyByZXRWYWw7CmRpZmYgLS1naXQg
YS9XZWJLaXQvcXQvV2ViQ29yZVN1cHBvcnQvSW5zcGVjdG9yQ2xpZW50UXQuaCBiL1dlYktpdC9x
dC9XZWJDb3JlU3VwcG9ydC9JbnNwZWN0b3JDbGllbnRRdC5oCmluZGV4IDk1MjZjODguLjQ1NWM5
ZGIgMTAwNjQ0Ci0tLSBhL1dlYktpdC9xdC9XZWJDb3JlU3VwcG9ydC9JbnNwZWN0b3JDbGllbnRR
dC5oCisrKyBiL1dlYktpdC9xdC9XZWJDb3JlU3VwcG9ydC9JbnNwZWN0b3JDbGllbnRRdC5oCkBA
IC00Myw2ICs0Myw3IEBAIGNsYXNzIFFXZWJWaWV3OwogbmFtZXNwYWNlIFdlYkNvcmUgewogY2xh
c3MgTm9kZTsKIGNsYXNzIFBhZ2U7CitjbGFzcyBSZW1vdGVGcm9udGVuZENoYW5uZWw7CiAKIGNs
YXNzIEluc3BlY3RvckNsaWVudFF0IDogcHVibGljIEluc3BlY3RvckNsaWVudCB7CiBwdWJsaWM6
CkBAIC01OSwxMiArNjAsMTYgQEAgcHVibGljOgogICAgIHZpcnR1YWwgdm9pZCBzdG9yZVNldHRp
bmcoY29uc3QgU3RyaW5nJiBrZXksIGNvbnN0IFN0cmluZyYgdmFsdWUpOwogCiAgICAgdmlydHVh
bCBib29sIHNlbmRNZXNzYWdlVG9Gcm9udGVuZChjb25zdCBTdHJpbmcmKTsKKyAgICB2aXJ0dWFs
IHZvaWQgZGlzcGF0Y2goY29uc3QgU3RyaW5nICZtZXNzYWdlKTsKIAogICAgIHZvaWQgcmVsZWFz
ZUZyb250ZW5kUGFnZSgpOwogCisgICAgdm9pZCBzZXRSZW1vdGVGcm9udGVuZChSZW1vdGVGcm9u
dGVuZENoYW5uZWwgKmNoYW5uZWwpOworCiBwcml2YXRlOgogICAgIFFXZWJQYWdlKiBtX2luc3Bl
Y3RlZFdlYlBhZ2U7CiAgICAgUVdlYlBhZ2UqIG1fZnJvbnRlbmRXZWJQYWdlOworICAgIGJvb2wg
bV9yZW1vdGVJbnNwZWN0b3I7CiB9OwogCiBjbGFzcyBJbnNwZWN0b3JGcm9udGVuZENsaWVudFF0
IDogcHVibGljIEluc3BlY3RvckZyb250ZW5kQ2xpZW50TG9jYWwgewpAQCAtOTUsNiArMTAwLDcg
QEAgcHJpdmF0ZToKICAgICBib29sIG1fZGVzdHJveWluZ0luc3BlY3RvclZpZXc7CiAgICAgSW5z
cGVjdG9yQ2xpZW50UXQqIG1faW5zcGVjdG9yQ2xpZW50OwogfTsKKwogfQogCiAjZW5kaWYKZGlm
ZiAtLWdpdCBhL1dlYktpdC9xdC9XZWJDb3JlU3VwcG9ydC9XZWJEZWJ1Z1NlcnZlclF0LmNwcCBi
L1dlYktpdC9xdC9XZWJDb3JlU3VwcG9ydC9XZWJEZWJ1Z1NlcnZlclF0LmNwcApuZXcgZmlsZSBt
b2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4xZDc3NGQxCi0tLSAvZGV2L251bGwKKysrIGIvV2Vi
S2l0L3F0L1dlYkNvcmVTdXBwb3J0L1dlYkRlYnVnU2VydmVyUXQuY3BwCkBAIC0wLDAgKzEsMzc2
IEBACisvKgorICBDb3B5cmlnaHQgKEMpIDIwMTAgTm9raWEgQ29ycG9yYXRpb24gYW5kL29yIGl0
cyBzdWJzaWRpYXJ5KC1pZXMpCisKKyAgVGhpcyBsaWJyYXJ5IGlzIGZyZWUgc29mdHdhcmU7IHlv
dSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vcgorICBtb2RpZnkgaXQgdW5kZXIgdGhlIHRlcm1z
IG9mIHRoZSBHTlUgTGlicmFyeSBHZW5lcmFsIFB1YmxpYworICBMaWNlbnNlIGFzIHB1Ymxpc2hl
ZCBieSB0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uOyBlaXRoZXIKKyAgdmVyc2lvbiAyIG9m
IHRoZSBMaWNlbnNlLCBvciAoYXQgeW91ciBvcHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLgorCisg
IFRoaXMgbGlicmFyeSBpcyBkaXN0cmlidXRlZCBpbiB0aGUgaG9wZSB0aGF0IGl0IHdpbGwgYmUg
dXNlZnVsLAorICBidXQgV0lUSE9VVCBBTlkgV0FSUkFOVFk7IHdpdGhvdXQgZXZlbiB0aGUgaW1w
bGllZCB3YXJyYW50eSBvZgorICBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJU
SUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlIEdOVQorICBMaWJyYXJ5IEdlbmVyYWwgUHVibGljIExp
Y2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KKworICBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBj
b3B5IG9mIHRoZSBHTlUgTGlicmFyeSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlCisgIGFsb25nIHdp
dGggdGhpcyBsaWJyYXJ5OyBzZWUgdGhlIGZpbGUgQ09QWUlORy5MSUIuICBJZiBub3QsIHdyaXRl
IHRvCisgIHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb24sIEluYy4sIDUxIEZyYW5rbGluIFN0
cmVldCwgRmlmdGggRmxvb3IsCisgIEJvc3RvbiwgTUEgMDIxMTAtMTMwMSwgVVNBLgorKi8KKwor
CisjaW5jbHVkZSAiY29uZmlnLmgiCisjaW5jbHVkZSAiV2ViRGVidWdTZXJ2ZXJRdC5oIgorCisj
aW5jbHVkZSAiSW5zcGVjdG9yQ2xpZW50UXQuaCIKKyNpbmNsdWRlICJNRDUuaCIKKyNpbmNsdWRl
IDxRRmlsZT4KKyNpbmNsdWRlIDxRSHR0cEhlYWRlcj4KKyNpbmNsdWRlIDxRSHR0cFJlcXVlc3RI
ZWFkZXI+CisjaW5jbHVkZSA8UUh0dHBSZXNwb25zZUhlYWRlcj4KKyNpbmNsdWRlIDxRU3RyaW5n
PgorI2luY2x1ZGUgPFFTdHJpbmdMaXN0PgorI2luY2x1ZGUgPFFUY3BTZXJ2ZXI+CisjaW5jbHVk
ZSA8UVRjcFNvY2tldD4KKyNpbmNsdWRlIDxRVXJsPgorI2luY2x1ZGUgPFFXaWRnZXQ+CisjaW5j
bHVkZSA8cWVuZGlhbi5oPgorCituYW1lc3BhY2UgV2ViQ29yZSB7CisKK3N0YXRpYyBib29sIGRl
YnVnID0gZmFsc2U7CisKK3N0YXRpYyB2b2lkIHNldENoYWxsZW5nZU51bWJlcih1bnNpZ25lZCBj
aGFyKiBidWYsIHVpbnQzMl90IG51bWJlcikKK3sKKyAgICB1bnNpZ25lZCBjaGFyKiBwID0gYnVm
ICsgMzsKKyAgICBmb3IgKGludCBpID0gMDsgaSA8IDQ7IGkrKykgeworICAgICAgICAqcCA9IG51
bWJlciAmIDB4RkY7CisgICAgICAgIC0tcDsKKyAgICAgICAgbnVtYmVyID4+PSA4OworICAgIH0K
K30KKworc3RhdGljIHZvaWQgZ2VuZXJhdGVFeHBlY3RlZENoYWxsZW5nZVJlc3BvbnNlKHVpbnQz
Ml90IG51bWJlcjEsIHVpbnQzMl90IG51bWJlcjIsIHVuc2lnbmVkIGNoYXIga2V5M1s4XSwgdW5z
aWduZWQgY2hhciBleHBlY3RlZENoYWxsZW5nZVsxNl0pCit7CisgICAgdW5zaWduZWQgY2hhciBj
aGFsbGVuZ2VbMTZdOworICAgIHNldENoYWxsZW5nZU51bWJlcigmY2hhbGxlbmdlWzBdLCBudW1i
ZXIxKTsKKyAgICBzZXRDaGFsbGVuZ2VOdW1iZXIoJmNoYWxsZW5nZVs0XSwgbnVtYmVyMik7Cisg
ICAgbWVtY3B5KCZjaGFsbGVuZ2VbOF0sIGtleTMsIDgpOworICAgIE1ENSBtZDU7CisgICAgbWQ1
LmFkZEJ5dGVzKGNoYWxsZW5nZSwgc2l6ZW9mKGNoYWxsZW5nZSkpOworICAgIFZlY3Rvcjx1aW50
OF90LCAxNj4gZGlnZXN0OworICAgIG1kNS5jaGVja3N1bShkaWdlc3QpOworICAgIG1lbWNweShl
eHBlY3RlZENoYWxsZW5nZSwgZGlnZXN0LmRhdGEoKSwgMTYpOworfQorCitzdGF0aWMgcXVpbnQz
MiBnZXRDaGFsbGVuZ2VOdW1iZXJGcm9tRmllbGQoUVN0cmluZyBmaWVsZCkKK3sKKyAgICBRU3Ry
aW5nIG5TdHJpbmc7CisgICAgaW50IG5TcGFjZXMgPSAwOworICAgIGZvciAoaW50IGkgPSAwOyBp
IDwgZmllbGQuc2l6ZSgpOyBpKyspIHsKKyAgICAgICAgUUNoYXIgYyA9IGZpZWxkW2ldOworICAg
ICAgICBpZiAoYyA9PSAoUUNoYXIpJyAnKSB7CisgICAgICAgICAgICBuU3BhY2VzKys7CisgICAg
ICAgIH0gZWxzZSBpZiAoKGMgPj0gKFFDaGFyKScwJykgJiYgKGMgPD0gKFFDaGFyKSc5JykpIHsK
KyAgICAgICAgICAgIG5TdHJpbmcuYXBwZW5kKChRQ2hhciljKTsKKyAgICAgICAgfQorICAgIH0K
KyAgICBxdWludDMyIG51bSA9IG5TdHJpbmcudG9Mb25nKCk7CisgICAgcXVpbnQzMiByZXN1bHQg
PSAoblNwYWNlcyA/IChudW0gLyBuU3BhY2VzKSA6IG51bSk7CisgICAgcmV0dXJuIHJlc3VsdDsK
K30KKworc3RhdGljIFdlYkRlYnVnU2VydmVyUXQqIHNTZXJ2ZXI7CisKK1dlYkRlYnVnU2VydmVy
UXQqIFdlYkRlYnVnU2VydmVyUXQ6OnNlcnZlcigpCit7CisgICAgaWYgKCFzU2VydmVyKQorICAg
ICAgICBzU2VydmVyID0gbmV3IFdlYkRlYnVnU2VydmVyUXQoKTsKKworICAgIHJldHVybiBzU2Vy
dmVyOworfQorCitXZWJEZWJ1Z1NlcnZlclF0OjpXZWJEZWJ1Z1NlcnZlclF0KCkKKyAgICA6IFFP
YmplY3QoKQorICAgICwgbVRjcFNlcnZlcigwKQorICAgICwgbVBhZ2VOdW1iZXIoMSkKK3sKK30K
KworV2ViRGVidWdTZXJ2ZXJRdDo6fldlYkRlYnVnU2VydmVyUXQoKQoreworICAgIGNsb3NlKCk7
Cit9CisKK3ZvaWQgV2ViRGVidWdTZXJ2ZXJRdDo6bGlzdGVuKHF1aW50MTYgcG9ydCkKK3sKKyAg
ICBpZiAobVRjcFNlcnZlcikKKyAgICAgICAgcmV0dXJuOworCisgICAgbVRjcFNlcnZlciA9IG5l
dyBRVGNwU2VydmVyKCk7CisgICAgbVRjcFNlcnZlci0+bGlzdGVuKFFIb3N0QWRkcmVzczo6QW55
LCBwb3J0KTsKKyAgICBjb25uZWN0KG1UY3BTZXJ2ZXIsIFNJR05BTChuZXdDb25uZWN0aW9uKCkp
LCBTTE9UKGdvdE5ld0Nvbm5lY3Rpb24oKSkpOworfQorCit2b2lkIFdlYkRlYnVnU2VydmVyUXQ6
OmNsb3NlKCkKK3sKKyAgICBpZiAobVRjcFNlcnZlcikgeworICAgICAgICBtVGNwU2VydmVyLT5j
bG9zZSgpOworICAgICAgICBtVGNwU2VydmVyLT5zZXRQYXJlbnQoMCk7CisgICAgfQorICAgIG1U
Y3BTZXJ2ZXIgPSAwOworfQorCitJbnNwZWN0b3JDbGllbnRRdCogV2ViRGVidWdTZXJ2ZXJRdDo6
aW5zcGVjdG9yQ2xpZW50KGludCBwYWdlTnVtKQoreworICAgIFFXZWJQYWdlKiBwYWdlID0gbVBh
Z2VzLnZhbHVlKHBhZ2VOdW0pOworICAgIEluc3BlY3RvckNsaWVudFF0KiBjbGllbnQgPSBtSW5z
cGVjdG9yQ2xpZW50cy52YWx1ZShwYWdlLCAwKTsKKyAgICByZXR1cm4gY2xpZW50OworfQorCit2
b2lkIFdlYkRlYnVnU2VydmVyUXQ6OnJlZ2lzdGVyUGFnZShRV2ViUGFnZSogcGFnZSwgSW5zcGVj
dG9yQ2xpZW50UXQqIGNsaWVudCkKK3sKKyAgICBpZiAoIW1QYWdlcy5rZXkocGFnZSkpCisgICAg
ICAgIG1QYWdlcy5pbnNlcnQobVBhZ2VOdW1iZXIrKywgcGFnZSk7CisgICAgbUluc3BlY3RvckNs
aWVudHMuaW5zZXJ0KHBhZ2UsIGNsaWVudCk7Cit9CisKK3ZvaWQgV2ViRGVidWdTZXJ2ZXJRdDo6
dW5yZWdpc3RlclBhZ2UoUVdlYlBhZ2UqIHBhZ2UpCit7CisgICAgaW50IHBhZ2VOdW0gPSBtUGFn
ZXMua2V5KHBhZ2UpOworICAgIG1QYWdlcy5yZW1vdmUocGFnZU51bSk7CisgICAgbUluc3BlY3Rv
ckNsaWVudHMucmVtb3ZlKHBhZ2UpOworfQorCit2b2lkIFdlYkRlYnVnU2VydmVyUXQ6OmdvdE5l
d0Nvbm5lY3Rpb24oKQoreworICAgIFFUY3BTb2NrZXQqIG1UY3BDb25uZWN0aW9uID0gbVRjcFNl
cnZlci0+bmV4dFBlbmRpbmdDb25uZWN0aW9uKCk7CisgICAgSHR0cFJlcXVlc3RIYW5kbGVyKiBo
YW5kbGVyID0KKyAgICAgICAgbmV3IEh0dHBSZXF1ZXN0SGFuZGxlcihtVGNwQ29ubmVjdGlvbiwg
dGhpcyk7CisgICAgaGFuZGxlci0+c2V0UGFyZW50KHRoaXMpOworfQorCitIdHRwUmVxdWVzdEhh
bmRsZXI6Okh0dHBSZXF1ZXN0SGFuZGxlcihRVGNwU29ja2V0KiB0Y3BDb25uZWN0aW9uLCBXZWJE
ZWJ1Z1NlcnZlclF0KiBzZXJ2ZXIpCisgICAgOiBRT2JqZWN0KHNlcnZlcikKKyAgICAsIG1UY3BD
b25uZWN0aW9uKHRjcENvbm5lY3Rpb24pCisgICAgLCBtU2VydmVyKHNlcnZlcikKKyAgICAsIG1J
c1dlYlNvY2tldChmYWxzZSkKKyAgICAsIG1JbnNwZWN0b3JDbGllbnQoMCkKK3sKKyAgICBtRW5k
T2ZIZWFkZXJzID0gZmFsc2U7ICAgIAorICAgIG1Db250ZW50TGVuZ3RoID0gMDsKKworICAgIGNv
bm5lY3QobVRjcENvbm5lY3Rpb24sIFNJR05BTChyZWFkeVJlYWQoKSksIFNMT1QodGNwUmVhZHlS
ZWFkKCkpKTsKKyAgICBjb25uZWN0KG1UY3BDb25uZWN0aW9uLCBTSUdOQUwoZGlzY29ubmVjdGVk
KCkpLCBTTE9UKHRjcENvbm5lY3Rpb25EaXNjb25uZWN0ZWQoKSkpOworfQorCitIdHRwUmVxdWVz
dEhhbmRsZXI6On5IdHRwUmVxdWVzdEhhbmRsZXIoKQoreworfQorCit2b2lkIEh0dHBSZXF1ZXN0
SGFuZGxlcjo6dGNwUmVhZHlSZWFkKCkKK3sKKyAgICBRSHR0cFJlcXVlc3RIZWFkZXIgaGVhZGVy
OworICAgIGlmICghbVRjcENvbm5lY3Rpb24pCisgICAgICAgIHJldHVybjsKKworICAgIGlmICgh
bUVuZE9mSGVhZGVycykgeworICAgICAgICB3aGlsZSAobVRjcENvbm5lY3Rpb24tPmJ5dGVzQXZh
aWxhYmxlKCkgJiYgIW1FbmRPZkhlYWRlcnMpIHsKKyAgICAgICAgICAgIFFCeXRlQXJyYXkgbGlu
ZSA9IG1UY3BDb25uZWN0aW9uLT5yZWFkTGluZSgpOworICAgICAgICAgICAgbURhdGEuYXBwZW5k
KGxpbmUpOworICAgICAgICAgICAgaWYgKGxpbmUgPT0gIlxyXG4iKQorICAgICAgICAgICAgICAg
IG1FbmRPZkhlYWRlcnMgPSB0cnVlOworICAgICAgICB9CisgICAgICAgIGlmIChtRW5kT2ZIZWFk
ZXJzKSB7CisgICAgICAgICAgICBoZWFkZXIgPSBRSHR0cFJlcXVlc3RIZWFkZXIoUVN0cmluZzo6
ZnJvbUxhdGluMShtRGF0YSkpOworICAgICAgICAgICAgaWYgKGhlYWRlci5pc1ZhbGlkKCkpIHsK
KworICAgICAgICAgICAgICAgIG1NZXRob2QgPSBoZWFkZXIubWV0aG9kKCk7CisgICAgICAgICAg
ICAgICAgbVBhdGggPSBoZWFkZXIucGF0aCgpOworICAgICAgICAgICAgICAgIG1Db250ZW50VHlw
ZSA9IGhlYWRlci5jb250ZW50VHlwZSgpLnRvTGF0aW4xKCk7CisgICAgICAgICAgICAgICAgbUNv
bnRlbnRMZW5ndGggPSBoZWFkZXIuY29udGVudExlbmd0aCgpOworICAgICAgICAgICAgICAgIGlm
IChoZWFkZXIuaGFzS2V5KCJVcGdyYWRlIikgJiYgKGhlYWRlci52YWx1ZSgiVXBncmFkZSIpID09
IFFMYXRpbjFTdHJpbmcoIldlYlNvY2tldCIpKSkKKyAgICAgICAgICAgICAgICAgICAgbUlzV2Vi
U29ja2V0ID0gdHJ1ZTsKKworICAgICAgICAgICAgICAgIG1EYXRhLmNsZWFyKCk7CisgICAgICAg
ICAgICB9IGVsc2UgeworICAgICAgICAgICAgICAgIHFEZWJ1ZygpIDw8ICJDb3VsZCBub3QgcGFy
c2UgSFRUUCBoZWFkZXI6IiA8PCBtRGF0YTsKKyAgICAgICAgICAgIH0KKyAgICAgICAgfQorICAg
IH0KKyAgICBpZiAoZmFsc2UpCisgICAgICAgIHFEZWJ1ZygpIDw8ICJ0Y3BSZWFkeVJlYWQiIAor
ICAgICAgICAgICAgICAgICA8PCAibU1ldGhvZCIgPDwgbU1ldGhvZAorICAgICAgICAgICAgICAg
ICA8PCAibVBhdGgiIDw8IG1QYXRoCisgICAgICAgICAgICAgICAgIDw8ICJtSXNXZWJTb2NrZXQi
IDw8IG1Jc1dlYlNvY2tldAorICAgICAgICAgICAgICAgICA8PCAibUNvbnRlbnRUeXBlIiA8PCBt
Q29udGVudFR5cGUKKyAgICAgICAgICAgICAgICAgPDwgIm1Db250ZW50TGVuZ3RoIiA8PCBtQ29u
dGVudExlbmd0aAorICAgICAgICAgICAgICAgICA8PCAiYnl0ZXNBdmFpbGFibGUiIDw8IG1UY3BD
b25uZWN0aW9uLT5ieXRlc0F2YWlsYWJsZSgpOworICAgICAgICAgIAorCisgICAgaWYgKG1FbmRP
ZkhlYWRlcnMpIHsKKworICAgICAgICBRU3RyaW5nTGlzdCBwYXRoQW5kUXVlcnkgPSBtUGF0aC5z
cGxpdCgiPyIpOworICAgICAgICBtUGF0aCA9IHBhdGhBbmRRdWVyeVswXTsKKyAgICAgICAgaWYg
KHBhdGhBbmRRdWVyeS5zaXplKCkgPiAxKQorICAgICAgICAgICAgbVF1ZXJ5ID0gcGF0aEFuZFF1
ZXJ5WzFdOworICAgICAgICBRU3RyaW5nTGlzdCB3b3JkcyA9IG1QYXRoLnNwbGl0KFFTdHJpbmc6
OmZyb21MYXRpbjEoIi8iKSk7CisKKyAgICAgICAgaWYgKG1Jc1dlYlNvY2tldCkgeworICAgICAg
ICAgICAgLy8gc3dpdGNoIHRvIHdlYnNvY2tldC1zdHlsZSBXZWJTb2NrZXRTZXJ2aWNlIG1lc3Nh
Z2luZworICAgICAgICAgICAgaWYgKG1UY3BDb25uZWN0aW9uKSB7CisgICAgICAgICAgICAgICAg
bVRjcENvbm5lY3Rpb24tPmRpc2Nvbm5lY3QoU0lHTkFMKHJlYWR5UmVhZCgpKSk7CisgICAgICAg
ICAgICAgICAgY29ubmVjdChtVGNwQ29ubmVjdGlvbiwgU0lHTkFMKHJlYWR5UmVhZCgpKSwgU0xP
VCh3ZWJTb2NrZXRSZWFkeVJlYWQoKSkpOworCisgICAgICAgICAgICAgICAgUUJ5dGVBcnJheSBr
ZXkzID0gbVRjcENvbm5lY3Rpb24tPnJlYWQoOCk7CisKKyAgICAgICAgICAgICAgICBxdWludDMy
IG51bWJlcjEgPSBnZXRDaGFsbGVuZ2VOdW1iZXJGcm9tRmllbGQoaGVhZGVyLnZhbHVlKCJTZWMt
V2ViU29ja2V0LUtleTEiKSk7CisgICAgICAgICAgICAgICAgcXVpbnQzMiBudW1iZXIyID0gZ2V0
Q2hhbGxlbmdlTnVtYmVyRnJvbUZpZWxkKGhlYWRlci52YWx1ZSgiU2VjLVdlYlNvY2tldC1LZXky
IikpOworICAgICAgICAgICAgICAgIAorICAgICAgICAgICAgICAgIGNoYXIgcmVzcG9uc2VEYXRh
WzE2XTsKKyAgICAgICAgICAgICAgICBnZW5lcmF0ZUV4cGVjdGVkQ2hhbGxlbmdlUmVzcG9uc2Uo
bnVtYmVyMSwgbnVtYmVyMiwgKHVuc2lnbmVkIGNoYXIqKWtleTMuZGF0YSgpLCAodW5zaWduZWQg
Y2hhciopcmVzcG9uc2VEYXRhKTsKKyAgICAgICAgICAgICAgICBRQnl0ZUFycmF5IHJlc3BvbnNl
KHJlc3BvbnNlRGF0YSwgc2l6ZW9mKHJlc3BvbnNlRGF0YSkpOworCisgICAgICAgICAgICAgICAg
UUh0dHBSZXNwb25zZUhlYWRlciByZXNwb25zZUhlYWRlcigxMDEsICJXZWJTb2NrZXQgUHJvdG9j
b2wgSGFuZHNoYWtlIiwgMSwgMSk7CisgICAgICAgICAgICAgICAgcmVzcG9uc2VIZWFkZXIuc2V0
VmFsdWUoIlVwZ3JhZGUiLCBoZWFkZXIudmFsdWUoIlVwZ3JhZGUiKSk7CisgICAgICAgICAgICAg
ICAgcmVzcG9uc2VIZWFkZXIuc2V0VmFsdWUoIkNvbm5lY3Rpb24iLCBoZWFkZXIudmFsdWUoIkNv
bm5lY3Rpb24iKSk7CisgICAgICAgICAgICAgICAgcmVzcG9uc2VIZWFkZXIuc2V0VmFsdWUoIlNl
Yy1XZWJTb2NrZXQtT3JpZ2luIiwgaGVhZGVyLnZhbHVlKCJPcmlnaW4iKSk7CisgICAgICAgICAg
ICAgICAgcmVzcG9uc2VIZWFkZXIuc2V0VmFsdWUoIlNlYy1XZWJTb2NrZXQtTG9jYXRpb24iLCAo
IndzOi8vIiArIGhlYWRlci52YWx1ZSgiSG9zdCIpICsgbVBhdGgpKTsKKyAgICAgICAgICAgICAg
ICByZXNwb25zZUhlYWRlci5zZXRDb250ZW50TGVuZ3RoKHJlc3BvbnNlLnNpemUoKSk7CisgICAg
ICAgICAgICAgICAgbVRjcENvbm5lY3Rpb24tPndyaXRlKHJlc3BvbnNlSGVhZGVyLnRvU3RyaW5n
KCkudG9MYXRpbjEoKSk7CisgICAgICAgICAgICAgICAgbVRjcENvbm5lY3Rpb24tPndyaXRlKHJl
c3BvbnNlKTsKKyAgICAgICAgICAgICAgICBtVGNwQ29ubmVjdGlvbi0+Zmx1c2goKTsKKworICAg
ICAgICAgICAgICAgIGlmICgod29yZHMuc2l6ZSgpID09IDQpCisgICAgICAgICAgICAgICAgICAg
ICYmICh3b3Jkc1sxXSA9PSBRU3RyaW5nOjpmcm9tTGF0aW4xKCJkZXZ0b29scyIpKQorICAgICAg
ICAgICAgICAgICAgICAmJiAod29yZHNbMl0gPT0gUVN0cmluZzo6ZnJvbUxhdGluMSgicGFnZSIp
KSkgeworICAgICAgICAgICAgICAgICAgICBpbnQgcGFnZU51bSA9IHdvcmRzWzNdLnRvSW50KCk7
CisKKyAgICAgICAgICAgICAgICAgICAgbUluc3BlY3RvckNsaWVudCA9IG1TZXJ2ZXItPmluc3Bl
Y3RvckNsaWVudChwYWdlTnVtKTsKKyAgICAgICAgICAgICAgICAgICAgaWYgKG1JbnNwZWN0b3JD
bGllbnQpCisgICAgICAgICAgICAgICAgICAgICAgICBtSW5zcGVjdG9yQ2xpZW50LT5zZXRSZW1v
dGVGcm9udGVuZChuZXcgUmVtb3RlRnJvbnRlbmRDaGFubmVsKHRoaXMpKTsKKyAgICAgICAgICAg
ICAgICB9CisKKyAgICAgICAgICAgIH0KKworICAgICAgICAgICAgcmV0dXJuOworICAgICAgICB9
CisgICAgICAgIGlmIChtQ29udGVudExlbmd0aCAmJiAobVRjcENvbm5lY3Rpb24tPmJ5dGVzQXZh
aWxhYmxlKCkgPCBtQ29udGVudExlbmd0aCkpIHsKKyAgICAgICAgICAgIGlmIChmYWxzZSkKKyAg
ICAgICAgICAgICAgICBxRGVidWcoKSA8PCAic2hvcnQgY29udGVudCwgd2FpdGluZyBmb3IgbW9y
ZSBkYXRhIC4uLiIKKyAgICAgICAgICAgICAgICAgICAgICAgICA8PCAibU1ldGhvZCIgPDwgbU1l
dGhvZAorICAgICAgICAgICAgICAgICAgICAgICAgIDw8ICJtUGF0aCIgPDwgbVBhdGgKKyAgICAg
ICAgICAgICAgICAgICAgICAgICA8PCAibUNvbnRlbnRUeXBlIiA8PCBtQ29udGVudFR5cGUKKyAg
ICAgICAgICAgICAgICAgICAgICAgICA8PCAibUNvbnRlbnRMZW5ndGgiIDw8IG1Db250ZW50TGVu
Z3RoCisgICAgICAgICAgICAgICAgICAgICAgICAgPDwgImJ5dGVzQXZhaWxhYmxlIiA8PCBtVGNw
Q29ubmVjdGlvbi0+Ynl0ZXNBdmFpbGFibGUoKTsKKyAgICAgICAgICAgIHJldHVybjsKKyAgICAg
ICAgfQorCisgICAgICAgIFFCeXRlQXJyYXkgY29udGVudCA9IG1UY3BDb25uZWN0aW9uLT5yZWFk
KG1Db250ZW50TGVuZ3RoKTsKKyAgICAgICAgbUVuZE9mSGVhZGVycyA9IGZhbHNlOworCisgICAg
ICAgIFFTdHJpbmcgcGF0aCA9IFFMYXRpbjFTdHJpbmcoIjoiKSArIG1QYXRoOworICAgICAgICBR
RmlsZSBmaWxlKHBhdGgpOworICAgICAgICBpbnQgcmMgPSBmaWxlLm9wZW4oUUlPRGV2aWNlOjpS
ZWFkT25seSk7CisgICAgICAgIFFCeXRlQXJyYXkgcmVzcG9uc2U7CisgICAgICAgIGlmIChyYykg
CisgICAgICAgICAgICByZXNwb25zZSA9IGZpbGUucmVhZEFsbCgpOworCisgICAgICAgIGludCBj
b2RlID0gZmlsZS5leGlzdHMoKSA/IDIwMCA6IDQwNDsKKyAgICAgICAgUVN0cmluZyB0ZXh0ID0g
IChjb2RlID09IDIwMCkgPyBRU3RyaW5nOjpmcm9tTGF0aW4xKCJPSyIpIDogUVN0cmluZzo6ZnJv
bUxhdGluMSgiTm90IE9LIik7CisgICAgICAgIFFIdHRwUmVzcG9uc2VIZWFkZXIgcmVzcG9uc2VI
ZWFkZXIoY29kZSwgdGV4dCwgMSwgMCk7CisgICAgICAgIHJlc3BvbnNlSGVhZGVyLnNldFZhbHVl
cyhtUmVzcG9uc2VIZWFkZXJzKTsKKyAgICAgICAgcmVzcG9uc2VIZWFkZXIuc2V0Q29udGVudExl
bmd0aChyZXNwb25zZS5zaXplKCkpOworICAgICAgICBpZiAoIW1Db250ZW50VHlwZS5pc0VtcHR5
KCkpCisgICAgICAgICAgICByZXNwb25zZUhlYWRlci5zZXRDb250ZW50VHlwZShRU3RyaW5nOjpm
cm9tTGF0aW4xKG1Db250ZW50VHlwZSkpOworCisgICAgICAgIFFCeXRlQXJyYXkgYXNjaWlIZWFk
ZXIgPSByZXNwb25zZUhlYWRlci50b1N0cmluZygpLnRvQXNjaWkoKTsKKyAgICAgICAgbVRjcENv
bm5lY3Rpb24tPndyaXRlKGFzY2lpSGVhZGVyKTsKKworICAgICAgICBtVGNwQ29ubmVjdGlvbi0+
d3JpdGUocmVzcG9uc2UpOworICAgICAgICBtVGNwQ29ubmVjdGlvbi0+Zmx1c2goKTsKKyAgICAg
ICAgbVRjcENvbm5lY3Rpb24tPmNsb3NlKCk7CisKKyAgICAgICAgcmV0dXJuOworICAgIH0KK30K
Kwordm9pZCBIdHRwUmVxdWVzdEhhbmRsZXI6OnRjcENvbm5lY3Rpb25EaXNjb25uZWN0ZWQoKQor
eworICAgIGlmIChtVGNwQ29ubmVjdGlvbiAmJiBtVGNwQ29ubmVjdGlvbi0+Ynl0ZXNBdmFpbGFi
bGUoKSkgeworICAgICAgICBRQnl0ZUFycmF5IGNvbnRlbnQgPSBtVGNwQ29ubmVjdGlvbi0+cmVh
ZChtVGNwQ29ubmVjdGlvbi0+Ynl0ZXNBdmFpbGFibGUoKSk7CisgICAgICAgIHFEZWJ1ZygpIDw8
ICJIdHRwUmVxdWVzdEhhbmRsZXI6OnRjcENvbm5lY3Rpb25EaXNjb25uZWN0ZWQiIDw8ICJ0cmFp
bGluZyBjb250ZW50IiA8PCBjb250ZW50OworICAgIH0KKyAgICBtVGNwQ29ubmVjdGlvbiA9IDA7
Cit9CisKK2ludCBIdHRwUmVxdWVzdEhhbmRsZXI6OndlYlNvY2tldFNlbmQoUUJ5dGVBcnJheSBw
YXlsb2FkKQoreworICAgIG1UY3BDb25uZWN0aW9uLT5wdXRDaGFyKDB4MDApOworICAgIGludCBu
Qnl0ZXMgPSBtVGNwQ29ubmVjdGlvbi0+d3JpdGUocGF5bG9hZCk7CisgICAgbVRjcENvbm5lY3Rp
b24tPnB1dENoYXIoMHhGRik7CisgICAgbVRjcENvbm5lY3Rpb24tPmZsdXNoKCk7CisgICAgcmV0
dXJuIG5CeXRlczsKK30KKworaW50IEh0dHBSZXF1ZXN0SGFuZGxlcjo6d2ViU29ja2V0U2VuZChj
b25zdCBjaGFyKiBkYXRhLCBzaXplX3QgbGVuKQoreworICAgIG1UY3BDb25uZWN0aW9uLT5wdXRD
aGFyKDB4MDApOworICAgIGludCBuQnl0ZXMgPSBtVGNwQ29ubmVjdGlvbi0+d3JpdGUoZGF0YSwg
bGVuKTsKKyAgICBtVGNwQ29ubmVjdGlvbi0+cHV0Q2hhcigweEZGKTsKKyAgICBtVGNwQ29ubmVj
dGlvbi0+Zmx1c2goKTsKKyAgICByZXR1cm4gbkJ5dGVzOworfQorCit2b2lkIEh0dHBSZXF1ZXN0
SGFuZGxlcjo6d2ViU29ja2V0UmVhZHlSZWFkKCkKK3sKKyAgICBpZiAoIW1UY3BDb25uZWN0aW9u
LT5ieXRlc0F2YWlsYWJsZSgpKQorICAgICAgICByZXR1cm47CisgICAgUUJ5dGVBcnJheSBjb250
ZW50ID0gbVRjcENvbm5lY3Rpb24tPnJlYWQobVRjcENvbm5lY3Rpb24tPmJ5dGVzQXZhaWxhYmxl
KCkpOworICAgIG1EYXRhLmFwcGVuZChjb250ZW50KTsKKyAgICBpZiAoMCkgeworICAgICAgICBx
RGVidWcoKSA8PCAid2ViU29ja2V0UmVhZHlSZWFkIiA8PCAiY29udGVudC5zaXplKCkiIDw8IGNv
bnRlbnQuc2l6ZSgpIAorICAgICAgICAgICAgICAgICA8PCAibURhdGEuc2l6ZSgpIiA8PCBtRGF0
YS5zaXplKCk7CisgICAgICAgIHFEZWJ1ZygpIDw8IG1EYXRhOworICAgICAgICBxRGVidWcoKSA8
PCBlbmRsOworICAgIH0KKyAgICB3aGlsZSAobURhdGEuc2l6ZSgpID4gMCkgeworCisgICAgICAg
IGlmIChtRGF0YVswXSkgeworICAgICAgICAgICAgcUNyaXRpY2FsKCkgPDwgICJ3ZWJTb2NrZXRS
ZWFkeVJlYWQ6IHVua25vd24gZnJhbWUgdHlwZSIgPDwgbURhdGFbMF07CisgICAgICAgICAgICBt
RGF0YS5jbGVhcigpOworICAgICAgICAgICAgbVRjcENvbm5lY3Rpb24tPmNsb3NlKCk7CisgICAg
ICAgICAgICByZXR1cm47CisgICAgICAgIH0KKyAgICAgICAgaW50IHBvcyA9IG1EYXRhLmluZGV4
T2YoMHhmZiwgMSk7CisgICAgICAgIGlmIChwb3MgPCAwKQorICAgICAgICAgICAgcmV0dXJuOwor
CisgICAgICAgIHNpemVfdCBsZW4gPSBwb3MgLSAxOworCisgICAgICAgIFFCeXRlQXJyYXkgcGF5
bG9hZCA9IG1EYXRhLm1pZCgxLCBsZW4pOworCisgICAgICAgIGlmIChtSW5zcGVjdG9yQ2xpZW50
KQorICAgICAgICAgICAgbUluc3BlY3RvckNsaWVudC0+ZGlzcGF0Y2goUVN0cmluZzo6ZnJvbVV0
ZjgocGF5bG9hZCkpOworCisgICAgICAgIG1EYXRhID0gbURhdGEubWlkKGxlbisyKTsKKyAgICB9
CisKK30KKworUmVtb3RlRnJvbnRlbmRDaGFubmVsOjpSZW1vdGVGcm9udGVuZENoYW5uZWwoSHR0
cFJlcXVlc3RIYW5kbGVyKiByZXF1ZXN0SGFuZGxlcikKKyAgICA6IFFPYmplY3QocmVxdWVzdEhh
bmRsZXIpCisgICAgLCBtX3JlcXVlc3RIYW5kbGVyKHJlcXVlc3RIYW5kbGVyKQoreworfQorCiti
b29sIFJlbW90ZUZyb250ZW5kQ2hhbm5lbDo6c2VuZE1lc3NhZ2VUb0Zyb250ZW5kKGNvbnN0IFN0
cmluZyAmbWVzc2FnZSkKK3sKKyAgICBpZiAoZGVidWcpCisgICAgICAgIHFEZWJ1ZygpIDw8ICJS
ZW1vdGVGcm9udGVuZENoYW5uZWw6OnNlbmRNZXNzYWdlVG9Gcm9udGVuZCIgPDwgbWVzc2FnZTsK
KyAgICBpZiAoIW1fcmVxdWVzdEhhbmRsZXIpCisgICAgICAgIHJldHVybiBmYWxzZTsKKyAgICBD
U3RyaW5nIGNzdHIgPSBtZXNzYWdlLnV0ZjgoKTsKKyAgICByZXR1cm4gbV9yZXF1ZXN0SGFuZGxl
ci0+d2ViU29ja2V0U2VuZChjc3RyLmRhdGEoKSwgY3N0ci5sZW5ndGgoKSk7Cit9CisKK30KZGlm
ZiAtLWdpdCBhL1dlYktpdC9xdC9XZWJDb3JlU3VwcG9ydC9XZWJEZWJ1Z1NlcnZlclF0LmggYi9X
ZWJLaXQvcXQvV2ViQ29yZVN1cHBvcnQvV2ViRGVidWdTZXJ2ZXJRdC5oCm5ldyBmaWxlIG1vZGUg
MTAwNjQ0CmluZGV4IDAwMDAwMDAuLmY3YmU1YjIKLS0tIC9kZXYvbnVsbAorKysgYi9XZWJLaXQv
cXQvV2ViQ29yZVN1cHBvcnQvV2ViRGVidWdTZXJ2ZXJRdC5oCkBAIC0wLDAgKzEsMTE1IEBACisv
KgorICAgIENvcHlyaWdodCAoQykgMjAxMCBOb2tpYSBDb3Jwb3JhdGlvbiBhbmQvb3IgaXRzIHN1
YnNpZGlhcnkoLWllcykKKworICAgIFRoaXMgbGlicmFyeSBpcyBmcmVlIHNvZnR3YXJlOyB5b3Ug
Y2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IKKyAgICBtb2RpZnkgaXQgdW5kZXIgdGhlIHRlcm1z
IG9mIHRoZSBHTlUgTGlicmFyeSBHZW5lcmFsIFB1YmxpYworICAgIExpY2Vuc2UgYXMgcHVibGlz
aGVkIGJ5IHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb247IGVpdGhlcgorICAgIHZlcnNpb24g
MiBvZiB0aGUgTGljZW5zZSwgb3IgKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4K
KworICAgIFRoaXMgbGlicmFyeSBpcyBkaXN0cmlidXRlZCBpbiB0aGUgaG9wZSB0aGF0IGl0IHdp
bGwgYmUgdXNlZnVsLAorICAgIGJ1dCBXSVRIT1VUIEFOWSBXQVJSQU5UWTsgd2l0aG91dCBldmVu
IHRoZSBpbXBsaWVkIHdhcnJhbnR5IG9mCisgICAgTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1Mg
Rk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFLiAgU2VlIHRoZSBHTlUKKyAgICBMaWJyYXJ5IEdlbmVy
YWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KKworICAgIFlvdSBzaG91bGQgaGF2
ZSByZWNlaXZlZCBhIGNvcHkgb2YgdGhlIEdOVSBMaWJyYXJ5IEdlbmVyYWwgUHVibGljIExpY2Vu
c2UKKyAgICBhbG9uZyB3aXRoIHRoaXMgbGlicmFyeTsgc2VlIHRoZSBmaWxlIENPUFlJTkcuTElC
LiAgSWYgbm90LCB3cml0ZSB0bworICAgIHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb24sIElu
Yy4sIDUxIEZyYW5rbGluIFN0cmVldCwgRmlmdGggRmxvb3IsCisgICAgQm9zdG9uLCBNQSAwMjEx
MC0xMzAxLCBVU0EuCisqLworCisjaWZuZGVmIFdlYkRlYnVnU2VydmVyUXRfaAorI2RlZmluZSBX
ZWJEZWJ1Z1NlcnZlclF0X2gKKworY2xhc3MgUVRjcFNlcnZlcjsKK2NsYXNzIFFUY3BTb2NrZXQ7
CisjaW5jbHVkZSA8UUxpc3Q+CisjaW5jbHVkZSA8UU1hcD4KKyNpbmNsdWRlIDxRT2JqZWN0Pgor
I2luY2x1ZGUgPFFQYWlyPgorI2luY2x1ZGUgPFFTdHJpbmc+CisjaW5jbHVkZSA8d3RmL0Zvcndh
cmQuaD4KKworY2xhc3MgUVdlYlBhZ2U7CisKK25hbWVzcGFjZSBXZWJDb3JlIHsKK2NsYXNzIEh0
dHBSZXF1ZXN0SGFuZGxlcjsKK2NsYXNzIEluc3BlY3RvckNsaWVudFF0OworCitjbGFzcyBXZWJE
ZWJ1Z1NlcnZlclF0IDogcHVibGljIFFPYmplY3QgeworICAgIFFfT0JKRUNUCisgICAgICAgIHB1
YmxpYzoKKworICAgIHN0YXRpYyBXZWJEZWJ1Z1NlcnZlclF0KiBzZXJ2ZXIoKTsKKworICAgIHZv
aWQgbGlzdGVuKHF1aW50MTYgcG9ydCk7CisKKyAgICB2b2lkIHJlZ2lzdGVyUGFnZShRV2ViUGFn
ZSAqcGFnZSwgSW5zcGVjdG9yQ2xpZW50UXQqIGNsaWVudCk7CisgICAgdm9pZCB1bnJlZ2lzdGVy
UGFnZShRV2ViUGFnZSAqcGFnZSk7CisKKyAgICB2b2lkIGNsb3NlKCk7CisgICAgSW5zcGVjdG9y
Q2xpZW50UXQqIGluc3BlY3RvckNsaWVudChpbnQgcGFnZU51bSk7CisKK3Byb3RlY3RlZDoKKyAg
ICBXZWJEZWJ1Z1NlcnZlclF0KCk7CisgICAgdmlydHVhbCB+V2ViRGVidWdTZXJ2ZXJRdCgpOwor
Citwcml2YXRlOgorICAgIFFUY3BTZXJ2ZXIqIG1UY3BTZXJ2ZXI7CisgICAgUU1hcDxpbnQsIFFX
ZWJQYWdlKj4gbVBhZ2VzOworICAgIFFNYXA8UVdlYlBhZ2UqLCBJbnNwZWN0b3JDbGllbnRRdCo+
IG1JbnNwZWN0b3JDbGllbnRzOworICAgIGludCBtUGFnZU51bWJlcjsKKworICAgIHByaXZhdGUg
c2xvdHM6CisgICAgdm9pZCBnb3ROZXdDb25uZWN0aW9uKCk7CisKK307CisKK2NsYXNzIFJlbW90
ZUZyb250ZW5kQ2hhbm5lbCA6IHB1YmxpYyBRT2JqZWN0IHsKKyAgICBRX09CSkVDVAorICAgICAg
ICBwdWJsaWM6CisKKyAgICBSZW1vdGVGcm9udGVuZENoYW5uZWwoSHR0cFJlcXVlc3RIYW5kbGVy
KiByZXF1ZXN0SGFuZGxlcik7CisgICAgYm9vbCBzZW5kTWVzc2FnZVRvRnJvbnRlbmQoY29uc3Qg
U3RyaW5nJiBtZXNzYWdlKTsKKworcHJpdmF0ZToKKyAgICBIdHRwUmVxdWVzdEhhbmRsZXIqIG1f
cmVxdWVzdEhhbmRsZXI7Cit9OworCitjbGFzcyBIdHRwUmVxdWVzdEhhbmRsZXIgOiBwdWJsaWMg
UU9iamVjdCB7CisgICAgUV9PQkpFQ1QKKworICAgICAgICBwdWJsaWM6CisKKyAgICBIdHRwUmVx
dWVzdEhhbmRsZXIoUVRjcFNvY2tldCAqdGNwQ29ubmVjdGlvbiwgV2ViRGVidWdTZXJ2ZXJRdCAq
c2VydmVyKTsKKyAgICB2aXJ0dWFsIH5IdHRwUmVxdWVzdEhhbmRsZXIoKTsKKyAgICB2aXJ0dWFs
IGludCB3ZWJTb2NrZXRTZW5kKFFCeXRlQXJyYXkgcGF5bG9hZCk7CisgICAgdmlydHVhbCBpbnQg
d2ViU29ja2V0U2VuZChjb25zdCBjaGFyICpwYXlsb2FkLCBzaXplX3QgbGVuKTsKKworcHJpdmF0
ZToKKyAgICBRVGNwU29ja2V0KiBtVGNwQ29ubmVjdGlvbjsKKyAgICBXZWJEZWJ1Z1NlcnZlclF0
KiBtU2VydmVyOworCisgICAgUVN0cmluZyBtTWV0aG9kOworICAgIFFTdHJpbmcgbVBhdGg7Cisg
ICAgUVN0cmluZyBtUXVlcnk7CisgICAgUUJ5dGVBcnJheSBtQ29udGVudFR5cGU7CisgICAgaW50
IG1Db250ZW50TGVuZ3RoOworICAgIGJvb2wgbUVuZE9mSGVhZGVyczsKKyAgICBRQnl0ZUFycmF5
IG1EYXRhOworICAgIFFMaXN0PFFQYWlyPFFTdHJpbmcsIFFTdHJpbmc+ID4gbVJlc3BvbnNlSGVh
ZGVyczsKKyAgICBib29sIG1Jc1dlYlNvY2tldDsKKyAgICBJbnNwZWN0b3JDbGllbnRRdCogbUlu
c3BlY3RvckNsaWVudDsKKworICAgIHZvaWQgaGFuZGxlSW5zcGVjdG9yUmVxdWVzdChRU3RyaW5n
TGlzdCB3b3Jkcyk7CisgICAgdm9pZCBoYW5kbGVGcm9tRnJvbnRlbmRSZXF1ZXN0KCk7CisgICAg
dm9pZCBoYW5kbGVSZXNvdXJjZVJlcXVlc3QoUVN0cmluZ0xpc3Qgd29yZHMpOworCisgICAgcHJp
dmF0ZSBzbG90czoKKyAgICB2b2lkIHRjcFJlYWR5UmVhZCgpOworICAgIHZvaWQgdGNwQ29ubmVj
dGlvbkRpc2Nvbm5lY3RlZCgpOworICAgIHZvaWQgd2ViU29ja2V0UmVhZHlSZWFkKCk7CisKK307
CisKK30KKyNlbmRpZgpkaWZmIC0tZ2l0IGEvV2ViS2l0VG9vbHMvQ2hhbmdlTG9nIGIvV2ViS2l0
VG9vbHMvQ2hhbmdlTG9nCmluZGV4IDk2YmRhNjMuLjc5MDQ0OWQgMTAwNjQ0Ci0tLSBhL1dlYktp
dFRvb2xzL0NoYW5nZUxvZworKysgYi9XZWJLaXRUb29scy9DaGFuZ2VMb2cKQEAgLTEsMyArMSwy
MCBAQAorMjAxMC0wOC0xNyAgSmFtZXkgSGlja3MgIDxqYW1leS5oaWNrc0Bub2tpYS5jb20+CisK
KyAgICAgICAgW1F0XSBSZW1vdGUgV2ViIEluc3BlY3RvciBzdXBwb3J0IGZvciBRdFdlYktpdAor
CisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD00Mzk4OAor
CisgICAgICAgIFJ1bnMgYSB3ZWIgZGVidWcgc2VydmVyIG9uIHBvcnQgOTIyMiwgYXMgc3BlY2lm
aWVkIGJ5IHByb3BlcnR5CisgICAgICAgIF9xX3dlYkRlYnVnU2VydmVyUG9ydCBvbiBRV2ViUGFn
ZSBpbnN0YW5jZXMuIEFsbCBwYWdlcyB3aXRoIHRoYXQKKyAgICAgICAgcHJvcGVydHkgc2V0IHdp
bGwgYmUgcmVtb3RlbHkgaW5zcGVjdGFibGUuCisKKyAgICAgICAgVVJMIGZvciByZW1vdGUgaW5z
cGVjdGlvbiBvZiBmaXJzdCBRV2ViUGFnZSBpcworICAgICAgICAgICAgaHR0cDovL2xvY2FsaG9z
dDo5MjIyL2RldnRvb2xzL3BhZ2UvMQorICAgICAgICB3aGVyZSAxIGlzIHRoZSBudW1iZXIgb2Yg
dGhlIFFXZWJQYWdlIGluc3RhbmNlLgorICAgICAgICAKKyAgICAgICAgKiBRdFRlc3RCcm93c2Vy
L21haW53aW5kb3cuY3BwOgorICAgICAgICAoTWFpbldpbmRvdzo6TWFpbldpbmRvdyk6CisKIDIw
MTAtMDgtMTYgIFNhbSBXZWluaWcgIDxzYW1Ad2Via2l0Lm9yZz4KIAogICAgICAgICBSZXZpZXdl
ZCBieSBNYXJrIFJvd2UuCmRpZmYgLS1naXQgYS9XZWJLaXRUb29scy9RdFRlc3RCcm93c2VyL21h
aW53aW5kb3cuY3BwIGIvV2ViS2l0VG9vbHMvUXRUZXN0QnJvd3Nlci9tYWlud2luZG93LmNwcApp
bmRleCBhYmI2MDhmLi42OGE0ZTkxIDEwMDY0NAotLS0gYS9XZWJLaXRUb29scy9RdFRlc3RCcm93
c2VyL21haW53aW5kb3cuY3BwCisrKyBiL1dlYktpdFRvb2xzL1F0VGVzdEJyb3dzZXIvbWFpbndp
bmRvdy5jcHAKQEAgLTQyLDYgKzQyLDggQEAgTWFpbldpbmRvdzo6TWFpbldpbmRvdyhjb25zdCBR
U3RyaW5nJiB1cmwpCiAgICAgaWYgKHFnZXRlbnYoIlFUVEVTVEJST1dTRVJfVVNFX0FSR0JfVklT
VUFMUyIpLnRvSW50KCkgPT0gMSkKICAgICAgICAgc2V0QXR0cmlidXRlKFF0OjpXQV9UcmFuc2x1
Y2VudEJhY2tncm91bmQpOwogCisgICAgbV9wYWdlLT5zZXRQcm9wZXJ0eSgiX3Ffd2ViRGVidWdT
ZXJ2ZXJQb3J0IiwgOTIyMik7CisKICAgICBidWlsZFVJKCk7CiB9CiAK
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>64599</attachid>
            <date>2010-08-17 09:13:33 -0700</date>
            <delta_ts>2010-08-19 10:53:18 -0700</delta_ts>
            <desc>patch to enable remote web inspector for qtwebkit</desc>
            <filename>qt-remote-web-inspector.patch</filename>
            <type>text/plain</type>
            <size>30932</size>
            <attacher name="Jamey Hicks">jamey.hicks</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1dlYkNvcmUvQ2hhbmdlTG9nIGIvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXgg
YjdlYzFhMy4uZWQ1NDJjMCAxMDA2NDQKLS0tIGEvV2ViQ29yZS9DaGFuZ2VMb2cKKysrIGIvV2Vi
Q29yZS9DaGFuZ2VMb2cKQEAgLTEsMyArMSwyMyBAQAorMjAxMC0wOC0xNyAgSmFtZXkgSGlja3Mg
IDxqYW1leS5oaWNrc0Bub2tpYS5jb20+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChP
T1BTISkuCisKKyAgICAgICAgW1F0XSBSZW1vdGUgV2ViIEluc3BlY3RvciBzdXBwb3J0IGZvciBR
dFdlYktpdAorCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9p
ZD00Mzk4OAorCisgICAgICAgIFJ1bnMgYSB3ZWIgZGVidWcgc2VydmVyIG9uIHBvcnQgOTIyMiwg
YXMgc3BlY2lmaWVkIGJ5IHByb3BlcnR5CisgICAgICAgIF9xX3dlYkRlYnVnU2VydmVyUG9ydCBv
biBRV2ViUGFnZSBpbnN0YW5jZXMuIEFsbCBwYWdlcyB3aXRoIHRoYXQKKyAgICAgICAgcHJvcGVy
dHkgc2V0IHdpbGwgYmUgcmVtb3RlbHkgaW5zcGVjdGFibGUuCisKKyAgICAgICAgVVJMIGZvciBy
ZW1vdGUgaW5zcGVjdGlvbiBvZiBmaXJzdCBRV2ViUGFnZSBpcworICAgICAgICAgICAgaHR0cDov
L2xvY2FsaG9zdDo5MjIyL2RldnRvb2xzL3BhZ2UvMQorICAgICAgICB3aGVyZSAxIGlzIHRoZSBu
dW1iZXIgb2YgdGhlIFFXZWJQYWdlIGluc3RhbmNlLgorICAgICAgICAKKyAgICAgICAgTm8gbmV3
IHRlc3RzLiAoT09QUyEpCisKKyAgICAgICAgKiBXZWJDb3JlLnBybzoKKwogMjAxMC0wOC0xNyAg
UGF2ZWwgRmVsZG1hbiAgPHBmZWxkbWFuQGNocm9taXVtLm9yZz4KIAogICAgICAgICBSZXZpZXdl
ZCBieSBZdXJ5IFNlbWlraGF0c2t5LgpkaWZmIC0tZ2l0IGEvV2ViQ29yZS9XZWJDb3JlLnBybyBi
L1dlYkNvcmUvV2ViQ29yZS5wcm8KaW5kZXggNWY2ZmVjMy4uMDQ0MDM1MDEgMTAwNjQ0Ci0tLSBh
L1dlYkNvcmUvV2ViQ29yZS5wcm8KKysrIGIvV2ViQ29yZS9XZWJDb3JlLnBybwpAQCAtMjE3NCw2
ICsyMTc0LDcgQEAgSEVBREVSUyArPSBcCiAgICAgeG1sL1hTTFRQcm9jZXNzb3IuaCBcCiAgICAg
eG1sL1hTTFRVbmljb2RlU29ydC5oIFwKICAgICAkJFBXRC8uLi9XZWJLaXQvcXQvQXBpL3F3ZWJw
bHVnaW5kYXRhYmFzZV9wLmggXAorICAgICQkUFdELy4uL1dlYktpdC9xdC9XZWJDb3JlU3VwcG9y
dC9XZWJEZWJ1Z1NlcnZlclF0LmggXAogICAgICQkUFdELy4uL1dlYktpdC9xdC9XZWJDb3JlU3Vw
cG9ydC9RdEZhbGxiYWNrV2ViUG9wdXAuaCBcCiAgICAgJCRQV0QvLi4vV2ViS2l0L3F0L1dlYkNv
cmVTdXBwb3J0L0ZyYW1lTG9hZGVyQ2xpZW50UXQuaCBcCiAgICAgJCRQV0QvLi4vV2ViS2l0L3F0
L1dlYkNvcmVTdXBwb3J0L05vdGlmaWNhdGlvblByZXNlbnRlckNsaWVudFF0LmggXApAQCAtMjI2
Nyw2ICsyMjY4LDcgQEAgU09VUkNFUyArPSBcCiAgICAgLi4vV2ViS2l0L3F0L1dlYkNvcmVTdXBw
b3J0L0VkaXRvckNsaWVudFF0LmNwcCBcCiAgICAgLi4vV2ViS2l0L3F0L1dlYkNvcmVTdXBwb3J0
L0VkaXRDb21tYW5kUXQuY3BwIFwKICAgICAuLi9XZWJLaXQvcXQvV2ViQ29yZVN1cHBvcnQvRnJh
bWVMb2FkZXJDbGllbnRRdC5jcHAgXAorICAgIC4uL1dlYktpdC9xdC9XZWJDb3JlU3VwcG9ydC9X
ZWJEZWJ1Z1NlcnZlclF0LmNwcCBcCiAgICAgLi4vV2ViS2l0L3F0L1dlYkNvcmVTdXBwb3J0L0lu
c3BlY3RvckNsaWVudFF0LmNwcCBcCiAgICAgLi4vV2ViS2l0L3F0L1dlYkNvcmVTdXBwb3J0L05v
dGlmaWNhdGlvblByZXNlbnRlckNsaWVudFF0LmNwcCBcCiAgICAgLi4vV2ViS2l0L3F0L1dlYkNv
cmVTdXBwb3J0L1BhZ2VDbGllbnRRdC5jcHAgXApkaWZmIC0tZ2l0IGEvV2ViS2l0L3F0L0FwaS9x
d2ViaW5zcGVjdG9yLmNwcCBiL1dlYktpdC9xdC9BcGkvcXdlYmluc3BlY3Rvci5jcHAKaW5kZXgg
ODAyZWE5OC4uNWE4YjlkMCAxMDA2NDQKLS0tIGEvV2ViS2l0L3F0L0FwaS9xd2ViaW5zcGVjdG9y
LmNwcAorKysgYi9XZWJLaXQvcXQvQXBpL3F3ZWJpbnNwZWN0b3IuY3BwCkBAIC0xOTYsNiArMTk2
LDE5IEBAIHZvaWQgUVdlYkluc3BlY3RvclByaXZhdGU6OnNldEZyb250ZW5kKFFXaWRnZXQqIG5l
d0Zyb250ZW5kKQogICAgIH0KIH0KIAorLyohIFxpbnRlcm5hbCAqLwordm9pZCBRV2ViSW5zcGVj
dG9yUHJpdmF0ZTo6c2V0UmVtb3RlRnJvbnRlbmQoUU9iamVjdCogbmV3UmVtb3RlRnJvbnRlbmQp
Cit7CisgICAgaWYgKHJlbW90ZUZyb250ZW5kKQorICAgICAgICByZW1vdGVGcm9udGVuZC0+c2V0
UGFyZW50KDApOworCisgICAgcmVtb3RlRnJvbnRlbmQgPSBuZXdSZW1vdGVGcm9udGVuZDsKKwor
ICAgIGlmIChyZW1vdGVGcm9udGVuZCkgeworICAgICAgICByZW1vdGVGcm9udGVuZC0+c2V0UGFy
ZW50KHEpOworICAgIH0KK30KKwogdm9pZCBRV2ViSW5zcGVjdG9yUHJpdmF0ZTo6YWRqdXN0RnJv
bnRlbmRTaXplKGNvbnN0IFFTaXplJiBzaXplKQogewogICAgIGlmIChmcm9udGVuZCkKZGlmZiAt
LWdpdCBhL1dlYktpdC9xdC9BcGkvcXdlYmluc3BlY3Rvcl9wLmggYi9XZWJLaXQvcXQvQXBpL3F3
ZWJpbnNwZWN0b3JfcC5oCmluZGV4IDRkMzI3Y2MuLjM3NWJkZmMgMTAwNjQ0Ci0tLSBhL1dlYktp
dC9xdC9BcGkvcXdlYmluc3BlY3Rvcl9wLmgKKysrIGIvV2ViS2l0L3F0L0FwaS9xd2ViaW5zcGVj
dG9yX3AuaApAQCAtMzMsMTQgKzMzLDE3IEBAIHB1YmxpYzoKICAgICA6IHEocXEpCiAgICAgLCBw
YWdlKDApCiAgICAgLCBmcm9udGVuZCgwKQorICAgICwgcmVtb3RlRnJvbnRlbmQoMCkKICAgICB7
fQogCiAgICAgdm9pZCBzZXRGcm9udGVuZChRV2lkZ2V0KiBuZXdGcm9udGVuZCk7CisgICAgdm9p
ZCBzZXRSZW1vdGVGcm9udGVuZChRT2JqZWN0KiBuZXdSZW1vdGVGcm9udGVuZCk7CiAgICAgdm9p
ZCBhZGp1c3RGcm9udGVuZFNpemUoY29uc3QgUVNpemUmIHNpemUpOwogCiAgICAgUVdlYkluc3Bl
Y3RvciogcTsKICAgICBRV2ViUGFnZSogcGFnZTsKICAgICBRV2lkZ2V0KiBmcm9udGVuZDsKKyAg
ICBRT2JqZWN0KiByZW1vdGVGcm9udGVuZDsKIH07CiAKICNlbmRpZgpkaWZmIC0tZ2l0IGEvV2Vi
S2l0L3F0L0FwaS9xd2VicGFnZS5jcHAgYi9XZWJLaXQvcXQvQXBpL3F3ZWJwYWdlLmNwcAppbmRl
eCA1MTZlYmM5Li4yNGMwNWU1IDEwMDY0NAotLS0gYS9XZWJLaXQvcXQvQXBpL3F3ZWJwYWdlLmNw
cAorKysgYi9XZWJLaXQvcXQvQXBpL3F3ZWJwYWdlLmNwcApAQCAtNzYsNiArNzYsNyBAQAogI2lu
Y2x1ZGUgIkhUTUxJbnB1dEVsZW1lbnQuaCIKICNpbmNsdWRlICJIVE1MTmFtZXMuaCIKICNpbmNs
dWRlICJIaXRUZXN0UmVzdWx0LmgiCisjaW5jbHVkZSAiV2ViRGVidWdTZXJ2ZXJRdC5oIgogI2lu
Y2x1ZGUgIldpbmRvd0ZlYXR1cmVzLmgiCiAjaW5jbHVkZSAiTG9jYWxpemVkU3RyaW5ncy5oIgog
I2luY2x1ZGUgIkNhY2hlLmgiCkBAIC05NSw3ICs5Niw2IEBACiAjaW5jbHVkZSA8UURyYWdNb3Zl
RXZlbnQ+CiAjaW5jbHVkZSA8UURyb3BFdmVudD4KICNpbmNsdWRlIDxRRmlsZURpYWxvZz4KLSNp
bmNsdWRlIDxRSHR0cFJlcXVlc3RIZWFkZXI+CiAjaW5jbHVkZSA8UUlucHV0RGlhbG9nPgogI2lu
Y2x1ZGUgPFFMb2NhbGU+CiAjaW5jbHVkZSA8UU1lc3NhZ2VCb3g+CkBAIC0xMjk2LDYgKzEyOTYs
MTAgQEAgdm9pZCBRV2ViUGFnZVByaXZhdGU6OmR5bmFtaWNQcm9wZXJ0eUNoYW5nZUV2ZW50KFFE
eW5hbWljUHJvcGVydHlDaGFuZ2VFdmVudCogZXYKICAgICAgICAgZnJhbWUtPnRpbGVkQmFja2lu
Z1N0b3JlKCktPnNldEtlZXBBbmRDb3ZlckFyZWFNdWx0aXBsaWVycyhrZWVwTXVsdGlwbGllciwg
Y292ZXJNdWx0aXBsaWVyKTsKICAgICB9CiAjZW5kaWYKKyAgICBlbHNlIGlmIChldmVudC0+cHJv
cGVydHlOYW1lKCkgPT0gIl9xX3dlYkRlYnVnU2VydmVyUG9ydCIpIHsKKwlXZWJEZWJ1Z1NlcnZl
clF0ICp3ZWJEZWJ1Z1NlcnZlciA9IFdlYkRlYnVnU2VydmVyUXQ6OnNlcnZlcigpOworCXdlYkRl
YnVnU2VydmVyLT5saXN0ZW4ocS0+cHJvcGVydHkoIl9xX3dlYkRlYnVnU2VydmVyUG9ydCIpLnRv
SW50KCkpOworICAgIH0KIH0KICNlbmRpZgogCkBAIC0xODg3LDYgKzE4OTEsNyBAQCBRV2ViUGFn
ZTo6flFXZWJQYWdlKCkKICAgICAgICAgZWxzZQogICAgICAgICAgICAgZC0+aW5zcGVjdG9yLT5z
ZXRQYWdlKDApOwogICAgIH0KKwogICAgIGRlbGV0ZSBkOwogfQogCmRpZmYgLS1naXQgYS9XZWJL
aXQvcXQvQ2hhbmdlTG9nIGIvV2ViS2l0L3F0L0NoYW5nZUxvZwppbmRleCBhN2RhNzQxLi5hNTM4
MzdjIDEwMDY0NAotLS0gYS9XZWJLaXQvcXQvQ2hhbmdlTG9nCisrKyBiL1dlYktpdC9xdC9DaGFu
Z2VMb2cKQEAgLTEsMyArMSw1NyBAQAorMjAxMC0wOC0xNyAgSmFtZXkgSGlja3MgIDxqYW1leS5o
aWNrc0Bub2tpYS5jb20+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisK
KyAgICAgICAgW1F0XSBSZW1vdGUgV2ViIEluc3BlY3RvciBzdXBwb3J0IGZvciBRdFdlYktpdAor
CisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD00Mzk4OAor
CisgICAgICAgIFJ1bnMgYSB3ZWIgZGVidWcgc2VydmVyIG9uIHBvcnQgOTIyMiwgYXMgc3BlY2lm
aWVkIGJ5IHByb3BlcnR5CisgICAgICAgIF9xX3dlYkRlYnVnU2VydmVyUG9ydCBvbiBRV2ViUGFn
ZSBpbnN0YW5jZXMuIEFsbCBwYWdlcyB3aXRoIHRoYXQKKyAgICAgICAgcHJvcGVydHkgc2V0IHdp
bGwgYmUgcmVtb3RlbHkgaW5zcGVjdGFibGUuCisKKyAgICAgICAgVVJMIGZvciByZW1vdGUgaW5z
cGVjdGlvbiBvZiBmaXJzdCBRV2ViUGFnZSBpcworICAgICAgICAgICAgaHR0cDovL2xvY2FsaG9z
dDo5MjIyL2RldnRvb2xzL3BhZ2UvMQorICAgICAgICB3aGVyZSAxIGlzIHRoZSBudW1iZXIgb2Yg
dGhlIFFXZWJQYWdlIGluc3RhbmNlLgorICAgICAgICAKKyAgICAgICAgKiBBcGkvcXdlYmluc3Bl
Y3Rvci5jcHA6CisgICAgICAgIChRV2ViSW5zcGVjdG9yUHJpdmF0ZTo6c2V0UmVtb3RlRnJvbnRl
bmQpOgorICAgICAgICAqIEFwaS9xd2ViaW5zcGVjdG9yX3AuaDoKKyAgICAgICAgKFFXZWJJbnNw
ZWN0b3JQcml2YXRlOjpRV2ViSW5zcGVjdG9yUHJpdmF0ZSk6CisgICAgICAgICogQXBpL3F3ZWJw
YWdlLmNwcDoKKyAgICAgICAgKFFXZWJQYWdlUHJpdmF0ZTo6ZHluYW1pY1Byb3BlcnR5Q2hhbmdl
RXZlbnQpOgorICAgICAgICAoUVdlYlBhZ2U6On5RV2ViUGFnZSk6CisgICAgICAgICogV2ViQ29y
ZVN1cHBvcnQvSW5zcGVjdG9yQ2xpZW50UXQuY3BwOgorICAgICAgICAoV2ViQ29yZTo6SW5zcGVj
dG9yQ2xpZW50UXQ6Okluc3BlY3RvckNsaWVudFF0KToKKyAgICAgICAgKFdlYkNvcmU6Okluc3Bl
Y3RvckNsaWVudFF0OjppbnNwZWN0b3JEZXN0cm95ZWQpOgorICAgICAgICAoV2ViQ29yZTo6SW5z
cGVjdG9yQ2xpZW50UXQ6Om9wZW5JbnNwZWN0b3JGcm9udGVuZCk6CisgICAgICAgIChXZWJDb3Jl
OjpJbnNwZWN0b3JDbGllbnRRdDo6c2V0UmVtb3RlRnJvbnRlbmQpOgorICAgICAgICAoV2ViQ29y
ZTo6SW5zcGVjdG9yQ2xpZW50UXQ6OnNlbmRNZXNzYWdlVG9Gcm9udGVuZCk6CisgICAgICAgIChX
ZWJDb3JlOjpJbnNwZWN0b3JDbGllbnRRdDo6ZGlzcGF0Y2gpOgorICAgICAgICAqIFdlYkNvcmVT
dXBwb3J0L0luc3BlY3RvckNsaWVudFF0Lmg6CisgICAgICAgICogV2ViQ29yZVN1cHBvcnQvV2Vi
RGVidWdTZXJ2ZXJRdC5jcHA6IEFkZGVkLgorICAgICAgICAoV2ViQ29yZTo6c2V0Q2hhbGxlbmdl
TnVtYmVyKToKKyAgICAgICAgKFdlYkNvcmU6OmdlbmVyYXRlRXhwZWN0ZWRDaGFsbGVuZ2VSZXNw
b25zZSk6CisgICAgICAgIChXZWJDb3JlOjpnZXRDaGFsbGVuZ2VOdW1iZXJGcm9tRmllbGQpOgor
ICAgICAgICAoV2ViQ29yZTo6V2ViRGVidWdTZXJ2ZXJRdDo6c2VydmVyKToKKyAgICAgICAgKFdl
YkNvcmU6OldlYkRlYnVnU2VydmVyUXQ6OldlYkRlYnVnU2VydmVyUXQpOgorICAgICAgICAoV2Vi
Q29yZTo6V2ViRGVidWdTZXJ2ZXJRdDo6fldlYkRlYnVnU2VydmVyUXQpOgorICAgICAgICAoV2Vi
Q29yZTo6V2ViRGVidWdTZXJ2ZXJRdDo6bGlzdGVuKToKKyAgICAgICAgKFdlYkNvcmU6OldlYkRl
YnVnU2VydmVyUXQ6OmNsb3NlKToKKyAgICAgICAgKFdlYkNvcmU6OldlYkRlYnVnU2VydmVyUXQ6
Omluc3BlY3RvckNsaWVudCk6CisgICAgICAgIChXZWJDb3JlOjpXZWJEZWJ1Z1NlcnZlclF0Ojpy
ZWdpc3RlclBhZ2UpOgorICAgICAgICAoV2ViQ29yZTo6V2ViRGVidWdTZXJ2ZXJRdDo6dW5yZWdp
c3RlclBhZ2UpOgorICAgICAgICAoV2ViQ29yZTo6V2ViRGVidWdTZXJ2ZXJRdDo6Z290TmV3Q29u
bmVjdGlvbik6CisgICAgICAgIChXZWJDb3JlOjpIdHRwUmVxdWVzdEhhbmRsZXI6Okh0dHBSZXF1
ZXN0SGFuZGxlcik6CisgICAgICAgIChXZWJDb3JlOjpIdHRwUmVxdWVzdEhhbmRsZXI6On5IdHRw
UmVxdWVzdEhhbmRsZXIpOgorICAgICAgICAoV2ViQ29yZTo6SHR0cFJlcXVlc3RIYW5kbGVyOjp0
Y3BSZWFkeVJlYWQpOgorICAgICAgICAoV2ViQ29yZTo6SHR0cFJlcXVlc3RIYW5kbGVyOjp0Y3BD
b25uZWN0aW9uRGlzY29ubmVjdGVkKToKKyAgICAgICAgKFdlYkNvcmU6Okh0dHBSZXF1ZXN0SGFu
ZGxlcjo6d2ViU29ja2V0U2VuZCk6CisgICAgICAgIChXZWJDb3JlOjpIdHRwUmVxdWVzdEhhbmRs
ZXI6OndlYlNvY2tldFJlYWR5UmVhZCk6CisgICAgICAgIChXZWJDb3JlOjpSZW1vdGVGcm9udGVu
ZENoYW5uZWw6OlJlbW90ZUZyb250ZW5kQ2hhbm5lbCk6CisgICAgICAgIChXZWJDb3JlOjpSZW1v
dGVGcm9udGVuZENoYW5uZWw6OnNlbmRNZXNzYWdlVG9Gcm9udGVuZCk6CisgICAgICAgICogV2Vi
Q29yZVN1cHBvcnQvV2ViRGVidWdTZXJ2ZXJRdC5oOiBBZGRlZC4KKwogMjAxMC0wOC0xNiAgVG9y
IEFybmUgVmVzdGLDuCAgPHRvci5hcm5lLnZlc3Rib0Bub2tpYS5jb20+CiAKICAgICAgICAgUmV2
aWV3ZWQgYnkgS2VubmV0aCBDaHJpc3RpYW5zZW4uCmRpZmYgLS1naXQgYS9XZWJLaXQvcXQvV2Vi
Q29yZVN1cHBvcnQvSW5zcGVjdG9yQ2xpZW50UXQuY3BwIGIvV2ViS2l0L3F0L1dlYkNvcmVTdXBw
b3J0L0luc3BlY3RvckNsaWVudFF0LmNwcAppbmRleCBlMTNmNmMzLi5jYjVkNWYzIDEwMDY0NAot
LS0gYS9XZWJLaXQvcXQvV2ViQ29yZVN1cHBvcnQvSW5zcGVjdG9yQ2xpZW50UXQuY3BwCisrKyBi
L1dlYktpdC9xdC9XZWJDb3JlU3VwcG9ydC9JbnNwZWN0b3JDbGllbnRRdC5jcHAKQEAgLTMyLDEx
ICszMiwxNCBAQAogI2luY2x1ZGUgIkluc3BlY3RvckNsaWVudFF0LmgiCiAKICNpbmNsdWRlICJG
cmFtZS5oIgorI2luY2x1ZGUgIkluc3BlY3RvckJhY2tlbmREaXNwYXRjaGVyLmgiCiAjaW5jbHVk
ZSAiSW5zcGVjdG9yQ29udHJvbGxlci5oIgogI2luY2x1ZGUgIk5vdEltcGxlbWVudGVkLmgiCiAj
aW5jbHVkZSAiUGFnZS5oIgogI2luY2x1ZGUgIlBsYXRmb3JtU3RyaW5nLmgiCisjaW5jbHVkZSAi
UmVtb3RlSW5zcGVjdG9yRnJvbnRlbmQuaCIKICNpbmNsdWRlICJTY3JpcHRDb250cm9sbGVyLmgi
CisjaW5jbHVkZSAiV2ViRGVidWdTZXJ2ZXJRdC5oIgogI2luY2x1ZGUgInF3ZWJpbnNwZWN0b3Iu
aCIKICNpbmNsdWRlICJxd2ViaW5zcGVjdG9yX3AuaCIKICNpbmNsdWRlICJxd2VicGFnZS5oIgpA
QCAtOTYsMjEgKzk5LDM3IEBAIHB1YmxpYyBzbG90czoKIEluc3BlY3RvckNsaWVudFF0OjpJbnNw
ZWN0b3JDbGllbnRRdChRV2ViUGFnZSogcGFnZSkKICAgICA6IG1faW5zcGVjdGVkV2ViUGFnZShw
YWdlKQogICAgICwgbV9mcm9udGVuZFdlYlBhZ2UoMCkKLXt9CisgICAgLCBtX3JlbW90ZUluc3Bl
Y3RvcihmYWxzZSkKK3sKKyAgICBpZiAobV9pbnNwZWN0ZWRXZWJQYWdlLT5wcm9wZXJ0eSgiX3Ff
d2ViRGVidWdTZXJ2ZXJQb3J0IikuaXNWYWxpZCgpKQorICAgICAgICBtX3JlbW90ZUluc3BlY3Rv
ciA9IHRydWU7CisKKyAgICBXZWJEZWJ1Z1NlcnZlclF0KiB3ZWJEZWJ1Z1NlcnZlciA9IFdlYkRl
YnVnU2VydmVyUXQ6OnNlcnZlcigpOworICAgIHdlYkRlYnVnU2VydmVyLT5yZWdpc3RlclBhZ2Uo
cGFnZSwgdGhpcyk7Cit9CiAKIHZvaWQgSW5zcGVjdG9yQ2xpZW50UXQ6Omluc3BlY3RvckRlc3Ry
b3llZCgpCiB7CisgICAgV2ViRGVidWdTZXJ2ZXJRdCogd2ViRGVidWdTZXJ2ZXIgPSBXZWJEZWJ1
Z1NlcnZlclF0OjpzZXJ2ZXIoKTsKKyAgICBpZiAod2ViRGVidWdTZXJ2ZXIpCisgICAgICAgIHdl
YkRlYnVnU2VydmVyLT51bnJlZ2lzdGVyUGFnZShtX2luc3BlY3RlZFdlYlBhZ2UpOworCiAgICAg
ZGVsZXRlIHRoaXM7CiB9CiAKICAgICAKLXZvaWQgSW5zcGVjdG9yQ2xpZW50UXQ6Om9wZW5JbnNw
ZWN0b3JGcm9udGVuZChXZWJDb3JlOjpJbnNwZWN0b3JDb250cm9sbGVyKikKK3ZvaWQgSW5zcGVj
dG9yQ2xpZW50UXQ6Om9wZW5JbnNwZWN0b3JGcm9udGVuZChXZWJDb3JlOjpJbnNwZWN0b3JDb250
cm9sbGVyKiBpbnNwZWN0b3JDb250cm9sbGVyKQogewogICAgIFFXZWJWaWV3KiBpbnNwZWN0b3JW
aWV3ID0gbmV3IFFXZWJWaWV3OwogICAgIEluc3BlY3RvckNsaWVudFdlYlBhZ2UqIGluc3BlY3Rv
clBhZ2UgPSBuZXcgSW5zcGVjdG9yQ2xpZW50V2ViUGFnZShpbnNwZWN0b3JWaWV3KTsKICAgICBp
bnNwZWN0b3JWaWV3LT5zZXRQYWdlKGluc3BlY3RvclBhZ2UpOwogCiAgICAgUVdlYkluc3BlY3Rv
ciogaW5zcGVjdG9yID0gbV9pbnNwZWN0ZWRXZWJQYWdlLT5kLT5nZXRPckNyZWF0ZUluc3BlY3Rv
cigpOworICAgIGlmIChtX2luc3BlY3RlZFdlYlBhZ2UtPnByb3BlcnR5KCJfcV93ZWJEZWJ1Z1Nl
cnZlclBvcnQiKS5pc1ZhbGlkKCkpIHsKKyAgICAgICAgbV9yZW1vdGVJbnNwZWN0b3IgPSB0cnVl
OworICAgICAgICByZXR1cm47CisgICAgfQorCiAgICAgLy8gVGhpcyBpcyBhIGtub3duIGhvb2sg
dGhhdCBhbGxvd3MgY2hhbmdpbmcgdGhlIGRlZmF1bHQgVVJMIGZvciB0aGUKICAgICAvLyBXZWIg
aW5zcGVjdG9yLiBUaGlzIGlzIHVzZWQgZm9yIFNESyBwdXJwb3Nlcy4gUGxlYXNlIGtlZXAgdGhp
cyBob29rCiAgICAgLy8gYXJvdW5kIGFuZCBkb24ndCByZW1vdmUgaXQuCkBAIC0xMzMsNiArMTUy
LDcgQEAgdm9pZCBJbnNwZWN0b3JDbGllbnRRdDo6b3Blbkluc3BlY3RvckZyb250ZW5kKFdlYkNv
cmU6Okluc3BlY3RvckNvbnRyb2xsZXIqKQogCiAgICAgaW5zcGVjdG9yVmlldy0+cGFnZSgpLT5k
LT5wYWdlLT5pbnNwZWN0b3JDb250cm9sbGVyKCktPnNldEluc3BlY3RvckZyb250ZW5kQ2xpZW50
KG5ldyBJbnNwZWN0b3JGcm9udGVuZENsaWVudFF0KG1faW5zcGVjdGVkV2ViUGFnZSwgaW5zcGVj
dG9yVmlldywgdGhpcykpOwogICAgIG1fZnJvbnRlbmRXZWJQYWdlID0gaW5zcGVjdG9yUGFnZTsK
KwogfQogCiB2b2lkIEluc3BlY3RvckNsaWVudFF0OjpyZWxlYXNlRnJvbnRlbmRQYWdlKCkKQEAg
LTE0MCw2ICsxNjAsMTggQEAgdm9pZCBJbnNwZWN0b3JDbGllbnRRdDo6cmVsZWFzZUZyb250ZW5k
UGFnZSgpCiAgICAgbV9mcm9udGVuZFdlYlBhZ2UgPSAwOwogfQogCisKK3ZvaWQgSW5zcGVjdG9y
Q2xpZW50UXQ6OnNldFJlbW90ZUZyb250ZW5kKFJlbW90ZUZyb250ZW5kQ2hhbm5lbCogY2hhbm5l
bCkKK3sKKyNpZiBFTkFCTEUoSU5TUEVDVE9SKQorICAgIG1faW5zcGVjdGVkV2ViUGFnZS0+ZC0+
aW5zcGVjdG9yLT5kLT5zZXRSZW1vdGVGcm9udGVuZChjaGFubmVsKTsKKyAgICBtX2luc3BlY3Rl
ZFdlYlBhZ2UtPmQtPmluc3BlY3RvckNvbnRyb2xsZXIoKS0+Y29ubmVjdEZyb250ZW5kKCk7CisK
KyAgICAvLyBYWFggc29tZXdoZXJlIG5lZWQgdG8gcHJvdmlkZSBjYWxsIHRvOgorICAgIC8vIG1f
aW5zcGVjdGVkV2ViUGFnZS0+ZC0+aW5zcGVjdG9yQ29udHJvbGxlcigpLT5kaXNjb25uZWN0RnJv
bnRlbmQoKTsKKyNlbmRpZgorfQorCiB2b2lkIEluc3BlY3RvckNsaWVudFF0OjpoaWdobGlnaHQo
Tm9kZSopCiB7CiAgICAgbm90SW1wbGVtZW50ZWQoKTsKQEAgLTE5Niw2ICsyMjgsMjEgQEAgdm9p
ZCBJbnNwZWN0b3JDbGllbnRRdDo6c3RvcmVTZXR0aW5nKGNvbnN0IFN0cmluZyYga2V5LCBjb25z
dCBTdHJpbmcmIHNldHRpbmcpCiAKIGJvb2wgSW5zcGVjdG9yQ2xpZW50UXQ6OnNlbmRNZXNzYWdl
VG9Gcm9udGVuZChjb25zdCBTdHJpbmcmIG1lc3NhZ2UpCiB7CisgICAgaWYgKG1fcmVtb3RlSW5z
cGVjdG9yIAorICAgICAgICB8fCAobV9pbnNwZWN0ZWRXZWJQYWdlICYmIG1faW5zcGVjdGVkV2Vi
UGFnZS0+cHJvcGVydHkoIl9xX3dlYkRlYnVnU2VydmVyUG9ydCIpLmlzVmFsaWQoKSkpIHsKKyAg
ICAgICAgbV9yZW1vdGVJbnNwZWN0b3IgPSB0cnVlOworICAgICAgICBpZiAoIW1faW5zcGVjdGVk
V2ViUGFnZSAKKyAgICAgICAgICAgIHx8ICFtX2luc3BlY3RlZFdlYlBhZ2UtPmQKKyAgICAgICAg
ICAgIHx8ICFtX2luc3BlY3RlZFdlYlBhZ2UtPmQtPmluc3BlY3RvcgorICAgICAgICAgICAgfHwg
IW1faW5zcGVjdGVkV2ViUGFnZS0+ZC0+aW5zcGVjdG9yLT5kCisgICAgICAgICAgICB8fCAhbV9p
bnNwZWN0ZWRXZWJQYWdlLT5kLT5pbnNwZWN0b3ItPmQtPnJlbW90ZUZyb250ZW5kKQorICAgICAg
ICAgICAgcmV0dXJuIGZhbHNlOworCisgICAgICAgIFJlbW90ZUZyb250ZW5kQ2hhbm5lbCogc2Vz
c2lvbiA9IHFvYmplY3RfY2FzdDxSZW1vdGVGcm9udGVuZENoYW5uZWwqPihtX2luc3BlY3RlZFdl
YlBhZ2UtPmQtPmluc3BlY3Rvci0+ZC0+cmVtb3RlRnJvbnRlbmQpOworICAgICAgICBpZiAoc2Vz
c2lvbikKKyAgICAgICAgICAgIHNlc3Npb24tPnNlbmRNZXNzYWdlVG9Gcm9udGVuZChtZXNzYWdl
KTsKKyAgICAgICAgcmV0dXJuIHRydWU7CisgICAgfQogICAgIGlmICghbV9mcm9udGVuZFdlYlBh
Z2UpCiAgICAgICAgIHJldHVybiBmYWxzZTsKIApAQCAtMjE4LDYgKzI2NSwxMiBAQCBib29sIElu
c3BlY3RvckNsaWVudFF0OjpzZW5kTWVzc2FnZVRvRnJvbnRlbmQoY29uc3QgU3RyaW5nJiBtZXNz
YWdlKQogICAgIHJldHVybiB0cnVlOwogfQogCit2b2lkIEluc3BlY3RvckNsaWVudFF0OjpkaXNw
YXRjaChjb25zdCBTdHJpbmcgJm1lc3NhZ2UpCit7CisgICAgSW5zcGVjdG9yQ29udHJvbGxlciog
aW5zcGVjdG9yQ29udHJvbGxlciA9IG1faW5zcGVjdGVkV2ViUGFnZS0+ZC0+cGFnZS0+aW5zcGVj
dG9yQ29udHJvbGxlcigpOworICAgIGluc3BlY3RvckNvbnRyb2xsZXItPmluc3BlY3RvckJhY2tl
bmREaXNwYXRjaGVyKCktPmRpc3BhdGNoKG1lc3NhZ2UpOworfQorCiBzdGF0aWMgU3RyaW5nIHZh
cmlhbnRUb1NldHRpbmcoY29uc3QgUVZhcmlhbnQmIHF2YXJpYW50KQogewogICAgIFN0cmluZyBy
ZXRWYWw7CmRpZmYgLS1naXQgYS9XZWJLaXQvcXQvV2ViQ29yZVN1cHBvcnQvSW5zcGVjdG9yQ2xp
ZW50UXQuaCBiL1dlYktpdC9xdC9XZWJDb3JlU3VwcG9ydC9JbnNwZWN0b3JDbGllbnRRdC5oCmlu
ZGV4IDk1MjZjODguLjQ1NWM5ZGIgMTAwNjQ0Ci0tLSBhL1dlYktpdC9xdC9XZWJDb3JlU3VwcG9y
dC9JbnNwZWN0b3JDbGllbnRRdC5oCisrKyBiL1dlYktpdC9xdC9XZWJDb3JlU3VwcG9ydC9JbnNw
ZWN0b3JDbGllbnRRdC5oCkBAIC00Myw2ICs0Myw3IEBAIGNsYXNzIFFXZWJWaWV3OwogbmFtZXNw
YWNlIFdlYkNvcmUgewogY2xhc3MgTm9kZTsKIGNsYXNzIFBhZ2U7CitjbGFzcyBSZW1vdGVGcm9u
dGVuZENoYW5uZWw7CiAKIGNsYXNzIEluc3BlY3RvckNsaWVudFF0IDogcHVibGljIEluc3BlY3Rv
ckNsaWVudCB7CiBwdWJsaWM6CkBAIC01OSwxMiArNjAsMTYgQEAgcHVibGljOgogICAgIHZpcnR1
YWwgdm9pZCBzdG9yZVNldHRpbmcoY29uc3QgU3RyaW5nJiBrZXksIGNvbnN0IFN0cmluZyYgdmFs
dWUpOwogCiAgICAgdmlydHVhbCBib29sIHNlbmRNZXNzYWdlVG9Gcm9udGVuZChjb25zdCBTdHJp
bmcmKTsKKyAgICB2aXJ0dWFsIHZvaWQgZGlzcGF0Y2goY29uc3QgU3RyaW5nICZtZXNzYWdlKTsK
IAogICAgIHZvaWQgcmVsZWFzZUZyb250ZW5kUGFnZSgpOwogCisgICAgdm9pZCBzZXRSZW1vdGVG
cm9udGVuZChSZW1vdGVGcm9udGVuZENoYW5uZWwgKmNoYW5uZWwpOworCiBwcml2YXRlOgogICAg
IFFXZWJQYWdlKiBtX2luc3BlY3RlZFdlYlBhZ2U7CiAgICAgUVdlYlBhZ2UqIG1fZnJvbnRlbmRX
ZWJQYWdlOworICAgIGJvb2wgbV9yZW1vdGVJbnNwZWN0b3I7CiB9OwogCiBjbGFzcyBJbnNwZWN0
b3JGcm9udGVuZENsaWVudFF0IDogcHVibGljIEluc3BlY3RvckZyb250ZW5kQ2xpZW50TG9jYWwg
ewpAQCAtOTUsNiArMTAwLDcgQEAgcHJpdmF0ZToKICAgICBib29sIG1fZGVzdHJveWluZ0luc3Bl
Y3RvclZpZXc7CiAgICAgSW5zcGVjdG9yQ2xpZW50UXQqIG1faW5zcGVjdG9yQ2xpZW50OwogfTsK
KwogfQogCiAjZW5kaWYKZGlmZiAtLWdpdCBhL1dlYktpdC9xdC9XZWJDb3JlU3VwcG9ydC9XZWJE
ZWJ1Z1NlcnZlclF0LmNwcCBiL1dlYktpdC9xdC9XZWJDb3JlU3VwcG9ydC9XZWJEZWJ1Z1NlcnZl
clF0LmNwcApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4xZDc3NGQxCi0tLSAv
ZGV2L251bGwKKysrIGIvV2ViS2l0L3F0L1dlYkNvcmVTdXBwb3J0L1dlYkRlYnVnU2VydmVyUXQu
Y3BwCkBAIC0wLDAgKzEsMzc2IEBACisvKgorICBDb3B5cmlnaHQgKEMpIDIwMTAgTm9raWEgQ29y
cG9yYXRpb24gYW5kL29yIGl0cyBzdWJzaWRpYXJ5KC1pZXMpCisKKyAgVGhpcyBsaWJyYXJ5IGlz
IGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vcgorICBtb2RpZnkg
aXQgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUgTGlicmFyeSBHZW5lcmFsIFB1YmxpYworICBM
aWNlbnNlIGFzIHB1Ymxpc2hlZCBieSB0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uOyBlaXRo
ZXIKKyAgdmVyc2lvbiAyIG9mIHRoZSBMaWNlbnNlLCBvciAoYXQgeW91ciBvcHRpb24pIGFueSBs
YXRlciB2ZXJzaW9uLgorCisgIFRoaXMgbGlicmFyeSBpcyBkaXN0cmlidXRlZCBpbiB0aGUgaG9w
ZSB0aGF0IGl0IHdpbGwgYmUgdXNlZnVsLAorICBidXQgV0lUSE9VVCBBTlkgV0FSUkFOVFk7IHdp
dGhvdXQgZXZlbiB0aGUgaW1wbGllZCB3YXJyYW50eSBvZgorICBNRVJDSEFOVEFCSUxJVFkgb3Ig
RklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlIEdOVQorICBMaWJyYXJ5
IEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KKworICBZb3Ugc2hvdWxk
IGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgTGlicmFyeSBHZW5lcmFsIFB1YmxpYyBM
aWNlbnNlCisgIGFsb25nIHdpdGggdGhpcyBsaWJyYXJ5OyBzZWUgdGhlIGZpbGUgQ09QWUlORy5M
SUIuICBJZiBub3QsIHdyaXRlIHRvCisgIHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb24sIElu
Yy4sIDUxIEZyYW5rbGluIFN0cmVldCwgRmlmdGggRmxvb3IsCisgIEJvc3RvbiwgTUEgMDIxMTAt
MTMwMSwgVVNBLgorKi8KKworCisjaW5jbHVkZSAiY29uZmlnLmgiCisjaW5jbHVkZSAiV2ViRGVi
dWdTZXJ2ZXJRdC5oIgorCisjaW5jbHVkZSAiSW5zcGVjdG9yQ2xpZW50UXQuaCIKKyNpbmNsdWRl
ICJNRDUuaCIKKyNpbmNsdWRlIDxRRmlsZT4KKyNpbmNsdWRlIDxRSHR0cEhlYWRlcj4KKyNpbmNs
dWRlIDxRSHR0cFJlcXVlc3RIZWFkZXI+CisjaW5jbHVkZSA8UUh0dHBSZXNwb25zZUhlYWRlcj4K
KyNpbmNsdWRlIDxRU3RyaW5nPgorI2luY2x1ZGUgPFFTdHJpbmdMaXN0PgorI2luY2x1ZGUgPFFU
Y3BTZXJ2ZXI+CisjaW5jbHVkZSA8UVRjcFNvY2tldD4KKyNpbmNsdWRlIDxRVXJsPgorI2luY2x1
ZGUgPFFXaWRnZXQ+CisjaW5jbHVkZSA8cWVuZGlhbi5oPgorCituYW1lc3BhY2UgV2ViQ29yZSB7
CisKK3N0YXRpYyBib29sIGRlYnVnID0gZmFsc2U7CisKK3N0YXRpYyB2b2lkIHNldENoYWxsZW5n
ZU51bWJlcih1bnNpZ25lZCBjaGFyKiBidWYsIHVpbnQzMl90IG51bWJlcikKK3sKKyAgICB1bnNp
Z25lZCBjaGFyKiBwID0gYnVmICsgMzsKKyAgICBmb3IgKGludCBpID0gMDsgaSA8IDQ7IGkrKykg
eworICAgICAgICAqcCA9IG51bWJlciAmIDB4RkY7CisgICAgICAgIC0tcDsKKyAgICAgICAgbnVt
YmVyID4+PSA4OworICAgIH0KK30KKworc3RhdGljIHZvaWQgZ2VuZXJhdGVFeHBlY3RlZENoYWxs
ZW5nZVJlc3BvbnNlKHVpbnQzMl90IG51bWJlcjEsIHVpbnQzMl90IG51bWJlcjIsIHVuc2lnbmVk
IGNoYXIga2V5M1s4XSwgdW5zaWduZWQgY2hhciBleHBlY3RlZENoYWxsZW5nZVsxNl0pCit7Cisg
ICAgdW5zaWduZWQgY2hhciBjaGFsbGVuZ2VbMTZdOworICAgIHNldENoYWxsZW5nZU51bWJlcigm
Y2hhbGxlbmdlWzBdLCBudW1iZXIxKTsKKyAgICBzZXRDaGFsbGVuZ2VOdW1iZXIoJmNoYWxsZW5n
ZVs0XSwgbnVtYmVyMik7CisgICAgbWVtY3B5KCZjaGFsbGVuZ2VbOF0sIGtleTMsIDgpOworICAg
IE1ENSBtZDU7CisgICAgbWQ1LmFkZEJ5dGVzKGNoYWxsZW5nZSwgc2l6ZW9mKGNoYWxsZW5nZSkp
OworICAgIFZlY3Rvcjx1aW50OF90LCAxNj4gZGlnZXN0OworICAgIG1kNS5jaGVja3N1bShkaWdl
c3QpOworICAgIG1lbWNweShleHBlY3RlZENoYWxsZW5nZSwgZGlnZXN0LmRhdGEoKSwgMTYpOwor
fQorCitzdGF0aWMgcXVpbnQzMiBnZXRDaGFsbGVuZ2VOdW1iZXJGcm9tRmllbGQoUVN0cmluZyBm
aWVsZCkKK3sKKyAgICBRU3RyaW5nIG5TdHJpbmc7CisgICAgaW50IG5TcGFjZXMgPSAwOworICAg
IGZvciAoaW50IGkgPSAwOyBpIDwgZmllbGQuc2l6ZSgpOyBpKyspIHsKKyAgICAgICAgUUNoYXIg
YyA9IGZpZWxkW2ldOworICAgICAgICBpZiAoYyA9PSAoUUNoYXIpJyAnKSB7CisgICAgICAgICAg
ICBuU3BhY2VzKys7CisgICAgICAgIH0gZWxzZSBpZiAoKGMgPj0gKFFDaGFyKScwJykgJiYgKGMg
PD0gKFFDaGFyKSc5JykpIHsKKyAgICAgICAgICAgIG5TdHJpbmcuYXBwZW5kKChRQ2hhciljKTsK
KyAgICAgICAgfQorICAgIH0KKyAgICBxdWludDMyIG51bSA9IG5TdHJpbmcudG9Mb25nKCk7Cisg
ICAgcXVpbnQzMiByZXN1bHQgPSAoblNwYWNlcyA/IChudW0gLyBuU3BhY2VzKSA6IG51bSk7Cisg
ICAgcmV0dXJuIHJlc3VsdDsKK30KKworc3RhdGljIFdlYkRlYnVnU2VydmVyUXQqIHNTZXJ2ZXI7
CisKK1dlYkRlYnVnU2VydmVyUXQqIFdlYkRlYnVnU2VydmVyUXQ6OnNlcnZlcigpCit7CisgICAg
aWYgKCFzU2VydmVyKQorICAgICAgICBzU2VydmVyID0gbmV3IFdlYkRlYnVnU2VydmVyUXQoKTsK
KworICAgIHJldHVybiBzU2VydmVyOworfQorCitXZWJEZWJ1Z1NlcnZlclF0OjpXZWJEZWJ1Z1Nl
cnZlclF0KCkKKyAgICA6IFFPYmplY3QoKQorICAgICwgbVRjcFNlcnZlcigwKQorICAgICwgbVBh
Z2VOdW1iZXIoMSkKK3sKK30KKworV2ViRGVidWdTZXJ2ZXJRdDo6fldlYkRlYnVnU2VydmVyUXQo
KQoreworICAgIGNsb3NlKCk7Cit9CisKK3ZvaWQgV2ViRGVidWdTZXJ2ZXJRdDo6bGlzdGVuKHF1
aW50MTYgcG9ydCkKK3sKKyAgICBpZiAobVRjcFNlcnZlcikKKyAgICAgICAgcmV0dXJuOworCisg
ICAgbVRjcFNlcnZlciA9IG5ldyBRVGNwU2VydmVyKCk7CisgICAgbVRjcFNlcnZlci0+bGlzdGVu
KFFIb3N0QWRkcmVzczo6QW55LCBwb3J0KTsKKyAgICBjb25uZWN0KG1UY3BTZXJ2ZXIsIFNJR05B
TChuZXdDb25uZWN0aW9uKCkpLCBTTE9UKGdvdE5ld0Nvbm5lY3Rpb24oKSkpOworfQorCit2b2lk
IFdlYkRlYnVnU2VydmVyUXQ6OmNsb3NlKCkKK3sKKyAgICBpZiAobVRjcFNlcnZlcikgeworICAg
ICAgICBtVGNwU2VydmVyLT5jbG9zZSgpOworICAgICAgICBtVGNwU2VydmVyLT5zZXRQYXJlbnQo
MCk7CisgICAgfQorICAgIG1UY3BTZXJ2ZXIgPSAwOworfQorCitJbnNwZWN0b3JDbGllbnRRdCog
V2ViRGVidWdTZXJ2ZXJRdDo6aW5zcGVjdG9yQ2xpZW50KGludCBwYWdlTnVtKQoreworICAgIFFX
ZWJQYWdlKiBwYWdlID0gbVBhZ2VzLnZhbHVlKHBhZ2VOdW0pOworICAgIEluc3BlY3RvckNsaWVu
dFF0KiBjbGllbnQgPSBtSW5zcGVjdG9yQ2xpZW50cy52YWx1ZShwYWdlLCAwKTsKKyAgICByZXR1
cm4gY2xpZW50OworfQorCit2b2lkIFdlYkRlYnVnU2VydmVyUXQ6OnJlZ2lzdGVyUGFnZShRV2Vi
UGFnZSogcGFnZSwgSW5zcGVjdG9yQ2xpZW50UXQqIGNsaWVudCkKK3sKKyAgICBpZiAoIW1QYWdl
cy5rZXkocGFnZSkpCisgICAgICAgIG1QYWdlcy5pbnNlcnQobVBhZ2VOdW1iZXIrKywgcGFnZSk7
CisgICAgbUluc3BlY3RvckNsaWVudHMuaW5zZXJ0KHBhZ2UsIGNsaWVudCk7Cit9CisKK3ZvaWQg
V2ViRGVidWdTZXJ2ZXJRdDo6dW5yZWdpc3RlclBhZ2UoUVdlYlBhZ2UqIHBhZ2UpCit7CisgICAg
aW50IHBhZ2VOdW0gPSBtUGFnZXMua2V5KHBhZ2UpOworICAgIG1QYWdlcy5yZW1vdmUocGFnZU51
bSk7CisgICAgbUluc3BlY3RvckNsaWVudHMucmVtb3ZlKHBhZ2UpOworfQorCit2b2lkIFdlYkRl
YnVnU2VydmVyUXQ6OmdvdE5ld0Nvbm5lY3Rpb24oKQoreworICAgIFFUY3BTb2NrZXQqIG1UY3BD
b25uZWN0aW9uID0gbVRjcFNlcnZlci0+bmV4dFBlbmRpbmdDb25uZWN0aW9uKCk7CisgICAgSHR0
cFJlcXVlc3RIYW5kbGVyKiBoYW5kbGVyID0KKyAgICAgICAgbmV3IEh0dHBSZXF1ZXN0SGFuZGxl
cihtVGNwQ29ubmVjdGlvbiwgdGhpcyk7CisgICAgaGFuZGxlci0+c2V0UGFyZW50KHRoaXMpOwor
fQorCitIdHRwUmVxdWVzdEhhbmRsZXI6Okh0dHBSZXF1ZXN0SGFuZGxlcihRVGNwU29ja2V0KiB0
Y3BDb25uZWN0aW9uLCBXZWJEZWJ1Z1NlcnZlclF0KiBzZXJ2ZXIpCisgICAgOiBRT2JqZWN0KHNl
cnZlcikKKyAgICAsIG1UY3BDb25uZWN0aW9uKHRjcENvbm5lY3Rpb24pCisgICAgLCBtU2VydmVy
KHNlcnZlcikKKyAgICAsIG1Jc1dlYlNvY2tldChmYWxzZSkKKyAgICAsIG1JbnNwZWN0b3JDbGll
bnQoMCkKK3sKKyAgICBtRW5kT2ZIZWFkZXJzID0gZmFsc2U7ICAgIAorICAgIG1Db250ZW50TGVu
Z3RoID0gMDsKKworICAgIGNvbm5lY3QobVRjcENvbm5lY3Rpb24sIFNJR05BTChyZWFkeVJlYWQo
KSksIFNMT1QodGNwUmVhZHlSZWFkKCkpKTsKKyAgICBjb25uZWN0KG1UY3BDb25uZWN0aW9uLCBT
SUdOQUwoZGlzY29ubmVjdGVkKCkpLCBTTE9UKHRjcENvbm5lY3Rpb25EaXNjb25uZWN0ZWQoKSkp
OworfQorCitIdHRwUmVxdWVzdEhhbmRsZXI6On5IdHRwUmVxdWVzdEhhbmRsZXIoKQoreworfQor
Cit2b2lkIEh0dHBSZXF1ZXN0SGFuZGxlcjo6dGNwUmVhZHlSZWFkKCkKK3sKKyAgICBRSHR0cFJl
cXVlc3RIZWFkZXIgaGVhZGVyOworICAgIGlmICghbVRjcENvbm5lY3Rpb24pCisgICAgICAgIHJl
dHVybjsKKworICAgIGlmICghbUVuZE9mSGVhZGVycykgeworICAgICAgICB3aGlsZSAobVRjcENv
bm5lY3Rpb24tPmJ5dGVzQXZhaWxhYmxlKCkgJiYgIW1FbmRPZkhlYWRlcnMpIHsKKyAgICAgICAg
ICAgIFFCeXRlQXJyYXkgbGluZSA9IG1UY3BDb25uZWN0aW9uLT5yZWFkTGluZSgpOworICAgICAg
ICAgICAgbURhdGEuYXBwZW5kKGxpbmUpOworICAgICAgICAgICAgaWYgKGxpbmUgPT0gIlxyXG4i
KQorICAgICAgICAgICAgICAgIG1FbmRPZkhlYWRlcnMgPSB0cnVlOworICAgICAgICB9CisgICAg
ICAgIGlmIChtRW5kT2ZIZWFkZXJzKSB7CisgICAgICAgICAgICBoZWFkZXIgPSBRSHR0cFJlcXVl
c3RIZWFkZXIoUVN0cmluZzo6ZnJvbUxhdGluMShtRGF0YSkpOworICAgICAgICAgICAgaWYgKGhl
YWRlci5pc1ZhbGlkKCkpIHsKKworICAgICAgICAgICAgICAgIG1NZXRob2QgPSBoZWFkZXIubWV0
aG9kKCk7CisgICAgICAgICAgICAgICAgbVBhdGggPSBoZWFkZXIucGF0aCgpOworICAgICAgICAg
ICAgICAgIG1Db250ZW50VHlwZSA9IGhlYWRlci5jb250ZW50VHlwZSgpLnRvTGF0aW4xKCk7Cisg
ICAgICAgICAgICAgICAgbUNvbnRlbnRMZW5ndGggPSBoZWFkZXIuY29udGVudExlbmd0aCgpOwor
ICAgICAgICAgICAgICAgIGlmIChoZWFkZXIuaGFzS2V5KCJVcGdyYWRlIikgJiYgKGhlYWRlci52
YWx1ZSgiVXBncmFkZSIpID09IFFMYXRpbjFTdHJpbmcoIldlYlNvY2tldCIpKSkKKyAgICAgICAg
ICAgICAgICAgICAgbUlzV2ViU29ja2V0ID0gdHJ1ZTsKKworICAgICAgICAgICAgICAgIG1EYXRh
LmNsZWFyKCk7CisgICAgICAgICAgICB9IGVsc2UgeworICAgICAgICAgICAgICAgIHFEZWJ1Zygp
IDw8ICJDb3VsZCBub3QgcGFyc2UgSFRUUCBoZWFkZXI6IiA8PCBtRGF0YTsKKyAgICAgICAgICAg
IH0KKyAgICAgICAgfQorICAgIH0KKyAgICBpZiAoZmFsc2UpCisgICAgICAgIHFEZWJ1ZygpIDw8
ICJ0Y3BSZWFkeVJlYWQiIAorICAgICAgICAgICAgICAgICA8PCAibU1ldGhvZCIgPDwgbU1ldGhv
ZAorICAgICAgICAgICAgICAgICA8PCAibVBhdGgiIDw8IG1QYXRoCisgICAgICAgICAgICAgICAg
IDw8ICJtSXNXZWJTb2NrZXQiIDw8IG1Jc1dlYlNvY2tldAorICAgICAgICAgICAgICAgICA8PCAi
bUNvbnRlbnRUeXBlIiA8PCBtQ29udGVudFR5cGUKKyAgICAgICAgICAgICAgICAgPDwgIm1Db250
ZW50TGVuZ3RoIiA8PCBtQ29udGVudExlbmd0aAorICAgICAgICAgICAgICAgICA8PCAiYnl0ZXNB
dmFpbGFibGUiIDw8IG1UY3BDb25uZWN0aW9uLT5ieXRlc0F2YWlsYWJsZSgpOworICAgICAgICAg
IAorCisgICAgaWYgKG1FbmRPZkhlYWRlcnMpIHsKKworICAgICAgICBRU3RyaW5nTGlzdCBwYXRo
QW5kUXVlcnkgPSBtUGF0aC5zcGxpdCgiPyIpOworICAgICAgICBtUGF0aCA9IHBhdGhBbmRRdWVy
eVswXTsKKyAgICAgICAgaWYgKHBhdGhBbmRRdWVyeS5zaXplKCkgPiAxKQorICAgICAgICAgICAg
bVF1ZXJ5ID0gcGF0aEFuZFF1ZXJ5WzFdOworICAgICAgICBRU3RyaW5nTGlzdCB3b3JkcyA9IG1Q
YXRoLnNwbGl0KFFTdHJpbmc6OmZyb21MYXRpbjEoIi8iKSk7CisKKyAgICAgICAgaWYgKG1Jc1dl
YlNvY2tldCkgeworICAgICAgICAgICAgLy8gc3dpdGNoIHRvIHdlYnNvY2tldC1zdHlsZSBXZWJT
b2NrZXRTZXJ2aWNlIG1lc3NhZ2luZworICAgICAgICAgICAgaWYgKG1UY3BDb25uZWN0aW9uKSB7
CisgICAgICAgICAgICAgICAgbVRjcENvbm5lY3Rpb24tPmRpc2Nvbm5lY3QoU0lHTkFMKHJlYWR5
UmVhZCgpKSk7CisgICAgICAgICAgICAgICAgY29ubmVjdChtVGNwQ29ubmVjdGlvbiwgU0lHTkFM
KHJlYWR5UmVhZCgpKSwgU0xPVCh3ZWJTb2NrZXRSZWFkeVJlYWQoKSkpOworCisgICAgICAgICAg
ICAgICAgUUJ5dGVBcnJheSBrZXkzID0gbVRjcENvbm5lY3Rpb24tPnJlYWQoOCk7CisKKyAgICAg
ICAgICAgICAgICBxdWludDMyIG51bWJlcjEgPSBnZXRDaGFsbGVuZ2VOdW1iZXJGcm9tRmllbGQo
aGVhZGVyLnZhbHVlKCJTZWMtV2ViU29ja2V0LUtleTEiKSk7CisgICAgICAgICAgICAgICAgcXVp
bnQzMiBudW1iZXIyID0gZ2V0Q2hhbGxlbmdlTnVtYmVyRnJvbUZpZWxkKGhlYWRlci52YWx1ZSgi
U2VjLVdlYlNvY2tldC1LZXkyIikpOworICAgICAgICAgICAgICAgIAorICAgICAgICAgICAgICAg
IGNoYXIgcmVzcG9uc2VEYXRhWzE2XTsKKyAgICAgICAgICAgICAgICBnZW5lcmF0ZUV4cGVjdGVk
Q2hhbGxlbmdlUmVzcG9uc2UobnVtYmVyMSwgbnVtYmVyMiwgKHVuc2lnbmVkIGNoYXIqKWtleTMu
ZGF0YSgpLCAodW5zaWduZWQgY2hhciopcmVzcG9uc2VEYXRhKTsKKyAgICAgICAgICAgICAgICBR
Qnl0ZUFycmF5IHJlc3BvbnNlKHJlc3BvbnNlRGF0YSwgc2l6ZW9mKHJlc3BvbnNlRGF0YSkpOwor
CisgICAgICAgICAgICAgICAgUUh0dHBSZXNwb25zZUhlYWRlciByZXNwb25zZUhlYWRlcigxMDEs
ICJXZWJTb2NrZXQgUHJvdG9jb2wgSGFuZHNoYWtlIiwgMSwgMSk7CisgICAgICAgICAgICAgICAg
cmVzcG9uc2VIZWFkZXIuc2V0VmFsdWUoIlVwZ3JhZGUiLCBoZWFkZXIudmFsdWUoIlVwZ3JhZGUi
KSk7CisgICAgICAgICAgICAgICAgcmVzcG9uc2VIZWFkZXIuc2V0VmFsdWUoIkNvbm5lY3Rpb24i
LCBoZWFkZXIudmFsdWUoIkNvbm5lY3Rpb24iKSk7CisgICAgICAgICAgICAgICAgcmVzcG9uc2VI
ZWFkZXIuc2V0VmFsdWUoIlNlYy1XZWJTb2NrZXQtT3JpZ2luIiwgaGVhZGVyLnZhbHVlKCJPcmln
aW4iKSk7CisgICAgICAgICAgICAgICAgcmVzcG9uc2VIZWFkZXIuc2V0VmFsdWUoIlNlYy1XZWJT
b2NrZXQtTG9jYXRpb24iLCAoIndzOi8vIiArIGhlYWRlci52YWx1ZSgiSG9zdCIpICsgbVBhdGgp
KTsKKyAgICAgICAgICAgICAgICByZXNwb25zZUhlYWRlci5zZXRDb250ZW50TGVuZ3RoKHJlc3Bv
bnNlLnNpemUoKSk7CisgICAgICAgICAgICAgICAgbVRjcENvbm5lY3Rpb24tPndyaXRlKHJlc3Bv
bnNlSGVhZGVyLnRvU3RyaW5nKCkudG9MYXRpbjEoKSk7CisgICAgICAgICAgICAgICAgbVRjcENv
bm5lY3Rpb24tPndyaXRlKHJlc3BvbnNlKTsKKyAgICAgICAgICAgICAgICBtVGNwQ29ubmVjdGlv
bi0+Zmx1c2goKTsKKworICAgICAgICAgICAgICAgIGlmICgod29yZHMuc2l6ZSgpID09IDQpCisg
ICAgICAgICAgICAgICAgICAgICYmICh3b3Jkc1sxXSA9PSBRU3RyaW5nOjpmcm9tTGF0aW4xKCJk
ZXZ0b29scyIpKQorICAgICAgICAgICAgICAgICAgICAmJiAod29yZHNbMl0gPT0gUVN0cmluZzo6
ZnJvbUxhdGluMSgicGFnZSIpKSkgeworICAgICAgICAgICAgICAgICAgICBpbnQgcGFnZU51bSA9
IHdvcmRzWzNdLnRvSW50KCk7CisKKyAgICAgICAgICAgICAgICAgICAgbUluc3BlY3RvckNsaWVu
dCA9IG1TZXJ2ZXItPmluc3BlY3RvckNsaWVudChwYWdlTnVtKTsKKyAgICAgICAgICAgICAgICAg
ICAgaWYgKG1JbnNwZWN0b3JDbGllbnQpCisgICAgICAgICAgICAgICAgICAgICAgICBtSW5zcGVj
dG9yQ2xpZW50LT5zZXRSZW1vdGVGcm9udGVuZChuZXcgUmVtb3RlRnJvbnRlbmRDaGFubmVsKHRo
aXMpKTsKKyAgICAgICAgICAgICAgICB9CisKKyAgICAgICAgICAgIH0KKworICAgICAgICAgICAg
cmV0dXJuOworICAgICAgICB9CisgICAgICAgIGlmIChtQ29udGVudExlbmd0aCAmJiAobVRjcENv
bm5lY3Rpb24tPmJ5dGVzQXZhaWxhYmxlKCkgPCBtQ29udGVudExlbmd0aCkpIHsKKyAgICAgICAg
ICAgIGlmIChmYWxzZSkKKyAgICAgICAgICAgICAgICBxRGVidWcoKSA8PCAic2hvcnQgY29udGVu
dCwgd2FpdGluZyBmb3IgbW9yZSBkYXRhIC4uLiIKKyAgICAgICAgICAgICAgICAgICAgICAgICA8
PCAibU1ldGhvZCIgPDwgbU1ldGhvZAorICAgICAgICAgICAgICAgICAgICAgICAgIDw8ICJtUGF0
aCIgPDwgbVBhdGgKKyAgICAgICAgICAgICAgICAgICAgICAgICA8PCAibUNvbnRlbnRUeXBlIiA8
PCBtQ29udGVudFR5cGUKKyAgICAgICAgICAgICAgICAgICAgICAgICA8PCAibUNvbnRlbnRMZW5n
dGgiIDw8IG1Db250ZW50TGVuZ3RoCisgICAgICAgICAgICAgICAgICAgICAgICAgPDwgImJ5dGVz
QXZhaWxhYmxlIiA8PCBtVGNwQ29ubmVjdGlvbi0+Ynl0ZXNBdmFpbGFibGUoKTsKKyAgICAgICAg
ICAgIHJldHVybjsKKyAgICAgICAgfQorCisgICAgICAgIFFCeXRlQXJyYXkgY29udGVudCA9IG1U
Y3BDb25uZWN0aW9uLT5yZWFkKG1Db250ZW50TGVuZ3RoKTsKKyAgICAgICAgbUVuZE9mSGVhZGVy
cyA9IGZhbHNlOworCisgICAgICAgIFFTdHJpbmcgcGF0aCA9IFFMYXRpbjFTdHJpbmcoIjoiKSAr
IG1QYXRoOworICAgICAgICBRRmlsZSBmaWxlKHBhdGgpOworICAgICAgICBpbnQgcmMgPSBmaWxl
Lm9wZW4oUUlPRGV2aWNlOjpSZWFkT25seSk7CisgICAgICAgIFFCeXRlQXJyYXkgcmVzcG9uc2U7
CisgICAgICAgIGlmIChyYykgCisgICAgICAgICAgICByZXNwb25zZSA9IGZpbGUucmVhZEFsbCgp
OworCisgICAgICAgIGludCBjb2RlID0gZmlsZS5leGlzdHMoKSA/IDIwMCA6IDQwNDsKKyAgICAg
ICAgUVN0cmluZyB0ZXh0ID0gIChjb2RlID09IDIwMCkgPyBRU3RyaW5nOjpmcm9tTGF0aW4xKCJP
SyIpIDogUVN0cmluZzo6ZnJvbUxhdGluMSgiTm90IE9LIik7CisgICAgICAgIFFIdHRwUmVzcG9u
c2VIZWFkZXIgcmVzcG9uc2VIZWFkZXIoY29kZSwgdGV4dCwgMSwgMCk7CisgICAgICAgIHJlc3Bv
bnNlSGVhZGVyLnNldFZhbHVlcyhtUmVzcG9uc2VIZWFkZXJzKTsKKyAgICAgICAgcmVzcG9uc2VI
ZWFkZXIuc2V0Q29udGVudExlbmd0aChyZXNwb25zZS5zaXplKCkpOworICAgICAgICBpZiAoIW1D
b250ZW50VHlwZS5pc0VtcHR5KCkpCisgICAgICAgICAgICByZXNwb25zZUhlYWRlci5zZXRDb250
ZW50VHlwZShRU3RyaW5nOjpmcm9tTGF0aW4xKG1Db250ZW50VHlwZSkpOworCisgICAgICAgIFFC
eXRlQXJyYXkgYXNjaWlIZWFkZXIgPSByZXNwb25zZUhlYWRlci50b1N0cmluZygpLnRvQXNjaWko
KTsKKyAgICAgICAgbVRjcENvbm5lY3Rpb24tPndyaXRlKGFzY2lpSGVhZGVyKTsKKworICAgICAg
ICBtVGNwQ29ubmVjdGlvbi0+d3JpdGUocmVzcG9uc2UpOworICAgICAgICBtVGNwQ29ubmVjdGlv
bi0+Zmx1c2goKTsKKyAgICAgICAgbVRjcENvbm5lY3Rpb24tPmNsb3NlKCk7CisKKyAgICAgICAg
cmV0dXJuOworICAgIH0KK30KKwordm9pZCBIdHRwUmVxdWVzdEhhbmRsZXI6OnRjcENvbm5lY3Rp
b25EaXNjb25uZWN0ZWQoKQoreworICAgIGlmIChtVGNwQ29ubmVjdGlvbiAmJiBtVGNwQ29ubmVj
dGlvbi0+Ynl0ZXNBdmFpbGFibGUoKSkgeworICAgICAgICBRQnl0ZUFycmF5IGNvbnRlbnQgPSBt
VGNwQ29ubmVjdGlvbi0+cmVhZChtVGNwQ29ubmVjdGlvbi0+Ynl0ZXNBdmFpbGFibGUoKSk7Cisg
ICAgICAgIHFEZWJ1ZygpIDw8ICJIdHRwUmVxdWVzdEhhbmRsZXI6OnRjcENvbm5lY3Rpb25EaXNj
b25uZWN0ZWQiIDw8ICJ0cmFpbGluZyBjb250ZW50IiA8PCBjb250ZW50OworICAgIH0KKyAgICBt
VGNwQ29ubmVjdGlvbiA9IDA7Cit9CisKK2ludCBIdHRwUmVxdWVzdEhhbmRsZXI6OndlYlNvY2tl
dFNlbmQoUUJ5dGVBcnJheSBwYXlsb2FkKQoreworICAgIG1UY3BDb25uZWN0aW9uLT5wdXRDaGFy
KDB4MDApOworICAgIGludCBuQnl0ZXMgPSBtVGNwQ29ubmVjdGlvbi0+d3JpdGUocGF5bG9hZCk7
CisgICAgbVRjcENvbm5lY3Rpb24tPnB1dENoYXIoMHhGRik7CisgICAgbVRjcENvbm5lY3Rpb24t
PmZsdXNoKCk7CisgICAgcmV0dXJuIG5CeXRlczsKK30KKworaW50IEh0dHBSZXF1ZXN0SGFuZGxl
cjo6d2ViU29ja2V0U2VuZChjb25zdCBjaGFyKiBkYXRhLCBzaXplX3QgbGVuKQoreworICAgIG1U
Y3BDb25uZWN0aW9uLT5wdXRDaGFyKDB4MDApOworICAgIGludCBuQnl0ZXMgPSBtVGNwQ29ubmVj
dGlvbi0+d3JpdGUoZGF0YSwgbGVuKTsKKyAgICBtVGNwQ29ubmVjdGlvbi0+cHV0Q2hhcigweEZG
KTsKKyAgICBtVGNwQ29ubmVjdGlvbi0+Zmx1c2goKTsKKyAgICByZXR1cm4gbkJ5dGVzOworfQor
Cit2b2lkIEh0dHBSZXF1ZXN0SGFuZGxlcjo6d2ViU29ja2V0UmVhZHlSZWFkKCkKK3sKKyAgICBp
ZiAoIW1UY3BDb25uZWN0aW9uLT5ieXRlc0F2YWlsYWJsZSgpKQorICAgICAgICByZXR1cm47Cisg
ICAgUUJ5dGVBcnJheSBjb250ZW50ID0gbVRjcENvbm5lY3Rpb24tPnJlYWQobVRjcENvbm5lY3Rp
b24tPmJ5dGVzQXZhaWxhYmxlKCkpOworICAgIG1EYXRhLmFwcGVuZChjb250ZW50KTsKKyAgICBp
ZiAoMCkgeworICAgICAgICBxRGVidWcoKSA8PCAid2ViU29ja2V0UmVhZHlSZWFkIiA8PCAiY29u
dGVudC5zaXplKCkiIDw8IGNvbnRlbnQuc2l6ZSgpIAorICAgICAgICAgICAgICAgICA8PCAibURh
dGEuc2l6ZSgpIiA8PCBtRGF0YS5zaXplKCk7CisgICAgICAgIHFEZWJ1ZygpIDw8IG1EYXRhOwor
ICAgICAgICBxRGVidWcoKSA8PCBlbmRsOworICAgIH0KKyAgICB3aGlsZSAobURhdGEuc2l6ZSgp
ID4gMCkgeworCisgICAgICAgIGlmIChtRGF0YVswXSkgeworICAgICAgICAgICAgcUNyaXRpY2Fs
KCkgPDwgICJ3ZWJTb2NrZXRSZWFkeVJlYWQ6IHVua25vd24gZnJhbWUgdHlwZSIgPDwgbURhdGFb
MF07CisgICAgICAgICAgICBtRGF0YS5jbGVhcigpOworICAgICAgICAgICAgbVRjcENvbm5lY3Rp
b24tPmNsb3NlKCk7CisgICAgICAgICAgICByZXR1cm47CisgICAgICAgIH0KKyAgICAgICAgaW50
IHBvcyA9IG1EYXRhLmluZGV4T2YoMHhmZiwgMSk7CisgICAgICAgIGlmIChwb3MgPCAwKQorICAg
ICAgICAgICAgcmV0dXJuOworCisgICAgICAgIHNpemVfdCBsZW4gPSBwb3MgLSAxOworCisgICAg
ICAgIFFCeXRlQXJyYXkgcGF5bG9hZCA9IG1EYXRhLm1pZCgxLCBsZW4pOworCisgICAgICAgIGlm
IChtSW5zcGVjdG9yQ2xpZW50KQorICAgICAgICAgICAgbUluc3BlY3RvckNsaWVudC0+ZGlzcGF0
Y2goUVN0cmluZzo6ZnJvbVV0ZjgocGF5bG9hZCkpOworCisgICAgICAgIG1EYXRhID0gbURhdGEu
bWlkKGxlbisyKTsKKyAgICB9CisKK30KKworUmVtb3RlRnJvbnRlbmRDaGFubmVsOjpSZW1vdGVG
cm9udGVuZENoYW5uZWwoSHR0cFJlcXVlc3RIYW5kbGVyKiByZXF1ZXN0SGFuZGxlcikKKyAgICA6
IFFPYmplY3QocmVxdWVzdEhhbmRsZXIpCisgICAgLCBtX3JlcXVlc3RIYW5kbGVyKHJlcXVlc3RI
YW5kbGVyKQoreworfQorCitib29sIFJlbW90ZUZyb250ZW5kQ2hhbm5lbDo6c2VuZE1lc3NhZ2VU
b0Zyb250ZW5kKGNvbnN0IFN0cmluZyAmbWVzc2FnZSkKK3sKKyAgICBpZiAoZGVidWcpCisgICAg
ICAgIHFEZWJ1ZygpIDw8ICJSZW1vdGVGcm9udGVuZENoYW5uZWw6OnNlbmRNZXNzYWdlVG9Gcm9u
dGVuZCIgPDwgbWVzc2FnZTsKKyAgICBpZiAoIW1fcmVxdWVzdEhhbmRsZXIpCisgICAgICAgIHJl
dHVybiBmYWxzZTsKKyAgICBDU3RyaW5nIGNzdHIgPSBtZXNzYWdlLnV0ZjgoKTsKKyAgICByZXR1
cm4gbV9yZXF1ZXN0SGFuZGxlci0+d2ViU29ja2V0U2VuZChjc3RyLmRhdGEoKSwgY3N0ci5sZW5n
dGgoKSk7Cit9CisKK30KZGlmZiAtLWdpdCBhL1dlYktpdC9xdC9XZWJDb3JlU3VwcG9ydC9XZWJE
ZWJ1Z1NlcnZlclF0LmggYi9XZWJLaXQvcXQvV2ViQ29yZVN1cHBvcnQvV2ViRGVidWdTZXJ2ZXJR
dC5oCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmY3YmU1YjIKLS0tIC9kZXYv
bnVsbAorKysgYi9XZWJLaXQvcXQvV2ViQ29yZVN1cHBvcnQvV2ViRGVidWdTZXJ2ZXJRdC5oCkBA
IC0wLDAgKzEsMTE1IEBACisvKgorICAgIENvcHlyaWdodCAoQykgMjAxMCBOb2tpYSBDb3Jwb3Jh
dGlvbiBhbmQvb3IgaXRzIHN1YnNpZGlhcnkoLWllcykKKworICAgIFRoaXMgbGlicmFyeSBpcyBm
cmVlIHNvZnR3YXJlOyB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IKKyAgICBtb2RpZnkg
aXQgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUgTGlicmFyeSBHZW5lcmFsIFB1YmxpYworICAg
IExpY2Vuc2UgYXMgcHVibGlzaGVkIGJ5IHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb247IGVp
dGhlcgorICAgIHZlcnNpb24gMiBvZiB0aGUgTGljZW5zZSwgb3IgKGF0IHlvdXIgb3B0aW9uKSBh
bnkgbGF0ZXIgdmVyc2lvbi4KKworICAgIFRoaXMgbGlicmFyeSBpcyBkaXN0cmlidXRlZCBpbiB0
aGUgaG9wZSB0aGF0IGl0IHdpbGwgYmUgdXNlZnVsLAorICAgIGJ1dCBXSVRIT1VUIEFOWSBXQVJS
QU5UWTsgd2l0aG91dCBldmVuIHRoZSBpbXBsaWVkIHdhcnJhbnR5IG9mCisgICAgTUVSQ0hBTlRB
QklMSVRZIG9yIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFLiAgU2VlIHRoZSBHTlUK
KyAgICBMaWJyYXJ5IEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KKwor
ICAgIFlvdSBzaG91bGQgaGF2ZSByZWNlaXZlZCBhIGNvcHkgb2YgdGhlIEdOVSBMaWJyYXJ5IEdl
bmVyYWwgUHVibGljIExpY2Vuc2UKKyAgICBhbG9uZyB3aXRoIHRoaXMgbGlicmFyeTsgc2VlIHRo
ZSBmaWxlIENPUFlJTkcuTElCLiAgSWYgbm90LCB3cml0ZSB0bworICAgIHRoZSBGcmVlIFNvZnR3
YXJlIEZvdW5kYXRpb24sIEluYy4sIDUxIEZyYW5rbGluIFN0cmVldCwgRmlmdGggRmxvb3IsCisg
ICAgQm9zdG9uLCBNQSAwMjExMC0xMzAxLCBVU0EuCisqLworCisjaWZuZGVmIFdlYkRlYnVnU2Vy
dmVyUXRfaAorI2RlZmluZSBXZWJEZWJ1Z1NlcnZlclF0X2gKKworY2xhc3MgUVRjcFNlcnZlcjsK
K2NsYXNzIFFUY3BTb2NrZXQ7CisjaW5jbHVkZSA8UUxpc3Q+CisjaW5jbHVkZSA8UU1hcD4KKyNp
bmNsdWRlIDxRT2JqZWN0PgorI2luY2x1ZGUgPFFQYWlyPgorI2luY2x1ZGUgPFFTdHJpbmc+Cisj
aW5jbHVkZSA8d3RmL0ZvcndhcmQuaD4KKworY2xhc3MgUVdlYlBhZ2U7CisKK25hbWVzcGFjZSBX
ZWJDb3JlIHsKK2NsYXNzIEh0dHBSZXF1ZXN0SGFuZGxlcjsKK2NsYXNzIEluc3BlY3RvckNsaWVu
dFF0OworCitjbGFzcyBXZWJEZWJ1Z1NlcnZlclF0IDogcHVibGljIFFPYmplY3QgeworICAgIFFf
T0JKRUNUCisgICAgICAgIHB1YmxpYzoKKworICAgIHN0YXRpYyBXZWJEZWJ1Z1NlcnZlclF0KiBz
ZXJ2ZXIoKTsKKworICAgIHZvaWQgbGlzdGVuKHF1aW50MTYgcG9ydCk7CisKKyAgICB2b2lkIHJl
Z2lzdGVyUGFnZShRV2ViUGFnZSAqcGFnZSwgSW5zcGVjdG9yQ2xpZW50UXQqIGNsaWVudCk7Cisg
ICAgdm9pZCB1bnJlZ2lzdGVyUGFnZShRV2ViUGFnZSAqcGFnZSk7CisKKyAgICB2b2lkIGNsb3Nl
KCk7CisgICAgSW5zcGVjdG9yQ2xpZW50UXQqIGluc3BlY3RvckNsaWVudChpbnQgcGFnZU51bSk7
CisKK3Byb3RlY3RlZDoKKyAgICBXZWJEZWJ1Z1NlcnZlclF0KCk7CisgICAgdmlydHVhbCB+V2Vi
RGVidWdTZXJ2ZXJRdCgpOworCitwcml2YXRlOgorICAgIFFUY3BTZXJ2ZXIqIG1UY3BTZXJ2ZXI7
CisgICAgUU1hcDxpbnQsIFFXZWJQYWdlKj4gbVBhZ2VzOworICAgIFFNYXA8UVdlYlBhZ2UqLCBJ
bnNwZWN0b3JDbGllbnRRdCo+IG1JbnNwZWN0b3JDbGllbnRzOworICAgIGludCBtUGFnZU51bWJl
cjsKKworICAgIHByaXZhdGUgc2xvdHM6CisgICAgdm9pZCBnb3ROZXdDb25uZWN0aW9uKCk7CisK
K307CisKK2NsYXNzIFJlbW90ZUZyb250ZW5kQ2hhbm5lbCA6IHB1YmxpYyBRT2JqZWN0IHsKKyAg
ICBRX09CSkVDVAorICAgICAgICBwdWJsaWM6CisKKyAgICBSZW1vdGVGcm9udGVuZENoYW5uZWwo
SHR0cFJlcXVlc3RIYW5kbGVyKiByZXF1ZXN0SGFuZGxlcik7CisgICAgYm9vbCBzZW5kTWVzc2Fn
ZVRvRnJvbnRlbmQoY29uc3QgU3RyaW5nJiBtZXNzYWdlKTsKKworcHJpdmF0ZToKKyAgICBIdHRw
UmVxdWVzdEhhbmRsZXIqIG1fcmVxdWVzdEhhbmRsZXI7Cit9OworCitjbGFzcyBIdHRwUmVxdWVz
dEhhbmRsZXIgOiBwdWJsaWMgUU9iamVjdCB7CisgICAgUV9PQkpFQ1QKKworICAgICAgICBwdWJs
aWM6CisKKyAgICBIdHRwUmVxdWVzdEhhbmRsZXIoUVRjcFNvY2tldCAqdGNwQ29ubmVjdGlvbiwg
V2ViRGVidWdTZXJ2ZXJRdCAqc2VydmVyKTsKKyAgICB2aXJ0dWFsIH5IdHRwUmVxdWVzdEhhbmRs
ZXIoKTsKKyAgICB2aXJ0dWFsIGludCB3ZWJTb2NrZXRTZW5kKFFCeXRlQXJyYXkgcGF5bG9hZCk7
CisgICAgdmlydHVhbCBpbnQgd2ViU29ja2V0U2VuZChjb25zdCBjaGFyICpwYXlsb2FkLCBzaXpl
X3QgbGVuKTsKKworcHJpdmF0ZToKKyAgICBRVGNwU29ja2V0KiBtVGNwQ29ubmVjdGlvbjsKKyAg
ICBXZWJEZWJ1Z1NlcnZlclF0KiBtU2VydmVyOworCisgICAgUVN0cmluZyBtTWV0aG9kOworICAg
IFFTdHJpbmcgbVBhdGg7CisgICAgUVN0cmluZyBtUXVlcnk7CisgICAgUUJ5dGVBcnJheSBtQ29u
dGVudFR5cGU7CisgICAgaW50IG1Db250ZW50TGVuZ3RoOworICAgIGJvb2wgbUVuZE9mSGVhZGVy
czsKKyAgICBRQnl0ZUFycmF5IG1EYXRhOworICAgIFFMaXN0PFFQYWlyPFFTdHJpbmcsIFFTdHJp
bmc+ID4gbVJlc3BvbnNlSGVhZGVyczsKKyAgICBib29sIG1Jc1dlYlNvY2tldDsKKyAgICBJbnNw
ZWN0b3JDbGllbnRRdCogbUluc3BlY3RvckNsaWVudDsKKworICAgIHZvaWQgaGFuZGxlSW5zcGVj
dG9yUmVxdWVzdChRU3RyaW5nTGlzdCB3b3Jkcyk7CisgICAgdm9pZCBoYW5kbGVGcm9tRnJvbnRl
bmRSZXF1ZXN0KCk7CisgICAgdm9pZCBoYW5kbGVSZXNvdXJjZVJlcXVlc3QoUVN0cmluZ0xpc3Qg
d29yZHMpOworCisgICAgcHJpdmF0ZSBzbG90czoKKyAgICB2b2lkIHRjcFJlYWR5UmVhZCgpOwor
ICAgIHZvaWQgdGNwQ29ubmVjdGlvbkRpc2Nvbm5lY3RlZCgpOworICAgIHZvaWQgd2ViU29ja2V0
UmVhZHlSZWFkKCk7CisKK307CisKK30KKyNlbmRpZgpkaWZmIC0tZ2l0IGEvV2ViS2l0VG9vbHMv
Q2hhbmdlTG9nIGIvV2ViS2l0VG9vbHMvQ2hhbmdlTG9nCmluZGV4IDk2YmRhNjMuLjU0ZGE0YTUg
MTAwNjQ0Ci0tLSBhL1dlYktpdFRvb2xzL0NoYW5nZUxvZworKysgYi9XZWJLaXRUb29scy9DaGFu
Z2VMb2cKQEAgLTEsMyArMSwyNiBAQAorMjAxMC0wOC0xNyAgSmFtZXkgSGlja3MgIDxqYW1leS5o
aWNrc0Bub2tpYS5jb20+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisK
KyAgICAgICAgW1F0XSBSZW1vdGUgV2ViIEluc3BlY3RvciBzdXBwb3J0IGZvciBRdFdlYktpdAor
CisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD00Mzk4OAor
CisgICAgICAgIFJ1bnMgYSB3ZWIgZGVidWcgc2VydmVyIG9uIHBvcnQgc3BlY2lmaWVkIGJ5IFF0
VGVzdEJyb3dzZXIKKyAgICAgICAgYXJndW1lbnQgLXJlbW90ZS1pbnNwZWN0b3ItcG9ydC4gUHJv
cGVydHkgX3Ffd2ViRGVidWdTZXJ2ZXJQb3J0IG9mCisgICAgICAgIHRoZSBRV2ViUGFnZSBpbnN0
YW5jZSB3aWxsIGJlIHNldCBhY2NvcmRpbmcgdG8gdGhlIGFyZ3VtZW50LiBBbGwKKyAgICAgICAg
cGFnZXMgd2l0aCB0aGF0IHByb3BlcnR5IHNldCB3aWxsIGJlIHJlbW90ZWx5IGluc3BlY3RhYmxl
LgorCisgICAgICAgIFVSTCBmb3IgcmVtb3RlIGluc3BlY3Rpb24gb2YgZmlyc3QgUVdlYlBhZ2Ug
aXMKKyAgICAgICAgICAgIGh0dHA6Ly9sb2NhbGhvc3Q6OTIyMi9kZXZ0b29scy9wYWdlLzEKKyAg
ICAgICAgd2hlcmUgMSBpcyB0aGUgbnVtYmVyIG9mIHRoZSBRV2ViUGFnZSBpbnN0YW5jZS4KKyAg
ICAgICAgCisgICAgICAgICogUXRUZXN0QnJvd3Nlci9sYXVuY2hlcndpbmRvdy5jcHA6CisgICAg
ICAgIChMYXVuY2hlcldpbmRvdzo6aW5pdCk6CisgICAgICAgICogUXRUZXN0QnJvd3Nlci9sYXVu
Y2hlcndpbmRvdy5oOgorICAgICAgICAqIFF0VGVzdEJyb3dzZXIvbWFpbi5jcHA6CisgICAgICAg
IChMYXVuY2hlckFwcGxpY2F0aW9uOjpoYW5kbGVVc2VyT3B0aW9ucyk6CisKIDIwMTAtMDgtMTYg
IFNhbSBXZWluaWcgIDxzYW1Ad2Via2l0Lm9yZz4KIAogICAgICAgICBSZXZpZXdlZCBieSBNYXJr
IFJvd2UuCmRpZmYgLS1naXQgYS9XZWJLaXRUb29scy9RdFRlc3RCcm93c2VyL2xhdW5jaGVyd2lu
ZG93LmNwcCBiL1dlYktpdFRvb2xzL1F0VGVzdEJyb3dzZXIvbGF1bmNoZXJ3aW5kb3cuY3BwCmlu
ZGV4IGE2ZjE3ZDEuLjgyNTMzMjYgMTAwNjQ0Ci0tLSBhL1dlYktpdFRvb2xzL1F0VGVzdEJyb3dz
ZXIvbGF1bmNoZXJ3aW5kb3cuY3BwCisrKyBiL1dlYktpdFRvb2xzL1F0VGVzdEJyb3dzZXIvbGF1
bmNoZXJ3aW5kb3cuY3BwCkBAIC05MSw2ICs5MSwxMCBAQCB2b2lkIExhdW5jaGVyV2luZG93Ojpp
bml0KCkKICAgICBtX2luc3BlY3Rvci0+aGlkZSgpOwogICAgIGNvbm5lY3QodGhpcywgU0lHTkFM
KGRlc3Ryb3llZCgpKSwgbV9pbnNwZWN0b3IsIFNMT1QoZGVsZXRlTGF0ZXIoKSkpOwogCisgICAg
aWYgKG1fd2luZG93T3B0aW9ucy5yZW1vdGVJbnNwZWN0b3JQb3J0KQorICAgICAgICBwYWdlKCkt
PnNldFByb3BlcnR5KCJfcV93ZWJEZWJ1Z1NlcnZlclBvcnQiLCA5MjIyKTsKKworCiAgICAgLy8g
dGhlIHpvb20gdmFsdWVzIGFyZSBjaG9zZW4gdG8gYmUgbGlrZSBpbiBNb3ppbGxhIEZpcmVmb3gg
MwogICAgIGlmICghbV96b29tTGV2ZWxzLmNvdW50KCkpIHsKICAgICAgICAgbV96b29tTGV2ZWxz
IDw8IDMwIDw8IDUwIDw8IDY3IDw8IDgwIDw8IDkwOwpkaWZmIC0tZ2l0IGEvV2ViS2l0VG9vbHMv
UXRUZXN0QnJvd3Nlci9sYXVuY2hlcndpbmRvdy5oIGIvV2ViS2l0VG9vbHMvUXRUZXN0QnJvd3Nl
ci9sYXVuY2hlcndpbmRvdy5oCmluZGV4IGY0ZWYxMzkuLmY2ZTBlOGYgMTAwNjQ0Ci0tLSBhL1dl
YktpdFRvb2xzL1F0VGVzdEJyb3dzZXIvbGF1bmNoZXJ3aW5kb3cuaAorKysgYi9XZWJLaXRUb29s
cy9RdFRlc3RCcm93c2VyL2xhdW5jaGVyd2luZG93LmgKQEAgLTExMCw2ICsxMTAsNyBAQCBwdWJs
aWM6CiAgICAgYm9vbCB1c2VRR0xXaWRnZXRWaWV3cG9ydDsKICNlbmRpZgogICAgIFFVcmwgaW5z
cGVjdG9yVXJsOworICAgIHF1aW50MTYgcmVtb3RlSW5zcGVjdG9yUG9ydDsKIH07CiAKIGNsYXNz
IExhdW5jaGVyV2luZG93IDogcHVibGljIE1haW5XaW5kb3cgewpkaWZmIC0tZ2l0IGEvV2ViS2l0
VG9vbHMvUXRUZXN0QnJvd3Nlci9tYWluLmNwcCBiL1dlYktpdFRvb2xzL1F0VGVzdEJyb3dzZXIv
bWFpbi5jcHAKaW5kZXggODQyMjkwYi4uMmY1OWVhYiAxMDA2NDQKLS0tIGEvV2ViS2l0VG9vbHMv
UXRUZXN0QnJvd3Nlci9tYWluLmNwcAorKysgYi9XZWJLaXRUb29scy9RdFRlc3RCcm93c2VyL21h
aW4uY3BwCkBAIC0xNzAsNiArMTcwLDExIEBAIHZvaWQgTGF1bmNoZXJBcHBsaWNhdGlvbjo6aGFu
ZGxlVXNlck9wdGlvbnMoKQogICAgIGlmIChpbnNwZWN0b3JVcmxJbmRleCAhPSAtMSkKICAgICAg
ICB3aW5kb3dPcHRpb25zLmluc3BlY3RvclVybCA9IHRha2VPcHRpb25WYWx1ZSgmYXJncywgaW5z
cGVjdG9yVXJsSW5kZXgpOwogCisgICAgUVN0cmluZyByZW1vdGVJbnNwZWN0b3JQb3J0QXJnKCIt
cmVtb3RlLWluc3BlY3Rvci1wb3J0Iik7CisgICAgaW50IHJlbW90ZUluc3BlY3RvclBvcnRJbmRl
eCA9IGFyZ3MuaW5kZXhPZihyZW1vdGVJbnNwZWN0b3JQb3J0QXJnKTsKKyAgICBpZiAocmVtb3Rl
SW5zcGVjdG9yUG9ydEluZGV4ICE9IC0xKQorICAgICAgICB3aW5kb3dPcHRpb25zLnJlbW90ZUlu
c3BlY3RvclBvcnQgPSB0YWtlT3B0aW9uVmFsdWUoJmFyZ3MsIHJlbW90ZUluc3BlY3RvclBvcnRJ
bmRleCkudG9JbnQoKTsKKwogICAgIGludCByb2JvdEluZGV4ID0gYXJncy5pbmRleE9mKCItciIp
OwogICAgIGlmIChyb2JvdEluZGV4ICE9IC0xKSB7CiAgICAgICAgIFFTdHJpbmcgbGlzdEZpbGUg
PSB0YWtlT3B0aW9uVmFsdWUoJmFyZ3MsIHJvYm90SW5kZXgpOwo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>64874</attachid>
            <date>2010-08-19 10:53:23 -0700</date>
            <delta_ts>2010-08-26 07:49:55 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-43988-20100819135322.patch</filename>
            <type>text/plain</type>
            <size>31697</size>
            <attacher name="Jamey Hicks">jamey.hicks</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1dlYkNvcmUvQ2hhbmdlTG9nIGIvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXgg
OWRhNWVlMzQ1ZDQ5MTBiYzg1NjI1YzM3OWI5MTJiMTNlMGJiODUxYi4uY2E3OTRjNDQwMzg4OGE2
YmU4OTY1NjgyYzM3NDZiOGZlZDUyMTM3NyAxMDA2NDQKLS0tIGEvV2ViQ29yZS9DaGFuZ2VMb2cK
KysrIGIvV2ViQ29yZS9DaGFuZ2VMb2cKQEAgLTEsMyArMSwyMiBAQAorMjAxMC0wOC0xOSAgSmFt
ZXkgSGlja3MgIDxqYW1leS5oaWNrc0Bub2tpYS5jb20+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkg
QXJpeWEgSGlkYXlhdC4KKworICAgICAgICBbUXRdIFJlbW90ZSBXZWIgSW5zcGVjdG9yIHN1cHBv
cnQgZm9yIFF0V2ViS2l0CisKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19i
dWcuY2dpP2lkPTQzOTg4CisKKyAgICAgICAgUnVucyBhIHdlYiBkZWJ1ZyBzZXJ2ZXIgb24gcG9y
dCBzcGVjaWZpZWQgYnkgUXRUZXN0QnJvd3NlcgorICAgICAgICBhcmd1bWVudCAtcmVtb3RlLWlu
c3BlY3Rvci1wb3J0LiBQcm9wZXJ0eSBfcV93ZWJJbnNwZWN0b3JTZXJ2ZXJQb3J0IG9mCisgICAg
ICAgIHRoZSBRV2ViUGFnZSBpbnN0YW5jZSB3aWxsIGJlIHNldCBhY2NvcmRpbmcgdG8gdGhlIGFy
Z3VtZW50LiBBbGwKKyAgICAgICAgcGFnZXMgd2l0aCB0aGF0IHByb3BlcnR5IHNldCB3aWxsIGJl
IHJlbW90ZWx5IGluc3BlY3RhYmxlLgorCisgICAgICAgIFVSTCBmb3IgcmVtb3RlIGluc3BlY3Rp
b24gb2YgZmlyc3QgUVdlYlBhZ2UgaXMKKyAgICAgICAgICAgIGh0dHA6Ly9sb2NhbGhvc3Q6OTIy
Mi9kZXZ0b29scy9wYWdlLzEKKyAgICAgICAgd2hlcmUgMSBpcyB0aGUgbnVtYmVyIG9mIHRoZSBR
V2ViUGFnZSBpbnN0YW5jZS4KKworICAgICAgICAqIFdlYkNvcmUucHJvOgorCiAyMDEwLTA4LTE5
ICBQYXZlbCBGZWxkbWFuICA8cGZlbGRtYW5AY2hyb21pdW0ub3JnPgogCiAgICAgICAgIFJldmll
d2VkIGJ5IFl1cnkgU2VtaWtoYXRza3kuCmRpZmYgLS1naXQgYS9XZWJDb3JlL1dlYkNvcmUucHJv
IGIvV2ViQ29yZS9XZWJDb3JlLnBybwppbmRleCAzN2Q0YmQ3ZmU1ZDM2ZTUzNTFiYmRhOTRiOGUy
MTlmNWViZjNkYmY3Li5iMjkzZGU3MDBkYjdhNzc5MDc0OTg4YTlkZGExMzRhMDE5ZmQ1Mzk0IDEw
MDY0NAotLS0gYS9XZWJDb3JlL1dlYkNvcmUucHJvCisrKyBiL1dlYkNvcmUvV2ViQ29yZS5wcm8K
QEAgLTIxODAsNiArMjE4MCw3IEBAIEhFQURFUlMgKz0gXAogICAgIHhtbC9YU0xUUHJvY2Vzc29y
LmggXAogICAgIHhtbC9YU0xUVW5pY29kZVNvcnQuaCBcCiAgICAgJCRQV0QvLi4vV2ViS2l0L3F0
L0FwaS9xd2VicGx1Z2luZGF0YWJhc2VfcC5oIFwKKyAgICAkJFBXRC8uLi9XZWJLaXQvcXQvV2Vi
Q29yZVN1cHBvcnQvSW5zcGVjdG9yU2VydmVyUXQuaCBcCiAgICAgJCRQV0QvLi4vV2ViS2l0L3F0
L1dlYkNvcmVTdXBwb3J0L1F0RmFsbGJhY2tXZWJQb3B1cC5oIFwKICAgICAkJFBXRC8uLi9XZWJL
aXQvcXQvV2ViQ29yZVN1cHBvcnQvRnJhbWVMb2FkZXJDbGllbnRRdC5oIFwKICAgICAkJFBXRC8u
Li9XZWJLaXQvcXQvV2ViQ29yZVN1cHBvcnQvRnJhbWVOZXR3b3JraW5nQ29udGV4dFF0LmggXApA
QCAtMjI3NSw2ICsyMjc2LDcgQEAgU09VUkNFUyArPSBcCiAgICAgLi4vV2ViS2l0L3F0L1dlYkNv
cmVTdXBwb3J0L0VkaXRDb21tYW5kUXQuY3BwIFwKICAgICAuLi9XZWJLaXQvcXQvV2ViQ29yZVN1
cHBvcnQvRnJhbWVMb2FkZXJDbGllbnRRdC5jcHAgXAogICAgIC4uL1dlYktpdC9xdC9XZWJDb3Jl
U3VwcG9ydC9GcmFtZU5ldHdvcmtpbmdDb250ZXh0UXQuY3BwIFwKKyAgICAuLi9XZWJLaXQvcXQv
V2ViQ29yZVN1cHBvcnQvSW5zcGVjdG9yU2VydmVyUXQuY3BwIFwKICAgICAuLi9XZWJLaXQvcXQv
V2ViQ29yZVN1cHBvcnQvSW5zcGVjdG9yQ2xpZW50UXQuY3BwIFwKICAgICAuLi9XZWJLaXQvcXQv
V2ViQ29yZVN1cHBvcnQvTm90aWZpY2F0aW9uUHJlc2VudGVyQ2xpZW50UXQuY3BwIFwKICAgICAu
Li9XZWJLaXQvcXQvV2ViQ29yZVN1cHBvcnQvUGFnZUNsaWVudFF0LmNwcCBcCmRpZmYgLS1naXQg
YS9XZWJLaXQvcXQvQXBpL3F3ZWJpbnNwZWN0b3IuY3BwIGIvV2ViS2l0L3F0L0FwaS9xd2ViaW5z
cGVjdG9yLmNwcAppbmRleCA4MDJlYTk4MDQ4ZmE1Yjk3ZTRmZmMzZDUwN2MzMjg1YTBjYjZhM2Uz
Li41YzE4OGE3NGRmZGZjMTdhYzE0ODMxOTczYzYwODIxMDU0MmUwYTAxIDEwMDY0NAotLS0gYS9X
ZWJLaXQvcXQvQXBpL3F3ZWJpbnNwZWN0b3IuY3BwCisrKyBiL1dlYktpdC9xdC9BcGkvcXdlYmlu
c3BlY3Rvci5jcHAKQEAgLTE5Niw2ICsxOTYsMjYgQEAgdm9pZCBRV2ViSW5zcGVjdG9yUHJpdmF0
ZTo6c2V0RnJvbnRlbmQoUVdpZGdldCogbmV3RnJvbnRlbmQpCiAgICAgfQogfQogCisvKiEgXGlu
dGVybmFsICovCit2b2lkIFFXZWJJbnNwZWN0b3JQcml2YXRlOjphdHRhY2hSZW1vdGVGcm9udGVu
ZChRT2JqZWN0KiBuZXdSZW1vdGVGcm9udGVuZCkKK3sKKyAgICBpZiAocmVtb3RlRnJvbnRlbmQp
CisgICAgICAgIHJlbW90ZUZyb250ZW5kLT5zZXRQYXJlbnQoMCk7CisKKyAgICByZW1vdGVGcm9u
dGVuZCA9IG5ld1JlbW90ZUZyb250ZW5kOworCisgICAgaWYgKHJlbW90ZUZyb250ZW5kKQorICAg
ICAgICByZW1vdGVGcm9udGVuZC0+c2V0UGFyZW50KHEpOworfQorCit2b2lkIFFXZWJJbnNwZWN0
b3JQcml2YXRlOjpkZXRhY2hSZW1vdGVGcm9udGVuZCgpCit7CisgICAgaWYgKHJlbW90ZUZyb250
ZW5kKSB7CisgICAgICAgIHJlbW90ZUZyb250ZW5kLT5kZWxldGVMYXRlcigpOworICAgICAgICBy
ZW1vdGVGcm9udGVuZCA9IDA7CisgICAgfQorfQorCiB2b2lkIFFXZWJJbnNwZWN0b3JQcml2YXRl
OjphZGp1c3RGcm9udGVuZFNpemUoY29uc3QgUVNpemUmIHNpemUpCiB7CiAgICAgaWYgKGZyb250
ZW5kKQpkaWZmIC0tZ2l0IGEvV2ViS2l0L3F0L0FwaS9xd2ViaW5zcGVjdG9yX3AuaCBiL1dlYktp
dC9xdC9BcGkvcXdlYmluc3BlY3Rvcl9wLmgKaW5kZXggNGQzMjdjYzVhOTExZjdlNTIyOTgwNGYx
ZDhlMjc5YTQ1NDhlZDc1Ny4uOTZmNjRiYjVhMGZhYjhkMDQ5YjBlNTg3ZjM3ZjdlZWVlZjcwNjNl
MCAxMDA2NDQKLS0tIGEvV2ViS2l0L3F0L0FwaS9xd2ViaW5zcGVjdG9yX3AuaAorKysgYi9XZWJL
aXQvcXQvQXBpL3F3ZWJpbnNwZWN0b3JfcC5oCkBAIC0zMywxNCArMzMsMTggQEAgcHVibGljOgog
ICAgIDogcShxcSkKICAgICAsIHBhZ2UoMCkKICAgICAsIGZyb250ZW5kKDApCisgICAgLCByZW1v
dGVGcm9udGVuZCgwKQogICAgIHt9CiAKICAgICB2b2lkIHNldEZyb250ZW5kKFFXaWRnZXQqIG5l
d0Zyb250ZW5kKTsKKyAgICB2b2lkIGF0dGFjaFJlbW90ZUZyb250ZW5kKFFPYmplY3QqIG5ld1Jl
bW90ZUZyb250ZW5kKTsKKyAgICB2b2lkIGRldGFjaFJlbW90ZUZyb250ZW5kKCk7CiAgICAgdm9p
ZCBhZGp1c3RGcm9udGVuZFNpemUoY29uc3QgUVNpemUmIHNpemUpOwogCiAgICAgUVdlYkluc3Bl
Y3RvciogcTsKICAgICBRV2ViUGFnZSogcGFnZTsKICAgICBRV2lkZ2V0KiBmcm9udGVuZDsKKyAg
ICBRT2JqZWN0KiByZW1vdGVGcm9udGVuZDsKIH07CiAKICNlbmRpZgpkaWZmIC0tZ2l0IGEvV2Vi
S2l0L3F0L0FwaS9xd2VicGFnZS5jcHAgYi9XZWJLaXQvcXQvQXBpL3F3ZWJwYWdlLmNwcAppbmRl
eCA1MTZlYmM5ZGY5MGJmODkwMjI0OGRhNjMzMDVkY2FmMjZmMTNiNjlhLi4zNTBlNzE2MGMxMDAw
NTlmYTdiY2MwOWY3YmMwNjc5ZTMzY2QwMTNiIDEwMDY0NAotLS0gYS9XZWJLaXQvcXQvQXBpL3F3
ZWJwYWdlLmNwcAorKysgYi9XZWJLaXQvcXQvQXBpL3F3ZWJwYWdlLmNwcApAQCAtNzYsNiArNzYs
NyBAQAogI2luY2x1ZGUgIkhUTUxJbnB1dEVsZW1lbnQuaCIKICNpbmNsdWRlICJIVE1MTmFtZXMu
aCIKICNpbmNsdWRlICJIaXRUZXN0UmVzdWx0LmgiCisjaW5jbHVkZSAiSW5zcGVjdG9yU2VydmVy
UXQuaCIKICNpbmNsdWRlICJXaW5kb3dGZWF0dXJlcy5oIgogI2luY2x1ZGUgIkxvY2FsaXplZFN0
cmluZ3MuaCIKICNpbmNsdWRlICJDYWNoZS5oIgpAQCAtMTI5Niw2ICsxMjk3LDEwIEBAIHZvaWQg
UVdlYlBhZ2VQcml2YXRlOjpkeW5hbWljUHJvcGVydHlDaGFuZ2VFdmVudChRRHluYW1pY1Byb3Bl
cnR5Q2hhbmdlRXZlbnQqIGV2CiAgICAgICAgIGZyYW1lLT50aWxlZEJhY2tpbmdTdG9yZSgpLT5z
ZXRLZWVwQW5kQ292ZXJBcmVhTXVsdGlwbGllcnMoa2VlcE11bHRpcGxpZXIsIGNvdmVyTXVsdGlw
bGllcik7CiAgICAgfQogI2VuZGlmCisgICAgZWxzZSBpZiAoZXZlbnQtPnByb3BlcnR5TmFtZSgp
ID09ICJfcV93ZWJJbnNwZWN0b3JTZXJ2ZXJQb3J0IikgeworICAgICAgICBJbnNwZWN0b3JTZXJ2
ZXJRdCogaW5zcGVjdG9yU2VydmVyID0gSW5zcGVjdG9yU2VydmVyUXQ6OnNlcnZlcigpOworICAg
ICAgICBpbnNwZWN0b3JTZXJ2ZXItPmxpc3RlbihpbnNwZWN0b3JTZXJ2ZXJQb3J0KCkpOworICAg
IH0KIH0KICNlbmRpZgogCkBAIC0xNTUzLDYgKzE1NTgsMTUgQEAgSW5zcGVjdG9yQ29udHJvbGxl
ciogUVdlYlBhZ2VQcml2YXRlOjppbnNwZWN0b3JDb250cm9sbGVyKCkKICNlbmRpZgogfQogCitx
dWludDE2IFFXZWJQYWdlUHJpdmF0ZTo6aW5zcGVjdG9yU2VydmVyUG9ydCgpCit7CisjaWYgRU5B
QkxFKElOU1BFQ1RPUikgJiYgIWRlZmluZWQoUVRfTk9fUFJPUEVSVElFUykKKyAgICBpZiAocSAm
JiBxLT5wcm9wZXJ0eSgiX3Ffd2ViSW5zcGVjdG9yU2VydmVyUG9ydCIpLmlzVmFsaWQoKSkKKyAg
ICAgICAgcmV0dXJuIHEtPnByb3BlcnR5KCJfcV93ZWJJbnNwZWN0b3JTZXJ2ZXJQb3J0IikudG9J
bnQoKTsKKyNlbmRpZgorICAgIHJldHVybiAwOworfQorCiAKIC8qIQogICAgXGVudW0gUVdlYlBh
Z2U6OkZpbmRGbGFnCkBAIC0xODg3LDYgKzE5MDEsNyBAQCBRV2ViUGFnZTo6flFXZWJQYWdlKCkK
ICAgICAgICAgZWxzZQogICAgICAgICAgICAgZC0+aW5zcGVjdG9yLT5zZXRQYWdlKDApOwogICAg
IH0KKwogICAgIGRlbGV0ZSBkOwogfQogCmRpZmYgLS1naXQgYS9XZWJLaXQvcXQvQXBpL3F3ZWJw
YWdlX3AuaCBiL1dlYktpdC9xdC9BcGkvcXdlYnBhZ2VfcC5oCmluZGV4IGNmNGFiODgwNTQ5MzMw
OGYyYmIzYTFkNGYwMWRjYTQ0YzUyMzQ5OTAuLmQzZDg5YjljMjQyZTYyMzczZGE4NDg4ZGIzN2Nj
MmY2MjdmNjNkZGQgMTAwNjQ0Ci0tLSBhL1dlYktpdC9xdC9BcGkvcXdlYnBhZ2VfcC5oCisrKyBi
L1dlYktpdC9xdC9BcGkvcXdlYnBhZ2VfcC5oCkBAIC0xMzksNiArMTM5LDcgQEAgcHVibGljOgog
ICAgIHZvaWQgc2V0SW5zcGVjdG9yKFFXZWJJbnNwZWN0b3IqKTsKICAgICBRV2ViSW5zcGVjdG9y
KiBnZXRPckNyZWF0ZUluc3BlY3RvcigpOwogICAgIFdlYkNvcmU6Okluc3BlY3RvckNvbnRyb2xs
ZXIqIGluc3BlY3RvckNvbnRyb2xsZXIoKTsKKyAgICBxdWludDE2IGluc3BlY3RvclNlcnZlclBv
cnQoKTsKIAogI2lmbmRlZiBRVF9OT19TSE9SVENVVAogICAgIHN0YXRpYyBRV2ViUGFnZTo6V2Vi
QWN0aW9uIGVkaXRvckFjdGlvbkZvcktleUV2ZW50KFFLZXlFdmVudCogZXZlbnQpOwpkaWZmIC0t
Z2l0IGEvV2ViS2l0L3F0L0NoYW5nZUxvZyBiL1dlYktpdC9xdC9DaGFuZ2VMb2cKaW5kZXggMmNk
YzIyYWFlYzcyODMzODgyNTMwMTEyY2Y4YzllM2QwZDAxNzkzMi4uYzcxY2RkMTAxOGIzNjU4NGU2
YzFkMmE0ZjRkZTk0NzhjN2ViYTAyNyAxMDA2NDQKLS0tIGEvV2ViS2l0L3F0L0NoYW5nZUxvZwor
KysgYi9XZWJLaXQvcXQvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsNjIgQEAKKzIwMTAtMDgtMTkgIEph
bWV5IEhpY2tzICA8amFtZXkuaGlja3NAbm9raWEuY29tPgorCisgICAgICAgIFJldmlld2VkIGJ5
IEFyaXlhIEhpZGF5YXQuCisKKyAgICAgICAgW1F0XSBSZW1vdGUgV2ViIEluc3BlY3RvciBzdXBw
b3J0IGZvciBRdFdlYktpdAorCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3df
YnVnLmNnaT9pZD00Mzk4OAorCisgICAgICAgIFJ1bnMgYSB3ZWIgZGVidWcgc2VydmVyIG9uIHBv
cnQgc3BlY2lmaWVkIGJ5IFF0VGVzdEJyb3dzZXIKKyAgICAgICAgYXJndW1lbnQgLXJlbW90ZS1p
bnNwZWN0b3ItcG9ydC4gUHJvcGVydHkgX3Ffd2ViSW5zcGVjdG9yU2VydmVyUG9ydCBvZgorICAg
ICAgICB0aGUgUVdlYlBhZ2UgaW5zdGFuY2Ugd2lsbCBiZSBzZXQgYWNjb3JkaW5nIHRvIHRoZSBh
cmd1bWVudC4gQWxsCisgICAgICAgIHBhZ2VzIHdpdGggdGhhdCBwcm9wZXJ0eSBzZXQgd2lsbCBi
ZSByZW1vdGVseSBpbnNwZWN0YWJsZS4KKworICAgICAgICBVUkwgZm9yIHJlbW90ZSBpbnNwZWN0
aW9uIG9mIGZpcnN0IFFXZWJQYWdlIGlzCisgICAgICAgICAgICBodHRwOi8vbG9jYWxob3N0Ojky
MjIvZGV2dG9vbHMvcGFnZS8xCisgICAgICAgIHdoZXJlIDEgaXMgdGhlIG51bWJlciBvZiB0aGUg
UVdlYlBhZ2UgaW5zdGFuY2UuCisKKyAgICAgICAgKiBBcGkvcXdlYmluc3BlY3Rvci5jcHA6Cisg
ICAgICAgIChRV2ViSW5zcGVjdG9yUHJpdmF0ZTo6YXR0YWNoUmVtb3RlRnJvbnRlbmQpOgorICAg
ICAgICAoUVdlYkluc3BlY3RvclByaXZhdGU6OmRldGFjaFJlbW90ZUZyb250ZW5kKToKKyAgICAg
ICAgKiBBcGkvcXdlYmluc3BlY3Rvcl9wLmg6CisgICAgICAgIChRV2ViSW5zcGVjdG9yUHJpdmF0
ZTo6UVdlYkluc3BlY3RvclByaXZhdGUpOgorICAgICAgICAqIEFwaS9xd2VicGFnZS5jcHA6Cisg
ICAgICAgIChRV2ViUGFnZVByaXZhdGU6OmR5bmFtaWNQcm9wZXJ0eUNoYW5nZUV2ZW50KToKKyAg
ICAgICAgKFFXZWJQYWdlUHJpdmF0ZTo6aW5zcGVjdG9yU2VydmVyUG9ydCk6CisgICAgICAgIChR
V2ViUGFnZTo6flFXZWJQYWdlKToKKyAgICAgICAgKiBBcGkvcXdlYnBhZ2VfcC5oOgorICAgICAg
ICAqIFdlYkNvcmVTdXBwb3J0L0luc3BlY3RvckNsaWVudFF0LmNwcDoKKyAgICAgICAgKFdlYkNv
cmU6Okluc3BlY3RvckNsaWVudFF0OjpJbnNwZWN0b3JDbGllbnRRdCk6CisgICAgICAgIChXZWJD
b3JlOjpJbnNwZWN0b3JDbGllbnRRdDo6aW5zcGVjdG9yRGVzdHJveWVkKToKKyAgICAgICAgKFdl
YkNvcmU6Okluc3BlY3RvckNsaWVudFF0OjpvcGVuSW5zcGVjdG9yRnJvbnRlbmQpOgorICAgICAg
ICAoV2ViQ29yZTo6SW5zcGVjdG9yQ2xpZW50UXQ6OmF0dGFjaFJlbW90ZUZyb250ZW5kKToKKyAg
ICAgICAgKFdlYkNvcmU6Okluc3BlY3RvckNsaWVudFF0OjpkZXRhY2hSZW1vdGVGcm9udGVuZCk6
CisgICAgICAgIChXZWJDb3JlOjpJbnNwZWN0b3JDbGllbnRRdDo6c2VuZE1lc3NhZ2VUb0Zyb250
ZW5kKToKKyAgICAgICAgKFdlYkNvcmU6Okluc3BlY3RvckNsaWVudFF0OjpkaXNwYXRjaCk6Cisg
ICAgICAgICogV2ViQ29yZVN1cHBvcnQvSW5zcGVjdG9yQ2xpZW50UXQuaDoKKyAgICAgICAgKiBX
ZWJDb3JlU3VwcG9ydC9JbnNwZWN0b3JTZXJ2ZXJRdC5jcHA6IEFkZGVkLgorICAgICAgICAoV2Vi
Q29yZTo6c2V0Q2hhbGxlbmdlTnVtYmVyKToKKyAgICAgICAgKFdlYkNvcmU6OmdlbmVyYXRlRXhw
ZWN0ZWRDaGFsbGVuZ2VSZXNwb25zZSk6CisgICAgICAgIChXZWJDb3JlOjpnZXRDaGFsbGVuZ2VO
dW1iZXJGcm9tRmllbGQpOgorICAgICAgICAoV2ViQ29yZTo6SW5zcGVjdG9yU2VydmVyUXQ6OnNl
cnZlcik6CisgICAgICAgIChXZWJDb3JlOjpJbnNwZWN0b3JTZXJ2ZXJRdDo6SW5zcGVjdG9yU2Vy
dmVyUXQpOgorICAgICAgICAoV2ViQ29yZTo6SW5zcGVjdG9yU2VydmVyUXQ6On5JbnNwZWN0b3JT
ZXJ2ZXJRdCk6CisgICAgICAgIChXZWJDb3JlOjpJbnNwZWN0b3JTZXJ2ZXJRdDo6bGlzdGVuKToK
KyAgICAgICAgKFdlYkNvcmU6Okluc3BlY3RvclNlcnZlclF0OjpjbG9zZSk6CisgICAgICAgIChX
ZWJDb3JlOjpJbnNwZWN0b3JTZXJ2ZXJRdDo6aW5zcGVjdG9yQ2xpZW50KToKKyAgICAgICAgKFdl
YkNvcmU6Okluc3BlY3RvclNlcnZlclF0OjpyZWdpc3RlclBhZ2UpOgorICAgICAgICAoV2ViQ29y
ZTo6SW5zcGVjdG9yU2VydmVyUXQ6OnVucmVnaXN0ZXJQYWdlKToKKyAgICAgICAgKFdlYkNvcmU6
Okluc3BlY3RvclNlcnZlclF0Ojpnb3ROZXdDb25uZWN0aW9uKToKKyAgICAgICAgKFdlYkNvcmU6
Okh0dHBSZXF1ZXN0SGFuZGxlcjo6SHR0cFJlcXVlc3RIYW5kbGVyKToKKyAgICAgICAgKFdlYkNv
cmU6Okh0dHBSZXF1ZXN0SGFuZGxlcjo6fkh0dHBSZXF1ZXN0SGFuZGxlcik6CisgICAgICAgIChX
ZWJDb3JlOjpIdHRwUmVxdWVzdEhhbmRsZXI6OnRjcFJlYWR5UmVhZCk6CisgICAgICAgIChXZWJD
b3JlOjpIdHRwUmVxdWVzdEhhbmRsZXI6OnRjcENvbm5lY3Rpb25EaXNjb25uZWN0ZWQpOgorICAg
ICAgICAoV2ViQ29yZTo6SHR0cFJlcXVlc3RIYW5kbGVyOjp3ZWJTb2NrZXRTZW5kKToKKyAgICAg
ICAgKFdlYkNvcmU6Okh0dHBSZXF1ZXN0SGFuZGxlcjo6d2ViU29ja2V0UmVhZHlSZWFkKToKKyAg
ICAgICAgKFdlYkNvcmU6OlJlbW90ZUZyb250ZW5kQ2hhbm5lbDo6UmVtb3RlRnJvbnRlbmRDaGFu
bmVsKToKKyAgICAgICAgKFdlYkNvcmU6OlJlbW90ZUZyb250ZW5kQ2hhbm5lbDo6c2VuZE1lc3Nh
Z2VUb0Zyb250ZW5kKToKKyAgICAgICAgKiBXZWJDb3JlU3VwcG9ydC9JbnNwZWN0b3JTZXJ2ZXJR
dC5oOiBBZGRlZC4KKwogMjAxMC0wOC0xOSAgR2lyaXNoIFJhbWFrcmlzaG5hbiAgPGdpcmlzaEBm
b3J3YXJkYmlhcy5pbj4KIAogICAgICAgICBSZXZpZXdlZCBieSBLZW5uZXRoIENocmlzdGlhbnNl
bi4KZGlmZiAtLWdpdCBhL1dlYktpdC9xdC9XZWJDb3JlU3VwcG9ydC9JbnNwZWN0b3JDbGllbnRR
dC5jcHAgYi9XZWJLaXQvcXQvV2ViQ29yZVN1cHBvcnQvSW5zcGVjdG9yQ2xpZW50UXQuY3BwCmlu
ZGV4IGUxM2Y2YzM3MTg2MWQyYjc4MTFiM2VjYTU1MjNiY2YxY2FlZmExZjAuLjQ2MjhhZDU3ZTM2
YTU0OTA4MzBjOGJmNmY5NDE4ZDE1NmE4OWRhYTkgMTAwNjQ0Ci0tLSBhL1dlYktpdC9xdC9XZWJD
b3JlU3VwcG9ydC9JbnNwZWN0b3JDbGllbnRRdC5jcHAKKysrIGIvV2ViS2l0L3F0L1dlYkNvcmVT
dXBwb3J0L0luc3BlY3RvckNsaWVudFF0LmNwcApAQCAtMzIsMTAgKzMyLDEzIEBACiAjaW5jbHVk
ZSAiSW5zcGVjdG9yQ2xpZW50UXQuaCIKIAogI2luY2x1ZGUgIkZyYW1lLmgiCisjaW5jbHVkZSAi
SW5zcGVjdG9yQmFja2VuZERpc3BhdGNoZXIuaCIKICNpbmNsdWRlICJJbnNwZWN0b3JDb250cm9s
bGVyLmgiCisjaW5jbHVkZSAiSW5zcGVjdG9yU2VydmVyUXQuaCIKICNpbmNsdWRlICJOb3RJbXBs
ZW1lbnRlZC5oIgogI2luY2x1ZGUgIlBhZ2UuaCIKICNpbmNsdWRlICJQbGF0Zm9ybVN0cmluZy5o
IgorI2luY2x1ZGUgIlJlbW90ZUluc3BlY3RvckZyb250ZW5kLmgiCiAjaW5jbHVkZSAiU2NyaXB0
Q29udHJvbGxlci5oIgogI2luY2x1ZGUgInF3ZWJpbnNwZWN0b3IuaCIKICNpbmNsdWRlICJxd2Vi
aW5zcGVjdG9yX3AuaCIKQEAgLTk2LDIxICs5OSwzNSBAQCBwdWJsaWMgc2xvdHM6CiBJbnNwZWN0
b3JDbGllbnRRdDo6SW5zcGVjdG9yQ2xpZW50UXQoUVdlYlBhZ2UqIHBhZ2UpCiAgICAgOiBtX2lu
c3BlY3RlZFdlYlBhZ2UocGFnZSkKICAgICAsIG1fZnJvbnRlbmRXZWJQYWdlKDApCi17fQorICAg
ICwgbV9yZW1vdGVJbnNwZWN0b3IoZmFsc2UpCit7CisgICAgSW5zcGVjdG9yU2VydmVyUXQqIHdl
Ykluc3BlY3RvclNlcnZlciA9IEluc3BlY3RvclNlcnZlclF0OjpzZXJ2ZXIoKTsKKyAgICBpZiAo
d2ViSW5zcGVjdG9yU2VydmVyKQorICAgICAgICB3ZWJJbnNwZWN0b3JTZXJ2ZXItPnJlZ2lzdGVy
UGFnZShwYWdlLCB0aGlzKTsKK30KIAogdm9pZCBJbnNwZWN0b3JDbGllbnRRdDo6aW5zcGVjdG9y
RGVzdHJveWVkKCkKIHsKKyAgICBJbnNwZWN0b3JTZXJ2ZXJRdCogd2ViSW5zcGVjdG9yU2VydmVy
ID0gSW5zcGVjdG9yU2VydmVyUXQ6OnNlcnZlcigpOworICAgIGlmICh3ZWJJbnNwZWN0b3JTZXJ2
ZXIpCisgICAgICAgIHdlYkluc3BlY3RvclNlcnZlci0+dW5yZWdpc3RlclBhZ2UobV9pbnNwZWN0
ZWRXZWJQYWdlKTsKKwogICAgIGRlbGV0ZSB0aGlzOwogfQogCiAgICAgCi12b2lkIEluc3BlY3Rv
ckNsaWVudFF0OjpvcGVuSW5zcGVjdG9yRnJvbnRlbmQoV2ViQ29yZTo6SW5zcGVjdG9yQ29udHJv
bGxlciopCit2b2lkIEluc3BlY3RvckNsaWVudFF0OjpvcGVuSW5zcGVjdG9yRnJvbnRlbmQoV2Vi
Q29yZTo6SW5zcGVjdG9yQ29udHJvbGxlciogaW5zcGVjdG9yQ29udHJvbGxlcikKIHsKICAgICBR
V2ViVmlldyogaW5zcGVjdG9yVmlldyA9IG5ldyBRV2ViVmlldzsKICAgICBJbnNwZWN0b3JDbGll
bnRXZWJQYWdlKiBpbnNwZWN0b3JQYWdlID0gbmV3IEluc3BlY3RvckNsaWVudFdlYlBhZ2UoaW5z
cGVjdG9yVmlldyk7CiAgICAgaW5zcGVjdG9yVmlldy0+c2V0UGFnZShpbnNwZWN0b3JQYWdlKTsK
IAogICAgIFFXZWJJbnNwZWN0b3IqIGluc3BlY3RvciA9IG1faW5zcGVjdGVkV2ViUGFnZS0+ZC0+
Z2V0T3JDcmVhdGVJbnNwZWN0b3IoKTsKKyAgICBpZiAobV9pbnNwZWN0ZWRXZWJQYWdlLT5kLT5p
bnNwZWN0b3JTZXJ2ZXJQb3J0KCkpIHsKKyAgICAgICAgbV9yZW1vdGVJbnNwZWN0b3IgPSB0cnVl
OworICAgICAgICByZXR1cm47CisgICAgfQorCiAgICAgLy8gVGhpcyBpcyBhIGtub3duIGhvb2sg
dGhhdCBhbGxvd3MgY2hhbmdpbmcgdGhlIGRlZmF1bHQgVVJMIGZvciB0aGUKICAgICAvLyBXZWIg
aW5zcGVjdG9yLiBUaGlzIGlzIHVzZWQgZm9yIFNESyBwdXJwb3Nlcy4gUGxlYXNlIGtlZXAgdGhp
cyBob29rCiAgICAgLy8gYXJvdW5kIGFuZCBkb24ndCByZW1vdmUgaXQuCkBAIC0xNDAsNiArMTU3
LDI0IEBAIHZvaWQgSW5zcGVjdG9yQ2xpZW50UXQ6OnJlbGVhc2VGcm9udGVuZFBhZ2UoKQogICAg
IG1fZnJvbnRlbmRXZWJQYWdlID0gMDsKIH0KIAorCit2b2lkIEluc3BlY3RvckNsaWVudFF0Ojph
dHRhY2hSZW1vdGVGcm9udGVuZChSZW1vdGVGcm9udGVuZENoYW5uZWwqIGNoYW5uZWwpCit7Cisj
aWYgRU5BQkxFKElOU1BFQ1RPUikKKyAgICAvLyBDaGFubmVsIHdhcyBhbGxvY2F0ZWQgYnkgSW5z
cGVjdG9yU2VydmVyUXQuIEhlcmUgd2UgdHJhbnNmZXIgb3duZXJzaGlwIHRvIGluc3BlY3Rvci4K
KyAgICBtX2luc3BlY3RlZFdlYlBhZ2UtPmQtPmluc3BlY3Rvci0+ZC0+YXR0YWNoUmVtb3RlRnJv
bnRlbmQoY2hhbm5lbCk7CisgICAgbV9pbnNwZWN0ZWRXZWJQYWdlLT5kLT5pbnNwZWN0b3JDb250
cm9sbGVyKCktPmNvbm5lY3RGcm9udGVuZCgpOworI2VuZGlmCit9CisKK3ZvaWQgSW5zcGVjdG9y
Q2xpZW50UXQ6OmRldGFjaFJlbW90ZUZyb250ZW5kKCkKK3sKKyNpZiBFTkFCTEUoSU5TUEVDVE9S
KQorICAgIG1faW5zcGVjdGVkV2ViUGFnZS0+ZC0+aW5zcGVjdG9yLT5kLT5kZXRhY2hSZW1vdGVG
cm9udGVuZCgpOworICAgIG1faW5zcGVjdGVkV2ViUGFnZS0+ZC0+aW5zcGVjdG9yQ29udHJvbGxl
cigpLT5kaXNjb25uZWN0RnJvbnRlbmQoKTsKKyNlbmRpZgorfQorCiB2b2lkIEluc3BlY3RvckNs
aWVudFF0OjpoaWdobGlnaHQoTm9kZSopCiB7CiAgICAgbm90SW1wbGVtZW50ZWQoKTsKQEAgLTE5
Niw2ICsyMzEsMjEgQEAgdm9pZCBJbnNwZWN0b3JDbGllbnRRdDo6c3RvcmVTZXR0aW5nKGNvbnN0
IFN0cmluZyYga2V5LCBjb25zdCBTdHJpbmcmIHNldHRpbmcpCiAKIGJvb2wgSW5zcGVjdG9yQ2xp
ZW50UXQ6OnNlbmRNZXNzYWdlVG9Gcm9udGVuZChjb25zdCBTdHJpbmcmIG1lc3NhZ2UpCiB7Cisg
ICAgaWYgKG1fcmVtb3RlSW5zcGVjdG9yIAorICAgICAgICB8fCAobV9pbnNwZWN0ZWRXZWJQYWdl
ICYmIG1faW5zcGVjdGVkV2ViUGFnZS0+ZC0+aW5zcGVjdG9yU2VydmVyUG9ydCgpKSkgeworICAg
ICAgICBtX3JlbW90ZUluc3BlY3RvciA9IHRydWU7CisgICAgICAgIGlmICghbV9pbnNwZWN0ZWRX
ZWJQYWdlIAorICAgICAgICAgICAgfHwgIW1faW5zcGVjdGVkV2ViUGFnZS0+ZAorICAgICAgICAg
ICAgfHwgIW1faW5zcGVjdGVkV2ViUGFnZS0+ZC0+aW5zcGVjdG9yCisgICAgICAgICAgICB8fCAh
bV9pbnNwZWN0ZWRXZWJQYWdlLT5kLT5pbnNwZWN0b3ItPmQKKyAgICAgICAgICAgIHx8ICFtX2lu
c3BlY3RlZFdlYlBhZ2UtPmQtPmluc3BlY3Rvci0+ZC0+cmVtb3RlRnJvbnRlbmQpCisgICAgICAg
ICAgICByZXR1cm4gZmFsc2U7CisKKyAgICAgICAgUmVtb3RlRnJvbnRlbmRDaGFubmVsKiBzZXNz
aW9uID0gcW9iamVjdF9jYXN0PFJlbW90ZUZyb250ZW5kQ2hhbm5lbCo+KG1faW5zcGVjdGVkV2Vi
UGFnZS0+ZC0+aW5zcGVjdG9yLT5kLT5yZW1vdGVGcm9udGVuZCk7CisgICAgICAgIGlmIChzZXNz
aW9uKQorICAgICAgICAgICAgc2Vzc2lvbi0+c2VuZE1lc3NhZ2VUb0Zyb250ZW5kKG1lc3NhZ2Up
OworICAgICAgICByZXR1cm4gdHJ1ZTsKKyAgICB9CiAgICAgaWYgKCFtX2Zyb250ZW5kV2ViUGFn
ZSkKICAgICAgICAgcmV0dXJuIGZhbHNlOwogCkBAIC0yMTgsNiArMjY4LDEyIEBAIGJvb2wgSW5z
cGVjdG9yQ2xpZW50UXQ6OnNlbmRNZXNzYWdlVG9Gcm9udGVuZChjb25zdCBTdHJpbmcmIG1lc3Nh
Z2UpCiAgICAgcmV0dXJuIHRydWU7CiB9CiAKK3ZvaWQgSW5zcGVjdG9yQ2xpZW50UXQ6OmRpc3Bh
dGNoKGNvbnN0IFN0cmluZyAmbWVzc2FnZSkKK3sKKyAgICBJbnNwZWN0b3JDb250cm9sbGVyKiBp
bnNwZWN0b3JDb250cm9sbGVyID0gbV9pbnNwZWN0ZWRXZWJQYWdlLT5kLT5wYWdlLT5pbnNwZWN0
b3JDb250cm9sbGVyKCk7CisgICAgaW5zcGVjdG9yQ29udHJvbGxlci0+aW5zcGVjdG9yQmFja2Vu
ZERpc3BhdGNoZXIoKS0+ZGlzcGF0Y2gobWVzc2FnZSk7Cit9CisKIHN0YXRpYyBTdHJpbmcgdmFy
aWFudFRvU2V0dGluZyhjb25zdCBRVmFyaWFudCYgcXZhcmlhbnQpCiB7CiAgICAgU3RyaW5nIHJl
dFZhbDsKZGlmZiAtLWdpdCBhL1dlYktpdC9xdC9XZWJDb3JlU3VwcG9ydC9JbnNwZWN0b3JDbGll
bnRRdC5oIGIvV2ViS2l0L3F0L1dlYkNvcmVTdXBwb3J0L0luc3BlY3RvckNsaWVudFF0LmgKaW5k
ZXggOTUyNmM4ODBjMmVjM2JjMTVhMGYyMmFmZDllMzlhZTNmYWQ3Y2JjMC4uYThlZjkyYzQ4N2Ey
NzhjMTkyMjNlODg1MTY3NTVhNjVkYzIwMzM2ZCAxMDA2NDQKLS0tIGEvV2ViS2l0L3F0L1dlYkNv
cmVTdXBwb3J0L0luc3BlY3RvckNsaWVudFF0LmgKKysrIGIvV2ViS2l0L3F0L1dlYkNvcmVTdXBw
b3J0L0luc3BlY3RvckNsaWVudFF0LmgKQEAgLTQzLDYgKzQzLDcgQEAgY2xhc3MgUVdlYlZpZXc7
CiBuYW1lc3BhY2UgV2ViQ29yZSB7CiBjbGFzcyBOb2RlOwogY2xhc3MgUGFnZTsKK2NsYXNzIFJl
bW90ZUZyb250ZW5kQ2hhbm5lbDsKIAogY2xhc3MgSW5zcGVjdG9yQ2xpZW50UXQgOiBwdWJsaWMg
SW5zcGVjdG9yQ2xpZW50IHsKIHB1YmxpYzoKQEAgLTU5LDEyICs2MCwxNyBAQCBwdWJsaWM6CiAg
ICAgdmlydHVhbCB2b2lkIHN0b3JlU2V0dGluZyhjb25zdCBTdHJpbmcmIGtleSwgY29uc3QgU3Ry
aW5nJiB2YWx1ZSk7CiAKICAgICB2aXJ0dWFsIGJvb2wgc2VuZE1lc3NhZ2VUb0Zyb250ZW5kKGNv
bnN0IFN0cmluZyYpOworICAgIHZpcnR1YWwgdm9pZCBkaXNwYXRjaChjb25zdCBTdHJpbmcgJm1l
c3NhZ2UpOwogCiAgICAgdm9pZCByZWxlYXNlRnJvbnRlbmRQYWdlKCk7CiAKKyAgICB2b2lkIGF0
dGFjaFJlbW90ZUZyb250ZW5kKFJlbW90ZUZyb250ZW5kQ2hhbm5lbCAqY2hhbm5lbCk7CisgICAg
dm9pZCBkZXRhY2hSZW1vdGVGcm9udGVuZCgpOworCiBwcml2YXRlOgogICAgIFFXZWJQYWdlKiBt
X2luc3BlY3RlZFdlYlBhZ2U7CiAgICAgUVdlYlBhZ2UqIG1fZnJvbnRlbmRXZWJQYWdlOworICAg
IGJvb2wgbV9yZW1vdGVJbnNwZWN0b3I7CiB9OwogCiBjbGFzcyBJbnNwZWN0b3JGcm9udGVuZENs
aWVudFF0IDogcHVibGljIEluc3BlY3RvckZyb250ZW5kQ2xpZW50TG9jYWwgewpAQCAtOTUsNiAr
MTAxLDcgQEAgcHJpdmF0ZToKICAgICBib29sIG1fZGVzdHJveWluZ0luc3BlY3RvclZpZXc7CiAg
ICAgSW5zcGVjdG9yQ2xpZW50UXQqIG1faW5zcGVjdG9yQ2xpZW50OwogfTsKKwogfQogCiAjZW5k
aWYKZGlmZiAtLWdpdCBhL1dlYktpdC9xdC9XZWJDb3JlU3VwcG9ydC9JbnNwZWN0b3JTZXJ2ZXJR
dC5jcHAgYi9XZWJLaXQvcXQvV2ViQ29yZVN1cHBvcnQvSW5zcGVjdG9yU2VydmVyUXQuY3BwCm5l
dyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAuLjVlOGE0YzYzMTg0YTk5MTg4ZWZhMTgyZWI3NDEyM2RjYmM3ZThlOTgKLS0tIC9k
ZXYvbnVsbAorKysgYi9XZWJLaXQvcXQvV2ViQ29yZVN1cHBvcnQvSW5zcGVjdG9yU2VydmVyUXQu
Y3BwCkBAIC0wLDAgKzEsMzQ4IEBACisvKgorICBDb3B5cmlnaHQgKEMpIDIwMTAgTm9raWEgQ29y
cG9yYXRpb24gYW5kL29yIGl0cyBzdWJzaWRpYXJ5KC1pZXMpCisKKyAgVGhpcyBsaWJyYXJ5IGlz
IGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vcgorICBtb2RpZnkg
aXQgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUgTGlicmFyeSBHZW5lcmFsIFB1YmxpYworICBM
aWNlbnNlIGFzIHB1Ymxpc2hlZCBieSB0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uOyBlaXRo
ZXIKKyAgdmVyc2lvbiAyIG9mIHRoZSBMaWNlbnNlLCBvciAoYXQgeW91ciBvcHRpb24pIGFueSBs
YXRlciB2ZXJzaW9uLgorCisgIFRoaXMgbGlicmFyeSBpcyBkaXN0cmlidXRlZCBpbiB0aGUgaG9w
ZSB0aGF0IGl0IHdpbGwgYmUgdXNlZnVsLAorICBidXQgV0lUSE9VVCBBTlkgV0FSUkFOVFk7IHdp
dGhvdXQgZXZlbiB0aGUgaW1wbGllZCB3YXJyYW50eSBvZgorICBNRVJDSEFOVEFCSUxJVFkgb3Ig
RklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlIEdOVQorICBMaWJyYXJ5
IEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KKworICBZb3Ugc2hvdWxk
IGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgTGlicmFyeSBHZW5lcmFsIFB1YmxpYyBM
aWNlbnNlCisgIGFsb25nIHdpdGggdGhpcyBsaWJyYXJ5OyBzZWUgdGhlIGZpbGUgQ09QWUlORy5M
SUIuICBJZiBub3QsIHdyaXRlIHRvCisgIHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb24sIElu
Yy4sIDUxIEZyYW5rbGluIFN0cmVldCwgRmlmdGggRmxvb3IsCisgIEJvc3RvbiwgTUEgMDIxMTAt
MTMwMSwgVVNBLgorKi8KKworCisjaW5jbHVkZSAiY29uZmlnLmgiCisjaW5jbHVkZSAiSW5zcGVj
dG9yU2VydmVyUXQuaCIKKworI2luY2x1ZGUgIkluc3BlY3RvckNsaWVudFF0LmgiCisjaW5jbHVk
ZSAiTUQ1LmgiCisjaW5jbHVkZSA8UUZpbGU+CisjaW5jbHVkZSA8UUh0dHBIZWFkZXI+CisjaW5j
bHVkZSA8UUh0dHBSZXF1ZXN0SGVhZGVyPgorI2luY2x1ZGUgPFFIdHRwUmVzcG9uc2VIZWFkZXI+
CisjaW5jbHVkZSA8UVN0cmluZz4KKyNpbmNsdWRlIDxRU3RyaW5nTGlzdD4KKyNpbmNsdWRlIDxR
VGNwU2VydmVyPgorI2luY2x1ZGUgPFFUY3BTb2NrZXQ+CisjaW5jbHVkZSA8UVVybD4KKyNpbmNs
dWRlIDxRV2lkZ2V0PgorI2luY2x1ZGUgPHFlbmRpYW4uaD4KKworbmFtZXNwYWNlIFdlYkNvcmUg
eworCitzdGF0aWMgdm9pZCBzZXRDaGFsbGVuZ2VOdW1iZXIodW5zaWduZWQgY2hhciogYnVmLCB1
aW50MzJfdCBudW1iZXIpCit7CisgICAgdW5zaWduZWQgY2hhciogcCA9IGJ1ZiArIDM7CisgICAg
Zm9yIChpbnQgaSA9IDA7IGkgPCA0OyBpKyspIHsKKyAgICAgICAgKnAgPSBudW1iZXIgJiAweEZG
OworICAgICAgICAtLXA7CisgICAgICAgIG51bWJlciA+Pj0gODsKKyAgICB9Cit9CisKK3N0YXRp
YyB2b2lkIGdlbmVyYXRlRXhwZWN0ZWRDaGFsbGVuZ2VSZXNwb25zZSh1aW50MzJfdCBudW1iZXIx
LCB1aW50MzJfdCBudW1iZXIyLCB1bnNpZ25lZCBjaGFyIGtleTNbOF0sIHVuc2lnbmVkIGNoYXIg
ZXhwZWN0ZWRDaGFsbGVuZ2VbMTZdKQoreworICAgIHVuc2lnbmVkIGNoYXIgY2hhbGxlbmdlWzE2
XTsKKyAgICBzZXRDaGFsbGVuZ2VOdW1iZXIoJmNoYWxsZW5nZVswXSwgbnVtYmVyMSk7CisgICAg
c2V0Q2hhbGxlbmdlTnVtYmVyKCZjaGFsbGVuZ2VbNF0sIG51bWJlcjIpOworICAgIG1lbWNweSgm
Y2hhbGxlbmdlWzhdLCBrZXkzLCA4KTsKKyAgICBNRDUgbWQ1OworICAgIG1kNS5hZGRCeXRlcyhj
aGFsbGVuZ2UsIHNpemVvZihjaGFsbGVuZ2UpKTsKKyAgICBWZWN0b3I8dWludDhfdCwgMTY+IGRp
Z2VzdDsKKyAgICBtZDUuY2hlY2tzdW0oZGlnZXN0KTsKKyAgICBtZW1jcHkoZXhwZWN0ZWRDaGFs
bGVuZ2UsIGRpZ2VzdC5kYXRhKCksIDE2KTsKK30KKworc3RhdGljIHF1aW50MzIgZ2V0Q2hhbGxl
bmdlTnVtYmVyRnJvbUZpZWxkKFFTdHJpbmcgZmllbGQpCit7CisgICAgUVN0cmluZyBuU3RyaW5n
OworICAgIGludCBuU3BhY2VzID0gMDsKKyAgICBmb3IgKGludCBpID0gMDsgaSA8IGZpZWxkLnNp
emUoKTsgaSsrKSB7CisgICAgICAgIFFDaGFyIGMgPSBmaWVsZFtpXTsKKyAgICAgICAgaWYgKGMg
PT0gKFFDaGFyKScgJykgeworICAgICAgICAgICAgblNwYWNlcysrOworICAgICAgICB9IGVsc2Ug
aWYgKChjID49IChRQ2hhciknMCcpICYmIChjIDw9IChRQ2hhciknOScpKSB7CisgICAgICAgICAg
ICBuU3RyaW5nLmFwcGVuZCgoUUNoYXIpYyk7CisgICAgICAgIH0KKyAgICB9CisgICAgcXVpbnQz
MiBudW0gPSBuU3RyaW5nLnRvTG9uZygpOworICAgIHF1aW50MzIgcmVzdWx0ID0gKG5TcGFjZXMg
PyAobnVtIC8gblNwYWNlcykgOiBudW0pOworICAgIHJldHVybiByZXN1bHQ7Cit9CisKK3N0YXRp
YyBJbnNwZWN0b3JTZXJ2ZXJRdCogc1NlcnZlcjsKKworSW5zcGVjdG9yU2VydmVyUXQqIEluc3Bl
Y3RvclNlcnZlclF0OjpzZXJ2ZXIoKQoreworICAgIGlmICghc1NlcnZlcikKKyAgICAgICAgc1Nl
cnZlciA9IG5ldyBJbnNwZWN0b3JTZXJ2ZXJRdCgpOworCisgICAgcmV0dXJuIHNTZXJ2ZXI7Cit9
CisKK0luc3BlY3RvclNlcnZlclF0OjpJbnNwZWN0b3JTZXJ2ZXJRdCgpCisgICAgOiBRT2JqZWN0
KCkKKyAgICAsIG1UY3BTZXJ2ZXIoMCkKKyAgICAsIG1QYWdlTnVtYmVyKDEpCit7Cit9CisKK0lu
c3BlY3RvclNlcnZlclF0Ojp+SW5zcGVjdG9yU2VydmVyUXQoKQoreworICAgIGNsb3NlKCk7Cit9
CisKK3ZvaWQgSW5zcGVjdG9yU2VydmVyUXQ6Omxpc3RlbihxdWludDE2IHBvcnQpCit7CisgICAg
aWYgKG1UY3BTZXJ2ZXIpCisgICAgICAgIHJldHVybjsKKworICAgIG1UY3BTZXJ2ZXIgPSBuZXcg
UVRjcFNlcnZlcigpOworICAgIG1UY3BTZXJ2ZXItPmxpc3RlbihRSG9zdEFkZHJlc3M6OkFueSwg
cG9ydCk7CisgICAgY29ubmVjdChtVGNwU2VydmVyLCBTSUdOQUwobmV3Q29ubmVjdGlvbigpKSwg
U0xPVChnb3ROZXdDb25uZWN0aW9uKCkpKTsKK30KKwordm9pZCBJbnNwZWN0b3JTZXJ2ZXJRdDo6
Y2xvc2UoKQoreworICAgIGlmIChtVGNwU2VydmVyKSB7CisgICAgICAgIG1UY3BTZXJ2ZXItPmNs
b3NlKCk7CisgICAgICAgIGRlbGV0ZSBtVGNwU2VydmVyOworICAgIH0KKyAgICBtVGNwU2VydmVy
ID0gMDsKK30KKworSW5zcGVjdG9yQ2xpZW50UXQqIEluc3BlY3RvclNlcnZlclF0OjppbnNwZWN0
b3JDbGllbnQoaW50IHBhZ2VOdW0pCit7CisgICAgUVdlYlBhZ2UqIHBhZ2UgPSBtUGFnZXMudmFs
dWUocGFnZU51bSk7CisgICAgSW5zcGVjdG9yQ2xpZW50UXQqIGNsaWVudCA9IG1JbnNwZWN0b3JD
bGllbnRzLnZhbHVlKHBhZ2UsIDApOworICAgIHJldHVybiBjbGllbnQ7Cit9CisKK3ZvaWQgSW5z
cGVjdG9yU2VydmVyUXQ6OnJlZ2lzdGVyUGFnZShRV2ViUGFnZSogcGFnZSwgSW5zcGVjdG9yQ2xp
ZW50UXQqIGNsaWVudCkKK3sKKyAgICBpZiAoIW1QYWdlcy5rZXkocGFnZSkpCisgICAgICAgIG1Q
YWdlcy5pbnNlcnQobVBhZ2VOdW1iZXIrKywgcGFnZSk7CisgICAgbUluc3BlY3RvckNsaWVudHMu
aW5zZXJ0KHBhZ2UsIGNsaWVudCk7Cit9CisKK3ZvaWQgSW5zcGVjdG9yU2VydmVyUXQ6OnVucmVn
aXN0ZXJQYWdlKFFXZWJQYWdlKiBwYWdlKQoreworICAgIGludCBwYWdlTnVtID0gbVBhZ2VzLmtl
eShwYWdlKTsKKyAgICBtUGFnZXMucmVtb3ZlKHBhZ2VOdW0pOworICAgIG1JbnNwZWN0b3JDbGll
bnRzLnJlbW92ZShwYWdlKTsKKyAgICBpZiAoIW1QYWdlcy5zaXplKCkpIHsKKyAgICAgICAgc1Nl
cnZlciA9IDA7CisgICAgICAgIGNsb3NlKCk7CisgICAgICAgIGRlbGV0ZUxhdGVyKCk7CisgICAg
fQorfQorCit2b2lkIEluc3BlY3RvclNlcnZlclF0Ojpnb3ROZXdDb25uZWN0aW9uKCkKK3sKKyAg
ICBRVGNwU29ja2V0KiBtVGNwQ29ubmVjdGlvbiA9IG1UY3BTZXJ2ZXItPm5leHRQZW5kaW5nQ29u
bmVjdGlvbigpOworICAgIEh0dHBSZXF1ZXN0SGFuZGxlciogaGFuZGxlciA9CisgICAgICAgIG5l
dyBIdHRwUmVxdWVzdEhhbmRsZXIobVRjcENvbm5lY3Rpb24sIHRoaXMpOworICAgIGhhbmRsZXIt
PnNldFBhcmVudCh0aGlzKTsKK30KKworSHR0cFJlcXVlc3RIYW5kbGVyOjpIdHRwUmVxdWVzdEhh
bmRsZXIoUVRjcFNvY2tldCogdGNwQ29ubmVjdGlvbiwgSW5zcGVjdG9yU2VydmVyUXQqIHNlcnZl
cikKKyAgICA6IFFPYmplY3Qoc2VydmVyKQorICAgICwgbVRjcENvbm5lY3Rpb24odGNwQ29ubmVj
dGlvbikKKyAgICAsIG1TZXJ2ZXIoc2VydmVyKQorICAgICwgbUlzV2ViU29ja2V0KGZhbHNlKQor
ICAgICwgbUluc3BlY3RvckNsaWVudCgwKQoreworICAgIG1FbmRPZkhlYWRlcnMgPSBmYWxzZTsg
ICAgCisgICAgbUNvbnRlbnRMZW5ndGggPSAwOworCisgICAgY29ubmVjdChtVGNwQ29ubmVjdGlv
biwgU0lHTkFMKHJlYWR5UmVhZCgpKSwgU0xPVCh0Y3BSZWFkeVJlYWQoKSkpOworICAgIGNvbm5l
Y3QobVRjcENvbm5lY3Rpb24sIFNJR05BTChkaXNjb25uZWN0ZWQoKSksIFNMT1QodGNwQ29ubmVj
dGlvbkRpc2Nvbm5lY3RlZCgpKSk7Cit9CisKK0h0dHBSZXF1ZXN0SGFuZGxlcjo6fkh0dHBSZXF1
ZXN0SGFuZGxlcigpCit7Cit9CisKK3ZvaWQgSHR0cFJlcXVlc3RIYW5kbGVyOjp0Y3BSZWFkeVJl
YWQoKQoreworICAgIFFIdHRwUmVxdWVzdEhlYWRlciBoZWFkZXI7CisgICAgaWYgKCFtVGNwQ29u
bmVjdGlvbikKKyAgICAgICAgcmV0dXJuOworCisgICAgaWYgKCFtRW5kT2ZIZWFkZXJzKSB7Cisg
ICAgICAgIHdoaWxlIChtVGNwQ29ubmVjdGlvbi0+Ynl0ZXNBdmFpbGFibGUoKSAmJiAhbUVuZE9m
SGVhZGVycykgeworICAgICAgICAgICAgUUJ5dGVBcnJheSBsaW5lID0gbVRjcENvbm5lY3Rpb24t
PnJlYWRMaW5lKCk7CisgICAgICAgICAgICBtRGF0YS5hcHBlbmQobGluZSk7CisgICAgICAgICAg
ICBpZiAobGluZSA9PSAiXHJcbiIpCisgICAgICAgICAgICAgICAgbUVuZE9mSGVhZGVycyA9IHRy
dWU7CisgICAgICAgIH0KKyAgICAgICAgaWYgKG1FbmRPZkhlYWRlcnMpIHsKKyAgICAgICAgICAg
IGhlYWRlciA9IFFIdHRwUmVxdWVzdEhlYWRlcihRU3RyaW5nOjpmcm9tTGF0aW4xKG1EYXRhKSk7
CisgICAgICAgICAgICBpZiAoaGVhZGVyLmlzVmFsaWQoKSkgeworCisgICAgICAgICAgICAgICAg
bU1ldGhvZCA9IGhlYWRlci5tZXRob2QoKTsKKyAgICAgICAgICAgICAgICBtUGF0aCA9IGhlYWRl
ci5wYXRoKCk7CisgICAgICAgICAgICAgICAgbUNvbnRlbnRUeXBlID0gaGVhZGVyLmNvbnRlbnRU
eXBlKCkudG9MYXRpbjEoKTsKKyAgICAgICAgICAgICAgICBtQ29udGVudExlbmd0aCA9IGhlYWRl
ci5jb250ZW50TGVuZ3RoKCk7CisgICAgICAgICAgICAgICAgaWYgKGhlYWRlci5oYXNLZXkoIlVw
Z3JhZGUiKSAmJiAoaGVhZGVyLnZhbHVlKCJVcGdyYWRlIikgPT0gUUxhdGluMVN0cmluZygiV2Vi
U29ja2V0IikpKQorICAgICAgICAgICAgICAgICAgICBtSXNXZWJTb2NrZXQgPSB0cnVlOworCisg
ICAgICAgICAgICAgICAgbURhdGEuY2xlYXIoKTsKKyAgICAgICAgICAgIH0KKyAgICAgICAgfQor
ICAgIH0KKworICAgIGlmIChtRW5kT2ZIZWFkZXJzKSB7CisgICAgICAgIFFTdHJpbmdMaXN0IHBh
dGhBbmRRdWVyeSA9IG1QYXRoLnNwbGl0KCI/Iik7CisgICAgICAgIG1QYXRoID0gcGF0aEFuZFF1
ZXJ5WzBdOworICAgICAgICBpZiAocGF0aEFuZFF1ZXJ5LnNpemUoKSA+IDEpCisgICAgICAgICAg
ICBtUXVlcnkgPSBwYXRoQW5kUXVlcnlbMV07CisgICAgICAgIFFTdHJpbmdMaXN0IHdvcmRzID0g
bVBhdGguc3BsaXQoUVN0cmluZzo6ZnJvbUxhdGluMSgiLyIpKTsKKworICAgICAgICBpZiAobUlz
V2ViU29ja2V0KSB7CisgICAgICAgICAgICAvLyBzd2l0Y2ggdG8gd2Vic29ja2V0LXN0eWxlIFdl
YlNvY2tldFNlcnZpY2UgbWVzc2FnaW5nCisgICAgICAgICAgICBpZiAobVRjcENvbm5lY3Rpb24p
IHsKKyAgICAgICAgICAgICAgICBtVGNwQ29ubmVjdGlvbi0+ZGlzY29ubmVjdChTSUdOQUwocmVh
ZHlSZWFkKCkpKTsKKyAgICAgICAgICAgICAgICBjb25uZWN0KG1UY3BDb25uZWN0aW9uLCBTSUdO
QUwocmVhZHlSZWFkKCkpLCBTTE9UKHdlYlNvY2tldFJlYWR5UmVhZCgpKSk7CisKKyAgICAgICAg
ICAgICAgICBRQnl0ZUFycmF5IGtleTMgPSBtVGNwQ29ubmVjdGlvbi0+cmVhZCg4KTsKKworICAg
ICAgICAgICAgICAgIHF1aW50MzIgbnVtYmVyMSA9IGdldENoYWxsZW5nZU51bWJlckZyb21GaWVs
ZChoZWFkZXIudmFsdWUoIlNlYy1XZWJTb2NrZXQtS2V5MSIpKTsKKyAgICAgICAgICAgICAgICBx
dWludDMyIG51bWJlcjIgPSBnZXRDaGFsbGVuZ2VOdW1iZXJGcm9tRmllbGQoaGVhZGVyLnZhbHVl
KCJTZWMtV2ViU29ja2V0LUtleTIiKSk7CisgICAgICAgICAgICAgICAgCisgICAgICAgICAgICAg
ICAgY2hhciByZXNwb25zZURhdGFbMTZdOworICAgICAgICAgICAgICAgIGdlbmVyYXRlRXhwZWN0
ZWRDaGFsbGVuZ2VSZXNwb25zZShudW1iZXIxLCBudW1iZXIyLCAodW5zaWduZWQgY2hhciopa2V5
My5kYXRhKCksICh1bnNpZ25lZCBjaGFyKilyZXNwb25zZURhdGEpOworICAgICAgICAgICAgICAg
IFFCeXRlQXJyYXkgcmVzcG9uc2UocmVzcG9uc2VEYXRhLCBzaXplb2YocmVzcG9uc2VEYXRhKSk7
CisKKyAgICAgICAgICAgICAgICBRSHR0cFJlc3BvbnNlSGVhZGVyIHJlc3BvbnNlSGVhZGVyKDEw
MSwgIldlYlNvY2tldCBQcm90b2NvbCBIYW5kc2hha2UiLCAxLCAxKTsKKyAgICAgICAgICAgICAg
ICByZXNwb25zZUhlYWRlci5zZXRWYWx1ZSgiVXBncmFkZSIsIGhlYWRlci52YWx1ZSgiVXBncmFk
ZSIpKTsKKyAgICAgICAgICAgICAgICByZXNwb25zZUhlYWRlci5zZXRWYWx1ZSgiQ29ubmVjdGlv
biIsIGhlYWRlci52YWx1ZSgiQ29ubmVjdGlvbiIpKTsKKyAgICAgICAgICAgICAgICByZXNwb25z
ZUhlYWRlci5zZXRWYWx1ZSgiU2VjLVdlYlNvY2tldC1PcmlnaW4iLCBoZWFkZXIudmFsdWUoIk9y
aWdpbiIpKTsKKyAgICAgICAgICAgICAgICByZXNwb25zZUhlYWRlci5zZXRWYWx1ZSgiU2VjLVdl
YlNvY2tldC1Mb2NhdGlvbiIsICgid3M6Ly8iICsgaGVhZGVyLnZhbHVlKCJIb3N0IikgKyBtUGF0
aCkpOworICAgICAgICAgICAgICAgIHJlc3BvbnNlSGVhZGVyLnNldENvbnRlbnRMZW5ndGgocmVz
cG9uc2Uuc2l6ZSgpKTsKKyAgICAgICAgICAgICAgICBtVGNwQ29ubmVjdGlvbi0+d3JpdGUocmVz
cG9uc2VIZWFkZXIudG9TdHJpbmcoKS50b0xhdGluMSgpKTsKKyAgICAgICAgICAgICAgICBtVGNw
Q29ubmVjdGlvbi0+d3JpdGUocmVzcG9uc2UpOworICAgICAgICAgICAgICAgIG1UY3BDb25uZWN0
aW9uLT5mbHVzaCgpOworCisgICAgICAgICAgICAgICAgaWYgKCh3b3Jkcy5zaXplKCkgPT0gNCkK
KyAgICAgICAgICAgICAgICAgICAgJiYgKHdvcmRzWzFdID09IFFTdHJpbmc6OmZyb21MYXRpbjEo
ImRldnRvb2xzIikpCisgICAgICAgICAgICAgICAgICAgICYmICh3b3Jkc1syXSA9PSBRU3RyaW5n
Ojpmcm9tTGF0aW4xKCJwYWdlIikpKSB7CisgICAgICAgICAgICAgICAgICAgIGludCBwYWdlTnVt
ID0gd29yZHNbM10udG9JbnQoKTsKKworICAgICAgICAgICAgICAgICAgICBtSW5zcGVjdG9yQ2xp
ZW50ID0gbVNlcnZlci0+aW5zcGVjdG9yQ2xpZW50KHBhZ2VOdW0pOworICAgICAgICAgICAgICAg
ICAgICAvLyBhdHRhY2ggcmVtb3RlRnJvbnRlbmRDaGFubmVsIHRvIGluc3BlY3RvciwgYWxzbyB0
cmFuc2ZlcnJpbmcgb3duZXJzaGlwCisgICAgICAgICAgICAgICAgICAgIGlmIChtSW5zcGVjdG9y
Q2xpZW50KQorICAgICAgICAgICAgICAgICAgICAgICAgbUluc3BlY3RvckNsaWVudC0+YXR0YWNo
UmVtb3RlRnJvbnRlbmQobmV3IFJlbW90ZUZyb250ZW5kQ2hhbm5lbCh0aGlzKSk7CisgICAgICAg
ICAgICAgICAgfQorCisgICAgICAgICAgICB9CisKKyAgICAgICAgICAgIHJldHVybjsKKyAgICAg
ICAgfQorICAgICAgICBpZiAobUNvbnRlbnRMZW5ndGggJiYgKG1UY3BDb25uZWN0aW9uLT5ieXRl
c0F2YWlsYWJsZSgpIDwgbUNvbnRlbnRMZW5ndGgpKQorICAgICAgICAgICAgcmV0dXJuOworCisg
ICAgICAgIFFCeXRlQXJyYXkgY29udGVudCA9IG1UY3BDb25uZWN0aW9uLT5yZWFkKG1Db250ZW50
TGVuZ3RoKTsKKyAgICAgICAgbUVuZE9mSGVhZGVycyA9IGZhbHNlOworCisgICAgICAgIFFTdHJp
bmcgcGF0aCA9IFFMYXRpbjFTdHJpbmcoIjoiKSArIG1QYXRoOworICAgICAgICBRRmlsZSBmaWxl
KHBhdGgpOworICAgICAgICBpbnQgcmMgPSBmaWxlLm9wZW4oUUlPRGV2aWNlOjpSZWFkT25seSk7
CisgICAgICAgIFFCeXRlQXJyYXkgcmVzcG9uc2U7CisgICAgICAgIGlmIChyYykgCisgICAgICAg
ICAgICByZXNwb25zZSA9IGZpbGUucmVhZEFsbCgpOworCisgICAgICAgIGludCBjb2RlID0gZmls
ZS5leGlzdHMoKSA/IDIwMCA6IDQwNDsKKyAgICAgICAgUVN0cmluZyB0ZXh0ID0gIChjb2RlID09
IDIwMCkgPyBRU3RyaW5nOjpmcm9tTGF0aW4xKCJPSyIpIDogUVN0cmluZzo6ZnJvbUxhdGluMSgi
Tm90IE9LIik7CisgICAgICAgIFFIdHRwUmVzcG9uc2VIZWFkZXIgcmVzcG9uc2VIZWFkZXIoY29k
ZSwgdGV4dCwgMSwgMCk7CisgICAgICAgIHJlc3BvbnNlSGVhZGVyLnNldFZhbHVlcyhtUmVzcG9u
c2VIZWFkZXJzKTsKKyAgICAgICAgcmVzcG9uc2VIZWFkZXIuc2V0Q29udGVudExlbmd0aChyZXNw
b25zZS5zaXplKCkpOworICAgICAgICBpZiAoIW1Db250ZW50VHlwZS5pc0VtcHR5KCkpCisgICAg
ICAgICAgICByZXNwb25zZUhlYWRlci5zZXRDb250ZW50VHlwZShRU3RyaW5nOjpmcm9tTGF0aW4x
KG1Db250ZW50VHlwZSkpOworCisgICAgICAgIFFCeXRlQXJyYXkgYXNjaWlIZWFkZXIgPSByZXNw
b25zZUhlYWRlci50b1N0cmluZygpLnRvQXNjaWkoKTsKKyAgICAgICAgbVRjcENvbm5lY3Rpb24t
PndyaXRlKGFzY2lpSGVhZGVyKTsKKworICAgICAgICBtVGNwQ29ubmVjdGlvbi0+d3JpdGUocmVz
cG9uc2UpOworICAgICAgICBtVGNwQ29ubmVjdGlvbi0+Zmx1c2goKTsKKyAgICAgICAgbVRjcENv
bm5lY3Rpb24tPmNsb3NlKCk7CisKKyAgICAgICAgcmV0dXJuOworICAgIH0KK30KKwordm9pZCBI
dHRwUmVxdWVzdEhhbmRsZXI6OnRjcENvbm5lY3Rpb25EaXNjb25uZWN0ZWQoKQoreworICAgIG1U
Y3BDb25uZWN0aW9uID0gMDsKK30KKworaW50IEh0dHBSZXF1ZXN0SGFuZGxlcjo6d2ViU29ja2V0
U2VuZChRQnl0ZUFycmF5IHBheWxvYWQpCit7CisgICAgbVRjcENvbm5lY3Rpb24tPnB1dENoYXIo
MHgwMCk7CisgICAgaW50IG5CeXRlcyA9IG1UY3BDb25uZWN0aW9uLT53cml0ZShwYXlsb2FkKTsK
KyAgICBtVGNwQ29ubmVjdGlvbi0+cHV0Q2hhcigweEZGKTsKKyAgICBtVGNwQ29ubmVjdGlvbi0+
Zmx1c2goKTsKKyAgICByZXR1cm4gbkJ5dGVzOworfQorCitpbnQgSHR0cFJlcXVlc3RIYW5kbGVy
Ojp3ZWJTb2NrZXRTZW5kKGNvbnN0IGNoYXIqIGRhdGEsIHNpemVfdCBsZW4pCit7CisgICAgbVRj
cENvbm5lY3Rpb24tPnB1dENoYXIoMHgwMCk7CisgICAgaW50IG5CeXRlcyA9IG1UY3BDb25uZWN0
aW9uLT53cml0ZShkYXRhLCBsZW4pOworICAgIG1UY3BDb25uZWN0aW9uLT5wdXRDaGFyKDB4RkYp
OworICAgIG1UY3BDb25uZWN0aW9uLT5mbHVzaCgpOworICAgIHJldHVybiBuQnl0ZXM7Cit9CisK
K3ZvaWQgSHR0cFJlcXVlc3RIYW5kbGVyOjp3ZWJTb2NrZXRSZWFkeVJlYWQoKQoreworICAgIGlm
ICghbVRjcENvbm5lY3Rpb24tPmJ5dGVzQXZhaWxhYmxlKCkpCisgICAgICAgIHJldHVybjsKKyAg
ICBRQnl0ZUFycmF5IGNvbnRlbnQgPSBtVGNwQ29ubmVjdGlvbi0+cmVhZChtVGNwQ29ubmVjdGlv
bi0+Ynl0ZXNBdmFpbGFibGUoKSk7CisgICAgbURhdGEuYXBwZW5kKGNvbnRlbnQpOworICAgIHdo
aWxlIChtRGF0YS5zaXplKCkgPiAwKSB7CisKKyAgICAgICAgaWYgKG1EYXRhWzBdKSB7CisgICAg
ICAgICAgICBxQ3JpdGljYWwoKSA8PCAgIndlYlNvY2tldFJlYWR5UmVhZDogdW5rbm93biBmcmFt
ZSB0eXBlIiA8PCBtRGF0YVswXTsKKyAgICAgICAgICAgIG1EYXRhLmNsZWFyKCk7CisgICAgICAg
ICAgICBtVGNwQ29ubmVjdGlvbi0+Y2xvc2UoKTsKKyAgICAgICAgICAgIHJldHVybjsKKyAgICAg
ICAgfQorICAgICAgICBpbnQgcG9zID0gbURhdGEuaW5kZXhPZigweGZmLCAxKTsKKyAgICAgICAg
aWYgKHBvcyA8IDApCisgICAgICAgICAgICByZXR1cm47CisKKyAgICAgICAgc2l6ZV90IGxlbiA9
IHBvcyAtIDE7CisKKyAgICAgICAgUUJ5dGVBcnJheSBwYXlsb2FkID0gbURhdGEubWlkKDEsIGxl
bik7CisKKyAgICAgICAgaWYgKG1JbnNwZWN0b3JDbGllbnQpCisgICAgICAgICAgICBtSW5zcGVj
dG9yQ2xpZW50LT5kaXNwYXRjaChRU3RyaW5nOjpmcm9tVXRmOChwYXlsb2FkKSk7CisKKyAgICAg
ICAgbURhdGEgPSBtRGF0YS5taWQobGVuKzIpOworICAgIH0KKworfQorCitSZW1vdGVGcm9udGVu
ZENoYW5uZWw6OlJlbW90ZUZyb250ZW5kQ2hhbm5lbChIdHRwUmVxdWVzdEhhbmRsZXIqIHJlcXVl
c3RIYW5kbGVyKQorICAgIDogUU9iamVjdChyZXF1ZXN0SGFuZGxlcikKKyAgICAsIG1fcmVxdWVz
dEhhbmRsZXIocmVxdWVzdEhhbmRsZXIpCit7Cit9CisKK2Jvb2wgUmVtb3RlRnJvbnRlbmRDaGFu
bmVsOjpzZW5kTWVzc2FnZVRvRnJvbnRlbmQoY29uc3QgU3RyaW5nICZtZXNzYWdlKQoreworICAg
IGlmICghbV9yZXF1ZXN0SGFuZGxlcikKKyAgICAgICAgcmV0dXJuIGZhbHNlOworICAgIENTdHJp
bmcgY3N0ciA9IG1lc3NhZ2UudXRmOCgpOworICAgIHJldHVybiBtX3JlcXVlc3RIYW5kbGVyLT53
ZWJTb2NrZXRTZW5kKGNzdHIuZGF0YSgpLCBjc3RyLmxlbmd0aCgpKTsKK30KKworfQpkaWZmIC0t
Z2l0IGEvV2ViS2l0L3F0L1dlYkNvcmVTdXBwb3J0L0luc3BlY3RvclNlcnZlclF0LmggYi9XZWJL
aXQvcXQvV2ViQ29yZVN1cHBvcnQvSW5zcGVjdG9yU2VydmVyUXQuaApuZXcgZmlsZSBtb2RlIDEw
MDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi41ZTg1
ZDc1NzQzYTFkZThmYTA4ZGFmODMyYjk4OTE1N2Q4ZTlhMDcyCi0tLSAvZGV2L251bGwKKysrIGIv
V2ViS2l0L3F0L1dlYkNvcmVTdXBwb3J0L0luc3BlY3RvclNlcnZlclF0LmgKQEAgLTAsMCArMSwx
MTUgQEAKKy8qCisgICAgQ29weXJpZ2h0IChDKSAyMDEwIE5va2lhIENvcnBvcmF0aW9uIGFuZC9v
ciBpdHMgc3Vic2lkaWFyeSgtaWVzKQorCisgICAgVGhpcyBsaWJyYXJ5IGlzIGZyZWUgc29mdHdh
cmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vcgorICAgIG1vZGlmeSBpdCB1bmRlciB0
aGUgdGVybXMgb2YgdGhlIEdOVSBMaWJyYXJ5IEdlbmVyYWwgUHVibGljCisgICAgTGljZW5zZSBh
cyBwdWJsaXNoZWQgYnkgdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbjsgZWl0aGVyCisgICAg
dmVyc2lvbiAyIG9mIHRoZSBMaWNlbnNlLCBvciAoYXQgeW91ciBvcHRpb24pIGFueSBsYXRlciB2
ZXJzaW9uLgorCisgICAgVGhpcyBsaWJyYXJ5IGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRo
YXQgaXQgd2lsbCBiZSB1c2VmdWwsCisgICAgYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRo
b3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKKyAgICBNRVJDSEFOVEFCSUxJVFkgb3Ig
RklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlIEdOVQorICAgIExpYnJh
cnkgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBmb3IgbW9yZSBkZXRhaWxzLgorCisgICAgWW91IHNo
b3VsZCBoYXZlIHJlY2VpdmVkIGEgY29weSBvZiB0aGUgR05VIExpYnJhcnkgR2VuZXJhbCBQdWJs
aWMgTGljZW5zZQorICAgIGFsb25nIHdpdGggdGhpcyBsaWJyYXJ5OyBzZWUgdGhlIGZpbGUgQ09Q
WUlORy5MSUIuICBJZiBub3QsIHdyaXRlIHRvCisgICAgdGhlIEZyZWUgU29mdHdhcmUgRm91bmRh
dGlvbiwgSW5jLiwgNTEgRnJhbmtsaW4gU3RyZWV0LCBGaWZ0aCBGbG9vciwKKyAgICBCb3N0b24s
IE1BIDAyMTEwLTEzMDEsIFVTQS4KKyovCisKKyNpZm5kZWYgSW5zcGVjdG9yU2VydmVyUXRfaAor
I2RlZmluZSBJbnNwZWN0b3JTZXJ2ZXJRdF9oCisKK2NsYXNzIFFUY3BTZXJ2ZXI7CitjbGFzcyBR
VGNwU29ja2V0OworI2luY2x1ZGUgPFFMaXN0PgorI2luY2x1ZGUgPFFNYXA+CisjaW5jbHVkZSA8
UU9iamVjdD4KKyNpbmNsdWRlIDxRUGFpcj4KKyNpbmNsdWRlIDxRU3RyaW5nPgorI2luY2x1ZGUg
PHd0Zi9Gb3J3YXJkLmg+CisKK2NsYXNzIFFXZWJQYWdlOworCituYW1lc3BhY2UgV2ViQ29yZSB7
CitjbGFzcyBIdHRwUmVxdWVzdEhhbmRsZXI7CitjbGFzcyBJbnNwZWN0b3JDbGllbnRRdDsKKwor
Y2xhc3MgSW5zcGVjdG9yU2VydmVyUXQgOiBwdWJsaWMgUU9iamVjdCB7CisgICAgUV9PQkpFQ1QK
KyAgICAgICAgcHVibGljOgorCisgICAgc3RhdGljIEluc3BlY3RvclNlcnZlclF0KiBzZXJ2ZXIo
KTsKKworICAgIHZvaWQgbGlzdGVuKHF1aW50MTYgcG9ydCk7CisKKyAgICB2b2lkIHJlZ2lzdGVy
UGFnZShRV2ViUGFnZSAqcGFnZSwgSW5zcGVjdG9yQ2xpZW50UXQqIGNsaWVudCk7CisgICAgdm9p
ZCB1bnJlZ2lzdGVyUGFnZShRV2ViUGFnZSAqcGFnZSk7CisKKyAgICB2b2lkIGNsb3NlKCk7Cisg
ICAgSW5zcGVjdG9yQ2xpZW50UXQqIGluc3BlY3RvckNsaWVudChpbnQgcGFnZU51bSk7CisKK3By
b3RlY3RlZDoKKyAgICBJbnNwZWN0b3JTZXJ2ZXJRdCgpOworICAgIHZpcnR1YWwgfkluc3BlY3Rv
clNlcnZlclF0KCk7CisKK3ByaXZhdGU6CisgICAgUVRjcFNlcnZlciogbVRjcFNlcnZlcjsKKyAg
ICBRTWFwPGludCwgUVdlYlBhZ2UqPiBtUGFnZXM7CisgICAgUU1hcDxRV2ViUGFnZSosIEluc3Bl
Y3RvckNsaWVudFF0Kj4gbUluc3BlY3RvckNsaWVudHM7CisgICAgaW50IG1QYWdlTnVtYmVyOwor
CisgICAgcHJpdmF0ZSBzbG90czoKKyAgICB2b2lkIGdvdE5ld0Nvbm5lY3Rpb24oKTsKKworfTsK
KworY2xhc3MgUmVtb3RlRnJvbnRlbmRDaGFubmVsIDogcHVibGljIFFPYmplY3QgeworICAgIFFf
T0JKRUNUCisgICAgICAgIHB1YmxpYzoKKworICAgIFJlbW90ZUZyb250ZW5kQ2hhbm5lbChIdHRw
UmVxdWVzdEhhbmRsZXIqIHJlcXVlc3RIYW5kbGVyKTsKKyAgICBib29sIHNlbmRNZXNzYWdlVG9G
cm9udGVuZChjb25zdCBTdHJpbmcmIG1lc3NhZ2UpOworCitwcml2YXRlOgorICAgIEh0dHBSZXF1
ZXN0SGFuZGxlciogbV9yZXF1ZXN0SGFuZGxlcjsKK307CisKK2NsYXNzIEh0dHBSZXF1ZXN0SGFu
ZGxlciA6IHB1YmxpYyBRT2JqZWN0IHsKKyAgICBRX09CSkVDVAorCisgICAgICAgIHB1YmxpYzoK
KworICAgIEh0dHBSZXF1ZXN0SGFuZGxlcihRVGNwU29ja2V0ICp0Y3BDb25uZWN0aW9uLCBJbnNw
ZWN0b3JTZXJ2ZXJRdCAqc2VydmVyKTsKKyAgICB2aXJ0dWFsIH5IdHRwUmVxdWVzdEhhbmRsZXIo
KTsKKyAgICB2aXJ0dWFsIGludCB3ZWJTb2NrZXRTZW5kKFFCeXRlQXJyYXkgcGF5bG9hZCk7Cisg
ICAgdmlydHVhbCBpbnQgd2ViU29ja2V0U2VuZChjb25zdCBjaGFyICpwYXlsb2FkLCBzaXplX3Qg
bGVuKTsKKworcHJpdmF0ZToKKyAgICBRVGNwU29ja2V0KiBtVGNwQ29ubmVjdGlvbjsKKyAgICBJ
bnNwZWN0b3JTZXJ2ZXJRdCogbVNlcnZlcjsKKworICAgIFFTdHJpbmcgbU1ldGhvZDsKKyAgICBR
U3RyaW5nIG1QYXRoOworICAgIFFTdHJpbmcgbVF1ZXJ5OworICAgIFFCeXRlQXJyYXkgbUNvbnRl
bnRUeXBlOworICAgIGludCBtQ29udGVudExlbmd0aDsKKyAgICBib29sIG1FbmRPZkhlYWRlcnM7
CisgICAgUUJ5dGVBcnJheSBtRGF0YTsKKyAgICBRTGlzdDxRUGFpcjxRU3RyaW5nLCBRU3RyaW5n
PiA+IG1SZXNwb25zZUhlYWRlcnM7CisgICAgYm9vbCBtSXNXZWJTb2NrZXQ7CisgICAgSW5zcGVj
dG9yQ2xpZW50UXQqIG1JbnNwZWN0b3JDbGllbnQ7CisKKyAgICB2b2lkIGhhbmRsZUluc3BlY3Rv
clJlcXVlc3QoUVN0cmluZ0xpc3Qgd29yZHMpOworICAgIHZvaWQgaGFuZGxlRnJvbUZyb250ZW5k
UmVxdWVzdCgpOworICAgIHZvaWQgaGFuZGxlUmVzb3VyY2VSZXF1ZXN0KFFTdHJpbmdMaXN0IHdv
cmRzKTsKKworICAgIHByaXZhdGUgc2xvdHM6CisgICAgdm9pZCB0Y3BSZWFkeVJlYWQoKTsKKyAg
ICB2b2lkIHRjcENvbm5lY3Rpb25EaXNjb25uZWN0ZWQoKTsKKyAgICB2b2lkIHdlYlNvY2tldFJl
YWR5UmVhZCgpOworCit9OworCit9CisjZW5kaWYKZGlmZiAtLWdpdCBhL1dlYktpdFRvb2xzL0No
YW5nZUxvZyBiL1dlYktpdFRvb2xzL0NoYW5nZUxvZwppbmRleCA5MTViMmZkOTg5ZDhkNDcwOGIz
YjQzNjI5NzgwY2FmYmY3YTM1MjVkLi4zOGQwYTUyZmM2Nzk2OWU0N2NjMWVhOTM0OWE5NmFhYTFm
OTNiYzA4IDEwMDY0NAotLS0gYS9XZWJLaXRUb29scy9DaGFuZ2VMb2cKKysrIGIvV2ViS2l0VG9v
bHMvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMjYgQEAKKzIwMTAtMDgtMTkgIEphbWV5IEhpY2tzICA8
amFtZXkuaGlja3NAbm9raWEuY29tPgorCisgICAgICAgIFJldmlld2VkIGJ5IEFyaXlhIEhpZGF5
YXQuCisKKyAgICAgICAgW1F0XSBSZW1vdGUgV2ViIEluc3BlY3RvciBzdXBwb3J0IGZvciBRdFdl
YktpdAorCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD00
Mzk4OAorCisgICAgICAgIFJ1bnMgYSB3ZWIgZGVidWcgc2VydmVyIG9uIHBvcnQgc3BlY2lmaWVk
IGJ5IFF0VGVzdEJyb3dzZXIKKyAgICAgICAgYXJndW1lbnQgLXJlbW90ZS1pbnNwZWN0b3ItcG9y
dC4gUHJvcGVydHkgX3Ffd2ViSW5zcGVjdG9yU2VydmVyUG9ydCBvZgorICAgICAgICB0aGUgUVdl
YlBhZ2UgaW5zdGFuY2Ugd2lsbCBiZSBzZXQgYWNjb3JkaW5nIHRvIHRoZSBhcmd1bWVudC4gQWxs
CisgICAgICAgIHBhZ2VzIHdpdGggdGhhdCBwcm9wZXJ0eSBzZXQgd2lsbCBiZSByZW1vdGVseSBp
bnNwZWN0YWJsZS4KKworICAgICAgICBVUkwgZm9yIHJlbW90ZSBpbnNwZWN0aW9uIG9mIGZpcnN0
IFFXZWJQYWdlIGlzCisgICAgICAgICAgICBodHRwOi8vbG9jYWxob3N0OjkyMjIvZGV2dG9vbHMv
cGFnZS8xCisgICAgICAgIHdoZXJlIDEgaXMgdGhlIG51bWJlciBvZiB0aGUgUVdlYlBhZ2UgaW5z
dGFuY2UuCisKKyAgICAgICAgKiBRdFRlc3RCcm93c2VyL2xhdW5jaGVyd2luZG93LmNwcDoKKyAg
ICAgICAgKExhdW5jaGVyV2luZG93Ojppbml0KToKKyAgICAgICAgKiBRdFRlc3RCcm93c2VyL2xh
dW5jaGVyd2luZG93Lmg6CisgICAgICAgICogUXRUZXN0QnJvd3Nlci9tYWluLmNwcDoKKyAgICAg
ICAgKExhdW5jaGVyQXBwbGljYXRpb246OmhhbmRsZVVzZXJPcHRpb25zKToKKwogMjAxMC0wOC0x
OSAgUGF2ZWwgRmVsZG1hbiAgPHBmZWxkbWFuQGNocm9taXVtLm9yZz4KIAogICAgICAgICBSZXZp
ZXdlZCBieSBZdXJ5IFNlbWlraGF0c2t5LgpkaWZmIC0tZ2l0IGEvV2ViS2l0VG9vbHMvUXRUZXN0
QnJvd3Nlci9sYXVuY2hlcndpbmRvdy5jcHAgYi9XZWJLaXRUb29scy9RdFRlc3RCcm93c2VyL2xh
dW5jaGVyd2luZG93LmNwcAppbmRleCA5YjdhYTBkMmJhMzAwM2I3MzM2M2Q2ZGMzZTY0NjkyNjhh
MTg0ZjkyLi5mNTE3Yzc4YzM4NTFhNGY1YWFlYzA3ZGY2ZWRhZmYzOTRiYWZkNWIzIDEwMDY0NAot
LS0gYS9XZWJLaXRUb29scy9RdFRlc3RCcm93c2VyL2xhdW5jaGVyd2luZG93LmNwcAorKysgYi9X
ZWJLaXRUb29scy9RdFRlc3RCcm93c2VyL2xhdW5jaGVyd2luZG93LmNwcApAQCAtOTEsNiArOTEs
MTAgQEAgdm9pZCBMYXVuY2hlcldpbmRvdzo6aW5pdCgpCiAgICAgbV9pbnNwZWN0b3ItPmhpZGUo
KTsKICAgICBjb25uZWN0KHRoaXMsIFNJR05BTChkZXN0cm95ZWQoKSksIG1faW5zcGVjdG9yLCBT
TE9UKGRlbGV0ZUxhdGVyKCkpKTsKIAorICAgIGlmIChtX3dpbmRvd09wdGlvbnMucmVtb3RlSW5z
cGVjdG9yUG9ydCkKKyAgICAgICAgcGFnZSgpLT5zZXRQcm9wZXJ0eSgiX3Ffd2ViSW5zcGVjdG9y
U2VydmVyUG9ydCIsIG1fd2luZG93T3B0aW9ucy5yZW1vdGVJbnNwZWN0b3JQb3J0KTsKKworCiAg
ICAgLy8gdGhlIHpvb20gdmFsdWVzIGFyZSBjaG9zZW4gdG8gYmUgbGlrZSBpbiBNb3ppbGxhIEZp
cmVmb3ggMwogICAgIGlmICghbV96b29tTGV2ZWxzLmNvdW50KCkpIHsKICAgICAgICAgbV96b29t
TGV2ZWxzIDw8IDMwIDw8IDUwIDw8IDY3IDw8IDgwIDw8IDkwOwpkaWZmIC0tZ2l0IGEvV2ViS2l0
VG9vbHMvUXRUZXN0QnJvd3Nlci9sYXVuY2hlcndpbmRvdy5oIGIvV2ViS2l0VG9vbHMvUXRUZXN0
QnJvd3Nlci9sYXVuY2hlcndpbmRvdy5oCmluZGV4IDY1ZjM5MGQ4OTRkNTQ0M2UwN2M1NDAwMzFk
ZmIxNWU1M2ZiYTQ2ZjcuLmUxYzc0NzBhODZjNTQ4ZGRiNzU1Njg2M2IxMjU1OGY2MDRjNmY0OWYg
MTAwNjQ0Ci0tLSBhL1dlYktpdFRvb2xzL1F0VGVzdEJyb3dzZXIvbGF1bmNoZXJ3aW5kb3cuaAor
KysgYi9XZWJLaXRUb29scy9RdFRlc3RCcm93c2VyL2xhdW5jaGVyd2luZG93LmgKQEAgLTExMCw2
ICsxMTAsNyBAQCBwdWJsaWM6CiAgICAgYm9vbCB1c2VRR0xXaWRnZXRWaWV3cG9ydDsKICNlbmRp
ZgogICAgIFFVcmwgaW5zcGVjdG9yVXJsOworICAgIHF1aW50MTYgcmVtb3RlSW5zcGVjdG9yUG9y
dDsKIH07CiAKIGNsYXNzIExhdW5jaGVyV2luZG93IDogcHVibGljIE1haW5XaW5kb3cgewpkaWZm
IC0tZ2l0IGEvV2ViS2l0VG9vbHMvUXRUZXN0QnJvd3Nlci9tYWluLmNwcCBiL1dlYktpdFRvb2xz
L1F0VGVzdEJyb3dzZXIvbWFpbi5jcHAKaW5kZXggODQyMjkwYjVmMWEzODlmNGI1NGZiZTZkMzM5
YmI3OGE5MDBhNmE1YS4uMmY1OWVhYjY0ZDI2ODdmZjUzZGQzZjZhZjcxODkzMWE5ZjExNDc2YiAx
MDA2NDQKLS0tIGEvV2ViS2l0VG9vbHMvUXRUZXN0QnJvd3Nlci9tYWluLmNwcAorKysgYi9XZWJL
aXRUb29scy9RdFRlc3RCcm93c2VyL21haW4uY3BwCkBAIC0xNzAsNiArMTcwLDExIEBAIHZvaWQg
TGF1bmNoZXJBcHBsaWNhdGlvbjo6aGFuZGxlVXNlck9wdGlvbnMoKQogICAgIGlmIChpbnNwZWN0
b3JVcmxJbmRleCAhPSAtMSkKICAgICAgICB3aW5kb3dPcHRpb25zLmluc3BlY3RvclVybCA9IHRh
a2VPcHRpb25WYWx1ZSgmYXJncywgaW5zcGVjdG9yVXJsSW5kZXgpOwogCisgICAgUVN0cmluZyBy
ZW1vdGVJbnNwZWN0b3JQb3J0QXJnKCItcmVtb3RlLWluc3BlY3Rvci1wb3J0Iik7CisgICAgaW50
IHJlbW90ZUluc3BlY3RvclBvcnRJbmRleCA9IGFyZ3MuaW5kZXhPZihyZW1vdGVJbnNwZWN0b3JQ
b3J0QXJnKTsKKyAgICBpZiAocmVtb3RlSW5zcGVjdG9yUG9ydEluZGV4ICE9IC0xKQorICAgICAg
ICB3aW5kb3dPcHRpb25zLnJlbW90ZUluc3BlY3RvclBvcnQgPSB0YWtlT3B0aW9uVmFsdWUoJmFy
Z3MsIHJlbW90ZUluc3BlY3RvclBvcnRJbmRleCkudG9JbnQoKTsKKwogICAgIGludCByb2JvdElu
ZGV4ID0gYXJncy5pbmRleE9mKCItciIpOwogICAgIGlmIChyb2JvdEluZGV4ICE9IC0xKSB7CiAg
ICAgICAgIFFTdHJpbmcgbGlzdEZpbGUgPSB0YWtlT3B0aW9uVmFsdWUoJmFyZ3MsIHJvYm90SW5k
ZXgpOwo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>65565</attachid>
            <date>2010-08-26 07:50:00 -0700</date>
            <delta_ts>2010-08-26 08:10:16 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-43988-20100826104959.patch</filename>
            <type>text/plain</type>
            <size>15803</size>
            <attacher name="Jamey Hicks">jamey.hicks</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1dlYkNvcmUvQ2hhbmdlTG9nIGIvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXgg
MWNmZGQwMzBlOTE1ZTk0OGUyM2U5ZDgzZmEyNDYzYjUwMDRlNmIwMi4uYjM3NzhmMGE5YjQ0NDk4
NmViMjExYzYwNmVkZWUzYTcyMzhhMDVhNCAxMDA2NDQKLS0tIGEvV2ViQ29yZS9DaGFuZ2VMb2cK
KysrIGIvV2ViQ29yZS9DaGFuZ2VMb2cKQEAgLTEsMyArMSwyMiBAQAorMjAxMC0wOC0yNiAgSmFt
ZXkgSGlja3MgIDxqYW1leS5oaWNrc0Bub2tpYS5jb20+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkg
S2VubmV0aCBSb2hkZSBDaHJpc3RpYW5zZW4uCisKKyAgICAgICAgW1F0XSBSZW1vdGUgV2ViIElu
c3BlY3RvciBzdXBwb3J0IGZvciBRdFdlYktpdAorCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJr
aXQub3JnL3Nob3dfYnVnLmNnaT9pZD00Mzk4OAorCisgICAgICAgIFJ1bnMgYSB3ZWIgZGVidWcg
c2VydmVyIG9uIHBvcnQgc3BlY2lmaWVkIGJ5IFF0VGVzdEJyb3dzZXIKKyAgICAgICAgYXJndW1l
bnQgLXJlbW90ZS1pbnNwZWN0b3ItcG9ydC4gUHJvcGVydHkgX3Ffd2ViSW5zcGVjdG9yU2VydmVy
UG9ydCBvZgorICAgICAgICB0aGUgUVdlYlBhZ2UgaW5zdGFuY2Ugd2lsbCBiZSBzZXQgYWNjb3Jk
aW5nIHRvIHRoZSBhcmd1bWVudC4gQWxsCisgICAgICAgIHBhZ2VzIHdpdGggdGhhdCBwcm9wZXJ0
eSBzZXQgd2lsbCBiZSByZW1vdGVseSBpbnNwZWN0YWJsZS4KKworICAgICAgICBVUkwgZm9yIHJl
bW90ZSBpbnNwZWN0aW9uIG9mIGZpcnN0IFFXZWJQYWdlIGlzCisgICAgICAgICAgICBodHRwOi8v
bG9jYWxob3N0OjkyMjIvZGV2dG9vbHMvcGFnZS8xCisgICAgICAgIHdoZXJlIDEgaXMgdGhlIG51
bWJlciBvZiB0aGUgUVdlYlBhZ2UgaW5zdGFuY2UuCisKKyAgICAgICAgKiBXZWJDb3JlLnBybzoK
KwogMjAxMC0wOC0yNiAgSWx5YSBUaWtob25vdnNreSAgPGxvaXNsb0BjaHJvbWl1bS5vcmc+CiAK
ICAgICAgICAgUmV2aWV3ZWQgYnkgWXVyeSBTZW1pa2hhdHNreS4KZGlmZiAtLWdpdCBhL1dlYkNv
cmUvV2ViQ29yZS5wcm8gYi9XZWJDb3JlL1dlYkNvcmUucHJvCmluZGV4IGQxZmY4YjI0MDhiOTdm
OWI5ZGUwYjI5ZTk4ZGYwZWQxNTJmZDkyMWUuLjY2NDhhZDhhOGEzYjJkZWU5YTUwNDJmNjUyNGEy
MTk0OTI4ZDI0NDEgMTAwNjQ0Ci0tLSBhL1dlYkNvcmUvV2ViQ29yZS5wcm8KKysrIGIvV2ViQ29y
ZS9XZWJDb3JlLnBybwpAQCAtMjE5Myw2ICsyMTkzLDcgQEAgSEVBREVSUyArPSBcCiAgICAgeG1s
L1hTTFRQcm9jZXNzb3IuaCBcCiAgICAgeG1sL1hTTFRVbmljb2RlU29ydC5oIFwKICAgICAkJFBX
RC8uLi9XZWJLaXQvcXQvQXBpL3F3ZWJwbHVnaW5kYXRhYmFzZV9wLmggXAorICAgICQkUFdELy4u
L1dlYktpdC9xdC9XZWJDb3JlU3VwcG9ydC9JbnNwZWN0b3JTZXJ2ZXJRdC5oIFwKICAgICAkJFBX
RC8uLi9XZWJLaXQvcXQvV2ViQ29yZVN1cHBvcnQvUXRGYWxsYmFja1dlYlBvcHVwLmggXAogICAg
ICQkUFdELy4uL1dlYktpdC9xdC9XZWJDb3JlU3VwcG9ydC9GcmFtZUxvYWRlckNsaWVudFF0Lmgg
XAogICAgICQkUFdELy4uL1dlYktpdC9xdC9XZWJDb3JlU3VwcG9ydC9GcmFtZU5ldHdvcmtpbmdD
b250ZXh0UXQuaCBcCkBAIC0yMjg4LDYgKzIyODksNyBAQCBTT1VSQ0VTICs9IFwKICAgICAuLi9X
ZWJLaXQvcXQvV2ViQ29yZVN1cHBvcnQvRWRpdENvbW1hbmRRdC5jcHAgXAogICAgIC4uL1dlYktp
dC9xdC9XZWJDb3JlU3VwcG9ydC9GcmFtZUxvYWRlckNsaWVudFF0LmNwcCBcCiAgICAgLi4vV2Vi
S2l0L3F0L1dlYkNvcmVTdXBwb3J0L0ZyYW1lTmV0d29ya2luZ0NvbnRleHRRdC5jcHAgXAorICAg
IC4uL1dlYktpdC9xdC9XZWJDb3JlU3VwcG9ydC9JbnNwZWN0b3JTZXJ2ZXJRdC5jcHAgXAogICAg
IC4uL1dlYktpdC9xdC9XZWJDb3JlU3VwcG9ydC9JbnNwZWN0b3JDbGllbnRRdC5jcHAgXAogICAg
IC4uL1dlYktpdC9xdC9XZWJDb3JlU3VwcG9ydC9Ob3RpZmljYXRpb25QcmVzZW50ZXJDbGllbnRR
dC5jcHAgXAogICAgIC4uL1dlYktpdC9xdC9XZWJDb3JlU3VwcG9ydC9QYWdlQ2xpZW50UXQuY3Bw
IFwKZGlmZiAtLWdpdCBhL1dlYktpdC9xdC9BcGkvcXdlYmluc3BlY3Rvci5jcHAgYi9XZWJLaXQv
cXQvQXBpL3F3ZWJpbnNwZWN0b3IuY3BwCmluZGV4IDgwMmVhOTgwNDhmYTViOTdlNGZmYzNkNTA3
YzMyODVhMGNiNmEzZTMuLmJjOTAwYzcxMzQ0YjhiNTY3ZTIxNTMyOGNjNjVlOTdhNGQ3OTFhZTQg
MTAwNjQ0Ci0tLSBhL1dlYktpdC9xdC9BcGkvcXdlYmluc3BlY3Rvci5jcHAKKysrIGIvV2ViS2l0
L3F0L0FwaS9xd2ViaW5zcGVjdG9yLmNwcApAQCAtMTk2LDYgKzE5NiwzMSBAQCB2b2lkIFFXZWJJ
bnNwZWN0b3JQcml2YXRlOjpzZXRGcm9udGVuZChRV2lkZ2V0KiBuZXdGcm9udGVuZCkKICAgICB9
CiB9CiAKKy8qISAKKyAqIFxpbnRlcm5hbCAKKyAqLwordm9pZCBRV2ViSW5zcGVjdG9yUHJpdmF0
ZTo6YXR0YWNoUmVtb3RlRnJvbnRlbmQoUU9iamVjdCogbmV3UmVtb3RlRnJvbnRlbmQpCit7Cisg
ICAgaWYgKHJlbW90ZUZyb250ZW5kKQorICAgICAgICByZW1vdGVGcm9udGVuZC0+c2V0UGFyZW50
KDApOworCisgICAgcmVtb3RlRnJvbnRlbmQgPSBuZXdSZW1vdGVGcm9udGVuZDsKKworICAgIGlm
IChyZW1vdGVGcm9udGVuZCkKKyAgICAgICAgcmVtb3RlRnJvbnRlbmQtPnNldFBhcmVudChxKTsK
K30KKworLyohIAorICogXGludGVybmFsIAorICovCit2b2lkIFFXZWJJbnNwZWN0b3JQcml2YXRl
OjpkZXRhY2hSZW1vdGVGcm9udGVuZCgpCit7CisgICAgaWYgKHJlbW90ZUZyb250ZW5kKSB7Cisg
ICAgICAgIHJlbW90ZUZyb250ZW5kLT5kZWxldGVMYXRlcigpOworICAgICAgICByZW1vdGVGcm9u
dGVuZCA9IDA7CisgICAgfQorfQorCiB2b2lkIFFXZWJJbnNwZWN0b3JQcml2YXRlOjphZGp1c3RG
cm9udGVuZFNpemUoY29uc3QgUVNpemUmIHNpemUpCiB7CiAgICAgaWYgKGZyb250ZW5kKQpkaWZm
IC0tZ2l0IGEvV2ViS2l0L3F0L0FwaS9xd2ViaW5zcGVjdG9yX3AuaCBiL1dlYktpdC9xdC9BcGkv
cXdlYmluc3BlY3Rvcl9wLmgKaW5kZXggNGQzMjdjYzVhOTExZjdlNTIyOTgwNGYxZDhlMjc5YTQ1
NDhlZDc1Ny4uOTZmNjRiYjVhMGZhYjhkMDQ5YjBlNTg3ZjM3ZjdlZWVlZjcwNjNlMCAxMDA2NDQK
LS0tIGEvV2ViS2l0L3F0L0FwaS9xd2ViaW5zcGVjdG9yX3AuaAorKysgYi9XZWJLaXQvcXQvQXBp
L3F3ZWJpbnNwZWN0b3JfcC5oCkBAIC0zMywxNCArMzMsMTggQEAgcHVibGljOgogICAgIDogcShx
cSkKICAgICAsIHBhZ2UoMCkKICAgICAsIGZyb250ZW5kKDApCisgICAgLCByZW1vdGVGcm9udGVu
ZCgwKQogICAgIHt9CiAKICAgICB2b2lkIHNldEZyb250ZW5kKFFXaWRnZXQqIG5ld0Zyb250ZW5k
KTsKKyAgICB2b2lkIGF0dGFjaFJlbW90ZUZyb250ZW5kKFFPYmplY3QqIG5ld1JlbW90ZUZyb250
ZW5kKTsKKyAgICB2b2lkIGRldGFjaFJlbW90ZUZyb250ZW5kKCk7CiAgICAgdm9pZCBhZGp1c3RG
cm9udGVuZFNpemUoY29uc3QgUVNpemUmIHNpemUpOwogCiAgICAgUVdlYkluc3BlY3RvciogcTsK
ICAgICBRV2ViUGFnZSogcGFnZTsKICAgICBRV2lkZ2V0KiBmcm9udGVuZDsKKyAgICBRT2JqZWN0
KiByZW1vdGVGcm9udGVuZDsKIH07CiAKICNlbmRpZgpkaWZmIC0tZ2l0IGEvV2ViS2l0L3F0L0Fw
aS9xd2VicGFnZS5jcHAgYi9XZWJLaXQvcXQvQXBpL3F3ZWJwYWdlLmNwcAppbmRleCA1ZWVlMjFj
YzFkOGI2MTFkZTljNDM1ZjJiZTYxY2EzYjE1ZjZhNzdkLi42OWVlOTY4MmMzYzcwNTVmZWY1Y2E3
MWMzNTEzZGNhNzQ4YTdlOGRhIDEwMDY0NAotLS0gYS9XZWJLaXQvcXQvQXBpL3F3ZWJwYWdlLmNw
cAorKysgYi9XZWJLaXQvcXQvQXBpL3F3ZWJwYWdlLmNwcApAQCAtNzYsNiArNzYsNyBAQAogI2lu
Y2x1ZGUgIkhUTUxJbnB1dEVsZW1lbnQuaCIKICNpbmNsdWRlICJIVE1MTmFtZXMuaCIKICNpbmNs
dWRlICJIaXRUZXN0UmVzdWx0LmgiCisjaW5jbHVkZSAiSW5zcGVjdG9yU2VydmVyUXQuaCIKICNp
bmNsdWRlICJXaW5kb3dGZWF0dXJlcy5oIgogI2luY2x1ZGUgIkxvY2FsaXplZFN0cmluZ3MuaCIK
ICNpbmNsdWRlICJDYWNoZS5oIgpAQCAtMTI5Niw2ICsxMjk3LDEwIEBAIHZvaWQgUVdlYlBhZ2VQ
cml2YXRlOjpkeW5hbWljUHJvcGVydHlDaGFuZ2VFdmVudChRRHluYW1pY1Byb3BlcnR5Q2hhbmdl
RXZlbnQqIGV2CiAgICAgICAgIGZyYW1lLT50aWxlZEJhY2tpbmdTdG9yZSgpLT5zZXRLZWVwQW5k
Q292ZXJBcmVhTXVsdGlwbGllcnMoa2VlcE11bHRpcGxpZXIsIGNvdmVyTXVsdGlwbGllcik7CiAg
ICAgfQogI2VuZGlmCisgICAgZWxzZSBpZiAoZXZlbnQtPnByb3BlcnR5TmFtZSgpID09ICJfcV93
ZWJJbnNwZWN0b3JTZXJ2ZXJQb3J0IikgeworICAgICAgICBJbnNwZWN0b3JTZXJ2ZXJRdCogaW5z
cGVjdG9yU2VydmVyID0gSW5zcGVjdG9yU2VydmVyUXQ6OnNlcnZlcigpOworICAgICAgICBpbnNw
ZWN0b3JTZXJ2ZXItPmxpc3RlbihpbnNwZWN0b3JTZXJ2ZXJQb3J0KCkpOworICAgIH0KIH0KICNl
bmRpZgogCkBAIC0xNTUzLDYgKzE1NTgsMTUgQEAgSW5zcGVjdG9yQ29udHJvbGxlciogUVdlYlBh
Z2VQcml2YXRlOjppbnNwZWN0b3JDb250cm9sbGVyKCkKICNlbmRpZgogfQogCitxdWludDE2IFFX
ZWJQYWdlUHJpdmF0ZTo6aW5zcGVjdG9yU2VydmVyUG9ydCgpCit7CisjaWYgRU5BQkxFKElOU1BF
Q1RPUikgJiYgIWRlZmluZWQoUVRfTk9fUFJPUEVSVElFUykKKyAgICBpZiAocSAmJiBxLT5wcm9w
ZXJ0eSgiX3Ffd2ViSW5zcGVjdG9yU2VydmVyUG9ydCIpLmlzVmFsaWQoKSkKKyAgICAgICAgcmV0
dXJuIHEtPnByb3BlcnR5KCJfcV93ZWJJbnNwZWN0b3JTZXJ2ZXJQb3J0IikudG9JbnQoKTsKKyNl
bmRpZgorICAgIHJldHVybiAwOworfQorCiAKIC8qIQogICAgXGVudW0gUVdlYlBhZ2U6OkZpbmRG
bGFnCkBAIC0xODg3LDYgKzE5MDEsNyBAQCBRV2ViUGFnZTo6flFXZWJQYWdlKCkKICAgICAgICAg
ZWxzZQogICAgICAgICAgICAgZC0+aW5zcGVjdG9yLT5zZXRQYWdlKDApOwogICAgIH0KKwogICAg
IGRlbGV0ZSBkOwogfQogCmRpZmYgLS1naXQgYS9XZWJLaXQvcXQvQXBpL3F3ZWJwYWdlX3AuaCBi
L1dlYktpdC9xdC9BcGkvcXdlYnBhZ2VfcC5oCmluZGV4IDYzMTBlYWZkODNiNDEwMmMwY2U4ZGU4
YTliZmJlNWI2MjU5ODFmMDIuLjlhYjUxZGZkM2U0MjkwYWRmMDFjNzE2OTU5YzIzYzFiOGI2ZDE1
ODkgMTAwNjQ0Ci0tLSBhL1dlYktpdC9xdC9BcGkvcXdlYnBhZ2VfcC5oCisrKyBiL1dlYktpdC9x
dC9BcGkvcXdlYnBhZ2VfcC5oCkBAIC0xMzksNiArMTM5LDcgQEAgcHVibGljOgogICAgIHZvaWQg
c2V0SW5zcGVjdG9yKFFXZWJJbnNwZWN0b3IqKTsKICAgICBRV2ViSW5zcGVjdG9yKiBnZXRPckNy
ZWF0ZUluc3BlY3RvcigpOwogICAgIFdlYkNvcmU6Okluc3BlY3RvckNvbnRyb2xsZXIqIGluc3Bl
Y3RvckNvbnRyb2xsZXIoKTsKKyAgICBxdWludDE2IGluc3BlY3RvclNlcnZlclBvcnQoKTsKIAog
I2lmbmRlZiBRVF9OT19TSE9SVENVVAogICAgIHN0YXRpYyBRV2ViUGFnZTo6V2ViQWN0aW9uIGVk
aXRvckFjdGlvbkZvcktleUV2ZW50KFFLZXlFdmVudCogZXZlbnQpOwpkaWZmIC0tZ2l0IGEvV2Vi
S2l0L3F0L0NoYW5nZUxvZyBiL1dlYktpdC9xdC9DaGFuZ2VMb2cKaW5kZXggMGE0ZmQzZGQ5NzMz
ZmZmZjkzNDQwMjg1NTlmMThiYmE1NjA3OTczNS4uN2ZkYWYxNmJjMWFmNTRkNGFiYzkyOTczODEw
ZTFjZTRjOTgzNDc1YiAxMDA2NDQKLS0tIGEvV2ViS2l0L3F0L0NoYW5nZUxvZworKysgYi9XZWJL
aXQvcXQvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsNDAgQEAKKzIwMTAtMDgtMjYgIEphbWV5IEhpY2tz
ICA8amFtZXkuaGlja3NAbm9raWEuY29tPgorCisgICAgICAgIFJldmlld2VkIGJ5IEtlbm5ldGgg
Um9oZGUgQ2hyaXN0aWFuc2VuLgorCisgICAgICAgIFtRdF0gUmVtb3RlIFdlYiBJbnNwZWN0b3Ig
c3VwcG9ydCBmb3IgUXRXZWJLaXQKKworICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9z
aG93X2J1Zy5jZ2k/aWQ9NDM5ODgKKworICAgICAgICBSdW5zIGEgd2ViIGRlYnVnIHNlcnZlciBv
biBwb3J0IHNwZWNpZmllZCBieSBRdFRlc3RCcm93c2VyCisgICAgICAgIGFyZ3VtZW50IC1yZW1v
dGUtaW5zcGVjdG9yLXBvcnQuIFByb3BlcnR5IF9xX3dlYkluc3BlY3RvclNlcnZlclBvcnQgb2YK
KyAgICAgICAgdGhlIFFXZWJQYWdlIGluc3RhbmNlIHdpbGwgYmUgc2V0IGFjY29yZGluZyB0byB0
aGUgYXJndW1lbnQuIEFsbAorICAgICAgICBwYWdlcyB3aXRoIHRoYXQgcHJvcGVydHkgc2V0IHdp
bGwgYmUgcmVtb3RlbHkgaW5zcGVjdGFibGUuCisKKyAgICAgICAgVVJMIGZvciByZW1vdGUgaW5z
cGVjdGlvbiBvZiBmaXJzdCBRV2ViUGFnZSBpcworICAgICAgICAgICAgaHR0cDovL2xvY2FsaG9z
dDo5MjIyL2RldnRvb2xzL3BhZ2UvMQorICAgICAgICB3aGVyZSAxIGlzIHRoZSBudW1iZXIgb2Yg
dGhlIFFXZWJQYWdlIGluc3RhbmNlLgorCisgICAgICAgICogQXBpL3F3ZWJpbnNwZWN0b3IuY3Bw
OgorICAgICAgICAoUVdlYkluc3BlY3RvclByaXZhdGU6OmF0dGFjaFJlbW90ZUZyb250ZW5kKToK
KyAgICAgICAgKFFXZWJJbnNwZWN0b3JQcml2YXRlOjpkZXRhY2hSZW1vdGVGcm9udGVuZCk6Cisg
ICAgICAgICogQXBpL3F3ZWJpbnNwZWN0b3JfcC5oOgorICAgICAgICAoUVdlYkluc3BlY3RvclBy
aXZhdGU6OlFXZWJJbnNwZWN0b3JQcml2YXRlKToKKyAgICAgICAgKiBBcGkvcXdlYnBhZ2UuY3Bw
OgorICAgICAgICAoUVdlYlBhZ2VQcml2YXRlOjpkeW5hbWljUHJvcGVydHlDaGFuZ2VFdmVudCk6
CisgICAgICAgIChRV2ViUGFnZVByaXZhdGU6Omluc3BlY3RvclNlcnZlclBvcnQpOgorICAgICAg
ICAoUVdlYlBhZ2U6On5RV2ViUGFnZSk6CisgICAgICAgICogQXBpL3F3ZWJwYWdlX3AuaDoKKyAg
ICAgICAgKiBXZWJDb3JlU3VwcG9ydC9JbnNwZWN0b3JDbGllbnRRdC5jcHA6CisgICAgICAgIChX
ZWJDb3JlOjpJbnNwZWN0b3JDbGllbnRRdDo6SW5zcGVjdG9yQ2xpZW50UXQpOgorICAgICAgICAo
V2ViQ29yZTo6SW5zcGVjdG9yQ2xpZW50UXQ6Omluc3BlY3RvckRlc3Ryb3llZCk6CisgICAgICAg
IChXZWJDb3JlOjpJbnNwZWN0b3JDbGllbnRRdDo6b3Blbkluc3BlY3RvckZyb250ZW5kKToKKyAg
ICAgICAgKFdlYkNvcmU6Okluc3BlY3RvckNsaWVudFF0OjphdHRhY2hSZW1vdGVGcm9udGVuZCk6
CisgICAgICAgIChXZWJDb3JlOjpJbnNwZWN0b3JDbGllbnRRdDo6ZGV0YWNoUmVtb3RlRnJvbnRl
bmQpOgorICAgICAgICAoV2ViQ29yZTo6SW5zcGVjdG9yQ2xpZW50UXQ6OnNlbmRNZXNzYWdlVG9G
cm9udGVuZCk6CisgICAgICAgIChXZWJDb3JlOjpJbnNwZWN0b3JDbGllbnRRdDo6ZGlzcGF0Y2gp
OgorICAgICAgICAqIFdlYkNvcmVTdXBwb3J0L0luc3BlY3RvckNsaWVudFF0Lmg6CisKIDIwMTAt
MDgtMjYgIEJlbmphbWluIFBvdWxhaW4gIDxiZW5qYW1pbi5wb3VsYWluQG5va2lhLmNvbT4KIAog
ICAgICAgICBSZXZpZXdlZCBieSBTaW1vbiBIYXVzbWFubi4KZGlmZiAtLWdpdCBhL1dlYktpdC9x
dC9XZWJDb3JlU3VwcG9ydC9JbnNwZWN0b3JDbGllbnRRdC5jcHAgYi9XZWJLaXQvcXQvV2ViQ29y
ZVN1cHBvcnQvSW5zcGVjdG9yQ2xpZW50UXQuY3BwCmluZGV4IGUxM2Y2YzM3MTg2MWQyYjc4MTFi
M2VjYTU1MjNiY2YxY2FlZmExZjAuLmEyYzVjOTQ4NTMxYWExM2Y4YTI3ODJiM2JmNmU4ZDYxYzdl
MjE1ZjQgMTAwNjQ0Ci0tLSBhL1dlYktpdC9xdC9XZWJDb3JlU3VwcG9ydC9JbnNwZWN0b3JDbGll
bnRRdC5jcHAKKysrIGIvV2ViS2l0L3F0L1dlYkNvcmVTdXBwb3J0L0luc3BlY3RvckNsaWVudFF0
LmNwcApAQCAtMzIsNyArMzIsMTAgQEAKICNpbmNsdWRlICJJbnNwZWN0b3JDbGllbnRRdC5oIgog
CiAjaW5jbHVkZSAiRnJhbWUuaCIKKyNpbmNsdWRlICJJbnNwZWN0b3JCYWNrZW5kRGlzcGF0Y2hl
ci5oIgogI2luY2x1ZGUgIkluc3BlY3RvckNvbnRyb2xsZXIuaCIKKyNpbmNsdWRlICJJbnNwZWN0
b3JGcm9udGVuZC5oIgorI2luY2x1ZGUgIkluc3BlY3RvclNlcnZlclF0LmgiCiAjaW5jbHVkZSAi
Tm90SW1wbGVtZW50ZWQuaCIKICNpbmNsdWRlICJQYWdlLmgiCiAjaW5jbHVkZSAiUGxhdGZvcm1T
dHJpbmcuaCIKQEAgLTk2LDIxICs5OSwzNSBAQCBwdWJsaWMgc2xvdHM6CiBJbnNwZWN0b3JDbGll
bnRRdDo6SW5zcGVjdG9yQ2xpZW50UXQoUVdlYlBhZ2UqIHBhZ2UpCiAgICAgOiBtX2luc3BlY3Rl
ZFdlYlBhZ2UocGFnZSkKICAgICAsIG1fZnJvbnRlbmRXZWJQYWdlKDApCi17fQorICAgICwgbV9y
ZW1vdGVJbnNwZWN0b3IoZmFsc2UpCit7CisgICAgSW5zcGVjdG9yU2VydmVyUXQqIHdlYkluc3Bl
Y3RvclNlcnZlciA9IEluc3BlY3RvclNlcnZlclF0OjpzZXJ2ZXIoKTsKKyAgICBpZiAod2ViSW5z
cGVjdG9yU2VydmVyKQorICAgICAgICB3ZWJJbnNwZWN0b3JTZXJ2ZXItPnJlZ2lzdGVyUGFnZShw
YWdlLCB0aGlzKTsKK30KIAogdm9pZCBJbnNwZWN0b3JDbGllbnRRdDo6aW5zcGVjdG9yRGVzdHJv
eWVkKCkKIHsKKyAgICBJbnNwZWN0b3JTZXJ2ZXJRdCogd2ViSW5zcGVjdG9yU2VydmVyID0gSW5z
cGVjdG9yU2VydmVyUXQ6OnNlcnZlcigpOworICAgIGlmICh3ZWJJbnNwZWN0b3JTZXJ2ZXIpCisg
ICAgICAgIHdlYkluc3BlY3RvclNlcnZlci0+dW5yZWdpc3RlclBhZ2UobV9pbnNwZWN0ZWRXZWJQ
YWdlKTsKKwogICAgIGRlbGV0ZSB0aGlzOwogfQogCiAgICAgCi12b2lkIEluc3BlY3RvckNsaWVu
dFF0OjpvcGVuSW5zcGVjdG9yRnJvbnRlbmQoV2ViQ29yZTo6SW5zcGVjdG9yQ29udHJvbGxlciop
Cit2b2lkIEluc3BlY3RvckNsaWVudFF0OjpvcGVuSW5zcGVjdG9yRnJvbnRlbmQoV2ViQ29yZTo6
SW5zcGVjdG9yQ29udHJvbGxlciogaW5zcGVjdG9yQ29udHJvbGxlcikKIHsKICAgICBRV2ViVmll
dyogaW5zcGVjdG9yVmlldyA9IG5ldyBRV2ViVmlldzsKICAgICBJbnNwZWN0b3JDbGllbnRXZWJQ
YWdlKiBpbnNwZWN0b3JQYWdlID0gbmV3IEluc3BlY3RvckNsaWVudFdlYlBhZ2UoaW5zcGVjdG9y
Vmlldyk7CiAgICAgaW5zcGVjdG9yVmlldy0+c2V0UGFnZShpbnNwZWN0b3JQYWdlKTsKIAogICAg
IFFXZWJJbnNwZWN0b3IqIGluc3BlY3RvciA9IG1faW5zcGVjdGVkV2ViUGFnZS0+ZC0+Z2V0T3JD
cmVhdGVJbnNwZWN0b3IoKTsKKyAgICBpZiAobV9pbnNwZWN0ZWRXZWJQYWdlLT5kLT5pbnNwZWN0
b3JTZXJ2ZXJQb3J0KCkpIHsKKyAgICAgICAgbV9yZW1vdGVJbnNwZWN0b3IgPSB0cnVlOworICAg
ICAgICByZXR1cm47CisgICAgfQorCiAgICAgLy8gVGhpcyBpcyBhIGtub3duIGhvb2sgdGhhdCBh
bGxvd3MgY2hhbmdpbmcgdGhlIGRlZmF1bHQgVVJMIGZvciB0aGUKICAgICAvLyBXZWIgaW5zcGVj
dG9yLiBUaGlzIGlzIHVzZWQgZm9yIFNESyBwdXJwb3Nlcy4gUGxlYXNlIGtlZXAgdGhpcyBob29r
CiAgICAgLy8gYXJvdW5kIGFuZCBkb24ndCByZW1vdmUgaXQuCkBAIC0xNDAsNiArMTU3LDI0IEBA
IHZvaWQgSW5zcGVjdG9yQ2xpZW50UXQ6OnJlbGVhc2VGcm9udGVuZFBhZ2UoKQogICAgIG1fZnJv
bnRlbmRXZWJQYWdlID0gMDsKIH0KIAorCit2b2lkIEluc3BlY3RvckNsaWVudFF0OjphdHRhY2hS
ZW1vdGVGcm9udGVuZChSZW1vdGVGcm9udGVuZENoYW5uZWwqIGNoYW5uZWwpCit7CisjaWYgRU5B
QkxFKElOU1BFQ1RPUikKKyAgICAvLyBDaGFubmVsIHdhcyBhbGxvY2F0ZWQgYnkgSW5zcGVjdG9y
U2VydmVyUXQuIEhlcmUgd2UgdHJhbnNmZXIgb3duZXJzaGlwIHRvIGluc3BlY3Rvci4KKyAgICBt
X2luc3BlY3RlZFdlYlBhZ2UtPmQtPmluc3BlY3Rvci0+ZC0+YXR0YWNoUmVtb3RlRnJvbnRlbmQo
Y2hhbm5lbCk7CisgICAgbV9pbnNwZWN0ZWRXZWJQYWdlLT5kLT5pbnNwZWN0b3JDb250cm9sbGVy
KCktPmNvbm5lY3RGcm9udGVuZCgpOworI2VuZGlmCit9CisKK3ZvaWQgSW5zcGVjdG9yQ2xpZW50
UXQ6OmRldGFjaFJlbW90ZUZyb250ZW5kKCkKK3sKKyNpZiBFTkFCTEUoSU5TUEVDVE9SKQorICAg
IG1faW5zcGVjdGVkV2ViUGFnZS0+ZC0+aW5zcGVjdG9yLT5kLT5kZXRhY2hSZW1vdGVGcm9udGVu
ZCgpOworICAgIG1faW5zcGVjdGVkV2ViUGFnZS0+ZC0+aW5zcGVjdG9yQ29udHJvbGxlcigpLT5k
aXNjb25uZWN0RnJvbnRlbmQoKTsKKyNlbmRpZgorfQorCiB2b2lkIEluc3BlY3RvckNsaWVudFF0
OjpoaWdobGlnaHQoTm9kZSopCiB7CiAgICAgbm90SW1wbGVtZW50ZWQoKTsKQEAgLTE5Niw2ICsy
MzEsMTYgQEAgdm9pZCBJbnNwZWN0b3JDbGllbnRRdDo6c3RvcmVTZXR0aW5nKGNvbnN0IFN0cmlu
ZyYga2V5LCBjb25zdCBTdHJpbmcmIHNldHRpbmcpCiAKIGJvb2wgSW5zcGVjdG9yQ2xpZW50UXQ6
OnNlbmRNZXNzYWdlVG9Gcm9udGVuZChjb25zdCBTdHJpbmcmIG1lc3NhZ2UpCiB7CisgICAgaWYg
KG1fcmVtb3RlSW5zcGVjdG9yIAorICAgICAgICB8fCAobV9pbnNwZWN0ZWRXZWJQYWdlICYmIG1f
aW5zcGVjdGVkV2ViUGFnZS0+ZC0+aW5zcGVjdG9yU2VydmVyUG9ydCgpKSkgeworICAgICAgICBt
X3JlbW90ZUluc3BlY3RvciA9IHRydWU7CisgICAgICAgIFFfQVNTRVJUKG1faW5zcGVjdGVkV2Vi
UGFnZS0+ZC0+aW5zcGVjdG9yLT5kLT5yZW1vdGVGcm9udGVuZCk7CisKKyAgICAgICAgUmVtb3Rl
RnJvbnRlbmRDaGFubmVsKiBzZXNzaW9uID0gcW9iamVjdF9jYXN0PFJlbW90ZUZyb250ZW5kQ2hh
bm5lbCo+KG1faW5zcGVjdGVkV2ViUGFnZS0+ZC0+aW5zcGVjdG9yLT5kLT5yZW1vdGVGcm9udGVu
ZCk7CisgICAgICAgIGlmIChzZXNzaW9uKQorICAgICAgICAgICAgc2Vzc2lvbi0+c2VuZE1lc3Nh
Z2VUb0Zyb250ZW5kKG1lc3NhZ2UpOworICAgICAgICByZXR1cm4gdHJ1ZTsKKyAgICB9CiAgICAg
aWYgKCFtX2Zyb250ZW5kV2ViUGFnZSkKICAgICAgICAgcmV0dXJuIGZhbHNlOwogCkBAIC0yMTgs
NiArMjYzLDEyIEBAIGJvb2wgSW5zcGVjdG9yQ2xpZW50UXQ6OnNlbmRNZXNzYWdlVG9Gcm9udGVu
ZChjb25zdCBTdHJpbmcmIG1lc3NhZ2UpCiAgICAgcmV0dXJuIHRydWU7CiB9CiAKK3ZvaWQgSW5z
cGVjdG9yQ2xpZW50UXQ6OmRpc3BhdGNoKGNvbnN0IFN0cmluZyAmbWVzc2FnZSkKK3sKKyAgICBJ
bnNwZWN0b3JDb250cm9sbGVyKiBpbnNwZWN0b3JDb250cm9sbGVyID0gbV9pbnNwZWN0ZWRXZWJQ
YWdlLT5kLT5wYWdlLT5pbnNwZWN0b3JDb250cm9sbGVyKCk7CisgICAgaW5zcGVjdG9yQ29udHJv
bGxlci0+aW5zcGVjdG9yQmFja2VuZERpc3BhdGNoZXIoKS0+ZGlzcGF0Y2gobWVzc2FnZSk7Cit9
CisKIHN0YXRpYyBTdHJpbmcgdmFyaWFudFRvU2V0dGluZyhjb25zdCBRVmFyaWFudCYgcXZhcmlh
bnQpCiB7CiAgICAgU3RyaW5nIHJldFZhbDsKZGlmZiAtLWdpdCBhL1dlYktpdC9xdC9XZWJDb3Jl
U3VwcG9ydC9JbnNwZWN0b3JDbGllbnRRdC5oIGIvV2ViS2l0L3F0L1dlYkNvcmVTdXBwb3J0L0lu
c3BlY3RvckNsaWVudFF0LmgKaW5kZXggOTUyNmM4ODBjMmVjM2JjMTVhMGYyMmFmZDllMzlhZTNm
YWQ3Y2JjMC4uYThlZjkyYzQ4N2EyNzhjMTkyMjNlODg1MTY3NTVhNjVkYzIwMzM2ZCAxMDA2NDQK
LS0tIGEvV2ViS2l0L3F0L1dlYkNvcmVTdXBwb3J0L0luc3BlY3RvckNsaWVudFF0LmgKKysrIGIv
V2ViS2l0L3F0L1dlYkNvcmVTdXBwb3J0L0luc3BlY3RvckNsaWVudFF0LmgKQEAgLTQzLDYgKzQz
LDcgQEAgY2xhc3MgUVdlYlZpZXc7CiBuYW1lc3BhY2UgV2ViQ29yZSB7CiBjbGFzcyBOb2RlOwog
Y2xhc3MgUGFnZTsKK2NsYXNzIFJlbW90ZUZyb250ZW5kQ2hhbm5lbDsKIAogY2xhc3MgSW5zcGVj
dG9yQ2xpZW50UXQgOiBwdWJsaWMgSW5zcGVjdG9yQ2xpZW50IHsKIHB1YmxpYzoKQEAgLTU5LDEy
ICs2MCwxNyBAQCBwdWJsaWM6CiAgICAgdmlydHVhbCB2b2lkIHN0b3JlU2V0dGluZyhjb25zdCBT
dHJpbmcmIGtleSwgY29uc3QgU3RyaW5nJiB2YWx1ZSk7CiAKICAgICB2aXJ0dWFsIGJvb2wgc2Vu
ZE1lc3NhZ2VUb0Zyb250ZW5kKGNvbnN0IFN0cmluZyYpOworICAgIHZpcnR1YWwgdm9pZCBkaXNw
YXRjaChjb25zdCBTdHJpbmcgJm1lc3NhZ2UpOwogCiAgICAgdm9pZCByZWxlYXNlRnJvbnRlbmRQ
YWdlKCk7CiAKKyAgICB2b2lkIGF0dGFjaFJlbW90ZUZyb250ZW5kKFJlbW90ZUZyb250ZW5kQ2hh
bm5lbCAqY2hhbm5lbCk7CisgICAgdm9pZCBkZXRhY2hSZW1vdGVGcm9udGVuZCgpOworCiBwcml2
YXRlOgogICAgIFFXZWJQYWdlKiBtX2luc3BlY3RlZFdlYlBhZ2U7CiAgICAgUVdlYlBhZ2UqIG1f
ZnJvbnRlbmRXZWJQYWdlOworICAgIGJvb2wgbV9yZW1vdGVJbnNwZWN0b3I7CiB9OwogCiBjbGFz
cyBJbnNwZWN0b3JGcm9udGVuZENsaWVudFF0IDogcHVibGljIEluc3BlY3RvckZyb250ZW5kQ2xp
ZW50TG9jYWwgewpAQCAtOTUsNiArMTAxLDcgQEAgcHJpdmF0ZToKICAgICBib29sIG1fZGVzdHJv
eWluZ0luc3BlY3RvclZpZXc7CiAgICAgSW5zcGVjdG9yQ2xpZW50UXQqIG1faW5zcGVjdG9yQ2xp
ZW50OwogfTsKKwogfQogCiAjZW5kaWYKZGlmZiAtLWdpdCBhL1dlYktpdFRvb2xzL0NoYW5nZUxv
ZyBiL1dlYktpdFRvb2xzL0NoYW5nZUxvZwppbmRleCA1ODExZWYzMWRlOGY3M2U3YmY4Zjg4MmNh
M2M3ZWFhNDhlZTlhMTE2Li4zZTcwMDViNWU3ZjE1ZGRlOGU2MjNhNjViZGY2MTM0ZDJjNTczMWUx
IDEwMDY0NAotLS0gYS9XZWJLaXRUb29scy9DaGFuZ2VMb2cKKysrIGIvV2ViS2l0VG9vbHMvQ2hh
bmdlTG9nCkBAIC0xLDMgKzEsMjcgQEAKKzIwMTAtMDgtMjYgIEphbWV5IEhpY2tzICA8amFtZXku
aGlja3NAbm9raWEuY29tPgorCisgICAgICAgIFJldmlld2VkIGJ5IEtlbm5ldGggUm9oZGUgQ2hy
aXN0aWFuc2VuLgorCisgICAgICAgIFtRdF0gUmVtb3RlIFdlYiBJbnNwZWN0b3Igc3VwcG9ydCBm
b3IgUXRXZWJLaXQKKworICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5j
Z2k/aWQ9NDM5ODgKKworICAgICAgICBSdW5zIGEgd2ViIGRlYnVnIHNlcnZlciBvbiBwb3J0IHNw
ZWNpZmllZCBieSBRdFRlc3RCcm93c2VyCisgICAgICAgIGFyZ3VtZW50IC1yZW1vdGUtaW5zcGVj
dG9yLXBvcnQuIFByb3BlcnR5IF9xX3dlYkluc3BlY3RvclNlcnZlclBvcnQgb2YKKyAgICAgICAg
dGhlIFFXZWJQYWdlIGluc3RhbmNlIHdpbGwgYmUgc2V0IGFjY29yZGluZyB0byB0aGUgYXJndW1l
bnQuIEFsbAorICAgICAgICBwYWdlcyB3aXRoIHRoYXQgcHJvcGVydHkgc2V0IHdpbGwgYmUgcmVt
b3RlbHkgaW5zcGVjdGFibGUuCisKKyAgICAgICAgVVJMIGZvciByZW1vdGUgaW5zcGVjdGlvbiBv
ZiBmaXJzdCBRV2ViUGFnZSBpcworICAgICAgICAgICAgaHR0cDovL2xvY2FsaG9zdDo5MjIyL2Rl
dnRvb2xzL3BhZ2UvMQorICAgICAgICB3aGVyZSAxIGlzIHRoZSBudW1iZXIgb2YgdGhlIFFXZWJQ
YWdlIGluc3RhbmNlLgorCisgICAgICAgICogUXRUZXN0QnJvd3Nlci9sYXVuY2hlcndpbmRvdy5j
cHA6CisgICAgICAgIChMYXVuY2hlcldpbmRvdzo6aW5pdCk6CisgICAgICAgICogUXRUZXN0QnJv
d3Nlci9sYXVuY2hlcndpbmRvdy5oOgorICAgICAgICAqIFF0VGVzdEJyb3dzZXIvbWFpbi5jcHA6
CisgICAgICAgIChMYXVuY2hlckFwcGxpY2F0aW9uOjpoYW5kbGVVc2VyT3B0aW9ucyk6CisgICAg
ICAgICogU2NyaXB0cy93ZWJraXRweS9zdHlsZS9jaGVja2VyLnB5OgorCiAyMDEwLTA4LTI2ICBN
YWhlc2ggS3Vsa2FybmkgIDxtYWhlc2gua3Vsa2FybmlAbm9raWEuY29tPgogCiAgICAgICAgIFJl
dmlld2VkIGJ5IEtlbm5ldGggUm9oZGUgQ2hyaXN0aWFuc2VuLgpkaWZmIC0tZ2l0IGEvV2ViS2l0
VG9vbHMvUXRUZXN0QnJvd3Nlci9sYXVuY2hlcndpbmRvdy5jcHAgYi9XZWJLaXRUb29scy9RdFRl
c3RCcm93c2VyL2xhdW5jaGVyd2luZG93LmNwcAppbmRleCAzYjQ3ZjI5Y2I0NjdiNDdlOTExOWI5
MzQwMzMzMzJkNTIzZjVkNThhLi42NDZiYjA3ZDFiZmMxN2MwNjQ1M2NjZDBjM2NlMTIxMzFmMzBi
MTBiIDEwMDY0NAotLS0gYS9XZWJLaXRUb29scy9RdFRlc3RCcm93c2VyL2xhdW5jaGVyd2luZG93
LmNwcAorKysgYi9XZWJLaXRUb29scy9RdFRlc3RCcm93c2VyL2xhdW5jaGVyd2luZG93LmNwcApA
QCAtOTEsNiArOTEsOSBAQCB2b2lkIExhdW5jaGVyV2luZG93Ojppbml0KCkKICAgICBtX2luc3Bl
Y3Rvci0+aGlkZSgpOwogICAgIGNvbm5lY3QodGhpcywgU0lHTkFMKGRlc3Ryb3llZCgpKSwgbV9p
bnNwZWN0b3IsIFNMT1QoZGVsZXRlTGF0ZXIoKSkpOwogCisgICAgaWYgKG1fd2luZG93T3B0aW9u
cy5yZW1vdGVJbnNwZWN0b3JQb3J0KQorICAgICAgICBwYWdlKCktPnNldFByb3BlcnR5KCJfcV93
ZWJJbnNwZWN0b3JTZXJ2ZXJQb3J0IiwgbV93aW5kb3dPcHRpb25zLnJlbW90ZUluc3BlY3RvclBv
cnQpOworCiAgICAgLy8gdGhlIHpvb20gdmFsdWVzIGFyZSBjaG9zZW4gdG8gYmUgbGlrZSBpbiBN
b3ppbGxhIEZpcmVmb3ggMwogICAgIGlmICghbV96b29tTGV2ZWxzLmNvdW50KCkpIHsKICAgICAg
ICAgbV96b29tTGV2ZWxzIDw8IDMwIDw8IDUwIDw8IDY3IDw8IDgwIDw8IDkwOwpkaWZmIC0tZ2l0
IGEvV2ViS2l0VG9vbHMvUXRUZXN0QnJvd3Nlci9sYXVuY2hlcndpbmRvdy5oIGIvV2ViS2l0VG9v
bHMvUXRUZXN0QnJvd3Nlci9sYXVuY2hlcndpbmRvdy5oCmluZGV4IDY1ZjM5MGQ4OTRkNTQ0M2Uw
N2M1NDAwMzFkZmIxNWU1M2ZiYTQ2ZjcuLmUxYzc0NzBhODZjNTQ4ZGRiNzU1Njg2M2IxMjU1OGY2
MDRjNmY0OWYgMTAwNjQ0Ci0tLSBhL1dlYktpdFRvb2xzL1F0VGVzdEJyb3dzZXIvbGF1bmNoZXJ3
aW5kb3cuaAorKysgYi9XZWJLaXRUb29scy9RdFRlc3RCcm93c2VyL2xhdW5jaGVyd2luZG93LmgK
QEAgLTExMCw2ICsxMTAsNyBAQCBwdWJsaWM6CiAgICAgYm9vbCB1c2VRR0xXaWRnZXRWaWV3cG9y
dDsKICNlbmRpZgogICAgIFFVcmwgaW5zcGVjdG9yVXJsOworICAgIHF1aW50MTYgcmVtb3RlSW5z
cGVjdG9yUG9ydDsKIH07CiAKIGNsYXNzIExhdW5jaGVyV2luZG93IDogcHVibGljIE1haW5XaW5k
b3cgewpkaWZmIC0tZ2l0IGEvV2ViS2l0VG9vbHMvUXRUZXN0QnJvd3Nlci9tYWluLmNwcCBiL1dl
YktpdFRvb2xzL1F0VGVzdEJyb3dzZXIvbWFpbi5jcHAKaW5kZXggZWM4NjRlOWQwOTVhM2VmODBh
NzI1N2QwZjlmMmUzZmU1MDJmYjRhZS4uMTJhMzExZWUzZWE2YmMzODdmZWNjYTRmMGY1NGY1N2Nh
NjFmYTkzOSAxMDA2NDQKLS0tIGEvV2ViS2l0VG9vbHMvUXRUZXN0QnJvd3Nlci9tYWluLmNwcAor
KysgYi9XZWJLaXRUb29scy9RdFRlc3RCcm93c2VyL21haW4uY3BwCkBAIC0xODAsNiArMTgwLDEx
IEBAIHZvaWQgTGF1bmNoZXJBcHBsaWNhdGlvbjo6aGFuZGxlVXNlck9wdGlvbnMoKQogICAgIGlm
IChpbnNwZWN0b3JVcmxJbmRleCAhPSAtMSkKICAgICAgICB3aW5kb3dPcHRpb25zLmluc3BlY3Rv
clVybCA9IHRha2VPcHRpb25WYWx1ZSgmYXJncywgaW5zcGVjdG9yVXJsSW5kZXgpOwogCisgICAg
UVN0cmluZyByZW1vdGVJbnNwZWN0b3JQb3J0QXJnKCItcmVtb3RlLWluc3BlY3Rvci1wb3J0Iik7
CisgICAgaW50IHJlbW90ZUluc3BlY3RvclBvcnRJbmRleCA9IGFyZ3MuaW5kZXhPZihyZW1vdGVJ
bnNwZWN0b3JQb3J0QXJnKTsKKyAgICBpZiAocmVtb3RlSW5zcGVjdG9yUG9ydEluZGV4ICE9IC0x
KQorICAgICAgICB3aW5kb3dPcHRpb25zLnJlbW90ZUluc3BlY3RvclBvcnQgPSB0YWtlT3B0aW9u
VmFsdWUoJmFyZ3MsIHJlbW90ZUluc3BlY3RvclBvcnRJbmRleCkudG9JbnQoKTsKKwogICAgIGlu
dCByb2JvdEluZGV4ID0gYXJncy5pbmRleE9mKCItciIpOwogICAgIGlmIChyb2JvdEluZGV4ICE9
IC0xKSB7CiAgICAgICAgIFFTdHJpbmcgbGlzdEZpbGUgPSB0YWtlT3B0aW9uVmFsdWUoJmFyZ3Ms
IHJvYm90SW5kZXgpOwo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>65566</attachid>
            <date>2010-08-26 08:10:23 -0700</date>
            <delta_ts>2010-08-27 07:45:38 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-43988-20100826111021.patch</filename>
            <type>text/plain</type>
            <size>30300</size>
            <attacher name="Jamey Hicks">jamey.hicks</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1dlYkNvcmUvQ2hhbmdlTG9nIGIvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXgg
MWNmZGQwMzBlOTE1ZTk0OGUyM2U5ZDgzZmEyNDYzYjUwMDRlNmIwMi4uNzQzYWQyZDczZGM0M2M3
NTYyNzE4Y2Q3NWZiOWZkY2FlMjRhN2RkYyAxMDA2NDQKLS0tIGEvV2ViQ29yZS9DaGFuZ2VMb2cK
KysrIGIvV2ViQ29yZS9DaGFuZ2VMb2cKQEAgLTEsMyArMSwyMiBAQAorMjAxMC0wOC0yNiAgSmFt
ZXkgSGlja3MgIDxqYW1leS5oaWNrc0Bub2tpYS5jb20+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkg
Tm9ib2R5IChPT1BTISkuCisKKyAgICAgICAgW1F0XSBSZW1vdGUgV2ViIEluc3BlY3RvciBzdXBw
b3J0IGZvciBRdFdlYktpdAorCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3df
YnVnLmNnaT9pZD00Mzk4OAorCisgICAgICAgIFJ1bnMgYSB3ZWIgZGVidWcgc2VydmVyIG9uIHBv
cnQgc3BlY2lmaWVkIGJ5IFF0VGVzdEJyb3dzZXIKKyAgICAgICAgYXJndW1lbnQgLXJlbW90ZS1p
bnNwZWN0b3ItcG9ydC4gUHJvcGVydHkgX3Ffd2ViSW5zcGVjdG9yU2VydmVyUG9ydCBvZgorICAg
ICAgICB0aGUgUVdlYlBhZ2UgaW5zdGFuY2Ugd2lsbCBiZSBzZXQgYWNjb3JkaW5nIHRvIHRoZSBh
cmd1bWVudC4gQWxsCisgICAgICAgIHBhZ2VzIHdpdGggdGhhdCBwcm9wZXJ0eSBzZXQgd2lsbCBi
ZSByZW1vdGVseSBpbnNwZWN0YWJsZS4KKworICAgICAgICBVUkwgZm9yIHJlbW90ZSBpbnNwZWN0
aW9uIG9mIGZpcnN0IFFXZWJQYWdlIGlzCisgICAgICAgICAgICBodHRwOi8vbG9jYWxob3N0Ojky
MjIvZGV2dG9vbHMvcGFnZS8xCisgICAgICAgIHdoZXJlIDEgaXMgdGhlIG51bWJlciBvZiB0aGUg
UVdlYlBhZ2UgaW5zdGFuY2UuCisKKyAgICAgICAgKiBXZWJDb3JlLnBybzoKKwogMjAxMC0wOC0y
NiAgSWx5YSBUaWtob25vdnNreSAgPGxvaXNsb0BjaHJvbWl1bS5vcmc+CiAKICAgICAgICAgUmV2
aWV3ZWQgYnkgWXVyeSBTZW1pa2hhdHNreS4KZGlmZiAtLWdpdCBhL1dlYkNvcmUvV2ViQ29yZS5w
cm8gYi9XZWJDb3JlL1dlYkNvcmUucHJvCmluZGV4IGQxZmY4YjI0MDhiOTdmOWI5ZGUwYjI5ZTk4
ZGYwZWQxNTJmZDkyMWUuLjY2NDhhZDhhOGEzYjJkZWU5YTUwNDJmNjUyNGEyMTk0OTI4ZDI0NDEg
MTAwNjQ0Ci0tLSBhL1dlYkNvcmUvV2ViQ29yZS5wcm8KKysrIGIvV2ViQ29yZS9XZWJDb3JlLnBy
bwpAQCAtMjE5Myw2ICsyMTkzLDcgQEAgSEVBREVSUyArPSBcCiAgICAgeG1sL1hTTFRQcm9jZXNz
b3IuaCBcCiAgICAgeG1sL1hTTFRVbmljb2RlU29ydC5oIFwKICAgICAkJFBXRC8uLi9XZWJLaXQv
cXQvQXBpL3F3ZWJwbHVnaW5kYXRhYmFzZV9wLmggXAorICAgICQkUFdELy4uL1dlYktpdC9xdC9X
ZWJDb3JlU3VwcG9ydC9JbnNwZWN0b3JTZXJ2ZXJRdC5oIFwKICAgICAkJFBXRC8uLi9XZWJLaXQv
cXQvV2ViQ29yZVN1cHBvcnQvUXRGYWxsYmFja1dlYlBvcHVwLmggXAogICAgICQkUFdELy4uL1dl
YktpdC9xdC9XZWJDb3JlU3VwcG9ydC9GcmFtZUxvYWRlckNsaWVudFF0LmggXAogICAgICQkUFdE
Ly4uL1dlYktpdC9xdC9XZWJDb3JlU3VwcG9ydC9GcmFtZU5ldHdvcmtpbmdDb250ZXh0UXQuaCBc
CkBAIC0yMjg4LDYgKzIyODksNyBAQCBTT1VSQ0VTICs9IFwKICAgICAuLi9XZWJLaXQvcXQvV2Vi
Q29yZVN1cHBvcnQvRWRpdENvbW1hbmRRdC5jcHAgXAogICAgIC4uL1dlYktpdC9xdC9XZWJDb3Jl
U3VwcG9ydC9GcmFtZUxvYWRlckNsaWVudFF0LmNwcCBcCiAgICAgLi4vV2ViS2l0L3F0L1dlYkNv
cmVTdXBwb3J0L0ZyYW1lTmV0d29ya2luZ0NvbnRleHRRdC5jcHAgXAorICAgIC4uL1dlYktpdC9x
dC9XZWJDb3JlU3VwcG9ydC9JbnNwZWN0b3JTZXJ2ZXJRdC5jcHAgXAogICAgIC4uL1dlYktpdC9x
dC9XZWJDb3JlU3VwcG9ydC9JbnNwZWN0b3JDbGllbnRRdC5jcHAgXAogICAgIC4uL1dlYktpdC9x
dC9XZWJDb3JlU3VwcG9ydC9Ob3RpZmljYXRpb25QcmVzZW50ZXJDbGllbnRRdC5jcHAgXAogICAg
IC4uL1dlYktpdC9xdC9XZWJDb3JlU3VwcG9ydC9QYWdlQ2xpZW50UXQuY3BwIFwKZGlmZiAtLWdp
dCBhL1dlYktpdC9xdC9BcGkvcXdlYmluc3BlY3Rvci5jcHAgYi9XZWJLaXQvcXQvQXBpL3F3ZWJp
bnNwZWN0b3IuY3BwCmluZGV4IDgwMmVhOTgwNDhmYTViOTdlNGZmYzNkNTA3YzMyODVhMGNiNmEz
ZTMuLmJjOTAwYzcxMzQ0YjhiNTY3ZTIxNTMyOGNjNjVlOTdhNGQ3OTFhZTQgMTAwNjQ0Ci0tLSBh
L1dlYktpdC9xdC9BcGkvcXdlYmluc3BlY3Rvci5jcHAKKysrIGIvV2ViS2l0L3F0L0FwaS9xd2Vi
aW5zcGVjdG9yLmNwcApAQCAtMTk2LDYgKzE5NiwzMSBAQCB2b2lkIFFXZWJJbnNwZWN0b3JQcml2
YXRlOjpzZXRGcm9udGVuZChRV2lkZ2V0KiBuZXdGcm9udGVuZCkKICAgICB9CiB9CiAKKy8qISAK
KyAqIFxpbnRlcm5hbCAKKyAqLwordm9pZCBRV2ViSW5zcGVjdG9yUHJpdmF0ZTo6YXR0YWNoUmVt
b3RlRnJvbnRlbmQoUU9iamVjdCogbmV3UmVtb3RlRnJvbnRlbmQpCit7CisgICAgaWYgKHJlbW90
ZUZyb250ZW5kKQorICAgICAgICByZW1vdGVGcm9udGVuZC0+c2V0UGFyZW50KDApOworCisgICAg
cmVtb3RlRnJvbnRlbmQgPSBuZXdSZW1vdGVGcm9udGVuZDsKKworICAgIGlmIChyZW1vdGVGcm9u
dGVuZCkKKyAgICAgICAgcmVtb3RlRnJvbnRlbmQtPnNldFBhcmVudChxKTsKK30KKworLyohIAor
ICogXGludGVybmFsIAorICovCit2b2lkIFFXZWJJbnNwZWN0b3JQcml2YXRlOjpkZXRhY2hSZW1v
dGVGcm9udGVuZCgpCit7CisgICAgaWYgKHJlbW90ZUZyb250ZW5kKSB7CisgICAgICAgIHJlbW90
ZUZyb250ZW5kLT5kZWxldGVMYXRlcigpOworICAgICAgICByZW1vdGVGcm9udGVuZCA9IDA7Cisg
ICAgfQorfQorCiB2b2lkIFFXZWJJbnNwZWN0b3JQcml2YXRlOjphZGp1c3RGcm9udGVuZFNpemUo
Y29uc3QgUVNpemUmIHNpemUpCiB7CiAgICAgaWYgKGZyb250ZW5kKQpkaWZmIC0tZ2l0IGEvV2Vi
S2l0L3F0L0FwaS9xd2ViaW5zcGVjdG9yX3AuaCBiL1dlYktpdC9xdC9BcGkvcXdlYmluc3BlY3Rv
cl9wLmgKaW5kZXggNGQzMjdjYzVhOTExZjdlNTIyOTgwNGYxZDhlMjc5YTQ1NDhlZDc1Ny4uOTZm
NjRiYjVhMGZhYjhkMDQ5YjBlNTg3ZjM3ZjdlZWVlZjcwNjNlMCAxMDA2NDQKLS0tIGEvV2ViS2l0
L3F0L0FwaS9xd2ViaW5zcGVjdG9yX3AuaAorKysgYi9XZWJLaXQvcXQvQXBpL3F3ZWJpbnNwZWN0
b3JfcC5oCkBAIC0zMywxNCArMzMsMTggQEAgcHVibGljOgogICAgIDogcShxcSkKICAgICAsIHBh
Z2UoMCkKICAgICAsIGZyb250ZW5kKDApCisgICAgLCByZW1vdGVGcm9udGVuZCgwKQogICAgIHt9
CiAKICAgICB2b2lkIHNldEZyb250ZW5kKFFXaWRnZXQqIG5ld0Zyb250ZW5kKTsKKyAgICB2b2lk
IGF0dGFjaFJlbW90ZUZyb250ZW5kKFFPYmplY3QqIG5ld1JlbW90ZUZyb250ZW5kKTsKKyAgICB2
b2lkIGRldGFjaFJlbW90ZUZyb250ZW5kKCk7CiAgICAgdm9pZCBhZGp1c3RGcm9udGVuZFNpemUo
Y29uc3QgUVNpemUmIHNpemUpOwogCiAgICAgUVdlYkluc3BlY3RvciogcTsKICAgICBRV2ViUGFn
ZSogcGFnZTsKICAgICBRV2lkZ2V0KiBmcm9udGVuZDsKKyAgICBRT2JqZWN0KiByZW1vdGVGcm9u
dGVuZDsKIH07CiAKICNlbmRpZgpkaWZmIC0tZ2l0IGEvV2ViS2l0L3F0L0FwaS9xd2VicGFnZS5j
cHAgYi9XZWJLaXQvcXQvQXBpL3F3ZWJwYWdlLmNwcAppbmRleCA1ZWVlMjFjYzFkOGI2MTFkZTlj
NDM1ZjJiZTYxY2EzYjE1ZjZhNzdkLi42OWVlOTY4MmMzYzcwNTVmZWY1Y2E3MWMzNTEzZGNhNzQ4
YTdlOGRhIDEwMDY0NAotLS0gYS9XZWJLaXQvcXQvQXBpL3F3ZWJwYWdlLmNwcAorKysgYi9XZWJL
aXQvcXQvQXBpL3F3ZWJwYWdlLmNwcApAQCAtNzYsNiArNzYsNyBAQAogI2luY2x1ZGUgIkhUTUxJ
bnB1dEVsZW1lbnQuaCIKICNpbmNsdWRlICJIVE1MTmFtZXMuaCIKICNpbmNsdWRlICJIaXRUZXN0
UmVzdWx0LmgiCisjaW5jbHVkZSAiSW5zcGVjdG9yU2VydmVyUXQuaCIKICNpbmNsdWRlICJXaW5k
b3dGZWF0dXJlcy5oIgogI2luY2x1ZGUgIkxvY2FsaXplZFN0cmluZ3MuaCIKICNpbmNsdWRlICJD
YWNoZS5oIgpAQCAtMTI5Niw2ICsxMjk3LDEwIEBAIHZvaWQgUVdlYlBhZ2VQcml2YXRlOjpkeW5h
bWljUHJvcGVydHlDaGFuZ2VFdmVudChRRHluYW1pY1Byb3BlcnR5Q2hhbmdlRXZlbnQqIGV2CiAg
ICAgICAgIGZyYW1lLT50aWxlZEJhY2tpbmdTdG9yZSgpLT5zZXRLZWVwQW5kQ292ZXJBcmVhTXVs
dGlwbGllcnMoa2VlcE11bHRpcGxpZXIsIGNvdmVyTXVsdGlwbGllcik7CiAgICAgfQogI2VuZGlm
CisgICAgZWxzZSBpZiAoZXZlbnQtPnByb3BlcnR5TmFtZSgpID09ICJfcV93ZWJJbnNwZWN0b3JT
ZXJ2ZXJQb3J0IikgeworICAgICAgICBJbnNwZWN0b3JTZXJ2ZXJRdCogaW5zcGVjdG9yU2VydmVy
ID0gSW5zcGVjdG9yU2VydmVyUXQ6OnNlcnZlcigpOworICAgICAgICBpbnNwZWN0b3JTZXJ2ZXIt
Pmxpc3RlbihpbnNwZWN0b3JTZXJ2ZXJQb3J0KCkpOworICAgIH0KIH0KICNlbmRpZgogCkBAIC0x
NTUzLDYgKzE1NTgsMTUgQEAgSW5zcGVjdG9yQ29udHJvbGxlciogUVdlYlBhZ2VQcml2YXRlOjpp
bnNwZWN0b3JDb250cm9sbGVyKCkKICNlbmRpZgogfQogCitxdWludDE2IFFXZWJQYWdlUHJpdmF0
ZTo6aW5zcGVjdG9yU2VydmVyUG9ydCgpCit7CisjaWYgRU5BQkxFKElOU1BFQ1RPUikgJiYgIWRl
ZmluZWQoUVRfTk9fUFJPUEVSVElFUykKKyAgICBpZiAocSAmJiBxLT5wcm9wZXJ0eSgiX3Ffd2Vi
SW5zcGVjdG9yU2VydmVyUG9ydCIpLmlzVmFsaWQoKSkKKyAgICAgICAgcmV0dXJuIHEtPnByb3Bl
cnR5KCJfcV93ZWJJbnNwZWN0b3JTZXJ2ZXJQb3J0IikudG9JbnQoKTsKKyNlbmRpZgorICAgIHJl
dHVybiAwOworfQorCiAKIC8qIQogICAgXGVudW0gUVdlYlBhZ2U6OkZpbmRGbGFnCkBAIC0xODg3
LDYgKzE5MDEsNyBAQCBRV2ViUGFnZTo6flFXZWJQYWdlKCkKICAgICAgICAgZWxzZQogICAgICAg
ICAgICAgZC0+aW5zcGVjdG9yLT5zZXRQYWdlKDApOwogICAgIH0KKwogICAgIGRlbGV0ZSBkOwog
fQogCmRpZmYgLS1naXQgYS9XZWJLaXQvcXQvQXBpL3F3ZWJwYWdlX3AuaCBiL1dlYktpdC9xdC9B
cGkvcXdlYnBhZ2VfcC5oCmluZGV4IDYzMTBlYWZkODNiNDEwMmMwY2U4ZGU4YTliZmJlNWI2MjU5
ODFmMDIuLjlhYjUxZGZkM2U0MjkwYWRmMDFjNzE2OTU5YzIzYzFiOGI2ZDE1ODkgMTAwNjQ0Ci0t
LSBhL1dlYktpdC9xdC9BcGkvcXdlYnBhZ2VfcC5oCisrKyBiL1dlYktpdC9xdC9BcGkvcXdlYnBh
Z2VfcC5oCkBAIC0xMzksNiArMTM5LDcgQEAgcHVibGljOgogICAgIHZvaWQgc2V0SW5zcGVjdG9y
KFFXZWJJbnNwZWN0b3IqKTsKICAgICBRV2ViSW5zcGVjdG9yKiBnZXRPckNyZWF0ZUluc3BlY3Rv
cigpOwogICAgIFdlYkNvcmU6Okluc3BlY3RvckNvbnRyb2xsZXIqIGluc3BlY3RvckNvbnRyb2xs
ZXIoKTsKKyAgICBxdWludDE2IGluc3BlY3RvclNlcnZlclBvcnQoKTsKIAogI2lmbmRlZiBRVF9O
T19TSE9SVENVVAogICAgIHN0YXRpYyBRV2ViUGFnZTo6V2ViQWN0aW9uIGVkaXRvckFjdGlvbkZv
cktleUV2ZW50KFFLZXlFdmVudCogZXZlbnQpOwpkaWZmIC0tZ2l0IGEvV2ViS2l0L3F0L0NoYW5n
ZUxvZyBiL1dlYktpdC9xdC9DaGFuZ2VMb2cKaW5kZXggMGE0ZmQzZGQ5NzMzZmZmZjkzNDQwMjg1
NTlmMThiYmE1NjA3OTczNS4uNWZlMjdkNmIyMmU2ZjFmYjhjM2U4ZmYwODNmY2JmYzk1MzRkNjI4
YSAxMDA2NDQKLS0tIGEvV2ViS2l0L3F0L0NoYW5nZUxvZworKysgYi9XZWJLaXQvcXQvQ2hhbmdl
TG9nCkBAIC0xLDMgKzEsNDAgQEAKKzIwMTAtMDgtMjYgIEphbWV5IEhpY2tzICA8amFtZXkuaGlj
a3NAbm9raWEuY29tPgorCisgICAgICAgIFJldmlld2VkIGJ5IE5vYm9keSAoT09QUyEpLgorCisg
ICAgICAgIFtRdF0gUmVtb3RlIFdlYiBJbnNwZWN0b3Igc3VwcG9ydCBmb3IgUXRXZWJLaXQKKwor
ICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9NDM5ODgKKwor
ICAgICAgICBSdW5zIGEgd2ViIGRlYnVnIHNlcnZlciBvbiBwb3J0IHNwZWNpZmllZCBieSBRdFRl
c3RCcm93c2VyCisgICAgICAgIGFyZ3VtZW50IC1yZW1vdGUtaW5zcGVjdG9yLXBvcnQuIFByb3Bl
cnR5IF9xX3dlYkluc3BlY3RvclNlcnZlclBvcnQgb2YKKyAgICAgICAgdGhlIFFXZWJQYWdlIGlu
c3RhbmNlIHdpbGwgYmUgc2V0IGFjY29yZGluZyB0byB0aGUgYXJndW1lbnQuIEFsbAorICAgICAg
ICBwYWdlcyB3aXRoIHRoYXQgcHJvcGVydHkgc2V0IHdpbGwgYmUgcmVtb3RlbHkgaW5zcGVjdGFi
bGUuCisKKyAgICAgICAgVVJMIGZvciByZW1vdGUgaW5zcGVjdGlvbiBvZiBmaXJzdCBRV2ViUGFn
ZSBpcworICAgICAgICAgICAgaHR0cDovL2xvY2FsaG9zdDo5MjIyL2RldnRvb2xzL3BhZ2UvMQor
ICAgICAgICB3aGVyZSAxIGlzIHRoZSBudW1iZXIgb2YgdGhlIFFXZWJQYWdlIGluc3RhbmNlLgor
CisgICAgICAgICogQXBpL3F3ZWJpbnNwZWN0b3IuY3BwOgorICAgICAgICAoUVdlYkluc3BlY3Rv
clByaXZhdGU6OmF0dGFjaFJlbW90ZUZyb250ZW5kKToKKyAgICAgICAgKFFXZWJJbnNwZWN0b3JQ
cml2YXRlOjpkZXRhY2hSZW1vdGVGcm9udGVuZCk6CisgICAgICAgICogQXBpL3F3ZWJpbnNwZWN0
b3JfcC5oOgorICAgICAgICAoUVdlYkluc3BlY3RvclByaXZhdGU6OlFXZWJJbnNwZWN0b3JQcml2
YXRlKToKKyAgICAgICAgKiBBcGkvcXdlYnBhZ2UuY3BwOgorICAgICAgICAoUVdlYlBhZ2VQcml2
YXRlOjpkeW5hbWljUHJvcGVydHlDaGFuZ2VFdmVudCk6CisgICAgICAgIChRV2ViUGFnZVByaXZh
dGU6Omluc3BlY3RvclNlcnZlclBvcnQpOgorICAgICAgICAoUVdlYlBhZ2U6On5RV2ViUGFnZSk6
CisgICAgICAgICogQXBpL3F3ZWJwYWdlX3AuaDoKKyAgICAgICAgKiBXZWJDb3JlU3VwcG9ydC9J
bnNwZWN0b3JDbGllbnRRdC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpJbnNwZWN0b3JDbGllbnRR
dDo6SW5zcGVjdG9yQ2xpZW50UXQpOgorICAgICAgICAoV2ViQ29yZTo6SW5zcGVjdG9yQ2xpZW50
UXQ6Omluc3BlY3RvckRlc3Ryb3llZCk6CisgICAgICAgIChXZWJDb3JlOjpJbnNwZWN0b3JDbGll
bnRRdDo6b3Blbkluc3BlY3RvckZyb250ZW5kKToKKyAgICAgICAgKFdlYkNvcmU6Okluc3BlY3Rv
ckNsaWVudFF0OjphdHRhY2hSZW1vdGVGcm9udGVuZCk6CisgICAgICAgIChXZWJDb3JlOjpJbnNw
ZWN0b3JDbGllbnRRdDo6ZGV0YWNoUmVtb3RlRnJvbnRlbmQpOgorICAgICAgICAoV2ViQ29yZTo6
SW5zcGVjdG9yQ2xpZW50UXQ6OnNlbmRNZXNzYWdlVG9Gcm9udGVuZCk6CisgICAgICAgIChXZWJD
b3JlOjpJbnNwZWN0b3JDbGllbnRRdDo6ZGlzcGF0Y2gpOgorICAgICAgICAqIFdlYkNvcmVTdXBw
b3J0L0luc3BlY3RvckNsaWVudFF0Lmg6CisKIDIwMTAtMDgtMjYgIEJlbmphbWluIFBvdWxhaW4g
IDxiZW5qYW1pbi5wb3VsYWluQG5va2lhLmNvbT4KIAogICAgICAgICBSZXZpZXdlZCBieSBTaW1v
biBIYXVzbWFubi4KZGlmZiAtLWdpdCBhL1dlYktpdC9xdC9XZWJDb3JlU3VwcG9ydC9JbnNwZWN0
b3JDbGllbnRRdC5jcHAgYi9XZWJLaXQvcXQvV2ViQ29yZVN1cHBvcnQvSW5zcGVjdG9yQ2xpZW50
UXQuY3BwCmluZGV4IGUxM2Y2YzM3MTg2MWQyYjc4MTFiM2VjYTU1MjNiY2YxY2FlZmExZjAuLmEy
YzVjOTQ4NTMxYWExM2Y4YTI3ODJiM2JmNmU4ZDYxYzdlMjE1ZjQgMTAwNjQ0Ci0tLSBhL1dlYktp
dC9xdC9XZWJDb3JlU3VwcG9ydC9JbnNwZWN0b3JDbGllbnRRdC5jcHAKKysrIGIvV2ViS2l0L3F0
L1dlYkNvcmVTdXBwb3J0L0luc3BlY3RvckNsaWVudFF0LmNwcApAQCAtMzIsNyArMzIsMTAgQEAK
ICNpbmNsdWRlICJJbnNwZWN0b3JDbGllbnRRdC5oIgogCiAjaW5jbHVkZSAiRnJhbWUuaCIKKyNp
bmNsdWRlICJJbnNwZWN0b3JCYWNrZW5kRGlzcGF0Y2hlci5oIgogI2luY2x1ZGUgIkluc3BlY3Rv
ckNvbnRyb2xsZXIuaCIKKyNpbmNsdWRlICJJbnNwZWN0b3JGcm9udGVuZC5oIgorI2luY2x1ZGUg
Ikluc3BlY3RvclNlcnZlclF0LmgiCiAjaW5jbHVkZSAiTm90SW1wbGVtZW50ZWQuaCIKICNpbmNs
dWRlICJQYWdlLmgiCiAjaW5jbHVkZSAiUGxhdGZvcm1TdHJpbmcuaCIKQEAgLTk2LDIxICs5OSwz
NSBAQCBwdWJsaWMgc2xvdHM6CiBJbnNwZWN0b3JDbGllbnRRdDo6SW5zcGVjdG9yQ2xpZW50UXQo
UVdlYlBhZ2UqIHBhZ2UpCiAgICAgOiBtX2luc3BlY3RlZFdlYlBhZ2UocGFnZSkKICAgICAsIG1f
ZnJvbnRlbmRXZWJQYWdlKDApCi17fQorICAgICwgbV9yZW1vdGVJbnNwZWN0b3IoZmFsc2UpCit7
CisgICAgSW5zcGVjdG9yU2VydmVyUXQqIHdlYkluc3BlY3RvclNlcnZlciA9IEluc3BlY3RvclNl
cnZlclF0OjpzZXJ2ZXIoKTsKKyAgICBpZiAod2ViSW5zcGVjdG9yU2VydmVyKQorICAgICAgICB3
ZWJJbnNwZWN0b3JTZXJ2ZXItPnJlZ2lzdGVyUGFnZShwYWdlLCB0aGlzKTsKK30KIAogdm9pZCBJ
bnNwZWN0b3JDbGllbnRRdDo6aW5zcGVjdG9yRGVzdHJveWVkKCkKIHsKKyAgICBJbnNwZWN0b3JT
ZXJ2ZXJRdCogd2ViSW5zcGVjdG9yU2VydmVyID0gSW5zcGVjdG9yU2VydmVyUXQ6OnNlcnZlcigp
OworICAgIGlmICh3ZWJJbnNwZWN0b3JTZXJ2ZXIpCisgICAgICAgIHdlYkluc3BlY3RvclNlcnZl
ci0+dW5yZWdpc3RlclBhZ2UobV9pbnNwZWN0ZWRXZWJQYWdlKTsKKwogICAgIGRlbGV0ZSB0aGlz
OwogfQogCiAgICAgCi12b2lkIEluc3BlY3RvckNsaWVudFF0OjpvcGVuSW5zcGVjdG9yRnJvbnRl
bmQoV2ViQ29yZTo6SW5zcGVjdG9yQ29udHJvbGxlciopCit2b2lkIEluc3BlY3RvckNsaWVudFF0
OjpvcGVuSW5zcGVjdG9yRnJvbnRlbmQoV2ViQ29yZTo6SW5zcGVjdG9yQ29udHJvbGxlciogaW5z
cGVjdG9yQ29udHJvbGxlcikKIHsKICAgICBRV2ViVmlldyogaW5zcGVjdG9yVmlldyA9IG5ldyBR
V2ViVmlldzsKICAgICBJbnNwZWN0b3JDbGllbnRXZWJQYWdlKiBpbnNwZWN0b3JQYWdlID0gbmV3
IEluc3BlY3RvckNsaWVudFdlYlBhZ2UoaW5zcGVjdG9yVmlldyk7CiAgICAgaW5zcGVjdG9yVmll
dy0+c2V0UGFnZShpbnNwZWN0b3JQYWdlKTsKIAogICAgIFFXZWJJbnNwZWN0b3IqIGluc3BlY3Rv
ciA9IG1faW5zcGVjdGVkV2ViUGFnZS0+ZC0+Z2V0T3JDcmVhdGVJbnNwZWN0b3IoKTsKKyAgICBp
ZiAobV9pbnNwZWN0ZWRXZWJQYWdlLT5kLT5pbnNwZWN0b3JTZXJ2ZXJQb3J0KCkpIHsKKyAgICAg
ICAgbV9yZW1vdGVJbnNwZWN0b3IgPSB0cnVlOworICAgICAgICByZXR1cm47CisgICAgfQorCiAg
ICAgLy8gVGhpcyBpcyBhIGtub3duIGhvb2sgdGhhdCBhbGxvd3MgY2hhbmdpbmcgdGhlIGRlZmF1
bHQgVVJMIGZvciB0aGUKICAgICAvLyBXZWIgaW5zcGVjdG9yLiBUaGlzIGlzIHVzZWQgZm9yIFNE
SyBwdXJwb3Nlcy4gUGxlYXNlIGtlZXAgdGhpcyBob29rCiAgICAgLy8gYXJvdW5kIGFuZCBkb24n
dCByZW1vdmUgaXQuCkBAIC0xNDAsNiArMTU3LDI0IEBAIHZvaWQgSW5zcGVjdG9yQ2xpZW50UXQ6
OnJlbGVhc2VGcm9udGVuZFBhZ2UoKQogICAgIG1fZnJvbnRlbmRXZWJQYWdlID0gMDsKIH0KIAor
Cit2b2lkIEluc3BlY3RvckNsaWVudFF0OjphdHRhY2hSZW1vdGVGcm9udGVuZChSZW1vdGVGcm9u
dGVuZENoYW5uZWwqIGNoYW5uZWwpCit7CisjaWYgRU5BQkxFKElOU1BFQ1RPUikKKyAgICAvLyBD
aGFubmVsIHdhcyBhbGxvY2F0ZWQgYnkgSW5zcGVjdG9yU2VydmVyUXQuIEhlcmUgd2UgdHJhbnNm
ZXIgb3duZXJzaGlwIHRvIGluc3BlY3Rvci4KKyAgICBtX2luc3BlY3RlZFdlYlBhZ2UtPmQtPmlu
c3BlY3Rvci0+ZC0+YXR0YWNoUmVtb3RlRnJvbnRlbmQoY2hhbm5lbCk7CisgICAgbV9pbnNwZWN0
ZWRXZWJQYWdlLT5kLT5pbnNwZWN0b3JDb250cm9sbGVyKCktPmNvbm5lY3RGcm9udGVuZCgpOwor
I2VuZGlmCit9CisKK3ZvaWQgSW5zcGVjdG9yQ2xpZW50UXQ6OmRldGFjaFJlbW90ZUZyb250ZW5k
KCkKK3sKKyNpZiBFTkFCTEUoSU5TUEVDVE9SKQorICAgIG1faW5zcGVjdGVkV2ViUGFnZS0+ZC0+
aW5zcGVjdG9yLT5kLT5kZXRhY2hSZW1vdGVGcm9udGVuZCgpOworICAgIG1faW5zcGVjdGVkV2Vi
UGFnZS0+ZC0+aW5zcGVjdG9yQ29udHJvbGxlcigpLT5kaXNjb25uZWN0RnJvbnRlbmQoKTsKKyNl
bmRpZgorfQorCiB2b2lkIEluc3BlY3RvckNsaWVudFF0OjpoaWdobGlnaHQoTm9kZSopCiB7CiAg
ICAgbm90SW1wbGVtZW50ZWQoKTsKQEAgLTE5Niw2ICsyMzEsMTYgQEAgdm9pZCBJbnNwZWN0b3JD
bGllbnRRdDo6c3RvcmVTZXR0aW5nKGNvbnN0IFN0cmluZyYga2V5LCBjb25zdCBTdHJpbmcmIHNl
dHRpbmcpCiAKIGJvb2wgSW5zcGVjdG9yQ2xpZW50UXQ6OnNlbmRNZXNzYWdlVG9Gcm9udGVuZChj
b25zdCBTdHJpbmcmIG1lc3NhZ2UpCiB7CisgICAgaWYgKG1fcmVtb3RlSW5zcGVjdG9yIAorICAg
ICAgICB8fCAobV9pbnNwZWN0ZWRXZWJQYWdlICYmIG1faW5zcGVjdGVkV2ViUGFnZS0+ZC0+aW5z
cGVjdG9yU2VydmVyUG9ydCgpKSkgeworICAgICAgICBtX3JlbW90ZUluc3BlY3RvciA9IHRydWU7
CisgICAgICAgIFFfQVNTRVJUKG1faW5zcGVjdGVkV2ViUGFnZS0+ZC0+aW5zcGVjdG9yLT5kLT5y
ZW1vdGVGcm9udGVuZCk7CisKKyAgICAgICAgUmVtb3RlRnJvbnRlbmRDaGFubmVsKiBzZXNzaW9u
ID0gcW9iamVjdF9jYXN0PFJlbW90ZUZyb250ZW5kQ2hhbm5lbCo+KG1faW5zcGVjdGVkV2ViUGFn
ZS0+ZC0+aW5zcGVjdG9yLT5kLT5yZW1vdGVGcm9udGVuZCk7CisgICAgICAgIGlmIChzZXNzaW9u
KQorICAgICAgICAgICAgc2Vzc2lvbi0+c2VuZE1lc3NhZ2VUb0Zyb250ZW5kKG1lc3NhZ2UpOwor
ICAgICAgICByZXR1cm4gdHJ1ZTsKKyAgICB9CiAgICAgaWYgKCFtX2Zyb250ZW5kV2ViUGFnZSkK
ICAgICAgICAgcmV0dXJuIGZhbHNlOwogCkBAIC0yMTgsNiArMjYzLDEyIEBAIGJvb2wgSW5zcGVj
dG9yQ2xpZW50UXQ6OnNlbmRNZXNzYWdlVG9Gcm9udGVuZChjb25zdCBTdHJpbmcmIG1lc3NhZ2Up
CiAgICAgcmV0dXJuIHRydWU7CiB9CiAKK3ZvaWQgSW5zcGVjdG9yQ2xpZW50UXQ6OmRpc3BhdGNo
KGNvbnN0IFN0cmluZyAmbWVzc2FnZSkKK3sKKyAgICBJbnNwZWN0b3JDb250cm9sbGVyKiBpbnNw
ZWN0b3JDb250cm9sbGVyID0gbV9pbnNwZWN0ZWRXZWJQYWdlLT5kLT5wYWdlLT5pbnNwZWN0b3JD
b250cm9sbGVyKCk7CisgICAgaW5zcGVjdG9yQ29udHJvbGxlci0+aW5zcGVjdG9yQmFja2VuZERp
c3BhdGNoZXIoKS0+ZGlzcGF0Y2gobWVzc2FnZSk7Cit9CisKIHN0YXRpYyBTdHJpbmcgdmFyaWFu
dFRvU2V0dGluZyhjb25zdCBRVmFyaWFudCYgcXZhcmlhbnQpCiB7CiAgICAgU3RyaW5nIHJldFZh
bDsKZGlmZiAtLWdpdCBhL1dlYktpdC9xdC9XZWJDb3JlU3VwcG9ydC9JbnNwZWN0b3JDbGllbnRR
dC5oIGIvV2ViS2l0L3F0L1dlYkNvcmVTdXBwb3J0L0luc3BlY3RvckNsaWVudFF0LmgKaW5kZXgg
OTUyNmM4ODBjMmVjM2JjMTVhMGYyMmFmZDllMzlhZTNmYWQ3Y2JjMC4uYThlZjkyYzQ4N2EyNzhj
MTkyMjNlODg1MTY3NTVhNjVkYzIwMzM2ZCAxMDA2NDQKLS0tIGEvV2ViS2l0L3F0L1dlYkNvcmVT
dXBwb3J0L0luc3BlY3RvckNsaWVudFF0LmgKKysrIGIvV2ViS2l0L3F0L1dlYkNvcmVTdXBwb3J0
L0luc3BlY3RvckNsaWVudFF0LmgKQEAgLTQzLDYgKzQzLDcgQEAgY2xhc3MgUVdlYlZpZXc7CiBu
YW1lc3BhY2UgV2ViQ29yZSB7CiBjbGFzcyBOb2RlOwogY2xhc3MgUGFnZTsKK2NsYXNzIFJlbW90
ZUZyb250ZW5kQ2hhbm5lbDsKIAogY2xhc3MgSW5zcGVjdG9yQ2xpZW50UXQgOiBwdWJsaWMgSW5z
cGVjdG9yQ2xpZW50IHsKIHB1YmxpYzoKQEAgLTU5LDEyICs2MCwxNyBAQCBwdWJsaWM6CiAgICAg
dmlydHVhbCB2b2lkIHN0b3JlU2V0dGluZyhjb25zdCBTdHJpbmcmIGtleSwgY29uc3QgU3RyaW5n
JiB2YWx1ZSk7CiAKICAgICB2aXJ0dWFsIGJvb2wgc2VuZE1lc3NhZ2VUb0Zyb250ZW5kKGNvbnN0
IFN0cmluZyYpOworICAgIHZpcnR1YWwgdm9pZCBkaXNwYXRjaChjb25zdCBTdHJpbmcgJm1lc3Nh
Z2UpOwogCiAgICAgdm9pZCByZWxlYXNlRnJvbnRlbmRQYWdlKCk7CiAKKyAgICB2b2lkIGF0dGFj
aFJlbW90ZUZyb250ZW5kKFJlbW90ZUZyb250ZW5kQ2hhbm5lbCAqY2hhbm5lbCk7CisgICAgdm9p
ZCBkZXRhY2hSZW1vdGVGcm9udGVuZCgpOworCiBwcml2YXRlOgogICAgIFFXZWJQYWdlKiBtX2lu
c3BlY3RlZFdlYlBhZ2U7CiAgICAgUVdlYlBhZ2UqIG1fZnJvbnRlbmRXZWJQYWdlOworICAgIGJv
b2wgbV9yZW1vdGVJbnNwZWN0b3I7CiB9OwogCiBjbGFzcyBJbnNwZWN0b3JGcm9udGVuZENsaWVu
dFF0IDogcHVibGljIEluc3BlY3RvckZyb250ZW5kQ2xpZW50TG9jYWwgewpAQCAtOTUsNiArMTAx
LDcgQEAgcHJpdmF0ZToKICAgICBib29sIG1fZGVzdHJveWluZ0luc3BlY3RvclZpZXc7CiAgICAg
SW5zcGVjdG9yQ2xpZW50UXQqIG1faW5zcGVjdG9yQ2xpZW50OwogfTsKKwogfQogCiAjZW5kaWYK
ZGlmZiAtLWdpdCBhL1dlYktpdC9xdC9XZWJDb3JlU3VwcG9ydC9JbnNwZWN0b3JTZXJ2ZXJRdC5j
cHAgYi9XZWJLaXQvcXQvV2ViQ29yZVN1cHBvcnQvSW5zcGVjdG9yU2VydmVyUXQuY3BwCm5ldyBm
aWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAuLjI1Y2FhMmM2ZjFiNWQxNzRkYjNjNDM3ZmRhODhjZDNmNzI2ODczNjgKLS0tIC9kZXYv
bnVsbAorKysgYi9XZWJLaXQvcXQvV2ViQ29yZVN1cHBvcnQvSW5zcGVjdG9yU2VydmVyUXQuY3Bw
CkBAIC0wLDAgKzEsMzQ3IEBACisvKgorICBDb3B5cmlnaHQgKEMpIDIwMTAgTm9raWEgQ29ycG9y
YXRpb24gYW5kL29yIGl0cyBzdWJzaWRpYXJ5KC1pZXMpCisKKyAgVGhpcyBsaWJyYXJ5IGlzIGZy
ZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vcgorICBtb2RpZnkgaXQg
dW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUgTGlicmFyeSBHZW5lcmFsIFB1YmxpYworICBMaWNl
bnNlIGFzIHB1Ymxpc2hlZCBieSB0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uOyBlaXRoZXIK
KyAgdmVyc2lvbiAyIG9mIHRoZSBMaWNlbnNlLCBvciAoYXQgeW91ciBvcHRpb24pIGFueSBsYXRl
ciB2ZXJzaW9uLgorCisgIFRoaXMgbGlicmFyeSBpcyBkaXN0cmlidXRlZCBpbiB0aGUgaG9wZSB0
aGF0IGl0IHdpbGwgYmUgdXNlZnVsLAorICBidXQgV0lUSE9VVCBBTlkgV0FSUkFOVFk7IHdpdGhv
dXQgZXZlbiB0aGUgaW1wbGllZCB3YXJyYW50eSBvZgorICBNRVJDSEFOVEFCSUxJVFkgb3IgRklU
TkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlIEdOVQorICBMaWJyYXJ5IEdl
bmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KKworICBZb3Ugc2hvdWxkIGhh
dmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgTGlicmFyeSBHZW5lcmFsIFB1YmxpYyBMaWNl
bnNlCisgIGFsb25nIHdpdGggdGhpcyBsaWJyYXJ5OyBzZWUgdGhlIGZpbGUgQ09QWUlORy5MSUIu
ICBJZiBub3QsIHdyaXRlIHRvCisgIHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb24sIEluYy4s
IDUxIEZyYW5rbGluIFN0cmVldCwgRmlmdGggRmxvb3IsCisgIEJvc3RvbiwgTUEgMDIxMTAtMTMw
MSwgVVNBLgorKi8KKworCisjaW5jbHVkZSAiY29uZmlnLmgiCisjaW5jbHVkZSAiSW5zcGVjdG9y
U2VydmVyUXQuaCIKKworI2luY2x1ZGUgIkluc3BlY3RvckNsaWVudFF0LmgiCisjaW5jbHVkZSAi
TUQ1LmgiCisjaW5jbHVkZSA8UUZpbGU+CisjaW5jbHVkZSA8UUh0dHBIZWFkZXI+CisjaW5jbHVk
ZSA8UUh0dHBSZXF1ZXN0SGVhZGVyPgorI2luY2x1ZGUgPFFIdHRwUmVzcG9uc2VIZWFkZXI+Cisj
aW5jbHVkZSA8UVN0cmluZz4KKyNpbmNsdWRlIDxRU3RyaW5nTGlzdD4KKyNpbmNsdWRlIDxRVGNw
U2VydmVyPgorI2luY2x1ZGUgPFFUY3BTb2NrZXQ+CisjaW5jbHVkZSA8UVVybD4KKyNpbmNsdWRl
IDxRV2lkZ2V0PgorI2luY2x1ZGUgPHFlbmRpYW4uaD4KKworbmFtZXNwYWNlIFdlYkNvcmUgewor
CitzdGF0aWMgdm9pZCBzZXRDaGFsbGVuZ2VOdW1iZXIodW5zaWduZWQgY2hhciogYnVmLCB1aW50
MzJfdCBudW1iZXIpCit7CisgICAgdW5zaWduZWQgY2hhciogcCA9IGJ1ZiArIDM7CisgICAgZm9y
IChpbnQgaSA9IDA7IGkgPCA0OyBpKyspIHsKKyAgICAgICAgKnAgPSBudW1iZXIgJiAweEZGOwor
ICAgICAgICAtLXA7CisgICAgICAgIG51bWJlciA+Pj0gODsKKyAgICB9Cit9CisKK3N0YXRpYyB2
b2lkIGdlbmVyYXRlRXhwZWN0ZWRDaGFsbGVuZ2VSZXNwb25zZSh1aW50MzJfdCBudW1iZXIxLCB1
aW50MzJfdCBudW1iZXIyLCB1bnNpZ25lZCBjaGFyIGtleTNbOF0sIHVuc2lnbmVkIGNoYXIgZXhw
ZWN0ZWRDaGFsbGVuZ2VbMTZdKQoreworICAgIHVuc2lnbmVkIGNoYXIgY2hhbGxlbmdlWzE2XTsK
KyAgICBzZXRDaGFsbGVuZ2VOdW1iZXIoJmNoYWxsZW5nZVswXSwgbnVtYmVyMSk7CisgICAgc2V0
Q2hhbGxlbmdlTnVtYmVyKCZjaGFsbGVuZ2VbNF0sIG51bWJlcjIpOworICAgIG1lbWNweSgmY2hh
bGxlbmdlWzhdLCBrZXkzLCA4KTsKKyAgICBNRDUgbWQ1OworICAgIG1kNS5hZGRCeXRlcyhjaGFs
bGVuZ2UsIHNpemVvZihjaGFsbGVuZ2UpKTsKKyAgICBWZWN0b3I8dWludDhfdCwgMTY+IGRpZ2Vz
dDsKKyAgICBtZDUuY2hlY2tzdW0oZGlnZXN0KTsKKyAgICBtZW1jcHkoZXhwZWN0ZWRDaGFsbGVu
Z2UsIGRpZ2VzdC5kYXRhKCksIDE2KTsKK30KKworc3RhdGljIHF1aW50MzIgZ2V0Q2hhbGxlbmdl
TnVtYmVyRnJvbUZpZWxkKFFTdHJpbmcgZmllbGQpCit7CisgICAgUVN0cmluZyBuU3RyaW5nOwor
ICAgIGludCBuU3BhY2VzID0gMDsKKyAgICBmb3IgKGludCBpID0gMDsgaSA8IGZpZWxkLnNpemUo
KTsgaSsrKSB7CisgICAgICAgIFFDaGFyIGMgPSBmaWVsZFtpXTsKKyAgICAgICAgaWYgKGMgPT0g
KFFDaGFyKScgJykgeworICAgICAgICAgICAgblNwYWNlcysrOworICAgICAgICB9IGVsc2UgaWYg
KChjID49IChRQ2hhciknMCcpICYmIChjIDw9IChRQ2hhciknOScpKSB7CisgICAgICAgICAgICBu
U3RyaW5nLmFwcGVuZCgoUUNoYXIpYyk7CisgICAgICAgIH0KKyAgICB9CisgICAgcXVpbnQzMiBu
dW0gPSBuU3RyaW5nLnRvTG9uZygpOworICAgIHF1aW50MzIgcmVzdWx0ID0gKG5TcGFjZXMgPyAo
bnVtIC8gblNwYWNlcykgOiBudW0pOworICAgIHJldHVybiByZXN1bHQ7Cit9CisKK3N0YXRpYyBJ
bnNwZWN0b3JTZXJ2ZXJRdCogc1NlcnZlcjsKKworSW5zcGVjdG9yU2VydmVyUXQqIEluc3BlY3Rv
clNlcnZlclF0OjpzZXJ2ZXIoKQoreworICAgIGlmICghc1NlcnZlcikKKyAgICAgICAgc1NlcnZl
ciA9IG5ldyBJbnNwZWN0b3JTZXJ2ZXJRdCgpOworCisgICAgcmV0dXJuIHNTZXJ2ZXI7Cit9CisK
K0luc3BlY3RvclNlcnZlclF0OjpJbnNwZWN0b3JTZXJ2ZXJRdCgpCisgICAgOiBRT2JqZWN0KCkK
KyAgICAsIG1fdGNwU2VydmVyKDApCisgICAgLCBtX3BhZ2VOdW1iZXIoMSkKK3sKK30KKworSW5z
cGVjdG9yU2VydmVyUXQ6On5JbnNwZWN0b3JTZXJ2ZXJRdCgpCit7CisgICAgY2xvc2UoKTsKK30K
Kwordm9pZCBJbnNwZWN0b3JTZXJ2ZXJRdDo6bGlzdGVuKHF1aW50MTYgcG9ydCkKK3sKKyAgICBp
ZiAobV90Y3BTZXJ2ZXIpCisgICAgICAgIHJldHVybjsKKworICAgIG1fdGNwU2VydmVyID0gbmV3
IFFUY3BTZXJ2ZXIoKTsKKyAgICBtX3RjcFNlcnZlci0+bGlzdGVuKFFIb3N0QWRkcmVzczo6QW55
LCBwb3J0KTsKKyAgICBjb25uZWN0KG1fdGNwU2VydmVyLCBTSUdOQUwobmV3Q29ubmVjdGlvbigp
KSwgU0xPVChuZXdDb25uZWN0aW9uKCkpKTsKK30KKwordm9pZCBJbnNwZWN0b3JTZXJ2ZXJRdDo6
Y2xvc2UoKQoreworICAgIGlmIChtX3RjcFNlcnZlcikgeworICAgICAgICBtX3RjcFNlcnZlci0+
Y2xvc2UoKTsKKyAgICAgICAgZGVsZXRlIG1fdGNwU2VydmVyOworICAgIH0KKyAgICBtX3RjcFNl
cnZlciA9IDA7Cit9CisKK0luc3BlY3RvckNsaWVudFF0KiBJbnNwZWN0b3JTZXJ2ZXJRdDo6aW5z
cGVjdG9yQ2xpZW50KGludCBwYWdlTnVtKQoreworICAgIFFXZWJQYWdlKiBwYWdlID0gbV9wYWdl
cy52YWx1ZShwYWdlTnVtKTsKKyAgICBJbnNwZWN0b3JDbGllbnRRdCogY2xpZW50ID0gbV9pbnNw
ZWN0b3JDbGllbnRzLnZhbHVlKHBhZ2UsIDApOworICAgIHJldHVybiBjbGllbnQ7Cit9CisKK3Zv
aWQgSW5zcGVjdG9yU2VydmVyUXQ6OnJlZ2lzdGVyUGFnZShRV2ViUGFnZSogcGFnZSwgSW5zcGVj
dG9yQ2xpZW50UXQqIGNsaWVudCkKK3sKKyAgICBpZiAoIW1fcGFnZXMua2V5KHBhZ2UpKQorICAg
ICAgICBtX3BhZ2VzLmluc2VydChtX3BhZ2VOdW1iZXIrKywgcGFnZSk7CisgICAgbV9pbnNwZWN0
b3JDbGllbnRzLmluc2VydChwYWdlLCBjbGllbnQpOworfQorCit2b2lkIEluc3BlY3RvclNlcnZl
clF0Ojp1bnJlZ2lzdGVyUGFnZShRV2ViUGFnZSogcGFnZSkKK3sKKyAgICBpbnQgcGFnZU51bSA9
IG1fcGFnZXMua2V5KHBhZ2UpOworICAgIG1fcGFnZXMucmVtb3ZlKHBhZ2VOdW0pOworICAgIG1f
aW5zcGVjdG9yQ2xpZW50cy5yZW1vdmUocGFnZSk7CisgICAgaWYgKCFtX3BhZ2VzLnNpemUoKSkg
eworICAgICAgICBzU2VydmVyID0gMDsKKyAgICAgICAgY2xvc2UoKTsKKyAgICAgICAgZGVsZXRl
TGF0ZXIoKTsKKyAgICB9Cit9CisKK3ZvaWQgSW5zcGVjdG9yU2VydmVyUXQ6Om5ld0Nvbm5lY3Rp
b24oKQoreworICAgIFFUY3BTb2NrZXQqIG1fdGNwQ29ubmVjdGlvbiA9IG1fdGNwU2VydmVyLT5u
ZXh0UGVuZGluZ0Nvbm5lY3Rpb24oKTsKKyAgICBIdHRwUmVxdWVzdEhhbmRsZXIqIGhhbmRsZXIg
PSBuZXcgSHR0cFJlcXVlc3RIYW5kbGVyKG1fdGNwQ29ubmVjdGlvbiwgdGhpcyk7CisgICAgaGFu
ZGxlci0+c2V0UGFyZW50KHRoaXMpOworfQorCitIdHRwUmVxdWVzdEhhbmRsZXI6Okh0dHBSZXF1
ZXN0SGFuZGxlcihRVGNwU29ja2V0KiB0Y3BDb25uZWN0aW9uLCBJbnNwZWN0b3JTZXJ2ZXJRdCog
c2VydmVyKQorICAgIDogUU9iamVjdChzZXJ2ZXIpCisgICAgLCBtX3RjcENvbm5lY3Rpb24odGNw
Q29ubmVjdGlvbikKKyAgICAsIG1fc2VydmVyKHNlcnZlcikKKyAgICAsIG1faW5zcGVjdG9yQ2xp
ZW50KDApCit7CisgICAgbV9lbmRPZkhlYWRlcnMgPSBmYWxzZTsgICAgCisgICAgbV9jb250ZW50
TGVuZ3RoID0gMDsKKworICAgIGNvbm5lY3QobV90Y3BDb25uZWN0aW9uLCBTSUdOQUwocmVhZHlS
ZWFkKCkpLCBTTE9UKHRjcFJlYWR5UmVhZCgpKSk7CisgICAgY29ubmVjdChtX3RjcENvbm5lY3Rp
b24sIFNJR05BTChkaXNjb25uZWN0ZWQoKSksIFNMT1QodGNwQ29ubmVjdGlvbkRpc2Nvbm5lY3Rl
ZCgpKSk7Cit9CisKK0h0dHBSZXF1ZXN0SGFuZGxlcjo6fkh0dHBSZXF1ZXN0SGFuZGxlcigpCit7
Cit9CisKK3ZvaWQgSHR0cFJlcXVlc3RIYW5kbGVyOjp0Y3BSZWFkeVJlYWQoKQoreworICAgIFFI
dHRwUmVxdWVzdEhlYWRlciBoZWFkZXI7CisgICAgYm9vbCBpc1dlYlNvY2tldCA9IGZhbHNlOwor
ICAgIGlmICghbV90Y3BDb25uZWN0aW9uKQorICAgICAgICByZXR1cm47CisKKyAgICBpZiAoIW1f
ZW5kT2ZIZWFkZXJzKSB7CisgICAgICAgIHdoaWxlIChtX3RjcENvbm5lY3Rpb24tPmJ5dGVzQXZh
aWxhYmxlKCkgJiYgIW1fZW5kT2ZIZWFkZXJzKSB7CisgICAgICAgICAgICBRQnl0ZUFycmF5IGxp
bmUgPSBtX3RjcENvbm5lY3Rpb24tPnJlYWRMaW5lKCk7CisgICAgICAgICAgICBtX2RhdGEuYXBw
ZW5kKGxpbmUpOworICAgICAgICAgICAgaWYgKGxpbmUgPT0gIlxyXG4iKQorICAgICAgICAgICAg
ICAgIG1fZW5kT2ZIZWFkZXJzID0gdHJ1ZTsKKyAgICAgICAgfQorICAgICAgICBpZiAobV9lbmRP
ZkhlYWRlcnMpIHsKKyAgICAgICAgICAgIGhlYWRlciA9IFFIdHRwUmVxdWVzdEhlYWRlcihRU3Ry
aW5nOjpmcm9tTGF0aW4xKG1fZGF0YSkpOworICAgICAgICAgICAgaWYgKGhlYWRlci5pc1ZhbGlk
KCkpIHsKKyAgICAgICAgICAgICAgICBtX3BhdGggPSBoZWFkZXIucGF0aCgpOworICAgICAgICAg
ICAgICAgIG1fY29udGVudFR5cGUgPSBoZWFkZXIuY29udGVudFR5cGUoKS50b0xhdGluMSgpOwor
ICAgICAgICAgICAgICAgIG1fY29udGVudExlbmd0aCA9IGhlYWRlci5jb250ZW50TGVuZ3RoKCk7
CisgICAgICAgICAgICAgICAgaWYgKGhlYWRlci5oYXNLZXkoIlVwZ3JhZGUiKSAmJiAoaGVhZGVy
LnZhbHVlKCJVcGdyYWRlIikgPT0gUUxhdGluMVN0cmluZygiV2ViU29ja2V0IikpKQorICAgICAg
ICAgICAgICAgICAgICBpc1dlYlNvY2tldCA9IHRydWU7CisKKyAgICAgICAgICAgICAgICBtX2Rh
dGEuY2xlYXIoKTsKKyAgICAgICAgICAgIH0KKyAgICAgICAgfQorICAgIH0KKworICAgIGlmICht
X2VuZE9mSGVhZGVycykgeworICAgICAgICBRU3RyaW5nTGlzdCBwYXRoQW5kUXVlcnkgPSBtX3Bh
dGguc3BsaXQoIj8iKTsKKyAgICAgICAgbV9wYXRoID0gcGF0aEFuZFF1ZXJ5WzBdOworICAgICAg
ICBRU3RyaW5nTGlzdCB3b3JkcyA9IG1fcGF0aC5zcGxpdChRU3RyaW5nOjpmcm9tTGF0aW4xKCIv
IikpOworCisgICAgICAgIGlmIChpc1dlYlNvY2tldCkgeworICAgICAgICAgICAgLy8gc3dpdGNo
IHRvIHdlYnNvY2tldC1zdHlsZSBXZWJTb2NrZXRTZXJ2aWNlIG1lc3NhZ2luZworICAgICAgICAg
ICAgaWYgKG1fdGNwQ29ubmVjdGlvbikgeworICAgICAgICAgICAgICAgIG1fdGNwQ29ubmVjdGlv
bi0+ZGlzY29ubmVjdChTSUdOQUwocmVhZHlSZWFkKCkpKTsKKyAgICAgICAgICAgICAgICBjb25u
ZWN0KG1fdGNwQ29ubmVjdGlvbiwgU0lHTkFMKHJlYWR5UmVhZCgpKSwgU0xPVCh3ZWJTb2NrZXRS
ZWFkeVJlYWQoKSkpOworCisgICAgICAgICAgICAgICAgUUJ5dGVBcnJheSBrZXkzID0gbV90Y3BD
b25uZWN0aW9uLT5yZWFkKDgpOworCisgICAgICAgICAgICAgICAgcXVpbnQzMiBudW1iZXIxID0g
Z2V0Q2hhbGxlbmdlTnVtYmVyRnJvbUZpZWxkKGhlYWRlci52YWx1ZSgiU2VjLVdlYlNvY2tldC1L
ZXkxIikpOworICAgICAgICAgICAgICAgIHF1aW50MzIgbnVtYmVyMiA9IGdldENoYWxsZW5nZU51
bWJlckZyb21GaWVsZChoZWFkZXIudmFsdWUoIlNlYy1XZWJTb2NrZXQtS2V5MiIpKTsKKworICAg
ICAgICAgICAgICAgIGNoYXIgcmVzcG9uc2VEYXRhWzE2XTsKKyAgICAgICAgICAgICAgICBnZW5l
cmF0ZUV4cGVjdGVkQ2hhbGxlbmdlUmVzcG9uc2UobnVtYmVyMSwgbnVtYmVyMiwgKHVuc2lnbmVk
IGNoYXIqKWtleTMuZGF0YSgpLCAodW5zaWduZWQgY2hhciopcmVzcG9uc2VEYXRhKTsKKyAgICAg
ICAgICAgICAgICBRQnl0ZUFycmF5IHJlc3BvbnNlKHJlc3BvbnNlRGF0YSwgc2l6ZW9mKHJlc3Bv
bnNlRGF0YSkpOworCisgICAgICAgICAgICAgICAgUUh0dHBSZXNwb25zZUhlYWRlciByZXNwb25z
ZUhlYWRlcigxMDEsICJXZWJTb2NrZXQgUHJvdG9jb2wgSGFuZHNoYWtlIiwgMSwgMSk7CisgICAg
ICAgICAgICAgICAgcmVzcG9uc2VIZWFkZXIuc2V0VmFsdWUoIlVwZ3JhZGUiLCBoZWFkZXIudmFs
dWUoIlVwZ3JhZGUiKSk7CisgICAgICAgICAgICAgICAgcmVzcG9uc2VIZWFkZXIuc2V0VmFsdWUo
IkNvbm5lY3Rpb24iLCBoZWFkZXIudmFsdWUoIkNvbm5lY3Rpb24iKSk7CisgICAgICAgICAgICAg
ICAgcmVzcG9uc2VIZWFkZXIuc2V0VmFsdWUoIlNlYy1XZWJTb2NrZXQtT3JpZ2luIiwgaGVhZGVy
LnZhbHVlKCJPcmlnaW4iKSk7CisgICAgICAgICAgICAgICAgcmVzcG9uc2VIZWFkZXIuc2V0VmFs
dWUoIlNlYy1XZWJTb2NrZXQtTG9jYXRpb24iLCAoIndzOi8vIiArIGhlYWRlci52YWx1ZSgiSG9z
dCIpICsgbV9wYXRoKSk7CisgICAgICAgICAgICAgICAgcmVzcG9uc2VIZWFkZXIuc2V0Q29udGVu
dExlbmd0aChyZXNwb25zZS5zaXplKCkpOworICAgICAgICAgICAgICAgIG1fdGNwQ29ubmVjdGlv
bi0+d3JpdGUocmVzcG9uc2VIZWFkZXIudG9TdHJpbmcoKS50b0xhdGluMSgpKTsKKyAgICAgICAg
ICAgICAgICBtX3RjcENvbm5lY3Rpb24tPndyaXRlKHJlc3BvbnNlKTsKKyAgICAgICAgICAgICAg
ICBtX3RjcENvbm5lY3Rpb24tPmZsdXNoKCk7CisKKyAgICAgICAgICAgICAgICBpZiAoKHdvcmRz
LnNpemUoKSA9PSA0KQorICAgICAgICAgICAgICAgICAgICAmJiAod29yZHNbMV0gPT0gUVN0cmlu
Zzo6ZnJvbUxhdGluMSgiZGV2dG9vbHMiKSkKKyAgICAgICAgICAgICAgICAgICAgJiYgKHdvcmRz
WzJdID09IFFTdHJpbmc6OmZyb21MYXRpbjEoInBhZ2UiKSkpIHsKKyAgICAgICAgICAgICAgICAg
ICAgaW50IHBhZ2VOdW0gPSB3b3Jkc1szXS50b0ludCgpOworCisgICAgICAgICAgICAgICAgICAg
IG1faW5zcGVjdG9yQ2xpZW50ID0gbV9zZXJ2ZXItPmluc3BlY3RvckNsaWVudChwYWdlTnVtKTsK
KyAgICAgICAgICAgICAgICAgICAgLy8gYXR0YWNoIHJlbW90ZUZyb250ZW5kQ2hhbm5lbCB0byBp
bnNwZWN0b3IsIGFsc28gdHJhbnNmZXJyaW5nIG93bmVyc2hpcAorICAgICAgICAgICAgICAgICAg
ICBpZiAobV9pbnNwZWN0b3JDbGllbnQpCisgICAgICAgICAgICAgICAgICAgICAgICBtX2luc3Bl
Y3RvckNsaWVudC0+YXR0YWNoUmVtb3RlRnJvbnRlbmQobmV3IFJlbW90ZUZyb250ZW5kQ2hhbm5l
bCh0aGlzKSk7CisgICAgICAgICAgICAgICAgfQorCisgICAgICAgICAgICB9CisKKyAgICAgICAg
ICAgIHJldHVybjsKKyAgICAgICAgfQorICAgICAgICBpZiAobV9jb250ZW50TGVuZ3RoICYmICht
X3RjcENvbm5lY3Rpb24tPmJ5dGVzQXZhaWxhYmxlKCkgPCBtX2NvbnRlbnRMZW5ndGgpKQorICAg
ICAgICAgICAgcmV0dXJuOworCisgICAgICAgIFFCeXRlQXJyYXkgY29udGVudCA9IG1fdGNwQ29u
bmVjdGlvbi0+cmVhZChtX2NvbnRlbnRMZW5ndGgpOworICAgICAgICBtX2VuZE9mSGVhZGVycyA9
IGZhbHNlOworCisgICAgICAgIFFTdHJpbmcgcGF0aCA9IFFTdHJpbmcoIjolMSIpLmFyZyhtX3Bh
dGgpOworICAgICAgICBRRmlsZSBmaWxlKHBhdGgpOworICAgICAgICBRQnl0ZUFycmF5IHJlc3Bv
bnNlOworICAgICAgICAvLyBJdCBzZWVtcyB0aGF0IHRoZXJlIHNob3VsZCBiZSBhbiBlbnVtIG9y
IGRlZmluZSBmb3IgdGhlc2Ugc3RhdHVzIGNvZGVzIHNvbWV3aGVyZSBpbiBRdCBvciBXZWJLaXQs
CisgICAgICAgIC8vIGJ1dCBncmVwIGZhaWxzIHRvIHR1cm4gb25lIHVwLgorICAgICAgICAvLyBR
TmV0d29yayB1c2VzIHRoZSBudW1lcmljIHZhbHVlcyBkaXJlY3RseS4KKyAgICAgICAgaW50IGNv
ZGUgPSAyMDA7CisgICAgICAgIFFTdHJpbmcgdGV4dCA9IFFTdHJpbmc6OmZyb21MYXRpbjEoIk9L
Iik7CisgICAgICAgIGlmIChmaWxlLmV4aXN0cygpKSB7CisgICAgICAgICAgICBmaWxlLm9wZW4o
UUlPRGV2aWNlOjpSZWFkT25seSk7CisgICAgICAgICAgICByZXNwb25zZSA9IGZpbGUucmVhZEFs
bCgpOworICAgICAgICB9IGVsc2UgeworICAgICAgICAgICAgY29kZSA9IDQwNDsKKyAgICAgICAg
ICAgIHRleHQgPSBRU3RyaW5nOjpmcm9tTGF0aW4xKCJOb3QgT0siKTsKKyAgICAgICAgfQorCisg
ICAgICAgIFFIdHRwUmVzcG9uc2VIZWFkZXIgcmVzcG9uc2VIZWFkZXIoY29kZSwgdGV4dCwgMSwg
MCk7CisgICAgICAgIHJlc3BvbnNlSGVhZGVyLnNldENvbnRlbnRMZW5ndGgocmVzcG9uc2Uuc2l6
ZSgpKTsKKyAgICAgICAgaWYgKCFtX2NvbnRlbnRUeXBlLmlzRW1wdHkoKSkKKyAgICAgICAgICAg
IHJlc3BvbnNlSGVhZGVyLnNldENvbnRlbnRUeXBlKFFTdHJpbmc6OmZyb21MYXRpbjEobV9jb250
ZW50VHlwZSkpOworCisgICAgICAgIFFCeXRlQXJyYXkgYXNjaWlIZWFkZXIgPSByZXNwb25zZUhl
YWRlci50b1N0cmluZygpLnRvQXNjaWkoKTsKKyAgICAgICAgbV90Y3BDb25uZWN0aW9uLT53cml0
ZShhc2NpaUhlYWRlcik7CisKKyAgICAgICAgbV90Y3BDb25uZWN0aW9uLT53cml0ZShyZXNwb25z
ZSk7CisgICAgICAgIG1fdGNwQ29ubmVjdGlvbi0+Zmx1c2goKTsKKyAgICAgICAgbV90Y3BDb25u
ZWN0aW9uLT5jbG9zZSgpOworCisgICAgICAgIHJldHVybjsKKyAgICB9Cit9CisKK3ZvaWQgSHR0
cFJlcXVlc3RIYW5kbGVyOjp0Y3BDb25uZWN0aW9uRGlzY29ubmVjdGVkKCkKK3sKKyAgICBtX3Rj
cENvbm5lY3Rpb24gPSAwOworfQorCitpbnQgSHR0cFJlcXVlc3RIYW5kbGVyOjp3ZWJTb2NrZXRT
ZW5kKFFCeXRlQXJyYXkgcGF5bG9hZCkKK3sKKyAgICBtX3RjcENvbm5lY3Rpb24tPnB1dENoYXIo
MHgwMCk7CisgICAgaW50IG5CeXRlcyA9IG1fdGNwQ29ubmVjdGlvbi0+d3JpdGUocGF5bG9hZCk7
CisgICAgbV90Y3BDb25uZWN0aW9uLT5wdXRDaGFyKDB4RkYpOworICAgIG1fdGNwQ29ubmVjdGlv
bi0+Zmx1c2goKTsKKyAgICByZXR1cm4gbkJ5dGVzOworfQorCitpbnQgSHR0cFJlcXVlc3RIYW5k
bGVyOjp3ZWJTb2NrZXRTZW5kKGNvbnN0IGNoYXIqIGRhdGEsIHNpemVfdCBsZW5ndGgpCit7Cisg
ICAgbV90Y3BDb25uZWN0aW9uLT5wdXRDaGFyKDB4MDApOworICAgIGludCBuQnl0ZXMgPSBtX3Rj
cENvbm5lY3Rpb24tPndyaXRlKGRhdGEsIGxlbmd0aCk7CisgICAgbV90Y3BDb25uZWN0aW9uLT5w
dXRDaGFyKDB4RkYpOworICAgIG1fdGNwQ29ubmVjdGlvbi0+Zmx1c2goKTsKKyAgICByZXR1cm4g
bkJ5dGVzOworfQorCit2b2lkIEh0dHBSZXF1ZXN0SGFuZGxlcjo6d2ViU29ja2V0UmVhZHlSZWFk
KCkKK3sKKyAgICBpZiAoIW1fdGNwQ29ubmVjdGlvbi0+Ynl0ZXNBdmFpbGFibGUoKSkKKyAgICAg
ICAgcmV0dXJuOworICAgIFFCeXRlQXJyYXkgY29udGVudCA9IG1fdGNwQ29ubmVjdGlvbi0+cmVh
ZChtX3RjcENvbm5lY3Rpb24tPmJ5dGVzQXZhaWxhYmxlKCkpOworICAgIG1fZGF0YS5hcHBlbmQo
Y29udGVudCk7CisgICAgd2hpbGUgKG1fZGF0YS5zaXplKCkgPiAwKSB7CisgICAgICAgIGlmICht
X2RhdGFbMF0pIHsKKyAgICAgICAgICAgIHFDcml0aWNhbCgpIDw8ICAid2ViU29ja2V0UmVhZHlS
ZWFkOiB1bmtub3duIGZyYW1lIHR5cGUiIDw8IG1fZGF0YVswXTsKKyAgICAgICAgICAgIG1fZGF0
YS5jbGVhcigpOworICAgICAgICAgICAgbV90Y3BDb25uZWN0aW9uLT5jbG9zZSgpOworICAgICAg
ICAgICAgcmV0dXJuOworICAgICAgICB9CisgICAgICAgIGludCBwb3MgPSBtX2RhdGEuaW5kZXhP
ZigweGZmLCAxKTsKKyAgICAgICAgaWYgKHBvcyA8IDApCisgICAgICAgICAgICByZXR1cm47CisK
KyAgICAgICAgc2l6ZV90IGxlbmd0aCA9IHBvcyAtIDE7CisKKyAgICAgICAgUUJ5dGVBcnJheSBw
YXlsb2FkID0gbV9kYXRhLm1pZCgxLCBsZW5ndGgpOworCisgICAgICAgIGlmIChtX2luc3BlY3Rv
ckNsaWVudCkKKyAgICAgICAgICAgIG1faW5zcGVjdG9yQ2xpZW50LT5kaXNwYXRjaChRU3RyaW5n
Ojpmcm9tVXRmOChwYXlsb2FkKSk7CisKKyAgICAgICAgbV9kYXRhID0gbV9kYXRhLm1pZChsZW5n
dGggKyAyKTsKKyAgICB9Cit9CisKK1JlbW90ZUZyb250ZW5kQ2hhbm5lbDo6UmVtb3RlRnJvbnRl
bmRDaGFubmVsKEh0dHBSZXF1ZXN0SGFuZGxlciogcmVxdWVzdEhhbmRsZXIpCisgICAgOiBRT2Jq
ZWN0KHJlcXVlc3RIYW5kbGVyKQorICAgICwgbV9yZXF1ZXN0SGFuZGxlcihyZXF1ZXN0SGFuZGxl
cikKK3sKK30KKworYm9vbCBSZW1vdGVGcm9udGVuZENoYW5uZWw6OnNlbmRNZXNzYWdlVG9Gcm9u
dGVuZChjb25zdCBTdHJpbmcgJm1lc3NhZ2UpCit7CisgICAgaWYgKCFtX3JlcXVlc3RIYW5kbGVy
KQorICAgICAgICByZXR1cm4gZmFsc2U7CisgICAgQ1N0cmluZyBjc3RyID0gbWVzc2FnZS51dGY4
KCk7CisgICAgcmV0dXJuIG1fcmVxdWVzdEhhbmRsZXItPndlYlNvY2tldFNlbmQoY3N0ci5kYXRh
KCksIGNzdHIubGVuZ3RoKCkpOworfQorCit9CmRpZmYgLS1naXQgYS9XZWJLaXQvcXQvV2ViQ29y
ZVN1cHBvcnQvSW5zcGVjdG9yU2VydmVyUXQuaCBiL1dlYktpdC9xdC9XZWJDb3JlU3VwcG9ydC9J
bnNwZWN0b3JTZXJ2ZXJRdC5oCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmU1YzM5ODI3YjE5ZTQxNWQyODkwZmJkNGU4
ZmVhMzZmYTE0ZmY4NTIKLS0tIC9kZXYvbnVsbAorKysgYi9XZWJLaXQvcXQvV2ViQ29yZVN1cHBv
cnQvSW5zcGVjdG9yU2VydmVyUXQuaApAQCAtMCwwICsxLDExMiBAQAorLyoKKyAgICBDb3B5cmln
aHQgKEMpIDIwMTAgTm9raWEgQ29ycG9yYXRpb24gYW5kL29yIGl0cyBzdWJzaWRpYXJ5KC1pZXMp
CisKKyAgICBUaGlzIGxpYnJhcnkgaXMgZnJlZSBzb2Z0d2FyZTsgeW91IGNhbiByZWRpc3RyaWJ1
dGUgaXQgYW5kL29yCisgICAgbW9kaWZ5IGl0IHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05VIExp
YnJhcnkgR2VuZXJhbCBQdWJsaWMKKyAgICBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieSB0aGUgRnJl
ZSBTb2Z0d2FyZSBGb3VuZGF0aW9uOyBlaXRoZXIKKyAgICB2ZXJzaW9uIDIgb2YgdGhlIExpY2Vu
c2UsIG9yIChhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uCisKKyAgICBUaGlzIGxp
YnJhcnkgaXMgZGlzdHJpYnV0ZWQgaW4gdGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCwK
KyAgICBidXQgV0lUSE9VVCBBTlkgV0FSUkFOVFk7IHdpdGhvdXQgZXZlbiB0aGUgaW1wbGllZCB3
YXJyYW50eSBvZgorICAgIE1FUkNIQU5UQUJJTElUWSBvciBGSVRORVNTIEZPUiBBIFBBUlRJQ1VM
QVIgUFVSUE9TRS4gIFNlZSB0aGUgR05VCisgICAgTGlicmFyeSBHZW5lcmFsIFB1YmxpYyBMaWNl
bnNlIGZvciBtb3JlIGRldGFpbHMuCisKKyAgICBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBj
b3B5IG9mIHRoZSBHTlUgTGlicmFyeSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlCisgICAgYWxvbmcg
d2l0aCB0aGlzIGxpYnJhcnk7IHNlZSB0aGUgZmlsZSBDT1BZSU5HLkxJQi4gIElmIG5vdCwgd3Jp
dGUgdG8KKyAgICB0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uLCBJbmMuLCA1MSBGcmFua2xp
biBTdHJlZXQsIEZpZnRoIEZsb29yLAorICAgIEJvc3RvbiwgTUEgMDIxMTAtMTMwMSwgVVNBLgor
Ki8KKworI2lmbmRlZiBJbnNwZWN0b3JTZXJ2ZXJRdF9oCisjZGVmaW5lIEluc3BlY3RvclNlcnZl
clF0X2gKKworI2luY2x1ZGUgPFFMaXN0PgorI2luY2x1ZGUgPFFNYXA+CisjaW5jbHVkZSA8UU9i
amVjdD4KKyNpbmNsdWRlIDxRUGFpcj4KKyNpbmNsdWRlIDxRU3RyaW5nPgorI2luY2x1ZGUgPHd0
Zi9Gb3J3YXJkLmg+CisKK2NsYXNzIFFUY3BTZXJ2ZXI7CitjbGFzcyBRVGNwU29ja2V0OworY2xh
c3MgUVdlYlBhZ2U7CisKK25hbWVzcGFjZSBXZWJDb3JlIHsKK2NsYXNzIEh0dHBSZXF1ZXN0SGFu
ZGxlcjsKK2NsYXNzIEluc3BlY3RvckNsaWVudFF0OworCitjbGFzcyBJbnNwZWN0b3JTZXJ2ZXJR
dCA6IHB1YmxpYyBRT2JqZWN0IHsKKyAgICBRX09CSkVDVAorcHVibGljOgorCisgICAgc3RhdGlj
IEluc3BlY3RvclNlcnZlclF0KiBzZXJ2ZXIoKTsKKworICAgIHZvaWQgbGlzdGVuKHF1aW50MTYg
cG9ydCk7CisKKyAgICB2b2lkIHJlZ2lzdGVyUGFnZShRV2ViUGFnZSAqcGFnZSwgSW5zcGVjdG9y
Q2xpZW50UXQqIGNsaWVudCk7CisgICAgdm9pZCB1bnJlZ2lzdGVyUGFnZShRV2ViUGFnZSAqcGFn
ZSk7CisKKyAgICB2b2lkIGNsb3NlKCk7CisgICAgSW5zcGVjdG9yQ2xpZW50UXQqIGluc3BlY3Rv
ckNsaWVudChpbnQgcGFnZU51bSk7CisKK3Byb3RlY3RlZDoKKyAgICBJbnNwZWN0b3JTZXJ2ZXJR
dCgpOworICAgIHZpcnR1YWwgfkluc3BlY3RvclNlcnZlclF0KCk7CisKK3ByaXZhdGUgc2xvdHM6
CisgICAgdm9pZCBuZXdDb25uZWN0aW9uKCk7CisKK3ByaXZhdGU6CisgICAgUVRjcFNlcnZlciog
bV90Y3BTZXJ2ZXI7CisgICAgUU1hcDxpbnQsIFFXZWJQYWdlKj4gbV9wYWdlczsKKyAgICBRTWFw
PFFXZWJQYWdlKiwgSW5zcGVjdG9yQ2xpZW50UXQqPiBtX2luc3BlY3RvckNsaWVudHM7CisgICAg
aW50IG1fcGFnZU51bWJlcjsKKworCit9OworCitjbGFzcyBSZW1vdGVGcm9udGVuZENoYW5uZWwg
OiBwdWJsaWMgUU9iamVjdCB7CisgICAgUV9PQkpFQ1QKKyAgICAgICAgcHVibGljOgorCisgICAg
UmVtb3RlRnJvbnRlbmRDaGFubmVsKEh0dHBSZXF1ZXN0SGFuZGxlciogcmVxdWVzdEhhbmRsZXIp
OworICAgIGJvb2wgc2VuZE1lc3NhZ2VUb0Zyb250ZW5kKGNvbnN0IFN0cmluZyYgbWVzc2FnZSk7
CisKK3ByaXZhdGU6CisgICAgSHR0cFJlcXVlc3RIYW5kbGVyKiBtX3JlcXVlc3RIYW5kbGVyOwor
fTsKKworY2xhc3MgSHR0cFJlcXVlc3RIYW5kbGVyIDogcHVibGljIFFPYmplY3QgeworICAgIFFf
T0JKRUNUCisKKyAgICAgICAgcHVibGljOgorCisgICAgSHR0cFJlcXVlc3RIYW5kbGVyKFFUY3BT
b2NrZXQgKnRjcENvbm5lY3Rpb24sIEluc3BlY3RvclNlcnZlclF0ICpzZXJ2ZXIpOworICAgIHZp
cnR1YWwgfkh0dHBSZXF1ZXN0SGFuZGxlcigpOworICAgIHZpcnR1YWwgaW50IHdlYlNvY2tldFNl
bmQoUUJ5dGVBcnJheSBwYXlsb2FkKTsKKyAgICB2aXJ0dWFsIGludCB3ZWJTb2NrZXRTZW5kKGNv
bnN0IGNoYXIgKnBheWxvYWQsIHNpemVfdCBsZW5ndGgpOworCitwcml2YXRlIHNsb3RzOgorICAg
IHZvaWQgdGNwUmVhZHlSZWFkKCk7CisgICAgdm9pZCB0Y3BDb25uZWN0aW9uRGlzY29ubmVjdGVk
KCk7CisgICAgdm9pZCB3ZWJTb2NrZXRSZWFkeVJlYWQoKTsKKworcHJpdmF0ZToKKyAgICBRVGNw
U29ja2V0KiBtX3RjcENvbm5lY3Rpb247CisgICAgSW5zcGVjdG9yU2VydmVyUXQqIG1fc2VydmVy
OworCisgICAgUVN0cmluZyBtX3BhdGg7CisgICAgUUJ5dGVBcnJheSBtX2NvbnRlbnRUeXBlOwor
ICAgIGludCBtX2NvbnRlbnRMZW5ndGg7CisgICAgYm9vbCBtX2VuZE9mSGVhZGVyczsKKyAgICBR
Qnl0ZUFycmF5IG1fZGF0YTsKKyAgICBJbnNwZWN0b3JDbGllbnRRdCogbV9pbnNwZWN0b3JDbGll
bnQ7CisKKyAgICB2b2lkIGhhbmRsZUluc3BlY3RvclJlcXVlc3QoUVN0cmluZ0xpc3Qgd29yZHMp
OworICAgIHZvaWQgaGFuZGxlRnJvbUZyb250ZW5kUmVxdWVzdCgpOworICAgIHZvaWQgaGFuZGxl
UmVzb3VyY2VSZXF1ZXN0KFFTdHJpbmdMaXN0IHdvcmRzKTsKKworfTsKKworfQorI2VuZGlmCmRp
ZmYgLS1naXQgYS9XZWJLaXRUb29scy9DaGFuZ2VMb2cgYi9XZWJLaXRUb29scy9DaGFuZ2VMb2cK
aW5kZXggNTgxMWVmMzFkZThmNzNlN2JmOGY4ODJjYTNjN2VhYTQ4ZWU5YTExNi4uM2E5M2VlOWNk
ZjBlNTBjMWMxNmI3Y2EwYjEwMjA1ZjNhODY1ZDRjZSAxMDA2NDQKLS0tIGEvV2ViS2l0VG9vbHMv
Q2hhbmdlTG9nCisrKyBiL1dlYktpdFRvb2xzL0NoYW5nZUxvZwpAQCAtMSwzICsxLDI3IEBACisy
MDEwLTA4LTI2ICBKYW1leSBIaWNrcyAgPGphbWV5LmhpY2tzQG5va2lhLmNvbT4KKworICAgICAg
ICBSZXZpZXdlZCBieSBOb2JvZHkgKE9PUFMhKS4KKworICAgICAgICBbUXRdIFJlbW90ZSBXZWIg
SW5zcGVjdG9yIHN1cHBvcnQgZm9yIFF0V2ViS2l0CisKKyAgICAgICAgaHR0cHM6Ly9idWdzLndl
YmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTQzOTg4CisKKyAgICAgICAgUnVucyBhIHdlYiBkZWJ1
ZyBzZXJ2ZXIgb24gcG9ydCBzcGVjaWZpZWQgYnkgUXRUZXN0QnJvd3NlcgorICAgICAgICBhcmd1
bWVudCAtcmVtb3RlLWluc3BlY3Rvci1wb3J0LiBQcm9wZXJ0eSBfcV93ZWJJbnNwZWN0b3JTZXJ2
ZXJQb3J0IG9mCisgICAgICAgIHRoZSBRV2ViUGFnZSBpbnN0YW5jZSB3aWxsIGJlIHNldCBhY2Nv
cmRpbmcgdG8gdGhlIGFyZ3VtZW50LiBBbGwKKyAgICAgICAgcGFnZXMgd2l0aCB0aGF0IHByb3Bl
cnR5IHNldCB3aWxsIGJlIHJlbW90ZWx5IGluc3BlY3RhYmxlLgorCisgICAgICAgIFVSTCBmb3Ig
cmVtb3RlIGluc3BlY3Rpb24gb2YgZmlyc3QgUVdlYlBhZ2UgaXMKKyAgICAgICAgICAgIGh0dHA6
Ly9sb2NhbGhvc3Q6OTIyMi9kZXZ0b29scy9wYWdlLzEKKyAgICAgICAgd2hlcmUgMSBpcyB0aGUg
bnVtYmVyIG9mIHRoZSBRV2ViUGFnZSBpbnN0YW5jZS4KKworICAgICAgICAqIFF0VGVzdEJyb3dz
ZXIvbGF1bmNoZXJ3aW5kb3cuY3BwOgorICAgICAgICAoTGF1bmNoZXJXaW5kb3c6OmluaXQpOgor
ICAgICAgICAqIFF0VGVzdEJyb3dzZXIvbGF1bmNoZXJ3aW5kb3cuaDoKKyAgICAgICAgKiBRdFRl
c3RCcm93c2VyL21haW4uY3BwOgorICAgICAgICAoTGF1bmNoZXJBcHBsaWNhdGlvbjo6aGFuZGxl
VXNlck9wdGlvbnMpOgorICAgICAgICAqIFNjcmlwdHMvd2Via2l0cHkvc3R5bGUvY2hlY2tlci5w
eToKKwogMjAxMC0wOC0yNiAgTWFoZXNoIEt1bGthcm5pICA8bWFoZXNoLmt1bGthcm5pQG5va2lh
LmNvbT4KIAogICAgICAgICBSZXZpZXdlZCBieSBLZW5uZXRoIFJvaGRlIENocmlzdGlhbnNlbi4K
ZGlmZiAtLWdpdCBhL1dlYktpdFRvb2xzL1F0VGVzdEJyb3dzZXIvbGF1bmNoZXJ3aW5kb3cuY3Bw
IGIvV2ViS2l0VG9vbHMvUXRUZXN0QnJvd3Nlci9sYXVuY2hlcndpbmRvdy5jcHAKaW5kZXggM2I0
N2YyOWNiNDY3YjQ3ZTkxMTliOTM0MDMzMzMyZDUyM2Y1ZDU4YS4uNjQ2YmIwN2QxYmZjMTdjMDY0
NTNjY2QwYzNjZTEyMTMxZjMwYjEwYiAxMDA2NDQKLS0tIGEvV2ViS2l0VG9vbHMvUXRUZXN0QnJv
d3Nlci9sYXVuY2hlcndpbmRvdy5jcHAKKysrIGIvV2ViS2l0VG9vbHMvUXRUZXN0QnJvd3Nlci9s
YXVuY2hlcndpbmRvdy5jcHAKQEAgLTkxLDYgKzkxLDkgQEAgdm9pZCBMYXVuY2hlcldpbmRvdzo6
aW5pdCgpCiAgICAgbV9pbnNwZWN0b3ItPmhpZGUoKTsKICAgICBjb25uZWN0KHRoaXMsIFNJR05B
TChkZXN0cm95ZWQoKSksIG1faW5zcGVjdG9yLCBTTE9UKGRlbGV0ZUxhdGVyKCkpKTsKIAorICAg
IGlmIChtX3dpbmRvd09wdGlvbnMucmVtb3RlSW5zcGVjdG9yUG9ydCkKKyAgICAgICAgcGFnZSgp
LT5zZXRQcm9wZXJ0eSgiX3Ffd2ViSW5zcGVjdG9yU2VydmVyUG9ydCIsIG1fd2luZG93T3B0aW9u
cy5yZW1vdGVJbnNwZWN0b3JQb3J0KTsKKwogICAgIC8vIHRoZSB6b29tIHZhbHVlcyBhcmUgY2hv
c2VuIHRvIGJlIGxpa2UgaW4gTW96aWxsYSBGaXJlZm94IDMKICAgICBpZiAoIW1fem9vbUxldmVs
cy5jb3VudCgpKSB7CiAgICAgICAgIG1fem9vbUxldmVscyA8PCAzMCA8PCA1MCA8PCA2NyA8PCA4
MCA8PCA5MDsKZGlmZiAtLWdpdCBhL1dlYktpdFRvb2xzL1F0VGVzdEJyb3dzZXIvbGF1bmNoZXJ3
aW5kb3cuaCBiL1dlYktpdFRvb2xzL1F0VGVzdEJyb3dzZXIvbGF1bmNoZXJ3aW5kb3cuaAppbmRl
eCA2NWYzOTBkODk0ZDU0NDNlMDdjNTQwMDMxZGZiMTVlNTNmYmE0NmY3Li5lMWM3NDcwYTg2YzU0
OGRkYjc1NTY4NjNiMTI1NThmNjA0YzZmNDlmIDEwMDY0NAotLS0gYS9XZWJLaXRUb29scy9RdFRl
c3RCcm93c2VyL2xhdW5jaGVyd2luZG93LmgKKysrIGIvV2ViS2l0VG9vbHMvUXRUZXN0QnJvd3Nl
ci9sYXVuY2hlcndpbmRvdy5oCkBAIC0xMTAsNiArMTEwLDcgQEAgcHVibGljOgogICAgIGJvb2wg
dXNlUUdMV2lkZ2V0Vmlld3BvcnQ7CiAjZW5kaWYKICAgICBRVXJsIGluc3BlY3RvclVybDsKKyAg
ICBxdWludDE2IHJlbW90ZUluc3BlY3RvclBvcnQ7CiB9OwogCiBjbGFzcyBMYXVuY2hlcldpbmRv
dyA6IHB1YmxpYyBNYWluV2luZG93IHsKZGlmZiAtLWdpdCBhL1dlYktpdFRvb2xzL1F0VGVzdEJy
b3dzZXIvbWFpbi5jcHAgYi9XZWJLaXRUb29scy9RdFRlc3RCcm93c2VyL21haW4uY3BwCmluZGV4
IGVjODY0ZTlkMDk1YTNlZjgwYTcyNTdkMGY5ZjJlM2ZlNTAyZmI0YWUuLjEyYTMxMWVlM2VhNmJj
Mzg3ZmVjY2E0ZjBmNTRmNTdjYTYxZmE5MzkgMTAwNjQ0Ci0tLSBhL1dlYktpdFRvb2xzL1F0VGVz
dEJyb3dzZXIvbWFpbi5jcHAKKysrIGIvV2ViS2l0VG9vbHMvUXRUZXN0QnJvd3Nlci9tYWluLmNw
cApAQCAtMTgwLDYgKzE4MCwxMSBAQCB2b2lkIExhdW5jaGVyQXBwbGljYXRpb246OmhhbmRsZVVz
ZXJPcHRpb25zKCkKICAgICBpZiAoaW5zcGVjdG9yVXJsSW5kZXggIT0gLTEpCiAgICAgICAgd2lu
ZG93T3B0aW9ucy5pbnNwZWN0b3JVcmwgPSB0YWtlT3B0aW9uVmFsdWUoJmFyZ3MsIGluc3BlY3Rv
clVybEluZGV4KTsKIAorICAgIFFTdHJpbmcgcmVtb3RlSW5zcGVjdG9yUG9ydEFyZygiLXJlbW90
ZS1pbnNwZWN0b3ItcG9ydCIpOworICAgIGludCByZW1vdGVJbnNwZWN0b3JQb3J0SW5kZXggPSBh
cmdzLmluZGV4T2YocmVtb3RlSW5zcGVjdG9yUG9ydEFyZyk7CisgICAgaWYgKHJlbW90ZUluc3Bl
Y3RvclBvcnRJbmRleCAhPSAtMSkKKyAgICAgICAgd2luZG93T3B0aW9ucy5yZW1vdGVJbnNwZWN0
b3JQb3J0ID0gdGFrZU9wdGlvblZhbHVlKCZhcmdzLCByZW1vdGVJbnNwZWN0b3JQb3J0SW5kZXgp
LnRvSW50KCk7CisKICAgICBpbnQgcm9ib3RJbmRleCA9IGFyZ3MuaW5kZXhPZigiLXIiKTsKICAg
ICBpZiAocm9ib3RJbmRleCAhPSAtMSkgewogICAgICAgICBRU3RyaW5nIGxpc3RGaWxlID0gdGFr
ZU9wdGlvblZhbHVlKCZhcmdzLCByb2JvdEluZGV4KTsK
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>65715</attachid>
            <date>2010-08-27 07:45:44 -0700</date>
            <delta_ts>2010-08-31 06:38:46 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-43988-20100827104542.patch</filename>
            <type>text/plain</type>
            <size>32159</size>
            <attacher name="Jamey Hicks">jamey.hicks</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1dlYkNvcmUvQ2hhbmdlTG9nIGIvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXgg
Y2IxN2NmNDM2MjUxMzhiOGU0MjVkYTllMWI3MTE0ZDkzZWFhNjQ4NS4uOGVlMTRhODZlNmY5YTZj
OWMxYzc1MjliNjU1ZTc4NjRkZjljNTRiOSAxMDA2NDQKLS0tIGEvV2ViQ29yZS9DaGFuZ2VMb2cK
KysrIGIvV2ViQ29yZS9DaGFuZ2VMb2cKQEAgLTEsMyArMSwyMiBAQAorMjAxMC0wOC0yNyAgSmFt
ZXkgSGlja3MgIDxqYW1leS5oaWNrc0Bub2tpYS5jb20+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkg
Tk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgW1F0XSBXZWIgSW5zcGVjdG9yOiBSZW1vdGUgV2Vi
IEluc3BlY3RvciBzdXBwb3J0IGZvciBRdFdlYktpdAorICAgICAgICBodHRwczovL2J1Z3Mud2Vi
a2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9NDM5ODgKKworICAgICAgICBSdW5zIGEgd2ViIGRlYnVn
IHNlcnZlciBvbiBwb3J0IHNwZWNpZmllZCBieSBRdFRlc3RCcm93c2VyCisgICAgICAgIGFyZ3Vt
ZW50IC1yZW1vdGUtaW5zcGVjdG9yLXBvcnQuIFByb3BlcnR5CisgICAgICAgIF9xX3dlYkluc3Bl
Y3RvclNlcnZlclBvcnQgb2YgdGhlIFFXZWJQYWdlIGluc3RhbmNlIHdpbGwgYmUgc2V0CisgICAg
ICAgIGFjY29yZGluZyB0byB0aGUgYXJndW1lbnQuIEFsbCBwYWdlcyB3aXRoIHRoYXQgcHJvcGVy
dHkgc2V0IHdpbGwKKyAgICAgICAgYmUgcmVtb3RlbHkgaW5zcGVjdGFibGUuCisKKyAgICAgICAg
VVJMIGZvciByZW1vdGUgaW5zcGVjdGlvbiBvZiBmaXJzdCBRV2ViUGFnZSBpcworICAgICAgICAg
ICAgaHR0cDovL2xvY2FsaG9zdDo5MjIyL2RldnRvb2xzL3BhZ2UvMQorICAgICAgICB3aGVyZSAx
IGlzIHRoZSBudW1iZXIgb2YgdGhlIFFXZWJQYWdlIGluc3RhbmNlLgorCisgICAgICAgICogV2Vi
Q29yZS5wcm86CisKIDIwMTAtMDgtMjYgIFBhdmVsIFBvZGl2aWxvdiAgPHBvZGl2aWxvdkBjaHJv
bWl1bS5vcmc+CiAKICAgICAgICAgUmV2aWV3ZWQgYnkgUGF2ZWwgRmVsZG1hbi4KZGlmZiAtLWdp
dCBhL1dlYkNvcmUvV2ViQ29yZS5wcm8gYi9XZWJDb3JlL1dlYkNvcmUucHJvCmluZGV4IDg2NWNm
YmMxZTVkNzZlMjMxZGRmYzJmOGZmYWRiMGViOGEwY2I2MDYuLjY5MzllODViMTM5OWU5MDNmYmRl
NDI1OGUzNzNkNDlhOGEwYjU2YjkgMTAwNjQ0Ci0tLSBhL1dlYkNvcmUvV2ViQ29yZS5wcm8KKysr
IGIvV2ViQ29yZS9XZWJDb3JlLnBybwpAQCAtMjE5NCw2ICsyMTk0LDcgQEAgSEVBREVSUyArPSBc
CiAgICAgeG1sL1hTTFRQcm9jZXNzb3IuaCBcCiAgICAgeG1sL1hTTFRVbmljb2RlU29ydC5oIFwK
ICAgICAkJFBXRC8uLi9XZWJLaXQvcXQvQXBpL3F3ZWJwbHVnaW5kYXRhYmFzZV9wLmggXAorICAg
ICQkUFdELy4uL1dlYktpdC9xdC9XZWJDb3JlU3VwcG9ydC9JbnNwZWN0b3JTZXJ2ZXJRdC5oIFwK
ICAgICAkJFBXRC8uLi9XZWJLaXQvcXQvV2ViQ29yZVN1cHBvcnQvUXRGYWxsYmFja1dlYlBvcHVw
LmggXAogICAgICQkUFdELy4uL1dlYktpdC9xdC9XZWJDb3JlU3VwcG9ydC9GcmFtZUxvYWRlckNs
aWVudFF0LmggXAogICAgICQkUFdELy4uL1dlYktpdC9xdC9XZWJDb3JlU3VwcG9ydC9GcmFtZU5l
dHdvcmtpbmdDb250ZXh0UXQuaCBcCkBAIC0yMjg5LDYgKzIyOTAsNyBAQCBTT1VSQ0VTICs9IFwK
ICAgICAuLi9XZWJLaXQvcXQvV2ViQ29yZVN1cHBvcnQvRWRpdENvbW1hbmRRdC5jcHAgXAogICAg
IC4uL1dlYktpdC9xdC9XZWJDb3JlU3VwcG9ydC9GcmFtZUxvYWRlckNsaWVudFF0LmNwcCBcCiAg
ICAgLi4vV2ViS2l0L3F0L1dlYkNvcmVTdXBwb3J0L0ZyYW1lTmV0d29ya2luZ0NvbnRleHRRdC5j
cHAgXAorICAgIC4uL1dlYktpdC9xdC9XZWJDb3JlU3VwcG9ydC9JbnNwZWN0b3JTZXJ2ZXJRdC5j
cHAgXAogICAgIC4uL1dlYktpdC9xdC9XZWJDb3JlU3VwcG9ydC9JbnNwZWN0b3JDbGllbnRRdC5j
cHAgXAogICAgIC4uL1dlYktpdC9xdC9XZWJDb3JlU3VwcG9ydC9Ob3RpZmljYXRpb25QcmVzZW50
ZXJDbGllbnRRdC5jcHAgXAogICAgIC4uL1dlYktpdC9xdC9XZWJDb3JlU3VwcG9ydC9QYWdlQ2xp
ZW50UXQuY3BwIFwKZGlmZiAtLWdpdCBhL1dlYktpdC9xdC9BcGkvcXdlYmluc3BlY3Rvci5jcHAg
Yi9XZWJLaXQvcXQvQXBpL3F3ZWJpbnNwZWN0b3IuY3BwCmluZGV4IDgwMmVhOTgwNDhmYTViOTdl
NGZmYzNkNTA3YzMyODVhMGNiNmEzZTMuLmJjOTAwYzcxMzQ0YjhiNTY3ZTIxNTMyOGNjNjVlOTdh
NGQ3OTFhZTQgMTAwNjQ0Ci0tLSBhL1dlYktpdC9xdC9BcGkvcXdlYmluc3BlY3Rvci5jcHAKKysr
IGIvV2ViS2l0L3F0L0FwaS9xd2ViaW5zcGVjdG9yLmNwcApAQCAtMTk2LDYgKzE5NiwzMSBAQCB2
b2lkIFFXZWJJbnNwZWN0b3JQcml2YXRlOjpzZXRGcm9udGVuZChRV2lkZ2V0KiBuZXdGcm9udGVu
ZCkKICAgICB9CiB9CiAKKy8qISAKKyAqIFxpbnRlcm5hbCAKKyAqLwordm9pZCBRV2ViSW5zcGVj
dG9yUHJpdmF0ZTo6YXR0YWNoUmVtb3RlRnJvbnRlbmQoUU9iamVjdCogbmV3UmVtb3RlRnJvbnRl
bmQpCit7CisgICAgaWYgKHJlbW90ZUZyb250ZW5kKQorICAgICAgICByZW1vdGVGcm9udGVuZC0+
c2V0UGFyZW50KDApOworCisgICAgcmVtb3RlRnJvbnRlbmQgPSBuZXdSZW1vdGVGcm9udGVuZDsK
KworICAgIGlmIChyZW1vdGVGcm9udGVuZCkKKyAgICAgICAgcmVtb3RlRnJvbnRlbmQtPnNldFBh
cmVudChxKTsKK30KKworLyohIAorICogXGludGVybmFsIAorICovCit2b2lkIFFXZWJJbnNwZWN0
b3JQcml2YXRlOjpkZXRhY2hSZW1vdGVGcm9udGVuZCgpCit7CisgICAgaWYgKHJlbW90ZUZyb250
ZW5kKSB7CisgICAgICAgIHJlbW90ZUZyb250ZW5kLT5kZWxldGVMYXRlcigpOworICAgICAgICBy
ZW1vdGVGcm9udGVuZCA9IDA7CisgICAgfQorfQorCiB2b2lkIFFXZWJJbnNwZWN0b3JQcml2YXRl
OjphZGp1c3RGcm9udGVuZFNpemUoY29uc3QgUVNpemUmIHNpemUpCiB7CiAgICAgaWYgKGZyb250
ZW5kKQpkaWZmIC0tZ2l0IGEvV2ViS2l0L3F0L0FwaS9xd2ViaW5zcGVjdG9yX3AuaCBiL1dlYktp
dC9xdC9BcGkvcXdlYmluc3BlY3Rvcl9wLmgKaW5kZXggNGQzMjdjYzVhOTExZjdlNTIyOTgwNGYx
ZDhlMjc5YTQ1NDhlZDc1Ny4uOTZmNjRiYjVhMGZhYjhkMDQ5YjBlNTg3ZjM3ZjdlZWVlZjcwNjNl
MCAxMDA2NDQKLS0tIGEvV2ViS2l0L3F0L0FwaS9xd2ViaW5zcGVjdG9yX3AuaAorKysgYi9XZWJL
aXQvcXQvQXBpL3F3ZWJpbnNwZWN0b3JfcC5oCkBAIC0zMywxNCArMzMsMTggQEAgcHVibGljOgog
ICAgIDogcShxcSkKICAgICAsIHBhZ2UoMCkKICAgICAsIGZyb250ZW5kKDApCisgICAgLCByZW1v
dGVGcm9udGVuZCgwKQogICAgIHt9CiAKICAgICB2b2lkIHNldEZyb250ZW5kKFFXaWRnZXQqIG5l
d0Zyb250ZW5kKTsKKyAgICB2b2lkIGF0dGFjaFJlbW90ZUZyb250ZW5kKFFPYmplY3QqIG5ld1Jl
bW90ZUZyb250ZW5kKTsKKyAgICB2b2lkIGRldGFjaFJlbW90ZUZyb250ZW5kKCk7CiAgICAgdm9p
ZCBhZGp1c3RGcm9udGVuZFNpemUoY29uc3QgUVNpemUmIHNpemUpOwogCiAgICAgUVdlYkluc3Bl
Y3RvciogcTsKICAgICBRV2ViUGFnZSogcGFnZTsKICAgICBRV2lkZ2V0KiBmcm9udGVuZDsKKyAg
ICBRT2JqZWN0KiByZW1vdGVGcm9udGVuZDsKIH07CiAKICNlbmRpZgpkaWZmIC0tZ2l0IGEvV2Vi
S2l0L3F0L0FwaS9xd2VicGFnZS5jcHAgYi9XZWJLaXQvcXQvQXBpL3F3ZWJwYWdlLmNwcAppbmRl
eCA1ZWVlMjFjYzFkOGI2MTFkZTljNDM1ZjJiZTYxY2EzYjE1ZjZhNzdkLi41NjM5ZDRiODJiMTZl
ZTJkYjY2NzBhY2UyOTcwZmM4MzNkZWZjYzA3IDEwMDY0NAotLS0gYS9XZWJLaXQvcXQvQXBpL3F3
ZWJwYWdlLmNwcAorKysgYi9XZWJLaXQvcXQvQXBpL3F3ZWJwYWdlLmNwcApAQCAtNzYsNiArNzYs
NyBAQAogI2luY2x1ZGUgIkhUTUxJbnB1dEVsZW1lbnQuaCIKICNpbmNsdWRlICJIVE1MTmFtZXMu
aCIKICNpbmNsdWRlICJIaXRUZXN0UmVzdWx0LmgiCisjaW5jbHVkZSAiSW5zcGVjdG9yU2VydmVy
UXQuaCIKICNpbmNsdWRlICJXaW5kb3dGZWF0dXJlcy5oIgogI2luY2x1ZGUgIkxvY2FsaXplZFN0
cmluZ3MuaCIKICNpbmNsdWRlICJDYWNoZS5oIgpAQCAtMTI5Niw2ICsxMjk3LDEwIEBAIHZvaWQg
UVdlYlBhZ2VQcml2YXRlOjpkeW5hbWljUHJvcGVydHlDaGFuZ2VFdmVudChRRHluYW1pY1Byb3Bl
cnR5Q2hhbmdlRXZlbnQqIGV2CiAgICAgICAgIGZyYW1lLT50aWxlZEJhY2tpbmdTdG9yZSgpLT5z
ZXRLZWVwQW5kQ292ZXJBcmVhTXVsdGlwbGllcnMoa2VlcE11bHRpcGxpZXIsIGNvdmVyTXVsdGlw
bGllcik7CiAgICAgfQogI2VuZGlmCisgICAgZWxzZSBpZiAoZXZlbnQtPnByb3BlcnR5TmFtZSgp
ID09ICJfcV93ZWJJbnNwZWN0b3JTZXJ2ZXJQb3J0IikgeworICAgICAgICBJbnNwZWN0b3JTZXJ2
ZXJRdCogaW5zcGVjdG9yU2VydmVyID0gSW5zcGVjdG9yU2VydmVyUXQ6OnNlcnZlcigpOworICAg
ICAgICBpbnNwZWN0b3JTZXJ2ZXItPmxpc3RlbihpbnNwZWN0b3JTZXJ2ZXJQb3J0KCkpOworICAg
IH0KIH0KICNlbmRpZgogCkBAIC0xNTUzLDYgKzE1NTgsMTQgQEAgSW5zcGVjdG9yQ29udHJvbGxl
ciogUVdlYlBhZ2VQcml2YXRlOjppbnNwZWN0b3JDb250cm9sbGVyKCkKICNlbmRpZgogfQogCitx
dWludDE2IFFXZWJQYWdlUHJpdmF0ZTo6aW5zcGVjdG9yU2VydmVyUG9ydCgpCit7CisjaWYgRU5B
QkxFKElOU1BFQ1RPUikgJiYgIWRlZmluZWQoUVRfTk9fUFJPUEVSVElFUykKKyAgICBpZiAocSAm
JiBxLT5wcm9wZXJ0eSgiX3Ffd2ViSW5zcGVjdG9yU2VydmVyUG9ydCIpLmlzVmFsaWQoKSkKKyAg
ICAgICAgcmV0dXJuIHEtPnByb3BlcnR5KCJfcV93ZWJJbnNwZWN0b3JTZXJ2ZXJQb3J0IikudG9J
bnQoKTsKKyNlbmRpZgorICAgIHJldHVybiAwOworfQogCiAvKiEKICAgIFxlbnVtIFFXZWJQYWdl
OjpGaW5kRmxhZwpkaWZmIC0tZ2l0IGEvV2ViS2l0L3F0L0FwaS9xd2VicGFnZS5oIGIvV2ViS2l0
L3F0L0FwaS9xd2VicGFnZS5oCmluZGV4IDE0ZjNiOGIwYzIzY2E1NjZhMGYyMjNiOTZhNzJlYjg5
NzcwM2NkZjAuLjMxYmFmNzhmYWU1M2U4ZTdmM2MwNmViNjBjNzFjZGI0NTE1NjE2MTAgMTAwNjQ0
Ci0tLSBhL1dlYktpdC9xdC9BcGkvcXdlYnBhZ2UuaAorKysgYi9XZWJLaXQvcXQvQXBpL3F3ZWJw
YWdlLmgKQEAgLTU1LDYgKzU1LDcgQEAgbmFtZXNwYWNlIFdlYkNvcmUgewogICAgIGNsYXNzIEVk
aXRvckNsaWVudFF0OwogICAgIGNsYXNzIEZyYW1lTG9hZGVyQ2xpZW50UXQ7CiAgICAgY2xhc3Mg
SW5zcGVjdG9yQ2xpZW50UXQ7CisgICAgY2xhc3MgSW5zcGVjdG9yU2VydmVyUmVxdWVzdEhhbmRs
ZXJRdDsKICAgICBjbGFzcyBJbnNwZWN0b3JGcm9udGVuZENsaWVudFF0OwogICAgIGNsYXNzIE5v
dGlmaWNhdGlvblByZXNlbnRlckNsaWVudFF0OwogICAgIGNsYXNzIFJlc291cmNlSGFuZGxlOwpA
QCAtNDIyLDYgKzQyMyw3IEBAIHByaXZhdGU6CiAgICAgZnJpZW5kIGNsYXNzIFdlYkNvcmU6OkVk
aXRvckNsaWVudFF0OwogICAgIGZyaWVuZCBjbGFzcyBXZWJDb3JlOjpGcmFtZUxvYWRlckNsaWVu
dFF0OwogICAgIGZyaWVuZCBjbGFzcyBXZWJDb3JlOjpJbnNwZWN0b3JDbGllbnRRdDsKKyAgICBm
cmllbmQgY2xhc3MgV2ViQ29yZTo6SW5zcGVjdG9yU2VydmVyUmVxdWVzdEhhbmRsZXJRdDsKICAg
ICBmcmllbmQgY2xhc3MgV2ViQ29yZTo6SW5zcGVjdG9yRnJvbnRlbmRDbGllbnRRdDsKICAgICBm
cmllbmQgY2xhc3MgV2ViQ29yZTo6Tm90aWZpY2F0aW9uUHJlc2VudGVyQ2xpZW50UXQ7CiAgICAg
ZnJpZW5kIGNsYXNzIFdlYkNvcmU6OlJlc291cmNlSGFuZGxlOwpkaWZmIC0tZ2l0IGEvV2ViS2l0
L3F0L0FwaS9xd2VicGFnZV9wLmggYi9XZWJLaXQvcXQvQXBpL3F3ZWJwYWdlX3AuaAppbmRleCA2
MzEwZWFmZDgzYjQxMDJjMGNlOGRlOGE5YmZiZTViNjI1OTgxZjAyLi45YWI1MWRmZDNlNDI5MGFk
ZjAxYzcxNjk1OWMyM2MxYjhiNmQxNTg5IDEwMDY0NAotLS0gYS9XZWJLaXQvcXQvQXBpL3F3ZWJw
YWdlX3AuaAorKysgYi9XZWJLaXQvcXQvQXBpL3F3ZWJwYWdlX3AuaApAQCAtMTM5LDYgKzEzOSw3
IEBAIHB1YmxpYzoKICAgICB2b2lkIHNldEluc3BlY3RvcihRV2ViSW5zcGVjdG9yKik7CiAgICAg
UVdlYkluc3BlY3RvciogZ2V0T3JDcmVhdGVJbnNwZWN0b3IoKTsKICAgICBXZWJDb3JlOjpJbnNw
ZWN0b3JDb250cm9sbGVyKiBpbnNwZWN0b3JDb250cm9sbGVyKCk7CisgICAgcXVpbnQxNiBpbnNw
ZWN0b3JTZXJ2ZXJQb3J0KCk7CiAKICNpZm5kZWYgUVRfTk9fU0hPUlRDVVQKICAgICBzdGF0aWMg
UVdlYlBhZ2U6OldlYkFjdGlvbiBlZGl0b3JBY3Rpb25Gb3JLZXlFdmVudChRS2V5RXZlbnQqIGV2
ZW50KTsKZGlmZiAtLWdpdCBhL1dlYktpdC9xdC9DaGFuZ2VMb2cgYi9XZWJLaXQvcXQvQ2hhbmdl
TG9nCmluZGV4IDczYzFjZmMwYjY0YmEwMTAzZjkyOGMzNzQyMjhjYjUxOTJlNWEwZGMuLjI5ZjI3
ODQ4ZGEzMmZhY2EwODVhZjIyNDk2MDUwN2JiZGZiNjYxNGMgMTAwNjQ0Ci0tLSBhL1dlYktpdC9x
dC9DaGFuZ2VMb2cKKysrIGIvV2ViS2l0L3F0L0NoYW5nZUxvZwpAQCAtMSwzICsxLDYyIEBACisy
MDEwLTA4LTI3ICBKYW1leSBIaWNrcyAgPGphbWV5LmhpY2tzQG5va2lhLmNvbT4KKworICAgICAg
ICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBbUXRdIFdlYiBJbnNwZWN0
b3I6IFJlbW90ZSBXZWIgSW5zcGVjdG9yIHN1cHBvcnQgZm9yIFF0V2ViS2l0CisgICAgICAgIGh0
dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD00Mzk4OAorCisgICAgICAgIFJ1
bnMgYSB3ZWIgZGVidWcgc2VydmVyIG9uIHBvcnQgc3BlY2lmaWVkIGJ5IFF0VGVzdEJyb3dzZXIK
KyAgICAgICAgYXJndW1lbnQgLXJlbW90ZS1pbnNwZWN0b3ItcG9ydC4gUHJvcGVydHkKKyAgICAg
ICAgX3Ffd2ViSW5zcGVjdG9yU2VydmVyUG9ydCBvZiB0aGUgUVdlYlBhZ2UgaW5zdGFuY2Ugd2ls
bCBiZSBzZXQKKyAgICAgICAgYWNjb3JkaW5nIHRvIHRoZSBhcmd1bWVudC4gQWxsIHBhZ2VzIHdp
dGggdGhhdCBwcm9wZXJ0eSBzZXQgd2lsbAorICAgICAgICBiZSByZW1vdGVseSBpbnNwZWN0YWJs
ZS4KKworICAgICAgICBVUkwgZm9yIHJlbW90ZSBpbnNwZWN0aW9uIG9mIGZpcnN0IFFXZWJQYWdl
IGlzCisgICAgICAgICAgICBodHRwOi8vbG9jYWxob3N0OjkyMjIvZGV2dG9vbHMvcGFnZS8xCisg
ICAgICAgIHdoZXJlIDEgaXMgdGhlIG51bWJlciBvZiB0aGUgUVdlYlBhZ2UgaW5zdGFuY2UuCisg
ICAgICAgIAorICAgICAgICAqIEFwaS9xd2ViaW5zcGVjdG9yLmNwcDoKKyAgICAgICAgKFFXZWJJ
bnNwZWN0b3JQcml2YXRlOjphdHRhY2hSZW1vdGVGcm9udGVuZCk6CisgICAgICAgIChRV2ViSW5z
cGVjdG9yUHJpdmF0ZTo6ZGV0YWNoUmVtb3RlRnJvbnRlbmQpOgorICAgICAgICAqIEFwaS9xd2Vi
aW5zcGVjdG9yX3AuaDoKKyAgICAgICAgKFFXZWJJbnNwZWN0b3JQcml2YXRlOjpRV2ViSW5zcGVj
dG9yUHJpdmF0ZSk6CisgICAgICAgICogQXBpL3F3ZWJwYWdlLmNwcDoKKyAgICAgICAgKFFXZWJQ
YWdlUHJpdmF0ZTo6ZHluYW1pY1Byb3BlcnR5Q2hhbmdlRXZlbnQpOgorICAgICAgICAoUVdlYlBh
Z2VQcml2YXRlOjppbnNwZWN0b3JTZXJ2ZXJQb3J0KToKKyAgICAgICAgKFFXZWJQYWdlOjp+UVdl
YlBhZ2UpOgorICAgICAgICAqIEFwaS9xd2VicGFnZS5oOgorICAgICAgICAqIEFwaS9xd2VicGFn
ZV9wLmg6CisgICAgICAgICogV2ViQ29yZVN1cHBvcnQvSW5zcGVjdG9yQ2xpZW50UXQuY3BwOgor
ICAgICAgICAoV2ViQ29yZTo6SW5zcGVjdG9yQ2xpZW50UXQ6Okluc3BlY3RvckNsaWVudFF0KToK
KyAgICAgICAgKFdlYkNvcmU6Okluc3BlY3RvckNsaWVudFF0OjppbnNwZWN0b3JEZXN0cm95ZWQp
OgorICAgICAgICAoV2ViQ29yZTo6SW5zcGVjdG9yQ2xpZW50UXQ6Om9wZW5JbnNwZWN0b3JGcm9u
dGVuZCk6CisgICAgICAgIChXZWJDb3JlOjpJbnNwZWN0b3JDbGllbnRRdDo6YXR0YWNoUmVtb3Rl
RnJvbnRlbmQpOgorICAgICAgICAoV2ViQ29yZTo6SW5zcGVjdG9yQ2xpZW50UXQ6OmRldGFjaFJl
bW90ZUZyb250ZW5kKToKKyAgICAgICAgKFdlYkNvcmU6Okluc3BlY3RvckNsaWVudFF0OjpzZW5k
TWVzc2FnZVRvRnJvbnRlbmQpOgorICAgICAgICAqIFdlYkNvcmVTdXBwb3J0L0luc3BlY3RvckNs
aWVudFF0Lmg6CisgICAgICAgICogV2ViQ29yZVN1cHBvcnQvSW5zcGVjdG9yU2VydmVyUXQuY3Bw
OiBBZGRlZC4KKyAgICAgICAgKFdlYkNvcmU6OnNldENoYWxsZW5nZU51bWJlcik6CisgICAgICAg
IChXZWJDb3JlOjpnZW5lcmF0ZUV4cGVjdGVkQ2hhbGxlbmdlUmVzcG9uc2UpOgorICAgICAgICAo
V2ViQ29yZTo6Z2V0Q2hhbGxlbmdlTnVtYmVyRnJvbUZpZWxkKToKKyAgICAgICAgKFdlYkNvcmU6
Okluc3BlY3RvclNlcnZlclF0OjpzZXJ2ZXIpOgorICAgICAgICAoV2ViQ29yZTo6SW5zcGVjdG9y
U2VydmVyUXQ6Okluc3BlY3RvclNlcnZlclF0KToKKyAgICAgICAgKFdlYkNvcmU6Okluc3BlY3Rv
clNlcnZlclF0Ojp+SW5zcGVjdG9yU2VydmVyUXQpOgorICAgICAgICAoV2ViQ29yZTo6SW5zcGVj
dG9yU2VydmVyUXQ6Omxpc3Rlbik6CisgICAgICAgIChXZWJDb3JlOjpJbnNwZWN0b3JTZXJ2ZXJR
dDo6Y2xvc2UpOgorICAgICAgICAoV2ViQ29yZTo6SW5zcGVjdG9yU2VydmVyUXQ6Omluc3BlY3Rv
ckNsaWVudCk6CisgICAgICAgIChXZWJDb3JlOjpJbnNwZWN0b3JTZXJ2ZXJRdDo6cmVnaXN0ZXJD
bGllbnQpOgorICAgICAgICAoV2ViQ29yZTo6SW5zcGVjdG9yU2VydmVyUXQ6OnVucmVnaXN0ZXJD
bGllbnQpOgorICAgICAgICAoV2ViQ29yZTo6SW5zcGVjdG9yU2VydmVyUXQ6Om5ld0Nvbm5lY3Rp
b24pOgorICAgICAgICAoV2ViQ29yZTo6SW5zcGVjdG9yU2VydmVyUmVxdWVzdEhhbmRsZXJRdDo6
SW5zcGVjdG9yU2VydmVyUmVxdWVzdEhhbmRsZXJRdCk6CisgICAgICAgIChXZWJDb3JlOjpJbnNw
ZWN0b3JTZXJ2ZXJSZXF1ZXN0SGFuZGxlclF0Ojp+SW5zcGVjdG9yU2VydmVyUmVxdWVzdEhhbmRs
ZXJRdCk6CisgICAgICAgIChXZWJDb3JlOjpJbnNwZWN0b3JTZXJ2ZXJSZXF1ZXN0SGFuZGxlclF0
Ojp0Y3BSZWFkeVJlYWQpOgorICAgICAgICAoV2ViQ29yZTo6SW5zcGVjdG9yU2VydmVyUmVxdWVz
dEhhbmRsZXJRdDo6dGNwQ29ubmVjdGlvbkRpc2Nvbm5lY3RlZCk6CisgICAgICAgIChXZWJDb3Jl
OjpJbnNwZWN0b3JTZXJ2ZXJSZXF1ZXN0SGFuZGxlclF0Ojp3ZWJTb2NrZXRTZW5kKToKKyAgICAg
ICAgKFdlYkNvcmU6Okluc3BlY3RvclNlcnZlclJlcXVlc3RIYW5kbGVyUXQ6OndlYlNvY2tldFJl
YWR5UmVhZCk6CisgICAgICAgIChXZWJDb3JlOjpSZW1vdGVGcm9udGVuZENoYW5uZWw6OlJlbW90
ZUZyb250ZW5kQ2hhbm5lbCk6CisgICAgICAgIChXZWJDb3JlOjpSZW1vdGVGcm9udGVuZENoYW5u
ZWw6OnNlbmRNZXNzYWdlVG9Gcm9udGVuZCk6CisgICAgICAgICogV2ViQ29yZVN1cHBvcnQvSW5z
cGVjdG9yU2VydmVyUXQuaDogQWRkZWQuCisKIDIwMTAtMDgtMjcgIFl1cnkgU2VtaWtoYXRza3kg
IDx5dXJ5c0BjaHJvbWl1bS5vcmc+CiAKICAgICAgICAgUmV2aWV3ZWQgYnkgUGF2ZWwgRmVsZG1h
bi4KZGlmZiAtLWdpdCBhL1dlYktpdC9xdC9XZWJDb3JlU3VwcG9ydC9JbnNwZWN0b3JDbGllbnRR
dC5jcHAgYi9XZWJLaXQvcXQvV2ViQ29yZVN1cHBvcnQvSW5zcGVjdG9yQ2xpZW50UXQuY3BwCmlu
ZGV4IDhjMzNhYzA5MzkwOTQ4NGY1NDQzMDc1OTgyNzIyNzljZjE2OGE4NTMuLjljMTRiNzA4MTVm
Y2FlYWIzZmQ5ZDRhYjBhYzBmMWY3NGYxZDFiYjUgMTAwNjQ0Ci0tLSBhL1dlYktpdC9xdC9XZWJD
b3JlU3VwcG9ydC9JbnNwZWN0b3JDbGllbnRRdC5jcHAKKysrIGIvV2ViS2l0L3F0L1dlYkNvcmVT
dXBwb3J0L0luc3BlY3RvckNsaWVudFF0LmNwcApAQCAtMzIsNyArMzIsMTAgQEAKICNpbmNsdWRl
ICJJbnNwZWN0b3JDbGllbnRRdC5oIgogCiAjaW5jbHVkZSAiRnJhbWUuaCIKKyNpbmNsdWRlICJJ
bnNwZWN0b3JCYWNrZW5kRGlzcGF0Y2hlci5oIgogI2luY2x1ZGUgIkluc3BlY3RvckNvbnRyb2xs
ZXIuaCIKKyNpbmNsdWRlICJJbnNwZWN0b3JGcm9udGVuZC5oIgorI2luY2x1ZGUgIkluc3BlY3Rv
clNlcnZlclF0LmgiCiAjaW5jbHVkZSAiTm90SW1wbGVtZW50ZWQuaCIKICNpbmNsdWRlICJQYWdl
LmgiCiAjaW5jbHVkZSAiUGxhdGZvcm1TdHJpbmcuaCIKQEAgLTk2LDIzICs5OSwzNSBAQCBwdWJs
aWMgc2xvdHM6CiBJbnNwZWN0b3JDbGllbnRRdDo6SW5zcGVjdG9yQ2xpZW50UXQoUVdlYlBhZ2Uq
IHBhZ2UpCiAgICAgOiBtX2luc3BlY3RlZFdlYlBhZ2UocGFnZSkKICAgICAsIG1fZnJvbnRlbmRX
ZWJQYWdlKDApCi17fQoreworICAgIEluc3BlY3RvclNlcnZlclF0KiB3ZWJJbnNwZWN0b3JTZXJ2
ZXIgPSBJbnNwZWN0b3JTZXJ2ZXJRdDo6c2VydmVyKCk7CisgICAgaWYgKHdlYkluc3BlY3RvclNl
cnZlcikKKyAgICAgICAgd2ViSW5zcGVjdG9yU2VydmVyLT5yZWdpc3RlckNsaWVudCh0aGlzKTsK
K30KIAogdm9pZCBJbnNwZWN0b3JDbGllbnRRdDo6aW5zcGVjdG9yRGVzdHJveWVkKCkKIHsKICAg
ICBpZiAobV9mcm9udGVuZENsaWVudCkKICAgICAgICAgbV9mcm9udGVuZENsaWVudC0+aW5zcGVj
dG9yQ2xpZW50RGVzdHJveWVkKCk7CisKKyAgICBJbnNwZWN0b3JTZXJ2ZXJRdCogd2ViSW5zcGVj
dG9yU2VydmVyID0gSW5zcGVjdG9yU2VydmVyUXQ6OnNlcnZlcigpOworICAgIGlmICh3ZWJJbnNw
ZWN0b3JTZXJ2ZXIpCisgICAgICAgIHdlYkluc3BlY3RvclNlcnZlci0+dW5yZWdpc3RlckNsaWVu
dCh0aGlzKTsKKwogICAgIGRlbGV0ZSB0aGlzOwogfQogCiAgICAgCi12b2lkIEluc3BlY3RvckNs
aWVudFF0OjpvcGVuSW5zcGVjdG9yRnJvbnRlbmQoV2ViQ29yZTo6SW5zcGVjdG9yQ29udHJvbGxl
ciopCit2b2lkIEluc3BlY3RvckNsaWVudFF0OjpvcGVuSW5zcGVjdG9yRnJvbnRlbmQoV2ViQ29y
ZTo6SW5zcGVjdG9yQ29udHJvbGxlciogaW5zcGVjdG9yQ29udHJvbGxlcikKIHsKICAgICBRV2Vi
VmlldyogaW5zcGVjdG9yVmlldyA9IG5ldyBRV2ViVmlldzsKICAgICBJbnNwZWN0b3JDbGllbnRX
ZWJQYWdlKiBpbnNwZWN0b3JQYWdlID0gbmV3IEluc3BlY3RvckNsaWVudFdlYlBhZ2UoaW5zcGVj
dG9yVmlldyk7CiAgICAgaW5zcGVjdG9yVmlldy0+c2V0UGFnZShpbnNwZWN0b3JQYWdlKTsKIAog
ICAgIFFXZWJJbnNwZWN0b3IqIGluc3BlY3RvciA9IG1faW5zcGVjdGVkV2ViUGFnZS0+ZC0+Z2V0
T3JDcmVhdGVJbnNwZWN0b3IoKTsKKyAgICBpZiAobV9pbnNwZWN0ZWRXZWJQYWdlLT5kLT5pbnNw
ZWN0b3JTZXJ2ZXJQb3J0KCkpCisgICAgICAgIHJldHVybjsKKwogICAgIC8vIFRoaXMgaXMgYSBr
bm93biBob29rIHRoYXQgYWxsb3dzIGNoYW5naW5nIHRoZSBkZWZhdWx0IFVSTCBmb3IgdGhlCiAg
ICAgLy8gV2ViIGluc3BlY3Rvci4gVGhpcyBpcyB1c2VkIGZvciBTREsgcHVycG9zZXMuIFBsZWFz
ZSBrZWVwIHRoaXMgaG9vawogICAgIC8vIGFyb3VuZCBhbmQgZG9uJ3QgcmVtb3ZlIGl0LgpAQCAt
MTQ0LDYgKzE1OSwyMyBAQCB2b2lkIEluc3BlY3RvckNsaWVudFF0OjpyZWxlYXNlRnJvbnRlbmRQ
YWdlKCkKICAgICBtX2Zyb250ZW5kQ2xpZW50ID0gMDsKIH0KIAordm9pZCBJbnNwZWN0b3JDbGll
bnRRdDo6YXR0YWNoUmVtb3RlRnJvbnRlbmQoUmVtb3RlRnJvbnRlbmRDaGFubmVsKiBjaGFubmVs
KQoreworI2lmIEVOQUJMRShJTlNQRUNUT1IpCisgICAgLy8gQ2hhbm5lbCB3YXMgYWxsb2NhdGVk
IGJ5IEluc3BlY3RvclNlcnZlclF0LiBIZXJlIHdlIHRyYW5zZmVyIG93bmVyc2hpcCB0byBpbnNw
ZWN0b3IuCisgICAgbV9pbnNwZWN0ZWRXZWJQYWdlLT5kLT5pbnNwZWN0b3ItPmQtPmF0dGFjaFJl
bW90ZUZyb250ZW5kKGNoYW5uZWwpOworICAgIG1faW5zcGVjdGVkV2ViUGFnZS0+ZC0+aW5zcGVj
dG9yQ29udHJvbGxlcigpLT5jb25uZWN0RnJvbnRlbmQoKTsKKyNlbmRpZgorfQorCit2b2lkIElu
c3BlY3RvckNsaWVudFF0OjpkZXRhY2hSZW1vdGVGcm9udGVuZCgpCit7CisjaWYgRU5BQkxFKElO
U1BFQ1RPUikKKyAgICBtX2luc3BlY3RlZFdlYlBhZ2UtPmQtPmluc3BlY3Rvci0+ZC0+ZGV0YWNo
UmVtb3RlRnJvbnRlbmQoKTsKKyAgICBtX2luc3BlY3RlZFdlYlBhZ2UtPmQtPmluc3BlY3RvckNv
bnRyb2xsZXIoKS0+ZGlzY29ubmVjdEZyb250ZW5kKCk7CisjZW5kaWYKK30KKwogdm9pZCBJbnNw
ZWN0b3JDbGllbnRRdDo6aGlnaGxpZ2h0KE5vZGUqKQogewogICAgIG5vdEltcGxlbWVudGVkKCk7
CkBAIC0yMDAsNiArMjMyLDE0IEBAIHZvaWQgSW5zcGVjdG9yQ2xpZW50UXQ6OnN0b3JlU2V0dGlu
Zyhjb25zdCBTdHJpbmcmIGtleSwgY29uc3QgU3RyaW5nJiBzZXR0aW5nKQogCiBib29sIEluc3Bl
Y3RvckNsaWVudFF0OjpzZW5kTWVzc2FnZVRvRnJvbnRlbmQoY29uc3QgU3RyaW5nJiBtZXNzYWdl
KQogeworICAgIGlmIChtX2luc3BlY3RlZFdlYlBhZ2UtPmQtPmluc3BlY3RvclNlcnZlclBvcnQo
KSkgeworICAgICAgICBRX0FTU0VSVChtX2luc3BlY3RlZFdlYlBhZ2UtPmQtPmluc3BlY3Rvci0+
ZC0+cmVtb3RlRnJvbnRlbmQpOworCisgICAgICAgIFJlbW90ZUZyb250ZW5kQ2hhbm5lbCogc2Vz
c2lvbiA9IHFvYmplY3RfY2FzdDxSZW1vdGVGcm9udGVuZENoYW5uZWwqPihtX2luc3BlY3RlZFdl
YlBhZ2UtPmQtPmluc3BlY3Rvci0+ZC0+cmVtb3RlRnJvbnRlbmQpOworICAgICAgICBpZiAoc2Vz
c2lvbikKKyAgICAgICAgICAgIHNlc3Npb24tPnNlbmRNZXNzYWdlVG9Gcm9udGVuZChtZXNzYWdl
KTsKKyAgICAgICAgcmV0dXJuIHRydWU7CisgICAgfQogICAgIGlmICghbV9mcm9udGVuZFdlYlBh
Z2UpCiAgICAgICAgIHJldHVybiBmYWxzZTsKIApkaWZmIC0tZ2l0IGEvV2ViS2l0L3F0L1dlYkNv
cmVTdXBwb3J0L0luc3BlY3RvckNsaWVudFF0LmggYi9XZWJLaXQvcXQvV2ViQ29yZVN1cHBvcnQv
SW5zcGVjdG9yQ2xpZW50UXQuaAppbmRleCBlMGVlODEwODkwYWYyZjNmNWIyZjVlY2FlNmQ1NTc3
MzQ4YmQ0NjFiLi4zZWU5YzljZjZmNjA1OWU1ZDk1NGIzYTU1ZGJmMWZlYWE3ZjFkZDkxIDEwMDY0
NAotLS0gYS9XZWJLaXQvcXQvV2ViQ29yZVN1cHBvcnQvSW5zcGVjdG9yQ2xpZW50UXQuaAorKysg
Yi9XZWJLaXQvcXQvV2ViQ29yZVN1cHBvcnQvSW5zcGVjdG9yQ2xpZW50UXQuaApAQCAtNDIsOCAr
NDIsMTAgQEAgY2xhc3MgUVdlYlZpZXc7CiAKIG5hbWVzcGFjZSBXZWJDb3JlIHsKIGNsYXNzIElu
c3BlY3RvckZyb250ZW5kQ2xpZW50UXQ7CitjbGFzcyBJbnNwZWN0b3JTZXJ2ZXJSZXF1ZXN0SGFu
ZGxlclF0OwogY2xhc3MgTm9kZTsKIGNsYXNzIFBhZ2U7CitjbGFzcyBSZW1vdGVGcm9udGVuZENo
YW5uZWw7CiAKIGNsYXNzIEluc3BlY3RvckNsaWVudFF0IDogcHVibGljIEluc3BlY3RvckNsaWVu
dCB7CiBwdWJsaWM6CkBAIC02MywxMCArNjUsMTYgQEAgcHVibGljOgogCiAgICAgdm9pZCByZWxl
YXNlRnJvbnRlbmRQYWdlKCk7CiAKKyAgICB2b2lkIGF0dGFjaFJlbW90ZUZyb250ZW5kKFJlbW90
ZUZyb250ZW5kQ2hhbm5lbCAqY2hhbm5lbCk7CisgICAgdm9pZCBkZXRhY2hSZW1vdGVGcm9udGVu
ZCgpOworCiBwcml2YXRlOgogICAgIFFXZWJQYWdlKiBtX2luc3BlY3RlZFdlYlBhZ2U7CiAgICAg
UVdlYlBhZ2UqIG1fZnJvbnRlbmRXZWJQYWdlOwogICAgIEluc3BlY3RvckZyb250ZW5kQ2xpZW50
UXQqIG1fZnJvbnRlbmRDbGllbnQ7CisgICAgYm9vbCBtX3JlbW90ZUluc3BlY3RvcjsKKworICAg
IGZyaWVuZCBjbGFzcyBJbnNwZWN0b3JTZXJ2ZXJSZXF1ZXN0SGFuZGxlclF0OwogfTsKIAogY2xh
c3MgSW5zcGVjdG9yRnJvbnRlbmRDbGllbnRRdCA6IHB1YmxpYyBJbnNwZWN0b3JGcm9udGVuZENs
aWVudExvY2FsIHsKZGlmZiAtLWdpdCBhL1dlYktpdC9xdC9XZWJDb3JlU3VwcG9ydC9JbnNwZWN0
b3JTZXJ2ZXJRdC5jcHAgYi9XZWJLaXQvcXQvV2ViQ29yZVN1cHBvcnQvSW5zcGVjdG9yU2VydmVy
UXQuY3BwCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAuLmQyOGQ3N2Q4ZDIxZjY3ZjVlMTAwNDYzYmZjMzMzNzI2OTNhNWRh
YzIKLS0tIC9kZXYvbnVsbAorKysgYi9XZWJLaXQvcXQvV2ViQ29yZVN1cHBvcnQvSW5zcGVjdG9y
U2VydmVyUXQuY3BwCkBAIC0wLDAgKzEsMzUxIEBACisvKgorICBDb3B5cmlnaHQgKEMpIDIwMTAg
Tm9raWEgQ29ycG9yYXRpb24gYW5kL29yIGl0cyBzdWJzaWRpYXJ5KC1pZXMpCisKKyAgVGhpcyBs
aWJyYXJ5IGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vcgor
ICBtb2RpZnkgaXQgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUgTGlicmFyeSBHZW5lcmFsIFB1
YmxpYworICBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieSB0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0
aW9uOyBlaXRoZXIKKyAgdmVyc2lvbiAyIG9mIHRoZSBMaWNlbnNlLCBvciAoYXQgeW91ciBvcHRp
b24pIGFueSBsYXRlciB2ZXJzaW9uLgorCisgIFRoaXMgbGlicmFyeSBpcyBkaXN0cmlidXRlZCBp
biB0aGUgaG9wZSB0aGF0IGl0IHdpbGwgYmUgdXNlZnVsLAorICBidXQgV0lUSE9VVCBBTlkgV0FS
UkFOVFk7IHdpdGhvdXQgZXZlbiB0aGUgaW1wbGllZCB3YXJyYW50eSBvZgorICBNRVJDSEFOVEFC
SUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlIEdOVQor
ICBMaWJyYXJ5IEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KKworICBZ
b3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgTGlicmFyeSBHZW5lcmFs
IFB1YmxpYyBMaWNlbnNlCisgIGFsb25nIHdpdGggdGhpcyBsaWJyYXJ5OyBzZWUgdGhlIGZpbGUg
Q09QWUlORy5MSUIuICBJZiBub3QsIHdyaXRlIHRvCisgIHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5k
YXRpb24sIEluYy4sIDUxIEZyYW5rbGluIFN0cmVldCwgRmlmdGggRmxvb3IsCisgIEJvc3Rvbiwg
TUEgMDIxMTAtMTMwMSwgVVNBLgorKi8KKworCisjaW5jbHVkZSAiY29uZmlnLmgiCisjaW5jbHVk
ZSAiSW5zcGVjdG9yU2VydmVyUXQuaCIKKworI2luY2x1ZGUgIkluc3BlY3RvckJhY2tlbmREaXNw
YXRjaGVyLmgiCisjaW5jbHVkZSAiSW5zcGVjdG9yQ2xpZW50UXQuaCIKKyNpbmNsdWRlICJNRDUu
aCIKKyNpbmNsdWRlICJQYWdlLmgiCisjaW5jbHVkZSAicXdlYnBhZ2UuaCIKKyNpbmNsdWRlICJx
d2VicGFnZV9wLmgiCisjaW5jbHVkZSA8UUZpbGU+CisjaW5jbHVkZSA8UUh0dHBIZWFkZXI+Cisj
aW5jbHVkZSA8UUh0dHBSZXF1ZXN0SGVhZGVyPgorI2luY2x1ZGUgPFFIdHRwUmVzcG9uc2VIZWFk
ZXI+CisjaW5jbHVkZSA8UVN0cmluZz4KKyNpbmNsdWRlIDxRU3RyaW5nTGlzdD4KKyNpbmNsdWRl
IDxRVGNwU2VydmVyPgorI2luY2x1ZGUgPFFUY3BTb2NrZXQ+CisjaW5jbHVkZSA8UVVybD4KKyNp
bmNsdWRlIDxRV2lkZ2V0PgorI2luY2x1ZGUgPHFlbmRpYW4uaD4KKworbmFtZXNwYWNlIFdlYkNv
cmUgeworCitzdGF0aWMgdm9pZCBzZXRDaGFsbGVuZ2VOdW1iZXIodW5zaWduZWQgY2hhciogYnVm
LCB1aW50MzJfdCBudW1iZXIpCit7CisgICAgdW5zaWduZWQgY2hhciogcCA9IGJ1ZiArIDM7Cisg
ICAgZm9yIChpbnQgaSA9IDA7IGkgPCA0OyBpKyspIHsKKyAgICAgICAgKnAgPSBudW1iZXIgJiAw
eEZGOworICAgICAgICAtLXA7CisgICAgICAgIG51bWJlciA+Pj0gODsKKyAgICB9Cit9CisKK3N0
YXRpYyB2b2lkIGdlbmVyYXRlRXhwZWN0ZWRDaGFsbGVuZ2VSZXNwb25zZSh1aW50MzJfdCBudW1i
ZXIxLCB1aW50MzJfdCBudW1iZXIyLCB1bnNpZ25lZCBjaGFyIGtleTNbOF0sIHVuc2lnbmVkIGNo
YXIgZXhwZWN0ZWRDaGFsbGVuZ2VbMTZdKQoreworICAgIHVuc2lnbmVkIGNoYXIgY2hhbGxlbmdl
WzE2XTsKKyAgICBzZXRDaGFsbGVuZ2VOdW1iZXIoJmNoYWxsZW5nZVswXSwgbnVtYmVyMSk7Cisg
ICAgc2V0Q2hhbGxlbmdlTnVtYmVyKCZjaGFsbGVuZ2VbNF0sIG51bWJlcjIpOworICAgIG1lbWNw
eSgmY2hhbGxlbmdlWzhdLCBrZXkzLCA4KTsKKyAgICBNRDUgbWQ1OworICAgIG1kNS5hZGRCeXRl
cyhjaGFsbGVuZ2UsIHNpemVvZihjaGFsbGVuZ2UpKTsKKyAgICBWZWN0b3I8dWludDhfdCwgMTY+
IGRpZ2VzdDsKKyAgICBtZDUuY2hlY2tzdW0oZGlnZXN0KTsKKyAgICBtZW1jcHkoZXhwZWN0ZWRD
aGFsbGVuZ2UsIGRpZ2VzdC5kYXRhKCksIDE2KTsKK30KKworc3RhdGljIHF1aW50MzIgZ2V0Q2hh
bGxlbmdlTnVtYmVyRnJvbUZpZWxkKFFTdHJpbmcgZmllbGQpCit7CisgICAgUVN0cmluZyBuU3Ry
aW5nOworICAgIGludCBuU3BhY2VzID0gMDsKKyAgICBmb3IgKGludCBpID0gMDsgaSA8IGZpZWxk
LnNpemUoKTsgaSsrKSB7CisgICAgICAgIFFDaGFyIGMgPSBmaWVsZFtpXTsKKyAgICAgICAgaWYg
KGMgPT0gKFFDaGFyKScgJykgeworICAgICAgICAgICAgblNwYWNlcysrOworICAgICAgICB9IGVs
c2UgaWYgKChjID49IChRQ2hhciknMCcpICYmIChjIDw9IChRQ2hhciknOScpKSB7CisgICAgICAg
ICAgICBuU3RyaW5nLmFwcGVuZCgoUUNoYXIpYyk7CisgICAgICAgIH0KKyAgICB9CisgICAgcXVp
bnQzMiBudW0gPSBuU3RyaW5nLnRvTG9uZygpOworICAgIHF1aW50MzIgcmVzdWx0ID0gKG5TcGFj
ZXMgPyAobnVtIC8gblNwYWNlcykgOiBudW0pOworICAgIHJldHVybiByZXN1bHQ7Cit9CisKK3N0
YXRpYyBJbnNwZWN0b3JTZXJ2ZXJRdCogc1NlcnZlcjsKKworSW5zcGVjdG9yU2VydmVyUXQqIElu
c3BlY3RvclNlcnZlclF0OjpzZXJ2ZXIoKQoreworICAgIGlmICghc1NlcnZlcikKKyAgICAgICAg
c1NlcnZlciA9IG5ldyBJbnNwZWN0b3JTZXJ2ZXJRdCgpOworCisgICAgcmV0dXJuIHNTZXJ2ZXI7
Cit9CisKK0luc3BlY3RvclNlcnZlclF0OjpJbnNwZWN0b3JTZXJ2ZXJRdCgpCisgICAgOiBRT2Jq
ZWN0KCkKKyAgICAsIG1fdGNwU2VydmVyKDApCisgICAgLCBtX3BhZ2VOdW1iZXIoMSkKK3sKK30K
KworSW5zcGVjdG9yU2VydmVyUXQ6On5JbnNwZWN0b3JTZXJ2ZXJRdCgpCit7CisgICAgY2xvc2Uo
KTsKK30KKwordm9pZCBJbnNwZWN0b3JTZXJ2ZXJRdDo6bGlzdGVuKHF1aW50MTYgcG9ydCkKK3sK
KyAgICBpZiAobV90Y3BTZXJ2ZXIpCisgICAgICAgIHJldHVybjsKKworICAgIG1fdGNwU2VydmVy
ID0gbmV3IFFUY3BTZXJ2ZXIoKTsKKyAgICBtX3RjcFNlcnZlci0+bGlzdGVuKFFIb3N0QWRkcmVz
czo6QW55LCBwb3J0KTsKKyAgICBjb25uZWN0KG1fdGNwU2VydmVyLCBTSUdOQUwobmV3Q29ubmVj
dGlvbigpKSwgU0xPVChuZXdDb25uZWN0aW9uKCkpKTsKK30KKwordm9pZCBJbnNwZWN0b3JTZXJ2
ZXJRdDo6Y2xvc2UoKQoreworICAgIGlmIChtX3RjcFNlcnZlcikgeworICAgICAgICBtX3RjcFNl
cnZlci0+Y2xvc2UoKTsKKyAgICAgICAgZGVsZXRlIG1fdGNwU2VydmVyOworICAgIH0KKyAgICBt
X3RjcFNlcnZlciA9IDA7Cit9CisKK0luc3BlY3RvckNsaWVudFF0KiBJbnNwZWN0b3JTZXJ2ZXJR
dDo6aW5zcGVjdG9yQ2xpZW50KGludCBwYWdlTnVtKQoreworICAgIEluc3BlY3RvckNsaWVudFF0
KiBjbGllbnQgPSBtX2luc3BlY3RvckNsaWVudHMudmFsdWUocGFnZU51bSk7CisgICAgcmV0dXJu
IGNsaWVudDsKK30KKwordm9pZCBJbnNwZWN0b3JTZXJ2ZXJRdDo6cmVnaXN0ZXJDbGllbnQoSW5z
cGVjdG9yQ2xpZW50UXQqIGNsaWVudCkKK3sKKyAgICBpZiAoIW1faW5zcGVjdG9yQ2xpZW50cy5r
ZXkoY2xpZW50KSkKKyAgICAgICAgbV9pbnNwZWN0b3JDbGllbnRzLmluc2VydChtX3BhZ2VOdW1i
ZXIrKywgY2xpZW50KTsKK30KKwordm9pZCBJbnNwZWN0b3JTZXJ2ZXJRdDo6dW5yZWdpc3RlckNs
aWVudChJbnNwZWN0b3JDbGllbnRRdCogY2xpZW50KQoreworICAgIGludCBwYWdlTnVtID0gbV9p
bnNwZWN0b3JDbGllbnRzLmtleShjbGllbnQsIC0xKTsKKyAgICBpZiAocGFnZU51bSA+PSAwKQor
ICAgICAgICBtX2luc3BlY3RvckNsaWVudHMucmVtb3ZlKHBhZ2VOdW0pOworICAgIGlmICghbV9p
bnNwZWN0b3JDbGllbnRzLnNpemUoKSkgeworICAgICAgICBzU2VydmVyID0gMDsKKyAgICAgICAg
Y2xvc2UoKTsKKyAgICAgICAgZGVsZXRlTGF0ZXIoKTsKKyAgICB9Cit9CisKK3ZvaWQgSW5zcGVj
dG9yU2VydmVyUXQ6Om5ld0Nvbm5lY3Rpb24oKQoreworICAgIFFUY3BTb2NrZXQqIG1fdGNwQ29u
bmVjdGlvbiA9IG1fdGNwU2VydmVyLT5uZXh0UGVuZGluZ0Nvbm5lY3Rpb24oKTsKKyAgICBJbnNw
ZWN0b3JTZXJ2ZXJSZXF1ZXN0SGFuZGxlclF0KiBoYW5kbGVyID0gbmV3IEluc3BlY3RvclNlcnZl
clJlcXVlc3RIYW5kbGVyUXQobV90Y3BDb25uZWN0aW9uLCB0aGlzKTsKKyAgICBoYW5kbGVyLT5z
ZXRQYXJlbnQodGhpcyk7Cit9CisKK0luc3BlY3RvclNlcnZlclJlcXVlc3RIYW5kbGVyUXQ6Oklu
c3BlY3RvclNlcnZlclJlcXVlc3RIYW5kbGVyUXQoUVRjcFNvY2tldCogdGNwQ29ubmVjdGlvbiwg
SW5zcGVjdG9yU2VydmVyUXQqIHNlcnZlcikKKyAgICA6IFFPYmplY3Qoc2VydmVyKQorICAgICwg
bV90Y3BDb25uZWN0aW9uKHRjcENvbm5lY3Rpb24pCisgICAgLCBtX3NlcnZlcihzZXJ2ZXIpCisg
ICAgLCBtX2luc3BlY3RvckNsaWVudCgwKQoreworICAgIG1fZW5kT2ZIZWFkZXJzID0gZmFsc2U7
ICAgIAorICAgIG1fY29udGVudExlbmd0aCA9IDA7CisKKyAgICBjb25uZWN0KG1fdGNwQ29ubmVj
dGlvbiwgU0lHTkFMKHJlYWR5UmVhZCgpKSwgU0xPVCh0Y3BSZWFkeVJlYWQoKSkpOworICAgIGNv
bm5lY3QobV90Y3BDb25uZWN0aW9uLCBTSUdOQUwoZGlzY29ubmVjdGVkKCkpLCBTTE9UKHRjcENv
bm5lY3Rpb25EaXNjb25uZWN0ZWQoKSkpOworfQorCitJbnNwZWN0b3JTZXJ2ZXJSZXF1ZXN0SGFu
ZGxlclF0Ojp+SW5zcGVjdG9yU2VydmVyUmVxdWVzdEhhbmRsZXJRdCgpCit7Cit9CisKK3ZvaWQg
SW5zcGVjdG9yU2VydmVyUmVxdWVzdEhhbmRsZXJRdDo6dGNwUmVhZHlSZWFkKCkKK3sKKyAgICBR
SHR0cFJlcXVlc3RIZWFkZXIgaGVhZGVyOworICAgIGJvb2wgaXNXZWJTb2NrZXQgPSBmYWxzZTsK
KyAgICBpZiAoIW1fdGNwQ29ubmVjdGlvbikKKyAgICAgICAgcmV0dXJuOworCisgICAgaWYgKCFt
X2VuZE9mSGVhZGVycykgeworICAgICAgICB3aGlsZSAobV90Y3BDb25uZWN0aW9uLT5ieXRlc0F2
YWlsYWJsZSgpICYmICFtX2VuZE9mSGVhZGVycykgeworICAgICAgICAgICAgUUJ5dGVBcnJheSBs
aW5lID0gbV90Y3BDb25uZWN0aW9uLT5yZWFkTGluZSgpOworICAgICAgICAgICAgbV9kYXRhLmFw
cGVuZChsaW5lKTsKKyAgICAgICAgICAgIGlmIChsaW5lID09ICJcclxuIikKKyAgICAgICAgICAg
ICAgICBtX2VuZE9mSGVhZGVycyA9IHRydWU7CisgICAgICAgIH0KKyAgICAgICAgaWYgKG1fZW5k
T2ZIZWFkZXJzKSB7CisgICAgICAgICAgICBoZWFkZXIgPSBRSHR0cFJlcXVlc3RIZWFkZXIoUVN0
cmluZzo6ZnJvbUxhdGluMShtX2RhdGEpKTsKKyAgICAgICAgICAgIGlmIChoZWFkZXIuaXNWYWxp
ZCgpKSB7CisgICAgICAgICAgICAgICAgbV9wYXRoID0gaGVhZGVyLnBhdGgoKTsKKyAgICAgICAg
ICAgICAgICBtX2NvbnRlbnRUeXBlID0gaGVhZGVyLmNvbnRlbnRUeXBlKCkudG9MYXRpbjEoKTsK
KyAgICAgICAgICAgICAgICBtX2NvbnRlbnRMZW5ndGggPSBoZWFkZXIuY29udGVudExlbmd0aCgp
OworICAgICAgICAgICAgICAgIGlmIChoZWFkZXIuaGFzS2V5KCJVcGdyYWRlIikgJiYgKGhlYWRl
ci52YWx1ZSgiVXBncmFkZSIpID09IFFMYXRpbjFTdHJpbmcoIldlYlNvY2tldCIpKSkKKyAgICAg
ICAgICAgICAgICAgICAgaXNXZWJTb2NrZXQgPSB0cnVlOworCisgICAgICAgICAgICAgICAgbV9k
YXRhLmNsZWFyKCk7CisgICAgICAgICAgICB9CisgICAgICAgIH0KKyAgICB9CisKKyAgICBpZiAo
bV9lbmRPZkhlYWRlcnMpIHsKKyAgICAgICAgUVN0cmluZ0xpc3QgcGF0aEFuZFF1ZXJ5ID0gbV9w
YXRoLnNwbGl0KCI/Iik7CisgICAgICAgIG1fcGF0aCA9IHBhdGhBbmRRdWVyeVswXTsKKyAgICAg
ICAgUVN0cmluZ0xpc3Qgd29yZHMgPSBtX3BhdGguc3BsaXQoUVN0cmluZzo6ZnJvbUxhdGluMSgi
LyIpKTsKKworICAgICAgICBpZiAoaXNXZWJTb2NrZXQpIHsKKyAgICAgICAgICAgIC8vIHN3aXRj
aCB0byB3ZWJzb2NrZXQtc3R5bGUgV2ViU29ja2V0U2VydmljZSBtZXNzYWdpbmcKKyAgICAgICAg
ICAgIGlmIChtX3RjcENvbm5lY3Rpb24pIHsKKyAgICAgICAgICAgICAgICBtX3RjcENvbm5lY3Rp
b24tPmRpc2Nvbm5lY3QoU0lHTkFMKHJlYWR5UmVhZCgpKSk7CisgICAgICAgICAgICAgICAgY29u
bmVjdChtX3RjcENvbm5lY3Rpb24sIFNJR05BTChyZWFkeVJlYWQoKSksIFNMT1Qod2ViU29ja2V0
UmVhZHlSZWFkKCkpKTsKKworICAgICAgICAgICAgICAgIFFCeXRlQXJyYXkga2V5MyA9IG1fdGNw
Q29ubmVjdGlvbi0+cmVhZCg4KTsKKworICAgICAgICAgICAgICAgIHF1aW50MzIgbnVtYmVyMSA9
IGdldENoYWxsZW5nZU51bWJlckZyb21GaWVsZChoZWFkZXIudmFsdWUoIlNlYy1XZWJTb2NrZXQt
S2V5MSIpKTsKKyAgICAgICAgICAgICAgICBxdWludDMyIG51bWJlcjIgPSBnZXRDaGFsbGVuZ2VO
dW1iZXJGcm9tRmllbGQoaGVhZGVyLnZhbHVlKCJTZWMtV2ViU29ja2V0LUtleTIiKSk7CisKKyAg
ICAgICAgICAgICAgICBjaGFyIHJlc3BvbnNlRGF0YVsxNl07CisgICAgICAgICAgICAgICAgZ2Vu
ZXJhdGVFeHBlY3RlZENoYWxsZW5nZVJlc3BvbnNlKG51bWJlcjEsIG51bWJlcjIsICh1bnNpZ25l
ZCBjaGFyKilrZXkzLmRhdGEoKSwgKHVuc2lnbmVkIGNoYXIqKXJlc3BvbnNlRGF0YSk7CisgICAg
ICAgICAgICAgICAgUUJ5dGVBcnJheSByZXNwb25zZShyZXNwb25zZURhdGEsIHNpemVvZihyZXNw
b25zZURhdGEpKTsKKworICAgICAgICAgICAgICAgIFFIdHRwUmVzcG9uc2VIZWFkZXIgcmVzcG9u
c2VIZWFkZXIoMTAxLCAiV2ViU29ja2V0IFByb3RvY29sIEhhbmRzaGFrZSIsIDEsIDEpOworICAg
ICAgICAgICAgICAgIHJlc3BvbnNlSGVhZGVyLnNldFZhbHVlKCJVcGdyYWRlIiwgaGVhZGVyLnZh
bHVlKCJVcGdyYWRlIikpOworICAgICAgICAgICAgICAgIHJlc3BvbnNlSGVhZGVyLnNldFZhbHVl
KCJDb25uZWN0aW9uIiwgaGVhZGVyLnZhbHVlKCJDb25uZWN0aW9uIikpOworICAgICAgICAgICAg
ICAgIHJlc3BvbnNlSGVhZGVyLnNldFZhbHVlKCJTZWMtV2ViU29ja2V0LU9yaWdpbiIsIGhlYWRl
ci52YWx1ZSgiT3JpZ2luIikpOworICAgICAgICAgICAgICAgIHJlc3BvbnNlSGVhZGVyLnNldFZh
bHVlKCJTZWMtV2ViU29ja2V0LUxvY2F0aW9uIiwgKCJ3czovLyIgKyBoZWFkZXIudmFsdWUoIkhv
c3QiKSArIG1fcGF0aCkpOworICAgICAgICAgICAgICAgIHJlc3BvbnNlSGVhZGVyLnNldENvbnRl
bnRMZW5ndGgocmVzcG9uc2Uuc2l6ZSgpKTsKKyAgICAgICAgICAgICAgICBtX3RjcENvbm5lY3Rp
b24tPndyaXRlKHJlc3BvbnNlSGVhZGVyLnRvU3RyaW5nKCkudG9MYXRpbjEoKSk7CisgICAgICAg
ICAgICAgICAgbV90Y3BDb25uZWN0aW9uLT53cml0ZShyZXNwb25zZSk7CisgICAgICAgICAgICAg
ICAgbV90Y3BDb25uZWN0aW9uLT5mbHVzaCgpOworCisgICAgICAgICAgICAgICAgaWYgKCh3b3Jk
cy5zaXplKCkgPT0gNCkKKyAgICAgICAgICAgICAgICAgICAgJiYgKHdvcmRzWzFdID09IFFTdHJp
bmc6OmZyb21MYXRpbjEoImRldnRvb2xzIikpCisgICAgICAgICAgICAgICAgICAgICYmICh3b3Jk
c1syXSA9PSBRU3RyaW5nOjpmcm9tTGF0aW4xKCJwYWdlIikpKSB7CisgICAgICAgICAgICAgICAg
ICAgIGludCBwYWdlTnVtID0gd29yZHNbM10udG9JbnQoKTsKKworICAgICAgICAgICAgICAgICAg
ICBtX2luc3BlY3RvckNsaWVudCA9IG1fc2VydmVyLT5pbnNwZWN0b3JDbGllbnQocGFnZU51bSk7
CisgICAgICAgICAgICAgICAgICAgIC8vIGF0dGFjaCByZW1vdGVGcm9udGVuZENoYW5uZWwgdG8g
aW5zcGVjdG9yLCBhbHNvIHRyYW5zZmVycmluZyBvd25lcnNoaXAKKyAgICAgICAgICAgICAgICAg
ICAgaWYgKG1faW5zcGVjdG9yQ2xpZW50KQorICAgICAgICAgICAgICAgICAgICAgICAgbV9pbnNw
ZWN0b3JDbGllbnQtPmF0dGFjaFJlbW90ZUZyb250ZW5kKG5ldyBSZW1vdGVGcm9udGVuZENoYW5u
ZWwodGhpcykpOworICAgICAgICAgICAgICAgIH0KKworICAgICAgICAgICAgfQorCisgICAgICAg
ICAgICByZXR1cm47CisgICAgICAgIH0KKyAgICAgICAgaWYgKG1fY29udGVudExlbmd0aCAmJiAo
bV90Y3BDb25uZWN0aW9uLT5ieXRlc0F2YWlsYWJsZSgpIDwgbV9jb250ZW50TGVuZ3RoKSkKKyAg
ICAgICAgICAgIHJldHVybjsKKworICAgICAgICBRQnl0ZUFycmF5IGNvbnRlbnQgPSBtX3RjcENv
bm5lY3Rpb24tPnJlYWQobV9jb250ZW50TGVuZ3RoKTsKKyAgICAgICAgbV9lbmRPZkhlYWRlcnMg
PSBmYWxzZTsKKworICAgICAgICBRU3RyaW5nIHBhdGggPSBRU3RyaW5nKCI6JTEiKS5hcmcobV9w
YXRoKTsKKyAgICAgICAgUUZpbGUgZmlsZShwYXRoKTsKKyAgICAgICAgUUJ5dGVBcnJheSByZXNw
b25zZTsKKyAgICAgICAgLy8gSXQgc2VlbXMgdGhhdCB0aGVyZSBzaG91bGQgYmUgYW4gZW51bSBv
ciBkZWZpbmUgZm9yIHRoZXNlIHN0YXR1cyBjb2RlcyBzb21ld2hlcmUgaW4gUXQgb3IgV2ViS2l0
LAorICAgICAgICAvLyBidXQgZ3JlcCBmYWlscyB0byB0dXJuIG9uZSB1cC4KKyAgICAgICAgLy8g
UU5ldHdvcmsgdXNlcyB0aGUgbnVtZXJpYyB2YWx1ZXMgZGlyZWN0bHkuCisgICAgICAgIGludCBj
b2RlID0gMjAwOworICAgICAgICBRU3RyaW5nIHRleHQgPSBRU3RyaW5nOjpmcm9tTGF0aW4xKCJP
SyIpOworICAgICAgICBpZiAoZmlsZS5leGlzdHMoKSkgeworICAgICAgICAgICAgZmlsZS5vcGVu
KFFJT0RldmljZTo6UmVhZE9ubHkpOworICAgICAgICAgICAgcmVzcG9uc2UgPSBmaWxlLnJlYWRB
bGwoKTsKKyAgICAgICAgfSBlbHNlIHsKKyAgICAgICAgICAgIGNvZGUgPSA0MDQ7CisgICAgICAg
ICAgICB0ZXh0ID0gUVN0cmluZzo6ZnJvbUxhdGluMSgiTm90IE9LIik7CisgICAgICAgIH0KKwor
ICAgICAgICBRSHR0cFJlc3BvbnNlSGVhZGVyIHJlc3BvbnNlSGVhZGVyKGNvZGUsIHRleHQsIDEs
IDApOworICAgICAgICByZXNwb25zZUhlYWRlci5zZXRDb250ZW50TGVuZ3RoKHJlc3BvbnNlLnNp
emUoKSk7CisgICAgICAgIGlmICghbV9jb250ZW50VHlwZS5pc0VtcHR5KCkpCisgICAgICAgICAg
ICByZXNwb25zZUhlYWRlci5zZXRDb250ZW50VHlwZShRU3RyaW5nOjpmcm9tTGF0aW4xKG1fY29u
dGVudFR5cGUpKTsKKworICAgICAgICBRQnl0ZUFycmF5IGFzY2lpSGVhZGVyID0gcmVzcG9uc2VI
ZWFkZXIudG9TdHJpbmcoKS50b0FzY2lpKCk7CisgICAgICAgIG1fdGNwQ29ubmVjdGlvbi0+d3Jp
dGUoYXNjaWlIZWFkZXIpOworCisgICAgICAgIG1fdGNwQ29ubmVjdGlvbi0+d3JpdGUocmVzcG9u
c2UpOworICAgICAgICBtX3RjcENvbm5lY3Rpb24tPmZsdXNoKCk7CisgICAgICAgIG1fdGNwQ29u
bmVjdGlvbi0+Y2xvc2UoKTsKKworICAgICAgICByZXR1cm47CisgICAgfQorfQorCit2b2lkIElu
c3BlY3RvclNlcnZlclJlcXVlc3RIYW5kbGVyUXQ6OnRjcENvbm5lY3Rpb25EaXNjb25uZWN0ZWQo
KQoreworICAgIG1fdGNwQ29ubmVjdGlvbiA9IDA7Cit9CisKK2ludCBJbnNwZWN0b3JTZXJ2ZXJS
ZXF1ZXN0SGFuZGxlclF0Ojp3ZWJTb2NrZXRTZW5kKFFCeXRlQXJyYXkgcGF5bG9hZCkKK3sKKyAg
ICBtX3RjcENvbm5lY3Rpb24tPnB1dENoYXIoMHgwMCk7CisgICAgaW50IG5CeXRlcyA9IG1fdGNw
Q29ubmVjdGlvbi0+d3JpdGUocGF5bG9hZCk7CisgICAgbV90Y3BDb25uZWN0aW9uLT5wdXRDaGFy
KDB4RkYpOworICAgIG1fdGNwQ29ubmVjdGlvbi0+Zmx1c2goKTsKKyAgICByZXR1cm4gbkJ5dGVz
OworfQorCitpbnQgSW5zcGVjdG9yU2VydmVyUmVxdWVzdEhhbmRsZXJRdDo6d2ViU29ja2V0U2Vu
ZChjb25zdCBjaGFyKiBkYXRhLCBzaXplX3QgbGVuZ3RoKQoreworICAgIG1fdGNwQ29ubmVjdGlv
bi0+cHV0Q2hhcigweDAwKTsKKyAgICBpbnQgbkJ5dGVzID0gbV90Y3BDb25uZWN0aW9uLT53cml0
ZShkYXRhLCBsZW5ndGgpOworICAgIG1fdGNwQ29ubmVjdGlvbi0+cHV0Q2hhcigweEZGKTsKKyAg
ICBtX3RjcENvbm5lY3Rpb24tPmZsdXNoKCk7CisgICAgcmV0dXJuIG5CeXRlczsKK30KKwordm9p
ZCBJbnNwZWN0b3JTZXJ2ZXJSZXF1ZXN0SGFuZGxlclF0Ojp3ZWJTb2NrZXRSZWFkeVJlYWQoKQor
eworICAgIGlmICghbV90Y3BDb25uZWN0aW9uLT5ieXRlc0F2YWlsYWJsZSgpKQorICAgICAgICBy
ZXR1cm47CisgICAgUUJ5dGVBcnJheSBjb250ZW50ID0gbV90Y3BDb25uZWN0aW9uLT5yZWFkKG1f
dGNwQ29ubmVjdGlvbi0+Ynl0ZXNBdmFpbGFibGUoKSk7CisgICAgbV9kYXRhLmFwcGVuZChjb250
ZW50KTsKKyAgICB3aGlsZSAobV9kYXRhLnNpemUoKSA+IDApIHsKKyAgICAgICAgaWYgKG1fZGF0
YVswXSkgeworICAgICAgICAgICAgcUNyaXRpY2FsKCkgPDwgICJ3ZWJTb2NrZXRSZWFkeVJlYWQ6
IHVua25vd24gZnJhbWUgdHlwZSIgPDwgbV9kYXRhWzBdOworICAgICAgICAgICAgbV9kYXRhLmNs
ZWFyKCk7CisgICAgICAgICAgICBtX3RjcENvbm5lY3Rpb24tPmNsb3NlKCk7CisgICAgICAgICAg
ICByZXR1cm47CisgICAgICAgIH0KKyAgICAgICAgaW50IHBvcyA9IG1fZGF0YS5pbmRleE9mKDB4
ZmYsIDEpOworICAgICAgICBpZiAocG9zIDwgMCkKKyAgICAgICAgICAgIHJldHVybjsKKworICAg
ICAgICBzaXplX3QgbGVuZ3RoID0gcG9zIC0gMTsKKworICAgICAgICBRQnl0ZUFycmF5IHBheWxv
YWQgPSBtX2RhdGEubWlkKDEsIGxlbmd0aCk7CisKKyAgICAgICAgaWYgKG1faW5zcGVjdG9yQ2xp
ZW50KSB7CisgICAgICAgICAgSW5zcGVjdG9yQ29udHJvbGxlciogaW5zcGVjdG9yQ29udHJvbGxl
ciA9IG1faW5zcGVjdG9yQ2xpZW50LT5tX2luc3BlY3RlZFdlYlBhZ2UtPmQtPnBhZ2UtPmluc3Bl
Y3RvckNvbnRyb2xsZXIoKTsKKyAgICAgICAgICBpbnNwZWN0b3JDb250cm9sbGVyLT5pbnNwZWN0
b3JCYWNrZW5kRGlzcGF0Y2hlcigpLT5kaXNwYXRjaChRU3RyaW5nOjpmcm9tVXRmOChwYXlsb2Fk
KSk7CisgICAgICAgIH0KKworICAgICAgICBtX2RhdGEgPSBtX2RhdGEubWlkKGxlbmd0aCArIDIp
OworICAgIH0KK30KKworUmVtb3RlRnJvbnRlbmRDaGFubmVsOjpSZW1vdGVGcm9udGVuZENoYW5u
ZWwoSW5zcGVjdG9yU2VydmVyUmVxdWVzdEhhbmRsZXJRdCogcmVxdWVzdEhhbmRsZXIpCisgICAg
OiBRT2JqZWN0KHJlcXVlc3RIYW5kbGVyKQorICAgICwgbV9yZXF1ZXN0SGFuZGxlcihyZXF1ZXN0
SGFuZGxlcikKK3sKK30KKworYm9vbCBSZW1vdGVGcm9udGVuZENoYW5uZWw6OnNlbmRNZXNzYWdl
VG9Gcm9udGVuZChjb25zdCBTdHJpbmcgJm1lc3NhZ2UpCit7CisgICAgaWYgKCFtX3JlcXVlc3RI
YW5kbGVyKQorICAgICAgICByZXR1cm4gZmFsc2U7CisgICAgQ1N0cmluZyBjc3RyID0gbWVzc2Fn
ZS51dGY4KCk7CisgICAgcmV0dXJuIG1fcmVxdWVzdEhhbmRsZXItPndlYlNvY2tldFNlbmQoY3N0
ci5kYXRhKCksIGNzdHIubGVuZ3RoKCkpOworfQorCit9CmRpZmYgLS1naXQgYS9XZWJLaXQvcXQv
V2ViQ29yZVN1cHBvcnQvSW5zcGVjdG9yU2VydmVyUXQuaCBiL1dlYktpdC9xdC9XZWJDb3JlU3Vw
cG9ydC9JbnNwZWN0b3JTZXJ2ZXJRdC5oCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjAzOTUyNTgyYWU2OTYxMjhlZmZl
OGExZGQ1MzU5YWNhNDAzMmM4ZWIKLS0tIC9kZXYvbnVsbAorKysgYi9XZWJLaXQvcXQvV2ViQ29y
ZVN1cHBvcnQvSW5zcGVjdG9yU2VydmVyUXQuaApAQCAtMCwwICsxLDExMSBAQAorLyoKKyAgICBD
b3B5cmlnaHQgKEMpIDIwMTAgTm9raWEgQ29ycG9yYXRpb24gYW5kL29yIGl0cyBzdWJzaWRpYXJ5
KC1pZXMpCisKKyAgICBUaGlzIGxpYnJhcnkgaXMgZnJlZSBzb2Z0d2FyZTsgeW91IGNhbiByZWRp
c3RyaWJ1dGUgaXQgYW5kL29yCisgICAgbW9kaWZ5IGl0IHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUg
R05VIExpYnJhcnkgR2VuZXJhbCBQdWJsaWMKKyAgICBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieSB0
aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uOyBlaXRoZXIKKyAgICB2ZXJzaW9uIDIgb2YgdGhl
IExpY2Vuc2UsIG9yIChhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uCisKKyAgICBU
aGlzIGxpYnJhcnkgaXMgZGlzdHJpYnV0ZWQgaW4gdGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJlIHVz
ZWZ1bCwKKyAgICBidXQgV0lUSE9VVCBBTlkgV0FSUkFOVFk7IHdpdGhvdXQgZXZlbiB0aGUgaW1w
bGllZCB3YXJyYW50eSBvZgorICAgIE1FUkNIQU5UQUJJTElUWSBvciBGSVRORVNTIEZPUiBBIFBB
UlRJQ1VMQVIgUFVSUE9TRS4gIFNlZSB0aGUgR05VCisgICAgTGlicmFyeSBHZW5lcmFsIFB1Ymxp
YyBMaWNlbnNlIGZvciBtb3JlIGRldGFpbHMuCisKKyAgICBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2
ZWQgYSBjb3B5IG9mIHRoZSBHTlUgTGlicmFyeSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlCisgICAg
YWxvbmcgd2l0aCB0aGlzIGxpYnJhcnk7IHNlZSB0aGUgZmlsZSBDT1BZSU5HLkxJQi4gIElmIG5v
dCwgd3JpdGUgdG8KKyAgICB0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uLCBJbmMuLCA1MSBG
cmFua2xpbiBTdHJlZXQsIEZpZnRoIEZsb29yLAorICAgIEJvc3RvbiwgTUEgMDIxMTAtMTMwMSwg
VVNBLgorKi8KKworI2lmbmRlZiBJbnNwZWN0b3JTZXJ2ZXJRdF9oCisjZGVmaW5lIEluc3BlY3Rv
clNlcnZlclF0X2gKKworI2luY2x1ZGUgPFFMaXN0PgorI2luY2x1ZGUgPFFNYXA+CisjaW5jbHVk
ZSA8UU9iamVjdD4KKyNpbmNsdWRlIDxRUGFpcj4KKyNpbmNsdWRlIDxRU3RyaW5nPgorI2luY2x1
ZGUgPHd0Zi9Gb3J3YXJkLmg+CisKK2NsYXNzIFFUY3BTZXJ2ZXI7CitjbGFzcyBRVGNwU29ja2V0
OworY2xhc3MgUVdlYlBhZ2U7CisKK25hbWVzcGFjZSBXZWJDb3JlIHsKK2NsYXNzIEluc3BlY3Rv
clNlcnZlclJlcXVlc3RIYW5kbGVyUXQ7CitjbGFzcyBJbnNwZWN0b3JDbGllbnRRdDsKKworY2xh
c3MgSW5zcGVjdG9yU2VydmVyUXQgOiBwdWJsaWMgUU9iamVjdCB7CisgICAgUV9PQkpFQ1QKK3B1
YmxpYzoKKworICAgIHN0YXRpYyBJbnNwZWN0b3JTZXJ2ZXJRdCogc2VydmVyKCk7CisKKyAgICB2
b2lkIGxpc3RlbihxdWludDE2IHBvcnQpOworCisgICAgdm9pZCByZWdpc3RlckNsaWVudChJbnNw
ZWN0b3JDbGllbnRRdCogY2xpZW50KTsKKyAgICB2b2lkIHVucmVnaXN0ZXJDbGllbnQoSW5zcGVj
dG9yQ2xpZW50UXQqIGNsaWVudCk7CisKKyAgICB2b2lkIGNsb3NlKCk7CisgICAgSW5zcGVjdG9y
Q2xpZW50UXQqIGluc3BlY3RvckNsaWVudChpbnQgcGFnZU51bSk7CisKK3Byb3RlY3RlZDoKKyAg
ICBJbnNwZWN0b3JTZXJ2ZXJRdCgpOworICAgIHZpcnR1YWwgfkluc3BlY3RvclNlcnZlclF0KCk7
CisKK3ByaXZhdGUgc2xvdHM6CisgICAgdm9pZCBuZXdDb25uZWN0aW9uKCk7CisKK3ByaXZhdGU6
CisgICAgUVRjcFNlcnZlciogbV90Y3BTZXJ2ZXI7CisgICAgUU1hcDxpbnQsIEluc3BlY3RvckNs
aWVudFF0Kj4gbV9pbnNwZWN0b3JDbGllbnRzOworICAgIGludCBtX3BhZ2VOdW1iZXI7CisKKwor
fTsKKworY2xhc3MgUmVtb3RlRnJvbnRlbmRDaGFubmVsIDogcHVibGljIFFPYmplY3QgeworICAg
IFFfT0JKRUNUCisgICAgICAgIHB1YmxpYzoKKworICAgIFJlbW90ZUZyb250ZW5kQ2hhbm5lbChJ
bnNwZWN0b3JTZXJ2ZXJSZXF1ZXN0SGFuZGxlclF0KiByZXF1ZXN0SGFuZGxlcik7CisgICAgYm9v
bCBzZW5kTWVzc2FnZVRvRnJvbnRlbmQoY29uc3QgU3RyaW5nJiBtZXNzYWdlKTsKKworcHJpdmF0
ZToKKyAgICBJbnNwZWN0b3JTZXJ2ZXJSZXF1ZXN0SGFuZGxlclF0KiBtX3JlcXVlc3RIYW5kbGVy
OworfTsKKworY2xhc3MgSW5zcGVjdG9yU2VydmVyUmVxdWVzdEhhbmRsZXJRdCA6IHB1YmxpYyBR
T2JqZWN0IHsKKyAgICBRX09CSkVDVAorCisgICAgICAgIHB1YmxpYzoKKworICAgIEluc3BlY3Rv
clNlcnZlclJlcXVlc3RIYW5kbGVyUXQoUVRjcFNvY2tldCAqdGNwQ29ubmVjdGlvbiwgSW5zcGVj
dG9yU2VydmVyUXQgKnNlcnZlcik7CisgICAgdmlydHVhbCB+SW5zcGVjdG9yU2VydmVyUmVxdWVz
dEhhbmRsZXJRdCgpOworICAgIHZpcnR1YWwgaW50IHdlYlNvY2tldFNlbmQoUUJ5dGVBcnJheSBw
YXlsb2FkKTsKKyAgICB2aXJ0dWFsIGludCB3ZWJTb2NrZXRTZW5kKGNvbnN0IGNoYXIgKnBheWxv
YWQsIHNpemVfdCBsZW5ndGgpOworCitwcml2YXRlIHNsb3RzOgorICAgIHZvaWQgdGNwUmVhZHlS
ZWFkKCk7CisgICAgdm9pZCB0Y3BDb25uZWN0aW9uRGlzY29ubmVjdGVkKCk7CisgICAgdm9pZCB3
ZWJTb2NrZXRSZWFkeVJlYWQoKTsKKworcHJpdmF0ZToKKyAgICBRVGNwU29ja2V0KiBtX3RjcENv
bm5lY3Rpb247CisgICAgSW5zcGVjdG9yU2VydmVyUXQqIG1fc2VydmVyOworCisgICAgUVN0cmlu
ZyBtX3BhdGg7CisgICAgUUJ5dGVBcnJheSBtX2NvbnRlbnRUeXBlOworICAgIGludCBtX2NvbnRl
bnRMZW5ndGg7CisgICAgYm9vbCBtX2VuZE9mSGVhZGVyczsKKyAgICBRQnl0ZUFycmF5IG1fZGF0
YTsKKyAgICBJbnNwZWN0b3JDbGllbnRRdCogbV9pbnNwZWN0b3JDbGllbnQ7CisKKyAgICB2b2lk
IGhhbmRsZUluc3BlY3RvclJlcXVlc3QoUVN0cmluZ0xpc3Qgd29yZHMpOworICAgIHZvaWQgaGFu
ZGxlRnJvbUZyb250ZW5kUmVxdWVzdCgpOworICAgIHZvaWQgaGFuZGxlUmVzb3VyY2VSZXF1ZXN0
KFFTdHJpbmdMaXN0IHdvcmRzKTsKKworfTsKKworfQorI2VuZGlmCmRpZmYgLS1naXQgYS9XZWJL
aXRUb29scy9DaGFuZ2VMb2cgYi9XZWJLaXRUb29scy9DaGFuZ2VMb2cKaW5kZXggZGFkNDFhN2U4
OGMwYzJkOGNlODhkNDFlY2RkYzViN2Y3MjlmY2ZhZi4uYTFlYzA3Y2E3YjIwZjFlNTczZGUwNmM1
ZGU5NTc2MTBlYTAyZmQ1ZCAxMDA2NDQKLS0tIGEvV2ViS2l0VG9vbHMvQ2hhbmdlTG9nCisrKyBi
L1dlYktpdFRvb2xzL0NoYW5nZUxvZwpAQCAtMSwzICsxLDI2IEBACisyMDEwLTA4LTI3ICBKYW1l
eSBIaWNrcyAgPGphbWV5LmhpY2tzQG5va2lhLmNvbT4KKworICAgICAgICBSZXZpZXdlZCBieSBO
T0JPRFkgKE9PUFMhKS4KKworICAgICAgICBbUXRdIFdlYiBJbnNwZWN0b3I6IFJlbW90ZSBXZWIg
SW5zcGVjdG9yIHN1cHBvcnQgZm9yIFF0V2ViS2l0CisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJr
aXQub3JnL3Nob3dfYnVnLmNnaT9pZD00Mzk4OAorCisgICAgICAgIFJ1bnMgYSB3ZWIgZGVidWcg
c2VydmVyIG9uIHBvcnQgc3BlY2lmaWVkIGJ5IFF0VGVzdEJyb3dzZXIKKyAgICAgICAgYXJndW1l
bnQgLXJlbW90ZS1pbnNwZWN0b3ItcG9ydC4gUHJvcGVydHkKKyAgICAgICAgX3Ffd2ViSW5zcGVj
dG9yU2VydmVyUG9ydCBvZiB0aGUgUVdlYlBhZ2UgaW5zdGFuY2Ugd2lsbCBiZSBzZXQKKyAgICAg
ICAgYWNjb3JkaW5nIHRvIHRoZSBhcmd1bWVudC4gQWxsIHBhZ2VzIHdpdGggdGhhdCBwcm9wZXJ0
eSBzZXQgd2lsbAorICAgICAgICBiZSByZW1vdGVseSBpbnNwZWN0YWJsZS4KKworICAgICAgICBV
UkwgZm9yIHJlbW90ZSBpbnNwZWN0aW9uIG9mIGZpcnN0IFFXZWJQYWdlIGlzCisgICAgICAgICAg
ICBodHRwOi8vbG9jYWxob3N0OjkyMjIvZGV2dG9vbHMvcGFnZS8xCisgICAgICAgIHdoZXJlIDEg
aXMgdGhlIG51bWJlciBvZiB0aGUgUVdlYlBhZ2UgaW5zdGFuY2UuCisgICAgICAgIAorICAgICAg
ICAqIFF0VGVzdEJyb3dzZXIvbGF1bmNoZXJ3aW5kb3cuY3BwOgorICAgICAgICAoTGF1bmNoZXJX
aW5kb3c6OmluaXQpOgorICAgICAgICAqIFF0VGVzdEJyb3dzZXIvbGF1bmNoZXJ3aW5kb3cuaDoK
KyAgICAgICAgKiBRdFRlc3RCcm93c2VyL21haW4uY3BwOgorICAgICAgICAoTGF1bmNoZXJBcHBs
aWNhdGlvbjo6aGFuZGxlVXNlck9wdGlvbnMpOgorCiAyMDEwLTA4LTI3ICBCZW5qYW1pbiBQb3Vs
YWluICA8YmVuamFtaW4ucG91bGFpbkBub2tpYS5jb20+CiAKICAgICAgICAgVW5yZXZpZXdlZC4g
QWRkIG15c2VsZiB0byB0aGUgY29tbWl0dGVycyBsaXN0LgpkaWZmIC0tZ2l0IGEvV2ViS2l0VG9v
bHMvUXRUZXN0QnJvd3Nlci9sYXVuY2hlcndpbmRvdy5jcHAgYi9XZWJLaXRUb29scy9RdFRlc3RC
cm93c2VyL2xhdW5jaGVyd2luZG93LmNwcAppbmRleCAzYjQ3ZjI5Y2I0NjdiNDdlOTExOWI5MzQw
MzMzMzJkNTIzZjVkNThhLi42NDZiYjA3ZDFiZmMxN2MwNjQ1M2NjZDBjM2NlMTIxMzFmMzBiMTBi
IDEwMDY0NAotLS0gYS9XZWJLaXRUb29scy9RdFRlc3RCcm93c2VyL2xhdW5jaGVyd2luZG93LmNw
cAorKysgYi9XZWJLaXRUb29scy9RdFRlc3RCcm93c2VyL2xhdW5jaGVyd2luZG93LmNwcApAQCAt
OTEsNiArOTEsOSBAQCB2b2lkIExhdW5jaGVyV2luZG93Ojppbml0KCkKICAgICBtX2luc3BlY3Rv
ci0+aGlkZSgpOwogICAgIGNvbm5lY3QodGhpcywgU0lHTkFMKGRlc3Ryb3llZCgpKSwgbV9pbnNw
ZWN0b3IsIFNMT1QoZGVsZXRlTGF0ZXIoKSkpOwogCisgICAgaWYgKG1fd2luZG93T3B0aW9ucy5y
ZW1vdGVJbnNwZWN0b3JQb3J0KQorICAgICAgICBwYWdlKCktPnNldFByb3BlcnR5KCJfcV93ZWJJ
bnNwZWN0b3JTZXJ2ZXJQb3J0IiwgbV93aW5kb3dPcHRpb25zLnJlbW90ZUluc3BlY3RvclBvcnQp
OworCiAgICAgLy8gdGhlIHpvb20gdmFsdWVzIGFyZSBjaG9zZW4gdG8gYmUgbGlrZSBpbiBNb3pp
bGxhIEZpcmVmb3ggMwogICAgIGlmICghbV96b29tTGV2ZWxzLmNvdW50KCkpIHsKICAgICAgICAg
bV96b29tTGV2ZWxzIDw8IDMwIDw8IDUwIDw8IDY3IDw8IDgwIDw8IDkwOwpkaWZmIC0tZ2l0IGEv
V2ViS2l0VG9vbHMvUXRUZXN0QnJvd3Nlci9sYXVuY2hlcndpbmRvdy5oIGIvV2ViS2l0VG9vbHMv
UXRUZXN0QnJvd3Nlci9sYXVuY2hlcndpbmRvdy5oCmluZGV4IDY1ZjM5MGQ4OTRkNTQ0M2UwN2M1
NDAwMzFkZmIxNWU1M2ZiYTQ2ZjcuLmUxYzc0NzBhODZjNTQ4ZGRiNzU1Njg2M2IxMjU1OGY2MDRj
NmY0OWYgMTAwNjQ0Ci0tLSBhL1dlYktpdFRvb2xzL1F0VGVzdEJyb3dzZXIvbGF1bmNoZXJ3aW5k
b3cuaAorKysgYi9XZWJLaXRUb29scy9RdFRlc3RCcm93c2VyL2xhdW5jaGVyd2luZG93LmgKQEAg
LTExMCw2ICsxMTAsNyBAQCBwdWJsaWM6CiAgICAgYm9vbCB1c2VRR0xXaWRnZXRWaWV3cG9ydDsK
ICNlbmRpZgogICAgIFFVcmwgaW5zcGVjdG9yVXJsOworICAgIHF1aW50MTYgcmVtb3RlSW5zcGVj
dG9yUG9ydDsKIH07CiAKIGNsYXNzIExhdW5jaGVyV2luZG93IDogcHVibGljIE1haW5XaW5kb3cg
ewpkaWZmIC0tZ2l0IGEvV2ViS2l0VG9vbHMvUXRUZXN0QnJvd3Nlci9tYWluLmNwcCBiL1dlYktp
dFRvb2xzL1F0VGVzdEJyb3dzZXIvbWFpbi5jcHAKaW5kZXggZWM4NjRlOWQwOTVhM2VmODBhNzI1
N2QwZjlmMmUzZmU1MDJmYjRhZS4uMTJhMzExZWUzZWE2YmMzODdmZWNjYTRmMGY1NGY1N2NhNjFm
YTkzOSAxMDA2NDQKLS0tIGEvV2ViS2l0VG9vbHMvUXRUZXN0QnJvd3Nlci9tYWluLmNwcAorKysg
Yi9XZWJLaXRUb29scy9RdFRlc3RCcm93c2VyL21haW4uY3BwCkBAIC0xODAsNiArMTgwLDExIEBA
IHZvaWQgTGF1bmNoZXJBcHBsaWNhdGlvbjo6aGFuZGxlVXNlck9wdGlvbnMoKQogICAgIGlmIChp
bnNwZWN0b3JVcmxJbmRleCAhPSAtMSkKICAgICAgICB3aW5kb3dPcHRpb25zLmluc3BlY3RvclVy
bCA9IHRha2VPcHRpb25WYWx1ZSgmYXJncywgaW5zcGVjdG9yVXJsSW5kZXgpOwogCisgICAgUVN0
cmluZyByZW1vdGVJbnNwZWN0b3JQb3J0QXJnKCItcmVtb3RlLWluc3BlY3Rvci1wb3J0Iik7Cisg
ICAgaW50IHJlbW90ZUluc3BlY3RvclBvcnRJbmRleCA9IGFyZ3MuaW5kZXhPZihyZW1vdGVJbnNw
ZWN0b3JQb3J0QXJnKTsKKyAgICBpZiAocmVtb3RlSW5zcGVjdG9yUG9ydEluZGV4ICE9IC0xKQor
ICAgICAgICB3aW5kb3dPcHRpb25zLnJlbW90ZUluc3BlY3RvclBvcnQgPSB0YWtlT3B0aW9uVmFs
dWUoJmFyZ3MsIHJlbW90ZUluc3BlY3RvclBvcnRJbmRleCkudG9JbnQoKTsKKwogICAgIGludCBy
b2JvdEluZGV4ID0gYXJncy5pbmRleE9mKCItciIpOwogICAgIGlmIChyb2JvdEluZGV4ICE9IC0x
KSB7CiAgICAgICAgIFFTdHJpbmcgbGlzdEZpbGUgPSB0YWtlT3B0aW9uVmFsdWUoJmFyZ3MsIHJv
Ym90SW5kZXgpOwo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>66045</attachid>
            <date>2010-08-31 06:38:52 -0700</date>
            <delta_ts>2010-09-13 06:11:40 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-43988-20100831093850.patch</filename>
            <type>text/plain</type>
            <size>32783</size>
            <attacher name="Jamey Hicks">jamey.hicks</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1dlYkNvcmUvQ2hhbmdlTG9nIGIvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXgg
YTEyMGQ1YTg1MDEzN2NjMzViZTQyMTUzODNkM2UxNWYyODY0ZGExZi4uZDUzZDJjYTNmNDA0YzI2
MTkxMTE0NmUyYWQ0ZDlhMDZiZTA2YmEwNCAxMDA2NDQKLS0tIGEvV2ViQ29yZS9DaGFuZ2VMb2cK
KysrIGIvV2ViQ29yZS9DaGFuZ2VMb2cKQEAgLTEsMyArMSwyMiBAQAorMjAxMC0wOC0zMSAgSmFt
ZXkgSGlja3MgIDxqYW1leS5oaWNrc0Bub2tpYS5jb20+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkg
Tk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgW1F0XSBXZWIgSW5zcGVjdG9yOiBSZW1vdGUgV2Vi
IEluc3BlY3RvciBzdXBwb3J0IGZvciBRdFdlYktpdAorICAgICAgICBodHRwczovL2J1Z3Mud2Vi
a2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9NDM5ODgKKworICAgICAgICBSdW5zIGEgd2ViIGRlYnVn
IHNlcnZlciBvbiBwb3J0IHNwZWNpZmllZCBieSBRdFRlc3RCcm93c2VyCisgICAgICAgIGFyZ3Vt
ZW50IC1yZW1vdGUtaW5zcGVjdG9yLXBvcnQuIFByb3BlcnR5CisgICAgICAgIF9xX3dlYkluc3Bl
Y3RvclNlcnZlclBvcnQgb2YgdGhlIFFXZWJQYWdlIGluc3RhbmNlIHdpbGwgYmUgc2V0CisgICAg
ICAgIGFjY29yZGluZyB0byB0aGUgYXJndW1lbnQuIEFsbCBwYWdlcyB3aXRoIHRoYXQgcHJvcGVy
dHkgc2V0IHdpbGwKKyAgICAgICAgYmUgcmVtb3RlbHkgaW5zcGVjdGFibGUuCisKKyAgICAgICAg
VVJMIGZvciByZW1vdGUgaW5zcGVjdGlvbiBvZiBmaXJzdCBRV2ViUGFnZSBpcworICAgICAgICAg
ICAgaHR0cDovL2xvY2FsaG9zdDo5MjIyL2RldnRvb2xzL3BhZ2UvMQorICAgICAgICB3aGVyZSAx
IGlzIHRoZSBudW1iZXIgb2YgdGhlIFFXZWJQYWdlIGluc3RhbmNlLgorCisgICAgICAgICogV2Vi
Q29yZS5wcm86CisKIDIwMTAtMDgtMzEgIEp1c3RpbiBTY2h1aCAgPGpzY2h1aEBjaHJvbWl1bS5v
cmc+CiAKICAgICAgICAgUmV2aWV3ZWQgYnkgTmF0ZSBDaGFwaW4uCmRpZmYgLS1naXQgYS9XZWJD
b3JlL1dlYkNvcmUucHJvIGIvV2ViQ29yZS9XZWJDb3JlLnBybwppbmRleCBlN2RiMzhlYjIzNTI4
NzcxZmVkYTgzN2M5OGI1YjgxMTYwZjk0MGI5Li42YjZlODY3ZmM0YTM0ODY4MzAzNWQ5YjhjNzMw
YzMyMjgzYmI4YmRiIDEwMDY0NAotLS0gYS9XZWJDb3JlL1dlYkNvcmUucHJvCisrKyBiL1dlYkNv
cmUvV2ViQ29yZS5wcm8KQEAgLTIyMTksNiArMjIxOSw3IEBAIEhFQURFUlMgKz0gXAogICAgIHht
bC9YU0xUUHJvY2Vzc29yLmggXAogICAgIHhtbC9YU0xUVW5pY29kZVNvcnQuaCBcCiAgICAgJCRQ
V0QvLi4vV2ViS2l0L3F0L0FwaS9xd2VicGx1Z2luZGF0YWJhc2VfcC5oIFwKKyAgICAkJFBXRC8u
Li9XZWJLaXQvcXQvV2ViQ29yZVN1cHBvcnQvSW5zcGVjdG9yU2VydmVyUXQuaCBcCiAgICAgJCRQ
V0QvLi4vV2ViS2l0L3F0L1dlYkNvcmVTdXBwb3J0L1F0RmFsbGJhY2tXZWJQb3B1cC5oIFwKICAg
ICAkJFBXRC8uLi9XZWJLaXQvcXQvV2ViQ29yZVN1cHBvcnQvRnJhbWVMb2FkZXJDbGllbnRRdC5o
IFwKICAgICAkJFBXRC8uLi9XZWJLaXQvcXQvV2ViQ29yZVN1cHBvcnQvRnJhbWVOZXR3b3JraW5n
Q29udGV4dFF0LmggXApAQCAtMjMxNCw2ICsyMzE1LDcgQEAgU09VUkNFUyArPSBcCiAgICAgLi4v
V2ViS2l0L3F0L1dlYkNvcmVTdXBwb3J0L0VkaXRDb21tYW5kUXQuY3BwIFwKICAgICAuLi9XZWJL
aXQvcXQvV2ViQ29yZVN1cHBvcnQvRnJhbWVMb2FkZXJDbGllbnRRdC5jcHAgXAogICAgIC4uL1dl
YktpdC9xdC9XZWJDb3JlU3VwcG9ydC9GcmFtZU5ldHdvcmtpbmdDb250ZXh0UXQuY3BwIFwKKyAg
ICAuLi9XZWJLaXQvcXQvV2ViQ29yZVN1cHBvcnQvSW5zcGVjdG9yU2VydmVyUXQuY3BwIFwKICAg
ICAuLi9XZWJLaXQvcXQvV2ViQ29yZVN1cHBvcnQvSW5zcGVjdG9yQ2xpZW50UXQuY3BwIFwKICAg
ICAuLi9XZWJLaXQvcXQvV2ViQ29yZVN1cHBvcnQvTm90aWZpY2F0aW9uUHJlc2VudGVyQ2xpZW50
UXQuY3BwIFwKICAgICAuLi9XZWJLaXQvcXQvV2ViQ29yZVN1cHBvcnQvUGFnZUNsaWVudFF0LmNw
cCBcCmRpZmYgLS1naXQgYS9XZWJLaXQvcXQvQXBpL3F3ZWJpbnNwZWN0b3IuY3BwIGIvV2ViS2l0
L3F0L0FwaS9xd2ViaW5zcGVjdG9yLmNwcAppbmRleCA4MDJlYTk4MDQ4ZmE1Yjk3ZTRmZmMzZDUw
N2MzMjg1YTBjYjZhM2UzLi5iYzkwMGM3MTM0NGI4YjU2N2UyMTUzMjhjYzY1ZTk3YTRkNzkxYWU0
IDEwMDY0NAotLS0gYS9XZWJLaXQvcXQvQXBpL3F3ZWJpbnNwZWN0b3IuY3BwCisrKyBiL1dlYktp
dC9xdC9BcGkvcXdlYmluc3BlY3Rvci5jcHAKQEAgLTE5Niw2ICsxOTYsMzEgQEAgdm9pZCBRV2Vi
SW5zcGVjdG9yUHJpdmF0ZTo6c2V0RnJvbnRlbmQoUVdpZGdldCogbmV3RnJvbnRlbmQpCiAgICAg
fQogfQogCisvKiEgCisgKiBcaW50ZXJuYWwgCisgKi8KK3ZvaWQgUVdlYkluc3BlY3RvclByaXZh
dGU6OmF0dGFjaFJlbW90ZUZyb250ZW5kKFFPYmplY3QqIG5ld1JlbW90ZUZyb250ZW5kKQorewor
ICAgIGlmIChyZW1vdGVGcm9udGVuZCkKKyAgICAgICAgcmVtb3RlRnJvbnRlbmQtPnNldFBhcmVu
dCgwKTsKKworICAgIHJlbW90ZUZyb250ZW5kID0gbmV3UmVtb3RlRnJvbnRlbmQ7CisKKyAgICBp
ZiAocmVtb3RlRnJvbnRlbmQpCisgICAgICAgIHJlbW90ZUZyb250ZW5kLT5zZXRQYXJlbnQocSk7
Cit9CisKKy8qISAKKyAqIFxpbnRlcm5hbCAKKyAqLwordm9pZCBRV2ViSW5zcGVjdG9yUHJpdmF0
ZTo6ZGV0YWNoUmVtb3RlRnJvbnRlbmQoKQoreworICAgIGlmIChyZW1vdGVGcm9udGVuZCkgewor
ICAgICAgICByZW1vdGVGcm9udGVuZC0+ZGVsZXRlTGF0ZXIoKTsKKyAgICAgICAgcmVtb3RlRnJv
bnRlbmQgPSAwOworICAgIH0KK30KKwogdm9pZCBRV2ViSW5zcGVjdG9yUHJpdmF0ZTo6YWRqdXN0
RnJvbnRlbmRTaXplKGNvbnN0IFFTaXplJiBzaXplKQogewogICAgIGlmIChmcm9udGVuZCkKZGlm
ZiAtLWdpdCBhL1dlYktpdC9xdC9BcGkvcXdlYmluc3BlY3Rvcl9wLmggYi9XZWJLaXQvcXQvQXBp
L3F3ZWJpbnNwZWN0b3JfcC5oCmluZGV4IDRkMzI3Y2M1YTkxMWY3ZTUyMjk4MDRmMWQ4ZTI3OWE0
NTQ4ZWQ3NTcuLjk2ZjY0YmI1YTBmYWI4ZDA0OWIwZTU4N2YzN2Y3ZWVlZWY3MDYzZTAgMTAwNjQ0
Ci0tLSBhL1dlYktpdC9xdC9BcGkvcXdlYmluc3BlY3Rvcl9wLmgKKysrIGIvV2ViS2l0L3F0L0Fw
aS9xd2ViaW5zcGVjdG9yX3AuaApAQCAtMzMsMTQgKzMzLDE4IEBAIHB1YmxpYzoKICAgICA6IHEo
cXEpCiAgICAgLCBwYWdlKDApCiAgICAgLCBmcm9udGVuZCgwKQorICAgICwgcmVtb3RlRnJvbnRl
bmQoMCkKICAgICB7fQogCiAgICAgdm9pZCBzZXRGcm9udGVuZChRV2lkZ2V0KiBuZXdGcm9udGVu
ZCk7CisgICAgdm9pZCBhdHRhY2hSZW1vdGVGcm9udGVuZChRT2JqZWN0KiBuZXdSZW1vdGVGcm9u
dGVuZCk7CisgICAgdm9pZCBkZXRhY2hSZW1vdGVGcm9udGVuZCgpOwogICAgIHZvaWQgYWRqdXN0
RnJvbnRlbmRTaXplKGNvbnN0IFFTaXplJiBzaXplKTsKIAogICAgIFFXZWJJbnNwZWN0b3IqIHE7
CiAgICAgUVdlYlBhZ2UqIHBhZ2U7CiAgICAgUVdpZGdldCogZnJvbnRlbmQ7CisgICAgUU9iamVj
dCogcmVtb3RlRnJvbnRlbmQ7CiB9OwogCiAjZW5kaWYKZGlmZiAtLWdpdCBhL1dlYktpdC9xdC9B
cGkvcXdlYnBhZ2UuY3BwIGIvV2ViS2l0L3F0L0FwaS9xd2VicGFnZS5jcHAKaW5kZXggNTQ0Y2Jk
ZDQ5NGE3MmJjZGNkNDU1MDNiZmJmNzg5MzVkMDM0ZGZiNy4uMTRmNDIzYjgxNTIzNjhhM2M2NTI0
YmE0NmNiNmQ4OTkyNGVkZjMxMiAxMDA2NDQKLS0tIGEvV2ViS2l0L3F0L0FwaS9xd2VicGFnZS5j
cHAKKysrIGIvV2ViS2l0L3F0L0FwaS9xd2VicGFnZS5jcHAKQEAgLTc2LDYgKzc2LDcgQEAKICNp
bmNsdWRlICJIVE1MSW5wdXRFbGVtZW50LmgiCiAjaW5jbHVkZSAiSFRNTE5hbWVzLmgiCiAjaW5j
bHVkZSAiSGl0VGVzdFJlc3VsdC5oIgorI2luY2x1ZGUgIkluc3BlY3RvclNlcnZlclF0LmgiCiAj
aW5jbHVkZSAiV2luZG93RmVhdHVyZXMuaCIKICNpbmNsdWRlICJMb2NhbGl6ZWRTdHJpbmdzLmgi
CiAjaW5jbHVkZSAiQ2FjaGUuaCIKQEAgLTEyOTYsNiArMTI5NywxMCBAQCB2b2lkIFFXZWJQYWdl
UHJpdmF0ZTo6ZHluYW1pY1Byb3BlcnR5Q2hhbmdlRXZlbnQoUUR5bmFtaWNQcm9wZXJ0eUNoYW5n
ZUV2ZW50KiBldgogICAgICAgICBmcmFtZS0+dGlsZWRCYWNraW5nU3RvcmUoKS0+c2V0S2VlcEFu
ZENvdmVyQXJlYU11bHRpcGxpZXJzKGtlZXBNdWx0aXBsaWVyLCBjb3Zlck11bHRpcGxpZXIpOwog
ICAgIH0KICNlbmRpZgorICAgIGVsc2UgaWYgKGV2ZW50LT5wcm9wZXJ0eU5hbWUoKSA9PSAiX3Ff
d2ViSW5zcGVjdG9yU2VydmVyUG9ydCIpIHsKKyAgICAgICAgSW5zcGVjdG9yU2VydmVyUXQqIGlu
c3BlY3RvclNlcnZlciA9IEluc3BlY3RvclNlcnZlclF0OjpzZXJ2ZXIoKTsKKyAgICAgICAgaW5z
cGVjdG9yU2VydmVyLT5saXN0ZW4oaW5zcGVjdG9yU2VydmVyUG9ydCgpKTsKKyAgICB9CiB9CiAj
ZW5kaWYKIApAQCAtMTU1Myw2ICsxNTU4LDE1IEBAIEluc3BlY3RvckNvbnRyb2xsZXIqIFFXZWJQ
YWdlUHJpdmF0ZTo6aW5zcGVjdG9yQ29udHJvbGxlcigpCiAjZW5kaWYKIH0KIAorcXVpbnQxNiBR
V2ViUGFnZVByaXZhdGU6Omluc3BlY3RvclNlcnZlclBvcnQoKQoreworI2lmIEVOQUJMRShJTlNQ
RUNUT1IpICYmICFkZWZpbmVkKFFUX05PX1BST1BFUlRJRVMpCisgICAgaWYgKHEgJiYgcS0+cHJv
cGVydHkoIl9xX3dlYkluc3BlY3RvclNlcnZlclBvcnQiKS5pc1ZhbGlkKCkpCisgICAgICAgIHJl
dHVybiBxLT5wcm9wZXJ0eSgiX3Ffd2ViSW5zcGVjdG9yU2VydmVyUG9ydCIpLnRvSW50KCk7Cisj
ZW5kaWYKKyAgICByZXR1cm4gMDsKK30KKwogCiAvKiEKICAgIFxlbnVtIFFXZWJQYWdlOjpGaW5k
RmxhZwpAQCAtMTg4Nyw2ICsxOTAxLDcgQEAgUVdlYlBhZ2U6On5RV2ViUGFnZSgpCiAgICAgICAg
IGVsc2UKICAgICAgICAgICAgIGQtPmluc3BlY3Rvci0+c2V0UGFnZSgwKTsKICAgICB9CisKICAg
ICBkZWxldGUgZDsKIH0KIApkaWZmIC0tZ2l0IGEvV2ViS2l0L3F0L0FwaS9xd2VicGFnZS5oIGIv
V2ViS2l0L3F0L0FwaS9xd2VicGFnZS5oCmluZGV4IDE0ZjNiOGIwYzIzY2E1NjZhMGYyMjNiOTZh
NzJlYjg5NzcwM2NkZjAuLjMxYmFmNzhmYWU1M2U4ZTdmM2MwNmViNjBjNzFjZGI0NTE1NjE2MTAg
MTAwNjQ0Ci0tLSBhL1dlYktpdC9xdC9BcGkvcXdlYnBhZ2UuaAorKysgYi9XZWJLaXQvcXQvQXBp
L3F3ZWJwYWdlLmgKQEAgLTU1LDYgKzU1LDcgQEAgbmFtZXNwYWNlIFdlYkNvcmUgewogICAgIGNs
YXNzIEVkaXRvckNsaWVudFF0OwogICAgIGNsYXNzIEZyYW1lTG9hZGVyQ2xpZW50UXQ7CiAgICAg
Y2xhc3MgSW5zcGVjdG9yQ2xpZW50UXQ7CisgICAgY2xhc3MgSW5zcGVjdG9yU2VydmVyUmVxdWVz
dEhhbmRsZXJRdDsKICAgICBjbGFzcyBJbnNwZWN0b3JGcm9udGVuZENsaWVudFF0OwogICAgIGNs
YXNzIE5vdGlmaWNhdGlvblByZXNlbnRlckNsaWVudFF0OwogICAgIGNsYXNzIFJlc291cmNlSGFu
ZGxlOwpAQCAtNDIyLDYgKzQyMyw3IEBAIHByaXZhdGU6CiAgICAgZnJpZW5kIGNsYXNzIFdlYkNv
cmU6OkVkaXRvckNsaWVudFF0OwogICAgIGZyaWVuZCBjbGFzcyBXZWJDb3JlOjpGcmFtZUxvYWRl
ckNsaWVudFF0OwogICAgIGZyaWVuZCBjbGFzcyBXZWJDb3JlOjpJbnNwZWN0b3JDbGllbnRRdDsK
KyAgICBmcmllbmQgY2xhc3MgV2ViQ29yZTo6SW5zcGVjdG9yU2VydmVyUmVxdWVzdEhhbmRsZXJR
dDsKICAgICBmcmllbmQgY2xhc3MgV2ViQ29yZTo6SW5zcGVjdG9yRnJvbnRlbmRDbGllbnRRdDsK
ICAgICBmcmllbmQgY2xhc3MgV2ViQ29yZTo6Tm90aWZpY2F0aW9uUHJlc2VudGVyQ2xpZW50UXQ7
CiAgICAgZnJpZW5kIGNsYXNzIFdlYkNvcmU6OlJlc291cmNlSGFuZGxlOwpkaWZmIC0tZ2l0IGEv
V2ViS2l0L3F0L0FwaS9xd2VicGFnZV9wLmggYi9XZWJLaXQvcXQvQXBpL3F3ZWJwYWdlX3AuaApp
bmRleCA2MzEwZWFmZDgzYjQxMDJjMGNlOGRlOGE5YmZiZTViNjI1OTgxZjAyLi45YWI1MWRmZDNl
NDI5MGFkZjAxYzcxNjk1OWMyM2MxYjhiNmQxNTg5IDEwMDY0NAotLS0gYS9XZWJLaXQvcXQvQXBp
L3F3ZWJwYWdlX3AuaAorKysgYi9XZWJLaXQvcXQvQXBpL3F3ZWJwYWdlX3AuaApAQCAtMTM5LDYg
KzEzOSw3IEBAIHB1YmxpYzoKICAgICB2b2lkIHNldEluc3BlY3RvcihRV2ViSW5zcGVjdG9yKik7
CiAgICAgUVdlYkluc3BlY3RvciogZ2V0T3JDcmVhdGVJbnNwZWN0b3IoKTsKICAgICBXZWJDb3Jl
OjpJbnNwZWN0b3JDb250cm9sbGVyKiBpbnNwZWN0b3JDb250cm9sbGVyKCk7CisgICAgcXVpbnQx
NiBpbnNwZWN0b3JTZXJ2ZXJQb3J0KCk7CiAKICNpZm5kZWYgUVRfTk9fU0hPUlRDVVQKICAgICBz
dGF0aWMgUVdlYlBhZ2U6OldlYkFjdGlvbiBlZGl0b3JBY3Rpb25Gb3JLZXlFdmVudChRS2V5RXZl
bnQqIGV2ZW50KTsKZGlmZiAtLWdpdCBhL1dlYktpdC9xdC9DaGFuZ2VMb2cgYi9XZWJLaXQvcXQv
Q2hhbmdlTG9nCmluZGV4IGE3MjRhMzU5MzI4OGQ0N2Y0YmJiYjdkZjVkMTEzMjZhNTc1YjU5NDMu
LmI3ODhiZmI0OGZlN2Y3ZWRmZGZiNDI3YzZjM2RjNWQ3Njg3NDYzY2IgMTAwNjQ0Ci0tLSBhL1dl
YktpdC9xdC9DaGFuZ2VMb2cKKysrIGIvV2ViS2l0L3F0L0NoYW5nZUxvZwpAQCAtMSwzICsxLDYy
IEBACisyMDEwLTA4LTMxICBKYW1leSBIaWNrcyAgPGphbWV5LmhpY2tzQG5va2lhLmNvbT4KKwor
ICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBbUXRdIFdlYiBJ
bnNwZWN0b3I6IFJlbW90ZSBXZWIgSW5zcGVjdG9yIHN1cHBvcnQgZm9yIFF0V2ViS2l0CisgICAg
ICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD00Mzk4OAorCisgICAg
ICAgIFJ1bnMgYSB3ZWIgZGVidWcgc2VydmVyIG9uIHBvcnQgc3BlY2lmaWVkIGJ5IFF0VGVzdEJy
b3dzZXIKKyAgICAgICAgYXJndW1lbnQgLXJlbW90ZS1pbnNwZWN0b3ItcG9ydC4gUHJvcGVydHkK
KyAgICAgICAgX3Ffd2ViSW5zcGVjdG9yU2VydmVyUG9ydCBvZiB0aGUgUVdlYlBhZ2UgaW5zdGFu
Y2Ugd2lsbCBiZSBzZXQKKyAgICAgICAgYWNjb3JkaW5nIHRvIHRoZSBhcmd1bWVudC4gQWxsIHBh
Z2VzIHdpdGggdGhhdCBwcm9wZXJ0eSBzZXQgd2lsbAorICAgICAgICBiZSByZW1vdGVseSBpbnNw
ZWN0YWJsZS4KKworICAgICAgICBVUkwgZm9yIHJlbW90ZSBpbnNwZWN0aW9uIG9mIGZpcnN0IFFX
ZWJQYWdlIGlzCisgICAgICAgICAgICBodHRwOi8vbG9jYWxob3N0OjkyMjIvZGV2dG9vbHMvcGFn
ZS8xCisgICAgICAgIHdoZXJlIDEgaXMgdGhlIG51bWJlciBvZiB0aGUgUVdlYlBhZ2UgaW5zdGFu
Y2UuCisKKyAgICAgICAgKiBBcGkvcXdlYmluc3BlY3Rvci5jcHA6CisgICAgICAgIChRV2ViSW5z
cGVjdG9yUHJpdmF0ZTo6YXR0YWNoUmVtb3RlRnJvbnRlbmQpOgorICAgICAgICAoUVdlYkluc3Bl
Y3RvclByaXZhdGU6OmRldGFjaFJlbW90ZUZyb250ZW5kKToKKyAgICAgICAgKiBBcGkvcXdlYmlu
c3BlY3Rvcl9wLmg6CisgICAgICAgIChRV2ViSW5zcGVjdG9yUHJpdmF0ZTo6UVdlYkluc3BlY3Rv
clByaXZhdGUpOgorICAgICAgICAqIEFwaS9xd2VicGFnZS5jcHA6CisgICAgICAgIChRV2ViUGFn
ZVByaXZhdGU6OmR5bmFtaWNQcm9wZXJ0eUNoYW5nZUV2ZW50KToKKyAgICAgICAgKFFXZWJQYWdl
UHJpdmF0ZTo6aW5zcGVjdG9yU2VydmVyUG9ydCk6CisgICAgICAgIChRV2ViUGFnZTo6flFXZWJQ
YWdlKToKKyAgICAgICAgKiBBcGkvcXdlYnBhZ2UuaDoKKyAgICAgICAgKiBBcGkvcXdlYnBhZ2Vf
cC5oOgorICAgICAgICAqIFdlYkNvcmVTdXBwb3J0L0luc3BlY3RvckNsaWVudFF0LmNwcDoKKyAg
ICAgICAgKFdlYkNvcmU6Okluc3BlY3RvckNsaWVudFF0OjpJbnNwZWN0b3JDbGllbnRRdCk6Cisg
ICAgICAgIChXZWJDb3JlOjpJbnNwZWN0b3JDbGllbnRRdDo6aW5zcGVjdG9yRGVzdHJveWVkKToK
KyAgICAgICAgKFdlYkNvcmU6Okluc3BlY3RvckNsaWVudFF0OjpvcGVuSW5zcGVjdG9yRnJvbnRl
bmQpOgorICAgICAgICAoV2ViQ29yZTo6SW5zcGVjdG9yQ2xpZW50UXQ6OmF0dGFjaFJlbW90ZUZy
b250ZW5kKToKKyAgICAgICAgKFdlYkNvcmU6Okluc3BlY3RvckNsaWVudFF0OjpkZXRhY2hSZW1v
dGVGcm9udGVuZCk6CisgICAgICAgIChXZWJDb3JlOjpJbnNwZWN0b3JDbGllbnRRdDo6c2VuZE1l
c3NhZ2VUb0Zyb250ZW5kKToKKyAgICAgICAgKiBXZWJDb3JlU3VwcG9ydC9JbnNwZWN0b3JDbGll
bnRRdC5oOgorICAgICAgICAqIFdlYkNvcmVTdXBwb3J0L0luc3BlY3RvclNlcnZlclF0LmNwcDog
QWRkZWQuCisgICAgICAgIChXZWJDb3JlOjpzZXRDaGFsbGVuZ2VOdW1iZXIpOgorICAgICAgICAo
V2ViQ29yZTo6Z2VuZXJhdGVFeHBlY3RlZENoYWxsZW5nZVJlc3BvbnNlKToKKyAgICAgICAgKFdl
YkNvcmU6OmdldENoYWxsZW5nZU51bWJlckZyb21GaWVsZCk6CisgICAgICAgIChXZWJDb3JlOjpJ
bnNwZWN0b3JTZXJ2ZXJRdDo6c2VydmVyKToKKyAgICAgICAgKFdlYkNvcmU6Okluc3BlY3RvclNl
cnZlclF0OjpJbnNwZWN0b3JTZXJ2ZXJRdCk6CisgICAgICAgIChXZWJDb3JlOjpJbnNwZWN0b3JT
ZXJ2ZXJRdDo6fkluc3BlY3RvclNlcnZlclF0KToKKyAgICAgICAgKFdlYkNvcmU6Okluc3BlY3Rv
clNlcnZlclF0OjpsaXN0ZW4pOgorICAgICAgICAoV2ViQ29yZTo6SW5zcGVjdG9yU2VydmVyUXQ6
OmNsb3NlKToKKyAgICAgICAgKFdlYkNvcmU6Okluc3BlY3RvclNlcnZlclF0OjppbnNwZWN0b3JD
bGllbnQpOgorICAgICAgICAoV2ViQ29yZTo6SW5zcGVjdG9yU2VydmVyUXQ6OnJlZ2lzdGVyQ2xp
ZW50KToKKyAgICAgICAgKFdlYkNvcmU6Okluc3BlY3RvclNlcnZlclF0Ojp1bnJlZ2lzdGVyQ2xp
ZW50KToKKyAgICAgICAgKFdlYkNvcmU6Okluc3BlY3RvclNlcnZlclF0OjpuZXdDb25uZWN0aW9u
KToKKyAgICAgICAgKFdlYkNvcmU6Okluc3BlY3RvclNlcnZlclJlcXVlc3RIYW5kbGVyUXQ6Oklu
c3BlY3RvclNlcnZlclJlcXVlc3RIYW5kbGVyUXQpOgorICAgICAgICAoV2ViQ29yZTo6SW5zcGVj
dG9yU2VydmVyUmVxdWVzdEhhbmRsZXJRdDo6fkluc3BlY3RvclNlcnZlclJlcXVlc3RIYW5kbGVy
UXQpOgorICAgICAgICAoV2ViQ29yZTo6SW5zcGVjdG9yU2VydmVyUmVxdWVzdEhhbmRsZXJRdDo6
dGNwUmVhZHlSZWFkKToKKyAgICAgICAgKFdlYkNvcmU6Okluc3BlY3RvclNlcnZlclJlcXVlc3RI
YW5kbGVyUXQ6OnRjcENvbm5lY3Rpb25EaXNjb25uZWN0ZWQpOgorICAgICAgICAoV2ViQ29yZTo6
SW5zcGVjdG9yU2VydmVyUmVxdWVzdEhhbmRsZXJRdDo6d2ViU29ja2V0U2VuZCk6CisgICAgICAg
IChXZWJDb3JlOjpJbnNwZWN0b3JTZXJ2ZXJSZXF1ZXN0SGFuZGxlclF0Ojp3ZWJTb2NrZXRSZWFk
eVJlYWQpOgorICAgICAgICAoV2ViQ29yZTo6UmVtb3RlRnJvbnRlbmRDaGFubmVsOjpSZW1vdGVG
cm9udGVuZENoYW5uZWwpOgorICAgICAgICAoV2ViQ29yZTo6UmVtb3RlRnJvbnRlbmRDaGFubmVs
OjpzZW5kTWVzc2FnZVRvRnJvbnRlbmQpOgorICAgICAgICAqIFdlYkNvcmVTdXBwb3J0L0luc3Bl
Y3RvclNlcnZlclF0Lmg6IEFkZGVkLgorCiAyMDEwLTA4LTMwICBTaGVyaWZmIEJvdCAgPHdlYmtp
dC5yZXZpZXcuYm90QGdtYWlsLmNvbT4KIAogICAgICAgICBVbnJldmlld2VkLCByb2xsaW5nIG91
dCByNjYxOTguCmRpZmYgLS1naXQgYS9XZWJLaXQvcXQvV2ViQ29yZVN1cHBvcnQvSW5zcGVjdG9y
Q2xpZW50UXQuY3BwIGIvV2ViS2l0L3F0L1dlYkNvcmVTdXBwb3J0L0luc3BlY3RvckNsaWVudFF0
LmNwcAppbmRleCBlMTNmNmMzNzE4NjFkMmI3ODExYjNlY2E1NTIzYmNmMWNhZWZhMWYwLi4yNDEw
Y2UyM2RmMjQ0OTk1MzhlYjUxYzEzNDkyMjY5YWMxZTJmMzc2IDEwMDY0NAotLS0gYS9XZWJLaXQv
cXQvV2ViQ29yZVN1cHBvcnQvSW5zcGVjdG9yQ2xpZW50UXQuY3BwCisrKyBiL1dlYktpdC9xdC9X
ZWJDb3JlU3VwcG9ydC9JbnNwZWN0b3JDbGllbnRRdC5jcHAKQEAgLTMyLDcgKzMyLDEwIEBACiAj
aW5jbHVkZSAiSW5zcGVjdG9yQ2xpZW50UXQuaCIKIAogI2luY2x1ZGUgIkZyYW1lLmgiCisjaW5j
bHVkZSAiSW5zcGVjdG9yQmFja2VuZERpc3BhdGNoZXIuaCIKICNpbmNsdWRlICJJbnNwZWN0b3JD
b250cm9sbGVyLmgiCisjaW5jbHVkZSAiSW5zcGVjdG9yRnJvbnRlbmQuaCIKKyNpbmNsdWRlICJJ
bnNwZWN0b3JTZXJ2ZXJRdC5oIgogI2luY2x1ZGUgIk5vdEltcGxlbWVudGVkLmgiCiAjaW5jbHVk
ZSAiUGFnZS5oIgogI2luY2x1ZGUgIlBsYXRmb3JtU3RyaW5nLmgiCkBAIC05NiwyMSArOTksMzIg
QEAgcHVibGljIHNsb3RzOgogSW5zcGVjdG9yQ2xpZW50UXQ6Okluc3BlY3RvckNsaWVudFF0KFFX
ZWJQYWdlKiBwYWdlKQogICAgIDogbV9pbnNwZWN0ZWRXZWJQYWdlKHBhZ2UpCiAgICAgLCBtX2Zy
b250ZW5kV2ViUGFnZSgwKQote30KK3sKKyAgICBJbnNwZWN0b3JTZXJ2ZXJRdCogd2ViSW5zcGVj
dG9yU2VydmVyID0gSW5zcGVjdG9yU2VydmVyUXQ6OnNlcnZlcigpOworICAgIGlmICh3ZWJJbnNw
ZWN0b3JTZXJ2ZXIpCisgICAgICAgIHdlYkluc3BlY3RvclNlcnZlci0+cmVnaXN0ZXJDbGllbnQo
dGhpcyk7Cit9CiAKIHZvaWQgSW5zcGVjdG9yQ2xpZW50UXQ6Omluc3BlY3RvckRlc3Ryb3llZCgp
CiB7CisgICAgSW5zcGVjdG9yU2VydmVyUXQqIHdlYkluc3BlY3RvclNlcnZlciA9IEluc3BlY3Rv
clNlcnZlclF0OjpzZXJ2ZXIoKTsKKyAgICBpZiAod2ViSW5zcGVjdG9yU2VydmVyKQorICAgICAg
ICB3ZWJJbnNwZWN0b3JTZXJ2ZXItPnVucmVnaXN0ZXJDbGllbnQodGhpcyk7CisKICAgICBkZWxl
dGUgdGhpczsKIH0KLQogICAgIAotdm9pZCBJbnNwZWN0b3JDbGllbnRRdDo6b3Blbkluc3BlY3Rv
ckZyb250ZW5kKFdlYkNvcmU6Okluc3BlY3RvckNvbnRyb2xsZXIqKQordm9pZCBJbnNwZWN0b3JD
bGllbnRRdDo6b3Blbkluc3BlY3RvckZyb250ZW5kKFdlYkNvcmU6Okluc3BlY3RvckNvbnRyb2xs
ZXIqIGluc3BlY3RvckNvbnRyb2xsZXIpCiB7CiAgICAgUVdlYlZpZXcqIGluc3BlY3RvclZpZXcg
PSBuZXcgUVdlYlZpZXc7CiAgICAgSW5zcGVjdG9yQ2xpZW50V2ViUGFnZSogaW5zcGVjdG9yUGFn
ZSA9IG5ldyBJbnNwZWN0b3JDbGllbnRXZWJQYWdlKGluc3BlY3RvclZpZXcpOwogICAgIGluc3Bl
Y3RvclZpZXctPnNldFBhZ2UoaW5zcGVjdG9yUGFnZSk7CiAKICAgICBRV2ViSW5zcGVjdG9yKiBp
bnNwZWN0b3IgPSBtX2luc3BlY3RlZFdlYlBhZ2UtPmQtPmdldE9yQ3JlYXRlSW5zcGVjdG9yKCk7
CisgICAgLy8gcmVtb3RlIGZyb250ZW5kIHdhcyBhdHRhY2hlZAorICAgIGlmIChtX2luc3BlY3Rl
ZFdlYlBhZ2UtPmQtPmluc3BlY3Rvci0+ZC0+cmVtb3RlRnJvbnRlbmQpCisgICAgICAgIHJldHVy
bjsKKwogICAgIC8vIFRoaXMgaXMgYSBrbm93biBob29rIHRoYXQgYWxsb3dzIGNoYW5naW5nIHRo
ZSBkZWZhdWx0IFVSTCBmb3IgdGhlCiAgICAgLy8gV2ViIGluc3BlY3Rvci4gVGhpcyBpcyB1c2Vk
IGZvciBTREsgcHVycG9zZXMuIFBsZWFzZSBrZWVwIHRoaXMgaG9vawogICAgIC8vIGFyb3VuZCBh
bmQgZG9uJ3QgcmVtb3ZlIGl0LgpAQCAtMTQwLDYgKzE1NCwyMyBAQCB2b2lkIEluc3BlY3RvckNs
aWVudFF0OjpyZWxlYXNlRnJvbnRlbmRQYWdlKCkKICAgICBtX2Zyb250ZW5kV2ViUGFnZSA9IDA7
CiB9CiAKK3ZvaWQgSW5zcGVjdG9yQ2xpZW50UXQ6OmF0dGFjaFJlbW90ZUZyb250ZW5kKFJlbW90
ZUZyb250ZW5kQ2hhbm5lbCogY2hhbm5lbCkKK3sKKyNpZiBFTkFCTEUoSU5TUEVDVE9SKQorICAg
IC8vIENoYW5uZWwgd2FzIGFsbG9jYXRlZCBieSBJbnNwZWN0b3JTZXJ2ZXJRdC4gSGVyZSB3ZSB0
cmFuc2ZlciBvd25lcnNoaXAgdG8gaW5zcGVjdG9yLgorICAgIG1faW5zcGVjdGVkV2ViUGFnZS0+
ZC0+aW5zcGVjdG9yLT5kLT5hdHRhY2hSZW1vdGVGcm9udGVuZChjaGFubmVsKTsKKyAgICBtX2lu
c3BlY3RlZFdlYlBhZ2UtPmQtPmluc3BlY3RvckNvbnRyb2xsZXIoKS0+Y29ubmVjdEZyb250ZW5k
KCk7CisjZW5kaWYKK30KKwordm9pZCBJbnNwZWN0b3JDbGllbnRRdDo6ZGV0YWNoUmVtb3RlRnJv
bnRlbmQoKQoreworI2lmIEVOQUJMRShJTlNQRUNUT1IpCisgICAgbV9pbnNwZWN0ZWRXZWJQYWdl
LT5kLT5pbnNwZWN0b3ItPmQtPmRldGFjaFJlbW90ZUZyb250ZW5kKCk7CisgICAgbV9pbnNwZWN0
ZWRXZWJQYWdlLT5kLT5pbnNwZWN0b3JDb250cm9sbGVyKCktPmRpc2Nvbm5lY3RGcm9udGVuZCgp
OworI2VuZGlmCit9CisKIHZvaWQgSW5zcGVjdG9yQ2xpZW50UXQ6OmhpZ2hsaWdodChOb2RlKikK
IHsKICAgICBub3RJbXBsZW1lbnRlZCgpOwpAQCAtMTk2LDYgKzIyNywxNCBAQCB2b2lkIEluc3Bl
Y3RvckNsaWVudFF0OjpzdG9yZVNldHRpbmcoY29uc3QgU3RyaW5nJiBrZXksIGNvbnN0IFN0cmlu
ZyYgc2V0dGluZykKIAogYm9vbCBJbnNwZWN0b3JDbGllbnRRdDo6c2VuZE1lc3NhZ2VUb0Zyb250
ZW5kKGNvbnN0IFN0cmluZyYgbWVzc2FnZSkKIHsKKyAgICBpZiAobV9pbnNwZWN0ZWRXZWJQYWdl
LT5kLT5pbnNwZWN0b3ItPmQtPnJlbW90ZUZyb250ZW5kKSB7CisgICAgICAgIFFfQVNTRVJUKG1f
aW5zcGVjdGVkV2ViUGFnZS0+ZC0+aW5zcGVjdG9yLT5kLT5yZW1vdGVGcm9udGVuZCk7CisKKyAg
ICAgICAgUmVtb3RlRnJvbnRlbmRDaGFubmVsKiBzZXNzaW9uID0gcW9iamVjdF9jYXN0PFJlbW90
ZUZyb250ZW5kQ2hhbm5lbCo+KG1faW5zcGVjdGVkV2ViUGFnZS0+ZC0+aW5zcGVjdG9yLT5kLT5y
ZW1vdGVGcm9udGVuZCk7CisgICAgICAgIGlmIChzZXNzaW9uKQorICAgICAgICAgICAgc2Vzc2lv
bi0+c2VuZE1lc3NhZ2VUb0Zyb250ZW5kKG1lc3NhZ2UpOworICAgICAgICByZXR1cm4gdHJ1ZTsK
KyAgICB9CiAgICAgaWYgKCFtX2Zyb250ZW5kV2ViUGFnZSkKICAgICAgICAgcmV0dXJuIGZhbHNl
OwogCmRpZmYgLS1naXQgYS9XZWJLaXQvcXQvV2ViQ29yZVN1cHBvcnQvSW5zcGVjdG9yQ2xpZW50
UXQuaCBiL1dlYktpdC9xdC9XZWJDb3JlU3VwcG9ydC9JbnNwZWN0b3JDbGllbnRRdC5oCmluZGV4
IDk1MjZjODgwYzJlYzNiYzE1YTBmMjJhZmQ5ZTM5YWUzZmFkN2NiYzAuLmM4NmEyYzE2NmI2MDJl
MmM4YzkwYTY0ODcxMGJlNWE0ZDlhOTQwMGUgMTAwNjQ0Ci0tLSBhL1dlYktpdC9xdC9XZWJDb3Jl
U3VwcG9ydC9JbnNwZWN0b3JDbGllbnRRdC5oCisrKyBiL1dlYktpdC9xdC9XZWJDb3JlU3VwcG9y
dC9JbnNwZWN0b3JDbGllbnRRdC5oCkBAIC00MSw4ICs0MSwxMSBAQCBjbGFzcyBRV2ViUGFnZTsK
IGNsYXNzIFFXZWJWaWV3OwogCiBuYW1lc3BhY2UgV2ViQ29yZSB7CitjbGFzcyBJbnNwZWN0b3JG
cm9udGVuZENsaWVudFF0OworY2xhc3MgSW5zcGVjdG9yU2VydmVyUmVxdWVzdEhhbmRsZXJRdDsK
IGNsYXNzIE5vZGU7CiBjbGFzcyBQYWdlOworY2xhc3MgUmVtb3RlRnJvbnRlbmRDaGFubmVsOwog
CiBjbGFzcyBJbnNwZWN0b3JDbGllbnRRdCA6IHB1YmxpYyBJbnNwZWN0b3JDbGllbnQgewogcHVi
bGljOgpAQCAtNjIsOSArNjUsMTYgQEAgcHVibGljOgogCiAgICAgdm9pZCByZWxlYXNlRnJvbnRl
bmRQYWdlKCk7CiAKKyAgICB2b2lkIGF0dGFjaFJlbW90ZUZyb250ZW5kKFJlbW90ZUZyb250ZW5k
Q2hhbm5lbCAqY2hhbm5lbCk7CisgICAgdm9pZCBkZXRhY2hSZW1vdGVGcm9udGVuZCgpOworCiBw
cml2YXRlOgogICAgIFFXZWJQYWdlKiBtX2luc3BlY3RlZFdlYlBhZ2U7CiAgICAgUVdlYlBhZ2Uq
IG1fZnJvbnRlbmRXZWJQYWdlOworICAgIEluc3BlY3RvckZyb250ZW5kQ2xpZW50UXQqIG1fZnJv
bnRlbmRDbGllbnQ7CisgICAgYm9vbCBtX3JlbW90ZUluc3BlY3RvcjsKKworICAgIGZyaWVuZCBj
bGFzcyBJbnNwZWN0b3JTZXJ2ZXJSZXF1ZXN0SGFuZGxlclF0OwogfTsKIAogY2xhc3MgSW5zcGVj
dG9yRnJvbnRlbmRDbGllbnRRdCA6IHB1YmxpYyBJbnNwZWN0b3JGcm9udGVuZENsaWVudExvY2Fs
IHsKQEAgLTk1LDYgKzEwNSw3IEBAIHByaXZhdGU6CiAgICAgYm9vbCBtX2Rlc3Ryb3lpbmdJbnNw
ZWN0b3JWaWV3OwogICAgIEluc3BlY3RvckNsaWVudFF0KiBtX2luc3BlY3RvckNsaWVudDsKIH07
CisKIH0KIAogI2VuZGlmCmRpZmYgLS1naXQgYS9XZWJLaXQvcXQvV2ViQ29yZVN1cHBvcnQvSW5z
cGVjdG9yU2VydmVyUXQuY3BwIGIvV2ViS2l0L3F0L1dlYkNvcmVTdXBwb3J0L0luc3BlY3RvclNl
cnZlclF0LmNwcApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwLi42YzIyMGE1MGU2YjI4ODk5YTRhNmNmNjhjOTRlNmU5ZWY3
ODRiNjJhCi0tLSAvZGV2L251bGwKKysrIGIvV2ViS2l0L3F0L1dlYkNvcmVTdXBwb3J0L0luc3Bl
Y3RvclNlcnZlclF0LmNwcApAQCAtMCwwICsxLDM2MiBAQAorLyoKKyAgQ29weXJpZ2h0IChDKSAy
MDEwIE5va2lhIENvcnBvcmF0aW9uIGFuZC9vciBpdHMgc3Vic2lkaWFyeSgtaWVzKQorCisgIFRo
aXMgbGlicmFyeSBpcyBmcmVlIHNvZnR3YXJlOyB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQv
b3IKKyAgbW9kaWZ5IGl0IHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05VIExpYnJhcnkgR2VuZXJh
bCBQdWJsaWMKKyAgTGljZW5zZSBhcyBwdWJsaXNoZWQgYnkgdGhlIEZyZWUgU29mdHdhcmUgRm91
bmRhdGlvbjsgZWl0aGVyCisgIHZlcnNpb24gMiBvZiB0aGUgTGljZW5zZSwgb3IgKGF0IHlvdXIg
b3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KKworICBUaGlzIGxpYnJhcnkgaXMgZGlzdHJpYnV0
ZWQgaW4gdGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCwKKyAgYnV0IFdJVEhPVVQgQU5Z
IFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKKyAgTUVSQ0hB
TlRBQklMSVRZIG9yIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFLiAgU2VlIHRoZSBH
TlUKKyAgTGlicmFyeSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGZvciBtb3JlIGRldGFpbHMuCisK
KyAgWW91IHNob3VsZCBoYXZlIHJlY2VpdmVkIGEgY29weSBvZiB0aGUgR05VIExpYnJhcnkgR2Vu
ZXJhbCBQdWJsaWMgTGljZW5zZQorICBhbG9uZyB3aXRoIHRoaXMgbGlicmFyeTsgc2VlIHRoZSBm
aWxlIENPUFlJTkcuTElCLiAgSWYgbm90LCB3cml0ZSB0bworICB0aGUgRnJlZSBTb2Z0d2FyZSBG
b3VuZGF0aW9uLCBJbmMuLCA1MSBGcmFua2xpbiBTdHJlZXQsIEZpZnRoIEZsb29yLAorICBCb3N0
b24sIE1BIDAyMTEwLTEzMDEsIFVTQS4KKyovCisKKworI2luY2x1ZGUgImNvbmZpZy5oIgorI2lu
Y2x1ZGUgIkluc3BlY3RvclNlcnZlclF0LmgiCisKKyNpbmNsdWRlICJJbnNwZWN0b3JCYWNrZW5k
RGlzcGF0Y2hlci5oIgorI2luY2x1ZGUgIkluc3BlY3RvckNsaWVudFF0LmgiCisjaW5jbHVkZSAi
TUQ1LmgiCisjaW5jbHVkZSAiUGFnZS5oIgorI2luY2x1ZGUgInF3ZWJwYWdlLmgiCisjaW5jbHVk
ZSAicXdlYnBhZ2VfcC5oIgorI2luY2x1ZGUgPFFGaWxlPgorI2luY2x1ZGUgPFFIdHRwSGVhZGVy
PgorI2luY2x1ZGUgPFFIdHRwUmVxdWVzdEhlYWRlcj4KKyNpbmNsdWRlIDxRSHR0cFJlc3BvbnNl
SGVhZGVyPgorI2luY2x1ZGUgPFFTdHJpbmc+CisjaW5jbHVkZSA8UVN0cmluZ0xpc3Q+CisjaW5j
bHVkZSA8UVRjcFNlcnZlcj4KKyNpbmNsdWRlIDxRVGNwU29ja2V0PgorI2luY2x1ZGUgPFFVcmw+
CisjaW5jbHVkZSA8UVdpZGdldD4KKyNpbmNsdWRlIDxxZW5kaWFuLmg+CisKK25hbWVzcGFjZSBX
ZWJDb3JlIHsKKworc3RhdGljIHZvaWQgc2V0Q2hhbGxlbmdlTnVtYmVyKHVuc2lnbmVkIGNoYXIq
IGJ1ZiwgdWludDMyX3QgbnVtYmVyKQoreworICAgIHVuc2lnbmVkIGNoYXIqIHAgPSBidWYgKyAz
OworICAgIGZvciAoaW50IGkgPSAwOyBpIDwgNDsgaSsrKSB7CisgICAgICAgICpwID0gbnVtYmVy
ICYgMHhGRjsKKyAgICAgICAgLS1wOworICAgICAgICBudW1iZXIgPj49IDg7CisgICAgfQorfQor
CitzdGF0aWMgdm9pZCBnZW5lcmF0ZUV4cGVjdGVkQ2hhbGxlbmdlUmVzcG9uc2UodWludDMyX3Qg
bnVtYmVyMSwgdWludDMyX3QgbnVtYmVyMiwgdW5zaWduZWQgY2hhciBrZXkzWzhdLCB1bnNpZ25l
ZCBjaGFyIGV4cGVjdGVkQ2hhbGxlbmdlWzE2XSkKK3sKKyAgICB1bnNpZ25lZCBjaGFyIGNoYWxs
ZW5nZVsxNl07CisgICAgc2V0Q2hhbGxlbmdlTnVtYmVyKCZjaGFsbGVuZ2VbMF0sIG51bWJlcjEp
OworICAgIHNldENoYWxsZW5nZU51bWJlcigmY2hhbGxlbmdlWzRdLCBudW1iZXIyKTsKKyAgICBt
ZW1jcHkoJmNoYWxsZW5nZVs4XSwga2V5MywgOCk7CisgICAgTUQ1IG1kNTsKKyAgICBtZDUuYWRk
Qnl0ZXMoY2hhbGxlbmdlLCBzaXplb2YoY2hhbGxlbmdlKSk7CisgICAgVmVjdG9yPHVpbnQ4X3Qs
IDE2PiBkaWdlc3Q7CisgICAgbWQ1LmNoZWNrc3VtKGRpZ2VzdCk7CisgICAgbWVtY3B5KGV4cGVj
dGVkQ2hhbGxlbmdlLCBkaWdlc3QuZGF0YSgpLCAxNik7Cit9CisKK3N0YXRpYyBxdWludDMyIGdl
dENoYWxsZW5nZU51bWJlckZyb21GaWVsZChRU3RyaW5nIGZpZWxkKQoreworICAgIFFTdHJpbmcg
blN0cmluZzsKKyAgICBpbnQgblNwYWNlcyA9IDA7CisgICAgZm9yIChpbnQgaSA9IDA7IGkgPCBm
aWVsZC5zaXplKCk7IGkrKykgeworICAgICAgICBRQ2hhciBjID0gZmllbGRbaV07CisgICAgICAg
IGlmIChjID09IChRQ2hhciknICcpIHsKKyAgICAgICAgICAgIG5TcGFjZXMrKzsKKyAgICAgICAg
fSBlbHNlIGlmICgoYyA+PSAoUUNoYXIpJzAnKSAmJiAoYyA8PSAoUUNoYXIpJzknKSkgeworICAg
ICAgICAgICAgblN0cmluZy5hcHBlbmQoKFFDaGFyKWMpOworICAgICAgICB9CisgICAgfQorICAg
IHF1aW50MzIgbnVtID0gblN0cmluZy50b0xvbmcoKTsKKyAgICBxdWludDMyIHJlc3VsdCA9IChu
U3BhY2VzID8gKG51bSAvIG5TcGFjZXMpIDogbnVtKTsKKyAgICByZXR1cm4gcmVzdWx0OworfQor
CitzdGF0aWMgSW5zcGVjdG9yU2VydmVyUXQqIHNTZXJ2ZXI7CisKK0luc3BlY3RvclNlcnZlclF0
KiBJbnNwZWN0b3JTZXJ2ZXJRdDo6c2VydmVyKCkKK3sKKyAgICAvLyBzU2VydmVyIGlzIGRlbGV0
ZWQgaW4gdW5yZWdpc3RlckNsaWVudCgpIHdoZW4gdGhlIGxhc3QgY2xpZW50IGlzIHVucmVnaXN0
ZXJlZC4KKyAgICBpZiAoIXNTZXJ2ZXIpCisgICAgICAgIHNTZXJ2ZXIgPSBuZXcgSW5zcGVjdG9y
U2VydmVyUXQoKTsKKworICAgIHJldHVybiBzU2VydmVyOworfQorCitJbnNwZWN0b3JTZXJ2ZXJR
dDo6SW5zcGVjdG9yU2VydmVyUXQoKQorICAgIDogUU9iamVjdCgpCisgICAgLCBtX3RjcFNlcnZl
cigwKQorICAgICwgbV9wYWdlTnVtYmVyKDEpCit7Cit9CisKK0luc3BlY3RvclNlcnZlclF0Ojp+
SW5zcGVjdG9yU2VydmVyUXQoKQoreworICAgIGNsb3NlKCk7Cit9CisKK3ZvaWQgSW5zcGVjdG9y
U2VydmVyUXQ6Omxpc3RlbihxdWludDE2IHBvcnQpCit7CisgICAgaWYgKG1fdGNwU2VydmVyKQor
ICAgICAgICByZXR1cm47CisKKyAgICBtX3RjcFNlcnZlciA9IG5ldyBRVGNwU2VydmVyKCk7Cisg
ICAgbV90Y3BTZXJ2ZXItPmxpc3RlbihRSG9zdEFkZHJlc3M6OkFueSwgcG9ydCk7CisgICAgY29u
bmVjdChtX3RjcFNlcnZlciwgU0lHTkFMKG5ld0Nvbm5lY3Rpb24oKSksIFNMT1QobmV3Q29ubmVj
dGlvbigpKSk7Cit9CisKK3ZvaWQgSW5zcGVjdG9yU2VydmVyUXQ6OmNsb3NlKCkKK3sKKyAgICBp
ZiAobV90Y3BTZXJ2ZXIpIHsKKyAgICAgICAgbV90Y3BTZXJ2ZXItPmNsb3NlKCk7CisgICAgICAg
IGRlbGV0ZSBtX3RjcFNlcnZlcjsKKyAgICB9CisgICAgbV90Y3BTZXJ2ZXIgPSAwOworfQorCitJ
bnNwZWN0b3JDbGllbnRRdCogSW5zcGVjdG9yU2VydmVyUXQ6Omluc3BlY3RvckNsaWVudChpbnQg
cGFnZU51bSkKK3sKKyAgICBJbnNwZWN0b3JDbGllbnRRdCogY2xpZW50ID0gbV9pbnNwZWN0b3JD
bGllbnRzLnZhbHVlKHBhZ2VOdW0pOworICAgIHJldHVybiBjbGllbnQ7Cit9CisKK3ZvaWQgSW5z
cGVjdG9yU2VydmVyUXQ6OnJlZ2lzdGVyQ2xpZW50KEluc3BlY3RvckNsaWVudFF0KiBjbGllbnQp
Cit7CisgICAgaWYgKCFtX2luc3BlY3RvckNsaWVudHMua2V5KGNsaWVudCkpCisgICAgICAgIG1f
aW5zcGVjdG9yQ2xpZW50cy5pbnNlcnQobV9wYWdlTnVtYmVyKyssIGNsaWVudCk7Cit9CisKK3Zv
aWQgSW5zcGVjdG9yU2VydmVyUXQ6OnVucmVnaXN0ZXJDbGllbnQoSW5zcGVjdG9yQ2xpZW50UXQq
IGNsaWVudCkKK3sKKyAgICBpbnQgcGFnZU51bSA9IG1faW5zcGVjdG9yQ2xpZW50cy5rZXkoY2xp
ZW50LCAtMSk7CisgICAgaWYgKHBhZ2VOdW0gPj0gMCkKKyAgICAgICAgbV9pbnNwZWN0b3JDbGll
bnRzLnJlbW92ZShwYWdlTnVtKTsKKyAgICBpZiAoIW1faW5zcGVjdG9yQ2xpZW50cy5zaXplKCkp
IHsKKyAgICAgICAgc1NlcnZlciA9IDA7CisgICAgICAgIGNsb3NlKCk7CisgICAgICAgIGRlbGV0
ZUxhdGVyKCk7CisgICAgfQorfQorCit2b2lkIEluc3BlY3RvclNlcnZlclF0OjpuZXdDb25uZWN0
aW9uKCkKK3sKKyAgICBRVGNwU29ja2V0KiB0Y3BDb25uZWN0aW9uID0gbV90Y3BTZXJ2ZXItPm5l
eHRQZW5kaW5nQ29ubmVjdGlvbigpOworICAgIEluc3BlY3RvclNlcnZlclJlcXVlc3RIYW5kbGVy
UXQqIGhhbmRsZXIgPSBuZXcgSW5zcGVjdG9yU2VydmVyUmVxdWVzdEhhbmRsZXJRdCh0Y3BDb25u
ZWN0aW9uLCB0aGlzKTsKKyAgICBoYW5kbGVyLT5zZXRQYXJlbnQodGhpcyk7Cit9CisKK0luc3Bl
Y3RvclNlcnZlclJlcXVlc3RIYW5kbGVyUXQ6Okluc3BlY3RvclNlcnZlclJlcXVlc3RIYW5kbGVy
UXQoUVRjcFNvY2tldCogdGNwQ29ubmVjdGlvbiwgSW5zcGVjdG9yU2VydmVyUXQqIHNlcnZlcikK
KyAgICA6IFFPYmplY3Qoc2VydmVyKQorICAgICwgbV90Y3BDb25uZWN0aW9uKHRjcENvbm5lY3Rp
b24pCisgICAgLCBtX3NlcnZlcihzZXJ2ZXIpCisgICAgLCBtX2luc3BlY3RvckNsaWVudCgwKQor
eworICAgIG1fZW5kT2ZIZWFkZXJzID0gZmFsc2U7ICAgIAorICAgIG1fY29udGVudExlbmd0aCA9
IDA7CisKKyAgICBjb25uZWN0KG1fdGNwQ29ubmVjdGlvbiwgU0lHTkFMKHJlYWR5UmVhZCgpKSwg
U0xPVCh0Y3BSZWFkeVJlYWQoKSkpOworICAgIGNvbm5lY3QobV90Y3BDb25uZWN0aW9uLCBTSUdO
QUwoZGlzY29ubmVjdGVkKCkpLCBTTE9UKHRjcENvbm5lY3Rpb25EaXNjb25uZWN0ZWQoKSkpOwor
fQorCitJbnNwZWN0b3JTZXJ2ZXJSZXF1ZXN0SGFuZGxlclF0Ojp+SW5zcGVjdG9yU2VydmVyUmVx
dWVzdEhhbmRsZXJRdCgpCit7Cit9CisKK3ZvaWQgSW5zcGVjdG9yU2VydmVyUmVxdWVzdEhhbmRs
ZXJRdDo6dGNwUmVhZHlSZWFkKCkKK3sKKyAgICBRSHR0cFJlcXVlc3RIZWFkZXIgaGVhZGVyOwor
ICAgIGJvb2wgaXNXZWJTb2NrZXQgPSBmYWxzZTsKKyAgICBpZiAoIW1fdGNwQ29ubmVjdGlvbikK
KyAgICAgICAgcmV0dXJuOworCisgICAgaWYgKCFtX2VuZE9mSGVhZGVycykgeworICAgICAgICB3
aGlsZSAobV90Y3BDb25uZWN0aW9uLT5ieXRlc0F2YWlsYWJsZSgpICYmICFtX2VuZE9mSGVhZGVy
cykgeworICAgICAgICAgICAgUUJ5dGVBcnJheSBsaW5lID0gbV90Y3BDb25uZWN0aW9uLT5yZWFk
TGluZSgpOworICAgICAgICAgICAgbV9kYXRhLmFwcGVuZChsaW5lKTsKKyAgICAgICAgICAgIGlm
IChsaW5lID09ICJcclxuIikKKyAgICAgICAgICAgICAgICBtX2VuZE9mSGVhZGVycyA9IHRydWU7
CisgICAgICAgIH0KKyAgICAgICAgaWYgKG1fZW5kT2ZIZWFkZXJzKSB7CisgICAgICAgICAgICBo
ZWFkZXIgPSBRSHR0cFJlcXVlc3RIZWFkZXIoUVN0cmluZzo6ZnJvbUxhdGluMShtX2RhdGEpKTsK
KyAgICAgICAgICAgIGlmIChoZWFkZXIuaXNWYWxpZCgpKSB7CisgICAgICAgICAgICAgICAgbV9w
YXRoID0gaGVhZGVyLnBhdGgoKTsKKyAgICAgICAgICAgICAgICBtX2NvbnRlbnRUeXBlID0gaGVh
ZGVyLmNvbnRlbnRUeXBlKCkudG9MYXRpbjEoKTsKKyAgICAgICAgICAgICAgICBtX2NvbnRlbnRM
ZW5ndGggPSBoZWFkZXIuY29udGVudExlbmd0aCgpOworICAgICAgICAgICAgICAgIGlmIChoZWFk
ZXIuaGFzS2V5KCJVcGdyYWRlIikgJiYgKGhlYWRlci52YWx1ZSgiVXBncmFkZSIpID09IFFMYXRp
bjFTdHJpbmcoIldlYlNvY2tldCIpKSkKKyAgICAgICAgICAgICAgICAgICAgaXNXZWJTb2NrZXQg
PSB0cnVlOworCisgICAgICAgICAgICAgICAgbV9kYXRhLmNsZWFyKCk7CisgICAgICAgICAgICB9
CisgICAgICAgIH0KKyAgICB9CisKKyAgICBpZiAobV9lbmRPZkhlYWRlcnMpIHsKKyAgICAgICAg
UVN0cmluZ0xpc3QgcGF0aEFuZFF1ZXJ5ID0gbV9wYXRoLnNwbGl0KCI/Iik7CisgICAgICAgIG1f
cGF0aCA9IHBhdGhBbmRRdWVyeVswXTsKKyAgICAgICAgUVN0cmluZ0xpc3Qgd29yZHMgPSBtX3Bh
dGguc3BsaXQoUVN0cmluZzo6ZnJvbUxhdGluMSgiLyIpKTsKKworICAgICAgICBpZiAoaXNXZWJT
b2NrZXQpIHsKKyAgICAgICAgICAgIC8vIHN3aXRjaCB0byB3ZWJzb2NrZXQtc3R5bGUgV2ViU29j
a2V0U2VydmljZSBtZXNzYWdpbmcKKyAgICAgICAgICAgIGlmIChtX3RjcENvbm5lY3Rpb24pIHsK
KyAgICAgICAgICAgICAgICBtX3RjcENvbm5lY3Rpb24tPmRpc2Nvbm5lY3QoU0lHTkFMKHJlYWR5
UmVhZCgpKSk7CisgICAgICAgICAgICAgICAgY29ubmVjdChtX3RjcENvbm5lY3Rpb24sIFNJR05B
TChyZWFkeVJlYWQoKSksIFNMT1Qod2ViU29ja2V0UmVhZHlSZWFkKCkpKTsKKworICAgICAgICAg
ICAgICAgIFFCeXRlQXJyYXkga2V5MyA9IG1fdGNwQ29ubmVjdGlvbi0+cmVhZCg4KTsKKworICAg
ICAgICAgICAgICAgIHF1aW50MzIgbnVtYmVyMSA9IGdldENoYWxsZW5nZU51bWJlckZyb21GaWVs
ZChoZWFkZXIudmFsdWUoIlNlYy1XZWJTb2NrZXQtS2V5MSIpKTsKKyAgICAgICAgICAgICAgICBx
dWludDMyIG51bWJlcjIgPSBnZXRDaGFsbGVuZ2VOdW1iZXJGcm9tRmllbGQoaGVhZGVyLnZhbHVl
KCJTZWMtV2ViU29ja2V0LUtleTIiKSk7CisKKyAgICAgICAgICAgICAgICBjaGFyIHJlc3BvbnNl
RGF0YVsxNl07CisgICAgICAgICAgICAgICAgZ2VuZXJhdGVFeHBlY3RlZENoYWxsZW5nZVJlc3Bv
bnNlKG51bWJlcjEsIG51bWJlcjIsICh1bnNpZ25lZCBjaGFyKilrZXkzLmRhdGEoKSwgKHVuc2ln
bmVkIGNoYXIqKXJlc3BvbnNlRGF0YSk7CisgICAgICAgICAgICAgICAgUUJ5dGVBcnJheSByZXNw
b25zZShyZXNwb25zZURhdGEsIHNpemVvZihyZXNwb25zZURhdGEpKTsKKworICAgICAgICAgICAg
ICAgIFFIdHRwUmVzcG9uc2VIZWFkZXIgcmVzcG9uc2VIZWFkZXIoMTAxLCAiV2ViU29ja2V0IFBy
b3RvY29sIEhhbmRzaGFrZSIsIDEsIDEpOworICAgICAgICAgICAgICAgIHJlc3BvbnNlSGVhZGVy
LnNldFZhbHVlKCJVcGdyYWRlIiwgaGVhZGVyLnZhbHVlKCJVcGdyYWRlIikpOworICAgICAgICAg
ICAgICAgIHJlc3BvbnNlSGVhZGVyLnNldFZhbHVlKCJDb25uZWN0aW9uIiwgaGVhZGVyLnZhbHVl
KCJDb25uZWN0aW9uIikpOworICAgICAgICAgICAgICAgIHJlc3BvbnNlSGVhZGVyLnNldFZhbHVl
KCJTZWMtV2ViU29ja2V0LU9yaWdpbiIsIGhlYWRlci52YWx1ZSgiT3JpZ2luIikpOworICAgICAg
ICAgICAgICAgIHJlc3BvbnNlSGVhZGVyLnNldFZhbHVlKCJTZWMtV2ViU29ja2V0LUxvY2F0aW9u
IiwgKCJ3czovLyIgKyBoZWFkZXIudmFsdWUoIkhvc3QiKSArIG1fcGF0aCkpOworICAgICAgICAg
ICAgICAgIHJlc3BvbnNlSGVhZGVyLnNldENvbnRlbnRMZW5ndGgocmVzcG9uc2Uuc2l6ZSgpKTsK
KyAgICAgICAgICAgICAgICBtX3RjcENvbm5lY3Rpb24tPndyaXRlKHJlc3BvbnNlSGVhZGVyLnRv
U3RyaW5nKCkudG9MYXRpbjEoKSk7CisgICAgICAgICAgICAgICAgbV90Y3BDb25uZWN0aW9uLT53
cml0ZShyZXNwb25zZSk7CisgICAgICAgICAgICAgICAgbV90Y3BDb25uZWN0aW9uLT5mbHVzaCgp
OworCisgICAgICAgICAgICAgICAgaWYgKCh3b3Jkcy5zaXplKCkgPT0gNCkKKyAgICAgICAgICAg
ICAgICAgICAgJiYgKHdvcmRzWzFdID09IFFTdHJpbmc6OmZyb21MYXRpbjEoImRldnRvb2xzIikp
CisgICAgICAgICAgICAgICAgICAgICYmICh3b3Jkc1syXSA9PSBRU3RyaW5nOjpmcm9tTGF0aW4x
KCJwYWdlIikpKSB7CisgICAgICAgICAgICAgICAgICAgIGludCBwYWdlTnVtID0gd29yZHNbM10u
dG9JbnQoKTsKKworICAgICAgICAgICAgICAgICAgICBtX2luc3BlY3RvckNsaWVudCA9IG1fc2Vy
dmVyLT5pbnNwZWN0b3JDbGllbnQocGFnZU51bSk7CisgICAgICAgICAgICAgICAgICAgIC8vIGF0
dGFjaCByZW1vdGVGcm9udGVuZENoYW5uZWwgdG8gaW5zcGVjdG9yLCBhbHNvIHRyYW5zZmVycmlu
ZyBvd25lcnNoaXAKKyAgICAgICAgICAgICAgICAgICAgaWYgKG1faW5zcGVjdG9yQ2xpZW50KQor
ICAgICAgICAgICAgICAgICAgICAgICAgbV9pbnNwZWN0b3JDbGllbnQtPmF0dGFjaFJlbW90ZUZy
b250ZW5kKG5ldyBSZW1vdGVGcm9udGVuZENoYW5uZWwodGhpcykpOworICAgICAgICAgICAgICAg
IH0KKworICAgICAgICAgICAgfQorCisgICAgICAgICAgICByZXR1cm47CisgICAgICAgIH0KKyAg
ICAgICAgaWYgKG1fY29udGVudExlbmd0aCAmJiAobV90Y3BDb25uZWN0aW9uLT5ieXRlc0F2YWls
YWJsZSgpIDwgbV9jb250ZW50TGVuZ3RoKSkKKyAgICAgICAgICAgIHJldHVybjsKKworICAgICAg
ICBRQnl0ZUFycmF5IGNvbnRlbnQgPSBtX3RjcENvbm5lY3Rpb24tPnJlYWQobV9jb250ZW50TGVu
Z3RoKTsKKyAgICAgICAgbV9lbmRPZkhlYWRlcnMgPSBmYWxzZTsKKworICAgICAgICBRU3RyaW5n
IHBhdGggPSBRU3RyaW5nKCI6JTEiKS5hcmcobV9wYXRoKTsKKyAgICAgICAgUUZpbGUgZmlsZShw
YXRoKTsKKyAgICAgICAgUUJ5dGVBcnJheSByZXNwb25zZTsKKyAgICAgICAgLy8gSXQgc2VlbXMg
dGhhdCB0aGVyZSBzaG91bGQgYmUgYW4gZW51bSBvciBkZWZpbmUgZm9yIHRoZXNlIHN0YXR1cyBj
b2RlcyBzb21ld2hlcmUgaW4gUXQgb3IgV2ViS2l0LAorICAgICAgICAvLyBidXQgZ3JlcCBmYWls
cyB0byB0dXJuIG9uZSB1cC4KKyAgICAgICAgLy8gUU5ldHdvcmsgdXNlcyB0aGUgbnVtZXJpYyB2
YWx1ZXMgZGlyZWN0bHkuCisgICAgICAgIGludCBjb2RlID0gMjAwOworICAgICAgICBRU3RyaW5n
IHRleHQgPSBRU3RyaW5nOjpmcm9tTGF0aW4xKCJPSyIpOworICAgICAgICBpZiAoZmlsZS5leGlz
dHMoKSkgeworICAgICAgICAgICAgZmlsZS5vcGVuKFFJT0RldmljZTo6UmVhZE9ubHkpOworICAg
ICAgICAgICAgcmVzcG9uc2UgPSBmaWxlLnJlYWRBbGwoKTsKKyAgICAgICAgfSBlbHNlIHsKKyAg
ICAgICAgICAgIGNvZGUgPSA0MDQ7CisgICAgICAgICAgICB0ZXh0ID0gUVN0cmluZzo6ZnJvbUxh
dGluMSgiTm90IE9LIik7CisgICAgICAgIH0KKworICAgICAgICBRSHR0cFJlc3BvbnNlSGVhZGVy
IHJlc3BvbnNlSGVhZGVyKGNvZGUsIHRleHQsIDEsIDApOworICAgICAgICByZXNwb25zZUhlYWRl
ci5zZXRDb250ZW50TGVuZ3RoKHJlc3BvbnNlLnNpemUoKSk7CisgICAgICAgIGlmICghbV9jb250
ZW50VHlwZS5pc0VtcHR5KCkpCisgICAgICAgICAgICByZXNwb25zZUhlYWRlci5zZXRDb250ZW50
VHlwZShRU3RyaW5nOjpmcm9tTGF0aW4xKG1fY29udGVudFR5cGUpKTsKKworICAgICAgICBRQnl0
ZUFycmF5IGFzY2lpSGVhZGVyID0gcmVzcG9uc2VIZWFkZXIudG9TdHJpbmcoKS50b0FzY2lpKCk7
CisgICAgICAgIG1fdGNwQ29ubmVjdGlvbi0+d3JpdGUoYXNjaWlIZWFkZXIpOworCisgICAgICAg
IG1fdGNwQ29ubmVjdGlvbi0+d3JpdGUocmVzcG9uc2UpOworICAgICAgICBtX3RjcENvbm5lY3Rp
b24tPmZsdXNoKCk7CisgICAgICAgIG1fdGNwQ29ubmVjdGlvbi0+Y2xvc2UoKTsKKworICAgICAg
ICByZXR1cm47CisgICAgfQorfQorCit2b2lkIEluc3BlY3RvclNlcnZlclJlcXVlc3RIYW5kbGVy
UXQ6OnRjcENvbm5lY3Rpb25EaXNjb25uZWN0ZWQoKQoreworICAgIGlmIChtX2luc3BlY3RvckNs
aWVudCkKKyAgICAgICAgbV9pbnNwZWN0b3JDbGllbnQtPmRldGFjaFJlbW90ZUZyb250ZW5kKCk7
CisgICAgbV90Y3BDb25uZWN0aW9uLT5kZWxldGVMYXRlcigpOworICAgIG1fdGNwQ29ubmVjdGlv
biA9IDA7Cit9CisKK2ludCBJbnNwZWN0b3JTZXJ2ZXJSZXF1ZXN0SGFuZGxlclF0Ojp3ZWJTb2Nr
ZXRTZW5kKFFCeXRlQXJyYXkgcGF5bG9hZCkKK3sKKyAgICBRX0FTU0VSVChtX3RjcENvbm5lY3Rp
b24pOworICAgIG1fdGNwQ29ubmVjdGlvbi0+cHV0Q2hhcigweDAwKTsKKyAgICBpbnQgbkJ5dGVz
ID0gbV90Y3BDb25uZWN0aW9uLT53cml0ZShwYXlsb2FkKTsKKyAgICBtX3RjcENvbm5lY3Rpb24t
PnB1dENoYXIoMHhGRik7CisgICAgbV90Y3BDb25uZWN0aW9uLT5mbHVzaCgpOworICAgIHJldHVy
biBuQnl0ZXM7Cit9CisKK2ludCBJbnNwZWN0b3JTZXJ2ZXJSZXF1ZXN0SGFuZGxlclF0Ojp3ZWJT
b2NrZXRTZW5kKGNvbnN0IGNoYXIqIGRhdGEsIHNpemVfdCBsZW5ndGgpCit7CisgICAgUV9BU1NF
UlQobV90Y3BDb25uZWN0aW9uKTsKKyAgICBtX3RjcENvbm5lY3Rpb24tPnB1dENoYXIoMHgwMCk7
CisgICAgaW50IG5CeXRlcyA9IG1fdGNwQ29ubmVjdGlvbi0+d3JpdGUoZGF0YSwgbGVuZ3RoKTsK
KyAgICBtX3RjcENvbm5lY3Rpb24tPnB1dENoYXIoMHhGRik7CisgICAgbV90Y3BDb25uZWN0aW9u
LT5mbHVzaCgpOworICAgIHJldHVybiBuQnl0ZXM7Cit9CisKK3ZvaWQgSW5zcGVjdG9yU2VydmVy
UmVxdWVzdEhhbmRsZXJRdDo6d2ViU29ja2V0UmVhZHlSZWFkKCkKK3sKKyAgICBRX0FTU0VSVCht
X3RjcENvbm5lY3Rpb24pOworICAgIGlmICghbV90Y3BDb25uZWN0aW9uLT5ieXRlc0F2YWlsYWJs
ZSgpKQorICAgICAgICByZXR1cm47CisgICAgUUJ5dGVBcnJheSBjb250ZW50ID0gbV90Y3BDb25u
ZWN0aW9uLT5yZWFkKG1fdGNwQ29ubmVjdGlvbi0+Ynl0ZXNBdmFpbGFibGUoKSk7CisgICAgbV9k
YXRhLmFwcGVuZChjb250ZW50KTsKKyAgICB3aGlsZSAobV9kYXRhLnNpemUoKSA+IDApIHsKKyAg
ICAgICAgLy8gZmlyc3QgYnl0ZSBpbiB3ZWJzb2NrZXQgZnJhbWUgc2hvdWxkIGJlIDAKKyAgICAg
ICAgUV9BU1NFUlQoIW1fZGF0YVswXSk7CisKKyAgICAgICAgaWYgKG1fZGF0YVswXSkgeworICAg
ICAgICAgICAgcUNyaXRpY2FsKCkgPDwgICJ3ZWJTb2NrZXRSZWFkeVJlYWQ6IHVua25vd24gZnJh
bWUgdHlwZSIgPDwgbV9kYXRhWzBdOworICAgICAgICAgICAgbV9kYXRhLmNsZWFyKCk7CisgICAg
ICAgICAgICBtX3RjcENvbm5lY3Rpb24tPmNsb3NlKCk7CisgICAgICAgICAgICByZXR1cm47Cisg
ICAgICAgIH0KKyAgICAgICAgLy8gZW5kIG9mIHdlYnNvY2tldCBmcmFtZSBpbmRpY2F0ZWQgYnkg
MHhmZgorICAgICAgICBpbnQgcG9zID0gbV9kYXRhLmluZGV4T2YoMHhmZiwgMSk7CisgICAgICAg
IGlmIChwb3MgPCAxKQorICAgICAgICAgICAgcmV0dXJuOworCisgICAgICAgIHNpemVfdCBsZW5n
dGggPSBwb3MgLSAxOworCisgICAgICAgIFFCeXRlQXJyYXkgcGF5bG9hZCA9IG1fZGF0YS5taWQo
MSwgbGVuZ3RoKTsKKworICAgICAgICBpZiAobV9pbnNwZWN0b3JDbGllbnQpIHsKKyAgICAgICAg
ICBJbnNwZWN0b3JDb250cm9sbGVyKiBpbnNwZWN0b3JDb250cm9sbGVyID0gbV9pbnNwZWN0b3JD
bGllbnQtPm1faW5zcGVjdGVkV2ViUGFnZS0+ZC0+cGFnZS0+aW5zcGVjdG9yQ29udHJvbGxlcigp
OworICAgICAgICAgIGluc3BlY3RvckNvbnRyb2xsZXItPmluc3BlY3RvckJhY2tlbmREaXNwYXRj
aGVyKCktPmRpc3BhdGNoKFFTdHJpbmc6OmZyb21VdGY4KHBheWxvYWQpKTsKKyAgICAgICAgfQor
CisgICAgICAgIG1fZGF0YSA9IG1fZGF0YS5taWQobGVuZ3RoICsgMik7CisgICAgfQorfQorCitS
ZW1vdGVGcm9udGVuZENoYW5uZWw6OlJlbW90ZUZyb250ZW5kQ2hhbm5lbChJbnNwZWN0b3JTZXJ2
ZXJSZXF1ZXN0SGFuZGxlclF0KiByZXF1ZXN0SGFuZGxlcikKKyAgICA6IFFPYmplY3QocmVxdWVz
dEhhbmRsZXIpCisgICAgLCBtX3JlcXVlc3RIYW5kbGVyKHJlcXVlc3RIYW5kbGVyKQoreworfQor
Citib29sIFJlbW90ZUZyb250ZW5kQ2hhbm5lbDo6c2VuZE1lc3NhZ2VUb0Zyb250ZW5kKGNvbnN0
IFN0cmluZyAmbWVzc2FnZSkKK3sKKyAgICBpZiAoIW1fcmVxdWVzdEhhbmRsZXIpCisgICAgICAg
IHJldHVybiBmYWxzZTsKKyAgICBDU3RyaW5nIGNzdHIgPSBtZXNzYWdlLnV0ZjgoKTsKKyAgICBy
ZXR1cm4gbV9yZXF1ZXN0SGFuZGxlci0+d2ViU29ja2V0U2VuZChjc3RyLmRhdGEoKSwgY3N0ci5s
ZW5ndGgoKSk7Cit9CisKK30KZGlmZiAtLWdpdCBhL1dlYktpdC9xdC9XZWJDb3JlU3VwcG9ydC9J
bnNwZWN0b3JTZXJ2ZXJRdC5oIGIvV2ViS2l0L3F0L1dlYkNvcmVTdXBwb3J0L0luc3BlY3RvclNl
cnZlclF0LmgKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMC4uMDM5NTI1ODJhZTY5NjEyOGVmZmU4YTFkZDUzNTlhY2E0MDMy
YzhlYgotLS0gL2Rldi9udWxsCisrKyBiL1dlYktpdC9xdC9XZWJDb3JlU3VwcG9ydC9JbnNwZWN0
b3JTZXJ2ZXJRdC5oCkBAIC0wLDAgKzEsMTExIEBACisvKgorICAgIENvcHlyaWdodCAoQykgMjAx
MCBOb2tpYSBDb3Jwb3JhdGlvbiBhbmQvb3IgaXRzIHN1YnNpZGlhcnkoLWllcykKKworICAgIFRo
aXMgbGlicmFyeSBpcyBmcmVlIHNvZnR3YXJlOyB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQv
b3IKKyAgICBtb2RpZnkgaXQgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUgTGlicmFyeSBHZW5l
cmFsIFB1YmxpYworICAgIExpY2Vuc2UgYXMgcHVibGlzaGVkIGJ5IHRoZSBGcmVlIFNvZnR3YXJl
IEZvdW5kYXRpb247IGVpdGhlcgorICAgIHZlcnNpb24gMiBvZiB0aGUgTGljZW5zZSwgb3IgKGF0
IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KKworICAgIFRoaXMgbGlicmFyeSBpcyBk
aXN0cmlidXRlZCBpbiB0aGUgaG9wZSB0aGF0IGl0IHdpbGwgYmUgdXNlZnVsLAorICAgIGJ1dCBX
SVRIT1VUIEFOWSBXQVJSQU5UWTsgd2l0aG91dCBldmVuIHRoZSBpbXBsaWVkIHdhcnJhbnR5IG9m
CisgICAgTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NF
LiAgU2VlIHRoZSBHTlUKKyAgICBMaWJyYXJ5IEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1v
cmUgZGV0YWlscy4KKworICAgIFlvdSBzaG91bGQgaGF2ZSByZWNlaXZlZCBhIGNvcHkgb2YgdGhl
IEdOVSBMaWJyYXJ5IEdlbmVyYWwgUHVibGljIExpY2Vuc2UKKyAgICBhbG9uZyB3aXRoIHRoaXMg
bGlicmFyeTsgc2VlIHRoZSBmaWxlIENPUFlJTkcuTElCLiAgSWYgbm90LCB3cml0ZSB0bworICAg
IHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb24sIEluYy4sIDUxIEZyYW5rbGluIFN0cmVldCwg
RmlmdGggRmxvb3IsCisgICAgQm9zdG9uLCBNQSAwMjExMC0xMzAxLCBVU0EuCisqLworCisjaWZu
ZGVmIEluc3BlY3RvclNlcnZlclF0X2gKKyNkZWZpbmUgSW5zcGVjdG9yU2VydmVyUXRfaAorCisj
aW5jbHVkZSA8UUxpc3Q+CisjaW5jbHVkZSA8UU1hcD4KKyNpbmNsdWRlIDxRT2JqZWN0PgorI2lu
Y2x1ZGUgPFFQYWlyPgorI2luY2x1ZGUgPFFTdHJpbmc+CisjaW5jbHVkZSA8d3RmL0ZvcndhcmQu
aD4KKworY2xhc3MgUVRjcFNlcnZlcjsKK2NsYXNzIFFUY3BTb2NrZXQ7CitjbGFzcyBRV2ViUGFn
ZTsKKworbmFtZXNwYWNlIFdlYkNvcmUgeworY2xhc3MgSW5zcGVjdG9yU2VydmVyUmVxdWVzdEhh
bmRsZXJRdDsKK2NsYXNzIEluc3BlY3RvckNsaWVudFF0OworCitjbGFzcyBJbnNwZWN0b3JTZXJ2
ZXJRdCA6IHB1YmxpYyBRT2JqZWN0IHsKKyAgICBRX09CSkVDVAorcHVibGljOgorCisgICAgc3Rh
dGljIEluc3BlY3RvclNlcnZlclF0KiBzZXJ2ZXIoKTsKKworICAgIHZvaWQgbGlzdGVuKHF1aW50
MTYgcG9ydCk7CisKKyAgICB2b2lkIHJlZ2lzdGVyQ2xpZW50KEluc3BlY3RvckNsaWVudFF0KiBj
bGllbnQpOworICAgIHZvaWQgdW5yZWdpc3RlckNsaWVudChJbnNwZWN0b3JDbGllbnRRdCogY2xp
ZW50KTsKKworICAgIHZvaWQgY2xvc2UoKTsKKyAgICBJbnNwZWN0b3JDbGllbnRRdCogaW5zcGVj
dG9yQ2xpZW50KGludCBwYWdlTnVtKTsKKworcHJvdGVjdGVkOgorICAgIEluc3BlY3RvclNlcnZl
clF0KCk7CisgICAgdmlydHVhbCB+SW5zcGVjdG9yU2VydmVyUXQoKTsKKworcHJpdmF0ZSBzbG90
czoKKyAgICB2b2lkIG5ld0Nvbm5lY3Rpb24oKTsKKworcHJpdmF0ZToKKyAgICBRVGNwU2VydmVy
KiBtX3RjcFNlcnZlcjsKKyAgICBRTWFwPGludCwgSW5zcGVjdG9yQ2xpZW50UXQqPiBtX2luc3Bl
Y3RvckNsaWVudHM7CisgICAgaW50IG1fcGFnZU51bWJlcjsKKworCit9OworCitjbGFzcyBSZW1v
dGVGcm9udGVuZENoYW5uZWwgOiBwdWJsaWMgUU9iamVjdCB7CisgICAgUV9PQkpFQ1QKKyAgICAg
ICAgcHVibGljOgorCisgICAgUmVtb3RlRnJvbnRlbmRDaGFubmVsKEluc3BlY3RvclNlcnZlclJl
cXVlc3RIYW5kbGVyUXQqIHJlcXVlc3RIYW5kbGVyKTsKKyAgICBib29sIHNlbmRNZXNzYWdlVG9G
cm9udGVuZChjb25zdCBTdHJpbmcmIG1lc3NhZ2UpOworCitwcml2YXRlOgorICAgIEluc3BlY3Rv
clNlcnZlclJlcXVlc3RIYW5kbGVyUXQqIG1fcmVxdWVzdEhhbmRsZXI7Cit9OworCitjbGFzcyBJ
bnNwZWN0b3JTZXJ2ZXJSZXF1ZXN0SGFuZGxlclF0IDogcHVibGljIFFPYmplY3QgeworICAgIFFf
T0JKRUNUCisKKyAgICAgICAgcHVibGljOgorCisgICAgSW5zcGVjdG9yU2VydmVyUmVxdWVzdEhh
bmRsZXJRdChRVGNwU29ja2V0ICp0Y3BDb25uZWN0aW9uLCBJbnNwZWN0b3JTZXJ2ZXJRdCAqc2Vy
dmVyKTsKKyAgICB2aXJ0dWFsIH5JbnNwZWN0b3JTZXJ2ZXJSZXF1ZXN0SGFuZGxlclF0KCk7Cisg
ICAgdmlydHVhbCBpbnQgd2ViU29ja2V0U2VuZChRQnl0ZUFycmF5IHBheWxvYWQpOworICAgIHZp
cnR1YWwgaW50IHdlYlNvY2tldFNlbmQoY29uc3QgY2hhciAqcGF5bG9hZCwgc2l6ZV90IGxlbmd0
aCk7CisKK3ByaXZhdGUgc2xvdHM6CisgICAgdm9pZCB0Y3BSZWFkeVJlYWQoKTsKKyAgICB2b2lk
IHRjcENvbm5lY3Rpb25EaXNjb25uZWN0ZWQoKTsKKyAgICB2b2lkIHdlYlNvY2tldFJlYWR5UmVh
ZCgpOworCitwcml2YXRlOgorICAgIFFUY3BTb2NrZXQqIG1fdGNwQ29ubmVjdGlvbjsKKyAgICBJ
bnNwZWN0b3JTZXJ2ZXJRdCogbV9zZXJ2ZXI7CisKKyAgICBRU3RyaW5nIG1fcGF0aDsKKyAgICBR
Qnl0ZUFycmF5IG1fY29udGVudFR5cGU7CisgICAgaW50IG1fY29udGVudExlbmd0aDsKKyAgICBi
b29sIG1fZW5kT2ZIZWFkZXJzOworICAgIFFCeXRlQXJyYXkgbV9kYXRhOworICAgIEluc3BlY3Rv
ckNsaWVudFF0KiBtX2luc3BlY3RvckNsaWVudDsKKworICAgIHZvaWQgaGFuZGxlSW5zcGVjdG9y
UmVxdWVzdChRU3RyaW5nTGlzdCB3b3Jkcyk7CisgICAgdm9pZCBoYW5kbGVGcm9tRnJvbnRlbmRS
ZXF1ZXN0KCk7CisgICAgdm9pZCBoYW5kbGVSZXNvdXJjZVJlcXVlc3QoUVN0cmluZ0xpc3Qgd29y
ZHMpOworCit9OworCit9CisjZW5kaWYKZGlmZiAtLWdpdCBhL1dlYktpdFRvb2xzL0NoYW5nZUxv
ZyBiL1dlYktpdFRvb2xzL0NoYW5nZUxvZwppbmRleCA3NzkxYmJjZDc0MjMyZmM1ZWI2ZmI2NjQy
OTAzNTM5NmVhOGY1YzI4Li5iYWQ3NDlhODI4YmU2NzY5YzZlM2VjYjAyZTdmNGJhOTU4ZjJhNzUz
IDEwMDY0NAotLS0gYS9XZWJLaXRUb29scy9DaGFuZ2VMb2cKKysrIGIvV2ViS2l0VG9vbHMvQ2hh
bmdlTG9nCkBAIC0xLDMgKzEsMjYgQEAKKzIwMTAtMDgtMzEgIEphbWV5IEhpY2tzICA8amFtZXku
aGlja3NAbm9raWEuY29tPgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgor
CisgICAgICAgIFtRdF0gV2ViIEluc3BlY3RvcjogUmVtb3RlIFdlYiBJbnNwZWN0b3Igc3VwcG9y
dCBmb3IgUXRXZWJLaXQKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcu
Y2dpP2lkPTQzOTg4CisKKyAgICAgICAgUnVucyBhIHdlYiBkZWJ1ZyBzZXJ2ZXIgb24gcG9ydCBz
cGVjaWZpZWQgYnkgUXRUZXN0QnJvd3NlcgorICAgICAgICBhcmd1bWVudCAtcmVtb3RlLWluc3Bl
Y3Rvci1wb3J0LiBQcm9wZXJ0eQorICAgICAgICBfcV93ZWJJbnNwZWN0b3JTZXJ2ZXJQb3J0IG9m
IHRoZSBRV2ViUGFnZSBpbnN0YW5jZSB3aWxsIGJlIHNldAorICAgICAgICBhY2NvcmRpbmcgdG8g
dGhlIGFyZ3VtZW50LiBBbGwgcGFnZXMgd2l0aCB0aGF0IHByb3BlcnR5IHNldCB3aWxsCisgICAg
ICAgIGJlIHJlbW90ZWx5IGluc3BlY3RhYmxlLgorCisgICAgICAgIFVSTCBmb3IgcmVtb3RlIGlu
c3BlY3Rpb24gb2YgZmlyc3QgUVdlYlBhZ2UgaXMKKyAgICAgICAgICAgIGh0dHA6Ly9sb2NhbGhv
c3Q6OTIyMi9kZXZ0b29scy9wYWdlLzEKKyAgICAgICAgd2hlcmUgMSBpcyB0aGUgbnVtYmVyIG9m
IHRoZSBRV2ViUGFnZSBpbnN0YW5jZS4KKworICAgICAgICAqIFF0VGVzdEJyb3dzZXIvbGF1bmNo
ZXJ3aW5kb3cuY3BwOgorICAgICAgICAoTGF1bmNoZXJXaW5kb3c6OmluaXQpOgorICAgICAgICAq
IFF0VGVzdEJyb3dzZXIvbGF1bmNoZXJ3aW5kb3cuaDoKKyAgICAgICAgKiBRdFRlc3RCcm93c2Vy
L21haW4uY3BwOgorICAgICAgICAoTGF1bmNoZXJBcHBsaWNhdGlvbjo6aGFuZGxlVXNlck9wdGlv
bnMpOgorCiAyMDEwLTA4LTI3ICBKb2huIEdyZWdnICA8am9obm55Z0Bnb29nbGUuY29tPgogCiAg
ICAgICAgIFJldmlld2VkIGJ5IERhdmlkIExldmluLgpkaWZmIC0tZ2l0IGEvV2ViS2l0VG9vbHMv
UXRUZXN0QnJvd3Nlci9sYXVuY2hlcndpbmRvdy5jcHAgYi9XZWJLaXRUb29scy9RdFRlc3RCcm93
c2VyL2xhdW5jaGVyd2luZG93LmNwcAppbmRleCAzYjQ3ZjI5Y2I0NjdiNDdlOTExOWI5MzQwMzMz
MzJkNTIzZjVkNThhLi42NDZiYjA3ZDFiZmMxN2MwNjQ1M2NjZDBjM2NlMTIxMzFmMzBiMTBiIDEw
MDY0NAotLS0gYS9XZWJLaXRUb29scy9RdFRlc3RCcm93c2VyL2xhdW5jaGVyd2luZG93LmNwcAor
KysgYi9XZWJLaXRUb29scy9RdFRlc3RCcm93c2VyL2xhdW5jaGVyd2luZG93LmNwcApAQCAtOTEs
NiArOTEsOSBAQCB2b2lkIExhdW5jaGVyV2luZG93Ojppbml0KCkKICAgICBtX2luc3BlY3Rvci0+
aGlkZSgpOwogICAgIGNvbm5lY3QodGhpcywgU0lHTkFMKGRlc3Ryb3llZCgpKSwgbV9pbnNwZWN0
b3IsIFNMT1QoZGVsZXRlTGF0ZXIoKSkpOwogCisgICAgaWYgKG1fd2luZG93T3B0aW9ucy5yZW1v
dGVJbnNwZWN0b3JQb3J0KQorICAgICAgICBwYWdlKCktPnNldFByb3BlcnR5KCJfcV93ZWJJbnNw
ZWN0b3JTZXJ2ZXJQb3J0IiwgbV93aW5kb3dPcHRpb25zLnJlbW90ZUluc3BlY3RvclBvcnQpOwor
CiAgICAgLy8gdGhlIHpvb20gdmFsdWVzIGFyZSBjaG9zZW4gdG8gYmUgbGlrZSBpbiBNb3ppbGxh
IEZpcmVmb3ggMwogICAgIGlmICghbV96b29tTGV2ZWxzLmNvdW50KCkpIHsKICAgICAgICAgbV96
b29tTGV2ZWxzIDw8IDMwIDw8IDUwIDw8IDY3IDw8IDgwIDw8IDkwOwpkaWZmIC0tZ2l0IGEvV2Vi
S2l0VG9vbHMvUXRUZXN0QnJvd3Nlci9sYXVuY2hlcndpbmRvdy5oIGIvV2ViS2l0VG9vbHMvUXRU
ZXN0QnJvd3Nlci9sYXVuY2hlcndpbmRvdy5oCmluZGV4IDY1ZjM5MGQ4OTRkNTQ0M2UwN2M1NDAw
MzFkZmIxNWU1M2ZiYTQ2ZjcuLmUxYzc0NzBhODZjNTQ4ZGRiNzU1Njg2M2IxMjU1OGY2MDRjNmY0
OWYgMTAwNjQ0Ci0tLSBhL1dlYktpdFRvb2xzL1F0VGVzdEJyb3dzZXIvbGF1bmNoZXJ3aW5kb3cu
aAorKysgYi9XZWJLaXRUb29scy9RdFRlc3RCcm93c2VyL2xhdW5jaGVyd2luZG93LmgKQEAgLTEx
MCw2ICsxMTAsNyBAQCBwdWJsaWM6CiAgICAgYm9vbCB1c2VRR0xXaWRnZXRWaWV3cG9ydDsKICNl
bmRpZgogICAgIFFVcmwgaW5zcGVjdG9yVXJsOworICAgIHF1aW50MTYgcmVtb3RlSW5zcGVjdG9y
UG9ydDsKIH07CiAKIGNsYXNzIExhdW5jaGVyV2luZG93IDogcHVibGljIE1haW5XaW5kb3cgewpk
aWZmIC0tZ2l0IGEvV2ViS2l0VG9vbHMvUXRUZXN0QnJvd3Nlci9tYWluLmNwcCBiL1dlYktpdFRv
b2xzL1F0VGVzdEJyb3dzZXIvbWFpbi5jcHAKaW5kZXggZWM4NjRlOWQwOTVhM2VmODBhNzI1N2Qw
ZjlmMmUzZmU1MDJmYjRhZS4uMTJhMzExZWUzZWE2YmMzODdmZWNjYTRmMGY1NGY1N2NhNjFmYTkz
OSAxMDA2NDQKLS0tIGEvV2ViS2l0VG9vbHMvUXRUZXN0QnJvd3Nlci9tYWluLmNwcAorKysgYi9X
ZWJLaXRUb29scy9RdFRlc3RCcm93c2VyL21haW4uY3BwCkBAIC0xODAsNiArMTgwLDExIEBAIHZv
aWQgTGF1bmNoZXJBcHBsaWNhdGlvbjo6aGFuZGxlVXNlck9wdGlvbnMoKQogICAgIGlmIChpbnNw
ZWN0b3JVcmxJbmRleCAhPSAtMSkKICAgICAgICB3aW5kb3dPcHRpb25zLmluc3BlY3RvclVybCA9
IHRha2VPcHRpb25WYWx1ZSgmYXJncywgaW5zcGVjdG9yVXJsSW5kZXgpOwogCisgICAgUVN0cmlu
ZyByZW1vdGVJbnNwZWN0b3JQb3J0QXJnKCItcmVtb3RlLWluc3BlY3Rvci1wb3J0Iik7CisgICAg
aW50IHJlbW90ZUluc3BlY3RvclBvcnRJbmRleCA9IGFyZ3MuaW5kZXhPZihyZW1vdGVJbnNwZWN0
b3JQb3J0QXJnKTsKKyAgICBpZiAocmVtb3RlSW5zcGVjdG9yUG9ydEluZGV4ICE9IC0xKQorICAg
ICAgICB3aW5kb3dPcHRpb25zLnJlbW90ZUluc3BlY3RvclBvcnQgPSB0YWtlT3B0aW9uVmFsdWUo
JmFyZ3MsIHJlbW90ZUluc3BlY3RvclBvcnRJbmRleCkudG9JbnQoKTsKKwogICAgIGludCByb2Jv
dEluZGV4ID0gYXJncy5pbmRleE9mKCItciIpOwogICAgIGlmIChyb2JvdEluZGV4ICE9IC0xKSB7
CiAgICAgICAgIFFTdHJpbmcgbGlzdEZpbGUgPSB0YWtlT3B0aW9uVmFsdWUoJmFyZ3MsIHJvYm90
SW5kZXgpOwo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>67401</attachid>
            <date>2010-09-13 06:11:47 -0700</date>
            <delta_ts>2010-09-14 07:43:20 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-43988-20100913091145.patch</filename>
            <type>text/plain</type>
            <size>32874</size>
            <attacher name="Jamey Hicks">jamey.hicks</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1dlYkNvcmUvQ2hhbmdlTG9nIGIvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXgg
YzY3YmMyZWY4NDQ2ZWFhZWZhYWI1ZTRlYzc5ODlhMjgwNDRmYTA3OC4uZWJlNDBiOTU1MDY1Yzky
M2U3YThiNjg4MjJiZjk2MjAxODQ0YTFlMiAxMDA2NDQKLS0tIGEvV2ViQ29yZS9DaGFuZ2VMb2cK
KysrIGIvV2ViQ29yZS9DaGFuZ2VMb2cKQEAgLTEsMyArMSwyMiBAQAorMjAxMC0wOS0xMyAgSmFt
ZXkgSGlja3MgIDxqYW1leS5oaWNrc0Bub2tpYS5jb20+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkg
Tk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgW1F0XSBXZWIgSW5zcGVjdG9yOiBSZW1vdGUgV2Vi
IEluc3BlY3RvciBzdXBwb3J0IGZvciBRdFdlYktpdAorICAgICAgICBodHRwczovL2J1Z3Mud2Vi
a2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9NDM5ODgKKworICAgICAgICBSdW5zIGEgd2ViIGRlYnVn
IHNlcnZlciBvbiBwb3J0IHNwZWNpZmllZCBieSBRdFRlc3RCcm93c2VyCisgICAgICAgIGFyZ3Vt
ZW50IC1yZW1vdGUtaW5zcGVjdG9yLXBvcnQuIFByb3BlcnR5CisgICAgICAgIF9xX3dlYkluc3Bl
Y3RvclNlcnZlclBvcnQgb2YgdGhlIFFXZWJQYWdlIGluc3RhbmNlIHdpbGwgYmUgc2V0CisgICAg
ICAgIGFjY29yZGluZyB0byB0aGUgYXJndW1lbnQuIEFsbCBwYWdlcyB3aXRoIHRoYXQgcHJvcGVy
dHkgc2V0IHdpbGwKKyAgICAgICAgYmUgcmVtb3RlbHkgaW5zcGVjdGFibGUuCisKKyAgICAgICAg
VVJMIGZvciByZW1vdGUgaW5zcGVjdGlvbiBvZiBmaXJzdCBRV2ViUGFnZSBpcworICAgICAgICAg
ICAgaHR0cDovL2xvY2FsaG9zdDo5MjIyL2RldnRvb2xzL3BhZ2UvMQorICAgICAgICB3aGVyZSAx
IGlzIHRoZSBudW1iZXIgb2YgdGhlIFFXZWJQYWdlIGluc3RhbmNlLgorCisgICAgICAgICogV2Vi
Q29yZS5wcm86CisKIDIwMTAtMDktMTMgIE1hcmlvIFNhbmNoZXogUHJhZGEgIDxtc2FuY2hlekBp
Z2FsaWEuY29tPgogCiAgICAgICAgIFJldmlld2VkIGJ5IE1hcnRpbiBSb2JpbnNvbi4KZGlmZiAt
LWdpdCBhL1dlYkNvcmUvV2ViQ29yZS5wcm8gYi9XZWJDb3JlL1dlYkNvcmUucHJvCmluZGV4IDZj
NjdiZGUxN2I2OGRlMjc3Yzg0ZjBlYTdmYzUyYjE5M2FkOTY1NWEuLjIyZGNmMjU1ZDUwOWQ2YTc2
NWExM2YxMzVhYjlmNTQxOGY1OTg5Y2UgMTAwNjQ0Ci0tLSBhL1dlYkNvcmUvV2ViQ29yZS5wcm8K
KysrIGIvV2ViQ29yZS9XZWJDb3JlLnBybwpAQCAtMjQ5Niw2ICsyNDk2LDcgQEAgSEVBREVSUyAr
PSBcCiAgICAgeG1sL1hTTFRQcm9jZXNzb3IuaCBcCiAgICAgeG1sL1hTTFRVbmljb2RlU29ydC5o
IFwKICAgICAkJFBXRC8uLi9XZWJLaXQvcXQvQXBpL3F3ZWJwbHVnaW5kYXRhYmFzZV9wLmggXAor
ICAgICQkUFdELy4uL1dlYktpdC9xdC9XZWJDb3JlU3VwcG9ydC9JbnNwZWN0b3JTZXJ2ZXJRdC5o
IFwKICAgICAkJFBXRC8uLi9XZWJLaXQvcXQvV2ViQ29yZVN1cHBvcnQvUXRGYWxsYmFja1dlYlBv
cHVwLmggXAogICAgICQkUFdELy4uL1dlYktpdC9xdC9XZWJDb3JlU3VwcG9ydC9GcmFtZUxvYWRl
ckNsaWVudFF0LmggXAogICAgICQkUFdELy4uL1dlYktpdC9xdC9XZWJDb3JlU3VwcG9ydC9GcmFt
ZU5ldHdvcmtpbmdDb250ZXh0UXQuaCBcCkBAIC0yNjAyLDYgKzI2MDMsNyBAQCBTT1VSQ0VTICs9
IFwKICAgICAuLi9XZWJLaXQvcXQvV2ViQ29yZVN1cHBvcnQvRnJhbWVOZXR3b3JraW5nQ29udGV4
dFF0LmNwcCBcCiAgICAgLi4vV2ViS2l0L3F0L1dlYkNvcmVTdXBwb3J0L0dlb2xvY2F0aW9uUGVy
bWlzc2lvbkNsaWVudFF0LmNwcCBcCiAgICAgLi4vV2ViS2l0L3F0L1dlYkNvcmVTdXBwb3J0L0lu
c3BlY3RvckNsaWVudFF0LmNwcCBcCisgICAgLi4vV2ViS2l0L3F0L1dlYkNvcmVTdXBwb3J0L0lu
c3BlY3RvclNlcnZlclF0LmNwcCBcCiAgICAgLi4vV2ViS2l0L3F0L1dlYkNvcmVTdXBwb3J0L05v
dGlmaWNhdGlvblByZXNlbnRlckNsaWVudFF0LmNwcCBcCiAgICAgLi4vV2ViS2l0L3F0L1dlYkNv
cmVTdXBwb3J0L1BhZ2VDbGllbnRRdC5jcHAgXAogICAgIC4uL1dlYktpdC9xdC9XZWJDb3JlU3Vw
cG9ydC9Qb3B1cE1lbnVRdC5jcHAgXApkaWZmIC0tZ2l0IGEvV2ViS2l0L3F0L0FwaS9xd2ViaW5z
cGVjdG9yLmNwcCBiL1dlYktpdC9xdC9BcGkvcXdlYmluc3BlY3Rvci5jcHAKaW5kZXggODAyZWE5
ODA0OGZhNWI5N2U0ZmZjM2Q1MDdjMzI4NWEwY2I2YTNlMy4uYmM5MDBjNzEzNDRiOGI1NjdlMjE1
MzI4Y2M2NWU5N2E0ZDc5MWFlNCAxMDA2NDQKLS0tIGEvV2ViS2l0L3F0L0FwaS9xd2ViaW5zcGVj
dG9yLmNwcAorKysgYi9XZWJLaXQvcXQvQXBpL3F3ZWJpbnNwZWN0b3IuY3BwCkBAIC0xOTYsNiAr
MTk2LDMxIEBAIHZvaWQgUVdlYkluc3BlY3RvclByaXZhdGU6OnNldEZyb250ZW5kKFFXaWRnZXQq
IG5ld0Zyb250ZW5kKQogICAgIH0KIH0KIAorLyohIAorICogXGludGVybmFsIAorICovCit2b2lk
IFFXZWJJbnNwZWN0b3JQcml2YXRlOjphdHRhY2hSZW1vdGVGcm9udGVuZChRT2JqZWN0KiBuZXdS
ZW1vdGVGcm9udGVuZCkKK3sKKyAgICBpZiAocmVtb3RlRnJvbnRlbmQpCisgICAgICAgIHJlbW90
ZUZyb250ZW5kLT5zZXRQYXJlbnQoMCk7CisKKyAgICByZW1vdGVGcm9udGVuZCA9IG5ld1JlbW90
ZUZyb250ZW5kOworCisgICAgaWYgKHJlbW90ZUZyb250ZW5kKQorICAgICAgICByZW1vdGVGcm9u
dGVuZC0+c2V0UGFyZW50KHEpOworfQorCisvKiEgCisgKiBcaW50ZXJuYWwgCisgKi8KK3ZvaWQg
UVdlYkluc3BlY3RvclByaXZhdGU6OmRldGFjaFJlbW90ZUZyb250ZW5kKCkKK3sKKyAgICBpZiAo
cmVtb3RlRnJvbnRlbmQpIHsKKyAgICAgICAgcmVtb3RlRnJvbnRlbmQtPmRlbGV0ZUxhdGVyKCk7
CisgICAgICAgIHJlbW90ZUZyb250ZW5kID0gMDsKKyAgICB9Cit9CisKIHZvaWQgUVdlYkluc3Bl
Y3RvclByaXZhdGU6OmFkanVzdEZyb250ZW5kU2l6ZShjb25zdCBRU2l6ZSYgc2l6ZSkKIHsKICAg
ICBpZiAoZnJvbnRlbmQpCmRpZmYgLS1naXQgYS9XZWJLaXQvcXQvQXBpL3F3ZWJpbnNwZWN0b3Jf
cC5oIGIvV2ViS2l0L3F0L0FwaS9xd2ViaW5zcGVjdG9yX3AuaAppbmRleCA0ZDMyN2NjNWE5MTFm
N2U1MjI5ODA0ZjFkOGUyNzlhNDU0OGVkNzU3Li45NmY2NGJiNWEwZmFiOGQwNDliMGU1ODdmMzdm
N2VlZWVmNzA2M2UwIDEwMDY0NAotLS0gYS9XZWJLaXQvcXQvQXBpL3F3ZWJpbnNwZWN0b3JfcC5o
CisrKyBiL1dlYktpdC9xdC9BcGkvcXdlYmluc3BlY3Rvcl9wLmgKQEAgLTMzLDE0ICszMywxOCBA
QCBwdWJsaWM6CiAgICAgOiBxKHFxKQogICAgICwgcGFnZSgwKQogICAgICwgZnJvbnRlbmQoMCkK
KyAgICAsIHJlbW90ZUZyb250ZW5kKDApCiAgICAge30KIAogICAgIHZvaWQgc2V0RnJvbnRlbmQo
UVdpZGdldCogbmV3RnJvbnRlbmQpOworICAgIHZvaWQgYXR0YWNoUmVtb3RlRnJvbnRlbmQoUU9i
amVjdCogbmV3UmVtb3RlRnJvbnRlbmQpOworICAgIHZvaWQgZGV0YWNoUmVtb3RlRnJvbnRlbmQo
KTsKICAgICB2b2lkIGFkanVzdEZyb250ZW5kU2l6ZShjb25zdCBRU2l6ZSYgc2l6ZSk7CiAKICAg
ICBRV2ViSW5zcGVjdG9yKiBxOwogICAgIFFXZWJQYWdlKiBwYWdlOwogICAgIFFXaWRnZXQqIGZy
b250ZW5kOworICAgIFFPYmplY3QqIHJlbW90ZUZyb250ZW5kOwogfTsKIAogI2VuZGlmCmRpZmYg
LS1naXQgYS9XZWJLaXQvcXQvQXBpL3F3ZWJwYWdlLmNwcCBiL1dlYktpdC9xdC9BcGkvcXdlYnBh
Z2UuY3BwCmluZGV4IDRmNWU3MTE3ZmNjYTI5YWI0MzlhMTI2ZWQ0OTE2MGJlMjM4OTllZGMuLmY0
MjgzMzgwMTI2ZmE0OTkwOTkxZjk1NDIyMjhmOTRlZWU3M2VjNTQgMTAwNjQ0Ci0tLSBhL1dlYktp
dC9xdC9BcGkvcXdlYnBhZ2UuY3BwCisrKyBiL1dlYktpdC9xdC9BcGkvcXdlYnBhZ2UuY3BwCkBA
IC03Niw2ICs3Niw3IEBACiAjaW5jbHVkZSAiSFRNTElucHV0RWxlbWVudC5oIgogI2luY2x1ZGUg
IkhUTUxOYW1lcy5oIgogI2luY2x1ZGUgIkhpdFRlc3RSZXN1bHQuaCIKKyNpbmNsdWRlICJJbnNw
ZWN0b3JTZXJ2ZXJRdC5oIgogI2luY2x1ZGUgIldpbmRvd0ZlYXR1cmVzLmgiCiAjaW5jbHVkZSAi
TG9jYWxpemVkU3RyaW5ncy5oIgogI2luY2x1ZGUgIkNhY2hlLmgiCkBAIC0xMjk4LDYgKzEyOTks
MTAgQEAgdm9pZCBRV2ViUGFnZVByaXZhdGU6OmR5bmFtaWNQcm9wZXJ0eUNoYW5nZUV2ZW50KFFE
eW5hbWljUHJvcGVydHlDaGFuZ2VFdmVudCogZXYKICAgICAgICAgZnJhbWUtPnRpbGVkQmFja2lu
Z1N0b3JlKCktPnNldEtlZXBBbmRDb3ZlckFyZWFNdWx0aXBsaWVycyhrZWVwTXVsdGlwbGllciwg
Y292ZXJNdWx0aXBsaWVyKTsKICAgICB9CiAjZW5kaWYKKyAgICBlbHNlIGlmIChldmVudC0+cHJv
cGVydHlOYW1lKCkgPT0gIl9xX3dlYkluc3BlY3RvclNlcnZlclBvcnQiKSB7CisgICAgICAgIElu
c3BlY3RvclNlcnZlclF0KiBpbnNwZWN0b3JTZXJ2ZXIgPSBJbnNwZWN0b3JTZXJ2ZXJRdDo6c2Vy
dmVyKCk7CisgICAgICAgIGluc3BlY3RvclNlcnZlci0+bGlzdGVuKGluc3BlY3RvclNlcnZlclBv
cnQoKSk7CisgICAgfQogfQogI2VuZGlmCiAKQEAgLTE1NTUsNiArMTU2MCwxNCBAQCBJbnNwZWN0
b3JDb250cm9sbGVyKiBRV2ViUGFnZVByaXZhdGU6Omluc3BlY3RvckNvbnRyb2xsZXIoKQogI2Vu
ZGlmCiB9CiAKK3F1aW50MTYgUVdlYlBhZ2VQcml2YXRlOjppbnNwZWN0b3JTZXJ2ZXJQb3J0KCkK
K3sKKyNpZiBFTkFCTEUoSU5TUEVDVE9SKSAmJiAhZGVmaW5lZChRVF9OT19QUk9QRVJUSUVTKQor
ICAgIGlmIChxICYmIHEtPnByb3BlcnR5KCJfcV93ZWJJbnNwZWN0b3JTZXJ2ZXJQb3J0IikuaXNW
YWxpZCgpKQorICAgICAgICByZXR1cm4gcS0+cHJvcGVydHkoIl9xX3dlYkluc3BlY3RvclNlcnZl
clBvcnQiKS50b0ludCgpOworI2VuZGlmCisgICAgcmV0dXJuIDA7Cit9CiAKIC8qIQogICAgXGVu
dW0gUVdlYlBhZ2U6OkZpbmRGbGFnCmRpZmYgLS1naXQgYS9XZWJLaXQvcXQvQXBpL3F3ZWJwYWdl
LmggYi9XZWJLaXQvcXQvQXBpL3F3ZWJwYWdlLmgKaW5kZXggYjE0NDFmZjQzYzZmZTkyYTM0Njc0
ZjdjN2RjYzVhN2IxNjdmZDRkOC4uYTIwMDc0Zjk4ZDUwNWUyNjI3NTY0MGFlODQyMTM0YTVhZjIx
N2I0NiAxMDA2NDQKLS0tIGEvV2ViS2l0L3F0L0FwaS9xd2VicGFnZS5oCisrKyBiL1dlYktpdC9x
dC9BcGkvcXdlYnBhZ2UuaApAQCAtNTUsNiArNTUsNyBAQCBuYW1lc3BhY2UgV2ViQ29yZSB7CiAg
ICAgY2xhc3MgRWRpdG9yQ2xpZW50UXQ7CiAgICAgY2xhc3MgRnJhbWVMb2FkZXJDbGllbnRRdDsK
ICAgICBjbGFzcyBJbnNwZWN0b3JDbGllbnRRdDsKKyAgICBjbGFzcyBJbnNwZWN0b3JTZXJ2ZXJS
ZXF1ZXN0SGFuZGxlclF0OwogICAgIGNsYXNzIEluc3BlY3RvckZyb250ZW5kQ2xpZW50UXQ7CiAg
ICAgY2xhc3MgTm90aWZpY2F0aW9uUHJlc2VudGVyQ2xpZW50UXQ7CiAgICAgY2xhc3MgR2VvbG9j
YXRpb25QZXJtaXNzaW9uQ2xpZW50UXQ7CkBAIC00MjUsNiArNDI2LDcgQEAgcHJpdmF0ZToKICAg
ICBmcmllbmQgY2xhc3MgV2ViQ29yZTo6RWRpdG9yQ2xpZW50UXQ7CiAgICAgZnJpZW5kIGNsYXNz
IFdlYkNvcmU6OkZyYW1lTG9hZGVyQ2xpZW50UXQ7CiAgICAgZnJpZW5kIGNsYXNzIFdlYkNvcmU6
Okluc3BlY3RvckNsaWVudFF0OworICAgIGZyaWVuZCBjbGFzcyBXZWJDb3JlOjpJbnNwZWN0b3JT
ZXJ2ZXJSZXF1ZXN0SGFuZGxlclF0OwogICAgIGZyaWVuZCBjbGFzcyBXZWJDb3JlOjpJbnNwZWN0
b3JGcm9udGVuZENsaWVudFF0OwogICAgIGZyaWVuZCBjbGFzcyBXZWJDb3JlOjpOb3RpZmljYXRp
b25QcmVzZW50ZXJDbGllbnRRdDsKICAgICBmcmllbmQgY2xhc3MgV2ViQ29yZTo6R2VvbG9jYXRp
b25QZXJtaXNzaW9uQ2xpZW50UXQ7CmRpZmYgLS1naXQgYS9XZWJLaXQvcXQvQXBpL3F3ZWJwYWdl
X3AuaCBiL1dlYktpdC9xdC9BcGkvcXdlYnBhZ2VfcC5oCmluZGV4IDgyZjUzNjViNzY4NDdkNjky
ZDgwNDRhYTRlMmVhNDYyMjlmN2E1OTMuLjc0ZTdjYTE3ZDEwNDZhMDY2MDIxNjU1YTQ4OGZmNjgw
MjQzN2FmZGMgMTAwNjQ0Ci0tLSBhL1dlYktpdC9xdC9BcGkvcXdlYnBhZ2VfcC5oCisrKyBiL1dl
YktpdC9xdC9BcGkvcXdlYnBhZ2VfcC5oCkBAIC0xMzksNiArMTM5LDcgQEAgcHVibGljOgogICAg
IHZvaWQgc2V0SW5zcGVjdG9yKFFXZWJJbnNwZWN0b3IqKTsKICAgICBRV2ViSW5zcGVjdG9yKiBn
ZXRPckNyZWF0ZUluc3BlY3RvcigpOwogICAgIFdlYkNvcmU6Okluc3BlY3RvckNvbnRyb2xsZXIq
IGluc3BlY3RvckNvbnRyb2xsZXIoKTsKKyAgICBxdWludDE2IGluc3BlY3RvclNlcnZlclBvcnQo
KTsKIAogI2lmbmRlZiBRVF9OT19TSE9SVENVVAogICAgIHN0YXRpYyBRV2ViUGFnZTo6V2ViQWN0
aW9uIGVkaXRvckFjdGlvbkZvcktleUV2ZW50KFFLZXlFdmVudCogZXZlbnQpOwpkaWZmIC0tZ2l0
IGEvV2ViS2l0L3F0L0NoYW5nZUxvZyBiL1dlYktpdC9xdC9DaGFuZ2VMb2cKaW5kZXggYmRiODE0
NTFlMThhOWRkYjliYjgzNTBiMTUzMjJmMTJkNDgyM2YxNC4uYzU2NWMwZjc0ZjczMzM2Zjk1Nzhk
OTRiZDNiNjRmNTQwYzY4N2UyNSAxMDA2NDQKLS0tIGEvV2ViS2l0L3F0L0NoYW5nZUxvZworKysg
Yi9XZWJLaXQvcXQvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsNjIgQEAKKzIwMTAtMDktMTMgIEphbWV5
IEhpY2tzICA8amFtZXkuaGlja3NAbm9raWEuY29tPgorCisgICAgICAgIFJldmlld2VkIGJ5IE5P
Qk9EWSAoT09QUyEpLgorCisgICAgICAgIFtRdF0gV2ViIEluc3BlY3RvcjogUmVtb3RlIFdlYiBJ
bnNwZWN0b3Igc3VwcG9ydCBmb3IgUXRXZWJLaXQKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtp
dC5vcmcvc2hvd19idWcuY2dpP2lkPTQzOTg4CisKKyAgICAgICAgUnVucyBhIHdlYiBkZWJ1ZyBz
ZXJ2ZXIgb24gcG9ydCBzcGVjaWZpZWQgYnkgUXRUZXN0QnJvd3NlcgorICAgICAgICBhcmd1bWVu
dCAtcmVtb3RlLWluc3BlY3Rvci1wb3J0LiBQcm9wZXJ0eQorICAgICAgICBfcV93ZWJJbnNwZWN0
b3JTZXJ2ZXJQb3J0IG9mIHRoZSBRV2ViUGFnZSBpbnN0YW5jZSB3aWxsIGJlIHNldAorICAgICAg
ICBhY2NvcmRpbmcgdG8gdGhlIGFyZ3VtZW50LiBBbGwgcGFnZXMgd2l0aCB0aGF0IHByb3BlcnR5
IHNldCB3aWxsCisgICAgICAgIGJlIHJlbW90ZWx5IGluc3BlY3RhYmxlLgorCisgICAgICAgIFVS
TCBmb3IgcmVtb3RlIGluc3BlY3Rpb24gb2YgZmlyc3QgUVdlYlBhZ2UgaXMKKyAgICAgICAgICAg
IGh0dHA6Ly9sb2NhbGhvc3Q6OTIyMi9kZXZ0b29scy9wYWdlLzEKKyAgICAgICAgd2hlcmUgMSBp
cyB0aGUgbnVtYmVyIG9mIHRoZSBRV2ViUGFnZSBpbnN0YW5jZS4KKworICAgICAgICAqIEFwaS9x
d2ViaW5zcGVjdG9yLmNwcDoKKyAgICAgICAgKFFXZWJJbnNwZWN0b3JQcml2YXRlOjphdHRhY2hS
ZW1vdGVGcm9udGVuZCk6CisgICAgICAgIChRV2ViSW5zcGVjdG9yUHJpdmF0ZTo6ZGV0YWNoUmVt
b3RlRnJvbnRlbmQpOgorICAgICAgICAqIEFwaS9xd2ViaW5zcGVjdG9yX3AuaDoKKyAgICAgICAg
KFFXZWJJbnNwZWN0b3JQcml2YXRlOjpRV2ViSW5zcGVjdG9yUHJpdmF0ZSk6CisgICAgICAgICog
QXBpL3F3ZWJwYWdlLmNwcDoKKyAgICAgICAgKFFXZWJQYWdlUHJpdmF0ZTo6ZHluYW1pY1Byb3Bl
cnR5Q2hhbmdlRXZlbnQpOgorICAgICAgICAoUVdlYlBhZ2VQcml2YXRlOjppbnNwZWN0b3JTZXJ2
ZXJQb3J0KToKKyAgICAgICAgKFFXZWJQYWdlOjp+UVdlYlBhZ2UpOgorICAgICAgICAqIEFwaS9x
d2VicGFnZS5oOgorICAgICAgICAqIEFwaS9xd2VicGFnZV9wLmg6CisgICAgICAgICogV2ViQ29y
ZVN1cHBvcnQvSW5zcGVjdG9yQ2xpZW50UXQuY3BwOgorICAgICAgICAoV2ViQ29yZTo6SW5zcGVj
dG9yQ2xpZW50UXQ6Okluc3BlY3RvckNsaWVudFF0KToKKyAgICAgICAgKFdlYkNvcmU6Okluc3Bl
Y3RvckNsaWVudFF0OjppbnNwZWN0b3JEZXN0cm95ZWQpOgorICAgICAgICAoV2ViQ29yZTo6SW5z
cGVjdG9yQ2xpZW50UXQ6Om9wZW5JbnNwZWN0b3JGcm9udGVuZCk6CisgICAgICAgIChXZWJDb3Jl
OjpJbnNwZWN0b3JDbGllbnRRdDo6YXR0YWNoUmVtb3RlRnJvbnRlbmQpOgorICAgICAgICAoV2Vi
Q29yZTo6SW5zcGVjdG9yQ2xpZW50UXQ6OmRldGFjaFJlbW90ZUZyb250ZW5kKToKKyAgICAgICAg
KFdlYkNvcmU6Okluc3BlY3RvckNsaWVudFF0OjpzZW5kTWVzc2FnZVRvRnJvbnRlbmQpOgorICAg
ICAgICAqIFdlYkNvcmVTdXBwb3J0L0luc3BlY3RvckNsaWVudFF0Lmg6CisgICAgICAgICogV2Vi
Q29yZVN1cHBvcnQvSW5zcGVjdG9yU2VydmVyUXQuY3BwOiBBZGRlZC4KKyAgICAgICAgKFdlYkNv
cmU6OnNldENoYWxsZW5nZU51bWJlcik6CisgICAgICAgIChXZWJDb3JlOjpnZW5lcmF0ZUV4cGVj
dGVkQ2hhbGxlbmdlUmVzcG9uc2UpOgorICAgICAgICAoV2ViQ29yZTo6Z2V0Q2hhbGxlbmdlTnVt
YmVyRnJvbUZpZWxkKToKKyAgICAgICAgKFdlYkNvcmU6Okluc3BlY3RvclNlcnZlclF0OjpzZXJ2
ZXIpOgorICAgICAgICAoV2ViQ29yZTo6SW5zcGVjdG9yU2VydmVyUXQ6Okluc3BlY3RvclNlcnZl
clF0KToKKyAgICAgICAgKFdlYkNvcmU6Okluc3BlY3RvclNlcnZlclF0Ojp+SW5zcGVjdG9yU2Vy
dmVyUXQpOgorICAgICAgICAoV2ViQ29yZTo6SW5zcGVjdG9yU2VydmVyUXQ6Omxpc3Rlbik6Cisg
ICAgICAgIChXZWJDb3JlOjpJbnNwZWN0b3JTZXJ2ZXJRdDo6Y2xvc2UpOgorICAgICAgICAoV2Vi
Q29yZTo6SW5zcGVjdG9yU2VydmVyUXQ6Omluc3BlY3RvckNsaWVudCk6CisgICAgICAgIChXZWJD
b3JlOjpJbnNwZWN0b3JTZXJ2ZXJRdDo6cmVnaXN0ZXJDbGllbnQpOgorICAgICAgICAoV2ViQ29y
ZTo6SW5zcGVjdG9yU2VydmVyUXQ6OnVucmVnaXN0ZXJDbGllbnQpOgorICAgICAgICAoV2ViQ29y
ZTo6SW5zcGVjdG9yU2VydmVyUXQ6Om5ld0Nvbm5lY3Rpb24pOgorICAgICAgICAoV2ViQ29yZTo6
SW5zcGVjdG9yU2VydmVyUmVxdWVzdEhhbmRsZXJRdDo6SW5zcGVjdG9yU2VydmVyUmVxdWVzdEhh
bmRsZXJRdCk6CisgICAgICAgIChXZWJDb3JlOjpJbnNwZWN0b3JTZXJ2ZXJSZXF1ZXN0SGFuZGxl
clF0Ojp+SW5zcGVjdG9yU2VydmVyUmVxdWVzdEhhbmRsZXJRdCk6CisgICAgICAgIChXZWJDb3Jl
OjpJbnNwZWN0b3JTZXJ2ZXJSZXF1ZXN0SGFuZGxlclF0Ojp0Y3BSZWFkeVJlYWQpOgorICAgICAg
ICAoV2ViQ29yZTo6SW5zcGVjdG9yU2VydmVyUmVxdWVzdEhhbmRsZXJRdDo6dGNwQ29ubmVjdGlv
bkRpc2Nvbm5lY3RlZCk6CisgICAgICAgIChXZWJDb3JlOjpJbnNwZWN0b3JTZXJ2ZXJSZXF1ZXN0
SGFuZGxlclF0Ojp3ZWJTb2NrZXRTZW5kKToKKyAgICAgICAgKFdlYkNvcmU6Okluc3BlY3RvclNl
cnZlclJlcXVlc3RIYW5kbGVyUXQ6OndlYlNvY2tldFJlYWR5UmVhZCk6CisgICAgICAgIChXZWJD
b3JlOjpSZW1vdGVGcm9udGVuZENoYW5uZWw6OlJlbW90ZUZyb250ZW5kQ2hhbm5lbCk6CisgICAg
ICAgIChXZWJDb3JlOjpSZW1vdGVGcm9udGVuZENoYW5uZWw6OnNlbmRNZXNzYWdlVG9Gcm9udGVu
ZCk6CisgICAgICAgICogV2ViQ29yZVN1cHBvcnQvSW5zcGVjdG9yU2VydmVyUXQuaDogQWRkZWQu
CisKIDIwMTAtMDgtMjcgIEtlbm5ldGggUm9oZGUgQ2hyaXN0aWFuc2VuICA8a2VubmV0aC5jaHJp
c3RpYW5zZW5Ab3BlbmJvc3NhLm9yZz4KIAogICAgICAgICBSZXZpZXdlZCBieSBBbnR0aSBLb2l2
aXN0by4KZGlmZiAtLWdpdCBhL1dlYktpdC9xdC9XZWJDb3JlU3VwcG9ydC9JbnNwZWN0b3JDbGll
bnRRdC5jcHAgYi9XZWJLaXQvcXQvV2ViQ29yZVN1cHBvcnQvSW5zcGVjdG9yQ2xpZW50UXQuY3Bw
CmluZGV4IDU1YWNhN2Y2ZTRjMjEyYzgzNzcwZTRiNjczMGE4NDAxMzFlM2YyYmYuLjQwMjc3NTEz
NzdiN2I1MTJhOGI5MGUzMjUyNjc3ZTFmM2YzZDM3YjUgMTAwNjQ0Ci0tLSBhL1dlYktpdC9xdC9X
ZWJDb3JlU3VwcG9ydC9JbnNwZWN0b3JDbGllbnRRdC5jcHAKKysrIGIvV2ViS2l0L3F0L1dlYkNv
cmVTdXBwb3J0L0luc3BlY3RvckNsaWVudFF0LmNwcApAQCAtMzIsNyArMzIsMTAgQEAKICNpbmNs
dWRlICJJbnNwZWN0b3JDbGllbnRRdC5oIgogCiAjaW5jbHVkZSAiRnJhbWUuaCIKKyNpbmNsdWRl
ICJJbnNwZWN0b3JCYWNrZW5kRGlzcGF0Y2hlci5oIgogI2luY2x1ZGUgIkluc3BlY3RvckNvbnRy
b2xsZXIuaCIKKyNpbmNsdWRlICJJbnNwZWN0b3JGcm9udGVuZC5oIgorI2luY2x1ZGUgIkluc3Bl
Y3RvclNlcnZlclF0LmgiCiAjaW5jbHVkZSAiTm90SW1wbGVtZW50ZWQuaCIKICNpbmNsdWRlICJQ
YWdlLmgiCiAjaW5jbHVkZSAiUGxhdGZvcm1TdHJpbmcuaCIKQEAgLTk3LDIzICsxMDAsMzYgQEAg
SW5zcGVjdG9yQ2xpZW50UXQ6Okluc3BlY3RvckNsaWVudFF0KFFXZWJQYWdlKiBwYWdlKQogICAg
IDogbV9pbnNwZWN0ZWRXZWJQYWdlKHBhZ2UpCiAgICAgLCBtX2Zyb250ZW5kV2ViUGFnZSgwKQog
ICAgICwgbV9mcm9udGVuZENsaWVudCgwKQote30KK3sKKyAgICBJbnNwZWN0b3JTZXJ2ZXJRdCog
d2ViSW5zcGVjdG9yU2VydmVyID0gSW5zcGVjdG9yU2VydmVyUXQ6OnNlcnZlcigpOworICAgIGlm
ICh3ZWJJbnNwZWN0b3JTZXJ2ZXIpCisgICAgICAgIHdlYkluc3BlY3RvclNlcnZlci0+cmVnaXN0
ZXJDbGllbnQodGhpcyk7Cit9CiAKIHZvaWQgSW5zcGVjdG9yQ2xpZW50UXQ6Omluc3BlY3RvckRl
c3Ryb3llZCgpCiB7CiAgICAgaWYgKG1fZnJvbnRlbmRDbGllbnQpCiAgICAgICAgIG1fZnJvbnRl
bmRDbGllbnQtPmluc3BlY3RvckNsaWVudERlc3Ryb3llZCgpOworCisgICAgSW5zcGVjdG9yU2Vy
dmVyUXQqIHdlYkluc3BlY3RvclNlcnZlciA9IEluc3BlY3RvclNlcnZlclF0OjpzZXJ2ZXIoKTsK
KyAgICBpZiAod2ViSW5zcGVjdG9yU2VydmVyKQorICAgICAgICB3ZWJJbnNwZWN0b3JTZXJ2ZXIt
PnVucmVnaXN0ZXJDbGllbnQodGhpcyk7CisKICAgICBkZWxldGUgdGhpczsKIH0KIAogICAgIAot
dm9pZCBJbnNwZWN0b3JDbGllbnRRdDo6b3Blbkluc3BlY3RvckZyb250ZW5kKFdlYkNvcmU6Oklu
c3BlY3RvckNvbnRyb2xsZXIqKQordm9pZCBJbnNwZWN0b3JDbGllbnRRdDo6b3Blbkluc3BlY3Rv
ckZyb250ZW5kKFdlYkNvcmU6Okluc3BlY3RvckNvbnRyb2xsZXIqIGluc3BlY3RvckNvbnRyb2xs
ZXIpCiB7CiAgICAgUVdlYlZpZXcqIGluc3BlY3RvclZpZXcgPSBuZXcgUVdlYlZpZXc7CiAgICAg
SW5zcGVjdG9yQ2xpZW50V2ViUGFnZSogaW5zcGVjdG9yUGFnZSA9IG5ldyBJbnNwZWN0b3JDbGll
bnRXZWJQYWdlKGluc3BlY3RvclZpZXcpOwogICAgIGluc3BlY3RvclZpZXctPnNldFBhZ2UoaW5z
cGVjdG9yUGFnZSk7CiAKICAgICBRV2ViSW5zcGVjdG9yKiBpbnNwZWN0b3IgPSBtX2luc3BlY3Rl
ZFdlYlBhZ2UtPmQtPmdldE9yQ3JlYXRlSW5zcGVjdG9yKCk7CisgICAgLy8gcmVtb3RlIGZyb250
ZW5kIHdhcyBhdHRhY2hlZAorICAgIGlmIChtX2luc3BlY3RlZFdlYlBhZ2UtPmQtPmluc3BlY3Rv
ci0+ZC0+cmVtb3RlRnJvbnRlbmQpCisgICAgICAgIHJldHVybjsKKwogICAgIC8vIFRoaXMgaXMg
YSBrbm93biBob29rIHRoYXQgYWxsb3dzIGNoYW5naW5nIHRoZSBkZWZhdWx0IFVSTCBmb3IgdGhl
CiAgICAgLy8gV2ViIGluc3BlY3Rvci4gVGhpcyBpcyB1c2VkIGZvciBTREsgcHVycG9zZXMuIFBs
ZWFzZSBrZWVwIHRoaXMgaG9vawogICAgIC8vIGFyb3VuZCBhbmQgZG9uJ3QgcmVtb3ZlIGl0LgpA
QCAtMTQ1LDYgKzE2MSwyNCBAQCB2b2lkIEluc3BlY3RvckNsaWVudFF0OjpyZWxlYXNlRnJvbnRl
bmRQYWdlKCkKICAgICBtX2Zyb250ZW5kQ2xpZW50ID0gMDsKIH0KIAorCit2b2lkIEluc3BlY3Rv
ckNsaWVudFF0OjphdHRhY2hSZW1vdGVGcm9udGVuZChSZW1vdGVGcm9udGVuZENoYW5uZWwqIGNo
YW5uZWwpCit7CisjaWYgRU5BQkxFKElOU1BFQ1RPUikKKyAgICAvLyBDaGFubmVsIHdhcyBhbGxv
Y2F0ZWQgYnkgSW5zcGVjdG9yU2VydmVyUXQuIEhlcmUgd2UgdHJhbnNmZXIgb3duZXJzaGlwIHRv
IGluc3BlY3Rvci4KKyAgICBtX2luc3BlY3RlZFdlYlBhZ2UtPmQtPmluc3BlY3Rvci0+ZC0+YXR0
YWNoUmVtb3RlRnJvbnRlbmQoY2hhbm5lbCk7CisgICAgbV9pbnNwZWN0ZWRXZWJQYWdlLT5kLT5p
bnNwZWN0b3JDb250cm9sbGVyKCktPmNvbm5lY3RGcm9udGVuZCgpOworI2VuZGlmCit9CisKK3Zv
aWQgSW5zcGVjdG9yQ2xpZW50UXQ6OmRldGFjaFJlbW90ZUZyb250ZW5kKCkKK3sKKyNpZiBFTkFC
TEUoSU5TUEVDVE9SKQorICAgIG1faW5zcGVjdGVkV2ViUGFnZS0+ZC0+aW5zcGVjdG9yLT5kLT5k
ZXRhY2hSZW1vdGVGcm9udGVuZCgpOworICAgIG1faW5zcGVjdGVkV2ViUGFnZS0+ZC0+aW5zcGVj
dG9yQ29udHJvbGxlcigpLT5kaXNjb25uZWN0RnJvbnRlbmQoKTsKKyNlbmRpZgorfQorCiB2b2lk
IEluc3BlY3RvckNsaWVudFF0OjpoaWdobGlnaHQoTm9kZSopCiB7CiAgICAgbm90SW1wbGVtZW50
ZWQoKTsKQEAgLTIwMSw2ICsyMzUsMTQgQEAgdm9pZCBJbnNwZWN0b3JDbGllbnRRdDo6c3RvcmVT
ZXR0aW5nKGNvbnN0IFN0cmluZyYga2V5LCBjb25zdCBTdHJpbmcmIHNldHRpbmcpCiAKIGJvb2wg
SW5zcGVjdG9yQ2xpZW50UXQ6OnNlbmRNZXNzYWdlVG9Gcm9udGVuZChjb25zdCBTdHJpbmcmIG1l
c3NhZ2UpCiB7CisgICAgaWYgKG1faW5zcGVjdGVkV2ViUGFnZS0+ZC0+aW5zcGVjdG9yLT5kLT5y
ZW1vdGVGcm9udGVuZCkgeworICAgICAgICBRX0FTU0VSVChtX2luc3BlY3RlZFdlYlBhZ2UtPmQt
Pmluc3BlY3Rvci0+ZC0+cmVtb3RlRnJvbnRlbmQpOworCisgICAgICAgIFJlbW90ZUZyb250ZW5k
Q2hhbm5lbCogc2Vzc2lvbiA9IHFvYmplY3RfY2FzdDxSZW1vdGVGcm9udGVuZENoYW5uZWwqPiht
X2luc3BlY3RlZFdlYlBhZ2UtPmQtPmluc3BlY3Rvci0+ZC0+cmVtb3RlRnJvbnRlbmQpOworICAg
ICAgICBpZiAoc2Vzc2lvbikKKyAgICAgICAgICAgIHNlc3Npb24tPnNlbmRNZXNzYWdlVG9Gcm9u
dGVuZChtZXNzYWdlKTsKKyAgICAgICAgcmV0dXJuIHRydWU7CisgICAgfQogICAgIGlmICghbV9m
cm9udGVuZFdlYlBhZ2UpCiAgICAgICAgIHJldHVybiBmYWxzZTsKIApkaWZmIC0tZ2l0IGEvV2Vi
S2l0L3F0L1dlYkNvcmVTdXBwb3J0L0luc3BlY3RvckNsaWVudFF0LmggYi9XZWJLaXQvcXQvV2Vi
Q29yZVN1cHBvcnQvSW5zcGVjdG9yQ2xpZW50UXQuaAppbmRleCAwMDc0MTU5ZGYyOGY4NzBhNmMw
ZjMzMWRiYmQ3ODA4NzU2YjBiZjlkLi4yNmJhMmNkOWM0ZjU2MDMzYjVlZDE0NzVlMjY5ZjExZjdl
ZWI1YjU3IDEwMDY0NAotLS0gYS9XZWJLaXQvcXQvV2ViQ29yZVN1cHBvcnQvSW5zcGVjdG9yQ2xp
ZW50UXQuaAorKysgYi9XZWJLaXQvcXQvV2ViQ29yZVN1cHBvcnQvSW5zcGVjdG9yQ2xpZW50UXQu
aApAQCAtNDIsOCArNDIsMTAgQEAgY2xhc3MgUVdlYlZpZXc7CiAKIG5hbWVzcGFjZSBXZWJDb3Jl
IHsKIGNsYXNzIEluc3BlY3RvckZyb250ZW5kQ2xpZW50UXQ7CitjbGFzcyBJbnNwZWN0b3JTZXJ2
ZXJSZXF1ZXN0SGFuZGxlclF0OwogY2xhc3MgTm9kZTsKIGNsYXNzIFBhZ2U7CitjbGFzcyBSZW1v
dGVGcm9udGVuZENoYW5uZWw7CiAKIGNsYXNzIEluc3BlY3RvckNsaWVudFF0IDogcHVibGljIElu
c3BlY3RvckNsaWVudCB7CiBwdWJsaWM6CkBAIC02MywxMCArNjUsMTYgQEAgcHVibGljOgogCiAg
ICAgdm9pZCByZWxlYXNlRnJvbnRlbmRQYWdlKCk7CiAKKyAgICB2b2lkIGF0dGFjaFJlbW90ZUZy
b250ZW5kKFJlbW90ZUZyb250ZW5kQ2hhbm5lbCAqY2hhbm5lbCk7CisgICAgdm9pZCBkZXRhY2hS
ZW1vdGVGcm9udGVuZCgpOworCiBwcml2YXRlOgogICAgIFFXZWJQYWdlKiBtX2luc3BlY3RlZFdl
YlBhZ2U7CiAgICAgUVdlYlBhZ2UqIG1fZnJvbnRlbmRXZWJQYWdlOwogICAgIEluc3BlY3RvckZy
b250ZW5kQ2xpZW50UXQqIG1fZnJvbnRlbmRDbGllbnQ7CisgICAgYm9vbCBtX3JlbW90ZUluc3Bl
Y3RvcjsKKworICAgIGZyaWVuZCBjbGFzcyBJbnNwZWN0b3JTZXJ2ZXJSZXF1ZXN0SGFuZGxlclF0
OwogfTsKIAogY2xhc3MgSW5zcGVjdG9yRnJvbnRlbmRDbGllbnRRdCA6IHB1YmxpYyBJbnNwZWN0
b3JGcm9udGVuZENsaWVudExvY2FsIHsKQEAgLTEwMiw2ICsxMTAsNyBAQCBwcml2YXRlOgogICAg
IGJvb2wgbV9kZXN0cm95aW5nSW5zcGVjdG9yVmlldzsKICAgICBJbnNwZWN0b3JDbGllbnRRdCog
bV9pbnNwZWN0b3JDbGllbnQ7CiB9OworCiB9CiAKICNlbmRpZgpkaWZmIC0tZ2l0IGEvV2ViS2l0
L3F0L1dlYkNvcmVTdXBwb3J0L0luc3BlY3RvclNlcnZlclF0LmNwcCBiL1dlYktpdC9xdC9XZWJD
b3JlU3VwcG9ydC9JbnNwZWN0b3JTZXJ2ZXJRdC5jcHAKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5k
ZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uNmMyMjBhNTBlNmIy
ODg5OWE0YTZjZjY4Yzk0ZTZlOWVmNzg0YjYyYQotLS0gL2Rldi9udWxsCisrKyBiL1dlYktpdC9x
dC9XZWJDb3JlU3VwcG9ydC9JbnNwZWN0b3JTZXJ2ZXJRdC5jcHAKQEAgLTAsMCArMSwzNjIgQEAK
Ky8qCisgIENvcHlyaWdodCAoQykgMjAxMCBOb2tpYSBDb3Jwb3JhdGlvbiBhbmQvb3IgaXRzIHN1
YnNpZGlhcnkoLWllcykKKworICBUaGlzIGxpYnJhcnkgaXMgZnJlZSBzb2Z0d2FyZTsgeW91IGNh
biByZWRpc3RyaWJ1dGUgaXQgYW5kL29yCisgIG1vZGlmeSBpdCB1bmRlciB0aGUgdGVybXMgb2Yg
dGhlIEdOVSBMaWJyYXJ5IEdlbmVyYWwgUHVibGljCisgIExpY2Vuc2UgYXMgcHVibGlzaGVkIGJ5
IHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb247IGVpdGhlcgorICB2ZXJzaW9uIDIgb2YgdGhl
IExpY2Vuc2UsIG9yIChhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uCisKKyAgVGhp
cyBsaWJyYXJ5IGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2Vm
dWwsCisgIGJ1dCBXSVRIT1VUIEFOWSBXQVJSQU5UWTsgd2l0aG91dCBldmVuIHRoZSBpbXBsaWVk
IHdhcnJhbnR5IG9mCisgIE1FUkNIQU5UQUJJTElUWSBvciBGSVRORVNTIEZPUiBBIFBBUlRJQ1VM
QVIgUFVSUE9TRS4gIFNlZSB0aGUgR05VCisgIExpYnJhcnkgR2VuZXJhbCBQdWJsaWMgTGljZW5z
ZSBmb3IgbW9yZSBkZXRhaWxzLgorCisgIFlvdSBzaG91bGQgaGF2ZSByZWNlaXZlZCBhIGNvcHkg
b2YgdGhlIEdOVSBMaWJyYXJ5IEdlbmVyYWwgUHVibGljIExpY2Vuc2UKKyAgYWxvbmcgd2l0aCB0
aGlzIGxpYnJhcnk7IHNlZSB0aGUgZmlsZSBDT1BZSU5HLkxJQi4gIElmIG5vdCwgd3JpdGUgdG8K
KyAgdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbiwgSW5jLiwgNTEgRnJhbmtsaW4gU3RyZWV0
LCBGaWZ0aCBGbG9vciwKKyAgQm9zdG9uLCBNQSAwMjExMC0xMzAxLCBVU0EuCisqLworCisKKyNp
bmNsdWRlICJjb25maWcuaCIKKyNpbmNsdWRlICJJbnNwZWN0b3JTZXJ2ZXJRdC5oIgorCisjaW5j
bHVkZSAiSW5zcGVjdG9yQmFja2VuZERpc3BhdGNoZXIuaCIKKyNpbmNsdWRlICJJbnNwZWN0b3JD
bGllbnRRdC5oIgorI2luY2x1ZGUgIk1ENS5oIgorI2luY2x1ZGUgIlBhZ2UuaCIKKyNpbmNsdWRl
ICJxd2VicGFnZS5oIgorI2luY2x1ZGUgInF3ZWJwYWdlX3AuaCIKKyNpbmNsdWRlIDxRRmlsZT4K
KyNpbmNsdWRlIDxRSHR0cEhlYWRlcj4KKyNpbmNsdWRlIDxRSHR0cFJlcXVlc3RIZWFkZXI+Cisj
aW5jbHVkZSA8UUh0dHBSZXNwb25zZUhlYWRlcj4KKyNpbmNsdWRlIDxRU3RyaW5nPgorI2luY2x1
ZGUgPFFTdHJpbmdMaXN0PgorI2luY2x1ZGUgPFFUY3BTZXJ2ZXI+CisjaW5jbHVkZSA8UVRjcFNv
Y2tldD4KKyNpbmNsdWRlIDxRVXJsPgorI2luY2x1ZGUgPFFXaWRnZXQ+CisjaW5jbHVkZSA8cWVu
ZGlhbi5oPgorCituYW1lc3BhY2UgV2ViQ29yZSB7CisKK3N0YXRpYyB2b2lkIHNldENoYWxsZW5n
ZU51bWJlcih1bnNpZ25lZCBjaGFyKiBidWYsIHVpbnQzMl90IG51bWJlcikKK3sKKyAgICB1bnNp
Z25lZCBjaGFyKiBwID0gYnVmICsgMzsKKyAgICBmb3IgKGludCBpID0gMDsgaSA8IDQ7IGkrKykg
eworICAgICAgICAqcCA9IG51bWJlciAmIDB4RkY7CisgICAgICAgIC0tcDsKKyAgICAgICAgbnVt
YmVyID4+PSA4OworICAgIH0KK30KKworc3RhdGljIHZvaWQgZ2VuZXJhdGVFeHBlY3RlZENoYWxs
ZW5nZVJlc3BvbnNlKHVpbnQzMl90IG51bWJlcjEsIHVpbnQzMl90IG51bWJlcjIsIHVuc2lnbmVk
IGNoYXIga2V5M1s4XSwgdW5zaWduZWQgY2hhciBleHBlY3RlZENoYWxsZW5nZVsxNl0pCit7Cisg
ICAgdW5zaWduZWQgY2hhciBjaGFsbGVuZ2VbMTZdOworICAgIHNldENoYWxsZW5nZU51bWJlcigm
Y2hhbGxlbmdlWzBdLCBudW1iZXIxKTsKKyAgICBzZXRDaGFsbGVuZ2VOdW1iZXIoJmNoYWxsZW5n
ZVs0XSwgbnVtYmVyMik7CisgICAgbWVtY3B5KCZjaGFsbGVuZ2VbOF0sIGtleTMsIDgpOworICAg
IE1ENSBtZDU7CisgICAgbWQ1LmFkZEJ5dGVzKGNoYWxsZW5nZSwgc2l6ZW9mKGNoYWxsZW5nZSkp
OworICAgIFZlY3Rvcjx1aW50OF90LCAxNj4gZGlnZXN0OworICAgIG1kNS5jaGVja3N1bShkaWdl
c3QpOworICAgIG1lbWNweShleHBlY3RlZENoYWxsZW5nZSwgZGlnZXN0LmRhdGEoKSwgMTYpOwor
fQorCitzdGF0aWMgcXVpbnQzMiBnZXRDaGFsbGVuZ2VOdW1iZXJGcm9tRmllbGQoUVN0cmluZyBm
aWVsZCkKK3sKKyAgICBRU3RyaW5nIG5TdHJpbmc7CisgICAgaW50IG5TcGFjZXMgPSAwOworICAg
IGZvciAoaW50IGkgPSAwOyBpIDwgZmllbGQuc2l6ZSgpOyBpKyspIHsKKyAgICAgICAgUUNoYXIg
YyA9IGZpZWxkW2ldOworICAgICAgICBpZiAoYyA9PSAoUUNoYXIpJyAnKSB7CisgICAgICAgICAg
ICBuU3BhY2VzKys7CisgICAgICAgIH0gZWxzZSBpZiAoKGMgPj0gKFFDaGFyKScwJykgJiYgKGMg
PD0gKFFDaGFyKSc5JykpIHsKKyAgICAgICAgICAgIG5TdHJpbmcuYXBwZW5kKChRQ2hhciljKTsK
KyAgICAgICAgfQorICAgIH0KKyAgICBxdWludDMyIG51bSA9IG5TdHJpbmcudG9Mb25nKCk7Cisg
ICAgcXVpbnQzMiByZXN1bHQgPSAoblNwYWNlcyA/IChudW0gLyBuU3BhY2VzKSA6IG51bSk7Cisg
ICAgcmV0dXJuIHJlc3VsdDsKK30KKworc3RhdGljIEluc3BlY3RvclNlcnZlclF0KiBzU2VydmVy
OworCitJbnNwZWN0b3JTZXJ2ZXJRdCogSW5zcGVjdG9yU2VydmVyUXQ6OnNlcnZlcigpCit7Cisg
ICAgLy8gc1NlcnZlciBpcyBkZWxldGVkIGluIHVucmVnaXN0ZXJDbGllbnQoKSB3aGVuIHRoZSBs
YXN0IGNsaWVudCBpcyB1bnJlZ2lzdGVyZWQuCisgICAgaWYgKCFzU2VydmVyKQorICAgICAgICBz
U2VydmVyID0gbmV3IEluc3BlY3RvclNlcnZlclF0KCk7CisKKyAgICByZXR1cm4gc1NlcnZlcjsK
K30KKworSW5zcGVjdG9yU2VydmVyUXQ6Okluc3BlY3RvclNlcnZlclF0KCkKKyAgICA6IFFPYmpl
Y3QoKQorICAgICwgbV90Y3BTZXJ2ZXIoMCkKKyAgICAsIG1fcGFnZU51bWJlcigxKQoreworfQor
CitJbnNwZWN0b3JTZXJ2ZXJRdDo6fkluc3BlY3RvclNlcnZlclF0KCkKK3sKKyAgICBjbG9zZSgp
OworfQorCit2b2lkIEluc3BlY3RvclNlcnZlclF0OjpsaXN0ZW4ocXVpbnQxNiBwb3J0KQorewor
ICAgIGlmIChtX3RjcFNlcnZlcikKKyAgICAgICAgcmV0dXJuOworCisgICAgbV90Y3BTZXJ2ZXIg
PSBuZXcgUVRjcFNlcnZlcigpOworICAgIG1fdGNwU2VydmVyLT5saXN0ZW4oUUhvc3RBZGRyZXNz
OjpBbnksIHBvcnQpOworICAgIGNvbm5lY3QobV90Y3BTZXJ2ZXIsIFNJR05BTChuZXdDb25uZWN0
aW9uKCkpLCBTTE9UKG5ld0Nvbm5lY3Rpb24oKSkpOworfQorCit2b2lkIEluc3BlY3RvclNlcnZl
clF0OjpjbG9zZSgpCit7CisgICAgaWYgKG1fdGNwU2VydmVyKSB7CisgICAgICAgIG1fdGNwU2Vy
dmVyLT5jbG9zZSgpOworICAgICAgICBkZWxldGUgbV90Y3BTZXJ2ZXI7CisgICAgfQorICAgIG1f
dGNwU2VydmVyID0gMDsKK30KKworSW5zcGVjdG9yQ2xpZW50UXQqIEluc3BlY3RvclNlcnZlclF0
OjppbnNwZWN0b3JDbGllbnQoaW50IHBhZ2VOdW0pCit7CisgICAgSW5zcGVjdG9yQ2xpZW50UXQq
IGNsaWVudCA9IG1faW5zcGVjdG9yQ2xpZW50cy52YWx1ZShwYWdlTnVtKTsKKyAgICByZXR1cm4g
Y2xpZW50OworfQorCit2b2lkIEluc3BlY3RvclNlcnZlclF0OjpyZWdpc3RlckNsaWVudChJbnNw
ZWN0b3JDbGllbnRRdCogY2xpZW50KQoreworICAgIGlmICghbV9pbnNwZWN0b3JDbGllbnRzLmtl
eShjbGllbnQpKQorICAgICAgICBtX2luc3BlY3RvckNsaWVudHMuaW5zZXJ0KG1fcGFnZU51bWJl
cisrLCBjbGllbnQpOworfQorCit2b2lkIEluc3BlY3RvclNlcnZlclF0Ojp1bnJlZ2lzdGVyQ2xp
ZW50KEluc3BlY3RvckNsaWVudFF0KiBjbGllbnQpCit7CisgICAgaW50IHBhZ2VOdW0gPSBtX2lu
c3BlY3RvckNsaWVudHMua2V5KGNsaWVudCwgLTEpOworICAgIGlmIChwYWdlTnVtID49IDApCisg
ICAgICAgIG1faW5zcGVjdG9yQ2xpZW50cy5yZW1vdmUocGFnZU51bSk7CisgICAgaWYgKCFtX2lu
c3BlY3RvckNsaWVudHMuc2l6ZSgpKSB7CisgICAgICAgIHNTZXJ2ZXIgPSAwOworICAgICAgICBj
bG9zZSgpOworICAgICAgICBkZWxldGVMYXRlcigpOworICAgIH0KK30KKwordm9pZCBJbnNwZWN0
b3JTZXJ2ZXJRdDo6bmV3Q29ubmVjdGlvbigpCit7CisgICAgUVRjcFNvY2tldCogdGNwQ29ubmVj
dGlvbiA9IG1fdGNwU2VydmVyLT5uZXh0UGVuZGluZ0Nvbm5lY3Rpb24oKTsKKyAgICBJbnNwZWN0
b3JTZXJ2ZXJSZXF1ZXN0SGFuZGxlclF0KiBoYW5kbGVyID0gbmV3IEluc3BlY3RvclNlcnZlclJl
cXVlc3RIYW5kbGVyUXQodGNwQ29ubmVjdGlvbiwgdGhpcyk7CisgICAgaGFuZGxlci0+c2V0UGFy
ZW50KHRoaXMpOworfQorCitJbnNwZWN0b3JTZXJ2ZXJSZXF1ZXN0SGFuZGxlclF0OjpJbnNwZWN0
b3JTZXJ2ZXJSZXF1ZXN0SGFuZGxlclF0KFFUY3BTb2NrZXQqIHRjcENvbm5lY3Rpb24sIEluc3Bl
Y3RvclNlcnZlclF0KiBzZXJ2ZXIpCisgICAgOiBRT2JqZWN0KHNlcnZlcikKKyAgICAsIG1fdGNw
Q29ubmVjdGlvbih0Y3BDb25uZWN0aW9uKQorICAgICwgbV9zZXJ2ZXIoc2VydmVyKQorICAgICwg
bV9pbnNwZWN0b3JDbGllbnQoMCkKK3sKKyAgICBtX2VuZE9mSGVhZGVycyA9IGZhbHNlOyAgICAK
KyAgICBtX2NvbnRlbnRMZW5ndGggPSAwOworCisgICAgY29ubmVjdChtX3RjcENvbm5lY3Rpb24s
IFNJR05BTChyZWFkeVJlYWQoKSksIFNMT1QodGNwUmVhZHlSZWFkKCkpKTsKKyAgICBjb25uZWN0
KG1fdGNwQ29ubmVjdGlvbiwgU0lHTkFMKGRpc2Nvbm5lY3RlZCgpKSwgU0xPVCh0Y3BDb25uZWN0
aW9uRGlzY29ubmVjdGVkKCkpKTsKK30KKworSW5zcGVjdG9yU2VydmVyUmVxdWVzdEhhbmRsZXJR
dDo6fkluc3BlY3RvclNlcnZlclJlcXVlc3RIYW5kbGVyUXQoKQoreworfQorCit2b2lkIEluc3Bl
Y3RvclNlcnZlclJlcXVlc3RIYW5kbGVyUXQ6OnRjcFJlYWR5UmVhZCgpCit7CisgICAgUUh0dHBS
ZXF1ZXN0SGVhZGVyIGhlYWRlcjsKKyAgICBib29sIGlzV2ViU29ja2V0ID0gZmFsc2U7CisgICAg
aWYgKCFtX3RjcENvbm5lY3Rpb24pCisgICAgICAgIHJldHVybjsKKworICAgIGlmICghbV9lbmRP
ZkhlYWRlcnMpIHsKKyAgICAgICAgd2hpbGUgKG1fdGNwQ29ubmVjdGlvbi0+Ynl0ZXNBdmFpbGFi
bGUoKSAmJiAhbV9lbmRPZkhlYWRlcnMpIHsKKyAgICAgICAgICAgIFFCeXRlQXJyYXkgbGluZSA9
IG1fdGNwQ29ubmVjdGlvbi0+cmVhZExpbmUoKTsKKyAgICAgICAgICAgIG1fZGF0YS5hcHBlbmQo
bGluZSk7CisgICAgICAgICAgICBpZiAobGluZSA9PSAiXHJcbiIpCisgICAgICAgICAgICAgICAg
bV9lbmRPZkhlYWRlcnMgPSB0cnVlOworICAgICAgICB9CisgICAgICAgIGlmIChtX2VuZE9mSGVh
ZGVycykgeworICAgICAgICAgICAgaGVhZGVyID0gUUh0dHBSZXF1ZXN0SGVhZGVyKFFTdHJpbmc6
OmZyb21MYXRpbjEobV9kYXRhKSk7CisgICAgICAgICAgICBpZiAoaGVhZGVyLmlzVmFsaWQoKSkg
eworICAgICAgICAgICAgICAgIG1fcGF0aCA9IGhlYWRlci5wYXRoKCk7CisgICAgICAgICAgICAg
ICAgbV9jb250ZW50VHlwZSA9IGhlYWRlci5jb250ZW50VHlwZSgpLnRvTGF0aW4xKCk7CisgICAg
ICAgICAgICAgICAgbV9jb250ZW50TGVuZ3RoID0gaGVhZGVyLmNvbnRlbnRMZW5ndGgoKTsKKyAg
ICAgICAgICAgICAgICBpZiAoaGVhZGVyLmhhc0tleSgiVXBncmFkZSIpICYmIChoZWFkZXIudmFs
dWUoIlVwZ3JhZGUiKSA9PSBRTGF0aW4xU3RyaW5nKCJXZWJTb2NrZXQiKSkpCisgICAgICAgICAg
ICAgICAgICAgIGlzV2ViU29ja2V0ID0gdHJ1ZTsKKworICAgICAgICAgICAgICAgIG1fZGF0YS5j
bGVhcigpOworICAgICAgICAgICAgfQorICAgICAgICB9CisgICAgfQorCisgICAgaWYgKG1fZW5k
T2ZIZWFkZXJzKSB7CisgICAgICAgIFFTdHJpbmdMaXN0IHBhdGhBbmRRdWVyeSA9IG1fcGF0aC5z
cGxpdCgiPyIpOworICAgICAgICBtX3BhdGggPSBwYXRoQW5kUXVlcnlbMF07CisgICAgICAgIFFT
dHJpbmdMaXN0IHdvcmRzID0gbV9wYXRoLnNwbGl0KFFTdHJpbmc6OmZyb21MYXRpbjEoIi8iKSk7
CisKKyAgICAgICAgaWYgKGlzV2ViU29ja2V0KSB7CisgICAgICAgICAgICAvLyBzd2l0Y2ggdG8g
d2Vic29ja2V0LXN0eWxlIFdlYlNvY2tldFNlcnZpY2UgbWVzc2FnaW5nCisgICAgICAgICAgICBp
ZiAobV90Y3BDb25uZWN0aW9uKSB7CisgICAgICAgICAgICAgICAgbV90Y3BDb25uZWN0aW9uLT5k
aXNjb25uZWN0KFNJR05BTChyZWFkeVJlYWQoKSkpOworICAgICAgICAgICAgICAgIGNvbm5lY3Qo
bV90Y3BDb25uZWN0aW9uLCBTSUdOQUwocmVhZHlSZWFkKCkpLCBTTE9UKHdlYlNvY2tldFJlYWR5
UmVhZCgpKSk7CisKKyAgICAgICAgICAgICAgICBRQnl0ZUFycmF5IGtleTMgPSBtX3RjcENvbm5l
Y3Rpb24tPnJlYWQoOCk7CisKKyAgICAgICAgICAgICAgICBxdWludDMyIG51bWJlcjEgPSBnZXRD
aGFsbGVuZ2VOdW1iZXJGcm9tRmllbGQoaGVhZGVyLnZhbHVlKCJTZWMtV2ViU29ja2V0LUtleTEi
KSk7CisgICAgICAgICAgICAgICAgcXVpbnQzMiBudW1iZXIyID0gZ2V0Q2hhbGxlbmdlTnVtYmVy
RnJvbUZpZWxkKGhlYWRlci52YWx1ZSgiU2VjLVdlYlNvY2tldC1LZXkyIikpOworCisgICAgICAg
ICAgICAgICAgY2hhciByZXNwb25zZURhdGFbMTZdOworICAgICAgICAgICAgICAgIGdlbmVyYXRl
RXhwZWN0ZWRDaGFsbGVuZ2VSZXNwb25zZShudW1iZXIxLCBudW1iZXIyLCAodW5zaWduZWQgY2hh
ciopa2V5My5kYXRhKCksICh1bnNpZ25lZCBjaGFyKilyZXNwb25zZURhdGEpOworICAgICAgICAg
ICAgICAgIFFCeXRlQXJyYXkgcmVzcG9uc2UocmVzcG9uc2VEYXRhLCBzaXplb2YocmVzcG9uc2VE
YXRhKSk7CisKKyAgICAgICAgICAgICAgICBRSHR0cFJlc3BvbnNlSGVhZGVyIHJlc3BvbnNlSGVh
ZGVyKDEwMSwgIldlYlNvY2tldCBQcm90b2NvbCBIYW5kc2hha2UiLCAxLCAxKTsKKyAgICAgICAg
ICAgICAgICByZXNwb25zZUhlYWRlci5zZXRWYWx1ZSgiVXBncmFkZSIsIGhlYWRlci52YWx1ZSgi
VXBncmFkZSIpKTsKKyAgICAgICAgICAgICAgICByZXNwb25zZUhlYWRlci5zZXRWYWx1ZSgiQ29u
bmVjdGlvbiIsIGhlYWRlci52YWx1ZSgiQ29ubmVjdGlvbiIpKTsKKyAgICAgICAgICAgICAgICBy
ZXNwb25zZUhlYWRlci5zZXRWYWx1ZSgiU2VjLVdlYlNvY2tldC1PcmlnaW4iLCBoZWFkZXIudmFs
dWUoIk9yaWdpbiIpKTsKKyAgICAgICAgICAgICAgICByZXNwb25zZUhlYWRlci5zZXRWYWx1ZSgi
U2VjLVdlYlNvY2tldC1Mb2NhdGlvbiIsICgid3M6Ly8iICsgaGVhZGVyLnZhbHVlKCJIb3N0Iikg
KyBtX3BhdGgpKTsKKyAgICAgICAgICAgICAgICByZXNwb25zZUhlYWRlci5zZXRDb250ZW50TGVu
Z3RoKHJlc3BvbnNlLnNpemUoKSk7CisgICAgICAgICAgICAgICAgbV90Y3BDb25uZWN0aW9uLT53
cml0ZShyZXNwb25zZUhlYWRlci50b1N0cmluZygpLnRvTGF0aW4xKCkpOworICAgICAgICAgICAg
ICAgIG1fdGNwQ29ubmVjdGlvbi0+d3JpdGUocmVzcG9uc2UpOworICAgICAgICAgICAgICAgIG1f
dGNwQ29ubmVjdGlvbi0+Zmx1c2goKTsKKworICAgICAgICAgICAgICAgIGlmICgod29yZHMuc2l6
ZSgpID09IDQpCisgICAgICAgICAgICAgICAgICAgICYmICh3b3Jkc1sxXSA9PSBRU3RyaW5nOjpm
cm9tTGF0aW4xKCJkZXZ0b29scyIpKQorICAgICAgICAgICAgICAgICAgICAmJiAod29yZHNbMl0g
PT0gUVN0cmluZzo6ZnJvbUxhdGluMSgicGFnZSIpKSkgeworICAgICAgICAgICAgICAgICAgICBp
bnQgcGFnZU51bSA9IHdvcmRzWzNdLnRvSW50KCk7CisKKyAgICAgICAgICAgICAgICAgICAgbV9p
bnNwZWN0b3JDbGllbnQgPSBtX3NlcnZlci0+aW5zcGVjdG9yQ2xpZW50KHBhZ2VOdW0pOworICAg
ICAgICAgICAgICAgICAgICAvLyBhdHRhY2ggcmVtb3RlRnJvbnRlbmRDaGFubmVsIHRvIGluc3Bl
Y3RvciwgYWxzbyB0cmFuc2ZlcnJpbmcgb3duZXJzaGlwCisgICAgICAgICAgICAgICAgICAgIGlm
IChtX2luc3BlY3RvckNsaWVudCkKKyAgICAgICAgICAgICAgICAgICAgICAgIG1faW5zcGVjdG9y
Q2xpZW50LT5hdHRhY2hSZW1vdGVGcm9udGVuZChuZXcgUmVtb3RlRnJvbnRlbmRDaGFubmVsKHRo
aXMpKTsKKyAgICAgICAgICAgICAgICB9CisKKyAgICAgICAgICAgIH0KKworICAgICAgICAgICAg
cmV0dXJuOworICAgICAgICB9CisgICAgICAgIGlmIChtX2NvbnRlbnRMZW5ndGggJiYgKG1fdGNw
Q29ubmVjdGlvbi0+Ynl0ZXNBdmFpbGFibGUoKSA8IG1fY29udGVudExlbmd0aCkpCisgICAgICAg
ICAgICByZXR1cm47CisKKyAgICAgICAgUUJ5dGVBcnJheSBjb250ZW50ID0gbV90Y3BDb25uZWN0
aW9uLT5yZWFkKG1fY29udGVudExlbmd0aCk7CisgICAgICAgIG1fZW5kT2ZIZWFkZXJzID0gZmFs
c2U7CisKKyAgICAgICAgUVN0cmluZyBwYXRoID0gUVN0cmluZygiOiUxIikuYXJnKG1fcGF0aCk7
CisgICAgICAgIFFGaWxlIGZpbGUocGF0aCk7CisgICAgICAgIFFCeXRlQXJyYXkgcmVzcG9uc2U7
CisgICAgICAgIC8vIEl0IHNlZW1zIHRoYXQgdGhlcmUgc2hvdWxkIGJlIGFuIGVudW0gb3IgZGVm
aW5lIGZvciB0aGVzZSBzdGF0dXMgY29kZXMgc29tZXdoZXJlIGluIFF0IG9yIFdlYktpdCwKKyAg
ICAgICAgLy8gYnV0IGdyZXAgZmFpbHMgdG8gdHVybiBvbmUgdXAuCisgICAgICAgIC8vIFFOZXR3
b3JrIHVzZXMgdGhlIG51bWVyaWMgdmFsdWVzIGRpcmVjdGx5LgorICAgICAgICBpbnQgY29kZSA9
IDIwMDsKKyAgICAgICAgUVN0cmluZyB0ZXh0ID0gUVN0cmluZzo6ZnJvbUxhdGluMSgiT0siKTsK
KyAgICAgICAgaWYgKGZpbGUuZXhpc3RzKCkpIHsKKyAgICAgICAgICAgIGZpbGUub3BlbihRSU9E
ZXZpY2U6OlJlYWRPbmx5KTsKKyAgICAgICAgICAgIHJlc3BvbnNlID0gZmlsZS5yZWFkQWxsKCk7
CisgICAgICAgIH0gZWxzZSB7CisgICAgICAgICAgICBjb2RlID0gNDA0OworICAgICAgICAgICAg
dGV4dCA9IFFTdHJpbmc6OmZyb21MYXRpbjEoIk5vdCBPSyIpOworICAgICAgICB9CisKKyAgICAg
ICAgUUh0dHBSZXNwb25zZUhlYWRlciByZXNwb25zZUhlYWRlcihjb2RlLCB0ZXh0LCAxLCAwKTsK
KyAgICAgICAgcmVzcG9uc2VIZWFkZXIuc2V0Q29udGVudExlbmd0aChyZXNwb25zZS5zaXplKCkp
OworICAgICAgICBpZiAoIW1fY29udGVudFR5cGUuaXNFbXB0eSgpKQorICAgICAgICAgICAgcmVz
cG9uc2VIZWFkZXIuc2V0Q29udGVudFR5cGUoUVN0cmluZzo6ZnJvbUxhdGluMShtX2NvbnRlbnRU
eXBlKSk7CisKKyAgICAgICAgUUJ5dGVBcnJheSBhc2NpaUhlYWRlciA9IHJlc3BvbnNlSGVhZGVy
LnRvU3RyaW5nKCkudG9Bc2NpaSgpOworICAgICAgICBtX3RjcENvbm5lY3Rpb24tPndyaXRlKGFz
Y2lpSGVhZGVyKTsKKworICAgICAgICBtX3RjcENvbm5lY3Rpb24tPndyaXRlKHJlc3BvbnNlKTsK
KyAgICAgICAgbV90Y3BDb25uZWN0aW9uLT5mbHVzaCgpOworICAgICAgICBtX3RjcENvbm5lY3Rp
b24tPmNsb3NlKCk7CisKKyAgICAgICAgcmV0dXJuOworICAgIH0KK30KKwordm9pZCBJbnNwZWN0
b3JTZXJ2ZXJSZXF1ZXN0SGFuZGxlclF0Ojp0Y3BDb25uZWN0aW9uRGlzY29ubmVjdGVkKCkKK3sK
KyAgICBpZiAobV9pbnNwZWN0b3JDbGllbnQpCisgICAgICAgIG1faW5zcGVjdG9yQ2xpZW50LT5k
ZXRhY2hSZW1vdGVGcm9udGVuZCgpOworICAgIG1fdGNwQ29ubmVjdGlvbi0+ZGVsZXRlTGF0ZXIo
KTsKKyAgICBtX3RjcENvbm5lY3Rpb24gPSAwOworfQorCitpbnQgSW5zcGVjdG9yU2VydmVyUmVx
dWVzdEhhbmRsZXJRdDo6d2ViU29ja2V0U2VuZChRQnl0ZUFycmF5IHBheWxvYWQpCit7CisgICAg
UV9BU1NFUlQobV90Y3BDb25uZWN0aW9uKTsKKyAgICBtX3RjcENvbm5lY3Rpb24tPnB1dENoYXIo
MHgwMCk7CisgICAgaW50IG5CeXRlcyA9IG1fdGNwQ29ubmVjdGlvbi0+d3JpdGUocGF5bG9hZCk7
CisgICAgbV90Y3BDb25uZWN0aW9uLT5wdXRDaGFyKDB4RkYpOworICAgIG1fdGNwQ29ubmVjdGlv
bi0+Zmx1c2goKTsKKyAgICByZXR1cm4gbkJ5dGVzOworfQorCitpbnQgSW5zcGVjdG9yU2VydmVy
UmVxdWVzdEhhbmRsZXJRdDo6d2ViU29ja2V0U2VuZChjb25zdCBjaGFyKiBkYXRhLCBzaXplX3Qg
bGVuZ3RoKQoreworICAgIFFfQVNTRVJUKG1fdGNwQ29ubmVjdGlvbik7CisgICAgbV90Y3BDb25u
ZWN0aW9uLT5wdXRDaGFyKDB4MDApOworICAgIGludCBuQnl0ZXMgPSBtX3RjcENvbm5lY3Rpb24t
PndyaXRlKGRhdGEsIGxlbmd0aCk7CisgICAgbV90Y3BDb25uZWN0aW9uLT5wdXRDaGFyKDB4RkYp
OworICAgIG1fdGNwQ29ubmVjdGlvbi0+Zmx1c2goKTsKKyAgICByZXR1cm4gbkJ5dGVzOworfQor
Cit2b2lkIEluc3BlY3RvclNlcnZlclJlcXVlc3RIYW5kbGVyUXQ6OndlYlNvY2tldFJlYWR5UmVh
ZCgpCit7CisgICAgUV9BU1NFUlQobV90Y3BDb25uZWN0aW9uKTsKKyAgICBpZiAoIW1fdGNwQ29u
bmVjdGlvbi0+Ynl0ZXNBdmFpbGFibGUoKSkKKyAgICAgICAgcmV0dXJuOworICAgIFFCeXRlQXJy
YXkgY29udGVudCA9IG1fdGNwQ29ubmVjdGlvbi0+cmVhZChtX3RjcENvbm5lY3Rpb24tPmJ5dGVz
QXZhaWxhYmxlKCkpOworICAgIG1fZGF0YS5hcHBlbmQoY29udGVudCk7CisgICAgd2hpbGUgKG1f
ZGF0YS5zaXplKCkgPiAwKSB7CisgICAgICAgIC8vIGZpcnN0IGJ5dGUgaW4gd2Vic29ja2V0IGZy
YW1lIHNob3VsZCBiZSAwCisgICAgICAgIFFfQVNTRVJUKCFtX2RhdGFbMF0pOworCisgICAgICAg
IGlmIChtX2RhdGFbMF0pIHsKKyAgICAgICAgICAgIHFDcml0aWNhbCgpIDw8ICAid2ViU29ja2V0
UmVhZHlSZWFkOiB1bmtub3duIGZyYW1lIHR5cGUiIDw8IG1fZGF0YVswXTsKKyAgICAgICAgICAg
IG1fZGF0YS5jbGVhcigpOworICAgICAgICAgICAgbV90Y3BDb25uZWN0aW9uLT5jbG9zZSgpOwor
ICAgICAgICAgICAgcmV0dXJuOworICAgICAgICB9CisgICAgICAgIC8vIGVuZCBvZiB3ZWJzb2Nr
ZXQgZnJhbWUgaW5kaWNhdGVkIGJ5IDB4ZmYKKyAgICAgICAgaW50IHBvcyA9IG1fZGF0YS5pbmRl
eE9mKDB4ZmYsIDEpOworICAgICAgICBpZiAocG9zIDwgMSkKKyAgICAgICAgICAgIHJldHVybjsK
KworICAgICAgICBzaXplX3QgbGVuZ3RoID0gcG9zIC0gMTsKKworICAgICAgICBRQnl0ZUFycmF5
IHBheWxvYWQgPSBtX2RhdGEubWlkKDEsIGxlbmd0aCk7CisKKyAgICAgICAgaWYgKG1faW5zcGVj
dG9yQ2xpZW50KSB7CisgICAgICAgICAgSW5zcGVjdG9yQ29udHJvbGxlciogaW5zcGVjdG9yQ29u
dHJvbGxlciA9IG1faW5zcGVjdG9yQ2xpZW50LT5tX2luc3BlY3RlZFdlYlBhZ2UtPmQtPnBhZ2Ut
Pmluc3BlY3RvckNvbnRyb2xsZXIoKTsKKyAgICAgICAgICBpbnNwZWN0b3JDb250cm9sbGVyLT5p
bnNwZWN0b3JCYWNrZW5kRGlzcGF0Y2hlcigpLT5kaXNwYXRjaChRU3RyaW5nOjpmcm9tVXRmOChw
YXlsb2FkKSk7CisgICAgICAgIH0KKworICAgICAgICBtX2RhdGEgPSBtX2RhdGEubWlkKGxlbmd0
aCArIDIpOworICAgIH0KK30KKworUmVtb3RlRnJvbnRlbmRDaGFubmVsOjpSZW1vdGVGcm9udGVu
ZENoYW5uZWwoSW5zcGVjdG9yU2VydmVyUmVxdWVzdEhhbmRsZXJRdCogcmVxdWVzdEhhbmRsZXIp
CisgICAgOiBRT2JqZWN0KHJlcXVlc3RIYW5kbGVyKQorICAgICwgbV9yZXF1ZXN0SGFuZGxlcihy
ZXF1ZXN0SGFuZGxlcikKK3sKK30KKworYm9vbCBSZW1vdGVGcm9udGVuZENoYW5uZWw6OnNlbmRN
ZXNzYWdlVG9Gcm9udGVuZChjb25zdCBTdHJpbmcgJm1lc3NhZ2UpCit7CisgICAgaWYgKCFtX3Jl
cXVlc3RIYW5kbGVyKQorICAgICAgICByZXR1cm4gZmFsc2U7CisgICAgQ1N0cmluZyBjc3RyID0g
bWVzc2FnZS51dGY4KCk7CisgICAgcmV0dXJuIG1fcmVxdWVzdEhhbmRsZXItPndlYlNvY2tldFNl
bmQoY3N0ci5kYXRhKCksIGNzdHIubGVuZ3RoKCkpOworfQorCit9CmRpZmYgLS1naXQgYS9XZWJL
aXQvcXQvV2ViQ29yZVN1cHBvcnQvSW5zcGVjdG9yU2VydmVyUXQuaCBiL1dlYktpdC9xdC9XZWJD
b3JlU3VwcG9ydC9JbnNwZWN0b3JTZXJ2ZXJRdC5oCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4
IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjAzOTUyNTgyYWU2OTYx
MjhlZmZlOGExZGQ1MzU5YWNhNDAzMmM4ZWIKLS0tIC9kZXYvbnVsbAorKysgYi9XZWJLaXQvcXQv
V2ViQ29yZVN1cHBvcnQvSW5zcGVjdG9yU2VydmVyUXQuaApAQCAtMCwwICsxLDExMSBAQAorLyoK
KyAgICBDb3B5cmlnaHQgKEMpIDIwMTAgTm9raWEgQ29ycG9yYXRpb24gYW5kL29yIGl0cyBzdWJz
aWRpYXJ5KC1pZXMpCisKKyAgICBUaGlzIGxpYnJhcnkgaXMgZnJlZSBzb2Z0d2FyZTsgeW91IGNh
biByZWRpc3RyaWJ1dGUgaXQgYW5kL29yCisgICAgbW9kaWZ5IGl0IHVuZGVyIHRoZSB0ZXJtcyBv
ZiB0aGUgR05VIExpYnJhcnkgR2VuZXJhbCBQdWJsaWMKKyAgICBMaWNlbnNlIGFzIHB1Ymxpc2hl
ZCBieSB0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uOyBlaXRoZXIKKyAgICB2ZXJzaW9uIDIg
b2YgdGhlIExpY2Vuc2UsIG9yIChhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uCisK
KyAgICBUaGlzIGxpYnJhcnkgaXMgZGlzdHJpYnV0ZWQgaW4gdGhlIGhvcGUgdGhhdCBpdCB3aWxs
IGJlIHVzZWZ1bCwKKyAgICBidXQgV0lUSE9VVCBBTlkgV0FSUkFOVFk7IHdpdGhvdXQgZXZlbiB0
aGUgaW1wbGllZCB3YXJyYW50eSBvZgorICAgIE1FUkNIQU5UQUJJTElUWSBvciBGSVRORVNTIEZP
UiBBIFBBUlRJQ1VMQVIgUFVSUE9TRS4gIFNlZSB0aGUgR05VCisgICAgTGlicmFyeSBHZW5lcmFs
IFB1YmxpYyBMaWNlbnNlIGZvciBtb3JlIGRldGFpbHMuCisKKyAgICBZb3Ugc2hvdWxkIGhhdmUg
cmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgTGlicmFyeSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNl
CisgICAgYWxvbmcgd2l0aCB0aGlzIGxpYnJhcnk7IHNlZSB0aGUgZmlsZSBDT1BZSU5HLkxJQi4g
IElmIG5vdCwgd3JpdGUgdG8KKyAgICB0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uLCBJbmMu
LCA1MSBGcmFua2xpbiBTdHJlZXQsIEZpZnRoIEZsb29yLAorICAgIEJvc3RvbiwgTUEgMDIxMTAt
MTMwMSwgVVNBLgorKi8KKworI2lmbmRlZiBJbnNwZWN0b3JTZXJ2ZXJRdF9oCisjZGVmaW5lIElu
c3BlY3RvclNlcnZlclF0X2gKKworI2luY2x1ZGUgPFFMaXN0PgorI2luY2x1ZGUgPFFNYXA+Cisj
aW5jbHVkZSA8UU9iamVjdD4KKyNpbmNsdWRlIDxRUGFpcj4KKyNpbmNsdWRlIDxRU3RyaW5nPgor
I2luY2x1ZGUgPHd0Zi9Gb3J3YXJkLmg+CisKK2NsYXNzIFFUY3BTZXJ2ZXI7CitjbGFzcyBRVGNw
U29ja2V0OworY2xhc3MgUVdlYlBhZ2U7CisKK25hbWVzcGFjZSBXZWJDb3JlIHsKK2NsYXNzIElu
c3BlY3RvclNlcnZlclJlcXVlc3RIYW5kbGVyUXQ7CitjbGFzcyBJbnNwZWN0b3JDbGllbnRRdDsK
KworY2xhc3MgSW5zcGVjdG9yU2VydmVyUXQgOiBwdWJsaWMgUU9iamVjdCB7CisgICAgUV9PQkpF
Q1QKK3B1YmxpYzoKKworICAgIHN0YXRpYyBJbnNwZWN0b3JTZXJ2ZXJRdCogc2VydmVyKCk7CisK
KyAgICB2b2lkIGxpc3RlbihxdWludDE2IHBvcnQpOworCisgICAgdm9pZCByZWdpc3RlckNsaWVu
dChJbnNwZWN0b3JDbGllbnRRdCogY2xpZW50KTsKKyAgICB2b2lkIHVucmVnaXN0ZXJDbGllbnQo
SW5zcGVjdG9yQ2xpZW50UXQqIGNsaWVudCk7CisKKyAgICB2b2lkIGNsb3NlKCk7CisgICAgSW5z
cGVjdG9yQ2xpZW50UXQqIGluc3BlY3RvckNsaWVudChpbnQgcGFnZU51bSk7CisKK3Byb3RlY3Rl
ZDoKKyAgICBJbnNwZWN0b3JTZXJ2ZXJRdCgpOworICAgIHZpcnR1YWwgfkluc3BlY3RvclNlcnZl
clF0KCk7CisKK3ByaXZhdGUgc2xvdHM6CisgICAgdm9pZCBuZXdDb25uZWN0aW9uKCk7CisKK3By
aXZhdGU6CisgICAgUVRjcFNlcnZlciogbV90Y3BTZXJ2ZXI7CisgICAgUU1hcDxpbnQsIEluc3Bl
Y3RvckNsaWVudFF0Kj4gbV9pbnNwZWN0b3JDbGllbnRzOworICAgIGludCBtX3BhZ2VOdW1iZXI7
CisKKworfTsKKworY2xhc3MgUmVtb3RlRnJvbnRlbmRDaGFubmVsIDogcHVibGljIFFPYmplY3Qg
eworICAgIFFfT0JKRUNUCisgICAgICAgIHB1YmxpYzoKKworICAgIFJlbW90ZUZyb250ZW5kQ2hh
bm5lbChJbnNwZWN0b3JTZXJ2ZXJSZXF1ZXN0SGFuZGxlclF0KiByZXF1ZXN0SGFuZGxlcik7Cisg
ICAgYm9vbCBzZW5kTWVzc2FnZVRvRnJvbnRlbmQoY29uc3QgU3RyaW5nJiBtZXNzYWdlKTsKKwor
cHJpdmF0ZToKKyAgICBJbnNwZWN0b3JTZXJ2ZXJSZXF1ZXN0SGFuZGxlclF0KiBtX3JlcXVlc3RI
YW5kbGVyOworfTsKKworY2xhc3MgSW5zcGVjdG9yU2VydmVyUmVxdWVzdEhhbmRsZXJRdCA6IHB1
YmxpYyBRT2JqZWN0IHsKKyAgICBRX09CSkVDVAorCisgICAgICAgIHB1YmxpYzoKKworICAgIElu
c3BlY3RvclNlcnZlclJlcXVlc3RIYW5kbGVyUXQoUVRjcFNvY2tldCAqdGNwQ29ubmVjdGlvbiwg
SW5zcGVjdG9yU2VydmVyUXQgKnNlcnZlcik7CisgICAgdmlydHVhbCB+SW5zcGVjdG9yU2VydmVy
UmVxdWVzdEhhbmRsZXJRdCgpOworICAgIHZpcnR1YWwgaW50IHdlYlNvY2tldFNlbmQoUUJ5dGVB
cnJheSBwYXlsb2FkKTsKKyAgICB2aXJ0dWFsIGludCB3ZWJTb2NrZXRTZW5kKGNvbnN0IGNoYXIg
KnBheWxvYWQsIHNpemVfdCBsZW5ndGgpOworCitwcml2YXRlIHNsb3RzOgorICAgIHZvaWQgdGNw
UmVhZHlSZWFkKCk7CisgICAgdm9pZCB0Y3BDb25uZWN0aW9uRGlzY29ubmVjdGVkKCk7CisgICAg
dm9pZCB3ZWJTb2NrZXRSZWFkeVJlYWQoKTsKKworcHJpdmF0ZToKKyAgICBRVGNwU29ja2V0KiBt
X3RjcENvbm5lY3Rpb247CisgICAgSW5zcGVjdG9yU2VydmVyUXQqIG1fc2VydmVyOworCisgICAg
UVN0cmluZyBtX3BhdGg7CisgICAgUUJ5dGVBcnJheSBtX2NvbnRlbnRUeXBlOworICAgIGludCBt
X2NvbnRlbnRMZW5ndGg7CisgICAgYm9vbCBtX2VuZE9mSGVhZGVyczsKKyAgICBRQnl0ZUFycmF5
IG1fZGF0YTsKKyAgICBJbnNwZWN0b3JDbGllbnRRdCogbV9pbnNwZWN0b3JDbGllbnQ7CisKKyAg
ICB2b2lkIGhhbmRsZUluc3BlY3RvclJlcXVlc3QoUVN0cmluZ0xpc3Qgd29yZHMpOworICAgIHZv
aWQgaGFuZGxlRnJvbUZyb250ZW5kUmVxdWVzdCgpOworICAgIHZvaWQgaGFuZGxlUmVzb3VyY2VS
ZXF1ZXN0KFFTdHJpbmdMaXN0IHdvcmRzKTsKKworfTsKKworfQorI2VuZGlmCmRpZmYgLS1naXQg
YS9XZWJLaXRUb29scy9DaGFuZ2VMb2cgYi9XZWJLaXRUb29scy9DaGFuZ2VMb2cKaW5kZXggOGRk
ZWI4MzhjZjE5MzM2MGViMzQ2M2FjMGUxZTI2ODhiYzQ3NjQzOS4uYmE3Yjg3ZjQyOTY2MmIyZjA0
ZWM1ZWZlOTRlNTMxZmFjNTI4MzEwNCAxMDA2NDQKLS0tIGEvV2ViS2l0VG9vbHMvQ2hhbmdlTG9n
CisrKyBiL1dlYktpdFRvb2xzL0NoYW5nZUxvZwpAQCAtMSwzICsxLDI3IEBACisyMDEwLTA5LTEz
ICBKYW1leSBIaWNrcyAgPGphbWV5LmhpY2tzQG5va2lhLmNvbT4KKworICAgICAgICBSZXZpZXdl
ZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBbUXRdIFdlYiBJbnNwZWN0b3I6IFJlbW90
ZSBXZWIgSW5zcGVjdG9yIHN1cHBvcnQgZm9yIFF0V2ViS2l0CisgICAgICAgIGh0dHBzOi8vYnVn
cy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD00Mzk4OAorCisgICAgICAgIFJ1bnMgYSB3ZWIg
ZGVidWcgc2VydmVyIG9uIHBvcnQgc3BlY2lmaWVkIGJ5IFF0VGVzdEJyb3dzZXIKKyAgICAgICAg
YXJndW1lbnQgLXJlbW90ZS1pbnNwZWN0b3ItcG9ydC4gUHJvcGVydHkKKyAgICAgICAgX3Ffd2Vi
SW5zcGVjdG9yU2VydmVyUG9ydCBvZiB0aGUgUVdlYlBhZ2UgaW5zdGFuY2Ugd2lsbCBiZSBzZXQK
KyAgICAgICAgYWNjb3JkaW5nIHRvIHRoZSBhcmd1bWVudC4gQWxsIHBhZ2VzIHdpdGggdGhhdCBw
cm9wZXJ0eSBzZXQgd2lsbAorICAgICAgICBiZSByZW1vdGVseSBpbnNwZWN0YWJsZS4KKworICAg
ICAgICBVUkwgZm9yIHJlbW90ZSBpbnNwZWN0aW9uIG9mIGZpcnN0IFFXZWJQYWdlIGlzCisgICAg
ICAgICAgICBodHRwOi8vbG9jYWxob3N0OjkyMjIvZGV2dG9vbHMvcGFnZS8xCisgICAgICAgIHdo
ZXJlIDEgaXMgdGhlIG51bWJlciBvZiB0aGUgUVdlYlBhZ2UgaW5zdGFuY2UuCisKKyAgICAgICAg
KiBRdFRlc3RCcm93c2VyL2xhdW5jaGVyd2luZG93LmNwcDoKKyAgICAgICAgKExhdW5jaGVyV2lu
ZG93Ojppbml0KToKKyAgICAgICAgKiBRdFRlc3RCcm93c2VyL2xhdW5jaGVyd2luZG93Lmg6Cisg
ICAgICAgICogUXRUZXN0QnJvd3Nlci9tYWluLmNwcDoKKyAgICAgICAgKExhdW5jaGVyQXBwbGlj
YXRpb246OmhhbmRsZVVzZXJPcHRpb25zKToKKyAgICAgICAgKiBTY3JpcHRzL3dlYmtpdHB5L3N0
eWxlL2NoZWNrZXIucHk6CisKIDIwMTAtMDktMTMgIEFuZHJlYXMgS2xpbmcgIDxhbmRyZWFzLmts
aW5nQG5va2lhLmNvbT4KIAogICAgICAgICBSZXZpZXdlZCBieSBLZW5uZXRoIFJvaGRlIENocmlz
dGlhbnNlbi4KZGlmZiAtLWdpdCBhL1dlYktpdFRvb2xzL1F0VGVzdEJyb3dzZXIvbGF1bmNoZXJ3
aW5kb3cuY3BwIGIvV2ViS2l0VG9vbHMvUXRUZXN0QnJvd3Nlci9sYXVuY2hlcndpbmRvdy5jcHAK
aW5kZXggM2I0N2YyOWNiNDY3YjQ3ZTkxMTliOTM0MDMzMzMyZDUyM2Y1ZDU4YS4uNjQ2YmIwN2Qx
YmZjMTdjMDY0NTNjY2QwYzNjZTEyMTMxZjMwYjEwYiAxMDA2NDQKLS0tIGEvV2ViS2l0VG9vbHMv
UXRUZXN0QnJvd3Nlci9sYXVuY2hlcndpbmRvdy5jcHAKKysrIGIvV2ViS2l0VG9vbHMvUXRUZXN0
QnJvd3Nlci9sYXVuY2hlcndpbmRvdy5jcHAKQEAgLTkxLDYgKzkxLDkgQEAgdm9pZCBMYXVuY2hl
cldpbmRvdzo6aW5pdCgpCiAgICAgbV9pbnNwZWN0b3ItPmhpZGUoKTsKICAgICBjb25uZWN0KHRo
aXMsIFNJR05BTChkZXN0cm95ZWQoKSksIG1faW5zcGVjdG9yLCBTTE9UKGRlbGV0ZUxhdGVyKCkp
KTsKIAorICAgIGlmIChtX3dpbmRvd09wdGlvbnMucmVtb3RlSW5zcGVjdG9yUG9ydCkKKyAgICAg
ICAgcGFnZSgpLT5zZXRQcm9wZXJ0eSgiX3Ffd2ViSW5zcGVjdG9yU2VydmVyUG9ydCIsIG1fd2lu
ZG93T3B0aW9ucy5yZW1vdGVJbnNwZWN0b3JQb3J0KTsKKwogICAgIC8vIHRoZSB6b29tIHZhbHVl
cyBhcmUgY2hvc2VuIHRvIGJlIGxpa2UgaW4gTW96aWxsYSBGaXJlZm94IDMKICAgICBpZiAoIW1f
em9vbUxldmVscy5jb3VudCgpKSB7CiAgICAgICAgIG1fem9vbUxldmVscyA8PCAzMCA8PCA1MCA8
PCA2NyA8PCA4MCA8PCA5MDsKZGlmZiAtLWdpdCBhL1dlYktpdFRvb2xzL1F0VGVzdEJyb3dzZXIv
bGF1bmNoZXJ3aW5kb3cuaCBiL1dlYktpdFRvb2xzL1F0VGVzdEJyb3dzZXIvbGF1bmNoZXJ3aW5k
b3cuaAppbmRleCA2NWYzOTBkODk0ZDU0NDNlMDdjNTQwMDMxZGZiMTVlNTNmYmE0NmY3Li5lMWM3
NDcwYTg2YzU0OGRkYjc1NTY4NjNiMTI1NThmNjA0YzZmNDlmIDEwMDY0NAotLS0gYS9XZWJLaXRU
b29scy9RdFRlc3RCcm93c2VyL2xhdW5jaGVyd2luZG93LmgKKysrIGIvV2ViS2l0VG9vbHMvUXRU
ZXN0QnJvd3Nlci9sYXVuY2hlcndpbmRvdy5oCkBAIC0xMTAsNiArMTEwLDcgQEAgcHVibGljOgog
ICAgIGJvb2wgdXNlUUdMV2lkZ2V0Vmlld3BvcnQ7CiAjZW5kaWYKICAgICBRVXJsIGluc3BlY3Rv
clVybDsKKyAgICBxdWludDE2IHJlbW90ZUluc3BlY3RvclBvcnQ7CiB9OwogCiBjbGFzcyBMYXVu
Y2hlcldpbmRvdyA6IHB1YmxpYyBNYWluV2luZG93IHsKZGlmZiAtLWdpdCBhL1dlYktpdFRvb2xz
L1F0VGVzdEJyb3dzZXIvbWFpbi5jcHAgYi9XZWJLaXRUb29scy9RdFRlc3RCcm93c2VyL21haW4u
Y3BwCmluZGV4IGVjODY0ZTlkMDk1YTNlZjgwYTcyNTdkMGY5ZjJlM2ZlNTAyZmI0YWUuLjEyYTMx
MWVlM2VhNmJjMzg3ZmVjY2E0ZjBmNTRmNTdjYTYxZmE5MzkgMTAwNjQ0Ci0tLSBhL1dlYktpdFRv
b2xzL1F0VGVzdEJyb3dzZXIvbWFpbi5jcHAKKysrIGIvV2ViS2l0VG9vbHMvUXRUZXN0QnJvd3Nl
ci9tYWluLmNwcApAQCAtMTgwLDYgKzE4MCwxMSBAQCB2b2lkIExhdW5jaGVyQXBwbGljYXRpb246
OmhhbmRsZVVzZXJPcHRpb25zKCkKICAgICBpZiAoaW5zcGVjdG9yVXJsSW5kZXggIT0gLTEpCiAg
ICAgICAgd2luZG93T3B0aW9ucy5pbnNwZWN0b3JVcmwgPSB0YWtlT3B0aW9uVmFsdWUoJmFyZ3Ms
IGluc3BlY3RvclVybEluZGV4KTsKIAorICAgIFFTdHJpbmcgcmVtb3RlSW5zcGVjdG9yUG9ydEFy
ZygiLXJlbW90ZS1pbnNwZWN0b3ItcG9ydCIpOworICAgIGludCByZW1vdGVJbnNwZWN0b3JQb3J0
SW5kZXggPSBhcmdzLmluZGV4T2YocmVtb3RlSW5zcGVjdG9yUG9ydEFyZyk7CisgICAgaWYgKHJl
bW90ZUluc3BlY3RvclBvcnRJbmRleCAhPSAtMSkKKyAgICAgICAgd2luZG93T3B0aW9ucy5yZW1v
dGVJbnNwZWN0b3JQb3J0ID0gdGFrZU9wdGlvblZhbHVlKCZhcmdzLCByZW1vdGVJbnNwZWN0b3JQ
b3J0SW5kZXgpLnRvSW50KCk7CisKICAgICBpbnQgcm9ib3RJbmRleCA9IGFyZ3MuaW5kZXhPZigi
LXIiKTsKICAgICBpZiAocm9ib3RJbmRleCAhPSAtMSkgewogICAgICAgICBRU3RyaW5nIGxpc3RG
aWxlID0gdGFrZU9wdGlvblZhbHVlKCZhcmdzLCByb2JvdEluZGV4KTsK
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>67549</attachid>
            <date>2010-09-14 07:43:26 -0700</date>
            <delta_ts>2010-09-22 09:40:33 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-43988-20100914104325.patch</filename>
            <type>text/plain</type>
            <size>34633</size>
            <attacher name="Jamey Hicks">jamey.hicks</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1dlYkNvcmUvQ2hhbmdlTG9nIGIvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXgg
ODFhNWI4NzI5NjUzYTQzODhlYWNkM2Q0OTc0OWExNzE1M2VmZjRhNC4uZGU4NzhjMmI4Y2NmOTg3
ZmI3ZDYzMzEyZTI5OTg0OTRkODRlOWJhNCAxMDA2NDQKLS0tIGEvV2ViQ29yZS9DaGFuZ2VMb2cK
KysrIGIvV2ViQ29yZS9DaGFuZ2VMb2cKQEAgLTEsMyArMSwyNSBAQAorMjAxMC0wOS0xNCAgSmFt
ZXkgSGlja3MgIDxqYW1leS5oaWNrc0Bub2tpYS5jb20+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkg
Tk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgW1F0XSBXZWIgSW5zcGVjdG9yOiBSZW1vdGUgV2Vi
IEluc3BlY3RvciBzdXBwb3J0IGZvciBRdFdlYktpdAorICAgICAgICBodHRwczovL2J1Z3Mud2Vi
a2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9NDM5ODgKKworICAgICAgICBSdW5zIGEgd2ViIGRlYnVn
IHNlcnZlciBvbiBwb3J0IHNwZWNpZmllZCBieSBRdFRlc3RCcm93c2VyCisgICAgICAgIGFyZ3Vt
ZW50IC1yZW1vdGUtaW5zcGVjdG9yLXBvcnQuIFByb3BlcnR5CisgICAgICAgIF9xX3dlYkluc3Bl
Y3RvclNlcnZlclBvcnQgb2YgdGhlIFFXZWJQYWdlIGluc3RhbmNlIHdpbGwgYmUgc2V0CisgICAg
ICAgIGFjY29yZGluZyB0byB0aGUgYXJndW1lbnQuIEFsbCBwYWdlcyB3aXRoIHRoYXQgcHJvcGVy
dHkgc2V0IHdpbGwKKyAgICAgICAgYmUgcmVtb3RlbHkgaW5zcGVjdGFibGUuCisKKyAgICAgICAg
VVJMIGZvciByZW1vdGUgaW5zcGVjdGlvbiBvZiBmaXJzdCBRV2ViUGFnZSBpcworICAgICAgICAg
ICAgaHR0cDovL2xvY2FsaG9zdDo5MjIyL3dlYmtpdC9pbnNwZWN0b3IvaW5zcGVjdG9yLmh0bWw/
cGFnZT0xCisgICAgICAgIHdoZXJlIDEgaXMgdGhlIG51bWJlciBvZiB0aGUgUVdlYlBhZ2UgaW5z
dGFuY2UuCisKKyAgICAgICAgVGhlIGJhc2UgVVJMIHlpZWxkcyBhbiBpbmRleCBwYWdlIHdpdGgg
bGlua3MgdG8gdGhlIGluZGl2aWR1YWwgaW5zcGVjdG9yczoKKyAgICAgICAgICAgIGh0dHA6Ly9s
b2NhbGhvc3Q6OTIyMi8KKyAgICAgICAgCisgICAgICAgICogV2ViQ29yZS5wcm86CisKIDIwMTAt
MDktMTQgIFBpZXJyZS1BbnRvaW5lIExhRmF5ZXR0ZSAgPHBsYWZheWV0QGNvZGVhdXJvcmEub3Jn
PgogCiAgICAgICAgIFJldmlld2VkIGJ5IERhcmluIEFkbGVyLgpkaWZmIC0tZ2l0IGEvV2ViQ29y
ZS9XZWJDb3JlLnBybyBiL1dlYkNvcmUvV2ViQ29yZS5wcm8KaW5kZXggNzI2YjYwMGEzM2JmMGY3
ZmQ2MGVmODY4YTdhODU1ZjhjOTRmY2Y4Zi4uMGUxYzFiZmYyODllZWU5MGNhZDEwMWQwYjNkOWY1
ZDIzMGIxMDc5ZiAxMDA2NDQKLS0tIGEvV2ViQ29yZS9XZWJDb3JlLnBybworKysgYi9XZWJDb3Jl
L1dlYkNvcmUucHJvCkBAIC0yNDk3LDYgKzI0OTcsNyBAQCBIRUFERVJTICs9IFwKICAgICB4bWwv
WFNMVFByb2Nlc3Nvci5oIFwKICAgICB4bWwvWFNMVFVuaWNvZGVTb3J0LmggXAogICAgICQkUFdE
Ly4uL1dlYktpdC9xdC9BcGkvcXdlYnBsdWdpbmRhdGFiYXNlX3AuaCBcCisgICAgJCRQV0QvLi4v
V2ViS2l0L3F0L1dlYkNvcmVTdXBwb3J0L0luc3BlY3RvclNlcnZlclF0LmggXAogICAgICQkUFdE
Ly4uL1dlYktpdC9xdC9XZWJDb3JlU3VwcG9ydC9RdEZhbGxiYWNrV2ViUG9wdXAuaCBcCiAgICAg
JCRQV0QvLi4vV2ViS2l0L3F0L1dlYkNvcmVTdXBwb3J0L0ZyYW1lTG9hZGVyQ2xpZW50UXQuaCBc
CiAgICAgJCRQV0QvLi4vV2ViS2l0L3F0L1dlYkNvcmVTdXBwb3J0L0ZyYW1lTmV0d29ya2luZ0Nv
bnRleHRRdC5oIFwKQEAgLTI2MDMsNiArMjYwNCw3IEBAIFNPVVJDRVMgKz0gXAogICAgIC4uL1dl
YktpdC9xdC9XZWJDb3JlU3VwcG9ydC9GcmFtZU5ldHdvcmtpbmdDb250ZXh0UXQuY3BwIFwKICAg
ICAuLi9XZWJLaXQvcXQvV2ViQ29yZVN1cHBvcnQvR2VvbG9jYXRpb25QZXJtaXNzaW9uQ2xpZW50
UXQuY3BwIFwKICAgICAuLi9XZWJLaXQvcXQvV2ViQ29yZVN1cHBvcnQvSW5zcGVjdG9yQ2xpZW50
UXQuY3BwIFwKKyAgICAuLi9XZWJLaXQvcXQvV2ViQ29yZVN1cHBvcnQvSW5zcGVjdG9yU2VydmVy
UXQuY3BwIFwKICAgICAuLi9XZWJLaXQvcXQvV2ViQ29yZVN1cHBvcnQvTm90aWZpY2F0aW9uUHJl
c2VudGVyQ2xpZW50UXQuY3BwIFwKICAgICAuLi9XZWJLaXQvcXQvV2ViQ29yZVN1cHBvcnQvUGFn
ZUNsaWVudFF0LmNwcCBcCiAgICAgLi4vV2ViS2l0L3F0L1dlYkNvcmVTdXBwb3J0L1BvcHVwTWVu
dVF0LmNwcCBcCmRpZmYgLS1naXQgYS9XZWJLaXQvcXQvQXBpL3F3ZWJpbnNwZWN0b3IuY3BwIGIv
V2ViS2l0L3F0L0FwaS9xd2ViaW5zcGVjdG9yLmNwcAppbmRleCA4MDJlYTk4MDQ4ZmE1Yjk3ZTRm
ZmMzZDUwN2MzMjg1YTBjYjZhM2UzLi4yNzE0OGY3MGJkOGE5Y2FmMjYzNDdhMjQ5ZDQ4Y2Y2MGNm
MWY3MDg0IDEwMDY0NAotLS0gYS9XZWJLaXQvcXQvQXBpL3F3ZWJpbnNwZWN0b3IuY3BwCisrKyBi
L1dlYktpdC9xdC9BcGkvcXdlYmluc3BlY3Rvci5jcHAKQEAgLTE5Niw2ICsxOTYsMzEgQEAgdm9p
ZCBRV2ViSW5zcGVjdG9yUHJpdmF0ZTo6c2V0RnJvbnRlbmQoUVdpZGdldCogbmV3RnJvbnRlbmQp
CiAgICAgfQogfQogCisvKiEgCisgKiBcaW50ZXJuYWwgCisgKi8KK3ZvaWQgUVdlYkluc3BlY3Rv
clByaXZhdGU6OmF0dGFjaEFuZFJlcGxhY2VSZW1vdGVGcm9udGVuZChRT2JqZWN0KiBuZXdSZW1v
dGVGcm9udGVuZCkKK3sKKyAgICBpZiAocmVtb3RlRnJvbnRlbmQpCisgICAgICAgIHJlbW90ZUZy
b250ZW5kLT5zZXRQYXJlbnQoMCk7CisKKyAgICByZW1vdGVGcm9udGVuZCA9IG5ld1JlbW90ZUZy
b250ZW5kOworCisgICAgaWYgKHJlbW90ZUZyb250ZW5kKQorICAgICAgICByZW1vdGVGcm9udGVu
ZC0+c2V0UGFyZW50KHEpOworfQorCisvKiEgCisgKiBcaW50ZXJuYWwgCisgKi8KK3ZvaWQgUVdl
Ykluc3BlY3RvclByaXZhdGU6OmRldGFjaFJlbW90ZUZyb250ZW5kKCkKK3sKKyAgICBpZiAocmVt
b3RlRnJvbnRlbmQpIHsKKyAgICAgICAgcmVtb3RlRnJvbnRlbmQtPmRlbGV0ZUxhdGVyKCk7Cisg
ICAgICAgIHJlbW90ZUZyb250ZW5kID0gMDsKKyAgICB9Cit9CisKIHZvaWQgUVdlYkluc3BlY3Rv
clByaXZhdGU6OmFkanVzdEZyb250ZW5kU2l6ZShjb25zdCBRU2l6ZSYgc2l6ZSkKIHsKICAgICBp
ZiAoZnJvbnRlbmQpCmRpZmYgLS1naXQgYS9XZWJLaXQvcXQvQXBpL3F3ZWJpbnNwZWN0b3JfcC5o
IGIvV2ViS2l0L3F0L0FwaS9xd2ViaW5zcGVjdG9yX3AuaAppbmRleCA0ZDMyN2NjNWE5MTFmN2U1
MjI5ODA0ZjFkOGUyNzlhNDU0OGVkNzU3Li4zMDk5ZWIxNGJhNWEyOGNlZGE1NjZlZjEwNzUzYTJl
MTBlZGJiMDhkIDEwMDY0NAotLS0gYS9XZWJLaXQvcXQvQXBpL3F3ZWJpbnNwZWN0b3JfcC5oCisr
KyBiL1dlYktpdC9xdC9BcGkvcXdlYmluc3BlY3Rvcl9wLmgKQEAgLTMzLDE0ICszMywxOCBAQCBw
dWJsaWM6CiAgICAgOiBxKHFxKQogICAgICwgcGFnZSgwKQogICAgICwgZnJvbnRlbmQoMCkKKyAg
ICAsIHJlbW90ZUZyb250ZW5kKDApCiAgICAge30KIAogICAgIHZvaWQgc2V0RnJvbnRlbmQoUVdp
ZGdldCogbmV3RnJvbnRlbmQpOworICAgIHZvaWQgYXR0YWNoQW5kUmVwbGFjZVJlbW90ZUZyb250
ZW5kKFFPYmplY3QqIG5ld1JlbW90ZUZyb250ZW5kKTsKKyAgICB2b2lkIGRldGFjaFJlbW90ZUZy
b250ZW5kKCk7CiAgICAgdm9pZCBhZGp1c3RGcm9udGVuZFNpemUoY29uc3QgUVNpemUmIHNpemUp
OwogCiAgICAgUVdlYkluc3BlY3RvciogcTsKICAgICBRV2ViUGFnZSogcGFnZTsKICAgICBRV2lk
Z2V0KiBmcm9udGVuZDsKKyAgICBRT2JqZWN0KiByZW1vdGVGcm9udGVuZDsKIH07CiAKICNlbmRp
ZgpkaWZmIC0tZ2l0IGEvV2ViS2l0L3F0L0FwaS9xd2VicGFnZS5jcHAgYi9XZWJLaXQvcXQvQXBp
L3F3ZWJwYWdlLmNwcAppbmRleCA0ZjVlNzExN2ZjY2EyOWFiNDM5YTEyNmVkNDkxNjBiZTIzODk5
ZWRjLi5mNDI4MzM4MDEyNmZhNDk5MDk5MWY5NTQyMjI4Zjk0ZWVlNzNlYzU0IDEwMDY0NAotLS0g
YS9XZWJLaXQvcXQvQXBpL3F3ZWJwYWdlLmNwcAorKysgYi9XZWJLaXQvcXQvQXBpL3F3ZWJwYWdl
LmNwcApAQCAtNzYsNiArNzYsNyBAQAogI2luY2x1ZGUgIkhUTUxJbnB1dEVsZW1lbnQuaCIKICNp
bmNsdWRlICJIVE1MTmFtZXMuaCIKICNpbmNsdWRlICJIaXRUZXN0UmVzdWx0LmgiCisjaW5jbHVk
ZSAiSW5zcGVjdG9yU2VydmVyUXQuaCIKICNpbmNsdWRlICJXaW5kb3dGZWF0dXJlcy5oIgogI2lu
Y2x1ZGUgIkxvY2FsaXplZFN0cmluZ3MuaCIKICNpbmNsdWRlICJDYWNoZS5oIgpAQCAtMTI5OCw2
ICsxMjk5LDEwIEBAIHZvaWQgUVdlYlBhZ2VQcml2YXRlOjpkeW5hbWljUHJvcGVydHlDaGFuZ2VF
dmVudChRRHluYW1pY1Byb3BlcnR5Q2hhbmdlRXZlbnQqIGV2CiAgICAgICAgIGZyYW1lLT50aWxl
ZEJhY2tpbmdTdG9yZSgpLT5zZXRLZWVwQW5kQ292ZXJBcmVhTXVsdGlwbGllcnMoa2VlcE11bHRp
cGxpZXIsIGNvdmVyTXVsdGlwbGllcik7CiAgICAgfQogI2VuZGlmCisgICAgZWxzZSBpZiAoZXZl
bnQtPnByb3BlcnR5TmFtZSgpID09ICJfcV93ZWJJbnNwZWN0b3JTZXJ2ZXJQb3J0IikgeworICAg
ICAgICBJbnNwZWN0b3JTZXJ2ZXJRdCogaW5zcGVjdG9yU2VydmVyID0gSW5zcGVjdG9yU2VydmVy
UXQ6OnNlcnZlcigpOworICAgICAgICBpbnNwZWN0b3JTZXJ2ZXItPmxpc3RlbihpbnNwZWN0b3JT
ZXJ2ZXJQb3J0KCkpOworICAgIH0KIH0KICNlbmRpZgogCkBAIC0xNTU1LDYgKzE1NjAsMTQgQEAg
SW5zcGVjdG9yQ29udHJvbGxlciogUVdlYlBhZ2VQcml2YXRlOjppbnNwZWN0b3JDb250cm9sbGVy
KCkKICNlbmRpZgogfQogCitxdWludDE2IFFXZWJQYWdlUHJpdmF0ZTo6aW5zcGVjdG9yU2VydmVy
UG9ydCgpCit7CisjaWYgRU5BQkxFKElOU1BFQ1RPUikgJiYgIWRlZmluZWQoUVRfTk9fUFJPUEVS
VElFUykKKyAgICBpZiAocSAmJiBxLT5wcm9wZXJ0eSgiX3Ffd2ViSW5zcGVjdG9yU2VydmVyUG9y
dCIpLmlzVmFsaWQoKSkKKyAgICAgICAgcmV0dXJuIHEtPnByb3BlcnR5KCJfcV93ZWJJbnNwZWN0
b3JTZXJ2ZXJQb3J0IikudG9JbnQoKTsKKyNlbmRpZgorICAgIHJldHVybiAwOworfQogCiAvKiEK
ICAgIFxlbnVtIFFXZWJQYWdlOjpGaW5kRmxhZwpkaWZmIC0tZ2l0IGEvV2ViS2l0L3F0L0FwaS9x
d2VicGFnZS5oIGIvV2ViS2l0L3F0L0FwaS9xd2VicGFnZS5oCmluZGV4IGIxNDQxZmY0M2M2ZmU5
MmEzNDY3NGY3YzdkY2M1YTdiMTY3ZmQ0ZDguLmEyMDA3NGY5OGQ1MDVlMjYyNzU2NDBhZTg0MjEz
NGE1YWYyMTdiNDYgMTAwNjQ0Ci0tLSBhL1dlYktpdC9xdC9BcGkvcXdlYnBhZ2UuaAorKysgYi9X
ZWJLaXQvcXQvQXBpL3F3ZWJwYWdlLmgKQEAgLTU1LDYgKzU1LDcgQEAgbmFtZXNwYWNlIFdlYkNv
cmUgewogICAgIGNsYXNzIEVkaXRvckNsaWVudFF0OwogICAgIGNsYXNzIEZyYW1lTG9hZGVyQ2xp
ZW50UXQ7CiAgICAgY2xhc3MgSW5zcGVjdG9yQ2xpZW50UXQ7CisgICAgY2xhc3MgSW5zcGVjdG9y
U2VydmVyUmVxdWVzdEhhbmRsZXJRdDsKICAgICBjbGFzcyBJbnNwZWN0b3JGcm9udGVuZENsaWVu
dFF0OwogICAgIGNsYXNzIE5vdGlmaWNhdGlvblByZXNlbnRlckNsaWVudFF0OwogICAgIGNsYXNz
IEdlb2xvY2F0aW9uUGVybWlzc2lvbkNsaWVudFF0OwpAQCAtNDI1LDYgKzQyNiw3IEBAIHByaXZh
dGU6CiAgICAgZnJpZW5kIGNsYXNzIFdlYkNvcmU6OkVkaXRvckNsaWVudFF0OwogICAgIGZyaWVu
ZCBjbGFzcyBXZWJDb3JlOjpGcmFtZUxvYWRlckNsaWVudFF0OwogICAgIGZyaWVuZCBjbGFzcyBX
ZWJDb3JlOjpJbnNwZWN0b3JDbGllbnRRdDsKKyAgICBmcmllbmQgY2xhc3MgV2ViQ29yZTo6SW5z
cGVjdG9yU2VydmVyUmVxdWVzdEhhbmRsZXJRdDsKICAgICBmcmllbmQgY2xhc3MgV2ViQ29yZTo6
SW5zcGVjdG9yRnJvbnRlbmRDbGllbnRRdDsKICAgICBmcmllbmQgY2xhc3MgV2ViQ29yZTo6Tm90
aWZpY2F0aW9uUHJlc2VudGVyQ2xpZW50UXQ7CiAgICAgZnJpZW5kIGNsYXNzIFdlYkNvcmU6Okdl
b2xvY2F0aW9uUGVybWlzc2lvbkNsaWVudFF0OwpkaWZmIC0tZ2l0IGEvV2ViS2l0L3F0L0FwaS9x
d2VicGFnZV9wLmggYi9XZWJLaXQvcXQvQXBpL3F3ZWJwYWdlX3AuaAppbmRleCA4MmY1MzY1Yjc2
ODQ3ZDY5MmQ4MDQ0YWE0ZTJlYTQ2MjI5ZjdhNTkzLi43NGU3Y2ExN2QxMDQ2YTA2NjAyMTY1NWE0
ODhmZjY4MDI0MzdhZmRjIDEwMDY0NAotLS0gYS9XZWJLaXQvcXQvQXBpL3F3ZWJwYWdlX3AuaAor
KysgYi9XZWJLaXQvcXQvQXBpL3F3ZWJwYWdlX3AuaApAQCAtMTM5LDYgKzEzOSw3IEBAIHB1Ymxp
YzoKICAgICB2b2lkIHNldEluc3BlY3RvcihRV2ViSW5zcGVjdG9yKik7CiAgICAgUVdlYkluc3Bl
Y3RvciogZ2V0T3JDcmVhdGVJbnNwZWN0b3IoKTsKICAgICBXZWJDb3JlOjpJbnNwZWN0b3JDb250
cm9sbGVyKiBpbnNwZWN0b3JDb250cm9sbGVyKCk7CisgICAgcXVpbnQxNiBpbnNwZWN0b3JTZXJ2
ZXJQb3J0KCk7CiAKICNpZm5kZWYgUVRfTk9fU0hPUlRDVVQKICAgICBzdGF0aWMgUVdlYlBhZ2U6
OldlYkFjdGlvbiBlZGl0b3JBY3Rpb25Gb3JLZXlFdmVudChRS2V5RXZlbnQqIGV2ZW50KTsKZGlm
ZiAtLWdpdCBhL1dlYktpdC9xdC9DaGFuZ2VMb2cgYi9XZWJLaXQvcXQvQ2hhbmdlTG9nCmluZGV4
IDAyYjczZmUxNTc3YzhkZGE1MDNhMWQyMDkyYWJkZmUxOGNmMTVkYWIuLmQ5NTMxNTQyNTRjZmVi
ODYzMmQ2ZjUwMjNjOGIwZjk2ZGZlMzYyNzYgMTAwNjQ0Ci0tLSBhL1dlYktpdC9xdC9DaGFuZ2VM
b2cKKysrIGIvV2ViS2l0L3F0L0NoYW5nZUxvZwpAQCAtMSwzICsxLDYzIEBACisyMDEwLTA5LTE0
ICBKYW1leSBIaWNrcyAgPGphbWV5LmhpY2tzQG5va2lhLmNvbT4KKworICAgICAgICBSZXZpZXdl
ZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBbUXRdIFdlYiBJbnNwZWN0b3I6IFJlbW90
ZSBXZWIgSW5zcGVjdG9yIHN1cHBvcnQgZm9yIFF0V2ViS2l0CisgICAgICAgIGh0dHBzOi8vYnVn
cy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD00Mzk4OAorCisgICAgICAgIFJ1bnMgYSB3ZWIg
ZGVidWcgc2VydmVyIG9uIHBvcnQgc3BlY2lmaWVkIGJ5IFF0VGVzdEJyb3dzZXIKKyAgICAgICAg
YXJndW1lbnQgLXJlbW90ZS1pbnNwZWN0b3ItcG9ydC4gUHJvcGVydHkKKyAgICAgICAgX3Ffd2Vi
SW5zcGVjdG9yU2VydmVyUG9ydCBvZiB0aGUgUVdlYlBhZ2UgaW5zdGFuY2Ugd2lsbCBiZSBzZXQK
KyAgICAgICAgYWNjb3JkaW5nIHRvIHRoZSBhcmd1bWVudC4gQWxsIHBhZ2VzIHdpdGggdGhhdCBw
cm9wZXJ0eSBzZXQgd2lsbAorICAgICAgICBiZSByZW1vdGVseSBpbnNwZWN0YWJsZS4KKworICAg
ICAgICBVUkwgZm9yIHJlbW90ZSBpbnNwZWN0aW9uIG9mIGZpcnN0IFFXZWJQYWdlIGlzCisgICAg
ICAgICAgICBodHRwOi8vbG9jYWxob3N0OjkyMjIvd2Via2l0L2luc3BlY3Rvci9pbnNwZWN0b3Iu
aHRtbD9wYWdlPTEKKyAgICAgICAgd2hlcmUgMSBpcyB0aGUgbnVtYmVyIG9mIHRoZSBRV2ViUGFn
ZSBpbnN0YW5jZS4KKworICAgICAgICBUaGUgYmFzZSBVUkwgeWllbGRzIGFuIGluZGV4IHBhZ2Ug
d2l0aCBsaW5rcyB0byB0aGUgaW5kaXZpZHVhbCBpbnNwZWN0b3JzOgorICAgICAgICAgICAgaHR0
cDovL2xvY2FsaG9zdDo5MjIyLworCisgICAgICAgICogQXBpL3F3ZWJpbnNwZWN0b3IuY3BwOgor
ICAgICAgICAoUVdlYkluc3BlY3RvclByaXZhdGU6OmF0dGFjaEFuZFJlcGxhY2VSZW1vdGVGcm9u
dGVuZCk6CisgICAgICAgIChRV2ViSW5zcGVjdG9yUHJpdmF0ZTo6ZGV0YWNoUmVtb3RlRnJvbnRl
bmQpOgorICAgICAgICAqIEFwaS9xd2ViaW5zcGVjdG9yX3AuaDoKKyAgICAgICAgKFFXZWJJbnNw
ZWN0b3JQcml2YXRlOjpRV2ViSW5zcGVjdG9yUHJpdmF0ZSk6CisgICAgICAgICogQXBpL3F3ZWJw
YWdlLmNwcDoKKyAgICAgICAgKFFXZWJQYWdlUHJpdmF0ZTo6ZHluYW1pY1Byb3BlcnR5Q2hhbmdl
RXZlbnQpOgorICAgICAgICAoUVdlYlBhZ2VQcml2YXRlOjppbnNwZWN0b3JTZXJ2ZXJQb3J0KToK
KyAgICAgICAgKiBBcGkvcXdlYnBhZ2UuaDoKKyAgICAgICAgKiBBcGkvcXdlYnBhZ2VfcC5oOgor
ICAgICAgICAqIFdlYkNvcmVTdXBwb3J0L0luc3BlY3RvckNsaWVudFF0LmNwcDoKKyAgICAgICAg
KFdlYkNvcmU6Okluc3BlY3RvckNsaWVudFF0OjpJbnNwZWN0b3JDbGllbnRRdCk6CisgICAgICAg
IChXZWJDb3JlOjpJbnNwZWN0b3JDbGllbnRRdDo6aW5zcGVjdG9yRGVzdHJveWVkKToKKyAgICAg
ICAgKFdlYkNvcmU6Okluc3BlY3RvckNsaWVudFF0OjpvcGVuSW5zcGVjdG9yRnJvbnRlbmQpOgor
ICAgICAgICAoV2ViQ29yZTo6SW5zcGVjdG9yQ2xpZW50UXQ6OmF0dGFjaEFuZFJlcGxhY2VSZW1v
dGVGcm9udGVuZCk6CisgICAgICAgIChXZWJDb3JlOjpJbnNwZWN0b3JDbGllbnRRdDo6ZGV0YWNo
UmVtb3RlRnJvbnRlbmQpOgorICAgICAgICAoV2ViQ29yZTo6SW5zcGVjdG9yQ2xpZW50UXQ6OnNl
bmRNZXNzYWdlVG9Gcm9udGVuZCk6CisgICAgICAgICogV2ViQ29yZVN1cHBvcnQvSW5zcGVjdG9y
Q2xpZW50UXQuaDoKKyAgICAgICAgKiBXZWJDb3JlU3VwcG9ydC9JbnNwZWN0b3JTZXJ2ZXJRdC5j
cHA6IEFkZGVkLgorICAgICAgICAoV2ViQ29yZTo6Z2VuZXJhdGVXZWJTb2NrZXRDaGFsbGVuZ2VS
ZXNwb25zZSk6CisgICAgICAgIChXZWJDb3JlOjpwYXJzZVdlYlNvY2tldENoYWxsZW5nZU51bWJl
cik6CisgICAgICAgIChXZWJDb3JlOjpJbnNwZWN0b3JTZXJ2ZXJRdDo6c2VydmVyKToKKyAgICAg
ICAgKFdlYkNvcmU6Okluc3BlY3RvclNlcnZlclF0OjpJbnNwZWN0b3JTZXJ2ZXJRdCk6CisgICAg
ICAgIChXZWJDb3JlOjpJbnNwZWN0b3JTZXJ2ZXJRdDo6fkluc3BlY3RvclNlcnZlclF0KToKKyAg
ICAgICAgKFdlYkNvcmU6Okluc3BlY3RvclNlcnZlclF0OjpsaXN0ZW4pOgorICAgICAgICAoV2Vi
Q29yZTo6SW5zcGVjdG9yU2VydmVyUXQ6OmNsb3NlKToKKyAgICAgICAgKFdlYkNvcmU6Okluc3Bl
Y3RvclNlcnZlclF0OjppbnNwZWN0b3JDbGllbnRGb3JQYWdlKToKKyAgICAgICAgKFdlYkNvcmU6
Okluc3BlY3RvclNlcnZlclF0OjpyZWdpc3RlckNsaWVudCk6CisgICAgICAgIChXZWJDb3JlOjpJ
bnNwZWN0b3JTZXJ2ZXJRdDo6dW5yZWdpc3RlckNsaWVudCk6CisgICAgICAgIChXZWJDb3JlOjpJ
bnNwZWN0b3JTZXJ2ZXJRdDo6bmV3Q29ubmVjdGlvbik6CisgICAgICAgIChXZWJDb3JlOjpJbnNw
ZWN0b3JTZXJ2ZXJSZXF1ZXN0SGFuZGxlclF0OjpJbnNwZWN0b3JTZXJ2ZXJSZXF1ZXN0SGFuZGxl
clF0KToKKyAgICAgICAgKFdlYkNvcmU6Okluc3BlY3RvclNlcnZlclJlcXVlc3RIYW5kbGVyUXQ6
On5JbnNwZWN0b3JTZXJ2ZXJSZXF1ZXN0SGFuZGxlclF0KToKKyAgICAgICAgKFdlYkNvcmU6Oklu
c3BlY3RvclNlcnZlclJlcXVlc3RIYW5kbGVyUXQ6OnRjcFJlYWR5UmVhZCk6CisgICAgICAgIChX
ZWJDb3JlOjpJbnNwZWN0b3JTZXJ2ZXJSZXF1ZXN0SGFuZGxlclF0Ojp0Y3BDb25uZWN0aW9uRGlz
Y29ubmVjdGVkKToKKyAgICAgICAgKFdlYkNvcmU6Okluc3BlY3RvclNlcnZlclJlcXVlc3RIYW5k
bGVyUXQ6OndlYlNvY2tldFNlbmQpOgorICAgICAgICAoV2ViQ29yZTo6SW5zcGVjdG9yU2VydmVy
UmVxdWVzdEhhbmRsZXJRdDo6d2ViU29ja2V0UmVhZHlSZWFkKToKKyAgICAgICAgKFdlYkNvcmU6
OlJlbW90ZUZyb250ZW5kQ2hhbm5lbDo6UmVtb3RlRnJvbnRlbmRDaGFubmVsKToKKyAgICAgICAg
KFdlYkNvcmU6OlJlbW90ZUZyb250ZW5kQ2hhbm5lbDo6c2VuZE1lc3NhZ2VUb0Zyb250ZW5kKToK
KyAgICAgICAgKiBXZWJDb3JlU3VwcG9ydC9JbnNwZWN0b3JTZXJ2ZXJRdC5oOiBBZGRlZC4KKwog
MjAxMC0wOS0xNCAgRW5yaWNvIFJvcyAgPGVyb3NAY29kZWF1cm9yYS5vcmc+CiAKICAgICAgICAg
UmV2aWV3ZWQgYnkgQW5kcmVhcyBLbGluZy4KZGlmZiAtLWdpdCBhL1dlYktpdC9xdC9XZWJDb3Jl
U3VwcG9ydC9JbnNwZWN0b3JDbGllbnRRdC5jcHAgYi9XZWJLaXQvcXQvV2ViQ29yZVN1cHBvcnQv
SW5zcGVjdG9yQ2xpZW50UXQuY3BwCmluZGV4IDU1YWNhN2Y2ZTRjMjEyYzgzNzcwZTRiNjczMGE4
NDAxMzFlM2YyYmYuLjBkYWEzMmMzYjY2OGYzOWU5YTQyYWViMmI0OGNjZGI4ODUyNzIxNDcgMTAw
NjQ0Ci0tLSBhL1dlYktpdC9xdC9XZWJDb3JlU3VwcG9ydC9JbnNwZWN0b3JDbGllbnRRdC5jcHAK
KysrIGIvV2ViS2l0L3F0L1dlYkNvcmVTdXBwb3J0L0luc3BlY3RvckNsaWVudFF0LmNwcApAQCAt
MzIsNyArMzIsMTAgQEAKICNpbmNsdWRlICJJbnNwZWN0b3JDbGllbnRRdC5oIgogCiAjaW5jbHVk
ZSAiRnJhbWUuaCIKKyNpbmNsdWRlICJJbnNwZWN0b3JCYWNrZW5kRGlzcGF0Y2hlci5oIgogI2lu
Y2x1ZGUgIkluc3BlY3RvckNvbnRyb2xsZXIuaCIKKyNpbmNsdWRlICJJbnNwZWN0b3JGcm9udGVu
ZC5oIgorI2luY2x1ZGUgIkluc3BlY3RvclNlcnZlclF0LmgiCiAjaW5jbHVkZSAiTm90SW1wbGVt
ZW50ZWQuaCIKICNpbmNsdWRlICJQYWdlLmgiCiAjaW5jbHVkZSAiUGxhdGZvcm1TdHJpbmcuaCIK
QEAgLTk3LDIzICsxMDAsMzYgQEAgSW5zcGVjdG9yQ2xpZW50UXQ6Okluc3BlY3RvckNsaWVudFF0
KFFXZWJQYWdlKiBwYWdlKQogICAgIDogbV9pbnNwZWN0ZWRXZWJQYWdlKHBhZ2UpCiAgICAgLCBt
X2Zyb250ZW5kV2ViUGFnZSgwKQogICAgICwgbV9mcm9udGVuZENsaWVudCgwKQote30KK3sKKyAg
ICBJbnNwZWN0b3JTZXJ2ZXJRdCogd2ViSW5zcGVjdG9yU2VydmVyID0gSW5zcGVjdG9yU2VydmVy
UXQ6OnNlcnZlcigpOworICAgIGlmICh3ZWJJbnNwZWN0b3JTZXJ2ZXIpCisgICAgICAgIHdlYklu
c3BlY3RvclNlcnZlci0+cmVnaXN0ZXJDbGllbnQodGhpcyk7Cit9CiAKIHZvaWQgSW5zcGVjdG9y
Q2xpZW50UXQ6Omluc3BlY3RvckRlc3Ryb3llZCgpCiB7CiAgICAgaWYgKG1fZnJvbnRlbmRDbGll
bnQpCiAgICAgICAgIG1fZnJvbnRlbmRDbGllbnQtPmluc3BlY3RvckNsaWVudERlc3Ryb3llZCgp
OworCisgICAgSW5zcGVjdG9yU2VydmVyUXQqIHdlYkluc3BlY3RvclNlcnZlciA9IEluc3BlY3Rv
clNlcnZlclF0OjpzZXJ2ZXIoKTsKKyAgICBpZiAod2ViSW5zcGVjdG9yU2VydmVyKQorICAgICAg
ICB3ZWJJbnNwZWN0b3JTZXJ2ZXItPnVucmVnaXN0ZXJDbGllbnQodGhpcyk7CisKICAgICBkZWxl
dGUgdGhpczsKIH0KIAogICAgIAotdm9pZCBJbnNwZWN0b3JDbGllbnRRdDo6b3Blbkluc3BlY3Rv
ckZyb250ZW5kKFdlYkNvcmU6Okluc3BlY3RvckNvbnRyb2xsZXIqKQordm9pZCBJbnNwZWN0b3JD
bGllbnRRdDo6b3Blbkluc3BlY3RvckZyb250ZW5kKFdlYkNvcmU6Okluc3BlY3RvckNvbnRyb2xs
ZXIqIGluc3BlY3RvckNvbnRyb2xsZXIpCiB7CiAgICAgUVdlYlZpZXcqIGluc3BlY3RvclZpZXcg
PSBuZXcgUVdlYlZpZXc7CiAgICAgSW5zcGVjdG9yQ2xpZW50V2ViUGFnZSogaW5zcGVjdG9yUGFn
ZSA9IG5ldyBJbnNwZWN0b3JDbGllbnRXZWJQYWdlKGluc3BlY3RvclZpZXcpOwogICAgIGluc3Bl
Y3RvclZpZXctPnNldFBhZ2UoaW5zcGVjdG9yUGFnZSk7CiAKICAgICBRV2ViSW5zcGVjdG9yKiBp
bnNwZWN0b3IgPSBtX2luc3BlY3RlZFdlYlBhZ2UtPmQtPmdldE9yQ3JlYXRlSW5zcGVjdG9yKCk7
CisgICAgLy8gUmVtb3RlIGZyb250ZW5kIHdhcyBhdHRhY2hlZC4KKyAgICBpZiAobV9pbnNwZWN0
ZWRXZWJQYWdlLT5kLT5pbnNwZWN0b3ItPmQtPnJlbW90ZUZyb250ZW5kKQorICAgICAgICByZXR1
cm47CisKICAgICAvLyBUaGlzIGlzIGEga25vd24gaG9vayB0aGF0IGFsbG93cyBjaGFuZ2luZyB0
aGUgZGVmYXVsdCBVUkwgZm9yIHRoZQogICAgIC8vIFdlYiBpbnNwZWN0b3IuIFRoaXMgaXMgdXNl
ZCBmb3IgU0RLIHB1cnBvc2VzLiBQbGVhc2Uga2VlcCB0aGlzIGhvb2sKICAgICAvLyBhcm91bmQg
YW5kIGRvbid0IHJlbW92ZSBpdC4KQEAgLTE0NSw2ICsxNjEsMjMgQEAgdm9pZCBJbnNwZWN0b3JD
bGllbnRRdDo6cmVsZWFzZUZyb250ZW5kUGFnZSgpCiAgICAgbV9mcm9udGVuZENsaWVudCA9IDA7
CiB9CiAKK3ZvaWQgSW5zcGVjdG9yQ2xpZW50UXQ6OmF0dGFjaEFuZFJlcGxhY2VSZW1vdGVGcm9u
dGVuZChSZW1vdGVGcm9udGVuZENoYW5uZWwqIGNoYW5uZWwpCit7CisjaWYgRU5BQkxFKElOU1BF
Q1RPUikKKyAgICAvLyBDaGFubmVsIHdhcyBhbGxvY2F0ZWQgYnkgSW5zcGVjdG9yU2VydmVyUXQu
IEhlcmUgd2UgdHJhbnNmZXIgb3duZXJzaGlwIHRvIGluc3BlY3Rvci4KKyAgICBtX2luc3BlY3Rl
ZFdlYlBhZ2UtPmQtPmluc3BlY3Rvci0+ZC0+YXR0YWNoQW5kUmVwbGFjZVJlbW90ZUZyb250ZW5k
KGNoYW5uZWwpOworICAgIG1faW5zcGVjdGVkV2ViUGFnZS0+ZC0+aW5zcGVjdG9yQ29udHJvbGxl
cigpLT5jb25uZWN0RnJvbnRlbmQoKTsKKyNlbmRpZgorfQorCit2b2lkIEluc3BlY3RvckNsaWVu
dFF0OjpkZXRhY2hSZW1vdGVGcm9udGVuZCgpCit7CisjaWYgRU5BQkxFKElOU1BFQ1RPUikKKyAg
ICBtX2luc3BlY3RlZFdlYlBhZ2UtPmQtPmluc3BlY3Rvci0+ZC0+ZGV0YWNoUmVtb3RlRnJvbnRl
bmQoKTsKKyAgICBtX2luc3BlY3RlZFdlYlBhZ2UtPmQtPmluc3BlY3RvckNvbnRyb2xsZXIoKS0+
ZGlzY29ubmVjdEZyb250ZW5kKCk7CisjZW5kaWYKK30KKwogdm9pZCBJbnNwZWN0b3JDbGllbnRR
dDo6aGlnaGxpZ2h0KE5vZGUqKQogewogICAgIG5vdEltcGxlbWVudGVkKCk7CkBAIC0yMDEsNiAr
MjM0LDEyIEBAIHZvaWQgSW5zcGVjdG9yQ2xpZW50UXQ6OnN0b3JlU2V0dGluZyhjb25zdCBTdHJp
bmcmIGtleSwgY29uc3QgU3RyaW5nJiBzZXR0aW5nKQogCiBib29sIEluc3BlY3RvckNsaWVudFF0
OjpzZW5kTWVzc2FnZVRvRnJvbnRlbmQoY29uc3QgU3RyaW5nJiBtZXNzYWdlKQogeworICAgIGlm
IChtX2luc3BlY3RlZFdlYlBhZ2UtPmQtPmluc3BlY3Rvci0+ZC0+cmVtb3RlRnJvbnRlbmQpIHsK
KyAgICAgICAgUmVtb3RlRnJvbnRlbmRDaGFubmVsKiBzZXNzaW9uID0gcW9iamVjdF9jYXN0PFJl
bW90ZUZyb250ZW5kQ2hhbm5lbCo+KG1faW5zcGVjdGVkV2ViUGFnZS0+ZC0+aW5zcGVjdG9yLT5k
LT5yZW1vdGVGcm9udGVuZCk7CisgICAgICAgIGlmIChzZXNzaW9uKQorICAgICAgICAgICAgc2Vz
c2lvbi0+c2VuZE1lc3NhZ2VUb0Zyb250ZW5kKG1lc3NhZ2UpOworICAgICAgICByZXR1cm4gdHJ1
ZTsKKyAgICB9CiAgICAgaWYgKCFtX2Zyb250ZW5kV2ViUGFnZSkKICAgICAgICAgcmV0dXJuIGZh
bHNlOwogCmRpZmYgLS1naXQgYS9XZWJLaXQvcXQvV2ViQ29yZVN1cHBvcnQvSW5zcGVjdG9yQ2xp
ZW50UXQuaCBiL1dlYktpdC9xdC9XZWJDb3JlU3VwcG9ydC9JbnNwZWN0b3JDbGllbnRRdC5oCmlu
ZGV4IDAwNzQxNTlkZjI4Zjg3MGE2YzBmMzMxZGJiZDc4MDg3NTZiMGJmOWQuLjY0YTJkMGMxNGQ1
ZGVlYjI1OTY4MTg0M2EyZTI1ZjA2YmVhMTlkMTggMTAwNjQ0Ci0tLSBhL1dlYktpdC9xdC9XZWJD
b3JlU3VwcG9ydC9JbnNwZWN0b3JDbGllbnRRdC5oCisrKyBiL1dlYktpdC9xdC9XZWJDb3JlU3Vw
cG9ydC9JbnNwZWN0b3JDbGllbnRRdC5oCkBAIC00Miw4ICs0MiwxMCBAQCBjbGFzcyBRV2ViVmll
dzsKIAogbmFtZXNwYWNlIFdlYkNvcmUgewogY2xhc3MgSW5zcGVjdG9yRnJvbnRlbmRDbGllbnRR
dDsKK2NsYXNzIEluc3BlY3RvclNlcnZlclJlcXVlc3RIYW5kbGVyUXQ7CiBjbGFzcyBOb2RlOwog
Y2xhc3MgUGFnZTsKK2NsYXNzIFJlbW90ZUZyb250ZW5kQ2hhbm5lbDsKIAogY2xhc3MgSW5zcGVj
dG9yQ2xpZW50UXQgOiBwdWJsaWMgSW5zcGVjdG9yQ2xpZW50IHsKIHB1YmxpYzoKQEAgLTYzLDEw
ICs2NSwxNiBAQCBwdWJsaWM6CiAKICAgICB2b2lkIHJlbGVhc2VGcm9udGVuZFBhZ2UoKTsKIAor
ICAgIHZvaWQgYXR0YWNoQW5kUmVwbGFjZVJlbW90ZUZyb250ZW5kKFJlbW90ZUZyb250ZW5kQ2hh
bm5lbCAqY2hhbm5lbCk7CisgICAgdm9pZCBkZXRhY2hSZW1vdGVGcm9udGVuZCgpOworCiBwcml2
YXRlOgogICAgIFFXZWJQYWdlKiBtX2luc3BlY3RlZFdlYlBhZ2U7CiAgICAgUVdlYlBhZ2UqIG1f
ZnJvbnRlbmRXZWJQYWdlOwogICAgIEluc3BlY3RvckZyb250ZW5kQ2xpZW50UXQqIG1fZnJvbnRl
bmRDbGllbnQ7CisgICAgYm9vbCBtX3JlbW90ZUluc3BlY3RvcjsKKworICAgIGZyaWVuZCBjbGFz
cyBJbnNwZWN0b3JTZXJ2ZXJSZXF1ZXN0SGFuZGxlclF0OwogfTsKIAogY2xhc3MgSW5zcGVjdG9y
RnJvbnRlbmRDbGllbnRRdCA6IHB1YmxpYyBJbnNwZWN0b3JGcm9udGVuZENsaWVudExvY2FsIHsK
ZGlmZiAtLWdpdCBhL1dlYktpdC9xdC9XZWJDb3JlU3VwcG9ydC9JbnNwZWN0b3JTZXJ2ZXJRdC5j
cHAgYi9XZWJLaXQvcXQvV2ViQ29yZVN1cHBvcnQvSW5zcGVjdG9yU2VydmVyUXQuY3BwCm5ldyBm
aWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAuLmU3NmVlZTkxMWE4ZGM2NjdhNDQ4OTBjMzcxNGRjYWNlNzg0MWY0NGIKLS0tIC9kZXYv
bnVsbAorKysgYi9XZWJLaXQvcXQvV2ViQ29yZVN1cHBvcnQvSW5zcGVjdG9yU2VydmVyUXQuY3Bw
CkBAIC0wLDAgKzEsMzg1IEBACisvKgorICBDb3B5cmlnaHQgKEMpIDIwMTAgTm9raWEgQ29ycG9y
YXRpb24gYW5kL29yIGl0cyBzdWJzaWRpYXJ5KC1pZXMpCisKKyAgVGhpcyBsaWJyYXJ5IGlzIGZy
ZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vcgorICBtb2RpZnkgaXQg
dW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUgTGlicmFyeSBHZW5lcmFsIFB1YmxpYworICBMaWNl
bnNlIGFzIHB1Ymxpc2hlZCBieSB0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uOyBlaXRoZXIK
KyAgdmVyc2lvbiAyIG9mIHRoZSBMaWNlbnNlLCBvciAoYXQgeW91ciBvcHRpb24pIGFueSBsYXRl
ciB2ZXJzaW9uLgorCisgIFRoaXMgbGlicmFyeSBpcyBkaXN0cmlidXRlZCBpbiB0aGUgaG9wZSB0
aGF0IGl0IHdpbGwgYmUgdXNlZnVsLAorICBidXQgV0lUSE9VVCBBTlkgV0FSUkFOVFk7IHdpdGhv
dXQgZXZlbiB0aGUgaW1wbGllZCB3YXJyYW50eSBvZgorICBNRVJDSEFOVEFCSUxJVFkgb3IgRklU
TkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlIEdOVQorICBMaWJyYXJ5IEdl
bmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KKworICBZb3Ugc2hvdWxkIGhh
dmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgTGlicmFyeSBHZW5lcmFsIFB1YmxpYyBMaWNl
bnNlCisgIGFsb25nIHdpdGggdGhpcyBsaWJyYXJ5OyBzZWUgdGhlIGZpbGUgQ09QWUlORy5MSUIu
ICBJZiBub3QsIHdyaXRlIHRvCisgIHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb24sIEluYy4s
IDUxIEZyYW5rbGluIFN0cmVldCwgRmlmdGggRmxvb3IsCisgIEJvc3RvbiwgTUEgMDIxMTAtMTMw
MSwgVVNBLgorKi8KKworI2luY2x1ZGUgImNvbmZpZy5oIgorI2luY2x1ZGUgIkluc3BlY3RvclNl
cnZlclF0LmgiCisKKyNpbmNsdWRlICJJbnNwZWN0b3JCYWNrZW5kRGlzcGF0Y2hlci5oIgorI2lu
Y2x1ZGUgIkluc3BlY3RvckNsaWVudFF0LmgiCisjaW5jbHVkZSAiTUQ1LmgiCisjaW5jbHVkZSAi
UGFnZS5oIgorI2luY2x1ZGUgInF3ZWJwYWdlLmgiCisjaW5jbHVkZSAicXdlYnBhZ2VfcC5oIgor
I2luY2x1ZGUgPFFGaWxlPgorI2luY2x1ZGUgPFFIdHRwSGVhZGVyPgorI2luY2x1ZGUgPFFIdHRw
UmVxdWVzdEhlYWRlcj4KKyNpbmNsdWRlIDxRSHR0cFJlc3BvbnNlSGVhZGVyPgorI2luY2x1ZGUg
PFFTdHJpbmc+CisjaW5jbHVkZSA8UVN0cmluZ0xpc3Q+CisjaW5jbHVkZSA8UVRjcFNlcnZlcj4K
KyNpbmNsdWRlIDxRVGNwU29ja2V0PgorI2luY2x1ZGUgPFFVcmw+CisjaW5jbHVkZSA8UVdpZGdl
dD4KKyNpbmNsdWRlIDxxZW5kaWFuLmg+CisKK25hbWVzcGFjZSBXZWJDb3JlIHsKKworLyoKKyAq
IENvbXB1dGVzIHRoZSBXZWJTb2NrZXQgaGFuZHNoYWtlIHJlc3BvbnNlIGdpdmVuIHRoZSB0d28g
Y2hhbGxlbmdlIG51bWJlcnMgYW5kIGtleTMuCisgKi8KK3N0YXRpYyB2b2lkIGdlbmVyYXRlV2Vi
U29ja2V0Q2hhbGxlbmdlUmVzcG9uc2UodWludDMyX3QgbnVtYmVyMSwgdWludDMyX3QgbnVtYmVy
MiwgY29uc3QgdW5zaWduZWQgY2hhciBrZXkzWzhdLCB1bnNpZ25lZCBjaGFyIHJlc3BvbnNlWzE2
XSkKK3sKKyAgICB1aW50OF90IGNoYWxsZW5nZVsxNl07CisgICAgcVRvQmlnRW5kaWFuPHFpbnQz
Mj4obnVtYmVyMSwgJmNoYWxsZW5nZVswXSk7CisgICAgcVRvQmlnRW5kaWFuPHFpbnQzMj4obnVt
YmVyMiwgJmNoYWxsZW5nZVs0XSk7CisgICAgbWVtY3B5KCZjaGFsbGVuZ2VbOF0sIGtleTMsIDgp
OworICAgIE1ENSBtZDU7CisgICAgbWQ1LmFkZEJ5dGVzKGNoYWxsZW5nZSwgc2l6ZW9mKGNoYWxs
ZW5nZSkpOworICAgIFZlY3Rvcjx1aW50OF90LCAxNj4gZGlnZXN0OworICAgIG1kNS5jaGVja3N1
bShkaWdlc3QpOworICAgIG1lbWNweShyZXNwb25zZSwgZGlnZXN0LmRhdGEoKSwgMTYpOworfQor
CisvKgorICogUGFyc2VzIGFuZCByZXR1cm5zIGEgV2ViU29ja2V0IGNoYWxsZW5nZSBudW1iZXIg
YWNjb3JkaW5nIHRvIHRoZSBtZXRob2Qgc3BlY2lmaWVkIGluIHRoZSBXZWJTb2NrZXQgcHJvdG9j
b2wuCisgKgorICogVGhlIGZpZWxkIGNvbnRhaW5zIG51bWVyaWMgZGlnaXRzIGludGVyc3BlcnNl
ZCB3aXRoIHNwYWNlcyBhbmQKKyAqIG5vbi1udW1lcmljIGRpZ2l0cy4gVGhlIHByb3RvY29sIGln
bm9yZXMgdGhlIGNoYXJhY3RlcnMgdGhhdCBhcmUKKyAqIG5laXRoZXIgZGlnaXRzIG5vciBzcGFj
ZXMuIFRoZSBkaWdpdHMgYXJlIGNvbmNhdGVuYXRlZCBhbmQKKyAqIGludGVycHJldGVkIGFzIGEg
bG9uZyBpbnQuIFRoZSByZXN1bHQgaXMgdGhpcyBudW1iZXIgZGl2aWRlZCBieSB0aGUKKyAqIG51
bWJlciBvZiBzcGFjZXMuCisgKi8KK3N0YXRpYyBxdWludDMyIHBhcnNlV2ViU29ja2V0Q2hhbGxl
bmdlTnVtYmVyKFFTdHJpbmcgZmllbGQpCit7CisgICAgUVN0cmluZyBuU3RyaW5nOworICAgIGlu
dCBuU3BhY2VzID0gMDsKKyAgICBmb3IgKGludCBpID0gMDsgaSA8IGZpZWxkLnNpemUoKTsgaSsr
KSB7CisgICAgICAgIFFDaGFyIGMgPSBmaWVsZFtpXTsKKyAgICAgICAgaWYgKGMgPT0gKFFDaGFy
KScgJykgeworICAgICAgICAgICAgblNwYWNlcysrOworICAgICAgICB9IGVsc2UgaWYgKChjID49
IChRQ2hhciknMCcpICYmIChjIDw9IChRQ2hhciknOScpKSB7CisgICAgICAgICAgICBuU3RyaW5n
LmFwcGVuZCgoUUNoYXIpYyk7CisgICAgICAgIH0KKyAgICB9CisgICAgcXVpbnQzMiBudW0gPSBu
U3RyaW5nLnRvTG9uZygpOworICAgIHF1aW50MzIgcmVzdWx0ID0gKG5TcGFjZXMgPyAobnVtIC8g
blNwYWNlcykgOiBudW0pOworICAgIHJldHVybiByZXN1bHQ7Cit9CisKK3N0YXRpYyBJbnNwZWN0
b3JTZXJ2ZXJRdCogc19pbnNwZWN0b3JTZXJ2ZXI7CisKK0luc3BlY3RvclNlcnZlclF0KiBJbnNw
ZWN0b3JTZXJ2ZXJRdDo6c2VydmVyKCkKK3sKKyAgICAvLyBzX2luc3BlY3RvclNlcnZlciBpcyBk
ZWxldGVkIGluIHVucmVnaXN0ZXJDbGllbnQoKSB3aGVuIHRoZSBsYXN0IGNsaWVudCBpcyB1bnJl
Z2lzdGVyZWQuCisgICAgaWYgKCFzX2luc3BlY3RvclNlcnZlcikKKyAgICAgICAgc19pbnNwZWN0
b3JTZXJ2ZXIgPSBuZXcgSW5zcGVjdG9yU2VydmVyUXQoKTsKKworICAgIHJldHVybiBzX2luc3Bl
Y3RvclNlcnZlcjsKK30KKworSW5zcGVjdG9yU2VydmVyUXQ6Okluc3BlY3RvclNlcnZlclF0KCkK
KyAgICA6IFFPYmplY3QoKQorICAgICwgbV90Y3BTZXJ2ZXIoMCkKKyAgICAsIG1fcGFnZU51bWJl
cigxKQoreworfQorCitJbnNwZWN0b3JTZXJ2ZXJRdDo6fkluc3BlY3RvclNlcnZlclF0KCkKK3sK
KyAgICBjbG9zZSgpOworfQorCit2b2lkIEluc3BlY3RvclNlcnZlclF0OjpsaXN0ZW4ocXVpbnQx
NiBwb3J0KQoreworICAgIGlmIChtX3RjcFNlcnZlcikKKyAgICAgICAgcmV0dXJuOworCisgICAg
bV90Y3BTZXJ2ZXIgPSBuZXcgUVRjcFNlcnZlcigpOworICAgIG1fdGNwU2VydmVyLT5saXN0ZW4o
UUhvc3RBZGRyZXNzOjpBbnksIHBvcnQpOworICAgIGNvbm5lY3QobV90Y3BTZXJ2ZXIsIFNJR05B
TChuZXdDb25uZWN0aW9uKCkpLCBTTE9UKG5ld0Nvbm5lY3Rpb24oKSkpOworfQorCit2b2lkIElu
c3BlY3RvclNlcnZlclF0OjpjbG9zZSgpCit7CisgICAgaWYgKG1fdGNwU2VydmVyKSB7CisgICAg
ICAgIG1fdGNwU2VydmVyLT5jbG9zZSgpOworICAgICAgICBkZWxldGUgbV90Y3BTZXJ2ZXI7Cisg
ICAgfQorICAgIG1fdGNwU2VydmVyID0gMDsKK30KKworSW5zcGVjdG9yQ2xpZW50UXQqIEluc3Bl
Y3RvclNlcnZlclF0OjppbnNwZWN0b3JDbGllbnRGb3JQYWdlKGludCBwYWdlTnVtKQoreworICAg
IEluc3BlY3RvckNsaWVudFF0KiBjbGllbnQgPSBtX2luc3BlY3RvckNsaWVudHMudmFsdWUocGFn
ZU51bSk7CisgICAgcmV0dXJuIGNsaWVudDsKK30KKwordm9pZCBJbnNwZWN0b3JTZXJ2ZXJRdDo6
cmVnaXN0ZXJDbGllbnQoSW5zcGVjdG9yQ2xpZW50UXQqIGNsaWVudCkKK3sKKyAgICBpZiAoIW1f
aW5zcGVjdG9yQ2xpZW50cy5rZXkoY2xpZW50KSkKKyAgICAgICAgbV9pbnNwZWN0b3JDbGllbnRz
Lmluc2VydChtX3BhZ2VOdW1iZXIrKywgY2xpZW50KTsKK30KKwordm9pZCBJbnNwZWN0b3JTZXJ2
ZXJRdDo6dW5yZWdpc3RlckNsaWVudChJbnNwZWN0b3JDbGllbnRRdCogY2xpZW50KQoreworICAg
IGludCBwYWdlTnVtID0gbV9pbnNwZWN0b3JDbGllbnRzLmtleShjbGllbnQsIC0xKTsKKyAgICBp
ZiAocGFnZU51bSA+PSAwKQorICAgICAgICBtX2luc3BlY3RvckNsaWVudHMucmVtb3ZlKHBhZ2VO
dW0pOworICAgIGlmICghbV9pbnNwZWN0b3JDbGllbnRzLnNpemUoKSkgeworICAgICAgICAvLyBz
X2luc3BlY3RvclNlcnZlciBwb2ludHMgdG8gdGhpcy4KKyAgICAgICAgc19pbnNwZWN0b3JTZXJ2
ZXIgPSAwOworICAgICAgICBjbG9zZSgpOworICAgICAgICBkZWxldGVMYXRlcigpOworICAgIH0K
K30KKwordm9pZCBJbnNwZWN0b3JTZXJ2ZXJRdDo6bmV3Q29ubmVjdGlvbigpCit7CisgICAgUVRj
cFNvY2tldCogdGNwQ29ubmVjdGlvbiA9IG1fdGNwU2VydmVyLT5uZXh0UGVuZGluZ0Nvbm5lY3Rp
b24oKTsKKyAgICBJbnNwZWN0b3JTZXJ2ZXJSZXF1ZXN0SGFuZGxlclF0KiBoYW5kbGVyID0gbmV3
IEluc3BlY3RvclNlcnZlclJlcXVlc3RIYW5kbGVyUXQodGNwQ29ubmVjdGlvbiwgdGhpcyk7Cisg
ICAgaGFuZGxlci0+c2V0UGFyZW50KHRoaXMpOworfQorCitJbnNwZWN0b3JTZXJ2ZXJSZXF1ZXN0
SGFuZGxlclF0OjpJbnNwZWN0b3JTZXJ2ZXJSZXF1ZXN0SGFuZGxlclF0KFFUY3BTb2NrZXQqIHRj
cENvbm5lY3Rpb24sIEluc3BlY3RvclNlcnZlclF0KiBzZXJ2ZXIpCisgICAgOiBRT2JqZWN0KHNl
cnZlcikKKyAgICAsIG1fdGNwQ29ubmVjdGlvbih0Y3BDb25uZWN0aW9uKQorICAgICwgbV9zZXJ2
ZXIoc2VydmVyKQorICAgICwgbV9pbnNwZWN0b3JDbGllbnQoMCkKK3sKKyAgICBtX2VuZE9mSGVh
ZGVycyA9IGZhbHNlOyAgICAKKyAgICBtX2NvbnRlbnRMZW5ndGggPSAwOworCisgICAgY29ubmVj
dChtX3RjcENvbm5lY3Rpb24sIFNJR05BTChyZWFkeVJlYWQoKSksIFNMT1QodGNwUmVhZHlSZWFk
KCkpKTsKKyAgICBjb25uZWN0KG1fdGNwQ29ubmVjdGlvbiwgU0lHTkFMKGRpc2Nvbm5lY3RlZCgp
KSwgU0xPVCh0Y3BDb25uZWN0aW9uRGlzY29ubmVjdGVkKCkpKTsKK30KKworSW5zcGVjdG9yU2Vy
dmVyUmVxdWVzdEhhbmRsZXJRdDo6fkluc3BlY3RvclNlcnZlclJlcXVlc3RIYW5kbGVyUXQoKQor
eworfQorCit2b2lkIEluc3BlY3RvclNlcnZlclJlcXVlc3RIYW5kbGVyUXQ6OnRjcFJlYWR5UmVh
ZCgpCit7CisgICAgUUh0dHBSZXF1ZXN0SGVhZGVyIGhlYWRlcjsKKyAgICBib29sIGlzV2ViU29j
a2V0ID0gZmFsc2U7CisgICAgaWYgKCFtX3RjcENvbm5lY3Rpb24pCisgICAgICAgIHJldHVybjsK
KworICAgIGlmICghbV9lbmRPZkhlYWRlcnMpIHsKKyAgICAgICAgd2hpbGUgKG1fdGNwQ29ubmVj
dGlvbi0+Ynl0ZXNBdmFpbGFibGUoKSAmJiAhbV9lbmRPZkhlYWRlcnMpIHsKKyAgICAgICAgICAg
IFFCeXRlQXJyYXkgbGluZSA9IG1fdGNwQ29ubmVjdGlvbi0+cmVhZExpbmUoKTsKKyAgICAgICAg
ICAgIG1fZGF0YS5hcHBlbmQobGluZSk7CisgICAgICAgICAgICBpZiAobGluZSA9PSAiXHJcbiIp
CisgICAgICAgICAgICAgICAgbV9lbmRPZkhlYWRlcnMgPSB0cnVlOworICAgICAgICB9CisgICAg
ICAgIGlmIChtX2VuZE9mSGVhZGVycykgeworICAgICAgICAgICAgaGVhZGVyID0gUUh0dHBSZXF1
ZXN0SGVhZGVyKFFTdHJpbmc6OmZyb21MYXRpbjEobV9kYXRhKSk7CisgICAgICAgICAgICBpZiAo
aGVhZGVyLmlzVmFsaWQoKSkgeworICAgICAgICAgICAgICAgIG1fcGF0aCA9IGhlYWRlci5wYXRo
KCk7CisgICAgICAgICAgICAgICAgbV9jb250ZW50VHlwZSA9IGhlYWRlci5jb250ZW50VHlwZSgp
LnRvTGF0aW4xKCk7CisgICAgICAgICAgICAgICAgbV9jb250ZW50TGVuZ3RoID0gaGVhZGVyLmNv
bnRlbnRMZW5ndGgoKTsKKyAgICAgICAgICAgICAgICBpZiAoaGVhZGVyLmhhc0tleSgiVXBncmFk
ZSIpICYmIChoZWFkZXIudmFsdWUoIlVwZ3JhZGUiKSA9PSBRTGF0aW4xU3RyaW5nKCJXZWJTb2Nr
ZXQiKSkpCisgICAgICAgICAgICAgICAgICAgIGlzV2ViU29ja2V0ID0gdHJ1ZTsKKworICAgICAg
ICAgICAgICAgIG1fZGF0YS5jbGVhcigpOworICAgICAgICAgICAgfQorICAgICAgICB9CisgICAg
fQorCisgICAgaWYgKG1fZW5kT2ZIZWFkZXJzKSB7CisgICAgICAgIFFTdHJpbmdMaXN0IHBhdGhB
bmRRdWVyeSA9IG1fcGF0aC5zcGxpdCgiPyIpOworICAgICAgICBtX3BhdGggPSBwYXRoQW5kUXVl
cnlbMF07CisgICAgICAgIFFTdHJpbmdMaXN0IHdvcmRzID0gbV9wYXRoLnNwbGl0KFFTdHJpbmc6
OmZyb21MYXRpbjEoIi8iKSk7CisKKyAgICAgICAgaWYgKGlzV2ViU29ja2V0KSB7CisgICAgICAg
ICAgICAvLyBzd2l0Y2ggdG8gd2Vic29ja2V0LXN0eWxlIFdlYlNvY2tldFNlcnZpY2UgbWVzc2Fn
aW5nCisgICAgICAgICAgICBpZiAobV90Y3BDb25uZWN0aW9uKSB7CisgICAgICAgICAgICAgICAg
bV90Y3BDb25uZWN0aW9uLT5kaXNjb25uZWN0KFNJR05BTChyZWFkeVJlYWQoKSkpOworICAgICAg
ICAgICAgICAgIGNvbm5lY3QobV90Y3BDb25uZWN0aW9uLCBTSUdOQUwocmVhZHlSZWFkKCkpLCBT
TE9UKHdlYlNvY2tldFJlYWR5UmVhZCgpKSk7CisKKyAgICAgICAgICAgICAgICBRQnl0ZUFycmF5
IGtleTMgPSBtX3RjcENvbm5lY3Rpb24tPnJlYWQoOCk7CisKKyAgICAgICAgICAgICAgICBxdWlu
dDMyIG51bWJlcjEgPSBwYXJzZVdlYlNvY2tldENoYWxsZW5nZU51bWJlcihoZWFkZXIudmFsdWUo
IlNlYy1XZWJTb2NrZXQtS2V5MSIpKTsKKyAgICAgICAgICAgICAgICBxdWludDMyIG51bWJlcjIg
PSBwYXJzZVdlYlNvY2tldENoYWxsZW5nZU51bWJlcihoZWFkZXIudmFsdWUoIlNlYy1XZWJTb2Nr
ZXQtS2V5MiIpKTsKKworICAgICAgICAgICAgICAgIGNoYXIgcmVzcG9uc2VEYXRhWzE2XTsKKyAg
ICAgICAgICAgICAgICBnZW5lcmF0ZVdlYlNvY2tldENoYWxsZW5nZVJlc3BvbnNlKG51bWJlcjEs
IG51bWJlcjIsICh1bnNpZ25lZCBjaGFyKilrZXkzLmRhdGEoKSwgKHVuc2lnbmVkIGNoYXIqKXJl
c3BvbnNlRGF0YSk7CisgICAgICAgICAgICAgICAgUUJ5dGVBcnJheSByZXNwb25zZShyZXNwb25z
ZURhdGEsIHNpemVvZihyZXNwb25zZURhdGEpKTsKKworICAgICAgICAgICAgICAgIFFIdHRwUmVz
cG9uc2VIZWFkZXIgcmVzcG9uc2VIZWFkZXIoMTAxLCAiV2ViU29ja2V0IFByb3RvY29sIEhhbmRz
aGFrZSIsIDEsIDEpOworICAgICAgICAgICAgICAgIHJlc3BvbnNlSGVhZGVyLnNldFZhbHVlKCJV
cGdyYWRlIiwgaGVhZGVyLnZhbHVlKCJVcGdyYWRlIikpOworICAgICAgICAgICAgICAgIHJlc3Bv
bnNlSGVhZGVyLnNldFZhbHVlKCJDb25uZWN0aW9uIiwgaGVhZGVyLnZhbHVlKCJDb25uZWN0aW9u
IikpOworICAgICAgICAgICAgICAgIHJlc3BvbnNlSGVhZGVyLnNldFZhbHVlKCJTZWMtV2ViU29j
a2V0LU9yaWdpbiIsIGhlYWRlci52YWx1ZSgiT3JpZ2luIikpOworICAgICAgICAgICAgICAgIHJl
c3BvbnNlSGVhZGVyLnNldFZhbHVlKCJTZWMtV2ViU29ja2V0LUxvY2F0aW9uIiwgKCJ3czovLyIg
KyBoZWFkZXIudmFsdWUoIkhvc3QiKSArIG1fcGF0aCkpOworICAgICAgICAgICAgICAgIHJlc3Bv
bnNlSGVhZGVyLnNldENvbnRlbnRMZW5ndGgocmVzcG9uc2Uuc2l6ZSgpKTsKKyAgICAgICAgICAg
ICAgICBtX3RjcENvbm5lY3Rpb24tPndyaXRlKHJlc3BvbnNlSGVhZGVyLnRvU3RyaW5nKCkudG9M
YXRpbjEoKSk7CisgICAgICAgICAgICAgICAgbV90Y3BDb25uZWN0aW9uLT53cml0ZShyZXNwb25z
ZSk7CisgICAgICAgICAgICAgICAgbV90Y3BDb25uZWN0aW9uLT5mbHVzaCgpOworCisgICAgICAg
ICAgICAgICAgaWYgKCh3b3Jkcy5zaXplKCkgPT0gNCkKKyAgICAgICAgICAgICAgICAgICAgJiYg
KHdvcmRzWzFdID09IFFTdHJpbmc6OmZyb21MYXRpbjEoImRldnRvb2xzIikpCisgICAgICAgICAg
ICAgICAgICAgICYmICh3b3Jkc1syXSA9PSBRU3RyaW5nOjpmcm9tTGF0aW4xKCJwYWdlIikpKSB7
CisgICAgICAgICAgICAgICAgICAgIGludCBwYWdlTnVtID0gd29yZHNbM10udG9JbnQoKTsKKwor
ICAgICAgICAgICAgICAgICAgICBtX2luc3BlY3RvckNsaWVudCA9IG1fc2VydmVyLT5pbnNwZWN0
b3JDbGllbnRGb3JQYWdlKHBhZ2VOdW0pOworICAgICAgICAgICAgICAgICAgICAvLyBBdHRhY2gg
cmVtb3RlRnJvbnRlbmRDaGFubmVsIHRvIGluc3BlY3RvciwgYWxzbyB0cmFuc2ZlcnJpbmcgb3du
ZXJzaGlwLgorICAgICAgICAgICAgICAgICAgICBpZiAobV9pbnNwZWN0b3JDbGllbnQpCisgICAg
ICAgICAgICAgICAgICAgICAgICBtX2luc3BlY3RvckNsaWVudC0+YXR0YWNoQW5kUmVwbGFjZVJl
bW90ZUZyb250ZW5kKG5ldyBSZW1vdGVGcm9udGVuZENoYW5uZWwodGhpcykpOworICAgICAgICAg
ICAgICAgIH0KKworICAgICAgICAgICAgfQorCisgICAgICAgICAgICByZXR1cm47CisgICAgICAg
IH0KKyAgICAgICAgaWYgKG1fY29udGVudExlbmd0aCAmJiAobV90Y3BDb25uZWN0aW9uLT5ieXRl
c0F2YWlsYWJsZSgpIDwgbV9jb250ZW50TGVuZ3RoKSkKKyAgICAgICAgICAgIHJldHVybjsKKwor
ICAgICAgICBRQnl0ZUFycmF5IGNvbnRlbnQgPSBtX3RjcENvbm5lY3Rpb24tPnJlYWQobV9jb250
ZW50TGVuZ3RoKTsKKyAgICAgICAgbV9lbmRPZkhlYWRlcnMgPSBmYWxzZTsKKworICAgICAgICBR
Qnl0ZUFycmF5IHJlc3BvbnNlOworICAgICAgICBpbnQgY29kZSA9IDIwMDsKKyAgICAgICAgUVN0
cmluZyB0ZXh0ID0gUVN0cmluZzo6ZnJvbUxhdGluMSgiT0siKTsKKworICAgICAgICAvLyBJZiBu
byBwYXRoIGlzIHNwZWNpZmllZCwgZ2VuZXJhdGUgYW4gaW5kZXggcGFnZS4KKyAgICAgICAgaWYg
KChtX3BhdGggPT0gIiIpIHx8IChtX3BhdGggPT0gIi8iKSkgeworICAgICAgICAgICAgUVN0cmlu
ZyBpbmRleEh0bWwgPSAiPGh0bWw+PGhlYWQ+PHRpdGxlPlJlbW90ZSBXZWIgSW5zcGVjdG9yPC90
aXRsZT48L2hlYWQ+PGJvZHk+PHVsPlxuIjsKKyAgICAgICAgICAgIGZvciAoUU1hcDxpbnQsIElu
c3BlY3RvckNsaWVudFF0KiA+Ojpjb25zdF9pdGVyYXRvciBpdCA9IG1fc2VydmVyLT5tX2luc3Bl
Y3RvckNsaWVudHMuYmVnaW4oKTsKKyAgICAgICAgICAgICAgICAgaXQgIT0gbV9zZXJ2ZXItPm1f
aW5zcGVjdG9yQ2xpZW50cy5lbmQoKTsgCisgICAgICAgICAgICAgICAgICsraXQpIHsKKyAgICAg
ICAgICAgICAgICBpbmRleEh0bWwuYXBwZW5kKFFTdHJpbmcoIjxsaT48YSBocmVmPVwiL3dlYmtp
dC9pbnNwZWN0b3IvaW5zcGVjdG9yLmh0bWw/cGFnZT0lMVwiPiUyPC9saT5cbiIpCisgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAuYXJnKGl0LmtleSgpKQorICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgLmFyZyhpdC52YWx1ZSgpLT5tX2luc3BlY3RlZFdlYlBhZ2UtPm1h
aW5GcmFtZSgpLT51cmwoKS50b1N0cmluZygpKSk7CisgICAgICAgICAgICB9CisgICAgICAgICAg
ICBpbmRleEh0bWwuYXBwZW5kKCI8L3VsPjwvYm9keT48L2h0bWw+Iik7CisgICAgICAgICAgICBy
ZXNwb25zZSA9IGluZGV4SHRtbC50b0xhdGluMSgpOworICAgICAgICB9IGVsc2UgeworICAgICAg
ICAgICAgUVN0cmluZyBwYXRoID0gUVN0cmluZygiOiUxIikuYXJnKG1fcGF0aCk7CisgICAgICAg
ICAgICBRRmlsZSBmaWxlKHBhdGgpOworICAgICAgICAgICAgLy8gSXQgc2VlbXMgdGhhdCB0aGVy
ZSBzaG91bGQgYmUgYW4gZW51bSBvciBkZWZpbmUgZm9yIHRoZXNlIHN0YXR1cyBjb2RlcyBzb21l
d2hlcmUgaW4gUXQgb3IgV2ViS2l0LAorICAgICAgICAgICAgLy8gYnV0IGdyZXAgZmFpbHMgdG8g
dHVybiBvbmUgdXAuCisgICAgICAgICAgICAvLyBRTmV0d29yayB1c2VzIHRoZSBudW1lcmljIHZh
bHVlcyBkaXJlY3RseS4KKyAgICAgICAgICAgIGlmIChmaWxlLmV4aXN0cygpKSB7CisgICAgICAg
ICAgICAgICAgZmlsZS5vcGVuKFFJT0RldmljZTo6UmVhZE9ubHkpOworICAgICAgICAgICAgICAg
IHJlc3BvbnNlID0gZmlsZS5yZWFkQWxsKCk7CisgICAgICAgICAgICB9IGVsc2UgeworICAgICAg
ICAgICAgICAgIGNvZGUgPSA0MDQ7CisgICAgICAgICAgICAgICAgdGV4dCA9IFFTdHJpbmc6OmZy
b21MYXRpbjEoIk5vdCBPSyIpOworICAgICAgICAgICAgfQorICAgICAgICB9CisKKyAgICAgICAg
UUh0dHBSZXNwb25zZUhlYWRlciByZXNwb25zZUhlYWRlcihjb2RlLCB0ZXh0LCAxLCAwKTsKKyAg
ICAgICAgcmVzcG9uc2VIZWFkZXIuc2V0Q29udGVudExlbmd0aChyZXNwb25zZS5zaXplKCkpOwor
ICAgICAgICBpZiAoIW1fY29udGVudFR5cGUuaXNFbXB0eSgpKQorICAgICAgICAgICAgcmVzcG9u
c2VIZWFkZXIuc2V0Q29udGVudFR5cGUoUVN0cmluZzo6ZnJvbUxhdGluMShtX2NvbnRlbnRUeXBl
KSk7CisKKyAgICAgICAgUUJ5dGVBcnJheSBhc2NpaUhlYWRlciA9IHJlc3BvbnNlSGVhZGVyLnRv
U3RyaW5nKCkudG9Bc2NpaSgpOworICAgICAgICBtX3RjcENvbm5lY3Rpb24tPndyaXRlKGFzY2lp
SGVhZGVyKTsKKworICAgICAgICBtX3RjcENvbm5lY3Rpb24tPndyaXRlKHJlc3BvbnNlKTsKKyAg
ICAgICAgbV90Y3BDb25uZWN0aW9uLT5mbHVzaCgpOworICAgICAgICBtX3RjcENvbm5lY3Rpb24t
PmNsb3NlKCk7CisKKyAgICAgICAgcmV0dXJuOworICAgIH0KK30KKwordm9pZCBJbnNwZWN0b3JT
ZXJ2ZXJSZXF1ZXN0SGFuZGxlclF0Ojp0Y3BDb25uZWN0aW9uRGlzY29ubmVjdGVkKCkKK3sKKyAg
ICBpZiAobV9pbnNwZWN0b3JDbGllbnQpCisgICAgICAgIG1faW5zcGVjdG9yQ2xpZW50LT5kZXRh
Y2hSZW1vdGVGcm9udGVuZCgpOworICAgIG1fdGNwQ29ubmVjdGlvbi0+ZGVsZXRlTGF0ZXIoKTsK
KyAgICBtX3RjcENvbm5lY3Rpb24gPSAwOworfQorCitpbnQgSW5zcGVjdG9yU2VydmVyUmVxdWVz
dEhhbmRsZXJRdDo6d2ViU29ja2V0U2VuZChRQnl0ZUFycmF5IHBheWxvYWQpCit7CisgICAgUV9B
U1NFUlQobV90Y3BDb25uZWN0aW9uKTsKKyAgICBtX3RjcENvbm5lY3Rpb24tPnB1dENoYXIoMHgw
MCk7CisgICAgaW50IG5CeXRlcyA9IG1fdGNwQ29ubmVjdGlvbi0+d3JpdGUocGF5bG9hZCk7Cisg
ICAgbV90Y3BDb25uZWN0aW9uLT5wdXRDaGFyKDB4RkYpOworICAgIG1fdGNwQ29ubmVjdGlvbi0+
Zmx1c2goKTsKKyAgICByZXR1cm4gbkJ5dGVzOworfQorCitpbnQgSW5zcGVjdG9yU2VydmVyUmVx
dWVzdEhhbmRsZXJRdDo6d2ViU29ja2V0U2VuZChjb25zdCBjaGFyKiBkYXRhLCBzaXplX3QgbGVu
Z3RoKQoreworICAgIFFfQVNTRVJUKG1fdGNwQ29ubmVjdGlvbik7CisgICAgbV90Y3BDb25uZWN0
aW9uLT5wdXRDaGFyKDB4MDApOworICAgIGludCBuQnl0ZXMgPSBtX3RjcENvbm5lY3Rpb24tPndy
aXRlKGRhdGEsIGxlbmd0aCk7CisgICAgbV90Y3BDb25uZWN0aW9uLT5wdXRDaGFyKDB4RkYpOwor
ICAgIG1fdGNwQ29ubmVjdGlvbi0+Zmx1c2goKTsKKyAgICByZXR1cm4gbkJ5dGVzOworfQorCit2
b2lkIEluc3BlY3RvclNlcnZlclJlcXVlc3RIYW5kbGVyUXQ6OndlYlNvY2tldFJlYWR5UmVhZCgp
Cit7CisgICAgUV9BU1NFUlQobV90Y3BDb25uZWN0aW9uKTsKKyAgICBpZiAoIW1fdGNwQ29ubmVj
dGlvbi0+Ynl0ZXNBdmFpbGFibGUoKSkKKyAgICAgICAgcmV0dXJuOworICAgIFFCeXRlQXJyYXkg
Y29udGVudCA9IG1fdGNwQ29ubmVjdGlvbi0+cmVhZChtX3RjcENvbm5lY3Rpb24tPmJ5dGVzQXZh
aWxhYmxlKCkpOworICAgIG1fZGF0YS5hcHBlbmQoY29udGVudCk7CisgICAgd2hpbGUgKG1fZGF0
YS5zaXplKCkgPiAwKSB7CisgICAgICAgIC8vIGZpcnN0IGJ5dGUgaW4gd2Vic29ja2V0IGZyYW1l
IHNob3VsZCBiZSAwCisgICAgICAgIFFfQVNTRVJUKCFtX2RhdGFbMF0pOworCisgICAgICAgIC8v
IFN0YXJ0IG9mIFdlYlNvY2tldCBmcmFtZSBpcyBpbmRpY2F0ZWQgYnkgMAorICAgICAgICBpZiAo
bV9kYXRhWzBdKSB7CisgICAgICAgICAgICBxQ3JpdGljYWwoKSA8PCAgIndlYlNvY2tldFJlYWR5
UmVhZDogdW5rbm93biBmcmFtZSB0eXBlIiA8PCBtX2RhdGFbMF07CisgICAgICAgICAgICBtX2Rh
dGEuY2xlYXIoKTsKKyAgICAgICAgICAgIG1fdGNwQ29ubmVjdGlvbi0+Y2xvc2UoKTsKKyAgICAg
ICAgICAgIHJldHVybjsKKyAgICAgICAgfQorCisgICAgICAgIC8vIEVuZCBvZiBXZWJTb2NrZXQg
ZnJhbWUgaW5kaWNhdGVkIGJ5IDB4ZmYuCisgICAgICAgIGludCBwb3MgPSBtX2RhdGEuaW5kZXhP
ZigweGZmLCAxKTsKKyAgICAgICAgaWYgKHBvcyA8IDEpCisgICAgICAgICAgICByZXR1cm47CisK
KyAgICAgICAgLy8gQWZ0ZXIgYWJvdmUgY2hlY2tzLCBsZW5ndGggd2lsbCBiZSA+PSAwLgorICAg
ICAgICBzaXplX3QgbGVuZ3RoID0gcG9zIC0gMTsKKyAgICAgICAgaWYgKGxlbmd0aCA8PSAwKQor
ICAgICAgICAgICAgcmV0dXJuOworCisgICAgICAgIFFCeXRlQXJyYXkgcGF5bG9hZCA9IG1fZGF0
YS5taWQoMSwgbGVuZ3RoKTsKKworICAgICAgICBpZiAobV9pbnNwZWN0b3JDbGllbnQpIHsKKyAg
ICAgICAgICBJbnNwZWN0b3JDb250cm9sbGVyKiBpbnNwZWN0b3JDb250cm9sbGVyID0gbV9pbnNw
ZWN0b3JDbGllbnQtPm1faW5zcGVjdGVkV2ViUGFnZS0+ZC0+cGFnZS0+aW5zcGVjdG9yQ29udHJv
bGxlcigpOworICAgICAgICAgIGluc3BlY3RvckNvbnRyb2xsZXItPmluc3BlY3RvckJhY2tlbmRE
aXNwYXRjaGVyKCktPmRpc3BhdGNoKFFTdHJpbmc6OmZyb21VdGY4KHBheWxvYWQpKTsKKyAgICAg
ICAgfQorCisgICAgICAgIC8vIFJlbW92ZSB0aGlzIFdlYlNvY2tldCBtZXNzYWdlIGZyb20gbV9k
YXRhIChwYXlsb2FkLCBzdGFydC1vZi1mcmFtZSBieXRlLCBlbmQtb2YtZnJhbWUgYnl0ZSkuCisg
ICAgICAgIG1fZGF0YSA9IG1fZGF0YS5taWQobGVuZ3RoICsgMik7CisgICAgfQorfQorCitSZW1v
dGVGcm9udGVuZENoYW5uZWw6OlJlbW90ZUZyb250ZW5kQ2hhbm5lbChJbnNwZWN0b3JTZXJ2ZXJS
ZXF1ZXN0SGFuZGxlclF0KiByZXF1ZXN0SGFuZGxlcikKKyAgICA6IFFPYmplY3QocmVxdWVzdEhh
bmRsZXIpCisgICAgLCBtX3JlcXVlc3RIYW5kbGVyKHJlcXVlc3RIYW5kbGVyKQoreworfQorCiti
b29sIFJlbW90ZUZyb250ZW5kQ2hhbm5lbDo6c2VuZE1lc3NhZ2VUb0Zyb250ZW5kKGNvbnN0IFN0
cmluZyYgbWVzc2FnZSkKK3sKKyAgICBpZiAoIW1fcmVxdWVzdEhhbmRsZXIpCisgICAgICAgIHJl
dHVybiBmYWxzZTsKKyAgICBDU3RyaW5nIGNzdHIgPSBtZXNzYWdlLnV0ZjgoKTsKKyAgICByZXR1
cm4gbV9yZXF1ZXN0SGFuZGxlci0+d2ViU29ja2V0U2VuZChjc3RyLmRhdGEoKSwgY3N0ci5sZW5n
dGgoKSk7Cit9CisKK30KZGlmZiAtLWdpdCBhL1dlYktpdC9xdC9XZWJDb3JlU3VwcG9ydC9JbnNw
ZWN0b3JTZXJ2ZXJRdC5oIGIvV2ViS2l0L3F0L1dlYkNvcmVTdXBwb3J0L0luc3BlY3RvclNlcnZl
clF0LmgKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMC4uNzRlOGMyZjZiOTk5NDYwNDkwM2VkYjJjYTc4Y2UxYTNjODdkNzE0
MgotLS0gL2Rldi9udWxsCisrKyBiL1dlYktpdC9xdC9XZWJDb3JlU3VwcG9ydC9JbnNwZWN0b3JT
ZXJ2ZXJRdC5oCkBAIC0wLDAgKzEsMTEwIEBACisvKgorICAgIENvcHlyaWdodCAoQykgMjAxMCBO
b2tpYSBDb3Jwb3JhdGlvbiBhbmQvb3IgaXRzIHN1YnNpZGlhcnkoLWllcykKKworICAgIFRoaXMg
bGlicmFyeSBpcyBmcmVlIHNvZnR3YXJlOyB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IK
KyAgICBtb2RpZnkgaXQgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUgTGlicmFyeSBHZW5lcmFs
IFB1YmxpYworICAgIExpY2Vuc2UgYXMgcHVibGlzaGVkIGJ5IHRoZSBGcmVlIFNvZnR3YXJlIEZv
dW5kYXRpb247IGVpdGhlcgorICAgIHZlcnNpb24gMiBvZiB0aGUgTGljZW5zZSwgb3IgKGF0IHlv
dXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KKworICAgIFRoaXMgbGlicmFyeSBpcyBkaXN0
cmlidXRlZCBpbiB0aGUgaG9wZSB0aGF0IGl0IHdpbGwgYmUgdXNlZnVsLAorICAgIGJ1dCBXSVRI
T1VUIEFOWSBXQVJSQU5UWTsgd2l0aG91dCBldmVuIHRoZSBpbXBsaWVkIHdhcnJhbnR5IG9mCisg
ICAgTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFLiAg
U2VlIHRoZSBHTlUKKyAgICBMaWJyYXJ5IEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUg
ZGV0YWlscy4KKworICAgIFlvdSBzaG91bGQgaGF2ZSByZWNlaXZlZCBhIGNvcHkgb2YgdGhlIEdO
VSBMaWJyYXJ5IEdlbmVyYWwgUHVibGljIExpY2Vuc2UKKyAgICBhbG9uZyB3aXRoIHRoaXMgbGli
cmFyeTsgc2VlIHRoZSBmaWxlIENPUFlJTkcuTElCLiAgSWYgbm90LCB3cml0ZSB0bworICAgIHRo
ZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb24sIEluYy4sIDUxIEZyYW5rbGluIFN0cmVldCwgRmlm
dGggRmxvb3IsCisgICAgQm9zdG9uLCBNQSAwMjExMC0xMzAxLCBVU0EuCisqLworCisjaWZuZGVm
IEluc3BlY3RvclNlcnZlclF0X2gKKyNkZWZpbmUgSW5zcGVjdG9yU2VydmVyUXRfaAorCisjaW5j
bHVkZSA8UUxpc3Q+CisjaW5jbHVkZSA8UU1hcD4KKyNpbmNsdWRlIDxRT2JqZWN0PgorI2luY2x1
ZGUgPFFQYWlyPgorI2luY2x1ZGUgPFFTdHJpbmc+CisjaW5jbHVkZSA8d3RmL0ZvcndhcmQuaD4K
KworY2xhc3MgUVRjcFNlcnZlcjsKK2NsYXNzIFFUY3BTb2NrZXQ7CitjbGFzcyBRV2ViUGFnZTsK
KworbmFtZXNwYWNlIFdlYkNvcmUgeworY2xhc3MgSW5zcGVjdG9yU2VydmVyUmVxdWVzdEhhbmRs
ZXJRdDsKK2NsYXNzIEluc3BlY3RvckNsaWVudFF0OworCitjbGFzcyBJbnNwZWN0b3JTZXJ2ZXJR
dCA6IHB1YmxpYyBRT2JqZWN0IHsKKyAgICBRX09CSkVDVAorcHVibGljOgorCisgICAgc3RhdGlj
IEluc3BlY3RvclNlcnZlclF0KiBzZXJ2ZXIoKTsKKworICAgIHZvaWQgbGlzdGVuKHF1aW50MTYg
cG9ydCk7CisKKyAgICB2b2lkIHJlZ2lzdGVyQ2xpZW50KEluc3BlY3RvckNsaWVudFF0KiBjbGll
bnQpOworICAgIHZvaWQgdW5yZWdpc3RlckNsaWVudChJbnNwZWN0b3JDbGllbnRRdCogY2xpZW50
KTsKKworICAgIHZvaWQgY2xvc2UoKTsKKyAgICBJbnNwZWN0b3JDbGllbnRRdCogaW5zcGVjdG9y
Q2xpZW50Rm9yUGFnZShpbnQgcGFnZU51bSk7CisKK3Byb3RlY3RlZDoKKyAgICBJbnNwZWN0b3JT
ZXJ2ZXJRdCgpOworICAgIHZpcnR1YWwgfkluc3BlY3RvclNlcnZlclF0KCk7CisKK3ByaXZhdGUg
c2xvdHM6CisgICAgdm9pZCBuZXdDb25uZWN0aW9uKCk7CisKK3ByaXZhdGU6CisgICAgUVRjcFNl
cnZlciogbV90Y3BTZXJ2ZXI7CisgICAgUU1hcDxpbnQsIEluc3BlY3RvckNsaWVudFF0Kj4gbV9p
bnNwZWN0b3JDbGllbnRzOworICAgIGludCBtX3BhZ2VOdW1iZXI7CisKKyAgICBmcmllbmQgY2xh
c3MgSW5zcGVjdG9yU2VydmVyUmVxdWVzdEhhbmRsZXJRdDsKK307CisKK2NsYXNzIFJlbW90ZUZy
b250ZW5kQ2hhbm5lbCA6IHB1YmxpYyBRT2JqZWN0IHsKKyAgICBRX09CSkVDVAorcHVibGljOgor
CisgICAgUmVtb3RlRnJvbnRlbmRDaGFubmVsKEluc3BlY3RvclNlcnZlclJlcXVlc3RIYW5kbGVy
UXQqIHJlcXVlc3RIYW5kbGVyKTsKKyAgICBib29sIHNlbmRNZXNzYWdlVG9Gcm9udGVuZChjb25z
dCBTdHJpbmcmIG1lc3NhZ2UpOworCitwcml2YXRlOgorICAgIEluc3BlY3RvclNlcnZlclJlcXVl
c3RIYW5kbGVyUXQqIG1fcmVxdWVzdEhhbmRsZXI7Cit9OworCitjbGFzcyBJbnNwZWN0b3JTZXJ2
ZXJSZXF1ZXN0SGFuZGxlclF0IDogcHVibGljIFFPYmplY3QgeworICAgIFFfT0JKRUNUCitwdWJs
aWM6CisKKyAgICBJbnNwZWN0b3JTZXJ2ZXJSZXF1ZXN0SGFuZGxlclF0KFFUY3BTb2NrZXQgKnRj
cENvbm5lY3Rpb24sIEluc3BlY3RvclNlcnZlclF0ICpzZXJ2ZXIpOworICAgIHZpcnR1YWwgfklu
c3BlY3RvclNlcnZlclJlcXVlc3RIYW5kbGVyUXQoKTsKKyAgICB2aXJ0dWFsIGludCB3ZWJTb2Nr
ZXRTZW5kKFFCeXRlQXJyYXkgcGF5bG9hZCk7CisgICAgdmlydHVhbCBpbnQgd2ViU29ja2V0U2Vu
ZChjb25zdCBjaGFyICpwYXlsb2FkLCBzaXplX3QgbGVuZ3RoKTsKKworcHJpdmF0ZSBzbG90czoK
KyAgICB2b2lkIHRjcFJlYWR5UmVhZCgpOworICAgIHZvaWQgdGNwQ29ubmVjdGlvbkRpc2Nvbm5l
Y3RlZCgpOworICAgIHZvaWQgd2ViU29ja2V0UmVhZHlSZWFkKCk7CisKK3ByaXZhdGU6CisgICAg
UVRjcFNvY2tldCogbV90Y3BDb25uZWN0aW9uOworICAgIEluc3BlY3RvclNlcnZlclF0KiBtX3Nl
cnZlcjsKKworICAgIFFTdHJpbmcgbV9wYXRoOworICAgIFFCeXRlQXJyYXkgbV9jb250ZW50VHlw
ZTsKKyAgICBpbnQgbV9jb250ZW50TGVuZ3RoOworICAgIGJvb2wgbV9lbmRPZkhlYWRlcnM7Cisg
ICAgUUJ5dGVBcnJheSBtX2RhdGE7CisgICAgSW5zcGVjdG9yQ2xpZW50UXQqIG1faW5zcGVjdG9y
Q2xpZW50OworCisgICAgdm9pZCBoYW5kbGVJbnNwZWN0b3JSZXF1ZXN0KFFTdHJpbmdMaXN0IHdv
cmRzKTsKKyAgICB2b2lkIGhhbmRsZUZyb21Gcm9udGVuZFJlcXVlc3QoKTsKKyAgICB2b2lkIGhh
bmRsZVJlc291cmNlUmVxdWVzdChRU3RyaW5nTGlzdCB3b3Jkcyk7CisKK307CisKK30KKyNlbmRp
ZgpkaWZmIC0tZ2l0IGEvV2ViS2l0VG9vbHMvQ2hhbmdlTG9nIGIvV2ViS2l0VG9vbHMvQ2hhbmdl
TG9nCmluZGV4IDBmMzE2ZDI1NzVhNzE2MzUwMzZmMzZjZmFmZmQ5ZmU0M2U5ZThiZGUuLjcwNTQ1
MGNjMDc0MTMwYjhmZTMyZWM2MzU2Zjc0MjA1Mzc3M2Q3ZDAgMTAwNjQ0Ci0tLSBhL1dlYktpdFRv
b2xzL0NoYW5nZUxvZworKysgYi9XZWJLaXRUb29scy9DaGFuZ2VMb2cKQEAgLTEsMyArMSwyOSBA
QAorMjAxMC0wOS0xNCAgSmFtZXkgSGlja3MgIDxqYW1leS5oaWNrc0Bub2tpYS5jb20+CisKKyAg
ICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgW1F0XSBXZWIgSW5z
cGVjdG9yOiBSZW1vdGUgV2ViIEluc3BlY3RvciBzdXBwb3J0IGZvciBRdFdlYktpdAorICAgICAg
ICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9NDM5ODgKKworICAgICAg
ICBSdW5zIGEgd2ViIGRlYnVnIHNlcnZlciBvbiBwb3J0IHNwZWNpZmllZCBieSBRdFRlc3RCcm93
c2VyCisgICAgICAgIGFyZ3VtZW50IC1yZW1vdGUtaW5zcGVjdG9yLXBvcnQuIFByb3BlcnR5Cisg
ICAgICAgIF9xX3dlYkluc3BlY3RvclNlcnZlclBvcnQgb2YgdGhlIFFXZWJQYWdlIGluc3RhbmNl
IHdpbGwgYmUgc2V0CisgICAgICAgIGFjY29yZGluZyB0byB0aGUgYXJndW1lbnQuIEFsbCBwYWdl
cyB3aXRoIHRoYXQgcHJvcGVydHkgc2V0IHdpbGwKKyAgICAgICAgYmUgcmVtb3RlbHkgaW5zcGVj
dGFibGUuCisKKyAgICAgICAgVVJMIGZvciByZW1vdGUgaW5zcGVjdGlvbiBvZiBmaXJzdCBRV2Vi
UGFnZSBpcworICAgICAgICAgICAgaHR0cDovL2xvY2FsaG9zdDo5MjIyL3dlYmtpdC9pbnNwZWN0
b3IvaW5zcGVjdG9yLmh0bWw/cGFnZT0xCisgICAgICAgIHdoZXJlIDEgaXMgdGhlIG51bWJlciBv
ZiB0aGUgUVdlYlBhZ2UgaW5zdGFuY2UuCisKKyAgICAgICAgVGhlIGJhc2UgVVJMIHlpZWxkcyBh
biBpbmRleCBwYWdlIHdpdGggbGlua3MgdG8gdGhlIGluZGl2aWR1YWwgaW5zcGVjdG9yczoKKyAg
ICAgICAgICAgIGh0dHA6Ly9sb2NhbGhvc3Q6OTIyMi8KKyAgICAgICAgCisgICAgICAgICogUXRU
ZXN0QnJvd3Nlci9sYXVuY2hlcndpbmRvdy5jcHA6CisgICAgICAgIChMYXVuY2hlcldpbmRvdzo6
aW5pdCk6CisgICAgICAgICogUXRUZXN0QnJvd3Nlci9sYXVuY2hlcndpbmRvdy5oOgorICAgICAg
ICAqIFF0VGVzdEJyb3dzZXIvbWFpbi5jcHA6CisgICAgICAgIChMYXVuY2hlckFwcGxpY2F0aW9u
OjpoYW5kbGVVc2VyT3B0aW9ucyk6CisKIDIwMTAtMDktMTQgIENzYWJhIE9zenRyb2dvbsOhYyAg
PG9zc3lAd2Via2l0Lm9yZz4KIAogICAgICAgICBBZGRpbmcgbXlzZWxmIGFzIGEgcmV2aWV3ZXIu
CmRpZmYgLS1naXQgYS9XZWJLaXRUb29scy9RdFRlc3RCcm93c2VyL2xhdW5jaGVyd2luZG93LmNw
cCBiL1dlYktpdFRvb2xzL1F0VGVzdEJyb3dzZXIvbGF1bmNoZXJ3aW5kb3cuY3BwCmluZGV4IDNi
NDdmMjljYjQ2N2I0N2U5MTE5YjkzNDAzMzMzMmQ1MjNmNWQ1OGEuLjY0NmJiMDdkMWJmYzE3YzA2
NDUzY2NkMGMzY2UxMjEzMWYzMGIxMGIgMTAwNjQ0Ci0tLSBhL1dlYktpdFRvb2xzL1F0VGVzdEJy
b3dzZXIvbGF1bmNoZXJ3aW5kb3cuY3BwCisrKyBiL1dlYktpdFRvb2xzL1F0VGVzdEJyb3dzZXIv
bGF1bmNoZXJ3aW5kb3cuY3BwCkBAIC05MSw2ICs5MSw5IEBAIHZvaWQgTGF1bmNoZXJXaW5kb3c6
OmluaXQoKQogICAgIG1faW5zcGVjdG9yLT5oaWRlKCk7CiAgICAgY29ubmVjdCh0aGlzLCBTSUdO
QUwoZGVzdHJveWVkKCkpLCBtX2luc3BlY3RvciwgU0xPVChkZWxldGVMYXRlcigpKSk7CiAKKyAg
ICBpZiAobV93aW5kb3dPcHRpb25zLnJlbW90ZUluc3BlY3RvclBvcnQpCisgICAgICAgIHBhZ2Uo
KS0+c2V0UHJvcGVydHkoIl9xX3dlYkluc3BlY3RvclNlcnZlclBvcnQiLCBtX3dpbmRvd09wdGlv
bnMucmVtb3RlSW5zcGVjdG9yUG9ydCk7CisKICAgICAvLyB0aGUgem9vbSB2YWx1ZXMgYXJlIGNo
b3NlbiB0byBiZSBsaWtlIGluIE1vemlsbGEgRmlyZWZveCAzCiAgICAgaWYgKCFtX3pvb21MZXZl
bHMuY291bnQoKSkgewogICAgICAgICBtX3pvb21MZXZlbHMgPDwgMzAgPDwgNTAgPDwgNjcgPDwg
ODAgPDwgOTA7CmRpZmYgLS1naXQgYS9XZWJLaXRUb29scy9RdFRlc3RCcm93c2VyL2xhdW5jaGVy
d2luZG93LmggYi9XZWJLaXRUb29scy9RdFRlc3RCcm93c2VyL2xhdW5jaGVyd2luZG93LmgKaW5k
ZXggNjVmMzkwZDg5NGQ1NDQzZTA3YzU0MDAzMWRmYjE1ZTUzZmJhNDZmNy4uZTFjNzQ3MGE4NmM1
NDhkZGI3NTU2ODYzYjEyNTU4ZjYwNGM2ZjQ5ZiAxMDA2NDQKLS0tIGEvV2ViS2l0VG9vbHMvUXRU
ZXN0QnJvd3Nlci9sYXVuY2hlcndpbmRvdy5oCisrKyBiL1dlYktpdFRvb2xzL1F0VGVzdEJyb3dz
ZXIvbGF1bmNoZXJ3aW5kb3cuaApAQCAtMTEwLDYgKzExMCw3IEBAIHB1YmxpYzoKICAgICBib29s
IHVzZVFHTFdpZGdldFZpZXdwb3J0OwogI2VuZGlmCiAgICAgUVVybCBpbnNwZWN0b3JVcmw7Cisg
ICAgcXVpbnQxNiByZW1vdGVJbnNwZWN0b3JQb3J0OwogfTsKIAogY2xhc3MgTGF1bmNoZXJXaW5k
b3cgOiBwdWJsaWMgTWFpbldpbmRvdyB7CmRpZmYgLS1naXQgYS9XZWJLaXRUb29scy9RdFRlc3RC
cm93c2VyL21haW4uY3BwIGIvV2ViS2l0VG9vbHMvUXRUZXN0QnJvd3Nlci9tYWluLmNwcAppbmRl
eCBlYzg2NGU5ZDA5NWEzZWY4MGE3MjU3ZDBmOWYyZTNmZTUwMmZiNGFlLi4xMmEzMTFlZTNlYTZi
YzM4N2ZlY2NhNGYwZjU0ZjU3Y2E2MWZhOTM5IDEwMDY0NAotLS0gYS9XZWJLaXRUb29scy9RdFRl
c3RCcm93c2VyL21haW4uY3BwCisrKyBiL1dlYktpdFRvb2xzL1F0VGVzdEJyb3dzZXIvbWFpbi5j
cHAKQEAgLTE4MCw2ICsxODAsMTEgQEAgdm9pZCBMYXVuY2hlckFwcGxpY2F0aW9uOjpoYW5kbGVV
c2VyT3B0aW9ucygpCiAgICAgaWYgKGluc3BlY3RvclVybEluZGV4ICE9IC0xKQogICAgICAgIHdp
bmRvd09wdGlvbnMuaW5zcGVjdG9yVXJsID0gdGFrZU9wdGlvblZhbHVlKCZhcmdzLCBpbnNwZWN0
b3JVcmxJbmRleCk7CiAKKyAgICBRU3RyaW5nIHJlbW90ZUluc3BlY3RvclBvcnRBcmcoIi1yZW1v
dGUtaW5zcGVjdG9yLXBvcnQiKTsKKyAgICBpbnQgcmVtb3RlSW5zcGVjdG9yUG9ydEluZGV4ID0g
YXJncy5pbmRleE9mKHJlbW90ZUluc3BlY3RvclBvcnRBcmcpOworICAgIGlmIChyZW1vdGVJbnNw
ZWN0b3JQb3J0SW5kZXggIT0gLTEpCisgICAgICAgIHdpbmRvd09wdGlvbnMucmVtb3RlSW5zcGVj
dG9yUG9ydCA9IHRha2VPcHRpb25WYWx1ZSgmYXJncywgcmVtb3RlSW5zcGVjdG9yUG9ydEluZGV4
KS50b0ludCgpOworCiAgICAgaW50IHJvYm90SW5kZXggPSBhcmdzLmluZGV4T2YoIi1yIik7CiAg
ICAgaWYgKHJvYm90SW5kZXggIT0gLTEpIHsKICAgICAgICAgUVN0cmluZyBsaXN0RmlsZSA9IHRh
a2VPcHRpb25WYWx1ZSgmYXJncywgcm9ib3RJbmRleCk7Cg==
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>68382</attachid>
            <date>2010-09-22 09:40:39 -0700</date>
            <delta_ts>2010-09-22 10:34:05 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-43988-20100922124037.patch</filename>
            <type>text/plain</type>
            <size>34659</size>
            <attacher name="Jamey Hicks">jamey.hicks</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1dlYkNvcmUvQ2hhbmdlTG9nIGIvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXgg
OGUzYjI1ZDQ4NDY5NmE4MzlhYjQ3MjNmYzM4NzZkMDI5ZmY1NzI1ZC4uNjYyOGFiM2IwMjRhMDE1
NTQ4N2FmMGFiOWQxMTRkZjk5YmY2ODJmMiAxMDA2NDQKLS0tIGEvV2ViQ29yZS9DaGFuZ2VMb2cK
KysrIGIvV2ViQ29yZS9DaGFuZ2VMb2cKQEAgLTEsMyArMSwyNSBAQAorMjAxMC0wOS0yMiAgSmFt
ZXkgSGlja3MgIDxqYW1leS5oaWNrc0Bub2tpYS5jb20+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkg
Tk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgW1F0XSBXZWIgSW5zcGVjdG9yOiBSZW1vdGUgV2Vi
IEluc3BlY3RvciBzdXBwb3J0IGZvciBRdFdlYktpdAorICAgICAgICBodHRwczovL2J1Z3Mud2Vi
a2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9NDM5ODgKKworICAgICAgICBSdW5zIGEgd2ViIGRlYnVn
IHNlcnZlciBvbiBwb3J0IHNwZWNpZmllZCBieSBRdFRlc3RCcm93c2VyCisgICAgICAgIGFyZ3Vt
ZW50IC1yZW1vdGUtaW5zcGVjdG9yLXBvcnQuIFByb3BlcnR5CisgICAgICAgIF9xX3dlYkluc3Bl
Y3RvclNlcnZlclBvcnQgb2YgdGhlIFFXZWJQYWdlIGluc3RhbmNlIHdpbGwgYmUgc2V0CisgICAg
ICAgIGFjY29yZGluZyB0byB0aGUgYXJndW1lbnQuIEFsbCBwYWdlcyB3aXRoIHRoYXQgcHJvcGVy
dHkgc2V0IHdpbGwKKyAgICAgICAgYmUgcmVtb3RlbHkgaW5zcGVjdGFibGUuCisKKyAgICAgICAg
VVJMIGZvciByZW1vdGUgaW5zcGVjdGlvbiBvZiBmaXJzdCBRV2ViUGFnZSBpcworICAgICAgICAg
ICAgaHR0cDovL2xvY2FsaG9zdDo5MjIyL3dlYmtpdC9pbnNwZWN0b3IvaW5zcGVjdG9yLmh0bWw/
cGFnZT0xCisgICAgICAgIHdoZXJlIDEgaXMgdGhlIG51bWJlciBvZiB0aGUgUVdlYlBhZ2UgaW5z
dGFuY2UuCisKKyAgICAgICAgVGhlIGJhc2UgVVJMIHlpZWxkcyBhbiBpbmRleCBwYWdlIHdpdGgg
bGlua3MgdG8gdGhlIGluZGl2aWR1YWwgaW5zcGVjdG9yczoKKyAgICAgICAgICAgIGh0dHA6Ly9s
b2NhbGhvc3Q6OTIyMi8KKworICAgICAgICAqIFdlYkNvcmUucHJvCisKIDIwMTAtMDktMjIgIEtl
bm5ldGggUnVzc2VsbCAgPGtickBnb29nbGUuY29tPgogCiAgICAgICAgIFJldmlld2VkIGJ5IEph
bWVzIFJvYmluc29uLgpkaWZmIC0tZ2l0IGEvV2ViQ29yZS9XZWJDb3JlLnBybyBiL1dlYkNvcmUv
V2ViQ29yZS5wcm8KaW5kZXggODQ4NTU2Yjg5OTdmMzI0MzcyYTE1MTY4YWJhNTlkMjQ1ZTY5OWU3
OC4uNWQzNjUwY2Q2ZmY4YTY5M2E3NWU2ZmZkZGYzYTU2MWU4ODMxOTViNSAxMDA2NDQKLS0tIGEv
V2ViQ29yZS9XZWJDb3JlLnBybworKysgYi9XZWJDb3JlL1dlYkNvcmUucHJvCkBAIC0yNTAzLDYg
KzI1MDMsNyBAQCBIRUFERVJTICs9IFwKICAgICB4bWwvWFNMVFByb2Nlc3Nvci5oIFwKICAgICB4
bWwvWFNMVFVuaWNvZGVTb3J0LmggXAogICAgICQkUFdELy4uL1dlYktpdC9xdC9BcGkvcXdlYnBs
dWdpbmRhdGFiYXNlX3AuaCBcCisgICAgJCRQV0QvLi4vV2ViS2l0L3F0L1dlYkNvcmVTdXBwb3J0
L0luc3BlY3RvclNlcnZlclF0LmggXAogICAgICQkUFdELy4uL1dlYktpdC9xdC9XZWJDb3JlU3Vw
cG9ydC9RdEZhbGxiYWNrV2ViUG9wdXAuaCBcCiAgICAgJCRQV0QvLi4vV2ViS2l0L3F0L1dlYkNv
cmVTdXBwb3J0L0ZyYW1lTG9hZGVyQ2xpZW50UXQuaCBcCiAgICAgJCRQV0QvLi4vV2ViS2l0L3F0
L1dlYkNvcmVTdXBwb3J0L0ZyYW1lTmV0d29ya2luZ0NvbnRleHRRdC5oIFwKQEAgLTI2MDksNiAr
MjYxMCw3IEBAIFNPVVJDRVMgKz0gXAogICAgIC4uL1dlYktpdC9xdC9XZWJDb3JlU3VwcG9ydC9G
cmFtZU5ldHdvcmtpbmdDb250ZXh0UXQuY3BwIFwKICAgICAuLi9XZWJLaXQvcXQvV2ViQ29yZVN1
cHBvcnQvR2VvbG9jYXRpb25QZXJtaXNzaW9uQ2xpZW50UXQuY3BwIFwKICAgICAuLi9XZWJLaXQv
cXQvV2ViQ29yZVN1cHBvcnQvSW5zcGVjdG9yQ2xpZW50UXQuY3BwIFwKKyAgICAuLi9XZWJLaXQv
cXQvV2ViQ29yZVN1cHBvcnQvSW5zcGVjdG9yU2VydmVyUXQuY3BwIFwKICAgICAuLi9XZWJLaXQv
cXQvV2ViQ29yZVN1cHBvcnQvTm90aWZpY2F0aW9uUHJlc2VudGVyQ2xpZW50UXQuY3BwIFwKICAg
ICAuLi9XZWJLaXQvcXQvV2ViQ29yZVN1cHBvcnQvUGFnZUNsaWVudFF0LmNwcCBcCiAgICAgLi4v
V2ViS2l0L3F0L1dlYkNvcmVTdXBwb3J0L1BvcHVwTWVudVF0LmNwcCBcCmRpZmYgLS1naXQgYS9X
ZWJLaXQvcXQvQXBpL3F3ZWJpbnNwZWN0b3IuY3BwIGIvV2ViS2l0L3F0L0FwaS9xd2ViaW5zcGVj
dG9yLmNwcAppbmRleCA4MDJlYTk4MDQ4ZmE1Yjk3ZTRmZmMzZDUwN2MzMjg1YTBjYjZhM2UzLi4y
NzE0OGY3MGJkOGE5Y2FmMjYzNDdhMjQ5ZDQ4Y2Y2MGNmMWY3MDg0IDEwMDY0NAotLS0gYS9XZWJL
aXQvcXQvQXBpL3F3ZWJpbnNwZWN0b3IuY3BwCisrKyBiL1dlYktpdC9xdC9BcGkvcXdlYmluc3Bl
Y3Rvci5jcHAKQEAgLTE5Niw2ICsxOTYsMzEgQEAgdm9pZCBRV2ViSW5zcGVjdG9yUHJpdmF0ZTo6
c2V0RnJvbnRlbmQoUVdpZGdldCogbmV3RnJvbnRlbmQpCiAgICAgfQogfQogCisvKiEgCisgKiBc
aW50ZXJuYWwgCisgKi8KK3ZvaWQgUVdlYkluc3BlY3RvclByaXZhdGU6OmF0dGFjaEFuZFJlcGxh
Y2VSZW1vdGVGcm9udGVuZChRT2JqZWN0KiBuZXdSZW1vdGVGcm9udGVuZCkKK3sKKyAgICBpZiAo
cmVtb3RlRnJvbnRlbmQpCisgICAgICAgIHJlbW90ZUZyb250ZW5kLT5zZXRQYXJlbnQoMCk7CisK
KyAgICByZW1vdGVGcm9udGVuZCA9IG5ld1JlbW90ZUZyb250ZW5kOworCisgICAgaWYgKHJlbW90
ZUZyb250ZW5kKQorICAgICAgICByZW1vdGVGcm9udGVuZC0+c2V0UGFyZW50KHEpOworfQorCisv
KiEgCisgKiBcaW50ZXJuYWwgCisgKi8KK3ZvaWQgUVdlYkluc3BlY3RvclByaXZhdGU6OmRldGFj
aFJlbW90ZUZyb250ZW5kKCkKK3sKKyAgICBpZiAocmVtb3RlRnJvbnRlbmQpIHsKKyAgICAgICAg
cmVtb3RlRnJvbnRlbmQtPmRlbGV0ZUxhdGVyKCk7CisgICAgICAgIHJlbW90ZUZyb250ZW5kID0g
MDsKKyAgICB9Cit9CisKIHZvaWQgUVdlYkluc3BlY3RvclByaXZhdGU6OmFkanVzdEZyb250ZW5k
U2l6ZShjb25zdCBRU2l6ZSYgc2l6ZSkKIHsKICAgICBpZiAoZnJvbnRlbmQpCmRpZmYgLS1naXQg
YS9XZWJLaXQvcXQvQXBpL3F3ZWJpbnNwZWN0b3JfcC5oIGIvV2ViS2l0L3F0L0FwaS9xd2ViaW5z
cGVjdG9yX3AuaAppbmRleCA0ZDMyN2NjNWE5MTFmN2U1MjI5ODA0ZjFkOGUyNzlhNDU0OGVkNzU3
Li4zMDk5ZWIxNGJhNWEyOGNlZGE1NjZlZjEwNzUzYTJlMTBlZGJiMDhkIDEwMDY0NAotLS0gYS9X
ZWJLaXQvcXQvQXBpL3F3ZWJpbnNwZWN0b3JfcC5oCisrKyBiL1dlYktpdC9xdC9BcGkvcXdlYmlu
c3BlY3Rvcl9wLmgKQEAgLTMzLDE0ICszMywxOCBAQCBwdWJsaWM6CiAgICAgOiBxKHFxKQogICAg
ICwgcGFnZSgwKQogICAgICwgZnJvbnRlbmQoMCkKKyAgICAsIHJlbW90ZUZyb250ZW5kKDApCiAg
ICAge30KIAogICAgIHZvaWQgc2V0RnJvbnRlbmQoUVdpZGdldCogbmV3RnJvbnRlbmQpOworICAg
IHZvaWQgYXR0YWNoQW5kUmVwbGFjZVJlbW90ZUZyb250ZW5kKFFPYmplY3QqIG5ld1JlbW90ZUZy
b250ZW5kKTsKKyAgICB2b2lkIGRldGFjaFJlbW90ZUZyb250ZW5kKCk7CiAgICAgdm9pZCBhZGp1
c3RGcm9udGVuZFNpemUoY29uc3QgUVNpemUmIHNpemUpOwogCiAgICAgUVdlYkluc3BlY3Rvciog
cTsKICAgICBRV2ViUGFnZSogcGFnZTsKICAgICBRV2lkZ2V0KiBmcm9udGVuZDsKKyAgICBRT2Jq
ZWN0KiByZW1vdGVGcm9udGVuZDsKIH07CiAKICNlbmRpZgpkaWZmIC0tZ2l0IGEvV2ViS2l0L3F0
L0FwaS9xd2VicGFnZS5jcHAgYi9XZWJLaXQvcXQvQXBpL3F3ZWJwYWdlLmNwcAppbmRleCBiYzMw
YmY1YWE5NTZiMmM5OWI3ZWMwYjA2OWMwZTRlZDdjODM2ZDhkLi45YWExYTNiZGM2NGJmZTkzN2Qy
MmVkZmU5YjBiYzU2NDdiNjc0YTgyIDEwMDY0NAotLS0gYS9XZWJLaXQvcXQvQXBpL3F3ZWJwYWdl
LmNwcAorKysgYi9XZWJLaXQvcXQvQXBpL3F3ZWJwYWdlLmNwcApAQCAtNzcsNiArNzcsNyBAQAog
I2luY2x1ZGUgIkhUTUxJbnB1dEVsZW1lbnQuaCIKICNpbmNsdWRlICJIVE1MTmFtZXMuaCIKICNp
bmNsdWRlICJIaXRUZXN0UmVzdWx0LmgiCisjaW5jbHVkZSAiSW5zcGVjdG9yU2VydmVyUXQuaCIK
ICNpbmNsdWRlICJXaW5kb3dGZWF0dXJlcy5oIgogI2luY2x1ZGUgIldlYlBsYXRmb3JtU3RyYXRl
Z2llcy5oIgogI2luY2x1ZGUgIkxvY2FsaXplZFN0cmluZ3MuaCIKQEAgLTEzMDIsNiArMTMwMywx
MCBAQCB2b2lkIFFXZWJQYWdlUHJpdmF0ZTo6ZHluYW1pY1Byb3BlcnR5Q2hhbmdlRXZlbnQoUUR5
bmFtaWNQcm9wZXJ0eUNoYW5nZUV2ZW50KiBldgogICAgICAgICBmcmFtZS0+dGlsZWRCYWNraW5n
U3RvcmUoKS0+c2V0S2VlcEFuZENvdmVyQXJlYU11bHRpcGxpZXJzKGtlZXBNdWx0aXBsaWVyLCBj
b3Zlck11bHRpcGxpZXIpOwogICAgIH0KICNlbmRpZgorICAgIGVsc2UgaWYgKGV2ZW50LT5wcm9w
ZXJ0eU5hbWUoKSA9PSAiX3Ffd2ViSW5zcGVjdG9yU2VydmVyUG9ydCIpIHsKKyAgICAgICAgSW5z
cGVjdG9yU2VydmVyUXQqIGluc3BlY3RvclNlcnZlciA9IEluc3BlY3RvclNlcnZlclF0OjpzZXJ2
ZXIoKTsKKyAgICAgICAgaW5zcGVjdG9yU2VydmVyLT5saXN0ZW4oaW5zcGVjdG9yU2VydmVyUG9y
dCgpKTsKKyAgICB9CiB9CiAjZW5kaWYKIApAQCAtMTU1OSw2ICsxNTY0LDE0IEBAIEluc3BlY3Rv
ckNvbnRyb2xsZXIqIFFXZWJQYWdlUHJpdmF0ZTo6aW5zcGVjdG9yQ29udHJvbGxlcigpCiAjZW5k
aWYKIH0KIAorcXVpbnQxNiBRV2ViUGFnZVByaXZhdGU6Omluc3BlY3RvclNlcnZlclBvcnQoKQor
eworI2lmIEVOQUJMRShJTlNQRUNUT1IpICYmICFkZWZpbmVkKFFUX05PX1BST1BFUlRJRVMpCisg
ICAgaWYgKHEgJiYgcS0+cHJvcGVydHkoIl9xX3dlYkluc3BlY3RvclNlcnZlclBvcnQiKS5pc1Zh
bGlkKCkpCisgICAgICAgIHJldHVybiBxLT5wcm9wZXJ0eSgiX3Ffd2ViSW5zcGVjdG9yU2VydmVy
UG9ydCIpLnRvSW50KCk7CisjZW5kaWYKKyAgICByZXR1cm4gMDsKK30KIAogLyohCiAgICBcZW51
bSBRV2ViUGFnZTo6RmluZEZsYWcKZGlmZiAtLWdpdCBhL1dlYktpdC9xdC9BcGkvcXdlYnBhZ2Uu
aCBiL1dlYktpdC9xdC9BcGkvcXdlYnBhZ2UuaAppbmRleCBiMTQ0MWZmNDNjNmZlOTJhMzQ2NzRm
N2M3ZGNjNWE3YjE2N2ZkNGQ4Li5hMjAwNzRmOThkNTA1ZTI2Mjc1NjQwYWU4NDIxMzRhNWFmMjE3
YjQ2IDEwMDY0NAotLS0gYS9XZWJLaXQvcXQvQXBpL3F3ZWJwYWdlLmgKKysrIGIvV2ViS2l0L3F0
L0FwaS9xd2VicGFnZS5oCkBAIC01NSw2ICs1NSw3IEBAIG5hbWVzcGFjZSBXZWJDb3JlIHsKICAg
ICBjbGFzcyBFZGl0b3JDbGllbnRRdDsKICAgICBjbGFzcyBGcmFtZUxvYWRlckNsaWVudFF0Owog
ICAgIGNsYXNzIEluc3BlY3RvckNsaWVudFF0OworICAgIGNsYXNzIEluc3BlY3RvclNlcnZlclJl
cXVlc3RIYW5kbGVyUXQ7CiAgICAgY2xhc3MgSW5zcGVjdG9yRnJvbnRlbmRDbGllbnRRdDsKICAg
ICBjbGFzcyBOb3RpZmljYXRpb25QcmVzZW50ZXJDbGllbnRRdDsKICAgICBjbGFzcyBHZW9sb2Nh
dGlvblBlcm1pc3Npb25DbGllbnRRdDsKQEAgLTQyNSw2ICs0MjYsNyBAQCBwcml2YXRlOgogICAg
IGZyaWVuZCBjbGFzcyBXZWJDb3JlOjpFZGl0b3JDbGllbnRRdDsKICAgICBmcmllbmQgY2xhc3Mg
V2ViQ29yZTo6RnJhbWVMb2FkZXJDbGllbnRRdDsKICAgICBmcmllbmQgY2xhc3MgV2ViQ29yZTo6
SW5zcGVjdG9yQ2xpZW50UXQ7CisgICAgZnJpZW5kIGNsYXNzIFdlYkNvcmU6Okluc3BlY3RvclNl
cnZlclJlcXVlc3RIYW5kbGVyUXQ7CiAgICAgZnJpZW5kIGNsYXNzIFdlYkNvcmU6Okluc3BlY3Rv
ckZyb250ZW5kQ2xpZW50UXQ7CiAgICAgZnJpZW5kIGNsYXNzIFdlYkNvcmU6Ok5vdGlmaWNhdGlv
blByZXNlbnRlckNsaWVudFF0OwogICAgIGZyaWVuZCBjbGFzcyBXZWJDb3JlOjpHZW9sb2NhdGlv
blBlcm1pc3Npb25DbGllbnRRdDsKZGlmZiAtLWdpdCBhL1dlYktpdC9xdC9BcGkvcXdlYnBhZ2Vf
cC5oIGIvV2ViS2l0L3F0L0FwaS9xd2VicGFnZV9wLmgKaW5kZXggODJmNTM2NWI3Njg0N2Q2OTJk
ODA0NGFhNGUyZWE0NjIyOWY3YTU5My4uNzRlN2NhMTdkMTA0NmEwNjYwMjE2NTVhNDg4ZmY2ODAy
NDM3YWZkYyAxMDA2NDQKLS0tIGEvV2ViS2l0L3F0L0FwaS9xd2VicGFnZV9wLmgKKysrIGIvV2Vi
S2l0L3F0L0FwaS9xd2VicGFnZV9wLmgKQEAgLTEzOSw2ICsxMzksNyBAQCBwdWJsaWM6CiAgICAg
dm9pZCBzZXRJbnNwZWN0b3IoUVdlYkluc3BlY3RvciopOwogICAgIFFXZWJJbnNwZWN0b3IqIGdl
dE9yQ3JlYXRlSW5zcGVjdG9yKCk7CiAgICAgV2ViQ29yZTo6SW5zcGVjdG9yQ29udHJvbGxlciog
aW5zcGVjdG9yQ29udHJvbGxlcigpOworICAgIHF1aW50MTYgaW5zcGVjdG9yU2VydmVyUG9ydCgp
OwogCiAjaWZuZGVmIFFUX05PX1NIT1JUQ1VUCiAgICAgc3RhdGljIFFXZWJQYWdlOjpXZWJBY3Rp
b24gZWRpdG9yQWN0aW9uRm9yS2V5RXZlbnQoUUtleUV2ZW50KiBldmVudCk7CmRpZmYgLS1naXQg
YS9XZWJLaXQvcXQvQ2hhbmdlTG9nIGIvV2ViS2l0L3F0L0NoYW5nZUxvZwppbmRleCAyYzRjZWNi
Y2VmODFkMTk4NDY3YmJmNDdjYWNmOGY0ZjkzM2EwZWM3Li5iNDJkYzI5Y2NhZmQ2MWJlYTExYTk3
YTA5YmNhNDgyMzYyY2I1ZGVkIDEwMDY0NAotLS0gYS9XZWJLaXQvcXQvQ2hhbmdlTG9nCisrKyBi
L1dlYktpdC9xdC9DaGFuZ2VMb2cKQEAgLTEsMyArMSw2MyBAQAorMjAxMC0wOS0yMiAgSmFtZXkg
SGlja3MgIDxqYW1leS5oaWNrc0Bub2tpYS5jb20+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9C
T0RZIChPT1BTISkuCisKKyAgICAgICAgW1F0XSBXZWIgSW5zcGVjdG9yOiBSZW1vdGUgV2ViIElu
c3BlY3RvciBzdXBwb3J0IGZvciBRdFdlYktpdAorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0
Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9NDM5ODgKKworICAgICAgICBSdW5zIGEgd2ViIGRlYnVnIHNl
cnZlciBvbiBwb3J0IHNwZWNpZmllZCBieSBRdFRlc3RCcm93c2VyCisgICAgICAgIGFyZ3VtZW50
IC1yZW1vdGUtaW5zcGVjdG9yLXBvcnQuIFByb3BlcnR5CisgICAgICAgIF9xX3dlYkluc3BlY3Rv
clNlcnZlclBvcnQgb2YgdGhlIFFXZWJQYWdlIGluc3RhbmNlIHdpbGwgYmUgc2V0CisgICAgICAg
IGFjY29yZGluZyB0byB0aGUgYXJndW1lbnQuIEFsbCBwYWdlcyB3aXRoIHRoYXQgcHJvcGVydHkg
c2V0IHdpbGwKKyAgICAgICAgYmUgcmVtb3RlbHkgaW5zcGVjdGFibGUuCisKKyAgICAgICAgVVJM
IGZvciByZW1vdGUgaW5zcGVjdGlvbiBvZiBmaXJzdCBRV2ViUGFnZSBpcworICAgICAgICAgICAg
aHR0cDovL2xvY2FsaG9zdDo5MjIyL3dlYmtpdC9pbnNwZWN0b3IvaW5zcGVjdG9yLmh0bWw/cGFn
ZT0xCisgICAgICAgIHdoZXJlIDEgaXMgdGhlIG51bWJlciBvZiB0aGUgUVdlYlBhZ2UgaW5zdGFu
Y2UuCisKKyAgICAgICAgVGhlIGJhc2UgVVJMIHlpZWxkcyBhbiBpbmRleCBwYWdlIHdpdGggbGlu
a3MgdG8gdGhlIGluZGl2aWR1YWwgaW5zcGVjdG9yczoKKyAgICAgICAgICAgIGh0dHA6Ly9sb2Nh
bGhvc3Q6OTIyMi8KKworICAgICAgICAqIEFwaS9xd2ViaW5zcGVjdG9yLmNwcDoKKyAgICAgICAg
KFFXZWJJbnNwZWN0b3JQcml2YXRlOjphdHRhY2hBbmRSZXBsYWNlUmVtb3RlRnJvbnRlbmQpOgor
ICAgICAgICAoUVdlYkluc3BlY3RvclByaXZhdGU6OmRldGFjaFJlbW90ZUZyb250ZW5kKToKKyAg
ICAgICAgKiBBcGkvcXdlYmluc3BlY3Rvcl9wLmg6CisgICAgICAgIChRV2ViSW5zcGVjdG9yUHJp
dmF0ZTo6UVdlYkluc3BlY3RvclByaXZhdGUpOgorICAgICAgICAqIEFwaS9xd2VicGFnZS5jcHA6
CisgICAgICAgIChRV2ViUGFnZVByaXZhdGU6OmR5bmFtaWNQcm9wZXJ0eUNoYW5nZUV2ZW50KToK
KyAgICAgICAgKFFXZWJQYWdlUHJpdmF0ZTo6aW5zcGVjdG9yU2VydmVyUG9ydCk6CisgICAgICAg
ICogQXBpL3F3ZWJwYWdlLmg6CisgICAgICAgICogQXBpL3F3ZWJwYWdlX3AuaDoKKyAgICAgICAg
KiBXZWJDb3JlU3VwcG9ydC9JbnNwZWN0b3JDbGllbnRRdC5jcHA6CisgICAgICAgIChXZWJDb3Jl
OjpJbnNwZWN0b3JDbGllbnRRdDo6SW5zcGVjdG9yQ2xpZW50UXQpOgorICAgICAgICAoV2ViQ29y
ZTo6SW5zcGVjdG9yQ2xpZW50UXQ6Omluc3BlY3RvckRlc3Ryb3llZCk6CisgICAgICAgIChXZWJD
b3JlOjpJbnNwZWN0b3JDbGllbnRRdDo6b3Blbkluc3BlY3RvckZyb250ZW5kKToKKyAgICAgICAg
KFdlYkNvcmU6Okluc3BlY3RvckNsaWVudFF0OjphdHRhY2hBbmRSZXBsYWNlUmVtb3RlRnJvbnRl
bmQpOgorICAgICAgICAoV2ViQ29yZTo6SW5zcGVjdG9yQ2xpZW50UXQ6OmRldGFjaFJlbW90ZUZy
b250ZW5kKToKKyAgICAgICAgKFdlYkNvcmU6Okluc3BlY3RvckNsaWVudFF0OjpzZW5kTWVzc2Fn
ZVRvRnJvbnRlbmQpOgorICAgICAgICAqIFdlYkNvcmVTdXBwb3J0L0luc3BlY3RvckNsaWVudFF0
Lmg6CisgICAgICAgICogV2ViQ29yZVN1cHBvcnQvSW5zcGVjdG9yU2VydmVyUXQuY3BwOiBBZGRl
ZC4KKyAgICAgICAgKFdlYkNvcmU6OmdlbmVyYXRlV2ViU29ja2V0Q2hhbGxlbmdlUmVzcG9uc2Up
OgorICAgICAgICAoV2ViQ29yZTo6cGFyc2VXZWJTb2NrZXRDaGFsbGVuZ2VOdW1iZXIpOgorICAg
ICAgICAoV2ViQ29yZTo6SW5zcGVjdG9yU2VydmVyUXQ6OnNlcnZlcik6CisgICAgICAgIChXZWJD
b3JlOjpJbnNwZWN0b3JTZXJ2ZXJRdDo6SW5zcGVjdG9yU2VydmVyUXQpOgorICAgICAgICAoV2Vi
Q29yZTo6SW5zcGVjdG9yU2VydmVyUXQ6On5JbnNwZWN0b3JTZXJ2ZXJRdCk6CisgICAgICAgIChX
ZWJDb3JlOjpJbnNwZWN0b3JTZXJ2ZXJRdDo6bGlzdGVuKToKKyAgICAgICAgKFdlYkNvcmU6Oklu
c3BlY3RvclNlcnZlclF0OjpjbG9zZSk6CisgICAgICAgIChXZWJDb3JlOjpJbnNwZWN0b3JTZXJ2
ZXJRdDo6aW5zcGVjdG9yQ2xpZW50Rm9yUGFnZSk6CisgICAgICAgIChXZWJDb3JlOjpJbnNwZWN0
b3JTZXJ2ZXJRdDo6cmVnaXN0ZXJDbGllbnQpOgorICAgICAgICAoV2ViQ29yZTo6SW5zcGVjdG9y
U2VydmVyUXQ6OnVucmVnaXN0ZXJDbGllbnQpOgorICAgICAgICAoV2ViQ29yZTo6SW5zcGVjdG9y
U2VydmVyUXQ6Om5ld0Nvbm5lY3Rpb24pOgorICAgICAgICAoV2ViQ29yZTo6SW5zcGVjdG9yU2Vy
dmVyUmVxdWVzdEhhbmRsZXJRdDo6SW5zcGVjdG9yU2VydmVyUmVxdWVzdEhhbmRsZXJRdCk6Cisg
ICAgICAgIChXZWJDb3JlOjpJbnNwZWN0b3JTZXJ2ZXJSZXF1ZXN0SGFuZGxlclF0Ojp+SW5zcGVj
dG9yU2VydmVyUmVxdWVzdEhhbmRsZXJRdCk6CisgICAgICAgIChXZWJDb3JlOjpJbnNwZWN0b3JT
ZXJ2ZXJSZXF1ZXN0SGFuZGxlclF0Ojp0Y3BSZWFkeVJlYWQpOgorICAgICAgICAoV2ViQ29yZTo6
SW5zcGVjdG9yU2VydmVyUmVxdWVzdEhhbmRsZXJRdDo6dGNwQ29ubmVjdGlvbkRpc2Nvbm5lY3Rl
ZCk6CisgICAgICAgIChXZWJDb3JlOjpJbnNwZWN0b3JTZXJ2ZXJSZXF1ZXN0SGFuZGxlclF0Ojp3
ZWJTb2NrZXRTZW5kKToKKyAgICAgICAgKFdlYkNvcmU6Okluc3BlY3RvclNlcnZlclJlcXVlc3RI
YW5kbGVyUXQ6OndlYlNvY2tldFJlYWR5UmVhZCk6CisgICAgICAgIChXZWJDb3JlOjpSZW1vdGVG
cm9udGVuZENoYW5uZWw6OlJlbW90ZUZyb250ZW5kQ2hhbm5lbCk6CisgICAgICAgIChXZWJDb3Jl
OjpSZW1vdGVGcm9udGVuZENoYW5uZWw6OnNlbmRNZXNzYWdlVG9Gcm9udGVuZCk6CisgICAgICAg
ICogV2ViQ29yZVN1cHBvcnQvSW5zcGVjdG9yU2VydmVyUXQuaDogQWRkZWQuCisKIDIwMTAtMDkt
MjIgIEJhbGF6cyBLZWxlbWVuICA8a2JAaW5mLnUtc3plZ2VkLmh1PgogCiAgICAgICAgIFJldmll
d2VkIGJ5IEtlbm5ldGggUm9oZGUgQ2hyaXN0aWFuc2VuLgpkaWZmIC0tZ2l0IGEvV2ViS2l0L3F0
L1dlYkNvcmVTdXBwb3J0L0luc3BlY3RvckNsaWVudFF0LmNwcCBiL1dlYktpdC9xdC9XZWJDb3Jl
U3VwcG9ydC9JbnNwZWN0b3JDbGllbnRRdC5jcHAKaW5kZXggZTZlNmZkZWNlOTUzMmQ1MTA1YTVk
OWRmMzE4MzJkN2JlOGQzOTBkMC4uYjY2NzNlNmNkNTM4ZDAzMzJiZTRlZGI4MmZiZmQ3MmQzNGVm
NmIwNiAxMDA2NDQKLS0tIGEvV2ViS2l0L3F0L1dlYkNvcmVTdXBwb3J0L0luc3BlY3RvckNsaWVu
dFF0LmNwcAorKysgYi9XZWJLaXQvcXQvV2ViQ29yZVN1cHBvcnQvSW5zcGVjdG9yQ2xpZW50UXQu
Y3BwCkBAIC0zMiw3ICszMiwxMCBAQAogI2luY2x1ZGUgIkluc3BlY3RvckNsaWVudFF0LmgiCiAK
ICNpbmNsdWRlICJGcmFtZS5oIgorI2luY2x1ZGUgIkluc3BlY3RvckJhY2tlbmREaXNwYXRjaGVy
LmgiCiAjaW5jbHVkZSAiSW5zcGVjdG9yQ29udHJvbGxlci5oIgorI2luY2x1ZGUgIkluc3BlY3Rv
ckZyb250ZW5kLmgiCisjaW5jbHVkZSAiSW5zcGVjdG9yU2VydmVyUXQuaCIKICNpbmNsdWRlICJO
b3RJbXBsZW1lbnRlZC5oIgogI2luY2x1ZGUgIlBhZ2UuaCIKICNpbmNsdWRlICJQbGF0Zm9ybVN0
cmluZy5oIgpAQCAtMTE1LDE3ICsxMTgsMjYgQEAgSW5zcGVjdG9yQ2xpZW50UXQ6Okluc3BlY3Rv
ckNsaWVudFF0KFFXZWJQYWdlKiBwYWdlKQogICAgIDogbV9pbnNwZWN0ZWRXZWJQYWdlKHBhZ2Up
CiAgICAgLCBtX2Zyb250ZW5kV2ViUGFnZSgwKQogICAgICwgbV9mcm9udGVuZENsaWVudCgwKQot
e30KK3sKKyAgICBJbnNwZWN0b3JTZXJ2ZXJRdCogd2ViSW5zcGVjdG9yU2VydmVyID0gSW5zcGVj
dG9yU2VydmVyUXQ6OnNlcnZlcigpOworICAgIGlmICh3ZWJJbnNwZWN0b3JTZXJ2ZXIpCisgICAg
ICAgIHdlYkluc3BlY3RvclNlcnZlci0+cmVnaXN0ZXJDbGllbnQodGhpcyk7Cit9CiAKIHZvaWQg
SW5zcGVjdG9yQ2xpZW50UXQ6Omluc3BlY3RvckRlc3Ryb3llZCgpCiB7CiAgICAgaWYgKG1fZnJv
bnRlbmRDbGllbnQpCiAgICAgICAgIG1fZnJvbnRlbmRDbGllbnQtPmluc3BlY3RvckNsaWVudERl
c3Ryb3llZCgpOworCisgICAgSW5zcGVjdG9yU2VydmVyUXQqIHdlYkluc3BlY3RvclNlcnZlciA9
IEluc3BlY3RvclNlcnZlclF0OjpzZXJ2ZXIoKTsKKyAgICBpZiAod2ViSW5zcGVjdG9yU2VydmVy
KQorICAgICAgICB3ZWJJbnNwZWN0b3JTZXJ2ZXItPnVucmVnaXN0ZXJDbGllbnQodGhpcyk7CisK
ICAgICBkZWxldGUgdGhpczsKIH0KIAogICAgIAotdm9pZCBJbnNwZWN0b3JDbGllbnRRdDo6b3Bl
bkluc3BlY3RvckZyb250ZW5kKFdlYkNvcmU6Okluc3BlY3RvckNvbnRyb2xsZXIqKQordm9pZCBJ
bnNwZWN0b3JDbGllbnRRdDo6b3Blbkluc3BlY3RvckZyb250ZW5kKFdlYkNvcmU6Okluc3BlY3Rv
ckNvbnRyb2xsZXIqIGluc3BlY3RvckNvbnRyb2xsZXIpCiB7CiAjaWYgVVNFKFY4KQogICAgIGVu
c3VyZURlYnVnZ2VyU2NyaXB0TG9hZGVkKCk7CkBAIC0xMzYsNiArMTQ4LDEwIEBAIHZvaWQgSW5z
cGVjdG9yQ2xpZW50UXQ6Om9wZW5JbnNwZWN0b3JGcm9udGVuZChXZWJDb3JlOjpJbnNwZWN0b3JD
b250cm9sbGVyKikKICAgICBpbnNwZWN0b3JWaWV3LT5zZXRQYWdlKGluc3BlY3RvclBhZ2UpOwog
CiAgICAgUVdlYkluc3BlY3RvciogaW5zcGVjdG9yID0gbV9pbnNwZWN0ZWRXZWJQYWdlLT5kLT5n
ZXRPckNyZWF0ZUluc3BlY3RvcigpOworICAgIC8vIFJlbW90ZSBmcm9udGVuZCB3YXMgYXR0YWNo
ZWQuCisgICAgaWYgKG1faW5zcGVjdGVkV2ViUGFnZS0+ZC0+aW5zcGVjdG9yLT5kLT5yZW1vdGVG
cm9udGVuZCkKKyAgICAgICAgcmV0dXJuOworCiAgICAgLy8gVGhpcyBpcyBhIGtub3duIGhvb2sg
dGhhdCBhbGxvd3MgY2hhbmdpbmcgdGhlIGRlZmF1bHQgVVJMIGZvciB0aGUKICAgICAvLyBXZWIg
aW5zcGVjdG9yLiBUaGlzIGlzIHVzZWQgZm9yIFNESyBwdXJwb3Nlcy4gUGxlYXNlIGtlZXAgdGhp
cyBob29rCiAgICAgLy8gYXJvdW5kIGFuZCBkb24ndCByZW1vdmUgaXQuCkBAIC0xNjcsNiArMTgz
LDIzIEBAIHZvaWQgSW5zcGVjdG9yQ2xpZW50UXQ6OnJlbGVhc2VGcm9udGVuZFBhZ2UoKQogICAg
IG1fZnJvbnRlbmRDbGllbnQgPSAwOwogfQogCit2b2lkIEluc3BlY3RvckNsaWVudFF0OjphdHRh
Y2hBbmRSZXBsYWNlUmVtb3RlRnJvbnRlbmQoUmVtb3RlRnJvbnRlbmRDaGFubmVsKiBjaGFubmVs
KQoreworI2lmIEVOQUJMRShJTlNQRUNUT1IpCisgICAgLy8gQ2hhbm5lbCB3YXMgYWxsb2NhdGVk
IGJ5IEluc3BlY3RvclNlcnZlclF0LiBIZXJlIHdlIHRyYW5zZmVyIG93bmVyc2hpcCB0byBpbnNw
ZWN0b3IuCisgICAgbV9pbnNwZWN0ZWRXZWJQYWdlLT5kLT5pbnNwZWN0b3ItPmQtPmF0dGFjaEFu
ZFJlcGxhY2VSZW1vdGVGcm9udGVuZChjaGFubmVsKTsKKyAgICBtX2luc3BlY3RlZFdlYlBhZ2Ut
PmQtPmluc3BlY3RvckNvbnRyb2xsZXIoKS0+Y29ubmVjdEZyb250ZW5kKCk7CisjZW5kaWYKK30K
Kwordm9pZCBJbnNwZWN0b3JDbGllbnRRdDo6ZGV0YWNoUmVtb3RlRnJvbnRlbmQoKQoreworI2lm
IEVOQUJMRShJTlNQRUNUT1IpCisgICAgbV9pbnNwZWN0ZWRXZWJQYWdlLT5kLT5pbnNwZWN0b3It
PmQtPmRldGFjaFJlbW90ZUZyb250ZW5kKCk7CisgICAgbV9pbnNwZWN0ZWRXZWJQYWdlLT5kLT5p
bnNwZWN0b3JDb250cm9sbGVyKCktPmRpc2Nvbm5lY3RGcm9udGVuZCgpOworI2VuZGlmCit9CisK
IHZvaWQgSW5zcGVjdG9yQ2xpZW50UXQ6OmhpZ2hsaWdodChOb2RlKikKIHsKICAgICBub3RJbXBs
ZW1lbnRlZCgpOwpAQCAtMjIzLDYgKzI1NiwxMiBAQCB2b2lkIEluc3BlY3RvckNsaWVudFF0Ojpz
dG9yZVNldHRpbmcoY29uc3QgU3RyaW5nJiBrZXksIGNvbnN0IFN0cmluZyYgc2V0dGluZykKIAog
Ym9vbCBJbnNwZWN0b3JDbGllbnRRdDo6c2VuZE1lc3NhZ2VUb0Zyb250ZW5kKGNvbnN0IFN0cmlu
ZyYgbWVzc2FnZSkKIHsKKyAgICBpZiAobV9pbnNwZWN0ZWRXZWJQYWdlLT5kLT5pbnNwZWN0b3It
PmQtPnJlbW90ZUZyb250ZW5kKSB7CisgICAgICAgIFJlbW90ZUZyb250ZW5kQ2hhbm5lbCogc2Vz
c2lvbiA9IHFvYmplY3RfY2FzdDxSZW1vdGVGcm9udGVuZENoYW5uZWwqPihtX2luc3BlY3RlZFdl
YlBhZ2UtPmQtPmluc3BlY3Rvci0+ZC0+cmVtb3RlRnJvbnRlbmQpOworICAgICAgICBpZiAoc2Vz
c2lvbikKKyAgICAgICAgICAgIHNlc3Npb24tPnNlbmRNZXNzYWdlVG9Gcm9udGVuZChtZXNzYWdl
KTsKKyAgICAgICAgcmV0dXJuIHRydWU7CisgICAgfQogICAgIGlmICghbV9mcm9udGVuZFdlYlBh
Z2UpCiAgICAgICAgIHJldHVybiBmYWxzZTsKIApkaWZmIC0tZ2l0IGEvV2ViS2l0L3F0L1dlYkNv
cmVTdXBwb3J0L0luc3BlY3RvckNsaWVudFF0LmggYi9XZWJLaXQvcXQvV2ViQ29yZVN1cHBvcnQv
SW5zcGVjdG9yQ2xpZW50UXQuaAppbmRleCAwMDc0MTU5ZGYyOGY4NzBhNmMwZjMzMWRiYmQ3ODA4
NzU2YjBiZjlkLi42NGEyZDBjMTRkNWRlZWIyNTk2ODE4NDNhMmUyNWYwNmJlYTE5ZDE4IDEwMDY0
NAotLS0gYS9XZWJLaXQvcXQvV2ViQ29yZVN1cHBvcnQvSW5zcGVjdG9yQ2xpZW50UXQuaAorKysg
Yi9XZWJLaXQvcXQvV2ViQ29yZVN1cHBvcnQvSW5zcGVjdG9yQ2xpZW50UXQuaApAQCAtNDIsOCAr
NDIsMTAgQEAgY2xhc3MgUVdlYlZpZXc7CiAKIG5hbWVzcGFjZSBXZWJDb3JlIHsKIGNsYXNzIElu
c3BlY3RvckZyb250ZW5kQ2xpZW50UXQ7CitjbGFzcyBJbnNwZWN0b3JTZXJ2ZXJSZXF1ZXN0SGFu
ZGxlclF0OwogY2xhc3MgTm9kZTsKIGNsYXNzIFBhZ2U7CitjbGFzcyBSZW1vdGVGcm9udGVuZENo
YW5uZWw7CiAKIGNsYXNzIEluc3BlY3RvckNsaWVudFF0IDogcHVibGljIEluc3BlY3RvckNsaWVu
dCB7CiBwdWJsaWM6CkBAIC02MywxMCArNjUsMTYgQEAgcHVibGljOgogCiAgICAgdm9pZCByZWxl
YXNlRnJvbnRlbmRQYWdlKCk7CiAKKyAgICB2b2lkIGF0dGFjaEFuZFJlcGxhY2VSZW1vdGVGcm9u
dGVuZChSZW1vdGVGcm9udGVuZENoYW5uZWwgKmNoYW5uZWwpOworICAgIHZvaWQgZGV0YWNoUmVt
b3RlRnJvbnRlbmQoKTsKKwogcHJpdmF0ZToKICAgICBRV2ViUGFnZSogbV9pbnNwZWN0ZWRXZWJQ
YWdlOwogICAgIFFXZWJQYWdlKiBtX2Zyb250ZW5kV2ViUGFnZTsKICAgICBJbnNwZWN0b3JGcm9u
dGVuZENsaWVudFF0KiBtX2Zyb250ZW5kQ2xpZW50OworICAgIGJvb2wgbV9yZW1vdGVJbnNwZWN0
b3I7CisKKyAgICBmcmllbmQgY2xhc3MgSW5zcGVjdG9yU2VydmVyUmVxdWVzdEhhbmRsZXJRdDsK
IH07CiAKIGNsYXNzIEluc3BlY3RvckZyb250ZW5kQ2xpZW50UXQgOiBwdWJsaWMgSW5zcGVjdG9y
RnJvbnRlbmRDbGllbnRMb2NhbCB7CmRpZmYgLS1naXQgYS9XZWJLaXQvcXQvV2ViQ29yZVN1cHBv
cnQvSW5zcGVjdG9yU2VydmVyUXQuY3BwIGIvV2ViS2l0L3F0L1dlYkNvcmVTdXBwb3J0L0luc3Bl
Y3RvclNlcnZlclF0LmNwcApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5mYWQ3MjQ3ZjIzMWVmZGM0ODViNjVkYjQ4ZGI5
OTg3ZWViNWU3YmM4Ci0tLSAvZGV2L251bGwKKysrIGIvV2ViS2l0L3F0L1dlYkNvcmVTdXBwb3J0
L0luc3BlY3RvclNlcnZlclF0LmNwcApAQCAtMCwwICsxLDM4NiBAQAorLyoKKyAgQ29weXJpZ2h0
IChDKSAyMDEwIE5va2lhIENvcnBvcmF0aW9uIGFuZC9vciBpdHMgc3Vic2lkaWFyeSgtaWVzKQor
CisgIFRoaXMgbGlicmFyeSBpcyBmcmVlIHNvZnR3YXJlOyB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBp
dCBhbmQvb3IKKyAgbW9kaWZ5IGl0IHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05VIExpYnJhcnkg
R2VuZXJhbCBQdWJsaWMKKyAgTGljZW5zZSBhcyBwdWJsaXNoZWQgYnkgdGhlIEZyZWUgU29mdHdh
cmUgRm91bmRhdGlvbjsgZWl0aGVyCisgIHZlcnNpb24gMiBvZiB0aGUgTGljZW5zZSwgb3IgKGF0
IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KKworICBUaGlzIGxpYnJhcnkgaXMgZGlz
dHJpYnV0ZWQgaW4gdGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCwKKyAgYnV0IFdJVEhP
VVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKKyAg
TUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFLiAgU2Vl
IHRoZSBHTlUKKyAgTGlicmFyeSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGZvciBtb3JlIGRldGFp
bHMuCisKKyAgWW91IHNob3VsZCBoYXZlIHJlY2VpdmVkIGEgY29weSBvZiB0aGUgR05VIExpYnJh
cnkgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQorICBhbG9uZyB3aXRoIHRoaXMgbGlicmFyeTsgc2Vl
IHRoZSBmaWxlIENPUFlJTkcuTElCLiAgSWYgbm90LCB3cml0ZSB0bworICB0aGUgRnJlZSBTb2Z0
d2FyZSBGb3VuZGF0aW9uLCBJbmMuLCA1MSBGcmFua2xpbiBTdHJlZXQsIEZpZnRoIEZsb29yLAor
ICBCb3N0b24sIE1BIDAyMTEwLTEzMDEsIFVTQS4KKyovCisKKyNpbmNsdWRlICJjb25maWcuaCIK
KyNpbmNsdWRlICJJbnNwZWN0b3JTZXJ2ZXJRdC5oIgorCisjaW5jbHVkZSAiSW5zcGVjdG9yQmFj
a2VuZERpc3BhdGNoZXIuaCIKKyNpbmNsdWRlICJJbnNwZWN0b3JDbGllbnRRdC5oIgorI2luY2x1
ZGUgIk1ENS5oIgorI2luY2x1ZGUgIlBhZ2UuaCIKKyNpbmNsdWRlICJxd2VicGFnZS5oIgorI2lu
Y2x1ZGUgInF3ZWJwYWdlX3AuaCIKKyNpbmNsdWRlIDxRRmlsZT4KKyNpbmNsdWRlIDxRSHR0cEhl
YWRlcj4KKyNpbmNsdWRlIDxRSHR0cFJlcXVlc3RIZWFkZXI+CisjaW5jbHVkZSA8UUh0dHBSZXNw
b25zZUhlYWRlcj4KKyNpbmNsdWRlIDxRU3RyaW5nPgorI2luY2x1ZGUgPFFTdHJpbmdMaXN0Pgor
I2luY2x1ZGUgPFFUY3BTZXJ2ZXI+CisjaW5jbHVkZSA8UVRjcFNvY2tldD4KKyNpbmNsdWRlIDxR
VXJsPgorI2luY2x1ZGUgPFFXaWRnZXQ+CisjaW5jbHVkZSA8cWVuZGlhbi5oPgorCituYW1lc3Bh
Y2UgV2ViQ29yZSB7CisKKy8qIQorICAgIENvbXB1dGVzIHRoZSBXZWJTb2NrZXQgaGFuZHNoYWtl
IHJlc3BvbnNlIGdpdmVuIHRoZSB0d28gY2hhbGxlbmdlIG51bWJlcnMgYW5kIGtleTMuCisgKi8K
K3N0YXRpYyB2b2lkIGdlbmVyYXRlV2ViU29ja2V0Q2hhbGxlbmdlUmVzcG9uc2UodWludDMyX3Qg
bnVtYmVyMSwgdWludDMyX3QgbnVtYmVyMiwgY29uc3QgdW5zaWduZWQgY2hhciBrZXkzWzhdLCB1
bnNpZ25lZCBjaGFyIHJlc3BvbnNlWzE2XSkKK3sKKyAgICB1aW50OF90IGNoYWxsZW5nZVsxNl07
CisgICAgcVRvQmlnRW5kaWFuPHFpbnQzMj4obnVtYmVyMSwgJmNoYWxsZW5nZVswXSk7CisgICAg
cVRvQmlnRW5kaWFuPHFpbnQzMj4obnVtYmVyMiwgJmNoYWxsZW5nZVs0XSk7CisgICAgbWVtY3B5
KCZjaGFsbGVuZ2VbOF0sIGtleTMsIDgpOworICAgIE1ENSBtZDU7CisgICAgbWQ1LmFkZEJ5dGVz
KGNoYWxsZW5nZSwgc2l6ZW9mKGNoYWxsZW5nZSkpOworICAgIFZlY3Rvcjx1aW50OF90LCAxNj4g
ZGlnZXN0OworICAgIG1kNS5jaGVja3N1bShkaWdlc3QpOworICAgIG1lbWNweShyZXNwb25zZSwg
ZGlnZXN0LmRhdGEoKSwgMTYpOworfQorCisvKiEKKyAgICBQYXJzZXMgYW5kIHJldHVybnMgYSBX
ZWJTb2NrZXQgY2hhbGxlbmdlIG51bWJlciBhY2NvcmRpbmcgdG8gdGhlCisgICAgbWV0aG9kIHNw
ZWNpZmllZCBpbiB0aGUgV2ViU29ja2V0IHByb3RvY29sLgorCisgICAgVGhlIGZpZWxkIGNvbnRh
aW5zIG51bWVyaWMgZGlnaXRzIGludGVyc3BlcnNlZCB3aXRoIHNwYWNlcyBhbmQKKyAgICBub24t
bnVtZXJpYyBkaWdpdHMuIFRoZSBwcm90b2NvbCBpZ25vcmVzIHRoZSBjaGFyYWN0ZXJzIHRoYXQg
YXJlCisgICAgbmVpdGhlciBkaWdpdHMgbm9yIHNwYWNlcy4gVGhlIGRpZ2l0cyBhcmUgY29uY2F0
ZW5hdGVkIGFuZAorICAgIGludGVycHJldGVkIGFzIGEgbG9uZyBpbnQuIFRoZSByZXN1bHQgaXMg
dGhpcyBudW1iZXIgZGl2aWRlZCBieQorICAgIHRoZSBudW1iZXIgb2Ygc3BhY2VzLgorICovCitz
dGF0aWMgcXVpbnQzMiBwYXJzZVdlYlNvY2tldENoYWxsZW5nZU51bWJlcihRU3RyaW5nIGZpZWxk
KQoreworICAgIFFTdHJpbmcgblN0cmluZzsKKyAgICBpbnQgbnVtU3BhY2VzID0gMDsKKyAgICBm
b3IgKGludCBpID0gMDsgaSA8IGZpZWxkLnNpemUoKTsgaSsrKSB7CisgICAgICAgIFFDaGFyIGMg
PSBmaWVsZFtpXTsKKyAgICAgICAgaWYgKGMgPT0gKFFDaGFyKScgJykgeworICAgICAgICAgICAg
bnVtU3BhY2VzKys7CisgICAgICAgIH0gZWxzZSBpZiAoKGMgPj0gKFFDaGFyKScwJykgJiYgKGMg
PD0gKFFDaGFyKSc5JykpIHsKKyAgICAgICAgICAgIG5TdHJpbmcuYXBwZW5kKChRQ2hhciljKTsK
KyAgICAgICAgfQorICAgIH0KKyAgICBxdWludDMyIG51bSA9IG5TdHJpbmcudG9Mb25nKCk7Cisg
ICAgcXVpbnQzMiByZXN1bHQgPSAobnVtU3BhY2VzID8gKG51bSAvIG51bVNwYWNlcykgOiBudW0p
OworICAgIHJldHVybiByZXN1bHQ7Cit9CisKK3N0YXRpYyBJbnNwZWN0b3JTZXJ2ZXJRdCogc19p
bnNwZWN0b3JTZXJ2ZXI7CisKK0luc3BlY3RvclNlcnZlclF0KiBJbnNwZWN0b3JTZXJ2ZXJRdDo6
c2VydmVyKCkKK3sKKyAgICAvLyBzX2luc3BlY3RvclNlcnZlciBpcyBkZWxldGVkIGluIHVucmVn
aXN0ZXJDbGllbnQoKSB3aGVuIHRoZSBsYXN0IGNsaWVudCBpcyB1bnJlZ2lzdGVyZWQuCisgICAg
aWYgKCFzX2luc3BlY3RvclNlcnZlcikKKyAgICAgICAgc19pbnNwZWN0b3JTZXJ2ZXIgPSBuZXcg
SW5zcGVjdG9yU2VydmVyUXQoKTsKKworICAgIHJldHVybiBzX2luc3BlY3RvclNlcnZlcjsKK30K
KworSW5zcGVjdG9yU2VydmVyUXQ6Okluc3BlY3RvclNlcnZlclF0KCkKKyAgICA6IFFPYmplY3Qo
KQorICAgICwgbV90Y3BTZXJ2ZXIoMCkKKyAgICAsIG1fcGFnZU51bWJlcigxKQoreworfQorCitJ
bnNwZWN0b3JTZXJ2ZXJRdDo6fkluc3BlY3RvclNlcnZlclF0KCkKK3sKKyAgICBjbG9zZSgpOwor
fQorCit2b2lkIEluc3BlY3RvclNlcnZlclF0OjpsaXN0ZW4ocXVpbnQxNiBwb3J0KQoreworICAg
IGlmIChtX3RjcFNlcnZlcikKKyAgICAgICAgcmV0dXJuOworCisgICAgbV90Y3BTZXJ2ZXIgPSBu
ZXcgUVRjcFNlcnZlcigpOworICAgIG1fdGNwU2VydmVyLT5saXN0ZW4oUUhvc3RBZGRyZXNzOjpB
bnksIHBvcnQpOworICAgIGNvbm5lY3QobV90Y3BTZXJ2ZXIsIFNJR05BTChuZXdDb25uZWN0aW9u
KCkpLCBTTE9UKG5ld0Nvbm5lY3Rpb24oKSkpOworfQorCit2b2lkIEluc3BlY3RvclNlcnZlclF0
OjpjbG9zZSgpCit7CisgICAgaWYgKG1fdGNwU2VydmVyKSB7CisgICAgICAgIG1fdGNwU2VydmVy
LT5jbG9zZSgpOworICAgICAgICBkZWxldGUgbV90Y3BTZXJ2ZXI7CisgICAgfQorICAgIG1fdGNw
U2VydmVyID0gMDsKK30KKworSW5zcGVjdG9yQ2xpZW50UXQqIEluc3BlY3RvclNlcnZlclF0Ojpp
bnNwZWN0b3JDbGllbnRGb3JQYWdlKGludCBwYWdlTnVtKQoreworICAgIEluc3BlY3RvckNsaWVu
dFF0KiBjbGllbnQgPSBtX2luc3BlY3RvckNsaWVudHMudmFsdWUocGFnZU51bSk7CisgICAgcmV0
dXJuIGNsaWVudDsKK30KKwordm9pZCBJbnNwZWN0b3JTZXJ2ZXJRdDo6cmVnaXN0ZXJDbGllbnQo
SW5zcGVjdG9yQ2xpZW50UXQqIGNsaWVudCkKK3sKKyAgICBpZiAoIW1faW5zcGVjdG9yQ2xpZW50
cy5rZXkoY2xpZW50KSkKKyAgICAgICAgbV9pbnNwZWN0b3JDbGllbnRzLmluc2VydChtX3BhZ2VO
dW1iZXIrKywgY2xpZW50KTsKK30KKwordm9pZCBJbnNwZWN0b3JTZXJ2ZXJRdDo6dW5yZWdpc3Rl
ckNsaWVudChJbnNwZWN0b3JDbGllbnRRdCogY2xpZW50KQoreworICAgIGludCBwYWdlTnVtID0g
bV9pbnNwZWN0b3JDbGllbnRzLmtleShjbGllbnQsIC0xKTsKKyAgICBpZiAocGFnZU51bSA+PSAw
KQorICAgICAgICBtX2luc3BlY3RvckNsaWVudHMucmVtb3ZlKHBhZ2VOdW0pOworICAgIGlmICgh
bV9pbnNwZWN0b3JDbGllbnRzLnNpemUoKSkgeworICAgICAgICAvLyBzX2luc3BlY3RvclNlcnZl
ciBwb2ludHMgdG8gdGhpcy4KKyAgICAgICAgc19pbnNwZWN0b3JTZXJ2ZXIgPSAwOworICAgICAg
ICBjbG9zZSgpOworICAgICAgICBkZWxldGVMYXRlcigpOworICAgIH0KK30KKwordm9pZCBJbnNw
ZWN0b3JTZXJ2ZXJRdDo6bmV3Q29ubmVjdGlvbigpCit7CisgICAgUVRjcFNvY2tldCogdGNwQ29u
bmVjdGlvbiA9IG1fdGNwU2VydmVyLT5uZXh0UGVuZGluZ0Nvbm5lY3Rpb24oKTsKKyAgICBJbnNw
ZWN0b3JTZXJ2ZXJSZXF1ZXN0SGFuZGxlclF0KiBoYW5kbGVyID0gbmV3IEluc3BlY3RvclNlcnZl
clJlcXVlc3RIYW5kbGVyUXQodGNwQ29ubmVjdGlvbiwgdGhpcyk7CisgICAgaGFuZGxlci0+c2V0
UGFyZW50KHRoaXMpOworfQorCitJbnNwZWN0b3JTZXJ2ZXJSZXF1ZXN0SGFuZGxlclF0OjpJbnNw
ZWN0b3JTZXJ2ZXJSZXF1ZXN0SGFuZGxlclF0KFFUY3BTb2NrZXQqIHRjcENvbm5lY3Rpb24sIElu
c3BlY3RvclNlcnZlclF0KiBzZXJ2ZXIpCisgICAgOiBRT2JqZWN0KHNlcnZlcikKKyAgICAsIG1f
dGNwQ29ubmVjdGlvbih0Y3BDb25uZWN0aW9uKQorICAgICwgbV9zZXJ2ZXIoc2VydmVyKQorICAg
ICwgbV9pbnNwZWN0b3JDbGllbnQoMCkKK3sKKyAgICBtX2VuZE9mSGVhZGVycyA9IGZhbHNlOyAg
ICAKKyAgICBtX2NvbnRlbnRMZW5ndGggPSAwOworCisgICAgY29ubmVjdChtX3RjcENvbm5lY3Rp
b24sIFNJR05BTChyZWFkeVJlYWQoKSksIFNMT1QodGNwUmVhZHlSZWFkKCkpKTsKKyAgICBjb25u
ZWN0KG1fdGNwQ29ubmVjdGlvbiwgU0lHTkFMKGRpc2Nvbm5lY3RlZCgpKSwgU0xPVCh0Y3BDb25u
ZWN0aW9uRGlzY29ubmVjdGVkKCkpKTsKK30KKworSW5zcGVjdG9yU2VydmVyUmVxdWVzdEhhbmRs
ZXJRdDo6fkluc3BlY3RvclNlcnZlclJlcXVlc3RIYW5kbGVyUXQoKQoreworfQorCit2b2lkIElu
c3BlY3RvclNlcnZlclJlcXVlc3RIYW5kbGVyUXQ6OnRjcFJlYWR5UmVhZCgpCit7CisgICAgUUh0
dHBSZXF1ZXN0SGVhZGVyIGhlYWRlcjsKKyAgICBib29sIGlzV2ViU29ja2V0ID0gZmFsc2U7Cisg
ICAgaWYgKCFtX3RjcENvbm5lY3Rpb24pCisgICAgICAgIHJldHVybjsKKworICAgIGlmICghbV9l
bmRPZkhlYWRlcnMpIHsKKyAgICAgICAgd2hpbGUgKG1fdGNwQ29ubmVjdGlvbi0+Ynl0ZXNBdmFp
bGFibGUoKSAmJiAhbV9lbmRPZkhlYWRlcnMpIHsKKyAgICAgICAgICAgIFFCeXRlQXJyYXkgbGlu
ZSA9IG1fdGNwQ29ubmVjdGlvbi0+cmVhZExpbmUoKTsKKyAgICAgICAgICAgIG1fZGF0YS5hcHBl
bmQobGluZSk7CisgICAgICAgICAgICBpZiAobGluZSA9PSAiXHJcbiIpCisgICAgICAgICAgICAg
ICAgbV9lbmRPZkhlYWRlcnMgPSB0cnVlOworICAgICAgICB9CisgICAgICAgIGlmIChtX2VuZE9m
SGVhZGVycykgeworICAgICAgICAgICAgaGVhZGVyID0gUUh0dHBSZXF1ZXN0SGVhZGVyKFFTdHJp
bmc6OmZyb21MYXRpbjEobV9kYXRhKSk7CisgICAgICAgICAgICBpZiAoaGVhZGVyLmlzVmFsaWQo
KSkgeworICAgICAgICAgICAgICAgIG1fcGF0aCA9IGhlYWRlci5wYXRoKCk7CisgICAgICAgICAg
ICAgICAgbV9jb250ZW50VHlwZSA9IGhlYWRlci5jb250ZW50VHlwZSgpLnRvTGF0aW4xKCk7Cisg
ICAgICAgICAgICAgICAgbV9jb250ZW50TGVuZ3RoID0gaGVhZGVyLmNvbnRlbnRMZW5ndGgoKTsK
KyAgICAgICAgICAgICAgICBpZiAoaGVhZGVyLmhhc0tleSgiVXBncmFkZSIpICYmIChoZWFkZXIu
dmFsdWUoIlVwZ3JhZGUiKSA9PSBRTGF0aW4xU3RyaW5nKCJXZWJTb2NrZXQiKSkpCisgICAgICAg
ICAgICAgICAgICAgIGlzV2ViU29ja2V0ID0gdHJ1ZTsKKworICAgICAgICAgICAgICAgIG1fZGF0
YS5jbGVhcigpOworICAgICAgICAgICAgfQorICAgICAgICB9CisgICAgfQorCisgICAgaWYgKG1f
ZW5kT2ZIZWFkZXJzKSB7CisgICAgICAgIFFTdHJpbmdMaXN0IHBhdGhBbmRRdWVyeSA9IG1fcGF0
aC5zcGxpdCgiPyIpOworICAgICAgICBtX3BhdGggPSBwYXRoQW5kUXVlcnlbMF07CisgICAgICAg
IFFTdHJpbmdMaXN0IHdvcmRzID0gbV9wYXRoLnNwbGl0KFFTdHJpbmc6OmZyb21MYXRpbjEoIi8i
KSk7CisKKyAgICAgICAgaWYgKGlzV2ViU29ja2V0KSB7CisgICAgICAgICAgICAvLyBzd2l0Y2gg
dG8gd2Vic29ja2V0LXN0eWxlIFdlYlNvY2tldFNlcnZpY2UgbWVzc2FnaW5nCisgICAgICAgICAg
ICBpZiAobV90Y3BDb25uZWN0aW9uKSB7CisgICAgICAgICAgICAgICAgbV90Y3BDb25uZWN0aW9u
LT5kaXNjb25uZWN0KFNJR05BTChyZWFkeVJlYWQoKSkpOworICAgICAgICAgICAgICAgIGNvbm5l
Y3QobV90Y3BDb25uZWN0aW9uLCBTSUdOQUwocmVhZHlSZWFkKCkpLCBTTE9UKHdlYlNvY2tldFJl
YWR5UmVhZCgpKSk7CisKKyAgICAgICAgICAgICAgICBRQnl0ZUFycmF5IGtleTMgPSBtX3RjcENv
bm5lY3Rpb24tPnJlYWQoOCk7CisKKyAgICAgICAgICAgICAgICBxdWludDMyIG51bWJlcjEgPSBw
YXJzZVdlYlNvY2tldENoYWxsZW5nZU51bWJlcihoZWFkZXIudmFsdWUoIlNlYy1XZWJTb2NrZXQt
S2V5MSIpKTsKKyAgICAgICAgICAgICAgICBxdWludDMyIG51bWJlcjIgPSBwYXJzZVdlYlNvY2tl
dENoYWxsZW5nZU51bWJlcihoZWFkZXIudmFsdWUoIlNlYy1XZWJTb2NrZXQtS2V5MiIpKTsKKwor
ICAgICAgICAgICAgICAgIGNoYXIgcmVzcG9uc2VEYXRhWzE2XTsKKyAgICAgICAgICAgICAgICBn
ZW5lcmF0ZVdlYlNvY2tldENoYWxsZW5nZVJlc3BvbnNlKG51bWJlcjEsIG51bWJlcjIsICh1bnNp
Z25lZCBjaGFyKilrZXkzLmRhdGEoKSwgKHVuc2lnbmVkIGNoYXIqKXJlc3BvbnNlRGF0YSk7Cisg
ICAgICAgICAgICAgICAgUUJ5dGVBcnJheSByZXNwb25zZShyZXNwb25zZURhdGEsIHNpemVvZihy
ZXNwb25zZURhdGEpKTsKKworICAgICAgICAgICAgICAgIFFIdHRwUmVzcG9uc2VIZWFkZXIgcmVz
cG9uc2VIZWFkZXIoMTAxLCAiV2ViU29ja2V0IFByb3RvY29sIEhhbmRzaGFrZSIsIDEsIDEpOwor
ICAgICAgICAgICAgICAgIHJlc3BvbnNlSGVhZGVyLnNldFZhbHVlKCJVcGdyYWRlIiwgaGVhZGVy
LnZhbHVlKCJVcGdyYWRlIikpOworICAgICAgICAgICAgICAgIHJlc3BvbnNlSGVhZGVyLnNldFZh
bHVlKCJDb25uZWN0aW9uIiwgaGVhZGVyLnZhbHVlKCJDb25uZWN0aW9uIikpOworICAgICAgICAg
ICAgICAgIHJlc3BvbnNlSGVhZGVyLnNldFZhbHVlKCJTZWMtV2ViU29ja2V0LU9yaWdpbiIsIGhl
YWRlci52YWx1ZSgiT3JpZ2luIikpOworICAgICAgICAgICAgICAgIHJlc3BvbnNlSGVhZGVyLnNl
dFZhbHVlKCJTZWMtV2ViU29ja2V0LUxvY2F0aW9uIiwgKCJ3czovLyIgKyBoZWFkZXIudmFsdWUo
Ikhvc3QiKSArIG1fcGF0aCkpOworICAgICAgICAgICAgICAgIHJlc3BvbnNlSGVhZGVyLnNldENv
bnRlbnRMZW5ndGgocmVzcG9uc2Uuc2l6ZSgpKTsKKyAgICAgICAgICAgICAgICBtX3RjcENvbm5l
Y3Rpb24tPndyaXRlKHJlc3BvbnNlSGVhZGVyLnRvU3RyaW5nKCkudG9MYXRpbjEoKSk7CisgICAg
ICAgICAgICAgICAgbV90Y3BDb25uZWN0aW9uLT53cml0ZShyZXNwb25zZSk7CisgICAgICAgICAg
ICAgICAgbV90Y3BDb25uZWN0aW9uLT5mbHVzaCgpOworCisgICAgICAgICAgICAgICAgaWYgKCh3
b3Jkcy5zaXplKCkgPT0gNCkKKyAgICAgICAgICAgICAgICAgICAgJiYgKHdvcmRzWzFdID09IFFT
dHJpbmc6OmZyb21MYXRpbjEoImRldnRvb2xzIikpCisgICAgICAgICAgICAgICAgICAgICYmICh3
b3Jkc1syXSA9PSBRU3RyaW5nOjpmcm9tTGF0aW4xKCJwYWdlIikpKSB7CisgICAgICAgICAgICAg
ICAgICAgIGludCBwYWdlTnVtID0gd29yZHNbM10udG9JbnQoKTsKKworICAgICAgICAgICAgICAg
ICAgICBtX2luc3BlY3RvckNsaWVudCA9IG1fc2VydmVyLT5pbnNwZWN0b3JDbGllbnRGb3JQYWdl
KHBhZ2VOdW0pOworICAgICAgICAgICAgICAgICAgICAvLyBBdHRhY2ggcmVtb3RlRnJvbnRlbmRD
aGFubmVsIHRvIGluc3BlY3RvciwgYWxzbyB0cmFuc2ZlcnJpbmcgb3duZXJzaGlwLgorICAgICAg
ICAgICAgICAgICAgICBpZiAobV9pbnNwZWN0b3JDbGllbnQpCisgICAgICAgICAgICAgICAgICAg
ICAgICBtX2luc3BlY3RvckNsaWVudC0+YXR0YWNoQW5kUmVwbGFjZVJlbW90ZUZyb250ZW5kKG5l
dyBSZW1vdGVGcm9udGVuZENoYW5uZWwodGhpcykpOworICAgICAgICAgICAgICAgIH0KKworICAg
ICAgICAgICAgfQorCisgICAgICAgICAgICByZXR1cm47CisgICAgICAgIH0KKyAgICAgICAgaWYg
KG1fY29udGVudExlbmd0aCAmJiAobV90Y3BDb25uZWN0aW9uLT5ieXRlc0F2YWlsYWJsZSgpIDwg
bV9jb250ZW50TGVuZ3RoKSkKKyAgICAgICAgICAgIHJldHVybjsKKworICAgICAgICBRQnl0ZUFy
cmF5IGNvbnRlbnQgPSBtX3RjcENvbm5lY3Rpb24tPnJlYWQobV9jb250ZW50TGVuZ3RoKTsKKyAg
ICAgICAgbV9lbmRPZkhlYWRlcnMgPSBmYWxzZTsKKworICAgICAgICBRQnl0ZUFycmF5IHJlc3Bv
bnNlOworICAgICAgICBpbnQgY29kZSA9IDIwMDsKKyAgICAgICAgUVN0cmluZyB0ZXh0ID0gUVN0
cmluZzo6ZnJvbUxhdGluMSgiT0siKTsKKworICAgICAgICAvLyBJZiBubyBwYXRoIGlzIHNwZWNp
ZmllZCwgZ2VuZXJhdGUgYW4gaW5kZXggcGFnZS4KKyAgICAgICAgaWYgKChtX3BhdGggPT0gIiIp
IHx8IChtX3BhdGggPT0gIi8iKSkgeworICAgICAgICAgICAgUVN0cmluZyBpbmRleEh0bWwgPSAi
PGh0bWw+PGhlYWQ+PHRpdGxlPlJlbW90ZSBXZWIgSW5zcGVjdG9yPC90aXRsZT48L2hlYWQ+PGJv
ZHk+PHVsPlxuIjsKKyAgICAgICAgICAgIGZvciAoUU1hcDxpbnQsIEluc3BlY3RvckNsaWVudFF0
KiA+Ojpjb25zdF9pdGVyYXRvciBpdCA9IG1fc2VydmVyLT5tX2luc3BlY3RvckNsaWVudHMuYmVn
aW4oKTsKKyAgICAgICAgICAgICAgICAgaXQgIT0gbV9zZXJ2ZXItPm1faW5zcGVjdG9yQ2xpZW50
cy5lbmQoKTsgCisgICAgICAgICAgICAgICAgICsraXQpIHsKKyAgICAgICAgICAgICAgICBpbmRl
eEh0bWwuYXBwZW5kKFFTdHJpbmcoIjxsaT48YSBocmVmPVwiL3dlYmtpdC9pbnNwZWN0b3IvaW5z
cGVjdG9yLmh0bWw/cGFnZT0lMVwiPiUyPC9saT5cbiIpCisgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAuYXJnKGl0LmtleSgpKQorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgLmFyZyhpdC52YWx1ZSgpLT5tX2luc3BlY3RlZFdlYlBhZ2UtPm1haW5GcmFtZSgpLT51cmwo
KS50b1N0cmluZygpKSk7CisgICAgICAgICAgICB9CisgICAgICAgICAgICBpbmRleEh0bWwuYXBw
ZW5kKCI8L3VsPjwvYm9keT48L2h0bWw+Iik7CisgICAgICAgICAgICByZXNwb25zZSA9IGluZGV4
SHRtbC50b0xhdGluMSgpOworICAgICAgICB9IGVsc2UgeworICAgICAgICAgICAgUVN0cmluZyBw
YXRoID0gUVN0cmluZygiOiUxIikuYXJnKG1fcGF0aCk7CisgICAgICAgICAgICBRRmlsZSBmaWxl
KHBhdGgpOworICAgICAgICAgICAgLy8gSXQgc2VlbXMgdGhhdCB0aGVyZSBzaG91bGQgYmUgYW4g
ZW51bSBvciBkZWZpbmUgZm9yIHRoZXNlIHN0YXR1cyBjb2RlcyBzb21ld2hlcmUgaW4gUXQgb3Ig
V2ViS2l0LAorICAgICAgICAgICAgLy8gYnV0IGdyZXAgZmFpbHMgdG8gdHVybiBvbmUgdXAuCisg
ICAgICAgICAgICAvLyBRTmV0d29yayB1c2VzIHRoZSBudW1lcmljIHZhbHVlcyBkaXJlY3RseS4K
KyAgICAgICAgICAgIGlmIChmaWxlLmV4aXN0cygpKSB7CisgICAgICAgICAgICAgICAgZmlsZS5v
cGVuKFFJT0RldmljZTo6UmVhZE9ubHkpOworICAgICAgICAgICAgICAgIHJlc3BvbnNlID0gZmls
ZS5yZWFkQWxsKCk7CisgICAgICAgICAgICB9IGVsc2UgeworICAgICAgICAgICAgICAgIGNvZGUg
PSA0MDQ7CisgICAgICAgICAgICAgICAgdGV4dCA9IFFTdHJpbmc6OmZyb21MYXRpbjEoIk5vdCBP
SyIpOworICAgICAgICAgICAgfQorICAgICAgICB9CisKKyAgICAgICAgUUh0dHBSZXNwb25zZUhl
YWRlciByZXNwb25zZUhlYWRlcihjb2RlLCB0ZXh0LCAxLCAwKTsKKyAgICAgICAgcmVzcG9uc2VI
ZWFkZXIuc2V0Q29udGVudExlbmd0aChyZXNwb25zZS5zaXplKCkpOworICAgICAgICBpZiAoIW1f
Y29udGVudFR5cGUuaXNFbXB0eSgpKQorICAgICAgICAgICAgcmVzcG9uc2VIZWFkZXIuc2V0Q29u
dGVudFR5cGUoUVN0cmluZzo6ZnJvbUxhdGluMShtX2NvbnRlbnRUeXBlKSk7CisKKyAgICAgICAg
UUJ5dGVBcnJheSBhc2NpaUhlYWRlciA9IHJlc3BvbnNlSGVhZGVyLnRvU3RyaW5nKCkudG9Bc2Np
aSgpOworICAgICAgICBtX3RjcENvbm5lY3Rpb24tPndyaXRlKGFzY2lpSGVhZGVyKTsKKworICAg
ICAgICBtX3RjcENvbm5lY3Rpb24tPndyaXRlKHJlc3BvbnNlKTsKKyAgICAgICAgbV90Y3BDb25u
ZWN0aW9uLT5mbHVzaCgpOworICAgICAgICBtX3RjcENvbm5lY3Rpb24tPmNsb3NlKCk7CisKKyAg
ICAgICAgcmV0dXJuOworICAgIH0KK30KKwordm9pZCBJbnNwZWN0b3JTZXJ2ZXJSZXF1ZXN0SGFu
ZGxlclF0Ojp0Y3BDb25uZWN0aW9uRGlzY29ubmVjdGVkKCkKK3sKKyAgICBpZiAobV9pbnNwZWN0
b3JDbGllbnQpCisgICAgICAgIG1faW5zcGVjdG9yQ2xpZW50LT5kZXRhY2hSZW1vdGVGcm9udGVu
ZCgpOworICAgIG1fdGNwQ29ubmVjdGlvbi0+ZGVsZXRlTGF0ZXIoKTsKKyAgICBtX3RjcENvbm5l
Y3Rpb24gPSAwOworfQorCitpbnQgSW5zcGVjdG9yU2VydmVyUmVxdWVzdEhhbmRsZXJRdDo6d2Vi
U29ja2V0U2VuZChRQnl0ZUFycmF5IHBheWxvYWQpCit7CisgICAgUV9BU1NFUlQobV90Y3BDb25u
ZWN0aW9uKTsKKyAgICBtX3RjcENvbm5lY3Rpb24tPnB1dENoYXIoMHgwMCk7CisgICAgaW50IG5C
eXRlcyA9IG1fdGNwQ29ubmVjdGlvbi0+d3JpdGUocGF5bG9hZCk7CisgICAgbV90Y3BDb25uZWN0
aW9uLT5wdXRDaGFyKDB4RkYpOworICAgIG1fdGNwQ29ubmVjdGlvbi0+Zmx1c2goKTsKKyAgICBy
ZXR1cm4gbkJ5dGVzOworfQorCitpbnQgSW5zcGVjdG9yU2VydmVyUmVxdWVzdEhhbmRsZXJRdDo6
d2ViU29ja2V0U2VuZChjb25zdCBjaGFyKiBkYXRhLCBzaXplX3QgbGVuZ3RoKQoreworICAgIFFf
QVNTRVJUKG1fdGNwQ29ubmVjdGlvbik7CisgICAgbV90Y3BDb25uZWN0aW9uLT5wdXRDaGFyKDB4
MDApOworICAgIGludCBuQnl0ZXMgPSBtX3RjcENvbm5lY3Rpb24tPndyaXRlKGRhdGEsIGxlbmd0
aCk7CisgICAgbV90Y3BDb25uZWN0aW9uLT5wdXRDaGFyKDB4RkYpOworICAgIG1fdGNwQ29ubmVj
dGlvbi0+Zmx1c2goKTsKKyAgICByZXR1cm4gbkJ5dGVzOworfQorCit2b2lkIEluc3BlY3RvclNl
cnZlclJlcXVlc3RIYW5kbGVyUXQ6OndlYlNvY2tldFJlYWR5UmVhZCgpCit7CisgICAgUV9BU1NF
UlQobV90Y3BDb25uZWN0aW9uKTsKKyAgICBpZiAoIW1fdGNwQ29ubmVjdGlvbi0+Ynl0ZXNBdmFp
bGFibGUoKSkKKyAgICAgICAgcmV0dXJuOworICAgIFFCeXRlQXJyYXkgY29udGVudCA9IG1fdGNw
Q29ubmVjdGlvbi0+cmVhZChtX3RjcENvbm5lY3Rpb24tPmJ5dGVzQXZhaWxhYmxlKCkpOworICAg
IG1fZGF0YS5hcHBlbmQoY29udGVudCk7CisgICAgd2hpbGUgKG1fZGF0YS5zaXplKCkgPiAwKSB7
CisgICAgICAgIC8vIGZpcnN0IGJ5dGUgaW4gd2Vic29ja2V0IGZyYW1lIHNob3VsZCBiZSAwCisg
ICAgICAgIFFfQVNTRVJUKCFtX2RhdGFbMF0pOworCisgICAgICAgIC8vIFN0YXJ0IG9mIFdlYlNv
Y2tldCBmcmFtZSBpcyBpbmRpY2F0ZWQgYnkgMAorICAgICAgICBpZiAobV9kYXRhWzBdKSB7Cisg
ICAgICAgICAgICBxQ3JpdGljYWwoKSA8PCAgIndlYlNvY2tldFJlYWR5UmVhZDogdW5rbm93biBm
cmFtZSB0eXBlIiA8PCBtX2RhdGFbMF07CisgICAgICAgICAgICBtX2RhdGEuY2xlYXIoKTsKKyAg
ICAgICAgICAgIG1fdGNwQ29ubmVjdGlvbi0+Y2xvc2UoKTsKKyAgICAgICAgICAgIHJldHVybjsK
KyAgICAgICAgfQorCisgICAgICAgIC8vIEVuZCBvZiBXZWJTb2NrZXQgZnJhbWUgaW5kaWNhdGVk
IGJ5IDB4ZmYuCisgICAgICAgIGludCBwb3MgPSBtX2RhdGEuaW5kZXhPZigweGZmLCAxKTsKKyAg
ICAgICAgaWYgKHBvcyA8IDEpCisgICAgICAgICAgICByZXR1cm47CisKKyAgICAgICAgLy8gQWZ0
ZXIgYWJvdmUgY2hlY2tzLCBsZW5ndGggd2lsbCBiZSA+PSAwLgorICAgICAgICBzaXplX3QgbGVu
Z3RoID0gcG9zIC0gMTsKKyAgICAgICAgaWYgKGxlbmd0aCA8PSAwKQorICAgICAgICAgICAgcmV0
dXJuOworCisgICAgICAgIFFCeXRlQXJyYXkgcGF5bG9hZCA9IG1fZGF0YS5taWQoMSwgbGVuZ3Ro
KTsKKworICAgICAgICBpZiAobV9pbnNwZWN0b3JDbGllbnQpIHsKKyAgICAgICAgICBJbnNwZWN0
b3JDb250cm9sbGVyKiBpbnNwZWN0b3JDb250cm9sbGVyID0gbV9pbnNwZWN0b3JDbGllbnQtPm1f
aW5zcGVjdGVkV2ViUGFnZS0+ZC0+cGFnZS0+aW5zcGVjdG9yQ29udHJvbGxlcigpOworICAgICAg
ICAgIGluc3BlY3RvckNvbnRyb2xsZXItPmluc3BlY3RvckJhY2tlbmREaXNwYXRjaGVyKCktPmRp
c3BhdGNoKFFTdHJpbmc6OmZyb21VdGY4KHBheWxvYWQpKTsKKyAgICAgICAgfQorCisgICAgICAg
IC8vIFJlbW92ZSB0aGlzIFdlYlNvY2tldCBtZXNzYWdlIGZyb20gbV9kYXRhIChwYXlsb2FkLCBz
dGFydC1vZi1mcmFtZSBieXRlLCBlbmQtb2YtZnJhbWUgYnl0ZSkuCisgICAgICAgIG1fZGF0YSA9
IG1fZGF0YS5taWQobGVuZ3RoICsgMik7CisgICAgfQorfQorCitSZW1vdGVGcm9udGVuZENoYW5u
ZWw6OlJlbW90ZUZyb250ZW5kQ2hhbm5lbChJbnNwZWN0b3JTZXJ2ZXJSZXF1ZXN0SGFuZGxlclF0
KiByZXF1ZXN0SGFuZGxlcikKKyAgICA6IFFPYmplY3QocmVxdWVzdEhhbmRsZXIpCisgICAgLCBt
X3JlcXVlc3RIYW5kbGVyKHJlcXVlc3RIYW5kbGVyKQoreworfQorCitib29sIFJlbW90ZUZyb250
ZW5kQ2hhbm5lbDo6c2VuZE1lc3NhZ2VUb0Zyb250ZW5kKGNvbnN0IFN0cmluZyYgbWVzc2FnZSkK
K3sKKyAgICBpZiAoIW1fcmVxdWVzdEhhbmRsZXIpCisgICAgICAgIHJldHVybiBmYWxzZTsKKyAg
ICBDU3RyaW5nIGNzdHIgPSBtZXNzYWdlLnV0ZjgoKTsKKyAgICByZXR1cm4gbV9yZXF1ZXN0SGFu
ZGxlci0+d2ViU29ja2V0U2VuZChjc3RyLmRhdGEoKSwgY3N0ci5sZW5ndGgoKSk7Cit9CisKK30K
ZGlmZiAtLWdpdCBhL1dlYktpdC9xdC9XZWJDb3JlU3VwcG9ydC9JbnNwZWN0b3JTZXJ2ZXJRdC5o
IGIvV2ViS2l0L3F0L1dlYkNvcmVTdXBwb3J0L0luc3BlY3RvclNlcnZlclF0LmgKbmV3IGZpbGUg
bW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MC4uNzRlOGMyZjZiOTk5NDYwNDkwM2VkYjJjYTc4Y2UxYTNjODdkNzE0MgotLS0gL2Rldi9udWxs
CisrKyBiL1dlYktpdC9xdC9XZWJDb3JlU3VwcG9ydC9JbnNwZWN0b3JTZXJ2ZXJRdC5oCkBAIC0w
LDAgKzEsMTEwIEBACisvKgorICAgIENvcHlyaWdodCAoQykgMjAxMCBOb2tpYSBDb3Jwb3JhdGlv
biBhbmQvb3IgaXRzIHN1YnNpZGlhcnkoLWllcykKKworICAgIFRoaXMgbGlicmFyeSBpcyBmcmVl
IHNvZnR3YXJlOyB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IKKyAgICBtb2RpZnkgaXQg
dW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUgTGlicmFyeSBHZW5lcmFsIFB1YmxpYworICAgIExp
Y2Vuc2UgYXMgcHVibGlzaGVkIGJ5IHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb247IGVpdGhl
cgorICAgIHZlcnNpb24gMiBvZiB0aGUgTGljZW5zZSwgb3IgKGF0IHlvdXIgb3B0aW9uKSBhbnkg
bGF0ZXIgdmVyc2lvbi4KKworICAgIFRoaXMgbGlicmFyeSBpcyBkaXN0cmlidXRlZCBpbiB0aGUg
aG9wZSB0aGF0IGl0IHdpbGwgYmUgdXNlZnVsLAorICAgIGJ1dCBXSVRIT1VUIEFOWSBXQVJSQU5U
WTsgd2l0aG91dCBldmVuIHRoZSBpbXBsaWVkIHdhcnJhbnR5IG9mCisgICAgTUVSQ0hBTlRBQklM
SVRZIG9yIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFLiAgU2VlIHRoZSBHTlUKKyAg
ICBMaWJyYXJ5IEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KKworICAg
IFlvdSBzaG91bGQgaGF2ZSByZWNlaXZlZCBhIGNvcHkgb2YgdGhlIEdOVSBMaWJyYXJ5IEdlbmVy
YWwgUHVibGljIExpY2Vuc2UKKyAgICBhbG9uZyB3aXRoIHRoaXMgbGlicmFyeTsgc2VlIHRoZSBm
aWxlIENPUFlJTkcuTElCLiAgSWYgbm90LCB3cml0ZSB0bworICAgIHRoZSBGcmVlIFNvZnR3YXJl
IEZvdW5kYXRpb24sIEluYy4sIDUxIEZyYW5rbGluIFN0cmVldCwgRmlmdGggRmxvb3IsCisgICAg
Qm9zdG9uLCBNQSAwMjExMC0xMzAxLCBVU0EuCisqLworCisjaWZuZGVmIEluc3BlY3RvclNlcnZl
clF0X2gKKyNkZWZpbmUgSW5zcGVjdG9yU2VydmVyUXRfaAorCisjaW5jbHVkZSA8UUxpc3Q+Cisj
aW5jbHVkZSA8UU1hcD4KKyNpbmNsdWRlIDxRT2JqZWN0PgorI2luY2x1ZGUgPFFQYWlyPgorI2lu
Y2x1ZGUgPFFTdHJpbmc+CisjaW5jbHVkZSA8d3RmL0ZvcndhcmQuaD4KKworY2xhc3MgUVRjcFNl
cnZlcjsKK2NsYXNzIFFUY3BTb2NrZXQ7CitjbGFzcyBRV2ViUGFnZTsKKworbmFtZXNwYWNlIFdl
YkNvcmUgeworY2xhc3MgSW5zcGVjdG9yU2VydmVyUmVxdWVzdEhhbmRsZXJRdDsKK2NsYXNzIElu
c3BlY3RvckNsaWVudFF0OworCitjbGFzcyBJbnNwZWN0b3JTZXJ2ZXJRdCA6IHB1YmxpYyBRT2Jq
ZWN0IHsKKyAgICBRX09CSkVDVAorcHVibGljOgorCisgICAgc3RhdGljIEluc3BlY3RvclNlcnZl
clF0KiBzZXJ2ZXIoKTsKKworICAgIHZvaWQgbGlzdGVuKHF1aW50MTYgcG9ydCk7CisKKyAgICB2
b2lkIHJlZ2lzdGVyQ2xpZW50KEluc3BlY3RvckNsaWVudFF0KiBjbGllbnQpOworICAgIHZvaWQg
dW5yZWdpc3RlckNsaWVudChJbnNwZWN0b3JDbGllbnRRdCogY2xpZW50KTsKKworICAgIHZvaWQg
Y2xvc2UoKTsKKyAgICBJbnNwZWN0b3JDbGllbnRRdCogaW5zcGVjdG9yQ2xpZW50Rm9yUGFnZShp
bnQgcGFnZU51bSk7CisKK3Byb3RlY3RlZDoKKyAgICBJbnNwZWN0b3JTZXJ2ZXJRdCgpOworICAg
IHZpcnR1YWwgfkluc3BlY3RvclNlcnZlclF0KCk7CisKK3ByaXZhdGUgc2xvdHM6CisgICAgdm9p
ZCBuZXdDb25uZWN0aW9uKCk7CisKK3ByaXZhdGU6CisgICAgUVRjcFNlcnZlciogbV90Y3BTZXJ2
ZXI7CisgICAgUU1hcDxpbnQsIEluc3BlY3RvckNsaWVudFF0Kj4gbV9pbnNwZWN0b3JDbGllbnRz
OworICAgIGludCBtX3BhZ2VOdW1iZXI7CisKKyAgICBmcmllbmQgY2xhc3MgSW5zcGVjdG9yU2Vy
dmVyUmVxdWVzdEhhbmRsZXJRdDsKK307CisKK2NsYXNzIFJlbW90ZUZyb250ZW5kQ2hhbm5lbCA6
IHB1YmxpYyBRT2JqZWN0IHsKKyAgICBRX09CSkVDVAorcHVibGljOgorCisgICAgUmVtb3RlRnJv
bnRlbmRDaGFubmVsKEluc3BlY3RvclNlcnZlclJlcXVlc3RIYW5kbGVyUXQqIHJlcXVlc3RIYW5k
bGVyKTsKKyAgICBib29sIHNlbmRNZXNzYWdlVG9Gcm9udGVuZChjb25zdCBTdHJpbmcmIG1lc3Nh
Z2UpOworCitwcml2YXRlOgorICAgIEluc3BlY3RvclNlcnZlclJlcXVlc3RIYW5kbGVyUXQqIG1f
cmVxdWVzdEhhbmRsZXI7Cit9OworCitjbGFzcyBJbnNwZWN0b3JTZXJ2ZXJSZXF1ZXN0SGFuZGxl
clF0IDogcHVibGljIFFPYmplY3QgeworICAgIFFfT0JKRUNUCitwdWJsaWM6CisKKyAgICBJbnNw
ZWN0b3JTZXJ2ZXJSZXF1ZXN0SGFuZGxlclF0KFFUY3BTb2NrZXQgKnRjcENvbm5lY3Rpb24sIElu
c3BlY3RvclNlcnZlclF0ICpzZXJ2ZXIpOworICAgIHZpcnR1YWwgfkluc3BlY3RvclNlcnZlclJl
cXVlc3RIYW5kbGVyUXQoKTsKKyAgICB2aXJ0dWFsIGludCB3ZWJTb2NrZXRTZW5kKFFCeXRlQXJy
YXkgcGF5bG9hZCk7CisgICAgdmlydHVhbCBpbnQgd2ViU29ja2V0U2VuZChjb25zdCBjaGFyICpw
YXlsb2FkLCBzaXplX3QgbGVuZ3RoKTsKKworcHJpdmF0ZSBzbG90czoKKyAgICB2b2lkIHRjcFJl
YWR5UmVhZCgpOworICAgIHZvaWQgdGNwQ29ubmVjdGlvbkRpc2Nvbm5lY3RlZCgpOworICAgIHZv
aWQgd2ViU29ja2V0UmVhZHlSZWFkKCk7CisKK3ByaXZhdGU6CisgICAgUVRjcFNvY2tldCogbV90
Y3BDb25uZWN0aW9uOworICAgIEluc3BlY3RvclNlcnZlclF0KiBtX3NlcnZlcjsKKworICAgIFFT
dHJpbmcgbV9wYXRoOworICAgIFFCeXRlQXJyYXkgbV9jb250ZW50VHlwZTsKKyAgICBpbnQgbV9j
b250ZW50TGVuZ3RoOworICAgIGJvb2wgbV9lbmRPZkhlYWRlcnM7CisgICAgUUJ5dGVBcnJheSBt
X2RhdGE7CisgICAgSW5zcGVjdG9yQ2xpZW50UXQqIG1faW5zcGVjdG9yQ2xpZW50OworCisgICAg
dm9pZCBoYW5kbGVJbnNwZWN0b3JSZXF1ZXN0KFFTdHJpbmdMaXN0IHdvcmRzKTsKKyAgICB2b2lk
IGhhbmRsZUZyb21Gcm9udGVuZFJlcXVlc3QoKTsKKyAgICB2b2lkIGhhbmRsZVJlc291cmNlUmVx
dWVzdChRU3RyaW5nTGlzdCB3b3Jkcyk7CisKK307CisKK30KKyNlbmRpZgpkaWZmIC0tZ2l0IGEv
V2ViS2l0VG9vbHMvQ2hhbmdlTG9nIGIvV2ViS2l0VG9vbHMvQ2hhbmdlTG9nCmluZGV4IDQzNjJl
MjU2NWI0MWQxMDc0NDdhMDIxOTJjNWU3YjFhYWIwZGZkMzAuLmI5MjgzN2ZjOWM2OGI4ZTcxZGY5
NGUxZWU5ZjQ4NWZjNGUzZGRmYmUgMTAwNjQ0Ci0tLSBhL1dlYktpdFRvb2xzL0NoYW5nZUxvZwor
KysgYi9XZWJLaXRUb29scy9DaGFuZ2VMb2cKQEAgLTEsMyArMSwyOSBAQAorMjAxMC0wOS0yMiAg
SmFtZXkgSGlja3MgIDxqYW1leS5oaWNrc0Bub2tpYS5jb20+CisKKyAgICAgICAgUmV2aWV3ZWQg
YnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgW1F0XSBXZWIgSW5zcGVjdG9yOiBSZW1vdGUg
V2ViIEluc3BlY3RvciBzdXBwb3J0IGZvciBRdFdlYktpdAorICAgICAgICBodHRwczovL2J1Z3Mu
d2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9NDM5ODgKKworICAgICAgICBSdW5zIGEgd2ViIGRl
YnVnIHNlcnZlciBvbiBwb3J0IHNwZWNpZmllZCBieSBRdFRlc3RCcm93c2VyCisgICAgICAgIGFy
Z3VtZW50IC1yZW1vdGUtaW5zcGVjdG9yLXBvcnQuIFByb3BlcnR5CisgICAgICAgIF9xX3dlYklu
c3BlY3RvclNlcnZlclBvcnQgb2YgdGhlIFFXZWJQYWdlIGluc3RhbmNlIHdpbGwgYmUgc2V0Cisg
ICAgICAgIGFjY29yZGluZyB0byB0aGUgYXJndW1lbnQuIEFsbCBwYWdlcyB3aXRoIHRoYXQgcHJv
cGVydHkgc2V0IHdpbGwKKyAgICAgICAgYmUgcmVtb3RlbHkgaW5zcGVjdGFibGUuCisKKyAgICAg
ICAgVVJMIGZvciByZW1vdGUgaW5zcGVjdGlvbiBvZiBmaXJzdCBRV2ViUGFnZSBpcworICAgICAg
ICAgICAgaHR0cDovL2xvY2FsaG9zdDo5MjIyL3dlYmtpdC9pbnNwZWN0b3IvaW5zcGVjdG9yLmh0
bWw/cGFnZT0xCisgICAgICAgIHdoZXJlIDEgaXMgdGhlIG51bWJlciBvZiB0aGUgUVdlYlBhZ2Ug
aW5zdGFuY2UuCisKKyAgICAgICAgVGhlIGJhc2UgVVJMIHlpZWxkcyBhbiBpbmRleCBwYWdlIHdp
dGggbGlua3MgdG8gdGhlIGluZGl2aWR1YWwgaW5zcGVjdG9yczoKKyAgICAgICAgICAgIGh0dHA6
Ly9sb2NhbGhvc3Q6OTIyMi8KKworICAgICAgICAqIFF0VGVzdEJyb3dzZXIvbGF1bmNoZXJ3aW5k
b3cuY3BwOgorICAgICAgICAoTGF1bmNoZXJXaW5kb3c6OmluaXQpOgorICAgICAgICAqIFF0VGVz
dEJyb3dzZXIvbGF1bmNoZXJ3aW5kb3cuaDoKKyAgICAgICAgKiBRdFRlc3RCcm93c2VyL21haW4u
Y3BwOgorICAgICAgICAoTGF1bmNoZXJBcHBsaWNhdGlvbjo6aGFuZGxlVXNlck9wdGlvbnMpOgor
CiAyMDEwLTA5LTIxICBEaXJrIFByYW5rZSAgPGRwcmFua2VAY2hyb21pdW0ub3JnPgogCiAgICAg
ICAgIFVucmV2aWV3ZWQsIGJ1aWxkIGZpeC4KZGlmZiAtLWdpdCBhL1dlYktpdFRvb2xzL1F0VGVz
dEJyb3dzZXIvbGF1bmNoZXJ3aW5kb3cuY3BwIGIvV2ViS2l0VG9vbHMvUXRUZXN0QnJvd3Nlci9s
YXVuY2hlcndpbmRvdy5jcHAKaW5kZXggNjViY2VlN2U3MWU1MWJlNThkOGY2MDE1N2E5OWQyMWZm
Y2FhOGZlNC4uOTJkYzlmMmJmNWI3ZWVkNzJlMTBlZTE5NzBlMDNhZmFlNzEyMWViMCAxMDA2NDQK
LS0tIGEvV2ViS2l0VG9vbHMvUXRUZXN0QnJvd3Nlci9sYXVuY2hlcndpbmRvdy5jcHAKKysrIGIv
V2ViS2l0VG9vbHMvUXRUZXN0QnJvd3Nlci9sYXVuY2hlcndpbmRvdy5jcHAKQEAgLTkxLDYgKzkx
LDkgQEAgdm9pZCBMYXVuY2hlcldpbmRvdzo6aW5pdCgpCiAgICAgbV9pbnNwZWN0b3ItPmhpZGUo
KTsKICAgICBjb25uZWN0KHRoaXMsIFNJR05BTChkZXN0cm95ZWQoKSksIG1faW5zcGVjdG9yLCBT
TE9UKGRlbGV0ZUxhdGVyKCkpKTsKIAorICAgIGlmIChtX3dpbmRvd09wdGlvbnMucmVtb3RlSW5z
cGVjdG9yUG9ydCkKKyAgICAgICAgcGFnZSgpLT5zZXRQcm9wZXJ0eSgiX3Ffd2ViSW5zcGVjdG9y
U2VydmVyUG9ydCIsIG1fd2luZG93T3B0aW9ucy5yZW1vdGVJbnNwZWN0b3JQb3J0KTsKKwogICAg
IC8vIHRoZSB6b29tIHZhbHVlcyBhcmUgY2hvc2VuIHRvIGJlIGxpa2UgaW4gTW96aWxsYSBGaXJl
Zm94IDMKICAgICBpZiAoIW1fem9vbUxldmVscy5jb3VudCgpKSB7CiAgICAgICAgIG1fem9vbUxl
dmVscyA8PCAzMCA8PCA1MCA8PCA2NyA8PCA4MCA8PCA5MDsKZGlmZiAtLWdpdCBhL1dlYktpdFRv
b2xzL1F0VGVzdEJyb3dzZXIvbGF1bmNoZXJ3aW5kb3cuaCBiL1dlYktpdFRvb2xzL1F0VGVzdEJy
b3dzZXIvbGF1bmNoZXJ3aW5kb3cuaAppbmRleCBkM2I3ZjhlZDEwYjZlYmY3ZGRkMWZjNGU1MTYy
MjJmMDNhOTQzYmZkLi4wZTE3YTEyZGE5Y2U3YWZmOGI3ZGRmOWJiOGZkNGRkYzQ3YWYxNTY4IDEw
MDY0NAotLS0gYS9XZWJLaXRUb29scy9RdFRlc3RCcm93c2VyL2xhdW5jaGVyd2luZG93LmgKKysr
IGIvV2ViS2l0VG9vbHMvUXRUZXN0QnJvd3Nlci9sYXVuY2hlcndpbmRvdy5oCkBAIC0xMTAsNiAr
MTEwLDcgQEAgcHVibGljOgogICAgIGJvb2wgdXNlUUdMV2lkZ2V0Vmlld3BvcnQ7CiAjZW5kaWYK
ICAgICBRVXJsIGluc3BlY3RvclVybDsKKyAgICBxdWludDE2IHJlbW90ZUluc3BlY3RvclBvcnQ7
CiB9OwogCiBjbGFzcyBMYXVuY2hlcldpbmRvdyA6IHB1YmxpYyBNYWluV2luZG93IHsKZGlmZiAt
LWdpdCBhL1dlYktpdFRvb2xzL1F0VGVzdEJyb3dzZXIvbWFpbi5jcHAgYi9XZWJLaXRUb29scy9R
dFRlc3RCcm93c2VyL21haW4uY3BwCmluZGV4IGUwYzZlN2RjY2EzMjU1YTVhZjZmYjMzODAwYWNm
YjE1MzRiZjQyOWEuLmU3Zjk3MTY1MDNkY2ViYzRhNjk0NDY4NDE0NzY2ZjY5MjM5NTZlZjAgMTAw
NjQ0Ci0tLSBhL1dlYktpdFRvb2xzL1F0VGVzdEJyb3dzZXIvbWFpbi5jcHAKKysrIGIvV2ViS2l0
VG9vbHMvUXRUZXN0QnJvd3Nlci9tYWluLmNwcApAQCAtMTg4LDYgKzE4OCwxMSBAQCB2b2lkIExh
dW5jaGVyQXBwbGljYXRpb246OmhhbmRsZVVzZXJPcHRpb25zKCkKICAgICBpZiAoaW5zcGVjdG9y
VXJsSW5kZXggIT0gLTEpCiAgICAgICAgd2luZG93T3B0aW9ucy5pbnNwZWN0b3JVcmwgPSB0YWtl
T3B0aW9uVmFsdWUoJmFyZ3MsIGluc3BlY3RvclVybEluZGV4KTsKIAorICAgIFFTdHJpbmcgcmVt
b3RlSW5zcGVjdG9yUG9ydEFyZygiLXJlbW90ZS1pbnNwZWN0b3ItcG9ydCIpOworICAgIGludCBy
ZW1vdGVJbnNwZWN0b3JQb3J0SW5kZXggPSBhcmdzLmluZGV4T2YocmVtb3RlSW5zcGVjdG9yUG9y
dEFyZyk7CisgICAgaWYgKHJlbW90ZUluc3BlY3RvclBvcnRJbmRleCAhPSAtMSkKKyAgICAgICAg
d2luZG93T3B0aW9ucy5yZW1vdGVJbnNwZWN0b3JQb3J0ID0gdGFrZU9wdGlvblZhbHVlKCZhcmdz
LCByZW1vdGVJbnNwZWN0b3JQb3J0SW5kZXgpLnRvSW50KCk7CisKICAgICBpbnQgcm9ib3RJbmRl
eCA9IGFyZ3MuaW5kZXhPZigiLXIiKTsKICAgICBpZiAocm9ib3RJbmRleCAhPSAtMSkgewogICAg
ICAgICBRU3RyaW5nIGxpc3RGaWxlID0gdGFrZU9wdGlvblZhbHVlKCZhcmdzLCByb2JvdEluZGV4
KTsK
</data>

          </attachment>
      

    </bug>

</bugzilla>