<?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>74176</bug_id>
          
          <creation_ts>2011-12-09 04:33:39 -0800</creation_ts>
          <short_desc>[Qt][WK2]REGRESSION(r102435): It made tst_QQuickWebView::show() crash</short_desc>
          <delta_ts>2012-01-13 05:44:52 -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>Tools / Tests</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>All</rep_platform>
          <op_sys>All</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords>Qt, QtTriaged</keywords>
          <priority>P1</priority>
          <bug_severity>Critical</bug_severity>
          <target_milestone>---</target_milestone>
          
          <blocked>70236</blocked>
    
    <blocked>73591</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="Csaba Osztrogonác">ossy</reporter>
          <assigned_to name="Viatcheslav Ostapenko">ostap73</assigned_to>
          <cc>hausmann</cc>
    
    <cc>mrobinson</cc>
    
    <cc>noam</cc>
    
    <cc>ossy</cc>
    
    <cc>ostap73</cc>
    
    <cc>webkit.review.bot</cc>
    
    <cc>zoltan</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>518209</commentid>
    <comment_count>0</comment_count>
    <who name="Csaba Osztrogonác">ossy</who>
    <bug_when>2011-12-09 04:33:39 -0800</bug_when>
    <thetext>QFATAL : tst_QQuickWebView::show() Received signal 11
FAIL!  : tst_QQuickWebView::show() Received a fatal error.

This crash hides 2 other test:
PASS   : tst_QQuickWebView::showWebView()
PASS   : tst_QQuickWebView::cleanupTestCase()</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>518240</commentid>
    <comment_count>1</comment_count>
    <who name="Csaba Osztrogonác">ossy</who>
    <bug_when>2011-12-09 06:52:03 -0800</bug_when>
    <thetext>+info: it crashes in xvfb, but passes with X forward.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>519093</commentid>
    <comment_count>2</comment_count>
    <who name="Csaba Osztrogonác">ossy</who>
    <bug_when>2011-12-12 03:09:13 -0800</bug_when>
    <thetext>(In reply to comment #1)
&gt; +info: it crashes in xvfb, but passes with X forward.

I meant xvfb-run -a --server-args=&quot;-screen 0 1024x768x24&quot; Tools/Scripts/run-qtwebkit-tests --output-file=qt-unit-tests.html --do-not-open-results --timeout=120 WebKitBuild/Release/Source/WebKit2/UIProcess/API/qt/tests/</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>520397</commentid>
    <comment_count>3</comment_count>
      <attachid>119092</attachid>
    <who name="Viatcheslav Ostapenko">ostap73</who>
    <bug_when>2011-12-13 15:04:22 -0800</bug_when>
    <thetext>Created attachment 119092
&quot;Normal&quot; X server glxinfo run log.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>520398</commentid>
    <comment_count>4</comment_count>
      <attachid>119093</attachid>
    <who name="Viatcheslav Ostapenko">ostap73</who>
    <bug_when>2011-12-13 15:05:28 -0800</bug_when>
    <thetext>Created attachment 119093
Xvfb server glxinfo run log.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>520400</commentid>
    <comment_count>5</comment_count>
    <who name="Viatcheslav Ostapenko">ostap73</who>
    <bug_when>2011-12-13 15:08:20 -0800</bug_when>
    <thetext>(In reply to comment #2)
&gt; (In reply to comment #1)
&gt; &gt; +info: it crashes in xvfb, but passes with X forward.
&gt; 
&gt; I meant xvfb-run -a --server-args=&quot;-screen 0 1024x768x24&quot; Tools/Scripts/run-qtwebkit-tests --output-file=qt-unit-tests.html --do-not-open-results --timeout=120 WebKitBuild/Release/Source/WebKit2/UIProcess/API/qt/tests/

It seems Xvfb just doesn&apos;t support shaders. Check attached logs.


Could you run

xvfb-run -a --server-args=&quot;-screen 0 1024x768x24&quot; glxinfo

on build bot and attach log here?

Thanks.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>520808</commentid>
    <comment_count>6</comment_count>
      <attachid>119184</attachid>
    <who name="Csaba Osztrogonác">ossy</who>
    <bug_when>2011-12-14 02:24:52 -0800</bug_when>
    <thetext>Created attachment 119184
xvfb glxinfo run log from the bot</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>531839</commentid>
    <comment_count>7</comment_count>
    <who name="Viatcheslav Ostapenko">ostap73</who>
    <bug_when>2012-01-08 15:27:57 -0800</bug_when>
    <thetext>(In reply to comment #6)
&gt; Created an attachment (id=119184) [details]
&gt; xvfb glxinfo run log from the bot

1. xvfb GL support on ubuntu depends on mesa, which is missing mesa GLX if HW nvidia or ATI drivers installed. The only way to run this correctly is to remove HW drivers and use mesa GLX implementation.
2. Deletion of test window in API test also cause destruction of GL context making all global GL objects in TextureMapperGL invalid. Also, current implementation will not work with multiple windows (because they will have multiple canvases and multiple GL contexts).
Here is QOpenGLContest destruction call stack:
0	QOpenGLContext::~QOpenGLContext	qopenglcontext.cpp	193	0xb660e919	
1	QOpenGLContext::~QOpenGLContext	qopenglcontext.cpp	194	0xb660e983	
2	QQuickTrivialWindowManager::hide	qquickwindowmanager.cpp	1123	0xb7447aab	
3	QQuickTrivialWindowManager::canvasDestroyed	qquickwindowmanager.cpp	1130	0xb7447ae5	
4	QQuickCanvas::~QQuickCanvas	qquickcanvas.cpp	635	0xb7362a00	
5	QQuickView::~QQuickView	qquickview.cpp	178	0xb742119f	
6	TestWindow::~TestWindow	testwindow.h	29	0x8051f27	
7	TestWindow::~TestWindow	testwindow.h	29	0x8051f77	
8	QScopedPointerDeleter&lt;TestWindow&gt;::cleanup	qscopedpointer.h	62	0x8051fa2	
9	QScopedPointer&lt;TestWindow, QScopedPointerDeleter&lt;TestWindow&gt; &gt;::reset	qscopedpointer.h	149	0x80517c9	
10	tst_QQuickWebView::cleanup	tst_qquickwebview.cpp	73	0x804ea90	
11	tst_QQuickWebView::qt_static_metacall	tst_qquickwebview.moc	74	0x8050a24	
12	QMetaMethod::invoke	qmetaobject.cpp	1634	0xb630b991	
13	QMetaMethod::invoke	qmetaobject.h	120	0xb6a4167f	
14	QTest::invokeMethod	qtestcase.cpp	998	0xb6a3b927	
15	QTest::qInvokeTestMethodDataEntry	qtestcase.cpp	1505	0xb6a3dafa	
16	QTest::qInvokeTestMethod	qtestcase.cpp	1605	0xb6a3e217	
17	QTest::qInvokeTestMethods	qtestcase.cpp	1759	0xb6a3e9b2	
18	QTest::qExec	qtestcase.cpp	1972	0xb6a3ee77	
19	main	tst_qquickwebview.cpp	287	0x8050957</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>531849</commentid>
    <comment_count>8</comment_count>
      <attachid>121596</attachid>
    <who name="Viatcheslav Ostapenko">ostap73</who>
    <bug_when>2012-01-08 15:47:18 -0800</bug_when>
    <thetext>Created attachment 121596
Patch

Ossy, please, could you take a look at this?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>531856</commentid>
    <comment_count>9</comment_count>
      <attachid>121596</attachid>
    <who name="Early Warning System Bot">webkit-ews</who>
    <bug_when>2012-01-08 16:00:50 -0800</bug_when>
    <thetext>Comment on attachment 121596
Patch

Attachment 121596 did not pass qt-ews (qt):
Output: http://queues.webkit.org/results/11113272</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>531894</commentid>
    <comment_count>10</comment_count>
      <attachid>121605</attachid>
    <who name="Viatcheslav Ostapenko">ostap73</who>
    <bug_when>2012-01-08 17:39:21 -0800</bug_when>
    <thetext>Created attachment 121605
Use QGLContext compatible with previous Qt version</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>531898</commentid>
    <comment_count>11</comment_count>
      <attachid>121605</attachid>
    <who name="Noam Rosenthal">noam</who>
    <bug_when>2012-01-08 17:56:23 -0800</bug_when>
    <thetext>Comment on attachment 121605
Use QGLContext compatible with previous Qt version

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

&gt; Source/WebCore/platform/graphics/opengl/TextureMapperGL.cpp:43
&gt; +#include &lt;GL/glx.h&gt;

This needs to be inside OS(UNIX) or OS(LINUX) or something like that.

&gt; Source/WebCore/platform/graphics/opengl/TextureMapperGL.cpp:217
&gt; +            GLContextDataMap::const_iterator mapEnd =  glContextDataMap().end();

Double space

&gt; Source/WebCore/platform/graphics/opengl/TextureMapperGL.cpp:219
&gt; +            for (i = glContextDataMap().begin(); i != mapEnd; ++i)

Curly braces</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>531899</commentid>
    <comment_count>12</comment_count>
    <who name="Noam Rosenthal">noam</who>
    <bug_when>2012-01-08 17:57:29 -0800</bug_when>
    <thetext>Can&apos;t we make it simpler, by making this GL data non-static, and not try to share it between TextureMapperGL instances in the same GL context? It seems a bit superfluous</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>532631</commentid>
    <comment_count>13</comment_count>
      <attachid>121755</attachid>
    <who name="Viatcheslav Ostapenko">ostap73</who>
    <bug_when>2012-01-09 16:29:08 -0800</bug_when>
    <thetext>Created attachment 121755
Added multiWindow API test and other patch fixes.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>532642</commentid>
    <comment_count>14</comment_count>
      <attachid>121755</attachid>
    <who name="Noam Rosenthal">noam</who>
    <bug_when>2012-01-09 16:37:41 -0800</bug_when>
    <thetext>Comment on attachment 121755
Added multiWindow API test and other patch fixes.

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

On the right tracks, but meeds some improvements...

&gt; Source/WebCore/platform/graphics/opengl/TextureMapperGL.cpp:127
&gt; +#else

if OS(LINUX/UNIX) ???

&gt; Source/WebCore/platform/graphics/opengl/TextureMapperGL.cpp:201
&gt; +            GLuint shaders[4];

Why 4?

&gt; Source/WebCore/platform/graphics/opengl/TextureMapperGL.cpp:230
&gt; +            GLContextDataMap::iterator i;

it instead of i

&gt; Source/WebKit2/UIProcess/API/qt/tests/qquickwebview/tst_qquickwebview.cpp:276
&gt; +    showWebView();

The right test for this is not multiple top-level windows, but rather multiple web-views in the same scene.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>532736</commentid>
    <comment_count>15</comment_count>
    <who name="Viatcheslav Ostapenko">ostap73</who>
    <bug_when>2012-01-09 17:59:50 -0800</bug_when>
    <thetext>(In reply to comment #14)
&gt; (From update of attachment 121755 [details])
&gt; View in context: https://bugs.webkit.org/attachment.cgi?id=121755&amp;action=review
&gt; 
&gt; On the right tracks, but meeds some improvements...
&gt; 
&gt; &gt; Source/WebCore/platform/graphics/opengl/TextureMapperGL.cpp:127
&gt; &gt; +#else
&gt; 
&gt; if OS(LINUX/UNIX) ???

Without any default it will fail build in any case. I can make some default  GLContext/getCurrentGLContext returning incrementing integer this way disabling any sharing. Would it work?

&gt; &gt; Source/WebCore/platform/graphics/opengl/TextureMapperGL.cpp:201
&gt; &gt; +            GLuint shaders[4];
&gt; 
&gt; Why 4?

Should be 2.
I had some problems and was guessing around that there are no other shaders or something and forgot to change back. Or may be it would be better just to save shader id&apos;s?

&gt; &gt; Source/WebCore/platform/graphics/opengl/TextureMapperGL.cpp:230
&gt; &gt; +            GLContextDataMap::iterator i;
&gt; 
&gt; it instead of i

Ok

&gt; &gt; Source/WebKit2/UIProcess/API/qt/tests/qquickwebview/tst_qquickwebview.cpp:276
&gt; &gt; +    showWebView();
&gt; 
&gt; The right test for this is not multiple top-level windows, but rather multiple web-views in the same scene.

Actually, in this case it will be single GL context.
But we are missing multi-view test also.
What you prefer - add multiple views to this test or created separate test with multiple views on one window?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>532773</commentid>
    <comment_count>16</comment_count>
    <who name="Noam Rosenthal">noam</who>
    <bug_when>2012-01-09 19:17:37 -0800</bug_when>
    <thetext>&gt; &gt; if OS(LINUX/UNIX) ???
&gt; 
&gt; Without any default it will fail build in any case. I can make some default  GLContext/getCurrentGLContext returning incrementing integer this way disabling any sharing. Would it work?
Yes, I don&apos;t see why not.

&gt; I had some problems and was guessing around that there are no other shaders or something and forgot to change back. Or may be it would be better just to save shader id&apos;s?
Yes, probably. That code seems unnecessarily complex.

&gt; &gt; &gt; Source/WebKit2/UIProcess/API/qt/tests/qquickwebview/tst_qquickwebview.cpp:276
&gt; &gt; &gt; +    showWebView();
&gt; &gt; 
&gt; &gt; The right test for this is not multiple top-level windows, but rather multiple web-views in the same scene.
&gt; 
&gt; Actually, in this case it will be single GL context.
&gt; But we are missing multi-view test also.
&gt; What you prefer - add multiple views to this test or created separate test with multiple views on one window?
Have two tests together with this patch, multipleWebViewsInSingleWindow and multipleWebViewWindows.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>532774</commentid>
    <comment_count>17</comment_count>
    <who name="Noam Rosenthal">noam</who>
    <bug_when>2012-01-09 19:18:07 -0800</bug_when>
    <thetext>(In reply to comment #16)
&gt; &gt; &gt; if OS(LINUX/UNIX) ???
&gt; &gt; 
btw UNIX/LINUX doesn&apos;t necessarily mean GLX... we have to account for EGL as well.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>532793</commentid>
    <comment_count>18</comment_count>
      <attachid>121755</attachid>
    <who name="Martin Robinson">mrobinson</who>
    <bug_when>2012-01-09 20:27:52 -0800</bug_when>
    <thetext>Comment on attachment 121755
Added multiWindow API test and other patch fixes.

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

&gt;&gt;&gt; Source/WebCore/platform/graphics/opengl/TextureMapperGL.cpp:127
&gt;&gt;&gt; +#else
&gt;&gt; 
&gt;&gt; if OS(LINUX/UNIX) ???
&gt; 
&gt; Without any default it will fail build in any case. I can make some default  GLContext/getCurrentGLContext returning incrementing integer this way disabling any sharing. Would it work?

Won&apos;t this fail for systems using EGL instead of GLX?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>532838</commentid>
    <comment_count>19</comment_count>
    <who name="Martin Robinson">mrobinson</who>
    <bug_when>2012-01-09 23:14:40 -0800</bug_when>
    <thetext>(In reply to comment #18)

&gt; Won&apos;t this fail for systems using EGL instead of GLX?

Oops. Didn&apos;t see Noam&apos;s comment. Sorry!</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>533117</commentid>
    <comment_count>20</comment_count>
      <attachid>121857</attachid>
    <who name="Viatcheslav Ostapenko">ostap73</who>
    <bug_when>2012-01-10 08:53:47 -0800</bug_when>
    <thetext>Created attachment 121857
Updated patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>533135</commentid>
    <comment_count>21</comment_count>
      <attachid>121857</attachid>
    <who name="Noam Rosenthal">noam</who>
    <bug_when>2012-01-10 09:28:12 -0800</bug_when>
    <thetext>Comment on attachment 121857
Updated patch

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

Some nitpicks, almost there.

&gt; Source/WebCore/platform/graphics/opengl/TextureMapperGL.cpp:249
&gt; +            GLContextDataMap::const_iterator mapEnd = glContextDataMap().end();

Use end instead of mapEnd

&gt; Source/WebCore/platform/graphics/opengl/TextureMapperGL.cpp:408
&gt;  void TextureMapperGL::initializeShaders()

I think we should move this function into SharedData constructor, would save us lots of code.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>533136</commentid>
    <comment_count>22</comment_count>
      <attachid>121857</attachid>
    <who name="Noam Rosenthal">noam</who>
    <bug_when>2012-01-10 09:28:35 -0800</bug_when>
    <thetext>Comment on attachment 121857
Updated patch

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

&gt; Source/WebCore/platform/graphics/opengl/TextureMapperGL.cpp:160
&gt; +        static PassRefPtr&lt;SharedGLData&gt; curentSharedGLData()

curent -&gt; current</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>533371</commentid>
    <comment_count>23</comment_count>
      <attachid>121907</attachid>
    <who name="Viatcheslav Ostapenko">ostap73</who>
    <bug_when>2012-01-10 14:13:27 -0800</bug_when>
    <thetext>Created attachment 121907
Updated patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>533411</commentid>
    <comment_count>24</comment_count>
      <attachid>121907</attachid>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2012-01-10 15:20:37 -0800</bug_when>
    <thetext>Comment on attachment 121907
Updated patch

Rejecting attachment 121907 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:
kit-commit-queue/Source/WebKit/chromium/third_party/v8-i18n --revision 7 --non-interactive --force --accept theirs-conflict --ignore-externals&apos; in &apos;/mnt/git/webkit-commit-queue/Source/WebKit/chromium&apos;
45&gt;At revision 7.

________ running &apos;/usr/bin/python tools/clang/scripts/update.py --mac-only&apos; in &apos;/mnt/git/webkit-commit-queue/Source/WebKit/chromium&apos;

________ running &apos;/usr/bin/python gyp_webkit&apos; in &apos;/mnt/git/webkit-commit-queue/Source/WebKit/chromium&apos;
Updating webkit projects from gyp files...

Full output: http://queues.webkit.org/results/11141659</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>533423</commentid>
    <comment_count>25</comment_count>
      <attachid>121921</attachid>
    <who name="Viatcheslav Ostapenko">ostap73</who>
    <bug_when>2012-01-10 15:40:30 -0800</bug_when>
    <thetext>Created attachment 121921
Fix changelog mess.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>533480</commentid>
    <comment_count>26</comment_count>
      <attachid>121921</attachid>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2012-01-10 16:42:25 -0800</bug_when>
    <thetext>Comment on attachment 121921
Fix changelog mess.

Clearing flags on attachment: 121921

Committed r104651: &lt;http://trac.webkit.org/changeset/104651&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>533482</commentid>
    <comment_count>27</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2012-01-10 16:42:32 -0800</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>535604</commentid>
    <comment_count>28</comment_count>
      <attachid>121921</attachid>
    <who name="Simon Hausmann">hausmann</who>
    <bug_when>2012-01-13 05:29:10 -0800</bug_when>
    <thetext>Comment on attachment 121921
Fix changelog mess.

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

&gt; Source/WebCore/platform/graphics/opengl/TextureMapperGL.cpp:122
&gt; +        static GLContext getCurrentGLContext()
&gt; +        {
&gt; +            return eglGetCurrentContext();
&gt; +        }

The use of functions from libEGL also requires changes to the .pro files to link in libEGL. This is missing at the moment and prevent builds on platforms where EGL is used.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>535613</commentid>
    <comment_count>29</comment_count>
    <who name="Simon Hausmann">hausmann</who>
    <bug_when>2012-01-13 05:44:52 -0800</bug_when>
    <thetext>(In reply to comment #28)
&gt; (From update of attachment 121921 [details])
&gt; View in context: https://bugs.webkit.org/attachment.cgi?id=121921&amp;action=review
&gt; 
&gt; &gt; Source/WebCore/platform/graphics/opengl/TextureMapperGL.cpp:122
&gt; &gt; +        static GLContext getCurrentGLContext()
&gt; &gt; +        {
&gt; &gt; +            return eglGetCurrentContext();
&gt; &gt; +        }
&gt; 
&gt; The use of functions from libEGL also requires changes to the .pro files to link in libEGL. This is missing at the moment and prevent builds on platforms where EGL is used.

Filed bug #76268.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="0"
              isprivate="0"
          >
            <attachid>119092</attachid>
            <date>2011-12-13 15:04:22 -0800</date>
            <delta_ts>2011-12-13 15:04:22 -0800</delta_ts>
            <desc>&quot;Normal&quot; X server glxinfo run log.</desc>
            <filename>amd_glxinfo.txt</filename>
            <type>text/plain</type>
            <size>18832</size>
            <attacher name="Viatcheslav Ostapenko">ostap73</attacher>
            
              <data encoding="base64">bmFtZSBvZiBkaXNwbGF5OiA6MC4wCmRpc3BsYXk6IDowICBzY3JlZW46IDAKZGlyZWN0IHJlbmRl
cmluZzogWWVzCnNlcnZlciBnbHggdmVuZG9yIHN0cmluZzogQVRJCnNlcnZlciBnbHggdmVyc2lv
biBzdHJpbmc6IDEuNApzZXJ2ZXIgZ2x4IGV4dGVuc2lvbnM6CiAgICBHTFhfQVJCX211bHRpc2Ft
cGxlLCBHTFhfRVhUX2ltcG9ydF9jb250ZXh0LCBHTFhfRVhUX3RleHR1cmVfZnJvbV9waXhtYXAs
IAogICAgR0xYX0VYVF92aXN1YWxfaW5mbywgR0xYX0VYVF92aXN1YWxfcmF0aW5nLCBHTFhfT01M
X3N3YXBfbWV0aG9kLCAKICAgIEdMWF9TR0lfbWFrZV9jdXJyZW50X3JlYWQsIEdMWF9TR0lfc3dh
cF9jb250cm9sLCBHTFhfU0dJU19tdWx0aXNhbXBsZSwgCiAgICBHTFhfU0dJWF9mYmNvbmZpZywg
R0xYX1NHSVhfcGJ1ZmZlciwgR0xYX1NHSVhfdmlzdWFsX3NlbGVjdF9ncm91cApjbGllbnQgZ2x4
IHZlbmRvciBzdHJpbmc6IEFUSQpjbGllbnQgZ2x4IHZlcnNpb24gc3RyaW5nOiAxLjQKY2xpZW50
IGdseCBleHRlbnNpb25zOgogICAgR0xYX0FSQl9jcmVhdGVfY29udGV4dCwgR0xYX0FSQl9jcmVh
dGVfY29udGV4dF9wcm9maWxlLCAKICAgIEdMWF9BUkJfZ2V0X3Byb2NfYWRkcmVzcywgR0xYX0FS
Ql9tdWx0aXNhbXBsZSwgR0xYX0VYVF9pbXBvcnRfY29udGV4dCwgCiAgICBHTFhfRVhUX3Zpc3Vh
bF9pbmZvLCBHTFhfRVhUX3Zpc3VhbF9yYXRpbmcsIEdMWF9NRVNBX2FsbG9jYXRlX21lbW9yeSwg
CiAgICBHTFhfTUVTQV9jb3B5X3N1Yl9idWZmZXIsIEdMWF9NRVNBX3N3YXBfY29udHJvbCwgCiAg
ICBHTFhfTUVTQV9zd2FwX2ZyYW1lX3VzYWdlLCBHTFhfTlZfc3dhcF9ncm91cCwgR0xYX09NTF9z
d2FwX21ldGhvZCwgCiAgICBHTFhfU0dJX21ha2VfY3VycmVudF9yZWFkLCBHTFhfU0dJX3N3YXBf
Y29udHJvbCwgR0xYX1NHSV92aWRlb19zeW5jLCAKICAgIEdMWF9TR0lTX211bHRpc2FtcGxlLCBH
TFhfU0dJWF9mYmNvbmZpZywgR0xYX1NHSVhfcGJ1ZmZlciwgCiAgICBHTFhfU0dJWF9zd2FwX2Jh
cnJpZXIsIEdMWF9TR0lYX3N3YXBfZ3JvdXAsIEdMWF9TR0lYX3Zpc3VhbF9zZWxlY3RfZ3JvdXAs
IAogICAgR0xYX0VYVF90ZXh0dXJlX2Zyb21fcGl4bWFwLCBHTFhfRVhUX2ZyYW1lYnVmZmVyX3NS
R0IsIAogICAgR0xYX0FSQl9mYmNvbmZpZ19mbG9hdCwgR0xYX0FNRF9ncHVfYXNzb2NpYXRpb24K
R0xYIHZlcnNpb246IDEuNApHTFggZXh0ZW5zaW9uczoKICAgIEdMWF9BUkJfY3JlYXRlX2NvbnRl
eHQsIEdMWF9BUkJfY3JlYXRlX2NvbnRleHRfcHJvZmlsZSwgCiAgICBHTFhfQVJCX2dldF9wcm9j
X2FkZHJlc3MsIEdMWF9BUkJfbXVsdGlzYW1wbGUsIEdMWF9FWFRfaW1wb3J0X2NvbnRleHQsIAog
ICAgR0xYX0VYVF92aXN1YWxfaW5mbywgR0xYX0VYVF92aXN1YWxfcmF0aW5nLCBHTFhfTUVTQV9z
d2FwX2NvbnRyb2wsIAogICAgR0xYX05WX3N3YXBfZ3JvdXAsIEdMWF9PTUxfc3dhcF9tZXRob2Qs
IEdMWF9TR0lfbWFrZV9jdXJyZW50X3JlYWQsIAogICAgR0xYX1NHSV9zd2FwX2NvbnRyb2wsIEdM
WF9TR0lfdmlkZW9fc3luYywgR0xYX1NHSVNfbXVsdGlzYW1wbGUsIAogICAgR0xYX1NHSVhfZmJj
b25maWcsIEdMWF9TR0lYX3BidWZmZXIsIEdMWF9TR0lYX3N3YXBfYmFycmllciwgCiAgICBHTFhf
U0dJWF9zd2FwX2dyb3VwLCBHTFhfU0dJWF92aXN1YWxfc2VsZWN0X2dyb3VwLCAKICAgIEdMWF9F
WFRfdGV4dHVyZV9mcm9tX3BpeG1hcApPcGVuR0wgdmVuZG9yIHN0cmluZzogQVRJIFRlY2hub2xv
Z2llcyBJbmMuCk9wZW5HTCByZW5kZXJlciBzdHJpbmc6IEFNRCBSYWRlb24gSEQgNjQwME0gU2Vy
aWVzCk9wZW5HTCB2ZXJzaW9uIHN0cmluZzogNC4xLjExMDA1IENvbXBhdGliaWxpdHkgUHJvZmls
ZSBDb250ZXh0Ck9wZW5HTCBzaGFkaW5nIGxhbmd1YWdlIHZlcnNpb24gc3RyaW5nOiA0LjEwCk9w
ZW5HTCBleHRlbnNpb25zOgogICAgR0xfQU1EWF9kZWJ1Z19vdXRwdXQsIEdMX0FNRFhfdmVydGV4
X3NoYWRlcl90ZXNzZWxsYXRvciwgCiAgICBHTF9BTURfY29uc2VydmF0aXZlX2RlcHRoLCBHTF9B
TURfZGVidWdfb3V0cHV0LCAKICAgIEdMX0FNRF9kZXB0aF9jbGFtcF9zZXBhcmF0ZSwgR0xfQU1E
X2RyYXdfYnVmZmVyc19ibGVuZCwgCiAgICBHTF9BTURfbXVsdGlfZHJhd19pbmRpcmVjdCwgR0xf
QU1EX25hbWVfZ2VuX2RlbGV0ZSwgCiAgICBHTF9BTURfcGVyZm9ybWFuY2VfbW9uaXRvciwgR0xf
QU1EX3Bpbm5lZF9tZW1vcnksIEdMX0FNRF9zYW1wbGVfcG9zaXRpb25zLCAKICAgIEdMX0FNRF9z
ZWFtbGVzc19jdWJlbWFwX3Blcl90ZXh0dXJlLCBHTF9BTURfc2hhZGVyX3N0ZW5jaWxfZXhwb3J0
LCAKICAgIEdMX0FNRF9zaGFkZXJfdHJhY2UsIEdMX0FNRF90ZXh0dXJlX2N1YmVfbWFwX2FycmF5
LCAKICAgIEdMX0FNRF90ZXh0dXJlX3RleHR1cmU0LCBHTF9BTURfdHJhbnNmb3JtX2ZlZWRiYWNr
M19saW5lc190cmlhbmdsZXMsIAogICAgR0xfQU1EX3ZlcnRleF9zaGFkZXJfdGVzc2VsbGF0b3Is
IEdMX0FSQl9FUzJfY29tcGF0aWJpbGl0eSwgCiAgICBHTF9BUkJfYmxlbmRfZnVuY19leHRlbmRl
ZCwgR0xfQVJCX2NvbG9yX2J1ZmZlcl9mbG9hdCwgR0xfQVJCX2NvcHlfYnVmZmVyLCAKICAgIEdM
X0FSQl9kZXB0aF9idWZmZXJfZmxvYXQsIEdMX0FSQl9kZXB0aF9jbGFtcCwgR0xfQVJCX2RlcHRo
X3RleHR1cmUsIAogICAgR0xfQVJCX2RyYXdfYnVmZmVycywgR0xfQVJCX2RyYXdfYnVmZmVyc19i
bGVuZCwgCiAgICBHTF9BUkJfZHJhd19lbGVtZW50c19iYXNlX3ZlcnRleCwgR0xfQVJCX2RyYXdf
aW5kaXJlY3QsIAogICAgR0xfQVJCX2RyYXdfaW5zdGFuY2VkLCBHTF9BUkJfZXhwbGljaXRfYXR0
cmliX2xvY2F0aW9uLCAKICAgIEdMX0FSQl9mcmFnbWVudF9jb29yZF9jb252ZW50aW9ucywgR0xf
QVJCX2ZyYWdtZW50X3Byb2dyYW0sIAogICAgR0xfQVJCX2ZyYWdtZW50X3Byb2dyYW1fc2hhZG93
LCBHTF9BUkJfZnJhZ21lbnRfc2hhZGVyLCAKICAgIEdMX0FSQl9mcmFtZWJ1ZmZlcl9vYmplY3Qs
IEdMX0FSQl9mcmFtZWJ1ZmZlcl9zUkdCLCAKICAgIEdMX0FSQl9nZW9tZXRyeV9zaGFkZXI0LCBH
TF9BUkJfZ2V0X3Byb2dyYW1fYmluYXJ5LCBHTF9BUkJfZ3B1X3NoYWRlcjUsIAogICAgR0xfQVJC
X2dwdV9zaGFkZXJfZnA2NCwgR0xfQVJCX2hhbGZfZmxvYXRfcGl4ZWwsIEdMX0FSQl9oYWxmX2Zs
b2F0X3ZlcnRleCwgCiAgICBHTF9BUkJfaW1hZ2luZywgR0xfQVJCX2luc3RhbmNlZF9hcnJheXMs
IEdMX0FSQl9tYXBfYnVmZmVyX3JhbmdlLCAKICAgIEdMX0FSQl9tdWx0aXNhbXBsZSwgR0xfQVJC
X211bHRpdGV4dHVyZSwgR0xfQVJCX29jY2x1c2lvbl9xdWVyeSwgCiAgICBHTF9BUkJfb2NjbHVz
aW9uX3F1ZXJ5MiwgR0xfQVJCX3BpeGVsX2J1ZmZlcl9vYmplY3QsIAogICAgR0xfQVJCX3BvaW50
X3BhcmFtZXRlcnMsIEdMX0FSQl9wb2ludF9zcHJpdGUsIEdMX0FSQl9wcm92b2tpbmdfdmVydGV4
LCAKICAgIEdMX0FSQl9zYW1wbGVfc2hhZGluZywgR0xfQVJCX3NhbXBsZXJfb2JqZWN0cywgR0xf
QVJCX3NlYW1sZXNzX2N1YmVfbWFwLCAKICAgIEdMX0FSQl9zZXBhcmF0ZV9zaGFkZXJfb2JqZWN0
cywgR0xfQVJCX3NoYWRlcl9iaXRfZW5jb2RpbmcsIAogICAgR0xfQVJCX3NoYWRlcl9vYmplY3Rz
LCBHTF9BUkJfc2hhZGVyX3ByZWNpc2lvbiwgCiAgICBHTF9BUkJfc2hhZGVyX3N0ZW5jaWxfZXhw
b3J0LCBHTF9BUkJfc2hhZGVyX3N1YnJvdXRpbmUsIAogICAgR0xfQVJCX3NoYWRlcl90ZXh0dXJl
X2xvZCwgR0xfQVJCX3NoYWRpbmdfbGFuZ3VhZ2VfMTAwLCBHTF9BUkJfc2hhZG93LCAKICAgIEdM
X0FSQl9zaGFkb3dfYW1iaWVudCwgR0xfQVJCX3N5bmMsIEdMX0FSQl90ZXNzZWxsYXRpb25fc2hh
ZGVyLCAKICAgIEdMX0FSQl90ZXh0dXJlX2JvcmRlcl9jbGFtcCwgR0xfQVJCX3RleHR1cmVfYnVm
ZmVyX29iamVjdCwgCiAgICBHTF9BUkJfdGV4dHVyZV9idWZmZXJfb2JqZWN0X3JnYjMyLCBHTF9B
UkJfdGV4dHVyZV9jb21wcmVzc2lvbiwgCiAgICBHTF9BUkJfdGV4dHVyZV9jb21wcmVzc2lvbl9i
cHRjLCBHTF9BUkJfdGV4dHVyZV9jb21wcmVzc2lvbl9yZ3RjLCAKICAgIEdMX0FSQl90ZXh0dXJl
X2N1YmVfbWFwLCBHTF9BUkJfdGV4dHVyZV9jdWJlX21hcF9hcnJheSwgCiAgICBHTF9BUkJfdGV4
dHVyZV9lbnZfYWRkLCBHTF9BUkJfdGV4dHVyZV9lbnZfY29tYmluZSwgCiAgICBHTF9BUkJfdGV4
dHVyZV9lbnZfY3Jvc3NiYXIsIEdMX0FSQl90ZXh0dXJlX2Vudl9kb3QzLCAKICAgIEdMX0FSQl90
ZXh0dXJlX2Zsb2F0LCBHTF9BUkJfdGV4dHVyZV9nYXRoZXIsIAogICAgR0xfQVJCX3RleHR1cmVf
bWlycm9yZWRfcmVwZWF0LCBHTF9BUkJfdGV4dHVyZV9tdWx0aXNhbXBsZSwgCiAgICBHTF9BUkJf
dGV4dHVyZV9ub25fcG93ZXJfb2ZfdHdvLCBHTF9BUkJfdGV4dHVyZV9xdWVyeV9sb2QsIAogICAg
R0xfQVJCX3RleHR1cmVfcmVjdGFuZ2xlLCBHTF9BUkJfdGV4dHVyZV9yZywgR0xfQVJCX3RleHR1
cmVfcmdiMTBfYTJ1aSwgCiAgICBHTF9BUkJfdGV4dHVyZV9zbm9ybSwgR0xfQVJCX3RpbWVyX3F1
ZXJ5LCBHTF9BUkJfdHJhbnNmb3JtX2ZlZWRiYWNrMiwgCiAgICBHTF9BUkJfdHJhbnNmb3JtX2Zl
ZWRiYWNrMywgR0xfQVJCX3RyYW5zcG9zZV9tYXRyaXgsIAogICAgR0xfQVJCX3VuaWZvcm1fYnVm
ZmVyX29iamVjdCwgR0xfQVJCX3ZlcnRleF9hcnJheV9iZ3JhLCAKICAgIEdMX0FSQl92ZXJ0ZXhf
YXJyYXlfb2JqZWN0LCBHTF9BUkJfdmVydGV4X2F0dHJpYl82NGJpdCwgCiAgICBHTF9BUkJfdmVy
dGV4X2J1ZmZlcl9vYmplY3QsIEdMX0FSQl92ZXJ0ZXhfcHJvZ3JhbSwgR0xfQVJCX3ZlcnRleF9z
aGFkZXIsIAogICAgR0xfQVJCX3ZlcnRleF90eXBlXzJfMTBfMTBfMTBfcmV2LCBHTF9BUkJfdmll
d3BvcnRfYXJyYXksIAogICAgR0xfQVJCX3dpbmRvd19wb3MsIEdMX0FUSV9kcmF3X2J1ZmZlcnMs
IEdMX0FUSV9lbnZtYXBfYnVtcG1hcCwgCiAgICBHTF9BVElfZnJhZ21lbnRfc2hhZGVyLCBHTF9B
VElfbWVtaW5mbywgR0xfQVRJX3NlcGFyYXRlX3N0ZW5jaWwsIAogICAgR0xfQVRJX3RleHR1cmVf
Y29tcHJlc3Npb25fM2RjLCBHTF9BVElfdGV4dHVyZV9lbnZfY29tYmluZTMsIAogICAgR0xfQVRJ
X3RleHR1cmVfZmxvYXQsIEdMX0FUSV90ZXh0dXJlX21pcnJvcl9vbmNlLCBHTF9FWFRfYWJnciwg
CiAgICBHTF9FWFRfYmdyYSwgR0xfRVhUX2JpbmRhYmxlX3VuaWZvcm0sIEdMX0VYVF9ibGVuZF9j
b2xvciwgCiAgICBHTF9FWFRfYmxlbmRfZXF1YXRpb25fc2VwYXJhdGUsIEdMX0VYVF9ibGVuZF9m
dW5jX3NlcGFyYXRlLCAKICAgIEdMX0VYVF9ibGVuZF9taW5tYXgsIEdMX0VYVF9ibGVuZF9zdWJ0
cmFjdCwgR0xfRVhUX2NvbXBpbGVkX3ZlcnRleF9hcnJheSwgCiAgICBHTF9FWFRfY29weV9idWZm
ZXIsIEdMX0VYVF9jb3B5X3RleHR1cmUsIEdMX0VYVF9kaXJlY3Rfc3RhdGVfYWNjZXNzLCAKICAg
IEdMX0VYVF9kcmF3X2J1ZmZlcnMyLCBHTF9FWFRfZHJhd19pbnN0YW5jZWQsIEdMX0VYVF9kcmF3
X3JhbmdlX2VsZW1lbnRzLCAKICAgIEdMX0VYVF9mb2dfY29vcmQsIEdMX0VYVF9mcmFtZWJ1ZmZl
cl9ibGl0LCBHTF9FWFRfZnJhbWVidWZmZXJfbXVsdGlzYW1wbGUsIAogICAgR0xfRVhUX2ZyYW1l
YnVmZmVyX29iamVjdCwgR0xfRVhUX2ZyYW1lYnVmZmVyX3NSR0IsIAogICAgR0xfRVhUX2dlb21l
dHJ5X3NoYWRlcjQsIEdMX0VYVF9ncHVfcHJvZ3JhbV9wYXJhbWV0ZXJzLCAKICAgIEdMX0VYVF9n
cHVfc2hhZGVyNCwgR0xfRVhUX2hpc3RvZ3JhbSwgR0xfRVhUX211bHRpX2RyYXdfYXJyYXlzLCAK
ICAgIEdMX0VYVF9wYWNrZWRfZGVwdGhfc3RlbmNpbCwgR0xfRVhUX3BhY2tlZF9mbG9hdCwgR0xf
RVhUX3BhY2tlZF9waXhlbHMsIAogICAgR0xfRVhUX3BpeGVsX2J1ZmZlcl9vYmplY3QsIEdMX0VY
VF9wb2ludF9wYXJhbWV0ZXJzLCAKICAgIEdMX0VYVF9wcm92b2tpbmdfdmVydGV4LCBHTF9FWFRf
cmVzY2FsZV9ub3JtYWwsIEdMX0VYVF9zZWNvbmRhcnlfY29sb3IsIAogICAgR0xfRVhUX3NlcGFy
YXRlX3NwZWN1bGFyX2NvbG9yLCBHTF9FWFRfc2hhZGVyX2ltYWdlX2xvYWRfc3RvcmUsIAogICAg
R0xfRVhUX3NoYWRvd19mdW5jcywgR0xfRVhUX3N0ZW5jaWxfd3JhcCwgR0xfRVhUX3N1YnRleHR1
cmUsIAogICAgR0xfRVhUX3RleGdlbl9yZWZsZWN0aW9uLCBHTF9FWFRfdGV4dHVyZTNELCBHTF9F
WFRfdGV4dHVyZV9hcnJheSwgCiAgICBHTF9FWFRfdGV4dHVyZV9idWZmZXJfb2JqZWN0LCBHTF9F
WFRfdGV4dHVyZV9jb21wcmVzc2lvbl9icHRjLCAKICAgIEdMX0VYVF90ZXh0dXJlX2NvbXByZXNz
aW9uX2xhdGMsIEdMX0VYVF90ZXh0dXJlX2NvbXByZXNzaW9uX3JndGMsIAogICAgR0xfRVhUX3Rl
eHR1cmVfY29tcHJlc3Npb25fczN0YywgR0xfRVhUX3RleHR1cmVfY3ViZV9tYXAsIAogICAgR0xf
RVhUX3RleHR1cmVfZWRnZV9jbGFtcCwgR0xfRVhUX3RleHR1cmVfZW52X2FkZCwgCiAgICBHTF9F
WFRfdGV4dHVyZV9lbnZfY29tYmluZSwgR0xfRVhUX3RleHR1cmVfZW52X2RvdDMsIAogICAgR0xf
RVhUX3RleHR1cmVfZmlsdGVyX2FuaXNvdHJvcGljLCBHTF9FWFRfdGV4dHVyZV9pbnRlZ2VyLCAK
ICAgIEdMX0VYVF90ZXh0dXJlX2xvZCwgR0xfRVhUX3RleHR1cmVfbG9kX2JpYXMsIEdMX0VYVF90
ZXh0dXJlX21pcnJvcl9jbGFtcCwgCiAgICBHTF9FWFRfdGV4dHVyZV9vYmplY3QsIEdMX0VYVF90
ZXh0dXJlX3JlY3RhbmdsZSwgR0xfRVhUX3RleHR1cmVfc1JHQiwgCiAgICBHTF9FWFRfdGV4dHVy
ZV9zaGFyZWRfZXhwb25lbnQsIEdMX0VYVF90ZXh0dXJlX3Nub3JtLCAKICAgIEdMX0VYVF90ZXh0
dXJlX3N3aXp6bGUsIEdMX0VYVF90aW1lcl9xdWVyeSwgR0xfRVhUX3RyYW5zZm9ybV9mZWVkYmFj
aywgCiAgICBHTF9FWFRfdmVydGV4X2FycmF5LCBHTF9FWFRfdmVydGV4X2FycmF5X2JncmEsIEdM
X0VYVF92ZXJ0ZXhfYXR0cmliXzY0Yml0LCAKICAgIEdMX0lCTV90ZXh0dXJlX21pcnJvcmVkX3Jl
cGVhdCwgR0xfS1RYX2J1ZmZlcl9yZWdpb24sIEdMX05WX2JsZW5kX3NxdWFyZSwgCiAgICBHTF9O
Vl9jb25kaXRpb25hbF9yZW5kZXIsIEdMX05WX2NvcHlfZGVwdGhfdG9fY29sb3IsIAogICAgR0xf
TlZfZXhwbGljaXRfbXVsdGlzYW1wbGUsIEdMX05WX2Zsb2F0X2J1ZmZlciwgR0xfTlZfaGFsZl9m
bG9hdCwgCiAgICBHTF9OVl9wcmltaXRpdmVfcmVzdGFydCwgR0xfTlZfdGV4Z2VuX3JlZmxlY3Rp
b24sIEdMX05WX3RleHR1cmVfYmFycmllciwgCiAgICBHTF9TR0lTX2dlbmVyYXRlX21pcG1hcCwg
R0xfU0dJU190ZXh0dXJlX2VkZ2VfY2xhbXAsIEdMX1NHSVNfdGV4dHVyZV9sb2QsIAogICAgR0xf
U1VOX211bHRpX2RyYXdfYXJyYXlzLCBHTF9XSU5fc3dhcF9oaW50LCBXR0xfRVhUX3N3YXBfY29u
dHJvbAoKNjUgR0xYIFZpc3VhbHMKICAgIHZpc3VhbCAgeCAgIGJmIGx2IHJnIGQgc3QgIGNvbG9y
YnVmZmVyICBzciBheCBkcCBzdCBhY2N1bWJ1ZmZlciAgbXMgIGNhdgogIGlkIGRlcCBjbCBzcCAg
c3ogbCAgY2kgYiBybyAgciAgZyAgYiAgYSBGIGdiIGJmIHRoIGNsICByICBnICBiICBhIG5zIGIg
ZWF0Ci0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KMHgwMjMgMjQgdGMgIDAgIDMyICAwIHIgIHkgLiAgIDgg
IDggIDggIDggLiAgLiAgMCAyNCAgOCAxNiAxNiAxNiAxNiAgMCAwIE5vbmUKMHgwMjQgMjQgdGMg
IDAgIDMyICAwIHIgIC4gLiAgIDggIDggIDggIDggLiAgLiAgMCAyNCAgOCAxNiAxNiAxNiAxNiAg
MCAwIE5vbmUKMHgwMjUgMjQgdGMgIDAgIDMyICAwIHIgIHkgLiAgIDggIDggIDggIDggLiAgLiAg
MCAyNCAgMCAxNiAxNiAxNiAxNiAgMCAwIE5vbmUKMHgwMjYgMjQgdGMgIDAgIDMyICAwIHIgIC4g
LiAgIDggIDggIDggIDggLiAgLiAgMCAyNCAgMCAxNiAxNiAxNiAxNiAgMCAwIE5vbmUKMHgwMjcg
MjQgdGMgIDAgIDMyICAwIHIgIHkgLiAgIDggIDggIDggIDggLiAgLiAgMCAyNCAgOCAgMCAgMCAg
MCAgMCAgMCAwIE5vbmUKMHgwMjggMjQgdGMgIDAgIDMyICAwIHIgIC4gLiAgIDggIDggIDggIDgg
LiAgLiAgMCAyNCAgOCAgMCAgMCAgMCAgMCAgMCAwIE5vbmUKMHgwMjkgMjQgdGMgIDAgIDMyICAw
IHIgIHkgLiAgIDggIDggIDggIDggLiAgLiAgMCAyNCAgMCAgMCAgMCAgMCAgMCAgMCAwIE5vbmUK
MHgwMmEgMjQgdGMgIDAgIDMyICAwIHIgIC4gLiAgIDggIDggIDggIDggLiAgLiAgMCAyNCAgMCAg
MCAgMCAgMCAgMCAgMCAwIE5vbmUKMHgwMmIgMjQgdGMgIDAgIDMyICAwIHIgIHkgLiAgIDggIDgg
IDggIDggLiAgLiAgMCAyNCAgOCAxNiAxNiAxNiAxNiAgMCAwIE5vbmUKMHgwMmMgMjQgdGMgIDAg
IDMyICAwIHIgIC4gLiAgIDggIDggIDggIDggLiAgLiAgMCAyNCAgOCAxNiAxNiAxNiAxNiAgMCAw
IE5vbmUKMHgwMmQgMjQgdGMgIDAgIDMyICAwIHIgIHkgLiAgIDggIDggIDggIDggLiAgLiAgMCAy
NCAgMCAxNiAxNiAxNiAxNiAgMCAwIE5vbmUKMHgwMmUgMjQgdGMgIDAgIDMyICAwIHIgIC4gLiAg
IDggIDggIDggIDggLiAgLiAgMCAyNCAgMCAxNiAxNiAxNiAxNiAgMCAwIE5vbmUKMHgwMmYgMjQg
dGMgIDAgIDMyICAwIHIgIHkgLiAgIDggIDggIDggIDggLiAgLiAgMCAyNCAgOCAgMCAgMCAgMCAg
MCAgMiAxIE5vbmUKMHgwMzAgMjQgdGMgIDAgIDMyICAwIHIgIC4gLiAgIDggIDggIDggIDggLiAg
LiAgMCAyNCAgOCAgMCAgMCAgMCAgMCAgMiAxIE5vbmUKMHgwMzEgMjQgdGMgIDAgIDMyICAwIHIg
IHkgLiAgIDggIDggIDggIDggLiAgLiAgMCAyNCAgMCAgMCAgMCAgMCAgMCAgMiAxIE5vbmUKMHgw
MzIgMjQgdGMgIDAgIDMyICAwIHIgIC4gLiAgIDggIDggIDggIDggLiAgLiAgMCAyNCAgMCAgMCAg
MCAgMCAgMCAgMiAxIE5vbmUKMHgwMzMgMjQgdGMgIDAgIDMyICAwIHIgIHkgLiAgIDggIDggIDgg
IDggLiAgLiAgMCAyNCAgOCAxNiAxNiAxNiAxNiAgMCAwIE5vbmUKMHgwMzQgMjQgdGMgIDAgIDMy
ICAwIHIgIC4gLiAgIDggIDggIDggIDggLiAgLiAgMCAyNCAgOCAxNiAxNiAxNiAxNiAgMCAwIE5v
bmUKMHgwMzUgMjQgdGMgIDAgIDMyICAwIHIgIHkgLiAgIDggIDggIDggIDggLiAgLiAgMCAyNCAg
MCAxNiAxNiAxNiAxNiAgMCAwIE5vbmUKMHgwMzYgMjQgdGMgIDAgIDMyICAwIHIgIC4gLiAgIDgg
IDggIDggIDggLiAgLiAgMCAyNCAgMCAxNiAxNiAxNiAxNiAgMCAwIE5vbmUKMHgwMzcgMjQgdGMg
IDAgIDMyICAwIHIgIHkgLiAgIDggIDggIDggIDggLiAgLiAgMCAyNCAgOCAgMCAgMCAgMCAgMCAg
NCAxIE5vbmUKMHgwMzggMjQgdGMgIDAgIDMyICAwIHIgIC4gLiAgIDggIDggIDggIDggLiAgLiAg
MCAyNCAgOCAgMCAgMCAgMCAgMCAgNCAxIE5vbmUKMHgwMzkgMjQgdGMgIDAgIDMyICAwIHIgIHkg
LiAgIDggIDggIDggIDggLiAgLiAgMCAyNCAgMCAgMCAgMCAgMCAgMCAgNCAxIE5vbmUKMHgwM2Eg
MjQgdGMgIDAgIDMyICAwIHIgIC4gLiAgIDggIDggIDggIDggLiAgLiAgMCAyNCAgMCAgMCAgMCAg
MCAgMCAgNCAxIE5vbmUKMHgwM2IgMjQgdGMgIDAgIDMyICAwIHIgIHkgLiAgIDggIDggIDggIDgg
LiAgLiAgMCAyNCAgOCAxNiAxNiAxNiAxNiAgMCAwIE5vbmUKMHgwM2MgMjQgdGMgIDAgIDMyICAw
IHIgIC4gLiAgIDggIDggIDggIDggLiAgLiAgMCAyNCAgOCAxNiAxNiAxNiAxNiAgMCAwIE5vbmUK
MHgwM2QgMjQgdGMgIDAgIDMyICAwIHIgIHkgLiAgIDggIDggIDggIDggLiAgLiAgMCAyNCAgMCAx
NiAxNiAxNiAxNiAgMCAwIE5vbmUKMHgwM2UgMjQgdGMgIDAgIDMyICAwIHIgIC4gLiAgIDggIDgg
IDggIDggLiAgLiAgMCAyNCAgMCAxNiAxNiAxNiAxNiAgMCAwIE5vbmUKMHgwNDMgMjQgdGMgIDAg
IDMyICAwIHIgIHkgLiAgIDggIDggIDggIDggLiAgLiAgMCAyNCAgOCAxNiAxNiAxNiAxNiAgMCAw
IE5vbmUKMHgwNDQgMjQgdGMgIDAgIDMyICAwIHIgIC4gLiAgIDggIDggIDggIDggLiAgLiAgMCAy
NCAgOCAxNiAxNiAxNiAxNiAgMCAwIE5vbmUKMHgwNDUgMjQgdGMgIDAgIDMyICAwIHIgIHkgLiAg
IDggIDggIDggIDggLiAgLiAgMCAyNCAgMCAxNiAxNiAxNiAxNiAgMCAwIE5vbmUKMHgwNDYgMjQg
dGMgIDAgIDMyICAwIHIgIC4gLiAgIDggIDggIDggIDggLiAgLiAgMCAyNCAgMCAxNiAxNiAxNiAx
NiAgMCAwIE5vbmUKMHgwNGIgMjQgZGMgIDAgIDMyICAwIHIgIHkgLiAgIDggIDggIDggIDggLiAg
LiAgMCAyNCAgOCAxNiAxNiAxNiAxNiAgMCAwIE5vbmUKMHgwNGMgMjQgZGMgIDAgIDMyICAwIHIg
IC4gLiAgIDggIDggIDggIDggLiAgLiAgMCAyNCAgOCAxNiAxNiAxNiAxNiAgMCAwIE5vbmUKMHgw
NGQgMjQgZGMgIDAgIDMyICAwIHIgIHkgLiAgIDggIDggIDggIDggLiAgLiAgMCAyNCAgMCAxNiAx
NiAxNiAxNiAgMCAwIE5vbmUKMHgwNGUgMjQgZGMgIDAgIDMyICAwIHIgIC4gLiAgIDggIDggIDgg
IDggLiAgLiAgMCAyNCAgMCAxNiAxNiAxNiAxNiAgMCAwIE5vbmUKMHgwNGYgMjQgZGMgIDAgIDMy
ICAwIHIgIHkgLiAgIDggIDggIDggIDggLiAgLiAgMCAyNCAgOCAgMCAgMCAgMCAgMCAgMCAwIE5v
bmUKMHgwNTAgMjQgZGMgIDAgIDMyICAwIHIgIC4gLiAgIDggIDggIDggIDggLiAgLiAgMCAyNCAg
OCAgMCAgMCAgMCAgMCAgMCAwIE5vbmUKMHgwNTEgMjQgZGMgIDAgIDMyICAwIHIgIHkgLiAgIDgg
IDggIDggIDggLiAgLiAgMCAyNCAgMCAgMCAgMCAgMCAgMCAgMCAwIE5vbmUKMHgwNTIgMjQgZGMg
IDAgIDMyICAwIHIgIC4gLiAgIDggIDggIDggIDggLiAgLiAgMCAyNCAgMCAgMCAgMCAgMCAgMCAg
MCAwIE5vbmUKMHgwNTMgMjQgZGMgIDAgIDMyICAwIHIgIHkgLiAgIDggIDggIDggIDggLiAgLiAg
MCAyNCAgOCAxNiAxNiAxNiAxNiAgMCAwIE5vbmUKMHgwNTQgMjQgZGMgIDAgIDMyICAwIHIgIC4g
LiAgIDggIDggIDggIDggLiAgLiAgMCAyNCAgOCAxNiAxNiAxNiAxNiAgMCAwIE5vbmUKMHgwNTUg
MjQgZGMgIDAgIDMyICAwIHIgIHkgLiAgIDggIDggIDggIDggLiAgLiAgMCAyNCAgMCAxNiAxNiAx
NiAxNiAgMCAwIE5vbmUKMHgwNTYgMjQgZGMgIDAgIDMyICAwIHIgIC4gLiAgIDggIDggIDggIDgg
LiAgLiAgMCAyNCAgMCAxNiAxNiAxNiAxNiAgMCAwIE5vbmUKMHgwNTcgMjQgZGMgIDAgIDMyICAw
IHIgIHkgLiAgIDggIDggIDggIDggLiAgLiAgMCAyNCAgOCAgMCAgMCAgMCAgMCAgMiAxIE5vbmUK
MHgwNTggMjQgZGMgIDAgIDMyICAwIHIgIC4gLiAgIDggIDggIDggIDggLiAgLiAgMCAyNCAgOCAg
MCAgMCAgMCAgMCAgMiAxIE5vbmUKMHgwNTkgMjQgZGMgIDAgIDMyICAwIHIgIHkgLiAgIDggIDgg
IDggIDggLiAgLiAgMCAyNCAgMCAgMCAgMCAgMCAgMCAgMiAxIE5vbmUKMHgwNWEgMjQgZGMgIDAg
IDMyICAwIHIgIC4gLiAgIDggIDggIDggIDggLiAgLiAgMCAyNCAgMCAgMCAgMCAgMCAgMCAgMiAx
IE5vbmUKMHgwNWIgMjQgZGMgIDAgIDMyICAwIHIgIHkgLiAgIDggIDggIDggIDggLiAgLiAgMCAy
NCAgOCAxNiAxNiAxNiAxNiAgMCAwIE5vbmUKMHgwNWMgMjQgZGMgIDAgIDMyICAwIHIgIC4gLiAg
IDggIDggIDggIDggLiAgLiAgMCAyNCAgOCAxNiAxNiAxNiAxNiAgMCAwIE5vbmUKMHgwNWQgMjQg
ZGMgIDAgIDMyICAwIHIgIHkgLiAgIDggIDggIDggIDggLiAgLiAgMCAyNCAgMCAxNiAxNiAxNiAx
NiAgMCAwIE5vbmUKMHgwNWUgMjQgZGMgIDAgIDMyICAwIHIgIC4gLiAgIDggIDggIDggIDggLiAg
LiAgMCAyNCAgMCAxNiAxNiAxNiAxNiAgMCAwIE5vbmUKMHgwNWYgMjQgZGMgIDAgIDMyICAwIHIg
IHkgLiAgIDggIDggIDggIDggLiAgLiAgMCAyNCAgOCAgMCAgMCAgMCAgMCAgNCAxIE5vbmUKMHgw
NjAgMjQgZGMgIDAgIDMyICAwIHIgIC4gLiAgIDggIDggIDggIDggLiAgLiAgMCAyNCAgOCAgMCAg
MCAgMCAgMCAgNCAxIE5vbmUKMHgwNjEgMjQgZGMgIDAgIDMyICAwIHIgIHkgLiAgIDggIDggIDgg
IDggLiAgLiAgMCAyNCAgMCAgMCAgMCAgMCAgMCAgNCAxIE5vbmUKMHgwNjIgMjQgZGMgIDAgIDMy
ICAwIHIgIC4gLiAgIDggIDggIDggIDggLiAgLiAgMCAyNCAgMCAgMCAgMCAgMCAgMCAgNCAxIE5v
bmUKMHgwNjMgMjQgZGMgIDAgIDMyICAwIHIgIHkgLiAgIDggIDggIDggIDggLiAgLiAgMCAyNCAg
OCAxNiAxNiAxNiAxNiAgMCAwIE5vbmUKMHgwNjQgMjQgZGMgIDAgIDMyICAwIHIgIC4gLiAgIDgg
IDggIDggIDggLiAgLiAgMCAyNCAgOCAxNiAxNiAxNiAxNiAgMCAwIE5vbmUKMHgwNjUgMjQgZGMg
IDAgIDMyICAwIHIgIHkgLiAgIDggIDggIDggIDggLiAgLiAgMCAyNCAgMCAxNiAxNiAxNiAxNiAg
MCAwIE5vbmUKMHgwNjYgMjQgZGMgIDAgIDMyICAwIHIgIC4gLiAgIDggIDggIDggIDggLiAgLiAg
MCAyNCAgMCAxNiAxNiAxNiAxNiAgMCAwIE5vbmUKMHgwNmIgMjQgZGMgIDAgIDMyICAwIHIgIHkg
LiAgIDggIDggIDggIDggLiAgLiAgMCAyNCAgOCAxNiAxNiAxNiAxNiAgMCAwIE5vbmUKMHgwNmMg
MjQgZGMgIDAgIDMyICAwIHIgIC4gLiAgIDggIDggIDggIDggLiAgLiAgMCAyNCAgOCAxNiAxNiAx
NiAxNiAgMCAwIE5vbmUKMHgwNmQgMjQgZGMgIDAgIDMyICAwIHIgIHkgLiAgIDggIDggIDggIDgg
LiAgLiAgMCAyNCAgMCAxNiAxNiAxNiAxNiAgMCAwIE5vbmUKMHgwNmUgMjQgZGMgIDAgIDMyICAw
IHIgIC4gLiAgIDggIDggIDggIDggLiAgLiAgMCAyNCAgMCAxNiAxNiAxNiAxNiAgMCAwIE5vbmUK
MHgwYWIgMzIgdGMgIDAgIDMyICAwIHIgIC4gLiAgIDggIDggIDggIDggLiAgLiAgMCAyNCAgMCAg
MCAgMCAgMCAgMCAgNCAxIE5jb24KCjc1IEdMWEZCQ29uZmlnczoKICAgIHZpc3VhbCAgeCAgIGJm
IGx2IHJnIGQgc3QgIGNvbG9yYnVmZmVyICBzciBheCBkcCBzdCBhY2N1bWJ1ZmZlciAgbXMgIGNh
dgogIGlkIGRlcCBjbCBzcCAgc3ogbCAgY2kgYiBybyAgciAgZyAgYiAgYSBGIGdiIGJmIHRoIGNs
ICByICBnICBiICBhIG5zIGIgZWF0Ci0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KMHgwMjMgMjQgdGMgIDAg
IDMyICAwIHIgIHkgLiAgIDggIDggIDggIDggLiAgLiAgMCAyNCAgOCAxNiAxNiAxNiAxNiAgMCAw
IE5vbmUKMHgwMjQgMjQgdGMgIDAgIDMyICAwIHIgIC4gLiAgIDggIDggIDggIDggLiAgLiAgMCAy
NCAgOCAxNiAxNiAxNiAxNiAgMCAwIE5vbmUKMHgwMjUgMjQgdGMgIDAgIDMyICAwIHIgIHkgLiAg
IDggIDggIDggIDggLiAgLiAgMCAyNCAgMCAxNiAxNiAxNiAxNiAgMCAwIE5vbmUKMHgwMjYgMjQg
dGMgIDAgIDMyICAwIHIgIC4gLiAgIDggIDggIDggIDggLiAgLiAgMCAyNCAgMCAxNiAxNiAxNiAx
NiAgMCAwIE5vbmUKMHgwMjcgMjQgdGMgIDAgIDMyICAwIHIgIHkgLiAgIDggIDggIDggIDggLiAg
LiAgMCAyNCAgOCAgMCAgMCAgMCAgMCAgMCAwIE5vbmUKMHgwMjggMjQgdGMgIDAgIDMyICAwIHIg
IC4gLiAgIDggIDggIDggIDggLiAgLiAgMCAyNCAgOCAgMCAgMCAgMCAgMCAgMCAwIE5vbmUKMHgw
MjkgMjQgdGMgIDAgIDMyICAwIHIgIHkgLiAgIDggIDggIDggIDggLiAgLiAgMCAyNCAgMCAgMCAg
MCAgMCAgMCAgMCAwIE5vbmUKMHgwMmEgMjQgdGMgIDAgIDMyICAwIHIgIC4gLiAgIDggIDggIDgg
IDggLiAgLiAgMCAyNCAgMCAgMCAgMCAgMCAgMCAgMCAwIE5vbmUKMHgwMmIgMjQgdGMgIDAgIDMy
ICAwIHIgIHkgLiAgIDggIDggIDggIDggLiAgLiAgMCAyNCAgOCAxNiAxNiAxNiAxNiAgMCAwIE5v
bmUKMHgwMmMgMjQgdGMgIDAgIDMyICAwIHIgIC4gLiAgIDggIDggIDggIDggLiAgLiAgMCAyNCAg
OCAxNiAxNiAxNiAxNiAgMCAwIE5vbmUKMHgwMmQgMjQgdGMgIDAgIDMyICAwIHIgIHkgLiAgIDgg
IDggIDggIDggLiAgLiAgMCAyNCAgMCAxNiAxNiAxNiAxNiAgMCAwIE5vbmUKMHgwMmUgMjQgdGMg
IDAgIDMyICAwIHIgIC4gLiAgIDggIDggIDggIDggLiAgLiAgMCAyNCAgMCAxNiAxNiAxNiAxNiAg
MCAwIE5vbmUKMHgwMmYgMjQgdGMgIDAgIDMyICAwIHIgIHkgLiAgIDggIDggIDggIDggLiAgLiAg
MCAyNCAgOCAgMCAgMCAgMCAgMCAgMiAxIE5vbmUKMHgwMzAgMjQgdGMgIDAgIDMyICAwIHIgIC4g
LiAgIDggIDggIDggIDggLiAgLiAgMCAyNCAgOCAgMCAgMCAgMCAgMCAgMiAxIE5vbmUKMHgwMzEg
MjQgdGMgIDAgIDMyICAwIHIgIHkgLiAgIDggIDggIDggIDggLiAgLiAgMCAyNCAgMCAgMCAgMCAg
MCAgMCAgMiAxIE5vbmUKMHgwMzIgMjQgdGMgIDAgIDMyICAwIHIgIC4gLiAgIDggIDggIDggIDgg
LiAgLiAgMCAyNCAgMCAgMCAgMCAgMCAgMCAgMiAxIE5vbmUKMHgwMzMgMjQgdGMgIDAgIDMyICAw
IHIgIHkgLiAgIDggIDggIDggIDggLiAgLiAgMCAyNCAgOCAxNiAxNiAxNiAxNiAgMCAwIE5vbmUK
MHgwMzQgMjQgdGMgIDAgIDMyICAwIHIgIC4gLiAgIDggIDggIDggIDggLiAgLiAgMCAyNCAgOCAx
NiAxNiAxNiAxNiAgMCAwIE5vbmUKMHgwMzUgMjQgdGMgIDAgIDMyICAwIHIgIHkgLiAgIDggIDgg
IDggIDggLiAgLiAgMCAyNCAgMCAxNiAxNiAxNiAxNiAgMCAwIE5vbmUKMHgwMzYgMjQgdGMgIDAg
IDMyICAwIHIgIC4gLiAgIDggIDggIDggIDggLiAgLiAgMCAyNCAgMCAxNiAxNiAxNiAxNiAgMCAw
IE5vbmUKMHgwMzcgMjQgdGMgIDAgIDMyICAwIHIgIHkgLiAgIDggIDggIDggIDggLiAgLiAgMCAy
NCAgOCAgMCAgMCAgMCAgMCAgNCAxIE5vbmUKMHgwMzggMjQgdGMgIDAgIDMyICAwIHIgIC4gLiAg
IDggIDggIDggIDggLiAgLiAgMCAyNCAgOCAgMCAgMCAgMCAgMCAgNCAxIE5vbmUKMHgwMzkgMjQg
dGMgIDAgIDMyICAwIHIgIHkgLiAgIDggIDggIDggIDggLiAgLiAgMCAyNCAgMCAgMCAgMCAgMCAg
MCAgNCAxIE5vbmUKMHgwM2EgMjQgdGMgIDAgIDMyICAwIHIgIC4gLiAgIDggIDggIDggIDggLiAg
LiAgMCAyNCAgMCAgMCAgMCAgMCAgMCAgNCAxIE5vbmUKMHgwM2IgMjQgdGMgIDAgIDMyICAwIHIg
IHkgLiAgIDggIDggIDggIDggLiAgLiAgMCAyNCAgOCAxNiAxNiAxNiAxNiAgMCAwIE5vbmUKMHgw
M2MgMjQgdGMgIDAgIDMyICAwIHIgIC4gLiAgIDggIDggIDggIDggLiAgLiAgMCAyNCAgOCAxNiAx
NiAxNiAxNiAgMCAwIE5vbmUKMHgwM2QgMjQgdGMgIDAgIDMyICAwIHIgIHkgLiAgIDggIDggIDgg
IDggLiAgLiAgMCAyNCAgMCAxNiAxNiAxNiAxNiAgMCAwIE5vbmUKMHgwM2UgMjQgdGMgIDAgIDMy
ICAwIHIgIC4gLiAgIDggIDggIDggIDggLiAgLiAgMCAyNCAgMCAxNiAxNiAxNiAxNiAgMCAwIE5v
bmUKMHgwNDMgMjQgdGMgIDAgIDMyICAwIHIgIHkgLiAgIDggIDggIDggIDggLiAgLiAgMCAyNCAg
OCAxNiAxNiAxNiAxNiAgMCAwIE5vbmUKMHgwNDQgMjQgdGMgIDAgIDMyICAwIHIgIC4gLiAgIDgg
IDggIDggIDggLiAgLiAgMCAyNCAgOCAxNiAxNiAxNiAxNiAgMCAwIE5vbmUKMHgwNDUgMjQgdGMg
IDAgIDMyICAwIHIgIHkgLiAgIDggIDggIDggIDggLiAgLiAgMCAyNCAgMCAxNiAxNiAxNiAxNiAg
MCAwIE5vbmUKMHgwNDYgMjQgdGMgIDAgIDMyICAwIHIgIC4gLiAgIDggIDggIDggIDggLiAgLiAg
MCAyNCAgMCAxNiAxNiAxNiAxNiAgMCAwIE5vbmUKMHgwNGIgMjQgZGMgIDAgIDMyICAwIHIgIHkg
LiAgIDggIDggIDggIDggLiAgLiAgMCAyNCAgOCAxNiAxNiAxNiAxNiAgMCAwIE5vbmUKMHgwNGMg
MjQgZGMgIDAgIDMyICAwIHIgIC4gLiAgIDggIDggIDggIDggLiAgLiAgMCAyNCAgOCAxNiAxNiAx
NiAxNiAgMCAwIE5vbmUKMHgwNGQgMjQgZGMgIDAgIDMyICAwIHIgIHkgLiAgIDggIDggIDggIDgg
LiAgLiAgMCAyNCAgMCAxNiAxNiAxNiAxNiAgMCAwIE5vbmUKMHgwNGUgMjQgZGMgIDAgIDMyICAw
IHIgIC4gLiAgIDggIDggIDggIDggLiAgLiAgMCAyNCAgMCAxNiAxNiAxNiAxNiAgMCAwIE5vbmUK
MHgwNGYgMjQgZGMgIDAgIDMyICAwIHIgIHkgLiAgIDggIDggIDggIDggLiAgLiAgMCAyNCAgOCAg
MCAgMCAgMCAgMCAgMCAwIE5vbmUKMHgwNTAgMjQgZGMgIDAgIDMyICAwIHIgIC4gLiAgIDggIDgg
IDggIDggLiAgLiAgMCAyNCAgOCAgMCAgMCAgMCAgMCAgMCAwIE5vbmUKMHgwNTEgMjQgZGMgIDAg
IDMyICAwIHIgIHkgLiAgIDggIDggIDggIDggLiAgLiAgMCAyNCAgMCAgMCAgMCAgMCAgMCAgMCAw
IE5vbmUKMHgwNTIgMjQgZGMgIDAgIDMyICAwIHIgIC4gLiAgIDggIDggIDggIDggLiAgLiAgMCAy
NCAgMCAgMCAgMCAgMCAgMCAgMCAwIE5vbmUKMHgwNTMgMjQgZGMgIDAgIDMyICAwIHIgIHkgLiAg
IDggIDggIDggIDggLiAgLiAgMCAyNCAgOCAxNiAxNiAxNiAxNiAgMCAwIE5vbmUKMHgwNTQgMjQg
ZGMgIDAgIDMyICAwIHIgIC4gLiAgIDggIDggIDggIDggLiAgLiAgMCAyNCAgOCAxNiAxNiAxNiAx
NiAgMCAwIE5vbmUKMHgwNTUgMjQgZGMgIDAgIDMyICAwIHIgIHkgLiAgIDggIDggIDggIDggLiAg
LiAgMCAyNCAgMCAxNiAxNiAxNiAxNiAgMCAwIE5vbmUKMHgwNTYgMjQgZGMgIDAgIDMyICAwIHIg
IC4gLiAgIDggIDggIDggIDggLiAgLiAgMCAyNCAgMCAxNiAxNiAxNiAxNiAgMCAwIE5vbmUKMHgw
NTcgMjQgZGMgIDAgIDMyICAwIHIgIHkgLiAgIDggIDggIDggIDggLiAgLiAgMCAyNCAgOCAgMCAg
MCAgMCAgMCAgMiAxIE5vbmUKMHgwNTggMjQgZGMgIDAgIDMyICAwIHIgIC4gLiAgIDggIDggIDgg
IDggLiAgLiAgMCAyNCAgOCAgMCAgMCAgMCAgMCAgMiAxIE5vbmUKMHgwNTkgMjQgZGMgIDAgIDMy
ICAwIHIgIHkgLiAgIDggIDggIDggIDggLiAgLiAgMCAyNCAgMCAgMCAgMCAgMCAgMCAgMiAxIE5v
bmUKMHgwNWEgMjQgZGMgIDAgIDMyICAwIHIgIC4gLiAgIDggIDggIDggIDggLiAgLiAgMCAyNCAg
MCAgMCAgMCAgMCAgMCAgMiAxIE5vbmUKMHgwNWIgMjQgZGMgIDAgIDMyICAwIHIgIHkgLiAgIDgg
IDggIDggIDggLiAgLiAgMCAyNCAgOCAxNiAxNiAxNiAxNiAgMCAwIE5vbmUKMHgwNWMgMjQgZGMg
IDAgIDMyICAwIHIgIC4gLiAgIDggIDggIDggIDggLiAgLiAgMCAyNCAgOCAxNiAxNiAxNiAxNiAg
MCAwIE5vbmUKMHgwNWQgMjQgZGMgIDAgIDMyICAwIHIgIHkgLiAgIDggIDggIDggIDggLiAgLiAg
MCAyNCAgMCAxNiAxNiAxNiAxNiAgMCAwIE5vbmUKMHgwNWUgMjQgZGMgIDAgIDMyICAwIHIgIC4g
LiAgIDggIDggIDggIDggLiAgLiAgMCAyNCAgMCAxNiAxNiAxNiAxNiAgMCAwIE5vbmUKMHgwNWYg
MjQgZGMgIDAgIDMyICAwIHIgIHkgLiAgIDggIDggIDggIDggLiAgLiAgMCAyNCAgOCAgMCAgMCAg
MCAgMCAgNCAxIE5vbmUKMHgwNjAgMjQgZGMgIDAgIDMyICAwIHIgIC4gLiAgIDggIDggIDggIDgg
LiAgLiAgMCAyNCAgOCAgMCAgMCAgMCAgMCAgNCAxIE5vbmUKMHgwNjEgMjQgZGMgIDAgIDMyICAw
IHIgIHkgLiAgIDggIDggIDggIDggLiAgLiAgMCAyNCAgMCAgMCAgMCAgMCAgMCAgNCAxIE5vbmUK
MHgwNjIgMjQgZGMgIDAgIDMyICAwIHIgIC4gLiAgIDggIDggIDggIDggLiAgLiAgMCAyNCAgMCAg
MCAgMCAgMCAgMCAgNCAxIE5vbmUKMHgwNjMgMjQgZGMgIDAgIDMyICAwIHIgIHkgLiAgIDggIDgg
IDggIDggLiAgLiAgMCAyNCAgOCAxNiAxNiAxNiAxNiAgMCAwIE5vbmUKMHgwNjQgMjQgZGMgIDAg
IDMyICAwIHIgIC4gLiAgIDggIDggIDggIDggLiAgLiAgMCAyNCAgOCAxNiAxNiAxNiAxNiAgMCAw
IE5vbmUKMHgwNjUgMjQgZGMgIDAgIDMyICAwIHIgIHkgLiAgIDggIDggIDggIDggLiAgLiAgMCAy
NCAgMCAxNiAxNiAxNiAxNiAgMCAwIE5vbmUKMHgwNjYgMjQgZGMgIDAgIDMyICAwIHIgIC4gLiAg
IDggIDggIDggIDggLiAgLiAgMCAyNCAgMCAxNiAxNiAxNiAxNiAgMCAwIE5vbmUKMHgwNmIgMjQg
ZGMgIDAgIDMyICAwIHIgIHkgLiAgIDggIDggIDggIDggLiAgLiAgMCAyNCAgOCAxNiAxNiAxNiAx
NiAgMCAwIE5vbmUKMHgwNmMgMjQgZGMgIDAgIDMyICAwIHIgIC4gLiAgIDggIDggIDggIDggLiAg
LiAgMCAyNCAgOCAxNiAxNiAxNiAxNiAgMCAwIE5vbmUKMHgwNmQgMjQgZGMgIDAgIDMyICAwIHIg
IHkgLiAgIDggIDggIDggIDggLiAgLiAgMCAyNCAgMCAxNiAxNiAxNiAxNiAgMCAwIE5vbmUKMHgw
NmUgMjQgZGMgIDAgIDMyICAwIHIgIC4gLiAgIDggIDggIDggIDggLiAgLiAgMCAyNCAgMCAxNiAx
NiAxNiAxNiAgMCAwIE5vbmUKMHgwYWIgMzIgdGMgIDAgIDMyICAwIHIgIC4gLiAgIDggIDggIDgg
IDggLiAgLiAgMCAyNCAgMCAgMCAgMCAgMCAgMCAgNCAxIE5jb24KMHgwYWIgMzIgdGMgIDAgIDMy
ICAwIHIgIHkgLiAgIDggIDggIDggIDggLiAgLiAgMCAyNCAgMCAgMCAgMCAgMCAgMCAgMCAwIE5j
b24KMHgwYWIgMzIgdGMgIDAgIDMyICAwIHIgIHkgLiAgIDggIDggIDggIDggLiAgLiAgMCAyNCAg
OCAgMCAgMCAgMCAgMCAgMCAwIE5jb24KMHgwYWIgMzIgdGMgIDAgIDMyICAwIHIgIC4gLiAgIDgg
IDggIDggIDggLiAgLiAgMCAyNCAgOCAgMCAgMCAgMCAgMCAgMCAwIE5jb24KMHgwYWIgMzIgdGMg
IDAgIDMyICAwIHIgIC4gLiAgIDggIDggIDggIDggLiAgLiAgMCAgMCAgMCAgMCAgMCAgMCAgMCAg
MCAwIE5jb24KMHgwYWIgIDAgdGMgIDAgMTI4ICAwICAgIHkgLiAgMzIgMzIgMzIgMzIgLiAgLiAg
MCAyNCAgMCAgMCAgMCAgMCAgMCAgMCAwIE5vbmUKMHgwYWIgIDAgdGMgIDAgMTI4ICAwICAgIC4g
LiAgMzIgMzIgMzIgMzIgLiAgLiAgMCAyNCAgMCAgMCAgMCAgMCAgMCAgMCAwIE5vbmUKMHgwYWIg
IDAgdGMgIDAgIDY0ICAwICAgIHkgLiAgMTYgMTYgMTYgMTYgLiAgLiAgMCAyNCAgMCAgMCAgMCAg
MCAgMCAgMCAwIE5vbmUKMHgwYWIgIDAgdGMgIDAgIDY0ICAwICAgIC4gLiAgMTYgMTYgMTYgMTYg
LiAgLiAgMCAyNCAgMCAgMCAgMCAgMCAgMCAgMCAwIE5vbmUKMHgwYWIgIDAgdGMgIDAgIDMyICAw
ICAgIHkgLiAgMTEgMTEgMTAgIDAgLiAgLiAgMCAyNCAgMCAgMCAgMCAgMCAgMCAgMCAwIE5vbmUK
MHgwYWIgIDAgdGMgIDAgIDMyICAwICAgIC4gLiAgMTEgMTEgMTAgIDAgLiAgLiAgMCAyNCAgMCAg
MCAgMCAgMCAgMCAgMCAwIE5vbmUKCg==
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="0"
              isprivate="0"
          >
            <attachid>119093</attachid>
            <date>2011-12-13 15:05:28 -0800</date>
            <delta_ts>2011-12-13 15:05:28 -0800</delta_ts>
            <desc>Xvfb server glxinfo run log.</desc>
            <filename>xvfb_glxinfo.txt</filename>
            <type>text/plain</type>
            <size>19720</size>
            <attacher name="Viatcheslav Ostapenko">ostap73</attacher>
            
              <data encoding="base64">bmFtZSBvZiBkaXNwbGF5OiA6OTkKZGlzcGxheTogOjk5ICBzY3JlZW46IDAKZGlyZWN0IHJlbmRl
cmluZzogTm8gKElmIHlvdSB3YW50IHRvIGZpbmQgb3V0IHdoeSwgdHJ5IHNldHRpbmcgTElCR0xf
REVCVUc9dmVyYm9zZSkKc2VydmVyIGdseCB2ZW5kb3Igc3RyaW5nOiBTR0kKc2VydmVyIGdseCB2
ZXJzaW9uIHN0cmluZzogMS40CnNlcnZlciBnbHggZXh0ZW5zaW9uczoKICAgIEdMWF9BUkJfbXVs
dGlzYW1wbGUsIEdMWF9FWFRfdmlzdWFsX2luZm8sIEdMWF9FWFRfdmlzdWFsX3JhdGluZywgCiAg
ICBHTFhfRVhUX2ltcG9ydF9jb250ZXh0LCBHTFhfRVhUX3RleHR1cmVfZnJvbV9waXhtYXAsIEdM
WF9PTUxfc3dhcF9tZXRob2QsIAogICAgR0xYX1NHSV9tYWtlX2N1cnJlbnRfcmVhZCwgR0xYX1NH
SVNfbXVsdGlzYW1wbGUsIEdMWF9TR0lYX2ZiY29uZmlnLCAKICAgIEdMWF9TR0lYX3BidWZmZXIs
IEdMWF9NRVNBX2NvcHlfc3ViX2J1ZmZlciwgR0xYX0lOVEVMX3N3YXBfZXZlbnQKY2xpZW50IGds
eCB2ZW5kb3Igc3RyaW5nOiBBVEkKY2xpZW50IGdseCB2ZXJzaW9uIHN0cmluZzogMS40CmNsaWVu
dCBnbHggZXh0ZW5zaW9uczoKICAgIEdMWF9BUkJfY3JlYXRlX2NvbnRleHQsIEdMWF9BUkJfY3Jl
YXRlX2NvbnRleHRfcHJvZmlsZSwgCiAgICBHTFhfQVJCX2dldF9wcm9jX2FkZHJlc3MsIEdMWF9B
UkJfbXVsdGlzYW1wbGUsIEdMWF9FWFRfaW1wb3J0X2NvbnRleHQsIAogICAgR0xYX0VYVF92aXN1
YWxfaW5mbywgR0xYX0VYVF92aXN1YWxfcmF0aW5nLCBHTFhfTUVTQV9hbGxvY2F0ZV9tZW1vcnks
IAogICAgR0xYX01FU0FfY29weV9zdWJfYnVmZmVyLCBHTFhfTUVTQV9zd2FwX2NvbnRyb2wsIAog
ICAgR0xYX01FU0Ffc3dhcF9mcmFtZV91c2FnZSwgR0xYX05WX3N3YXBfZ3JvdXAsIEdMWF9PTUxf
c3dhcF9tZXRob2QsIAogICAgR0xYX1NHSV9tYWtlX2N1cnJlbnRfcmVhZCwgR0xYX1NHSV9zd2Fw
X2NvbnRyb2wsIEdMWF9TR0lfdmlkZW9fc3luYywgCiAgICBHTFhfU0dJU19tdWx0aXNhbXBsZSwg
R0xYX1NHSVhfZmJjb25maWcsIEdMWF9TR0lYX3BidWZmZXIsIAogICAgR0xYX1NHSVhfc3dhcF9i
YXJyaWVyLCBHTFhfU0dJWF9zd2FwX2dyb3VwLCBHTFhfU0dJWF92aXN1YWxfc2VsZWN0X2dyb3Vw
LCAKICAgIEdMWF9FWFRfdGV4dHVyZV9mcm9tX3BpeG1hcCwgR0xYX0VYVF9mcmFtZWJ1ZmZlcl9z
UkdCLCAKICAgIEdMWF9BUkJfZmJjb25maWdfZmxvYXQsIEdMWF9BTURfZ3B1X2Fzc29jaWF0aW9u
CkdMWCB2ZXJzaW9uOiAxLjQKR0xYIGV4dGVuc2lvbnM6CiAgICBHTFhfQVJCX2dldF9wcm9jX2Fk
ZHJlc3MsIEdMWF9BUkJfbXVsdGlzYW1wbGUsIEdMWF9FWFRfaW1wb3J0X2NvbnRleHQsIAogICAg
R0xYX0VYVF92aXN1YWxfaW5mbywgR0xYX0VYVF92aXN1YWxfcmF0aW5nLCBHTFhfTUVTQV9jb3B5
X3N1Yl9idWZmZXIsIAogICAgR0xYX09NTF9zd2FwX21ldGhvZCwgR0xYX1NHSV9tYWtlX2N1cnJl
bnRfcmVhZCwgR0xYX1NHSVNfbXVsdGlzYW1wbGUsIAogICAgR0xYX1NHSVhfZmJjb25maWcsIEdM
WF9TR0lYX3BidWZmZXIsIEdMWF9FWFRfdGV4dHVyZV9mcm9tX3BpeG1hcApPcGVuR0wgdmVuZG9y
IHN0cmluZzogTWVzYSBQcm9qZWN0Ck9wZW5HTCByZW5kZXJlciBzdHJpbmc6IFNvZnR3YXJlIFJh
c3Rlcml6ZXIKT3BlbkdMIHZlcnNpb24gc3RyaW5nOiAxLjQgKDIuMSBNZXNhIDcuMTEpCk9wZW5H
TCBleHRlbnNpb25zOgogICAgR0xfQVJCX2RlcHRoX3RleHR1cmUsIEdMX0FSQl9kcmF3X2J1ZmZl
cnMsIEdMX0FSQl9mcmFnbWVudF9wcm9ncmFtLCAKICAgIEdMX0FSQl9mcmFnbWVudF9wcm9ncmFt
X3NoYWRvdywgR0xfQVJCX211bHRpc2FtcGxlLCBHTF9BUkJfbXVsdGl0ZXh0dXJlLCAKICAgIEdM
X0FSQl9vY2NsdXNpb25fcXVlcnksIEdMX0FSQl9wb2ludF9wYXJhbWV0ZXJzLCBHTF9BUkJfcG9p
bnRfc3ByaXRlLCAKICAgIEdMX0FSQl9zaGFkb3csIEdMX0FSQl9zaGFkb3dfYW1iaWVudCwgR0xf
QVJCX3RleHR1cmVfYm9yZGVyX2NsYW1wLCAKICAgIEdMX0FSQl90ZXh0dXJlX2NvbXByZXNzaW9u
LCBHTF9BUkJfdGV4dHVyZV9jdWJlX21hcCwgCiAgICBHTF9BUkJfdGV4dHVyZV9lbnZfYWRkLCBH
TF9BUkJfdGV4dHVyZV9lbnZfY29tYmluZSwgCiAgICBHTF9BUkJfdGV4dHVyZV9lbnZfY3Jvc3Ni
YXIsIEdMX0FSQl90ZXh0dXJlX2Vudl9kb3QzLCAKICAgIEdMX0FSQl90ZXh0dXJlX21pcnJvcmVk
X3JlcGVhdCwgR0xfQVJCX3RleHR1cmVfbm9uX3Bvd2VyX29mX3R3bywgCiAgICBHTF9BUkJfdGV4
dHVyZV9yZWN0YW5nbGUsIEdMX0FSQl90cmFuc3Bvc2VfbWF0cml4LCBHTF9BUkJfdmVydGV4X3By
b2dyYW0sIAogICAgR0xfQVJCX3dpbmRvd19wb3MsIEdMX0VYVF9hYmdyLCBHTF9FWFRfYmdyYSwg
R0xfRVhUX2JsZW5kX2NvbG9yLCAKICAgIEdMX0VYVF9ibGVuZF9lcXVhdGlvbl9zZXBhcmF0ZSwg
R0xfRVhUX2JsZW5kX2Z1bmNfc2VwYXJhdGUsIAogICAgR0xfRVhUX2JsZW5kX2xvZ2ljX29wLCBH
TF9FWFRfYmxlbmRfbWlubWF4LCBHTF9FWFRfYmxlbmRfc3VidHJhY3QsIAogICAgR0xfRVhUX2Nv
cHlfdGV4dHVyZSwgR0xfRVhUX2RyYXdfcmFuZ2VfZWxlbWVudHMsIEdMX0VYVF9mb2dfY29vcmQs
IAogICAgR0xfRVhUX2ZyYW1lYnVmZmVyX29iamVjdCwgR0xfRVhUX211bHRpX2RyYXdfYXJyYXlz
LCBHTF9FWFRfcGFja2VkX3BpeGVscywgCiAgICBHTF9FWFRfcGFsZXR0ZWRfdGV4dHVyZSwgR0xf
RVhUX3BvaW50X3BhcmFtZXRlcnMsIEdMX0VYVF9wb2x5Z29uX29mZnNldCwgCiAgICBHTF9FWFRf
cmVzY2FsZV9ub3JtYWwsIEdMX0VYVF9zZWNvbmRhcnlfY29sb3IsIAogICAgR0xfRVhUX3NlcGFy
YXRlX3NwZWN1bGFyX2NvbG9yLCBHTF9FWFRfc2hhZG93X2Z1bmNzLCAKICAgIEdMX0VYVF9zaGFy
ZWRfdGV4dHVyZV9wYWxldHRlLCBHTF9FWFRfc3RlbmNpbF90d29fc2lkZSwgCiAgICBHTF9FWFRf
c3RlbmNpbF93cmFwLCBHTF9FWFRfc3VidGV4dHVyZSwgR0xfRVhUX3RleHR1cmUsIEdMX0VYVF90
ZXh0dXJlM0QsIAogICAgR0xfRVhUX3RleHR1cmVfZWRnZV9jbGFtcCwgR0xfRVhUX3RleHR1cmVf
ZW52X2FkZCwgCiAgICBHTF9FWFRfdGV4dHVyZV9lbnZfY29tYmluZSwgR0xfRVhUX3RleHR1cmVf
ZW52X2RvdDMsIAogICAgR0xfRVhUX3RleHR1cmVfZmlsdGVyX2FuaXNvdHJvcGljLCBHTF9FWFRf
dGV4dHVyZV9sb2RfYmlhcywgCiAgICBHTF9FWFRfdGV4dHVyZV9taXJyb3JfY2xhbXAsIEdMX0VY
VF90ZXh0dXJlX29iamVjdCwgCiAgICBHTF9FWFRfdGV4dHVyZV9yZWN0YW5nbGUsIEdMX0VYVF92
ZXJ0ZXhfYXJyYXksIAogICAgR0xfM0RGWF90ZXh0dXJlX2NvbXByZXNzaW9uX0ZYVDEsIEdMX0FQ
UExFX3BhY2tlZF9waXhlbHMsIAogICAgR0xfQVRJX2RyYXdfYnVmZmVycywgR0xfQVRJX3RleHR1
cmVfZW52X2NvbWJpbmUzLCAKICAgIEdMX0FUSV90ZXh0dXJlX21pcnJvcl9vbmNlLCBHTF9BVElY
X3RleHR1cmVfZW52X2NvbWJpbmUzLCAKICAgIEdMX0lCTV90ZXh0dXJlX21pcnJvcmVkX3JlcGVh
dCwgR0xfSU5HUl9ibGVuZF9mdW5jX3NlcGFyYXRlLCAKICAgIEdMX01FU0FfcGFja19pbnZlcnQs
IEdMX01FU0FfeWNiY3JfdGV4dHVyZSwgR0xfU0dJU19nZW5lcmF0ZV9taXBtYXAsIAogICAgR0xf
U0dJU190ZXh0dXJlX2JvcmRlcl9jbGFtcCwgR0xfU0dJU190ZXh0dXJlX2VkZ2VfY2xhbXAsIAog
ICAgR0xfU0dJU190ZXh0dXJlX2xvZCwgR0xfU0dJWF9zaGFkb3dfYW1iaWVudCwgR0xfU1VOX211
bHRpX2RyYXdfYXJyYXlzCgo2NCBHTFggVmlzdWFscwogICAgdmlzdWFsICB4ICAgYmYgbHYgcmcg
ZCBzdCAgY29sb3JidWZmZXIgIHNyIGF4IGRwIHN0IGFjY3VtYnVmZmVyICBtcyAgY2F2CiAgaWQg
ZGVwIGNsIHNwICBzeiBsICBjaSBiIHJvICByICBnICBiICBhIEYgZ2IgYmYgdGggY2wgIHIgIGcg
IGIgIGEgbnMgYiBlYXQKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoweDAyMSAyNCB0YyAgMCAgMzIgIDAg
ciAgeSAuICAgOCAgOCAgOCAgOCAuICAuICAwIDI0ICA4ICAwICAwICAwICAwICAwIDAgTm9uZQow
eDAyMiAyNCBkYyAgMCAgMzIgIDAgciAgeSAuICAgOCAgOCAgOCAgOCAuICAuICAwIDI0ICA4ICAw
ICAwICAwICAwICAwIDAgTm9uZQoweDBiZiAyNCB0YyAgMCAgMjQgIDAgciAgLiAuICAgOCAgOCAg
OCAgMCAuICAuICAwICAwICAwICAwICAwICAwICAwICAwIDAgTm9uZQoweDBjMCAyNCB0YyAgMCAg
MjQgIDAgciAgLiAuICAgOCAgOCAgOCAgMCAuICAuICAwICAwICAwIDE2IDE2IDE2ICAwICAwIDAg
U2xvdwoweDBjMSAyNCB0YyAgMCAgMjQgIDAgciAgeSAuICAgOCAgOCAgOCAgMCAuICAuICAwICAw
ICAwICAwICAwICAwICAwICAwIDAgTm9uZQoweDBjMiAyNCB0YyAgMCAgMjQgIDAgciAgeSAuICAg
OCAgOCAgOCAgMCAuICAuICAwICAwICAwIDE2IDE2IDE2ICAwICAwIDAgU2xvdwoweDBjMyAyNCB0
YyAgMCAgMjQgIDAgciAgLiAuICAgOCAgOCAgOCAgMCAuICAuICAwICAwICA4ICAwICAwICAwICAw
ICAwIDAgTm9uZQoweDBjNCAyNCB0YyAgMCAgMjQgIDAgciAgLiAuICAgOCAgOCAgOCAgMCAuICAu
ICAwICAwICA4IDE2IDE2IDE2ICAwICAwIDAgU2xvdwoweDBjNSAyNCB0YyAgMCAgMjQgIDAgciAg
eSAuICAgOCAgOCAgOCAgMCAuICAuICAwICAwICA4ICAwICAwICAwICAwICAwIDAgTm9uZQoweDBj
NiAyNCB0YyAgMCAgMjQgIDAgciAgeSAuICAgOCAgOCAgOCAgMCAuICAuICAwICAwICA4IDE2IDE2
IDE2ICAwICAwIDAgU2xvdwoweDBjNyAyNCB0YyAgMCAgMjQgIDAgciAgLiAuICAgOCAgOCAgOCAg
MCAuICAuICAwIDI0ICAwICAwICAwICAwICAwICAwIDAgTm9uZQoweDBjOCAyNCB0YyAgMCAgMjQg
IDAgciAgLiAuICAgOCAgOCAgOCAgMCAuICAuICAwIDI0ICAwIDE2IDE2IDE2ICAwICAwIDAgU2xv
dwoweDBjOSAyNCB0YyAgMCAgMjQgIDAgciAgeSAuICAgOCAgOCAgOCAgMCAuICAuICAwIDI0ICAw
ICAwICAwICAwICAwICAwIDAgTm9uZQoweDBjYSAyNCB0YyAgMCAgMjQgIDAgciAgeSAuICAgOCAg
OCAgOCAgMCAuICAuICAwIDI0ICAwIDE2IDE2IDE2ICAwICAwIDAgU2xvdwoweDBjYiAyNCB0YyAg
MCAgMjQgIDAgciAgLiAuICAgOCAgOCAgOCAgMCAuICAuICAwIDI0ICA4ICAwICAwICAwICAwICAw
IDAgTm9uZQoweDBjYyAyNCB0YyAgMCAgMjQgIDAgciAgLiAuICAgOCAgOCAgOCAgMCAuICAuICAw
IDI0ICA4IDE2IDE2IDE2ICAwICAwIDAgU2xvdwoweDBjZCAyNCB0YyAgMCAgMjQgIDAgciAgeSAu
ICAgOCAgOCAgOCAgMCAuICAuICAwIDI0ICA4ICAwICAwICAwICAwICAwIDAgTm9uZQoweDBjZSAy
NCB0YyAgMCAgMjQgIDAgciAgeSAuICAgOCAgOCAgOCAgMCAuICAuICAwIDI0ICA4IDE2IDE2IDE2
ICAwICAwIDAgU2xvdwoweDBjZiAyNCB0YyAgMCAgMzIgIDAgciAgLiAuICAgOCAgOCAgOCAgOCAu
ICAuICAwICAwICAwICAwICAwICAwICAwICAwIDAgTm9uZQoweDBkMCAyNCB0YyAgMCAgMzIgIDAg
ciAgLiAuICAgOCAgOCAgOCAgOCAuICAuICAwICAwICAwIDE2IDE2IDE2IDE2ICAwIDAgU2xvdwow
eDBkMSAyNCB0YyAgMCAgMzIgIDAgciAgeSAuICAgOCAgOCAgOCAgOCAuICAuICAwICAwICAwICAw
ICAwICAwICAwICAwIDAgTm9uZQoweDBkMiAyNCB0YyAgMCAgMzIgIDAgciAgeSAuICAgOCAgOCAg
OCAgOCAuICAuICAwICAwICAwIDE2IDE2IDE2IDE2ICAwIDAgU2xvdwoweDBkMyAyNCB0YyAgMCAg
MzIgIDAgciAgLiAuICAgOCAgOCAgOCAgOCAuICAuICAwICAwICA4ICAwICAwICAwICAwICAwIDAg
Tm9uZQoweDBkNCAyNCB0YyAgMCAgMzIgIDAgciAgLiAuICAgOCAgOCAgOCAgOCAuICAuICAwICAw
ICA4IDE2IDE2IDE2IDE2ICAwIDAgU2xvdwoweDBkNSAyNCB0YyAgMCAgMzIgIDAgciAgeSAuICAg
OCAgOCAgOCAgOCAuICAuICAwICAwICA4ICAwICAwICAwICAwICAwIDAgTm9uZQoweDBkNiAyNCB0
YyAgMCAgMzIgIDAgciAgeSAuICAgOCAgOCAgOCAgOCAuICAuICAwICAwICA4IDE2IDE2IDE2IDE2
ICAwIDAgU2xvdwoweDBkNyAyNCB0YyAgMCAgMzIgIDAgciAgLiAuICAgOCAgOCAgOCAgOCAuICAu
ICAwIDI0ICAwICAwICAwICAwICAwICAwIDAgTm9uZQoweDBkOCAyNCB0YyAgMCAgMzIgIDAgciAg
LiAuICAgOCAgOCAgOCAgOCAuICAuICAwIDI0ICAwIDE2IDE2IDE2IDE2ICAwIDAgU2xvdwoweDBk
OSAyNCB0YyAgMCAgMzIgIDAgciAgeSAuICAgOCAgOCAgOCAgOCAuICAuICAwIDI0ICAwIDE2IDE2
IDE2IDE2ICAwIDAgU2xvdwoweDBkYSAyNCB0YyAgMCAgMzIgIDAgciAgLiAuICAgOCAgOCAgOCAg
OCAuICAuICAwIDI0ICA4ICAwICAwICAwICAwICAwIDAgTm9uZQoweDBkYiAyNCB0YyAgMCAgMzIg
IDAgciAgLiAuICAgOCAgOCAgOCAgOCAuICAuICAwIDI0ICA4IDE2IDE2IDE2IDE2ICAwIDAgU2xv
dwoweDBkYyAyNCB0YyAgMCAgMzIgIDAgciAgeSAuICAgOCAgOCAgOCAgOCAuICAuICAwIDI0ICA4
IDE2IDE2IDE2IDE2ICAwIDAgU2xvdwoweDBkZCAyNCBkYyAgMCAgMjQgIDAgciAgLiAuICAgOCAg
OCAgOCAgMCAuICAuICAwICAwICAwICAwICAwICAwICAwICAwIDAgTm9uZQoweDBkZSAyNCBkYyAg
MCAgMjQgIDAgciAgLiAuICAgOCAgOCAgOCAgMCAuICAuICAwICAwICAwIDE2IDE2IDE2ICAwICAw
IDAgU2xvdwoweDBkZiAyNCBkYyAgMCAgMjQgIDAgciAgeSAuICAgOCAgOCAgOCAgMCAuICAuICAw
ICAwICAwICAwICAwICAwICAwICAwIDAgTm9uZQoweDBlMCAyNCBkYyAgMCAgMjQgIDAgciAgeSAu
ICAgOCAgOCAgOCAgMCAuICAuICAwICAwICAwIDE2IDE2IDE2ICAwICAwIDAgU2xvdwoweDBlMSAy
NCBkYyAgMCAgMjQgIDAgciAgLiAuICAgOCAgOCAgOCAgMCAuICAuICAwICAwICA4ICAwICAwICAw
ICAwICAwIDAgTm9uZQoweDBlMiAyNCBkYyAgMCAgMjQgIDAgciAgLiAuICAgOCAgOCAgOCAgMCAu
ICAuICAwICAwICA4IDE2IDE2IDE2ICAwICAwIDAgU2xvdwoweDBlMyAyNCBkYyAgMCAgMjQgIDAg
ciAgeSAuICAgOCAgOCAgOCAgMCAuICAuICAwICAwICA4ICAwICAwICAwICAwICAwIDAgTm9uZQow
eDBlNCAyNCBkYyAgMCAgMjQgIDAgciAgeSAuICAgOCAgOCAgOCAgMCAuICAuICAwICAwICA4IDE2
IDE2IDE2ICAwICAwIDAgU2xvdwoweDBlNSAyNCBkYyAgMCAgMjQgIDAgciAgLiAuICAgOCAgOCAg
OCAgMCAuICAuICAwIDI0ICAwICAwICAwICAwICAwICAwIDAgTm9uZQoweDBlNiAyNCBkYyAgMCAg
MjQgIDAgciAgLiAuICAgOCAgOCAgOCAgMCAuICAuICAwIDI0ICAwIDE2IDE2IDE2ICAwICAwIDAg
U2xvdwoweDBlNyAyNCBkYyAgMCAgMjQgIDAgciAgeSAuICAgOCAgOCAgOCAgMCAuICAuICAwIDI0
ICAwICAwICAwICAwICAwICAwIDAgTm9uZQoweDBlOCAyNCBkYyAgMCAgMjQgIDAgciAgeSAuICAg
OCAgOCAgOCAgMCAuICAuICAwIDI0ICAwIDE2IDE2IDE2ICAwICAwIDAgU2xvdwoweDBlOSAyNCBk
YyAgMCAgMjQgIDAgciAgLiAuICAgOCAgOCAgOCAgMCAuICAuICAwIDI0ICA4ICAwICAwICAwICAw
ICAwIDAgTm9uZQoweDBlYSAyNCBkYyAgMCAgMjQgIDAgciAgLiAuICAgOCAgOCAgOCAgMCAuICAu
ICAwIDI0ICA4IDE2IDE2IDE2ICAwICAwIDAgU2xvdwoweDBlYiAyNCBkYyAgMCAgMjQgIDAgciAg
eSAuICAgOCAgOCAgOCAgMCAuICAuICAwIDI0ICA4ICAwICAwICAwICAwICAwIDAgTm9uZQoweDBl
YyAyNCBkYyAgMCAgMjQgIDAgciAgeSAuICAgOCAgOCAgOCAgMCAuICAuICAwIDI0ICA4IDE2IDE2
IDE2ICAwICAwIDAgU2xvdwoweDBlZCAyNCBkYyAgMCAgMzIgIDAgciAgLiAuICAgOCAgOCAgOCAg
OCAuICAuICAwICAwICAwICAwICAwICAwICAwICAwIDAgTm9uZQoweDBlZSAyNCBkYyAgMCAgMzIg
IDAgciAgLiAuICAgOCAgOCAgOCAgOCAuICAuICAwICAwICAwIDE2IDE2IDE2IDE2ICAwIDAgU2xv
dwoweDBlZiAyNCBkYyAgMCAgMzIgIDAgciAgeSAuICAgOCAgOCAgOCAgOCAuICAuICAwICAwICAw
ICAwICAwICAwICAwICAwIDAgTm9uZQoweDBmMCAyNCBkYyAgMCAgMzIgIDAgciAgeSAuICAgOCAg
OCAgOCAgOCAuICAuICAwICAwICAwIDE2IDE2IDE2IDE2ICAwIDAgU2xvdwoweDBmMSAyNCBkYyAg
MCAgMzIgIDAgciAgLiAuICAgOCAgOCAgOCAgOCAuICAuICAwICAwICA4ICAwICAwICAwICAwICAw
IDAgTm9uZQoweDBmMiAyNCBkYyAgMCAgMzIgIDAgciAgLiAuICAgOCAgOCAgOCAgOCAuICAuICAw
ICAwICA4IDE2IDE2IDE2IDE2ICAwIDAgU2xvdwoweDBmMyAyNCBkYyAgMCAgMzIgIDAgciAgeSAu
ICAgOCAgOCAgOCAgOCAuICAuICAwICAwICA4ICAwICAwICAwICAwICAwIDAgTm9uZQoweDBmNCAy
NCBkYyAgMCAgMzIgIDAgciAgeSAuICAgOCAgOCAgOCAgOCAuICAuICAwICAwICA4IDE2IDE2IDE2
IDE2ICAwIDAgU2xvdwoweDBmNSAyNCBkYyAgMCAgMzIgIDAgciAgLiAuICAgOCAgOCAgOCAgOCAu
ICAuICAwIDI0ICAwICAwICAwICAwICAwICAwIDAgTm9uZQoweDBmNiAyNCBkYyAgMCAgMzIgIDAg
ciAgLiAuICAgOCAgOCAgOCAgOCAuICAuICAwIDI0ICAwIDE2IDE2IDE2IDE2ICAwIDAgU2xvdwow
eDBmNyAyNCBkYyAgMCAgMzIgIDAgciAgeSAuICAgOCAgOCAgOCAgOCAuICAuICAwIDI0ICAwICAw
ICAwICAwICAwICAwIDAgTm9uZQoweDBmOCAyNCBkYyAgMCAgMzIgIDAgciAgeSAuICAgOCAgOCAg
OCAgOCAuICAuICAwIDI0ICAwIDE2IDE2IDE2IDE2ICAwIDAgU2xvdwoweDBmOSAyNCBkYyAgMCAg
MzIgIDAgciAgLiAuICAgOCAgOCAgOCAgOCAuICAuICAwIDI0ICA4ICAwICAwICAwICAwICAwIDAg
Tm9uZQoweDBmYSAyNCBkYyAgMCAgMzIgIDAgciAgLiAuICAgOCAgOCAgOCAgOCAuICAuICAwIDI0
ICA4IDE2IDE2IDE2IDE2ICAwIDAgU2xvdwoweDBmYiAyNCBkYyAgMCAgMzIgIDAgciAgeSAuICAg
OCAgOCAgOCAgOCAuICAuICAwIDI0ICA4IDE2IDE2IDE2IDE2ICAwIDAgU2xvdwoweDAzZSAzMiB0
YyAgMCAgMzIgIDAgciAgeSAuICAgOCAgOCAgOCAgOCAuICAuICAwIDI0ICAwICAwICAwICAwICAw
ICAwIDAgTm9uZQoKMTM0IEdMWEZCQ29uZmlnczoKICAgIHZpc3VhbCAgeCAgIGJmIGx2IHJnIGQg
c3QgIGNvbG9yYnVmZmVyICBzciBheCBkcCBzdCBhY2N1bWJ1ZmZlciAgbXMgIGNhdgogIGlkIGRl
cCBjbCBzcCAgc3ogbCAgY2kgYiBybyAgciAgZyAgYiAgYSBGIGdiIGJmIHRoIGNsICByICBnICBi
ICBhIG5zIGIgZWF0Ci0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KMHgwM2YgIDAgdGMgIDAgICA4ICAwIHIg
IC4gLiAgIDMgIDMgIDIgIDAgLiAgLiAgMCAgMCAgMCAgMCAgMCAgMCAgMCAgMCAwIE5vbmUKMHgw
NDAgIDAgdGMgIDAgICA4ICAwIHIgIC4gLiAgIDMgIDMgIDIgIDAgLiAgLiAgMCAgMCAgMCAxNiAx
NiAxNiAgMCAgMCAwIFNsb3cKMHgwNDEgIDAgdGMgIDAgICA4ICAwIHIgIHkgLiAgIDMgIDMgIDIg
IDAgLiAgLiAgMCAgMCAgMCAgMCAgMCAgMCAgMCAgMCAwIE5vbmUKMHgwNDIgIDAgdGMgIDAgICA4
ICAwIHIgIHkgLiAgIDMgIDMgIDIgIDAgLiAgLiAgMCAgMCAgMCAxNiAxNiAxNiAgMCAgMCAwIFNs
b3cKMHgwNDMgIDAgdGMgIDAgICA4ICAwIHIgIC4gLiAgIDMgIDMgIDIgIDAgLiAgLiAgMCAgMCAg
OCAgMCAgMCAgMCAgMCAgMCAwIE5vbmUKMHgwNDQgIDAgdGMgIDAgICA4ICAwIHIgIC4gLiAgIDMg
IDMgIDIgIDAgLiAgLiAgMCAgMCAgOCAxNiAxNiAxNiAgMCAgMCAwIFNsb3cKMHgwNDUgIDAgdGMg
IDAgICA4ICAwIHIgIHkgLiAgIDMgIDMgIDIgIDAgLiAgLiAgMCAgMCAgOCAgMCAgMCAgMCAgMCAg
MCAwIE5vbmUKMHgwNDYgIDAgdGMgIDAgICA4ICAwIHIgIHkgLiAgIDMgIDMgIDIgIDAgLiAgLiAg
MCAgMCAgOCAxNiAxNiAxNiAgMCAgMCAwIFNsb3cKMHgwNDcgIDAgdGMgIDAgICA4ICAwIHIgIC4g
LiAgIDMgIDMgIDIgIDAgLiAgLiAgMCAgOCAgMCAgMCAgMCAgMCAgMCAgMCAwIE5vbmUKMHgwNDgg
IDAgdGMgIDAgICA4ICAwIHIgIC4gLiAgIDMgIDMgIDIgIDAgLiAgLiAgMCAgOCAgMCAxNiAxNiAx
NiAgMCAgMCAwIFNsb3cKMHgwNDkgIDAgdGMgIDAgICA4ICAwIHIgIHkgLiAgIDMgIDMgIDIgIDAg
LiAgLiAgMCAgOCAgMCAgMCAgMCAgMCAgMCAgMCAwIE5vbmUKMHgwNGEgIDAgdGMgIDAgICA4ICAw
IHIgIHkgLiAgIDMgIDMgIDIgIDAgLiAgLiAgMCAgOCAgMCAxNiAxNiAxNiAgMCAgMCAwIFNsb3cK
MHgwNGIgIDAgdGMgIDAgICA4ICAwIHIgIC4gLiAgIDMgIDMgIDIgIDAgLiAgLiAgMCAgOCAgOCAg
MCAgMCAgMCAgMCAgMCAwIE5vbmUKMHgwNGMgIDAgdGMgIDAgICA4ICAwIHIgIC4gLiAgIDMgIDMg
IDIgIDAgLiAgLiAgMCAgOCAgOCAxNiAxNiAxNiAgMCAgMCAwIFNsb3cKMHgwNGQgIDAgdGMgIDAg
ICA4ICAwIHIgIHkgLiAgIDMgIDMgIDIgIDAgLiAgLiAgMCAgOCAgOCAgMCAgMCAgMCAgMCAgMCAw
IE5vbmUKMHgwNGUgIDAgdGMgIDAgICA4ICAwIHIgIHkgLiAgIDMgIDMgIDIgIDAgLiAgLiAgMCAg
OCAgOCAxNiAxNiAxNiAgMCAgMCAwIFNsb3cKMHgwNGYgIDAgdGMgIDAgIDE2ICAwIHIgIC4gLiAg
IDUgIDYgIDUgIDAgLiAgLiAgMCAgMCAgMCAgMCAgMCAgMCAgMCAgMCAwIE5vbmUKMHgwNTAgIDAg
dGMgIDAgIDE2ICAwIHIgIC4gLiAgIDUgIDYgIDUgIDAgLiAgLiAgMCAgMCAgMCAxNiAxNiAxNiAg
MCAgMCAwIFNsb3cKMHgwNTEgIDAgdGMgIDAgIDE2ICAwIHIgIHkgLiAgIDUgIDYgIDUgIDAgLiAg
LiAgMCAgMCAgMCAgMCAgMCAgMCAgMCAgMCAwIE5vbmUKMHgwNTIgIDAgdGMgIDAgIDE2ICAwIHIg
IHkgLiAgIDUgIDYgIDUgIDAgLiAgLiAgMCAgMCAgMCAxNiAxNiAxNiAgMCAgMCAwIFNsb3cKMHgw
NTMgIDAgdGMgIDAgIDE2ICAwIHIgIC4gLiAgIDUgIDYgIDUgIDAgLiAgLiAgMCAgMCAgOCAgMCAg
MCAgMCAgMCAgMCAwIE5vbmUKMHgwNTQgIDAgdGMgIDAgIDE2ICAwIHIgIC4gLiAgIDUgIDYgIDUg
IDAgLiAgLiAgMCAgMCAgOCAxNiAxNiAxNiAgMCAgMCAwIFNsb3cKMHgwNTUgIDAgdGMgIDAgIDE2
ICAwIHIgIHkgLiAgIDUgIDYgIDUgIDAgLiAgLiAgMCAgMCAgOCAgMCAgMCAgMCAgMCAgMCAwIE5v
bmUKMHgwNTYgIDAgdGMgIDAgIDE2ICAwIHIgIHkgLiAgIDUgIDYgIDUgIDAgLiAgLiAgMCAgMCAg
OCAxNiAxNiAxNiAgMCAgMCAwIFNsb3cKMHgwNTcgIDAgdGMgIDAgIDE2ICAwIHIgIC4gLiAgIDUg
IDYgIDUgIDAgLiAgLiAgMCAxNiAgMCAgMCAgMCAgMCAgMCAgMCAwIE5vbmUKMHgwNTggIDAgdGMg
IDAgIDE2ICAwIHIgIC4gLiAgIDUgIDYgIDUgIDAgLiAgLiAgMCAxNiAgMCAxNiAxNiAxNiAgMCAg
MCAwIFNsb3cKMHgwNTkgIDAgdGMgIDAgIDE2ICAwIHIgIHkgLiAgIDUgIDYgIDUgIDAgLiAgLiAg
MCAxNiAgMCAgMCAgMCAgMCAgMCAgMCAwIE5vbmUKMHgwNWEgIDAgdGMgIDAgIDE2ICAwIHIgIHkg
LiAgIDUgIDYgIDUgIDAgLiAgLiAgMCAxNiAgMCAxNiAxNiAxNiAgMCAgMCAwIFNsb3cKMHgwNWIg
IDAgdGMgIDAgIDE2ICAwIHIgIC4gLiAgIDUgIDYgIDUgIDAgLiAgLiAgMCAxNiAgOCAgMCAgMCAg
MCAgMCAgMCAwIE5vbmUKMHgwNWMgIDAgdGMgIDAgIDE2ICAwIHIgIC4gLiAgIDUgIDYgIDUgIDAg
LiAgLiAgMCAxNiAgOCAxNiAxNiAxNiAgMCAgMCAwIFNsb3cKMHgwNWQgIDAgdGMgIDAgIDE2ICAw
IHIgIHkgLiAgIDUgIDYgIDUgIDAgLiAgLiAgMCAxNiAgOCAgMCAgMCAgMCAgMCAgMCAwIE5vbmUK
MHgwNWUgIDAgdGMgIDAgIDE2ICAwIHIgIHkgLiAgIDUgIDYgIDUgIDAgLiAgLiAgMCAxNiAgOCAx
NiAxNiAxNiAgMCAgMCAwIFNsb3cKMHgwNWYgMjQgdGMgIDAgIDI0ICAwIHIgIC4gLiAgIDggIDgg
IDggIDAgLiAgLiAgMCAgMCAgMCAgMCAgMCAgMCAgMCAgMCAwIE5vbmUKMHgwNjAgMjQgdGMgIDAg
IDI0ICAwIHIgIC4gLiAgIDggIDggIDggIDAgLiAgLiAgMCAgMCAgMCAxNiAxNiAxNiAgMCAgMCAw
IFNsb3cKMHgwNjEgMjQgdGMgIDAgIDI0ICAwIHIgIHkgLiAgIDggIDggIDggIDAgLiAgLiAgMCAg
MCAgMCAgMCAgMCAgMCAgMCAgMCAwIE5vbmUKMHgwNjIgMjQgdGMgIDAgIDI0ICAwIHIgIHkgLiAg
IDggIDggIDggIDAgLiAgLiAgMCAgMCAgMCAxNiAxNiAxNiAgMCAgMCAwIFNsb3cKMHgwNjMgMjQg
dGMgIDAgIDI0ICAwIHIgIC4gLiAgIDggIDggIDggIDAgLiAgLiAgMCAgMCAgOCAgMCAgMCAgMCAg
MCAgMCAwIE5vbmUKMHgwNjQgMjQgdGMgIDAgIDI0ICAwIHIgIC4gLiAgIDggIDggIDggIDAgLiAg
LiAgMCAgMCAgOCAxNiAxNiAxNiAgMCAgMCAwIFNsb3cKMHgwNjUgMjQgdGMgIDAgIDI0ICAwIHIg
IHkgLiAgIDggIDggIDggIDAgLiAgLiAgMCAgMCAgOCAgMCAgMCAgMCAgMCAgMCAwIE5vbmUKMHgw
NjYgMjQgdGMgIDAgIDI0ICAwIHIgIHkgLiAgIDggIDggIDggIDAgLiAgLiAgMCAgMCAgOCAxNiAx
NiAxNiAgMCAgMCAwIFNsb3cKMHgwNjcgMjQgdGMgIDAgIDI0ICAwIHIgIC4gLiAgIDggIDggIDgg
IDAgLiAgLiAgMCAyNCAgMCAgMCAgMCAgMCAgMCAgMCAwIE5vbmUKMHgwNjggMjQgdGMgIDAgIDI0
ICAwIHIgIC4gLiAgIDggIDggIDggIDAgLiAgLiAgMCAyNCAgMCAxNiAxNiAxNiAgMCAgMCAwIFNs
b3cKMHgwNjkgMjQgdGMgIDAgIDI0ICAwIHIgIHkgLiAgIDggIDggIDggIDAgLiAgLiAgMCAyNCAg
MCAgMCAgMCAgMCAgMCAgMCAwIE5vbmUKMHgwNmEgMjQgdGMgIDAgIDI0ICAwIHIgIHkgLiAgIDgg
IDggIDggIDAgLiAgLiAgMCAyNCAgMCAxNiAxNiAxNiAgMCAgMCAwIFNsb3cKMHgwNmIgMjQgdGMg
IDAgIDI0ICAwIHIgIC4gLiAgIDggIDggIDggIDAgLiAgLiAgMCAyNCAgOCAgMCAgMCAgMCAgMCAg
MCAwIE5vbmUKMHgwNmMgMjQgdGMgIDAgIDI0ICAwIHIgIC4gLiAgIDggIDggIDggIDAgLiAgLiAg
MCAyNCAgOCAxNiAxNiAxNiAgMCAgMCAwIFNsb3cKMHgwNmQgMjQgdGMgIDAgIDI0ICAwIHIgIHkg
LiAgIDggIDggIDggIDAgLiAgLiAgMCAyNCAgOCAgMCAgMCAgMCAgMCAgMCAwIE5vbmUKMHgwNmUg
MjQgdGMgIDAgIDI0ICAwIHIgIHkgLiAgIDggIDggIDggIDAgLiAgLiAgMCAyNCAgOCAxNiAxNiAx
NiAgMCAgMCAwIFNsb3cKMHgwNmYgMjQgdGMgIDAgIDMyICAwIHIgIC4gLiAgIDggIDggIDggIDgg
LiAgLiAgMCAgMCAgMCAgMCAgMCAgMCAgMCAgMCAwIE5vbmUKMHgwNzAgMjQgdGMgIDAgIDMyICAw
IHIgIC4gLiAgIDggIDggIDggIDggLiAgLiAgMCAgMCAgMCAxNiAxNiAxNiAxNiAgMCAwIFNsb3cK
MHgwNzEgMjQgdGMgIDAgIDMyICAwIHIgIHkgLiAgIDggIDggIDggIDggLiAgLiAgMCAgMCAgMCAg
MCAgMCAgMCAgMCAgMCAwIE5vbmUKMHgwNzIgMjQgdGMgIDAgIDMyICAwIHIgIHkgLiAgIDggIDgg
IDggIDggLiAgLiAgMCAgMCAgMCAxNiAxNiAxNiAxNiAgMCAwIFNsb3cKMHgwNzMgMjQgdGMgIDAg
IDMyICAwIHIgIC4gLiAgIDggIDggIDggIDggLiAgLiAgMCAgMCAgOCAgMCAgMCAgMCAgMCAgMCAw
IE5vbmUKMHgwNzQgMjQgdGMgIDAgIDMyICAwIHIgIC4gLiAgIDggIDggIDggIDggLiAgLiAgMCAg
MCAgOCAxNiAxNiAxNiAxNiAgMCAwIFNsb3cKMHgwNzUgMjQgdGMgIDAgIDMyICAwIHIgIHkgLiAg
IDggIDggIDggIDggLiAgLiAgMCAgMCAgOCAgMCAgMCAgMCAgMCAgMCAwIE5vbmUKMHgwNzYgMjQg
dGMgIDAgIDMyICAwIHIgIHkgLiAgIDggIDggIDggIDggLiAgLiAgMCAgMCAgOCAxNiAxNiAxNiAx
NiAgMCAwIFNsb3cKMHgwNzcgMjQgdGMgIDAgIDMyICAwIHIgIC4gLiAgIDggIDggIDggIDggLiAg
LiAgMCAyNCAgMCAgMCAgMCAgMCAgMCAgMCAwIE5vbmUKMHgwNzggMjQgdGMgIDAgIDMyICAwIHIg
IC4gLiAgIDggIDggIDggIDggLiAgLiAgMCAyNCAgMCAxNiAxNiAxNiAxNiAgMCAwIFNsb3cKMHgw
NzkgMzIgdGMgIDAgIDMyICAwIHIgIHkgLiAgIDggIDggIDggIDggLiAgLiAgMCAyNCAgMCAgMCAg
MCAgMCAgMCAgMCAwIE5vbmUKMHgwN2EgMjQgdGMgIDAgIDMyICAwIHIgIHkgLiAgIDggIDggIDgg
IDggLiAgLiAgMCAyNCAgMCAxNiAxNiAxNiAxNiAgMCAwIFNsb3cKMHgwN2IgMjQgdGMgIDAgIDMy
ICAwIHIgIC4gLiAgIDggIDggIDggIDggLiAgLiAgMCAyNCAgOCAgMCAgMCAgMCAgMCAgMCAwIE5v
bmUKMHgwN2MgMjQgdGMgIDAgIDMyICAwIHIgIC4gLiAgIDggIDggIDggIDggLiAgLiAgMCAyNCAg
OCAxNiAxNiAxNiAxNiAgMCAwIFNsb3cKMHgwN2QgMjQgdGMgIDAgIDMyICAwIHIgIHkgLiAgIDgg
IDggIDggIDggLiAgLiAgMCAyNCAgOCAgMCAgMCAgMCAgMCAgMCAwIE5vbmUKMHgwN2UgMjQgdGMg
IDAgIDMyICAwIHIgIHkgLiAgIDggIDggIDggIDggLiAgLiAgMCAyNCAgOCAxNiAxNiAxNiAxNiAg
MCAwIFNsb3cKMHgwN2YgIDAgZGMgIDAgICA4ICAwIHIgIC4gLiAgIDMgIDMgIDIgIDAgLiAgLiAg
MCAgMCAgMCAgMCAgMCAgMCAgMCAgMCAwIE5vbmUKMHgwODAgIDAgZGMgIDAgICA4ICAwIHIgIC4g
LiAgIDMgIDMgIDIgIDAgLiAgLiAgMCAgMCAgMCAxNiAxNiAxNiAgMCAgMCAwIFNsb3cKMHgwODEg
IDAgZGMgIDAgICA4ICAwIHIgIHkgLiAgIDMgIDMgIDIgIDAgLiAgLiAgMCAgMCAgMCAgMCAgMCAg
MCAgMCAgMCAwIE5vbmUKMHgwODIgIDAgZGMgIDAgICA4ICAwIHIgIHkgLiAgIDMgIDMgIDIgIDAg
LiAgLiAgMCAgMCAgMCAxNiAxNiAxNiAgMCAgMCAwIFNsb3cKMHgwODMgIDAgZGMgIDAgICA4ICAw
IHIgIC4gLiAgIDMgIDMgIDIgIDAgLiAgLiAgMCAgMCAgOCAgMCAgMCAgMCAgMCAgMCAwIE5vbmUK
MHgwODQgIDAgZGMgIDAgICA4ICAwIHIgIC4gLiAgIDMgIDMgIDIgIDAgLiAgLiAgMCAgMCAgOCAx
NiAxNiAxNiAgMCAgMCAwIFNsb3cKMHgwODUgIDAgZGMgIDAgICA4ICAwIHIgIHkgLiAgIDMgIDMg
IDIgIDAgLiAgLiAgMCAgMCAgOCAgMCAgMCAgMCAgMCAgMCAwIE5vbmUKMHgwODYgIDAgZGMgIDAg
ICA4ICAwIHIgIHkgLiAgIDMgIDMgIDIgIDAgLiAgLiAgMCAgMCAgOCAxNiAxNiAxNiAgMCAgMCAw
IFNsb3cKMHgwODcgIDAgZGMgIDAgICA4ICAwIHIgIC4gLiAgIDMgIDMgIDIgIDAgLiAgLiAgMCAg
OCAgMCAgMCAgMCAgMCAgMCAgMCAwIE5vbmUKMHgwODggIDAgZGMgIDAgICA4ICAwIHIgIC4gLiAg
IDMgIDMgIDIgIDAgLiAgLiAgMCAgOCAgMCAxNiAxNiAxNiAgMCAgMCAwIFNsb3cKMHgwODkgIDAg
ZGMgIDAgICA4ICAwIHIgIHkgLiAgIDMgIDMgIDIgIDAgLiAgLiAgMCAgOCAgMCAgMCAgMCAgMCAg
MCAgMCAwIE5vbmUKMHgwOGEgIDAgZGMgIDAgICA4ICAwIHIgIHkgLiAgIDMgIDMgIDIgIDAgLiAg
LiAgMCAgOCAgMCAxNiAxNiAxNiAgMCAgMCAwIFNsb3cKMHgwOGIgIDAgZGMgIDAgICA4ICAwIHIg
IC4gLiAgIDMgIDMgIDIgIDAgLiAgLiAgMCAgOCAgOCAgMCAgMCAgMCAgMCAgMCAwIE5vbmUKMHgw
OGMgIDAgZGMgIDAgICA4ICAwIHIgIC4gLiAgIDMgIDMgIDIgIDAgLiAgLiAgMCAgOCAgOCAxNiAx
NiAxNiAgMCAgMCAwIFNsb3cKMHgwOGQgIDAgZGMgIDAgICA4ICAwIHIgIHkgLiAgIDMgIDMgIDIg
IDAgLiAgLiAgMCAgOCAgOCAgMCAgMCAgMCAgMCAgMCAwIE5vbmUKMHgwOGUgIDAgZGMgIDAgICA4
ICAwIHIgIHkgLiAgIDMgIDMgIDIgIDAgLiAgLiAgMCAgOCAgOCAxNiAxNiAxNiAgMCAgMCAwIFNs
b3cKMHgwOGYgIDAgZGMgIDAgIDE2ICAwIHIgIC4gLiAgIDUgIDYgIDUgIDAgLiAgLiAgMCAgMCAg
MCAgMCAgMCAgMCAgMCAgMCAwIE5vbmUKMHgwOTAgIDAgZGMgIDAgIDE2ICAwIHIgIC4gLiAgIDUg
IDYgIDUgIDAgLiAgLiAgMCAgMCAgMCAxNiAxNiAxNiAgMCAgMCAwIFNsb3cKMHgwOTEgIDAgZGMg
IDAgIDE2ICAwIHIgIHkgLiAgIDUgIDYgIDUgIDAgLiAgLiAgMCAgMCAgMCAgMCAgMCAgMCAgMCAg
MCAwIE5vbmUKMHgwOTIgIDAgZGMgIDAgIDE2ICAwIHIgIHkgLiAgIDUgIDYgIDUgIDAgLiAgLiAg
MCAgMCAgMCAxNiAxNiAxNiAgMCAgMCAwIFNsb3cKMHgwOTMgIDAgZGMgIDAgIDE2ICAwIHIgIC4g
LiAgIDUgIDYgIDUgIDAgLiAgLiAgMCAgMCAgOCAgMCAgMCAgMCAgMCAgMCAwIE5vbmUKMHgwOTQg
IDAgZGMgIDAgIDE2ICAwIHIgIC4gLiAgIDUgIDYgIDUgIDAgLiAgLiAgMCAgMCAgOCAxNiAxNiAx
NiAgMCAgMCAwIFNsb3cKMHgwOTUgIDAgZGMgIDAgIDE2ICAwIHIgIHkgLiAgIDUgIDYgIDUgIDAg
LiAgLiAgMCAgMCAgOCAgMCAgMCAgMCAgMCAgMCAwIE5vbmUKMHgwOTYgIDAgZGMgIDAgIDE2ICAw
IHIgIHkgLiAgIDUgIDYgIDUgIDAgLiAgLiAgMCAgMCAgOCAxNiAxNiAxNiAgMCAgMCAwIFNsb3cK
MHgwOTcgIDAgZGMgIDAgIDE2ICAwIHIgIC4gLiAgIDUgIDYgIDUgIDAgLiAgLiAgMCAxNiAgMCAg
MCAgMCAgMCAgMCAgMCAwIE5vbmUKMHgwOTggIDAgZGMgIDAgIDE2ICAwIHIgIC4gLiAgIDUgIDYg
IDUgIDAgLiAgLiAgMCAxNiAgMCAxNiAxNiAxNiAgMCAgMCAwIFNsb3cKMHgwOTkgIDAgZGMgIDAg
IDE2ICAwIHIgIHkgLiAgIDUgIDYgIDUgIDAgLiAgLiAgMCAxNiAgMCAgMCAgMCAgMCAgMCAgMCAw
IE5vbmUKMHgwOWEgIDAgZGMgIDAgIDE2ICAwIHIgIHkgLiAgIDUgIDYgIDUgIDAgLiAgLiAgMCAx
NiAgMCAxNiAxNiAxNiAgMCAgMCAwIFNsb3cKMHgwOWIgIDAgZGMgIDAgIDE2ICAwIHIgIC4gLiAg
IDUgIDYgIDUgIDAgLiAgLiAgMCAxNiAgOCAgMCAgMCAgMCAgMCAgMCAwIE5vbmUKMHgwOWMgIDAg
ZGMgIDAgIDE2ICAwIHIgIC4gLiAgIDUgIDYgIDUgIDAgLiAgLiAgMCAxNiAgOCAxNiAxNiAxNiAg
MCAgMCAwIFNsb3cKMHgwOWQgIDAgZGMgIDAgIDE2ICAwIHIgIHkgLiAgIDUgIDYgIDUgIDAgLiAg
LiAgMCAxNiAgOCAgMCAgMCAgMCAgMCAgMCAwIE5vbmUKMHgwOWUgIDAgZGMgIDAgIDE2ICAwIHIg
IHkgLiAgIDUgIDYgIDUgIDAgLiAgLiAgMCAxNiAgOCAxNiAxNiAxNiAgMCAgMCAwIFNsb3cKMHgw
OWYgMjQgZGMgIDAgIDI0ICAwIHIgIC4gLiAgIDggIDggIDggIDAgLiAgLiAgMCAgMCAgMCAgMCAg
MCAgMCAgMCAgMCAwIE5vbmUKMHgwYTAgMjQgZGMgIDAgIDI0ICAwIHIgIC4gLiAgIDggIDggIDgg
IDAgLiAgLiAgMCAgMCAgMCAxNiAxNiAxNiAgMCAgMCAwIFNsb3cKMHgwYTEgMjQgZGMgIDAgIDI0
ICAwIHIgIHkgLiAgIDggIDggIDggIDAgLiAgLiAgMCAgMCAgMCAgMCAgMCAgMCAgMCAgMCAwIE5v
bmUKMHgwYTIgMjQgZGMgIDAgIDI0ICAwIHIgIHkgLiAgIDggIDggIDggIDAgLiAgLiAgMCAgMCAg
MCAxNiAxNiAxNiAgMCAgMCAwIFNsb3cKMHgwYTMgMjQgZGMgIDAgIDI0ICAwIHIgIC4gLiAgIDgg
IDggIDggIDAgLiAgLiAgMCAgMCAgOCAgMCAgMCAgMCAgMCAgMCAwIE5vbmUKMHgwYTQgMjQgZGMg
IDAgIDI0ICAwIHIgIC4gLiAgIDggIDggIDggIDAgLiAgLiAgMCAgMCAgOCAxNiAxNiAxNiAgMCAg
MCAwIFNsb3cKMHgwYTUgMjQgZGMgIDAgIDI0ICAwIHIgIHkgLiAgIDggIDggIDggIDAgLiAgLiAg
MCAgMCAgOCAgMCAgMCAgMCAgMCAgMCAwIE5vbmUKMHgwYTYgMjQgZGMgIDAgIDI0ICAwIHIgIHkg
LiAgIDggIDggIDggIDAgLiAgLiAgMCAgMCAgOCAxNiAxNiAxNiAgMCAgMCAwIFNsb3cKMHgwYTcg
MjQgZGMgIDAgIDI0ICAwIHIgIC4gLiAgIDggIDggIDggIDAgLiAgLiAgMCAyNCAgMCAgMCAgMCAg
MCAgMCAgMCAwIE5vbmUKMHgwYTggMjQgZGMgIDAgIDI0ICAwIHIgIC4gLiAgIDggIDggIDggIDAg
LiAgLiAgMCAyNCAgMCAxNiAxNiAxNiAgMCAgMCAwIFNsb3cKMHgwYTkgMjQgZGMgIDAgIDI0ICAw
IHIgIHkgLiAgIDggIDggIDggIDAgLiAgLiAgMCAyNCAgMCAgMCAgMCAgMCAgMCAgMCAwIE5vbmUK
MHgwYWEgMjQgZGMgIDAgIDI0ICAwIHIgIHkgLiAgIDggIDggIDggIDAgLiAgLiAgMCAyNCAgMCAx
NiAxNiAxNiAgMCAgMCAwIFNsb3cKMHgwYWIgMjQgZGMgIDAgIDI0ICAwIHIgIC4gLiAgIDggIDgg
IDggIDAgLiAgLiAgMCAyNCAgOCAgMCAgMCAgMCAgMCAgMCAwIE5vbmUKMHgwYWMgMjQgZGMgIDAg
IDI0ICAwIHIgIC4gLiAgIDggIDggIDggIDAgLiAgLiAgMCAyNCAgOCAxNiAxNiAxNiAgMCAgMCAw
IFNsb3cKMHgwYWQgMjQgZGMgIDAgIDI0ICAwIHIgIHkgLiAgIDggIDggIDggIDAgLiAgLiAgMCAy
NCAgOCAgMCAgMCAgMCAgMCAgMCAwIE5vbmUKMHgwYWUgMjQgZGMgIDAgIDI0ICAwIHIgIHkgLiAg
IDggIDggIDggIDAgLiAgLiAgMCAyNCAgOCAxNiAxNiAxNiAgMCAgMCAwIFNsb3cKMHgwYWYgMjQg
ZGMgIDAgIDMyICAwIHIgIC4gLiAgIDggIDggIDggIDggLiAgLiAgMCAgMCAgMCAgMCAgMCAgMCAg
MCAgMCAwIE5vbmUKMHgwYjAgMjQgZGMgIDAgIDMyICAwIHIgIC4gLiAgIDggIDggIDggIDggLiAg
LiAgMCAgMCAgMCAxNiAxNiAxNiAxNiAgMCAwIFNsb3cKMHgwYjEgMjQgZGMgIDAgIDMyICAwIHIg
IHkgLiAgIDggIDggIDggIDggLiAgLiAgMCAgMCAgMCAgMCAgMCAgMCAgMCAgMCAwIE5vbmUKMHgw
YjIgMjQgZGMgIDAgIDMyICAwIHIgIHkgLiAgIDggIDggIDggIDggLiAgLiAgMCAgMCAgMCAxNiAx
NiAxNiAxNiAgMCAwIFNsb3cKMHgwYjMgMjQgZGMgIDAgIDMyICAwIHIgIC4gLiAgIDggIDggIDgg
IDggLiAgLiAgMCAgMCAgOCAgMCAgMCAgMCAgMCAgMCAwIE5vbmUKMHgwYjQgMjQgZGMgIDAgIDMy
ICAwIHIgIC4gLiAgIDggIDggIDggIDggLiAgLiAgMCAgMCAgOCAxNiAxNiAxNiAxNiAgMCAwIFNs
b3cKMHgwYjUgMjQgZGMgIDAgIDMyICAwIHIgIHkgLiAgIDggIDggIDggIDggLiAgLiAgMCAgMCAg
OCAgMCAgMCAgMCAgMCAgMCAwIE5vbmUKMHgwYjYgMjQgZGMgIDAgIDMyICAwIHIgIHkgLiAgIDgg
IDggIDggIDggLiAgLiAgMCAgMCAgOCAxNiAxNiAxNiAxNiAgMCAwIFNsb3cKMHgwYjcgMjQgZGMg
IDAgIDMyICAwIHIgIC4gLiAgIDggIDggIDggIDggLiAgLiAgMCAyNCAgMCAgMCAgMCAgMCAgMCAg
MCAwIE5vbmUKMHgwYjggMjQgZGMgIDAgIDMyICAwIHIgIC4gLiAgIDggIDggIDggIDggLiAgLiAg
MCAyNCAgMCAxNiAxNiAxNiAxNiAgMCAwIFNsb3cKMHgwYjkgMjQgZGMgIDAgIDMyICAwIHIgIHkg
LiAgIDggIDggIDggIDggLiAgLiAgMCAyNCAgMCAgMCAgMCAgMCAgMCAgMCAwIE5vbmUKMHgwYmEg
MjQgZGMgIDAgIDMyICAwIHIgIHkgLiAgIDggIDggIDggIDggLiAgLiAgMCAyNCAgMCAxNiAxNiAx
NiAxNiAgMCAwIFNsb3cKMHgwYmIgMjQgZGMgIDAgIDMyICAwIHIgIC4gLiAgIDggIDggIDggIDgg
LiAgLiAgMCAyNCAgOCAgMCAgMCAgMCAgMCAgMCAwIE5vbmUKMHgwYmMgMjQgZGMgIDAgIDMyICAw
IHIgIC4gLiAgIDggIDggIDggIDggLiAgLiAgMCAyNCAgOCAxNiAxNiAxNiAxNiAgMCAwIFNsb3cK
MHgwYmQgMjQgZGMgIDAgIDMyICAwIHIgIHkgLiAgIDggIDggIDggIDggLiAgLiAgMCAyNCAgOCAg
MCAgMCAgMCAgMCAgMCAwIE5vbmUKMHgwYmUgMjQgZGMgIDAgIDMyICAwIHIgIHkgLiAgIDggIDgg
IDggIDggLiAgLiAgMCAyNCAgOCAxNiAxNiAxNiAxNiAgMCAwIFNsb3cKMHgwYmUgIDAgdGMgIDAg
MTI4ICAwICAgIHkgLiAgMzIgMzIgMzIgMzIgLiAgLiAgMCAyNCAgMCAgMCAgMCAgMCAgMCAgMCAw
IE5vbmUKMHgwYmUgIDAgdGMgIDAgMTI4ICAwICAgIC4gLiAgMzIgMzIgMzIgMzIgLiAgLiAgMCAy
NCAgMCAgMCAgMCAgMCAgMCAgMCAwIE5vbmUKMHgwYmUgIDAgdGMgIDAgIDY0ICAwICAgIHkgLiAg
MTYgMTYgMTYgMTYgLiAgLiAgMCAyNCAgMCAgMCAgMCAgMCAgMCAgMCAwIE5vbmUKMHgwYmUgIDAg
dGMgIDAgIDY0ICAwICAgIC4gLiAgMTYgMTYgMTYgMTYgLiAgLiAgMCAyNCAgMCAgMCAgMCAgMCAg
MCAgMCAwIE5vbmUKMHgwYmUgIDAgdGMgIDAgIDMyICAwICAgIHkgLiAgMTEgMTEgMTAgIDAgLiAg
LiAgMCAyNCAgMCAgMCAgMCAgMCAgMCAgMCAwIE5vbmUKMHgwYmUgIDAgdGMgIDAgIDMyICAwICAg
IC4gLiAgMTEgMTEgMTAgIDAgLiAgLiAgMCAyNCAgMCAgMCAgMCAgMCAgMCAgMCAwIE5vbmUKCg==
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="0"
              isprivate="0"
          >
            <attachid>119184</attachid>
            <date>2011-12-14 02:24:52 -0800</date>
            <delta_ts>2011-12-14 02:24:52 -0800</delta_ts>
            <desc>xvfb glxinfo run log from the bot</desc>
            <filename>1.txt</filename>
            <type>text/plain</type>
            <size>19063</size>
            <attacher name="Csaba Osztrogonác">ossy</attacher>
            
              <data encoding="base64">bmFtZSBvZiBkaXNwbGF5OiA6MTAwLjAKZGlzcGxheTogOjEwMCAgc2NyZWVuOiAwCmRpcmVjdCBy
ZW5kZXJpbmc6IFllcwpzZXJ2ZXIgZ2x4IHZlbmRvciBzdHJpbmc6IFNHSQpzZXJ2ZXIgZ2x4IHZl
cnNpb24gc3RyaW5nOiAxLjIKc2VydmVyIGdseCBleHRlbnNpb25zOgogICAgR0xYX0FSQl9tdWx0
aXNhbXBsZSwgR0xYX0VYVF92aXN1YWxfaW5mbywgR0xYX0VYVF92aXN1YWxfcmF0aW5nLCAKICAg
IEdMWF9FWFRfaW1wb3J0X2NvbnRleHQsIEdMWF9FWFRfdGV4dHVyZV9mcm9tX3BpeG1hcCwgR0xY
X09NTF9zd2FwX21ldGhvZCwgCiAgICBHTFhfU0dJX21ha2VfY3VycmVudF9yZWFkLCBHTFhfU0dJ
U19tdWx0aXNhbXBsZSwgR0xYX1NHSVhfaHlwZXJwaXBlLCAKICAgIEdMWF9TR0lYX3N3YXBfYmFy
cmllciwgR0xYX1NHSVhfZmJjb25maWcsIEdMWF9TR0lYX3BidWZmZXIsIAogICAgR0xYX01FU0Ff
Y29weV9zdWJfYnVmZmVyCmNsaWVudCBnbHggdmVuZG9yIHN0cmluZzogTWVzYSBQcm9qZWN0IGFu
ZCBTR0kKY2xpZW50IGdseCB2ZXJzaW9uIHN0cmluZzogMS40CmNsaWVudCBnbHggZXh0ZW5zaW9u
czoKICAgIEdMWF9BUkJfZ2V0X3Byb2NfYWRkcmVzcywgR0xYX0FSQl9tdWx0aXNhbXBsZSwgR0xY
X0VYVF9pbXBvcnRfY29udGV4dCwgCiAgICBHTFhfRVhUX3Zpc3VhbF9pbmZvLCBHTFhfRVhUX3Zp
c3VhbF9yYXRpbmcsIEdMWF9NRVNBX2FsbG9jYXRlX21lbW9yeSwgCiAgICBHTFhfTUVTQV9jb3B5
X3N1Yl9idWZmZXIsIEdMWF9NRVNBX3N3YXBfY29udHJvbCwgCiAgICBHTFhfTUVTQV9zd2FwX2Zy
YW1lX3VzYWdlLCBHTFhfT01MX3N3YXBfbWV0aG9kLCBHTFhfT01MX3N5bmNfY29udHJvbCwgCiAg
ICBHTFhfU0dJX21ha2VfY3VycmVudF9yZWFkLCBHTFhfU0dJX3N3YXBfY29udHJvbCwgR0xYX1NH
SV92aWRlb19zeW5jLCAKICAgIEdMWF9TR0lTX211bHRpc2FtcGxlLCBHTFhfU0dJWF9mYmNvbmZp
ZywgR0xYX1NHSVhfcGJ1ZmZlciwgCiAgICBHTFhfU0dJWF92aXN1YWxfc2VsZWN0X2dyb3VwLCBH
TFhfRVhUX3RleHR1cmVfZnJvbV9waXhtYXAKR0xYIHZlcnNpb246IDEuMgpHTFggZXh0ZW5zaW9u
czoKICAgIEdMWF9BUkJfZ2V0X3Byb2NfYWRkcmVzcywgR0xYX0FSQl9tdWx0aXNhbXBsZSwgR0xY
X0VYVF9pbXBvcnRfY29udGV4dCwgCiAgICBHTFhfRVhUX3Zpc3VhbF9pbmZvLCBHTFhfRVhUX3Zp
c3VhbF9yYXRpbmcsIEdMWF9PTUxfc3dhcF9tZXRob2QsIAogICAgR0xYX1NHSVNfbXVsdGlzYW1w
bGUsIEdMWF9TR0lYX2ZiY29uZmlnLCBHTFhfU0dJWF9wYnVmZmVyCk9wZW5HTCB2ZW5kb3Igc3Ry
aW5nOiBNZXNhIFByb2plY3QKT3BlbkdMIHJlbmRlcmVyIHN0cmluZzogU29mdHdhcmUgUmFzdGVy
aXplcgpPcGVuR0wgdmVyc2lvbiBzdHJpbmc6IDIuMSBNZXNhIDcuNy4xCk9wZW5HTCBzaGFkaW5n
IGxhbmd1YWdlIHZlcnNpb24gc3RyaW5nOiAxLjIwCk9wZW5HTCBleHRlbnNpb25zOgogICAgR0xf
RVhUX2NvbXBpbGVkX3ZlcnRleF9hcnJheSwgR0xfRVhUX3RleHR1cmVfZW52X2FkZCwgR0xfQVJC
X2NvcHlfYnVmZmVyLCAKICAgIEdMX0FSQl9kZXB0aF90ZXh0dXJlLCBHTF9BUkJfZGVwdGhfY2xh
bXAsIEdMX0FSQl9kcmF3X2J1ZmZlcnMsIAogICAgR0xfQVJCX2RyYXdfZWxlbWVudHNfYmFzZV92
ZXJ0ZXgsIEdMX0FSQl9mcmFnbWVudF9wcm9ncmFtLCAKICAgIEdMX0FSQl9mcmFnbWVudF9wcm9n
cmFtX3NoYWRvdywgR0xfQVJCX2ZyYWdtZW50X3NoYWRlciwgCiAgICBHTF9BUkJfZnJhbWVidWZm
ZXJfb2JqZWN0LCBHTF9BUkJfaGFsZl9mbG9hdF9waXhlbCwgR0xfQVJCX2ltYWdpbmcsIAogICAg
R0xfQVJCX21hcF9idWZmZXJfcmFuZ2UsIEdMX0FSQl9tdWx0aXNhbXBsZSwgR0xfQVJCX211bHRp
dGV4dHVyZSwgCiAgICBHTF9BUkJfb2NjbHVzaW9uX3F1ZXJ5LCBHTF9BUkJfcGl4ZWxfYnVmZmVy
X29iamVjdCwgCiAgICBHTF9BUkJfcG9pbnRfcGFyYW1ldGVycywgR0xfQVJCX3BvaW50X3Nwcml0
ZSwgR0xfQVJCX3Byb3Zva2luZ192ZXJ0ZXgsIAogICAgR0xfQVJCX3NoYWRlcl9vYmplY3RzLCBH
TF9BUkJfc2hhZGluZ19sYW5ndWFnZV8xMDAsIAogICAgR0xfQVJCX3NoYWRpbmdfbGFuZ3VhZ2Vf
MTIwLCBHTF9BUkJfc2hhZG93LCBHTF9BUkJfc2hhZG93X2FtYmllbnQsIAogICAgR0xfQVJCX3N5
bmMsIEdMX0FSQl90ZXh0dXJlX2JvcmRlcl9jbGFtcCwgR0xfQVJCX3RleHR1cmVfY29tcHJlc3Np
b24sIAogICAgR0xfQVJCX3RleHR1cmVfY3ViZV9tYXAsIEdMX0FSQl90ZXh0dXJlX2Vudl9hZGQs
IAogICAgR0xfQVJCX3RleHR1cmVfZW52X2NvbWJpbmUsIEdMX0FSQl90ZXh0dXJlX2Vudl9jcm9z
c2JhciwgCiAgICBHTF9BUkJfdGV4dHVyZV9lbnZfZG90MywgR0xfQVJCX3RleHR1cmVfbWlycm9y
ZWRfcmVwZWF0LCAKICAgIEdMX0FSQl90ZXh0dXJlX25vbl9wb3dlcl9vZl90d28sIEdMX0FSQl90
ZXh0dXJlX3JlY3RhbmdsZSwgCiAgICBHTF9BUkJfdHJhbnNwb3NlX21hdHJpeCwgR0xfQVJCX3Zl
cnRleF9hcnJheV9iZ3JhLCAKICAgIEdMX0FSQl92ZXJ0ZXhfYXJyYXlfb2JqZWN0LCBHTF9BUkJf
dmVydGV4X2J1ZmZlcl9vYmplY3QsIAogICAgR0xfQVJCX3ZlcnRleF9wcm9ncmFtLCBHTF9BUkJf
dmVydGV4X3NoYWRlciwgR0xfQVJCX3dpbmRvd19wb3MsIAogICAgR0xfRVhUX2FiZ3IsIEdMX0VY
VF9iZ3JhLCBHTF9FWFRfYmxlbmRfY29sb3IsIAogICAgR0xfRVhUX2JsZW5kX2VxdWF0aW9uX3Nl
cGFyYXRlLCBHTF9FWFRfYmxlbmRfZnVuY19zZXBhcmF0ZSwgCiAgICBHTF9FWFRfYmxlbmRfbG9n
aWNfb3AsIEdMX0VYVF9ibGVuZF9taW5tYXgsIEdMX0VYVF9ibGVuZF9zdWJ0cmFjdCwgCiAgICBH
TF9FWFRfY29udm9sdXRpb24sIEdMX0VYVF9jb3B5X3RleHR1cmUsIEdMX0VYVF9kZXB0aF9ib3Vu
ZHNfdGVzdCwgCiAgICBHTF9FWFRfZHJhd19yYW5nZV9lbGVtZW50cywgR0xfRVhUX2ZyYW1lYnVm
ZmVyX2JsaXQsIAogICAgR0xfRVhUX2ZyYW1lYnVmZmVyX211bHRpc2FtcGxlLCBHTF9FWFRfZnJh
bWVidWZmZXJfb2JqZWN0LCAKICAgIEdMX0VYVF9mb2dfY29vcmQsIEdMX0VYVF9ncHVfcHJvZ3Jh
bV9wYXJhbWV0ZXJzLCBHTF9FWFRfaGlzdG9ncmFtLCAKICAgIEdMX0VYVF9tdWx0aV9kcmF3X2Fy
cmF5cywgR0xfRVhUX3BhY2tlZF9kZXB0aF9zdGVuY2lsLCAKICAgIEdMX0VYVF9wYWNrZWRfcGl4
ZWxzLCBHTF9FWFRfcGFsZXR0ZWRfdGV4dHVyZSwgR0xfRVhUX3BpeGVsX2J1ZmZlcl9vYmplY3Qs
IAogICAgR0xfRVhUX3BvaW50X3BhcmFtZXRlcnMsIEdMX0VYVF9wb2x5Z29uX29mZnNldCwgR0xf
RVhUX3Byb3Zva2luZ192ZXJ0ZXgsIAogICAgR0xfRVhUX3Jlc2NhbGVfbm9ybWFsLCBHTF9FWFRf
c2Vjb25kYXJ5X2NvbG9yLCAKICAgIEdMX0VYVF9zZXBhcmF0ZV9zcGVjdWxhcl9jb2xvciwgR0xf
RVhUX3NoYWRvd19mdW5jcywgCiAgICBHTF9FWFRfc2hhcmVkX3RleHR1cmVfcGFsZXR0ZSwgR0xf
RVhUX3N0ZW5jaWxfdHdvX3NpZGUsIAogICAgR0xfRVhUX3N0ZW5jaWxfd3JhcCwgR0xfRVhUX3N1
YnRleHR1cmUsIEdMX0VYVF90ZXh0dXJlLCBHTF9FWFRfdGV4dHVyZTNELCAKICAgIEdMX0VYVF90
ZXh0dXJlX2N1YmVfbWFwLCBHTF9FWFRfdGV4dHVyZV9lZGdlX2NsYW1wLCAKICAgIEdMX0VYVF90
ZXh0dXJlX2Vudl9jb21iaW5lLCBHTF9FWFRfdGV4dHVyZV9lbnZfZG90MywgCiAgICBHTF9FWFRf
dGV4dHVyZV9sb2RfYmlhcywgR0xfRVhUX3RleHR1cmVfbWlycm9yX2NsYW1wLCAKICAgIEdMX0VY
VF90ZXh0dXJlX29iamVjdCwgR0xfRVhUX3RleHR1cmVfcmVjdGFuZ2xlLCBHTF9FWFRfdGV4dHVy
ZV9zUkdCLCAKICAgIEdMX0VYVF90ZXh0dXJlX3N3aXp6bGUsIEdMX0VYVF92ZXJ0ZXhfYXJyYXks
IEdMX0VYVF92ZXJ0ZXhfYXJyYXlfYmdyYSwgCiAgICBHTF8zREZYX3RleHR1cmVfY29tcHJlc3Np
b25fRlhUMSwgR0xfQVBQTEVfcGFja2VkX3BpeGVscywgCiAgICBHTF9BUFBMRV92ZXJ0ZXhfYXJy
YXlfb2JqZWN0LCBHTF9BVElfYmxlbmRfZXF1YXRpb25fc2VwYXJhdGUsIAogICAgR0xfQVRJX2Vu
dm1hcF9idW1wbWFwLCBHTF9BVElfdGV4dHVyZV9lbnZfY29tYmluZTMsIAogICAgR0xfQVRJX3Rl
eHR1cmVfbWlycm9yX29uY2UsIEdMX0FUSV9mcmFnbWVudF9zaGFkZXIsIAogICAgR0xfQVRJX3Nl
cGFyYXRlX3N0ZW5jaWwsIEdMX0lCTV9tdWx0aW1vZGVfZHJhd19hcnJheXMsIAogICAgR0xfSUJN
X3Jhc3RlcnBvc19jbGlwLCBHTF9JQk1fdGV4dHVyZV9taXJyb3JlZF9yZXBlYXQsIAogICAgR0xf
SU5HUl9ibGVuZF9mdW5jX3NlcGFyYXRlLCBHTF9NRVNBX3BhY2tfaW52ZXJ0LCBHTF9NRVNBX3Jl
c2l6ZV9idWZmZXJzLCAKICAgIEdMX01FU0FfdGV4dHVyZV9hcnJheSwgR0xfTUVTQV95Y2Jjcl90
ZXh0dXJlLCBHTF9NRVNBX3dpbmRvd19wb3MsIAogICAgR0xfTlZfYmxlbmRfc3F1YXJlLCBHTF9O
Vl9kZXB0aF9jbGFtcCwgR0xfTlZfZnJhZ21lbnRfcHJvZ3JhbSwgCiAgICBHTF9OVl9mcmFnbWVu
dF9wcm9ncmFtX29wdGlvbiwgR0xfTlZfbGlnaHRfbWF4X2V4cG9uZW50LCAKICAgIEdMX05WX3Bh
Y2tlZF9kZXB0aF9zdGVuY2lsLCBHTF9OVl9wb2ludF9zcHJpdGUsIAogICAgR0xfTlZfdGV4dHVy
ZV9lbnZfY29tYmluZTQsIEdMX05WX3RleHR1cmVfcmVjdGFuZ2xlLCAKICAgIEdMX05WX3RleGdl
bl9yZWZsZWN0aW9uLCBHTF9OVl92ZXJ0ZXhfcHJvZ3JhbSwgR0xfTlZfdmVydGV4X3Byb2dyYW0x
XzEsIAogICAgR0xfT0VTX3JlYWRfZm9ybWF0LCBHTF9TR0lfY29sb3JfbWF0cml4LCBHTF9TR0lf
Y29sb3JfdGFibGUsIAogICAgR0xfU0dJX3RleHR1cmVfY29sb3JfdGFibGUsIEdMX1NHSVNfZ2Vu
ZXJhdGVfbWlwbWFwLCAKICAgIEdMX1NHSVNfdGV4dHVyZV9ib3JkZXJfY2xhbXAsIEdMX1NHSVNf
dGV4dHVyZV9lZGdlX2NsYW1wLCAKICAgIEdMX1NHSVNfdGV4dHVyZV9sb2QsIEdMX1NVTl9tdWx0
aV9kcmF3X2FycmF5cwoKNjQgR0xYIFZpc3VhbHMKICAgdmlzdWFsICB4ICBiZiBsdiByZyBkIHN0
IGNvbG9yYnVmZmVyIGF4IGRwIHN0IGFjY3VtYnVmZmVyICBtcyAgY2F2CiBpZCBkZXAgY2wgc3Ag
c3ogbCAgY2kgYiBybyAgciAgZyAgYiAgYSBiZiB0aCBjbCAgciAgZyAgYiAgYSBucyBiIGVhdAot
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tCjB4MjEgMjQgdGMgIDAgMzIgIDAgciAgeSAgLiAgOCAgOCAgOCAgOCAgMCAy
NCAgOCAgMCAgMCAgMCAgMCAgMCAwIE5vbmUKMHgyMiAyNCBkYyAgMCAzMiAgMCByICB5ICAuICA4
ICA4ICA4ICA4ICAwIDI0ICA4ICAwICAwICAwICAwICAwIDAgTm9uZQoweGJmIDI0IHRjICAwIDI0
ICAwIHIgIC4gIC4gIDggIDggIDggIDAgIDAgIDAgIDAgIDAgIDAgIDAgIDAgIDAgMCBOb25lCjB4
YzAgMjQgdGMgIDAgMjQgIDAgciAgLiAgLiAgOCAgOCAgOCAgMCAgMCAgMCAgMCAxNiAxNiAxNiAg
MCAgMCAwIFNsb3cKMHhjMSAyNCB0YyAgMCAyNCAgMCByICB5ICAuICA4ICA4ICA4ICAwICAwICAw
ICAwICAwICAwICAwICAwICAwIDAgTm9uZQoweGMyIDI0IHRjICAwIDI0ICAwIHIgIHkgIC4gIDgg
IDggIDggIDAgIDAgIDAgIDAgMTYgMTYgMTYgIDAgIDAgMCBTbG93CjB4YzMgMjQgdGMgIDAgMjQg
IDAgciAgLiAgLiAgOCAgOCAgOCAgMCAgMCAgMCAgOCAgMCAgMCAgMCAgMCAgMCAwIE5vbmUKMHhj
NCAyNCB0YyAgMCAyNCAgMCByICAuICAuICA4ICA4ICA4ICAwICAwICAwICA4IDE2IDE2IDE2ICAw
ICAwIDAgU2xvdwoweGM1IDI0IHRjICAwIDI0ICAwIHIgIHkgIC4gIDggIDggIDggIDAgIDAgIDAg
IDggIDAgIDAgIDAgIDAgIDAgMCBOb25lCjB4YzYgMjQgdGMgIDAgMjQgIDAgciAgeSAgLiAgOCAg
OCAgOCAgMCAgMCAgMCAgOCAxNiAxNiAxNiAgMCAgMCAwIFNsb3cKMHhjNyAyNCB0YyAgMCAyNCAg
MCByICAuICAuICA4ICA4ICA4ICAwICAwIDI0ICAwICAwICAwICAwICAwICAwIDAgTm9uZQoweGM4
IDI0IHRjICAwIDI0ICAwIHIgIC4gIC4gIDggIDggIDggIDAgIDAgMjQgIDAgMTYgMTYgMTYgIDAg
IDAgMCBTbG93CjB4YzkgMjQgdGMgIDAgMjQgIDAgciAgeSAgLiAgOCAgOCAgOCAgMCAgMCAyNCAg
MCAgMCAgMCAgMCAgMCAgMCAwIE5vbmUKMHhjYSAyNCB0YyAgMCAyNCAgMCByICB5ICAuICA4ICA4
ICA4ICAwICAwIDI0ICAwIDE2IDE2IDE2ICAwICAwIDAgU2xvdwoweGNiIDI0IHRjICAwIDI0ICAw
IHIgIC4gIC4gIDggIDggIDggIDAgIDAgMjQgIDggIDAgIDAgIDAgIDAgIDAgMCBOb25lCjB4Y2Mg
MjQgdGMgIDAgMjQgIDAgciAgLiAgLiAgOCAgOCAgOCAgMCAgMCAyNCAgOCAxNiAxNiAxNiAgMCAg
MCAwIFNsb3cKMHhjZCAyNCB0YyAgMCAyNCAgMCByICB5ICAuICA4ICA4ICA4ICAwICAwIDI0ICA4
ICAwICAwICAwICAwICAwIDAgTm9uZQoweGNlIDI0IHRjICAwIDI0ICAwIHIgIHkgIC4gIDggIDgg
IDggIDAgIDAgMjQgIDggMTYgMTYgMTYgIDAgIDAgMCBTbG93CjB4Y2YgMjQgdGMgIDAgMzIgIDAg
ciAgLiAgLiAgOCAgOCAgOCAgOCAgMCAgMCAgMCAgMCAgMCAgMCAgMCAgMCAwIE5vbmUKMHhkMCAy
NCB0YyAgMCAzMiAgMCByICAuICAuICA4ICA4ICA4ICA4ICAwICAwICAwIDE2IDE2IDE2IDE2ICAw
IDAgU2xvdwoweGQxIDI0IHRjICAwIDMyICAwIHIgIHkgIC4gIDggIDggIDggIDggIDAgIDAgIDAg
IDAgIDAgIDAgIDAgIDAgMCBOb25lCjB4ZDIgMjQgdGMgIDAgMzIgIDAgciAgeSAgLiAgOCAgOCAg
OCAgOCAgMCAgMCAgMCAxNiAxNiAxNiAxNiAgMCAwIFNsb3cKMHhkMyAyNCB0YyAgMCAzMiAgMCBy
ICAuICAuICA4ICA4ICA4ICA4ICAwICAwICA4ICAwICAwICAwICAwICAwIDAgTm9uZQoweGQ0IDI0
IHRjICAwIDMyICAwIHIgIC4gIC4gIDggIDggIDggIDggIDAgIDAgIDggMTYgMTYgMTYgMTYgIDAg
MCBTbG93CjB4ZDUgMjQgdGMgIDAgMzIgIDAgciAgeSAgLiAgOCAgOCAgOCAgOCAgMCAgMCAgOCAg
MCAgMCAgMCAgMCAgMCAwIE5vbmUKMHhkNiAyNCB0YyAgMCAzMiAgMCByICB5ICAuICA4ICA4ICA4
ICA4ICAwICAwICA4IDE2IDE2IDE2IDE2ICAwIDAgU2xvdwoweGQ3IDI0IHRjICAwIDMyICAwIHIg
IC4gIC4gIDggIDggIDggIDggIDAgMjQgIDAgIDAgIDAgIDAgIDAgIDAgMCBOb25lCjB4ZDggMjQg
dGMgIDAgMzIgIDAgciAgLiAgLiAgOCAgOCAgOCAgOCAgMCAyNCAgMCAxNiAxNiAxNiAxNiAgMCAw
IFNsb3cKMHhkOSAyNCB0YyAgMCAzMiAgMCByICB5ICAuICA4ICA4ICA4ICA4ICAwIDI0ICAwIDE2
IDE2IDE2IDE2ICAwIDAgU2xvdwoweGRhIDI0IHRjICAwIDMyICAwIHIgIC4gIC4gIDggIDggIDgg
IDggIDAgMjQgIDggIDAgIDAgIDAgIDAgIDAgMCBOb25lCjB4ZGIgMjQgdGMgIDAgMzIgIDAgciAg
LiAgLiAgOCAgOCAgOCAgOCAgMCAyNCAgOCAxNiAxNiAxNiAxNiAgMCAwIFNsb3cKMHhkYyAyNCB0
YyAgMCAzMiAgMCByICB5ICAuICA4ICA4ICA4ICA4ICAwIDI0ICA4IDE2IDE2IDE2IDE2ICAwIDAg
U2xvdwoweGRkIDI0IGRjICAwIDI0ICAwIHIgIC4gIC4gIDggIDggIDggIDAgIDAgIDAgIDAgIDAg
IDAgIDAgIDAgIDAgMCBOb25lCjB4ZGUgMjQgZGMgIDAgMjQgIDAgciAgLiAgLiAgOCAgOCAgOCAg
MCAgMCAgMCAgMCAxNiAxNiAxNiAgMCAgMCAwIFNsb3cKMHhkZiAyNCBkYyAgMCAyNCAgMCByICB5
ICAuICA4ICA4ICA4ICAwICAwICAwICAwICAwICAwICAwICAwICAwIDAgTm9uZQoweGUwIDI0IGRj
ICAwIDI0ICAwIHIgIHkgIC4gIDggIDggIDggIDAgIDAgIDAgIDAgMTYgMTYgMTYgIDAgIDAgMCBT
bG93CjB4ZTEgMjQgZGMgIDAgMjQgIDAgciAgLiAgLiAgOCAgOCAgOCAgMCAgMCAgMCAgOCAgMCAg
MCAgMCAgMCAgMCAwIE5vbmUKMHhlMiAyNCBkYyAgMCAyNCAgMCByICAuICAuICA4ICA4ICA4ICAw
ICAwICAwICA4IDE2IDE2IDE2ICAwICAwIDAgU2xvdwoweGUzIDI0IGRjICAwIDI0ICAwIHIgIHkg
IC4gIDggIDggIDggIDAgIDAgIDAgIDggIDAgIDAgIDAgIDAgIDAgMCBOb25lCjB4ZTQgMjQgZGMg
IDAgMjQgIDAgciAgeSAgLiAgOCAgOCAgOCAgMCAgMCAgMCAgOCAxNiAxNiAxNiAgMCAgMCAwIFNs
b3cKMHhlNSAyNCBkYyAgMCAyNCAgMCByICAuICAuICA4ICA4ICA4ICAwICAwIDI0ICAwICAwICAw
ICAwICAwICAwIDAgTm9uZQoweGU2IDI0IGRjICAwIDI0ICAwIHIgIC4gIC4gIDggIDggIDggIDAg
IDAgMjQgIDAgMTYgMTYgMTYgIDAgIDAgMCBTbG93CjB4ZTcgMjQgZGMgIDAgMjQgIDAgciAgeSAg
LiAgOCAgOCAgOCAgMCAgMCAyNCAgMCAgMCAgMCAgMCAgMCAgMCAwIE5vbmUKMHhlOCAyNCBkYyAg
MCAyNCAgMCByICB5ICAuICA4ICA4ICA4ICAwICAwIDI0ICAwIDE2IDE2IDE2ICAwICAwIDAgU2xv
dwoweGU5IDI0IGRjICAwIDI0ICAwIHIgIC4gIC4gIDggIDggIDggIDAgIDAgMjQgIDggIDAgIDAg
IDAgIDAgIDAgMCBOb25lCjB4ZWEgMjQgZGMgIDAgMjQgIDAgciAgLiAgLiAgOCAgOCAgOCAgMCAg
MCAyNCAgOCAxNiAxNiAxNiAgMCAgMCAwIFNsb3cKMHhlYiAyNCBkYyAgMCAyNCAgMCByICB5ICAu
ICA4ICA4ICA4ICAwICAwIDI0ICA4ICAwICAwICAwICAwICAwIDAgTm9uZQoweGVjIDI0IGRjICAw
IDI0ICAwIHIgIHkgIC4gIDggIDggIDggIDAgIDAgMjQgIDggMTYgMTYgMTYgIDAgIDAgMCBTbG93
CjB4ZWQgMjQgZGMgIDAgMzIgIDAgciAgLiAgLiAgOCAgOCAgOCAgOCAgMCAgMCAgMCAgMCAgMCAg
MCAgMCAgMCAwIE5vbmUKMHhlZSAyNCBkYyAgMCAzMiAgMCByICAuICAuICA4ICA4ICA4ICA4ICAw
ICAwICAwIDE2IDE2IDE2IDE2ICAwIDAgU2xvdwoweGVmIDI0IGRjICAwIDMyICAwIHIgIHkgIC4g
IDggIDggIDggIDggIDAgIDAgIDAgIDAgIDAgIDAgIDAgIDAgMCBOb25lCjB4ZjAgMjQgZGMgIDAg
MzIgIDAgciAgeSAgLiAgOCAgOCAgOCAgOCAgMCAgMCAgMCAxNiAxNiAxNiAxNiAgMCAwIFNsb3cK
MHhmMSAyNCBkYyAgMCAzMiAgMCByICAuICAuICA4ICA4ICA4ICA4ICAwICAwICA4ICAwICAwICAw
ICAwICAwIDAgTm9uZQoweGYyIDI0IGRjICAwIDMyICAwIHIgIC4gIC4gIDggIDggIDggIDggIDAg
IDAgIDggMTYgMTYgMTYgMTYgIDAgMCBTbG93CjB4ZjMgMjQgZGMgIDAgMzIgIDAgciAgeSAgLiAg
OCAgOCAgOCAgOCAgMCAgMCAgOCAgMCAgMCAgMCAgMCAgMCAwIE5vbmUKMHhmNCAyNCBkYyAgMCAz
MiAgMCByICB5ICAuICA4ICA4ICA4ICA4ICAwICAwICA4IDE2IDE2IDE2IDE2ICAwIDAgU2xvdwow
eGY1IDI0IGRjICAwIDMyICAwIHIgIC4gIC4gIDggIDggIDggIDggIDAgMjQgIDAgIDAgIDAgIDAg
IDAgIDAgMCBOb25lCjB4ZjYgMjQgZGMgIDAgMzIgIDAgciAgLiAgLiAgOCAgOCAgOCAgOCAgMCAy
NCAgMCAxNiAxNiAxNiAxNiAgMCAwIFNsb3cKMHhmNyAyNCBkYyAgMCAzMiAgMCByICB5ICAuICA4
ICA4ICA4ICA4ICAwIDI0ICAwICAwICAwICAwICAwICAwIDAgTm9uZQoweGY4IDI0IGRjICAwIDMy
ICAwIHIgIHkgIC4gIDggIDggIDggIDggIDAgMjQgIDAgMTYgMTYgMTYgMTYgIDAgMCBTbG93CjB4
ZjkgMjQgZGMgIDAgMzIgIDAgciAgLiAgLiAgOCAgOCAgOCAgOCAgMCAyNCAgOCAgMCAgMCAgMCAg
MCAgMCAwIE5vbmUKMHhmYSAyNCBkYyAgMCAzMiAgMCByICAuICAuICA4ICA4ICA4ICA4ICAwIDI0
ICA4IDE2IDE2IDE2IDE2ICAwIDAgU2xvdwoweGZiIDI0IGRjICAwIDMyICAwIHIgIHkgIC4gIDgg
IDggIDggIDggIDAgMjQgIDggMTYgMTYgMTYgMTYgIDAgMCBTbG93CjB4M2UgMzIgdGMgIDAgMzIg
IDAgciAgeSAgLiAgOCAgOCAgOCAgOCAgMCAyNCAgMCAgMCAgMCAgMCAgMCAgMCAwIE5vbmUKCjEy
OCBHTFhGQkNvbmZpZ3M6CiAgIHZpc3VhbCAgeCAgYmYgbHYgcmcgZCBzdCBjb2xvcmJ1ZmZlciBh
eCBkcCBzdCBhY2N1bWJ1ZmZlciAgbXMgIGNhdgogaWQgZGVwIGNsIHNwIHN6IGwgIGNpIGIgcm8g
IHIgIGcgIGIgIGEgYmYgdGggY2wgIHIgIGcgIGIgIGEgbnMgYiBlYXQKLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQow
eDNmICAwIHRjICAwICA4ICAwIHIgIC4gIC4gIDMgIDMgIDIgIDAgIDAgIDAgIDAgIDAgIDAgIDAg
IDAgIDAgMCBOb25lCjB4NDAgIDAgdGMgIDAgIDggIDAgciAgLiAgLiAgMyAgMyAgMiAgMCAgMCAg
MCAgMCAxNiAxNiAxNiAgMCAgMCAwIFNsb3cKMHg0MSAgMCB0YyAgMCAgOCAgMCByICB5ICAuICAz
ICAzICAyICAwICAwICAwICAwICAwICAwICAwICAwICAwIDAgTm9uZQoweDQyICAwIHRjICAwICA4
ICAwIHIgIHkgIC4gIDMgIDMgIDIgIDAgIDAgIDAgIDAgMTYgMTYgMTYgIDAgIDAgMCBTbG93CjB4
NDMgIDAgdGMgIDAgIDggIDAgciAgLiAgLiAgMyAgMyAgMiAgMCAgMCAgMCAgOCAgMCAgMCAgMCAg
MCAgMCAwIE5vbmUKMHg0NCAgMCB0YyAgMCAgOCAgMCByICAuICAuICAzICAzICAyICAwICAwICAw
ICA4IDE2IDE2IDE2ICAwICAwIDAgU2xvdwoweDQ1ICAwIHRjICAwICA4ICAwIHIgIHkgIC4gIDMg
IDMgIDIgIDAgIDAgIDAgIDggIDAgIDAgIDAgIDAgIDAgMCBOb25lCjB4NDYgIDAgdGMgIDAgIDgg
IDAgciAgeSAgLiAgMyAgMyAgMiAgMCAgMCAgMCAgOCAxNiAxNiAxNiAgMCAgMCAwIFNsb3cKMHg0
NyAgMCB0YyAgMCAgOCAgMCByICAuICAuICAzICAzICAyICAwICAwICA4ICAwICAwICAwICAwICAw
ICAwIDAgTm9uZQoweDQ4ICAwIHRjICAwICA4ICAwIHIgIC4gIC4gIDMgIDMgIDIgIDAgIDAgIDgg
IDAgMTYgMTYgMTYgIDAgIDAgMCBTbG93CjB4NDkgIDAgdGMgIDAgIDggIDAgciAgeSAgLiAgMyAg
MyAgMiAgMCAgMCAgOCAgMCAgMCAgMCAgMCAgMCAgMCAwIE5vbmUKMHg0YSAgMCB0YyAgMCAgOCAg
MCByICB5ICAuICAzICAzICAyICAwICAwICA4ICAwIDE2IDE2IDE2ICAwICAwIDAgU2xvdwoweDRi
ICAwIHRjICAwICA4ICAwIHIgIC4gIC4gIDMgIDMgIDIgIDAgIDAgIDggIDggIDAgIDAgIDAgIDAg
IDAgMCBOb25lCjB4NGMgIDAgdGMgIDAgIDggIDAgciAgLiAgLiAgMyAgMyAgMiAgMCAgMCAgOCAg
OCAxNiAxNiAxNiAgMCAgMCAwIFNsb3cKMHg0ZCAgMCB0YyAgMCAgOCAgMCByICB5ICAuICAzICAz
ICAyICAwICAwICA4ICA4ICAwICAwICAwICAwICAwIDAgTm9uZQoweDRlICAwIHRjICAwICA4ICAw
IHIgIHkgIC4gIDMgIDMgIDIgIDAgIDAgIDggIDggMTYgMTYgMTYgIDAgIDAgMCBTbG93CjB4NGYg
IDAgdGMgIDAgMTYgIDAgciAgLiAgLiAgNSAgNiAgNSAgMCAgMCAgMCAgMCAgMCAgMCAgMCAgMCAg
MCAwIE5vbmUKMHg1MCAgMCB0YyAgMCAxNiAgMCByICAuICAuICA1ICA2ICA1ICAwICAwICAwICAw
IDE2IDE2IDE2ICAwICAwIDAgU2xvdwoweDUxICAwIHRjICAwIDE2ICAwIHIgIHkgIC4gIDUgIDYg
IDUgIDAgIDAgIDAgIDAgIDAgIDAgIDAgIDAgIDAgMCBOb25lCjB4NTIgIDAgdGMgIDAgMTYgIDAg
ciAgeSAgLiAgNSAgNiAgNSAgMCAgMCAgMCAgMCAxNiAxNiAxNiAgMCAgMCAwIFNsb3cKMHg1MyAg
MCB0YyAgMCAxNiAgMCByICAuICAuICA1ICA2ICA1ICAwICAwICAwICA4ICAwICAwICAwICAwICAw
IDAgTm9uZQoweDU0ICAwIHRjICAwIDE2ICAwIHIgIC4gIC4gIDUgIDYgIDUgIDAgIDAgIDAgIDgg
MTYgMTYgMTYgIDAgIDAgMCBTbG93CjB4NTUgIDAgdGMgIDAgMTYgIDAgciAgeSAgLiAgNSAgNiAg
NSAgMCAgMCAgMCAgOCAgMCAgMCAgMCAgMCAgMCAwIE5vbmUKMHg1NiAgMCB0YyAgMCAxNiAgMCBy
ICB5ICAuICA1ICA2ICA1ICAwICAwICAwICA4IDE2IDE2IDE2ICAwICAwIDAgU2xvdwoweDU3ICAw
IHRjICAwIDE2ICAwIHIgIC4gIC4gIDUgIDYgIDUgIDAgIDAgMTYgIDAgIDAgIDAgIDAgIDAgIDAg
MCBOb25lCjB4NTggIDAgdGMgIDAgMTYgIDAgciAgLiAgLiAgNSAgNiAgNSAgMCAgMCAxNiAgMCAx
NiAxNiAxNiAgMCAgMCAwIFNsb3cKMHg1OSAgMCB0YyAgMCAxNiAgMCByICB5ICAuICA1ICA2ICA1
ICAwICAwIDE2ICAwICAwICAwICAwICAwICAwIDAgTm9uZQoweDVhICAwIHRjICAwIDE2ICAwIHIg
IHkgIC4gIDUgIDYgIDUgIDAgIDAgMTYgIDAgMTYgMTYgMTYgIDAgIDAgMCBTbG93CjB4NWIgIDAg
dGMgIDAgMTYgIDAgciAgLiAgLiAgNSAgNiAgNSAgMCAgMCAxNiAgOCAgMCAgMCAgMCAgMCAgMCAw
IE5vbmUKMHg1YyAgMCB0YyAgMCAxNiAgMCByICAuICAuICA1ICA2ICA1ICAwICAwIDE2ICA4IDE2
IDE2IDE2ICAwICAwIDAgU2xvdwoweDVkICAwIHRjICAwIDE2ICAwIHIgIHkgIC4gIDUgIDYgIDUg
IDAgIDAgMTYgIDggIDAgIDAgIDAgIDAgIDAgMCBOb25lCjB4NWUgIDAgdGMgIDAgMTYgIDAgciAg
eSAgLiAgNSAgNiAgNSAgMCAgMCAxNiAgOCAxNiAxNiAxNiAgMCAgMCAwIFNsb3cKMHg1ZiAgMCB0
YyAgMCAyNCAgMCByICAuICAuICA4ICA4ICA4ICAwICAwICAwICAwICAwICAwICAwICAwICAwIDAg
Tm9uZQoweDYwICAwIHRjICAwIDI0ICAwIHIgIC4gIC4gIDggIDggIDggIDAgIDAgIDAgIDAgMTYg
MTYgMTYgIDAgIDAgMCBTbG93CjB4NjEgIDAgdGMgIDAgMjQgIDAgciAgeSAgLiAgOCAgOCAgOCAg
MCAgMCAgMCAgMCAgMCAgMCAgMCAgMCAgMCAwIE5vbmUKMHg2MiAgMCB0YyAgMCAyNCAgMCByICB5
ICAuICA4ICA4ICA4ICAwICAwICAwICAwIDE2IDE2IDE2ICAwICAwIDAgU2xvdwoweDYzICAwIHRj
ICAwIDI0ICAwIHIgIC4gIC4gIDggIDggIDggIDAgIDAgIDAgIDggIDAgIDAgIDAgIDAgIDAgMCBO
b25lCjB4NjQgIDAgdGMgIDAgMjQgIDAgciAgLiAgLiAgOCAgOCAgOCAgMCAgMCAgMCAgOCAxNiAx
NiAxNiAgMCAgMCAwIFNsb3cKMHg2NSAgMCB0YyAgMCAyNCAgMCByICB5ICAuICA4ICA4ICA4ICAw
ICAwICAwICA4ICAwICAwICAwICAwICAwIDAgTm9uZQoweDY2ICAwIHRjICAwIDI0ICAwIHIgIHkg
IC4gIDggIDggIDggIDAgIDAgIDAgIDggMTYgMTYgMTYgIDAgIDAgMCBTbG93CjB4NjcgIDAgdGMg
IDAgMjQgIDAgciAgLiAgLiAgOCAgOCAgOCAgMCAgMCAyNCAgMCAgMCAgMCAgMCAgMCAgMCAwIE5v
bmUKMHg2OCAgMCB0YyAgMCAyNCAgMCByICAuICAuICA4ICA4ICA4ICAwICAwIDI0ICAwIDE2IDE2
IDE2ICAwICAwIDAgU2xvdwoweDY5ICAwIHRjICAwIDI0ICAwIHIgIHkgIC4gIDggIDggIDggIDAg
IDAgMjQgIDAgIDAgIDAgIDAgIDAgIDAgMCBOb25lCjB4NmEgIDAgdGMgIDAgMjQgIDAgciAgeSAg
LiAgOCAgOCAgOCAgMCAgMCAyNCAgMCAxNiAxNiAxNiAgMCAgMCAwIFNsb3cKMHg2YiAgMCB0YyAg
MCAyNCAgMCByICAuICAuICA4ICA4ICA4ICAwICAwIDI0ICA4ICAwICAwICAwICAwICAwIDAgTm9u
ZQoweDZjICAwIHRjICAwIDI0ICAwIHIgIC4gIC4gIDggIDggIDggIDAgIDAgMjQgIDggMTYgMTYg
MTYgIDAgIDAgMCBTbG93CjB4NmQgIDAgdGMgIDAgMjQgIDAgciAgeSAgLiAgOCAgOCAgOCAgMCAg
MCAyNCAgOCAgMCAgMCAgMCAgMCAgMCAwIE5vbmUKMHg2ZSAgMCB0YyAgMCAyNCAgMCByICB5ICAu
ICA4ICA4ICA4ICAwICAwIDI0ICA4IDE2IDE2IDE2ICAwICAwIDAgU2xvdwoweDZmICAwIHRjICAw
IDMyICAwIHIgIC4gIC4gIDggIDggIDggIDggIDAgIDAgIDAgIDAgIDAgIDAgIDAgIDAgMCBOb25l
CjB4NzAgIDAgdGMgIDAgMzIgIDAgciAgLiAgLiAgOCAgOCAgOCAgOCAgMCAgMCAgMCAxNiAxNiAx
NiAxNiAgMCAwIFNsb3cKMHg3MSAgMCB0YyAgMCAzMiAgMCByICB5ICAuICA4ICA4ICA4ICA4ICAw
ICAwICAwICAwICAwICAwICAwICAwIDAgTm9uZQoweDcyICAwIHRjICAwIDMyICAwIHIgIHkgIC4g
IDggIDggIDggIDggIDAgIDAgIDAgMTYgMTYgMTYgMTYgIDAgMCBTbG93CjB4NzMgIDAgdGMgIDAg
MzIgIDAgciAgLiAgLiAgOCAgOCAgOCAgOCAgMCAgMCAgOCAgMCAgMCAgMCAgMCAgMCAwIE5vbmUK
MHg3NCAgMCB0YyAgMCAzMiAgMCByICAuICAuICA4ICA4ICA4ICA4ICAwICAwICA4IDE2IDE2IDE2
IDE2ICAwIDAgU2xvdwoweDc1ICAwIHRjICAwIDMyICAwIHIgIHkgIC4gIDggIDggIDggIDggIDAg
IDAgIDggIDAgIDAgIDAgIDAgIDAgMCBOb25lCjB4NzYgIDAgdGMgIDAgMzIgIDAgciAgeSAgLiAg
OCAgOCAgOCAgOCAgMCAgMCAgOCAxNiAxNiAxNiAxNiAgMCAwIFNsb3cKMHg3NyAgMCB0YyAgMCAz
MiAgMCByICAuICAuICA4ICA4ICA4ICA4ICAwIDI0ICAwICAwICAwICAwICAwICAwIDAgTm9uZQow
eDc4ICAwIHRjICAwIDMyICAwIHIgIC4gIC4gIDggIDggIDggIDggIDAgMjQgIDAgMTYgMTYgMTYg
MTYgIDAgMCBTbG93CjB4NzkgIDAgdGMgIDAgMzIgIDAgciAgeSAgLiAgOCAgOCAgOCAgOCAgMCAy
NCAgMCAgMCAgMCAgMCAgMCAgMCAwIE5vbmUKMHg3YSAgMCB0YyAgMCAzMiAgMCByICB5ICAuICA4
ICA4ICA4ICA4ICAwIDI0ICAwIDE2IDE2IDE2IDE2ICAwIDAgU2xvdwoweDdiICAwIHRjICAwIDMy
ICAwIHIgIC4gIC4gIDggIDggIDggIDggIDAgMjQgIDggIDAgIDAgIDAgIDAgIDAgMCBOb25lCjB4
N2MgIDAgdGMgIDAgMzIgIDAgciAgLiAgLiAgOCAgOCAgOCAgOCAgMCAyNCAgOCAxNiAxNiAxNiAx
NiAgMCAwIFNsb3cKMHg3ZCAgMCB0YyAgMCAzMiAgMCByICB5ICAuICA4ICA4ICA4ICA4ICAwIDI0
ICA4ICAwICAwICAwICAwICAwIDAgTm9uZQoweDdlICAwIHRjICAwIDMyICAwIHIgIHkgIC4gIDgg
IDggIDggIDggIDAgMjQgIDggMTYgMTYgMTYgMTYgIDAgMCBTbG93CjB4N2YgIDAgZGMgIDAgIDgg
IDAgciAgLiAgLiAgMyAgMyAgMiAgMCAgMCAgMCAgMCAgMCAgMCAgMCAgMCAgMCAwIE5vbmUKMHg4
MCAgMCBkYyAgMCAgOCAgMCByICAuICAuICAzICAzICAyICAwICAwICAwICAwIDE2IDE2IDE2ICAw
ICAwIDAgU2xvdwoweDgxICAwIGRjICAwICA4ICAwIHIgIHkgIC4gIDMgIDMgIDIgIDAgIDAgIDAg
IDAgIDAgIDAgIDAgIDAgIDAgMCBOb25lCjB4ODIgIDAgZGMgIDAgIDggIDAgciAgeSAgLiAgMyAg
MyAgMiAgMCAgMCAgMCAgMCAxNiAxNiAxNiAgMCAgMCAwIFNsb3cKMHg4MyAgMCBkYyAgMCAgOCAg
MCByICAuICAuICAzICAzICAyICAwICAwICAwICA4ICAwICAwICAwICAwICAwIDAgTm9uZQoweDg0
ICAwIGRjICAwICA4ICAwIHIgIC4gIC4gIDMgIDMgIDIgIDAgIDAgIDAgIDggMTYgMTYgMTYgIDAg
IDAgMCBTbG93CjB4ODUgIDAgZGMgIDAgIDggIDAgciAgeSAgLiAgMyAgMyAgMiAgMCAgMCAgMCAg
OCAgMCAgMCAgMCAgMCAgMCAwIE5vbmUKMHg4NiAgMCBkYyAgMCAgOCAgMCByICB5ICAuICAzICAz
ICAyICAwICAwICAwICA4IDE2IDE2IDE2ICAwICAwIDAgU2xvdwoweDg3ICAwIGRjICAwICA4ICAw
IHIgIC4gIC4gIDMgIDMgIDIgIDAgIDAgIDggIDAgIDAgIDAgIDAgIDAgIDAgMCBOb25lCjB4ODgg
IDAgZGMgIDAgIDggIDAgciAgLiAgLiAgMyAgMyAgMiAgMCAgMCAgOCAgMCAxNiAxNiAxNiAgMCAg
MCAwIFNsb3cKMHg4OSAgMCBkYyAgMCAgOCAgMCByICB5ICAuICAzICAzICAyICAwICAwICA4ICAw
ICAwICAwICAwICAwICAwIDAgTm9uZQoweDhhICAwIGRjICAwICA4ICAwIHIgIHkgIC4gIDMgIDMg
IDIgIDAgIDAgIDggIDAgMTYgMTYgMTYgIDAgIDAgMCBTbG93CjB4OGIgIDAgZGMgIDAgIDggIDAg
ciAgLiAgLiAgMyAgMyAgMiAgMCAgMCAgOCAgOCAgMCAgMCAgMCAgMCAgMCAwIE5vbmUKMHg4YyAg
MCBkYyAgMCAgOCAgMCByICAuICAuICAzICAzICAyICAwICAwICA4ICA4IDE2IDE2IDE2ICAwICAw
IDAgU2xvdwoweDhkICAwIGRjICAwICA4ICAwIHIgIHkgIC4gIDMgIDMgIDIgIDAgIDAgIDggIDgg
IDAgIDAgIDAgIDAgIDAgMCBOb25lCjB4OGUgIDAgZGMgIDAgIDggIDAgciAgeSAgLiAgMyAgMyAg
MiAgMCAgMCAgOCAgOCAxNiAxNiAxNiAgMCAgMCAwIFNsb3cKMHg4ZiAgMCBkYyAgMCAxNiAgMCBy
ICAuICAuICA1ICA2ICA1ICAwICAwICAwICAwICAwICAwICAwICAwICAwIDAgTm9uZQoweDkwICAw
IGRjICAwIDE2ICAwIHIgIC4gIC4gIDUgIDYgIDUgIDAgIDAgIDAgIDAgMTYgMTYgMTYgIDAgIDAg
MCBTbG93CjB4OTEgIDAgZGMgIDAgMTYgIDAgciAgeSAgLiAgNSAgNiAgNSAgMCAgMCAgMCAgMCAg
MCAgMCAgMCAgMCAgMCAwIE5vbmUKMHg5MiAgMCBkYyAgMCAxNiAgMCByICB5ICAuICA1ICA2ICA1
ICAwICAwICAwICAwIDE2IDE2IDE2ICAwICAwIDAgU2xvdwoweDkzICAwIGRjICAwIDE2ICAwIHIg
IC4gIC4gIDUgIDYgIDUgIDAgIDAgIDAgIDggIDAgIDAgIDAgIDAgIDAgMCBOb25lCjB4OTQgIDAg
ZGMgIDAgMTYgIDAgciAgLiAgLiAgNSAgNiAgNSAgMCAgMCAgMCAgOCAxNiAxNiAxNiAgMCAgMCAw
IFNsb3cKMHg5NSAgMCBkYyAgMCAxNiAgMCByICB5ICAuICA1ICA2ICA1ICAwICAwICAwICA4ICAw
ICAwICAwICAwICAwIDAgTm9uZQoweDk2ICAwIGRjICAwIDE2ICAwIHIgIHkgIC4gIDUgIDYgIDUg
IDAgIDAgIDAgIDggMTYgMTYgMTYgIDAgIDAgMCBTbG93CjB4OTcgIDAgZGMgIDAgMTYgIDAgciAg
LiAgLiAgNSAgNiAgNSAgMCAgMCAxNiAgMCAgMCAgMCAgMCAgMCAgMCAwIE5vbmUKMHg5OCAgMCBk
YyAgMCAxNiAgMCByICAuICAuICA1ICA2ICA1ICAwICAwIDE2ICAwIDE2IDE2IDE2ICAwICAwIDAg
U2xvdwoweDk5ICAwIGRjICAwIDE2ICAwIHIgIHkgIC4gIDUgIDYgIDUgIDAgIDAgMTYgIDAgIDAg
IDAgIDAgIDAgIDAgMCBOb25lCjB4OWEgIDAgZGMgIDAgMTYgIDAgciAgeSAgLiAgNSAgNiAgNSAg
MCAgMCAxNiAgMCAxNiAxNiAxNiAgMCAgMCAwIFNsb3cKMHg5YiAgMCBkYyAgMCAxNiAgMCByICAu
ICAuICA1ICA2ICA1ICAwICAwIDE2ICA4ICAwICAwICAwICAwICAwIDAgTm9uZQoweDljICAwIGRj
ICAwIDE2ICAwIHIgIC4gIC4gIDUgIDYgIDUgIDAgIDAgMTYgIDggMTYgMTYgMTYgIDAgIDAgMCBT
bG93CjB4OWQgIDAgZGMgIDAgMTYgIDAgciAgeSAgLiAgNSAgNiAgNSAgMCAgMCAxNiAgOCAgMCAg
MCAgMCAgMCAgMCAwIE5vbmUKMHg5ZSAgMCBkYyAgMCAxNiAgMCByICB5ICAuICA1ICA2ICA1ICAw
ICAwIDE2ICA4IDE2IDE2IDE2ICAwICAwIDAgU2xvdwoweDlmICAwIGRjICAwIDI0ICAwIHIgIC4g
IC4gIDggIDggIDggIDAgIDAgIDAgIDAgIDAgIDAgIDAgIDAgIDAgMCBOb25lCjB4YTAgIDAgZGMg
IDAgMjQgIDAgciAgLiAgLiAgOCAgOCAgOCAgMCAgMCAgMCAgMCAxNiAxNiAxNiAgMCAgMCAwIFNs
b3cKMHhhMSAgMCBkYyAgMCAyNCAgMCByICB5ICAuICA4ICA4ICA4ICAwICAwICAwICAwICAwICAw
ICAwICAwICAwIDAgTm9uZQoweGEyICAwIGRjICAwIDI0ICAwIHIgIHkgIC4gIDggIDggIDggIDAg
IDAgIDAgIDAgMTYgMTYgMTYgIDAgIDAgMCBTbG93CjB4YTMgIDAgZGMgIDAgMjQgIDAgciAgLiAg
LiAgOCAgOCAgOCAgMCAgMCAgMCAgOCAgMCAgMCAgMCAgMCAgMCAwIE5vbmUKMHhhNCAgMCBkYyAg
MCAyNCAgMCByICAuICAuICA4ICA4ICA4ICAwICAwICAwICA4IDE2IDE2IDE2ICAwICAwIDAgU2xv
dwoweGE1ICAwIGRjICAwIDI0ICAwIHIgIHkgIC4gIDggIDggIDggIDAgIDAgIDAgIDggIDAgIDAg
IDAgIDAgIDAgMCBOb25lCjB4YTYgIDAgZGMgIDAgMjQgIDAgciAgeSAgLiAgOCAgOCAgOCAgMCAg
MCAgMCAgOCAxNiAxNiAxNiAgMCAgMCAwIFNsb3cKMHhhNyAgMCBkYyAgMCAyNCAgMCByICAuICAu
ICA4ICA4ICA4ICAwICAwIDI0ICAwICAwICAwICAwICAwICAwIDAgTm9uZQoweGE4ICAwIGRjICAw
IDI0ICAwIHIgIC4gIC4gIDggIDggIDggIDAgIDAgMjQgIDAgMTYgMTYgMTYgIDAgIDAgMCBTbG93
CjB4YTkgIDAgZGMgIDAgMjQgIDAgciAgeSAgLiAgOCAgOCAgOCAgMCAgMCAyNCAgMCAgMCAgMCAg
MCAgMCAgMCAwIE5vbmUKMHhhYSAgMCBkYyAgMCAyNCAgMCByICB5ICAuICA4ICA4ICA4ICAwICAw
IDI0ICAwIDE2IDE2IDE2ICAwICAwIDAgU2xvdwoweGFiICAwIGRjICAwIDI0ICAwIHIgIC4gIC4g
IDggIDggIDggIDAgIDAgMjQgIDggIDAgIDAgIDAgIDAgIDAgMCBOb25lCjB4YWMgIDAgZGMgIDAg
MjQgIDAgciAgLiAgLiAgOCAgOCAgOCAgMCAgMCAyNCAgOCAxNiAxNiAxNiAgMCAgMCAwIFNsb3cK
MHhhZCAgMCBkYyAgMCAyNCAgMCByICB5ICAuICA4ICA4ICA4ICAwICAwIDI0ICA4ICAwICAwICAw
ICAwICAwIDAgTm9uZQoweGFlICAwIGRjICAwIDI0ICAwIHIgIHkgIC4gIDggIDggIDggIDAgIDAg
MjQgIDggMTYgMTYgMTYgIDAgIDAgMCBTbG93CjB4YWYgIDAgZGMgIDAgMzIgIDAgciAgLiAgLiAg
OCAgOCAgOCAgOCAgMCAgMCAgMCAgMCAgMCAgMCAgMCAgMCAwIE5vbmUKMHhiMCAgMCBkYyAgMCAz
MiAgMCByICAuICAuICA4ICA4ICA4ICA4ICAwICAwICAwIDE2IDE2IDE2IDE2ICAwIDAgU2xvdwow
eGIxICAwIGRjICAwIDMyICAwIHIgIHkgIC4gIDggIDggIDggIDggIDAgIDAgIDAgIDAgIDAgIDAg
IDAgIDAgMCBOb25lCjB4YjIgIDAgZGMgIDAgMzIgIDAgciAgeSAgLiAgOCAgOCAgOCAgOCAgMCAg
MCAgMCAxNiAxNiAxNiAxNiAgMCAwIFNsb3cKMHhiMyAgMCBkYyAgMCAzMiAgMCByICAuICAuICA4
ICA4ICA4ICA4ICAwICAwICA4ICAwICAwICAwICAwICAwIDAgTm9uZQoweGI0ICAwIGRjICAwIDMy
ICAwIHIgIC4gIC4gIDggIDggIDggIDggIDAgIDAgIDggMTYgMTYgMTYgMTYgIDAgMCBTbG93CjB4
YjUgIDAgZGMgIDAgMzIgIDAgciAgeSAgLiAgOCAgOCAgOCAgOCAgMCAgMCAgOCAgMCAgMCAgMCAg
MCAgMCAwIE5vbmUKMHhiNiAgMCBkYyAgMCAzMiAgMCByICB5ICAuICA4ICA4ICA4ICA4ICAwICAw
ICA4IDE2IDE2IDE2IDE2ICAwIDAgU2xvdwoweGI3ICAwIGRjICAwIDMyICAwIHIgIC4gIC4gIDgg
IDggIDggIDggIDAgMjQgIDAgIDAgIDAgIDAgIDAgIDAgMCBOb25lCjB4YjggIDAgZGMgIDAgMzIg
IDAgciAgLiAgLiAgOCAgOCAgOCAgOCAgMCAyNCAgMCAxNiAxNiAxNiAxNiAgMCAwIFNsb3cKMHhi
OSAgMCBkYyAgMCAzMiAgMCByICB5ICAuICA4ICA4ICA4ICA4ICAwIDI0ICAwICAwICAwICAwICAw
ICAwIDAgTm9uZQoweGJhICAwIGRjICAwIDMyICAwIHIgIHkgIC4gIDggIDggIDggIDggIDAgMjQg
IDAgMTYgMTYgMTYgMTYgIDAgMCBTbG93CjB4YmIgIDAgZGMgIDAgMzIgIDAgciAgLiAgLiAgOCAg
OCAgOCAgOCAgMCAyNCAgOCAgMCAgMCAgMCAgMCAgMCAwIE5vbmUKMHhiYyAgMCBkYyAgMCAzMiAg
MCByICAuICAuICA4ICA4ICA4ICA4ICAwIDI0ICA4IDE2IDE2IDE2IDE2ICAwIDAgU2xvdwoweGJk
ICAwIGRjICAwIDMyICAwIHIgIHkgIC4gIDggIDggIDggIDggIDAgMjQgIDggIDAgIDAgIDAgIDAg
IDAgMCBOb25lCjB4YmUgIDAgZGMgIDAgMzIgIDAgciAgeSAgLiAgOCAgOCAgOCAgOCAgMCAyNCAg
OCAxNiAxNiAxNiAxNiAgMCAwIFNsb3cKCg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>121596</attachid>
            <date>2012-01-08 15:47:18 -0800</date>
            <delta_ts>2012-01-08 17:39:21 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>GL_resources_dealloc_fix_01.diff</filename>
            <type>text/plain</type>
            <size>15876</size>
            <attacher name="Viatcheslav Ostapenko">ostap73</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJDb3JlL0No
YW5nZUxvZwppbmRleCA3ZjZlZGM5Li5mYjQ4NGYzIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29y
ZS9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMzMg
QEAKKzIwMTItMDEtMDggIFZpYXRjaGVzbGF2IE9zdGFwZW5rbyAgPG9zdGFwZW5rby52aWF0Y2hl
c2xhdkBub2tpYS5jb20+CisKKyAgICAgICAgW1F0XVtXSzJdUkVHUkVTU0lPTihyMTAyNDM1KTog
SXQgbWFkZSB0c3RfUVF1aWNrV2ViVmlldzo6c2hvdygpIGNyYXNoCisgICAgICAgIGh0dHBzOi8v
YnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD03NDE3NgorCisgICAgICAgIFJldmlld2Vk
IGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIFJlcGxhY2VzIHN0YXRpYyBnbG9iYWwgR0wg
cmVzb3VyY2UgaG9sZGVyIHdpdGggaG9sZGVyIHNoYXJlZCBiZXR3ZWVuCisgICAgICAgIFRleHR1
cmVNYXBwZXJHTCBpbnN0YW5jZXMgY3JlYXRlZCBvbiB0aGUgc2FtZSBHTCBjb250ZXh0LiBBbHNv
IGFkZHMKKyAgICAgICAgZGVhbGxvY2F0aW9uIG9mIEdMIHJlc291cmNlcyB3aGVuIGxhc3QgVGV4
dHVyZU1hcHBlckdMIGluc3RhbmNlIG9uIHRoZSAKKyAgICAgICAgY3VycmVudCBHTCBjb250ZXh0
IGdldHMgZGVsZXRlZC4KKworICAgICAgICBGaXhlcyByZWdyZXNzaW9uIGNvdmVyZWQgYnkgZXhp
c3RpbmcgQVBJIHRlc3RzLgorCisgICAgICAgICogcGxhdGZvcm0vZ3JhcGhpY3Mvb3BlbmdsL1Rl
eHR1cmVNYXBwZXJHTC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpUZXh0dXJlTWFwcGVyR0xEYXRh
OjpTaGFyZWRHTERhdGE6OmdldEN1cnJlbnRHTENvbnRleHQpOgorICAgICAgICAoV2ViQ29yZTo6
VGV4dHVyZU1hcHBlckdMRGF0YTo6U2hhcmVkR0xEYXRhOjpnbENvbnRleHREYXRhTWFwKToKKyAg
ICAgICAgKFdlYkNvcmU6OlRleHR1cmVNYXBwZXJHTERhdGE6OlNoYXJlZEdMRGF0YTo6Y3VyZW50
U2hhcmVkR0xEYXRhKToKKyAgICAgICAgKFdlYkNvcmU6OlRleHR1cmVNYXBwZXJHTERhdGE6OlNo
YXJlZEdMRGF0YTo6ZGVsZXRlU2hhZGVyUHJvZ3JhbSk6CisgICAgICAgIChXZWJDb3JlOjpUZXh0
dXJlTWFwcGVyR0xEYXRhOjpTaGFyZWRHTERhdGE6OlNoYXJlZEdMRGF0YSk6CisgICAgICAgIChX
ZWJDb3JlOjpUZXh0dXJlTWFwcGVyR0xEYXRhOjpTaGFyZWRHTERhdGE6On5TaGFyZWRHTERhdGEp
OgorICAgICAgICAoV2ViQ29yZTo6VGV4dHVyZU1hcHBlckdMRGF0YTo6c2hhcmVkR0xEYXRhKToK
KyAgICAgICAgKFdlYkNvcmU6OlRleHR1cmVNYXBwZXJHTERhdGE6OlRleHR1cmVNYXBwZXJHTERh
dGEpOgorICAgICAgICAoV2ViQ29yZTo6VGV4dHVyZU1hcHBlckdMOjppbml0aWFsaXplU2hhZGVy
cyk6CisgICAgICAgIChXZWJDb3JlOjpUZXh0dXJlTWFwcGVyR0w6OmRyYXdUZXh0dXJlKToKKyAg
ICAgICAgKFdlYkNvcmU6OkJpdG1hcFRleHR1cmVHTDo6YmluZCk6CisgICAgICAgIChXZWJDb3Jl
OjpUZXh0dXJlTWFwcGVyR0w6OmJpbmRTdXJmYWNlKToKKyAgICAgICAgKFdlYkNvcmU6OlRleHR1
cmVNYXBwZXJHTDo6YmVnaW5DbGlwKToKKyAgICAgICAgKFdlYkNvcmU6OlRleHR1cmVNYXBwZXJH
TDo6ZW5kQ2xpcCk6CisKIDIwMTItMDEtMDcgIENocmlzIE1hcnJpbiAgPGNtYXJyaW5AYXBwbGUu
Y29tPgogCiAgICAgICAgIEZpeGVkIEFOR0xFIGJ1aWxkIGZvciBHTlUgYW5kIFFUIGJyb2tlbiBp
biBodHRwczovL3RyYWMud2Via2l0Lm9yZy9jaGFuZ2VzZXQvMTA0MzYzCmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9vcGVuZ2wvVGV4dHVyZU1hcHBlckdMLmNw
cCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL29wZW5nbC9UZXh0dXJlTWFwcGVy
R0wuY3BwCmluZGV4IDI4ZWUyYmEuLjMxNjg1ODkgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3Jl
L3BsYXRmb3JtL2dyYXBoaWNzL29wZW5nbC9UZXh0dXJlTWFwcGVyR0wuY3BwCisrKyBiL1NvdXJj
ZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL29wZW5nbC9UZXh0dXJlTWFwcGVyR0wuY3BwCkBA
IC0zMSw2ICszMSw3IEBACiAjaW5jbHVkZSA8d3RmL1JlZkNvdW50ZWQuaD4KIAogI2lmIFBMQVRG
T1JNKFFUKQorI2luY2x1ZGUgPFFPcGVuR0xDb250ZXh0PgogI2luY2x1ZGUgPGNhaXJvL09wZW5H
TFNoaW1zLmg+CiAjZWxpZiBkZWZpbmVkKFRFWE1BUF9PUEVOR0xfRVNfMikKICNpbmNsdWRlIDxH
TEVTMi9nbDIuaD4KQEAgLTM5LDYgKzQwLDcgQEAKICNpbmNsdWRlIDxnbC5oPgogI2Vsc2UKICNp
bmNsdWRlIDxHTC9nbC5oPgorI2luY2x1ZGUgPEdML2dseC5oPgogI2VuZGlmCiAKICNpZiAhZGVm
aW5lZChURVhNQVBfT1BFTkdMX0VTXzIpICYmICFQTEFURk9STShRVCkKQEAgLTEwMyw3ICsxMDUs
MzggQEAgaW5saW5lIHN0YXRpYyB2b2lkIGRlYnVnR0xDb21tYW5kKGNvbnN0IGNoYXIqIGNvbW1h
bmQsIGludCBsaW5lKQogI2VuZGlmCiAKIHN0cnVjdCBUZXh0dXJlTWFwcGVyR0xEYXRhIHsKLSAg
ICBzdGF0aWMgc3RydWN0IEdsb2JhbEdMRGF0YSB7CisgICAgc3RydWN0IFNoYXJlZEdMRGF0YSA6
IHB1YmxpYyBSZWZDb3VudGVkPFNoYXJlZEdMRGF0YT4geworI2lmIFBMQVRGT1JNKFFUKQorICAg
ICAgICB0eXBlZGVmIFFPcGVuR0xDb250ZXh0KiBHTENvbnRleHQ7CisgICAgICAgIHN0YXRpYyBH
TENvbnRleHQgZ2V0Q3VycmVudEdMQ29udGV4dCgpCisgICAgICAgIHsKKyAgICAgICAgICAgIHJl
dHVybiBRT3BlbkdMQ29udGV4dDo6Y3VycmVudENvbnRleHQoKTsKKyAgICAgICAgfQorI2Vsc2UK
KyAgICAgICAgdHlwZWRlZiBHTFhDb250ZXh0IEdMQ29udGV4dDsKKyAgICAgICAgc3RhdGljIEdM
Q29udGV4dCBnZXRDdXJyZW50R0xDb250ZXh0KCkKKyAgICAgICAgeworICAgICAgICAgICAgcmV0
dXJuIGdsWEdldEN1cnJlbnRDb250ZXh0KCk7CisgICAgICAgIH0KKyNlbmRpZgorCisgICAgICAg
IHR5cGVkZWYgSGFzaE1hcDxHTENvbnRleHQsIFNoYXJlZEdMRGF0YSo+IEdMQ29udGV4dERhdGFN
YXA7CisgICAgICAgIHN0YXRpYyBHTENvbnRleHREYXRhTWFwJiBnbENvbnRleHREYXRhTWFwKCkK
KyAgICAgICAgeworICAgICAgICAgICAgc3RhdGljIEdMQ29udGV4dERhdGFNYXAgbWFwOworICAg
ICAgICAgICAgcmV0dXJuIG1hcDsKKyAgICAgICAgfQorCisgICAgICAgIHN0YXRpYyBTaGFyZWRH
TERhdGEqIGN1cmVudFNoYXJlZEdMRGF0YSgpCisgICAgICAgIHsKKyAgICAgICAgICAgIEdMQ29u
dGV4dCBjdXJyZW50R0xDb25leHQgPSBnZXRDdXJyZW50R0xDb250ZXh0KCk7CisgICAgICAgICAg
ICBHTENvbnRleHREYXRhTWFwOjppdGVyYXRvciBpdCA9IGdsQ29udGV4dERhdGFNYXAoKS5maW5k
KGN1cnJlbnRHTENvbmV4dCk7CisgICAgICAgICAgICBpZiAoaXQgIT0gZ2xDb250ZXh0RGF0YU1h
cCgpLmVuZCgpKQorICAgICAgICAgICAgICAgIHJldHVybiBpdC0+c2Vjb25kOworCisgICAgICAg
ICAgICByZXR1cm4gbmV3IFNoYXJlZEdMRGF0YShnZXRDdXJyZW50R0xDb250ZXh0KCkpOworICAg
ICAgICB9CisKICAgICAgICAgZW51bSBTaGFkZXJQcm9ncmFtSW5kZXggewogICAgICAgICAgICAg
Tm9Qcm9ncmFtID0gLTEsCiAgICAgICAgICAgICBTaW1wbGVQcm9ncmFtLApAQCAtMTUxLDE0ICsx
ODQsNDcgQEAgc3RydWN0IFRleHR1cmVNYXBwZXJHTERhdGEgewogICAgICAgICAgICAgcHJvZ3Jh
bXNbaW5kZXhdLmlkID0gcHJvZ3JhbUlEOwogICAgICAgICB9CiAKKyAgICAgICAgdm9pZCBkZWxl
dGVTaGFkZXJQcm9ncmFtKFNoYWRlclByb2dyYW1JbmRleCBpbmRleCkKKyAgICAgICAgeworICAg
ICAgICAgICAgR0x1aW50IHNoYWRlcnNbNF07CisgICAgICAgICAgICBHTHNpemVpIHNoYWRlckNv
dW50ID0gMDsKKyAgICAgICAgICAgIEdMdWludCBwcm9ncmFtSUQgPSBwcm9ncmFtc1tpbmRleF0u
aWQ7CisgICAgICAgICAgICBHTF9DTUQoZ2xHZXRBdHRhY2hlZFNoYWRlcnMocHJvZ3JhbUlELCBz
aXplb2Yoc2hhZGVycykgLyBzaXplb2YoR0x1aW50KSwgJnNoYWRlckNvdW50LCBzaGFkZXJzKSkK
KyAgICAgICAgICAgIGZvciAoaW50IGkgPSAwOyBpIDwgc2hhZGVyQ291bnQ7IGkrKykgeworICAg
ICAgICAgICAgICAgIEdMX0NNRChnbERldGFjaFNoYWRlcihwcm9ncmFtSUQsIHNoYWRlcnNbaV0p
KQorICAgICAgICAgICAgICAgIEdMX0NNRChnbERlbGV0ZVNoYWRlcihzaGFkZXJzW2ldKSkKKyAg
ICAgICAgICAgIH0KKyAgICAgICAgICAgIEdMX0NNRChnbERlbGV0ZVByb2dyYW0ocHJvZ3JhbUlE
KSkKKyAgICAgICAgfQorCiAgICAgICAgIFByb2dyYW1JbmZvIHByb2dyYW1zW1Byb2dyYW1Db3Vu
dF07CiAKICAgICAgICAgaW50IHN0ZW5jaWxJbmRleDsKKyAgICAgICAgYm9vbCBpbml0aWFsaXpl
ZDsKKworICAgICAgICBTaGFyZWRHTERhdGEoR0xDb250ZXh0IGdsQ29udGV4dCkgOiBzdGVuY2ls
SW5kZXgoMSksIGluaXRpYWxpemVkKGZhbHNlKQorICAgICAgICB7CisgICAgICAgICAgICBnbENv
bnRleHREYXRhTWFwKCkuYWRkKGdsQ29udGV4dCwgdGhpcyk7CisgICAgICAgIH0KKworICAgICAg
ICB+U2hhcmVkR0xEYXRhKCkKKyAgICAgICAgeworICAgICAgICAgICAgaWYgKGluaXRpYWxpemVk
KSB7CisgICAgICAgICAgICAgICAgZm9yIChpbnQgaSA9IFNpbXBsZVByb2dyYW07IGkgPCBQcm9n
cmFtQ291bnQ7ICsraSkKKyAgICAgICAgICAgICAgICAgICAgZGVsZXRlU2hhZGVyUHJvZ3JhbShT
aGFkZXJQcm9ncmFtSW5kZXgoaSkpOworICAgICAgICAgICAgfQogCi0gICAgICAgIEdsb2JhbEdM
RGF0YSgpCi0gICAgICAgICAgICA6IHN0ZW5jaWxJbmRleCgxKQotICAgICAgICB7IH0KLSAgICB9
IGdsb2JhbEdMRGF0YTsKKyAgICAgICAgICAgIEdMQ29udGV4dERhdGFNYXA6OmNvbnN0X2l0ZXJh
dG9yIG1hcEVuZCA9ICBnbENvbnRleHREYXRhTWFwKCkuZW5kKCk7CisgICAgICAgICAgICBHTENv
bnRleHREYXRhTWFwOjppdGVyYXRvciBpOworICAgICAgICAgICAgZm9yIChpID0gZ2xDb250ZXh0
RGF0YU1hcCgpLmJlZ2luKCk7IGkgIT0gbWFwRW5kOyArK2kpCisgICAgICAgICAgICAgICAgaWYg
KGktPnNlY29uZCA9PSB0aGlzKQorICAgICAgICAgICAgICAgICAgICBicmVhazsKKworICAgICAg
ICAgICAgQVNTRVJUKGkgIT0gbWFwRW5kKTsKKyAgICAgICAgICAgIGdsQ29udGV4dERhdGFNYXAo
KS5yZW1vdmUoaSk7CisgICAgICAgIH0KKworICAgIH07CiAKICAgICBzdHJ1Y3QgRGlyZWN0bHlD
b21wb3NpdGVkSW1hZ2VSZXBvc2l0b3J5IHsKICAgICAgICAgc3RydWN0IEVudHJ5IHsKQEAgLTIx
MSwxNyArMjc3LDIyIEBAIHN0cnVjdCBUZXh0dXJlTWFwcGVyR0xEYXRhIHsKICAgICAgICAgfQog
ICAgIH0gZGlyZWN0bHlDb21wb3NpdGVkSW1hZ2VzOwogCisgICAgU2hhcmVkR0xEYXRhJiBzaGFy
ZWRHTERhdGEoKSBjb25zdAorICAgIHsKKyAgICAgICAgcmV0dXJuICoobV9zaGFyZWRHTERhdGEu
Z2V0KCkpOworICAgIH0KKwogICAgIFRleHR1cmVNYXBwZXJHTERhdGEoKQotICAgICAgICA6IGN1
cnJlbnRQcm9ncmFtKFRleHR1cmVNYXBwZXJHTERhdGE6Okdsb2JhbEdMRGF0YTo6Tm9Qcm9ncmFt
KQorICAgICAgICA6IGN1cnJlbnRQcm9ncmFtKFNoYXJlZEdMRGF0YTo6Tm9Qcm9ncmFtKQorICAg
ICAgICAsIG1fc2hhcmVkR0xEYXRhKGFkb3B0UmVmKFNoYXJlZEdMRGF0YTo6Y3VyZW50U2hhcmVk
R0xEYXRhKCkpKQogICAgIHsgfQogCiAgICAgVHJhbnNmb3JtYXRpb25NYXRyaXggcHJvamVjdGlv
bk1hdHJpeDsKICAgICBpbnQgY3VycmVudFByb2dyYW07CiAgICAgaW50IHByZXZpb3VzUHJvZ3Jh
bTsKKyAgICBSZWZQdHI8U2hhcmVkR0xEYXRhPiBtX3NoYXJlZEdMRGF0YTsKIH07CiAKLVRleHR1
cmVNYXBwZXJHTERhdGE6Okdsb2JhbEdMRGF0YSBUZXh0dXJlTWFwcGVyR0xEYXRhOjpnbG9iYWxH
TERhdGE7Ci0KIGNsYXNzIEJpdG1hcFRleHR1cmVHTCA6IHB1YmxpYyBCaXRtYXBUZXh0dXJlIHsK
IHB1YmxpYzoKICAgICB2aXJ0dWFsIHZvaWQgZGVzdHJveSgpOwpAQCAtMjg5LDExICszNjAsMTEg
QEAgcHJpdmF0ZToKIH07CiAKICNkZWZpbmUgVEVYTUFQX0dFVF9TSEFERVJfVkFSX0xPQ0FUSU9O
KHByb2csIHZhcikgXAotICAgIGlmIChUZXh0dXJlTWFwcGVyR0xEYXRhOjpnbG9iYWxHTERhdGEu
Z2V0VW5pZm9ybUxvY2F0aW9uKFRleHR1cmVNYXBwZXJHTERhdGE6Omdsb2JhbEdMRGF0YS5wcm9n
IyNQcm9ncmFtLCBUZXh0dXJlTWFwcGVyR0xEYXRhOjpnbG9iYWxHTERhdGEudmFyIyNWYXJpYWJs
ZSwgI3ZhcikgPCAwKSBcCisgICAgaWYgKGRhdGEoKS5zaGFyZWRHTERhdGEoKS5nZXRVbmlmb3Jt
TG9jYXRpb24oZGF0YSgpLnNoYXJlZEdMRGF0YSgpLnByb2cjI1Byb2dyYW0sIGRhdGEoKS5zaGFy
ZWRHTERhdGEoKS52YXIjI1ZhcmlhYmxlLCAjdmFyKSA8IDApIFwKICAgICAgICAgICAgIExPR19F
UlJPUigiQ291bGRuJ3QgZmluZCB2YXJpYWJsZSAiI3ZhciIgaW4gcHJvZ3JhbSAiI3Byb2ciXG4i
KTsKIAogI2RlZmluZSBURVhNQVBfQlVJTERfU0hBREVSKHByb2dyYW0pIFwKLSAgICBUZXh0dXJl
TWFwcGVyR0xEYXRhOjpnbG9iYWxHTERhdGEuY3JlYXRlU2hhZGVyUHJvZ3JhbSh2ZXJ0ZXhTaGFk
ZXJTb3VyY2UjI3Byb2dyYW0sIGZyYWdtZW50U2hhZGVyU291cmNlIyNwcm9ncmFtLCBUZXh0dXJl
TWFwcGVyR0xEYXRhOjpnbG9iYWxHTERhdGEucHJvZ3JhbSMjUHJvZ3JhbSk7CisgICAgZGF0YSgp
LnNoYXJlZEdMRGF0YSgpLmNyZWF0ZVNoYWRlclByb2dyYW0odmVydGV4U2hhZGVyU291cmNlIyNw
cm9ncmFtLCBmcmFnbWVudFNoYWRlclNvdXJjZSMjcHJvZ3JhbSwgZGF0YSgpLnNoYXJlZEdMRGF0
YSgpLnByb2dyYW0jI1Byb2dyYW0pOwogCiBUZXh0dXJlTWFwcGVyR0w6OlRleHR1cmVNYXBwZXJH
TCgpCiAgICAgOiBtX2RhdGEobmV3IFRleHR1cmVNYXBwZXJHTERhdGEpCkBAIC0zMDMsMTAgKzM3
NCw5IEBAIFRleHR1cmVNYXBwZXJHTDo6VGV4dHVyZU1hcHBlckdMKCkKIAogdm9pZCBUZXh0dXJl
TWFwcGVyR0w6OmluaXRpYWxpemVTaGFkZXJzKCkKIHsKLSAgICBzdGF0aWMgYm9vbCBzaGFkZXJz
Q29tcGlsZWQgPSBmYWxzZTsKLSAgICBpZiAoc2hhZGVyc0NvbXBpbGVkKQorICAgIGlmIChkYXRh
KCkuc2hhcmVkR0xEYXRhKCkuaW5pdGlhbGl6ZWQpCiAgICAgICAgIHJldHVybjsKLSAgICBzaGFk
ZXJzQ29tcGlsZWQgPSB0cnVlOworICAgIGRhdGEoKS5zaGFyZWRHTERhdGEoKS5pbml0aWFsaXpl
ZCA9IHRydWU7CiAjaWZuZGVmIFRFWE1BUF9PUEVOR0xfRVNfMgogI2RlZmluZSBPRVMyX1BSRUNJ
U0lPTl9ERUZJTklUSU9OUyBcCiAgICAgIiNkZWZpbmUgbG93cFxuI2RlZmluZSBoaWdocFxuIgpA
QCAtNDU0LDEzICs1MjQsMTMgQEAgdm9pZCBUZXh0dXJlTWFwcGVyR0w6OmRyYXdUZXh0dXJlKGNv
bnN0IEJpdG1hcFRleHR1cmUmIHRleHR1cmUsIGNvbnN0IEZsb2F0UmVjdCYKIAogdm9pZCBUZXh0
dXJlTWFwcGVyR0w6OmRyYXdUZXh0dXJlKHVpbnQzMl90IHRleHR1cmUsIGJvb2wgb3BhcXVlLCBj
b25zdCBGbG9hdFNpemUmIHJlbGF0aXZlU2l6ZSwgY29uc3QgRmxvYXRSZWN0JiB0YXJnZXRSZWN0
LCBjb25zdCBUcmFuc2Zvcm1hdGlvbk1hdHJpeCYgbW9kZWxWaWV3TWF0cml4LCBmbG9hdCBvcGFj
aXR5LCBjb25zdCBCaXRtYXBUZXh0dXJlKiBtYXNrVGV4dHVyZSwgYm9vbCBmbGlwKQogewotICAg
IFRleHR1cmVNYXBwZXJHTERhdGE6Okdsb2JhbEdMRGF0YTo6U2hhZGVyUHJvZ3JhbUluZGV4IHBy
b2dyYW07CisgICAgVGV4dHVyZU1hcHBlckdMRGF0YTo6U2hhcmVkR0xEYXRhOjpTaGFkZXJQcm9n
cmFtSW5kZXggcHJvZ3JhbTsKICAgICBpZiAobWFza1RleHR1cmUpCi0gICAgICAgIHByb2dyYW0g
PSBUZXh0dXJlTWFwcGVyR0xEYXRhOjpHbG9iYWxHTERhdGE6Ok9wYWNpdHlBbmRNYXNrUHJvZ3Jh
bTsKKyAgICAgICAgcHJvZ3JhbSA9IFRleHR1cmVNYXBwZXJHTERhdGE6OlNoYXJlZEdMRGF0YTo6
T3BhY2l0eUFuZE1hc2tQcm9ncmFtOwogICAgIGVsc2UKLSAgICAgICAgcHJvZ3JhbSA9IFRleHR1
cmVNYXBwZXJHTERhdGE6Okdsb2JhbEdMRGF0YTo6U2ltcGxlUHJvZ3JhbTsKKyAgICAgICAgcHJv
Z3JhbSA9IFRleHR1cmVNYXBwZXJHTERhdGE6OlNoYXJlZEdMRGF0YTo6U2ltcGxlUHJvZ3JhbTsK
IAotICAgIGNvbnN0IFRleHR1cmVNYXBwZXJHTERhdGE6Okdsb2JhbEdMRGF0YTo6UHJvZ3JhbUlu
Zm8mIHByb2dyYW1JbmZvID0gZGF0YSgpLmdsb2JhbEdMRGF0YS5wcm9ncmFtc1twcm9ncmFtXTsK
KyAgICBjb25zdCBUZXh0dXJlTWFwcGVyR0xEYXRhOjpTaGFyZWRHTERhdGE6OlByb2dyYW1JbmZv
JiBwcm9ncmFtSW5mbyA9IGRhdGEoKS5zaGFyZWRHTERhdGEoKS5wcm9ncmFtc1twcm9ncmFtXTsK
ICAgICBHTF9DTUQoZ2xVc2VQcm9ncmFtKHByb2dyYW1JbmZvLmlkKSkKICAgICBkYXRhKCkuY3Vy
cmVudFByb2dyYW0gPSBwcm9ncmFtOwogICAgIEdMX0NNRChnbEVuYWJsZVZlcnRleEF0dHJpYkFy
cmF5KHByb2dyYW1JbmZvLnZlcnRleEF0dHJpYikpCkBAIC00ODcsMTAgKzU1NywxMCBAQCB2b2lk
IFRleHR1cmVNYXBwZXJHTDo6ZHJhd1RleHR1cmUodWludDMyX3QgdGV4dHVyZSwgYm9vbCBvcGFx
dWUsIGNvbnN0IEZsb2F0U2l6ZQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
IDAsIDAsIDEsIDAsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgMCwgZmxp
cCA/IHJlbGF0aXZlU2l6ZS5oZWlnaHQoKSA6IDAsIDAsIDF9OwogCi0gICAgR0xfQ01EKGdsVW5p
Zm9ybU1hdHJpeDRmdihwcm9ncmFtSW5mby52YXJzW1RleHR1cmVNYXBwZXJHTERhdGE6Okdsb2Jh
bEdMRGF0YTo6SW5NYXRyaXhWYXJpYWJsZV0sIDEsIEdMX0ZBTFNFLCBtNCkpCi0gICAgR0xfQ01E
KGdsVW5pZm9ybU1hdHJpeDRmdihwcm9ncmFtSW5mby52YXJzW1RleHR1cmVNYXBwZXJHTERhdGE6
Okdsb2JhbEdMRGF0YTo6SW5Tb3VyY2VNYXRyaXhWYXJpYWJsZV0sIDEsIEdMX0ZBTFNFLCBtNHNy
YykpCi0gICAgR0xfQ01EKGdsVW5pZm9ybTFpKHByb2dyYW1JbmZvLnZhcnNbVGV4dHVyZU1hcHBl
ckdMRGF0YTo6R2xvYmFsR0xEYXRhOjpTb3VyY2VUZXh0dXJlVmFyaWFibGVdLCAwKSkKLSAgICBH
TF9DTUQoZ2xVbmlmb3JtMWYocHJvZ3JhbUluZm8udmFyc1tUZXh0dXJlTWFwcGVyR0xEYXRhOjpH
bG9iYWxHTERhdGE6Ok9wYWNpdHlWYXJpYWJsZV0sIG9wYWNpdHkpKQorICAgIEdMX0NNRChnbFVu
aWZvcm1NYXRyaXg0ZnYocHJvZ3JhbUluZm8udmFyc1tUZXh0dXJlTWFwcGVyR0xEYXRhOjpTaGFy
ZWRHTERhdGE6OkluTWF0cml4VmFyaWFibGVdLCAxLCBHTF9GQUxTRSwgbTQpKQorICAgIEdMX0NN
RChnbFVuaWZvcm1NYXRyaXg0ZnYocHJvZ3JhbUluZm8udmFyc1tUZXh0dXJlTWFwcGVyR0xEYXRh
OjpTaGFyZWRHTERhdGE6OkluU291cmNlTWF0cml4VmFyaWFibGVdLCAxLCBHTF9GQUxTRSwgbTRz
cmMpKQorICAgIEdMX0NNRChnbFVuaWZvcm0xaShwcm9ncmFtSW5mby52YXJzW1RleHR1cmVNYXBw
ZXJHTERhdGE6OlNoYXJlZEdMRGF0YTo6U291cmNlVGV4dHVyZVZhcmlhYmxlXSwgMCkpCisgICAg
R0xfQ01EKGdsVW5pZm9ybTFmKHByb2dyYW1JbmZvLnZhcnNbVGV4dHVyZU1hcHBlckdMRGF0YTo6
U2hhcmVkR0xEYXRhOjpPcGFjaXR5VmFyaWFibGVdLCBvcGFjaXR5KSkKIAogICAgIGlmIChtYXNr
VGV4dHVyZSAmJiBtYXNrVGV4dHVyZS0+aXNWYWxpZCgpKSB7CiAgICAgICAgIGNvbnN0IEJpdG1h
cFRleHR1cmVHTCogbWFza1RleHR1cmVHTCA9IHN0YXRpY19jYXN0PGNvbnN0IEJpdG1hcFRleHR1
cmVHTCo+KG1hc2tUZXh0dXJlKTsKQEAgLTUwMCw4ICs1NzAsOCBAQCB2b2lkIFRleHR1cmVNYXBw
ZXJHTDo6ZHJhd1RleHR1cmUodWludDMyX3QgdGV4dHVyZSwgYm9vbCBvcGFxdWUsIGNvbnN0IEZs
b2F0U2l6ZQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAwLCBtYXNr
VGV4dHVyZUdMLT5yZWxhdGl2ZVNpemUoKS5oZWlnaHQoKSwgMCwgMCwKICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgMCwgMCwgMSwgMCwKICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgMCwgMCwgMCwgMX07Ci0gICAgICAgIEdMX0NNRChnbFVu
aWZvcm1NYXRyaXg0ZnYocHJvZ3JhbUluZm8udmFyc1tUZXh0dXJlTWFwcGVyR0xEYXRhOjpHbG9i
YWxHTERhdGE6OkluTWFza01hdHJpeFZhcmlhYmxlXSwgMSwgR0xfRkFMU0UsIG00bWFzaykpOwot
ICAgICAgICBHTF9DTUQoZ2xVbmlmb3JtMWkocHJvZ3JhbUluZm8udmFyc1tUZXh0dXJlTWFwcGVy
R0xEYXRhOjpHbG9iYWxHTERhdGE6Ok1hc2tUZXh0dXJlVmFyaWFibGVdLCAxKSkKKyAgICAgICAg
R0xfQ01EKGdsVW5pZm9ybU1hdHJpeDRmdihwcm9ncmFtSW5mby52YXJzW1RleHR1cmVNYXBwZXJH
TERhdGE6OlNoYXJlZEdMRGF0YTo6SW5NYXNrTWF0cml4VmFyaWFibGVdLCAxLCBHTF9GQUxTRSwg
bTRtYXNrKSk7CisgICAgICAgIEdMX0NNRChnbFVuaWZvcm0xaShwcm9ncmFtSW5mby52YXJzW1Rl
eHR1cmVNYXBwZXJHTERhdGE6OlNoYXJlZEdMRGF0YTo6TWFza1RleHR1cmVWYXJpYWJsZV0sIDEp
KQogICAgICAgICBHTF9DTUQoZ2xBY3RpdmVUZXh0dXJlKEdMX1RFWFRVUkUwKSkKICAgICB9CiAK
QEAgLTY3MCw3ICs3NDAsNyBAQCBzdGF0aWMgaW5saW5lIFRyYW5zZm9ybWF0aW9uTWF0cml4IGNy
ZWF0ZVByb2plY3Rpb25NYXRyaXgoY29uc3QgSW50U2l6ZSYgc2l6ZSwgYgogCiB2b2lkIEJpdG1h
cFRleHR1cmVHTDo6YmluZCgpCiB7Ci0gICAgaW50JiBzdGVuY2lsSW5kZXggPSBUZXh0dXJlTWFw
cGVyR0xEYXRhOjpnbG9iYWxHTERhdGEuc3RlbmNpbEluZGV4OworICAgIGludCYgc3RlbmNpbElu
ZGV4ID0gbV90ZXh0dXJlTWFwcGVyLT5kYXRhKCkuc2hhcmVkR0xEYXRhKCkuc3RlbmNpbEluZGV4
OwogICAgIGlmIChtX3N1cmZhY2VOZWVkc1Jlc2V0IHx8ICFtX2ZibykgewogICAgICAgICBpZiAo
IW1fZmJvKQogICAgICAgICAgICAgR0xfQ01EKGdsR2VuRnJhbWVidWZmZXJzKDEsICZtX2Zibykp
CkBAIC03NDMsNyArODEzLDcgQEAgdm9pZCBUZXh0dXJlTWFwcGVyR0w6OmJpbmRTdXJmYWNlKEJp
dG1hcFRleHR1cmUgKnN1cmZhY2VQb2ludGVyKQogICAgIGlmICghc3VyZmFjZSkgewogICAgICAg
ICBHTF9DTUQoZ2xCaW5kRnJhbWVidWZmZXIoR0xfRlJBTUVCVUZGRVIsIDApKQogICAgICAgICBk
YXRhKCkucHJvamVjdGlvbk1hdHJpeCA9IGNyZWF0ZVByb2plY3Rpb25NYXRyaXgodmlld3BvcnRT
aXplKCksIHRydWUpLm11bHRpcGx5KHRyYW5zZm9ybSgpKTsKLSAgICAgICAgR0xfQ01EKGdsU3Rl
bmNpbEZ1bmMoZGF0YSgpLmdsb2JhbEdMRGF0YS5zdGVuY2lsSW5kZXggPiAxID8gR0xfRVFVQUwg
OiBHTF9BTFdBWVMsIGRhdGEoKS5nbG9iYWxHTERhdGEuc3RlbmNpbEluZGV4IC0gMSwgZGF0YSgp
Lmdsb2JhbEdMRGF0YS5zdGVuY2lsSW5kZXggLSAxKSkKKyAgICAgICAgR0xfQ01EKGdsU3RlbmNp
bEZ1bmMoZGF0YSgpLnNoYXJlZEdMRGF0YSgpLnN0ZW5jaWxJbmRleCA+IDEgPyBHTF9FUVVBTCA6
IEdMX0FMV0FZUywgZGF0YSgpLnNoYXJlZEdMRGF0YSgpLnN0ZW5jaWxJbmRleCAtIDEsIGRhdGEo
KS5zaGFyZWRHTERhdGEoKS5zdGVuY2lsSW5kZXggLSAxKSkKICAgICAgICAgR0xfQ01EKGdsU3Rl
bmNpbE9wKEdMX0tFRVAsIEdMX0tFRVAsIEdMX0tFRVApKQogICAgICAgICBHTF9DTUQoZ2xWaWV3
cG9ydCgwLCAwLCB2aWV3cG9ydFNpemUoKS53aWR0aCgpLCB2aWV3cG9ydFNpemUoKS5oZWlnaHQo
KSkpCiAgICAgICAgIHJldHVybjsKQEAgLTc1NCw4ICs4MjQsOCBAQCB2b2lkIFRleHR1cmVNYXBw
ZXJHTDo6YmluZFN1cmZhY2UoQml0bWFwVGV4dHVyZSAqc3VyZmFjZVBvaW50ZXIpCiAKIHZvaWQg
VGV4dHVyZU1hcHBlckdMOjpiZWdpbkNsaXAoY29uc3QgVHJhbnNmb3JtYXRpb25NYXRyaXgmIG1v
ZGVsVmlld01hdHJpeCwgY29uc3QgRmxvYXRSZWN0JiB0YXJnZXRSZWN0KQogewotICAgIFRleHR1
cmVNYXBwZXJHTERhdGE6Okdsb2JhbEdMRGF0YTo6U2hhZGVyUHJvZ3JhbUluZGV4IHByb2dyYW0g
PSBUZXh0dXJlTWFwcGVyR0xEYXRhOjpHbG9iYWxHTERhdGE6OkNsaXBQcm9ncmFtOwotICAgIGNv
bnN0IFRleHR1cmVNYXBwZXJHTERhdGE6Okdsb2JhbEdMRGF0YTo6UHJvZ3JhbUluZm8mIHByb2dy
YW1JbmZvID0gZGF0YSgpLmdsb2JhbEdMRGF0YS5wcm9ncmFtc1twcm9ncmFtXTsKKyAgICBUZXh0
dXJlTWFwcGVyR0xEYXRhOjpTaGFyZWRHTERhdGE6OlNoYWRlclByb2dyYW1JbmRleCBwcm9ncmFt
ID0gVGV4dHVyZU1hcHBlckdMRGF0YTo6U2hhcmVkR0xEYXRhOjpDbGlwUHJvZ3JhbTsKKyAgICBj
b25zdCBUZXh0dXJlTWFwcGVyR0xEYXRhOjpTaGFyZWRHTERhdGE6OlByb2dyYW1JbmZvJiBwcm9n
cmFtSW5mbyA9IGRhdGEoKS5zaGFyZWRHTERhdGEoKS5wcm9ncmFtc1twcm9ncmFtXTsKICAgICBH
TF9DTUQoZ2xVc2VQcm9ncmFtKHByb2dyYW1JbmZvLmlkKSkKICAgICBHTF9DTUQoZ2xFbmFibGVW
ZXJ0ZXhBdHRyaWJBcnJheShwcm9ncmFtSW5mby52ZXJ0ZXhBdHRyaWIpKQogICAgIGNvbnN0IEdM
ZmxvYXQgdW5pdFJlY3RbXSA9IHswLCAwLCAxLCAwLCAxLCAxLCAwLCAxfTsKQEAgLTc3NSw5ICs4
NDUsOSBAQCB2b2lkIFRleHR1cmVNYXBwZXJHTDo6YmVnaW5DbGlwKGNvbnN0IFRyYW5zZm9ybWF0
aW9uTWF0cml4JiBtb2RlbFZpZXdNYXRyaXgsIGNvbgogICAgICAgICBtYXRyaXgubTQxKCksIG1h
dHJpeC5tNDIoKSwgbWF0cml4Lm00MygpLCBtYXRyaXgubTQ0KCkKICAgICB9OwogCi0gICAgaW50
JiBzdGVuY2lsSW5kZXggPSBkYXRhKCkuZ2xvYmFsR0xEYXRhLnN0ZW5jaWxJbmRleDsKKyAgICBp
bnQmIHN0ZW5jaWxJbmRleCA9IGRhdGEoKS5zaGFyZWRHTERhdGEoKS5zdGVuY2lsSW5kZXg7CiAK
LSAgICBHTF9DTUQoZ2xVbmlmb3JtTWF0cml4NGZ2KHByb2dyYW1JbmZvLnZhcnNbVGV4dHVyZU1h
cHBlckdMRGF0YTo6R2xvYmFsR0xEYXRhOjpJbk1hdHJpeFZhcmlhYmxlXSwgMSwgR0xfRkFMU0Us
IG00KSkKKyAgICBHTF9DTUQoZ2xVbmlmb3JtTWF0cml4NGZ2KHByb2dyYW1JbmZvLnZhcnNbVGV4
dHVyZU1hcHBlckdMRGF0YTo6U2hhcmVkR0xEYXRhOjpJbk1hdHJpeFZhcmlhYmxlXSwgMSwgR0xf
RkFMU0UsIG00KSkKICAgICBHTF9DTUQoZ2xFbmFibGUoR0xfU1RFTkNJTF9URVNUKSkKICAgICBH
TF9DTUQoZ2xTdGVuY2lsRnVuYyhHTF9ORVZFUiwgc3RlbmNpbEluZGV4LCBzdGVuY2lsSW5kZXgp
KQogICAgIEdMX0NNRChnbFN0ZW5jaWxPcChHTF9SRVBMQUNFLCBHTF9SRVBMQUNFLCBHTF9SRVBM
QUNFKSkKQEAgLTc5MSw4ICs4NjEsOCBAQCB2b2lkIFRleHR1cmVNYXBwZXJHTDo6YmVnaW5DbGlw
KGNvbnN0IFRyYW5zZm9ybWF0aW9uTWF0cml4JiBtb2RlbFZpZXdNYXRyaXgsIGNvbgogCiB2b2lk
IFRleHR1cmVNYXBwZXJHTDo6ZW5kQ2xpcCgpCiB7Ci0gICAgZGF0YSgpLmdsb2JhbEdMRGF0YS5z
dGVuY2lsSW5kZXggPj49IDE7Ci0gICAgZ2xTdGVuY2lsRnVuYyhkYXRhKCkuZ2xvYmFsR0xEYXRh
LnN0ZW5jaWxJbmRleCA+IDEgPyBHTF9FUVVBTCA6IEdMX0FMV0FZUywgZGF0YSgpLmdsb2JhbEdM
RGF0YS5zdGVuY2lsSW5kZXggLSAxLCBkYXRhKCkuZ2xvYmFsR0xEYXRhLnN0ZW5jaWxJbmRleCAt
IDEpOworICAgIGRhdGEoKS5zaGFyZWRHTERhdGEoKS5zdGVuY2lsSW5kZXggPj49IDE7CisgICAg
Z2xTdGVuY2lsRnVuYyhkYXRhKCkuc2hhcmVkR0xEYXRhKCkuc3RlbmNpbEluZGV4ID4gMSA/IEdM
X0VRVUFMIDogR0xfQUxXQVlTLCBkYXRhKCkuc2hhcmVkR0xEYXRhKCkuc3RlbmNpbEluZGV4IC0g
MSwgZGF0YSgpLnNoYXJlZEdMRGF0YSgpLnN0ZW5jaWxJbmRleCAtIDEpOwogfQogCiBQYXNzUmVm
UHRyPEJpdG1hcFRleHR1cmU+IFRleHR1cmVNYXBwZXJHTDo6Y3JlYXRlVGV4dHVyZSgpCmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9DaGFuZ2VMb2cgYi9Tb3VyY2UvV2ViS2l0Mi9DaGFuZ2VM
b2cKaW5kZXggMDQ3MzBmNC4uZDEyZDA3OSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvQ2hh
bmdlTG9nCisrKyBiL1NvdXJjZS9XZWJLaXQyL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE3IEBACisy
MDEyLTAxLTA4ICBWaWF0Y2hlc2xhdiBPc3RhcGVua28gIDxvc3RhcGVua28udmlhdGNoZXNsYXZA
bm9raWEuY29tPgorCisgICAgICAgIFtRdF1bV0syXVJFR1JFU1NJT04ocjEwMjQzNSk6IEl0IG1h
ZGUgdHN0X1FRdWlja1dlYlZpZXc6OnNob3coKSBjcmFzaAorICAgICAgICBodHRwczovL2J1Z3Mu
d2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9NzQxNzYKKworICAgICAgICBSZXZpZXdlZCBieSBO
T0JPRFkgKE9PUFMhKS4KKworICAgICAgICBDaGVjayB0ZXh0dXJlIG1hcHBlciBleGlzdHMgYWxy
ZWFkeSBpbiBlbnN1cmVSb290TGF5ZXIgdG8gYXZvaWQgcmVjcmVjYXRpb24uCisgICAgICAgIENo
ZWNrIGlmIHJvb3QgbGF5ZXIgd2FzIGRlbGV0ZWQgYWxyZWFkeSBpbiBwdXJnZUdMUmVzb3VyY2Vz
LgorCisgICAgICAgICogVUlQcm9jZXNzL3F0L0xheWVyVHJlZUhvc3RQcm94eVF0LmNwcDoKKyAg
ICAgICAgKFdlYktpdDo6TGF5ZXJUcmVlSG9zdFByb3h5OjplbnN1cmVSb290TGF5ZXIpOgorICAg
ICAgICAoV2ViS2l0OjpMYXllclRyZWVIb3N0UHJveHk6OnB1cmdlR0xSZXNvdXJjZXMpOgorCiAy
MDEyLTAxLTA2ICBNYXJrIFJvd2UgIDxtcm93ZUBhcHBsZS5jb20+CiAKICAgICAgICAgUkVHUkVT
U0lPTiAoV2ViS2l0Mik6IFNhdmUgYXMgUERGIG5vIGxvbmdlciBnZW5lcmF0ZXMgbGlua3MgdG8g
VVJMcwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL3F0L0xheWVyVHJlZUhv
c3RQcm94eVF0LmNwcCBiL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9xdC9MYXllclRyZWVIb3N0
UHJveHlRdC5jcHAKaW5kZXggYTFkZDI3Mi4uNjA3MzZiMSAxMDA2NDQKLS0tIGEvU291cmNlL1dl
YktpdDIvVUlQcm9jZXNzL3F0L0xheWVyVHJlZUhvc3RQcm94eVF0LmNwcAorKysgYi9Tb3VyY2Uv
V2ViS2l0Mi9VSVByb2Nlc3MvcXQvTGF5ZXJUcmVlSG9zdFByb3h5UXQuY3BwCkBAIC00NjAsNyAr
NDYwLDggQEAgdm9pZCBMYXllclRyZWVIb3N0UHJveHk6OmVuc3VyZVJvb3RMYXllcigpCiAKICAg
ICAvLyBUaGUgcm9vdCBsYXllciBzaG91bGQgbm90IGhhdmUgemVybyBzaXplLCBvciBpdCB3b3Vs
ZCBiZSBvcHRpbWl6ZWQgb3V0LgogICAgIG1fcm9vdExheWVyLT5zZXRTaXplKEZsb2F0U2l6ZSgx
LjAsIDEuMCkpOwotICAgIG1fdGV4dHVyZU1hcHBlciA9IFRleHR1cmVNYXBwZXJHTDo6Y3JlYXRl
KCk7CisgICAgaWYgKCFtX3RleHR1cmVNYXBwZXIpCisgICAgICAgIG1fdGV4dHVyZU1hcHBlciA9
IFRleHR1cmVNYXBwZXJHTDo6Y3JlYXRlKCk7CiAgICAgdG9UZXh0dXJlTWFwcGVyTm9kZShtX3Jv
b3RMYXllci5nZXQoKSktPnNldFRleHR1cmVNYXBwZXIobV90ZXh0dXJlTWFwcGVyLmdldCgpKTsK
IH0KIApAQCAtNjIzLDcgKzYyNCw5IEBAIHZvaWQgTGF5ZXJUcmVlSG9zdFByb3h5OjpwdXJnZUdM
UmVzb3VyY2VzKCkKIHsKICAgICBUZXh0dXJlTWFwcGVyTm9kZSogbm9kZSA9IHRvVGV4dHVyZU1h
cHBlck5vZGUocm9vdExheWVyKCkpOwogCi0gICAgbm9kZS0+cHVyZ2VOb2RlVGV4dHVyZXNSZWN1
cnNpdmUoKTsKKyAgICBpZiAobm9kZSkKKyAgICAgICAgbm9kZS0+cHVyZ2VOb2RlVGV4dHVyZXNS
ZWN1cnNpdmUoKTsKKwogICAgIG1fZGlyZWN0bHlDb21wb3NpdGVkSW1hZ2VzLmNsZWFyKCk7CiAK
ICAgICBtX3RleHR1cmVNYXBwZXIuY2xlYXIoKTsK
</data>
<flag name="commit-queue"
          id="122133"
          type_id="3"
          status="-"
          setter="webkit-ews"
    />
          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>121605</attachid>
            <date>2012-01-08 17:39:21 -0800</date>
            <delta_ts>2012-01-09 16:29:08 -0800</delta_ts>
            <desc>Use QGLContext compatible with previous Qt version</desc>
            <filename>GL_resources_dealloc_fix_02.diff</filename>
            <type>text/plain</type>
            <size>15887</size>
            <attacher name="Viatcheslav Ostapenko">ostap73</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJDb3JlL0No
YW5nZUxvZwppbmRleCA3ZjZlZGM5Li5mYjQ4NGYzIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29y
ZS9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMzMg
QEAKKzIwMTItMDEtMDggIFZpYXRjaGVzbGF2IE9zdGFwZW5rbyAgPG9zdGFwZW5rby52aWF0Y2hl
c2xhdkBub2tpYS5jb20+CisKKyAgICAgICAgW1F0XVtXSzJdUkVHUkVTU0lPTihyMTAyNDM1KTog
SXQgbWFkZSB0c3RfUVF1aWNrV2ViVmlldzo6c2hvdygpIGNyYXNoCisgICAgICAgIGh0dHBzOi8v
YnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD03NDE3NgorCisgICAgICAgIFJldmlld2Vk
IGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIFJlcGxhY2VzIHN0YXRpYyBnbG9iYWwgR0wg
cmVzb3VyY2UgaG9sZGVyIHdpdGggaG9sZGVyIHNoYXJlZCBiZXR3ZWVuCisgICAgICAgIFRleHR1
cmVNYXBwZXJHTCBpbnN0YW5jZXMgY3JlYXRlZCBvbiB0aGUgc2FtZSBHTCBjb250ZXh0LiBBbHNv
IGFkZHMKKyAgICAgICAgZGVhbGxvY2F0aW9uIG9mIEdMIHJlc291cmNlcyB3aGVuIGxhc3QgVGV4
dHVyZU1hcHBlckdMIGluc3RhbmNlIG9uIHRoZSAKKyAgICAgICAgY3VycmVudCBHTCBjb250ZXh0
IGdldHMgZGVsZXRlZC4KKworICAgICAgICBGaXhlcyByZWdyZXNzaW9uIGNvdmVyZWQgYnkgZXhp
c3RpbmcgQVBJIHRlc3RzLgorCisgICAgICAgICogcGxhdGZvcm0vZ3JhcGhpY3Mvb3BlbmdsL1Rl
eHR1cmVNYXBwZXJHTC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpUZXh0dXJlTWFwcGVyR0xEYXRh
OjpTaGFyZWRHTERhdGE6OmdldEN1cnJlbnRHTENvbnRleHQpOgorICAgICAgICAoV2ViQ29yZTo6
VGV4dHVyZU1hcHBlckdMRGF0YTo6U2hhcmVkR0xEYXRhOjpnbENvbnRleHREYXRhTWFwKToKKyAg
ICAgICAgKFdlYkNvcmU6OlRleHR1cmVNYXBwZXJHTERhdGE6OlNoYXJlZEdMRGF0YTo6Y3VyZW50
U2hhcmVkR0xEYXRhKToKKyAgICAgICAgKFdlYkNvcmU6OlRleHR1cmVNYXBwZXJHTERhdGE6OlNo
YXJlZEdMRGF0YTo6ZGVsZXRlU2hhZGVyUHJvZ3JhbSk6CisgICAgICAgIChXZWJDb3JlOjpUZXh0
dXJlTWFwcGVyR0xEYXRhOjpTaGFyZWRHTERhdGE6OlNoYXJlZEdMRGF0YSk6CisgICAgICAgIChX
ZWJDb3JlOjpUZXh0dXJlTWFwcGVyR0xEYXRhOjpTaGFyZWRHTERhdGE6On5TaGFyZWRHTERhdGEp
OgorICAgICAgICAoV2ViQ29yZTo6VGV4dHVyZU1hcHBlckdMRGF0YTo6c2hhcmVkR0xEYXRhKToK
KyAgICAgICAgKFdlYkNvcmU6OlRleHR1cmVNYXBwZXJHTERhdGE6OlRleHR1cmVNYXBwZXJHTERh
dGEpOgorICAgICAgICAoV2ViQ29yZTo6VGV4dHVyZU1hcHBlckdMOjppbml0aWFsaXplU2hhZGVy
cyk6CisgICAgICAgIChXZWJDb3JlOjpUZXh0dXJlTWFwcGVyR0w6OmRyYXdUZXh0dXJlKToKKyAg
ICAgICAgKFdlYkNvcmU6OkJpdG1hcFRleHR1cmVHTDo6YmluZCk6CisgICAgICAgIChXZWJDb3Jl
OjpUZXh0dXJlTWFwcGVyR0w6OmJpbmRTdXJmYWNlKToKKyAgICAgICAgKFdlYkNvcmU6OlRleHR1
cmVNYXBwZXJHTDo6YmVnaW5DbGlwKToKKyAgICAgICAgKFdlYkNvcmU6OlRleHR1cmVNYXBwZXJH
TDo6ZW5kQ2xpcCk6CisKIDIwMTItMDEtMDcgIENocmlzIE1hcnJpbiAgPGNtYXJyaW5AYXBwbGUu
Y29tPgogCiAgICAgICAgIEZpeGVkIEFOR0xFIGJ1aWxkIGZvciBHTlUgYW5kIFFUIGJyb2tlbiBp
biBodHRwczovL3RyYWMud2Via2l0Lm9yZy9jaGFuZ2VzZXQvMTA0MzYzCmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9vcGVuZ2wvVGV4dHVyZU1hcHBlckdMLmNw
cCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL29wZW5nbC9UZXh0dXJlTWFwcGVy
R0wuY3BwCmluZGV4IDI4ZWUyYmEuLjg5Yzc1ZjUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3Jl
L3BsYXRmb3JtL2dyYXBoaWNzL29wZW5nbC9UZXh0dXJlTWFwcGVyR0wuY3BwCisrKyBiL1NvdXJj
ZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL29wZW5nbC9UZXh0dXJlTWFwcGVyR0wuY3BwCkBA
IC0zMSw2ICszMSw3IEBACiAjaW5jbHVkZSA8d3RmL1JlZkNvdW50ZWQuaD4KIAogI2lmIFBMQVRG
T1JNKFFUKQorI2luY2x1ZGUgPFFHTENvbnRleHQ+CiAjaW5jbHVkZSA8Y2Fpcm8vT3BlbkdMU2hp
bXMuaD4KICNlbGlmIGRlZmluZWQoVEVYTUFQX09QRU5HTF9FU18yKQogI2luY2x1ZGUgPEdMRVMy
L2dsMi5oPgpAQCAtMzksNiArNDAsNyBAQAogI2luY2x1ZGUgPGdsLmg+CiAjZWxzZQogI2luY2x1
ZGUgPEdML2dsLmg+CisjaW5jbHVkZSA8R0wvZ2x4Lmg+CiAjZW5kaWYKIAogI2lmICFkZWZpbmVk
KFRFWE1BUF9PUEVOR0xfRVNfMikgJiYgIVBMQVRGT1JNKFFUKQpAQCAtMTAzLDcgKzEwNSwzOCBA
QCBpbmxpbmUgc3RhdGljIHZvaWQgZGVidWdHTENvbW1hbmQoY29uc3QgY2hhciogY29tbWFuZCwg
aW50IGxpbmUpCiAjZW5kaWYKIAogc3RydWN0IFRleHR1cmVNYXBwZXJHTERhdGEgewotICAgIHN0
YXRpYyBzdHJ1Y3QgR2xvYmFsR0xEYXRhIHsKKyAgICBzdHJ1Y3QgU2hhcmVkR0xEYXRhIDogcHVi
bGljIFJlZkNvdW50ZWQ8U2hhcmVkR0xEYXRhPiB7CisjaWYgUExBVEZPUk0oUVQpCisgICAgICAg
IHR5cGVkZWYgUUdMQ29udGV4dCogR0xDb250ZXh0OworICAgICAgICBzdGF0aWMgR0xDb250ZXh0
IGdldEN1cnJlbnRHTENvbnRleHQoKQorICAgICAgICB7CisgICAgICAgICAgICByZXR1cm4gY29u
c3RfY2FzdDxHTENvbnRleHQ+KFFHTENvbnRleHQ6OmN1cnJlbnRDb250ZXh0KCkpOworICAgICAg
ICB9CisjZWxzZQorICAgICAgICB0eXBlZGVmIEdMWENvbnRleHQgR0xDb250ZXh0OworICAgICAg
ICBzdGF0aWMgR0xDb250ZXh0IGdldEN1cnJlbnRHTENvbnRleHQoKQorICAgICAgICB7CisgICAg
ICAgICAgICByZXR1cm4gZ2xYR2V0Q3VycmVudENvbnRleHQoKTsKKyAgICAgICAgfQorI2VuZGlm
CisKKyAgICAgICAgdHlwZWRlZiBIYXNoTWFwPEdMQ29udGV4dCwgU2hhcmVkR0xEYXRhKj4gR0xD
b250ZXh0RGF0YU1hcDsKKyAgICAgICAgc3RhdGljIEdMQ29udGV4dERhdGFNYXAmIGdsQ29udGV4
dERhdGFNYXAoKQorICAgICAgICB7CisgICAgICAgICAgICBzdGF0aWMgR0xDb250ZXh0RGF0YU1h
cCBtYXA7CisgICAgICAgICAgICByZXR1cm4gbWFwOworICAgICAgICB9CisKKyAgICAgICAgc3Rh
dGljIFNoYXJlZEdMRGF0YSogY3VyZW50U2hhcmVkR0xEYXRhKCkKKyAgICAgICAgeworICAgICAg
ICAgICAgR0xDb250ZXh0IGN1cnJlbnRHTENvbmV4dCA9IGdldEN1cnJlbnRHTENvbnRleHQoKTsK
KyAgICAgICAgICAgIEdMQ29udGV4dERhdGFNYXA6Oml0ZXJhdG9yIGl0ID0gZ2xDb250ZXh0RGF0
YU1hcCgpLmZpbmQoY3VycmVudEdMQ29uZXh0KTsKKyAgICAgICAgICAgIGlmIChpdCAhPSBnbENv
bnRleHREYXRhTWFwKCkuZW5kKCkpCisgICAgICAgICAgICAgICAgcmV0dXJuIGl0LT5zZWNvbmQ7
CisKKyAgICAgICAgICAgIHJldHVybiBuZXcgU2hhcmVkR0xEYXRhKGdldEN1cnJlbnRHTENvbnRl
eHQoKSk7CisgICAgICAgIH0KKwogICAgICAgICBlbnVtIFNoYWRlclByb2dyYW1JbmRleCB7CiAg
ICAgICAgICAgICBOb1Byb2dyYW0gPSAtMSwKICAgICAgICAgICAgIFNpbXBsZVByb2dyYW0sCkBA
IC0xNTEsMTQgKzE4NCw0NyBAQCBzdHJ1Y3QgVGV4dHVyZU1hcHBlckdMRGF0YSB7CiAgICAgICAg
ICAgICBwcm9ncmFtc1tpbmRleF0uaWQgPSBwcm9ncmFtSUQ7CiAgICAgICAgIH0KIAorICAgICAg
ICB2b2lkIGRlbGV0ZVNoYWRlclByb2dyYW0oU2hhZGVyUHJvZ3JhbUluZGV4IGluZGV4KQorICAg
ICAgICB7CisgICAgICAgICAgICBHTHVpbnQgc2hhZGVyc1s0XTsKKyAgICAgICAgICAgIEdMc2l6
ZWkgc2hhZGVyQ291bnQgPSAwOworICAgICAgICAgICAgR0x1aW50IHByb2dyYW1JRCA9IHByb2dy
YW1zW2luZGV4XS5pZDsKKyAgICAgICAgICAgIEdMX0NNRChnbEdldEF0dGFjaGVkU2hhZGVycyhw
cm9ncmFtSUQsIHNpemVvZihzaGFkZXJzKSAvIHNpemVvZihHTHVpbnQpLCAmc2hhZGVyQ291bnQs
IHNoYWRlcnMpKQorICAgICAgICAgICAgZm9yIChpbnQgaSA9IDA7IGkgPCBzaGFkZXJDb3VudDsg
aSsrKSB7CisgICAgICAgICAgICAgICAgR0xfQ01EKGdsRGV0YWNoU2hhZGVyKHByb2dyYW1JRCwg
c2hhZGVyc1tpXSkpCisgICAgICAgICAgICAgICAgR0xfQ01EKGdsRGVsZXRlU2hhZGVyKHNoYWRl
cnNbaV0pKQorICAgICAgICAgICAgfQorICAgICAgICAgICAgR0xfQ01EKGdsRGVsZXRlUHJvZ3Jh
bShwcm9ncmFtSUQpKQorICAgICAgICB9CisKICAgICAgICAgUHJvZ3JhbUluZm8gcHJvZ3JhbXNb
UHJvZ3JhbUNvdW50XTsKIAogICAgICAgICBpbnQgc3RlbmNpbEluZGV4OworICAgICAgICBib29s
IGluaXRpYWxpemVkOworCisgICAgICAgIFNoYXJlZEdMRGF0YShHTENvbnRleHQgZ2xDb250ZXh0
KSA6IHN0ZW5jaWxJbmRleCgxKSwgaW5pdGlhbGl6ZWQoZmFsc2UpCisgICAgICAgIHsKKyAgICAg
ICAgICAgIGdsQ29udGV4dERhdGFNYXAoKS5hZGQoZ2xDb250ZXh0LCB0aGlzKTsKKyAgICAgICAg
fQorCisgICAgICAgIH5TaGFyZWRHTERhdGEoKQorICAgICAgICB7CisgICAgICAgICAgICBpZiAo
aW5pdGlhbGl6ZWQpIHsKKyAgICAgICAgICAgICAgICBmb3IgKGludCBpID0gU2ltcGxlUHJvZ3Jh
bTsgaSA8IFByb2dyYW1Db3VudDsgKytpKQorICAgICAgICAgICAgICAgICAgICBkZWxldGVTaGFk
ZXJQcm9ncmFtKFNoYWRlclByb2dyYW1JbmRleChpKSk7CisgICAgICAgICAgICB9CiAKLSAgICAg
ICAgR2xvYmFsR0xEYXRhKCkKLSAgICAgICAgICAgIDogc3RlbmNpbEluZGV4KDEpCi0gICAgICAg
IHsgfQotICAgIH0gZ2xvYmFsR0xEYXRhOworICAgICAgICAgICAgR0xDb250ZXh0RGF0YU1hcDo6
Y29uc3RfaXRlcmF0b3IgbWFwRW5kID0gIGdsQ29udGV4dERhdGFNYXAoKS5lbmQoKTsKKyAgICAg
ICAgICAgIEdMQ29udGV4dERhdGFNYXA6Oml0ZXJhdG9yIGk7CisgICAgICAgICAgICBmb3IgKGkg
PSBnbENvbnRleHREYXRhTWFwKCkuYmVnaW4oKTsgaSAhPSBtYXBFbmQ7ICsraSkKKyAgICAgICAg
ICAgICAgICBpZiAoaS0+c2Vjb25kID09IHRoaXMpCisgICAgICAgICAgICAgICAgICAgIGJyZWFr
OworCisgICAgICAgICAgICBBU1NFUlQoaSAhPSBtYXBFbmQpOworICAgICAgICAgICAgZ2xDb250
ZXh0RGF0YU1hcCgpLnJlbW92ZShpKTsKKyAgICAgICAgfQorCisgICAgfTsKIAogICAgIHN0cnVj
dCBEaXJlY3RseUNvbXBvc2l0ZWRJbWFnZVJlcG9zaXRvcnkgewogICAgICAgICBzdHJ1Y3QgRW50
cnkgewpAQCAtMjExLDE3ICsyNzcsMjIgQEAgc3RydWN0IFRleHR1cmVNYXBwZXJHTERhdGEgewog
ICAgICAgICB9CiAgICAgfSBkaXJlY3RseUNvbXBvc2l0ZWRJbWFnZXM7CiAKKyAgICBTaGFyZWRH
TERhdGEmIHNoYXJlZEdMRGF0YSgpIGNvbnN0CisgICAgeworICAgICAgICByZXR1cm4gKihtX3No
YXJlZEdMRGF0YS5nZXQoKSk7CisgICAgfQorCiAgICAgVGV4dHVyZU1hcHBlckdMRGF0YSgpCi0g
ICAgICAgIDogY3VycmVudFByb2dyYW0oVGV4dHVyZU1hcHBlckdMRGF0YTo6R2xvYmFsR0xEYXRh
OjpOb1Byb2dyYW0pCisgICAgICAgIDogY3VycmVudFByb2dyYW0oU2hhcmVkR0xEYXRhOjpOb1By
b2dyYW0pCisgICAgICAgICwgbV9zaGFyZWRHTERhdGEoYWRvcHRSZWYoU2hhcmVkR0xEYXRhOjpj
dXJlbnRTaGFyZWRHTERhdGEoKSkpCiAgICAgeyB9CiAKICAgICBUcmFuc2Zvcm1hdGlvbk1hdHJp
eCBwcm9qZWN0aW9uTWF0cml4OwogICAgIGludCBjdXJyZW50UHJvZ3JhbTsKICAgICBpbnQgcHJl
dmlvdXNQcm9ncmFtOworICAgIFJlZlB0cjxTaGFyZWRHTERhdGE+IG1fc2hhcmVkR0xEYXRhOwog
fTsKIAotVGV4dHVyZU1hcHBlckdMRGF0YTo6R2xvYmFsR0xEYXRhIFRleHR1cmVNYXBwZXJHTERh
dGE6Omdsb2JhbEdMRGF0YTsKLQogY2xhc3MgQml0bWFwVGV4dHVyZUdMIDogcHVibGljIEJpdG1h
cFRleHR1cmUgewogcHVibGljOgogICAgIHZpcnR1YWwgdm9pZCBkZXN0cm95KCk7CkBAIC0yODks
MTEgKzM2MCwxMSBAQCBwcml2YXRlOgogfTsKIAogI2RlZmluZSBURVhNQVBfR0VUX1NIQURFUl9W
QVJfTE9DQVRJT04ocHJvZywgdmFyKSBcCi0gICAgaWYgKFRleHR1cmVNYXBwZXJHTERhdGE6Omds
b2JhbEdMRGF0YS5nZXRVbmlmb3JtTG9jYXRpb24oVGV4dHVyZU1hcHBlckdMRGF0YTo6Z2xvYmFs
R0xEYXRhLnByb2cjI1Byb2dyYW0sIFRleHR1cmVNYXBwZXJHTERhdGE6Omdsb2JhbEdMRGF0YS52
YXIjI1ZhcmlhYmxlLCAjdmFyKSA8IDApIFwKKyAgICBpZiAoZGF0YSgpLnNoYXJlZEdMRGF0YSgp
LmdldFVuaWZvcm1Mb2NhdGlvbihkYXRhKCkuc2hhcmVkR0xEYXRhKCkucHJvZyMjUHJvZ3JhbSwg
ZGF0YSgpLnNoYXJlZEdMRGF0YSgpLnZhciMjVmFyaWFibGUsICN2YXIpIDwgMCkgXAogICAgICAg
ICAgICAgTE9HX0VSUk9SKCJDb3VsZG4ndCBmaW5kIHZhcmlhYmxlICIjdmFyIiBpbiBwcm9ncmFt
ICIjcHJvZyJcbiIpOwogCiAjZGVmaW5lIFRFWE1BUF9CVUlMRF9TSEFERVIocHJvZ3JhbSkgXAot
ICAgIFRleHR1cmVNYXBwZXJHTERhdGE6Omdsb2JhbEdMRGF0YS5jcmVhdGVTaGFkZXJQcm9ncmFt
KHZlcnRleFNoYWRlclNvdXJjZSMjcHJvZ3JhbSwgZnJhZ21lbnRTaGFkZXJTb3VyY2UjI3Byb2dy
YW0sIFRleHR1cmVNYXBwZXJHTERhdGE6Omdsb2JhbEdMRGF0YS5wcm9ncmFtIyNQcm9ncmFtKTsK
KyAgICBkYXRhKCkuc2hhcmVkR0xEYXRhKCkuY3JlYXRlU2hhZGVyUHJvZ3JhbSh2ZXJ0ZXhTaGFk
ZXJTb3VyY2UjI3Byb2dyYW0sIGZyYWdtZW50U2hhZGVyU291cmNlIyNwcm9ncmFtLCBkYXRhKCku
c2hhcmVkR0xEYXRhKCkucHJvZ3JhbSMjUHJvZ3JhbSk7CiAKIFRleHR1cmVNYXBwZXJHTDo6VGV4
dHVyZU1hcHBlckdMKCkKICAgICA6IG1fZGF0YShuZXcgVGV4dHVyZU1hcHBlckdMRGF0YSkKQEAg
LTMwMywxMCArMzc0LDkgQEAgVGV4dHVyZU1hcHBlckdMOjpUZXh0dXJlTWFwcGVyR0woKQogCiB2
b2lkIFRleHR1cmVNYXBwZXJHTDo6aW5pdGlhbGl6ZVNoYWRlcnMoKQogewotICAgIHN0YXRpYyBi
b29sIHNoYWRlcnNDb21waWxlZCA9IGZhbHNlOwotICAgIGlmIChzaGFkZXJzQ29tcGlsZWQpCisg
ICAgaWYgKGRhdGEoKS5zaGFyZWRHTERhdGEoKS5pbml0aWFsaXplZCkKICAgICAgICAgcmV0dXJu
OwotICAgIHNoYWRlcnNDb21waWxlZCA9IHRydWU7CisgICAgZGF0YSgpLnNoYXJlZEdMRGF0YSgp
LmluaXRpYWxpemVkID0gdHJ1ZTsKICNpZm5kZWYgVEVYTUFQX09QRU5HTF9FU18yCiAjZGVmaW5l
IE9FUzJfUFJFQ0lTSU9OX0RFRklOSVRJT05TIFwKICAgICAiI2RlZmluZSBsb3dwXG4jZGVmaW5l
IGhpZ2hwXG4iCkBAIC00NTQsMTMgKzUyNCwxMyBAQCB2b2lkIFRleHR1cmVNYXBwZXJHTDo6ZHJh
d1RleHR1cmUoY29uc3QgQml0bWFwVGV4dHVyZSYgdGV4dHVyZSwgY29uc3QgRmxvYXRSZWN0Jgog
CiB2b2lkIFRleHR1cmVNYXBwZXJHTDo6ZHJhd1RleHR1cmUodWludDMyX3QgdGV4dHVyZSwgYm9v
bCBvcGFxdWUsIGNvbnN0IEZsb2F0U2l6ZSYgcmVsYXRpdmVTaXplLCBjb25zdCBGbG9hdFJlY3Qm
IHRhcmdldFJlY3QsIGNvbnN0IFRyYW5zZm9ybWF0aW9uTWF0cml4JiBtb2RlbFZpZXdNYXRyaXgs
IGZsb2F0IG9wYWNpdHksIGNvbnN0IEJpdG1hcFRleHR1cmUqIG1hc2tUZXh0dXJlLCBib29sIGZs
aXApCiB7Ci0gICAgVGV4dHVyZU1hcHBlckdMRGF0YTo6R2xvYmFsR0xEYXRhOjpTaGFkZXJQcm9n
cmFtSW5kZXggcHJvZ3JhbTsKKyAgICBUZXh0dXJlTWFwcGVyR0xEYXRhOjpTaGFyZWRHTERhdGE6
OlNoYWRlclByb2dyYW1JbmRleCBwcm9ncmFtOwogICAgIGlmIChtYXNrVGV4dHVyZSkKLSAgICAg
ICAgcHJvZ3JhbSA9IFRleHR1cmVNYXBwZXJHTERhdGE6Okdsb2JhbEdMRGF0YTo6T3BhY2l0eUFu
ZE1hc2tQcm9ncmFtOworICAgICAgICBwcm9ncmFtID0gVGV4dHVyZU1hcHBlckdMRGF0YTo6U2hh
cmVkR0xEYXRhOjpPcGFjaXR5QW5kTWFza1Byb2dyYW07CiAgICAgZWxzZQotICAgICAgICBwcm9n
cmFtID0gVGV4dHVyZU1hcHBlckdMRGF0YTo6R2xvYmFsR0xEYXRhOjpTaW1wbGVQcm9ncmFtOwor
ICAgICAgICBwcm9ncmFtID0gVGV4dHVyZU1hcHBlckdMRGF0YTo6U2hhcmVkR0xEYXRhOjpTaW1w
bGVQcm9ncmFtOwogCi0gICAgY29uc3QgVGV4dHVyZU1hcHBlckdMRGF0YTo6R2xvYmFsR0xEYXRh
OjpQcm9ncmFtSW5mbyYgcHJvZ3JhbUluZm8gPSBkYXRhKCkuZ2xvYmFsR0xEYXRhLnByb2dyYW1z
W3Byb2dyYW1dOworICAgIGNvbnN0IFRleHR1cmVNYXBwZXJHTERhdGE6OlNoYXJlZEdMRGF0YTo6
UHJvZ3JhbUluZm8mIHByb2dyYW1JbmZvID0gZGF0YSgpLnNoYXJlZEdMRGF0YSgpLnByb2dyYW1z
W3Byb2dyYW1dOwogICAgIEdMX0NNRChnbFVzZVByb2dyYW0ocHJvZ3JhbUluZm8uaWQpKQogICAg
IGRhdGEoKS5jdXJyZW50UHJvZ3JhbSA9IHByb2dyYW07CiAgICAgR0xfQ01EKGdsRW5hYmxlVmVy
dGV4QXR0cmliQXJyYXkocHJvZ3JhbUluZm8udmVydGV4QXR0cmliKSkKQEAgLTQ4NywxMCArNTU3
LDEwIEBAIHZvaWQgVGV4dHVyZU1hcHBlckdMOjpkcmF3VGV4dHVyZSh1aW50MzJfdCB0ZXh0dXJl
LCBib29sIG9wYXF1ZSwgY29uc3QgRmxvYXRTaXplCiAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgMCwgMCwgMSwgMCwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAwLCBmbGlwID8gcmVsYXRpdmVTaXplLmhlaWdodCgpIDogMCwgMCwgMX07CiAKLSAgICBH
TF9DTUQoZ2xVbmlmb3JtTWF0cml4NGZ2KHByb2dyYW1JbmZvLnZhcnNbVGV4dHVyZU1hcHBlckdM
RGF0YTo6R2xvYmFsR0xEYXRhOjpJbk1hdHJpeFZhcmlhYmxlXSwgMSwgR0xfRkFMU0UsIG00KSkK
LSAgICBHTF9DTUQoZ2xVbmlmb3JtTWF0cml4NGZ2KHByb2dyYW1JbmZvLnZhcnNbVGV4dHVyZU1h
cHBlckdMRGF0YTo6R2xvYmFsR0xEYXRhOjpJblNvdXJjZU1hdHJpeFZhcmlhYmxlXSwgMSwgR0xf
RkFMU0UsIG00c3JjKSkKLSAgICBHTF9DTUQoZ2xVbmlmb3JtMWkocHJvZ3JhbUluZm8udmFyc1tU
ZXh0dXJlTWFwcGVyR0xEYXRhOjpHbG9iYWxHTERhdGE6OlNvdXJjZVRleHR1cmVWYXJpYWJsZV0s
IDApKQotICAgIEdMX0NNRChnbFVuaWZvcm0xZihwcm9ncmFtSW5mby52YXJzW1RleHR1cmVNYXBw
ZXJHTERhdGE6Okdsb2JhbEdMRGF0YTo6T3BhY2l0eVZhcmlhYmxlXSwgb3BhY2l0eSkpCisgICAg
R0xfQ01EKGdsVW5pZm9ybU1hdHJpeDRmdihwcm9ncmFtSW5mby52YXJzW1RleHR1cmVNYXBwZXJH
TERhdGE6OlNoYXJlZEdMRGF0YTo6SW5NYXRyaXhWYXJpYWJsZV0sIDEsIEdMX0ZBTFNFLCBtNCkp
CisgICAgR0xfQ01EKGdsVW5pZm9ybU1hdHJpeDRmdihwcm9ncmFtSW5mby52YXJzW1RleHR1cmVN
YXBwZXJHTERhdGE6OlNoYXJlZEdMRGF0YTo6SW5Tb3VyY2VNYXRyaXhWYXJpYWJsZV0sIDEsIEdM
X0ZBTFNFLCBtNHNyYykpCisgICAgR0xfQ01EKGdsVW5pZm9ybTFpKHByb2dyYW1JbmZvLnZhcnNb
VGV4dHVyZU1hcHBlckdMRGF0YTo6U2hhcmVkR0xEYXRhOjpTb3VyY2VUZXh0dXJlVmFyaWFibGVd
LCAwKSkKKyAgICBHTF9DTUQoZ2xVbmlmb3JtMWYocHJvZ3JhbUluZm8udmFyc1tUZXh0dXJlTWFw
cGVyR0xEYXRhOjpTaGFyZWRHTERhdGE6Ok9wYWNpdHlWYXJpYWJsZV0sIG9wYWNpdHkpKQogCiAg
ICAgaWYgKG1hc2tUZXh0dXJlICYmIG1hc2tUZXh0dXJlLT5pc1ZhbGlkKCkpIHsKICAgICAgICAg
Y29uc3QgQml0bWFwVGV4dHVyZUdMKiBtYXNrVGV4dHVyZUdMID0gc3RhdGljX2Nhc3Q8Y29uc3Qg
Qml0bWFwVGV4dHVyZUdMKj4obWFza1RleHR1cmUpOwpAQCAtNTAwLDggKzU3MCw4IEBAIHZvaWQg
VGV4dHVyZU1hcHBlckdMOjpkcmF3VGV4dHVyZSh1aW50MzJfdCB0ZXh0dXJlLCBib29sIG9wYXF1
ZSwgY29uc3QgRmxvYXRTaXplCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgIDAsIG1hc2tUZXh0dXJlR0wtPnJlbGF0aXZlU2l6ZSgpLmhlaWdodCgpLCAwLCAwLAogICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAwLCAwLCAxLCAwLAogICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAwLCAwLCAwLCAxfTsKLSAgICAgICAg
R0xfQ01EKGdsVW5pZm9ybU1hdHJpeDRmdihwcm9ncmFtSW5mby52YXJzW1RleHR1cmVNYXBwZXJH
TERhdGE6Okdsb2JhbEdMRGF0YTo6SW5NYXNrTWF0cml4VmFyaWFibGVdLCAxLCBHTF9GQUxTRSwg
bTRtYXNrKSk7Ci0gICAgICAgIEdMX0NNRChnbFVuaWZvcm0xaShwcm9ncmFtSW5mby52YXJzW1Rl
eHR1cmVNYXBwZXJHTERhdGE6Okdsb2JhbEdMRGF0YTo6TWFza1RleHR1cmVWYXJpYWJsZV0sIDEp
KQorICAgICAgICBHTF9DTUQoZ2xVbmlmb3JtTWF0cml4NGZ2KHByb2dyYW1JbmZvLnZhcnNbVGV4
dHVyZU1hcHBlckdMRGF0YTo6U2hhcmVkR0xEYXRhOjpJbk1hc2tNYXRyaXhWYXJpYWJsZV0sIDEs
IEdMX0ZBTFNFLCBtNG1hc2spKTsKKyAgICAgICAgR0xfQ01EKGdsVW5pZm9ybTFpKHByb2dyYW1J
bmZvLnZhcnNbVGV4dHVyZU1hcHBlckdMRGF0YTo6U2hhcmVkR0xEYXRhOjpNYXNrVGV4dHVyZVZh
cmlhYmxlXSwgMSkpCiAgICAgICAgIEdMX0NNRChnbEFjdGl2ZVRleHR1cmUoR0xfVEVYVFVSRTAp
KQogICAgIH0KIApAQCAtNjcwLDcgKzc0MCw3IEBAIHN0YXRpYyBpbmxpbmUgVHJhbnNmb3JtYXRp
b25NYXRyaXggY3JlYXRlUHJvamVjdGlvbk1hdHJpeChjb25zdCBJbnRTaXplJiBzaXplLCBiCiAK
IHZvaWQgQml0bWFwVGV4dHVyZUdMOjpiaW5kKCkKIHsKLSAgICBpbnQmIHN0ZW5jaWxJbmRleCA9
IFRleHR1cmVNYXBwZXJHTERhdGE6Omdsb2JhbEdMRGF0YS5zdGVuY2lsSW5kZXg7CisgICAgaW50
JiBzdGVuY2lsSW5kZXggPSBtX3RleHR1cmVNYXBwZXItPmRhdGEoKS5zaGFyZWRHTERhdGEoKS5z
dGVuY2lsSW5kZXg7CiAgICAgaWYgKG1fc3VyZmFjZU5lZWRzUmVzZXQgfHwgIW1fZmJvKSB7CiAg
ICAgICAgIGlmICghbV9mYm8pCiAgICAgICAgICAgICBHTF9DTUQoZ2xHZW5GcmFtZWJ1ZmZlcnMo
MSwgJm1fZmJvKSkKQEAgLTc0Myw3ICs4MTMsNyBAQCB2b2lkIFRleHR1cmVNYXBwZXJHTDo6Ymlu
ZFN1cmZhY2UoQml0bWFwVGV4dHVyZSAqc3VyZmFjZVBvaW50ZXIpCiAgICAgaWYgKCFzdXJmYWNl
KSB7CiAgICAgICAgIEdMX0NNRChnbEJpbmRGcmFtZWJ1ZmZlcihHTF9GUkFNRUJVRkZFUiwgMCkp
CiAgICAgICAgIGRhdGEoKS5wcm9qZWN0aW9uTWF0cml4ID0gY3JlYXRlUHJvamVjdGlvbk1hdHJp
eCh2aWV3cG9ydFNpemUoKSwgdHJ1ZSkubXVsdGlwbHkodHJhbnNmb3JtKCkpOwotICAgICAgICBH
TF9DTUQoZ2xTdGVuY2lsRnVuYyhkYXRhKCkuZ2xvYmFsR0xEYXRhLnN0ZW5jaWxJbmRleCA+IDEg
PyBHTF9FUVVBTCA6IEdMX0FMV0FZUywgZGF0YSgpLmdsb2JhbEdMRGF0YS5zdGVuY2lsSW5kZXgg
LSAxLCBkYXRhKCkuZ2xvYmFsR0xEYXRhLnN0ZW5jaWxJbmRleCAtIDEpKQorICAgICAgICBHTF9D
TUQoZ2xTdGVuY2lsRnVuYyhkYXRhKCkuc2hhcmVkR0xEYXRhKCkuc3RlbmNpbEluZGV4ID4gMSA/
IEdMX0VRVUFMIDogR0xfQUxXQVlTLCBkYXRhKCkuc2hhcmVkR0xEYXRhKCkuc3RlbmNpbEluZGV4
IC0gMSwgZGF0YSgpLnNoYXJlZEdMRGF0YSgpLnN0ZW5jaWxJbmRleCAtIDEpKQogICAgICAgICBH
TF9DTUQoZ2xTdGVuY2lsT3AoR0xfS0VFUCwgR0xfS0VFUCwgR0xfS0VFUCkpCiAgICAgICAgIEdM
X0NNRChnbFZpZXdwb3J0KDAsIDAsIHZpZXdwb3J0U2l6ZSgpLndpZHRoKCksIHZpZXdwb3J0U2l6
ZSgpLmhlaWdodCgpKSkKICAgICAgICAgcmV0dXJuOwpAQCAtNzU0LDggKzgyNCw4IEBAIHZvaWQg
VGV4dHVyZU1hcHBlckdMOjpiaW5kU3VyZmFjZShCaXRtYXBUZXh0dXJlICpzdXJmYWNlUG9pbnRl
cikKIAogdm9pZCBUZXh0dXJlTWFwcGVyR0w6OmJlZ2luQ2xpcChjb25zdCBUcmFuc2Zvcm1hdGlv
bk1hdHJpeCYgbW9kZWxWaWV3TWF0cml4LCBjb25zdCBGbG9hdFJlY3QmIHRhcmdldFJlY3QpCiB7
Ci0gICAgVGV4dHVyZU1hcHBlckdMRGF0YTo6R2xvYmFsR0xEYXRhOjpTaGFkZXJQcm9ncmFtSW5k
ZXggcHJvZ3JhbSA9IFRleHR1cmVNYXBwZXJHTERhdGE6Okdsb2JhbEdMRGF0YTo6Q2xpcFByb2dy
YW07Ci0gICAgY29uc3QgVGV4dHVyZU1hcHBlckdMRGF0YTo6R2xvYmFsR0xEYXRhOjpQcm9ncmFt
SW5mbyYgcHJvZ3JhbUluZm8gPSBkYXRhKCkuZ2xvYmFsR0xEYXRhLnByb2dyYW1zW3Byb2dyYW1d
OworICAgIFRleHR1cmVNYXBwZXJHTERhdGE6OlNoYXJlZEdMRGF0YTo6U2hhZGVyUHJvZ3JhbUlu
ZGV4IHByb2dyYW0gPSBUZXh0dXJlTWFwcGVyR0xEYXRhOjpTaGFyZWRHTERhdGE6OkNsaXBQcm9n
cmFtOworICAgIGNvbnN0IFRleHR1cmVNYXBwZXJHTERhdGE6OlNoYXJlZEdMRGF0YTo6UHJvZ3Jh
bUluZm8mIHByb2dyYW1JbmZvID0gZGF0YSgpLnNoYXJlZEdMRGF0YSgpLnByb2dyYW1zW3Byb2dy
YW1dOwogICAgIEdMX0NNRChnbFVzZVByb2dyYW0ocHJvZ3JhbUluZm8uaWQpKQogICAgIEdMX0NN
RChnbEVuYWJsZVZlcnRleEF0dHJpYkFycmF5KHByb2dyYW1JbmZvLnZlcnRleEF0dHJpYikpCiAg
ICAgY29uc3QgR0xmbG9hdCB1bml0UmVjdFtdID0gezAsIDAsIDEsIDAsIDEsIDEsIDAsIDF9OwpA
QCAtNzc1LDkgKzg0NSw5IEBAIHZvaWQgVGV4dHVyZU1hcHBlckdMOjpiZWdpbkNsaXAoY29uc3Qg
VHJhbnNmb3JtYXRpb25NYXRyaXgmIG1vZGVsVmlld01hdHJpeCwgY29uCiAgICAgICAgIG1hdHJp
eC5tNDEoKSwgbWF0cml4Lm00MigpLCBtYXRyaXgubTQzKCksIG1hdHJpeC5tNDQoKQogICAgIH07
CiAKLSAgICBpbnQmIHN0ZW5jaWxJbmRleCA9IGRhdGEoKS5nbG9iYWxHTERhdGEuc3RlbmNpbElu
ZGV4OworICAgIGludCYgc3RlbmNpbEluZGV4ID0gZGF0YSgpLnNoYXJlZEdMRGF0YSgpLnN0ZW5j
aWxJbmRleDsKIAotICAgIEdMX0NNRChnbFVuaWZvcm1NYXRyaXg0ZnYocHJvZ3JhbUluZm8udmFy
c1tUZXh0dXJlTWFwcGVyR0xEYXRhOjpHbG9iYWxHTERhdGE6OkluTWF0cml4VmFyaWFibGVdLCAx
LCBHTF9GQUxTRSwgbTQpKQorICAgIEdMX0NNRChnbFVuaWZvcm1NYXRyaXg0ZnYocHJvZ3JhbUlu
Zm8udmFyc1tUZXh0dXJlTWFwcGVyR0xEYXRhOjpTaGFyZWRHTERhdGE6OkluTWF0cml4VmFyaWFi
bGVdLCAxLCBHTF9GQUxTRSwgbTQpKQogICAgIEdMX0NNRChnbEVuYWJsZShHTF9TVEVOQ0lMX1RF
U1QpKQogICAgIEdMX0NNRChnbFN0ZW5jaWxGdW5jKEdMX05FVkVSLCBzdGVuY2lsSW5kZXgsIHN0
ZW5jaWxJbmRleCkpCiAgICAgR0xfQ01EKGdsU3RlbmNpbE9wKEdMX1JFUExBQ0UsIEdMX1JFUExB
Q0UsIEdMX1JFUExBQ0UpKQpAQCAtNzkxLDggKzg2MSw4IEBAIHZvaWQgVGV4dHVyZU1hcHBlckdM
OjpiZWdpbkNsaXAoY29uc3QgVHJhbnNmb3JtYXRpb25NYXRyaXgmIG1vZGVsVmlld01hdHJpeCwg
Y29uCiAKIHZvaWQgVGV4dHVyZU1hcHBlckdMOjplbmRDbGlwKCkKIHsKLSAgICBkYXRhKCkuZ2xv
YmFsR0xEYXRhLnN0ZW5jaWxJbmRleCA+Pj0gMTsKLSAgICBnbFN0ZW5jaWxGdW5jKGRhdGEoKS5n
bG9iYWxHTERhdGEuc3RlbmNpbEluZGV4ID4gMSA/IEdMX0VRVUFMIDogR0xfQUxXQVlTLCBkYXRh
KCkuZ2xvYmFsR0xEYXRhLnN0ZW5jaWxJbmRleCAtIDEsIGRhdGEoKS5nbG9iYWxHTERhdGEuc3Rl
bmNpbEluZGV4IC0gMSk7CisgICAgZGF0YSgpLnNoYXJlZEdMRGF0YSgpLnN0ZW5jaWxJbmRleCA+
Pj0gMTsKKyAgICBnbFN0ZW5jaWxGdW5jKGRhdGEoKS5zaGFyZWRHTERhdGEoKS5zdGVuY2lsSW5k
ZXggPiAxID8gR0xfRVFVQUwgOiBHTF9BTFdBWVMsIGRhdGEoKS5zaGFyZWRHTERhdGEoKS5zdGVu
Y2lsSW5kZXggLSAxLCBkYXRhKCkuc2hhcmVkR0xEYXRhKCkuc3RlbmNpbEluZGV4IC0gMSk7CiB9
CiAKIFBhc3NSZWZQdHI8Qml0bWFwVGV4dHVyZT4gVGV4dHVyZU1hcHBlckdMOjpjcmVhdGVUZXh0
dXJlKCkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQyL0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJL
aXQyL0NoYW5nZUxvZwppbmRleCAwNDczMGY0Li5kMTJkMDc5IDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V2ViS2l0Mi9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYktpdDIvQ2hhbmdlTG9nCkBAIC0xLDMg
KzEsMTcgQEAKKzIwMTItMDEtMDggIFZpYXRjaGVzbGF2IE9zdGFwZW5rbyAgPG9zdGFwZW5rby52
aWF0Y2hlc2xhdkBub2tpYS5jb20+CisKKyAgICAgICAgW1F0XVtXSzJdUkVHUkVTU0lPTihyMTAy
NDM1KTogSXQgbWFkZSB0c3RfUVF1aWNrV2ViVmlldzo6c2hvdygpIGNyYXNoCisgICAgICAgIGh0
dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD03NDE3NgorCisgICAgICAgIFJl
dmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIENoZWNrIHRleHR1cmUgbWFwcGVy
IGV4aXN0cyBhbHJlYWR5IGluIGVuc3VyZVJvb3RMYXllciB0byBhdm9pZCByZWNyZWNhdGlvbi4K
KyAgICAgICAgQ2hlY2sgaWYgcm9vdCBsYXllciB3YXMgZGVsZXRlZCBhbHJlYWR5IGluIHB1cmdl
R0xSZXNvdXJjZXMuCisKKyAgICAgICAgKiBVSVByb2Nlc3MvcXQvTGF5ZXJUcmVlSG9zdFByb3h5
UXQuY3BwOgorICAgICAgICAoV2ViS2l0OjpMYXllclRyZWVIb3N0UHJveHk6OmVuc3VyZVJvb3RM
YXllcik6CisgICAgICAgIChXZWJLaXQ6OkxheWVyVHJlZUhvc3RQcm94eTo6cHVyZ2VHTFJlc291
cmNlcyk6CisKIDIwMTItMDEtMDYgIE1hcmsgUm93ZSAgPG1yb3dlQGFwcGxlLmNvbT4KIAogICAg
ICAgICBSRUdSRVNTSU9OIChXZWJLaXQyKTogU2F2ZSBhcyBQREYgbm8gbG9uZ2VyIGdlbmVyYXRl
cyBsaW5rcyB0byBVUkxzCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvcXQv
TGF5ZXJUcmVlSG9zdFByb3h5UXQuY3BwIGIvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL3F0L0xh
eWVyVHJlZUhvc3RQcm94eVF0LmNwcAppbmRleCBhMWRkMjcyLi42MDczNmIxIDEwMDY0NAotLS0g
YS9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvcXQvTGF5ZXJUcmVlSG9zdFByb3h5UXQuY3BwCisr
KyBiL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9xdC9MYXllclRyZWVIb3N0UHJveHlRdC5jcHAK
QEAgLTQ2MCw3ICs0NjAsOCBAQCB2b2lkIExheWVyVHJlZUhvc3RQcm94eTo6ZW5zdXJlUm9vdExh
eWVyKCkKIAogICAgIC8vIFRoZSByb290IGxheWVyIHNob3VsZCBub3QgaGF2ZSB6ZXJvIHNpemUs
IG9yIGl0IHdvdWxkIGJlIG9wdGltaXplZCBvdXQuCiAgICAgbV9yb290TGF5ZXItPnNldFNpemUo
RmxvYXRTaXplKDEuMCwgMS4wKSk7Ci0gICAgbV90ZXh0dXJlTWFwcGVyID0gVGV4dHVyZU1hcHBl
ckdMOjpjcmVhdGUoKTsKKyAgICBpZiAoIW1fdGV4dHVyZU1hcHBlcikKKyAgICAgICAgbV90ZXh0
dXJlTWFwcGVyID0gVGV4dHVyZU1hcHBlckdMOjpjcmVhdGUoKTsKICAgICB0b1RleHR1cmVNYXBw
ZXJOb2RlKG1fcm9vdExheWVyLmdldCgpKS0+c2V0VGV4dHVyZU1hcHBlcihtX3RleHR1cmVNYXBw
ZXIuZ2V0KCkpOwogfQogCkBAIC02MjMsNyArNjI0LDkgQEAgdm9pZCBMYXllclRyZWVIb3N0UHJv
eHk6OnB1cmdlR0xSZXNvdXJjZXMoKQogewogICAgIFRleHR1cmVNYXBwZXJOb2RlKiBub2RlID0g
dG9UZXh0dXJlTWFwcGVyTm9kZShyb290TGF5ZXIoKSk7CiAKLSAgICBub2RlLT5wdXJnZU5vZGVU
ZXh0dXJlc1JlY3Vyc2l2ZSgpOworICAgIGlmIChub2RlKQorICAgICAgICBub2RlLT5wdXJnZU5v
ZGVUZXh0dXJlc1JlY3Vyc2l2ZSgpOworCiAgICAgbV9kaXJlY3RseUNvbXBvc2l0ZWRJbWFnZXMu
Y2xlYXIoKTsKIAogICAgIG1fdGV4dHVyZU1hcHBlci5jbGVhcigpOwo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>121755</attachid>
            <date>2012-01-09 16:29:08 -0800</date>
            <delta_ts>2012-01-10 08:53:47 -0800</delta_ts>
            <desc>Added multiWindow API test and other patch fixes.</desc>
            <filename>GL_resources_dealloc_fix_03.diff</filename>
            <type>text/plain</type>
            <size>17745</size>
            <attacher name="Viatcheslav Ostapenko">ostap73</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJDb3JlL0No
YW5nZUxvZwppbmRleCA3ZjZlZGM5Li5lMWYwNzVhIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29y
ZS9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMzMg
QEAKKzIwMTItMDEtMDkgIFZpYXRjaGVzbGF2IE9zdGFwZW5rbyAgPG9zdGFwZW5rby52aWF0Y2hl
c2xhdkBub2tpYS5jb20+CisKKyAgICAgICAgW1F0XVtXSzJdUkVHUkVTU0lPTihyMTAyNDM1KTog
SXQgbWFkZSB0c3RfUVF1aWNrV2ViVmlldzo6c2hvdygpIGNyYXNoCisgICAgICAgIGh0dHBzOi8v
YnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD03NDE3NgorCisgICAgICAgIFJldmlld2Vk
IGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIFJlcGxhY2VzIHN0YXRpYyBnbG9iYWwgR0wg
cmVzb3VyY2UgaG9sZGVyIHdpdGggaG9sZGVyIHNoYXJlZCBiZXR3ZWVuCisgICAgICAgIFRleHR1
cmVNYXBwZXJHTCBpbnN0YW5jZXMgY3JlYXRlZCBvbiB0aGUgc2FtZSBHTCBjb250ZXh0LiBBbHNv
IGFkZHMKKyAgICAgICAgZGVhbGxvY2F0aW9uIG9mIEdMIHJlc291cmNlcyB3aGVuIGxhc3QgVGV4
dHVyZU1hcHBlckdMIGluc3RhbmNlIG9uIHRoZSAKKyAgICAgICAgY3VycmVudCBHTCBjb250ZXh0
IGdldHMgZGVsZXRlZC4KKworICAgICAgICBUZXN0ZWQgYnkgIm11bHRpV2luZG93IiBRdCBXSzIg
QVBJIHRlc3QuCisKKyAgICAgICAgKiBwbGF0Zm9ybS9ncmFwaGljcy9vcGVuZ2wvVGV4dHVyZU1h
cHBlckdMLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlRleHR1cmVNYXBwZXJHTERhdGE6OlNoYXJl
ZEdMRGF0YTo6Z2V0Q3VycmVudEdMQ29udGV4dCk6CisgICAgICAgIChXZWJDb3JlOjpUZXh0dXJl
TWFwcGVyR0xEYXRhOjpTaGFyZWRHTERhdGE6OmdsQ29udGV4dERhdGFNYXApOgorICAgICAgICAo
V2ViQ29yZTo6VGV4dHVyZU1hcHBlckdMRGF0YTo6U2hhcmVkR0xEYXRhOjpjdXJlbnRTaGFyZWRH
TERhdGEpOgorICAgICAgICAoV2ViQ29yZTo6VGV4dHVyZU1hcHBlckdMRGF0YTo6U2hhcmVkR0xE
YXRhOjpkZWxldGVTaGFkZXJQcm9ncmFtKToKKyAgICAgICAgKFdlYkNvcmU6OlRleHR1cmVNYXBw
ZXJHTERhdGE6OlNoYXJlZEdMRGF0YTo6U2hhcmVkR0xEYXRhKToKKyAgICAgICAgKFdlYkNvcmU6
OlRleHR1cmVNYXBwZXJHTERhdGE6OlNoYXJlZEdMRGF0YTo6flNoYXJlZEdMRGF0YSk6CisgICAg
ICAgIChXZWJDb3JlOjpUZXh0dXJlTWFwcGVyR0xEYXRhOjpzaGFyZWRHTERhdGEpOgorICAgICAg
ICAoV2ViQ29yZTo6VGV4dHVyZU1hcHBlckdMRGF0YTo6VGV4dHVyZU1hcHBlckdMRGF0YSk6Cisg
ICAgICAgIChXZWJDb3JlOjpUZXh0dXJlTWFwcGVyR0w6OmluaXRpYWxpemVTaGFkZXJzKToKKyAg
ICAgICAgKFdlYkNvcmU6OlRleHR1cmVNYXBwZXJHTDo6ZHJhd1RleHR1cmUpOgorICAgICAgICAo
V2ViQ29yZTo6Qml0bWFwVGV4dHVyZUdMOjpiaW5kKToKKyAgICAgICAgKFdlYkNvcmU6OlRleHR1
cmVNYXBwZXJHTDo6YmluZFN1cmZhY2UpOgorICAgICAgICAoV2ViQ29yZTo6VGV4dHVyZU1hcHBl
ckdMOjpiZWdpbkNsaXApOgorICAgICAgICAoV2ViQ29yZTo6VGV4dHVyZU1hcHBlckdMOjplbmRD
bGlwKToKKwogMjAxMi0wMS0wNyAgQ2hyaXMgTWFycmluICA8Y21hcnJpbkBhcHBsZS5jb20+CiAK
ICAgICAgICAgRml4ZWQgQU5HTEUgYnVpbGQgZm9yIEdOVSBhbmQgUVQgYnJva2VuIGluIGh0dHBz
Oi8vdHJhYy53ZWJraXQub3JnL2NoYW5nZXNldC8xMDQzNjMKZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL29wZW5nbC9UZXh0dXJlTWFwcGVyR0wuY3BwIGIvU291
cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3Mvb3BlbmdsL1RleHR1cmVNYXBwZXJHTC5jcHAK
aW5kZXggMjhlZTJiYS4uMWU4MGE3MjIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRm
b3JtL2dyYXBoaWNzL29wZW5nbC9UZXh0dXJlTWFwcGVyR0wuY3BwCisrKyBiL1NvdXJjZS9XZWJD
b3JlL3BsYXRmb3JtL2dyYXBoaWNzL29wZW5nbC9UZXh0dXJlTWFwcGVyR0wuY3BwCkBAIC00MSw2
ICs0MSwxNCBAQAogI2luY2x1ZGUgPEdML2dsLmg+CiAjZW5kaWYKIAorI2lmIE9TKFdJTkRPV1Mp
CisjaW5jbHVkZSA8d2luZG93cy5oPgorI2VsaWYgT1MoTUFDX09TX1gpCisjaW5jbHVkZSA8QUdM
L2FnbC5oPgorI2Vsc2UKKyNpbmNsdWRlIDxHTC9nbHguaD4KKyNlbmRpZgorCiAjaWYgIWRlZmlu
ZWQoVEVYTUFQX09QRU5HTF9FU18yKSAmJiAhUExBVEZPUk0oUVQpCiBleHRlcm4gIkMiIHsKICAg
ICB2b2lkIGdsVW5pZm9ybTFmKEdMaW50LCBHTGZsb2F0KTsKQEAgLTEwMyw3ICsxMTEsNDQgQEAg
aW5saW5lIHN0YXRpYyB2b2lkIGRlYnVnR0xDb21tYW5kKGNvbnN0IGNoYXIqIGNvbW1hbmQsIGlu
dCBsaW5lKQogI2VuZGlmCiAKIHN0cnVjdCBUZXh0dXJlTWFwcGVyR0xEYXRhIHsKLSAgICBzdGF0
aWMgc3RydWN0IEdsb2JhbEdMRGF0YSB7CisgICAgc3RydWN0IFNoYXJlZEdMRGF0YSA6IHB1Ymxp
YyBSZWZDb3VudGVkPFNoYXJlZEdMRGF0YT4geworI2lmIE9TKFdJTkRPV1MpCisgICAgICAgIHR5
cGVkZWYgSEdMUkMgR0xDb250ZXh0OworICAgICAgICBzdGF0aWMgR0xDb250ZXh0IGdldEN1cnJl
bnRHTENvbnRleHQoKQorICAgICAgICB7CisgICAgICAgICAgICByZXR1cm4gd2dsR2V0Q3VycmVu
dENvbnRleHQoKTsKKyAgICAgICAgfQorI2VsaWYgT1MoTUFDX09TX1gpCisgICAgICAgIHR5cGVk
ZWYgQUdMQ29udGV4dCBHTENvbnRleHQ7CisgICAgICAgIHN0YXRpYyBHTENvbnRleHQgZ2V0Q3Vy
cmVudEdMQ29udGV4dCgpCisgICAgICAgIHsKKyAgICAgICAgICAgIHJldHVybiBhZ2xHZXRDdXJy
ZW50Q29udGV4dCgpOworICAgICAgICB9CisjZWxzZQorICAgICAgICB0eXBlZGVmIEdMWENvbnRl
eHQgR0xDb250ZXh0OworICAgICAgICBzdGF0aWMgR0xDb250ZXh0IGdldEN1cnJlbnRHTENvbnRl
eHQoKQorICAgICAgICB7CisgICAgICAgICAgICByZXR1cm4gZ2xYR2V0Q3VycmVudENvbnRleHQo
KTsKKyAgICAgICAgfQorI2VuZGlmCisKKyAgICAgICAgdHlwZWRlZiBIYXNoTWFwPEdMQ29udGV4
dCwgU2hhcmVkR0xEYXRhKj4gR0xDb250ZXh0RGF0YU1hcDsKKyAgICAgICAgc3RhdGljIEdMQ29u
dGV4dERhdGFNYXAmIGdsQ29udGV4dERhdGFNYXAoKQorICAgICAgICB7CisgICAgICAgICAgICBz
dGF0aWMgR0xDb250ZXh0RGF0YU1hcCBtYXA7CisgICAgICAgICAgICByZXR1cm4gbWFwOworICAg
ICAgICB9CisKKyAgICAgICAgc3RhdGljIFBhc3NSZWZQdHI8U2hhcmVkR0xEYXRhPiBjdXJlbnRT
aGFyZWRHTERhdGEoKQorICAgICAgICB7CisgICAgICAgICAgICBHTENvbnRleHQgY3VycmVudEdM
Q29uZXh0ID0gZ2V0Q3VycmVudEdMQ29udGV4dCgpOworICAgICAgICAgICAgR0xDb250ZXh0RGF0
YU1hcDo6aXRlcmF0b3IgaXQgPSBnbENvbnRleHREYXRhTWFwKCkuZmluZChjdXJyZW50R0xDb25l
eHQpOworICAgICAgICAgICAgaWYgKGl0ICE9IGdsQ29udGV4dERhdGFNYXAoKS5lbmQoKSkKKyAg
ICAgICAgICAgICAgICByZXR1cm4gaXQtPnNlY29uZDsKKworICAgICAgICAgICAgcmV0dXJuIGFk
b3B0UmVmKG5ldyBTaGFyZWRHTERhdGEoZ2V0Q3VycmVudEdMQ29udGV4dCgpKSk7CisgICAgICAg
IH0KKwogICAgICAgICBlbnVtIFNoYWRlclByb2dyYW1JbmRleCB7CiAgICAgICAgICAgICBOb1By
b2dyYW0gPSAtMSwKICAgICAgICAgICAgIFNpbXBsZVByb2dyYW0sCkBAIC0xNTEsMTQgKzE5Niw0
OCBAQCBzdHJ1Y3QgVGV4dHVyZU1hcHBlckdMRGF0YSB7CiAgICAgICAgICAgICBwcm9ncmFtc1tp
bmRleF0uaWQgPSBwcm9ncmFtSUQ7CiAgICAgICAgIH0KIAorICAgICAgICB2b2lkIGRlbGV0ZVNo
YWRlclByb2dyYW0oU2hhZGVyUHJvZ3JhbUluZGV4IGluZGV4KQorICAgICAgICB7CisgICAgICAg
ICAgICBHTHVpbnQgc2hhZGVyc1s0XTsKKyAgICAgICAgICAgIEdMc2l6ZWkgc2hhZGVyQ291bnQg
PSAwOworICAgICAgICAgICAgR0x1aW50IHByb2dyYW1JRCA9IHByb2dyYW1zW2luZGV4XS5pZDsK
KyAgICAgICAgICAgIEdMX0NNRChnbEdldEF0dGFjaGVkU2hhZGVycyhwcm9ncmFtSUQsIHNpemVv
ZihzaGFkZXJzKSAvIHNpemVvZihHTHVpbnQpLCAmc2hhZGVyQ291bnQsIHNoYWRlcnMpKQorICAg
ICAgICAgICAgZm9yIChpbnQgaSA9IDA7IGkgPCBzaGFkZXJDb3VudDsgaSsrKSB7CisgICAgICAg
ICAgICAgICAgR0xfQ01EKGdsRGV0YWNoU2hhZGVyKHByb2dyYW1JRCwgc2hhZGVyc1tpXSkpCisg
ICAgICAgICAgICAgICAgR0xfQ01EKGdsRGVsZXRlU2hhZGVyKHNoYWRlcnNbaV0pKQorICAgICAg
ICAgICAgfQorICAgICAgICAgICAgR0xfQ01EKGdsRGVsZXRlUHJvZ3JhbShwcm9ncmFtSUQpKQor
ICAgICAgICB9CisKICAgICAgICAgUHJvZ3JhbUluZm8gcHJvZ3JhbXNbUHJvZ3JhbUNvdW50XTsK
IAogICAgICAgICBpbnQgc3RlbmNpbEluZGV4OworICAgICAgICBib29sIGluaXRpYWxpemVkOwor
CisgICAgICAgIFNoYXJlZEdMRGF0YShHTENvbnRleHQgZ2xDb250ZXh0KSA6IHN0ZW5jaWxJbmRl
eCgxKSwgaW5pdGlhbGl6ZWQoZmFsc2UpCisgICAgICAgIHsKKyAgICAgICAgICAgIGdsQ29udGV4
dERhdGFNYXAoKS5hZGQoZ2xDb250ZXh0LCB0aGlzKTsKKyAgICAgICAgfQorCisgICAgICAgIH5T
aGFyZWRHTERhdGEoKQorICAgICAgICB7CisgICAgICAgICAgICBpZiAoaW5pdGlhbGl6ZWQpIHsK
KyAgICAgICAgICAgICAgICBmb3IgKGludCBpID0gU2ltcGxlUHJvZ3JhbTsgaSA8IFByb2dyYW1D
b3VudDsgKytpKQorICAgICAgICAgICAgICAgICAgICBkZWxldGVTaGFkZXJQcm9ncmFtKFNoYWRl
clByb2dyYW1JbmRleChpKSk7CisgICAgICAgICAgICB9CisKKyAgICAgICAgICAgIEdMQ29udGV4
dERhdGFNYXA6OmNvbnN0X2l0ZXJhdG9yIG1hcEVuZCA9IGdsQ29udGV4dERhdGFNYXAoKS5lbmQo
KTsKKyAgICAgICAgICAgIEdMQ29udGV4dERhdGFNYXA6Oml0ZXJhdG9yIGk7CisgICAgICAgICAg
ICBmb3IgKGkgPSBnbENvbnRleHREYXRhTWFwKCkuYmVnaW4oKTsgaSAhPSBtYXBFbmQ7ICsraSkg
eworICAgICAgICAgICAgICAgIGlmIChpLT5zZWNvbmQgPT0gdGhpcykKKyAgICAgICAgICAgICAg
ICAgICAgYnJlYWs7CisgICAgICAgICAgICB9CisKKyAgICAgICAgICAgIEFTU0VSVChpICE9IG1h
cEVuZCk7CisgICAgICAgICAgICBnbENvbnRleHREYXRhTWFwKCkucmVtb3ZlKGkpOworICAgICAg
ICB9CiAKLSAgICAgICAgR2xvYmFsR0xEYXRhKCkKLSAgICAgICAgICAgIDogc3RlbmNpbEluZGV4
KDEpCi0gICAgICAgIHsgfQotICAgIH0gZ2xvYmFsR0xEYXRhOworICAgIH07CiAKICAgICBzdHJ1
Y3QgRGlyZWN0bHlDb21wb3NpdGVkSW1hZ2VSZXBvc2l0b3J5IHsKICAgICAgICAgc3RydWN0IEVu
dHJ5IHsKQEAgLTIxMSwxNyArMjkwLDIyIEBAIHN0cnVjdCBUZXh0dXJlTWFwcGVyR0xEYXRhIHsK
ICAgICAgICAgfQogICAgIH0gZGlyZWN0bHlDb21wb3NpdGVkSW1hZ2VzOwogCisgICAgU2hhcmVk
R0xEYXRhJiBzaGFyZWRHTERhdGEoKSBjb25zdAorICAgIHsKKyAgICAgICAgcmV0dXJuICoobV9z
aGFyZWRHTERhdGEuZ2V0KCkpOworICAgIH0KKwogICAgIFRleHR1cmVNYXBwZXJHTERhdGEoKQot
ICAgICAgICA6IGN1cnJlbnRQcm9ncmFtKFRleHR1cmVNYXBwZXJHTERhdGE6Okdsb2JhbEdMRGF0
YTo6Tm9Qcm9ncmFtKQorICAgICAgICA6IGN1cnJlbnRQcm9ncmFtKFNoYXJlZEdMRGF0YTo6Tm9Q
cm9ncmFtKQorICAgICAgICAsIG1fc2hhcmVkR0xEYXRhKFNoYXJlZEdMRGF0YTo6Y3VyZW50U2hh
cmVkR0xEYXRhKCkpCiAgICAgeyB9CiAKICAgICBUcmFuc2Zvcm1hdGlvbk1hdHJpeCBwcm9qZWN0
aW9uTWF0cml4OwogICAgIGludCBjdXJyZW50UHJvZ3JhbTsKICAgICBpbnQgcHJldmlvdXNQcm9n
cmFtOworICAgIFJlZlB0cjxTaGFyZWRHTERhdGE+IG1fc2hhcmVkR0xEYXRhOwogfTsKIAotVGV4
dHVyZU1hcHBlckdMRGF0YTo6R2xvYmFsR0xEYXRhIFRleHR1cmVNYXBwZXJHTERhdGE6Omdsb2Jh
bEdMRGF0YTsKLQogY2xhc3MgQml0bWFwVGV4dHVyZUdMIDogcHVibGljIEJpdG1hcFRleHR1cmUg
ewogcHVibGljOgogICAgIHZpcnR1YWwgdm9pZCBkZXN0cm95KCk7CkBAIC0yODksMTEgKzM3Mywx
MSBAQCBwcml2YXRlOgogfTsKIAogI2RlZmluZSBURVhNQVBfR0VUX1NIQURFUl9WQVJfTE9DQVRJ
T04ocHJvZywgdmFyKSBcCi0gICAgaWYgKFRleHR1cmVNYXBwZXJHTERhdGE6Omdsb2JhbEdMRGF0
YS5nZXRVbmlmb3JtTG9jYXRpb24oVGV4dHVyZU1hcHBlckdMRGF0YTo6Z2xvYmFsR0xEYXRhLnBy
b2cjI1Byb2dyYW0sIFRleHR1cmVNYXBwZXJHTERhdGE6Omdsb2JhbEdMRGF0YS52YXIjI1Zhcmlh
YmxlLCAjdmFyKSA8IDApIFwKKyAgICBpZiAoZGF0YSgpLnNoYXJlZEdMRGF0YSgpLmdldFVuaWZv
cm1Mb2NhdGlvbihkYXRhKCkuc2hhcmVkR0xEYXRhKCkucHJvZyMjUHJvZ3JhbSwgZGF0YSgpLnNo
YXJlZEdMRGF0YSgpLnZhciMjVmFyaWFibGUsICN2YXIpIDwgMCkgXAogICAgICAgICAgICAgTE9H
X0VSUk9SKCJDb3VsZG4ndCBmaW5kIHZhcmlhYmxlICIjdmFyIiBpbiBwcm9ncmFtICIjcHJvZyJc
biIpOwogCiAjZGVmaW5lIFRFWE1BUF9CVUlMRF9TSEFERVIocHJvZ3JhbSkgXAotICAgIFRleHR1
cmVNYXBwZXJHTERhdGE6Omdsb2JhbEdMRGF0YS5jcmVhdGVTaGFkZXJQcm9ncmFtKHZlcnRleFNo
YWRlclNvdXJjZSMjcHJvZ3JhbSwgZnJhZ21lbnRTaGFkZXJTb3VyY2UjI3Byb2dyYW0sIFRleHR1
cmVNYXBwZXJHTERhdGE6Omdsb2JhbEdMRGF0YS5wcm9ncmFtIyNQcm9ncmFtKTsKKyAgICBkYXRh
KCkuc2hhcmVkR0xEYXRhKCkuY3JlYXRlU2hhZGVyUHJvZ3JhbSh2ZXJ0ZXhTaGFkZXJTb3VyY2Uj
I3Byb2dyYW0sIGZyYWdtZW50U2hhZGVyU291cmNlIyNwcm9ncmFtLCBkYXRhKCkuc2hhcmVkR0xE
YXRhKCkucHJvZ3JhbSMjUHJvZ3JhbSk7CiAKIFRleHR1cmVNYXBwZXJHTDo6VGV4dHVyZU1hcHBl
ckdMKCkKICAgICA6IG1fZGF0YShuZXcgVGV4dHVyZU1hcHBlckdMRGF0YSkKQEAgLTMwMywxMCAr
Mzg3LDkgQEAgVGV4dHVyZU1hcHBlckdMOjpUZXh0dXJlTWFwcGVyR0woKQogCiB2b2lkIFRleHR1
cmVNYXBwZXJHTDo6aW5pdGlhbGl6ZVNoYWRlcnMoKQogewotICAgIHN0YXRpYyBib29sIHNoYWRl
cnNDb21waWxlZCA9IGZhbHNlOwotICAgIGlmIChzaGFkZXJzQ29tcGlsZWQpCisgICAgaWYgKGRh
dGEoKS5zaGFyZWRHTERhdGEoKS5pbml0aWFsaXplZCkKICAgICAgICAgcmV0dXJuOwotICAgIHNo
YWRlcnNDb21waWxlZCA9IHRydWU7CisgICAgZGF0YSgpLnNoYXJlZEdMRGF0YSgpLmluaXRpYWxp
emVkID0gdHJ1ZTsKICNpZm5kZWYgVEVYTUFQX09QRU5HTF9FU18yCiAjZGVmaW5lIE9FUzJfUFJF
Q0lTSU9OX0RFRklOSVRJT05TIFwKICAgICAiI2RlZmluZSBsb3dwXG4jZGVmaW5lIGhpZ2hwXG4i
CkBAIC00NTQsMTMgKzUzNywxMyBAQCB2b2lkIFRleHR1cmVNYXBwZXJHTDo6ZHJhd1RleHR1cmUo
Y29uc3QgQml0bWFwVGV4dHVyZSYgdGV4dHVyZSwgY29uc3QgRmxvYXRSZWN0JgogCiB2b2lkIFRl
eHR1cmVNYXBwZXJHTDo6ZHJhd1RleHR1cmUodWludDMyX3QgdGV4dHVyZSwgYm9vbCBvcGFxdWUs
IGNvbnN0IEZsb2F0U2l6ZSYgcmVsYXRpdmVTaXplLCBjb25zdCBGbG9hdFJlY3QmIHRhcmdldFJl
Y3QsIGNvbnN0IFRyYW5zZm9ybWF0aW9uTWF0cml4JiBtb2RlbFZpZXdNYXRyaXgsIGZsb2F0IG9w
YWNpdHksIGNvbnN0IEJpdG1hcFRleHR1cmUqIG1hc2tUZXh0dXJlLCBib29sIGZsaXApCiB7Ci0g
ICAgVGV4dHVyZU1hcHBlckdMRGF0YTo6R2xvYmFsR0xEYXRhOjpTaGFkZXJQcm9ncmFtSW5kZXgg
cHJvZ3JhbTsKKyAgICBUZXh0dXJlTWFwcGVyR0xEYXRhOjpTaGFyZWRHTERhdGE6OlNoYWRlclBy
b2dyYW1JbmRleCBwcm9ncmFtOwogICAgIGlmIChtYXNrVGV4dHVyZSkKLSAgICAgICAgcHJvZ3Jh
bSA9IFRleHR1cmVNYXBwZXJHTERhdGE6Okdsb2JhbEdMRGF0YTo6T3BhY2l0eUFuZE1hc2tQcm9n
cmFtOworICAgICAgICBwcm9ncmFtID0gVGV4dHVyZU1hcHBlckdMRGF0YTo6U2hhcmVkR0xEYXRh
OjpPcGFjaXR5QW5kTWFza1Byb2dyYW07CiAgICAgZWxzZQotICAgICAgICBwcm9ncmFtID0gVGV4
dHVyZU1hcHBlckdMRGF0YTo6R2xvYmFsR0xEYXRhOjpTaW1wbGVQcm9ncmFtOworICAgICAgICBw
cm9ncmFtID0gVGV4dHVyZU1hcHBlckdMRGF0YTo6U2hhcmVkR0xEYXRhOjpTaW1wbGVQcm9ncmFt
OwogCi0gICAgY29uc3QgVGV4dHVyZU1hcHBlckdMRGF0YTo6R2xvYmFsR0xEYXRhOjpQcm9ncmFt
SW5mbyYgcHJvZ3JhbUluZm8gPSBkYXRhKCkuZ2xvYmFsR0xEYXRhLnByb2dyYW1zW3Byb2dyYW1d
OworICAgIGNvbnN0IFRleHR1cmVNYXBwZXJHTERhdGE6OlNoYXJlZEdMRGF0YTo6UHJvZ3JhbUlu
Zm8mIHByb2dyYW1JbmZvID0gZGF0YSgpLnNoYXJlZEdMRGF0YSgpLnByb2dyYW1zW3Byb2dyYW1d
OwogICAgIEdMX0NNRChnbFVzZVByb2dyYW0ocHJvZ3JhbUluZm8uaWQpKQogICAgIGRhdGEoKS5j
dXJyZW50UHJvZ3JhbSA9IHByb2dyYW07CiAgICAgR0xfQ01EKGdsRW5hYmxlVmVydGV4QXR0cmli
QXJyYXkocHJvZ3JhbUluZm8udmVydGV4QXR0cmliKSkKQEAgLTQ4NywxMCArNTcwLDEwIEBAIHZv
aWQgVGV4dHVyZU1hcHBlckdMOjpkcmF3VGV4dHVyZSh1aW50MzJfdCB0ZXh0dXJlLCBib29sIG9w
YXF1ZSwgY29uc3QgRmxvYXRTaXplCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgMCwgMCwgMSwgMCwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAwLCBm
bGlwID8gcmVsYXRpdmVTaXplLmhlaWdodCgpIDogMCwgMCwgMX07CiAKLSAgICBHTF9DTUQoZ2xV
bmlmb3JtTWF0cml4NGZ2KHByb2dyYW1JbmZvLnZhcnNbVGV4dHVyZU1hcHBlckdMRGF0YTo6R2xv
YmFsR0xEYXRhOjpJbk1hdHJpeFZhcmlhYmxlXSwgMSwgR0xfRkFMU0UsIG00KSkKLSAgICBHTF9D
TUQoZ2xVbmlmb3JtTWF0cml4NGZ2KHByb2dyYW1JbmZvLnZhcnNbVGV4dHVyZU1hcHBlckdMRGF0
YTo6R2xvYmFsR0xEYXRhOjpJblNvdXJjZU1hdHJpeFZhcmlhYmxlXSwgMSwgR0xfRkFMU0UsIG00
c3JjKSkKLSAgICBHTF9DTUQoZ2xVbmlmb3JtMWkocHJvZ3JhbUluZm8udmFyc1tUZXh0dXJlTWFw
cGVyR0xEYXRhOjpHbG9iYWxHTERhdGE6OlNvdXJjZVRleHR1cmVWYXJpYWJsZV0sIDApKQotICAg
IEdMX0NNRChnbFVuaWZvcm0xZihwcm9ncmFtSW5mby52YXJzW1RleHR1cmVNYXBwZXJHTERhdGE6
Okdsb2JhbEdMRGF0YTo6T3BhY2l0eVZhcmlhYmxlXSwgb3BhY2l0eSkpCisgICAgR0xfQ01EKGds
VW5pZm9ybU1hdHJpeDRmdihwcm9ncmFtSW5mby52YXJzW1RleHR1cmVNYXBwZXJHTERhdGE6OlNo
YXJlZEdMRGF0YTo6SW5NYXRyaXhWYXJpYWJsZV0sIDEsIEdMX0ZBTFNFLCBtNCkpCisgICAgR0xf
Q01EKGdsVW5pZm9ybU1hdHJpeDRmdihwcm9ncmFtSW5mby52YXJzW1RleHR1cmVNYXBwZXJHTERh
dGE6OlNoYXJlZEdMRGF0YTo6SW5Tb3VyY2VNYXRyaXhWYXJpYWJsZV0sIDEsIEdMX0ZBTFNFLCBt
NHNyYykpCisgICAgR0xfQ01EKGdsVW5pZm9ybTFpKHByb2dyYW1JbmZvLnZhcnNbVGV4dHVyZU1h
cHBlckdMRGF0YTo6U2hhcmVkR0xEYXRhOjpTb3VyY2VUZXh0dXJlVmFyaWFibGVdLCAwKSkKKyAg
ICBHTF9DTUQoZ2xVbmlmb3JtMWYocHJvZ3JhbUluZm8udmFyc1tUZXh0dXJlTWFwcGVyR0xEYXRh
OjpTaGFyZWRHTERhdGE6Ok9wYWNpdHlWYXJpYWJsZV0sIG9wYWNpdHkpKQogCiAgICAgaWYgKG1h
c2tUZXh0dXJlICYmIG1hc2tUZXh0dXJlLT5pc1ZhbGlkKCkpIHsKICAgICAgICAgY29uc3QgQml0
bWFwVGV4dHVyZUdMKiBtYXNrVGV4dHVyZUdMID0gc3RhdGljX2Nhc3Q8Y29uc3QgQml0bWFwVGV4
dHVyZUdMKj4obWFza1RleHR1cmUpOwpAQCAtNTAwLDggKzU4Myw4IEBAIHZvaWQgVGV4dHVyZU1h
cHBlckdMOjpkcmF3VGV4dHVyZSh1aW50MzJfdCB0ZXh0dXJlLCBib29sIG9wYXF1ZSwgY29uc3Qg
RmxvYXRTaXplCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDAsIG1h
c2tUZXh0dXJlR0wtPnJlbGF0aXZlU2l6ZSgpLmhlaWdodCgpLCAwLCAwLAogICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAwLCAwLCAxLCAwLAogICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAwLCAwLCAwLCAxfTsKLSAgICAgICAgR0xfQ01EKGds
VW5pZm9ybU1hdHJpeDRmdihwcm9ncmFtSW5mby52YXJzW1RleHR1cmVNYXBwZXJHTERhdGE6Okds
b2JhbEdMRGF0YTo6SW5NYXNrTWF0cml4VmFyaWFibGVdLCAxLCBHTF9GQUxTRSwgbTRtYXNrKSk7
Ci0gICAgICAgIEdMX0NNRChnbFVuaWZvcm0xaShwcm9ncmFtSW5mby52YXJzW1RleHR1cmVNYXBw
ZXJHTERhdGE6Okdsb2JhbEdMRGF0YTo6TWFza1RleHR1cmVWYXJpYWJsZV0sIDEpKQorICAgICAg
ICBHTF9DTUQoZ2xVbmlmb3JtTWF0cml4NGZ2KHByb2dyYW1JbmZvLnZhcnNbVGV4dHVyZU1hcHBl
ckdMRGF0YTo6U2hhcmVkR0xEYXRhOjpJbk1hc2tNYXRyaXhWYXJpYWJsZV0sIDEsIEdMX0ZBTFNF
LCBtNG1hc2spKTsKKyAgICAgICAgR0xfQ01EKGdsVW5pZm9ybTFpKHByb2dyYW1JbmZvLnZhcnNb
VGV4dHVyZU1hcHBlckdMRGF0YTo6U2hhcmVkR0xEYXRhOjpNYXNrVGV4dHVyZVZhcmlhYmxlXSwg
MSkpCiAgICAgICAgIEdMX0NNRChnbEFjdGl2ZVRleHR1cmUoR0xfVEVYVFVSRTApKQogICAgIH0K
IApAQCAtNjcwLDcgKzc1Myw3IEBAIHN0YXRpYyBpbmxpbmUgVHJhbnNmb3JtYXRpb25NYXRyaXgg
Y3JlYXRlUHJvamVjdGlvbk1hdHJpeChjb25zdCBJbnRTaXplJiBzaXplLCBiCiAKIHZvaWQgQml0
bWFwVGV4dHVyZUdMOjpiaW5kKCkKIHsKLSAgICBpbnQmIHN0ZW5jaWxJbmRleCA9IFRleHR1cmVN
YXBwZXJHTERhdGE6Omdsb2JhbEdMRGF0YS5zdGVuY2lsSW5kZXg7CisgICAgaW50JiBzdGVuY2ls
SW5kZXggPSBtX3RleHR1cmVNYXBwZXItPmRhdGEoKS5zaGFyZWRHTERhdGEoKS5zdGVuY2lsSW5k
ZXg7CiAgICAgaWYgKG1fc3VyZmFjZU5lZWRzUmVzZXQgfHwgIW1fZmJvKSB7CiAgICAgICAgIGlm
ICghbV9mYm8pCiAgICAgICAgICAgICBHTF9DTUQoZ2xHZW5GcmFtZWJ1ZmZlcnMoMSwgJm1fZmJv
KSkKQEAgLTc0Myw3ICs4MjYsNyBAQCB2b2lkIFRleHR1cmVNYXBwZXJHTDo6YmluZFN1cmZhY2Uo
Qml0bWFwVGV4dHVyZSAqc3VyZmFjZVBvaW50ZXIpCiAgICAgaWYgKCFzdXJmYWNlKSB7CiAgICAg
ICAgIEdMX0NNRChnbEJpbmRGcmFtZWJ1ZmZlcihHTF9GUkFNRUJVRkZFUiwgMCkpCiAgICAgICAg
IGRhdGEoKS5wcm9qZWN0aW9uTWF0cml4ID0gY3JlYXRlUHJvamVjdGlvbk1hdHJpeCh2aWV3cG9y
dFNpemUoKSwgdHJ1ZSkubXVsdGlwbHkodHJhbnNmb3JtKCkpOwotICAgICAgICBHTF9DTUQoZ2xT
dGVuY2lsRnVuYyhkYXRhKCkuZ2xvYmFsR0xEYXRhLnN0ZW5jaWxJbmRleCA+IDEgPyBHTF9FUVVB
TCA6IEdMX0FMV0FZUywgZGF0YSgpLmdsb2JhbEdMRGF0YS5zdGVuY2lsSW5kZXggLSAxLCBkYXRh
KCkuZ2xvYmFsR0xEYXRhLnN0ZW5jaWxJbmRleCAtIDEpKQorICAgICAgICBHTF9DTUQoZ2xTdGVu
Y2lsRnVuYyhkYXRhKCkuc2hhcmVkR0xEYXRhKCkuc3RlbmNpbEluZGV4ID4gMSA/IEdMX0VRVUFM
IDogR0xfQUxXQVlTLCBkYXRhKCkuc2hhcmVkR0xEYXRhKCkuc3RlbmNpbEluZGV4IC0gMSwgZGF0
YSgpLnNoYXJlZEdMRGF0YSgpLnN0ZW5jaWxJbmRleCAtIDEpKQogICAgICAgICBHTF9DTUQoZ2xT
dGVuY2lsT3AoR0xfS0VFUCwgR0xfS0VFUCwgR0xfS0VFUCkpCiAgICAgICAgIEdMX0NNRChnbFZp
ZXdwb3J0KDAsIDAsIHZpZXdwb3J0U2l6ZSgpLndpZHRoKCksIHZpZXdwb3J0U2l6ZSgpLmhlaWdo
dCgpKSkKICAgICAgICAgcmV0dXJuOwpAQCAtNzU0LDggKzgzNyw4IEBAIHZvaWQgVGV4dHVyZU1h
cHBlckdMOjpiaW5kU3VyZmFjZShCaXRtYXBUZXh0dXJlICpzdXJmYWNlUG9pbnRlcikKIAogdm9p
ZCBUZXh0dXJlTWFwcGVyR0w6OmJlZ2luQ2xpcChjb25zdCBUcmFuc2Zvcm1hdGlvbk1hdHJpeCYg
bW9kZWxWaWV3TWF0cml4LCBjb25zdCBGbG9hdFJlY3QmIHRhcmdldFJlY3QpCiB7Ci0gICAgVGV4
dHVyZU1hcHBlckdMRGF0YTo6R2xvYmFsR0xEYXRhOjpTaGFkZXJQcm9ncmFtSW5kZXggcHJvZ3Jh
bSA9IFRleHR1cmVNYXBwZXJHTERhdGE6Okdsb2JhbEdMRGF0YTo6Q2xpcFByb2dyYW07Ci0gICAg
Y29uc3QgVGV4dHVyZU1hcHBlckdMRGF0YTo6R2xvYmFsR0xEYXRhOjpQcm9ncmFtSW5mbyYgcHJv
Z3JhbUluZm8gPSBkYXRhKCkuZ2xvYmFsR0xEYXRhLnByb2dyYW1zW3Byb2dyYW1dOworICAgIFRl
eHR1cmVNYXBwZXJHTERhdGE6OlNoYXJlZEdMRGF0YTo6U2hhZGVyUHJvZ3JhbUluZGV4IHByb2dy
YW0gPSBUZXh0dXJlTWFwcGVyR0xEYXRhOjpTaGFyZWRHTERhdGE6OkNsaXBQcm9ncmFtOworICAg
IGNvbnN0IFRleHR1cmVNYXBwZXJHTERhdGE6OlNoYXJlZEdMRGF0YTo6UHJvZ3JhbUluZm8mIHBy
b2dyYW1JbmZvID0gZGF0YSgpLnNoYXJlZEdMRGF0YSgpLnByb2dyYW1zW3Byb2dyYW1dOwogICAg
IEdMX0NNRChnbFVzZVByb2dyYW0ocHJvZ3JhbUluZm8uaWQpKQogICAgIEdMX0NNRChnbEVuYWJs
ZVZlcnRleEF0dHJpYkFycmF5KHByb2dyYW1JbmZvLnZlcnRleEF0dHJpYikpCiAgICAgY29uc3Qg
R0xmbG9hdCB1bml0UmVjdFtdID0gezAsIDAsIDEsIDAsIDEsIDEsIDAsIDF9OwpAQCAtNzc1LDkg
Kzg1OCw5IEBAIHZvaWQgVGV4dHVyZU1hcHBlckdMOjpiZWdpbkNsaXAoY29uc3QgVHJhbnNmb3Jt
YXRpb25NYXRyaXgmIG1vZGVsVmlld01hdHJpeCwgY29uCiAgICAgICAgIG1hdHJpeC5tNDEoKSwg
bWF0cml4Lm00MigpLCBtYXRyaXgubTQzKCksIG1hdHJpeC5tNDQoKQogICAgIH07CiAKLSAgICBp
bnQmIHN0ZW5jaWxJbmRleCA9IGRhdGEoKS5nbG9iYWxHTERhdGEuc3RlbmNpbEluZGV4OworICAg
IGludCYgc3RlbmNpbEluZGV4ID0gZGF0YSgpLnNoYXJlZEdMRGF0YSgpLnN0ZW5jaWxJbmRleDsK
IAotICAgIEdMX0NNRChnbFVuaWZvcm1NYXRyaXg0ZnYocHJvZ3JhbUluZm8udmFyc1tUZXh0dXJl
TWFwcGVyR0xEYXRhOjpHbG9iYWxHTERhdGE6OkluTWF0cml4VmFyaWFibGVdLCAxLCBHTF9GQUxT
RSwgbTQpKQorICAgIEdMX0NNRChnbFVuaWZvcm1NYXRyaXg0ZnYocHJvZ3JhbUluZm8udmFyc1tU
ZXh0dXJlTWFwcGVyR0xEYXRhOjpTaGFyZWRHTERhdGE6OkluTWF0cml4VmFyaWFibGVdLCAxLCBH
TF9GQUxTRSwgbTQpKQogICAgIEdMX0NNRChnbEVuYWJsZShHTF9TVEVOQ0lMX1RFU1QpKQogICAg
IEdMX0NNRChnbFN0ZW5jaWxGdW5jKEdMX05FVkVSLCBzdGVuY2lsSW5kZXgsIHN0ZW5jaWxJbmRl
eCkpCiAgICAgR0xfQ01EKGdsU3RlbmNpbE9wKEdMX1JFUExBQ0UsIEdMX1JFUExBQ0UsIEdMX1JF
UExBQ0UpKQpAQCAtNzkxLDggKzg3NCw4IEBAIHZvaWQgVGV4dHVyZU1hcHBlckdMOjpiZWdpbkNs
aXAoY29uc3QgVHJhbnNmb3JtYXRpb25NYXRyaXgmIG1vZGVsVmlld01hdHJpeCwgY29uCiAKIHZv
aWQgVGV4dHVyZU1hcHBlckdMOjplbmRDbGlwKCkKIHsKLSAgICBkYXRhKCkuZ2xvYmFsR0xEYXRh
LnN0ZW5jaWxJbmRleCA+Pj0gMTsKLSAgICBnbFN0ZW5jaWxGdW5jKGRhdGEoKS5nbG9iYWxHTERh
dGEuc3RlbmNpbEluZGV4ID4gMSA/IEdMX0VRVUFMIDogR0xfQUxXQVlTLCBkYXRhKCkuZ2xvYmFs
R0xEYXRhLnN0ZW5jaWxJbmRleCAtIDEsIGRhdGEoKS5nbG9iYWxHTERhdGEuc3RlbmNpbEluZGV4
IC0gMSk7CisgICAgZGF0YSgpLnNoYXJlZEdMRGF0YSgpLnN0ZW5jaWxJbmRleCA+Pj0gMTsKKyAg
ICBnbFN0ZW5jaWxGdW5jKGRhdGEoKS5zaGFyZWRHTERhdGEoKS5zdGVuY2lsSW5kZXggPiAxID8g
R0xfRVFVQUwgOiBHTF9BTFdBWVMsIGRhdGEoKS5zaGFyZWRHTERhdGEoKS5zdGVuY2lsSW5kZXgg
LSAxLCBkYXRhKCkuc2hhcmVkR0xEYXRhKCkuc3RlbmNpbEluZGV4IC0gMSk7CiB9CiAKIFBhc3NS
ZWZQdHI8Qml0bWFwVGV4dHVyZT4gVGV4dHVyZU1hcHBlckdMOjpjcmVhdGVUZXh0dXJlKCkKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQyL0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJLaXQyL0NoYW5n
ZUxvZwppbmRleCAwNDczMGY0Li5iZGVkZmNlIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9D
aGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYktpdDIvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMjAgQEAK
KzIwMTItMDEtMDkgIFZpYXRjaGVzbGF2IE9zdGFwZW5rbyAgPG9zdGFwZW5rby52aWF0Y2hlc2xh
dkBub2tpYS5jb20+CisKKyAgICAgICAgW1F0XVtXSzJdUkVHUkVTU0lPTihyMTAyNDM1KTogSXQg
bWFkZSB0c3RfUVF1aWNrV2ViVmlldzo6c2hvdygpIGNyYXNoCisgICAgICAgIGh0dHBzOi8vYnVn
cy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD03NDE3NgorCisgICAgICAgIFJldmlld2VkIGJ5
IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIENoZWNrIHRleHR1cmUgbWFwcGVyIGV4aXN0cyBh
bHJlYWR5IGluIGVuc3VyZVJvb3RMYXllciB0byBhdm9pZCByZWNyZWNhdGlvbi4KKyAgICAgICAg
Q2hlY2sgaWYgcm9vdCBsYXllciB3YXMgZGVsZXRlZCBhbHJlYWR5IGluIHB1cmdlR0xSZXNvdXJj
ZXMuCisgICAgICAgIEFkZGVkIG11bHRpV2luZG93IEFQSSB0ZXN0LgorCisgICAgICAgICogVUlQ
cm9jZXNzL0FQSS9xdC90ZXN0cy9xcXVpY2t3ZWJ2aWV3L3RzdF9xcXVpY2t3ZWJ2aWV3LmNwcDoK
KyAgICAgICAgKHRzdF9RUXVpY2tXZWJWaWV3OjptdWx0aVdpbmRvdyk6CisgICAgICAgICogVUlQ
cm9jZXNzL3F0L0xheWVyVHJlZUhvc3RQcm94eVF0LmNwcDoKKyAgICAgICAgKFdlYktpdDo6TGF5
ZXJUcmVlSG9zdFByb3h5OjplbnN1cmVSb290TGF5ZXIpOgorICAgICAgICAoV2ViS2l0OjpMYXll
clRyZWVIb3N0UHJveHk6OnB1cmdlR0xSZXNvdXJjZXMpOgorCiAyMDEyLTAxLTA2ICBNYXJrIFJv
d2UgIDxtcm93ZUBhcHBsZS5jb20+CiAKICAgICAgICAgUkVHUkVTU0lPTiAoV2ViS2l0Mik6IFNh
dmUgYXMgUERGIG5vIGxvbmdlciBnZW5lcmF0ZXMgbGlua3MgdG8gVVJMcwpkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYktpdDIvVUlQcm9jZXNzL0FQSS9xdC90ZXN0cy9xcXVpY2t3ZWJ2aWV3L3RzdF9x
cXVpY2t3ZWJ2aWV3LmNwcCBiL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9BUEkvcXQvdGVzdHMv
cXF1aWNrd2Vidmlldy90c3RfcXF1aWNrd2Vidmlldy5jcHAKaW5kZXggNTdiN2VjMS4uMTVjMjNm
NCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL0FQSS9xdC90ZXN0cy9xcXVp
Y2t3ZWJ2aWV3L3RzdF9xcXVpY2t3ZWJ2aWV3LmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0Mi9VSVBy
b2Nlc3MvQVBJL3F0L3Rlc3RzL3FxdWlja3dlYnZpZXcvdHN0X3FxdWlja3dlYnZpZXcuY3BwCkBA
IC01MSw2ICs1MSw3IEBAIHByaXZhdGUgc2xvdHM6CiAgICAgdm9pZCBzaG93KCk7CiAgICAgdm9p
ZCBzaG93V2ViVmlldygpOwogICAgIHZvaWQgcmVtb3ZlRnJvbUNhbnZhcygpOworICAgIHZvaWQg
bXVsdGlXaW5kb3coKTsKIAogcHJpdmF0ZToKICAgICBpbmxpbmUgUVF1aWNrV2ViVmlldyogd2Vi
VmlldygpIGNvbnN0OwpAQCAtMjcwLDYgKzI3MSwzMCBAQCB2b2lkIHRzdF9RUXVpY2tXZWJWaWV3
OjpyZW1vdmVGcm9tQ2FudmFzKCkKICAgICBRVGVzdDo6cVdhaXQoMjAwKTsKIH0KIAordm9pZCB0
c3RfUVF1aWNrV2ViVmlldzo6bXVsdGlXaW5kb3coKQoreworICAgIHNob3dXZWJWaWV3KCk7CisK
KyAgICAvLyBUaGlzIHNob3VsZCBub3QgY3Jhc2guCisgICAgUVF1aWNrV2ViVmlldyogd2ViVmll
dzEgPSBuZXcgUVF1aWNrV2ViVmlldygpOworICAgIFFTY29wZWRQb2ludGVyPFRlc3RXaW5kb3c+
IHdpbmRvdzEobmV3IFRlc3RXaW5kb3cod2ViVmlldzEpKTsKKyAgICBRUXVpY2tXZWJWaWV3KiB3
ZWJWaWV3MiA9IG5ldyBRUXVpY2tXZWJWaWV3KCk7CisgICAgUVNjb3BlZFBvaW50ZXI8VGVzdFdp
bmRvdz4gd2luZG93MihuZXcgVGVzdFdpbmRvdyh3ZWJWaWV3MikpOworCisgICAgd2ViVmlldzEt
PnNldFNpemUoUVNpemVGKDMwMCwgNDAwKSk7CisgICAgd2ViVmlldzEtPmxvYWQoUVVybDo6ZnJv
bUxvY2FsRmlsZShRTGF0aW4xU3RyaW5nKFRFU1RTX1NPVVJDRV9ESVIgIi9odG1sL3Njcm9sbC5o
dG1sIikpKTsKKyAgICBRVkVSSUZZKHdhaXRGb3JTaWduYWwod2ViVmlldzEsIFNJR05BTChsb2Fk
U3VjY2VlZGVkKCkpKSk7CisgICAgd2luZG93MS0+c2hvdygpOworICAgIHdlYlZpZXcxLT5zZXRW
aXNpYmxlKHRydWUpOworCisgICAgd2ViVmlldzItPnNldFNpemUoUVNpemVGKDMwMCwgNDAwKSk7
CisgICAgd2ViVmlldzItPmxvYWQoUVVybDo6ZnJvbUxvY2FsRmlsZShRTGF0aW4xU3RyaW5nKFRF
U1RTX1NPVVJDRV9ESVIgIi9odG1sL2Jhc2ljX3BhZ2UuaHRtbCIpKSk7CisgICAgUVZFUklGWSh3
YWl0Rm9yU2lnbmFsKHdlYlZpZXcyLCBTSUdOQUwobG9hZFN1Y2NlZWRlZCgpKSkpOworICAgIHdp
bmRvdzItPnNob3coKTsKKyAgICB3ZWJWaWV3Mi0+c2V0VmlzaWJsZSh0cnVlKTsKKyAgICBRVGVz
dDo6cVdhaXQoMjAwKTsKK30KKwogdm9pZCB0c3RfUVF1aWNrV2ViVmlldzo6c2Nyb2xsUmVxdWVz
dCgpCiB7CiAgICAgd2ViVmlldygpLT5zZXRTaXplKFFTaXplRigzMDAsIDQwMCkpOwpkaWZmIC0t
Z2l0IGEvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL3F0L0xheWVyVHJlZUhvc3RQcm94eVF0LmNw
cCBiL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9xdC9MYXllclRyZWVIb3N0UHJveHlRdC5jcHAK
aW5kZXggYTFkZDI3Mi4uNjA3MzZiMSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvVUlQcm9j
ZXNzL3F0L0xheWVyVHJlZUhvc3RQcm94eVF0LmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0Mi9VSVBy
b2Nlc3MvcXQvTGF5ZXJUcmVlSG9zdFByb3h5UXQuY3BwCkBAIC00NjAsNyArNDYwLDggQEAgdm9p
ZCBMYXllclRyZWVIb3N0UHJveHk6OmVuc3VyZVJvb3RMYXllcigpCiAKICAgICAvLyBUaGUgcm9v
dCBsYXllciBzaG91bGQgbm90IGhhdmUgemVybyBzaXplLCBvciBpdCB3b3VsZCBiZSBvcHRpbWl6
ZWQgb3V0LgogICAgIG1fcm9vdExheWVyLT5zZXRTaXplKEZsb2F0U2l6ZSgxLjAsIDEuMCkpOwot
ICAgIG1fdGV4dHVyZU1hcHBlciA9IFRleHR1cmVNYXBwZXJHTDo6Y3JlYXRlKCk7CisgICAgaWYg
KCFtX3RleHR1cmVNYXBwZXIpCisgICAgICAgIG1fdGV4dHVyZU1hcHBlciA9IFRleHR1cmVNYXBw
ZXJHTDo6Y3JlYXRlKCk7CiAgICAgdG9UZXh0dXJlTWFwcGVyTm9kZShtX3Jvb3RMYXllci5nZXQo
KSktPnNldFRleHR1cmVNYXBwZXIobV90ZXh0dXJlTWFwcGVyLmdldCgpKTsKIH0KIApAQCAtNjIz
LDcgKzYyNCw5IEBAIHZvaWQgTGF5ZXJUcmVlSG9zdFByb3h5OjpwdXJnZUdMUmVzb3VyY2VzKCkK
IHsKICAgICBUZXh0dXJlTWFwcGVyTm9kZSogbm9kZSA9IHRvVGV4dHVyZU1hcHBlck5vZGUocm9v
dExheWVyKCkpOwogCi0gICAgbm9kZS0+cHVyZ2VOb2RlVGV4dHVyZXNSZWN1cnNpdmUoKTsKKyAg
ICBpZiAobm9kZSkKKyAgICAgICAgbm9kZS0+cHVyZ2VOb2RlVGV4dHVyZXNSZWN1cnNpdmUoKTsK
KwogICAgIG1fZGlyZWN0bHlDb21wb3NpdGVkSW1hZ2VzLmNsZWFyKCk7CiAKICAgICBtX3RleHR1
cmVNYXBwZXIuY2xlYXIoKTsK
</data>
<flag name="review"
          id="122353"
          type_id="1"
          status="-"
          setter="noam"
    />
          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>121857</attachid>
            <date>2012-01-10 08:53:47 -0800</date>
            <delta_ts>2012-01-10 14:13:27 -0800</delta_ts>
            <desc>Updated patch</desc>
            <filename>GL_resources_dealloc_fix_04.diff</filename>
            <type>text/plain</type>
            <size>20039</size>
            <attacher name="Viatcheslav Ostapenko">ostap73</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJDb3JlL0No
YW5nZUxvZwppbmRleCA3ZjZlZGM5Li44MGUzMDZlIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29y
ZS9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMzQg
QEAKKzIwMTItMDEtMTAgIFZpYXRjaGVzbGF2IE9zdGFwZW5rbyAgPG9zdGFwZW5rby52aWF0Y2hl
c2xhdkBub2tpYS5jb20+CisKKyAgICAgICAgW1F0XVtXSzJdUkVHUkVTU0lPTihyMTAyNDM1KTog
SXQgbWFkZSB0c3RfUVF1aWNrV2ViVmlldzo6c2hvdygpIGNyYXNoCisgICAgICAgIGh0dHBzOi8v
YnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD03NDE3NgorCisgICAgICAgIFJldmlld2Vk
IGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIFJlcGxhY2VzIHN0YXRpYyBnbG9iYWwgR0wg
cmVzb3VyY2UgaG9sZGVyIHdpdGggaG9sZGVyIHNoYXJlZCBiZXR3ZWVuCisgICAgICAgIFRleHR1
cmVNYXBwZXJHTCBpbnN0YW5jZXMgY3JlYXRlZCBvbiB0aGUgc2FtZSBHTCBjb250ZXh0LiBBbHNv
IGFkZHMKKyAgICAgICAgZGVhbGxvY2F0aW9uIG9mIEdMIHJlc291cmNlcyB3aGVuIGxhc3QgVGV4
dHVyZU1hcHBlckdMIGluc3RhbmNlIG9uIHRoZSAKKyAgICAgICAgY3VycmVudCBHTCBjb250ZXh0
IGdldHMgZGVsZXRlZC4KKworICAgICAgICBUZXN0ZWQgYnkgbXVsdGlwbGVXZWJWaWV3V2luZG93
cyBhbmQgbXVsdGlwbGVXZWJWaWV3cyBRdCBXSzIgQVBJIHRlc3RzLgorCisgICAgICAgICogcGxh
dGZvcm0vZ3JhcGhpY3Mvb3BlbmdsL1RleHR1cmVNYXBwZXJHTC5jcHA6CisgICAgICAgIChXZWJD
b3JlOjpUZXh0dXJlTWFwcGVyR0xEYXRhOjpTaGFyZWRHTERhdGE6OmdldEN1cnJlbnRHTENvbnRl
eHQpOgorICAgICAgICAoV2ViQ29yZTo6VGV4dHVyZU1hcHBlckdMRGF0YTo6U2hhcmVkR0xEYXRh
OjpnbENvbnRleHREYXRhTWFwKToKKyAgICAgICAgKFdlYkNvcmU6OlRleHR1cmVNYXBwZXJHTERh
dGE6OlNoYXJlZEdMRGF0YTo6Y3VyZW50U2hhcmVkR0xEYXRhKToKKyAgICAgICAgKFdlYkNvcmU6
OlRleHR1cmVNYXBwZXJHTERhdGE6OlNoYXJlZEdMRGF0YTo6Y3JlYXRlU2hhZGVyUHJvZ3JhbSk6
CisgICAgICAgIChXZWJDb3JlOjpUZXh0dXJlTWFwcGVyR0xEYXRhOjpTaGFyZWRHTERhdGE6OmRl
bGV0ZVNoYWRlclByb2dyYW0pOgorICAgICAgICAoV2ViQ29yZTo6VGV4dHVyZU1hcHBlckdMRGF0
YTo6U2hhcmVkR0xEYXRhOjpTaGFyZWRHTERhdGEpOgorICAgICAgICAoV2ViQ29yZTo6VGV4dHVy
ZU1hcHBlckdMRGF0YTo6U2hhcmVkR0xEYXRhOjp+U2hhcmVkR0xEYXRhKToKKyAgICAgICAgKFdl
YkNvcmU6OlRleHR1cmVNYXBwZXJHTERhdGE6OnNoYXJlZEdMRGF0YSk6CisgICAgICAgIChXZWJD
b3JlOjpUZXh0dXJlTWFwcGVyR0xEYXRhOjpUZXh0dXJlTWFwcGVyR0xEYXRhKToKKyAgICAgICAg
KFdlYkNvcmU6OlRleHR1cmVNYXBwZXJHTDo6aW5pdGlhbGl6ZVNoYWRlcnMpOgorICAgICAgICAo
V2ViQ29yZTo6VGV4dHVyZU1hcHBlckdMOjpkcmF3VGV4dHVyZSk6CisgICAgICAgIChXZWJDb3Jl
OjpCaXRtYXBUZXh0dXJlR0w6OmJpbmQpOgorICAgICAgICAoV2ViQ29yZTo6VGV4dHVyZU1hcHBl
ckdMOjpiaW5kU3VyZmFjZSk6CisgICAgICAgIChXZWJDb3JlOjpUZXh0dXJlTWFwcGVyR0w6OmJl
Z2luQ2xpcCk6CisgICAgICAgIChXZWJDb3JlOjpUZXh0dXJlTWFwcGVyR0w6OmVuZENsaXApOgor
CiAyMDEyLTAxLTA3ICBDaHJpcyBNYXJyaW4gIDxjbWFycmluQGFwcGxlLmNvbT4KIAogICAgICAg
ICBGaXhlZCBBTkdMRSBidWlsZCBmb3IgR05VIGFuZCBRVCBicm9rZW4gaW4gaHR0cHM6Ly90cmFj
LndlYmtpdC5vcmcvY2hhbmdlc2V0LzEwNDM2MwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUv
cGxhdGZvcm0vZ3JhcGhpY3Mvb3BlbmdsL1RleHR1cmVNYXBwZXJHTC5jcHAgYi9Tb3VyY2UvV2Vi
Q29yZS9wbGF0Zm9ybS9ncmFwaGljcy9vcGVuZ2wvVGV4dHVyZU1hcHBlckdMLmNwcAppbmRleCAy
OGVlMmJhLi45ZTAwZWU5IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFw
aGljcy9vcGVuZ2wvVGV4dHVyZU1hcHBlckdMLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0
Zm9ybS9ncmFwaGljcy9vcGVuZ2wvVGV4dHVyZU1hcHBlckdMLmNwcApAQCAtNDEsNiArNDEsMTYg
QEAKICNpbmNsdWRlIDxHTC9nbC5oPgogI2VuZGlmCiAKKyNpZiBkZWZpbmVkKFRFWE1BUF9PUEVO
R0xfRVNfMikKKyNpbmNsdWRlIDxFR0wvZWdsLmg+CisjZWxpZiBPUyhXSU5ET1dTKQorI2luY2x1
ZGUgPHdpbmRvd3MuaD4KKyNlbGlmIE9TKE1BQ19PU19YKQorI2luY2x1ZGUgPEFHTC9hZ2wuaD4K
KyNlbGlmIGRlZmluZWQoWFBfVU5JWCkKKyNpbmNsdWRlIDxHTC9nbHguaD4KKyNlbmRpZgorCiAj
aWYgIWRlZmluZWQoVEVYTUFQX09QRU5HTF9FU18yKSAmJiAhUExBVEZPUk0oUVQpCiBleHRlcm4g
IkMiIHsKICAgICB2b2lkIGdsVW5pZm9ybTFmKEdMaW50LCBHTGZsb2F0KTsKQEAgLTEwMyw3ICsx
MTMsNjAgQEAgaW5saW5lIHN0YXRpYyB2b2lkIGRlYnVnR0xDb21tYW5kKGNvbnN0IGNoYXIqIGNv
bW1hbmQsIGludCBsaW5lKQogI2VuZGlmCiAKIHN0cnVjdCBUZXh0dXJlTWFwcGVyR0xEYXRhIHsK
LSAgICBzdGF0aWMgc3RydWN0IEdsb2JhbEdMRGF0YSB7CisgICAgc3RydWN0IFNoYXJlZEdMRGF0
YSA6IHB1YmxpYyBSZWZDb3VudGVkPFNoYXJlZEdMRGF0YT4geworI2lmIGRlZmluZWQoVEVYTUFQ
X09QRU5HTF9FU18yKQorICAgICAgICB0eXBlZGVmIEVHTENvbnRleHQgR0xDb250ZXh0OworICAg
ICAgICBzdGF0aWMgR0xDb250ZXh0IGdldEN1cnJlbnRHTENvbnRleHQoKQorICAgICAgICB7Cisg
ICAgICAgICAgICByZXR1cm4gZWdsR2V0Q3VycmVudENvbnRleHQoKTsKKyAgICAgICAgfQorI2Vs
aWYgT1MoV0lORE9XUykKKyAgICAgICAgdHlwZWRlZiBIR0xSQyBHTENvbnRleHQ7CisgICAgICAg
IHN0YXRpYyBHTENvbnRleHQgZ2V0Q3VycmVudEdMQ29udGV4dCgpCisgICAgICAgIHsKKyAgICAg
ICAgICAgIHJldHVybiB3Z2xHZXRDdXJyZW50Q29udGV4dCgpOworICAgICAgICB9CisjZWxpZiBP
UyhNQUNfT1NfWCkKKyAgICAgICAgdHlwZWRlZiBBR0xDb250ZXh0IEdMQ29udGV4dDsKKyAgICAg
ICAgc3RhdGljIEdMQ29udGV4dCBnZXRDdXJyZW50R0xDb250ZXh0KCkKKyAgICAgICAgeworICAg
ICAgICAgICAgcmV0dXJuIGFnbEdldEN1cnJlbnRDb250ZXh0KCk7CisgICAgICAgIH0KKyNlbGlm
IGRlZmluZWQoWFBfVU5JWCkKKyAgICAgICAgdHlwZWRlZiBHTFhDb250ZXh0IEdMQ29udGV4dDsK
KyAgICAgICAgc3RhdGljIEdMQ29udGV4dCBnZXRDdXJyZW50R0xDb250ZXh0KCkKKyAgICAgICAg
eworICAgICAgICAgICAgcmV0dXJuIGdsWEdldEN1cnJlbnRDb250ZXh0KCk7CisgICAgICAgIH0K
KyNlbHNlCisgICAgICAgIC8vIERlZmF1bHQgaW1wbGVtZW50YXRpb24gZm9yIHVua25vd24gb3Bl
bmdsLgorICAgICAgICAvLyBSZXR1cm5zIGFsd2F5cyBpbmNyZWFzaW5nIG51bWJlciBhbmQgZGlz
YWJsZXMgR0wgY29udGV4dCBkYXRhIHNoYXJpbmcuCisgICAgICAgIHR5cGVkZWYgdW5zaWduZWQg
aW50IEdMQ29udGV4dDsKKyAgICAgICAgc3RhdGljIEdMQ29udGV4dCBnZXRDdXJyZW50R0xDb250
ZXh0KCkKKyAgICAgICAgeworICAgICAgICAgICAgc3RhdGljIEdMQ29udGV4dCBkdW1teUNvbnRl
eHRDb3VudGVyOworICAgICAgICAgICAgcmV0dXJuICsrZHVtbXlDb250ZXh0Q291bnRlcjsKKyAg
ICAgICAgfQorCisjZW5kaWYKKworICAgICAgICB0eXBlZGVmIEhhc2hNYXA8R0xDb250ZXh0LCBT
aGFyZWRHTERhdGEqPiBHTENvbnRleHREYXRhTWFwOworICAgICAgICBzdGF0aWMgR0xDb250ZXh0
RGF0YU1hcCYgZ2xDb250ZXh0RGF0YU1hcCgpCisgICAgICAgIHsKKyAgICAgICAgICAgIHN0YXRp
YyBHTENvbnRleHREYXRhTWFwIG1hcDsKKyAgICAgICAgICAgIHJldHVybiBtYXA7CisgICAgICAg
IH0KKworICAgICAgICBzdGF0aWMgUGFzc1JlZlB0cjxTaGFyZWRHTERhdGE+IGN1cmVudFNoYXJl
ZEdMRGF0YSgpCisgICAgICAgIHsKKyAgICAgICAgICAgIEdMQ29udGV4dCBjdXJyZW50R0xDb25l
eHQgPSBnZXRDdXJyZW50R0xDb250ZXh0KCk7CisgICAgICAgICAgICBHTENvbnRleHREYXRhTWFw
OjppdGVyYXRvciBpdCA9IGdsQ29udGV4dERhdGFNYXAoKS5maW5kKGN1cnJlbnRHTENvbmV4dCk7
CisgICAgICAgICAgICBpZiAoaXQgIT0gZ2xDb250ZXh0RGF0YU1hcCgpLmVuZCgpKQorICAgICAg
ICAgICAgICAgIHJldHVybiBpdC0+c2Vjb25kOworCisgICAgICAgICAgICByZXR1cm4gYWRvcHRS
ZWYobmV3IFNoYXJlZEdMRGF0YShnZXRDdXJyZW50R0xDb250ZXh0KCkpKTsKKyAgICAgICAgfQor
CiAgICAgICAgIGVudW0gU2hhZGVyUHJvZ3JhbUluZGV4IHsKICAgICAgICAgICAgIE5vUHJvZ3Jh
bSA9IC0xLAogICAgICAgICAgICAgU2ltcGxlUHJvZ3JhbSwKQEAgLTEyOCw2ICsxOTEsOCBAQCBz
dHJ1Y3QgVGV4dHVyZU1hcHBlckdMRGF0YSB7CiAgICAgICAgICAgICBHTHVpbnQgaWQ7CiAgICAg
ICAgICAgICBHTHVpbnQgdmVydGV4QXR0cmliOwogICAgICAgICAgICAgR0xpbnQgdmFyc1tWYXJp
YWJsZUNvdW50XTsKKyAgICAgICAgICAgIEdMdWludCB2ZXJ0ZXhTaGFkZXI7CisgICAgICAgICAg
ICBHTHVpbnQgZnJhZ21lbnRTaGFkZXI7CiAgICAgICAgIH07CiAKICAgICAgICAgR0xpbnQgZ2V0
VW5pZm9ybUxvY2F0aW9uKFNoYWRlclByb2dyYW1JbmRleCBwcm9nLCBTaGFkZXJWYXJpYWJsZUlu
ZGV4IHZhciwgY29uc3QgY2hhciogbmFtZSkKQEAgLTE0OSwxNiArMjE0LDUwIEBAIHN0cnVjdCBU
ZXh0dXJlTWFwcGVyR0xEYXRhIHsKICAgICAgICAgICAgIEdMX0NNRChnbExpbmtQcm9ncmFtKHBy
b2dyYW1JRCkpCiAgICAgICAgICAgICBwcm9ncmFtc1tpbmRleF0udmVydGV4QXR0cmliID0gZ2xH
ZXRBdHRyaWJMb2NhdGlvbihwcm9ncmFtSUQsICJJblZlcnRleCIpOwogICAgICAgICAgICAgcHJv
Z3JhbXNbaW5kZXhdLmlkID0gcHJvZ3JhbUlEOworICAgICAgICAgICAgcHJvZ3JhbXNbaW5kZXhd
LnZlcnRleFNoYWRlciA9IHZlcnRleFNoYWRlcjsKKyAgICAgICAgICAgIHByb2dyYW1zW2luZGV4
XS5mcmFnbWVudFNoYWRlciA9IGZyYWdtZW50U2hhZGVyOworICAgICAgICB9CisKKyAgICAgICAg
dm9pZCBkZWxldGVTaGFkZXJQcm9ncmFtKFNoYWRlclByb2dyYW1JbmRleCBpbmRleCkKKyAgICAg
ICAgeworICAgICAgICAgICAgUHJvZ3JhbUluZm8mIHByb2dyYW1JbmZvID0gcHJvZ3JhbXNbaW5k
ZXhdOworICAgICAgICAgICAgR0x1aW50IHByb2dyYW1JRCA9IHByb2dyYW1JbmZvLmlkOworICAg
ICAgICAgICAgR0xfQ01EKGdsRGV0YWNoU2hhZGVyKHByb2dyYW1JRCwgcHJvZ3JhbUluZm8udmVy
dGV4U2hhZGVyKSkKKyAgICAgICAgICAgIEdMX0NNRChnbERlbGV0ZVNoYWRlcihwcm9ncmFtSW5m
by52ZXJ0ZXhTaGFkZXIpKQorICAgICAgICAgICAgR0xfQ01EKGdsRGV0YWNoU2hhZGVyKHByb2dy
YW1JRCwgcHJvZ3JhbUluZm8uZnJhZ21lbnRTaGFkZXIpKQorICAgICAgICAgICAgR0xfQ01EKGds
RGVsZXRlU2hhZGVyKHByb2dyYW1JbmZvLmZyYWdtZW50U2hhZGVyKSkKKyAgICAgICAgICAgIEdM
X0NNRChnbERlbGV0ZVByb2dyYW0ocHJvZ3JhbUlEKSkKICAgICAgICAgfQogCiAgICAgICAgIFBy
b2dyYW1JbmZvIHByb2dyYW1zW1Byb2dyYW1Db3VudF07CiAKICAgICAgICAgaW50IHN0ZW5jaWxJ
bmRleDsKKyAgICAgICAgYm9vbCBpbml0aWFsaXplZDsKIAotICAgICAgICBHbG9iYWxHTERhdGEo
KQotICAgICAgICAgICAgOiBzdGVuY2lsSW5kZXgoMSkKLSAgICAgICAgeyB9Ci0gICAgfSBnbG9i
YWxHTERhdGE7CisgICAgICAgIFNoYXJlZEdMRGF0YShHTENvbnRleHQgZ2xDb250ZXh0KSA6IHN0
ZW5jaWxJbmRleCgxKSwgaW5pdGlhbGl6ZWQoZmFsc2UpCisgICAgICAgIHsKKyAgICAgICAgICAg
IGdsQ29udGV4dERhdGFNYXAoKS5hZGQoZ2xDb250ZXh0LCB0aGlzKTsKKyAgICAgICAgfQorCisg
ICAgICAgIH5TaGFyZWRHTERhdGEoKQorICAgICAgICB7CisgICAgICAgICAgICBpZiAoaW5pdGlh
bGl6ZWQpIHsKKyAgICAgICAgICAgICAgICBmb3IgKGludCBpID0gU2ltcGxlUHJvZ3JhbTsgaSA8
IFByb2dyYW1Db3VudDsgKytpKQorICAgICAgICAgICAgICAgICAgICBkZWxldGVTaGFkZXJQcm9n
cmFtKFNoYWRlclByb2dyYW1JbmRleChpKSk7CisgICAgICAgICAgICB9CisKKyAgICAgICAgICAg
IEdMQ29udGV4dERhdGFNYXA6OmNvbnN0X2l0ZXJhdG9yIG1hcEVuZCA9IGdsQ29udGV4dERhdGFN
YXAoKS5lbmQoKTsKKyAgICAgICAgICAgIEdMQ29udGV4dERhdGFNYXA6Oml0ZXJhdG9yIGl0Owor
ICAgICAgICAgICAgZm9yIChpdCA9IGdsQ29udGV4dERhdGFNYXAoKS5iZWdpbigpOyBpdCAhPSBt
YXBFbmQ7ICsraXQpIHsKKyAgICAgICAgICAgICAgICBpZiAoaXQtPnNlY29uZCA9PSB0aGlzKQor
ICAgICAgICAgICAgICAgICAgICBicmVhazsKKyAgICAgICAgICAgIH0KKworICAgICAgICAgICAg
QVNTRVJUKGl0ICE9IG1hcEVuZCk7CisgICAgICAgICAgICBnbENvbnRleHREYXRhTWFwKCkucmVt
b3ZlKGl0KTsKKyAgICAgICAgfQorCisgICAgfTsKIAogICAgIHN0cnVjdCBEaXJlY3RseUNvbXBv
c2l0ZWRJbWFnZVJlcG9zaXRvcnkgewogICAgICAgICBzdHJ1Y3QgRW50cnkgewpAQCAtMjExLDE3
ICszMTAsMjIgQEAgc3RydWN0IFRleHR1cmVNYXBwZXJHTERhdGEgewogICAgICAgICB9CiAgICAg
fSBkaXJlY3RseUNvbXBvc2l0ZWRJbWFnZXM7CiAKKyAgICBTaGFyZWRHTERhdGEmIHNoYXJlZEdM
RGF0YSgpIGNvbnN0CisgICAgeworICAgICAgICByZXR1cm4gKihtX3NoYXJlZEdMRGF0YS5nZXQo
KSk7CisgICAgfQorCiAgICAgVGV4dHVyZU1hcHBlckdMRGF0YSgpCi0gICAgICAgIDogY3VycmVu
dFByb2dyYW0oVGV4dHVyZU1hcHBlckdMRGF0YTo6R2xvYmFsR0xEYXRhOjpOb1Byb2dyYW0pCisg
ICAgICAgIDogY3VycmVudFByb2dyYW0oU2hhcmVkR0xEYXRhOjpOb1Byb2dyYW0pCisgICAgICAg
ICwgbV9zaGFyZWRHTERhdGEoU2hhcmVkR0xEYXRhOjpjdXJlbnRTaGFyZWRHTERhdGEoKSkKICAg
ICB7IH0KIAogICAgIFRyYW5zZm9ybWF0aW9uTWF0cml4IHByb2plY3Rpb25NYXRyaXg7CiAgICAg
aW50IGN1cnJlbnRQcm9ncmFtOwogICAgIGludCBwcmV2aW91c1Byb2dyYW07CisgICAgUmVmUHRy
PFNoYXJlZEdMRGF0YT4gbV9zaGFyZWRHTERhdGE7CiB9OwogCi1UZXh0dXJlTWFwcGVyR0xEYXRh
OjpHbG9iYWxHTERhdGEgVGV4dHVyZU1hcHBlckdMRGF0YTo6Z2xvYmFsR0xEYXRhOwotCiBjbGFz
cyBCaXRtYXBUZXh0dXJlR0wgOiBwdWJsaWMgQml0bWFwVGV4dHVyZSB7CiBwdWJsaWM6CiAgICAg
dmlydHVhbCB2b2lkIGRlc3Ryb3koKTsKQEAgLTI4OSwxMSArMzkzLDExIEBAIHByaXZhdGU6CiB9
OwogCiAjZGVmaW5lIFRFWE1BUF9HRVRfU0hBREVSX1ZBUl9MT0NBVElPTihwcm9nLCB2YXIpIFwK
LSAgICBpZiAoVGV4dHVyZU1hcHBlckdMRGF0YTo6Z2xvYmFsR0xEYXRhLmdldFVuaWZvcm1Mb2Nh
dGlvbihUZXh0dXJlTWFwcGVyR0xEYXRhOjpnbG9iYWxHTERhdGEucHJvZyMjUHJvZ3JhbSwgVGV4
dHVyZU1hcHBlckdMRGF0YTo6Z2xvYmFsR0xEYXRhLnZhciMjVmFyaWFibGUsICN2YXIpIDwgMCkg
XAorICAgIGlmIChkYXRhKCkuc2hhcmVkR0xEYXRhKCkuZ2V0VW5pZm9ybUxvY2F0aW9uKGRhdGEo
KS5zaGFyZWRHTERhdGEoKS5wcm9nIyNQcm9ncmFtLCBkYXRhKCkuc2hhcmVkR0xEYXRhKCkudmFy
IyNWYXJpYWJsZSwgI3ZhcikgPCAwKSBcCiAgICAgICAgICAgICBMT0dfRVJST1IoIkNvdWxkbid0
IGZpbmQgdmFyaWFibGUgIiN2YXIiIGluIHByb2dyYW0gIiNwcm9nIlxuIik7CiAKICNkZWZpbmUg
VEVYTUFQX0JVSUxEX1NIQURFUihwcm9ncmFtKSBcCi0gICAgVGV4dHVyZU1hcHBlckdMRGF0YTo6
Z2xvYmFsR0xEYXRhLmNyZWF0ZVNoYWRlclByb2dyYW0odmVydGV4U2hhZGVyU291cmNlIyNwcm9n
cmFtLCBmcmFnbWVudFNoYWRlclNvdXJjZSMjcHJvZ3JhbSwgVGV4dHVyZU1hcHBlckdMRGF0YTo6
Z2xvYmFsR0xEYXRhLnByb2dyYW0jI1Byb2dyYW0pOworICAgIGRhdGEoKS5zaGFyZWRHTERhdGEo
KS5jcmVhdGVTaGFkZXJQcm9ncmFtKHZlcnRleFNoYWRlclNvdXJjZSMjcHJvZ3JhbSwgZnJhZ21l
bnRTaGFkZXJTb3VyY2UjI3Byb2dyYW0sIGRhdGEoKS5zaGFyZWRHTERhdGEoKS5wcm9ncmFtIyNQ
cm9ncmFtKTsKIAogVGV4dHVyZU1hcHBlckdMOjpUZXh0dXJlTWFwcGVyR0woKQogICAgIDogbV9k
YXRhKG5ldyBUZXh0dXJlTWFwcGVyR0xEYXRhKQpAQCAtMzAzLDEwICs0MDcsOSBAQCBUZXh0dXJl
TWFwcGVyR0w6OlRleHR1cmVNYXBwZXJHTCgpCiAKIHZvaWQgVGV4dHVyZU1hcHBlckdMOjppbml0
aWFsaXplU2hhZGVycygpCiB7Ci0gICAgc3RhdGljIGJvb2wgc2hhZGVyc0NvbXBpbGVkID0gZmFs
c2U7Ci0gICAgaWYgKHNoYWRlcnNDb21waWxlZCkKKyAgICBpZiAoZGF0YSgpLnNoYXJlZEdMRGF0
YSgpLmluaXRpYWxpemVkKQogICAgICAgICByZXR1cm47Ci0gICAgc2hhZGVyc0NvbXBpbGVkID0g
dHJ1ZTsKKyAgICBkYXRhKCkuc2hhcmVkR0xEYXRhKCkuaW5pdGlhbGl6ZWQgPSB0cnVlOwogI2lm
bmRlZiBURVhNQVBfT1BFTkdMX0VTXzIKICNkZWZpbmUgT0VTMl9QUkVDSVNJT05fREVGSU5JVElP
TlMgXAogICAgICIjZGVmaW5lIGxvd3BcbiNkZWZpbmUgaGlnaHBcbiIKQEAgLTQ1NCwxMyArNTU3
LDEzIEBAIHZvaWQgVGV4dHVyZU1hcHBlckdMOjpkcmF3VGV4dHVyZShjb25zdCBCaXRtYXBUZXh0
dXJlJiB0ZXh0dXJlLCBjb25zdCBGbG9hdFJlY3QmCiAKIHZvaWQgVGV4dHVyZU1hcHBlckdMOjpk
cmF3VGV4dHVyZSh1aW50MzJfdCB0ZXh0dXJlLCBib29sIG9wYXF1ZSwgY29uc3QgRmxvYXRTaXpl
JiByZWxhdGl2ZVNpemUsIGNvbnN0IEZsb2F0UmVjdCYgdGFyZ2V0UmVjdCwgY29uc3QgVHJhbnNm
b3JtYXRpb25NYXRyaXgmIG1vZGVsVmlld01hdHJpeCwgZmxvYXQgb3BhY2l0eSwgY29uc3QgQml0
bWFwVGV4dHVyZSogbWFza1RleHR1cmUsIGJvb2wgZmxpcCkKIHsKLSAgICBUZXh0dXJlTWFwcGVy
R0xEYXRhOjpHbG9iYWxHTERhdGE6OlNoYWRlclByb2dyYW1JbmRleCBwcm9ncmFtOworICAgIFRl
eHR1cmVNYXBwZXJHTERhdGE6OlNoYXJlZEdMRGF0YTo6U2hhZGVyUHJvZ3JhbUluZGV4IHByb2dy
YW07CiAgICAgaWYgKG1hc2tUZXh0dXJlKQotICAgICAgICBwcm9ncmFtID0gVGV4dHVyZU1hcHBl
ckdMRGF0YTo6R2xvYmFsR0xEYXRhOjpPcGFjaXR5QW5kTWFza1Byb2dyYW07CisgICAgICAgIHBy
b2dyYW0gPSBUZXh0dXJlTWFwcGVyR0xEYXRhOjpTaGFyZWRHTERhdGE6Ok9wYWNpdHlBbmRNYXNr
UHJvZ3JhbTsKICAgICBlbHNlCi0gICAgICAgIHByb2dyYW0gPSBUZXh0dXJlTWFwcGVyR0xEYXRh
OjpHbG9iYWxHTERhdGE6OlNpbXBsZVByb2dyYW07CisgICAgICAgIHByb2dyYW0gPSBUZXh0dXJl
TWFwcGVyR0xEYXRhOjpTaGFyZWRHTERhdGE6OlNpbXBsZVByb2dyYW07CiAKLSAgICBjb25zdCBU
ZXh0dXJlTWFwcGVyR0xEYXRhOjpHbG9iYWxHTERhdGE6OlByb2dyYW1JbmZvJiBwcm9ncmFtSW5m
byA9IGRhdGEoKS5nbG9iYWxHTERhdGEucHJvZ3JhbXNbcHJvZ3JhbV07CisgICAgY29uc3QgVGV4
dHVyZU1hcHBlckdMRGF0YTo6U2hhcmVkR0xEYXRhOjpQcm9ncmFtSW5mbyYgcHJvZ3JhbUluZm8g
PSBkYXRhKCkuc2hhcmVkR0xEYXRhKCkucHJvZ3JhbXNbcHJvZ3JhbV07CiAgICAgR0xfQ01EKGds
VXNlUHJvZ3JhbShwcm9ncmFtSW5mby5pZCkpCiAgICAgZGF0YSgpLmN1cnJlbnRQcm9ncmFtID0g
cHJvZ3JhbTsKICAgICBHTF9DTUQoZ2xFbmFibGVWZXJ0ZXhBdHRyaWJBcnJheShwcm9ncmFtSW5m
by52ZXJ0ZXhBdHRyaWIpKQpAQCAtNDg3LDEwICs1OTAsMTAgQEAgdm9pZCBUZXh0dXJlTWFwcGVy
R0w6OmRyYXdUZXh0dXJlKHVpbnQzMl90IHRleHR1cmUsIGJvb2wgb3BhcXVlLCBjb25zdCBGbG9h
dFNpemUKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAwLCAwLCAxLCAwLAog
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDAsIGZsaXAgPyByZWxhdGl2ZVNp
emUuaGVpZ2h0KCkgOiAwLCAwLCAxfTsKIAotICAgIEdMX0NNRChnbFVuaWZvcm1NYXRyaXg0ZnYo
cHJvZ3JhbUluZm8udmFyc1tUZXh0dXJlTWFwcGVyR0xEYXRhOjpHbG9iYWxHTERhdGE6OkluTWF0
cml4VmFyaWFibGVdLCAxLCBHTF9GQUxTRSwgbTQpKQotICAgIEdMX0NNRChnbFVuaWZvcm1NYXRy
aXg0ZnYocHJvZ3JhbUluZm8udmFyc1tUZXh0dXJlTWFwcGVyR0xEYXRhOjpHbG9iYWxHTERhdGE6
OkluU291cmNlTWF0cml4VmFyaWFibGVdLCAxLCBHTF9GQUxTRSwgbTRzcmMpKQotICAgIEdMX0NN
RChnbFVuaWZvcm0xaShwcm9ncmFtSW5mby52YXJzW1RleHR1cmVNYXBwZXJHTERhdGE6Okdsb2Jh
bEdMRGF0YTo6U291cmNlVGV4dHVyZVZhcmlhYmxlXSwgMCkpCi0gICAgR0xfQ01EKGdsVW5pZm9y
bTFmKHByb2dyYW1JbmZvLnZhcnNbVGV4dHVyZU1hcHBlckdMRGF0YTo6R2xvYmFsR0xEYXRhOjpP
cGFjaXR5VmFyaWFibGVdLCBvcGFjaXR5KSkKKyAgICBHTF9DTUQoZ2xVbmlmb3JtTWF0cml4NGZ2
KHByb2dyYW1JbmZvLnZhcnNbVGV4dHVyZU1hcHBlckdMRGF0YTo6U2hhcmVkR0xEYXRhOjpJbk1h
dHJpeFZhcmlhYmxlXSwgMSwgR0xfRkFMU0UsIG00KSkKKyAgICBHTF9DTUQoZ2xVbmlmb3JtTWF0
cml4NGZ2KHByb2dyYW1JbmZvLnZhcnNbVGV4dHVyZU1hcHBlckdMRGF0YTo6U2hhcmVkR0xEYXRh
OjpJblNvdXJjZU1hdHJpeFZhcmlhYmxlXSwgMSwgR0xfRkFMU0UsIG00c3JjKSkKKyAgICBHTF9D
TUQoZ2xVbmlmb3JtMWkocHJvZ3JhbUluZm8udmFyc1tUZXh0dXJlTWFwcGVyR0xEYXRhOjpTaGFy
ZWRHTERhdGE6OlNvdXJjZVRleHR1cmVWYXJpYWJsZV0sIDApKQorICAgIEdMX0NNRChnbFVuaWZv
cm0xZihwcm9ncmFtSW5mby52YXJzW1RleHR1cmVNYXBwZXJHTERhdGE6OlNoYXJlZEdMRGF0YTo6
T3BhY2l0eVZhcmlhYmxlXSwgb3BhY2l0eSkpCiAKICAgICBpZiAobWFza1RleHR1cmUgJiYgbWFz
a1RleHR1cmUtPmlzVmFsaWQoKSkgewogICAgICAgICBjb25zdCBCaXRtYXBUZXh0dXJlR0wqIG1h
c2tUZXh0dXJlR0wgPSBzdGF0aWNfY2FzdDxjb25zdCBCaXRtYXBUZXh0dXJlR0wqPihtYXNrVGV4
dHVyZSk7CkBAIC01MDAsOCArNjAzLDggQEAgdm9pZCBUZXh0dXJlTWFwcGVyR0w6OmRyYXdUZXh0
dXJlKHVpbnQzMl90IHRleHR1cmUsIGJvb2wgb3BhcXVlLCBjb25zdCBGbG9hdFNpemUKICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgMCwgbWFza1RleHR1cmVHTC0+cmVs
YXRpdmVTaXplKCkuaGVpZ2h0KCksIDAsIDAsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgIDAsIDAsIDEsIDAsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgIDAsIDAsIDAsIDF9OwotICAgICAgICBHTF9DTUQoZ2xVbmlmb3JtTWF0cml4NGZ2
KHByb2dyYW1JbmZvLnZhcnNbVGV4dHVyZU1hcHBlckdMRGF0YTo6R2xvYmFsR0xEYXRhOjpJbk1h
c2tNYXRyaXhWYXJpYWJsZV0sIDEsIEdMX0ZBTFNFLCBtNG1hc2spKTsKLSAgICAgICAgR0xfQ01E
KGdsVW5pZm9ybTFpKHByb2dyYW1JbmZvLnZhcnNbVGV4dHVyZU1hcHBlckdMRGF0YTo6R2xvYmFs
R0xEYXRhOjpNYXNrVGV4dHVyZVZhcmlhYmxlXSwgMSkpCisgICAgICAgIEdMX0NNRChnbFVuaWZv
cm1NYXRyaXg0ZnYocHJvZ3JhbUluZm8udmFyc1tUZXh0dXJlTWFwcGVyR0xEYXRhOjpTaGFyZWRH
TERhdGE6OkluTWFza01hdHJpeFZhcmlhYmxlXSwgMSwgR0xfRkFMU0UsIG00bWFzaykpOworICAg
ICAgICBHTF9DTUQoZ2xVbmlmb3JtMWkocHJvZ3JhbUluZm8udmFyc1tUZXh0dXJlTWFwcGVyR0xE
YXRhOjpTaGFyZWRHTERhdGE6Ok1hc2tUZXh0dXJlVmFyaWFibGVdLCAxKSkKICAgICAgICAgR0xf
Q01EKGdsQWN0aXZlVGV4dHVyZShHTF9URVhUVVJFMCkpCiAgICAgfQogCkBAIC02NzAsNyArNzcz
LDcgQEAgc3RhdGljIGlubGluZSBUcmFuc2Zvcm1hdGlvbk1hdHJpeCBjcmVhdGVQcm9qZWN0aW9u
TWF0cml4KGNvbnN0IEludFNpemUmIHNpemUsIGIKIAogdm9pZCBCaXRtYXBUZXh0dXJlR0w6OmJp
bmQoKQogewotICAgIGludCYgc3RlbmNpbEluZGV4ID0gVGV4dHVyZU1hcHBlckdMRGF0YTo6Z2xv
YmFsR0xEYXRhLnN0ZW5jaWxJbmRleDsKKyAgICBpbnQmIHN0ZW5jaWxJbmRleCA9IG1fdGV4dHVy
ZU1hcHBlci0+ZGF0YSgpLnNoYXJlZEdMRGF0YSgpLnN0ZW5jaWxJbmRleDsKICAgICBpZiAobV9z
dXJmYWNlTmVlZHNSZXNldCB8fCAhbV9mYm8pIHsKICAgICAgICAgaWYgKCFtX2ZibykKICAgICAg
ICAgICAgIEdMX0NNRChnbEdlbkZyYW1lYnVmZmVycygxLCAmbV9mYm8pKQpAQCAtNzQzLDcgKzg0
Niw3IEBAIHZvaWQgVGV4dHVyZU1hcHBlckdMOjpiaW5kU3VyZmFjZShCaXRtYXBUZXh0dXJlICpz
dXJmYWNlUG9pbnRlcikKICAgICBpZiAoIXN1cmZhY2UpIHsKICAgICAgICAgR0xfQ01EKGdsQmlu
ZEZyYW1lYnVmZmVyKEdMX0ZSQU1FQlVGRkVSLCAwKSkKICAgICAgICAgZGF0YSgpLnByb2plY3Rp
b25NYXRyaXggPSBjcmVhdGVQcm9qZWN0aW9uTWF0cml4KHZpZXdwb3J0U2l6ZSgpLCB0cnVlKS5t
dWx0aXBseSh0cmFuc2Zvcm0oKSk7Ci0gICAgICAgIEdMX0NNRChnbFN0ZW5jaWxGdW5jKGRhdGEo
KS5nbG9iYWxHTERhdGEuc3RlbmNpbEluZGV4ID4gMSA/IEdMX0VRVUFMIDogR0xfQUxXQVlTLCBk
YXRhKCkuZ2xvYmFsR0xEYXRhLnN0ZW5jaWxJbmRleCAtIDEsIGRhdGEoKS5nbG9iYWxHTERhdGEu
c3RlbmNpbEluZGV4IC0gMSkpCisgICAgICAgIEdMX0NNRChnbFN0ZW5jaWxGdW5jKGRhdGEoKS5z
aGFyZWRHTERhdGEoKS5zdGVuY2lsSW5kZXggPiAxID8gR0xfRVFVQUwgOiBHTF9BTFdBWVMsIGRh
dGEoKS5zaGFyZWRHTERhdGEoKS5zdGVuY2lsSW5kZXggLSAxLCBkYXRhKCkuc2hhcmVkR0xEYXRh
KCkuc3RlbmNpbEluZGV4IC0gMSkpCiAgICAgICAgIEdMX0NNRChnbFN0ZW5jaWxPcChHTF9LRUVQ
LCBHTF9LRUVQLCBHTF9LRUVQKSkKICAgICAgICAgR0xfQ01EKGdsVmlld3BvcnQoMCwgMCwgdmll
d3BvcnRTaXplKCkud2lkdGgoKSwgdmlld3BvcnRTaXplKCkuaGVpZ2h0KCkpKQogICAgICAgICBy
ZXR1cm47CkBAIC03NTQsOCArODU3LDggQEAgdm9pZCBUZXh0dXJlTWFwcGVyR0w6OmJpbmRTdXJm
YWNlKEJpdG1hcFRleHR1cmUgKnN1cmZhY2VQb2ludGVyKQogCiB2b2lkIFRleHR1cmVNYXBwZXJH
TDo6YmVnaW5DbGlwKGNvbnN0IFRyYW5zZm9ybWF0aW9uTWF0cml4JiBtb2RlbFZpZXdNYXRyaXgs
IGNvbnN0IEZsb2F0UmVjdCYgdGFyZ2V0UmVjdCkKIHsKLSAgICBUZXh0dXJlTWFwcGVyR0xEYXRh
OjpHbG9iYWxHTERhdGE6OlNoYWRlclByb2dyYW1JbmRleCBwcm9ncmFtID0gVGV4dHVyZU1hcHBl
ckdMRGF0YTo6R2xvYmFsR0xEYXRhOjpDbGlwUHJvZ3JhbTsKLSAgICBjb25zdCBUZXh0dXJlTWFw
cGVyR0xEYXRhOjpHbG9iYWxHTERhdGE6OlByb2dyYW1JbmZvJiBwcm9ncmFtSW5mbyA9IGRhdGEo
KS5nbG9iYWxHTERhdGEucHJvZ3JhbXNbcHJvZ3JhbV07CisgICAgVGV4dHVyZU1hcHBlckdMRGF0
YTo6U2hhcmVkR0xEYXRhOjpTaGFkZXJQcm9ncmFtSW5kZXggcHJvZ3JhbSA9IFRleHR1cmVNYXBw
ZXJHTERhdGE6OlNoYXJlZEdMRGF0YTo6Q2xpcFByb2dyYW07CisgICAgY29uc3QgVGV4dHVyZU1h
cHBlckdMRGF0YTo6U2hhcmVkR0xEYXRhOjpQcm9ncmFtSW5mbyYgcHJvZ3JhbUluZm8gPSBkYXRh
KCkuc2hhcmVkR0xEYXRhKCkucHJvZ3JhbXNbcHJvZ3JhbV07CiAgICAgR0xfQ01EKGdsVXNlUHJv
Z3JhbShwcm9ncmFtSW5mby5pZCkpCiAgICAgR0xfQ01EKGdsRW5hYmxlVmVydGV4QXR0cmliQXJy
YXkocHJvZ3JhbUluZm8udmVydGV4QXR0cmliKSkKICAgICBjb25zdCBHTGZsb2F0IHVuaXRSZWN0
W10gPSB7MCwgMCwgMSwgMCwgMSwgMSwgMCwgMX07CkBAIC03NzUsOSArODc4LDkgQEAgdm9pZCBU
ZXh0dXJlTWFwcGVyR0w6OmJlZ2luQ2xpcChjb25zdCBUcmFuc2Zvcm1hdGlvbk1hdHJpeCYgbW9k
ZWxWaWV3TWF0cml4LCBjb24KICAgICAgICAgbWF0cml4Lm00MSgpLCBtYXRyaXgubTQyKCksIG1h
dHJpeC5tNDMoKSwgbWF0cml4Lm00NCgpCiAgICAgfTsKIAotICAgIGludCYgc3RlbmNpbEluZGV4
ID0gZGF0YSgpLmdsb2JhbEdMRGF0YS5zdGVuY2lsSW5kZXg7CisgICAgaW50JiBzdGVuY2lsSW5k
ZXggPSBkYXRhKCkuc2hhcmVkR0xEYXRhKCkuc3RlbmNpbEluZGV4OwogCi0gICAgR0xfQ01EKGds
VW5pZm9ybU1hdHJpeDRmdihwcm9ncmFtSW5mby52YXJzW1RleHR1cmVNYXBwZXJHTERhdGE6Okds
b2JhbEdMRGF0YTo6SW5NYXRyaXhWYXJpYWJsZV0sIDEsIEdMX0ZBTFNFLCBtNCkpCisgICAgR0xf
Q01EKGdsVW5pZm9ybU1hdHJpeDRmdihwcm9ncmFtSW5mby52YXJzW1RleHR1cmVNYXBwZXJHTERh
dGE6OlNoYXJlZEdMRGF0YTo6SW5NYXRyaXhWYXJpYWJsZV0sIDEsIEdMX0ZBTFNFLCBtNCkpCiAg
ICAgR0xfQ01EKGdsRW5hYmxlKEdMX1NURU5DSUxfVEVTVCkpCiAgICAgR0xfQ01EKGdsU3RlbmNp
bEZ1bmMoR0xfTkVWRVIsIHN0ZW5jaWxJbmRleCwgc3RlbmNpbEluZGV4KSkKICAgICBHTF9DTUQo
Z2xTdGVuY2lsT3AoR0xfUkVQTEFDRSwgR0xfUkVQTEFDRSwgR0xfUkVQTEFDRSkpCkBAIC03OTEs
OCArODk0LDggQEAgdm9pZCBUZXh0dXJlTWFwcGVyR0w6OmJlZ2luQ2xpcChjb25zdCBUcmFuc2Zv
cm1hdGlvbk1hdHJpeCYgbW9kZWxWaWV3TWF0cml4LCBjb24KIAogdm9pZCBUZXh0dXJlTWFwcGVy
R0w6OmVuZENsaXAoKQogewotICAgIGRhdGEoKS5nbG9iYWxHTERhdGEuc3RlbmNpbEluZGV4ID4+
PSAxOwotICAgIGdsU3RlbmNpbEZ1bmMoZGF0YSgpLmdsb2JhbEdMRGF0YS5zdGVuY2lsSW5kZXgg
PiAxID8gR0xfRVFVQUwgOiBHTF9BTFdBWVMsIGRhdGEoKS5nbG9iYWxHTERhdGEuc3RlbmNpbElu
ZGV4IC0gMSwgZGF0YSgpLmdsb2JhbEdMRGF0YS5zdGVuY2lsSW5kZXggLSAxKTsKKyAgICBkYXRh
KCkuc2hhcmVkR0xEYXRhKCkuc3RlbmNpbEluZGV4ID4+PSAxOworICAgIGdsU3RlbmNpbEZ1bmMo
ZGF0YSgpLnNoYXJlZEdMRGF0YSgpLnN0ZW5jaWxJbmRleCA+IDEgPyBHTF9FUVVBTCA6IEdMX0FM
V0FZUywgZGF0YSgpLnNoYXJlZEdMRGF0YSgpLnN0ZW5jaWxJbmRleCAtIDEsIGRhdGEoKS5zaGFy
ZWRHTERhdGEoKS5zdGVuY2lsSW5kZXggLSAxKTsKIH0KIAogUGFzc1JlZlB0cjxCaXRtYXBUZXh0
dXJlPiBUZXh0dXJlTWFwcGVyR0w6OmNyZWF0ZVRleHR1cmUoKQpkaWZmIC0tZ2l0IGEvU291cmNl
L1dlYktpdDIvQ2hhbmdlTG9nIGIvU291cmNlL1dlYktpdDIvQ2hhbmdlTG9nCmluZGV4IDA0NzMw
ZjQuLjUwMzkxMTQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQyL0NoYW5nZUxvZworKysgYi9T
b3VyY2UvV2ViS2l0Mi9DaGFuZ2VMb2cKQEAgLTEsMyArMSwyMSBAQAorMjAxMi0wMS0xMCAgVmlh
dGNoZXNsYXYgT3N0YXBlbmtvICA8b3N0YXBlbmtvLnZpYXRjaGVzbGF2QG5va2lhLmNvbT4KKwor
ICAgICAgICBbUXRdW1dLMl1SRUdSRVNTSU9OKHIxMDI0MzUpOiBJdCBtYWRlIHRzdF9RUXVpY2tX
ZWJWaWV3OjpzaG93KCkgY3Jhc2gKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hv
d19idWcuY2dpP2lkPTc0MTc2CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISku
CisKKyAgICAgICAgQ2hlY2sgdGV4dHVyZSBtYXBwZXIgZXhpc3RzIGFscmVhZHkgaW4gZW5zdXJl
Um9vdExheWVyIHRvIGF2b2lkIHJlY3JlY2F0aW9uLgorICAgICAgICBDaGVjayBpZiByb290IGxh
eWVyIHdhcyBkZWxldGVkIGFscmVhZHkgaW4gcHVyZ2VHTFJlc291cmNlcy4KKyAgICAgICAgQWRk
ZWQgbXVsdGlwbGVXZWJWaWV3V2luZG93cyBhbmQgbXVsdGlwbGVXZWJWaWV3cyBBUEkgdGVzdHMu
CisKKyAgICAgICAgKiBVSVByb2Nlc3MvQVBJL3F0L3Rlc3RzL3FxdWlja3dlYnZpZXcvdHN0X3Fx
dWlja3dlYnZpZXcuY3BwOgorICAgICAgICAodHN0X1FRdWlja1dlYlZpZXc6Om11bHRpcGxlV2Vi
Vmlld1dpbmRvd3MpOgorICAgICAgICAodHN0X1FRdWlja1dlYlZpZXc6Om11bHRpcGxlV2ViVmll
d3MpOgorICAgICAgICAqIFVJUHJvY2Vzcy9xdC9MYXllclRyZWVIb3N0UHJveHlRdC5jcHA6Cisg
ICAgICAgIChXZWJLaXQ6OkxheWVyVHJlZUhvc3RQcm94eTo6ZW5zdXJlUm9vdExheWVyKToKKyAg
ICAgICAgKFdlYktpdDo6TGF5ZXJUcmVlSG9zdFByb3h5OjpwdXJnZUdMUmVzb3VyY2VzKToKKwog
MjAxMi0wMS0wNiAgTWFyayBSb3dlICA8bXJvd2VAYXBwbGUuY29tPgogCiAgICAgICAgIFJFR1JF
U1NJT04gKFdlYktpdDIpOiBTYXZlIGFzIFBERiBubyBsb25nZXIgZ2VuZXJhdGVzIGxpbmtzIHRv
IFVSTHMKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9BUEkvcXQvdGVzdHMv
cXF1aWNrd2Vidmlldy90c3RfcXF1aWNrd2Vidmlldy5jcHAgYi9Tb3VyY2UvV2ViS2l0Mi9VSVBy
b2Nlc3MvQVBJL3F0L3Rlc3RzL3FxdWlja3dlYnZpZXcvdHN0X3FxdWlja3dlYnZpZXcuY3BwCmlu
ZGV4IDU3YjdlYzEuLmE2YTIwMmEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vz
cy9BUEkvcXQvdGVzdHMvcXF1aWNrd2Vidmlldy90c3RfcXF1aWNrd2Vidmlldy5jcHAKKysrIGIv
U291cmNlL1dlYktpdDIvVUlQcm9jZXNzL0FQSS9xdC90ZXN0cy9xcXVpY2t3ZWJ2aWV3L3RzdF9x
cXVpY2t3ZWJ2aWV3LmNwcApAQCAtNTEsNiArNTEsOCBAQCBwcml2YXRlIHNsb3RzOgogICAgIHZv
aWQgc2hvdygpOwogICAgIHZvaWQgc2hvd1dlYlZpZXcoKTsKICAgICB2b2lkIHJlbW92ZUZyb21D
YW52YXMoKTsKKyAgICB2b2lkIG11bHRpcGxlV2ViVmlld1dpbmRvd3MoKTsKKyAgICB2b2lkIG11
bHRpcGxlV2ViVmlld3MoKTsKIAogcHJpdmF0ZToKICAgICBpbmxpbmUgUVF1aWNrV2ViVmlldyog
d2ViVmlldygpIGNvbnN0OwpAQCAtMjcwLDYgKzI3Miw1MiBAQCB2b2lkIHRzdF9RUXVpY2tXZWJW
aWV3OjpyZW1vdmVGcm9tQ2FudmFzKCkKICAgICBRVGVzdDo6cVdhaXQoMjAwKTsKIH0KIAordm9p
ZCB0c3RfUVF1aWNrV2ViVmlldzo6bXVsdGlwbGVXZWJWaWV3V2luZG93cygpCit7CisgICAgc2hv
d1dlYlZpZXcoKTsKKworICAgIC8vIFRoaXMgc2hvdWxkIG5vdCBjcmFzaC4KKyAgICBRUXVpY2tX
ZWJWaWV3KiB3ZWJWaWV3MSA9IG5ldyBRUXVpY2tXZWJWaWV3KCk7CisgICAgUVNjb3BlZFBvaW50
ZXI8VGVzdFdpbmRvdz4gd2luZG93MShuZXcgVGVzdFdpbmRvdyh3ZWJWaWV3MSkpOworICAgIFFR
dWlja1dlYlZpZXcqIHdlYlZpZXcyID0gbmV3IFFRdWlja1dlYlZpZXcoKTsKKyAgICBRU2NvcGVk
UG9pbnRlcjxUZXN0V2luZG93PiB3aW5kb3cyKG5ldyBUZXN0V2luZG93KHdlYlZpZXcyKSk7CisK
KyAgICB3ZWJWaWV3MS0+c2V0U2l6ZShRU2l6ZUYoMzAwLCA0MDApKTsKKyAgICB3ZWJWaWV3MS0+
bG9hZChRVXJsOjpmcm9tTG9jYWxGaWxlKFFMYXRpbjFTdHJpbmcoVEVTVFNfU09VUkNFX0RJUiAi
L2h0bWwvc2Nyb2xsLmh0bWwiKSkpOworICAgIFFWRVJJRlkod2FpdEZvclNpZ25hbCh3ZWJWaWV3
MSwgU0lHTkFMKGxvYWRTdWNjZWVkZWQoKSkpKTsKKyAgICB3aW5kb3cxLT5zaG93KCk7CisgICAg
d2ViVmlldzEtPnNldFZpc2libGUodHJ1ZSk7CisKKyAgICB3ZWJWaWV3Mi0+c2V0U2l6ZShRU2l6
ZUYoMzAwLCA0MDApKTsKKyAgICB3ZWJWaWV3Mi0+bG9hZChRVXJsOjpmcm9tTG9jYWxGaWxlKFFM
YXRpbjFTdHJpbmcoVEVTVFNfU09VUkNFX0RJUiAiL2h0bWwvYmFzaWNfcGFnZS5odG1sIikpKTsK
KyAgICBRVkVSSUZZKHdhaXRGb3JTaWduYWwod2ViVmlldzIsIFNJR05BTChsb2FkU3VjY2VlZGVk
KCkpKSk7CisgICAgd2luZG93Mi0+c2hvdygpOworICAgIHdlYlZpZXcyLT5zZXRWaXNpYmxlKHRy
dWUpOworICAgIFFUZXN0OjpxV2FpdCgyMDApOworfQorCit2b2lkIHRzdF9RUXVpY2tXZWJWaWV3
OjptdWx0aXBsZVdlYlZpZXdzKCkKK3sKKyAgICBzaG93V2ViVmlldygpOworCisgICAgLy8gVGhp
cyBzaG91bGQgbm90IGNyYXNoLgorICAgIFFTY29wZWRQb2ludGVyPFFRdWlja1dlYlZpZXc+IHdl
YlZpZXcxKG5ldyBRUXVpY2tXZWJWaWV3KCkpOworICAgIHdlYlZpZXcxLT5zZXRQYXJlbnRJdGVt
KG1fd2luZG93LT5yb290SXRlbSgpKTsKKyAgICBRU2NvcGVkUG9pbnRlcjxRUXVpY2tXZWJWaWV3
PiB3ZWJWaWV3MihuZXcgUVF1aWNrV2ViVmlldygpKTsKKyAgICB3ZWJWaWV3Mi0+c2V0UGFyZW50
SXRlbShtX3dpbmRvdy0+cm9vdEl0ZW0oKSk7CisKKyAgICB3ZWJWaWV3MS0+c2V0U2l6ZShRU2l6
ZUYoMzAwLCA0MDApKTsKKyAgICB3ZWJWaWV3MS0+bG9hZChRVXJsOjpmcm9tTG9jYWxGaWxlKFFM
YXRpbjFTdHJpbmcoVEVTVFNfU09VUkNFX0RJUiAiL2h0bWwvc2Nyb2xsLmh0bWwiKSkpOworICAg
IFFWRVJJRlkod2FpdEZvclNpZ25hbCh3ZWJWaWV3MS5kYXRhKCksIFNJR05BTChsb2FkU3VjY2Vl
ZGVkKCkpKSk7CisgICAgd2ViVmlldzEtPnNldFZpc2libGUodHJ1ZSk7CisKKyAgICB3ZWJWaWV3
Mi0+c2V0U2l6ZShRU2l6ZUYoMzAwLCA0MDApKTsKKyAgICB3ZWJWaWV3Mi0+bG9hZChRVXJsOjpm
cm9tTG9jYWxGaWxlKFFMYXRpbjFTdHJpbmcoVEVTVFNfU09VUkNFX0RJUiAiL2h0bWwvYmFzaWNf
cGFnZS5odG1sIikpKTsKKyAgICBRVkVSSUZZKHdhaXRGb3JTaWduYWwod2ViVmlldzIuZGF0YSgp
LCBTSUdOQUwobG9hZFN1Y2NlZWRlZCgpKSkpOworICAgIHdlYlZpZXcyLT5zZXRWaXNpYmxlKHRy
dWUpOworICAgIFFUZXN0OjpxV2FpdCgyMDApOworfQorCiB2b2lkIHRzdF9RUXVpY2tXZWJWaWV3
OjpzY3JvbGxSZXF1ZXN0KCkKIHsKICAgICB3ZWJWaWV3KCktPnNldFNpemUoUVNpemVGKDMwMCwg
NDAwKSk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvcXQvTGF5ZXJUcmVl
SG9zdFByb3h5UXQuY3BwIGIvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL3F0L0xheWVyVHJlZUhv
c3RQcm94eVF0LmNwcAppbmRleCBhMWRkMjcyLi42MDczNmIxIDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V2ViS2l0Mi9VSVByb2Nlc3MvcXQvTGF5ZXJUcmVlSG9zdFByb3h5UXQuY3BwCisrKyBiL1NvdXJj
ZS9XZWJLaXQyL1VJUHJvY2Vzcy9xdC9MYXllclRyZWVIb3N0UHJveHlRdC5jcHAKQEAgLTQ2MCw3
ICs0NjAsOCBAQCB2b2lkIExheWVyVHJlZUhvc3RQcm94eTo6ZW5zdXJlUm9vdExheWVyKCkKIAog
ICAgIC8vIFRoZSByb290IGxheWVyIHNob3VsZCBub3QgaGF2ZSB6ZXJvIHNpemUsIG9yIGl0IHdv
dWxkIGJlIG9wdGltaXplZCBvdXQuCiAgICAgbV9yb290TGF5ZXItPnNldFNpemUoRmxvYXRTaXpl
KDEuMCwgMS4wKSk7Ci0gICAgbV90ZXh0dXJlTWFwcGVyID0gVGV4dHVyZU1hcHBlckdMOjpjcmVh
dGUoKTsKKyAgICBpZiAoIW1fdGV4dHVyZU1hcHBlcikKKyAgICAgICAgbV90ZXh0dXJlTWFwcGVy
ID0gVGV4dHVyZU1hcHBlckdMOjpjcmVhdGUoKTsKICAgICB0b1RleHR1cmVNYXBwZXJOb2RlKG1f
cm9vdExheWVyLmdldCgpKS0+c2V0VGV4dHVyZU1hcHBlcihtX3RleHR1cmVNYXBwZXIuZ2V0KCkp
OwogfQogCkBAIC02MjMsNyArNjI0LDkgQEAgdm9pZCBMYXllclRyZWVIb3N0UHJveHk6OnB1cmdl
R0xSZXNvdXJjZXMoKQogewogICAgIFRleHR1cmVNYXBwZXJOb2RlKiBub2RlID0gdG9UZXh0dXJl
TWFwcGVyTm9kZShyb290TGF5ZXIoKSk7CiAKLSAgICBub2RlLT5wdXJnZU5vZGVUZXh0dXJlc1Jl
Y3Vyc2l2ZSgpOworICAgIGlmIChub2RlKQorICAgICAgICBub2RlLT5wdXJnZU5vZGVUZXh0dXJl
c1JlY3Vyc2l2ZSgpOworCiAgICAgbV9kaXJlY3RseUNvbXBvc2l0ZWRJbWFnZXMuY2xlYXIoKTsK
IAogICAgIG1fdGV4dHVyZU1hcHBlci5jbGVhcigpOwo=
</data>
<flag name="review"
          id="122488"
          type_id="1"
          status="-"
          setter="noam"
    />
          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>121907</attachid>
            <date>2012-01-10 14:13:27 -0800</date>
            <delta_ts>2012-01-10 15:40:30 -0800</delta_ts>
            <desc>Updated patch</desc>
            <filename>GL_resources_dealloc_fix_05.diff</filename>
            <type>text/plain</type>
            <size>21336</size>
            <attacher name="Viatcheslav Ostapenko">ostap73</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJDb3JlL0No
YW5nZUxvZwppbmRleCA3ZjZlZGM5Li5hNjliYjU0IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29y
ZS9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMzcg
QEAKKzIwMTItMDEtMTAgIFZpYXRjaGVzbGF2IE9zdGFwZW5rbyAgPG9zdGFwZW5rby52aWF0Y2hl
c2xhdkBub2tpYS5jb20+CisKKyAgICAgICAgW1F0XVtXSzJdUkVHUkVTU0lPTihyMTAyNDM1KTog
SXQgbWFkZSB0c3RfUVF1aWNrV2ViVmlldzo6c2hvdygpIGNyYXNoCisgICAgICAgIGh0dHBzOi8v
YnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD03NDE3NgorCisgICAgICAgIFJldmlld2Vk
IGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIFJlcGxhY2VzIHN0YXRpYyBnbG9iYWwgR0wg
cmVzb3VyY2UgaG9sZGVyIHdpdGggaG9sZGVyIHNoYXJlZCBiZXR3ZWVuCisgICAgICAgIFRleHR1
cmVNYXBwZXJHTCBpbnN0YW5jZXMgY3JlYXRlZCBvbiB0aGUgc2FtZSBHTCBjb250ZXh0LiBBbHNv
IGFkZHMKKyAgICAgICAgZGVhbGxvY2F0aW9uIG9mIEdMIHJlc291cmNlcyB3aGVuIGxhc3QgVGV4
dHVyZU1hcHBlckdMIGluc3RhbmNlIG9uIHRoZSAKKyAgICAgICAgY3VycmVudCBHTCBjb250ZXh0
IGdldHMgZGVsZXRlZC4KKworICAgICAgICBUZXN0ZWQgYnkgbXVsdGlwbGVXZWJWaWV3V2luZG93
cyBhbmQgbXVsdGlwbGVXZWJWaWV3cyBRdCBXSzIgQVBJIHRlc3RzLgorCisgICAgICAgICogcGxh
dGZvcm0vZ3JhcGhpY3Mvb3BlbmdsL1RleHR1cmVNYXBwZXJHTC5jcHA6CisgICAgICAgIChXZWJD
b3JlOjpUZXh0dXJlTWFwcGVyR0xEYXRhOjpTaGFyZWRHTERhdGE6OmdldEN1cnJlbnRHTENvbnRl
eHQpOgorICAgICAgICAoV2ViQ29yZTo6VGV4dHVyZU1hcHBlckdMRGF0YTo6U2hhcmVkR0xEYXRh
OjpnbENvbnRleHREYXRhTWFwKToKKyAgICAgICAgKFdlYkNvcmU6OlRleHR1cmVNYXBwZXJHTERh
dGE6OlNoYXJlZEdMRGF0YTo6Y3VycmVudFNoYXJlZEdMRGF0YSk6CisgICAgICAgIChXZWJDb3Jl
OjpUZXh0dXJlTWFwcGVyR0xEYXRhOjpTaGFyZWRHTERhdGE6OlByb2dyYW1JbmZvOjpQcm9ncmFt
SW5mbyk6CisgICAgICAgIChXZWJDb3JlOjpUZXh0dXJlTWFwcGVyR0xEYXRhOjpTaGFyZWRHTERh
dGE6OmNyZWF0ZVNoYWRlclByb2dyYW0pOgorICAgICAgICAoV2ViQ29yZTo6VGV4dHVyZU1hcHBl
ckdMRGF0YTo6U2hhcmVkR0xEYXRhOjpkZWxldGVTaGFkZXJQcm9ncmFtKToKKyAgICAgICAgKFdl
YkNvcmU6OlRleHR1cmVNYXBwZXJHTERhdGE6OlNoYXJlZEdMRGF0YTo6U2hhcmVkR0xEYXRhKToK
KyAgICAgICAgKFdlYkNvcmU6OlRleHR1cmVNYXBwZXJHTERhdGE6OlNoYXJlZEdMRGF0YTo6flNo
YXJlZEdMRGF0YSk6CisgICAgICAgIChXZWJDb3JlOjpUZXh0dXJlTWFwcGVyR0xEYXRhOjpzaGFy
ZWRHTERhdGEpOgorICAgICAgICAoV2ViQ29yZTo6VGV4dHVyZU1hcHBlckdMRGF0YTo6VGV4dHVy
ZU1hcHBlckdMRGF0YSk6CisgICAgICAgIChXZWJDb3JlOjpUZXh0dXJlTWFwcGVyR0xEYXRhOjpT
aGFyZWRHTERhdGE6OmluaXRpYWxpemVTaGFkZXJzKToKKyAgICAgICAgKFdlYkNvcmU6OlRleHR1
cmVNYXBwZXJHTDo6YmVnaW5QYWludGluZyk6CisgICAgICAgIChXZWJDb3JlOjpUZXh0dXJlTWFw
cGVyR0w6OmRyYXdUZXh0dXJlKToKKyAgICAgICAgKFdlYkNvcmU6OkJpdG1hcFRleHR1cmVHTDo6
YmluZCk6CisgICAgICAgIChXZWJDb3JlOjpUZXh0dXJlTWFwcGVyR0w6OmJpbmRTdXJmYWNlKToK
KyAgICAgICAgKFdlYkNvcmU6OlRleHR1cmVNYXBwZXJHTDo6YmVnaW5DbGlwKToKKyAgICAgICAg
KFdlYkNvcmU6OlRleHR1cmVNYXBwZXJHTDo6ZW5kQ2xpcCk6CisgICAgICAgICogcGxhdGZvcm0v
Z3JhcGhpY3Mvb3BlbmdsL1RleHR1cmVNYXBwZXJHTC5oOgorCiAyMDEyLTAxLTA3ICBDaHJpcyBN
YXJyaW4gIDxjbWFycmluQGFwcGxlLmNvbT4KIAogICAgICAgICBGaXhlZCBBTkdMRSBidWlsZCBm
b3IgR05VIGFuZCBRVCBicm9rZW4gaW4gaHR0cHM6Ly90cmFjLndlYmtpdC5vcmcvY2hhbmdlc2V0
LzEwNDM2MwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3Mvb3Bl
bmdsL1RleHR1cmVNYXBwZXJHTC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGlj
cy9vcGVuZ2wvVGV4dHVyZU1hcHBlckdMLmNwcAppbmRleCAyOGVlMmJhLi4wZmY3MDIyIDEwMDY0
NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9vcGVuZ2wvVGV4dHVyZU1h
cHBlckdMLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9vcGVuZ2wv
VGV4dHVyZU1hcHBlckdMLmNwcApAQCAtNDEsNiArNDEsMTYgQEAKICNpbmNsdWRlIDxHTC9nbC5o
PgogI2VuZGlmCiAKKyNpZiBkZWZpbmVkKFRFWE1BUF9PUEVOR0xfRVNfMikKKyNpbmNsdWRlIDxF
R0wvZWdsLmg+CisjZWxpZiBPUyhXSU5ET1dTKQorI2luY2x1ZGUgPHdpbmRvd3MuaD4KKyNlbGlm
IE9TKE1BQ19PU19YKQorI2luY2x1ZGUgPEFHTC9hZ2wuaD4KKyNlbGlmIGRlZmluZWQoWFBfVU5J
WCkKKyNpbmNsdWRlIDxHTC9nbHguaD4KKyNlbmRpZgorCiAjaWYgIWRlZmluZWQoVEVYTUFQX09Q
RU5HTF9FU18yKSAmJiAhUExBVEZPUk0oUVQpCiBleHRlcm4gIkMiIHsKICAgICB2b2lkIGdsVW5p
Zm9ybTFmKEdMaW50LCBHTGZsb2F0KTsKQEAgLTEwMyw3ICsxMTMsNjAgQEAgaW5saW5lIHN0YXRp
YyB2b2lkIGRlYnVnR0xDb21tYW5kKGNvbnN0IGNoYXIqIGNvbW1hbmQsIGludCBsaW5lKQogI2Vu
ZGlmCiAKIHN0cnVjdCBUZXh0dXJlTWFwcGVyR0xEYXRhIHsKLSAgICBzdGF0aWMgc3RydWN0IEds
b2JhbEdMRGF0YSB7CisgICAgc3RydWN0IFNoYXJlZEdMRGF0YSA6IHB1YmxpYyBSZWZDb3VudGVk
PFNoYXJlZEdMRGF0YT4geworI2lmIGRlZmluZWQoVEVYTUFQX09QRU5HTF9FU18yKQorICAgICAg
ICB0eXBlZGVmIEVHTENvbnRleHQgR0xDb250ZXh0OworICAgICAgICBzdGF0aWMgR0xDb250ZXh0
IGdldEN1cnJlbnRHTENvbnRleHQoKQorICAgICAgICB7CisgICAgICAgICAgICByZXR1cm4gZWds
R2V0Q3VycmVudENvbnRleHQoKTsKKyAgICAgICAgfQorI2VsaWYgT1MoV0lORE9XUykKKyAgICAg
ICAgdHlwZWRlZiBIR0xSQyBHTENvbnRleHQ7CisgICAgICAgIHN0YXRpYyBHTENvbnRleHQgZ2V0
Q3VycmVudEdMQ29udGV4dCgpCisgICAgICAgIHsKKyAgICAgICAgICAgIHJldHVybiB3Z2xHZXRD
dXJyZW50Q29udGV4dCgpOworICAgICAgICB9CisjZWxpZiBPUyhNQUNfT1NfWCkKKyAgICAgICAg
dHlwZWRlZiBBR0xDb250ZXh0IEdMQ29udGV4dDsKKyAgICAgICAgc3RhdGljIEdMQ29udGV4dCBn
ZXRDdXJyZW50R0xDb250ZXh0KCkKKyAgICAgICAgeworICAgICAgICAgICAgcmV0dXJuIGFnbEdl
dEN1cnJlbnRDb250ZXh0KCk7CisgICAgICAgIH0KKyNlbGlmIGRlZmluZWQoWFBfVU5JWCkKKyAg
ICAgICAgdHlwZWRlZiBHTFhDb250ZXh0IEdMQ29udGV4dDsKKyAgICAgICAgc3RhdGljIEdMQ29u
dGV4dCBnZXRDdXJyZW50R0xDb250ZXh0KCkKKyAgICAgICAgeworICAgICAgICAgICAgcmV0dXJu
IGdsWEdldEN1cnJlbnRDb250ZXh0KCk7CisgICAgICAgIH0KKyNlbHNlCisgICAgICAgIC8vIERl
ZmF1bHQgaW1wbGVtZW50YXRpb24gZm9yIHVua25vd24gb3BlbmdsLgorICAgICAgICAvLyBSZXR1
cm5zIGFsd2F5cyBpbmNyZWFzaW5nIG51bWJlciBhbmQgZGlzYWJsZXMgR0wgY29udGV4dCBkYXRh
IHNoYXJpbmcuCisgICAgICAgIHR5cGVkZWYgdW5zaWduZWQgaW50IEdMQ29udGV4dDsKKyAgICAg
ICAgc3RhdGljIEdMQ29udGV4dCBnZXRDdXJyZW50R0xDb250ZXh0KCkKKyAgICAgICAgeworICAg
ICAgICAgICAgc3RhdGljIEdMQ29udGV4dCBkdW1teUNvbnRleHRDb3VudGVyID0gMDsKKyAgICAg
ICAgICAgIHJldHVybiArK2R1bW15Q29udGV4dENvdW50ZXI7CisgICAgICAgIH0KKworI2VuZGlm
CisKKyAgICAgICAgdHlwZWRlZiBIYXNoTWFwPEdMQ29udGV4dCwgU2hhcmVkR0xEYXRhKj4gR0xD
b250ZXh0RGF0YU1hcDsKKyAgICAgICAgc3RhdGljIEdMQ29udGV4dERhdGFNYXAmIGdsQ29udGV4
dERhdGFNYXAoKQorICAgICAgICB7CisgICAgICAgICAgICBzdGF0aWMgR0xDb250ZXh0RGF0YU1h
cCBtYXA7CisgICAgICAgICAgICByZXR1cm4gbWFwOworICAgICAgICB9CisKKyAgICAgICAgc3Rh
dGljIFBhc3NSZWZQdHI8U2hhcmVkR0xEYXRhPiBjdXJyZW50U2hhcmVkR0xEYXRhKCkKKyAgICAg
ICAgeworICAgICAgICAgICAgR0xDb250ZXh0IGN1cnJlbnRHTENvbmV4dCA9IGdldEN1cnJlbnRH
TENvbnRleHQoKTsKKyAgICAgICAgICAgIEdMQ29udGV4dERhdGFNYXA6Oml0ZXJhdG9yIGl0ID0g
Z2xDb250ZXh0RGF0YU1hcCgpLmZpbmQoY3VycmVudEdMQ29uZXh0KTsKKyAgICAgICAgICAgIGlm
IChpdCAhPSBnbENvbnRleHREYXRhTWFwKCkuZW5kKCkpCisgICAgICAgICAgICAgICAgcmV0dXJu
IGl0LT5zZWNvbmQ7CisKKyAgICAgICAgICAgIHJldHVybiBhZG9wdFJlZihuZXcgU2hhcmVkR0xE
YXRhKGdldEN1cnJlbnRHTENvbnRleHQoKSkpOworICAgICAgICB9CisKICAgICAgICAgZW51bSBT
aGFkZXJQcm9ncmFtSW5kZXggewogICAgICAgICAgICAgTm9Qcm9ncmFtID0gLTEsCiAgICAgICAg
ICAgICBTaW1wbGVQcm9ncmFtLApAQCAtMTI4LDYgKzE5MSw5IEBAIHN0cnVjdCBUZXh0dXJlTWFw
cGVyR0xEYXRhIHsKICAgICAgICAgICAgIEdMdWludCBpZDsKICAgICAgICAgICAgIEdMdWludCB2
ZXJ0ZXhBdHRyaWI7CiAgICAgICAgICAgICBHTGludCB2YXJzW1ZhcmlhYmxlQ291bnRdOworICAg
ICAgICAgICAgR0x1aW50IHZlcnRleFNoYWRlcjsKKyAgICAgICAgICAgIEdMdWludCBmcmFnbWVu
dFNoYWRlcjsKKyAgICAgICAgICAgIFByb2dyYW1JbmZvKCkgOiBpZCgwKSB7IH0KICAgICAgICAg
fTsKIAogICAgICAgICBHTGludCBnZXRVbmlmb3JtTG9jYXRpb24oU2hhZGVyUHJvZ3JhbUluZGV4
IHByb2csIFNoYWRlclZhcmlhYmxlSW5kZXggdmFyLCBjb25zdCBjaGFyKiBuYW1lKQpAQCAtMTQ5
LDE2ICsyMTUsNTMgQEAgc3RydWN0IFRleHR1cmVNYXBwZXJHTERhdGEgewogICAgICAgICAgICAg
R0xfQ01EKGdsTGlua1Byb2dyYW0ocHJvZ3JhbUlEKSkKICAgICAgICAgICAgIHByb2dyYW1zW2lu
ZGV4XS52ZXJ0ZXhBdHRyaWIgPSBnbEdldEF0dHJpYkxvY2F0aW9uKHByb2dyYW1JRCwgIkluVmVy
dGV4Iik7CiAgICAgICAgICAgICBwcm9ncmFtc1tpbmRleF0uaWQgPSBwcm9ncmFtSUQ7CisgICAg
ICAgICAgICBwcm9ncmFtc1tpbmRleF0udmVydGV4U2hhZGVyID0gdmVydGV4U2hhZGVyOworICAg
ICAgICAgICAgcHJvZ3JhbXNbaW5kZXhdLmZyYWdtZW50U2hhZGVyID0gZnJhZ21lbnRTaGFkZXI7
CisgICAgICAgIH0KKworICAgICAgICB2b2lkIGRlbGV0ZVNoYWRlclByb2dyYW0oU2hhZGVyUHJv
Z3JhbUluZGV4IGluZGV4KQorICAgICAgICB7CisgICAgICAgICAgICBQcm9ncmFtSW5mbyYgcHJv
Z3JhbUluZm8gPSBwcm9ncmFtc1tpbmRleF07CisgICAgICAgICAgICBHTHVpbnQgcHJvZ3JhbUlE
ID0gcHJvZ3JhbUluZm8uaWQ7CisgICAgICAgICAgICBpZiAoIXByb2dyYW1JRCkKKyAgICAgICAg
ICAgICAgICByZXR1cm47CisKKyAgICAgICAgICAgIEdMX0NNRChnbERldGFjaFNoYWRlcihwcm9n
cmFtSUQsIHByb2dyYW1JbmZvLnZlcnRleFNoYWRlcikpCisgICAgICAgICAgICBHTF9DTUQoZ2xE
ZWxldGVTaGFkZXIocHJvZ3JhbUluZm8udmVydGV4U2hhZGVyKSkKKyAgICAgICAgICAgIEdMX0NN
RChnbERldGFjaFNoYWRlcihwcm9ncmFtSUQsIHByb2dyYW1JbmZvLmZyYWdtZW50U2hhZGVyKSkK
KyAgICAgICAgICAgIEdMX0NNRChnbERlbGV0ZVNoYWRlcihwcm9ncmFtSW5mby5mcmFnbWVudFNo
YWRlcikpCisgICAgICAgICAgICBHTF9DTUQoZ2xEZWxldGVQcm9ncmFtKHByb2dyYW1JRCkpCiAg
ICAgICAgIH0KIAorICAgICAgICB2b2lkIGluaXRpYWxpemVTaGFkZXJzKCk7CisKICAgICAgICAg
UHJvZ3JhbUluZm8gcHJvZ3JhbXNbUHJvZ3JhbUNvdW50XTsKIAogICAgICAgICBpbnQgc3RlbmNp
bEluZGV4OwogCi0gICAgICAgIEdsb2JhbEdMRGF0YSgpCi0gICAgICAgICAgICA6IHN0ZW5jaWxJ
bmRleCgxKQotICAgICAgICB7IH0KLSAgICB9IGdsb2JhbEdMRGF0YTsKKyAgICAgICAgU2hhcmVk
R0xEYXRhKEdMQ29udGV4dCBnbENvbnRleHQpIDogc3RlbmNpbEluZGV4KDEpCisgICAgICAgIHsK
KyAgICAgICAgICAgIGdsQ29udGV4dERhdGFNYXAoKS5hZGQoZ2xDb250ZXh0LCB0aGlzKTsKKyAg
ICAgICAgICAgIGluaXRpYWxpemVTaGFkZXJzKCk7CisgICAgICAgIH0KKworICAgICAgICB+U2hh
cmVkR0xEYXRhKCkKKyAgICAgICAgeworICAgICAgICAgICAgZm9yIChpbnQgaSA9IFNpbXBsZVBy
b2dyYW07IGkgPCBQcm9ncmFtQ291bnQ7ICsraSkKKyAgICAgICAgICAgICAgICBkZWxldGVTaGFk
ZXJQcm9ncmFtKFNoYWRlclByb2dyYW1JbmRleChpKSk7CisKKyAgICAgICAgICAgIEdMQ29udGV4
dERhdGFNYXA6OmNvbnN0X2l0ZXJhdG9yIGVuZCA9IGdsQ29udGV4dERhdGFNYXAoKS5lbmQoKTsK
KyAgICAgICAgICAgIEdMQ29udGV4dERhdGFNYXA6Oml0ZXJhdG9yIGl0OworICAgICAgICAgICAg
Zm9yIChpdCA9IGdsQ29udGV4dERhdGFNYXAoKS5iZWdpbigpOyBpdCAhPSBlbmQ7ICsraXQpIHsK
KyAgICAgICAgICAgICAgICBpZiAoaXQtPnNlY29uZCA9PSB0aGlzKQorICAgICAgICAgICAgICAg
ICAgICBicmVhazsKKyAgICAgICAgICAgIH0KKworICAgICAgICAgICAgQVNTRVJUKGl0ICE9IGVu
ZCk7CisgICAgICAgICAgICBnbENvbnRleHREYXRhTWFwKCkucmVtb3ZlKGl0KTsKKyAgICAgICAg
fQorCisgICAgfTsKIAogICAgIHN0cnVjdCBEaXJlY3RseUNvbXBvc2l0ZWRJbWFnZVJlcG9zaXRv
cnkgewogICAgICAgICBzdHJ1Y3QgRW50cnkgewpAQCAtMjExLDE3ICszMTQsMjIgQEAgc3RydWN0
IFRleHR1cmVNYXBwZXJHTERhdGEgewogICAgICAgICB9CiAgICAgfSBkaXJlY3RseUNvbXBvc2l0
ZWRJbWFnZXM7CiAKKyAgICBTaGFyZWRHTERhdGEmIHNoYXJlZEdMRGF0YSgpIGNvbnN0CisgICAg
eworICAgICAgICByZXR1cm4gKihtX3NoYXJlZEdMRGF0YS5nZXQoKSk7CisgICAgfQorCiAgICAg
VGV4dHVyZU1hcHBlckdMRGF0YSgpCi0gICAgICAgIDogY3VycmVudFByb2dyYW0oVGV4dHVyZU1h
cHBlckdMRGF0YTo6R2xvYmFsR0xEYXRhOjpOb1Byb2dyYW0pCisgICAgICAgIDogY3VycmVudFBy
b2dyYW0oU2hhcmVkR0xEYXRhOjpOb1Byb2dyYW0pCisgICAgICAgICwgbV9zaGFyZWRHTERhdGEo
VGV4dHVyZU1hcHBlckdMRGF0YTo6U2hhcmVkR0xEYXRhOjpjdXJyZW50U2hhcmVkR0xEYXRhKCkp
CiAgICAgeyB9CiAKICAgICBUcmFuc2Zvcm1hdGlvbk1hdHJpeCBwcm9qZWN0aW9uTWF0cml4Owog
ICAgIGludCBjdXJyZW50UHJvZ3JhbTsKICAgICBpbnQgcHJldmlvdXNQcm9ncmFtOworICAgIFJl
ZlB0cjxTaGFyZWRHTERhdGE+IG1fc2hhcmVkR0xEYXRhOwogfTsKIAotVGV4dHVyZU1hcHBlckdM
RGF0YTo6R2xvYmFsR0xEYXRhIFRleHR1cmVNYXBwZXJHTERhdGE6Omdsb2JhbEdMRGF0YTsKLQog
Y2xhc3MgQml0bWFwVGV4dHVyZUdMIDogcHVibGljIEJpdG1hcFRleHR1cmUgewogcHVibGljOgog
ICAgIHZpcnR1YWwgdm9pZCBkZXN0cm95KCk7CkBAIC0yODksMTEgKzM5NywxMSBAQCBwcml2YXRl
OgogfTsKIAogI2RlZmluZSBURVhNQVBfR0VUX1NIQURFUl9WQVJfTE9DQVRJT04ocHJvZywgdmFy
KSBcCi0gICAgaWYgKFRleHR1cmVNYXBwZXJHTERhdGE6Omdsb2JhbEdMRGF0YS5nZXRVbmlmb3Jt
TG9jYXRpb24oVGV4dHVyZU1hcHBlckdMRGF0YTo6Z2xvYmFsR0xEYXRhLnByb2cjI1Byb2dyYW0s
IFRleHR1cmVNYXBwZXJHTERhdGE6Omdsb2JhbEdMRGF0YS52YXIjI1ZhcmlhYmxlLCAjdmFyKSA8
IDApIFwKKyAgICBpZiAoZ2V0VW5pZm9ybUxvY2F0aW9uKHByb2cjI1Byb2dyYW0sIHZhciMjVmFy
aWFibGUsICN2YXIpIDwgMCkgXAogICAgICAgICAgICAgTE9HX0VSUk9SKCJDb3VsZG4ndCBmaW5k
IHZhcmlhYmxlICIjdmFyIiBpbiBwcm9ncmFtICIjcHJvZyJcbiIpOwogCiAjZGVmaW5lIFRFWE1B
UF9CVUlMRF9TSEFERVIocHJvZ3JhbSkgXAotICAgIFRleHR1cmVNYXBwZXJHTERhdGE6Omdsb2Jh
bEdMRGF0YS5jcmVhdGVTaGFkZXJQcm9ncmFtKHZlcnRleFNoYWRlclNvdXJjZSMjcHJvZ3JhbSwg
ZnJhZ21lbnRTaGFkZXJTb3VyY2UjI3Byb2dyYW0sIFRleHR1cmVNYXBwZXJHTERhdGE6Omdsb2Jh
bEdMRGF0YS5wcm9ncmFtIyNQcm9ncmFtKTsKKyAgICBjcmVhdGVTaGFkZXJQcm9ncmFtKHZlcnRl
eFNoYWRlclNvdXJjZSMjcHJvZ3JhbSwgZnJhZ21lbnRTaGFkZXJTb3VyY2UjI3Byb2dyYW0sIHBy
b2dyYW0jI1Byb2dyYW0pOwogCiBUZXh0dXJlTWFwcGVyR0w6OlRleHR1cmVNYXBwZXJHTCgpCiAg
ICAgOiBtX2RhdGEobmV3IFRleHR1cmVNYXBwZXJHTERhdGEpCkBAIC0zMDEsMTIgKzQwOSw4IEBA
IFRleHR1cmVNYXBwZXJHTDo6VGV4dHVyZU1hcHBlckdMKCkKIHsKIH0KIAotdm9pZCBUZXh0dXJl
TWFwcGVyR0w6OmluaXRpYWxpemVTaGFkZXJzKCkKK3ZvaWQgVGV4dHVyZU1hcHBlckdMRGF0YTo6
U2hhcmVkR0xEYXRhOjppbml0aWFsaXplU2hhZGVycygpCiB7Ci0gICAgc3RhdGljIGJvb2wgc2hh
ZGVyc0NvbXBpbGVkID0gZmFsc2U7Ci0gICAgaWYgKHNoYWRlcnNDb21waWxlZCkKLSAgICAgICAg
cmV0dXJuOwotICAgIHNoYWRlcnNDb21waWxlZCA9IHRydWU7CiAjaWZuZGVmIFRFWE1BUF9PUEVO
R0xfRVNfMgogI2RlZmluZSBPRVMyX1BSRUNJU0lPTl9ERUZJTklUSU9OUyBcCiAgICAgIiNkZWZp
bmUgbG93cFxuI2RlZmluZSBoaWdocFxuIgpAQCAtMzIyLDYgKzQyNiw5IEBAIHZvaWQgVGV4dHVy
ZU1hcHBlckdMOjppbml0aWFsaXplU2hhZGVycygpCiAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgIE9FUzJfRlJBR01FTlRfU0hBREVSX0RFRkFVTFRfUFJFQ0lTSU9OXAogICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAjc3JjCiAKKyAgICBpZiAoIWluaXRpYWxpemVPcGVuR0xT
aGltcygpKQorICAgICAgICByZXR1cm47CisKICAgICBjb25zdCBjaGFyKiBmcmFnbWVudFNoYWRl
clNvdXJjZU9wYWNpdHlBbmRNYXNrID0KICAgICAgICAgRlJBR01FTlRfU0hBREVSKAogICAgICAg
ICAgICAgdW5pZm9ybSBzYW1wbGVyMkQgU291cmNlVGV4dHVyZSwgTWFza1RleHR1cmU7CkBAIC00
MjYsNyArNTMzLDYgQEAgdm9pZCBUZXh0dXJlTWFwcGVyR0w6OmJlZ2luUGFpbnRpbmcoKQogICAg
IGdsQ2xlYXIoR0xfU1RFTkNJTF9CVUZGRVJfQklUKTsKICAgICBiaW5kU3VyZmFjZSgwKTsKICNl
bmRpZgotICAgIGluaXRpYWxpemVTaGFkZXJzKCk7CiB9CiAKIHZvaWQgVGV4dHVyZU1hcHBlckdM
OjplbmRQYWludGluZygpCkBAIC00NTQsMTMgKzU2MCwxMyBAQCB2b2lkIFRleHR1cmVNYXBwZXJH
TDo6ZHJhd1RleHR1cmUoY29uc3QgQml0bWFwVGV4dHVyZSYgdGV4dHVyZSwgY29uc3QgRmxvYXRS
ZWN0JgogCiB2b2lkIFRleHR1cmVNYXBwZXJHTDo6ZHJhd1RleHR1cmUodWludDMyX3QgdGV4dHVy
ZSwgYm9vbCBvcGFxdWUsIGNvbnN0IEZsb2F0U2l6ZSYgcmVsYXRpdmVTaXplLCBjb25zdCBGbG9h
dFJlY3QmIHRhcmdldFJlY3QsIGNvbnN0IFRyYW5zZm9ybWF0aW9uTWF0cml4JiBtb2RlbFZpZXdN
YXRyaXgsIGZsb2F0IG9wYWNpdHksIGNvbnN0IEJpdG1hcFRleHR1cmUqIG1hc2tUZXh0dXJlLCBi
b29sIGZsaXApCiB7Ci0gICAgVGV4dHVyZU1hcHBlckdMRGF0YTo6R2xvYmFsR0xEYXRhOjpTaGFk
ZXJQcm9ncmFtSW5kZXggcHJvZ3JhbTsKKyAgICBUZXh0dXJlTWFwcGVyR0xEYXRhOjpTaGFyZWRH
TERhdGE6OlNoYWRlclByb2dyYW1JbmRleCBwcm9ncmFtOwogICAgIGlmIChtYXNrVGV4dHVyZSkK
LSAgICAgICAgcHJvZ3JhbSA9IFRleHR1cmVNYXBwZXJHTERhdGE6Okdsb2JhbEdMRGF0YTo6T3Bh
Y2l0eUFuZE1hc2tQcm9ncmFtOworICAgICAgICBwcm9ncmFtID0gVGV4dHVyZU1hcHBlckdMRGF0
YTo6U2hhcmVkR0xEYXRhOjpPcGFjaXR5QW5kTWFza1Byb2dyYW07CiAgICAgZWxzZQotICAgICAg
ICBwcm9ncmFtID0gVGV4dHVyZU1hcHBlckdMRGF0YTo6R2xvYmFsR0xEYXRhOjpTaW1wbGVQcm9n
cmFtOworICAgICAgICBwcm9ncmFtID0gVGV4dHVyZU1hcHBlckdMRGF0YTo6U2hhcmVkR0xEYXRh
OjpTaW1wbGVQcm9ncmFtOwogCi0gICAgY29uc3QgVGV4dHVyZU1hcHBlckdMRGF0YTo6R2xvYmFs
R0xEYXRhOjpQcm9ncmFtSW5mbyYgcHJvZ3JhbUluZm8gPSBkYXRhKCkuZ2xvYmFsR0xEYXRhLnBy
b2dyYW1zW3Byb2dyYW1dOworICAgIGNvbnN0IFRleHR1cmVNYXBwZXJHTERhdGE6OlNoYXJlZEdM
RGF0YTo6UHJvZ3JhbUluZm8mIHByb2dyYW1JbmZvID0gZGF0YSgpLnNoYXJlZEdMRGF0YSgpLnBy
b2dyYW1zW3Byb2dyYW1dOwogICAgIEdMX0NNRChnbFVzZVByb2dyYW0ocHJvZ3JhbUluZm8uaWQp
KQogICAgIGRhdGEoKS5jdXJyZW50UHJvZ3JhbSA9IHByb2dyYW07CiAgICAgR0xfQ01EKGdsRW5h
YmxlVmVydGV4QXR0cmliQXJyYXkocHJvZ3JhbUluZm8udmVydGV4QXR0cmliKSkKQEAgLTQ4Nywx
MCArNTkzLDEwIEBAIHZvaWQgVGV4dHVyZU1hcHBlckdMOjpkcmF3VGV4dHVyZSh1aW50MzJfdCB0
ZXh0dXJlLCBib29sIG9wYXF1ZSwgY29uc3QgRmxvYXRTaXplCiAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgMCwgMCwgMSwgMCwKICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAwLCBmbGlwID8gcmVsYXRpdmVTaXplLmhlaWdodCgpIDogMCwgMCwgMX07CiAK
LSAgICBHTF9DTUQoZ2xVbmlmb3JtTWF0cml4NGZ2KHByb2dyYW1JbmZvLnZhcnNbVGV4dHVyZU1h
cHBlckdMRGF0YTo6R2xvYmFsR0xEYXRhOjpJbk1hdHJpeFZhcmlhYmxlXSwgMSwgR0xfRkFMU0Us
IG00KSkKLSAgICBHTF9DTUQoZ2xVbmlmb3JtTWF0cml4NGZ2KHByb2dyYW1JbmZvLnZhcnNbVGV4
dHVyZU1hcHBlckdMRGF0YTo6R2xvYmFsR0xEYXRhOjpJblNvdXJjZU1hdHJpeFZhcmlhYmxlXSwg
MSwgR0xfRkFMU0UsIG00c3JjKSkKLSAgICBHTF9DTUQoZ2xVbmlmb3JtMWkocHJvZ3JhbUluZm8u
dmFyc1tUZXh0dXJlTWFwcGVyR0xEYXRhOjpHbG9iYWxHTERhdGE6OlNvdXJjZVRleHR1cmVWYXJp
YWJsZV0sIDApKQotICAgIEdMX0NNRChnbFVuaWZvcm0xZihwcm9ncmFtSW5mby52YXJzW1RleHR1
cmVNYXBwZXJHTERhdGE6Okdsb2JhbEdMRGF0YTo6T3BhY2l0eVZhcmlhYmxlXSwgb3BhY2l0eSkp
CisgICAgR0xfQ01EKGdsVW5pZm9ybU1hdHJpeDRmdihwcm9ncmFtSW5mby52YXJzW1RleHR1cmVN
YXBwZXJHTERhdGE6OlNoYXJlZEdMRGF0YTo6SW5NYXRyaXhWYXJpYWJsZV0sIDEsIEdMX0ZBTFNF
LCBtNCkpCisgICAgR0xfQ01EKGdsVW5pZm9ybU1hdHJpeDRmdihwcm9ncmFtSW5mby52YXJzW1Rl
eHR1cmVNYXBwZXJHTERhdGE6OlNoYXJlZEdMRGF0YTo6SW5Tb3VyY2VNYXRyaXhWYXJpYWJsZV0s
IDEsIEdMX0ZBTFNFLCBtNHNyYykpCisgICAgR0xfQ01EKGdsVW5pZm9ybTFpKHByb2dyYW1JbmZv
LnZhcnNbVGV4dHVyZU1hcHBlckdMRGF0YTo6U2hhcmVkR0xEYXRhOjpTb3VyY2VUZXh0dXJlVmFy
aWFibGVdLCAwKSkKKyAgICBHTF9DTUQoZ2xVbmlmb3JtMWYocHJvZ3JhbUluZm8udmFyc1tUZXh0
dXJlTWFwcGVyR0xEYXRhOjpTaGFyZWRHTERhdGE6Ok9wYWNpdHlWYXJpYWJsZV0sIG9wYWNpdHkp
KQogCiAgICAgaWYgKG1hc2tUZXh0dXJlICYmIG1hc2tUZXh0dXJlLT5pc1ZhbGlkKCkpIHsKICAg
ICAgICAgY29uc3QgQml0bWFwVGV4dHVyZUdMKiBtYXNrVGV4dHVyZUdMID0gc3RhdGljX2Nhc3Q8
Y29uc3QgQml0bWFwVGV4dHVyZUdMKj4obWFza1RleHR1cmUpOwpAQCAtNTAwLDggKzYwNiw4IEBA
IHZvaWQgVGV4dHVyZU1hcHBlckdMOjpkcmF3VGV4dHVyZSh1aW50MzJfdCB0ZXh0dXJlLCBib29s
IG9wYXF1ZSwgY29uc3QgRmxvYXRTaXplCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgIDAsIG1hc2tUZXh0dXJlR0wtPnJlbGF0aXZlU2l6ZSgpLmhlaWdodCgpLCAwLCAw
LAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAwLCAwLCAxLCAwLAog
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAwLCAwLCAwLCAxfTsKLSAg
ICAgICAgR0xfQ01EKGdsVW5pZm9ybU1hdHJpeDRmdihwcm9ncmFtSW5mby52YXJzW1RleHR1cmVN
YXBwZXJHTERhdGE6Okdsb2JhbEdMRGF0YTo6SW5NYXNrTWF0cml4VmFyaWFibGVdLCAxLCBHTF9G
QUxTRSwgbTRtYXNrKSk7Ci0gICAgICAgIEdMX0NNRChnbFVuaWZvcm0xaShwcm9ncmFtSW5mby52
YXJzW1RleHR1cmVNYXBwZXJHTERhdGE6Okdsb2JhbEdMRGF0YTo6TWFza1RleHR1cmVWYXJpYWJs
ZV0sIDEpKQorICAgICAgICBHTF9DTUQoZ2xVbmlmb3JtTWF0cml4NGZ2KHByb2dyYW1JbmZvLnZh
cnNbVGV4dHVyZU1hcHBlckdMRGF0YTo6U2hhcmVkR0xEYXRhOjpJbk1hc2tNYXRyaXhWYXJpYWJs
ZV0sIDEsIEdMX0ZBTFNFLCBtNG1hc2spKTsKKyAgICAgICAgR0xfQ01EKGdsVW5pZm9ybTFpKHBy
b2dyYW1JbmZvLnZhcnNbVGV4dHVyZU1hcHBlckdMRGF0YTo6U2hhcmVkR0xEYXRhOjpNYXNrVGV4
dHVyZVZhcmlhYmxlXSwgMSkpCiAgICAgICAgIEdMX0NNRChnbEFjdGl2ZVRleHR1cmUoR0xfVEVY
VFVSRTApKQogICAgIH0KIApAQCAtNjcwLDcgKzc3Niw3IEBAIHN0YXRpYyBpbmxpbmUgVHJhbnNm
b3JtYXRpb25NYXRyaXggY3JlYXRlUHJvamVjdGlvbk1hdHJpeChjb25zdCBJbnRTaXplJiBzaXpl
LCBiCiAKIHZvaWQgQml0bWFwVGV4dHVyZUdMOjpiaW5kKCkKIHsKLSAgICBpbnQmIHN0ZW5jaWxJ
bmRleCA9IFRleHR1cmVNYXBwZXJHTERhdGE6Omdsb2JhbEdMRGF0YS5zdGVuY2lsSW5kZXg7Cisg
ICAgaW50JiBzdGVuY2lsSW5kZXggPSBtX3RleHR1cmVNYXBwZXItPmRhdGEoKS5zaGFyZWRHTERh
dGEoKS5zdGVuY2lsSW5kZXg7CiAgICAgaWYgKG1fc3VyZmFjZU5lZWRzUmVzZXQgfHwgIW1fZmJv
KSB7CiAgICAgICAgIGlmICghbV9mYm8pCiAgICAgICAgICAgICBHTF9DTUQoZ2xHZW5GcmFtZWJ1
ZmZlcnMoMSwgJm1fZmJvKSkKQEAgLTc0Myw3ICs4NDksNyBAQCB2b2lkIFRleHR1cmVNYXBwZXJH
TDo6YmluZFN1cmZhY2UoQml0bWFwVGV4dHVyZSAqc3VyZmFjZVBvaW50ZXIpCiAgICAgaWYgKCFz
dXJmYWNlKSB7CiAgICAgICAgIEdMX0NNRChnbEJpbmRGcmFtZWJ1ZmZlcihHTF9GUkFNRUJVRkZF
UiwgMCkpCiAgICAgICAgIGRhdGEoKS5wcm9qZWN0aW9uTWF0cml4ID0gY3JlYXRlUHJvamVjdGlv
bk1hdHJpeCh2aWV3cG9ydFNpemUoKSwgdHJ1ZSkubXVsdGlwbHkodHJhbnNmb3JtKCkpOwotICAg
ICAgICBHTF9DTUQoZ2xTdGVuY2lsRnVuYyhkYXRhKCkuZ2xvYmFsR0xEYXRhLnN0ZW5jaWxJbmRl
eCA+IDEgPyBHTF9FUVVBTCA6IEdMX0FMV0FZUywgZGF0YSgpLmdsb2JhbEdMRGF0YS5zdGVuY2ls
SW5kZXggLSAxLCBkYXRhKCkuZ2xvYmFsR0xEYXRhLnN0ZW5jaWxJbmRleCAtIDEpKQorICAgICAg
ICBHTF9DTUQoZ2xTdGVuY2lsRnVuYyhkYXRhKCkuc2hhcmVkR0xEYXRhKCkuc3RlbmNpbEluZGV4
ID4gMSA/IEdMX0VRVUFMIDogR0xfQUxXQVlTLCBkYXRhKCkuc2hhcmVkR0xEYXRhKCkuc3RlbmNp
bEluZGV4IC0gMSwgZGF0YSgpLnNoYXJlZEdMRGF0YSgpLnN0ZW5jaWxJbmRleCAtIDEpKQogICAg
ICAgICBHTF9DTUQoZ2xTdGVuY2lsT3AoR0xfS0VFUCwgR0xfS0VFUCwgR0xfS0VFUCkpCiAgICAg
ICAgIEdMX0NNRChnbFZpZXdwb3J0KDAsIDAsIHZpZXdwb3J0U2l6ZSgpLndpZHRoKCksIHZpZXdw
b3J0U2l6ZSgpLmhlaWdodCgpKSkKICAgICAgICAgcmV0dXJuOwpAQCAtNzU0LDggKzg2MCw4IEBA
IHZvaWQgVGV4dHVyZU1hcHBlckdMOjpiaW5kU3VyZmFjZShCaXRtYXBUZXh0dXJlICpzdXJmYWNl
UG9pbnRlcikKIAogdm9pZCBUZXh0dXJlTWFwcGVyR0w6OmJlZ2luQ2xpcChjb25zdCBUcmFuc2Zv
cm1hdGlvbk1hdHJpeCYgbW9kZWxWaWV3TWF0cml4LCBjb25zdCBGbG9hdFJlY3QmIHRhcmdldFJl
Y3QpCiB7Ci0gICAgVGV4dHVyZU1hcHBlckdMRGF0YTo6R2xvYmFsR0xEYXRhOjpTaGFkZXJQcm9n
cmFtSW5kZXggcHJvZ3JhbSA9IFRleHR1cmVNYXBwZXJHTERhdGE6Okdsb2JhbEdMRGF0YTo6Q2xp
cFByb2dyYW07Ci0gICAgY29uc3QgVGV4dHVyZU1hcHBlckdMRGF0YTo6R2xvYmFsR0xEYXRhOjpQ
cm9ncmFtSW5mbyYgcHJvZ3JhbUluZm8gPSBkYXRhKCkuZ2xvYmFsR0xEYXRhLnByb2dyYW1zW3By
b2dyYW1dOworICAgIFRleHR1cmVNYXBwZXJHTERhdGE6OlNoYXJlZEdMRGF0YTo6U2hhZGVyUHJv
Z3JhbUluZGV4IHByb2dyYW0gPSBUZXh0dXJlTWFwcGVyR0xEYXRhOjpTaGFyZWRHTERhdGE6OkNs
aXBQcm9ncmFtOworICAgIGNvbnN0IFRleHR1cmVNYXBwZXJHTERhdGE6OlNoYXJlZEdMRGF0YTo6
UHJvZ3JhbUluZm8mIHByb2dyYW1JbmZvID0gZGF0YSgpLnNoYXJlZEdMRGF0YSgpLnByb2dyYW1z
W3Byb2dyYW1dOwogICAgIEdMX0NNRChnbFVzZVByb2dyYW0ocHJvZ3JhbUluZm8uaWQpKQogICAg
IEdMX0NNRChnbEVuYWJsZVZlcnRleEF0dHJpYkFycmF5KHByb2dyYW1JbmZvLnZlcnRleEF0dHJp
YikpCiAgICAgY29uc3QgR0xmbG9hdCB1bml0UmVjdFtdID0gezAsIDAsIDEsIDAsIDEsIDEsIDAs
IDF9OwpAQCAtNzc1LDkgKzg4MSw5IEBAIHZvaWQgVGV4dHVyZU1hcHBlckdMOjpiZWdpbkNsaXAo
Y29uc3QgVHJhbnNmb3JtYXRpb25NYXRyaXgmIG1vZGVsVmlld01hdHJpeCwgY29uCiAgICAgICAg
IG1hdHJpeC5tNDEoKSwgbWF0cml4Lm00MigpLCBtYXRyaXgubTQzKCksIG1hdHJpeC5tNDQoKQog
ICAgIH07CiAKLSAgICBpbnQmIHN0ZW5jaWxJbmRleCA9IGRhdGEoKS5nbG9iYWxHTERhdGEuc3Rl
bmNpbEluZGV4OworICAgIGludCYgc3RlbmNpbEluZGV4ID0gZGF0YSgpLnNoYXJlZEdMRGF0YSgp
LnN0ZW5jaWxJbmRleDsKIAotICAgIEdMX0NNRChnbFVuaWZvcm1NYXRyaXg0ZnYocHJvZ3JhbUlu
Zm8udmFyc1tUZXh0dXJlTWFwcGVyR0xEYXRhOjpHbG9iYWxHTERhdGE6OkluTWF0cml4VmFyaWFi
bGVdLCAxLCBHTF9GQUxTRSwgbTQpKQorICAgIEdMX0NNRChnbFVuaWZvcm1NYXRyaXg0ZnYocHJv
Z3JhbUluZm8udmFyc1tUZXh0dXJlTWFwcGVyR0xEYXRhOjpTaGFyZWRHTERhdGE6OkluTWF0cml4
VmFyaWFibGVdLCAxLCBHTF9GQUxTRSwgbTQpKQogICAgIEdMX0NNRChnbEVuYWJsZShHTF9TVEVO
Q0lMX1RFU1QpKQogICAgIEdMX0NNRChnbFN0ZW5jaWxGdW5jKEdMX05FVkVSLCBzdGVuY2lsSW5k
ZXgsIHN0ZW5jaWxJbmRleCkpCiAgICAgR0xfQ01EKGdsU3RlbmNpbE9wKEdMX1JFUExBQ0UsIEdM
X1JFUExBQ0UsIEdMX1JFUExBQ0UpKQpAQCAtNzkxLDggKzg5Nyw4IEBAIHZvaWQgVGV4dHVyZU1h
cHBlckdMOjpiZWdpbkNsaXAoY29uc3QgVHJhbnNmb3JtYXRpb25NYXRyaXgmIG1vZGVsVmlld01h
dHJpeCwgY29uCiAKIHZvaWQgVGV4dHVyZU1hcHBlckdMOjplbmRDbGlwKCkKIHsKLSAgICBkYXRh
KCkuZ2xvYmFsR0xEYXRhLnN0ZW5jaWxJbmRleCA+Pj0gMTsKLSAgICBnbFN0ZW5jaWxGdW5jKGRh
dGEoKS5nbG9iYWxHTERhdGEuc3RlbmNpbEluZGV4ID4gMSA/IEdMX0VRVUFMIDogR0xfQUxXQVlT
LCBkYXRhKCkuZ2xvYmFsR0xEYXRhLnN0ZW5jaWxJbmRleCAtIDEsIGRhdGEoKS5nbG9iYWxHTERh
dGEuc3RlbmNpbEluZGV4IC0gMSk7CisgICAgZGF0YSgpLnNoYXJlZEdMRGF0YSgpLnN0ZW5jaWxJ
bmRleCA+Pj0gMTsKKyAgICBnbFN0ZW5jaWxGdW5jKGRhdGEoKS5zaGFyZWRHTERhdGEoKS5zdGVu
Y2lsSW5kZXggPiAxID8gR0xfRVFVQUwgOiBHTF9BTFdBWVMsIGRhdGEoKS5zaGFyZWRHTERhdGEo
KS5zdGVuY2lsSW5kZXggLSAxLCBkYXRhKCkuc2hhcmVkR0xEYXRhKCkuc3RlbmNpbEluZGV4IC0g
MSk7CiB9CiAKIFBhc3NSZWZQdHI8Qml0bWFwVGV4dHVyZT4gVGV4dHVyZU1hcHBlckdMOjpjcmVh
dGVUZXh0dXJlKCkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNz
L29wZW5nbC9UZXh0dXJlTWFwcGVyR0wuaCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBo
aWNzL29wZW5nbC9UZXh0dXJlTWFwcGVyR0wuaAppbmRleCA2ZjRjMjlkLi5kZDJlMWE3IDEwMDY0
NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9vcGVuZ2wvVGV4dHVyZU1h
cHBlckdMLmgKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3Mvb3BlbmdsL1Rl
eHR1cmVNYXBwZXJHTC5oCkBAIC01NSw3ICs1NSw2IEBAIHB1YmxpYzoKICAgICB2aXJ0dWFsIGJv
b2wgaXNPcGVuR0xCYWNrZWQoKSBjb25zdCB7IHJldHVybiB0cnVlOyB9CiAKIHByaXZhdGU6Ci0g
ICAgdm9pZCBpbml0aWFsaXplU2hhZGVycygpOwogICAgIGlubGluZSBUZXh0dXJlTWFwcGVyR0xE
YXRhJiBkYXRhKCkgeyByZXR1cm4gKm1fZGF0YTsgfQogICAgIFRleHR1cmVNYXBwZXJHTERhdGEq
IG1fZGF0YTsKICAgICBHcmFwaGljc0NvbnRleHQqIG1fY29udGV4dDsKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJLaXQyL0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJLaXQyL0NoYW5nZUxvZwppbmRleCAw
NDczMGY0Li41YjA2NzNjIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9DaGFuZ2VMb2cKKysr
IGIvU291cmNlL1dlYktpdDIvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMjMgQEAKKzIwMTItMDEtMTAg
IFZpYXRjaGVzbGF2IE9zdGFwZW5rbyAgPG9zdGFwZW5rby52aWF0Y2hlc2xhdkBub2tpYS5jb20+
CisKKyAgICAgICAgW1F0XVtXSzJdUkVHUkVTU0lPTihyMTAyNDM1KTogSXQgbWFkZSB0c3RfUVF1
aWNrV2ViVmlldzo6c2hvdygpIGNyYXNoCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3Jn
L3Nob3dfYnVnLmNnaT9pZD03NDE3NgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09Q
UyEpLgorCisgICAgICAgIENoZWNrIHRleHR1cmUgbWFwcGVyIGV4aXN0cyBhbHJlYWR5IGluIGVu
c3VyZVJvb3RMYXllciB0byBhdm9pZCByZWNyZWNhdGlvbi4KKyAgICAgICAgQ2hlY2sgaWYgcm9v
dCBsYXllciB3YXMgZGVsZXRlZCBhbHJlYWR5IGluIHB1cmdlR0xSZXNvdXJjZXMuCisgICAgICAg
IEFkZGVkIG11bHRpcGxlV2ViVmlld1dpbmRvd3MgYW5kIG11bHRpcGxlV2ViVmlld3MgQVBJIHRl
c3RzLgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgICog
VUlQcm9jZXNzL0FQSS9xdC90ZXN0cy9xcXVpY2t3ZWJ2aWV3L3RzdF9xcXVpY2t3ZWJ2aWV3LmNw
cDoKKyAgICAgICAgKHRzdF9RUXVpY2tXZWJWaWV3OjptdWx0aXBsZVdlYlZpZXdXaW5kb3dzKToK
KyAgICAgICAgKHRzdF9RUXVpY2tXZWJWaWV3OjptdWx0aXBsZVdlYlZpZXdzKToKKyAgICAgICAg
KiBVSVByb2Nlc3MvcXQvTGF5ZXJUcmVlSG9zdFByb3h5UXQuY3BwOgorICAgICAgICAoV2ViS2l0
OjpMYXllclRyZWVIb3N0UHJveHk6OmVuc3VyZVJvb3RMYXllcik6CisgICAgICAgIChXZWJLaXQ6
OkxheWVyVHJlZUhvc3RQcm94eTo6cHVyZ2VHTFJlc291cmNlcyk6CisKIDIwMTItMDEtMDYgIE1h
cmsgUm93ZSAgPG1yb3dlQGFwcGxlLmNvbT4KIAogICAgICAgICBSRUdSRVNTSU9OIChXZWJLaXQy
KTogU2F2ZSBhcyBQREYgbm8gbG9uZ2VyIGdlbmVyYXRlcyBsaW5rcyB0byBVUkxzCmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJL3F0L3Rlc3RzL3FxdWlja3dlYnZpZXcv
dHN0X3FxdWlja3dlYnZpZXcuY3BwIGIvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL0FQSS9xdC90
ZXN0cy9xcXVpY2t3ZWJ2aWV3L3RzdF9xcXVpY2t3ZWJ2aWV3LmNwcAppbmRleCA1N2I3ZWMxLi5h
NmEyMDJhIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJL3F0L3Rlc3Rz
L3FxdWlja3dlYnZpZXcvdHN0X3FxdWlja3dlYnZpZXcuY3BwCisrKyBiL1NvdXJjZS9XZWJLaXQy
L1VJUHJvY2Vzcy9BUEkvcXQvdGVzdHMvcXF1aWNrd2Vidmlldy90c3RfcXF1aWNrd2Vidmlldy5j
cHAKQEAgLTUxLDYgKzUxLDggQEAgcHJpdmF0ZSBzbG90czoKICAgICB2b2lkIHNob3coKTsKICAg
ICB2b2lkIHNob3dXZWJWaWV3KCk7CiAgICAgdm9pZCByZW1vdmVGcm9tQ2FudmFzKCk7CisgICAg
dm9pZCBtdWx0aXBsZVdlYlZpZXdXaW5kb3dzKCk7CisgICAgdm9pZCBtdWx0aXBsZVdlYlZpZXdz
KCk7CiAKIHByaXZhdGU6CiAgICAgaW5saW5lIFFRdWlja1dlYlZpZXcqIHdlYlZpZXcoKSBjb25z
dDsKQEAgLTI3MCw2ICsyNzIsNTIgQEAgdm9pZCB0c3RfUVF1aWNrV2ViVmlldzo6cmVtb3ZlRnJv
bUNhbnZhcygpCiAgICAgUVRlc3Q6OnFXYWl0KDIwMCk7CiB9CiAKK3ZvaWQgdHN0X1FRdWlja1dl
YlZpZXc6Om11bHRpcGxlV2ViVmlld1dpbmRvd3MoKQoreworICAgIHNob3dXZWJWaWV3KCk7CisK
KyAgICAvLyBUaGlzIHNob3VsZCBub3QgY3Jhc2guCisgICAgUVF1aWNrV2ViVmlldyogd2ViVmll
dzEgPSBuZXcgUVF1aWNrV2ViVmlldygpOworICAgIFFTY29wZWRQb2ludGVyPFRlc3RXaW5kb3c+
IHdpbmRvdzEobmV3IFRlc3RXaW5kb3cod2ViVmlldzEpKTsKKyAgICBRUXVpY2tXZWJWaWV3KiB3
ZWJWaWV3MiA9IG5ldyBRUXVpY2tXZWJWaWV3KCk7CisgICAgUVNjb3BlZFBvaW50ZXI8VGVzdFdp
bmRvdz4gd2luZG93MihuZXcgVGVzdFdpbmRvdyh3ZWJWaWV3MikpOworCisgICAgd2ViVmlldzEt
PnNldFNpemUoUVNpemVGKDMwMCwgNDAwKSk7CisgICAgd2ViVmlldzEtPmxvYWQoUVVybDo6ZnJv
bUxvY2FsRmlsZShRTGF0aW4xU3RyaW5nKFRFU1RTX1NPVVJDRV9ESVIgIi9odG1sL3Njcm9sbC5o
dG1sIikpKTsKKyAgICBRVkVSSUZZKHdhaXRGb3JTaWduYWwod2ViVmlldzEsIFNJR05BTChsb2Fk
U3VjY2VlZGVkKCkpKSk7CisgICAgd2luZG93MS0+c2hvdygpOworICAgIHdlYlZpZXcxLT5zZXRW
aXNpYmxlKHRydWUpOworCisgICAgd2ViVmlldzItPnNldFNpemUoUVNpemVGKDMwMCwgNDAwKSk7
CisgICAgd2ViVmlldzItPmxvYWQoUVVybDo6ZnJvbUxvY2FsRmlsZShRTGF0aW4xU3RyaW5nKFRF
U1RTX1NPVVJDRV9ESVIgIi9odG1sL2Jhc2ljX3BhZ2UuaHRtbCIpKSk7CisgICAgUVZFUklGWSh3
YWl0Rm9yU2lnbmFsKHdlYlZpZXcyLCBTSUdOQUwobG9hZFN1Y2NlZWRlZCgpKSkpOworICAgIHdp
bmRvdzItPnNob3coKTsKKyAgICB3ZWJWaWV3Mi0+c2V0VmlzaWJsZSh0cnVlKTsKKyAgICBRVGVz
dDo6cVdhaXQoMjAwKTsKK30KKwordm9pZCB0c3RfUVF1aWNrV2ViVmlldzo6bXVsdGlwbGVXZWJW
aWV3cygpCit7CisgICAgc2hvd1dlYlZpZXcoKTsKKworICAgIC8vIFRoaXMgc2hvdWxkIG5vdCBj
cmFzaC4KKyAgICBRU2NvcGVkUG9pbnRlcjxRUXVpY2tXZWJWaWV3PiB3ZWJWaWV3MShuZXcgUVF1
aWNrV2ViVmlldygpKTsKKyAgICB3ZWJWaWV3MS0+c2V0UGFyZW50SXRlbShtX3dpbmRvdy0+cm9v
dEl0ZW0oKSk7CisgICAgUVNjb3BlZFBvaW50ZXI8UVF1aWNrV2ViVmlldz4gd2ViVmlldzIobmV3
IFFRdWlja1dlYlZpZXcoKSk7CisgICAgd2ViVmlldzItPnNldFBhcmVudEl0ZW0obV93aW5kb3ct
PnJvb3RJdGVtKCkpOworCisgICAgd2ViVmlldzEtPnNldFNpemUoUVNpemVGKDMwMCwgNDAwKSk7
CisgICAgd2ViVmlldzEtPmxvYWQoUVVybDo6ZnJvbUxvY2FsRmlsZShRTGF0aW4xU3RyaW5nKFRF
U1RTX1NPVVJDRV9ESVIgIi9odG1sL3Njcm9sbC5odG1sIikpKTsKKyAgICBRVkVSSUZZKHdhaXRG
b3JTaWduYWwod2ViVmlldzEuZGF0YSgpLCBTSUdOQUwobG9hZFN1Y2NlZWRlZCgpKSkpOworICAg
IHdlYlZpZXcxLT5zZXRWaXNpYmxlKHRydWUpOworCisgICAgd2ViVmlldzItPnNldFNpemUoUVNp
emVGKDMwMCwgNDAwKSk7CisgICAgd2ViVmlldzItPmxvYWQoUVVybDo6ZnJvbUxvY2FsRmlsZShR
TGF0aW4xU3RyaW5nKFRFU1RTX1NPVVJDRV9ESVIgIi9odG1sL2Jhc2ljX3BhZ2UuaHRtbCIpKSk7
CisgICAgUVZFUklGWSh3YWl0Rm9yU2lnbmFsKHdlYlZpZXcyLmRhdGEoKSwgU0lHTkFMKGxvYWRT
dWNjZWVkZWQoKSkpKTsKKyAgICB3ZWJWaWV3Mi0+c2V0VmlzaWJsZSh0cnVlKTsKKyAgICBRVGVz
dDo6cVdhaXQoMjAwKTsKK30KKwogdm9pZCB0c3RfUVF1aWNrV2ViVmlldzo6c2Nyb2xsUmVxdWVz
dCgpCiB7CiAgICAgd2ViVmlldygpLT5zZXRTaXplKFFTaXplRigzMDAsIDQwMCkpOwpkaWZmIC0t
Z2l0IGEvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL3F0L0xheWVyVHJlZUhvc3RQcm94eVF0LmNw
cCBiL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9xdC9MYXllclRyZWVIb3N0UHJveHlRdC5jcHAK
aW5kZXggYTFkZDI3Mi4uNjA3MzZiMSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvVUlQcm9j
ZXNzL3F0L0xheWVyVHJlZUhvc3RQcm94eVF0LmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0Mi9VSVBy
b2Nlc3MvcXQvTGF5ZXJUcmVlSG9zdFByb3h5UXQuY3BwCkBAIC00NjAsNyArNDYwLDggQEAgdm9p
ZCBMYXllclRyZWVIb3N0UHJveHk6OmVuc3VyZVJvb3RMYXllcigpCiAKICAgICAvLyBUaGUgcm9v
dCBsYXllciBzaG91bGQgbm90IGhhdmUgemVybyBzaXplLCBvciBpdCB3b3VsZCBiZSBvcHRpbWl6
ZWQgb3V0LgogICAgIG1fcm9vdExheWVyLT5zZXRTaXplKEZsb2F0U2l6ZSgxLjAsIDEuMCkpOwot
ICAgIG1fdGV4dHVyZU1hcHBlciA9IFRleHR1cmVNYXBwZXJHTDo6Y3JlYXRlKCk7CisgICAgaWYg
KCFtX3RleHR1cmVNYXBwZXIpCisgICAgICAgIG1fdGV4dHVyZU1hcHBlciA9IFRleHR1cmVNYXBw
ZXJHTDo6Y3JlYXRlKCk7CiAgICAgdG9UZXh0dXJlTWFwcGVyTm9kZShtX3Jvb3RMYXllci5nZXQo
KSktPnNldFRleHR1cmVNYXBwZXIobV90ZXh0dXJlTWFwcGVyLmdldCgpKTsKIH0KIApAQCAtNjIz
LDcgKzYyNCw5IEBAIHZvaWQgTGF5ZXJUcmVlSG9zdFByb3h5OjpwdXJnZUdMUmVzb3VyY2VzKCkK
IHsKICAgICBUZXh0dXJlTWFwcGVyTm9kZSogbm9kZSA9IHRvVGV4dHVyZU1hcHBlck5vZGUocm9v
dExheWVyKCkpOwogCi0gICAgbm9kZS0+cHVyZ2VOb2RlVGV4dHVyZXNSZWN1cnNpdmUoKTsKKyAg
ICBpZiAobm9kZSkKKyAgICAgICAgbm9kZS0+cHVyZ2VOb2RlVGV4dHVyZXNSZWN1cnNpdmUoKTsK
KwogICAgIG1fZGlyZWN0bHlDb21wb3NpdGVkSW1hZ2VzLmNsZWFyKCk7CiAKICAgICBtX3RleHR1
cmVNYXBwZXIuY2xlYXIoKTsK
</data>
<flag name="review"
          id="122554"
          type_id="1"
          status="+"
          setter="noam"
    />
    <flag name="commit-queue"
          id="122558"
          type_id="3"
          status="-"
          setter="webkit.review.bot"
    />
          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>121921</attachid>
            <date>2012-01-10 15:40:30 -0800</date>
            <delta_ts>2012-01-13 05:29:10 -0800</delta_ts>
            <desc>Fix changelog mess.</desc>
            <filename>GL_resources_dealloc_fix_06.diff</filename>
            <type>text/plain</type>
            <size>21297</size>
            <attacher name="Viatcheslav Ostapenko">ostap73</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJDb3JlL0No
YW5nZUxvZwppbmRleCA3ZjZlZGM5Li42ZmU4YTY5IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29y
ZS9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMzcg
QEAKKzIwMTItMDEtMTAgIFZpYXRjaGVzbGF2IE9zdGFwZW5rbyAgPG9zdGFwZW5rby52aWF0Y2hl
c2xhdkBub2tpYS5jb20+CisKKyAgICAgICAgW1F0XVtXSzJdUkVHUkVTU0lPTihyMTAyNDM1KTog
SXQgbWFkZSB0c3RfUVF1aWNrV2ViVmlldzo6c2hvdygpIGNyYXNoCisgICAgICAgIGh0dHBzOi8v
YnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD03NDE3NgorCisgICAgICAgIFJldmlld2Vk
IGJ5IE5vYW0gUm9zZW50aGFsLgorCisgICAgICAgIFJlcGxhY2VzIHN0YXRpYyBnbG9iYWwgR0wg
cmVzb3VyY2UgaG9sZGVyIHdpdGggaG9sZGVyIHNoYXJlZCBiZXR3ZWVuCisgICAgICAgIFRleHR1
cmVNYXBwZXJHTCBpbnN0YW5jZXMgY3JlYXRlZCBvbiB0aGUgc2FtZSBHTCBjb250ZXh0LiBBbHNv
IGFkZHMKKyAgICAgICAgZGVhbGxvY2F0aW9uIG9mIEdMIHJlc291cmNlcyB3aGVuIGxhc3QgVGV4
dHVyZU1hcHBlckdMIGluc3RhbmNlIG9uIHRoZSAKKyAgICAgICAgY3VycmVudCBHTCBjb250ZXh0
IGdldHMgZGVsZXRlZC4KKworICAgICAgICBUZXN0ZWQgYnkgbXVsdGlwbGVXZWJWaWV3V2luZG93
cyBhbmQgbXVsdGlwbGVXZWJWaWV3cyBRdCBXSzIgQVBJIHRlc3RzLgorCisgICAgICAgICogcGxh
dGZvcm0vZ3JhcGhpY3Mvb3BlbmdsL1RleHR1cmVNYXBwZXJHTC5jcHA6CisgICAgICAgIChXZWJD
b3JlOjpUZXh0dXJlTWFwcGVyR0xEYXRhOjpTaGFyZWRHTERhdGE6OmdldEN1cnJlbnRHTENvbnRl
eHQpOgorICAgICAgICAoV2ViQ29yZTo6VGV4dHVyZU1hcHBlckdMRGF0YTo6U2hhcmVkR0xEYXRh
OjpnbENvbnRleHREYXRhTWFwKToKKyAgICAgICAgKFdlYkNvcmU6OlRleHR1cmVNYXBwZXJHTERh
dGE6OlNoYXJlZEdMRGF0YTo6Y3VycmVudFNoYXJlZEdMRGF0YSk6CisgICAgICAgIChXZWJDb3Jl
OjpUZXh0dXJlTWFwcGVyR0xEYXRhOjpTaGFyZWRHTERhdGE6OlByb2dyYW1JbmZvOjpQcm9ncmFt
SW5mbyk6CisgICAgICAgIChXZWJDb3JlOjpUZXh0dXJlTWFwcGVyR0xEYXRhOjpTaGFyZWRHTERh
dGE6OmNyZWF0ZVNoYWRlclByb2dyYW0pOgorICAgICAgICAoV2ViQ29yZTo6VGV4dHVyZU1hcHBl
ckdMRGF0YTo6U2hhcmVkR0xEYXRhOjpkZWxldGVTaGFkZXJQcm9ncmFtKToKKyAgICAgICAgKFdl
YkNvcmU6OlRleHR1cmVNYXBwZXJHTERhdGE6OlNoYXJlZEdMRGF0YTo6U2hhcmVkR0xEYXRhKToK
KyAgICAgICAgKFdlYkNvcmU6OlRleHR1cmVNYXBwZXJHTERhdGE6OlNoYXJlZEdMRGF0YTo6flNo
YXJlZEdMRGF0YSk6CisgICAgICAgIChXZWJDb3JlOjpUZXh0dXJlTWFwcGVyR0xEYXRhOjpzaGFy
ZWRHTERhdGEpOgorICAgICAgICAoV2ViQ29yZTo6VGV4dHVyZU1hcHBlckdMRGF0YTo6VGV4dHVy
ZU1hcHBlckdMRGF0YSk6CisgICAgICAgIChXZWJDb3JlOjpUZXh0dXJlTWFwcGVyR0xEYXRhOjpT
aGFyZWRHTERhdGE6OmluaXRpYWxpemVTaGFkZXJzKToKKyAgICAgICAgKFdlYkNvcmU6OlRleHR1
cmVNYXBwZXJHTDo6YmVnaW5QYWludGluZyk6CisgICAgICAgIChXZWJDb3JlOjpUZXh0dXJlTWFw
cGVyR0w6OmRyYXdUZXh0dXJlKToKKyAgICAgICAgKFdlYkNvcmU6OkJpdG1hcFRleHR1cmVHTDo6
YmluZCk6CisgICAgICAgIChXZWJDb3JlOjpUZXh0dXJlTWFwcGVyR0w6OmJpbmRTdXJmYWNlKToK
KyAgICAgICAgKFdlYkNvcmU6OlRleHR1cmVNYXBwZXJHTDo6YmVnaW5DbGlwKToKKyAgICAgICAg
KFdlYkNvcmU6OlRleHR1cmVNYXBwZXJHTDo6ZW5kQ2xpcCk6CisgICAgICAgICogcGxhdGZvcm0v
Z3JhcGhpY3Mvb3BlbmdsL1RleHR1cmVNYXBwZXJHTC5oOgorCiAyMDEyLTAxLTA3ICBDaHJpcyBN
YXJyaW4gIDxjbWFycmluQGFwcGxlLmNvbT4KIAogICAgICAgICBGaXhlZCBBTkdMRSBidWlsZCBm
b3IgR05VIGFuZCBRVCBicm9rZW4gaW4gaHR0cHM6Ly90cmFjLndlYmtpdC5vcmcvY2hhbmdlc2V0
LzEwNDM2MwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3Mvb3Bl
bmdsL1RleHR1cmVNYXBwZXJHTC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGlj
cy9vcGVuZ2wvVGV4dHVyZU1hcHBlckdMLmNwcAppbmRleCAyOGVlMmJhLi4wZmY3MDIyIDEwMDY0
NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9vcGVuZ2wvVGV4dHVyZU1h
cHBlckdMLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9vcGVuZ2wv
VGV4dHVyZU1hcHBlckdMLmNwcApAQCAtNDEsNiArNDEsMTYgQEAKICNpbmNsdWRlIDxHTC9nbC5o
PgogI2VuZGlmCiAKKyNpZiBkZWZpbmVkKFRFWE1BUF9PUEVOR0xfRVNfMikKKyNpbmNsdWRlIDxF
R0wvZWdsLmg+CisjZWxpZiBPUyhXSU5ET1dTKQorI2luY2x1ZGUgPHdpbmRvd3MuaD4KKyNlbGlm
IE9TKE1BQ19PU19YKQorI2luY2x1ZGUgPEFHTC9hZ2wuaD4KKyNlbGlmIGRlZmluZWQoWFBfVU5J
WCkKKyNpbmNsdWRlIDxHTC9nbHguaD4KKyNlbmRpZgorCiAjaWYgIWRlZmluZWQoVEVYTUFQX09Q
RU5HTF9FU18yKSAmJiAhUExBVEZPUk0oUVQpCiBleHRlcm4gIkMiIHsKICAgICB2b2lkIGdsVW5p
Zm9ybTFmKEdMaW50LCBHTGZsb2F0KTsKQEAgLTEwMyw3ICsxMTMsNjAgQEAgaW5saW5lIHN0YXRp
YyB2b2lkIGRlYnVnR0xDb21tYW5kKGNvbnN0IGNoYXIqIGNvbW1hbmQsIGludCBsaW5lKQogI2Vu
ZGlmCiAKIHN0cnVjdCBUZXh0dXJlTWFwcGVyR0xEYXRhIHsKLSAgICBzdGF0aWMgc3RydWN0IEds
b2JhbEdMRGF0YSB7CisgICAgc3RydWN0IFNoYXJlZEdMRGF0YSA6IHB1YmxpYyBSZWZDb3VudGVk
PFNoYXJlZEdMRGF0YT4geworI2lmIGRlZmluZWQoVEVYTUFQX09QRU5HTF9FU18yKQorICAgICAg
ICB0eXBlZGVmIEVHTENvbnRleHQgR0xDb250ZXh0OworICAgICAgICBzdGF0aWMgR0xDb250ZXh0
IGdldEN1cnJlbnRHTENvbnRleHQoKQorICAgICAgICB7CisgICAgICAgICAgICByZXR1cm4gZWds
R2V0Q3VycmVudENvbnRleHQoKTsKKyAgICAgICAgfQorI2VsaWYgT1MoV0lORE9XUykKKyAgICAg
ICAgdHlwZWRlZiBIR0xSQyBHTENvbnRleHQ7CisgICAgICAgIHN0YXRpYyBHTENvbnRleHQgZ2V0
Q3VycmVudEdMQ29udGV4dCgpCisgICAgICAgIHsKKyAgICAgICAgICAgIHJldHVybiB3Z2xHZXRD
dXJyZW50Q29udGV4dCgpOworICAgICAgICB9CisjZWxpZiBPUyhNQUNfT1NfWCkKKyAgICAgICAg
dHlwZWRlZiBBR0xDb250ZXh0IEdMQ29udGV4dDsKKyAgICAgICAgc3RhdGljIEdMQ29udGV4dCBn
ZXRDdXJyZW50R0xDb250ZXh0KCkKKyAgICAgICAgeworICAgICAgICAgICAgcmV0dXJuIGFnbEdl
dEN1cnJlbnRDb250ZXh0KCk7CisgICAgICAgIH0KKyNlbGlmIGRlZmluZWQoWFBfVU5JWCkKKyAg
ICAgICAgdHlwZWRlZiBHTFhDb250ZXh0IEdMQ29udGV4dDsKKyAgICAgICAgc3RhdGljIEdMQ29u
dGV4dCBnZXRDdXJyZW50R0xDb250ZXh0KCkKKyAgICAgICAgeworICAgICAgICAgICAgcmV0dXJu
IGdsWEdldEN1cnJlbnRDb250ZXh0KCk7CisgICAgICAgIH0KKyNlbHNlCisgICAgICAgIC8vIERl
ZmF1bHQgaW1wbGVtZW50YXRpb24gZm9yIHVua25vd24gb3BlbmdsLgorICAgICAgICAvLyBSZXR1
cm5zIGFsd2F5cyBpbmNyZWFzaW5nIG51bWJlciBhbmQgZGlzYWJsZXMgR0wgY29udGV4dCBkYXRh
IHNoYXJpbmcuCisgICAgICAgIHR5cGVkZWYgdW5zaWduZWQgaW50IEdMQ29udGV4dDsKKyAgICAg
ICAgc3RhdGljIEdMQ29udGV4dCBnZXRDdXJyZW50R0xDb250ZXh0KCkKKyAgICAgICAgeworICAg
ICAgICAgICAgc3RhdGljIEdMQ29udGV4dCBkdW1teUNvbnRleHRDb3VudGVyID0gMDsKKyAgICAg
ICAgICAgIHJldHVybiArK2R1bW15Q29udGV4dENvdW50ZXI7CisgICAgICAgIH0KKworI2VuZGlm
CisKKyAgICAgICAgdHlwZWRlZiBIYXNoTWFwPEdMQ29udGV4dCwgU2hhcmVkR0xEYXRhKj4gR0xD
b250ZXh0RGF0YU1hcDsKKyAgICAgICAgc3RhdGljIEdMQ29udGV4dERhdGFNYXAmIGdsQ29udGV4
dERhdGFNYXAoKQorICAgICAgICB7CisgICAgICAgICAgICBzdGF0aWMgR0xDb250ZXh0RGF0YU1h
cCBtYXA7CisgICAgICAgICAgICByZXR1cm4gbWFwOworICAgICAgICB9CisKKyAgICAgICAgc3Rh
dGljIFBhc3NSZWZQdHI8U2hhcmVkR0xEYXRhPiBjdXJyZW50U2hhcmVkR0xEYXRhKCkKKyAgICAg
ICAgeworICAgICAgICAgICAgR0xDb250ZXh0IGN1cnJlbnRHTENvbmV4dCA9IGdldEN1cnJlbnRH
TENvbnRleHQoKTsKKyAgICAgICAgICAgIEdMQ29udGV4dERhdGFNYXA6Oml0ZXJhdG9yIGl0ID0g
Z2xDb250ZXh0RGF0YU1hcCgpLmZpbmQoY3VycmVudEdMQ29uZXh0KTsKKyAgICAgICAgICAgIGlm
IChpdCAhPSBnbENvbnRleHREYXRhTWFwKCkuZW5kKCkpCisgICAgICAgICAgICAgICAgcmV0dXJu
IGl0LT5zZWNvbmQ7CisKKyAgICAgICAgICAgIHJldHVybiBhZG9wdFJlZihuZXcgU2hhcmVkR0xE
YXRhKGdldEN1cnJlbnRHTENvbnRleHQoKSkpOworICAgICAgICB9CisKICAgICAgICAgZW51bSBT
aGFkZXJQcm9ncmFtSW5kZXggewogICAgICAgICAgICAgTm9Qcm9ncmFtID0gLTEsCiAgICAgICAg
ICAgICBTaW1wbGVQcm9ncmFtLApAQCAtMTI4LDYgKzE5MSw5IEBAIHN0cnVjdCBUZXh0dXJlTWFw
cGVyR0xEYXRhIHsKICAgICAgICAgICAgIEdMdWludCBpZDsKICAgICAgICAgICAgIEdMdWludCB2
ZXJ0ZXhBdHRyaWI7CiAgICAgICAgICAgICBHTGludCB2YXJzW1ZhcmlhYmxlQ291bnRdOworICAg
ICAgICAgICAgR0x1aW50IHZlcnRleFNoYWRlcjsKKyAgICAgICAgICAgIEdMdWludCBmcmFnbWVu
dFNoYWRlcjsKKyAgICAgICAgICAgIFByb2dyYW1JbmZvKCkgOiBpZCgwKSB7IH0KICAgICAgICAg
fTsKIAogICAgICAgICBHTGludCBnZXRVbmlmb3JtTG9jYXRpb24oU2hhZGVyUHJvZ3JhbUluZGV4
IHByb2csIFNoYWRlclZhcmlhYmxlSW5kZXggdmFyLCBjb25zdCBjaGFyKiBuYW1lKQpAQCAtMTQ5
LDE2ICsyMTUsNTMgQEAgc3RydWN0IFRleHR1cmVNYXBwZXJHTERhdGEgewogICAgICAgICAgICAg
R0xfQ01EKGdsTGlua1Byb2dyYW0ocHJvZ3JhbUlEKSkKICAgICAgICAgICAgIHByb2dyYW1zW2lu
ZGV4XS52ZXJ0ZXhBdHRyaWIgPSBnbEdldEF0dHJpYkxvY2F0aW9uKHByb2dyYW1JRCwgIkluVmVy
dGV4Iik7CiAgICAgICAgICAgICBwcm9ncmFtc1tpbmRleF0uaWQgPSBwcm9ncmFtSUQ7CisgICAg
ICAgICAgICBwcm9ncmFtc1tpbmRleF0udmVydGV4U2hhZGVyID0gdmVydGV4U2hhZGVyOworICAg
ICAgICAgICAgcHJvZ3JhbXNbaW5kZXhdLmZyYWdtZW50U2hhZGVyID0gZnJhZ21lbnRTaGFkZXI7
CisgICAgICAgIH0KKworICAgICAgICB2b2lkIGRlbGV0ZVNoYWRlclByb2dyYW0oU2hhZGVyUHJv
Z3JhbUluZGV4IGluZGV4KQorICAgICAgICB7CisgICAgICAgICAgICBQcm9ncmFtSW5mbyYgcHJv
Z3JhbUluZm8gPSBwcm9ncmFtc1tpbmRleF07CisgICAgICAgICAgICBHTHVpbnQgcHJvZ3JhbUlE
ID0gcHJvZ3JhbUluZm8uaWQ7CisgICAgICAgICAgICBpZiAoIXByb2dyYW1JRCkKKyAgICAgICAg
ICAgICAgICByZXR1cm47CisKKyAgICAgICAgICAgIEdMX0NNRChnbERldGFjaFNoYWRlcihwcm9n
cmFtSUQsIHByb2dyYW1JbmZvLnZlcnRleFNoYWRlcikpCisgICAgICAgICAgICBHTF9DTUQoZ2xE
ZWxldGVTaGFkZXIocHJvZ3JhbUluZm8udmVydGV4U2hhZGVyKSkKKyAgICAgICAgICAgIEdMX0NN
RChnbERldGFjaFNoYWRlcihwcm9ncmFtSUQsIHByb2dyYW1JbmZvLmZyYWdtZW50U2hhZGVyKSkK
KyAgICAgICAgICAgIEdMX0NNRChnbERlbGV0ZVNoYWRlcihwcm9ncmFtSW5mby5mcmFnbWVudFNo
YWRlcikpCisgICAgICAgICAgICBHTF9DTUQoZ2xEZWxldGVQcm9ncmFtKHByb2dyYW1JRCkpCiAg
ICAgICAgIH0KIAorICAgICAgICB2b2lkIGluaXRpYWxpemVTaGFkZXJzKCk7CisKICAgICAgICAg
UHJvZ3JhbUluZm8gcHJvZ3JhbXNbUHJvZ3JhbUNvdW50XTsKIAogICAgICAgICBpbnQgc3RlbmNp
bEluZGV4OwogCi0gICAgICAgIEdsb2JhbEdMRGF0YSgpCi0gICAgICAgICAgICA6IHN0ZW5jaWxJ
bmRleCgxKQotICAgICAgICB7IH0KLSAgICB9IGdsb2JhbEdMRGF0YTsKKyAgICAgICAgU2hhcmVk
R0xEYXRhKEdMQ29udGV4dCBnbENvbnRleHQpIDogc3RlbmNpbEluZGV4KDEpCisgICAgICAgIHsK
KyAgICAgICAgICAgIGdsQ29udGV4dERhdGFNYXAoKS5hZGQoZ2xDb250ZXh0LCB0aGlzKTsKKyAg
ICAgICAgICAgIGluaXRpYWxpemVTaGFkZXJzKCk7CisgICAgICAgIH0KKworICAgICAgICB+U2hh
cmVkR0xEYXRhKCkKKyAgICAgICAgeworICAgICAgICAgICAgZm9yIChpbnQgaSA9IFNpbXBsZVBy
b2dyYW07IGkgPCBQcm9ncmFtQ291bnQ7ICsraSkKKyAgICAgICAgICAgICAgICBkZWxldGVTaGFk
ZXJQcm9ncmFtKFNoYWRlclByb2dyYW1JbmRleChpKSk7CisKKyAgICAgICAgICAgIEdMQ29udGV4
dERhdGFNYXA6OmNvbnN0X2l0ZXJhdG9yIGVuZCA9IGdsQ29udGV4dERhdGFNYXAoKS5lbmQoKTsK
KyAgICAgICAgICAgIEdMQ29udGV4dERhdGFNYXA6Oml0ZXJhdG9yIGl0OworICAgICAgICAgICAg
Zm9yIChpdCA9IGdsQ29udGV4dERhdGFNYXAoKS5iZWdpbigpOyBpdCAhPSBlbmQ7ICsraXQpIHsK
KyAgICAgICAgICAgICAgICBpZiAoaXQtPnNlY29uZCA9PSB0aGlzKQorICAgICAgICAgICAgICAg
ICAgICBicmVhazsKKyAgICAgICAgICAgIH0KKworICAgICAgICAgICAgQVNTRVJUKGl0ICE9IGVu
ZCk7CisgICAgICAgICAgICBnbENvbnRleHREYXRhTWFwKCkucmVtb3ZlKGl0KTsKKyAgICAgICAg
fQorCisgICAgfTsKIAogICAgIHN0cnVjdCBEaXJlY3RseUNvbXBvc2l0ZWRJbWFnZVJlcG9zaXRv
cnkgewogICAgICAgICBzdHJ1Y3QgRW50cnkgewpAQCAtMjExLDE3ICszMTQsMjIgQEAgc3RydWN0
IFRleHR1cmVNYXBwZXJHTERhdGEgewogICAgICAgICB9CiAgICAgfSBkaXJlY3RseUNvbXBvc2l0
ZWRJbWFnZXM7CiAKKyAgICBTaGFyZWRHTERhdGEmIHNoYXJlZEdMRGF0YSgpIGNvbnN0CisgICAg
eworICAgICAgICByZXR1cm4gKihtX3NoYXJlZEdMRGF0YS5nZXQoKSk7CisgICAgfQorCiAgICAg
VGV4dHVyZU1hcHBlckdMRGF0YSgpCi0gICAgICAgIDogY3VycmVudFByb2dyYW0oVGV4dHVyZU1h
cHBlckdMRGF0YTo6R2xvYmFsR0xEYXRhOjpOb1Byb2dyYW0pCisgICAgICAgIDogY3VycmVudFBy
b2dyYW0oU2hhcmVkR0xEYXRhOjpOb1Byb2dyYW0pCisgICAgICAgICwgbV9zaGFyZWRHTERhdGEo
VGV4dHVyZU1hcHBlckdMRGF0YTo6U2hhcmVkR0xEYXRhOjpjdXJyZW50U2hhcmVkR0xEYXRhKCkp
CiAgICAgeyB9CiAKICAgICBUcmFuc2Zvcm1hdGlvbk1hdHJpeCBwcm9qZWN0aW9uTWF0cml4Owog
ICAgIGludCBjdXJyZW50UHJvZ3JhbTsKICAgICBpbnQgcHJldmlvdXNQcm9ncmFtOworICAgIFJl
ZlB0cjxTaGFyZWRHTERhdGE+IG1fc2hhcmVkR0xEYXRhOwogfTsKIAotVGV4dHVyZU1hcHBlckdM
RGF0YTo6R2xvYmFsR0xEYXRhIFRleHR1cmVNYXBwZXJHTERhdGE6Omdsb2JhbEdMRGF0YTsKLQog
Y2xhc3MgQml0bWFwVGV4dHVyZUdMIDogcHVibGljIEJpdG1hcFRleHR1cmUgewogcHVibGljOgog
ICAgIHZpcnR1YWwgdm9pZCBkZXN0cm95KCk7CkBAIC0yODksMTEgKzM5NywxMSBAQCBwcml2YXRl
OgogfTsKIAogI2RlZmluZSBURVhNQVBfR0VUX1NIQURFUl9WQVJfTE9DQVRJT04ocHJvZywgdmFy
KSBcCi0gICAgaWYgKFRleHR1cmVNYXBwZXJHTERhdGE6Omdsb2JhbEdMRGF0YS5nZXRVbmlmb3Jt
TG9jYXRpb24oVGV4dHVyZU1hcHBlckdMRGF0YTo6Z2xvYmFsR0xEYXRhLnByb2cjI1Byb2dyYW0s
IFRleHR1cmVNYXBwZXJHTERhdGE6Omdsb2JhbEdMRGF0YS52YXIjI1ZhcmlhYmxlLCAjdmFyKSA8
IDApIFwKKyAgICBpZiAoZ2V0VW5pZm9ybUxvY2F0aW9uKHByb2cjI1Byb2dyYW0sIHZhciMjVmFy
aWFibGUsICN2YXIpIDwgMCkgXAogICAgICAgICAgICAgTE9HX0VSUk9SKCJDb3VsZG4ndCBmaW5k
IHZhcmlhYmxlICIjdmFyIiBpbiBwcm9ncmFtICIjcHJvZyJcbiIpOwogCiAjZGVmaW5lIFRFWE1B
UF9CVUlMRF9TSEFERVIocHJvZ3JhbSkgXAotICAgIFRleHR1cmVNYXBwZXJHTERhdGE6Omdsb2Jh
bEdMRGF0YS5jcmVhdGVTaGFkZXJQcm9ncmFtKHZlcnRleFNoYWRlclNvdXJjZSMjcHJvZ3JhbSwg
ZnJhZ21lbnRTaGFkZXJTb3VyY2UjI3Byb2dyYW0sIFRleHR1cmVNYXBwZXJHTERhdGE6Omdsb2Jh
bEdMRGF0YS5wcm9ncmFtIyNQcm9ncmFtKTsKKyAgICBjcmVhdGVTaGFkZXJQcm9ncmFtKHZlcnRl
eFNoYWRlclNvdXJjZSMjcHJvZ3JhbSwgZnJhZ21lbnRTaGFkZXJTb3VyY2UjI3Byb2dyYW0sIHBy
b2dyYW0jI1Byb2dyYW0pOwogCiBUZXh0dXJlTWFwcGVyR0w6OlRleHR1cmVNYXBwZXJHTCgpCiAg
ICAgOiBtX2RhdGEobmV3IFRleHR1cmVNYXBwZXJHTERhdGEpCkBAIC0zMDEsMTIgKzQwOSw4IEBA
IFRleHR1cmVNYXBwZXJHTDo6VGV4dHVyZU1hcHBlckdMKCkKIHsKIH0KIAotdm9pZCBUZXh0dXJl
TWFwcGVyR0w6OmluaXRpYWxpemVTaGFkZXJzKCkKK3ZvaWQgVGV4dHVyZU1hcHBlckdMRGF0YTo6
U2hhcmVkR0xEYXRhOjppbml0aWFsaXplU2hhZGVycygpCiB7Ci0gICAgc3RhdGljIGJvb2wgc2hh
ZGVyc0NvbXBpbGVkID0gZmFsc2U7Ci0gICAgaWYgKHNoYWRlcnNDb21waWxlZCkKLSAgICAgICAg
cmV0dXJuOwotICAgIHNoYWRlcnNDb21waWxlZCA9IHRydWU7CiAjaWZuZGVmIFRFWE1BUF9PUEVO
R0xfRVNfMgogI2RlZmluZSBPRVMyX1BSRUNJU0lPTl9ERUZJTklUSU9OUyBcCiAgICAgIiNkZWZp
bmUgbG93cFxuI2RlZmluZSBoaWdocFxuIgpAQCAtMzIyLDYgKzQyNiw5IEBAIHZvaWQgVGV4dHVy
ZU1hcHBlckdMOjppbml0aWFsaXplU2hhZGVycygpCiAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgIE9FUzJfRlJBR01FTlRfU0hBREVSX0RFRkFVTFRfUFJFQ0lTSU9OXAogICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAjc3JjCiAKKyAgICBpZiAoIWluaXRpYWxpemVPcGVuR0xT
aGltcygpKQorICAgICAgICByZXR1cm47CisKICAgICBjb25zdCBjaGFyKiBmcmFnbWVudFNoYWRl
clNvdXJjZU9wYWNpdHlBbmRNYXNrID0KICAgICAgICAgRlJBR01FTlRfU0hBREVSKAogICAgICAg
ICAgICAgdW5pZm9ybSBzYW1wbGVyMkQgU291cmNlVGV4dHVyZSwgTWFza1RleHR1cmU7CkBAIC00
MjYsNyArNTMzLDYgQEAgdm9pZCBUZXh0dXJlTWFwcGVyR0w6OmJlZ2luUGFpbnRpbmcoKQogICAg
IGdsQ2xlYXIoR0xfU1RFTkNJTF9CVUZGRVJfQklUKTsKICAgICBiaW5kU3VyZmFjZSgwKTsKICNl
bmRpZgotICAgIGluaXRpYWxpemVTaGFkZXJzKCk7CiB9CiAKIHZvaWQgVGV4dHVyZU1hcHBlckdM
OjplbmRQYWludGluZygpCkBAIC00NTQsMTMgKzU2MCwxMyBAQCB2b2lkIFRleHR1cmVNYXBwZXJH
TDo6ZHJhd1RleHR1cmUoY29uc3QgQml0bWFwVGV4dHVyZSYgdGV4dHVyZSwgY29uc3QgRmxvYXRS
ZWN0JgogCiB2b2lkIFRleHR1cmVNYXBwZXJHTDo6ZHJhd1RleHR1cmUodWludDMyX3QgdGV4dHVy
ZSwgYm9vbCBvcGFxdWUsIGNvbnN0IEZsb2F0U2l6ZSYgcmVsYXRpdmVTaXplLCBjb25zdCBGbG9h
dFJlY3QmIHRhcmdldFJlY3QsIGNvbnN0IFRyYW5zZm9ybWF0aW9uTWF0cml4JiBtb2RlbFZpZXdN
YXRyaXgsIGZsb2F0IG9wYWNpdHksIGNvbnN0IEJpdG1hcFRleHR1cmUqIG1hc2tUZXh0dXJlLCBi
b29sIGZsaXApCiB7Ci0gICAgVGV4dHVyZU1hcHBlckdMRGF0YTo6R2xvYmFsR0xEYXRhOjpTaGFk
ZXJQcm9ncmFtSW5kZXggcHJvZ3JhbTsKKyAgICBUZXh0dXJlTWFwcGVyR0xEYXRhOjpTaGFyZWRH
TERhdGE6OlNoYWRlclByb2dyYW1JbmRleCBwcm9ncmFtOwogICAgIGlmIChtYXNrVGV4dHVyZSkK
LSAgICAgICAgcHJvZ3JhbSA9IFRleHR1cmVNYXBwZXJHTERhdGE6Okdsb2JhbEdMRGF0YTo6T3Bh
Y2l0eUFuZE1hc2tQcm9ncmFtOworICAgICAgICBwcm9ncmFtID0gVGV4dHVyZU1hcHBlckdMRGF0
YTo6U2hhcmVkR0xEYXRhOjpPcGFjaXR5QW5kTWFza1Byb2dyYW07CiAgICAgZWxzZQotICAgICAg
ICBwcm9ncmFtID0gVGV4dHVyZU1hcHBlckdMRGF0YTo6R2xvYmFsR0xEYXRhOjpTaW1wbGVQcm9n
cmFtOworICAgICAgICBwcm9ncmFtID0gVGV4dHVyZU1hcHBlckdMRGF0YTo6U2hhcmVkR0xEYXRh
OjpTaW1wbGVQcm9ncmFtOwogCi0gICAgY29uc3QgVGV4dHVyZU1hcHBlckdMRGF0YTo6R2xvYmFs
R0xEYXRhOjpQcm9ncmFtSW5mbyYgcHJvZ3JhbUluZm8gPSBkYXRhKCkuZ2xvYmFsR0xEYXRhLnBy
b2dyYW1zW3Byb2dyYW1dOworICAgIGNvbnN0IFRleHR1cmVNYXBwZXJHTERhdGE6OlNoYXJlZEdM
RGF0YTo6UHJvZ3JhbUluZm8mIHByb2dyYW1JbmZvID0gZGF0YSgpLnNoYXJlZEdMRGF0YSgpLnBy
b2dyYW1zW3Byb2dyYW1dOwogICAgIEdMX0NNRChnbFVzZVByb2dyYW0ocHJvZ3JhbUluZm8uaWQp
KQogICAgIGRhdGEoKS5jdXJyZW50UHJvZ3JhbSA9IHByb2dyYW07CiAgICAgR0xfQ01EKGdsRW5h
YmxlVmVydGV4QXR0cmliQXJyYXkocHJvZ3JhbUluZm8udmVydGV4QXR0cmliKSkKQEAgLTQ4Nywx
MCArNTkzLDEwIEBAIHZvaWQgVGV4dHVyZU1hcHBlckdMOjpkcmF3VGV4dHVyZSh1aW50MzJfdCB0
ZXh0dXJlLCBib29sIG9wYXF1ZSwgY29uc3QgRmxvYXRTaXplCiAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgMCwgMCwgMSwgMCwKICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAwLCBmbGlwID8gcmVsYXRpdmVTaXplLmhlaWdodCgpIDogMCwgMCwgMX07CiAK
LSAgICBHTF9DTUQoZ2xVbmlmb3JtTWF0cml4NGZ2KHByb2dyYW1JbmZvLnZhcnNbVGV4dHVyZU1h
cHBlckdMRGF0YTo6R2xvYmFsR0xEYXRhOjpJbk1hdHJpeFZhcmlhYmxlXSwgMSwgR0xfRkFMU0Us
IG00KSkKLSAgICBHTF9DTUQoZ2xVbmlmb3JtTWF0cml4NGZ2KHByb2dyYW1JbmZvLnZhcnNbVGV4
dHVyZU1hcHBlckdMRGF0YTo6R2xvYmFsR0xEYXRhOjpJblNvdXJjZU1hdHJpeFZhcmlhYmxlXSwg
MSwgR0xfRkFMU0UsIG00c3JjKSkKLSAgICBHTF9DTUQoZ2xVbmlmb3JtMWkocHJvZ3JhbUluZm8u
dmFyc1tUZXh0dXJlTWFwcGVyR0xEYXRhOjpHbG9iYWxHTERhdGE6OlNvdXJjZVRleHR1cmVWYXJp
YWJsZV0sIDApKQotICAgIEdMX0NNRChnbFVuaWZvcm0xZihwcm9ncmFtSW5mby52YXJzW1RleHR1
cmVNYXBwZXJHTERhdGE6Okdsb2JhbEdMRGF0YTo6T3BhY2l0eVZhcmlhYmxlXSwgb3BhY2l0eSkp
CisgICAgR0xfQ01EKGdsVW5pZm9ybU1hdHJpeDRmdihwcm9ncmFtSW5mby52YXJzW1RleHR1cmVN
YXBwZXJHTERhdGE6OlNoYXJlZEdMRGF0YTo6SW5NYXRyaXhWYXJpYWJsZV0sIDEsIEdMX0ZBTFNF
LCBtNCkpCisgICAgR0xfQ01EKGdsVW5pZm9ybU1hdHJpeDRmdihwcm9ncmFtSW5mby52YXJzW1Rl
eHR1cmVNYXBwZXJHTERhdGE6OlNoYXJlZEdMRGF0YTo6SW5Tb3VyY2VNYXRyaXhWYXJpYWJsZV0s
IDEsIEdMX0ZBTFNFLCBtNHNyYykpCisgICAgR0xfQ01EKGdsVW5pZm9ybTFpKHByb2dyYW1JbmZv
LnZhcnNbVGV4dHVyZU1hcHBlckdMRGF0YTo6U2hhcmVkR0xEYXRhOjpTb3VyY2VUZXh0dXJlVmFy
aWFibGVdLCAwKSkKKyAgICBHTF9DTUQoZ2xVbmlmb3JtMWYocHJvZ3JhbUluZm8udmFyc1tUZXh0
dXJlTWFwcGVyR0xEYXRhOjpTaGFyZWRHTERhdGE6Ok9wYWNpdHlWYXJpYWJsZV0sIG9wYWNpdHkp
KQogCiAgICAgaWYgKG1hc2tUZXh0dXJlICYmIG1hc2tUZXh0dXJlLT5pc1ZhbGlkKCkpIHsKICAg
ICAgICAgY29uc3QgQml0bWFwVGV4dHVyZUdMKiBtYXNrVGV4dHVyZUdMID0gc3RhdGljX2Nhc3Q8
Y29uc3QgQml0bWFwVGV4dHVyZUdMKj4obWFza1RleHR1cmUpOwpAQCAtNTAwLDggKzYwNiw4IEBA
IHZvaWQgVGV4dHVyZU1hcHBlckdMOjpkcmF3VGV4dHVyZSh1aW50MzJfdCB0ZXh0dXJlLCBib29s
IG9wYXF1ZSwgY29uc3QgRmxvYXRTaXplCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgIDAsIG1hc2tUZXh0dXJlR0wtPnJlbGF0aXZlU2l6ZSgpLmhlaWdodCgpLCAwLCAw
LAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAwLCAwLCAxLCAwLAog
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAwLCAwLCAwLCAxfTsKLSAg
ICAgICAgR0xfQ01EKGdsVW5pZm9ybU1hdHJpeDRmdihwcm9ncmFtSW5mby52YXJzW1RleHR1cmVN
YXBwZXJHTERhdGE6Okdsb2JhbEdMRGF0YTo6SW5NYXNrTWF0cml4VmFyaWFibGVdLCAxLCBHTF9G
QUxTRSwgbTRtYXNrKSk7Ci0gICAgICAgIEdMX0NNRChnbFVuaWZvcm0xaShwcm9ncmFtSW5mby52
YXJzW1RleHR1cmVNYXBwZXJHTERhdGE6Okdsb2JhbEdMRGF0YTo6TWFza1RleHR1cmVWYXJpYWJs
ZV0sIDEpKQorICAgICAgICBHTF9DTUQoZ2xVbmlmb3JtTWF0cml4NGZ2KHByb2dyYW1JbmZvLnZh
cnNbVGV4dHVyZU1hcHBlckdMRGF0YTo6U2hhcmVkR0xEYXRhOjpJbk1hc2tNYXRyaXhWYXJpYWJs
ZV0sIDEsIEdMX0ZBTFNFLCBtNG1hc2spKTsKKyAgICAgICAgR0xfQ01EKGdsVW5pZm9ybTFpKHBy
b2dyYW1JbmZvLnZhcnNbVGV4dHVyZU1hcHBlckdMRGF0YTo6U2hhcmVkR0xEYXRhOjpNYXNrVGV4
dHVyZVZhcmlhYmxlXSwgMSkpCiAgICAgICAgIEdMX0NNRChnbEFjdGl2ZVRleHR1cmUoR0xfVEVY
VFVSRTApKQogICAgIH0KIApAQCAtNjcwLDcgKzc3Niw3IEBAIHN0YXRpYyBpbmxpbmUgVHJhbnNm
b3JtYXRpb25NYXRyaXggY3JlYXRlUHJvamVjdGlvbk1hdHJpeChjb25zdCBJbnRTaXplJiBzaXpl
LCBiCiAKIHZvaWQgQml0bWFwVGV4dHVyZUdMOjpiaW5kKCkKIHsKLSAgICBpbnQmIHN0ZW5jaWxJ
bmRleCA9IFRleHR1cmVNYXBwZXJHTERhdGE6Omdsb2JhbEdMRGF0YS5zdGVuY2lsSW5kZXg7Cisg
ICAgaW50JiBzdGVuY2lsSW5kZXggPSBtX3RleHR1cmVNYXBwZXItPmRhdGEoKS5zaGFyZWRHTERh
dGEoKS5zdGVuY2lsSW5kZXg7CiAgICAgaWYgKG1fc3VyZmFjZU5lZWRzUmVzZXQgfHwgIW1fZmJv
KSB7CiAgICAgICAgIGlmICghbV9mYm8pCiAgICAgICAgICAgICBHTF9DTUQoZ2xHZW5GcmFtZWJ1
ZmZlcnMoMSwgJm1fZmJvKSkKQEAgLTc0Myw3ICs4NDksNyBAQCB2b2lkIFRleHR1cmVNYXBwZXJH
TDo6YmluZFN1cmZhY2UoQml0bWFwVGV4dHVyZSAqc3VyZmFjZVBvaW50ZXIpCiAgICAgaWYgKCFz
dXJmYWNlKSB7CiAgICAgICAgIEdMX0NNRChnbEJpbmRGcmFtZWJ1ZmZlcihHTF9GUkFNRUJVRkZF
UiwgMCkpCiAgICAgICAgIGRhdGEoKS5wcm9qZWN0aW9uTWF0cml4ID0gY3JlYXRlUHJvamVjdGlv
bk1hdHJpeCh2aWV3cG9ydFNpemUoKSwgdHJ1ZSkubXVsdGlwbHkodHJhbnNmb3JtKCkpOwotICAg
ICAgICBHTF9DTUQoZ2xTdGVuY2lsRnVuYyhkYXRhKCkuZ2xvYmFsR0xEYXRhLnN0ZW5jaWxJbmRl
eCA+IDEgPyBHTF9FUVVBTCA6IEdMX0FMV0FZUywgZGF0YSgpLmdsb2JhbEdMRGF0YS5zdGVuY2ls
SW5kZXggLSAxLCBkYXRhKCkuZ2xvYmFsR0xEYXRhLnN0ZW5jaWxJbmRleCAtIDEpKQorICAgICAg
ICBHTF9DTUQoZ2xTdGVuY2lsRnVuYyhkYXRhKCkuc2hhcmVkR0xEYXRhKCkuc3RlbmNpbEluZGV4
ID4gMSA/IEdMX0VRVUFMIDogR0xfQUxXQVlTLCBkYXRhKCkuc2hhcmVkR0xEYXRhKCkuc3RlbmNp
bEluZGV4IC0gMSwgZGF0YSgpLnNoYXJlZEdMRGF0YSgpLnN0ZW5jaWxJbmRleCAtIDEpKQogICAg
ICAgICBHTF9DTUQoZ2xTdGVuY2lsT3AoR0xfS0VFUCwgR0xfS0VFUCwgR0xfS0VFUCkpCiAgICAg
ICAgIEdMX0NNRChnbFZpZXdwb3J0KDAsIDAsIHZpZXdwb3J0U2l6ZSgpLndpZHRoKCksIHZpZXdw
b3J0U2l6ZSgpLmhlaWdodCgpKSkKICAgICAgICAgcmV0dXJuOwpAQCAtNzU0LDggKzg2MCw4IEBA
IHZvaWQgVGV4dHVyZU1hcHBlckdMOjpiaW5kU3VyZmFjZShCaXRtYXBUZXh0dXJlICpzdXJmYWNl
UG9pbnRlcikKIAogdm9pZCBUZXh0dXJlTWFwcGVyR0w6OmJlZ2luQ2xpcChjb25zdCBUcmFuc2Zv
cm1hdGlvbk1hdHJpeCYgbW9kZWxWaWV3TWF0cml4LCBjb25zdCBGbG9hdFJlY3QmIHRhcmdldFJl
Y3QpCiB7Ci0gICAgVGV4dHVyZU1hcHBlckdMRGF0YTo6R2xvYmFsR0xEYXRhOjpTaGFkZXJQcm9n
cmFtSW5kZXggcHJvZ3JhbSA9IFRleHR1cmVNYXBwZXJHTERhdGE6Okdsb2JhbEdMRGF0YTo6Q2xp
cFByb2dyYW07Ci0gICAgY29uc3QgVGV4dHVyZU1hcHBlckdMRGF0YTo6R2xvYmFsR0xEYXRhOjpQ
cm9ncmFtSW5mbyYgcHJvZ3JhbUluZm8gPSBkYXRhKCkuZ2xvYmFsR0xEYXRhLnByb2dyYW1zW3By
b2dyYW1dOworICAgIFRleHR1cmVNYXBwZXJHTERhdGE6OlNoYXJlZEdMRGF0YTo6U2hhZGVyUHJv
Z3JhbUluZGV4IHByb2dyYW0gPSBUZXh0dXJlTWFwcGVyR0xEYXRhOjpTaGFyZWRHTERhdGE6OkNs
aXBQcm9ncmFtOworICAgIGNvbnN0IFRleHR1cmVNYXBwZXJHTERhdGE6OlNoYXJlZEdMRGF0YTo6
UHJvZ3JhbUluZm8mIHByb2dyYW1JbmZvID0gZGF0YSgpLnNoYXJlZEdMRGF0YSgpLnByb2dyYW1z
W3Byb2dyYW1dOwogICAgIEdMX0NNRChnbFVzZVByb2dyYW0ocHJvZ3JhbUluZm8uaWQpKQogICAg
IEdMX0NNRChnbEVuYWJsZVZlcnRleEF0dHJpYkFycmF5KHByb2dyYW1JbmZvLnZlcnRleEF0dHJp
YikpCiAgICAgY29uc3QgR0xmbG9hdCB1bml0UmVjdFtdID0gezAsIDAsIDEsIDAsIDEsIDEsIDAs
IDF9OwpAQCAtNzc1LDkgKzg4MSw5IEBAIHZvaWQgVGV4dHVyZU1hcHBlckdMOjpiZWdpbkNsaXAo
Y29uc3QgVHJhbnNmb3JtYXRpb25NYXRyaXgmIG1vZGVsVmlld01hdHJpeCwgY29uCiAgICAgICAg
IG1hdHJpeC5tNDEoKSwgbWF0cml4Lm00MigpLCBtYXRyaXgubTQzKCksIG1hdHJpeC5tNDQoKQog
ICAgIH07CiAKLSAgICBpbnQmIHN0ZW5jaWxJbmRleCA9IGRhdGEoKS5nbG9iYWxHTERhdGEuc3Rl
bmNpbEluZGV4OworICAgIGludCYgc3RlbmNpbEluZGV4ID0gZGF0YSgpLnNoYXJlZEdMRGF0YSgp
LnN0ZW5jaWxJbmRleDsKIAotICAgIEdMX0NNRChnbFVuaWZvcm1NYXRyaXg0ZnYocHJvZ3JhbUlu
Zm8udmFyc1tUZXh0dXJlTWFwcGVyR0xEYXRhOjpHbG9iYWxHTERhdGE6OkluTWF0cml4VmFyaWFi
bGVdLCAxLCBHTF9GQUxTRSwgbTQpKQorICAgIEdMX0NNRChnbFVuaWZvcm1NYXRyaXg0ZnYocHJv
Z3JhbUluZm8udmFyc1tUZXh0dXJlTWFwcGVyR0xEYXRhOjpTaGFyZWRHTERhdGE6OkluTWF0cml4
VmFyaWFibGVdLCAxLCBHTF9GQUxTRSwgbTQpKQogICAgIEdMX0NNRChnbEVuYWJsZShHTF9TVEVO
Q0lMX1RFU1QpKQogICAgIEdMX0NNRChnbFN0ZW5jaWxGdW5jKEdMX05FVkVSLCBzdGVuY2lsSW5k
ZXgsIHN0ZW5jaWxJbmRleCkpCiAgICAgR0xfQ01EKGdsU3RlbmNpbE9wKEdMX1JFUExBQ0UsIEdM
X1JFUExBQ0UsIEdMX1JFUExBQ0UpKQpAQCAtNzkxLDggKzg5Nyw4IEBAIHZvaWQgVGV4dHVyZU1h
cHBlckdMOjpiZWdpbkNsaXAoY29uc3QgVHJhbnNmb3JtYXRpb25NYXRyaXgmIG1vZGVsVmlld01h
dHJpeCwgY29uCiAKIHZvaWQgVGV4dHVyZU1hcHBlckdMOjplbmRDbGlwKCkKIHsKLSAgICBkYXRh
KCkuZ2xvYmFsR0xEYXRhLnN0ZW5jaWxJbmRleCA+Pj0gMTsKLSAgICBnbFN0ZW5jaWxGdW5jKGRh
dGEoKS5nbG9iYWxHTERhdGEuc3RlbmNpbEluZGV4ID4gMSA/IEdMX0VRVUFMIDogR0xfQUxXQVlT
LCBkYXRhKCkuZ2xvYmFsR0xEYXRhLnN0ZW5jaWxJbmRleCAtIDEsIGRhdGEoKS5nbG9iYWxHTERh
dGEuc3RlbmNpbEluZGV4IC0gMSk7CisgICAgZGF0YSgpLnNoYXJlZEdMRGF0YSgpLnN0ZW5jaWxJ
bmRleCA+Pj0gMTsKKyAgICBnbFN0ZW5jaWxGdW5jKGRhdGEoKS5zaGFyZWRHTERhdGEoKS5zdGVu
Y2lsSW5kZXggPiAxID8gR0xfRVFVQUwgOiBHTF9BTFdBWVMsIGRhdGEoKS5zaGFyZWRHTERhdGEo
KS5zdGVuY2lsSW5kZXggLSAxLCBkYXRhKCkuc2hhcmVkR0xEYXRhKCkuc3RlbmNpbEluZGV4IC0g
MSk7CiB9CiAKIFBhc3NSZWZQdHI8Qml0bWFwVGV4dHVyZT4gVGV4dHVyZU1hcHBlckdMOjpjcmVh
dGVUZXh0dXJlKCkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNz
L29wZW5nbC9UZXh0dXJlTWFwcGVyR0wuaCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBo
aWNzL29wZW5nbC9UZXh0dXJlTWFwcGVyR0wuaAppbmRleCA2ZjRjMjlkLi5kZDJlMWE3IDEwMDY0
NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9vcGVuZ2wvVGV4dHVyZU1h
cHBlckdMLmgKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3Mvb3BlbmdsL1Rl
eHR1cmVNYXBwZXJHTC5oCkBAIC01NSw3ICs1NSw2IEBAIHB1YmxpYzoKICAgICB2aXJ0dWFsIGJv
b2wgaXNPcGVuR0xCYWNrZWQoKSBjb25zdCB7IHJldHVybiB0cnVlOyB9CiAKIHByaXZhdGU6Ci0g
ICAgdm9pZCBpbml0aWFsaXplU2hhZGVycygpOwogICAgIGlubGluZSBUZXh0dXJlTWFwcGVyR0xE
YXRhJiBkYXRhKCkgeyByZXR1cm4gKm1fZGF0YTsgfQogICAgIFRleHR1cmVNYXBwZXJHTERhdGEq
IG1fZGF0YTsKICAgICBHcmFwaGljc0NvbnRleHQqIG1fY29udGV4dDsKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJLaXQyL0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJLaXQyL0NoYW5nZUxvZwppbmRleCAw
NDczMGY0Li40NTZkOTQwIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9DaGFuZ2VMb2cKKysr
IGIvU291cmNlL1dlYktpdDIvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMjEgQEAKKzIwMTItMDEtMTAg
IFZpYXRjaGVzbGF2IE9zdGFwZW5rbyAgPG9zdGFwZW5rby52aWF0Y2hlc2xhdkBub2tpYS5jb20+
CisKKyAgICAgICAgW1F0XVtXSzJdUkVHUkVTU0lPTihyMTAyNDM1KTogSXQgbWFkZSB0c3RfUVF1
aWNrV2ViVmlldzo6c2hvdygpIGNyYXNoCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3Jn
L3Nob3dfYnVnLmNnaT9pZD03NDE3NgorCisgICAgICAgIFJldmlld2VkIGJ5IE5vYW0gUm9zZW50
aGFsLgorCisgICAgICAgIENoZWNrIHRleHR1cmUgbWFwcGVyIGV4aXN0cyBhbHJlYWR5IGluIGVu
c3VyZVJvb3RMYXllciB0byBhdm9pZCByZWNyZWNhdGlvbi4KKyAgICAgICAgQ2hlY2sgaWYgcm9v
dCBsYXllciB3YXMgZGVsZXRlZCBhbHJlYWR5IGluIHB1cmdlR0xSZXNvdXJjZXMuCisgICAgICAg
IEFkZGVkIG11bHRpcGxlV2ViVmlld1dpbmRvd3MgYW5kIG11bHRpcGxlV2ViVmlld3MgQVBJIHRl
c3RzLgorCisgICAgICAgICogVUlQcm9jZXNzL0FQSS9xdC90ZXN0cy9xcXVpY2t3ZWJ2aWV3L3Rz
dF9xcXVpY2t3ZWJ2aWV3LmNwcDoKKyAgICAgICAgKHRzdF9RUXVpY2tXZWJWaWV3OjptdWx0aXBs
ZVdlYlZpZXdXaW5kb3dzKToKKyAgICAgICAgKHRzdF9RUXVpY2tXZWJWaWV3OjptdWx0aXBsZVdl
YlZpZXdzKToKKyAgICAgICAgKiBVSVByb2Nlc3MvcXQvTGF5ZXJUcmVlSG9zdFByb3h5UXQuY3Bw
OgorICAgICAgICAoV2ViS2l0OjpMYXllclRyZWVIb3N0UHJveHk6OmVuc3VyZVJvb3RMYXllcik6
CisgICAgICAgIChXZWJLaXQ6OkxheWVyVHJlZUhvc3RQcm94eTo6cHVyZ2VHTFJlc291cmNlcyk6
CisKIDIwMTItMDEtMDYgIE1hcmsgUm93ZSAgPG1yb3dlQGFwcGxlLmNvbT4KIAogICAgICAgICBS
RUdSRVNTSU9OIChXZWJLaXQyKTogU2F2ZSBhcyBQREYgbm8gbG9uZ2VyIGdlbmVyYXRlcyBsaW5r
cyB0byBVUkxzCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJL3F0L3Rl
c3RzL3FxdWlja3dlYnZpZXcvdHN0X3FxdWlja3dlYnZpZXcuY3BwIGIvU291cmNlL1dlYktpdDIv
VUlQcm9jZXNzL0FQSS9xdC90ZXN0cy9xcXVpY2t3ZWJ2aWV3L3RzdF9xcXVpY2t3ZWJ2aWV3LmNw
cAppbmRleCA1N2I3ZWMxLi5hNmEyMDJhIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9VSVBy
b2Nlc3MvQVBJL3F0L3Rlc3RzL3FxdWlja3dlYnZpZXcvdHN0X3FxdWlja3dlYnZpZXcuY3BwCisr
KyBiL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9BUEkvcXQvdGVzdHMvcXF1aWNrd2Vidmlldy90
c3RfcXF1aWNrd2Vidmlldy5jcHAKQEAgLTUxLDYgKzUxLDggQEAgcHJpdmF0ZSBzbG90czoKICAg
ICB2b2lkIHNob3coKTsKICAgICB2b2lkIHNob3dXZWJWaWV3KCk7CiAgICAgdm9pZCByZW1vdmVG
cm9tQ2FudmFzKCk7CisgICAgdm9pZCBtdWx0aXBsZVdlYlZpZXdXaW5kb3dzKCk7CisgICAgdm9p
ZCBtdWx0aXBsZVdlYlZpZXdzKCk7CiAKIHByaXZhdGU6CiAgICAgaW5saW5lIFFRdWlja1dlYlZp
ZXcqIHdlYlZpZXcoKSBjb25zdDsKQEAgLTI3MCw2ICsyNzIsNTIgQEAgdm9pZCB0c3RfUVF1aWNr
V2ViVmlldzo6cmVtb3ZlRnJvbUNhbnZhcygpCiAgICAgUVRlc3Q6OnFXYWl0KDIwMCk7CiB9CiAK
K3ZvaWQgdHN0X1FRdWlja1dlYlZpZXc6Om11bHRpcGxlV2ViVmlld1dpbmRvd3MoKQoreworICAg
IHNob3dXZWJWaWV3KCk7CisKKyAgICAvLyBUaGlzIHNob3VsZCBub3QgY3Jhc2guCisgICAgUVF1
aWNrV2ViVmlldyogd2ViVmlldzEgPSBuZXcgUVF1aWNrV2ViVmlldygpOworICAgIFFTY29wZWRQ
b2ludGVyPFRlc3RXaW5kb3c+IHdpbmRvdzEobmV3IFRlc3RXaW5kb3cod2ViVmlldzEpKTsKKyAg
ICBRUXVpY2tXZWJWaWV3KiB3ZWJWaWV3MiA9IG5ldyBRUXVpY2tXZWJWaWV3KCk7CisgICAgUVNj
b3BlZFBvaW50ZXI8VGVzdFdpbmRvdz4gd2luZG93MihuZXcgVGVzdFdpbmRvdyh3ZWJWaWV3Mikp
OworCisgICAgd2ViVmlldzEtPnNldFNpemUoUVNpemVGKDMwMCwgNDAwKSk7CisgICAgd2ViVmll
dzEtPmxvYWQoUVVybDo6ZnJvbUxvY2FsRmlsZShRTGF0aW4xU3RyaW5nKFRFU1RTX1NPVVJDRV9E
SVIgIi9odG1sL3Njcm9sbC5odG1sIikpKTsKKyAgICBRVkVSSUZZKHdhaXRGb3JTaWduYWwod2Vi
VmlldzEsIFNJR05BTChsb2FkU3VjY2VlZGVkKCkpKSk7CisgICAgd2luZG93MS0+c2hvdygpOwor
ICAgIHdlYlZpZXcxLT5zZXRWaXNpYmxlKHRydWUpOworCisgICAgd2ViVmlldzItPnNldFNpemUo
UVNpemVGKDMwMCwgNDAwKSk7CisgICAgd2ViVmlldzItPmxvYWQoUVVybDo6ZnJvbUxvY2FsRmls
ZShRTGF0aW4xU3RyaW5nKFRFU1RTX1NPVVJDRV9ESVIgIi9odG1sL2Jhc2ljX3BhZ2UuaHRtbCIp
KSk7CisgICAgUVZFUklGWSh3YWl0Rm9yU2lnbmFsKHdlYlZpZXcyLCBTSUdOQUwobG9hZFN1Y2Nl
ZWRlZCgpKSkpOworICAgIHdpbmRvdzItPnNob3coKTsKKyAgICB3ZWJWaWV3Mi0+c2V0VmlzaWJs
ZSh0cnVlKTsKKyAgICBRVGVzdDo6cVdhaXQoMjAwKTsKK30KKwordm9pZCB0c3RfUVF1aWNrV2Vi
Vmlldzo6bXVsdGlwbGVXZWJWaWV3cygpCit7CisgICAgc2hvd1dlYlZpZXcoKTsKKworICAgIC8v
IFRoaXMgc2hvdWxkIG5vdCBjcmFzaC4KKyAgICBRU2NvcGVkUG9pbnRlcjxRUXVpY2tXZWJWaWV3
PiB3ZWJWaWV3MShuZXcgUVF1aWNrV2ViVmlldygpKTsKKyAgICB3ZWJWaWV3MS0+c2V0UGFyZW50
SXRlbShtX3dpbmRvdy0+cm9vdEl0ZW0oKSk7CisgICAgUVNjb3BlZFBvaW50ZXI8UVF1aWNrV2Vi
Vmlldz4gd2ViVmlldzIobmV3IFFRdWlja1dlYlZpZXcoKSk7CisgICAgd2ViVmlldzItPnNldFBh
cmVudEl0ZW0obV93aW5kb3ctPnJvb3RJdGVtKCkpOworCisgICAgd2ViVmlldzEtPnNldFNpemUo
UVNpemVGKDMwMCwgNDAwKSk7CisgICAgd2ViVmlldzEtPmxvYWQoUVVybDo6ZnJvbUxvY2FsRmls
ZShRTGF0aW4xU3RyaW5nKFRFU1RTX1NPVVJDRV9ESVIgIi9odG1sL3Njcm9sbC5odG1sIikpKTsK
KyAgICBRVkVSSUZZKHdhaXRGb3JTaWduYWwod2ViVmlldzEuZGF0YSgpLCBTSUdOQUwobG9hZFN1
Y2NlZWRlZCgpKSkpOworICAgIHdlYlZpZXcxLT5zZXRWaXNpYmxlKHRydWUpOworCisgICAgd2Vi
VmlldzItPnNldFNpemUoUVNpemVGKDMwMCwgNDAwKSk7CisgICAgd2ViVmlldzItPmxvYWQoUVVy
bDo6ZnJvbUxvY2FsRmlsZShRTGF0aW4xU3RyaW5nKFRFU1RTX1NPVVJDRV9ESVIgIi9odG1sL2Jh
c2ljX3BhZ2UuaHRtbCIpKSk7CisgICAgUVZFUklGWSh3YWl0Rm9yU2lnbmFsKHdlYlZpZXcyLmRh
dGEoKSwgU0lHTkFMKGxvYWRTdWNjZWVkZWQoKSkpKTsKKyAgICB3ZWJWaWV3Mi0+c2V0VmlzaWJs
ZSh0cnVlKTsKKyAgICBRVGVzdDo6cVdhaXQoMjAwKTsKK30KKwogdm9pZCB0c3RfUVF1aWNrV2Vi
Vmlldzo6c2Nyb2xsUmVxdWVzdCgpCiB7CiAgICAgd2ViVmlldygpLT5zZXRTaXplKFFTaXplRigz
MDAsIDQwMCkpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL3F0L0xheWVy
VHJlZUhvc3RQcm94eVF0LmNwcCBiL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9xdC9MYXllclRy
ZWVIb3N0UHJveHlRdC5jcHAKaW5kZXggYTFkZDI3Mi4uNjA3MzZiMSAxMDA2NDQKLS0tIGEvU291
cmNlL1dlYktpdDIvVUlQcm9jZXNzL3F0L0xheWVyVHJlZUhvc3RQcm94eVF0LmNwcAorKysgYi9T
b3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvcXQvTGF5ZXJUcmVlSG9zdFByb3h5UXQuY3BwCkBAIC00
NjAsNyArNDYwLDggQEAgdm9pZCBMYXllclRyZWVIb3N0UHJveHk6OmVuc3VyZVJvb3RMYXllcigp
CiAKICAgICAvLyBUaGUgcm9vdCBsYXllciBzaG91bGQgbm90IGhhdmUgemVybyBzaXplLCBvciBp
dCB3b3VsZCBiZSBvcHRpbWl6ZWQgb3V0LgogICAgIG1fcm9vdExheWVyLT5zZXRTaXplKEZsb2F0
U2l6ZSgxLjAsIDEuMCkpOwotICAgIG1fdGV4dHVyZU1hcHBlciA9IFRleHR1cmVNYXBwZXJHTDo6
Y3JlYXRlKCk7CisgICAgaWYgKCFtX3RleHR1cmVNYXBwZXIpCisgICAgICAgIG1fdGV4dHVyZU1h
cHBlciA9IFRleHR1cmVNYXBwZXJHTDo6Y3JlYXRlKCk7CiAgICAgdG9UZXh0dXJlTWFwcGVyTm9k
ZShtX3Jvb3RMYXllci5nZXQoKSktPnNldFRleHR1cmVNYXBwZXIobV90ZXh0dXJlTWFwcGVyLmdl
dCgpKTsKIH0KIApAQCAtNjIzLDcgKzYyNCw5IEBAIHZvaWQgTGF5ZXJUcmVlSG9zdFByb3h5Ojpw
dXJnZUdMUmVzb3VyY2VzKCkKIHsKICAgICBUZXh0dXJlTWFwcGVyTm9kZSogbm9kZSA9IHRvVGV4
dHVyZU1hcHBlck5vZGUocm9vdExheWVyKCkpOwogCi0gICAgbm9kZS0+cHVyZ2VOb2RlVGV4dHVy
ZXNSZWN1cnNpdmUoKTsKKyAgICBpZiAobm9kZSkKKyAgICAgICAgbm9kZS0+cHVyZ2VOb2RlVGV4
dHVyZXNSZWN1cnNpdmUoKTsKKwogICAgIG1fZGlyZWN0bHlDb21wb3NpdGVkSW1hZ2VzLmNsZWFy
KCk7CiAKICAgICBtX3RleHR1cmVNYXBwZXIuY2xlYXIoKTsK
</data>

          </attachment>
      

    </bug>

</bugzilla>