<?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>29431</bug_id>
          
          <creation_ts>2009-09-18 07:45:20 -0700</creation_ts>
          <short_desc>[Qt] REGRESSION:(r50665) QWebFrame::setScrollBarPolicy(Qt::Vertical,Qt::ScrollBarAlwaysOff) has no effect.</short_desc>
          <delta_ts>2010-04-09 00:41:33 -0700</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>WebKit Qt</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>Other</rep_platform>
          <op_sys>All</op_sys>
          <bug_status>CLOSED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords>Qt</keywords>
          <priority>P1</priority>
          <bug_severity>Major</bug_severity>
          <target_milestone>---</target_milestone>
          
          <blocked>35784</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="Tor Arne Vestbø">vestbo</reporter>
          <assigned_to name="Antonio Gomes">tonikitoo</assigned_to>
          <cc>alice.barraclough</cc>
    
    <cc>benjamin</cc>
    
    <cc>eric</cc>
    
    <cc>gustavo</cc>
    
    <cc>hausmann</cc>
    
    <cc>hyatt</cc>
    
    <cc>ismail</cc>
    
    <cc>jesus</cc>
    
    <cc>jturcotte</cc>
    
    <cc>kenneth</cc>
    
    <cc>luiz</cc>
    
    <cc>mark</cc>
    
    <cc>tonikitoo</cc>
    
    <cc>webkit.review.bot</cc>
    
    <cc>xan.lopez</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>148137</commentid>
    <comment_count>0</comment_count>
    <who name="Tor Arne Vestbø">vestbo</who>
    <bug_when>2009-09-18 07:45:20 -0700</bug_when>
    <thetext>This bug report originated from issue QTBUG-3366
&lt;http://bugreports.qt.nokia.com/browse/QTBUG-3366&gt;

--- Description ---

QWebFrame::setScrollBarPolicy(Qt::Vertical,Qt::ScrollBarAlwaysOff) has no effect, and setScrollBarPolicy(Qt::Horizontal,Qt::ScrollBarAlwaysOff) has similar issues.

Launch the browser with the patch below applied. Notice that vertical scrollbars are rendered during load, but not once load has completed, but appear again upon resizing the window. The vertical one is always there.


diff --git a/demos/browser/webview.cpp b/demos/browser/webview.cpp
index 6ba41ee..c85726b 100644
--- a/demos/browser/webview.cpp
+++ b/demos/browser/webview.cpp
@@ -170,6 +170,8 @@ WebView::WebView(QWidget* parent)
             this, SLOT(downloadRequested(const QNetworkRequest &amp;)));
     page()-&gt;setForwardUnsupportedContent(true);

+    page()-&gt;mainFrame()-&gt;setScrollBarPolicy(Qt::Horizontal,Qt::ScrollBarAlwaysOff);
+    page()-&gt;mainFrame()-&gt;setScrollBarPolicy(Qt::Vertical,Qt::ScrollBarAlwaysOff);
 }

 void WebView::contextMenuEvent(QContextMenuEvent *event)
@@ -222,6 +224,9 @@ void WebView::loadFinished()
                    &lt;&lt; &quot;Url:&quot; &lt;&lt; url();
     }
     m_progress = 0;
+
+    page()-&gt;mainFrame()-&gt;setScrollBarPolicy(Qt::Horizontal,Qt::ScrollBarAlwaysOff);
+    page()-&gt;mainFrame()-&gt;setScrollBarPolicy(Qt::Vertical,Qt::ScrollBarAlwaysOff);
 }

 void WebView::loadUrl(const QUrl &amp;url)
fenglich@englich:qt/4.5:~/dev/qt-45/demos/bro</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>164527</commentid>
    <comment_count>1</comment_count>
    <who name="Ismail Donmez">ismail</who>
    <bug_when>2009-11-18 04:12:57 -0800</bug_when>
    <thetext>I can reproduce this with latest qtwebkit 4.6 snapshot.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>182333</commentid>
    <comment_count>2</comment_count>
    <who name="Antonio Gomes">tonikitoo</who>
    <bug_when>2010-01-19 11:15:57 -0800</bug_when>
    <thetext>raising the importance, since it regresses a previously working API-related code.

I can investigate ...</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>204621</commentid>
    <comment_count>3</comment_count>
    <who name="Antonio Gomes">tonikitoo</who>
    <bug_when>2010-03-26 09:30:27 -0700</bug_when>
    <thetext>(In reply to comment #2)
&gt; raising the importance, since it regresses a previously working API-related
&gt; code.
&gt; 
&gt; I can investigate ...

just found the guilt commit (by git bisect&apos;ing 480 commits) ... what broke it was b0444cef4e8bb4265a2b6d67e1f7d891680ec082</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>204630</commentid>
    <comment_count>4</comment_count>
    <who name="Kenneth Rohde Christiansen">kenneth</who>
    <bug_when>2010-03-26 09:41:21 -0700</bug_when>
    <thetext>Please write revision instead. It seems to be r50665</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>204760</commentid>
    <comment_count>5</comment_count>
    <who name="Antonio Gomes">tonikitoo</who>
    <bug_when>2010-03-26 13:32:20 -0700</bug_when>
    <thetext>void FrameView::layout(bool allowSubtree)
{
    (...)
    if (!m_canHaveScrollbars) {
        hMode = ScrollbarAlwaysOff;
        vMode = ScrollbarAlwaysOff;
    } else {
        scrollbarModes(hMode, vMode);
        if (hMode == ScrollbarAlwaysOff)
            hMode = ScrollbarAuto;
        if (vMode == ScrollbarAlwaysOff)
            vMode = ScrollbarAuto;
    }


... this else block broke us</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>206129</commentid>
    <comment_count>6</comment_count>
      <attachid>52071</attachid>
    <who name="Antonio Gomes">tonikitoo</who>
    <bug_when>2010-03-30 12:56:06 -0700</bug_when>
    <thetext>Created attachment 52071
WIP - it works but is not to be reviewed or landed</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>207347</commentid>
    <comment_count>7</comment_count>
    <who name="Antonio Gomes">tonikitoo</who>
    <bug_when>2010-04-01 13:17:00 -0700</bug_when>
    <thetext>adding alice (Apple) and mark (chromium) who were the reporters of the regressions that ended up causing this problem, as well as hyatt the reviewer of one of them.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>207351</commentid>
    <comment_count>8</comment_count>
      <attachid>52325</attachid>
    <who name="Antonio Gomes">tonikitoo</who>
    <bug_when>2010-04-01 13:21:54 -0700</bug_when>
    <thetext>Created attachment 52325
patch_1 - v1 - adds lock scrollbars concept to ScrollView

Patch introduces a lock scrollbars concept to ScrollView, as in WebDynamicScrollBarsView.mm/h on WebKit/mac. It is needed because in QtWebKit, we have Api for setting both vertical and horizontal scrollbars on/off/auto. When it is set to off, for example, it should remain as such, unless unset.


@hyatt, do you think this approach is feasible?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>207354</commentid>
    <comment_count>9</comment_count>
    <who name="Eric Seidel (no email)">eric</who>
    <bug_when>2010-04-01 13:30:30 -0700</bug_when>
    <thetext>Attachment 52325 did not build on mac:
Build output: http://webkit-commit-queue.appspot.com/results/1572150</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>207360</commentid>
    <comment_count>10</comment_count>
      <attachid>52325</attachid>
    <who name="Dave Hyatt">hyatt</who>
    <bug_when>2010-04-01 13:41:43 -0700</bug_when>
    <thetext>Comment on attachment 52325
patch_1 - v1 - adds lock scrollbars concept to ScrollView

I would not alter any of the mode-setting functions.  Just add the lock functions separately.  The mode-setting functions can of course check the locks, but I don&apos;t think you should mix mode setting and locking in the same functions.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>208390</commentid>
    <comment_count>11</comment_count>
      <attachid>52517</attachid>
    <who name="Antonio Gomes">tonikitoo</who>
    <bug_when>2010-04-04 20:11:07 -0700</bug_when>
    <thetext>Created attachment 52517
patch 1 - v2 - addressed feedback from hyatt on IRC

In IRC, it was agreed w/ hyatt to remove the optional &apos;lock&apos; parameter from ScrollView::setScrollingModes, since both set{Horizontal,Vertical}ScrollingMode methods have the &apos;lock&apos; parameter, which is enough to fixing the issue. The former *has* honors the current lock state though.
 
It was also agreed Frame::createView could get two additional parameters for vertical scrollbar lock and horizontal scrollbar lock respectively, to persist the current lock state cross page loads.

patch 2 addresses these.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>208691</commentid>
    <comment_count>12</comment_count>
      <attachid>52567</attachid>
    <who name="Antonio Gomes">tonikitoo</who>
    <bug_when>2010-04-05 14:15:08 -0700</bug_when>
    <thetext>Created attachment 52567
patch_1 - v2.1 - same as &quot;patch_1 - v2&quot; rebased with ToT</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>208692</commentid>
    <comment_count>13</comment_count>
      <attachid>52568</attachid>
    <who name="Antonio Gomes">tonikitoo</who>
    <bug_when>2010-04-05 14:16:12 -0700</bug_when>
    <thetext>Created attachment 52568
(committed r57278) patch_2 - v1 - add stubs for Mac, Gtk, Wx and Win DRTs to implement this method</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>208693</commentid>
    <comment_count>14</comment_count>
    <who name="Antonio Gomes">tonikitoo</who>
    <bug_when>2010-04-05 14:16:57 -0700</bug_when>
    <thetext>@hyatt, could you help me w/ this two (complementary) patches?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>209056</commentid>
    <comment_count>15</comment_count>
      <attachid>52641</attachid>
    <who name="Antonio Gomes">tonikitoo</who>
    <bug_when>2010-04-06 08:33:35 -0700</bug_when>
    <thetext>Created attachment 52641
patch_1 - v2.2 - attempt to build on Mac (same as &quot;patch_1 - v2.1&quot;)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>209183</commentid>
    <comment_count>16</comment_count>
      <attachid>52641</attachid>
    <who name="Dave Hyatt">hyatt</who>
    <bug_when>2010-04-06 12:45:40 -0700</bug_when>
    <thetext>Comment on attachment 52641
patch_1 - v2.2 - attempt to build on Mac (same as &quot;patch_1 - v2.1&quot;)

(1) For the createView function, having two calls to set scrollbar modes is problematic when each one results in an updateScrollers call underneath, e.g., on Mac.  You could just do:

frameView-&gt;setHorizontalLock(horizontalLock);
frameView-&gt;setVerticalLock(verticalLock);
frameView-&gt;setScrollbarModes(horizontalScrollbarMode, verticalScrollbarMode);

(2) Dump the lock argument from setHorizontalScrollbarMode and setVerticalScrollbarMode. It&apos;s just inconsistent with setScrollbarModes, and you&apos;ve provided locking functions anyway (setHorizontalLock and setVerticalLock).

(3) in qwebframe.cpp just do the lock call before setting the mode, e.g.,

d-&gt;frame-&gt;view()-&gt;setHorizontalLock(policy != Qt::ScrollBarAsNeeded);
d-&gt;frame-&gt;view()-&gt;setHorizontalScrollbarMode((ScrollbarMode)policy);

It&apos;s slightly more verbose, but I think it&apos;s nice to separate.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>209206</commentid>
    <comment_count>17</comment_count>
    <who name="Antonio Gomes">tonikitoo</who>
    <bug_when>2010-04-06 13:25:19 -0700</bug_when>
    <thetext>(In reply to comment #16)
&gt; (From update of attachment 52641 [details])
&gt; (1) For the createView function, having two calls to set scrollbar modes is
&gt; problematic when each one results in an updateScrollers call underneath, e.g.,
&gt; on Mac.  You could just do:
&gt; 
&gt; frameView-&gt;setHorizontalLock(horizontalLock);
&gt; frameView-&gt;setVerticalLock(verticalLock);
&gt; frameView-&gt;setScrollbarModes(horizontalScrollbarMode, verticalScrollbarMode);
&gt; 
&gt; (2) Dump the lock argument from setHorizontalScrollbarMode and
&gt; setVerticalScrollbarMode. It&apos;s just inconsistent with setScrollbarModes, and
&gt; you&apos;ve provided locking functions anyway (setHorizontalLock and
&gt; setVerticalLock).
&gt; 
&gt; (3) in qwebframe.cpp just do the lock call before setting the mode, e.g.,
&gt; 
&gt; d-&gt;frame-&gt;view()-&gt;setHorizontalLock(policy != Qt::ScrollBarAsNeeded);
&gt; d-&gt;frame-&gt;view()-&gt;setHorizontalScrollbarMode((ScrollbarMode)policy);
&gt; 
&gt; It&apos;s slightly more verbose, but I think it&apos;s nice to separate.

... and discussion continued on IRC:

&lt;tonikitoo&gt; dhyatt,  you suggested doing:
&lt;tonikitoo&gt; &quot;setHorizontalLock(hLock); setVerticalLock(vLock); setScrollbarModes(...)&quot;
&lt;tonikitoo&gt; but if setScrollbarModes honors the lock, it wont change to the policy you are setting, because it is already locked.
&lt;dhyatt&gt; put them after then?
&lt;dhyatt&gt; setScrollbarModes(....); setHorizontalLock(hLock); setVerticalLock(vLock); ?
&lt;tonikitoo&gt; dhyatt, after can be also tricky, because a FrameView::layout() is called during setScrollbarModes, and layout() can change it 
&lt;tonikitoo&gt; I&apos;ve tested these possibilities
&lt;tonikitoo&gt; dhyatt, suppose we are calling lock after, then  setScrollbarModes which calls updateScrollbars, and endup calling FrameView::layout , where it is scrollbar mode/policy unset, and then you lock, it would not work =/
&lt;dhyatt&gt; tonikitoo: yeah true
&lt;dhyatt&gt; i guess if you have to lock at the same time you could leave it the way it is
&lt;dhyatt&gt; ok, i guess the lock has to be part of the cal llike you did it then
&lt;dhyatt&gt; setScrollbarModes should take the locks too then
&lt;dhyatt&gt; for consistency with the setHorizontal and setVertical methods and so you can do the one call in createView

that is the way I&apos;ll do it</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>209634</commentid>
    <comment_count>18</comment_count>
      <attachid>52736</attachid>
    <who name="Antonio Gomes">tonikitoo</who>
    <bug_when>2010-04-07 08:12:47 -0700</bug_when>
    <thetext>Created attachment 52736
patch_1 - v3 - addressed discussion with dhyatt on IRC

As accorded on IRC, this patch:

* adds additional lock parameters to setScrollbarModes, setVerticalScrollbarMode and setHorizontalScrollbarMode of ScrollView;
* make the latter two just call the former passing the appropriated parameters, as originally;
* adds two optional lock parameters to Frame::createView, for locking horizontal and vertical scrollbars, respectively.
* adds a layout test and a qt API unit test
* make the adjusts needed in FrameLoaderClientQt, to use the new createView parameters.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>209636</commentid>
    <comment_count>19</comment_count>
      <attachid>52737</attachid>
    <who name="Antonio Gomes">tonikitoo</who>
    <bug_when>2010-04-07 08:26:19 -0700</bug_when>
    <thetext>Created attachment 52737
patch_1 - v3.1 - addressed discussion with dhyatt on IRC + rebased to ToT

see comment #18</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>209640</commentid>
    <comment_count>20</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2010-04-07 08:32:38 -0700</bug_when>
    <thetext>Attachment 52737 did not pass style-queue:

Failed to run &quot;WebKitTools/Scripts/check-webkit-style&quot; exit_code: 1
WebCore/platform/ScrollView.h:88:  More than one command on the same line  [whitespace/newline] [4]
WARNING: File exempt from style guide. Skipping: &quot;WebKit/qt/Api/qwebframe.cpp&quot;
WARNING: File exempt from style guide. Skipping: &quot;WebKit/qt/tests/qwebframe/tst_qwebframe.cpp&quot;
Total errors found: 1 in 19 files


If any of these errors are false positives, please file a bug against check-webkit-style.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>209670</commentid>
    <comment_count>21</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2010-04-07 09:22:33 -0700</bug_when>
    <thetext>Attachment 52737 did not build on gtk:
Build output: http://webkit-commit-queue.appspot.com/results/1654226</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>209696</commentid>
    <comment_count>22</comment_count>
      <attachid>52745</attachid>
    <who name="Antonio Gomes">tonikitoo</who>
    <bug_when>2010-04-07 10:13:11 -0700</bug_when>
    <thetext>Created attachment 52745
(committed r57277) patch_1 - v3.2 - addressed discussion with dhyatt on IRC + rebased to ToT + builds in gtk

see comment #18 for summary

@dhyatt, could you have a look?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>209700</commentid>
    <comment_count>23</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2010-04-07 10:22:01 -0700</bug_when>
    <thetext>Attachment 52745 did not pass style-queue:

Failed to run &quot;WebKitTools/Scripts/check-webkit-style&quot; exit_code: 1
WebCore/platform/ScrollView.h:88:  More than one command on the same line  [whitespace/newline] [4]
WARNING: File exempt from style guide. Skipping: &quot;WebKit/qt/Api/qwebframe.cpp&quot;
WARNING: File exempt from style guide. Skipping: &quot;WebKit/qt/tests/qwebframe/tst_qwebframe.cpp&quot;
Total errors found: 1 in 20 files


If any of these errors are false positives, please file a bug against check-webkit-style.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>209823</commentid>
    <comment_count>24</comment_count>
      <attachid>52745</attachid>
    <who name="Dave Hyatt">hyatt</who>
    <bug_when>2010-04-07 14:05:54 -0700</bug_when>
    <thetext>Comment on attachment 52745
(committed r57277) patch_1 - v3.2 - addressed discussion with dhyatt on IRC + rebased to ToT + builds in gtk

r=me</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>210202</commentid>
    <comment_count>25</comment_count>
      <attachid>52745</attachid>
    <who name="Antonio Gomes">tonikitoo</who>
    <bug_when>2010-04-08 08:17:28 -0700</bug_when>
    <thetext>Comment on attachment 52745
(committed r57277) patch_1 - v3.2 - addressed discussion with dhyatt on IRC + rebased to ToT + builds in gtk

thank you dhyatt!</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>210203</commentid>
    <comment_count>26</comment_count>
      <attachid>52568</attachid>
    <who name="Antonio Gomes">tonikitoo</who>
    <bug_when>2010-04-08 08:18:26 -0700</bug_when>
    <thetext>Comment on attachment 52568
(committed r57278) patch_2 - v1 - add stubs for Mac, Gtk, Wx and Win DRTs to implement this method

thank you tronical/simon/hausmann!</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>210612</commentid>
    <comment_count>27</comment_count>
    <who name="Simon Hausmann">hausmann</who>
    <bug_when>2010-04-09 00:37:33 -0700</bug_when>
    <thetext>&lt;cherry-pick-for-backport: 57277&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>210613</commentid>
    <comment_count>28</comment_count>
    <who name="Simon Hausmann">hausmann</who>
    <bug_when>2010-04-09 00:38:02 -0700</bug_when>
    <thetext>&lt;cherry-pick-for-backport: 57278&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>210614</commentid>
    <comment_count>29</comment_count>
    <who name="Simon Hausmann">hausmann</who>
    <bug_when>2010-04-09 00:41:22 -0700</bug_when>
    <thetext>
Revision r57277 cherry-picked into qtwebkit-2.0 with commit dd4a747cf19884f3c1810e32f15abc5f0151ef04Revision r57278 cherry-picked into qtwebkit-2.0 with commit 9cf99c055c470bfc55c21753d38853a6f2d334b7</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>52071</attachid>
            <date>2010-03-30 12:56:06 -0700</date>
            <delta_ts>2010-04-01 13:21:54 -0700</delta_ts>
            <desc>WIP - it works but is not to be reviewed or landed</desc>
            <filename>p</filename>
            <type>text/plain</type>
            <size>6431</size>
            <attacher name="Antonio Gomes">tonikitoo</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1dlYkNvcmUvcGFnZS9GcmFtZS5jcHAgYi9XZWJDb3JlL3BhZ2UvRnJhbWUu
Y3BwCmluZGV4IDYxNGJiYjkuLjBhYjE1MjIgMTAwNjQ0Ci0tLSBhL1dlYkNvcmUvcGFnZS9GcmFt
ZS5jcHAKKysrIGIvV2ViQ29yZS9wYWdlL0ZyYW1lLmNwcApAQCAtMTc5MCw3ICsxNzkwLDggQEAg
dm9pZCBGcmFtZTo6Y3JlYXRlVmlldyhjb25zdCBJbnRTaXplJiB2aWV3cG9ydFNpemUsCiAgICAg
fSBlbHNlCiAgICAgICAgIGZyYW1lVmlldyA9IEZyYW1lVmlldzo6Y3JlYXRlKHRoaXMpOwogCi0g
ICAgZnJhbWVWaWV3LT5zZXRTY3JvbGxiYXJNb2Rlcyhob3Jpem9udGFsU2Nyb2xsYmFyTW9kZSwg
dmVydGljYWxTY3JvbGxiYXJNb2RlKTsKKyAgICBmcmFtZVZpZXctPnNldEhvcml6b250YWxTY3Jv
bGxiYXJNb2RlKGhvcml6b250YWxTY3JvbGxiYXJNb2RlLCBob3Jpem9udGFsU2Nyb2xsYmFyTW9k
ZSAhPSBTY3JvbGxiYXJBdXRvKTsKKyAgICBmcmFtZVZpZXctPnNldFZlcnRpY2FsU2Nyb2xsYmFy
TW9kZSh2ZXJ0aWNhbFNjcm9sbGJhck1vZGUsIHZlcnRpY2FsU2Nyb2xsYmFyTW9kZSAhPSBTY3Jv
bGxiYXJBdXRvKTsKIAogICAgIHNldFZpZXcoZnJhbWVWaWV3KTsKIApkaWZmIC0tZ2l0IGEvV2Vi
Q29yZS9wYWdlL0ZyYW1lVmlldy5jcHAgYi9XZWJDb3JlL3BhZ2UvRnJhbWVWaWV3LmNwcAppbmRl
eCBjZWNiNDA2Li5jMjk0M2U0IDEwMDY0NAotLS0gYS9XZWJDb3JlL3BhZ2UvRnJhbWVWaWV3LmNw
cAorKysgYi9XZWJDb3JlL3BhZ2UvRnJhbWVWaWV3LmNwcApAQCAtNjA1LDEyICs2MDUsMTggQEAg
dm9pZCBGcmFtZVZpZXc6OmxheW91dChib29sIGFsbG93U3VidHJlZSkKIAogICAgIFNjcm9sbGJh
ck1vZGUgaE1vZGU7CiAgICAgU2Nyb2xsYmFyTW9kZSB2TW9kZTsKLSAgICBpZiAobV9jYW5IYXZl
U2Nyb2xsYmFycykgewotICAgICAgICBoTW9kZSA9IFNjcm9sbGJhckF1dG87Ci0gICAgICAgIHZN
b2RlID0gU2Nyb2xsYmFyQXV0bzsKLSAgICB9IGVsc2UgeworCisgICAgaWYgKCFtX2NhbkhhdmVT
Y3JvbGxiYXJzKSB7CiAgICAgICAgIGhNb2RlID0gU2Nyb2xsYmFyQWx3YXlzT2ZmOwogICAgICAg
ICB2TW9kZSA9IFNjcm9sbGJhckFsd2F5c09mZjsKKyAgICB9IGVsc2UgeworICAgICAgICBzY3Jv
bGxiYXJNb2RlcyhoTW9kZSwgdk1vZGUpOworCisgICAgICAgIGlmIChoTW9kZSA9PSBTY3JvbGxi
YXJBbHdheXNPZmYgJiYgIWlzSG9yaXpvbnRhbFNjcm9sbGJhckxvY2tlZCgpKQorICAgICAgICAg
ICAgaE1vZGUgPSBTY3JvbGxiYXJBdXRvOworCisgICAgICAgIGlmICh2TW9kZSA9PSBTY3JvbGxi
YXJBbHdheXNPZmYgJiYgIWlzVmVydGljYWxTY3JvbGxiYXJMb2NrZWQoKSkKKyAgICAgICAgICAg
IHZNb2RlID0gU2Nyb2xsYmFyQXV0bzsKICAgICB9CiAKICAgICBpZiAoIXN1YnRyZWUpIHsKZGlm
ZiAtLWdpdCBhL1dlYkNvcmUvcGxhdGZvcm0vU2Nyb2xsVmlldy5jcHAgYi9XZWJDb3JlL3BsYXRm
b3JtL1Njcm9sbFZpZXcuY3BwCmluZGV4IGUyMzc5MzQuLjczZmM5NzAgMTAwNjQ0Ci0tLSBhL1dl
YkNvcmUvcGxhdGZvcm0vU2Nyb2xsVmlldy5jcHAKKysrIGIvV2ViQ29yZS9wbGF0Zm9ybS9TY3Jv
bGxWaWV3LmNwcApAQCAtNDEsNiArNDEsOCBAQCBuYW1lc3BhY2UgV2ViQ29yZSB7CiBTY3JvbGxW
aWV3OjpTY3JvbGxWaWV3KCkKICAgICA6IG1faG9yaXpvbnRhbFNjcm9sbGJhck1vZGUoU2Nyb2xs
YmFyQXV0bykKICAgICAsIG1fdmVydGljYWxTY3JvbGxiYXJNb2RlKFNjcm9sbGJhckF1dG8pCisg
ICAgLCBtX2hvcml6b250YWxTY3JvbGxiYXJMb2NrKGZhbHNlKQorICAgICwgbV92ZXJ0aWNhbFNj
cm9sbGJhckxvY2soZmFsc2UpCiAgICAgLCBtX3Byb2hpYml0c1Njcm9sbGluZyhmYWxzZSkKICAg
ICAsIG1fY2FuQmxpdE9uU2Nyb2xsKHRydWUpCiAgICAgLCBtX3Njcm9sbGJhcnNBdm9pZGluZ1Jl
c2l6ZXIoMCkKQEAgLTEwOCwxMiArMTEwLDI2IEBAIFBhc3NSZWZQdHI8U2Nyb2xsYmFyPiBTY3Jv
bGxWaWV3OjpjcmVhdGVTY3JvbGxiYXIoU2Nyb2xsYmFyT3JpZW50YXRpb24gb3JpZW50YXRpCiAg
ICAgcmV0dXJuIFNjcm9sbGJhcjo6Y3JlYXRlTmF0aXZlU2Nyb2xsYmFyKHRoaXMsIG9yaWVudGF0
aW9uLCBSZWd1bGFyU2Nyb2xsYmFyKTsKIH0KIAotdm9pZCBTY3JvbGxWaWV3OjpzZXRTY3JvbGxi
YXJNb2RlcyhTY3JvbGxiYXJNb2RlIGhvcml6b250YWxNb2RlLCBTY3JvbGxiYXJNb2RlIHZlcnRp
Y2FsTW9kZSkKK3ZvaWQgU2Nyb2xsVmlldzo6c2V0U2Nyb2xsYmFyTW9kZXMoU2Nyb2xsYmFyTW9k
ZSBob3Jpem9udGFsTW9kZSwgU2Nyb2xsYmFyTW9kZSB2ZXJ0aWNhbE1vZGUsIGJvb2wgbG9jaykK
IHsKLSAgICBpZiAoaG9yaXpvbnRhbE1vZGUgPT0gaG9yaXpvbnRhbFNjcm9sbGJhck1vZGUoKSAm
JiB2ZXJ0aWNhbE1vZGUgPT0gdmVydGljYWxTY3JvbGxiYXJNb2RlKCkpCisgICAgYm9vbCB1cGRh
dGUgPSBmYWxzZTsKKworICAgIGlmIChob3Jpem9udGFsTW9kZSAhPSBob3Jpem9udGFsU2Nyb2xs
YmFyTW9kZSgpICYmICFtX2hvcml6b250YWxTY3JvbGxiYXJMb2NrKSB7CisgICAgICAgIG1faG9y
aXpvbnRhbFNjcm9sbGJhck1vZGUgPSBob3Jpem9udGFsTW9kZTsKKyAgICAgICAgdXBkYXRlID0g
dHJ1ZTsKKyAgICB9CisKKyAgICBpZiAodmVydGljYWxNb2RlICE9IHZlcnRpY2FsU2Nyb2xsYmFy
TW9kZSgpICYmICFtX3ZlcnRpY2FsU2Nyb2xsYmFyTG9jaykgeworICAgICAgICBtX3ZlcnRpY2Fs
U2Nyb2xsYmFyTW9kZSA9IHZlcnRpY2FsTW9kZTsKKyAgICAgICAgdXBkYXRlID0gdHJ1ZTsKKyAg
ICB9CisKKyAgICBpZiAobG9jaykKKyAgICAgICAgbV9ob3Jpem9udGFsU2Nyb2xsYmFyTG9jayA9
IG1fdmVydGljYWxTY3JvbGxiYXJMb2NrID0gbG9jazsKKworICAgIGlmICghdXBkYXRlKQogICAg
ICAgICByZXR1cm47Ci0gICAgbV9ob3Jpem9udGFsU2Nyb2xsYmFyTW9kZSA9IGhvcml6b250YWxN
b2RlOwotICAgIG1fdmVydGljYWxTY3JvbGxiYXJNb2RlID0gdmVydGljYWxNb2RlOworCiAgICAg
aWYgKHBsYXRmb3JtV2lkZ2V0KCkpCiAgICAgICAgIHBsYXRmb3JtU2V0U2Nyb2xsYmFyTW9kZXMo
KTsKICAgICBlbHNlCkBAIC0xMzEsNiArMTQ3LDM2IEBAIHZvaWQgU2Nyb2xsVmlldzo6c2Nyb2xs
YmFyTW9kZXMoU2Nyb2xsYmFyTW9kZSYgaG9yaXpvbnRhbE1vZGUsIFNjcm9sbGJhck1vZGUmIHZl
CiAgICAgdmVydGljYWxNb2RlID0gbV92ZXJ0aWNhbFNjcm9sbGJhck1vZGU7CiB9CiAKK3ZvaWQg
U2Nyb2xsVmlldzo6c2V0SG9yaXpvbnRhbFNjcm9sbGJhck1vZGUoU2Nyb2xsYmFyTW9kZSBtb2Rl
LCBib29sIGxvY2spCit7CisgICAgaWYgKG1vZGUgIT0gaG9yaXpvbnRhbFNjcm9sbGJhck1vZGUo
KSAmJiAhbV9ob3Jpem9udGFsU2Nyb2xsYmFyTG9jaykgeworICAgICAgICBtX2hvcml6b250YWxT
Y3JvbGxiYXJNb2RlID0gbW9kZTsKKworICAgICAgICBpZiAobG9jaykKKyAgICAgICAgICAgIG1f
aG9yaXpvbnRhbFNjcm9sbGJhckxvY2sgPSBsb2NrOworCisgICAgICAgIGlmIChwbGF0Zm9ybVdp
ZGdldCgpKQorICAgICAgICAgICAgcGxhdGZvcm1TZXRTY3JvbGxiYXJNb2RlcygpOworICAgICAg
ICBlbHNlCisgICAgICAgICAgICB1cGRhdGVTY3JvbGxiYXJzKHNjcm9sbE9mZnNldCgpKTsKKyAg
ICB9Cit9CisKK3ZvaWQgU2Nyb2xsVmlldzo6c2V0VmVydGljYWxTY3JvbGxiYXJNb2RlKFNjcm9s
bGJhck1vZGUgbW9kZSwgYm9vbCBsb2NrKQoreworICAgIGlmIChtb2RlICE9IHZlcnRpY2FsU2Ny
b2xsYmFyTW9kZSgpICYmICFtX3ZlcnRpY2FsU2Nyb2xsYmFyTG9jaykgeworICAgICAgICBtX3Zl
cnRpY2FsU2Nyb2xsYmFyTW9kZSA9IG1vZGU7CisKKyAgICAgICAgaWYgKGxvY2spCisgICAgICAg
ICAgICBtX3ZlcnRpY2FsU2Nyb2xsYmFyTG9jayA9IGxvY2s7CisKKyAgICAgICAgaWYgKHBsYXRm
b3JtV2lkZ2V0KCkpCisgICAgICAgICAgICBwbGF0Zm9ybVNldFNjcm9sbGJhck1vZGVzKCk7Cisg
ICAgICAgIGVsc2UKKyAgICAgICAgICAgIHVwZGF0ZVNjcm9sbGJhcnMoc2Nyb2xsT2Zmc2V0KCkp
OworICAgIH0KK30KKwogdm9pZCBTY3JvbGxWaWV3OjpzZXRDYW5IYXZlU2Nyb2xsYmFycyhib29s
IGNhblNjcm9sbCkKIHsKICAgICBTY3JvbGxiYXJNb2RlIG5ld0hvcml6b250YWxNb2RlOwpkaWZm
IC0tZ2l0IGEvV2ViQ29yZS9wbGF0Zm9ybS9TY3JvbGxWaWV3LmggYi9XZWJDb3JlL3BsYXRmb3Jt
L1Njcm9sbFZpZXcuaAppbmRleCBmNWJiMTY5Li4wMzk1YjU4IDEwMDY0NAotLS0gYS9XZWJDb3Jl
L3BsYXRmb3JtL1Njcm9sbFZpZXcuaAorKysgYi9XZWJDb3JlL3BsYXRmb3JtL1Njcm9sbFZpZXcu
aApAQCAtODMsMTIgKzgzLDIwIEBAIHB1YmxpYzoKICAgICAvLyBBdXRvIG1lYW5zIHNob3cgYSBz
Y3JvbGxiYXIgb25seSB3aGVuIG9uZSBpcyBuZWVkZWQuCiAgICAgLy8gTm90ZSB0aGF0IGZvciBw
bGF0Zm9ybXMgd2l0aCBuYXRpdmUgd2lkZ2V0cywgdGhlc2UgbW9kZXMgYXJlIGNvbnNpZGVyZWQg
YWR2aXNvcnkuICBJbiBvdGhlciB3b3JkcyB0aGUgdW5kZXJseWluZyBuYXRpdmUKICAgICAvLyB3
aWRnZXQgbWF5IGNob29zZSBub3QgdG8gaG9ub3IgdGhlIHJlcXVlc3RlZCBtb2Rlcy4KLSAgICB2
b2lkIHNldFNjcm9sbGJhck1vZGVzKFNjcm9sbGJhck1vZGUgaG9yaXpvbnRhbE1vZGUsIFNjcm9s
bGJhck1vZGUgdmVydGljYWxNb2RlKTsKLSAgICB2b2lkIHNldEhvcml6b250YWxTY3JvbGxiYXJN
b2RlKFNjcm9sbGJhck1vZGUgbW9kZSkgeyBzZXRTY3JvbGxiYXJNb2Rlcyhtb2RlLCB2ZXJ0aWNh
bFNjcm9sbGJhck1vZGUoKSk7IH0KLSAgICB2b2lkIHNldFZlcnRpY2FsU2Nyb2xsYmFyTW9kZShT
Y3JvbGxiYXJNb2RlIG1vZGUpIHsgc2V0U2Nyb2xsYmFyTW9kZXMoaG9yaXpvbnRhbFNjcm9sbGJh
ck1vZGUoKSwgbW9kZSk7IH0KKyAgICB2b2lkIHNldFNjcm9sbGJhck1vZGVzKFNjcm9sbGJhck1v
ZGUgaG9yaXpvbnRhbE1vZGUsIFNjcm9sbGJhck1vZGUgdmVydGljYWxNb2RlLCBib29sIGxvY2sg
PSBmYWxzZSk7CiAgICAgdm9pZCBzY3JvbGxiYXJNb2RlcyhTY3JvbGxiYXJNb2RlJiBob3Jpem9u
dGFsTW9kZSwgU2Nyb2xsYmFyTW9kZSYgdmVydGljYWxNb2RlKSBjb25zdDsKKworICAgIHZvaWQg
c2V0SG9yaXpvbnRhbFNjcm9sbGJhck1vZGUoU2Nyb2xsYmFyTW9kZSBtb2RlLCBib29sIGFuZExv
Y2sgPSBmYWxzZSk7CiAgICAgU2Nyb2xsYmFyTW9kZSBob3Jpem9udGFsU2Nyb2xsYmFyTW9kZSgp
IGNvbnN0IHsgU2Nyb2xsYmFyTW9kZSBob3Jpem9udGFsLCB2ZXJ0aWNhbDsgc2Nyb2xsYmFyTW9k
ZXMoaG9yaXpvbnRhbCwgdmVydGljYWwpOyByZXR1cm4gaG9yaXpvbnRhbDsgfQorCisgICAgdm9p
ZCBzZXRWZXJ0aWNhbFNjcm9sbGJhck1vZGUoU2Nyb2xsYmFyTW9kZSBtb2RlLCBib29sIGFuZExv
Y2sgPSBmYWxzZSk7CiAgICAgU2Nyb2xsYmFyTW9kZSB2ZXJ0aWNhbFNjcm9sbGJhck1vZGUoKSBj
b25zdCB7IFNjcm9sbGJhck1vZGUgaG9yaXpvbnRhbCwgdmVydGljYWw7IHNjcm9sbGJhck1vZGVz
KGhvcml6b250YWwsIHZlcnRpY2FsKTsgcmV0dXJuIHZlcnRpY2FsOyB9CisKKyAgICB2b2lkIHNl
dEhvcml6b250YWxTY3JvbGxiYXJMb2NrKGJvb2wgbG9jayA9IHRydWUpIHsgbV9ob3Jpem9udGFs
U2Nyb2xsYmFyTG9jayA9IGxvY2s7IH0KKyAgICBib29sIGlzSG9yaXpvbnRhbFNjcm9sbGJhckxv
Y2tlZCgpIGNvbnN0IHsgcmV0dXJuIG1faG9yaXpvbnRhbFNjcm9sbGJhckxvY2s7IH0KKyAgICB2
b2lkIHNldFZlcnRpY2FsU2Nyb2xsYmFyTG9jayhib29sIGxvY2sgPSB0cnVlKSB7IG1fdmVydGlj
YWxTY3JvbGxiYXJMb2NrID0gbG9jazsgfQorICAgIGJvb2wgaXNWZXJ0aWNhbFNjcm9sbGJhckxv
Y2tlZCgpIGNvbnN0IHsgcmV0dXJuIG1fdmVydGljYWxTY3JvbGxiYXJMb2NrOyB9CisKICAgICB2
aXJ0dWFsIHZvaWQgc2V0Q2FuSGF2ZVNjcm9sbGJhcnMoYm9vbCk7CiAgICAgYm9vbCBjYW5IYXZl
U2Nyb2xsYmFycygpIGNvbnN0IHsgcmV0dXJuIGhvcml6b250YWxTY3JvbGxiYXJNb2RlKCkgIT0g
U2Nyb2xsYmFyQWx3YXlzT2ZmIHx8IHZlcnRpY2FsU2Nyb2xsYmFyTW9kZSgpICE9IFNjcm9sbGJh
ckFsd2F5c09mZjsgfQogCkBAIC0yNTgsNiArMjY2LDEwIEBAIHByaXZhdGU6CiAgICAgUmVmUHRy
PFNjcm9sbGJhcj4gbV92ZXJ0aWNhbFNjcm9sbGJhcjsKICAgICBTY3JvbGxiYXJNb2RlIG1faG9y
aXpvbnRhbFNjcm9sbGJhck1vZGU7CiAgICAgU2Nyb2xsYmFyTW9kZSBtX3ZlcnRpY2FsU2Nyb2xs
YmFyTW9kZTsKKworICAgIGJvb2wgbV9ob3Jpem9udGFsU2Nyb2xsYmFyTG9jazsKKyAgICBib29s
IG1fdmVydGljYWxTY3JvbGxiYXJMb2NrOworCiAgICAgYm9vbCBtX3Byb2hpYml0c1Njcm9sbGlu
ZzsKIAogICAgIEhhc2hTZXQ8UmVmUHRyPFdpZGdldD4gPiBtX2NoaWxkcmVuOwo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>52325</attachid>
            <date>2010-04-01 13:21:54 -0700</date>
            <delta_ts>2010-04-06 08:28:59 -0700</delta_ts>
            <desc>patch_1 - v1 - adds lock scrollbars concept to ScrollView</desc>
            <filename>0001--Qt-REGRESSION-r50665-QWebFrame-setScrollBarPoli.patch</filename>
            <type>text/plain</type>
            <size>22108</size>
            <attacher name="Antonio Gomes">tonikitoo</attacher>
            
              <data encoding="base64">RnJvbSBmMmM5NDJiZTMwM2I0NGEwZWZiYzg0NWMzZjU1MDY2MjE1MTZmZTU1IE1vbiBTZXAgMTcg
MDA6MDA6MDAgMjAwMQpGcm9tOiBBbnRvbmlvIEdvbWVzIDx0b25pa2l0b29Ad2Via2l0Lm9yZz4K
RGF0ZTogVGh1LCAxIEFwciAyMDEwIDE2OjEyOjMzIC0wNDAwClN1YmplY3Q6IFtQQVRDSF0gW1F0
XSBSRUdSRVNTSU9OOihyNTA2NjUpIFFXZWJGcmFtZTo6c2V0U2Nyb2xsQmFyUG9saWN5KFF0OjpW
ZXJ0aWNhbCxRdDo6U2Nyb2xsQmFyQWx3YXlzT2ZmKSBoYXMgbm8gZWZmZWN0LgogaHR0cHM6Ly9i
dWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTI5NDMxCgpSZXZpZXdlZCBieSBOT0JPRFkg
KE9PUFMhKS4KUGF0Y2ggYnkgQW50b25pbyBHb21lcyA8dG9uaWtpdG9vQHdlYmtpdC5vcmc+CgpX
ZWJDb3JlOgoKVGVzdDogZmFzdC9vdmVyZmxvdy9zY3JvbGxiYXItcmVzdG9yZWQtYW5kLXRoZW4t
bG9ja2VkLmh0bWwKClBhdGNoIGludHJvZHVjZXMgYSBsb2NrIHNjcm9sbGJhcnMgY29uY2VwdCB0
byBTY3JvbGxWaWV3LCBhcyBpbiBXZWJEeW5hbWljU2Nyb2xsQmFyc1ZpZXcubW0vaApvbiBXZWJL
aXQvbWFjLiBJdCBpcyBuZWVkZWQgYmVjYXVzZSBpbiBRdFdlYktpdCwgd2UgaGF2ZSBBcGkgZm9y
IHNldHRpbmcgYm90aCB2ZXJ0aWNhbCBhbmQKaG9yaXpvbnRhbCBzY3JvbGxiYXJzIG9uL29mZi9h
dXRvLiBXaGVuIGl0IGlzIHNldCB0byBvZmYsIGZvciBleGFtcGxlLCBpdCBzaG91bGQgcmVtYWlu
CmFzIHN1Y2gsIHVubGVzcyB1bnNldC4KCkZvciB0aGUgbG9ja2luZyBjb25lY3B0LCBvbmUgYWRk
aXRpb25hbCBvcHRpb25hbCBwYXJhbWV0ZXIgd2FzIGFkZGVkIHRvIFNjcm9sbFZpZXcncwpzZXRT
Y3JvbGxiYXJNb2RlLCBzZXRIb3Jpem9udGFsU2Nyb2xsYmFyTW9kZSBhbmQgc2V0VmVydGljYWxT
Y3JvbGxiYXJNb2RlLiBBcyBpdCBpcwpvcHRpb25hbCwgYWxsIHByZXZpb3VzIGNvZGUgY2FsbGlu
ZyB0aGVtIGRvIG5vdCBuZWVkIG1vZGlmaWNhdGlvbi4KCiogcGFnZS9GcmFtZS5jcHA6CihXZWJD
b3JlOjpGcmFtZTo6Y3JlYXRlVmlldyk6CiogcGxhdGZvcm0vU2Nyb2xsVmlldy5jcHA6CihXZWJD
b3JlOjpTY3JvbGxWaWV3OjpTY3JvbGxWaWV3KToKKFdlYkNvcmU6OlNjcm9sbFZpZXc6OnNldFNj
cm9sbGJhck1vZGVzKToKKFdlYkNvcmU6OlNjcm9sbFZpZXc6OnNldEhvcml6b250YWxTY3JvbGxi
YXJNb2RlKToKKFdlYkNvcmU6OlNjcm9sbFZpZXc6OnNldFZlcnRpY2FsU2Nyb2xsYmFyTW9kZSk6
CiogcGxhdGZvcm0vU2Nyb2xsVmlldy5oOgooV2ViQ29yZTo6U2Nyb2xsVmlldzo6c2V0SG9yaXpv
bnRhbFNjcm9sbGJhckxvY2spOgooV2ViQ29yZTo6U2Nyb2xsVmlldzo6aXNIb3Jpem9udGFsU2Ny
b2xsYmFyTG9ja2VkKToKKFdlYkNvcmU6OlNjcm9sbFZpZXc6OnNldFZlcnRpY2FsU2Nyb2xsYmFy
TG9jayk6CihXZWJDb3JlOjpTY3JvbGxWaWV3Ojppc1ZlcnRpY2FsU2Nyb2xsYmFyTG9ja2VkKToK
KFdlYkNvcmU6OlNjcm9sbFZpZXc6OnNldFNjcm9sbGluZ01vZGVzTG9ja2VkKToKCldlYktpdC9x
dDoKCk1ha2UgdXNlIG9mIHRoZSBuZXcgbG9jayBwYXJhbWV0ZXIgb2Ygc2V0e1ZlcnRpY2FsLEhv
cml6b250YWx9U2Nyb2xsYmFyTW9kZS4KCkFsd2F5cyBhZGRlZCBhIHF0IGF1dG8gdGVzdCBmb3Ig
c2V0IHNjcm9sbGJhciBwb2xpY3kgZmVhdHVyZS4KCiogQXBpL3F3ZWJmcmFtZS5jcHA6CihRV2Vi
RnJhbWU6OnNldFNjcm9sbEJhclBvbGljeSk6CiogdGVzdHMvcXdlYmZyYW1lL3RzdF9xd2ViZnJh
bWUuY3BwOgoKV2ViS2l0VG9vbHM6CgpNYWtlIHBvc3NpYmxlIHRvIERSVCB0byBzZXQgc2Nyb2xs
YmFyIHBvbGljaWVzIChvbiwgb2ZmIG9yIGF1dG8pLgoKKiBEdW1wUmVuZGVyVHJlZS9xdC9MYXlv
dXRUZXN0Q29udHJvbGxlclF0LmNwcDoKKExheW91dFRlc3RDb250cm9sbGVyOjpzZXRTY3JvbGxi
YXJQb2xpY3kpOgoqIER1bXBSZW5kZXJUcmVlL3F0L0xheW91dFRlc3RDb250cm9sbGVyUXQuaDoK
KiBRdExhdW5jaGVyL21haW4uY3BwOgooTGF1bmNoZXJXaW5kb3c6OnRvZ2dsZVNjcm9sbGJhcnMp
OgooTGF1bmNoZXJXaW5kb3c6OmNyZWF0ZUNocm9tZSk6CgpMYXlvdXRUZXN0czoKCiogZmFzdC9v
dmVyZmxvdy9zY3JvbGxiYXItcmVzdG9yZWQtYW5kLXRoZW4tbG9ja2VkLWV4cGVjdGVkLnR4dDog
QWRkZWQuCiogZmFzdC9vdmVyZmxvdy9zY3JvbGxiYXItcmVzdG9yZWQtYW5kLXRoZW4tbG9ja2Vk
Lmh0bWw6IEFkZGVkLgotLS0KIExheW91dFRlc3RzL0NoYW5nZUxvZyAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgIHwgICAxMCArKysrCiAuLi5zY3JvbGxiYXItcmVzdG9yZWQtYW5kLXRoZW4t
bG9ja2VkLWV4cGVjdGVkLnR4dCB8ICAgIDYgKysKIC4uLi9zY3JvbGxiYXItcmVzdG9yZWQtYW5k
LXRoZW4tbG9ja2VkLmh0bWwgICAgICAgIHwgICAzNSArKysrKysrKysrKysrCiBMYXlvdXRUZXN0
cy9wbGF0Zm9ybS9ndGsvU2tpcHBlZCAgICAgICAgICAgICAgICAgICB8ICAgIDMgKwogTGF5b3V0
VGVzdHMvcGxhdGZvcm0vbWFjL1NraXBwZWQgICAgICAgICAgICAgICAgICAgfCAgICAzICsKIExh
eW91dFRlc3RzL3BsYXRmb3JtL3dpbi9Ta2lwcGVkICAgICAgICAgICAgICAgICAgIHwgICAgMyAr
CiBXZWJDb3JlL0NoYW5nZUxvZyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8ICAg
MzIgKysrKysrKysrKysrCiBXZWJDb3JlL3BhZ2UvRnJhbWUuY3BwICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICB8ICAgIDMgKy0KIFdlYkNvcmUvcGxhdGZvcm0vU2Nyb2xsVmlldy5jcHAgICAg
ICAgICAgICAgICAgICAgIHwgICA1NCArKysrKysrKysrKysrKysrKystLQogV2ViQ29yZS9wbGF0
Zm9ybS9TY3JvbGxWaWV3LmggICAgICAgICAgICAgICAgICAgICAgfCAgIDIwICsrKysrKy0KIFdl
YktpdC9xdC9BcGkvcXdlYmZyYW1lLmNwcCAgICAgICAgICAgICAgICAgICAgICAgIHwgICAgNCAr
LQogV2ViS2l0L3F0L0NoYW5nZUxvZyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCAg
IDE1ICsrKysrKwogV2ViS2l0L3F0L3Rlc3RzL3F3ZWJmcmFtZS90c3RfcXdlYmZyYW1lLmNwcCAg
ICAgICAgfCAgIDMzICsrKysrKysrKysrKwogV2ViS2l0VG9vbHMvQ2hhbmdlTG9nICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgfCAgIDE2ICsrKysrKwogLi4uL0R1bXBSZW5kZXJUcmVlL3F0
L0xheW91dFRlc3RDb250cm9sbGVyUXQuY3BwICAgfCAgIDI0ICsrKysrKysrKwogLi4uL0R1bXBS
ZW5kZXJUcmVlL3F0L0xheW91dFRlc3RDb250cm9sbGVyUXQuaCAgICAgfCAgICA2ICsrCiAxNiBm
aWxlcyBjaGFuZ2VkLCAyNTcgaW5zZXJ0aW9ucygrKSwgMTAgZGVsZXRpb25zKC0pCiBjcmVhdGUg
bW9kZSAxMDA2NDQgTGF5b3V0VGVzdHMvZmFzdC9vdmVyZmxvdy9zY3JvbGxiYXItcmVzdG9yZWQt
YW5kLXRoZW4tbG9ja2VkLWV4cGVjdGVkLnR4dAogY3JlYXRlIG1vZGUgMTAwNjQ0IExheW91dFRl
c3RzL2Zhc3Qvb3ZlcmZsb3cvc2Nyb2xsYmFyLXJlc3RvcmVkLWFuZC10aGVuLWxvY2tlZC5odG1s
CgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nIGIvTGF5b3V0VGVzdHMvQ2hhbmdl
TG9nCmluZGV4IGMwMGYzNDQuLjZiMWM4ZGEgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL0NoYW5n
ZUxvZworKysgYi9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKQEAgLTEsMyArMSwxMyBAQAorMjAxMC0w
NC0wMSAgQW50b25pbyBHb21lcyAgPHRvbmlraXRvb0B3ZWJraXQub3JnPgorCisgICAgICAgIFJl
dmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIFtRdF0gUkVHUkVTU0lPTjoocjUw
NjY1KSBRV2ViRnJhbWU6OnNldFNjcm9sbEJhclBvbGljeShRdDo6VmVydGljYWwsUXQ6OlNjcm9s
bEJhckFsd2F5c09mZikgaGFzIG5vIGVmZmVjdC4KKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtp
dC5vcmcvc2hvd19idWcuY2dpP2lkPTI5NDMxCisKKyAgICAgICAgKiBmYXN0L292ZXJmbG93L3Nj
cm9sbGJhci1yZXN0b3JlZC1hbmQtdGhlbi1sb2NrZWQtZXhwZWN0ZWQudHh0OiBBZGRlZC4KKyAg
ICAgICAgKiBmYXN0L292ZXJmbG93L3Njcm9sbGJhci1yZXN0b3JlZC1hbmQtdGhlbi1sb2NrZWQu
aHRtbDogQWRkZWQuCisKIDIwMTAtMDQtMDEgIHlhZWwgYWhhcm9uICA8eWFlbC5haGFyb25Abm9r
aWEuY29tPgogCiAgICAgICAgIFJldmlld2VkIGJ5IExhc3psbyBHb21ib3MuCmRpZmYgLS1naXQg
YS9MYXlvdXRUZXN0cy9mYXN0L292ZXJmbG93L3Njcm9sbGJhci1yZXN0b3JlZC1hbmQtdGhlbi1s
b2NrZWQtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvZmFzdC9vdmVyZmxvdy9zY3JvbGxiYXIt
cmVzdG9yZWQtYW5kLXRoZW4tbG9ja2VkLWV4cGVjdGVkLnR4dApuZXcgZmlsZSBtb2RlIDEwMDY0
NAppbmRleCAwMDAwMDAwLi5mZDliYzJhCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMv
ZmFzdC9vdmVyZmxvdy9zY3JvbGxiYXItcmVzdG9yZWQtYW5kLXRoZW4tbG9ja2VkLWV4cGVjdGVk
LnR4dApAQCAtMCwwICsxLDYgQEAKK1Rlc3QgZm9yIGJ1ZyAyOTQzMSBbUXRdIFJFR1JFU1NJT046
KHI1MDY2NSkgUVdlYkZyYW1lOjpzZXRTY3JvbGxCYXJQb2xpY3koUXQ6OlZlcnRpY2FsLFF0OjpT
Y3JvbGxCYXJBbHdheXNPZmYpIGhhcyBubyBlZmZlY3QuCisKK1RoaXMgdGVzdHMgdGhhdCBhZnRl
ciBzZXR0aW5nICdvdmVyZmxvdycgb24gdGhlIGRvY3VtZW50IGVsZW1lbnQgdG8gJ2hpZGRlbicg
YW5kIGJhY2sgdG8gJ3Zpc2libGUnLCBzY3JvbGxiYXJzIGFwcGVhciBhcyBuZWNlc3NhcnkuCisK
K1BBU1MKK1BBU1MKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3Qvb3ZlcmZsb3cvc2Nyb2xs
YmFyLXJlc3RvcmVkLWFuZC10aGVuLWxvY2tlZC5odG1sIGIvTGF5b3V0VGVzdHMvZmFzdC9vdmVy
Zmxvdy9zY3JvbGxiYXItcmVzdG9yZWQtYW5kLXRoZW4tbG9ja2VkLmh0bWwKbmV3IGZpbGUgbW9k
ZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uY2M0YmY0YgotLS0gL2Rldi9udWxsCisrKyBiL0xheW91
dFRlc3RzL2Zhc3Qvb3ZlcmZsb3cvc2Nyb2xsYmFyLXJlc3RvcmVkLWFuZC10aGVuLWxvY2tlZC5o
dG1sCkBAIC0wLDAgKzEsMzUgQEAKKzxib2R5PgorICAgIDxwPgorICAgICAgICBUZXN0IGZvciA8
aT48YSBocmVmPSJodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9Mjk0MzEi
PmJ1ZyAyOTQzMTwvYT4KKyAgICAgICAgW1F0XSBSRUdSRVNTSU9OOihyNTA2NjUpIFFXZWJGcmFt
ZTo6c2V0U2Nyb2xsQmFyUG9saWN5KFF0OjpWZXJ0aWNhbCxRdDo6U2Nyb2xsQmFyQWx3YXlzT2Zm
KSBoYXMgbm8gZWZmZWN0LgorICAgIDwvcD4KKyAgICA8cD4KKyAgICAgICAgVGhpcyB0ZXN0cyB0
aGF0IGFmdGVyIHNldHRpbmcgJ292ZXJmbG93JyBvbiB0aGUgZG9jdW1lbnQgZWxlbWVudCB0bwor
ICAgICAgICAnaGlkZGVuJyBhbmQgYmFjayB0byAndmlzaWJsZScsIHNjcm9sbGJhcnMgYXBwZWFy
IGFzIG5lY2Vzc2FyeS4KKyAgICA8L3A+CisgICAgPGRpdiBpZD0iZHluYW1pYyI+PC9kaXY+Cisg
ICAgPHAgaWQ9InJlc3VsdCI+RkFJTDogVGVzdCBkaWQgbm90IHJ1biB0byBjb21wbGV0aW9uPC9w
PgorICAgIDxzY3JpcHQ+CisgICAgICAgIGlmICh3aW5kb3cubGF5b3V0VGVzdENvbnRyb2xsZXIp
CisgICAgICAgICAgICBsYXlvdXRUZXN0Q29udHJvbGxlci5kdW1wQXNUZXh0KCk7CisKKyAgICAg
ICAgZG9jdW1lbnQuZG9jdW1lbnRFbGVtZW50LnN0eWxlLm92ZXJmbG93ID0gImhpZGRlbiI7Cisg
ICAgICAgIGRvY3VtZW50LmJvZHkub2Zmc2V0VG9wOworICAgICAgICBkb2N1bWVudC5kb2N1bWVu
dEVsZW1lbnQuc3R5bGUucmVtb3ZlUHJvcGVydHkoIm92ZXJmbG93Iik7CisgICAgICAgIGRvY3Vt
ZW50LmJvZHkuc3R5bGUuaGVpZ2h0ID0gIjIwMCUiOworICAgICAgICB2YXIgcmVzdWx0ID0gKGlu
bmVyV2lkdGggPT09IGRvY3VtZW50LmRvY3VtZW50RWxlbWVudC5vZmZzZXRXaWR0aCkKKyAgICAg
ICAgICAgID8gIkZBSUw6IFNjcm9sbGJhciBkaWQgbm90IGFwcGVhciBhZnRlciByZXNldHRpbmcg
J292ZXJmbG93JyIKKyAgICAgICAgICAgIDogIlBBU1MiOworCisgICAgICAgIGlmICh3aW5kb3cu
bGF5b3V0VGVzdENvbnRyb2xsZXIpIHsKKyAgICAgICAgICAgIGxheW91dFRlc3RDb250cm9sbGVy
LnNldFNjcm9sbGJhclBvbGljeSgndmVydGljYWwnLCAnb2ZmJyk7CisgICAgICAgICAgICBsYXlv
dXRUZXN0Q29udHJvbGxlci5zZXRTY3JvbGxiYXJQb2xpY3koJ2hvcml6b250YWwnLCAnb2ZmJyk7
CisKKyAgICAgICAgICAgIHJlc3VsdCArPSAoaW5uZXJXaWR0aCA9PT0gZG9jdW1lbnQuZG9jdW1l
bnRFbGVtZW50Lm9mZnNldFdpZHRoKQorICAgICAgICAgICAgICAgID8gIlxuUEFTUyIKKyAgICAg
ICAgICAgICAgICA6ICJcbkZBSUw6IFNjcm9sbGJhciBkaWQgYXBwZWFyIGFmdGVyIHR1cm5pbmcg
aXQgb2ZmIjsKKyAgICAgICAgfQorCisgICAgICAgIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJy
ZXN1bHQiKS5pbm5lclRleHQgPSByZXN1bHQ7CisgICAgPC9zY3JpcHQ+Cis8L2JvZHk+CmRpZmYg
LS1naXQgYS9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9ndGsvU2tpcHBlZCBiL0xheW91dFRlc3RzL3Bs
YXRmb3JtL2d0ay9Ta2lwcGVkCmluZGV4IGQwODY0NTIuLjEwYWVkYWQgMTAwNjQ0Ci0tLSBhL0xh
eW91dFRlc3RzL3BsYXRmb3JtL2d0ay9Ta2lwcGVkCisrKyBiL0xheW91dFRlc3RzL3BsYXRmb3Jt
L2d0ay9Ta2lwcGVkCkBAIC01ODg3LDMgKzU4ODcsNiBAQCBodHRwL3Rlc3RzL2xvYWRpbmcvc3Rh
dGUtb2JqZWN0LXNlY3VyaXR5LWV4Y2VwdGlvbi5odG1sCiAKICMgTm8gV2lkZ2V0cyAxLjAgc3Vw
cG9ydAogZmFzdC9tZWRpYS9tZWRpYS1mZWF0dXJlLXdndC12aWV3LW1vZGUuaHRtbAorCisjIE5l
ZWQgdG8gYWRkIGZ1bmN0aW9uYWxpdHkgdG8gRHVtcFJlbmRlclRyZWUgdG8gaGFuZGxlIHNjcm9s
bGJhciBwb2xpY2UgY2hhbmdlcworZmFzdC9vdmVyZmxvdy9zY3JvbGxiYXItcmVzdG9yZWQtYW5k
LXRoZW4tbG9ja2VkLmh0bWwKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL3BsYXRmb3JtL21hYy9T
a2lwcGVkIGIvTGF5b3V0VGVzdHMvcGxhdGZvcm0vbWFjL1NraXBwZWQKaW5kZXggN2E2YTdmNy4u
NmI5M2FkNiAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvcGxhdGZvcm0vbWFjL1NraXBwZWQKKysr
IGIvTGF5b3V0VGVzdHMvcGxhdGZvcm0vbWFjL1NraXBwZWQKQEAgLTE0OSwzICsxNDksNiBAQCBm
YXN0L21lZGlhL21lZGlhLWZlYXR1cmUtd2d0LXZpZXctbW9kZS5odG1sCiAjIFRlc3QgaXMgZmxh
a3kgYW5kIHRodXMgbm90IHVzZWZ1bCB1bnRpbCBmaXhlZC4KICMgaHR0cHM6Ly9idWdzLndlYmtp
dC5vcmcvc2hvd19idWcuY2dpP2lkPTM2NjQyCiBmYXN0L3JlcGxhY2VkL2JvcmRlci1yYWRpdXMt
Y2xpcC5odG1sCisKKyMgTmVlZCB0byBhZGQgZnVuY3Rpb25hbGl0eSB0byBEdW1wUmVuZGVyVHJl
ZSB0byBoYW5kbGUgc2Nyb2xsYmFyIHBvbGljZSBjaGFuZ2VzCitmYXN0L292ZXJmbG93L3Njcm9s
bGJhci1yZXN0b3JlZC1hbmQtdGhlbi1sb2NrZWQuaHRtbApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVz
dHMvcGxhdGZvcm0vd2luL1NraXBwZWQgYi9MYXlvdXRUZXN0cy9wbGF0Zm9ybS93aW4vU2tpcHBl
ZAppbmRleCAxYjI2NzBmLi5jYzQ4YzY1IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9wbGF0Zm9y
bS93aW4vU2tpcHBlZAorKysgYi9MYXlvdXRUZXN0cy9wbGF0Zm9ybS93aW4vU2tpcHBlZApAQCAt
ODE4LDMgKzgxOCw2IEBAIGZhc3QvbWVkaWEvbWVkaWEtZmVhdHVyZS13Z3Qtdmlldy1tb2RlLmh0
bWwKIAogIyBOZWVkIGV4cGVjdGF0aW9ucy4gU2VlIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3No
b3dfYnVnLmNnaT9pZD0zNjQ2MQogZmFzdC9yZXBhaW50L292ZXJmbG93LXNjcm9sbC1ib2R5LWFw
cGVhci5odG1sCisKKyMgTmVlZCB0byBhZGQgZnVuY3Rpb25hbGl0eSB0byBEdW1wUmVuZGVyVHJl
ZSB0byBoYW5kbGUgc2Nyb2xsYmFyIHBvbGljZSBjaGFuZ2VzCitmYXN0L292ZXJmbG93L3Njcm9s
bGJhci1yZXN0b3JlZC1hbmQtdGhlbi1sb2NrZWQuaHRtbApkaWZmIC0tZ2l0IGEvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9XZWJDb3JlL0NoYW5nZUxvZwppbmRleCBkNWExZTU5Li5lOWEyNzRiIDEwMDY0
NAotLS0gYS9XZWJDb3JlL0NoYW5nZUxvZworKysgYi9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwz
ICsxLDM1IEBACisyMDEwLTA0LTAxICBBbnRvbmlvIEdvbWVzICA8dG9uaWtpdG9vQHdlYmtpdC5v
cmc+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgW1F0
XSBSRUdSRVNTSU9OOihyNTA2NjUpIFFXZWJGcmFtZTo6c2V0U2Nyb2xsQmFyUG9saWN5KFF0OjpW
ZXJ0aWNhbCxRdDo6U2Nyb2xsQmFyQWx3YXlzT2ZmKSBoYXMgbm8gZWZmZWN0LgorICAgICAgICBo
dHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9Mjk0MzEKKworICAgICAgICBU
ZXN0OiBmYXN0L292ZXJmbG93L3Njcm9sbGJhci1yZXN0b3JlZC1hbmQtdGhlbi1sb2NrZWQuaHRt
bAorCisgICAgICAgIFBhdGNoIGludHJvZHVjZXMgYSBsb2NrIHNjcm9sbGJhcnMgY29uY2VwdCB0
byBTY3JvbGxWaWV3LCBhcyBpbiBXZWJEeW5hbWljU2Nyb2xsQmFyc1ZpZXcubW0vaAorICAgICAg
ICBvbiBXZWJLaXQvbWFjLiBJdCBpcyBuZWVkZWQgYmVjYXVzZSBpbiBRdFdlYktpdCwgd2UgaGF2
ZSBBcGkgZm9yIHNldHRpbmcgYm90aCB2ZXJ0aWNhbCBhbmQKKyAgICAgICAgaG9yaXpvbnRhbCBz
Y3JvbGxiYXJzIG9uL29mZi9hdXRvLiBXaGVuIGl0IGlzIHNldCB0byBvZmYsIGZvciBleGFtcGxl
LCBpdCBzaG91bGQgcmVtYWluCisgICAgICAgIGFzIHN1Y2gsIHVubGVzcyB1bnNldC4KKworICAg
ICAgICBGb3IgdGhlIGxvY2tpbmcgY29uZWNwdCwgb25lIGFkZGl0aW9uYWwgb3B0aW9uYWwgcGFy
YW1ldGVyIHdhcyBhZGRlZCB0byBTY3JvbGxWaWV3J3MKKyAgICAgICAgc2V0U2Nyb2xsYmFyTW9k
ZSwgc2V0SG9yaXpvbnRhbFNjcm9sbGJhck1vZGUgYW5kIHNldFZlcnRpY2FsU2Nyb2xsYmFyTW9k
ZS4gQXMgaXQgaXMKKyAgICAgICAgb3B0aW9uYWwsIGFsbCBwcmV2aW91cyBjb2RlIGNhbGxpbmcg
dGhlbSBkbyBub3QgbmVlZCBtb2RpZmljYXRpb24uCisKKyAgICAgICAgKiBwYWdlL0ZyYW1lLmNw
cDoKKyAgICAgICAgKFdlYkNvcmU6OkZyYW1lOjpjcmVhdGVWaWV3KToKKyAgICAgICAgKiBwbGF0
Zm9ybS9TY3JvbGxWaWV3LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlNjcm9sbFZpZXc6OlNjcm9s
bFZpZXcpOgorICAgICAgICAoV2ViQ29yZTo6U2Nyb2xsVmlldzo6c2V0U2Nyb2xsYmFyTW9kZXMp
OgorICAgICAgICAoV2ViQ29yZTo6U2Nyb2xsVmlldzo6c2V0SG9yaXpvbnRhbFNjcm9sbGJhck1v
ZGUpOgorICAgICAgICAoV2ViQ29yZTo6U2Nyb2xsVmlldzo6c2V0VmVydGljYWxTY3JvbGxiYXJN
b2RlKToKKyAgICAgICAgKiBwbGF0Zm9ybS9TY3JvbGxWaWV3Lmg6CisgICAgICAgIChXZWJDb3Jl
OjpTY3JvbGxWaWV3OjpzZXRIb3Jpem9udGFsU2Nyb2xsYmFyTG9jayk6CisgICAgICAgIChXZWJD
b3JlOjpTY3JvbGxWaWV3Ojppc0hvcml6b250YWxTY3JvbGxiYXJMb2NrZWQpOgorICAgICAgICAo
V2ViQ29yZTo6U2Nyb2xsVmlldzo6c2V0VmVydGljYWxTY3JvbGxiYXJMb2NrKToKKyAgICAgICAg
KFdlYkNvcmU6OlNjcm9sbFZpZXc6OmlzVmVydGljYWxTY3JvbGxiYXJMb2NrZWQpOgorICAgICAg
ICAoV2ViQ29yZTo6U2Nyb2xsVmlldzo6c2V0U2Nyb2xsaW5nTW9kZXNMb2NrZWQpOgorCiAyMDEw
LTA0LTAxICBBbGV4YW5kZXIgUGF2bG92ICA8YXBhdmxvdkBjaHJvbWl1bS5vcmc+CiAKICAgICAg
ICAgUmV2aWV3ZWQgYnkgUGF2ZWwgRmVsZG1hbi4KZGlmZiAtLWdpdCBhL1dlYkNvcmUvcGFnZS9G
cmFtZS5jcHAgYi9XZWJDb3JlL3BhZ2UvRnJhbWUuY3BwCmluZGV4IDYxNGJiYjkuLmUzNjAxOTYg
MTAwNjQ0Ci0tLSBhL1dlYkNvcmUvcGFnZS9GcmFtZS5jcHAKKysrIGIvV2ViQ29yZS9wYWdlL0Zy
YW1lLmNwcApAQCAtMTc5MCw3ICsxNzkwLDggQEAgdm9pZCBGcmFtZTo6Y3JlYXRlVmlldyhjb25z
dCBJbnRTaXplJiB2aWV3cG9ydFNpemUsCiAgICAgfSBlbHNlCiAgICAgICAgIGZyYW1lVmlldyA9
IEZyYW1lVmlldzo6Y3JlYXRlKHRoaXMpOwogCi0gICAgZnJhbWVWaWV3LT5zZXRTY3JvbGxiYXJN
b2Rlcyhob3Jpem9udGFsU2Nyb2xsYmFyTW9kZSwgdmVydGljYWxTY3JvbGxiYXJNb2RlKTsKKyAg
ICBmcmFtZVZpZXctPnNldEhvcml6b250YWxTY3JvbGxiYXJNb2RlKGhvcml6b250YWxTY3JvbGxi
YXJNb2RlLCBob3Jpem9udGFsU2Nyb2xsYmFyTW9kZSAhPSBTY3JvbGxiYXJBdXRvIC8qIGxvY2sg
Ki8pOworICAgIGZyYW1lVmlldy0+c2V0VmVydGljYWxTY3JvbGxiYXJNb2RlKHZlcnRpY2FsU2Ny
b2xsYmFyTW9kZSwgdmVydGljYWxTY3JvbGxiYXJNb2RlICE9IFNjcm9sbGJhckF1dG8gLyogbG9j
ayAqLyk7CiAKICAgICBzZXRWaWV3KGZyYW1lVmlldyk7CiAKZGlmZiAtLWdpdCBhL1dlYkNvcmUv
cGxhdGZvcm0vU2Nyb2xsVmlldy5jcHAgYi9XZWJDb3JlL3BsYXRmb3JtL1Njcm9sbFZpZXcuY3Bw
CmluZGV4IDIxMzFjOTEuLjE0ZTBkMzQgMTAwNjQ0Ci0tLSBhL1dlYkNvcmUvcGxhdGZvcm0vU2Ny
b2xsVmlldy5jcHAKKysrIGIvV2ViQ29yZS9wbGF0Zm9ybS9TY3JvbGxWaWV3LmNwcApAQCAtNDIs
NiArNDIsOCBAQCBuYW1lc3BhY2UgV2ViQ29yZSB7CiBTY3JvbGxWaWV3OjpTY3JvbGxWaWV3KCkK
ICAgICA6IG1faG9yaXpvbnRhbFNjcm9sbGJhck1vZGUoU2Nyb2xsYmFyQXV0bykKICAgICAsIG1f
dmVydGljYWxTY3JvbGxiYXJNb2RlKFNjcm9sbGJhckF1dG8pCisgICAgLCBtX2hvcml6b250YWxT
Y3JvbGxiYXJMb2NrKGZhbHNlKQorICAgICwgbV92ZXJ0aWNhbFNjcm9sbGJhckxvY2soZmFsc2Up
CiAgICAgLCBtX3Byb2hpYml0c1Njcm9sbGluZyhmYWxzZSkKICAgICAsIG1fY2FuQmxpdE9uU2Ny
b2xsKHRydWUpCiAgICAgLCBtX3Njcm9sbGJhcnNBdm9pZGluZ1Jlc2l6ZXIoMCkKQEAgLTExNSwx
MiArMTE3LDI2IEBAIFBhc3NSZWZQdHI8U2Nyb2xsYmFyPiBTY3JvbGxWaWV3OjpjcmVhdGVTY3Jv
bGxiYXIoU2Nyb2xsYmFyT3JpZW50YXRpb24gb3JpZW50YXRpCiAgICAgcmV0dXJuIFNjcm9sbGJh
cjo6Y3JlYXRlTmF0aXZlU2Nyb2xsYmFyKHRoaXMsIG9yaWVudGF0aW9uLCBSZWd1bGFyU2Nyb2xs
YmFyKTsKIH0KIAotdm9pZCBTY3JvbGxWaWV3OjpzZXRTY3JvbGxiYXJNb2RlcyhTY3JvbGxiYXJN
b2RlIGhvcml6b250YWxNb2RlLCBTY3JvbGxiYXJNb2RlIHZlcnRpY2FsTW9kZSkKK3ZvaWQgU2Ny
b2xsVmlldzo6c2V0U2Nyb2xsYmFyTW9kZXMoU2Nyb2xsYmFyTW9kZSBob3Jpem9udGFsTW9kZSwg
U2Nyb2xsYmFyTW9kZSB2ZXJ0aWNhbE1vZGUsIGJvb2wgbG9jaykKIHsKLSAgICBpZiAoaG9yaXpv
bnRhbE1vZGUgPT0gaG9yaXpvbnRhbFNjcm9sbGJhck1vZGUoKSAmJiB2ZXJ0aWNhbE1vZGUgPT0g
dmVydGljYWxTY3JvbGxiYXJNb2RlKCkpCisgICAgYm9vbCBuZWVkc1VwZGF0ZSA9IGZhbHNlOwor
CisgICAgaWYgKGhvcml6b250YWxNb2RlICE9IGhvcml6b250YWxTY3JvbGxiYXJNb2RlKCkgJiYg
IW1faG9yaXpvbnRhbFNjcm9sbGJhckxvY2spIHsKKyAgICAgICAgbV9ob3Jpem9udGFsU2Nyb2xs
YmFyTW9kZSA9IGhvcml6b250YWxNb2RlOworICAgICAgICBuZWVkc1VwZGF0ZSA9IHRydWU7Cisg
ICAgfQorCisgICAgaWYgKHZlcnRpY2FsTW9kZSAhPSB2ZXJ0aWNhbFNjcm9sbGJhck1vZGUoKSAm
JiAhbV92ZXJ0aWNhbFNjcm9sbGJhckxvY2spIHsKKyAgICAgICAgbV92ZXJ0aWNhbFNjcm9sbGJh
ck1vZGUgPSB2ZXJ0aWNhbE1vZGU7CisgICAgICAgIG5lZWRzVXBkYXRlID0gdHJ1ZTsKKyAgICB9
CisKKyAgICBpZiAobG9jaykKKyAgICAgICAgbV9ob3Jpem9udGFsU2Nyb2xsYmFyTG9jayA9IG1f
dmVydGljYWxTY3JvbGxiYXJMb2NrID0gbG9jazsKKworICAgIGlmICghbmVlZHNVcGRhdGUpCiAg
ICAgICAgIHJldHVybjsKLSAgICBtX2hvcml6b250YWxTY3JvbGxiYXJNb2RlID0gaG9yaXpvbnRh
bE1vZGU7Ci0gICAgbV92ZXJ0aWNhbFNjcm9sbGJhck1vZGUgPSB2ZXJ0aWNhbE1vZGU7CisKICAg
ICBpZiAocGxhdGZvcm1XaWRnZXQoKSkKICAgICAgICAgcGxhdGZvcm1TZXRTY3JvbGxiYXJNb2Rl
cygpOwogICAgIGVsc2UKQEAgLTEzOCw2ICsxNTQsMzYgQEAgdm9pZCBTY3JvbGxWaWV3OjpzY3Jv
bGxiYXJNb2RlcyhTY3JvbGxiYXJNb2RlJiBob3Jpem9udGFsTW9kZSwgU2Nyb2xsYmFyTW9kZSYg
dmUKICAgICB2ZXJ0aWNhbE1vZGUgPSBtX3ZlcnRpY2FsU2Nyb2xsYmFyTW9kZTsKIH0KIAordm9p
ZCBTY3JvbGxWaWV3OjpzZXRIb3Jpem9udGFsU2Nyb2xsYmFyTW9kZShTY3JvbGxiYXJNb2RlIG1v
ZGUsIGJvb2wgbG9jaykKK3sKKyAgICBpZiAobW9kZSAhPSBob3Jpem9udGFsU2Nyb2xsYmFyTW9k
ZSgpICYmICFtX2hvcml6b250YWxTY3JvbGxiYXJMb2NrKSB7CisgICAgICAgIG1faG9yaXpvbnRh
bFNjcm9sbGJhck1vZGUgPSBtb2RlOworCisgICAgICAgIGlmIChsb2NrKQorICAgICAgICAgICAg
bV9ob3Jpem9udGFsU2Nyb2xsYmFyTG9jayA9IGxvY2s7CisKKyAgICAgICAgaWYgKHBsYXRmb3Jt
V2lkZ2V0KCkpCisgICAgICAgICAgICBwbGF0Zm9ybVNldFNjcm9sbGJhck1vZGVzKCk7CisgICAg
ICAgIGVsc2UKKyAgICAgICAgICAgIHVwZGF0ZVNjcm9sbGJhcnMoc2Nyb2xsT2Zmc2V0KCkpOwor
ICAgIH0KK30KKwordm9pZCBTY3JvbGxWaWV3OjpzZXRWZXJ0aWNhbFNjcm9sbGJhck1vZGUoU2Ny
b2xsYmFyTW9kZSBtb2RlLCBib29sIGxvY2spCit7CisgICAgaWYgKG1vZGUgIT0gdmVydGljYWxT
Y3JvbGxiYXJNb2RlKCkgJiYgIW1fdmVydGljYWxTY3JvbGxiYXJMb2NrKSB7CisgICAgICAgIG1f
dmVydGljYWxTY3JvbGxiYXJNb2RlID0gbW9kZTsKKworICAgICAgICBpZiAobG9jaykKKyAgICAg
ICAgICAgIG1fdmVydGljYWxTY3JvbGxiYXJMb2NrID0gbG9jazsKKworICAgICAgICBpZiAocGxh
dGZvcm1XaWRnZXQoKSkKKyAgICAgICAgICAgIHBsYXRmb3JtU2V0U2Nyb2xsYmFyTW9kZXMoKTsK
KyAgICAgICAgZWxzZQorICAgICAgICAgICAgdXBkYXRlU2Nyb2xsYmFycyhzY3JvbGxPZmZzZXQo
KSk7CisgICAgfQorfQorCiB2b2lkIFNjcm9sbFZpZXc6OnNldENhbkhhdmVTY3JvbGxiYXJzKGJv
b2wgY2FuU2Nyb2xsKQogewogICAgIFNjcm9sbGJhck1vZGUgbmV3SG9yaXpvbnRhbE1vZGU7CmRp
ZmYgLS1naXQgYS9XZWJDb3JlL3BsYXRmb3JtL1Njcm9sbFZpZXcuaCBiL1dlYkNvcmUvcGxhdGZv
cm0vU2Nyb2xsVmlldy5oCmluZGV4IGMzNTZhNjAuLmFmOTMyYmYgMTAwNjQ0Ci0tLSBhL1dlYkNv
cmUvcGxhdGZvcm0vU2Nyb2xsVmlldy5oCisrKyBiL1dlYkNvcmUvcGxhdGZvcm0vU2Nyb2xsVmll
dy5oCkBAIC04MywxMiArODMsMjIgQEAgcHVibGljOgogICAgIC8vIEF1dG8gbWVhbnMgc2hvdyBh
IHNjcm9sbGJhciBvbmx5IHdoZW4gb25lIGlzIG5lZWRlZC4KICAgICAvLyBOb3RlIHRoYXQgZm9y
IHBsYXRmb3JtcyB3aXRoIG5hdGl2ZSB3aWRnZXRzLCB0aGVzZSBtb2RlcyBhcmUgY29uc2lkZXJl
ZCBhZHZpc29yeS4gIEluIG90aGVyIHdvcmRzIHRoZSB1bmRlcmx5aW5nIG5hdGl2ZQogICAgIC8v
IHdpZGdldCBtYXkgY2hvb3NlIG5vdCB0byBob25vciB0aGUgcmVxdWVzdGVkIG1vZGVzLgotICAg
IHZvaWQgc2V0U2Nyb2xsYmFyTW9kZXMoU2Nyb2xsYmFyTW9kZSBob3Jpem9udGFsTW9kZSwgU2Ny
b2xsYmFyTW9kZSB2ZXJ0aWNhbE1vZGUpOwotICAgIHZvaWQgc2V0SG9yaXpvbnRhbFNjcm9sbGJh
ck1vZGUoU2Nyb2xsYmFyTW9kZSBtb2RlKSB7IHNldFNjcm9sbGJhck1vZGVzKG1vZGUsIHZlcnRp
Y2FsU2Nyb2xsYmFyTW9kZSgpKTsgfQotICAgIHZvaWQgc2V0VmVydGljYWxTY3JvbGxiYXJNb2Rl
KFNjcm9sbGJhck1vZGUgbW9kZSkgeyBzZXRTY3JvbGxiYXJNb2Rlcyhob3Jpem9udGFsU2Nyb2xs
YmFyTW9kZSgpLCBtb2RlKTsgfQorICAgIHZvaWQgc2V0U2Nyb2xsYmFyTW9kZXMoU2Nyb2xsYmFy
TW9kZSBob3Jpem9udGFsTW9kZSwgU2Nyb2xsYmFyTW9kZSB2ZXJ0aWNhbE1vZGUsIGJvb2wgbG9j
ayA9IGZhbHNlKTsKICAgICB2b2lkIHNjcm9sbGJhck1vZGVzKFNjcm9sbGJhck1vZGUmIGhvcml6
b250YWxNb2RlLCBTY3JvbGxiYXJNb2RlJiB2ZXJ0aWNhbE1vZGUpIGNvbnN0OworCisgICAgdm9p
ZCBzZXRIb3Jpem9udGFsU2Nyb2xsYmFyTW9kZShTY3JvbGxiYXJNb2RlIG1vZGUsIGJvb2wgYW5k
TG9jayA9IGZhbHNlKTsKICAgICBTY3JvbGxiYXJNb2RlIGhvcml6b250YWxTY3JvbGxiYXJNb2Rl
KCkgY29uc3QgeyBTY3JvbGxiYXJNb2RlIGhvcml6b250YWwsIHZlcnRpY2FsOyBzY3JvbGxiYXJN
b2Rlcyhob3Jpem9udGFsLCB2ZXJ0aWNhbCk7IHJldHVybiBob3Jpem9udGFsOyB9CisKKyAgICB2
b2lkIHNldFZlcnRpY2FsU2Nyb2xsYmFyTW9kZShTY3JvbGxiYXJNb2RlIG1vZGUsIGJvb2wgYW5k
TG9jayA9IGZhbHNlKTsKICAgICBTY3JvbGxiYXJNb2RlIHZlcnRpY2FsU2Nyb2xsYmFyTW9kZSgp
IGNvbnN0IHsgU2Nyb2xsYmFyTW9kZSBob3Jpem9udGFsLCB2ZXJ0aWNhbDsgc2Nyb2xsYmFyTW9k
ZXMoaG9yaXpvbnRhbCwgdmVydGljYWwpOyByZXR1cm4gdmVydGljYWw7IH0KKworICAgIHZvaWQg
c2V0SG9yaXpvbnRhbFNjcm9sbGJhckxvY2soYm9vbCBsb2NrID0gdHJ1ZSkgeyBtX2hvcml6b250
YWxTY3JvbGxiYXJMb2NrID0gbG9jazsgfQorICAgIGJvb2wgaXNIb3Jpem9udGFsU2Nyb2xsYmFy
TG9ja2VkKCkgY29uc3QgeyByZXR1cm4gbV9ob3Jpem9udGFsU2Nyb2xsYmFyTG9jazsgfQorICAg
IHZvaWQgc2V0VmVydGljYWxTY3JvbGxiYXJMb2NrKGJvb2wgbG9jayA9IHRydWUpIHsgbV92ZXJ0
aWNhbFNjcm9sbGJhckxvY2sgPSBsb2NrOyB9CisgICAgYm9vbCBpc1ZlcnRpY2FsU2Nyb2xsYmFy
TG9ja2VkKCkgY29uc3QgeyByZXR1cm4gbV92ZXJ0aWNhbFNjcm9sbGJhckxvY2s7IH0KKworICAg
IHZvaWQgc2V0U2Nyb2xsaW5nTW9kZXNMb2NrZWQoYm9vbCBsb2NrID0gdHJ1ZSkgeyBtX2hvcml6
b250YWxTY3JvbGxiYXJMb2NrID0gbV92ZXJ0aWNhbFNjcm9sbGJhckxvY2sgPSBsb2NrOyB9CisK
ICAgICB2aXJ0dWFsIHZvaWQgc2V0Q2FuSGF2ZVNjcm9sbGJhcnMoYm9vbCk7CiAgICAgYm9vbCBj
YW5IYXZlU2Nyb2xsYmFycygpIGNvbnN0IHsgcmV0dXJuIGhvcml6b250YWxTY3JvbGxiYXJNb2Rl
KCkgIT0gU2Nyb2xsYmFyQWx3YXlzT2ZmIHx8IHZlcnRpY2FsU2Nyb2xsYmFyTW9kZSgpICE9IFNj
cm9sbGJhckFsd2F5c09mZjsgfQogCkBAIC0yNjAsNiArMjcwLDEwIEBAIHByaXZhdGU6CiAgICAg
UmVmUHRyPFNjcm9sbGJhcj4gbV92ZXJ0aWNhbFNjcm9sbGJhcjsKICAgICBTY3JvbGxiYXJNb2Rl
IG1faG9yaXpvbnRhbFNjcm9sbGJhck1vZGU7CiAgICAgU2Nyb2xsYmFyTW9kZSBtX3ZlcnRpY2Fs
U2Nyb2xsYmFyTW9kZTsKKworICAgIGJvb2wgbV9ob3Jpem9udGFsU2Nyb2xsYmFyTG9jazsKKyAg
ICBib29sIG1fdmVydGljYWxTY3JvbGxiYXJMb2NrOworCiAgICAgYm9vbCBtX3Byb2hpYml0c1Nj
cm9sbGluZzsKIAogICAgIEhhc2hTZXQ8UmVmUHRyPFdpZGdldD4gPiBtX2NoaWxkcmVuOwpkaWZm
IC0tZ2l0IGEvV2ViS2l0L3F0L0FwaS9xd2ViZnJhbWUuY3BwIGIvV2ViS2l0L3F0L0FwaS9xd2Vi
ZnJhbWUuY3BwCmluZGV4IDNiYmNmZTIuLmU1YzI3NjggMTAwNjQ0Ci0tLSBhL1dlYktpdC9xdC9B
cGkvcXdlYmZyYW1lLmNwcAorKysgYi9XZWJLaXQvcXQvQXBpL3F3ZWJmcmFtZS5jcHAKQEAgLTEw
NTAsMTMgKzEwNTAsMTMgQEAgdm9pZCBRV2ViRnJhbWU6OnNldFNjcm9sbEJhclBvbGljeShRdDo6
T3JpZW50YXRpb24gb3JpZW50YXRpb24sIFF0OjpTY3JvbGxCYXJQb2wKICAgICBpZiAob3JpZW50
YXRpb24gPT0gUXQ6Okhvcml6b250YWwpIHsKICAgICAgICAgZC0+aG9yaXpvbnRhbFNjcm9sbEJh
clBvbGljeSA9IHBvbGljeTsKICAgICAgICAgaWYgKGQtPmZyYW1lLT52aWV3KCkpIHsKLSAgICAg
ICAgICAgIGQtPmZyYW1lLT52aWV3KCktPnNldEhvcml6b250YWxTY3JvbGxiYXJNb2RlKChTY3Jv
bGxiYXJNb2RlKXBvbGljeSk7CisgICAgICAgICAgICBkLT5mcmFtZS0+dmlldygpLT5zZXRIb3Jp
em9udGFsU2Nyb2xsYmFyTW9kZSgoU2Nyb2xsYmFyTW9kZSlwb2xpY3ksIHBvbGljeSAhPSBRdDo6
U2Nyb2xsQmFyQXNOZWVkZWQgLyogbG9jayAqLyk7CiAgICAgICAgICAgICBkLT5mcmFtZS0+dmll
dygpLT51cGRhdGVDYW5IYXZlU2Nyb2xsYmFycygpOwogICAgICAgICB9CiAgICAgfSBlbHNlIHsK
ICAgICAgICAgZC0+dmVydGljYWxTY3JvbGxCYXJQb2xpY3kgPSBwb2xpY3k7CiAgICAgICAgIGlm
IChkLT5mcmFtZS0+dmlldygpKSB7Ci0gICAgICAgICAgICBkLT5mcmFtZS0+dmlldygpLT5zZXRW
ZXJ0aWNhbFNjcm9sbGJhck1vZGUoKFNjcm9sbGJhck1vZGUpcG9saWN5KTsKKyAgICAgICAgICAg
IGQtPmZyYW1lLT52aWV3KCktPnNldFZlcnRpY2FsU2Nyb2xsYmFyTW9kZSgoU2Nyb2xsYmFyTW9k
ZSlwb2xpY3ksIHBvbGljeSAhPSBRdDo6U2Nyb2xsQmFyQXNOZWVkZWQgLyogbG9jayAqLyk7CiAg
ICAgICAgICAgICBkLT5mcmFtZS0+dmlldygpLT51cGRhdGVDYW5IYXZlU2Nyb2xsYmFycygpOwog
ICAgICAgICB9CiAgICAgfQpkaWZmIC0tZ2l0IGEvV2ViS2l0L3F0L0NoYW5nZUxvZyBiL1dlYktp
dC9xdC9DaGFuZ2VMb2cKaW5kZXggYTM2ODA3NS4uMWJjNDMzOCAxMDA2NDQKLS0tIGEvV2ViS2l0
L3F0L0NoYW5nZUxvZworKysgYi9XZWJLaXQvcXQvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTggQEAK
KzIwMTAtMDQtMDEgIEFudG9uaW8gR29tZXMgIDx0b25pa2l0b29Ad2Via2l0Lm9yZz4KKworICAg
ICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBbUXRdIFJFR1JFU1NJ
T046KHI1MDY2NSkgUVdlYkZyYW1lOjpzZXRTY3JvbGxCYXJQb2xpY3koUXQ6OlZlcnRpY2FsLFF0
OjpTY3JvbGxCYXJBbHdheXNPZmYpIGhhcyBubyBlZmZlY3QuCisgICAgICAgIGh0dHBzOi8vYnVn
cy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yOTQzMQorCisgICAgICAgIE1ha2UgdXNlIG9m
IHRoZSBuZXcgbG9jayBwYXJhbWV0ZXIgb2Ygc2V0e1ZlcnRpY2FsLEhvcml6b250YWx9U2Nyb2xs
YmFyTW9kZS4KKworICAgICAgICBBbHdheXMgYWRkZWQgYSBxdCBhdXRvIHRlc3QgZm9yIHNldCBz
Y3JvbGxiYXIgcG9saWN5IGZlYXR1cmUuCisKKyAgICAgICAgKiBBcGkvcXdlYmZyYW1lLmNwcDoK
KyAgICAgICAgKFFXZWJGcmFtZTo6c2V0U2Nyb2xsQmFyUG9saWN5KToKKyAgICAgICAgKiB0ZXN0
cy9xd2ViZnJhbWUvdHN0X3F3ZWJmcmFtZS5jcHA6CisKIDIwMTAtMDMtMzEgIE1hcmN1cyBCdWxh
Y2ggIDxidWxhY2hAY2hyb21pdW0ub3JnPgogCiAgICAgICAgIFJldmlld2VkIGJ5IEplcmVteSBP
cmxvdy4KZGlmZiAtLWdpdCBhL1dlYktpdC9xdC90ZXN0cy9xd2ViZnJhbWUvdHN0X3F3ZWJmcmFt
ZS5jcHAgYi9XZWJLaXQvcXQvdGVzdHMvcXdlYmZyYW1lL3RzdF9xd2ViZnJhbWUuY3BwCmluZGV4
IDM3ZjdiODguLmJiZjQ0N2EgMTAwNjQ0Ci0tLSBhL1dlYktpdC9xdC90ZXN0cy9xd2ViZnJhbWUv
dHN0X3F3ZWJmcmFtZS5jcHAKKysrIGIvV2ViS2l0L3F0L3Rlc3RzL3F3ZWJmcmFtZS90c3RfcXdl
YmZyYW1lLmNwcApAQCAtNTg1LDYgKzU4NSw3IEBAIHByaXZhdGUgc2xvdHM6CiAgICAgdm9pZCBy
ZW5kZXIoKTsKICAgICB2b2lkIHNjcm9sbFBvc2l0aW9uKCk7CiAgICAgdm9pZCBzY3JvbGxUb0Fu
Y2hvcigpOworICAgIHZvaWQgc2Nyb2xsYmFyc09mZigpOwogICAgIHZvaWQgZXZhbHVhdGVXaWxs
Q2F1c2VSZXBhaW50KCk7CiAgICAgdm9pZCBxT2JqZWN0V3JhcHBlcldpdGhTYW1lSWRlbnRpdHko
KTsKICAgICB2b2lkIGludHJvc3BlY3RRdE1ldGhvZHNfZGF0YSgpOwpAQCAtMjc5Niw2ICsyNzk3
LDM4IEBAIHZvaWQgdHN0X1FXZWJGcmFtZTo6c2Nyb2xsVG9BbmNob3IoKQogICAgIFFWRVJJRlko
ZnJhbWUtPnNjcm9sbFBvc2l0aW9uKCkueSgpICE9IDApOwogfQogCisKK3ZvaWQgdHN0X1FXZWJG
cmFtZTo6c2Nyb2xsYmFyc09mZigpCit7CisgICAgUVdlYlZpZXcgdmlldzsKKyAgICBRV2ViRnJh
bWUqIG1haW5GcmFtZSA9IHZpZXcucGFnZSgpLT5tYWluRnJhbWUoKTsKKworICAgIG1haW5GcmFt
ZS0+c2V0U2Nyb2xsQmFyUG9saWN5KFF0OjpWZXJ0aWNhbCwgUXQ6OlNjcm9sbEJhckFsd2F5c09m
Zik7CisgICAgbWFpbkZyYW1lLT5zZXRTY3JvbGxCYXJQb2xpY3koUXQ6Okhvcml6b250YWwsIFF0
OjpTY3JvbGxCYXJBbHdheXNPZmYpOworCisgICAgUVN0cmluZyBodG1sKCI8c2NyaXB0PiIgXAor
ICAgICAgICAgICAgICAgICAiICAgZnVuY3Rpb24gY2hlY2tTY3JvbGxiYXIoKSB7IiBcCisgICAg
ICAgICAgICAgICAgICIgICAgICAgaWYgKGlubmVyV2lkdGggPT09IGRvY3VtZW50LmRvY3VtZW50
RWxlbWVudC5vZmZzZXRXaWR0aCkiIFwKKyAgICAgICAgICAgICAgICAgIiAgICAgICAgICAgZG9j
dW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ3NwYW4xJykuaW5uZXJUZXh0ID0gJ1NVQ0NFU1MnOyIgXAor
ICAgICAgICAgICAgICAgICAiICAgICAgIGVsc2UiIFwKKyAgICAgICAgICAgICAgICAgIiAgICAg
ICAgICAgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ3NwYW4xJykuaW5uZXJUZXh0ID0gJ0ZBSUwn
OyIgXAorICAgICAgICAgICAgICAgICAiICAgfSIgXAorICAgICAgICAgICAgICAgICAiPC9zY3Jp
cHQ+IiBcCisgICAgICAgICAgICAgICAgICI8Ym9keT4iIFwKKyAgICAgICAgICAgICAgICAgIiAg
IDxkaXYgc3R5bGU9J21hcmdpbi10b3A6MTAwMHB4IDsgbWFyZ2luLWxlZnQ6MTAwMHB4Jz4iIFwK
KyAgICAgICAgICAgICAgICAgIiAgICAgICA8YSBpZD0nb2Zmc2NyZWVuJyBocmVmPSdhJz5FbmQ8
L2E+IiBcCisgICAgICAgICAgICAgICAgICIgICA8L2Rpdj4iIFwKKyAgICAgICAgICAgICAgICAg
IjxzcGFuIGlkPSdzcGFuMSc+PC9zcGFuPiIgXAorICAgICAgICAgICAgICAgICAiPC9ib2R5PiIp
OworCisKKyAgICB2aWV3LnNldEh0bWwoaHRtbCk7CisgICAgOjp3YWl0Rm9yU2lnbmFsKCZ2aWV3
LCBTSUdOQUwobG9hZEZpbmlzaGVkKGJvb2wpKSk7CisKKyAgICBtYWluRnJhbWUtPmV2YWx1YXRl
SmF2YVNjcmlwdCgiY2hlY2tTY3JvbGxiYXIoKTsiKTsKKyAgICBRQ09NUEFSRShtYWluRnJhbWUt
PmRvY3VtZW50RWxlbWVudCgpLmZpbmRBbGwoInNwYW4iKS5hdCgwKS50b1BsYWluVGV4dCgpLCBR
U3RyaW5nKCJTVUNDRVNTIikpOworfQorCiB2b2lkIHRzdF9RV2ViRnJhbWU6OmV2YWx1YXRlV2ls
bENhdXNlUmVwYWludCgpCiB7CiAgICAgUVdlYlZpZXcgdmlldzsKZGlmZiAtLWdpdCBhL1dlYktp
dFRvb2xzL0NoYW5nZUxvZyBiL1dlYktpdFRvb2xzL0NoYW5nZUxvZwppbmRleCBiMTFkMDdkLi5h
MzQ4ODM3IDEwMDY0NAotLS0gYS9XZWJLaXRUb29scy9DaGFuZ2VMb2cKKysrIGIvV2ViS2l0VG9v
bHMvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTkgQEAKKzIwMTAtMDQtMDEgIEFudG9uaW8gR29tZXMg
IDx0b25pa2l0b29Ad2Via2l0Lm9yZz4KKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9P
UFMhKS4KKworICAgICAgICBbUXRdIFJFR1JFU1NJT046KHI1MDY2NSkgUVdlYkZyYW1lOjpzZXRT
Y3JvbGxCYXJQb2xpY3koUXQ6OlZlcnRpY2FsLFF0OjpTY3JvbGxCYXJBbHdheXNPZmYpIGhhcyBu
byBlZmZlY3QuCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9p
ZD0yOTQzMQorCisgICAgICAgIE1ha2UgcG9zc2libGUgdG8gRFJUIHRvIHNldCBzY3JvbGxiYXIg
cG9saWNpZXMgKG9uLCBvZmYgb3IgYXV0bykuCisKKyAgICAgICAgKiBEdW1wUmVuZGVyVHJlZS9x
dC9MYXlvdXRUZXN0Q29udHJvbGxlclF0LmNwcDoKKyAgICAgICAgKExheW91dFRlc3RDb250cm9s
bGVyOjpzZXRTY3JvbGxiYXJQb2xpY3kpOgorICAgICAgICAqIER1bXBSZW5kZXJUcmVlL3F0L0xh
eW91dFRlc3RDb250cm9sbGVyUXQuaDoKKyAgICAgICAgKiBRdExhdW5jaGVyL21haW4uY3BwOgor
ICAgICAgICAoTGF1bmNoZXJXaW5kb3c6OnRvZ2dsZVNjcm9sbGJhcnMpOgorICAgICAgICAoTGF1
bmNoZXJXaW5kb3c6OmNyZWF0ZUNocm9tZSk6CisKIDIwMTAtMDQtMDEgIElseWEgVGlraG9ub3Zz
a3kgIDxsb2lzbG9AY2hyb21pdW0ub3JnPgogCiAgICAgICAgIFJldmlld2VkIGJ5IFl1cnkgU2Vt
aWtoYXRza3kuCmRpZmYgLS1naXQgYS9XZWJLaXRUb29scy9EdW1wUmVuZGVyVHJlZS9xdC9MYXlv
dXRUZXN0Q29udHJvbGxlclF0LmNwcCBiL1dlYktpdFRvb2xzL0R1bXBSZW5kZXJUcmVlL3F0L0xh
eW91dFRlc3RDb250cm9sbGVyUXQuY3BwCmluZGV4IGI2NDgwYzIuLjY3MDNiMDEgMTAwNjQ0Ci0t
LSBhL1dlYktpdFRvb2xzL0R1bXBSZW5kZXJUcmVlL3F0L0xheW91dFRlc3RDb250cm9sbGVyUXQu
Y3BwCisrKyBiL1dlYktpdFRvb2xzL0R1bXBSZW5kZXJUcmVlL3F0L0xheW91dFRlc3RDb250cm9s
bGVyUXQuY3BwCkBAIC01NDEsNSArNTQxLDI5IEBAIGJvb2wgTGF5b3V0VGVzdENvbnRyb2xsZXI6
OmNhbGxTaG91bGRDbG9zZU9uV2ViVmlldygpCiAgICAgcmV0dXJuIGZhbHNlOwogfQogCit2b2lk
IExheW91dFRlc3RDb250cm9sbGVyOjpzZXRTY3JvbGxiYXJQb2xpY3koY29uc3QgUVN0cmluZyYg
b3JpZW50YXRpb24sIGNvbnN0IFFTdHJpbmcmIHBvbGljeSkKK3sKKyAgICBRdDo6T3JpZW50YXRp
b24gbzsKKyAgICBRdDo6U2Nyb2xsQmFyUG9saWN5IHA7CisKKyAgICBpZiAob3JpZW50YXRpb24g
PT0gInZlcnRpY2FsIikKKyAgICAgICAgbyA9IFF0OjpWZXJ0aWNhbDsKKyAgICBlbHNlIGlmIChv
cmllbnRhdGlvbiA9PSAiaG9yaXpvbnRhbCIpCisgICAgICAgIG8gPSBRdDo6SG9yaXpvbnRhbDsK
KyAgICBlbHNlCisgICAgICAgIHJldHVybjsKKworICAgIGlmIChwb2xpY3kgPT0gIm9uIikKKyAg
ICAgICAgcCA9IFF0OjpTY3JvbGxCYXJBbHdheXNPbjsKKyAgICBlbHNlIGlmIChwb2xpY3kgPT0g
ImF1dG8iKQorICAgICAgICBwID0gUXQ6OlNjcm9sbEJhckFzTmVlZGVkOworICAgIGVsc2UgaWYg
KHBvbGljeSA9PSAib2ZmIikKKyAgICAgICAgcCA9IFF0OjpTY3JvbGxCYXJBbHdheXNPZmY7Cisg
ICAgZWxzZQorICAgICAgICByZXR1cm47CisKKyAgICBtX2RydC0+d2ViUGFnZSgpLT5tYWluRnJh
bWUoKS0+c2V0U2Nyb2xsQmFyUG9saWN5KG8sIHApOworfQorCiBjb25zdCB1bnNpZ25lZCBMYXlv
dXRUZXN0Q29udHJvbGxlcjo6bWF4Vmlld1dpZHRoID0gODAwOwogY29uc3QgdW5zaWduZWQgTGF5
b3V0VGVzdENvbnRyb2xsZXI6Om1heFZpZXdIZWlnaHQgPSA2MDA7CmRpZmYgLS1naXQgYS9XZWJL
aXRUb29scy9EdW1wUmVuZGVyVHJlZS9xdC9MYXlvdXRUZXN0Q29udHJvbGxlclF0LmggYi9XZWJL
aXRUb29scy9EdW1wUmVuZGVyVHJlZS9xdC9MYXlvdXRUZXN0Q29udHJvbGxlclF0LmgKaW5kZXgg
MzZiNWY3MC4uM2JkOWRiOCAxMDA2NDQKLS0tIGEvV2ViS2l0VG9vbHMvRHVtcFJlbmRlclRyZWUv
cXQvTGF5b3V0VGVzdENvbnRyb2xsZXJRdC5oCisrKyBiL1dlYktpdFRvb2xzL0R1bXBSZW5kZXJU
cmVlL3F0L0xheW91dFRlc3RDb250cm9sbGVyUXQuaApAQCAtMTY1LDYgKzE2NSwxMiBAQCBwdWJs
aWMgc2xvdHM6CiAgICAgaW50IG51bWJlck9mUGFnZXMoZmxvYXQgd2lkdGggPSBtYXhWaWV3V2lk
dGgsIGZsb2F0IGhlaWdodCA9IG1heFZpZXdIZWlnaHQpOwogICAgIGJvb2wgY2FsbFNob3VsZENs
b3NlT25XZWJWaWV3KCk7CiAKKyAgICAvKgorICAgICAgICBQb2xpY3kgdmFsdWVzOiAnb24nLCAn
YXV0bycgb3IgJ29mZicuCisgICAgICAgIE9yaWVudGF0aW9uIHZhbHVlczogJ3ZlcnRpY2FsJyBv
ciAnaG9yaXpvbnRhbCcuCisgICAgKi8KKyAgICB2b2lkIHNldFNjcm9sbGJhclBvbGljeShjb25z
dCBRU3RyaW5nJiBvcmllbnRhdGlvbiwgY29uc3QgUVN0cmluZyYgcG9saWN5KTsKKwogcHJpdmF0
ZSBzbG90czoKICAgICB2b2lkIHByb2Nlc3NXb3JrKCk7CiAKLS0gCjEuNi4wLjQKCg==
</data>
<flag name="review"
          id="35771"
          type_id="1"
          status="-"
          setter="hyatt"
    />
    <flag name="commit-queue"
          id="35772"
          type_id="3"
          status="-"
          setter="tonikitoo"
    />
          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>52517</attachid>
            <date>2010-04-04 20:11:07 -0700</date>
            <delta_ts>2010-04-06 08:29:12 -0700</delta_ts>
            <desc>patch 1 - v2 - addressed feedback from hyatt on IRC</desc>
            <filename>0001--Qt-REGRESSION-r50665-QWebFrame-setScrollBarPoli.patch</filename>
            <type>text/plain</type>
            <size>25149</size>
            <attacher name="Antonio Gomes">tonikitoo</attacher>
            
              <data encoding="base64">RnJvbSAxZGE1ZTFiYjdlM2Y2YmZhZjQ0ZmMxOTExYWY1ZjMwZTlkMDA2NjcxIE1vbiBTZXAgMTcg
MDA6MDA6MDAgMjAwMQpGcm9tOiBBbnRvbmlvIEdvbWVzIDx0b25pa2l0b29Ad2Via2l0Lm9yZz4K
RGF0ZTogVGh1LCAxIEFwciAyMDEwIDE2OjEyOjMzIC0wNDAwClN1YmplY3Q6IFtQQVRDSF0gW1F0
XSBSRUdSRVNTSU9OOihyNTA2NjUpIFFXZWJGcmFtZTo6c2V0U2Nyb2xsQmFyUG9saWN5KFF0OjpW
ZXJ0aWNhbCxRdDo6U2Nyb2xsQmFyQWx3YXlzT2ZmKSBoYXMgbm8gZWZmZWN0LgogaHR0cHM6Ly9i
dWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTI5NDMxCgpSZXZpZXdlZCBieSBOT0JPRFkg
KE9PUFMhKS4KUGF0Y2ggYnkgQW50b25pbyBHb21lcyA8dG9uaWtpdG9vQHdlYmtpdC5vcmc+CgpX
ZWJDb3JlOgoKVGVzdDogZmFzdC9vdmVyZmxvdy9zY3JvbGxiYXItcmVzdG9yZWQtYW5kLXRoZW4t
bG9ja2VkLmh0bWwKClBhdGNoIGludHJvZHVjZXMgYSBsb2NrIHNjcm9sbGJhcnMgY29uY2VwdCB0
byBTY3JvbGxWaWV3LCBhcyBpbiBXZWJEeW5hbWljU2Nyb2xsQmFyc1ZpZXcubW0vaApvbiBXZWJL
aXQvbWFjLiBJdCBpcyBuZWVkZWQgYmVjYXVzZSBpbiBRdFdlYktpdCwgd2UgaGF2ZSBBcGkgZm9y
IHNldHRpbmcgYm90aCB2ZXJ0aWNhbCBhbmQKaG9yaXpvbnRhbCBzY3JvbGxiYXJzIG9uL29mZi9h
dXRvLiBXaGVuIGl0IGlzIHNldCB0byBvZmYsIGZvciBleGFtcGxlLCBpdCBzaG91bGQgcmVtYWlu
CmFzIHN1Y2gsIHVubGVzcyB1bnNldC4KCkZvciB0aGUgbG9ja2luZyBjb25jZXB0LCBvbmUgYWRk
aXRpb25hbCAnbG9jaycgb3B0aW9uYWwgcGFyYW1ldGVyIHdhcyBhZGRlZCB0byBTY3JvbGxWaWV3
J3MKc2V0SG9yaXpvbnRhbFNjcm9sbGJhck1vZGUgYW5kIHNldFZlcnRpY2FsU2Nyb2xsYmFyTW9k
ZS4gQXMgaXQgaXMgb3B0aW9uYWwsIGFsbCBwcmV2aW91cyBjb2RlCmNhbGxpbmcgdGhlbSBkbyBu
b3QgbmVlZCBtb2RpZmljYXRpb24uIHNldFNjcm9sbGJhck1vZGVzJ3Mgc2lnbmF0dXJlIHJlbWFp
bnMgYXMgaXMsIGJ1dCBib2R5Cmhvbm9ycyB0aGUgY3VycmVudCBsb2NrIHN0YXRlLgoKVHdvIG9w
dGlvbmFsIHBhcmFtZXRlcnMgd2VyZSBhbHNvIGFkZGVkIHRvIEZyYW1lJ3MgY3JlYXRlVmlldyBt
ZXRob2QsIGZvciBob3Jpem9udGFsIGFuZCB2ZXJ0aWNhbApsb2NrIHN0YXRlIHBlcnNpc3RlbmNl
IGNyb3NzIHBhZ2UgbG9hZHMuCgoqIHBhZ2UvRnJhbWUuY3BwOgooV2ViQ29yZTo6RnJhbWU6OmNy
ZWF0ZVZpZXcpOgoqIHBsYXRmb3JtL1Njcm9sbFZpZXcuY3BwOgooV2ViQ29yZTo6U2Nyb2xsVmll
dzo6U2Nyb2xsVmlldyk6CihXZWJDb3JlOjpTY3JvbGxWaWV3OjpzZXRTY3JvbGxiYXJNb2Rlcyk6
CihXZWJDb3JlOjpTY3JvbGxWaWV3OjpzZXRIb3Jpem9udGFsU2Nyb2xsYmFyTW9kZSk6CihXZWJD
b3JlOjpTY3JvbGxWaWV3OjpzZXRWZXJ0aWNhbFNjcm9sbGJhck1vZGUpOgoqIHBsYXRmb3JtL1Nj
cm9sbFZpZXcuaDoKKFdlYkNvcmU6OlNjcm9sbFZpZXc6OnNldEhvcml6b250YWxTY3JvbGxiYXJM
b2NrKToKKFdlYkNvcmU6OlNjcm9sbFZpZXc6OmlzSG9yaXpvbnRhbFNjcm9sbGJhckxvY2tlZCk6
CihXZWJDb3JlOjpTY3JvbGxWaWV3OjpzZXRWZXJ0aWNhbFNjcm9sbGJhckxvY2spOgooV2ViQ29y
ZTo6U2Nyb2xsVmlldzo6aXNWZXJ0aWNhbFNjcm9sbGJhckxvY2tlZCk6CihXZWJDb3JlOjpTY3Jv
bGxWaWV3OjpzZXRTY3JvbGxpbmdNb2Rlc0xvY2tlZCk6CgpXZWJLaXQvcXQ6CgpNYWtlIHVzZSBv
ZiB0aGUgbmV3IGxvY2sgcGFyYW1ldGVyIG9mIHNldHtWZXJ0aWNhbCxIb3Jpem9udGFsfVNjcm9s
bGJhck1vZGUuCgpBbHdheXMgYWRkZWQgYSBxdCBhdXRvIHRlc3QgZm9yIHNldCBzY3JvbGxiYXIg
cG9saWN5IGZlYXR1cmUuCgoqIEFwaS9xd2ViZnJhbWUuY3BwOgooUVdlYkZyYW1lOjpzZXRTY3Jv
bGxCYXJQb2xpY3kpOgoqIHRlc3RzL3F3ZWJmcmFtZS90c3RfcXdlYmZyYW1lLmNwcDoKKiBXZWJD
b3JlU3VwcG9ydC9GcmFtZUxvYWRlckNsaWVudFF0LmNwcDoKKEZyYW1lTG9hZGVyQ2xpZW50UXQ6
OnRyYW5zaXRpb25Ub0NvbW1pdHRlZEZvck5ld1BhZ2UpOgoKV2ViS2l0VG9vbHM6CgpNYWtlIHBv
c3NpYmxlIHRvIERSVCB0byBzZXQgc2Nyb2xsYmFyIHBvbGljaWVzIChvbiwgb2ZmIG9yIGF1dG8p
LgoKKiBEdW1wUmVuZGVyVHJlZS9xdC9MYXlvdXRUZXN0Q29udHJvbGxlclF0LmNwcDoKKExheW91
dFRlc3RDb250cm9sbGVyOjpzZXRTY3JvbGxiYXJQb2xpY3kpOgoqIER1bXBSZW5kZXJUcmVlL3F0
L0xheW91dFRlc3RDb250cm9sbGVyUXQuaDoKKiBRdExhdW5jaGVyL21haW4uY3BwOgooTGF1bmNo
ZXJXaW5kb3c6OnRvZ2dsZVNjcm9sbGJhcnMpOgooTGF1bmNoZXJXaW5kb3c6OmNyZWF0ZUNocm9t
ZSk6CgpMYXlvdXRUZXN0czoKCiogZmFzdC9vdmVyZmxvdy9zY3JvbGxiYXItcmVzdG9yZWQtYW5k
LXRoZW4tbG9ja2VkLWV4cGVjdGVkLnR4dDogQWRkZWQuCiogZmFzdC9vdmVyZmxvdy9zY3JvbGxi
YXItcmVzdG9yZWQtYW5kLXRoZW4tbG9ja2VkLmh0bWw6IEFkZGVkLgotLS0KIExheW91dFRlc3Rz
L0NoYW5nZUxvZyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgICAxMCArKysrCiAuLi5z
Y3JvbGxiYXItcmVzdG9yZWQtYW5kLXRoZW4tbG9ja2VkLWV4cGVjdGVkLnR4dCB8ICAgIDYgKysK
IC4uLi9zY3JvbGxiYXItcmVzdG9yZWQtYW5kLXRoZW4tbG9ja2VkLmh0bWwgICAgICAgIHwgICA0
MSArKysrKysrKysrKysrKysrCiBMYXlvdXRUZXN0cy9wbGF0Zm9ybS9ndGsvU2tpcHBlZCAgICAg
ICAgICAgICAgICAgICB8ICAgIDMgKwogTGF5b3V0VGVzdHMvcGxhdGZvcm0vbWFjL1NraXBwZWQg
ICAgICAgICAgICAgICAgICAgfCAgICAzICsKIExheW91dFRlc3RzL3BsYXRmb3JtL3dpbi9Ta2lw
cGVkICAgICAgICAgICAgICAgICAgIHwgICAgMyArCiBXZWJDb3JlL0NoYW5nZUxvZyAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICB8ICAgMzYgKysrKysrKysrKysrKysKIFdlYkNvcmUv
cGFnZS9GcmFtZS5jcHAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgICAgNiArKy0KIFdl
YkNvcmUvcGFnZS9GcmFtZS5oICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgICAgMyAr
LQogV2ViQ29yZS9wbGF0Zm9ybS9TY3JvbGxWaWV3LmNwcCAgICAgICAgICAgICAgICAgICAgfCAg
IDQ5ICsrKysrKysrKysrKysrKysrKy0KIFdlYkNvcmUvcGxhdGZvcm0vU2Nyb2xsVmlldy5oICAg
ICAgICAgICAgICAgICAgICAgIHwgICAxOCArKysrKystCiBXZWJLaXQvcXQvQXBpL3F3ZWJmcmFt
ZS5jcHAgICAgICAgICAgICAgICAgICAgICAgICB8ICAgIDQgKy0KIFdlYktpdC9xdC9DaGFuZ2VM
b2cgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgICAxNyArKysrKysrCiBXZWJLaXQv
cXQvV2ViQ29yZVN1cHBvcnQvRnJhbWVMb2FkZXJDbGllbnRRdC5jcHAgICB8ICAgIDkgKysrLQog
V2ViS2l0L3F0L3Rlc3RzL3F3ZWJmcmFtZS90c3RfcXdlYmZyYW1lLmNwcCAgICAgICAgfCAgIDMz
ICsrKysrKysrKysrKysKIFdlYktpdFRvb2xzL0NoYW5nZUxvZyAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgIHwgICAxNiArKysrKysKIC4uLi9EdW1wUmVuZGVyVHJlZS9xdC9MYXlvdXRUZXN0
Q29udHJvbGxlclF0LmNwcCAgIHwgICAyNCArKysrKysrKysrCiAuLi4vRHVtcFJlbmRlclRyZWUv
cXQvTGF5b3V0VGVzdENvbnRyb2xsZXJRdC5oICAgICB8ICAgIDYgKysKIDE4IGZpbGVzIGNoYW5n
ZWQsIDI3NSBpbnNlcnRpb25zKCspLCAxMiBkZWxldGlvbnMoLSkKIGNyZWF0ZSBtb2RlIDEwMDY0
NCBMYXlvdXRUZXN0cy9mYXN0L292ZXJmbG93L3Njcm9sbGJhci1yZXN0b3JlZC1hbmQtdGhlbi1s
b2NrZWQtZXhwZWN0ZWQudHh0CiBjcmVhdGUgbW9kZSAxMDA2NDQgTGF5b3V0VGVzdHMvZmFzdC9v
dmVyZmxvdy9zY3JvbGxiYXItcmVzdG9yZWQtYW5kLXRoZW4tbG9ja2VkLmh0bWwKCmRpZmYgLS1n
aXQgYS9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cgYi9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKaW5kZXgg
MjRiYzg5MC4uMDdlYzkwMCAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCisrKyBi
L0xheW91dFRlc3RzL0NoYW5nZUxvZwpAQCAtMSwzICsxLDEzIEBACisyMDEwLTA0LTAxICBBbnRv
bmlvIEdvbWVzICA8dG9uaWtpdG9vQHdlYmtpdC5vcmc+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkg
Tk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgW1F0XSBSRUdSRVNTSU9OOihyNTA2NjUpIFFXZWJG
cmFtZTo6c2V0U2Nyb2xsQmFyUG9saWN5KFF0OjpWZXJ0aWNhbCxRdDo6U2Nyb2xsQmFyQWx3YXlz
T2ZmKSBoYXMgbm8gZWZmZWN0LgorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93
X2J1Zy5jZ2k/aWQ9Mjk0MzEKKworICAgICAgICAqIGZhc3Qvb3ZlcmZsb3cvc2Nyb2xsYmFyLXJl
c3RvcmVkLWFuZC10aGVuLWxvY2tlZC1leHBlY3RlZC50eHQ6IEFkZGVkLgorICAgICAgICAqIGZh
c3Qvb3ZlcmZsb3cvc2Nyb2xsYmFyLXJlc3RvcmVkLWFuZC10aGVuLWxvY2tlZC5odG1sOiBBZGRl
ZC4KKwogMjAxMC0wNC0wMiAgWmhlbnlhbyBNbyAgPHptb0Bnb29nbGUuY29tPgogCiAgICAgICAg
IFJldmlld2VkIGJ5IEVyaWMgU2VpZGVsLgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9v
dmVyZmxvdy9zY3JvbGxiYXItcmVzdG9yZWQtYW5kLXRoZW4tbG9ja2VkLWV4cGVjdGVkLnR4dCBi
L0xheW91dFRlc3RzL2Zhc3Qvb3ZlcmZsb3cvc2Nyb2xsYmFyLXJlc3RvcmVkLWFuZC10aGVuLWxv
Y2tlZC1leHBlY3RlZC50eHQKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uZmQ5
YmMyYQotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2Zhc3Qvb3ZlcmZsb3cvc2Nyb2xs
YmFyLXJlc3RvcmVkLWFuZC10aGVuLWxvY2tlZC1leHBlY3RlZC50eHQKQEAgLTAsMCArMSw2IEBA
CitUZXN0IGZvciBidWcgMjk0MzEgW1F0XSBSRUdSRVNTSU9OOihyNTA2NjUpIFFXZWJGcmFtZTo6
c2V0U2Nyb2xsQmFyUG9saWN5KFF0OjpWZXJ0aWNhbCxRdDo6U2Nyb2xsQmFyQWx3YXlzT2ZmKSBo
YXMgbm8gZWZmZWN0LgorCitUaGlzIHRlc3RzIHRoYXQgYWZ0ZXIgc2V0dGluZyAnb3ZlcmZsb3cn
IG9uIHRoZSBkb2N1bWVudCBlbGVtZW50IHRvICdoaWRkZW4nIGFuZCBiYWNrIHRvICd2aXNpYmxl
Jywgc2Nyb2xsYmFycyBhcHBlYXIgYXMgbmVjZXNzYXJ5LgorCitQQVNTCitQQVNTCmRpZmYgLS1n
aXQgYS9MYXlvdXRUZXN0cy9mYXN0L292ZXJmbG93L3Njcm9sbGJhci1yZXN0b3JlZC1hbmQtdGhl
bi1sb2NrZWQuaHRtbCBiL0xheW91dFRlc3RzL2Zhc3Qvb3ZlcmZsb3cvc2Nyb2xsYmFyLXJlc3Rv
cmVkLWFuZC10aGVuLWxvY2tlZC5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAw
MDAuLjRmMGU5OTcKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9mYXN0L292ZXJmbG93
L3Njcm9sbGJhci1yZXN0b3JlZC1hbmQtdGhlbi1sb2NrZWQuaHRtbApAQCAtMCwwICsxLDQxIEBA
Cis8Ym9keT4KKyAgICA8cD4KKyAgICAgICAgVGVzdCBmb3IgPGk+PGEgaHJlZj0iaHR0cHM6Ly9i
dWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTI5NDMxIj5idWcgMjk0MzE8L2E+CisgICAg
ICAgIFtRdF0gUkVHUkVTU0lPTjoocjUwNjY1KSBRV2ViRnJhbWU6OnNldFNjcm9sbEJhclBvbGlj
eShRdDo6VmVydGljYWwsUXQ6OlNjcm9sbEJhckFsd2F5c09mZikgaGFzIG5vIGVmZmVjdC4KKyAg
ICA8L3A+CisgICAgPHA+IFRoaXMgdGVzdCBlbnN1cmVzIHRoZSBjb3JyZWN0bmVzcyBvZiB0d28g
c2Nyb2xsYmFyIGJlaGF2aW91cjo8L3A+CisgICAgPHVsPgorICAgICAgICA8bGk+IFRoaXMgdGVz
dHMgdGhhdCBhZnRlciBzZXR0aW5nICdvdmVyZmxvdycgb24gdGhlIGRvY3VtZW50IGVsZW1lbnQg
dG8KKyAgICAgICAgICAgICdoaWRkZW4nIGFuZCBiYWNrIHRvICd2aXNpYmxlJywgc2Nyb2xsYmFy
cyBhcHBlYXIgYXMgbmVjZXNzYXJ5LgorICAgICAgICA8L2xpPgorICAgICAgICA8bGk+CisgICAg
ICAgICAgICBBZnRlciBleHBsaWNpdGx5IHNldHRpbmcgYSBzY3JvbGxiYXIgcG9saWN5IGRpZmZl
cmVudCB0aGFuICdhdXRvJywgV2ViQ29yZQorICAgICAgICAgICAgaG9ub3IgdGhhdCB1bnRpbCBp
dCBpcyB1bnNldC4KKyAgICAgICAgPC9saT4KKyAgICA8L3VsPgorICAgIDxkaXYgaWQ9ImR5bmFt
aWMiPjwvZGl2PgorICAgIDxwIGlkPSJyZXN1bHQiPkZBSUw6IFRlc3QgZGlkIG5vdCBydW4gdG8g
Y29tcGxldGlvbjwvcD4KKyAgICA8c2NyaXB0PgorICAgICAgICBpZiAod2luZG93LmxheW91dFRl
c3RDb250cm9sbGVyKQorICAgICAgICAgICAgbGF5b3V0VGVzdENvbnRyb2xsZXIuZHVtcEFzVGV4
dCgpOworCisgICAgICAgIGRvY3VtZW50LmRvY3VtZW50RWxlbWVudC5zdHlsZS5vdmVyZmxvdyA9
ICJoaWRkZW4iOworICAgICAgICBkb2N1bWVudC5ib2R5Lm9mZnNldFRvcDsKKyAgICAgICAgZG9j
dW1lbnQuZG9jdW1lbnRFbGVtZW50LnN0eWxlLnJlbW92ZVByb3BlcnR5KCJvdmVyZmxvdyIpOwor
ICAgICAgICBkb2N1bWVudC5ib2R5LnN0eWxlLmhlaWdodCA9ICIyMDAlIjsKKyAgICAgICAgdmFy
IHJlc3VsdCA9IChpbm5lcldpZHRoID09PSBkb2N1bWVudC5kb2N1bWVudEVsZW1lbnQub2Zmc2V0
V2lkdGgpCisgICAgICAgICAgICA/ICJGQUlMOiBTY3JvbGxiYXIgZGlkIG5vdCBhcHBlYXIgYWZ0
ZXIgcmVzZXR0aW5nICdvdmVyZmxvdyciCisgICAgICAgICAgICA6ICJQQVNTIjsKKworICAgICAg
ICBpZiAod2luZG93LmxheW91dFRlc3RDb250cm9sbGVyKSB7CisgICAgICAgICAgICBsYXlvdXRU
ZXN0Q29udHJvbGxlci5zZXRTY3JvbGxiYXJQb2xpY3koJ3ZlcnRpY2FsJywgJ29mZicpOworICAg
ICAgICAgICAgbGF5b3V0VGVzdENvbnRyb2xsZXIuc2V0U2Nyb2xsYmFyUG9saWN5KCdob3Jpem9u
dGFsJywgJ29mZicpOworCisgICAgICAgICAgICByZXN1bHQgKz0gKGlubmVyV2lkdGggPT09IGRv
Y3VtZW50LmRvY3VtZW50RWxlbWVudC5vZmZzZXRXaWR0aCkKKyAgICAgICAgICAgICAgICA/ICJc
blBBU1MiCisgICAgICAgICAgICAgICAgOiAiXG5GQUlMOiBTY3JvbGxiYXIgZGlkIGFwcGVhciBh
ZnRlciB0dXJuaW5nIGl0IG9mZiI7CisgICAgICAgIH0KKworICAgICAgICBkb2N1bWVudC5nZXRF
bGVtZW50QnlJZCgicmVzdWx0IikuaW5uZXJUZXh0ID0gcmVzdWx0OworICAgIDwvc2NyaXB0Pgor
PC9ib2R5PgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvcGxhdGZvcm0vZ3RrL1NraXBwZWQgYi9M
YXlvdXRUZXN0cy9wbGF0Zm9ybS9ndGsvU2tpcHBlZAppbmRleCAzODY0Y2JlLi4xNGVlMGVmIDEw
MDY0NAotLS0gYS9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9ndGsvU2tpcHBlZAorKysgYi9MYXlvdXRU
ZXN0cy9wbGF0Zm9ybS9ndGsvU2tpcHBlZApAQCAtNTg4OCwzICs1ODg4LDYgQEAgaHR0cC90ZXN0
cy9sb2FkaW5nL3N0YXRlLW9iamVjdC1zZWN1cml0eS1leGNlcHRpb24uaHRtbAogCiAjIE5vIFdp
ZGdldHMgMS4wIHN1cHBvcnQKIGZhc3QvbWVkaWEvbWVkaWEtZmVhdHVyZS13Z3Qtdmlldy1tb2Rl
Lmh0bWwKKworIyBOZWVkIHRvIGFkZCBmdW5jdGlvbmFsaXR5IHRvIER1bXBSZW5kZXJUcmVlIHRv
IGhhbmRsZSBzY3JvbGxiYXIgcG9saWNlIGNoYW5nZXMKK2Zhc3Qvb3ZlcmZsb3cvc2Nyb2xsYmFy
LXJlc3RvcmVkLWFuZC10aGVuLWxvY2tlZC5odG1sCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9w
bGF0Zm9ybS9tYWMvU2tpcHBlZCBiL0xheW91dFRlc3RzL3BsYXRmb3JtL21hYy9Ta2lwcGVkCmlu
ZGV4IDdhNmE3ZjcuLjZiOTNhZDYgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL3BsYXRmb3JtL21h
Yy9Ta2lwcGVkCisrKyBiL0xheW91dFRlc3RzL3BsYXRmb3JtL21hYy9Ta2lwcGVkCkBAIC0xNDks
MyArMTQ5LDYgQEAgZmFzdC9tZWRpYS9tZWRpYS1mZWF0dXJlLXdndC12aWV3LW1vZGUuaHRtbAog
IyBUZXN0IGlzIGZsYWt5IGFuZCB0aHVzIG5vdCB1c2VmdWwgdW50aWwgZml4ZWQuCiAjIGh0dHBz
Oi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0zNjY0MgogZmFzdC9yZXBsYWNlZC9i
b3JkZXItcmFkaXVzLWNsaXAuaHRtbAorCisjIE5lZWQgdG8gYWRkIGZ1bmN0aW9uYWxpdHkgdG8g
RHVtcFJlbmRlclRyZWUgdG8gaGFuZGxlIHNjcm9sbGJhciBwb2xpY2UgY2hhbmdlcworZmFzdC9v
dmVyZmxvdy9zY3JvbGxiYXItcmVzdG9yZWQtYW5kLXRoZW4tbG9ja2VkLmh0bWwKZGlmZiAtLWdp
dCBhL0xheW91dFRlc3RzL3BsYXRmb3JtL3dpbi9Ta2lwcGVkIGIvTGF5b3V0VGVzdHMvcGxhdGZv
cm0vd2luL1NraXBwZWQKaW5kZXggMWIyNjcwZi4uY2M0OGM2NSAxMDA2NDQKLS0tIGEvTGF5b3V0
VGVzdHMvcGxhdGZvcm0vd2luL1NraXBwZWQKKysrIGIvTGF5b3V0VGVzdHMvcGxhdGZvcm0vd2lu
L1NraXBwZWQKQEAgLTgxOCwzICs4MTgsNiBAQCBmYXN0L21lZGlhL21lZGlhLWZlYXR1cmUtd2d0
LXZpZXctbW9kZS5odG1sCiAKICMgTmVlZCBleHBlY3RhdGlvbnMuIFNlZSBodHRwczovL2J1Z3Mu
d2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MzY0NjEKIGZhc3QvcmVwYWludC9vdmVyZmxvdy1z
Y3JvbGwtYm9keS1hcHBlYXIuaHRtbAorCisjIE5lZWQgdG8gYWRkIGZ1bmN0aW9uYWxpdHkgdG8g
RHVtcFJlbmRlclRyZWUgdG8gaGFuZGxlIHNjcm9sbGJhciBwb2xpY2UgY2hhbmdlcworZmFzdC9v
dmVyZmxvdy9zY3JvbGxiYXItcmVzdG9yZWQtYW5kLXRoZW4tbG9ja2VkLmh0bWwKZGlmZiAtLWdp
dCBhL1dlYkNvcmUvQ2hhbmdlTG9nIGIvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggNmJiZGFmZC4u
M2I4MGU4NCAxMDA2NDQKLS0tIGEvV2ViQ29yZS9DaGFuZ2VMb2cKKysrIGIvV2ViQ29yZS9DaGFu
Z2VMb2cKQEAgLTEsMyArMSwzOSBAQAorMjAxMC0wNC0wMSAgQW50b25pbyBHb21lcyAgPHRvbmlr
aXRvb0B3ZWJraXQub3JnPgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgor
CisgICAgICAgIFtRdF0gUkVHUkVTU0lPTjoocjUwNjY1KSBRV2ViRnJhbWU6OnNldFNjcm9sbEJh
clBvbGljeShRdDo6VmVydGljYWwsUXQ6OlNjcm9sbEJhckFsd2F5c09mZikgaGFzIG5vIGVmZmVj
dC4KKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTI5NDMx
CisKKyAgICAgICAgVGVzdDogZmFzdC9vdmVyZmxvdy9zY3JvbGxiYXItcmVzdG9yZWQtYW5kLXRo
ZW4tbG9ja2VkLmh0bWwKKworICAgICAgICBQYXRjaCBpbnRyb2R1Y2VzIGEgbG9jayBzY3JvbGxi
YXJzIGNvbmNlcHQgdG8gU2Nyb2xsVmlldywgYXMgaW4gV2ViRHluYW1pY1Njcm9sbEJhcnNWaWV3
Lm1tL2gKKyAgICAgICAgb24gV2ViS2l0L21hYy4gSXQgaXMgbmVlZGVkIGJlY2F1c2UgaW4gUXRX
ZWJLaXQsIHdlIGhhdmUgQXBpIGZvciBzZXR0aW5nIGJvdGggdmVydGljYWwgYW5kCisgICAgICAg
IGhvcml6b250YWwgc2Nyb2xsYmFycyBvbi9vZmYvYXV0by4gV2hlbiBpdCBpcyBzZXQgdG8gb2Zm
LCBmb3IgZXhhbXBsZSwgaXQgc2hvdWxkIHJlbWFpbgorICAgICAgICBhcyBzdWNoLCB1bmxlc3Mg
dW5zZXQuCisKKyAgICAgICAgRm9yIHRoZSBsb2NraW5nIGNvbmVjcHQsIG9uZSBhZGRpdGlvbmFs
ICdsb2NrJyBvcHRpb25hbCBwYXJhbWV0ZXIgd2FzIGFkZGVkIHRvIFNjcm9sbFZpZXcncworICAg
ICAgICBzZXRIb3Jpem9udGFsU2Nyb2xsYmFyTW9kZSBhbmQgc2V0VmVydGljYWxTY3JvbGxiYXJN
b2RlLiBBcyBpdCBpcyBvcHRpb25hbCwgYWxsIHByZXZpb3VzIGNvZGUKKyAgICAgICAgY2FsbGlu
ZyB0aGVtIGRvIG5vdCBuZWVkIG1vZGlmaWNhdGlvbi4gc2V0U2Nyb2xsYmFyTW9kZXMncyBzaWdu
YXR1cmUgcmVtYWlucyBhcyBpcywgYnV0IGJvZHkKKyAgICAgICAgaG9ub3IgdGhlIGN1cnJlbnQg
bG9jayBzdGF0ZS4KKworICAgICAgICBUd28gb3B0aW9uYWwgcGFyYW1ldGVycyB3ZXJlIGFsc28g
YWRkZWQgdG8gRnJhbWUncyBjcmVhdGVWaWV3IG1ldGhvZCwgZm9yIGhvcml6b250YWwgYW5kIHZl
cnRpY2FsCisgICAgICAgIGxvY2sgc3RhdGUgcGVyc2lzdGVuY2UgY3Jvc3MgcGFnZSBsb2Fkcy4K
KworICAgICAgICAqIHBhZ2UvRnJhbWUuY3BwOgorICAgICAgICAoV2ViQ29yZTo6RnJhbWU6OmNy
ZWF0ZVZpZXcpOgorICAgICAgICAqIHBsYXRmb3JtL1Njcm9sbFZpZXcuY3BwOgorICAgICAgICAo
V2ViQ29yZTo6U2Nyb2xsVmlldzo6U2Nyb2xsVmlldyk6CisgICAgICAgIChXZWJDb3JlOjpTY3Jv
bGxWaWV3OjpzZXRTY3JvbGxiYXJNb2Rlcyk6CisgICAgICAgIChXZWJDb3JlOjpTY3JvbGxWaWV3
OjpzZXRIb3Jpem9udGFsU2Nyb2xsYmFyTW9kZSk6CisgICAgICAgIChXZWJDb3JlOjpTY3JvbGxW
aWV3OjpzZXRWZXJ0aWNhbFNjcm9sbGJhck1vZGUpOgorICAgICAgICAqIHBsYXRmb3JtL1Njcm9s
bFZpZXcuaDoKKyAgICAgICAgKFdlYkNvcmU6OlNjcm9sbFZpZXc6OnNldEhvcml6b250YWxTY3Jv
bGxiYXJMb2NrKToKKyAgICAgICAgKFdlYkNvcmU6OlNjcm9sbFZpZXc6OmlzSG9yaXpvbnRhbFNj
cm9sbGJhckxvY2tlZCk6CisgICAgICAgIChXZWJDb3JlOjpTY3JvbGxWaWV3OjpzZXRWZXJ0aWNh
bFNjcm9sbGJhckxvY2spOgorICAgICAgICAoV2ViQ29yZTo6U2Nyb2xsVmlldzo6aXNWZXJ0aWNh
bFNjcm9sbGJhckxvY2tlZCk6CisgICAgICAgIChXZWJDb3JlOjpTY3JvbGxWaWV3OjpzZXRTY3Jv
bGxpbmdNb2Rlc0xvY2tlZCk6CisKIDIwMTAtMDQtMDIgIEtlbnQgVGFtdXJhICA8dGtlbnRAY2hy
b21pdW0ub3JnPgogCiAgICAgICAgIFJldmlld2VkIGJ5IERhcmluIEFkbGVyLgpkaWZmIC0tZ2l0
IGEvV2ViQ29yZS9wYWdlL0ZyYW1lLmNwcCBiL1dlYkNvcmUvcGFnZS9GcmFtZS5jcHAKaW5kZXgg
MDRkN2E5ZS4uZDgzYTc3ZSAxMDA2NDQKLS0tIGEvV2ViQ29yZS9wYWdlL0ZyYW1lLmNwcAorKysg
Yi9XZWJDb3JlL3BhZ2UvRnJhbWUuY3BwCkBAIC0xNzc1LDcgKzE3NzUsOCBAQCBEb2N1bWVudCog
RnJhbWU6OmRvY3VtZW50QXRQb2ludChjb25zdCBJbnRQb2ludCYgcG9pbnQpCiB2b2lkIEZyYW1l
OjpjcmVhdGVWaWV3KGNvbnN0IEludFNpemUmIHZpZXdwb3J0U2l6ZSwKICAgICAgICAgICAgICAg
ICAgICAgICAgY29uc3QgQ29sb3ImIGJhY2tncm91bmRDb2xvciwgYm9vbCB0cmFuc3BhcmVudCwK
ICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgSW50U2l6ZSYgZml4ZWRMYXlvdXRTaXplLCBi
b29sIHVzZUZpeGVkTGF5b3V0LAotICAgICAgICAgICAgICAgICAgICAgICBTY3JvbGxiYXJNb2Rl
IGhvcml6b250YWxTY3JvbGxiYXJNb2RlLCBTY3JvbGxiYXJNb2RlIHZlcnRpY2FsU2Nyb2xsYmFy
TW9kZSkKKyAgICAgICAgICAgICAgICAgICAgICAgU2Nyb2xsYmFyTW9kZSBob3Jpem9udGFsU2Ny
b2xsYmFyTW9kZSwgYm9vbCBob3Jpem9udGFsTG9jaywKKyAgICAgICAgICAgICAgICAgICAgICAg
U2Nyb2xsYmFyTW9kZSB2ZXJ0aWNhbFNjcm9sbGJhck1vZGUsIGJvb2wgdmVydGljYWxMb2NrKQog
ewogICAgIEFTU0VSVCh0aGlzKTsKICAgICBBU1NFUlQobV9wYWdlKTsKQEAgLTE3OTUsNyArMTc5
Niw4IEBAIHZvaWQgRnJhbWU6OmNyZWF0ZVZpZXcoY29uc3QgSW50U2l6ZSYgdmlld3BvcnRTaXpl
LAogICAgIH0gZWxzZQogICAgICAgICBmcmFtZVZpZXcgPSBGcmFtZVZpZXc6OmNyZWF0ZSh0aGlz
KTsKIAotICAgIGZyYW1lVmlldy0+c2V0U2Nyb2xsYmFyTW9kZXMoaG9yaXpvbnRhbFNjcm9sbGJh
ck1vZGUsIHZlcnRpY2FsU2Nyb2xsYmFyTW9kZSk7CisgICAgZnJhbWVWaWV3LT5zZXRIb3Jpem9u
dGFsU2Nyb2xsYmFyTW9kZShob3Jpem9udGFsU2Nyb2xsYmFyTW9kZSwgaG9yaXpvbnRhbExvY2sg
LyogbG9jayAqLyk7CisgICAgZnJhbWVWaWV3LT5zZXRWZXJ0aWNhbFNjcm9sbGJhck1vZGUodmVy
dGljYWxTY3JvbGxiYXJNb2RlLCB2ZXJ0aWNhbExvY2sgLyogbG9jayAqLyk7CiAKICAgICBzZXRW
aWV3KGZyYW1lVmlldyk7CiAKZGlmZiAtLWdpdCBhL1dlYkNvcmUvcGFnZS9GcmFtZS5oIGIvV2Vi
Q29yZS9wYWdlL0ZyYW1lLmgKaW5kZXggYjYzMGJlZi4uNGE3Y2RhZiAxMDA2NDQKLS0tIGEvV2Vi
Q29yZS9wYWdlL0ZyYW1lLmgKKysrIGIvV2ViQ29yZS9wYWdlL0ZyYW1lLmgKQEAgLTExOSw3ICsx
MTksOCBAQCBuYW1lc3BhY2UgV2ViQ29yZSB7CiAgICAgICAgIHZvaWQgc2V0RXhjbHVkZUZyb21U
ZXh0U2VhcmNoKGJvb2wpOwogCiAgICAgICAgIHZvaWQgY3JlYXRlVmlldyhjb25zdCBJbnRTaXpl
JiwgY29uc3QgQ29sb3ImLCBib29sLCBjb25zdCBJbnRTaXplICYsIGJvb2wsCi0gICAgICAgICAg
ICAgICAgICAgICAgICBTY3JvbGxiYXJNb2RlID0gU2Nyb2xsYmFyQXV0bywgU2Nyb2xsYmFyTW9k
ZSA9IFNjcm9sbGJhckF1dG8pOworICAgICAgICAgICAgICAgICAgICAgICAgU2Nyb2xsYmFyTW9k
ZSA9IFNjcm9sbGJhckF1dG8sIGJvb2wgaG9yaXpvbnRhbExvY2sgPSBmYWxzZSwKKyAgICAgICAg
ICAgICAgICAgICAgICAgIFNjcm9sbGJhck1vZGUgPSBTY3JvbGxiYXJBdXRvLCBib29sIHZlcnRp
Y2FsTG9jayA9IGZhbHNlKTsKIAogICAgICAgICB2b2lkIGluamVjdFVzZXJTY3JpcHRzKFVzZXJT
Y3JpcHRJbmplY3Rpb25UaW1lKTsKICAgICAgICAgCmRpZmYgLS1naXQgYS9XZWJDb3JlL3BsYXRm
b3JtL1Njcm9sbFZpZXcuY3BwIGIvV2ViQ29yZS9wbGF0Zm9ybS9TY3JvbGxWaWV3LmNwcAppbmRl
eCAyMTMxYzkxLi5hZDU3N2FiIDEwMDY0NAotLS0gYS9XZWJDb3JlL3BsYXRmb3JtL1Njcm9sbFZp
ZXcuY3BwCisrKyBiL1dlYkNvcmUvcGxhdGZvcm0vU2Nyb2xsVmlldy5jcHAKQEAgLTQyLDYgKzQy
LDggQEAgbmFtZXNwYWNlIFdlYkNvcmUgewogU2Nyb2xsVmlldzo6U2Nyb2xsVmlldygpCiAgICAg
OiBtX2hvcml6b250YWxTY3JvbGxiYXJNb2RlKFNjcm9sbGJhckF1dG8pCiAgICAgLCBtX3ZlcnRp
Y2FsU2Nyb2xsYmFyTW9kZShTY3JvbGxiYXJBdXRvKQorICAgICwgbV9ob3Jpem9udGFsU2Nyb2xs
YmFyTG9jayhmYWxzZSkKKyAgICAsIG1fdmVydGljYWxTY3JvbGxiYXJMb2NrKGZhbHNlKQogICAg
ICwgbV9wcm9oaWJpdHNTY3JvbGxpbmcoZmFsc2UpCiAgICAgLCBtX2NhbkJsaXRPblNjcm9sbCh0
cnVlKQogICAgICwgbV9zY3JvbGxiYXJzQXZvaWRpbmdSZXNpemVyKDApCkBAIC0xMTcsMTAgKzEx
OSwyMSBAQCBQYXNzUmVmUHRyPFNjcm9sbGJhcj4gU2Nyb2xsVmlldzo6Y3JlYXRlU2Nyb2xsYmFy
KFNjcm9sbGJhck9yaWVudGF0aW9uIG9yaWVudGF0aQogCiB2b2lkIFNjcm9sbFZpZXc6OnNldFNj
cm9sbGJhck1vZGVzKFNjcm9sbGJhck1vZGUgaG9yaXpvbnRhbE1vZGUsIFNjcm9sbGJhck1vZGUg
dmVydGljYWxNb2RlKQogewotICAgIGlmIChob3Jpem9udGFsTW9kZSA9PSBob3Jpem9udGFsU2Ny
b2xsYmFyTW9kZSgpICYmIHZlcnRpY2FsTW9kZSA9PSB2ZXJ0aWNhbFNjcm9sbGJhck1vZGUoKSkK
KyAgICBib29sIG5lZWRzVXBkYXRlID0gZmFsc2U7CisKKyAgICBpZiAoaG9yaXpvbnRhbE1vZGUg
IT0gaG9yaXpvbnRhbFNjcm9sbGJhck1vZGUoKSAmJiAhbV9ob3Jpem9udGFsU2Nyb2xsYmFyTG9j
aykgeworICAgICAgICBtX2hvcml6b250YWxTY3JvbGxiYXJNb2RlID0gaG9yaXpvbnRhbE1vZGU7
CisgICAgICAgIG5lZWRzVXBkYXRlID0gdHJ1ZTsKKyAgICB9CisKKyAgICBpZiAodmVydGljYWxN
b2RlICE9IHZlcnRpY2FsU2Nyb2xsYmFyTW9kZSgpICYmICFtX3ZlcnRpY2FsU2Nyb2xsYmFyTG9j
aykgeworICAgICAgICBtX3ZlcnRpY2FsU2Nyb2xsYmFyTW9kZSA9IHZlcnRpY2FsTW9kZTsKKyAg
ICAgICAgbmVlZHNVcGRhdGUgPSB0cnVlOworICAgIH0KKworICAgIGlmICghbmVlZHNVcGRhdGUp
CiAgICAgICAgIHJldHVybjsKLSAgICBtX2hvcml6b250YWxTY3JvbGxiYXJNb2RlID0gaG9yaXpv
bnRhbE1vZGU7Ci0gICAgbV92ZXJ0aWNhbFNjcm9sbGJhck1vZGUgPSB2ZXJ0aWNhbE1vZGU7CisK
ICAgICBpZiAocGxhdGZvcm1XaWRnZXQoKSkKICAgICAgICAgcGxhdGZvcm1TZXRTY3JvbGxiYXJN
b2RlcygpOwogICAgIGVsc2UKQEAgLTEzOCw2ICsxNTEsMzYgQEAgdm9pZCBTY3JvbGxWaWV3Ojpz
Y3JvbGxiYXJNb2RlcyhTY3JvbGxiYXJNb2RlJiBob3Jpem9udGFsTW9kZSwgU2Nyb2xsYmFyTW9k
ZSYgdmUKICAgICB2ZXJ0aWNhbE1vZGUgPSBtX3ZlcnRpY2FsU2Nyb2xsYmFyTW9kZTsKIH0KIAor
dm9pZCBTY3JvbGxWaWV3OjpzZXRIb3Jpem9udGFsU2Nyb2xsYmFyTW9kZShTY3JvbGxiYXJNb2Rl
IG1vZGUsIGJvb2wgbG9jaykKK3sKKyAgICBpZiAobW9kZSAhPSBob3Jpem9udGFsU2Nyb2xsYmFy
TW9kZSgpICYmICFtX2hvcml6b250YWxTY3JvbGxiYXJMb2NrKSB7CisgICAgICAgIG1faG9yaXpv
bnRhbFNjcm9sbGJhck1vZGUgPSBtb2RlOworCisgICAgICAgIGlmIChsb2NrKQorICAgICAgICAg
ICAgbV9ob3Jpem9udGFsU2Nyb2xsYmFyTG9jayA9IGxvY2s7CisKKyAgICAgICAgaWYgKHBsYXRm
b3JtV2lkZ2V0KCkpCisgICAgICAgICAgICBwbGF0Zm9ybVNldFNjcm9sbGJhck1vZGVzKCk7Cisg
ICAgICAgIGVsc2UKKyAgICAgICAgICAgIHVwZGF0ZVNjcm9sbGJhcnMoc2Nyb2xsT2Zmc2V0KCkp
OworICAgIH0KK30KKwordm9pZCBTY3JvbGxWaWV3OjpzZXRWZXJ0aWNhbFNjcm9sbGJhck1vZGUo
U2Nyb2xsYmFyTW9kZSBtb2RlLCBib29sIGxvY2spCit7CisgICAgaWYgKG1vZGUgIT0gdmVydGlj
YWxTY3JvbGxiYXJNb2RlKCkgJiYgIW1fdmVydGljYWxTY3JvbGxiYXJMb2NrKSB7CisgICAgICAg
IG1fdmVydGljYWxTY3JvbGxiYXJNb2RlID0gbW9kZTsKKworICAgICAgICBpZiAobG9jaykKKyAg
ICAgICAgICAgIG1fdmVydGljYWxTY3JvbGxiYXJMb2NrID0gbG9jazsKKworICAgICAgICBpZiAo
cGxhdGZvcm1XaWRnZXQoKSkKKyAgICAgICAgICAgIHBsYXRmb3JtU2V0U2Nyb2xsYmFyTW9kZXMo
KTsKKyAgICAgICAgZWxzZQorICAgICAgICAgICAgdXBkYXRlU2Nyb2xsYmFycyhzY3JvbGxPZmZz
ZXQoKSk7CisgICAgfQorfQorCiB2b2lkIFNjcm9sbFZpZXc6OnNldENhbkhhdmVTY3JvbGxiYXJz
KGJvb2wgY2FuU2Nyb2xsKQogewogICAgIFNjcm9sbGJhck1vZGUgbmV3SG9yaXpvbnRhbE1vZGU7
CmRpZmYgLS1naXQgYS9XZWJDb3JlL3BsYXRmb3JtL1Njcm9sbFZpZXcuaCBiL1dlYkNvcmUvcGxh
dGZvcm0vU2Nyb2xsVmlldy5oCmluZGV4IGMzNTZhNjAuLmI2YjMzZDYgMTAwNjQ0Ci0tLSBhL1dl
YkNvcmUvcGxhdGZvcm0vU2Nyb2xsVmlldy5oCisrKyBiL1dlYkNvcmUvcGxhdGZvcm0vU2Nyb2xs
Vmlldy5oCkBAIC04NCwxMSArODQsMjEgQEAgcHVibGljOgogICAgIC8vIE5vdGUgdGhhdCBmb3Ig
cGxhdGZvcm1zIHdpdGggbmF0aXZlIHdpZGdldHMsIHRoZXNlIG1vZGVzIGFyZSBjb25zaWRlcmVk
IGFkdmlzb3J5LiAgSW4gb3RoZXIgd29yZHMgdGhlIHVuZGVybHlpbmcgbmF0aXZlCiAgICAgLy8g
d2lkZ2V0IG1heSBjaG9vc2Ugbm90IHRvIGhvbm9yIHRoZSByZXF1ZXN0ZWQgbW9kZXMuCiAgICAg
dm9pZCBzZXRTY3JvbGxiYXJNb2RlcyhTY3JvbGxiYXJNb2RlIGhvcml6b250YWxNb2RlLCBTY3Jv
bGxiYXJNb2RlIHZlcnRpY2FsTW9kZSk7Ci0gICAgdm9pZCBzZXRIb3Jpem9udGFsU2Nyb2xsYmFy
TW9kZShTY3JvbGxiYXJNb2RlIG1vZGUpIHsgc2V0U2Nyb2xsYmFyTW9kZXMobW9kZSwgdmVydGlj
YWxTY3JvbGxiYXJNb2RlKCkpOyB9Ci0gICAgdm9pZCBzZXRWZXJ0aWNhbFNjcm9sbGJhck1vZGUo
U2Nyb2xsYmFyTW9kZSBtb2RlKSB7IHNldFNjcm9sbGJhck1vZGVzKGhvcml6b250YWxTY3JvbGxi
YXJNb2RlKCksIG1vZGUpOyB9CiAgICAgdm9pZCBzY3JvbGxiYXJNb2RlcyhTY3JvbGxiYXJNb2Rl
JiBob3Jpem9udGFsTW9kZSwgU2Nyb2xsYmFyTW9kZSYgdmVydGljYWxNb2RlKSBjb25zdDsKKwor
ICAgIHZvaWQgc2V0SG9yaXpvbnRhbFNjcm9sbGJhck1vZGUoU2Nyb2xsYmFyTW9kZSBtb2RlLCBi
b29sIGFuZExvY2sgPSBmYWxzZSk7CiAgICAgU2Nyb2xsYmFyTW9kZSBob3Jpem9udGFsU2Nyb2xs
YmFyTW9kZSgpIGNvbnN0IHsgU2Nyb2xsYmFyTW9kZSBob3Jpem9udGFsLCB2ZXJ0aWNhbDsgc2Ny
b2xsYmFyTW9kZXMoaG9yaXpvbnRhbCwgdmVydGljYWwpOyByZXR1cm4gaG9yaXpvbnRhbDsgfQor
CisgICAgdm9pZCBzZXRWZXJ0aWNhbFNjcm9sbGJhck1vZGUoU2Nyb2xsYmFyTW9kZSBtb2RlLCBi
b29sIGFuZExvY2sgPSBmYWxzZSk7CiAgICAgU2Nyb2xsYmFyTW9kZSB2ZXJ0aWNhbFNjcm9sbGJh
ck1vZGUoKSBjb25zdCB7IFNjcm9sbGJhck1vZGUgaG9yaXpvbnRhbCwgdmVydGljYWw7IHNjcm9s
bGJhck1vZGVzKGhvcml6b250YWwsIHZlcnRpY2FsKTsgcmV0dXJuIHZlcnRpY2FsOyB9CisKKyAg
ICB2b2lkIHNldEhvcml6b250YWxTY3JvbGxiYXJMb2NrKGJvb2wgbG9jayA9IHRydWUpIHsgbV9o
b3Jpem9udGFsU2Nyb2xsYmFyTG9jayA9IGxvY2s7IH0KKyAgICBib29sIGlzSG9yaXpvbnRhbFNj
cm9sbGJhckxvY2tlZCgpIGNvbnN0IHsgcmV0dXJuIG1faG9yaXpvbnRhbFNjcm9sbGJhckxvY2s7
IH0KKyAgICB2b2lkIHNldFZlcnRpY2FsU2Nyb2xsYmFyTG9jayhib29sIGxvY2sgPSB0cnVlKSB7
IG1fdmVydGljYWxTY3JvbGxiYXJMb2NrID0gbG9jazsgfQorICAgIGJvb2wgaXNWZXJ0aWNhbFNj
cm9sbGJhckxvY2tlZCgpIGNvbnN0IHsgcmV0dXJuIG1fdmVydGljYWxTY3JvbGxiYXJMb2NrOyB9
CisKKyAgICB2b2lkIHNldFNjcm9sbGluZ01vZGVzTG9ja2VkKGJvb2wgbG9jayA9IHRydWUpIHsg
bV9ob3Jpem9udGFsU2Nyb2xsYmFyTG9jayA9IG1fdmVydGljYWxTY3JvbGxiYXJMb2NrID0gbG9j
azsgfQorCiAgICAgdmlydHVhbCB2b2lkIHNldENhbkhhdmVTY3JvbGxiYXJzKGJvb2wpOwogICAg
IGJvb2wgY2FuSGF2ZVNjcm9sbGJhcnMoKSBjb25zdCB7IHJldHVybiBob3Jpem9udGFsU2Nyb2xs
YmFyTW9kZSgpICE9IFNjcm9sbGJhckFsd2F5c09mZiB8fCB2ZXJ0aWNhbFNjcm9sbGJhck1vZGUo
KSAhPSBTY3JvbGxiYXJBbHdheXNPZmY7IH0KIApAQCAtMjYwLDYgKzI3MCwxMCBAQCBwcml2YXRl
OgogICAgIFJlZlB0cjxTY3JvbGxiYXI+IG1fdmVydGljYWxTY3JvbGxiYXI7CiAgICAgU2Nyb2xs
YmFyTW9kZSBtX2hvcml6b250YWxTY3JvbGxiYXJNb2RlOwogICAgIFNjcm9sbGJhck1vZGUgbV92
ZXJ0aWNhbFNjcm9sbGJhck1vZGU7CisKKyAgICBib29sIG1faG9yaXpvbnRhbFNjcm9sbGJhckxv
Y2s7CisgICAgYm9vbCBtX3ZlcnRpY2FsU2Nyb2xsYmFyTG9jazsKKwogICAgIGJvb2wgbV9wcm9o
aWJpdHNTY3JvbGxpbmc7CiAKICAgICBIYXNoU2V0PFJlZlB0cjxXaWRnZXQ+ID4gbV9jaGlsZHJl
bjsKZGlmZiAtLWdpdCBhL1dlYktpdC9xdC9BcGkvcXdlYmZyYW1lLmNwcCBiL1dlYktpdC9xdC9B
cGkvcXdlYmZyYW1lLmNwcAppbmRleCAzYmJjZmUyLi5lNWMyNzY4IDEwMDY0NAotLS0gYS9XZWJL
aXQvcXQvQXBpL3F3ZWJmcmFtZS5jcHAKKysrIGIvV2ViS2l0L3F0L0FwaS9xd2ViZnJhbWUuY3Bw
CkBAIC0xMDUwLDEzICsxMDUwLDEzIEBAIHZvaWQgUVdlYkZyYW1lOjpzZXRTY3JvbGxCYXJQb2xp
Y3koUXQ6Ok9yaWVudGF0aW9uIG9yaWVudGF0aW9uLCBRdDo6U2Nyb2xsQmFyUG9sCiAgICAgaWYg
KG9yaWVudGF0aW9uID09IFF0OjpIb3Jpem9udGFsKSB7CiAgICAgICAgIGQtPmhvcml6b250YWxT
Y3JvbGxCYXJQb2xpY3kgPSBwb2xpY3k7CiAgICAgICAgIGlmIChkLT5mcmFtZS0+dmlldygpKSB7
Ci0gICAgICAgICAgICBkLT5mcmFtZS0+dmlldygpLT5zZXRIb3Jpem9udGFsU2Nyb2xsYmFyTW9k
ZSgoU2Nyb2xsYmFyTW9kZSlwb2xpY3kpOworICAgICAgICAgICAgZC0+ZnJhbWUtPnZpZXcoKS0+
c2V0SG9yaXpvbnRhbFNjcm9sbGJhck1vZGUoKFNjcm9sbGJhck1vZGUpcG9saWN5LCBwb2xpY3kg
IT0gUXQ6OlNjcm9sbEJhckFzTmVlZGVkIC8qIGxvY2sgKi8pOwogICAgICAgICAgICAgZC0+ZnJh
bWUtPnZpZXcoKS0+dXBkYXRlQ2FuSGF2ZVNjcm9sbGJhcnMoKTsKICAgICAgICAgfQogICAgIH0g
ZWxzZSB7CiAgICAgICAgIGQtPnZlcnRpY2FsU2Nyb2xsQmFyUG9saWN5ID0gcG9saWN5OwogICAg
ICAgICBpZiAoZC0+ZnJhbWUtPnZpZXcoKSkgewotICAgICAgICAgICAgZC0+ZnJhbWUtPnZpZXco
KS0+c2V0VmVydGljYWxTY3JvbGxiYXJNb2RlKChTY3JvbGxiYXJNb2RlKXBvbGljeSk7CisgICAg
ICAgICAgICBkLT5mcmFtZS0+dmlldygpLT5zZXRWZXJ0aWNhbFNjcm9sbGJhck1vZGUoKFNjcm9s
bGJhck1vZGUpcG9saWN5LCBwb2xpY3kgIT0gUXQ6OlNjcm9sbEJhckFzTmVlZGVkIC8qIGxvY2sg
Ki8pOwogICAgICAgICAgICAgZC0+ZnJhbWUtPnZpZXcoKS0+dXBkYXRlQ2FuSGF2ZVNjcm9sbGJh
cnMoKTsKICAgICAgICAgfQogICAgIH0KZGlmZiAtLWdpdCBhL1dlYktpdC9xdC9DaGFuZ2VMb2cg
Yi9XZWJLaXQvcXQvQ2hhbmdlTG9nCmluZGV4IGQ5MGNhNDQuLjkyODhlYjkgMTAwNjQ0Ci0tLSBh
L1dlYktpdC9xdC9DaGFuZ2VMb2cKKysrIGIvV2ViS2l0L3F0L0NoYW5nZUxvZwpAQCAtMSwzICsx
LDIwIEBACisyMDEwLTA0LTAxICBBbnRvbmlvIEdvbWVzICA8dG9uaWtpdG9vQHdlYmtpdC5vcmc+
CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgW1F0XSBS
RUdSRVNTSU9OOihyNTA2NjUpIFFXZWJGcmFtZTo6c2V0U2Nyb2xsQmFyUG9saWN5KFF0OjpWZXJ0
aWNhbCxRdDo6U2Nyb2xsQmFyQWx3YXlzT2ZmKSBoYXMgbm8gZWZmZWN0LgorICAgICAgICBodHRw
czovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9Mjk0MzEKKworICAgICAgICBNYWtl
IHVzZSBvZiB0aGUgbmV3IGxvY2sgcGFyYW1ldGVyIG9mIHNldHtWZXJ0aWNhbCxIb3Jpem9udGFs
fVNjcm9sbGJhck1vZGUuCisKKyAgICAgICAgQWx3YXlzIGFkZGVkIGEgcXQgYXV0byB0ZXN0IGZv
ciBzZXQgc2Nyb2xsYmFyIHBvbGljeSBmZWF0dXJlLgorCisgICAgICAgICogQXBpL3F3ZWJmcmFt
ZS5jcHA6CisgICAgICAgIChRV2ViRnJhbWU6OnNldFNjcm9sbEJhclBvbGljeSk6CisgICAgICAg
ICogdGVzdHMvcXdlYmZyYW1lL3RzdF9xd2ViZnJhbWUuY3BwOgorICAgICAgICAqIFdlYkNvcmVT
dXBwb3J0L0ZyYW1lTG9hZGVyQ2xpZW50UXQuY3BwOgorICAgICAgICAoRnJhbWVMb2FkZXJDbGll
bnRRdDo6dHJhbnNpdGlvblRvQ29tbWl0dGVkRm9yTmV3UGFnZSk6CisKIDIwMTAtMDMtMzAgIEFu
dG9uaW8gR29tZXMgIDx0b25pa2l0b29Ad2Via2l0Lm9yZz4KIAogICAgICAgICBSZXZpZXdlZCBi
eSBBZGFtIFRyZWF0LgpkaWZmIC0tZ2l0IGEvV2ViS2l0L3F0L1dlYkNvcmVTdXBwb3J0L0ZyYW1l
TG9hZGVyQ2xpZW50UXQuY3BwIGIvV2ViS2l0L3F0L1dlYkNvcmVTdXBwb3J0L0ZyYW1lTG9hZGVy
Q2xpZW50UXQuY3BwCmluZGV4IGM1YzU3MzkuLjU1YWY0MGQgMTAwNjQ0Ci0tLSBhL1dlYktpdC9x
dC9XZWJDb3JlU3VwcG9ydC9GcmFtZUxvYWRlckNsaWVudFF0LmNwcAorKysgYi9XZWJLaXQvcXQv
V2ViQ29yZVN1cHBvcnQvRnJhbWVMb2FkZXJDbGllbnRRdC5jcHAKQEAgLTIxNSwxMiArMjE1LDE3
IEBAIHZvaWQgRnJhbWVMb2FkZXJDbGllbnRRdDo6dHJhbnNpdGlvblRvQ29tbWl0dGVkRm9yTmV3
UGFnZSgpCiAgICAgUVdlYlBhZ2UqIHBhZ2UgPSBtX3dlYkZyYW1lLT5wYWdlKCk7CiAgICAgY29u
c3QgUVNpemUgcHJlZmVycmVkTGF5b3V0U2l6ZSA9IHBhZ2UtPnByZWZlcnJlZENvbnRlbnRzU2l6
ZSgpOwogCisgICAgU2Nyb2xsYmFyTW9kZSBoU2Nyb2xsYmFyID0gKFNjcm9sbGJhck1vZGUpIG1f
d2ViRnJhbWUtPnNjcm9sbEJhclBvbGljeShRdDo6SG9yaXpvbnRhbCk7CisgICAgU2Nyb2xsYmFy
TW9kZSB2U2Nyb2xsYmFyID0gKFNjcm9sbGJhck1vZGUpIG1fd2ViRnJhbWUtPnNjcm9sbEJhclBv
bGljeShRdDo6VmVydGljYWwpOworICAgIGJvb2wgaExvY2sgPSBoU2Nyb2xsYmFyICE9IFNjcm9s
bGJhckF1dG87CisgICAgYm9vbCB2TG9jayA9IHZTY3JvbGxiYXIgIT0gU2Nyb2xsYmFyQXV0bzsK
KwogICAgIG1fZnJhbWUtPmNyZWF0ZVZpZXcobV93ZWJGcmFtZS0+cGFnZSgpLT52aWV3cG9ydFNp
emUoKSwKICAgICAgICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmRDb2xvciwgIWJhY2tncm91
bmRDb2xvci5hbHBoYSgpLAogICAgICAgICAgICAgICAgICAgICAgICAgcHJlZmVycmVkTGF5b3V0
U2l6ZS5pc1ZhbGlkKCkgPyBJbnRTaXplKHByZWZlcnJlZExheW91dFNpemUpIDogSW50U2l6ZSgp
LAogICAgICAgICAgICAgICAgICAgICAgICAgcHJlZmVycmVkTGF5b3V0U2l6ZS5pc1ZhbGlkKCks
Ci0gICAgICAgICAgICAgICAgICAgICAgICAoU2Nyb2xsYmFyTW9kZSltX3dlYkZyYW1lLT5zY3Jv
bGxCYXJQb2xpY3koUXQ6Okhvcml6b250YWwpLAotICAgICAgICAgICAgICAgICAgICAgICAgKFNj
cm9sbGJhck1vZGUpbV93ZWJGcmFtZS0+c2Nyb2xsQmFyUG9saWN5KFF0OjpWZXJ0aWNhbCkpOwor
ICAgICAgICAgICAgICAgICAgICAgICAgaFNjcm9sbGJhciwgaExvY2ssCisgICAgICAgICAgICAg
ICAgICAgICAgICB2U2Nyb2xsYmFyLCB2TG9jayk7CiB9CiAKIApkaWZmIC0tZ2l0IGEvV2ViS2l0
L3F0L3Rlc3RzL3F3ZWJmcmFtZS90c3RfcXdlYmZyYW1lLmNwcCBiL1dlYktpdC9xdC90ZXN0cy9x
d2ViZnJhbWUvdHN0X3F3ZWJmcmFtZS5jcHAKaW5kZXggMzdmN2I4OC4uYmJmNDQ3YSAxMDA2NDQK
LS0tIGEvV2ViS2l0L3F0L3Rlc3RzL3F3ZWJmcmFtZS90c3RfcXdlYmZyYW1lLmNwcAorKysgYi9X
ZWJLaXQvcXQvdGVzdHMvcXdlYmZyYW1lL3RzdF9xd2ViZnJhbWUuY3BwCkBAIC01ODUsNiArNTg1
LDcgQEAgcHJpdmF0ZSBzbG90czoKICAgICB2b2lkIHJlbmRlcigpOwogICAgIHZvaWQgc2Nyb2xs
UG9zaXRpb24oKTsKICAgICB2b2lkIHNjcm9sbFRvQW5jaG9yKCk7CisgICAgdm9pZCBzY3JvbGxi
YXJzT2ZmKCk7CiAgICAgdm9pZCBldmFsdWF0ZVdpbGxDYXVzZVJlcGFpbnQoKTsKICAgICB2b2lk
IHFPYmplY3RXcmFwcGVyV2l0aFNhbWVJZGVudGl0eSgpOwogICAgIHZvaWQgaW50cm9zcGVjdFF0
TWV0aG9kc19kYXRhKCk7CkBAIC0yNzk2LDYgKzI3OTcsMzggQEAgdm9pZCB0c3RfUVdlYkZyYW1l
OjpzY3JvbGxUb0FuY2hvcigpCiAgICAgUVZFUklGWShmcmFtZS0+c2Nyb2xsUG9zaXRpb24oKS55
KCkgIT0gMCk7CiB9CiAKKwordm9pZCB0c3RfUVdlYkZyYW1lOjpzY3JvbGxiYXJzT2ZmKCkKK3sK
KyAgICBRV2ViVmlldyB2aWV3OworICAgIFFXZWJGcmFtZSogbWFpbkZyYW1lID0gdmlldy5wYWdl
KCktPm1haW5GcmFtZSgpOworCisgICAgbWFpbkZyYW1lLT5zZXRTY3JvbGxCYXJQb2xpY3koUXQ6
OlZlcnRpY2FsLCBRdDo6U2Nyb2xsQmFyQWx3YXlzT2ZmKTsKKyAgICBtYWluRnJhbWUtPnNldFNj
cm9sbEJhclBvbGljeShRdDo6SG9yaXpvbnRhbCwgUXQ6OlNjcm9sbEJhckFsd2F5c09mZik7CisK
KyAgICBRU3RyaW5nIGh0bWwoIjxzY3JpcHQ+IiBcCisgICAgICAgICAgICAgICAgICIgICBmdW5j
dGlvbiBjaGVja1Njcm9sbGJhcigpIHsiIFwKKyAgICAgICAgICAgICAgICAgIiAgICAgICBpZiAo
aW5uZXJXaWR0aCA9PT0gZG9jdW1lbnQuZG9jdW1lbnRFbGVtZW50Lm9mZnNldFdpZHRoKSIgXAor
ICAgICAgICAgICAgICAgICAiICAgICAgICAgICBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgnc3Bh
bjEnKS5pbm5lclRleHQgPSAnU1VDQ0VTUyc7IiBcCisgICAgICAgICAgICAgICAgICIgICAgICAg
ZWxzZSIgXAorICAgICAgICAgICAgICAgICAiICAgICAgICAgICBkb2N1bWVudC5nZXRFbGVtZW50
QnlJZCgnc3BhbjEnKS5pbm5lclRleHQgPSAnRkFJTCc7IiBcCisgICAgICAgICAgICAgICAgICIg
ICB9IiBcCisgICAgICAgICAgICAgICAgICI8L3NjcmlwdD4iIFwKKyAgICAgICAgICAgICAgICAg
Ijxib2R5PiIgXAorICAgICAgICAgICAgICAgICAiICAgPGRpdiBzdHlsZT0nbWFyZ2luLXRvcDox
MDAwcHggOyBtYXJnaW4tbGVmdDoxMDAwcHgnPiIgXAorICAgICAgICAgICAgICAgICAiICAgICAg
IDxhIGlkPSdvZmZzY3JlZW4nIGhyZWY9J2EnPkVuZDwvYT4iIFwKKyAgICAgICAgICAgICAgICAg
IiAgIDwvZGl2PiIgXAorICAgICAgICAgICAgICAgICAiPHNwYW4gaWQ9J3NwYW4xJz48L3NwYW4+
IiBcCisgICAgICAgICAgICAgICAgICI8L2JvZHk+Iik7CisKKworICAgIHZpZXcuc2V0SHRtbCho
dG1sKTsKKyAgICA6OndhaXRGb3JTaWduYWwoJnZpZXcsIFNJR05BTChsb2FkRmluaXNoZWQoYm9v
bCkpKTsKKworICAgIG1haW5GcmFtZS0+ZXZhbHVhdGVKYXZhU2NyaXB0KCJjaGVja1Njcm9sbGJh
cigpOyIpOworICAgIFFDT01QQVJFKG1haW5GcmFtZS0+ZG9jdW1lbnRFbGVtZW50KCkuZmluZEFs
bCgic3BhbiIpLmF0KDApLnRvUGxhaW5UZXh0KCksIFFTdHJpbmcoIlNVQ0NFU1MiKSk7Cit9CisK
IHZvaWQgdHN0X1FXZWJGcmFtZTo6ZXZhbHVhdGVXaWxsQ2F1c2VSZXBhaW50KCkKIHsKICAgICBR
V2ViVmlldyB2aWV3OwpkaWZmIC0tZ2l0IGEvV2ViS2l0VG9vbHMvQ2hhbmdlTG9nIGIvV2ViS2l0
VG9vbHMvQ2hhbmdlTG9nCmluZGV4IDU3ZjdmNTMuLjg1ZjBmODIgMTAwNjQ0Ci0tLSBhL1dlYktp
dFRvb2xzL0NoYW5nZUxvZworKysgYi9XZWJLaXRUb29scy9DaGFuZ2VMb2cKQEAgLTEsMyArMSwx
OSBAQAorMjAxMC0wNC0wMSAgQW50b25pbyBHb21lcyAgPHRvbmlraXRvb0B3ZWJraXQub3JnPgor
CisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIFtRdF0gUkVH
UkVTU0lPTjoocjUwNjY1KSBRV2ViRnJhbWU6OnNldFNjcm9sbEJhclBvbGljeShRdDo6VmVydGlj
YWwsUXQ6OlNjcm9sbEJhckFsd2F5c09mZikgaGFzIG5vIGVmZmVjdC4KKyAgICAgICAgaHR0cHM6
Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTI5NDMxCisKKyAgICAgICAgTWFrZSBw
b3NzaWJsZSB0byBEUlQgdG8gc2V0IHNjcm9sbGJhciBwb2xpY2llcyAob24sIG9mZiBvciBhdXRv
KS4KKworICAgICAgICAqIER1bXBSZW5kZXJUcmVlL3F0L0xheW91dFRlc3RDb250cm9sbGVyUXQu
Y3BwOgorICAgICAgICAoTGF5b3V0VGVzdENvbnRyb2xsZXI6OnNldFNjcm9sbGJhclBvbGljeSk6
CisgICAgICAgICogRHVtcFJlbmRlclRyZWUvcXQvTGF5b3V0VGVzdENvbnRyb2xsZXJRdC5oOgor
ICAgICAgICAqIFF0TGF1bmNoZXIvbWFpbi5jcHA6CisgICAgICAgIChMYXVuY2hlcldpbmRvdzo6
dG9nZ2xlU2Nyb2xsYmFycyk6CisgICAgICAgIChMYXVuY2hlcldpbmRvdzo6Y3JlYXRlQ2hyb21l
KToKKwogMjAxMC0wNC0wMiAgRGF2aWQgTGV2aW4gIDxsZXZpbkBjaHJvbWl1bS5vcmc+CiAKICAg
ICAgICAgUmV2aWV3ZWQgYnkgQWRhbSBCYXJ0aC4KZGlmZiAtLWdpdCBhL1dlYktpdFRvb2xzL0R1
bXBSZW5kZXJUcmVlL3F0L0xheW91dFRlc3RDb250cm9sbGVyUXQuY3BwIGIvV2ViS2l0VG9vbHMv
RHVtcFJlbmRlclRyZWUvcXQvTGF5b3V0VGVzdENvbnRyb2xsZXJRdC5jcHAKaW5kZXggYjY0ODBj
Mi4uNjcwM2IwMSAxMDA2NDQKLS0tIGEvV2ViS2l0VG9vbHMvRHVtcFJlbmRlclRyZWUvcXQvTGF5
b3V0VGVzdENvbnRyb2xsZXJRdC5jcHAKKysrIGIvV2ViS2l0VG9vbHMvRHVtcFJlbmRlclRyZWUv
cXQvTGF5b3V0VGVzdENvbnRyb2xsZXJRdC5jcHAKQEAgLTU0MSw1ICs1NDEsMjkgQEAgYm9vbCBM
YXlvdXRUZXN0Q29udHJvbGxlcjo6Y2FsbFNob3VsZENsb3NlT25XZWJWaWV3KCkKICAgICByZXR1
cm4gZmFsc2U7CiB9CiAKK3ZvaWQgTGF5b3V0VGVzdENvbnRyb2xsZXI6OnNldFNjcm9sbGJhclBv
bGljeShjb25zdCBRU3RyaW5nJiBvcmllbnRhdGlvbiwgY29uc3QgUVN0cmluZyYgcG9saWN5KQor
eworICAgIFF0OjpPcmllbnRhdGlvbiBvOworICAgIFF0OjpTY3JvbGxCYXJQb2xpY3kgcDsKKwor
ICAgIGlmIChvcmllbnRhdGlvbiA9PSAidmVydGljYWwiKQorICAgICAgICBvID0gUXQ6OlZlcnRp
Y2FsOworICAgIGVsc2UgaWYgKG9yaWVudGF0aW9uID09ICJob3Jpem9udGFsIikKKyAgICAgICAg
byA9IFF0OjpIb3Jpem9udGFsOworICAgIGVsc2UKKyAgICAgICAgcmV0dXJuOworCisgICAgaWYg
KHBvbGljeSA9PSAib24iKQorICAgICAgICBwID0gUXQ6OlNjcm9sbEJhckFsd2F5c09uOworICAg
IGVsc2UgaWYgKHBvbGljeSA9PSAiYXV0byIpCisgICAgICAgIHAgPSBRdDo6U2Nyb2xsQmFyQXNO
ZWVkZWQ7CisgICAgZWxzZSBpZiAocG9saWN5ID09ICJvZmYiKQorICAgICAgICBwID0gUXQ6OlNj
cm9sbEJhckFsd2F5c09mZjsKKyAgICBlbHNlCisgICAgICAgIHJldHVybjsKKworICAgIG1fZHJ0
LT53ZWJQYWdlKCktPm1haW5GcmFtZSgpLT5zZXRTY3JvbGxCYXJQb2xpY3kobywgcCk7Cit9CisK
IGNvbnN0IHVuc2lnbmVkIExheW91dFRlc3RDb250cm9sbGVyOjptYXhWaWV3V2lkdGggPSA4MDA7
CiBjb25zdCB1bnNpZ25lZCBMYXlvdXRUZXN0Q29udHJvbGxlcjo6bWF4Vmlld0hlaWdodCA9IDYw
MDsKZGlmZiAtLWdpdCBhL1dlYktpdFRvb2xzL0R1bXBSZW5kZXJUcmVlL3F0L0xheW91dFRlc3RD
b250cm9sbGVyUXQuaCBiL1dlYktpdFRvb2xzL0R1bXBSZW5kZXJUcmVlL3F0L0xheW91dFRlc3RD
b250cm9sbGVyUXQuaAppbmRleCAzNmI1ZjcwLi4zYmQ5ZGI4IDEwMDY0NAotLS0gYS9XZWJLaXRU
b29scy9EdW1wUmVuZGVyVHJlZS9xdC9MYXlvdXRUZXN0Q29udHJvbGxlclF0LmgKKysrIGIvV2Vi
S2l0VG9vbHMvRHVtcFJlbmRlclRyZWUvcXQvTGF5b3V0VGVzdENvbnRyb2xsZXJRdC5oCkBAIC0x
NjUsNiArMTY1LDEyIEBAIHB1YmxpYyBzbG90czoKICAgICBpbnQgbnVtYmVyT2ZQYWdlcyhmbG9h
dCB3aWR0aCA9IG1heFZpZXdXaWR0aCwgZmxvYXQgaGVpZ2h0ID0gbWF4Vmlld0hlaWdodCk7CiAg
ICAgYm9vbCBjYWxsU2hvdWxkQ2xvc2VPbldlYlZpZXcoKTsKIAorICAgIC8qCisgICAgICAgIFBv
bGljeSB2YWx1ZXM6ICdvbicsICdhdXRvJyBvciAnb2ZmJy4KKyAgICAgICAgT3JpZW50YXRpb24g
dmFsdWVzOiAndmVydGljYWwnIG9yICdob3Jpem9udGFsJy4KKyAgICAqLworICAgIHZvaWQgc2V0
U2Nyb2xsYmFyUG9saWN5KGNvbnN0IFFTdHJpbmcmIG9yaWVudGF0aW9uLCBjb25zdCBRU3RyaW5n
JiBwb2xpY3kpOworCiBwcml2YXRlIHNsb3RzOgogICAgIHZvaWQgcHJvY2Vzc1dvcmsoKTsKIAot
LSAKMS42LjAuNAoK
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>52567</attachid>
            <date>2010-04-05 14:15:08 -0700</date>
            <delta_ts>2010-04-06 08:33:35 -0700</delta_ts>
            <desc>patch_1 - v2.1 - same as &quot;patch_1 - v2&quot; rebased with ToT</desc>
            <filename>0001--Qt-REGRESSION-r50665-QWebFrame-setScrollBarPoli.patch</filename>
            <type>text/plain</type>
            <size>25398</size>
            <attacher name="Antonio Gomes">tonikitoo</attacher>
            
              <data encoding="base64">RnJvbSA5Y2QyZTI1MGFkNTI3OGFlZmU5MmNkMTYzOThlNDZmOWY4ZjM0NTc5IE1vbiBTZXAgMTcg
MDA6MDA6MDAgMjAwMQpGcm9tOiBBbnRvbmlvIEdvbWVzIDx0b25pa2l0b29Ad2Via2l0Lm9yZz4K
RGF0ZTogVGh1LCAxIEFwciAyMDEwIDE2OjEyOjMzIC0wNDAwClN1YmplY3Q6IFtQQVRDSF0gW1F0
XSBSRUdSRVNTSU9OOihyNTA2NjUpIFFXZWJGcmFtZTo6c2V0U2Nyb2xsQmFyUG9saWN5KFF0OjpW
ZXJ0aWNhbCxRdDo6U2Nyb2xsQmFyQWx3YXlzT2ZmKSBoYXMgbm8gZWZmZWN0LgogaHR0cHM6Ly9i
dWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTI5NDMxCgpSZXZpZXdlZCBieSBOT0JPRFkg
KE9PUFMhKS4KUGF0Y2ggYnkgQW50b25pbyBHb21lcyA8dG9uaWtpdG9vQHdlYmtpdC5vcmc+CgpX
ZWJDb3JlOgoKVGVzdDogZmFzdC9vdmVyZmxvdy9zY3JvbGxiYXItcmVzdG9yZWQtYW5kLXRoZW4t
bG9ja2VkLmh0bWwKClBhdGNoIGludHJvZHVjZXMgYSBsb2NrIHNjcm9sbGJhcnMgY29uY2VwdCB0
byBTY3JvbGxWaWV3LCBhcyBpbiBXZWJEeW5hbWljU2Nyb2xsQmFyc1ZpZXcubW0vaApvbiBXZWJL
aXQvbWFjLiBJdCBpcyBuZWVkZWQgYmVjYXVzZSBpbiBRdFdlYktpdCwgd2UgaGF2ZSBBcGkgZm9y
IHNldHRpbmcgYm90aCB2ZXJ0aWNhbCBhbmQKaG9yaXpvbnRhbCBzY3JvbGxiYXJzIG9uL29mZi9h
dXRvLiBXaGVuIGl0IGlzIHNldCB0byBvZmYsIGZvciBleGFtcGxlLCBpdCBzaG91bGQgcmVtYWlu
CmFzIHN1Y2gsIHVubGVzcyB1bnNldC4KCkZvciB0aGUgbG9ja2luZyBjb25jZXB0LCBvbmUgYWRk
aXRpb25hbCAnbG9jaycgb3B0aW9uYWwgcGFyYW1ldGVyIHdhcyBhZGRlZCB0byBTY3JvbGxWaWV3
J3MKc2V0SG9yaXpvbnRhbFNjcm9sbGJhck1vZGUgYW5kIHNldFZlcnRpY2FsU2Nyb2xsYmFyTW9k
ZS4gQXMgaXQgaXMgb3B0aW9uYWwsIGFsbCBwcmV2aW91cyBjb2RlCmNhbGxpbmcgdGhlbSBkbyBu
b3QgbmVlZCBtb2RpZmljYXRpb24uIHNldFNjcm9sbGJhck1vZGVzJ3Mgc2lnbmF0dXJlIHJlbWFp
bnMgYXMgaXMsIGJ1dCBib2R5Cmhvbm9ycyB0aGUgY3VycmVudCBsb2NrIHN0YXRlLgoKVHdvIG9w
dGlvbmFsIHBhcmFtZXRlcnMgd2VyZSBhbHNvIGFkZGVkIHRvIEZyYW1lJ3MgY3JlYXRlVmlldyBt
ZXRob2QsIGZvciBob3Jpem9udGFsIGFuZCB2ZXJ0aWNhbApsb2NrIHN0YXRlIHBlcnNpc3RlbmNl
IGNyb3NzIHBhZ2UgbG9hZHMuCgoqIHBhZ2UvRnJhbWUuY3BwOgooV2ViQ29yZTo6RnJhbWU6OmNy
ZWF0ZVZpZXcpOgoqIHBsYXRmb3JtL1Njcm9sbFZpZXcuY3BwOgooV2ViQ29yZTo6U2Nyb2xsVmll
dzo6U2Nyb2xsVmlldyk6CihXZWJDb3JlOjpTY3JvbGxWaWV3OjpzZXRTY3JvbGxiYXJNb2Rlcyk6
CihXZWJDb3JlOjpTY3JvbGxWaWV3OjpzZXRIb3Jpem9udGFsU2Nyb2xsYmFyTW9kZSk6CihXZWJD
b3JlOjpTY3JvbGxWaWV3OjpzZXRWZXJ0aWNhbFNjcm9sbGJhck1vZGUpOgoqIHBsYXRmb3JtL1Nj
cm9sbFZpZXcuaDoKKFdlYkNvcmU6OlNjcm9sbFZpZXc6OnNldEhvcml6b250YWxTY3JvbGxiYXJM
b2NrKToKKFdlYkNvcmU6OlNjcm9sbFZpZXc6OmlzSG9yaXpvbnRhbFNjcm9sbGJhckxvY2tlZCk6
CihXZWJDb3JlOjpTY3JvbGxWaWV3OjpzZXRWZXJ0aWNhbFNjcm9sbGJhckxvY2spOgooV2ViQ29y
ZTo6U2Nyb2xsVmlldzo6aXNWZXJ0aWNhbFNjcm9sbGJhckxvY2tlZCk6CihXZWJDb3JlOjpTY3Jv
bGxWaWV3OjpzZXRTY3JvbGxpbmdNb2Rlc0xvY2tlZCk6CgpXZWJLaXQvcXQ6CgpNYWtlIHVzZSBv
ZiB0aGUgbmV3IGxvY2sgcGFyYW1ldGVyIG9mIHNldHtWZXJ0aWNhbCxIb3Jpem9udGFsfVNjcm9s
bGJhck1vZGUuCgpBbHdheXMgYWRkZWQgYSBxdCBhdXRvIHRlc3QgZm9yIHNldCBzY3JvbGxiYXIg
cG9saWN5IGZlYXR1cmUuCgoqIEFwaS9xd2ViZnJhbWUuY3BwOgooUVdlYkZyYW1lOjpzZXRTY3Jv
bGxCYXJQb2xpY3kpOgoqIHRlc3RzL3F3ZWJmcmFtZS90c3RfcXdlYmZyYW1lLmNwcDoKKiBXZWJD
b3JlU3VwcG9ydC9GcmFtZUxvYWRlckNsaWVudFF0LmNwcDoKKEZyYW1lTG9hZGVyQ2xpZW50UXQ6
OnRyYW5zaXRpb25Ub0NvbW1pdHRlZEZvck5ld1BhZ2UpOgoKV2ViS2l0VG9vbHM6CgpNYWtlIHBv
c3NpYmxlIHRvIERSVCB0byBzZXQgc2Nyb2xsYmFyIHBvbGljaWVzIChvbiwgb2ZmIG9yIGF1dG8p
LgoKKiBEdW1wUmVuZGVyVHJlZS9xdC9MYXlvdXRUZXN0Q29udHJvbGxlclF0LmNwcDoKKExheW91
dFRlc3RDb250cm9sbGVyOjpzZXRTY3JvbGxiYXJQb2xpY3kpOgoqIER1bXBSZW5kZXJUcmVlL3F0
L0xheW91dFRlc3RDb250cm9sbGVyUXQuaDoKKiBRdExhdW5jaGVyL21haW4uY3BwOgooTGF1bmNo
ZXJXaW5kb3c6OnRvZ2dsZVNjcm9sbGJhcnMpOgooTGF1bmNoZXJXaW5kb3c6OmNyZWF0ZUNocm9t
ZSk6CgpMYXlvdXRUZXN0czoKCiogZmFzdC9vdmVyZmxvdy9zY3JvbGxiYXItcmVzdG9yZWQtYW5k
LXRoZW4tbG9ja2VkLWV4cGVjdGVkLnR4dDogQWRkZWQuCiogZmFzdC9vdmVyZmxvdy9zY3JvbGxi
YXItcmVzdG9yZWQtYW5kLXRoZW4tbG9ja2VkLmh0bWw6IEFkZGVkLgotLS0KIExheW91dFRlc3Rz
L0NoYW5nZUxvZyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgICAxMCArKysrCiAuLi5z
Y3JvbGxiYXItcmVzdG9yZWQtYW5kLXRoZW4tbG9ja2VkLWV4cGVjdGVkLnR4dCB8ICAgIDggKysr
CiAuLi4vc2Nyb2xsYmFyLXJlc3RvcmVkLWFuZC10aGVuLWxvY2tlZC5odG1sICAgICAgICB8ICAg
NDEgKysrKysrKysrKysrKysrKwogTGF5b3V0VGVzdHMvcGxhdGZvcm0vZ3RrL1NraXBwZWQgICAg
ICAgICAgICAgICAgICAgfCAgICAzICsKIExheW91dFRlc3RzL3BsYXRmb3JtL21hYy9Ta2lwcGVk
ICAgICAgICAgICAgICAgICAgIHwgICAgMiArCiBMYXlvdXRUZXN0cy9wbGF0Zm9ybS93aW4vU2tp
cHBlZCAgICAgICAgICAgICAgICAgICB8ICAgIDMgKwogV2ViQ29yZS9DaGFuZ2VMb2cgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgfCAgIDM2ICsrKysrKysrKysrKysrCiBXZWJDb3Jl
L3BhZ2UvRnJhbWUuY3BwICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8ICAgIDYgKystCiBX
ZWJDb3JlL3BhZ2UvRnJhbWUuaCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8ICAgIDMg
Ky0KIFdlYkNvcmUvcGxhdGZvcm0vU2Nyb2xsVmlldy5jcHAgICAgICAgICAgICAgICAgICAgIHwg
ICA0OSArKysrKysrKysrKysrKysrKystCiBXZWJDb3JlL3BsYXRmb3JtL1Njcm9sbFZpZXcuaCAg
ICAgICAgICAgICAgICAgICAgICB8ICAgMTggKysrKysrLQogV2ViS2l0L3F0L0FwaS9xd2ViZnJh
bWUuY3BwICAgICAgICAgICAgICAgICAgICAgICAgfCAgICA0ICstCiBXZWJLaXQvcXQvQ2hhbmdl
TG9nICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8ICAgMTcgKysrKysrKwogV2ViS2l0
L3F0L1dlYkNvcmVTdXBwb3J0L0ZyYW1lTG9hZGVyQ2xpZW50UXQuY3BwICAgfCAgICA5ICsrKy0K
IFdlYktpdC9xdC90ZXN0cy9xd2ViZnJhbWUvdHN0X3F3ZWJmcmFtZS5jcHAgICAgICAgIHwgICAz
MyArKysrKysrKysrKysrCiBXZWJLaXRUb29scy9DaGFuZ2VMb2cgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICB8ICAgMTYgKysrKysrCiAuLi4vRHVtcFJlbmRlclRyZWUvcXQvTGF5b3V0VGVz
dENvbnRyb2xsZXJRdC5jcHAgICB8ICAgMjQgKysrKysrKysrKwogLi4uL0R1bXBSZW5kZXJUcmVl
L3F0L0xheW91dFRlc3RDb250cm9sbGVyUXQuaCAgICAgfCAgICA2ICsrCiAxOCBmaWxlcyBjaGFu
Z2VkLCAyNzYgaW5zZXJ0aW9ucygrKSwgMTIgZGVsZXRpb25zKC0pCiBjcmVhdGUgbW9kZSAxMDA2
NDQgTGF5b3V0VGVzdHMvZmFzdC9vdmVyZmxvdy9zY3JvbGxiYXItcmVzdG9yZWQtYW5kLXRoZW4t
bG9ja2VkLWV4cGVjdGVkLnR4dAogY3JlYXRlIG1vZGUgMTAwNjQ0IExheW91dFRlc3RzL2Zhc3Qv
b3ZlcmZsb3cvc2Nyb2xsYmFyLXJlc3RvcmVkLWFuZC10aGVuLWxvY2tlZC5odG1sCgpkaWZmIC0t
Z2l0IGEvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCmluZGV4
IGNiNmE4ZGIuLjQyMTI5OWEgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL0NoYW5nZUxvZworKysg
Yi9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKQEAgLTEsMyArMSwxMyBAQAorMjAxMC0wNC0wMSAgQW50
b25pbyBHb21lcyAgPHRvbmlraXRvb0B3ZWJraXQub3JnPgorCisgICAgICAgIFJldmlld2VkIGJ5
IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIFtRdF0gUkVHUkVTU0lPTjoocjUwNjY1KSBRV2Vi
RnJhbWU6OnNldFNjcm9sbEJhclBvbGljeShRdDo6VmVydGljYWwsUXQ6OlNjcm9sbEJhckFsd2F5
c09mZikgaGFzIG5vIGVmZmVjdC4KKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hv
d19idWcuY2dpP2lkPTI5NDMxCisKKyAgICAgICAgKiBmYXN0L292ZXJmbG93L3Njcm9sbGJhci1y
ZXN0b3JlZC1hbmQtdGhlbi1sb2NrZWQtZXhwZWN0ZWQudHh0OiBBZGRlZC4KKyAgICAgICAgKiBm
YXN0L292ZXJmbG93L3Njcm9sbGJhci1yZXN0b3JlZC1hbmQtdGhlbi1sb2NrZWQuaHRtbDogQWRk
ZWQuCisKIDIwMTAtMDQtMDUgIEFkYW0gQmFydGggIDxhYmFydGhAd2Via2l0Lm9yZz4KIAogICAg
ICAgICBVbnJldmlld2VkLgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9vdmVyZmxvdy9z
Y3JvbGxiYXItcmVzdG9yZWQtYW5kLXRoZW4tbG9ja2VkLWV4cGVjdGVkLnR4dCBiL0xheW91dFRl
c3RzL2Zhc3Qvb3ZlcmZsb3cvc2Nyb2xsYmFyLXJlc3RvcmVkLWFuZC10aGVuLWxvY2tlZC1leHBl
Y3RlZC50eHQKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uMmYxYWE4YQotLS0g
L2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2Zhc3Qvb3ZlcmZsb3cvc2Nyb2xsYmFyLXJlc3Rv
cmVkLWFuZC10aGVuLWxvY2tlZC1leHBlY3RlZC50eHQKQEAgLTAsMCArMSw4IEBACitUZXN0IGZv
ciBidWcgMjk0MzEgW1F0XSBSRUdSRVNTSU9OOihyNTA2NjUpIFFXZWJGcmFtZTo6c2V0U2Nyb2xs
QmFyUG9saWN5KFF0OjpWZXJ0aWNhbCxRdDo6U2Nyb2xsQmFyQWx3YXlzT2ZmKSBoYXMgbm8gZWZm
ZWN0LgorCitUaGlzIHRlc3QgZW5zdXJlcyB0aGUgY29ycmVjdG5lc3Mgb2YgdHdvIHNjcm9sbGJh
ciBiZWhhdmlvdXI6CisKK1RoaXMgdGVzdHMgdGhhdCBhZnRlciBzZXR0aW5nICdvdmVyZmxvdycg
b24gdGhlIGRvY3VtZW50IGVsZW1lbnQgdG8gJ2hpZGRlbicgYW5kIGJhY2sgdG8gJ3Zpc2libGUn
LCBzY3JvbGxiYXJzIGFwcGVhciBhcyBuZWNlc3NhcnkuCitBZnRlciBleHBsaWNpdGx5IHNldHRp
bmcgYSBzY3JvbGxiYXIgcG9saWN5IGRpZmZlcmVudCB0aGFuICdhdXRvJywgV2ViQ29yZSBob25v
cnMgdGhhdCB1bnRpbCBpdCBpcyB1bnNldC4KK1BBU1MKK1BBU1MKZGlmZiAtLWdpdCBhL0xheW91
dFRlc3RzL2Zhc3Qvb3ZlcmZsb3cvc2Nyb2xsYmFyLXJlc3RvcmVkLWFuZC10aGVuLWxvY2tlZC5o
dG1sIGIvTGF5b3V0VGVzdHMvZmFzdC9vdmVyZmxvdy9zY3JvbGxiYXItcmVzdG9yZWQtYW5kLXRo
ZW4tbG9ja2VkLmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uOTNiNTRh
MAotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2Zhc3Qvb3ZlcmZsb3cvc2Nyb2xsYmFy
LXJlc3RvcmVkLWFuZC10aGVuLWxvY2tlZC5odG1sCkBAIC0wLDAgKzEsNDEgQEAKKzxib2R5Pgor
ICAgIDxwPgorICAgICAgICBUZXN0IGZvciA8aT48YSBocmVmPSJodHRwczovL2J1Z3Mud2Via2l0
Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9Mjk0MzEiPmJ1ZyAyOTQzMTwvYT4KKyAgICAgICAgW1F0XSBS
RUdSRVNTSU9OOihyNTA2NjUpIFFXZWJGcmFtZTo6c2V0U2Nyb2xsQmFyUG9saWN5KFF0OjpWZXJ0
aWNhbCxRdDo6U2Nyb2xsQmFyQWx3YXlzT2ZmKSBoYXMgbm8gZWZmZWN0LgorICAgIDwvcD4KKyAg
ICA8cD4gVGhpcyB0ZXN0IGVuc3VyZXMgdGhlIGNvcnJlY3RuZXNzIG9mIHR3byBzY3JvbGxiYXIg
YmVoYXZpb3VyOjwvcD4KKyAgICA8dWw+CisgICAgICAgIDxsaT4gVGhpcyB0ZXN0cyB0aGF0IGFm
dGVyIHNldHRpbmcgJ292ZXJmbG93JyBvbiB0aGUgZG9jdW1lbnQgZWxlbWVudCB0bworICAgICAg
ICAgICAgJ2hpZGRlbicgYW5kIGJhY2sgdG8gJ3Zpc2libGUnLCBzY3JvbGxiYXJzIGFwcGVhciBh
cyBuZWNlc3NhcnkuCisgICAgICAgIDwvbGk+CisgICAgICAgIDxsaT4KKyAgICAgICAgICAgIEFm
dGVyIGV4cGxpY2l0bHkgc2V0dGluZyBhIHNjcm9sbGJhciBwb2xpY3kgZGlmZmVyZW50IHRoYW4g
J2F1dG8nLCBXZWJDb3JlCisgICAgICAgICAgICBob25vcnMgdGhhdCB1bnRpbCBpdCBpcyB1bnNl
dC4KKyAgICAgICAgPC9saT4KKyAgICA8L3VsPgorICAgIDxkaXYgaWQ9ImR5bmFtaWMiPjwvZGl2
PgorICAgIDxwIGlkPSJyZXN1bHQiPkZBSUw6IFRlc3QgZGlkIG5vdCBydW4gdG8gY29tcGxldGlv
bjwvcD4KKyAgICA8c2NyaXB0PgorICAgICAgICBpZiAod2luZG93LmxheW91dFRlc3RDb250cm9s
bGVyKQorICAgICAgICAgICAgbGF5b3V0VGVzdENvbnRyb2xsZXIuZHVtcEFzVGV4dCgpOworCisg
ICAgICAgIGRvY3VtZW50LmRvY3VtZW50RWxlbWVudC5zdHlsZS5vdmVyZmxvdyA9ICJoaWRkZW4i
OworICAgICAgICBkb2N1bWVudC5ib2R5Lm9mZnNldFRvcDsKKyAgICAgICAgZG9jdW1lbnQuZG9j
dW1lbnRFbGVtZW50LnN0eWxlLnJlbW92ZVByb3BlcnR5KCJvdmVyZmxvdyIpOworICAgICAgICBk
b2N1bWVudC5ib2R5LnN0eWxlLmhlaWdodCA9ICIyMDAlIjsKKyAgICAgICAgdmFyIHJlc3VsdCA9
IChpbm5lcldpZHRoID09PSBkb2N1bWVudC5kb2N1bWVudEVsZW1lbnQub2Zmc2V0V2lkdGgpCisg
ICAgICAgICAgICA/ICJGQUlMOiBTY3JvbGxiYXIgZGlkIG5vdCBhcHBlYXIgYWZ0ZXIgcmVzZXR0
aW5nICdvdmVyZmxvdyciCisgICAgICAgICAgICA6ICJQQVNTIjsKKworICAgICAgICBpZiAod2lu
ZG93LmxheW91dFRlc3RDb250cm9sbGVyKSB7CisgICAgICAgICAgICBsYXlvdXRUZXN0Q29udHJv
bGxlci5zZXRTY3JvbGxiYXJQb2xpY3koJ3ZlcnRpY2FsJywgJ29mZicpOworICAgICAgICAgICAg
bGF5b3V0VGVzdENvbnRyb2xsZXIuc2V0U2Nyb2xsYmFyUG9saWN5KCdob3Jpem9udGFsJywgJ29m
ZicpOworCisgICAgICAgICAgICByZXN1bHQgKz0gKGlubmVyV2lkdGggPT09IGRvY3VtZW50LmRv
Y3VtZW50RWxlbWVudC5vZmZzZXRXaWR0aCkKKyAgICAgICAgICAgICAgICA/ICJcblBBU1MiCisg
ICAgICAgICAgICAgICAgOiAiXG5GQUlMOiBTY3JvbGxiYXIgZGlkIGFwcGVhciBhZnRlciB0dXJu
aW5nIGl0IG9mZiI7CisgICAgICAgIH0KKworICAgICAgICBkb2N1bWVudC5nZXRFbGVtZW50QnlJ
ZCgicmVzdWx0IikuaW5uZXJUZXh0ID0gcmVzdWx0OworICAgIDwvc2NyaXB0PgorPC9ib2R5Pgpk
aWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvcGxhdGZvcm0vZ3RrL1NraXBwZWQgYi9MYXlvdXRUZXN0
cy9wbGF0Zm9ybS9ndGsvU2tpcHBlZAppbmRleCAzOGE0ODAzLi45ODIzNWFkIDEwMDY0NAotLS0g
YS9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9ndGsvU2tpcHBlZAorKysgYi9MYXlvdXRUZXN0cy9wbGF0
Zm9ybS9ndGsvU2tpcHBlZApAQCAtNTg5MiwzICs1ODkyLDYgQEAgZmFzdC9tZWRpYS9tZWRpYS1m
ZWF0dXJlLXdndC12aWV3LW1vZGUuaHRtbAogIyBNZWRpYVBsYXllclByaXZhdGVHU3RyZWFtZXIg
ZG9lc24ndCByZXR1cm4gdG8gTkVUV09SS19JRExFIGFuZCBoZW5jZSBkb2Vzbid0IGZpcmUgYSBz
dXNwZW5kIGV2ZW50CiAjIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0z
NzAzNAogaHR0cC90ZXN0cy9tZWRpYS92aWRlby1wbGF5LXN1c3BlbmQuaHRtbAorCisjIE5lZWQg
dG8gYWRkIGZ1bmN0aW9uYWxpdHkgdG8gRHVtcFJlbmRlclRyZWUgdG8gaGFuZGxlIHNjcm9sbGJh
ciBwb2xpY2UgY2hhbmdlcworZmFzdC9vdmVyZmxvdy9zY3JvbGxiYXItcmVzdG9yZWQtYW5kLXRo
ZW4tbG9ja2VkLmh0bWwKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL3BsYXRmb3JtL21hYy9Ta2lw
cGVkIGIvTGF5b3V0VGVzdHMvcGxhdGZvcm0vbWFjL1NraXBwZWQKaW5kZXggYTYxYWQyMS4uY2Yx
YmY1ZSAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvcGxhdGZvcm0vbWFjL1NraXBwZWQKKysrIGIv
TGF5b3V0VGVzdHMvcGxhdGZvcm0vbWFjL1NraXBwZWQKQEAgLTE1NiwzICsxNTYsNSBAQCBmYXN0
L3JlcGxhY2VkL2JvcmRlci1yYWRpdXMtY2xpcC5odG1sCiAjIGh0dHBzOi8vYnVncy53ZWJraXQu
b3JnL3Nob3dfYnVnLmNnaT9pZD0zNjY0NgogZmFzdC93b3JrZXJzL3dvcmtlci10ZXJtaW5hdGUu
aHRtbAogCisjIE5lZWQgdG8gYWRkIGZ1bmN0aW9uYWxpdHkgdG8gRHVtcFJlbmRlclRyZWUgdG8g
aGFuZGxlIHNjcm9sbGJhciBwb2xpY2UgY2hhbmdlcworZmFzdC9vdmVyZmxvdy9zY3JvbGxiYXIt
cmVzdG9yZWQtYW5kLXRoZW4tbG9ja2VkLmh0bWwKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL3Bs
YXRmb3JtL3dpbi9Ta2lwcGVkIGIvTGF5b3V0VGVzdHMvcGxhdGZvcm0vd2luL1NraXBwZWQKaW5k
ZXggZTdjNGNlZi4uNThmMGNhMyAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvcGxhdGZvcm0vd2lu
L1NraXBwZWQKKysrIGIvTGF5b3V0VGVzdHMvcGxhdGZvcm0vd2luL1NraXBwZWQKQEAgLTgyMiwz
ICs4MjIsNiBAQCBmYXN0L21lZGlhL21lZGlhLWZlYXR1cmUtd2d0LXZpZXctbW9kZS5odG1sCiAK
ICMgTmVlZCBleHBlY3RhdGlvbnMuIFNlZSBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1
Zy5jZ2k/aWQ9MzY0NjEKIGZhc3QvcmVwYWludC9vdmVyZmxvdy1zY3JvbGwtYm9keS1hcHBlYXIu
aHRtbAorCisjIE5lZWQgdG8gYWRkIGZ1bmN0aW9uYWxpdHkgdG8gRHVtcFJlbmRlclRyZWUgdG8g
aGFuZGxlIHNjcm9sbGJhciBwb2xpY2UgY2hhbmdlcworZmFzdC9vdmVyZmxvdy9zY3JvbGxiYXIt
cmVzdG9yZWQtYW5kLXRoZW4tbG9ja2VkLmh0bWwKZGlmZiAtLWdpdCBhL1dlYkNvcmUvQ2hhbmdl
TG9nIGIvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggODFlMTdhYS4uMDNlM2EwYiAxMDA2NDQKLS0t
IGEvV2ViQ29yZS9DaGFuZ2VMb2cKKysrIGIvV2ViQ29yZS9DaGFuZ2VMb2cKQEAgLTEsMyArMSwz
OSBAQAorMjAxMC0wNC0wMSAgQW50b25pbyBHb21lcyAgPHRvbmlraXRvb0B3ZWJraXQub3JnPgor
CisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIFtRdF0gUkVH
UkVTU0lPTjoocjUwNjY1KSBRV2ViRnJhbWU6OnNldFNjcm9sbEJhclBvbGljeShRdDo6VmVydGlj
YWwsUXQ6OlNjcm9sbEJhckFsd2F5c09mZikgaGFzIG5vIGVmZmVjdC4KKyAgICAgICAgaHR0cHM6
Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTI5NDMxCisKKyAgICAgICAgVGVzdDog
ZmFzdC9vdmVyZmxvdy9zY3JvbGxiYXItcmVzdG9yZWQtYW5kLXRoZW4tbG9ja2VkLmh0bWwKKwor
ICAgICAgICBQYXRjaCBpbnRyb2R1Y2VzIGEgbG9jayBzY3JvbGxiYXJzIGNvbmNlcHQgdG8gU2Ny
b2xsVmlldywgYXMgaW4gV2ViRHluYW1pY1Njcm9sbEJhcnNWaWV3Lm1tL2gKKyAgICAgICAgb24g
V2ViS2l0L21hYy4gSXQgaXMgbmVlZGVkIGJlY2F1c2UgaW4gUXRXZWJLaXQsIHdlIGhhdmUgQXBp
IGZvciBzZXR0aW5nIGJvdGggdmVydGljYWwgYW5kCisgICAgICAgIGhvcml6b250YWwgc2Nyb2xs
YmFycyBvbi9vZmYvYXV0by4gV2hlbiBpdCBpcyBzZXQgdG8gb2ZmLCBmb3IgZXhhbXBsZSwgaXQg
c2hvdWxkIHJlbWFpbgorICAgICAgICBhcyBzdWNoLCB1bmxlc3MgdW5zZXQuCisKKyAgICAgICAg
Rm9yIHRoZSBsb2NraW5nIGNvbmVjcHQsIG9uZSBhZGRpdGlvbmFsICdsb2NrJyBvcHRpb25hbCBw
YXJhbWV0ZXIgd2FzIGFkZGVkIHRvIFNjcm9sbFZpZXcncworICAgICAgICBzZXRIb3Jpem9udGFs
U2Nyb2xsYmFyTW9kZSBhbmQgc2V0VmVydGljYWxTY3JvbGxiYXJNb2RlLiBBcyBpdCBpcyBvcHRp
b25hbCwgYWxsIHByZXZpb3VzIGNvZGUKKyAgICAgICAgY2FsbGluZyB0aGVtIGRvIG5vdCBuZWVk
IG1vZGlmaWNhdGlvbi4gc2V0U2Nyb2xsYmFyTW9kZXMncyBzaWduYXR1cmUgcmVtYWlucyBhcyBp
cywgYnV0IGJvZHkKKyAgICAgICAgaG9ub3IgdGhlIGN1cnJlbnQgbG9jayBzdGF0ZS4KKworICAg
ICAgICBUd28gb3B0aW9uYWwgcGFyYW1ldGVycyB3ZXJlIGFsc28gYWRkZWQgdG8gRnJhbWUncyBj
cmVhdGVWaWV3IG1ldGhvZCwgZm9yIGhvcml6b250YWwgYW5kIHZlcnRpY2FsCisgICAgICAgIGxv
Y2sgc3RhdGUgcGVyc2lzdGVuY2UgY3Jvc3MgcGFnZSBsb2Fkcy4KKworICAgICAgICAqIHBhZ2Uv
RnJhbWUuY3BwOgorICAgICAgICAoV2ViQ29yZTo6RnJhbWU6OmNyZWF0ZVZpZXcpOgorICAgICAg
ICAqIHBsYXRmb3JtL1Njcm9sbFZpZXcuY3BwOgorICAgICAgICAoV2ViQ29yZTo6U2Nyb2xsVmll
dzo6U2Nyb2xsVmlldyk6CisgICAgICAgIChXZWJDb3JlOjpTY3JvbGxWaWV3OjpzZXRTY3JvbGxi
YXJNb2Rlcyk6CisgICAgICAgIChXZWJDb3JlOjpTY3JvbGxWaWV3OjpzZXRIb3Jpem9udGFsU2Ny
b2xsYmFyTW9kZSk6CisgICAgICAgIChXZWJDb3JlOjpTY3JvbGxWaWV3OjpzZXRWZXJ0aWNhbFNj
cm9sbGJhck1vZGUpOgorICAgICAgICAqIHBsYXRmb3JtL1Njcm9sbFZpZXcuaDoKKyAgICAgICAg
KFdlYkNvcmU6OlNjcm9sbFZpZXc6OnNldEhvcml6b250YWxTY3JvbGxiYXJMb2NrKToKKyAgICAg
ICAgKFdlYkNvcmU6OlNjcm9sbFZpZXc6OmlzSG9yaXpvbnRhbFNjcm9sbGJhckxvY2tlZCk6Cisg
ICAgICAgIChXZWJDb3JlOjpTY3JvbGxWaWV3OjpzZXRWZXJ0aWNhbFNjcm9sbGJhckxvY2spOgor
ICAgICAgICAoV2ViQ29yZTo6U2Nyb2xsVmlldzo6aXNWZXJ0aWNhbFNjcm9sbGJhckxvY2tlZCk6
CisgICAgICAgIChXZWJDb3JlOjpTY3JvbGxWaWV3OjpzZXRTY3JvbGxpbmdNb2Rlc0xvY2tlZCk6
CisKIDIwMTAtMDQtMDUgIEFkYW0gVHJlYXQgIDxhdHJlYXRAcmltLmNvbT4KIAogICAgICAgICBS
ZXZpZXdlZCBieSBEYXJpbiBBZGxlci4KZGlmZiAtLWdpdCBhL1dlYkNvcmUvcGFnZS9GcmFtZS5j
cHAgYi9XZWJDb3JlL3BhZ2UvRnJhbWUuY3BwCmluZGV4IDA0ZDdhOWUuLmQ4M2E3N2UgMTAwNjQ0
Ci0tLSBhL1dlYkNvcmUvcGFnZS9GcmFtZS5jcHAKKysrIGIvV2ViQ29yZS9wYWdlL0ZyYW1lLmNw
cApAQCAtMTc3NSw3ICsxNzc1LDggQEAgRG9jdW1lbnQqIEZyYW1lOjpkb2N1bWVudEF0UG9pbnQo
Y29uc3QgSW50UG9pbnQmIHBvaW50KQogdm9pZCBGcmFtZTo6Y3JlYXRlVmlldyhjb25zdCBJbnRT
aXplJiB2aWV3cG9ydFNpemUsCiAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IENvbG9yJiBi
YWNrZ3JvdW5kQ29sb3IsIGJvb2wgdHJhbnNwYXJlbnQsCiAgICAgICAgICAgICAgICAgICAgICAg
IGNvbnN0IEludFNpemUmIGZpeGVkTGF5b3V0U2l6ZSwgYm9vbCB1c2VGaXhlZExheW91dCwKLSAg
ICAgICAgICAgICAgICAgICAgICAgU2Nyb2xsYmFyTW9kZSBob3Jpem9udGFsU2Nyb2xsYmFyTW9k
ZSwgU2Nyb2xsYmFyTW9kZSB2ZXJ0aWNhbFNjcm9sbGJhck1vZGUpCisgICAgICAgICAgICAgICAg
ICAgICAgIFNjcm9sbGJhck1vZGUgaG9yaXpvbnRhbFNjcm9sbGJhck1vZGUsIGJvb2wgaG9yaXpv
bnRhbExvY2ssCisgICAgICAgICAgICAgICAgICAgICAgIFNjcm9sbGJhck1vZGUgdmVydGljYWxT
Y3JvbGxiYXJNb2RlLCBib29sIHZlcnRpY2FsTG9jaykKIHsKICAgICBBU1NFUlQodGhpcyk7CiAg
ICAgQVNTRVJUKG1fcGFnZSk7CkBAIC0xNzk1LDcgKzE3OTYsOCBAQCB2b2lkIEZyYW1lOjpjcmVh
dGVWaWV3KGNvbnN0IEludFNpemUmIHZpZXdwb3J0U2l6ZSwKICAgICB9IGVsc2UKICAgICAgICAg
ZnJhbWVWaWV3ID0gRnJhbWVWaWV3OjpjcmVhdGUodGhpcyk7CiAKLSAgICBmcmFtZVZpZXctPnNl
dFNjcm9sbGJhck1vZGVzKGhvcml6b250YWxTY3JvbGxiYXJNb2RlLCB2ZXJ0aWNhbFNjcm9sbGJh
ck1vZGUpOworICAgIGZyYW1lVmlldy0+c2V0SG9yaXpvbnRhbFNjcm9sbGJhck1vZGUoaG9yaXpv
bnRhbFNjcm9sbGJhck1vZGUsIGhvcml6b250YWxMb2NrIC8qIGxvY2sgKi8pOworICAgIGZyYW1l
Vmlldy0+c2V0VmVydGljYWxTY3JvbGxiYXJNb2RlKHZlcnRpY2FsU2Nyb2xsYmFyTW9kZSwgdmVy
dGljYWxMb2NrIC8qIGxvY2sgKi8pOwogCiAgICAgc2V0VmlldyhmcmFtZVZpZXcpOwogCmRpZmYg
LS1naXQgYS9XZWJDb3JlL3BhZ2UvRnJhbWUuaCBiL1dlYkNvcmUvcGFnZS9GcmFtZS5oCmluZGV4
IGI2MzBiZWYuLjRhN2NkYWYgMTAwNjQ0Ci0tLSBhL1dlYkNvcmUvcGFnZS9GcmFtZS5oCisrKyBi
L1dlYkNvcmUvcGFnZS9GcmFtZS5oCkBAIC0xMTksNyArMTE5LDggQEAgbmFtZXNwYWNlIFdlYkNv
cmUgewogICAgICAgICB2b2lkIHNldEV4Y2x1ZGVGcm9tVGV4dFNlYXJjaChib29sKTsKIAogICAg
ICAgICB2b2lkIGNyZWF0ZVZpZXcoY29uc3QgSW50U2l6ZSYsIGNvbnN0IENvbG9yJiwgYm9vbCwg
Y29uc3QgSW50U2l6ZSAmLCBib29sLAotICAgICAgICAgICAgICAgICAgICAgICAgU2Nyb2xsYmFy
TW9kZSA9IFNjcm9sbGJhckF1dG8sIFNjcm9sbGJhck1vZGUgPSBTY3JvbGxiYXJBdXRvKTsKKyAg
ICAgICAgICAgICAgICAgICAgICAgIFNjcm9sbGJhck1vZGUgPSBTY3JvbGxiYXJBdXRvLCBib29s
IGhvcml6b250YWxMb2NrID0gZmFsc2UsCisgICAgICAgICAgICAgICAgICAgICAgICBTY3JvbGxi
YXJNb2RlID0gU2Nyb2xsYmFyQXV0bywgYm9vbCB2ZXJ0aWNhbExvY2sgPSBmYWxzZSk7CiAKICAg
ICAgICAgdm9pZCBpbmplY3RVc2VyU2NyaXB0cyhVc2VyU2NyaXB0SW5qZWN0aW9uVGltZSk7CiAg
ICAgICAgIApkaWZmIC0tZ2l0IGEvV2ViQ29yZS9wbGF0Zm9ybS9TY3JvbGxWaWV3LmNwcCBiL1dl
YkNvcmUvcGxhdGZvcm0vU2Nyb2xsVmlldy5jcHAKaW5kZXggMjEzMWM5MS4uYWQ1NzdhYiAxMDA2
NDQKLS0tIGEvV2ViQ29yZS9wbGF0Zm9ybS9TY3JvbGxWaWV3LmNwcAorKysgYi9XZWJDb3JlL3Bs
YXRmb3JtL1Njcm9sbFZpZXcuY3BwCkBAIC00Miw2ICs0Miw4IEBAIG5hbWVzcGFjZSBXZWJDb3Jl
IHsKIFNjcm9sbFZpZXc6OlNjcm9sbFZpZXcoKQogICAgIDogbV9ob3Jpem9udGFsU2Nyb2xsYmFy
TW9kZShTY3JvbGxiYXJBdXRvKQogICAgICwgbV92ZXJ0aWNhbFNjcm9sbGJhck1vZGUoU2Nyb2xs
YmFyQXV0bykKKyAgICAsIG1faG9yaXpvbnRhbFNjcm9sbGJhckxvY2soZmFsc2UpCisgICAgLCBt
X3ZlcnRpY2FsU2Nyb2xsYmFyTG9jayhmYWxzZSkKICAgICAsIG1fcHJvaGliaXRzU2Nyb2xsaW5n
KGZhbHNlKQogICAgICwgbV9jYW5CbGl0T25TY3JvbGwodHJ1ZSkKICAgICAsIG1fc2Nyb2xsYmFy
c0F2b2lkaW5nUmVzaXplcigwKQpAQCAtMTE3LDEwICsxMTksMjEgQEAgUGFzc1JlZlB0cjxTY3Jv
bGxiYXI+IFNjcm9sbFZpZXc6OmNyZWF0ZVNjcm9sbGJhcihTY3JvbGxiYXJPcmllbnRhdGlvbiBv
cmllbnRhdGkKIAogdm9pZCBTY3JvbGxWaWV3OjpzZXRTY3JvbGxiYXJNb2RlcyhTY3JvbGxiYXJN
b2RlIGhvcml6b250YWxNb2RlLCBTY3JvbGxiYXJNb2RlIHZlcnRpY2FsTW9kZSkKIHsKLSAgICBp
ZiAoaG9yaXpvbnRhbE1vZGUgPT0gaG9yaXpvbnRhbFNjcm9sbGJhck1vZGUoKSAmJiB2ZXJ0aWNh
bE1vZGUgPT0gdmVydGljYWxTY3JvbGxiYXJNb2RlKCkpCisgICAgYm9vbCBuZWVkc1VwZGF0ZSA9
IGZhbHNlOworCisgICAgaWYgKGhvcml6b250YWxNb2RlICE9IGhvcml6b250YWxTY3JvbGxiYXJN
b2RlKCkgJiYgIW1faG9yaXpvbnRhbFNjcm9sbGJhckxvY2spIHsKKyAgICAgICAgbV9ob3Jpem9u
dGFsU2Nyb2xsYmFyTW9kZSA9IGhvcml6b250YWxNb2RlOworICAgICAgICBuZWVkc1VwZGF0ZSA9
IHRydWU7CisgICAgfQorCisgICAgaWYgKHZlcnRpY2FsTW9kZSAhPSB2ZXJ0aWNhbFNjcm9sbGJh
ck1vZGUoKSAmJiAhbV92ZXJ0aWNhbFNjcm9sbGJhckxvY2spIHsKKyAgICAgICAgbV92ZXJ0aWNh
bFNjcm9sbGJhck1vZGUgPSB2ZXJ0aWNhbE1vZGU7CisgICAgICAgIG5lZWRzVXBkYXRlID0gdHJ1
ZTsKKyAgICB9CisKKyAgICBpZiAoIW5lZWRzVXBkYXRlKQogICAgICAgICByZXR1cm47Ci0gICAg
bV9ob3Jpem9udGFsU2Nyb2xsYmFyTW9kZSA9IGhvcml6b250YWxNb2RlOwotICAgIG1fdmVydGlj
YWxTY3JvbGxiYXJNb2RlID0gdmVydGljYWxNb2RlOworCiAgICAgaWYgKHBsYXRmb3JtV2lkZ2V0
KCkpCiAgICAgICAgIHBsYXRmb3JtU2V0U2Nyb2xsYmFyTW9kZXMoKTsKICAgICBlbHNlCkBAIC0x
MzgsNiArMTUxLDM2IEBAIHZvaWQgU2Nyb2xsVmlldzo6c2Nyb2xsYmFyTW9kZXMoU2Nyb2xsYmFy
TW9kZSYgaG9yaXpvbnRhbE1vZGUsIFNjcm9sbGJhck1vZGUmIHZlCiAgICAgdmVydGljYWxNb2Rl
ID0gbV92ZXJ0aWNhbFNjcm9sbGJhck1vZGU7CiB9CiAKK3ZvaWQgU2Nyb2xsVmlldzo6c2V0SG9y
aXpvbnRhbFNjcm9sbGJhck1vZGUoU2Nyb2xsYmFyTW9kZSBtb2RlLCBib29sIGxvY2spCit7Cisg
ICAgaWYgKG1vZGUgIT0gaG9yaXpvbnRhbFNjcm9sbGJhck1vZGUoKSAmJiAhbV9ob3Jpem9udGFs
U2Nyb2xsYmFyTG9jaykgeworICAgICAgICBtX2hvcml6b250YWxTY3JvbGxiYXJNb2RlID0gbW9k
ZTsKKworICAgICAgICBpZiAobG9jaykKKyAgICAgICAgICAgIG1faG9yaXpvbnRhbFNjcm9sbGJh
ckxvY2sgPSBsb2NrOworCisgICAgICAgIGlmIChwbGF0Zm9ybVdpZGdldCgpKQorICAgICAgICAg
ICAgcGxhdGZvcm1TZXRTY3JvbGxiYXJNb2RlcygpOworICAgICAgICBlbHNlCisgICAgICAgICAg
ICB1cGRhdGVTY3JvbGxiYXJzKHNjcm9sbE9mZnNldCgpKTsKKyAgICB9Cit9CisKK3ZvaWQgU2Ny
b2xsVmlldzo6c2V0VmVydGljYWxTY3JvbGxiYXJNb2RlKFNjcm9sbGJhck1vZGUgbW9kZSwgYm9v
bCBsb2NrKQoreworICAgIGlmIChtb2RlICE9IHZlcnRpY2FsU2Nyb2xsYmFyTW9kZSgpICYmICFt
X3ZlcnRpY2FsU2Nyb2xsYmFyTG9jaykgeworICAgICAgICBtX3ZlcnRpY2FsU2Nyb2xsYmFyTW9k
ZSA9IG1vZGU7CisKKyAgICAgICAgaWYgKGxvY2spCisgICAgICAgICAgICBtX3ZlcnRpY2FsU2Ny
b2xsYmFyTG9jayA9IGxvY2s7CisKKyAgICAgICAgaWYgKHBsYXRmb3JtV2lkZ2V0KCkpCisgICAg
ICAgICAgICBwbGF0Zm9ybVNldFNjcm9sbGJhck1vZGVzKCk7CisgICAgICAgIGVsc2UKKyAgICAg
ICAgICAgIHVwZGF0ZVNjcm9sbGJhcnMoc2Nyb2xsT2Zmc2V0KCkpOworICAgIH0KK30KKwogdm9p
ZCBTY3JvbGxWaWV3OjpzZXRDYW5IYXZlU2Nyb2xsYmFycyhib29sIGNhblNjcm9sbCkKIHsKICAg
ICBTY3JvbGxiYXJNb2RlIG5ld0hvcml6b250YWxNb2RlOwpkaWZmIC0tZ2l0IGEvV2ViQ29yZS9w
bGF0Zm9ybS9TY3JvbGxWaWV3LmggYi9XZWJDb3JlL3BsYXRmb3JtL1Njcm9sbFZpZXcuaAppbmRl
eCBjMzU2YTYwLi5iNmIzM2Q2IDEwMDY0NAotLS0gYS9XZWJDb3JlL3BsYXRmb3JtL1Njcm9sbFZp
ZXcuaAorKysgYi9XZWJDb3JlL3BsYXRmb3JtL1Njcm9sbFZpZXcuaApAQCAtODQsMTEgKzg0LDIx
IEBAIHB1YmxpYzoKICAgICAvLyBOb3RlIHRoYXQgZm9yIHBsYXRmb3JtcyB3aXRoIG5hdGl2ZSB3
aWRnZXRzLCB0aGVzZSBtb2RlcyBhcmUgY29uc2lkZXJlZCBhZHZpc29yeS4gIEluIG90aGVyIHdv
cmRzIHRoZSB1bmRlcmx5aW5nIG5hdGl2ZQogICAgIC8vIHdpZGdldCBtYXkgY2hvb3NlIG5vdCB0
byBob25vciB0aGUgcmVxdWVzdGVkIG1vZGVzLgogICAgIHZvaWQgc2V0U2Nyb2xsYmFyTW9kZXMo
U2Nyb2xsYmFyTW9kZSBob3Jpem9udGFsTW9kZSwgU2Nyb2xsYmFyTW9kZSB2ZXJ0aWNhbE1vZGUp
OwotICAgIHZvaWQgc2V0SG9yaXpvbnRhbFNjcm9sbGJhck1vZGUoU2Nyb2xsYmFyTW9kZSBtb2Rl
KSB7IHNldFNjcm9sbGJhck1vZGVzKG1vZGUsIHZlcnRpY2FsU2Nyb2xsYmFyTW9kZSgpKTsgfQot
ICAgIHZvaWQgc2V0VmVydGljYWxTY3JvbGxiYXJNb2RlKFNjcm9sbGJhck1vZGUgbW9kZSkgeyBz
ZXRTY3JvbGxiYXJNb2Rlcyhob3Jpem9udGFsU2Nyb2xsYmFyTW9kZSgpLCBtb2RlKTsgfQogICAg
IHZvaWQgc2Nyb2xsYmFyTW9kZXMoU2Nyb2xsYmFyTW9kZSYgaG9yaXpvbnRhbE1vZGUsIFNjcm9s
bGJhck1vZGUmIHZlcnRpY2FsTW9kZSkgY29uc3Q7CisKKyAgICB2b2lkIHNldEhvcml6b250YWxT
Y3JvbGxiYXJNb2RlKFNjcm9sbGJhck1vZGUgbW9kZSwgYm9vbCBhbmRMb2NrID0gZmFsc2UpOwog
ICAgIFNjcm9sbGJhck1vZGUgaG9yaXpvbnRhbFNjcm9sbGJhck1vZGUoKSBjb25zdCB7IFNjcm9s
bGJhck1vZGUgaG9yaXpvbnRhbCwgdmVydGljYWw7IHNjcm9sbGJhck1vZGVzKGhvcml6b250YWws
IHZlcnRpY2FsKTsgcmV0dXJuIGhvcml6b250YWw7IH0KKworICAgIHZvaWQgc2V0VmVydGljYWxT
Y3JvbGxiYXJNb2RlKFNjcm9sbGJhck1vZGUgbW9kZSwgYm9vbCBhbmRMb2NrID0gZmFsc2UpOwog
ICAgIFNjcm9sbGJhck1vZGUgdmVydGljYWxTY3JvbGxiYXJNb2RlKCkgY29uc3QgeyBTY3JvbGxi
YXJNb2RlIGhvcml6b250YWwsIHZlcnRpY2FsOyBzY3JvbGxiYXJNb2Rlcyhob3Jpem9udGFsLCB2
ZXJ0aWNhbCk7IHJldHVybiB2ZXJ0aWNhbDsgfQorCisgICAgdm9pZCBzZXRIb3Jpem9udGFsU2Ny
b2xsYmFyTG9jayhib29sIGxvY2sgPSB0cnVlKSB7IG1faG9yaXpvbnRhbFNjcm9sbGJhckxvY2sg
PSBsb2NrOyB9CisgICAgYm9vbCBpc0hvcml6b250YWxTY3JvbGxiYXJMb2NrZWQoKSBjb25zdCB7
IHJldHVybiBtX2hvcml6b250YWxTY3JvbGxiYXJMb2NrOyB9CisgICAgdm9pZCBzZXRWZXJ0aWNh
bFNjcm9sbGJhckxvY2soYm9vbCBsb2NrID0gdHJ1ZSkgeyBtX3ZlcnRpY2FsU2Nyb2xsYmFyTG9j
ayA9IGxvY2s7IH0KKyAgICBib29sIGlzVmVydGljYWxTY3JvbGxiYXJMb2NrZWQoKSBjb25zdCB7
IHJldHVybiBtX3ZlcnRpY2FsU2Nyb2xsYmFyTG9jazsgfQorCisgICAgdm9pZCBzZXRTY3JvbGxp
bmdNb2Rlc0xvY2tlZChib29sIGxvY2sgPSB0cnVlKSB7IG1faG9yaXpvbnRhbFNjcm9sbGJhckxv
Y2sgPSBtX3ZlcnRpY2FsU2Nyb2xsYmFyTG9jayA9IGxvY2s7IH0KKwogICAgIHZpcnR1YWwgdm9p
ZCBzZXRDYW5IYXZlU2Nyb2xsYmFycyhib29sKTsKICAgICBib29sIGNhbkhhdmVTY3JvbGxiYXJz
KCkgY29uc3QgeyByZXR1cm4gaG9yaXpvbnRhbFNjcm9sbGJhck1vZGUoKSAhPSBTY3JvbGxiYXJB
bHdheXNPZmYgfHwgdmVydGljYWxTY3JvbGxiYXJNb2RlKCkgIT0gU2Nyb2xsYmFyQWx3YXlzT2Zm
OyB9CiAKQEAgLTI2MCw2ICsyNzAsMTAgQEAgcHJpdmF0ZToKICAgICBSZWZQdHI8U2Nyb2xsYmFy
PiBtX3ZlcnRpY2FsU2Nyb2xsYmFyOwogICAgIFNjcm9sbGJhck1vZGUgbV9ob3Jpem9udGFsU2Ny
b2xsYmFyTW9kZTsKICAgICBTY3JvbGxiYXJNb2RlIG1fdmVydGljYWxTY3JvbGxiYXJNb2RlOwor
CisgICAgYm9vbCBtX2hvcml6b250YWxTY3JvbGxiYXJMb2NrOworICAgIGJvb2wgbV92ZXJ0aWNh
bFNjcm9sbGJhckxvY2s7CisKICAgICBib29sIG1fcHJvaGliaXRzU2Nyb2xsaW5nOwogCiAgICAg
SGFzaFNldDxSZWZQdHI8V2lkZ2V0PiA+IG1fY2hpbGRyZW47CmRpZmYgLS1naXQgYS9XZWJLaXQv
cXQvQXBpL3F3ZWJmcmFtZS5jcHAgYi9XZWJLaXQvcXQvQXBpL3F3ZWJmcmFtZS5jcHAKaW5kZXgg
M2JiY2ZlMi4uZTVjMjc2OCAxMDA2NDQKLS0tIGEvV2ViS2l0L3F0L0FwaS9xd2ViZnJhbWUuY3Bw
CisrKyBiL1dlYktpdC9xdC9BcGkvcXdlYmZyYW1lLmNwcApAQCAtMTA1MCwxMyArMTA1MCwxMyBA
QCB2b2lkIFFXZWJGcmFtZTo6c2V0U2Nyb2xsQmFyUG9saWN5KFF0OjpPcmllbnRhdGlvbiBvcmll
bnRhdGlvbiwgUXQ6OlNjcm9sbEJhclBvbAogICAgIGlmIChvcmllbnRhdGlvbiA9PSBRdDo6SG9y
aXpvbnRhbCkgewogICAgICAgICBkLT5ob3Jpem9udGFsU2Nyb2xsQmFyUG9saWN5ID0gcG9saWN5
OwogICAgICAgICBpZiAoZC0+ZnJhbWUtPnZpZXcoKSkgewotICAgICAgICAgICAgZC0+ZnJhbWUt
PnZpZXcoKS0+c2V0SG9yaXpvbnRhbFNjcm9sbGJhck1vZGUoKFNjcm9sbGJhck1vZGUpcG9saWN5
KTsKKyAgICAgICAgICAgIGQtPmZyYW1lLT52aWV3KCktPnNldEhvcml6b250YWxTY3JvbGxiYXJN
b2RlKChTY3JvbGxiYXJNb2RlKXBvbGljeSwgcG9saWN5ICE9IFF0OjpTY3JvbGxCYXJBc05lZWRl
ZCAvKiBsb2NrICovKTsKICAgICAgICAgICAgIGQtPmZyYW1lLT52aWV3KCktPnVwZGF0ZUNhbkhh
dmVTY3JvbGxiYXJzKCk7CiAgICAgICAgIH0KICAgICB9IGVsc2UgewogICAgICAgICBkLT52ZXJ0
aWNhbFNjcm9sbEJhclBvbGljeSA9IHBvbGljeTsKICAgICAgICAgaWYgKGQtPmZyYW1lLT52aWV3
KCkpIHsKLSAgICAgICAgICAgIGQtPmZyYW1lLT52aWV3KCktPnNldFZlcnRpY2FsU2Nyb2xsYmFy
TW9kZSgoU2Nyb2xsYmFyTW9kZSlwb2xpY3kpOworICAgICAgICAgICAgZC0+ZnJhbWUtPnZpZXco
KS0+c2V0VmVydGljYWxTY3JvbGxiYXJNb2RlKChTY3JvbGxiYXJNb2RlKXBvbGljeSwgcG9saWN5
ICE9IFF0OjpTY3JvbGxCYXJBc05lZWRlZCAvKiBsb2NrICovKTsKICAgICAgICAgICAgIGQtPmZy
YW1lLT52aWV3KCktPnVwZGF0ZUNhbkhhdmVTY3JvbGxiYXJzKCk7CiAgICAgICAgIH0KICAgICB9
CmRpZmYgLS1naXQgYS9XZWJLaXQvcXQvQ2hhbmdlTG9nIGIvV2ViS2l0L3F0L0NoYW5nZUxvZwpp
bmRleCA3ZjNiZDE2Li4xYzE0MzNjIDEwMDY0NAotLS0gYS9XZWJLaXQvcXQvQ2hhbmdlTG9nCisr
KyBiL1dlYktpdC9xdC9DaGFuZ2VMb2cKQEAgLTEsMyArMSwyMCBAQAorMjAxMC0wNC0wMSAgQW50
b25pbyBHb21lcyAgPHRvbmlraXRvb0B3ZWJraXQub3JnPgorCisgICAgICAgIFJldmlld2VkIGJ5
IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIFtRdF0gUkVHUkVTU0lPTjoocjUwNjY1KSBRV2Vi
RnJhbWU6OnNldFNjcm9sbEJhclBvbGljeShRdDo6VmVydGljYWwsUXQ6OlNjcm9sbEJhckFsd2F5
c09mZikgaGFzIG5vIGVmZmVjdC4KKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hv
d19idWcuY2dpP2lkPTI5NDMxCisKKyAgICAgICAgTWFrZSB1c2Ugb2YgdGhlIG5ldyBsb2NrIHBh
cmFtZXRlciBvZiBzZXR7VmVydGljYWwsSG9yaXpvbnRhbH1TY3JvbGxiYXJNb2RlLgorCisgICAg
ICAgIEFsd2F5cyBhZGRlZCBhIHF0IGF1dG8gdGVzdCBmb3Igc2V0IHNjcm9sbGJhciBwb2xpY3kg
ZmVhdHVyZS4KKworICAgICAgICAqIEFwaS9xd2ViZnJhbWUuY3BwOgorICAgICAgICAoUVdlYkZy
YW1lOjpzZXRTY3JvbGxCYXJQb2xpY3kpOgorICAgICAgICAqIHRlc3RzL3F3ZWJmcmFtZS90c3Rf
cXdlYmZyYW1lLmNwcDoKKyAgICAgICAgKiBXZWJDb3JlU3VwcG9ydC9GcmFtZUxvYWRlckNsaWVu
dFF0LmNwcDoKKyAgICAgICAgKEZyYW1lTG9hZGVyQ2xpZW50UXQ6OnRyYW5zaXRpb25Ub0NvbW1p
dHRlZEZvck5ld1BhZ2UpOgorCiAyMDEwLTA0LTAyICBMYXN6bG8gR29tYm9zICA8bGFzemxvLjEu
Z29tYm9zQG5va2lhLmNvbT4KIAogICAgICAgICBSZXZpZXdlZCBieSBLZW5uZXRoIFJvaGRlIENo
cmlzdGlhbnNlbi4KZGlmZiAtLWdpdCBhL1dlYktpdC9xdC9XZWJDb3JlU3VwcG9ydC9GcmFtZUxv
YWRlckNsaWVudFF0LmNwcCBiL1dlYktpdC9xdC9XZWJDb3JlU3VwcG9ydC9GcmFtZUxvYWRlckNs
aWVudFF0LmNwcAppbmRleCBjNWM1NzM5Li41NWFmNDBkIDEwMDY0NAotLS0gYS9XZWJLaXQvcXQv
V2ViQ29yZVN1cHBvcnQvRnJhbWVMb2FkZXJDbGllbnRRdC5jcHAKKysrIGIvV2ViS2l0L3F0L1dl
YkNvcmVTdXBwb3J0L0ZyYW1lTG9hZGVyQ2xpZW50UXQuY3BwCkBAIC0yMTUsMTIgKzIxNSwxNyBA
QCB2b2lkIEZyYW1lTG9hZGVyQ2xpZW50UXQ6OnRyYW5zaXRpb25Ub0NvbW1pdHRlZEZvck5ld1Bh
Z2UoKQogICAgIFFXZWJQYWdlKiBwYWdlID0gbV93ZWJGcmFtZS0+cGFnZSgpOwogICAgIGNvbnN0
IFFTaXplIHByZWZlcnJlZExheW91dFNpemUgPSBwYWdlLT5wcmVmZXJyZWRDb250ZW50c1NpemUo
KTsKIAorICAgIFNjcm9sbGJhck1vZGUgaFNjcm9sbGJhciA9IChTY3JvbGxiYXJNb2RlKSBtX3dl
YkZyYW1lLT5zY3JvbGxCYXJQb2xpY3koUXQ6Okhvcml6b250YWwpOworICAgIFNjcm9sbGJhck1v
ZGUgdlNjcm9sbGJhciA9IChTY3JvbGxiYXJNb2RlKSBtX3dlYkZyYW1lLT5zY3JvbGxCYXJQb2xp
Y3koUXQ6OlZlcnRpY2FsKTsKKyAgICBib29sIGhMb2NrID0gaFNjcm9sbGJhciAhPSBTY3JvbGxi
YXJBdXRvOworICAgIGJvb2wgdkxvY2sgPSB2U2Nyb2xsYmFyICE9IFNjcm9sbGJhckF1dG87CisK
ICAgICBtX2ZyYW1lLT5jcmVhdGVWaWV3KG1fd2ViRnJhbWUtPnBhZ2UoKS0+dmlld3BvcnRTaXpl
KCksCiAgICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kQ29sb3IsICFiYWNrZ3JvdW5k
Q29sb3IuYWxwaGEoKSwKICAgICAgICAgICAgICAgICAgICAgICAgIHByZWZlcnJlZExheW91dFNp
emUuaXNWYWxpZCgpID8gSW50U2l6ZShwcmVmZXJyZWRMYXlvdXRTaXplKSA6IEludFNpemUoKSwK
ICAgICAgICAgICAgICAgICAgICAgICAgIHByZWZlcnJlZExheW91dFNpemUuaXNWYWxpZCgpLAot
ICAgICAgICAgICAgICAgICAgICAgICAgKFNjcm9sbGJhck1vZGUpbV93ZWJGcmFtZS0+c2Nyb2xs
QmFyUG9saWN5KFF0OjpIb3Jpem9udGFsKSwKLSAgICAgICAgICAgICAgICAgICAgICAgIChTY3Jv
bGxiYXJNb2RlKW1fd2ViRnJhbWUtPnNjcm9sbEJhclBvbGljeShRdDo6VmVydGljYWwpKTsKKyAg
ICAgICAgICAgICAgICAgICAgICAgIGhTY3JvbGxiYXIsIGhMb2NrLAorICAgICAgICAgICAgICAg
ICAgICAgICAgdlNjcm9sbGJhciwgdkxvY2spOwogfQogCiAKZGlmZiAtLWdpdCBhL1dlYktpdC9x
dC90ZXN0cy9xd2ViZnJhbWUvdHN0X3F3ZWJmcmFtZS5jcHAgYi9XZWJLaXQvcXQvdGVzdHMvcXdl
YmZyYW1lL3RzdF9xd2ViZnJhbWUuY3BwCmluZGV4IDM3ZjdiODguLmJiZjQ0N2EgMTAwNjQ0Ci0t
LSBhL1dlYktpdC9xdC90ZXN0cy9xd2ViZnJhbWUvdHN0X3F3ZWJmcmFtZS5jcHAKKysrIGIvV2Vi
S2l0L3F0L3Rlc3RzL3F3ZWJmcmFtZS90c3RfcXdlYmZyYW1lLmNwcApAQCAtNTg1LDYgKzU4NSw3
IEBAIHByaXZhdGUgc2xvdHM6CiAgICAgdm9pZCByZW5kZXIoKTsKICAgICB2b2lkIHNjcm9sbFBv
c2l0aW9uKCk7CiAgICAgdm9pZCBzY3JvbGxUb0FuY2hvcigpOworICAgIHZvaWQgc2Nyb2xsYmFy
c09mZigpOwogICAgIHZvaWQgZXZhbHVhdGVXaWxsQ2F1c2VSZXBhaW50KCk7CiAgICAgdm9pZCBx
T2JqZWN0V3JhcHBlcldpdGhTYW1lSWRlbnRpdHkoKTsKICAgICB2b2lkIGludHJvc3BlY3RRdE1l
dGhvZHNfZGF0YSgpOwpAQCAtMjc5Niw2ICsyNzk3LDM4IEBAIHZvaWQgdHN0X1FXZWJGcmFtZTo6
c2Nyb2xsVG9BbmNob3IoKQogICAgIFFWRVJJRlkoZnJhbWUtPnNjcm9sbFBvc2l0aW9uKCkueSgp
ICE9IDApOwogfQogCisKK3ZvaWQgdHN0X1FXZWJGcmFtZTo6c2Nyb2xsYmFyc09mZigpCit7Cisg
ICAgUVdlYlZpZXcgdmlldzsKKyAgICBRV2ViRnJhbWUqIG1haW5GcmFtZSA9IHZpZXcucGFnZSgp
LT5tYWluRnJhbWUoKTsKKworICAgIG1haW5GcmFtZS0+c2V0U2Nyb2xsQmFyUG9saWN5KFF0OjpW
ZXJ0aWNhbCwgUXQ6OlNjcm9sbEJhckFsd2F5c09mZik7CisgICAgbWFpbkZyYW1lLT5zZXRTY3Jv
bGxCYXJQb2xpY3koUXQ6Okhvcml6b250YWwsIFF0OjpTY3JvbGxCYXJBbHdheXNPZmYpOworCisg
ICAgUVN0cmluZyBodG1sKCI8c2NyaXB0PiIgXAorICAgICAgICAgICAgICAgICAiICAgZnVuY3Rp
b24gY2hlY2tTY3JvbGxiYXIoKSB7IiBcCisgICAgICAgICAgICAgICAgICIgICAgICAgaWYgKGlu
bmVyV2lkdGggPT09IGRvY3VtZW50LmRvY3VtZW50RWxlbWVudC5vZmZzZXRXaWR0aCkiIFwKKyAg
ICAgICAgICAgICAgICAgIiAgICAgICAgICAgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ3NwYW4x
JykuaW5uZXJUZXh0ID0gJ1NVQ0NFU1MnOyIgXAorICAgICAgICAgICAgICAgICAiICAgICAgIGVs
c2UiIFwKKyAgICAgICAgICAgICAgICAgIiAgICAgICAgICAgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5
SWQoJ3NwYW4xJykuaW5uZXJUZXh0ID0gJ0ZBSUwnOyIgXAorICAgICAgICAgICAgICAgICAiICAg
fSIgXAorICAgICAgICAgICAgICAgICAiPC9zY3JpcHQ+IiBcCisgICAgICAgICAgICAgICAgICI8
Ym9keT4iIFwKKyAgICAgICAgICAgICAgICAgIiAgIDxkaXYgc3R5bGU9J21hcmdpbi10b3A6MTAw
MHB4IDsgbWFyZ2luLWxlZnQ6MTAwMHB4Jz4iIFwKKyAgICAgICAgICAgICAgICAgIiAgICAgICA8
YSBpZD0nb2Zmc2NyZWVuJyBocmVmPSdhJz5FbmQ8L2E+IiBcCisgICAgICAgICAgICAgICAgICIg
ICA8L2Rpdj4iIFwKKyAgICAgICAgICAgICAgICAgIjxzcGFuIGlkPSdzcGFuMSc+PC9zcGFuPiIg
XAorICAgICAgICAgICAgICAgICAiPC9ib2R5PiIpOworCisKKyAgICB2aWV3LnNldEh0bWwoaHRt
bCk7CisgICAgOjp3YWl0Rm9yU2lnbmFsKCZ2aWV3LCBTSUdOQUwobG9hZEZpbmlzaGVkKGJvb2wp
KSk7CisKKyAgICBtYWluRnJhbWUtPmV2YWx1YXRlSmF2YVNjcmlwdCgiY2hlY2tTY3JvbGxiYXIo
KTsiKTsKKyAgICBRQ09NUEFSRShtYWluRnJhbWUtPmRvY3VtZW50RWxlbWVudCgpLmZpbmRBbGwo
InNwYW4iKS5hdCgwKS50b1BsYWluVGV4dCgpLCBRU3RyaW5nKCJTVUNDRVNTIikpOworfQorCiB2
b2lkIHRzdF9RV2ViRnJhbWU6OmV2YWx1YXRlV2lsbENhdXNlUmVwYWludCgpCiB7CiAgICAgUVdl
YlZpZXcgdmlldzsKZGlmZiAtLWdpdCBhL1dlYktpdFRvb2xzL0NoYW5nZUxvZyBiL1dlYktpdFRv
b2xzL0NoYW5nZUxvZwppbmRleCAwMDllZWEzLi4yMTc4NzgxIDEwMDY0NAotLS0gYS9XZWJLaXRU
b29scy9DaGFuZ2VMb2cKKysrIGIvV2ViS2l0VG9vbHMvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTkg
QEAKKzIwMTAtMDQtMDEgIEFudG9uaW8gR29tZXMgIDx0b25pa2l0b29Ad2Via2l0Lm9yZz4KKwor
ICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBbUXRdIFJFR1JF
U1NJT046KHI1MDY2NSkgUVdlYkZyYW1lOjpzZXRTY3JvbGxCYXJQb2xpY3koUXQ6OlZlcnRpY2Fs
LFF0OjpTY3JvbGxCYXJBbHdheXNPZmYpIGhhcyBubyBlZmZlY3QuCisgICAgICAgIGh0dHBzOi8v
YnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yOTQzMQorCisgICAgICAgIE1ha2UgcG9z
c2libGUgdG8gRFJUIHRvIHNldCBzY3JvbGxiYXIgcG9saWNpZXMgKG9uLCBvZmYgb3IgYXV0byku
CisKKyAgICAgICAgKiBEdW1wUmVuZGVyVHJlZS9xdC9MYXlvdXRUZXN0Q29udHJvbGxlclF0LmNw
cDoKKyAgICAgICAgKExheW91dFRlc3RDb250cm9sbGVyOjpzZXRTY3JvbGxiYXJQb2xpY3kpOgor
ICAgICAgICAqIER1bXBSZW5kZXJUcmVlL3F0L0xheW91dFRlc3RDb250cm9sbGVyUXQuaDoKKyAg
ICAgICAgKiBRdExhdW5jaGVyL21haW4uY3BwOgorICAgICAgICAoTGF1bmNoZXJXaW5kb3c6OnRv
Z2dsZVNjcm9sbGJhcnMpOgorICAgICAgICAoTGF1bmNoZXJXaW5kb3c6OmNyZWF0ZUNocm9tZSk6
CisKIDIwMTAtMDQtMDUgIEFkYW0gQmFydGggIDxhYmFydGhAd2Via2l0Lm9yZz4KIAogICAgICAg
ICBVbnJldmlld2VkLiAgQWRkIFZpdGFseSBSZXBlc2hrbyBhcyBhIGNvbW1pdHRlci4KZGlmZiAt
LWdpdCBhL1dlYktpdFRvb2xzL0R1bXBSZW5kZXJUcmVlL3F0L0xheW91dFRlc3RDb250cm9sbGVy
UXQuY3BwIGIvV2ViS2l0VG9vbHMvRHVtcFJlbmRlclRyZWUvcXQvTGF5b3V0VGVzdENvbnRyb2xs
ZXJRdC5jcHAKaW5kZXggYjY0ODBjMi4uNjcwM2IwMSAxMDA2NDQKLS0tIGEvV2ViS2l0VG9vbHMv
RHVtcFJlbmRlclRyZWUvcXQvTGF5b3V0VGVzdENvbnRyb2xsZXJRdC5jcHAKKysrIGIvV2ViS2l0
VG9vbHMvRHVtcFJlbmRlclRyZWUvcXQvTGF5b3V0VGVzdENvbnRyb2xsZXJRdC5jcHAKQEAgLTU0
MSw1ICs1NDEsMjkgQEAgYm9vbCBMYXlvdXRUZXN0Q29udHJvbGxlcjo6Y2FsbFNob3VsZENsb3Nl
T25XZWJWaWV3KCkKICAgICByZXR1cm4gZmFsc2U7CiB9CiAKK3ZvaWQgTGF5b3V0VGVzdENvbnRy
b2xsZXI6OnNldFNjcm9sbGJhclBvbGljeShjb25zdCBRU3RyaW5nJiBvcmllbnRhdGlvbiwgY29u
c3QgUVN0cmluZyYgcG9saWN5KQoreworICAgIFF0OjpPcmllbnRhdGlvbiBvOworICAgIFF0OjpT
Y3JvbGxCYXJQb2xpY3kgcDsKKworICAgIGlmIChvcmllbnRhdGlvbiA9PSAidmVydGljYWwiKQor
ICAgICAgICBvID0gUXQ6OlZlcnRpY2FsOworICAgIGVsc2UgaWYgKG9yaWVudGF0aW9uID09ICJo
b3Jpem9udGFsIikKKyAgICAgICAgbyA9IFF0OjpIb3Jpem9udGFsOworICAgIGVsc2UKKyAgICAg
ICAgcmV0dXJuOworCisgICAgaWYgKHBvbGljeSA9PSAib24iKQorICAgICAgICBwID0gUXQ6OlNj
cm9sbEJhckFsd2F5c09uOworICAgIGVsc2UgaWYgKHBvbGljeSA9PSAiYXV0byIpCisgICAgICAg
IHAgPSBRdDo6U2Nyb2xsQmFyQXNOZWVkZWQ7CisgICAgZWxzZSBpZiAocG9saWN5ID09ICJvZmYi
KQorICAgICAgICBwID0gUXQ6OlNjcm9sbEJhckFsd2F5c09mZjsKKyAgICBlbHNlCisgICAgICAg
IHJldHVybjsKKworICAgIG1fZHJ0LT53ZWJQYWdlKCktPm1haW5GcmFtZSgpLT5zZXRTY3JvbGxC
YXJQb2xpY3kobywgcCk7Cit9CisKIGNvbnN0IHVuc2lnbmVkIExheW91dFRlc3RDb250cm9sbGVy
OjptYXhWaWV3V2lkdGggPSA4MDA7CiBjb25zdCB1bnNpZ25lZCBMYXlvdXRUZXN0Q29udHJvbGxl
cjo6bWF4Vmlld0hlaWdodCA9IDYwMDsKZGlmZiAtLWdpdCBhL1dlYktpdFRvb2xzL0R1bXBSZW5k
ZXJUcmVlL3F0L0xheW91dFRlc3RDb250cm9sbGVyUXQuaCBiL1dlYktpdFRvb2xzL0R1bXBSZW5k
ZXJUcmVlL3F0L0xheW91dFRlc3RDb250cm9sbGVyUXQuaAppbmRleCAzNmI1ZjcwLi4zYmQ5ZGI4
IDEwMDY0NAotLS0gYS9XZWJLaXRUb29scy9EdW1wUmVuZGVyVHJlZS9xdC9MYXlvdXRUZXN0Q29u
dHJvbGxlclF0LmgKKysrIGIvV2ViS2l0VG9vbHMvRHVtcFJlbmRlclRyZWUvcXQvTGF5b3V0VGVz
dENvbnRyb2xsZXJRdC5oCkBAIC0xNjUsNiArMTY1LDEyIEBAIHB1YmxpYyBzbG90czoKICAgICBp
bnQgbnVtYmVyT2ZQYWdlcyhmbG9hdCB3aWR0aCA9IG1heFZpZXdXaWR0aCwgZmxvYXQgaGVpZ2h0
ID0gbWF4Vmlld0hlaWdodCk7CiAgICAgYm9vbCBjYWxsU2hvdWxkQ2xvc2VPbldlYlZpZXcoKTsK
IAorICAgIC8qCisgICAgICAgIFBvbGljeSB2YWx1ZXM6ICdvbicsICdhdXRvJyBvciAnb2ZmJy4K
KyAgICAgICAgT3JpZW50YXRpb24gdmFsdWVzOiAndmVydGljYWwnIG9yICdob3Jpem9udGFsJy4K
KyAgICAqLworICAgIHZvaWQgc2V0U2Nyb2xsYmFyUG9saWN5KGNvbnN0IFFTdHJpbmcmIG9yaWVu
dGF0aW9uLCBjb25zdCBRU3RyaW5nJiBwb2xpY3kpOworCiBwcml2YXRlIHNsb3RzOgogICAgIHZv
aWQgcHJvY2Vzc1dvcmsoKTsKIAotLSAKMS42LjAuNAoK
</data>
<flag name="commit-queue"
          id="36079"
          type_id="3"
          status="-"
          setter="tonikitoo"
    />
          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>52568</attachid>
            <date>2010-04-05 14:16:12 -0700</date>
            <delta_ts>2010-04-08 08:18:26 -0700</delta_ts>
            <desc>(committed r57278) patch_2 - v1 - add stubs for Mac, Gtk, Wx and Win DRTs to implement this method</desc>
            <filename>0002--Qt-REGRESSION-r50665-QWebFrame-setScrollBarPoli.patch</filename>
            <type>text/plain</type>
            <size>8430</size>
            <attacher name="Antonio Gomes">tonikitoo</attacher>
            
              <data encoding="base64">RnJvbSA1YzZjZTJkMDM1OGYyNDk1MGUyNjFhNTZkMTNjYTcyMGQyOGY0ODRmIE1vbiBTZXAgMTcg
MDA6MDA6MDAgMjAwMQpGcm9tOiBBbnRvbmlvIEdvbWVzIDx0b25pa2l0b29Ad2Via2l0Lm9yZz4K
RGF0ZTogTW9uLCA1IEFwciAyMDEwIDE2OjUzOjE2IC0wNDAwClN1YmplY3Q6IFtQQVRDSF0gW1F0
XSBSRUdSRVNTSU9OOihyNTA2NjUpIFFXZWJGcmFtZTo6c2V0U2Nyb2xsQmFyUG9saWN5KFF0OjpW
ZXJ0aWNhbCxRdDo6U2Nyb2xsQmFyQWx3YXlzT2ZmKSBoYXMgbm8gZWZmZWN0LiAocGFydCBJSSkK
IGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yOTQzMQoKUmV2aWV3ZWQg
YnkgTk9CT0RZIChPT1BTISkuClBhdGNoIGJ5IEFudG9uaW8gR29tZXMgPHRvbmlraXRvb0B3ZWJr
aXQub3JnPgoKQWRkZWQgc3R1YnMgZm9yIE1hYywgd2luLCBndGsgYW5kIHd4IERSVHMgdG8gaW1w
bGVtZW50IHNldFNjcm9sbGJhclBvbGljeSBtZXRob2QuCgoqIER1bXBSZW5kZXJUcmVlL0xheW91
dFRlc3RDb250cm9sbGVyLmNwcDoKKHNldFNjcm9sbGJhclBvbGljeUNhbGxiYWNrKToKKExheW91
dFRlc3RDb250cm9sbGVyOjpzdGF0aWNGdW5jdGlvbnMpOgoqIER1bXBSZW5kZXJUcmVlL0xheW91
dFRlc3RDb250cm9sbGVyLmg6CiogRHVtcFJlbmRlclRyZWUvZ3RrL0xheW91dFRlc3RDb250cm9s
bGVyR3RrLmNwcDoKKExheW91dFRlc3RDb250cm9sbGVyOjpzZXRTY3JvbGxiYXJQb2xpY3kpOgoq
IER1bXBSZW5kZXJUcmVlL21hYy9MYXlvdXRUZXN0Q29udHJvbGxlck1hYy5tbToKKExheW91dFRl
c3RDb250cm9sbGVyOjpzZXRTY3JvbGxiYXJQb2xpY3kpOgoqIER1bXBSZW5kZXJUcmVlL3dpbi9M
YXlvdXRUZXN0Q29udHJvbGxlcldpbi5jcHA6CihMYXlvdXRUZXN0Q29udHJvbGxlcjo6c2V0U2Ny
b2xsYmFyUG9saWN5KToKKiBEdW1wUmVuZGVyVHJlZS93eC9MYXlvdXRUZXN0Q29udHJvbGxlcld4
LmNwcDoKKExheW91dFRlc3RDb250cm9sbGVyOjpzZXRTY3JvbGxiYXJQb2xpY3kpOgotLS0KIFdl
YktpdFRvb2xzL0NoYW5nZUxvZyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgICAyMiAr
KysrKysrKysrKysrKysrKysrKwogLi4uL0R1bXBSZW5kZXJUcmVlL0xheW91dFRlc3RDb250cm9s
bGVyLmNwcCAgICAgICAgfCAgIDE2ICsrKysrKysrKysrKysrCiBXZWJLaXRUb29scy9EdW1wUmVu
ZGVyVHJlZS9MYXlvdXRUZXN0Q29udHJvbGxlci5oICB8ICAgIDEgKwogLi4uL0R1bXBSZW5kZXJU
cmVlL2d0ay9MYXlvdXRUZXN0Q29udHJvbGxlckd0ay5jcHAgfCAgICA1ICsrKysKIC4uLi9EdW1w
UmVuZGVyVHJlZS9tYWMvTGF5b3V0VGVzdENvbnRyb2xsZXJNYWMubW0gIHwgICAgNSArKysrCiAu
Li4vRHVtcFJlbmRlclRyZWUvd2luL0xheW91dFRlc3RDb250cm9sbGVyV2luLmNwcCB8ICAgIDUg
KysrKwogLi4uL0R1bXBSZW5kZXJUcmVlL3d4L0xheW91dFRlc3RDb250cm9sbGVyV3guY3BwICAg
fCAgICA1ICsrKysKIDcgZmlsZXMgY2hhbmdlZCwgNTkgaW5zZXJ0aW9ucygrKSwgMCBkZWxldGlv
bnMoLSkKCmRpZmYgLS1naXQgYS9XZWJLaXRUb29scy9DaGFuZ2VMb2cgYi9XZWJLaXRUb29scy9D
aGFuZ2VMb2cKaW5kZXggMjE3ODc4MS4uYTA3MzliYiAxMDA2NDQKLS0tIGEvV2ViS2l0VG9vbHMv
Q2hhbmdlTG9nCisrKyBiL1dlYktpdFRvb2xzL0NoYW5nZUxvZwpAQCAtMSwzICsxLDI1IEBACisy
MDEwLTA0LTA1ICBBbnRvbmlvIEdvbWVzICA8dG9uaWtpdG9vQHdlYmtpdC5vcmc+CisKKyAgICAg
ICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgW1F0XSBSRUdSRVNTSU9O
OihyNTA2NjUpIFFXZWJGcmFtZTo6c2V0U2Nyb2xsQmFyUG9saWN5KFF0OjpWZXJ0aWNhbCxRdDo6
U2Nyb2xsQmFyQWx3YXlzT2ZmKSBoYXMgbm8gZWZmZWN0LgorICAgICAgICBodHRwczovL2J1Z3Mu
d2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9Mjk0MzEKKworICAgICAgICBBZGRlZCBzdHVicyBm
b3IgTWFjLCB3aW4sIGd0ayBhbmQgd3ggRFJUcyB0byBpbXBsZW1lbnQgc2V0U2Nyb2xsYmFyUG9s
aWN5IG1ldGhvZC4KKworICAgICAgICAqIER1bXBSZW5kZXJUcmVlL0xheW91dFRlc3RDb250cm9s
bGVyLmNwcDoKKyAgICAgICAgKHNldFNjcm9sbGJhclBvbGljeUNhbGxiYWNrKToKKyAgICAgICAg
KExheW91dFRlc3RDb250cm9sbGVyOjpzdGF0aWNGdW5jdGlvbnMpOgorICAgICAgICAqIER1bXBS
ZW5kZXJUcmVlL0xheW91dFRlc3RDb250cm9sbGVyLmg6CisgICAgICAgICogRHVtcFJlbmRlclRy
ZWUvZ3RrL0xheW91dFRlc3RDb250cm9sbGVyR3RrLmNwcDoKKyAgICAgICAgKExheW91dFRlc3RD
b250cm9sbGVyOjpzZXRTY3JvbGxiYXJQb2xpY3kpOgorICAgICAgICAqIER1bXBSZW5kZXJUcmVl
L21hYy9MYXlvdXRUZXN0Q29udHJvbGxlck1hYy5tbToKKyAgICAgICAgKExheW91dFRlc3RDb250
cm9sbGVyOjpzZXRTY3JvbGxiYXJQb2xpY3kpOgorICAgICAgICAqIER1bXBSZW5kZXJUcmVlL3dp
bi9MYXlvdXRUZXN0Q29udHJvbGxlcldpbi5jcHA6CisgICAgICAgIChMYXlvdXRUZXN0Q29udHJv
bGxlcjo6c2V0U2Nyb2xsYmFyUG9saWN5KToKKyAgICAgICAgKiBEdW1wUmVuZGVyVHJlZS93eC9M
YXlvdXRUZXN0Q29udHJvbGxlcld4LmNwcDoKKyAgICAgICAgKExheW91dFRlc3RDb250cm9sbGVy
OjpzZXRTY3JvbGxiYXJQb2xpY3kpOgorCiAyMDEwLTA0LTAxICBBbnRvbmlvIEdvbWVzICA8dG9u
aWtpdG9vQHdlYmtpdC5vcmc+CiAKICAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISku
CmRpZmYgLS1naXQgYS9XZWJLaXRUb29scy9EdW1wUmVuZGVyVHJlZS9MYXlvdXRUZXN0Q29udHJv
bGxlci5jcHAgYi9XZWJLaXRUb29scy9EdW1wUmVuZGVyVHJlZS9MYXlvdXRUZXN0Q29udHJvbGxl
ci5jcHAKaW5kZXggMjU1NGZhNC4uNGJmMzVjNiAxMDA2NDQKLS0tIGEvV2ViS2l0VG9vbHMvRHVt
cFJlbmRlclRyZWUvTGF5b3V0VGVzdENvbnRyb2xsZXIuY3BwCisrKyBiL1dlYktpdFRvb2xzL0R1
bXBSZW5kZXJUcmVlL0xheW91dFRlc3RDb250cm9sbGVyLmNwcApAQCAtMTI4MSw2ICsxMjgxLDIx
IEBAIHN0YXRpYyBKU1ZhbHVlUmVmIHdoaXRlTGlzdEFjY2Vzc0Zyb21PcmlnaW5DYWxsYmFjayhK
U0NvbnRleHRSZWYgY29udGV4dCwgSlNPYmplCiAgICAgcmV0dXJuIEpTVmFsdWVNYWtlVW5kZWZp
bmVkKGNvbnRleHQpOwogfQogCitzdGF0aWMgSlNWYWx1ZVJlZiBzZXRTY3JvbGxiYXJQb2xpY3lD
YWxsYmFjayhKU0NvbnRleHRSZWYgY29udGV4dCwgSlNPYmplY3RSZWYsIEpTT2JqZWN0UmVmIHRo
aXNPYmplY3QsIHNpemVfdCBhcmd1bWVudENvdW50LCBjb25zdCBKU1ZhbHVlUmVmIGFyZ3VtZW50
c1tdLCBKU1ZhbHVlUmVmKiBleGNlcHRpb24pCit7CisgICAgaWYgKGFyZ3VtZW50Q291bnQgIT0g
MikKKyAgICAgICAgcmV0dXJuIEpTVmFsdWVNYWtlVW5kZWZpbmVkKGNvbnRleHQpOworCisgICAg
SlNSZXRhaW5QdHI8SlNTdHJpbmdSZWY+IG9yaWVudGF0aW9uKEFkb3B0LCBKU1ZhbHVlVG9TdHJp
bmdDb3B5KGNvbnRleHQsIGFyZ3VtZW50c1swXSwgZXhjZXB0aW9uKSk7CisgICAgQVNTRVJUKCEq
ZXhjZXB0aW9uKTsKKyAgICBKU1JldGFpblB0cjxKU1N0cmluZ1JlZj4gcG9saWN5KEFkb3B0LCBK
U1ZhbHVlVG9TdHJpbmdDb3B5KGNvbnRleHQsIGFyZ3VtZW50c1sxXSwgZXhjZXB0aW9uKSk7Cisg
ICAgQVNTRVJUKCEqZXhjZXB0aW9uKTsKKworICAgIExheW91dFRlc3RDb250cm9sbGVyKiBjb250
cm9sbGVyID0gc3RhdGljX2Nhc3Q8TGF5b3V0VGVzdENvbnRyb2xsZXIqPihKU09iamVjdEdldFBy
aXZhdGUodGhpc09iamVjdCkpOworICAgIGNvbnRyb2xsZXItPnNldFNjcm9sbGJhclBvbGljeShv
cmllbnRhdGlvbi5nZXQoKSwgcG9saWN5LmdldCgpKTsKKyAgICByZXR1cm4gSlNWYWx1ZU1ha2VV
bmRlZmluZWQoY29udGV4dCk7Cit9CisKIHN0YXRpYyBKU1ZhbHVlUmVmIGFkZFVzZXJTY3JpcHRD
YWxsYmFjayhKU0NvbnRleHRSZWYgY29udGV4dCwgSlNPYmplY3RSZWYsIEpTT2JqZWN0UmVmIHRo
aXNPYmplY3QsIHNpemVfdCBhcmd1bWVudENvdW50LCBjb25zdCBKU1ZhbHVlUmVmIGFyZ3VtZW50
c1tdLCBKU1ZhbHVlUmVmKiBleGNlcHRpb24pCiB7CiAgICAgaWYgKGFyZ3VtZW50Q291bnQgIT0g
MikKQEAgLTE1MTAsNiArMTUyNSw3IEBAIEpTU3RhdGljRnVuY3Rpb24qIExheW91dFRlc3RDb250
cm9sbGVyOjpzdGF0aWNGdW5jdGlvbnMoKQogICAgICAgICB7ICJ3YWl0VW50aWxEb25lIiwgd2Fp
dFVudGlsRG9uZUNhbGxiYWNrLCBrSlNQcm9wZXJ0eUF0dHJpYnV0ZVJlYWRPbmx5IHwga0pTUHJv
cGVydHlBdHRyaWJ1dGVEb250RGVsZXRlIH0sCiAgICAgICAgIHsgIndpbmRvd0NvdW50Iiwgd2lu
ZG93Q291bnRDYWxsYmFjaywga0pTUHJvcGVydHlBdHRyaWJ1dGVSZWFkT25seSB8IGtKU1Byb3Bl
cnR5QXR0cmlidXRlRG9udERlbGV0ZSB9LAogICAgICAgICB7ICJ3aGl0ZUxpc3RBY2Nlc3NGcm9t
T3JpZ2luIiwgd2hpdGVMaXN0QWNjZXNzRnJvbU9yaWdpbkNhbGxiYWNrLCBrSlNQcm9wZXJ0eUF0
dHJpYnV0ZVJlYWRPbmx5IHwga0pTUHJvcGVydHlBdHRyaWJ1dGVEb250RGVsZXRlIH0sCisgICAg
ICAgIHsgInNldFNjcm9sbGJhclBvbGljeSIsIHNldFNjcm9sbGJhclBvbGljeUNhbGxiYWNrLCBr
SlNQcm9wZXJ0eUF0dHJpYnV0ZVJlYWRPbmx5IHwga0pTUHJvcGVydHlBdHRyaWJ1dGVEb250RGVs
ZXRlIH0sCiAgICAgICAgIHsgMCwgMCwgMCB9CiAgICAgfTsKIApkaWZmIC0tZ2l0IGEvV2ViS2l0
VG9vbHMvRHVtcFJlbmRlclRyZWUvTGF5b3V0VGVzdENvbnRyb2xsZXIuaCBiL1dlYktpdFRvb2xz
L0R1bXBSZW5kZXJUcmVlL0xheW91dFRlc3RDb250cm9sbGVyLmgKaW5kZXggM2M3MGY5OC4uOGE4
ZjBmNSAxMDA2NDQKLS0tIGEvV2ViS2l0VG9vbHMvRHVtcFJlbmRlclRyZWUvTGF5b3V0VGVzdENv
bnRyb2xsZXIuaAorKysgYi9XZWJLaXRUb29scy9EdW1wUmVuZGVyVHJlZS9MYXlvdXRUZXN0Q29u
dHJvbGxlci5oCkBAIC05NSw2ICs5NSw3IEBAIHB1YmxpYzoKICAgICB2b2lkIHNldFhTU0F1ZGl0
b3JFbmFibGVkKGJvb2wgZmxhZyk7CiAgICAgdm9pZCBzZXRGcmFtZUZsYXR0ZW5pbmdFbmFibGVk
KGJvb2wgZW5hYmxlKTsKICAgICB2b2lkIHNldFNwYXRpYWxOYXZpZ2F0aW9uRW5hYmxlZChib29s
IGVuYWJsZSk7CisgICAgdm9pZCBzZXRTY3JvbGxiYXJQb2xpY3koSlNTdHJpbmdSZWYgb3JpZW50
YXRpb24sIEpTU3RyaW5nUmVmIHBvbGljeSk7CiAKICAgICB2b2lkIHdhaXRGb3JQb2xpY3lEZWxl
Z2F0ZSgpOwogICAgIHNpemVfdCB3ZWJIaXN0b3J5SXRlbUNvdW50KCk7CmRpZmYgLS1naXQgYS9X
ZWJLaXRUb29scy9EdW1wUmVuZGVyVHJlZS9ndGsvTGF5b3V0VGVzdENvbnRyb2xsZXJHdGsuY3Bw
IGIvV2ViS2l0VG9vbHMvRHVtcFJlbmRlclRyZWUvZ3RrL0xheW91dFRlc3RDb250cm9sbGVyR3Rr
LmNwcAppbmRleCA3YzFiNmU3Li5jNjZlY2M3IDEwMDY0NAotLS0gYS9XZWJLaXRUb29scy9EdW1w
UmVuZGVyVHJlZS9ndGsvTGF5b3V0VGVzdENvbnRyb2xsZXJHdGsuY3BwCisrKyBiL1dlYktpdFRv
b2xzL0R1bXBSZW5kZXJUcmVlL2d0ay9MYXlvdXRUZXN0Q29udHJvbGxlckd0ay5jcHAKQEAgLTI0
NCw2ICsyNDQsMTEgQEAgdm9pZCBMYXlvdXRUZXN0Q29udHJvbGxlcjo6d2FpdEZvclBvbGljeURl
bGVnYXRlKCkKICAgICBzZXRXYWl0VG9EdW1wKHRydWUpOwogfQogCit2b2lkIExheW91dFRlc3RD
b250cm9sbGVyOjpzZXRTY3JvbGxiYXJQb2xpY3koSlNTdHJpbmdSZWYgb3JpZW50YXRpb24sIEpT
U3RyaW5nUmVmIHBvbGljeSkKK3sKKyAgICAvLyBGSVhNRTogaW1wbGVtZW50Cit9CisKIHZvaWQg
TGF5b3V0VGVzdENvbnRyb2xsZXI6OndoaXRlTGlzdEFjY2Vzc0Zyb21PcmlnaW4oSlNTdHJpbmdS
ZWYgc291cmNlT3JpZ2luLCBKU1N0cmluZ1JlZiBwcm90b2NvbCwgSlNTdHJpbmdSZWYgaG9zdCwg
Ym9vbCBpbmNsdWRlU3ViZG9tYWlucykKIHsKICAgICBnY2hhciogc291cmNlT3JpZ2luR0NoYXIg
PSBKU1N0cmluZ0NvcHlVVEY4Q1N0cmluZyhzb3VyY2VPcmlnaW4pOwpkaWZmIC0tZ2l0IGEvV2Vi
S2l0VG9vbHMvRHVtcFJlbmRlclRyZWUvbWFjL0xheW91dFRlc3RDb250cm9sbGVyTWFjLm1tIGIv
V2ViS2l0VG9vbHMvRHVtcFJlbmRlclRyZWUvbWFjL0xheW91dFRlc3RDb250cm9sbGVyTWFjLm1t
CmluZGV4IGYzMzI2MzAuLjY4Y2UxZGUgMTAwNjQ0Ci0tLSBhL1dlYktpdFRvb2xzL0R1bXBSZW5k
ZXJUcmVlL21hYy9MYXlvdXRUZXN0Q29udHJvbGxlck1hYy5tbQorKysgYi9XZWJLaXRUb29scy9E
dW1wUmVuZGVyVHJlZS9tYWMvTGF5b3V0VGVzdENvbnRyb2xsZXJNYWMubW0KQEAgLTU2OCw2ICs1
NjgsMTEgQEAgdm9pZCBMYXlvdXRUZXN0Q29udHJvbGxlcjo6d2hpdGVMaXN0QWNjZXNzRnJvbU9y
aWdpbihKU1N0cmluZ1JlZiBzb3VyY2VPcmlnaW4sIEoKICAgICBbV2ViVmlldyBfd2hpdGVMaXN0
QWNjZXNzRnJvbU9yaWdpbjpzb3VyY2VPcmlnaW5OUyBkZXN0aW5hdGlvblByb3RvY29sOmRlc3Rp
bmF0aW9uUHJvdG9jb2xOUyBkZXN0aW5hdGlvbkhvc3Q6ZGVzdGluYXRpb25Ib3N0TlMgYWxsb3dE
ZXN0aW5hdGlvblN1YmRvbWFpbnM6YWxsb3dEZXN0aW5hdGlvblN1YmRvbWFpbnNdOwogfQogCit2
b2lkIExheW91dFRlc3RDb250cm9sbGVyOjpzZXRTY3JvbGxiYXJQb2xpY3koSlNTdHJpbmdSZWYg
b3JpZW50YXRpb24sIEpTU3RyaW5nUmVmIHBvbGljeSkKK3sKKyAgICAvLyBGSVhNRTogaW1wbGVt
ZW50Cit9CisKIHZvaWQgTGF5b3V0VGVzdENvbnRyb2xsZXI6OmFkZFVzZXJTY3JpcHQoSlNTdHJp
bmdSZWYgc291cmNlLCBib29sIHJ1bkF0U3RhcnQpCiB7CiAgICAgUmV0YWluUHRyPENGU3RyaW5n
UmVmPiBzb3VyY2VDRihBZG9wdENGLCBKU1N0cmluZ0NvcHlDRlN0cmluZyhrQ0ZBbGxvY2F0b3JE
ZWZhdWx0LCBzb3VyY2UpKTsKZGlmZiAtLWdpdCBhL1dlYktpdFRvb2xzL0R1bXBSZW5kZXJUcmVl
L3dpbi9MYXlvdXRUZXN0Q29udHJvbGxlcldpbi5jcHAgYi9XZWJLaXRUb29scy9EdW1wUmVuZGVy
VHJlZS93aW4vTGF5b3V0VGVzdENvbnRyb2xsZXJXaW4uY3BwCmluZGV4IGFkNzU3ZTQuLmJiMGYy
YmUgMTAwNjQ0Ci0tLSBhL1dlYktpdFRvb2xzL0R1bXBSZW5kZXJUcmVlL3dpbi9MYXlvdXRUZXN0
Q29udHJvbGxlcldpbi5jcHAKKysrIGIvV2ViS2l0VG9vbHMvRHVtcFJlbmRlclRyZWUvd2luL0xh
eW91dFRlc3RDb250cm9sbGVyV2luLmNwcApAQCAtOTg2LDYgKzk4NiwxMSBAQCB2b2lkIExheW91
dFRlc3RDb250cm9sbGVyOjp3aGl0ZUxpc3RBY2Nlc3NGcm9tT3JpZ2luKEpTU3RyaW5nUmVmIHNv
dXJjZU9yaWdpbiwgSgogICAgIHdlYlZpZXctPndoaXRlTGlzdEFjY2Vzc0Zyb21PcmlnaW4oYnN0
clQoc291cmNlT3JpZ2luKS5HZXRCU1RSKCksIGJzdHJUKGRlc3RpbmF0aW9uUHJvdG9jb2wpLkdl
dEJTVFIoKSwgYnN0clQoZGVzdGluYXRpb25Ib3N0KS5HZXRCU1RSKCksIGFsbG93RGVzdGluYXRp
b25TdWJkb21haW5zKTsKIH0KIAordm9pZCBMYXlvdXRUZXN0Q29udHJvbGxlcjo6c2V0U2Nyb2xs
YmFyUG9saWN5KEpTU3RyaW5nUmVmIG9yaWVudGF0aW9uLCBKU1N0cmluZ1JlZiBwb2xpY3kpCit7
CisgICAgLy8gRklYTUU6IGltcGxlbWVudAorfQorCiB2b2lkIExheW91dFRlc3RDb250cm9sbGVy
OjphZGRVc2VyU2NyaXB0KEpTU3RyaW5nUmVmIHNvdXJjZSwgYm9vbCBydW5BdFN0YXJ0KQogewog
ICAgIENPTVB0cjxJV2ViVmlld1ByaXZhdGU+IHdlYlZpZXc7CmRpZmYgLS1naXQgYS9XZWJLaXRU
b29scy9EdW1wUmVuZGVyVHJlZS93eC9MYXlvdXRUZXN0Q29udHJvbGxlcld4LmNwcCBiL1dlYktp
dFRvb2xzL0R1bXBSZW5kZXJUcmVlL3d4L0xheW91dFRlc3RDb250cm9sbGVyV3guY3BwCmluZGV4
IDNhZDU5MmYuLjYxY2NhNzcgMTAwNjQ0Ci0tLSBhL1dlYktpdFRvb2xzL0R1bXBSZW5kZXJUcmVl
L3d4L0xheW91dFRlc3RDb250cm9sbGVyV3guY3BwCisrKyBiL1dlYktpdFRvb2xzL0R1bXBSZW5k
ZXJUcmVlL3d4L0xheW91dFRlc3RDb250cm9sbGVyV3guY3BwCkBAIC0zNjUsNiArMzY1LDExIEBA
IHZvaWQgTGF5b3V0VGVzdENvbnRyb2xsZXI6OndoaXRlTGlzdEFjY2Vzc0Zyb21PcmlnaW4oSlNT
dHJpbmdSZWYgc291cmNlT3JpZ2luLCBKCiAKIH0KIAordm9pZCBMYXlvdXRUZXN0Q29udHJvbGxl
cjo6c2V0U2Nyb2xsYmFyUG9saWN5KEpTU3RyaW5nUmVmIG9yaWVudGF0aW9uLCBKU1N0cmluZ1Jl
ZiBwb2xpY3kpCit7CisgICAgLy8gRklYTUU6IGltcGxlbWVudAorfQorCiBKU1JldGFpblB0cjxK
U1N0cmluZ1JlZj4gTGF5b3V0VGVzdENvbnRyb2xsZXI6OmNvdW50ZXJWYWx1ZUZvckVsZW1lbnRC
eUlkKEpTU3RyaW5nUmVmIGlkKQogewogICAgIHJldHVybiAwOwotLSAKMS42LjAuNAoK
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>52641</attachid>
            <date>2010-04-06 08:33:35 -0700</date>
            <delta_ts>2010-04-07 08:12:47 -0700</delta_ts>
            <desc>patch_1 - v2.2 - attempt to build on Mac (same as &quot;patch_1 - v2.1&quot;)</desc>
            <filename>0001--Qt-REGRESSION-r50665-QWebFrame-setScrollBarPoli.patch</filename>
            <type>text/plain</type>
            <size>26030</size>
            <attacher name="Antonio Gomes">tonikitoo</attacher>
            
              <data encoding="base64">RnJvbSA0Y2RhYmYyOWMyZGU3MDhjNzUwYzg5Njk4ODRmMmZmMjNkZmIxZTczIE1vbiBTZXAgMTcg
MDA6MDA6MDAgMjAwMQpGcm9tOiBBbnRvbmlvIEdvbWVzIDx0b25pa2l0b29Ad2Via2l0Lm9yZz4K
RGF0ZTogVGh1LCAxIEFwciAyMDEwIDE2OjEyOjMzIC0wNDAwClN1YmplY3Q6IFtQQVRDSF0gW1F0
XSBSRUdSRVNTSU9OOihyNTA2NjUpIFFXZWJGcmFtZTo6c2V0U2Nyb2xsQmFyUG9saWN5KFF0OjpW
ZXJ0aWNhbCxRdDo6U2Nyb2xsQmFyQWx3YXlzT2ZmKSBoYXMgbm8gZWZmZWN0LgogaHR0cHM6Ly9i
dWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTI5NDMxCgpSZXZpZXdlZCBieSBOT0JPRFkg
KE9PUFMhKS4KUGF0Y2ggYnkgQW50b25pbyBHb21lcyA8dG9uaWtpdG9vQHdlYmtpdC5vcmc+CgpX
ZWJDb3JlOgoKVGVzdDogZmFzdC9vdmVyZmxvdy9zY3JvbGxiYXItcmVzdG9yZWQtYW5kLXRoZW4t
bG9ja2VkLmh0bWwKClBhdGNoIGludHJvZHVjZXMgYSBsb2NrIHNjcm9sbGJhcnMgY29uY2VwdCB0
byBTY3JvbGxWaWV3LCBhcyBpbiBXZWJEeW5hbWljU2Nyb2xsQmFyc1ZpZXcubW0vaApvbiBXZWJL
aXQvbWFjLiBJdCBpcyBuZWVkZWQgYmVjYXVzZSBpbiBRdFdlYktpdCwgd2UgaGF2ZSBBcGkgZm9y
IHNldHRpbmcgYm90aCB2ZXJ0aWNhbCBhbmQKaG9yaXpvbnRhbCBzY3JvbGxiYXJzIG9uL29mZi9h
dXRvLiBXaGVuIGl0IGlzIHNldCB0byBvZmYsIGZvciBleGFtcGxlLCBpdCBzaG91bGQgcmVtYWlu
CmFzIHN1Y2gsIHVubGVzcyB1bnNldC4KCkZvciB0aGUgbG9ja2luZyBjb25jZXB0LCBvbmUgYWRk
aXRpb25hbCAnbG9jaycgb3B0aW9uYWwgcGFyYW1ldGVyIHdhcyBhZGRlZCB0byBTY3JvbGxWaWV3
J3MKc2V0SG9yaXpvbnRhbFNjcm9sbGJhck1vZGUgYW5kIHNldFZlcnRpY2FsU2Nyb2xsYmFyTW9k
ZS4gQXMgaXQgaXMgb3B0aW9uYWwsIGFsbCBwcmV2aW91cyBjb2RlCmNhbGxpbmcgdGhlbSBkbyBu
b3QgbmVlZCBtb2RpZmljYXRpb24uIHNldFNjcm9sbGJhck1vZGVzJ3Mgc2lnbmF0dXJlIHJlbWFp
bnMgYXMgaXMsIGJ1dCBib2R5Cmhvbm9ycyB0aGUgY3VycmVudCBsb2NrIHN0YXRlLgoKVHdvIG9w
dGlvbmFsIHBhcmFtZXRlcnMgd2VyZSBhbHNvIGFkZGVkIHRvIEZyYW1lJ3MgY3JlYXRlVmlldyBt
ZXRob2QsIGZvciBob3Jpem9udGFsIGFuZCB2ZXJ0aWNhbApsb2NrIHN0YXRlIHBlcnNpc3RlbmNl
IGNyb3NzIHBhZ2UgbG9hZHMuCgoqIHBhZ2UvRnJhbWUuY3BwOgooV2ViQ29yZTo6RnJhbWU6OmNy
ZWF0ZVZpZXcpOgoqIHBsYXRmb3JtL1Njcm9sbFZpZXcuY3BwOgooV2ViQ29yZTo6U2Nyb2xsVmll
dzo6U2Nyb2xsVmlldyk6CihXZWJDb3JlOjpTY3JvbGxWaWV3OjpzZXRTY3JvbGxiYXJNb2Rlcyk6
CihXZWJDb3JlOjpTY3JvbGxWaWV3OjpzZXRIb3Jpem9udGFsU2Nyb2xsYmFyTW9kZSk6CihXZWJD
b3JlOjpTY3JvbGxWaWV3OjpzZXRWZXJ0aWNhbFNjcm9sbGJhck1vZGUpOgoqIHBsYXRmb3JtL1Nj
cm9sbFZpZXcuaDoKKFdlYkNvcmU6OlNjcm9sbFZpZXc6OnNldEhvcml6b250YWxTY3JvbGxiYXJM
b2NrKToKKFdlYkNvcmU6OlNjcm9sbFZpZXc6OmlzSG9yaXpvbnRhbFNjcm9sbGJhckxvY2tlZCk6
CihXZWJDb3JlOjpTY3JvbGxWaWV3OjpzZXRWZXJ0aWNhbFNjcm9sbGJhckxvY2spOgooV2ViQ29y
ZTo6U2Nyb2xsVmlldzo6aXNWZXJ0aWNhbFNjcm9sbGJhckxvY2tlZCk6CihXZWJDb3JlOjpTY3Jv
bGxWaWV3OjpzZXRTY3JvbGxpbmdNb2Rlc0xvY2tlZCk6CgpXZWJLaXQvcXQ6CgpNYWtlIHVzZSBv
ZiB0aGUgbmV3IGxvY2sgcGFyYW1ldGVyIG9mIHNldHtWZXJ0aWNhbCxIb3Jpem9udGFsfVNjcm9s
bGJhck1vZGUuCgpBbHdheXMgYWRkZWQgYSBxdCBhdXRvIHRlc3QgZm9yIHNldCBzY3JvbGxiYXIg
cG9saWN5IGZlYXR1cmUuCgoqIEFwaS9xd2ViZnJhbWUuY3BwOgooUVdlYkZyYW1lOjpzZXRTY3Jv
bGxCYXJQb2xpY3kpOgoqIHRlc3RzL3F3ZWJmcmFtZS90c3RfcXdlYmZyYW1lLmNwcDoKKiBXZWJD
b3JlU3VwcG9ydC9GcmFtZUxvYWRlckNsaWVudFF0LmNwcDoKKEZyYW1lTG9hZGVyQ2xpZW50UXQ6
OnRyYW5zaXRpb25Ub0NvbW1pdHRlZEZvck5ld1BhZ2UpOgoKV2ViS2l0VG9vbHM6CgpNYWtlIHBv
c3NpYmxlIHRvIERSVCB0byBzZXQgc2Nyb2xsYmFyIHBvbGljaWVzIChvbiwgb2ZmIG9yIGF1dG8p
LgoKKiBEdW1wUmVuZGVyVHJlZS9xdC9MYXlvdXRUZXN0Q29udHJvbGxlclF0LmNwcDoKKExheW91
dFRlc3RDb250cm9sbGVyOjpzZXRTY3JvbGxiYXJQb2xpY3kpOgoqIER1bXBSZW5kZXJUcmVlL3F0
L0xheW91dFRlc3RDb250cm9sbGVyUXQuaDoKKiBRdExhdW5jaGVyL21haW4uY3BwOgooTGF1bmNo
ZXJXaW5kb3c6OnRvZ2dsZVNjcm9sbGJhcnMpOgooTGF1bmNoZXJXaW5kb3c6OmNyZWF0ZUNocm9t
ZSk6CgpMYXlvdXRUZXN0czoKCiogZmFzdC9vdmVyZmxvdy9zY3JvbGxiYXItcmVzdG9yZWQtYW5k
LXRoZW4tbG9ja2VkLWV4cGVjdGVkLnR4dDogQWRkZWQuCiogZmFzdC9vdmVyZmxvdy9zY3JvbGxi
YXItcmVzdG9yZWQtYW5kLXRoZW4tbG9ja2VkLmh0bWw6IEFkZGVkLgotLS0KIExheW91dFRlc3Rz
L0NoYW5nZUxvZyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgICAxMCArKysrCiAuLi5z
Y3JvbGxiYXItcmVzdG9yZWQtYW5kLXRoZW4tbG9ja2VkLWV4cGVjdGVkLnR4dCB8ICAgIDggKysr
CiAuLi4vc2Nyb2xsYmFyLXJlc3RvcmVkLWFuZC10aGVuLWxvY2tlZC5odG1sICAgICAgICB8ICAg
NDEgKysrKysrKysrKysrKysrKwogTGF5b3V0VGVzdHMvcGxhdGZvcm0vZ3RrL1NraXBwZWQgICAg
ICAgICAgICAgICAgICAgfCAgICAzICsKIExheW91dFRlc3RzL3BsYXRmb3JtL21hYy9Ta2lwcGVk
ICAgICAgICAgICAgICAgICAgIHwgICAgMiArCiBMYXlvdXRUZXN0cy9wbGF0Zm9ybS93aW4vU2tp
cHBlZCAgICAgICAgICAgICAgICAgICB8ICAgIDMgKwogV2ViQ29yZS9DaGFuZ2VMb2cgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgfCAgIDM2ICsrKysrKysrKysrKysrCiBXZWJDb3Jl
L1dlYkNvcmUuYmFzZS5leHAgICAgICAgICAgICAgICAgICAgICAgICAgICB8ICAgIDEgLQogV2Vi
Q29yZS9wYWdlL0ZyYW1lLmNwcCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCAgICA2ICsr
LQogV2ViQ29yZS9wYWdlL0ZyYW1lLmggICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCAg
ICAzICstCiBXZWJDb3JlL3BsYXRmb3JtL1Njcm9sbFZpZXcuY3BwICAgICAgICAgICAgICAgICAg
ICB8ICAgNDkgKysrKysrKysrKysrKysrKysrLQogV2ViQ29yZS9wbGF0Zm9ybS9TY3JvbGxWaWV3
LmggICAgICAgICAgICAgICAgICAgICAgfCAgIDE4ICsrKysrKy0KIFdlYktpdC9xdC9BcGkvcXdl
YmZyYW1lLmNwcCAgICAgICAgICAgICAgICAgICAgICAgIHwgICAgNCArLQogV2ViS2l0L3F0L0No
YW5nZUxvZyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCAgIDE3ICsrKysrKysKIFdl
YktpdC9xdC9XZWJDb3JlU3VwcG9ydC9GcmFtZUxvYWRlckNsaWVudFF0LmNwcCAgIHwgICAgOSAr
KystCiBXZWJLaXQvcXQvdGVzdHMvcXdlYmZyYW1lL3RzdF9xd2ViZnJhbWUuY3BwICAgICAgICB8
ICAgMzMgKysrKysrKysrKysrKwogV2ViS2l0VG9vbHMvQ2hhbmdlTG9nICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgfCAgIDE2ICsrKysrKwogLi4uL0R1bXBSZW5kZXJUcmVlL3F0L0xheW91
dFRlc3RDb250cm9sbGVyUXQuY3BwICAgfCAgIDI0ICsrKysrKysrKysKIC4uLi9EdW1wUmVuZGVy
VHJlZS9xdC9MYXlvdXRUZXN0Q29udHJvbGxlclF0LmggICAgIHwgICAgNiArKwogMTkgZmlsZXMg
Y2hhbmdlZCwgMjc2IGluc2VydGlvbnMoKyksIDEzIGRlbGV0aW9ucygtKQogY3JlYXRlIG1vZGUg
MTAwNjQ0IExheW91dFRlc3RzL2Zhc3Qvb3ZlcmZsb3cvc2Nyb2xsYmFyLXJlc3RvcmVkLWFuZC10
aGVuLWxvY2tlZC1leHBlY3RlZC50eHQKIGNyZWF0ZSBtb2RlIDEwMDY0NCBMYXlvdXRUZXN0cy9m
YXN0L292ZXJmbG93L3Njcm9sbGJhci1yZXN0b3JlZC1hbmQtdGhlbi1sb2NrZWQuaHRtbAoKZGlm
ZiAtLWdpdCBhL0xheW91dFRlc3RzL0NoYW5nZUxvZyBiL0xheW91dFRlc3RzL0NoYW5nZUxvZwpp
bmRleCA4NTlkMzhhLi5lZjM0YmZjIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cK
KysrIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTMgQEAKKzIwMTAtMDQtMDEg
IEFudG9uaW8gR29tZXMgIDx0b25pa2l0b29Ad2Via2l0Lm9yZz4KKworICAgICAgICBSZXZpZXdl
ZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBbUXRdIFJFR1JFU1NJT046KHI1MDY2NSkg
UVdlYkZyYW1lOjpzZXRTY3JvbGxCYXJQb2xpY3koUXQ6OlZlcnRpY2FsLFF0OjpTY3JvbGxCYXJB
bHdheXNPZmYpIGhhcyBubyBlZmZlY3QuCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3Jn
L3Nob3dfYnVnLmNnaT9pZD0yOTQzMQorCisgICAgICAgICogZmFzdC9vdmVyZmxvdy9zY3JvbGxi
YXItcmVzdG9yZWQtYW5kLXRoZW4tbG9ja2VkLWV4cGVjdGVkLnR4dDogQWRkZWQuCisgICAgICAg
ICogZmFzdC9vdmVyZmxvdy9zY3JvbGxiYXItcmVzdG9yZWQtYW5kLXRoZW4tbG9ja2VkLmh0bWw6
IEFkZGVkLgorCiAyMDEwLTA0LTA2ICBJbHlhIFRpa2hvbm92c2t5ICA8bG9pc2xvQGNocm9taXVt
Lm9yZz4KIAogICAgICAgICBSZXZpZXdlZCBieSBQYXZlbCBGZWxkbWFuLgpkaWZmIC0tZ2l0IGEv
TGF5b3V0VGVzdHMvZmFzdC9vdmVyZmxvdy9zY3JvbGxiYXItcmVzdG9yZWQtYW5kLXRoZW4tbG9j
a2VkLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2Zhc3Qvb3ZlcmZsb3cvc2Nyb2xsYmFyLXJl
c3RvcmVkLWFuZC10aGVuLWxvY2tlZC1leHBlY3RlZC50eHQKbmV3IGZpbGUgbW9kZSAxMDA2NDQK
aW5kZXggMDAwMDAwMC4uMmYxYWE4YQotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2Zh
c3Qvb3ZlcmZsb3cvc2Nyb2xsYmFyLXJlc3RvcmVkLWFuZC10aGVuLWxvY2tlZC1leHBlY3RlZC50
eHQKQEAgLTAsMCArMSw4IEBACitUZXN0IGZvciBidWcgMjk0MzEgW1F0XSBSRUdSRVNTSU9OOihy
NTA2NjUpIFFXZWJGcmFtZTo6c2V0U2Nyb2xsQmFyUG9saWN5KFF0OjpWZXJ0aWNhbCxRdDo6U2Ny
b2xsQmFyQWx3YXlzT2ZmKSBoYXMgbm8gZWZmZWN0LgorCitUaGlzIHRlc3QgZW5zdXJlcyB0aGUg
Y29ycmVjdG5lc3Mgb2YgdHdvIHNjcm9sbGJhciBiZWhhdmlvdXI6CisKK1RoaXMgdGVzdHMgdGhh
dCBhZnRlciBzZXR0aW5nICdvdmVyZmxvdycgb24gdGhlIGRvY3VtZW50IGVsZW1lbnQgdG8gJ2hp
ZGRlbicgYW5kIGJhY2sgdG8gJ3Zpc2libGUnLCBzY3JvbGxiYXJzIGFwcGVhciBhcyBuZWNlc3Nh
cnkuCitBZnRlciBleHBsaWNpdGx5IHNldHRpbmcgYSBzY3JvbGxiYXIgcG9saWN5IGRpZmZlcmVu
dCB0aGFuICdhdXRvJywgV2ViQ29yZSBob25vcnMgdGhhdCB1bnRpbCBpdCBpcyB1bnNldC4KK1BB
U1MKK1BBU1MKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3Qvb3ZlcmZsb3cvc2Nyb2xsYmFy
LXJlc3RvcmVkLWFuZC10aGVuLWxvY2tlZC5odG1sIGIvTGF5b3V0VGVzdHMvZmFzdC9vdmVyZmxv
dy9zY3JvbGxiYXItcmVzdG9yZWQtYW5kLXRoZW4tbG9ja2VkLmh0bWwKbmV3IGZpbGUgbW9kZSAx
MDA2NDQKaW5kZXggMDAwMDAwMC4uOTNiNTRhMAotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRl
c3RzL2Zhc3Qvb3ZlcmZsb3cvc2Nyb2xsYmFyLXJlc3RvcmVkLWFuZC10aGVuLWxvY2tlZC5odG1s
CkBAIC0wLDAgKzEsNDEgQEAKKzxib2R5PgorICAgIDxwPgorICAgICAgICBUZXN0IGZvciA8aT48
YSBocmVmPSJodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9Mjk0MzEiPmJ1
ZyAyOTQzMTwvYT4KKyAgICAgICAgW1F0XSBSRUdSRVNTSU9OOihyNTA2NjUpIFFXZWJGcmFtZTo6
c2V0U2Nyb2xsQmFyUG9saWN5KFF0OjpWZXJ0aWNhbCxRdDo6U2Nyb2xsQmFyQWx3YXlzT2ZmKSBo
YXMgbm8gZWZmZWN0LgorICAgIDwvcD4KKyAgICA8cD4gVGhpcyB0ZXN0IGVuc3VyZXMgdGhlIGNv
cnJlY3RuZXNzIG9mIHR3byBzY3JvbGxiYXIgYmVoYXZpb3VyOjwvcD4KKyAgICA8dWw+CisgICAg
ICAgIDxsaT4gVGhpcyB0ZXN0cyB0aGF0IGFmdGVyIHNldHRpbmcgJ292ZXJmbG93JyBvbiB0aGUg
ZG9jdW1lbnQgZWxlbWVudCB0bworICAgICAgICAgICAgJ2hpZGRlbicgYW5kIGJhY2sgdG8gJ3Zp
c2libGUnLCBzY3JvbGxiYXJzIGFwcGVhciBhcyBuZWNlc3NhcnkuCisgICAgICAgIDwvbGk+Cisg
ICAgICAgIDxsaT4KKyAgICAgICAgICAgIEFmdGVyIGV4cGxpY2l0bHkgc2V0dGluZyBhIHNjcm9s
bGJhciBwb2xpY3kgZGlmZmVyZW50IHRoYW4gJ2F1dG8nLCBXZWJDb3JlCisgICAgICAgICAgICBo
b25vcnMgdGhhdCB1bnRpbCBpdCBpcyB1bnNldC4KKyAgICAgICAgPC9saT4KKyAgICA8L3VsPgor
ICAgIDxkaXYgaWQ9ImR5bmFtaWMiPjwvZGl2PgorICAgIDxwIGlkPSJyZXN1bHQiPkZBSUw6IFRl
c3QgZGlkIG5vdCBydW4gdG8gY29tcGxldGlvbjwvcD4KKyAgICA8c2NyaXB0PgorICAgICAgICBp
ZiAod2luZG93LmxheW91dFRlc3RDb250cm9sbGVyKQorICAgICAgICAgICAgbGF5b3V0VGVzdENv
bnRyb2xsZXIuZHVtcEFzVGV4dCgpOworCisgICAgICAgIGRvY3VtZW50LmRvY3VtZW50RWxlbWVu
dC5zdHlsZS5vdmVyZmxvdyA9ICJoaWRkZW4iOworICAgICAgICBkb2N1bWVudC5ib2R5Lm9mZnNl
dFRvcDsKKyAgICAgICAgZG9jdW1lbnQuZG9jdW1lbnRFbGVtZW50LnN0eWxlLnJlbW92ZVByb3Bl
cnR5KCJvdmVyZmxvdyIpOworICAgICAgICBkb2N1bWVudC5ib2R5LnN0eWxlLmhlaWdodCA9ICIy
MDAlIjsKKyAgICAgICAgdmFyIHJlc3VsdCA9IChpbm5lcldpZHRoID09PSBkb2N1bWVudC5kb2N1
bWVudEVsZW1lbnQub2Zmc2V0V2lkdGgpCisgICAgICAgICAgICA/ICJGQUlMOiBTY3JvbGxiYXIg
ZGlkIG5vdCBhcHBlYXIgYWZ0ZXIgcmVzZXR0aW5nICdvdmVyZmxvdyciCisgICAgICAgICAgICA6
ICJQQVNTIjsKKworICAgICAgICBpZiAod2luZG93LmxheW91dFRlc3RDb250cm9sbGVyKSB7Cisg
ICAgICAgICAgICBsYXlvdXRUZXN0Q29udHJvbGxlci5zZXRTY3JvbGxiYXJQb2xpY3koJ3ZlcnRp
Y2FsJywgJ29mZicpOworICAgICAgICAgICAgbGF5b3V0VGVzdENvbnRyb2xsZXIuc2V0U2Nyb2xs
YmFyUG9saWN5KCdob3Jpem9udGFsJywgJ29mZicpOworCisgICAgICAgICAgICByZXN1bHQgKz0g
KGlubmVyV2lkdGggPT09IGRvY3VtZW50LmRvY3VtZW50RWxlbWVudC5vZmZzZXRXaWR0aCkKKyAg
ICAgICAgICAgICAgICA/ICJcblBBU1MiCisgICAgICAgICAgICAgICAgOiAiXG5GQUlMOiBTY3Jv
bGxiYXIgZGlkIGFwcGVhciBhZnRlciB0dXJuaW5nIGl0IG9mZiI7CisgICAgICAgIH0KKworICAg
ICAgICBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgicmVzdWx0IikuaW5uZXJUZXh0ID0gcmVzdWx0
OworICAgIDwvc2NyaXB0PgorPC9ib2R5PgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvcGxhdGZv
cm0vZ3RrL1NraXBwZWQgYi9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9ndGsvU2tpcHBlZAppbmRleCAz
OGE0ODAzLi45ODIzNWFkIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9ndGsvU2tp
cHBlZAorKysgYi9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9ndGsvU2tpcHBlZApAQCAtNTg5MiwzICs1
ODkyLDYgQEAgZmFzdC9tZWRpYS9tZWRpYS1mZWF0dXJlLXdndC12aWV3LW1vZGUuaHRtbAogIyBN
ZWRpYVBsYXllclByaXZhdGVHU3RyZWFtZXIgZG9lc24ndCByZXR1cm4gdG8gTkVUV09SS19JRExF
IGFuZCBoZW5jZSBkb2Vzbid0IGZpcmUgYSBzdXNwZW5kIGV2ZW50CiAjIGh0dHBzOi8vYnVncy53
ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0zNzAzNAogaHR0cC90ZXN0cy9tZWRpYS92aWRlby1w
bGF5LXN1c3BlbmQuaHRtbAorCisjIE5lZWQgdG8gYWRkIGZ1bmN0aW9uYWxpdHkgdG8gRHVtcFJl
bmRlclRyZWUgdG8gaGFuZGxlIHNjcm9sbGJhciBwb2xpY2UgY2hhbmdlcworZmFzdC9vdmVyZmxv
dy9zY3JvbGxiYXItcmVzdG9yZWQtYW5kLXRoZW4tbG9ja2VkLmh0bWwKZGlmZiAtLWdpdCBhL0xh
eW91dFRlc3RzL3BsYXRmb3JtL21hYy9Ta2lwcGVkIGIvTGF5b3V0VGVzdHMvcGxhdGZvcm0vbWFj
L1NraXBwZWQKaW5kZXggYTYxYWQyMS4uY2YxYmY1ZSAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMv
cGxhdGZvcm0vbWFjL1NraXBwZWQKKysrIGIvTGF5b3V0VGVzdHMvcGxhdGZvcm0vbWFjL1NraXBw
ZWQKQEAgLTE1NiwzICsxNTYsNSBAQCBmYXN0L3JlcGxhY2VkL2JvcmRlci1yYWRpdXMtY2xpcC5o
dG1sCiAjIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0zNjY0NgogZmFz
dC93b3JrZXJzL3dvcmtlci10ZXJtaW5hdGUuaHRtbAogCisjIE5lZWQgdG8gYWRkIGZ1bmN0aW9u
YWxpdHkgdG8gRHVtcFJlbmRlclRyZWUgdG8gaGFuZGxlIHNjcm9sbGJhciBwb2xpY2UgY2hhbmdl
cworZmFzdC9vdmVyZmxvdy9zY3JvbGxiYXItcmVzdG9yZWQtYW5kLXRoZW4tbG9ja2VkLmh0bWwK
ZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL3BsYXRmb3JtL3dpbi9Ta2lwcGVkIGIvTGF5b3V0VGVz
dHMvcGxhdGZvcm0vd2luL1NraXBwZWQKaW5kZXggZTdjNGNlZi4uNThmMGNhMyAxMDA2NDQKLS0t
IGEvTGF5b3V0VGVzdHMvcGxhdGZvcm0vd2luL1NraXBwZWQKKysrIGIvTGF5b3V0VGVzdHMvcGxh
dGZvcm0vd2luL1NraXBwZWQKQEAgLTgyMiwzICs4MjIsNiBAQCBmYXN0L21lZGlhL21lZGlhLWZl
YXR1cmUtd2d0LXZpZXctbW9kZS5odG1sCiAKICMgTmVlZCBleHBlY3RhdGlvbnMuIFNlZSBodHRw
czovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MzY0NjEKIGZhc3QvcmVwYWludC9v
dmVyZmxvdy1zY3JvbGwtYm9keS1hcHBlYXIuaHRtbAorCisjIE5lZWQgdG8gYWRkIGZ1bmN0aW9u
YWxpdHkgdG8gRHVtcFJlbmRlclRyZWUgdG8gaGFuZGxlIHNjcm9sbGJhciBwb2xpY2UgY2hhbmdl
cworZmFzdC9vdmVyZmxvdy9zY3JvbGxiYXItcmVzdG9yZWQtYW5kLXRoZW4tbG9ja2VkLmh0bWwK
ZGlmZiAtLWdpdCBhL1dlYkNvcmUvQ2hhbmdlTG9nIGIvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXgg
NzQ2ZGM3Yi4uN2JhNGQ1NyAxMDA2NDQKLS0tIGEvV2ViQ29yZS9DaGFuZ2VMb2cKKysrIGIvV2Vi
Q29yZS9DaGFuZ2VMb2cKQEAgLTEsMyArMSwzOSBAQAorMjAxMC0wNC0wMSAgQW50b25pbyBHb21l
cyAgPHRvbmlraXRvb0B3ZWJraXQub3JnPgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAo
T09QUyEpLgorCisgICAgICAgIFtRdF0gUkVHUkVTU0lPTjoocjUwNjY1KSBRV2ViRnJhbWU6OnNl
dFNjcm9sbEJhclBvbGljeShRdDo6VmVydGljYWwsUXQ6OlNjcm9sbEJhckFsd2F5c09mZikgaGFz
IG5vIGVmZmVjdC4KKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dp
P2lkPTI5NDMxCisKKyAgICAgICAgVGVzdDogZmFzdC9vdmVyZmxvdy9zY3JvbGxiYXItcmVzdG9y
ZWQtYW5kLXRoZW4tbG9ja2VkLmh0bWwKKworICAgICAgICBQYXRjaCBpbnRyb2R1Y2VzIGEgbG9j
ayBzY3JvbGxiYXJzIGNvbmNlcHQgdG8gU2Nyb2xsVmlldywgYXMgaW4gV2ViRHluYW1pY1Njcm9s
bEJhcnNWaWV3Lm1tL2gKKyAgICAgICAgb24gV2ViS2l0L21hYy4gSXQgaXMgbmVlZGVkIGJlY2F1
c2UgaW4gUXRXZWJLaXQsIHdlIGhhdmUgQXBpIGZvciBzZXR0aW5nIGJvdGggdmVydGljYWwgYW5k
CisgICAgICAgIGhvcml6b250YWwgc2Nyb2xsYmFycyBvbi9vZmYvYXV0by4gV2hlbiBpdCBpcyBz
ZXQgdG8gb2ZmLCBmb3IgZXhhbXBsZSwgaXQgc2hvdWxkIHJlbWFpbgorICAgICAgICBhcyBzdWNo
LCB1bmxlc3MgdW5zZXQuCisKKyAgICAgICAgRm9yIHRoZSBsb2NraW5nIGNvbmVjcHQsIG9uZSBh
ZGRpdGlvbmFsICdsb2NrJyBvcHRpb25hbCBwYXJhbWV0ZXIgd2FzIGFkZGVkIHRvIFNjcm9sbFZp
ZXcncworICAgICAgICBzZXRIb3Jpem9udGFsU2Nyb2xsYmFyTW9kZSBhbmQgc2V0VmVydGljYWxT
Y3JvbGxiYXJNb2RlLiBBcyBpdCBpcyBvcHRpb25hbCwgYWxsIHByZXZpb3VzIGNvZGUKKyAgICAg
ICAgY2FsbGluZyB0aGVtIGRvIG5vdCBuZWVkIG1vZGlmaWNhdGlvbi4gc2V0U2Nyb2xsYmFyTW9k
ZXMncyBzaWduYXR1cmUgcmVtYWlucyBhcyBpcywgYnV0IGJvZHkKKyAgICAgICAgaG9ub3IgdGhl
IGN1cnJlbnQgbG9jayBzdGF0ZS4KKworICAgICAgICBUd28gb3B0aW9uYWwgcGFyYW1ldGVycyB3
ZXJlIGFsc28gYWRkZWQgdG8gRnJhbWUncyBjcmVhdGVWaWV3IG1ldGhvZCwgZm9yIGhvcml6b250
YWwgYW5kIHZlcnRpY2FsCisgICAgICAgIGxvY2sgc3RhdGUgcGVyc2lzdGVuY2UgY3Jvc3MgcGFn
ZSBsb2Fkcy4KKworICAgICAgICAqIHBhZ2UvRnJhbWUuY3BwOgorICAgICAgICAoV2ViQ29yZTo6
RnJhbWU6OmNyZWF0ZVZpZXcpOgorICAgICAgICAqIHBsYXRmb3JtL1Njcm9sbFZpZXcuY3BwOgor
ICAgICAgICAoV2ViQ29yZTo6U2Nyb2xsVmlldzo6U2Nyb2xsVmlldyk6CisgICAgICAgIChXZWJD
b3JlOjpTY3JvbGxWaWV3OjpzZXRTY3JvbGxiYXJNb2Rlcyk6CisgICAgICAgIChXZWJDb3JlOjpT
Y3JvbGxWaWV3OjpzZXRIb3Jpem9udGFsU2Nyb2xsYmFyTW9kZSk6CisgICAgICAgIChXZWJDb3Jl
OjpTY3JvbGxWaWV3OjpzZXRWZXJ0aWNhbFNjcm9sbGJhck1vZGUpOgorICAgICAgICAqIHBsYXRm
b3JtL1Njcm9sbFZpZXcuaDoKKyAgICAgICAgKFdlYkNvcmU6OlNjcm9sbFZpZXc6OnNldEhvcml6
b250YWxTY3JvbGxiYXJMb2NrKToKKyAgICAgICAgKFdlYkNvcmU6OlNjcm9sbFZpZXc6OmlzSG9y
aXpvbnRhbFNjcm9sbGJhckxvY2tlZCk6CisgICAgICAgIChXZWJDb3JlOjpTY3JvbGxWaWV3Ojpz
ZXRWZXJ0aWNhbFNjcm9sbGJhckxvY2spOgorICAgICAgICAoV2ViQ29yZTo6U2Nyb2xsVmlldzo6
aXNWZXJ0aWNhbFNjcm9sbGJhckxvY2tlZCk6CisgICAgICAgIChXZWJDb3JlOjpTY3JvbGxWaWV3
OjpzZXRTY3JvbGxpbmdNb2Rlc0xvY2tlZCk6CisKIDIwMTAtMDQtMDYgIElseWEgVGlraG9ub3Zz
a3kgIDxsb2lzbG9AY2hyb21pdW0ub3JnPgogCiAgICAgICAgIFVucmV2aWV3ZWQgYnVpbGQgZml4
LgpkaWZmIC0tZ2l0IGEvV2ViQ29yZS9XZWJDb3JlLmJhc2UuZXhwIGIvV2ViQ29yZS9XZWJDb3Jl
LmJhc2UuZXhwCmluZGV4IDExZmRhZjMuLjE0OTNiYWQgMTAwNjQ0Ci0tLSBhL1dlYkNvcmUvV2Vi
Q29yZS5iYXNlLmV4cAorKysgYi9XZWJDb3JlL1dlYkNvcmUuYmFzZS5leHAKQEAgLTUzMCw3ICs1
MzAsNiBAQCBfX1pON1dlYkNvcmU0Y29yZUVQMjBOU1VSTFByb3RlY3Rpb25TcGFjZQogX19aTjdX
ZWJDb3JlNUNhY2hlMTFzZXREaXNhYmxlZEViCiBfX1pON1dlYkNvcmU1Q2FjaGUxM2dldFN0YXRp
c3RpY3NFdgogX19aTjdXZWJDb3JlNUNhY2hlMTNzZXRDYXBhY2l0aWVzRWpqagotX19aTjdXZWJD
b3JlNUZyYW1lMTBjcmVhdGVWaWV3RVJLTlNfN0ludFNpemVFUktOU181Q29sb3JFYlMzX2JOU18x
M1Njcm9sbGJhck1vZGVFUzdfCiBfX1pON1dlYkNvcmU1RnJhbWUxMGZpbmRTdHJpbmdFUktOU182
U3RyaW5nRWJiYmIKIF9fWk43V2ViQ29yZTVGcmFtZTExc2hvdWxkQ2xvc2VFdgogX19aTjdXZWJD
b3JlNUZyYW1lMTNyZWFwcGx5U3R5bGVzRXYKZGlmZiAtLWdpdCBhL1dlYkNvcmUvcGFnZS9GcmFt
ZS5jcHAgYi9XZWJDb3JlL3BhZ2UvRnJhbWUuY3BwCmluZGV4IDA0ZDdhOWUuLmQ4M2E3N2UgMTAw
NjQ0Ci0tLSBhL1dlYkNvcmUvcGFnZS9GcmFtZS5jcHAKKysrIGIvV2ViQ29yZS9wYWdlL0ZyYW1l
LmNwcApAQCAtMTc3NSw3ICsxNzc1LDggQEAgRG9jdW1lbnQqIEZyYW1lOjpkb2N1bWVudEF0UG9p
bnQoY29uc3QgSW50UG9pbnQmIHBvaW50KQogdm9pZCBGcmFtZTo6Y3JlYXRlVmlldyhjb25zdCBJ
bnRTaXplJiB2aWV3cG9ydFNpemUsCiAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IENvbG9y
JiBiYWNrZ3JvdW5kQ29sb3IsIGJvb2wgdHJhbnNwYXJlbnQsCiAgICAgICAgICAgICAgICAgICAg
ICAgIGNvbnN0IEludFNpemUmIGZpeGVkTGF5b3V0U2l6ZSwgYm9vbCB1c2VGaXhlZExheW91dCwK
LSAgICAgICAgICAgICAgICAgICAgICAgU2Nyb2xsYmFyTW9kZSBob3Jpem9udGFsU2Nyb2xsYmFy
TW9kZSwgU2Nyb2xsYmFyTW9kZSB2ZXJ0aWNhbFNjcm9sbGJhck1vZGUpCisgICAgICAgICAgICAg
ICAgICAgICAgIFNjcm9sbGJhck1vZGUgaG9yaXpvbnRhbFNjcm9sbGJhck1vZGUsIGJvb2wgaG9y
aXpvbnRhbExvY2ssCisgICAgICAgICAgICAgICAgICAgICAgIFNjcm9sbGJhck1vZGUgdmVydGlj
YWxTY3JvbGxiYXJNb2RlLCBib29sIHZlcnRpY2FsTG9jaykKIHsKICAgICBBU1NFUlQodGhpcyk7
CiAgICAgQVNTRVJUKG1fcGFnZSk7CkBAIC0xNzk1LDcgKzE3OTYsOCBAQCB2b2lkIEZyYW1lOjpj
cmVhdGVWaWV3KGNvbnN0IEludFNpemUmIHZpZXdwb3J0U2l6ZSwKICAgICB9IGVsc2UKICAgICAg
ICAgZnJhbWVWaWV3ID0gRnJhbWVWaWV3OjpjcmVhdGUodGhpcyk7CiAKLSAgICBmcmFtZVZpZXct
PnNldFNjcm9sbGJhck1vZGVzKGhvcml6b250YWxTY3JvbGxiYXJNb2RlLCB2ZXJ0aWNhbFNjcm9s
bGJhck1vZGUpOworICAgIGZyYW1lVmlldy0+c2V0SG9yaXpvbnRhbFNjcm9sbGJhck1vZGUoaG9y
aXpvbnRhbFNjcm9sbGJhck1vZGUsIGhvcml6b250YWxMb2NrIC8qIGxvY2sgKi8pOworICAgIGZy
YW1lVmlldy0+c2V0VmVydGljYWxTY3JvbGxiYXJNb2RlKHZlcnRpY2FsU2Nyb2xsYmFyTW9kZSwg
dmVydGljYWxMb2NrIC8qIGxvY2sgKi8pOwogCiAgICAgc2V0VmlldyhmcmFtZVZpZXcpOwogCmRp
ZmYgLS1naXQgYS9XZWJDb3JlL3BhZ2UvRnJhbWUuaCBiL1dlYkNvcmUvcGFnZS9GcmFtZS5oCmlu
ZGV4IGI2MzBiZWYuLjRhN2NkYWYgMTAwNjQ0Ci0tLSBhL1dlYkNvcmUvcGFnZS9GcmFtZS5oCisr
KyBiL1dlYkNvcmUvcGFnZS9GcmFtZS5oCkBAIC0xMTksNyArMTE5LDggQEAgbmFtZXNwYWNlIFdl
YkNvcmUgewogICAgICAgICB2b2lkIHNldEV4Y2x1ZGVGcm9tVGV4dFNlYXJjaChib29sKTsKIAog
ICAgICAgICB2b2lkIGNyZWF0ZVZpZXcoY29uc3QgSW50U2l6ZSYsIGNvbnN0IENvbG9yJiwgYm9v
bCwgY29uc3QgSW50U2l6ZSAmLCBib29sLAotICAgICAgICAgICAgICAgICAgICAgICAgU2Nyb2xs
YmFyTW9kZSA9IFNjcm9sbGJhckF1dG8sIFNjcm9sbGJhck1vZGUgPSBTY3JvbGxiYXJBdXRvKTsK
KyAgICAgICAgICAgICAgICAgICAgICAgIFNjcm9sbGJhck1vZGUgPSBTY3JvbGxiYXJBdXRvLCBi
b29sIGhvcml6b250YWxMb2NrID0gZmFsc2UsCisgICAgICAgICAgICAgICAgICAgICAgICBTY3Jv
bGxiYXJNb2RlID0gU2Nyb2xsYmFyQXV0bywgYm9vbCB2ZXJ0aWNhbExvY2sgPSBmYWxzZSk7CiAK
ICAgICAgICAgdm9pZCBpbmplY3RVc2VyU2NyaXB0cyhVc2VyU2NyaXB0SW5qZWN0aW9uVGltZSk7
CiAgICAgICAgIApkaWZmIC0tZ2l0IGEvV2ViQ29yZS9wbGF0Zm9ybS9TY3JvbGxWaWV3LmNwcCBi
L1dlYkNvcmUvcGxhdGZvcm0vU2Nyb2xsVmlldy5jcHAKaW5kZXggMjEzMWM5MS4uYWQ1NzdhYiAx
MDA2NDQKLS0tIGEvV2ViQ29yZS9wbGF0Zm9ybS9TY3JvbGxWaWV3LmNwcAorKysgYi9XZWJDb3Jl
L3BsYXRmb3JtL1Njcm9sbFZpZXcuY3BwCkBAIC00Miw2ICs0Miw4IEBAIG5hbWVzcGFjZSBXZWJD
b3JlIHsKIFNjcm9sbFZpZXc6OlNjcm9sbFZpZXcoKQogICAgIDogbV9ob3Jpem9udGFsU2Nyb2xs
YmFyTW9kZShTY3JvbGxiYXJBdXRvKQogICAgICwgbV92ZXJ0aWNhbFNjcm9sbGJhck1vZGUoU2Ny
b2xsYmFyQXV0bykKKyAgICAsIG1faG9yaXpvbnRhbFNjcm9sbGJhckxvY2soZmFsc2UpCisgICAg
LCBtX3ZlcnRpY2FsU2Nyb2xsYmFyTG9jayhmYWxzZSkKICAgICAsIG1fcHJvaGliaXRzU2Nyb2xs
aW5nKGZhbHNlKQogICAgICwgbV9jYW5CbGl0T25TY3JvbGwodHJ1ZSkKICAgICAsIG1fc2Nyb2xs
YmFyc0F2b2lkaW5nUmVzaXplcigwKQpAQCAtMTE3LDEwICsxMTksMjEgQEAgUGFzc1JlZlB0cjxT
Y3JvbGxiYXI+IFNjcm9sbFZpZXc6OmNyZWF0ZVNjcm9sbGJhcihTY3JvbGxiYXJPcmllbnRhdGlv
biBvcmllbnRhdGkKIAogdm9pZCBTY3JvbGxWaWV3OjpzZXRTY3JvbGxiYXJNb2RlcyhTY3JvbGxi
YXJNb2RlIGhvcml6b250YWxNb2RlLCBTY3JvbGxiYXJNb2RlIHZlcnRpY2FsTW9kZSkKIHsKLSAg
ICBpZiAoaG9yaXpvbnRhbE1vZGUgPT0gaG9yaXpvbnRhbFNjcm9sbGJhck1vZGUoKSAmJiB2ZXJ0
aWNhbE1vZGUgPT0gdmVydGljYWxTY3JvbGxiYXJNb2RlKCkpCisgICAgYm9vbCBuZWVkc1VwZGF0
ZSA9IGZhbHNlOworCisgICAgaWYgKGhvcml6b250YWxNb2RlICE9IGhvcml6b250YWxTY3JvbGxi
YXJNb2RlKCkgJiYgIW1faG9yaXpvbnRhbFNjcm9sbGJhckxvY2spIHsKKyAgICAgICAgbV9ob3Jp
em9udGFsU2Nyb2xsYmFyTW9kZSA9IGhvcml6b250YWxNb2RlOworICAgICAgICBuZWVkc1VwZGF0
ZSA9IHRydWU7CisgICAgfQorCisgICAgaWYgKHZlcnRpY2FsTW9kZSAhPSB2ZXJ0aWNhbFNjcm9s
bGJhck1vZGUoKSAmJiAhbV92ZXJ0aWNhbFNjcm9sbGJhckxvY2spIHsKKyAgICAgICAgbV92ZXJ0
aWNhbFNjcm9sbGJhck1vZGUgPSB2ZXJ0aWNhbE1vZGU7CisgICAgICAgIG5lZWRzVXBkYXRlID0g
dHJ1ZTsKKyAgICB9CisKKyAgICBpZiAoIW5lZWRzVXBkYXRlKQogICAgICAgICByZXR1cm47Ci0g
ICAgbV9ob3Jpem9udGFsU2Nyb2xsYmFyTW9kZSA9IGhvcml6b250YWxNb2RlOwotICAgIG1fdmVy
dGljYWxTY3JvbGxiYXJNb2RlID0gdmVydGljYWxNb2RlOworCiAgICAgaWYgKHBsYXRmb3JtV2lk
Z2V0KCkpCiAgICAgICAgIHBsYXRmb3JtU2V0U2Nyb2xsYmFyTW9kZXMoKTsKICAgICBlbHNlCkBA
IC0xMzgsNiArMTUxLDM2IEBAIHZvaWQgU2Nyb2xsVmlldzo6c2Nyb2xsYmFyTW9kZXMoU2Nyb2xs
YmFyTW9kZSYgaG9yaXpvbnRhbE1vZGUsIFNjcm9sbGJhck1vZGUmIHZlCiAgICAgdmVydGljYWxN
b2RlID0gbV92ZXJ0aWNhbFNjcm9sbGJhck1vZGU7CiB9CiAKK3ZvaWQgU2Nyb2xsVmlldzo6c2V0
SG9yaXpvbnRhbFNjcm9sbGJhck1vZGUoU2Nyb2xsYmFyTW9kZSBtb2RlLCBib29sIGxvY2spCit7
CisgICAgaWYgKG1vZGUgIT0gaG9yaXpvbnRhbFNjcm9sbGJhck1vZGUoKSAmJiAhbV9ob3Jpem9u
dGFsU2Nyb2xsYmFyTG9jaykgeworICAgICAgICBtX2hvcml6b250YWxTY3JvbGxiYXJNb2RlID0g
bW9kZTsKKworICAgICAgICBpZiAobG9jaykKKyAgICAgICAgICAgIG1faG9yaXpvbnRhbFNjcm9s
bGJhckxvY2sgPSBsb2NrOworCisgICAgICAgIGlmIChwbGF0Zm9ybVdpZGdldCgpKQorICAgICAg
ICAgICAgcGxhdGZvcm1TZXRTY3JvbGxiYXJNb2RlcygpOworICAgICAgICBlbHNlCisgICAgICAg
ICAgICB1cGRhdGVTY3JvbGxiYXJzKHNjcm9sbE9mZnNldCgpKTsKKyAgICB9Cit9CisKK3ZvaWQg
U2Nyb2xsVmlldzo6c2V0VmVydGljYWxTY3JvbGxiYXJNb2RlKFNjcm9sbGJhck1vZGUgbW9kZSwg
Ym9vbCBsb2NrKQoreworICAgIGlmIChtb2RlICE9IHZlcnRpY2FsU2Nyb2xsYmFyTW9kZSgpICYm
ICFtX3ZlcnRpY2FsU2Nyb2xsYmFyTG9jaykgeworICAgICAgICBtX3ZlcnRpY2FsU2Nyb2xsYmFy
TW9kZSA9IG1vZGU7CisKKyAgICAgICAgaWYgKGxvY2spCisgICAgICAgICAgICBtX3ZlcnRpY2Fs
U2Nyb2xsYmFyTG9jayA9IGxvY2s7CisKKyAgICAgICAgaWYgKHBsYXRmb3JtV2lkZ2V0KCkpCisg
ICAgICAgICAgICBwbGF0Zm9ybVNldFNjcm9sbGJhck1vZGVzKCk7CisgICAgICAgIGVsc2UKKyAg
ICAgICAgICAgIHVwZGF0ZVNjcm9sbGJhcnMoc2Nyb2xsT2Zmc2V0KCkpOworICAgIH0KK30KKwog
dm9pZCBTY3JvbGxWaWV3OjpzZXRDYW5IYXZlU2Nyb2xsYmFycyhib29sIGNhblNjcm9sbCkKIHsK
ICAgICBTY3JvbGxiYXJNb2RlIG5ld0hvcml6b250YWxNb2RlOwpkaWZmIC0tZ2l0IGEvV2ViQ29y
ZS9wbGF0Zm9ybS9TY3JvbGxWaWV3LmggYi9XZWJDb3JlL3BsYXRmb3JtL1Njcm9sbFZpZXcuaApp
bmRleCBjMzU2YTYwLi5iNmIzM2Q2IDEwMDY0NAotLS0gYS9XZWJDb3JlL3BsYXRmb3JtL1Njcm9s
bFZpZXcuaAorKysgYi9XZWJDb3JlL3BsYXRmb3JtL1Njcm9sbFZpZXcuaApAQCAtODQsMTEgKzg0
LDIxIEBAIHB1YmxpYzoKICAgICAvLyBOb3RlIHRoYXQgZm9yIHBsYXRmb3JtcyB3aXRoIG5hdGl2
ZSB3aWRnZXRzLCB0aGVzZSBtb2RlcyBhcmUgY29uc2lkZXJlZCBhZHZpc29yeS4gIEluIG90aGVy
IHdvcmRzIHRoZSB1bmRlcmx5aW5nIG5hdGl2ZQogICAgIC8vIHdpZGdldCBtYXkgY2hvb3NlIG5v
dCB0byBob25vciB0aGUgcmVxdWVzdGVkIG1vZGVzLgogICAgIHZvaWQgc2V0U2Nyb2xsYmFyTW9k
ZXMoU2Nyb2xsYmFyTW9kZSBob3Jpem9udGFsTW9kZSwgU2Nyb2xsYmFyTW9kZSB2ZXJ0aWNhbE1v
ZGUpOwotICAgIHZvaWQgc2V0SG9yaXpvbnRhbFNjcm9sbGJhck1vZGUoU2Nyb2xsYmFyTW9kZSBt
b2RlKSB7IHNldFNjcm9sbGJhck1vZGVzKG1vZGUsIHZlcnRpY2FsU2Nyb2xsYmFyTW9kZSgpKTsg
fQotICAgIHZvaWQgc2V0VmVydGljYWxTY3JvbGxiYXJNb2RlKFNjcm9sbGJhck1vZGUgbW9kZSkg
eyBzZXRTY3JvbGxiYXJNb2Rlcyhob3Jpem9udGFsU2Nyb2xsYmFyTW9kZSgpLCBtb2RlKTsgfQog
ICAgIHZvaWQgc2Nyb2xsYmFyTW9kZXMoU2Nyb2xsYmFyTW9kZSYgaG9yaXpvbnRhbE1vZGUsIFNj
cm9sbGJhck1vZGUmIHZlcnRpY2FsTW9kZSkgY29uc3Q7CisKKyAgICB2b2lkIHNldEhvcml6b250
YWxTY3JvbGxiYXJNb2RlKFNjcm9sbGJhck1vZGUgbW9kZSwgYm9vbCBhbmRMb2NrID0gZmFsc2Up
OwogICAgIFNjcm9sbGJhck1vZGUgaG9yaXpvbnRhbFNjcm9sbGJhck1vZGUoKSBjb25zdCB7IFNj
cm9sbGJhck1vZGUgaG9yaXpvbnRhbCwgdmVydGljYWw7IHNjcm9sbGJhck1vZGVzKGhvcml6b250
YWwsIHZlcnRpY2FsKTsgcmV0dXJuIGhvcml6b250YWw7IH0KKworICAgIHZvaWQgc2V0VmVydGlj
YWxTY3JvbGxiYXJNb2RlKFNjcm9sbGJhck1vZGUgbW9kZSwgYm9vbCBhbmRMb2NrID0gZmFsc2Up
OwogICAgIFNjcm9sbGJhck1vZGUgdmVydGljYWxTY3JvbGxiYXJNb2RlKCkgY29uc3QgeyBTY3Jv
bGxiYXJNb2RlIGhvcml6b250YWwsIHZlcnRpY2FsOyBzY3JvbGxiYXJNb2Rlcyhob3Jpem9udGFs
LCB2ZXJ0aWNhbCk7IHJldHVybiB2ZXJ0aWNhbDsgfQorCisgICAgdm9pZCBzZXRIb3Jpem9udGFs
U2Nyb2xsYmFyTG9jayhib29sIGxvY2sgPSB0cnVlKSB7IG1faG9yaXpvbnRhbFNjcm9sbGJhckxv
Y2sgPSBsb2NrOyB9CisgICAgYm9vbCBpc0hvcml6b250YWxTY3JvbGxiYXJMb2NrZWQoKSBjb25z
dCB7IHJldHVybiBtX2hvcml6b250YWxTY3JvbGxiYXJMb2NrOyB9CisgICAgdm9pZCBzZXRWZXJ0
aWNhbFNjcm9sbGJhckxvY2soYm9vbCBsb2NrID0gdHJ1ZSkgeyBtX3ZlcnRpY2FsU2Nyb2xsYmFy
TG9jayA9IGxvY2s7IH0KKyAgICBib29sIGlzVmVydGljYWxTY3JvbGxiYXJMb2NrZWQoKSBjb25z
dCB7IHJldHVybiBtX3ZlcnRpY2FsU2Nyb2xsYmFyTG9jazsgfQorCisgICAgdm9pZCBzZXRTY3Jv
bGxpbmdNb2Rlc0xvY2tlZChib29sIGxvY2sgPSB0cnVlKSB7IG1faG9yaXpvbnRhbFNjcm9sbGJh
ckxvY2sgPSBtX3ZlcnRpY2FsU2Nyb2xsYmFyTG9jayA9IGxvY2s7IH0KKwogICAgIHZpcnR1YWwg
dm9pZCBzZXRDYW5IYXZlU2Nyb2xsYmFycyhib29sKTsKICAgICBib29sIGNhbkhhdmVTY3JvbGxi
YXJzKCkgY29uc3QgeyByZXR1cm4gaG9yaXpvbnRhbFNjcm9sbGJhck1vZGUoKSAhPSBTY3JvbGxi
YXJBbHdheXNPZmYgfHwgdmVydGljYWxTY3JvbGxiYXJNb2RlKCkgIT0gU2Nyb2xsYmFyQWx3YXlz
T2ZmOyB9CiAKQEAgLTI2MCw2ICsyNzAsMTAgQEAgcHJpdmF0ZToKICAgICBSZWZQdHI8U2Nyb2xs
YmFyPiBtX3ZlcnRpY2FsU2Nyb2xsYmFyOwogICAgIFNjcm9sbGJhck1vZGUgbV9ob3Jpem9udGFs
U2Nyb2xsYmFyTW9kZTsKICAgICBTY3JvbGxiYXJNb2RlIG1fdmVydGljYWxTY3JvbGxiYXJNb2Rl
OworCisgICAgYm9vbCBtX2hvcml6b250YWxTY3JvbGxiYXJMb2NrOworICAgIGJvb2wgbV92ZXJ0
aWNhbFNjcm9sbGJhckxvY2s7CisKICAgICBib29sIG1fcHJvaGliaXRzU2Nyb2xsaW5nOwogCiAg
ICAgSGFzaFNldDxSZWZQdHI8V2lkZ2V0PiA+IG1fY2hpbGRyZW47CmRpZmYgLS1naXQgYS9XZWJL
aXQvcXQvQXBpL3F3ZWJmcmFtZS5jcHAgYi9XZWJLaXQvcXQvQXBpL3F3ZWJmcmFtZS5jcHAKaW5k
ZXggM2JiY2ZlMi4uZTVjMjc2OCAxMDA2NDQKLS0tIGEvV2ViS2l0L3F0L0FwaS9xd2ViZnJhbWUu
Y3BwCisrKyBiL1dlYktpdC9xdC9BcGkvcXdlYmZyYW1lLmNwcApAQCAtMTA1MCwxMyArMTA1MCwx
MyBAQCB2b2lkIFFXZWJGcmFtZTo6c2V0U2Nyb2xsQmFyUG9saWN5KFF0OjpPcmllbnRhdGlvbiBv
cmllbnRhdGlvbiwgUXQ6OlNjcm9sbEJhclBvbAogICAgIGlmIChvcmllbnRhdGlvbiA9PSBRdDo6
SG9yaXpvbnRhbCkgewogICAgICAgICBkLT5ob3Jpem9udGFsU2Nyb2xsQmFyUG9saWN5ID0gcG9s
aWN5OwogICAgICAgICBpZiAoZC0+ZnJhbWUtPnZpZXcoKSkgewotICAgICAgICAgICAgZC0+ZnJh
bWUtPnZpZXcoKS0+c2V0SG9yaXpvbnRhbFNjcm9sbGJhck1vZGUoKFNjcm9sbGJhck1vZGUpcG9s
aWN5KTsKKyAgICAgICAgICAgIGQtPmZyYW1lLT52aWV3KCktPnNldEhvcml6b250YWxTY3JvbGxi
YXJNb2RlKChTY3JvbGxiYXJNb2RlKXBvbGljeSwgcG9saWN5ICE9IFF0OjpTY3JvbGxCYXJBc05l
ZWRlZCAvKiBsb2NrICovKTsKICAgICAgICAgICAgIGQtPmZyYW1lLT52aWV3KCktPnVwZGF0ZUNh
bkhhdmVTY3JvbGxiYXJzKCk7CiAgICAgICAgIH0KICAgICB9IGVsc2UgewogICAgICAgICBkLT52
ZXJ0aWNhbFNjcm9sbEJhclBvbGljeSA9IHBvbGljeTsKICAgICAgICAgaWYgKGQtPmZyYW1lLT52
aWV3KCkpIHsKLSAgICAgICAgICAgIGQtPmZyYW1lLT52aWV3KCktPnNldFZlcnRpY2FsU2Nyb2xs
YmFyTW9kZSgoU2Nyb2xsYmFyTW9kZSlwb2xpY3kpOworICAgICAgICAgICAgZC0+ZnJhbWUtPnZp
ZXcoKS0+c2V0VmVydGljYWxTY3JvbGxiYXJNb2RlKChTY3JvbGxiYXJNb2RlKXBvbGljeSwgcG9s
aWN5ICE9IFF0OjpTY3JvbGxCYXJBc05lZWRlZCAvKiBsb2NrICovKTsKICAgICAgICAgICAgIGQt
PmZyYW1lLT52aWV3KCktPnVwZGF0ZUNhbkhhdmVTY3JvbGxiYXJzKCk7CiAgICAgICAgIH0KICAg
ICB9CmRpZmYgLS1naXQgYS9XZWJLaXQvcXQvQ2hhbmdlTG9nIGIvV2ViS2l0L3F0L0NoYW5nZUxv
ZwppbmRleCA3ZjNiZDE2Li4xYzE0MzNjIDEwMDY0NAotLS0gYS9XZWJLaXQvcXQvQ2hhbmdlTG9n
CisrKyBiL1dlYktpdC9xdC9DaGFuZ2VMb2cKQEAgLTEsMyArMSwyMCBAQAorMjAxMC0wNC0wMSAg
QW50b25pbyBHb21lcyAgPHRvbmlraXRvb0B3ZWJraXQub3JnPgorCisgICAgICAgIFJldmlld2Vk
IGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIFtRdF0gUkVHUkVTU0lPTjoocjUwNjY1KSBR
V2ViRnJhbWU6OnNldFNjcm9sbEJhclBvbGljeShRdDo6VmVydGljYWwsUXQ6OlNjcm9sbEJhckFs
d2F5c09mZikgaGFzIG5vIGVmZmVjdC4KKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcv
c2hvd19idWcuY2dpP2lkPTI5NDMxCisKKyAgICAgICAgTWFrZSB1c2Ugb2YgdGhlIG5ldyBsb2Nr
IHBhcmFtZXRlciBvZiBzZXR7VmVydGljYWwsSG9yaXpvbnRhbH1TY3JvbGxiYXJNb2RlLgorCisg
ICAgICAgIEFsd2F5cyBhZGRlZCBhIHF0IGF1dG8gdGVzdCBmb3Igc2V0IHNjcm9sbGJhciBwb2xp
Y3kgZmVhdHVyZS4KKworICAgICAgICAqIEFwaS9xd2ViZnJhbWUuY3BwOgorICAgICAgICAoUVdl
YkZyYW1lOjpzZXRTY3JvbGxCYXJQb2xpY3kpOgorICAgICAgICAqIHRlc3RzL3F3ZWJmcmFtZS90
c3RfcXdlYmZyYW1lLmNwcDoKKyAgICAgICAgKiBXZWJDb3JlU3VwcG9ydC9GcmFtZUxvYWRlckNs
aWVudFF0LmNwcDoKKyAgICAgICAgKEZyYW1lTG9hZGVyQ2xpZW50UXQ6OnRyYW5zaXRpb25Ub0Nv
bW1pdHRlZEZvck5ld1BhZ2UpOgorCiAyMDEwLTA0LTAyICBMYXN6bG8gR29tYm9zICA8bGFzemxv
LjEuZ29tYm9zQG5va2lhLmNvbT4KIAogICAgICAgICBSZXZpZXdlZCBieSBLZW5uZXRoIFJvaGRl
IENocmlzdGlhbnNlbi4KZGlmZiAtLWdpdCBhL1dlYktpdC9xdC9XZWJDb3JlU3VwcG9ydC9GcmFt
ZUxvYWRlckNsaWVudFF0LmNwcCBiL1dlYktpdC9xdC9XZWJDb3JlU3VwcG9ydC9GcmFtZUxvYWRl
ckNsaWVudFF0LmNwcAppbmRleCBjNWM1NzM5Li41NWFmNDBkIDEwMDY0NAotLS0gYS9XZWJLaXQv
cXQvV2ViQ29yZVN1cHBvcnQvRnJhbWVMb2FkZXJDbGllbnRRdC5jcHAKKysrIGIvV2ViS2l0L3F0
L1dlYkNvcmVTdXBwb3J0L0ZyYW1lTG9hZGVyQ2xpZW50UXQuY3BwCkBAIC0yMTUsMTIgKzIxNSwx
NyBAQCB2b2lkIEZyYW1lTG9hZGVyQ2xpZW50UXQ6OnRyYW5zaXRpb25Ub0NvbW1pdHRlZEZvck5l
d1BhZ2UoKQogICAgIFFXZWJQYWdlKiBwYWdlID0gbV93ZWJGcmFtZS0+cGFnZSgpOwogICAgIGNv
bnN0IFFTaXplIHByZWZlcnJlZExheW91dFNpemUgPSBwYWdlLT5wcmVmZXJyZWRDb250ZW50c1Np
emUoKTsKIAorICAgIFNjcm9sbGJhck1vZGUgaFNjcm9sbGJhciA9IChTY3JvbGxiYXJNb2RlKSBt
X3dlYkZyYW1lLT5zY3JvbGxCYXJQb2xpY3koUXQ6Okhvcml6b250YWwpOworICAgIFNjcm9sbGJh
ck1vZGUgdlNjcm9sbGJhciA9IChTY3JvbGxiYXJNb2RlKSBtX3dlYkZyYW1lLT5zY3JvbGxCYXJQ
b2xpY3koUXQ6OlZlcnRpY2FsKTsKKyAgICBib29sIGhMb2NrID0gaFNjcm9sbGJhciAhPSBTY3Jv
bGxiYXJBdXRvOworICAgIGJvb2wgdkxvY2sgPSB2U2Nyb2xsYmFyICE9IFNjcm9sbGJhckF1dG87
CisKICAgICBtX2ZyYW1lLT5jcmVhdGVWaWV3KG1fd2ViRnJhbWUtPnBhZ2UoKS0+dmlld3BvcnRT
aXplKCksCiAgICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kQ29sb3IsICFiYWNrZ3Jv
dW5kQ29sb3IuYWxwaGEoKSwKICAgICAgICAgICAgICAgICAgICAgICAgIHByZWZlcnJlZExheW91
dFNpemUuaXNWYWxpZCgpID8gSW50U2l6ZShwcmVmZXJyZWRMYXlvdXRTaXplKSA6IEludFNpemUo
KSwKICAgICAgICAgICAgICAgICAgICAgICAgIHByZWZlcnJlZExheW91dFNpemUuaXNWYWxpZCgp
LAotICAgICAgICAgICAgICAgICAgICAgICAgKFNjcm9sbGJhck1vZGUpbV93ZWJGcmFtZS0+c2Ny
b2xsQmFyUG9saWN5KFF0OjpIb3Jpem9udGFsKSwKLSAgICAgICAgICAgICAgICAgICAgICAgIChT
Y3JvbGxiYXJNb2RlKW1fd2ViRnJhbWUtPnNjcm9sbEJhclBvbGljeShRdDo6VmVydGljYWwpKTsK
KyAgICAgICAgICAgICAgICAgICAgICAgIGhTY3JvbGxiYXIsIGhMb2NrLAorICAgICAgICAgICAg
ICAgICAgICAgICAgdlNjcm9sbGJhciwgdkxvY2spOwogfQogCiAKZGlmZiAtLWdpdCBhL1dlYktp
dC9xdC90ZXN0cy9xd2ViZnJhbWUvdHN0X3F3ZWJmcmFtZS5jcHAgYi9XZWJLaXQvcXQvdGVzdHMv
cXdlYmZyYW1lL3RzdF9xd2ViZnJhbWUuY3BwCmluZGV4IDM3ZjdiODguLmJiZjQ0N2EgMTAwNjQ0
Ci0tLSBhL1dlYktpdC9xdC90ZXN0cy9xd2ViZnJhbWUvdHN0X3F3ZWJmcmFtZS5jcHAKKysrIGIv
V2ViS2l0L3F0L3Rlc3RzL3F3ZWJmcmFtZS90c3RfcXdlYmZyYW1lLmNwcApAQCAtNTg1LDYgKzU4
NSw3IEBAIHByaXZhdGUgc2xvdHM6CiAgICAgdm9pZCByZW5kZXIoKTsKICAgICB2b2lkIHNjcm9s
bFBvc2l0aW9uKCk7CiAgICAgdm9pZCBzY3JvbGxUb0FuY2hvcigpOworICAgIHZvaWQgc2Nyb2xs
YmFyc09mZigpOwogICAgIHZvaWQgZXZhbHVhdGVXaWxsQ2F1c2VSZXBhaW50KCk7CiAgICAgdm9p
ZCBxT2JqZWN0V3JhcHBlcldpdGhTYW1lSWRlbnRpdHkoKTsKICAgICB2b2lkIGludHJvc3BlY3RR
dE1ldGhvZHNfZGF0YSgpOwpAQCAtMjc5Niw2ICsyNzk3LDM4IEBAIHZvaWQgdHN0X1FXZWJGcmFt
ZTo6c2Nyb2xsVG9BbmNob3IoKQogICAgIFFWRVJJRlkoZnJhbWUtPnNjcm9sbFBvc2l0aW9uKCku
eSgpICE9IDApOwogfQogCisKK3ZvaWQgdHN0X1FXZWJGcmFtZTo6c2Nyb2xsYmFyc09mZigpCit7
CisgICAgUVdlYlZpZXcgdmlldzsKKyAgICBRV2ViRnJhbWUqIG1haW5GcmFtZSA9IHZpZXcucGFn
ZSgpLT5tYWluRnJhbWUoKTsKKworICAgIG1haW5GcmFtZS0+c2V0U2Nyb2xsQmFyUG9saWN5KFF0
OjpWZXJ0aWNhbCwgUXQ6OlNjcm9sbEJhckFsd2F5c09mZik7CisgICAgbWFpbkZyYW1lLT5zZXRT
Y3JvbGxCYXJQb2xpY3koUXQ6Okhvcml6b250YWwsIFF0OjpTY3JvbGxCYXJBbHdheXNPZmYpOwor
CisgICAgUVN0cmluZyBodG1sKCI8c2NyaXB0PiIgXAorICAgICAgICAgICAgICAgICAiICAgZnVu
Y3Rpb24gY2hlY2tTY3JvbGxiYXIoKSB7IiBcCisgICAgICAgICAgICAgICAgICIgICAgICAgaWYg
KGlubmVyV2lkdGggPT09IGRvY3VtZW50LmRvY3VtZW50RWxlbWVudC5vZmZzZXRXaWR0aCkiIFwK
KyAgICAgICAgICAgICAgICAgIiAgICAgICAgICAgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ3Nw
YW4xJykuaW5uZXJUZXh0ID0gJ1NVQ0NFU1MnOyIgXAorICAgICAgICAgICAgICAgICAiICAgICAg
IGVsc2UiIFwKKyAgICAgICAgICAgICAgICAgIiAgICAgICAgICAgZG9jdW1lbnQuZ2V0RWxlbWVu
dEJ5SWQoJ3NwYW4xJykuaW5uZXJUZXh0ID0gJ0ZBSUwnOyIgXAorICAgICAgICAgICAgICAgICAi
ICAgfSIgXAorICAgICAgICAgICAgICAgICAiPC9zY3JpcHQ+IiBcCisgICAgICAgICAgICAgICAg
ICI8Ym9keT4iIFwKKyAgICAgICAgICAgICAgICAgIiAgIDxkaXYgc3R5bGU9J21hcmdpbi10b3A6
MTAwMHB4IDsgbWFyZ2luLWxlZnQ6MTAwMHB4Jz4iIFwKKyAgICAgICAgICAgICAgICAgIiAgICAg
ICA8YSBpZD0nb2Zmc2NyZWVuJyBocmVmPSdhJz5FbmQ8L2E+IiBcCisgICAgICAgICAgICAgICAg
ICIgICA8L2Rpdj4iIFwKKyAgICAgICAgICAgICAgICAgIjxzcGFuIGlkPSdzcGFuMSc+PC9zcGFu
PiIgXAorICAgICAgICAgICAgICAgICAiPC9ib2R5PiIpOworCisKKyAgICB2aWV3LnNldEh0bWwo
aHRtbCk7CisgICAgOjp3YWl0Rm9yU2lnbmFsKCZ2aWV3LCBTSUdOQUwobG9hZEZpbmlzaGVkKGJv
b2wpKSk7CisKKyAgICBtYWluRnJhbWUtPmV2YWx1YXRlSmF2YVNjcmlwdCgiY2hlY2tTY3JvbGxi
YXIoKTsiKTsKKyAgICBRQ09NUEFSRShtYWluRnJhbWUtPmRvY3VtZW50RWxlbWVudCgpLmZpbmRB
bGwoInNwYW4iKS5hdCgwKS50b1BsYWluVGV4dCgpLCBRU3RyaW5nKCJTVUNDRVNTIikpOworfQor
CiB2b2lkIHRzdF9RV2ViRnJhbWU6OmV2YWx1YXRlV2lsbENhdXNlUmVwYWludCgpCiB7CiAgICAg
UVdlYlZpZXcgdmlldzsKZGlmZiAtLWdpdCBhL1dlYktpdFRvb2xzL0NoYW5nZUxvZyBiL1dlYktp
dFRvb2xzL0NoYW5nZUxvZwppbmRleCA2Njc0MWI5Li44MmRmMDhlIDEwMDY0NAotLS0gYS9XZWJL
aXRUb29scy9DaGFuZ2VMb2cKKysrIGIvV2ViS2l0VG9vbHMvQ2hhbmdlTG9nCkBAIC0xLDMgKzEs
MTkgQEAKKzIwMTAtMDQtMDEgIEFudG9uaW8gR29tZXMgIDx0b25pa2l0b29Ad2Via2l0Lm9yZz4K
KworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBbUXRdIFJF
R1JFU1NJT046KHI1MDY2NSkgUVdlYkZyYW1lOjpzZXRTY3JvbGxCYXJQb2xpY3koUXQ6OlZlcnRp
Y2FsLFF0OjpTY3JvbGxCYXJBbHdheXNPZmYpIGhhcyBubyBlZmZlY3QuCisgICAgICAgIGh0dHBz
Oi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yOTQzMQorCisgICAgICAgIE1ha2Ug
cG9zc2libGUgdG8gRFJUIHRvIHNldCBzY3JvbGxiYXIgcG9saWNpZXMgKG9uLCBvZmYgb3IgYXV0
bykuCisKKyAgICAgICAgKiBEdW1wUmVuZGVyVHJlZS9xdC9MYXlvdXRUZXN0Q29udHJvbGxlclF0
LmNwcDoKKyAgICAgICAgKExheW91dFRlc3RDb250cm9sbGVyOjpzZXRTY3JvbGxiYXJQb2xpY3kp
OgorICAgICAgICAqIER1bXBSZW5kZXJUcmVlL3F0L0xheW91dFRlc3RDb250cm9sbGVyUXQuaDoK
KyAgICAgICAgKiBRdExhdW5jaGVyL21haW4uY3BwOgorICAgICAgICAoTGF1bmNoZXJXaW5kb3c6
OnRvZ2dsZVNjcm9sbGJhcnMpOgorICAgICAgICAoTGF1bmNoZXJXaW5kb3c6OmNyZWF0ZUNocm9t
ZSk6CisKIDIwMTAtMDQtMDYgIExhc3psbyBHb21ib3MgIDxsYXN6bG8uMS5nb21ib3NAbm9raWEu
Y29tPgogCiAgICAgICAgIFJldmlld2VkIGJ5IEtlbm5ldGggUm9oZGUgQ2hyaXN0aWFuc2VuLgpk
aWZmIC0tZ2l0IGEvV2ViS2l0VG9vbHMvRHVtcFJlbmRlclRyZWUvcXQvTGF5b3V0VGVzdENvbnRy
b2xsZXJRdC5jcHAgYi9XZWJLaXRUb29scy9EdW1wUmVuZGVyVHJlZS9xdC9MYXlvdXRUZXN0Q29u
dHJvbGxlclF0LmNwcAppbmRleCBiNjQ4MGMyLi42NzAzYjAxIDEwMDY0NAotLS0gYS9XZWJLaXRU
b29scy9EdW1wUmVuZGVyVHJlZS9xdC9MYXlvdXRUZXN0Q29udHJvbGxlclF0LmNwcAorKysgYi9X
ZWJLaXRUb29scy9EdW1wUmVuZGVyVHJlZS9xdC9MYXlvdXRUZXN0Q29udHJvbGxlclF0LmNwcApA
QCAtNTQxLDUgKzU0MSwyOSBAQCBib29sIExheW91dFRlc3RDb250cm9sbGVyOjpjYWxsU2hvdWxk
Q2xvc2VPbldlYlZpZXcoKQogICAgIHJldHVybiBmYWxzZTsKIH0KIAordm9pZCBMYXlvdXRUZXN0
Q29udHJvbGxlcjo6c2V0U2Nyb2xsYmFyUG9saWN5KGNvbnN0IFFTdHJpbmcmIG9yaWVudGF0aW9u
LCBjb25zdCBRU3RyaW5nJiBwb2xpY3kpCit7CisgICAgUXQ6Ok9yaWVudGF0aW9uIG87CisgICAg
UXQ6OlNjcm9sbEJhclBvbGljeSBwOworCisgICAgaWYgKG9yaWVudGF0aW9uID09ICJ2ZXJ0aWNh
bCIpCisgICAgICAgIG8gPSBRdDo6VmVydGljYWw7CisgICAgZWxzZSBpZiAob3JpZW50YXRpb24g
PT0gImhvcml6b250YWwiKQorICAgICAgICBvID0gUXQ6Okhvcml6b250YWw7CisgICAgZWxzZQor
ICAgICAgICByZXR1cm47CisKKyAgICBpZiAocG9saWN5ID09ICJvbiIpCisgICAgICAgIHAgPSBR
dDo6U2Nyb2xsQmFyQWx3YXlzT247CisgICAgZWxzZSBpZiAocG9saWN5ID09ICJhdXRvIikKKyAg
ICAgICAgcCA9IFF0OjpTY3JvbGxCYXJBc05lZWRlZDsKKyAgICBlbHNlIGlmIChwb2xpY3kgPT0g
Im9mZiIpCisgICAgICAgIHAgPSBRdDo6U2Nyb2xsQmFyQWx3YXlzT2ZmOworICAgIGVsc2UKKyAg
ICAgICAgcmV0dXJuOworCisgICAgbV9kcnQtPndlYlBhZ2UoKS0+bWFpbkZyYW1lKCktPnNldFNj
cm9sbEJhclBvbGljeShvLCBwKTsKK30KKwogY29uc3QgdW5zaWduZWQgTGF5b3V0VGVzdENvbnRy
b2xsZXI6Om1heFZpZXdXaWR0aCA9IDgwMDsKIGNvbnN0IHVuc2lnbmVkIExheW91dFRlc3RDb250
cm9sbGVyOjptYXhWaWV3SGVpZ2h0ID0gNjAwOwpkaWZmIC0tZ2l0IGEvV2ViS2l0VG9vbHMvRHVt
cFJlbmRlclRyZWUvcXQvTGF5b3V0VGVzdENvbnRyb2xsZXJRdC5oIGIvV2ViS2l0VG9vbHMvRHVt
cFJlbmRlclRyZWUvcXQvTGF5b3V0VGVzdENvbnRyb2xsZXJRdC5oCmluZGV4IDM2YjVmNzAuLjNi
ZDlkYjggMTAwNjQ0Ci0tLSBhL1dlYktpdFRvb2xzL0R1bXBSZW5kZXJUcmVlL3F0L0xheW91dFRl
c3RDb250cm9sbGVyUXQuaAorKysgYi9XZWJLaXRUb29scy9EdW1wUmVuZGVyVHJlZS9xdC9MYXlv
dXRUZXN0Q29udHJvbGxlclF0LmgKQEAgLTE2NSw2ICsxNjUsMTIgQEAgcHVibGljIHNsb3RzOgog
ICAgIGludCBudW1iZXJPZlBhZ2VzKGZsb2F0IHdpZHRoID0gbWF4Vmlld1dpZHRoLCBmbG9hdCBo
ZWlnaHQgPSBtYXhWaWV3SGVpZ2h0KTsKICAgICBib29sIGNhbGxTaG91bGRDbG9zZU9uV2ViVmll
dygpOwogCisgICAgLyoKKyAgICAgICAgUG9saWN5IHZhbHVlczogJ29uJywgJ2F1dG8nIG9yICdv
ZmYnLgorICAgICAgICBPcmllbnRhdGlvbiB2YWx1ZXM6ICd2ZXJ0aWNhbCcgb3IgJ2hvcml6b250
YWwnLgorICAgICovCisgICAgdm9pZCBzZXRTY3JvbGxiYXJQb2xpY3koY29uc3QgUVN0cmluZyYg
b3JpZW50YXRpb24sIGNvbnN0IFFTdHJpbmcmIHBvbGljeSk7CisKIHByaXZhdGUgc2xvdHM6CiAg
ICAgdm9pZCBwcm9jZXNzV29yaygpOwogCi0tIAoxLjYuMC40Cgo=
</data>
<flag name="review"
          id="36165"
          type_id="1"
          status="-"
          setter="hyatt"
    />
    <flag name="commit-queue"
          id="36166"
          type_id="3"
          status="-"
          setter="tonikitoo"
    />
          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>52736</attachid>
            <date>2010-04-07 08:12:47 -0700</date>
            <delta_ts>2010-04-07 08:26:19 -0700</delta_ts>
            <desc>patch_1 - v3 - addressed discussion with dhyatt on IRC</desc>
            <filename>0001-2010-04-01-Antonio-Gomes-tonikitoo-webkit.org.patch</filename>
            <type>text/plain</type>
            <size>26372</size>
            <attacher name="Antonio Gomes">tonikitoo</attacher>
            
              <data encoding="base64">RnJvbSBkOTIzNWFlNDg2NGI5YTkwN2Q1NjQ4MmI4MWFiNDZlNGY1NDE2MTdhIE1vbiBTZXAgMTcg
MDA6MDA6MDAgMjAwMQpGcm9tOiBBbnRvbmlvIEdvbWVzIDx0b25pa2l0b29Ad2Via2l0Lm9yZz4K
RGF0ZTogV2VkLCA3IEFwciAyMDEwIDEwOjQ1OjA5IC0wNDAwClN1YmplY3Q6IFtQQVRDSF0gMjAx
MC0wNC0wMSAgQW50b25pbyBHb21lcyAgPHRvbmlraXRvb0B3ZWJraXQub3JnPgoKICAgICAgICBS
ZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KCiAgICAgICAgW1F0XSBSRUdSRVNTSU9OOihyNTA2
NjUpIFFXZWJGcmFtZTo6c2V0U2Nyb2xsQmFyUG9saWN5KFF0OjpWZXJ0aWNhbCxRdDo6U2Nyb2xs
QmFyQWx3YXlzT2ZmKSBoYXMgbm8gZWZmZWN0LgogICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQu
b3JnL3Nob3dfYnVnLmNnaT9pZD0yOTQzMQoKICAgICAgICBUZXN0OiBmYXN0L292ZXJmbG93L3Nj
cm9sbGJhci1yZXN0b3JlZC1hbmQtdGhlbi1sb2NrZWQuaHRtbAoKICAgICAgICBXZWJDb3JlOgoK
ICAgICAgICBQYXRjaCBpbnRyb2R1Y2VzIGEgbG9jayBzY3JvbGxiYXJzIGNvbmNlcHQgdG8gU2Ny
b2xsVmlldywgYXMgaW4gV2ViRHluYW1pY1Njcm9sbEJhcnNWaWV3Lm1tL2gKICAgICAgICBvbiBX
ZWJLaXQvbWFjLiBJdCBpcyBuZWVkZWQgYmVjYXVzZSBpbiBRdFdlYktpdCwgd2UgaGF2ZSBBcGkg
Zm9yIHNldHRpbmcgYm90aCB2ZXJ0aWNhbCBhbmQKICAgICAgICBob3Jpem9udGFsIHNjcm9sbGJh
cnMgb24vb2ZmL2F1dG8uIFdoZW4gaXQgaXMgc2V0IHRvIG9mZiwgZm9yIGV4YW1wbGUsIGl0IHNo
b3VsZCByZW1haW4KICAgICAgICBhcyBzdWNoLCB1bmxlc3MgdW5zZXQuCgogICAgICAgIEZvciB0
aGUgbG9ja2luZyBjb25lY3B0LCBvcHRpb25hbCAnbG9jaycgcGFyYW1ldGVycyB3ZXJlIGFkZGVk
IHRvIHNldFNjcm9sbGJhck1vZGVzLAogICAgICAgIHNldEhvcml6b250YWxTY3JvbGxiYXJNb2Rl
IGFuZCBzZXRWZXJ0aWNhbFNjcm9sbGJhck1vZGUgbWV0aG9kcyBvZiBTY3JvbGxWaWV3LiBBcyBp
dAogICAgICAgIGlzIG9wdGlvbmFsLCBhbGwgcHJldmlvdXMgY29kZSBjYWxsaW5nIHRoZW0gZG8g
bm90IG5lZWQgbW9kaWZpY2F0aW9uLgoKICAgICAgICBUd28gb3B0aW9uYWwgcGFyYW1ldGVycyB3
ZXJlIGFsc28gYWRkZWQgdG8gRnJhbWUncyBjcmVhdGVWaWV3IG1ldGhvZCwgZm9yIGhvcml6b250
YWwgYW5kIHZlcnRpY2FsCiAgICAgICAgbG9jayBzdGF0ZSBwZXJzaXN0ZW5jZSBjcm9zcyBwYWdl
IGxvYWRzLgoKICAgICAgICAqIFdlYkNvcmUuYmFzZS5leHA6CiAgICAgICAgKiBwYWdlL0ZyYW1l
LmNwcDoKICAgICAgICAoV2ViQ29yZTo6RnJhbWU6OmNyZWF0ZVZpZXcpOgogICAgICAgICogcGxh
dGZvcm0vU2Nyb2xsVmlldy5jcHA6CiAgICAgICAgKFdlYkNvcmU6OlNjcm9sbFZpZXc6OlNjcm9s
bFZpZXcpOgogICAgICAgIChXZWJDb3JlOjpTY3JvbGxWaWV3OjpzZXRTY3JvbGxiYXJNb2Rlcyk6
CiAgICAgICAgKFdlYkNvcmU6OlNjcm9sbFZpZXc6OnNldEhvcml6b250YWxTY3JvbGxiYXJNb2Rl
KToKICAgICAgICAoV2ViQ29yZTo6U2Nyb2xsVmlldzo6c2V0VmVydGljYWxTY3JvbGxiYXJNb2Rl
KToKICAgICAgICAqIHBsYXRmb3JtL1Njcm9sbFZpZXcuaDoKICAgICAgICAoV2ViQ29yZTo6U2Ny
b2xsVmlldzo6c2V0SG9yaXpvbnRhbFNjcm9sbGJhckxvY2spOgogICAgICAgIChXZWJDb3JlOjpT
Y3JvbGxWaWV3Ojppc0hvcml6b250YWxTY3JvbGxiYXJMb2NrZWQpOgogICAgICAgIChXZWJDb3Jl
OjpTY3JvbGxWaWV3OjpzZXRWZXJ0aWNhbFNjcm9sbGJhckxvY2spOgogICAgICAgIChXZWJDb3Jl
OjpTY3JvbGxWaWV3Ojppc1ZlcnRpY2FsU2Nyb2xsYmFyTG9ja2VkKToKICAgICAgICAoV2ViQ29y
ZTo6U2Nyb2xsVmlldzo6c2V0U2Nyb2xsaW5nTW9kZXNMb2NrZWQpOgoKICAgICAgICBXZWJLaXQv
cXQ6CgogICAgICAgIE1ha2UgdXNlIG9mIHRoZSBuZXcgbG9jayBwYXJhbWV0ZXIgb2Ygc2V0e1Zl
cnRpY2FsLEhvcml6b250YWx9U2Nyb2xsYmFyTW9kZS4KCiAgICAgICAgQWx3YXlzIGFkZGVkIGEg
cXQgYXV0byB0ZXN0IGZvciBzZXQgc2Nyb2xsYmFyIHBvbGljeSBmZWF0dXJlLgoKICAgICAgICAq
IEFwaS9xd2ViZnJhbWUuY3BwOgogICAgICAgIChRV2ViRnJhbWU6OnNldFNjcm9sbEJhclBvbGlj
eSk6CiAgICAgICAgKiB0ZXN0cy9xd2ViZnJhbWUvdHN0X3F3ZWJmcmFtZS5jcHA6CiAgICAgICAg
KiBXZWJDb3JlU3VwcG9ydC9GcmFtZUxvYWRlckNsaWVudFF0LmNwcDoKICAgICAgICAoRnJhbWVM
b2FkZXJDbGllbnRRdDo6dHJhbnNpdGlvblRvQ29tbWl0dGVkRm9yTmV3UGFnZSk6CgogICAgICAg
IFdlYktpdFRvb2xzOgoKICAgICAgICBNYWtlIHBvc3NpYmxlIHRvIERSVCB0byBzZXQgc2Nyb2xs
YmFyIHBvbGljaWVzIChvbiwgb2ZmIG9yIGF1dG8pLgoKICAgICAgICAqIER1bXBSZW5kZXJUcmVl
L3F0L0xheW91dFRlc3RDb250cm9sbGVyUXQuY3BwOgogICAgICAgIChMYXlvdXRUZXN0Q29udHJv
bGxlcjo6c2V0U2Nyb2xsYmFyUG9saWN5KToKICAgICAgICAqIER1bXBSZW5kZXJUcmVlL3F0L0xh
eW91dFRlc3RDb250cm9sbGVyUXQuaDoKICAgICAgICAqIFF0TGF1bmNoZXIvbWFpbi5jcHA6CiAg
ICAgICAgKExhdW5jaGVyV2luZG93Ojp0b2dnbGVTY3JvbGxiYXJzKToKICAgICAgICAoTGF1bmNo
ZXJXaW5kb3c6OmNyZWF0ZUNocm9tZSk6CgogICAgICAgIExheW91dFRlc3RzOgoKICAgICAgICAq
IGZhc3Qvb3ZlcmZsb3cvc2Nyb2xsYmFyLXJlc3RvcmVkLWFuZC10aGVuLWxvY2tlZC1leHBlY3Rl
ZC50eHQ6IEFkZGVkLgogICAgICAgICogZmFzdC9vdmVyZmxvdy9zY3JvbGxiYXItcmVzdG9yZWQt
YW5kLXRoZW4tbG9ja2VkLmh0bWw6IEFkZGVkLgotLS0KIExheW91dFRlc3RzL0NoYW5nZUxvZyAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgICAxMCArKysrKwogLi4uc2Nyb2xsYmFyLXJl
c3RvcmVkLWFuZC10aGVuLWxvY2tlZC1leHBlY3RlZC50eHQgfCAgICA4ICsrKysKIC4uLi9zY3Jv
bGxiYXItcmVzdG9yZWQtYW5kLXRoZW4tbG9ja2VkLmh0bWwgICAgICAgIHwgICA0MSArKysrKysr
KysrKysrKysrKysrKwogTGF5b3V0VGVzdHMvcGxhdGZvcm0vZ3RrL1NraXBwZWQgICAgICAgICAg
ICAgICAgICAgfCAgICAzICsKIExheW91dFRlc3RzL3BsYXRmb3JtL21hYy9Ta2lwcGVkICAgICAg
ICAgICAgICAgICAgIHwgICAgMiArCiBMYXlvdXRUZXN0cy9wbGF0Zm9ybS93aW4vU2tpcHBlZCAg
ICAgICAgICAgICAgICAgICB8ICAgIDMgKwogV2ViQ29yZS9DaGFuZ2VMb2cgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgfCAgIDM1ICsrKysrKysrKysrKysrKysrCiBXZWJDb3JlL1dl
YkNvcmUuYmFzZS5leHAgICAgICAgICAgICAgICAgICAgICAgICAgICB8ICAgIDIgLQogV2ViQ29y
ZS9wYWdlL0ZyYW1lLmNwcCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCAgICA1ICstCiBX
ZWJDb3JlL3BhZ2UvRnJhbWUuaCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8ICAgIDMg
Ky0KIFdlYkNvcmUvcGxhdGZvcm0vU2Nyb2xsVmlldy5jcHAgICAgICAgICAgICAgICAgICAgIHwg
ICAyOCArKysrKysrKysrKy0tCiBXZWJDb3JlL3BsYXRmb3JtL1Njcm9sbFZpZXcuaCAgICAgICAg
ICAgICAgICAgICAgICB8ICAgMTggKysrKysrKy0KIFdlYktpdC9xdC9BcGkvcXdlYmZyYW1lLmNw
cCAgICAgICAgICAgICAgICAgICAgICAgIHwgICAgNCArLQogV2ViS2l0L3F0L0NoYW5nZUxvZyAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCAgIDE3ICsrKysrKysrCiBXZWJLaXQvcXQv
V2ViQ29yZVN1cHBvcnQvRnJhbWVMb2FkZXJDbGllbnRRdC5jcHAgICB8ICAgIDkgKysrLQogV2Vi
S2l0L3F0L3Rlc3RzL3F3ZWJmcmFtZS90c3RfcXdlYmZyYW1lLmNwcCAgICAgICAgfCAgIDMzICsr
KysrKysrKysrKysrKysKIFdlYktpdFRvb2xzL0NoYW5nZUxvZyAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgIHwgICAxNiArKysrKysrKwogLi4uL0R1bXBSZW5kZXJUcmVlL3F0L0xheW91dFRl
c3RDb250cm9sbGVyUXQuY3BwICAgfCAgIDI0ICsrKysrKysrKysrCiAuLi4vRHVtcFJlbmRlclRy
ZWUvcXQvTGF5b3V0VGVzdENvbnRyb2xsZXJRdC5oICAgICB8ICAgIDYgKysrCiAxOSBmaWxlcyBj
aGFuZ2VkLCAyNTEgaW5zZXJ0aW9ucygrKSwgMTYgZGVsZXRpb25zKC0pCiBjcmVhdGUgbW9kZSAx
MDA2NDQgTGF5b3V0VGVzdHMvZmFzdC9vdmVyZmxvdy9zY3JvbGxiYXItcmVzdG9yZWQtYW5kLXRo
ZW4tbG9ja2VkLWV4cGVjdGVkLnR4dAogY3JlYXRlIG1vZGUgMTAwNjQ0IExheW91dFRlc3RzL2Zh
c3Qvb3ZlcmZsb3cvc2Nyb2xsYmFyLXJlc3RvcmVkLWFuZC10aGVuLWxvY2tlZC5odG1sCgpkaWZm
IC0tZ2l0IGEvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCmlu
ZGV4IDg1OWQzOGEuLmVmMzRiZmMgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL0NoYW5nZUxvZwor
KysgYi9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKQEAgLTEsMyArMSwxMyBAQAorMjAxMC0wNC0wMSAg
QW50b25pbyBHb21lcyAgPHRvbmlraXRvb0B3ZWJraXQub3JnPgorCisgICAgICAgIFJldmlld2Vk
IGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIFtRdF0gUkVHUkVTU0lPTjoocjUwNjY1KSBR
V2ViRnJhbWU6OnNldFNjcm9sbEJhclBvbGljeShRdDo6VmVydGljYWwsUXQ6OlNjcm9sbEJhckFs
d2F5c09mZikgaGFzIG5vIGVmZmVjdC4KKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcv
c2hvd19idWcuY2dpP2lkPTI5NDMxCisKKyAgICAgICAgKiBmYXN0L292ZXJmbG93L3Njcm9sbGJh
ci1yZXN0b3JlZC1hbmQtdGhlbi1sb2NrZWQtZXhwZWN0ZWQudHh0OiBBZGRlZC4KKyAgICAgICAg
KiBmYXN0L292ZXJmbG93L3Njcm9sbGJhci1yZXN0b3JlZC1hbmQtdGhlbi1sb2NrZWQuaHRtbDog
QWRkZWQuCisKIDIwMTAtMDQtMDYgIElseWEgVGlraG9ub3Zza3kgIDxsb2lzbG9AY2hyb21pdW0u
b3JnPgogCiAgICAgICAgIFJldmlld2VkIGJ5IFBhdmVsIEZlbGRtYW4uCmRpZmYgLS1naXQgYS9M
YXlvdXRUZXN0cy9mYXN0L292ZXJmbG93L3Njcm9sbGJhci1yZXN0b3JlZC1hbmQtdGhlbi1sb2Nr
ZWQtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvZmFzdC9vdmVyZmxvdy9zY3JvbGxiYXItcmVz
dG9yZWQtYW5kLXRoZW4tbG9ja2VkLWV4cGVjdGVkLnR4dApuZXcgZmlsZSBtb2RlIDEwMDY0NApp
bmRleCAwMDAwMDAwLi4yZjFhYThhCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvZmFz
dC9vdmVyZmxvdy9zY3JvbGxiYXItcmVzdG9yZWQtYW5kLXRoZW4tbG9ja2VkLWV4cGVjdGVkLnR4
dApAQCAtMCwwICsxLDggQEAKK1Rlc3QgZm9yIGJ1ZyAyOTQzMSBbUXRdIFJFR1JFU1NJT046KHI1
MDY2NSkgUVdlYkZyYW1lOjpzZXRTY3JvbGxCYXJQb2xpY3koUXQ6OlZlcnRpY2FsLFF0OjpTY3Jv
bGxCYXJBbHdheXNPZmYpIGhhcyBubyBlZmZlY3QuCisKK1RoaXMgdGVzdCBlbnN1cmVzIHRoZSBj
b3JyZWN0bmVzcyBvZiB0d28gc2Nyb2xsYmFyIGJlaGF2aW91cjoKKworVGhpcyB0ZXN0cyB0aGF0
IGFmdGVyIHNldHRpbmcgJ292ZXJmbG93JyBvbiB0aGUgZG9jdW1lbnQgZWxlbWVudCB0byAnaGlk
ZGVuJyBhbmQgYmFjayB0byAndmlzaWJsZScsIHNjcm9sbGJhcnMgYXBwZWFyIGFzIG5lY2Vzc2Fy
eS4KK0FmdGVyIGV4cGxpY2l0bHkgc2V0dGluZyBhIHNjcm9sbGJhciBwb2xpY3kgZGlmZmVyZW50
IHRoYW4gJ2F1dG8nLCBXZWJDb3JlIGhvbm9ycyB0aGF0IHVudGlsIGl0IGlzIHVuc2V0LgorUEFT
UworUEFTUwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9vdmVyZmxvdy9zY3JvbGxiYXIt
cmVzdG9yZWQtYW5kLXRoZW4tbG9ja2VkLmh0bWwgYi9MYXlvdXRUZXN0cy9mYXN0L292ZXJmbG93
L3Njcm9sbGJhci1yZXN0b3JlZC1hbmQtdGhlbi1sb2NrZWQuaHRtbApuZXcgZmlsZSBtb2RlIDEw
MDY0NAppbmRleCAwMDAwMDAwLi45M2I1NGEwCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVz
dHMvZmFzdC9vdmVyZmxvdy9zY3JvbGxiYXItcmVzdG9yZWQtYW5kLXRoZW4tbG9ja2VkLmh0bWwK
QEAgLTAsMCArMSw0MSBAQAorPGJvZHk+CisgICAgPHA+CisgICAgICAgIFRlc3QgZm9yIDxpPjxh
IGhyZWY9Imh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yOTQzMSI+YnVn
IDI5NDMxPC9hPgorICAgICAgICBbUXRdIFJFR1JFU1NJT046KHI1MDY2NSkgUVdlYkZyYW1lOjpz
ZXRTY3JvbGxCYXJQb2xpY3koUXQ6OlZlcnRpY2FsLFF0OjpTY3JvbGxCYXJBbHdheXNPZmYpIGhh
cyBubyBlZmZlY3QuCisgICAgPC9wPgorICAgIDxwPiBUaGlzIHRlc3QgZW5zdXJlcyB0aGUgY29y
cmVjdG5lc3Mgb2YgdHdvIHNjcm9sbGJhciBiZWhhdmlvdXI6PC9wPgorICAgIDx1bD4KKyAgICAg
ICAgPGxpPiBUaGlzIHRlc3RzIHRoYXQgYWZ0ZXIgc2V0dGluZyAnb3ZlcmZsb3cnIG9uIHRoZSBk
b2N1bWVudCBlbGVtZW50IHRvCisgICAgICAgICAgICAnaGlkZGVuJyBhbmQgYmFjayB0byAndmlz
aWJsZScsIHNjcm9sbGJhcnMgYXBwZWFyIGFzIG5lY2Vzc2FyeS4KKyAgICAgICAgPC9saT4KKyAg
ICAgICAgPGxpPgorICAgICAgICAgICAgQWZ0ZXIgZXhwbGljaXRseSBzZXR0aW5nIGEgc2Nyb2xs
YmFyIHBvbGljeSBkaWZmZXJlbnQgdGhhbiAnYXV0bycsIFdlYkNvcmUKKyAgICAgICAgICAgIGhv
bm9ycyB0aGF0IHVudGlsIGl0IGlzIHVuc2V0LgorICAgICAgICA8L2xpPgorICAgIDwvdWw+Cisg
ICAgPGRpdiBpZD0iZHluYW1pYyI+PC9kaXY+CisgICAgPHAgaWQ9InJlc3VsdCI+RkFJTDogVGVz
dCBkaWQgbm90IHJ1biB0byBjb21wbGV0aW9uPC9wPgorICAgIDxzY3JpcHQ+CisgICAgICAgIGlm
ICh3aW5kb3cubGF5b3V0VGVzdENvbnRyb2xsZXIpCisgICAgICAgICAgICBsYXlvdXRUZXN0Q29u
dHJvbGxlci5kdW1wQXNUZXh0KCk7CisKKyAgICAgICAgZG9jdW1lbnQuZG9jdW1lbnRFbGVtZW50
LnN0eWxlLm92ZXJmbG93ID0gImhpZGRlbiI7CisgICAgICAgIGRvY3VtZW50LmJvZHkub2Zmc2V0
VG9wOworICAgICAgICBkb2N1bWVudC5kb2N1bWVudEVsZW1lbnQuc3R5bGUucmVtb3ZlUHJvcGVy
dHkoIm92ZXJmbG93Iik7CisgICAgICAgIGRvY3VtZW50LmJvZHkuc3R5bGUuaGVpZ2h0ID0gIjIw
MCUiOworICAgICAgICB2YXIgcmVzdWx0ID0gKGlubmVyV2lkdGggPT09IGRvY3VtZW50LmRvY3Vt
ZW50RWxlbWVudC5vZmZzZXRXaWR0aCkKKyAgICAgICAgICAgID8gIkZBSUw6IFNjcm9sbGJhciBk
aWQgbm90IGFwcGVhciBhZnRlciByZXNldHRpbmcgJ292ZXJmbG93JyIKKyAgICAgICAgICAgIDog
IlBBU1MiOworCisgICAgICAgIGlmICh3aW5kb3cubGF5b3V0VGVzdENvbnRyb2xsZXIpIHsKKyAg
ICAgICAgICAgIGxheW91dFRlc3RDb250cm9sbGVyLnNldFNjcm9sbGJhclBvbGljeSgndmVydGlj
YWwnLCAnb2ZmJyk7CisgICAgICAgICAgICBsYXlvdXRUZXN0Q29udHJvbGxlci5zZXRTY3JvbGxi
YXJQb2xpY3koJ2hvcml6b250YWwnLCAnb2ZmJyk7CisKKyAgICAgICAgICAgIHJlc3VsdCArPSAo
aW5uZXJXaWR0aCA9PT0gZG9jdW1lbnQuZG9jdW1lbnRFbGVtZW50Lm9mZnNldFdpZHRoKQorICAg
ICAgICAgICAgICAgID8gIlxuUEFTUyIKKyAgICAgICAgICAgICAgICA6ICJcbkZBSUw6IFNjcm9s
bGJhciBkaWQgYXBwZWFyIGFmdGVyIHR1cm5pbmcgaXQgb2ZmIjsKKyAgICAgICAgfQorCisgICAg
ICAgIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJyZXN1bHQiKS5pbm5lclRleHQgPSByZXN1bHQ7
CisgICAgPC9zY3JpcHQ+Cis8L2JvZHk+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9wbGF0Zm9y
bS9ndGsvU2tpcHBlZCBiL0xheW91dFRlc3RzL3BsYXRmb3JtL2d0ay9Ta2lwcGVkCmluZGV4IDM4
YTQ4MDMuLjk4MjM1YWQgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL3BsYXRmb3JtL2d0ay9Ta2lw
cGVkCisrKyBiL0xheW91dFRlc3RzL3BsYXRmb3JtL2d0ay9Ta2lwcGVkCkBAIC01ODkyLDMgKzU4
OTIsNiBAQCBmYXN0L21lZGlhL21lZGlhLWZlYXR1cmUtd2d0LXZpZXctbW9kZS5odG1sCiAjIE1l
ZGlhUGxheWVyUHJpdmF0ZUdTdHJlYW1lciBkb2Vzbid0IHJldHVybiB0byBORVRXT1JLX0lETEUg
YW5kIGhlbmNlIGRvZXNuJ3QgZmlyZSBhIHN1c3BlbmQgZXZlbnQKICMgaHR0cHM6Ly9idWdzLndl
YmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTM3MDM0CiBodHRwL3Rlc3RzL21lZGlhL3ZpZGVvLXBs
YXktc3VzcGVuZC5odG1sCisKKyMgTmVlZCB0byBhZGQgZnVuY3Rpb25hbGl0eSB0byBEdW1wUmVu
ZGVyVHJlZSB0byBoYW5kbGUgc2Nyb2xsYmFyIHBvbGljZSBjaGFuZ2VzCitmYXN0L292ZXJmbG93
L3Njcm9sbGJhci1yZXN0b3JlZC1hbmQtdGhlbi1sb2NrZWQuaHRtbApkaWZmIC0tZ2l0IGEvTGF5
b3V0VGVzdHMvcGxhdGZvcm0vbWFjL1NraXBwZWQgYi9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9tYWMv
U2tpcHBlZAppbmRleCBhNjFhZDIxLi5jZjFiZjVlIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9w
bGF0Zm9ybS9tYWMvU2tpcHBlZAorKysgYi9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9tYWMvU2tpcHBl
ZApAQCAtMTU2LDMgKzE1Niw1IEBAIGZhc3QvcmVwbGFjZWQvYm9yZGVyLXJhZGl1cy1jbGlwLmh0
bWwKICMgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTM2NjQ2CiBmYXN0
L3dvcmtlcnMvd29ya2VyLXRlcm1pbmF0ZS5odG1sCiAKKyMgTmVlZCB0byBhZGQgZnVuY3Rpb25h
bGl0eSB0byBEdW1wUmVuZGVyVHJlZSB0byBoYW5kbGUgc2Nyb2xsYmFyIHBvbGljZSBjaGFuZ2Vz
CitmYXN0L292ZXJmbG93L3Njcm9sbGJhci1yZXN0b3JlZC1hbmQtdGhlbi1sb2NrZWQuaHRtbApk
aWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvcGxhdGZvcm0vd2luL1NraXBwZWQgYi9MYXlvdXRUZXN0
cy9wbGF0Zm9ybS93aW4vU2tpcHBlZAppbmRleCBlN2M0Y2VmLi41OGYwY2EzIDEwMDY0NAotLS0g
YS9MYXlvdXRUZXN0cy9wbGF0Zm9ybS93aW4vU2tpcHBlZAorKysgYi9MYXlvdXRUZXN0cy9wbGF0
Zm9ybS93aW4vU2tpcHBlZApAQCAtODIyLDMgKzgyMiw2IEBAIGZhc3QvbWVkaWEvbWVkaWEtZmVh
dHVyZS13Z3Qtdmlldy1tb2RlLmh0bWwKIAogIyBOZWVkIGV4cGVjdGF0aW9ucy4gU2VlIGh0dHBz
Oi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0zNjQ2MQogZmFzdC9yZXBhaW50L292
ZXJmbG93LXNjcm9sbC1ib2R5LWFwcGVhci5odG1sCisKKyMgTmVlZCB0byBhZGQgZnVuY3Rpb25h
bGl0eSB0byBEdW1wUmVuZGVyVHJlZSB0byBoYW5kbGUgc2Nyb2xsYmFyIHBvbGljZSBjaGFuZ2Vz
CitmYXN0L292ZXJmbG93L3Njcm9sbGJhci1yZXN0b3JlZC1hbmQtdGhlbi1sb2NrZWQuaHRtbApk
aWZmIC0tZ2l0IGEvV2ViQ29yZS9DaGFuZ2VMb2cgYi9XZWJDb3JlL0NoYW5nZUxvZwppbmRleCA3
NDZkYzdiLi5iYjMzMGMzIDEwMDY0NAotLS0gYS9XZWJDb3JlL0NoYW5nZUxvZworKysgYi9XZWJD
b3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDM4IEBACisyMDEwLTA0LTAxICBBbnRvbmlvIEdvbWVz
ICA8dG9uaWtpdG9vQHdlYmtpdC5vcmc+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChP
T1BTISkuCisKKyAgICAgICAgW1F0XSBSRUdSRVNTSU9OOihyNTA2NjUpIFFXZWJGcmFtZTo6c2V0
U2Nyb2xsQmFyUG9saWN5KFF0OjpWZXJ0aWNhbCxRdDo6U2Nyb2xsQmFyQWx3YXlzT2ZmKSBoYXMg
bm8gZWZmZWN0LgorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/
aWQ9Mjk0MzEKKworICAgICAgICBUZXN0OiBmYXN0L292ZXJmbG93L3Njcm9sbGJhci1yZXN0b3Jl
ZC1hbmQtdGhlbi1sb2NrZWQuaHRtbAorCisgICAgICAgIFBhdGNoIGludHJvZHVjZXMgYSBsb2Nr
IHNjcm9sbGJhcnMgY29uY2VwdCB0byBTY3JvbGxWaWV3LCBhcyBpbiBXZWJEeW5hbWljU2Nyb2xs
QmFyc1ZpZXcubW0vaAorICAgICAgICBvbiBXZWJLaXQvbWFjLiBJdCBpcyBuZWVkZWQgYmVjYXVz
ZSBpbiBRdFdlYktpdCwgd2UgaGF2ZSBBcGkgZm9yIHNldHRpbmcgYm90aCB2ZXJ0aWNhbCBhbmQK
KyAgICAgICAgaG9yaXpvbnRhbCBzY3JvbGxiYXJzIG9uL29mZi9hdXRvLiBXaGVuIGl0IGlzIHNl
dCB0byBvZmYsIGZvciBleGFtcGxlLCBpdCBzaG91bGQgcmVtYWluCisgICAgICAgIGFzIHN1Y2gs
IHVubGVzcyB1bnNldC4KKworICAgICAgICBGb3IgdGhlIGxvY2tpbmcgY29uZWNwdCwgb3B0aW9u
YWwgJ2xvY2snIHBhcmFtZXRlcnMgd2VyZSBhZGRlZCB0byBzZXRTY3JvbGxiYXJNb2RlcywKKyAg
ICAgICAgc2V0SG9yaXpvbnRhbFNjcm9sbGJhck1vZGUgYW5kIHNldFZlcnRpY2FsU2Nyb2xsYmFy
TW9kZSBtZXRob2RzIG9mIFNjcm9sbFZpZXcuIEFzIGl0CisgICAgICAgIGlzIG9wdGlvbmFsLCBh
bGwgcHJldmlvdXMgY29kZSBjYWxsaW5nIHRoZW0gZG8gbm90IG5lZWQgbW9kaWZpY2F0aW9uLgor
CisgICAgICAgIFR3byBvcHRpb25hbCBwYXJhbWV0ZXJzIHdlcmUgYWxzbyBhZGRlZCB0byBGcmFt
ZSdzIGNyZWF0ZVZpZXcgbWV0aG9kLCBmb3IgaG9yaXpvbnRhbCBhbmQgdmVydGljYWwKKyAgICAg
ICAgbG9jayBzdGF0ZSBwZXJzaXN0ZW5jZSBjcm9zcyBwYWdlIGxvYWRzLgorCisgICAgICAgICog
cGFnZS9GcmFtZS5jcHA6CisgICAgICAgIChXZWJDb3JlOjpGcmFtZTo6Y3JlYXRlVmlldyk6Cisg
ICAgICAgICogcGxhdGZvcm0vU2Nyb2xsVmlldy5jcHA6CisgICAgICAgIChXZWJDb3JlOjpTY3Jv
bGxWaWV3OjpTY3JvbGxWaWV3KToKKyAgICAgICAgKFdlYkNvcmU6OlNjcm9sbFZpZXc6OnNldFNj
cm9sbGJhck1vZGVzKToKKyAgICAgICAgKFdlYkNvcmU6OlNjcm9sbFZpZXc6OnNldEhvcml6b250
YWxTY3JvbGxiYXJNb2RlKToKKyAgICAgICAgKFdlYkNvcmU6OlNjcm9sbFZpZXc6OnNldFZlcnRp
Y2FsU2Nyb2xsYmFyTW9kZSk6CisgICAgICAgICogcGxhdGZvcm0vU2Nyb2xsVmlldy5oOgorICAg
ICAgICAoV2ViQ29yZTo6U2Nyb2xsVmlldzo6c2V0SG9yaXpvbnRhbFNjcm9sbGJhckxvY2spOgor
ICAgICAgICAoV2ViQ29yZTo6U2Nyb2xsVmlldzo6aXNIb3Jpem9udGFsU2Nyb2xsYmFyTG9ja2Vk
KToKKyAgICAgICAgKFdlYkNvcmU6OlNjcm9sbFZpZXc6OnNldFZlcnRpY2FsU2Nyb2xsYmFyTG9j
ayk6CisgICAgICAgIChXZWJDb3JlOjpTY3JvbGxWaWV3Ojppc1ZlcnRpY2FsU2Nyb2xsYmFyTG9j
a2VkKToKKyAgICAgICAgKFdlYkNvcmU6OlNjcm9sbFZpZXc6OnNldFNjcm9sbGluZ01vZGVzTG9j
a2VkKToKKwogMjAxMC0wNC0wNiAgSWx5YSBUaWtob25vdnNreSAgPGxvaXNsb0BjaHJvbWl1bS5v
cmc+CiAKICAgICAgICAgVW5yZXZpZXdlZCBidWlsZCBmaXguCmRpZmYgLS1naXQgYS9XZWJDb3Jl
L1dlYkNvcmUuYmFzZS5leHAgYi9XZWJDb3JlL1dlYkNvcmUuYmFzZS5leHAKaW5kZXggMTFmZGFm
My4uYTI2NGM0NSAxMDA2NDQKLS0tIGEvV2ViQ29yZS9XZWJDb3JlLmJhc2UuZXhwCisrKyBiL1dl
YkNvcmUvV2ViQ29yZS5iYXNlLmV4cApAQCAtMTM1LDcgKzEzNSw2IEBAIF9fWjRjb3JlUDdET01O
b2RlCiBfX1o0Y29yZVA4RE9NUmFuZ2UKIF9fWk4zSlNDOEJpbmRpbmdzOEluc3RhbmNlMTZuZXdS
dW50aW1lT2JqZWN0RVBOU185RXhlY1N0YXRlRQogX19aTjdXZWJDb3JlMTBNb3VzZUV2ZW50QzFF
UktOU18xMkF0b21pY1N0cmluZ0ViYk4zV1RGMTBQYXNzUmVmUHRySU5TXzlET01XaW5kb3dFRUVp
aWlpaWJiYmJ0TlM1X0lOU18xMUV2ZW50VGFyZ2V0RUVFTlM1X0lOU185Q2xpcGJvYXJkRUVFYgot
X19aTjdXZWJDb3JlMTBTY3JvbGxWaWV3MTdzZXRTY3JvbGxiYXJNb2Rlc0VOU18xM1Njcm9sbGJh
ck1vZGVFUzFfCiBfX1pON1dlYkNvcmUxMFNjcm9sbFZpZXcyMHNldENhbkhhdmVTY3JvbGxiYXJz
RWIKIF9fWk43V2ViQ29yZTEwU3RyaW5nSW1wbDExcmV2ZXJzZUZpbmRFUFMwX2liCiBfX1pON1dl
YkNvcmUxMFN0cmluZ0ltcGwxOWNyZWF0ZVVuaW5pdGlhbGl6ZWRFalJQdApAQCAtNTMwLDcgKzUy
OSw2IEBAIF9fWk43V2ViQ29yZTRjb3JlRVAyME5TVVJMUHJvdGVjdGlvblNwYWNlCiBfX1pON1dl
YkNvcmU1Q2FjaGUxMXNldERpc2FibGVkRWIKIF9fWk43V2ViQ29yZTVDYWNoZTEzZ2V0U3RhdGlz
dGljc0V2CiBfX1pON1dlYkNvcmU1Q2FjaGUxM3NldENhcGFjaXRpZXNFampqCi1fX1pON1dlYkNv
cmU1RnJhbWUxMGNyZWF0ZVZpZXdFUktOU183SW50U2l6ZUVSS05TXzVDb2xvckViUzNfYk5TXzEz
U2Nyb2xsYmFyTW9kZUVTN18KIF9fWk43V2ViQ29yZTVGcmFtZTEwZmluZFN0cmluZ0VSS05TXzZT
dHJpbmdFYmJiYgogX19aTjdXZWJDb3JlNUZyYW1lMTFzaG91bGRDbG9zZUV2CiBfX1pON1dlYkNv
cmU1RnJhbWUxM3JlYXBwbHlTdHlsZXNFdgpkaWZmIC0tZ2l0IGEvV2ViQ29yZS9wYWdlL0ZyYW1l
LmNwcCBiL1dlYkNvcmUvcGFnZS9GcmFtZS5jcHAKaW5kZXggMDRkN2E5ZS4uZThjMGY0YSAxMDA2
NDQKLS0tIGEvV2ViQ29yZS9wYWdlL0ZyYW1lLmNwcAorKysgYi9XZWJDb3JlL3BhZ2UvRnJhbWUu
Y3BwCkBAIC0xNzc1LDcgKzE3NzUsOCBAQCBEb2N1bWVudCogRnJhbWU6OmRvY3VtZW50QXRQb2lu
dChjb25zdCBJbnRQb2ludCYgcG9pbnQpCiB2b2lkIEZyYW1lOjpjcmVhdGVWaWV3KGNvbnN0IElu
dFNpemUmIHZpZXdwb3J0U2l6ZSwKICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgQ29sb3Im
IGJhY2tncm91bmRDb2xvciwgYm9vbCB0cmFuc3BhcmVudCwKICAgICAgICAgICAgICAgICAgICAg
ICAgY29uc3QgSW50U2l6ZSYgZml4ZWRMYXlvdXRTaXplLCBib29sIHVzZUZpeGVkTGF5b3V0LAot
ICAgICAgICAgICAgICAgICAgICAgICBTY3JvbGxiYXJNb2RlIGhvcml6b250YWxTY3JvbGxiYXJN
b2RlLCBTY3JvbGxiYXJNb2RlIHZlcnRpY2FsU2Nyb2xsYmFyTW9kZSkKKyAgICAgICAgICAgICAg
ICAgICAgICAgU2Nyb2xsYmFyTW9kZSBob3Jpem9udGFsU2Nyb2xsYmFyTW9kZSwgYm9vbCBob3Jp
em9udGFsTG9jaywKKyAgICAgICAgICAgICAgICAgICAgICAgU2Nyb2xsYmFyTW9kZSB2ZXJ0aWNh
bFNjcm9sbGJhck1vZGUsIGJvb2wgdmVydGljYWxMb2NrKQogewogICAgIEFTU0VSVCh0aGlzKTsK
ICAgICBBU1NFUlQobV9wYWdlKTsKQEAgLTE3OTUsNyArMTc5Niw3IEBAIHZvaWQgRnJhbWU6OmNy
ZWF0ZVZpZXcoY29uc3QgSW50U2l6ZSYgdmlld3BvcnRTaXplLAogICAgIH0gZWxzZQogICAgICAg
ICBmcmFtZVZpZXcgPSBGcmFtZVZpZXc6OmNyZWF0ZSh0aGlzKTsKIAotICAgIGZyYW1lVmlldy0+
c2V0U2Nyb2xsYmFyTW9kZXMoaG9yaXpvbnRhbFNjcm9sbGJhck1vZGUsIHZlcnRpY2FsU2Nyb2xs
YmFyTW9kZSk7CisgICAgZnJhbWVWaWV3LT5zZXRTY3JvbGxiYXJNb2Rlcyhob3Jpem9udGFsU2Ny
b2xsYmFyTW9kZSwgdmVydGljYWxTY3JvbGxiYXJNb2RlLCBob3Jpem9udGFsTG9jaywgdmVydGlj
YWxMb2NrKTsKIAogICAgIHNldFZpZXcoZnJhbWVWaWV3KTsKIApkaWZmIC0tZ2l0IGEvV2ViQ29y
ZS9wYWdlL0ZyYW1lLmggYi9XZWJDb3JlL3BhZ2UvRnJhbWUuaAppbmRleCBiNjMwYmVmLi40YTdj
ZGFmIDEwMDY0NAotLS0gYS9XZWJDb3JlL3BhZ2UvRnJhbWUuaAorKysgYi9XZWJDb3JlL3BhZ2Uv
RnJhbWUuaApAQCAtMTE5LDcgKzExOSw4IEBAIG5hbWVzcGFjZSBXZWJDb3JlIHsKICAgICAgICAg
dm9pZCBzZXRFeGNsdWRlRnJvbVRleHRTZWFyY2goYm9vbCk7CiAKICAgICAgICAgdm9pZCBjcmVh
dGVWaWV3KGNvbnN0IEludFNpemUmLCBjb25zdCBDb2xvciYsIGJvb2wsIGNvbnN0IEludFNpemUg
JiwgYm9vbCwKLSAgICAgICAgICAgICAgICAgICAgICAgIFNjcm9sbGJhck1vZGUgPSBTY3JvbGxi
YXJBdXRvLCBTY3JvbGxiYXJNb2RlID0gU2Nyb2xsYmFyQXV0byk7CisgICAgICAgICAgICAgICAg
ICAgICAgICBTY3JvbGxiYXJNb2RlID0gU2Nyb2xsYmFyQXV0bywgYm9vbCBob3Jpem9udGFsTG9j
ayA9IGZhbHNlLAorICAgICAgICAgICAgICAgICAgICAgICAgU2Nyb2xsYmFyTW9kZSA9IFNjcm9s
bGJhckF1dG8sIGJvb2wgdmVydGljYWxMb2NrID0gZmFsc2UpOwogCiAgICAgICAgIHZvaWQgaW5q
ZWN0VXNlclNjcmlwdHMoVXNlclNjcmlwdEluamVjdGlvblRpbWUpOwogICAgICAgICAKZGlmZiAt
LWdpdCBhL1dlYkNvcmUvcGxhdGZvcm0vU2Nyb2xsVmlldy5jcHAgYi9XZWJDb3JlL3BsYXRmb3Jt
L1Njcm9sbFZpZXcuY3BwCmluZGV4IDIxMzFjOTEuLmJiNWU3ZTYgMTAwNjQ0Ci0tLSBhL1dlYkNv
cmUvcGxhdGZvcm0vU2Nyb2xsVmlldy5jcHAKKysrIGIvV2ViQ29yZS9wbGF0Zm9ybS9TY3JvbGxW
aWV3LmNwcApAQCAtNDIsNiArNDIsOCBAQCBuYW1lc3BhY2UgV2ViQ29yZSB7CiBTY3JvbGxWaWV3
OjpTY3JvbGxWaWV3KCkKICAgICA6IG1faG9yaXpvbnRhbFNjcm9sbGJhck1vZGUoU2Nyb2xsYmFy
QXV0bykKICAgICAsIG1fdmVydGljYWxTY3JvbGxiYXJNb2RlKFNjcm9sbGJhckF1dG8pCisgICAg
LCBtX2hvcml6b250YWxTY3JvbGxiYXJMb2NrKGZhbHNlKQorICAgICwgbV92ZXJ0aWNhbFNjcm9s
bGJhckxvY2soZmFsc2UpCiAgICAgLCBtX3Byb2hpYml0c1Njcm9sbGluZyhmYWxzZSkKICAgICAs
IG1fY2FuQmxpdE9uU2Nyb2xsKHRydWUpCiAgICAgLCBtX3Njcm9sbGJhcnNBdm9pZGluZ1Jlc2l6
ZXIoMCkKQEAgLTExNSwxMiArMTE3LDMwIEBAIFBhc3NSZWZQdHI8U2Nyb2xsYmFyPiBTY3JvbGxW
aWV3OjpjcmVhdGVTY3JvbGxiYXIoU2Nyb2xsYmFyT3JpZW50YXRpb24gb3JpZW50YXRpCiAgICAg
cmV0dXJuIFNjcm9sbGJhcjo6Y3JlYXRlTmF0aXZlU2Nyb2xsYmFyKHRoaXMsIG9yaWVudGF0aW9u
LCBSZWd1bGFyU2Nyb2xsYmFyKTsKIH0KIAotdm9pZCBTY3JvbGxWaWV3OjpzZXRTY3JvbGxiYXJN
b2RlcyhTY3JvbGxiYXJNb2RlIGhvcml6b250YWxNb2RlLCBTY3JvbGxiYXJNb2RlIHZlcnRpY2Fs
TW9kZSkKK3ZvaWQgU2Nyb2xsVmlldzo6c2V0U2Nyb2xsYmFyTW9kZXMoU2Nyb2xsYmFyTW9kZSBo
b3Jpem9udGFsTW9kZSwgU2Nyb2xsYmFyTW9kZSB2ZXJ0aWNhbE1vZGUsCisgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgIGJvb2wgaG9yaXpvbnRhbExvY2ssIGJvb2wgdmVydGljYWxM
b2NrKQogewotICAgIGlmIChob3Jpem9udGFsTW9kZSA9PSBob3Jpem9udGFsU2Nyb2xsYmFyTW9k
ZSgpICYmIHZlcnRpY2FsTW9kZSA9PSB2ZXJ0aWNhbFNjcm9sbGJhck1vZGUoKSkKKyAgICBib29s
IG5lZWRzVXBkYXRlID0gZmFsc2U7CisKKyAgICBpZiAoaG9yaXpvbnRhbE1vZGUgIT0gaG9yaXpv
bnRhbFNjcm9sbGJhck1vZGUoKSAmJiAhbV9ob3Jpem9udGFsU2Nyb2xsYmFyTG9jaykgeworICAg
ICAgICBtX2hvcml6b250YWxTY3JvbGxiYXJNb2RlID0gaG9yaXpvbnRhbE1vZGU7CisgICAgICAg
IG5lZWRzVXBkYXRlID0gdHJ1ZTsKKyAgICB9CisKKyAgICBpZiAodmVydGljYWxNb2RlICE9IHZl
cnRpY2FsU2Nyb2xsYmFyTW9kZSgpICYmICFtX3ZlcnRpY2FsU2Nyb2xsYmFyTG9jaykgeworICAg
ICAgICBtX3ZlcnRpY2FsU2Nyb2xsYmFyTW9kZSA9IHZlcnRpY2FsTW9kZTsKKyAgICAgICAgbmVl
ZHNVcGRhdGUgPSB0cnVlOworICAgIH0KKworICAgIGlmIChob3Jpem9udGFsTG9jaykKKyAgICAg
ICAgc2V0SG9yaXpvbnRhbFNjcm9sbGJhckxvY2soKTsKKworICAgIGlmICh2ZXJ0aWNhbExvY2sp
CisgICAgICAgIHNldFZlcnRpY2FsU2Nyb2xsYmFyTG9jaygpOworCisgICAgaWYgKCFuZWVkc1Vw
ZGF0ZSkKICAgICAgICAgcmV0dXJuOwotICAgIG1faG9yaXpvbnRhbFNjcm9sbGJhck1vZGUgPSBo
b3Jpem9udGFsTW9kZTsKLSAgICBtX3ZlcnRpY2FsU2Nyb2xsYmFyTW9kZSA9IHZlcnRpY2FsTW9k
ZTsKKwogICAgIGlmIChwbGF0Zm9ybVdpZGdldCgpKQogICAgICAgICBwbGF0Zm9ybVNldFNjcm9s
bGJhck1vZGVzKCk7CiAgICAgZWxzZQpkaWZmIC0tZ2l0IGEvV2ViQ29yZS9wbGF0Zm9ybS9TY3Jv
bGxWaWV3LmggYi9XZWJDb3JlL3BsYXRmb3JtL1Njcm9sbFZpZXcuaAppbmRleCBjMzU2YTYwLi45
MTM0ZGRmIDEwMDY0NAotLS0gYS9XZWJDb3JlL3BsYXRmb3JtL1Njcm9sbFZpZXcuaAorKysgYi9X
ZWJDb3JlL3BsYXRmb3JtL1Njcm9sbFZpZXcuaApAQCAtODMsMTIgKzgzLDIwIEBAIHB1YmxpYzoK
ICAgICAvLyBBdXRvIG1lYW5zIHNob3cgYSBzY3JvbGxiYXIgb25seSB3aGVuIG9uZSBpcyBuZWVk
ZWQuCiAgICAgLy8gTm90ZSB0aGF0IGZvciBwbGF0Zm9ybXMgd2l0aCBuYXRpdmUgd2lkZ2V0cywg
dGhlc2UgbW9kZXMgYXJlIGNvbnNpZGVyZWQgYWR2aXNvcnkuICBJbiBvdGhlciB3b3JkcyB0aGUg
dW5kZXJseWluZyBuYXRpdmUKICAgICAvLyB3aWRnZXQgbWF5IGNob29zZSBub3QgdG8gaG9ub3Ig
dGhlIHJlcXVlc3RlZCBtb2Rlcy4KLSAgICB2b2lkIHNldFNjcm9sbGJhck1vZGVzKFNjcm9sbGJh
ck1vZGUgaG9yaXpvbnRhbE1vZGUsIFNjcm9sbGJhck1vZGUgdmVydGljYWxNb2RlKTsKLSAgICB2
b2lkIHNldEhvcml6b250YWxTY3JvbGxiYXJNb2RlKFNjcm9sbGJhck1vZGUgbW9kZSkgeyBzZXRT
Y3JvbGxiYXJNb2Rlcyhtb2RlLCB2ZXJ0aWNhbFNjcm9sbGJhck1vZGUoKSk7IH0KLSAgICB2b2lk
IHNldFZlcnRpY2FsU2Nyb2xsYmFyTW9kZShTY3JvbGxiYXJNb2RlIG1vZGUpIHsgc2V0U2Nyb2xs
YmFyTW9kZXMoaG9yaXpvbnRhbFNjcm9sbGJhck1vZGUoKSwgbW9kZSk7IH0KKyAgICB2b2lkIHNl
dFNjcm9sbGJhck1vZGVzKFNjcm9sbGJhck1vZGUgaG9yaXpvbnRhbE1vZGUsIFNjcm9sbGJhck1v
ZGUgdmVydGljYWxNb2RlLCBib29sIGhvcml6b250YWxMb2NrID0gZmFsc2UsIGJvb2wgdmVydGlj
YWxMb2NrID0gZmFsc2UpOworICAgIHZvaWQgc2V0SG9yaXpvbnRhbFNjcm9sbGJhck1vZGUoU2Ny
b2xsYmFyTW9kZSBtb2RlLCBib29sIGxvY2sgPSBmYWxzZSkgeyBzZXRTY3JvbGxiYXJNb2Rlcyht
b2RlLCB2ZXJ0aWNhbFNjcm9sbGJhck1vZGUoKSwgbG9jaywgdmVydGljYWxTY3JvbGxiYXJMb2Nr
KCkpOyB9CisgICAgdm9pZCBzZXRWZXJ0aWNhbFNjcm9sbGJhck1vZGUoU2Nyb2xsYmFyTW9kZSBt
b2RlLCBib29sIGxvY2sgPSBmYWxzZSkgeyBzZXRTY3JvbGxiYXJNb2Rlcyhob3Jpem9udGFsU2Ny
b2xsYmFyTW9kZSgpLCBtb2RlLCBob3Jpem9udGFsU2Nyb2xsYmFyTG9jaygpLCBsb2NrKTsgfTsK
ICAgICB2b2lkIHNjcm9sbGJhck1vZGVzKFNjcm9sbGJhck1vZGUmIGhvcml6b250YWxNb2RlLCBT
Y3JvbGxiYXJNb2RlJiB2ZXJ0aWNhbE1vZGUpIGNvbnN0OwogICAgIFNjcm9sbGJhck1vZGUgaG9y
aXpvbnRhbFNjcm9sbGJhck1vZGUoKSBjb25zdCB7IFNjcm9sbGJhck1vZGUgaG9yaXpvbnRhbCwg
dmVydGljYWw7IHNjcm9sbGJhck1vZGVzKGhvcml6b250YWwsIHZlcnRpY2FsKTsgcmV0dXJuIGhv
cml6b250YWw7IH0KICAgICBTY3JvbGxiYXJNb2RlIHZlcnRpY2FsU2Nyb2xsYmFyTW9kZSgpIGNv
bnN0IHsgU2Nyb2xsYmFyTW9kZSBob3Jpem9udGFsLCB2ZXJ0aWNhbDsgc2Nyb2xsYmFyTW9kZXMo
aG9yaXpvbnRhbCwgdmVydGljYWwpOyByZXR1cm4gdmVydGljYWw7IH0KKworICAgIHZvaWQgc2V0
SG9yaXpvbnRhbFNjcm9sbGJhckxvY2soYm9vbCBsb2NrID0gdHJ1ZSkgeyBtX2hvcml6b250YWxT
Y3JvbGxiYXJMb2NrID0gbG9jazsgfQorICAgIGJvb2wgaG9yaXpvbnRhbFNjcm9sbGJhckxvY2so
KSBjb25zdCB7IHJldHVybiBtX2hvcml6b250YWxTY3JvbGxiYXJMb2NrOyB9CisgICAgdm9pZCBz
ZXRWZXJ0aWNhbFNjcm9sbGJhckxvY2soYm9vbCBsb2NrID0gdHJ1ZSkgeyBtX3ZlcnRpY2FsU2Ny
b2xsYmFyTG9jayA9IGxvY2s7IH0KKyAgICBib29sIHZlcnRpY2FsU2Nyb2xsYmFyTG9jaygpIGNv
bnN0IHsgcmV0dXJuIG1fdmVydGljYWxTY3JvbGxiYXJMb2NrOyB9CisKKyAgICB2b2lkIHNldFNj
cm9sbGluZ01vZGVzTG9jayhib29sIGxvY2sgPSB0cnVlKSB7IG1faG9yaXpvbnRhbFNjcm9sbGJh
ckxvY2sgPSBtX3ZlcnRpY2FsU2Nyb2xsYmFyTG9jayA9IGxvY2s7IH0KKwogICAgIHZpcnR1YWwg
dm9pZCBzZXRDYW5IYXZlU2Nyb2xsYmFycyhib29sKTsKICAgICBib29sIGNhbkhhdmVTY3JvbGxi
YXJzKCkgY29uc3QgeyByZXR1cm4gaG9yaXpvbnRhbFNjcm9sbGJhck1vZGUoKSAhPSBTY3JvbGxi
YXJBbHdheXNPZmYgfHwgdmVydGljYWxTY3JvbGxiYXJNb2RlKCkgIT0gU2Nyb2xsYmFyQWx3YXlz
T2ZmOyB9CiAKQEAgLTI2MCw2ICsyNjgsMTAgQEAgcHJpdmF0ZToKICAgICBSZWZQdHI8U2Nyb2xs
YmFyPiBtX3ZlcnRpY2FsU2Nyb2xsYmFyOwogICAgIFNjcm9sbGJhck1vZGUgbV9ob3Jpem9udGFs
U2Nyb2xsYmFyTW9kZTsKICAgICBTY3JvbGxiYXJNb2RlIG1fdmVydGljYWxTY3JvbGxiYXJNb2Rl
OworCisgICAgYm9vbCBtX2hvcml6b250YWxTY3JvbGxiYXJMb2NrOworICAgIGJvb2wgbV92ZXJ0
aWNhbFNjcm9sbGJhckxvY2s7CisKICAgICBib29sIG1fcHJvaGliaXRzU2Nyb2xsaW5nOwogCiAg
ICAgSGFzaFNldDxSZWZQdHI8V2lkZ2V0PiA+IG1fY2hpbGRyZW47CmRpZmYgLS1naXQgYS9XZWJL
aXQvcXQvQXBpL3F3ZWJmcmFtZS5jcHAgYi9XZWJLaXQvcXQvQXBpL3F3ZWJmcmFtZS5jcHAKaW5k
ZXggM2JiY2ZlMi4uZTVjMjc2OCAxMDA2NDQKLS0tIGEvV2ViS2l0L3F0L0FwaS9xd2ViZnJhbWUu
Y3BwCisrKyBiL1dlYktpdC9xdC9BcGkvcXdlYmZyYW1lLmNwcApAQCAtMTA1MCwxMyArMTA1MCwx
MyBAQCB2b2lkIFFXZWJGcmFtZTo6c2V0U2Nyb2xsQmFyUG9saWN5KFF0OjpPcmllbnRhdGlvbiBv
cmllbnRhdGlvbiwgUXQ6OlNjcm9sbEJhclBvbAogICAgIGlmIChvcmllbnRhdGlvbiA9PSBRdDo6
SG9yaXpvbnRhbCkgewogICAgICAgICBkLT5ob3Jpem9udGFsU2Nyb2xsQmFyUG9saWN5ID0gcG9s
aWN5OwogICAgICAgICBpZiAoZC0+ZnJhbWUtPnZpZXcoKSkgewotICAgICAgICAgICAgZC0+ZnJh
bWUtPnZpZXcoKS0+c2V0SG9yaXpvbnRhbFNjcm9sbGJhck1vZGUoKFNjcm9sbGJhck1vZGUpcG9s
aWN5KTsKKyAgICAgICAgICAgIGQtPmZyYW1lLT52aWV3KCktPnNldEhvcml6b250YWxTY3JvbGxi
YXJNb2RlKChTY3JvbGxiYXJNb2RlKXBvbGljeSwgcG9saWN5ICE9IFF0OjpTY3JvbGxCYXJBc05l
ZWRlZCAvKiBsb2NrICovKTsKICAgICAgICAgICAgIGQtPmZyYW1lLT52aWV3KCktPnVwZGF0ZUNh
bkhhdmVTY3JvbGxiYXJzKCk7CiAgICAgICAgIH0KICAgICB9IGVsc2UgewogICAgICAgICBkLT52
ZXJ0aWNhbFNjcm9sbEJhclBvbGljeSA9IHBvbGljeTsKICAgICAgICAgaWYgKGQtPmZyYW1lLT52
aWV3KCkpIHsKLSAgICAgICAgICAgIGQtPmZyYW1lLT52aWV3KCktPnNldFZlcnRpY2FsU2Nyb2xs
YmFyTW9kZSgoU2Nyb2xsYmFyTW9kZSlwb2xpY3kpOworICAgICAgICAgICAgZC0+ZnJhbWUtPnZp
ZXcoKS0+c2V0VmVydGljYWxTY3JvbGxiYXJNb2RlKChTY3JvbGxiYXJNb2RlKXBvbGljeSwgcG9s
aWN5ICE9IFF0OjpTY3JvbGxCYXJBc05lZWRlZCAvKiBsb2NrICovKTsKICAgICAgICAgICAgIGQt
PmZyYW1lLT52aWV3KCktPnVwZGF0ZUNhbkhhdmVTY3JvbGxiYXJzKCk7CiAgICAgICAgIH0KICAg
ICB9CmRpZmYgLS1naXQgYS9XZWJLaXQvcXQvQ2hhbmdlTG9nIGIvV2ViS2l0L3F0L0NoYW5nZUxv
ZwppbmRleCA3ZjNiZDE2Li4xYzE0MzNjIDEwMDY0NAotLS0gYS9XZWJLaXQvcXQvQ2hhbmdlTG9n
CisrKyBiL1dlYktpdC9xdC9DaGFuZ2VMb2cKQEAgLTEsMyArMSwyMCBAQAorMjAxMC0wNC0wMSAg
QW50b25pbyBHb21lcyAgPHRvbmlraXRvb0B3ZWJraXQub3JnPgorCisgICAgICAgIFJldmlld2Vk
IGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIFtRdF0gUkVHUkVTU0lPTjoocjUwNjY1KSBR
V2ViRnJhbWU6OnNldFNjcm9sbEJhclBvbGljeShRdDo6VmVydGljYWwsUXQ6OlNjcm9sbEJhckFs
d2F5c09mZikgaGFzIG5vIGVmZmVjdC4KKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcv
c2hvd19idWcuY2dpP2lkPTI5NDMxCisKKyAgICAgICAgTWFrZSB1c2Ugb2YgdGhlIG5ldyBsb2Nr
IHBhcmFtZXRlciBvZiBzZXR7VmVydGljYWwsSG9yaXpvbnRhbH1TY3JvbGxiYXJNb2RlLgorCisg
ICAgICAgIEFsd2F5cyBhZGRlZCBhIHF0IGF1dG8gdGVzdCBmb3Igc2V0IHNjcm9sbGJhciBwb2xp
Y3kgZmVhdHVyZS4KKworICAgICAgICAqIEFwaS9xd2ViZnJhbWUuY3BwOgorICAgICAgICAoUVdl
YkZyYW1lOjpzZXRTY3JvbGxCYXJQb2xpY3kpOgorICAgICAgICAqIHRlc3RzL3F3ZWJmcmFtZS90
c3RfcXdlYmZyYW1lLmNwcDoKKyAgICAgICAgKiBXZWJDb3JlU3VwcG9ydC9GcmFtZUxvYWRlckNs
aWVudFF0LmNwcDoKKyAgICAgICAgKEZyYW1lTG9hZGVyQ2xpZW50UXQ6OnRyYW5zaXRpb25Ub0Nv
bW1pdHRlZEZvck5ld1BhZ2UpOgorCiAyMDEwLTA0LTAyICBMYXN6bG8gR29tYm9zICA8bGFzemxv
LjEuZ29tYm9zQG5va2lhLmNvbT4KIAogICAgICAgICBSZXZpZXdlZCBieSBLZW5uZXRoIFJvaGRl
IENocmlzdGlhbnNlbi4KZGlmZiAtLWdpdCBhL1dlYktpdC9xdC9XZWJDb3JlU3VwcG9ydC9GcmFt
ZUxvYWRlckNsaWVudFF0LmNwcCBiL1dlYktpdC9xdC9XZWJDb3JlU3VwcG9ydC9GcmFtZUxvYWRl
ckNsaWVudFF0LmNwcAppbmRleCBjNWM1NzM5Li41NWFmNDBkIDEwMDY0NAotLS0gYS9XZWJLaXQv
cXQvV2ViQ29yZVN1cHBvcnQvRnJhbWVMb2FkZXJDbGllbnRRdC5jcHAKKysrIGIvV2ViS2l0L3F0
L1dlYkNvcmVTdXBwb3J0L0ZyYW1lTG9hZGVyQ2xpZW50UXQuY3BwCkBAIC0yMTUsMTIgKzIxNSwx
NyBAQCB2b2lkIEZyYW1lTG9hZGVyQ2xpZW50UXQ6OnRyYW5zaXRpb25Ub0NvbW1pdHRlZEZvck5l
d1BhZ2UoKQogICAgIFFXZWJQYWdlKiBwYWdlID0gbV93ZWJGcmFtZS0+cGFnZSgpOwogICAgIGNv
bnN0IFFTaXplIHByZWZlcnJlZExheW91dFNpemUgPSBwYWdlLT5wcmVmZXJyZWRDb250ZW50c1Np
emUoKTsKIAorICAgIFNjcm9sbGJhck1vZGUgaFNjcm9sbGJhciA9IChTY3JvbGxiYXJNb2RlKSBt
X3dlYkZyYW1lLT5zY3JvbGxCYXJQb2xpY3koUXQ6Okhvcml6b250YWwpOworICAgIFNjcm9sbGJh
ck1vZGUgdlNjcm9sbGJhciA9IChTY3JvbGxiYXJNb2RlKSBtX3dlYkZyYW1lLT5zY3JvbGxCYXJQ
b2xpY3koUXQ6OlZlcnRpY2FsKTsKKyAgICBib29sIGhMb2NrID0gaFNjcm9sbGJhciAhPSBTY3Jv
bGxiYXJBdXRvOworICAgIGJvb2wgdkxvY2sgPSB2U2Nyb2xsYmFyICE9IFNjcm9sbGJhckF1dG87
CisKICAgICBtX2ZyYW1lLT5jcmVhdGVWaWV3KG1fd2ViRnJhbWUtPnBhZ2UoKS0+dmlld3BvcnRT
aXplKCksCiAgICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kQ29sb3IsICFiYWNrZ3Jv
dW5kQ29sb3IuYWxwaGEoKSwKICAgICAgICAgICAgICAgICAgICAgICAgIHByZWZlcnJlZExheW91
dFNpemUuaXNWYWxpZCgpID8gSW50U2l6ZShwcmVmZXJyZWRMYXlvdXRTaXplKSA6IEludFNpemUo
KSwKICAgICAgICAgICAgICAgICAgICAgICAgIHByZWZlcnJlZExheW91dFNpemUuaXNWYWxpZCgp
LAotICAgICAgICAgICAgICAgICAgICAgICAgKFNjcm9sbGJhck1vZGUpbV93ZWJGcmFtZS0+c2Ny
b2xsQmFyUG9saWN5KFF0OjpIb3Jpem9udGFsKSwKLSAgICAgICAgICAgICAgICAgICAgICAgIChT
Y3JvbGxiYXJNb2RlKW1fd2ViRnJhbWUtPnNjcm9sbEJhclBvbGljeShRdDo6VmVydGljYWwpKTsK
KyAgICAgICAgICAgICAgICAgICAgICAgIGhTY3JvbGxiYXIsIGhMb2NrLAorICAgICAgICAgICAg
ICAgICAgICAgICAgdlNjcm9sbGJhciwgdkxvY2spOwogfQogCiAKZGlmZiAtLWdpdCBhL1dlYktp
dC9xdC90ZXN0cy9xd2ViZnJhbWUvdHN0X3F3ZWJmcmFtZS5jcHAgYi9XZWJLaXQvcXQvdGVzdHMv
cXdlYmZyYW1lL3RzdF9xd2ViZnJhbWUuY3BwCmluZGV4IDM3ZjdiODguLmJiZjQ0N2EgMTAwNjQ0
Ci0tLSBhL1dlYktpdC9xdC90ZXN0cy9xd2ViZnJhbWUvdHN0X3F3ZWJmcmFtZS5jcHAKKysrIGIv
V2ViS2l0L3F0L3Rlc3RzL3F3ZWJmcmFtZS90c3RfcXdlYmZyYW1lLmNwcApAQCAtNTg1LDYgKzU4
NSw3IEBAIHByaXZhdGUgc2xvdHM6CiAgICAgdm9pZCByZW5kZXIoKTsKICAgICB2b2lkIHNjcm9s
bFBvc2l0aW9uKCk7CiAgICAgdm9pZCBzY3JvbGxUb0FuY2hvcigpOworICAgIHZvaWQgc2Nyb2xs
YmFyc09mZigpOwogICAgIHZvaWQgZXZhbHVhdGVXaWxsQ2F1c2VSZXBhaW50KCk7CiAgICAgdm9p
ZCBxT2JqZWN0V3JhcHBlcldpdGhTYW1lSWRlbnRpdHkoKTsKICAgICB2b2lkIGludHJvc3BlY3RR
dE1ldGhvZHNfZGF0YSgpOwpAQCAtMjc5Niw2ICsyNzk3LDM4IEBAIHZvaWQgdHN0X1FXZWJGcmFt
ZTo6c2Nyb2xsVG9BbmNob3IoKQogICAgIFFWRVJJRlkoZnJhbWUtPnNjcm9sbFBvc2l0aW9uKCku
eSgpICE9IDApOwogfQogCisKK3ZvaWQgdHN0X1FXZWJGcmFtZTo6c2Nyb2xsYmFyc09mZigpCit7
CisgICAgUVdlYlZpZXcgdmlldzsKKyAgICBRV2ViRnJhbWUqIG1haW5GcmFtZSA9IHZpZXcucGFn
ZSgpLT5tYWluRnJhbWUoKTsKKworICAgIG1haW5GcmFtZS0+c2V0U2Nyb2xsQmFyUG9saWN5KFF0
OjpWZXJ0aWNhbCwgUXQ6OlNjcm9sbEJhckFsd2F5c09mZik7CisgICAgbWFpbkZyYW1lLT5zZXRT
Y3JvbGxCYXJQb2xpY3koUXQ6Okhvcml6b250YWwsIFF0OjpTY3JvbGxCYXJBbHdheXNPZmYpOwor
CisgICAgUVN0cmluZyBodG1sKCI8c2NyaXB0PiIgXAorICAgICAgICAgICAgICAgICAiICAgZnVu
Y3Rpb24gY2hlY2tTY3JvbGxiYXIoKSB7IiBcCisgICAgICAgICAgICAgICAgICIgICAgICAgaWYg
KGlubmVyV2lkdGggPT09IGRvY3VtZW50LmRvY3VtZW50RWxlbWVudC5vZmZzZXRXaWR0aCkiIFwK
KyAgICAgICAgICAgICAgICAgIiAgICAgICAgICAgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ3Nw
YW4xJykuaW5uZXJUZXh0ID0gJ1NVQ0NFU1MnOyIgXAorICAgICAgICAgICAgICAgICAiICAgICAg
IGVsc2UiIFwKKyAgICAgICAgICAgICAgICAgIiAgICAgICAgICAgZG9jdW1lbnQuZ2V0RWxlbWVu
dEJ5SWQoJ3NwYW4xJykuaW5uZXJUZXh0ID0gJ0ZBSUwnOyIgXAorICAgICAgICAgICAgICAgICAi
ICAgfSIgXAorICAgICAgICAgICAgICAgICAiPC9zY3JpcHQ+IiBcCisgICAgICAgICAgICAgICAg
ICI8Ym9keT4iIFwKKyAgICAgICAgICAgICAgICAgIiAgIDxkaXYgc3R5bGU9J21hcmdpbi10b3A6
MTAwMHB4IDsgbWFyZ2luLWxlZnQ6MTAwMHB4Jz4iIFwKKyAgICAgICAgICAgICAgICAgIiAgICAg
ICA8YSBpZD0nb2Zmc2NyZWVuJyBocmVmPSdhJz5FbmQ8L2E+IiBcCisgICAgICAgICAgICAgICAg
ICIgICA8L2Rpdj4iIFwKKyAgICAgICAgICAgICAgICAgIjxzcGFuIGlkPSdzcGFuMSc+PC9zcGFu
PiIgXAorICAgICAgICAgICAgICAgICAiPC9ib2R5PiIpOworCisKKyAgICB2aWV3LnNldEh0bWwo
aHRtbCk7CisgICAgOjp3YWl0Rm9yU2lnbmFsKCZ2aWV3LCBTSUdOQUwobG9hZEZpbmlzaGVkKGJv
b2wpKSk7CisKKyAgICBtYWluRnJhbWUtPmV2YWx1YXRlSmF2YVNjcmlwdCgiY2hlY2tTY3JvbGxi
YXIoKTsiKTsKKyAgICBRQ09NUEFSRShtYWluRnJhbWUtPmRvY3VtZW50RWxlbWVudCgpLmZpbmRB
bGwoInNwYW4iKS5hdCgwKS50b1BsYWluVGV4dCgpLCBRU3RyaW5nKCJTVUNDRVNTIikpOworfQor
CiB2b2lkIHRzdF9RV2ViRnJhbWU6OmV2YWx1YXRlV2lsbENhdXNlUmVwYWludCgpCiB7CiAgICAg
UVdlYlZpZXcgdmlldzsKZGlmZiAtLWdpdCBhL1dlYktpdFRvb2xzL0NoYW5nZUxvZyBiL1dlYktp
dFRvb2xzL0NoYW5nZUxvZwppbmRleCA2Njc0MWI5Li44MmRmMDhlIDEwMDY0NAotLS0gYS9XZWJL
aXRUb29scy9DaGFuZ2VMb2cKKysrIGIvV2ViS2l0VG9vbHMvQ2hhbmdlTG9nCkBAIC0xLDMgKzEs
MTkgQEAKKzIwMTAtMDQtMDEgIEFudG9uaW8gR29tZXMgIDx0b25pa2l0b29Ad2Via2l0Lm9yZz4K
KworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBbUXRdIFJF
R1JFU1NJT046KHI1MDY2NSkgUVdlYkZyYW1lOjpzZXRTY3JvbGxCYXJQb2xpY3koUXQ6OlZlcnRp
Y2FsLFF0OjpTY3JvbGxCYXJBbHdheXNPZmYpIGhhcyBubyBlZmZlY3QuCisgICAgICAgIGh0dHBz
Oi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yOTQzMQorCisgICAgICAgIE1ha2Ug
cG9zc2libGUgdG8gRFJUIHRvIHNldCBzY3JvbGxiYXIgcG9saWNpZXMgKG9uLCBvZmYgb3IgYXV0
bykuCisKKyAgICAgICAgKiBEdW1wUmVuZGVyVHJlZS9xdC9MYXlvdXRUZXN0Q29udHJvbGxlclF0
LmNwcDoKKyAgICAgICAgKExheW91dFRlc3RDb250cm9sbGVyOjpzZXRTY3JvbGxiYXJQb2xpY3kp
OgorICAgICAgICAqIER1bXBSZW5kZXJUcmVlL3F0L0xheW91dFRlc3RDb250cm9sbGVyUXQuaDoK
KyAgICAgICAgKiBRdExhdW5jaGVyL21haW4uY3BwOgorICAgICAgICAoTGF1bmNoZXJXaW5kb3c6
OnRvZ2dsZVNjcm9sbGJhcnMpOgorICAgICAgICAoTGF1bmNoZXJXaW5kb3c6OmNyZWF0ZUNocm9t
ZSk6CisKIDIwMTAtMDQtMDYgIExhc3psbyBHb21ib3MgIDxsYXN6bG8uMS5nb21ib3NAbm9raWEu
Y29tPgogCiAgICAgICAgIFJldmlld2VkIGJ5IEtlbm5ldGggUm9oZGUgQ2hyaXN0aWFuc2VuLgpk
aWZmIC0tZ2l0IGEvV2ViS2l0VG9vbHMvRHVtcFJlbmRlclRyZWUvcXQvTGF5b3V0VGVzdENvbnRy
b2xsZXJRdC5jcHAgYi9XZWJLaXRUb29scy9EdW1wUmVuZGVyVHJlZS9xdC9MYXlvdXRUZXN0Q29u
dHJvbGxlclF0LmNwcAppbmRleCBiNjQ4MGMyLi42NzAzYjAxIDEwMDY0NAotLS0gYS9XZWJLaXRU
b29scy9EdW1wUmVuZGVyVHJlZS9xdC9MYXlvdXRUZXN0Q29udHJvbGxlclF0LmNwcAorKysgYi9X
ZWJLaXRUb29scy9EdW1wUmVuZGVyVHJlZS9xdC9MYXlvdXRUZXN0Q29udHJvbGxlclF0LmNwcApA
QCAtNTQxLDUgKzU0MSwyOSBAQCBib29sIExheW91dFRlc3RDb250cm9sbGVyOjpjYWxsU2hvdWxk
Q2xvc2VPbldlYlZpZXcoKQogICAgIHJldHVybiBmYWxzZTsKIH0KIAordm9pZCBMYXlvdXRUZXN0
Q29udHJvbGxlcjo6c2V0U2Nyb2xsYmFyUG9saWN5KGNvbnN0IFFTdHJpbmcmIG9yaWVudGF0aW9u
LCBjb25zdCBRU3RyaW5nJiBwb2xpY3kpCit7CisgICAgUXQ6Ok9yaWVudGF0aW9uIG87CisgICAg
UXQ6OlNjcm9sbEJhclBvbGljeSBwOworCisgICAgaWYgKG9yaWVudGF0aW9uID09ICJ2ZXJ0aWNh
bCIpCisgICAgICAgIG8gPSBRdDo6VmVydGljYWw7CisgICAgZWxzZSBpZiAob3JpZW50YXRpb24g
PT0gImhvcml6b250YWwiKQorICAgICAgICBvID0gUXQ6Okhvcml6b250YWw7CisgICAgZWxzZQor
ICAgICAgICByZXR1cm47CisKKyAgICBpZiAocG9saWN5ID09ICJvbiIpCisgICAgICAgIHAgPSBR
dDo6U2Nyb2xsQmFyQWx3YXlzT247CisgICAgZWxzZSBpZiAocG9saWN5ID09ICJhdXRvIikKKyAg
ICAgICAgcCA9IFF0OjpTY3JvbGxCYXJBc05lZWRlZDsKKyAgICBlbHNlIGlmIChwb2xpY3kgPT0g
Im9mZiIpCisgICAgICAgIHAgPSBRdDo6U2Nyb2xsQmFyQWx3YXlzT2ZmOworICAgIGVsc2UKKyAg
ICAgICAgcmV0dXJuOworCisgICAgbV9kcnQtPndlYlBhZ2UoKS0+bWFpbkZyYW1lKCktPnNldFNj
cm9sbEJhclBvbGljeShvLCBwKTsKK30KKwogY29uc3QgdW5zaWduZWQgTGF5b3V0VGVzdENvbnRy
b2xsZXI6Om1heFZpZXdXaWR0aCA9IDgwMDsKIGNvbnN0IHVuc2lnbmVkIExheW91dFRlc3RDb250
cm9sbGVyOjptYXhWaWV3SGVpZ2h0ID0gNjAwOwpkaWZmIC0tZ2l0IGEvV2ViS2l0VG9vbHMvRHVt
cFJlbmRlclRyZWUvcXQvTGF5b3V0VGVzdENvbnRyb2xsZXJRdC5oIGIvV2ViS2l0VG9vbHMvRHVt
cFJlbmRlclRyZWUvcXQvTGF5b3V0VGVzdENvbnRyb2xsZXJRdC5oCmluZGV4IDM2YjVmNzAuLjNi
ZDlkYjggMTAwNjQ0Ci0tLSBhL1dlYktpdFRvb2xzL0R1bXBSZW5kZXJUcmVlL3F0L0xheW91dFRl
c3RDb250cm9sbGVyUXQuaAorKysgYi9XZWJLaXRUb29scy9EdW1wUmVuZGVyVHJlZS9xdC9MYXlv
dXRUZXN0Q29udHJvbGxlclF0LmgKQEAgLTE2NSw2ICsxNjUsMTIgQEAgcHVibGljIHNsb3RzOgog
ICAgIGludCBudW1iZXJPZlBhZ2VzKGZsb2F0IHdpZHRoID0gbWF4Vmlld1dpZHRoLCBmbG9hdCBo
ZWlnaHQgPSBtYXhWaWV3SGVpZ2h0KTsKICAgICBib29sIGNhbGxTaG91bGRDbG9zZU9uV2ViVmll
dygpOwogCisgICAgLyoKKyAgICAgICAgUG9saWN5IHZhbHVlczogJ29uJywgJ2F1dG8nIG9yICdv
ZmYnLgorICAgICAgICBPcmllbnRhdGlvbiB2YWx1ZXM6ICd2ZXJ0aWNhbCcgb3IgJ2hvcml6b250
YWwnLgorICAgICovCisgICAgdm9pZCBzZXRTY3JvbGxiYXJQb2xpY3koY29uc3QgUVN0cmluZyYg
b3JpZW50YXRpb24sIGNvbnN0IFFTdHJpbmcmIHBvbGljeSk7CisKIHByaXZhdGUgc2xvdHM6CiAg
ICAgdm9pZCBwcm9jZXNzV29yaygpOwogCi0tIAoxLjYuMC40Cgo=
</data>
<flag name="commit-queue"
          id="36297"
          type_id="3"
          status="-"
          setter="tonikitoo"
    />
          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>52737</attachid>
            <date>2010-04-07 08:26:19 -0700</date>
            <delta_ts>2010-04-07 10:13:11 -0700</delta_ts>
            <desc>patch_1 - v3.1 - addressed discussion with dhyatt on IRC + rebased to ToT</desc>
            <filename>0001-2010-04-01-Antonio-Gomes-tonikitoo-webkit.org.patch</filename>
            <type>text/plain</type>
            <size>26406</size>
            <attacher name="Antonio Gomes">tonikitoo</attacher>
            
              <data encoding="base64">RnJvbSBjYzIxNDljNmM2OTc5NTc2MjAyNTkwMzVmMmFlNWNmYTQ3ZGMyYjcwIE1vbiBTZXAgMTcg
MDA6MDA6MDAgMjAwMQpGcm9tOiBBbnRvbmlvIEdvbWVzIDx0b25pa2l0b29Ad2Via2l0Lm9yZz4K
RGF0ZTogV2VkLCA3IEFwciAyMDEwIDEwOjQ1OjA5IC0wNDAwClN1YmplY3Q6IFtQQVRDSF0gMjAx
MC0wNC0wMSAgQW50b25pbyBHb21lcyAgPHRvbmlraXRvb0B3ZWJraXQub3JnPgoKICAgICAgICBS
ZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KCiAgICAgICAgW1F0XSBSRUdSRVNTSU9OOihyNTA2
NjUpIFFXZWJGcmFtZTo6c2V0U2Nyb2xsQmFyUG9saWN5KFF0OjpWZXJ0aWNhbCxRdDo6U2Nyb2xs
QmFyQWx3YXlzT2ZmKSBoYXMgbm8gZWZmZWN0LgogICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQu
b3JnL3Nob3dfYnVnLmNnaT9pZD0yOTQzMQoKICAgICAgICBUZXN0OiBmYXN0L292ZXJmbG93L3Nj
cm9sbGJhci1yZXN0b3JlZC1hbmQtdGhlbi1sb2NrZWQuaHRtbAoKICAgICAgICBXZWJDb3JlOgoK
ICAgICAgICBQYXRjaCBpbnRyb2R1Y2VzIGEgbG9jayBzY3JvbGxiYXJzIGNvbmNlcHQgdG8gU2Ny
b2xsVmlldywgYXMgaW4gV2ViRHluYW1pY1Njcm9sbEJhcnNWaWV3Lm1tL2gKICAgICAgICBvbiBX
ZWJLaXQvbWFjLiBJdCBpcyBuZWVkZWQgYmVjYXVzZSBpbiBRdFdlYktpdCwgd2UgaGF2ZSBBcGkg
Zm9yIHNldHRpbmcgYm90aCB2ZXJ0aWNhbCBhbmQKICAgICAgICBob3Jpem9udGFsIHNjcm9sbGJh
cnMgb24vb2ZmL2F1dG8uIFdoZW4gaXQgaXMgc2V0IHRvIG9mZiwgZm9yIGV4YW1wbGUsIGl0IHNo
b3VsZCByZW1haW4KICAgICAgICBhcyBzdWNoLCB1bmxlc3MgdW5zZXQuCgogICAgICAgIEZvciB0
aGUgbG9ja2luZyBjb25jZXB0LCBvcHRpb25hbCAnbG9jaycgcGFyYW1ldGVycyB3ZXJlIGFkZGVk
IHRvIHNldFNjcm9sbGJhck1vZGVzLAogICAgICAgIHNldEhvcml6b250YWxTY3JvbGxiYXJNb2Rl
IGFuZCBzZXRWZXJ0aWNhbFNjcm9sbGJhck1vZGUgbWV0aG9kcyBvZiBTY3JvbGxWaWV3LiBBcyB0
aGVzZQogICAgICAgIGFyZSBhbGwgb3B0aW9uYWwsIGFueSBwcmV2aW91cyBjb2RlIGNhbGxpbmcg
dGhlbSBkbyBub3QgbmVlZCBtb2RpZmljYXRpb24uCgogICAgICAgIFR3byBvcHRpb25hbCBwYXJh
bWV0ZXJzIHdlcmUgYWxzbyBhZGRlZCB0byBGcmFtZSdzIGNyZWF0ZVZpZXcgbWV0aG9kLCBmb3Ig
aG9yaXpvbnRhbCBhbmQgdmVydGljYWwKICAgICAgICBsb2NrIHN0YXRlIHBlcnNpc3RlbmNlIGNy
b3NzIHBhZ2UgbG9hZHMuCgogICAgICAgICogV2ViQ29yZS5iYXNlLmV4cDoKICAgICAgICAqIHBh
Z2UvRnJhbWUuY3BwOgogICAgICAgIChXZWJDb3JlOjpGcmFtZTo6Y3JlYXRlVmlldyk6CiAgICAg
ICAgKiBwbGF0Zm9ybS9TY3JvbGxWaWV3LmNwcDoKICAgICAgICAoV2ViQ29yZTo6U2Nyb2xsVmll
dzo6U2Nyb2xsVmlldyk6CiAgICAgICAgKFdlYkNvcmU6OlNjcm9sbFZpZXc6OnNldFNjcm9sbGJh
ck1vZGVzKToKICAgICAgICAoV2ViQ29yZTo6U2Nyb2xsVmlldzo6c2V0SG9yaXpvbnRhbFNjcm9s
bGJhck1vZGUpOgogICAgICAgIChXZWJDb3JlOjpTY3JvbGxWaWV3OjpzZXRWZXJ0aWNhbFNjcm9s
bGJhck1vZGUpOgogICAgICAgICogcGxhdGZvcm0vU2Nyb2xsVmlldy5oOgogICAgICAgIChXZWJD
b3JlOjpTY3JvbGxWaWV3OjpzZXRIb3Jpem9udGFsU2Nyb2xsYmFyTG9jayk6CiAgICAgICAgKFdl
YkNvcmU6OlNjcm9sbFZpZXc6OmlzSG9yaXpvbnRhbFNjcm9sbGJhckxvY2tlZCk6CiAgICAgICAg
KFdlYkNvcmU6OlNjcm9sbFZpZXc6OnNldFZlcnRpY2FsU2Nyb2xsYmFyTG9jayk6CiAgICAgICAg
KFdlYkNvcmU6OlNjcm9sbFZpZXc6OmlzVmVydGljYWxTY3JvbGxiYXJMb2NrZWQpOgogICAgICAg
IChXZWJDb3JlOjpTY3JvbGxWaWV3OjpzZXRTY3JvbGxpbmdNb2Rlc0xvY2tlZCk6CgogICAgICAg
IFdlYktpdC9xdDoKCiAgICAgICAgTWFrZSB1c2Ugb2YgdGhlIG5ldyBsb2NrIHBhcmFtZXRlciBv
ZiBzZXR7VmVydGljYWwsSG9yaXpvbnRhbH1TY3JvbGxiYXJNb2RlLgoKICAgICAgICBBbHdheXMg
YWRkZWQgYSBxdCBhdXRvIHRlc3QgZm9yIHNldCBzY3JvbGxiYXIgcG9saWN5IGZlYXR1cmUuCgog
ICAgICAgICogQXBpL3F3ZWJmcmFtZS5jcHA6CiAgICAgICAgKFFXZWJGcmFtZTo6c2V0U2Nyb2xs
QmFyUG9saWN5KToKICAgICAgICAqIHRlc3RzL3F3ZWJmcmFtZS90c3RfcXdlYmZyYW1lLmNwcDoK
ICAgICAgICAqIFdlYkNvcmVTdXBwb3J0L0ZyYW1lTG9hZGVyQ2xpZW50UXQuY3BwOgogICAgICAg
IChGcmFtZUxvYWRlckNsaWVudFF0Ojp0cmFuc2l0aW9uVG9Db21taXR0ZWRGb3JOZXdQYWdlKToK
CiAgICAgICAgV2ViS2l0VG9vbHM6CgogICAgICAgIE1ha2UgcG9zc2libGUgdG8gRFJUIHRvIHNl
dCBzY3JvbGxiYXIgcG9saWNpZXMgKG9uLCBvZmYgb3IgYXV0bykuCgogICAgICAgICogRHVtcFJl
bmRlclRyZWUvcXQvTGF5b3V0VGVzdENvbnRyb2xsZXJRdC5jcHA6CiAgICAgICAgKExheW91dFRl
c3RDb250cm9sbGVyOjpzZXRTY3JvbGxiYXJQb2xpY3kpOgogICAgICAgICogRHVtcFJlbmRlclRy
ZWUvcXQvTGF5b3V0VGVzdENvbnRyb2xsZXJRdC5oOgogICAgICAgICogUXRMYXVuY2hlci9tYWlu
LmNwcDoKICAgICAgICAoTGF1bmNoZXJXaW5kb3c6OnRvZ2dsZVNjcm9sbGJhcnMpOgogICAgICAg
IChMYXVuY2hlcldpbmRvdzo6Y3JlYXRlQ2hyb21lKToKCiAgICAgICAgTGF5b3V0VGVzdHM6Cgog
ICAgICAgICogZmFzdC9vdmVyZmxvdy9zY3JvbGxiYXItcmVzdG9yZWQtYW5kLXRoZW4tbG9ja2Vk
LWV4cGVjdGVkLnR4dDogQWRkZWQuCiAgICAgICAgKiBmYXN0L292ZXJmbG93L3Njcm9sbGJhci1y
ZXN0b3JlZC1hbmQtdGhlbi1sb2NrZWQuaHRtbDogQWRkZWQuCi0tLQogTGF5b3V0VGVzdHMvQ2hh
bmdlTG9nICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCAgIDEwICsrKysrCiAuLi5zY3Jv
bGxiYXItcmVzdG9yZWQtYW5kLXRoZW4tbG9ja2VkLWV4cGVjdGVkLnR4dCB8ICAgIDggKysrKwog
Li4uL3Njcm9sbGJhci1yZXN0b3JlZC1hbmQtdGhlbi1sb2NrZWQuaHRtbCAgICAgICAgfCAgIDQx
ICsrKysrKysrKysrKysrKysrKysrCiBMYXlvdXRUZXN0cy9wbGF0Zm9ybS9ndGsvU2tpcHBlZCAg
ICAgICAgICAgICAgICAgICB8ICAgIDMgKwogTGF5b3V0VGVzdHMvcGxhdGZvcm0vbWFjL1NraXBw
ZWQgICAgICAgICAgICAgICAgICAgfCAgICAzICsKIExheW91dFRlc3RzL3BsYXRmb3JtL3dpbi9T
a2lwcGVkICAgICAgICAgICAgICAgICAgIHwgICAgMyArCiBXZWJDb3JlL0NoYW5nZUxvZyAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8ICAgMzUgKysrKysrKysrKysrKysrKysKIFdl
YkNvcmUvV2ViQ29yZS5iYXNlLmV4cCAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgICAgMiAt
CiBXZWJDb3JlL3BhZ2UvRnJhbWUuY3BwICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8ICAg
IDUgKy0KIFdlYkNvcmUvcGFnZS9GcmFtZS5oICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
IHwgICAgMyArLQogV2ViQ29yZS9wbGF0Zm9ybS9TY3JvbGxWaWV3LmNwcCAgICAgICAgICAgICAg
ICAgICAgfCAgIDI4ICsrKysrKysrKysrLS0KIFdlYkNvcmUvcGxhdGZvcm0vU2Nyb2xsVmlldy5o
ICAgICAgICAgICAgICAgICAgICAgIHwgICAxOCArKysrKysrLQogV2ViS2l0L3F0L0FwaS9xd2Vi
ZnJhbWUuY3BwICAgICAgICAgICAgICAgICAgICAgICAgfCAgICA0ICstCiBXZWJLaXQvcXQvQ2hh
bmdlTG9nICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8ICAgMTcgKysrKysrKysKIFdl
YktpdC9xdC9XZWJDb3JlU3VwcG9ydC9GcmFtZUxvYWRlckNsaWVudFF0LmNwcCAgIHwgICAgOSAr
KystCiBXZWJLaXQvcXQvdGVzdHMvcXdlYmZyYW1lL3RzdF9xd2ViZnJhbWUuY3BwICAgICAgICB8
ICAgMzMgKysrKysrKysrKysrKysrKwogV2ViS2l0VG9vbHMvQ2hhbmdlTG9nICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgfCAgIDE2ICsrKysrKysrCiAuLi4vRHVtcFJlbmRlclRyZWUvcXQv
TGF5b3V0VGVzdENvbnRyb2xsZXJRdC5jcHAgICB8ICAgMjQgKysrKysrKysrKysKIC4uLi9EdW1w
UmVuZGVyVHJlZS9xdC9MYXlvdXRUZXN0Q29udHJvbGxlclF0LmggICAgIHwgICAgNiArKysKIDE5
IGZpbGVzIGNoYW5nZWQsIDI1MiBpbnNlcnRpb25zKCspLCAxNiBkZWxldGlvbnMoLSkKIGNyZWF0
ZSBtb2RlIDEwMDY0NCBMYXlvdXRUZXN0cy9mYXN0L292ZXJmbG93L3Njcm9sbGJhci1yZXN0b3Jl
ZC1hbmQtdGhlbi1sb2NrZWQtZXhwZWN0ZWQudHh0CiBjcmVhdGUgbW9kZSAxMDA2NDQgTGF5b3V0
VGVzdHMvZmFzdC9vdmVyZmxvdy9zY3JvbGxiYXItcmVzdG9yZWQtYW5kLXRoZW4tbG9ja2VkLmh0
bWwKCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cgYi9MYXlvdXRUZXN0cy9DaGFu
Z2VMb2cKaW5kZXggMTU4YjljZS4uNTZhNGU4YSAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvQ2hh
bmdlTG9nCisrKyBiL0xheW91dFRlc3RzL0NoYW5nZUxvZwpAQCAtMSwzICsxLDEzIEBACisyMDEw
LTA0LTAxICBBbnRvbmlvIEdvbWVzICA8dG9uaWtpdG9vQHdlYmtpdC5vcmc+CisKKyAgICAgICAg
UmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgW1F0XSBSRUdSRVNTSU9OOihy
NTA2NjUpIFFXZWJGcmFtZTo6c2V0U2Nyb2xsQmFyUG9saWN5KFF0OjpWZXJ0aWNhbCxRdDo6U2Ny
b2xsQmFyQWx3YXlzT2ZmKSBoYXMgbm8gZWZmZWN0LgorICAgICAgICBodHRwczovL2J1Z3Mud2Vi
a2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9Mjk0MzEKKworICAgICAgICAqIGZhc3Qvb3ZlcmZsb3cv
c2Nyb2xsYmFyLXJlc3RvcmVkLWFuZC10aGVuLWxvY2tlZC1leHBlY3RlZC50eHQ6IEFkZGVkLgor
ICAgICAgICAqIGZhc3Qvb3ZlcmZsb3cvc2Nyb2xsYmFyLXJlc3RvcmVkLWFuZC10aGVuLWxvY2tl
ZC5odG1sOiBBZGRlZC4KKwogMjAxMC0wNC0wNyAgU2hlcmlmZiBCb3QgIDx3ZWJraXQucmV2aWV3
LmJvdEBnbWFpbC5jb20+CiAKICAgICAgICAgVW5yZXZpZXdlZCwgcm9sbGluZyBvdXQgcjU3MTk2
LgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9vdmVyZmxvdy9zY3JvbGxiYXItcmVzdG9y
ZWQtYW5kLXRoZW4tbG9ja2VkLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2Zhc3Qvb3ZlcmZs
b3cvc2Nyb2xsYmFyLXJlc3RvcmVkLWFuZC10aGVuLWxvY2tlZC1leHBlY3RlZC50eHQKbmV3IGZp
bGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uMmYxYWE4YQotLS0gL2Rldi9udWxsCisrKyBi
L0xheW91dFRlc3RzL2Zhc3Qvb3ZlcmZsb3cvc2Nyb2xsYmFyLXJlc3RvcmVkLWFuZC10aGVuLWxv
Y2tlZC1leHBlY3RlZC50eHQKQEAgLTAsMCArMSw4IEBACitUZXN0IGZvciBidWcgMjk0MzEgW1F0
XSBSRUdSRVNTSU9OOihyNTA2NjUpIFFXZWJGcmFtZTo6c2V0U2Nyb2xsQmFyUG9saWN5KFF0OjpW
ZXJ0aWNhbCxRdDo6U2Nyb2xsQmFyQWx3YXlzT2ZmKSBoYXMgbm8gZWZmZWN0LgorCitUaGlzIHRl
c3QgZW5zdXJlcyB0aGUgY29ycmVjdG5lc3Mgb2YgdHdvIHNjcm9sbGJhciBiZWhhdmlvdXI6CisK
K1RoaXMgdGVzdHMgdGhhdCBhZnRlciBzZXR0aW5nICdvdmVyZmxvdycgb24gdGhlIGRvY3VtZW50
IGVsZW1lbnQgdG8gJ2hpZGRlbicgYW5kIGJhY2sgdG8gJ3Zpc2libGUnLCBzY3JvbGxiYXJzIGFw
cGVhciBhcyBuZWNlc3NhcnkuCitBZnRlciBleHBsaWNpdGx5IHNldHRpbmcgYSBzY3JvbGxiYXIg
cG9saWN5IGRpZmZlcmVudCB0aGFuICdhdXRvJywgV2ViQ29yZSBob25vcnMgdGhhdCB1bnRpbCBp
dCBpcyB1bnNldC4KK1BBU1MKK1BBU1MKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3Qvb3Zl
cmZsb3cvc2Nyb2xsYmFyLXJlc3RvcmVkLWFuZC10aGVuLWxvY2tlZC5odG1sIGIvTGF5b3V0VGVz
dHMvZmFzdC9vdmVyZmxvdy9zY3JvbGxiYXItcmVzdG9yZWQtYW5kLXRoZW4tbG9ja2VkLmh0bWwK
bmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uOTNiNTRhMAotLS0gL2Rldi9udWxs
CisrKyBiL0xheW91dFRlc3RzL2Zhc3Qvb3ZlcmZsb3cvc2Nyb2xsYmFyLXJlc3RvcmVkLWFuZC10
aGVuLWxvY2tlZC5odG1sCkBAIC0wLDAgKzEsNDEgQEAKKzxib2R5PgorICAgIDxwPgorICAgICAg
ICBUZXN0IGZvciA8aT48YSBocmVmPSJodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5j
Z2k/aWQ9Mjk0MzEiPmJ1ZyAyOTQzMTwvYT4KKyAgICAgICAgW1F0XSBSRUdSRVNTSU9OOihyNTA2
NjUpIFFXZWJGcmFtZTo6c2V0U2Nyb2xsQmFyUG9saWN5KFF0OjpWZXJ0aWNhbCxRdDo6U2Nyb2xs
QmFyQWx3YXlzT2ZmKSBoYXMgbm8gZWZmZWN0LgorICAgIDwvcD4KKyAgICA8cD4gVGhpcyB0ZXN0
IGVuc3VyZXMgdGhlIGNvcnJlY3RuZXNzIG9mIHR3byBzY3JvbGxiYXIgYmVoYXZpb3VyOjwvcD4K
KyAgICA8dWw+CisgICAgICAgIDxsaT4gVGhpcyB0ZXN0cyB0aGF0IGFmdGVyIHNldHRpbmcgJ292
ZXJmbG93JyBvbiB0aGUgZG9jdW1lbnQgZWxlbWVudCB0bworICAgICAgICAgICAgJ2hpZGRlbicg
YW5kIGJhY2sgdG8gJ3Zpc2libGUnLCBzY3JvbGxiYXJzIGFwcGVhciBhcyBuZWNlc3NhcnkuCisg
ICAgICAgIDwvbGk+CisgICAgICAgIDxsaT4KKyAgICAgICAgICAgIEFmdGVyIGV4cGxpY2l0bHkg
c2V0dGluZyBhIHNjcm9sbGJhciBwb2xpY3kgZGlmZmVyZW50IHRoYW4gJ2F1dG8nLCBXZWJDb3Jl
CisgICAgICAgICAgICBob25vcnMgdGhhdCB1bnRpbCBpdCBpcyB1bnNldC4KKyAgICAgICAgPC9s
aT4KKyAgICA8L3VsPgorICAgIDxkaXYgaWQ9ImR5bmFtaWMiPjwvZGl2PgorICAgIDxwIGlkPSJy
ZXN1bHQiPkZBSUw6IFRlc3QgZGlkIG5vdCBydW4gdG8gY29tcGxldGlvbjwvcD4KKyAgICA8c2Ny
aXB0PgorICAgICAgICBpZiAod2luZG93LmxheW91dFRlc3RDb250cm9sbGVyKQorICAgICAgICAg
ICAgbGF5b3V0VGVzdENvbnRyb2xsZXIuZHVtcEFzVGV4dCgpOworCisgICAgICAgIGRvY3VtZW50
LmRvY3VtZW50RWxlbWVudC5zdHlsZS5vdmVyZmxvdyA9ICJoaWRkZW4iOworICAgICAgICBkb2N1
bWVudC5ib2R5Lm9mZnNldFRvcDsKKyAgICAgICAgZG9jdW1lbnQuZG9jdW1lbnRFbGVtZW50LnN0
eWxlLnJlbW92ZVByb3BlcnR5KCJvdmVyZmxvdyIpOworICAgICAgICBkb2N1bWVudC5ib2R5LnN0
eWxlLmhlaWdodCA9ICIyMDAlIjsKKyAgICAgICAgdmFyIHJlc3VsdCA9IChpbm5lcldpZHRoID09
PSBkb2N1bWVudC5kb2N1bWVudEVsZW1lbnQub2Zmc2V0V2lkdGgpCisgICAgICAgICAgICA/ICJG
QUlMOiBTY3JvbGxiYXIgZGlkIG5vdCBhcHBlYXIgYWZ0ZXIgcmVzZXR0aW5nICdvdmVyZmxvdyci
CisgICAgICAgICAgICA6ICJQQVNTIjsKKworICAgICAgICBpZiAod2luZG93LmxheW91dFRlc3RD
b250cm9sbGVyKSB7CisgICAgICAgICAgICBsYXlvdXRUZXN0Q29udHJvbGxlci5zZXRTY3JvbGxi
YXJQb2xpY3koJ3ZlcnRpY2FsJywgJ29mZicpOworICAgICAgICAgICAgbGF5b3V0VGVzdENvbnRy
b2xsZXIuc2V0U2Nyb2xsYmFyUG9saWN5KCdob3Jpem9udGFsJywgJ29mZicpOworCisgICAgICAg
ICAgICByZXN1bHQgKz0gKGlubmVyV2lkdGggPT09IGRvY3VtZW50LmRvY3VtZW50RWxlbWVudC5v
ZmZzZXRXaWR0aCkKKyAgICAgICAgICAgICAgICA/ICJcblBBU1MiCisgICAgICAgICAgICAgICAg
OiAiXG5GQUlMOiBTY3JvbGxiYXIgZGlkIGFwcGVhciBhZnRlciB0dXJuaW5nIGl0IG9mZiI7Cisg
ICAgICAgIH0KKworICAgICAgICBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgicmVzdWx0IikuaW5u
ZXJUZXh0ID0gcmVzdWx0OworICAgIDwvc2NyaXB0PgorPC9ib2R5PgpkaWZmIC0tZ2l0IGEvTGF5
b3V0VGVzdHMvcGxhdGZvcm0vZ3RrL1NraXBwZWQgYi9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9ndGsv
U2tpcHBlZAppbmRleCAzOGE0ODAzLi45ODIzNWFkIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9w
bGF0Zm9ybS9ndGsvU2tpcHBlZAorKysgYi9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9ndGsvU2tpcHBl
ZApAQCAtNTg5MiwzICs1ODkyLDYgQEAgZmFzdC9tZWRpYS9tZWRpYS1mZWF0dXJlLXdndC12aWV3
LW1vZGUuaHRtbAogIyBNZWRpYVBsYXllclByaXZhdGVHU3RyZWFtZXIgZG9lc24ndCByZXR1cm4g
dG8gTkVUV09SS19JRExFIGFuZCBoZW5jZSBkb2Vzbid0IGZpcmUgYSBzdXNwZW5kIGV2ZW50CiAj
IGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0zNzAzNAogaHR0cC90ZXN0
cy9tZWRpYS92aWRlby1wbGF5LXN1c3BlbmQuaHRtbAorCisjIE5lZWQgdG8gYWRkIGZ1bmN0aW9u
YWxpdHkgdG8gRHVtcFJlbmRlclRyZWUgdG8gaGFuZGxlIHNjcm9sbGJhciBwb2xpY2UgY2hhbmdl
cworZmFzdC9vdmVyZmxvdy9zY3JvbGxiYXItcmVzdG9yZWQtYW5kLXRoZW4tbG9ja2VkLmh0bWwK
ZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL3BsYXRmb3JtL21hYy9Ta2lwcGVkIGIvTGF5b3V0VGVz
dHMvcGxhdGZvcm0vbWFjL1NraXBwZWQKaW5kZXggNzY5ZmFjNC4uZjExMjY5ZSAxMDA2NDQKLS0t
IGEvTGF5b3V0VGVzdHMvcGxhdGZvcm0vbWFjL1NraXBwZWQKKysrIGIvTGF5b3V0VGVzdHMvcGxh
dGZvcm0vbWFjL1NraXBwZWQKQEAgLTE1MSwzICsxNTEsNiBAQCBmYXN0L21lZGlhL21lZGlhLWZl
YXR1cmUtd2d0LXZpZXctbW9kZS5odG1sCiAjIFRlc3QgaXMgZmxha3kgYW5kIHRodXMgbm90IHVz
ZWZ1bCB1bnRpbCBmaXhlZC4KICMgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dp
P2lkPTM2NjQyCiBmYXN0L3JlcGxhY2VkL2JvcmRlci1yYWRpdXMtY2xpcC5odG1sCisKKyMgTmVl
ZCB0byBhZGQgZnVuY3Rpb25hbGl0eSB0byBEdW1wUmVuZGVyVHJlZSB0byBoYW5kbGUgc2Nyb2xs
YmFyIHBvbGljZSBjaGFuZ2VzCitmYXN0L292ZXJmbG93L3Njcm9sbGJhci1yZXN0b3JlZC1hbmQt
dGhlbi1sb2NrZWQuaHRtbApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvcGxhdGZvcm0vd2luL1Nr
aXBwZWQgYi9MYXlvdXRUZXN0cy9wbGF0Zm9ybS93aW4vU2tpcHBlZAppbmRleCBlN2M0Y2VmLi41
OGYwY2EzIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9wbGF0Zm9ybS93aW4vU2tpcHBlZAorKysg
Yi9MYXlvdXRUZXN0cy9wbGF0Zm9ybS93aW4vU2tpcHBlZApAQCAtODIyLDMgKzgyMiw2IEBAIGZh
c3QvbWVkaWEvbWVkaWEtZmVhdHVyZS13Z3Qtdmlldy1tb2RlLmh0bWwKIAogIyBOZWVkIGV4cGVj
dGF0aW9ucy4gU2VlIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0zNjQ2
MQogZmFzdC9yZXBhaW50L292ZXJmbG93LXNjcm9sbC1ib2R5LWFwcGVhci5odG1sCisKKyMgTmVl
ZCB0byBhZGQgZnVuY3Rpb25hbGl0eSB0byBEdW1wUmVuZGVyVHJlZSB0byBoYW5kbGUgc2Nyb2xs
YmFyIHBvbGljZSBjaGFuZ2VzCitmYXN0L292ZXJmbG93L3Njcm9sbGJhci1yZXN0b3JlZC1hbmQt
dGhlbi1sb2NrZWQuaHRtbApkaWZmIC0tZ2l0IGEvV2ViQ29yZS9DaGFuZ2VMb2cgYi9XZWJDb3Jl
L0NoYW5nZUxvZwppbmRleCA0OGQ3MDU1Li5jNDRjYjVmIDEwMDY0NAotLS0gYS9XZWJDb3JlL0No
YW5nZUxvZworKysgYi9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDM4IEBACisyMDEwLTA0
LTAxICBBbnRvbmlvIEdvbWVzICA8dG9uaWtpdG9vQHdlYmtpdC5vcmc+CisKKyAgICAgICAgUmV2
aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgW1F0XSBSRUdSRVNTSU9OOihyNTA2
NjUpIFFXZWJGcmFtZTo6c2V0U2Nyb2xsQmFyUG9saWN5KFF0OjpWZXJ0aWNhbCxRdDo6U2Nyb2xs
QmFyQWx3YXlzT2ZmKSBoYXMgbm8gZWZmZWN0LgorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0
Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9Mjk0MzEKKworICAgICAgICBUZXN0OiBmYXN0L292ZXJmbG93
L3Njcm9sbGJhci1yZXN0b3JlZC1hbmQtdGhlbi1sb2NrZWQuaHRtbAorCisgICAgICAgIFBhdGNo
IGludHJvZHVjZXMgYSBsb2NrIHNjcm9sbGJhcnMgY29uY2VwdCB0byBTY3JvbGxWaWV3LCBhcyBp
biBXZWJEeW5hbWljU2Nyb2xsQmFyc1ZpZXcubW0vaAorICAgICAgICBvbiBXZWJLaXQvbWFjLiBJ
dCBpcyBuZWVkZWQgYmVjYXVzZSBpbiBRdFdlYktpdCwgd2UgaGF2ZSBBcGkgZm9yIHNldHRpbmcg
Ym90aCB2ZXJ0aWNhbCBhbmQKKyAgICAgICAgaG9yaXpvbnRhbCBzY3JvbGxiYXJzIG9uL29mZi9h
dXRvLiBXaGVuIGl0IGlzIHNldCB0byBvZmYsIGZvciBleGFtcGxlLCBpdCBzaG91bGQgcmVtYWlu
CisgICAgICAgIGFzIHN1Y2gsIHVubGVzcyB1bnNldC4KKworICAgICAgICBGb3IgdGhlIGxvY2tp
bmcgY29uY2VwdCwgb3B0aW9uYWwgJ2xvY2snIHBhcmFtZXRlcnMgd2VyZSBhZGRlZCB0byBzZXRT
Y3JvbGxiYXJNb2RlcywKKyAgICAgICAgc2V0SG9yaXpvbnRhbFNjcm9sbGJhck1vZGUgYW5kIHNl
dFZlcnRpY2FsU2Nyb2xsYmFyTW9kZSBtZXRob2RzIG9mIFNjcm9sbFZpZXcuIEFzIHRoZXNlCisg
ICAgICAgIGFyZSBhbGwgb3B0aW9uYWwsIGFueSBwcmV2aW91cyBjb2RlIGNhbGxpbmcgdGhlbSBk
byBub3QgbmVlZCBtb2RpZmljYXRpb24uCisKKyAgICAgICAgVHdvIG9wdGlvbmFsIHBhcmFtZXRl
cnMgd2VyZSBhbHNvIGFkZGVkIHRvIEZyYW1lJ3MgY3JlYXRlVmlldyBtZXRob2QsIGZvciBob3Jp
em9udGFsIGFuZCB2ZXJ0aWNhbAorICAgICAgICBsb2NrIHN0YXRlIHBlcnNpc3RlbmNlIGNyb3Nz
IHBhZ2UgbG9hZHMuCisKKyAgICAgICAgKiBwYWdlL0ZyYW1lLmNwcDoKKyAgICAgICAgKFdlYkNv
cmU6OkZyYW1lOjpjcmVhdGVWaWV3KToKKyAgICAgICAgKiBwbGF0Zm9ybS9TY3JvbGxWaWV3LmNw
cDoKKyAgICAgICAgKFdlYkNvcmU6OlNjcm9sbFZpZXc6OlNjcm9sbFZpZXcpOgorICAgICAgICAo
V2ViQ29yZTo6U2Nyb2xsVmlldzo6c2V0U2Nyb2xsYmFyTW9kZXMpOgorICAgICAgICAoV2ViQ29y
ZTo6U2Nyb2xsVmlldzo6c2V0SG9yaXpvbnRhbFNjcm9sbGJhck1vZGUpOgorICAgICAgICAoV2Vi
Q29yZTo6U2Nyb2xsVmlldzo6c2V0VmVydGljYWxTY3JvbGxiYXJNb2RlKToKKyAgICAgICAgKiBw
bGF0Zm9ybS9TY3JvbGxWaWV3Lmg6CisgICAgICAgIChXZWJDb3JlOjpTY3JvbGxWaWV3OjpzZXRI
b3Jpem9udGFsU2Nyb2xsYmFyTG9jayk6CisgICAgICAgIChXZWJDb3JlOjpTY3JvbGxWaWV3Ojpp
c0hvcml6b250YWxTY3JvbGxiYXJMb2NrZWQpOgorICAgICAgICAoV2ViQ29yZTo6U2Nyb2xsVmll
dzo6c2V0VmVydGljYWxTY3JvbGxiYXJMb2NrKToKKyAgICAgICAgKFdlYkNvcmU6OlNjcm9sbFZp
ZXc6OmlzVmVydGljYWxTY3JvbGxiYXJMb2NrZWQpOgorICAgICAgICAoV2ViQ29yZTo6U2Nyb2xs
Vmlldzo6c2V0U2Nyb2xsaW5nTW9kZXNMb2NrZWQpOgorCiAyMDEwLTA0LTA3ICBEYXdpdCBBbGVt
YXllaHUgIDxhZGF3aXRAa2RlLm9yZz4KIAogICAgICAgICBSZXZpZXdlZCBieSBTaW1vbiBIYXVz
bWFubi4KZGlmZiAtLWdpdCBhL1dlYkNvcmUvV2ViQ29yZS5iYXNlLmV4cCBiL1dlYkNvcmUvV2Vi
Q29yZS5iYXNlLmV4cAppbmRleCAxMWZkYWYzLi5hMjY0YzQ1IDEwMDY0NAotLS0gYS9XZWJDb3Jl
L1dlYkNvcmUuYmFzZS5leHAKKysrIGIvV2ViQ29yZS9XZWJDb3JlLmJhc2UuZXhwCkBAIC0xMzUs
NyArMTM1LDYgQEAgX19aNGNvcmVQN0RPTU5vZGUKIF9fWjRjb3JlUDhET01SYW5nZQogX19aTjNK
U0M4QmluZGluZ3M4SW5zdGFuY2UxNm5ld1J1bnRpbWVPYmplY3RFUE5TXzlFeGVjU3RhdGVFCiBf
X1pON1dlYkNvcmUxME1vdXNlRXZlbnRDMUVSS05TXzEyQXRvbWljU3RyaW5nRWJiTjNXVEYxMFBh
c3NSZWZQdHJJTlNfOURPTVdpbmRvd0VFRWlpaWlpYmJiYnROUzVfSU5TXzExRXZlbnRUYXJnZXRF
RUVOUzVfSU5TXzlDbGlwYm9hcmRFRUViCi1fX1pON1dlYkNvcmUxMFNjcm9sbFZpZXcxN3NldFNj
cm9sbGJhck1vZGVzRU5TXzEzU2Nyb2xsYmFyTW9kZUVTMV8KIF9fWk43V2ViQ29yZTEwU2Nyb2xs
VmlldzIwc2V0Q2FuSGF2ZVNjcm9sbGJhcnNFYgogX19aTjdXZWJDb3JlMTBTdHJpbmdJbXBsMTFy
ZXZlcnNlRmluZEVQUzBfaWIKIF9fWk43V2ViQ29yZTEwU3RyaW5nSW1wbDE5Y3JlYXRlVW5pbml0
aWFsaXplZEVqUlB0CkBAIC01MzAsNyArNTI5LDYgQEAgX19aTjdXZWJDb3JlNGNvcmVFUDIwTlNV
UkxQcm90ZWN0aW9uU3BhY2UKIF9fWk43V2ViQ29yZTVDYWNoZTExc2V0RGlzYWJsZWRFYgogX19a
TjdXZWJDb3JlNUNhY2hlMTNnZXRTdGF0aXN0aWNzRXYKIF9fWk43V2ViQ29yZTVDYWNoZTEzc2V0
Q2FwYWNpdGllc0VqamoKLV9fWk43V2ViQ29yZTVGcmFtZTEwY3JlYXRlVmlld0VSS05TXzdJbnRT
aXplRVJLTlNfNUNvbG9yRWJTM19iTlNfMTNTY3JvbGxiYXJNb2RlRVM3XwogX19aTjdXZWJDb3Jl
NUZyYW1lMTBmaW5kU3RyaW5nRVJLTlNfNlN0cmluZ0ViYmJiCiBfX1pON1dlYkNvcmU1RnJhbWUx
MXNob3VsZENsb3NlRXYKIF9fWk43V2ViQ29yZTVGcmFtZTEzcmVhcHBseVN0eWxlc0V2CmRpZmYg
LS1naXQgYS9XZWJDb3JlL3BhZ2UvRnJhbWUuY3BwIGIvV2ViQ29yZS9wYWdlL0ZyYW1lLmNwcApp
bmRleCAwNGQ3YTllLi5lOGMwZjRhIDEwMDY0NAotLS0gYS9XZWJDb3JlL3BhZ2UvRnJhbWUuY3Bw
CisrKyBiL1dlYkNvcmUvcGFnZS9GcmFtZS5jcHAKQEAgLTE3NzUsNyArMTc3NSw4IEBAIERvY3Vt
ZW50KiBGcmFtZTo6ZG9jdW1lbnRBdFBvaW50KGNvbnN0IEludFBvaW50JiBwb2ludCkKIHZvaWQg
RnJhbWU6OmNyZWF0ZVZpZXcoY29uc3QgSW50U2l6ZSYgdmlld3BvcnRTaXplLAogICAgICAgICAg
ICAgICAgICAgICAgICBjb25zdCBDb2xvciYgYmFja2dyb3VuZENvbG9yLCBib29sIHRyYW5zcGFy
ZW50LAogICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBJbnRTaXplJiBmaXhlZExheW91dFNp
emUsIGJvb2wgdXNlRml4ZWRMYXlvdXQsCi0gICAgICAgICAgICAgICAgICAgICAgIFNjcm9sbGJh
ck1vZGUgaG9yaXpvbnRhbFNjcm9sbGJhck1vZGUsIFNjcm9sbGJhck1vZGUgdmVydGljYWxTY3Jv
bGxiYXJNb2RlKQorICAgICAgICAgICAgICAgICAgICAgICBTY3JvbGxiYXJNb2RlIGhvcml6b250
YWxTY3JvbGxiYXJNb2RlLCBib29sIGhvcml6b250YWxMb2NrLAorICAgICAgICAgICAgICAgICAg
ICAgICBTY3JvbGxiYXJNb2RlIHZlcnRpY2FsU2Nyb2xsYmFyTW9kZSwgYm9vbCB2ZXJ0aWNhbExv
Y2spCiB7CiAgICAgQVNTRVJUKHRoaXMpOwogICAgIEFTU0VSVChtX3BhZ2UpOwpAQCAtMTc5NSw3
ICsxNzk2LDcgQEAgdm9pZCBGcmFtZTo6Y3JlYXRlVmlldyhjb25zdCBJbnRTaXplJiB2aWV3cG9y
dFNpemUsCiAgICAgfSBlbHNlCiAgICAgICAgIGZyYW1lVmlldyA9IEZyYW1lVmlldzo6Y3JlYXRl
KHRoaXMpOwogCi0gICAgZnJhbWVWaWV3LT5zZXRTY3JvbGxiYXJNb2Rlcyhob3Jpem9udGFsU2Ny
b2xsYmFyTW9kZSwgdmVydGljYWxTY3JvbGxiYXJNb2RlKTsKKyAgICBmcmFtZVZpZXctPnNldFNj
cm9sbGJhck1vZGVzKGhvcml6b250YWxTY3JvbGxiYXJNb2RlLCB2ZXJ0aWNhbFNjcm9sbGJhck1v
ZGUsIGhvcml6b250YWxMb2NrLCB2ZXJ0aWNhbExvY2spOwogCiAgICAgc2V0VmlldyhmcmFtZVZp
ZXcpOwogCmRpZmYgLS1naXQgYS9XZWJDb3JlL3BhZ2UvRnJhbWUuaCBiL1dlYkNvcmUvcGFnZS9G
cmFtZS5oCmluZGV4IGI2MzBiZWYuLjRhN2NkYWYgMTAwNjQ0Ci0tLSBhL1dlYkNvcmUvcGFnZS9G
cmFtZS5oCisrKyBiL1dlYkNvcmUvcGFnZS9GcmFtZS5oCkBAIC0xMTksNyArMTE5LDggQEAgbmFt
ZXNwYWNlIFdlYkNvcmUgewogICAgICAgICB2b2lkIHNldEV4Y2x1ZGVGcm9tVGV4dFNlYXJjaChi
b29sKTsKIAogICAgICAgICB2b2lkIGNyZWF0ZVZpZXcoY29uc3QgSW50U2l6ZSYsIGNvbnN0IENv
bG9yJiwgYm9vbCwgY29uc3QgSW50U2l6ZSAmLCBib29sLAotICAgICAgICAgICAgICAgICAgICAg
ICAgU2Nyb2xsYmFyTW9kZSA9IFNjcm9sbGJhckF1dG8sIFNjcm9sbGJhck1vZGUgPSBTY3JvbGxi
YXJBdXRvKTsKKyAgICAgICAgICAgICAgICAgICAgICAgIFNjcm9sbGJhck1vZGUgPSBTY3JvbGxi
YXJBdXRvLCBib29sIGhvcml6b250YWxMb2NrID0gZmFsc2UsCisgICAgICAgICAgICAgICAgICAg
ICAgICBTY3JvbGxiYXJNb2RlID0gU2Nyb2xsYmFyQXV0bywgYm9vbCB2ZXJ0aWNhbExvY2sgPSBm
YWxzZSk7CiAKICAgICAgICAgdm9pZCBpbmplY3RVc2VyU2NyaXB0cyhVc2VyU2NyaXB0SW5qZWN0
aW9uVGltZSk7CiAgICAgICAgIApkaWZmIC0tZ2l0IGEvV2ViQ29yZS9wbGF0Zm9ybS9TY3JvbGxW
aWV3LmNwcCBiL1dlYkNvcmUvcGxhdGZvcm0vU2Nyb2xsVmlldy5jcHAKaW5kZXggNDg3MjAwNy4u
MWFiODRlZCAxMDA2NDQKLS0tIGEvV2ViQ29yZS9wbGF0Zm9ybS9TY3JvbGxWaWV3LmNwcAorKysg
Yi9XZWJDb3JlL3BsYXRmb3JtL1Njcm9sbFZpZXcuY3BwCkBAIC00Miw2ICs0Miw4IEBAIG5hbWVz
cGFjZSBXZWJDb3JlIHsKIFNjcm9sbFZpZXc6OlNjcm9sbFZpZXcoKQogICAgIDogbV9ob3Jpem9u
dGFsU2Nyb2xsYmFyTW9kZShTY3JvbGxiYXJBdXRvKQogICAgICwgbV92ZXJ0aWNhbFNjcm9sbGJh
ck1vZGUoU2Nyb2xsYmFyQXV0bykKKyAgICAsIG1faG9yaXpvbnRhbFNjcm9sbGJhckxvY2soZmFs
c2UpCisgICAgLCBtX3ZlcnRpY2FsU2Nyb2xsYmFyTG9jayhmYWxzZSkKICAgICAsIG1fcHJvaGli
aXRzU2Nyb2xsaW5nKGZhbHNlKQogICAgICwgbV9jYW5CbGl0T25TY3JvbGwodHJ1ZSkKICAgICAs
IG1fc2Nyb2xsYmFyc0F2b2lkaW5nUmVzaXplcigwKQpAQCAtMTE1LDEyICsxMTcsMzAgQEAgUGFz
c1JlZlB0cjxTY3JvbGxiYXI+IFNjcm9sbFZpZXc6OmNyZWF0ZVNjcm9sbGJhcihTY3JvbGxiYXJP
cmllbnRhdGlvbiBvcmllbnRhdGkKICAgICByZXR1cm4gU2Nyb2xsYmFyOjpjcmVhdGVOYXRpdmVT
Y3JvbGxiYXIodGhpcywgb3JpZW50YXRpb24sIFJlZ3VsYXJTY3JvbGxiYXIpOwogfQogCi12b2lk
IFNjcm9sbFZpZXc6OnNldFNjcm9sbGJhck1vZGVzKFNjcm9sbGJhck1vZGUgaG9yaXpvbnRhbE1v
ZGUsIFNjcm9sbGJhck1vZGUgdmVydGljYWxNb2RlKQordm9pZCBTY3JvbGxWaWV3OjpzZXRTY3Jv
bGxiYXJNb2RlcyhTY3JvbGxiYXJNb2RlIGhvcml6b250YWxNb2RlLCBTY3JvbGxiYXJNb2RlIHZl
cnRpY2FsTW9kZSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYm9vbCBob3Jp
em9udGFsTG9jaywgYm9vbCB2ZXJ0aWNhbExvY2spCiB7Ci0gICAgaWYgKGhvcml6b250YWxNb2Rl
ID09IGhvcml6b250YWxTY3JvbGxiYXJNb2RlKCkgJiYgdmVydGljYWxNb2RlID09IHZlcnRpY2Fs
U2Nyb2xsYmFyTW9kZSgpKQorICAgIGJvb2wgbmVlZHNVcGRhdGUgPSBmYWxzZTsKKworICAgIGlm
IChob3Jpem9udGFsTW9kZSAhPSBob3Jpem9udGFsU2Nyb2xsYmFyTW9kZSgpICYmICFtX2hvcml6
b250YWxTY3JvbGxiYXJMb2NrKSB7CisgICAgICAgIG1faG9yaXpvbnRhbFNjcm9sbGJhck1vZGUg
PSBob3Jpem9udGFsTW9kZTsKKyAgICAgICAgbmVlZHNVcGRhdGUgPSB0cnVlOworICAgIH0KKwor
ICAgIGlmICh2ZXJ0aWNhbE1vZGUgIT0gdmVydGljYWxTY3JvbGxiYXJNb2RlKCkgJiYgIW1fdmVy
dGljYWxTY3JvbGxiYXJMb2NrKSB7CisgICAgICAgIG1fdmVydGljYWxTY3JvbGxiYXJNb2RlID0g
dmVydGljYWxNb2RlOworICAgICAgICBuZWVkc1VwZGF0ZSA9IHRydWU7CisgICAgfQorCisgICAg
aWYgKGhvcml6b250YWxMb2NrKQorICAgICAgICBzZXRIb3Jpem9udGFsU2Nyb2xsYmFyTG9jaygp
OworCisgICAgaWYgKHZlcnRpY2FsTG9jaykKKyAgICAgICAgc2V0VmVydGljYWxTY3JvbGxiYXJM
b2NrKCk7CisKKyAgICBpZiAoIW5lZWRzVXBkYXRlKQogICAgICAgICByZXR1cm47Ci0gICAgbV9o
b3Jpem9udGFsU2Nyb2xsYmFyTW9kZSA9IGhvcml6b250YWxNb2RlOwotICAgIG1fdmVydGljYWxT
Y3JvbGxiYXJNb2RlID0gdmVydGljYWxNb2RlOworCiAgICAgaWYgKHBsYXRmb3JtV2lkZ2V0KCkp
CiAgICAgICAgIHBsYXRmb3JtU2V0U2Nyb2xsYmFyTW9kZXMoKTsKICAgICBlbHNlCmRpZmYgLS1n
aXQgYS9XZWJDb3JlL3BsYXRmb3JtL1Njcm9sbFZpZXcuaCBiL1dlYkNvcmUvcGxhdGZvcm0vU2Ny
b2xsVmlldy5oCmluZGV4IDc1ZGMyYjQuLmZjOTYwZjAgMTAwNjQ0Ci0tLSBhL1dlYkNvcmUvcGxh
dGZvcm0vU2Nyb2xsVmlldy5oCisrKyBiL1dlYkNvcmUvcGxhdGZvcm0vU2Nyb2xsVmlldy5oCkBA
IC04MywxMiArODMsMjAgQEAgcHVibGljOgogICAgIC8vIEF1dG8gbWVhbnMgc2hvdyBhIHNjcm9s
bGJhciBvbmx5IHdoZW4gb25lIGlzIG5lZWRlZC4KICAgICAvLyBOb3RlIHRoYXQgZm9yIHBsYXRm
b3JtcyB3aXRoIG5hdGl2ZSB3aWRnZXRzLCB0aGVzZSBtb2RlcyBhcmUgY29uc2lkZXJlZCBhZHZp
c29yeS4gIEluIG90aGVyIHdvcmRzIHRoZSB1bmRlcmx5aW5nIG5hdGl2ZQogICAgIC8vIHdpZGdl
dCBtYXkgY2hvb3NlIG5vdCB0byBob25vciB0aGUgcmVxdWVzdGVkIG1vZGVzLgotICAgIHZvaWQg
c2V0U2Nyb2xsYmFyTW9kZXMoU2Nyb2xsYmFyTW9kZSBob3Jpem9udGFsTW9kZSwgU2Nyb2xsYmFy
TW9kZSB2ZXJ0aWNhbE1vZGUpOwotICAgIHZvaWQgc2V0SG9yaXpvbnRhbFNjcm9sbGJhck1vZGUo
U2Nyb2xsYmFyTW9kZSBtb2RlKSB7IHNldFNjcm9sbGJhck1vZGVzKG1vZGUsIHZlcnRpY2FsU2Ny
b2xsYmFyTW9kZSgpKTsgfQotICAgIHZvaWQgc2V0VmVydGljYWxTY3JvbGxiYXJNb2RlKFNjcm9s
bGJhck1vZGUgbW9kZSkgeyBzZXRTY3JvbGxiYXJNb2Rlcyhob3Jpem9udGFsU2Nyb2xsYmFyTW9k
ZSgpLCBtb2RlKTsgfQorICAgIHZvaWQgc2V0U2Nyb2xsYmFyTW9kZXMoU2Nyb2xsYmFyTW9kZSBo
b3Jpem9udGFsTW9kZSwgU2Nyb2xsYmFyTW9kZSB2ZXJ0aWNhbE1vZGUsIGJvb2wgaG9yaXpvbnRh
bExvY2sgPSBmYWxzZSwgYm9vbCB2ZXJ0aWNhbExvY2sgPSBmYWxzZSk7CisgICAgdm9pZCBzZXRI
b3Jpem9udGFsU2Nyb2xsYmFyTW9kZShTY3JvbGxiYXJNb2RlIG1vZGUsIGJvb2wgbG9jayA9IGZh
bHNlKSB7IHNldFNjcm9sbGJhck1vZGVzKG1vZGUsIHZlcnRpY2FsU2Nyb2xsYmFyTW9kZSgpLCBs
b2NrLCB2ZXJ0aWNhbFNjcm9sbGJhckxvY2soKSk7IH0KKyAgICB2b2lkIHNldFZlcnRpY2FsU2Ny
b2xsYmFyTW9kZShTY3JvbGxiYXJNb2RlIG1vZGUsIGJvb2wgbG9jayA9IGZhbHNlKSB7IHNldFNj
cm9sbGJhck1vZGVzKGhvcml6b250YWxTY3JvbGxiYXJNb2RlKCksIG1vZGUsIGhvcml6b250YWxT
Y3JvbGxiYXJMb2NrKCksIGxvY2spOyB9OwogICAgIHZvaWQgc2Nyb2xsYmFyTW9kZXMoU2Nyb2xs
YmFyTW9kZSYgaG9yaXpvbnRhbE1vZGUsIFNjcm9sbGJhck1vZGUmIHZlcnRpY2FsTW9kZSkgY29u
c3Q7CiAgICAgU2Nyb2xsYmFyTW9kZSBob3Jpem9udGFsU2Nyb2xsYmFyTW9kZSgpIGNvbnN0IHsg
U2Nyb2xsYmFyTW9kZSBob3Jpem9udGFsLCB2ZXJ0aWNhbDsgc2Nyb2xsYmFyTW9kZXMoaG9yaXpv
bnRhbCwgdmVydGljYWwpOyByZXR1cm4gaG9yaXpvbnRhbDsgfQogICAgIFNjcm9sbGJhck1vZGUg
dmVydGljYWxTY3JvbGxiYXJNb2RlKCkgY29uc3QgeyBTY3JvbGxiYXJNb2RlIGhvcml6b250YWws
IHZlcnRpY2FsOyBzY3JvbGxiYXJNb2Rlcyhob3Jpem9udGFsLCB2ZXJ0aWNhbCk7IHJldHVybiB2
ZXJ0aWNhbDsgfQorCisgICAgdm9pZCBzZXRIb3Jpem9udGFsU2Nyb2xsYmFyTG9jayhib29sIGxv
Y2sgPSB0cnVlKSB7IG1faG9yaXpvbnRhbFNjcm9sbGJhckxvY2sgPSBsb2NrOyB9CisgICAgYm9v
bCBob3Jpem9udGFsU2Nyb2xsYmFyTG9jaygpIGNvbnN0IHsgcmV0dXJuIG1faG9yaXpvbnRhbFNj
cm9sbGJhckxvY2s7IH0KKyAgICB2b2lkIHNldFZlcnRpY2FsU2Nyb2xsYmFyTG9jayhib29sIGxv
Y2sgPSB0cnVlKSB7IG1fdmVydGljYWxTY3JvbGxiYXJMb2NrID0gbG9jazsgfQorICAgIGJvb2wg
dmVydGljYWxTY3JvbGxiYXJMb2NrKCkgY29uc3QgeyByZXR1cm4gbV92ZXJ0aWNhbFNjcm9sbGJh
ckxvY2s7IH0KKworICAgIHZvaWQgc2V0U2Nyb2xsaW5nTW9kZXNMb2NrKGJvb2wgbG9jayA9IHRy
dWUpIHsgbV9ob3Jpem9udGFsU2Nyb2xsYmFyTG9jayA9IG1fdmVydGljYWxTY3JvbGxiYXJMb2Nr
ID0gbG9jazsgfQorCiAgICAgdmlydHVhbCB2b2lkIHNldENhbkhhdmVTY3JvbGxiYXJzKGJvb2wp
OwogICAgIGJvb2wgY2FuSGF2ZVNjcm9sbGJhcnMoKSBjb25zdCB7IHJldHVybiBob3Jpem9udGFs
U2Nyb2xsYmFyTW9kZSgpICE9IFNjcm9sbGJhckFsd2F5c09mZiB8fCB2ZXJ0aWNhbFNjcm9sbGJh
ck1vZGUoKSAhPSBTY3JvbGxiYXJBbHdheXNPZmY7IH0KIApAQCAtMjU3LDYgKzI2NSwxMCBAQCBw
cml2YXRlOgogICAgIFJlZlB0cjxTY3JvbGxiYXI+IG1fdmVydGljYWxTY3JvbGxiYXI7CiAgICAg
U2Nyb2xsYmFyTW9kZSBtX2hvcml6b250YWxTY3JvbGxiYXJNb2RlOwogICAgIFNjcm9sbGJhck1v
ZGUgbV92ZXJ0aWNhbFNjcm9sbGJhck1vZGU7CisKKyAgICBib29sIG1faG9yaXpvbnRhbFNjcm9s
bGJhckxvY2s7CisgICAgYm9vbCBtX3ZlcnRpY2FsU2Nyb2xsYmFyTG9jazsKKwogICAgIGJvb2wg
bV9wcm9oaWJpdHNTY3JvbGxpbmc7CiAKICAgICBIYXNoU2V0PFJlZlB0cjxXaWRnZXQ+ID4gbV9j
aGlsZHJlbjsKZGlmZiAtLWdpdCBhL1dlYktpdC9xdC9BcGkvcXdlYmZyYW1lLmNwcCBiL1dlYktp
dC9xdC9BcGkvcXdlYmZyYW1lLmNwcAppbmRleCAzYmJjZmUyLi5lNWMyNzY4IDEwMDY0NAotLS0g
YS9XZWJLaXQvcXQvQXBpL3F3ZWJmcmFtZS5jcHAKKysrIGIvV2ViS2l0L3F0L0FwaS9xd2ViZnJh
bWUuY3BwCkBAIC0xMDUwLDEzICsxMDUwLDEzIEBAIHZvaWQgUVdlYkZyYW1lOjpzZXRTY3JvbGxC
YXJQb2xpY3koUXQ6Ok9yaWVudGF0aW9uIG9yaWVudGF0aW9uLCBRdDo6U2Nyb2xsQmFyUG9sCiAg
ICAgaWYgKG9yaWVudGF0aW9uID09IFF0OjpIb3Jpem9udGFsKSB7CiAgICAgICAgIGQtPmhvcml6
b250YWxTY3JvbGxCYXJQb2xpY3kgPSBwb2xpY3k7CiAgICAgICAgIGlmIChkLT5mcmFtZS0+dmll
dygpKSB7Ci0gICAgICAgICAgICBkLT5mcmFtZS0+dmlldygpLT5zZXRIb3Jpem9udGFsU2Nyb2xs
YmFyTW9kZSgoU2Nyb2xsYmFyTW9kZSlwb2xpY3kpOworICAgICAgICAgICAgZC0+ZnJhbWUtPnZp
ZXcoKS0+c2V0SG9yaXpvbnRhbFNjcm9sbGJhck1vZGUoKFNjcm9sbGJhck1vZGUpcG9saWN5LCBw
b2xpY3kgIT0gUXQ6OlNjcm9sbEJhckFzTmVlZGVkIC8qIGxvY2sgKi8pOwogICAgICAgICAgICAg
ZC0+ZnJhbWUtPnZpZXcoKS0+dXBkYXRlQ2FuSGF2ZVNjcm9sbGJhcnMoKTsKICAgICAgICAgfQog
ICAgIH0gZWxzZSB7CiAgICAgICAgIGQtPnZlcnRpY2FsU2Nyb2xsQmFyUG9saWN5ID0gcG9saWN5
OwogICAgICAgICBpZiAoZC0+ZnJhbWUtPnZpZXcoKSkgewotICAgICAgICAgICAgZC0+ZnJhbWUt
PnZpZXcoKS0+c2V0VmVydGljYWxTY3JvbGxiYXJNb2RlKChTY3JvbGxiYXJNb2RlKXBvbGljeSk7
CisgICAgICAgICAgICBkLT5mcmFtZS0+dmlldygpLT5zZXRWZXJ0aWNhbFNjcm9sbGJhck1vZGUo
KFNjcm9sbGJhck1vZGUpcG9saWN5LCBwb2xpY3kgIT0gUXQ6OlNjcm9sbEJhckFzTmVlZGVkIC8q
IGxvY2sgKi8pOwogICAgICAgICAgICAgZC0+ZnJhbWUtPnZpZXcoKS0+dXBkYXRlQ2FuSGF2ZVNj
cm9sbGJhcnMoKTsKICAgICAgICAgfQogICAgIH0KZGlmZiAtLWdpdCBhL1dlYktpdC9xdC9DaGFu
Z2VMb2cgYi9XZWJLaXQvcXQvQ2hhbmdlTG9nCmluZGV4IDc0Mzg2NWMuLmM3NmRkOGUgMTAwNjQ0
Ci0tLSBhL1dlYktpdC9xdC9DaGFuZ2VMb2cKKysrIGIvV2ViS2l0L3F0L0NoYW5nZUxvZwpAQCAt
MSwzICsxLDIwIEBACisyMDEwLTA0LTAxICBBbnRvbmlvIEdvbWVzICA8dG9uaWtpdG9vQHdlYmtp
dC5vcmc+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAg
W1F0XSBSRUdSRVNTSU9OOihyNTA2NjUpIFFXZWJGcmFtZTo6c2V0U2Nyb2xsQmFyUG9saWN5KFF0
OjpWZXJ0aWNhbCxRdDo6U2Nyb2xsQmFyQWx3YXlzT2ZmKSBoYXMgbm8gZWZmZWN0LgorICAgICAg
ICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9Mjk0MzEKKworICAgICAg
ICBNYWtlIHVzZSBvZiB0aGUgbmV3IGxvY2sgcGFyYW1ldGVyIG9mIHNldHtWZXJ0aWNhbCxIb3Jp
em9udGFsfVNjcm9sbGJhck1vZGUuCisKKyAgICAgICAgQWx3YXlzIGFkZGVkIGEgcXQgYXV0byB0
ZXN0IGZvciBzZXQgc2Nyb2xsYmFyIHBvbGljeSBmZWF0dXJlLgorCisgICAgICAgICogQXBpL3F3
ZWJmcmFtZS5jcHA6CisgICAgICAgIChRV2ViRnJhbWU6OnNldFNjcm9sbEJhclBvbGljeSk6Cisg
ICAgICAgICogdGVzdHMvcXdlYmZyYW1lL3RzdF9xd2ViZnJhbWUuY3BwOgorICAgICAgICAqIFdl
YkNvcmVTdXBwb3J0L0ZyYW1lTG9hZGVyQ2xpZW50UXQuY3BwOgorICAgICAgICAoRnJhbWVMb2Fk
ZXJDbGllbnRRdDo6dHJhbnNpdGlvblRvQ29tbWl0dGVkRm9yTmV3UGFnZSk6CisKIDIwMTAtMDQt
MDcgIERhd2l0IEFsZW1heWVodSAgPGFkYXdpdEBrZGUub3JnPgogCiAgICAgICAgIFJldmlld2Vk
IGJ5IFNpbW9uIEhhdXNtYW5uLgpkaWZmIC0tZ2l0IGEvV2ViS2l0L3F0L1dlYkNvcmVTdXBwb3J0
L0ZyYW1lTG9hZGVyQ2xpZW50UXQuY3BwIGIvV2ViS2l0L3F0L1dlYkNvcmVTdXBwb3J0L0ZyYW1l
TG9hZGVyQ2xpZW50UXQuY3BwCmluZGV4IGNkZTRiOWYuLjViMWRkMzAgMTAwNjQ0Ci0tLSBhL1dl
YktpdC9xdC9XZWJDb3JlU3VwcG9ydC9GcmFtZUxvYWRlckNsaWVudFF0LmNwcAorKysgYi9XZWJL
aXQvcXQvV2ViQ29yZVN1cHBvcnQvRnJhbWVMb2FkZXJDbGllbnRRdC5jcHAKQEAgLTIxNSwxMiAr
MjE1LDE3IEBAIHZvaWQgRnJhbWVMb2FkZXJDbGllbnRRdDo6dHJhbnNpdGlvblRvQ29tbWl0dGVk
Rm9yTmV3UGFnZSgpCiAgICAgUVdlYlBhZ2UqIHBhZ2UgPSBtX3dlYkZyYW1lLT5wYWdlKCk7CiAg
ICAgY29uc3QgUVNpemUgcHJlZmVycmVkTGF5b3V0U2l6ZSA9IHBhZ2UtPnByZWZlcnJlZENvbnRl
bnRzU2l6ZSgpOwogCisgICAgU2Nyb2xsYmFyTW9kZSBoU2Nyb2xsYmFyID0gKFNjcm9sbGJhck1v
ZGUpIG1fd2ViRnJhbWUtPnNjcm9sbEJhclBvbGljeShRdDo6SG9yaXpvbnRhbCk7CisgICAgU2Ny
b2xsYmFyTW9kZSB2U2Nyb2xsYmFyID0gKFNjcm9sbGJhck1vZGUpIG1fd2ViRnJhbWUtPnNjcm9s
bEJhclBvbGljeShRdDo6VmVydGljYWwpOworICAgIGJvb2wgaExvY2sgPSBoU2Nyb2xsYmFyICE9
IFNjcm9sbGJhckF1dG87CisgICAgYm9vbCB2TG9jayA9IHZTY3JvbGxiYXIgIT0gU2Nyb2xsYmFy
QXV0bzsKKwogICAgIG1fZnJhbWUtPmNyZWF0ZVZpZXcobV93ZWJGcmFtZS0+cGFnZSgpLT52aWV3
cG9ydFNpemUoKSwKICAgICAgICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmRDb2xvciwgIWJh
Y2tncm91bmRDb2xvci5hbHBoYSgpLAogICAgICAgICAgICAgICAgICAgICAgICAgcHJlZmVycmVk
TGF5b3V0U2l6ZS5pc1ZhbGlkKCkgPyBJbnRTaXplKHByZWZlcnJlZExheW91dFNpemUpIDogSW50
U2l6ZSgpLAogICAgICAgICAgICAgICAgICAgICAgICAgcHJlZmVycmVkTGF5b3V0U2l6ZS5pc1Zh
bGlkKCksCi0gICAgICAgICAgICAgICAgICAgICAgICAoU2Nyb2xsYmFyTW9kZSltX3dlYkZyYW1l
LT5zY3JvbGxCYXJQb2xpY3koUXQ6Okhvcml6b250YWwpLAotICAgICAgICAgICAgICAgICAgICAg
ICAgKFNjcm9sbGJhck1vZGUpbV93ZWJGcmFtZS0+c2Nyb2xsQmFyUG9saWN5KFF0OjpWZXJ0aWNh
bCkpOworICAgICAgICAgICAgICAgICAgICAgICAgaFNjcm9sbGJhciwgaExvY2ssCisgICAgICAg
ICAgICAgICAgICAgICAgICB2U2Nyb2xsYmFyLCB2TG9jayk7CiB9CiAKIApkaWZmIC0tZ2l0IGEv
V2ViS2l0L3F0L3Rlc3RzL3F3ZWJmcmFtZS90c3RfcXdlYmZyYW1lLmNwcCBiL1dlYktpdC9xdC90
ZXN0cy9xd2ViZnJhbWUvdHN0X3F3ZWJmcmFtZS5jcHAKaW5kZXggMzdmN2I4OC4uYmJmNDQ3YSAx
MDA2NDQKLS0tIGEvV2ViS2l0L3F0L3Rlc3RzL3F3ZWJmcmFtZS90c3RfcXdlYmZyYW1lLmNwcAor
KysgYi9XZWJLaXQvcXQvdGVzdHMvcXdlYmZyYW1lL3RzdF9xd2ViZnJhbWUuY3BwCkBAIC01ODUs
NiArNTg1LDcgQEAgcHJpdmF0ZSBzbG90czoKICAgICB2b2lkIHJlbmRlcigpOwogICAgIHZvaWQg
c2Nyb2xsUG9zaXRpb24oKTsKICAgICB2b2lkIHNjcm9sbFRvQW5jaG9yKCk7CisgICAgdm9pZCBz
Y3JvbGxiYXJzT2ZmKCk7CiAgICAgdm9pZCBldmFsdWF0ZVdpbGxDYXVzZVJlcGFpbnQoKTsKICAg
ICB2b2lkIHFPYmplY3RXcmFwcGVyV2l0aFNhbWVJZGVudGl0eSgpOwogICAgIHZvaWQgaW50cm9z
cGVjdFF0TWV0aG9kc19kYXRhKCk7CkBAIC0yNzk2LDYgKzI3OTcsMzggQEAgdm9pZCB0c3RfUVdl
YkZyYW1lOjpzY3JvbGxUb0FuY2hvcigpCiAgICAgUVZFUklGWShmcmFtZS0+c2Nyb2xsUG9zaXRp
b24oKS55KCkgIT0gMCk7CiB9CiAKKwordm9pZCB0c3RfUVdlYkZyYW1lOjpzY3JvbGxiYXJzT2Zm
KCkKK3sKKyAgICBRV2ViVmlldyB2aWV3OworICAgIFFXZWJGcmFtZSogbWFpbkZyYW1lID0gdmll
dy5wYWdlKCktPm1haW5GcmFtZSgpOworCisgICAgbWFpbkZyYW1lLT5zZXRTY3JvbGxCYXJQb2xp
Y3koUXQ6OlZlcnRpY2FsLCBRdDo6U2Nyb2xsQmFyQWx3YXlzT2ZmKTsKKyAgICBtYWluRnJhbWUt
PnNldFNjcm9sbEJhclBvbGljeShRdDo6SG9yaXpvbnRhbCwgUXQ6OlNjcm9sbEJhckFsd2F5c09m
Zik7CisKKyAgICBRU3RyaW5nIGh0bWwoIjxzY3JpcHQ+IiBcCisgICAgICAgICAgICAgICAgICIg
ICBmdW5jdGlvbiBjaGVja1Njcm9sbGJhcigpIHsiIFwKKyAgICAgICAgICAgICAgICAgIiAgICAg
ICBpZiAoaW5uZXJXaWR0aCA9PT0gZG9jdW1lbnQuZG9jdW1lbnRFbGVtZW50Lm9mZnNldFdpZHRo
KSIgXAorICAgICAgICAgICAgICAgICAiICAgICAgICAgICBkb2N1bWVudC5nZXRFbGVtZW50QnlJ
ZCgnc3BhbjEnKS5pbm5lclRleHQgPSAnU1VDQ0VTUyc7IiBcCisgICAgICAgICAgICAgICAgICIg
ICAgICAgZWxzZSIgXAorICAgICAgICAgICAgICAgICAiICAgICAgICAgICBkb2N1bWVudC5nZXRF
bGVtZW50QnlJZCgnc3BhbjEnKS5pbm5lclRleHQgPSAnRkFJTCc7IiBcCisgICAgICAgICAgICAg
ICAgICIgICB9IiBcCisgICAgICAgICAgICAgICAgICI8L3NjcmlwdD4iIFwKKyAgICAgICAgICAg
ICAgICAgIjxib2R5PiIgXAorICAgICAgICAgICAgICAgICAiICAgPGRpdiBzdHlsZT0nbWFyZ2lu
LXRvcDoxMDAwcHggOyBtYXJnaW4tbGVmdDoxMDAwcHgnPiIgXAorICAgICAgICAgICAgICAgICAi
ICAgICAgIDxhIGlkPSdvZmZzY3JlZW4nIGhyZWY9J2EnPkVuZDwvYT4iIFwKKyAgICAgICAgICAg
ICAgICAgIiAgIDwvZGl2PiIgXAorICAgICAgICAgICAgICAgICAiPHNwYW4gaWQ9J3NwYW4xJz48
L3NwYW4+IiBcCisgICAgICAgICAgICAgICAgICI8L2JvZHk+Iik7CisKKworICAgIHZpZXcuc2V0
SHRtbChodG1sKTsKKyAgICA6OndhaXRGb3JTaWduYWwoJnZpZXcsIFNJR05BTChsb2FkRmluaXNo
ZWQoYm9vbCkpKTsKKworICAgIG1haW5GcmFtZS0+ZXZhbHVhdGVKYXZhU2NyaXB0KCJjaGVja1Nj
cm9sbGJhcigpOyIpOworICAgIFFDT01QQVJFKG1haW5GcmFtZS0+ZG9jdW1lbnRFbGVtZW50KCku
ZmluZEFsbCgic3BhbiIpLmF0KDApLnRvUGxhaW5UZXh0KCksIFFTdHJpbmcoIlNVQ0NFU1MiKSk7
Cit9CisKIHZvaWQgdHN0X1FXZWJGcmFtZTo6ZXZhbHVhdGVXaWxsQ2F1c2VSZXBhaW50KCkKIHsK
ICAgICBRV2ViVmlldyB2aWV3OwpkaWZmIC0tZ2l0IGEvV2ViS2l0VG9vbHMvQ2hhbmdlTG9nIGIv
V2ViS2l0VG9vbHMvQ2hhbmdlTG9nCmluZGV4IDUxN2I5YmQuLmY3NTIxYTMgMTAwNjQ0Ci0tLSBh
L1dlYktpdFRvb2xzL0NoYW5nZUxvZworKysgYi9XZWJLaXRUb29scy9DaGFuZ2VMb2cKQEAgLTEs
MyArMSwxOSBAQAorMjAxMC0wNC0wMSAgQW50b25pbyBHb21lcyAgPHRvbmlraXRvb0B3ZWJraXQu
b3JnPgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIFtR
dF0gUkVHUkVTU0lPTjoocjUwNjY1KSBRV2ViRnJhbWU6OnNldFNjcm9sbEJhclBvbGljeShRdDo6
VmVydGljYWwsUXQ6OlNjcm9sbEJhckFsd2F5c09mZikgaGFzIG5vIGVmZmVjdC4KKyAgICAgICAg
aHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTI5NDMxCisKKyAgICAgICAg
TWFrZSBwb3NzaWJsZSB0byBEUlQgdG8gc2V0IHNjcm9sbGJhciBwb2xpY2llcyAob24sIG9mZiBv
ciBhdXRvKS4KKworICAgICAgICAqIER1bXBSZW5kZXJUcmVlL3F0L0xheW91dFRlc3RDb250cm9s
bGVyUXQuY3BwOgorICAgICAgICAoTGF5b3V0VGVzdENvbnRyb2xsZXI6OnNldFNjcm9sbGJhclBv
bGljeSk6CisgICAgICAgICogRHVtcFJlbmRlclRyZWUvcXQvTGF5b3V0VGVzdENvbnRyb2xsZXJR
dC5oOgorICAgICAgICAqIFF0TGF1bmNoZXIvbWFpbi5jcHA6CisgICAgICAgIChMYXVuY2hlcldp
bmRvdzo6dG9nZ2xlU2Nyb2xsYmFycyk6CisgICAgICAgIChMYXVuY2hlcldpbmRvdzo6Y3JlYXRl
Q2hyb21lKToKKwogMjAxMC0wMy0zMSAgRXJpYyBTZWlkZWwgIDxlcmljQHdlYmtpdC5vcmc+CiAK
ICAgICAgICAgUmV2aWV3ZWQgYnkgQWRhbSBCYXJ0aC4KZGlmZiAtLWdpdCBhL1dlYktpdFRvb2xz
L0R1bXBSZW5kZXJUcmVlL3F0L0xheW91dFRlc3RDb250cm9sbGVyUXQuY3BwIGIvV2ViS2l0VG9v
bHMvRHVtcFJlbmRlclRyZWUvcXQvTGF5b3V0VGVzdENvbnRyb2xsZXJRdC5jcHAKaW5kZXggYjY0
ODBjMi4uNjcwM2IwMSAxMDA2NDQKLS0tIGEvV2ViS2l0VG9vbHMvRHVtcFJlbmRlclRyZWUvcXQv
TGF5b3V0VGVzdENvbnRyb2xsZXJRdC5jcHAKKysrIGIvV2ViS2l0VG9vbHMvRHVtcFJlbmRlclRy
ZWUvcXQvTGF5b3V0VGVzdENvbnRyb2xsZXJRdC5jcHAKQEAgLTU0MSw1ICs1NDEsMjkgQEAgYm9v
bCBMYXlvdXRUZXN0Q29udHJvbGxlcjo6Y2FsbFNob3VsZENsb3NlT25XZWJWaWV3KCkKICAgICBy
ZXR1cm4gZmFsc2U7CiB9CiAKK3ZvaWQgTGF5b3V0VGVzdENvbnRyb2xsZXI6OnNldFNjcm9sbGJh
clBvbGljeShjb25zdCBRU3RyaW5nJiBvcmllbnRhdGlvbiwgY29uc3QgUVN0cmluZyYgcG9saWN5
KQoreworICAgIFF0OjpPcmllbnRhdGlvbiBvOworICAgIFF0OjpTY3JvbGxCYXJQb2xpY3kgcDsK
KworICAgIGlmIChvcmllbnRhdGlvbiA9PSAidmVydGljYWwiKQorICAgICAgICBvID0gUXQ6OlZl
cnRpY2FsOworICAgIGVsc2UgaWYgKG9yaWVudGF0aW9uID09ICJob3Jpem9udGFsIikKKyAgICAg
ICAgbyA9IFF0OjpIb3Jpem9udGFsOworICAgIGVsc2UKKyAgICAgICAgcmV0dXJuOworCisgICAg
aWYgKHBvbGljeSA9PSAib24iKQorICAgICAgICBwID0gUXQ6OlNjcm9sbEJhckFsd2F5c09uOwor
ICAgIGVsc2UgaWYgKHBvbGljeSA9PSAiYXV0byIpCisgICAgICAgIHAgPSBRdDo6U2Nyb2xsQmFy
QXNOZWVkZWQ7CisgICAgZWxzZSBpZiAocG9saWN5ID09ICJvZmYiKQorICAgICAgICBwID0gUXQ6
OlNjcm9sbEJhckFsd2F5c09mZjsKKyAgICBlbHNlCisgICAgICAgIHJldHVybjsKKworICAgIG1f
ZHJ0LT53ZWJQYWdlKCktPm1haW5GcmFtZSgpLT5zZXRTY3JvbGxCYXJQb2xpY3kobywgcCk7Cit9
CisKIGNvbnN0IHVuc2lnbmVkIExheW91dFRlc3RDb250cm9sbGVyOjptYXhWaWV3V2lkdGggPSA4
MDA7CiBjb25zdCB1bnNpZ25lZCBMYXlvdXRUZXN0Q29udHJvbGxlcjo6bWF4Vmlld0hlaWdodCA9
IDYwMDsKZGlmZiAtLWdpdCBhL1dlYktpdFRvb2xzL0R1bXBSZW5kZXJUcmVlL3F0L0xheW91dFRl
c3RDb250cm9sbGVyUXQuaCBiL1dlYktpdFRvb2xzL0R1bXBSZW5kZXJUcmVlL3F0L0xheW91dFRl
c3RDb250cm9sbGVyUXQuaAppbmRleCAzNmI1ZjcwLi4zYmQ5ZGI4IDEwMDY0NAotLS0gYS9XZWJL
aXRUb29scy9EdW1wUmVuZGVyVHJlZS9xdC9MYXlvdXRUZXN0Q29udHJvbGxlclF0LmgKKysrIGIv
V2ViS2l0VG9vbHMvRHVtcFJlbmRlclRyZWUvcXQvTGF5b3V0VGVzdENvbnRyb2xsZXJRdC5oCkBA
IC0xNjUsNiArMTY1LDEyIEBAIHB1YmxpYyBzbG90czoKICAgICBpbnQgbnVtYmVyT2ZQYWdlcyhm
bG9hdCB3aWR0aCA9IG1heFZpZXdXaWR0aCwgZmxvYXQgaGVpZ2h0ID0gbWF4Vmlld0hlaWdodCk7
CiAgICAgYm9vbCBjYWxsU2hvdWxkQ2xvc2VPbldlYlZpZXcoKTsKIAorICAgIC8qCisgICAgICAg
IFBvbGljeSB2YWx1ZXM6ICdvbicsICdhdXRvJyBvciAnb2ZmJy4KKyAgICAgICAgT3JpZW50YXRp
b24gdmFsdWVzOiAndmVydGljYWwnIG9yICdob3Jpem9udGFsJy4KKyAgICAqLworICAgIHZvaWQg
c2V0U2Nyb2xsYmFyUG9saWN5KGNvbnN0IFFTdHJpbmcmIG9yaWVudGF0aW9uLCBjb25zdCBRU3Ry
aW5nJiBwb2xpY3kpOworCiBwcml2YXRlIHNsb3RzOgogICAgIHZvaWQgcHJvY2Vzc1dvcmsoKTsK
IAotLSAKMS42LjAuNAoK
</data>
<flag name="commit-queue"
          id="36299"
          type_id="3"
          status="-"
          setter="tonikitoo"
    />
          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>52745</attachid>
            <date>2010-04-07 10:13:11 -0700</date>
            <delta_ts>2010-04-08 08:17:28 -0700</delta_ts>
            <desc>(committed r57277) patch_1 - v3.2 - addressed discussion with dhyatt on IRC + rebased to ToT + builds in gtk</desc>
            <filename>0001-2010-04-01-Antonio-Gomes-tonikitoo-webkit.org.patch</filename>
            <type>text/plain</type>
            <size>27157</size>
            <attacher name="Antonio Gomes">tonikitoo</attacher>
            
              <data encoding="base64">RnJvbSBjZjhlZDAwZDFhZGNiMDZhZjI3Nzc5NmE0NGQ4MmIwMzUwMmQ4NTMwIE1vbiBTZXAgMTcg
MDA6MDA6MDAgMjAwMQpGcm9tOiBBbnRvbmlvIEdvbWVzIDx0b25pa2l0b29Ad2Via2l0Lm9yZz4K
RGF0ZTogV2VkLCA3IEFwciAyMDEwIDEwOjQ1OjA5IC0wNDAwClN1YmplY3Q6IFtQQVRDSF0gMjAx
MC0wNC0wMSAgQW50b25pbyBHb21lcyAgPHRvbmlraXRvb0B3ZWJraXQub3JnPgoKICAgICAgICBS
ZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KCiAgICAgICAgW1F0XSBSRUdSRVNTSU9OOihyNTA2
NjUpIFFXZWJGcmFtZTo6c2V0U2Nyb2xsQmFyUG9saWN5KFF0OjpWZXJ0aWNhbCxRdDo6U2Nyb2xs
QmFyQWx3YXlzT2ZmKSBoYXMgbm8gZWZmZWN0LgogICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQu
b3JnL3Nob3dfYnVnLmNnaT9pZD0yOTQzMQoKICAgICAgICBUZXN0OiBmYXN0L292ZXJmbG93L3Nj
cm9sbGJhci1yZXN0b3JlZC1hbmQtdGhlbi1sb2NrZWQuaHRtbAoKICAgICAgICBXZWJDb3JlOgoK
ICAgICAgICBQYXRjaCBpbnRyb2R1Y2VzIGEgbG9jayBzY3JvbGxiYXJzIGNvbmNlcHQgdG8gU2Ny
b2xsVmlldywgYXMgaW4gV2ViRHluYW1pY1Njcm9sbEJhcnNWaWV3Lm1tL2gKICAgICAgICBvbiBX
ZWJLaXQvbWFjLiBJdCBpcyBuZWVkZWQgYmVjYXVzZSBpbiBRdFdlYktpdCwgd2UgaGF2ZSBBcGkg
Zm9yIHNldHRpbmcgYm90aCB2ZXJ0aWNhbCBhbmQKICAgICAgICBob3Jpem9udGFsIHNjcm9sbGJh
cnMgb24vb2ZmL2F1dG8uIFdoZW4gaXQgaXMgc2V0IHRvIG9mZiwgZm9yIGV4YW1wbGUsIGl0IHNo
b3VsZCByZW1haW4KICAgICAgICBhcyBzdWNoLCB1bmxlc3MgdW5zZXQuCgogICAgICAgIEZvciB0
aGUgbG9ja2luZyBjb25jZXB0LCBvcHRpb25hbCAnbG9jaycgcGFyYW1ldGVycyB3ZXJlIGFkZGVk
IHRvIHNldFNjcm9sbGJhck1vZGVzLAogICAgICAgIHNldEhvcml6b250YWxTY3JvbGxiYXJNb2Rl
IGFuZCBzZXRWZXJ0aWNhbFNjcm9sbGJhck1vZGUgbWV0aG9kcyBvZiBTY3JvbGxWaWV3LiBBcyB0
aGVzZQogICAgICAgIGFyZSBhbGwgb3B0aW9uYWwsIGFueSBwcmV2aW91cyBjb2RlIGNhbGxpbmcg
dGhlbSBkbyBub3QgbmVlZCBtb2RpZmljYXRpb24uCgogICAgICAgIFR3byBvcHRpb25hbCBwYXJh
bWV0ZXJzIHdlcmUgYWxzbyBhZGRlZCB0byBGcmFtZSdzIGNyZWF0ZVZpZXcgbWV0aG9kLCBmb3Ig
aG9yaXpvbnRhbCBhbmQgdmVydGljYWwKICAgICAgICBsb2NrIHN0YXRlIHBlcnNpc3RlbmNlIGNy
b3NzIHBhZ2UgbG9hZHMuCgogICAgICAgICogV2ViQ29yZS5iYXNlLmV4cDoKICAgICAgICAqIHBh
Z2UvRnJhbWUuY3BwOgogICAgICAgIChXZWJDb3JlOjpGcmFtZTo6Y3JlYXRlVmlldyk6CiAgICAg
ICAgKiBwbGF0Zm9ybS9TY3JvbGxWaWV3LmNwcDoKICAgICAgICAoV2ViQ29yZTo6U2Nyb2xsVmll
dzo6U2Nyb2xsVmlldyk6CiAgICAgICAgKFdlYkNvcmU6OlNjcm9sbFZpZXc6OnNldFNjcm9sbGJh
ck1vZGVzKToKICAgICAgICAoV2ViQ29yZTo6U2Nyb2xsVmlldzo6c2V0SG9yaXpvbnRhbFNjcm9s
bGJhck1vZGUpOgogICAgICAgIChXZWJDb3JlOjpTY3JvbGxWaWV3OjpzZXRWZXJ0aWNhbFNjcm9s
bGJhck1vZGUpOgogICAgICAgICogcGxhdGZvcm0vU2Nyb2xsVmlldy5oOgogICAgICAgIChXZWJD
b3JlOjpTY3JvbGxWaWV3OjpzZXRIb3Jpem9udGFsU2Nyb2xsYmFyTG9jayk6CiAgICAgICAgKFdl
YkNvcmU6OlNjcm9sbFZpZXc6OmlzSG9yaXpvbnRhbFNjcm9sbGJhckxvY2tlZCk6CiAgICAgICAg
KFdlYkNvcmU6OlNjcm9sbFZpZXc6OnNldFZlcnRpY2FsU2Nyb2xsYmFyTG9jayk6CiAgICAgICAg
KFdlYkNvcmU6OlNjcm9sbFZpZXc6OmlzVmVydGljYWxTY3JvbGxiYXJMb2NrZWQpOgogICAgICAg
IChXZWJDb3JlOjpTY3JvbGxWaWV3OjpzZXRTY3JvbGxpbmdNb2Rlc0xvY2tlZCk6CgogICAgICAg
IFdlYktpdC9xdDoKCiAgICAgICAgTWFrZSB1c2Ugb2YgdGhlIG5ldyBsb2NrIHBhcmFtZXRlciBv
ZiBzZXR7VmVydGljYWwsSG9yaXpvbnRhbH1TY3JvbGxiYXJNb2RlLgoKICAgICAgICBBbHdheXMg
YWRkZWQgYSBxdCBhdXRvIHRlc3QgZm9yIHNldCBzY3JvbGxiYXIgcG9saWN5IGZlYXR1cmUuCgog
ICAgICAgICogQXBpL3F3ZWJmcmFtZS5jcHA6CiAgICAgICAgKFFXZWJGcmFtZTo6c2V0U2Nyb2xs
QmFyUG9saWN5KToKICAgICAgICAqIHRlc3RzL3F3ZWJmcmFtZS90c3RfcXdlYmZyYW1lLmNwcDoK
ICAgICAgICAqIFdlYkNvcmVTdXBwb3J0L0ZyYW1lTG9hZGVyQ2xpZW50UXQuY3BwOgogICAgICAg
IChGcmFtZUxvYWRlckNsaWVudFF0Ojp0cmFuc2l0aW9uVG9Db21taXR0ZWRGb3JOZXdQYWdlKToK
CiAgICAgICAgV2ViS2l0VG9vbHM6CgogICAgICAgIE1ha2UgcG9zc2libGUgdG8gRFJUIHRvIHNl
dCBzY3JvbGxiYXIgcG9saWNpZXMgKG9uLCBvZmYgb3IgYXV0bykuCgogICAgICAgICogRHVtcFJl
bmRlclRyZWUvcXQvTGF5b3V0VGVzdENvbnRyb2xsZXJRdC5jcHA6CiAgICAgICAgKExheW91dFRl
c3RDb250cm9sbGVyOjpzZXRTY3JvbGxiYXJQb2xpY3kpOgogICAgICAgICogRHVtcFJlbmRlclRy
ZWUvcXQvTGF5b3V0VGVzdENvbnRyb2xsZXJRdC5oOgogICAgICAgICogUXRMYXVuY2hlci9tYWlu
LmNwcDoKICAgICAgICAoTGF1bmNoZXJXaW5kb3c6OnRvZ2dsZVNjcm9sbGJhcnMpOgogICAgICAg
IChMYXVuY2hlcldpbmRvdzo6Y3JlYXRlQ2hyb21lKToKCiAgICAgICAgTGF5b3V0VGVzdHM6Cgog
ICAgICAgICogZmFzdC9vdmVyZmxvdy9zY3JvbGxiYXItcmVzdG9yZWQtYW5kLXRoZW4tbG9ja2Vk
LWV4cGVjdGVkLnR4dDogQWRkZWQuCiAgICAgICAgKiBmYXN0L292ZXJmbG93L3Njcm9sbGJhci1y
ZXN0b3JlZC1hbmQtdGhlbi1sb2NrZWQuaHRtbDogQWRkZWQuCi0tLQogTGF5b3V0VGVzdHMvQ2hh
bmdlTG9nICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCAgIDEwICsrKysrCiAuLi5zY3Jv
bGxiYXItcmVzdG9yZWQtYW5kLXRoZW4tbG9ja2VkLWV4cGVjdGVkLnR4dCB8ICAgIDggKysrKwog
Li4uL3Njcm9sbGJhci1yZXN0b3JlZC1hbmQtdGhlbi1sb2NrZWQuaHRtbCAgICAgICAgfCAgIDQx
ICsrKysrKysrKysrKysrKysrKysrCiBMYXlvdXRUZXN0cy9wbGF0Zm9ybS9ndGsvU2tpcHBlZCAg
ICAgICAgICAgICAgICAgICB8ICAgIDMgKwogTGF5b3V0VGVzdHMvcGxhdGZvcm0vbWFjL1NraXBw
ZWQgICAgICAgICAgICAgICAgICAgfCAgICAzICsKIExheW91dFRlc3RzL3BsYXRmb3JtL3dpbi9T
a2lwcGVkICAgICAgICAgICAgICAgICAgIHwgICAgMyArCiBXZWJDb3JlL0NoYW5nZUxvZyAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8ICAgMzUgKysrKysrKysrKysrKysrKysKIFdl
YkNvcmUvV2ViQ29yZS5iYXNlLmV4cCAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgICAgMiAt
CiBXZWJDb3JlL3BhZ2UvRnJhbWUuY3BwICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8ICAg
IDUgKy0KIFdlYkNvcmUvcGFnZS9GcmFtZS5oICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
IHwgICAgMyArLQogV2ViQ29yZS9wbGF0Zm9ybS9TY3JvbGxWaWV3LmNwcCAgICAgICAgICAgICAg
ICAgICAgfCAgIDI4ICsrKysrKysrKysrLS0KIFdlYkNvcmUvcGxhdGZvcm0vU2Nyb2xsVmlldy5o
ICAgICAgICAgICAgICAgICAgICAgIHwgICAxOCArKysrKysrLQogV2ViQ29yZS9wbGF0Zm9ybS9n
dGsvU2Nyb2xsVmlld0d0ay5jcHAgICAgICAgICAgICAgfCAgICAyICstCiBXZWJLaXQvcXQvQXBp
L3F3ZWJmcmFtZS5jcHAgICAgICAgICAgICAgICAgICAgICAgICB8ICAgIDQgKy0KIFdlYktpdC9x
dC9DaGFuZ2VMb2cgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgICAxNyArKysrKysr
KwogV2ViS2l0L3F0L1dlYkNvcmVTdXBwb3J0L0ZyYW1lTG9hZGVyQ2xpZW50UXQuY3BwICAgfCAg
ICA5ICsrKy0KIFdlYktpdC9xdC90ZXN0cy9xd2ViZnJhbWUvdHN0X3F3ZWJmcmFtZS5jcHAgICAg
ICAgIHwgICAzMyArKysrKysrKysrKysrKysrCiBXZWJLaXRUb29scy9DaGFuZ2VMb2cgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICB8ICAgMTYgKysrKysrKysKIC4uLi9EdW1wUmVuZGVyVHJl
ZS9xdC9MYXlvdXRUZXN0Q29udHJvbGxlclF0LmNwcCAgIHwgICAyNCArKysrKysrKysrKwogLi4u
L0R1bXBSZW5kZXJUcmVlL3F0L0xheW91dFRlc3RDb250cm9sbGVyUXQuaCAgICAgfCAgICA2ICsr
KwogMjAgZmlsZXMgY2hhbmdlZCwgMjUzIGluc2VydGlvbnMoKyksIDE3IGRlbGV0aW9ucygtKQog
Y3JlYXRlIG1vZGUgMTAwNjQ0IExheW91dFRlc3RzL2Zhc3Qvb3ZlcmZsb3cvc2Nyb2xsYmFyLXJl
c3RvcmVkLWFuZC10aGVuLWxvY2tlZC1leHBlY3RlZC50eHQKIGNyZWF0ZSBtb2RlIDEwMDY0NCBM
YXlvdXRUZXN0cy9mYXN0L292ZXJmbG93L3Njcm9sbGJhci1yZXN0b3JlZC1hbmQtdGhlbi1sb2Nr
ZWQuaHRtbAoKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL0NoYW5nZUxvZyBiL0xheW91dFRlc3Rz
L0NoYW5nZUxvZwppbmRleCAxNThiOWNlLi41NmE0ZThhIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0
cy9DaGFuZ2VMb2cKKysrIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTMgQEAK
KzIwMTAtMDQtMDEgIEFudG9uaW8gR29tZXMgIDx0b25pa2l0b29Ad2Via2l0Lm9yZz4KKworICAg
ICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBbUXRdIFJFR1JFU1NJ
T046KHI1MDY2NSkgUVdlYkZyYW1lOjpzZXRTY3JvbGxCYXJQb2xpY3koUXQ6OlZlcnRpY2FsLFF0
OjpTY3JvbGxCYXJBbHdheXNPZmYpIGhhcyBubyBlZmZlY3QuCisgICAgICAgIGh0dHBzOi8vYnVn
cy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yOTQzMQorCisgICAgICAgICogZmFzdC9vdmVy
Zmxvdy9zY3JvbGxiYXItcmVzdG9yZWQtYW5kLXRoZW4tbG9ja2VkLWV4cGVjdGVkLnR4dDogQWRk
ZWQuCisgICAgICAgICogZmFzdC9vdmVyZmxvdy9zY3JvbGxiYXItcmVzdG9yZWQtYW5kLXRoZW4t
bG9ja2VkLmh0bWw6IEFkZGVkLgorCiAyMDEwLTA0LTA3ICBTaGVyaWZmIEJvdCAgPHdlYmtpdC5y
ZXZpZXcuYm90QGdtYWlsLmNvbT4KIAogICAgICAgICBVbnJldmlld2VkLCByb2xsaW5nIG91dCBy
NTcxOTYuCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L292ZXJmbG93L3Njcm9sbGJhci1y
ZXN0b3JlZC1hbmQtdGhlbi1sb2NrZWQtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvZmFzdC9v
dmVyZmxvdy9zY3JvbGxiYXItcmVzdG9yZWQtYW5kLXRoZW4tbG9ja2VkLWV4cGVjdGVkLnR4dApu
ZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4yZjFhYThhCi0tLSAvZGV2L251bGwK
KysrIGIvTGF5b3V0VGVzdHMvZmFzdC9vdmVyZmxvdy9zY3JvbGxiYXItcmVzdG9yZWQtYW5kLXRo
ZW4tbG9ja2VkLWV4cGVjdGVkLnR4dApAQCAtMCwwICsxLDggQEAKK1Rlc3QgZm9yIGJ1ZyAyOTQz
MSBbUXRdIFJFR1JFU1NJT046KHI1MDY2NSkgUVdlYkZyYW1lOjpzZXRTY3JvbGxCYXJQb2xpY3ko
UXQ6OlZlcnRpY2FsLFF0OjpTY3JvbGxCYXJBbHdheXNPZmYpIGhhcyBubyBlZmZlY3QuCisKK1Ro
aXMgdGVzdCBlbnN1cmVzIHRoZSBjb3JyZWN0bmVzcyBvZiB0d28gc2Nyb2xsYmFyIGJlaGF2aW91
cjoKKworVGhpcyB0ZXN0cyB0aGF0IGFmdGVyIHNldHRpbmcgJ292ZXJmbG93JyBvbiB0aGUgZG9j
dW1lbnQgZWxlbWVudCB0byAnaGlkZGVuJyBhbmQgYmFjayB0byAndmlzaWJsZScsIHNjcm9sbGJh
cnMgYXBwZWFyIGFzIG5lY2Vzc2FyeS4KK0FmdGVyIGV4cGxpY2l0bHkgc2V0dGluZyBhIHNjcm9s
bGJhciBwb2xpY3kgZGlmZmVyZW50IHRoYW4gJ2F1dG8nLCBXZWJDb3JlIGhvbm9ycyB0aGF0IHVu
dGlsIGl0IGlzIHVuc2V0LgorUEFTUworUEFTUwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFz
dC9vdmVyZmxvdy9zY3JvbGxiYXItcmVzdG9yZWQtYW5kLXRoZW4tbG9ja2VkLmh0bWwgYi9MYXlv
dXRUZXN0cy9mYXN0L292ZXJmbG93L3Njcm9sbGJhci1yZXN0b3JlZC1hbmQtdGhlbi1sb2NrZWQu
aHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi45M2I1NGEwCi0tLSAvZGV2
L251bGwKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC9vdmVyZmxvdy9zY3JvbGxiYXItcmVzdG9yZWQt
YW5kLXRoZW4tbG9ja2VkLmh0bWwKQEAgLTAsMCArMSw0MSBAQAorPGJvZHk+CisgICAgPHA+Cisg
ICAgICAgIFRlc3QgZm9yIDxpPjxhIGhyZWY9Imh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3df
YnVnLmNnaT9pZD0yOTQzMSI+YnVnIDI5NDMxPC9hPgorICAgICAgICBbUXRdIFJFR1JFU1NJT046
KHI1MDY2NSkgUVdlYkZyYW1lOjpzZXRTY3JvbGxCYXJQb2xpY3koUXQ6OlZlcnRpY2FsLFF0OjpT
Y3JvbGxCYXJBbHdheXNPZmYpIGhhcyBubyBlZmZlY3QuCisgICAgPC9wPgorICAgIDxwPiBUaGlz
IHRlc3QgZW5zdXJlcyB0aGUgY29ycmVjdG5lc3Mgb2YgdHdvIHNjcm9sbGJhciBiZWhhdmlvdXI6
PC9wPgorICAgIDx1bD4KKyAgICAgICAgPGxpPiBUaGlzIHRlc3RzIHRoYXQgYWZ0ZXIgc2V0dGlu
ZyAnb3ZlcmZsb3cnIG9uIHRoZSBkb2N1bWVudCBlbGVtZW50IHRvCisgICAgICAgICAgICAnaGlk
ZGVuJyBhbmQgYmFjayB0byAndmlzaWJsZScsIHNjcm9sbGJhcnMgYXBwZWFyIGFzIG5lY2Vzc2Fy
eS4KKyAgICAgICAgPC9saT4KKyAgICAgICAgPGxpPgorICAgICAgICAgICAgQWZ0ZXIgZXhwbGlj
aXRseSBzZXR0aW5nIGEgc2Nyb2xsYmFyIHBvbGljeSBkaWZmZXJlbnQgdGhhbiAnYXV0bycsIFdl
YkNvcmUKKyAgICAgICAgICAgIGhvbm9ycyB0aGF0IHVudGlsIGl0IGlzIHVuc2V0LgorICAgICAg
ICA8L2xpPgorICAgIDwvdWw+CisgICAgPGRpdiBpZD0iZHluYW1pYyI+PC9kaXY+CisgICAgPHAg
aWQ9InJlc3VsdCI+RkFJTDogVGVzdCBkaWQgbm90IHJ1biB0byBjb21wbGV0aW9uPC9wPgorICAg
IDxzY3JpcHQ+CisgICAgICAgIGlmICh3aW5kb3cubGF5b3V0VGVzdENvbnRyb2xsZXIpCisgICAg
ICAgICAgICBsYXlvdXRUZXN0Q29udHJvbGxlci5kdW1wQXNUZXh0KCk7CisKKyAgICAgICAgZG9j
dW1lbnQuZG9jdW1lbnRFbGVtZW50LnN0eWxlLm92ZXJmbG93ID0gImhpZGRlbiI7CisgICAgICAg
IGRvY3VtZW50LmJvZHkub2Zmc2V0VG9wOworICAgICAgICBkb2N1bWVudC5kb2N1bWVudEVsZW1l
bnQuc3R5bGUucmVtb3ZlUHJvcGVydHkoIm92ZXJmbG93Iik7CisgICAgICAgIGRvY3VtZW50LmJv
ZHkuc3R5bGUuaGVpZ2h0ID0gIjIwMCUiOworICAgICAgICB2YXIgcmVzdWx0ID0gKGlubmVyV2lk
dGggPT09IGRvY3VtZW50LmRvY3VtZW50RWxlbWVudC5vZmZzZXRXaWR0aCkKKyAgICAgICAgICAg
ID8gIkZBSUw6IFNjcm9sbGJhciBkaWQgbm90IGFwcGVhciBhZnRlciByZXNldHRpbmcgJ292ZXJm
bG93JyIKKyAgICAgICAgICAgIDogIlBBU1MiOworCisgICAgICAgIGlmICh3aW5kb3cubGF5b3V0
VGVzdENvbnRyb2xsZXIpIHsKKyAgICAgICAgICAgIGxheW91dFRlc3RDb250cm9sbGVyLnNldFNj
cm9sbGJhclBvbGljeSgndmVydGljYWwnLCAnb2ZmJyk7CisgICAgICAgICAgICBsYXlvdXRUZXN0
Q29udHJvbGxlci5zZXRTY3JvbGxiYXJQb2xpY3koJ2hvcml6b250YWwnLCAnb2ZmJyk7CisKKyAg
ICAgICAgICAgIHJlc3VsdCArPSAoaW5uZXJXaWR0aCA9PT0gZG9jdW1lbnQuZG9jdW1lbnRFbGVt
ZW50Lm9mZnNldFdpZHRoKQorICAgICAgICAgICAgICAgID8gIlxuUEFTUyIKKyAgICAgICAgICAg
ICAgICA6ICJcbkZBSUw6IFNjcm9sbGJhciBkaWQgYXBwZWFyIGFmdGVyIHR1cm5pbmcgaXQgb2Zm
IjsKKyAgICAgICAgfQorCisgICAgICAgIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJyZXN1bHQi
KS5pbm5lclRleHQgPSByZXN1bHQ7CisgICAgPC9zY3JpcHQ+Cis8L2JvZHk+CmRpZmYgLS1naXQg
YS9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9ndGsvU2tpcHBlZCBiL0xheW91dFRlc3RzL3BsYXRmb3Jt
L2d0ay9Ta2lwcGVkCmluZGV4IDM4YTQ4MDMuLjk4MjM1YWQgMTAwNjQ0Ci0tLSBhL0xheW91dFRl
c3RzL3BsYXRmb3JtL2d0ay9Ta2lwcGVkCisrKyBiL0xheW91dFRlc3RzL3BsYXRmb3JtL2d0ay9T
a2lwcGVkCkBAIC01ODkyLDMgKzU4OTIsNiBAQCBmYXN0L21lZGlhL21lZGlhLWZlYXR1cmUtd2d0
LXZpZXctbW9kZS5odG1sCiAjIE1lZGlhUGxheWVyUHJpdmF0ZUdTdHJlYW1lciBkb2Vzbid0IHJl
dHVybiB0byBORVRXT1JLX0lETEUgYW5kIGhlbmNlIGRvZXNuJ3QgZmlyZSBhIHN1c3BlbmQgZXZl
bnQKICMgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTM3MDM0CiBodHRw
L3Rlc3RzL21lZGlhL3ZpZGVvLXBsYXktc3VzcGVuZC5odG1sCisKKyMgTmVlZCB0byBhZGQgZnVu
Y3Rpb25hbGl0eSB0byBEdW1wUmVuZGVyVHJlZSB0byBoYW5kbGUgc2Nyb2xsYmFyIHBvbGljZSBj
aGFuZ2VzCitmYXN0L292ZXJmbG93L3Njcm9sbGJhci1yZXN0b3JlZC1hbmQtdGhlbi1sb2NrZWQu
aHRtbApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvcGxhdGZvcm0vbWFjL1NraXBwZWQgYi9MYXlv
dXRUZXN0cy9wbGF0Zm9ybS9tYWMvU2tpcHBlZAppbmRleCA3NjlmYWM0Li5mMTEyNjllIDEwMDY0
NAotLS0gYS9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9tYWMvU2tpcHBlZAorKysgYi9MYXlvdXRUZXN0
cy9wbGF0Zm9ybS9tYWMvU2tpcHBlZApAQCAtMTUxLDMgKzE1MSw2IEBAIGZhc3QvbWVkaWEvbWVk
aWEtZmVhdHVyZS13Z3Qtdmlldy1tb2RlLmh0bWwKICMgVGVzdCBpcyBmbGFreSBhbmQgdGh1cyBu
b3QgdXNlZnVsIHVudGlsIGZpeGVkLgogIyBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1
Zy5jZ2k/aWQ9MzY2NDIKIGZhc3QvcmVwbGFjZWQvYm9yZGVyLXJhZGl1cy1jbGlwLmh0bWwKKwor
IyBOZWVkIHRvIGFkZCBmdW5jdGlvbmFsaXR5IHRvIER1bXBSZW5kZXJUcmVlIHRvIGhhbmRsZSBz
Y3JvbGxiYXIgcG9saWNlIGNoYW5nZXMKK2Zhc3Qvb3ZlcmZsb3cvc2Nyb2xsYmFyLXJlc3RvcmVk
LWFuZC10aGVuLWxvY2tlZC5odG1sCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9wbGF0Zm9ybS93
aW4vU2tpcHBlZCBiL0xheW91dFRlc3RzL3BsYXRmb3JtL3dpbi9Ta2lwcGVkCmluZGV4IGU3YzRj
ZWYuLjU4ZjBjYTMgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL3BsYXRmb3JtL3dpbi9Ta2lwcGVk
CisrKyBiL0xheW91dFRlc3RzL3BsYXRmb3JtL3dpbi9Ta2lwcGVkCkBAIC04MjIsMyArODIyLDYg
QEAgZmFzdC9tZWRpYS9tZWRpYS1mZWF0dXJlLXdndC12aWV3LW1vZGUuaHRtbAogCiAjIE5lZWQg
ZXhwZWN0YXRpb25zLiBTZWUgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lk
PTM2NDYxCiBmYXN0L3JlcGFpbnQvb3ZlcmZsb3ctc2Nyb2xsLWJvZHktYXBwZWFyLmh0bWwKKwor
IyBOZWVkIHRvIGFkZCBmdW5jdGlvbmFsaXR5IHRvIER1bXBSZW5kZXJUcmVlIHRvIGhhbmRsZSBz
Y3JvbGxiYXIgcG9saWNlIGNoYW5nZXMKK2Zhc3Qvb3ZlcmZsb3cvc2Nyb2xsYmFyLXJlc3RvcmVk
LWFuZC10aGVuLWxvY2tlZC5odG1sCmRpZmYgLS1naXQgYS9XZWJDb3JlL0NoYW5nZUxvZyBiL1dl
YkNvcmUvQ2hhbmdlTG9nCmluZGV4IDQ4ZDcwNTUuLmM0NGNiNWYgMTAwNjQ0Ci0tLSBhL1dlYkNv
cmUvQ2hhbmdlTG9nCisrKyBiL1dlYkNvcmUvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMzggQEAKKzIw
MTAtMDQtMDEgIEFudG9uaW8gR29tZXMgIDx0b25pa2l0b29Ad2Via2l0Lm9yZz4KKworICAgICAg
ICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBbUXRdIFJFR1JFU1NJT046
KHI1MDY2NSkgUVdlYkZyYW1lOjpzZXRTY3JvbGxCYXJQb2xpY3koUXQ6OlZlcnRpY2FsLFF0OjpT
Y3JvbGxCYXJBbHdheXNPZmYpIGhhcyBubyBlZmZlY3QuCisgICAgICAgIGh0dHBzOi8vYnVncy53
ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yOTQzMQorCisgICAgICAgIFRlc3Q6IGZhc3Qvb3Zl
cmZsb3cvc2Nyb2xsYmFyLXJlc3RvcmVkLWFuZC10aGVuLWxvY2tlZC5odG1sCisKKyAgICAgICAg
UGF0Y2ggaW50cm9kdWNlcyBhIGxvY2sgc2Nyb2xsYmFycyBjb25jZXB0IHRvIFNjcm9sbFZpZXcs
IGFzIGluIFdlYkR5bmFtaWNTY3JvbGxCYXJzVmlldy5tbS9oCisgICAgICAgIG9uIFdlYktpdC9t
YWMuIEl0IGlzIG5lZWRlZCBiZWNhdXNlIGluIFF0V2ViS2l0LCB3ZSBoYXZlIEFwaSBmb3Igc2V0
dGluZyBib3RoIHZlcnRpY2FsIGFuZAorICAgICAgICBob3Jpem9udGFsIHNjcm9sbGJhcnMgb24v
b2ZmL2F1dG8uIFdoZW4gaXQgaXMgc2V0IHRvIG9mZiwgZm9yIGV4YW1wbGUsIGl0IHNob3VsZCBy
ZW1haW4KKyAgICAgICAgYXMgc3VjaCwgdW5sZXNzIHVuc2V0LgorCisgICAgICAgIEZvciB0aGUg
bG9ja2luZyBjb25jZXB0LCBvcHRpb25hbCAnbG9jaycgcGFyYW1ldGVycyB3ZXJlIGFkZGVkIHRv
IHNldFNjcm9sbGJhck1vZGVzLAorICAgICAgICBzZXRIb3Jpem9udGFsU2Nyb2xsYmFyTW9kZSBh
bmQgc2V0VmVydGljYWxTY3JvbGxiYXJNb2RlIG1ldGhvZHMgb2YgU2Nyb2xsVmlldy4gQXMgdGhl
c2UKKyAgICAgICAgYXJlIGFsbCBvcHRpb25hbCwgYW55IHByZXZpb3VzIGNvZGUgY2FsbGluZyB0
aGVtIGRvIG5vdCBuZWVkIG1vZGlmaWNhdGlvbi4KKworICAgICAgICBUd28gb3B0aW9uYWwgcGFy
YW1ldGVycyB3ZXJlIGFsc28gYWRkZWQgdG8gRnJhbWUncyBjcmVhdGVWaWV3IG1ldGhvZCwgZm9y
IGhvcml6b250YWwgYW5kIHZlcnRpY2FsCisgICAgICAgIGxvY2sgc3RhdGUgcGVyc2lzdGVuY2Ug
Y3Jvc3MgcGFnZSBsb2Fkcy4KKworICAgICAgICAqIHBhZ2UvRnJhbWUuY3BwOgorICAgICAgICAo
V2ViQ29yZTo6RnJhbWU6OmNyZWF0ZVZpZXcpOgorICAgICAgICAqIHBsYXRmb3JtL1Njcm9sbFZp
ZXcuY3BwOgorICAgICAgICAoV2ViQ29yZTo6U2Nyb2xsVmlldzo6U2Nyb2xsVmlldyk6CisgICAg
ICAgIChXZWJDb3JlOjpTY3JvbGxWaWV3OjpzZXRTY3JvbGxiYXJNb2Rlcyk6CisgICAgICAgIChX
ZWJDb3JlOjpTY3JvbGxWaWV3OjpzZXRIb3Jpem9udGFsU2Nyb2xsYmFyTW9kZSk6CisgICAgICAg
IChXZWJDb3JlOjpTY3JvbGxWaWV3OjpzZXRWZXJ0aWNhbFNjcm9sbGJhck1vZGUpOgorICAgICAg
ICAqIHBsYXRmb3JtL1Njcm9sbFZpZXcuaDoKKyAgICAgICAgKFdlYkNvcmU6OlNjcm9sbFZpZXc6
OnNldEhvcml6b250YWxTY3JvbGxiYXJMb2NrKToKKyAgICAgICAgKFdlYkNvcmU6OlNjcm9sbFZp
ZXc6OmlzSG9yaXpvbnRhbFNjcm9sbGJhckxvY2tlZCk6CisgICAgICAgIChXZWJDb3JlOjpTY3Jv
bGxWaWV3OjpzZXRWZXJ0aWNhbFNjcm9sbGJhckxvY2spOgorICAgICAgICAoV2ViQ29yZTo6U2Ny
b2xsVmlldzo6aXNWZXJ0aWNhbFNjcm9sbGJhckxvY2tlZCk6CisgICAgICAgIChXZWJDb3JlOjpT
Y3JvbGxWaWV3OjpzZXRTY3JvbGxpbmdNb2Rlc0xvY2tlZCk6CisKIDIwMTAtMDQtMDcgIERhd2l0
IEFsZW1heWVodSAgPGFkYXdpdEBrZGUub3JnPgogCiAgICAgICAgIFJldmlld2VkIGJ5IFNpbW9u
IEhhdXNtYW5uLgpkaWZmIC0tZ2l0IGEvV2ViQ29yZS9XZWJDb3JlLmJhc2UuZXhwIGIvV2ViQ29y
ZS9XZWJDb3JlLmJhc2UuZXhwCmluZGV4IDExZmRhZjMuLmEyNjRjNDUgMTAwNjQ0Ci0tLSBhL1dl
YkNvcmUvV2ViQ29yZS5iYXNlLmV4cAorKysgYi9XZWJDb3JlL1dlYkNvcmUuYmFzZS5leHAKQEAg
LTEzNSw3ICsxMzUsNiBAQCBfX1o0Y29yZVA3RE9NTm9kZQogX19aNGNvcmVQOERPTVJhbmdlCiBf
X1pOM0pTQzhCaW5kaW5nczhJbnN0YW5jZTE2bmV3UnVudGltZU9iamVjdEVQTlNfOUV4ZWNTdGF0
ZUUKIF9fWk43V2ViQ29yZTEwTW91c2VFdmVudEMxRVJLTlNfMTJBdG9taWNTdHJpbmdFYmJOM1dU
RjEwUGFzc1JlZlB0cklOU185RE9NV2luZG93RUVFaWlpaWliYmJidE5TNV9JTlNfMTFFdmVudFRh
cmdldEVFRU5TNV9JTlNfOUNsaXBib2FyZEVFRWIKLV9fWk43V2ViQ29yZTEwU2Nyb2xsVmlldzE3
c2V0U2Nyb2xsYmFyTW9kZXNFTlNfMTNTY3JvbGxiYXJNb2RlRVMxXwogX19aTjdXZWJDb3JlMTBT
Y3JvbGxWaWV3MjBzZXRDYW5IYXZlU2Nyb2xsYmFyc0ViCiBfX1pON1dlYkNvcmUxMFN0cmluZ0lt
cGwxMXJldmVyc2VGaW5kRVBTMF9pYgogX19aTjdXZWJDb3JlMTBTdHJpbmdJbXBsMTljcmVhdGVV
bmluaXRpYWxpemVkRWpSUHQKQEAgLTUzMCw3ICs1MjksNiBAQCBfX1pON1dlYkNvcmU0Y29yZUVQ
MjBOU1VSTFByb3RlY3Rpb25TcGFjZQogX19aTjdXZWJDb3JlNUNhY2hlMTFzZXREaXNhYmxlZEVi
CiBfX1pON1dlYkNvcmU1Q2FjaGUxM2dldFN0YXRpc3RpY3NFdgogX19aTjdXZWJDb3JlNUNhY2hl
MTNzZXRDYXBhY2l0aWVzRWpqagotX19aTjdXZWJDb3JlNUZyYW1lMTBjcmVhdGVWaWV3RVJLTlNf
N0ludFNpemVFUktOU181Q29sb3JFYlMzX2JOU18xM1Njcm9sbGJhck1vZGVFUzdfCiBfX1pON1dl
YkNvcmU1RnJhbWUxMGZpbmRTdHJpbmdFUktOU182U3RyaW5nRWJiYmIKIF9fWk43V2ViQ29yZTVG
cmFtZTExc2hvdWxkQ2xvc2VFdgogX19aTjdXZWJDb3JlNUZyYW1lMTNyZWFwcGx5U3R5bGVzRXYK
ZGlmZiAtLWdpdCBhL1dlYkNvcmUvcGFnZS9GcmFtZS5jcHAgYi9XZWJDb3JlL3BhZ2UvRnJhbWUu
Y3BwCmluZGV4IDA0ZDdhOWUuLmU4YzBmNGEgMTAwNjQ0Ci0tLSBhL1dlYkNvcmUvcGFnZS9GcmFt
ZS5jcHAKKysrIGIvV2ViQ29yZS9wYWdlL0ZyYW1lLmNwcApAQCAtMTc3NSw3ICsxNzc1LDggQEAg
RG9jdW1lbnQqIEZyYW1lOjpkb2N1bWVudEF0UG9pbnQoY29uc3QgSW50UG9pbnQmIHBvaW50KQog
dm9pZCBGcmFtZTo6Y3JlYXRlVmlldyhjb25zdCBJbnRTaXplJiB2aWV3cG9ydFNpemUsCiAgICAg
ICAgICAgICAgICAgICAgICAgIGNvbnN0IENvbG9yJiBiYWNrZ3JvdW5kQ29sb3IsIGJvb2wgdHJh
bnNwYXJlbnQsCiAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IEludFNpemUmIGZpeGVkTGF5
b3V0U2l6ZSwgYm9vbCB1c2VGaXhlZExheW91dCwKLSAgICAgICAgICAgICAgICAgICAgICAgU2Ny
b2xsYmFyTW9kZSBob3Jpem9udGFsU2Nyb2xsYmFyTW9kZSwgU2Nyb2xsYmFyTW9kZSB2ZXJ0aWNh
bFNjcm9sbGJhck1vZGUpCisgICAgICAgICAgICAgICAgICAgICAgIFNjcm9sbGJhck1vZGUgaG9y
aXpvbnRhbFNjcm9sbGJhck1vZGUsIGJvb2wgaG9yaXpvbnRhbExvY2ssCisgICAgICAgICAgICAg
ICAgICAgICAgIFNjcm9sbGJhck1vZGUgdmVydGljYWxTY3JvbGxiYXJNb2RlLCBib29sIHZlcnRp
Y2FsTG9jaykKIHsKICAgICBBU1NFUlQodGhpcyk7CiAgICAgQVNTRVJUKG1fcGFnZSk7CkBAIC0x
Nzk1LDcgKzE3OTYsNyBAQCB2b2lkIEZyYW1lOjpjcmVhdGVWaWV3KGNvbnN0IEludFNpemUmIHZp
ZXdwb3J0U2l6ZSwKICAgICB9IGVsc2UKICAgICAgICAgZnJhbWVWaWV3ID0gRnJhbWVWaWV3Ojpj
cmVhdGUodGhpcyk7CiAKLSAgICBmcmFtZVZpZXctPnNldFNjcm9sbGJhck1vZGVzKGhvcml6b250
YWxTY3JvbGxiYXJNb2RlLCB2ZXJ0aWNhbFNjcm9sbGJhck1vZGUpOworICAgIGZyYW1lVmlldy0+
c2V0U2Nyb2xsYmFyTW9kZXMoaG9yaXpvbnRhbFNjcm9sbGJhck1vZGUsIHZlcnRpY2FsU2Nyb2xs
YmFyTW9kZSwgaG9yaXpvbnRhbExvY2ssIHZlcnRpY2FsTG9jayk7CiAKICAgICBzZXRWaWV3KGZy
YW1lVmlldyk7CiAKZGlmZiAtLWdpdCBhL1dlYkNvcmUvcGFnZS9GcmFtZS5oIGIvV2ViQ29yZS9w
YWdlL0ZyYW1lLmgKaW5kZXggYjYzMGJlZi4uNGE3Y2RhZiAxMDA2NDQKLS0tIGEvV2ViQ29yZS9w
YWdlL0ZyYW1lLmgKKysrIGIvV2ViQ29yZS9wYWdlL0ZyYW1lLmgKQEAgLTExOSw3ICsxMTksOCBA
QCBuYW1lc3BhY2UgV2ViQ29yZSB7CiAgICAgICAgIHZvaWQgc2V0RXhjbHVkZUZyb21UZXh0U2Vh
cmNoKGJvb2wpOwogCiAgICAgICAgIHZvaWQgY3JlYXRlVmlldyhjb25zdCBJbnRTaXplJiwgY29u
c3QgQ29sb3ImLCBib29sLCBjb25zdCBJbnRTaXplICYsIGJvb2wsCi0gICAgICAgICAgICAgICAg
ICAgICAgICBTY3JvbGxiYXJNb2RlID0gU2Nyb2xsYmFyQXV0bywgU2Nyb2xsYmFyTW9kZSA9IFNj
cm9sbGJhckF1dG8pOworICAgICAgICAgICAgICAgICAgICAgICAgU2Nyb2xsYmFyTW9kZSA9IFNj
cm9sbGJhckF1dG8sIGJvb2wgaG9yaXpvbnRhbExvY2sgPSBmYWxzZSwKKyAgICAgICAgICAgICAg
ICAgICAgICAgIFNjcm9sbGJhck1vZGUgPSBTY3JvbGxiYXJBdXRvLCBib29sIHZlcnRpY2FsTG9j
ayA9IGZhbHNlKTsKIAogICAgICAgICB2b2lkIGluamVjdFVzZXJTY3JpcHRzKFVzZXJTY3JpcHRJ
bmplY3Rpb25UaW1lKTsKICAgICAgICAgCmRpZmYgLS1naXQgYS9XZWJDb3JlL3BsYXRmb3JtL1Nj
cm9sbFZpZXcuY3BwIGIvV2ViQ29yZS9wbGF0Zm9ybS9TY3JvbGxWaWV3LmNwcAppbmRleCA0ODcy
MDA3Li4xYWI4NGVkIDEwMDY0NAotLS0gYS9XZWJDb3JlL3BsYXRmb3JtL1Njcm9sbFZpZXcuY3Bw
CisrKyBiL1dlYkNvcmUvcGxhdGZvcm0vU2Nyb2xsVmlldy5jcHAKQEAgLTQyLDYgKzQyLDggQEAg
bmFtZXNwYWNlIFdlYkNvcmUgewogU2Nyb2xsVmlldzo6U2Nyb2xsVmlldygpCiAgICAgOiBtX2hv
cml6b250YWxTY3JvbGxiYXJNb2RlKFNjcm9sbGJhckF1dG8pCiAgICAgLCBtX3ZlcnRpY2FsU2Ny
b2xsYmFyTW9kZShTY3JvbGxiYXJBdXRvKQorICAgICwgbV9ob3Jpem9udGFsU2Nyb2xsYmFyTG9j
ayhmYWxzZSkKKyAgICAsIG1fdmVydGljYWxTY3JvbGxiYXJMb2NrKGZhbHNlKQogICAgICwgbV9w
cm9oaWJpdHNTY3JvbGxpbmcoZmFsc2UpCiAgICAgLCBtX2NhbkJsaXRPblNjcm9sbCh0cnVlKQog
ICAgICwgbV9zY3JvbGxiYXJzQXZvaWRpbmdSZXNpemVyKDApCkBAIC0xMTUsMTIgKzExNywzMCBA
QCBQYXNzUmVmUHRyPFNjcm9sbGJhcj4gU2Nyb2xsVmlldzo6Y3JlYXRlU2Nyb2xsYmFyKFNjcm9s
bGJhck9yaWVudGF0aW9uIG9yaWVudGF0aQogICAgIHJldHVybiBTY3JvbGxiYXI6OmNyZWF0ZU5h
dGl2ZVNjcm9sbGJhcih0aGlzLCBvcmllbnRhdGlvbiwgUmVndWxhclNjcm9sbGJhcik7CiB9CiAK
LXZvaWQgU2Nyb2xsVmlldzo6c2V0U2Nyb2xsYmFyTW9kZXMoU2Nyb2xsYmFyTW9kZSBob3Jpem9u
dGFsTW9kZSwgU2Nyb2xsYmFyTW9kZSB2ZXJ0aWNhbE1vZGUpCit2b2lkIFNjcm9sbFZpZXc6OnNl
dFNjcm9sbGJhck1vZGVzKFNjcm9sbGJhck1vZGUgaG9yaXpvbnRhbE1vZGUsIFNjcm9sbGJhck1v
ZGUgdmVydGljYWxNb2RlLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBib29s
IGhvcml6b250YWxMb2NrLCBib29sIHZlcnRpY2FsTG9jaykKIHsKLSAgICBpZiAoaG9yaXpvbnRh
bE1vZGUgPT0gaG9yaXpvbnRhbFNjcm9sbGJhck1vZGUoKSAmJiB2ZXJ0aWNhbE1vZGUgPT0gdmVy
dGljYWxTY3JvbGxiYXJNb2RlKCkpCisgICAgYm9vbCBuZWVkc1VwZGF0ZSA9IGZhbHNlOworCisg
ICAgaWYgKGhvcml6b250YWxNb2RlICE9IGhvcml6b250YWxTY3JvbGxiYXJNb2RlKCkgJiYgIW1f
aG9yaXpvbnRhbFNjcm9sbGJhckxvY2spIHsKKyAgICAgICAgbV9ob3Jpem9udGFsU2Nyb2xsYmFy
TW9kZSA9IGhvcml6b250YWxNb2RlOworICAgICAgICBuZWVkc1VwZGF0ZSA9IHRydWU7CisgICAg
fQorCisgICAgaWYgKHZlcnRpY2FsTW9kZSAhPSB2ZXJ0aWNhbFNjcm9sbGJhck1vZGUoKSAmJiAh
bV92ZXJ0aWNhbFNjcm9sbGJhckxvY2spIHsKKyAgICAgICAgbV92ZXJ0aWNhbFNjcm9sbGJhck1v
ZGUgPSB2ZXJ0aWNhbE1vZGU7CisgICAgICAgIG5lZWRzVXBkYXRlID0gdHJ1ZTsKKyAgICB9CisK
KyAgICBpZiAoaG9yaXpvbnRhbExvY2spCisgICAgICAgIHNldEhvcml6b250YWxTY3JvbGxiYXJM
b2NrKCk7CisKKyAgICBpZiAodmVydGljYWxMb2NrKQorICAgICAgICBzZXRWZXJ0aWNhbFNjcm9s
bGJhckxvY2soKTsKKworICAgIGlmICghbmVlZHNVcGRhdGUpCiAgICAgICAgIHJldHVybjsKLSAg
ICBtX2hvcml6b250YWxTY3JvbGxiYXJNb2RlID0gaG9yaXpvbnRhbE1vZGU7Ci0gICAgbV92ZXJ0
aWNhbFNjcm9sbGJhck1vZGUgPSB2ZXJ0aWNhbE1vZGU7CisKICAgICBpZiAocGxhdGZvcm1XaWRn
ZXQoKSkKICAgICAgICAgcGxhdGZvcm1TZXRTY3JvbGxiYXJNb2RlcygpOwogICAgIGVsc2UKZGlm
ZiAtLWdpdCBhL1dlYkNvcmUvcGxhdGZvcm0vU2Nyb2xsVmlldy5oIGIvV2ViQ29yZS9wbGF0Zm9y
bS9TY3JvbGxWaWV3LmgKaW5kZXggNzVkYzJiNC4uZmM5NjBmMCAxMDA2NDQKLS0tIGEvV2ViQ29y
ZS9wbGF0Zm9ybS9TY3JvbGxWaWV3LmgKKysrIGIvV2ViQ29yZS9wbGF0Zm9ybS9TY3JvbGxWaWV3
LmgKQEAgLTgzLDEyICs4MywyMCBAQCBwdWJsaWM6CiAgICAgLy8gQXV0byBtZWFucyBzaG93IGEg
c2Nyb2xsYmFyIG9ubHkgd2hlbiBvbmUgaXMgbmVlZGVkLgogICAgIC8vIE5vdGUgdGhhdCBmb3Ig
cGxhdGZvcm1zIHdpdGggbmF0aXZlIHdpZGdldHMsIHRoZXNlIG1vZGVzIGFyZSBjb25zaWRlcmVk
IGFkdmlzb3J5LiAgSW4gb3RoZXIgd29yZHMgdGhlIHVuZGVybHlpbmcgbmF0aXZlCiAgICAgLy8g
d2lkZ2V0IG1heSBjaG9vc2Ugbm90IHRvIGhvbm9yIHRoZSByZXF1ZXN0ZWQgbW9kZXMuCi0gICAg
dm9pZCBzZXRTY3JvbGxiYXJNb2RlcyhTY3JvbGxiYXJNb2RlIGhvcml6b250YWxNb2RlLCBTY3Jv
bGxiYXJNb2RlIHZlcnRpY2FsTW9kZSk7Ci0gICAgdm9pZCBzZXRIb3Jpem9udGFsU2Nyb2xsYmFy
TW9kZShTY3JvbGxiYXJNb2RlIG1vZGUpIHsgc2V0U2Nyb2xsYmFyTW9kZXMobW9kZSwgdmVydGlj
YWxTY3JvbGxiYXJNb2RlKCkpOyB9Ci0gICAgdm9pZCBzZXRWZXJ0aWNhbFNjcm9sbGJhck1vZGUo
U2Nyb2xsYmFyTW9kZSBtb2RlKSB7IHNldFNjcm9sbGJhck1vZGVzKGhvcml6b250YWxTY3JvbGxi
YXJNb2RlKCksIG1vZGUpOyB9CisgICAgdm9pZCBzZXRTY3JvbGxiYXJNb2RlcyhTY3JvbGxiYXJN
b2RlIGhvcml6b250YWxNb2RlLCBTY3JvbGxiYXJNb2RlIHZlcnRpY2FsTW9kZSwgYm9vbCBob3Jp
em9udGFsTG9jayA9IGZhbHNlLCBib29sIHZlcnRpY2FsTG9jayA9IGZhbHNlKTsKKyAgICB2b2lk
IHNldEhvcml6b250YWxTY3JvbGxiYXJNb2RlKFNjcm9sbGJhck1vZGUgbW9kZSwgYm9vbCBsb2Nr
ID0gZmFsc2UpIHsgc2V0U2Nyb2xsYmFyTW9kZXMobW9kZSwgdmVydGljYWxTY3JvbGxiYXJNb2Rl
KCksIGxvY2ssIHZlcnRpY2FsU2Nyb2xsYmFyTG9jaygpKTsgfQorICAgIHZvaWQgc2V0VmVydGlj
YWxTY3JvbGxiYXJNb2RlKFNjcm9sbGJhck1vZGUgbW9kZSwgYm9vbCBsb2NrID0gZmFsc2UpIHsg
c2V0U2Nyb2xsYmFyTW9kZXMoaG9yaXpvbnRhbFNjcm9sbGJhck1vZGUoKSwgbW9kZSwgaG9yaXpv
bnRhbFNjcm9sbGJhckxvY2soKSwgbG9jayk7IH07CiAgICAgdm9pZCBzY3JvbGxiYXJNb2RlcyhT
Y3JvbGxiYXJNb2RlJiBob3Jpem9udGFsTW9kZSwgU2Nyb2xsYmFyTW9kZSYgdmVydGljYWxNb2Rl
KSBjb25zdDsKICAgICBTY3JvbGxiYXJNb2RlIGhvcml6b250YWxTY3JvbGxiYXJNb2RlKCkgY29u
c3QgeyBTY3JvbGxiYXJNb2RlIGhvcml6b250YWwsIHZlcnRpY2FsOyBzY3JvbGxiYXJNb2Rlcyho
b3Jpem9udGFsLCB2ZXJ0aWNhbCk7IHJldHVybiBob3Jpem9udGFsOyB9CiAgICAgU2Nyb2xsYmFy
TW9kZSB2ZXJ0aWNhbFNjcm9sbGJhck1vZGUoKSBjb25zdCB7IFNjcm9sbGJhck1vZGUgaG9yaXpv
bnRhbCwgdmVydGljYWw7IHNjcm9sbGJhck1vZGVzKGhvcml6b250YWwsIHZlcnRpY2FsKTsgcmV0
dXJuIHZlcnRpY2FsOyB9CisKKyAgICB2b2lkIHNldEhvcml6b250YWxTY3JvbGxiYXJMb2NrKGJv
b2wgbG9jayA9IHRydWUpIHsgbV9ob3Jpem9udGFsU2Nyb2xsYmFyTG9jayA9IGxvY2s7IH0KKyAg
ICBib29sIGhvcml6b250YWxTY3JvbGxiYXJMb2NrKCkgY29uc3QgeyByZXR1cm4gbV9ob3Jpem9u
dGFsU2Nyb2xsYmFyTG9jazsgfQorICAgIHZvaWQgc2V0VmVydGljYWxTY3JvbGxiYXJMb2NrKGJv
b2wgbG9jayA9IHRydWUpIHsgbV92ZXJ0aWNhbFNjcm9sbGJhckxvY2sgPSBsb2NrOyB9CisgICAg
Ym9vbCB2ZXJ0aWNhbFNjcm9sbGJhckxvY2soKSBjb25zdCB7IHJldHVybiBtX3ZlcnRpY2FsU2Ny
b2xsYmFyTG9jazsgfQorCisgICAgdm9pZCBzZXRTY3JvbGxpbmdNb2Rlc0xvY2soYm9vbCBsb2Nr
ID0gdHJ1ZSkgeyBtX2hvcml6b250YWxTY3JvbGxiYXJMb2NrID0gbV92ZXJ0aWNhbFNjcm9sbGJh
ckxvY2sgPSBsb2NrOyB9CisKICAgICB2aXJ0dWFsIHZvaWQgc2V0Q2FuSGF2ZVNjcm9sbGJhcnMo
Ym9vbCk7CiAgICAgYm9vbCBjYW5IYXZlU2Nyb2xsYmFycygpIGNvbnN0IHsgcmV0dXJuIGhvcml6
b250YWxTY3JvbGxiYXJNb2RlKCkgIT0gU2Nyb2xsYmFyQWx3YXlzT2ZmIHx8IHZlcnRpY2FsU2Ny
b2xsYmFyTW9kZSgpICE9IFNjcm9sbGJhckFsd2F5c09mZjsgfQogCkBAIC0yNTcsNiArMjY1LDEw
IEBAIHByaXZhdGU6CiAgICAgUmVmUHRyPFNjcm9sbGJhcj4gbV92ZXJ0aWNhbFNjcm9sbGJhcjsK
ICAgICBTY3JvbGxiYXJNb2RlIG1faG9yaXpvbnRhbFNjcm9sbGJhck1vZGU7CiAgICAgU2Nyb2xs
YmFyTW9kZSBtX3ZlcnRpY2FsU2Nyb2xsYmFyTW9kZTsKKworICAgIGJvb2wgbV9ob3Jpem9udGFs
U2Nyb2xsYmFyTG9jazsKKyAgICBib29sIG1fdmVydGljYWxTY3JvbGxiYXJMb2NrOworCiAgICAg
Ym9vbCBtX3Byb2hpYml0c1Njcm9sbGluZzsKIAogICAgIEhhc2hTZXQ8UmVmUHRyPFdpZGdldD4g
PiBtX2NoaWxkcmVuOwpkaWZmIC0tZ2l0IGEvV2ViQ29yZS9wbGF0Zm9ybS9ndGsvU2Nyb2xsVmll
d0d0ay5jcHAgYi9XZWJDb3JlL3BsYXRmb3JtL2d0ay9TY3JvbGxWaWV3R3RrLmNwcAppbmRleCBl
ODY4MjUwLi4zZGYzY2I1IDEwMDY0NAotLS0gYS9XZWJDb3JlL3BsYXRmb3JtL2d0ay9TY3JvbGxW
aWV3R3RrLmNwcAorKysgYi9XZWJDb3JlL3BsYXRmb3JtL2d0ay9TY3JvbGxWaWV3R3RrLmNwcApA
QCAtMTY4LDcgKzE2OCw3IEBAIEludFJlY3QgU2Nyb2xsVmlldzo6dmlzaWJsZUNvbnRlbnRSZWN0
KGJvb2wgaW5jbHVkZVNjcm9sbGJhcnMpIGNvbnN0CiAgICAgICAgICAgICAgICAgICAgICAgICAg
ICBtZWFzdXJlZFdpZGdldC0+YWxsb2NhdGlvbi5oZWlnaHQpKTsKIH0KIAotdm9pZCBTY3JvbGxW
aWV3OjpzZXRTY3JvbGxiYXJNb2RlcyhTY3JvbGxiYXJNb2RlIGhvcml6b250YWxNb2RlLCBTY3Jv
bGxiYXJNb2RlIHZlcnRpY2FsTW9kZSkKK3ZvaWQgU2Nyb2xsVmlldzo6c2V0U2Nyb2xsYmFyTW9k
ZXMoU2Nyb2xsYmFyTW9kZSBob3Jpem9udGFsTW9kZSwgU2Nyb2xsYmFyTW9kZSB2ZXJ0aWNhbE1v
ZGUsIGJvb2wsIGJvb2wpCiB7CiAgICAgaWYgKGhvcml6b250YWxNb2RlID09IG1faG9yaXpvbnRh
bFNjcm9sbGJhck1vZGUgJiYgdmVydGljYWxNb2RlID09IG1fdmVydGljYWxTY3JvbGxiYXJNb2Rl
KQogICAgICAgICByZXR1cm47CmRpZmYgLS1naXQgYS9XZWJLaXQvcXQvQXBpL3F3ZWJmcmFtZS5j
cHAgYi9XZWJLaXQvcXQvQXBpL3F3ZWJmcmFtZS5jcHAKaW5kZXggM2JiY2ZlMi4uZTVjMjc2OCAx
MDA2NDQKLS0tIGEvV2ViS2l0L3F0L0FwaS9xd2ViZnJhbWUuY3BwCisrKyBiL1dlYktpdC9xdC9B
cGkvcXdlYmZyYW1lLmNwcApAQCAtMTA1MCwxMyArMTA1MCwxMyBAQCB2b2lkIFFXZWJGcmFtZTo6
c2V0U2Nyb2xsQmFyUG9saWN5KFF0OjpPcmllbnRhdGlvbiBvcmllbnRhdGlvbiwgUXQ6OlNjcm9s
bEJhclBvbAogICAgIGlmIChvcmllbnRhdGlvbiA9PSBRdDo6SG9yaXpvbnRhbCkgewogICAgICAg
ICBkLT5ob3Jpem9udGFsU2Nyb2xsQmFyUG9saWN5ID0gcG9saWN5OwogICAgICAgICBpZiAoZC0+
ZnJhbWUtPnZpZXcoKSkgewotICAgICAgICAgICAgZC0+ZnJhbWUtPnZpZXcoKS0+c2V0SG9yaXpv
bnRhbFNjcm9sbGJhck1vZGUoKFNjcm9sbGJhck1vZGUpcG9saWN5KTsKKyAgICAgICAgICAgIGQt
PmZyYW1lLT52aWV3KCktPnNldEhvcml6b250YWxTY3JvbGxiYXJNb2RlKChTY3JvbGxiYXJNb2Rl
KXBvbGljeSwgcG9saWN5ICE9IFF0OjpTY3JvbGxCYXJBc05lZWRlZCAvKiBsb2NrICovKTsKICAg
ICAgICAgICAgIGQtPmZyYW1lLT52aWV3KCktPnVwZGF0ZUNhbkhhdmVTY3JvbGxiYXJzKCk7CiAg
ICAgICAgIH0KICAgICB9IGVsc2UgewogICAgICAgICBkLT52ZXJ0aWNhbFNjcm9sbEJhclBvbGlj
eSA9IHBvbGljeTsKICAgICAgICAgaWYgKGQtPmZyYW1lLT52aWV3KCkpIHsKLSAgICAgICAgICAg
IGQtPmZyYW1lLT52aWV3KCktPnNldFZlcnRpY2FsU2Nyb2xsYmFyTW9kZSgoU2Nyb2xsYmFyTW9k
ZSlwb2xpY3kpOworICAgICAgICAgICAgZC0+ZnJhbWUtPnZpZXcoKS0+c2V0VmVydGljYWxTY3Jv
bGxiYXJNb2RlKChTY3JvbGxiYXJNb2RlKXBvbGljeSwgcG9saWN5ICE9IFF0OjpTY3JvbGxCYXJB
c05lZWRlZCAvKiBsb2NrICovKTsKICAgICAgICAgICAgIGQtPmZyYW1lLT52aWV3KCktPnVwZGF0
ZUNhbkhhdmVTY3JvbGxiYXJzKCk7CiAgICAgICAgIH0KICAgICB9CmRpZmYgLS1naXQgYS9XZWJL
aXQvcXQvQ2hhbmdlTG9nIGIvV2ViS2l0L3F0L0NoYW5nZUxvZwppbmRleCA3NDM4NjVjLi5jNzZk
ZDhlIDEwMDY0NAotLS0gYS9XZWJLaXQvcXQvQ2hhbmdlTG9nCisrKyBiL1dlYktpdC9xdC9DaGFu
Z2VMb2cKQEAgLTEsMyArMSwyMCBAQAorMjAxMC0wNC0wMSAgQW50b25pbyBHb21lcyAgPHRvbmlr
aXRvb0B3ZWJraXQub3JnPgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgor
CisgICAgICAgIFtRdF0gUkVHUkVTU0lPTjoocjUwNjY1KSBRV2ViRnJhbWU6OnNldFNjcm9sbEJh
clBvbGljeShRdDo6VmVydGljYWwsUXQ6OlNjcm9sbEJhckFsd2F5c09mZikgaGFzIG5vIGVmZmVj
dC4KKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTI5NDMx
CisKKyAgICAgICAgTWFrZSB1c2Ugb2YgdGhlIG5ldyBsb2NrIHBhcmFtZXRlciBvZiBzZXR7VmVy
dGljYWwsSG9yaXpvbnRhbH1TY3JvbGxiYXJNb2RlLgorCisgICAgICAgIEFsd2F5cyBhZGRlZCBh
IHF0IGF1dG8gdGVzdCBmb3Igc2V0IHNjcm9sbGJhciBwb2xpY3kgZmVhdHVyZS4KKworICAgICAg
ICAqIEFwaS9xd2ViZnJhbWUuY3BwOgorICAgICAgICAoUVdlYkZyYW1lOjpzZXRTY3JvbGxCYXJQ
b2xpY3kpOgorICAgICAgICAqIHRlc3RzL3F3ZWJmcmFtZS90c3RfcXdlYmZyYW1lLmNwcDoKKyAg
ICAgICAgKiBXZWJDb3JlU3VwcG9ydC9GcmFtZUxvYWRlckNsaWVudFF0LmNwcDoKKyAgICAgICAg
KEZyYW1lTG9hZGVyQ2xpZW50UXQ6OnRyYW5zaXRpb25Ub0NvbW1pdHRlZEZvck5ld1BhZ2UpOgor
CiAyMDEwLTA0LTA3ICBEYXdpdCBBbGVtYXllaHUgIDxhZGF3aXRAa2RlLm9yZz4KIAogICAgICAg
ICBSZXZpZXdlZCBieSBTaW1vbiBIYXVzbWFubi4KZGlmZiAtLWdpdCBhL1dlYktpdC9xdC9XZWJD
b3JlU3VwcG9ydC9GcmFtZUxvYWRlckNsaWVudFF0LmNwcCBiL1dlYktpdC9xdC9XZWJDb3JlU3Vw
cG9ydC9GcmFtZUxvYWRlckNsaWVudFF0LmNwcAppbmRleCBjZGU0YjlmLi41YjFkZDMwIDEwMDY0
NAotLS0gYS9XZWJLaXQvcXQvV2ViQ29yZVN1cHBvcnQvRnJhbWVMb2FkZXJDbGllbnRRdC5jcHAK
KysrIGIvV2ViS2l0L3F0L1dlYkNvcmVTdXBwb3J0L0ZyYW1lTG9hZGVyQ2xpZW50UXQuY3BwCkBA
IC0yMTUsMTIgKzIxNSwxNyBAQCB2b2lkIEZyYW1lTG9hZGVyQ2xpZW50UXQ6OnRyYW5zaXRpb25U
b0NvbW1pdHRlZEZvck5ld1BhZ2UoKQogICAgIFFXZWJQYWdlKiBwYWdlID0gbV93ZWJGcmFtZS0+
cGFnZSgpOwogICAgIGNvbnN0IFFTaXplIHByZWZlcnJlZExheW91dFNpemUgPSBwYWdlLT5wcmVm
ZXJyZWRDb250ZW50c1NpemUoKTsKIAorICAgIFNjcm9sbGJhck1vZGUgaFNjcm9sbGJhciA9IChT
Y3JvbGxiYXJNb2RlKSBtX3dlYkZyYW1lLT5zY3JvbGxCYXJQb2xpY3koUXQ6Okhvcml6b250YWwp
OworICAgIFNjcm9sbGJhck1vZGUgdlNjcm9sbGJhciA9IChTY3JvbGxiYXJNb2RlKSBtX3dlYkZy
YW1lLT5zY3JvbGxCYXJQb2xpY3koUXQ6OlZlcnRpY2FsKTsKKyAgICBib29sIGhMb2NrID0gaFNj
cm9sbGJhciAhPSBTY3JvbGxiYXJBdXRvOworICAgIGJvb2wgdkxvY2sgPSB2U2Nyb2xsYmFyICE9
IFNjcm9sbGJhckF1dG87CisKICAgICBtX2ZyYW1lLT5jcmVhdGVWaWV3KG1fd2ViRnJhbWUtPnBh
Z2UoKS0+dmlld3BvcnRTaXplKCksCiAgICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5k
Q29sb3IsICFiYWNrZ3JvdW5kQ29sb3IuYWxwaGEoKSwKICAgICAgICAgICAgICAgICAgICAgICAg
IHByZWZlcnJlZExheW91dFNpemUuaXNWYWxpZCgpID8gSW50U2l6ZShwcmVmZXJyZWRMYXlvdXRT
aXplKSA6IEludFNpemUoKSwKICAgICAgICAgICAgICAgICAgICAgICAgIHByZWZlcnJlZExheW91
dFNpemUuaXNWYWxpZCgpLAotICAgICAgICAgICAgICAgICAgICAgICAgKFNjcm9sbGJhck1vZGUp
bV93ZWJGcmFtZS0+c2Nyb2xsQmFyUG9saWN5KFF0OjpIb3Jpem9udGFsKSwKLSAgICAgICAgICAg
ICAgICAgICAgICAgIChTY3JvbGxiYXJNb2RlKW1fd2ViRnJhbWUtPnNjcm9sbEJhclBvbGljeShR
dDo6VmVydGljYWwpKTsKKyAgICAgICAgICAgICAgICAgICAgICAgIGhTY3JvbGxiYXIsIGhMb2Nr
LAorICAgICAgICAgICAgICAgICAgICAgICAgdlNjcm9sbGJhciwgdkxvY2spOwogfQogCiAKZGlm
ZiAtLWdpdCBhL1dlYktpdC9xdC90ZXN0cy9xd2ViZnJhbWUvdHN0X3F3ZWJmcmFtZS5jcHAgYi9X
ZWJLaXQvcXQvdGVzdHMvcXdlYmZyYW1lL3RzdF9xd2ViZnJhbWUuY3BwCmluZGV4IDM3ZjdiODgu
LmJiZjQ0N2EgMTAwNjQ0Ci0tLSBhL1dlYktpdC9xdC90ZXN0cy9xd2ViZnJhbWUvdHN0X3F3ZWJm
cmFtZS5jcHAKKysrIGIvV2ViS2l0L3F0L3Rlc3RzL3F3ZWJmcmFtZS90c3RfcXdlYmZyYW1lLmNw
cApAQCAtNTg1LDYgKzU4NSw3IEBAIHByaXZhdGUgc2xvdHM6CiAgICAgdm9pZCByZW5kZXIoKTsK
ICAgICB2b2lkIHNjcm9sbFBvc2l0aW9uKCk7CiAgICAgdm9pZCBzY3JvbGxUb0FuY2hvcigpOwor
ICAgIHZvaWQgc2Nyb2xsYmFyc09mZigpOwogICAgIHZvaWQgZXZhbHVhdGVXaWxsQ2F1c2VSZXBh
aW50KCk7CiAgICAgdm9pZCBxT2JqZWN0V3JhcHBlcldpdGhTYW1lSWRlbnRpdHkoKTsKICAgICB2
b2lkIGludHJvc3BlY3RRdE1ldGhvZHNfZGF0YSgpOwpAQCAtMjc5Niw2ICsyNzk3LDM4IEBAIHZv
aWQgdHN0X1FXZWJGcmFtZTo6c2Nyb2xsVG9BbmNob3IoKQogICAgIFFWRVJJRlkoZnJhbWUtPnNj
cm9sbFBvc2l0aW9uKCkueSgpICE9IDApOwogfQogCisKK3ZvaWQgdHN0X1FXZWJGcmFtZTo6c2Ny
b2xsYmFyc09mZigpCit7CisgICAgUVdlYlZpZXcgdmlldzsKKyAgICBRV2ViRnJhbWUqIG1haW5G
cmFtZSA9IHZpZXcucGFnZSgpLT5tYWluRnJhbWUoKTsKKworICAgIG1haW5GcmFtZS0+c2V0U2Ny
b2xsQmFyUG9saWN5KFF0OjpWZXJ0aWNhbCwgUXQ6OlNjcm9sbEJhckFsd2F5c09mZik7CisgICAg
bWFpbkZyYW1lLT5zZXRTY3JvbGxCYXJQb2xpY3koUXQ6Okhvcml6b250YWwsIFF0OjpTY3JvbGxC
YXJBbHdheXNPZmYpOworCisgICAgUVN0cmluZyBodG1sKCI8c2NyaXB0PiIgXAorICAgICAgICAg
ICAgICAgICAiICAgZnVuY3Rpb24gY2hlY2tTY3JvbGxiYXIoKSB7IiBcCisgICAgICAgICAgICAg
ICAgICIgICAgICAgaWYgKGlubmVyV2lkdGggPT09IGRvY3VtZW50LmRvY3VtZW50RWxlbWVudC5v
ZmZzZXRXaWR0aCkiIFwKKyAgICAgICAgICAgICAgICAgIiAgICAgICAgICAgZG9jdW1lbnQuZ2V0
RWxlbWVudEJ5SWQoJ3NwYW4xJykuaW5uZXJUZXh0ID0gJ1NVQ0NFU1MnOyIgXAorICAgICAgICAg
ICAgICAgICAiICAgICAgIGVsc2UiIFwKKyAgICAgICAgICAgICAgICAgIiAgICAgICAgICAgZG9j
dW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ3NwYW4xJykuaW5uZXJUZXh0ID0gJ0ZBSUwnOyIgXAorICAg
ICAgICAgICAgICAgICAiICAgfSIgXAorICAgICAgICAgICAgICAgICAiPC9zY3JpcHQ+IiBcCisg
ICAgICAgICAgICAgICAgICI8Ym9keT4iIFwKKyAgICAgICAgICAgICAgICAgIiAgIDxkaXYgc3R5
bGU9J21hcmdpbi10b3A6MTAwMHB4IDsgbWFyZ2luLWxlZnQ6MTAwMHB4Jz4iIFwKKyAgICAgICAg
ICAgICAgICAgIiAgICAgICA8YSBpZD0nb2Zmc2NyZWVuJyBocmVmPSdhJz5FbmQ8L2E+IiBcCisg
ICAgICAgICAgICAgICAgICIgICA8L2Rpdj4iIFwKKyAgICAgICAgICAgICAgICAgIjxzcGFuIGlk
PSdzcGFuMSc+PC9zcGFuPiIgXAorICAgICAgICAgICAgICAgICAiPC9ib2R5PiIpOworCisKKyAg
ICB2aWV3LnNldEh0bWwoaHRtbCk7CisgICAgOjp3YWl0Rm9yU2lnbmFsKCZ2aWV3LCBTSUdOQUwo
bG9hZEZpbmlzaGVkKGJvb2wpKSk7CisKKyAgICBtYWluRnJhbWUtPmV2YWx1YXRlSmF2YVNjcmlw
dCgiY2hlY2tTY3JvbGxiYXIoKTsiKTsKKyAgICBRQ09NUEFSRShtYWluRnJhbWUtPmRvY3VtZW50
RWxlbWVudCgpLmZpbmRBbGwoInNwYW4iKS5hdCgwKS50b1BsYWluVGV4dCgpLCBRU3RyaW5nKCJT
VUNDRVNTIikpOworfQorCiB2b2lkIHRzdF9RV2ViRnJhbWU6OmV2YWx1YXRlV2lsbENhdXNlUmVw
YWludCgpCiB7CiAgICAgUVdlYlZpZXcgdmlldzsKZGlmZiAtLWdpdCBhL1dlYktpdFRvb2xzL0No
YW5nZUxvZyBiL1dlYktpdFRvb2xzL0NoYW5nZUxvZwppbmRleCA1MTdiOWJkLi5mNzUyMWEzIDEw
MDY0NAotLS0gYS9XZWJLaXRUb29scy9DaGFuZ2VMb2cKKysrIGIvV2ViS2l0VG9vbHMvQ2hhbmdl
TG9nCkBAIC0xLDMgKzEsMTkgQEAKKzIwMTAtMDQtMDEgIEFudG9uaW8gR29tZXMgIDx0b25pa2l0
b29Ad2Via2l0Lm9yZz4KKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKwor
ICAgICAgICBbUXRdIFJFR1JFU1NJT046KHI1MDY2NSkgUVdlYkZyYW1lOjpzZXRTY3JvbGxCYXJQ
b2xpY3koUXQ6OlZlcnRpY2FsLFF0OjpTY3JvbGxCYXJBbHdheXNPZmYpIGhhcyBubyBlZmZlY3Qu
CisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yOTQzMQor
CisgICAgICAgIE1ha2UgcG9zc2libGUgdG8gRFJUIHRvIHNldCBzY3JvbGxiYXIgcG9saWNpZXMg
KG9uLCBvZmYgb3IgYXV0bykuCisKKyAgICAgICAgKiBEdW1wUmVuZGVyVHJlZS9xdC9MYXlvdXRU
ZXN0Q29udHJvbGxlclF0LmNwcDoKKyAgICAgICAgKExheW91dFRlc3RDb250cm9sbGVyOjpzZXRT
Y3JvbGxiYXJQb2xpY3kpOgorICAgICAgICAqIER1bXBSZW5kZXJUcmVlL3F0L0xheW91dFRlc3RD
b250cm9sbGVyUXQuaDoKKyAgICAgICAgKiBRdExhdW5jaGVyL21haW4uY3BwOgorICAgICAgICAo
TGF1bmNoZXJXaW5kb3c6OnRvZ2dsZVNjcm9sbGJhcnMpOgorICAgICAgICAoTGF1bmNoZXJXaW5k
b3c6OmNyZWF0ZUNocm9tZSk6CisKIDIwMTAtMDMtMzEgIEVyaWMgU2VpZGVsICA8ZXJpY0B3ZWJr
aXQub3JnPgogCiAgICAgICAgIFJldmlld2VkIGJ5IEFkYW0gQmFydGguCmRpZmYgLS1naXQgYS9X
ZWJLaXRUb29scy9EdW1wUmVuZGVyVHJlZS9xdC9MYXlvdXRUZXN0Q29udHJvbGxlclF0LmNwcCBi
L1dlYktpdFRvb2xzL0R1bXBSZW5kZXJUcmVlL3F0L0xheW91dFRlc3RDb250cm9sbGVyUXQuY3Bw
CmluZGV4IGI2NDgwYzIuLjY3MDNiMDEgMTAwNjQ0Ci0tLSBhL1dlYktpdFRvb2xzL0R1bXBSZW5k
ZXJUcmVlL3F0L0xheW91dFRlc3RDb250cm9sbGVyUXQuY3BwCisrKyBiL1dlYktpdFRvb2xzL0R1
bXBSZW5kZXJUcmVlL3F0L0xheW91dFRlc3RDb250cm9sbGVyUXQuY3BwCkBAIC01NDEsNSArNTQx
LDI5IEBAIGJvb2wgTGF5b3V0VGVzdENvbnRyb2xsZXI6OmNhbGxTaG91bGRDbG9zZU9uV2ViVmll
dygpCiAgICAgcmV0dXJuIGZhbHNlOwogfQogCit2b2lkIExheW91dFRlc3RDb250cm9sbGVyOjpz
ZXRTY3JvbGxiYXJQb2xpY3koY29uc3QgUVN0cmluZyYgb3JpZW50YXRpb24sIGNvbnN0IFFTdHJp
bmcmIHBvbGljeSkKK3sKKyAgICBRdDo6T3JpZW50YXRpb24gbzsKKyAgICBRdDo6U2Nyb2xsQmFy
UG9saWN5IHA7CisKKyAgICBpZiAob3JpZW50YXRpb24gPT0gInZlcnRpY2FsIikKKyAgICAgICAg
byA9IFF0OjpWZXJ0aWNhbDsKKyAgICBlbHNlIGlmIChvcmllbnRhdGlvbiA9PSAiaG9yaXpvbnRh
bCIpCisgICAgICAgIG8gPSBRdDo6SG9yaXpvbnRhbDsKKyAgICBlbHNlCisgICAgICAgIHJldHVy
bjsKKworICAgIGlmIChwb2xpY3kgPT0gIm9uIikKKyAgICAgICAgcCA9IFF0OjpTY3JvbGxCYXJB
bHdheXNPbjsKKyAgICBlbHNlIGlmIChwb2xpY3kgPT0gImF1dG8iKQorICAgICAgICBwID0gUXQ6
OlNjcm9sbEJhckFzTmVlZGVkOworICAgIGVsc2UgaWYgKHBvbGljeSA9PSAib2ZmIikKKyAgICAg
ICAgcCA9IFF0OjpTY3JvbGxCYXJBbHdheXNPZmY7CisgICAgZWxzZQorICAgICAgICByZXR1cm47
CisKKyAgICBtX2RydC0+d2ViUGFnZSgpLT5tYWluRnJhbWUoKS0+c2V0U2Nyb2xsQmFyUG9saWN5
KG8sIHApOworfQorCiBjb25zdCB1bnNpZ25lZCBMYXlvdXRUZXN0Q29udHJvbGxlcjo6bWF4Vmll
d1dpZHRoID0gODAwOwogY29uc3QgdW5zaWduZWQgTGF5b3V0VGVzdENvbnRyb2xsZXI6Om1heFZp
ZXdIZWlnaHQgPSA2MDA7CmRpZmYgLS1naXQgYS9XZWJLaXRUb29scy9EdW1wUmVuZGVyVHJlZS9x
dC9MYXlvdXRUZXN0Q29udHJvbGxlclF0LmggYi9XZWJLaXRUb29scy9EdW1wUmVuZGVyVHJlZS9x
dC9MYXlvdXRUZXN0Q29udHJvbGxlclF0LmgKaW5kZXggMzZiNWY3MC4uM2JkOWRiOCAxMDA2NDQK
LS0tIGEvV2ViS2l0VG9vbHMvRHVtcFJlbmRlclRyZWUvcXQvTGF5b3V0VGVzdENvbnRyb2xsZXJR
dC5oCisrKyBiL1dlYktpdFRvb2xzL0R1bXBSZW5kZXJUcmVlL3F0L0xheW91dFRlc3RDb250cm9s
bGVyUXQuaApAQCAtMTY1LDYgKzE2NSwxMiBAQCBwdWJsaWMgc2xvdHM6CiAgICAgaW50IG51bWJl
ck9mUGFnZXMoZmxvYXQgd2lkdGggPSBtYXhWaWV3V2lkdGgsIGZsb2F0IGhlaWdodCA9IG1heFZp
ZXdIZWlnaHQpOwogICAgIGJvb2wgY2FsbFNob3VsZENsb3NlT25XZWJWaWV3KCk7CiAKKyAgICAv
KgorICAgICAgICBQb2xpY3kgdmFsdWVzOiAnb24nLCAnYXV0bycgb3IgJ29mZicuCisgICAgICAg
IE9yaWVudGF0aW9uIHZhbHVlczogJ3ZlcnRpY2FsJyBvciAnaG9yaXpvbnRhbCcuCisgICAgKi8K
KyAgICB2b2lkIHNldFNjcm9sbGJhclBvbGljeShjb25zdCBRU3RyaW5nJiBvcmllbnRhdGlvbiwg
Y29uc3QgUVN0cmluZyYgcG9saWN5KTsKKwogcHJpdmF0ZSBzbG90czoKICAgICB2b2lkIHByb2Nl
c3NXb3JrKCk7CiAKLS0gCjEuNi4wLjQKCg==
</data>

          </attachment>
      

    </bug>

</bugzilla>