<?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>72893</bug_id>
          
          <creation_ts>2011-11-21 09:15:23 -0800</creation_ts>
          <short_desc>[Qt][WK2] Add (experimental) viewport attributes view to MiniBrowser/qt</short_desc>
          <delta_ts>2011-12-16 03:41:06 -0800</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>WebKit2</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords></keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Michael Brüning">michael.bruning</reporter>
          <assigned_to name="Michael Brüning">michael.bruning</assigned_to>
          <cc>dglazkov</cc>
    
    <cc>ossy</cc>
    
    <cc>vestbo</cc>
    
    <cc>webkit.review.bot</cc>
    
    <cc>zoltan</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>507018</commentid>
    <comment_count>0</comment_count>
    <who name="Michael Brüning">michael.bruning</who>
    <bug_when>2011-11-21 09:15:23 -0800</bug_when>
    <thetext>It has been requested to be able to view the viewport attributes in the Qt version of MiniBrowser. 

This should be implemented using the experimental extensions of QQuickWebView.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>507477</commentid>
    <comment_count>1</comment_count>
      <attachid>116191</attachid>
    <who name="Michael Brüning">michael.bruning</who>
    <bug_when>2011-11-22 01:59:20 -0800</bug_when>
    <thetext>Created attachment 116191
Proposed patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>507482</commentid>
    <comment_count>2</comment_count>
    <who name="Michael Brüning">michael.bruning</who>
    <bug_when>2011-11-22 02:39:21 -0800</bug_when>
    <thetext>Adding Tor Arne as he has been working with the experimental extensions.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>507483</commentid>
    <comment_count>3</comment_count>
      <attachid>116191</attachid>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2011-11-22 02:47:22 -0800</bug_when>
    <thetext>Comment on attachment 116191
Proposed patch

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

New failing tests:
css2.1/20110323/abspos-containing-block-initial-004b.htm
fast/repaint/scroll-fixed-reflected-layer.html
fast/repaint/fixed-scale.html
fast/replaced/width100percent-textarea.html
http/tests/inspector/network-preflight-options.html
fast/repaint/fixed-tranformed.html
css2.1/20110323/abspos-containing-block-initial-004d.htm
fast/repaint/fixed-table-overflow-zindex.html</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>507500</commentid>
    <comment_count>4</comment_count>
      <attachid>116191</attachid>
    <who name="Tor Arne Vestbø">vestbo</who>
    <bug_when>2011-11-22 04:04:38 -0800</bug_when>
    <thetext>Comment on attachment 116191
Proposed patch

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

&gt; Source/WebKit2/UIProcess/API/qt/qquickwebview_p.h:168
&gt; +    Q_PROPERTY(QWebViewportAttributes* attributes READ attributes CONSTANT FINAL)

I think viewportAttributes is better, since attributes is a bit too generic.

&gt; Tools/MiniBrowser/qt/qml/BrowserWindow.qml:60
&gt; +        viewportAttributesItem.initialScale = webView.experimental.attributes.initialScale
&gt; +        viewportAttributesItem.minimumScale = webView.experimental.attributes.minimumScale
&gt; +        viewportAttributesItem.maximumScale = webView.experimental.attributes.maximumScale
&gt; +
&gt; +        viewportAttributesItem.isScalable = webView.experimental.attributes.isScalable
&gt; +        viewportAttributesItem.layoutWidth = webView.experimental.attributes.layoutWidth
&gt; +        viewportAttributesItem.layoutHeight = webView.experimental.attributes.layoutHeight
&gt; +    }

Why are you not using bindings for these?

&gt; Tools/MiniBrowser/qt/qml/BrowserWindow.qml:242
&gt; +        onHeightChanged: updateViewportAttributes()
&gt; +        onWidthChanged: updateViewportAttributes()
&gt; +        onLoadSucceeded: updateViewportAttributes()

The viewport attributes themselves should change in response to these events, and the bindings then updated.

&gt; Tools/MiniBrowser/qt/qml/ViewportAttributesItem.qml:5
&gt; +    color: &quot;#000000&quot;

black

&gt; Tools/MiniBrowser/qt/qml/ViewportAttributesItem.qml:19
&gt; +        color: &quot;#ffffff&quot;

white

&gt; Tools/MiniBrowser/qt/qml/ViewportAttributesItem.qml:25
&gt; +       color: &quot;#ffffff&quot;

white

&gt; Tools/MiniBrowser/qt/qml/ViewportAttributesItem.qml:31
&gt; +       color: &quot;#ffffff&quot;

style</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>507632</commentid>
    <comment_count>5</comment_count>
      <attachid>116234</attachid>
    <who name="Michael Brüning">michael.bruning</who>
    <bug_when>2011-11-22 08:54:16 -0800</bug_when>
    <thetext>Created attachment 116234
Updated proposed patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>508041</commentid>
    <comment_count>6</comment_count>
      <attachid>116234</attachid>
    <who name="Tor Arne Vestbø">vestbo</who>
    <bug_when>2011-11-23 03:23:50 -0800</bug_when>
    <thetext>Comment on attachment 116234
Updated proposed patch

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

lgtm, a few fixups before landing please

&gt; ChangeLog:9
&gt; +        attributes, which contains the viewport scalability and layout

viewportAttributes

&gt; Source/WebKit/qt/ChangeLog:9
&gt; +        attributes, which contains the viewport scalability and layout

viewportAttributes

&gt; Source/WebKit2/ChangeLog:9
&gt; +        attributes, which contains the viewport scalability and layout

viewportAttributes

&gt; Tools/ChangeLog:9
&gt; +        attributes, which contains the viewport scalability and layout

viewportAttributes

&gt; Tools/MiniBrowser/qt/qml/BrowserWindow.qml:37
&gt; +    property alias viewportattributesitem: viewportAttributesItem

normal lower-case+title-case naming apply (i see that the webview variable does not follow this, it should)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>508068</commentid>
    <comment_count>7</comment_count>
    <who name="Michael Brüning">michael.bruning</who>
    <bug_when>2011-11-23 04:24:16 -0800</bug_when>
    <thetext>(In reply to comment #6)
&gt; (From update of attachment 116234 [details])
&gt; View in context: https://bugs.webkit.org/attachment.cgi?id=116234&amp;action=review
&gt; 
&gt; lgtm, a few fixups before landing please
&gt; 
&gt; &gt; ChangeLog:9
&gt; &gt; +        attributes, which contains the viewport scalability and layout
&gt; 
&gt; viewportAttributes
&gt; 
&gt; &gt; Source/WebKit/qt/ChangeLog:9
&gt; &gt; +        attributes, which contains the viewport scalability and layout
&gt; 
&gt; viewportAttributes
&gt; 
&gt; &gt; Source/WebKit2/ChangeLog:9
&gt; &gt; +        attributes, which contains the viewport scalability and layout
&gt; 
&gt; viewportAttributes
&gt; 
&gt; &gt; Tools/ChangeLog:9
&gt; &gt; +        attributes, which contains the viewport scalability and layout
&gt; 
&gt; viewportAttributes
&gt; 
&gt; &gt; Tools/MiniBrowser/qt/qml/BrowserWindow.qml:37
&gt; &gt; +    property alias viewportattributesitem: viewportAttributesItem
&gt; 
&gt; normal lower-case+title-case naming apply (i see that the webview variable does not follow this, it should)

Thanks for the review, will put in the comments...</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>508688</commentid>
    <comment_count>8</comment_count>
      <attachid>116491</attachid>
    <who name="Michael Brüning">michael.bruning</who>
    <bug_when>2011-11-24 02:39:12 -0800</bug_when>
    <thetext>Created attachment 116491
Updated proposed patch

Added a comment about the use of the &quot;webview&quot; property workaround for the experimental extension. 
Changed layout of info page.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>508695</commentid>
    <comment_count>9</comment_count>
      <attachid>116491</attachid>
    <who name="Tor Arne Vestbø">vestbo</who>
    <bug_when>2011-11-24 03:32:57 -0800</bug_when>
    <thetext>Comment on attachment 116491
Updated proposed patch

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

r=me, with comments

&gt; ChangeLog:6
&gt; +        Reviewed by Tor Arne Vestbo.

ø

&gt; Source/WebKit/qt/ChangeLog:6
&gt; +        Reviewed by Tor Arne Vestbo.

ø

&gt; Source/WebKit2/ChangeLog:6
&gt; +        Reviewed by Tor Arne Vestbo.

ø

&gt; Tools/ChangeLog:6
&gt; +        Reviewed by Tor Arne Vestbo.

ø

&gt; Tools/MiniBrowser/qt/qml/BrowserWindow.qml:-189
&gt; -

Don&apos;t include this hunk</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>508705</commentid>
    <comment_count>10</comment_count>
      <attachid>116495</attachid>
    <who name="Michael Brüning">michael.bruning</who>
    <bug_when>2011-11-24 04:15:02 -0800</bug_when>
    <thetext>Created attachment 116495
Updated proposed patch.

Put in the &quot;ø&quot;&apos;s and &quot;ü&quot;&apos;s at the appropriate places. 
Inserted accidentally removed blank line.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>508715</commentid>
    <comment_count>11</comment_count>
      <attachid>116495</attachid>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2011-11-24 04:41:02 -0800</bug_when>
    <thetext>Comment on attachment 116495
Updated proposed patch.

Rejecting attachment 116495 from commit-queue.

Failed to run &quot;[&apos;/mnt/git/webkit-commit-queue/Tools/Scripts/webkit-patch&apos;, &apos;--status-host=queues.webkit.org&apos;, &apos;-...&quot; exit_code: 1

Last 500 characters of output:
cripts/webkitpy/common/system/executive.py&quot;, line 420, in run_command
    close_fds=self._should_close_fds())
  File &quot;/mnt/git/webkit-commit-queue/Tools/Scripts/webkitpy/common/system/executive.py&quot;, line 476, in popen
    return subprocess.Popen(*args, **kwargs)
  File &quot;/usr/lib/python2.6/subprocess.py&quot;, line 623, in __init__
    errread, errwrite)
  File &quot;/usr/lib/python2.6/subprocess.py&quot;, line 1141, in _execute_child
    raise child_exception
TypeError: execv() arg 2 must contain only strings

Full output: http://queues.webkit.org/results/10618280</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>508716</commentid>
    <comment_count>12</comment_count>
      <attachid>116495</attachid>
    <who name="Kenneth Rohde Christiansen">kenneth</who>
    <bug_when>2011-11-24 04:45:36 -0800</bug_when>
    <thetext>Comment on attachment 116495
Updated proposed patch.

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

&gt; Source/WebKit2/UIProcess/API/qt/qwebviewportattributes.cpp:40
&gt; +qreal QWebViewportAttributes::initialScale() const
&gt; +{
&gt; +    return m_initialScale;
&gt; +}

What about currentScale? Isnt that pretty useful for debugging?

&gt; Tools/MiniBrowser/qt/qml/BrowserWindow.qml:240
&gt; +        // the issue is resovled.

spelling error. Bug url?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>508720</commentid>
    <comment_count>13</comment_count>
    <who name="Michael Brüning">michael.bruning</who>
    <bug_when>2011-11-24 04:57:17 -0800</bug_when>
    <thetext>(In reply to comment #12)
&gt; (From update of attachment 116495 [details])
&gt; View in context: https://bugs.webkit.org/attachment.cgi?id=116495&amp;action=review
&gt; 
&gt; &gt; Source/WebKit2/UIProcess/API/qt/qwebviewportattributes.cpp:40
&gt; &gt; +qreal QWebViewportAttributes::initialScale() const
&gt; &gt; +{
&gt; &gt; +    return m_initialScale;
&gt; &gt; +}
&gt; 
&gt; What about currentScale? Isnt that pretty useful for debugging?
&gt; 
True. Will add it.
&gt; &gt; Tools/MiniBrowser/qt/qml/BrowserWindow.qml:240
&gt; &gt; +        // the issue is resovled.
&gt; 
&gt; spelling error. Bug url?
Not clear where the bug is at the moment, so no bug to add yet.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>508800</commentid>
    <comment_count>14</comment_count>
      <attachid>116517</attachid>
    <who name="Michael Brüning">michael.bruning</who>
    <bug_when>2011-11-24 08:28:49 -0800</bug_when>
    <thetext>Created attachment 116517
Updated patch.

Renamed viewportAttributes to viewportInfo (also in the cpp part), added currentScale, devicePixelRatio and contentsWidth and contentsHeight properties.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>508804</commentid>
    <comment_count>15</comment_count>
    <who name="Tor Arne Vestbø">vestbo</who>
    <bug_when>2011-11-24 08:37:46 -0800</bug_when>
    <thetext>(In reply to comment #14)
&gt; Created an attachment (id=116517) [details]
&gt; Updated patch.
&gt; 
&gt; Renamed viewportAttributes to viewportInfo (also in the cpp part), added currentScale, devicePixelRatio and contentsWidth and contentsHeight properties.

Sorry to keep nitpicking, but it should be contentWidth and contentHeight :/ (not plural)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>508808</commentid>
    <comment_count>16</comment_count>
    <who name="Michael Brüning">michael.bruning</who>
    <bug_when>2011-11-24 08:52:16 -0800</bug_when>
    <thetext>(In reply to comment #15)
&gt; (In reply to comment #14)
&gt; &gt; Created an attachment (id=116517) [details] [details]
&gt; &gt; Updated patch.
&gt; &gt; 
&gt; &gt; Renamed viewportAttributes to viewportInfo (also in the cpp part), added currentScale, devicePixelRatio and contentsWidth and contentsHeight properties.
&gt; 
&gt; Sorry to keep nitpicking, but it should be contentWidth and contentHeight :/ (not plural)

As discussed in #qtwebkit, the size that is referred to in the properties is the contentsSize, so plural matches the wording in the QQuickWebView handlers...</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>509059</commentid>
    <comment_count>17</comment_count>
      <attachid>116517</attachid>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2011-11-25 02:41:09 -0800</bug_when>
    <thetext>Comment on attachment 116517
Updated patch.

Rejecting attachment 116517 from commit-queue.

Failed to run &quot;[&apos;/mnt/git/webkit-commit-queue/Tools/Scripts/webkit-patch&apos;, &apos;--status-host=queues.webkit.org&apos;, &apos;-...&quot; exit_code: 1

Last 500 characters of output:
cripts/webkitpy/common/system/executive.py&quot;, line 420, in run_command
    close_fds=self._should_close_fds())
  File &quot;/mnt/git/webkit-commit-queue/Tools/Scripts/webkitpy/common/system/executive.py&quot;, line 476, in popen
    return subprocess.Popen(*args, **kwargs)
  File &quot;/usr/lib/python2.6/subprocess.py&quot;, line 623, in __init__
    errread, errwrite)
  File &quot;/usr/lib/python2.6/subprocess.py&quot;, line 1141, in _execute_child
    raise child_exception
TypeError: execv() arg 2 must contain only strings

Full output: http://queues.webkit.org/results/10644579</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>518284</commentid>
    <comment_count>18</comment_count>
      <attachid>118584</attachid>
    <who name="Michael Brüning">michael.bruning</who>
    <bug_when>2011-12-09 08:43:55 -0800</bug_when>
    <thetext>Created attachment 118584
Updated patch after js fix.

Updated patch because the qml extended type fix has been released. 

Added missing update of contentsSize in viewportInfo if the event was received during a page transition. 
To achieve that, I moved the implementation PostTransitionState::apply from qquickwebview_p_p.h to qquickwebview.cpp.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>518792</commentid>
    <comment_count>19</comment_count>
      <attachid>118584</attachid>
    <who name="Kenneth Rohde Christiansen">kenneth</who>
    <bug_when>2011-12-10 07:35:02 -0800</bug_when>
    <thetext>Comment on attachment 118584
Updated patch after js fix.

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

why r? when it is already reviewed?

&gt; Source/WebKit2/UIProcess/API/qt/qquickwebview.cpp:210
&gt; +    q-&gt;m_experimental-&gt;viewportInfo()-&gt;setCurrentScale(static_cast&lt;qreal&gt;(scale));

Why are all these value &quot;copied&quot; and not queried? ie queries from the interaction engine.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>520080</commentid>
    <comment_count>20</comment_count>
      <attachid>119018</attachid>
    <who name="Michael Brüning">michael.bruning</who>
    <bug_when>2011-12-13 07:52:30 -0800</bug_when>
    <thetext>Created attachment 119018
Updated patch

Removed the caching of viewport constraint data in QWebViewportInfo and made it use the QQuickWebViewPrivate data instead.
Added layoutSize as a member of QtViewportInteractionEngine::Constraints in order to not cache it in QWebViewportInfo. 
Changed layoutWidth and layoutHeight to layoutSize and contentsWidth/contentsHeight to contentsSize.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>520082</commentid>
    <comment_count>21</comment_count>
      <attachid>119018</attachid>
    <who name="Kenneth Rohde Christiansen">kenneth</who>
    <bug_when>2011-12-13 08:06:00 -0800</bug_when>
    <thetext>Comment on attachment 119018
Updated patch

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

&gt; Source/WebKit2/ChangeLog:6
&gt; +
&gt; +        Reviewed by Tor Arne VestbÃ¸.

I guess such a big change requires you to null this line

&gt; Source/WebKit2/UIProcess/API/qt/qwebviewportinfo.cpp:52
&gt; +    if (!m_webViewPrivate-&gt;interactionEngine)
&gt; +        return -1.0;

it would be 1.0 actually :-)

&gt; Source/WebKit2/UIProcess/API/qt/qwebviewportinfo.cpp:60
&gt; +    if (!m_webViewPrivate-&gt;interactionEngine)
&gt; +        return -1.0;

I guess it would be 1.0 :-) as well

&gt; Source/WebKit2/UIProcess/API/qt/qwebviewportinfo.cpp:68
&gt; +    if (!m_webViewPrivate-&gt;interactionEngine)
&gt; +        return -1.0;

same here</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>520803</commentid>
    <comment_count>22</comment_count>
      <attachid>119181</attachid>
    <who name="Michael Brüning">michael.bruning</who>
    <bug_when>2011-12-14 02:14:57 -0800</bug_when>
    <thetext>Created attachment 119181
Updated patch.

Moved the values that depend on the interactionEngine to be QVariants</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>520847</commentid>
    <comment_count>23</comment_count>
      <attachid>119181</attachid>
    <who name="Kenneth Rohde Christiansen">kenneth</who>
    <bug_when>2011-12-14 04:32:47 -0800</bug_when>
    <thetext>Comment on attachment 119181
Updated patch.

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

&gt; Source/WebKit2/UIProcess/API/qt/qwebviewportinfo_p.h:39
&gt; +    Q_PROPERTY(QSize contentsSize READ contentsSize NOTIFY contentsSizeUpdated)

I miss contentsPosition :-)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>520870</commentid>
    <comment_count>24</comment_count>
      <attachid>119181</attachid>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2011-12-14 05:23:06 -0800</bug_when>
    <thetext>Comment on attachment 119181
Updated patch.

Rejecting attachment 119181 from commit-queue.

Failed to run &quot;[&apos;/mnt/git/webkit-commit-queue/Tools/Scripts/webkit-patch&apos;, &apos;--status-host=queues.webkit.org&apos;, &apos;-...&quot; exit_code: 2

Last 500 characters of output:
UIProcess/qt/QtViewportInteractionEngine.h
patching file Source/qtwebkit-export.map
patching file Tools/ChangeLog
Hunk #1 succeeded at 1 with fuzz 3.
patching file Tools/MiniBrowser/qt/MiniBrowser.pro
patching file Tools/MiniBrowser/qt/MiniBrowser.qrc
patching file Tools/MiniBrowser/qt/qml/BrowserWindow.qml
patching file Tools/MiniBrowser/qt/qml/ViewportInfoItem.qml

Failed to run &quot;[u&apos;/mnt/git/webkit-commit-queue/Tools/Scripts/svn-apply&apos;, u&apos;--reviewer&apos;, u&apos;Kenneth Rohde Christia...&quot; exit_code: 1

Full output: http://queues.webkit.org/results/10871232</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>521795</commentid>
    <comment_count>25</comment_count>
      <attachid>119408</attachid>
    <who name="Michael Brüning">michael.bruning</who>
    <bug_when>2011-12-15 03:37:08 -0800</bug_when>
    <thetext>Created attachment 119408
Patch rebased to current HEAD.

Commit queue seems to have been unable to apply die to merge conflicts. 
Rebased patch locally and uploaded that version.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>521802</commentid>
    <comment_count>26</comment_count>
      <attachid>119408</attachid>
    <who name="Kenneth Rohde Christiansen">kenneth</who>
    <bug_when>2011-12-15 03:50:31 -0800</bug_when>
    <thetext>Comment on attachment 119408
Patch rebased to current HEAD.

You should have filled in my name and set cq? but now let me r+ and cq+</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>521832</commentid>
    <comment_count>27</comment_count>
      <attachid>119408</attachid>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2011-12-15 04:38:58 -0800</bug_when>
    <thetext>Comment on attachment 119408
Patch rebased to current HEAD.

Clearing flags on attachment: 119408

Committed r102922: &lt;http://trac.webkit.org/changeset/102922&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>522673</commentid>
    <comment_count>28</comment_count>
      <attachid>119181</attachid>
    <who name="Michael Brüning">michael.bruning</who>
    <bug_when>2011-12-16 03:40:24 -0800</bug_when>
    <thetext>Comment on attachment 119181
Updated patch.

Clearing flags from obsolete patch.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>522674</commentid>
    <comment_count>29</comment_count>
    <who name="Michael Brüning">michael.bruning</who>
    <bug_when>2011-12-16 03:41:06 -0800</bug_when>
    <thetext>Marked Resolved Fixed as the patch has been landed via cq...</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>116191</attachid>
            <date>2011-11-22 01:59:20 -0800</date>
            <delta_ts>2011-11-22 08:54:16 -0800</delta_ts>
            <desc>Proposed patch</desc>
            <filename>patch.txt</filename>
            <type>text/plain</type>
            <size>22628</size>
            <attacher name="Michael Brüning">michael.bruning</attacher>
            
              <data encoding="base64">RnJvbSA5MzRjOGM4MmQ3MzlkNmVjZDQ4YzgxZjNmMDg2ZmEyMGRiODc3Nzg5IE1vbiBTZXAgMTcg
MDA6MDA6MDAgMjAwMQpGcm9tOiBNaWNoYWVsIEJydW5pbmcgPG1pY2hhZWwuYnJ1bmluZ0Bub2tp
YS5jb20+CkRhdGU6IFR1ZSwgMjIgTm92IDIwMTEgMTA6MjA6MTkgKzAxMDAKU3ViamVjdDogW1BB
VENIXSBbUVRdW1dLMl1BZGQgKGV4cGVyaW1lbnRhbCkgdmlld3BvcnQgYXR0cmlidXRlcyB2aWV3
IHRvIE1pbmlicm93c2VyL3F0CgpodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/
aWQ9NzI4OTMKClJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgoKVGhpcyBleHRlbmRzIFFRdWlj
a1dlYlZpZXdFeHBlcmltZW50YWwgYnkgYSBwcm9wZXJ0eSBuYW1lZAphdHRyaWJ1dGVzLCB3aGlj
aCBjb250YWlucyB0aGUgdmlld3BvcnQgc2NhbGFiaWxpdHkgYW5kIGxheW91dApzaXplIGluZm9y
bWF0aW9uLiBUaGlzIHByb3BlcnR5IGlzIGV4cG9zZWQgdG8gUU1MIHRocm91Z2ggdGhlCmV4cGVy
aW1lbnRhbCBleHRlbnNpb24gZm9yIFFRdWlja1dlYlZpZXcuCgpTb3VyY2U6CgoqIFNvdXJjZS9x
dHdlYmtpdC1leHBvcnQubWFwOgoKU291cmNlL1dlYktpdC9xdDoKCiogZGVjbGFyYXRpcXZlL2V4
cGVyaW1lbnRhbC9wbHVnaW4uY3BwOgoKU291cmNlL1dlYktpdDI6CgoqIFRhcmdldC5wcmk6Ciog
VUlQcm9jZXNzL0FQSS9xdC9xcXVpY2t3ZWJ2aWV3LmNwcDoKKFFRdWlja1dlYlZpZXdQcml2YXRl
Ojpjb21wdXRlVmlld3BvcnRDb25zdHJhaW50cyk6CihRUXVpY2tXZWJWaWV3RXhwZXJpbWVudGFs
OjpRUXVpY2tXZWJWaWV3RXhwZXJpbWVudGFsKToKKFFRdWlja1dlYlZpZXdFeHBlcmltZW50YWw6
OmF0dHJpYnV0ZXMpOgoqIFVJUHJvY2Vzcy9BUEkvcXQvcXF1aWNrd2Vidmlld19wLmg6CiogVUlQ
cm9jZXNzL0FQSS9xdC9xd2Vidmlld3BvcnRhdHRyaWJ1dGVzLmNwcDogQWRkZWQuCihRV2ViVmll
d3BvcnRBdHRyaWJ1dGVzOjpRV2ViVmlld3BvcnRBdHRyaWJ1dGVzKToKKFFXZWJWaWV3cG9ydEF0
dHJpYnV0ZXM6On5RV2ViVmlld3BvcnRBdHRyaWJ1dGVzKToKKFFXZWJWaWV3cG9ydEF0dHJpYnV0
ZXM6OmluaXRpYWxTY2FsZSk6CihRV2ViVmlld3BvcnRBdHRyaWJ1dGVzOjptaW5pbXVtU2NhbGUp
OgooUVdlYlZpZXdwb3J0QXR0cmlidXRlczo6bWF4aW11bVNjYWxlKToKKFFXZWJWaWV3cG9ydEF0
dHJpYnV0ZXM6OmlzU2NhbGFibGUpOgooUVdlYlZpZXdwb3J0QXR0cmlidXRlczo6bGF5b3V0V2lk
dGgpOgooUVdlYlZpZXdwb3J0QXR0cmlidXRlczo6bGF5b3V0SGVpZ2h0KToKKFFXZWJWaWV3cG9y
dEF0dHJpYnV0ZXM6OnVwZGF0ZUZyb21WaWV3cG9ydEF0dHJpYnV0ZXMpOgoqIFVJUHJvY2Vzcy9B
UEkvcXQvcXdlYnZpZXdwb3J0YXR0cmlidXRlc19wLmg6IEFkZGVkLgoKVG9vbHM6CgoqIE1pbmlC
cm93c2VyL3F0L01pbmlCcm93c2VyLnBybzoKKiBNaW5pQnJvd3Nlci9xdC9NaW5pQnJvd3Nlci5x
cmM6CiogTWluaUJyb3dzZXIvcXQvcW1sL0Jyb3dzZXJXaW5kb3cucW1sOgoqIE1pbmlCcm93c2Vy
L3F0L3FtbC9WaWV3cG9ydEF0dHJpYnV0ZXNJdGVtLnFtbDogQWRkZWQuCi0tLQogQ2hhbmdlTG9n
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCAgIDE0ICsrKwogU291
cmNlL1dlYktpdC9xdC9DaGFuZ2VMb2cgICAgICAgICAgICAgICAgICAgICAgICAgfCAgIDE0ICsr
KwogLi4uL1dlYktpdC9xdC9kZWNsYXJhdGl2ZS9leHBlcmltZW50YWwvcGx1Z2luLmNwcCAgfCAg
ICAzICsKIFNvdXJjZS9XZWJLaXQyL0NoYW5nZUxvZyAgICAgICAgICAgICAgICAgICAgICAgICAg
IHwgICAzMCArKysrKysrCiBTb3VyY2UvV2ViS2l0Mi9UYXJnZXQucHJpICAgICAgICAgICAgICAg
ICAgICAgICAgICB8ICAgIDIgKwogU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL0FQSS9xdC9xcXVp
Y2t3ZWJ2aWV3LmNwcCAgfCAgICA5ICsrCiBTb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJL3F0
L3FxdWlja3dlYnZpZXdfcC5oICB8ICAgIDQgKwogLi4uL1VJUHJvY2Vzcy9BUEkvcXQvcXdlYnZp
ZXdwb3J0YXR0cmlidXRlcy5jcHAgICAgfCAgIDg5ICsrKysrKysrKysrKysrKysrKysrCiAuLi4v
VUlQcm9jZXNzL0FQSS9xdC9xd2Vidmlld3BvcnRhdHRyaWJ1dGVzX3AuaCAgICB8ICAgNzAgKysr
KysrKysrKysrKysrCiBTb3VyY2UvcXR3ZWJraXQtZXhwb3J0Lm1hcCAgICAgICAgICAgICAgICAg
ICAgICAgICB8ICAgIDMgKwogVG9vbHMvQ2hhbmdlTG9nICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgfCAgIDE3ICsrKysKIFRvb2xzL01pbmlCcm93c2VyL3F0L01pbmlCcm93c2Vy
LnBybyAgICAgICAgICAgICAgIHwgICAgMyArLQogVG9vbHMvTWluaUJyb3dzZXIvcXQvTWluaUJy
b3dzZXIucXJjICAgICAgICAgICAgICAgfCAgICAxICsKIFRvb2xzL01pbmlCcm93c2VyL3F0L3Ft
bC9Ccm93c2VyV2luZG93LnFtbCAgICAgICAgIHwgICA0OCArKysrKysrKysrKwogLi4uL01pbmlC
cm93c2VyL3F0L3FtbC9WaWV3cG9ydEF0dHJpYnV0ZXNJdGVtLnFtbCAgfCAgIDMzICsrKysrKysK
IDE1IGZpbGVzIGNoYW5nZWQsIDMzOSBpbnNlcnRpb25zKCspLCAxIGRlbGV0aW9ucygtKQogY3Jl
YXRlIG1vZGUgMTAwNjQ0IFNvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9BUEkvcXQvcXdlYnZpZXdw
b3J0YXR0cmlidXRlcy5jcHAKIGNyZWF0ZSBtb2RlIDEwMDY0NCBTb3VyY2UvV2ViS2l0Mi9VSVBy
b2Nlc3MvQVBJL3F0L3F3ZWJ2aWV3cG9ydGF0dHJpYnV0ZXNfcC5oCiBjcmVhdGUgbW9kZSAxMDA2
NDQgVG9vbHMvTWluaUJyb3dzZXIvcXQvcW1sL1ZpZXdwb3J0QXR0cmlidXRlc0l0ZW0ucW1sCgpk
aWZmIC0tZ2l0IGEvQ2hhbmdlTG9nIGIvQ2hhbmdlTG9nCmluZGV4IDhhZDkzZDMuLjQyMWJjYTAg
MTAwNjQ0Ci0tLSBhL0NoYW5nZUxvZworKysgYi9DaGFuZ2VMb2cKQEAgLTEsMyArMSwxNyBAQAor
MjAxMS0xMS0yMSAgTWljaGFlbCBCcnVuaW5nICA8bWljaGFlbC5icnVuaW5nQG5va2lhLmNvbT4K
KworICAgICAgICBbUVRdW1dLMl1BZGQgKGV4cGVyaW1lbnRhbCkgdmlld3BvcnQgYXR0cmlidXRl
cyB2aWV3IHRvIE1pbmlicm93c2VyL3F0LgorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9y
Zy9zaG93X2J1Zy5jZ2k/aWQ9NzI4OTMKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9P
UFMhKS4KKworICAgICAgICBUaGlzIHBhdGNoIGV4dGVuZHMgUVF1aWNrV2ViVmlld0V4cGVyaW1l
bnRhbCBieSBhIHByb3BlcnR5IG5hbWVkCisgICAgICAgIGF0dHJpYnV0ZXMsIHdoaWNoIGNvbnRh
aW5zIHRoZSB2aWV3cG9ydCBzY2FsYWJpbGl0eSBhbmQgbGF5b3V0CisgICAgICAgIHNpemUgaW5m
b3JtYXRpb24uIFRoaXMgcHJvcGVydHkgaXMgZXhwb3NlZCB0byBRTUwgdGhyb3VnaCB0aGUKKyAg
ICAgICAgZXhwZXJpbWVudGFsIGV4dGVuc2lvbiBmb3IgUVF1aWNrV2ViVmlldy4KKworICAgICAg
ICAqIFNvdXJjZS9xdHdlYmtpdC1leHBvcnQubWFwOgorCiAyMDExLTExLTIxICBBZGFtIEtsZWlu
ICA8YWRhbWtAY2hyb21pdW0ub3JnPgogCiAgICAgICAgIEFkZCBHWVAtZ2VuZXJhdGVkIFdURi54
Y29kZXByb2ogdG8gLmdpdGlnbm9yZSBhZnRlciByMTAwODUxLgpkaWZmIC0tZ2l0IGEvU291cmNl
L1dlYktpdC9xdC9DaGFuZ2VMb2cgYi9Tb3VyY2UvV2ViS2l0L3F0L0NoYW5nZUxvZwppbmRleCA3
ZGIzOGFlLi5kNjU5OGY2IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L3F0L0NoYW5nZUxvZwor
KysgYi9Tb3VyY2UvV2ViS2l0L3F0L0NoYW5nZUxvZwpAQCAtMSwzICsxLDE3IEBACisyMDExLTEx
LTIxICBNaWNoYWVsIEJydW5pbmcgIDxtaWNoYWVsLmJydW5pbmdAbm9raWEuY29tPgorCisgICAg
ICAgIFtRVF1bV0syXUFkZCAoZXhwZXJpbWVudGFsKSB2aWV3cG9ydCBhdHRyaWJ1dGVzIHZpZXcg
dG8gTWluaWJyb3dzZXIvcXQKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19i
dWcuY2dpP2lkPTcyODkzCisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisK
KyAgICAgICAgVGhpcyBwYXRjaCBleHRlbmRzIFFRdWlja1dlYlZpZXdFeHBlcmltZW50YWwgYnkg
YSBwcm9wZXJ0eSBuYW1lZAorICAgICAgICBhdHRyaWJ1dGVzLCB3aGljaCBjb250YWlucyB0aGUg
dmlld3BvcnQgc2NhbGFiaWxpdHkgYW5kIGxheW91dAorICAgICAgICBzaXplIGluZm9ybWF0aW9u
LiBUaGlzIHByb3BlcnR5IGlzIGV4cG9zZWQgdG8gUU1MIHRocm91Z2ggdGhlCisgICAgICAgIGV4
cGVyaW1lbnRhbCBleHRlbnNpb24gZm9yIFFRdWlja1dlYlZpZXcuCisKKyAgICAgICAgKiBkZWNs
YXJhdGl2ZS9leHBlcmltZW50YWwvcGx1Z2luLmNwcDoKKwogMjAxMS0xMC0xNyAgQW50b25pbyBH
b21lcyAgPGFnb21lc0ByaW0uY29tPgogCiAgICAgICAgIFBhc3MgYSBGcmFtZSogcGFyYW1ldGVy
IGluIEVkaXRvckNsaWVudDo6cmVzcG9uZFRvQ2hhbmdlZFNlbGVjdGlvbgpkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYktpdC9xdC9kZWNsYXJhdGl2ZS9leHBlcmltZW50YWwvcGx1Z2luLmNwcCBiL1Nv
dXJjZS9XZWJLaXQvcXQvZGVjbGFyYXRpdmUvZXhwZXJpbWVudGFsL3BsdWdpbi5jcHAKaW5kZXgg
M2U2ODJmZC4uNzNkMDIwMSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9xdC9kZWNsYXJhdGl2
ZS9leHBlcmltZW50YWwvcGx1Z2luLmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0L3F0L2RlY2xhcmF0
aXZlL2V4cGVyaW1lbnRhbC9wbHVnaW4uY3BwCkBAIC0xOSw2ICsxOSw3IEBACiAKICNpbmNsdWRl
ICJxcXVpY2t3ZWJwYWdlX3AuaCIKICNpbmNsdWRlICJxcXVpY2t3ZWJ2aWV3X3AuaCIKKyNpbmNs
dWRlICJxd2Vidmlld3BvcnRhdHRyaWJ1dGVzX3AuaCIKIAogI2luY2x1ZGUgPFF0RGVjbGFyYXRp
dmUvcWRlY2xhcmF0aXZlLmg+CiAjaW5jbHVkZSA8UXREZWNsYXJhdGl2ZS9xZGVjbGFyYXRpdmVl
eHRlbnNpb25wbHVnaW4uaD4KQEAgLTQzLDYgKzQ0LDggQEAgcHVibGljOgogICAgICAgICBxbWxS
ZWdpc3RlckV4dGVuZGVkVHlwZTxRUXVpY2tXZWJWaWV3LCBRUXVpY2tXZWJWaWV3RXhwZXJpbWVu
dGFsRXh0ZW5zaW9uPih1cmksIDMsIDAsICJXZWJWaWV3Iik7CiAgICAgICAgIHFtbFJlZ2lzdGVy
VW5jcmVhdGFibGVUeXBlPFFRdWlja1dlYlZpZXdFeHBlcmltZW50YWw+KHVyaSwgMywgMCwgIlFR
dWlja1dlYlZpZXdFeHBlcmltZW50YWwiLAogICAgICAgICAgICAgUU9iamVjdDo6dHIoIkNhbm5v
dCBjcmVhdGUgc2VwYXJhdGUgaW5zdGFuY2Ugb2YgUVF1aWNrV2ViVmlld0V4cGVyaW1lbnRhbCIp
KTsKKyAgICAgICAgcW1sUmVnaXN0ZXJVbmNyZWF0YWJsZVR5cGU8UVdlYlZpZXdwb3J0QXR0cmli
dXRlcz4odXJpLCAzLCAwLCAiUVdlYlZpZXdwb3J0QXR0cmlidXRlcyIsCisgICAgICAgICAgICBR
T2JqZWN0Ojp0cigiQ2Fubm90IGNyZWF0ZSBzZXBhcmF0ZSBpbnN0YW5jZSBvZiBRV2ViVmlld3Bv
cnRBdHRyaWJ1dGVzIikpOwogICAgIH0KIH07CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQy
L0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJLaXQyL0NoYW5nZUxvZwppbmRleCA4ZTk4YWE3Li5hMTk2
OTk3IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dl
YktpdDIvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMzMgQEAKKzIwMTEtMTEtMjEgIE1pY2hhZWwgQnJ1
bmluZyAgPG1pY2hhZWwuYnJ1bmluZ0Bub2tpYS5jb20+CisKKyAgICAgICAgW1FUXVtXSzJdQWRk
IChleHBlcmltZW50YWwpIHZpZXdwb3J0IGF0dHJpYnV0ZXMgdmlldyB0byBNaW5pYnJvd3Nlci9x
dAorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9NzI4OTMK
KworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBUaGlzIHBh
dGNoIGV4dGVuZHMgUVF1aWNrV2ViVmlld0V4cGVyaW1lbnRhbCBieSBhIHByb3BlcnR5IG5hbWVk
CisgICAgICAgIGF0dHJpYnV0ZXMsIHdoaWNoIGNvbnRhaW5zIHRoZSB2aWV3cG9ydCBzY2FsYWJp
bGl0eSBhbmQgbGF5b3V0CisgICAgICAgIHNpemUgaW5mb3JtYXRpb24uIFRoaXMgcHJvcGVydHkg
aXMgZXhwb3NlZCB0byBRTUwgdGhyb3VnaCB0aGUKKyAgICAgICAgZXhwZXJpbWVudGFsIGV4dGVu
c2lvbiBmb3IgUVF1aWNrV2ViVmlldy4KKworICAgICAgICAqIFRhcmdldC5wcmk6CisgICAgICAg
ICogVUlQcm9jZXNzL0FQSS9xdC9xcXVpY2t3ZWJ2aWV3LmNwcDoKKyAgICAgICAgKFFRdWlja1dl
YlZpZXdQcml2YXRlOjpjb21wdXRlVmlld3BvcnRDb25zdHJhaW50cyk6CisgICAgICAgIChRUXVp
Y2tXZWJWaWV3RXhwZXJpbWVudGFsOjpRUXVpY2tXZWJWaWV3RXhwZXJpbWVudGFsKToKKyAgICAg
ICAgKFFRdWlja1dlYlZpZXdFeHBlcmltZW50YWw6OmF0dHJpYnV0ZXMpOgorICAgICAgICAqIFVJ
UHJvY2Vzcy9BUEkvcXQvcXF1aWNrd2Vidmlld19wLmg6CisgICAgICAgICogVUlQcm9jZXNzL0FQ
SS9xdC9xd2Vidmlld3BvcnRhdHRyaWJ1dGVzLmNwcDogQWRkZWQuCisgICAgICAgIChRV2ViVmll
d3BvcnRBdHRyaWJ1dGVzOjpRV2ViVmlld3BvcnRBdHRyaWJ1dGVzKToKKyAgICAgICAgKFFXZWJW
aWV3cG9ydEF0dHJpYnV0ZXM6On5RV2ViVmlld3BvcnRBdHRyaWJ1dGVzKToKKyAgICAgICAgKFFX
ZWJWaWV3cG9ydEF0dHJpYnV0ZXM6OmluaXRpYWxTY2FsZSk6CisgICAgICAgIChRV2ViVmlld3Bv
cnRBdHRyaWJ1dGVzOjptaW5pbXVtU2NhbGUpOgorICAgICAgICAoUVdlYlZpZXdwb3J0QXR0cmli
dXRlczo6bWF4aW11bVNjYWxlKToKKyAgICAgICAgKFFXZWJWaWV3cG9ydEF0dHJpYnV0ZXM6Omlz
U2NhbGFibGUpOgorICAgICAgICAoUVdlYlZpZXdwb3J0QXR0cmlidXRlczo6bGF5b3V0V2lkdGgp
OgorICAgICAgICAoUVdlYlZpZXdwb3J0QXR0cmlidXRlczo6bGF5b3V0SGVpZ2h0KToKKyAgICAg
ICAgKFFXZWJWaWV3cG9ydEF0dHJpYnV0ZXM6OnVwZGF0ZUZyb21WaWV3cG9ydEF0dHJpYnV0ZXMp
OgorICAgICAgICAqIFVJUHJvY2Vzcy9BUEkvcXQvcXdlYnZpZXdwb3J0YXR0cmlidXRlc19wLmg6
IEFkZGVkLgorCiAyMDExLTExLTIxICBBbGV4aXMgTWVuYXJkICA8YWxleGlzLm1lbmFyZEBvcGVu
Ym9zc2Eub3JnPgogCiAgICAgICAgIFtRdF1bV0syXSBSRUdSRVNTSU9OKDEwMDQ4Myk6IEl0IG1h
ZGUgMiBBUEkgdGVzdHMgZmFpbApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdDIvVGFyZ2V0LnBy
aSBiL1NvdXJjZS9XZWJLaXQyL1RhcmdldC5wcmkKaW5kZXggMDBiOGQwYi4uZTM2YWY4MSAxMDA2
NDQKLS0tIGEvU291cmNlL1dlYktpdDIvVGFyZ2V0LnByaQorKysgYi9Tb3VyY2UvV2ViS2l0Mi9U
YXJnZXQucHJpCkBAIC0yNTIsNiArMjUyLDcgQEAgSEVBREVSUyArPSBcCiAgICAgVUlQcm9jZXNz
L0FQSS9xdC9xcXVpY2t3ZWJwYWdlX3BfcC5oIFwKICAgICBVSVByb2Nlc3MvQVBJL3F0L3FxdWlj
a3dlYnZpZXdfcC5oIFwKICAgICBVSVByb2Nlc3MvQVBJL3F0L3FxdWlja3dlYnZpZXdfcF9wLmgg
XAorICAgIFVJUHJvY2Vzcy9BUEkvcXQvcXdlYnZpZXdwb3J0YXR0cmlidXRlc19wLmggXAogICAg
IFVJUHJvY2Vzcy9BdXRoZW50aWNhdGlvbi9BdXRoZW50aWNhdGlvbkNoYWxsZW5nZVByb3h5Lmgg
XAogICAgIFVJUHJvY2Vzcy9BdXRoZW50aWNhdGlvbi9BdXRoZW50aWNhdGlvbkRlY2lzaW9uTGlz
dGVuZXIuaCBcCiAgICAgVUlQcm9jZXNzL0F1dGhlbnRpY2F0aW9uL1dlYkNyZWRlbnRpYWwuaCBc
CkBAIC01NTQsNiArNTU1LDcgQEAgU09VUkNFUyArPSBcCiAgICAgVUlQcm9jZXNzL0FQSS9xdC9x
cXVpY2t3ZWJwYWdlLmNwcCBcCiAgICAgVUlQcm9jZXNzL0FQSS9xdC9xcXVpY2t3ZWJ2aWV3LmNw
cCBcCiAgICAgVUlQcm9jZXNzL0FQSS9xdC9xd2VicHJlZmVyZW5jZXMuY3BwIFwKKyAgICBVSVBy
b2Nlc3MvQVBJL3F0L3F3ZWJ2aWV3cG9ydGF0dHJpYnV0ZXMuY3BwIFwKICAgICBVSVByb2Nlc3Mv
QXV0aGVudGljYXRpb24vQXV0aGVudGljYXRpb25DaGFsbGVuZ2VQcm94eS5jcHAgXAogICAgIFVJ
UHJvY2Vzcy9BdXRoZW50aWNhdGlvbi9BdXRoZW50aWNhdGlvbkRlY2lzaW9uTGlzdGVuZXIuY3Bw
IFwKICAgICBVSVByb2Nlc3MvQXV0aGVudGljYXRpb24vV2ViQ3JlZGVudGlhbC5jcHAgXApkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL0FQSS9xdC9xcXVpY2t3ZWJ2aWV3LmNw
cCBiL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9BUEkvcXQvcXF1aWNrd2Vidmlldy5jcHAKaW5k
ZXggZjE0NmMyYi4uMmIzMzc2ZCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvVUlQcm9jZXNz
L0FQSS9xdC9xcXVpY2t3ZWJ2aWV3LmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3Mv
QVBJL3F0L3FxdWlja3dlYnZpZXcuY3BwCkBAIC0zMCw2ICszMCw3IEBACiAjaW5jbHVkZSAicXF1
aWNrd2VicGFnZV9wX3AuaCIKICNpbmNsdWRlICJxcXVpY2t3ZWJ2aWV3X3BfcC5oIgogI2luY2x1
ZGUgInF3ZWJwcmVmZXJlbmNlc19wX3AuaCIKKyNpbmNsdWRlICJxd2Vidmlld3BvcnRhdHRyaWJ1
dGVzX3AuaCIKIAogI2luY2x1ZGUgPFF0RGVjbGFyYXRpdmUvUVF1aWNrQ2FudmFzPgogI2luY2x1
ZGUgPFF0V2lkZ2V0cy9RRmlsZURpYWxvZz4KQEAgLTIxNCw2ICsyMTUsOCBAQCBRdFZpZXdwb3J0
SW50ZXJhY3Rpb25FbmdpbmU6OkNvbnN0cmFpbnRzIFFRdWlja1dlYlZpZXdQcml2YXRlOjpjb21w
dXRlVmlld3BvcnRDbwogICAgIG5ld0NvbnN0cmFpbnRzLmRldmljZVBpeGVsUmF0aW8gPSBhdHRy
LmRldmljZVBpeGVsUmF0aW87CiAgICAgbmV3Q29uc3RyYWludHMuaXNVc2VyU2NhbGFibGUgPSAh
IWF0dHIudXNlclNjYWxhYmxlOwogCisgICAgcS0+bV9leHBlcmltZW50YWwtPmF0dHJpYnV0ZXMo
KS0+dXBkYXRlRnJvbVZpZXdwb3J0QXR0cmlidXRlcyhhdHRyKTsKKwogICAgIHJldHVybiBuZXdD
b25zdHJhaW50czsKIH0KIApAQCAtNDA5LDYgKzQxMiw3IEBAIFFRdWlja1dlYlZpZXdFeHBlcmlt
ZW50YWw6OlFRdWlja1dlYlZpZXdFeHBlcmltZW50YWwoUVF1aWNrV2ViVmlldyAqd2ViVmlldykK
ICAgICA6IFFPYmplY3Qod2ViVmlldykKICAgICAsIHFfcHRyKHdlYlZpZXcpCiAgICAgLCBkX3B0
cih3ZWJWaWV3LT5kX3B0ci5kYXRhKCkpCisgICAgLCBtX2F0dHJpYnV0ZXMobmV3IFFXZWJWaWV3
cG9ydEF0dHJpYnV0ZXModGhpcykpCiB7CiB9CiAKQEAgLTQ2Nyw2ICs0NzEsMTEgQEAgdm9pZCBR
UXVpY2tXZWJWaWV3RXhwZXJpbWVudGFsOjpzZXRQcm9tcHREaWFsb2coUURlY2xhcmF0aXZlQ29t
cG9uZW50KiBwcm9tcHREaWEKICAgICBlbWl0IHByb21wdERpYWxvZ0NoYW5nZWQoKTsKIH0KIAor
UVdlYlZpZXdwb3J0QXR0cmlidXRlcyogUVF1aWNrV2ViVmlld0V4cGVyaW1lbnRhbDo6YXR0cmli
dXRlcygpCit7CisgICAgcmV0dXJuIG1fYXR0cmlidXRlczsKK30KKwogUVF1aWNrV2ViVmlldzo6
UVF1aWNrV2ViVmlldyhRUXVpY2tJdGVtKiBwYXJlbnQpCiAgICAgOiBRUXVpY2tJdGVtKHBhcmVu
dCkKICAgICAsIGRfcHRyKG5ldyBRUXVpY2tXZWJWaWV3UHJpdmF0ZSh0aGlzKSkKZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9BUEkvcXQvcXF1aWNrd2Vidmlld19wLmggYi9T
b3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJL3F0L3FxdWlja3dlYnZpZXdfcC5oCmluZGV4IDVj
OGYyMzYuLmIyNTI5MjUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9BUEkv
cXQvcXF1aWNrd2Vidmlld19wLmgKKysrIGIvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL0FQSS9x
dC9xcXVpY2t3ZWJ2aWV3X3AuaApAQCAtMzEsNiArMzEsNyBAQCBjbGFzcyBRUXVpY2tXZWJWaWV3
UHJpdmF0ZTsKIGNsYXNzIFFRdWlja1dlYlZpZXdFeHBlcmltZW50YWw7CiBjbGFzcyBRV2ViRG93
bmxvYWRJdGVtOwogY2xhc3MgUVdlYlByZWZlcmVuY2VzOworY2xhc3MgUVdlYlZpZXdwb3J0QXR0
cmlidXRlczsKIAogbmFtZXNwYWNlIFdUUiB7CiBjbGFzcyBQbGF0Zm9ybVdlYlZpZXc7CkBAIC0x
NjQsNiArMTY1LDcgQEAgY2xhc3MgUVdFQktJVF9FWFBPUlQgUVF1aWNrV2ViVmlld0V4cGVyaW1l
bnRhbCA6IHB1YmxpYyBRT2JqZWN0IHsKICAgICBRX1BST1BFUlRZKFFEZWNsYXJhdGl2ZUNvbXBv
bmVudCogYWxlcnREaWFsb2cgUkVBRCBhbGVydERpYWxvZyBXUklURSBzZXRBbGVydERpYWxvZyBO
T1RJRlkgYWxlcnREaWFsb2dDaGFuZ2VkKQogICAgIFFfUFJPUEVSVFkoUURlY2xhcmF0aXZlQ29t
cG9uZW50KiBjb25maXJtRGlhbG9nIFJFQUQgY29uZmlybURpYWxvZyBXUklURSBzZXRDb25maXJt
RGlhbG9nIE5PVElGWSBjb25maXJtRGlhbG9nQ2hhbmdlZCkKICAgICBRX1BST1BFUlRZKFFEZWNs
YXJhdGl2ZUNvbXBvbmVudCogcHJvbXB0RGlhbG9nIFJFQUQgcHJvbXB0RGlhbG9nIFdSSVRFIHNl
dFByb21wdERpYWxvZyBOT1RJRlkgcHJvbXB0RGlhbG9nQ2hhbmdlZCkKKyAgICBRX1BST1BFUlRZ
KFFXZWJWaWV3cG9ydEF0dHJpYnV0ZXMqIGF0dHJpYnV0ZXMgUkVBRCBhdHRyaWJ1dGVzIENPTlNU
QU5UIEZJTkFMKQogCiBwdWJsaWM6CiAgICAgUVF1aWNrV2ViVmlld0V4cGVyaW1lbnRhbChRUXVp
Y2tXZWJWaWV3KiB3ZWJWaWV3KTsKQEAgLTE3NSw2ICsxNzcsNyBAQCBwdWJsaWM6CiAgICAgdm9p
ZCBzZXRDb25maXJtRGlhbG9nKFFEZWNsYXJhdGl2ZUNvbXBvbmVudCopOwogICAgIFFEZWNsYXJh
dGl2ZUNvbXBvbmVudCogcHJvbXB0RGlhbG9nKCkgY29uc3Q7CiAgICAgdm9pZCBzZXRQcm9tcHRE
aWFsb2coUURlY2xhcmF0aXZlQ29tcG9uZW50Kik7CisgICAgUVdlYlZpZXdwb3J0QXR0cmlidXRl
cyogYXR0cmlidXRlcygpOwogCiBwdWJsaWMgUV9TTE9UUzoKICAgICB2b2lkIHNldFVzZVRyYWRp
dGlvbmFsRGVza3RvcEJlaGF2aW91cihib29sIGVuYWJsZSk7CkBAIC0xODcsNiArMTkwLDcgQEAg
UV9TSUdOQUxTOgogcHJpdmF0ZToKICAgICBRUXVpY2tXZWJWaWV3KiBxX3B0cjsKICAgICBRUXVp
Y2tXZWJWaWV3UHJpdmF0ZSogZF9wdHI7CisgICAgUVdlYlZpZXdwb3J0QXR0cmlidXRlcyogbV9h
dHRyaWJ1dGVzOwogCiAgICAgUV9ERUNMQVJFX1BSSVZBVEUoUVF1aWNrV2ViVmlldykKICAgICBR
X0RFQ0xBUkVfUFVCTElDKFFRdWlja1dlYlZpZXcpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0
Mi9VSVByb2Nlc3MvQVBJL3F0L3F3ZWJ2aWV3cG9ydGF0dHJpYnV0ZXMuY3BwIGIvU291cmNlL1dl
YktpdDIvVUlQcm9jZXNzL0FQSS9xdC9xd2Vidmlld3BvcnRhdHRyaWJ1dGVzLmNwcApuZXcgZmls
ZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4zMzE0OTg2Ci0tLSAvZGV2L251bGwKKysrIGIv
U291cmNlL1dlYktpdDIvVUlQcm9jZXNzL0FQSS9xdC9xd2Vidmlld3BvcnRhdHRyaWJ1dGVzLmNw
cApAQCAtMCwwICsxLDg5IEBACisvKgorICogQ29weXJpZ2h0IChDKSAyMDExIE5va2lhIENvcnBv
cmF0aW9uIGFuZC9vciBpdHMgc3Vic2lkaWFyeSgtaWVzKQorICoKKyAqIFRoaXMgbGlicmFyeSBp
cyBmcmVlIHNvZnR3YXJlOyB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IKKyAqIG1vZGlm
eSBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBMaWJyYXJ5IEdlbmVyYWwgUHVibGljCisg
KiBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieSB0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uOyBl
aXRoZXIKKyAqIHZlcnNpb24gMiBvZiB0aGUgTGljZW5zZSwgb3IgKGF0IHlvdXIgb3B0aW9uKSBh
bnkgbGF0ZXIgdmVyc2lvbi4KKyAqCisgKiBUaGlzIHByb2dyYW0gaXMgZGlzdHJpYnV0ZWQgaW4g
dGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCwKKyAqIGJ1dCBXSVRIT1VUIEFOWSBXQVJS
QU5UWTsgd2l0aG91dCBldmVuIHRoZSBpbXBsaWVkIHdhcnJhbnR5IG9mCisgKiBNRVJDSEFOVEFC
SUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlIEdOVQor
ICogTGlicmFyeSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGZvciBtb3JlIGRldGFpbHMuCisgKgor
ICogWW91IHNob3VsZCBoYXZlIHJlY2VpdmVkIGEgY29weSBvZiB0aGUgR05VIExpYnJhcnkgR2Vu
ZXJhbCBQdWJsaWMgTGljZW5zZQorICogYWxvbmcgd2l0aCB0aGlzIHByb2dyYW07IHNlZSB0aGUg
ZmlsZSBDT1BZSU5HLkxJQi4gIElmIG5vdCwgd3JpdGUgdG8KKyAqIHRoZSBGcmVlIFNvZnR3YXJl
IEZvdW5kYXRpb24sIEluYy4sIDUxIEZyYW5rbGluIFN0cmVldCwgRmlmdGggRmxvb3IsCisgKiBC
b3N0b24sIE1BIDAyMTEwLTEzMDEsIFVTQS4KKyAqCisgKi8KKworI2luY2x1ZGUgImNvbmZpZy5o
IgorI2luY2x1ZGUgInF3ZWJ2aWV3cG9ydGF0dHJpYnV0ZXNfcC5oIgorCisjaW5jbHVkZSA8V2Vi
Q29yZS9WaWV3cG9ydEFyZ3VtZW50cy5oPgorCitRV2ViVmlld3BvcnRBdHRyaWJ1dGVzOjpRV2Vi
Vmlld3BvcnRBdHRyaWJ1dGVzKFFPYmplY3QqIHBhcmVudCkKKyAgICA6IFFPYmplY3QocGFyZW50
KQoreworCit9CisKK1FXZWJWaWV3cG9ydEF0dHJpYnV0ZXM6On5RV2ViVmlld3BvcnRBdHRyaWJ1
dGVzKCkKK3sKKworfQorCitxcmVhbCBRV2ViVmlld3BvcnRBdHRyaWJ1dGVzOjppbml0aWFsU2Nh
bGUoKSBjb25zdAoreworICAgIHJldHVybiBtX2luaXRpYWxTY2FsZTsKK30KKworcXJlYWwgUVdl
YlZpZXdwb3J0QXR0cmlidXRlczo6bWluaW11bVNjYWxlKCkgY29uc3QKK3sKKyAgICByZXR1cm4g
bV9taW5pbXVtU2NhbGU7Cit9CisKK3FyZWFsIFFXZWJWaWV3cG9ydEF0dHJpYnV0ZXM6Om1heGlt
dW1TY2FsZSgpIGNvbnN0Cit7CisgICAgcmV0dXJuIG1fbWF4aW11bVNjYWxlOworfQorCitib29s
IFFXZWJWaWV3cG9ydEF0dHJpYnV0ZXM6OmlzU2NhbGFibGUoKSBjb25zdAoreworICAgIHJldHVy
biBtX2lzU2NhbGFibGU7Cit9CisKK2ludCBRV2ViVmlld3BvcnRBdHRyaWJ1dGVzOjpsYXlvdXRX
aWR0aCgpIGNvbnN0Cit7CisgICAgcmV0dXJuIG1fbGF5b3V0U2l6ZS53aWR0aCgpOworfQorCitp
bnQgUVdlYlZpZXdwb3J0QXR0cmlidXRlczo6bGF5b3V0SGVpZ2h0KCkgY29uc3QKK3sKKyAgICBy
ZXR1cm4gbV9sYXlvdXRTaXplLmhlaWdodCgpOworfQorIAordm9pZCBRV2ViVmlld3BvcnRBdHRy
aWJ1dGVzOjp1cGRhdGVGcm9tVmlld3BvcnRBdHRyaWJ1dGVzKGNvbnN0IFdlYkNvcmU6OlZpZXdw
b3J0QXR0cmlidXRlcyYgYXR0cikKK3sKKyAgICBpZiAobV9pbml0aWFsU2NhbGUgIT0gYXR0ci5p
bml0aWFsU2NhbGUpIHsKKyAgICAgICAgbV9pbml0aWFsU2NhbGUgPSBhdHRyLmluaXRpYWxTY2Fs
ZTsKKyAgICAgICAgZW1pdCBpbml0aWFsU2NhbGVVcGRhdGVkKCk7CisgICAgfQorICAgIGlmICht
X21pbmltdW1TY2FsZSAhPSBhdHRyLm1pbmltdW1TY2FsZSkgeworICAgICAgICBtX21pbmltdW1T
Y2FsZSA9IGF0dHIubWluaW11bVNjYWxlOworICAgICAgICBlbWl0IG1pbmltdW1TY2FsZVVwZGF0
ZWQoKTsKKyAgICB9CisgICAgaWYgKG1fbWF4aW11bVNjYWxlICE9IGF0dHIubWF4aW11bVNjYWxl
KSB7CisgICAgICAgIG1fbWF4aW11bVNjYWxlID0gYXR0ci5tYXhpbXVtU2NhbGU7CisgICAgICAg
IGVtaXQgbWF4aW11bVNjYWxlVXBkYXRlZCgpOworICAgIH0KKyAgICBpZiAobV9pc1NjYWxhYmxl
ICE9ICEhYXR0ci51c2VyU2NhbGFibGUpIHsKKyAgICAgICAgbV9pc1NjYWxhYmxlID0gISFhdHRy
LnVzZXJTY2FsYWJsZTsKKyAgICAgICAgZW1pdCBpc1NjYWxhYmxlVXBkYXRlZCgpOworICAgIH0K
KyAgICBpZiAobV9sYXlvdXRTaXplICE9IFFTaXplKGF0dHIubGF5b3V0U2l6ZSkpIHsKKyAgICAg
ICAgbV9sYXlvdXRTaXplID0gYXR0ci5sYXlvdXRTaXplOworICAgICAgICBlbWl0IGxheW91dFNp
emVVcGRhdGVkKCk7CisgICAgfQorfQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdDIvVUlQcm9j
ZXNzL0FQSS9xdC9xd2Vidmlld3BvcnRhdHRyaWJ1dGVzX3AuaCBiL1NvdXJjZS9XZWJLaXQyL1VJ
UHJvY2Vzcy9BUEkvcXQvcXdlYnZpZXdwb3J0YXR0cmlidXRlc19wLmgKbmV3IGZpbGUgbW9kZSAx
MDA2NDQKaW5kZXggMDAwMDAwMC4uODZjNWFkNwotLS0gL2Rldi9udWxsCisrKyBiL1NvdXJjZS9X
ZWJLaXQyL1VJUHJvY2Vzcy9BUEkvcXQvcXdlYnZpZXdwb3J0YXR0cmlidXRlc19wLmgKQEAgLTAs
MCArMSw3MCBAQAorLyoKKyAqIENvcHlyaWdodCAoQykgMjAxMSBOb2tpYSBDb3Jwb3JhdGlvbiBh
bmQvb3IgaXRzIHN1YnNpZGlhcnkoLWllcykKKyAqCisgKiBUaGlzIGxpYnJhcnkgaXMgZnJlZSBz
b2Z0d2FyZTsgeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29yCisgKiBtb2RpZnkgaXQgdW5k
ZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUgTGlicmFyeSBHZW5lcmFsIFB1YmxpYworICogTGljZW5z
ZSBhcyBwdWJsaXNoZWQgYnkgdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbjsgZWl0aGVyCisg
KiB2ZXJzaW9uIDIgb2YgdGhlIExpY2Vuc2UsIG9yIChhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVy
IHZlcnNpb24uCisgKgorICogVGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3Bl
IHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCisgKiBidXQgV0lUSE9VVCBBTlkgV0FSUkFOVFk7IHdp
dGhvdXQgZXZlbiB0aGUgaW1wbGllZCB3YXJyYW50eSBvZgorICogTUVSQ0hBTlRBQklMSVRZIG9y
IEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFLiAgU2VlIHRoZSBHTlUKKyAqIExpYnJh
cnkgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBmb3IgbW9yZSBkZXRhaWxzLgorICoKKyAqIFlvdSBz
aG91bGQgaGF2ZSByZWNlaXZlZCBhIGNvcHkgb2YgdGhlIEdOVSBMaWJyYXJ5IEdlbmVyYWwgUHVi
bGljIExpY2Vuc2UKKyAqIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtOyBzZWUgdGhlIGZpbGUgQ09Q
WUlORy5MSUIuICBJZiBub3QsIHdyaXRlIHRvCisgKiB0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0
aW9uLCBJbmMuLCA1MSBGcmFua2xpbiBTdHJlZXQsIEZpZnRoIEZsb29yLAorICogQm9zdG9uLCBN
QSAwMjExMC0xMzAxLCBVU0EuCisgKgorICovCisKKyNpZm5kZWYgcXdlYnZpZXdwb3J0YXR0cmli
dXRlc19wX2gKKyNkZWZpbmUgcXdlYnZpZXdwb3J0YXR0cmlidXRlc19wX2gKKworI2luY2x1ZGUg
InF3ZWJraXRnbG9iYWwuaCIKKyNpbmNsdWRlIDxRdENvcmUvUU9iamVjdD4KKyNpbmNsdWRlIDxR
dENvcmUvUVNpemU+CisjaW5jbHVkZSA8UXREZWNsYXJhdGl2ZS9RdERlY2xhcmF0aXZlPgorCitu
YW1lc3BhY2UgV2ViQ29yZSB7CitjbGFzcyBWaWV3cG9ydEF0dHJpYnV0ZXM7Cit9CisKK2NsYXNz
IFFXRUJLSVRfRVhQT1JUIFFXZWJWaWV3cG9ydEF0dHJpYnV0ZXMgOiBwdWJsaWMgUU9iamVjdCB7
CisgICAgUV9PQkpFQ1QKKyAgICBRX1BST1BFUlRZKHFyZWFsIGluaXRpYWxTY2FsZSBSRUFEIGlu
aXRpYWxTY2FsZSBOT1RJRlkgaW5pdGlhbFNjYWxlVXBkYXRlZCkKKyAgICBRX1BST1BFUlRZKHFy
ZWFsIG1pbmltdW1TY2FsZSBSRUFEIG1pbmltdW1TY2FsZSBOT1RJRlkgbWluaW11bVNjYWxlVXBk
YXRlZCkKKyAgICBRX1BST1BFUlRZKHFyZWFsIG1heGltdW1TY2FsZSBSRUFEIG1heGltdW1TY2Fs
ZSBOT1RJRlkgbWF4aW11bVNjYWxlVXBkYXRlZCkKKyAgICBRX1BST1BFUlRZKGJvb2wgaXNTY2Fs
YWJsZSBSRUFEIGlzU2NhbGFibGUgTk9USUZZIGlzU2NhbGFibGVVcGRhdGVkKQorICAgIFFfUFJP
UEVSVFkoaW50IGxheW91dFdpZHRoIFJFQUQgbGF5b3V0V2lkdGggTk9USUZZIGxheW91dFNpemVV
cGRhdGVkKQorICAgIFFfUFJPUEVSVFkoaW50IGxheW91dEhlaWdodCBSRUFEIGxheW91dEhlaWdo
dCBOT1RJRlkgbGF5b3V0U2l6ZVVwZGF0ZWQpCisKK3NpZ25hbHM6CisgICAgdm9pZCBpbml0aWFs
U2NhbGVVcGRhdGVkKCk7CisgICAgdm9pZCBtYXhpbXVtU2NhbGVVcGRhdGVkKCk7CisgICAgdm9p
ZCBtaW5pbXVtU2NhbGVVcGRhdGVkKCk7CisgICAgdm9pZCBpc1NjYWxhYmxlVXBkYXRlZCgpOwor
ICAgIHZvaWQgbGF5b3V0U2l6ZVVwZGF0ZWQoKTsKKworcHVibGljOgorICAgIFFXZWJWaWV3cG9y
dEF0dHJpYnV0ZXMoUU9iamVjdCogcGFyZW50ID0gMCk7CisgICAgdmlydHVhbCB+UVdlYlZpZXdw
b3J0QXR0cmlidXRlcygpOworCisgICAgcXJlYWwgaW5pdGlhbFNjYWxlKCkgY29uc3Q7CisgICAg
cXJlYWwgbWluaW11bVNjYWxlKCkgY29uc3Q7CisgICAgcXJlYWwgbWF4aW11bVNjYWxlKCkgY29u
c3Q7CisgICAgYm9vbCBpc1NjYWxhYmxlKCkgY29uc3Q7CisKKyAgICBpbnQgbGF5b3V0V2lkdGgo
KSBjb25zdDsKKyAgICBpbnQgbGF5b3V0SGVpZ2h0KCkgY29uc3Q7CisKKyAgICB2b2lkIHVwZGF0
ZUZyb21WaWV3cG9ydEF0dHJpYnV0ZXMoY29uc3QgV2ViQ29yZTo6Vmlld3BvcnRBdHRyaWJ1dGVz
JiBhdHRyKTsKK3ByaXZhdGU6CisgICAgcXJlYWwgbV9pbml0aWFsU2NhbGU7CisgICAgcXJlYWwg
bV9taW5pbXVtU2NhbGU7CisgICAgcXJlYWwgbV9tYXhpbXVtU2NhbGU7CisgICAgYm9vbCBtX2lz
U2NhbGFibGU7CisgICAgUVNpemUgbV9sYXlvdXRTaXplOworfTsKKworI2VuZGlmIC8vIHF3ZWJ2
aWV3cG9ydGF0dHJpYnV0ZXNfcF9oCmRpZmYgLS1naXQgYS9Tb3VyY2UvcXR3ZWJraXQtZXhwb3J0
Lm1hcCBiL1NvdXJjZS9xdHdlYmtpdC1leHBvcnQubWFwCmluZGV4IGE0MjYyMDMuLmQzOTg0ZWYg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9xdHdlYmtpdC1leHBvcnQubWFwCisrKyBiL1NvdXJjZS9xdHdl
YmtpdC1leHBvcnQubWFwCkBAIC0xMjQsNiArMTI0LDkgQEAgcXdrXzEuMCB7CiAgICAgICAgICpR
V2ViRG93bmxvYWRJdGVtOwogICAgICAgICBub24tdmlydHVhbD90aHVuaz90bz9RV2ViRG93bmxv
YWRJdGVtKjsKICAgICAgICAgUVdlYkRvd25sb2FkSXRlbTo6KjsKKyAgICAgICAgKlFXZWJWaWV3
cG9ydEF0dHJpYnV0ZXM7CisgICAgICAgIG5vbi12aXJ0dWFsP3RodW5rP3RvP1FXZWJWaWV3cG9y
dEF0dHJpYnV0ZXM7CisgICAgICAgIFFXZWJWaWV3cG9ydEF0dHJpYnV0ZXM6Oio7CiAgICAgICAg
ICpRUXVpY2tXZWJQYWdlOwogICAgICAgICBub24tdmlydHVhbD90aHVuaz90bz9RUXVpY2tXZWJQ
YWdlKjsKICAgICAgICAgUVF1aWNrV2ViUGFnZTo6KjsKZGlmZiAtLWdpdCBhL1Rvb2xzL0NoYW5n
ZUxvZyBiL1Rvb2xzL0NoYW5nZUxvZwppbmRleCBhNmU4NjMwLi4wNDk5NjQ5IDEwMDY0NAotLS0g
YS9Ub29scy9DaGFuZ2VMb2cKKysrIGIvVG9vbHMvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMjAgQEAK
KzIwMTEtMTEtMjEgIE1pY2hhZWwgQnJ1bmluZyAgPG1pY2hhZWwuYnJ1bmluZ0Bub2tpYS5jb20+
CisKKyAgICAgICAgW1FUXVtXSzJdQWRkIChleHBlcmltZW50YWwpIHZpZXdwb3J0IGF0dHJpYnV0
ZXMgdmlldyB0byBNaW5pYnJvd3Nlci9xdC4KKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5v
cmcvc2hvd19idWcuY2dpP2lkPTcyODkzCisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChP
T1BTISkuCisKKyAgICAgICAgVGhpcyBwYXRjaCBleHRlbmRzIFFRdWlja1dlYlZpZXdFeHBlcmlt
ZW50YWwgYnkgYSBwcm9wZXJ0eSBuYW1lZAorICAgICAgICBhdHRyaWJ1dGVzLCB3aGljaCBjb250
YWlucyB0aGUgdmlld3BvcnQgc2NhbGFiaWxpdHkgYW5kIGxheW91dAorICAgICAgICBzaXplIGlu
Zm9ybWF0aW9uLiBUaGlzIHByb3BlcnR5IGlzIGV4cG9zZWQgdG8gUU1MIHRocm91Z2ggdGhlCisg
ICAgICAgIGV4cGVyaW1lbnRhbCBleHRlbnNpb24gZm9yIFFRdWlja1dlYlZpZXcuCisKKyAgICAg
ICAgKiBNaW5pQnJvd3Nlci9xdC9NaW5pQnJvd3Nlci5wcm86CisgICAgICAgICogTWluaUJyb3dz
ZXIvcXQvTWluaUJyb3dzZXIucXJjOgorICAgICAgICAqIE1pbmlCcm93c2VyL3F0L3FtbC9Ccm93
c2VyV2luZG93LnFtbDoKKyAgICAgICAgKiBNaW5pQnJvd3Nlci9xdC9xbWwvVmlld3BvcnRBdHRy
aWJ1dGVzSXRlbS5xbWw6IEFkZGVkLgorCiAyMDExLTExLTIxICBZdXRhIEtpdGFtdXJhICA8eXV0
YWtAY2hyb21pdW0ub3JnPgogCiAgICAgICAgIFtHVEtdIEVuYWJsZSBXZWJTb2NrZXQgaHliaSB0
ZXN0cwpkaWZmIC0tZ2l0IGEvVG9vbHMvTWluaUJyb3dzZXIvcXQvTWluaUJyb3dzZXIucHJvIGIv
VG9vbHMvTWluaUJyb3dzZXIvcXQvTWluaUJyb3dzZXIucHJvCmluZGV4IDVjNDMxOTguLmE2NDc4
ZDQgMTAwNjQ0Ci0tLSBhL1Rvb2xzL01pbmlCcm93c2VyL3F0L01pbmlCcm93c2VyLnBybworKysg
Yi9Ub29scy9NaW5pQnJvd3Nlci9xdC9NaW5pQnJvd3Nlci5wcm8KQEAgLTM1LDQgKzM1LDUgQEAg
bWFjeDogUVQgKz0geG1sCiBSRVNPVVJDRVMgKz0gTWluaUJyb3dzZXIucXJjCiAKIE9USEVSX0ZJ
TEVTICs9IFwKLSAgICBxbWwvQnJvd3NlcldpbmRvdy5xbWwKKyAgICBxbWwvQnJvd3NlcldpbmRv
dy5xbWwgXAorICAgIHFtbC9WaWV3cG9ydEF0dHJpYnV0ZXNJdGVtLnFtbApkaWZmIC0tZ2l0IGEv
VG9vbHMvTWluaUJyb3dzZXIvcXQvTWluaUJyb3dzZXIucXJjIGIvVG9vbHMvTWluaUJyb3dzZXIv
cXQvTWluaUJyb3dzZXIucXJjCmluZGV4IGE1N2E5NTQuLmJhMWJkODQgMTAwNjQ0Ci0tLSBhL1Rv
b2xzL01pbmlCcm93c2VyL3F0L01pbmlCcm93c2VyLnFyYworKysgYi9Ub29scy9NaW5pQnJvd3Nl
ci9xdC9NaW5pQnJvd3Nlci5xcmMKQEAgLTUsNiArNSw3IEBACiAgICAgICAgIDxmaWxlPmljb25z
L3JlZnJlc2gucG5nPC9maWxlPgogICAgICAgICA8ZmlsZT5pY29ucy9zdG9wLnBuZzwvZmlsZT4K
ICAgICAgICAgPGZpbGU+cW1sL0Jyb3dzZXJXaW5kb3cucW1sPC9maWxlPgorICAgICAgICA8Zmls
ZT5xbWwvVmlld3BvcnRBdHRyaWJ1dGVzSXRlbS5xbWw8L2ZpbGU+CiAgICAgICAgIDxmaWxlPnVz
ZXJhZ2VudGxpc3QudHh0PC9maWxlPgogICAgIDwvcXJlc291cmNlPgogPC9SQ0M+CmRpZmYgLS1n
aXQgYS9Ub29scy9NaW5pQnJvd3Nlci9xdC9xbWwvQnJvd3NlcldpbmRvdy5xbWwgYi9Ub29scy9N
aW5pQnJvd3Nlci9xdC9xbWwvQnJvd3NlcldpbmRvdy5xbWwKaW5kZXggNWNjMTUyYS4uZjMwMjI4
ZCAxMDA2NDQKLS0tIGEvVG9vbHMvTWluaUJyb3dzZXIvcXQvcW1sL0Jyb3dzZXJXaW5kb3cucW1s
CisrKyBiL1Rvb2xzL01pbmlCcm93c2VyL3F0L3FtbC9Ccm93c2VyV2luZG93LnFtbApAQCAtMjgs
NiArMjgsNyBAQAogCiBpbXBvcnQgUXRRdWljayAyLjAKIGltcG9ydCBRdFdlYktpdCAzLjAKK2lt
cG9ydCBRdFdlYktpdC5leHBlcmltZW50YWwgMy4wCiAKIFJlY3RhbmdsZSB7CiAgICAgLy8gRG8g
bm90IGRlZmluZSBhbmNob3JzIG9yIGFuIGluaXRpYWwgc2l6ZSBoZXJlISBUaGlzIHdvdWxkIG1l
c3MgdXAgd2l0aCBRU0dWaWV3OjpTaXplUm9vdE9iamVjdFRvVmlldy4KQEAgLTQ1LDYgKzQ2LDE5
IEBAIFJlY3RhbmdsZSB7CiAgICAgICAgIGFkZHJlc3NMaW5lLnNlbGVjdEFsbCgpCiAgICAgfQog
CisgICAgZnVuY3Rpb24gdXBkYXRlVmlld3BvcnRBdHRyaWJ1dGVzKCkgeworICAgICAgICBpZiAo
IXZpZXdwb3J0QXR0cmlidXRlc0l0ZW0udmlzaWJsZSkKKyAgICAgICAgICAgIHJldHVybgorCisg
ICAgICAgIHZpZXdwb3J0QXR0cmlidXRlc0l0ZW0uaW5pdGlhbFNjYWxlID0gd2ViVmlldy5leHBl
cmltZW50YWwuYXR0cmlidXRlcy5pbml0aWFsU2NhbGUKKyAgICAgICAgdmlld3BvcnRBdHRyaWJ1
dGVzSXRlbS5taW5pbXVtU2NhbGUgPSB3ZWJWaWV3LmV4cGVyaW1lbnRhbC5hdHRyaWJ1dGVzLm1p
bmltdW1TY2FsZQorICAgICAgICB2aWV3cG9ydEF0dHJpYnV0ZXNJdGVtLm1heGltdW1TY2FsZSA9
IHdlYlZpZXcuZXhwZXJpbWVudGFsLmF0dHJpYnV0ZXMubWF4aW11bVNjYWxlCisKKyAgICAgICAg
dmlld3BvcnRBdHRyaWJ1dGVzSXRlbS5pc1NjYWxhYmxlID0gd2ViVmlldy5leHBlcmltZW50YWwu
YXR0cmlidXRlcy5pc1NjYWxhYmxlCisgICAgICAgIHZpZXdwb3J0QXR0cmlidXRlc0l0ZW0ubGF5
b3V0V2lkdGggPSB3ZWJWaWV3LmV4cGVyaW1lbnRhbC5hdHRyaWJ1dGVzLmxheW91dFdpZHRoCisg
ICAgICAgIHZpZXdwb3J0QXR0cmlidXRlc0l0ZW0ubGF5b3V0SGVpZ2h0ID0gd2ViVmlldy5leHBl
cmltZW50YWwuYXR0cmlidXRlcy5sYXlvdXRIZWlnaHQKKyAgICB9CisKICAgICBSZWN0YW5nbGUg
ewogICAgICAgICBpZDogbmF2aWdhdGlvbkJhcgogICAgICAgICBjb2xvcjogIiNlZmVmZWYiCkBA
IC0xMzQsNiArMTQ4LDI2IEBAIFJlY3RhbmdsZSB7CiAgICAgICAgICAgICAgICAgICAgIH0KICAg
ICAgICAgICAgICAgICB9CiAgICAgICAgICAgICB9CisKKyAgICAgICAgICAgIFJlY3RhbmdsZSB7
CisgICAgICAgICAgICAgICAgaWQ6IGRlYnVnQnV0dG9uCisgICAgICAgICAgICAgICAgaGVpZ2h0
OiBuYXZpZ2F0aW9uQmFyLmhlaWdodCAtIDIKKyAgICAgICAgICAgICAgICB3aWR0aDogaGVpZ2h0
CisgICAgICAgICAgICAgICAgY29sb3I6ICIjZWZlZmVmIgorCisgICAgICAgICAgICAgICAgSW1h
Z2UgeworICAgICAgICAgICAgICAgICAgICBhbmNob3JzLmNlbnRlckluOiBwYXJlbnQKKyAgICAg
ICAgICAgICAgICAgICAgc291cmNlOiAiLi4vaWNvbnMvcmVmcmVzaC5wbmciCisgICAgICAgICAg
ICAgICAgfQorCisgICAgICAgICAgICAgICAgTW91c2VBcmVhIHsKKyAgICAgICAgICAgICAgICAg
ICAgYW5jaG9ycy5maWxsOiBwYXJlbnQKKyAgICAgICAgICAgICAgICAgICAgb25DbGlja2VkOiB7
CisgICAgICAgICAgICAgICAgICAgICAgIHZpZXdwb3J0QXR0cmlidXRlc0l0ZW0udmlzaWJsZSA9
ICF2aWV3cG9ydEF0dHJpYnV0ZXNJdGVtLnZpc2libGUgCisgICAgICAgICAgICAgICAgICAgICAg
IHVwZGF0ZVZpZXdwb3J0QXR0cmlidXRlcygpCisgICAgICAgICAgICAgICAgICAgIH0KKyAgICAg
ICAgICAgICAgICB9CisgICAgICAgICAgICB9CiAgICAgICAgIH0KICAgICAgICAgUmVjdGFuZ2xl
IHsKICAgICAgICAgICAgIGNvbG9yOiAid2hpdGUiCkBAIC0yMDMsNiArMjM3LDIwIEBAIFJlY3Rh
bmdsZSB7CiAgICAgICAgICAgICAgICAgY29uc29sZS5sb2coIkxvYWRlZDoiLCB3ZWJWaWV3LnVy
bCk7CiAgICAgICAgICAgICBmb3JjZUFjdGl2ZUZvY3VzKCk7CiAgICAgICAgIH0KKyAgICAgICAg
b25IZWlnaHRDaGFuZ2VkOiB1cGRhdGVWaWV3cG9ydEF0dHJpYnV0ZXMoKQorICAgICAgICBvbldp
ZHRoQ2hhbmdlZDogdXBkYXRlVmlld3BvcnRBdHRyaWJ1dGVzKCkKKyAgICAgICAgb25Mb2FkU3Vj
Y2VlZGVkOiB1cGRhdGVWaWV3cG9ydEF0dHJpYnV0ZXMoKQorICAgIH0KKworICAgIFZpZXdwb3J0
QXR0cmlidXRlc0l0ZW0geworICAgICAgICBpZDogdmlld3BvcnRBdHRyaWJ1dGVzSXRlbQorICAg
ICAgICBhbmNob3JzIHsKKyAgICAgICAgICAgIHRvcDogbmF2aWdhdGlvbkJhci5ib3R0b20KKyAg
ICAgICAgICAgIGxlZnQ6IHBhcmVudC5sZWZ0CisgICAgICAgICAgICByaWdodDogcGFyZW50LnJp
Z2h0CisgICAgICAgICAgICBib3R0b206IHBhcmVudC5ib3R0b20KKyAgICAgICAgfQorICAgICAg
ICB2aXNpYmxlOiBmYWxzZQogICAgIH0KIAogICAgIEtleXMub25QcmVzc2VkOiB7CmRpZmYgLS1n
aXQgYS9Ub29scy9NaW5pQnJvd3Nlci9xdC9xbWwvVmlld3BvcnRBdHRyaWJ1dGVzSXRlbS5xbWwg
Yi9Ub29scy9NaW5pQnJvd3Nlci9xdC9xbWwvVmlld3BvcnRBdHRyaWJ1dGVzSXRlbS5xbWwKbmV3
IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uY2I1YmQzMwotLS0gL2Rldi9udWxsCisr
KyBiL1Rvb2xzL01pbmlCcm93c2VyL3F0L3FtbC9WaWV3cG9ydEF0dHJpYnV0ZXNJdGVtLnFtbApA
QCAtMCwwICsxLDMzIEBACitpbXBvcnQgUXRRdWljayAyLjAKK2ltcG9ydCBRdFdlYktpdCAzLjAK
KworUmVjdGFuZ2xlIHsKKyAgICBjb2xvcjogIiMwMDAwMDAiCisgICAgb3BhY2l0eTogMC41CisK
KworICAgIHByb3BlcnR5IHJlYWwgaW5pdGlhbFNjYWxlCisgICAgcHJvcGVydHkgcmVhbCBtYXhp
bXVtU2NhbGUKKyAgICBwcm9wZXJ0eSByZWFsIG1pbmltdW1TY2FsZQorICAgIHByb3BlcnR5IGlu
dCBsYXlvdXRXaWR0aAorICAgIHByb3BlcnR5IGludCBsYXlvdXRIZWlnaHQKKyAgICBwcm9wZXJ0
eSBib29sIGlzU2NhbGFibGUKKworICAgIFRleHQgeworICAgICAgICBpZDogc2NhbGVJbmZvVGV4
dAorICAgICAgICB0ZXh0OiAiU2NhbGUgZmFjdG9ycyAoaW5pdGlhbCwgbWF4LCBtaW4pIDogKCIg
KyBpbml0aWFsU2NhbGUgKyAiLCAiICsgbWF4aW11bVNjYWxlICsgIiwgIiArIG1pbmltdW1TY2Fs
ZSArICIpIgorICAgICAgICBjb2xvcjogIiNmZmZmZmYiCisgICAgfQorICAgIFRleHQgeworICAg
ICAgIGlkOiBsYXlvdXRTaXplSW5mb1RleHQKKyAgICAgICBhbmNob3JzLnRvcDogc2NhbGVJbmZv
VGV4dC5ib3R0b20gCisgICAgICAgdGV4dDogIlZpZXdwb3J0IGxheW91dCBzaXplOiAoIiArIGxh
eW91dFdpZHRoICsgIngiICsgbGF5b3V0SGVpZ2h0ICsgIikiIAorICAgICAgIGNvbG9yOiAiI2Zm
ZmZmZiIKKyAgICB9CisgICAgVGV4dCB7CisgICAgICAgIGlkOiBzY2FsYWJpbGl0eUluZm9UZXh0
CisgICAgICAgIGFuY2hvcnMudG9wOiBsYXlvdXRTaXplSW5mb1RleHQuYm90dG9tCisgICAgICAg
IHRleHQ6ICJWaWV3ICIgKyAoaXNTY2FsYWJsZSA/ICJpcyAiIDogImlzIG5vdCAiICkgKyAic2Nh
bGFibGUuIgorICAgICAgIGNvbG9yOiAiI2ZmZmZmZiIKKyAgICB9Cit9Ci0tIAoxLjcuNC4xCgo=
</data>
<flag name="review"
          id="115314"
          type_id="1"
          status="-"
          setter="vestbo"
    />
    <flag name="commit-queue"
          id="115311"
          type_id="3"
          status="-"
          setter="webkit.review.bot"
    />
          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>116234</attachid>
            <date>2011-11-22 08:54:16 -0800</date>
            <delta_ts>2011-11-24 02:39:12 -0800</delta_ts>
            <desc>Updated proposed patch</desc>
            <filename>0001-QT-WK2-Add-experimental-viewport-attributes-view-to-.patch</filename>
            <type>text/plain</type>
            <size>23280</size>
            <attacher name="Michael Brüning">michael.bruning</attacher>
            
              <data encoding="base64">RnJvbSA1ZWVhZWZhZjE4ZDc5MDJiNTFhMDFjODdmNGNmNDQ5N2EzZjNiNGY2IE1vbiBTZXAgMTcg
MDA6MDA6MDAgMjAwMQpGcm9tOiBNaWNoYWVsIEJydW5pbmcgPG1pY2hhZWwuYnJ1bmluZ0Bub2tp
YS5jb20+CkRhdGU6IFR1ZSwgMjIgTm92IDIwMTEgMTA6MjA6MTkgKzAxMDAKU3ViamVjdDogW1BB
VENIXSBbUVRdW1dLMl1BZGQgKGV4cGVyaW1lbnRhbCkgdmlld3BvcnQgYXR0cmlidXRlcyB2aWV3
IHRvIE1pbmlicm93c2VyL3F0CgpodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/
aWQ9NzI4OTMKClJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgoKVGhpcyBleHRlbmRzIFFRdWlj
a1dlYlZpZXdFeHBlcmltZW50YWwgYnkgYSBwcm9wZXJ0eSBuYW1lZAphdHRyaWJ1dGVzLCB3aGlj
aCBjb250YWlucyB0aGUgdmlld3BvcnQgc2NhbGFiaWxpdHkgYW5kIGxheW91dApzaXplIGluZm9y
bWF0aW9uLiBUaGlzIHByb3BlcnR5IGlzIGV4cG9zZWQgdG8gUU1MIHRocm91Z2ggdGhlCmV4cGVy
aW1lbnRhbCBleHRlbnNpb24gZm9yIFFRdWlja1dlYlZpZXcuCgpTb3VyY2U6CgoqIFNvdXJjZS9x
dHdlYmtpdC1leHBvcnQubWFwOgoKU291cmNlL1dlYktpdC9xdDoKCiogZGVjbGFyYXRpcXZlL2V4
cGVyaW1lbnRhbC9wbHVnaW4uY3BwOgoKU291cmNlL1dlYktpdDI6CgoqIFRhcmdldC5wcmk6Ciog
VUlQcm9jZXNzL0FQSS9xdC9xcXVpY2t3ZWJ2aWV3LmNwcDoKKFFRdWlja1dlYlZpZXdQcml2YXRl
Ojpjb21wdXRlVmlld3BvcnRDb25zdHJhaW50cyk6CihRUXVpY2tXZWJWaWV3RXhwZXJpbWVudGFs
OjpRUXVpY2tXZWJWaWV3RXhwZXJpbWVudGFsKToKKFFRdWlja1dlYlZpZXdFeHBlcmltZW50YWw6
OmF0dHJpYnV0ZXMpOgoqIFVJUHJvY2Vzcy9BUEkvcXQvcXF1aWNrd2Vidmlld19wLmg6CiogVUlQ
cm9jZXNzL0FQSS9xdC9xd2Vidmlld3BvcnRhdHRyaWJ1dGVzLmNwcDogQWRkZWQuCihRV2ViVmll
d3BvcnRBdHRyaWJ1dGVzOjpRV2ViVmlld3BvcnRBdHRyaWJ1dGVzKToKKFFXZWJWaWV3cG9ydEF0
dHJpYnV0ZXM6On5RV2ViVmlld3BvcnRBdHRyaWJ1dGVzKToKKFFXZWJWaWV3cG9ydEF0dHJpYnV0
ZXM6OmluaXRpYWxTY2FsZSk6CihRV2ViVmlld3BvcnRBdHRyaWJ1dGVzOjptaW5pbXVtU2NhbGUp
OgooUVdlYlZpZXdwb3J0QXR0cmlidXRlczo6bWF4aW11bVNjYWxlKToKKFFXZWJWaWV3cG9ydEF0
dHJpYnV0ZXM6OmlzU2NhbGFibGUpOgooUVdlYlZpZXdwb3J0QXR0cmlidXRlczo6bGF5b3V0V2lk
dGgpOgooUVdlYlZpZXdwb3J0QXR0cmlidXRlczo6bGF5b3V0SGVpZ2h0KToKKFFXZWJWaWV3cG9y
dEF0dHJpYnV0ZXM6OnVwZGF0ZUZyb21WaWV3cG9ydEF0dHJpYnV0ZXMpOgoqIFVJUHJvY2Vzcy9B
UEkvcXQvcXdlYnZpZXdwb3J0YXR0cmlidXRlc19wLmg6IEFkZGVkLgoKVG9vbHM6CgoqIE1pbmlC
cm93c2VyL3F0L01pbmlCcm93c2VyLnBybzoKKiBNaW5pQnJvd3Nlci9xdC9NaW5pQnJvd3Nlci5x
cmM6CiogTWluaUJyb3dzZXIvcXQvaWNvbnMvaW5mby5wbmc6IEFkZGVkLgoqIE1pbmlCcm93c2Vy
L3F0L3FtbC9Ccm93c2VyV2luZG93LnFtbDoKKiBNaW5pQnJvd3Nlci9xdC9xbWwvVmlld3BvcnRB
dHRyaWJ1dGVzSXRlbS5xbWw6IEFkZGVkLgotLS0KIENoYW5nZUxvZyAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgIHwgICAxNCArKysKIFNvdXJjZS9XZWJLaXQvcXQvQ2hh
bmdlTG9nICAgICAgICAgICAgICAgICAgICAgICAgIHwgICAxNCArKysKIC4uLi9XZWJLaXQvcXQv
ZGVjbGFyYXRpdmUvZXhwZXJpbWVudGFsL3BsdWdpbi5jcHAgIHwgICAgMyArCiBTb3VyY2UvV2Vi
S2l0Mi9DaGFuZ2VMb2cgICAgICAgICAgICAgICAgICAgICAgICAgICB8ICAgMzAgKysrKysrKwog
U291cmNlL1dlYktpdDIvVGFyZ2V0LnByaSAgICAgICAgICAgICAgICAgICAgICAgICAgfCAgICAy
ICsKIFNvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9BUEkvcXQvcXF1aWNrd2Vidmlldy5jcHAgIHwg
ICAgOSArKwogU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL0FQSS9xdC9xcXVpY2t3ZWJ2aWV3X3Au
aCAgfCAgICA0ICsKIC4uLi9VSVByb2Nlc3MvQVBJL3F0L3F3ZWJ2aWV3cG9ydGF0dHJpYnV0ZXMu
Y3BwICAgIHwgICA4OSArKysrKysrKysrKysrKysrKysrKwogLi4uL1VJUHJvY2Vzcy9BUEkvcXQv
cXdlYnZpZXdwb3J0YXR0cmlidXRlc19wLmggICAgfCAgIDcwICsrKysrKysrKysrKysrKwogU291
cmNlL3F0d2Via2l0LWV4cG9ydC5tYXAgICAgICAgICAgICAgICAgICAgICAgICAgfCAgICAzICsK
IFRvb2xzL0NoYW5nZUxvZyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgICAx
OCArKysrCiBUb29scy9NaW5pQnJvd3Nlci9xdC9NaW5pQnJvd3Nlci5wcm8gICAgICAgICAgICAg
ICB8ICAgIDMgKy0KIFRvb2xzL01pbmlCcm93c2VyL3F0L01pbmlCcm93c2VyLnFyYyAgICAgICAg
ICAgICAgIHwgICAgMiArCiBUb29scy9NaW5pQnJvd3Nlci9xdC9pY29ucy9pbmZvLnBuZyAgICAg
ICAgICAgICAgICB8ICBCaW4gMCAtPiAzNDAgYnl0ZXMKIFRvb2xzL01pbmlCcm93c2VyL3F0L3Ft
bC9Ccm93c2VyV2luZG93LnFtbCAgICAgICAgIHwgICAzOCArKysrKysrKy0KIC4uLi9NaW5pQnJv
d3Nlci9xdC9xbWwvVmlld3BvcnRBdHRyaWJ1dGVzSXRlbS5xbWwgIHwgICAzMiArKysrKysrCiAx
NiBmaWxlcyBjaGFuZ2VkLCAzMjkgaW5zZXJ0aW9ucygrKSwgMiBkZWxldGlvbnMoLSkKIGNyZWF0
ZSBtb2RlIDEwMDY0NCBTb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJL3F0L3F3ZWJ2aWV3cG9y
dGF0dHJpYnV0ZXMuY3BwCiBjcmVhdGUgbW9kZSAxMDA2NDQgU291cmNlL1dlYktpdDIvVUlQcm9j
ZXNzL0FQSS9xdC9xd2Vidmlld3BvcnRhdHRyaWJ1dGVzX3AuaAogY3JlYXRlIG1vZGUgMTAwNjQ0
IFRvb2xzL01pbmlCcm93c2VyL3F0L2ljb25zL2luZm8ucG5nCiBjcmVhdGUgbW9kZSAxMDA2NDQg
VG9vbHMvTWluaUJyb3dzZXIvcXQvcW1sL1ZpZXdwb3J0QXR0cmlidXRlc0l0ZW0ucW1sCgpkaWZm
IC0tZ2l0IGEvQ2hhbmdlTG9nIGIvQ2hhbmdlTG9nCmluZGV4IDhhZDkzZDMuLjQyMWJjYTAgMTAw
NjQ0Ci0tLSBhL0NoYW5nZUxvZworKysgYi9DaGFuZ2VMb2cKQEAgLTEsMyArMSwxNyBAQAorMjAx
MS0xMS0yMSAgTWljaGFlbCBCcnVuaW5nICA8bWljaGFlbC5icnVuaW5nQG5va2lhLmNvbT4KKwor
ICAgICAgICBbUVRdW1dLMl1BZGQgKGV4cGVyaW1lbnRhbCkgdmlld3BvcnQgYXR0cmlidXRlcyB2
aWV3IHRvIE1pbmlicm93c2VyL3F0LgorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9z
aG93X2J1Zy5jZ2k/aWQ9NzI4OTMKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMh
KS4KKworICAgICAgICBUaGlzIHBhdGNoIGV4dGVuZHMgUVF1aWNrV2ViVmlld0V4cGVyaW1lbnRh
bCBieSBhIHByb3BlcnR5IG5hbWVkCisgICAgICAgIGF0dHJpYnV0ZXMsIHdoaWNoIGNvbnRhaW5z
IHRoZSB2aWV3cG9ydCBzY2FsYWJpbGl0eSBhbmQgbGF5b3V0CisgICAgICAgIHNpemUgaW5mb3Jt
YXRpb24uIFRoaXMgcHJvcGVydHkgaXMgZXhwb3NlZCB0byBRTUwgdGhyb3VnaCB0aGUKKyAgICAg
ICAgZXhwZXJpbWVudGFsIGV4dGVuc2lvbiBmb3IgUVF1aWNrV2ViVmlldy4KKworICAgICAgICAq
IFNvdXJjZS9xdHdlYmtpdC1leHBvcnQubWFwOgorCiAyMDExLTExLTIxICBBZGFtIEtsZWluICA8
YWRhbWtAY2hyb21pdW0ub3JnPgogCiAgICAgICAgIEFkZCBHWVAtZ2VuZXJhdGVkIFdURi54Y29k
ZXByb2ogdG8gLmdpdGlnbm9yZSBhZnRlciByMTAwODUxLgpkaWZmIC0tZ2l0IGEvU291cmNlL1dl
YktpdC9xdC9DaGFuZ2VMb2cgYi9Tb3VyY2UvV2ViS2l0L3F0L0NoYW5nZUxvZwppbmRleCA1ODVk
Y2Q2Li41MDVlZmI1IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L3F0L0NoYW5nZUxvZworKysg
Yi9Tb3VyY2UvV2ViS2l0L3F0L0NoYW5nZUxvZwpAQCAtMSwzICsxLDE3IEBACisyMDExLTExLTIx
ICBNaWNoYWVsIEJydW5pbmcgIDxtaWNoYWVsLmJydW5pbmdAbm9raWEuY29tPgorCisgICAgICAg
IFtRVF1bV0syXUFkZCAoZXhwZXJpbWVudGFsKSB2aWV3cG9ydCBhdHRyaWJ1dGVzIHZpZXcgdG8g
TWluaWJyb3dzZXIvcXQKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcu
Y2dpP2lkPTcyODkzCisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAg
ICAgICAgVGhpcyBwYXRjaCBleHRlbmRzIFFRdWlja1dlYlZpZXdFeHBlcmltZW50YWwgYnkgYSBw
cm9wZXJ0eSBuYW1lZAorICAgICAgICBhdHRyaWJ1dGVzLCB3aGljaCBjb250YWlucyB0aGUgdmll
d3BvcnQgc2NhbGFiaWxpdHkgYW5kIGxheW91dAorICAgICAgICBzaXplIGluZm9ybWF0aW9uLiBU
aGlzIHByb3BlcnR5IGlzIGV4cG9zZWQgdG8gUU1MIHRocm91Z2ggdGhlCisgICAgICAgIGV4cGVy
aW1lbnRhbCBleHRlbnNpb24gZm9yIFFRdWlja1dlYlZpZXcuCisKKyAgICAgICAgKiBkZWNsYXJh
dGl2ZS9leHBlcmltZW50YWwvcGx1Z2luLmNwcDoKKwogMjAxMS0xMS0yMiAgUGF2ZWwgRmVsZG1h
biAgPHBmZWxkbWFuQGdvb2dsZS5jb20+CiAKICAgICAgICAgV2ViIEluc3BlY3RvcjogcmVtb3Zl
IEluc3BlY3Rvcjo6YnJpbmdUb0Zyb250IGZyb20gdGhlIHByb3RvY29sLgpkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYktpdC9xdC9kZWNsYXJhdGl2ZS9leHBlcmltZW50YWwvcGx1Z2luLmNwcCBiL1Nv
dXJjZS9XZWJLaXQvcXQvZGVjbGFyYXRpdmUvZXhwZXJpbWVudGFsL3BsdWdpbi5jcHAKaW5kZXgg
M2U2ODJmZC4uNzNkMDIwMSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9xdC9kZWNsYXJhdGl2
ZS9leHBlcmltZW50YWwvcGx1Z2luLmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0L3F0L2RlY2xhcmF0
aXZlL2V4cGVyaW1lbnRhbC9wbHVnaW4uY3BwCkBAIC0xOSw2ICsxOSw3IEBACiAKICNpbmNsdWRl
ICJxcXVpY2t3ZWJwYWdlX3AuaCIKICNpbmNsdWRlICJxcXVpY2t3ZWJ2aWV3X3AuaCIKKyNpbmNs
dWRlICJxd2Vidmlld3BvcnRhdHRyaWJ1dGVzX3AuaCIKIAogI2luY2x1ZGUgPFF0RGVjbGFyYXRp
dmUvcWRlY2xhcmF0aXZlLmg+CiAjaW5jbHVkZSA8UXREZWNsYXJhdGl2ZS9xZGVjbGFyYXRpdmVl
eHRlbnNpb25wbHVnaW4uaD4KQEAgLTQzLDYgKzQ0LDggQEAgcHVibGljOgogICAgICAgICBxbWxS
ZWdpc3RlckV4dGVuZGVkVHlwZTxRUXVpY2tXZWJWaWV3LCBRUXVpY2tXZWJWaWV3RXhwZXJpbWVu
dGFsRXh0ZW5zaW9uPih1cmksIDMsIDAsICJXZWJWaWV3Iik7CiAgICAgICAgIHFtbFJlZ2lzdGVy
VW5jcmVhdGFibGVUeXBlPFFRdWlja1dlYlZpZXdFeHBlcmltZW50YWw+KHVyaSwgMywgMCwgIlFR
dWlja1dlYlZpZXdFeHBlcmltZW50YWwiLAogICAgICAgICAgICAgUU9iamVjdDo6dHIoIkNhbm5v
dCBjcmVhdGUgc2VwYXJhdGUgaW5zdGFuY2Ugb2YgUVF1aWNrV2ViVmlld0V4cGVyaW1lbnRhbCIp
KTsKKyAgICAgICAgcW1sUmVnaXN0ZXJVbmNyZWF0YWJsZVR5cGU8UVdlYlZpZXdwb3J0QXR0cmli
dXRlcz4odXJpLCAzLCAwLCAiUVdlYlZpZXdwb3J0QXR0cmlidXRlcyIsCisgICAgICAgICAgICBR
T2JqZWN0Ojp0cigiQ2Fubm90IGNyZWF0ZSBzZXBhcmF0ZSBpbnN0YW5jZSBvZiBRV2ViVmlld3Bv
cnRBdHRyaWJ1dGVzIikpOwogICAgIH0KIH07CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQy
L0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJLaXQyL0NoYW5nZUxvZwppbmRleCA5NTYyNzE2Li42NmI1
MTdhIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dl
YktpdDIvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMzMgQEAKKzIwMTEtMTEtMjEgIE1pY2hhZWwgQnJ1
bmluZyAgPG1pY2hhZWwuYnJ1bmluZ0Bub2tpYS5jb20+CisKKyAgICAgICAgW1FUXVtXSzJdQWRk
IChleHBlcmltZW50YWwpIHZpZXdwb3J0IGF0dHJpYnV0ZXMgdmlldyB0byBNaW5pYnJvd3Nlci9x
dAorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9NzI4OTMK
KworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBUaGlzIHBh
dGNoIGV4dGVuZHMgUVF1aWNrV2ViVmlld0V4cGVyaW1lbnRhbCBieSBhIHByb3BlcnR5IG5hbWVk
CisgICAgICAgIGF0dHJpYnV0ZXMsIHdoaWNoIGNvbnRhaW5zIHRoZSB2aWV3cG9ydCBzY2FsYWJp
bGl0eSBhbmQgbGF5b3V0CisgICAgICAgIHNpemUgaW5mb3JtYXRpb24uIFRoaXMgcHJvcGVydHkg
aXMgZXhwb3NlZCB0byBRTUwgdGhyb3VnaCB0aGUKKyAgICAgICAgZXhwZXJpbWVudGFsIGV4dGVu
c2lvbiBmb3IgUVF1aWNrV2ViVmlldy4KKworICAgICAgICAqIFRhcmdldC5wcmk6CisgICAgICAg
ICogVUlQcm9jZXNzL0FQSS9xdC9xcXVpY2t3ZWJ2aWV3LmNwcDoKKyAgICAgICAgKFFRdWlja1dl
YlZpZXdQcml2YXRlOjpjb21wdXRlVmlld3BvcnRDb25zdHJhaW50cyk6CisgICAgICAgIChRUXVp
Y2tXZWJWaWV3RXhwZXJpbWVudGFsOjpRUXVpY2tXZWJWaWV3RXhwZXJpbWVudGFsKToKKyAgICAg
ICAgKFFRdWlja1dlYlZpZXdFeHBlcmltZW50YWw6OmF0dHJpYnV0ZXMpOgorICAgICAgICAqIFVJ
UHJvY2Vzcy9BUEkvcXQvcXF1aWNrd2Vidmlld19wLmg6CisgICAgICAgICogVUlQcm9jZXNzL0FQ
SS9xdC9xd2Vidmlld3BvcnRhdHRyaWJ1dGVzLmNwcDogQWRkZWQuCisgICAgICAgIChRV2ViVmll
d3BvcnRBdHRyaWJ1dGVzOjpRV2ViVmlld3BvcnRBdHRyaWJ1dGVzKToKKyAgICAgICAgKFFXZWJW
aWV3cG9ydEF0dHJpYnV0ZXM6On5RV2ViVmlld3BvcnRBdHRyaWJ1dGVzKToKKyAgICAgICAgKFFX
ZWJWaWV3cG9ydEF0dHJpYnV0ZXM6OmluaXRpYWxTY2FsZSk6CisgICAgICAgIChRV2ViVmlld3Bv
cnRBdHRyaWJ1dGVzOjptaW5pbXVtU2NhbGUpOgorICAgICAgICAoUVdlYlZpZXdwb3J0QXR0cmli
dXRlczo6bWF4aW11bVNjYWxlKToKKyAgICAgICAgKFFXZWJWaWV3cG9ydEF0dHJpYnV0ZXM6Omlz
U2NhbGFibGUpOgorICAgICAgICAoUVdlYlZpZXdwb3J0QXR0cmlidXRlczo6bGF5b3V0V2lkdGgp
OgorICAgICAgICAoUVdlYlZpZXdwb3J0QXR0cmlidXRlczo6bGF5b3V0SGVpZ2h0KToKKyAgICAg
ICAgKFFXZWJWaWV3cG9ydEF0dHJpYnV0ZXM6OnVwZGF0ZUZyb21WaWV3cG9ydEF0dHJpYnV0ZXMp
OgorICAgICAgICAqIFVJUHJvY2Vzcy9BUEkvcXQvcXdlYnZpZXdwb3J0YXR0cmlidXRlc19wLmg6
IEFkZGVkLgorCiAyMDExLTExLTIyICBDc2FiYSBPc3p0cm9nb27DoWMgIDxvc3N5QHdlYmtpdC5v
cmc+CiAKICAgICAgICAgVW5yZXZpZXdlZCBidWlsZGZpeCBhZnRlciByMTAxMDAxLgpkaWZmIC0t
Z2l0IGEvU291cmNlL1dlYktpdDIvVGFyZ2V0LnByaSBiL1NvdXJjZS9XZWJLaXQyL1RhcmdldC5w
cmkKaW5kZXggYTU1MmQ1NS4uODE5MDM2NiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvVGFy
Z2V0LnByaQorKysgYi9Tb3VyY2UvV2ViS2l0Mi9UYXJnZXQucHJpCkBAIC0yNTIsNiArMjUyLDcg
QEAgSEVBREVSUyArPSBcCiAgICAgVUlQcm9jZXNzL0FQSS9xdC9xcXVpY2t3ZWJwYWdlX3BfcC5o
IFwKICAgICBVSVByb2Nlc3MvQVBJL3F0L3FxdWlja3dlYnZpZXdfcC5oIFwKICAgICBVSVByb2Nl
c3MvQVBJL3F0L3FxdWlja3dlYnZpZXdfcF9wLmggXAorICAgIFVJUHJvY2Vzcy9BUEkvcXQvcXdl
YnZpZXdwb3J0YXR0cmlidXRlc19wLmggXAogICAgIFVJUHJvY2Vzcy9BdXRoZW50aWNhdGlvbi9B
dXRoZW50aWNhdGlvbkNoYWxsZW5nZVByb3h5LmggXAogICAgIFVJUHJvY2Vzcy9BdXRoZW50aWNh
dGlvbi9BdXRoZW50aWNhdGlvbkRlY2lzaW9uTGlzdGVuZXIuaCBcCiAgICAgVUlQcm9jZXNzL0F1
dGhlbnRpY2F0aW9uL1dlYkNyZWRlbnRpYWwuaCBcCkBAIC01NTYsNiArNTU3LDcgQEAgU09VUkNF
UyArPSBcCiAgICAgVUlQcm9jZXNzL0FQSS9xdC9xcXVpY2t3ZWJwYWdlLmNwcCBcCiAgICAgVUlQ
cm9jZXNzL0FQSS9xdC9xcXVpY2t3ZWJ2aWV3LmNwcCBcCiAgICAgVUlQcm9jZXNzL0FQSS9xdC9x
d2VicHJlZmVyZW5jZXMuY3BwIFwKKyAgICBVSVByb2Nlc3MvQVBJL3F0L3F3ZWJ2aWV3cG9ydGF0
dHJpYnV0ZXMuY3BwIFwKICAgICBVSVByb2Nlc3MvQXV0aGVudGljYXRpb24vQXV0aGVudGljYXRp
b25DaGFsbGVuZ2VQcm94eS5jcHAgXAogICAgIFVJUHJvY2Vzcy9BdXRoZW50aWNhdGlvbi9BdXRo
ZW50aWNhdGlvbkRlY2lzaW9uTGlzdGVuZXIuY3BwIFwKICAgICBVSVByb2Nlc3MvQXV0aGVudGlj
YXRpb24vV2ViQ3JlZGVudGlhbC5jcHAgXApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdDIvVUlQ
cm9jZXNzL0FQSS9xdC9xcXVpY2t3ZWJ2aWV3LmNwcCBiL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vz
cy9BUEkvcXQvcXF1aWNrd2Vidmlldy5jcHAKaW5kZXggNGIyZjJmMy4uZjUzOWY0ZSAxMDA2NDQK
LS0tIGEvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL0FQSS9xdC9xcXVpY2t3ZWJ2aWV3LmNwcAor
KysgYi9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJL3F0L3FxdWlja3dlYnZpZXcuY3BwCkBA
IC0zMCw2ICszMCw3IEBACiAjaW5jbHVkZSAicXF1aWNrd2VicGFnZV9wX3AuaCIKICNpbmNsdWRl
ICJxcXVpY2t3ZWJ2aWV3X3BfcC5oIgogI2luY2x1ZGUgInF3ZWJwcmVmZXJlbmNlc19wX3AuaCIK
KyNpbmNsdWRlICJxd2Vidmlld3BvcnRhdHRyaWJ1dGVzX3AuaCIKIAogI2luY2x1ZGUgPFF0RGVj
bGFyYXRpdmUvUVF1aWNrQ2FudmFzPgogI2luY2x1ZGUgPFF0V2lkZ2V0cy9RRmlsZURpYWxvZz4K
QEAgLTIxNSw2ICsyMTYsOCBAQCBRdFZpZXdwb3J0SW50ZXJhY3Rpb25FbmdpbmU6OkNvbnN0cmFp
bnRzIFFRdWlja1dlYlZpZXdQcml2YXRlOjpjb21wdXRlVmlld3BvcnRDbwogICAgIG5ld0NvbnN0
cmFpbnRzLmRldmljZVBpeGVsUmF0aW8gPSBhdHRyLmRldmljZVBpeGVsUmF0aW87CiAgICAgbmV3
Q29uc3RyYWludHMuaXNVc2VyU2NhbGFibGUgPSAhIWF0dHIudXNlclNjYWxhYmxlOwogCisgICAg
cS0+bV9leHBlcmltZW50YWwtPnZpZXdwb3J0QXR0cmlidXRlcygpLT51cGRhdGVGcm9tVmlld3Bv
cnRBdHRyaWJ1dGVzKGF0dHIpOworCiAgICAgcmV0dXJuIG5ld0NvbnN0cmFpbnRzOwogfQogCkBA
IC00MTAsNiArNDEzLDcgQEAgUVF1aWNrV2ViVmlld0V4cGVyaW1lbnRhbDo6UVF1aWNrV2ViVmll
d0V4cGVyaW1lbnRhbChRUXVpY2tXZWJWaWV3ICp3ZWJWaWV3KQogICAgIDogUU9iamVjdCh3ZWJW
aWV3KQogICAgICwgcV9wdHIod2ViVmlldykKICAgICAsIGRfcHRyKHdlYlZpZXctPmRfcHRyLmRh
dGEoKSkKKyAgICAsIG1fdmlld3BvcnRBdHRyaWJ1dGVzKG5ldyBRV2ViVmlld3BvcnRBdHRyaWJ1
dGVzKHRoaXMpKQogewogfQogCkBAIC00NjgsNiArNDcyLDExIEBAIHZvaWQgUVF1aWNrV2ViVmll
d0V4cGVyaW1lbnRhbDo6c2V0UHJvbXB0RGlhbG9nKFFEZWNsYXJhdGl2ZUNvbXBvbmVudCogcHJv
bXB0RGlhCiAgICAgZW1pdCBwcm9tcHREaWFsb2dDaGFuZ2VkKCk7CiB9CiAKK1FXZWJWaWV3cG9y
dEF0dHJpYnV0ZXMqIFFRdWlja1dlYlZpZXdFeHBlcmltZW50YWw6OnZpZXdwb3J0QXR0cmlidXRl
cygpCit7CisgICAgcmV0dXJuIG1fdmlld3BvcnRBdHRyaWJ1dGVzOworfQorCiBRUXVpY2tXZWJW
aWV3OjpRUXVpY2tXZWJWaWV3KFFRdWlja0l0ZW0qIHBhcmVudCkKICAgICA6IFFRdWlja0l0ZW0o
cGFyZW50KQogICAgICwgZF9wdHIobmV3IFFRdWlja1dlYlZpZXdQcml2YXRlKHRoaXMpKQpkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL0FQSS9xdC9xcXVpY2t3ZWJ2aWV3X3Au
aCBiL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9BUEkvcXQvcXF1aWNrd2Vidmlld19wLmgKaW5k
ZXggMmQxMDdmNi4uODVjMDBiOSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvVUlQcm9jZXNz
L0FQSS9xdC9xcXVpY2t3ZWJ2aWV3X3AuaAorKysgYi9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3Mv
QVBJL3F0L3FxdWlja3dlYnZpZXdfcC5oCkBAIC0zMSw2ICszMSw3IEBAIGNsYXNzIFFRdWlja1dl
YlZpZXdQcml2YXRlOwogY2xhc3MgUVF1aWNrV2ViVmlld0V4cGVyaW1lbnRhbDsKIGNsYXNzIFFX
ZWJEb3dubG9hZEl0ZW07CiBjbGFzcyBRV2ViUHJlZmVyZW5jZXM7CitjbGFzcyBRV2ViVmlld3Bv
cnRBdHRyaWJ1dGVzOwogCiBuYW1lc3BhY2UgV1RSIHsKIGNsYXNzIFBsYXRmb3JtV2ViVmlldzsK
QEAgLTE2Niw2ICsxNjcsNyBAQCBjbGFzcyBRV0VCS0lUX0VYUE9SVCBRUXVpY2tXZWJWaWV3RXhw
ZXJpbWVudGFsIDogcHVibGljIFFPYmplY3QgewogICAgIFFfUFJPUEVSVFkoUURlY2xhcmF0aXZl
Q29tcG9uZW50KiBhbGVydERpYWxvZyBSRUFEIGFsZXJ0RGlhbG9nIFdSSVRFIHNldEFsZXJ0RGlh
bG9nIE5PVElGWSBhbGVydERpYWxvZ0NoYW5nZWQpCiAgICAgUV9QUk9QRVJUWShRRGVjbGFyYXRp
dmVDb21wb25lbnQqIGNvbmZpcm1EaWFsb2cgUkVBRCBjb25maXJtRGlhbG9nIFdSSVRFIHNldENv
bmZpcm1EaWFsb2cgTk9USUZZIGNvbmZpcm1EaWFsb2dDaGFuZ2VkKQogICAgIFFfUFJPUEVSVFko
UURlY2xhcmF0aXZlQ29tcG9uZW50KiBwcm9tcHREaWFsb2cgUkVBRCBwcm9tcHREaWFsb2cgV1JJ
VEUgc2V0UHJvbXB0RGlhbG9nIE5PVElGWSBwcm9tcHREaWFsb2dDaGFuZ2VkKQorICAgIFFfUFJP
UEVSVFkoUVdlYlZpZXdwb3J0QXR0cmlidXRlcyogdmlld3BvcnRBdHRyaWJ1dGVzIFJFQUQgdmll
d3BvcnRBdHRyaWJ1dGVzIENPTlNUQU5UIEZJTkFMKQogCiBwdWJsaWM6CiAgICAgUVF1aWNrV2Vi
Vmlld0V4cGVyaW1lbnRhbChRUXVpY2tXZWJWaWV3KiB3ZWJWaWV3KTsKQEAgLTE3Nyw2ICsxNzks
NyBAQCBwdWJsaWM6CiAgICAgdm9pZCBzZXRDb25maXJtRGlhbG9nKFFEZWNsYXJhdGl2ZUNvbXBv
bmVudCopOwogICAgIFFEZWNsYXJhdGl2ZUNvbXBvbmVudCogcHJvbXB0RGlhbG9nKCkgY29uc3Q7
CiAgICAgdm9pZCBzZXRQcm9tcHREaWFsb2coUURlY2xhcmF0aXZlQ29tcG9uZW50Kik7CisgICAg
UVdlYlZpZXdwb3J0QXR0cmlidXRlcyogdmlld3BvcnRBdHRyaWJ1dGVzKCk7CiAKIHB1YmxpYyBR
X1NMT1RTOgogICAgIHZvaWQgc2V0VXNlVHJhZGl0aW9uYWxEZXNrdG9wQmVoYXZpb3VyKGJvb2wg
ZW5hYmxlKTsKQEAgLTE4OSw2ICsxOTIsNyBAQCBRX1NJR05BTFM6CiBwcml2YXRlOgogICAgIFFR
dWlja1dlYlZpZXcqIHFfcHRyOwogICAgIFFRdWlja1dlYlZpZXdQcml2YXRlKiBkX3B0cjsKKyAg
ICBRV2ViVmlld3BvcnRBdHRyaWJ1dGVzKiBtX3ZpZXdwb3J0QXR0cmlidXRlczsKIAogICAgIFFf
REVDTEFSRV9QUklWQVRFKFFRdWlja1dlYlZpZXcpCiAgICAgUV9ERUNMQVJFX1BVQkxJQyhRUXVp
Y2tXZWJWaWV3KQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL0FQSS9xdC9x
d2Vidmlld3BvcnRhdHRyaWJ1dGVzLmNwcCBiL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9BUEkv
cXQvcXdlYnZpZXdwb3J0YXR0cmlidXRlcy5jcHAKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXgg
MDAwMDAwMC4uMzMxNDk4NgotLS0gL2Rldi9udWxsCisrKyBiL1NvdXJjZS9XZWJLaXQyL1VJUHJv
Y2Vzcy9BUEkvcXQvcXdlYnZpZXdwb3J0YXR0cmlidXRlcy5jcHAKQEAgLTAsMCArMSw4OSBAQAor
LyoKKyAqIENvcHlyaWdodCAoQykgMjAxMSBOb2tpYSBDb3Jwb3JhdGlvbiBhbmQvb3IgaXRzIHN1
YnNpZGlhcnkoLWllcykKKyAqCisgKiBUaGlzIGxpYnJhcnkgaXMgZnJlZSBzb2Z0d2FyZTsgeW91
IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29yCisgKiBtb2RpZnkgaXQgdW5kZXIgdGhlIHRlcm1z
IG9mIHRoZSBHTlUgTGlicmFyeSBHZW5lcmFsIFB1YmxpYworICogTGljZW5zZSBhcyBwdWJsaXNo
ZWQgYnkgdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbjsgZWl0aGVyCisgKiB2ZXJzaW9uIDIg
b2YgdGhlIExpY2Vuc2UsIG9yIChhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uCisg
KgorICogVGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2ls
bCBiZSB1c2VmdWwsCisgKiBidXQgV0lUSE9VVCBBTlkgV0FSUkFOVFk7IHdpdGhvdXQgZXZlbiB0
aGUgaW1wbGllZCB3YXJyYW50eSBvZgorICogTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MgRk9S
IEEgUEFSVElDVUxBUiBQVVJQT1NFLiAgU2VlIHRoZSBHTlUKKyAqIExpYnJhcnkgR2VuZXJhbCBQ
dWJsaWMgTGljZW5zZSBmb3IgbW9yZSBkZXRhaWxzLgorICoKKyAqIFlvdSBzaG91bGQgaGF2ZSBy
ZWNlaXZlZCBhIGNvcHkgb2YgdGhlIEdOVSBMaWJyYXJ5IEdlbmVyYWwgUHVibGljIExpY2Vuc2UK
KyAqIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtOyBzZWUgdGhlIGZpbGUgQ09QWUlORy5MSUIuICBJ
ZiBub3QsIHdyaXRlIHRvCisgKiB0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uLCBJbmMuLCA1
MSBGcmFua2xpbiBTdHJlZXQsIEZpZnRoIEZsb29yLAorICogQm9zdG9uLCBNQSAwMjExMC0xMzAx
LCBVU0EuCisgKgorICovCisKKyNpbmNsdWRlICJjb25maWcuaCIKKyNpbmNsdWRlICJxd2Vidmll
d3BvcnRhdHRyaWJ1dGVzX3AuaCIKKworI2luY2x1ZGUgPFdlYkNvcmUvVmlld3BvcnRBcmd1bWVu
dHMuaD4KKworUVdlYlZpZXdwb3J0QXR0cmlidXRlczo6UVdlYlZpZXdwb3J0QXR0cmlidXRlcyhR
T2JqZWN0KiBwYXJlbnQpCisgICAgOiBRT2JqZWN0KHBhcmVudCkKK3sKKworfQorCitRV2ViVmll
d3BvcnRBdHRyaWJ1dGVzOjp+UVdlYlZpZXdwb3J0QXR0cmlidXRlcygpCit7CisKK30KKworcXJl
YWwgUVdlYlZpZXdwb3J0QXR0cmlidXRlczo6aW5pdGlhbFNjYWxlKCkgY29uc3QKK3sKKyAgICBy
ZXR1cm4gbV9pbml0aWFsU2NhbGU7Cit9CisKK3FyZWFsIFFXZWJWaWV3cG9ydEF0dHJpYnV0ZXM6
Om1pbmltdW1TY2FsZSgpIGNvbnN0Cit7CisgICAgcmV0dXJuIG1fbWluaW11bVNjYWxlOworfQor
CitxcmVhbCBRV2ViVmlld3BvcnRBdHRyaWJ1dGVzOjptYXhpbXVtU2NhbGUoKSBjb25zdAorewor
ICAgIHJldHVybiBtX21heGltdW1TY2FsZTsKK30KKworYm9vbCBRV2ViVmlld3BvcnRBdHRyaWJ1
dGVzOjppc1NjYWxhYmxlKCkgY29uc3QKK3sKKyAgICByZXR1cm4gbV9pc1NjYWxhYmxlOworfQor
CitpbnQgUVdlYlZpZXdwb3J0QXR0cmlidXRlczo6bGF5b3V0V2lkdGgoKSBjb25zdAoreworICAg
IHJldHVybiBtX2xheW91dFNpemUud2lkdGgoKTsKK30KKworaW50IFFXZWJWaWV3cG9ydEF0dHJp
YnV0ZXM6OmxheW91dEhlaWdodCgpIGNvbnN0Cit7CisgICAgcmV0dXJuIG1fbGF5b3V0U2l6ZS5o
ZWlnaHQoKTsKK30KKyAKK3ZvaWQgUVdlYlZpZXdwb3J0QXR0cmlidXRlczo6dXBkYXRlRnJvbVZp
ZXdwb3J0QXR0cmlidXRlcyhjb25zdCBXZWJDb3JlOjpWaWV3cG9ydEF0dHJpYnV0ZXMmIGF0dHIp
Cit7CisgICAgaWYgKG1faW5pdGlhbFNjYWxlICE9IGF0dHIuaW5pdGlhbFNjYWxlKSB7CisgICAg
ICAgIG1faW5pdGlhbFNjYWxlID0gYXR0ci5pbml0aWFsU2NhbGU7CisgICAgICAgIGVtaXQgaW5p
dGlhbFNjYWxlVXBkYXRlZCgpOworICAgIH0KKyAgICBpZiAobV9taW5pbXVtU2NhbGUgIT0gYXR0
ci5taW5pbXVtU2NhbGUpIHsKKyAgICAgICAgbV9taW5pbXVtU2NhbGUgPSBhdHRyLm1pbmltdW1T
Y2FsZTsKKyAgICAgICAgZW1pdCBtaW5pbXVtU2NhbGVVcGRhdGVkKCk7CisgICAgfQorICAgIGlm
IChtX21heGltdW1TY2FsZSAhPSBhdHRyLm1heGltdW1TY2FsZSkgeworICAgICAgICBtX21heGlt
dW1TY2FsZSA9IGF0dHIubWF4aW11bVNjYWxlOworICAgICAgICBlbWl0IG1heGltdW1TY2FsZVVw
ZGF0ZWQoKTsKKyAgICB9CisgICAgaWYgKG1faXNTY2FsYWJsZSAhPSAhIWF0dHIudXNlclNjYWxh
YmxlKSB7CisgICAgICAgIG1faXNTY2FsYWJsZSA9ICEhYXR0ci51c2VyU2NhbGFibGU7CisgICAg
ICAgIGVtaXQgaXNTY2FsYWJsZVVwZGF0ZWQoKTsKKyAgICB9CisgICAgaWYgKG1fbGF5b3V0U2l6
ZSAhPSBRU2l6ZShhdHRyLmxheW91dFNpemUpKSB7CisgICAgICAgIG1fbGF5b3V0U2l6ZSA9IGF0
dHIubGF5b3V0U2l6ZTsKKyAgICAgICAgZW1pdCBsYXlvdXRTaXplVXBkYXRlZCgpOworICAgIH0K
K30KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9BUEkvcXQvcXdlYnZpZXdw
b3J0YXR0cmlidXRlc19wLmggYi9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJL3F0L3F3ZWJ2
aWV3cG9ydGF0dHJpYnV0ZXNfcC5oCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAu
Ljg2YzVhZDcKLS0tIC9kZXYvbnVsbAorKysgYi9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJ
L3F0L3F3ZWJ2aWV3cG9ydGF0dHJpYnV0ZXNfcC5oCkBAIC0wLDAgKzEsNzAgQEAKKy8qCisgKiBD
b3B5cmlnaHQgKEMpIDIwMTEgTm9raWEgQ29ycG9yYXRpb24gYW5kL29yIGl0cyBzdWJzaWRpYXJ5
KC1pZXMpCisgKgorICogVGhpcyBsaWJyYXJ5IGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVk
aXN0cmlidXRlIGl0IGFuZC9vcgorICogbW9kaWZ5IGl0IHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUg
R05VIExpYnJhcnkgR2VuZXJhbCBQdWJsaWMKKyAqIExpY2Vuc2UgYXMgcHVibGlzaGVkIGJ5IHRo
ZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb247IGVpdGhlcgorICogdmVyc2lvbiAyIG9mIHRoZSBM
aWNlbnNlLCBvciAoYXQgeW91ciBvcHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLgorICoKKyAqIFRo
aXMgcHJvZ3JhbSBpcyBkaXN0cmlidXRlZCBpbiB0aGUgaG9wZSB0aGF0IGl0IHdpbGwgYmUgdXNl
ZnVsLAorICogYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxp
ZWQgd2FycmFudHkgb2YKKyAqIE1FUkNIQU5UQUJJTElUWSBvciBGSVRORVNTIEZPUiBBIFBBUlRJ
Q1VMQVIgUFVSUE9TRS4gIFNlZSB0aGUgR05VCisgKiBMaWJyYXJ5IEdlbmVyYWwgUHVibGljIExp
Y2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KKyAqCisgKiBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQg
YSBjb3B5IG9mIHRoZSBHTlUgTGlicmFyeSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlCisgKiBhbG9u
ZyB3aXRoIHRoaXMgcHJvZ3JhbTsgc2VlIHRoZSBmaWxlIENPUFlJTkcuTElCLiAgSWYgbm90LCB3
cml0ZSB0bworICogdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbiwgSW5jLiwgNTEgRnJhbmts
aW4gU3RyZWV0LCBGaWZ0aCBGbG9vciwKKyAqIEJvc3RvbiwgTUEgMDIxMTAtMTMwMSwgVVNBLgor
ICoKKyAqLworCisjaWZuZGVmIHF3ZWJ2aWV3cG9ydGF0dHJpYnV0ZXNfcF9oCisjZGVmaW5lIHF3
ZWJ2aWV3cG9ydGF0dHJpYnV0ZXNfcF9oCisKKyNpbmNsdWRlICJxd2Via2l0Z2xvYmFsLmgiCisj
aW5jbHVkZSA8UXRDb3JlL1FPYmplY3Q+CisjaW5jbHVkZSA8UXRDb3JlL1FTaXplPgorI2luY2x1
ZGUgPFF0RGVjbGFyYXRpdmUvUXREZWNsYXJhdGl2ZT4KKworbmFtZXNwYWNlIFdlYkNvcmUgewor
Y2xhc3MgVmlld3BvcnRBdHRyaWJ1dGVzOworfQorCitjbGFzcyBRV0VCS0lUX0VYUE9SVCBRV2Vi
Vmlld3BvcnRBdHRyaWJ1dGVzIDogcHVibGljIFFPYmplY3QgeworICAgIFFfT0JKRUNUCisgICAg
UV9QUk9QRVJUWShxcmVhbCBpbml0aWFsU2NhbGUgUkVBRCBpbml0aWFsU2NhbGUgTk9USUZZIGlu
aXRpYWxTY2FsZVVwZGF0ZWQpCisgICAgUV9QUk9QRVJUWShxcmVhbCBtaW5pbXVtU2NhbGUgUkVB
RCBtaW5pbXVtU2NhbGUgTk9USUZZIG1pbmltdW1TY2FsZVVwZGF0ZWQpCisgICAgUV9QUk9QRVJU
WShxcmVhbCBtYXhpbXVtU2NhbGUgUkVBRCBtYXhpbXVtU2NhbGUgTk9USUZZIG1heGltdW1TY2Fs
ZVVwZGF0ZWQpCisgICAgUV9QUk9QRVJUWShib29sIGlzU2NhbGFibGUgUkVBRCBpc1NjYWxhYmxl
IE5PVElGWSBpc1NjYWxhYmxlVXBkYXRlZCkKKyAgICBRX1BST1BFUlRZKGludCBsYXlvdXRXaWR0
aCBSRUFEIGxheW91dFdpZHRoIE5PVElGWSBsYXlvdXRTaXplVXBkYXRlZCkKKyAgICBRX1BST1BF
UlRZKGludCBsYXlvdXRIZWlnaHQgUkVBRCBsYXlvdXRIZWlnaHQgTk9USUZZIGxheW91dFNpemVV
cGRhdGVkKQorCitzaWduYWxzOgorICAgIHZvaWQgaW5pdGlhbFNjYWxlVXBkYXRlZCgpOworICAg
IHZvaWQgbWF4aW11bVNjYWxlVXBkYXRlZCgpOworICAgIHZvaWQgbWluaW11bVNjYWxlVXBkYXRl
ZCgpOworICAgIHZvaWQgaXNTY2FsYWJsZVVwZGF0ZWQoKTsKKyAgICB2b2lkIGxheW91dFNpemVV
cGRhdGVkKCk7CisKK3B1YmxpYzoKKyAgICBRV2ViVmlld3BvcnRBdHRyaWJ1dGVzKFFPYmplY3Qq
IHBhcmVudCA9IDApOworICAgIHZpcnR1YWwgflFXZWJWaWV3cG9ydEF0dHJpYnV0ZXMoKTsKKwor
ICAgIHFyZWFsIGluaXRpYWxTY2FsZSgpIGNvbnN0OworICAgIHFyZWFsIG1pbmltdW1TY2FsZSgp
IGNvbnN0OworICAgIHFyZWFsIG1heGltdW1TY2FsZSgpIGNvbnN0OworICAgIGJvb2wgaXNTY2Fs
YWJsZSgpIGNvbnN0OworCisgICAgaW50IGxheW91dFdpZHRoKCkgY29uc3Q7CisgICAgaW50IGxh
eW91dEhlaWdodCgpIGNvbnN0OworCisgICAgdm9pZCB1cGRhdGVGcm9tVmlld3BvcnRBdHRyaWJ1
dGVzKGNvbnN0IFdlYkNvcmU6OlZpZXdwb3J0QXR0cmlidXRlcyYgYXR0cik7Citwcml2YXRlOgor
ICAgIHFyZWFsIG1faW5pdGlhbFNjYWxlOworICAgIHFyZWFsIG1fbWluaW11bVNjYWxlOworICAg
IHFyZWFsIG1fbWF4aW11bVNjYWxlOworICAgIGJvb2wgbV9pc1NjYWxhYmxlOworICAgIFFTaXpl
IG1fbGF5b3V0U2l6ZTsKK307CisKKyNlbmRpZiAvLyBxd2Vidmlld3BvcnRhdHRyaWJ1dGVzX3Bf
aApkaWZmIC0tZ2l0IGEvU291cmNlL3F0d2Via2l0LWV4cG9ydC5tYXAgYi9Tb3VyY2UvcXR3ZWJr
aXQtZXhwb3J0Lm1hcAppbmRleCBhNDI2MjAzLi5kMzk4NGVmIDEwMDY0NAotLS0gYS9Tb3VyY2Uv
cXR3ZWJraXQtZXhwb3J0Lm1hcAorKysgYi9Tb3VyY2UvcXR3ZWJraXQtZXhwb3J0Lm1hcApAQCAt
MTI0LDYgKzEyNCw5IEBAIHF3a18xLjAgewogICAgICAgICAqUVdlYkRvd25sb2FkSXRlbTsKICAg
ICAgICAgbm9uLXZpcnR1YWw/dGh1bms/dG8/UVdlYkRvd25sb2FkSXRlbSo7CiAgICAgICAgIFFX
ZWJEb3dubG9hZEl0ZW06Oio7CisgICAgICAgICpRV2ViVmlld3BvcnRBdHRyaWJ1dGVzOworICAg
ICAgICBub24tdmlydHVhbD90aHVuaz90bz9RV2ViVmlld3BvcnRBdHRyaWJ1dGVzOworICAgICAg
ICBRV2ViVmlld3BvcnRBdHRyaWJ1dGVzOjoqOwogICAgICAgICAqUVF1aWNrV2ViUGFnZTsKICAg
ICAgICAgbm9uLXZpcnR1YWw/dGh1bms/dG8/UVF1aWNrV2ViUGFnZSo7CiAgICAgICAgIFFRdWlj
a1dlYlBhZ2U6Oio7CmRpZmYgLS1naXQgYS9Ub29scy9DaGFuZ2VMb2cgYi9Ub29scy9DaGFuZ2VM
b2cKaW5kZXggYTZlODYzMC4uNTc1YzBjNSAxMDA2NDQKLS0tIGEvVG9vbHMvQ2hhbmdlTG9nCisr
KyBiL1Rvb2xzL0NoYW5nZUxvZwpAQCAtMSwzICsxLDIxIEBACisyMDExLTExLTIxICBNaWNoYWVs
IEJydW5pbmcgIDxtaWNoYWVsLmJydW5pbmdAbm9raWEuY29tPgorCisgICAgICAgIFtRVF1bV0sy
XUFkZCAoZXhwZXJpbWVudGFsKSB2aWV3cG9ydCBhdHRyaWJ1dGVzIHZpZXcgdG8gTWluaWJyb3dz
ZXIvcXQuCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD03
Mjg5MworCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIFRo
aXMgcGF0Y2ggZXh0ZW5kcyBRUXVpY2tXZWJWaWV3RXhwZXJpbWVudGFsIGJ5IGEgcHJvcGVydHkg
bmFtZWQKKyAgICAgICAgYXR0cmlidXRlcywgd2hpY2ggY29udGFpbnMgdGhlIHZpZXdwb3J0IHNj
YWxhYmlsaXR5IGFuZCBsYXlvdXQKKyAgICAgICAgc2l6ZSBpbmZvcm1hdGlvbi4gVGhpcyBwcm9w
ZXJ0eSBpcyBleHBvc2VkIHRvIFFNTCB0aHJvdWdoIHRoZQorICAgICAgICBleHBlcmltZW50YWwg
ZXh0ZW5zaW9uIGZvciBRUXVpY2tXZWJWaWV3LgorCisgICAgICAgICogTWluaUJyb3dzZXIvcXQv
TWluaUJyb3dzZXIucHJvOgorICAgICAgICAqIE1pbmlCcm93c2VyL3F0L01pbmlCcm93c2VyLnFy
YzoKKyAgICAgICAgKiBNaW5pQnJvd3Nlci9xdC9pY29ucy9pbmZvLnBuZzogQWRkZWQuCisgICAg
ICAgICogTWluaUJyb3dzZXIvcXQvcW1sL0Jyb3dzZXJXaW5kb3cucW1sOgorICAgICAgICAqIE1p
bmlCcm93c2VyL3F0L3FtbC9WaWV3cG9ydEF0dHJpYnV0ZXNJdGVtLnFtbDogQWRkZWQuCisKIDIw
MTEtMTEtMjEgIFl1dGEgS2l0YW11cmEgIDx5dXRha0BjaHJvbWl1bS5vcmc+CiAKICAgICAgICAg
W0dUS10gRW5hYmxlIFdlYlNvY2tldCBoeWJpIHRlc3RzCmRpZmYgLS1naXQgYS9Ub29scy9NaW5p
QnJvd3Nlci9xdC9NaW5pQnJvd3Nlci5wcm8gYi9Ub29scy9NaW5pQnJvd3Nlci9xdC9NaW5pQnJv
d3Nlci5wcm8KaW5kZXggNWM0MzE5OC4uYTY0NzhkNCAxMDA2NDQKLS0tIGEvVG9vbHMvTWluaUJy
b3dzZXIvcXQvTWluaUJyb3dzZXIucHJvCisrKyBiL1Rvb2xzL01pbmlCcm93c2VyL3F0L01pbmlC
cm93c2VyLnBybwpAQCAtMzUsNCArMzUsNSBAQCBtYWN4OiBRVCArPSB4bWwKIFJFU09VUkNFUyAr
PSBNaW5pQnJvd3Nlci5xcmMKIAogT1RIRVJfRklMRVMgKz0gXAotICAgIHFtbC9Ccm93c2VyV2lu
ZG93LnFtbAorICAgIHFtbC9Ccm93c2VyV2luZG93LnFtbCBcCisgICAgcW1sL1ZpZXdwb3J0QXR0
cmlidXRlc0l0ZW0ucW1sCmRpZmYgLS1naXQgYS9Ub29scy9NaW5pQnJvd3Nlci9xdC9NaW5pQnJv
d3Nlci5xcmMgYi9Ub29scy9NaW5pQnJvd3Nlci9xdC9NaW5pQnJvd3Nlci5xcmMKaW5kZXggYTU3
YTk1NC4uYjIxOTg0YyAxMDA2NDQKLS0tIGEvVG9vbHMvTWluaUJyb3dzZXIvcXQvTWluaUJyb3dz
ZXIucXJjCisrKyBiL1Rvb2xzL01pbmlCcm93c2VyL3F0L01pbmlCcm93c2VyLnFyYwpAQCAtMSwx
MCArMSwxMiBAQAogPFJDQz4KICAgICA8cXJlc291cmNlIHByZWZpeD0iLyI+CisgICAgICAgIDxm
aWxlPmljb25zL2luZm8ucG5nPC9maWxlPgogICAgICAgICA8ZmlsZT5pY29ucy9uZXh0LnBuZzwv
ZmlsZT4KICAgICAgICAgPGZpbGU+aWNvbnMvcHJldmlvdXMucG5nPC9maWxlPgogICAgICAgICA8
ZmlsZT5pY29ucy9yZWZyZXNoLnBuZzwvZmlsZT4KICAgICAgICAgPGZpbGU+aWNvbnMvc3RvcC5w
bmc8L2ZpbGU+CiAgICAgICAgIDxmaWxlPnFtbC9Ccm93c2VyV2luZG93LnFtbDwvZmlsZT4KKyAg
ICAgICAgPGZpbGU+cW1sL1ZpZXdwb3J0QXR0cmlidXRlc0l0ZW0ucW1sPC9maWxlPgogICAgICAg
ICA8ZmlsZT51c2VyYWdlbnRsaXN0LnR4dDwvZmlsZT4KICAgICA8L3FyZXNvdXJjZT4KIDwvUkND
PgpkaWZmIC0tZ2l0IGEvVG9vbHMvTWluaUJyb3dzZXIvcXQvaWNvbnMvaW5mby5wbmcgYi9Ub29s
cy9NaW5pQnJvd3Nlci9xdC9pY29ucy9pbmZvLnBuZwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRl
eCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5kYjQ4M2ZmMTAwZjE0
ZTc5YzFjNjE4NWUxOWIzMWZlMTRmYWVkZTlmCkdJVCBiaW5hcnkgcGF0Y2gKbGl0ZXJhbCAzNDAK
emNtZUFTQE4/KG9sSHlgdVZCcSFpYTB2cF5WaiNASDF8Kk1jJCp+NGZqS3g5alA3TGVMJC1EJHwq
cGpeNlReUm1ACno7RFd1JkNqJih8M3Becj04NXA+UUw3MChZKSpLMC1BYld8WXVQZ2cpWlpRRkF2
RzNsQ21JOCZZYylCPS1TZSQtKQp6V3Y+XnJxWF9HUl5RS0ReQm8jd25PXjc7bj0keUw4Ul5NTiQz
ajVCNjlXMl8pRDwpUSFCKnMrOUUmWWA8c0FjTysKenQoTCF2UTV1IzdKSXxjQUVWZHxVU0ZWIypG
S3QpVVgzOHQ8RVZnO2Jjc19NclNtflgoIS1yNEx7YzNXSkh8fHgzCnpYWSZWWHdIKmdJYFV+c0ow
enw0OE5qe0xCcEV+YXdmOG4wKSFaK1FeeDtAI3FKRD1Iaj5+Nm57cG1OMWd3KEZfJAp6PlAhbyhi
YjBTNWNkUnlCNnVYRkg8Tjh9fSpUYTdCb1UqejV1WGlWWldNSiE+Nn10K0EtMmFeS3dfN0J5e3pY
SnwKZStlVylyOWB7QWR2fU5sSihzWTZUV0FKcUtiNk13PCY7JFUlVlN1SXAKCmxpdGVyYWwgMApI
Y21WP2QwMDAwMQoKZGlmZiAtLWdpdCBhL1Rvb2xzL01pbmlCcm93c2VyL3F0L3FtbC9Ccm93c2Vy
V2luZG93LnFtbCBiL1Rvb2xzL01pbmlCcm93c2VyL3F0L3FtbC9Ccm93c2VyV2luZG93LnFtbApp
bmRleCA1Y2MxNTJhLi42MGM0NTQxIDEwMDY0NAotLS0gYS9Ub29scy9NaW5pQnJvd3Nlci9xdC9x
bWwvQnJvd3NlcldpbmRvdy5xbWwKKysrIGIvVG9vbHMvTWluaUJyb3dzZXIvcXQvcW1sL0Jyb3dz
ZXJXaW5kb3cucW1sCkBAIC0yOCwxMSArMjgsMTMgQEAKIAogaW1wb3J0IFF0UXVpY2sgMi4wCiBp
bXBvcnQgUXRXZWJLaXQgMy4wCitpbXBvcnQgUXRXZWJLaXQuZXhwZXJpbWVudGFsIDMuMAogCiBS
ZWN0YW5nbGUgewogICAgIC8vIERvIG5vdCBkZWZpbmUgYW5jaG9ycyBvciBhbiBpbml0aWFsIHNp
emUgaGVyZSEgVGhpcyB3b3VsZCBtZXNzIHVwIHdpdGggUVNHVmlldzo6U2l6ZVJvb3RPYmplY3RU
b1ZpZXcuCiAKICAgICBwcm9wZXJ0eSBhbGlhcyB3ZWJ2aWV3OiB3ZWJWaWV3CisgICAgcHJvcGVy
dHkgYWxpYXMgdmlld3BvcnRhdHRyaWJ1dGVzaXRlbTogdmlld3BvcnRBdHRyaWJ1dGVzSXRlbQog
CiAgICAgc2lnbmFsIHBhZ2VUaXRsZUNoYW5nZWQoc3RyaW5nIHRpdGxlKQogCkBAIC0xMzQsNiAr
MTM2LDI1IEBAIFJlY3RhbmdsZSB7CiAgICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAg
ICAgICB9CiAgICAgICAgICAgICB9CisKKyAgICAgICAgICAgIFJlY3RhbmdsZSB7CisgICAgICAg
ICAgICAgICAgaWQ6IHZpZXdwb3J0QXR0cmlidXRlc0luZm9CdXR0b24KKyAgICAgICAgICAgICAg
ICBoZWlnaHQ6IG5hdmlnYXRpb25CYXIuaGVpZ2h0IC0gMgorICAgICAgICAgICAgICAgIHdpZHRo
OiBoZWlnaHQKKyAgICAgICAgICAgICAgICBjb2xvcjogIiNlZmVmZWYiCisKKyAgICAgICAgICAg
ICAgICBJbWFnZSB7CisgICAgICAgICAgICAgICAgICAgIGFuY2hvcnMuY2VudGVySW46IHBhcmVu
dAorICAgICAgICAgICAgICAgICAgICBzb3VyY2U6ICIuLi9pY29ucy9pbmZvLnBuZyIKKyAgICAg
ICAgICAgICAgICB9CisKKyAgICAgICAgICAgICAgICBNb3VzZUFyZWEgeworICAgICAgICAgICAg
ICAgICAgICBhbmNob3JzLmZpbGw6IHBhcmVudAorICAgICAgICAgICAgICAgICAgICBvbkNsaWNr
ZWQ6IHsKKyAgICAgICAgICAgICAgICAgICAgICAgdmlld3BvcnRBdHRyaWJ1dGVzSXRlbS52aXNp
YmxlID0gIXZpZXdwb3J0QXR0cmlidXRlc0l0ZW0udmlzaWJsZQorICAgICAgICAgICAgICAgICAg
ICB9CisgICAgICAgICAgICAgICAgfQorICAgICAgICAgICAgfQogICAgICAgICB9CiAgICAgICAg
IFJlY3RhbmdsZSB7CiAgICAgICAgICAgICBjb2xvcjogIndoaXRlIgpAQCAtMTg2LDcgKzIwNywy
MiBAQCBSZWN0YW5nbGUgewogICAgICAgICAgICAgfQogICAgICAgICB9CiAgICAgfQotCisgICAg
Vmlld3BvcnRBdHRyaWJ1dGVzSXRlbSB7CisgICAgICAgIGlkOiB2aWV3cG9ydEF0dHJpYnV0ZXNJ
dGVtCisgICAgICAgIGFuY2hvcnMgeworICAgICAgICAgICAgdG9wOiBuYXZpZ2F0aW9uQmFyLmJv
dHRvbQorICAgICAgICAgICAgbGVmdDogcGFyZW50LmxlZnQKKyAgICAgICAgICAgIHJpZ2h0OiBw
YXJlbnQucmlnaHQKKyAgICAgICAgICAgIGJvdHRvbTogcGFyZW50LmJvdHRvbQorICAgICAgICB9
CisgICAgICAgIHZpc2libGU6IGZhbHNlCisgICAgICAgIG1heGltdW1TY2FsZTogd2Vidmlldy5l
eHBlcmltZW50YWwudmlld3BvcnRBdHRyaWJ1dGVzLm1heGltdW1TY2FsZQorICAgICAgICBtaW5p
bXVtU2NhbGU6IHdlYnZpZXcuZXhwZXJpbWVudGFsLnZpZXdwb3J0QXR0cmlidXRlcy5taW5pbXVt
U2NhbGUKKyAgICAgICAgaW5pdGlhbFNjYWxlOiB3ZWJ2aWV3LmV4cGVyaW1lbnRhbC52aWV3cG9y
dEF0dHJpYnV0ZXMuaW5pdGlhbFNjYWxlCisgICAgICAgIGlzU2NhbGFibGU6IHdlYnZpZXcuZXhw
ZXJpbWVudGFsLnZpZXdwb3J0QXR0cmlidXRlcy5pc1NjYWxhYmxlCisgICAgICAgIGxheW91dFdp
ZHRoOiB3ZWJ2aWV3LmV4cGVyaW1lbnRhbC52aWV3cG9ydEF0dHJpYnV0ZXMubGF5b3V0V2lkdGgK
KyAgICAgICAgbGF5b3V0SGVpZ2h0OiB3ZWJ2aWV3LmV4cGVyaW1lbnRhbC52aWV3cG9ydEF0dHJp
YnV0ZXMubGF5b3V0SGVpZ2h0CisgICAgfQogICAgIFdlYlZpZXcgewogICAgICAgICBpZDogd2Vi
VmlldwogICAgICAgICBhbmNob3JzIHsKZGlmZiAtLWdpdCBhL1Rvb2xzL01pbmlCcm93c2VyL3F0
L3FtbC9WaWV3cG9ydEF0dHJpYnV0ZXNJdGVtLnFtbCBiL1Rvb2xzL01pbmlCcm93c2VyL3F0L3Ft
bC9WaWV3cG9ydEF0dHJpYnV0ZXNJdGVtLnFtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAw
MDAwMDAwLi4yZjg1ZDBhCi0tLSAvZGV2L251bGwKKysrIGIvVG9vbHMvTWluaUJyb3dzZXIvcXQv
cW1sL1ZpZXdwb3J0QXR0cmlidXRlc0l0ZW0ucW1sCkBAIC0wLDAgKzEsMzIgQEAKK2ltcG9ydCBR
dFF1aWNrIDIuMAoraW1wb3J0IFF0V2ViS2l0IDMuMAorCitSZWN0YW5nbGUgeworICAgIGNvbG9y
OiAiYmxhY2siCisgICAgb3BhY2l0eTogMC41CisKKyAgICBwcm9wZXJ0eSByZWFsIGluaXRpYWxT
Y2FsZQorICAgIHByb3BlcnR5IHJlYWwgbWF4aW11bVNjYWxlCisgICAgcHJvcGVydHkgcmVhbCBt
aW5pbXVtU2NhbGUKKyAgICBwcm9wZXJ0eSBpbnQgbGF5b3V0V2lkdGgKKyAgICBwcm9wZXJ0eSBp
bnQgbGF5b3V0SGVpZ2h0CisgICAgcHJvcGVydHkgYm9vbCBpc1NjYWxhYmxlCisKKyAgICBUZXh0
IHsKKyAgICAgICAgaWQ6IHNjYWxlSW5mb1RleHQKKyAgICAgICAgdGV4dDogIlNjYWxlIGZhY3Rv
cnMgKGluaXRpYWwsIG1heCwgbWluKSA6ICgiICsgaW5pdGlhbFNjYWxlICsgIiwgIiArIG1heGlt
dW1TY2FsZSArICIsICIgKyBtaW5pbXVtU2NhbGUgKyAiKSIKKyAgICAgICAgY29sb3I6ICJ3aGl0
ZSIKKyAgICB9CisgICAgVGV4dCB7CisgICAgICAgIGlkOiBsYXlvdXRTaXplSW5mb1RleHQKKyAg
ICAgICAgYW5jaG9ycy50b3A6IHNjYWxlSW5mb1RleHQuYm90dG9tCisgICAgICAgIHRleHQ6ICJW
aWV3cG9ydCBsYXlvdXQgc2l6ZTogKCIgKyBsYXlvdXRXaWR0aCArICJ4IiArIGxheW91dEhlaWdo
dCArICIpIgorICAgICAgICBjb2xvcjogIndoaXRlIgorICAgIH0KKyAgICBUZXh0IHsKKyAgICAg
ICAgaWQ6IHNjYWxhYmlsaXR5SW5mb1RleHQKKyAgICAgICAgYW5jaG9ycy50b3A6IGxheW91dFNp
emVJbmZvVGV4dC5ib3R0b20KKyAgICAgICAgdGV4dDogIlZpZXcgIiArIChpc1NjYWxhYmxlID8g
ImlzICIgOiAiaXMgbm90ICIgKSArICJzY2FsYWJsZS4iCisgICAgICAgIGNvbG9yOiAid2hpdGUi
CisgICAgfQorfQotLSAKMS43LjQuMQoK
</data>
<flag name="review"
          id="115470"
          type_id="1"
          status="+"
          setter="vestbo"
    />
          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>116491</attachid>
            <date>2011-11-24 02:39:12 -0800</date>
            <delta_ts>2011-11-24 04:15:02 -0800</delta_ts>
            <desc>Updated proposed patch</desc>
            <filename>0001-QT-WK2-Add-experimental-viewport-attributes-view-to-.patch</filename>
            <type>text/plain</type>
            <size>23742</size>
            <attacher name="Michael Brüning">michael.bruning</attacher>
            
              <data encoding="base64">RnJvbSA2NDk0NDc1MjJkOGM5ODE2MjEwNGY3M2U2YzllZTVjMDYwZDA2YTY2IE1vbiBTZXAgMTcg
MDA6MDA6MDAgMjAwMQpGcm9tOiBNaWNoYWVsIEJydW5pbmcgPG1pY2hhZWwuYnJ1bmluZ0Bub2tp
YS5jb20+CkRhdGU6IFdlZCwgMjMgTm92IDIwMTEgMTQ6MjQ6NDYgKzAxMDAKU3ViamVjdDogW1BB
VENIXSBbUVRdW1dLMl1BZGQgKGV4cGVyaW1lbnRhbCkgdmlld3BvcnQgYXR0cmlidXRlcyB2aWV3
IHRvIE1pbmlicm93c2VyL3F0CgpodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/
aWQ9NzI4OTMKClJldmlld2VkIGJ5IFRvciBBcm5lIFZlc3RibwoKVGhpcyBleHRlbmRzIFFRdWlj
a1dlYlZpZXdFeHBlcmltZW50YWwgYnkgYSBwcm9wZXJ0eSBuYW1lZAp2aWV3cG9ydEF0dHJpYnV0
ZXMsIHdoaWNoIGNvbnRhaW5zIHRoZSB2aWV3cG9ydCBzY2FsYWJpbGl0eSBhbmQKbGF5b3V0IHNp
emUgaW5mb3JtYXRpb24uIFRoaXMgcHJvcGVydHkgaXMgZXhwb3NlZCB0byBRTUwgdGhyb3VnaAp0
aGUgZXhwZXJpbWVudGFsIGV4dGVuc2lvbiBmb3IgUVF1aWNrV2ViVmlldy4KClNvdXJjZToKCiog
U291cmNlL3F0d2Via2l0LWV4cG9ydC5tYXA6CgpTb3VyY2UvV2ViS2l0L3F0OgoKKiBkZWNsYXJh
dGlxdmUvZXhwZXJpbWVudGFsL3BsdWdpbi5jcHA6CgpTb3VyY2UvV2ViS2l0MjoKCiogVGFyZ2V0
LnByaToKKiBVSVByb2Nlc3MvQVBJL3F0L3FxdWlja3dlYnZpZXcuY3BwOgooUVF1aWNrV2ViVmll
d1ByaXZhdGU6OmNvbXB1dGVWaWV3cG9ydENvbnN0cmFpbnRzKToKKFFRdWlja1dlYlZpZXdFeHBl
cmltZW50YWw6OlFRdWlja1dlYlZpZXdFeHBlcmltZW50YWwpOgooUVF1aWNrV2ViVmlld0V4cGVy
aW1lbnRhbDo6YXR0cmlidXRlcyk6CiogVUlQcm9jZXNzL0FQSS9xdC9xcXVpY2t3ZWJ2aWV3X3Au
aDoKKiBVSVByb2Nlc3MvQVBJL3F0L3F3ZWJ2aWV3cG9ydGF0dHJpYnV0ZXMuY3BwOiBBZGRlZC4K
KFFXZWJWaWV3cG9ydEF0dHJpYnV0ZXM6OlFXZWJWaWV3cG9ydEF0dHJpYnV0ZXMpOgooUVdlYlZp
ZXdwb3J0QXR0cmlidXRlczo6flFXZWJWaWV3cG9ydEF0dHJpYnV0ZXMpOgooUVdlYlZpZXdwb3J0
QXR0cmlidXRlczo6aW5pdGlhbFNjYWxlKToKKFFXZWJWaWV3cG9ydEF0dHJpYnV0ZXM6Om1pbmlt
dW1TY2FsZSk6CihRV2ViVmlld3BvcnRBdHRyaWJ1dGVzOjptYXhpbXVtU2NhbGUpOgooUVdlYlZp
ZXdwb3J0QXR0cmlidXRlczo6aXNTY2FsYWJsZSk6CihRV2ViVmlld3BvcnRBdHRyaWJ1dGVzOjps
YXlvdXRXaWR0aCk6CihRV2ViVmlld3BvcnRBdHRyaWJ1dGVzOjpsYXlvdXRIZWlnaHQpOgooUVdl
YlZpZXdwb3J0QXR0cmlidXRlczo6dXBkYXRlRnJvbVZpZXdwb3J0QXR0cmlidXRlcyk6CiogVUlQ
cm9jZXNzL0FQSS9xdC9xd2Vidmlld3BvcnRhdHRyaWJ1dGVzX3AuaDogQWRkZWQuCgpUb29sczoK
CiogTWluaUJyb3dzZXIvcXQvTWluaUJyb3dzZXIucHJvOgoqIE1pbmlCcm93c2VyL3F0L01pbmlC
cm93c2VyLnFyYzoKKiBNaW5pQnJvd3Nlci9xdC9pY29ucy9pbmZvLnBuZzogQWRkZWQuCiogTWlu
aUJyb3dzZXIvcXQvcW1sL0Jyb3dzZXJXaW5kb3cucW1sOgoqIE1pbmlCcm93c2VyL3F0L3FtbC9W
aWV3cG9ydEF0dHJpYnV0ZXNJdGVtLnFtbDogQWRkZWQuCi0tLQogQ2hhbmdlTG9nICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCAgIDE0ICsrKwogU291cmNlL1dlYktp
dC9xdC9DaGFuZ2VMb2cgICAgICAgICAgICAgICAgICAgICAgICAgfCAgIDE0ICsrKwogLi4uL1dl
YktpdC9xdC9kZWNsYXJhdGl2ZS9leHBlcmltZW50YWwvcGx1Z2luLmNwcCAgfCAgICAzICsKIFNv
dXJjZS9XZWJLaXQyL0NoYW5nZUxvZyAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgICAzMCAr
KysrKysrCiBTb3VyY2UvV2ViS2l0Mi9UYXJnZXQucHJpICAgICAgICAgICAgICAgICAgICAgICAg
ICB8ICAgIDIgKwogU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL0FQSS9xdC9xcXVpY2t3ZWJ2aWV3
LmNwcCAgfCAgICA5ICsrCiBTb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJL3F0L3FxdWlja3dl
YnZpZXdfcC5oICB8ICAgIDQgKwogLi4uL1VJUHJvY2Vzcy9BUEkvcXQvcXdlYnZpZXdwb3J0YXR0
cmlidXRlcy5jcHAgICAgfCAgIDg5ICsrKysrKysrKysrKysrKysrKysrCiAuLi4vVUlQcm9jZXNz
L0FQSS9xdC9xd2Vidmlld3BvcnRhdHRyaWJ1dGVzX3AuaCAgICB8ICAgNzAgKysrKysrKysrKysr
KysrCiBTb3VyY2UvcXR3ZWJraXQtZXhwb3J0Lm1hcCAgICAgICAgICAgICAgICAgICAgICAgICB8
ICAgIDMgKwogVG9vbHMvQ2hhbmdlTG9nICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgfCAgIDE4ICsrKysKIFRvb2xzL01pbmlCcm93c2VyL3F0L01pbmlCcm93c2VyLnBybyAgICAg
ICAgICAgICAgIHwgICAgMyArLQogVG9vbHMvTWluaUJyb3dzZXIvcXQvTWluaUJyb3dzZXIucXJj
ICAgICAgICAgICAgICAgfCAgICAyICsKIFRvb2xzL01pbmlCcm93c2VyL3F0L2ljb25zL2luZm8u
cG5nICAgICAgICAgICAgICAgIHwgIEJpbiAwIC0+IDM0MCBieXRlcwogVG9vbHMvTWluaUJyb3dz
ZXIvcXQvcW1sL0Jyb3dzZXJXaW5kb3cucW1sICAgICAgICAgfCAgIDM3ICsrKysrKysrLQogLi4u
L01pbmlCcm93c2VyL3F0L3FtbC9WaWV3cG9ydEF0dHJpYnV0ZXNJdGVtLnFtbCAgfCAgIDQ1ICsr
KysrKysrKysKIDE2IGZpbGVzIGNoYW5nZWQsIDM0MSBpbnNlcnRpb25zKCspLCAyIGRlbGV0aW9u
cygtKQogY3JlYXRlIG1vZGUgMTAwNjQ0IFNvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9BUEkvcXQv
cXdlYnZpZXdwb3J0YXR0cmlidXRlcy5jcHAKIGNyZWF0ZSBtb2RlIDEwMDY0NCBTb3VyY2UvV2Vi
S2l0Mi9VSVByb2Nlc3MvQVBJL3F0L3F3ZWJ2aWV3cG9ydGF0dHJpYnV0ZXNfcC5oCiBjcmVhdGUg
bW9kZSAxMDA2NDQgVG9vbHMvTWluaUJyb3dzZXIvcXQvaWNvbnMvaW5mby5wbmcKIGNyZWF0ZSBt
b2RlIDEwMDY0NCBUb29scy9NaW5pQnJvd3Nlci9xdC9xbWwvVmlld3BvcnRBdHRyaWJ1dGVzSXRl
bS5xbWwKCmRpZmYgLS1naXQgYS9DaGFuZ2VMb2cgYi9DaGFuZ2VMb2cKaW5kZXggMTNlNWRlOS4u
OWY2Mzc1MyAxMDA2NDQKLS0tIGEvQ2hhbmdlTG9nCisrKyBiL0NoYW5nZUxvZwpAQCAtMSwzICsx
LDE3IEBACisyMDExLTExLTIxICBNaWNoYWVsIEJydW5pbmcgIDxtaWNoYWVsLmJydW5pbmdAbm9r
aWEuY29tPgorCisgICAgICAgIFtRVF1bV0syXUFkZCAoZXhwZXJpbWVudGFsKSB2aWV3cG9ydCBh
dHRyaWJ1dGVzIHZpZXcgdG8gTWluaWJyb3dzZXIvcXQuCisgICAgICAgIGh0dHBzOi8vYnVncy53
ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD03Mjg5MworCisgICAgICAgIFJldmlld2VkIGJ5IFRv
ciBBcm5lIFZlc3Riby4KKworICAgICAgICBUaGlzIHBhdGNoIGV4dGVuZHMgUVF1aWNrV2ViVmll
d0V4cGVyaW1lbnRhbCBieSBhIHByb3BlcnR5IG5hbWVkCisgICAgICAgIHZpZXdwb3J0QXR0cmli
dXRlcywgd2hpY2ggY29udGFpbnMgdGhlIHZpZXdwb3J0IHNjYWxhYmlsaXR5IGFuZAorICAgICAg
ICBsYXlvdXQgc2l6ZSBpbmZvcm1hdGlvbi4gVGhpcyBwcm9wZXJ0eSBpcyBleHBvc2VkIHRvIFFN
TCB0aHJvdWdoCisgICAgICAgIHRoZSBleHBlcmltZW50YWwgZXh0ZW5zaW9uIGZvciBRUXVpY2tX
ZWJWaWV3LgorCisgICAgICAgICogU291cmNlL3F0d2Via2l0LWV4cG9ydC5tYXA6CisKIDIwMTEt
MTEtMjMgIFRvciBBcm5lIFZlc3Riw7ggIDx0b3IuYXJuZS52ZXN0Ym9Abm9raWEuY29tPgogCiAg
ICAgICAgIFtRdF0gUmUtZ2VuZXJhdGUgUXRXZWJLaXQgQVBJIGZvcndhcmRpbmcgaGVhZGVycyB3
aGVuIEFQSSBjaGFuZ2VzCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L3F0L0NoYW5nZUxvZyBi
L1NvdXJjZS9XZWJLaXQvcXQvQ2hhbmdlTG9nCmluZGV4IDU4NWRjZDYuLjMwYjM0OWYgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJLaXQvcXQvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9XZWJLaXQvcXQv
Q2hhbmdlTG9nCkBAIC0xLDMgKzEsMTcgQEAKKzIwMTEtMTEtMjEgIE1pY2hhZWwgQnJ1bmluZyAg
PG1pY2hhZWwuYnJ1bmluZ0Bub2tpYS5jb20+CisKKyAgICAgICAgW1FUXVtXSzJdQWRkIChleHBl
cmltZW50YWwpIHZpZXdwb3J0IGF0dHJpYnV0ZXMgdmlldyB0byBNaW5pYnJvd3Nlci9xdC4KKyAg
ICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTcyODkzCisKKyAg
ICAgICAgUmV2aWV3ZWQgYnkgVG9yIEFybmUgVmVzdGJvLgorCisgICAgICAgIFRoaXMgcGF0Y2gg
ZXh0ZW5kcyBRUXVpY2tXZWJWaWV3RXhwZXJpbWVudGFsIGJ5IGEgcHJvcGVydHkgbmFtZWQKKyAg
ICAgICAgdmlld3BvcnRBdHRyaWJ1dGVzLCB3aGljaCBjb250YWlucyB0aGUgdmlld3BvcnQgc2Nh
bGFiaWxpdHkgYW5kCisgICAgICAgIGxheW91dCBzaXplIGluZm9ybWF0aW9uLiBUaGlzIHByb3Bl
cnR5IGlzIGV4cG9zZWQgdG8gUU1MIHRocm91Z2gKKyAgICAgICAgdGhlIGV4cGVyaW1lbnRhbCBl
eHRlbnNpb24gZm9yIFFRdWlja1dlYlZpZXcuCisKKyAgICAgICAgKiBkZWNsYXJhdGl2ZS9leHBl
cmltZW50YWwvcGx1Z2luLmNwcDoKKwogMjAxMS0xMS0yMiAgUGF2ZWwgRmVsZG1hbiAgPHBmZWxk
bWFuQGdvb2dsZS5jb20+CiAKICAgICAgICAgV2ViIEluc3BlY3RvcjogcmVtb3ZlIEluc3BlY3Rv
cjo6YnJpbmdUb0Zyb250IGZyb20gdGhlIHByb3RvY29sLgpkaWZmIC0tZ2l0IGEvU291cmNlL1dl
YktpdC9xdC9kZWNsYXJhdGl2ZS9leHBlcmltZW50YWwvcGx1Z2luLmNwcCBiL1NvdXJjZS9XZWJL
aXQvcXQvZGVjbGFyYXRpdmUvZXhwZXJpbWVudGFsL3BsdWdpbi5jcHAKaW5kZXggM2U2ODJmZC4u
NzNkMDIwMSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9xdC9kZWNsYXJhdGl2ZS9leHBlcmlt
ZW50YWwvcGx1Z2luLmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0L3F0L2RlY2xhcmF0aXZlL2V4cGVy
aW1lbnRhbC9wbHVnaW4uY3BwCkBAIC0xOSw2ICsxOSw3IEBACiAKICNpbmNsdWRlICJxcXVpY2t3
ZWJwYWdlX3AuaCIKICNpbmNsdWRlICJxcXVpY2t3ZWJ2aWV3X3AuaCIKKyNpbmNsdWRlICJxd2Vi
dmlld3BvcnRhdHRyaWJ1dGVzX3AuaCIKIAogI2luY2x1ZGUgPFF0RGVjbGFyYXRpdmUvcWRlY2xh
cmF0aXZlLmg+CiAjaW5jbHVkZSA8UXREZWNsYXJhdGl2ZS9xZGVjbGFyYXRpdmVleHRlbnNpb25w
bHVnaW4uaD4KQEAgLTQzLDYgKzQ0LDggQEAgcHVibGljOgogICAgICAgICBxbWxSZWdpc3RlckV4
dGVuZGVkVHlwZTxRUXVpY2tXZWJWaWV3LCBRUXVpY2tXZWJWaWV3RXhwZXJpbWVudGFsRXh0ZW5z
aW9uPih1cmksIDMsIDAsICJXZWJWaWV3Iik7CiAgICAgICAgIHFtbFJlZ2lzdGVyVW5jcmVhdGFi
bGVUeXBlPFFRdWlja1dlYlZpZXdFeHBlcmltZW50YWw+KHVyaSwgMywgMCwgIlFRdWlja1dlYlZp
ZXdFeHBlcmltZW50YWwiLAogICAgICAgICAgICAgUU9iamVjdDo6dHIoIkNhbm5vdCBjcmVhdGUg
c2VwYXJhdGUgaW5zdGFuY2Ugb2YgUVF1aWNrV2ViVmlld0V4cGVyaW1lbnRhbCIpKTsKKyAgICAg
ICAgcW1sUmVnaXN0ZXJVbmNyZWF0YWJsZVR5cGU8UVdlYlZpZXdwb3J0QXR0cmlidXRlcz4odXJp
LCAzLCAwLCAiUVdlYlZpZXdwb3J0QXR0cmlidXRlcyIsCisgICAgICAgICAgICBRT2JqZWN0Ojp0
cigiQ2Fubm90IGNyZWF0ZSBzZXBhcmF0ZSBpbnN0YW5jZSBvZiBRV2ViVmlld3BvcnRBdHRyaWJ1
dGVzIikpOwogICAgIH0KIH07CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQyL0NoYW5nZUxv
ZyBiL1NvdXJjZS9XZWJLaXQyL0NoYW5nZUxvZwppbmRleCBlMTQ1NTM0Li4zODY3OTNjIDEwMDY0
NAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYktpdDIvQ2hh
bmdlTG9nCkBAIC0xLDMgKzEsMzMgQEAKKzIwMTEtMTEtMjEgIE1pY2hhZWwgQnJ1bmluZyAgPG1p
Y2hhZWwuYnJ1bmluZ0Bub2tpYS5jb20+CisKKyAgICAgICAgW1FUXVtXSzJdQWRkIChleHBlcmlt
ZW50YWwpIHZpZXdwb3J0IGF0dHJpYnV0ZXMgdmlldyB0byBNaW5pYnJvd3Nlci9xdC4KKyAgICAg
ICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTcyODkzCisKKyAgICAg
ICAgUmV2aWV3ZWQgYnkgVG9yIEFybmUgVmVzdGJvLgorCisgICAgICAgIFRoaXMgcGF0Y2ggZXh0
ZW5kcyBRUXVpY2tXZWJWaWV3RXhwZXJpbWVudGFsIGJ5IGEgcHJvcGVydHkgbmFtZWQKKyAgICAg
ICAgdmlld3BvcnRBdHRyaWJ1dGVzLCB3aGljaCBjb250YWlucyB0aGUgdmlld3BvcnQgc2NhbGFi
aWxpdHkgYW5kCisgICAgICAgIGxheW91dCBzaXplIGluZm9ybWF0aW9uLiBUaGlzIHByb3BlcnR5
IGlzIGV4cG9zZWQgdG8gUU1MIHRocm91Z2gKKyAgICAgICAgdGhlIGV4cGVyaW1lbnRhbCBleHRl
bnNpb24gZm9yIFFRdWlja1dlYlZpZXcuCisKKyAgICAgICAgKiBUYXJnZXQucHJpOgorICAgICAg
ICAqIFVJUHJvY2Vzcy9BUEkvcXQvcXF1aWNrd2Vidmlldy5jcHA6CisgICAgICAgIChRUXVpY2tX
ZWJWaWV3UHJpdmF0ZTo6Y29tcHV0ZVZpZXdwb3J0Q29uc3RyYWludHMpOgorICAgICAgICAoUVF1
aWNrV2ViVmlld0V4cGVyaW1lbnRhbDo6UVF1aWNrV2ViVmlld0V4cGVyaW1lbnRhbCk6CisgICAg
ICAgIChRUXVpY2tXZWJWaWV3RXhwZXJpbWVudGFsOjphdHRyaWJ1dGVzKToKKyAgICAgICAgKiBV
SVByb2Nlc3MvQVBJL3F0L3FxdWlja3dlYnZpZXdfcC5oOgorICAgICAgICAqIFVJUHJvY2Vzcy9B
UEkvcXQvcXdlYnZpZXdwb3J0YXR0cmlidXRlcy5jcHA6IEFkZGVkLgorICAgICAgICAoUVdlYlZp
ZXdwb3J0QXR0cmlidXRlczo6UVdlYlZpZXdwb3J0QXR0cmlidXRlcyk6CisgICAgICAgIChRV2Vi
Vmlld3BvcnRBdHRyaWJ1dGVzOjp+UVdlYlZpZXdwb3J0QXR0cmlidXRlcyk6CisgICAgICAgIChR
V2ViVmlld3BvcnRBdHRyaWJ1dGVzOjppbml0aWFsU2NhbGUpOgorICAgICAgICAoUVdlYlZpZXdw
b3J0QXR0cmlidXRlczo6bWluaW11bVNjYWxlKToKKyAgICAgICAgKFFXZWJWaWV3cG9ydEF0dHJp
YnV0ZXM6Om1heGltdW1TY2FsZSk6CisgICAgICAgIChRV2ViVmlld3BvcnRBdHRyaWJ1dGVzOjpp
c1NjYWxhYmxlKToKKyAgICAgICAgKFFXZWJWaWV3cG9ydEF0dHJpYnV0ZXM6OmxheW91dFdpZHRo
KToKKyAgICAgICAgKFFXZWJWaWV3cG9ydEF0dHJpYnV0ZXM6OmxheW91dEhlaWdodCk6CisgICAg
ICAgIChRV2ViVmlld3BvcnRBdHRyaWJ1dGVzOjp1cGRhdGVGcm9tVmlld3BvcnRBdHRyaWJ1dGVz
KToKKyAgICAgICAgKiBVSVByb2Nlc3MvQVBJL3F0L3F3ZWJ2aWV3cG9ydGF0dHJpYnV0ZXNfcC5o
OiBBZGRlZC4KKwogMjAxMS0xMS0yMSAgSmVzdXMgU2FuY2hlei1QYWxlbmNpYSAgPGplc3VzLnBh
bGVuY2lhQG9wZW5ib3NzYS5vcmc+CiAKICAgICAgICAgW1F0XVtXSzJdIE1vdmUgUVF1aWNrV2Vi
Vmlldzo6ZG93bmxvYWRSZXF1ZXN0ZWQgc2lnbmFsIGludG8gZXhwZXJpbWVudGFsCmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViS2l0Mi9UYXJnZXQucHJpIGIvU291cmNlL1dlYktpdDIvVGFyZ2V0LnBy
aQppbmRleCAxNGM5YzBjLi5kOTQ4ZGQ2IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9UYXJn
ZXQucHJpCisrKyBiL1NvdXJjZS9XZWJLaXQyL1RhcmdldC5wcmkKQEAgLTI1Miw2ICsyNTIsNyBA
QCBIRUFERVJTICs9IFwKICAgICBVSVByb2Nlc3MvQVBJL3F0L3FxdWlja3dlYnBhZ2VfcF9wLmgg
XAogICAgIFVJUHJvY2Vzcy9BUEkvcXQvcXF1aWNrd2Vidmlld19wLmggXAogICAgIFVJUHJvY2Vz
cy9BUEkvcXQvcXF1aWNrd2Vidmlld19wX3AuaCBcCisgICAgVUlQcm9jZXNzL0FQSS9xdC9xd2Vi
dmlld3BvcnRhdHRyaWJ1dGVzX3AuaCBcCiAgICAgVUlQcm9jZXNzL0F1dGhlbnRpY2F0aW9uL0F1
dGhlbnRpY2F0aW9uQ2hhbGxlbmdlUHJveHkuaCBcCiAgICAgVUlQcm9jZXNzL0F1dGhlbnRpY2F0
aW9uL0F1dGhlbnRpY2F0aW9uRGVjaXNpb25MaXN0ZW5lci5oIFwKICAgICBVSVByb2Nlc3MvQXV0
aGVudGljYXRpb24vV2ViQ3JlZGVudGlhbC5oIFwKQEAgLTU1Niw2ICs1NTcsNyBAQCBTT1VSQ0VT
ICs9IFwKICAgICBVSVByb2Nlc3MvQVBJL3F0L3FxdWlja3dlYnBhZ2UuY3BwIFwKICAgICBVSVBy
b2Nlc3MvQVBJL3F0L3FxdWlja3dlYnZpZXcuY3BwIFwKICAgICBVSVByb2Nlc3MvQVBJL3F0L3F3
ZWJwcmVmZXJlbmNlcy5jcHAgXAorICAgIFVJUHJvY2Vzcy9BUEkvcXQvcXdlYnZpZXdwb3J0YXR0
cmlidXRlcy5jcHAgXAogICAgIFVJUHJvY2Vzcy9BdXRoZW50aWNhdGlvbi9BdXRoZW50aWNhdGlv
bkNoYWxsZW5nZVByb3h5LmNwcCBcCiAgICAgVUlQcm9jZXNzL0F1dGhlbnRpY2F0aW9uL0F1dGhl
bnRpY2F0aW9uRGVjaXNpb25MaXN0ZW5lci5jcHAgXAogICAgIFVJUHJvY2Vzcy9BdXRoZW50aWNh
dGlvbi9XZWJDcmVkZW50aWFsLmNwcCBcCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9VSVBy
b2Nlc3MvQVBJL3F0L3FxdWlja3dlYnZpZXcuY3BwIGIvU291cmNlL1dlYktpdDIvVUlQcm9jZXNz
L0FQSS9xdC9xcXVpY2t3ZWJ2aWV3LmNwcAppbmRleCBlYmY4NDE3Li5hYTE0N2FkIDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJL3F0L3FxdWlja3dlYnZpZXcuY3BwCisr
KyBiL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9BUEkvcXQvcXF1aWNrd2Vidmlldy5jcHAKQEAg
LTMwLDYgKzMwLDcgQEAKICNpbmNsdWRlICJxcXVpY2t3ZWJwYWdlX3BfcC5oIgogI2luY2x1ZGUg
InFxdWlja3dlYnZpZXdfcF9wLmgiCiAjaW5jbHVkZSAicXdlYnByZWZlcmVuY2VzX3BfcC5oIgor
I2luY2x1ZGUgInF3ZWJ2aWV3cG9ydGF0dHJpYnV0ZXNfcC5oIgogCiAjaW5jbHVkZSA8UXREZWNs
YXJhdGl2ZS9RUXVpY2tDYW52YXM+CiAjaW5jbHVkZSA8UXRXaWRnZXRzL1FGaWxlRGlhbG9nPgpA
QCAtMjE2LDYgKzIxNyw4IEBAIFF0Vmlld3BvcnRJbnRlcmFjdGlvbkVuZ2luZTo6Q29uc3RyYWlu
dHMgUVF1aWNrV2ViVmlld1ByaXZhdGU6OmNvbXB1dGVWaWV3cG9ydENvCiAgICAgbmV3Q29uc3Ry
YWludHMuZGV2aWNlUGl4ZWxSYXRpbyA9IGF0dHIuZGV2aWNlUGl4ZWxSYXRpbzsKICAgICBuZXdD
b25zdHJhaW50cy5pc1VzZXJTY2FsYWJsZSA9ICEhYXR0ci51c2VyU2NhbGFibGU7CiAKKyAgICBx
LT5tX2V4cGVyaW1lbnRhbC0+dmlld3BvcnRBdHRyaWJ1dGVzKCktPnVwZGF0ZUZyb21WaWV3cG9y
dEF0dHJpYnV0ZXMoYXR0cik7CisKICAgICByZXR1cm4gbmV3Q29uc3RyYWludHM7CiB9CiAKQEAg
LTM4Miw2ICszODUsNyBAQCBRUXVpY2tXZWJWaWV3RXhwZXJpbWVudGFsOjpRUXVpY2tXZWJWaWV3
RXhwZXJpbWVudGFsKFFRdWlja1dlYlZpZXcgKndlYlZpZXcpCiAgICAgOiBRT2JqZWN0KHdlYlZp
ZXcpCiAgICAgLCBxX3B0cih3ZWJWaWV3KQogICAgICwgZF9wdHIod2ViVmlldy0+ZF9wdHIuZGF0
YSgpKQorICAgICwgbV92aWV3cG9ydEF0dHJpYnV0ZXMobmV3IFFXZWJWaWV3cG9ydEF0dHJpYnV0
ZXModGhpcykpCiB7CiB9CiAKQEAgLTQ0MCw2ICs0NDQsMTEgQEAgdm9pZCBRUXVpY2tXZWJWaWV3
RXhwZXJpbWVudGFsOjpzZXRQcm9tcHREaWFsb2coUURlY2xhcmF0aXZlQ29tcG9uZW50KiBwcm9t
cHREaWEKICAgICBlbWl0IHByb21wdERpYWxvZ0NoYW5nZWQoKTsKIH0KIAorUVdlYlZpZXdwb3J0
QXR0cmlidXRlcyogUVF1aWNrV2ViVmlld0V4cGVyaW1lbnRhbDo6dmlld3BvcnRBdHRyaWJ1dGVz
KCkKK3sKKyAgICByZXR1cm4gbV92aWV3cG9ydEF0dHJpYnV0ZXM7Cit9CisKIFFRdWlja1dlYlZp
ZXc6OlFRdWlja1dlYlZpZXcoUVF1aWNrSXRlbSogcGFyZW50KQogICAgIDogUVF1aWNrSXRlbShw
YXJlbnQpCiAgICAgLCBkX3B0cihuZXcgUVF1aWNrV2ViVmlld1ByaXZhdGUodGhpcykpCmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJL3F0L3FxdWlja3dlYnZpZXdfcC5o
IGIvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL0FQSS9xdC9xcXVpY2t3ZWJ2aWV3X3AuaAppbmRl
eCAzMjkxZGZmLi44YzJiYjlkIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3Mv
QVBJL3F0L3FxdWlja3dlYnZpZXdfcC5oCisrKyBiL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9B
UEkvcXQvcXF1aWNrd2Vidmlld19wLmgKQEAgLTMxLDYgKzMxLDcgQEAgY2xhc3MgUVF1aWNrV2Vi
Vmlld1ByaXZhdGU7CiBjbGFzcyBRUXVpY2tXZWJWaWV3RXhwZXJpbWVudGFsOwogY2xhc3MgUVdl
YkRvd25sb2FkSXRlbTsKIGNsYXNzIFFXZWJQcmVmZXJlbmNlczsKK2NsYXNzIFFXZWJWaWV3cG9y
dEF0dHJpYnV0ZXM7CiAKIG5hbWVzcGFjZSBXVFIgewogY2xhc3MgUGxhdGZvcm1XZWJWaWV3OwpA
QCAtMTY4LDYgKzE2OSw3IEBAIGNsYXNzIFFXRUJLSVRfRVhQT1JUIFFRdWlja1dlYlZpZXdFeHBl
cmltZW50YWwgOiBwdWJsaWMgUU9iamVjdCB7CiAgICAgUV9QUk9QRVJUWShRRGVjbGFyYXRpdmVD
b21wb25lbnQqIGFsZXJ0RGlhbG9nIFJFQUQgYWxlcnREaWFsb2cgV1JJVEUgc2V0QWxlcnREaWFs
b2cgTk9USUZZIGFsZXJ0RGlhbG9nQ2hhbmdlZCkKICAgICBRX1BST1BFUlRZKFFEZWNsYXJhdGl2
ZUNvbXBvbmVudCogY29uZmlybURpYWxvZyBSRUFEIGNvbmZpcm1EaWFsb2cgV1JJVEUgc2V0Q29u
ZmlybURpYWxvZyBOT1RJRlkgY29uZmlybURpYWxvZ0NoYW5nZWQpCiAgICAgUV9QUk9QRVJUWShR
RGVjbGFyYXRpdmVDb21wb25lbnQqIHByb21wdERpYWxvZyBSRUFEIHByb21wdERpYWxvZyBXUklU
RSBzZXRQcm9tcHREaWFsb2cgTk9USUZZIHByb21wdERpYWxvZ0NoYW5nZWQpCisgICAgUV9QUk9Q
RVJUWShRV2ViVmlld3BvcnRBdHRyaWJ1dGVzKiB2aWV3cG9ydEF0dHJpYnV0ZXMgUkVBRCB2aWV3
cG9ydEF0dHJpYnV0ZXMgQ09OU1RBTlQgRklOQUwpCiAKIHB1YmxpYzoKICAgICBRUXVpY2tXZWJW
aWV3RXhwZXJpbWVudGFsKFFRdWlja1dlYlZpZXcqIHdlYlZpZXcpOwpAQCAtMTc5LDYgKzE4MSw3
IEBAIHB1YmxpYzoKICAgICB2b2lkIHNldENvbmZpcm1EaWFsb2coUURlY2xhcmF0aXZlQ29tcG9u
ZW50Kik7CiAgICAgUURlY2xhcmF0aXZlQ29tcG9uZW50KiBwcm9tcHREaWFsb2coKSBjb25zdDsK
ICAgICB2b2lkIHNldFByb21wdERpYWxvZyhRRGVjbGFyYXRpdmVDb21wb25lbnQqKTsKKyAgICBR
V2ViVmlld3BvcnRBdHRyaWJ1dGVzKiB2aWV3cG9ydEF0dHJpYnV0ZXMoKTsKIAogcHVibGljIFFf
U0xPVFM6CiAgICAgdm9pZCBzZXRVc2VUcmFkaXRpb25hbERlc2t0b3BCZWhhdmlvdXIoYm9vbCBl
bmFibGUpOwpAQCAtMTkyLDYgKzE5NSw3IEBAIFFfU0lHTkFMUzoKIHByaXZhdGU6CiAgICAgUVF1
aWNrV2ViVmlldyogcV9wdHI7CiAgICAgUVF1aWNrV2ViVmlld1ByaXZhdGUqIGRfcHRyOworICAg
IFFXZWJWaWV3cG9ydEF0dHJpYnV0ZXMqIG1fdmlld3BvcnRBdHRyaWJ1dGVzOwogCiAgICAgZnJp
ZW5kIGNsYXNzIFF0V2ViUGFnZVByb3h5OwogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9V
SVByb2Nlc3MvQVBJL3F0L3F3ZWJ2aWV3cG9ydGF0dHJpYnV0ZXMuY3BwIGIvU291cmNlL1dlYktp
dDIvVUlQcm9jZXNzL0FQSS9xdC9xd2Vidmlld3BvcnRhdHRyaWJ1dGVzLmNwcApuZXcgZmlsZSBt
b2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi42ZjE0NzE1Ci0tLSAvZGV2L251bGwKKysrIGIvU291
cmNlL1dlYktpdDIvVUlQcm9jZXNzL0FQSS9xdC9xd2Vidmlld3BvcnRhdHRyaWJ1dGVzLmNwcApA
QCAtMCwwICsxLDg5IEBACisvKgorICogQ29weXJpZ2h0IChDKSAyMDExIE5va2lhIENvcnBvcmF0
aW9uIGFuZC9vciBpdHMgc3Vic2lkaWFyeSgtaWVzKQorICoKKyAqIFRoaXMgbGlicmFyeSBpcyBm
cmVlIHNvZnR3YXJlOyB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IKKyAqIG1vZGlmeSBp
dCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBMaWJyYXJ5IEdlbmVyYWwgUHVibGljCisgKiBM
aWNlbnNlIGFzIHB1Ymxpc2hlZCBieSB0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uOyBlaXRo
ZXIKKyAqIHZlcnNpb24gMiBvZiB0aGUgTGljZW5zZSwgb3IgKGF0IHlvdXIgb3B0aW9uKSBhbnkg
bGF0ZXIgdmVyc2lvbi4KKyAqCisgKiBUaGlzIHByb2dyYW0gaXMgZGlzdHJpYnV0ZWQgaW4gdGhl
IGhvcGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCwKKyAqIGJ1dCBXSVRIT1VUIEFOWSBXQVJSQU5U
WTsgd2l0aG91dCBldmVuIHRoZSBpbXBsaWVkIHdhcnJhbnR5IG9mCisgKiBNRVJDSEFOVEFCSUxJ
VFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlIEdOVQorICog
TGlicmFyeSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGZvciBtb3JlIGRldGFpbHMuCisgKgorICog
WW91IHNob3VsZCBoYXZlIHJlY2VpdmVkIGEgY29weSBvZiB0aGUgR05VIExpYnJhcnkgR2VuZXJh
bCBQdWJsaWMgTGljZW5zZQorICogYWxvbmcgd2l0aCB0aGlzIHByb2dyYW07IHNlZSB0aGUgZmls
ZSBDT1BZSU5HLkxJQi4gIElmIG5vdCwgd3JpdGUgdG8KKyAqIHRoZSBGcmVlIFNvZnR3YXJlIEZv
dW5kYXRpb24sIEluYy4sIDUxIEZyYW5rbGluIFN0cmVldCwgRmlmdGggRmxvb3IsCisgKiBCb3N0
b24sIE1BIDAyMTEwLTEzMDEsIFVTQS4KKyAqCisgKi8KKworI2luY2x1ZGUgImNvbmZpZy5oIgor
I2luY2x1ZGUgInF3ZWJ2aWV3cG9ydGF0dHJpYnV0ZXNfcC5oIgorCisjaW5jbHVkZSA8V2ViQ29y
ZS9WaWV3cG9ydEFyZ3VtZW50cy5oPgorCitRV2ViVmlld3BvcnRBdHRyaWJ1dGVzOjpRV2ViVmll
d3BvcnRBdHRyaWJ1dGVzKFFPYmplY3QqIHBhcmVudCkKKyAgICA6IFFPYmplY3QocGFyZW50KQor
eworCit9CisKK1FXZWJWaWV3cG9ydEF0dHJpYnV0ZXM6On5RV2ViVmlld3BvcnRBdHRyaWJ1dGVz
KCkKK3sKKworfQorCitxcmVhbCBRV2ViVmlld3BvcnRBdHRyaWJ1dGVzOjppbml0aWFsU2NhbGUo
KSBjb25zdAoreworICAgIHJldHVybiBtX2luaXRpYWxTY2FsZTsKK30KKworcXJlYWwgUVdlYlZp
ZXdwb3J0QXR0cmlidXRlczo6bWluaW11bVNjYWxlKCkgY29uc3QKK3sKKyAgICByZXR1cm4gbV9t
aW5pbXVtU2NhbGU7Cit9CisKK3FyZWFsIFFXZWJWaWV3cG9ydEF0dHJpYnV0ZXM6Om1heGltdW1T
Y2FsZSgpIGNvbnN0Cit7CisgICAgcmV0dXJuIG1fbWF4aW11bVNjYWxlOworfQorCitib29sIFFX
ZWJWaWV3cG9ydEF0dHJpYnV0ZXM6OmlzU2NhbGFibGUoKSBjb25zdAoreworICAgIHJldHVybiBt
X2lzU2NhbGFibGU7Cit9CisKK2ludCBRV2ViVmlld3BvcnRBdHRyaWJ1dGVzOjpsYXlvdXRXaWR0
aCgpIGNvbnN0Cit7CisgICAgcmV0dXJuIG1fbGF5b3V0U2l6ZS53aWR0aCgpOworfQorCitpbnQg
UVdlYlZpZXdwb3J0QXR0cmlidXRlczo6bGF5b3V0SGVpZ2h0KCkgY29uc3QKK3sKKyAgICByZXR1
cm4gbV9sYXlvdXRTaXplLmhlaWdodCgpOworfQorCit2b2lkIFFXZWJWaWV3cG9ydEF0dHJpYnV0
ZXM6OnVwZGF0ZUZyb21WaWV3cG9ydEF0dHJpYnV0ZXMoY29uc3QgV2ViQ29yZTo6Vmlld3BvcnRB
dHRyaWJ1dGVzJiBhdHRyKQoreworICAgIGlmIChtX2luaXRpYWxTY2FsZSAhPSBhdHRyLmluaXRp
YWxTY2FsZSkgeworICAgICAgICBtX2luaXRpYWxTY2FsZSA9IGF0dHIuaW5pdGlhbFNjYWxlOwor
ICAgICAgICBlbWl0IGluaXRpYWxTY2FsZVVwZGF0ZWQoKTsKKyAgICB9CisgICAgaWYgKG1fbWlu
aW11bVNjYWxlICE9IGF0dHIubWluaW11bVNjYWxlKSB7CisgICAgICAgIG1fbWluaW11bVNjYWxl
ID0gYXR0ci5taW5pbXVtU2NhbGU7CisgICAgICAgIGVtaXQgbWluaW11bVNjYWxlVXBkYXRlZCgp
OworICAgIH0KKyAgICBpZiAobV9tYXhpbXVtU2NhbGUgIT0gYXR0ci5tYXhpbXVtU2NhbGUpIHsK
KyAgICAgICAgbV9tYXhpbXVtU2NhbGUgPSBhdHRyLm1heGltdW1TY2FsZTsKKyAgICAgICAgZW1p
dCBtYXhpbXVtU2NhbGVVcGRhdGVkKCk7CisgICAgfQorICAgIGlmIChtX2lzU2NhbGFibGUgIT0g
ISFhdHRyLnVzZXJTY2FsYWJsZSkgeworICAgICAgICBtX2lzU2NhbGFibGUgPSAhIWF0dHIudXNl
clNjYWxhYmxlOworICAgICAgICBlbWl0IGlzU2NhbGFibGVVcGRhdGVkKCk7CisgICAgfQorICAg
IGlmIChtX2xheW91dFNpemUgIT0gUVNpemUoYXR0ci5sYXlvdXRTaXplKSkgeworICAgICAgICBt
X2xheW91dFNpemUgPSBhdHRyLmxheW91dFNpemU7CisgICAgICAgIGVtaXQgbGF5b3V0U2l6ZVVw
ZGF0ZWQoKTsKKyAgICB9Cit9CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3Mv
QVBJL3F0L3F3ZWJ2aWV3cG9ydGF0dHJpYnV0ZXNfcC5oIGIvU291cmNlL1dlYktpdDIvVUlQcm9j
ZXNzL0FQSS9xdC9xd2Vidmlld3BvcnRhdHRyaWJ1dGVzX3AuaApuZXcgZmlsZSBtb2RlIDEwMDY0
NAppbmRleCAwMDAwMDAwLi44NmM1YWQ3Ci0tLSAvZGV2L251bGwKKysrIGIvU291cmNlL1dlYktp
dDIvVUlQcm9jZXNzL0FQSS9xdC9xd2Vidmlld3BvcnRhdHRyaWJ1dGVzX3AuaApAQCAtMCwwICsx
LDcwIEBACisvKgorICogQ29weXJpZ2h0IChDKSAyMDExIE5va2lhIENvcnBvcmF0aW9uIGFuZC9v
ciBpdHMgc3Vic2lkaWFyeSgtaWVzKQorICoKKyAqIFRoaXMgbGlicmFyeSBpcyBmcmVlIHNvZnR3
YXJlOyB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IKKyAqIG1vZGlmeSBpdCB1bmRlciB0
aGUgdGVybXMgb2YgdGhlIEdOVSBMaWJyYXJ5IEdlbmVyYWwgUHVibGljCisgKiBMaWNlbnNlIGFz
IHB1Ymxpc2hlZCBieSB0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uOyBlaXRoZXIKKyAqIHZl
cnNpb24gMiBvZiB0aGUgTGljZW5zZSwgb3IgKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVy
c2lvbi4KKyAqCisgKiBUaGlzIHByb2dyYW0gaXMgZGlzdHJpYnV0ZWQgaW4gdGhlIGhvcGUgdGhh
dCBpdCB3aWxsIGJlIHVzZWZ1bCwKKyAqIGJ1dCBXSVRIT1VUIEFOWSBXQVJSQU5UWTsgd2l0aG91
dCBldmVuIHRoZSBpbXBsaWVkIHdhcnJhbnR5IG9mCisgKiBNRVJDSEFOVEFCSUxJVFkgb3IgRklU
TkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlIEdOVQorICogTGlicmFyeSBH
ZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGZvciBtb3JlIGRldGFpbHMuCisgKgorICogWW91IHNob3Vs
ZCBoYXZlIHJlY2VpdmVkIGEgY29weSBvZiB0aGUgR05VIExpYnJhcnkgR2VuZXJhbCBQdWJsaWMg
TGljZW5zZQorICogYWxvbmcgd2l0aCB0aGlzIHByb2dyYW07IHNlZSB0aGUgZmlsZSBDT1BZSU5H
LkxJQi4gIElmIG5vdCwgd3JpdGUgdG8KKyAqIHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb24s
IEluYy4sIDUxIEZyYW5rbGluIFN0cmVldCwgRmlmdGggRmxvb3IsCisgKiBCb3N0b24sIE1BIDAy
MTEwLTEzMDEsIFVTQS4KKyAqCisgKi8KKworI2lmbmRlZiBxd2Vidmlld3BvcnRhdHRyaWJ1dGVz
X3BfaAorI2RlZmluZSBxd2Vidmlld3BvcnRhdHRyaWJ1dGVzX3BfaAorCisjaW5jbHVkZSAicXdl
YmtpdGdsb2JhbC5oIgorI2luY2x1ZGUgPFF0Q29yZS9RT2JqZWN0PgorI2luY2x1ZGUgPFF0Q29y
ZS9RU2l6ZT4KKyNpbmNsdWRlIDxRdERlY2xhcmF0aXZlL1F0RGVjbGFyYXRpdmU+CisKK25hbWVz
cGFjZSBXZWJDb3JlIHsKK2NsYXNzIFZpZXdwb3J0QXR0cmlidXRlczsKK30KKworY2xhc3MgUVdF
QktJVF9FWFBPUlQgUVdlYlZpZXdwb3J0QXR0cmlidXRlcyA6IHB1YmxpYyBRT2JqZWN0IHsKKyAg
ICBRX09CSkVDVAorICAgIFFfUFJPUEVSVFkocXJlYWwgaW5pdGlhbFNjYWxlIFJFQUQgaW5pdGlh
bFNjYWxlIE5PVElGWSBpbml0aWFsU2NhbGVVcGRhdGVkKQorICAgIFFfUFJPUEVSVFkocXJlYWwg
bWluaW11bVNjYWxlIFJFQUQgbWluaW11bVNjYWxlIE5PVElGWSBtaW5pbXVtU2NhbGVVcGRhdGVk
KQorICAgIFFfUFJPUEVSVFkocXJlYWwgbWF4aW11bVNjYWxlIFJFQUQgbWF4aW11bVNjYWxlIE5P
VElGWSBtYXhpbXVtU2NhbGVVcGRhdGVkKQorICAgIFFfUFJPUEVSVFkoYm9vbCBpc1NjYWxhYmxl
IFJFQUQgaXNTY2FsYWJsZSBOT1RJRlkgaXNTY2FsYWJsZVVwZGF0ZWQpCisgICAgUV9QUk9QRVJU
WShpbnQgbGF5b3V0V2lkdGggUkVBRCBsYXlvdXRXaWR0aCBOT1RJRlkgbGF5b3V0U2l6ZVVwZGF0
ZWQpCisgICAgUV9QUk9QRVJUWShpbnQgbGF5b3V0SGVpZ2h0IFJFQUQgbGF5b3V0SGVpZ2h0IE5P
VElGWSBsYXlvdXRTaXplVXBkYXRlZCkKKworc2lnbmFsczoKKyAgICB2b2lkIGluaXRpYWxTY2Fs
ZVVwZGF0ZWQoKTsKKyAgICB2b2lkIG1heGltdW1TY2FsZVVwZGF0ZWQoKTsKKyAgICB2b2lkIG1p
bmltdW1TY2FsZVVwZGF0ZWQoKTsKKyAgICB2b2lkIGlzU2NhbGFibGVVcGRhdGVkKCk7CisgICAg
dm9pZCBsYXlvdXRTaXplVXBkYXRlZCgpOworCitwdWJsaWM6CisgICAgUVdlYlZpZXdwb3J0QXR0
cmlidXRlcyhRT2JqZWN0KiBwYXJlbnQgPSAwKTsKKyAgICB2aXJ0dWFsIH5RV2ViVmlld3BvcnRB
dHRyaWJ1dGVzKCk7CisKKyAgICBxcmVhbCBpbml0aWFsU2NhbGUoKSBjb25zdDsKKyAgICBxcmVh
bCBtaW5pbXVtU2NhbGUoKSBjb25zdDsKKyAgICBxcmVhbCBtYXhpbXVtU2NhbGUoKSBjb25zdDsK
KyAgICBib29sIGlzU2NhbGFibGUoKSBjb25zdDsKKworICAgIGludCBsYXlvdXRXaWR0aCgpIGNv
bnN0OworICAgIGludCBsYXlvdXRIZWlnaHQoKSBjb25zdDsKKworICAgIHZvaWQgdXBkYXRlRnJv
bVZpZXdwb3J0QXR0cmlidXRlcyhjb25zdCBXZWJDb3JlOjpWaWV3cG9ydEF0dHJpYnV0ZXMmIGF0
dHIpOworcHJpdmF0ZToKKyAgICBxcmVhbCBtX2luaXRpYWxTY2FsZTsKKyAgICBxcmVhbCBtX21p
bmltdW1TY2FsZTsKKyAgICBxcmVhbCBtX21heGltdW1TY2FsZTsKKyAgICBib29sIG1faXNTY2Fs
YWJsZTsKKyAgICBRU2l6ZSBtX2xheW91dFNpemU7Cit9OworCisjZW5kaWYgLy8gcXdlYnZpZXdw
b3J0YXR0cmlidXRlc19wX2gKZGlmZiAtLWdpdCBhL1NvdXJjZS9xdHdlYmtpdC1leHBvcnQubWFw
IGIvU291cmNlL3F0d2Via2l0LWV4cG9ydC5tYXAKaW5kZXggYTQyNjIwMy4uZDM5ODRlZiAxMDA2
NDQKLS0tIGEvU291cmNlL3F0d2Via2l0LWV4cG9ydC5tYXAKKysrIGIvU291cmNlL3F0d2Via2l0
LWV4cG9ydC5tYXAKQEAgLTEyNCw2ICsxMjQsOSBAQCBxd2tfMS4wIHsKICAgICAgICAgKlFXZWJE
b3dubG9hZEl0ZW07CiAgICAgICAgIG5vbi12aXJ0dWFsP3RodW5rP3RvP1FXZWJEb3dubG9hZEl0
ZW0qOwogICAgICAgICBRV2ViRG93bmxvYWRJdGVtOjoqOworICAgICAgICAqUVdlYlZpZXdwb3J0
QXR0cmlidXRlczsKKyAgICAgICAgbm9uLXZpcnR1YWw/dGh1bms/dG8/UVdlYlZpZXdwb3J0QXR0
cmlidXRlczsKKyAgICAgICAgUVdlYlZpZXdwb3J0QXR0cmlidXRlczo6KjsKICAgICAgICAgKlFR
dWlja1dlYlBhZ2U7CiAgICAgICAgIG5vbi12aXJ0dWFsP3RodW5rP3RvP1FRdWlja1dlYlBhZ2Uq
OwogICAgICAgICBRUXVpY2tXZWJQYWdlOjoqOwpkaWZmIC0tZ2l0IGEvVG9vbHMvQ2hhbmdlTG9n
IGIvVG9vbHMvQ2hhbmdlTG9nCmluZGV4IDZhNzg0ZWIuLjk2MTUxNDcgMTAwNjQ0Ci0tLSBhL1Rv
b2xzL0NoYW5nZUxvZworKysgYi9Ub29scy9DaGFuZ2VMb2cKQEAgLTEsMyArMSwyMSBAQAorMjAx
MS0xMS0yMSAgTWljaGFlbCBCcnVuaW5nICA8bWljaGFlbC5icnVuaW5nQG5va2lhLmNvbT4KKwor
ICAgICAgICBbUVRdW1dLMl1BZGQgKGV4cGVyaW1lbnRhbCkgdmlld3BvcnQgYXR0cmlidXRlcyB2
aWV3IHRvIE1pbmlicm93c2VyL3F0LgorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9z
aG93X2J1Zy5jZ2k/aWQ9NzI4OTMKKworICAgICAgICBSZXZpZXdlZCBieSBUb3IgQXJuZSBWZXN0
Ym8uCisKKyAgICAgICAgVGhpcyBwYXRjaCBleHRlbmRzIFFRdWlja1dlYlZpZXdFeHBlcmltZW50
YWwgYnkgYSBwcm9wZXJ0eSBuYW1lZAorICAgICAgICB2aWV3cG9ydEF0dHJpYnV0ZXMsIHdoaWNo
IGNvbnRhaW5zIHRoZSB2aWV3cG9ydCBzY2FsYWJpbGl0eSBhbmQKKyAgICAgICAgbGF5b3V0IHNp
emUgaW5mb3JtYXRpb24uIFRoaXMgcHJvcGVydHkgaXMgZXhwb3NlZCB0byBRTUwgdGhyb3VnaAor
ICAgICAgICB0aGUgZXhwZXJpbWVudGFsIGV4dGVuc2lvbiBmb3IgUVF1aWNrV2ViVmlldy4KKwor
ICAgICAgICAqIE1pbmlCcm93c2VyL3F0L01pbmlCcm93c2VyLnBybzoKKyAgICAgICAgKiBNaW5p
QnJvd3Nlci9xdC9NaW5pQnJvd3Nlci5xcmM6CisgICAgICAgICogTWluaUJyb3dzZXIvcXQvaWNv
bnMvaW5mby5wbmc6IEFkZGVkLgorICAgICAgICAqIE1pbmlCcm93c2VyL3F0L3FtbC9Ccm93c2Vy
V2luZG93LnFtbDoKKyAgICAgICAgKiBNaW5pQnJvd3Nlci9xdC9xbWwvVmlld3BvcnRBdHRyaWJ1
dGVzSXRlbS5xbWw6IEFkZGVkLgorCiAyMDExLTExLTIzICBTaGVyaWZmIEJvdCAgPHdlYmtpdC5y
ZXZpZXcuYm90QGdtYWlsLmNvbT4KIAogICAgICAgICBVbnJldmlld2VkLCByb2xsaW5nIG91dCBy
MTAxMTA3LgpkaWZmIC0tZ2l0IGEvVG9vbHMvTWluaUJyb3dzZXIvcXQvTWluaUJyb3dzZXIucHJv
IGIvVG9vbHMvTWluaUJyb3dzZXIvcXQvTWluaUJyb3dzZXIucHJvCmluZGV4IDVjNDMxOTguLmE2
NDc4ZDQgMTAwNjQ0Ci0tLSBhL1Rvb2xzL01pbmlCcm93c2VyL3F0L01pbmlCcm93c2VyLnBybwor
KysgYi9Ub29scy9NaW5pQnJvd3Nlci9xdC9NaW5pQnJvd3Nlci5wcm8KQEAgLTM1LDQgKzM1LDUg
QEAgbWFjeDogUVQgKz0geG1sCiBSRVNPVVJDRVMgKz0gTWluaUJyb3dzZXIucXJjCiAKIE9USEVS
X0ZJTEVTICs9IFwKLSAgICBxbWwvQnJvd3NlcldpbmRvdy5xbWwKKyAgICBxbWwvQnJvd3Nlcldp
bmRvdy5xbWwgXAorICAgIHFtbC9WaWV3cG9ydEF0dHJpYnV0ZXNJdGVtLnFtbApkaWZmIC0tZ2l0
IGEvVG9vbHMvTWluaUJyb3dzZXIvcXQvTWluaUJyb3dzZXIucXJjIGIvVG9vbHMvTWluaUJyb3dz
ZXIvcXQvTWluaUJyb3dzZXIucXJjCmluZGV4IGE1N2E5NTQuLmIyMTk4NGMgMTAwNjQ0Ci0tLSBh
L1Rvb2xzL01pbmlCcm93c2VyL3F0L01pbmlCcm93c2VyLnFyYworKysgYi9Ub29scy9NaW5pQnJv
d3Nlci9xdC9NaW5pQnJvd3Nlci5xcmMKQEAgLTEsMTAgKzEsMTIgQEAKIDxSQ0M+CiAgICAgPHFy
ZXNvdXJjZSBwcmVmaXg9Ii8iPgorICAgICAgICA8ZmlsZT5pY29ucy9pbmZvLnBuZzwvZmlsZT4K
ICAgICAgICAgPGZpbGU+aWNvbnMvbmV4dC5wbmc8L2ZpbGU+CiAgICAgICAgIDxmaWxlPmljb25z
L3ByZXZpb3VzLnBuZzwvZmlsZT4KICAgICAgICAgPGZpbGU+aWNvbnMvcmVmcmVzaC5wbmc8L2Zp
bGU+CiAgICAgICAgIDxmaWxlPmljb25zL3N0b3AucG5nPC9maWxlPgogICAgICAgICA8ZmlsZT5x
bWwvQnJvd3NlcldpbmRvdy5xbWw8L2ZpbGU+CisgICAgICAgIDxmaWxlPnFtbC9WaWV3cG9ydEF0
dHJpYnV0ZXNJdGVtLnFtbDwvZmlsZT4KICAgICAgICAgPGZpbGU+dXNlcmFnZW50bGlzdC50eHQ8
L2ZpbGU+CiAgICAgPC9xcmVzb3VyY2U+CiA8L1JDQz4KZGlmZiAtLWdpdCBhL1Rvb2xzL01pbmlC
cm93c2VyL3F0L2ljb25zL2luZm8ucG5nIGIvVG9vbHMvTWluaUJyb3dzZXIvcXQvaWNvbnMvaW5m
by5wbmcKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMC4uZGI0ODNmZjEwMGYxNGU3OWMxYzYxODVlMTliMzFmZTE0ZmFlZGU5
ZgpHSVQgYmluYXJ5IHBhdGNoCmxpdGVyYWwgMzQwCnpjbWVBU0BOPyhvbEh5YHVWQnEhaWEwdnBe
VmojQEgxfCpNYyQqfjRmakt4OWpQN0xlTCQtRCR8KnBqXjZUXlJtQAp6O0RXdSZDaiYofDNwXnI9
ODVwPlFMNzAoWSkqSzAtQWJXfFl1UGdnKVpaUUZBdkczbENtSTgmWWMpQj0tU2UkLSkKeld2Pl5y
cVhfR1JeUUtEXkJvI3duT143O249JHlMOFJeTU4kM2o1QjY5VzJfKUQ8KVEhQipzKzlFJllgPHNB
Y08rCnp0KEwhdlE1dSM3Skl8Y0FFVmR8VVNGViMqRkt0KVVYMzh0PEVWZztiY3NfTXJTbX5YKCEt
cjRMe2MzV0pIfHx4Mwp6WFkmVlh3SCpnSWBVfnNKMHp8NDhOantMQnBFfmF3ZjhuMCkhWitRXng7
QCNxSkQ9SGo+fjZue3BtTjFndyhGXyQKej5QIW8oYmIwUzVjZFJ5QjZ1WEZIPE44fX0qVGE3Qm9V
Kno1dVhpVlpXTUohPjZ9dCtBLTJhXkt3XzdCeXt6WEp8CmUrZVcpcjlge0Fkdn1ObEooc1k2VFdB
SnFLYjZNdzwmOyRVJVZTdUlwCgpsaXRlcmFsIDAKSGNtVj9kMDAwMDEKCmRpZmYgLS1naXQgYS9U
b29scy9NaW5pQnJvd3Nlci9xdC9xbWwvQnJvd3NlcldpbmRvdy5xbWwgYi9Ub29scy9NaW5pQnJv
d3Nlci9xdC9xbWwvQnJvd3NlcldpbmRvdy5xbWwKaW5kZXggNWNjMTUyYS4uMTRhMTljNyAxMDA2
NDQKLS0tIGEvVG9vbHMvTWluaUJyb3dzZXIvcXQvcW1sL0Jyb3dzZXJXaW5kb3cucW1sCisrKyBi
L1Rvb2xzL01pbmlCcm93c2VyL3F0L3FtbC9Ccm93c2VyV2luZG93LnFtbApAQCAtMjgsNiArMjgs
NyBAQAogCiBpbXBvcnQgUXRRdWljayAyLjAKIGltcG9ydCBRdFdlYktpdCAzLjAKK2ltcG9ydCBR
dFdlYktpdC5leHBlcmltZW50YWwgMy4wCiAKIFJlY3RhbmdsZSB7CiAgICAgLy8gRG8gbm90IGRl
ZmluZSBhbmNob3JzIG9yIGFuIGluaXRpYWwgc2l6ZSBoZXJlISBUaGlzIHdvdWxkIG1lc3MgdXAg
d2l0aCBRU0dWaWV3OjpTaXplUm9vdE9iamVjdFRvVmlldy4KQEAgLTEzNCw2ICsxMzUsMjUgQEAg
UmVjdGFuZ2xlIHsKICAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgIH0KICAg
ICAgICAgICAgIH0KKworICAgICAgICAgICAgUmVjdGFuZ2xlIHsKKyAgICAgICAgICAgICAgICBp
ZDogdmlld3BvcnRBdHRyaWJ1dGVzSW5mb0J1dHRvbgorICAgICAgICAgICAgICAgIGhlaWdodDog
bmF2aWdhdGlvbkJhci5oZWlnaHQgLSAyCisgICAgICAgICAgICAgICAgd2lkdGg6IGhlaWdodAor
ICAgICAgICAgICAgICAgIGNvbG9yOiAiI2VmZWZlZiIKKworICAgICAgICAgICAgICAgIEltYWdl
IHsKKyAgICAgICAgICAgICAgICAgICAgYW5jaG9ycy5jZW50ZXJJbjogcGFyZW50CisgICAgICAg
ICAgICAgICAgICAgIHNvdXJjZTogIi4uL2ljb25zL2luZm8ucG5nIgorICAgICAgICAgICAgICAg
IH0KKworICAgICAgICAgICAgICAgIE1vdXNlQXJlYSB7CisgICAgICAgICAgICAgICAgICAgIGFu
Y2hvcnMuZmlsbDogcGFyZW50CisgICAgICAgICAgICAgICAgICAgIG9uQ2xpY2tlZDogeworICAg
ICAgICAgICAgICAgICAgICAgICB2aWV3cG9ydEF0dHJpYnV0ZXNJdGVtLnZpc2libGUgPSAhdmll
d3BvcnRBdHRyaWJ1dGVzSXRlbS52aXNpYmxlCisgICAgICAgICAgICAgICAgICAgIH0KKyAgICAg
ICAgICAgICAgICB9CisgICAgICAgICAgICB9CiAgICAgICAgIH0KICAgICAgICAgUmVjdGFuZ2xl
IHsKICAgICAgICAgICAgIGNvbG9yOiAid2hpdGUiCkBAIC0xODYsNyArMjA2LDYgQEAgUmVjdGFu
Z2xlIHsKICAgICAgICAgICAgIH0KICAgICAgICAgfQogICAgIH0KLQogICAgIFdlYlZpZXcgewog
ICAgICAgICBpZDogd2ViVmlldwogICAgICAgICBhbmNob3JzIHsKQEAgLTIwNSw2ICsyMjQsMjIg
QEAgUmVjdGFuZ2xlIHsKICAgICAgICAgfQogICAgIH0KIAorICAgIFZpZXdwb3J0QXR0cmlidXRl
c0l0ZW0geworICAgICAgICBpZDogdmlld3BvcnRBdHRyaWJ1dGVzSXRlbQorICAgICAgICBhbmNo
b3JzIHsKKyAgICAgICAgICAgIHRvcDogbmF2aWdhdGlvbkJhci5ib3R0b20KKyAgICAgICAgICAg
IGxlZnQ6IHBhcmVudC5sZWZ0CisgICAgICAgICAgICByaWdodDogcGFyZW50LnJpZ2h0CisgICAg
ICAgICAgICBib3R0b206IHBhcmVudC5ib3R0b20KKyAgICAgICAgfQorICAgICAgICB2aXNpYmxl
OiBmYWxzZQorICAgICAgICAvLyBVc2luZyB0aGUgd2VidmlldyBwcm9wZXJ0eSBoZXJlIGluc3Rl
YWQgb2YgdGhlIHdlYlZpZXcgaXRlbSBkaXJlY3RseQorICAgICAgICAvLyBpcyBhIHdvcmthcm91
bmQgZm9yIGFuIGlzc3VlIHdpdGggdGhlIGV4cGVyaW1lbnRhbCBleHRlbnNpb24gbm90IGJlaW5n
CisgICAgICAgIC8vIGluaXRpYWxpemVkLiBUaGlzIHNob3VsZCBiZSBjaGFuZ2VkIHRvIHVzZSB0
aGUgd2ViVmlldyBpdGVtIGFzIHNvb24gYXMKKyAgICAgICAgLy8gdGhlIGlzc3VlIGlzIHJlc292
bGVkLgorICAgICAgICB2aWV3cG9ydEF0dHJpYnV0ZXMgOiB3ZWJ2aWV3LmV4cGVyaW1lbnRhbC52
aWV3cG9ydEF0dHJpYnV0ZXMKKyAgICB9CisKICAgICBLZXlzLm9uUHJlc3NlZDogewogICAgICAg
ICBpZiAoKChldmVudC5tb2RpZmllcnMgJiBRdC5Db250cm9sTW9kaWZpZXIpICYmIGV2ZW50Lmtl
eSA9PSBRdC5LZXlfTCkgfHwgZXZlbnQua2V5ID09IFF0LmtleV9GNikgewogICAgICAgICAgICAg
Zm9jdXNBZGRyZXNzQmFyKCkKZGlmZiAtLWdpdCBhL1Rvb2xzL01pbmlCcm93c2VyL3F0L3FtbC9W
aWV3cG9ydEF0dHJpYnV0ZXNJdGVtLnFtbCBiL1Rvb2xzL01pbmlCcm93c2VyL3F0L3FtbC9WaWV3
cG9ydEF0dHJpYnV0ZXNJdGVtLnFtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAw
Li5iZDA5NjIzCi0tLSAvZGV2L251bGwKKysrIGIvVG9vbHMvTWluaUJyb3dzZXIvcXQvcW1sL1Zp
ZXdwb3J0QXR0cmlidXRlc0l0ZW0ucW1sCkBAIC0wLDAgKzEsNDUgQEAKK2ltcG9ydCBRdFF1aWNr
IDIuMAoraW1wb3J0IFF0V2ViS2l0IDMuMAorCitSZWN0YW5nbGUgeworICAgIHByb3BlcnR5IHZh
ciB2aWV3cG9ydEF0dHJpYnV0ZXMKKworICAgIGNvbG9yOiAiYmxhY2siCisgICAgb3BhY2l0eTog
MC41CisKKyAgICBUZXh0IHsKKyAgICAgICAgaWQ6IHZpZXdwb3J0QXR0cmlidXRlc0xhYmVsCisg
ICAgICAgIHRleHQ6ICJWaWV3cG9ydCBBdHRyaWJ1dGVzIgorICAgICAgICBjb2xvcjogIndoaXRl
IgorICAgIH0KKyAgICBUZXh0IHsKKyAgICAgICAgaWQ6IGluaXRpYWxTY2FsZUxhYmVsCisgICAg
ICAgIGFuY2hvcnMudG9wOiB2aWV3cG9ydEF0dHJpYnV0ZXNMYWJlbC5ib3R0b20KKyAgICAgICAg
dGV4dDogIkluaXRpYWwgc2NhbGU6ICIgKyB2aWV3cG9ydEF0dHJpYnV0ZXMuaW5pdGlhbFNjYWxl
CisgICAgICAgIGNvbG9yOiAid2hpdGUiCisgICAgfQorICAgIFRleHQgeworICAgICAgICBpZDog
bWluaW11bVNjYWxlTGFiZWwKKyAgICAgICAgYW5jaG9ycy50b3A6IGluaXRpYWxTY2FsZUxhYmVs
LmJvdHRvbQorICAgICAgICB0ZXh0OiAiTWluaW11bSBzY2FsZTogIiArIHZpZXdwb3J0QXR0cmli
dXRlcy5taW5pbXVtU2NhbGUKKyAgICAgICAgY29sb3I6ICJ3aGl0ZSIKKyAgICB9CisgICAgVGV4
dCB7CisgICAgICAgIGlkOiBtYXhpbXVtU2NhbGVMYWJlbAorICAgICAgICBhbmNob3JzLnRvcDog
bWluaW11bVNjYWxlTGFiZWwuYm90dG9tCisgICAgICAgIHRleHQ6ICJNYXhpbXVtIHNjYWxlOiAi
ICsgdmlld3BvcnRBdHRyaWJ1dGVzLm1heGltdW1TY2FsZQorICAgICAgICBjb2xvcjogIndoaXRl
IgorICAgIH0KKyAgICBUZXh0IHsKKyAgICAgICAgaWQ6IGxheW91dFNpemVJbmZvTGFiZWwKKyAg
ICAgICAgYW5jaG9ycy50b3A6IG1heGltdW1TY2FsZUxhYmVsLmJvdHRvbQorICAgICAgICB0ZXh0
OiAiVmlld3BvcnQgbGF5b3V0IHNpemU6ICgiICsgdmlld3BvcnRBdHRyaWJ1dGVzLmxheW91dFdp
ZHRoICsgIngiICsgdmlld3BvcnRBdHRyaWJ1dGVzLmxheW91dEhlaWdodCArICIpIgorICAgICAg
ICBjb2xvcjogIndoaXRlIgorICAgIH0KKyAgICBUZXh0IHsKKyAgICAgICAgaWQ6IHNjYWxhYmls
aXR5SW5mb0xhYmVsCisgICAgICAgIGFuY2hvcnMudG9wOiBsYXlvdXRTaXplSW5mb0xhYmVsLmJv
dHRvbQorICAgICAgICB0ZXh0OiAiVmlldyAiICsgKHZpZXdwb3J0QXR0cmlidXRlcy5pc1NjYWxh
YmxlID8gImlzICIgOiAiaXMgbm90ICIgKSArICJzY2FsYWJsZS4iCisgICAgICAgIGNvbG9yOiAi
d2hpdGUiCisgICAgfQorfQotLSAKMS43LjQuMQoK
</data>
<flag name="review"
          id="115672"
          type_id="1"
          status="+"
          setter="vestbo"
    />
    <flag name="commit-queue"
          id="115676"
          type_id="3"
          status="-"
          setter="vestbo"
    />
          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>116495</attachid>
            <date>2011-11-24 04:15:02 -0800</date>
            <delta_ts>2011-11-24 08:28:49 -0800</delta_ts>
            <desc>Updated proposed patch.</desc>
            <filename>0001-QT-WK2-Add-experimental-viewport-attributes-view-to-.patch</filename>
            <type>text/plain</type>
            <size>23627</size>
            <attacher name="Michael Brüning">michael.bruning</attacher>
            
              <data encoding="base64">RnJvbSAyODM2MDQzODczOWJhZGE5MTFkYTJkNTdiZmVhZjA2NTIyN2MxNmUyIE1vbiBTZXAgMTcg
MDA6MDA6MDAgMjAwMQpGcm9tOiBNaWNoYWVsIEJydW5pbmcgPG1pY2hhZWwuYnJ1bmluZ0Bub2tp
YS5jb20+CkRhdGU6IFdlZCwgMjMgTm92IDIwMTEgMTQ6MjQ6NDYgKzAxMDAKU3ViamVjdDogW1BB
VENIXSBbUVRdW1dLMl1BZGQgKGV4cGVyaW1lbnRhbCkgdmlld3BvcnQgYXR0cmlidXRlcyB2aWV3
IHRvIE1pbmlicm93c2VyL3F0CgpodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/
aWQ9NzI4OTMKClJldmlld2VkIGJ5IFRvciBBcm5lIFZlc3RibwoKVGhpcyBleHRlbmRzIFFRdWlj
a1dlYlZpZXdFeHBlcmltZW50YWwgYnkgYSBwcm9wZXJ0eSBuYW1lZAp2aWV3cG9ydEF0dHJpYnV0
ZXMsIHdoaWNoIGNvbnRhaW5zIHRoZSB2aWV3cG9ydCBzY2FsYWJpbGl0eSBhbmQKbGF5b3V0IHNp
emUgaW5mb3JtYXRpb24uIFRoaXMgcHJvcGVydHkgaXMgZXhwb3NlZCB0byBRTUwgdGhyb3VnaAp0
aGUgZXhwZXJpbWVudGFsIGV4dGVuc2lvbiBmb3IgUVF1aWNrV2ViVmlldy4KClNvdXJjZToKCiog
U291cmNlL3F0d2Via2l0LWV4cG9ydC5tYXA6CgpTb3VyY2UvV2ViS2l0L3F0OgoKKiBkZWNsYXJh
dGlxdmUvZXhwZXJpbWVudGFsL3BsdWdpbi5jcHA6CgpTb3VyY2UvV2ViS2l0MjoKCiogVGFyZ2V0
LnByaToKKiBVSVByb2Nlc3MvQVBJL3F0L3FxdWlja3dlYnZpZXcuY3BwOgooUVF1aWNrV2ViVmll
d1ByaXZhdGU6OmNvbXB1dGVWaWV3cG9ydENvbnN0cmFpbnRzKToKKFFRdWlja1dlYlZpZXdFeHBl
cmltZW50YWw6OlFRdWlja1dlYlZpZXdFeHBlcmltZW50YWwpOgooUVF1aWNrV2ViVmlld0V4cGVy
aW1lbnRhbDo6YXR0cmlidXRlcyk6CiogVUlQcm9jZXNzL0FQSS9xdC9xcXVpY2t3ZWJ2aWV3X3Au
aDoKKiBVSVByb2Nlc3MvQVBJL3F0L3F3ZWJ2aWV3cG9ydGF0dHJpYnV0ZXMuY3BwOiBBZGRlZC4K
KFFXZWJWaWV3cG9ydEF0dHJpYnV0ZXM6OlFXZWJWaWV3cG9ydEF0dHJpYnV0ZXMpOgooUVdlYlZp
ZXdwb3J0QXR0cmlidXRlczo6flFXZWJWaWV3cG9ydEF0dHJpYnV0ZXMpOgooUVdlYlZpZXdwb3J0
QXR0cmlidXRlczo6aW5pdGlhbFNjYWxlKToKKFFXZWJWaWV3cG9ydEF0dHJpYnV0ZXM6Om1pbmlt
dW1TY2FsZSk6CihRV2ViVmlld3BvcnRBdHRyaWJ1dGVzOjptYXhpbXVtU2NhbGUpOgooUVdlYlZp
ZXdwb3J0QXR0cmlidXRlczo6aXNTY2FsYWJsZSk6CihRV2ViVmlld3BvcnRBdHRyaWJ1dGVzOjps
YXlvdXRXaWR0aCk6CihRV2ViVmlld3BvcnRBdHRyaWJ1dGVzOjpsYXlvdXRIZWlnaHQpOgooUVdl
YlZpZXdwb3J0QXR0cmlidXRlczo6dXBkYXRlRnJvbVZpZXdwb3J0QXR0cmlidXRlcyk6CiogVUlQ
cm9jZXNzL0FQSS9xdC9xd2Vidmlld3BvcnRhdHRyaWJ1dGVzX3AuaDogQWRkZWQuCgpUb29sczoK
CiogTWluaUJyb3dzZXIvcXQvTWluaUJyb3dzZXIucHJvOgoqIE1pbmlCcm93c2VyL3F0L01pbmlC
cm93c2VyLnFyYzoKKiBNaW5pQnJvd3Nlci9xdC9pY29ucy9pbmZvLnBuZzogQWRkZWQuCiogTWlu
aUJyb3dzZXIvcXQvcW1sL0Jyb3dzZXJXaW5kb3cucW1sOgoqIE1pbmlCcm93c2VyL3F0L3FtbC9W
aWV3cG9ydEF0dHJpYnV0ZXNJdGVtLnFtbDogQWRkZWQuCi0tLQogQ2hhbmdlTG9nICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCAgIDE0ICsrKwogU291cmNlL1dlYktp
dC9xdC9DaGFuZ2VMb2cgICAgICAgICAgICAgICAgICAgICAgICAgfCAgIDE0ICsrKwogLi4uL1dl
YktpdC9xdC9kZWNsYXJhdGl2ZS9leHBlcmltZW50YWwvcGx1Z2luLmNwcCAgfCAgICAzICsKIFNv
dXJjZS9XZWJLaXQyL0NoYW5nZUxvZyAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgICAzMCAr
KysrKysrCiBTb3VyY2UvV2ViS2l0Mi9UYXJnZXQucHJpICAgICAgICAgICAgICAgICAgICAgICAg
ICB8ICAgIDIgKwogU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL0FQSS9xdC9xcXVpY2t3ZWJ2aWV3
LmNwcCAgfCAgICA5ICsrCiBTb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJL3F0L3FxdWlja3dl
YnZpZXdfcC5oICB8ICAgIDQgKwogLi4uL1VJUHJvY2Vzcy9BUEkvcXQvcXdlYnZpZXdwb3J0YXR0
cmlidXRlcy5jcHAgICAgfCAgIDg5ICsrKysrKysrKysrKysrKysrKysrCiAuLi4vVUlQcm9jZXNz
L0FQSS9xdC9xd2Vidmlld3BvcnRhdHRyaWJ1dGVzX3AuaCAgICB8ICAgNzAgKysrKysrKysrKysr
KysrCiBTb3VyY2UvcXR3ZWJraXQtZXhwb3J0Lm1hcCAgICAgICAgICAgICAgICAgICAgICAgICB8
ICAgIDMgKwogVG9vbHMvQ2hhbmdlTG9nICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgfCAgIDE4ICsrKysKIFRvb2xzL01pbmlCcm93c2VyL3F0L01pbmlCcm93c2VyLnBybyAgICAg
ICAgICAgICAgIHwgICAgMyArLQogVG9vbHMvTWluaUJyb3dzZXIvcXQvTWluaUJyb3dzZXIucXJj
ICAgICAgICAgICAgICAgfCAgICAyICsKIFRvb2xzL01pbmlCcm93c2VyL3F0L2ljb25zL2luZm8u
cG5nICAgICAgICAgICAgICAgIHwgIEJpbiAwIC0+IDM0MCBieXRlcwogVG9vbHMvTWluaUJyb3dz
ZXIvcXQvcW1sL0Jyb3dzZXJXaW5kb3cucW1sICAgICAgICAgfCAgIDM2ICsrKysrKysrCiAuLi4v
TWluaUJyb3dzZXIvcXQvcW1sL1ZpZXdwb3J0QXR0cmlidXRlc0l0ZW0ucW1sICB8ICAgNDUgKysr
KysrKysrKwogMTYgZmlsZXMgY2hhbmdlZCwgMzQxIGluc2VydGlvbnMoKyksIDEgZGVsZXRpb25z
KC0pCiBjcmVhdGUgbW9kZSAxMDA2NDQgU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL0FQSS9xdC9x
d2Vidmlld3BvcnRhdHRyaWJ1dGVzLmNwcAogY3JlYXRlIG1vZGUgMTAwNjQ0IFNvdXJjZS9XZWJL
aXQyL1VJUHJvY2Vzcy9BUEkvcXQvcXdlYnZpZXdwb3J0YXR0cmlidXRlc19wLmgKIGNyZWF0ZSBt
b2RlIDEwMDY0NCBUb29scy9NaW5pQnJvd3Nlci9xdC9pY29ucy9pbmZvLnBuZwogY3JlYXRlIG1v
ZGUgMTAwNjQ0IFRvb2xzL01pbmlCcm93c2VyL3F0L3FtbC9WaWV3cG9ydEF0dHJpYnV0ZXNJdGVt
LnFtbAoKZGlmZiAtLWdpdCBhL0NoYW5nZUxvZyBiL0NoYW5nZUxvZwppbmRleCAxM2U1ZGU5Li45
Y2M0MWIxIDEwMDY0NAotLS0gYS9DaGFuZ2VMb2cKKysrIGIvQ2hhbmdlTG9nCkBAIC0xLDMgKzEs
MTcgQEAKKzIwMTEtMTEtMjEgIE1pY2hhZWwgQnLDvG5pbmcgIDxtaWNoYWVsLmJydW5pbmdAbm9r
aWEuY29tPgorCisgICAgICAgIFtRVF1bV0syXUFkZCAoZXhwZXJpbWVudGFsKSB2aWV3cG9ydCBh
dHRyaWJ1dGVzIHZpZXcgdG8gTWluaWJyb3dzZXIvcXQuCisgICAgICAgIGh0dHBzOi8vYnVncy53
ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD03Mjg5MworCisgICAgICAgIFJldmlld2VkIGJ5IFRv
ciBBcm5lIFZlc3Riw7guCisKKyAgICAgICAgVGhpcyBwYXRjaCBleHRlbmRzIFFRdWlja1dlYlZp
ZXdFeHBlcmltZW50YWwgYnkgYSBwcm9wZXJ0eSBuYW1lZAorICAgICAgICB2aWV3cG9ydEF0dHJp
YnV0ZXMsIHdoaWNoIGNvbnRhaW5zIHRoZSB2aWV3cG9ydCBzY2FsYWJpbGl0eSBhbmQKKyAgICAg
ICAgbGF5b3V0IHNpemUgaW5mb3JtYXRpb24uIFRoaXMgcHJvcGVydHkgaXMgZXhwb3NlZCB0byBR
TUwgdGhyb3VnaAorICAgICAgICB0aGUgZXhwZXJpbWVudGFsIGV4dGVuc2lvbiBmb3IgUVF1aWNr
V2ViVmlldy4KKworICAgICAgICAqIFNvdXJjZS9xdHdlYmtpdC1leHBvcnQubWFwOgorCiAyMDEx
LTExLTIzICBUb3IgQXJuZSBWZXN0YsO4ICA8dG9yLmFybmUudmVzdGJvQG5va2lhLmNvbT4KIAog
ICAgICAgICBbUXRdIFJlLWdlbmVyYXRlIFF0V2ViS2l0IEFQSSBmb3J3YXJkaW5nIGhlYWRlcnMg
d2hlbiBBUEkgY2hhbmdlcwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9xdC9DaGFuZ2VMb2cg
Yi9Tb3VyY2UvV2ViS2l0L3F0L0NoYW5nZUxvZwppbmRleCA1ODVkY2Q2Li43MWQ5N2QzIDEwMDY0
NAotLS0gYS9Tb3VyY2UvV2ViS2l0L3F0L0NoYW5nZUxvZworKysgYi9Tb3VyY2UvV2ViS2l0L3F0
L0NoYW5nZUxvZwpAQCAtMSwzICsxLDE3IEBACisyMDExLTExLTIxICBNaWNoYWVsIEJyw7xuaW5n
ICA8bWljaGFlbC5icnVuaW5nQG5va2lhLmNvbT4KKworICAgICAgICBbUVRdW1dLMl1BZGQgKGV4
cGVyaW1lbnRhbCkgdmlld3BvcnQgYXR0cmlidXRlcyB2aWV3IHRvIE1pbmlicm93c2VyL3F0Lgor
ICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9NzI4OTMKKwor
ICAgICAgICBSZXZpZXdlZCBieSBUb3IgQXJuZSBWZXN0YsO4LgorCisgICAgICAgIFRoaXMgcGF0
Y2ggZXh0ZW5kcyBRUXVpY2tXZWJWaWV3RXhwZXJpbWVudGFsIGJ5IGEgcHJvcGVydHkgbmFtZWQK
KyAgICAgICAgdmlld3BvcnRBdHRyaWJ1dGVzLCB3aGljaCBjb250YWlucyB0aGUgdmlld3BvcnQg
c2NhbGFiaWxpdHkgYW5kCisgICAgICAgIGxheW91dCBzaXplIGluZm9ybWF0aW9uLiBUaGlzIHBy
b3BlcnR5IGlzIGV4cG9zZWQgdG8gUU1MIHRocm91Z2gKKyAgICAgICAgdGhlIGV4cGVyaW1lbnRh
bCBleHRlbnNpb24gZm9yIFFRdWlja1dlYlZpZXcuCisKKyAgICAgICAgKiBkZWNsYXJhdGl2ZS9l
eHBlcmltZW50YWwvcGx1Z2luLmNwcDoKKwogMjAxMS0xMS0yMiAgUGF2ZWwgRmVsZG1hbiAgPHBm
ZWxkbWFuQGdvb2dsZS5jb20+CiAKICAgICAgICAgV2ViIEluc3BlY3RvcjogcmVtb3ZlIEluc3Bl
Y3Rvcjo6YnJpbmdUb0Zyb250IGZyb20gdGhlIHByb3RvY29sLgpkaWZmIC0tZ2l0IGEvU291cmNl
L1dlYktpdC9xdC9kZWNsYXJhdGl2ZS9leHBlcmltZW50YWwvcGx1Z2luLmNwcCBiL1NvdXJjZS9X
ZWJLaXQvcXQvZGVjbGFyYXRpdmUvZXhwZXJpbWVudGFsL3BsdWdpbi5jcHAKaW5kZXggM2U2ODJm
ZC4uNzNkMDIwMSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9xdC9kZWNsYXJhdGl2ZS9leHBl
cmltZW50YWwvcGx1Z2luLmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0L3F0L2RlY2xhcmF0aXZlL2V4
cGVyaW1lbnRhbC9wbHVnaW4uY3BwCkBAIC0xOSw2ICsxOSw3IEBACiAKICNpbmNsdWRlICJxcXVp
Y2t3ZWJwYWdlX3AuaCIKICNpbmNsdWRlICJxcXVpY2t3ZWJ2aWV3X3AuaCIKKyNpbmNsdWRlICJx
d2Vidmlld3BvcnRhdHRyaWJ1dGVzX3AuaCIKIAogI2luY2x1ZGUgPFF0RGVjbGFyYXRpdmUvcWRl
Y2xhcmF0aXZlLmg+CiAjaW5jbHVkZSA8UXREZWNsYXJhdGl2ZS9xZGVjbGFyYXRpdmVleHRlbnNp
b25wbHVnaW4uaD4KQEAgLTQzLDYgKzQ0LDggQEAgcHVibGljOgogICAgICAgICBxbWxSZWdpc3Rl
ckV4dGVuZGVkVHlwZTxRUXVpY2tXZWJWaWV3LCBRUXVpY2tXZWJWaWV3RXhwZXJpbWVudGFsRXh0
ZW5zaW9uPih1cmksIDMsIDAsICJXZWJWaWV3Iik7CiAgICAgICAgIHFtbFJlZ2lzdGVyVW5jcmVh
dGFibGVUeXBlPFFRdWlja1dlYlZpZXdFeHBlcmltZW50YWw+KHVyaSwgMywgMCwgIlFRdWlja1dl
YlZpZXdFeHBlcmltZW50YWwiLAogICAgICAgICAgICAgUU9iamVjdDo6dHIoIkNhbm5vdCBjcmVh
dGUgc2VwYXJhdGUgaW5zdGFuY2Ugb2YgUVF1aWNrV2ViVmlld0V4cGVyaW1lbnRhbCIpKTsKKyAg
ICAgICAgcW1sUmVnaXN0ZXJVbmNyZWF0YWJsZVR5cGU8UVdlYlZpZXdwb3J0QXR0cmlidXRlcz4o
dXJpLCAzLCAwLCAiUVdlYlZpZXdwb3J0QXR0cmlidXRlcyIsCisgICAgICAgICAgICBRT2JqZWN0
Ojp0cigiQ2Fubm90IGNyZWF0ZSBzZXBhcmF0ZSBpbnN0YW5jZSBvZiBRV2ViVmlld3BvcnRBdHRy
aWJ1dGVzIikpOwogICAgIH0KIH07CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQyL0NoYW5n
ZUxvZyBiL1NvdXJjZS9XZWJLaXQyL0NoYW5nZUxvZwppbmRleCBlMTQ1NTM0Li5lNjc4YTE3IDEw
MDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYktpdDIv
Q2hhbmdlTG9nCkBAIC0xLDMgKzEsMzMgQEAKKzIwMTEtMTEtMjEgIE1pY2hhZWwgQnLDvG5pbmcg
IDxtaWNoYWVsLmJydW5pbmdAbm9raWEuY29tPgorCisgICAgICAgIFtRVF1bV0syXUFkZCAoZXhw
ZXJpbWVudGFsKSB2aWV3cG9ydCBhdHRyaWJ1dGVzIHZpZXcgdG8gTWluaWJyb3dzZXIvcXQuCisg
ICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD03Mjg5MworCisg
ICAgICAgIFJldmlld2VkIGJ5IFRvciBBcm5lIFZlc3Riw7guCisKKyAgICAgICAgVGhpcyBwYXRj
aCBleHRlbmRzIFFRdWlja1dlYlZpZXdFeHBlcmltZW50YWwgYnkgYSBwcm9wZXJ0eSBuYW1lZAor
ICAgICAgICB2aWV3cG9ydEF0dHJpYnV0ZXMsIHdoaWNoIGNvbnRhaW5zIHRoZSB2aWV3cG9ydCBz
Y2FsYWJpbGl0eSBhbmQKKyAgICAgICAgbGF5b3V0IHNpemUgaW5mb3JtYXRpb24uIFRoaXMgcHJv
cGVydHkgaXMgZXhwb3NlZCB0byBRTUwgdGhyb3VnaAorICAgICAgICB0aGUgZXhwZXJpbWVudGFs
IGV4dGVuc2lvbiBmb3IgUVF1aWNrV2ViVmlldy4KKworICAgICAgICAqIFRhcmdldC5wcmk6Cisg
ICAgICAgICogVUlQcm9jZXNzL0FQSS9xdC9xcXVpY2t3ZWJ2aWV3LmNwcDoKKyAgICAgICAgKFFR
dWlja1dlYlZpZXdQcml2YXRlOjpjb21wdXRlVmlld3BvcnRDb25zdHJhaW50cyk6CisgICAgICAg
IChRUXVpY2tXZWJWaWV3RXhwZXJpbWVudGFsOjpRUXVpY2tXZWJWaWV3RXhwZXJpbWVudGFsKToK
KyAgICAgICAgKFFRdWlja1dlYlZpZXdFeHBlcmltZW50YWw6OmF0dHJpYnV0ZXMpOgorICAgICAg
ICAqIFVJUHJvY2Vzcy9BUEkvcXQvcXF1aWNrd2Vidmlld19wLmg6CisgICAgICAgICogVUlQcm9j
ZXNzL0FQSS9xdC9xd2Vidmlld3BvcnRhdHRyaWJ1dGVzLmNwcDogQWRkZWQuCisgICAgICAgIChR
V2ViVmlld3BvcnRBdHRyaWJ1dGVzOjpRV2ViVmlld3BvcnRBdHRyaWJ1dGVzKToKKyAgICAgICAg
KFFXZWJWaWV3cG9ydEF0dHJpYnV0ZXM6On5RV2ViVmlld3BvcnRBdHRyaWJ1dGVzKToKKyAgICAg
ICAgKFFXZWJWaWV3cG9ydEF0dHJpYnV0ZXM6OmluaXRpYWxTY2FsZSk6CisgICAgICAgIChRV2Vi
Vmlld3BvcnRBdHRyaWJ1dGVzOjptaW5pbXVtU2NhbGUpOgorICAgICAgICAoUVdlYlZpZXdwb3J0
QXR0cmlidXRlczo6bWF4aW11bVNjYWxlKToKKyAgICAgICAgKFFXZWJWaWV3cG9ydEF0dHJpYnV0
ZXM6OmlzU2NhbGFibGUpOgorICAgICAgICAoUVdlYlZpZXdwb3J0QXR0cmlidXRlczo6bGF5b3V0
V2lkdGgpOgorICAgICAgICAoUVdlYlZpZXdwb3J0QXR0cmlidXRlczo6bGF5b3V0SGVpZ2h0KToK
KyAgICAgICAgKFFXZWJWaWV3cG9ydEF0dHJpYnV0ZXM6OnVwZGF0ZUZyb21WaWV3cG9ydEF0dHJp
YnV0ZXMpOgorICAgICAgICAqIFVJUHJvY2Vzcy9BUEkvcXQvcXdlYnZpZXdwb3J0YXR0cmlidXRl
c19wLmg6IEFkZGVkLgorCiAyMDExLTExLTIxICBKZXN1cyBTYW5jaGV6LVBhbGVuY2lhICA8amVz
dXMucGFsZW5jaWFAb3BlbmJvc3NhLm9yZz4KIAogICAgICAgICBbUXRdW1dLMl0gTW92ZSBRUXVp
Y2tXZWJWaWV3Ojpkb3dubG9hZFJlcXVlc3RlZCBzaWduYWwgaW50byBleHBlcmltZW50YWwKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQyL1RhcmdldC5wcmkgYi9Tb3VyY2UvV2ViS2l0Mi9UYXJn
ZXQucHJpCmluZGV4IDE0YzljMGMuLmQ5NDhkZDYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQy
L1RhcmdldC5wcmkKKysrIGIvU291cmNlL1dlYktpdDIvVGFyZ2V0LnByaQpAQCAtMjUyLDYgKzI1
Miw3IEBAIEhFQURFUlMgKz0gXAogICAgIFVJUHJvY2Vzcy9BUEkvcXQvcXF1aWNrd2VicGFnZV9w
X3AuaCBcCiAgICAgVUlQcm9jZXNzL0FQSS9xdC9xcXVpY2t3ZWJ2aWV3X3AuaCBcCiAgICAgVUlQ
cm9jZXNzL0FQSS9xdC9xcXVpY2t3ZWJ2aWV3X3BfcC5oIFwKKyAgICBVSVByb2Nlc3MvQVBJL3F0
L3F3ZWJ2aWV3cG9ydGF0dHJpYnV0ZXNfcC5oIFwKICAgICBVSVByb2Nlc3MvQXV0aGVudGljYXRp
b24vQXV0aGVudGljYXRpb25DaGFsbGVuZ2VQcm94eS5oIFwKICAgICBVSVByb2Nlc3MvQXV0aGVu
dGljYXRpb24vQXV0aGVudGljYXRpb25EZWNpc2lvbkxpc3RlbmVyLmggXAogICAgIFVJUHJvY2Vz
cy9BdXRoZW50aWNhdGlvbi9XZWJDcmVkZW50aWFsLmggXApAQCAtNTU2LDYgKzU1Nyw3IEBAIFNP
VVJDRVMgKz0gXAogICAgIFVJUHJvY2Vzcy9BUEkvcXQvcXF1aWNrd2VicGFnZS5jcHAgXAogICAg
IFVJUHJvY2Vzcy9BUEkvcXQvcXF1aWNrd2Vidmlldy5jcHAgXAogICAgIFVJUHJvY2Vzcy9BUEkv
cXQvcXdlYnByZWZlcmVuY2VzLmNwcCBcCisgICAgVUlQcm9jZXNzL0FQSS9xdC9xd2Vidmlld3Bv
cnRhdHRyaWJ1dGVzLmNwcCBcCiAgICAgVUlQcm9jZXNzL0F1dGhlbnRpY2F0aW9uL0F1dGhlbnRp
Y2F0aW9uQ2hhbGxlbmdlUHJveHkuY3BwIFwKICAgICBVSVByb2Nlc3MvQXV0aGVudGljYXRpb24v
QXV0aGVudGljYXRpb25EZWNpc2lvbkxpc3RlbmVyLmNwcCBcCiAgICAgVUlQcm9jZXNzL0F1dGhl
bnRpY2F0aW9uL1dlYkNyZWRlbnRpYWwuY3BwIFwKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQy
L1VJUHJvY2Vzcy9BUEkvcXQvcXF1aWNrd2Vidmlldy5jcHAgYi9Tb3VyY2UvV2ViS2l0Mi9VSVBy
b2Nlc3MvQVBJL3F0L3FxdWlja3dlYnZpZXcuY3BwCmluZGV4IGViZjg0MTcuLmFhMTQ3YWQgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9BUEkvcXQvcXF1aWNrd2Vidmlldy5j
cHAKKysrIGIvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL0FQSS9xdC9xcXVpY2t3ZWJ2aWV3LmNw
cApAQCAtMzAsNiArMzAsNyBAQAogI2luY2x1ZGUgInFxdWlja3dlYnBhZ2VfcF9wLmgiCiAjaW5j
bHVkZSAicXF1aWNrd2Vidmlld19wX3AuaCIKICNpbmNsdWRlICJxd2VicHJlZmVyZW5jZXNfcF9w
LmgiCisjaW5jbHVkZSAicXdlYnZpZXdwb3J0YXR0cmlidXRlc19wLmgiCiAKICNpbmNsdWRlIDxR
dERlY2xhcmF0aXZlL1FRdWlja0NhbnZhcz4KICNpbmNsdWRlIDxRdFdpZGdldHMvUUZpbGVEaWFs
b2c+CkBAIC0yMTYsNiArMjE3LDggQEAgUXRWaWV3cG9ydEludGVyYWN0aW9uRW5naW5lOjpDb25z
dHJhaW50cyBRUXVpY2tXZWJWaWV3UHJpdmF0ZTo6Y29tcHV0ZVZpZXdwb3J0Q28KICAgICBuZXdD
b25zdHJhaW50cy5kZXZpY2VQaXhlbFJhdGlvID0gYXR0ci5kZXZpY2VQaXhlbFJhdGlvOwogICAg
IG5ld0NvbnN0cmFpbnRzLmlzVXNlclNjYWxhYmxlID0gISFhdHRyLnVzZXJTY2FsYWJsZTsKIAor
ICAgIHEtPm1fZXhwZXJpbWVudGFsLT52aWV3cG9ydEF0dHJpYnV0ZXMoKS0+dXBkYXRlRnJvbVZp
ZXdwb3J0QXR0cmlidXRlcyhhdHRyKTsKKwogICAgIHJldHVybiBuZXdDb25zdHJhaW50czsKIH0K
IApAQCAtMzgyLDYgKzM4NSw3IEBAIFFRdWlja1dlYlZpZXdFeHBlcmltZW50YWw6OlFRdWlja1dl
YlZpZXdFeHBlcmltZW50YWwoUVF1aWNrV2ViVmlldyAqd2ViVmlldykKICAgICA6IFFPYmplY3Qo
d2ViVmlldykKICAgICAsIHFfcHRyKHdlYlZpZXcpCiAgICAgLCBkX3B0cih3ZWJWaWV3LT5kX3B0
ci5kYXRhKCkpCisgICAgLCBtX3ZpZXdwb3J0QXR0cmlidXRlcyhuZXcgUVdlYlZpZXdwb3J0QXR0
cmlidXRlcyh0aGlzKSkKIHsKIH0KIApAQCAtNDQwLDYgKzQ0NCwxMSBAQCB2b2lkIFFRdWlja1dl
YlZpZXdFeHBlcmltZW50YWw6OnNldFByb21wdERpYWxvZyhRRGVjbGFyYXRpdmVDb21wb25lbnQq
IHByb21wdERpYQogICAgIGVtaXQgcHJvbXB0RGlhbG9nQ2hhbmdlZCgpOwogfQogCitRV2ViVmll
d3BvcnRBdHRyaWJ1dGVzKiBRUXVpY2tXZWJWaWV3RXhwZXJpbWVudGFsOjp2aWV3cG9ydEF0dHJp
YnV0ZXMoKQoreworICAgIHJldHVybiBtX3ZpZXdwb3J0QXR0cmlidXRlczsKK30KKwogUVF1aWNr
V2ViVmlldzo6UVF1aWNrV2ViVmlldyhRUXVpY2tJdGVtKiBwYXJlbnQpCiAgICAgOiBRUXVpY2tJ
dGVtKHBhcmVudCkKICAgICAsIGRfcHRyKG5ldyBRUXVpY2tXZWJWaWV3UHJpdmF0ZSh0aGlzKSkK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9BUEkvcXQvcXF1aWNrd2Vidmll
d19wLmggYi9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJL3F0L3FxdWlja3dlYnZpZXdfcC5o
CmluZGV4IDMyOTFkZmYuLjhjMmJiOWQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQyL1VJUHJv
Y2Vzcy9BUEkvcXQvcXF1aWNrd2Vidmlld19wLmgKKysrIGIvU291cmNlL1dlYktpdDIvVUlQcm9j
ZXNzL0FQSS9xdC9xcXVpY2t3ZWJ2aWV3X3AuaApAQCAtMzEsNiArMzEsNyBAQCBjbGFzcyBRUXVp
Y2tXZWJWaWV3UHJpdmF0ZTsKIGNsYXNzIFFRdWlja1dlYlZpZXdFeHBlcmltZW50YWw7CiBjbGFz
cyBRV2ViRG93bmxvYWRJdGVtOwogY2xhc3MgUVdlYlByZWZlcmVuY2VzOworY2xhc3MgUVdlYlZp
ZXdwb3J0QXR0cmlidXRlczsKIAogbmFtZXNwYWNlIFdUUiB7CiBjbGFzcyBQbGF0Zm9ybVdlYlZp
ZXc7CkBAIC0xNjgsNiArMTY5LDcgQEAgY2xhc3MgUVdFQktJVF9FWFBPUlQgUVF1aWNrV2ViVmll
d0V4cGVyaW1lbnRhbCA6IHB1YmxpYyBRT2JqZWN0IHsKICAgICBRX1BST1BFUlRZKFFEZWNsYXJh
dGl2ZUNvbXBvbmVudCogYWxlcnREaWFsb2cgUkVBRCBhbGVydERpYWxvZyBXUklURSBzZXRBbGVy
dERpYWxvZyBOT1RJRlkgYWxlcnREaWFsb2dDaGFuZ2VkKQogICAgIFFfUFJPUEVSVFkoUURlY2xh
cmF0aXZlQ29tcG9uZW50KiBjb25maXJtRGlhbG9nIFJFQUQgY29uZmlybURpYWxvZyBXUklURSBz
ZXRDb25maXJtRGlhbG9nIE5PVElGWSBjb25maXJtRGlhbG9nQ2hhbmdlZCkKICAgICBRX1BST1BF
UlRZKFFEZWNsYXJhdGl2ZUNvbXBvbmVudCogcHJvbXB0RGlhbG9nIFJFQUQgcHJvbXB0RGlhbG9n
IFdSSVRFIHNldFByb21wdERpYWxvZyBOT1RJRlkgcHJvbXB0RGlhbG9nQ2hhbmdlZCkKKyAgICBR
X1BST1BFUlRZKFFXZWJWaWV3cG9ydEF0dHJpYnV0ZXMqIHZpZXdwb3J0QXR0cmlidXRlcyBSRUFE
IHZpZXdwb3J0QXR0cmlidXRlcyBDT05TVEFOVCBGSU5BTCkKIAogcHVibGljOgogICAgIFFRdWlj
a1dlYlZpZXdFeHBlcmltZW50YWwoUVF1aWNrV2ViVmlldyogd2ViVmlldyk7CkBAIC0xNzksNiAr
MTgxLDcgQEAgcHVibGljOgogICAgIHZvaWQgc2V0Q29uZmlybURpYWxvZyhRRGVjbGFyYXRpdmVD
b21wb25lbnQqKTsKICAgICBRRGVjbGFyYXRpdmVDb21wb25lbnQqIHByb21wdERpYWxvZygpIGNv
bnN0OwogICAgIHZvaWQgc2V0UHJvbXB0RGlhbG9nKFFEZWNsYXJhdGl2ZUNvbXBvbmVudCopOwor
ICAgIFFXZWJWaWV3cG9ydEF0dHJpYnV0ZXMqIHZpZXdwb3J0QXR0cmlidXRlcygpOwogCiBwdWJs
aWMgUV9TTE9UUzoKICAgICB2b2lkIHNldFVzZVRyYWRpdGlvbmFsRGVza3RvcEJlaGF2aW91cihi
b29sIGVuYWJsZSk7CkBAIC0xOTIsNiArMTk1LDcgQEAgUV9TSUdOQUxTOgogcHJpdmF0ZToKICAg
ICBRUXVpY2tXZWJWaWV3KiBxX3B0cjsKICAgICBRUXVpY2tXZWJWaWV3UHJpdmF0ZSogZF9wdHI7
CisgICAgUVdlYlZpZXdwb3J0QXR0cmlidXRlcyogbV92aWV3cG9ydEF0dHJpYnV0ZXM7CiAKICAg
ICBmcmllbmQgY2xhc3MgUXRXZWJQYWdlUHJveHk7CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJL
aXQyL1VJUHJvY2Vzcy9BUEkvcXQvcXdlYnZpZXdwb3J0YXR0cmlidXRlcy5jcHAgYi9Tb3VyY2Uv
V2ViS2l0Mi9VSVByb2Nlc3MvQVBJL3F0L3F3ZWJ2aWV3cG9ydGF0dHJpYnV0ZXMuY3BwCm5ldyBm
aWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjZmMTQ3MTUKLS0tIC9kZXYvbnVsbAorKysg
Yi9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJL3F0L3F3ZWJ2aWV3cG9ydGF0dHJpYnV0ZXMu
Y3BwCkBAIC0wLDAgKzEsODkgQEAKKy8qCisgKiBDb3B5cmlnaHQgKEMpIDIwMTEgTm9raWEgQ29y
cG9yYXRpb24gYW5kL29yIGl0cyBzdWJzaWRpYXJ5KC1pZXMpCisgKgorICogVGhpcyBsaWJyYXJ5
IGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vcgorICogbW9k
aWZ5IGl0IHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05VIExpYnJhcnkgR2VuZXJhbCBQdWJsaWMK
KyAqIExpY2Vuc2UgYXMgcHVibGlzaGVkIGJ5IHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb247
IGVpdGhlcgorICogdmVyc2lvbiAyIG9mIHRoZSBMaWNlbnNlLCBvciAoYXQgeW91ciBvcHRpb24p
IGFueSBsYXRlciB2ZXJzaW9uLgorICoKKyAqIFRoaXMgcHJvZ3JhbSBpcyBkaXN0cmlidXRlZCBp
biB0aGUgaG9wZSB0aGF0IGl0IHdpbGwgYmUgdXNlZnVsLAorICogYnV0IFdJVEhPVVQgQU5ZIFdB
UlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKKyAqIE1FUkNIQU5U
QUJJTElUWSBvciBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRS4gIFNlZSB0aGUgR05V
CisgKiBMaWJyYXJ5IEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KKyAq
CisgKiBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgTGlicmFyeSBH
ZW5lcmFsIFB1YmxpYyBMaWNlbnNlCisgKiBhbG9uZyB3aXRoIHRoaXMgcHJvZ3JhbTsgc2VlIHRo
ZSBmaWxlIENPUFlJTkcuTElCLiAgSWYgbm90LCB3cml0ZSB0bworICogdGhlIEZyZWUgU29mdHdh
cmUgRm91bmRhdGlvbiwgSW5jLiwgNTEgRnJhbmtsaW4gU3RyZWV0LCBGaWZ0aCBGbG9vciwKKyAq
IEJvc3RvbiwgTUEgMDIxMTAtMTMwMSwgVVNBLgorICoKKyAqLworCisjaW5jbHVkZSAiY29uZmln
LmgiCisjaW5jbHVkZSAicXdlYnZpZXdwb3J0YXR0cmlidXRlc19wLmgiCisKKyNpbmNsdWRlIDxX
ZWJDb3JlL1ZpZXdwb3J0QXJndW1lbnRzLmg+CisKK1FXZWJWaWV3cG9ydEF0dHJpYnV0ZXM6OlFX
ZWJWaWV3cG9ydEF0dHJpYnV0ZXMoUU9iamVjdCogcGFyZW50KQorICAgIDogUU9iamVjdChwYXJl
bnQpCit7CisKK30KKworUVdlYlZpZXdwb3J0QXR0cmlidXRlczo6flFXZWJWaWV3cG9ydEF0dHJp
YnV0ZXMoKQoreworCit9CisKK3FyZWFsIFFXZWJWaWV3cG9ydEF0dHJpYnV0ZXM6OmluaXRpYWxT
Y2FsZSgpIGNvbnN0Cit7CisgICAgcmV0dXJuIG1faW5pdGlhbFNjYWxlOworfQorCitxcmVhbCBR
V2ViVmlld3BvcnRBdHRyaWJ1dGVzOjptaW5pbXVtU2NhbGUoKSBjb25zdAoreworICAgIHJldHVy
biBtX21pbmltdW1TY2FsZTsKK30KKworcXJlYWwgUVdlYlZpZXdwb3J0QXR0cmlidXRlczo6bWF4
aW11bVNjYWxlKCkgY29uc3QKK3sKKyAgICByZXR1cm4gbV9tYXhpbXVtU2NhbGU7Cit9CisKK2Jv
b2wgUVdlYlZpZXdwb3J0QXR0cmlidXRlczo6aXNTY2FsYWJsZSgpIGNvbnN0Cit7CisgICAgcmV0
dXJuIG1faXNTY2FsYWJsZTsKK30KKworaW50IFFXZWJWaWV3cG9ydEF0dHJpYnV0ZXM6OmxheW91
dFdpZHRoKCkgY29uc3QKK3sKKyAgICByZXR1cm4gbV9sYXlvdXRTaXplLndpZHRoKCk7Cit9CisK
K2ludCBRV2ViVmlld3BvcnRBdHRyaWJ1dGVzOjpsYXlvdXRIZWlnaHQoKSBjb25zdAoreworICAg
IHJldHVybiBtX2xheW91dFNpemUuaGVpZ2h0KCk7Cit9CisKK3ZvaWQgUVdlYlZpZXdwb3J0QXR0
cmlidXRlczo6dXBkYXRlRnJvbVZpZXdwb3J0QXR0cmlidXRlcyhjb25zdCBXZWJDb3JlOjpWaWV3
cG9ydEF0dHJpYnV0ZXMmIGF0dHIpCit7CisgICAgaWYgKG1faW5pdGlhbFNjYWxlICE9IGF0dHIu
aW5pdGlhbFNjYWxlKSB7CisgICAgICAgIG1faW5pdGlhbFNjYWxlID0gYXR0ci5pbml0aWFsU2Nh
bGU7CisgICAgICAgIGVtaXQgaW5pdGlhbFNjYWxlVXBkYXRlZCgpOworICAgIH0KKyAgICBpZiAo
bV9taW5pbXVtU2NhbGUgIT0gYXR0ci5taW5pbXVtU2NhbGUpIHsKKyAgICAgICAgbV9taW5pbXVt
U2NhbGUgPSBhdHRyLm1pbmltdW1TY2FsZTsKKyAgICAgICAgZW1pdCBtaW5pbXVtU2NhbGVVcGRh
dGVkKCk7CisgICAgfQorICAgIGlmIChtX21heGltdW1TY2FsZSAhPSBhdHRyLm1heGltdW1TY2Fs
ZSkgeworICAgICAgICBtX21heGltdW1TY2FsZSA9IGF0dHIubWF4aW11bVNjYWxlOworICAgICAg
ICBlbWl0IG1heGltdW1TY2FsZVVwZGF0ZWQoKTsKKyAgICB9CisgICAgaWYgKG1faXNTY2FsYWJs
ZSAhPSAhIWF0dHIudXNlclNjYWxhYmxlKSB7CisgICAgICAgIG1faXNTY2FsYWJsZSA9ICEhYXR0
ci51c2VyU2NhbGFibGU7CisgICAgICAgIGVtaXQgaXNTY2FsYWJsZVVwZGF0ZWQoKTsKKyAgICB9
CisgICAgaWYgKG1fbGF5b3V0U2l6ZSAhPSBRU2l6ZShhdHRyLmxheW91dFNpemUpKSB7CisgICAg
ICAgIG1fbGF5b3V0U2l6ZSA9IGF0dHIubGF5b3V0U2l6ZTsKKyAgICAgICAgZW1pdCBsYXlvdXRT
aXplVXBkYXRlZCgpOworICAgIH0KK30KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQyL1VJUHJv
Y2Vzcy9BUEkvcXQvcXdlYnZpZXdwb3J0YXR0cmlidXRlc19wLmggYi9Tb3VyY2UvV2ViS2l0Mi9V
SVByb2Nlc3MvQVBJL3F0L3F3ZWJ2aWV3cG9ydGF0dHJpYnV0ZXNfcC5oCm5ldyBmaWxlIG1vZGUg
MTAwNjQ0CmluZGV4IDAwMDAwMDAuLjg2YzVhZDcKLS0tIC9kZXYvbnVsbAorKysgYi9Tb3VyY2Uv
V2ViS2l0Mi9VSVByb2Nlc3MvQVBJL3F0L3F3ZWJ2aWV3cG9ydGF0dHJpYnV0ZXNfcC5oCkBAIC0w
LDAgKzEsNzAgQEAKKy8qCisgKiBDb3B5cmlnaHQgKEMpIDIwMTEgTm9raWEgQ29ycG9yYXRpb24g
YW5kL29yIGl0cyBzdWJzaWRpYXJ5KC1pZXMpCisgKgorICogVGhpcyBsaWJyYXJ5IGlzIGZyZWUg
c29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vcgorICogbW9kaWZ5IGl0IHVu
ZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05VIExpYnJhcnkgR2VuZXJhbCBQdWJsaWMKKyAqIExpY2Vu
c2UgYXMgcHVibGlzaGVkIGJ5IHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb247IGVpdGhlcgor
ICogdmVyc2lvbiAyIG9mIHRoZSBMaWNlbnNlLCBvciAoYXQgeW91ciBvcHRpb24pIGFueSBsYXRl
ciB2ZXJzaW9uLgorICoKKyAqIFRoaXMgcHJvZ3JhbSBpcyBkaXN0cmlidXRlZCBpbiB0aGUgaG9w
ZSB0aGF0IGl0IHdpbGwgYmUgdXNlZnVsLAorICogYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3
aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKKyAqIE1FUkNIQU5UQUJJTElUWSBv
ciBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRS4gIFNlZSB0aGUgR05VCisgKiBMaWJy
YXJ5IEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KKyAqCisgKiBZb3Ug
c2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgTGlicmFyeSBHZW5lcmFsIFB1
YmxpYyBMaWNlbnNlCisgKiBhbG9uZyB3aXRoIHRoaXMgcHJvZ3JhbTsgc2VlIHRoZSBmaWxlIENP
UFlJTkcuTElCLiAgSWYgbm90LCB3cml0ZSB0bworICogdGhlIEZyZWUgU29mdHdhcmUgRm91bmRh
dGlvbiwgSW5jLiwgNTEgRnJhbmtsaW4gU3RyZWV0LCBGaWZ0aCBGbG9vciwKKyAqIEJvc3Rvbiwg
TUEgMDIxMTAtMTMwMSwgVVNBLgorICoKKyAqLworCisjaWZuZGVmIHF3ZWJ2aWV3cG9ydGF0dHJp
YnV0ZXNfcF9oCisjZGVmaW5lIHF3ZWJ2aWV3cG9ydGF0dHJpYnV0ZXNfcF9oCisKKyNpbmNsdWRl
ICJxd2Via2l0Z2xvYmFsLmgiCisjaW5jbHVkZSA8UXRDb3JlL1FPYmplY3Q+CisjaW5jbHVkZSA8
UXRDb3JlL1FTaXplPgorI2luY2x1ZGUgPFF0RGVjbGFyYXRpdmUvUXREZWNsYXJhdGl2ZT4KKwor
bmFtZXNwYWNlIFdlYkNvcmUgeworY2xhc3MgVmlld3BvcnRBdHRyaWJ1dGVzOworfQorCitjbGFz
cyBRV0VCS0lUX0VYUE9SVCBRV2ViVmlld3BvcnRBdHRyaWJ1dGVzIDogcHVibGljIFFPYmplY3Qg
eworICAgIFFfT0JKRUNUCisgICAgUV9QUk9QRVJUWShxcmVhbCBpbml0aWFsU2NhbGUgUkVBRCBp
bml0aWFsU2NhbGUgTk9USUZZIGluaXRpYWxTY2FsZVVwZGF0ZWQpCisgICAgUV9QUk9QRVJUWShx
cmVhbCBtaW5pbXVtU2NhbGUgUkVBRCBtaW5pbXVtU2NhbGUgTk9USUZZIG1pbmltdW1TY2FsZVVw
ZGF0ZWQpCisgICAgUV9QUk9QRVJUWShxcmVhbCBtYXhpbXVtU2NhbGUgUkVBRCBtYXhpbXVtU2Nh
bGUgTk9USUZZIG1heGltdW1TY2FsZVVwZGF0ZWQpCisgICAgUV9QUk9QRVJUWShib29sIGlzU2Nh
bGFibGUgUkVBRCBpc1NjYWxhYmxlIE5PVElGWSBpc1NjYWxhYmxlVXBkYXRlZCkKKyAgICBRX1BS
T1BFUlRZKGludCBsYXlvdXRXaWR0aCBSRUFEIGxheW91dFdpZHRoIE5PVElGWSBsYXlvdXRTaXpl
VXBkYXRlZCkKKyAgICBRX1BST1BFUlRZKGludCBsYXlvdXRIZWlnaHQgUkVBRCBsYXlvdXRIZWln
aHQgTk9USUZZIGxheW91dFNpemVVcGRhdGVkKQorCitzaWduYWxzOgorICAgIHZvaWQgaW5pdGlh
bFNjYWxlVXBkYXRlZCgpOworICAgIHZvaWQgbWF4aW11bVNjYWxlVXBkYXRlZCgpOworICAgIHZv
aWQgbWluaW11bVNjYWxlVXBkYXRlZCgpOworICAgIHZvaWQgaXNTY2FsYWJsZVVwZGF0ZWQoKTsK
KyAgICB2b2lkIGxheW91dFNpemVVcGRhdGVkKCk7CisKK3B1YmxpYzoKKyAgICBRV2ViVmlld3Bv
cnRBdHRyaWJ1dGVzKFFPYmplY3QqIHBhcmVudCA9IDApOworICAgIHZpcnR1YWwgflFXZWJWaWV3
cG9ydEF0dHJpYnV0ZXMoKTsKKworICAgIHFyZWFsIGluaXRpYWxTY2FsZSgpIGNvbnN0OworICAg
IHFyZWFsIG1pbmltdW1TY2FsZSgpIGNvbnN0OworICAgIHFyZWFsIG1heGltdW1TY2FsZSgpIGNv
bnN0OworICAgIGJvb2wgaXNTY2FsYWJsZSgpIGNvbnN0OworCisgICAgaW50IGxheW91dFdpZHRo
KCkgY29uc3Q7CisgICAgaW50IGxheW91dEhlaWdodCgpIGNvbnN0OworCisgICAgdm9pZCB1cGRh
dGVGcm9tVmlld3BvcnRBdHRyaWJ1dGVzKGNvbnN0IFdlYkNvcmU6OlZpZXdwb3J0QXR0cmlidXRl
cyYgYXR0cik7Citwcml2YXRlOgorICAgIHFyZWFsIG1faW5pdGlhbFNjYWxlOworICAgIHFyZWFs
IG1fbWluaW11bVNjYWxlOworICAgIHFyZWFsIG1fbWF4aW11bVNjYWxlOworICAgIGJvb2wgbV9p
c1NjYWxhYmxlOworICAgIFFTaXplIG1fbGF5b3V0U2l6ZTsKK307CisKKyNlbmRpZiAvLyBxd2Vi
dmlld3BvcnRhdHRyaWJ1dGVzX3BfaApkaWZmIC0tZ2l0IGEvU291cmNlL3F0d2Via2l0LWV4cG9y
dC5tYXAgYi9Tb3VyY2UvcXR3ZWJraXQtZXhwb3J0Lm1hcAppbmRleCBhNDI2MjAzLi5kMzk4NGVm
IDEwMDY0NAotLS0gYS9Tb3VyY2UvcXR3ZWJraXQtZXhwb3J0Lm1hcAorKysgYi9Tb3VyY2UvcXR3
ZWJraXQtZXhwb3J0Lm1hcApAQCAtMTI0LDYgKzEyNCw5IEBAIHF3a18xLjAgewogICAgICAgICAq
UVdlYkRvd25sb2FkSXRlbTsKICAgICAgICAgbm9uLXZpcnR1YWw/dGh1bms/dG8/UVdlYkRvd25s
b2FkSXRlbSo7CiAgICAgICAgIFFXZWJEb3dubG9hZEl0ZW06Oio7CisgICAgICAgICpRV2ViVmll
d3BvcnRBdHRyaWJ1dGVzOworICAgICAgICBub24tdmlydHVhbD90aHVuaz90bz9RV2ViVmlld3Bv
cnRBdHRyaWJ1dGVzOworICAgICAgICBRV2ViVmlld3BvcnRBdHRyaWJ1dGVzOjoqOwogICAgICAg
ICAqUVF1aWNrV2ViUGFnZTsKICAgICAgICAgbm9uLXZpcnR1YWw/dGh1bms/dG8/UVF1aWNrV2Vi
UGFnZSo7CiAgICAgICAgIFFRdWlja1dlYlBhZ2U6Oio7CmRpZmYgLS1naXQgYS9Ub29scy9DaGFu
Z2VMb2cgYi9Ub29scy9DaGFuZ2VMb2cKaW5kZXggNmE3ODRlYi4uZDFkZDI4YiAxMDA2NDQKLS0t
IGEvVG9vbHMvQ2hhbmdlTG9nCisrKyBiL1Rvb2xzL0NoYW5nZUxvZwpAQCAtMSwzICsxLDIxIEBA
CisyMDExLTExLTIxICBNaWNoYWVsIEJyw7xuaW5nICA8bWljaGFlbC5icnVuaW5nQG5va2lhLmNv
bT4KKworICAgICAgICBbUVRdW1dLMl1BZGQgKGV4cGVyaW1lbnRhbCkgdmlld3BvcnQgYXR0cmli
dXRlcyB2aWV3IHRvIE1pbmlicm93c2VyL3F0LgorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0
Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9NzI4OTMKKworICAgICAgICBSZXZpZXdlZCBieSBUb3IgQXJu
ZSBWZXN0YsO4LgorCisgICAgICAgIFRoaXMgcGF0Y2ggZXh0ZW5kcyBRUXVpY2tXZWJWaWV3RXhw
ZXJpbWVudGFsIGJ5IGEgcHJvcGVydHkgbmFtZWQKKyAgICAgICAgdmlld3BvcnRBdHRyaWJ1dGVz
LCB3aGljaCBjb250YWlucyB0aGUgdmlld3BvcnQgc2NhbGFiaWxpdHkgYW5kCisgICAgICAgIGxh
eW91dCBzaXplIGluZm9ybWF0aW9uLiBUaGlzIHByb3BlcnR5IGlzIGV4cG9zZWQgdG8gUU1MIHRo
cm91Z2gKKyAgICAgICAgdGhlIGV4cGVyaW1lbnRhbCBleHRlbnNpb24gZm9yIFFRdWlja1dlYlZp
ZXcuCisKKyAgICAgICAgKiBNaW5pQnJvd3Nlci9xdC9NaW5pQnJvd3Nlci5wcm86CisgICAgICAg
ICogTWluaUJyb3dzZXIvcXQvTWluaUJyb3dzZXIucXJjOgorICAgICAgICAqIE1pbmlCcm93c2Vy
L3F0L2ljb25zL2luZm8ucG5nOiBBZGRlZC4KKyAgICAgICAgKiBNaW5pQnJvd3Nlci9xdC9xbWwv
QnJvd3NlcldpbmRvdy5xbWw6CisgICAgICAgICogTWluaUJyb3dzZXIvcXQvcW1sL1ZpZXdwb3J0
QXR0cmlidXRlc0l0ZW0ucW1sOiBBZGRlZC4KKwogMjAxMS0xMS0yMyAgU2hlcmlmZiBCb3QgIDx3
ZWJraXQucmV2aWV3LmJvdEBnbWFpbC5jb20+CiAKICAgICAgICAgVW5yZXZpZXdlZCwgcm9sbGlu
ZyBvdXQgcjEwMTEwNy4KZGlmZiAtLWdpdCBhL1Rvb2xzL01pbmlCcm93c2VyL3F0L01pbmlCcm93
c2VyLnBybyBiL1Rvb2xzL01pbmlCcm93c2VyL3F0L01pbmlCcm93c2VyLnBybwppbmRleCA1YzQz
MTk4Li5hNjQ3OGQ0IDEwMDY0NAotLS0gYS9Ub29scy9NaW5pQnJvd3Nlci9xdC9NaW5pQnJvd3Nl
ci5wcm8KKysrIGIvVG9vbHMvTWluaUJyb3dzZXIvcXQvTWluaUJyb3dzZXIucHJvCkBAIC0zNSw0
ICszNSw1IEBAIG1hY3g6IFFUICs9IHhtbAogUkVTT1VSQ0VTICs9IE1pbmlCcm93c2VyLnFyYwog
CiBPVEhFUl9GSUxFUyArPSBcCi0gICAgcW1sL0Jyb3dzZXJXaW5kb3cucW1sCisgICAgcW1sL0Jy
b3dzZXJXaW5kb3cucW1sIFwKKyAgICBxbWwvVmlld3BvcnRBdHRyaWJ1dGVzSXRlbS5xbWwKZGlm
ZiAtLWdpdCBhL1Rvb2xzL01pbmlCcm93c2VyL3F0L01pbmlCcm93c2VyLnFyYyBiL1Rvb2xzL01p
bmlCcm93c2VyL3F0L01pbmlCcm93c2VyLnFyYwppbmRleCBhNTdhOTU0Li5iMjE5ODRjIDEwMDY0
NAotLS0gYS9Ub29scy9NaW5pQnJvd3Nlci9xdC9NaW5pQnJvd3Nlci5xcmMKKysrIGIvVG9vbHMv
TWluaUJyb3dzZXIvcXQvTWluaUJyb3dzZXIucXJjCkBAIC0xLDEwICsxLDEyIEBACiA8UkNDPgog
ICAgIDxxcmVzb3VyY2UgcHJlZml4PSIvIj4KKyAgICAgICAgPGZpbGU+aWNvbnMvaW5mby5wbmc8
L2ZpbGU+CiAgICAgICAgIDxmaWxlPmljb25zL25leHQucG5nPC9maWxlPgogICAgICAgICA8Zmls
ZT5pY29ucy9wcmV2aW91cy5wbmc8L2ZpbGU+CiAgICAgICAgIDxmaWxlPmljb25zL3JlZnJlc2gu
cG5nPC9maWxlPgogICAgICAgICA8ZmlsZT5pY29ucy9zdG9wLnBuZzwvZmlsZT4KICAgICAgICAg
PGZpbGU+cW1sL0Jyb3dzZXJXaW5kb3cucW1sPC9maWxlPgorICAgICAgICA8ZmlsZT5xbWwvVmll
d3BvcnRBdHRyaWJ1dGVzSXRlbS5xbWw8L2ZpbGU+CiAgICAgICAgIDxmaWxlPnVzZXJhZ2VudGxp
c3QudHh0PC9maWxlPgogICAgIDwvcXJlc291cmNlPgogPC9SQ0M+CmRpZmYgLS1naXQgYS9Ub29s
cy9NaW5pQnJvd3Nlci9xdC9pY29ucy9pbmZvLnBuZyBiL1Rvb2xzL01pbmlCcm93c2VyL3F0L2lj
b25zL2luZm8ucG5nCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmRiNDgzZmYxMDBmMTRlNzljMWM2MTg1ZTE5YjMxZmUx
NGZhZWRlOWYKR0lUIGJpbmFyeSBwYXRjaApsaXRlcmFsIDM0MAp6Y21lQVNATj8ob2xIeWB1VkJx
IWlhMHZwXlZqI0BIMXwqTWMkKn40ZmpLeDlqUDdMZUwkLUQkfCpwal42VF5SbUAKejtEV3UmQ2om
KHwzcF5yPTg1cD5RTDcwKFkpKkswLUFiV3xZdVBnZylaWlFGQXZHM2xDbUk4JlljKUI9LVNlJC0p
CnpXdj5ecnFYX0dSXlFLRF5CbyN3bk9eNztuPSR5TDhSXk1OJDNqNUI2OVcyXylEPClRIUIqcys5
RSZZYDxzQWNPKwp6dChMIXZRNXUjN0pJfGNBRVZkfFVTRlYjKkZLdClVWDM4dDxFVmc7YmNzX01y
U21+WCghLXI0THtjM1dKSHx8eDMKelhZJlZYd0gqZ0lgVX5zSjB6fDQ4Tmp7TEJwRX5hd2Y4bjAp
IVorUV54O0AjcUpEPUhqPn42bntwbU4xZ3coRl8kCno+UCFvKGJiMFM1Y2RSeUI2dVhGSDxOOH19
KlRhN0JvVSp6NXVYaVZaV01KIT42fXQrQS0yYV5Ld183Qnl7elhKfAplK2VXKXI5YHtBZHZ9TmxK
KHNZNlRXQUpxS2I2TXc8JjskVSVWU3VJcAoKbGl0ZXJhbCAwCkhjbVY/ZDAwMDAxCgpkaWZmIC0t
Z2l0IGEvVG9vbHMvTWluaUJyb3dzZXIvcXQvcW1sL0Jyb3dzZXJXaW5kb3cucW1sIGIvVG9vbHMv
TWluaUJyb3dzZXIvcXQvcW1sL0Jyb3dzZXJXaW5kb3cucW1sCmluZGV4IDVjYzE1MmEuLmQ5YmUw
YTggMTAwNjQ0Ci0tLSBhL1Rvb2xzL01pbmlCcm93c2VyL3F0L3FtbC9Ccm93c2VyV2luZG93LnFt
bAorKysgYi9Ub29scy9NaW5pQnJvd3Nlci9xdC9xbWwvQnJvd3NlcldpbmRvdy5xbWwKQEAgLTI4
LDYgKzI4LDcgQEAKIAogaW1wb3J0IFF0UXVpY2sgMi4wCiBpbXBvcnQgUXRXZWJLaXQgMy4wCitp
bXBvcnQgUXRXZWJLaXQuZXhwZXJpbWVudGFsIDMuMAogCiBSZWN0YW5nbGUgewogICAgIC8vIERv
IG5vdCBkZWZpbmUgYW5jaG9ycyBvciBhbiBpbml0aWFsIHNpemUgaGVyZSEgVGhpcyB3b3VsZCBt
ZXNzIHVwIHdpdGggUVNHVmlldzo6U2l6ZVJvb3RPYmplY3RUb1ZpZXcuCkBAIC0xMzQsNiArMTM1
LDI1IEBAIFJlY3RhbmdsZSB7CiAgICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAg
ICB9CiAgICAgICAgICAgICB9CisKKyAgICAgICAgICAgIFJlY3RhbmdsZSB7CisgICAgICAgICAg
ICAgICAgaWQ6IHZpZXdwb3J0QXR0cmlidXRlc0luZm9CdXR0b24KKyAgICAgICAgICAgICAgICBo
ZWlnaHQ6IG5hdmlnYXRpb25CYXIuaGVpZ2h0IC0gMgorICAgICAgICAgICAgICAgIHdpZHRoOiBo
ZWlnaHQKKyAgICAgICAgICAgICAgICBjb2xvcjogIiNlZmVmZWYiCisKKyAgICAgICAgICAgICAg
ICBJbWFnZSB7CisgICAgICAgICAgICAgICAgICAgIGFuY2hvcnMuY2VudGVySW46IHBhcmVudAor
ICAgICAgICAgICAgICAgICAgICBzb3VyY2U6ICIuLi9pY29ucy9pbmZvLnBuZyIKKyAgICAgICAg
ICAgICAgICB9CisKKyAgICAgICAgICAgICAgICBNb3VzZUFyZWEgeworICAgICAgICAgICAgICAg
ICAgICBhbmNob3JzLmZpbGw6IHBhcmVudAorICAgICAgICAgICAgICAgICAgICBvbkNsaWNrZWQ6
IHsKKyAgICAgICAgICAgICAgICAgICAgICAgdmlld3BvcnRBdHRyaWJ1dGVzSXRlbS52aXNpYmxl
ID0gIXZpZXdwb3J0QXR0cmlidXRlc0l0ZW0udmlzaWJsZQorICAgICAgICAgICAgICAgICAgICB9
CisgICAgICAgICAgICAgICAgfQorICAgICAgICAgICAgfQogICAgICAgICB9CiAgICAgICAgIFJl
Y3RhbmdsZSB7CiAgICAgICAgICAgICBjb2xvcjogIndoaXRlIgpAQCAtMjA1LDYgKzIyNSwyMiBA
QCBSZWN0YW5nbGUgewogICAgICAgICB9CiAgICAgfQogCisgICAgVmlld3BvcnRBdHRyaWJ1dGVz
SXRlbSB7CisgICAgICAgIGlkOiB2aWV3cG9ydEF0dHJpYnV0ZXNJdGVtCisgICAgICAgIGFuY2hv
cnMgeworICAgICAgICAgICAgdG9wOiBuYXZpZ2F0aW9uQmFyLmJvdHRvbQorICAgICAgICAgICAg
bGVmdDogcGFyZW50LmxlZnQKKyAgICAgICAgICAgIHJpZ2h0OiBwYXJlbnQucmlnaHQKKyAgICAg
ICAgICAgIGJvdHRvbTogcGFyZW50LmJvdHRvbQorICAgICAgICB9CisgICAgICAgIHZpc2libGU6
IGZhbHNlCisgICAgICAgIC8vIFVzaW5nIHRoZSB3ZWJ2aWV3IHByb3BlcnR5IGhlcmUgaW5zdGVh
ZCBvZiB0aGUgd2ViVmlldyBpdGVtIGRpcmVjdGx5CisgICAgICAgIC8vIGlzIGEgd29ya2Fyb3Vu
ZCBmb3IgYW4gaXNzdWUgd2l0aCB0aGUgZXhwZXJpbWVudGFsIGV4dGVuc2lvbiBub3QgYmVpbmcK
KyAgICAgICAgLy8gaW5pdGlhbGl6ZWQuIFRoaXMgc2hvdWxkIGJlIGNoYW5nZWQgdG8gdXNlIHRo
ZSB3ZWJWaWV3IGl0ZW0gYXMgc29vbiBhcworICAgICAgICAvLyB0aGUgaXNzdWUgaXMgcmVzb3Zs
ZWQuCisgICAgICAgIHZpZXdwb3J0QXR0cmlidXRlcyA6IHdlYnZpZXcuZXhwZXJpbWVudGFsLnZp
ZXdwb3J0QXR0cmlidXRlcworICAgIH0KKwogICAgIEtleXMub25QcmVzc2VkOiB7CiAgICAgICAg
IGlmICgoKGV2ZW50Lm1vZGlmaWVycyAmIFF0LkNvbnRyb2xNb2RpZmllcikgJiYgZXZlbnQua2V5
ID09IFF0LktleV9MKSB8fCBldmVudC5rZXkgPT0gUXQua2V5X0Y2KSB7CiAgICAgICAgICAgICBm
b2N1c0FkZHJlc3NCYXIoKQpkaWZmIC0tZ2l0IGEvVG9vbHMvTWluaUJyb3dzZXIvcXQvcW1sL1Zp
ZXdwb3J0QXR0cmlidXRlc0l0ZW0ucW1sIGIvVG9vbHMvTWluaUJyb3dzZXIvcXQvcW1sL1ZpZXdw
b3J0QXR0cmlidXRlc0l0ZW0ucW1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAu
LmJkMDk2MjMKLS0tIC9kZXYvbnVsbAorKysgYi9Ub29scy9NaW5pQnJvd3Nlci9xdC9xbWwvVmll
d3BvcnRBdHRyaWJ1dGVzSXRlbS5xbWwKQEAgLTAsMCArMSw0NSBAQAoraW1wb3J0IFF0UXVpY2sg
Mi4wCitpbXBvcnQgUXRXZWJLaXQgMy4wCisKK1JlY3RhbmdsZSB7CisgICAgcHJvcGVydHkgdmFy
IHZpZXdwb3J0QXR0cmlidXRlcworCisgICAgY29sb3I6ICJibGFjayIKKyAgICBvcGFjaXR5OiAw
LjUKKworICAgIFRleHQgeworICAgICAgICBpZDogdmlld3BvcnRBdHRyaWJ1dGVzTGFiZWwKKyAg
ICAgICAgdGV4dDogIlZpZXdwb3J0IEF0dHJpYnV0ZXMiCisgICAgICAgIGNvbG9yOiAid2hpdGUi
CisgICAgfQorICAgIFRleHQgeworICAgICAgICBpZDogaW5pdGlhbFNjYWxlTGFiZWwKKyAgICAg
ICAgYW5jaG9ycy50b3A6IHZpZXdwb3J0QXR0cmlidXRlc0xhYmVsLmJvdHRvbQorICAgICAgICB0
ZXh0OiAiSW5pdGlhbCBzY2FsZTogIiArIHZpZXdwb3J0QXR0cmlidXRlcy5pbml0aWFsU2NhbGUK
KyAgICAgICAgY29sb3I6ICJ3aGl0ZSIKKyAgICB9CisgICAgVGV4dCB7CisgICAgICAgIGlkOiBt
aW5pbXVtU2NhbGVMYWJlbAorICAgICAgICBhbmNob3JzLnRvcDogaW5pdGlhbFNjYWxlTGFiZWwu
Ym90dG9tCisgICAgICAgIHRleHQ6ICJNaW5pbXVtIHNjYWxlOiAiICsgdmlld3BvcnRBdHRyaWJ1
dGVzLm1pbmltdW1TY2FsZQorICAgICAgICBjb2xvcjogIndoaXRlIgorICAgIH0KKyAgICBUZXh0
IHsKKyAgICAgICAgaWQ6IG1heGltdW1TY2FsZUxhYmVsCisgICAgICAgIGFuY2hvcnMudG9wOiBt
aW5pbXVtU2NhbGVMYWJlbC5ib3R0b20KKyAgICAgICAgdGV4dDogIk1heGltdW0gc2NhbGU6ICIg
KyB2aWV3cG9ydEF0dHJpYnV0ZXMubWF4aW11bVNjYWxlCisgICAgICAgIGNvbG9yOiAid2hpdGUi
CisgICAgfQorICAgIFRleHQgeworICAgICAgICBpZDogbGF5b3V0U2l6ZUluZm9MYWJlbAorICAg
ICAgICBhbmNob3JzLnRvcDogbWF4aW11bVNjYWxlTGFiZWwuYm90dG9tCisgICAgICAgIHRleHQ6
ICJWaWV3cG9ydCBsYXlvdXQgc2l6ZTogKCIgKyB2aWV3cG9ydEF0dHJpYnV0ZXMubGF5b3V0V2lk
dGggKyAieCIgKyB2aWV3cG9ydEF0dHJpYnV0ZXMubGF5b3V0SGVpZ2h0ICsgIikiCisgICAgICAg
IGNvbG9yOiAid2hpdGUiCisgICAgfQorICAgIFRleHQgeworICAgICAgICBpZDogc2NhbGFiaWxp
dHlJbmZvTGFiZWwKKyAgICAgICAgYW5jaG9ycy50b3A6IGxheW91dFNpemVJbmZvTGFiZWwuYm90
dG9tCisgICAgICAgIHRleHQ6ICJWaWV3ICIgKyAodmlld3BvcnRBdHRyaWJ1dGVzLmlzU2NhbGFi
bGUgPyAiaXMgIiA6ICJpcyBub3QgIiApICsgInNjYWxhYmxlLiIKKyAgICAgICAgY29sb3I6ICJ3
aGl0ZSIKKyAgICB9Cit9Ci0tIAoxLjcuNC4xCgo=
</data>
<flag name="review"
          id="115681"
          type_id="1"
          status="+"
          setter="vestbo"
    />
    <flag name="commit-queue"
          id="115682"
          type_id="3"
          status="-"
          setter="webkit.review.bot"
    />
          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>116517</attachid>
            <date>2011-11-24 08:28:49 -0800</date>
            <delta_ts>2011-12-12 05:13:12 -0800</delta_ts>
            <desc>Updated patch.</desc>
            <filename>0001-QT-WK2-Add-experimental-viewport-attributes-view-to-.patch</filename>
            <type>text/plain</type>
            <size>27130</size>
            <attacher name="Michael Brüning">michael.bruning</attacher>
            
              <data encoding="base64">RnJvbSA0N2U4MTIwZTA3MGE5YjlmZGFmNmZiODczYjE2NDg2NjQ2ZGY2YWY5IE1vbiBTZXAgMTcg
MDA6MDA6MDAgMjAwMQpGcm9tOiBNaWNoYWVsIEJydW5pbmcgPG1pY2hhZWwuYnJ1bmluZ0Bub2tp
YS5jb20+CkRhdGU6IFRodSwgMjQgTm92IDIwMTEgMTc6MTg6MDAgKzAxMDAKU3ViamVjdDogW1BB
VENIXSBbUVRdW1dLMl1BZGQgKGV4cGVyaW1lbnRhbCkgdmlld3BvcnQgYXR0cmlidXRlcyB2aWV3
IHRvIE1pbmlicm93c2VyL3F0Ck1JTUUtVmVyc2lvbjogMS4wCkNvbnRlbnQtVHlwZTogdGV4dC9w
bGFpbjsgY2hhcnNldD1VVEYtOApDb250ZW50LVRyYW5zZmVyLUVuY29kaW5nOiA4Yml0CgpodHRw
czovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9NzI4OTMKClJldmlld2VkIGJ5IFRv
ciBBcm5lIFZlc3Riw7gKClRoaXMgZXh0ZW5kcyBRUXVpY2tXZWJWaWV3RXhwZXJpbWVudGFsIGJ5
IGEgcHJvcGVydHkgbmFtZWQKdmlld3BvcnRBdHRyaWJ1dGVzLCB3aGljaCBjb250YWlucyB0aGUg
dmlld3BvcnQgc2NhbGFiaWxpdHkgYW5kCmxheW91dCBzaXplIGluZm9ybWF0aW9uLiBUaGlzIHBy
b3BlcnR5IGlzIGV4cG9zZWQgdG8gUU1MIHRocm91Z2gKdGhlIGV4cGVyaW1lbnRhbCBleHRlbnNp
b24gZm9yIFFRdWlja1dlYlZpZXcuCgpTb3VyY2U6CgoqIFNvdXJjZS9xdHdlYmtpdC1leHBvcnQu
bWFwOgoKU291cmNlL1dlYktpdC9xdDoKCiogZGVjbGFyYXRpcXZlL2V4cGVyaW1lbnRhbC9wbHVn
aW4uY3BwOgoKU291cmNlL1dlYktpdDI6CgoqIFRhcmdldC5wcmk6CiogVUlQcm9jZXNzL0FQSS9x
dC9xcXVpY2t3ZWJ2aWV3LmNwcDoKKFFRdWlja1dlYlZpZXdQcml2YXRlOjpkaWRDaGFuZ2VDb250
ZW50c1NpemUpOgooUVF1aWNrV2ViVmlld1ByaXZhdGU6Ol9xX3ZpZXdwb3J0VXBkYXRlZCk6CihR
UXVpY2tXZWJWaWV3UHJpdmF0ZTo6Y29tcHV0ZVZpZXdwb3J0Q29uc3RyYWludHMpOgooUVF1aWNr
V2ViVmlld0V4cGVyaW1lbnRhbDo6UVF1aWNrV2ViVmlld0V4cGVyaW1lbnRhbCk6CihRUXVpY2tX
ZWJWaWV3RXhwZXJpbWVudGFsOjp2aWV3cG9ydEluZm8pOgoqIFVJUHJvY2Vzcy9BUEkvcXQvcXF1
aWNrd2Vidmlld19wLmg6CiogVUlQcm9jZXNzL0FQSS9xdC9xd2Vidmlld3BvcnRpbmZvLmNwcDog
QWRkZWQuCihRV2ViVmlld3BvcnRJbmZvOjpRV2ViVmlld3BvcnRJbmZvKToKKFFXZWJWaWV3cG9y
dEluZm86On5RV2ViVmlld3BvcnRJbmZvKToKKFFXZWJWaWV3cG9ydEluZm86OmNvbnRlbnRzSGVp
Z2h0KToKKFFXZWJWaWV3cG9ydEluZm86OmNvbnRlbnRzV2lkdGgpOgooUVdlYlZpZXdwb3J0SW5m
bzo6Y3VycmVudFNjYWxlKToKKFFXZWJWaWV3cG9ydEluZm86OmRldmljZVBpeGVsUmF0aW8pOgoo
UVdlYlZpZXdwb3J0SW5mbzo6aW5pdGlhbFNjYWxlKToKKFFXZWJWaWV3cG9ydEluZm86Om1pbmlt
dW1TY2FsZSk6CihRV2ViVmlld3BvcnRJbmZvOjptYXhpbXVtU2NhbGUpOgooUVdlYlZpZXdwb3J0
SW5mbzo6aXNTY2FsYWJsZSk6CihRV2ViVmlld3BvcnRJbmZvOjpsYXlvdXRXaWR0aCk6CihRV2Vi
Vmlld3BvcnRJbmZvOjpsYXlvdXRIZWlnaHQpOgooUVdlYlZpZXdwb3J0SW5mbzo6c2V0Q29udGVu
dHNTaXplKToKKFFXZWJWaWV3cG9ydEluZm86OnNldEN1cnJlbnRTY2FsZSk6CihRV2ViVmlld3Bv
cnRJbmZvOjpzZXRWaWV3cG9ydEF0dHJpYnV0ZXMpOgoqIFVJUHJvY2Vzcy9BUEkvcXQvcXdlYnZp
ZXdwb3J0aW5mb19wLmg6IEFkZGVkLgoKVG9vbHM6CgoqIE1pbmlCcm93c2VyL3F0L01pbmlCcm93
c2VyLnBybzoKKiBNaW5pQnJvd3Nlci9xdC9NaW5pQnJvd3Nlci5xcmM6CiogTWluaUJyb3dzZXIv
cXQvaWNvbnMvaW5mby5wbmc6IEFkZGVkLgoqIE1pbmlCcm93c2VyL3F0L3FtbC9Ccm93c2VyV2lu
ZG93LnFtbDoKKiBNaW5pQnJvd3Nlci9xdC9xbWwvVmlld3BvcnRJbmZvSXRlbS5xbWw6IEFkZGVk
LgotLS0KIENoYW5nZUxvZyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
IHwgICAxNCArKwogU291cmNlL1dlYktpdC9xdC9DaGFuZ2VMb2cgICAgICAgICAgICAgICAgICAg
ICAgICAgfCAgIDE0ICsrCiAuLi4vV2ViS2l0L3F0L2RlY2xhcmF0aXZlL2V4cGVyaW1lbnRhbC9w
bHVnaW4uY3BwICB8ICAgIDMgKwogU291cmNlL1dlYktpdDIvQ2hhbmdlTG9nICAgICAgICAgICAg
ICAgICAgICAgICAgICAgfCAgIDM4ICsrKysrKwogU291cmNlL1dlYktpdDIvVGFyZ2V0LnByaSAg
ICAgICAgICAgICAgICAgICAgICAgICAgfCAgICAyICsKIFNvdXJjZS9XZWJLaXQyL1VJUHJvY2Vz
cy9BUEkvcXQvcXF1aWNrd2Vidmlldy5jcHAgIHwgICAxNCArKwogU291cmNlL1dlYktpdDIvVUlQ
cm9jZXNzL0FQSS9xdC9xcXVpY2t3ZWJ2aWV3X3AuaCAgfCAgICA0ICsKIC4uLi9XZWJLaXQyL1VJ
UHJvY2Vzcy9BUEkvcXQvcXdlYnZpZXdwb3J0aW5mby5jcHAgIHwgIDEyOSArKysrKysrKysrKysr
KysrKysrKwogLi4uL1dlYktpdDIvVUlQcm9jZXNzL0FQSS9xdC9xd2Vidmlld3BvcnRpbmZvX3Au
aCAgfCAgIDg1ICsrKysrKysrKysrKysKIFNvdXJjZS9xdHdlYmtpdC1leHBvcnQubWFwICAgICAg
ICAgICAgICAgICAgICAgICAgIHwgICAgMyArCiBUb29scy9DaGFuZ2VMb2cgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICB8ICAgMTggKysrCiBUb29scy9NaW5pQnJvd3Nlci9xdC9N
aW5pQnJvd3Nlci5wcm8gICAgICAgICAgICAgICB8ICAgIDMgKy0KIFRvb2xzL01pbmlCcm93c2Vy
L3F0L01pbmlCcm93c2VyLnFyYyAgICAgICAgICAgICAgIHwgICAgMiArCiBUb29scy9NaW5pQnJv
d3Nlci9xdC9pY29ucy9pbmZvLnBuZyAgICAgICAgICAgICAgICB8ICBCaW4gMCAtPiAzNDAgYnl0
ZXMKIFRvb2xzL01pbmlCcm93c2VyL3F0L3FtbC9Ccm93c2VyV2luZG93LnFtbCAgICAgICAgIHwg
ICAzNiArKysrKysKIFRvb2xzL01pbmlCcm93c2VyL3F0L3FtbC9WaWV3cG9ydEluZm9JdGVtLnFt
bCAgICAgIHwgICA2MyArKysrKysrKysrCiAxNiBmaWxlcyBjaGFuZ2VkLCA0MjcgaW5zZXJ0aW9u
cygrKSwgMSBkZWxldGlvbnMoLSkKIGNyZWF0ZSBtb2RlIDEwMDY0NCBTb3VyY2UvV2ViS2l0Mi9V
SVByb2Nlc3MvQVBJL3F0L3F3ZWJ2aWV3cG9ydGluZm8uY3BwCiBjcmVhdGUgbW9kZSAxMDA2NDQg
U291cmNlL1dlYktpdDIvVUlQcm9jZXNzL0FQSS9xdC9xd2Vidmlld3BvcnRpbmZvX3AuaAogY3Jl
YXRlIG1vZGUgMTAwNjQ0IFRvb2xzL01pbmlCcm93c2VyL3F0L2ljb25zL2luZm8ucG5nCiBjcmVh
dGUgbW9kZSAxMDA2NDQgVG9vbHMvTWluaUJyb3dzZXIvcXQvcW1sL1ZpZXdwb3J0SW5mb0l0ZW0u
cW1sCgpkaWZmIC0tZ2l0IGEvQ2hhbmdlTG9nIGIvQ2hhbmdlTG9nCmluZGV4IDEzZTVkZTkuLjY4
YzAyZmIgMTAwNjQ0Ci0tLSBhL0NoYW5nZUxvZworKysgYi9DaGFuZ2VMb2cKQEAgLTEsMyArMSwx
NyBAQAorMjAxMS0xMS0yNCAgTWljaGFlbCBCcsO8bmluZyAgPG1pY2hhZWwuYnJ1bmluZ0Bub2tp
YS5jb20+CisKKyAgICAgICAgW1FUXVtXSzJdQWRkIChleHBlcmltZW50YWwpIHZpZXdwb3J0IGlu
Zm8gdmlldyB0byBNaW5pYnJvd3Nlci9xdC4KKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5v
cmcvc2hvd19idWcuY2dpP2lkPTcyODkzCisKKyAgICAgICAgUmV2aWV3ZWQgYnkgVG9yIEFybmUg
VmVzdGLDuC4KKworICAgICAgICBUaGlzIHBhdGNoIGV4dGVuZHMgUVF1aWNrV2ViVmlld0V4cGVy
aW1lbnRhbCBieSBhIHByb3BlcnR5IG5hbWVkCisgICAgICAgIHZpZXdwb3J0SW5mbywgd2hpY2gg
Y29udGFpbnMgdGhlIHZpZXdwb3J0IHNjYWxhYmlsaXR5IGFuZAorICAgICAgICBsYXlvdXQgYW5k
IGNvbnRlbnRzIHNpemUgaW5mb3JtYXRpb24uIFRoaXMgcHJvcGVydHkgaXMgZXhwb3NlZCB0bwor
ICAgICAgICBRTUwgdGhyb3VnaCB0aGUgZXhwZXJpbWVudGFsIGV4dGVuc2lvbiBmb3IgUVF1aWNr
V2ViVmlldy4KKworICAgICAgICAqIFNvdXJjZS9xdHdlYmtpdC1leHBvcnQubWFwOgorCiAyMDEx
LTExLTIzICBUb3IgQXJuZSBWZXN0YsO4ICA8dG9yLmFybmUudmVzdGJvQG5va2lhLmNvbT4KIAog
ICAgICAgICBbUXRdIFJlLWdlbmVyYXRlIFF0V2ViS2l0IEFQSSBmb3J3YXJkaW5nIGhlYWRlcnMg
d2hlbiBBUEkgY2hhbmdlcwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9xdC9DaGFuZ2VMb2cg
Yi9Tb3VyY2UvV2ViS2l0L3F0L0NoYW5nZUxvZwppbmRleCA1ODVkY2Q2Li40YzQxNjQxIDEwMDY0
NAotLS0gYS9Tb3VyY2UvV2ViS2l0L3F0L0NoYW5nZUxvZworKysgYi9Tb3VyY2UvV2ViS2l0L3F0
L0NoYW5nZUxvZwpAQCAtMSwzICsxLDE3IEBACisyMDExLTExLTI0ICBNaWNoYWVsIEJyw7xuaW5n
ICA8bWljaGFlbC5icnVuaW5nQG5va2lhLmNvbT4KKworICAgICAgICBbUVRdW1dLMl1BZGQgKGV4
cGVyaW1lbnRhbCkgdmlld3BvcnQgaW5mbyB2aWV3IHRvIE1pbmlicm93c2VyL3F0LgorICAgICAg
ICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9NzI4OTMKKworICAgICAg
ICBSZXZpZXdlZCBieSBUb3IgQXJuZSBWZXN0YsO4LgorCisgICAgICAgIFRoaXMgcGF0Y2ggZXh0
ZW5kcyBRUXVpY2tXZWJWaWV3RXhwZXJpbWVudGFsIGJ5IGEgcHJvcGVydHkgbmFtZWQKKyAgICAg
ICAgdmlld3BvcnRJbmZvLCB3aGljaCBjb250YWlucyB0aGUgdmlld3BvcnQgc2NhbGFiaWxpdHkg
YW5kCisgICAgICAgIGxheW91dCBhbmQgY29udGVudHMgc2l6ZSBpbmZvcm1hdGlvbi4gVGhpcyBw
cm9wZXJ0eSBpcyBleHBvc2VkIHRvCisgICAgICAgIFFNTCB0aHJvdWdoIHRoZSBleHBlcmltZW50
YWwgZXh0ZW5zaW9uIGZvciBRUXVpY2tXZWJWaWV3LgorCisgICAgICAgICogZGVjbGFyYXRpdmUv
ZXhwZXJpbWVudGFsL3BsdWdpbi5jcHA6CisKIDIwMTEtMTEtMjIgIFBhdmVsIEZlbGRtYW4gIDxw
ZmVsZG1hbkBnb29nbGUuY29tPgogCiAgICAgICAgIFdlYiBJbnNwZWN0b3I6IHJlbW92ZSBJbnNw
ZWN0b3I6OmJyaW5nVG9Gcm9udCBmcm9tIHRoZSBwcm90b2NvbC4KZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJLaXQvcXQvZGVjbGFyYXRpdmUvZXhwZXJpbWVudGFsL3BsdWdpbi5jcHAgYi9Tb3VyY2Uv
V2ViS2l0L3F0L2RlY2xhcmF0aXZlL2V4cGVyaW1lbnRhbC9wbHVnaW4uY3BwCmluZGV4IDNlNjgy
ZmQuLjgyZTFmN2IgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvcXQvZGVjbGFyYXRpdmUvZXhw
ZXJpbWVudGFsL3BsdWdpbi5jcHAKKysrIGIvU291cmNlL1dlYktpdC9xdC9kZWNsYXJhdGl2ZS9l
eHBlcmltZW50YWwvcGx1Z2luLmNwcApAQCAtMTksNiArMTksNyBAQAogCiAjaW5jbHVkZSAicXF1
aWNrd2VicGFnZV9wLmgiCiAjaW5jbHVkZSAicXF1aWNrd2Vidmlld19wLmgiCisjaW5jbHVkZSAi
cXdlYnZpZXdwb3J0aW5mb19wLmgiCiAKICNpbmNsdWRlIDxRdERlY2xhcmF0aXZlL3FkZWNsYXJh
dGl2ZS5oPgogI2luY2x1ZGUgPFF0RGVjbGFyYXRpdmUvcWRlY2xhcmF0aXZlZXh0ZW5zaW9ucGx1
Z2luLmg+CkBAIC00Myw2ICs0NCw4IEBAIHB1YmxpYzoKICAgICAgICAgcW1sUmVnaXN0ZXJFeHRl
bmRlZFR5cGU8UVF1aWNrV2ViVmlldywgUVF1aWNrV2ViVmlld0V4cGVyaW1lbnRhbEV4dGVuc2lv
bj4odXJpLCAzLCAwLCAiV2ViVmlldyIpOwogICAgICAgICBxbWxSZWdpc3RlclVuY3JlYXRhYmxl
VHlwZTxRUXVpY2tXZWJWaWV3RXhwZXJpbWVudGFsPih1cmksIDMsIDAsICJRUXVpY2tXZWJWaWV3
RXhwZXJpbWVudGFsIiwKICAgICAgICAgICAgIFFPYmplY3Q6OnRyKCJDYW5ub3QgY3JlYXRlIHNl
cGFyYXRlIGluc3RhbmNlIG9mIFFRdWlja1dlYlZpZXdFeHBlcmltZW50YWwiKSk7CisgICAgICAg
IHFtbFJlZ2lzdGVyVW5jcmVhdGFibGVUeXBlPFFXZWJWaWV3cG9ydEluZm8+KHVyaSwgMywgMCwg
IlFXZWJWaWV3cG9ydEluZm8iLAorICAgICAgICAgICAgUU9iamVjdDo6dHIoIkNhbm5vdCBjcmVh
dGUgc2VwYXJhdGUgaW5zdGFuY2Ugb2YgUVdlYlZpZXdwb3J0SW5mbyIpKTsKICAgICB9CiB9Owog
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9DaGFuZ2VMb2cgYi9Tb3VyY2UvV2ViS2l0Mi9D
aGFuZ2VMb2cKaW5kZXggMzM4ZGFmMC4uZjk0OGEyZCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktp
dDIvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9XZWJLaXQyL0NoYW5nZUxvZwpAQCAtMSwzICsxLDQx
IEBACisyMDExLTExLTI0ICBNaWNoYWVsIEJyw7xuaW5nICA8bWljaGFlbC5icnVuaW5nQG5va2lh
LmNvbT4KKworICAgICAgICBbUVRdW1dLMl1BZGQgKGV4cGVyaW1lbnRhbCkgdmlld3BvcnQgaW5m
byB2aWV3IHRvIE1pbmlicm93c2VyL3F0LgorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9y
Zy9zaG93X2J1Zy5jZ2k/aWQ9NzI4OTMKKworICAgICAgICBSZXZpZXdlZCBieSBUb3IgQXJuZSBW
ZXN0YsO4LgorCisgICAgICAgIFRoaXMgcGF0Y2ggZXh0ZW5kcyBRUXVpY2tXZWJWaWV3RXhwZXJp
bWVudGFsIGJ5IGEgcHJvcGVydHkgbmFtZWQKKyAgICAgICAgdmlld3BvcnRJbmZvLCB3aGljaCBj
b250YWlucyB0aGUgdmlld3BvcnQgc2NhbGFiaWxpdHkgYW5kCisgICAgICAgIGxheW91dCBhbmQg
Y29udGVudHMgc2l6ZSBpbmZvcm1hdGlvbi4gVGhpcyBwcm9wZXJ0eSBpcyBleHBvc2VkIHRvCisg
ICAgICAgIFFNTCB0aHJvdWdoIHRoZSBleHBlcmltZW50YWwgZXh0ZW5zaW9uIGZvciBRUXVpY2tX
ZWJWaWV3LgorCisgICAgICAgICogVGFyZ2V0LnByaToKKyAgICAgICAgKiBVSVByb2Nlc3MvQVBJ
L3F0L3FxdWlja3dlYnZpZXcuY3BwOgorICAgICAgICAoUVF1aWNrV2ViVmlld1ByaXZhdGU6OmRp
ZENoYW5nZUNvbnRlbnRzU2l6ZSk6CisgICAgICAgIChRUXVpY2tXZWJWaWV3UHJpdmF0ZTo6X3Ff
dmlld3BvcnRVcGRhdGVkKToKKyAgICAgICAgKFFRdWlja1dlYlZpZXdQcml2YXRlOjpjb21wdXRl
Vmlld3BvcnRDb25zdHJhaW50cyk6CisgICAgICAgIChRUXVpY2tXZWJWaWV3RXhwZXJpbWVudGFs
OjpRUXVpY2tXZWJWaWV3RXhwZXJpbWVudGFsKToKKyAgICAgICAgKFFRdWlja1dlYlZpZXdFeHBl
cmltZW50YWw6OnZpZXdwb3J0SW5mbyk6CisgICAgICAgICogVUlQcm9jZXNzL0FQSS9xdC9xcXVp
Y2t3ZWJ2aWV3X3AuaDoKKyAgICAgICAgKiBVSVByb2Nlc3MvQVBJL3F0L3F3ZWJ2aWV3cG9ydGlu
Zm8uY3BwOiBBZGRlZC4KKyAgICAgICAgKFFXZWJWaWV3cG9ydEluZm86OlFXZWJWaWV3cG9ydElu
Zm8pOgorICAgICAgICAoUVdlYlZpZXdwb3J0SW5mbzo6flFXZWJWaWV3cG9ydEluZm8pOgorICAg
ICAgICAoUVdlYlZpZXdwb3J0SW5mbzo6Y29udGVudHNIZWlnaHQpOgorICAgICAgICAoUVdlYlZp
ZXdwb3J0SW5mbzo6Y29udGVudHNXaWR0aCk6CisgICAgICAgIChRV2ViVmlld3BvcnRJbmZvOjpj
dXJyZW50U2NhbGUpOgorICAgICAgICAoUVdlYlZpZXdwb3J0SW5mbzo6ZGV2aWNlUGl4ZWxSYXRp
byk6CisgICAgICAgIChRV2ViVmlld3BvcnRJbmZvOjppbml0aWFsU2NhbGUpOgorICAgICAgICAo
UVdlYlZpZXdwb3J0SW5mbzo6bWluaW11bVNjYWxlKToKKyAgICAgICAgKFFXZWJWaWV3cG9ydElu
Zm86Om1heGltdW1TY2FsZSk6CisgICAgICAgIChRV2ViVmlld3BvcnRJbmZvOjppc1NjYWxhYmxl
KToKKyAgICAgICAgKFFXZWJWaWV3cG9ydEluZm86OmxheW91dFdpZHRoKToKKyAgICAgICAgKFFX
ZWJWaWV3cG9ydEluZm86OmxheW91dEhlaWdodCk6CisgICAgICAgIChRV2ViVmlld3BvcnRJbmZv
OjpzZXRDb250ZW50c1NpemUpOgorICAgICAgICAoUVdlYlZpZXdwb3J0SW5mbzo6c2V0Q3VycmVu
dFNjYWxlKToKKyAgICAgICAgKFFXZWJWaWV3cG9ydEluZm86OnNldFZpZXdwb3J0QXR0cmlidXRl
cyk6CisgICAgICAgICogVUlQcm9jZXNzL0FQSS9xdC9xd2Vidmlld3BvcnRpbmZvX3AuaDogQWRk
ZWQuCisKIDIwMTEtMTEtMTcgIE9sZWcgUm9tYXNoaW4gIDxyb21heGFAZ21haWwuY29tPgogCiAg
ICAgICAgIFtRdF1bV0syXSBTdG9wIGxlYWtpbmcgbWVtb3J5IGluIHN0cmluZyBRV0syIEFQSSdz
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9UYXJnZXQucHJpIGIvU291cmNlL1dlYktpdDIv
VGFyZ2V0LnByaQppbmRleCAxNGM5YzBjLi5mNjk3OWY3IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2Vi
S2l0Mi9UYXJnZXQucHJpCisrKyBiL1NvdXJjZS9XZWJLaXQyL1RhcmdldC5wcmkKQEAgLTI1Miw2
ICsyNTIsNyBAQCBIRUFERVJTICs9IFwKICAgICBVSVByb2Nlc3MvQVBJL3F0L3FxdWlja3dlYnBh
Z2VfcF9wLmggXAogICAgIFVJUHJvY2Vzcy9BUEkvcXQvcXF1aWNrd2Vidmlld19wLmggXAogICAg
IFVJUHJvY2Vzcy9BUEkvcXQvcXF1aWNrd2Vidmlld19wX3AuaCBcCisgICAgVUlQcm9jZXNzL0FQ
SS9xdC9xd2Vidmlld3BvcnRpbmZvX3AuaCBcCiAgICAgVUlQcm9jZXNzL0F1dGhlbnRpY2F0aW9u
L0F1dGhlbnRpY2F0aW9uQ2hhbGxlbmdlUHJveHkuaCBcCiAgICAgVUlQcm9jZXNzL0F1dGhlbnRp
Y2F0aW9uL0F1dGhlbnRpY2F0aW9uRGVjaXNpb25MaXN0ZW5lci5oIFwKICAgICBVSVByb2Nlc3Mv
QXV0aGVudGljYXRpb24vV2ViQ3JlZGVudGlhbC5oIFwKQEAgLTU1Niw2ICs1NTcsNyBAQCBTT1VS
Q0VTICs9IFwKICAgICBVSVByb2Nlc3MvQVBJL3F0L3FxdWlja3dlYnBhZ2UuY3BwIFwKICAgICBV
SVByb2Nlc3MvQVBJL3F0L3FxdWlja3dlYnZpZXcuY3BwIFwKICAgICBVSVByb2Nlc3MvQVBJL3F0
L3F3ZWJwcmVmZXJlbmNlcy5jcHAgXAorICAgIFVJUHJvY2Vzcy9BUEkvcXQvcXdlYnZpZXdwb3J0
aW5mby5jcHAgXAogICAgIFVJUHJvY2Vzcy9BdXRoZW50aWNhdGlvbi9BdXRoZW50aWNhdGlvbkNo
YWxsZW5nZVByb3h5LmNwcCBcCiAgICAgVUlQcm9jZXNzL0F1dGhlbnRpY2F0aW9uL0F1dGhlbnRp
Y2F0aW9uRGVjaXNpb25MaXN0ZW5lci5jcHAgXAogICAgIFVJUHJvY2Vzcy9BdXRoZW50aWNhdGlv
bi9XZWJDcmVkZW50aWFsLmNwcCBcCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nl
c3MvQVBJL3F0L3FxdWlja3dlYnZpZXcuY3BwIGIvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL0FQ
SS9xdC9xcXVpY2t3ZWJ2aWV3LmNwcAppbmRleCBlYmY4NDE3Li5lNWE1MWQ2YyAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL0FQSS9xdC9xcXVpY2t3ZWJ2aWV3LmNwcAorKysg
Yi9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJL3F0L3FxdWlja3dlYnZpZXcuY3BwCkBAIC0z
MCw2ICszMCw3IEBACiAjaW5jbHVkZSAicXF1aWNrd2VicGFnZV9wX3AuaCIKICNpbmNsdWRlICJx
cXVpY2t3ZWJ2aWV3X3BfcC5oIgogI2luY2x1ZGUgInF3ZWJwcmVmZXJlbmNlc19wX3AuaCIKKyNp
bmNsdWRlICJxd2Vidmlld3BvcnRpbmZvX3AuaCIKIAogI2luY2x1ZGUgPFF0RGVjbGFyYXRpdmUv
UVF1aWNrQ2FudmFzPgogI2luY2x1ZGUgPFF0V2lkZ2V0cy9RRmlsZURpYWxvZz4KQEAgLTExOCw2
ICsxMTksNyBAQCB2b2lkIFFRdWlja1dlYlZpZXdQcml2YXRlOjpkaWRGaW5pc2hGaXJzdE5vbkVt
cHR5TGF5b3V0KCkKIAogdm9pZCBRUXVpY2tXZWJWaWV3UHJpdmF0ZTo6ZGlkQ2hhbmdlQ29udGVu
dHNTaXplKGNvbnN0IFFTaXplJiBuZXdTaXplKQogeworICAgIFFfUShRUXVpY2tXZWJWaWV3KTsK
ICAgICBpZiAodXNlVHJhZGl0aW9uYWxEZXNrdG9wQmVoYXZpb3VyKQogICAgICAgICByZXR1cm47
CiAKQEAgLTEyOCw2ICsxMzAsOCBAQCB2b2lkIFFRdWlja1dlYlZpZXdQcml2YXRlOjpkaWRDaGFu
Z2VDb250ZW50c1NpemUoY29uc3QgUVNpemUmIG5ld1NpemUpCiAKICAgICBwYWdlVmlldy0+c2V0
V2lkdGgobmV3U2l6ZS53aWR0aCgpKTsKICAgICBwYWdlVmlldy0+c2V0SGVpZ2h0KG5ld1NpemUu
aGVpZ2h0KCkpOworCisgICAgcS0+bV9leHBlcmltZW50YWwtPnZpZXdwb3J0SW5mbygpLT5zZXRD
b250ZW50c1NpemUobmV3U2l6ZSk7CiB9CiAKIHZvaWQgUVF1aWNrV2ViVmlld1ByaXZhdGU6OmRp
ZENoYW5nZVZpZXdwb3J0UHJvcGVydGllcyhjb25zdCBXZWJDb3JlOjpWaWV3cG9ydEFyZ3VtZW50
cyYgYXJncykKQEAgLTE1NSw2ICsxNTksOCBAQCB2b2lkIFFRdWlja1dlYlZpZXdQcml2YXRlOjpf
cV92aWV3cG9ydFVwZGF0ZWQoKQogICAgIGNvbnN0IFFSZWN0RiB2aXNpYmxlUmVjdEluUGFnZVZp
ZXdDb29yZGluYXRlcyA9IHEtPm1hcFJlY3RUb0l0ZW0ocGFnZVZpZXcuZGF0YSgpLCBxLT5ib3Vu
ZGluZ1JlY3QoKSkuaW50ZXJzZWN0ZWQocGFnZVZpZXctPmJvdW5kaW5nUmVjdCgpKTsKICAgICBm
bG9hdCBzY2FsZSA9IHBhZ2VWaWV3LT5zY2FsZSgpOwogICAgIHBhZ2VQcm94eS0+c2V0VmlzaWJs
ZUNvbnRlbnRSZWN0QW5kU2NhbGUodmlzaWJsZVJlY3RJblBhZ2VWaWV3Q29vcmRpbmF0ZXMsIHNj
YWxlKTsKKworICAgIHEtPm1fZXhwZXJpbWVudGFsLT52aWV3cG9ydEluZm8oKS0+c2V0Q3VycmVu
dFNjYWxlKHN0YXRpY19jYXN0PHFyZWFsPihzY2FsZSkpOwogfQogCiB2b2lkIFFRdWlja1dlYlZp
ZXdQcml2YXRlOjpfcV92aWV3cG9ydFRyYWplY3RvcnlWZWN0b3JDaGFuZ2VkKGNvbnN0IFFQb2lu
dEYmIHRyYWplY3RvcnlWZWN0b3IpCkBAIC0yMTYsNiArMjIyLDggQEAgUXRWaWV3cG9ydEludGVy
YWN0aW9uRW5naW5lOjpDb25zdHJhaW50cyBRUXVpY2tXZWJWaWV3UHJpdmF0ZTo6Y29tcHV0ZVZp
ZXdwb3J0Q28KICAgICBuZXdDb25zdHJhaW50cy5kZXZpY2VQaXhlbFJhdGlvID0gYXR0ci5kZXZp
Y2VQaXhlbFJhdGlvOwogICAgIG5ld0NvbnN0cmFpbnRzLmlzVXNlclNjYWxhYmxlID0gISFhdHRy
LnVzZXJTY2FsYWJsZTsKIAorICAgIHEtPm1fZXhwZXJpbWVudGFsLT52aWV3cG9ydEluZm8oKS0+
c2V0Vmlld3BvcnRBdHRyaWJ1dGVzKGF0dHIpOworCiAgICAgcmV0dXJuIG5ld0NvbnN0cmFpbnRz
OwogfQogCkBAIC0zODIsNiArMzkwLDcgQEAgUVF1aWNrV2ViVmlld0V4cGVyaW1lbnRhbDo6UVF1
aWNrV2ViVmlld0V4cGVyaW1lbnRhbChRUXVpY2tXZWJWaWV3ICp3ZWJWaWV3KQogICAgIDogUU9i
amVjdCh3ZWJWaWV3KQogICAgICwgcV9wdHIod2ViVmlldykKICAgICAsIGRfcHRyKHdlYlZpZXct
PmRfcHRyLmRhdGEoKSkKKyAgICAsIG1fdmlld3BvcnRJbmZvKG5ldyBRV2ViVmlld3BvcnRJbmZv
KHRoaXMpKQogewogfQogCkBAIC00NDAsNiArNDQ5LDExIEBAIHZvaWQgUVF1aWNrV2ViVmlld0V4
cGVyaW1lbnRhbDo6c2V0UHJvbXB0RGlhbG9nKFFEZWNsYXJhdGl2ZUNvbXBvbmVudCogcHJvbXB0
RGlhCiAgICAgZW1pdCBwcm9tcHREaWFsb2dDaGFuZ2VkKCk7CiB9CiAKK1FXZWJWaWV3cG9ydElu
Zm8qIFFRdWlja1dlYlZpZXdFeHBlcmltZW50YWw6OnZpZXdwb3J0SW5mbygpCit7CisgICAgcmV0
dXJuIG1fdmlld3BvcnRJbmZvOworfQorCiBRUXVpY2tXZWJWaWV3OjpRUXVpY2tXZWJWaWV3KFFR
dWlja0l0ZW0qIHBhcmVudCkKICAgICA6IFFRdWlja0l0ZW0ocGFyZW50KQogICAgICwgZF9wdHIo
bmV3IFFRdWlja1dlYlZpZXdQcml2YXRlKHRoaXMpKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktp
dDIvVUlQcm9jZXNzL0FQSS9xdC9xcXVpY2t3ZWJ2aWV3X3AuaCBiL1NvdXJjZS9XZWJLaXQyL1VJ
UHJvY2Vzcy9BUEkvcXQvcXF1aWNrd2Vidmlld19wLmgKaW5kZXggMzI5MWRmZi4uMDdlOTcwNiAx
MDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL0FQSS9xdC9xcXVpY2t3ZWJ2aWV3
X3AuaAorKysgYi9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJL3F0L3FxdWlja3dlYnZpZXdf
cC5oCkBAIC0zMSw2ICszMSw3IEBAIGNsYXNzIFFRdWlja1dlYlZpZXdQcml2YXRlOwogY2xhc3Mg
UVF1aWNrV2ViVmlld0V4cGVyaW1lbnRhbDsKIGNsYXNzIFFXZWJEb3dubG9hZEl0ZW07CiBjbGFz
cyBRV2ViUHJlZmVyZW5jZXM7CitjbGFzcyBRV2ViVmlld3BvcnRJbmZvOwogCiBuYW1lc3BhY2Ug
V1RSIHsKIGNsYXNzIFBsYXRmb3JtV2ViVmlldzsKQEAgLTE2OCw2ICsxNjksNyBAQCBjbGFzcyBR
V0VCS0lUX0VYUE9SVCBRUXVpY2tXZWJWaWV3RXhwZXJpbWVudGFsIDogcHVibGljIFFPYmplY3Qg
ewogICAgIFFfUFJPUEVSVFkoUURlY2xhcmF0aXZlQ29tcG9uZW50KiBhbGVydERpYWxvZyBSRUFE
IGFsZXJ0RGlhbG9nIFdSSVRFIHNldEFsZXJ0RGlhbG9nIE5PVElGWSBhbGVydERpYWxvZ0NoYW5n
ZWQpCiAgICAgUV9QUk9QRVJUWShRRGVjbGFyYXRpdmVDb21wb25lbnQqIGNvbmZpcm1EaWFsb2cg
UkVBRCBjb25maXJtRGlhbG9nIFdSSVRFIHNldENvbmZpcm1EaWFsb2cgTk9USUZZIGNvbmZpcm1E
aWFsb2dDaGFuZ2VkKQogICAgIFFfUFJPUEVSVFkoUURlY2xhcmF0aXZlQ29tcG9uZW50KiBwcm9t
cHREaWFsb2cgUkVBRCBwcm9tcHREaWFsb2cgV1JJVEUgc2V0UHJvbXB0RGlhbG9nIE5PVElGWSBw
cm9tcHREaWFsb2dDaGFuZ2VkKQorICAgIFFfUFJPUEVSVFkoUVdlYlZpZXdwb3J0SW5mbyogdmll
d3BvcnRJbmZvIFJFQUQgdmlld3BvcnRJbmZvIENPTlNUQU5UIEZJTkFMKQogCiBwdWJsaWM6CiAg
ICAgUVF1aWNrV2ViVmlld0V4cGVyaW1lbnRhbChRUXVpY2tXZWJWaWV3KiB3ZWJWaWV3KTsKQEAg
LTE3OSw2ICsxODEsNyBAQCBwdWJsaWM6CiAgICAgdm9pZCBzZXRDb25maXJtRGlhbG9nKFFEZWNs
YXJhdGl2ZUNvbXBvbmVudCopOwogICAgIFFEZWNsYXJhdGl2ZUNvbXBvbmVudCogcHJvbXB0RGlh
bG9nKCkgY29uc3Q7CiAgICAgdm9pZCBzZXRQcm9tcHREaWFsb2coUURlY2xhcmF0aXZlQ29tcG9u
ZW50Kik7CisgICAgUVdlYlZpZXdwb3J0SW5mbyogdmlld3BvcnRJbmZvKCk7CiAKIHB1YmxpYyBR
X1NMT1RTOgogICAgIHZvaWQgc2V0VXNlVHJhZGl0aW9uYWxEZXNrdG9wQmVoYXZpb3VyKGJvb2wg
ZW5hYmxlKTsKQEAgLTE5Miw2ICsxOTUsNyBAQCBRX1NJR05BTFM6CiBwcml2YXRlOgogICAgIFFR
dWlja1dlYlZpZXcqIHFfcHRyOwogICAgIFFRdWlja1dlYlZpZXdQcml2YXRlKiBkX3B0cjsKKyAg
ICBRV2ViVmlld3BvcnRJbmZvKiBtX3ZpZXdwb3J0SW5mbzsKIAogICAgIGZyaWVuZCBjbGFzcyBR
dFdlYlBhZ2VQcm94eTsKIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL0FQ
SS9xdC9xd2Vidmlld3BvcnRpbmZvLmNwcCBiL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9BUEkv
cXQvcXdlYnZpZXdwb3J0aW5mby5jcHAKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAw
MC4uNjVjNmJhYgotLS0gL2Rldi9udWxsCisrKyBiL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9B
UEkvcXQvcXdlYnZpZXdwb3J0aW5mby5jcHAKQEAgLTAsMCArMSwxMjkgQEAKKy8qCisgKiBDb3B5
cmlnaHQgKEMpIDIwMTEgTm9raWEgQ29ycG9yYXRpb24gYW5kL29yIGl0cyBzdWJzaWRpYXJ5KC1p
ZXMpCisgKgorICogVGhpcyBsaWJyYXJ5IGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0
cmlidXRlIGl0IGFuZC9vcgorICogbW9kaWZ5IGl0IHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05V
IExpYnJhcnkgR2VuZXJhbCBQdWJsaWMKKyAqIExpY2Vuc2UgYXMgcHVibGlzaGVkIGJ5IHRoZSBG
cmVlIFNvZnR3YXJlIEZvdW5kYXRpb247IGVpdGhlcgorICogdmVyc2lvbiAyIG9mIHRoZSBMaWNl
bnNlLCBvciAoYXQgeW91ciBvcHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLgorICoKKyAqIFRoaXMg
cHJvZ3JhbSBpcyBkaXN0cmlidXRlZCBpbiB0aGUgaG9wZSB0aGF0IGl0IHdpbGwgYmUgdXNlZnVs
LAorICogYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQg
d2FycmFudHkgb2YKKyAqIE1FUkNIQU5UQUJJTElUWSBvciBGSVRORVNTIEZPUiBBIFBBUlRJQ1VM
QVIgUFVSUE9TRS4gIFNlZSB0aGUgR05VCisgKiBMaWJyYXJ5IEdlbmVyYWwgUHVibGljIExpY2Vu
c2UgZm9yIG1vcmUgZGV0YWlscy4KKyAqCisgKiBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBj
b3B5IG9mIHRoZSBHTlUgTGlicmFyeSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlCisgKiBhbG9uZyB3
aXRoIHRoaXMgcHJvZ3JhbTsgc2VlIHRoZSBmaWxlIENPUFlJTkcuTElCLiAgSWYgbm90LCB3cml0
ZSB0bworICogdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbiwgSW5jLiwgNTEgRnJhbmtsaW4g
U3RyZWV0LCBGaWZ0aCBGbG9vciwKKyAqIEJvc3RvbiwgTUEgMDIxMTAtMTMwMSwgVVNBLgorICoK
KyAqLworCisjaW5jbHVkZSAiY29uZmlnLmgiCisjaW5jbHVkZSAicXdlYnZpZXdwb3J0aW5mb19w
LmgiCisKKyNpbmNsdWRlIDxXZWJDb3JlL1ZpZXdwb3J0QXJndW1lbnRzLmg+CisKK1FXZWJWaWV3
cG9ydEluZm86OlFXZWJWaWV3cG9ydEluZm8oUU9iamVjdCogcGFyZW50KQorICAgIDogUU9iamVj
dChwYXJlbnQpCit7CisKK30KKworUVdlYlZpZXdwb3J0SW5mbzo6flFXZWJWaWV3cG9ydEluZm8o
KQoreworCit9CisKK2ludCBRV2ViVmlld3BvcnRJbmZvOjpjb250ZW50c0hlaWdodCgpIGNvbnN0
Cit7CisgICAgcmV0dXJuIG1fY29udGVudHNTaXplLmhlaWdodCgpOworfQorCitpbnQgUVdlYlZp
ZXdwb3J0SW5mbzo6Y29udGVudHNXaWR0aCgpIGNvbnN0Cit7CisgICAgcmV0dXJuIG1fY29udGVu
dHNTaXplLndpZHRoKCk7Cit9CisKK3FyZWFsIFFXZWJWaWV3cG9ydEluZm86OmN1cnJlbnRTY2Fs
ZSgpIGNvbnN0Cit7CisgICAgcmV0dXJuIG1fY3VycmVudFNjYWxlOworfQorCitxcmVhbCBRV2Vi
Vmlld3BvcnRJbmZvOjpkZXZpY2VQaXhlbFJhdGlvKCkgY29uc3QKK3sKKyAgICByZXR1cm4gbV9k
ZXZpY2VQaXhlbFJhdGlvOworfQorCitxcmVhbCBRV2ViVmlld3BvcnRJbmZvOjppbml0aWFsU2Nh
bGUoKSBjb25zdAoreworICAgIHJldHVybiBtX2luaXRpYWxTY2FsZTsKK30KKworcXJlYWwgUVdl
YlZpZXdwb3J0SW5mbzo6bWluaW11bVNjYWxlKCkgY29uc3QKK3sKKyAgICByZXR1cm4gbV9taW5p
bXVtU2NhbGU7Cit9CisKK3FyZWFsIFFXZWJWaWV3cG9ydEluZm86Om1heGltdW1TY2FsZSgpIGNv
bnN0Cit7CisgICAgcmV0dXJuIG1fbWF4aW11bVNjYWxlOworfQorCitib29sIFFXZWJWaWV3cG9y
dEluZm86OmlzU2NhbGFibGUoKSBjb25zdAoreworICAgIHJldHVybiBtX2lzU2NhbGFibGU7Cit9
CisKK2ludCBRV2ViVmlld3BvcnRJbmZvOjpsYXlvdXRXaWR0aCgpIGNvbnN0Cit7CisgICAgcmV0
dXJuIG1fbGF5b3V0U2l6ZS53aWR0aCgpOworfQorCitpbnQgUVdlYlZpZXdwb3J0SW5mbzo6bGF5
b3V0SGVpZ2h0KCkgY29uc3QKK3sKKyAgICByZXR1cm4gbV9sYXlvdXRTaXplLmhlaWdodCgpOwor
fQorCit2b2lkIFFXZWJWaWV3cG9ydEluZm86OnNldENvbnRlbnRzU2l6ZShjb25zdCBRU2l6ZSYg
Y29udGVudHNTaXplKQoreworICAgIGlmIChtX2NvbnRlbnRzU2l6ZSAhPSBjb250ZW50c1NpemUp
IHsKKyAgICAgICAgbV9jb250ZW50c1NpemUgPSBjb250ZW50c1NpemU7CisgICAgICAgIGVtaXQg
Y29udGVudHNTaXplVXBkYXRlZCgpOworICAgIH0KK30KKwordm9pZCBRV2ViVmlld3BvcnRJbmZv
OjpzZXRDdXJyZW50U2NhbGUocXJlYWwgY3VycmVudFNjYWxlKQoreworICAgIGlmIChtX2N1cnJl
bnRTY2FsZSAhPSBjdXJyZW50U2NhbGUpIHsKKyAgICAgICAgbV9jdXJyZW50U2NhbGUgPSBjdXJy
ZW50U2NhbGU7CisgICAgICAgIGVtaXQgY3VycmVudFNjYWxlVXBkYXRlZCgpOworICAgIH0KK30K
Kwordm9pZCBRV2ViVmlld3BvcnRJbmZvOjpzZXRWaWV3cG9ydEF0dHJpYnV0ZXMoY29uc3QgV2Vi
Q29yZTo6Vmlld3BvcnRBdHRyaWJ1dGVzJiBhdHRyKQoreworICAgIGlmIChtX2RldmljZVBpeGVs
UmF0aW8gIT0gYXR0ci5kZXZpY2VQaXhlbFJhdGlvKSB7CisgICAgICAgIG1fZGV2aWNlUGl4ZWxS
YXRpbyA9IGF0dHIuZGV2aWNlUGl4ZWxSYXRpbzsKKyAgICAgICAgZW1pdCBkZXZpY2VQaXhlbFJh
dGlvVXBkYXRlZCgpOworICAgIH0KKyAgICBpZiAobV9pbml0aWFsU2NhbGUgIT0gYXR0ci5pbml0
aWFsU2NhbGUpIHsKKyAgICAgICAgbV9pbml0aWFsU2NhbGUgPSBhdHRyLmluaXRpYWxTY2FsZTsK
KyAgICAgICAgZW1pdCBpbml0aWFsU2NhbGVVcGRhdGVkKCk7CisgICAgfQorICAgIGlmIChtX21p
bmltdW1TY2FsZSAhPSBhdHRyLm1pbmltdW1TY2FsZSkgeworICAgICAgICBtX21pbmltdW1TY2Fs
ZSA9IGF0dHIubWluaW11bVNjYWxlOworICAgICAgICBlbWl0IG1pbmltdW1TY2FsZVVwZGF0ZWQo
KTsKKyAgICB9CisgICAgaWYgKG1fbWF4aW11bVNjYWxlICE9IGF0dHIubWF4aW11bVNjYWxlKSB7
CisgICAgICAgIG1fbWF4aW11bVNjYWxlID0gYXR0ci5tYXhpbXVtU2NhbGU7CisgICAgICAgIGVt
aXQgbWF4aW11bVNjYWxlVXBkYXRlZCgpOworICAgIH0KKyAgICBpZiAobV9pc1NjYWxhYmxlICE9
ICEhYXR0ci51c2VyU2NhbGFibGUpIHsKKyAgICAgICAgbV9pc1NjYWxhYmxlID0gISFhdHRyLnVz
ZXJTY2FsYWJsZTsKKyAgICAgICAgZW1pdCBpc1NjYWxhYmxlVXBkYXRlZCgpOworICAgIH0KKyAg
ICBpZiAobV9sYXlvdXRTaXplICE9IFFTaXplKGF0dHIubGF5b3V0U2l6ZSkpIHsKKyAgICAgICAg
bV9sYXlvdXRTaXplID0gYXR0ci5sYXlvdXRTaXplOworICAgICAgICBlbWl0IGxheW91dFNpemVV
cGRhdGVkKCk7CisgICAgfQorfQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdDIvVUlQcm9jZXNz
L0FQSS9xdC9xd2Vidmlld3BvcnRpbmZvX3AuaCBiL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9B
UEkvcXQvcXdlYnZpZXdwb3J0aW5mb19wLmgKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAw
MDAwMC4uYjZiOThlNAotLS0gL2Rldi9udWxsCisrKyBiL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vz
cy9BUEkvcXQvcXdlYnZpZXdwb3J0aW5mb19wLmgKQEAgLTAsMCArMSw4NSBAQAorLyoKKyAqIENv
cHlyaWdodCAoQykgMjAxMSBOb2tpYSBDb3Jwb3JhdGlvbiBhbmQvb3IgaXRzIHN1YnNpZGlhcnko
LWllcykKKyAqCisgKiBUaGlzIGxpYnJhcnkgaXMgZnJlZSBzb2Z0d2FyZTsgeW91IGNhbiByZWRp
c3RyaWJ1dGUgaXQgYW5kL29yCisgKiBtb2RpZnkgaXQgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBH
TlUgTGlicmFyeSBHZW5lcmFsIFB1YmxpYworICogTGljZW5zZSBhcyBwdWJsaXNoZWQgYnkgdGhl
IEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbjsgZWl0aGVyCisgKiB2ZXJzaW9uIDIgb2YgdGhlIExp
Y2Vuc2UsIG9yIChhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uCisgKgorICogVGhp
cyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2Vm
dWwsCisgKiBidXQgV0lUSE9VVCBBTlkgV0FSUkFOVFk7IHdpdGhvdXQgZXZlbiB0aGUgaW1wbGll
ZCB3YXJyYW50eSBvZgorICogTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MgRk9SIEEgUEFSVElD
VUxBUiBQVVJQT1NFLiAgU2VlIHRoZSBHTlUKKyAqIExpYnJhcnkgR2VuZXJhbCBQdWJsaWMgTGlj
ZW5zZSBmb3IgbW9yZSBkZXRhaWxzLgorICoKKyAqIFlvdSBzaG91bGQgaGF2ZSByZWNlaXZlZCBh
IGNvcHkgb2YgdGhlIEdOVSBMaWJyYXJ5IEdlbmVyYWwgUHVibGljIExpY2Vuc2UKKyAqIGFsb25n
IHdpdGggdGhpcyBwcm9ncmFtOyBzZWUgdGhlIGZpbGUgQ09QWUlORy5MSUIuICBJZiBub3QsIHdy
aXRlIHRvCisgKiB0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uLCBJbmMuLCA1MSBGcmFua2xp
biBTdHJlZXQsIEZpZnRoIEZsb29yLAorICogQm9zdG9uLCBNQSAwMjExMC0xMzAxLCBVU0EuCisg
KgorICovCisKKyNpZm5kZWYgcXdlYnZpZXdwb3J0aW5mcF9wX2gKKyNkZWZpbmUgcXdlYnZpZXdw
b3J0aW5mb19wX2gKKworI2luY2x1ZGUgInF3ZWJraXRnbG9iYWwuaCIKKyNpbmNsdWRlIDxRdENv
cmUvUU9iamVjdD4KKyNpbmNsdWRlIDxRdENvcmUvUVNpemU+CisjaW5jbHVkZSA8UXREZWNsYXJh
dGl2ZS9RdERlY2xhcmF0aXZlPgorCituYW1lc3BhY2UgV2ViQ29yZSB7CitjbGFzcyBWaWV3cG9y
dEF0dHJpYnV0ZXM7Cit9CisKK2NsYXNzIFFXRUJLSVRfRVhQT1JUIFFXZWJWaWV3cG9ydEluZm8g
OiBwdWJsaWMgUU9iamVjdCB7CisgICAgUV9PQkpFQ1QKKyAgICBRX1BST1BFUlRZKGludCBjb250
ZW50c0hlaWdodCBSRUFEIGNvbnRlbnRzSGVpZ2h0IE5PVElGWSBjb250ZW50c1NpemVVcGRhdGVk
KQorICAgIFFfUFJPUEVSVFkoaW50IGNvbnRlbnRzV2lkdGggUkVBRCBjb250ZW50c1dpZHRoIE5P
VElGWSBjb250ZW50c1NpemVVcGRhdGVkKQorICAgIFFfUFJPUEVSVFkocXJlYWwgY3VycmVudFNj
YWxlIFJFQUQgY3VycmVudFNjYWxlIE5PVElGWSBjdXJyZW50U2NhbGVVcGRhdGVkKQorICAgIFFf
UFJPUEVSVFkocXJlYWwgZGV2aWNlUGl4ZWxSYXRpbyBSRUFEIGRldmljZVBpeGVsUmF0aW8gTk9U
SUZZIGRldmljZVBpeGVsUmF0aW9VcGRhdGVkKQorICAgIFFfUFJPUEVSVFkocXJlYWwgaW5pdGlh
bFNjYWxlIFJFQUQgaW5pdGlhbFNjYWxlIE5PVElGWSBpbml0aWFsU2NhbGVVcGRhdGVkKQorICAg
IFFfUFJPUEVSVFkoYm9vbCBpc1NjYWxhYmxlIFJFQUQgaXNTY2FsYWJsZSBOT1RJRlkgaXNTY2Fs
YWJsZVVwZGF0ZWQpCisgICAgUV9QUk9QRVJUWShxcmVhbCBtYXhpbXVtU2NhbGUgUkVBRCBtYXhp
bXVtU2NhbGUgTk9USUZZIG1heGltdW1TY2FsZVVwZGF0ZWQpCisgICAgUV9QUk9QRVJUWShxcmVh
bCBtaW5pbXVtU2NhbGUgUkVBRCBtaW5pbXVtU2NhbGUgTk9USUZZIG1pbmltdW1TY2FsZVVwZGF0
ZWQpCisgICAgUV9QUk9QRVJUWShpbnQgbGF5b3V0V2lkdGggUkVBRCBsYXlvdXRXaWR0aCBOT1RJ
RlkgbGF5b3V0U2l6ZVVwZGF0ZWQpCisgICAgUV9QUk9QRVJUWShpbnQgbGF5b3V0SGVpZ2h0IFJF
QUQgbGF5b3V0SGVpZ2h0IE5PVElGWSBsYXlvdXRTaXplVXBkYXRlZCkKKworc2lnbmFsczoKKyAg
ICB2b2lkIGNvbnRlbnRzU2l6ZVVwZGF0ZWQoKTsKKyAgICB2b2lkIGN1cnJlbnRTY2FsZVVwZGF0
ZWQoKTsKKyAgICB2b2lkIGRldmljZVBpeGVsUmF0aW9VcGRhdGVkKCk7CisgICAgdm9pZCBpbml0
aWFsU2NhbGVVcGRhdGVkKCk7CisgICAgdm9pZCBpc1NjYWxhYmxlVXBkYXRlZCgpOworICAgIHZv
aWQgbGF5b3V0U2l6ZVVwZGF0ZWQoKTsKKyAgICB2b2lkIG1heGltdW1TY2FsZVVwZGF0ZWQoKTsK
KyAgICB2b2lkIG1pbmltdW1TY2FsZVVwZGF0ZWQoKTsKKworcHVibGljOgorICAgIFFXZWJWaWV3
cG9ydEluZm8oUU9iamVjdCogcGFyZW50ID0gMCk7CisgICAgdmlydHVhbCB+UVdlYlZpZXdwb3J0
SW5mbygpOworCisgICAgaW50IGNvbnRlbnRzSGVpZ2h0KCkgY29uc3Q7CisgICAgaW50IGNvbnRl
bnRzV2lkdGgoKSBjb25zdDsKKyAgICBxcmVhbCBjdXJyZW50U2NhbGUoKSBjb25zdDsKKyAgICBx
cmVhbCBkZXZpY2VQaXhlbFJhdGlvKCkgY29uc3Q7CisgICAgcXJlYWwgaW5pdGlhbFNjYWxlKCkg
Y29uc3Q7CisgICAgYm9vbCBpc1NjYWxhYmxlKCkgY29uc3Q7CisgICAgaW50IGxheW91dEhlaWdo
dCgpIGNvbnN0OworICAgIGludCBsYXlvdXRXaWR0aCgpIGNvbnN0OworICAgIHFyZWFsIG1heGlt
dW1TY2FsZSgpIGNvbnN0OworICAgIHFyZWFsIG1pbmltdW1TY2FsZSgpIGNvbnN0OworCisgICAg
dm9pZCBzZXRDb250ZW50c1NpemUoY29uc3QgUVNpemUmIGNvbnRlbnRzU2l6ZSk7CisgICAgdm9p
ZCBzZXRDdXJyZW50U2NhbGUocXJlYWwgY3VycmVudFNjYWxlKTsKKyAgICB2b2lkIHNldFZpZXdw
b3J0QXR0cmlidXRlcyhjb25zdCBXZWJDb3JlOjpWaWV3cG9ydEF0dHJpYnV0ZXMmIGF0dHIpOwor
cHJpdmF0ZToKKyAgICBRU2l6ZSBtX2NvbnRlbnRzU2l6ZTsKKyAgICBxcmVhbCBtX2N1cnJlbnRT
Y2FsZTsKKyAgICBxcmVhbCBtX2RldmljZVBpeGVsUmF0aW87CisgICAgcXJlYWwgbV9pbml0aWFs
U2NhbGU7CisgICAgYm9vbCBtX2lzU2NhbGFibGU7CisgICAgUVNpemUgbV9sYXlvdXRTaXplOwor
ICAgIHFyZWFsIG1fbWF4aW11bVNjYWxlOworICAgIHFyZWFsIG1fbWluaW11bVNjYWxlOworfTsK
KworI2VuZGlmIC8vIHF3ZWJ2aWV3cG9ydGluZm9fcApkaWZmIC0tZ2l0IGEvU291cmNlL3F0d2Vi
a2l0LWV4cG9ydC5tYXAgYi9Tb3VyY2UvcXR3ZWJraXQtZXhwb3J0Lm1hcAppbmRleCBhNDI2MjAz
Li4wZmNlY2U3IDEwMDY0NAotLS0gYS9Tb3VyY2UvcXR3ZWJraXQtZXhwb3J0Lm1hcAorKysgYi9T
b3VyY2UvcXR3ZWJraXQtZXhwb3J0Lm1hcApAQCAtMTI0LDYgKzEyNCw5IEBAIHF3a18xLjAgewog
ICAgICAgICAqUVdlYkRvd25sb2FkSXRlbTsKICAgICAgICAgbm9uLXZpcnR1YWw/dGh1bms/dG8/
UVdlYkRvd25sb2FkSXRlbSo7CiAgICAgICAgIFFXZWJEb3dubG9hZEl0ZW06Oio7CisgICAgICAg
ICpRV2ViVmlld3BvcnRJbmZvOworICAgICAgICBub24tdmlydHVhbD90aHVuaz90bz9RV2ViVmll
d3BvcnRJbmZvOworICAgICAgICBRV2ViVmlld3BvcnRJbmZvOjoqOwogICAgICAgICAqUVF1aWNr
V2ViUGFnZTsKICAgICAgICAgbm9uLXZpcnR1YWw/dGh1bms/dG8/UVF1aWNrV2ViUGFnZSo7CiAg
ICAgICAgIFFRdWlja1dlYlBhZ2U6Oio7CmRpZmYgLS1naXQgYS9Ub29scy9DaGFuZ2VMb2cgYi9U
b29scy9DaGFuZ2VMb2cKaW5kZXggNjVhYmY5ZC4uNzJjNzVhMCAxMDA2NDQKLS0tIGEvVG9vbHMv
Q2hhbmdlTG9nCisrKyBiL1Rvb2xzL0NoYW5nZUxvZwpAQCAtMSwzICsxLDIxIEBACisyMDExLTEx
LTI0ICBNaWNoYWVsIEJyw7xuaW5nICA8bWljaGFlbC5icnVuaW5nQG5va2lhLmNvbT4KKworICAg
ICAgICBbUVRdW1dLMl1BZGQgKGV4cGVyaW1lbnRhbCkgdmlld3BvcnQgaW5mbyB2aWV3IHRvIE1p
bmlicm93c2VyL3F0LgorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5j
Z2k/aWQ9NzI4OTMKKworICAgICAgICBSZXZpZXdlZCBieSBUb3IgQXJuZSBWZXN0YsO4LgorCisg
ICAgICAgIFRoaXMgcGF0Y2ggZXh0ZW5kcyBRUXVpY2tXZWJWaWV3RXhwZXJpbWVudGFsIGJ5IGEg
cHJvcGVydHkgbmFtZWQKKyAgICAgICAgdmlld3BvcnRJbmZvLCB3aGljaCBjb250YWlucyB0aGUg
dmlld3BvcnQgc2NhbGFiaWxpdHkgYW5kCisgICAgICAgIGxheW91dCBhbmQgY29udGVudHMgc2l6
ZSBpbmZvcm1hdGlvbi4gVGhpcyBwcm9wZXJ0eSBpcyBleHBvc2VkIHRvCisgICAgICAgIFFNTCB0
aHJvdWdoIHRoZSBleHBlcmltZW50YWwgZXh0ZW5zaW9uIGZvciBRUXVpY2tXZWJWaWV3LgorCisg
ICAgICAgICogTWluaUJyb3dzZXIvcXQvTWluaUJyb3dzZXIucHJvOgorICAgICAgICAqIE1pbmlC
cm93c2VyL3F0L01pbmlCcm93c2VyLnFyYzoKKyAgICAgICAgKiBNaW5pQnJvd3Nlci9xdC9pY29u
cy9pbmZvLnBuZzogQWRkZWQuCisgICAgICAgICogTWluaUJyb3dzZXIvcXQvcW1sL0Jyb3dzZXJX
aW5kb3cucW1sOgorICAgICAgICAqIE1pbmlCcm93c2VyL3F0L3FtbC9WaWV3cG9ydEluZm9JdGVt
LnFtbDogQWRkZWQuCisKIDIwMTEtMTEtMjQgIFRvciBBcm5lIFZlc3Riw7ggIDx0b3IuYXJuZS52
ZXN0Ym9Abm9raWEuY29tPgogCiAgICAgICAgIFtRdF0gR2V0IHJpZCBvZiB0aGUgYnVpbGREaXJG
b3JTb3VyY2UoKSBmdW5jdGlvbiBpbiB0aGUgYnVpbGQgc3lzdGVtCmRpZmYgLS1naXQgYS9Ub29s
cy9NaW5pQnJvd3Nlci9xdC9NaW5pQnJvd3Nlci5wcm8gYi9Ub29scy9NaW5pQnJvd3Nlci9xdC9N
aW5pQnJvd3Nlci5wcm8KaW5kZXggNWM0MzE5OC4uZDRiOWY0NSAxMDA2NDQKLS0tIGEvVG9vbHMv
TWluaUJyb3dzZXIvcXQvTWluaUJyb3dzZXIucHJvCisrKyBiL1Rvb2xzL01pbmlCcm93c2VyL3F0
L01pbmlCcm93c2VyLnBybwpAQCAtMzUsNCArMzUsNSBAQCBtYWN4OiBRVCArPSB4bWwKIFJFU09V
UkNFUyArPSBNaW5pQnJvd3Nlci5xcmMKIAogT1RIRVJfRklMRVMgKz0gXAotICAgIHFtbC9Ccm93
c2VyV2luZG93LnFtbAorICAgIHFtbC9Ccm93c2VyV2luZG93LnFtbCBcCisgICAgcW1sL1ZpZXdw
b3J0SW5mb0l0ZW0ucW1sCmRpZmYgLS1naXQgYS9Ub29scy9NaW5pQnJvd3Nlci9xdC9NaW5pQnJv
d3Nlci5xcmMgYi9Ub29scy9NaW5pQnJvd3Nlci9xdC9NaW5pQnJvd3Nlci5xcmMKaW5kZXggYTU3
YTk1NC4uMDlhMTI4MSAxMDA2NDQKLS0tIGEvVG9vbHMvTWluaUJyb3dzZXIvcXQvTWluaUJyb3dz
ZXIucXJjCisrKyBiL1Rvb2xzL01pbmlCcm93c2VyL3F0L01pbmlCcm93c2VyLnFyYwpAQCAtMSwx
MCArMSwxMiBAQAogPFJDQz4KICAgICA8cXJlc291cmNlIHByZWZpeD0iLyI+CisgICAgICAgIDxm
aWxlPmljb25zL2luZm8ucG5nPC9maWxlPgogICAgICAgICA8ZmlsZT5pY29ucy9uZXh0LnBuZzwv
ZmlsZT4KICAgICAgICAgPGZpbGU+aWNvbnMvcHJldmlvdXMucG5nPC9maWxlPgogICAgICAgICA8
ZmlsZT5pY29ucy9yZWZyZXNoLnBuZzwvZmlsZT4KICAgICAgICAgPGZpbGU+aWNvbnMvc3RvcC5w
bmc8L2ZpbGU+CiAgICAgICAgIDxmaWxlPnFtbC9Ccm93c2VyV2luZG93LnFtbDwvZmlsZT4KKyAg
ICAgICAgPGZpbGU+cW1sL1ZpZXdwb3J0SW5mb0l0ZW0ucW1sPC9maWxlPgogICAgICAgICA8Zmls
ZT51c2VyYWdlbnRsaXN0LnR4dDwvZmlsZT4KICAgICA8L3FyZXNvdXJjZT4KIDwvUkNDPgpkaWZm
IC0tZ2l0IGEvVG9vbHMvTWluaUJyb3dzZXIvcXQvaWNvbnMvaW5mby5wbmcgYi9Ub29scy9NaW5p
QnJvd3Nlci9xdC9pY29ucy9pbmZvLnBuZwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5kYjQ4M2ZmMTAwZjE0ZTc5YzFj
NjE4NWUxOWIzMWZlMTRmYWVkZTlmCkdJVCBiaW5hcnkgcGF0Y2gKbGl0ZXJhbCAzNDAKemNtZUFT
QE4/KG9sSHlgdVZCcSFpYTB2cF5WaiNASDF8Kk1jJCp+NGZqS3g5alA3TGVMJC1EJHwqcGpeNlRe
Um1ACno7RFd1JkNqJih8M3Becj04NXA+UUw3MChZKSpLMC1BYld8WXVQZ2cpWlpRRkF2RzNsQ21J
OCZZYylCPS1TZSQtKQp6V3Y+XnJxWF9HUl5RS0ReQm8jd25PXjc7bj0keUw4Ul5NTiQzajVCNjlX
Ml8pRDwpUSFCKnMrOUUmWWA8c0FjTysKenQoTCF2UTV1IzdKSXxjQUVWZHxVU0ZWIypGS3QpVVgz
OHQ8RVZnO2Jjc19NclNtflgoIS1yNEx7YzNXSkh8fHgzCnpYWSZWWHdIKmdJYFV+c0owenw0OE5q
e0xCcEV+YXdmOG4wKSFaK1FeeDtAI3FKRD1Iaj5+Nm57cG1OMWd3KEZfJAp6PlAhbyhiYjBTNWNk
UnlCNnVYRkg8Tjh9fSpUYTdCb1UqejV1WGlWWldNSiE+Nn10K0EtMmFeS3dfN0J5e3pYSnwKZStl
VylyOWB7QWR2fU5sSihzWTZUV0FKcUtiNk13PCY7JFUlVlN1SXAKCmxpdGVyYWwgMApIY21WP2Qw
MDAwMQoKZGlmZiAtLWdpdCBhL1Rvb2xzL01pbmlCcm93c2VyL3F0L3FtbC9Ccm93c2VyV2luZG93
LnFtbCBiL1Rvb2xzL01pbmlCcm93c2VyL3F0L3FtbC9Ccm93c2VyV2luZG93LnFtbAppbmRleCA1
Y2MxNTJhLi5hNmU5YmUyIDEwMDY0NAotLS0gYS9Ub29scy9NaW5pQnJvd3Nlci9xdC9xbWwvQnJv
d3NlcldpbmRvdy5xbWwKKysrIGIvVG9vbHMvTWluaUJyb3dzZXIvcXQvcW1sL0Jyb3dzZXJXaW5k
b3cucW1sCkBAIC0yOCw2ICsyOCw3IEBACiAKIGltcG9ydCBRdFF1aWNrIDIuMAogaW1wb3J0IFF0
V2ViS2l0IDMuMAoraW1wb3J0IFF0V2ViS2l0LmV4cGVyaW1lbnRhbCAzLjAKIAogUmVjdGFuZ2xl
IHsKICAgICAvLyBEbyBub3QgZGVmaW5lIGFuY2hvcnMgb3IgYW4gaW5pdGlhbCBzaXplIGhlcmUh
IFRoaXMgd291bGQgbWVzcyB1cCB3aXRoIFFTR1ZpZXc6OlNpemVSb290T2JqZWN0VG9WaWV3LgpA
QCAtMTM0LDYgKzEzNSwyNSBAQCBSZWN0YW5nbGUgewogICAgICAgICAgICAgICAgICAgICB9CiAg
ICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgfQorCisgICAgICAgICAgICBSZWN0YW5nbGUg
eworICAgICAgICAgICAgICAgIGlkOiB2aWV3cG9ydEluZm9CdXR0b24KKyAgICAgICAgICAgICAg
ICBoZWlnaHQ6IG5hdmlnYXRpb25CYXIuaGVpZ2h0IC0gMgorICAgICAgICAgICAgICAgIHdpZHRo
OiBoZWlnaHQKKyAgICAgICAgICAgICAgICBjb2xvcjogIiNlZmVmZWYiCisKKyAgICAgICAgICAg
ICAgICBJbWFnZSB7CisgICAgICAgICAgICAgICAgICAgIGFuY2hvcnMuY2VudGVySW46IHBhcmVu
dAorICAgICAgICAgICAgICAgICAgICBzb3VyY2U6ICIuLi9pY29ucy9pbmZvLnBuZyIKKyAgICAg
ICAgICAgICAgICB9CisKKyAgICAgICAgICAgICAgICBNb3VzZUFyZWEgeworICAgICAgICAgICAg
ICAgICAgICBhbmNob3JzLmZpbGw6IHBhcmVudAorICAgICAgICAgICAgICAgICAgICBvbkNsaWNr
ZWQ6IHsKKyAgICAgICAgICAgICAgICAgICAgICAgdmlld3BvcnRJbmZvSXRlbS52aXNpYmxlID0g
IXZpZXdwb3J0SW5mb0l0ZW0udmlzaWJsZQorICAgICAgICAgICAgICAgICAgICB9CisgICAgICAg
ICAgICAgICAgfQorICAgICAgICAgICAgfQogICAgICAgICB9CiAgICAgICAgIFJlY3RhbmdsZSB7
CiAgICAgICAgICAgICBjb2xvcjogIndoaXRlIgpAQCAtMjA1LDYgKzIyNSwyMiBAQCBSZWN0YW5n
bGUgewogICAgICAgICB9CiAgICAgfQogCisgICAgVmlld3BvcnRJbmZvSXRlbSB7CisgICAgICAg
IGlkOiB2aWV3cG9ydEluZm9JdGVtCisgICAgICAgIGFuY2hvcnMgeworICAgICAgICAgICAgdG9w
OiBuYXZpZ2F0aW9uQmFyLmJvdHRvbQorICAgICAgICAgICAgbGVmdDogcGFyZW50LmxlZnQKKyAg
ICAgICAgICAgIHJpZ2h0OiBwYXJlbnQucmlnaHQKKyAgICAgICAgICAgIGJvdHRvbTogcGFyZW50
LmJvdHRvbQorICAgICAgICB9CisgICAgICAgIHZpc2libGU6IGZhbHNlCisgICAgICAgIC8vIFVz
aW5nIHRoZSB3ZWJ2aWV3IHByb3BlcnR5IGhlcmUgaW5zdGVhZCBvZiB0aGUgd2ViVmlldyBpdGVt
IGRpcmVjdGx5CisgICAgICAgIC8vIGlzIGEgd29ya2Fyb3VuZCBmb3IgYW4gaXNzdWUgd2l0aCB0
aGUgZXhwZXJpbWVudGFsIGV4dGVuc2lvbiBub3QgYmVpbmcKKyAgICAgICAgLy8gaW5pdGlhbGl6
ZWQuIFRoaXMgc2hvdWxkIGJlIGNoYW5nZWQgdG8gdXNlIHRoZSB3ZWJWaWV3IGl0ZW0gYXMgc29v
biBhcworICAgICAgICAvLyB0aGUgaXNzdWUgaXMgcmVzb2x2ZWQuCisgICAgICAgIHZpZXdwb3J0
SW5mbyA6IHdlYnZpZXcuZXhwZXJpbWVudGFsLnZpZXdwb3J0SW5mbworICAgIH0KKwogICAgIEtl
eXMub25QcmVzc2VkOiB7CiAgICAgICAgIGlmICgoKGV2ZW50Lm1vZGlmaWVycyAmIFF0LkNvbnRy
b2xNb2RpZmllcikgJiYgZXZlbnQua2V5ID09IFF0LktleV9MKSB8fCBldmVudC5rZXkgPT0gUXQu
a2V5X0Y2KSB7CiAgICAgICAgICAgICBmb2N1c0FkZHJlc3NCYXIoKQpkaWZmIC0tZ2l0IGEvVG9v
bHMvTWluaUJyb3dzZXIvcXQvcW1sL1ZpZXdwb3J0SW5mb0l0ZW0ucW1sIGIvVG9vbHMvTWluaUJy
b3dzZXIvcXQvcW1sL1ZpZXdwb3J0SW5mb0l0ZW0ucW1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0Cmlu
ZGV4IDAwMDAwMDAuLmE2MmRmNTQKLS0tIC9kZXYvbnVsbAorKysgYi9Ub29scy9NaW5pQnJvd3Nl
ci9xdC9xbWwvVmlld3BvcnRJbmZvSXRlbS5xbWwKQEAgLTAsMCArMSw2MyBAQAoraW1wb3J0IFF0
UXVpY2sgMi4wCitpbXBvcnQgUXRXZWJLaXQgMy4wCisKK1JlY3RhbmdsZSB7CisgICAgcHJvcGVy
dHkgdmFyIHZpZXdwb3J0SW5mbworCisgICAgY29sb3I6ICJibGFjayIKKyAgICBvcGFjaXR5OiAw
LjUKKworICAgIFRleHQgeworICAgICAgICBpZDogdmlld3BvcnRJbmZvTGFiZWwKKyAgICAgICAg
dGV4dDogIlZpZXdwb3J0IEluZm8iCisgICAgICAgIGNvbG9yOiAid2hpdGUiCisgICAgfQorICAg
IFRleHQgeworICAgICAgICBpZDogY3VycmVudFNjYWxlTGFiZWwKKyAgICAgICAgYW5jaG9ycy50
b3A6IHZpZXdwb3J0SW5mb0xhYmVsLmJvdHRvbQorICAgICAgICB0ZXh0OiAiQ3VycmVudCBzY2Fs
ZTogIiArIHZpZXdwb3J0SW5mby5jdXJyZW50U2NhbGUKKyAgICAgICAgY29sb3I6ICJ3aGl0ZSIK
KyAgICB9CisgICAgVGV4dCB7CisgICAgICAgIGlkOiBpbml0aWFsU2NhbGVMYWJlbAorICAgICAg
ICBhbmNob3JzLnRvcDogY3VycmVudFNjYWxlTGFiZWwuYm90dG9tCisgICAgICAgIHRleHQ6ICJJ
bml0aWFsIHNjYWxlOiAiICsgdmlld3BvcnRJbmZvLmluaXRpYWxTY2FsZQorICAgICAgICBjb2xv
cjogIndoaXRlIgorICAgIH0KKyAgICBUZXh0IHsKKyAgICAgICAgaWQ6IG1pbmltdW1TY2FsZUxh
YmVsCisgICAgICAgIGFuY2hvcnMudG9wOiBpbml0aWFsU2NhbGVMYWJlbC5ib3R0b20KKyAgICAg
ICAgdGV4dDogIk1pbmltdW0gc2NhbGU6ICIgKyB2aWV3cG9ydEluZm8ubWluaW11bVNjYWxlCisg
ICAgICAgIGNvbG9yOiAid2hpdGUiCisgICAgfQorICAgIFRleHQgeworICAgICAgICBpZDogbWF4
aW11bVNjYWxlTGFiZWwKKyAgICAgICAgYW5jaG9ycy50b3A6IG1pbmltdW1TY2FsZUxhYmVsLmJv
dHRvbQorICAgICAgICB0ZXh0OiAiTWF4aW11bSBzY2FsZTogIiArIHZpZXdwb3J0SW5mby5tYXhp
bXVtU2NhbGUKKyAgICAgICAgY29sb3I6ICJ3aGl0ZSIKKyAgICB9CisgICAgVGV4dCB7CisgICAg
ICAgIGlkOiBkZXZpY2VQaXhlbFJhdGlvTGFiZWwKKyAgICAgICAgYW5jaG9ycy50b3A6IG1heGlt
dW1TY2FsZUxhYmVsLmJvdHRvbQorICAgICAgICB0ZXh0OiAiRGV2aWNlIHBpeGVsIHJhdGlvbjog
IiArIHZpZXdwb3J0SW5mby5kZXZpY2VQaXhlbFJhdGlvCisgICAgICAgIGNvbG9yOiAid2hpdGUi
CisgICAgfQorICAgIFRleHQgeworICAgICAgICBpZDogY29udGVudHNTaXplTGFiZWwKKyAgICAg
ICAgYW5jaG9ycy50b3A6IGRldmljZVBpeGVsUmF0aW9MYWJlbC5ib3R0b20KKyAgICAgICAgdGV4
dDogIkNvbnRlbnRzIHNpemU6ICgiICsgdmlld3BvcnRJbmZvLmNvbnRlbnRzV2lkdGggKyAieCIg
KyB2aWV3cG9ydEluZm8uY29udGVudHNIZWlnaHQgKyAiKSIKKyAgICAgICAgY29sb3I6ICJ3aGl0
ZSIKKyAgICB9CisgICAgVGV4dCB7CisgICAgICAgIGlkOiBsYXlvdXRTaXplTGFiZWwKKyAgICAg
ICAgYW5jaG9ycy50b3A6IGNvbnRlbnRzU2l6ZUxhYmVsLmJvdHRvbQorICAgICAgICB0ZXh0OiAi
Vmlld3BvcnQgbGF5b3V0IHNpemU6ICgiICsgdmlld3BvcnRJbmZvLmxheW91dFdpZHRoICsgIngi
ICsgdmlld3BvcnRJbmZvLmxheW91dEhlaWdodCArICIpIgorICAgICAgICBjb2xvcjogIndoaXRl
IgorICAgIH0KKyAgICBUZXh0IHsKKyAgICAgICAgaWQ6IHNjYWxhYmxlTGFiZWwKKyAgICAgICAg
YW5jaG9ycy50b3A6IGxheW91dFNpemVMYWJlbC5ib3R0b20KKyAgICAgICAgdGV4dDogIlZpZXcg
IiArICh2aWV3cG9ydEluZm8uaXNTY2FsYWJsZSA/ICJpcyAiIDogImlzIG5vdCAiICkgKyAic2Nh
bGFibGUuIgorICAgICAgICBjb2xvcjogIndoaXRlIgorICAgIH0KK30KLS0gCjEuNy40LjEKCg==
</data>
<flag name="review"
          id="115710"
          type_id="1"
          status="+"
          setter="vestbo"
    />
    <flag name="commit-queue"
          id="115711"
          type_id="3"
          status="-"
          setter="webkit.review.bot"
    />
          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>118584</attachid>
            <date>2011-12-09 08:43:55 -0800</date>
            <delta_ts>2011-12-13 07:52:30 -0800</delta_ts>
            <desc>Updated patch after js fix.</desc>
            <filename>0001-QT-WK2-Add-experimental-viewport-attributes-view-to-.patch</filename>
            <type>text/plain</type>
            <size>29242</size>
            <attacher name="Michael Brüning">michael.bruning</attacher>
            
              <data encoding="base64">RnJvbSAxZDYxM2ZkOWQ4OTdiZDU5YjI4ZDU0YWFiZmVhMGVmYjBiMjg5OWM4IE1vbiBTZXAgMTcg
MDA6MDA6MDAgMjAwMQpGcm9tOiBNaWNoYWVsIEJydW5pbmcgPG1pY2hhZWwuYnJ1bmluZ0Bub2tp
YS5jb20+CkRhdGU6IFRodSwgMjQgTm92IDIwMTEgMTc6MTg6MDAgKzAxMDAKU3ViamVjdDogW1BB
VENIXSBbUVRdW1dLMl1BZGQgKGV4cGVyaW1lbnRhbCkgdmlld3BvcnQgYXR0cmlidXRlcyB2aWV3
IHRvIE1pbmlicm93c2VyL3F0Ck1JTUUtVmVyc2lvbjogMS4wCkNvbnRlbnQtVHlwZTogdGV4dC9w
bGFpbjsgY2hhcnNldD1VVEYtOApDb250ZW50LVRyYW5zZmVyLUVuY29kaW5nOiA4Yml0CgpodHRw
czovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9NzI4OTMKClJldmlld2VkIGJ5IFRv
ciBBcm5lIFZlc3Riw7gKClRoaXMgZXh0ZW5kcyBRUXVpY2tXZWJWaWV3RXhwZXJpbWVudGFsIGJ5
IGEgcHJvcGVydHkgbmFtZWQKdmlld3BvcnRBdHRyaWJ1dGVzLCB3aGljaCBjb250YWlucyB0aGUg
dmlld3BvcnQgc2NhbGFiaWxpdHkgYW5kCmxheW91dCBzaXplIGluZm9ybWF0aW9uLiBUaGlzIHBy
b3BlcnR5IGlzIGV4cG9zZWQgdG8gUU1MIHRocm91Z2gKdGhlIGV4cGVyaW1lbnRhbCBleHRlbnNp
b24gZm9yIFFRdWlja1dlYlZpZXcuCgpTb3VyY2U6CgoqIFNvdXJjZS9xdHdlYmtpdC1leHBvcnQu
bWFwOgoKU291cmNlL1dlYktpdC9xdDoKCiogZGVjbGFyYXRpcXZlL2V4cGVyaW1lbnRhbC9wbHVn
aW4uY3BwOgoKU291cmNlL1dlYktpdDI6CgoqIFRhcmdldC5wcmk6CiogVUlQcm9jZXNzL0FQSS9x
dC9xcXVpY2t3ZWJ2aWV3LmNwcDoKKFFRdWlja1dlYlZpZXdQcml2YXRlOjpkaWRDaGFuZ2VDb250
ZW50c1NpemUpOgooUVF1aWNrV2ViVmlld1ByaXZhdGU6Ol9xX3ZpZXdwb3J0VXBkYXRlZCk6CihR
UXVpY2tXZWJWaWV3UHJpdmF0ZTo6Y29tcHV0ZVZpZXdwb3J0Q29uc3RyYWludHMpOgooUVF1aWNr
V2ViVmlld1ByaXZhdGU6OlBvc3RUcmFuc2l0aW9uU3RhdGU6OmFwcGx5KTogQWRkZWQgYXBwbHlp
bmcKY29udGVudHNTaXplIHRvIHZpZXdwb3J0SW5mby4KKFFRdWlja1dlYlZpZXdFeHBlcmltZW50
YWw6OlFRdWlja1dlYlZpZXdFeHBlcmltZW50YWwpOgooUVF1aWNrV2ViVmlld0V4cGVyaW1lbnRh
bDo6dmlld3BvcnRJbmZvKToKKiBVSVByb2Nlc3MvQVBJL3F0L3FxdWlja3dlYnZpZXdfcC5oOgoq
IFVJUHJvY2Vzcy9BUEkvcXQvcXF1aWNrd2Vidmlld19wX3AuaDogTW92ZWQgUG9zdFRyYW5zaXRp
b25TdGF0ZTo6YXBwbHkKdG8gcXF1aWNrd2Vidmlldy5jcHAKKiBVSVByb2Nlc3MvQVBJL3F0L3F3
ZWJ2aWV3cG9ydGluZm8uY3BwOiBBZGRlZC4KKFFXZWJWaWV3cG9ydEluZm86OlFXZWJWaWV3cG9y
dEluZm8pOgooUVdlYlZpZXdwb3J0SW5mbzo6flFXZWJWaWV3cG9ydEluZm8pOgooUVdlYlZpZXdw
b3J0SW5mbzo6Y29udGVudHNIZWlnaHQpOgooUVdlYlZpZXdwb3J0SW5mbzo6Y29udGVudHNXaWR0
aCk6CihRV2ViVmlld3BvcnRJbmZvOjpjdXJyZW50U2NhbGUpOgooUVdlYlZpZXdwb3J0SW5mbzo6
ZGV2aWNlUGl4ZWxSYXRpbyk6CihRV2ViVmlld3BvcnRJbmZvOjppbml0aWFsU2NhbGUpOgooUVdl
YlZpZXdwb3J0SW5mbzo6bWluaW11bVNjYWxlKToKKFFXZWJWaWV3cG9ydEluZm86Om1heGltdW1T
Y2FsZSk6CihRV2ViVmlld3BvcnRJbmZvOjppc1NjYWxhYmxlKToKKFFXZWJWaWV3cG9ydEluZm86
OmxheW91dFdpZHRoKToKKFFXZWJWaWV3cG9ydEluZm86OmxheW91dEhlaWdodCk6CihRV2ViVmll
d3BvcnRJbmZvOjpzZXRDb250ZW50c1NpemUpOgooUVdlYlZpZXdwb3J0SW5mbzo6c2V0Q3VycmVu
dFNjYWxlKToKKFFXZWJWaWV3cG9ydEluZm86OnNldFZpZXdwb3J0QXR0cmlidXRlcyk6CiogVUlQ
cm9jZXNzL0FQSS9xdC9xd2Vidmlld3BvcnRpbmZvX3AuaDogQWRkZWQuCgpUb29sczoKCiogTWlu
aUJyb3dzZXIvcXQvTWluaUJyb3dzZXIucHJvOgoqIE1pbmlCcm93c2VyL3F0L01pbmlCcm93c2Vy
LnFyYzoKKiBNaW5pQnJvd3Nlci9xdC9pY29ucy9pbmZvLnBuZzogQWRkZWQuCiogTWluaUJyb3dz
ZXIvcXQvcW1sL0Jyb3dzZXJXaW5kb3cucW1sOgoqIE1pbmlCcm93c2VyL3F0L3FtbC9WaWV3cG9y
dEluZm9JdGVtLnFtbDogQWRkZWQuCi0tLQogQ2hhbmdlTG9nICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgfCAgIDE0ICsrCiBTb3VyY2UvV2ViS2l0L3F0L0NoYW5nZUxv
ZyAgICAgICAgICAgICAgICAgICAgICAgICB8ICAgMTQgKysKIC4uLi9XZWJLaXQvcXQvZGVjbGFy
YXRpdmUvZXhwZXJpbWVudGFsL3BsdWdpbi5jcHAgIHwgICAgMyArCiBTb3VyY2UvV2ViS2l0Mi9D
aGFuZ2VMb2cgICAgICAgICAgICAgICAgICAgICAgICAgICB8ICAgNDIgKysrKysrKwogU291cmNl
L1dlYktpdDIvVGFyZ2V0LnByaSAgICAgICAgICAgICAgICAgICAgICAgICAgfCAgICAyICsKIFNv
dXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9BUEkvcXQvcXF1aWNrd2Vidmlldy5jcHAgIHwgICAyOCAr
KysrKwogU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL0FQSS9xdC9xcXVpY2t3ZWJ2aWV3X3AuaCAg
fCAgICA0ICsKIC4uLi9XZWJLaXQyL1VJUHJvY2Vzcy9BUEkvcXQvcXF1aWNrd2Vidmlld19wX3Au
aCAgIHwgICAxNCArLS0KIC4uLi9XZWJLaXQyL1VJUHJvY2Vzcy9BUEkvcXQvcXdlYnZpZXdwb3J0
aW5mby5jcHAgIHwgIDEyOSArKysrKysrKysrKysrKysrKysrKwogLi4uL1dlYktpdDIvVUlQcm9j
ZXNzL0FQSS9xdC9xd2Vidmlld3BvcnRpbmZvX3AuaCAgfCAgIDg1ICsrKysrKysrKysrKysKIFNv
dXJjZS9xdHdlYmtpdC1leHBvcnQubWFwICAgICAgICAgICAgICAgICAgICAgICAgIHwgICAgMyAr
CiBUb29scy9DaGFuZ2VMb2cgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8ICAg
MTggKysrCiBUb29scy9NaW5pQnJvd3Nlci9xdC9NaW5pQnJvd3Nlci5wcm8gICAgICAgICAgICAg
ICB8ICAgIDMgKy0KIFRvb2xzL01pbmlCcm93c2VyL3F0L01pbmlCcm93c2VyLnFyYyAgICAgICAg
ICAgICAgIHwgICAgMiArCiBUb29scy9NaW5pQnJvd3Nlci9xdC9pY29ucy9pbmZvLnBuZyAgICAg
ICAgICAgICAgICB8ICBCaW4gMCAtPiAzNDAgYnl0ZXMKIFRvb2xzL01pbmlCcm93c2VyL3F0L3Ft
bC9Ccm93c2VyV2luZG93LnFtbCAgICAgICAgIHwgICAzNiArKysrKysKIFRvb2xzL01pbmlCcm93
c2VyL3F0L3FtbC9WaWV3cG9ydEluZm9JdGVtLnFtbCAgICAgIHwgICA2MyArKysrKysrKysrCiAx
NyBmaWxlcyBjaGFuZ2VkLCA0NDYgaW5zZXJ0aW9ucygrKSwgMTQgZGVsZXRpb25zKC0pCiBjcmVh
dGUgbW9kZSAxMDA2NDQgU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL0FQSS9xdC9xd2Vidmlld3Bv
cnRpbmZvLmNwcAogY3JlYXRlIG1vZGUgMTAwNjQ0IFNvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9B
UEkvcXQvcXdlYnZpZXdwb3J0aW5mb19wLmgKIGNyZWF0ZSBtb2RlIDEwMDY0NCBUb29scy9NaW5p
QnJvd3Nlci9xdC9pY29ucy9pbmZvLnBuZwogY3JlYXRlIG1vZGUgMTAwNjQ0IFRvb2xzL01pbmlC
cm93c2VyL3F0L3FtbC9WaWV3cG9ydEluZm9JdGVtLnFtbAoKZGlmZiAtLWdpdCBhL0NoYW5nZUxv
ZyBiL0NoYW5nZUxvZwppbmRleCA1MTJmNWZjLi45NjgyYTY0IDEwMDY0NAotLS0gYS9DaGFuZ2VM
b2cKKysrIGIvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTcgQEAKKzIwMTEtMTEtMjQgIE1pY2hhZWwg
QnLDvG5pbmcgIDxtaWNoYWVsLmJydW5pbmdAbm9raWEuY29tPgorCisgICAgICAgIFtRVF1bV0sy
XUFkZCAoZXhwZXJpbWVudGFsKSB2aWV3cG9ydCBpbmZvIHZpZXcgdG8gTWluaWJyb3dzZXIvcXQu
CisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD03Mjg5Mwor
CisgICAgICAgIFJldmlld2VkIGJ5IFRvciBBcm5lIFZlc3Riw7guCisKKyAgICAgICAgVGhpcyBw
YXRjaCBleHRlbmRzIFFRdWlja1dlYlZpZXdFeHBlcmltZW50YWwgYnkgYSBwcm9wZXJ0eSBuYW1l
ZAorICAgICAgICB2aWV3cG9ydEluZm8sIHdoaWNoIGNvbnRhaW5zIHRoZSB2aWV3cG9ydCBzY2Fs
YWJpbGl0eSBhbmQKKyAgICAgICAgbGF5b3V0IGFuZCBjb250ZW50cyBzaXplIGluZm9ybWF0aW9u
LiBUaGlzIHByb3BlcnR5IGlzIGV4cG9zZWQgdG8KKyAgICAgICAgUU1MIHRocm91Z2ggdGhlIGV4
cGVyaW1lbnRhbCBleHRlbnNpb24gZm9yIFFRdWlja1dlYlZpZXcuCisKKyAgICAgICAgKiBTb3Vy
Y2UvcXR3ZWJraXQtZXhwb3J0Lm1hcDoKKwogMjAxMS0xMi0wOSAgSm9vbmUgSHVyICA8am9vbmUu
aHVyQGNvbGxhYm9yYS5jby51az4KIAogICAgICAgICBbR1RLXSBJbml0aWFsIGltcGxlbWVudGF0
aW9uIG9mIEFjY2VsZXJhdGVkIENvbXBvc2l0aW5nIHVzaW5nIENsdXR0ZXIKZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJLaXQvcXQvQ2hhbmdlTG9nIGIvU291cmNlL1dlYktpdC9xdC9DaGFuZ2VMb2cK
aW5kZXggZTBhOGQ3Yy4uNTAwOTdmNCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9xdC9DaGFu
Z2VMb2cKKysrIGIvU291cmNlL1dlYktpdC9xdC9DaGFuZ2VMb2cKQEAgLTEsMyArMSwxNyBAQAor
MjAxMS0xMS0yNCAgTWljaGFlbCBCcsO8bmluZyAgPG1pY2hhZWwuYnJ1bmluZ0Bub2tpYS5jb20+
CisKKyAgICAgICAgW1FUXVtXSzJdQWRkIChleHBlcmltZW50YWwpIHZpZXdwb3J0IGluZm8gdmll
dyB0byBNaW5pYnJvd3Nlci9xdC4KKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hv
d19idWcuY2dpP2lkPTcyODkzCisKKyAgICAgICAgUmV2aWV3ZWQgYnkgVG9yIEFybmUgVmVzdGLD
uC4KKworICAgICAgICBUaGlzIHBhdGNoIGV4dGVuZHMgUVF1aWNrV2ViVmlld0V4cGVyaW1lbnRh
bCBieSBhIHByb3BlcnR5IG5hbWVkCisgICAgICAgIHZpZXdwb3J0SW5mbywgd2hpY2ggY29udGFp
bnMgdGhlIHZpZXdwb3J0IHNjYWxhYmlsaXR5IGFuZAorICAgICAgICBsYXlvdXQgYW5kIGNvbnRl
bnRzIHNpemUgaW5mb3JtYXRpb24uIFRoaXMgcHJvcGVydHkgaXMgZXhwb3NlZCB0bworICAgICAg
ICBRTUwgdGhyb3VnaCB0aGUgZXhwZXJpbWVudGFsIGV4dGVuc2lvbiBmb3IgUVF1aWNrV2ViVmll
dy4KKworICAgICAgICAqIGRlY2xhcmF0aXZlL2V4cGVyaW1lbnRhbC9wbHVnaW4uY3BwOgorCiAy
MDExLTEyLTA4ICBQaWVycmUgUm9zc2kgIDxwaWVycmUucm9zc2lAZ21haWwuY29tPgogCiAgICAg
ICAgIERyb3AgRU5BQkxFX05PX0xJU1RCT1hfUkVOREVSSU5HLCBhbmQgbWFrZSBpdCBhIHJ1bnRp
bWUgZGVjaXNpb24uCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L3F0L2RlY2xhcmF0aXZlL2V4
cGVyaW1lbnRhbC9wbHVnaW4uY3BwIGIvU291cmNlL1dlYktpdC9xdC9kZWNsYXJhdGl2ZS9leHBl
cmltZW50YWwvcGx1Z2luLmNwcAppbmRleCA4NjMxMmUxLi45NjM2NjAzIDEwMDY0NAotLS0gYS9T
b3VyY2UvV2ViS2l0L3F0L2RlY2xhcmF0aXZlL2V4cGVyaW1lbnRhbC9wbHVnaW4uY3BwCisrKyBi
L1NvdXJjZS9XZWJLaXQvcXQvZGVjbGFyYXRpdmUvZXhwZXJpbWVudGFsL3BsdWdpbi5jcHAKQEAg
LTIwLDYgKzIwLDcgQEAKICNpbmNsdWRlICJxcXVpY2t3ZWJwYWdlX3AuaCIKICNpbmNsdWRlICJx
cXVpY2t3ZWJ2aWV3X3AuaCIKICNpbmNsdWRlICJxd2ViZG93bmxvYWRpdGVtX3AuaCIKKyNpbmNs
dWRlICJxd2Vidmlld3BvcnRpbmZvX3AuaCIKIAogI2luY2x1ZGUgPFF0RGVjbGFyYXRpdmUvcWRl
Y2xhcmF0aXZlLmg+CiAjaW5jbHVkZSA8UXREZWNsYXJhdGl2ZS9xZGVjbGFyYXRpdmVleHRlbnNp
b25wbHVnaW4uaD4KQEAgLTQ1LDYgKzQ2LDggQEAgcHVibGljOgogICAgICAgICBxbWxSZWdpc3Rl
ckV4dGVuZGVkVHlwZTxRUXVpY2tXZWJWaWV3LCBRUXVpY2tXZWJWaWV3RXhwZXJpbWVudGFsRXh0
ZW5zaW9uPih1cmksIDMsIDAsICJXZWJWaWV3Iik7CiAgICAgICAgIHFtbFJlZ2lzdGVyVW5jcmVh
dGFibGVUeXBlPFFRdWlja1dlYlZpZXdFeHBlcmltZW50YWw+KHVyaSwgMywgMCwgIlFRdWlja1dl
YlZpZXdFeHBlcmltZW50YWwiLAogICAgICAgICAgICAgUU9iamVjdDo6dHIoIkNhbm5vdCBjcmVh
dGUgc2VwYXJhdGUgaW5zdGFuY2Ugb2YgUVF1aWNrV2ViVmlld0V4cGVyaW1lbnRhbCIpKTsKKyAg
ICAgICAgcW1sUmVnaXN0ZXJVbmNyZWF0YWJsZVR5cGU8UVdlYlZpZXdwb3J0SW5mbz4odXJpLCAz
LCAwLCAiUVdlYlZpZXdwb3J0SW5mbyIsCisgICAgICAgICAgICBRT2JqZWN0Ojp0cigiQ2Fubm90
IGNyZWF0ZSBzZXBhcmF0ZSBpbnN0YW5jZSBvZiBRV2ViVmlld3BvcnRJbmZvIikpOwogICAgIH0K
IH07CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQyL0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJL
aXQyL0NoYW5nZUxvZwppbmRleCBmODM3OTc2Li4yNDUyMmNkIDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V2ViS2l0Mi9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYktpdDIvQ2hhbmdlTG9nCkBAIC0xLDMg
KzEsNDUgQEAKKzIwMTEtMTEtMjQgIE1pY2hhZWwgQnLDvG5pbmcgIDxtaWNoYWVsLmJydW5pbmdA
bm9raWEuY29tPgorCisgICAgICAgIFtRVF1bV0syXUFkZCAoZXhwZXJpbWVudGFsKSB2aWV3cG9y
dCBpbmZvIHZpZXcgdG8gTWluaWJyb3dzZXIvcXQuCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJr
aXQub3JnL3Nob3dfYnVnLmNnaT9pZD03Mjg5MworCisgICAgICAgIFJldmlld2VkIGJ5IFRvciBB
cm5lIFZlc3Riw7guCisKKyAgICAgICAgVGhpcyBwYXRjaCBleHRlbmRzIFFRdWlja1dlYlZpZXdF
eHBlcmltZW50YWwgYnkgYSBwcm9wZXJ0eSBuYW1lZAorICAgICAgICB2aWV3cG9ydEluZm8sIHdo
aWNoIGNvbnRhaW5zIHRoZSB2aWV3cG9ydCBzY2FsYWJpbGl0eSBhbmQKKyAgICAgICAgbGF5b3V0
IGFuZCBjb250ZW50cyBzaXplIGluZm9ybWF0aW9uLiBUaGlzIHByb3BlcnR5IGlzIGV4cG9zZWQg
dG8KKyAgICAgICAgUU1MIHRocm91Z2ggdGhlIGV4cGVyaW1lbnRhbCBleHRlbnNpb24gZm9yIFFR
dWlja1dlYlZpZXcuCisKKyAgICAgICAgKiBUYXJnZXQucHJpOgorICAgICAgICAqIFVJUHJvY2Vz
cy9BUEkvcXQvcXF1aWNrd2Vidmlldy5jcHA6CisgICAgICAgIChRUXVpY2tXZWJWaWV3UHJpdmF0
ZTo6ZGlkQ2hhbmdlQ29udGVudHNTaXplKToKKyAgICAgICAgKFFRdWlja1dlYlZpZXdQcml2YXRl
OjpfcV92aWV3cG9ydFVwZGF0ZWQpOgorICAgICAgICAoUVF1aWNrV2ViVmlld1ByaXZhdGU6OmNv
bXB1dGVWaWV3cG9ydENvbnN0cmFpbnRzKToKKyAgICAgICAgKFFRdWlja1dlYlZpZXdQcml2YXRl
OjpQb3N0VHJhbnNpdGlvblN0YXRlOjphcHBseSk6IEFkZGVkIGFwcGx5aW5nCisgICAgICAgIGNv
bnRlbnRzU2l6ZSB0byB2aWV3cG9ydEluZm8uCisgICAgICAgIChRUXVpY2tXZWJWaWV3RXhwZXJp
bWVudGFsOjpRUXVpY2tXZWJWaWV3RXhwZXJpbWVudGFsKToKKyAgICAgICAgKFFRdWlja1dlYlZp
ZXdFeHBlcmltZW50YWw6OnZpZXdwb3J0SW5mbyk6CisgICAgICAgICogVUlQcm9jZXNzL0FQSS9x
dC9xcXVpY2t3ZWJ2aWV3X3AuaDoKKyAgICAgICAgKiBVSVByb2Nlc3MvQVBJL3F0L3FxdWlja3dl
YnZpZXdfcF9wLmg6IE1vdmVkIFBvc3RUcmFuc2l0aW9uU3RhdGU6OmFwcGx5CisgICAgICAgIHRv
IHFxdWlja3dlYnZpZXcuY3BwCisgICAgICAgICogVUlQcm9jZXNzL0FQSS9xdC9xd2Vidmlld3Bv
cnRpbmZvLmNwcDogQWRkZWQuCisgICAgICAgIChRV2ViVmlld3BvcnRJbmZvOjpRV2ViVmlld3Bv
cnRJbmZvKToKKyAgICAgICAgKFFXZWJWaWV3cG9ydEluZm86On5RV2ViVmlld3BvcnRJbmZvKToK
KyAgICAgICAgKFFXZWJWaWV3cG9ydEluZm86OmNvbnRlbnRzSGVpZ2h0KToKKyAgICAgICAgKFFX
ZWJWaWV3cG9ydEluZm86OmNvbnRlbnRzV2lkdGgpOgorICAgICAgICAoUVdlYlZpZXdwb3J0SW5m
bzo6Y3VycmVudFNjYWxlKToKKyAgICAgICAgKFFXZWJWaWV3cG9ydEluZm86OmRldmljZVBpeGVs
UmF0aW8pOgorICAgICAgICAoUVdlYlZpZXdwb3J0SW5mbzo6aW5pdGlhbFNjYWxlKToKKyAgICAg
ICAgKFFXZWJWaWV3cG9ydEluZm86Om1pbmltdW1TY2FsZSk6CisgICAgICAgIChRV2ViVmlld3Bv
cnRJbmZvOjptYXhpbXVtU2NhbGUpOgorICAgICAgICAoUVdlYlZpZXdwb3J0SW5mbzo6aXNTY2Fs
YWJsZSk6CisgICAgICAgIChRV2ViVmlld3BvcnRJbmZvOjpsYXlvdXRXaWR0aCk6CisgICAgICAg
IChRV2ViVmlld3BvcnRJbmZvOjpsYXlvdXRIZWlnaHQpOgorICAgICAgICAoUVdlYlZpZXdwb3J0
SW5mbzo6c2V0Q29udGVudHNTaXplKToKKyAgICAgICAgKFFXZWJWaWV3cG9ydEluZm86OnNldEN1
cnJlbnRTY2FsZSk6CisgICAgICAgIChRV2ViVmlld3BvcnRJbmZvOjpzZXRWaWV3cG9ydEF0dHJp
YnV0ZXMpOgorICAgICAgICAqIFVJUHJvY2Vzcy9BUEkvcXQvcXdlYnZpZXdwb3J0aW5mb19wLmg6
IEFkZGVkLgorCiAyMDExLTEyLTA5ICBNaWNoYWVsIEJyw7xuaW5nICA8bWljaGFlbC5icnVuaW5n
QG5va2lhLmNvbT4KIAogICAgICAgICBbUXRdW1dLMl0gRml4IHRzdF9RUXVpY2tXZWJWaWV3Ojpz
Y3JvbGxSZXF1ZXN0KCkgQVBJIHRlc3QKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQyL1Rhcmdl
dC5wcmkgYi9Tb3VyY2UvV2ViS2l0Mi9UYXJnZXQucHJpCmluZGV4IGE1ZDRjNmQuLmFlMTM4MzEg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQyL1RhcmdldC5wcmkKKysrIGIvU291cmNlL1dlYktp
dDIvVGFyZ2V0LnByaQpAQCAtMTgxLDYgKzE4MSw3IEBAIEhFQURFUlMgKz0gXAogICAgIFVJUHJv
Y2Vzcy9BUEkvcXQvcXF1aWNrd2VicGFnZV9wX3AuaCBcCiAgICAgVUlQcm9jZXNzL0FQSS9xdC9x
cXVpY2t3ZWJ2aWV3X3AuaCBcCiAgICAgVUlQcm9jZXNzL0FQSS9xdC9xcXVpY2t3ZWJ2aWV3X3Bf
cC5oIFwKKyAgICBVSVByb2Nlc3MvQVBJL3F0L3F3ZWJ2aWV3cG9ydGluZm9fcC5oIFwKICAgICBV
SVByb2Nlc3MvQXV0aGVudGljYXRpb24vQXV0aGVudGljYXRpb25DaGFsbGVuZ2VQcm94eS5oIFwK
ICAgICBVSVByb2Nlc3MvQXV0aGVudGljYXRpb24vQXV0aGVudGljYXRpb25EZWNpc2lvbkxpc3Rl
bmVyLmggXAogICAgIFVJUHJvY2Vzcy9BdXRoZW50aWNhdGlvbi9XZWJDcmVkZW50aWFsLmggXApA
QCAtNDk4LDYgKzQ5OSw3IEBAIFNPVVJDRVMgKz0gXAogICAgIFVJUHJvY2Vzcy9BUEkvcXQvcXF1
aWNrd2VicGFnZS5jcHAgXAogICAgIFVJUHJvY2Vzcy9BUEkvcXQvcXF1aWNrd2Vidmlldy5jcHAg
XAogICAgIFVJUHJvY2Vzcy9BUEkvcXQvcXdlYnByZWZlcmVuY2VzLmNwcCBcCisgICAgVUlQcm9j
ZXNzL0FQSS9xdC9xd2Vidmlld3BvcnRpbmZvLmNwcCBcCiAgICAgVUlQcm9jZXNzL0F1dGhlbnRp
Y2F0aW9uL0F1dGhlbnRpY2F0aW9uQ2hhbGxlbmdlUHJveHkuY3BwIFwKICAgICBVSVByb2Nlc3Mv
QXV0aGVudGljYXRpb24vQXV0aGVudGljYXRpb25EZWNpc2lvbkxpc3RlbmVyLmNwcCBcCiAgICAg
VUlQcm9jZXNzL0F1dGhlbnRpY2F0aW9uL1dlYkNyZWRlbnRpYWwuY3BwIFwKZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9BUEkvcXQvcXF1aWNrd2Vidmlldy5jcHAgYi9Tb3Vy
Y2UvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJL3F0L3FxdWlja3dlYnZpZXcuY3BwCmluZGV4IDMwODYw
NDIuLjljMThmNzUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9BUEkvcXQv
cXF1aWNrd2Vidmlldy5jcHAKKysrIGIvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL0FQSS9xdC9x
cXVpY2t3ZWJ2aWV3LmNwcApAQCAtMzAsNiArMzAsNyBAQAogI2luY2x1ZGUgInFxdWlja3dlYnBh
Z2VfcF9wLmgiCiAjaW5jbHVkZSAicXF1aWNrd2Vidmlld19wX3AuaCIKICNpbmNsdWRlICJxd2Vi
cHJlZmVyZW5jZXNfcF9wLmgiCisjaW5jbHVkZSAicXdlYnZpZXdwb3J0aW5mb19wLmgiCiAKICNp
bmNsdWRlIDxKYXZhU2NyaXB0Q29yZS9Jbml0aWFsaXplVGhyZWFkaW5nLmg+CiAjaW5jbHVkZSA8
UUZpbGVEaWFsb2c+CkBAIC0xNjQsNiArMTY1LDcgQEAgdm9pZCBRUXVpY2tXZWJWaWV3UHJpdmF0
ZTo6X3FfcmVzdW1lKCkKIAogdm9pZCBRUXVpY2tXZWJWaWV3UHJpdmF0ZTo6ZGlkQ2hhbmdlQ29u
dGVudHNTaXplKGNvbnN0IFFTaXplJiBuZXdTaXplKQogeworICAgIFFfUShRUXVpY2tXZWJWaWV3
KTsKICAgICBpZiAodXNlVHJhZGl0aW9uYWxEZXNrdG9wQmVoYXZpb3VyKQogICAgICAgICByZXR1
cm47CiAKQEAgLTE3NSw2ICsxNzcsOCBAQCB2b2lkIFFRdWlja1dlYlZpZXdQcml2YXRlOjpkaWRD
aGFuZ2VDb250ZW50c1NpemUoY29uc3QgUVNpemUmIG5ld1NpemUpCiAKICAgICBwYWdlVmlldy0+
c2V0V2lkdGgobmV3U2l6ZS53aWR0aCgpKTsKICAgICBwYWdlVmlldy0+c2V0SGVpZ2h0KG5ld1Np
emUuaGVpZ2h0KCkpOworCisgICAgcS0+bV9leHBlcmltZW50YWwtPnZpZXdwb3J0SW5mbygpLT5z
ZXRDb250ZW50c1NpemUobmV3U2l6ZSk7CiB9CiAKIHZvaWQgUVF1aWNrV2ViVmlld1ByaXZhdGU6
OmRpZENoYW5nZVZpZXdwb3J0UHJvcGVydGllcyhjb25zdCBXZWJDb3JlOjpWaWV3cG9ydEFyZ3Vt
ZW50cyYgYXJncykKQEAgLTIwMiw2ICsyMDYsOCBAQCB2b2lkIFFRdWlja1dlYlZpZXdQcml2YXRl
Ojp1cGRhdGVWaXNpYmxlQ29udGVudFJlY3QoKQogICAgIGNvbnN0IFFSZWN0RiB2aXNpYmxlUmVj
dEluUGFnZVZpZXdDb29yZGluYXRlcyA9IHEtPm1hcFJlY3RUb0l0ZW0ocGFnZVZpZXcuZGF0YSgp
LCBxLT5ib3VuZGluZ1JlY3QoKSkuaW50ZXJzZWN0ZWQocGFnZVZpZXctPmJvdW5kaW5nUmVjdCgp
KTsKICAgICBmbG9hdCBzY2FsZSA9IHBhZ2VWaWV3LT5zY2FsZSgpOwogICAgIHBhZ2VQcm94eS0+
c2V0VmlzaWJsZUNvbnRlbnRSZWN0QW5kU2NhbGUodmlzaWJsZVJlY3RJblBhZ2VWaWV3Q29vcmRp
bmF0ZXMsIHNjYWxlKTsKKworICAgIHEtPm1fZXhwZXJpbWVudGFsLT52aWV3cG9ydEluZm8oKS0+
c2V0Q3VycmVudFNjYWxlKHN0YXRpY19jYXN0PHFyZWFsPihzY2FsZSkpOwogfQogCiB2b2lkIFFR
dWlja1dlYlZpZXdQcml2YXRlOjpfcV92aWV3cG9ydFRyYWplY3RvcnlWZWN0b3JDaGFuZ2VkKGNv
bnN0IFFQb2ludEYmIHRyYWplY3RvcnlWZWN0b3IpCkBAIC0yMzMsNiArMjM5LDIwIEBAIHZvaWQg
UVF1aWNrV2ViVmlld1ByaXZhdGU6OnVwZGF0ZVZpZXdwb3J0U2l6ZSgpCiAgICAgdXBkYXRlVmlz
aWJsZUNvbnRlbnRSZWN0KCk7CiB9CiAKK3ZvaWQgUVF1aWNrV2ViVmlld1ByaXZhdGU6OlBvc3RU
cmFuc2l0aW9uU3RhdGU6OmFwcGx5KCkKK3sKKyAgICBwLT5pbnRlcmFjdGlvbkVuZ2luZS0+cmVz
ZXQoKTsKKyAgICBwLT5pbnRlcmFjdGlvbkVuZ2luZS0+YXBwbHlDb25zdHJhaW50cyhwLT5jb21w
dXRlVmlld3BvcnRDb25zdHJhaW50cygpKTsKKworICAgIGlmIChjb250ZW50c1NpemUuaXNWYWxp
ZCgpKSB7CisgICAgICAgIHAtPnBhZ2VWaWV3LT5zZXRXaWR0aChjb250ZW50c1NpemUud2lkdGgo
KSk7CisgICAgICAgIHAtPnBhZ2VWaWV3LT5zZXRIZWlnaHQoY29udGVudHNTaXplLmhlaWdodCgp
KTsKKyAgICAgICAgcC0+cV9wdHItPmV4cGVyaW1lbnRhbCgpLT52aWV3cG9ydEluZm8oKS0+c2V0
Q29udGVudHNTaXplKGNvbnRlbnRzU2l6ZSk7CisgICAgfQorCisgICAgY29udGVudHNTaXplID0g
UVNpemUoKTsKK30KKwogUXRWaWV3cG9ydEludGVyYWN0aW9uRW5naW5lOjpDb25zdHJhaW50cyBR
UXVpY2tXZWJWaWV3UHJpdmF0ZTo6Y29tcHV0ZVZpZXdwb3J0Q29uc3RyYWludHMoKQogewogICAg
IFFfUShRUXVpY2tXZWJWaWV3KTsKQEAgLTI2NCw2ICsyODQsOCBAQCBRdFZpZXdwb3J0SW50ZXJh
Y3Rpb25FbmdpbmU6OkNvbnN0cmFpbnRzIFFRdWlja1dlYlZpZXdQcml2YXRlOjpjb21wdXRlVmll
d3BvcnRDbwogICAgIG5ld0NvbnN0cmFpbnRzLmRldmljZVBpeGVsUmF0aW8gPSBhdHRyLmRldmlj
ZVBpeGVsUmF0aW87CiAgICAgbmV3Q29uc3RyYWludHMuaXNVc2VyU2NhbGFibGUgPSAhIWF0dHIu
dXNlclNjYWxhYmxlOwogCisgICAgcS0+bV9leHBlcmltZW50YWwtPnZpZXdwb3J0SW5mbygpLT5z
ZXRWaWV3cG9ydEF0dHJpYnV0ZXMoYXR0cik7CisKICAgICByZXR1cm4gbmV3Q29uc3RyYWludHM7
CiB9CiAKQEAgLTQzMiw2ICs0NTQsNyBAQCBRUXVpY2tXZWJWaWV3RXhwZXJpbWVudGFsOjpRUXVp
Y2tXZWJWaWV3RXhwZXJpbWVudGFsKFFRdWlja1dlYlZpZXcgKndlYlZpZXcpCiAgICAgOiBRT2Jq
ZWN0KHdlYlZpZXcpCiAgICAgLCBxX3B0cih3ZWJWaWV3KQogICAgICwgZF9wdHIod2ViVmlldy0+
ZF9wdHIuZGF0YSgpKQorICAgICwgbV92aWV3cG9ydEluZm8obmV3IFFXZWJWaWV3cG9ydEluZm8o
dGhpcykpCiB7CiB9CiAKQEAgLTUwMCw2ICs1MjMsMTEgQEAgYm9vbCBRUXVpY2tXZWJWaWV3RXhw
ZXJpbWVudGFsOjp1c2VUcmFkaXRpb25hbERlc2t0b3BCZWhhdmlvdXIoKSBjb25zdAogICAgIHJl
dHVybiBkLT51c2VUcmFkaXRpb25hbERlc2t0b3BCZWhhdmlvdXI7CiB9CiAKK1FXZWJWaWV3cG9y
dEluZm8qIFFRdWlja1dlYlZpZXdFeHBlcmltZW50YWw6OnZpZXdwb3J0SW5mbygpCit7CisgICAg
cmV0dXJuIG1fdmlld3BvcnRJbmZvOworfQorCiBRUXVpY2tXZWJWaWV3OjpRUXVpY2tXZWJWaWV3
KFFRdWlja0l0ZW0qIHBhcmVudCkKICAgICA6IFFRdWlja0l0ZW0ocGFyZW50KQogICAgICwgZF9w
dHIobmV3IFFRdWlja1dlYlZpZXdQcml2YXRlKHRoaXMpKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dl
YktpdDIvVUlQcm9jZXNzL0FQSS9xdC9xcXVpY2t3ZWJ2aWV3X3AuaCBiL1NvdXJjZS9XZWJLaXQy
L1VJUHJvY2Vzcy9BUEkvcXQvcXF1aWNrd2Vidmlld19wLmgKaW5kZXggNDU2Nzc3My4uZjg2MjRi
ZSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL0FQSS9xdC9xcXVpY2t3ZWJ2
aWV3X3AuaAorKysgYi9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJL3F0L3FxdWlja3dlYnZp
ZXdfcC5oCkBAIC0zMiw2ICszMiw3IEBAIGNsYXNzIFFRdWlja1dlYlZpZXdFeHBlcmltZW50YWw7
CiBjbGFzcyBRV2ViRG93bmxvYWRJdGVtOwogY2xhc3MgUVdlYlByZWZlcmVuY2VzOwogY2xhc3Mg
UVdlYlBlcm1pc3Npb25SZXF1ZXN0OworY2xhc3MgUVdlYlZpZXdwb3J0SW5mbzsKIAogbmFtZXNw
YWNlIFdUUiB7CiBjbGFzcyBQbGF0Zm9ybVdlYlZpZXc7CkBAIC0xNzIsNiArMTczLDcgQEAgY2xh
c3MgUVdFQktJVF9FWFBPUlQgUVF1aWNrV2ViVmlld0V4cGVyaW1lbnRhbCA6IHB1YmxpYyBRT2Jq
ZWN0IHsKICAgICBRX1BST1BFUlRZKFFEZWNsYXJhdGl2ZUNvbXBvbmVudCogY29uZmlybURpYWxv
ZyBSRUFEIGNvbmZpcm1EaWFsb2cgV1JJVEUgc2V0Q29uZmlybURpYWxvZyBOT1RJRlkgY29uZmly
bURpYWxvZ0NoYW5nZWQpCiAgICAgUV9QUk9QRVJUWShRRGVjbGFyYXRpdmVDb21wb25lbnQqIHBy
b21wdERpYWxvZyBSRUFEIHByb21wdERpYWxvZyBXUklURSBzZXRQcm9tcHREaWFsb2cgTk9USUZZ
IHByb21wdERpYWxvZ0NoYW5nZWQpCiAgICAgUV9QUk9QRVJUWShib29sIHVzZVRyYWRpdGlvbmFs
RGVza3RvcEJlaGF2aW91ciBSRUFEIHVzZVRyYWRpdGlvbmFsRGVza3RvcEJlaGF2aW91ciBXUklU
RSBzZXRVc2VUcmFkaXRpb25hbERlc2t0b3BCZWhhdmlvdXIpCisgICAgUV9QUk9QRVJUWShRV2Vi
Vmlld3BvcnRJbmZvKiB2aWV3cG9ydEluZm8gUkVBRCB2aWV3cG9ydEluZm8gQ09OU1RBTlQgRklO
QUwpCiAKIHB1YmxpYzoKICAgICBRUXVpY2tXZWJWaWV3RXhwZXJpbWVudGFsKFFRdWlja1dlYlZp
ZXcqIHdlYlZpZXcpOwpAQCAtMTgzLDYgKzE4NSw3IEBAIHB1YmxpYzoKICAgICB2b2lkIHNldENv
bmZpcm1EaWFsb2coUURlY2xhcmF0aXZlQ29tcG9uZW50Kik7CiAgICAgUURlY2xhcmF0aXZlQ29t
cG9uZW50KiBwcm9tcHREaWFsb2coKSBjb25zdDsKICAgICB2b2lkIHNldFByb21wdERpYWxvZyhR
RGVjbGFyYXRpdmVDb21wb25lbnQqKTsKKyAgICBRV2ViVmlld3BvcnRJbmZvKiB2aWV3cG9ydElu
Zm8oKTsKIAogICAgIGJvb2wgdXNlVHJhZGl0aW9uYWxEZXNrdG9wQmVoYXZpb3VyKCkgY29uc3Q7
CiAKQEAgLTE5OSw2ICsyMDIsNyBAQCBRX1NJR05BTFM6CiBwcml2YXRlOgogICAgIFFRdWlja1dl
YlZpZXcqIHFfcHRyOwogICAgIFFRdWlja1dlYlZpZXdQcml2YXRlKiBkX3B0cjsKKyAgICBRV2Vi
Vmlld3BvcnRJbmZvKiBtX3ZpZXdwb3J0SW5mbzsKIAogICAgIGZyaWVuZCBjbGFzcyBRdFdlYlBh
Z2VQcm94eTsKICAgICBmcmllbmQgY2xhc3MgUXRXZWJQYWdlVUlDbGllbnQ7CmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJL3F0L3FxdWlja3dlYnZpZXdfcF9wLmggYi9T
b3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJL3F0L3FxdWlja3dlYnZpZXdfcF9wLmgKaW5kZXgg
NjM0ZTgwMi4uOWRkODYxYyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL0FQ
SS9xdC9xcXVpY2t3ZWJ2aWV3X3BfcC5oCisrKyBiL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9B
UEkvcXQvcXF1aWNrd2Vidmlld19wX3AuaApAQCAtOTIsMTkgKzkyLDcgQEAgcHJpdmF0ZToKICAg
ICAgICAgICAgIDogcChwYXJlbnQpCiAgICAgICAgIHsgfQogCi0gICAgICAgIHZvaWQgYXBwbHko
KQotICAgICAgICB7Ci0gICAgICAgICAgICBwLT5pbnRlcmFjdGlvbkVuZ2luZS0+cmVzZXQoKTsK
LSAgICAgICAgICAgIHAtPmludGVyYWN0aW9uRW5naW5lLT5hcHBseUNvbnN0cmFpbnRzKHAtPmNv
bXB1dGVWaWV3cG9ydENvbnN0cmFpbnRzKCkpOwotCi0gICAgICAgICAgICBpZiAoY29udGVudHNT
aXplLmlzVmFsaWQoKSkgewotICAgICAgICAgICAgICAgIHAtPnBhZ2VWaWV3LT5zZXRXaWR0aChj
b250ZW50c1NpemUud2lkdGgoKSk7Ci0gICAgICAgICAgICAgICAgcC0+cGFnZVZpZXctPnNldEhl
aWdodChjb250ZW50c1NpemUuaGVpZ2h0KCkpOwotICAgICAgICAgICAgfQotCi0gICAgICAgICAg
ICBjb250ZW50c1NpemUgPSBRU2l6ZSgpOwotICAgICAgICB9Ci0KKyAgICAgICAgdm9pZCBhcHBs
eSgpOwogICAgICAgICBRUXVpY2tXZWJWaWV3UHJpdmF0ZSogcDsKICAgICAgICAgUVNpemUgY29u
dGVudHNTaXplOwogICAgIH07CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3Mv
QVBJL3F0L3F3ZWJ2aWV3cG9ydGluZm8uY3BwIGIvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL0FQ
SS9xdC9xd2Vidmlld3BvcnRpbmZvLmNwcApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAw
MDAwLi42NWM2YmFiCi0tLSAvZGV2L251bGwKKysrIGIvU291cmNlL1dlYktpdDIvVUlQcm9jZXNz
L0FQSS9xdC9xd2Vidmlld3BvcnRpbmZvLmNwcApAQCAtMCwwICsxLDEyOSBAQAorLyoKKyAqIENv
cHlyaWdodCAoQykgMjAxMSBOb2tpYSBDb3Jwb3JhdGlvbiBhbmQvb3IgaXRzIHN1YnNpZGlhcnko
LWllcykKKyAqCisgKiBUaGlzIGxpYnJhcnkgaXMgZnJlZSBzb2Z0d2FyZTsgeW91IGNhbiByZWRp
c3RyaWJ1dGUgaXQgYW5kL29yCisgKiBtb2RpZnkgaXQgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBH
TlUgTGlicmFyeSBHZW5lcmFsIFB1YmxpYworICogTGljZW5zZSBhcyBwdWJsaXNoZWQgYnkgdGhl
IEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbjsgZWl0aGVyCisgKiB2ZXJzaW9uIDIgb2YgdGhlIExp
Y2Vuc2UsIG9yIChhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uCisgKgorICogVGhp
cyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2Vm
dWwsCisgKiBidXQgV0lUSE9VVCBBTlkgV0FSUkFOVFk7IHdpdGhvdXQgZXZlbiB0aGUgaW1wbGll
ZCB3YXJyYW50eSBvZgorICogTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MgRk9SIEEgUEFSVElD
VUxBUiBQVVJQT1NFLiAgU2VlIHRoZSBHTlUKKyAqIExpYnJhcnkgR2VuZXJhbCBQdWJsaWMgTGlj
ZW5zZSBmb3IgbW9yZSBkZXRhaWxzLgorICoKKyAqIFlvdSBzaG91bGQgaGF2ZSByZWNlaXZlZCBh
IGNvcHkgb2YgdGhlIEdOVSBMaWJyYXJ5IEdlbmVyYWwgUHVibGljIExpY2Vuc2UKKyAqIGFsb25n
IHdpdGggdGhpcyBwcm9ncmFtOyBzZWUgdGhlIGZpbGUgQ09QWUlORy5MSUIuICBJZiBub3QsIHdy
aXRlIHRvCisgKiB0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uLCBJbmMuLCA1MSBGcmFua2xp
biBTdHJlZXQsIEZpZnRoIEZsb29yLAorICogQm9zdG9uLCBNQSAwMjExMC0xMzAxLCBVU0EuCisg
KgorICovCisKKyNpbmNsdWRlICJjb25maWcuaCIKKyNpbmNsdWRlICJxd2Vidmlld3BvcnRpbmZv
X3AuaCIKKworI2luY2x1ZGUgPFdlYkNvcmUvVmlld3BvcnRBcmd1bWVudHMuaD4KKworUVdlYlZp
ZXdwb3J0SW5mbzo6UVdlYlZpZXdwb3J0SW5mbyhRT2JqZWN0KiBwYXJlbnQpCisgICAgOiBRT2Jq
ZWN0KHBhcmVudCkKK3sKKworfQorCitRV2ViVmlld3BvcnRJbmZvOjp+UVdlYlZpZXdwb3J0SW5m
bygpCit7CisKK30KKworaW50IFFXZWJWaWV3cG9ydEluZm86OmNvbnRlbnRzSGVpZ2h0KCkgY29u
c3QKK3sKKyAgICByZXR1cm4gbV9jb250ZW50c1NpemUuaGVpZ2h0KCk7Cit9CisKK2ludCBRV2Vi
Vmlld3BvcnRJbmZvOjpjb250ZW50c1dpZHRoKCkgY29uc3QKK3sKKyAgICByZXR1cm4gbV9jb250
ZW50c1NpemUud2lkdGgoKTsKK30KKworcXJlYWwgUVdlYlZpZXdwb3J0SW5mbzo6Y3VycmVudFNj
YWxlKCkgY29uc3QKK3sKKyAgICByZXR1cm4gbV9jdXJyZW50U2NhbGU7Cit9CisKK3FyZWFsIFFX
ZWJWaWV3cG9ydEluZm86OmRldmljZVBpeGVsUmF0aW8oKSBjb25zdAoreworICAgIHJldHVybiBt
X2RldmljZVBpeGVsUmF0aW87Cit9CisKK3FyZWFsIFFXZWJWaWV3cG9ydEluZm86OmluaXRpYWxT
Y2FsZSgpIGNvbnN0Cit7CisgICAgcmV0dXJuIG1faW5pdGlhbFNjYWxlOworfQorCitxcmVhbCBR
V2ViVmlld3BvcnRJbmZvOjptaW5pbXVtU2NhbGUoKSBjb25zdAoreworICAgIHJldHVybiBtX21p
bmltdW1TY2FsZTsKK30KKworcXJlYWwgUVdlYlZpZXdwb3J0SW5mbzo6bWF4aW11bVNjYWxlKCkg
Y29uc3QKK3sKKyAgICByZXR1cm4gbV9tYXhpbXVtU2NhbGU7Cit9CisKK2Jvb2wgUVdlYlZpZXdw
b3J0SW5mbzo6aXNTY2FsYWJsZSgpIGNvbnN0Cit7CisgICAgcmV0dXJuIG1faXNTY2FsYWJsZTsK
K30KKworaW50IFFXZWJWaWV3cG9ydEluZm86OmxheW91dFdpZHRoKCkgY29uc3QKK3sKKyAgICBy
ZXR1cm4gbV9sYXlvdXRTaXplLndpZHRoKCk7Cit9CisKK2ludCBRV2ViVmlld3BvcnRJbmZvOjps
YXlvdXRIZWlnaHQoKSBjb25zdAoreworICAgIHJldHVybiBtX2xheW91dFNpemUuaGVpZ2h0KCk7
Cit9CisKK3ZvaWQgUVdlYlZpZXdwb3J0SW5mbzo6c2V0Q29udGVudHNTaXplKGNvbnN0IFFTaXpl
JiBjb250ZW50c1NpemUpCit7CisgICAgaWYgKG1fY29udGVudHNTaXplICE9IGNvbnRlbnRzU2l6
ZSkgeworICAgICAgICBtX2NvbnRlbnRzU2l6ZSA9IGNvbnRlbnRzU2l6ZTsKKyAgICAgICAgZW1p
dCBjb250ZW50c1NpemVVcGRhdGVkKCk7CisgICAgfQorfQorCit2b2lkIFFXZWJWaWV3cG9ydElu
Zm86OnNldEN1cnJlbnRTY2FsZShxcmVhbCBjdXJyZW50U2NhbGUpCit7CisgICAgaWYgKG1fY3Vy
cmVudFNjYWxlICE9IGN1cnJlbnRTY2FsZSkgeworICAgICAgICBtX2N1cnJlbnRTY2FsZSA9IGN1
cnJlbnRTY2FsZTsKKyAgICAgICAgZW1pdCBjdXJyZW50U2NhbGVVcGRhdGVkKCk7CisgICAgfQor
fQorCit2b2lkIFFXZWJWaWV3cG9ydEluZm86OnNldFZpZXdwb3J0QXR0cmlidXRlcyhjb25zdCBX
ZWJDb3JlOjpWaWV3cG9ydEF0dHJpYnV0ZXMmIGF0dHIpCit7CisgICAgaWYgKG1fZGV2aWNlUGl4
ZWxSYXRpbyAhPSBhdHRyLmRldmljZVBpeGVsUmF0aW8pIHsKKyAgICAgICAgbV9kZXZpY2VQaXhl
bFJhdGlvID0gYXR0ci5kZXZpY2VQaXhlbFJhdGlvOworICAgICAgICBlbWl0IGRldmljZVBpeGVs
UmF0aW9VcGRhdGVkKCk7CisgICAgfQorICAgIGlmIChtX2luaXRpYWxTY2FsZSAhPSBhdHRyLmlu
aXRpYWxTY2FsZSkgeworICAgICAgICBtX2luaXRpYWxTY2FsZSA9IGF0dHIuaW5pdGlhbFNjYWxl
OworICAgICAgICBlbWl0IGluaXRpYWxTY2FsZVVwZGF0ZWQoKTsKKyAgICB9CisgICAgaWYgKG1f
bWluaW11bVNjYWxlICE9IGF0dHIubWluaW11bVNjYWxlKSB7CisgICAgICAgIG1fbWluaW11bVNj
YWxlID0gYXR0ci5taW5pbXVtU2NhbGU7CisgICAgICAgIGVtaXQgbWluaW11bVNjYWxlVXBkYXRl
ZCgpOworICAgIH0KKyAgICBpZiAobV9tYXhpbXVtU2NhbGUgIT0gYXR0ci5tYXhpbXVtU2NhbGUp
IHsKKyAgICAgICAgbV9tYXhpbXVtU2NhbGUgPSBhdHRyLm1heGltdW1TY2FsZTsKKyAgICAgICAg
ZW1pdCBtYXhpbXVtU2NhbGVVcGRhdGVkKCk7CisgICAgfQorICAgIGlmIChtX2lzU2NhbGFibGUg
IT0gISFhdHRyLnVzZXJTY2FsYWJsZSkgeworICAgICAgICBtX2lzU2NhbGFibGUgPSAhIWF0dHIu
dXNlclNjYWxhYmxlOworICAgICAgICBlbWl0IGlzU2NhbGFibGVVcGRhdGVkKCk7CisgICAgfQor
ICAgIGlmIChtX2xheW91dFNpemUgIT0gUVNpemUoYXR0ci5sYXlvdXRTaXplKSkgeworICAgICAg
ICBtX2xheW91dFNpemUgPSBhdHRyLmxheW91dFNpemU7CisgICAgICAgIGVtaXQgbGF5b3V0U2l6
ZVVwZGF0ZWQoKTsKKyAgICB9Cit9CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nl
c3MvQVBJL3F0L3F3ZWJ2aWV3cG9ydGluZm9fcC5oIGIvU291cmNlL1dlYktpdDIvVUlQcm9jZXNz
L0FQSS9xdC9xd2Vidmlld3BvcnRpbmZvX3AuaApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAw
MDAwMDAwLi5iNmI5OGU0Ci0tLSAvZGV2L251bGwKKysrIGIvU291cmNlL1dlYktpdDIvVUlQcm9j
ZXNzL0FQSS9xdC9xd2Vidmlld3BvcnRpbmZvX3AuaApAQCAtMCwwICsxLDg1IEBACisvKgorICog
Q29weXJpZ2h0IChDKSAyMDExIE5va2lhIENvcnBvcmF0aW9uIGFuZC9vciBpdHMgc3Vic2lkaWFy
eSgtaWVzKQorICoKKyAqIFRoaXMgbGlicmFyeSBpcyBmcmVlIHNvZnR3YXJlOyB5b3UgY2FuIHJl
ZGlzdHJpYnV0ZSBpdCBhbmQvb3IKKyAqIG1vZGlmeSBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhl
IEdOVSBMaWJyYXJ5IEdlbmVyYWwgUHVibGljCisgKiBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieSB0
aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uOyBlaXRoZXIKKyAqIHZlcnNpb24gMiBvZiB0aGUg
TGljZW5zZSwgb3IgKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KKyAqCisgKiBU
aGlzIHByb2dyYW0gaXMgZGlzdHJpYnV0ZWQgaW4gdGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJlIHVz
ZWZ1bCwKKyAqIGJ1dCBXSVRIT1VUIEFOWSBXQVJSQU5UWTsgd2l0aG91dCBldmVuIHRoZSBpbXBs
aWVkIHdhcnJhbnR5IG9mCisgKiBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJU
SUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlIEdOVQorICogTGlicmFyeSBHZW5lcmFsIFB1YmxpYyBM
aWNlbnNlIGZvciBtb3JlIGRldGFpbHMuCisgKgorICogWW91IHNob3VsZCBoYXZlIHJlY2VpdmVk
IGEgY29weSBvZiB0aGUgR05VIExpYnJhcnkgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQorICogYWxv
bmcgd2l0aCB0aGlzIHByb2dyYW07IHNlZSB0aGUgZmlsZSBDT1BZSU5HLkxJQi4gIElmIG5vdCwg
d3JpdGUgdG8KKyAqIHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb24sIEluYy4sIDUxIEZyYW5r
bGluIFN0cmVldCwgRmlmdGggRmxvb3IsCisgKiBCb3N0b24sIE1BIDAyMTEwLTEzMDEsIFVTQS4K
KyAqCisgKi8KKworI2lmbmRlZiBxd2Vidmlld3BvcnRpbmZwX3BfaAorI2RlZmluZSBxd2Vidmll
d3BvcnRpbmZvX3BfaAorCisjaW5jbHVkZSAicXdlYmtpdGdsb2JhbC5oIgorI2luY2x1ZGUgPFF0
Q29yZS9RT2JqZWN0PgorI2luY2x1ZGUgPFF0Q29yZS9RU2l6ZT4KKyNpbmNsdWRlIDxRdERlY2xh
cmF0aXZlL1F0RGVjbGFyYXRpdmU+CisKK25hbWVzcGFjZSBXZWJDb3JlIHsKK2NsYXNzIFZpZXdw
b3J0QXR0cmlidXRlczsKK30KKworY2xhc3MgUVdFQktJVF9FWFBPUlQgUVdlYlZpZXdwb3J0SW5m
byA6IHB1YmxpYyBRT2JqZWN0IHsKKyAgICBRX09CSkVDVAorICAgIFFfUFJPUEVSVFkoaW50IGNv
bnRlbnRzSGVpZ2h0IFJFQUQgY29udGVudHNIZWlnaHQgTk9USUZZIGNvbnRlbnRzU2l6ZVVwZGF0
ZWQpCisgICAgUV9QUk9QRVJUWShpbnQgY29udGVudHNXaWR0aCBSRUFEIGNvbnRlbnRzV2lkdGgg
Tk9USUZZIGNvbnRlbnRzU2l6ZVVwZGF0ZWQpCisgICAgUV9QUk9QRVJUWShxcmVhbCBjdXJyZW50
U2NhbGUgUkVBRCBjdXJyZW50U2NhbGUgTk9USUZZIGN1cnJlbnRTY2FsZVVwZGF0ZWQpCisgICAg
UV9QUk9QRVJUWShxcmVhbCBkZXZpY2VQaXhlbFJhdGlvIFJFQUQgZGV2aWNlUGl4ZWxSYXRpbyBO
T1RJRlkgZGV2aWNlUGl4ZWxSYXRpb1VwZGF0ZWQpCisgICAgUV9QUk9QRVJUWShxcmVhbCBpbml0
aWFsU2NhbGUgUkVBRCBpbml0aWFsU2NhbGUgTk9USUZZIGluaXRpYWxTY2FsZVVwZGF0ZWQpCisg
ICAgUV9QUk9QRVJUWShib29sIGlzU2NhbGFibGUgUkVBRCBpc1NjYWxhYmxlIE5PVElGWSBpc1Nj
YWxhYmxlVXBkYXRlZCkKKyAgICBRX1BST1BFUlRZKHFyZWFsIG1heGltdW1TY2FsZSBSRUFEIG1h
eGltdW1TY2FsZSBOT1RJRlkgbWF4aW11bVNjYWxlVXBkYXRlZCkKKyAgICBRX1BST1BFUlRZKHFy
ZWFsIG1pbmltdW1TY2FsZSBSRUFEIG1pbmltdW1TY2FsZSBOT1RJRlkgbWluaW11bVNjYWxlVXBk
YXRlZCkKKyAgICBRX1BST1BFUlRZKGludCBsYXlvdXRXaWR0aCBSRUFEIGxheW91dFdpZHRoIE5P
VElGWSBsYXlvdXRTaXplVXBkYXRlZCkKKyAgICBRX1BST1BFUlRZKGludCBsYXlvdXRIZWlnaHQg
UkVBRCBsYXlvdXRIZWlnaHQgTk9USUZZIGxheW91dFNpemVVcGRhdGVkKQorCitzaWduYWxzOgor
ICAgIHZvaWQgY29udGVudHNTaXplVXBkYXRlZCgpOworICAgIHZvaWQgY3VycmVudFNjYWxlVXBk
YXRlZCgpOworICAgIHZvaWQgZGV2aWNlUGl4ZWxSYXRpb1VwZGF0ZWQoKTsKKyAgICB2b2lkIGlu
aXRpYWxTY2FsZVVwZGF0ZWQoKTsKKyAgICB2b2lkIGlzU2NhbGFibGVVcGRhdGVkKCk7CisgICAg
dm9pZCBsYXlvdXRTaXplVXBkYXRlZCgpOworICAgIHZvaWQgbWF4aW11bVNjYWxlVXBkYXRlZCgp
OworICAgIHZvaWQgbWluaW11bVNjYWxlVXBkYXRlZCgpOworCitwdWJsaWM6CisgICAgUVdlYlZp
ZXdwb3J0SW5mbyhRT2JqZWN0KiBwYXJlbnQgPSAwKTsKKyAgICB2aXJ0dWFsIH5RV2ViVmlld3Bv
cnRJbmZvKCk7CisKKyAgICBpbnQgY29udGVudHNIZWlnaHQoKSBjb25zdDsKKyAgICBpbnQgY29u
dGVudHNXaWR0aCgpIGNvbnN0OworICAgIHFyZWFsIGN1cnJlbnRTY2FsZSgpIGNvbnN0OworICAg
IHFyZWFsIGRldmljZVBpeGVsUmF0aW8oKSBjb25zdDsKKyAgICBxcmVhbCBpbml0aWFsU2NhbGUo
KSBjb25zdDsKKyAgICBib29sIGlzU2NhbGFibGUoKSBjb25zdDsKKyAgICBpbnQgbGF5b3V0SGVp
Z2h0KCkgY29uc3Q7CisgICAgaW50IGxheW91dFdpZHRoKCkgY29uc3Q7CisgICAgcXJlYWwgbWF4
aW11bVNjYWxlKCkgY29uc3Q7CisgICAgcXJlYWwgbWluaW11bVNjYWxlKCkgY29uc3Q7CisKKyAg
ICB2b2lkIHNldENvbnRlbnRzU2l6ZShjb25zdCBRU2l6ZSYgY29udGVudHNTaXplKTsKKyAgICB2
b2lkIHNldEN1cnJlbnRTY2FsZShxcmVhbCBjdXJyZW50U2NhbGUpOworICAgIHZvaWQgc2V0Vmll
d3BvcnRBdHRyaWJ1dGVzKGNvbnN0IFdlYkNvcmU6OlZpZXdwb3J0QXR0cmlidXRlcyYgYXR0cik7
Citwcml2YXRlOgorICAgIFFTaXplIG1fY29udGVudHNTaXplOworICAgIHFyZWFsIG1fY3VycmVu
dFNjYWxlOworICAgIHFyZWFsIG1fZGV2aWNlUGl4ZWxSYXRpbzsKKyAgICBxcmVhbCBtX2luaXRp
YWxTY2FsZTsKKyAgICBib29sIG1faXNTY2FsYWJsZTsKKyAgICBRU2l6ZSBtX2xheW91dFNpemU7
CisgICAgcXJlYWwgbV9tYXhpbXVtU2NhbGU7CisgICAgcXJlYWwgbV9taW5pbXVtU2NhbGU7Cit9
OworCisjZW5kaWYgLy8gcXdlYnZpZXdwb3J0aW5mb19wCmRpZmYgLS1naXQgYS9Tb3VyY2UvcXR3
ZWJraXQtZXhwb3J0Lm1hcCBiL1NvdXJjZS9xdHdlYmtpdC1leHBvcnQubWFwCmluZGV4IGE1NDZj
YjIuLjhkNjEyZmMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9xdHdlYmtpdC1leHBvcnQubWFwCisrKyBi
L1NvdXJjZS9xdHdlYmtpdC1leHBvcnQubWFwCkBAIC0xMjQsNiArMTI0LDkgQEAgcXdrXzEuMCB7
CiAgICAgICAgICpRV2ViRG93bmxvYWRJdGVtOwogICAgICAgICBub24tdmlydHVhbD90aHVuaz90
bz9RV2ViRG93bmxvYWRJdGVtKjsKICAgICAgICAgUVdlYkRvd25sb2FkSXRlbTo6KjsKKyAgICAg
ICAgKlFXZWJWaWV3cG9ydEluZm87CisgICAgICAgIG5vbi12aXJ0dWFsP3RodW5rP3RvP1FXZWJW
aWV3cG9ydEluZm87CisgICAgICAgIFFXZWJWaWV3cG9ydEluZm86Oio7CiAgICAgICAgICpRUXVp
Y2tXZWJQYWdlOwogICAgICAgICBub24tdmlydHVhbD90aHVuaz90bz9RUXVpY2tXZWJQYWdlKjsK
ICAgICAgICAgUVF1aWNrV2ViUGFnZTo6KjsKZGlmZiAtLWdpdCBhL1Rvb2xzL0NoYW5nZUxvZyBi
L1Rvb2xzL0NoYW5nZUxvZwppbmRleCBjMDExZmJiLi4yYjViNWZlIDEwMDY0NAotLS0gYS9Ub29s
cy9DaGFuZ2VMb2cKKysrIGIvVG9vbHMvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMjEgQEAKKzIwMTEt
MTEtMjQgIE1pY2hhZWwgQnLDvG5pbmcgIDxtaWNoYWVsLmJydW5pbmdAbm9raWEuY29tPgorCisg
ICAgICAgIFtRVF1bV0syXUFkZCAoZXhwZXJpbWVudGFsKSB2aWV3cG9ydCBpbmZvIHZpZXcgdG8g
TWluaWJyb3dzZXIvcXQuCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVn
LmNnaT9pZD03Mjg5MworCisgICAgICAgIFJldmlld2VkIGJ5IFRvciBBcm5lIFZlc3Riw7guCisK
KyAgICAgICAgVGhpcyBwYXRjaCBleHRlbmRzIFFRdWlja1dlYlZpZXdFeHBlcmltZW50YWwgYnkg
YSBwcm9wZXJ0eSBuYW1lZAorICAgICAgICB2aWV3cG9ydEluZm8sIHdoaWNoIGNvbnRhaW5zIHRo
ZSB2aWV3cG9ydCBzY2FsYWJpbGl0eSBhbmQKKyAgICAgICAgbGF5b3V0IGFuZCBjb250ZW50cyBz
aXplIGluZm9ybWF0aW9uLiBUaGlzIHByb3BlcnR5IGlzIGV4cG9zZWQgdG8KKyAgICAgICAgUU1M
IHRocm91Z2ggdGhlIGV4cGVyaW1lbnRhbCBleHRlbnNpb24gZm9yIFFRdWlja1dlYlZpZXcuCisK
KyAgICAgICAgKiBNaW5pQnJvd3Nlci9xdC9NaW5pQnJvd3Nlci5wcm86CisgICAgICAgICogTWlu
aUJyb3dzZXIvcXQvTWluaUJyb3dzZXIucXJjOgorICAgICAgICAqIE1pbmlCcm93c2VyL3F0L2lj
b25zL2luZm8ucG5nOiBBZGRlZC4KKyAgICAgICAgKiBNaW5pQnJvd3Nlci9xdC9xbWwvQnJvd3Nl
cldpbmRvdy5xbWw6CisgICAgICAgICogTWluaUJyb3dzZXIvcXQvcW1sL1ZpZXdwb3J0SW5mb0l0
ZW0ucW1sOiBBZGRlZC4KKwogMjAxMS0xMi0wOSAgQ2FyeSBDbGFyayAgPGNhcnljbGFya0Bnb29n
bGUuY29tPgogCiAgICAgICAgIGxheW91dF90ZXN0IHVwZGF0ZSB0byBhY2NvbW1vZGF0ZSBuZXcg
dXNlX3NraWE9MSBkZWZhdWx0IG9uIENocm9taXVtLU1hYwpkaWZmIC0tZ2l0IGEvVG9vbHMvTWlu
aUJyb3dzZXIvcXQvTWluaUJyb3dzZXIucHJvIGIvVG9vbHMvTWluaUJyb3dzZXIvcXQvTWluaUJy
b3dzZXIucHJvCmluZGV4IDY2NzhjMTEuLjQ0NmUzN2EgMTAwNjQ0Ci0tLSBhL1Rvb2xzL01pbmlC
cm93c2VyL3F0L01pbmlCcm93c2VyLnBybworKysgYi9Ub29scy9NaW5pQnJvd3Nlci9xdC9NaW5p
QnJvd3Nlci5wcm8KQEAgLTMwLDQgKzMwLDUgQEAgbWFjeDogUVQgKz0geG1sCiBSRVNPVVJDRVMg
Kz0gTWluaUJyb3dzZXIucXJjCiAKIE9USEVSX0ZJTEVTICs9IFwKLSAgICBxbWwvQnJvd3Nlcldp
bmRvdy5xbWwKKyAgICBxbWwvQnJvd3NlcldpbmRvdy5xbWwgXAorICAgIHFtbC9WaWV3cG9ydElu
Zm9JdGVtLnFtbApkaWZmIC0tZ2l0IGEvVG9vbHMvTWluaUJyb3dzZXIvcXQvTWluaUJyb3dzZXIu
cXJjIGIvVG9vbHMvTWluaUJyb3dzZXIvcXQvTWluaUJyb3dzZXIucXJjCmluZGV4IDdmMDU1MjYu
LmE0NmY2MjIgMTAwNjQ0Ci0tLSBhL1Rvb2xzL01pbmlCcm93c2VyL3F0L01pbmlCcm93c2VyLnFy
YworKysgYi9Ub29scy9NaW5pQnJvd3Nlci9xdC9NaW5pQnJvd3Nlci5xcmMKQEAgLTEsNSArMSw2
IEBACiA8UkNDPgogICAgIDxxcmVzb3VyY2UgcHJlZml4PSIvIj4KKyAgICAgICAgPGZpbGU+aWNv
bnMvaW5mby5wbmc8L2ZpbGU+CiAgICAgICAgIDxmaWxlPmljb25zL25leHQucG5nPC9maWxlPgog
ICAgICAgICA8ZmlsZT5pY29ucy9wcmV2aW91cy5wbmc8L2ZpbGU+CiAgICAgICAgIDxmaWxlPmlj
b25zL3JlZnJlc2gucG5nPC9maWxlPgpAQCAtNyw2ICs4LDcgQEAKICAgICAgICAgPGZpbGU+aWNv
bnMvdG91Y2hwb2ludC5wbmc8L2ZpbGU+CiAgICAgICAgIDxmaWxlPnFtbC9Ccm93c2VyV2luZG93
LnFtbDwvZmlsZT4KICAgICAgICAgPGZpbGU+cW1sL01vY2tUb3VjaFBvaW50LnFtbDwvZmlsZT4K
KyAgICAgICAgPGZpbGU+cW1sL1ZpZXdwb3J0SW5mb0l0ZW0ucW1sPC9maWxlPgogICAgICAgICA8
ZmlsZT51c2VyYWdlbnRsaXN0LnR4dDwvZmlsZT4KICAgICA8L3FyZXNvdXJjZT4KIDwvUkNDPgpk
aWZmIC0tZ2l0IGEvVG9vbHMvTWluaUJyb3dzZXIvcXQvaWNvbnMvaW5mby5wbmcgYi9Ub29scy9N
aW5pQnJvd3Nlci9xdC9pY29ucy9pbmZvLnBuZwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5kYjQ4M2ZmMTAwZjE0ZTc5
YzFjNjE4NWUxOWIzMWZlMTRmYWVkZTlmCkdJVCBiaW5hcnkgcGF0Y2gKbGl0ZXJhbCAzNDAKemNt
ZUFTQE4/KG9sSHlgdVZCcSFpYTB2cF5WaiNASDF8Kk1jJCp+NGZqS3g5alA3TGVMJC1EJHwqcGpe
NlReUm1ACno7RFd1JkNqJih8M3Becj04NXA+UUw3MChZKSpLMC1BYld8WXVQZ2cpWlpRRkF2RzNs
Q21JOCZZYylCPS1TZSQtKQp6V3Y+XnJxWF9HUl5RS0ReQm8jd25PXjc7bj0keUw4Ul5NTiQzajVC
NjlXMl8pRDwpUSFCKnMrOUUmWWA8c0FjTysKenQoTCF2UTV1IzdKSXxjQUVWZHxVU0ZWIypGS3Qp
VVgzOHQ8RVZnO2Jjc19NclNtflgoIS1yNEx7YzNXSkh8fHgzCnpYWSZWWHdIKmdJYFV+c0owenw0
OE5qe0xCcEV+YXdmOG4wKSFaK1FeeDtAI3FKRD1Iaj5+Nm57cG1OMWd3KEZfJAp6PlAhbyhiYjBT
NWNkUnlCNnVYRkg8Tjh9fSpUYTdCb1UqejV1WGlWWldNSiE+Nn10K0EtMmFeS3dfN0J5e3pYSnwK
ZStlVylyOWB7QWR2fU5sSihzWTZUV0FKcUtiNk13PCY7JFUlVlN1SXAKCmxpdGVyYWwgMApIY21W
P2QwMDAwMQoKZGlmZiAtLWdpdCBhL1Rvb2xzL01pbmlCcm93c2VyL3F0L3FtbC9Ccm93c2VyV2lu
ZG93LnFtbCBiL1Rvb2xzL01pbmlCcm93c2VyL3F0L3FtbC9Ccm93c2VyV2luZG93LnFtbAppbmRl
eCAwNDgwYTI2Li4wMjZlZmZkIDEwMDY0NAotLS0gYS9Ub29scy9NaW5pQnJvd3Nlci9xdC9xbWwv
QnJvd3NlcldpbmRvdy5xbWwKKysrIGIvVG9vbHMvTWluaUJyb3dzZXIvcXQvcW1sL0Jyb3dzZXJX
aW5kb3cucW1sCkBAIC0yOCw2ICsyOCw3IEBACiAKIGltcG9ydCBRdFF1aWNrIDIuMAogaW1wb3J0
IFF0V2ViS2l0IDMuMAoraW1wb3J0IFF0V2ViS2l0LmV4cGVyaW1lbnRhbCAzLjAKIAogUmVjdGFu
Z2xlIHsKICAgICAvLyBEbyBub3QgZGVmaW5lIGFuY2hvcnMgb3IgYW4gaW5pdGlhbCBzaXplIGhl
cmUhIFRoaXMgd291bGQgbWVzcyB1cCB3aXRoIFFTR1ZpZXc6OlNpemVSb290T2JqZWN0VG9WaWV3
LgpAQCAtMTU5LDYgKzE2MCwyNSBAQCBSZWN0YW5nbGUgewogICAgICAgICAgICAgICAgICAgICB9
CiAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgfQorCisgICAgICAgICAgICBSZWN0YW5n
bGUgeworICAgICAgICAgICAgICAgIGlkOiB2aWV3cG9ydEluZm9CdXR0b24KKyAgICAgICAgICAg
ICAgICBoZWlnaHQ6IG5hdmlnYXRpb25CYXIuaGVpZ2h0IC0gMgorICAgICAgICAgICAgICAgIHdp
ZHRoOiBoZWlnaHQKKyAgICAgICAgICAgICAgICBjb2xvcjogIiNlZmVmZWYiCisKKyAgICAgICAg
ICAgICAgICBJbWFnZSB7CisgICAgICAgICAgICAgICAgICAgIGFuY2hvcnMuY2VudGVySW46IHBh
cmVudAorICAgICAgICAgICAgICAgICAgICBzb3VyY2U6ICIuLi9pY29ucy9pbmZvLnBuZyIKKyAg
ICAgICAgICAgICAgICB9CisKKyAgICAgICAgICAgICAgICBNb3VzZUFyZWEgeworICAgICAgICAg
ICAgICAgICAgICBhbmNob3JzLmZpbGw6IHBhcmVudAorICAgICAgICAgICAgICAgICAgICBvbkNs
aWNrZWQ6IHsKKyAgICAgICAgICAgICAgICAgICAgICAgdmlld3BvcnRJbmZvSXRlbS52aXNpYmxl
ID0gIXZpZXdwb3J0SW5mb0l0ZW0udmlzaWJsZQorICAgICAgICAgICAgICAgICAgICB9CisgICAg
ICAgICAgICAgICAgfQorICAgICAgICAgICAgfQogICAgICAgICB9CiAgICAgICAgIFJlY3Rhbmds
ZSB7CiAgICAgICAgICAgICBjb2xvcjogIndoaXRlIgpAQCAtMjMyLDYgKzI1MiwyMiBAQCBSZWN0
YW5nbGUgewogICAgICAgICB9CiAgICAgfQogCisgICAgVmlld3BvcnRJbmZvSXRlbSB7CisgICAg
ICAgIGlkOiB2aWV3cG9ydEluZm9JdGVtCisgICAgICAgIGFuY2hvcnMgeworICAgICAgICAgICAg
dG9wOiBuYXZpZ2F0aW9uQmFyLmJvdHRvbQorICAgICAgICAgICAgbGVmdDogcGFyZW50LmxlZnQK
KyAgICAgICAgICAgIHJpZ2h0OiBwYXJlbnQucmlnaHQKKyAgICAgICAgICAgIGJvdHRvbTogcGFy
ZW50LmJvdHRvbQorICAgICAgICB9CisgICAgICAgIHZpc2libGU6IGZhbHNlCisgICAgICAgIC8v
IFVzaW5nIHRoZSB3ZWJ2aWV3IHByb3BlcnR5IGhlcmUgaW5zdGVhZCBvZiB0aGUgd2ViVmlldyBp
dGVtIGRpcmVjdGx5CisgICAgICAgIC8vIGlzIGEgd29ya2Fyb3VuZCBmb3IgYW4gaXNzdWUgd2l0
aCB0aGUgZXhwZXJpbWVudGFsIGV4dGVuc2lvbiBub3QgYmVpbmcKKyAgICAgICAgLy8gaW5pdGlh
bGl6ZWQuIFRoaXMgc2hvdWxkIGJlIGNoYW5nZWQgdG8gdXNlIHRoZSB3ZWJWaWV3IGl0ZW0gYXMg
c29vbiBhcworICAgICAgICAvLyB0aGUgaXNzdWUgaXMgcmVzb2x2ZWQuCisgICAgICAgIHZpZXdw
b3J0SW5mbyA6IHdlYlZpZXcuZXhwZXJpbWVudGFsLnZpZXdwb3J0SW5mbworICAgIH0KKwogICAg
IEtleXMub25QcmVzc2VkOiB7CiAgICAgICAgIGlmICgoKGV2ZW50Lm1vZGlmaWVycyAmIFF0LkNv
bnRyb2xNb2RpZmllcikgJiYgZXZlbnQua2V5ID09IFF0LktleV9MKSB8fCBldmVudC5rZXkgPT0g
UXQua2V5X0Y2KSB7CiAgICAgICAgICAgICBmb2N1c0FkZHJlc3NCYXIoKQpkaWZmIC0tZ2l0IGEv
VG9vbHMvTWluaUJyb3dzZXIvcXQvcW1sL1ZpZXdwb3J0SW5mb0l0ZW0ucW1sIGIvVG9vbHMvTWlu
aUJyb3dzZXIvcXQvcW1sL1ZpZXdwb3J0SW5mb0l0ZW0ucW1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0
CmluZGV4IDAwMDAwMDAuLjA0NzYxZjMKLS0tIC9kZXYvbnVsbAorKysgYi9Ub29scy9NaW5pQnJv
d3Nlci9xdC9xbWwvVmlld3BvcnRJbmZvSXRlbS5xbWwKQEAgLTAsMCArMSw2MyBAQAoraW1wb3J0
IFF0UXVpY2sgMi4wCitpbXBvcnQgUXRXZWJLaXQgMy4wCisKK1JlY3RhbmdsZSB7CisgICAgcHJv
cGVydHkgdmFyIHZpZXdwb3J0SW5mbworCisgICAgY29sb3I6ICJibGFjayIKKyAgICBvcGFjaXR5
OiAwLjgKKworICAgIFRleHQgeworICAgICAgICBpZDogdmlld3BvcnRJbmZvTGFiZWwKKyAgICAg
ICAgdGV4dDogIlZpZXdwb3J0IEluZm8iCisgICAgICAgIGNvbG9yOiAid2hpdGUiCisgICAgfQor
ICAgIFRleHQgeworICAgICAgICBpZDogY3VycmVudFNjYWxlTGFiZWwKKyAgICAgICAgYW5jaG9y
cy50b3A6IHZpZXdwb3J0SW5mb0xhYmVsLmJvdHRvbQorICAgICAgICB0ZXh0OiAiQ3VycmVudCBz
Y2FsZTogIiArIHZpZXdwb3J0SW5mby5jdXJyZW50U2NhbGUKKyAgICAgICAgY29sb3I6ICJ3aGl0
ZSIKKyAgICB9CisgICAgVGV4dCB7CisgICAgICAgIGlkOiBpbml0aWFsU2NhbGVMYWJlbAorICAg
ICAgICBhbmNob3JzLnRvcDogY3VycmVudFNjYWxlTGFiZWwuYm90dG9tCisgICAgICAgIHRleHQ6
ICJJbml0aWFsIHNjYWxlOiAiICsgdmlld3BvcnRJbmZvLmluaXRpYWxTY2FsZQorICAgICAgICBj
b2xvcjogIndoaXRlIgorICAgIH0KKyAgICBUZXh0IHsKKyAgICAgICAgaWQ6IG1pbmltdW1TY2Fs
ZUxhYmVsCisgICAgICAgIGFuY2hvcnMudG9wOiBpbml0aWFsU2NhbGVMYWJlbC5ib3R0b20KKyAg
ICAgICAgdGV4dDogIk1pbmltdW0gc2NhbGU6ICIgKyB2aWV3cG9ydEluZm8ubWluaW11bVNjYWxl
CisgICAgICAgIGNvbG9yOiAid2hpdGUiCisgICAgfQorICAgIFRleHQgeworICAgICAgICBpZDog
bWF4aW11bVNjYWxlTGFiZWwKKyAgICAgICAgYW5jaG9ycy50b3A6IG1pbmltdW1TY2FsZUxhYmVs
LmJvdHRvbQorICAgICAgICB0ZXh0OiAiTWF4aW11bSBzY2FsZTogIiArIHZpZXdwb3J0SW5mby5t
YXhpbXVtU2NhbGUKKyAgICAgICAgY29sb3I6ICJ3aGl0ZSIKKyAgICB9CisgICAgVGV4dCB7Cisg
ICAgICAgIGlkOiBkZXZpY2VQaXhlbFJhdGlvTGFiZWwKKyAgICAgICAgYW5jaG9ycy50b3A6IG1h
eGltdW1TY2FsZUxhYmVsLmJvdHRvbQorICAgICAgICB0ZXh0OiAiRGV2aWNlIHBpeGVsIHJhdGlv
bjogIiArIHZpZXdwb3J0SW5mby5kZXZpY2VQaXhlbFJhdGlvCisgICAgICAgIGNvbG9yOiAid2hp
dGUiCisgICAgfQorICAgIFRleHQgeworICAgICAgICBpZDogY29udGVudHNTaXplTGFiZWwKKyAg
ICAgICAgYW5jaG9ycy50b3A6IGRldmljZVBpeGVsUmF0aW9MYWJlbC5ib3R0b20KKyAgICAgICAg
dGV4dDogIkNvbnRlbnRzIHNpemU6ICgiICsgdmlld3BvcnRJbmZvLmNvbnRlbnRzV2lkdGggKyAi
eCIgKyB2aWV3cG9ydEluZm8uY29udGVudHNIZWlnaHQgKyAiKSIKKyAgICAgICAgY29sb3I6ICJ3
aGl0ZSIKKyAgICB9CisgICAgVGV4dCB7CisgICAgICAgIGlkOiBsYXlvdXRTaXplTGFiZWwKKyAg
ICAgICAgYW5jaG9ycy50b3A6IGNvbnRlbnRzU2l6ZUxhYmVsLmJvdHRvbQorICAgICAgICB0ZXh0
OiAiVmlld3BvcnQgbGF5b3V0IHNpemU6ICgiICsgdmlld3BvcnRJbmZvLmxheW91dFdpZHRoICsg
IngiICsgdmlld3BvcnRJbmZvLmxheW91dEhlaWdodCArICIpIgorICAgICAgICBjb2xvcjogIndo
aXRlIgorICAgIH0KKyAgICBUZXh0IHsKKyAgICAgICAgaWQ6IHNjYWxhYmxlTGFiZWwKKyAgICAg
ICAgYW5jaG9ycy50b3A6IGxheW91dFNpemVMYWJlbC5ib3R0b20KKyAgICAgICAgdGV4dDogIlZp
ZXcgIiArICh2aWV3cG9ydEluZm8uaXNTY2FsYWJsZSA/ICJpcyAiIDogImlzIG5vdCAiICkgKyAi
c2NhbGFibGUuIgorICAgICAgICBjb2xvcjogIndoaXRlIgorICAgIH0KK30KLS0gCjEuNy40LjEK
Cg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>119018</attachid>
            <date>2011-12-13 07:52:30 -0800</date>
            <delta_ts>2011-12-14 02:14:57 -0800</delta_ts>
            <desc>Updated patch</desc>
            <filename>0001-QT-WK2-Add-experimental-viewport-attributes-view-to-.patch</filename>
            <type>text/plain</type>
            <size>30316</size>
            <attacher name="Michael Brüning">michael.bruning</attacher>
            
              <data encoding="base64">RnJvbSBkOWJiMDViOTZhMjViZjYzZjhmY2NkNGQ4MTI0NmIyZmJiYmFiNjlmIE1vbiBTZXAgMTcg
MDA6MDA6MDAgMjAwMQpGcm9tOiBNaWNoYWVsIEJydW5pbmcgPG1pY2hhZWwuYnJ1bmluZ0Bub2tp
YS5jb20+CkRhdGU6IFRodSwgMjQgTm92IDIwMTEgMTc6MTg6MDAgKzAxMDAKU3ViamVjdDogW1BB
VENIXSBbUVRdW1dLMl1BZGQgKGV4cGVyaW1lbnRhbCkgdmlld3BvcnQgYXR0cmlidXRlcyB2aWV3
IHRvIE1pbmlicm93c2VyL3F0Ck1JTUUtVmVyc2lvbjogMS4wCkNvbnRlbnQtVHlwZTogdGV4dC9w
bGFpbjsgY2hhcnNldD1VVEYtOApDb250ZW50LVRyYW5zZmVyLUVuY29kaW5nOiA4Yml0CgpodHRw
czovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9NzI4OTMKClJldmlld2VkIGJ5IFRv
ciBBcm5lIFZlc3Riw7gKClRoaXMgZXh0ZW5kcyBRUXVpY2tXZWJWaWV3RXhwZXJpbWVudGFsIGJ5
IGEgcHJvcGVydHkgbmFtZWQKdmlld3BvcnRBdHRyaWJ1dGVzLCB3aGljaCBjb250YWlucyB0aGUg
dmlld3BvcnQgc2NhbGFiaWxpdHkgYW5kCmxheW91dCBzaXplIGluZm9ybWF0aW9uLiBUaGlzIHBy
b3BlcnR5IGlzIGV4cG9zZWQgdG8gUU1MIHRocm91Z2gKdGhlIGV4cGVyaW1lbnRhbCBleHRlbnNp
b24gZm9yIFFRdWlja1dlYlZpZXcuCgpTb3VyY2U6CgoqIFNvdXJjZS9xdHdlYmtpdC1leHBvcnQu
bWFwOgoKU291cmNlL1dlYktpdC9xdDoKCiogZGVjbGFyYXRpcXZlL2V4cGVyaW1lbnRhbC9wbHVn
aW4uY3BwOgoKU291cmNlL1dlYktpdDI6CgoqIFRhcmdldC5wcmk6CiogVUlQcm9jZXNzL0FQSS9x
dC9xcXVpY2t3ZWJ2aWV3LmNwcDoKKFFRdWlja1dlYlZpZXdQcml2YXRlOjpkaWRDaGFuZ2VDb250
ZW50c1NpemUpOgooUVF1aWNrV2ViVmlld1ByaXZhdGU6OmNvbXB1dGVWaWV3cG9ydENvbnN0cmFp
bnRzKToKKFFRdWlja1dlYlZpZXdQcml2YXRlOjpQb3N0VHJhbnNpdGlvblN0YXRlOjphcHBseSk6
IEFkZGVkIGFwcGx5aW5nCmNvbnRlbnRzU2l6ZSB0byB2aWV3cG9ydEluZm8uCihRUXVpY2tXZWJW
aWV3RXhwZXJpbWVudGFsOjpRUXVpY2tXZWJWaWV3RXhwZXJpbWVudGFsKToKKFFRdWlja1dlYlZp
ZXdFeHBlcmltZW50YWw6OnZpZXdwb3J0SW5mbyk6CiogVUlQcm9jZXNzL0FQSS9xdC9xcXVpY2t3
ZWJ2aWV3X3AuaDoKKiBVSVByb2Nlc3MvQVBJL3F0L3FxdWlja3dlYnZpZXdfcF9wLmg6IE1vdmVk
IFBvc3RUcmFuc2l0aW9uU3RhdGU6OmFwcGx5CnRvIHFxdWlja3dlYnZpZXcuY3BwLiBBZGRlZCBm
cmllbmQgUVdlYlZpZXdwb3J0SW5mby4KKiBVSVByb2Nlc3MvQVBJL3F0L3F3ZWJ2aWV3cG9ydGlu
Zm8uY3BwOiBBZGRlZC4KKFFXZWJWaWV3cG9ydEluZm86OlFXZWJWaWV3cG9ydEluZm8pOgooUVdl
YlZpZXdwb3J0SW5mbzo6flFXZWJWaWV3cG9ydEluZm8pOgooUVdlYlZpZXdwb3J0SW5mbzo6Y29u
dGVudHNTaXplKToKKFFXZWJWaWV3cG9ydEluZm86OmN1cnJlbnRTY2FsZSk6CihRV2ViVmlld3Bv
cnRJbmZvOjpkZXZpY2VQaXhlbFJhdGlvKToKKFFXZWJWaWV3cG9ydEluZm86OmluaXRpYWxTY2Fs
ZSk6CihRV2ViVmlld3BvcnRJbmZvOjptaW5pbXVtU2NhbGUpOgooUVdlYlZpZXdwb3J0SW5mbzo6
bWF4aW11bVNjYWxlKToKKFFXZWJWaWV3cG9ydEluZm86OmlzU2NhbGFibGUpOgooUVdlYlZpZXdw
b3J0SW5mbzo6bGF5b3V0U2l6ZSk6CihRV2ViVmlld3BvcnRJbmZvOjpkaWRVcGRhdGVDb250ZW50
c1NpemUpOgooUVdlYlZpZXdwb3J0SW5mbzo6ZGlkVXBkYXRlQ3VycmVudFNjYWxlKToKKFFXZWJW
aWV3cG9ydEluZm86OmRpZFVwZGF0ZVZpZXdwb3J0Q29uc3RyYWludHMpOgoqIFVJUHJvY2Vzcy9B
UEkvcXQvcXdlYnZpZXdwb3J0aW5mb19wLmg6IEFkZGVkLgoqIFVJUHJvY2Vzcy9xdC9RdFZpZXdw
b3J0SW50ZXJhY3Rpb25FbmdpbmUuaDoKKFdlYktpdDo6UXRWaWV3cG9ydEludGVyYWN0aW9uRW5n
aW5lOjpDb25zdHJhaW50czo6Q29uc3RyYWludHMpOiBBZGRlZCBsYXlvdXRTaXplLgooV2ViS2l0
OjpRdFZpZXdwb3J0SW50ZXJhY3Rpb25FbmdpbmU6OmNvbnN0cmFpbnRzKTogQWRkZWQgcHJvcGVy
dHkgdG8gYWNjZXNzIG1fY29udHJhaW50cy4KClRvb2xzOgoKKiBNaW5pQnJvd3Nlci9xdC9NaW5p
QnJvd3Nlci5wcm86CiogTWluaUJyb3dzZXIvcXQvTWluaUJyb3dzZXIucXJjOgoqIE1pbmlCcm93
c2VyL3F0L2ljb25zL2luZm8ucG5nOiBBZGRlZC4KKiBNaW5pQnJvd3Nlci9xdC9xbWwvQnJvd3Nl
cldpbmRvdy5xbWw6CiogTWluaUJyb3dzZXIvcXQvcW1sL1ZpZXdwb3J0SW5mb0l0ZW0ucW1sOiBB
ZGRlZC4KLS0tCiBDaGFuZ2VMb2cgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICB8ICAgMTQgKysrCiBTb3VyY2UvV2ViS2l0L3F0L0NoYW5nZUxvZyAgICAgICAgICAgICAg
ICAgICAgICAgICB8ICAgMTQgKysrCiAuLi4vV2ViS2l0L3F0L2RlY2xhcmF0aXZlL2V4cGVyaW1l
bnRhbC9wbHVnaW4uY3BwICB8ICAgIDMgKwogU291cmNlL1dlYktpdDIvQ2hhbmdlTG9nICAgICAg
ICAgICAgICAgICAgICAgICAgICAgfCAgIDQyICsrKysrKysrCiBTb3VyY2UvV2ViS2l0Mi9UYXJn
ZXQucHJpICAgICAgICAgICAgICAgICAgICAgICAgICB8ICAgIDIgKwogU291cmNlL1dlYktpdDIv
VUlQcm9jZXNzL0FQSS9xdC9xcXVpY2t3ZWJ2aWV3LmNwcCAgfCAgIDMxICsrKysrKwogU291cmNl
L1dlYktpdDIvVUlQcm9jZXNzL0FQSS9xdC9xcXVpY2t3ZWJ2aWV3X3AuaCAgfCAgICA1ICsKIC4u
Li9XZWJLaXQyL1VJUHJvY2Vzcy9BUEkvcXQvcXF1aWNrd2Vidmlld19wX3AuaCAgIHwgICAxNyAr
LS0tCiAuLi4vV2ViS2l0Mi9VSVByb2Nlc3MvQVBJL3F0L3F3ZWJ2aWV3cG9ydGluZm8uY3BwICB8
ICAxMTAgKysrKysrKysrKysrKysrKysrKysKIC4uLi9XZWJLaXQyL1VJUHJvY2Vzcy9BUEkvcXQv
cXdlYnZpZXdwb3J0aW5mb19wLmggIHwgICA3NSArKysrKysrKysrKysrCiAuLi4vVUlQcm9jZXNz
L3F0L1F0Vmlld3BvcnRJbnRlcmFjdGlvbkVuZ2luZS5oICAgICB8ICAgIDMgKwogU291cmNlL3F0
d2Via2l0LWV4cG9ydC5tYXAgICAgICAgICAgICAgICAgICAgICAgICAgfCAgICAzICsKIFRvb2xz
L0NoYW5nZUxvZyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgICAxOCArKysK
IFRvb2xzL01pbmlCcm93c2VyL3F0L01pbmlCcm93c2VyLnBybyAgICAgICAgICAgICAgIHwgICAg
MyArLQogVG9vbHMvTWluaUJyb3dzZXIvcXQvTWluaUJyb3dzZXIucXJjICAgICAgICAgICAgICAg
fCAgICAyICsKIFRvb2xzL01pbmlCcm93c2VyL3F0L2ljb25zL2luZm8ucG5nICAgICAgICAgICAg
ICAgIHwgIEJpbiAwIC0+IDM0MCBieXRlcwogVG9vbHMvTWluaUJyb3dzZXIvcXQvcW1sL0Jyb3dz
ZXJXaW5kb3cucW1sICAgICAgICAgfCAgIDMxICsrKysrKwogVG9vbHMvTWluaUJyb3dzZXIvcXQv
cW1sL1ZpZXdwb3J0SW5mb0l0ZW0ucW1sICAgICAgfCAgIDYzICsrKysrKysrKysrCiAxOCBmaWxl
cyBjaGFuZ2VkLCA0MjEgaW5zZXJ0aW9ucygrKSwgMTUgZGVsZXRpb25zKC0pCiBjcmVhdGUgbW9k
ZSAxMDA2NDQgU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL0FQSS9xdC9xd2Vidmlld3BvcnRpbmZv
LmNwcAogY3JlYXRlIG1vZGUgMTAwNjQ0IFNvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9BUEkvcXQv
cXdlYnZpZXdwb3J0aW5mb19wLmgKIGNyZWF0ZSBtb2RlIDEwMDY0NCBUb29scy9NaW5pQnJvd3Nl
ci9xdC9pY29ucy9pbmZvLnBuZwogY3JlYXRlIG1vZGUgMTAwNjQ0IFRvb2xzL01pbmlCcm93c2Vy
L3F0L3FtbC9WaWV3cG9ydEluZm9JdGVtLnFtbAoKZGlmZiAtLWdpdCBhL0NoYW5nZUxvZyBiL0No
YW5nZUxvZwppbmRleCAyMzVmYzZjLi41MDkzNTViIDEwMDY0NAotLS0gYS9DaGFuZ2VMb2cKKysr
IGIvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTcgQEAKKzIwMTEtMTEtMjQgIE1pY2hhZWwgQnLDvG5p
bmcgIDxtaWNoYWVsLmJydW5pbmdAbm9raWEuY29tPgorCisgICAgICAgIFtRVF1bV0syXUFkZCAo
ZXhwZXJpbWVudGFsKSB2aWV3cG9ydCBpbmZvIHZpZXcgdG8gTWluaWJyb3dzZXIvcXQuCisgICAg
ICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD03Mjg5MworCisgICAg
ICAgIFJldmlld2VkIGJ5IFRvciBBcm5lIFZlc3Riw7guCisKKyAgICAgICAgVGhpcyBwYXRjaCBl
eHRlbmRzIFFRdWlja1dlYlZpZXdFeHBlcmltZW50YWwgYnkgYSBwcm9wZXJ0eSBuYW1lZAorICAg
ICAgICB2aWV3cG9ydEluZm8sIHdoaWNoIGNvbnRhaW5zIHRoZSB2aWV3cG9ydCBzY2FsYWJpbGl0
eSBhbmQKKyAgICAgICAgbGF5b3V0IGFuZCBjb250ZW50cyBzaXplIGluZm9ybWF0aW9uLiBUaGlz
IHByb3BlcnR5IGlzIGV4cG9zZWQgdG8KKyAgICAgICAgUU1MIHRocm91Z2ggdGhlIGV4cGVyaW1l
bnRhbCBleHRlbnNpb24gZm9yIFFRdWlja1dlYlZpZXcuCisKKyAgICAgICAgKiBTb3VyY2UvcXR3
ZWJraXQtZXhwb3J0Lm1hcDoKKwogMjAxMS0xMi0xMiAgQW5keSBXaW5nbyAgPHdpbmdvQGlnYWxp
YS5jb20+CiAKICAgICAgICAgU2ltcGxpZnkgYXV0b3Rvb2xzIGNvbmZpZ3VyZS5hYwpkaWZmIC0t
Z2l0IGEvU291cmNlL1dlYktpdC9xdC9DaGFuZ2VMb2cgYi9Tb3VyY2UvV2ViS2l0L3F0L0NoYW5n
ZUxvZwppbmRleCA2M2FkNWRlLi5lM2U4NzhlIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L3F0
L0NoYW5nZUxvZworKysgYi9Tb3VyY2UvV2ViS2l0L3F0L0NoYW5nZUxvZwpAQCAtMSwzICsxLDE3
IEBACisyMDExLTExLTI0ICBNaWNoYWVsIEJyw7xuaW5nICA8bWljaGFlbC5icnVuaW5nQG5va2lh
LmNvbT4KKworICAgICAgICBbUVRdW1dLMl1BZGQgKGV4cGVyaW1lbnRhbCkgdmlld3BvcnQgaW5m
byB2aWV3IHRvIE1pbmlicm93c2VyL3F0LgorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9y
Zy9zaG93X2J1Zy5jZ2k/aWQ9NzI4OTMKKworICAgICAgICBSZXZpZXdlZCBieSBUb3IgQXJuZSBW
ZXN0YsO4LgorCisgICAgICAgIFRoaXMgcGF0Y2ggZXh0ZW5kcyBRUXVpY2tXZWJWaWV3RXhwZXJp
bWVudGFsIGJ5IGEgcHJvcGVydHkgbmFtZWQKKyAgICAgICAgdmlld3BvcnRJbmZvLCB3aGljaCBj
b250YWlucyB0aGUgdmlld3BvcnQgc2NhbGFiaWxpdHkgYW5kCisgICAgICAgIGxheW91dCBhbmQg
Y29udGVudHMgc2l6ZSBpbmZvcm1hdGlvbi4gVGhpcyBwcm9wZXJ0eSBpcyBleHBvc2VkIHRvCisg
ICAgICAgIFFNTCB0aHJvdWdoIHRoZSBleHBlcmltZW50YWwgZXh0ZW5zaW9uIGZvciBRUXVpY2tX
ZWJWaWV3LgorCisgICAgICAgICogZGVjbGFyYXRpdmUvZXhwZXJpbWVudGFsL3BsdWdpbi5jcHA6
CisKIDIwMTEtMTItMTIgIE7DoW5kb3IgSHVzemthICA8aHVzemthLm5hbmRvckBzdHVkLnUtc3pl
Z2VkLmh1PgogCiAgICAgICAgIFtRdF0gTWlzc2luZyBsYXlvdXRUZXN0Q29udHJvbGxlci5kdW1w
V2lsbENhY2hlUmVzcG9uc2UKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvcXQvZGVjbGFyYXRp
dmUvZXhwZXJpbWVudGFsL3BsdWdpbi5jcHAgYi9Tb3VyY2UvV2ViS2l0L3F0L2RlY2xhcmF0aXZl
L2V4cGVyaW1lbnRhbC9wbHVnaW4uY3BwCmluZGV4IDNiMzlhMmUuLmQ4ODFlYjggMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9XZWJLaXQvcXQvZGVjbGFyYXRpdmUvZXhwZXJpbWVudGFsL3BsdWdpbi5jcHAK
KysrIGIvU291cmNlL1dlYktpdC9xdC9kZWNsYXJhdGl2ZS9leHBlcmltZW50YWwvcGx1Z2luLmNw
cApAQCAtMjAsNiArMjAsNyBAQAogI2luY2x1ZGUgInFxdWlja3dlYnBhZ2VfcC5oIgogI2luY2x1
ZGUgInFxdWlja3dlYnZpZXdfcC5oIgogI2luY2x1ZGUgInF3ZWJkb3dubG9hZGl0ZW1fcC5oIgor
I2luY2x1ZGUgInF3ZWJ2aWV3cG9ydGluZm9fcC5oIgogCiAjaW5jbHVkZSAicXdlYm5hdmlnYXRp
b25oaXN0b3J5X3AuaCIKIApAQCAtNDksNiArNTAsOCBAQCBwdWJsaWM6CiAgICAgICAgIHFtbFJl
Z2lzdGVyRXh0ZW5kZWRUeXBlPFFRdWlja1dlYlZpZXcsIFFRdWlja1dlYlZpZXdFeHBlcmltZW50
YWxFeHRlbnNpb24+KHVyaSwgMywgMCwgIldlYlZpZXciKTsKICAgICAgICAgcW1sUmVnaXN0ZXJV
bmNyZWF0YWJsZVR5cGU8UVF1aWNrV2ViVmlld0V4cGVyaW1lbnRhbD4odXJpLCAzLCAwLCAiUVF1
aWNrV2ViVmlld0V4cGVyaW1lbnRhbCIsCiAgICAgICAgICAgICBRT2JqZWN0Ojp0cigiQ2Fubm90
IGNyZWF0ZSBzZXBhcmF0ZSBpbnN0YW5jZSBvZiBRUXVpY2tXZWJWaWV3RXhwZXJpbWVudGFsIikp
OworICAgICAgICBxbWxSZWdpc3RlclVuY3JlYXRhYmxlVHlwZTxRV2ViVmlld3BvcnRJbmZvPih1
cmksIDMsIDAsICJRV2ViVmlld3BvcnRJbmZvIiwKKyAgICAgICAgICAgIFFPYmplY3Q6OnRyKCJD
YW5ub3QgY3JlYXRlIHNlcGFyYXRlIGluc3RhbmNlIG9mIFFXZWJWaWV3cG9ydEluZm8iKSk7CiAg
ICAgfQogfTsKIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdDIvQ2hhbmdlTG9nIGIvU291cmNl
L1dlYktpdDIvQ2hhbmdlTG9nCmluZGV4IGZlYTZlOTMuLmRmZGI3ZGEgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9XZWJLaXQyL0NoYW5nZUxvZworKysgYi9Tb3VyY2UvV2ViS2l0Mi9DaGFuZ2VMb2cKQEAg
LTEsMyArMSw0NSBAQAorMjAxMS0xMS0yNCAgTWljaGFlbCBCcsO8bmluZyAgPG1pY2hhZWwuYnJ1
bmluZ0Bub2tpYS5jb20+CisKKyAgICAgICAgW1FUXVtXSzJdQWRkIChleHBlcmltZW50YWwpIHZp
ZXdwb3J0IGluZm8gdmlldyB0byBNaW5pYnJvd3Nlci9xdC4KKyAgICAgICAgaHR0cHM6Ly9idWdz
LndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTcyODkzCisKKyAgICAgICAgUmV2aWV3ZWQgYnkg
VG9yIEFybmUgVmVzdGLDuC4KKworICAgICAgICBUaGlzIHBhdGNoIGV4dGVuZHMgUVF1aWNrV2Vi
Vmlld0V4cGVyaW1lbnRhbCBieSBhIHByb3BlcnR5IG5hbWVkCisgICAgICAgIHZpZXdwb3J0SW5m
bywgd2hpY2ggY29udGFpbnMgdGhlIHZpZXdwb3J0IHNjYWxhYmlsaXR5IGFuZAorICAgICAgICBs
YXlvdXQgYW5kIGNvbnRlbnRzIHNpemUgaW5mb3JtYXRpb24uIFRoaXMgcHJvcGVydHkgaXMgZXhw
b3NlZCB0bworICAgICAgICBRTUwgdGhyb3VnaCB0aGUgZXhwZXJpbWVudGFsIGV4dGVuc2lvbiBm
b3IgUVF1aWNrV2ViVmlldy4KKworICAgICAgICAqIFRhcmdldC5wcmk6CisgICAgICAgICogVUlQ
cm9jZXNzL0FQSS9xdC9xcXVpY2t3ZWJ2aWV3LmNwcDoKKyAgICAgICAgKFFRdWlja1dlYlZpZXdQ
cml2YXRlOjpkaWRDaGFuZ2VDb250ZW50c1NpemUpOgorICAgICAgICAoUVF1aWNrV2ViVmlld1By
aXZhdGU6OmNvbXB1dGVWaWV3cG9ydENvbnN0cmFpbnRzKToKKyAgICAgICAgKFFRdWlja1dlYlZp
ZXdQcml2YXRlOjpQb3N0VHJhbnNpdGlvblN0YXRlOjphcHBseSk6IEFkZGVkIGFwcGx5aW5nCisg
ICAgICAgIGNvbnRlbnRzU2l6ZSB0byB2aWV3cG9ydEluZm8uCisgICAgICAgIChRUXVpY2tXZWJW
aWV3RXhwZXJpbWVudGFsOjpRUXVpY2tXZWJWaWV3RXhwZXJpbWVudGFsKToKKyAgICAgICAgKFFR
dWlja1dlYlZpZXdFeHBlcmltZW50YWw6OnZpZXdwb3J0SW5mbyk6CisgICAgICAgICogVUlQcm9j
ZXNzL0FQSS9xdC9xcXVpY2t3ZWJ2aWV3X3AuaDoKKyAgICAgICAgKiBVSVByb2Nlc3MvQVBJL3F0
L3FxdWlja3dlYnZpZXdfcF9wLmg6IE1vdmVkIFBvc3RUcmFuc2l0aW9uU3RhdGU6OmFwcGx5Cisg
ICAgICAgIHRvIHFxdWlja3dlYnZpZXcuY3BwLiBBZGRlZCBmcmllbmQgUVdlYlZpZXdwb3J0SW5m
by4KKyAgICAgICAgKiBVSVByb2Nlc3MvQVBJL3F0L3F3ZWJ2aWV3cG9ydGluZm8uY3BwOiBBZGRl
ZC4KKyAgICAgICAgKFFXZWJWaWV3cG9ydEluZm86OlFXZWJWaWV3cG9ydEluZm8pOgorICAgICAg
ICAoUVdlYlZpZXdwb3J0SW5mbzo6flFXZWJWaWV3cG9ydEluZm8pOgorICAgICAgICAoUVdlYlZp
ZXdwb3J0SW5mbzo6Y29udGVudHNTaXplKToKKyAgICAgICAgKFFXZWJWaWV3cG9ydEluZm86OmN1
cnJlbnRTY2FsZSk6CisgICAgICAgIChRV2ViVmlld3BvcnRJbmZvOjpkZXZpY2VQaXhlbFJhdGlv
KToKKyAgICAgICAgKFFXZWJWaWV3cG9ydEluZm86OmluaXRpYWxTY2FsZSk6CisgICAgICAgIChR
V2ViVmlld3BvcnRJbmZvOjptaW5pbXVtU2NhbGUpOgorICAgICAgICAoUVdlYlZpZXdwb3J0SW5m
bzo6bWF4aW11bVNjYWxlKToKKyAgICAgICAgKFFXZWJWaWV3cG9ydEluZm86OmlzU2NhbGFibGUp
OgorICAgICAgICAoUVdlYlZpZXdwb3J0SW5mbzo6bGF5b3V0U2l6ZSk6CisgICAgICAgIChRV2Vi
Vmlld3BvcnRJbmZvOjpkaWRVcGRhdGVDb250ZW50c1NpemUpOgorICAgICAgICAoUVdlYlZpZXdw
b3J0SW5mbzo6ZGlkVXBkYXRlQ3VycmVudFNjYWxlKToKKyAgICAgICAgKFFXZWJWaWV3cG9ydElu
Zm86OmRpZFVwZGF0ZVZpZXdwb3J0Q29uc3RyYWludHMpOgorICAgICAgICAqIFVJUHJvY2Vzcy9B
UEkvcXQvcXdlYnZpZXdwb3J0aW5mb19wLmg6IEFkZGVkLgorICAgICAgICAqIFVJUHJvY2Vzcy9x
dC9RdFZpZXdwb3J0SW50ZXJhY3Rpb25FbmdpbmUuaDoKKyAgICAgICAgKFdlYktpdDo6UXRWaWV3
cG9ydEludGVyYWN0aW9uRW5naW5lOjpDb25zdHJhaW50czo6Q29uc3RyYWludHMpOiBBZGRlZCBs
YXlvdXRTaXplLgorICAgICAgICAoV2ViS2l0OjpRdFZpZXdwb3J0SW50ZXJhY3Rpb25FbmdpbmU6
OmNvbnN0cmFpbnRzKTogQWRkZWQgcHJvcGVydHkgdG8gYWNjZXNzIG1fY29udHJhaW50cy4KKwog
MjAxMS0xMi0xMyAgQ2FybG9zIEdhcmNpYSBDYW1wb3MgIDxjZ2FyY2lhQGlnYWxpYS5jb20+CiAK
ICAgICAgICAgW0dUS10gQWRkIHN1cHBvcnQgZm9yIGphdmFzY3JpcHQgZGlhbG9ncyBpbiBXZWJL
aXQyIEdUSysgQVBJCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9UYXJnZXQucHJpIGIvU291
cmNlL1dlYktpdDIvVGFyZ2V0LnByaQppbmRleCA3ZWIwOGNkLi4yMDA2N2JlIDEwMDY0NAotLS0g
YS9Tb3VyY2UvV2ViS2l0Mi9UYXJnZXQucHJpCisrKyBiL1NvdXJjZS9XZWJLaXQyL1RhcmdldC5w
cmkKQEAgLTE4NCw2ICsxODQsNyBAQCBIRUFERVJTICs9IFwKICAgICBVSVByb2Nlc3MvQVBJL3F0
L3F3ZWJuYXZpZ2F0aW9uaGlzdG9yeV9wX3AuaCBcCiAgICAgVUlQcm9jZXNzL0FQSS9xdC9xcXVp
Y2t3ZWJ2aWV3X3AuaCBcCiAgICAgVUlQcm9jZXNzL0FQSS9xdC9xcXVpY2t3ZWJ2aWV3X3BfcC5o
IFwKKyAgICBVSVByb2Nlc3MvQVBJL3F0L3F3ZWJ2aWV3cG9ydGluZm9fcC5oIFwKICAgICBVSVBy
b2Nlc3MvQXV0aGVudGljYXRpb24vQXV0aGVudGljYXRpb25DaGFsbGVuZ2VQcm94eS5oIFwKICAg
ICBVSVByb2Nlc3MvQXV0aGVudGljYXRpb24vQXV0aGVudGljYXRpb25EZWNpc2lvbkxpc3RlbmVy
LmggXAogICAgIFVJUHJvY2Vzcy9BdXRoZW50aWNhdGlvbi9XZWJDcmVkZW50aWFsLmggXApAQCAt
NTAzLDYgKzUwNCw3IEBAIFNPVVJDRVMgKz0gXAogICAgIFVJUHJvY2Vzcy9BUEkvcXQvcXdlYm5h
dmlnYXRpb25oaXN0b3J5LmNwcCBcCiAgICAgVUlQcm9jZXNzL0FQSS9xdC9xcXVpY2t3ZWJ2aWV3
LmNwcCBcCiAgICAgVUlQcm9jZXNzL0FQSS9xdC9xd2VicHJlZmVyZW5jZXMuY3BwIFwKKyAgICBV
SVByb2Nlc3MvQVBJL3F0L3F3ZWJ2aWV3cG9ydGluZm8uY3BwIFwKICAgICBVSVByb2Nlc3MvQXV0
aGVudGljYXRpb24vQXV0aGVudGljYXRpb25DaGFsbGVuZ2VQcm94eS5jcHAgXAogICAgIFVJUHJv
Y2Vzcy9BdXRoZW50aWNhdGlvbi9BdXRoZW50aWNhdGlvbkRlY2lzaW9uTGlzdGVuZXIuY3BwIFwK
ICAgICBVSVByb2Nlc3MvQXV0aGVudGljYXRpb24vV2ViQ3JlZGVudGlhbC5jcHAgXApkaWZmIC0t
Z2l0IGEvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL0FQSS9xdC9xcXVpY2t3ZWJ2aWV3LmNwcCBi
L1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9BUEkvcXQvcXF1aWNrd2Vidmlldy5jcHAKaW5kZXgg
MTg1ZWNhYS4uZTc1OTkxNSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL0FQ
SS9xdC9xcXVpY2t3ZWJ2aWV3LmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJ
L3F0L3FxdWlja3dlYnZpZXcuY3BwCkBAIC0zMyw2ICszMyw3IEBACiAjaW5jbHVkZSAicXdlYm5h
dmlnYXRpb25oaXN0b3J5X3AuaCIKICNpbmNsdWRlICJxd2VibmF2aWdhdGlvbmhpc3RvcnlfcF9w
LmgiCiAjaW5jbHVkZSAicXdlYnByZWZlcmVuY2VzX3BfcC5oIgorI2luY2x1ZGUgInF3ZWJ2aWV3
cG9ydGluZm9fcC5oIgogCiAjaW5jbHVkZSA8SmF2YVNjcmlwdENvcmUvSW5pdGlhbGl6ZVRocmVh
ZGluZy5oPgogI2luY2x1ZGUgPFFGaWxlRGlhbG9nPgpAQCAtMTY3LDYgKzE2OCw3IEBAIHZvaWQg
UVF1aWNrV2ViVmlld1ByaXZhdGU6Ol9xX3Jlc3VtZSgpCiAKIHZvaWQgUVF1aWNrV2ViVmlld1By
aXZhdGU6OmRpZENoYW5nZUNvbnRlbnRzU2l6ZShjb25zdCBRU2l6ZSYgbmV3U2l6ZSkKIHsKKyAg
ICBRX1EoUVF1aWNrV2ViVmlldyk7CiAgICAgaWYgKHVzZVRyYWRpdGlvbmFsRGVza3RvcEJlaGF2
aW91cikKICAgICAgICAgcmV0dXJuOwogCkBAIC0xNzgsNiArMTgwLDggQEAgdm9pZCBRUXVpY2tX
ZWJWaWV3UHJpdmF0ZTo6ZGlkQ2hhbmdlQ29udGVudHNTaXplKGNvbnN0IFFTaXplJiBuZXdTaXpl
KQogCiAgICAgcGFnZVZpZXctPnNldFdpZHRoKG5ld1NpemUud2lkdGgoKSk7CiAgICAgcGFnZVZp
ZXctPnNldEhlaWdodChuZXdTaXplLmhlaWdodCgpKTsKKworICAgIHEtPm1fZXhwZXJpbWVudGFs
LT52aWV3cG9ydEluZm8oKS0+ZGlkVXBkYXRlQ29udGVudHNTaXplKCk7CiB9CiAKIHZvaWQgUVF1
aWNrV2ViVmlld1ByaXZhdGU6OmRpZENoYW5nZVZpZXdwb3J0UHJvcGVydGllcyhjb25zdCBXZWJD
b3JlOjpWaWV3cG9ydEFyZ3VtZW50cyYgYXJncykKQEAgLTIxNyw2ICsyMjEsOCBAQCB2b2lkIFFR
dWlja1dlYlZpZXdQcml2YXRlOjp1cGRhdGVWaXNpYmxlQ29udGVudFJlY3QoKQogICAgIGNvbnN0
IFFSZWN0RiB2aXNpYmxlUmVjdEluUGFnZVZpZXdDb29yZGluYXRlcyA9IHEtPm1hcFJlY3RUb0l0
ZW0ocGFnZVZpZXcuZGF0YSgpLCBxLT5ib3VuZGluZ1JlY3QoKSkuaW50ZXJzZWN0ZWQocGFnZVZp
ZXctPmJvdW5kaW5nUmVjdCgpKTsKICAgICBmbG9hdCBzY2FsZSA9IHBhZ2VWaWV3LT5zY2FsZSgp
OwogICAgIHBhZ2VQcm94eS0+c2V0VmlzaWJsZUNvbnRlbnRSZWN0QW5kU2NhbGUodmlzaWJsZVJl
Y3RJblBhZ2VWaWV3Q29vcmRpbmF0ZXMsIHNjYWxlKTsKKworICAgIHEtPm1fZXhwZXJpbWVudGFs
LT52aWV3cG9ydEluZm8oKS0+ZGlkVXBkYXRlQ3VycmVudFNjYWxlKCk7CiB9CiAKIHZvaWQgUVF1
aWNrV2ViVmlld1ByaXZhdGU6Ol9xX3ZpZXdwb3J0VHJhamVjdG9yeVZlY3RvckNoYW5nZWQoY29u
c3QgUVBvaW50RiYgdHJhamVjdG9yeVZlY3RvcikKQEAgLTI0NSw2ICsyNTEsMjIgQEAgdm9pZCBR
UXVpY2tXZWJWaWV3UHJpdmF0ZTo6dXBkYXRlVmlld3BvcnRTaXplKCkKICAgICB1cGRhdGVWaXNp
YmxlQ29udGVudFJlY3QoKTsKIH0KIAordm9pZCBRUXVpY2tXZWJWaWV3UHJpdmF0ZTo6UG9zdFRy
YW5zaXRpb25TdGF0ZTo6YXBwbHkoKQoreworICAgIHAtPmludGVyYWN0aW9uRW5naW5lLT5yZXNl
dCgpOworICAgIHAtPmludGVyYWN0aW9uRW5naW5lLT5hcHBseUNvbnN0cmFpbnRzKHAtPmNvbXB1
dGVWaWV3cG9ydENvbnN0cmFpbnRzKCkpOworICAgIHAtPmludGVyYWN0aW9uRW5naW5lLT5wYWdl
UG9zaXRpb25SZXF1ZXN0KHBvc2l0aW9uKTsKKworICAgIGlmIChjb250ZW50c1NpemUuaXNWYWxp
ZCgpKSB7CisgICAgICAgIHAtPnBhZ2VWaWV3LT5zZXRXaWR0aChjb250ZW50c1NpemUud2lkdGgo
KSk7CisgICAgICAgIHAtPnBhZ2VWaWV3LT5zZXRIZWlnaHQoY29udGVudHNTaXplLmhlaWdodCgp
KTsKKyAgICAgICAgcC0+cV9wdHItPmV4cGVyaW1lbnRhbCgpLT52aWV3cG9ydEluZm8oKS0+ZGlk
VXBkYXRlQ29udGVudHNTaXplKCk7CisgICAgfQorCisgICAgcG9zaXRpb24gPSBRUG9pbnQoKTsK
KyAgICBjb250ZW50c1NpemUgPSBRU2l6ZSgpOworfQorCiBRdFZpZXdwb3J0SW50ZXJhY3Rpb25F
bmdpbmU6OkNvbnN0cmFpbnRzIFFRdWlja1dlYlZpZXdQcml2YXRlOjpjb21wdXRlVmlld3BvcnRD
b25zdHJhaW50cygpCiB7CiAgICAgUV9RKFFRdWlja1dlYlZpZXcpOwpAQCAtMjc0LDYgKzI5Niw5
IEBAIFF0Vmlld3BvcnRJbnRlcmFjdGlvbkVuZ2luZTo6Q29uc3RyYWludHMgUVF1aWNrV2ViVmll
d1ByaXZhdGU6OmNvbXB1dGVWaWV3cG9ydENvCiAgICAgbmV3Q29uc3RyYWludHMubWF4aW11bVNj
YWxlID0gYXR0ci5tYXhpbXVtU2NhbGU7CiAgICAgbmV3Q29uc3RyYWludHMuZGV2aWNlUGl4ZWxS
YXRpbyA9IGF0dHIuZGV2aWNlUGl4ZWxSYXRpbzsKICAgICBuZXdDb25zdHJhaW50cy5pc1VzZXJT
Y2FsYWJsZSA9ICEhYXR0ci51c2VyU2NhbGFibGU7CisgICAgbmV3Q29uc3RyYWludHMubGF5b3V0
U2l6ZSA9IGF0dHIubGF5b3V0U2l6ZTsKKworICAgIHEtPm1fZXhwZXJpbWVudGFsLT52aWV3cG9y
dEluZm8oKS0+ZGlkVXBkYXRlVmlld3BvcnRDb25zdHJhaW50cygpOwogCiAgICAgcmV0dXJuIG5l
d0NvbnN0cmFpbnRzOwogfQpAQCAtNDQ3LDYgKzQ3Miw3IEBAIFFRdWlja1dlYlZpZXdFeHBlcmlt
ZW50YWw6OlFRdWlja1dlYlZpZXdFeHBlcmltZW50YWwoUVF1aWNrV2ViVmlldyAqd2ViVmlldykK
ICAgICA6IFFPYmplY3Qod2ViVmlldykKICAgICAsIHFfcHRyKHdlYlZpZXcpCiAgICAgLCBkX3B0
cih3ZWJWaWV3LT5kX3B0ci5kYXRhKCkpCisgICAgLCBtX3ZpZXdwb3J0SW5mbyhuZXcgUVdlYlZp
ZXdwb3J0SW5mbyh3ZWJWaWV3LT5kX3B0ci5kYXRhKCksIHRoaXMpKQogewogICAgIFFfRChRUXVp
Y2tXZWJWaWV3KTsKICAgICBRT2JqZWN0Ojpjb25uZWN0KGQtPnBhZ2VQcm94eS5kYXRhKCksIFNJ
R05BTChyZWNlaXZlZE1lc3NhZ2VGcm9tTmF2aWdhdG9yUXRPYmplY3QoUVZhcmlhbnRNYXApKSwg
dGhpcywgU0lHTkFMKG1lc3NhZ2VSZWNlaXZlZChRVmFyaWFudE1hcCkpKTsKQEAgLTU1Myw2ICs1
NzksMTEgQEAgdm9pZCBRUXVpY2tXZWJWaWV3RXhwZXJpbWVudGFsOjpnb0JhY2tUbyhpbnQgaW5k
ZXgpCiAgICAgZF9wdHItPnBhZ2VQcm94eS0+Z29CYWNrVG8oaW5kZXgpOwogfQogCitRV2ViVmll
d3BvcnRJbmZvKiBRUXVpY2tXZWJWaWV3RXhwZXJpbWVudGFsOjp2aWV3cG9ydEluZm8oKQorewor
ICAgIHJldHVybiBtX3ZpZXdwb3J0SW5mbzsKK30KKwogUVF1aWNrV2ViVmlldzo6UVF1aWNrV2Vi
VmlldyhRUXVpY2tJdGVtKiBwYXJlbnQpCiAgICAgOiBRUXVpY2tJdGVtKHBhcmVudCkKICAgICAs
IGRfcHRyKG5ldyBRUXVpY2tXZWJWaWV3UHJpdmF0ZSh0aGlzKSkKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJLaXQyL1VJUHJvY2Vzcy9BUEkvcXQvcXF1aWNrd2Vidmlld19wLmggYi9Tb3VyY2UvV2Vi
S2l0Mi9VSVByb2Nlc3MvQVBJL3F0L3FxdWlja3dlYnZpZXdfcC5oCmluZGV4IDUzOTVlNmQuLjNk
MTliNGEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9BUEkvcXQvcXF1aWNr
d2Vidmlld19wLmgKKysrIGIvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL0FQSS9xdC9xcXVpY2t3
ZWJ2aWV3X3AuaApAQCAtMzQsNiArMzQsNyBAQCBjbGFzcyBRV2ViRG93bmxvYWRJdGVtOwogY2xh
c3MgUVdlYk5hdmlnYXRpb25IaXN0b3J5OwogY2xhc3MgUVdlYlByZWZlcmVuY2VzOwogY2xhc3Mg
UVdlYlBlcm1pc3Npb25SZXF1ZXN0OworY2xhc3MgUVdlYlZpZXdwb3J0SW5mbzsKIAogbmFtZXNw
YWNlIFdUUiB7CiBjbGFzcyBQbGF0Zm9ybVdlYlZpZXc7CkBAIC0xNzMsNiArMTc0LDcgQEAgY2xh
c3MgUVdFQktJVF9FWFBPUlQgUVF1aWNrV2ViVmlld0V4cGVyaW1lbnRhbCA6IHB1YmxpYyBRT2Jq
ZWN0IHsKICAgICBRX1BST1BFUlRZKFFEZWNsYXJhdGl2ZUNvbXBvbmVudCogcHJvbXB0RGlhbG9n
IFJFQUQgcHJvbXB0RGlhbG9nIFdSSVRFIHNldFByb21wdERpYWxvZyBOT1RJRlkgcHJvbXB0RGlh
bG9nQ2hhbmdlZCkKICAgICBRX1BST1BFUlRZKFFEZWNsYXJhdGl2ZUNvbXBvbmVudCogaXRlbVNl
bGVjdG9yIFJFQUQgaXRlbVNlbGVjdG9yIFdSSVRFIHNldEl0ZW1TZWxlY3RvciBOT1RJRlkgaXRl
bVNlbGVjdG9yQ2hhbmdlZCkKICAgICBRX1BST1BFUlRZKGJvb2wgdXNlVHJhZGl0aW9uYWxEZXNr
dG9wQmVoYXZpb3VyIFJFQUQgdXNlVHJhZGl0aW9uYWxEZXNrdG9wQmVoYXZpb3VyIFdSSVRFIHNl
dFVzZVRyYWRpdGlvbmFsRGVza3RvcEJlaGF2aW91cikKKyAgICBRX1BST1BFUlRZKFFXZWJWaWV3
cG9ydEluZm8qIHZpZXdwb3J0SW5mbyBSRUFEIHZpZXdwb3J0SW5mbyBDT05TVEFOVCBGSU5BTCkK
IAogcHVibGljOgogICAgIFFRdWlja1dlYlZpZXdFeHBlcmltZW50YWwoUVF1aWNrV2ViVmlldyog
d2ViVmlldyk7CkBAIC0xODYsNiArMTg4LDggQEAgcHVibGljOgogICAgIHZvaWQgc2V0UHJvbXB0
RGlhbG9nKFFEZWNsYXJhdGl2ZUNvbXBvbmVudCopOwogICAgIFFEZWNsYXJhdGl2ZUNvbXBvbmVu
dCogaXRlbVNlbGVjdG9yKCkgY29uc3Q7CiAgICAgdm9pZCBzZXRJdGVtU2VsZWN0b3IoUURlY2xh
cmF0aXZlQ29tcG9uZW50Kik7CisgICAgCisgICAgUVdlYlZpZXdwb3J0SW5mbyogdmlld3BvcnRJ
bmZvKCk7CiAKICAgICBib29sIHVzZVRyYWRpdGlvbmFsRGVza3RvcEJlaGF2aW91cigpIGNvbnN0
OwogICAgIFFXZWJOYXZpZ2F0aW9uSGlzdG9yeSogbmF2aWdhdGlvbkhpc3RvcnkoKSBjb25zdDsK
QEAgLTIwOCw2ICsyMTIsNyBAQCBRX1NJR05BTFM6CiBwcml2YXRlOgogICAgIFFRdWlja1dlYlZp
ZXcqIHFfcHRyOwogICAgIFFRdWlja1dlYlZpZXdQcml2YXRlKiBkX3B0cjsKKyAgICBRV2ViVmll
d3BvcnRJbmZvKiBtX3ZpZXdwb3J0SW5mbzsKIAogICAgIGZyaWVuZCBjbGFzcyBRdFdlYlBhZ2VQ
cm94eTsKICAgICBmcmllbmQgY2xhc3MgUXRXZWJQYWdlVUlDbGllbnQ7CmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJL3F0L3FxdWlja3dlYnZpZXdfcF9wLmggYi9Tb3Vy
Y2UvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJL3F0L3FxdWlja3dlYnZpZXdfcF9wLmgKaW5kZXggNWY1
YWExMy4uODY5MzhjNCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL0FQSS9x
dC9xcXVpY2t3ZWJ2aWV3X3BfcC5oCisrKyBiL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9BUEkv
cXQvcXF1aWNrd2Vidmlld19wX3AuaApAQCAtNDEsNiArNDEsNyBAQCBuYW1lc3BhY2UgV2ViS2l0
IHsKIGNsYXNzIFdlYlBhZ2VQcm94eTsKIH0KIGNsYXNzIFF0V2ViUGFnZVByb3h5OworY2xhc3Mg
UVdlYlZpZXdwb3J0SW5mbzsKIAogUVRfQkVHSU5fTkFNRVNQQUNFCiBjbGFzcyBRRGVjbGFyYXRp
dmVDb21wb25lbnQ7CkBAIC01MCw2ICs1MSw3IEBAIFFUX0VORF9OQU1FU1BBQ0UKIGNsYXNzIFFR
dWlja1dlYlZpZXdQcml2YXRlIHsKICAgICBRX0RFQ0xBUkVfUFVCTElDKFFRdWlja1dlYlZpZXcp
CiAgICAgZnJpZW5kIGNsYXNzIFFRdWlja1dlYlZpZXdFeHBlcmltZW50YWw7CisgICAgZnJpZW5k
IGNsYXNzIFFXZWJWaWV3cG9ydEluZm87CiAKIHB1YmxpYzoKICAgICBzdGF0aWMgUVF1aWNrV2Vi
Vmlld1ByaXZhdGUqIGdldChRUXVpY2tXZWJWaWV3KiBxKSB7IHJldHVybiBxLT5kX3B0ci5kYXRh
KCk7IH0KQEAgLTEwMiwyMCArMTA0LDcgQEAgcHJpdmF0ZToKICAgICAgICAgICAgIDogcChwYXJl
bnQpCiAgICAgICAgIHsgfQogCi0gICAgICAgIHZvaWQgYXBwbHkoKQotICAgICAgICB7Ci0gICAg
ICAgICAgICBwLT5pbnRlcmFjdGlvbkVuZ2luZS0+cmVzZXQoKTsKLSAgICAgICAgICAgIHAtPmlu
dGVyYWN0aW9uRW5naW5lLT5hcHBseUNvbnN0cmFpbnRzKHAtPmNvbXB1dGVWaWV3cG9ydENvbnN0
cmFpbnRzKCkpOwotICAgICAgICAgICAgcC0+aW50ZXJhY3Rpb25FbmdpbmUtPnBhZ2VQb3NpdGlv
blJlcXVlc3QocG9zaXRpb24pOwotCi0gICAgICAgICAgICBpZiAoY29udGVudHNTaXplLmlzVmFs
aWQoKSkgewotICAgICAgICAgICAgICAgIHAtPnBhZ2VWaWV3LT5zZXRXaWR0aChjb250ZW50c1Np
emUud2lkdGgoKSk7Ci0gICAgICAgICAgICAgICAgcC0+cGFnZVZpZXctPnNldEhlaWdodChjb250
ZW50c1NpemUuaGVpZ2h0KCkpOwotICAgICAgICAgICAgfQotCi0gICAgICAgICAgICBwb3NpdGlv
biA9IFFQb2ludCgpOwotICAgICAgICAgICAgY29udGVudHNTaXplID0gUVNpemUoKTsKLSAgICAg
ICAgfQorICAgICAgICB2b2lkIGFwcGx5KCk7CiAKICAgICAgICAgUVF1aWNrV2ViVmlld1ByaXZh
dGUqIHA7CiAgICAgICAgIFFTaXplIGNvbnRlbnRzU2l6ZTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJLaXQyL1VJUHJvY2Vzcy9BUEkvcXQvcXdlYnZpZXdwb3J0aW5mby5jcHAgYi9Tb3VyY2UvV2Vi
S2l0Mi9VSVByb2Nlc3MvQVBJL3F0L3F3ZWJ2aWV3cG9ydGluZm8uY3BwCm5ldyBmaWxlIG1vZGUg
MTAwNjQ0CmluZGV4IDAwMDAwMDAuLjBhMDZkYWYKLS0tIC9kZXYvbnVsbAorKysgYi9Tb3VyY2Uv
V2ViS2l0Mi9VSVByb2Nlc3MvQVBJL3F0L3F3ZWJ2aWV3cG9ydGluZm8uY3BwCkBAIC0wLDAgKzEs
MTEwIEBACisvKgorICogQ29weXJpZ2h0IChDKSAyMDExIE5va2lhIENvcnBvcmF0aW9uIGFuZC9v
ciBpdHMgc3Vic2lkaWFyeSgtaWVzKQorICoKKyAqIFRoaXMgbGlicmFyeSBpcyBmcmVlIHNvZnR3
YXJlOyB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IKKyAqIG1vZGlmeSBpdCB1bmRlciB0
aGUgdGVybXMgb2YgdGhlIEdOVSBMaWJyYXJ5IEdlbmVyYWwgUHVibGljCisgKiBMaWNlbnNlIGFz
IHB1Ymxpc2hlZCBieSB0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uOyBlaXRoZXIKKyAqIHZl
cnNpb24gMiBvZiB0aGUgTGljZW5zZSwgb3IgKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVy
c2lvbi4KKyAqCisgKiBUaGlzIHByb2dyYW0gaXMgZGlzdHJpYnV0ZWQgaW4gdGhlIGhvcGUgdGhh
dCBpdCB3aWxsIGJlIHVzZWZ1bCwKKyAqIGJ1dCBXSVRIT1VUIEFOWSBXQVJSQU5UWTsgd2l0aG91
dCBldmVuIHRoZSBpbXBsaWVkIHdhcnJhbnR5IG9mCisgKiBNRVJDSEFOVEFCSUxJVFkgb3IgRklU
TkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlIEdOVQorICogTGlicmFyeSBH
ZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGZvciBtb3JlIGRldGFpbHMuCisgKgorICogWW91IHNob3Vs
ZCBoYXZlIHJlY2VpdmVkIGEgY29weSBvZiB0aGUgR05VIExpYnJhcnkgR2VuZXJhbCBQdWJsaWMg
TGljZW5zZQorICogYWxvbmcgd2l0aCB0aGlzIHByb2dyYW07IHNlZSB0aGUgZmlsZSBDT1BZSU5H
LkxJQi4gIElmIG5vdCwgd3JpdGUgdG8KKyAqIHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb24s
IEluYy4sIDUxIEZyYW5rbGluIFN0cmVldCwgRmlmdGggRmxvb3IsCisgKiBCb3N0b24sIE1BIDAy
MTEwLTEzMDEsIFVTQS4KKyAqCisgKi8KKworI2luY2x1ZGUgImNvbmZpZy5oIgorI2luY2x1ZGUg
InF3ZWJ2aWV3cG9ydGluZm9fcC5oIgorCisjaW5jbHVkZSAicXF1aWNrd2Vidmlld19wLmgiCisj
aW5jbHVkZSAicXF1aWNrd2Vidmlld19wX3AuaCIKKworUVdlYlZpZXdwb3J0SW5mbzo6UVdlYlZp
ZXdwb3J0SW5mbyhRUXVpY2tXZWJWaWV3UHJpdmF0ZSogd2ViVmlld1ByaXZhdGUsIFFPYmplY3Qq
IHBhcmVudCkKKyAgICA6IFFPYmplY3QocGFyZW50KQorICAgICwgbV93ZWJWaWV3UHJpdmF0ZSh3
ZWJWaWV3UHJpdmF0ZSkKK3sKKworfQorCitRV2ViVmlld3BvcnRJbmZvOjp+UVdlYlZpZXdwb3J0
SW5mbygpCit7CisKK30KKworUVNpemUgUVdlYlZpZXdwb3J0SW5mbzo6Y29udGVudHNTaXplKCkg
Y29uc3QKK3sKKyAgICByZXR1cm4gUVNpemUobV93ZWJWaWV3UHJpdmF0ZS0+cGFnZVZpZXctPndp
ZHRoKCksIG1fd2ViVmlld1ByaXZhdGUtPnBhZ2VWaWV3LT5oZWlnaHQoKSk7Cit9CisKK3FyZWFs
IFFXZWJWaWV3cG9ydEluZm86OmN1cnJlbnRTY2FsZSgpIGNvbnN0Cit7CisgICAgcmV0dXJuIG1f
d2ViVmlld1ByaXZhdGUtPnBhZ2VWaWV3LT5zY2FsZSgpOworfQorCitxcmVhbCBRV2ViVmlld3Bv
cnRJbmZvOjpkZXZpY2VQaXhlbFJhdGlvKCkgY29uc3QKK3sKKyAgICBpZiAoIW1fd2ViVmlld1By
aXZhdGUtPmludGVyYWN0aW9uRW5naW5lKQorICAgICAgICByZXR1cm4gLTEuMDsKKworICAgIHJl
dHVybiBtX3dlYlZpZXdQcml2YXRlLT5pbnRlcmFjdGlvbkVuZ2luZS0+Y29uc3RyYWludHMoKS5k
ZXZpY2VQaXhlbFJhdGlvOworfQorCitxcmVhbCBRV2ViVmlld3BvcnRJbmZvOjppbml0aWFsU2Nh
bGUoKSBjb25zdAoreworICAgIGlmICghbV93ZWJWaWV3UHJpdmF0ZS0+aW50ZXJhY3Rpb25Fbmdp
bmUpCisgICAgICAgIHJldHVybiAtMS4wOworCisgICAgcmV0dXJuIG1fd2ViVmlld1ByaXZhdGUt
PmludGVyYWN0aW9uRW5naW5lLT5jb25zdHJhaW50cygpLmluaXRpYWxTY2FsZTsKK30KKworcXJl
YWwgUVdlYlZpZXdwb3J0SW5mbzo6bWluaW11bVNjYWxlKCkgY29uc3QKK3sKKyAgICBpZiAoIW1f
d2ViVmlld1ByaXZhdGUtPmludGVyYWN0aW9uRW5naW5lKQorICAgICAgICByZXR1cm4gLTEuMDsK
KworICAgIHJldHVybiBtX3dlYlZpZXdQcml2YXRlLT5pbnRlcmFjdGlvbkVuZ2luZS0+Y29uc3Ry
YWludHMoKS5taW5pbXVtU2NhbGU7Cit9CisKK3FyZWFsIFFXZWJWaWV3cG9ydEluZm86Om1heGlt
dW1TY2FsZSgpIGNvbnN0Cit7CisgICAgaWYgKCFtX3dlYlZpZXdQcml2YXRlLT5pbnRlcmFjdGlv
bkVuZ2luZSkKKyAgICAgICAgcmV0dXJuIC0xLjA7CisKKyAgICByZXR1cm4gbV93ZWJWaWV3UHJp
dmF0ZS0+aW50ZXJhY3Rpb25FbmdpbmUtPmNvbnN0cmFpbnRzKCkubWF4aW11bVNjYWxlOworfQor
Citib29sIFFXZWJWaWV3cG9ydEluZm86OmlzU2NhbGFibGUoKSBjb25zdAoreworICAgIGlmICgh
bV93ZWJWaWV3UHJpdmF0ZS0+aW50ZXJhY3Rpb25FbmdpbmUpCisgICAgICAgIHJldHVybiBmYWxz
ZTsKKworICAgIHJldHVybiBtX3dlYlZpZXdQcml2YXRlLT5pbnRlcmFjdGlvbkVuZ2luZS0+Y29u
c3RyYWludHMoKS5pc1VzZXJTY2FsYWJsZTsKK30KKworUVNpemUgUVdlYlZpZXdwb3J0SW5mbzo6
bGF5b3V0U2l6ZSgpIGNvbnN0Cit7CisgICAgaWYgKCFtX3dlYlZpZXdQcml2YXRlLT5pbnRlcmFj
dGlvbkVuZ2luZSkKKyAgICAgICAgcmV0dXJuIFFTaXplKCk7CisKKyAgICByZXR1cm4gbV93ZWJW
aWV3UHJpdmF0ZS0+aW50ZXJhY3Rpb25FbmdpbmUtPmNvbnN0cmFpbnRzKCkubGF5b3V0U2l6ZTsK
K30KKwordm9pZCBRV2ViVmlld3BvcnRJbmZvOjpkaWRVcGRhdGVDb250ZW50c1NpemUoKQorewor
ICAgIGVtaXQgY29udGVudHNTaXplVXBkYXRlZCgpOworfQorCit2b2lkIFFXZWJWaWV3cG9ydElu
Zm86OmRpZFVwZGF0ZUN1cnJlbnRTY2FsZSgpCit7CisgICAgZW1pdCBjdXJyZW50U2NhbGVVcGRh
dGVkKCk7Cit9CisKK3ZvaWQgUVdlYlZpZXdwb3J0SW5mbzo6ZGlkVXBkYXRlVmlld3BvcnRDb25z
dHJhaW50cygpCit7CisgICAgZW1pdCB2aWV3cG9ydENvbnN0cmFpbnRzVXBkYXRlZCgpOworfQpk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL0FQSS9xdC9xd2Vidmlld3BvcnRp
bmZvX3AuaCBiL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9BUEkvcXQvcXdlYnZpZXdwb3J0aW5m
b19wLmgKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uMTU3NWZlZQotLS0gL2Rl
di9udWxsCisrKyBiL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9BUEkvcXQvcXdlYnZpZXdwb3J0
aW5mb19wLmgKQEAgLTAsMCArMSw3NSBAQAorLyoKKyAqIENvcHlyaWdodCAoQykgMjAxMSBOb2tp
YSBDb3Jwb3JhdGlvbiBhbmQvb3IgaXRzIHN1YnNpZGlhcnkoLWllcykKKyAqCisgKiBUaGlzIGxp
YnJhcnkgaXMgZnJlZSBzb2Z0d2FyZTsgeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29yCisg
KiBtb2RpZnkgaXQgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUgTGlicmFyeSBHZW5lcmFsIFB1
YmxpYworICogTGljZW5zZSBhcyBwdWJsaXNoZWQgYnkgdGhlIEZyZWUgU29mdHdhcmUgRm91bmRh
dGlvbjsgZWl0aGVyCisgKiB2ZXJzaW9uIDIgb2YgdGhlIExpY2Vuc2UsIG9yIChhdCB5b3VyIG9w
dGlvbikgYW55IGxhdGVyIHZlcnNpb24uCisgKgorICogVGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1
dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCisgKiBidXQgV0lUSE9VVCBB
TlkgV0FSUkFOVFk7IHdpdGhvdXQgZXZlbiB0aGUgaW1wbGllZCB3YXJyYW50eSBvZgorICogTUVS
Q0hBTlRBQklMSVRZIG9yIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFLiAgU2VlIHRo
ZSBHTlUKKyAqIExpYnJhcnkgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBmb3IgbW9yZSBkZXRhaWxz
LgorICoKKyAqIFlvdSBzaG91bGQgaGF2ZSByZWNlaXZlZCBhIGNvcHkgb2YgdGhlIEdOVSBMaWJy
YXJ5IEdlbmVyYWwgUHVibGljIExpY2Vuc2UKKyAqIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtOyBz
ZWUgdGhlIGZpbGUgQ09QWUlORy5MSUIuICBJZiBub3QsIHdyaXRlIHRvCisgKiB0aGUgRnJlZSBT
b2Z0d2FyZSBGb3VuZGF0aW9uLCBJbmMuLCA1MSBGcmFua2xpbiBTdHJlZXQsIEZpZnRoIEZsb29y
LAorICogQm9zdG9uLCBNQSAwMjExMC0xMzAxLCBVU0EuCisgKgorICovCisKKyNpZm5kZWYgcXdl
YnZpZXdwb3J0aW5mcF9wX2gKKyNkZWZpbmUgcXdlYnZpZXdwb3J0aW5mb19wX2gKKworI2luY2x1
ZGUgInF3ZWJraXRnbG9iYWwuaCIKKworI2luY2x1ZGUgPFF0Q29yZS9RT2JqZWN0PgorI2luY2x1
ZGUgPFF0Q29yZS9RUG9pbnRlcj4KKyNpbmNsdWRlIDxRdENvcmUvUVNpemU+CisjaW5jbHVkZSA8
UXREZWNsYXJhdGl2ZS9RdERlY2xhcmF0aXZlPgorCituYW1lc3BhY2UgV2ViQ29yZSB7CitjbGFz
cyBWaWV3cG9ydEF0dHJpYnV0ZXM7Cit9CitjbGFzcyBRUXVpY2tXZWJWaWV3UHJpdmF0ZTsKKwor
Y2xhc3MgUVdFQktJVF9FWFBPUlQgUVdlYlZpZXdwb3J0SW5mbyA6IHB1YmxpYyBRT2JqZWN0IHsK
KyAgICBRX09CSkVDVAorICAgIFFfUFJPUEVSVFkoUVNpemUgY29udGVudHNTaXplIFJFQUQgY29u
dGVudHNTaXplIE5PVElGWSBjb250ZW50c1NpemVVcGRhdGVkKQorICAgIFFfUFJPUEVSVFkocXJl
YWwgY3VycmVudFNjYWxlIFJFQUQgY3VycmVudFNjYWxlIE5PVElGWSBjdXJyZW50U2NhbGVVcGRh
dGVkKQorICAgIFFfUFJPUEVSVFkocXJlYWwgZGV2aWNlUGl4ZWxSYXRpbyBSRUFEIGRldmljZVBp
eGVsUmF0aW8gTk9USUZZIHZpZXdwb3J0Q29uc3RyYWludHNVcGRhdGVkKQorICAgIFFfUFJPUEVS
VFkocXJlYWwgaW5pdGlhbFNjYWxlIFJFQUQgaW5pdGlhbFNjYWxlIE5PVElGWSB2aWV3cG9ydENv
bnN0cmFpbnRzVXBkYXRlZCkKKyAgICBRX1BST1BFUlRZKGJvb2wgaXNTY2FsYWJsZSBSRUFEIGlz
U2NhbGFibGUgTk9USUZZIHZpZXdwb3J0Q29uc3RyYWludHNVcGRhdGVkKQorICAgIFFfUFJPUEVS
VFkocXJlYWwgbWF4aW11bVNjYWxlIFJFQUQgbWF4aW11bVNjYWxlIE5PVElGWSB2aWV3cG9ydENv
bnN0cmFpbnRzVXBkYXRlZCkKKyAgICBRX1BST1BFUlRZKHFyZWFsIG1pbmltdW1TY2FsZSBSRUFE
IG1pbmltdW1TY2FsZSBOT1RJRlkgdmlld3BvcnRDb25zdHJhaW50c1VwZGF0ZWQpCisgICAgUV9Q
Uk9QRVJUWShRU2l6ZSBsYXlvdXRTaXplIFJFQUQgbGF5b3V0U2l6ZSBOT1RJRlkgdmlld3BvcnRD
b25zdHJhaW50c1VwZGF0ZWQpCisKK3NpZ25hbHM6CisgICAgdm9pZCBjb250ZW50c1NpemVVcGRh
dGVkKCk7CisgICAgdm9pZCBjdXJyZW50U2NhbGVVcGRhdGVkKCk7CisgICAgdm9pZCB2aWV3cG9y
dENvbnN0cmFpbnRzVXBkYXRlZCgpOworCitwdWJsaWM6CisgICAgUVdlYlZpZXdwb3J0SW5mbyhR
UXVpY2tXZWJWaWV3UHJpdmF0ZSogd2Vidmlld1ByaXZhdGUsIFFPYmplY3QqIHBhcmVudCA9IDAp
OworICAgIHZpcnR1YWwgflFXZWJWaWV3cG9ydEluZm8oKTsKKworICAgIFFTaXplIGNvbnRlbnRz
U2l6ZSgpIGNvbnN0OworICAgIGludCBjb250ZW50c1dpZHRoKCkgY29uc3Q7CisgICAgcXJlYWwg
Y3VycmVudFNjYWxlKCkgY29uc3Q7CisgICAgcXJlYWwgZGV2aWNlUGl4ZWxSYXRpbygpIGNvbnN0
OworICAgIHFyZWFsIGluaXRpYWxTY2FsZSgpIGNvbnN0OworICAgIGJvb2wgaXNTY2FsYWJsZSgp
IGNvbnN0OworICAgIGludCBsYXlvdXRIZWlnaHQoKSBjb25zdDsKKyAgICBRU2l6ZSBsYXlvdXRT
aXplKCkgY29uc3Q7CisgICAgcXJlYWwgbWF4aW11bVNjYWxlKCkgY29uc3Q7CisgICAgcXJlYWwg
bWluaW11bVNjYWxlKCkgY29uc3Q7CisKKyAgICB2b2lkIGRpZFVwZGF0ZUNvbnRlbnRzU2l6ZSgp
OworICAgIHZvaWQgZGlkVXBkYXRlQ3VycmVudFNjYWxlKCk7CisgICAgdm9pZCBkaWRVcGRhdGVW
aWV3cG9ydENvbnN0cmFpbnRzKCk7CisKK3ByaXZhdGU6CisgICAgUVF1aWNrV2ViVmlld1ByaXZh
dGUqIG1fd2ViVmlld1ByaXZhdGU7Cit9OworCisjZW5kaWYgLy8gcXdlYnZpZXdwb3J0aW5mb19w
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvcXQvUXRWaWV3cG9ydEludGVy
YWN0aW9uRW5naW5lLmggYi9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvcXQvUXRWaWV3cG9ydElu
dGVyYWN0aW9uRW5naW5lLmgKaW5kZXggMzYyODk5Ny4uNjM0YjljOCAxMDA2NDQKLS0tIGEvU291
cmNlL1dlYktpdDIvVUlQcm9jZXNzL3F0L1F0Vmlld3BvcnRJbnRlcmFjdGlvbkVuZ2luZS5oCisr
KyBiL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9xdC9RdFZpZXdwb3J0SW50ZXJhY3Rpb25Fbmdp
bmUuaApAQCAtNTQsNiArNTQsNyBAQCBwdWJsaWM6CiAgICAgICAgICAgICAsIG1heGltdW1TY2Fs
ZSgxLjgpCiAgICAgICAgICAgICAsIGRldmljZVBpeGVsUmF0aW8oMS4wKQogICAgICAgICAgICAg
LCBpc1VzZXJTY2FsYWJsZSh0cnVlKQorICAgICAgICAgICAgLCBsYXlvdXRTaXplKFFTaXplKCkp
CiAgICAgICAgIHsgfQogCiAgICAgICAgIHFyZWFsIGluaXRpYWxTY2FsZTsKQEAgLTYxLDYgKzYy
LDcgQEAgcHVibGljOgogICAgICAgICBxcmVhbCBtYXhpbXVtU2NhbGU7CiAgICAgICAgIHFyZWFs
IGRldmljZVBpeGVsUmF0aW87CiAgICAgICAgIGJvb2wgaXNVc2VyU2NhbGFibGU7CisgICAgICAg
IFFTaXplIGxheW91dFNpemU7CiAgICAgfTsKIAogICAgIGJvb2wgZXZlbnQoUUV2ZW50Kik7CkBA
IC05NCw2ICs5Niw3IEBAIHB1YmxpYzoKICAgICB2b2lkIHpvb21Ub0FyZWFHZXN0dXJlRW5kZWQo
Y29uc3QgUVBvaW50RiYgdG91Y2hQb2ludCwgY29uc3QgUVJlY3RGJiB0YXJnZXRBcmVhKTsKICAg
ICB2b2lkIGZvY3VzRWRpdGFibGVBcmVhKGNvbnN0IFFSZWN0RiYgY2FyZXRBcmVhLCBjb25zdCBR
UmVjdEYmIHRhcmdldEFyZWEpOwogCisgICAgY29uc3QgQ29uc3RyYWludHMmIGNvbnN0cmFpbnRz
KCkgY29uc3QgeyByZXR1cm4gbV9jb25zdHJhaW50czsgfQogUV9TSUdOQUxTOgogICAgIHZvaWQg
Y29udGVudFN1c3BlbmRSZXF1ZXN0ZWQoKTsKICAgICB2b2lkIGNvbnRlbnRSZXN1bWVSZXF1ZXN0
ZWQoKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9xdHdlYmtpdC1leHBvcnQubWFwIGIvU291cmNlL3F0
d2Via2l0LWV4cG9ydC5tYXAKaW5kZXggYjc3NjkzYy4uODMyMDVjOCAxMDA2NDQKLS0tIGEvU291
cmNlL3F0d2Via2l0LWV4cG9ydC5tYXAKKysrIGIvU291cmNlL3F0d2Via2l0LWV4cG9ydC5tYXAK
QEAgLTEzMCw2ICsxMzAsOSBAQCBxd2tfMS4wIHsKICAgICAgICAgKlFXZWJEb3dubG9hZEl0ZW07
CiAgICAgICAgIG5vbi12aXJ0dWFsP3RodW5rP3RvP1FXZWJEb3dubG9hZEl0ZW0qOwogICAgICAg
ICBRV2ViRG93bmxvYWRJdGVtOjoqOworICAgICAgICAqUVdlYlZpZXdwb3J0SW5mbzsKKyAgICAg
ICAgbm9uLXZpcnR1YWw/dGh1bms/dG8/UVdlYlZpZXdwb3J0SW5mbzsKKyAgICAgICAgUVdlYlZp
ZXdwb3J0SW5mbzo6KjsKICAgICAgICAgKlFRdWlja1dlYlBhZ2U7CiAgICAgICAgIG5vbi12aXJ0
dWFsP3RodW5rP3RvP1FRdWlja1dlYlBhZ2UqOwogICAgICAgICBRUXVpY2tXZWJQYWdlOjoqOwpk
aWZmIC0tZ2l0IGEvVG9vbHMvQ2hhbmdlTG9nIGIvVG9vbHMvQ2hhbmdlTG9nCmluZGV4IDc5MTQy
YjYuLjFiNDJkMDAgMTAwNjQ0Ci0tLSBhL1Rvb2xzL0NoYW5nZUxvZworKysgYi9Ub29scy9DaGFu
Z2VMb2cKQEAgLTEsMyArMSwyMSBAQAorMjAxMS0xMS0yNCAgTWljaGFlbCBCcsO8bmluZyAgPG1p
Y2hhZWwuYnJ1bmluZ0Bub2tpYS5jb20+CisKKyAgICAgICAgW1FUXVtXSzJdQWRkIChleHBlcmlt
ZW50YWwpIHZpZXdwb3J0IGluZm8gdmlldyB0byBNaW5pYnJvd3Nlci9xdC4KKyAgICAgICAgaHR0
cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTcyODkzCisKKyAgICAgICAgUmV2
aWV3ZWQgYnkgVG9yIEFybmUgVmVzdGLDuC4KKworICAgICAgICBUaGlzIHBhdGNoIGV4dGVuZHMg
UVF1aWNrV2ViVmlld0V4cGVyaW1lbnRhbCBieSBhIHByb3BlcnR5IG5hbWVkCisgICAgICAgIHZp
ZXdwb3J0SW5mbywgd2hpY2ggY29udGFpbnMgdGhlIHZpZXdwb3J0IHNjYWxhYmlsaXR5IGFuZAor
ICAgICAgICBsYXlvdXQgYW5kIGNvbnRlbnRzIHNpemUgaW5mb3JtYXRpb24uIFRoaXMgcHJvcGVy
dHkgaXMgZXhwb3NlZCB0bworICAgICAgICBRTUwgdGhyb3VnaCB0aGUgZXhwZXJpbWVudGFsIGV4
dGVuc2lvbiBmb3IgUVF1aWNrV2ViVmlldy4KKworICAgICAgICAqIE1pbmlCcm93c2VyL3F0L01p
bmlCcm93c2VyLnBybzoKKyAgICAgICAgKiBNaW5pQnJvd3Nlci9xdC9NaW5pQnJvd3Nlci5xcmM6
CisgICAgICAgICogTWluaUJyb3dzZXIvcXQvaWNvbnMvaW5mby5wbmc6IEFkZGVkLgorICAgICAg
ICAqIE1pbmlCcm93c2VyL3F0L3FtbC9Ccm93c2VyV2luZG93LnFtbDoKKyAgICAgICAgKiBNaW5p
QnJvd3Nlci9xdC9xbWwvVmlld3BvcnRJbmZvSXRlbS5xbWw6IEFkZGVkLgorCiAyMDExLTEyLTEz
ICBKw6Fub3MgQmFkaWNzICA8ZGljc2thQGdtYWlsLmNvbT4KIAogICAgICAgICBbTlJXVF0gSXQg
Y3Jhc2hlcyBpbnRlcm1pdHRlbnRseSB3aGVuIHRoZXJlIGFyZSBXZWJQcm9jZXNzIGNyYXNoZXMK
ZGlmZiAtLWdpdCBhL1Rvb2xzL01pbmlCcm93c2VyL3F0L01pbmlCcm93c2VyLnBybyBiL1Rvb2xz
L01pbmlCcm93c2VyL3F0L01pbmlCcm93c2VyLnBybwppbmRleCA4MjM3MjE3Li5jYmU3Nzk0IDEw
MDY0NAotLS0gYS9Ub29scy9NaW5pQnJvd3Nlci9xdC9NaW5pQnJvd3Nlci5wcm8KKysrIGIvVG9v
bHMvTWluaUJyb3dzZXIvcXQvTWluaUJyb3dzZXIucHJvCkBAIC0zMSw0ICszMSw1IEBAIFJFU09V
UkNFUyArPSBNaW5pQnJvd3Nlci5xcmMKIAogT1RIRVJfRklMRVMgKz0gXAogICAgIHFtbC9Ccm93
c2VyV2luZG93LnFtbCBcCi0gICAgcW1sL0l0ZW1TZWxlY3Rvci5xbWwKKyAgICBxbWwvSXRlbVNl
bGVjdG9yLnFtbCBcCisgICAgcW1sL1ZpZXdwb3J0SW5mb0l0ZW0ucW1sCmRpZmYgLS1naXQgYS9U
b29scy9NaW5pQnJvd3Nlci9xdC9NaW5pQnJvd3Nlci5xcmMgYi9Ub29scy9NaW5pQnJvd3Nlci9x
dC9NaW5pQnJvd3Nlci5xcmMKaW5kZXggYjdlYmY0NS4uMjY2NjgzZCAxMDA2NDQKLS0tIGEvVG9v
bHMvTWluaUJyb3dzZXIvcXQvTWluaUJyb3dzZXIucXJjCisrKyBiL1Rvb2xzL01pbmlCcm93c2Vy
L3F0L01pbmlCcm93c2VyLnFyYwpAQCAtMSw1ICsxLDYgQEAKIDxSQ0M+CiAgICAgPHFyZXNvdXJj
ZSBwcmVmaXg9Ii8iPgorICAgICAgICA8ZmlsZT5pY29ucy9pbmZvLnBuZzwvZmlsZT4KICAgICAg
ICAgPGZpbGU+aWNvbnMvbmV4dC5wbmc8L2ZpbGU+CiAgICAgICAgIDxmaWxlPmljb25zL3ByZXZp
b3VzLnBuZzwvZmlsZT4KICAgICAgICAgPGZpbGU+aWNvbnMvcmVmcmVzaC5wbmc8L2ZpbGU+CkBA
IC04LDYgKzksNyBAQAogICAgICAgICA8ZmlsZT5xbWwvQnJvd3NlcldpbmRvdy5xbWw8L2ZpbGU+
CiAgICAgICAgIDxmaWxlPnFtbC9JdGVtU2VsZWN0b3IucW1sPC9maWxlPgogICAgICAgICA8Zmls
ZT5xbWwvTW9ja1RvdWNoUG9pbnQucW1sPC9maWxlPgorICAgICAgICA8ZmlsZT5xbWwvVmlld3Bv
cnRJbmZvSXRlbS5xbWw8L2ZpbGU+CiAgICAgICAgIDxmaWxlPnVzZXJhZ2VudGxpc3QudHh0PC9m
aWxlPgogICAgIDwvcXJlc291cmNlPgogPC9SQ0M+CmRpZmYgLS1naXQgYS9Ub29scy9NaW5pQnJv
d3Nlci9xdC9pY29ucy9pbmZvLnBuZyBiL1Rvb2xzL01pbmlCcm93c2VyL3F0L2ljb25zL2luZm8u
cG5nCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAuLmRiNDgzZmYxMDBmMTRlNzljMWM2MTg1ZTE5YjMxZmUxNGZhZWRlOWYK
R0lUIGJpbmFyeSBwYXRjaApsaXRlcmFsIDM0MAp6Y21lQVNATj8ob2xIeWB1VkJxIWlhMHZwXlZq
I0BIMXwqTWMkKn40ZmpLeDlqUDdMZUwkLUQkfCpwal42VF5SbUAKejtEV3UmQ2omKHwzcF5yPTg1
cD5RTDcwKFkpKkswLUFiV3xZdVBnZylaWlFGQXZHM2xDbUk4JlljKUI9LVNlJC0pCnpXdj5ecnFY
X0dSXlFLRF5CbyN3bk9eNztuPSR5TDhSXk1OJDNqNUI2OVcyXylEPClRIUIqcys5RSZZYDxzQWNP
Kwp6dChMIXZRNXUjN0pJfGNBRVZkfFVTRlYjKkZLdClVWDM4dDxFVmc7YmNzX01yU21+WCghLXI0
THtjM1dKSHx8eDMKelhZJlZYd0gqZ0lgVX5zSjB6fDQ4Tmp7TEJwRX5hd2Y4bjApIVorUV54O0Aj
cUpEPUhqPn42bntwbU4xZ3coRl8kCno+UCFvKGJiMFM1Y2RSeUI2dVhGSDxOOH19KlRhN0JvVSp6
NXVYaVZaV01KIT42fXQrQS0yYV5Ld183Qnl7elhKfAplK2VXKXI5YHtBZHZ9TmxKKHNZNlRXQUpx
S2I2TXc8JjskVSVWU3VJcAoKbGl0ZXJhbCAwCkhjbVY/ZDAwMDAxCgpkaWZmIC0tZ2l0IGEvVG9v
bHMvTWluaUJyb3dzZXIvcXQvcW1sL0Jyb3dzZXJXaW5kb3cucW1sIGIvVG9vbHMvTWluaUJyb3dz
ZXIvcXQvcW1sL0Jyb3dzZXJXaW5kb3cucW1sCmluZGV4IGEyMjE1NTMuLjJkNmU2MjkgMTAwNjQ0
Ci0tLSBhL1Rvb2xzL01pbmlCcm93c2VyL3F0L3FtbC9Ccm93c2VyV2luZG93LnFtbAorKysgYi9U
b29scy9NaW5pQnJvd3Nlci9xdC9xbWwvQnJvd3NlcldpbmRvdy5xbWwKQEAgLTE2MCw2ICsxNjAs
MjUgQEAgUmVjdGFuZ2xlIHsKICAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAg
IH0KICAgICAgICAgICAgIH0KKworICAgICAgICAgICAgUmVjdGFuZ2xlIHsKKyAgICAgICAgICAg
ICAgICBpZDogdmlld3BvcnRJbmZvQnV0dG9uCisgICAgICAgICAgICAgICAgaGVpZ2h0OiBuYXZp
Z2F0aW9uQmFyLmhlaWdodCAtIDIKKyAgICAgICAgICAgICAgICB3aWR0aDogaGVpZ2h0CisgICAg
ICAgICAgICAgICAgY29sb3I6ICIjZWZlZmVmIgorCisgICAgICAgICAgICAgICAgSW1hZ2Ugewor
ICAgICAgICAgICAgICAgICAgICBhbmNob3JzLmNlbnRlckluOiBwYXJlbnQKKyAgICAgICAgICAg
ICAgICAgICAgc291cmNlOiAiLi4vaWNvbnMvaW5mby5wbmciCisgICAgICAgICAgICAgICAgfQor
CisgICAgICAgICAgICAgICAgTW91c2VBcmVhIHsKKyAgICAgICAgICAgICAgICAgICAgYW5jaG9y
cy5maWxsOiBwYXJlbnQKKyAgICAgICAgICAgICAgICAgICAgb25DbGlja2VkOiB7CisgICAgICAg
ICAgICAgICAgICAgICAgIHZpZXdwb3J0SW5mb0l0ZW0udmlzaWJsZSA9ICF2aWV3cG9ydEluZm9J
dGVtLnZpc2libGUKKyAgICAgICAgICAgICAgICAgICAgfQorICAgICAgICAgICAgICAgIH0KKyAg
ICAgICAgICAgIH0KICAgICAgICAgfQogICAgICAgICBSZWN0YW5nbGUgewogICAgICAgICAgICAg
Y29sb3I6ICJ3aGl0ZSIKQEAgLTIzNSw2ICsyNTQsMTggQEAgUmVjdGFuZ2xlIHsKICAgICAgICAg
ZXhwZXJpbWVudGFsLml0ZW1TZWxlY3RvcjogSXRlbVNlbGVjdG9yIHsgfQogICAgIH0KIAorICAg
IFZpZXdwb3J0SW5mb0l0ZW0geworICAgICAgICBpZDogdmlld3BvcnRJbmZvSXRlbQorICAgICAg
ICBhbmNob3JzIHsKKyAgICAgICAgICAgIHRvcDogbmF2aWdhdGlvbkJhci5ib3R0b20KKyAgICAg
ICAgICAgIGxlZnQ6IHBhcmVudC5sZWZ0CisgICAgICAgICAgICByaWdodDogcGFyZW50LnJpZ2h0
CisgICAgICAgICAgICBib3R0b206IHBhcmVudC5ib3R0b20KKyAgICAgICAgfQorICAgICAgICB2
aXNpYmxlOiBmYWxzZQorICAgICAgICB2aWV3cG9ydEluZm8gOiB3ZWJWaWV3LmV4cGVyaW1lbnRh
bC52aWV3cG9ydEluZm8KKyAgICB9CisKICAgICBLZXlzLm9uUHJlc3NlZDogewogICAgICAgICBp
ZiAoKChldmVudC5tb2RpZmllcnMgJiBRdC5Db250cm9sTW9kaWZpZXIpICYmIGV2ZW50LmtleSA9
PSBRdC5LZXlfTCkgfHwgZXZlbnQua2V5ID09IFF0LmtleV9GNikgewogICAgICAgICAgICAgZm9j
dXNBZGRyZXNzQmFyKCkKZGlmZiAtLWdpdCBhL1Rvb2xzL01pbmlCcm93c2VyL3F0L3FtbC9WaWV3
cG9ydEluZm9JdGVtLnFtbCBiL1Rvb2xzL01pbmlCcm93c2VyL3F0L3FtbC9WaWV3cG9ydEluZm9J
dGVtLnFtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi40MjNiNzBhCi0tLSAv
ZGV2L251bGwKKysrIGIvVG9vbHMvTWluaUJyb3dzZXIvcXQvcW1sL1ZpZXdwb3J0SW5mb0l0ZW0u
cW1sCkBAIC0wLDAgKzEsNjMgQEAKK2ltcG9ydCBRdFF1aWNrIDIuMAoraW1wb3J0IFF0V2ViS2l0
IDMuMAorCitSZWN0YW5nbGUgeworICAgIHByb3BlcnR5IHZhciB2aWV3cG9ydEluZm8KKworICAg
IGNvbG9yOiAiYmxhY2siCisgICAgb3BhY2l0eTogMC44CisKKyAgICBUZXh0IHsKKyAgICAgICAg
aWQ6IHZpZXdwb3J0SW5mb0xhYmVsCisgICAgICAgIHRleHQ6ICJWaWV3cG9ydCBJbmZvIgorICAg
ICAgICBjb2xvcjogIndoaXRlIgorICAgIH0KKyAgICBUZXh0IHsKKyAgICAgICAgaWQ6IGN1cnJl
bnRTY2FsZUxhYmVsCisgICAgICAgIGFuY2hvcnMudG9wOiB2aWV3cG9ydEluZm9MYWJlbC5ib3R0
b20KKyAgICAgICAgdGV4dDogIkN1cnJlbnQgc2NhbGU6ICIgKyB2aWV3cG9ydEluZm8uY3VycmVu
dFNjYWxlCisgICAgICAgIGNvbG9yOiAid2hpdGUiCisgICAgfQorICAgIFRleHQgeworICAgICAg
ICBpZDogaW5pdGlhbFNjYWxlTGFiZWwKKyAgICAgICAgYW5jaG9ycy50b3A6IGN1cnJlbnRTY2Fs
ZUxhYmVsLmJvdHRvbQorICAgICAgICB0ZXh0OiAiSW5pdGlhbCBzY2FsZTogIiArIHZpZXdwb3J0
SW5mby5pbml0aWFsU2NhbGUKKyAgICAgICAgY29sb3I6ICJ3aGl0ZSIKKyAgICB9CisgICAgVGV4
dCB7CisgICAgICAgIGlkOiBtaW5pbXVtU2NhbGVMYWJlbAorICAgICAgICBhbmNob3JzLnRvcDog
aW5pdGlhbFNjYWxlTGFiZWwuYm90dG9tCisgICAgICAgIHRleHQ6ICJNaW5pbXVtIHNjYWxlOiAi
ICsgdmlld3BvcnRJbmZvLm1pbmltdW1TY2FsZQorICAgICAgICBjb2xvcjogIndoaXRlIgorICAg
IH0KKyAgICBUZXh0IHsKKyAgICAgICAgaWQ6IG1heGltdW1TY2FsZUxhYmVsCisgICAgICAgIGFu
Y2hvcnMudG9wOiBtaW5pbXVtU2NhbGVMYWJlbC5ib3R0b20KKyAgICAgICAgdGV4dDogIk1heGlt
dW0gc2NhbGU6ICIgKyB2aWV3cG9ydEluZm8ubWF4aW11bVNjYWxlCisgICAgICAgIGNvbG9yOiAi
d2hpdGUiCisgICAgfQorICAgIFRleHQgeworICAgICAgICBpZDogZGV2aWNlUGl4ZWxSYXRpb0xh
YmVsCisgICAgICAgIGFuY2hvcnMudG9wOiBtYXhpbXVtU2NhbGVMYWJlbC5ib3R0b20KKyAgICAg
ICAgdGV4dDogIkRldmljZSBwaXhlbCByYXRpb246ICIgKyB2aWV3cG9ydEluZm8uZGV2aWNlUGl4
ZWxSYXRpbworICAgICAgICBjb2xvcjogIndoaXRlIgorICAgIH0KKyAgICBUZXh0IHsKKyAgICAg
ICAgaWQ6IGNvbnRlbnRzU2l6ZUxhYmVsCisgICAgICAgIGFuY2hvcnMudG9wOiBkZXZpY2VQaXhl
bFJhdGlvTGFiZWwuYm90dG9tCisgICAgICAgIHRleHQ6ICJDb250ZW50cyBzaXplOiAoIiArIHZp
ZXdwb3J0SW5mby5jb250ZW50c1NpemUud2lkdGggKyAieCIgKyB2aWV3cG9ydEluZm8uY29udGVu
dHNTaXplLmhlaWdodCArICIpIgorICAgICAgICBjb2xvcjogIndoaXRlIgorICAgIH0KKyAgICBU
ZXh0IHsKKyAgICAgICAgaWQ6IGxheW91dFNpemVMYWJlbAorICAgICAgICBhbmNob3JzLnRvcDog
Y29udGVudHNTaXplTGFiZWwuYm90dG9tCisgICAgICAgIHRleHQ6ICJWaWV3cG9ydCBsYXlvdXQg
c2l6ZTogKCIgKyB2aWV3cG9ydEluZm8ubGF5b3V0U2l6ZS53aWR0aCArICJ4IiArIHZpZXdwb3J0
SW5mby5sYXlvdXRTaXplLmhlaWdodCArICIpIgorICAgICAgICBjb2xvcjogIndoaXRlIgorICAg
IH0KKyAgICBUZXh0IHsKKyAgICAgICAgaWQ6IHNjYWxhYmxlTGFiZWwKKyAgICAgICAgYW5jaG9y
cy50b3A6IGxheW91dFNpemVMYWJlbC5ib3R0b20KKyAgICAgICAgdGV4dDogIlZpZXcgIiArICh2
aWV3cG9ydEluZm8uaXNTY2FsYWJsZSA/ICJpcyAiIDogImlzIG5vdCAiICkgKyAic2NhbGFibGUu
IgorICAgICAgICBjb2xvcjogIndoaXRlIgorICAgIH0KK30KLS0gCjEuNy40LjEKCg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>119181</attachid>
            <date>2011-12-14 02:14:57 -0800</date>
            <delta_ts>2011-12-16 03:40:24 -0800</delta_ts>
            <desc>Updated patch.</desc>
            <filename>0001-QT-WK2-Add-experimental-viewport-attributes-view-to-.patch</filename>
            <type>text/plain</type>
            <size>30215</size>
            <attacher name="Michael Brüning">michael.bruning</attacher>
            
              <data encoding="base64">RnJvbSAwOGNkZTYyMTdhM2VjYzNjOWU4OTMyOWIzNTE0OGMxNjc3YTM0M2EwIE1vbiBTZXAgMTcg
MDA6MDA6MDAgMjAwMQpGcm9tOiBNaWNoYWVsIEJydW5pbmcgPG1pY2hhZWwuYnJ1bmluZ0Bub2tp
YS5jb20+CkRhdGU6IFRodSwgMjQgTm92IDIwMTEgMTc6MTg6MDAgKzAxMDAKU3ViamVjdDogW1BB
VENIXSBbUVRdW1dLMl1BZGQgKGV4cGVyaW1lbnRhbCkgdmlld3BvcnQgYXR0cmlidXRlcyB2aWV3
IHRvIE1pbmlicm93c2VyL3F0CgpodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/
aWQ9NzI4OTMKClJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgoKVGhpcyBleHRlbmRzIFFRdWlj
a1dlYlZpZXdFeHBlcmltZW50YWwgYnkgYSBwcm9wZXJ0eSBuYW1lZAp2aWV3cG9ydEF0dHJpYnV0
ZXMsIHdoaWNoIGNvbnRhaW5zIHRoZSB2aWV3cG9ydCBzY2FsYWJpbGl0eSBhbmQKbGF5b3V0IHNp
emUgaW5mb3JtYXRpb24uIFRoaXMgcHJvcGVydHkgaXMgZXhwb3NlZCB0byBRTUwgdGhyb3VnaAp0
aGUgZXhwZXJpbWVudGFsIGV4dGVuc2lvbiBmb3IgUVF1aWNrV2ViVmlldy4KClNvdXJjZToKCiog
U291cmNlL3F0d2Via2l0LWV4cG9ydC5tYXA6CgpTb3VyY2UvV2ViS2l0L3F0OgoKKiBkZWNsYXJh
dGlxdmUvZXhwZXJpbWVudGFsL3BsdWdpbi5jcHA6CgpTb3VyY2UvV2ViS2l0MjoKCiogVGFyZ2V0
LnByaToKKiBVSVByb2Nlc3MvQVBJL3F0L3FxdWlja3dlYnZpZXcuY3BwOgooUVF1aWNrV2ViVmll
d1ByaXZhdGU6OmRpZENoYW5nZUNvbnRlbnRzU2l6ZSk6CihRUXVpY2tXZWJWaWV3UHJpdmF0ZTo6
Y29tcHV0ZVZpZXdwb3J0Q29uc3RyYWludHMpOgooUVF1aWNrV2ViVmlld1ByaXZhdGU6OlBvc3RU
cmFuc2l0aW9uU3RhdGU6OmFwcGx5KTogQWRkZWQgYXBwbHlpbmcKY29udGVudHNTaXplIHRvIHZp
ZXdwb3J0SW5mby4KKFFRdWlja1dlYlZpZXdFeHBlcmltZW50YWw6OlFRdWlja1dlYlZpZXdFeHBl
cmltZW50YWwpOgooUVF1aWNrV2ViVmlld0V4cGVyaW1lbnRhbDo6dmlld3BvcnRJbmZvKToKKiBV
SVByb2Nlc3MvQVBJL3F0L3FxdWlja3dlYnZpZXdfcC5oOgoqIFVJUHJvY2Vzcy9BUEkvcXQvcXF1
aWNrd2Vidmlld19wX3AuaDogTW92ZWQgUG9zdFRyYW5zaXRpb25TdGF0ZTo6YXBwbHkKdG8gcXF1
aWNrd2Vidmlldy5jcHAuIEFkZGVkIGZyaWVuZCBRV2ViVmlld3BvcnRJbmZvLgoqIFVJUHJvY2Vz
cy9BUEkvcXQvcXdlYnZpZXdwb3J0aW5mby5jcHA6IEFkZGVkLgooUVdlYlZpZXdwb3J0SW5mbzo6
UVdlYlZpZXdwb3J0SW5mbyk6CihRV2ViVmlld3BvcnRJbmZvOjp+UVdlYlZpZXdwb3J0SW5mbyk6
CihRV2ViVmlld3BvcnRJbmZvOjpjb250ZW50c1NpemUpOgooUVdlYlZpZXdwb3J0SW5mbzo6Y3Vy
cmVudFNjYWxlKToKKFFXZWJWaWV3cG9ydEluZm86OmRldmljZVBpeGVsUmF0aW8pOgooUVdlYlZp
ZXdwb3J0SW5mbzo6aW5pdGlhbFNjYWxlKToKKFFXZWJWaWV3cG9ydEluZm86Om1pbmltdW1TY2Fs
ZSk6CihRV2ViVmlld3BvcnRJbmZvOjptYXhpbXVtU2NhbGUpOgooUVdlYlZpZXdwb3J0SW5mbzo6
aXNTY2FsYWJsZSk6CihRV2ViVmlld3BvcnRJbmZvOjpsYXlvdXRTaXplKToKKFFXZWJWaWV3cG9y
dEluZm86OmRpZFVwZGF0ZUNvbnRlbnRzU2l6ZSk6CihRV2ViVmlld3BvcnRJbmZvOjpkaWRVcGRh
dGVDdXJyZW50U2NhbGUpOgooUVdlYlZpZXdwb3J0SW5mbzo6ZGlkVXBkYXRlVmlld3BvcnRDb25z
dHJhaW50cyk6CiogVUlQcm9jZXNzL0FQSS9xdC9xd2Vidmlld3BvcnRpbmZvX3AuaDogQWRkZWQu
CiogVUlQcm9jZXNzL3F0L1F0Vmlld3BvcnRJbnRlcmFjdGlvbkVuZ2luZS5oOgooV2ViS2l0OjpR
dFZpZXdwb3J0SW50ZXJhY3Rpb25FbmdpbmU6OkNvbnN0cmFpbnRzOjpDb25zdHJhaW50cyk6IEFk
ZGVkIGxheW91dFNpemUuCihXZWJLaXQ6OlF0Vmlld3BvcnRJbnRlcmFjdGlvbkVuZ2luZTo6Y29u
c3RyYWludHMpOiBBZGRlZCBwcm9wZXJ0eSB0byBhY2Nlc3MgbV9jb250cmFpbnRzLgoKVG9vbHM6
CgoqIE1pbmlCcm93c2VyL3F0L01pbmlCcm93c2VyLnBybzoKKiBNaW5pQnJvd3Nlci9xdC9NaW5p
QnJvd3Nlci5xcmM6CiogTWluaUJyb3dzZXIvcXQvaWNvbnMvaW5mby5wbmc6IEFkZGVkLgoqIE1p
bmlCcm93c2VyL3F0L3FtbC9Ccm93c2VyV2luZG93LnFtbDoKKiBNaW5pQnJvd3Nlci9xdC9xbWwv
Vmlld3BvcnRJbmZvSXRlbS5xbWw6IEFkZGVkLgotLS0KIENoYW5nZUxvZyAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgICAxNCArKysKIFNvdXJjZS9XZWJLaXQvcXQv
Q2hhbmdlTG9nICAgICAgICAgICAgICAgICAgICAgICAgIHwgICAxNCArKysKIC4uLi9XZWJLaXQv
cXQvZGVjbGFyYXRpdmUvZXhwZXJpbWVudGFsL3BsdWdpbi5jcHAgIHwgICAgMyArCiBTb3VyY2Uv
V2ViS2l0Mi9DaGFuZ2VMb2cgICAgICAgICAgICAgICAgICAgICAgICAgICB8ICAgNDIgKysrKysr
KysKIFNvdXJjZS9XZWJLaXQyL1RhcmdldC5wcmkgICAgICAgICAgICAgICAgICAgICAgICAgIHwg
ICAgMiArCiBTb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJL3F0L3FxdWlja3dlYnZpZXcuY3Bw
ICB8ICAgMzEgKysrKysrCiBTb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJL3F0L3FxdWlja3dl
YnZpZXdfcC5oICB8ICAgIDUgKwogLi4uL1dlYktpdDIvVUlQcm9jZXNzL0FQSS9xdC9xcXVpY2t3
ZWJ2aWV3X3BfcC5oICAgfCAgIDE3ICstLS0KIC4uLi9XZWJLaXQyL1VJUHJvY2Vzcy9BUEkvcXQv
cXdlYnZpZXdwb3J0aW5mby5jcHAgIHwgIDExMCArKysrKysrKysrKysrKysrKysrKwogLi4uL1dl
YktpdDIvVUlQcm9jZXNzL0FQSS9xdC9xd2Vidmlld3BvcnRpbmZvX3AuaCAgfCAgIDc0ICsrKysr
KysrKysrKysKIC4uLi9VSVByb2Nlc3MvcXQvUXRWaWV3cG9ydEludGVyYWN0aW9uRW5naW5lLmgg
ICAgIHwgICAgMyArCiBTb3VyY2UvcXR3ZWJraXQtZXhwb3J0Lm1hcCAgICAgICAgICAgICAgICAg
ICAgICAgICB8ICAgIDMgKwogVG9vbHMvQ2hhbmdlTG9nICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgfCAgIDE4ICsrKwogVG9vbHMvTWluaUJyb3dzZXIvcXQvTWluaUJyb3dzZXIu
cHJvICAgICAgICAgICAgICAgfCAgICAzICstCiBUb29scy9NaW5pQnJvd3Nlci9xdC9NaW5pQnJv
d3Nlci5xcmMgICAgICAgICAgICAgICB8ICAgIDIgKwogVG9vbHMvTWluaUJyb3dzZXIvcXQvaWNv
bnMvaW5mby5wbmcgICAgICAgICAgICAgICAgfCAgQmluIDAgLT4gMzQwIGJ5dGVzCiBUb29scy9N
aW5pQnJvd3Nlci9xdC9xbWwvQnJvd3NlcldpbmRvdy5xbWwgICAgICAgICB8ICAgMzEgKysrKysr
CiBUb29scy9NaW5pQnJvd3Nlci9xdC9xbWwvVmlld3BvcnRJbmZvSXRlbS5xbWwgICAgICB8ICAg
NjMgKysrKysrKysrKysKIDE4IGZpbGVzIGNoYW5nZWQsIDQyMCBpbnNlcnRpb25zKCspLCAxNSBk
ZWxldGlvbnMoLSkKIGNyZWF0ZSBtb2RlIDEwMDY0NCBTb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3Mv
QVBJL3F0L3F3ZWJ2aWV3cG9ydGluZm8uY3BwCiBjcmVhdGUgbW9kZSAxMDA2NDQgU291cmNlL1dl
YktpdDIvVUlQcm9jZXNzL0FQSS9xdC9xd2Vidmlld3BvcnRpbmZvX3AuaAogY3JlYXRlIG1vZGUg
MTAwNjQ0IFRvb2xzL01pbmlCcm93c2VyL3F0L2ljb25zL2luZm8ucG5nCiBjcmVhdGUgbW9kZSAx
MDA2NDQgVG9vbHMvTWluaUJyb3dzZXIvcXQvcW1sL1ZpZXdwb3J0SW5mb0l0ZW0ucW1sCgpkaWZm
IC0tZ2l0IGEvQ2hhbmdlTG9nIGIvQ2hhbmdlTG9nCmluZGV4IGE5YTM3ZjEuLjEyYTcyNDQgMTAw
NjQ0Ci0tLSBhL0NoYW5nZUxvZworKysgYi9DaGFuZ2VMb2cKQEAgLTEsMyArMSwxNyBAQAorMjAx
MS0xMS0yNCAgTWljaGFlbCBCcsO8bmluZyAgPG1pY2hhZWwuYnJ1bmluZ0Bub2tpYS5jb20+CisK
KyAgICAgICAgW1FUXVtXSzJdQWRkIChleHBlcmltZW50YWwpIHZpZXdwb3J0IGluZm8gdmlldyB0
byBNaW5pYnJvd3Nlci9xdC4KKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19i
dWcuY2dpP2lkPTcyODkzCisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisK
KyAgICAgICAgVGhpcyBwYXRjaCBleHRlbmRzIFFRdWlja1dlYlZpZXdFeHBlcmltZW50YWwgYnkg
YSBwcm9wZXJ0eSBuYW1lZAorICAgICAgICB2aWV3cG9ydEluZm8sIHdoaWNoIGNvbnRhaW5zIHRo
ZSB2aWV3cG9ydCBzY2FsYWJpbGl0eSBhbmQKKyAgICAgICAgbGF5b3V0IGFuZCBjb250ZW50cyBz
aXplIGluZm9ybWF0aW9uLiBUaGlzIHByb3BlcnR5IGlzIGV4cG9zZWQgdG8KKyAgICAgICAgUU1M
IHRocm91Z2ggdGhlIGV4cGVyaW1lbnRhbCBleHRlbnNpb24gZm9yIFFRdWlja1dlYlZpZXcuCisK
KyAgICAgICAgKiBTb3VyY2UvcXR3ZWJraXQtZXhwb3J0Lm1hcDoKKwogMjAxMS0xMi0xNCAgQWxl
eGFuZGVyIEbDpnLDuHkgIDxhbGV4YW5kZXIuZmFlcm95QG5va2lhLmNvbT4KIAogICAgICAgICBb
UXRdIERldmljZU9yaWVudGF0aW9uQ2xpZW50TW9ja1F0IHNob3VsZCBiZSByZW1vdmVkIGluIGZh
dm9yIG9mIERldmljZU9yaWVudGF0aW9uQ2xpZW50TW9jawpkaWZmIC0tZ2l0IGEvU291cmNlL1dl
YktpdC9xdC9DaGFuZ2VMb2cgYi9Tb3VyY2UvV2ViS2l0L3F0L0NoYW5nZUxvZwppbmRleCA0ODJh
YzEzLi5iNmYyZGI0IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L3F0L0NoYW5nZUxvZworKysg
Yi9Tb3VyY2UvV2ViS2l0L3F0L0NoYW5nZUxvZwpAQCAtMSwzICsxLDE3IEBACisyMDExLTExLTI0
ICBNaWNoYWVsIEJyw7xuaW5nICA8bWljaGFlbC5icnVuaW5nQG5va2lhLmNvbT4KKworICAgICAg
ICBbUVRdW1dLMl1BZGQgKGV4cGVyaW1lbnRhbCkgdmlld3BvcnQgaW5mbyB2aWV3IHRvIE1pbmli
cm93c2VyL3F0LgorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/
aWQ9NzI4OTMKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAg
ICBUaGlzIHBhdGNoIGV4dGVuZHMgUVF1aWNrV2ViVmlld0V4cGVyaW1lbnRhbCBieSBhIHByb3Bl
cnR5IG5hbWVkCisgICAgICAgIHZpZXdwb3J0SW5mbywgd2hpY2ggY29udGFpbnMgdGhlIHZpZXdw
b3J0IHNjYWxhYmlsaXR5IGFuZAorICAgICAgICBsYXlvdXQgYW5kIGNvbnRlbnRzIHNpemUgaW5m
b3JtYXRpb24uIFRoaXMgcHJvcGVydHkgaXMgZXhwb3NlZCB0bworICAgICAgICBRTUwgdGhyb3Vn
aCB0aGUgZXhwZXJpbWVudGFsIGV4dGVuc2lvbiBmb3IgUVF1aWNrV2ViVmlldy4KKworICAgICAg
ICAqIGRlY2xhcmF0aXZlL2V4cGVyaW1lbnRhbC9wbHVnaW4uY3BwOgorCiAyMDExLTEyLTE0ICBB
bGV4YW5kZXIgRsOmcsO4eSAgPGFsZXhhbmRlci5mYWVyb3lAbm9raWEuY29tPgogCiAgICAgICAg
IFtRdF0gRGV2aWNlT3JpZW50YXRpb25DbGllbnRNb2NrUXQgc2hvdWxkIGJlIHJlbW92ZWQgaW4g
ZmF2b3Igb2YgRGV2aWNlT3JpZW50YXRpb25DbGllbnRNb2NrCmRpZmYgLS1naXQgYS9Tb3VyY2Uv
V2ViS2l0L3F0L2RlY2xhcmF0aXZlL2V4cGVyaW1lbnRhbC9wbHVnaW4uY3BwIGIvU291cmNlL1dl
YktpdC9xdC9kZWNsYXJhdGl2ZS9leHBlcmltZW50YWwvcGx1Z2luLmNwcAppbmRleCAzYjM5YTJl
Li5kODgxZWI4IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L3F0L2RlY2xhcmF0aXZlL2V4cGVy
aW1lbnRhbC9wbHVnaW4uY3BwCisrKyBiL1NvdXJjZS9XZWJLaXQvcXQvZGVjbGFyYXRpdmUvZXhw
ZXJpbWVudGFsL3BsdWdpbi5jcHAKQEAgLTIwLDYgKzIwLDcgQEAKICNpbmNsdWRlICJxcXVpY2t3
ZWJwYWdlX3AuaCIKICNpbmNsdWRlICJxcXVpY2t3ZWJ2aWV3X3AuaCIKICNpbmNsdWRlICJxd2Vi
ZG93bmxvYWRpdGVtX3AuaCIKKyNpbmNsdWRlICJxd2Vidmlld3BvcnRpbmZvX3AuaCIKIAogI2lu
Y2x1ZGUgInF3ZWJuYXZpZ2F0aW9uaGlzdG9yeV9wLmgiCiAKQEAgLTQ5LDYgKzUwLDggQEAgcHVi
bGljOgogICAgICAgICBxbWxSZWdpc3RlckV4dGVuZGVkVHlwZTxRUXVpY2tXZWJWaWV3LCBRUXVp
Y2tXZWJWaWV3RXhwZXJpbWVudGFsRXh0ZW5zaW9uPih1cmksIDMsIDAsICJXZWJWaWV3Iik7CiAg
ICAgICAgIHFtbFJlZ2lzdGVyVW5jcmVhdGFibGVUeXBlPFFRdWlja1dlYlZpZXdFeHBlcmltZW50
YWw+KHVyaSwgMywgMCwgIlFRdWlja1dlYlZpZXdFeHBlcmltZW50YWwiLAogICAgICAgICAgICAg
UU9iamVjdDo6dHIoIkNhbm5vdCBjcmVhdGUgc2VwYXJhdGUgaW5zdGFuY2Ugb2YgUVF1aWNrV2Vi
Vmlld0V4cGVyaW1lbnRhbCIpKTsKKyAgICAgICAgcW1sUmVnaXN0ZXJVbmNyZWF0YWJsZVR5cGU8
UVdlYlZpZXdwb3J0SW5mbz4odXJpLCAzLCAwLCAiUVdlYlZpZXdwb3J0SW5mbyIsCisgICAgICAg
ICAgICBRT2JqZWN0Ojp0cigiQ2Fubm90IGNyZWF0ZSBzZXBhcmF0ZSBpbnN0YW5jZSBvZiBRV2Vi
Vmlld3BvcnRJbmZvIikpOwogICAgIH0KIH07CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQy
L0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJLaXQyL0NoYW5nZUxvZwppbmRleCAyZDNkMGYxLi4zNmE2
ODRhIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dl
YktpdDIvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsNDUgQEAKKzIwMTEtMTEtMjQgIE1pY2hhZWwgQnLD
vG5pbmcgIDxtaWNoYWVsLmJydW5pbmdAbm9raWEuY29tPgorCisgICAgICAgIFtRVF1bV0syXUFk
ZCAoZXhwZXJpbWVudGFsKSB2aWV3cG9ydCBpbmZvIHZpZXcgdG8gTWluaWJyb3dzZXIvcXQuCisg
ICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD03Mjg5MworCisg
ICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIFRoaXMgcGF0Y2gg
ZXh0ZW5kcyBRUXVpY2tXZWJWaWV3RXhwZXJpbWVudGFsIGJ5IGEgcHJvcGVydHkgbmFtZWQKKyAg
ICAgICAgdmlld3BvcnRJbmZvLCB3aGljaCBjb250YWlucyB0aGUgdmlld3BvcnQgc2NhbGFiaWxp
dHkgYW5kCisgICAgICAgIGxheW91dCBhbmQgY29udGVudHMgc2l6ZSBpbmZvcm1hdGlvbi4gVGhp
cyBwcm9wZXJ0eSBpcyBleHBvc2VkIHRvCisgICAgICAgIFFNTCB0aHJvdWdoIHRoZSBleHBlcmlt
ZW50YWwgZXh0ZW5zaW9uIGZvciBRUXVpY2tXZWJWaWV3LgorCisgICAgICAgICogVGFyZ2V0LnBy
aToKKyAgICAgICAgKiBVSVByb2Nlc3MvQVBJL3F0L3FxdWlja3dlYnZpZXcuY3BwOgorICAgICAg
ICAoUVF1aWNrV2ViVmlld1ByaXZhdGU6OmRpZENoYW5nZUNvbnRlbnRzU2l6ZSk6CisgICAgICAg
IChRUXVpY2tXZWJWaWV3UHJpdmF0ZTo6Y29tcHV0ZVZpZXdwb3J0Q29uc3RyYWludHMpOgorICAg
ICAgICAoUVF1aWNrV2ViVmlld1ByaXZhdGU6OlBvc3RUcmFuc2l0aW9uU3RhdGU6OmFwcGx5KTog
QWRkZWQgYXBwbHlpbmcKKyAgICAgICAgY29udGVudHNTaXplIHRvIHZpZXdwb3J0SW5mby4KKyAg
ICAgICAgKFFRdWlja1dlYlZpZXdFeHBlcmltZW50YWw6OlFRdWlja1dlYlZpZXdFeHBlcmltZW50
YWwpOgorICAgICAgICAoUVF1aWNrV2ViVmlld0V4cGVyaW1lbnRhbDo6dmlld3BvcnRJbmZvKToK
KyAgICAgICAgKiBVSVByb2Nlc3MvQVBJL3F0L3FxdWlja3dlYnZpZXdfcC5oOgorICAgICAgICAq
IFVJUHJvY2Vzcy9BUEkvcXQvcXF1aWNrd2Vidmlld19wX3AuaDogTW92ZWQgUG9zdFRyYW5zaXRp
b25TdGF0ZTo6YXBwbHkKKyAgICAgICAgdG8gcXF1aWNrd2Vidmlldy5jcHAuIEFkZGVkIGZyaWVu
ZCBRV2ViVmlld3BvcnRJbmZvLgorICAgICAgICAqIFVJUHJvY2Vzcy9BUEkvcXQvcXdlYnZpZXdw
b3J0aW5mby5jcHA6IEFkZGVkLgorICAgICAgICAoUVdlYlZpZXdwb3J0SW5mbzo6UVdlYlZpZXdw
b3J0SW5mbyk6CisgICAgICAgIChRV2ViVmlld3BvcnRJbmZvOjp+UVdlYlZpZXdwb3J0SW5mbyk6
CisgICAgICAgIChRV2ViVmlld3BvcnRJbmZvOjpjb250ZW50c1NpemUpOgorICAgICAgICAoUVdl
YlZpZXdwb3J0SW5mbzo6Y3VycmVudFNjYWxlKToKKyAgICAgICAgKFFXZWJWaWV3cG9ydEluZm86
OmRldmljZVBpeGVsUmF0aW8pOgorICAgICAgICAoUVdlYlZpZXdwb3J0SW5mbzo6aW5pdGlhbFNj
YWxlKToKKyAgICAgICAgKFFXZWJWaWV3cG9ydEluZm86Om1pbmltdW1TY2FsZSk6CisgICAgICAg
IChRV2ViVmlld3BvcnRJbmZvOjptYXhpbXVtU2NhbGUpOgorICAgICAgICAoUVdlYlZpZXdwb3J0
SW5mbzo6aXNTY2FsYWJsZSk6CisgICAgICAgIChRV2ViVmlld3BvcnRJbmZvOjpsYXlvdXRTaXpl
KToKKyAgICAgICAgKFFXZWJWaWV3cG9ydEluZm86OmRpZFVwZGF0ZUNvbnRlbnRzU2l6ZSk6Cisg
ICAgICAgIChRV2ViVmlld3BvcnRJbmZvOjpkaWRVcGRhdGVDdXJyZW50U2NhbGUpOgorICAgICAg
ICAoUVdlYlZpZXdwb3J0SW5mbzo6ZGlkVXBkYXRlVmlld3BvcnRDb25zdHJhaW50cyk6CisgICAg
ICAgICogVUlQcm9jZXNzL0FQSS9xdC9xd2Vidmlld3BvcnRpbmZvX3AuaDogQWRkZWQuCisgICAg
ICAgICogVUlQcm9jZXNzL3F0L1F0Vmlld3BvcnRJbnRlcmFjdGlvbkVuZ2luZS5oOgorICAgICAg
ICAoV2ViS2l0OjpRdFZpZXdwb3J0SW50ZXJhY3Rpb25FbmdpbmU6OkNvbnN0cmFpbnRzOjpDb25z
dHJhaW50cyk6IEFkZGVkIGxheW91dFNpemUuCisgICAgICAgIChXZWJLaXQ6OlF0Vmlld3BvcnRJ
bnRlcmFjdGlvbkVuZ2luZTo6Y29uc3RyYWludHMpOiBBZGRlZCBwcm9wZXJ0eSB0byBhY2Nlc3Mg
bV9jb250cmFpbnRzLgorCiAyMDExLTEyLTEzICBHdXN0YXZvIE5vcm9uaGEgU2lsdmEgIDxnbnNA
Z25vbWUub3JnPgogCiAgICAgICAgIFVucmV2aWV3ZWQgYnVpbGQgZml4LgpkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYktpdDIvVGFyZ2V0LnByaSBiL1NvdXJjZS9XZWJLaXQyL1RhcmdldC5wcmkKaW5k
ZXggN2ViMDhjZC4uMjAwNjdiZSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvVGFyZ2V0LnBy
aQorKysgYi9Tb3VyY2UvV2ViS2l0Mi9UYXJnZXQucHJpCkBAIC0xODQsNiArMTg0LDcgQEAgSEVB
REVSUyArPSBcCiAgICAgVUlQcm9jZXNzL0FQSS9xdC9xd2VibmF2aWdhdGlvbmhpc3RvcnlfcF9w
LmggXAogICAgIFVJUHJvY2Vzcy9BUEkvcXQvcXF1aWNrd2Vidmlld19wLmggXAogICAgIFVJUHJv
Y2Vzcy9BUEkvcXQvcXF1aWNrd2Vidmlld19wX3AuaCBcCisgICAgVUlQcm9jZXNzL0FQSS9xdC9x
d2Vidmlld3BvcnRpbmZvX3AuaCBcCiAgICAgVUlQcm9jZXNzL0F1dGhlbnRpY2F0aW9uL0F1dGhl
bnRpY2F0aW9uQ2hhbGxlbmdlUHJveHkuaCBcCiAgICAgVUlQcm9jZXNzL0F1dGhlbnRpY2F0aW9u
L0F1dGhlbnRpY2F0aW9uRGVjaXNpb25MaXN0ZW5lci5oIFwKICAgICBVSVByb2Nlc3MvQXV0aGVu
dGljYXRpb24vV2ViQ3JlZGVudGlhbC5oIFwKQEAgLTUwMyw2ICs1MDQsNyBAQCBTT1VSQ0VTICs9
IFwKICAgICBVSVByb2Nlc3MvQVBJL3F0L3F3ZWJuYXZpZ2F0aW9uaGlzdG9yeS5jcHAgXAogICAg
IFVJUHJvY2Vzcy9BUEkvcXQvcXF1aWNrd2Vidmlldy5jcHAgXAogICAgIFVJUHJvY2Vzcy9BUEkv
cXQvcXdlYnByZWZlcmVuY2VzLmNwcCBcCisgICAgVUlQcm9jZXNzL0FQSS9xdC9xd2Vidmlld3Bv
cnRpbmZvLmNwcCBcCiAgICAgVUlQcm9jZXNzL0F1dGhlbnRpY2F0aW9uL0F1dGhlbnRpY2F0aW9u
Q2hhbGxlbmdlUHJveHkuY3BwIFwKICAgICBVSVByb2Nlc3MvQXV0aGVudGljYXRpb24vQXV0aGVu
dGljYXRpb25EZWNpc2lvbkxpc3RlbmVyLmNwcCBcCiAgICAgVUlQcm9jZXNzL0F1dGhlbnRpY2F0
aW9uL1dlYkNyZWRlbnRpYWwuY3BwIFwKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQyL1VJUHJv
Y2Vzcy9BUEkvcXQvcXF1aWNrd2Vidmlldy5jcHAgYi9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3Mv
QVBJL3F0L3FxdWlja3dlYnZpZXcuY3BwCmluZGV4IGJiYzE4ODMuLjMwYjcyM2UgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9BUEkvcXQvcXF1aWNrd2Vidmlldy5jcHAKKysr
IGIvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL0FQSS9xdC9xcXVpY2t3ZWJ2aWV3LmNwcApAQCAt
MzMsNiArMzMsNyBAQAogI2luY2x1ZGUgInF3ZWJuYXZpZ2F0aW9uaGlzdG9yeV9wLmgiCiAjaW5j
bHVkZSAicXdlYm5hdmlnYXRpb25oaXN0b3J5X3BfcC5oIgogI2luY2x1ZGUgInF3ZWJwcmVmZXJl
bmNlc19wX3AuaCIKKyNpbmNsdWRlICJxd2Vidmlld3BvcnRpbmZvX3AuaCIKIAogI2luY2x1ZGUg
PEphdmFTY3JpcHRDb3JlL0luaXRpYWxpemVUaHJlYWRpbmcuaD4KICNpbmNsdWRlIDxRRmlsZURp
YWxvZz4KQEAgLTE2Nyw2ICsxNjgsNyBAQCB2b2lkIFFRdWlja1dlYlZpZXdQcml2YXRlOjpfcV9y
ZXN1bWUoKQogCiB2b2lkIFFRdWlja1dlYlZpZXdQcml2YXRlOjpkaWRDaGFuZ2VDb250ZW50c1Np
emUoY29uc3QgUVNpemUmIG5ld1NpemUpCiB7CisgICAgUV9RKFFRdWlja1dlYlZpZXcpOwogICAg
IGlmICh1c2VUcmFkaXRpb25hbERlc2t0b3BCZWhhdmlvdXIpCiAgICAgICAgIHJldHVybjsKIApA
QCAtMTc4LDYgKzE4MCw4IEBAIHZvaWQgUVF1aWNrV2ViVmlld1ByaXZhdGU6OmRpZENoYW5nZUNv
bnRlbnRzU2l6ZShjb25zdCBRU2l6ZSYgbmV3U2l6ZSkKIAogICAgIHBhZ2VWaWV3LT5zZXRXaWR0
aChuZXdTaXplLndpZHRoKCkpOwogICAgIHBhZ2VWaWV3LT5zZXRIZWlnaHQobmV3U2l6ZS5oZWln
aHQoKSk7CisKKyAgICBxLT5tX2V4cGVyaW1lbnRhbC0+dmlld3BvcnRJbmZvKCktPmRpZFVwZGF0
ZUNvbnRlbnRzU2l6ZSgpOwogfQogCiB2b2lkIFFRdWlja1dlYlZpZXdQcml2YXRlOjpkaWRDaGFu
Z2VWaWV3cG9ydFByb3BlcnRpZXMoY29uc3QgV2ViQ29yZTo6Vmlld3BvcnRBcmd1bWVudHMmIGFy
Z3MpCkBAIC0yMzIsNiArMjM2LDggQEAgdm9pZCBRUXVpY2tXZWJWaWV3UHJpdmF0ZTo6dXBkYXRl
VmlzaWJsZUNvbnRlbnRSZWN0KCkKICAgICBjb25zdCBRUmVjdEYgdmlzaWJsZVJlY3RJblBhZ2VW
aWV3Q29vcmRpbmF0ZXMgPSBxLT5tYXBSZWN0VG9JdGVtKHBhZ2VWaWV3LmRhdGEoKSwgcS0+Ym91
bmRpbmdSZWN0KCkpLmludGVyc2VjdGVkKHBhZ2VWaWV3LT5ib3VuZGluZ1JlY3QoKSk7CiAgICAg
ZmxvYXQgc2NhbGUgPSBwYWdlVmlldy0+c2NhbGUoKTsKICAgICBwYWdlUHJveHktPnNldFZpc2li
bGVDb250ZW50UmVjdEFuZFNjYWxlKHZpc2libGVSZWN0SW5QYWdlVmlld0Nvb3JkaW5hdGVzLCBz
Y2FsZSk7CisKKyAgICBxLT5tX2V4cGVyaW1lbnRhbC0+dmlld3BvcnRJbmZvKCktPmRpZFVwZGF0
ZUN1cnJlbnRTY2FsZSgpOwogfQogCiB2b2lkIFFRdWlja1dlYlZpZXdQcml2YXRlOjpfcV92aWV3
cG9ydFRyYWplY3RvcnlWZWN0b3JDaGFuZ2VkKGNvbnN0IFFQb2ludEYmIHRyYWplY3RvcnlWZWN0
b3IpCkBAIC0yNjAsNiArMjY2LDIyIEBAIHZvaWQgUVF1aWNrV2ViVmlld1ByaXZhdGU6OnVwZGF0
ZVZpZXdwb3J0U2l6ZSgpCiAgICAgdXBkYXRlVmlzaWJsZUNvbnRlbnRSZWN0KCk7CiB9CiAKK3Zv
aWQgUVF1aWNrV2ViVmlld1ByaXZhdGU6OlBvc3RUcmFuc2l0aW9uU3RhdGU6OmFwcGx5KCkKK3sK
KyAgICBwLT5pbnRlcmFjdGlvbkVuZ2luZS0+cmVzZXQoKTsKKyAgICBwLT5pbnRlcmFjdGlvbkVu
Z2luZS0+YXBwbHlDb25zdHJhaW50cyhwLT5jb21wdXRlVmlld3BvcnRDb25zdHJhaW50cygpKTsK
KyAgICBwLT5pbnRlcmFjdGlvbkVuZ2luZS0+cGFnZVBvc2l0aW9uUmVxdWVzdChwb3NpdGlvbik7
CisKKyAgICBpZiAoY29udGVudHNTaXplLmlzVmFsaWQoKSkgeworICAgICAgICBwLT5wYWdlVmll
dy0+c2V0V2lkdGgoY29udGVudHNTaXplLndpZHRoKCkpOworICAgICAgICBwLT5wYWdlVmlldy0+
c2V0SGVpZ2h0KGNvbnRlbnRzU2l6ZS5oZWlnaHQoKSk7CisgICAgICAgIHAtPnFfcHRyLT5leHBl
cmltZW50YWwoKS0+dmlld3BvcnRJbmZvKCktPmRpZFVwZGF0ZUNvbnRlbnRzU2l6ZSgpOworICAg
IH0KKworICAgIHBvc2l0aW9uID0gUVBvaW50KCk7CisgICAgY29udGVudHNTaXplID0gUVNpemUo
KTsKK30KKwogUXRWaWV3cG9ydEludGVyYWN0aW9uRW5naW5lOjpDb25zdHJhaW50cyBRUXVpY2tX
ZWJWaWV3UHJpdmF0ZTo6Y29tcHV0ZVZpZXdwb3J0Q29uc3RyYWludHMoKQogewogICAgIFFfUShR
UXVpY2tXZWJWaWV3KTsKQEAgLTI4OSw2ICszMTEsOSBAQCBRdFZpZXdwb3J0SW50ZXJhY3Rpb25F
bmdpbmU6OkNvbnN0cmFpbnRzIFFRdWlja1dlYlZpZXdQcml2YXRlOjpjb21wdXRlVmlld3BvcnRD
bwogICAgIG5ld0NvbnN0cmFpbnRzLm1heGltdW1TY2FsZSA9IGF0dHIubWF4aW11bVNjYWxlOwog
ICAgIG5ld0NvbnN0cmFpbnRzLmRldmljZVBpeGVsUmF0aW8gPSBhdHRyLmRldmljZVBpeGVsUmF0
aW87CiAgICAgbmV3Q29uc3RyYWludHMuaXNVc2VyU2NhbGFibGUgPSAhIWF0dHIudXNlclNjYWxh
YmxlOworICAgIG5ld0NvbnN0cmFpbnRzLmxheW91dFNpemUgPSBhdHRyLmxheW91dFNpemU7CisK
KyAgICBxLT5tX2V4cGVyaW1lbnRhbC0+dmlld3BvcnRJbmZvKCktPmRpZFVwZGF0ZVZpZXdwb3J0
Q29uc3RyYWludHMoKTsKIAogICAgIHJldHVybiBuZXdDb25zdHJhaW50czsKIH0KQEAgLTQ3NSw2
ICs1MDAsNyBAQCBRUXVpY2tXZWJWaWV3RXhwZXJpbWVudGFsOjpRUXVpY2tXZWJWaWV3RXhwZXJp
bWVudGFsKFFRdWlja1dlYlZpZXcgKndlYlZpZXcpCiAgICAgOiBRT2JqZWN0KHdlYlZpZXcpCiAg
ICAgLCBxX3B0cih3ZWJWaWV3KQogICAgICwgZF9wdHIod2ViVmlldy0+ZF9wdHIuZGF0YSgpKQor
ICAgICwgbV92aWV3cG9ydEluZm8obmV3IFFXZWJWaWV3cG9ydEluZm8od2ViVmlldy0+ZF9wdHIu
ZGF0YSgpLCB0aGlzKSkKIHsKIH0KIApAQCAtNTc5LDYgKzYwNSwxMSBAQCB2b2lkIFFRdWlja1dl
YlZpZXdFeHBlcmltZW50YWw6OmdvQmFja1RvKGludCBpbmRleCkKICAgICBkX3B0ci0+cGFnZVBy
b3h5LT5nb0JhY2tUbyhpbmRleCk7CiB9CiAKK1FXZWJWaWV3cG9ydEluZm8qIFFRdWlja1dlYlZp
ZXdFeHBlcmltZW50YWw6OnZpZXdwb3J0SW5mbygpCit7CisgICAgcmV0dXJuIG1fdmlld3BvcnRJ
bmZvOworfQorCiBRUXVpY2tXZWJWaWV3OjpRUXVpY2tXZWJWaWV3KFFRdWlja0l0ZW0qIHBhcmVu
dCkKICAgICA6IFFRdWlja0l0ZW0ocGFyZW50KQogICAgICwgZF9wdHIobmV3IFFRdWlja1dlYlZp
ZXdQcml2YXRlKHRoaXMpKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL0FQ
SS9xdC9xcXVpY2t3ZWJ2aWV3X3AuaCBiL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9BUEkvcXQv
cXF1aWNrd2Vidmlld19wLmgKaW5kZXggNTM5NWU2ZC4uM2QxOWI0YSAxMDA2NDQKLS0tIGEvU291
cmNlL1dlYktpdDIvVUlQcm9jZXNzL0FQSS9xdC9xcXVpY2t3ZWJ2aWV3X3AuaAorKysgYi9Tb3Vy
Y2UvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJL3F0L3FxdWlja3dlYnZpZXdfcC5oCkBAIC0zNCw2ICsz
NCw3IEBAIGNsYXNzIFFXZWJEb3dubG9hZEl0ZW07CiBjbGFzcyBRV2ViTmF2aWdhdGlvbkhpc3Rv
cnk7CiBjbGFzcyBRV2ViUHJlZmVyZW5jZXM7CiBjbGFzcyBRV2ViUGVybWlzc2lvblJlcXVlc3Q7
CitjbGFzcyBRV2ViVmlld3BvcnRJbmZvOwogCiBuYW1lc3BhY2UgV1RSIHsKIGNsYXNzIFBsYXRm
b3JtV2ViVmlldzsKQEAgLTE3Myw2ICsxNzQsNyBAQCBjbGFzcyBRV0VCS0lUX0VYUE9SVCBRUXVp
Y2tXZWJWaWV3RXhwZXJpbWVudGFsIDogcHVibGljIFFPYmplY3QgewogICAgIFFfUFJPUEVSVFko
UURlY2xhcmF0aXZlQ29tcG9uZW50KiBwcm9tcHREaWFsb2cgUkVBRCBwcm9tcHREaWFsb2cgV1JJ
VEUgc2V0UHJvbXB0RGlhbG9nIE5PVElGWSBwcm9tcHREaWFsb2dDaGFuZ2VkKQogICAgIFFfUFJP
UEVSVFkoUURlY2xhcmF0aXZlQ29tcG9uZW50KiBpdGVtU2VsZWN0b3IgUkVBRCBpdGVtU2VsZWN0
b3IgV1JJVEUgc2V0SXRlbVNlbGVjdG9yIE5PVElGWSBpdGVtU2VsZWN0b3JDaGFuZ2VkKQogICAg
IFFfUFJPUEVSVFkoYm9vbCB1c2VUcmFkaXRpb25hbERlc2t0b3BCZWhhdmlvdXIgUkVBRCB1c2VU
cmFkaXRpb25hbERlc2t0b3BCZWhhdmlvdXIgV1JJVEUgc2V0VXNlVHJhZGl0aW9uYWxEZXNrdG9w
QmVoYXZpb3VyKQorICAgIFFfUFJPUEVSVFkoUVdlYlZpZXdwb3J0SW5mbyogdmlld3BvcnRJbmZv
IFJFQUQgdmlld3BvcnRJbmZvIENPTlNUQU5UIEZJTkFMKQogCiBwdWJsaWM6CiAgICAgUVF1aWNr
V2ViVmlld0V4cGVyaW1lbnRhbChRUXVpY2tXZWJWaWV3KiB3ZWJWaWV3KTsKQEAgLTE4Niw2ICsx
ODgsOCBAQCBwdWJsaWM6CiAgICAgdm9pZCBzZXRQcm9tcHREaWFsb2coUURlY2xhcmF0aXZlQ29t
cG9uZW50Kik7CiAgICAgUURlY2xhcmF0aXZlQ29tcG9uZW50KiBpdGVtU2VsZWN0b3IoKSBjb25z
dDsKICAgICB2b2lkIHNldEl0ZW1TZWxlY3RvcihRRGVjbGFyYXRpdmVDb21wb25lbnQqKTsKKyAg
ICAKKyAgICBRV2ViVmlld3BvcnRJbmZvKiB2aWV3cG9ydEluZm8oKTsKIAogICAgIGJvb2wgdXNl
VHJhZGl0aW9uYWxEZXNrdG9wQmVoYXZpb3VyKCkgY29uc3Q7CiAgICAgUVdlYk5hdmlnYXRpb25I
aXN0b3J5KiBuYXZpZ2F0aW9uSGlzdG9yeSgpIGNvbnN0OwpAQCAtMjA4LDYgKzIxMiw3IEBAIFFf
U0lHTkFMUzoKIHByaXZhdGU6CiAgICAgUVF1aWNrV2ViVmlldyogcV9wdHI7CiAgICAgUVF1aWNr
V2ViVmlld1ByaXZhdGUqIGRfcHRyOworICAgIFFXZWJWaWV3cG9ydEluZm8qIG1fdmlld3BvcnRJ
bmZvOwogCiAgICAgZnJpZW5kIGNsYXNzIFF0V2ViUGFnZVByb3h5OwogICAgIGZyaWVuZCBjbGFz
cyBRdFdlYlBhZ2VVSUNsaWVudDsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vz
cy9BUEkvcXQvcXF1aWNrd2Vidmlld19wX3AuaCBiL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9B
UEkvcXQvcXF1aWNrd2Vidmlld19wX3AuaAppbmRleCBhMTk3ODVkLi5mYWIwMGQ0IDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJL3F0L3FxdWlja3dlYnZpZXdfcF9wLmgK
KysrIGIvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL0FQSS9xdC9xcXVpY2t3ZWJ2aWV3X3BfcC5o
CkBAIC00MSw2ICs0MSw3IEBAIG5hbWVzcGFjZSBXZWJLaXQgewogY2xhc3MgV2ViUGFnZVByb3h5
OwogfQogY2xhc3MgUXRXZWJQYWdlUHJveHk7CitjbGFzcyBRV2ViVmlld3BvcnRJbmZvOwogCiBR
VF9CRUdJTl9OQU1FU1BBQ0UKIGNsYXNzIFFEZWNsYXJhdGl2ZUNvbXBvbmVudDsKQEAgLTUwLDYg
KzUxLDcgQEAgUVRfRU5EX05BTUVTUEFDRQogY2xhc3MgUVF1aWNrV2ViVmlld1ByaXZhdGUgewog
ICAgIFFfREVDTEFSRV9QVUJMSUMoUVF1aWNrV2ViVmlldykKICAgICBmcmllbmQgY2xhc3MgUVF1
aWNrV2ViVmlld0V4cGVyaW1lbnRhbDsKKyAgICBmcmllbmQgY2xhc3MgUVdlYlZpZXdwb3J0SW5m
bzsKIAogcHVibGljOgogICAgIHN0YXRpYyBRUXVpY2tXZWJWaWV3UHJpdmF0ZSogZ2V0KFFRdWlj
a1dlYlZpZXcqIHEpIHsgcmV0dXJuIHEtPmRfcHRyLmRhdGEoKTsgfQpAQCAtMTEyLDIwICsxMTQs
NyBAQCBwcml2YXRlOgogICAgICAgICAgICAgOiBwKHBhcmVudCkKICAgICAgICAgeyB9CiAKLSAg
ICAgICAgdm9pZCBhcHBseSgpCi0gICAgICAgIHsKLSAgICAgICAgICAgIHAtPmludGVyYWN0aW9u
RW5naW5lLT5yZXNldCgpOwotICAgICAgICAgICAgcC0+aW50ZXJhY3Rpb25FbmdpbmUtPmFwcGx5
Q29uc3RyYWludHMocC0+Y29tcHV0ZVZpZXdwb3J0Q29uc3RyYWludHMoKSk7Ci0gICAgICAgICAg
ICBwLT5pbnRlcmFjdGlvbkVuZ2luZS0+cGFnZVBvc2l0aW9uUmVxdWVzdChwb3NpdGlvbik7Ci0K
LSAgICAgICAgICAgIGlmIChjb250ZW50c1NpemUuaXNWYWxpZCgpKSB7Ci0gICAgICAgICAgICAg
ICAgcC0+cGFnZVZpZXctPnNldFdpZHRoKGNvbnRlbnRzU2l6ZS53aWR0aCgpKTsKLSAgICAgICAg
ICAgICAgICBwLT5wYWdlVmlldy0+c2V0SGVpZ2h0KGNvbnRlbnRzU2l6ZS5oZWlnaHQoKSk7Ci0g
ICAgICAgICAgICB9Ci0KLSAgICAgICAgICAgIHBvc2l0aW9uID0gUVBvaW50KCk7Ci0gICAgICAg
ICAgICBjb250ZW50c1NpemUgPSBRU2l6ZSgpOwotICAgICAgICB9CisgICAgICAgIHZvaWQgYXBw
bHkoKTsKIAogICAgICAgICBRUXVpY2tXZWJWaWV3UHJpdmF0ZSogcDsKICAgICAgICAgUVNpemUg
Y29udGVudHNTaXplOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL0FQSS9x
dC9xd2Vidmlld3BvcnRpbmZvLmNwcCBiL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9BUEkvcXQv
cXdlYnZpZXdwb3J0aW5mby5jcHAKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4u
MDE4OTM4YQotLS0gL2Rldi9udWxsCisrKyBiL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9BUEkv
cXQvcXdlYnZpZXdwb3J0aW5mby5jcHAKQEAgLTAsMCArMSwxMTAgQEAKKy8qCisgKiBDb3B5cmln
aHQgKEMpIDIwMTEgTm9raWEgQ29ycG9yYXRpb24gYW5kL29yIGl0cyBzdWJzaWRpYXJ5KC1pZXMp
CisgKgorICogVGhpcyBsaWJyYXJ5IGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmli
dXRlIGl0IGFuZC9vcgorICogbW9kaWZ5IGl0IHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05VIExp
YnJhcnkgR2VuZXJhbCBQdWJsaWMKKyAqIExpY2Vuc2UgYXMgcHVibGlzaGVkIGJ5IHRoZSBGcmVl
IFNvZnR3YXJlIEZvdW5kYXRpb247IGVpdGhlcgorICogdmVyc2lvbiAyIG9mIHRoZSBMaWNlbnNl
LCBvciAoYXQgeW91ciBvcHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLgorICoKKyAqIFRoaXMgcHJv
Z3JhbSBpcyBkaXN0cmlidXRlZCBpbiB0aGUgaG9wZSB0aGF0IGl0IHdpbGwgYmUgdXNlZnVsLAor
ICogYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2Fy
cmFudHkgb2YKKyAqIE1FUkNIQU5UQUJJTElUWSBvciBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIg
UFVSUE9TRS4gIFNlZSB0aGUgR05VCisgKiBMaWJyYXJ5IEdlbmVyYWwgUHVibGljIExpY2Vuc2Ug
Zm9yIG1vcmUgZGV0YWlscy4KKyAqCisgKiBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5
IG9mIHRoZSBHTlUgTGlicmFyeSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlCisgKiBhbG9uZyB3aXRo
IHRoaXMgcHJvZ3JhbTsgc2VlIHRoZSBmaWxlIENPUFlJTkcuTElCLiAgSWYgbm90LCB3cml0ZSB0
bworICogdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbiwgSW5jLiwgNTEgRnJhbmtsaW4gU3Ry
ZWV0LCBGaWZ0aCBGbG9vciwKKyAqIEJvc3RvbiwgTUEgMDIxMTAtMTMwMSwgVVNBLgorICoKKyAq
LworCisjaW5jbHVkZSAiY29uZmlnLmgiCisjaW5jbHVkZSAicXdlYnZpZXdwb3J0aW5mb19wLmgi
CisKKyNpbmNsdWRlICJxcXVpY2t3ZWJ2aWV3X3AuaCIKKyNpbmNsdWRlICJxcXVpY2t3ZWJ2aWV3
X3BfcC5oIgorCitRV2ViVmlld3BvcnRJbmZvOjpRV2ViVmlld3BvcnRJbmZvKFFRdWlja1dlYlZp
ZXdQcml2YXRlKiB3ZWJWaWV3UHJpdmF0ZSwgUU9iamVjdCogcGFyZW50KQorICAgIDogUU9iamVj
dChwYXJlbnQpCisgICAgLCBtX3dlYlZpZXdQcml2YXRlKHdlYlZpZXdQcml2YXRlKQoreworCit9
CisKK1FXZWJWaWV3cG9ydEluZm86On5RV2ViVmlld3BvcnRJbmZvKCkKK3sKKworfQorCitRU2l6
ZSBRV2ViVmlld3BvcnRJbmZvOjpjb250ZW50c1NpemUoKSBjb25zdAoreworICAgIHJldHVybiBR
U2l6ZShtX3dlYlZpZXdQcml2YXRlLT5wYWdlVmlldy0+d2lkdGgoKSwgbV93ZWJWaWV3UHJpdmF0
ZS0+cGFnZVZpZXctPmhlaWdodCgpKTsKK30KKworcXJlYWwgUVdlYlZpZXdwb3J0SW5mbzo6Y3Vy
cmVudFNjYWxlKCkgY29uc3QKK3sKKyAgICByZXR1cm4gbV93ZWJWaWV3UHJpdmF0ZS0+cGFnZVZp
ZXctPnNjYWxlKCk7Cit9CisKK1FWYXJpYW50IFFXZWJWaWV3cG9ydEluZm86OmRldmljZVBpeGVs
UmF0aW8oKSBjb25zdAoreworICAgIGlmICghbV93ZWJWaWV3UHJpdmF0ZS0+aW50ZXJhY3Rpb25F
bmdpbmUpCisgICAgICAgIHJldHVybiBRVmFyaWFudCgpOworCisgICAgcmV0dXJuIG1fd2ViVmll
d1ByaXZhdGUtPmludGVyYWN0aW9uRW5naW5lLT5jb25zdHJhaW50cygpLmRldmljZVBpeGVsUmF0
aW87Cit9CisKK1FWYXJpYW50IFFXZWJWaWV3cG9ydEluZm86OmluaXRpYWxTY2FsZSgpIGNvbnN0
Cit7CisgICAgaWYgKCFtX3dlYlZpZXdQcml2YXRlLT5pbnRlcmFjdGlvbkVuZ2luZSkKKyAgICAg
ICAgcmV0dXJuIFFWYXJpYW50KCk7CisKKyAgICByZXR1cm4gbV93ZWJWaWV3UHJpdmF0ZS0+aW50
ZXJhY3Rpb25FbmdpbmUtPmNvbnN0cmFpbnRzKCkuaW5pdGlhbFNjYWxlOworfQorCitRVmFyaWFu
dCBRV2ViVmlld3BvcnRJbmZvOjptaW5pbXVtU2NhbGUoKSBjb25zdAoreworICAgIGlmICghbV93
ZWJWaWV3UHJpdmF0ZS0+aW50ZXJhY3Rpb25FbmdpbmUpCisgICAgICAgIHJldHVybiBRVmFyaWFu
dCgpOworCisgICAgcmV0dXJuIG1fd2ViVmlld1ByaXZhdGUtPmludGVyYWN0aW9uRW5naW5lLT5j
b25zdHJhaW50cygpLm1pbmltdW1TY2FsZTsKK30KKworUVZhcmlhbnQgUVdlYlZpZXdwb3J0SW5m
bzo6bWF4aW11bVNjYWxlKCkgY29uc3QKK3sKKyAgICBpZiAoIW1fd2ViVmlld1ByaXZhdGUtPmlu
dGVyYWN0aW9uRW5naW5lKQorICAgICAgICByZXR1cm4gUVZhcmlhbnQoKTsKKworICAgIHJldHVy
biBtX3dlYlZpZXdQcml2YXRlLT5pbnRlcmFjdGlvbkVuZ2luZS0+Y29uc3RyYWludHMoKS5tYXhp
bXVtU2NhbGU7Cit9CisKK1FWYXJpYW50IFFXZWJWaWV3cG9ydEluZm86OmlzU2NhbGFibGUoKSBj
b25zdAoreworICAgIGlmICghbV93ZWJWaWV3UHJpdmF0ZS0+aW50ZXJhY3Rpb25FbmdpbmUpCisg
ICAgICAgIHJldHVybiBRVmFyaWFudCgpOworCisgICAgcmV0dXJuIG1fd2ViVmlld1ByaXZhdGUt
PmludGVyYWN0aW9uRW5naW5lLT5jb25zdHJhaW50cygpLmlzVXNlclNjYWxhYmxlOworfQorCitR
VmFyaWFudCBRV2ViVmlld3BvcnRJbmZvOjpsYXlvdXRTaXplKCkgY29uc3QKK3sKKyAgICBpZiAo
IW1fd2ViVmlld1ByaXZhdGUtPmludGVyYWN0aW9uRW5naW5lKQorICAgICAgICByZXR1cm4gUVZh
cmlhbnQoKTsKKworICAgIHJldHVybiBtX3dlYlZpZXdQcml2YXRlLT5pbnRlcmFjdGlvbkVuZ2lu
ZS0+Y29uc3RyYWludHMoKS5sYXlvdXRTaXplOworfQorCit2b2lkIFFXZWJWaWV3cG9ydEluZm86
OmRpZFVwZGF0ZUNvbnRlbnRzU2l6ZSgpCit7CisgICAgZW1pdCBjb250ZW50c1NpemVVcGRhdGVk
KCk7Cit9CisKK3ZvaWQgUVdlYlZpZXdwb3J0SW5mbzo6ZGlkVXBkYXRlQ3VycmVudFNjYWxlKCkK
K3sKKyAgICBlbWl0IGN1cnJlbnRTY2FsZVVwZGF0ZWQoKTsKK30KKwordm9pZCBRV2ViVmlld3Bv
cnRJbmZvOjpkaWRVcGRhdGVWaWV3cG9ydENvbnN0cmFpbnRzKCkKK3sKKyAgICBlbWl0IHZpZXdw
b3J0Q29uc3RyYWludHNVcGRhdGVkKCk7Cit9CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9V
SVByb2Nlc3MvQVBJL3F0L3F3ZWJ2aWV3cG9ydGluZm9fcC5oIGIvU291cmNlL1dlYktpdDIvVUlQ
cm9jZXNzL0FQSS9xdC9xd2Vidmlld3BvcnRpbmZvX3AuaApuZXcgZmlsZSBtb2RlIDEwMDY0NApp
bmRleCAwMDAwMDAwLi4xMzIzMWU3Ci0tLSAvZGV2L251bGwKKysrIGIvU291cmNlL1dlYktpdDIv
VUlQcm9jZXNzL0FQSS9xdC9xd2Vidmlld3BvcnRpbmZvX3AuaApAQCAtMCwwICsxLDc0IEBACisv
KgorICogQ29weXJpZ2h0IChDKSAyMDExIE5va2lhIENvcnBvcmF0aW9uIGFuZC9vciBpdHMgc3Vi
c2lkaWFyeSgtaWVzKQorICoKKyAqIFRoaXMgbGlicmFyeSBpcyBmcmVlIHNvZnR3YXJlOyB5b3Ug
Y2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IKKyAqIG1vZGlmeSBpdCB1bmRlciB0aGUgdGVybXMg
b2YgdGhlIEdOVSBMaWJyYXJ5IEdlbmVyYWwgUHVibGljCisgKiBMaWNlbnNlIGFzIHB1Ymxpc2hl
ZCBieSB0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uOyBlaXRoZXIKKyAqIHZlcnNpb24gMiBv
ZiB0aGUgTGljZW5zZSwgb3IgKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KKyAq
CisgKiBUaGlzIHByb2dyYW0gaXMgZGlzdHJpYnV0ZWQgaW4gdGhlIGhvcGUgdGhhdCBpdCB3aWxs
IGJlIHVzZWZ1bCwKKyAqIGJ1dCBXSVRIT1VUIEFOWSBXQVJSQU5UWTsgd2l0aG91dCBldmVuIHRo
ZSBpbXBsaWVkIHdhcnJhbnR5IG9mCisgKiBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1Ig
QSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlIEdOVQorICogTGlicmFyeSBHZW5lcmFsIFB1
YmxpYyBMaWNlbnNlIGZvciBtb3JlIGRldGFpbHMuCisgKgorICogWW91IHNob3VsZCBoYXZlIHJl
Y2VpdmVkIGEgY29weSBvZiB0aGUgR05VIExpYnJhcnkgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQor
ICogYWxvbmcgd2l0aCB0aGlzIHByb2dyYW07IHNlZSB0aGUgZmlsZSBDT1BZSU5HLkxJQi4gIElm
IG5vdCwgd3JpdGUgdG8KKyAqIHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb24sIEluYy4sIDUx
IEZyYW5rbGluIFN0cmVldCwgRmlmdGggRmxvb3IsCisgKiBCb3N0b24sIE1BIDAyMTEwLTEzMDEs
IFVTQS4KKyAqCisgKi8KKworI2lmbmRlZiBxd2Vidmlld3BvcnRpbmZwX3BfaAorI2RlZmluZSBx
d2Vidmlld3BvcnRpbmZvX3BfaAorCisjaW5jbHVkZSAicXdlYmtpdGdsb2JhbC5oIgorCisjaW5j
bHVkZSA8UXRDb3JlL1FPYmplY3Q+CisjaW5jbHVkZSA8UXRDb3JlL1FQb2ludGVyPgorI2luY2x1
ZGUgPFF0Q29yZS9RU2l6ZT4KKyNpbmNsdWRlIDxRdENvcmUvUVZhcmlhbnQ+CisjaW5jbHVkZSA8
UXREZWNsYXJhdGl2ZS9RdERlY2xhcmF0aXZlPgorCituYW1lc3BhY2UgV2ViQ29yZSB7CitjbGFz
cyBWaWV3cG9ydEF0dHJpYnV0ZXM7Cit9CitjbGFzcyBRUXVpY2tXZWJWaWV3UHJpdmF0ZTsKKwor
Y2xhc3MgUVdFQktJVF9FWFBPUlQgUVdlYlZpZXdwb3J0SW5mbyA6IHB1YmxpYyBRT2JqZWN0IHsK
KyAgICBRX09CSkVDVAorICAgIFFfUFJPUEVSVFkoUVNpemUgY29udGVudHNTaXplIFJFQUQgY29u
dGVudHNTaXplIE5PVElGWSBjb250ZW50c1NpemVVcGRhdGVkKQorICAgIFFfUFJPUEVSVFkocXJl
YWwgY3VycmVudFNjYWxlIFJFQUQgY3VycmVudFNjYWxlIE5PVElGWSBjdXJyZW50U2NhbGVVcGRh
dGVkKQorICAgIFFfUFJPUEVSVFkoUVZhcmlhbnQgZGV2aWNlUGl4ZWxSYXRpbyBSRUFEIGRldmlj
ZVBpeGVsUmF0aW8gTk9USUZZIHZpZXdwb3J0Q29uc3RyYWludHNVcGRhdGVkKQorICAgIFFfUFJP
UEVSVFkoUVZhcmlhbnQgaW5pdGlhbFNjYWxlIFJFQUQgaW5pdGlhbFNjYWxlIE5PVElGWSB2aWV3
cG9ydENvbnN0cmFpbnRzVXBkYXRlZCkKKyAgICBRX1BST1BFUlRZKFFWYXJpYW50IGlzU2NhbGFi
bGUgUkVBRCBpc1NjYWxhYmxlIE5PVElGWSB2aWV3cG9ydENvbnN0cmFpbnRzVXBkYXRlZCkKKyAg
ICBRX1BST1BFUlRZKFFWYXJpYW50IG1heGltdW1TY2FsZSBSRUFEIG1heGltdW1TY2FsZSBOT1RJ
Rlkgdmlld3BvcnRDb25zdHJhaW50c1VwZGF0ZWQpCisgICAgUV9QUk9QRVJUWShRVmFyaWFudCBt
aW5pbXVtU2NhbGUgUkVBRCBtaW5pbXVtU2NhbGUgTk9USUZZIHZpZXdwb3J0Q29uc3RyYWludHNV
cGRhdGVkKQorICAgIFFfUFJPUEVSVFkoUVZhcmlhbnQgbGF5b3V0U2l6ZSBSRUFEIGxheW91dFNp
emUgTk9USUZZIHZpZXdwb3J0Q29uc3RyYWludHNVcGRhdGVkKQorCitzaWduYWxzOgorICAgIHZv
aWQgY29udGVudHNTaXplVXBkYXRlZCgpOworICAgIHZvaWQgY3VycmVudFNjYWxlVXBkYXRlZCgp
OworICAgIHZvaWQgdmlld3BvcnRDb25zdHJhaW50c1VwZGF0ZWQoKTsKKworcHVibGljOgorICAg
IFFXZWJWaWV3cG9ydEluZm8oUVF1aWNrV2ViVmlld1ByaXZhdGUqIHdlYnZpZXdQcml2YXRlLCBR
T2JqZWN0KiBwYXJlbnQgPSAwKTsKKyAgICB2aXJ0dWFsIH5RV2ViVmlld3BvcnRJbmZvKCk7CisK
KyAgICBRU2l6ZSBjb250ZW50c1NpemUoKSBjb25zdDsKKyAgICBxcmVhbCBjdXJyZW50U2NhbGUo
KSBjb25zdDsKKyAgICBRVmFyaWFudCBkZXZpY2VQaXhlbFJhdGlvKCkgY29uc3Q7CisgICAgUVZh
cmlhbnQgaW5pdGlhbFNjYWxlKCkgY29uc3Q7CisgICAgUVZhcmlhbnQgaXNTY2FsYWJsZSgpIGNv
bnN0OworICAgIFFWYXJpYW50IGxheW91dFNpemUoKSBjb25zdDsKKyAgICBRVmFyaWFudCBtYXhp
bXVtU2NhbGUoKSBjb25zdDsKKyAgICBRVmFyaWFudCBtaW5pbXVtU2NhbGUoKSBjb25zdDsKKwor
ICAgIHZvaWQgZGlkVXBkYXRlQ29udGVudHNTaXplKCk7CisgICAgdm9pZCBkaWRVcGRhdGVDdXJy
ZW50U2NhbGUoKTsKKyAgICB2b2lkIGRpZFVwZGF0ZVZpZXdwb3J0Q29uc3RyYWludHMoKTsKKwor
cHJpdmF0ZToKKyAgICBRUXVpY2tXZWJWaWV3UHJpdmF0ZSogbV93ZWJWaWV3UHJpdmF0ZTsKK307
CisKKyNlbmRpZiAvLyBxd2Vidmlld3BvcnRpbmZvX3AKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJL
aXQyL1VJUHJvY2Vzcy9xdC9RdFZpZXdwb3J0SW50ZXJhY3Rpb25FbmdpbmUuaCBiL1NvdXJjZS9X
ZWJLaXQyL1VJUHJvY2Vzcy9xdC9RdFZpZXdwb3J0SW50ZXJhY3Rpb25FbmdpbmUuaAppbmRleCAz
NjI4OTk3Li42MzRiOWM4IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvcXQv
UXRWaWV3cG9ydEludGVyYWN0aW9uRW5naW5lLmgKKysrIGIvU291cmNlL1dlYktpdDIvVUlQcm9j
ZXNzL3F0L1F0Vmlld3BvcnRJbnRlcmFjdGlvbkVuZ2luZS5oCkBAIC01NCw2ICs1NCw3IEBAIHB1
YmxpYzoKICAgICAgICAgICAgICwgbWF4aW11bVNjYWxlKDEuOCkKICAgICAgICAgICAgICwgZGV2
aWNlUGl4ZWxSYXRpbygxLjApCiAgICAgICAgICAgICAsIGlzVXNlclNjYWxhYmxlKHRydWUpCisg
ICAgICAgICAgICAsIGxheW91dFNpemUoUVNpemUoKSkKICAgICAgICAgeyB9CiAKICAgICAgICAg
cXJlYWwgaW5pdGlhbFNjYWxlOwpAQCAtNjEsNiArNjIsNyBAQCBwdWJsaWM6CiAgICAgICAgIHFy
ZWFsIG1heGltdW1TY2FsZTsKICAgICAgICAgcXJlYWwgZGV2aWNlUGl4ZWxSYXRpbzsKICAgICAg
ICAgYm9vbCBpc1VzZXJTY2FsYWJsZTsKKyAgICAgICAgUVNpemUgbGF5b3V0U2l6ZTsKICAgICB9
OwogCiAgICAgYm9vbCBldmVudChRRXZlbnQqKTsKQEAgLTk0LDYgKzk2LDcgQEAgcHVibGljOgog
ICAgIHZvaWQgem9vbVRvQXJlYUdlc3R1cmVFbmRlZChjb25zdCBRUG9pbnRGJiB0b3VjaFBvaW50
LCBjb25zdCBRUmVjdEYmIHRhcmdldEFyZWEpOwogICAgIHZvaWQgZm9jdXNFZGl0YWJsZUFyZWEo
Y29uc3QgUVJlY3RGJiBjYXJldEFyZWEsIGNvbnN0IFFSZWN0RiYgdGFyZ2V0QXJlYSk7CiAKKyAg
ICBjb25zdCBDb25zdHJhaW50cyYgY29uc3RyYWludHMoKSBjb25zdCB7IHJldHVybiBtX2NvbnN0
cmFpbnRzOyB9CiBRX1NJR05BTFM6CiAgICAgdm9pZCBjb250ZW50U3VzcGVuZFJlcXVlc3RlZCgp
OwogICAgIHZvaWQgY29udGVudFJlc3VtZVJlcXVlc3RlZCgpOwpkaWZmIC0tZ2l0IGEvU291cmNl
L3F0d2Via2l0LWV4cG9ydC5tYXAgYi9Tb3VyY2UvcXR3ZWJraXQtZXhwb3J0Lm1hcAppbmRleCBi
Nzc2OTNjLi44MzIwNWM4IDEwMDY0NAotLS0gYS9Tb3VyY2UvcXR3ZWJraXQtZXhwb3J0Lm1hcAor
KysgYi9Tb3VyY2UvcXR3ZWJraXQtZXhwb3J0Lm1hcApAQCAtMTMwLDYgKzEzMCw5IEBAIHF3a18x
LjAgewogICAgICAgICAqUVdlYkRvd25sb2FkSXRlbTsKICAgICAgICAgbm9uLXZpcnR1YWw/dGh1
bms/dG8/UVdlYkRvd25sb2FkSXRlbSo7CiAgICAgICAgIFFXZWJEb3dubG9hZEl0ZW06Oio7Cisg
ICAgICAgICpRV2ViVmlld3BvcnRJbmZvOworICAgICAgICBub24tdmlydHVhbD90aHVuaz90bz9R
V2ViVmlld3BvcnRJbmZvOworICAgICAgICBRV2ViVmlld3BvcnRJbmZvOjoqOwogICAgICAgICAq
UVF1aWNrV2ViUGFnZTsKICAgICAgICAgbm9uLXZpcnR1YWw/dGh1bms/dG8/UVF1aWNrV2ViUGFn
ZSo7CiAgICAgICAgIFFRdWlja1dlYlBhZ2U6Oio7CmRpZmYgLS1naXQgYS9Ub29scy9DaGFuZ2VM
b2cgYi9Ub29scy9DaGFuZ2VMb2cKaW5kZXggMGUzNzgwNy4uMTNhNWU4NiAxMDA2NDQKLS0tIGEv
VG9vbHMvQ2hhbmdlTG9nCisrKyBiL1Rvb2xzL0NoYW5nZUxvZwpAQCAtMSwzICsxLDIxIEBACisy
MDExLTExLTI0ICBNaWNoYWVsIEJyw7xuaW5nICA8bWljaGFlbC5icnVuaW5nQG5va2lhLmNvbT4K
KworICAgICAgICBbUVRdW1dLMl1BZGQgKGV4cGVyaW1lbnRhbCkgdmlld3BvcnQgaW5mbyB2aWV3
IHRvIE1pbmlicm93c2VyL3F0LgorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93
X2J1Zy5jZ2k/aWQ9NzI4OTMKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4K
KworICAgICAgICBUaGlzIHBhdGNoIGV4dGVuZHMgUVF1aWNrV2ViVmlld0V4cGVyaW1lbnRhbCBi
eSBhIHByb3BlcnR5IG5hbWVkCisgICAgICAgIHZpZXdwb3J0SW5mbywgd2hpY2ggY29udGFpbnMg
dGhlIHZpZXdwb3J0IHNjYWxhYmlsaXR5IGFuZAorICAgICAgICBsYXlvdXQgYW5kIGNvbnRlbnRz
IHNpemUgaW5mb3JtYXRpb24uIFRoaXMgcHJvcGVydHkgaXMgZXhwb3NlZCB0bworICAgICAgICBR
TUwgdGhyb3VnaCB0aGUgZXhwZXJpbWVudGFsIGV4dGVuc2lvbiBmb3IgUVF1aWNrV2ViVmlldy4K
KworICAgICAgICAqIE1pbmlCcm93c2VyL3F0L01pbmlCcm93c2VyLnBybzoKKyAgICAgICAgKiBN
aW5pQnJvd3Nlci9xdC9NaW5pQnJvd3Nlci5xcmM6CisgICAgICAgICogTWluaUJyb3dzZXIvcXQv
aWNvbnMvaW5mby5wbmc6IEFkZGVkLgorICAgICAgICAqIE1pbmlCcm93c2VyL3F0L3FtbC9Ccm93
c2VyV2luZG93LnFtbDoKKyAgICAgICAgKiBNaW5pQnJvd3Nlci9xdC9xbWwvVmlld3BvcnRJbmZv
SXRlbS5xbWw6IEFkZGVkLgorCiAyMDExLTEyLTE0ICBBbGV4YW5kZXIgRsOmcsO4eSAgPGFsZXhh
bmRlci5mYWVyb3lAbm9raWEuY29tPgogCiAgICAgICAgIFtRdF0gRGV2aWNlT3JpZW50YXRpb25D
bGllbnRNb2NrUXQgc2hvdWxkIGJlIHJlbW92ZWQgaW4gZmF2b3Igb2YgRGV2aWNlT3JpZW50YXRp
b25DbGllbnRNb2NrCmRpZmYgLS1naXQgYS9Ub29scy9NaW5pQnJvd3Nlci9xdC9NaW5pQnJvd3Nl
ci5wcm8gYi9Ub29scy9NaW5pQnJvd3Nlci9xdC9NaW5pQnJvd3Nlci5wcm8KaW5kZXggODIzNzIx
Ny4uY2JlNzc5NCAxMDA2NDQKLS0tIGEvVG9vbHMvTWluaUJyb3dzZXIvcXQvTWluaUJyb3dzZXIu
cHJvCisrKyBiL1Rvb2xzL01pbmlCcm93c2VyL3F0L01pbmlCcm93c2VyLnBybwpAQCAtMzEsNCAr
MzEsNSBAQCBSRVNPVVJDRVMgKz0gTWluaUJyb3dzZXIucXJjCiAKIE9USEVSX0ZJTEVTICs9IFwK
ICAgICBxbWwvQnJvd3NlcldpbmRvdy5xbWwgXAotICAgIHFtbC9JdGVtU2VsZWN0b3IucW1sCisg
ICAgcW1sL0l0ZW1TZWxlY3Rvci5xbWwgXAorICAgIHFtbC9WaWV3cG9ydEluZm9JdGVtLnFtbApk
aWZmIC0tZ2l0IGEvVG9vbHMvTWluaUJyb3dzZXIvcXQvTWluaUJyb3dzZXIucXJjIGIvVG9vbHMv
TWluaUJyb3dzZXIvcXQvTWluaUJyb3dzZXIucXJjCmluZGV4IGI3ZWJmNDUuLjI2NjY4M2QgMTAw
NjQ0Ci0tLSBhL1Rvb2xzL01pbmlCcm93c2VyL3F0L01pbmlCcm93c2VyLnFyYworKysgYi9Ub29s
cy9NaW5pQnJvd3Nlci9xdC9NaW5pQnJvd3Nlci5xcmMKQEAgLTEsNSArMSw2IEBACiA8UkNDPgog
ICAgIDxxcmVzb3VyY2UgcHJlZml4PSIvIj4KKyAgICAgICAgPGZpbGU+aWNvbnMvaW5mby5wbmc8
L2ZpbGU+CiAgICAgICAgIDxmaWxlPmljb25zL25leHQucG5nPC9maWxlPgogICAgICAgICA8Zmls
ZT5pY29ucy9wcmV2aW91cy5wbmc8L2ZpbGU+CiAgICAgICAgIDxmaWxlPmljb25zL3JlZnJlc2gu
cG5nPC9maWxlPgpAQCAtOCw2ICs5LDcgQEAKICAgICAgICAgPGZpbGU+cW1sL0Jyb3dzZXJXaW5k
b3cucW1sPC9maWxlPgogICAgICAgICA8ZmlsZT5xbWwvSXRlbVNlbGVjdG9yLnFtbDwvZmlsZT4K
ICAgICAgICAgPGZpbGU+cW1sL01vY2tUb3VjaFBvaW50LnFtbDwvZmlsZT4KKyAgICAgICAgPGZp
bGU+cW1sL1ZpZXdwb3J0SW5mb0l0ZW0ucW1sPC9maWxlPgogICAgICAgICA8ZmlsZT51c2VyYWdl
bnRsaXN0LnR4dDwvZmlsZT4KICAgICA8L3FyZXNvdXJjZT4KIDwvUkNDPgpkaWZmIC0tZ2l0IGEv
VG9vbHMvTWluaUJyb3dzZXIvcXQvaWNvbnMvaW5mby5wbmcgYi9Ub29scy9NaW5pQnJvd3Nlci9x
dC9pY29ucy9pbmZvLnBuZwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5kYjQ4M2ZmMTAwZjE0ZTc5YzFjNjE4NWUxOWIz
MWZlMTRmYWVkZTlmCkdJVCBiaW5hcnkgcGF0Y2gKbGl0ZXJhbCAzNDAKemNtZUFTQE4/KG9sSHlg
dVZCcSFpYTB2cF5WaiNASDF8Kk1jJCp+NGZqS3g5alA3TGVMJC1EJHwqcGpeNlReUm1ACno7RFd1
JkNqJih8M3Becj04NXA+UUw3MChZKSpLMC1BYld8WXVQZ2cpWlpRRkF2RzNsQ21JOCZZYylCPS1T
ZSQtKQp6V3Y+XnJxWF9HUl5RS0ReQm8jd25PXjc7bj0keUw4Ul5NTiQzajVCNjlXMl8pRDwpUSFC
KnMrOUUmWWA8c0FjTysKenQoTCF2UTV1IzdKSXxjQUVWZHxVU0ZWIypGS3QpVVgzOHQ8RVZnO2Jj
c19NclNtflgoIS1yNEx7YzNXSkh8fHgzCnpYWSZWWHdIKmdJYFV+c0owenw0OE5qe0xCcEV+YXdm
OG4wKSFaK1FeeDtAI3FKRD1Iaj5+Nm57cG1OMWd3KEZfJAp6PlAhbyhiYjBTNWNkUnlCNnVYRkg8
Tjh9fSpUYTdCb1UqejV1WGlWWldNSiE+Nn10K0EtMmFeS3dfN0J5e3pYSnwKZStlVylyOWB7QWR2
fU5sSihzWTZUV0FKcUtiNk13PCY7JFUlVlN1SXAKCmxpdGVyYWwgMApIY21WP2QwMDAwMQoKZGlm
ZiAtLWdpdCBhL1Rvb2xzL01pbmlCcm93c2VyL3F0L3FtbC9Ccm93c2VyV2luZG93LnFtbCBiL1Rv
b2xzL01pbmlCcm93c2VyL3F0L3FtbC9Ccm93c2VyV2luZG93LnFtbAppbmRleCBhMjIxNTUzLi4y
ZDZlNjI5IDEwMDY0NAotLS0gYS9Ub29scy9NaW5pQnJvd3Nlci9xdC9xbWwvQnJvd3NlcldpbmRv
dy5xbWwKKysrIGIvVG9vbHMvTWluaUJyb3dzZXIvcXQvcW1sL0Jyb3dzZXJXaW5kb3cucW1sCkBA
IC0xNjAsNiArMTYwLDI1IEBAIFJlY3RhbmdsZSB7CiAgICAgICAgICAgICAgICAgICAgIH0KICAg
ICAgICAgICAgICAgICB9CiAgICAgICAgICAgICB9CisKKyAgICAgICAgICAgIFJlY3RhbmdsZSB7
CisgICAgICAgICAgICAgICAgaWQ6IHZpZXdwb3J0SW5mb0J1dHRvbgorICAgICAgICAgICAgICAg
IGhlaWdodDogbmF2aWdhdGlvbkJhci5oZWlnaHQgLSAyCisgICAgICAgICAgICAgICAgd2lkdGg6
IGhlaWdodAorICAgICAgICAgICAgICAgIGNvbG9yOiAiI2VmZWZlZiIKKworICAgICAgICAgICAg
ICAgIEltYWdlIHsKKyAgICAgICAgICAgICAgICAgICAgYW5jaG9ycy5jZW50ZXJJbjogcGFyZW50
CisgICAgICAgICAgICAgICAgICAgIHNvdXJjZTogIi4uL2ljb25zL2luZm8ucG5nIgorICAgICAg
ICAgICAgICAgIH0KKworICAgICAgICAgICAgICAgIE1vdXNlQXJlYSB7CisgICAgICAgICAgICAg
ICAgICAgIGFuY2hvcnMuZmlsbDogcGFyZW50CisgICAgICAgICAgICAgICAgICAgIG9uQ2xpY2tl
ZDogeworICAgICAgICAgICAgICAgICAgICAgICB2aWV3cG9ydEluZm9JdGVtLnZpc2libGUgPSAh
dmlld3BvcnRJbmZvSXRlbS52aXNpYmxlCisgICAgICAgICAgICAgICAgICAgIH0KKyAgICAgICAg
ICAgICAgICB9CisgICAgICAgICAgICB9CiAgICAgICAgIH0KICAgICAgICAgUmVjdGFuZ2xlIHsK
ICAgICAgICAgICAgIGNvbG9yOiAid2hpdGUiCkBAIC0yMzUsNiArMjU0LDE4IEBAIFJlY3Rhbmds
ZSB7CiAgICAgICAgIGV4cGVyaW1lbnRhbC5pdGVtU2VsZWN0b3I6IEl0ZW1TZWxlY3RvciB7IH0K
ICAgICB9CiAKKyAgICBWaWV3cG9ydEluZm9JdGVtIHsKKyAgICAgICAgaWQ6IHZpZXdwb3J0SW5m
b0l0ZW0KKyAgICAgICAgYW5jaG9ycyB7CisgICAgICAgICAgICB0b3A6IG5hdmlnYXRpb25CYXIu
Ym90dG9tCisgICAgICAgICAgICBsZWZ0OiBwYXJlbnQubGVmdAorICAgICAgICAgICAgcmlnaHQ6
IHBhcmVudC5yaWdodAorICAgICAgICAgICAgYm90dG9tOiBwYXJlbnQuYm90dG9tCisgICAgICAg
IH0KKyAgICAgICAgdmlzaWJsZTogZmFsc2UKKyAgICAgICAgdmlld3BvcnRJbmZvIDogd2ViVmll
dy5leHBlcmltZW50YWwudmlld3BvcnRJbmZvCisgICAgfQorCiAgICAgS2V5cy5vblByZXNzZWQ6
IHsKICAgICAgICAgaWYgKCgoZXZlbnQubW9kaWZpZXJzICYgUXQuQ29udHJvbE1vZGlmaWVyKSAm
JiBldmVudC5rZXkgPT0gUXQuS2V5X0wpIHx8IGV2ZW50LmtleSA9PSBRdC5rZXlfRjYpIHsKICAg
ICAgICAgICAgIGZvY3VzQWRkcmVzc0JhcigpCmRpZmYgLS1naXQgYS9Ub29scy9NaW5pQnJvd3Nl
ci9xdC9xbWwvVmlld3BvcnRJbmZvSXRlbS5xbWwgYi9Ub29scy9NaW5pQnJvd3Nlci9xdC9xbWwv
Vmlld3BvcnRJbmZvSXRlbS5xbWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4u
NDIzYjcwYQotLS0gL2Rldi9udWxsCisrKyBiL1Rvb2xzL01pbmlCcm93c2VyL3F0L3FtbC9WaWV3
cG9ydEluZm9JdGVtLnFtbApAQCAtMCwwICsxLDYzIEBACitpbXBvcnQgUXRRdWljayAyLjAKK2lt
cG9ydCBRdFdlYktpdCAzLjAKKworUmVjdGFuZ2xlIHsKKyAgICBwcm9wZXJ0eSB2YXIgdmlld3Bv
cnRJbmZvCisKKyAgICBjb2xvcjogImJsYWNrIgorICAgIG9wYWNpdHk6IDAuOAorCisgICAgVGV4
dCB7CisgICAgICAgIGlkOiB2aWV3cG9ydEluZm9MYWJlbAorICAgICAgICB0ZXh0OiAiVmlld3Bv
cnQgSW5mbyIKKyAgICAgICAgY29sb3I6ICJ3aGl0ZSIKKyAgICB9CisgICAgVGV4dCB7CisgICAg
ICAgIGlkOiBjdXJyZW50U2NhbGVMYWJlbAorICAgICAgICBhbmNob3JzLnRvcDogdmlld3BvcnRJ
bmZvTGFiZWwuYm90dG9tCisgICAgICAgIHRleHQ6ICJDdXJyZW50IHNjYWxlOiAiICsgdmlld3Bv
cnRJbmZvLmN1cnJlbnRTY2FsZQorICAgICAgICBjb2xvcjogIndoaXRlIgorICAgIH0KKyAgICBU
ZXh0IHsKKyAgICAgICAgaWQ6IGluaXRpYWxTY2FsZUxhYmVsCisgICAgICAgIGFuY2hvcnMudG9w
OiBjdXJyZW50U2NhbGVMYWJlbC5ib3R0b20KKyAgICAgICAgdGV4dDogIkluaXRpYWwgc2NhbGU6
ICIgKyB2aWV3cG9ydEluZm8uaW5pdGlhbFNjYWxlCisgICAgICAgIGNvbG9yOiAid2hpdGUiCisg
ICAgfQorICAgIFRleHQgeworICAgICAgICBpZDogbWluaW11bVNjYWxlTGFiZWwKKyAgICAgICAg
YW5jaG9ycy50b3A6IGluaXRpYWxTY2FsZUxhYmVsLmJvdHRvbQorICAgICAgICB0ZXh0OiAiTWlu
aW11bSBzY2FsZTogIiArIHZpZXdwb3J0SW5mby5taW5pbXVtU2NhbGUKKyAgICAgICAgY29sb3I6
ICJ3aGl0ZSIKKyAgICB9CisgICAgVGV4dCB7CisgICAgICAgIGlkOiBtYXhpbXVtU2NhbGVMYWJl
bAorICAgICAgICBhbmNob3JzLnRvcDogbWluaW11bVNjYWxlTGFiZWwuYm90dG9tCisgICAgICAg
IHRleHQ6ICJNYXhpbXVtIHNjYWxlOiAiICsgdmlld3BvcnRJbmZvLm1heGltdW1TY2FsZQorICAg
ICAgICBjb2xvcjogIndoaXRlIgorICAgIH0KKyAgICBUZXh0IHsKKyAgICAgICAgaWQ6IGRldmlj
ZVBpeGVsUmF0aW9MYWJlbAorICAgICAgICBhbmNob3JzLnRvcDogbWF4aW11bVNjYWxlTGFiZWwu
Ym90dG9tCisgICAgICAgIHRleHQ6ICJEZXZpY2UgcGl4ZWwgcmF0aW9uOiAiICsgdmlld3BvcnRJ
bmZvLmRldmljZVBpeGVsUmF0aW8KKyAgICAgICAgY29sb3I6ICJ3aGl0ZSIKKyAgICB9CisgICAg
VGV4dCB7CisgICAgICAgIGlkOiBjb250ZW50c1NpemVMYWJlbAorICAgICAgICBhbmNob3JzLnRv
cDogZGV2aWNlUGl4ZWxSYXRpb0xhYmVsLmJvdHRvbQorICAgICAgICB0ZXh0OiAiQ29udGVudHMg
c2l6ZTogKCIgKyB2aWV3cG9ydEluZm8uY29udGVudHNTaXplLndpZHRoICsgIngiICsgdmlld3Bv
cnRJbmZvLmNvbnRlbnRzU2l6ZS5oZWlnaHQgKyAiKSIKKyAgICAgICAgY29sb3I6ICJ3aGl0ZSIK
KyAgICB9CisgICAgVGV4dCB7CisgICAgICAgIGlkOiBsYXlvdXRTaXplTGFiZWwKKyAgICAgICAg
YW5jaG9ycy50b3A6IGNvbnRlbnRzU2l6ZUxhYmVsLmJvdHRvbQorICAgICAgICB0ZXh0OiAiVmll
d3BvcnQgbGF5b3V0IHNpemU6ICgiICsgdmlld3BvcnRJbmZvLmxheW91dFNpemUud2lkdGggKyAi
eCIgKyB2aWV3cG9ydEluZm8ubGF5b3V0U2l6ZS5oZWlnaHQgKyAiKSIKKyAgICAgICAgY29sb3I6
ICJ3aGl0ZSIKKyAgICB9CisgICAgVGV4dCB7CisgICAgICAgIGlkOiBzY2FsYWJsZUxhYmVsCisg
ICAgICAgIGFuY2hvcnMudG9wOiBsYXlvdXRTaXplTGFiZWwuYm90dG9tCisgICAgICAgIHRleHQ6
ICJWaWV3ICIgKyAodmlld3BvcnRJbmZvLmlzU2NhbGFibGUgPyAiaXMgIiA6ICJpcyBub3QgIiAp
ICsgInNjYWxhYmxlLiIKKyAgICAgICAgY29sb3I6ICJ3aGl0ZSIKKyAgICB9Cit9Ci0tIAoxLjcu
NC4xCgo=
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>119408</attachid>
            <date>2011-12-15 03:37:08 -0800</date>
            <delta_ts>2011-12-15 04:38:58 -0800</delta_ts>
            <desc>Patch rebased to current HEAD.</desc>
            <filename>0001-QT-WK2-Add-experimental-viewport-attributes-view-to-.patch</filename>
            <type>text/plain</type>
            <size>30082</size>
            <attacher name="Michael Brüning">michael.bruning</attacher>
            
              <data encoding="base64">RnJvbSA4MTQxMTM3ZGNlMWYwZjdmMjk2NGI0M2Q3NTE4ZTVkYjIxMWViZGE5IE1vbiBTZXAgMTcg
MDA6MDA6MDAgMjAwMQpGcm9tOiBNaWNoYWVsIEJydW5pbmcgPG1pY2hhZWwuYnJ1bmluZ0Bub2tp
YS5jb20+CkRhdGU6IFRodSwgMjQgTm92IDIwMTEgMTc6MTg6MDAgKzAxMDAKU3ViamVjdDogW1BB
VENIXSBbUVRdW1dLMl1BZGQgKGV4cGVyaW1lbnRhbCkgdmlld3BvcnQgYXR0cmlidXRlcyB2aWV3
IHRvIE1pbmlicm93c2VyL3F0CgpodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/
aWQ9NzI4OTMKClJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgoKVGhpcyBleHRlbmRzIFFRdWlj
a1dlYlZpZXdFeHBlcmltZW50YWwgYnkgYSBwcm9wZXJ0eSBuYW1lZAp2aWV3cG9ydEF0dHJpYnV0
ZXMsIHdoaWNoIGNvbnRhaW5zIHRoZSB2aWV3cG9ydCBzY2FsYWJpbGl0eSBhbmQKbGF5b3V0IHNp
emUgaW5mb3JtYXRpb24uIFRoaXMgcHJvcGVydHkgaXMgZXhwb3NlZCB0byBRTUwgdGhyb3VnaAp0
aGUgZXhwZXJpbWVudGFsIGV4dGVuc2lvbiBmb3IgUVF1aWNrV2ViVmlldy4KClNvdXJjZToKCiog
U291cmNlL3F0d2Via2l0LWV4cG9ydC5tYXA6CgpTb3VyY2UvV2ViS2l0L3F0OgoKKiBkZWNsYXJh
dGlxdmUvZXhwZXJpbWVudGFsL3BsdWdpbi5jcHA6CgpTb3VyY2UvV2ViS2l0MjoKCiogVGFyZ2V0
LnByaToKKiBVSVByb2Nlc3MvQVBJL3F0L3FxdWlja3dlYnZpZXcuY3BwOgooUVF1aWNrV2ViVmll
d1ByaXZhdGU6OmRpZENoYW5nZUNvbnRlbnRzU2l6ZSk6CihRUXVpY2tXZWJWaWV3UHJpdmF0ZTo6
Y29tcHV0ZVZpZXdwb3J0Q29uc3RyYWludHMpOgooUVF1aWNrV2ViVmlld1ByaXZhdGU6OlBvc3RU
cmFuc2l0aW9uU3RhdGU6OmFwcGx5KTogQWRkZWQgYXBwbHlpbmcKY29udGVudHNTaXplIHRvIHZp
ZXdwb3J0SW5mby4KKFFRdWlja1dlYlZpZXdFeHBlcmltZW50YWw6OlFRdWlja1dlYlZpZXdFeHBl
cmltZW50YWwpOgooUVF1aWNrV2ViVmlld0V4cGVyaW1lbnRhbDo6dmlld3BvcnRJbmZvKToKKiBV
SVByb2Nlc3MvQVBJL3F0L3FxdWlja3dlYnZpZXdfcC5oOgoqIFVJUHJvY2Vzcy9BUEkvcXQvcXF1
aWNrd2Vidmlld19wX3AuaDogTW92ZWQgUG9zdFRyYW5zaXRpb25TdGF0ZTo6YXBwbHkKdG8gcXF1
aWNrd2Vidmlldy5jcHAuIEFkZGVkIGZyaWVuZCBRV2ViVmlld3BvcnRJbmZvLgoqIFVJUHJvY2Vz
cy9BUEkvcXQvcXdlYnZpZXdwb3J0aW5mby5jcHA6IEFkZGVkLgooUVdlYlZpZXdwb3J0SW5mbzo6
UVdlYlZpZXdwb3J0SW5mbyk6CihRV2ViVmlld3BvcnRJbmZvOjp+UVdlYlZpZXdwb3J0SW5mbyk6
CihRV2ViVmlld3BvcnRJbmZvOjpjb250ZW50c1NpemUpOgooUVdlYlZpZXdwb3J0SW5mbzo6Y3Vy
cmVudFNjYWxlKToKKFFXZWJWaWV3cG9ydEluZm86OmRldmljZVBpeGVsUmF0aW8pOgooUVdlYlZp
ZXdwb3J0SW5mbzo6aW5pdGlhbFNjYWxlKToKKFFXZWJWaWV3cG9ydEluZm86Om1pbmltdW1TY2Fs
ZSk6CihRV2ViVmlld3BvcnRJbmZvOjptYXhpbXVtU2NhbGUpOgooUVdlYlZpZXdwb3J0SW5mbzo6
aXNTY2FsYWJsZSk6CihRV2ViVmlld3BvcnRJbmZvOjpsYXlvdXRTaXplKToKKFFXZWJWaWV3cG9y
dEluZm86OmRpZFVwZGF0ZUNvbnRlbnRzU2l6ZSk6CihRV2ViVmlld3BvcnRJbmZvOjpkaWRVcGRh
dGVDdXJyZW50U2NhbGUpOgooUVdlYlZpZXdwb3J0SW5mbzo6ZGlkVXBkYXRlVmlld3BvcnRDb25z
dHJhaW50cyk6CiogVUlQcm9jZXNzL0FQSS9xdC9xd2Vidmlld3BvcnRpbmZvX3AuaDogQWRkZWQu
CiogVUlQcm9jZXNzL3F0L1F0Vmlld3BvcnRJbnRlcmFjdGlvbkVuZ2luZS5oOgooV2ViS2l0OjpR
dFZpZXdwb3J0SW50ZXJhY3Rpb25FbmdpbmU6OkNvbnN0cmFpbnRzOjpDb25zdHJhaW50cyk6IEFk
ZGVkIGxheW91dFNpemUuCihXZWJLaXQ6OlF0Vmlld3BvcnRJbnRlcmFjdGlvbkVuZ2luZTo6Y29u
c3RyYWludHMpOiBBZGRlZCBwcm9wZXJ0eSB0byBhY2Nlc3MgbV9jb250cmFpbnRzLgoKVG9vbHM6
CgoqIE1pbmlCcm93c2VyL3F0L01pbmlCcm93c2VyLnBybzoKKiBNaW5pQnJvd3Nlci9xdC9NaW5p
QnJvd3Nlci5xcmM6CiogTWluaUJyb3dzZXIvcXQvaWNvbnMvaW5mby5wbmc6IEFkZGVkLgoqIE1p
bmlCcm93c2VyL3F0L3FtbC9Ccm93c2VyV2luZG93LnFtbDoKKiBNaW5pQnJvd3Nlci9xdC9xbWwv
Vmlld3BvcnRJbmZvSXRlbS5xbWw6IEFkZGVkLgotLS0KIENoYW5nZUxvZyAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgICAxNCArKysKIFNvdXJjZS9XZWJLaXQvcXQv
Q2hhbmdlTG9nICAgICAgICAgICAgICAgICAgICAgICAgIHwgICAxNCArKysKIC4uLi9XZWJLaXQv
cXQvZGVjbGFyYXRpdmUvZXhwZXJpbWVudGFsL3BsdWdpbi5jcHAgIHwgICAgMyArCiBTb3VyY2Uv
V2ViS2l0Mi9DaGFuZ2VMb2cgICAgICAgICAgICAgICAgICAgICAgICAgICB8ICAgNDIgKysrKysr
KysKIFNvdXJjZS9XZWJLaXQyL1RhcmdldC5wcmkgICAgICAgICAgICAgICAgICAgICAgICAgIHwg
ICAgMiArCiBTb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJL3F0L3FxdWlja3dlYnZpZXcuY3Bw
ICB8ICAgMzAgKysrKysrCiBTb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJL3F0L3FxdWlja3dl
YnZpZXdfcC5oICB8ICAgIDUgKwogLi4uL1dlYktpdDIvVUlQcm9jZXNzL0FQSS9xdC9xcXVpY2t3
ZWJ2aWV3X3BfcC5oICAgfCAgIDE3ICstLS0KIC4uLi9XZWJLaXQyL1VJUHJvY2Vzcy9BUEkvcXQv
cXdlYnZpZXdwb3J0aW5mby5jcHAgIHwgIDExMCArKysrKysrKysrKysrKysrKysrKwogLi4uL1dl
YktpdDIvVUlQcm9jZXNzL0FQSS9xdC9xd2Vidmlld3BvcnRpbmZvX3AuaCAgfCAgIDc0ICsrKysr
KysrKysrKysKIC4uLi9VSVByb2Nlc3MvcXQvUXRWaWV3cG9ydEludGVyYWN0aW9uRW5naW5lLmgg
ICAgIHwgICAgMyArCiBTb3VyY2UvcXR3ZWJraXQtZXhwb3J0Lm1hcCAgICAgICAgICAgICAgICAg
ICAgICAgICB8ICAgIDMgKwogVG9vbHMvQ2hhbmdlTG9nICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgfCAgIDE4ICsrKwogVG9vbHMvTWluaUJyb3dzZXIvcXQvTWluaUJyb3dzZXIu
cHJvICAgICAgICAgICAgICAgfCAgICAzICstCiBUb29scy9NaW5pQnJvd3Nlci9xdC9NaW5pQnJv
d3Nlci5xcmMgICAgICAgICAgICAgICB8ICAgIDIgKwogVG9vbHMvTWluaUJyb3dzZXIvcXQvaWNv
bnMvaW5mby5wbmcgICAgICAgICAgICAgICAgfCAgQmluIDAgLT4gMzQwIGJ5dGVzCiBUb29scy9N
aW5pQnJvd3Nlci9xdC9xbWwvQnJvd3NlcldpbmRvdy5xbWwgICAgICAgICB8ICAgMzEgKysrKysr
CiBUb29scy9NaW5pQnJvd3Nlci9xdC9xbWwvVmlld3BvcnRJbmZvSXRlbS5xbWwgICAgICB8ICAg
NjMgKysrKysrKysrKysKIDE4IGZpbGVzIGNoYW5nZWQsIDQxOSBpbnNlcnRpb25zKCspLCAxNSBk
ZWxldGlvbnMoLSkKIGNyZWF0ZSBtb2RlIDEwMDY0NCBTb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3Mv
QVBJL3F0L3F3ZWJ2aWV3cG9ydGluZm8uY3BwCiBjcmVhdGUgbW9kZSAxMDA2NDQgU291cmNlL1dl
YktpdDIvVUlQcm9jZXNzL0FQSS9xdC9xd2Vidmlld3BvcnRpbmZvX3AuaAogY3JlYXRlIG1vZGUg
MTAwNjQ0IFRvb2xzL01pbmlCcm93c2VyL3F0L2ljb25zL2luZm8ucG5nCiBjcmVhdGUgbW9kZSAx
MDA2NDQgVG9vbHMvTWluaUJyb3dzZXIvcXQvcW1sL1ZpZXdwb3J0SW5mb0l0ZW0ucW1sCgpkaWZm
IC0tZ2l0IGEvQ2hhbmdlTG9nIGIvQ2hhbmdlTG9nCmluZGV4IDRhZjk0ZmYuLjYwZWZiYmYgMTAw
NjQ0Ci0tLSBhL0NoYW5nZUxvZworKysgYi9DaGFuZ2VMb2cKQEAgLTEsMyArMSwxNyBAQAorMjAx
MS0xMS0yNCAgTWljaGFlbCBCcsO8bmluZyAgPG1pY2hhZWwuYnJ1bmluZ0Bub2tpYS5jb20+CisK
KyAgICAgICAgW1FUXVtXSzJdQWRkIChleHBlcmltZW50YWwpIHZpZXdwb3J0IGluZm8gdmlldyB0
byBNaW5pYnJvd3Nlci9xdC4KKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19i
dWcuY2dpP2lkPTcyODkzCisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisK
KyAgICAgICAgVGhpcyBwYXRjaCBleHRlbmRzIFFRdWlja1dlYlZpZXdFeHBlcmltZW50YWwgYnkg
YSBwcm9wZXJ0eSBuYW1lZAorICAgICAgICB2aWV3cG9ydEluZm8sIHdoaWNoIGNvbnRhaW5zIHRo
ZSB2aWV3cG9ydCBzY2FsYWJpbGl0eSBhbmQKKyAgICAgICAgbGF5b3V0IGFuZCBjb250ZW50cyBz
aXplIGluZm9ybWF0aW9uLiBUaGlzIHByb3BlcnR5IGlzIGV4cG9zZWQgdG8KKyAgICAgICAgUU1M
IHRocm91Z2ggdGhlIGV4cGVyaW1lbnRhbCBleHRlbnNpb24gZm9yIFFRdWlja1dlYlZpZXcuCisK
KyAgICAgICAgKiBTb3VyY2UvcXR3ZWJraXQtZXhwb3J0Lm1hcDoKKwogMjAxMS0xMi0xNCAgUnlv
c3VrZSBOaXdhICA8cm5pd2FAd2Via2l0Lm9yZz4KIAogICAgICAgICBBZGQgYSBtYW51YWwgdGVz
dCBmb3IgY2FyZXQgYmxpbmtpbmcgZHVyaW5nIGZvcndhcmQgZGVsZXRpb24KZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJLaXQvcXQvQ2hhbmdlTG9nIGIvU291cmNlL1dlYktpdC9xdC9DaGFuZ2VMb2cK
aW5kZXggYWVjZThmMi4uZjcwN2M5MSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9xdC9DaGFu
Z2VMb2cKKysrIGIvU291cmNlL1dlYktpdC9xdC9DaGFuZ2VMb2cKQEAgLTEsMyArMSwxNyBAQAor
MjAxMS0xMS0yNCAgTWljaGFlbCBCcsO8bmluZyAgPG1pY2hhZWwuYnJ1bmluZ0Bub2tpYS5jb20+
CisKKyAgICAgICAgW1FUXVtXSzJdQWRkIChleHBlcmltZW50YWwpIHZpZXdwb3J0IGluZm8gdmll
dyB0byBNaW5pYnJvd3Nlci9xdC4KKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hv
d19idWcuY2dpP2lkPTcyODkzCisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISku
CisKKyAgICAgICAgVGhpcyBwYXRjaCBleHRlbmRzIFFRdWlja1dlYlZpZXdFeHBlcmltZW50YWwg
YnkgYSBwcm9wZXJ0eSBuYW1lZAorICAgICAgICB2aWV3cG9ydEluZm8sIHdoaWNoIGNvbnRhaW5z
IHRoZSB2aWV3cG9ydCBzY2FsYWJpbGl0eSBhbmQKKyAgICAgICAgbGF5b3V0IGFuZCBjb250ZW50
cyBzaXplIGluZm9ybWF0aW9uLiBUaGlzIHByb3BlcnR5IGlzIGV4cG9zZWQgdG8KKyAgICAgICAg
UU1MIHRocm91Z2ggdGhlIGV4cGVyaW1lbnRhbCBleHRlbnNpb24gZm9yIFFRdWlja1dlYlZpZXcu
CisKKyAgICAgICAgKiBkZWNsYXJhdGl2ZS9leHBlcmltZW50YWwvcGx1Z2luLmNwcDoKKwogMjAx
MS0xMi0xNSAgQWxleGFuZGVyIEbDpnLDuHkgIDxhaGZAMHg5MC5kaz4KIAogICAgICAgICBbUXRd
IFJlbW92ZSB1bm5lY2Vzc2FyeSBtZXRob2RzIGFuZCBtZW1iZXJzIGZyb20gRGV2aWNlT3JpZW50
YXRpb25DbGllbnRRdApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9xdC9kZWNsYXJhdGl2ZS9l
eHBlcmltZW50YWwvcGx1Z2luLmNwcCBiL1NvdXJjZS9XZWJLaXQvcXQvZGVjbGFyYXRpdmUvZXhw
ZXJpbWVudGFsL3BsdWdpbi5jcHAKaW5kZXggM2IzOWEyZS4uZDg4MWViOCAxMDA2NDQKLS0tIGEv
U291cmNlL1dlYktpdC9xdC9kZWNsYXJhdGl2ZS9leHBlcmltZW50YWwvcGx1Z2luLmNwcAorKysg
Yi9Tb3VyY2UvV2ViS2l0L3F0L2RlY2xhcmF0aXZlL2V4cGVyaW1lbnRhbC9wbHVnaW4uY3BwCkBA
IC0yMCw2ICsyMCw3IEBACiAjaW5jbHVkZSAicXF1aWNrd2VicGFnZV9wLmgiCiAjaW5jbHVkZSAi
cXF1aWNrd2Vidmlld19wLmgiCiAjaW5jbHVkZSAicXdlYmRvd25sb2FkaXRlbV9wLmgiCisjaW5j
bHVkZSAicXdlYnZpZXdwb3J0aW5mb19wLmgiCiAKICNpbmNsdWRlICJxd2VibmF2aWdhdGlvbmhp
c3RvcnlfcC5oIgogCkBAIC00OSw2ICs1MCw4IEBAIHB1YmxpYzoKICAgICAgICAgcW1sUmVnaXN0
ZXJFeHRlbmRlZFR5cGU8UVF1aWNrV2ViVmlldywgUVF1aWNrV2ViVmlld0V4cGVyaW1lbnRhbEV4
dGVuc2lvbj4odXJpLCAzLCAwLCAiV2ViVmlldyIpOwogICAgICAgICBxbWxSZWdpc3RlclVuY3Jl
YXRhYmxlVHlwZTxRUXVpY2tXZWJWaWV3RXhwZXJpbWVudGFsPih1cmksIDMsIDAsICJRUXVpY2tX
ZWJWaWV3RXhwZXJpbWVudGFsIiwKICAgICAgICAgICAgIFFPYmplY3Q6OnRyKCJDYW5ub3QgY3Jl
YXRlIHNlcGFyYXRlIGluc3RhbmNlIG9mIFFRdWlja1dlYlZpZXdFeHBlcmltZW50YWwiKSk7Cisg
ICAgICAgIHFtbFJlZ2lzdGVyVW5jcmVhdGFibGVUeXBlPFFXZWJWaWV3cG9ydEluZm8+KHVyaSwg
MywgMCwgIlFXZWJWaWV3cG9ydEluZm8iLAorICAgICAgICAgICAgUU9iamVjdDo6dHIoIkNhbm5v
dCBjcmVhdGUgc2VwYXJhdGUgaW5zdGFuY2Ugb2YgUVdlYlZpZXdwb3J0SW5mbyIpKTsKICAgICB9
CiB9OwogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9DaGFuZ2VMb2cgYi9Tb3VyY2UvV2Vi
S2l0Mi9DaGFuZ2VMb2cKaW5kZXggMDI4M2ViZi4uNWE2MjFmNyAxMDA2NDQKLS0tIGEvU291cmNl
L1dlYktpdDIvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9XZWJLaXQyL0NoYW5nZUxvZwpAQCAtMSwz
ICsxLDQ1IEBACisyMDExLTExLTI0ICBNaWNoYWVsIEJyw7xuaW5nICA8bWljaGFlbC5icnVuaW5n
QG5va2lhLmNvbT4KKworICAgICAgICBbUVRdW1dLMl1BZGQgKGV4cGVyaW1lbnRhbCkgdmlld3Bv
cnQgaW5mbyB2aWV3IHRvIE1pbmlicm93c2VyL3F0LgorICAgICAgICBodHRwczovL2J1Z3Mud2Vi
a2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9NzI4OTMKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JP
RFkgKE9PUFMhKS4KKworICAgICAgICBUaGlzIHBhdGNoIGV4dGVuZHMgUVF1aWNrV2ViVmlld0V4
cGVyaW1lbnRhbCBieSBhIHByb3BlcnR5IG5hbWVkCisgICAgICAgIHZpZXdwb3J0SW5mbywgd2hp
Y2ggY29udGFpbnMgdGhlIHZpZXdwb3J0IHNjYWxhYmlsaXR5IGFuZAorICAgICAgICBsYXlvdXQg
YW5kIGNvbnRlbnRzIHNpemUgaW5mb3JtYXRpb24uIFRoaXMgcHJvcGVydHkgaXMgZXhwb3NlZCB0
bworICAgICAgICBRTUwgdGhyb3VnaCB0aGUgZXhwZXJpbWVudGFsIGV4dGVuc2lvbiBmb3IgUVF1
aWNrV2ViVmlldy4KKworICAgICAgICAqIFRhcmdldC5wcmk6CisgICAgICAgICogVUlQcm9jZXNz
L0FQSS9xdC9xcXVpY2t3ZWJ2aWV3LmNwcDoKKyAgICAgICAgKFFRdWlja1dlYlZpZXdQcml2YXRl
OjpkaWRDaGFuZ2VDb250ZW50c1NpemUpOgorICAgICAgICAoUVF1aWNrV2ViVmlld1ByaXZhdGU6
OmNvbXB1dGVWaWV3cG9ydENvbnN0cmFpbnRzKToKKyAgICAgICAgKFFRdWlja1dlYlZpZXdQcml2
YXRlOjpQb3N0VHJhbnNpdGlvblN0YXRlOjphcHBseSk6IEFkZGVkIGFwcGx5aW5nCisgICAgICAg
IGNvbnRlbnRzU2l6ZSB0byB2aWV3cG9ydEluZm8uCisgICAgICAgIChRUXVpY2tXZWJWaWV3RXhw
ZXJpbWVudGFsOjpRUXVpY2tXZWJWaWV3RXhwZXJpbWVudGFsKToKKyAgICAgICAgKFFRdWlja1dl
YlZpZXdFeHBlcmltZW50YWw6OnZpZXdwb3J0SW5mbyk6CisgICAgICAgICogVUlQcm9jZXNzL0FQ
SS9xdC9xcXVpY2t3ZWJ2aWV3X3AuaDoKKyAgICAgICAgKiBVSVByb2Nlc3MvQVBJL3F0L3FxdWlj
a3dlYnZpZXdfcF9wLmg6IE1vdmVkIFBvc3RUcmFuc2l0aW9uU3RhdGU6OmFwcGx5CisgICAgICAg
IHRvIHFxdWlja3dlYnZpZXcuY3BwLiBBZGRlZCBmcmllbmQgUVdlYlZpZXdwb3J0SW5mby4KKyAg
ICAgICAgKiBVSVByb2Nlc3MvQVBJL3F0L3F3ZWJ2aWV3cG9ydGluZm8uY3BwOiBBZGRlZC4KKyAg
ICAgICAgKFFXZWJWaWV3cG9ydEluZm86OlFXZWJWaWV3cG9ydEluZm8pOgorICAgICAgICAoUVdl
YlZpZXdwb3J0SW5mbzo6flFXZWJWaWV3cG9ydEluZm8pOgorICAgICAgICAoUVdlYlZpZXdwb3J0
SW5mbzo6Y29udGVudHNTaXplKToKKyAgICAgICAgKFFXZWJWaWV3cG9ydEluZm86OmN1cnJlbnRT
Y2FsZSk6CisgICAgICAgIChRV2ViVmlld3BvcnRJbmZvOjpkZXZpY2VQaXhlbFJhdGlvKToKKyAg
ICAgICAgKFFXZWJWaWV3cG9ydEluZm86OmluaXRpYWxTY2FsZSk6CisgICAgICAgIChRV2ViVmll
d3BvcnRJbmZvOjptaW5pbXVtU2NhbGUpOgorICAgICAgICAoUVdlYlZpZXdwb3J0SW5mbzo6bWF4
aW11bVNjYWxlKToKKyAgICAgICAgKFFXZWJWaWV3cG9ydEluZm86OmlzU2NhbGFibGUpOgorICAg
ICAgICAoUVdlYlZpZXdwb3J0SW5mbzo6bGF5b3V0U2l6ZSk6CisgICAgICAgIChRV2ViVmlld3Bv
cnRJbmZvOjpkaWRVcGRhdGVDb250ZW50c1NpemUpOgorICAgICAgICAoUVdlYlZpZXdwb3J0SW5m
bzo6ZGlkVXBkYXRlQ3VycmVudFNjYWxlKToKKyAgICAgICAgKFFXZWJWaWV3cG9ydEluZm86OmRp
ZFVwZGF0ZVZpZXdwb3J0Q29uc3RyYWludHMpOgorICAgICAgICAqIFVJUHJvY2Vzcy9BUEkvcXQv
cXdlYnZpZXdwb3J0aW5mb19wLmg6IEFkZGVkLgorICAgICAgICAqIFVJUHJvY2Vzcy9xdC9RdFZp
ZXdwb3J0SW50ZXJhY3Rpb25FbmdpbmUuaDoKKyAgICAgICAgKFdlYktpdDo6UXRWaWV3cG9ydElu
dGVyYWN0aW9uRW5naW5lOjpDb25zdHJhaW50czo6Q29uc3RyYWludHMpOiBBZGRlZCBsYXlvdXRT
aXplLgorICAgICAgICAoV2ViS2l0OjpRdFZpZXdwb3J0SW50ZXJhY3Rpb25FbmdpbmU6OmNvbnN0
cmFpbnRzKTogQWRkZWQgcHJvcGVydHkgdG8gYWNjZXNzIG1fY29udHJhaW50cy4KKwogMjAxMS0x
Mi0xNSAgQWxleGFuZGVyIEbDpnLDuHkgIDxhaGZAMHg5MC5kaz4KIAogICAgICAgICBbUXRdIHIx
MDI4NDkgYnJva2UgdGhlIFF0IGJ1aWxkIG9uIE1hYyBPUyBYLgpkaWZmIC0tZ2l0IGEvU291cmNl
L1dlYktpdDIvVGFyZ2V0LnByaSBiL1NvdXJjZS9XZWJLaXQyL1RhcmdldC5wcmkKaW5kZXggMmVh
M2Y2ZS4uYTA2YTE2MSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvVGFyZ2V0LnByaQorKysg
Yi9Tb3VyY2UvV2ViS2l0Mi9UYXJnZXQucHJpCkBAIC0xODQsNiArMTg0LDcgQEAgSEVBREVSUyAr
PSBcCiAgICAgVUlQcm9jZXNzL0FQSS9xdC9xd2VibmF2aWdhdGlvbmhpc3RvcnlfcF9wLmggXAog
ICAgIFVJUHJvY2Vzcy9BUEkvcXQvcXF1aWNrd2Vidmlld19wLmggXAogICAgIFVJUHJvY2Vzcy9B
UEkvcXQvcXF1aWNrd2Vidmlld19wX3AuaCBcCisgICAgVUlQcm9jZXNzL0FQSS9xdC9xd2Vidmll
d3BvcnRpbmZvX3AuaCBcCiAgICAgVUlQcm9jZXNzL0F1dGhlbnRpY2F0aW9uL0F1dGhlbnRpY2F0
aW9uQ2hhbGxlbmdlUHJveHkuaCBcCiAgICAgVUlQcm9jZXNzL0F1dGhlbnRpY2F0aW9uL0F1dGhl
bnRpY2F0aW9uRGVjaXNpb25MaXN0ZW5lci5oIFwKICAgICBVSVByb2Nlc3MvQXV0aGVudGljYXRp
b24vV2ViQ3JlZGVudGlhbC5oIFwKQEAgLTUwNCw2ICs1MDUsNyBAQCBTT1VSQ0VTICs9IFwKICAg
ICBVSVByb2Nlc3MvQVBJL3F0L3F3ZWJuYXZpZ2F0aW9uaGlzdG9yeS5jcHAgXAogICAgIFVJUHJv
Y2Vzcy9BUEkvcXQvcXF1aWNrd2Vidmlldy5jcHAgXAogICAgIFVJUHJvY2Vzcy9BUEkvcXQvcXdl
YnByZWZlcmVuY2VzLmNwcCBcCisgICAgVUlQcm9jZXNzL0FQSS9xdC9xd2Vidmlld3BvcnRpbmZv
LmNwcCBcCiAgICAgVUlQcm9jZXNzL0F1dGhlbnRpY2F0aW9uL0F1dGhlbnRpY2F0aW9uQ2hhbGxl
bmdlUHJveHkuY3BwIFwKICAgICBVSVByb2Nlc3MvQXV0aGVudGljYXRpb24vQXV0aGVudGljYXRp
b25EZWNpc2lvbkxpc3RlbmVyLmNwcCBcCiAgICAgVUlQcm9jZXNzL0F1dGhlbnRpY2F0aW9uL1dl
YkNyZWRlbnRpYWwuY3BwIFwKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9B
UEkvcXQvcXF1aWNrd2Vidmlldy5jcHAgYi9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJL3F0
L3FxdWlja3dlYnZpZXcuY3BwCmluZGV4IDI5ZGIzZWUuLjk2OWViNTkgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9BUEkvcXQvcXF1aWNrd2Vidmlldy5jcHAKKysrIGIvU291
cmNlL1dlYktpdDIvVUlQcm9jZXNzL0FQSS9xdC9xcXVpY2t3ZWJ2aWV3LmNwcApAQCAtNDAsNiAr
NDAsNyBAQAogI2luY2x1ZGUgInF3ZWJuYXZpZ2F0aW9uaGlzdG9yeV9wX3AuaCIKICNpbmNsdWRl
ICJxd2VicHJlZmVyZW5jZXNfcC5oIgogI2luY2x1ZGUgInF3ZWJwcmVmZXJlbmNlc19wX3AuaCIK
KyNpbmNsdWRlICJxd2Vidmlld3BvcnRpbmZvX3AuaCIKIAogI2luY2x1ZGUgPEphdmFTY3JpcHRD
b3JlL0luaXRpYWxpemVUaHJlYWRpbmcuaD4KICNpbmNsdWRlIDxRRGVjbGFyYXRpdmVFbmdpbmU+
CkBAIC0xNzcsNiArMTc4LDcgQEAgdm9pZCBRUXVpY2tXZWJWaWV3UHJpdmF0ZTo6X3FfcmVzdW1l
KCkKIAogdm9pZCBRUXVpY2tXZWJWaWV3UHJpdmF0ZTo6ZGlkQ2hhbmdlQ29udGVudHNTaXplKGNv
bnN0IFFTaXplJiBuZXdTaXplKQogeworICAgIFFfUShRUXVpY2tXZWJWaWV3KTsKICAgICBpZiAo
dXNlVHJhZGl0aW9uYWxEZXNrdG9wQmVoYXZpb3VyKQogICAgICAgICByZXR1cm47CiAKQEAgLTE4
OCw2ICsxOTAsOCBAQCB2b2lkIFFRdWlja1dlYlZpZXdQcml2YXRlOjpkaWRDaGFuZ2VDb250ZW50
c1NpemUoY29uc3QgUVNpemUmIG5ld1NpemUpCiAKICAgICBwYWdlVmlldy0+c2V0V2lkdGgobmV3
U2l6ZS53aWR0aCgpKTsKICAgICBwYWdlVmlldy0+c2V0SGVpZ2h0KG5ld1NpemUuaGVpZ2h0KCkp
OworCisgICAgcS0+bV9leHBlcmltZW50YWwtPnZpZXdwb3J0SW5mbygpLT5kaWRVcGRhdGVDb250
ZW50c1NpemUoKTsKIH0KIAogdm9pZCBRUXVpY2tXZWJWaWV3UHJpdmF0ZTo6ZGlkQ2hhbmdlVmll
d3BvcnRQcm9wZXJ0aWVzKGNvbnN0IFdlYkNvcmU6OlZpZXdwb3J0QXJndW1lbnRzJiBhcmdzKQpA
QCAtMjcwLDYgKzI3NCw3IEBAIHZvaWQgUVF1aWNrV2ViVmlld1ByaXZhdGU6OnVwZGF0ZVZpc2li
bGVDb250ZW50UmVjdEFuZFNjYWxlKCkKIAogICAgIC8vIEZJWE1FOiBPbmNlIHdlIHN1cHBvcnQg
c3VzcGVuZCBhbmQgcmVzdW1lLCB0aGlzIHNob3VsZCBiZSBkZWxheWVkIHVudGlsIHRoZSBwYWdl
IGlzIGFjdGl2ZSBpZiB0aGUgcGFnZSBpcyBzdXNwZW5kZWQuCiAgICAgd2ViUGFnZVByb3h5KCkt
PnNldEZpeGVkVmlzaWJsZUNvbnRlbnRSZWN0KGFsaWduZWRWaXNpYmxlQ29udGVudFJlY3QpOwor
ICAgIHEtPm1fZXhwZXJpbWVudGFsLT52aWV3cG9ydEluZm8oKS0+ZGlkVXBkYXRlQ3VycmVudFNj
YWxlKCk7CiB9CiAKIHZvaWQgUVF1aWNrV2ViVmlld1ByaXZhdGU6Ol9xX3ZpZXdwb3J0VHJhamVj
dG9yeVZlY3RvckNoYW5nZWQoY29uc3QgUVBvaW50RiYgdHJhamVjdG9yeVZlY3RvcikKQEAgLTMx
Miw2ICszMTcsMjIgQEAgdm9pZCBRUXVpY2tXZWJWaWV3UHJpdmF0ZTo6dXBkYXRlVmlld3BvcnRT
aXplKCkKICAgICB1cGRhdGVWaXNpYmxlQ29udGVudFJlY3RBbmRTY2FsZSgpOwogfQogCit2b2lk
IFFRdWlja1dlYlZpZXdQcml2YXRlOjpQb3N0VHJhbnNpdGlvblN0YXRlOjphcHBseSgpCit7Cisg
ICAgcC0+aW50ZXJhY3Rpb25FbmdpbmUtPnJlc2V0KCk7CisgICAgcC0+aW50ZXJhY3Rpb25Fbmdp
bmUtPmFwcGx5Q29uc3RyYWludHMocC0+Y29tcHV0ZVZpZXdwb3J0Q29uc3RyYWludHMoKSk7Cisg
ICAgcC0+aW50ZXJhY3Rpb25FbmdpbmUtPnBhZ2VQb3NpdGlvblJlcXVlc3QocG9zaXRpb24pOwor
CisgICAgaWYgKGNvbnRlbnRzU2l6ZS5pc1ZhbGlkKCkpIHsKKyAgICAgICAgcC0+cGFnZVZpZXct
PnNldFdpZHRoKGNvbnRlbnRzU2l6ZS53aWR0aCgpKTsKKyAgICAgICAgcC0+cGFnZVZpZXctPnNl
dEhlaWdodChjb250ZW50c1NpemUuaGVpZ2h0KCkpOworICAgICAgICBwLT5xX3B0ci0+ZXhwZXJp
bWVudGFsKCktPnZpZXdwb3J0SW5mbygpLT5kaWRVcGRhdGVDb250ZW50c1NpemUoKTsKKyAgICB9
CisKKyAgICBwb3NpdGlvbiA9IFFQb2ludCgpOworICAgIGNvbnRlbnRzU2l6ZSA9IFFTaXplKCk7
Cit9CisKIFF0Vmlld3BvcnRJbnRlcmFjdGlvbkVuZ2luZTo6Q29uc3RyYWludHMgUVF1aWNrV2Vi
Vmlld1ByaXZhdGU6OmNvbXB1dGVWaWV3cG9ydENvbnN0cmFpbnRzKCkKIHsKICAgICBRX1EoUVF1
aWNrV2ViVmlldyk7CkBAIC0zNDEsNiArMzYyLDkgQEAgUXRWaWV3cG9ydEludGVyYWN0aW9uRW5n
aW5lOjpDb25zdHJhaW50cyBRUXVpY2tXZWJWaWV3UHJpdmF0ZTo6Y29tcHV0ZVZpZXdwb3J0Q28K
ICAgICBuZXdDb25zdHJhaW50cy5tYXhpbXVtU2NhbGUgPSBhdHRyLm1heGltdW1TY2FsZTsKICAg
ICBuZXdDb25zdHJhaW50cy5kZXZpY2VQaXhlbFJhdGlvID0gYXR0ci5kZXZpY2VQaXhlbFJhdGlv
OwogICAgIG5ld0NvbnN0cmFpbnRzLmlzVXNlclNjYWxhYmxlID0gISFhdHRyLnVzZXJTY2FsYWJs
ZTsKKyAgICBuZXdDb25zdHJhaW50cy5sYXlvdXRTaXplID0gYXR0ci5sYXlvdXRTaXplOworCisg
ICAgcS0+bV9leHBlcmltZW50YWwtPnZpZXdwb3J0SW5mbygpLT5kaWRVcGRhdGVWaWV3cG9ydENv
bnN0cmFpbnRzKCk7CiAKICAgICByZXR1cm4gbmV3Q29uc3RyYWludHM7CiB9CkBAIC01NDAsNiAr
NTY0LDcgQEAgUVF1aWNrV2ViVmlld0V4cGVyaW1lbnRhbDo6UVF1aWNrV2ViVmlld0V4cGVyaW1l
bnRhbChRUXVpY2tXZWJWaWV3ICp3ZWJWaWV3KQogICAgIDogUU9iamVjdCh3ZWJWaWV3KQogICAg
ICwgcV9wdHIod2ViVmlldykKICAgICAsIGRfcHRyKHdlYlZpZXctPmRfcHRyLmRhdGEoKSkKKyAg
ICAsIG1fdmlld3BvcnRJbmZvKG5ldyBRV2ViVmlld3BvcnRJbmZvKHdlYlZpZXctPmRfcHRyLmRh
dGEoKSwgdGhpcykpCiB7CiB9CiAKQEAgLTY0NCw2ICs2NjksMTEgQEAgdm9pZCBRUXVpY2tXZWJW
aWV3RXhwZXJpbWVudGFsOjpnb0JhY2tUbyhpbnQgaW5kZXgpCiAgICAgZF9wdHItPm5hdmlnYXRp
b25IaXN0b3J5LT5kLT5nb0JhY2tUbyhpbmRleCk7CiB9CiAKK1FXZWJWaWV3cG9ydEluZm8qIFFR
dWlja1dlYlZpZXdFeHBlcmltZW50YWw6OnZpZXdwb3J0SW5mbygpCit7CisgICAgcmV0dXJuIG1f
dmlld3BvcnRJbmZvOworfQorCiBRUXVpY2tXZWJWaWV3OjpRUXVpY2tXZWJWaWV3KFFRdWlja0l0
ZW0qIHBhcmVudCkKICAgICA6IFFRdWlja0l0ZW0ocGFyZW50KQogICAgICwgZF9wdHIobmV3IFFR
dWlja1dlYlZpZXdQcml2YXRlKHRoaXMpKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdDIvVUlQ
cm9jZXNzL0FQSS9xdC9xcXVpY2t3ZWJ2aWV3X3AuaCBiL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vz
cy9BUEkvcXQvcXF1aWNrd2Vidmlld19wLmgKaW5kZXggYjZkNzYyOS4uOTIyMmU3NCAxMDA2NDQK
LS0tIGEvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL0FQSS9xdC9xcXVpY2t3ZWJ2aWV3X3AuaAor
KysgYi9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJL3F0L3FxdWlja3dlYnZpZXdfcC5oCkBA
IC0zNCw2ICszNCw3IEBAIGNsYXNzIFFXZWJEb3dubG9hZEl0ZW07CiBjbGFzcyBRV2ViTmF2aWdh
dGlvbkhpc3Rvcnk7CiBjbGFzcyBRV2ViUHJlZmVyZW5jZXM7CiBjbGFzcyBRV2ViUGVybWlzc2lv
blJlcXVlc3Q7CitjbGFzcyBRV2ViVmlld3BvcnRJbmZvOwogCiBuYW1lc3BhY2UgV1RSIHsKIGNs
YXNzIFBsYXRmb3JtV2ViVmlldzsKQEAgLTE3NCw2ICsxNzUsNyBAQCBjbGFzcyBRV0VCS0lUX0VY
UE9SVCBRUXVpY2tXZWJWaWV3RXhwZXJpbWVudGFsIDogcHVibGljIFFPYmplY3QgewogICAgIFFf
UFJPUEVSVFkoUURlY2xhcmF0aXZlQ29tcG9uZW50KiBwcm9tcHREaWFsb2cgUkVBRCBwcm9tcHRE
aWFsb2cgV1JJVEUgc2V0UHJvbXB0RGlhbG9nIE5PVElGWSBwcm9tcHREaWFsb2dDaGFuZ2VkKQog
ICAgIFFfUFJPUEVSVFkoUURlY2xhcmF0aXZlQ29tcG9uZW50KiBpdGVtU2VsZWN0b3IgUkVBRCBp
dGVtU2VsZWN0b3IgV1JJVEUgc2V0SXRlbVNlbGVjdG9yIE5PVElGWSBpdGVtU2VsZWN0b3JDaGFu
Z2VkKQogICAgIFFfUFJPUEVSVFkoYm9vbCB1c2VUcmFkaXRpb25hbERlc2t0b3BCZWhhdmlvdXIg
UkVBRCB1c2VUcmFkaXRpb25hbERlc2t0b3BCZWhhdmlvdXIgV1JJVEUgc2V0VXNlVHJhZGl0aW9u
YWxEZXNrdG9wQmVoYXZpb3VyKQorICAgIFFfUFJPUEVSVFkoUVdlYlZpZXdwb3J0SW5mbyogdmll
d3BvcnRJbmZvIFJFQUQgdmlld3BvcnRJbmZvIENPTlNUQU5UIEZJTkFMKQogCiBwdWJsaWM6CiAg
ICAgUVF1aWNrV2ViVmlld0V4cGVyaW1lbnRhbChRUXVpY2tXZWJWaWV3KiB3ZWJWaWV3KTsKQEAg
LTE4Nyw2ICsxODksOCBAQCBwdWJsaWM6CiAgICAgdm9pZCBzZXRQcm9tcHREaWFsb2coUURlY2xh
cmF0aXZlQ29tcG9uZW50Kik7CiAgICAgUURlY2xhcmF0aXZlQ29tcG9uZW50KiBpdGVtU2VsZWN0
b3IoKSBjb25zdDsKICAgICB2b2lkIHNldEl0ZW1TZWxlY3RvcihRRGVjbGFyYXRpdmVDb21wb25l
bnQqKTsKKyAgICAKKyAgICBRV2ViVmlld3BvcnRJbmZvKiB2aWV3cG9ydEluZm8oKTsKIAogICAg
IGJvb2wgdXNlVHJhZGl0aW9uYWxEZXNrdG9wQmVoYXZpb3VyKCkgY29uc3Q7CiAgICAgUVdlYk5h
dmlnYXRpb25IaXN0b3J5KiBuYXZpZ2F0aW9uSGlzdG9yeSgpIGNvbnN0OwpAQCAtMjA5LDYgKzIx
Myw3IEBAIFFfU0lHTkFMUzoKIHByaXZhdGU6CiAgICAgUVF1aWNrV2ViVmlldyogcV9wdHI7CiAg
ICAgUVF1aWNrV2ViVmlld1ByaXZhdGUqIGRfcHRyOworICAgIFFXZWJWaWV3cG9ydEluZm8qIG1f
dmlld3BvcnRJbmZvOwogCiAgICAgZnJpZW5kIGNsYXNzIFF0V2ViUGFnZVByb3h5OwogICAgIGZy
aWVuZCBjbGFzcyBRdFdlYlBhZ2VVSUNsaWVudDsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQy
L1VJUHJvY2Vzcy9BUEkvcXQvcXF1aWNrd2Vidmlld19wX3AuaCBiL1NvdXJjZS9XZWJLaXQyL1VJ
UHJvY2Vzcy9BUEkvcXQvcXF1aWNrd2Vidmlld19wX3AuaAppbmRleCBjYTBjOWNkLi5kZWJkZmRh
IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJL3F0L3FxdWlja3dlYnZp
ZXdfcF9wLmgKKysrIGIvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL0FQSS9xdC9xcXVpY2t3ZWJ2
aWV3X3BfcC5oCkBAIC00NSw2ICs0NSw3IEBAIGNsYXNzIFdlYlBhZ2VQcm94eTsKIH0KIGNsYXNz
IFF0V2ViUGFnZVByb3h5OwogY2xhc3MgUVdlYk5hdmlnYXRpb25IaXN0b3J5OworY2xhc3MgUVdl
YlZpZXdwb3J0SW5mbzsKIAogUVRfQkVHSU5fTkFNRVNQQUNFCiBjbGFzcyBRRGVjbGFyYXRpdmVD
b21wb25lbnQ7CkBAIC01NSw2ICs1Niw3IEBAIGNsYXNzIFFRdWlja1dlYlZpZXdQcml2YXRlIHsK
ICAgICBRX0RFQ0xBUkVfUFVCTElDKFFRdWlja1dlYlZpZXcpCiAgICAgZnJpZW5kIGNsYXNzIFFR
dWlja1dlYlZpZXdFeHBlcmltZW50YWw7CiAgICAgZnJpZW5kIGNsYXNzIFFRdWlja1dlYlBhZ2U7
CisgICAgZnJpZW5kIGNsYXNzIFFXZWJWaWV3cG9ydEluZm87CiAKIHB1YmxpYzoKICAgICBzdGF0
aWMgUVF1aWNrV2ViVmlld1ByaXZhdGUqIGdldChRUXVpY2tXZWJWaWV3KiBxKSB7IHJldHVybiBx
LT5kX3B0ci5kYXRhKCk7IH0KQEAgLTEyMiwyMCArMTI0LDcgQEAgcHJpdmF0ZToKICAgICAgICAg
ICAgIDogcChwYXJlbnQpCiAgICAgICAgIHsgfQogCi0gICAgICAgIHZvaWQgYXBwbHkoKQotICAg
ICAgICB7Ci0gICAgICAgICAgICBwLT5pbnRlcmFjdGlvbkVuZ2luZS0+cmVzZXQoKTsKLSAgICAg
ICAgICAgIHAtPmludGVyYWN0aW9uRW5naW5lLT5hcHBseUNvbnN0cmFpbnRzKHAtPmNvbXB1dGVW
aWV3cG9ydENvbnN0cmFpbnRzKCkpOwotICAgICAgICAgICAgcC0+aW50ZXJhY3Rpb25FbmdpbmUt
PnBhZ2VQb3NpdGlvblJlcXVlc3QocG9zaXRpb24pOwotCi0gICAgICAgICAgICBpZiAoY29udGVu
dHNTaXplLmlzVmFsaWQoKSkgewotICAgICAgICAgICAgICAgIHAtPnBhZ2VWaWV3LT5zZXRXaWR0
aChjb250ZW50c1NpemUud2lkdGgoKSk7Ci0gICAgICAgICAgICAgICAgcC0+cGFnZVZpZXctPnNl
dEhlaWdodChjb250ZW50c1NpemUuaGVpZ2h0KCkpOwotICAgICAgICAgICAgfQotCi0gICAgICAg
ICAgICBwb3NpdGlvbiA9IFFQb2ludCgpOwotICAgICAgICAgICAgY29udGVudHNTaXplID0gUVNp
emUoKTsKLSAgICAgICAgfQorICAgICAgICB2b2lkIGFwcGx5KCk7CiAKICAgICAgICAgUVF1aWNr
V2ViVmlld1ByaXZhdGUqIHA7CiAgICAgICAgIFFTaXplIGNvbnRlbnRzU2l6ZTsKZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9BUEkvcXQvcXdlYnZpZXdwb3J0aW5mby5jcHAg
Yi9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJL3F0L3F3ZWJ2aWV3cG9ydGluZm8uY3BwCm5l
dyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjAxODkzOGEKLS0tIC9kZXYvbnVsbAor
KysgYi9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJL3F0L3F3ZWJ2aWV3cG9ydGluZm8uY3Bw
CkBAIC0wLDAgKzEsMTEwIEBACisvKgorICogQ29weXJpZ2h0IChDKSAyMDExIE5va2lhIENvcnBv
cmF0aW9uIGFuZC9vciBpdHMgc3Vic2lkaWFyeSgtaWVzKQorICoKKyAqIFRoaXMgbGlicmFyeSBp
cyBmcmVlIHNvZnR3YXJlOyB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IKKyAqIG1vZGlm
eSBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBMaWJyYXJ5IEdlbmVyYWwgUHVibGljCisg
KiBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieSB0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uOyBl
aXRoZXIKKyAqIHZlcnNpb24gMiBvZiB0aGUgTGljZW5zZSwgb3IgKGF0IHlvdXIgb3B0aW9uKSBh
bnkgbGF0ZXIgdmVyc2lvbi4KKyAqCisgKiBUaGlzIHByb2dyYW0gaXMgZGlzdHJpYnV0ZWQgaW4g
dGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCwKKyAqIGJ1dCBXSVRIT1VUIEFOWSBXQVJS
QU5UWTsgd2l0aG91dCBldmVuIHRoZSBpbXBsaWVkIHdhcnJhbnR5IG9mCisgKiBNRVJDSEFOVEFC
SUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlIEdOVQor
ICogTGlicmFyeSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGZvciBtb3JlIGRldGFpbHMuCisgKgor
ICogWW91IHNob3VsZCBoYXZlIHJlY2VpdmVkIGEgY29weSBvZiB0aGUgR05VIExpYnJhcnkgR2Vu
ZXJhbCBQdWJsaWMgTGljZW5zZQorICogYWxvbmcgd2l0aCB0aGlzIHByb2dyYW07IHNlZSB0aGUg
ZmlsZSBDT1BZSU5HLkxJQi4gIElmIG5vdCwgd3JpdGUgdG8KKyAqIHRoZSBGcmVlIFNvZnR3YXJl
IEZvdW5kYXRpb24sIEluYy4sIDUxIEZyYW5rbGluIFN0cmVldCwgRmlmdGggRmxvb3IsCisgKiBC
b3N0b24sIE1BIDAyMTEwLTEzMDEsIFVTQS4KKyAqCisgKi8KKworI2luY2x1ZGUgImNvbmZpZy5o
IgorI2luY2x1ZGUgInF3ZWJ2aWV3cG9ydGluZm9fcC5oIgorCisjaW5jbHVkZSAicXF1aWNrd2Vi
dmlld19wLmgiCisjaW5jbHVkZSAicXF1aWNrd2Vidmlld19wX3AuaCIKKworUVdlYlZpZXdwb3J0
SW5mbzo6UVdlYlZpZXdwb3J0SW5mbyhRUXVpY2tXZWJWaWV3UHJpdmF0ZSogd2ViVmlld1ByaXZh
dGUsIFFPYmplY3QqIHBhcmVudCkKKyAgICA6IFFPYmplY3QocGFyZW50KQorICAgICwgbV93ZWJW
aWV3UHJpdmF0ZSh3ZWJWaWV3UHJpdmF0ZSkKK3sKKworfQorCitRV2ViVmlld3BvcnRJbmZvOjp+
UVdlYlZpZXdwb3J0SW5mbygpCit7CisKK30KKworUVNpemUgUVdlYlZpZXdwb3J0SW5mbzo6Y29u
dGVudHNTaXplKCkgY29uc3QKK3sKKyAgICByZXR1cm4gUVNpemUobV93ZWJWaWV3UHJpdmF0ZS0+
cGFnZVZpZXctPndpZHRoKCksIG1fd2ViVmlld1ByaXZhdGUtPnBhZ2VWaWV3LT5oZWlnaHQoKSk7
Cit9CisKK3FyZWFsIFFXZWJWaWV3cG9ydEluZm86OmN1cnJlbnRTY2FsZSgpIGNvbnN0Cit7Cisg
ICAgcmV0dXJuIG1fd2ViVmlld1ByaXZhdGUtPnBhZ2VWaWV3LT5zY2FsZSgpOworfQorCitRVmFy
aWFudCBRV2ViVmlld3BvcnRJbmZvOjpkZXZpY2VQaXhlbFJhdGlvKCkgY29uc3QKK3sKKyAgICBp
ZiAoIW1fd2ViVmlld1ByaXZhdGUtPmludGVyYWN0aW9uRW5naW5lKQorICAgICAgICByZXR1cm4g
UVZhcmlhbnQoKTsKKworICAgIHJldHVybiBtX3dlYlZpZXdQcml2YXRlLT5pbnRlcmFjdGlvbkVu
Z2luZS0+Y29uc3RyYWludHMoKS5kZXZpY2VQaXhlbFJhdGlvOworfQorCitRVmFyaWFudCBRV2Vi
Vmlld3BvcnRJbmZvOjppbml0aWFsU2NhbGUoKSBjb25zdAoreworICAgIGlmICghbV93ZWJWaWV3
UHJpdmF0ZS0+aW50ZXJhY3Rpb25FbmdpbmUpCisgICAgICAgIHJldHVybiBRVmFyaWFudCgpOwor
CisgICAgcmV0dXJuIG1fd2ViVmlld1ByaXZhdGUtPmludGVyYWN0aW9uRW5naW5lLT5jb25zdHJh
aW50cygpLmluaXRpYWxTY2FsZTsKK30KKworUVZhcmlhbnQgUVdlYlZpZXdwb3J0SW5mbzo6bWlu
aW11bVNjYWxlKCkgY29uc3QKK3sKKyAgICBpZiAoIW1fd2ViVmlld1ByaXZhdGUtPmludGVyYWN0
aW9uRW5naW5lKQorICAgICAgICByZXR1cm4gUVZhcmlhbnQoKTsKKworICAgIHJldHVybiBtX3dl
YlZpZXdQcml2YXRlLT5pbnRlcmFjdGlvbkVuZ2luZS0+Y29uc3RyYWludHMoKS5taW5pbXVtU2Nh
bGU7Cit9CisKK1FWYXJpYW50IFFXZWJWaWV3cG9ydEluZm86Om1heGltdW1TY2FsZSgpIGNvbnN0
Cit7CisgICAgaWYgKCFtX3dlYlZpZXdQcml2YXRlLT5pbnRlcmFjdGlvbkVuZ2luZSkKKyAgICAg
ICAgcmV0dXJuIFFWYXJpYW50KCk7CisKKyAgICByZXR1cm4gbV93ZWJWaWV3UHJpdmF0ZS0+aW50
ZXJhY3Rpb25FbmdpbmUtPmNvbnN0cmFpbnRzKCkubWF4aW11bVNjYWxlOworfQorCitRVmFyaWFu
dCBRV2ViVmlld3BvcnRJbmZvOjppc1NjYWxhYmxlKCkgY29uc3QKK3sKKyAgICBpZiAoIW1fd2Vi
Vmlld1ByaXZhdGUtPmludGVyYWN0aW9uRW5naW5lKQorICAgICAgICByZXR1cm4gUVZhcmlhbnQo
KTsKKworICAgIHJldHVybiBtX3dlYlZpZXdQcml2YXRlLT5pbnRlcmFjdGlvbkVuZ2luZS0+Y29u
c3RyYWludHMoKS5pc1VzZXJTY2FsYWJsZTsKK30KKworUVZhcmlhbnQgUVdlYlZpZXdwb3J0SW5m
bzo6bGF5b3V0U2l6ZSgpIGNvbnN0Cit7CisgICAgaWYgKCFtX3dlYlZpZXdQcml2YXRlLT5pbnRl
cmFjdGlvbkVuZ2luZSkKKyAgICAgICAgcmV0dXJuIFFWYXJpYW50KCk7CisKKyAgICByZXR1cm4g
bV93ZWJWaWV3UHJpdmF0ZS0+aW50ZXJhY3Rpb25FbmdpbmUtPmNvbnN0cmFpbnRzKCkubGF5b3V0
U2l6ZTsKK30KKwordm9pZCBRV2ViVmlld3BvcnRJbmZvOjpkaWRVcGRhdGVDb250ZW50c1NpemUo
KQoreworICAgIGVtaXQgY29udGVudHNTaXplVXBkYXRlZCgpOworfQorCit2b2lkIFFXZWJWaWV3
cG9ydEluZm86OmRpZFVwZGF0ZUN1cnJlbnRTY2FsZSgpCit7CisgICAgZW1pdCBjdXJyZW50U2Nh
bGVVcGRhdGVkKCk7Cit9CisKK3ZvaWQgUVdlYlZpZXdwb3J0SW5mbzo6ZGlkVXBkYXRlVmlld3Bv
cnRDb25zdHJhaW50cygpCit7CisgICAgZW1pdCB2aWV3cG9ydENvbnN0cmFpbnRzVXBkYXRlZCgp
OworfQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL0FQSS9xdC9xd2Vidmll
d3BvcnRpbmZvX3AuaCBiL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9BUEkvcXQvcXdlYnZpZXdw
b3J0aW5mb19wLmgKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uMTMyMzFlNwot
LS0gL2Rldi9udWxsCisrKyBiL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9BUEkvcXQvcXdlYnZp
ZXdwb3J0aW5mb19wLmgKQEAgLTAsMCArMSw3NCBAQAorLyoKKyAqIENvcHlyaWdodCAoQykgMjAx
MSBOb2tpYSBDb3Jwb3JhdGlvbiBhbmQvb3IgaXRzIHN1YnNpZGlhcnkoLWllcykKKyAqCisgKiBU
aGlzIGxpYnJhcnkgaXMgZnJlZSBzb2Z0d2FyZTsgeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5k
L29yCisgKiBtb2RpZnkgaXQgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUgTGlicmFyeSBHZW5l
cmFsIFB1YmxpYworICogTGljZW5zZSBhcyBwdWJsaXNoZWQgYnkgdGhlIEZyZWUgU29mdHdhcmUg
Rm91bmRhdGlvbjsgZWl0aGVyCisgKiB2ZXJzaW9uIDIgb2YgdGhlIExpY2Vuc2UsIG9yIChhdCB5
b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uCisgKgorICogVGhpcyBwcm9ncmFtIGlzIGRp
c3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCisgKiBidXQgV0lU
SE9VVCBBTlkgV0FSUkFOVFk7IHdpdGhvdXQgZXZlbiB0aGUgaW1wbGllZCB3YXJyYW50eSBvZgor
ICogTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFLiAg
U2VlIHRoZSBHTlUKKyAqIExpYnJhcnkgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBmb3IgbW9yZSBk
ZXRhaWxzLgorICoKKyAqIFlvdSBzaG91bGQgaGF2ZSByZWNlaXZlZCBhIGNvcHkgb2YgdGhlIEdO
VSBMaWJyYXJ5IEdlbmVyYWwgUHVibGljIExpY2Vuc2UKKyAqIGFsb25nIHdpdGggdGhpcyBwcm9n
cmFtOyBzZWUgdGhlIGZpbGUgQ09QWUlORy5MSUIuICBJZiBub3QsIHdyaXRlIHRvCisgKiB0aGUg
RnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uLCBJbmMuLCA1MSBGcmFua2xpbiBTdHJlZXQsIEZpZnRo
IEZsb29yLAorICogQm9zdG9uLCBNQSAwMjExMC0xMzAxLCBVU0EuCisgKgorICovCisKKyNpZm5k
ZWYgcXdlYnZpZXdwb3J0aW5mcF9wX2gKKyNkZWZpbmUgcXdlYnZpZXdwb3J0aW5mb19wX2gKKwor
I2luY2x1ZGUgInF3ZWJraXRnbG9iYWwuaCIKKworI2luY2x1ZGUgPFF0Q29yZS9RT2JqZWN0Pgor
I2luY2x1ZGUgPFF0Q29yZS9RUG9pbnRlcj4KKyNpbmNsdWRlIDxRdENvcmUvUVNpemU+CisjaW5j
bHVkZSA8UXRDb3JlL1FWYXJpYW50PgorI2luY2x1ZGUgPFF0RGVjbGFyYXRpdmUvUXREZWNsYXJh
dGl2ZT4KKworbmFtZXNwYWNlIFdlYkNvcmUgeworY2xhc3MgVmlld3BvcnRBdHRyaWJ1dGVzOwor
fQorY2xhc3MgUVF1aWNrV2ViVmlld1ByaXZhdGU7CisKK2NsYXNzIFFXRUJLSVRfRVhQT1JUIFFX
ZWJWaWV3cG9ydEluZm8gOiBwdWJsaWMgUU9iamVjdCB7CisgICAgUV9PQkpFQ1QKKyAgICBRX1BS
T1BFUlRZKFFTaXplIGNvbnRlbnRzU2l6ZSBSRUFEIGNvbnRlbnRzU2l6ZSBOT1RJRlkgY29udGVu
dHNTaXplVXBkYXRlZCkKKyAgICBRX1BST1BFUlRZKHFyZWFsIGN1cnJlbnRTY2FsZSBSRUFEIGN1
cnJlbnRTY2FsZSBOT1RJRlkgY3VycmVudFNjYWxlVXBkYXRlZCkKKyAgICBRX1BST1BFUlRZKFFW
YXJpYW50IGRldmljZVBpeGVsUmF0aW8gUkVBRCBkZXZpY2VQaXhlbFJhdGlvIE5PVElGWSB2aWV3
cG9ydENvbnN0cmFpbnRzVXBkYXRlZCkKKyAgICBRX1BST1BFUlRZKFFWYXJpYW50IGluaXRpYWxT
Y2FsZSBSRUFEIGluaXRpYWxTY2FsZSBOT1RJRlkgdmlld3BvcnRDb25zdHJhaW50c1VwZGF0ZWQp
CisgICAgUV9QUk9QRVJUWShRVmFyaWFudCBpc1NjYWxhYmxlIFJFQUQgaXNTY2FsYWJsZSBOT1RJ
Rlkgdmlld3BvcnRDb25zdHJhaW50c1VwZGF0ZWQpCisgICAgUV9QUk9QRVJUWShRVmFyaWFudCBt
YXhpbXVtU2NhbGUgUkVBRCBtYXhpbXVtU2NhbGUgTk9USUZZIHZpZXdwb3J0Q29uc3RyYWludHNV
cGRhdGVkKQorICAgIFFfUFJPUEVSVFkoUVZhcmlhbnQgbWluaW11bVNjYWxlIFJFQUQgbWluaW11
bVNjYWxlIE5PVElGWSB2aWV3cG9ydENvbnN0cmFpbnRzVXBkYXRlZCkKKyAgICBRX1BST1BFUlRZ
KFFWYXJpYW50IGxheW91dFNpemUgUkVBRCBsYXlvdXRTaXplIE5PVElGWSB2aWV3cG9ydENvbnN0
cmFpbnRzVXBkYXRlZCkKKworc2lnbmFsczoKKyAgICB2b2lkIGNvbnRlbnRzU2l6ZVVwZGF0ZWQo
KTsKKyAgICB2b2lkIGN1cnJlbnRTY2FsZVVwZGF0ZWQoKTsKKyAgICB2b2lkIHZpZXdwb3J0Q29u
c3RyYWludHNVcGRhdGVkKCk7CisKK3B1YmxpYzoKKyAgICBRV2ViVmlld3BvcnRJbmZvKFFRdWlj
a1dlYlZpZXdQcml2YXRlKiB3ZWJ2aWV3UHJpdmF0ZSwgUU9iamVjdCogcGFyZW50ID0gMCk7Cisg
ICAgdmlydHVhbCB+UVdlYlZpZXdwb3J0SW5mbygpOworCisgICAgUVNpemUgY29udGVudHNTaXpl
KCkgY29uc3Q7CisgICAgcXJlYWwgY3VycmVudFNjYWxlKCkgY29uc3Q7CisgICAgUVZhcmlhbnQg
ZGV2aWNlUGl4ZWxSYXRpbygpIGNvbnN0OworICAgIFFWYXJpYW50IGluaXRpYWxTY2FsZSgpIGNv
bnN0OworICAgIFFWYXJpYW50IGlzU2NhbGFibGUoKSBjb25zdDsKKyAgICBRVmFyaWFudCBsYXlv
dXRTaXplKCkgY29uc3Q7CisgICAgUVZhcmlhbnQgbWF4aW11bVNjYWxlKCkgY29uc3Q7CisgICAg
UVZhcmlhbnQgbWluaW11bVNjYWxlKCkgY29uc3Q7CisKKyAgICB2b2lkIGRpZFVwZGF0ZUNvbnRl
bnRzU2l6ZSgpOworICAgIHZvaWQgZGlkVXBkYXRlQ3VycmVudFNjYWxlKCk7CisgICAgdm9pZCBk
aWRVcGRhdGVWaWV3cG9ydENvbnN0cmFpbnRzKCk7CisKK3ByaXZhdGU6CisgICAgUVF1aWNrV2Vi
Vmlld1ByaXZhdGUqIG1fd2ViVmlld1ByaXZhdGU7Cit9OworCisjZW5kaWYgLy8gcXdlYnZpZXdw
b3J0aW5mb19wCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvcXQvUXRWaWV3
cG9ydEludGVyYWN0aW9uRW5naW5lLmggYi9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvcXQvUXRW
aWV3cG9ydEludGVyYWN0aW9uRW5naW5lLmgKaW5kZXggMzYyODk5Ny4uNjM0YjljOCAxMDA2NDQK
LS0tIGEvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL3F0L1F0Vmlld3BvcnRJbnRlcmFjdGlvbkVu
Z2luZS5oCisrKyBiL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9xdC9RdFZpZXdwb3J0SW50ZXJh
Y3Rpb25FbmdpbmUuaApAQCAtNTQsNiArNTQsNyBAQCBwdWJsaWM6CiAgICAgICAgICAgICAsIG1h
eGltdW1TY2FsZSgxLjgpCiAgICAgICAgICAgICAsIGRldmljZVBpeGVsUmF0aW8oMS4wKQogICAg
ICAgICAgICAgLCBpc1VzZXJTY2FsYWJsZSh0cnVlKQorICAgICAgICAgICAgLCBsYXlvdXRTaXpl
KFFTaXplKCkpCiAgICAgICAgIHsgfQogCiAgICAgICAgIHFyZWFsIGluaXRpYWxTY2FsZTsKQEAg
LTYxLDYgKzYyLDcgQEAgcHVibGljOgogICAgICAgICBxcmVhbCBtYXhpbXVtU2NhbGU7CiAgICAg
ICAgIHFyZWFsIGRldmljZVBpeGVsUmF0aW87CiAgICAgICAgIGJvb2wgaXNVc2VyU2NhbGFibGU7
CisgICAgICAgIFFTaXplIGxheW91dFNpemU7CiAgICAgfTsKIAogICAgIGJvb2wgZXZlbnQoUUV2
ZW50Kik7CkBAIC05NCw2ICs5Niw3IEBAIHB1YmxpYzoKICAgICB2b2lkIHpvb21Ub0FyZWFHZXN0
dXJlRW5kZWQoY29uc3QgUVBvaW50RiYgdG91Y2hQb2ludCwgY29uc3QgUVJlY3RGJiB0YXJnZXRB
cmVhKTsKICAgICB2b2lkIGZvY3VzRWRpdGFibGVBcmVhKGNvbnN0IFFSZWN0RiYgY2FyZXRBcmVh
LCBjb25zdCBRUmVjdEYmIHRhcmdldEFyZWEpOwogCisgICAgY29uc3QgQ29uc3RyYWludHMmIGNv
bnN0cmFpbnRzKCkgY29uc3QgeyByZXR1cm4gbV9jb25zdHJhaW50czsgfQogUV9TSUdOQUxTOgog
ICAgIHZvaWQgY29udGVudFN1c3BlbmRSZXF1ZXN0ZWQoKTsKICAgICB2b2lkIGNvbnRlbnRSZXN1
bWVSZXF1ZXN0ZWQoKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9xdHdlYmtpdC1leHBvcnQubWFwIGIv
U291cmNlL3F0d2Via2l0LWV4cG9ydC5tYXAKaW5kZXggYjc3NjkzYy4uODMyMDVjOCAxMDA2NDQK
LS0tIGEvU291cmNlL3F0d2Via2l0LWV4cG9ydC5tYXAKKysrIGIvU291cmNlL3F0d2Via2l0LWV4
cG9ydC5tYXAKQEAgLTEzMCw2ICsxMzAsOSBAQCBxd2tfMS4wIHsKICAgICAgICAgKlFXZWJEb3du
bG9hZEl0ZW07CiAgICAgICAgIG5vbi12aXJ0dWFsP3RodW5rP3RvP1FXZWJEb3dubG9hZEl0ZW0q
OwogICAgICAgICBRV2ViRG93bmxvYWRJdGVtOjoqOworICAgICAgICAqUVdlYlZpZXdwb3J0SW5m
bzsKKyAgICAgICAgbm9uLXZpcnR1YWw/dGh1bms/dG8/UVdlYlZpZXdwb3J0SW5mbzsKKyAgICAg
ICAgUVdlYlZpZXdwb3J0SW5mbzo6KjsKICAgICAgICAgKlFRdWlja1dlYlBhZ2U7CiAgICAgICAg
IG5vbi12aXJ0dWFsP3RodW5rP3RvP1FRdWlja1dlYlBhZ2UqOwogICAgICAgICBRUXVpY2tXZWJQ
YWdlOjoqOwpkaWZmIC0tZ2l0IGEvVG9vbHMvQ2hhbmdlTG9nIGIvVG9vbHMvQ2hhbmdlTG9nCmlu
ZGV4IGI3MzY3ZTEuLmM1YjlmZDggMTAwNjQ0Ci0tLSBhL1Rvb2xzL0NoYW5nZUxvZworKysgYi9U
b29scy9DaGFuZ2VMb2cKQEAgLTEsMyArMSwyMSBAQAorMjAxMS0xMS0yNCAgTWljaGFlbCBCcsO8
bmluZyAgPG1pY2hhZWwuYnJ1bmluZ0Bub2tpYS5jb20+CisKKyAgICAgICAgW1FUXVtXSzJdQWRk
IChleHBlcmltZW50YWwpIHZpZXdwb3J0IGluZm8gdmlldyB0byBNaW5pYnJvd3Nlci9xdC4KKyAg
ICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTcyODkzCisKKyAg
ICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgVGhpcyBwYXRjaCBl
eHRlbmRzIFFRdWlja1dlYlZpZXdFeHBlcmltZW50YWwgYnkgYSBwcm9wZXJ0eSBuYW1lZAorICAg
ICAgICB2aWV3cG9ydEluZm8sIHdoaWNoIGNvbnRhaW5zIHRoZSB2aWV3cG9ydCBzY2FsYWJpbGl0
eSBhbmQKKyAgICAgICAgbGF5b3V0IGFuZCBjb250ZW50cyBzaXplIGluZm9ybWF0aW9uLiBUaGlz
IHByb3BlcnR5IGlzIGV4cG9zZWQgdG8KKyAgICAgICAgUU1MIHRocm91Z2ggdGhlIGV4cGVyaW1l
bnRhbCBleHRlbnNpb24gZm9yIFFRdWlja1dlYlZpZXcuCisKKyAgICAgICAgKiBNaW5pQnJvd3Nl
ci9xdC9NaW5pQnJvd3Nlci5wcm86CisgICAgICAgICogTWluaUJyb3dzZXIvcXQvTWluaUJyb3dz
ZXIucXJjOgorICAgICAgICAqIE1pbmlCcm93c2VyL3F0L2ljb25zL2luZm8ucG5nOiBBZGRlZC4K
KyAgICAgICAgKiBNaW5pQnJvd3Nlci9xdC9xbWwvQnJvd3NlcldpbmRvdy5xbWw6CisgICAgICAg
ICogTWluaUJyb3dzZXIvcXQvcW1sL1ZpZXdwb3J0SW5mb0l0ZW0ucW1sOiBBZGRlZC4KKwogMjAx
MS0xMi0xNSAgQWxleGFuZGVyIEbDpnLDuHkgIDxhaGZAMHg5MC5kaz4KIAogICAgICAgICBbUXRd
IFF0V2ViS2l0IGZhaWxzIHRvIGJ1aWxkIG9uIE1hYyBPUyBYIGFmdGVyIHIxMDI3NzYKZGlmZiAt
LWdpdCBhL1Rvb2xzL01pbmlCcm93c2VyL3F0L01pbmlCcm93c2VyLnBybyBiL1Rvb2xzL01pbmlC
cm93c2VyL3F0L01pbmlCcm93c2VyLnBybwppbmRleCA4MjM3MjE3Li5jYmU3Nzk0IDEwMDY0NAot
LS0gYS9Ub29scy9NaW5pQnJvd3Nlci9xdC9NaW5pQnJvd3Nlci5wcm8KKysrIGIvVG9vbHMvTWlu
aUJyb3dzZXIvcXQvTWluaUJyb3dzZXIucHJvCkBAIC0zMSw0ICszMSw1IEBAIFJFU09VUkNFUyAr
PSBNaW5pQnJvd3Nlci5xcmMKIAogT1RIRVJfRklMRVMgKz0gXAogICAgIHFtbC9Ccm93c2VyV2lu
ZG93LnFtbCBcCi0gICAgcW1sL0l0ZW1TZWxlY3Rvci5xbWwKKyAgICBxbWwvSXRlbVNlbGVjdG9y
LnFtbCBcCisgICAgcW1sL1ZpZXdwb3J0SW5mb0l0ZW0ucW1sCmRpZmYgLS1naXQgYS9Ub29scy9N
aW5pQnJvd3Nlci9xdC9NaW5pQnJvd3Nlci5xcmMgYi9Ub29scy9NaW5pQnJvd3Nlci9xdC9NaW5p
QnJvd3Nlci5xcmMKaW5kZXggYjdlYmY0NS4uMjY2NjgzZCAxMDA2NDQKLS0tIGEvVG9vbHMvTWlu
aUJyb3dzZXIvcXQvTWluaUJyb3dzZXIucXJjCisrKyBiL1Rvb2xzL01pbmlCcm93c2VyL3F0L01p
bmlCcm93c2VyLnFyYwpAQCAtMSw1ICsxLDYgQEAKIDxSQ0M+CiAgICAgPHFyZXNvdXJjZSBwcmVm
aXg9Ii8iPgorICAgICAgICA8ZmlsZT5pY29ucy9pbmZvLnBuZzwvZmlsZT4KICAgICAgICAgPGZp
bGU+aWNvbnMvbmV4dC5wbmc8L2ZpbGU+CiAgICAgICAgIDxmaWxlPmljb25zL3ByZXZpb3VzLnBu
ZzwvZmlsZT4KICAgICAgICAgPGZpbGU+aWNvbnMvcmVmcmVzaC5wbmc8L2ZpbGU+CkBAIC04LDYg
KzksNyBAQAogICAgICAgICA8ZmlsZT5xbWwvQnJvd3NlcldpbmRvdy5xbWw8L2ZpbGU+CiAgICAg
ICAgIDxmaWxlPnFtbC9JdGVtU2VsZWN0b3IucW1sPC9maWxlPgogICAgICAgICA8ZmlsZT5xbWwv
TW9ja1RvdWNoUG9pbnQucW1sPC9maWxlPgorICAgICAgICA8ZmlsZT5xbWwvVmlld3BvcnRJbmZv
SXRlbS5xbWw8L2ZpbGU+CiAgICAgICAgIDxmaWxlPnVzZXJhZ2VudGxpc3QudHh0PC9maWxlPgog
ICAgIDwvcXJlc291cmNlPgogPC9SQ0M+CmRpZmYgLS1naXQgYS9Ub29scy9NaW5pQnJvd3Nlci9x
dC9pY29ucy9pbmZvLnBuZyBiL1Rvb2xzL01pbmlCcm93c2VyL3F0L2ljb25zL2luZm8ucG5nCm5l
dyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAuLmRiNDgzZmYxMDBmMTRlNzljMWM2MTg1ZTE5YjMxZmUxNGZhZWRlOWYKR0lUIGJp
bmFyeSBwYXRjaApsaXRlcmFsIDM0MAp6Y21lQVNATj8ob2xIeWB1VkJxIWlhMHZwXlZqI0BIMXwq
TWMkKn40ZmpLeDlqUDdMZUwkLUQkfCpwal42VF5SbUAKejtEV3UmQ2omKHwzcF5yPTg1cD5RTDcw
KFkpKkswLUFiV3xZdVBnZylaWlFGQXZHM2xDbUk4JlljKUI9LVNlJC0pCnpXdj5ecnFYX0dSXlFL
RF5CbyN3bk9eNztuPSR5TDhSXk1OJDNqNUI2OVcyXylEPClRIUIqcys5RSZZYDxzQWNPKwp6dChM
IXZRNXUjN0pJfGNBRVZkfFVTRlYjKkZLdClVWDM4dDxFVmc7YmNzX01yU21+WCghLXI0THtjM1dK
SHx8eDMKelhZJlZYd0gqZ0lgVX5zSjB6fDQ4Tmp7TEJwRX5hd2Y4bjApIVorUV54O0AjcUpEPUhq
Pn42bntwbU4xZ3coRl8kCno+UCFvKGJiMFM1Y2RSeUI2dVhGSDxOOH19KlRhN0JvVSp6NXVYaVZa
V01KIT42fXQrQS0yYV5Ld183Qnl7elhKfAplK2VXKXI5YHtBZHZ9TmxKKHNZNlRXQUpxS2I2TXc8
JjskVSVWU3VJcAoKbGl0ZXJhbCAwCkhjbVY/ZDAwMDAxCgpkaWZmIC0tZ2l0IGEvVG9vbHMvTWlu
aUJyb3dzZXIvcXQvcW1sL0Jyb3dzZXJXaW5kb3cucW1sIGIvVG9vbHMvTWluaUJyb3dzZXIvcXQv
cW1sL0Jyb3dzZXJXaW5kb3cucW1sCmluZGV4IGEyMjE1NTMuLjJkNmU2MjkgMTAwNjQ0Ci0tLSBh
L1Rvb2xzL01pbmlCcm93c2VyL3F0L3FtbC9Ccm93c2VyV2luZG93LnFtbAorKysgYi9Ub29scy9N
aW5pQnJvd3Nlci9xdC9xbWwvQnJvd3NlcldpbmRvdy5xbWwKQEAgLTE2MCw2ICsxNjAsMjUgQEAg
UmVjdGFuZ2xlIHsKICAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgIH0KICAg
ICAgICAgICAgIH0KKworICAgICAgICAgICAgUmVjdGFuZ2xlIHsKKyAgICAgICAgICAgICAgICBp
ZDogdmlld3BvcnRJbmZvQnV0dG9uCisgICAgICAgICAgICAgICAgaGVpZ2h0OiBuYXZpZ2F0aW9u
QmFyLmhlaWdodCAtIDIKKyAgICAgICAgICAgICAgICB3aWR0aDogaGVpZ2h0CisgICAgICAgICAg
ICAgICAgY29sb3I6ICIjZWZlZmVmIgorCisgICAgICAgICAgICAgICAgSW1hZ2UgeworICAgICAg
ICAgICAgICAgICAgICBhbmNob3JzLmNlbnRlckluOiBwYXJlbnQKKyAgICAgICAgICAgICAgICAg
ICAgc291cmNlOiAiLi4vaWNvbnMvaW5mby5wbmciCisgICAgICAgICAgICAgICAgfQorCisgICAg
ICAgICAgICAgICAgTW91c2VBcmVhIHsKKyAgICAgICAgICAgICAgICAgICAgYW5jaG9ycy5maWxs
OiBwYXJlbnQKKyAgICAgICAgICAgICAgICAgICAgb25DbGlja2VkOiB7CisgICAgICAgICAgICAg
ICAgICAgICAgIHZpZXdwb3J0SW5mb0l0ZW0udmlzaWJsZSA9ICF2aWV3cG9ydEluZm9JdGVtLnZp
c2libGUKKyAgICAgICAgICAgICAgICAgICAgfQorICAgICAgICAgICAgICAgIH0KKyAgICAgICAg
ICAgIH0KICAgICAgICAgfQogICAgICAgICBSZWN0YW5nbGUgewogICAgICAgICAgICAgY29sb3I6
ICJ3aGl0ZSIKQEAgLTIzNSw2ICsyNTQsMTggQEAgUmVjdGFuZ2xlIHsKICAgICAgICAgZXhwZXJp
bWVudGFsLml0ZW1TZWxlY3RvcjogSXRlbVNlbGVjdG9yIHsgfQogICAgIH0KIAorICAgIFZpZXdw
b3J0SW5mb0l0ZW0geworICAgICAgICBpZDogdmlld3BvcnRJbmZvSXRlbQorICAgICAgICBhbmNo
b3JzIHsKKyAgICAgICAgICAgIHRvcDogbmF2aWdhdGlvbkJhci5ib3R0b20KKyAgICAgICAgICAg
IGxlZnQ6IHBhcmVudC5sZWZ0CisgICAgICAgICAgICByaWdodDogcGFyZW50LnJpZ2h0CisgICAg
ICAgICAgICBib3R0b206IHBhcmVudC5ib3R0b20KKyAgICAgICAgfQorICAgICAgICB2aXNpYmxl
OiBmYWxzZQorICAgICAgICB2aWV3cG9ydEluZm8gOiB3ZWJWaWV3LmV4cGVyaW1lbnRhbC52aWV3
cG9ydEluZm8KKyAgICB9CisKICAgICBLZXlzLm9uUHJlc3NlZDogewogICAgICAgICBpZiAoKChl
dmVudC5tb2RpZmllcnMgJiBRdC5Db250cm9sTW9kaWZpZXIpICYmIGV2ZW50LmtleSA9PSBRdC5L
ZXlfTCkgfHwgZXZlbnQua2V5ID09IFF0LmtleV9GNikgewogICAgICAgICAgICAgZm9jdXNBZGRy
ZXNzQmFyKCkKZGlmZiAtLWdpdCBhL1Rvb2xzL01pbmlCcm93c2VyL3F0L3FtbC9WaWV3cG9ydElu
Zm9JdGVtLnFtbCBiL1Rvb2xzL01pbmlCcm93c2VyL3F0L3FtbC9WaWV3cG9ydEluZm9JdGVtLnFt
bApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi40MjNiNzBhCi0tLSAvZGV2L251
bGwKKysrIGIvVG9vbHMvTWluaUJyb3dzZXIvcXQvcW1sL1ZpZXdwb3J0SW5mb0l0ZW0ucW1sCkBA
IC0wLDAgKzEsNjMgQEAKK2ltcG9ydCBRdFF1aWNrIDIuMAoraW1wb3J0IFF0V2ViS2l0IDMuMAor
CitSZWN0YW5nbGUgeworICAgIHByb3BlcnR5IHZhciB2aWV3cG9ydEluZm8KKworICAgIGNvbG9y
OiAiYmxhY2siCisgICAgb3BhY2l0eTogMC44CisKKyAgICBUZXh0IHsKKyAgICAgICAgaWQ6IHZp
ZXdwb3J0SW5mb0xhYmVsCisgICAgICAgIHRleHQ6ICJWaWV3cG9ydCBJbmZvIgorICAgICAgICBj
b2xvcjogIndoaXRlIgorICAgIH0KKyAgICBUZXh0IHsKKyAgICAgICAgaWQ6IGN1cnJlbnRTY2Fs
ZUxhYmVsCisgICAgICAgIGFuY2hvcnMudG9wOiB2aWV3cG9ydEluZm9MYWJlbC5ib3R0b20KKyAg
ICAgICAgdGV4dDogIkN1cnJlbnQgc2NhbGU6ICIgKyB2aWV3cG9ydEluZm8uY3VycmVudFNjYWxl
CisgICAgICAgIGNvbG9yOiAid2hpdGUiCisgICAgfQorICAgIFRleHQgeworICAgICAgICBpZDog
aW5pdGlhbFNjYWxlTGFiZWwKKyAgICAgICAgYW5jaG9ycy50b3A6IGN1cnJlbnRTY2FsZUxhYmVs
LmJvdHRvbQorICAgICAgICB0ZXh0OiAiSW5pdGlhbCBzY2FsZTogIiArIHZpZXdwb3J0SW5mby5p
bml0aWFsU2NhbGUKKyAgICAgICAgY29sb3I6ICJ3aGl0ZSIKKyAgICB9CisgICAgVGV4dCB7Cisg
ICAgICAgIGlkOiBtaW5pbXVtU2NhbGVMYWJlbAorICAgICAgICBhbmNob3JzLnRvcDogaW5pdGlh
bFNjYWxlTGFiZWwuYm90dG9tCisgICAgICAgIHRleHQ6ICJNaW5pbXVtIHNjYWxlOiAiICsgdmll
d3BvcnRJbmZvLm1pbmltdW1TY2FsZQorICAgICAgICBjb2xvcjogIndoaXRlIgorICAgIH0KKyAg
ICBUZXh0IHsKKyAgICAgICAgaWQ6IG1heGltdW1TY2FsZUxhYmVsCisgICAgICAgIGFuY2hvcnMu
dG9wOiBtaW5pbXVtU2NhbGVMYWJlbC5ib3R0b20KKyAgICAgICAgdGV4dDogIk1heGltdW0gc2Nh
bGU6ICIgKyB2aWV3cG9ydEluZm8ubWF4aW11bVNjYWxlCisgICAgICAgIGNvbG9yOiAid2hpdGUi
CisgICAgfQorICAgIFRleHQgeworICAgICAgICBpZDogZGV2aWNlUGl4ZWxSYXRpb0xhYmVsCisg
ICAgICAgIGFuY2hvcnMudG9wOiBtYXhpbXVtU2NhbGVMYWJlbC5ib3R0b20KKyAgICAgICAgdGV4
dDogIkRldmljZSBwaXhlbCByYXRpb246ICIgKyB2aWV3cG9ydEluZm8uZGV2aWNlUGl4ZWxSYXRp
bworICAgICAgICBjb2xvcjogIndoaXRlIgorICAgIH0KKyAgICBUZXh0IHsKKyAgICAgICAgaWQ6
IGNvbnRlbnRzU2l6ZUxhYmVsCisgICAgICAgIGFuY2hvcnMudG9wOiBkZXZpY2VQaXhlbFJhdGlv
TGFiZWwuYm90dG9tCisgICAgICAgIHRleHQ6ICJDb250ZW50cyBzaXplOiAoIiArIHZpZXdwb3J0
SW5mby5jb250ZW50c1NpemUud2lkdGggKyAieCIgKyB2aWV3cG9ydEluZm8uY29udGVudHNTaXpl
LmhlaWdodCArICIpIgorICAgICAgICBjb2xvcjogIndoaXRlIgorICAgIH0KKyAgICBUZXh0IHsK
KyAgICAgICAgaWQ6IGxheW91dFNpemVMYWJlbAorICAgICAgICBhbmNob3JzLnRvcDogY29udGVu
dHNTaXplTGFiZWwuYm90dG9tCisgICAgICAgIHRleHQ6ICJWaWV3cG9ydCBsYXlvdXQgc2l6ZTog
KCIgKyB2aWV3cG9ydEluZm8ubGF5b3V0U2l6ZS53aWR0aCArICJ4IiArIHZpZXdwb3J0SW5mby5s
YXlvdXRTaXplLmhlaWdodCArICIpIgorICAgICAgICBjb2xvcjogIndoaXRlIgorICAgIH0KKyAg
ICBUZXh0IHsKKyAgICAgICAgaWQ6IHNjYWxhYmxlTGFiZWwKKyAgICAgICAgYW5jaG9ycy50b3A6
IGxheW91dFNpemVMYWJlbC5ib3R0b20KKyAgICAgICAgdGV4dDogIlZpZXcgIiArICh2aWV3cG9y
dEluZm8uaXNTY2FsYWJsZSA/ICJpcyAiIDogImlzIG5vdCAiICkgKyAic2NhbGFibGUuIgorICAg
ICAgICBjb2xvcjogIndoaXRlIgorICAgIH0KK30KLS0gCjEuNy40LjEKCg==
</data>

          </attachment>
      

    </bug>

</bugzilla>