<?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>53722</bug_id>
          
          <creation_ts>2011-02-03 15:10:54 -0800</creation_ts>
          <short_desc>Hook up WebGraphicsContext3D::setContextLostCallback.</short_desc>
          <delta_ts>2011-02-07 22:54:19 -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>WebGL</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>PC</rep_platform>
          <op_sys>All</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords></keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Alexey Marinichev">amarinichev</reporter>
          <assigned_to name="Alexey Marinichev">amarinichev</assigned_to>
          <cc>abarth</cc>
    
    <cc>commit-queue</cc>
    
    <cc>eric</cc>
    
    <cc>kbr</cc>
    
    <cc>webkit.review.bot</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>345040</commentid>
    <comment_count>0</comment_count>
    <who name="Alexey Marinichev">amarinichev</who>
    <bug_when>2011-02-03 15:10:54 -0800</bug_when>
    <thetext>This adds necessary plumbing to forward the context lost callback from command buffer to WebGraphicsContext3D.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>345080</commentid>
    <comment_count>1</comment_count>
      <attachid>81129</attachid>
    <who name="Alexey Marinichev">amarinichev</who>
    <bug_when>2011-02-03 15:51:58 -0800</bug_when>
    <thetext>Created attachment 81129
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>345233</commentid>
    <comment_count>2</comment_count>
      <attachid>81163</attachid>
    <who name="Alexey Marinichev">amarinichev</who>
    <bug_when>2011-02-03 18:15:18 -0800</bug_when>
    <thetext>Created attachment 81163
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>345732</commentid>
    <comment_count>3</comment_count>
      <attachid>81163</attachid>
    <who name="Kenneth Russell">kbr</who>
    <bug_when>2011-02-04 13:20:26 -0800</bug_when>
    <thetext>Comment on attachment 81163
Patch

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

Looks good overall. r- for the minor issue of the naked new which needs to be cleaned up. One question.

&gt; Source/WebCore/html/canvas/WebGLRenderingContext.cpp:378
&gt; +    m_context-&gt;setContextLostCallback(new WebGLRenderingContextLostCallback(this));

naked new. Should use adoptPtr(new ...);

&gt; Source/WebKit/chromium/src/GraphicsContext3DChromium.cpp:1110
&gt; +    m_impl-&gt;setContextLostCallback(m_contextLostCallbackAdapter.get());

Is there an ownership issue here? Does the WebGraphicsContext3D take ownership of the passed callback like GraphicsContext3D and WebGLRenderingContext or not?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>345836</commentid>
    <comment_count>4</comment_count>
      <attachid>81300</attachid>
    <who name="Alexey Marinichev">amarinichev</who>
    <bug_when>2011-02-04 15:08:25 -0800</bug_when>
    <thetext>Created attachment 81300
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>345866</commentid>
    <comment_count>5</comment_count>
    <who name="Alexey Marinichev">amarinichev</who>
    <bug_when>2011-02-04 15:39:26 -0800</bug_when>
    <thetext>&gt; &gt; Source/WebCore/html/canvas/WebGLRenderingContext.cpp:378
&gt; &gt; +    m_context-&gt;setContextLostCallback(new WebGLRenderingContextLostCallback(this));
&gt; 
&gt; naked new. Should use adoptPtr(new ...);

Done.

&gt; 
&gt; &gt; Source/WebKit/chromium/src/GraphicsContext3DChromium.cpp:1110
&gt; &gt; +    m_impl-&gt;setContextLostCallback(m_contextLostCallbackAdapter.get());
&gt; 
&gt; Is there an ownership issue here? Does the WebGraphicsContext3D take ownership of the passed callback like GraphicsContext3D and WebGLRenderingContext or not?

WebGraphicsContext3DCommandBufferImpl has an OnSwapBuffers call, OnContextLost was added to it in a similar fashion.  Whoever owns WebGraphicsContext3D gets to own the callback.

GraphicsContext3DInternal::m_contextLostCallbackAdapter is an adapter to allow using GraphicsContext3D::ContextLostCallback in WebGraphicsContext3D that does not know about GraphicsContext3D.

WebGLRenderingContext doesn&apos;t seem to own GraphicsContext3D -- it has it as RefPtr.  It looks like WebGLRenderingContextLostCallback::m_contextLostCallback should really be a weak pointer -- we don&apos;t want to crash if WebGLRenderingContext is already gone and somebody still holds on to GraphicsContext3D.

Need to redo WebGLRenderingContextLostCallback!</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>345955</commentid>
    <comment_count>6</comment_count>
      <attachid>81327</attachid>
    <who name="Alexey Marinichev">amarinichev</who>
    <bug_when>2011-02-04 17:40:57 -0800</bug_when>
    <thetext>Created attachment 81327
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>345964</commentid>
    <comment_count>7</comment_count>
    <who name="Alexey Marinichev">amarinichev</who>
    <bug_when>2011-02-04 17:45:31 -0800</bug_when>
    <thetext>The callback is owned by the longest-lived object.

When WebGLRenderingContext&apos;s destructor is called, it will unregister context lost callback from m_context, so callback for stale context will not be called.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>345978</commentid>
    <comment_count>8</comment_count>
      <attachid>81333</attachid>
    <who name="Alexey Marinichev">amarinichev</who>
    <bug_when>2011-02-04 18:18:18 -0800</bug_when>
    <thetext>Created attachment 81333
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>345979</commentid>
    <comment_count>9</comment_count>
    <who name="Alexey Marinichev">amarinichev</who>
    <bug_when>2011-02-04 18:18:43 -0800</bug_when>
    <thetext>Removed webkit.pyc-2.4 that shouldn&apos;t be there.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>345988</commentid>
    <comment_count>10</comment_count>
      <attachid>81333</attachid>
    <who name="Kenneth Russell">kbr</who>
    <bug_when>2011-02-04 18:32:46 -0800</bug_when>
    <thetext>Comment on attachment 81333
Patch

Looks good to me.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>346007</commentid>
    <comment_count>11</comment_count>
      <attachid>81333</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2011-02-04 19:14:03 -0800</bug_when>
    <thetext>Comment on attachment 81333
Patch

Rejecting attachment 81333 from commit-queue.

Failed to run &quot;[&apos;./Tools/Scripts/webkit-patch&apos;, &apos;--status-host=queues.webkit.org&apos;, &apos;--bot-id=cr-jail-8&apos;, &apos;build&apos;...&quot; exit_code: 2

Last 500 characters of output:
-commit-queue/WebKitBuild/WebCore.build/Debug/WebCore.build/Objects-normal/x86_64/WebKitLoseContext.o /mnt/git/webkit-commit-queue/Source/WebCore/html/canvas/WebKitLoseContext.cpp normal x86_64 c++ com.apple.compilers.gcc.4_2
	CompileC /mnt/git/webkit-commit-queue/WebKitBuild/WebCore.build/Debug/WebCore.build/Objects-normal/x86_64/WebGLRenderingContext.o /mnt/git/webkit-commit-queue/Source/WebCore/html/canvas/WebGLRenderingContext.cpp normal x86_64 c++ com.apple.compilers.gcc.4_2
(35 failures)


Full output: http://queues.webkit.org/results/7697740</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>346189</commentid>
    <comment_count>12</comment_count>
      <attachid>81374</attachid>
    <who name="Alexey Marinichev">amarinichev</who>
    <bug_when>2011-02-05 14:26:21 -0800</bug_when>
    <thetext>Created attachment 81374
added virtual destructors</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>346234</commentid>
    <comment_count>13</comment_count>
      <attachid>81374</attachid>
    <who name="Kenneth Russell">kbr</who>
    <bug_when>2011-02-05 21:17:14 -0800</bug_when>
    <thetext>Comment on attachment 81374
added virtual destructors

Let&apos;s try again.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>346242</commentid>
    <comment_count>14</comment_count>
      <attachid>81374</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2011-02-05 22:03:04 -0800</bug_when>
    <thetext>Comment on attachment 81374
added virtual destructors

Rejecting attachment 81374 from commit-queue.

Failed to run &quot;[&apos;./Tools/Scripts/webkit-patch&apos;, &apos;--status-host=queues.webkit.org&apos;, &apos;--bot-id=cr-jail-3&apos;, &apos;land-a...&quot; exit_code: 2

Last 500 characters of output:
OPS&quot; in a ChangeLog file.
 at /usr/local/git/libexec/git-core/git-svn line 574


Failed to run &quot;[u&apos;git&apos;, u&apos;svn&apos;, u&apos;dcommit&apos;]&quot; exit_code: 1
Updating OpenSource
From git://git.webkit.org/WebKit
   1a2fd8e..9df0b31  master     -&gt; origin/master
	M	Source/WebKit2/ChangeLog
	M	Source/WebKit2/WebProcess/WebPage/DrawingAreaImpl.cpp
r77759 = 9df0b31bee4fd30e9b61fe18d160d81c9eba4cf7 (refs/remotes/trunk)
First, rewinding head to replay your work on top of it...
Fast-forwarded master to refs/remotes/trunk.

Full output: http://queues.webkit.org/results/7698959</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>346335</commentid>
    <comment_count>15</comment_count>
    <who name="Kenneth Russell">kbr</who>
    <bug_when>2011-02-06 10:34:18 -0800</bug_when>
    <thetext>Looks like the failure was caused by the extra section in Source/WebKit/chromium/ChangeLog.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>346632</commentid>
    <comment_count>16</comment_count>
      <attachid>81483</attachid>
    <who name="Alexey Marinichev">amarinichev</who>
    <bug_when>2011-02-07 09:41:25 -0800</bug_when>
    <thetext>Created attachment 81483
reran prepare-ChangeLog yet again</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>346660</commentid>
    <comment_count>17</comment_count>
      <attachid>81489</attachid>
    <who name="Alexey Marinichev">amarinichev</who>
    <bug_when>2011-02-07 10:32:52 -0800</bug_when>
    <thetext>Created attachment 81489
rebased, cleaned up changelog</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>346675</commentid>
    <comment_count>18</comment_count>
      <attachid>81489</attachid>
    <who name="Kenneth Russell">kbr</who>
    <bug_when>2011-02-07 10:49:00 -0800</bug_when>
    <thetext>Comment on attachment 81489
rebased, cleaned up changelog

Looks fine to me; hopefully third time&apos;s the charm.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>347106</commentid>
    <comment_count>19</comment_count>
      <attachid>81489</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2011-02-07 22:25:31 -0800</bug_when>
    <thetext>Comment on attachment 81489
rebased, cleaned up changelog

Clearing flags on attachment: 81489

Committed r77900: &lt;http://trac.webkit.org/changeset/77900&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>347107</commentid>
    <comment_count>20</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2011-02-07 22:25:37 -0800</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>347127</commentid>
    <comment_count>21</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2011-02-07 22:54:19 -0800</bug_when>
    <thetext>http://trac.webkit.org/changeset/77900 might have broken Qt Linux Release
The following tests are not passing:
http/tests/websocket/tests/websocket-protocol-ignored.html</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>81129</attachid>
            <date>2011-02-03 15:51:58 -0800</date>
            <delta_ts>2011-02-03 18:15:16 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-53722-20110203155157.patch</filename>
            <type>text/plain</type>
            <size>7844</size>
            <attacher name="Alexey Marinichev">amarinichev</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJDb3JlL0No
YW5nZUxvZwppbmRleCBmOTFmNDU3N2M1OTM4ZTFiYTQ3ZWUzZDhkOWY1NDYyNGQ1MDBlNzMxLi5i
MWZmZWY1MzBlMWRjOTQ5MDFiMTExNjU0N2ViMjg4OTBkMjhjNDk2IDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViQ29yZS9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCkBAIC0x
LDMgKzEsMjAgQEAKKzIwMTEtMDItMDMgIEFsZXhleSBNYXJpbmljaGV2ICA8YW1hcmluaWNoZXZA
Y2hyb21pdW0ub3JnPgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisg
ICAgICAgIEhvb2sgdXAgV2ViR3JhcGhpY3NDb250ZXh0M0Q6OnNldENvbnRleHRMb3N0Q2FsbGJh
Y2suCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD01Mzcy
MgorCisgICAgICAgIFRlc3Q6IGZhc3QvY2FudmFzL3dlYmdsL2NvbnRleHQtbG9zdC5odG1sLCBj
b21tZW50IG91dCB0aGUgbGluZSB3aXRoCisgICAgICAgIGV4dGVuc2lvbi5sb3NlQ29udGV4dCgp
IGFuZCBraWxsIHRoZSBHUFUgcHJvY2VzcyAiTG9zZSBjb250ZXh0IgorICAgICAgICBtZXNzYWdl
IHNob3dzIHVwLgorCisgICAgICAgICogaHRtbC9jYW52YXMvV2ViR0xSZW5kZXJpbmdDb250ZXh0
LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OldlYkdMUmVuZGVyaW5nQ29udGV4dExvc3RDYWxsYmFj
azo6V2ViR0xSZW5kZXJpbmdDb250ZXh0TG9zdENhbGxiYWNrKToKKyAgICAgICAgKFdlYkNvcmU6
OldlYkdMUmVuZGVyaW5nQ29udGV4dExvc3RDYWxsYmFjazo6b25Db250ZXh0TG9zdCk6CisgICAg
ICAgIChXZWJDb3JlOjpXZWJHTFJlbmRlcmluZ0NvbnRleHQ6OldlYkdMUmVuZGVyaW5nQ29udGV4
dCk6CisgICAgICAgICogcGxhdGZvcm0vZ3JhcGhpY3MvR3JhcGhpY3NDb250ZXh0M0QuaDogYWRk
ZWQgc2V0Q29udGV4dExvc3RDYWxsYmFjaworCiAyMDExLTAyLTAyICBMdWl6IEFnb3N0aW5pICA8
bHVpei5hZ29zdGluaUBvcGVuYm9zc2Eub3JnPgogCiAgICAgICAgIFJldmlld2VkIGJ5IERhdmlk
IEh5YXR0LgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvaHRtbC9jYW52YXMvV2ViR0xSZW5k
ZXJpbmdDb250ZXh0LmNwcCBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvY2FudmFzL1dlYkdMUmVuZGVy
aW5nQ29udGV4dC5jcHAKaW5kZXggZjdkZjU2YzgwZTg2YWMwOGJkZjQyMjc0ZGRhNDFlNTc5ODY3
Njk4Ny4uOWJiYTRkZTNjYjFhNmY5ODVlMjJkZmQ2M2I3NWYzN2UyNjAzYjhmOSAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYkNvcmUvaHRtbC9jYW52YXMvV2ViR0xSZW5kZXJpbmdDb250ZXh0LmNwcAor
KysgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL2NhbnZhcy9XZWJHTFJlbmRlcmluZ0NvbnRleHQuY3Bw
CkBAIC0zNDEsNiArMzQxLDE0IEBAIHZvaWQgV2ViR0xSZW5kZXJpbmdDb250ZXh0OjpXZWJHTFJl
bmRlcmluZ0NvbnRleHRSZXN0b3JlVGltZXI6OmZpcmVkKCkKICAgICB9CiB9CiAKK2NsYXNzIFdl
YkdMUmVuZGVyaW5nQ29udGV4dExvc3RDYWxsYmFjayA6IHB1YmxpYyBHcmFwaGljc0NvbnRleHQz
RDo6Q29udGV4dExvc3RDYWxsYmFjayB7CitwdWJsaWM6CisgICAgV2ViR0xSZW5kZXJpbmdDb250
ZXh0TG9zdENhbGxiYWNrKFdlYkdMUmVuZGVyaW5nQ29udGV4dCogY2IpIDogbV9jb250ZXh0TG9z
dENhbGxiYWNrKGNiKSB7fQorICAgIHZpcnR1YWwgdm9pZCBvbkNvbnRleHRMb3N0KCkgeyBtX2Nv
bnRleHRMb3N0Q2FsbGJhY2stPmZvcmNlTG9zdENvbnRleHQoKTsgfQorcHJpdmF0ZToKKyAgICBX
ZWJHTFJlbmRlcmluZ0NvbnRleHQqIG1fY29udGV4dExvc3RDYWxsYmFjazsKK307CisKIFBhc3NP
d25QdHI8V2ViR0xSZW5kZXJpbmdDb250ZXh0PiBXZWJHTFJlbmRlcmluZ0NvbnRleHQ6OmNyZWF0
ZShIVE1MQ2FudmFzRWxlbWVudCogY2FudmFzLCBXZWJHTENvbnRleHRBdHRyaWJ1dGVzKiBhdHRy
cykKIHsKICAgICBIb3N0V2luZG93KiBob3N0V2luZG93ID0gY2FudmFzLT5kb2N1bWVudCgpLT52
aWV3KCktPnJvb3QoKS0+aG9zdFdpbmRvdygpOwpAQCAtMzY3LDYgKzM3NSw3IEBAIFdlYkdMUmVu
ZGVyaW5nQ29udGV4dDo6V2ViR0xSZW5kZXJpbmdDb250ZXh0KEhUTUxDYW52YXNFbGVtZW50KiBw
YXNzZWRDYW52YXMsIFBhCiAgICAgQVNTRVJUKG1fY29udGV4dCk7CiAgICAgc2V0dXBGbGFncygp
OwogICAgIGluaXRpYWxpemVOZXdDb250ZXh0KCk7CisgICAgbV9jb250ZXh0LT5zZXRDb250ZXh0
TG9zdENhbGxiYWNrKG5ldyBXZWJHTFJlbmRlcmluZ0NvbnRleHRMb3N0Q2FsbGJhY2sodGhpcykp
OwogfQogCiB2b2lkIFdlYkdMUmVuZGVyaW5nQ29udGV4dDo6aW5pdGlhbGl6ZU5ld0NvbnRleHQo
KQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvR3JhcGhpY3ND
b250ZXh0M0QuaCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL0dyYXBoaWNzQ29u
dGV4dDNELmgKaW5kZXggNDdiOTUzZWIzNjJiYTc0MDlkYTQ3OGVmODViZGE0NmQzYzFhNGZmOC4u
ODU4MDEwZTJkMDcyYmJlOWJkZmJkNWI5MjExNGE4OTI4YzY5MGQ0MSAxMDA2NDQKLS0tIGEvU291
cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvR3JhcGhpY3NDb250ZXh0M0QuaAorKysgYi9T
b3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9HcmFwaGljc0NvbnRleHQzRC5oCkBAIC00
NTQsNiArNDU0LDEzIEBAIHB1YmxpYzoKICAgICAgICAgUmVuZGVyRGlyZWN0bHlUb0hvc3RXaW5k
b3cKICAgICB9OwogCisgICAgY2xhc3MgQ29udGV4dExvc3RDYWxsYmFjayB7CisgICAgcHVibGlj
OgorICAgICAgICB2aXJ0dWFsIHZvaWQgb25Db250ZXh0TG9zdCgpID0gMDsKKyAgICB9OworCisg
ICAgdm9pZCBzZXRDb250ZXh0TG9zdENhbGxiYWNrKFBhc3NPd25QdHI8Q29udGV4dExvc3RDYWxs
YmFjaz4pOworCiAgICAgc3RhdGljIFBhc3NSZWZQdHI8R3JhcGhpY3NDb250ZXh0M0Q+IGNyZWF0
ZShBdHRyaWJ1dGVzLCBIb3N0V2luZG93KiwgUmVuZGVyU3R5bGUgPSBSZW5kZXJPZmZzY3JlZW4p
OwogICAgIH5HcmFwaGljc0NvbnRleHQzRCgpOwogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0
L2Nocm9taXVtL0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJLaXQvY2hyb21pdW0vQ2hhbmdlTG9nCmlu
ZGV4IDExYTM3Yjc0ZGNiMThhNDY2NTZmNGRiN2QyYmFjMzRlZWRiNTZkNzkuLmJlZmNmNjVmZTU3
YWY1M2JhYzk3ZGQ3NWFlYjFmODAyNmNhNTY5Y2MgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQv
Y2hyb21pdW0vQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9XZWJLaXQvY2hyb21pdW0vQ2hhbmdlTG9n
CkBAIC0xLDMgKzEsMjIgQEAKKzIwMTEtMDItMDMgIEFsZXhleSBNYXJpbmljaGV2ICA8YW1hcmlu
aWNoZXZAY2hyb21pdW0ub3JnPgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEp
LgorCisgICAgICAgIEhvb2sgdXAgV2ViR3JhcGhpY3NDb250ZXh0M0Q6OnNldENvbnRleHRMb3N0
Q2FsbGJhY2suCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9p
ZD01MzcyMgorCisgICAgICAgIFRlc3Q6IGZhc3QvY2FudmFzL3dlYmdsL2NvbnRleHQtbG9zdC5o
dG1sLCBjb21tZW50IG91dCB0aGUgbGluZSB3aXRoCisgICAgICAgIGV4dGVuc2lvbi5sb3NlQ29u
dGV4dCgpIGFuZCBraWxsIHRoZSBHUFUgcHJvY2VzcyAiTG9zZSBjb250ZXh0IgorICAgICAgICBt
ZXNzYWdlIHNob3dzIHVwLgorCisgICAgICAgICogc3JjL0dyYXBoaWNzQ29udGV4dDNEQ2hyb21p
dW0uY3BwOgorICAgICAgICAoV2ViQ29yZTo6R3JhcGhpY3NDb250ZXh0M0RJbnRlcm5hbDo6aW5p
dGlhbGl6ZSk6CisgICAgICAgIChXZWJDb3JlOjpHcmFwaGljc0NvbnRleHRMb3N0Q2FsbGJhY2tB
ZGFwdGVyOjpHcmFwaGljc0NvbnRleHRMb3N0Q2FsbGJhY2tBZGFwdGVyKToKKyAgICAgICAgKFdl
YkNvcmU6OkdyYXBoaWNzQ29udGV4dExvc3RDYWxsYmFja0FkYXB0ZXI6Om9uQ29udGV4dExvc3Qp
OgorICAgICAgICAoV2ViQ29yZTo6R3JhcGhpY3NDb250ZXh0TG9zdENhbGxiYWNrQWRhcHRlcjo6
Y3JlYXRlKToKKyAgICAgICAgKFdlYkNvcmU6OkdyYXBoaWNzQ29udGV4dDNESW50ZXJuYWw6OnNl
dENvbnRleHRMb3N0Q2FsbGJhY2spOgorICAgICAgICAqIHNyYy9HcmFwaGljc0NvbnRleHQzRElu
dGVybmFsLmg6CisKIDIwMTEtMDItMDEgIERhcmluIEZpc2hlciAgPGRhcmluQGNocm9taXVtLm9y
Zz4KIAogICAgICAgICBSZXZpZXdlZCBieSBLZW5uZXRoIFJ1c3NlbGwuCkBAIC00NTAsNiArNDY5
LDE2IEBACiAKICAgICAgICAgKiBzcmMvanMvVGVzdHMuanM6CiAKKzIwMTEtMDEtMjUgIEFsZXhl
eSBNYXJpbmljaGV2ICA8YW1hcmluaWNoZXZAY2hyb21pdW0ub3JnPgorCisgICAgICAgIFJldmll
d2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIEFkZCBhIGNhbGxiYWNrIHRvIFdlYkdy
YXBoaWNzQ29udGV4dDNEIHRoYXQgaXMgY2FsbGVkIHdoZW4gYSBjb250ZXh0IGlzIGxvc3QKKyAg
ICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTUzMTUzCisKKyAg
ICAgICAgKiBwdWJsaWMvV2ViR3JhcGhpY3NDb250ZXh0M0QuaDoKKyAgICAgICAgKFdlYktpdDo6
V2ViR3JhcGhpY3NDb250ZXh0M0Q6OnNldENvbnRleHRMb3N0Q2FsbGJhY2spOgorCiAyMDExLTAx
LTI0ICBaaGVueWFvIE1vICA8em1vQGdvb2dsZS5jb20+CiAKICAgICAgICAgUmV2aWV3ZWQgYnkg
RGFyaW4gQWRsZXIuCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L2Nocm9taXVtL3NyYy9HcmFw
aGljc0NvbnRleHQzRENocm9taXVtLmNwcCBiL1NvdXJjZS9XZWJLaXQvY2hyb21pdW0vc3JjL0dy
YXBoaWNzQ29udGV4dDNEQ2hyb21pdW0uY3BwCmluZGV4IDliNWJmMDgyYjhiMzVhNGI2YmQ2M2Mx
OTIxMTA1OTA1Y2YzZDQ4MzEuLmM1NTQ3Y2E2OTFjYmE3YTk3NjM1YWJmZjEzZTEyYTYzNzgwNTBh
MTkgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvY2hyb21pdW0vc3JjL0dyYXBoaWNzQ29udGV4
dDNEQ2hyb21pdW0uY3BwCisrKyBiL1NvdXJjZS9XZWJLaXQvY2hyb21pdW0vc3JjL0dyYXBoaWNz
Q29udGV4dDNEQ2hyb21pdW0uY3BwCkBAIC0xMDgyLDYgKzEwODIsMzQgQEAgREVMRUdBVEVfVE9f
SU5URVJOQUxfMShkZWxldGVUZXh0dXJlLCBQbGF0Zm9ybTNET2JqZWN0KQogREVMRUdBVEVfVE9f
SU5URVJOQUxfMShzeW50aGVzaXplR0xFcnJvciwgR0MzRGVudW0pCiBERUxFR0FURV9UT19JTlRF
Uk5BTF9SKGdldEV4dGVuc2lvbnMsIEV4dGVuc2lvbnMzRCopCiAKK0RFTEVHQVRFX1RPX0lOVEVS
TkFMXzEoc2V0Q29udGV4dExvc3RDYWxsYmFjaywgUGFzc093blB0cjxHcmFwaGljc0NvbnRleHQz
RDo6Q29udGV4dExvc3RDYWxsYmFjaz4pCisKK2NsYXNzIEdyYXBoaWNzQ29udGV4dExvc3RDYWxs
YmFja0FkYXB0ZXIgOiBwdWJsaWMgV2ViS2l0OjpXZWJHcmFwaGljc0NvbnRleHQzRDo6V2ViR3Jh
cGhpY3NDb250ZXh0TG9zdENhbGxiYWNrIHsKK3B1YmxpYzoKKyAgICB2aXJ0dWFsIHZvaWQgb25D
b250ZXh0TG9zdCgpOworICAgIHN0YXRpYyBQYXNzT3duUHRyPEdyYXBoaWNzQ29udGV4dExvc3RD
YWxsYmFja0FkYXB0ZXI+IGNyZWF0ZShQYXNzT3duUHRyPEdyYXBoaWNzQ29udGV4dDNEOjpDb250
ZXh0TG9zdENhbGxiYWNrPik7Citwcml2YXRlOgorICAgIEdyYXBoaWNzQ29udGV4dExvc3RDYWxs
YmFja0FkYXB0ZXIoUGFzc093blB0cjxHcmFwaGljc0NvbnRleHQzRDo6Q29udGV4dExvc3RDYWxs
YmFjaz4gY2IpIDogbV9jb250ZXh0TG9zdENhbGxiYWNrKGNiKSB7fQorICAgIE93blB0cjxHcmFw
aGljc0NvbnRleHQzRDo6Q29udGV4dExvc3RDYWxsYmFjaz4gbV9jb250ZXh0TG9zdENhbGxiYWNr
OworfTsKKwordm9pZCBHcmFwaGljc0NvbnRleHRMb3N0Q2FsbGJhY2tBZGFwdGVyOjpvbkNvbnRl
eHRMb3N0KCkKK3sKKyAgICBpZiAobV9jb250ZXh0TG9zdENhbGxiYWNrKQorICAgICAgICBtX2Nv
bnRleHRMb3N0Q2FsbGJhY2stPm9uQ29udGV4dExvc3QoKTsKK30KKworUGFzc093blB0cjxHcmFw
aGljc0NvbnRleHRMb3N0Q2FsbGJhY2tBZGFwdGVyPiBHcmFwaGljc0NvbnRleHRMb3N0Q2FsbGJh
Y2tBZGFwdGVyOjpjcmVhdGUoUGFzc093blB0cjxHcmFwaGljc0NvbnRleHQzRDo6Q29udGV4dExv
c3RDYWxsYmFjaz4gY2IpCit7CisgICAgcmV0dXJuIGFkb3B0UHRyKG5ldyBHcmFwaGljc0NvbnRl
eHRMb3N0Q2FsbGJhY2tBZGFwdGVyKGNiKSk7Cit9CisKK3ZvaWQgR3JhcGhpY3NDb250ZXh0M0RJ
bnRlcm5hbDo6c2V0Q29udGV4dExvc3RDYWxsYmFjayhQYXNzT3duUHRyPEdyYXBoaWNzQ29udGV4
dDNEOjpDb250ZXh0TG9zdENhbGxiYWNrPiBjYikKK3sKKyAgICBtX2NvbnRleHRMb3N0Q2FsbGJh
Y2tBZGFwdGVyID0gR3JhcGhpY3NDb250ZXh0TG9zdENhbGxiYWNrQWRhcHRlcjo6Y3JlYXRlKGNi
KTsKKyAgICBtX2ltcGwtPnNldENvbnRleHRMb3N0Q2FsbGJhY2sobV9jb250ZXh0TG9zdENhbGxi
YWNrQWRhcHRlci5nZXQoKSk7Cit9CisKIGJvb2wgR3JhcGhpY3NDb250ZXh0M0Q6OmlzR0xFUzJD
b21wbGlhbnQoKSBjb25zdAogewogICAgIHJldHVybiBtX2ludGVybmFsLT5pc0dMRVMyQ29tcGxp
YW50KCk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L2Nocm9taXVtL3NyYy9HcmFwaGljc0Nv
bnRleHQzREludGVybmFsLmggYi9Tb3VyY2UvV2ViS2l0L2Nocm9taXVtL3NyYy9HcmFwaGljc0Nv
bnRleHQzREludGVybmFsLmgKaW5kZXggMGE3MDYxMzZjNWU4NDZkZjgxYzNmMzE2YmI4ZTgyZjE3
NzlhNWZiNi4uYmU5Y2UxNmRjM2ZjNTA2Mzg4ZWYzNWJmMGNhNDBhMjZjNmIyM2E1MSAxMDA2NDQK
LS0tIGEvU291cmNlL1dlYktpdC9jaHJvbWl1bS9zcmMvR3JhcGhpY3NDb250ZXh0M0RJbnRlcm5h
bC5oCisrKyBiL1NvdXJjZS9XZWJLaXQvY2hyb21pdW0vc3JjL0dyYXBoaWNzQ29udGV4dDNESW50
ZXJuYWwuaApAQCAtNDQsNiArNDQsNyBAQCBjbGFzcyBFeHRlbnNpb25zM0RDaHJvbWl1bTsKICNp
ZiBVU0UoQUNDRUxFUkFURURfQ09NUE9TSVRJTkcpCiBjbGFzcyBXZWJHTExheWVyQ2hyb21pdW07
CiAjZW5kaWYKK2NsYXNzIEdyYXBoaWNzQ29udGV4dExvc3RDYWxsYmFja0FkYXB0ZXI7CiAKIGNs
YXNzIEdyYXBoaWNzQ29udGV4dDNESW50ZXJuYWwgewogcHVibGljOgpAQCAtMjM5LDYgKzI0MCw4
IEBAIHB1YmxpYzoKIAogICAgIHZvaWQgc3ludGhlc2l6ZUdMRXJyb3IoR0MzRGVudW0gZXJyb3Ip
OwogCisgICAgdm9pZCBzZXRDb250ZXh0TG9zdENhbGxiYWNrKFBhc3NPd25QdHI8R3JhcGhpY3ND
b250ZXh0M0Q6OkNvbnRleHRMb3N0Q2FsbGJhY2s+KTsKKwogICAgIC8vIEV4dGVuc2lvbnMzRCBz
dXBwb3J0LgogICAgIEV4dGVuc2lvbnMzRCogZ2V0RXh0ZW5zaW9ucygpOwogICAgIGJvb2wgc3Vw
cG9ydHNFeHRlbnNpb24oY29uc3QgU3RyaW5nJiBuYW1lKTsKQEAgLTI2NSw2ICsyNjgsNyBAQCBw
dWJsaWM6CiBwcml2YXRlOgogICAgIE93blB0cjxXZWJLaXQ6OldlYkdyYXBoaWNzQ29udGV4dDNE
PiBtX2ltcGw7CiAgICAgT3duUHRyPEV4dGVuc2lvbnMzRENocm9taXVtPiBtX2V4dGVuc2lvbnM7
CisgICAgT3duUHRyPEdyYXBoaWNzQ29udGV4dExvc3RDYWxsYmFja0FkYXB0ZXI+IG1fY29udGV4
dExvc3RDYWxsYmFja0FkYXB0ZXI7CiAgICAgV2ViS2l0OjpXZWJWaWV3SW1wbCogbV93ZWJWaWV3
SW1wbDsKICAgICBib29sIG1faW5pdGlhbGl6ZWRBdmFpbGFibGVFeHRlbnNpb25zOwogICAgIEhh
c2hTZXQ8U3RyaW5nPiBtX2VuYWJsZWRFeHRlbnNpb25zOwo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>81163</attachid>
            <date>2011-02-03 18:15:18 -0800</date>
            <delta_ts>2011-02-04 15:08:23 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-53722-20110203181517.patch</filename>
            <type>text/plain</type>
            <size>15277</size>
            <attacher name="Alexey Marinichev">amarinichev</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJDb3JlL0No
YW5nZUxvZwppbmRleCBmOTFmNDU3N2M1OTM4ZTFiYTQ3ZWUzZDhkOWY1NDYyNGQ1MDBlNzMxLi44
YzdjY2UwNzEyNzU4NGExOTlhYjhkNzg1NGEzZDEwMjU4MmRlMTNkIDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViQ29yZS9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCkBAIC0x
LDMgKzEsMjQgQEAKKzIwMTEtMDItMDMgIEFsZXhleSBNYXJpbmljaGV2ICA8YW1hcmluaWNoZXZA
Y2hyb21pdW0ub3JnPgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisg
ICAgICAgIEhvb2sgdXAgV2ViR3JhcGhpY3NDb250ZXh0M0Q6OnNldENvbnRleHRMb3N0Q2FsbGJh
Y2suCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD01Mzcy
MgorCisgICAgICAgIFRlc3Q6IGZhc3QvY2FudmFzL3dlYmdsL2NvbnRleHQtbG9zdC5odG1sLCBj
b21tZW50IG91dCB0aGUgbGluZSB3aXRoCisgICAgICAgIGV4dGVuc2lvbi5sb3NlQ29udGV4dCgp
IGFuZCBraWxsIHRoZSBHUFUgcHJvY2VzcyAiTG9zZSBjb250ZXh0IgorICAgICAgICBtZXNzYWdl
IHNob3dzIHVwLgorCisgICAgICAgICogaHRtbC9jYW52YXMvV2ViR0xSZW5kZXJpbmdDb250ZXh0
LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OldlYkdMUmVuZGVyaW5nQ29udGV4dExvc3RDYWxsYmFj
azo6V2ViR0xSZW5kZXJpbmdDb250ZXh0TG9zdENhbGxiYWNrKToKKyAgICAgICAgKFdlYkNvcmU6
OldlYkdMUmVuZGVyaW5nQ29udGV4dExvc3RDYWxsYmFjazo6b25Db250ZXh0TG9zdCk6CisgICAg
ICAgIChXZWJDb3JlOjpXZWJHTFJlbmRlcmluZ0NvbnRleHQ6OldlYkdMUmVuZGVyaW5nQ29udGV4
dCk6CisgICAgICAgICogcGxhdGZvcm0vZ3JhcGhpY3MvR3JhcGhpY3NDb250ZXh0M0QuaDogYWRk
ZWQgc2V0Q29udGV4dExvc3RDYWxsYmFjaworICAgICAgICAqIHBsYXRmb3JtL2dyYXBoaWNzL21h
Yy9HcmFwaGljc0NvbnRleHQzRE1hYy5tbToKKyAgICAgICAgKFdlYkNvcmU6OkdyYXBoaWNzQ29u
dGV4dDNEOjpzZXRDb250ZXh0TG9zdENhbGxiYWNrKTogc3R1YgorICAgICAgICAqIHBsYXRmb3Jt
L2dyYXBoaWNzL3F0L0dyYXBoaWNzQ29udGV4dDNEUXQuY3BwOgorICAgICAgICAoV2ViQ29yZTo6
R3JhcGhpY3NDb250ZXh0M0Q6OnNldENvbnRleHRMb3N0Q2FsbGJhY2spOiBzdHViCisKIDIwMTEt
MDItMDIgIEx1aXogQWdvc3RpbmkgIDxsdWl6LmFnb3N0aW5pQG9wZW5ib3NzYS5vcmc+CiAKICAg
ICAgICAgUmV2aWV3ZWQgYnkgRGF2aWQgSHlhdHQuCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29y
ZS9odG1sL2NhbnZhcy9XZWJHTFJlbmRlcmluZ0NvbnRleHQuY3BwIGIvU291cmNlL1dlYkNvcmUv
aHRtbC9jYW52YXMvV2ViR0xSZW5kZXJpbmdDb250ZXh0LmNwcAppbmRleCBmN2RmNTZjODBlODZh
YzA4YmRmNDIyNzRkZGE0MWU1Nzk4Njc2OTg3Li45YmJhNGRlM2NiMWE2Zjk4NWUyMmRmZDYzYjc1
ZjM3ZTI2MDNiOGY5IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9odG1sL2NhbnZhcy9XZWJH
TFJlbmRlcmluZ0NvbnRleHQuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvY2FudmFzL1dl
YkdMUmVuZGVyaW5nQ29udGV4dC5jcHAKQEAgLTM0MSw2ICszNDEsMTQgQEAgdm9pZCBXZWJHTFJl
bmRlcmluZ0NvbnRleHQ6OldlYkdMUmVuZGVyaW5nQ29udGV4dFJlc3RvcmVUaW1lcjo6ZmlyZWQo
KQogICAgIH0KIH0KIAorY2xhc3MgV2ViR0xSZW5kZXJpbmdDb250ZXh0TG9zdENhbGxiYWNrIDog
cHVibGljIEdyYXBoaWNzQ29udGV4dDNEOjpDb250ZXh0TG9zdENhbGxiYWNrIHsKK3B1YmxpYzoK
KyAgICBXZWJHTFJlbmRlcmluZ0NvbnRleHRMb3N0Q2FsbGJhY2soV2ViR0xSZW5kZXJpbmdDb250
ZXh0KiBjYikgOiBtX2NvbnRleHRMb3N0Q2FsbGJhY2soY2IpIHt9CisgICAgdmlydHVhbCB2b2lk
IG9uQ29udGV4dExvc3QoKSB7IG1fY29udGV4dExvc3RDYWxsYmFjay0+Zm9yY2VMb3N0Q29udGV4
dCgpOyB9Citwcml2YXRlOgorICAgIFdlYkdMUmVuZGVyaW5nQ29udGV4dCogbV9jb250ZXh0TG9z
dENhbGxiYWNrOworfTsKKwogUGFzc093blB0cjxXZWJHTFJlbmRlcmluZ0NvbnRleHQ+IFdlYkdM
UmVuZGVyaW5nQ29udGV4dDo6Y3JlYXRlKEhUTUxDYW52YXNFbGVtZW50KiBjYW52YXMsIFdlYkdM
Q29udGV4dEF0dHJpYnV0ZXMqIGF0dHJzKQogewogICAgIEhvc3RXaW5kb3cqIGhvc3RXaW5kb3cg
PSBjYW52YXMtPmRvY3VtZW50KCktPnZpZXcoKS0+cm9vdCgpLT5ob3N0V2luZG93KCk7CkBAIC0z
NjcsNiArMzc1LDcgQEAgV2ViR0xSZW5kZXJpbmdDb250ZXh0OjpXZWJHTFJlbmRlcmluZ0NvbnRl
eHQoSFRNTENhbnZhc0VsZW1lbnQqIHBhc3NlZENhbnZhcywgUGEKICAgICBBU1NFUlQobV9jb250
ZXh0KTsKICAgICBzZXR1cEZsYWdzKCk7CiAgICAgaW5pdGlhbGl6ZU5ld0NvbnRleHQoKTsKKyAg
ICBtX2NvbnRleHQtPnNldENvbnRleHRMb3N0Q2FsbGJhY2sobmV3IFdlYkdMUmVuZGVyaW5nQ29u
dGV4dExvc3RDYWxsYmFjayh0aGlzKSk7CiB9CiAKIHZvaWQgV2ViR0xSZW5kZXJpbmdDb250ZXh0
Ojppbml0aWFsaXplTmV3Q29udGV4dCgpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0
Zm9ybS9ncmFwaGljcy9HcmFwaGljc0NvbnRleHQzRC5oIGIvU291cmNlL1dlYkNvcmUvcGxhdGZv
cm0vZ3JhcGhpY3MvR3JhcGhpY3NDb250ZXh0M0QuaAppbmRleCA0N2I5NTNlYjM2MmJhNzQwOWRh
NDc4ZWY4NWJkYTQ2ZDNjMWE0ZmY4Li44NTgwMTBlMmQwNzJiYmU5YmRmYmQ1YjkyMTE0YTg5Mjhj
NjkwZDQxIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9HcmFw
aGljc0NvbnRleHQzRC5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL0dy
YXBoaWNzQ29udGV4dDNELmgKQEAgLTQ1NCw2ICs0NTQsMTMgQEAgcHVibGljOgogICAgICAgICBS
ZW5kZXJEaXJlY3RseVRvSG9zdFdpbmRvdwogICAgIH07CiAKKyAgICBjbGFzcyBDb250ZXh0TG9z
dENhbGxiYWNrIHsKKyAgICBwdWJsaWM6CisgICAgICAgIHZpcnR1YWwgdm9pZCBvbkNvbnRleHRM
b3N0KCkgPSAwOworICAgIH07CisKKyAgICB2b2lkIHNldENvbnRleHRMb3N0Q2FsbGJhY2soUGFz
c093blB0cjxDb250ZXh0TG9zdENhbGxiYWNrPik7CisKICAgICBzdGF0aWMgUGFzc1JlZlB0cjxH
cmFwaGljc0NvbnRleHQzRD4gY3JlYXRlKEF0dHJpYnV0ZXMsIEhvc3RXaW5kb3cqLCBSZW5kZXJT
dHlsZSA9IFJlbmRlck9mZnNjcmVlbik7CiAgICAgfkdyYXBoaWNzQ29udGV4dDNEKCk7CiAKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL21hYy9HcmFwaGljc0Nv
bnRleHQzRE1hYy5tbSBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL21hYy9HcmFw
aGljc0NvbnRleHQzRE1hYy5tbQppbmRleCA4Nzc3ZWNjYjYwNWQ2ZTgzYzkzNDIxYWFkODEyMDEy
YWIxZmE0NTFhLi5hYWEyNTBiMmNmZWQyN2UwNTIwZGZlMzI3MWZiZTkyZTk0NjI0ZTQwIDEwMDY0
NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9tYWMvR3JhcGhpY3NDb250
ZXh0M0RNYWMubW0KKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvbWFjL0dy
YXBoaWNzQ29udGV4dDNETWFjLm1tCkBAIC0yNDUsNiArMjQ1LDEwIEBAIGJvb2wgR3JhcGhpY3ND
b250ZXh0M0Q6OmlzR0xFUzJDb21wbGlhbnQoKSBjb25zdAogICAgIHJldHVybiBmYWxzZTsKIH0K
IAordm9pZCBHcmFwaGljc0NvbnRleHQzRDo6c2V0Q29udGV4dExvc3RDYWxsYmFjayhQYXNzT3du
UHRyPENvbnRleHRMb3N0Q2FsbGJhY2s+KQoreworfQorCiB9CiAKICNlbmRpZiAvLyBFTkFCTEUo
V0VCR0wpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9xdC9H
cmFwaGljc0NvbnRleHQzRFF0LmNwcCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNz
L3F0L0dyYXBoaWNzQ29udGV4dDNEUXQuY3BwCmluZGV4IDY0YjhhZDEwYTgwNWFiMzU1ZDU4ODQy
YzBmOTY0NmU1YTQ5OTYxZmMuLjhiODdmNWYwNDgzNGI3NjA5ODY4ODc0NjE5YmMwN2QzNzZhNGVl
MmYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL3F0L0dyYXBo
aWNzQ29udGV4dDNEUXQuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNz
L3F0L0dyYXBoaWNzQ29udGV4dDNEUXQuY3BwCkBAIC0xNjQ3LDYgKzE2NDcsMTAgQEAgYm9vbCBH
cmFwaGljc0NvbnRleHQzRDo6Z2V0SW1hZ2VEYXRhKEltYWdlKiBpbWFnZSwKICAgICAgICAgICAg
ICAgICAgICAgICBmb3JtYXQsIHR5cGUsIG5lZWRlZEFscGhhT3AsIG91dHB1dFZlY3Rvci5kYXRh
KCkpOwogfQogCit2b2lkIEdyYXBoaWNzQ29udGV4dDNEOjpzZXRDb250ZXh0TG9zdENhbGxiYWNr
KFBhc3NPd25QdHI8Q29udGV4dExvc3RDYWxsYmFjaz4pCit7Cit9CisKIH0KIAogI2VuZGlmIC8v
IEVOQUJMRShXRUJHTCkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvY2hyb21pdW0vQ2hhbmdl
TG9nIGIvU291cmNlL1dlYktpdC9jaHJvbWl1bS9DaGFuZ2VMb2cKaW5kZXggMTFhMzdiNzRkY2Ix
OGE0NjY1NmY0ZGI3ZDJiYWMzNGVlZGI1NmQ3OS4uYmVmY2Y2NWZlNTdhZjUzYmFjOTdkZDc1YWVi
MWY4MDI2Y2E1NjljYyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9jaHJvbWl1bS9DaGFuZ2VM
b2cKKysrIGIvU291cmNlL1dlYktpdC9jaHJvbWl1bS9DaGFuZ2VMb2cKQEAgLTEsMyArMSwyMiBA
QAorMjAxMS0wMi0wMyAgQWxleGV5IE1hcmluaWNoZXYgIDxhbWFyaW5pY2hldkBjaHJvbWl1bS5v
cmc+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgSG9v
ayB1cCBXZWJHcmFwaGljc0NvbnRleHQzRDo6c2V0Q29udGV4dExvc3RDYWxsYmFjay4KKyAgICAg
ICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTUzNzIyCisKKyAgICAg
ICAgVGVzdDogZmFzdC9jYW52YXMvd2ViZ2wvY29udGV4dC1sb3N0Lmh0bWwsIGNvbW1lbnQgb3V0
IHRoZSBsaW5lIHdpdGgKKyAgICAgICAgZXh0ZW5zaW9uLmxvc2VDb250ZXh0KCkgYW5kIGtpbGwg
dGhlIEdQVSBwcm9jZXNzICJMb3NlIGNvbnRleHQiCisgICAgICAgIG1lc3NhZ2Ugc2hvd3MgdXAu
CisKKyAgICAgICAgKiBzcmMvR3JhcGhpY3NDb250ZXh0M0RDaHJvbWl1bS5jcHA6CisgICAgICAg
IChXZWJDb3JlOjpHcmFwaGljc0NvbnRleHQzREludGVybmFsOjppbml0aWFsaXplKToKKyAgICAg
ICAgKFdlYkNvcmU6OkdyYXBoaWNzQ29udGV4dExvc3RDYWxsYmFja0FkYXB0ZXI6OkdyYXBoaWNz
Q29udGV4dExvc3RDYWxsYmFja0FkYXB0ZXIpOgorICAgICAgICAoV2ViQ29yZTo6R3JhcGhpY3ND
b250ZXh0TG9zdENhbGxiYWNrQWRhcHRlcjo6b25Db250ZXh0TG9zdCk6CisgICAgICAgIChXZWJD
b3JlOjpHcmFwaGljc0NvbnRleHRMb3N0Q2FsbGJhY2tBZGFwdGVyOjpjcmVhdGUpOgorICAgICAg
ICAoV2ViQ29yZTo6R3JhcGhpY3NDb250ZXh0M0RJbnRlcm5hbDo6c2V0Q29udGV4dExvc3RDYWxs
YmFjayk6CisgICAgICAgICogc3JjL0dyYXBoaWNzQ29udGV4dDNESW50ZXJuYWwuaDoKKwogMjAx
MS0wMi0wMSAgRGFyaW4gRmlzaGVyICA8ZGFyaW5AY2hyb21pdW0ub3JnPgogCiAgICAgICAgIFJl
dmlld2VkIGJ5IEtlbm5ldGggUnVzc2VsbC4KQEAgLTQ1MCw2ICs0NjksMTYgQEAKIAogICAgICAg
ICAqIHNyYy9qcy9UZXN0cy5qczoKIAorMjAxMS0wMS0yNSAgQWxleGV5IE1hcmluaWNoZXYgIDxh
bWFyaW5pY2hldkBjaHJvbWl1bS5vcmc+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChP
T1BTISkuCisKKyAgICAgICAgQWRkIGEgY2FsbGJhY2sgdG8gV2ViR3JhcGhpY3NDb250ZXh0M0Qg
dGhhdCBpcyBjYWxsZWQgd2hlbiBhIGNvbnRleHQgaXMgbG9zdAorICAgICAgICBodHRwczovL2J1
Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9NTMxNTMKKworICAgICAgICAqIHB1YmxpYy9X
ZWJHcmFwaGljc0NvbnRleHQzRC5oOgorICAgICAgICAoV2ViS2l0OjpXZWJHcmFwaGljc0NvbnRl
eHQzRDo6c2V0Q29udGV4dExvc3RDYWxsYmFjayk6CisKIDIwMTEtMDEtMjQgIFpoZW55YW8gTW8g
IDx6bW9AZ29vZ2xlLmNvbT4KIAogICAgICAgICBSZXZpZXdlZCBieSBEYXJpbiBBZGxlci4KZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvY2hyb21pdW0vc3JjL0dyYXBoaWNzQ29udGV4dDNEQ2hy
b21pdW0uY3BwIGIvU291cmNlL1dlYktpdC9jaHJvbWl1bS9zcmMvR3JhcGhpY3NDb250ZXh0M0RD
aHJvbWl1bS5jcHAKaW5kZXggOWI1YmYwODJiOGIzNWE0YjZiZDYzYzE5MjExMDU5MDVjZjNkNDgz
MS4uYzU1NDdjYTY5MWNiYTdhOTc2MzVhYmZmMTNlMTJhNjM3ODA1MGExOSAxMDA2NDQKLS0tIGEv
U291cmNlL1dlYktpdC9jaHJvbWl1bS9zcmMvR3JhcGhpY3NDb250ZXh0M0RDaHJvbWl1bS5jcHAK
KysrIGIvU291cmNlL1dlYktpdC9jaHJvbWl1bS9zcmMvR3JhcGhpY3NDb250ZXh0M0RDaHJvbWl1
bS5jcHAKQEAgLTEwODIsNiArMTA4MiwzNCBAQCBERUxFR0FURV9UT19JTlRFUk5BTF8xKGRlbGV0
ZVRleHR1cmUsIFBsYXRmb3JtM0RPYmplY3QpCiBERUxFR0FURV9UT19JTlRFUk5BTF8xKHN5bnRo
ZXNpemVHTEVycm9yLCBHQzNEZW51bSkKIERFTEVHQVRFX1RPX0lOVEVSTkFMX1IoZ2V0RXh0ZW5z
aW9ucywgRXh0ZW5zaW9uczNEKikKIAorREVMRUdBVEVfVE9fSU5URVJOQUxfMShzZXRDb250ZXh0
TG9zdENhbGxiYWNrLCBQYXNzT3duUHRyPEdyYXBoaWNzQ29udGV4dDNEOjpDb250ZXh0TG9zdENh
bGxiYWNrPikKKworY2xhc3MgR3JhcGhpY3NDb250ZXh0TG9zdENhbGxiYWNrQWRhcHRlciA6IHB1
YmxpYyBXZWJLaXQ6OldlYkdyYXBoaWNzQ29udGV4dDNEOjpXZWJHcmFwaGljc0NvbnRleHRMb3N0
Q2FsbGJhY2sgeworcHVibGljOgorICAgIHZpcnR1YWwgdm9pZCBvbkNvbnRleHRMb3N0KCk7Cisg
ICAgc3RhdGljIFBhc3NPd25QdHI8R3JhcGhpY3NDb250ZXh0TG9zdENhbGxiYWNrQWRhcHRlcj4g
Y3JlYXRlKFBhc3NPd25QdHI8R3JhcGhpY3NDb250ZXh0M0Q6OkNvbnRleHRMb3N0Q2FsbGJhY2s+
KTsKK3ByaXZhdGU6CisgICAgR3JhcGhpY3NDb250ZXh0TG9zdENhbGxiYWNrQWRhcHRlcihQYXNz
T3duUHRyPEdyYXBoaWNzQ29udGV4dDNEOjpDb250ZXh0TG9zdENhbGxiYWNrPiBjYikgOiBtX2Nv
bnRleHRMb3N0Q2FsbGJhY2soY2IpIHt9CisgICAgT3duUHRyPEdyYXBoaWNzQ29udGV4dDNEOjpD
b250ZXh0TG9zdENhbGxiYWNrPiBtX2NvbnRleHRMb3N0Q2FsbGJhY2s7Cit9OworCit2b2lkIEdy
YXBoaWNzQ29udGV4dExvc3RDYWxsYmFja0FkYXB0ZXI6Om9uQ29udGV4dExvc3QoKQoreworICAg
IGlmIChtX2NvbnRleHRMb3N0Q2FsbGJhY2spCisgICAgICAgIG1fY29udGV4dExvc3RDYWxsYmFj
ay0+b25Db250ZXh0TG9zdCgpOworfQorCitQYXNzT3duUHRyPEdyYXBoaWNzQ29udGV4dExvc3RD
YWxsYmFja0FkYXB0ZXI+IEdyYXBoaWNzQ29udGV4dExvc3RDYWxsYmFja0FkYXB0ZXI6OmNyZWF0
ZShQYXNzT3duUHRyPEdyYXBoaWNzQ29udGV4dDNEOjpDb250ZXh0TG9zdENhbGxiYWNrPiBjYikK
K3sKKyAgICByZXR1cm4gYWRvcHRQdHIobmV3IEdyYXBoaWNzQ29udGV4dExvc3RDYWxsYmFja0Fk
YXB0ZXIoY2IpKTsKK30KKwordm9pZCBHcmFwaGljc0NvbnRleHQzREludGVybmFsOjpzZXRDb250
ZXh0TG9zdENhbGxiYWNrKFBhc3NPd25QdHI8R3JhcGhpY3NDb250ZXh0M0Q6OkNvbnRleHRMb3N0
Q2FsbGJhY2s+IGNiKQoreworICAgIG1fY29udGV4dExvc3RDYWxsYmFja0FkYXB0ZXIgPSBHcmFw
aGljc0NvbnRleHRMb3N0Q2FsbGJhY2tBZGFwdGVyOjpjcmVhdGUoY2IpOworICAgIG1faW1wbC0+
c2V0Q29udGV4dExvc3RDYWxsYmFjayhtX2NvbnRleHRMb3N0Q2FsbGJhY2tBZGFwdGVyLmdldCgp
KTsKK30KKwogYm9vbCBHcmFwaGljc0NvbnRleHQzRDo6aXNHTEVTMkNvbXBsaWFudCgpIGNvbnN0
CiB7CiAgICAgcmV0dXJuIG1faW50ZXJuYWwtPmlzR0xFUzJDb21wbGlhbnQoKTsKZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJLaXQvY2hyb21pdW0vc3JjL0dyYXBoaWNzQ29udGV4dDNESW50ZXJuYWwu
aCBiL1NvdXJjZS9XZWJLaXQvY2hyb21pdW0vc3JjL0dyYXBoaWNzQ29udGV4dDNESW50ZXJuYWwu
aAppbmRleCAwYTcwNjEzNmM1ZTg0NmRmODFjM2YzMTZiYjhlODJmMTc3OWE1ZmI2Li5iZTljZTE2
ZGMzZmM1MDYzODhlZjM1YmYwY2E0MGEyNmM2YjIzYTUxIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2Vi
S2l0L2Nocm9taXVtL3NyYy9HcmFwaGljc0NvbnRleHQzREludGVybmFsLmgKKysrIGIvU291cmNl
L1dlYktpdC9jaHJvbWl1bS9zcmMvR3JhcGhpY3NDb250ZXh0M0RJbnRlcm5hbC5oCkBAIC00NCw2
ICs0NCw3IEBAIGNsYXNzIEV4dGVuc2lvbnMzRENocm9taXVtOwogI2lmIFVTRShBQ0NFTEVSQVRF
RF9DT01QT1NJVElORykKIGNsYXNzIFdlYkdMTGF5ZXJDaHJvbWl1bTsKICNlbmRpZgorY2xhc3Mg
R3JhcGhpY3NDb250ZXh0TG9zdENhbGxiYWNrQWRhcHRlcjsKIAogY2xhc3MgR3JhcGhpY3NDb250
ZXh0M0RJbnRlcm5hbCB7CiBwdWJsaWM6CkBAIC0yMzksNiArMjQwLDggQEAgcHVibGljOgogCiAg
ICAgdm9pZCBzeW50aGVzaXplR0xFcnJvcihHQzNEZW51bSBlcnJvcik7CiAKKyAgICB2b2lkIHNl
dENvbnRleHRMb3N0Q2FsbGJhY2soUGFzc093blB0cjxHcmFwaGljc0NvbnRleHQzRDo6Q29udGV4
dExvc3RDYWxsYmFjaz4pOworCiAgICAgLy8gRXh0ZW5zaW9uczNEIHN1cHBvcnQuCiAgICAgRXh0
ZW5zaW9uczNEKiBnZXRFeHRlbnNpb25zKCk7CiAgICAgYm9vbCBzdXBwb3J0c0V4dGVuc2lvbihj
b25zdCBTdHJpbmcmIG5hbWUpOwpAQCAtMjY1LDYgKzI2OCw3IEBAIHB1YmxpYzoKIHByaXZhdGU6
CiAgICAgT3duUHRyPFdlYktpdDo6V2ViR3JhcGhpY3NDb250ZXh0M0Q+IG1faW1wbDsKICAgICBP
d25QdHI8RXh0ZW5zaW9uczNEQ2hyb21pdW0+IG1fZXh0ZW5zaW9uczsKKyAgICBPd25QdHI8R3Jh
cGhpY3NDb250ZXh0TG9zdENhbGxiYWNrQWRhcHRlcj4gbV9jb250ZXh0TG9zdENhbGxiYWNrQWRh
cHRlcjsKICAgICBXZWJLaXQ6OldlYlZpZXdJbXBsKiBtX3dlYlZpZXdJbXBsOwogICAgIGJvb2wg
bV9pbml0aWFsaXplZEF2YWlsYWJsZUV4dGVuc2lvbnM7CiAgICAgSGFzaFNldDxTdHJpbmc+IG1f
ZW5hYmxlZEV4dGVuc2lvbnM7CmRpZmYgLS1naXQgYS9Ub29scy9nZGIvd2Via2l0LnB5Yy0yLjQg
Yi9Ub29scy9nZGIvd2Via2l0LnB5Yy0yLjQKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uYzE2MDcxMTg5ZDBhZjE3MmQ2
ZjEwMDZiMzgwZWNjYzg1OTA1M2RhZApHSVQgYmluYXJ5IHBhdGNoCmxpdGVyYWwgMTAwNDgKemNt
Y2d5JnZWPkhjNWNpSmhjaEVtcURoSGI/eWtMJU9zeihhT3hwNVYrO0c+c3drZ1Z6ZX5oPndZMSFK
eVNQO04pCnpBa0Z8STAzKFNCPkJDQnUtXm5mNFJKa2dacyNLLSYyam1hUEM2JU83c3BPYmM8Jlo8
RmE+KiZqZUJXeVRHbyhtSwp6QHchM0BKJm8/aD4mRS0+Xj9SPztgfHJze153cV5yVCRUTm1AJXR7
V1dacUU5UXxiOyVMK3UjcWp2PHdqeD5KJSQKelM9fWtLOys1MUJeb31YN3RvKjhLcW90eXJERF95
VyYrbSpZWiVwfikocG9LQVlzd3FYVFdkdllVM3ZBcXdOYlAtCnpseUBSO29oVnZRQ35xPXZKejJD
KUREUEM+SSNza3pEKHxKZGItSExoc2t8QjAjPjxeOW5vY1MyM34lbUNEU3dMVgp6SEBzUXA4IUM4
NylfPUFiSUlhOT8tRVhNJT1De2JMemU0ZkJ3ZkRfcihDPGZhWVBPQDt5ek9zJjZyXlVsK3hMQCYK
ek0mbXV0R3QqOXhtfXpBME11WFZnX097SGVVRE42THAlO1lQeTc5fSExKylodDkmezNyPjJ7LXMk
I1RPcWBAM2w7CnozUS1BcUdERVZQOzBFUEYtJF4/UUw3NGIpK0ktYChkNDc9JWkpbj1hUTghcnh4
eUFGQmg3VWdVd3wwV0coUS0+egp6XkVqPzV0YCVIS2dDYU43ZXAmNTdpVmJ6SXJsUXxoIy1wfU1B
IT4tZHRSOSF0d1khXll6b0s/OHQ4YDU1RFlhS28KelhNPUlfPEZSUE55XkBNZkM8RCM9aEZTe15X
ISUzMXM7WjxsYis0aEspNV5lfj8oe0lFdGslJExlMV91b2FNbWdDCnpldkhxMVJTdm9UN3M/MUht
QjklT1BKXkNwcjdIVlh1MXEmd3laYlZpd1RHc3NtbzxJPXVob3x6SEt4KU5EdUFBaAp6XlFxSCZX
OWtuZlV1WHphdmQpKj1GUjRCSkZSUWNiJUBnRndwT1pPSl95RWlgOWtVKz1WZH0+ZTtwV0VtKldi
S3EKemRRUiQ/WHBHUmlDTCVJNyFAIUxeLSVRZE5WdWo+UXtQb2s9YlZBU1VgciZya0ZgZHtxdzwx
Jl5vck89Rz8hWSZyCnp0JFYoa0xRXj5XVzstN1ZnJkJsTi0qPHl7O0NxK05oZTVZJVpWJnQ8RiYh
dlokSWt7WHEqJHA2Yld1fWtAQ3ZHQwp6bFM8WnNHNmtYSXhfQnRxPmlUQlM/P3YoTXI5ZVU4Z1lP
cE8rUio/ajM/bm0qb3VFc1ZZO0FzZ0RhOWFsQmNZWkkKeihsKntYclA5UUh6dzVZdXQ5YzRIO0o4
eCRCUnJPSm4xMDghZkAmKVllUUEzWEpLP3Izdjt4UXNELUJjbTEhRXUrCnpENHJrdFpDcykycnhV
b2gyNE5jWHtNOSZ5SiZ+MENeRWRDTmJ5VkRyNldiNCpaWCQlaTwkO15aaGAhX1FOU28oVgp6MENf
aUZxeyReKWVBcHI+Pm0/UmtnKFYlNnRafnZORT91T25zNGFHKXAxPGh5OTApUlNKTnw9M2NoVCp7
WSlvUXoKejUhTWBnY0hmRTktOT5IZWl5TVc+WCl7fVoqPmJYaFJ0N3RiWStkXmBHJHR9I01IeTlO
dk5XWnRNJWoyN159MkRnCnpSSzsoQG1fJks5RypNYkkmWC1heWEkUXR2NGE8UVJ4QGVGOzNnfkBZ
aUhRUGdLJlZEM0lRO3xfRjx3P0clMzUjbwp6d1VmNnx0Yj5vZlhOczxGYFJQTzc0XjF5PGl4QVJH
ZHRkSyFFfjxqdGImfHdTMVR9fnB5akRueD53Ky0+MzJhQ2EKeldTZC0xdEh9VyhWVGVrXmxsYX1Y
dnw2KzF2ZCo5d140cHJgYU9rYkZaSzl1VGV9c0JNQkZiPHtGfjROZTNLe0BhCno+cTQoM14zPTNB
TzZWVVpQNFJqYDA8R1AoSjl3dVM/bGJhRHMmNilUMnNwT3d3MUYxZT9uVTA5JVVmIVJaRmBZeAp6
K3R5anNFclJ9VjJDMnkjU2Z8bCg2UE1WXzFpLUllUFdmdF5FOHpCWCM3RHxVaVZzcEZCTjhmJjI7
WCF9QV42JmwKeiUhZT4lWHhDQVlQX1hUUXRTfCMpNl9ramh4dlohWSkobmZHWHBaRzEmOFgxaDRj
ejJ4cSlAQ203VDsjXjlUcVI2CnpJRmVDPjlTY3smcl51KzNRe1VkV3skM2pPMHsyJkM2Xz01LTNQ
aEtlTjY5fFQ3JE9rNDA/UlNmVCY3bHs2MX5ofAp6NHtQcG0/MiRLeSpZeCRjTGVUejw0O05nUyFX
fn1WSXM3bSY+UFhlMGR2P0lgRGRodTwoVWhOTiQ/Rig2V0NgZloKel49c0ljJVc5b19gb1NMVDxY
e0BqczNvWXx2KkQkNVduMVhrSz09U1grUU5GYS1XXl8pb25uZERJSV9vbjBYa3dACnolOXU4NEx0
dmwrM295S2NpZUI0ZUs/ciZ5VHl7dz5KSF9TPkYjezNIWUwyVWhuPXgwNmhYYihRPFBPJTcxPE9S
dQp6YU0wfnV2ZCpFXkkqJWZJS2tvWllRRnlWS2QzSzhkMzlMTytJZWQmd1lBQlIzVzdKQSMzfU1g
MSF4NChkVDkxalIKenpyWnp3bks5WENLM3JlZntLaXp9RyR6UFoxJSNLRUd0JUZmdF8tOzx7SSpg
amdmRlRYNzh3LWZFY3BMVzJjbmY0CnpGND8rKCtwbm50Rng2aksxLT1nJko8XzRWJTEkJHVRZXUk
UVAwej1zNFN6OGZAZzN6VkphQDAqZkNJdUc1LXNGawp6U1kxWXFoOXE5YysrKD1haCEqRyNhUHco
ZC0kU1hII2RRejI4TkVSfihfWCZCMTdCOzR4cmhnYHEhQlJYUDdNQmgKenhjKGQpY2BrUW88cDtR
dmxZRSp0WnxQTkpUTUt8RmhvbFRpR2YyWUQxMmBKdG8xbSRmZ2Y8UzRRUjBhNz09PWArCno1IUte
ckVhOXNGI3h1RzMxWTw+SWx5TXM5cXA3XjtycD14Rm1uMlhAQSk3V2dkSEI5N1FTQVMwO0IrTk9Y
fkJtJgp6UmBEKzNmb0piamZNelRiODNuaktvRzBPP21AXytAWWtCIz1ZPXVgXlh5aVpXWCVLS2cx
QXl6JE1qYTtfKng9RCoKekJWbk57Um9NfEwzfj1ZN0tZPF5EKmJzV0c4fWUtZWFeWFdZTj9AY0hu
QDEpIV9TVTdWcmgqMUZwRGh4SjF+UyNYCnppaSp6WmVHflVwYihVbzYqO3dBI1JkeFN3Xj88eHR3
e3BBblhpNC0hXzBBK0hsKHtFOyM3KTU/RikjX0Z1KXt7Swp6KTE/cmdiRmUhNEhuSjVYSXBOM0ZZ
cS1fK009Y2pPVHcpN05DKTtPcm19SyhGbFBJI2p6NzlPWnBfTkgmYWhKMVoKekxGQnttamZiYFdy
YD07dGBOeX50QjkkXmA1JHF0YEY8dlJYUWtwaVZqQzE5fWV6XjElal50YURTM19APWhAIyhzCno+
TEtCVit6JE9ySj1ye1p7fWZqUzl0Q01XRlFtREhZU05HdylGSFBfSXQlWT1RMyN3LWNJV2tkblZQ
fVRORD1WUwp6dkYhZnJkVSFJSXR7JDsyR1VFIUxAK0txPFVLVVM3elh3LXBFd0VUKktgWFoyS3lt
IUxhbVpKPTU9Slc4ayhlXmgKem1vPzJwPH03bFNEVVM2Z3MxJCFkYWBhMUoqcm9hdTArLUQ5ezFr
Yks9Jjd4d2pGSXAya3lSOWpFVj5OX2lRQEBRCnplYWBxKG4+MWBuYSlabmtqKXs/MVgkbnRaP2M9
bXxpYVBsbGgtV1NLKHskSSZLdCFAPmp3eD11VVEzbyMqK0JMcQp6OGw/Un1ZRFI2SFQhV19hJHhK
MHBXS1dXeTdqenhUKilVciY5R3w0I142fj9Ed35OZkJBeFUlS1ZkUHBtaTI2eG0KejN5Rn5+ViZ4
ei13X1BgemVmNXo4QylZUWJWbkprXzFXey12b29MV1NtTTRtSyV4PHZiR2puSDM3VXEpS0h5X0J8
Cnp7OUVRYnFjNmo/WEtBNk8lY2tvZmpTPTcja1goQWx7NEtQK2lSJWlrd3taT2MqVzArUkY3MXl7
UFcpOEF2RlVleAp6cSFaSmBkfjJrO24zeG50eGNGaWRGRHh0XkoobTs1JmhBbXVFZDN2Kms+XmN3
PjJnLVYlVnhESk9JWmFBa2xOOSEKekRCayRXOCpqKWtybzJYJntsamwpRzVOOX1nPX00ck1PSzRF
dmY1Uj5YdVZWYz0kcHZZSTR+YTx4LUVZTUhuRSNtCnpRT1dHYTVFfXMyPXhBLWtWNnJ7MTw8aWBF
NzJyaldEJEJkKnEkUmN4Smc3RytTWCR3R2lUanspOVB9eFk2YlVQVgp6OW0mY0JzbyNeQnJqNHtx
KHZna0FNSXRiak0zSUs0QUspP1REdkhBaE9KdzxiKHhlWkhUbkdMWUN8ZHd7MXptdjMKekpsRFc+
NGNFZ09wQkNCJihtPiN4WlR9T3hNZ2N0TSF3VENTNmRKJTtZUypmUEV4ZkZMWHtiQypsfChmOUU4
Tm8hCnp3TiRjXkNZQjhhPT4xcXAmWD5Jc2A9Yn1YVjVwJkhrcUtAeUJJSn1VKi1PUm1gU31JIXUx
K1hRPT1VfnlnKmpQPAp6RjZ3S00wfWlZdV83UzFRYW0hUzdndDV9VWpRJkg2NzBIQ2lzUXdIMzY3
SWwrX3kqV31POHk7PTd6Tj5maCo4IyQKelB6O0Y7ZDF9IU97WDFNRERrS0BsPmdCPn5Eczx7dXhq
Z1h7d0JSXmlZbGNMLXhFcW40QipefWFHalcqRzNjKUlzCnpQbyNEazYpZ2FXVn4hV3tgRF9wJFAz
dHRKMGYrM1lneWJUQyUtemA8RmhpTHw7WXNrRFB4LTszdGJFJU1TQT1hdAp6dF8rcFQ/RjN5OUlw
PT56enNPYkBGQVgpZ1NuI1hwI3hraUVxQnEjaXZaTWpfR2Y1JHwlVzVgRDlWRmt5PW5LZ1IKenhM
IWNvekpUPSRVUDZhIzFjdDQ1YUJ1dz5nKE4kQWMwUDlHMSUlSlgqXkJyS3xBRlU2SW5LZW5neVM/
cHlnOzdVCno7KUBBLVlufmlTbXMhc0wjRmYhKSk9KXAzcnkhP3dQVl5fTmlSKkd+Y0p2Qnt7M1dp
MCsxUUVpc25YMUp5PEQlPAp6RD16S0ArQmdOcG8lfFVKcHJmYCp4WmVucVYyb0xkQnJqcCoheGpY
YTcqaVEoZnQhWXd2NV4qN0o2ZG8/Uzx0Q1UKejMoaEJ0NzkzPEBPcFB0PWFySnZqe1NHKStRQDso
RUtzeWVQO0cwaHJwIylLX2opa0BvQ2klWUA1JGNaQFVpLTs+CnpHRT1tVXJYU31lWFJiJTxLeSpH
SyVmMmB8eFMxQ0tfK201ekdxMn45cmVSekBwWVNrNzU2dDd5ZDYmezlKZD4tIQp6Kj8mZXc+b0x5
NWEwQ1kyMVM8aUtiYm9SMyN3SERuVjtWem80QE47MmE+fCFJUkZsJi1JTDV6QDZUKytOY05Hbz4K
elVzSno8QlF6WSgzNFc0S0I3fSZadkRnbEh5TUJMRDhNdGw+SlF1VDElSXIoUD92dGA2UyU5N3Y1
QWpHK19CSmpOCnopWm0lbzRUUmMxRG5rT0s5SDxqbylBZDI8cnU0QEszQXtFTyZVR1dsSkxLTGEk
ZXJeblpPYj9OSmxjP1BJS3kzIwp6RWx8P3l0dEp4Jkl6KnhnQGhEZklTJm87O08heWlDYHh+Rkh0
PWNRTXVDM2JFPlU5QXA/Nk9FKE48PW1ZQDhfWWgKekx7a1k4cUo1amhKaW5kRDhBPEFGcnhjI3tL
PCYoWk8kNzdXKn57ZFM4MnNDT2ZYdE5tUFY5Q0xFbnt1TjYyaDJFCnpaemMhX0VoM1hlPEpWeVZM
Qjt4ciNtNmt4U2xuZHNKXztScmU4P0l1cjdARkJxO0VVdSt4ZT5nMlRoNUkwJShLJQp6WCREYztH
PTlnOGFse2MqIyV5V0VfIWJWYnJpfl55N2cjYVI0ck0hWnFoM0dnYFc4WEtWdktLQEVFdE9EV1g0
Ni0KeklKP0RWU1UrUU40VFplNSk5PlRsVHRqNWhFbFZBKVRyWmtOPXkqNyY2WW9BfVVHaVVPJmlz
fXFqZnJWRmV2cDc7Cno0YWVzamtyaFNoTzRSRyYoQUxGQmBKKlkzSH1ieEtxOEIpNTxEeFMlNjJe
I1JkN2NKYT1ocCEobylvOUNGUHtpNwp6UkBoOU9aR1R6Ml5FfTloPnhoK0A0eyEkUTtPdGYrWm4w
QERoRHkxQDEkYGR7N0JyZ2YwTno5THV3PDY3LSpUMmsKenBhZmModmYmKFRJRVZJV1VQcmd9REdU
diMjSXEybFF9ISNqS0tiT20pLWAqNWI4WVJHd0lNbyh3elpFfUgmKlN8Cnp0PTgpQzBWQGZlIUow
RmNQdmRBKWR8R2FYI2NOIV9mS2t4akFKMTxFQG9+UC1VSjFiVzgpfG4+Wm1SXlF5QHI0Pwp6O0hM
fnwwZzQkc3NgJWlCMlojbmZlMUAkUjJvbEtZS2NRQHJmSlM1eTJ4UEI3NzRoWE9XbyFmUD4qfj1C
SmA9cVEKel5hQVB3YXMtOSZJbXE2KTNnaW5BNUN+PlNpR0lNZ3RrS3sheCgoU09lIVRFVV95VTY4
Rjt2eH5ISTwlR0FjcDdnCnoyP0VtIWk8PFo+aVJ7PC1gTjlXI18heXo0PUh6IUF6YzxpYHVNXklL
ITJOIyh0cT5rQXpSbXpsJis3TSsze05ZTwp6WGtEa2BtWH13dksjKWRQWSU1ZkA8USFVQjV4IUpH
WHEjKSpXZlJ9NDFSP1RAMGJyMFEkNmMqdzFEMlJhJTNMcDsKemJSKUwzKDM1PjxLb3UwPDAzVnt6
c2F1Y1ljejQ7blg/anQzRipTRj49JUx4YzFweE1acndoRXI3WX1mYWNLdmlnCnp6TUlrSk9jbHNi
TWRxZStrb240amxDcWMoWXU5JmxoakVzU3p9QCVrY0ZncT0ofXVPeyhwRSFUPl5tTl5yTGpPRQp6
MDlwSTZ4Nm1VUFhJKkZRMWA1R3g0Y1U0VVFiZVRXP3BQYl9yaVF2c2tfdkVUVXg1ckFgIyNfV0ha
OEx0bDklNnAKeilSKDlGUDdzVEx2Xn18YCMtKzlLOEcjS2IqR3BuMSU3VSZjdEhhX2hpeWFtfGko
akI8O3U/aXdadDBMJXdCdnU5CnpSej56Smk0NyszOE5uUWBGPVRoWTEzYm9PMSF+OzVUc25ofjNk
KEI2bUB2KjVHb2B+M2dkRW4ydkc/K000JFVaXwp6RnZZbnpeK1h2dHFPbTVpUlVoPFRWfng2RFE5
aVFFJGJwIUV3Zj9xNjQjKUstRz16STFtby1Gc0w0Vm0xSHFqeU0KeiZmcnQjbShOV3NjSWp6XjRp
fkVUNCM2IVVBcnhpNWxRcWZlV0diUDNub25AO2h1JT5WYjNkSSZNeyp1VHdadz9GCmNVWT5ZbXdt
d19NemY8XkVNZzgyJmR2JFpYSmFeJUwwbn5KeztzNXt1CgpsaXRlcmFsIDAKSGNtVj9kMDAwMDEK
Cg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>81300</attachid>
            <date>2011-02-04 15:08:25 -0800</date>
            <delta_ts>2011-02-04 17:40:55 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-53722-20110204150824.patch</filename>
            <type>text/plain</type>
            <size>15287</size>
            <attacher name="Alexey Marinichev">amarinichev</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJDb3JlL0No
YW5nZUxvZwppbmRleCBmOTFmNDU3N2M1OTM4ZTFiYTQ3ZWUzZDhkOWY1NDYyNGQ1MDBlNzMxLi44
YzdjY2UwNzEyNzU4NGExOTlhYjhkNzg1NGEzZDEwMjU4MmRlMTNkIDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViQ29yZS9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCkBAIC0x
LDMgKzEsMjQgQEAKKzIwMTEtMDItMDMgIEFsZXhleSBNYXJpbmljaGV2ICA8YW1hcmluaWNoZXZA
Y2hyb21pdW0ub3JnPgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisg
ICAgICAgIEhvb2sgdXAgV2ViR3JhcGhpY3NDb250ZXh0M0Q6OnNldENvbnRleHRMb3N0Q2FsbGJh
Y2suCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD01Mzcy
MgorCisgICAgICAgIFRlc3Q6IGZhc3QvY2FudmFzL3dlYmdsL2NvbnRleHQtbG9zdC5odG1sLCBj
b21tZW50IG91dCB0aGUgbGluZSB3aXRoCisgICAgICAgIGV4dGVuc2lvbi5sb3NlQ29udGV4dCgp
IGFuZCBraWxsIHRoZSBHUFUgcHJvY2VzcyAiTG9zZSBjb250ZXh0IgorICAgICAgICBtZXNzYWdl
IHNob3dzIHVwLgorCisgICAgICAgICogaHRtbC9jYW52YXMvV2ViR0xSZW5kZXJpbmdDb250ZXh0
LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OldlYkdMUmVuZGVyaW5nQ29udGV4dExvc3RDYWxsYmFj
azo6V2ViR0xSZW5kZXJpbmdDb250ZXh0TG9zdENhbGxiYWNrKToKKyAgICAgICAgKFdlYkNvcmU6
OldlYkdMUmVuZGVyaW5nQ29udGV4dExvc3RDYWxsYmFjazo6b25Db250ZXh0TG9zdCk6CisgICAg
ICAgIChXZWJDb3JlOjpXZWJHTFJlbmRlcmluZ0NvbnRleHQ6OldlYkdMUmVuZGVyaW5nQ29udGV4
dCk6CisgICAgICAgICogcGxhdGZvcm0vZ3JhcGhpY3MvR3JhcGhpY3NDb250ZXh0M0QuaDogYWRk
ZWQgc2V0Q29udGV4dExvc3RDYWxsYmFjaworICAgICAgICAqIHBsYXRmb3JtL2dyYXBoaWNzL21h
Yy9HcmFwaGljc0NvbnRleHQzRE1hYy5tbToKKyAgICAgICAgKFdlYkNvcmU6OkdyYXBoaWNzQ29u
dGV4dDNEOjpzZXRDb250ZXh0TG9zdENhbGxiYWNrKTogc3R1YgorICAgICAgICAqIHBsYXRmb3Jt
L2dyYXBoaWNzL3F0L0dyYXBoaWNzQ29udGV4dDNEUXQuY3BwOgorICAgICAgICAoV2ViQ29yZTo6
R3JhcGhpY3NDb250ZXh0M0Q6OnNldENvbnRleHRMb3N0Q2FsbGJhY2spOiBzdHViCisKIDIwMTEt
MDItMDIgIEx1aXogQWdvc3RpbmkgIDxsdWl6LmFnb3N0aW5pQG9wZW5ib3NzYS5vcmc+CiAKICAg
ICAgICAgUmV2aWV3ZWQgYnkgRGF2aWQgSHlhdHQuCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29y
ZS9odG1sL2NhbnZhcy9XZWJHTFJlbmRlcmluZ0NvbnRleHQuY3BwIGIvU291cmNlL1dlYkNvcmUv
aHRtbC9jYW52YXMvV2ViR0xSZW5kZXJpbmdDb250ZXh0LmNwcAppbmRleCBmN2RmNTZjODBlODZh
YzA4YmRmNDIyNzRkZGE0MWU1Nzk4Njc2OTg3Li5mMThhODkwMDM4ZGZkMGI2MzdjNjc5NDQxM2E4
MmQ2YmY2YTY4NWU3IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9odG1sL2NhbnZhcy9XZWJH
TFJlbmRlcmluZ0NvbnRleHQuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvY2FudmFzL1dl
YkdMUmVuZGVyaW5nQ29udGV4dC5jcHAKQEAgLTM0MSw2ICszNDEsMTQgQEAgdm9pZCBXZWJHTFJl
bmRlcmluZ0NvbnRleHQ6OldlYkdMUmVuZGVyaW5nQ29udGV4dFJlc3RvcmVUaW1lcjo6ZmlyZWQo
KQogICAgIH0KIH0KIAorY2xhc3MgV2ViR0xSZW5kZXJpbmdDb250ZXh0TG9zdENhbGxiYWNrIDog
cHVibGljIEdyYXBoaWNzQ29udGV4dDNEOjpDb250ZXh0TG9zdENhbGxiYWNrIHsKK3B1YmxpYzoK
KyAgICBXZWJHTFJlbmRlcmluZ0NvbnRleHRMb3N0Q2FsbGJhY2soV2ViR0xSZW5kZXJpbmdDb250
ZXh0KiBjYikgOiBtX2NvbnRleHRMb3N0Q2FsbGJhY2soY2IpIHt9CisgICAgdmlydHVhbCB2b2lk
IG9uQ29udGV4dExvc3QoKSB7IG1fY29udGV4dExvc3RDYWxsYmFjay0+Zm9yY2VMb3N0Q29udGV4
dCgpOyB9Citwcml2YXRlOgorICAgIFdlYkdMUmVuZGVyaW5nQ29udGV4dCogbV9jb250ZXh0TG9z
dENhbGxiYWNrOworfTsKKwogUGFzc093blB0cjxXZWJHTFJlbmRlcmluZ0NvbnRleHQ+IFdlYkdM
UmVuZGVyaW5nQ29udGV4dDo6Y3JlYXRlKEhUTUxDYW52YXNFbGVtZW50KiBjYW52YXMsIFdlYkdM
Q29udGV4dEF0dHJpYnV0ZXMqIGF0dHJzKQogewogICAgIEhvc3RXaW5kb3cqIGhvc3RXaW5kb3cg
PSBjYW52YXMtPmRvY3VtZW50KCktPnZpZXcoKS0+cm9vdCgpLT5ob3N0V2luZG93KCk7CkBAIC0z
NjcsNiArMzc1LDcgQEAgV2ViR0xSZW5kZXJpbmdDb250ZXh0OjpXZWJHTFJlbmRlcmluZ0NvbnRl
eHQoSFRNTENhbnZhc0VsZW1lbnQqIHBhc3NlZENhbnZhcywgUGEKICAgICBBU1NFUlQobV9jb250
ZXh0KTsKICAgICBzZXR1cEZsYWdzKCk7CiAgICAgaW5pdGlhbGl6ZU5ld0NvbnRleHQoKTsKKyAg
ICBtX2NvbnRleHQtPnNldENvbnRleHRMb3N0Q2FsbGJhY2soYWRvcHRQdHIobmV3IFdlYkdMUmVu
ZGVyaW5nQ29udGV4dExvc3RDYWxsYmFjayh0aGlzKSkpOwogfQogCiB2b2lkIFdlYkdMUmVuZGVy
aW5nQ29udGV4dDo6aW5pdGlhbGl6ZU5ld0NvbnRleHQoKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dl
YkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvR3JhcGhpY3NDb250ZXh0M0QuaCBiL1NvdXJjZS9XZWJD
b3JlL3BsYXRmb3JtL2dyYXBoaWNzL0dyYXBoaWNzQ29udGV4dDNELmgKaW5kZXggNDdiOTUzZWIz
NjJiYTc0MDlkYTQ3OGVmODViZGE0NmQzYzFhNGZmOC4uODU4MDEwZTJkMDcyYmJlOWJkZmJkNWI5
MjExNGE4OTI4YzY5MGQ0MSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3Jh
cGhpY3MvR3JhcGhpY3NDb250ZXh0M0QuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9n
cmFwaGljcy9HcmFwaGljc0NvbnRleHQzRC5oCkBAIC00NTQsNiArNDU0LDEzIEBAIHB1YmxpYzoK
ICAgICAgICAgUmVuZGVyRGlyZWN0bHlUb0hvc3RXaW5kb3cKICAgICB9OwogCisgICAgY2xhc3Mg
Q29udGV4dExvc3RDYWxsYmFjayB7CisgICAgcHVibGljOgorICAgICAgICB2aXJ0dWFsIHZvaWQg
b25Db250ZXh0TG9zdCgpID0gMDsKKyAgICB9OworCisgICAgdm9pZCBzZXRDb250ZXh0TG9zdENh
bGxiYWNrKFBhc3NPd25QdHI8Q29udGV4dExvc3RDYWxsYmFjaz4pOworCiAgICAgc3RhdGljIFBh
c3NSZWZQdHI8R3JhcGhpY3NDb250ZXh0M0Q+IGNyZWF0ZShBdHRyaWJ1dGVzLCBIb3N0V2luZG93
KiwgUmVuZGVyU3R5bGUgPSBSZW5kZXJPZmZzY3JlZW4pOwogICAgIH5HcmFwaGljc0NvbnRleHQz
RCgpOwogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9tYWMv
R3JhcGhpY3NDb250ZXh0M0RNYWMubW0gYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGlj
cy9tYWMvR3JhcGhpY3NDb250ZXh0M0RNYWMubW0KaW5kZXggODc3N2VjY2I2MDVkNmU4M2M5MzQy
MWFhZDgxMjAxMmFiMWZhNDUxYS4uYWFhMjUwYjJjZmVkMjdlMDUyMGRmZTMyNzFmYmU5MmU5NDYy
NGU0MCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvbWFjL0dy
YXBoaWNzQ29udGV4dDNETWFjLm1tCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBo
aWNzL21hYy9HcmFwaGljc0NvbnRleHQzRE1hYy5tbQpAQCAtMjQ1LDYgKzI0NSwxMCBAQCBib29s
IEdyYXBoaWNzQ29udGV4dDNEOjppc0dMRVMyQ29tcGxpYW50KCkgY29uc3QKICAgICByZXR1cm4g
ZmFsc2U7CiB9CiAKK3ZvaWQgR3JhcGhpY3NDb250ZXh0M0Q6OnNldENvbnRleHRMb3N0Q2FsbGJh
Y2soUGFzc093blB0cjxDb250ZXh0TG9zdENhbGxiYWNrPikKK3sKK30KKwogfQogCiAjZW5kaWYg
Ly8gRU5BQkxFKFdFQkdMKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3Jh
cGhpY3MvcXQvR3JhcGhpY3NDb250ZXh0M0RRdC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9y
bS9ncmFwaGljcy9xdC9HcmFwaGljc0NvbnRleHQzRFF0LmNwcAppbmRleCA2NGI4YWQxMGE4MDVh
YjM1NWQ1ODg0MmMwZjk2NDZlNWE0OTk2MWZjLi44Yjg3ZjVmMDQ4MzRiNzYwOTg2ODg3NDYxOWJj
MDdkMzc2YTRlZTJmIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGlj
cy9xdC9HcmFwaGljc0NvbnRleHQzRFF0LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9y
bS9ncmFwaGljcy9xdC9HcmFwaGljc0NvbnRleHQzRFF0LmNwcApAQCAtMTY0Nyw2ICsxNjQ3LDEw
IEBAIGJvb2wgR3JhcGhpY3NDb250ZXh0M0Q6OmdldEltYWdlRGF0YShJbWFnZSogaW1hZ2UsCiAg
ICAgICAgICAgICAgICAgICAgICAgZm9ybWF0LCB0eXBlLCBuZWVkZWRBbHBoYU9wLCBvdXRwdXRW
ZWN0b3IuZGF0YSgpKTsKIH0KIAordm9pZCBHcmFwaGljc0NvbnRleHQzRDo6c2V0Q29udGV4dExv
c3RDYWxsYmFjayhQYXNzT3duUHRyPENvbnRleHRMb3N0Q2FsbGJhY2s+KQoreworfQorCiB9CiAK
ICNlbmRpZiAvLyBFTkFCTEUoV0VCR0wpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L2Nocm9t
aXVtL0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJLaXQvY2hyb21pdW0vQ2hhbmdlTG9nCmluZGV4IDEx
YTM3Yjc0ZGNiMThhNDY2NTZmNGRiN2QyYmFjMzRlZWRiNTZkNzkuLmJlZmNmNjVmZTU3YWY1M2Jh
Yzk3ZGQ3NWFlYjFmODAyNmNhNTY5Y2MgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvY2hyb21p
dW0vQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9XZWJLaXQvY2hyb21pdW0vQ2hhbmdlTG9nCkBAIC0x
LDMgKzEsMjIgQEAKKzIwMTEtMDItMDMgIEFsZXhleSBNYXJpbmljaGV2ICA8YW1hcmluaWNoZXZA
Y2hyb21pdW0ub3JnPgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisg
ICAgICAgIEhvb2sgdXAgV2ViR3JhcGhpY3NDb250ZXh0M0Q6OnNldENvbnRleHRMb3N0Q2FsbGJh
Y2suCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD01Mzcy
MgorCisgICAgICAgIFRlc3Q6IGZhc3QvY2FudmFzL3dlYmdsL2NvbnRleHQtbG9zdC5odG1sLCBj
b21tZW50IG91dCB0aGUgbGluZSB3aXRoCisgICAgICAgIGV4dGVuc2lvbi5sb3NlQ29udGV4dCgp
IGFuZCBraWxsIHRoZSBHUFUgcHJvY2VzcyAiTG9zZSBjb250ZXh0IgorICAgICAgICBtZXNzYWdl
IHNob3dzIHVwLgorCisgICAgICAgICogc3JjL0dyYXBoaWNzQ29udGV4dDNEQ2hyb21pdW0uY3Bw
OgorICAgICAgICAoV2ViQ29yZTo6R3JhcGhpY3NDb250ZXh0M0RJbnRlcm5hbDo6aW5pdGlhbGl6
ZSk6CisgICAgICAgIChXZWJDb3JlOjpHcmFwaGljc0NvbnRleHRMb3N0Q2FsbGJhY2tBZGFwdGVy
OjpHcmFwaGljc0NvbnRleHRMb3N0Q2FsbGJhY2tBZGFwdGVyKToKKyAgICAgICAgKFdlYkNvcmU6
OkdyYXBoaWNzQ29udGV4dExvc3RDYWxsYmFja0FkYXB0ZXI6Om9uQ29udGV4dExvc3QpOgorICAg
ICAgICAoV2ViQ29yZTo6R3JhcGhpY3NDb250ZXh0TG9zdENhbGxiYWNrQWRhcHRlcjo6Y3JlYXRl
KToKKyAgICAgICAgKFdlYkNvcmU6OkdyYXBoaWNzQ29udGV4dDNESW50ZXJuYWw6OnNldENvbnRl
eHRMb3N0Q2FsbGJhY2spOgorICAgICAgICAqIHNyYy9HcmFwaGljc0NvbnRleHQzREludGVybmFs
Lmg6CisKIDIwMTEtMDItMDEgIERhcmluIEZpc2hlciAgPGRhcmluQGNocm9taXVtLm9yZz4KIAog
ICAgICAgICBSZXZpZXdlZCBieSBLZW5uZXRoIFJ1c3NlbGwuCkBAIC00NTAsNiArNDY5LDE2IEBA
CiAKICAgICAgICAgKiBzcmMvanMvVGVzdHMuanM6CiAKKzIwMTEtMDEtMjUgIEFsZXhleSBNYXJp
bmljaGV2ICA8YW1hcmluaWNoZXZAY2hyb21pdW0ub3JnPgorCisgICAgICAgIFJldmlld2VkIGJ5
IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIEFkZCBhIGNhbGxiYWNrIHRvIFdlYkdyYXBoaWNz
Q29udGV4dDNEIHRoYXQgaXMgY2FsbGVkIHdoZW4gYSBjb250ZXh0IGlzIGxvc3QKKyAgICAgICAg
aHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTUzMTUzCisKKyAgICAgICAg
KiBwdWJsaWMvV2ViR3JhcGhpY3NDb250ZXh0M0QuaDoKKyAgICAgICAgKFdlYktpdDo6V2ViR3Jh
cGhpY3NDb250ZXh0M0Q6OnNldENvbnRleHRMb3N0Q2FsbGJhY2spOgorCiAyMDExLTAxLTI0ICBa
aGVueWFvIE1vICA8em1vQGdvb2dsZS5jb20+CiAKICAgICAgICAgUmV2aWV3ZWQgYnkgRGFyaW4g
QWRsZXIuCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L2Nocm9taXVtL3NyYy9HcmFwaGljc0Nv
bnRleHQzRENocm9taXVtLmNwcCBiL1NvdXJjZS9XZWJLaXQvY2hyb21pdW0vc3JjL0dyYXBoaWNz
Q29udGV4dDNEQ2hyb21pdW0uY3BwCmluZGV4IDliNWJmMDgyYjhiMzVhNGI2YmQ2M2MxOTIxMTA1
OTA1Y2YzZDQ4MzEuLmM1NTQ3Y2E2OTFjYmE3YTk3NjM1YWJmZjEzZTEyYTYzNzgwNTBhMTkgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvY2hyb21pdW0vc3JjL0dyYXBoaWNzQ29udGV4dDNEQ2hy
b21pdW0uY3BwCisrKyBiL1NvdXJjZS9XZWJLaXQvY2hyb21pdW0vc3JjL0dyYXBoaWNzQ29udGV4
dDNEQ2hyb21pdW0uY3BwCkBAIC0xMDgyLDYgKzEwODIsMzQgQEAgREVMRUdBVEVfVE9fSU5URVJO
QUxfMShkZWxldGVUZXh0dXJlLCBQbGF0Zm9ybTNET2JqZWN0KQogREVMRUdBVEVfVE9fSU5URVJO
QUxfMShzeW50aGVzaXplR0xFcnJvciwgR0MzRGVudW0pCiBERUxFR0FURV9UT19JTlRFUk5BTF9S
KGdldEV4dGVuc2lvbnMsIEV4dGVuc2lvbnMzRCopCiAKK0RFTEVHQVRFX1RPX0lOVEVSTkFMXzEo
c2V0Q29udGV4dExvc3RDYWxsYmFjaywgUGFzc093blB0cjxHcmFwaGljc0NvbnRleHQzRDo6Q29u
dGV4dExvc3RDYWxsYmFjaz4pCisKK2NsYXNzIEdyYXBoaWNzQ29udGV4dExvc3RDYWxsYmFja0Fk
YXB0ZXIgOiBwdWJsaWMgV2ViS2l0OjpXZWJHcmFwaGljc0NvbnRleHQzRDo6V2ViR3JhcGhpY3ND
b250ZXh0TG9zdENhbGxiYWNrIHsKK3B1YmxpYzoKKyAgICB2aXJ0dWFsIHZvaWQgb25Db250ZXh0
TG9zdCgpOworICAgIHN0YXRpYyBQYXNzT3duUHRyPEdyYXBoaWNzQ29udGV4dExvc3RDYWxsYmFj
a0FkYXB0ZXI+IGNyZWF0ZShQYXNzT3duUHRyPEdyYXBoaWNzQ29udGV4dDNEOjpDb250ZXh0TG9z
dENhbGxiYWNrPik7Citwcml2YXRlOgorICAgIEdyYXBoaWNzQ29udGV4dExvc3RDYWxsYmFja0Fk
YXB0ZXIoUGFzc093blB0cjxHcmFwaGljc0NvbnRleHQzRDo6Q29udGV4dExvc3RDYWxsYmFjaz4g
Y2IpIDogbV9jb250ZXh0TG9zdENhbGxiYWNrKGNiKSB7fQorICAgIE93blB0cjxHcmFwaGljc0Nv
bnRleHQzRDo6Q29udGV4dExvc3RDYWxsYmFjaz4gbV9jb250ZXh0TG9zdENhbGxiYWNrOworfTsK
Kwordm9pZCBHcmFwaGljc0NvbnRleHRMb3N0Q2FsbGJhY2tBZGFwdGVyOjpvbkNvbnRleHRMb3N0
KCkKK3sKKyAgICBpZiAobV9jb250ZXh0TG9zdENhbGxiYWNrKQorICAgICAgICBtX2NvbnRleHRM
b3N0Q2FsbGJhY2stPm9uQ29udGV4dExvc3QoKTsKK30KKworUGFzc093blB0cjxHcmFwaGljc0Nv
bnRleHRMb3N0Q2FsbGJhY2tBZGFwdGVyPiBHcmFwaGljc0NvbnRleHRMb3N0Q2FsbGJhY2tBZGFw
dGVyOjpjcmVhdGUoUGFzc093blB0cjxHcmFwaGljc0NvbnRleHQzRDo6Q29udGV4dExvc3RDYWxs
YmFjaz4gY2IpCit7CisgICAgcmV0dXJuIGFkb3B0UHRyKG5ldyBHcmFwaGljc0NvbnRleHRMb3N0
Q2FsbGJhY2tBZGFwdGVyKGNiKSk7Cit9CisKK3ZvaWQgR3JhcGhpY3NDb250ZXh0M0RJbnRlcm5h
bDo6c2V0Q29udGV4dExvc3RDYWxsYmFjayhQYXNzT3duUHRyPEdyYXBoaWNzQ29udGV4dDNEOjpD
b250ZXh0TG9zdENhbGxiYWNrPiBjYikKK3sKKyAgICBtX2NvbnRleHRMb3N0Q2FsbGJhY2tBZGFw
dGVyID0gR3JhcGhpY3NDb250ZXh0TG9zdENhbGxiYWNrQWRhcHRlcjo6Y3JlYXRlKGNiKTsKKyAg
ICBtX2ltcGwtPnNldENvbnRleHRMb3N0Q2FsbGJhY2sobV9jb250ZXh0TG9zdENhbGxiYWNrQWRh
cHRlci5nZXQoKSk7Cit9CisKIGJvb2wgR3JhcGhpY3NDb250ZXh0M0Q6OmlzR0xFUzJDb21wbGlh
bnQoKSBjb25zdAogewogICAgIHJldHVybiBtX2ludGVybmFsLT5pc0dMRVMyQ29tcGxpYW50KCk7
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L2Nocm9taXVtL3NyYy9HcmFwaGljc0NvbnRleHQz
REludGVybmFsLmggYi9Tb3VyY2UvV2ViS2l0L2Nocm9taXVtL3NyYy9HcmFwaGljc0NvbnRleHQz
REludGVybmFsLmgKaW5kZXggMGE3MDYxMzZjNWU4NDZkZjgxYzNmMzE2YmI4ZTgyZjE3NzlhNWZi
Ni4uYmU5Y2UxNmRjM2ZjNTA2Mzg4ZWYzNWJmMGNhNDBhMjZjNmIyM2E1MSAxMDA2NDQKLS0tIGEv
U291cmNlL1dlYktpdC9jaHJvbWl1bS9zcmMvR3JhcGhpY3NDb250ZXh0M0RJbnRlcm5hbC5oCisr
KyBiL1NvdXJjZS9XZWJLaXQvY2hyb21pdW0vc3JjL0dyYXBoaWNzQ29udGV4dDNESW50ZXJuYWwu
aApAQCAtNDQsNiArNDQsNyBAQCBjbGFzcyBFeHRlbnNpb25zM0RDaHJvbWl1bTsKICNpZiBVU0Uo
QUNDRUxFUkFURURfQ09NUE9TSVRJTkcpCiBjbGFzcyBXZWJHTExheWVyQ2hyb21pdW07CiAjZW5k
aWYKK2NsYXNzIEdyYXBoaWNzQ29udGV4dExvc3RDYWxsYmFja0FkYXB0ZXI7CiAKIGNsYXNzIEdy
YXBoaWNzQ29udGV4dDNESW50ZXJuYWwgewogcHVibGljOgpAQCAtMjM5LDYgKzI0MCw4IEBAIHB1
YmxpYzoKIAogICAgIHZvaWQgc3ludGhlc2l6ZUdMRXJyb3IoR0MzRGVudW0gZXJyb3IpOwogCisg
ICAgdm9pZCBzZXRDb250ZXh0TG9zdENhbGxiYWNrKFBhc3NPd25QdHI8R3JhcGhpY3NDb250ZXh0
M0Q6OkNvbnRleHRMb3N0Q2FsbGJhY2s+KTsKKwogICAgIC8vIEV4dGVuc2lvbnMzRCBzdXBwb3J0
LgogICAgIEV4dGVuc2lvbnMzRCogZ2V0RXh0ZW5zaW9ucygpOwogICAgIGJvb2wgc3VwcG9ydHNF
eHRlbnNpb24oY29uc3QgU3RyaW5nJiBuYW1lKTsKQEAgLTI2NSw2ICsyNjgsNyBAQCBwdWJsaWM6
CiBwcml2YXRlOgogICAgIE93blB0cjxXZWJLaXQ6OldlYkdyYXBoaWNzQ29udGV4dDNEPiBtX2lt
cGw7CiAgICAgT3duUHRyPEV4dGVuc2lvbnMzRENocm9taXVtPiBtX2V4dGVuc2lvbnM7CisgICAg
T3duUHRyPEdyYXBoaWNzQ29udGV4dExvc3RDYWxsYmFja0FkYXB0ZXI+IG1fY29udGV4dExvc3RD
YWxsYmFja0FkYXB0ZXI7CiAgICAgV2ViS2l0OjpXZWJWaWV3SW1wbCogbV93ZWJWaWV3SW1wbDsK
ICAgICBib29sIG1faW5pdGlhbGl6ZWRBdmFpbGFibGVFeHRlbnNpb25zOwogICAgIEhhc2hTZXQ8
U3RyaW5nPiBtX2VuYWJsZWRFeHRlbnNpb25zOwpkaWZmIC0tZ2l0IGEvVG9vbHMvZ2RiL3dlYmtp
dC5weWMtMi40IGIvVG9vbHMvZ2RiL3dlYmtpdC5weWMtMi40Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0
CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmMxNjA3MTE4
OWQwYWYxNzJkNmYxMDA2YjM4MGVjY2M4NTkwNTNkYWQKR0lUIGJpbmFyeSBwYXRjaApsaXRlcmFs
IDEwMDQ4CnpjbWNneSZ2Vj5IYzVjaUpoY2hFbXFEaEhiP3lrTCVPc3ooYU94cDVWKztHPnN3a2dW
emV+aD53WTEhSnlTUDtOKQp6QWtGfEkwMyhTQj5CQ0J1LV5uZjRSSmtnWnMjSy0mMmptYVBDNiVP
N3NwT2JjPCZaPEZhPiomamVCV3lUR28obUsKekB3ITNASiZvP2g+JkUtPl4/Uj87YHxyc3ted3Fe
clQkVE5tQCV0e1dXWnFFOVF8YjslTCt1I3Fqdjx3ang+SiUkCnpTPX1rSzsrNTFCXm99WDd0byo4
S3FvdHlyRERfeVcmK20qWVolcH4pKHBvS0FZc3dxWFRXZHZZVTN2QXF3TmJQLQp6bHlAUjtvaFZ2
UUN+cT12SnoyQylERFBDPkkjc2t6RCh8SmRiLUhMaHNrfEIwIz48Xjlub2NTMjN+JW1DRFN3TFYK
ekhAc1FwOCFDODcpXz1BYklJYTk/LUVYTSU9Q3tiTHplNGZCd2ZEX3IoQzxmYVlQT0A7eXpPcyY2
cl5VbCt4TEAmCnpNJm11dEd0Kjl4bX16QTBNdVhWZ19Pe0hlVURONkxwJTtZUHk3OX0hMSspaHQ5
Jnszcj4yey1zJCNUT3FgQDNsOwp6M1EtQXFHREVWUDswRVBGLSReP1FMNzRiKStJLWAoZDQ3PSVp
KW49YVE4IXJ4eHlBRkJoN1VnVXd8MFdHKFEtPnoKel5Faj81dGAlSEtnQ2FON2VwJjU3aVZiekly
bFF8aCMtcH1NQSE+LWR0UjkhdHdZIV5Zem9LPzh0OGA1NURZYUtvCnpYTT1JXzxGUlBOeV5ATWZD
PEQjPWhGU3teVyElMzFzO1o8bGIrNGhLKTVeZX4/KHtJRXRrJSRMZTFfdW9hTW1nQwp6ZXZIcTFS
U3ZvVDdzPzFIbUI5JU9QSl5DcHI3SFZYdTFxJnd5WmJWaXdUR3NzbW88ST11aG98ekhLeClORHVB
QWgKel5RcUgmVzlrbmZVdVh6YXZkKSo9RlI0QkpGUlFjYiVAZ0Z3cE9aT0pfeUVpYDlrVSs9VmR9
PmU7cFdFbSpXYktxCnpkUVIkP1hwR1JpQ0wlSTchQCFMXi0lUWROVnVqPlF7UG9rPWJWQVNVYHIm
cmtGYGR7cXc8MSZeb3JPPUc/IVkmcgp6dCRWKGtMUV4+V1c7LTdWZyZCbE4tKjx5eztDcStOaGU1
WSVaViZ0PEYmIXZaJElre1hxKiRwNmJXdX1rQEN2R0MKemxTPFpzRzZrWEl4X0J0cT5pVEJTPz92
KE1yOWVVOGdZT3BPK1IqP2ozP25tKm91RXNWWTtBc2dEYTlhbEJjWVpJCnoobCp7WHJQOVFIenc1
WXV0OWM0SDtKOHgkQlJyT0puMTA4IWZAJilZZVFBM1hKSz9yM3Y7eFFzRC1CY20xIUV1Kwp6RDRy
a3RaQ3MpMnJ4VW9oMjROY1h7TTkmeUomfjBDXkVkQ05ieVZEcjZXYjQqWlgkJWk8JDteWmhgIV9R
TlNvKFYKejBDX2lGcXskXillQXByPj5tP1JrZyhWJTZ0Wn52TkU/dU9uczRhRylwMTxoeTkwKVJT
Sk58PTNjaFQqe1kpb1F6Cno1IU1gZ2NIZkU5LTk+SGVpeU1XPlgpe31aKj5iWGhSdDd0YlkrZF5g
RyR0fSNNSHk5TnZOV1p0TSVqMjdefTJEZwp6Uks7KEBtXyZLOUcqTWJJJlgtYXlhJFF0djRhPFFS
eEBlRjszZ35AWWlIUVBnSyZWRDNJUTt8X0Y8dz9HJTM1I28KendVZjZ8dGI+b2ZYTnM8RmBSUE83
NF4xeTxpeEFSR2R0ZEshRX48anRiJnx3UzFUfX5weWpEbng+dystPjMyYUNhCnpXU2QtMXRIfVco
VlRla15sbGF9WHZ8NisxdmQqOXdeNHByYGFPa2JGWks5dVRlfXNCTUJGYjx7Rn40TmUzS3tAYQp6
PnE0KDNeMz0zQU82VlVaUDRSamAwPEdQKEo5d3VTP2xiYURzJjYpVDJzcE93dzFGMWU/blUwOSVV
ZiFSWkZgWXgKeit0eWpzRXJSfVYyQzJ5I1NmfGwoNlBNVl8xaS1JZVBXZnReRTh6QlgjN0R8VWlW
c3BGQk44ZiYyO1ghfUFeNiZsCnolIWU+JVh4Q0FZUF9YVFF0U3wjKTZfa2poeHZaIVkpKG5mR1hw
WkcxJjhYMWg0Y3oyeHEpQENtN1Q7I145VHFSNgp6SUZlQz45U2N7JnJedSszUXtVZFd7JDNqTzB7
MiZDNl89NS0zUGhLZU42OXxUNyRPazQwP1JTZlQmN2x7NjF+aHwKejR7UHBtPzIkS3kqWXgkY0xl
VHo8NDtOZ1MhV359VklzN20mPlBYZTBkdj9JYERkaHU8KFVoTk4kP0YoNldDYGZaCnpePXNJYyVX
OW9fYG9TTFQ8WHtAanMzb1l8dipEJDVXbjFYa0s9PVNYK1FORmEtV15fKW9ubmRESUlfb24wWGt3
QAp6JTl1ODRMdHZsKzNveUtjaWVCNGVLP3ImeVR5e3c+SkhfUz5GI3szSFlMMlVobj14MDZoWGIo
UTxQTyU3MTxPUnUKemFNMH51dmQqRV5JKiVmSUtrb1pZUUZ5VktkM0s4ZDM5TE8rSWVkJndZQUJS
M1c3SkEjM31NYDEheDQoZFQ5MWpSCnp6clp6d25LOVhDSzNyZWZ7S2l6fUckelBaMSUjS0VHdCVG
ZnRfLTs8e0kqYGpnZkZUWDc4dy1mRWNwTFcyY25mNAp6RjQ/KygrcG5udEZ4NmpLMS09ZyZKPF80
ViUxJCR1UWV1JFFQMHo9czRTejhmQGczelZKYUAwKmZDSXVHNS1zRmsKelNZMVlxaDlxOWMrKyg9
YWghKkcjYVB3KGQtJFNYSCNkUXoyOE5FUn4oX1gmQjE3Qjs0eHJoZ2BxIUJSWFA3TUJoCnp4Yyhk
KWNga1FvPHA7UXZsWUUqdFp8UE5KVE1LfEZob2xUaUdmMllEMTJgSnRvMW0kZmdmPFM0UVIwYTc9
PT1gKwp6NSFLXnJFYTlzRiN4dUczMVk8PklseU1zOXFwN147cnA9eEZtbjJYQEEpN1dnZEhCOTdR
U0FTMDtCK05PWH5CbSYKelJgRCszZm9KYmpmTXpUYjgzbmpLb0cwTz9tQF8rQFlrQiM9WT11YF5Y
eWlaV1glS0tnMUF5eiRNamE7Xyp4PUQqCnpCVm5Oe1JvTXxMM349WTdLWTxeRCpic1dHOH1lLWVh
XlhXWU4/QGNIbkAxKSFfU1U3VnJoKjFGcERoeEoxflMjWAp6aWkqelplR35VcGIoVW82Kjt3QSNS
ZHhTd14/PHh0d3twQW5YaTQtIV8wQStIbCh7RTsjNyk1P0YpI19GdSl7e0sKeikxP3JnYkZlITRI
bko1WElwTjNGWXEtXytNPWNqT1R3KTdOQyk7T3JtfUsoRmxQSSNqejc5T1pwX05IJmFoSjFaCnpM
RkJ7bWpmYmBXcmA9O3RgTnl+dEI5JF5gNSRxdGBGPHZSWFFrcGlWakMxOX1lel4xJWpedGFEUzNf
QD1oQCMocwp6PkxLQlYreiRPcko9cntae31malM5dENNV0ZRbURIWVNOR3cpRkhQX0l0JVk9UTMj
dy1jSVdrZG5WUH1UTkQ9VlMKenZGIWZyZFUhSUl0eyQ7MkdVRSFMQCtLcTxVS1VTN3pYdy1wRXdF
VCpLYFhaMkt5bSFMYW1aSj01PUpXOGsoZV5oCnptbz8ycDx9N2xTRFVTNmdzMSQhZGFgYTFKKnJv
YXUwKy1EOXsxa2JLPSY3eHdqRklwMmt5UjlqRVY+Tl9pUUBAUQp6ZWFgcShuPjFgbmEpWm5rail7
PzFYJG50Wj9jPW18aWFQbGxoLVdTSyh7JEkmS3QhQD5qd3g9dVVRM28jKitCTHEKejhsP1J9WURS
NkhUIVdfYSR4SjBwV0tXV3k3anp4VCopVXImOUd8NCNeNn4/RHd+TmZCQXhVJUtWZFBwbWkyNnht
CnozeUZ+flYmeHotd19QYHplZjV6OEMpWVFiVm5Ka18xV3stdm9vTFdTbU00bUsleDx2Ykdqbkgz
N1VxKUtIeV9CfAp6ezlFUWJxYzZqP1hLQTZPJWNrb2ZqUz03I2tYKEFsezRLUCtpUiVpa3d7Wk9j
KlcwK1JGNzF5e1BXKThBdkZVZXgKenEhWkpgZH4yaztuM3hudHhjRmlkRkR4dF5KKG07NSZoQW11
RWQzdiprPl5jdz4yZy1WJVZ4REpPSVphQWtsTjkhCnpEQmskVzgqailrcm8yWCZ7bGpsKUc1Tjl9
Zz19NHJNT0s0RXZmNVI+WHVWVmM9JHB2WUk0fmE8eC1FWU1IbkUjbQp6UU9XR2E1RX1zMj14QS1r
VjZyezE8PGlgRTcycmpXRCRCZCpxJFJjeEpnN0crU1gkd0dpVGp7KTlQfXhZNmJVUFYKejltJmNC
c28jXkJyajR7cSh2Z2tBTUl0YmpNM0lLNEFLKT9URHZIQWhPSnc8Yih4ZVpIVG5HTFlDfGR3ezF6
bXYzCnpKbERXPjRjRWdPcEJDQiYobT4jeFpUfU94TWdjdE0hd1RDUzZkSiU7WVMqZlBFeGZGTFh7
YkMqbHwoZjlFOE5vIQp6d04kY15DWUI4YT0+MXFwJlg+SXNgPWJ9WFY1cCZIa3FLQHlCSUp9VSot
T1JtYFN9SSF1MStYUT09VX55ZypqUDwKekY2d0tNMH1pWXVfN1MxUWFtIVM3Z3Q1fVVqUSZINjcw
SENpc1F3SDM2N0lsK195Kld9Tzh5Oz03ek4+ZmgqOCMkCnpQejtGO2QxfSFPe1gxTUREa0tAbD5n
Qj5+RHM8e3V4amdYe3dCUl5pWWxjTC14RXFuNEIqXn1hR2pXKkczYylJcwp6UG8jRGs2KWdhV1Z+
IVd7YERfcCRQM3R0SjBmKzNZZ3liVEMlLXpgPEZoaUx8O1lza0RQeC07M3RiRSVNU0E9YXQKenRf
K3BUP0YzeTlJcD0+enpzT2JARkFYKWdTbiNYcCN4a2lFcUJxI2l2Wk1qX0dmNSR8JVc1YEQ5VkZr
eT1uS2dSCnp4TCFjb3pKVD0kVVA2YSMxY3Q0NWFCdXc+ZyhOJEFjMFA5RzElJUpYKl5Cckt8QUZV
NkluS2VuZ3lTP3B5Zzs3VQp6OylAQS1Zbn5pU21zIXNMI0ZmISkpPSlwM3J5IT93UFZeX05pUipH
fmNKdkJ7ezNXaTArMVFFaXNuWDFKeTxEJTwKekQ9ektAK0JnTnBvJXxVSnByZmAqeFplbnFWMm9M
ZEJyanAqIXhqWGE3KmlRKGZ0IVl3djVeKjdKNmRvP1M8dENVCnozKGhCdDc5MzxAT3BQdD1hckp2
antTRykrUUA7KEVLc3llUDtHMGhycCMpS19qKWtAb0NpJVlANSRjWkBVaS07Pgp6R0U9bVVyWFN9
ZVhSYiU8S3kqR0slZjJgfHhTMUNLXyttNXpHcTJ+OXJlUnpAcFlTazc1NnQ3eWQ2Jns5SmQ+LSEK
eio/JmV3Pm9MeTVhMENZMjFTPGlLYmJvUjMjd0hEblY7VnpvNEBOOzJhPnwhSVJGbCYtSUw1ekA2
VCsrTmNOR28+CnpVc0p6PEJRelkoMzRXNEtCN30mWnZEZ2xIeU1CTEQ4TXRsPkpRdVQxJUlyKFA/
dnRgNlMlOTd2NUFqRytfQkpqTgp6KVptJW80VFJjMURua09LOUg8am8pQWQyPHJ1NEBLM0F7RU8m
VUdXbEpMS0xhJGVyXm5aT2I/TkpsYz9QSUt5MyMKekVsfD95dHRKeCZJeip4Z0BoRGZJUyZvOztP
IXlpQ2B4fkZIdD1jUU11QzNiRT5VOUFwPzZPRShOPD1tWUA4X1loCnpMe2tZOHFKNWpoSmluZEQ4
QTxBRnJ4YyN7SzwmKFpPJDc3Vyp+e2RTODJzQ09mWHRObVBWOUNMRW57dU42MmgyRQp6WnpjIV9F
aDNYZTxKVnlWTEI7eHIjbTZreFNsbmRzSl87UnJlOD9JdXI3QEZCcTtFVXUreGU+ZzJUaDVJMCUo
SyUKelgkRGM7Rz05ZzhhbHtjKiMleVdFXyFiVmJyaX5eeTdnI2FSNHJNIVpxaDNHZ2BXOFhLVnZL
S0BFRXRPRFdYNDYtCnpJSj9EVlNVK1FONFRaZTUpOT5UbFR0ajVoRWxWQSlUclprTj15KjcmNllv
QX1VR2lVTyZpc31xamZyVkZldnA3Owp6NGFlc2prcmhTaE80UkcmKEFMRkJgSipZM0h9YnhLcThC
KTU8RHhTJTYyXiNSZDdjSmE9aHAhKG8pbzlDRlB7aTcKelJAaDlPWkdUejJeRX05aD54aCtANHsh
JFE7T3RmK1puMEBEaER5MUAxJGBkezdCcmdmME56OUx1dzw2Ny0qVDJrCnpwYWZjKHZmJihUSUVW
SVdVUHJnfURHVHYjI0lxMmxRfSEjaktLYk9tKS1gKjViOFlSR3dJTW8od3paRX1IJipTfAp6dD04
KUMwVkBmZSFKMEZjUHZkQSlkfEdhWCNjTiFfZktreGpBSjE8RUBvflAtVUoxYlc4KXxuPlptUl5R
eUByND8KejtITH58MGc0JHNzYCVpQjJaI25mZTFAJFIyb2xLWUtjUUByZkpTNXkyeFBCNzc0aFhP
V28hZlA+Kn49QkpgPXFRCnpeYUFQd2FzLTkmSW1xNikzZ2luQTVDfj5TaUdJTWd0a0t7IXgoKFNP
ZSFURVVfeVU2OEY7dnh+SEk8JUdBY3A3Zwp6Mj9FbSFpPDxaPmlSezwtYE45VyNfIXl6ND1IeiFB
emM8aWB1TV5JSyEyTiModHE+a0F6Um16bCYrN00rM3tOWU8KelhrRGtgbVh9d3ZLIylkUFklNWZA
PFEhVUI1eCFKR1hxIykqV2ZSfTQxUj9UQDBicjBRJDZjKncxRDJSYSUzTHA7CnpiUilMMygzNT48
S291MDwwM1Z7enNhdWNZY3o0O25YP2p0M0YqU0Y+PSVMeGMxcHhNWnJ3aEVyN1l9ZmFjS3ZpZwp6
ek1Ja0pPY2xzYk1kcWUra29uNGpsQ3FjKFl1OSZsaGpFc1N6fUAla2NGZ3E9KH11T3socEUhVD5e
bU5eckxqT0UKejA5cEk2eDZtVVBYSSpGUTFgNUd4NGNVNFVRYmVUVz9wUGJfcmlRdnNrX3ZFVFV4
NXJBYCMjX1dIWjhMdGw5JTZwCnopUig5RlA3c1RMdl59fGAjLSs5SzhHI0tiKkdwbjElN1UmY3RI
YV9oaXlhbXxpKGpCPDt1P2l3WnQwTCV3QnZ1OQp6Uno+ekppNDcrMzhOblFgRj1UaFkxM2JvTzEh
fjs1VHNuaH4zZChCNm1Adio1R29gfjNnZEVuMnZHPytNNCRVWl8KekZ2WW56XitYdnRxT201aVJV
aDxUVn54NkRROWlRRSRicCFFd2Y/cTY0IylLLUc9ekkxbW8tRnNMNFZtMUhxanlNCnomZnJ0I20o
TldzY0lqel40aX5FVDQjNiFVQXJ4aTVsUXFmZVdHYlAzbm9uQDtodSU+VmIzZEkmTXsqdVR3Wnc/
RgpjVVk+WW13bXdfTXpmPF5FTWc4MiZkdiRaWEphXiVMMG5+Sns7czV7dQoKbGl0ZXJhbCAwCkhj
bVY/ZDAwMDAxCgo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>81327</attachid>
            <date>2011-02-04 17:40:57 -0800</date>
            <delta_ts>2011-02-04 18:18:16 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-53722-20110204174056.patch</filename>
            <type>text/plain</type>
            <size>15559</size>
            <attacher name="Alexey Marinichev">amarinichev</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJDb3JlL0No
YW5nZUxvZwppbmRleCBmOTFmNDU3N2M1OTM4ZTFiYTQ3ZWUzZDhkOWY1NDYyNGQ1MDBlNzMxLi44
YzdjY2UwNzEyNzU4NGExOTlhYjhkNzg1NGEzZDEwMjU4MmRlMTNkIDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViQ29yZS9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCkBAIC0x
LDMgKzEsMjQgQEAKKzIwMTEtMDItMDMgIEFsZXhleSBNYXJpbmljaGV2ICA8YW1hcmluaWNoZXZA
Y2hyb21pdW0ub3JnPgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisg
ICAgICAgIEhvb2sgdXAgV2ViR3JhcGhpY3NDb250ZXh0M0Q6OnNldENvbnRleHRMb3N0Q2FsbGJh
Y2suCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD01Mzcy
MgorCisgICAgICAgIFRlc3Q6IGZhc3QvY2FudmFzL3dlYmdsL2NvbnRleHQtbG9zdC5odG1sLCBj
b21tZW50IG91dCB0aGUgbGluZSB3aXRoCisgICAgICAgIGV4dGVuc2lvbi5sb3NlQ29udGV4dCgp
IGFuZCBraWxsIHRoZSBHUFUgcHJvY2VzcyAiTG9zZSBjb250ZXh0IgorICAgICAgICBtZXNzYWdl
IHNob3dzIHVwLgorCisgICAgICAgICogaHRtbC9jYW52YXMvV2ViR0xSZW5kZXJpbmdDb250ZXh0
LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OldlYkdMUmVuZGVyaW5nQ29udGV4dExvc3RDYWxsYmFj
azo6V2ViR0xSZW5kZXJpbmdDb250ZXh0TG9zdENhbGxiYWNrKToKKyAgICAgICAgKFdlYkNvcmU6
OldlYkdMUmVuZGVyaW5nQ29udGV4dExvc3RDYWxsYmFjazo6b25Db250ZXh0TG9zdCk6CisgICAg
ICAgIChXZWJDb3JlOjpXZWJHTFJlbmRlcmluZ0NvbnRleHQ6OldlYkdMUmVuZGVyaW5nQ29udGV4
dCk6CisgICAgICAgICogcGxhdGZvcm0vZ3JhcGhpY3MvR3JhcGhpY3NDb250ZXh0M0QuaDogYWRk
ZWQgc2V0Q29udGV4dExvc3RDYWxsYmFjaworICAgICAgICAqIHBsYXRmb3JtL2dyYXBoaWNzL21h
Yy9HcmFwaGljc0NvbnRleHQzRE1hYy5tbToKKyAgICAgICAgKFdlYkNvcmU6OkdyYXBoaWNzQ29u
dGV4dDNEOjpzZXRDb250ZXh0TG9zdENhbGxiYWNrKTogc3R1YgorICAgICAgICAqIHBsYXRmb3Jt
L2dyYXBoaWNzL3F0L0dyYXBoaWNzQ29udGV4dDNEUXQuY3BwOgorICAgICAgICAoV2ViQ29yZTo6
R3JhcGhpY3NDb250ZXh0M0Q6OnNldENvbnRleHRMb3N0Q2FsbGJhY2spOiBzdHViCisKIDIwMTEt
MDItMDIgIEx1aXogQWdvc3RpbmkgIDxsdWl6LmFnb3N0aW5pQG9wZW5ib3NzYS5vcmc+CiAKICAg
ICAgICAgUmV2aWV3ZWQgYnkgRGF2aWQgSHlhdHQuCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29y
ZS9odG1sL2NhbnZhcy9XZWJHTFJlbmRlcmluZ0NvbnRleHQuY3BwIGIvU291cmNlL1dlYkNvcmUv
aHRtbC9jYW52YXMvV2ViR0xSZW5kZXJpbmdDb250ZXh0LmNwcAppbmRleCBmN2RmNTZjODBlODZh
YzA4YmRmNDIyNzRkZGE0MWU1Nzk4Njc2OTg3Li45MWY3OTM1YWE2OGM1Yzg2Y2YzNzkzMGRlOGU2
ZWViM2ZiNWFjMzM4IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9odG1sL2NhbnZhcy9XZWJH
TFJlbmRlcmluZ0NvbnRleHQuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvY2FudmFzL1dl
YkdMUmVuZGVyaW5nQ29udGV4dC5jcHAKQEAgLTM0MSw2ICszNDEsMTQgQEAgdm9pZCBXZWJHTFJl
bmRlcmluZ0NvbnRleHQ6OldlYkdMUmVuZGVyaW5nQ29udGV4dFJlc3RvcmVUaW1lcjo6ZmlyZWQo
KQogICAgIH0KIH0KIAorY2xhc3MgV2ViR0xSZW5kZXJpbmdDb250ZXh0TG9zdENhbGxiYWNrIDog
cHVibGljIEdyYXBoaWNzQ29udGV4dDNEOjpDb250ZXh0TG9zdENhbGxiYWNrIHsKK3B1YmxpYzoK
KyAgICBXZWJHTFJlbmRlcmluZ0NvbnRleHRMb3N0Q2FsbGJhY2soV2ViR0xSZW5kZXJpbmdDb250
ZXh0KiBjYikgOiBtX2NvbnRleHRMb3N0Q2FsbGJhY2soY2IpIHt9CisgICAgdmlydHVhbCB2b2lk
IG9uQ29udGV4dExvc3QoKSB7IG1fY29udGV4dExvc3RDYWxsYmFjay0+Zm9yY2VMb3N0Q29udGV4
dCgpOyB9Citwcml2YXRlOgorICAgIFdlYkdMUmVuZGVyaW5nQ29udGV4dCogbV9jb250ZXh0TG9z
dENhbGxiYWNrOworfTsKKwogUGFzc093blB0cjxXZWJHTFJlbmRlcmluZ0NvbnRleHQ+IFdlYkdM
UmVuZGVyaW5nQ29udGV4dDo6Y3JlYXRlKEhUTUxDYW52YXNFbGVtZW50KiBjYW52YXMsIFdlYkdM
Q29udGV4dEF0dHJpYnV0ZXMqIGF0dHJzKQogewogICAgIEhvc3RXaW5kb3cqIGhvc3RXaW5kb3cg
PSBjYW52YXMtPmRvY3VtZW50KCktPnZpZXcoKS0+cm9vdCgpLT5ob3N0V2luZG93KCk7CkBAIC00
MTYsNiArNDI0LDggQEAgdm9pZCBXZWJHTFJlbmRlcmluZ0NvbnRleHQ6OmluaXRpYWxpemVOZXdD
b250ZXh0KCkKIAogICAgIG1fY29udGV4dC0+cmVzaGFwZShjYW52YXMoKS0+d2lkdGgoKSwgY2Fu
dmFzKCktPmhlaWdodCgpKTsKICAgICBtX2NvbnRleHQtPnZpZXdwb3J0KDAsIDAsIGNhbnZhcygp
LT53aWR0aCgpLCBjYW52YXMoKS0+aGVpZ2h0KCkpOworCisgICAgbV9jb250ZXh0LT5zZXRDb250
ZXh0TG9zdENhbGxiYWNrKGFkb3B0UHRyKG5ldyBXZWJHTFJlbmRlcmluZ0NvbnRleHRMb3N0Q2Fs
bGJhY2sodGhpcykpKTsKIH0KIAogdm9pZCBXZWJHTFJlbmRlcmluZ0NvbnRleHQ6OnNldHVwRmxh
Z3MoKQpAQCAtNDM3LDYgKzQ0Nyw3IEBAIHZvaWQgV2ViR0xSZW5kZXJpbmdDb250ZXh0OjpzZXR1
cEZsYWdzKCkKIFdlYkdMUmVuZGVyaW5nQ29udGV4dDo6fldlYkdMUmVuZGVyaW5nQ29udGV4dCgp
CiB7CiAgICAgZGV0YWNoQW5kUmVtb3ZlQWxsT2JqZWN0cygpOworICAgIG1fY29udGV4dC0+c2V0
Q29udGV4dExvc3RDYWxsYmFjaygwKTsKIH0KIAogdm9pZCBXZWJHTFJlbmRlcmluZ0NvbnRleHQ6
Om1hcmtDb250ZXh0Q2hhbmdlZCgpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9y
bS9ncmFwaGljcy9HcmFwaGljc0NvbnRleHQzRC5oIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0v
Z3JhcGhpY3MvR3JhcGhpY3NDb250ZXh0M0QuaAppbmRleCA0N2I5NTNlYjM2MmJhNzQwOWRhNDc4
ZWY4NWJkYTQ2ZDNjMWE0ZmY4Li44NTgwMTBlMmQwNzJiYmU5YmRmYmQ1YjkyMTE0YTg5MjhjNjkw
ZDQxIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9HcmFwaGlj
c0NvbnRleHQzRC5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL0dyYXBo
aWNzQ29udGV4dDNELmgKQEAgLTQ1NCw2ICs0NTQsMTMgQEAgcHVibGljOgogICAgICAgICBSZW5k
ZXJEaXJlY3RseVRvSG9zdFdpbmRvdwogICAgIH07CiAKKyAgICBjbGFzcyBDb250ZXh0TG9zdENh
bGxiYWNrIHsKKyAgICBwdWJsaWM6CisgICAgICAgIHZpcnR1YWwgdm9pZCBvbkNvbnRleHRMb3N0
KCkgPSAwOworICAgIH07CisKKyAgICB2b2lkIHNldENvbnRleHRMb3N0Q2FsbGJhY2soUGFzc093
blB0cjxDb250ZXh0TG9zdENhbGxiYWNrPik7CisKICAgICBzdGF0aWMgUGFzc1JlZlB0cjxHcmFw
aGljc0NvbnRleHQzRD4gY3JlYXRlKEF0dHJpYnV0ZXMsIEhvc3RXaW5kb3cqLCBSZW5kZXJTdHls
ZSA9IFJlbmRlck9mZnNjcmVlbik7CiAgICAgfkdyYXBoaWNzQ29udGV4dDNEKCk7CiAKZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL21hYy9HcmFwaGljc0NvbnRl
eHQzRE1hYy5tbSBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL21hYy9HcmFwaGlj
c0NvbnRleHQzRE1hYy5tbQppbmRleCA4Nzc3ZWNjYjYwNWQ2ZTgzYzkzNDIxYWFkODEyMDEyYWIx
ZmE0NTFhLi5hYWEyNTBiMmNmZWQyN2UwNTIwZGZlMzI3MWZiZTkyZTk0NjI0ZTQwIDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9tYWMvR3JhcGhpY3NDb250ZXh0
M0RNYWMubW0KKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvbWFjL0dyYXBo
aWNzQ29udGV4dDNETWFjLm1tCkBAIC0yNDUsNiArMjQ1LDEwIEBAIGJvb2wgR3JhcGhpY3NDb250
ZXh0M0Q6OmlzR0xFUzJDb21wbGlhbnQoKSBjb25zdAogICAgIHJldHVybiBmYWxzZTsKIH0KIAor
dm9pZCBHcmFwaGljc0NvbnRleHQzRDo6c2V0Q29udGV4dExvc3RDYWxsYmFjayhQYXNzT3duUHRy
PENvbnRleHRMb3N0Q2FsbGJhY2s+KQoreworfQorCiB9CiAKICNlbmRpZiAvLyBFTkFCTEUoV0VC
R0wpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9xdC9HcmFw
aGljc0NvbnRleHQzRFF0LmNwcCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL3F0
L0dyYXBoaWNzQ29udGV4dDNEUXQuY3BwCmluZGV4IDY0YjhhZDEwYTgwNWFiMzU1ZDU4ODQyYzBm
OTY0NmU1YTQ5OTYxZmMuLjhiODdmNWYwNDgzNGI3NjA5ODY4ODc0NjE5YmMwN2QzNzZhNGVlMmYg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL3F0L0dyYXBoaWNz
Q29udGV4dDNEUXQuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL3F0
L0dyYXBoaWNzQ29udGV4dDNEUXQuY3BwCkBAIC0xNjQ3LDYgKzE2NDcsMTAgQEAgYm9vbCBHcmFw
aGljc0NvbnRleHQzRDo6Z2V0SW1hZ2VEYXRhKEltYWdlKiBpbWFnZSwKICAgICAgICAgICAgICAg
ICAgICAgICBmb3JtYXQsIHR5cGUsIG5lZWRlZEFscGhhT3AsIG91dHB1dFZlY3Rvci5kYXRhKCkp
OwogfQogCit2b2lkIEdyYXBoaWNzQ29udGV4dDNEOjpzZXRDb250ZXh0TG9zdENhbGxiYWNrKFBh
c3NPd25QdHI8Q29udGV4dExvc3RDYWxsYmFjaz4pCit7Cit9CisKIH0KIAogI2VuZGlmIC8vIEVO
QUJMRShXRUJHTCkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvY2hyb21pdW0vQ2hhbmdlTG9n
IGIvU291cmNlL1dlYktpdC9jaHJvbWl1bS9DaGFuZ2VMb2cKaW5kZXggMTFhMzdiNzRkY2IxOGE0
NjY1NmY0ZGI3ZDJiYWMzNGVlZGI1NmQ3OS4uYmVmY2Y2NWZlNTdhZjUzYmFjOTdkZDc1YWViMWY4
MDI2Y2E1NjljYyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9jaHJvbWl1bS9DaGFuZ2VMb2cK
KysrIGIvU291cmNlL1dlYktpdC9jaHJvbWl1bS9DaGFuZ2VMb2cKQEAgLTEsMyArMSwyMiBAQAor
MjAxMS0wMi0wMyAgQWxleGV5IE1hcmluaWNoZXYgIDxhbWFyaW5pY2hldkBjaHJvbWl1bS5vcmc+
CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgSG9vayB1
cCBXZWJHcmFwaGljc0NvbnRleHQzRDo6c2V0Q29udGV4dExvc3RDYWxsYmFjay4KKyAgICAgICAg
aHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTUzNzIyCisKKyAgICAgICAg
VGVzdDogZmFzdC9jYW52YXMvd2ViZ2wvY29udGV4dC1sb3N0Lmh0bWwsIGNvbW1lbnQgb3V0IHRo
ZSBsaW5lIHdpdGgKKyAgICAgICAgZXh0ZW5zaW9uLmxvc2VDb250ZXh0KCkgYW5kIGtpbGwgdGhl
IEdQVSBwcm9jZXNzICJMb3NlIGNvbnRleHQiCisgICAgICAgIG1lc3NhZ2Ugc2hvd3MgdXAuCisK
KyAgICAgICAgKiBzcmMvR3JhcGhpY3NDb250ZXh0M0RDaHJvbWl1bS5jcHA6CisgICAgICAgIChX
ZWJDb3JlOjpHcmFwaGljc0NvbnRleHQzREludGVybmFsOjppbml0aWFsaXplKToKKyAgICAgICAg
KFdlYkNvcmU6OkdyYXBoaWNzQ29udGV4dExvc3RDYWxsYmFja0FkYXB0ZXI6OkdyYXBoaWNzQ29u
dGV4dExvc3RDYWxsYmFja0FkYXB0ZXIpOgorICAgICAgICAoV2ViQ29yZTo6R3JhcGhpY3NDb250
ZXh0TG9zdENhbGxiYWNrQWRhcHRlcjo6b25Db250ZXh0TG9zdCk6CisgICAgICAgIChXZWJDb3Jl
OjpHcmFwaGljc0NvbnRleHRMb3N0Q2FsbGJhY2tBZGFwdGVyOjpjcmVhdGUpOgorICAgICAgICAo
V2ViQ29yZTo6R3JhcGhpY3NDb250ZXh0M0RJbnRlcm5hbDo6c2V0Q29udGV4dExvc3RDYWxsYmFj
ayk6CisgICAgICAgICogc3JjL0dyYXBoaWNzQ29udGV4dDNESW50ZXJuYWwuaDoKKwogMjAxMS0w
Mi0wMSAgRGFyaW4gRmlzaGVyICA8ZGFyaW5AY2hyb21pdW0ub3JnPgogCiAgICAgICAgIFJldmll
d2VkIGJ5IEtlbm5ldGggUnVzc2VsbC4KQEAgLTQ1MCw2ICs0NjksMTYgQEAKIAogICAgICAgICAq
IHNyYy9qcy9UZXN0cy5qczoKIAorMjAxMS0wMS0yNSAgQWxleGV5IE1hcmluaWNoZXYgIDxhbWFy
aW5pY2hldkBjaHJvbWl1bS5vcmc+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BT
ISkuCisKKyAgICAgICAgQWRkIGEgY2FsbGJhY2sgdG8gV2ViR3JhcGhpY3NDb250ZXh0M0QgdGhh
dCBpcyBjYWxsZWQgd2hlbiBhIGNvbnRleHQgaXMgbG9zdAorICAgICAgICBodHRwczovL2J1Z3Mu
d2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9NTMxNTMKKworICAgICAgICAqIHB1YmxpYy9XZWJH
cmFwaGljc0NvbnRleHQzRC5oOgorICAgICAgICAoV2ViS2l0OjpXZWJHcmFwaGljc0NvbnRleHQz
RDo6c2V0Q29udGV4dExvc3RDYWxsYmFjayk6CisKIDIwMTEtMDEtMjQgIFpoZW55YW8gTW8gIDx6
bW9AZ29vZ2xlLmNvbT4KIAogICAgICAgICBSZXZpZXdlZCBieSBEYXJpbiBBZGxlci4KZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJLaXQvY2hyb21pdW0vc3JjL0dyYXBoaWNzQ29udGV4dDNEQ2hyb21p
dW0uY3BwIGIvU291cmNlL1dlYktpdC9jaHJvbWl1bS9zcmMvR3JhcGhpY3NDb250ZXh0M0RDaHJv
bWl1bS5jcHAKaW5kZXggOWI1YmYwODJiOGIzNWE0YjZiZDYzYzE5MjExMDU5MDVjZjNkNDgzMS4u
YzU1NDdjYTY5MWNiYTdhOTc2MzVhYmZmMTNlMTJhNjM3ODA1MGExOSAxMDA2NDQKLS0tIGEvU291
cmNlL1dlYktpdC9jaHJvbWl1bS9zcmMvR3JhcGhpY3NDb250ZXh0M0RDaHJvbWl1bS5jcHAKKysr
IGIvU291cmNlL1dlYktpdC9jaHJvbWl1bS9zcmMvR3JhcGhpY3NDb250ZXh0M0RDaHJvbWl1bS5j
cHAKQEAgLTEwODIsNiArMTA4MiwzNCBAQCBERUxFR0FURV9UT19JTlRFUk5BTF8xKGRlbGV0ZVRl
eHR1cmUsIFBsYXRmb3JtM0RPYmplY3QpCiBERUxFR0FURV9UT19JTlRFUk5BTF8xKHN5bnRoZXNp
emVHTEVycm9yLCBHQzNEZW51bSkKIERFTEVHQVRFX1RPX0lOVEVSTkFMX1IoZ2V0RXh0ZW5zaW9u
cywgRXh0ZW5zaW9uczNEKikKIAorREVMRUdBVEVfVE9fSU5URVJOQUxfMShzZXRDb250ZXh0TG9z
dENhbGxiYWNrLCBQYXNzT3duUHRyPEdyYXBoaWNzQ29udGV4dDNEOjpDb250ZXh0TG9zdENhbGxi
YWNrPikKKworY2xhc3MgR3JhcGhpY3NDb250ZXh0TG9zdENhbGxiYWNrQWRhcHRlciA6IHB1Ymxp
YyBXZWJLaXQ6OldlYkdyYXBoaWNzQ29udGV4dDNEOjpXZWJHcmFwaGljc0NvbnRleHRMb3N0Q2Fs
bGJhY2sgeworcHVibGljOgorICAgIHZpcnR1YWwgdm9pZCBvbkNvbnRleHRMb3N0KCk7CisgICAg
c3RhdGljIFBhc3NPd25QdHI8R3JhcGhpY3NDb250ZXh0TG9zdENhbGxiYWNrQWRhcHRlcj4gY3Jl
YXRlKFBhc3NPd25QdHI8R3JhcGhpY3NDb250ZXh0M0Q6OkNvbnRleHRMb3N0Q2FsbGJhY2s+KTsK
K3ByaXZhdGU6CisgICAgR3JhcGhpY3NDb250ZXh0TG9zdENhbGxiYWNrQWRhcHRlcihQYXNzT3du
UHRyPEdyYXBoaWNzQ29udGV4dDNEOjpDb250ZXh0TG9zdENhbGxiYWNrPiBjYikgOiBtX2NvbnRl
eHRMb3N0Q2FsbGJhY2soY2IpIHt9CisgICAgT3duUHRyPEdyYXBoaWNzQ29udGV4dDNEOjpDb250
ZXh0TG9zdENhbGxiYWNrPiBtX2NvbnRleHRMb3N0Q2FsbGJhY2s7Cit9OworCit2b2lkIEdyYXBo
aWNzQ29udGV4dExvc3RDYWxsYmFja0FkYXB0ZXI6Om9uQ29udGV4dExvc3QoKQoreworICAgIGlm
IChtX2NvbnRleHRMb3N0Q2FsbGJhY2spCisgICAgICAgIG1fY29udGV4dExvc3RDYWxsYmFjay0+
b25Db250ZXh0TG9zdCgpOworfQorCitQYXNzT3duUHRyPEdyYXBoaWNzQ29udGV4dExvc3RDYWxs
YmFja0FkYXB0ZXI+IEdyYXBoaWNzQ29udGV4dExvc3RDYWxsYmFja0FkYXB0ZXI6OmNyZWF0ZShQ
YXNzT3duUHRyPEdyYXBoaWNzQ29udGV4dDNEOjpDb250ZXh0TG9zdENhbGxiYWNrPiBjYikKK3sK
KyAgICByZXR1cm4gYWRvcHRQdHIobmV3IEdyYXBoaWNzQ29udGV4dExvc3RDYWxsYmFja0FkYXB0
ZXIoY2IpKTsKK30KKwordm9pZCBHcmFwaGljc0NvbnRleHQzREludGVybmFsOjpzZXRDb250ZXh0
TG9zdENhbGxiYWNrKFBhc3NPd25QdHI8R3JhcGhpY3NDb250ZXh0M0Q6OkNvbnRleHRMb3N0Q2Fs
bGJhY2s+IGNiKQoreworICAgIG1fY29udGV4dExvc3RDYWxsYmFja0FkYXB0ZXIgPSBHcmFwaGlj
c0NvbnRleHRMb3N0Q2FsbGJhY2tBZGFwdGVyOjpjcmVhdGUoY2IpOworICAgIG1faW1wbC0+c2V0
Q29udGV4dExvc3RDYWxsYmFjayhtX2NvbnRleHRMb3N0Q2FsbGJhY2tBZGFwdGVyLmdldCgpKTsK
K30KKwogYm9vbCBHcmFwaGljc0NvbnRleHQzRDo6aXNHTEVTMkNvbXBsaWFudCgpIGNvbnN0CiB7
CiAgICAgcmV0dXJuIG1faW50ZXJuYWwtPmlzR0xFUzJDb21wbGlhbnQoKTsKZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJLaXQvY2hyb21pdW0vc3JjL0dyYXBoaWNzQ29udGV4dDNESW50ZXJuYWwuaCBi
L1NvdXJjZS9XZWJLaXQvY2hyb21pdW0vc3JjL0dyYXBoaWNzQ29udGV4dDNESW50ZXJuYWwuaApp
bmRleCAwYTcwNjEzNmM1ZTg0NmRmODFjM2YzMTZiYjhlODJmMTc3OWE1ZmI2Li5iZTljZTE2ZGMz
ZmM1MDYzODhlZjM1YmYwY2E0MGEyNmM2YjIzYTUxIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0
L2Nocm9taXVtL3NyYy9HcmFwaGljc0NvbnRleHQzREludGVybmFsLmgKKysrIGIvU291cmNlL1dl
YktpdC9jaHJvbWl1bS9zcmMvR3JhcGhpY3NDb250ZXh0M0RJbnRlcm5hbC5oCkBAIC00NCw2ICs0
NCw3IEBAIGNsYXNzIEV4dGVuc2lvbnMzRENocm9taXVtOwogI2lmIFVTRShBQ0NFTEVSQVRFRF9D
T01QT1NJVElORykKIGNsYXNzIFdlYkdMTGF5ZXJDaHJvbWl1bTsKICNlbmRpZgorY2xhc3MgR3Jh
cGhpY3NDb250ZXh0TG9zdENhbGxiYWNrQWRhcHRlcjsKIAogY2xhc3MgR3JhcGhpY3NDb250ZXh0
M0RJbnRlcm5hbCB7CiBwdWJsaWM6CkBAIC0yMzksNiArMjQwLDggQEAgcHVibGljOgogCiAgICAg
dm9pZCBzeW50aGVzaXplR0xFcnJvcihHQzNEZW51bSBlcnJvcik7CiAKKyAgICB2b2lkIHNldENv
bnRleHRMb3N0Q2FsbGJhY2soUGFzc093blB0cjxHcmFwaGljc0NvbnRleHQzRDo6Q29udGV4dExv
c3RDYWxsYmFjaz4pOworCiAgICAgLy8gRXh0ZW5zaW9uczNEIHN1cHBvcnQuCiAgICAgRXh0ZW5z
aW9uczNEKiBnZXRFeHRlbnNpb25zKCk7CiAgICAgYm9vbCBzdXBwb3J0c0V4dGVuc2lvbihjb25z
dCBTdHJpbmcmIG5hbWUpOwpAQCAtMjY1LDYgKzI2OCw3IEBAIHB1YmxpYzoKIHByaXZhdGU6CiAg
ICAgT3duUHRyPFdlYktpdDo6V2ViR3JhcGhpY3NDb250ZXh0M0Q+IG1faW1wbDsKICAgICBPd25Q
dHI8RXh0ZW5zaW9uczNEQ2hyb21pdW0+IG1fZXh0ZW5zaW9uczsKKyAgICBPd25QdHI8R3JhcGhp
Y3NDb250ZXh0TG9zdENhbGxiYWNrQWRhcHRlcj4gbV9jb250ZXh0TG9zdENhbGxiYWNrQWRhcHRl
cjsKICAgICBXZWJLaXQ6OldlYlZpZXdJbXBsKiBtX3dlYlZpZXdJbXBsOwogICAgIGJvb2wgbV9p
bml0aWFsaXplZEF2YWlsYWJsZUV4dGVuc2lvbnM7CiAgICAgSGFzaFNldDxTdHJpbmc+IG1fZW5h
YmxlZEV4dGVuc2lvbnM7CmRpZmYgLS1naXQgYS9Ub29scy9nZGIvd2Via2l0LnB5Yy0yLjQgYi9U
b29scy9nZGIvd2Via2l0LnB5Yy0yLjQKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uYzE2MDcxMTg5ZDBhZjE3MmQ2ZjEw
MDZiMzgwZWNjYzg1OTA1M2RhZApHSVQgYmluYXJ5IHBhdGNoCmxpdGVyYWwgMTAwNDgKemNtY2d5
JnZWPkhjNWNpSmhjaEVtcURoSGI/eWtMJU9zeihhT3hwNVYrO0c+c3drZ1Z6ZX5oPndZMSFKeVNQ
O04pCnpBa0Z8STAzKFNCPkJDQnUtXm5mNFJKa2dacyNLLSYyam1hUEM2JU83c3BPYmM8Jlo8RmE+
KiZqZUJXeVRHbyhtSwp6QHchM0BKJm8/aD4mRS0+Xj9SPztgfHJze153cV5yVCRUTm1AJXR7V1da
cUU5UXxiOyVMK3UjcWp2PHdqeD5KJSQKelM9fWtLOys1MUJeb31YN3RvKjhLcW90eXJERF95VyYr
bSpZWiVwfikocG9LQVlzd3FYVFdkdllVM3ZBcXdOYlAtCnpseUBSO29oVnZRQ35xPXZKejJDKURE
UEM+SSNza3pEKHxKZGItSExoc2t8QjAjPjxeOW5vY1MyM34lbUNEU3dMVgp6SEBzUXA4IUM4Nylf
PUFiSUlhOT8tRVhNJT1De2JMemU0ZkJ3ZkRfcihDPGZhWVBPQDt5ek9zJjZyXlVsK3hMQCYKek0m
bXV0R3QqOXhtfXpBME11WFZnX097SGVVRE42THAlO1lQeTc5fSExKylodDkmezNyPjJ7LXMkI1RP
cWBAM2w7CnozUS1BcUdERVZQOzBFUEYtJF4/UUw3NGIpK0ktYChkNDc9JWkpbj1hUTghcnh4eUFG
Qmg3VWdVd3wwV0coUS0+egp6XkVqPzV0YCVIS2dDYU43ZXAmNTdpVmJ6SXJsUXxoIy1wfU1BIT4t
ZHRSOSF0d1khXll6b0s/OHQ4YDU1RFlhS28KelhNPUlfPEZSUE55XkBNZkM8RCM9aEZTe15XISUz
MXM7WjxsYis0aEspNV5lfj8oe0lFdGslJExlMV91b2FNbWdDCnpldkhxMVJTdm9UN3M/MUhtQjkl
T1BKXkNwcjdIVlh1MXEmd3laYlZpd1RHc3NtbzxJPXVob3x6SEt4KU5EdUFBaAp6XlFxSCZXOWtu
ZlV1WHphdmQpKj1GUjRCSkZSUWNiJUBnRndwT1pPSl95RWlgOWtVKz1WZH0+ZTtwV0VtKldiS3EK
emRRUiQ/WHBHUmlDTCVJNyFAIUxeLSVRZE5WdWo+UXtQb2s9YlZBU1VgciZya0ZgZHtxdzwxJl5v
ck89Rz8hWSZyCnp0JFYoa0xRXj5XVzstN1ZnJkJsTi0qPHl7O0NxK05oZTVZJVpWJnQ8RiYhdlok
SWt7WHEqJHA2Yld1fWtAQ3ZHQwp6bFM8WnNHNmtYSXhfQnRxPmlUQlM/P3YoTXI5ZVU4Z1lPcE8r
Uio/ajM/bm0qb3VFc1ZZO0FzZ0RhOWFsQmNZWkkKeihsKntYclA5UUh6dzVZdXQ5YzRIO0o4eCRC
UnJPSm4xMDghZkAmKVllUUEzWEpLP3Izdjt4UXNELUJjbTEhRXUrCnpENHJrdFpDcykycnhVb2gy
NE5jWHtNOSZ5SiZ+MENeRWRDTmJ5VkRyNldiNCpaWCQlaTwkO15aaGAhX1FOU28oVgp6MENfaUZx
eyReKWVBcHI+Pm0/UmtnKFYlNnRafnZORT91T25zNGFHKXAxPGh5OTApUlNKTnw9M2NoVCp7WSlv
UXoKejUhTWBnY0hmRTktOT5IZWl5TVc+WCl7fVoqPmJYaFJ0N3RiWStkXmBHJHR9I01IeTlOdk5X
WnRNJWoyN159MkRnCnpSSzsoQG1fJks5RypNYkkmWC1heWEkUXR2NGE8UVJ4QGVGOzNnfkBZaUhR
UGdLJlZEM0lRO3xfRjx3P0clMzUjbwp6d1VmNnx0Yj5vZlhOczxGYFJQTzc0XjF5PGl4QVJHZHRk
SyFFfjxqdGImfHdTMVR9fnB5akRueD53Ky0+MzJhQ2EKeldTZC0xdEh9VyhWVGVrXmxsYX1Ydnw2
KzF2ZCo5d140cHJgYU9rYkZaSzl1VGV9c0JNQkZiPHtGfjROZTNLe0BhCno+cTQoM14zPTNBTzZW
VVpQNFJqYDA8R1AoSjl3dVM/bGJhRHMmNilUMnNwT3d3MUYxZT9uVTA5JVVmIVJaRmBZeAp6K3R5
anNFclJ9VjJDMnkjU2Z8bCg2UE1WXzFpLUllUFdmdF5FOHpCWCM3RHxVaVZzcEZCTjhmJjI7WCF9
QV42JmwKeiUhZT4lWHhDQVlQX1hUUXRTfCMpNl9ramh4dlohWSkobmZHWHBaRzEmOFgxaDRjejJ4
cSlAQ203VDsjXjlUcVI2CnpJRmVDPjlTY3smcl51KzNRe1VkV3skM2pPMHsyJkM2Xz01LTNQaEtl
TjY5fFQ3JE9rNDA/UlNmVCY3bHs2MX5ofAp6NHtQcG0/MiRLeSpZeCRjTGVUejw0O05nUyFXfn1W
SXM3bSY+UFhlMGR2P0lgRGRodTwoVWhOTiQ/Rig2V0NgZloKel49c0ljJVc5b19gb1NMVDxYe0Bq
czNvWXx2KkQkNVduMVhrSz09U1grUU5GYS1XXl8pb25uZERJSV9vbjBYa3dACnolOXU4NEx0dmwr
M295S2NpZUI0ZUs/ciZ5VHl7dz5KSF9TPkYjezNIWUwyVWhuPXgwNmhYYihRPFBPJTcxPE9SdQp6
YU0wfnV2ZCpFXkkqJWZJS2tvWllRRnlWS2QzSzhkMzlMTytJZWQmd1lBQlIzVzdKQSMzfU1gMSF4
NChkVDkxalIKenpyWnp3bks5WENLM3JlZntLaXp9RyR6UFoxJSNLRUd0JUZmdF8tOzx7SSpgamdm
RlRYNzh3LWZFY3BMVzJjbmY0CnpGND8rKCtwbm50Rng2aksxLT1nJko8XzRWJTEkJHVRZXUkUVAw
ej1zNFN6OGZAZzN6VkphQDAqZkNJdUc1LXNGawp6U1kxWXFoOXE5YysrKD1haCEqRyNhUHcoZC0k
U1hII2RRejI4TkVSfihfWCZCMTdCOzR4cmhnYHEhQlJYUDdNQmgKenhjKGQpY2BrUW88cDtRdmxZ
RSp0WnxQTkpUTUt8RmhvbFRpR2YyWUQxMmBKdG8xbSRmZ2Y8UzRRUjBhNz09PWArCno1IUteckVh
OXNGI3h1RzMxWTw+SWx5TXM5cXA3XjtycD14Rm1uMlhAQSk3V2dkSEI5N1FTQVMwO0IrTk9YfkJt
Jgp6UmBEKzNmb0piamZNelRiODNuaktvRzBPP21AXytAWWtCIz1ZPXVgXlh5aVpXWCVLS2cxQXl6
JE1qYTtfKng9RCoKekJWbk57Um9NfEwzfj1ZN0tZPF5EKmJzV0c4fWUtZWFeWFdZTj9AY0huQDEp
IV9TVTdWcmgqMUZwRGh4SjF+UyNYCnppaSp6WmVHflVwYihVbzYqO3dBI1JkeFN3Xj88eHR3e3BB
blhpNC0hXzBBK0hsKHtFOyM3KTU/RikjX0Z1KXt7Swp6KTE/cmdiRmUhNEhuSjVYSXBOM0ZZcS1f
K009Y2pPVHcpN05DKTtPcm19SyhGbFBJI2p6NzlPWnBfTkgmYWhKMVoKekxGQnttamZiYFdyYD07
dGBOeX50QjkkXmA1JHF0YEY8dlJYUWtwaVZqQzE5fWV6XjElal50YURTM19APWhAIyhzCno+TEtC
Vit6JE9ySj1ye1p7fWZqUzl0Q01XRlFtREhZU05HdylGSFBfSXQlWT1RMyN3LWNJV2tkblZQfVRO
RD1WUwp6dkYhZnJkVSFJSXR7JDsyR1VFIUxAK0txPFVLVVM3elh3LXBFd0VUKktgWFoyS3ltIUxh
bVpKPTU9Slc4ayhlXmgKem1vPzJwPH03bFNEVVM2Z3MxJCFkYWBhMUoqcm9hdTArLUQ5ezFrYks9
Jjd4d2pGSXAya3lSOWpFVj5OX2lRQEBRCnplYWBxKG4+MWBuYSlabmtqKXs/MVgkbnRaP2M9bXxp
YVBsbGgtV1NLKHskSSZLdCFAPmp3eD11VVEzbyMqK0JMcQp6OGw/Un1ZRFI2SFQhV19hJHhKMHBX
S1dXeTdqenhUKilVciY5R3w0I142fj9Ed35OZkJBeFUlS1ZkUHBtaTI2eG0KejN5Rn5+ViZ4ei13
X1BgemVmNXo4QylZUWJWbkprXzFXey12b29MV1NtTTRtSyV4PHZiR2puSDM3VXEpS0h5X0J8Cnp7
OUVRYnFjNmo/WEtBNk8lY2tvZmpTPTcja1goQWx7NEtQK2lSJWlrd3taT2MqVzArUkY3MXl7UFcp
OEF2RlVleAp6cSFaSmBkfjJrO24zeG50eGNGaWRGRHh0XkoobTs1JmhBbXVFZDN2Kms+XmN3PjJn
LVYlVnhESk9JWmFBa2xOOSEKekRCayRXOCpqKWtybzJYJntsamwpRzVOOX1nPX00ck1PSzRFdmY1
Uj5YdVZWYz0kcHZZSTR+YTx4LUVZTUhuRSNtCnpRT1dHYTVFfXMyPXhBLWtWNnJ7MTw8aWBFNzJy
aldEJEJkKnEkUmN4Smc3RytTWCR3R2lUanspOVB9eFk2YlVQVgp6OW0mY0JzbyNeQnJqNHtxKHZn
a0FNSXRiak0zSUs0QUspP1REdkhBaE9KdzxiKHhlWkhUbkdMWUN8ZHd7MXptdjMKekpsRFc+NGNF
Z09wQkNCJihtPiN4WlR9T3hNZ2N0TSF3VENTNmRKJTtZUypmUEV4ZkZMWHtiQypsfChmOUU4Tm8h
Cnp3TiRjXkNZQjhhPT4xcXAmWD5Jc2A9Yn1YVjVwJkhrcUtAeUJJSn1VKi1PUm1gU31JIXUxK1hR
PT1VfnlnKmpQPAp6RjZ3S00wfWlZdV83UzFRYW0hUzdndDV9VWpRJkg2NzBIQ2lzUXdIMzY3SWwr
X3kqV31POHk7PTd6Tj5maCo4IyQKelB6O0Y7ZDF9IU97WDFNRERrS0BsPmdCPn5Eczx7dXhqZ1h7
d0JSXmlZbGNMLXhFcW40QipefWFHalcqRzNjKUlzCnpQbyNEazYpZ2FXVn4hV3tgRF9wJFAzdHRK
MGYrM1lneWJUQyUtemA8RmhpTHw7WXNrRFB4LTszdGJFJU1TQT1hdAp6dF8rcFQ/RjN5OUlwPT56
enNPYkBGQVgpZ1NuI1hwI3hraUVxQnEjaXZaTWpfR2Y1JHwlVzVgRDlWRmt5PW5LZ1IKenhMIWNv
ekpUPSRVUDZhIzFjdDQ1YUJ1dz5nKE4kQWMwUDlHMSUlSlgqXkJyS3xBRlU2SW5LZW5neVM/cHln
OzdVCno7KUBBLVlufmlTbXMhc0wjRmYhKSk9KXAzcnkhP3dQVl5fTmlSKkd+Y0p2Qnt7M1dpMCsx
UUVpc25YMUp5PEQlPAp6RD16S0ArQmdOcG8lfFVKcHJmYCp4WmVucVYyb0xkQnJqcCoheGpYYTcq
aVEoZnQhWXd2NV4qN0o2ZG8/Uzx0Q1UKejMoaEJ0NzkzPEBPcFB0PWFySnZqe1NHKStRQDsoRUtz
eWVQO0cwaHJwIylLX2opa0BvQ2klWUA1JGNaQFVpLTs+CnpHRT1tVXJYU31lWFJiJTxLeSpHSyVm
MmB8eFMxQ0tfK201ekdxMn45cmVSekBwWVNrNzU2dDd5ZDYmezlKZD4tIQp6Kj8mZXc+b0x5NWEw
Q1kyMVM8aUtiYm9SMyN3SERuVjtWem80QE47MmE+fCFJUkZsJi1JTDV6QDZUKytOY05Hbz4KelVz
Sno8QlF6WSgzNFc0S0I3fSZadkRnbEh5TUJMRDhNdGw+SlF1VDElSXIoUD92dGA2UyU5N3Y1QWpH
K19CSmpOCnopWm0lbzRUUmMxRG5rT0s5SDxqbylBZDI8cnU0QEszQXtFTyZVR1dsSkxLTGEkZXJe
blpPYj9OSmxjP1BJS3kzIwp6RWx8P3l0dEp4Jkl6KnhnQGhEZklTJm87O08heWlDYHh+Rkh0PWNR
TXVDM2JFPlU5QXA/Nk9FKE48PW1ZQDhfWWgKekx7a1k4cUo1amhKaW5kRDhBPEFGcnhjI3tLPCYo
Wk8kNzdXKn57ZFM4MnNDT2ZYdE5tUFY5Q0xFbnt1TjYyaDJFCnpaemMhX0VoM1hlPEpWeVZMQjt4
ciNtNmt4U2xuZHNKXztScmU4P0l1cjdARkJxO0VVdSt4ZT5nMlRoNUkwJShLJQp6WCREYztHPTln
OGFse2MqIyV5V0VfIWJWYnJpfl55N2cjYVI0ck0hWnFoM0dnYFc4WEtWdktLQEVFdE9EV1g0Ni0K
eklKP0RWU1UrUU40VFplNSk5PlRsVHRqNWhFbFZBKVRyWmtOPXkqNyY2WW9BfVVHaVVPJmlzfXFq
ZnJWRmV2cDc7Cno0YWVzamtyaFNoTzRSRyYoQUxGQmBKKlkzSH1ieEtxOEIpNTxEeFMlNjJeI1Jk
N2NKYT1ocCEobylvOUNGUHtpNwp6UkBoOU9aR1R6Ml5FfTloPnhoK0A0eyEkUTtPdGYrWm4wQERo
RHkxQDEkYGR7N0JyZ2YwTno5THV3PDY3LSpUMmsKenBhZmModmYmKFRJRVZJV1VQcmd9REdUdiMj
SXEybFF9ISNqS0tiT20pLWAqNWI4WVJHd0lNbyh3elpFfUgmKlN8Cnp0PTgpQzBWQGZlIUowRmNQ
dmRBKWR8R2FYI2NOIV9mS2t4akFKMTxFQG9+UC1VSjFiVzgpfG4+Wm1SXlF5QHI0Pwp6O0hMfnww
ZzQkc3NgJWlCMlojbmZlMUAkUjJvbEtZS2NRQHJmSlM1eTJ4UEI3NzRoWE9XbyFmUD4qfj1CSmA9
cVEKel5hQVB3YXMtOSZJbXE2KTNnaW5BNUN+PlNpR0lNZ3RrS3sheCgoU09lIVRFVV95VTY4Rjt2
eH5ISTwlR0FjcDdnCnoyP0VtIWk8PFo+aVJ7PC1gTjlXI18heXo0PUh6IUF6YzxpYHVNXklLITJO
Iyh0cT5rQXpSbXpsJis3TSsze05ZTwp6WGtEa2BtWH13dksjKWRQWSU1ZkA8USFVQjV4IUpHWHEj
KSpXZlJ9NDFSP1RAMGJyMFEkNmMqdzFEMlJhJTNMcDsKemJSKUwzKDM1PjxLb3UwPDAzVnt6c2F1
Y1ljejQ7blg/anQzRipTRj49JUx4YzFweE1acndoRXI3WX1mYWNLdmlnCnp6TUlrSk9jbHNiTWRx
ZStrb240amxDcWMoWXU5JmxoakVzU3p9QCVrY0ZncT0ofXVPeyhwRSFUPl5tTl5yTGpPRQp6MDlw
STZ4Nm1VUFhJKkZRMWA1R3g0Y1U0VVFiZVRXP3BQYl9yaVF2c2tfdkVUVXg1ckFgIyNfV0haOEx0
bDklNnAKeilSKDlGUDdzVEx2Xn18YCMtKzlLOEcjS2IqR3BuMSU3VSZjdEhhX2hpeWFtfGkoakI8
O3U/aXdadDBMJXdCdnU5CnpSej56Smk0NyszOE5uUWBGPVRoWTEzYm9PMSF+OzVUc25ofjNkKEI2
bUB2KjVHb2B+M2dkRW4ydkc/K000JFVaXwp6RnZZbnpeK1h2dHFPbTVpUlVoPFRWfng2RFE5aVFF
JGJwIUV3Zj9xNjQjKUstRz16STFtby1Gc0w0Vm0xSHFqeU0KeiZmcnQjbShOV3NjSWp6XjRpfkVU
NCM2IVVBcnhpNWxRcWZlV0diUDNub25AO2h1JT5WYjNkSSZNeyp1VHdadz9GCmNVWT5ZbXdtd19N
emY8XkVNZzgyJmR2JFpYSmFeJUwwbn5KeztzNXt1CgpsaXRlcmFsIDAKSGNtVj9kMDAwMDEKCg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>81333</attachid>
            <date>2011-02-04 18:18:18 -0800</date>
            <delta_ts>2011-02-05 14:26:19 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-53722-20110204181817.patch</filename>
            <type>text/plain</type>
            <size>9592</size>
            <attacher name="Alexey Marinichev">amarinichev</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJDb3JlL0No
YW5nZUxvZwppbmRleCBmOTFmNDU3N2M1OTM4ZTFiYTQ3ZWUzZDhkOWY1NDYyNGQ1MDBlNzMxLi44
YzdjY2UwNzEyNzU4NGExOTlhYjhkNzg1NGEzZDEwMjU4MmRlMTNkIDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViQ29yZS9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCkBAIC0x
LDMgKzEsMjQgQEAKKzIwMTEtMDItMDMgIEFsZXhleSBNYXJpbmljaGV2ICA8YW1hcmluaWNoZXZA
Y2hyb21pdW0ub3JnPgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisg
ICAgICAgIEhvb2sgdXAgV2ViR3JhcGhpY3NDb250ZXh0M0Q6OnNldENvbnRleHRMb3N0Q2FsbGJh
Y2suCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD01Mzcy
MgorCisgICAgICAgIFRlc3Q6IGZhc3QvY2FudmFzL3dlYmdsL2NvbnRleHQtbG9zdC5odG1sLCBj
b21tZW50IG91dCB0aGUgbGluZSB3aXRoCisgICAgICAgIGV4dGVuc2lvbi5sb3NlQ29udGV4dCgp
IGFuZCBraWxsIHRoZSBHUFUgcHJvY2VzcyAiTG9zZSBjb250ZXh0IgorICAgICAgICBtZXNzYWdl
IHNob3dzIHVwLgorCisgICAgICAgICogaHRtbC9jYW52YXMvV2ViR0xSZW5kZXJpbmdDb250ZXh0
LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OldlYkdMUmVuZGVyaW5nQ29udGV4dExvc3RDYWxsYmFj
azo6V2ViR0xSZW5kZXJpbmdDb250ZXh0TG9zdENhbGxiYWNrKToKKyAgICAgICAgKFdlYkNvcmU6
OldlYkdMUmVuZGVyaW5nQ29udGV4dExvc3RDYWxsYmFjazo6b25Db250ZXh0TG9zdCk6CisgICAg
ICAgIChXZWJDb3JlOjpXZWJHTFJlbmRlcmluZ0NvbnRleHQ6OldlYkdMUmVuZGVyaW5nQ29udGV4
dCk6CisgICAgICAgICogcGxhdGZvcm0vZ3JhcGhpY3MvR3JhcGhpY3NDb250ZXh0M0QuaDogYWRk
ZWQgc2V0Q29udGV4dExvc3RDYWxsYmFjaworICAgICAgICAqIHBsYXRmb3JtL2dyYXBoaWNzL21h
Yy9HcmFwaGljc0NvbnRleHQzRE1hYy5tbToKKyAgICAgICAgKFdlYkNvcmU6OkdyYXBoaWNzQ29u
dGV4dDNEOjpzZXRDb250ZXh0TG9zdENhbGxiYWNrKTogc3R1YgorICAgICAgICAqIHBsYXRmb3Jt
L2dyYXBoaWNzL3F0L0dyYXBoaWNzQ29udGV4dDNEUXQuY3BwOgorICAgICAgICAoV2ViQ29yZTo6
R3JhcGhpY3NDb250ZXh0M0Q6OnNldENvbnRleHRMb3N0Q2FsbGJhY2spOiBzdHViCisKIDIwMTEt
MDItMDIgIEx1aXogQWdvc3RpbmkgIDxsdWl6LmFnb3N0aW5pQG9wZW5ib3NzYS5vcmc+CiAKICAg
ICAgICAgUmV2aWV3ZWQgYnkgRGF2aWQgSHlhdHQuCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29y
ZS9odG1sL2NhbnZhcy9XZWJHTFJlbmRlcmluZ0NvbnRleHQuY3BwIGIvU291cmNlL1dlYkNvcmUv
aHRtbC9jYW52YXMvV2ViR0xSZW5kZXJpbmdDb250ZXh0LmNwcAppbmRleCBmN2RmNTZjODBlODZh
YzA4YmRmNDIyNzRkZGE0MWU1Nzk4Njc2OTg3Li45MWY3OTM1YWE2OGM1Yzg2Y2YzNzkzMGRlOGU2
ZWViM2ZiNWFjMzM4IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9odG1sL2NhbnZhcy9XZWJH
TFJlbmRlcmluZ0NvbnRleHQuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvY2FudmFzL1dl
YkdMUmVuZGVyaW5nQ29udGV4dC5jcHAKQEAgLTM0MSw2ICszNDEsMTQgQEAgdm9pZCBXZWJHTFJl
bmRlcmluZ0NvbnRleHQ6OldlYkdMUmVuZGVyaW5nQ29udGV4dFJlc3RvcmVUaW1lcjo6ZmlyZWQo
KQogICAgIH0KIH0KIAorY2xhc3MgV2ViR0xSZW5kZXJpbmdDb250ZXh0TG9zdENhbGxiYWNrIDog
cHVibGljIEdyYXBoaWNzQ29udGV4dDNEOjpDb250ZXh0TG9zdENhbGxiYWNrIHsKK3B1YmxpYzoK
KyAgICBXZWJHTFJlbmRlcmluZ0NvbnRleHRMb3N0Q2FsbGJhY2soV2ViR0xSZW5kZXJpbmdDb250
ZXh0KiBjYikgOiBtX2NvbnRleHRMb3N0Q2FsbGJhY2soY2IpIHt9CisgICAgdmlydHVhbCB2b2lk
IG9uQ29udGV4dExvc3QoKSB7IG1fY29udGV4dExvc3RDYWxsYmFjay0+Zm9yY2VMb3N0Q29udGV4
dCgpOyB9Citwcml2YXRlOgorICAgIFdlYkdMUmVuZGVyaW5nQ29udGV4dCogbV9jb250ZXh0TG9z
dENhbGxiYWNrOworfTsKKwogUGFzc093blB0cjxXZWJHTFJlbmRlcmluZ0NvbnRleHQ+IFdlYkdM
UmVuZGVyaW5nQ29udGV4dDo6Y3JlYXRlKEhUTUxDYW52YXNFbGVtZW50KiBjYW52YXMsIFdlYkdM
Q29udGV4dEF0dHJpYnV0ZXMqIGF0dHJzKQogewogICAgIEhvc3RXaW5kb3cqIGhvc3RXaW5kb3cg
PSBjYW52YXMtPmRvY3VtZW50KCktPnZpZXcoKS0+cm9vdCgpLT5ob3N0V2luZG93KCk7CkBAIC00
MTYsNiArNDI0LDggQEAgdm9pZCBXZWJHTFJlbmRlcmluZ0NvbnRleHQ6OmluaXRpYWxpemVOZXdD
b250ZXh0KCkKIAogICAgIG1fY29udGV4dC0+cmVzaGFwZShjYW52YXMoKS0+d2lkdGgoKSwgY2Fu
dmFzKCktPmhlaWdodCgpKTsKICAgICBtX2NvbnRleHQtPnZpZXdwb3J0KDAsIDAsIGNhbnZhcygp
LT53aWR0aCgpLCBjYW52YXMoKS0+aGVpZ2h0KCkpOworCisgICAgbV9jb250ZXh0LT5zZXRDb250
ZXh0TG9zdENhbGxiYWNrKGFkb3B0UHRyKG5ldyBXZWJHTFJlbmRlcmluZ0NvbnRleHRMb3N0Q2Fs
bGJhY2sodGhpcykpKTsKIH0KIAogdm9pZCBXZWJHTFJlbmRlcmluZ0NvbnRleHQ6OnNldHVwRmxh
Z3MoKQpAQCAtNDM3LDYgKzQ0Nyw3IEBAIHZvaWQgV2ViR0xSZW5kZXJpbmdDb250ZXh0OjpzZXR1
cEZsYWdzKCkKIFdlYkdMUmVuZGVyaW5nQ29udGV4dDo6fldlYkdMUmVuZGVyaW5nQ29udGV4dCgp
CiB7CiAgICAgZGV0YWNoQW5kUmVtb3ZlQWxsT2JqZWN0cygpOworICAgIG1fY29udGV4dC0+c2V0
Q29udGV4dExvc3RDYWxsYmFjaygwKTsKIH0KIAogdm9pZCBXZWJHTFJlbmRlcmluZ0NvbnRleHQ6
Om1hcmtDb250ZXh0Q2hhbmdlZCgpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9y
bS9ncmFwaGljcy9HcmFwaGljc0NvbnRleHQzRC5oIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0v
Z3JhcGhpY3MvR3JhcGhpY3NDb250ZXh0M0QuaAppbmRleCA0N2I5NTNlYjM2MmJhNzQwOWRhNDc4
ZWY4NWJkYTQ2ZDNjMWE0ZmY4Li44NTgwMTBlMmQwNzJiYmU5YmRmYmQ1YjkyMTE0YTg5MjhjNjkw
ZDQxIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9HcmFwaGlj
c0NvbnRleHQzRC5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL0dyYXBo
aWNzQ29udGV4dDNELmgKQEAgLTQ1NCw2ICs0NTQsMTMgQEAgcHVibGljOgogICAgICAgICBSZW5k
ZXJEaXJlY3RseVRvSG9zdFdpbmRvdwogICAgIH07CiAKKyAgICBjbGFzcyBDb250ZXh0TG9zdENh
bGxiYWNrIHsKKyAgICBwdWJsaWM6CisgICAgICAgIHZpcnR1YWwgdm9pZCBvbkNvbnRleHRMb3N0
KCkgPSAwOworICAgIH07CisKKyAgICB2b2lkIHNldENvbnRleHRMb3N0Q2FsbGJhY2soUGFzc093
blB0cjxDb250ZXh0TG9zdENhbGxiYWNrPik7CisKICAgICBzdGF0aWMgUGFzc1JlZlB0cjxHcmFw
aGljc0NvbnRleHQzRD4gY3JlYXRlKEF0dHJpYnV0ZXMsIEhvc3RXaW5kb3cqLCBSZW5kZXJTdHls
ZSA9IFJlbmRlck9mZnNjcmVlbik7CiAgICAgfkdyYXBoaWNzQ29udGV4dDNEKCk7CiAKZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL21hYy9HcmFwaGljc0NvbnRl
eHQzRE1hYy5tbSBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL21hYy9HcmFwaGlj
c0NvbnRleHQzRE1hYy5tbQppbmRleCA4Nzc3ZWNjYjYwNWQ2ZTgzYzkzNDIxYWFkODEyMDEyYWIx
ZmE0NTFhLi5hYWEyNTBiMmNmZWQyN2UwNTIwZGZlMzI3MWZiZTkyZTk0NjI0ZTQwIDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9tYWMvR3JhcGhpY3NDb250ZXh0
M0RNYWMubW0KKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvbWFjL0dyYXBo
aWNzQ29udGV4dDNETWFjLm1tCkBAIC0yNDUsNiArMjQ1LDEwIEBAIGJvb2wgR3JhcGhpY3NDb250
ZXh0M0Q6OmlzR0xFUzJDb21wbGlhbnQoKSBjb25zdAogICAgIHJldHVybiBmYWxzZTsKIH0KIAor
dm9pZCBHcmFwaGljc0NvbnRleHQzRDo6c2V0Q29udGV4dExvc3RDYWxsYmFjayhQYXNzT3duUHRy
PENvbnRleHRMb3N0Q2FsbGJhY2s+KQoreworfQorCiB9CiAKICNlbmRpZiAvLyBFTkFCTEUoV0VC
R0wpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9xdC9HcmFw
aGljc0NvbnRleHQzRFF0LmNwcCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL3F0
L0dyYXBoaWNzQ29udGV4dDNEUXQuY3BwCmluZGV4IDY0YjhhZDEwYTgwNWFiMzU1ZDU4ODQyYzBm
OTY0NmU1YTQ5OTYxZmMuLjhiODdmNWYwNDgzNGI3NjA5ODY4ODc0NjE5YmMwN2QzNzZhNGVlMmYg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL3F0L0dyYXBoaWNz
Q29udGV4dDNEUXQuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL3F0
L0dyYXBoaWNzQ29udGV4dDNEUXQuY3BwCkBAIC0xNjQ3LDYgKzE2NDcsMTAgQEAgYm9vbCBHcmFw
aGljc0NvbnRleHQzRDo6Z2V0SW1hZ2VEYXRhKEltYWdlKiBpbWFnZSwKICAgICAgICAgICAgICAg
ICAgICAgICBmb3JtYXQsIHR5cGUsIG5lZWRlZEFscGhhT3AsIG91dHB1dFZlY3Rvci5kYXRhKCkp
OwogfQogCit2b2lkIEdyYXBoaWNzQ29udGV4dDNEOjpzZXRDb250ZXh0TG9zdENhbGxiYWNrKFBh
c3NPd25QdHI8Q29udGV4dExvc3RDYWxsYmFjaz4pCit7Cit9CisKIH0KIAogI2VuZGlmIC8vIEVO
QUJMRShXRUJHTCkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvY2hyb21pdW0vQ2hhbmdlTG9n
IGIvU291cmNlL1dlYktpdC9jaHJvbWl1bS9DaGFuZ2VMb2cKaW5kZXggMTFhMzdiNzRkY2IxOGE0
NjY1NmY0ZGI3ZDJiYWMzNGVlZGI1NmQ3OS4uYmVmY2Y2NWZlNTdhZjUzYmFjOTdkZDc1YWViMWY4
MDI2Y2E1NjljYyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9jaHJvbWl1bS9DaGFuZ2VMb2cK
KysrIGIvU291cmNlL1dlYktpdC9jaHJvbWl1bS9DaGFuZ2VMb2cKQEAgLTEsMyArMSwyMiBAQAor
MjAxMS0wMi0wMyAgQWxleGV5IE1hcmluaWNoZXYgIDxhbWFyaW5pY2hldkBjaHJvbWl1bS5vcmc+
CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgSG9vayB1
cCBXZWJHcmFwaGljc0NvbnRleHQzRDo6c2V0Q29udGV4dExvc3RDYWxsYmFjay4KKyAgICAgICAg
aHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTUzNzIyCisKKyAgICAgICAg
VGVzdDogZmFzdC9jYW52YXMvd2ViZ2wvY29udGV4dC1sb3N0Lmh0bWwsIGNvbW1lbnQgb3V0IHRo
ZSBsaW5lIHdpdGgKKyAgICAgICAgZXh0ZW5zaW9uLmxvc2VDb250ZXh0KCkgYW5kIGtpbGwgdGhl
IEdQVSBwcm9jZXNzICJMb3NlIGNvbnRleHQiCisgICAgICAgIG1lc3NhZ2Ugc2hvd3MgdXAuCisK
KyAgICAgICAgKiBzcmMvR3JhcGhpY3NDb250ZXh0M0RDaHJvbWl1bS5jcHA6CisgICAgICAgIChX
ZWJDb3JlOjpHcmFwaGljc0NvbnRleHQzREludGVybmFsOjppbml0aWFsaXplKToKKyAgICAgICAg
KFdlYkNvcmU6OkdyYXBoaWNzQ29udGV4dExvc3RDYWxsYmFja0FkYXB0ZXI6OkdyYXBoaWNzQ29u
dGV4dExvc3RDYWxsYmFja0FkYXB0ZXIpOgorICAgICAgICAoV2ViQ29yZTo6R3JhcGhpY3NDb250
ZXh0TG9zdENhbGxiYWNrQWRhcHRlcjo6b25Db250ZXh0TG9zdCk6CisgICAgICAgIChXZWJDb3Jl
OjpHcmFwaGljc0NvbnRleHRMb3N0Q2FsbGJhY2tBZGFwdGVyOjpjcmVhdGUpOgorICAgICAgICAo
V2ViQ29yZTo6R3JhcGhpY3NDb250ZXh0M0RJbnRlcm5hbDo6c2V0Q29udGV4dExvc3RDYWxsYmFj
ayk6CisgICAgICAgICogc3JjL0dyYXBoaWNzQ29udGV4dDNESW50ZXJuYWwuaDoKKwogMjAxMS0w
Mi0wMSAgRGFyaW4gRmlzaGVyICA8ZGFyaW5AY2hyb21pdW0ub3JnPgogCiAgICAgICAgIFJldmll
d2VkIGJ5IEtlbm5ldGggUnVzc2VsbC4KQEAgLTQ1MCw2ICs0NjksMTYgQEAKIAogICAgICAgICAq
IHNyYy9qcy9UZXN0cy5qczoKIAorMjAxMS0wMS0yNSAgQWxleGV5IE1hcmluaWNoZXYgIDxhbWFy
aW5pY2hldkBjaHJvbWl1bS5vcmc+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BT
ISkuCisKKyAgICAgICAgQWRkIGEgY2FsbGJhY2sgdG8gV2ViR3JhcGhpY3NDb250ZXh0M0QgdGhh
dCBpcyBjYWxsZWQgd2hlbiBhIGNvbnRleHQgaXMgbG9zdAorICAgICAgICBodHRwczovL2J1Z3Mu
d2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9NTMxNTMKKworICAgICAgICAqIHB1YmxpYy9XZWJH
cmFwaGljc0NvbnRleHQzRC5oOgorICAgICAgICAoV2ViS2l0OjpXZWJHcmFwaGljc0NvbnRleHQz
RDo6c2V0Q29udGV4dExvc3RDYWxsYmFjayk6CisKIDIwMTEtMDEtMjQgIFpoZW55YW8gTW8gIDx6
bW9AZ29vZ2xlLmNvbT4KIAogICAgICAgICBSZXZpZXdlZCBieSBEYXJpbiBBZGxlci4KZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJLaXQvY2hyb21pdW0vc3JjL0dyYXBoaWNzQ29udGV4dDNEQ2hyb21p
dW0uY3BwIGIvU291cmNlL1dlYktpdC9jaHJvbWl1bS9zcmMvR3JhcGhpY3NDb250ZXh0M0RDaHJv
bWl1bS5jcHAKaW5kZXggOWI1YmYwODJiOGIzNWE0YjZiZDYzYzE5MjExMDU5MDVjZjNkNDgzMS4u
YzU1NDdjYTY5MWNiYTdhOTc2MzVhYmZmMTNlMTJhNjM3ODA1MGExOSAxMDA2NDQKLS0tIGEvU291
cmNlL1dlYktpdC9jaHJvbWl1bS9zcmMvR3JhcGhpY3NDb250ZXh0M0RDaHJvbWl1bS5jcHAKKysr
IGIvU291cmNlL1dlYktpdC9jaHJvbWl1bS9zcmMvR3JhcGhpY3NDb250ZXh0M0RDaHJvbWl1bS5j
cHAKQEAgLTEwODIsNiArMTA4MiwzNCBAQCBERUxFR0FURV9UT19JTlRFUk5BTF8xKGRlbGV0ZVRl
eHR1cmUsIFBsYXRmb3JtM0RPYmplY3QpCiBERUxFR0FURV9UT19JTlRFUk5BTF8xKHN5bnRoZXNp
emVHTEVycm9yLCBHQzNEZW51bSkKIERFTEVHQVRFX1RPX0lOVEVSTkFMX1IoZ2V0RXh0ZW5zaW9u
cywgRXh0ZW5zaW9uczNEKikKIAorREVMRUdBVEVfVE9fSU5URVJOQUxfMShzZXRDb250ZXh0TG9z
dENhbGxiYWNrLCBQYXNzT3duUHRyPEdyYXBoaWNzQ29udGV4dDNEOjpDb250ZXh0TG9zdENhbGxi
YWNrPikKKworY2xhc3MgR3JhcGhpY3NDb250ZXh0TG9zdENhbGxiYWNrQWRhcHRlciA6IHB1Ymxp
YyBXZWJLaXQ6OldlYkdyYXBoaWNzQ29udGV4dDNEOjpXZWJHcmFwaGljc0NvbnRleHRMb3N0Q2Fs
bGJhY2sgeworcHVibGljOgorICAgIHZpcnR1YWwgdm9pZCBvbkNvbnRleHRMb3N0KCk7CisgICAg
c3RhdGljIFBhc3NPd25QdHI8R3JhcGhpY3NDb250ZXh0TG9zdENhbGxiYWNrQWRhcHRlcj4gY3Jl
YXRlKFBhc3NPd25QdHI8R3JhcGhpY3NDb250ZXh0M0Q6OkNvbnRleHRMb3N0Q2FsbGJhY2s+KTsK
K3ByaXZhdGU6CisgICAgR3JhcGhpY3NDb250ZXh0TG9zdENhbGxiYWNrQWRhcHRlcihQYXNzT3du
UHRyPEdyYXBoaWNzQ29udGV4dDNEOjpDb250ZXh0TG9zdENhbGxiYWNrPiBjYikgOiBtX2NvbnRl
eHRMb3N0Q2FsbGJhY2soY2IpIHt9CisgICAgT3duUHRyPEdyYXBoaWNzQ29udGV4dDNEOjpDb250
ZXh0TG9zdENhbGxiYWNrPiBtX2NvbnRleHRMb3N0Q2FsbGJhY2s7Cit9OworCit2b2lkIEdyYXBo
aWNzQ29udGV4dExvc3RDYWxsYmFja0FkYXB0ZXI6Om9uQ29udGV4dExvc3QoKQoreworICAgIGlm
IChtX2NvbnRleHRMb3N0Q2FsbGJhY2spCisgICAgICAgIG1fY29udGV4dExvc3RDYWxsYmFjay0+
b25Db250ZXh0TG9zdCgpOworfQorCitQYXNzT3duUHRyPEdyYXBoaWNzQ29udGV4dExvc3RDYWxs
YmFja0FkYXB0ZXI+IEdyYXBoaWNzQ29udGV4dExvc3RDYWxsYmFja0FkYXB0ZXI6OmNyZWF0ZShQ
YXNzT3duUHRyPEdyYXBoaWNzQ29udGV4dDNEOjpDb250ZXh0TG9zdENhbGxiYWNrPiBjYikKK3sK
KyAgICByZXR1cm4gYWRvcHRQdHIobmV3IEdyYXBoaWNzQ29udGV4dExvc3RDYWxsYmFja0FkYXB0
ZXIoY2IpKTsKK30KKwordm9pZCBHcmFwaGljc0NvbnRleHQzREludGVybmFsOjpzZXRDb250ZXh0
TG9zdENhbGxiYWNrKFBhc3NPd25QdHI8R3JhcGhpY3NDb250ZXh0M0Q6OkNvbnRleHRMb3N0Q2Fs
bGJhY2s+IGNiKQoreworICAgIG1fY29udGV4dExvc3RDYWxsYmFja0FkYXB0ZXIgPSBHcmFwaGlj
c0NvbnRleHRMb3N0Q2FsbGJhY2tBZGFwdGVyOjpjcmVhdGUoY2IpOworICAgIG1faW1wbC0+c2V0
Q29udGV4dExvc3RDYWxsYmFjayhtX2NvbnRleHRMb3N0Q2FsbGJhY2tBZGFwdGVyLmdldCgpKTsK
K30KKwogYm9vbCBHcmFwaGljc0NvbnRleHQzRDo6aXNHTEVTMkNvbXBsaWFudCgpIGNvbnN0CiB7
CiAgICAgcmV0dXJuIG1faW50ZXJuYWwtPmlzR0xFUzJDb21wbGlhbnQoKTsKZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJLaXQvY2hyb21pdW0vc3JjL0dyYXBoaWNzQ29udGV4dDNESW50ZXJuYWwuaCBi
L1NvdXJjZS9XZWJLaXQvY2hyb21pdW0vc3JjL0dyYXBoaWNzQ29udGV4dDNESW50ZXJuYWwuaApp
bmRleCAwYTcwNjEzNmM1ZTg0NmRmODFjM2YzMTZiYjhlODJmMTc3OWE1ZmI2Li5iZTljZTE2ZGMz
ZmM1MDYzODhlZjM1YmYwY2E0MGEyNmM2YjIzYTUxIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0
L2Nocm9taXVtL3NyYy9HcmFwaGljc0NvbnRleHQzREludGVybmFsLmgKKysrIGIvU291cmNlL1dl
YktpdC9jaHJvbWl1bS9zcmMvR3JhcGhpY3NDb250ZXh0M0RJbnRlcm5hbC5oCkBAIC00NCw2ICs0
NCw3IEBAIGNsYXNzIEV4dGVuc2lvbnMzRENocm9taXVtOwogI2lmIFVTRShBQ0NFTEVSQVRFRF9D
T01QT1NJVElORykKIGNsYXNzIFdlYkdMTGF5ZXJDaHJvbWl1bTsKICNlbmRpZgorY2xhc3MgR3Jh
cGhpY3NDb250ZXh0TG9zdENhbGxiYWNrQWRhcHRlcjsKIAogY2xhc3MgR3JhcGhpY3NDb250ZXh0
M0RJbnRlcm5hbCB7CiBwdWJsaWM6CkBAIC0yMzksNiArMjQwLDggQEAgcHVibGljOgogCiAgICAg
dm9pZCBzeW50aGVzaXplR0xFcnJvcihHQzNEZW51bSBlcnJvcik7CiAKKyAgICB2b2lkIHNldENv
bnRleHRMb3N0Q2FsbGJhY2soUGFzc093blB0cjxHcmFwaGljc0NvbnRleHQzRDo6Q29udGV4dExv
c3RDYWxsYmFjaz4pOworCiAgICAgLy8gRXh0ZW5zaW9uczNEIHN1cHBvcnQuCiAgICAgRXh0ZW5z
aW9uczNEKiBnZXRFeHRlbnNpb25zKCk7CiAgICAgYm9vbCBzdXBwb3J0c0V4dGVuc2lvbihjb25z
dCBTdHJpbmcmIG5hbWUpOwpAQCAtMjY1LDYgKzI2OCw3IEBAIHB1YmxpYzoKIHByaXZhdGU6CiAg
ICAgT3duUHRyPFdlYktpdDo6V2ViR3JhcGhpY3NDb250ZXh0M0Q+IG1faW1wbDsKICAgICBPd25Q
dHI8RXh0ZW5zaW9uczNEQ2hyb21pdW0+IG1fZXh0ZW5zaW9uczsKKyAgICBPd25QdHI8R3JhcGhp
Y3NDb250ZXh0TG9zdENhbGxiYWNrQWRhcHRlcj4gbV9jb250ZXh0TG9zdENhbGxiYWNrQWRhcHRl
cjsKICAgICBXZWJLaXQ6OldlYlZpZXdJbXBsKiBtX3dlYlZpZXdJbXBsOwogICAgIGJvb2wgbV9p
bml0aWFsaXplZEF2YWlsYWJsZUV4dGVuc2lvbnM7CiAgICAgSGFzaFNldDxTdHJpbmc+IG1fZW5h
YmxlZEV4dGVuc2lvbnM7Cg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>81374</attachid>
            <date>2011-02-05 14:26:21 -0800</date>
            <delta_ts>2011-02-07 09:41:23 -0800</delta_ts>
            <desc>added virtual destructors</desc>
            <filename>bug-53722-20110205142620.patch</filename>
            <type>text/plain</type>
            <size>10718</size>
            <attacher name="Alexey Marinichev">amarinichev</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJDb3JlL0No
YW5nZUxvZwppbmRleCBmOTFmNDU3N2M1OTM4ZTFiYTQ3ZWUzZDhkOWY1NDYyNGQ1MDBlNzMxLi40
NWZkYWI0NTJlYWJmNWE5ZWE2YjJlNDFjMWE5MzUyMTE4MWQ2ODFiIDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViQ29yZS9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCkBAIC0x
LDMgKzEsMjYgQEAKKzIwMTEtMDItMDUgIEFsZXhleSBNYXJpbmljaGV2ICA8YW1hcmluaWNoZXZA
Y2hyb21pdW0ub3JnPgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisg
ICAgICAgIEhvb2sgdXAgV2ViR3JhcGhpY3NDb250ZXh0M0Q6OnNldENvbnRleHRMb3N0Q2FsbGJh
Y2suCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD01Mzcy
MgorCisgICAgICAgIFRlc3Q6IGZhc3QvY2FudmFzL3dlYmdsL2NvbnRleHQtbG9zdC5odG1sLCBj
b21tZW50IG91dCB0aGUgbGluZSB3aXRoCisgICAgICAgIGV4dGVuc2lvbi5sb3NlQ29udGV4dCgp
IGFuZCBraWxsIHRoZSBHUFUgcHJvY2VzcyAiTG9zZSBjb250ZXh0IgorICAgICAgICBtZXNzYWdl
IHNob3dzIHVwLgorCisgICAgICAgICogaHRtbC9jYW52YXMvV2ViR0xSZW5kZXJpbmdDb250ZXh0
LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OldlYkdMUmVuZGVyaW5nQ29udGV4dExvc3RDYWxsYmFj
azo6V2ViR0xSZW5kZXJpbmdDb250ZXh0TG9zdENhbGxiYWNrKToKKyAgICAgICAgKFdlYkNvcmU6
OldlYkdMUmVuZGVyaW5nQ29udGV4dExvc3RDYWxsYmFjazo6b25Db250ZXh0TG9zdCk6CisgICAg
ICAgIChXZWJDb3JlOjpXZWJHTFJlbmRlcmluZ0NvbnRleHRMb3N0Q2FsbGJhY2s6On5XZWJHTFJl
bmRlcmluZ0NvbnRleHRMb3N0Q2FsbGJhY2spOgorICAgICAgICAoV2ViQ29yZTo6V2ViR0xSZW5k
ZXJpbmdDb250ZXh0Ojppbml0aWFsaXplTmV3Q29udGV4dCk6CisgICAgICAgIChXZWJDb3JlOjpX
ZWJHTFJlbmRlcmluZ0NvbnRleHQ6On5XZWJHTFJlbmRlcmluZ0NvbnRleHQpOgorICAgICAgICAq
IHBsYXRmb3JtL2dyYXBoaWNzL0dyYXBoaWNzQ29udGV4dDNELmg6IGFkZGVkIHNldENvbnRleHRM
b3N0Q2FsbGJhY2sKKyAgICAgICAgKiBwbGF0Zm9ybS9ncmFwaGljcy9tYWMvR3JhcGhpY3NDb250
ZXh0M0RNYWMubW06CisgICAgICAgIChXZWJDb3JlOjpHcmFwaGljc0NvbnRleHQzRDo6c2V0Q29u
dGV4dExvc3RDYWxsYmFjayk6IHN0dWIKKyAgICAgICAgKiBwbGF0Zm9ybS9ncmFwaGljcy9xdC9H
cmFwaGljc0NvbnRleHQzRFF0LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkdyYXBoaWNzQ29udGV4
dDNEOjpzZXRDb250ZXh0TG9zdENhbGxiYWNrKTogc3R1YgorCiAyMDExLTAyLTAyICBMdWl6IEFn
b3N0aW5pICA8bHVpei5hZ29zdGluaUBvcGVuYm9zc2Eub3JnPgogCiAgICAgICAgIFJldmlld2Vk
IGJ5IERhdmlkIEh5YXR0LgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvaHRtbC9jYW52YXMv
V2ViR0xSZW5kZXJpbmdDb250ZXh0LmNwcCBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvY2FudmFzL1dl
YkdMUmVuZGVyaW5nQ29udGV4dC5jcHAKaW5kZXggZjdkZjU2YzgwZTg2YWMwOGJkZjQyMjc0ZGRh
NDFlNTc5ODY3Njk4Ny4uZWU5OWUwYmQ5NzJhNGFkZjU1ZTUwMDRmYmQzZmU0MGViYzY0YjI4MyAx
MDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvaHRtbC9jYW52YXMvV2ViR0xSZW5kZXJpbmdDb250
ZXh0LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL2NhbnZhcy9XZWJHTFJlbmRlcmluZ0Nv
bnRleHQuY3BwCkBAIC0zNDEsNiArMzQxLDE1IEBAIHZvaWQgV2ViR0xSZW5kZXJpbmdDb250ZXh0
OjpXZWJHTFJlbmRlcmluZ0NvbnRleHRSZXN0b3JlVGltZXI6OmZpcmVkKCkKICAgICB9CiB9CiAK
K2NsYXNzIFdlYkdMUmVuZGVyaW5nQ29udGV4dExvc3RDYWxsYmFjayA6IHB1YmxpYyBHcmFwaGlj
c0NvbnRleHQzRDo6Q29udGV4dExvc3RDYWxsYmFjayB7CitwdWJsaWM6CisgICAgV2ViR0xSZW5k
ZXJpbmdDb250ZXh0TG9zdENhbGxiYWNrKFdlYkdMUmVuZGVyaW5nQ29udGV4dCogY2IpIDogbV9j
b250ZXh0TG9zdENhbGxiYWNrKGNiKSB7fQorICAgIHZpcnR1YWwgdm9pZCBvbkNvbnRleHRMb3N0
KCkgeyBtX2NvbnRleHRMb3N0Q2FsbGJhY2stPmZvcmNlTG9zdENvbnRleHQoKTsgfQorICAgIHZp
cnR1YWwgfldlYkdMUmVuZGVyaW5nQ29udGV4dExvc3RDYWxsYmFjaygpIHt9Citwcml2YXRlOgor
ICAgIFdlYkdMUmVuZGVyaW5nQ29udGV4dCogbV9jb250ZXh0TG9zdENhbGxiYWNrOworfTsKKwog
UGFzc093blB0cjxXZWJHTFJlbmRlcmluZ0NvbnRleHQ+IFdlYkdMUmVuZGVyaW5nQ29udGV4dDo6
Y3JlYXRlKEhUTUxDYW52YXNFbGVtZW50KiBjYW52YXMsIFdlYkdMQ29udGV4dEF0dHJpYnV0ZXMq
IGF0dHJzKQogewogICAgIEhvc3RXaW5kb3cqIGhvc3RXaW5kb3cgPSBjYW52YXMtPmRvY3VtZW50
KCktPnZpZXcoKS0+cm9vdCgpLT5ob3N0V2luZG93KCk7CkBAIC00MTYsNiArNDI1LDggQEAgdm9p
ZCBXZWJHTFJlbmRlcmluZ0NvbnRleHQ6OmluaXRpYWxpemVOZXdDb250ZXh0KCkKIAogICAgIG1f
Y29udGV4dC0+cmVzaGFwZShjYW52YXMoKS0+d2lkdGgoKSwgY2FudmFzKCktPmhlaWdodCgpKTsK
ICAgICBtX2NvbnRleHQtPnZpZXdwb3J0KDAsIDAsIGNhbnZhcygpLT53aWR0aCgpLCBjYW52YXMo
KS0+aGVpZ2h0KCkpOworCisgICAgbV9jb250ZXh0LT5zZXRDb250ZXh0TG9zdENhbGxiYWNrKGFk
b3B0UHRyKG5ldyBXZWJHTFJlbmRlcmluZ0NvbnRleHRMb3N0Q2FsbGJhY2sodGhpcykpKTsKIH0K
IAogdm9pZCBXZWJHTFJlbmRlcmluZ0NvbnRleHQ6OnNldHVwRmxhZ3MoKQpAQCAtNDM3LDYgKzQ0
OCw3IEBAIHZvaWQgV2ViR0xSZW5kZXJpbmdDb250ZXh0OjpzZXR1cEZsYWdzKCkKIFdlYkdMUmVu
ZGVyaW5nQ29udGV4dDo6fldlYkdMUmVuZGVyaW5nQ29udGV4dCgpCiB7CiAgICAgZGV0YWNoQW5k
UmVtb3ZlQWxsT2JqZWN0cygpOworICAgIG1fY29udGV4dC0+c2V0Q29udGV4dExvc3RDYWxsYmFj
aygwKTsKIH0KIAogdm9pZCBXZWJHTFJlbmRlcmluZ0NvbnRleHQ6Om1hcmtDb250ZXh0Q2hhbmdl
ZCgpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9HcmFwaGlj
c0NvbnRleHQzRC5oIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvR3JhcGhpY3ND
b250ZXh0M0QuaAppbmRleCA0N2I5NTNlYjM2MmJhNzQwOWRhNDc4ZWY4NWJkYTQ2ZDNjMWE0ZmY4
Li5hNTM1ZjhkNzE2M2E4OGZmNmFkNWZlZTk3ZjM0ZjJlYTVlMGQ5ZTU0IDEwMDY0NAotLS0gYS9T
b3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9HcmFwaGljc0NvbnRleHQzRC5oCisrKyBi
L1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL0dyYXBoaWNzQ29udGV4dDNELmgKQEAg
LTQ1NCw2ICs0NTQsMTQgQEAgcHVibGljOgogICAgICAgICBSZW5kZXJEaXJlY3RseVRvSG9zdFdp
bmRvdwogICAgIH07CiAKKyAgICBjbGFzcyBDb250ZXh0TG9zdENhbGxiYWNrIHsKKyAgICBwdWJs
aWM6CisgICAgICAgIHZpcnR1YWwgdm9pZCBvbkNvbnRleHRMb3N0KCkgPSAwOworICAgICAgICB2
aXJ0dWFsIH5Db250ZXh0TG9zdENhbGxiYWNrKCkge30KKyAgICB9OworCisgICAgdm9pZCBzZXRD
b250ZXh0TG9zdENhbGxiYWNrKFBhc3NPd25QdHI8Q29udGV4dExvc3RDYWxsYmFjaz4pOworCiAg
ICAgc3RhdGljIFBhc3NSZWZQdHI8R3JhcGhpY3NDb250ZXh0M0Q+IGNyZWF0ZShBdHRyaWJ1dGVz
LCBIb3N0V2luZG93KiwgUmVuZGVyU3R5bGUgPSBSZW5kZXJPZmZzY3JlZW4pOwogICAgIH5HcmFw
aGljc0NvbnRleHQzRCgpOwogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9n
cmFwaGljcy9tYWMvR3JhcGhpY3NDb250ZXh0M0RNYWMubW0gYi9Tb3VyY2UvV2ViQ29yZS9wbGF0
Zm9ybS9ncmFwaGljcy9tYWMvR3JhcGhpY3NDb250ZXh0M0RNYWMubW0KaW5kZXggODc3N2VjY2I2
MDVkNmU4M2M5MzQyMWFhZDgxMjAxMmFiMWZhNDUxYS4uYWFhMjUwYjJjZmVkMjdlMDUyMGRmZTMy
NzFmYmU5MmU5NDYyNGU0MCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3Jh
cGhpY3MvbWFjL0dyYXBoaWNzQ29udGV4dDNETWFjLm1tCisrKyBiL1NvdXJjZS9XZWJDb3JlL3Bs
YXRmb3JtL2dyYXBoaWNzL21hYy9HcmFwaGljc0NvbnRleHQzRE1hYy5tbQpAQCAtMjQ1LDYgKzI0
NSwxMCBAQCBib29sIEdyYXBoaWNzQ29udGV4dDNEOjppc0dMRVMyQ29tcGxpYW50KCkgY29uc3QK
ICAgICByZXR1cm4gZmFsc2U7CiB9CiAKK3ZvaWQgR3JhcGhpY3NDb250ZXh0M0Q6OnNldENvbnRl
eHRMb3N0Q2FsbGJhY2soUGFzc093blB0cjxDb250ZXh0TG9zdENhbGxiYWNrPikKK3sKK30KKwog
fQogCiAjZW5kaWYgLy8gRU5BQkxFKFdFQkdMKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUv
cGxhdGZvcm0vZ3JhcGhpY3MvcXQvR3JhcGhpY3NDb250ZXh0M0RRdC5jcHAgYi9Tb3VyY2UvV2Vi
Q29yZS9wbGF0Zm9ybS9ncmFwaGljcy9xdC9HcmFwaGljc0NvbnRleHQzRFF0LmNwcAppbmRleCA2
NGI4YWQxMGE4MDVhYjM1NWQ1ODg0MmMwZjk2NDZlNWE0OTk2MWZjLi44Yjg3ZjVmMDQ4MzRiNzYw
OTg2ODg3NDYxOWJjMDdkMzc2YTRlZTJmIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0
Zm9ybS9ncmFwaGljcy9xdC9HcmFwaGljc0NvbnRleHQzRFF0LmNwcAorKysgYi9Tb3VyY2UvV2Vi
Q29yZS9wbGF0Zm9ybS9ncmFwaGljcy9xdC9HcmFwaGljc0NvbnRleHQzRFF0LmNwcApAQCAtMTY0
Nyw2ICsxNjQ3LDEwIEBAIGJvb2wgR3JhcGhpY3NDb250ZXh0M0Q6OmdldEltYWdlRGF0YShJbWFn
ZSogaW1hZ2UsCiAgICAgICAgICAgICAgICAgICAgICAgZm9ybWF0LCB0eXBlLCBuZWVkZWRBbHBo
YU9wLCBvdXRwdXRWZWN0b3IuZGF0YSgpKTsKIH0KIAordm9pZCBHcmFwaGljc0NvbnRleHQzRDo6
c2V0Q29udGV4dExvc3RDYWxsYmFjayhQYXNzT3duUHRyPENvbnRleHRMb3N0Q2FsbGJhY2s+KQor
eworfQorCiB9CiAKICNlbmRpZiAvLyBFTkFCTEUoV0VCR0wpCmRpZmYgLS1naXQgYS9Tb3VyY2Uv
V2ViS2l0L2Nocm9taXVtL0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJLaXQvY2hyb21pdW0vQ2hhbmdl
TG9nCmluZGV4IDExYTM3Yjc0ZGNiMThhNDY2NTZmNGRiN2QyYmFjMzRlZWRiNTZkNzkuLjg3NjAw
NjQzYWU3ZDhlNTcxNGJmZjExMTFiY2RiZDUwYTBmMWYyMDEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJLaXQvY2hyb21pdW0vQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9XZWJLaXQvY2hyb21pdW0vQ2hh
bmdlTG9nCkBAIC0xLDMgKzEsMjQgQEAKKzIwMTEtMDItMDUgIEFsZXhleSBNYXJpbmljaGV2ICA8
YW1hcmluaWNoZXZAY2hyb21pdW0ub3JnPgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAo
T09QUyEpLgorCisgICAgICAgIEhvb2sgdXAgV2ViR3JhcGhpY3NDb250ZXh0M0Q6OnNldENvbnRl
eHRMb3N0Q2FsbGJhY2suCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVn
LmNnaT9pZD01MzcyMgorCisgICAgICAgIFRlc3Q6IGZhc3QvY2FudmFzL3dlYmdsL2NvbnRleHQt
bG9zdC5odG1sLCBjb21tZW50IG91dCB0aGUgbGluZSB3aXRoCisgICAgICAgIGV4dGVuc2lvbi5s
b3NlQ29udGV4dCgpIGFuZCBraWxsIHRoZSBHUFUgcHJvY2VzcyAiTG9zZSBjb250ZXh0IgorICAg
ICAgICBtZXNzYWdlIHNob3dzIHVwLgorCisgICAgICAgICogcHVibGljL1dlYkdyYXBoaWNzQ29u
dGV4dDNELmg6CisgICAgICAgIChXZWJLaXQ6OldlYkdyYXBoaWNzQ29udGV4dDNEOjpXZWJHcmFw
aGljc0NvbnRleHRMb3N0Q2FsbGJhY2s6On5XZWJHcmFwaGljc0NvbnRleHRMb3N0Q2FsbGJhY2sp
OgorICAgICAgICAqIHNyYy9HcmFwaGljc0NvbnRleHQzRENocm9taXVtLmNwcDoKKyAgICAgICAg
KFdlYkNvcmU6OkdyYXBoaWNzQ29udGV4dExvc3RDYWxsYmFja0FkYXB0ZXI6On5HcmFwaGljc0Nv
bnRleHRMb3N0Q2FsbGJhY2tBZGFwdGVyKToKKyAgICAgICAgKFdlYkNvcmU6OkdyYXBoaWNzQ29u
dGV4dExvc3RDYWxsYmFja0FkYXB0ZXI6OkdyYXBoaWNzQ29udGV4dExvc3RDYWxsYmFja0FkYXB0
ZXIpOgorICAgICAgICAoV2ViQ29yZTo6R3JhcGhpY3NDb250ZXh0TG9zdENhbGxiYWNrQWRhcHRl
cjo6b25Db250ZXh0TG9zdCk6CisgICAgICAgIChXZWJDb3JlOjpHcmFwaGljc0NvbnRleHRMb3N0
Q2FsbGJhY2tBZGFwdGVyOjpjcmVhdGUpOgorICAgICAgICAoV2ViQ29yZTo6R3JhcGhpY3NDb250
ZXh0M0RJbnRlcm5hbDo6c2V0Q29udGV4dExvc3RDYWxsYmFjayk6CisgICAgICAgICogc3JjL0dy
YXBoaWNzQ29udGV4dDNESW50ZXJuYWwuaDoKKwogMjAxMS0wMi0wMSAgRGFyaW4gRmlzaGVyICA8
ZGFyaW5AY2hyb21pdW0ub3JnPgogCiAgICAgICAgIFJldmlld2VkIGJ5IEtlbm5ldGggUnVzc2Vs
bC4KQEAgLTQ1MCw2ICs0NzEsMTYgQEAKIAogICAgICAgICAqIHNyYy9qcy9UZXN0cy5qczoKIAor
MjAxMS0wMS0yNSAgQWxleGV5IE1hcmluaWNoZXYgIDxhbWFyaW5pY2hldkBjaHJvbWl1bS5vcmc+
CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgQWRkIGEg
Y2FsbGJhY2sgdG8gV2ViR3JhcGhpY3NDb250ZXh0M0QgdGhhdCBpcyBjYWxsZWQgd2hlbiBhIGNv
bnRleHQgaXMgbG9zdAorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5j
Z2k/aWQ9NTMxNTMKKworICAgICAgICAqIHB1YmxpYy9XZWJHcmFwaGljc0NvbnRleHQzRC5oOgor
ICAgICAgICAoV2ViS2l0OjpXZWJHcmFwaGljc0NvbnRleHQzRDo6c2V0Q29udGV4dExvc3RDYWxs
YmFjayk6CisKIDIwMTEtMDEtMjQgIFpoZW55YW8gTW8gIDx6bW9AZ29vZ2xlLmNvbT4KIAogICAg
ICAgICBSZXZpZXdlZCBieSBEYXJpbiBBZGxlci4KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQv
Y2hyb21pdW0vcHVibGljL1dlYkdyYXBoaWNzQ29udGV4dDNELmggYi9Tb3VyY2UvV2ViS2l0L2No
cm9taXVtL3B1YmxpYy9XZWJHcmFwaGljc0NvbnRleHQzRC5oCmluZGV4IDk1NThiYmIxZjkxYThm
NjhlY2Y2MWIyODhiMDRjZjkwZjk2ZTc3MmMuLjk4NGY3OWQyNWFhYWQ1N2E1NmU3YWViYTRmNDU5
ODg2YzhlZWQ2YTggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvY2hyb21pdW0vcHVibGljL1dl
YkdyYXBoaWNzQ29udGV4dDNELmgKKysrIGIvU291cmNlL1dlYktpdC9jaHJvbWl1bS9wdWJsaWMv
V2ViR3JhcGhpY3NDb250ZXh0M0QuaApAQCAtOTksNiArOTksNyBAQCBwdWJsaWM6CiAgICAgY2xh
c3MgV2ViR3JhcGhpY3NDb250ZXh0TG9zdENhbGxiYWNrIHsKICAgICBwdWJsaWM6CiAgICAgICAg
IHZpcnR1YWwgdm9pZCBvbkNvbnRleHRMb3N0KCkgPSAwOworICAgICAgICB2aXJ0dWFsIH5XZWJH
cmFwaGljc0NvbnRleHRMb3N0Q2FsbGJhY2soKSB7fQogICAgIH07CiAKICAgICAvLyBUaGlzIGRl
c3RydWN0b3IgbmVlZHMgdG8gYmUgcHVibGljIHNvIHRoYXQgdXNpbmcgY2xhc3NlcyBjYW4gZGVz
dHJveSBpbnN0YW5jZXMgaWYgaW5pdGlhbGl6YXRpb24gZmFpbHMuCmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViS2l0L2Nocm9taXVtL3NyYy9HcmFwaGljc0NvbnRleHQzRENocm9taXVtLmNwcCBiL1Nv
dXJjZS9XZWJLaXQvY2hyb21pdW0vc3JjL0dyYXBoaWNzQ29udGV4dDNEQ2hyb21pdW0uY3BwCmlu
ZGV4IDliNWJmMDgyYjhiMzVhNGI2YmQ2M2MxOTIxMTA1OTA1Y2YzZDQ4MzEuLjA3NTE3ODUyNGIw
ODY5MjFlYjY0ZjU5ZGMwNmI1NWMzMjk3ZjZjZDcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQv
Y2hyb21pdW0vc3JjL0dyYXBoaWNzQ29udGV4dDNEQ2hyb21pdW0uY3BwCisrKyBiL1NvdXJjZS9X
ZWJLaXQvY2hyb21pdW0vc3JjL0dyYXBoaWNzQ29udGV4dDNEQ2hyb21pdW0uY3BwCkBAIC0xMDgy
LDYgKzEwODIsMzUgQEAgREVMRUdBVEVfVE9fSU5URVJOQUxfMShkZWxldGVUZXh0dXJlLCBQbGF0
Zm9ybTNET2JqZWN0KQogREVMRUdBVEVfVE9fSU5URVJOQUxfMShzeW50aGVzaXplR0xFcnJvciwg
R0MzRGVudW0pCiBERUxFR0FURV9UT19JTlRFUk5BTF9SKGdldEV4dGVuc2lvbnMsIEV4dGVuc2lv
bnMzRCopCiAKK0RFTEVHQVRFX1RPX0lOVEVSTkFMXzEoc2V0Q29udGV4dExvc3RDYWxsYmFjaywg
UGFzc093blB0cjxHcmFwaGljc0NvbnRleHQzRDo6Q29udGV4dExvc3RDYWxsYmFjaz4pCisKK2Ns
YXNzIEdyYXBoaWNzQ29udGV4dExvc3RDYWxsYmFja0FkYXB0ZXIgOiBwdWJsaWMgV2ViS2l0OjpX
ZWJHcmFwaGljc0NvbnRleHQzRDo6V2ViR3JhcGhpY3NDb250ZXh0TG9zdENhbGxiYWNrIHsKK3B1
YmxpYzoKKyAgICB2aXJ0dWFsIHZvaWQgb25Db250ZXh0TG9zdCgpOworICAgIHN0YXRpYyBQYXNz
T3duUHRyPEdyYXBoaWNzQ29udGV4dExvc3RDYWxsYmFja0FkYXB0ZXI+IGNyZWF0ZShQYXNzT3du
UHRyPEdyYXBoaWNzQ29udGV4dDNEOjpDb250ZXh0TG9zdENhbGxiYWNrPik7CisgICAgdmlydHVh
bCB+R3JhcGhpY3NDb250ZXh0TG9zdENhbGxiYWNrQWRhcHRlcigpIHt9Citwcml2YXRlOgorICAg
IEdyYXBoaWNzQ29udGV4dExvc3RDYWxsYmFja0FkYXB0ZXIoUGFzc093blB0cjxHcmFwaGljc0Nv
bnRleHQzRDo6Q29udGV4dExvc3RDYWxsYmFjaz4gY2IpIDogbV9jb250ZXh0TG9zdENhbGxiYWNr
KGNiKSB7fQorICAgIE93blB0cjxHcmFwaGljc0NvbnRleHQzRDo6Q29udGV4dExvc3RDYWxsYmFj
az4gbV9jb250ZXh0TG9zdENhbGxiYWNrOworfTsKKwordm9pZCBHcmFwaGljc0NvbnRleHRMb3N0
Q2FsbGJhY2tBZGFwdGVyOjpvbkNvbnRleHRMb3N0KCkKK3sKKyAgICBpZiAobV9jb250ZXh0TG9z
dENhbGxiYWNrKQorICAgICAgICBtX2NvbnRleHRMb3N0Q2FsbGJhY2stPm9uQ29udGV4dExvc3Qo
KTsKK30KKworUGFzc093blB0cjxHcmFwaGljc0NvbnRleHRMb3N0Q2FsbGJhY2tBZGFwdGVyPiBH
cmFwaGljc0NvbnRleHRMb3N0Q2FsbGJhY2tBZGFwdGVyOjpjcmVhdGUoUGFzc093blB0cjxHcmFw
aGljc0NvbnRleHQzRDo6Q29udGV4dExvc3RDYWxsYmFjaz4gY2IpCit7CisgICAgcmV0dXJuIGFk
b3B0UHRyKG5ldyBHcmFwaGljc0NvbnRleHRMb3N0Q2FsbGJhY2tBZGFwdGVyKGNiKSk7Cit9CisK
K3ZvaWQgR3JhcGhpY3NDb250ZXh0M0RJbnRlcm5hbDo6c2V0Q29udGV4dExvc3RDYWxsYmFjayhQ
YXNzT3duUHRyPEdyYXBoaWNzQ29udGV4dDNEOjpDb250ZXh0TG9zdENhbGxiYWNrPiBjYikKK3sK
KyAgICBtX2NvbnRleHRMb3N0Q2FsbGJhY2tBZGFwdGVyID0gR3JhcGhpY3NDb250ZXh0TG9zdENh
bGxiYWNrQWRhcHRlcjo6Y3JlYXRlKGNiKTsKKyAgICBtX2ltcGwtPnNldENvbnRleHRMb3N0Q2Fs
bGJhY2sobV9jb250ZXh0TG9zdENhbGxiYWNrQWRhcHRlci5nZXQoKSk7Cit9CisKIGJvb2wgR3Jh
cGhpY3NDb250ZXh0M0Q6OmlzR0xFUzJDb21wbGlhbnQoKSBjb25zdAogewogICAgIHJldHVybiBt
X2ludGVybmFsLT5pc0dMRVMyQ29tcGxpYW50KCk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0
L2Nocm9taXVtL3NyYy9HcmFwaGljc0NvbnRleHQzREludGVybmFsLmggYi9Tb3VyY2UvV2ViS2l0
L2Nocm9taXVtL3NyYy9HcmFwaGljc0NvbnRleHQzREludGVybmFsLmgKaW5kZXggMGE3MDYxMzZj
NWU4NDZkZjgxYzNmMzE2YmI4ZTgyZjE3NzlhNWZiNi4uYmU5Y2UxNmRjM2ZjNTA2Mzg4ZWYzNWJm
MGNhNDBhMjZjNmIyM2E1MSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9jaHJvbWl1bS9zcmMv
R3JhcGhpY3NDb250ZXh0M0RJbnRlcm5hbC5oCisrKyBiL1NvdXJjZS9XZWJLaXQvY2hyb21pdW0v
c3JjL0dyYXBoaWNzQ29udGV4dDNESW50ZXJuYWwuaApAQCAtNDQsNiArNDQsNyBAQCBjbGFzcyBF
eHRlbnNpb25zM0RDaHJvbWl1bTsKICNpZiBVU0UoQUNDRUxFUkFURURfQ09NUE9TSVRJTkcpCiBj
bGFzcyBXZWJHTExheWVyQ2hyb21pdW07CiAjZW5kaWYKK2NsYXNzIEdyYXBoaWNzQ29udGV4dExv
c3RDYWxsYmFja0FkYXB0ZXI7CiAKIGNsYXNzIEdyYXBoaWNzQ29udGV4dDNESW50ZXJuYWwgewog
cHVibGljOgpAQCAtMjM5LDYgKzI0MCw4IEBAIHB1YmxpYzoKIAogICAgIHZvaWQgc3ludGhlc2l6
ZUdMRXJyb3IoR0MzRGVudW0gZXJyb3IpOwogCisgICAgdm9pZCBzZXRDb250ZXh0TG9zdENhbGxi
YWNrKFBhc3NPd25QdHI8R3JhcGhpY3NDb250ZXh0M0Q6OkNvbnRleHRMb3N0Q2FsbGJhY2s+KTsK
KwogICAgIC8vIEV4dGVuc2lvbnMzRCBzdXBwb3J0LgogICAgIEV4dGVuc2lvbnMzRCogZ2V0RXh0
ZW5zaW9ucygpOwogICAgIGJvb2wgc3VwcG9ydHNFeHRlbnNpb24oY29uc3QgU3RyaW5nJiBuYW1l
KTsKQEAgLTI2NSw2ICsyNjgsNyBAQCBwdWJsaWM6CiBwcml2YXRlOgogICAgIE93blB0cjxXZWJL
aXQ6OldlYkdyYXBoaWNzQ29udGV4dDNEPiBtX2ltcGw7CiAgICAgT3duUHRyPEV4dGVuc2lvbnMz
RENocm9taXVtPiBtX2V4dGVuc2lvbnM7CisgICAgT3duUHRyPEdyYXBoaWNzQ29udGV4dExvc3RD
YWxsYmFja0FkYXB0ZXI+IG1fY29udGV4dExvc3RDYWxsYmFja0FkYXB0ZXI7CiAgICAgV2ViS2l0
OjpXZWJWaWV3SW1wbCogbV93ZWJWaWV3SW1wbDsKICAgICBib29sIG1faW5pdGlhbGl6ZWRBdmFp
bGFibGVFeHRlbnNpb25zOwogICAgIEhhc2hTZXQ8U3RyaW5nPiBtX2VuYWJsZWRFeHRlbnNpb25z
Owo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>81483</attachid>
            <date>2011-02-07 09:41:25 -0800</date>
            <delta_ts>2011-02-07 10:32:50 -0800</delta_ts>
            <desc>reran prepare-ChangeLog yet again</desc>
            <filename>bug-53722-20110207094124.patch</filename>
            <type>text/plain</type>
            <size>10771</size>
            <attacher name="Alexey Marinichev">amarinichev</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJDb3JlL0No
YW5nZUxvZwppbmRleCBmOTFmNDU3N2M1OTM4ZTFiYTQ3ZWUzZDhkOWY1NDYyNGQ1MDBlNzMxLi43
YWUwZDEyZjBiNzdiMjkyMDczY2U5YjIzYTA4MmQ4OWYzZDZkYjk0IDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViQ29yZS9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCkBAIC0x
LDMgKzEsMjcgQEAKKzIwMTEtMDItMDcgIEFsZXhleSBNYXJpbmljaGV2ICA8YW1hcmluaWNoZXZA
Y2hyb21pdW0ub3JnPgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisg
ICAgICAgIEhvb2sgdXAgV2ViR3JhcGhpY3NDb250ZXh0M0Q6OnNldENvbnRleHRMb3N0Q2FsbGJh
Y2suCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD01Mzcy
MgorCisgICAgICAgIFRlc3Q6IGZhc3QvY2FudmFzL3dlYmdsL2NvbnRleHQtbG9zdC5odG1sLCBj
b21tZW50IG91dCB0aGUgbGluZSB3aXRoCisgICAgICAgIGV4dGVuc2lvbi5sb3NlQ29udGV4dCgp
IGFuZCBraWxsIHRoZSBHUFUgcHJvY2VzcyAiTG9zZSBjb250ZXh0IgorICAgICAgICBtZXNzYWdl
IHNob3dzIHVwLgorCisgICAgICAgICogaHRtbC9jYW52YXMvV2ViR0xSZW5kZXJpbmdDb250ZXh0
LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OldlYkdMUmVuZGVyaW5nQ29udGV4dExvc3RDYWxsYmFj
azo6V2ViR0xSZW5kZXJpbmdDb250ZXh0TG9zdENhbGxiYWNrKToKKyAgICAgICAgKFdlYkNvcmU6
OldlYkdMUmVuZGVyaW5nQ29udGV4dExvc3RDYWxsYmFjazo6b25Db250ZXh0TG9zdCk6CisgICAg
ICAgIChXZWJDb3JlOjpXZWJHTFJlbmRlcmluZ0NvbnRleHRMb3N0Q2FsbGJhY2s6On5XZWJHTFJl
bmRlcmluZ0NvbnRleHRMb3N0Q2FsbGJhY2spOgorICAgICAgICAoV2ViQ29yZTo6V2ViR0xSZW5k
ZXJpbmdDb250ZXh0Ojppbml0aWFsaXplTmV3Q29udGV4dCk6CisgICAgICAgIChXZWJDb3JlOjpX
ZWJHTFJlbmRlcmluZ0NvbnRleHQ6On5XZWJHTFJlbmRlcmluZ0NvbnRleHQpOgorICAgICAgICAq
IHBsYXRmb3JtL2dyYXBoaWNzL0dyYXBoaWNzQ29udGV4dDNELmg6CisgICAgICAgIChXZWJDb3Jl
OjpHcmFwaGljc0NvbnRleHQzRDo6Q29udGV4dExvc3RDYWxsYmFjazo6fkNvbnRleHRMb3N0Q2Fs
bGJhY2spOgorICAgICAgICAqIHBsYXRmb3JtL2dyYXBoaWNzL21hYy9HcmFwaGljc0NvbnRleHQz
RE1hYy5tbToKKyAgICAgICAgKFdlYkNvcmU6OkdyYXBoaWNzQ29udGV4dDNEOjpzZXRDb250ZXh0
TG9zdENhbGxiYWNrKTogc3R1YgorICAgICAgICAqIHBsYXRmb3JtL2dyYXBoaWNzL3F0L0dyYXBo
aWNzQ29udGV4dDNEUXQuY3BwOgorICAgICAgICAoV2ViQ29yZTo6R3JhcGhpY3NDb250ZXh0M0Q6
OnNldENvbnRleHRMb3N0Q2FsbGJhY2spOiBzdHViCisKIDIwMTEtMDItMDIgIEx1aXogQWdvc3Rp
bmkgIDxsdWl6LmFnb3N0aW5pQG9wZW5ib3NzYS5vcmc+CiAKICAgICAgICAgUmV2aWV3ZWQgYnkg
RGF2aWQgSHlhdHQuCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9odG1sL2NhbnZhcy9XZWJH
TFJlbmRlcmluZ0NvbnRleHQuY3BwIGIvU291cmNlL1dlYkNvcmUvaHRtbC9jYW52YXMvV2ViR0xS
ZW5kZXJpbmdDb250ZXh0LmNwcAppbmRleCBmN2RmNTZjODBlODZhYzA4YmRmNDIyNzRkZGE0MWU1
Nzk4Njc2OTg3Li5lZTk5ZTBiZDk3MmE0YWRmNTVlNTAwNGZiZDNmZTQwZWJjNjRiMjgzIDEwMDY0
NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9odG1sL2NhbnZhcy9XZWJHTFJlbmRlcmluZ0NvbnRleHQu
Y3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvY2FudmFzL1dlYkdMUmVuZGVyaW5nQ29udGV4
dC5jcHAKQEAgLTM0MSw2ICszNDEsMTUgQEAgdm9pZCBXZWJHTFJlbmRlcmluZ0NvbnRleHQ6Oldl
YkdMUmVuZGVyaW5nQ29udGV4dFJlc3RvcmVUaW1lcjo6ZmlyZWQoKQogICAgIH0KIH0KIAorY2xh
c3MgV2ViR0xSZW5kZXJpbmdDb250ZXh0TG9zdENhbGxiYWNrIDogcHVibGljIEdyYXBoaWNzQ29u
dGV4dDNEOjpDb250ZXh0TG9zdENhbGxiYWNrIHsKK3B1YmxpYzoKKyAgICBXZWJHTFJlbmRlcmlu
Z0NvbnRleHRMb3N0Q2FsbGJhY2soV2ViR0xSZW5kZXJpbmdDb250ZXh0KiBjYikgOiBtX2NvbnRl
eHRMb3N0Q2FsbGJhY2soY2IpIHt9CisgICAgdmlydHVhbCB2b2lkIG9uQ29udGV4dExvc3QoKSB7
IG1fY29udGV4dExvc3RDYWxsYmFjay0+Zm9yY2VMb3N0Q29udGV4dCgpOyB9CisgICAgdmlydHVh
bCB+V2ViR0xSZW5kZXJpbmdDb250ZXh0TG9zdENhbGxiYWNrKCkge30KK3ByaXZhdGU6CisgICAg
V2ViR0xSZW5kZXJpbmdDb250ZXh0KiBtX2NvbnRleHRMb3N0Q2FsbGJhY2s7Cit9OworCiBQYXNz
T3duUHRyPFdlYkdMUmVuZGVyaW5nQ29udGV4dD4gV2ViR0xSZW5kZXJpbmdDb250ZXh0OjpjcmVh
dGUoSFRNTENhbnZhc0VsZW1lbnQqIGNhbnZhcywgV2ViR0xDb250ZXh0QXR0cmlidXRlcyogYXR0
cnMpCiB7CiAgICAgSG9zdFdpbmRvdyogaG9zdFdpbmRvdyA9IGNhbnZhcy0+ZG9jdW1lbnQoKS0+
dmlldygpLT5yb290KCktPmhvc3RXaW5kb3coKTsKQEAgLTQxNiw2ICs0MjUsOCBAQCB2b2lkIFdl
YkdMUmVuZGVyaW5nQ29udGV4dDo6aW5pdGlhbGl6ZU5ld0NvbnRleHQoKQogCiAgICAgbV9jb250
ZXh0LT5yZXNoYXBlKGNhbnZhcygpLT53aWR0aCgpLCBjYW52YXMoKS0+aGVpZ2h0KCkpOwogICAg
IG1fY29udGV4dC0+dmlld3BvcnQoMCwgMCwgY2FudmFzKCktPndpZHRoKCksIGNhbnZhcygpLT5o
ZWlnaHQoKSk7CisKKyAgICBtX2NvbnRleHQtPnNldENvbnRleHRMb3N0Q2FsbGJhY2soYWRvcHRQ
dHIobmV3IFdlYkdMUmVuZGVyaW5nQ29udGV4dExvc3RDYWxsYmFjayh0aGlzKSkpOwogfQogCiB2
b2lkIFdlYkdMUmVuZGVyaW5nQ29udGV4dDo6c2V0dXBGbGFncygpCkBAIC00MzcsNiArNDQ4LDcg
QEAgdm9pZCBXZWJHTFJlbmRlcmluZ0NvbnRleHQ6OnNldHVwRmxhZ3MoKQogV2ViR0xSZW5kZXJp
bmdDb250ZXh0Ojp+V2ViR0xSZW5kZXJpbmdDb250ZXh0KCkKIHsKICAgICBkZXRhY2hBbmRSZW1v
dmVBbGxPYmplY3RzKCk7CisgICAgbV9jb250ZXh0LT5zZXRDb250ZXh0TG9zdENhbGxiYWNrKDAp
OwogfQogCiB2b2lkIFdlYkdMUmVuZGVyaW5nQ29udGV4dDo6bWFya0NvbnRleHRDaGFuZ2VkKCkK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL0dyYXBoaWNzQ29u
dGV4dDNELmggYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9HcmFwaGljc0NvbnRl
eHQzRC5oCmluZGV4IDQ3Yjk1M2ViMzYyYmE3NDA5ZGE0NzhlZjg1YmRhNDZkM2MxYTRmZjguLmE1
MzVmOGQ3MTYzYTg4ZmY2YWQ1ZmVlOTdmMzRmMmVhNWUwZDllNTQgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL0dyYXBoaWNzQ29udGV4dDNELmgKKysrIGIvU291
cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvR3JhcGhpY3NDb250ZXh0M0QuaApAQCAtNDU0
LDYgKzQ1NCwxNCBAQCBwdWJsaWM6CiAgICAgICAgIFJlbmRlckRpcmVjdGx5VG9Ib3N0V2luZG93
CiAgICAgfTsKIAorICAgIGNsYXNzIENvbnRleHRMb3N0Q2FsbGJhY2sgeworICAgIHB1YmxpYzoK
KyAgICAgICAgdmlydHVhbCB2b2lkIG9uQ29udGV4dExvc3QoKSA9IDA7CisgICAgICAgIHZpcnR1
YWwgfkNvbnRleHRMb3N0Q2FsbGJhY2soKSB7fQorICAgIH07CisKKyAgICB2b2lkIHNldENvbnRl
eHRMb3N0Q2FsbGJhY2soUGFzc093blB0cjxDb250ZXh0TG9zdENhbGxiYWNrPik7CisKICAgICBz
dGF0aWMgUGFzc1JlZlB0cjxHcmFwaGljc0NvbnRleHQzRD4gY3JlYXRlKEF0dHJpYnV0ZXMsIEhv
c3RXaW5kb3cqLCBSZW5kZXJTdHlsZSA9IFJlbmRlck9mZnNjcmVlbik7CiAgICAgfkdyYXBoaWNz
Q29udGV4dDNEKCk7CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBo
aWNzL21hYy9HcmFwaGljc0NvbnRleHQzRE1hYy5tbSBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3Jt
L2dyYXBoaWNzL21hYy9HcmFwaGljc0NvbnRleHQzRE1hYy5tbQppbmRleCA4Nzc3ZWNjYjYwNWQ2
ZTgzYzkzNDIxYWFkODEyMDEyYWIxZmE0NTFhLi5hYWEyNTBiMmNmZWQyN2UwNTIwZGZlMzI3MWZi
ZTkyZTk0NjI0ZTQwIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGlj
cy9tYWMvR3JhcGhpY3NDb250ZXh0M0RNYWMubW0KKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZv
cm0vZ3JhcGhpY3MvbWFjL0dyYXBoaWNzQ29udGV4dDNETWFjLm1tCkBAIC0yNDUsNiArMjQ1LDEw
IEBAIGJvb2wgR3JhcGhpY3NDb250ZXh0M0Q6OmlzR0xFUzJDb21wbGlhbnQoKSBjb25zdAogICAg
IHJldHVybiBmYWxzZTsKIH0KIAordm9pZCBHcmFwaGljc0NvbnRleHQzRDo6c2V0Q29udGV4dExv
c3RDYWxsYmFjayhQYXNzT3duUHRyPENvbnRleHRMb3N0Q2FsbGJhY2s+KQoreworfQorCiB9CiAK
ICNlbmRpZiAvLyBFTkFCTEUoV0VCR0wpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0
Zm9ybS9ncmFwaGljcy9xdC9HcmFwaGljc0NvbnRleHQzRFF0LmNwcCBiL1NvdXJjZS9XZWJDb3Jl
L3BsYXRmb3JtL2dyYXBoaWNzL3F0L0dyYXBoaWNzQ29udGV4dDNEUXQuY3BwCmluZGV4IDY0Yjhh
ZDEwYTgwNWFiMzU1ZDU4ODQyYzBmOTY0NmU1YTQ5OTYxZmMuLjhiODdmNWYwNDgzNGI3NjA5ODY4
ODc0NjE5YmMwN2QzNzZhNGVlMmYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3Jt
L2dyYXBoaWNzL3F0L0dyYXBoaWNzQ29udGV4dDNEUXQuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3Jl
L3BsYXRmb3JtL2dyYXBoaWNzL3F0L0dyYXBoaWNzQ29udGV4dDNEUXQuY3BwCkBAIC0xNjQ3LDYg
KzE2NDcsMTAgQEAgYm9vbCBHcmFwaGljc0NvbnRleHQzRDo6Z2V0SW1hZ2VEYXRhKEltYWdlKiBp
bWFnZSwKICAgICAgICAgICAgICAgICAgICAgICBmb3JtYXQsIHR5cGUsIG5lZWRlZEFscGhhT3As
IG91dHB1dFZlY3Rvci5kYXRhKCkpOwogfQogCit2b2lkIEdyYXBoaWNzQ29udGV4dDNEOjpzZXRD
b250ZXh0TG9zdENhbGxiYWNrKFBhc3NPd25QdHI8Q29udGV4dExvc3RDYWxsYmFjaz4pCit7Cit9
CisKIH0KIAogI2VuZGlmIC8vIEVOQUJMRShXRUJHTCkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJL
aXQvY2hyb21pdW0vQ2hhbmdlTG9nIGIvU291cmNlL1dlYktpdC9jaHJvbWl1bS9DaGFuZ2VMb2cK
aW5kZXggMTFhMzdiNzRkY2IxOGE0NjY1NmY0ZGI3ZDJiYWMzNGVlZGI1NmQ3OS4uZTZkZDM3MGIw
ZTU5ZjU3YTQ3ZjViOTdkMTJiMTE2NjAyZTgxNmMwYyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktp
dC9jaHJvbWl1bS9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYktpdC9jaHJvbWl1bS9DaGFuZ2VM
b2cKQEAgLTEsMyArMSwyNCBAQAorMjAxMS0wMi0wNyAgQWxleGV5IE1hcmluaWNoZXYgIDxhbWFy
aW5pY2hldkBjaHJvbWl1bS5vcmc+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BT
ISkuCisKKyAgICAgICAgSG9vayB1cCBXZWJHcmFwaGljc0NvbnRleHQzRDo6c2V0Q29udGV4dExv
c3RDYWxsYmFjay4KKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dp
P2lkPTUzNzIyCisKKyAgICAgICAgVGVzdDogZmFzdC9jYW52YXMvd2ViZ2wvY29udGV4dC1sb3N0
Lmh0bWwsIGNvbW1lbnQgb3V0IHRoZSBsaW5lIHdpdGgKKyAgICAgICAgZXh0ZW5zaW9uLmxvc2VD
b250ZXh0KCkgYW5kIGtpbGwgdGhlIEdQVSBwcm9jZXNzICJMb3NlIGNvbnRleHQiCisgICAgICAg
IG1lc3NhZ2Ugc2hvd3MgdXAuCisKKyAgICAgICAgKiBwdWJsaWMvV2ViR3JhcGhpY3NDb250ZXh0
M0QuaDoKKyAgICAgICAgKFdlYktpdDo6V2ViR3JhcGhpY3NDb250ZXh0M0Q6OldlYkdyYXBoaWNz
Q29udGV4dExvc3RDYWxsYmFjazo6fldlYkdyYXBoaWNzQ29udGV4dExvc3RDYWxsYmFjayk6Cisg
ICAgICAgICogc3JjL0dyYXBoaWNzQ29udGV4dDNEQ2hyb21pdW0uY3BwOgorICAgICAgICAoV2Vi
Q29yZTo6R3JhcGhpY3NDb250ZXh0TG9zdENhbGxiYWNrQWRhcHRlcjo6fkdyYXBoaWNzQ29udGV4
dExvc3RDYWxsYmFja0FkYXB0ZXIpOgorICAgICAgICAoV2ViQ29yZTo6R3JhcGhpY3NDb250ZXh0
TG9zdENhbGxiYWNrQWRhcHRlcjo6R3JhcGhpY3NDb250ZXh0TG9zdENhbGxiYWNrQWRhcHRlcik6
CisgICAgICAgIChXZWJDb3JlOjpHcmFwaGljc0NvbnRleHRMb3N0Q2FsbGJhY2tBZGFwdGVyOjpv
bkNvbnRleHRMb3N0KToKKyAgICAgICAgKFdlYkNvcmU6OkdyYXBoaWNzQ29udGV4dExvc3RDYWxs
YmFja0FkYXB0ZXI6OmNyZWF0ZSk6CisgICAgICAgIChXZWJDb3JlOjpHcmFwaGljc0NvbnRleHQz
REludGVybmFsOjpzZXRDb250ZXh0TG9zdENhbGxiYWNrKToKKyAgICAgICAgKiBzcmMvR3JhcGhp
Y3NDb250ZXh0M0RJbnRlcm5hbC5oOgorCiAyMDExLTAyLTAxICBEYXJpbiBGaXNoZXIgIDxkYXJp
bkBjaHJvbWl1bS5vcmc+CiAKICAgICAgICAgUmV2aWV3ZWQgYnkgS2VubmV0aCBSdXNzZWxsLgpA
QCAtNDUwLDYgKzQ3MSwxNiBAQAogCiAgICAgICAgICogc3JjL2pzL1Rlc3RzLmpzOgogCisyMDEx
LTAxLTI1ICBBbGV4ZXkgTWFyaW5pY2hldiAgPGFtYXJpbmljaGV2QGNocm9taXVtLm9yZz4KKwor
ICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBBZGQgYSBjYWxs
YmFjayB0byBXZWJHcmFwaGljc0NvbnRleHQzRCB0aGF0IGlzIGNhbGxlZCB3aGVuIGEgY29udGV4
dCBpcyBsb3N0CisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9p
ZD01MzE1MworCisgICAgICAgICogcHVibGljL1dlYkdyYXBoaWNzQ29udGV4dDNELmg6CisgICAg
ICAgIChXZWJLaXQ6OldlYkdyYXBoaWNzQ29udGV4dDNEOjpzZXRDb250ZXh0TG9zdENhbGxiYWNr
KToKKwogMjAxMS0wMS0yNCAgWmhlbnlhbyBNbyAgPHptb0Bnb29nbGUuY29tPgogCiAgICAgICAg
IFJldmlld2VkIGJ5IERhcmluIEFkbGVyLgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9jaHJv
bWl1bS9wdWJsaWMvV2ViR3JhcGhpY3NDb250ZXh0M0QuaCBiL1NvdXJjZS9XZWJLaXQvY2hyb21p
dW0vcHVibGljL1dlYkdyYXBoaWNzQ29udGV4dDNELmgKaW5kZXggOTU1OGJiYjFmOTFhOGY2OGVj
ZjYxYjI4OGIwNGNmOTBmOTZlNzcyYy4uOTg0Zjc5ZDI1YWFhZDU3YTU2ZTdhZWJhNGY0NTk4ODZj
OGVlZDZhOCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9jaHJvbWl1bS9wdWJsaWMvV2ViR3Jh
cGhpY3NDb250ZXh0M0QuaAorKysgYi9Tb3VyY2UvV2ViS2l0L2Nocm9taXVtL3B1YmxpYy9XZWJH
cmFwaGljc0NvbnRleHQzRC5oCkBAIC05OSw2ICs5OSw3IEBAIHB1YmxpYzoKICAgICBjbGFzcyBX
ZWJHcmFwaGljc0NvbnRleHRMb3N0Q2FsbGJhY2sgewogICAgIHB1YmxpYzoKICAgICAgICAgdmly
dHVhbCB2b2lkIG9uQ29udGV4dExvc3QoKSA9IDA7CisgICAgICAgIHZpcnR1YWwgfldlYkdyYXBo
aWNzQ29udGV4dExvc3RDYWxsYmFjaygpIHt9CiAgICAgfTsKIAogICAgIC8vIFRoaXMgZGVzdHJ1
Y3RvciBuZWVkcyB0byBiZSBwdWJsaWMgc28gdGhhdCB1c2luZyBjbGFzc2VzIGNhbiBkZXN0cm95
IGluc3RhbmNlcyBpZiBpbml0aWFsaXphdGlvbiBmYWlscy4KZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJLaXQvY2hyb21pdW0vc3JjL0dyYXBoaWNzQ29udGV4dDNEQ2hyb21pdW0uY3BwIGIvU291cmNl
L1dlYktpdC9jaHJvbWl1bS9zcmMvR3JhcGhpY3NDb250ZXh0M0RDaHJvbWl1bS5jcHAKaW5kZXgg
OWI1YmYwODJiOGIzNWE0YjZiZDYzYzE5MjExMDU5MDVjZjNkNDgzMS4uMDc1MTc4NTI0YjA4Njky
MWViNjRmNTlkYzA2YjU1YzMyOTdmNmNkNyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9jaHJv
bWl1bS9zcmMvR3JhcGhpY3NDb250ZXh0M0RDaHJvbWl1bS5jcHAKKysrIGIvU291cmNlL1dlYktp
dC9jaHJvbWl1bS9zcmMvR3JhcGhpY3NDb250ZXh0M0RDaHJvbWl1bS5jcHAKQEAgLTEwODIsNiAr
MTA4MiwzNSBAQCBERUxFR0FURV9UT19JTlRFUk5BTF8xKGRlbGV0ZVRleHR1cmUsIFBsYXRmb3Jt
M0RPYmplY3QpCiBERUxFR0FURV9UT19JTlRFUk5BTF8xKHN5bnRoZXNpemVHTEVycm9yLCBHQzNE
ZW51bSkKIERFTEVHQVRFX1RPX0lOVEVSTkFMX1IoZ2V0RXh0ZW5zaW9ucywgRXh0ZW5zaW9uczNE
KikKIAorREVMRUdBVEVfVE9fSU5URVJOQUxfMShzZXRDb250ZXh0TG9zdENhbGxiYWNrLCBQYXNz
T3duUHRyPEdyYXBoaWNzQ29udGV4dDNEOjpDb250ZXh0TG9zdENhbGxiYWNrPikKKworY2xhc3Mg
R3JhcGhpY3NDb250ZXh0TG9zdENhbGxiYWNrQWRhcHRlciA6IHB1YmxpYyBXZWJLaXQ6OldlYkdy
YXBoaWNzQ29udGV4dDNEOjpXZWJHcmFwaGljc0NvbnRleHRMb3N0Q2FsbGJhY2sgeworcHVibGlj
OgorICAgIHZpcnR1YWwgdm9pZCBvbkNvbnRleHRMb3N0KCk7CisgICAgc3RhdGljIFBhc3NPd25Q
dHI8R3JhcGhpY3NDb250ZXh0TG9zdENhbGxiYWNrQWRhcHRlcj4gY3JlYXRlKFBhc3NPd25QdHI8
R3JhcGhpY3NDb250ZXh0M0Q6OkNvbnRleHRMb3N0Q2FsbGJhY2s+KTsKKyAgICB2aXJ0dWFsIH5H
cmFwaGljc0NvbnRleHRMb3N0Q2FsbGJhY2tBZGFwdGVyKCkge30KK3ByaXZhdGU6CisgICAgR3Jh
cGhpY3NDb250ZXh0TG9zdENhbGxiYWNrQWRhcHRlcihQYXNzT3duUHRyPEdyYXBoaWNzQ29udGV4
dDNEOjpDb250ZXh0TG9zdENhbGxiYWNrPiBjYikgOiBtX2NvbnRleHRMb3N0Q2FsbGJhY2soY2Ip
IHt9CisgICAgT3duUHRyPEdyYXBoaWNzQ29udGV4dDNEOjpDb250ZXh0TG9zdENhbGxiYWNrPiBt
X2NvbnRleHRMb3N0Q2FsbGJhY2s7Cit9OworCit2b2lkIEdyYXBoaWNzQ29udGV4dExvc3RDYWxs
YmFja0FkYXB0ZXI6Om9uQ29udGV4dExvc3QoKQoreworICAgIGlmIChtX2NvbnRleHRMb3N0Q2Fs
bGJhY2spCisgICAgICAgIG1fY29udGV4dExvc3RDYWxsYmFjay0+b25Db250ZXh0TG9zdCgpOwor
fQorCitQYXNzT3duUHRyPEdyYXBoaWNzQ29udGV4dExvc3RDYWxsYmFja0FkYXB0ZXI+IEdyYXBo
aWNzQ29udGV4dExvc3RDYWxsYmFja0FkYXB0ZXI6OmNyZWF0ZShQYXNzT3duUHRyPEdyYXBoaWNz
Q29udGV4dDNEOjpDb250ZXh0TG9zdENhbGxiYWNrPiBjYikKK3sKKyAgICByZXR1cm4gYWRvcHRQ
dHIobmV3IEdyYXBoaWNzQ29udGV4dExvc3RDYWxsYmFja0FkYXB0ZXIoY2IpKTsKK30KKwordm9p
ZCBHcmFwaGljc0NvbnRleHQzREludGVybmFsOjpzZXRDb250ZXh0TG9zdENhbGxiYWNrKFBhc3NP
d25QdHI8R3JhcGhpY3NDb250ZXh0M0Q6OkNvbnRleHRMb3N0Q2FsbGJhY2s+IGNiKQoreworICAg
IG1fY29udGV4dExvc3RDYWxsYmFja0FkYXB0ZXIgPSBHcmFwaGljc0NvbnRleHRMb3N0Q2FsbGJh
Y2tBZGFwdGVyOjpjcmVhdGUoY2IpOworICAgIG1faW1wbC0+c2V0Q29udGV4dExvc3RDYWxsYmFj
ayhtX2NvbnRleHRMb3N0Q2FsbGJhY2tBZGFwdGVyLmdldCgpKTsKK30KKwogYm9vbCBHcmFwaGlj
c0NvbnRleHQzRDo6aXNHTEVTMkNvbXBsaWFudCgpIGNvbnN0CiB7CiAgICAgcmV0dXJuIG1faW50
ZXJuYWwtPmlzR0xFUzJDb21wbGlhbnQoKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvY2hy
b21pdW0vc3JjL0dyYXBoaWNzQ29udGV4dDNESW50ZXJuYWwuaCBiL1NvdXJjZS9XZWJLaXQvY2hy
b21pdW0vc3JjL0dyYXBoaWNzQ29udGV4dDNESW50ZXJuYWwuaAppbmRleCAwYTcwNjEzNmM1ZTg0
NmRmODFjM2YzMTZiYjhlODJmMTc3OWE1ZmI2Li5iZTljZTE2ZGMzZmM1MDYzODhlZjM1YmYwY2E0
MGEyNmM2YjIzYTUxIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L2Nocm9taXVtL3NyYy9HcmFw
aGljc0NvbnRleHQzREludGVybmFsLmgKKysrIGIvU291cmNlL1dlYktpdC9jaHJvbWl1bS9zcmMv
R3JhcGhpY3NDb250ZXh0M0RJbnRlcm5hbC5oCkBAIC00NCw2ICs0NCw3IEBAIGNsYXNzIEV4dGVu
c2lvbnMzRENocm9taXVtOwogI2lmIFVTRShBQ0NFTEVSQVRFRF9DT01QT1NJVElORykKIGNsYXNz
IFdlYkdMTGF5ZXJDaHJvbWl1bTsKICNlbmRpZgorY2xhc3MgR3JhcGhpY3NDb250ZXh0TG9zdENh
bGxiYWNrQWRhcHRlcjsKIAogY2xhc3MgR3JhcGhpY3NDb250ZXh0M0RJbnRlcm5hbCB7CiBwdWJs
aWM6CkBAIC0yMzksNiArMjQwLDggQEAgcHVibGljOgogCiAgICAgdm9pZCBzeW50aGVzaXplR0xF
cnJvcihHQzNEZW51bSBlcnJvcik7CiAKKyAgICB2b2lkIHNldENvbnRleHRMb3N0Q2FsbGJhY2so
UGFzc093blB0cjxHcmFwaGljc0NvbnRleHQzRDo6Q29udGV4dExvc3RDYWxsYmFjaz4pOworCiAg
ICAgLy8gRXh0ZW5zaW9uczNEIHN1cHBvcnQuCiAgICAgRXh0ZW5zaW9uczNEKiBnZXRFeHRlbnNp
b25zKCk7CiAgICAgYm9vbCBzdXBwb3J0c0V4dGVuc2lvbihjb25zdCBTdHJpbmcmIG5hbWUpOwpA
QCAtMjY1LDYgKzI2OCw3IEBAIHB1YmxpYzoKIHByaXZhdGU6CiAgICAgT3duUHRyPFdlYktpdDo6
V2ViR3JhcGhpY3NDb250ZXh0M0Q+IG1faW1wbDsKICAgICBPd25QdHI8RXh0ZW5zaW9uczNEQ2hy
b21pdW0+IG1fZXh0ZW5zaW9uczsKKyAgICBPd25QdHI8R3JhcGhpY3NDb250ZXh0TG9zdENhbGxi
YWNrQWRhcHRlcj4gbV9jb250ZXh0TG9zdENhbGxiYWNrQWRhcHRlcjsKICAgICBXZWJLaXQ6Oldl
YlZpZXdJbXBsKiBtX3dlYlZpZXdJbXBsOwogICAgIGJvb2wgbV9pbml0aWFsaXplZEF2YWlsYWJs
ZUV4dGVuc2lvbnM7CiAgICAgSGFzaFNldDxTdHJpbmc+IG1fZW5hYmxlZEV4dGVuc2lvbnM7Cg==
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>81489</attachid>
            <date>2011-02-07 10:32:52 -0800</date>
            <delta_ts>2011-02-07 22:25:31 -0800</delta_ts>
            <desc>rebased, cleaned up changelog</desc>
            <filename>bug-53722-20110207103251.patch</filename>
            <type>text/plain</type>
            <size>10283</size>
            <attacher name="Alexey Marinichev">amarinichev</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJDb3JlL0No
YW5nZUxvZwppbmRleCA1OGVhZmMyNTEzNTBiZDc4NjMwODA0ZjBhYjU0MTYyNWQ2MDgyOTdhLi4w
MzYwNzg2ZDM2MTdmYTA4ZjZhN2M3MjA0YjliY2RmMzg4YTFmMjkxIDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViQ29yZS9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCkBAIC0x
LDMgKzEsMjcgQEAKKzIwMTEtMDItMDcgIEFsZXhleSBNYXJpbmljaGV2ICA8YW1hcmluaWNoZXZA
Y2hyb21pdW0ub3JnPgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisg
ICAgICAgIEhvb2sgdXAgV2ViR3JhcGhpY3NDb250ZXh0M0Q6OnNldENvbnRleHRMb3N0Q2FsbGJh
Y2suCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD01Mzcy
MgorCisgICAgICAgIFRlc3Q6IGZhc3QvY2FudmFzL3dlYmdsL2NvbnRleHQtbG9zdC5odG1sLCBj
b21tZW50IG91dCB0aGUgbGluZSB3aXRoCisgICAgICAgIGV4dGVuc2lvbi5sb3NlQ29udGV4dCgp
IGFuZCBraWxsIHRoZSBHUFUgcHJvY2VzcyAiTG9zZSBjb250ZXh0IgorICAgICAgICBtZXNzYWdl
IHNob3dzIHVwLgorCisgICAgICAgICogaHRtbC9jYW52YXMvV2ViR0xSZW5kZXJpbmdDb250ZXh0
LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OldlYkdMUmVuZGVyaW5nQ29udGV4dExvc3RDYWxsYmFj
azo6V2ViR0xSZW5kZXJpbmdDb250ZXh0TG9zdENhbGxiYWNrKToKKyAgICAgICAgKFdlYkNvcmU6
OldlYkdMUmVuZGVyaW5nQ29udGV4dExvc3RDYWxsYmFjazo6b25Db250ZXh0TG9zdCk6CisgICAg
ICAgIChXZWJDb3JlOjpXZWJHTFJlbmRlcmluZ0NvbnRleHRMb3N0Q2FsbGJhY2s6On5XZWJHTFJl
bmRlcmluZ0NvbnRleHRMb3N0Q2FsbGJhY2spOgorICAgICAgICAoV2ViQ29yZTo6V2ViR0xSZW5k
ZXJpbmdDb250ZXh0Ojppbml0aWFsaXplTmV3Q29udGV4dCk6CisgICAgICAgIChXZWJDb3JlOjpX
ZWJHTFJlbmRlcmluZ0NvbnRleHQ6On5XZWJHTFJlbmRlcmluZ0NvbnRleHQpOgorICAgICAgICAq
IHBsYXRmb3JtL2dyYXBoaWNzL0dyYXBoaWNzQ29udGV4dDNELmg6CisgICAgICAgIChXZWJDb3Jl
OjpHcmFwaGljc0NvbnRleHQzRDo6Q29udGV4dExvc3RDYWxsYmFjazo6fkNvbnRleHRMb3N0Q2Fs
bGJhY2spOgorICAgICAgICAqIHBsYXRmb3JtL2dyYXBoaWNzL21hYy9HcmFwaGljc0NvbnRleHQz
RE1hYy5tbToKKyAgICAgICAgKFdlYkNvcmU6OkdyYXBoaWNzQ29udGV4dDNEOjpzZXRDb250ZXh0
TG9zdENhbGxiYWNrKTogc3R1YgorICAgICAgICAqIHBsYXRmb3JtL2dyYXBoaWNzL3F0L0dyYXBo
aWNzQ29udGV4dDNEUXQuY3BwOgorICAgICAgICAoV2ViQ29yZTo6R3JhcGhpY3NDb250ZXh0M0Q6
OnNldENvbnRleHRMb3N0Q2FsbGJhY2spOiBzdHViCisKIDIwMTEtMDItMDYgIEFudHRpIEtvaXZp
c3RvICA8YW50dGlAYXBwbGUuY29tPgogCiAgICAgICAgIFJldmlld2VkIGJ5IE1hY2llaiBTdGFj
aG93aWFrLgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvaHRtbC9jYW52YXMvV2ViR0xSZW5k
ZXJpbmdDb250ZXh0LmNwcCBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvY2FudmFzL1dlYkdMUmVuZGVy
aW5nQ29udGV4dC5jcHAKaW5kZXggZWM0MjU0YjcwZGQ4Yzk0MDYxMzgxYzAwNTExYTA4NWI4MDg1
ZWZmYy4uNDNlZGM4MTFiYzI5M2I3MmUwZDQ5NWQ2YTQ4NWU1ODdmMzNlZTZlOCAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYkNvcmUvaHRtbC9jYW52YXMvV2ViR0xSZW5kZXJpbmdDb250ZXh0LmNwcAor
KysgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL2NhbnZhcy9XZWJHTFJlbmRlcmluZ0NvbnRleHQuY3Bw
CkBAIC0zNDEsNiArMzQxLDE1IEBAIHZvaWQgV2ViR0xSZW5kZXJpbmdDb250ZXh0OjpXZWJHTFJl
bmRlcmluZ0NvbnRleHRSZXN0b3JlVGltZXI6OmZpcmVkKCkKICAgICB9CiB9CiAKK2NsYXNzIFdl
YkdMUmVuZGVyaW5nQ29udGV4dExvc3RDYWxsYmFjayA6IHB1YmxpYyBHcmFwaGljc0NvbnRleHQz
RDo6Q29udGV4dExvc3RDYWxsYmFjayB7CitwdWJsaWM6CisgICAgV2ViR0xSZW5kZXJpbmdDb250
ZXh0TG9zdENhbGxiYWNrKFdlYkdMUmVuZGVyaW5nQ29udGV4dCogY2IpIDogbV9jb250ZXh0TG9z
dENhbGxiYWNrKGNiKSB7fQorICAgIHZpcnR1YWwgdm9pZCBvbkNvbnRleHRMb3N0KCkgeyBtX2Nv
bnRleHRMb3N0Q2FsbGJhY2stPmZvcmNlTG9zdENvbnRleHQoKTsgfQorICAgIHZpcnR1YWwgfldl
YkdMUmVuZGVyaW5nQ29udGV4dExvc3RDYWxsYmFjaygpIHt9Citwcml2YXRlOgorICAgIFdlYkdM
UmVuZGVyaW5nQ29udGV4dCogbV9jb250ZXh0TG9zdENhbGxiYWNrOworfTsKKwogUGFzc093blB0
cjxXZWJHTFJlbmRlcmluZ0NvbnRleHQ+IFdlYkdMUmVuZGVyaW5nQ29udGV4dDo6Y3JlYXRlKEhU
TUxDYW52YXNFbGVtZW50KiBjYW52YXMsIFdlYkdMQ29udGV4dEF0dHJpYnV0ZXMqIGF0dHJzKQog
ewogICAgIEhvc3RXaW5kb3cqIGhvc3RXaW5kb3cgPSBjYW52YXMtPmRvY3VtZW50KCktPnZpZXco
KS0+cm9vdCgpLT5ob3N0V2luZG93KCk7CkBAIC00MTYsNiArNDI1LDggQEAgdm9pZCBXZWJHTFJl
bmRlcmluZ0NvbnRleHQ6OmluaXRpYWxpemVOZXdDb250ZXh0KCkKIAogICAgIG1fY29udGV4dC0+
cmVzaGFwZShjYW52YXMoKS0+d2lkdGgoKSwgY2FudmFzKCktPmhlaWdodCgpKTsKICAgICBtX2Nv
bnRleHQtPnZpZXdwb3J0KDAsIDAsIGNhbnZhcygpLT53aWR0aCgpLCBjYW52YXMoKS0+aGVpZ2h0
KCkpOworCisgICAgbV9jb250ZXh0LT5zZXRDb250ZXh0TG9zdENhbGxiYWNrKGFkb3B0UHRyKG5l
dyBXZWJHTFJlbmRlcmluZ0NvbnRleHRMb3N0Q2FsbGJhY2sodGhpcykpKTsKIH0KIAogdm9pZCBX
ZWJHTFJlbmRlcmluZ0NvbnRleHQ6OnNldHVwRmxhZ3MoKQpAQCAtNDM3LDYgKzQ0OCw3IEBAIHZv
aWQgV2ViR0xSZW5kZXJpbmdDb250ZXh0OjpzZXR1cEZsYWdzKCkKIFdlYkdMUmVuZGVyaW5nQ29u
dGV4dDo6fldlYkdMUmVuZGVyaW5nQ29udGV4dCgpCiB7CiAgICAgZGV0YWNoQW5kUmVtb3ZlQWxs
T2JqZWN0cygpOworICAgIG1fY29udGV4dC0+c2V0Q29udGV4dExvc3RDYWxsYmFjaygwKTsKIH0K
IAogdm9pZCBXZWJHTFJlbmRlcmluZ0NvbnRleHQ6Om1hcmtDb250ZXh0Q2hhbmdlZCgpCmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9HcmFwaGljc0NvbnRleHQz
RC5oIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvR3JhcGhpY3NDb250ZXh0M0Qu
aAppbmRleCA0N2I5NTNlYjM2MmJhNzQwOWRhNDc4ZWY4NWJkYTQ2ZDNjMWE0ZmY4Li5hNTM1Zjhk
NzE2M2E4OGZmNmFkNWZlZTk3ZjM0ZjJlYTVlMGQ5ZTU0IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2Vi
Q29yZS9wbGF0Zm9ybS9ncmFwaGljcy9HcmFwaGljc0NvbnRleHQzRC5oCisrKyBiL1NvdXJjZS9X
ZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL0dyYXBoaWNzQ29udGV4dDNELmgKQEAgLTQ1NCw2ICs0
NTQsMTQgQEAgcHVibGljOgogICAgICAgICBSZW5kZXJEaXJlY3RseVRvSG9zdFdpbmRvdwogICAg
IH07CiAKKyAgICBjbGFzcyBDb250ZXh0TG9zdENhbGxiYWNrIHsKKyAgICBwdWJsaWM6CisgICAg
ICAgIHZpcnR1YWwgdm9pZCBvbkNvbnRleHRMb3N0KCkgPSAwOworICAgICAgICB2aXJ0dWFsIH5D
b250ZXh0TG9zdENhbGxiYWNrKCkge30KKyAgICB9OworCisgICAgdm9pZCBzZXRDb250ZXh0TG9z
dENhbGxiYWNrKFBhc3NPd25QdHI8Q29udGV4dExvc3RDYWxsYmFjaz4pOworCiAgICAgc3RhdGlj
IFBhc3NSZWZQdHI8R3JhcGhpY3NDb250ZXh0M0Q+IGNyZWF0ZShBdHRyaWJ1dGVzLCBIb3N0V2lu
ZG93KiwgUmVuZGVyU3R5bGUgPSBSZW5kZXJPZmZzY3JlZW4pOwogICAgIH5HcmFwaGljc0NvbnRl
eHQzRCgpOwogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9t
YWMvR3JhcGhpY3NDb250ZXh0M0RNYWMubW0gYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFw
aGljcy9tYWMvR3JhcGhpY3NDb250ZXh0M0RNYWMubW0KaW5kZXggODc3N2VjY2I2MDVkNmU4M2M5
MzQyMWFhZDgxMjAxMmFiMWZhNDUxYS4uYWFhMjUwYjJjZmVkMjdlMDUyMGRmZTMyNzFmYmU5MmU5
NDYyNGU0MCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvbWFj
L0dyYXBoaWNzQ29udGV4dDNETWFjLm1tCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dy
YXBoaWNzL21hYy9HcmFwaGljc0NvbnRleHQzRE1hYy5tbQpAQCAtMjQ1LDYgKzI0NSwxMCBAQCBi
b29sIEdyYXBoaWNzQ29udGV4dDNEOjppc0dMRVMyQ29tcGxpYW50KCkgY29uc3QKICAgICByZXR1
cm4gZmFsc2U7CiB9CiAKK3ZvaWQgR3JhcGhpY3NDb250ZXh0M0Q6OnNldENvbnRleHRMb3N0Q2Fs
bGJhY2soUGFzc093blB0cjxDb250ZXh0TG9zdENhbGxiYWNrPikKK3sKK30KKwogfQogCiAjZW5k
aWYgLy8gRU5BQkxFKFdFQkdMKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0v
Z3JhcGhpY3MvcXQvR3JhcGhpY3NDb250ZXh0M0RRdC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0
Zm9ybS9ncmFwaGljcy9xdC9HcmFwaGljc0NvbnRleHQzRFF0LmNwcAppbmRleCA2NGI4YWQxMGE4
MDVhYjM1NWQ1ODg0MmMwZjk2NDZlNWE0OTk2MWZjLi44Yjg3ZjVmMDQ4MzRiNzYwOTg2ODg3NDYx
OWJjMDdkMzc2YTRlZTJmIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFw
aGljcy9xdC9HcmFwaGljc0NvbnRleHQzRFF0LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0
Zm9ybS9ncmFwaGljcy9xdC9HcmFwaGljc0NvbnRleHQzRFF0LmNwcApAQCAtMTY0Nyw2ICsxNjQ3
LDEwIEBAIGJvb2wgR3JhcGhpY3NDb250ZXh0M0Q6OmdldEltYWdlRGF0YShJbWFnZSogaW1hZ2Us
CiAgICAgICAgICAgICAgICAgICAgICAgZm9ybWF0LCB0eXBlLCBuZWVkZWRBbHBoYU9wLCBvdXRw
dXRWZWN0b3IuZGF0YSgpKTsKIH0KIAordm9pZCBHcmFwaGljc0NvbnRleHQzRDo6c2V0Q29udGV4
dExvc3RDYWxsYmFjayhQYXNzT3duUHRyPENvbnRleHRMb3N0Q2FsbGJhY2s+KQoreworfQorCiB9
CiAKICNlbmRpZiAvLyBFTkFCTEUoV0VCR0wpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L2No
cm9taXVtL0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJLaXQvY2hyb21pdW0vQ2hhbmdlTG9nCmluZGV4
IDk4NWVlNzBlYTE3OTAyMWFmYmIwM2Y4NTJjNjE0OGM4NTYyYTNmYzguLjMwOTY0NjE0Y2MzZDhl
YmMyM2Q1ZTM0YzlkOGQwZjVjODA2MmQwNmYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvY2hy
b21pdW0vQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9XZWJLaXQvY2hyb21pdW0vQ2hhbmdlTG9nCkBA
IC0xLDMgKzEsMjQgQEAKKzIwMTEtMDItMDcgIEFsZXhleSBNYXJpbmljaGV2ICA8YW1hcmluaWNo
ZXZAY2hyb21pdW0ub3JnPgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgor
CisgICAgICAgIEhvb2sgdXAgV2ViR3JhcGhpY3NDb250ZXh0M0Q6OnNldENvbnRleHRMb3N0Q2Fs
bGJhY2suCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD01
MzcyMgorCisgICAgICAgIFRlc3Q6IGZhc3QvY2FudmFzL3dlYmdsL2NvbnRleHQtbG9zdC5odG1s
LCBjb21tZW50IG91dCB0aGUgbGluZSB3aXRoCisgICAgICAgIGV4dGVuc2lvbi5sb3NlQ29udGV4
dCgpIGFuZCBraWxsIHRoZSBHUFUgcHJvY2VzcyAiTG9zZSBjb250ZXh0IgorICAgICAgICBtZXNz
YWdlIHNob3dzIHVwLgorCisgICAgICAgICogcHVibGljL1dlYkdyYXBoaWNzQ29udGV4dDNELmg6
CisgICAgICAgIChXZWJLaXQ6OldlYkdyYXBoaWNzQ29udGV4dDNEOjpXZWJHcmFwaGljc0NvbnRl
eHRMb3N0Q2FsbGJhY2s6On5XZWJHcmFwaGljc0NvbnRleHRMb3N0Q2FsbGJhY2spOgorICAgICAg
ICAqIHNyYy9HcmFwaGljc0NvbnRleHQzRENocm9taXVtLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6
OkdyYXBoaWNzQ29udGV4dExvc3RDYWxsYmFja0FkYXB0ZXI6On5HcmFwaGljc0NvbnRleHRMb3N0
Q2FsbGJhY2tBZGFwdGVyKToKKyAgICAgICAgKFdlYkNvcmU6OkdyYXBoaWNzQ29udGV4dExvc3RD
YWxsYmFja0FkYXB0ZXI6OkdyYXBoaWNzQ29udGV4dExvc3RDYWxsYmFja0FkYXB0ZXIpOgorICAg
ICAgICAoV2ViQ29yZTo6R3JhcGhpY3NDb250ZXh0TG9zdENhbGxiYWNrQWRhcHRlcjo6b25Db250
ZXh0TG9zdCk6CisgICAgICAgIChXZWJDb3JlOjpHcmFwaGljc0NvbnRleHRMb3N0Q2FsbGJhY2tB
ZGFwdGVyOjpjcmVhdGUpOgorICAgICAgICAoV2ViQ29yZTo6R3JhcGhpY3NDb250ZXh0M0RJbnRl
cm5hbDo6c2V0Q29udGV4dExvc3RDYWxsYmFjayk6CisgICAgICAgICogc3JjL0dyYXBoaWNzQ29u
dGV4dDNESW50ZXJuYWwuaDoKKwogMjAxMS0wMi0wNCAgQ2hhcmxpZSBSZWlzICA8Y3JlaXNAY2hy
b21pdW0ub3JnPgogCiAgICAgICAgIFJldmlld2VkIGJ5IE1paGFpIFBhcnBhcml0YS4KZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJLaXQvY2hyb21pdW0vcHVibGljL1dlYkdyYXBoaWNzQ29udGV4dDNE
LmggYi9Tb3VyY2UvV2ViS2l0L2Nocm9taXVtL3B1YmxpYy9XZWJHcmFwaGljc0NvbnRleHQzRC5o
CmluZGV4IDk1NThiYmIxZjkxYThmNjhlY2Y2MWIyODhiMDRjZjkwZjk2ZTc3MmMuLjk4NGY3OWQy
NWFhYWQ1N2E1NmU3YWViYTRmNDU5ODg2YzhlZWQ2YTggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJL
aXQvY2hyb21pdW0vcHVibGljL1dlYkdyYXBoaWNzQ29udGV4dDNELmgKKysrIGIvU291cmNlL1dl
YktpdC9jaHJvbWl1bS9wdWJsaWMvV2ViR3JhcGhpY3NDb250ZXh0M0QuaApAQCAtOTksNiArOTks
NyBAQCBwdWJsaWM6CiAgICAgY2xhc3MgV2ViR3JhcGhpY3NDb250ZXh0TG9zdENhbGxiYWNrIHsK
ICAgICBwdWJsaWM6CiAgICAgICAgIHZpcnR1YWwgdm9pZCBvbkNvbnRleHRMb3N0KCkgPSAwOwor
ICAgICAgICB2aXJ0dWFsIH5XZWJHcmFwaGljc0NvbnRleHRMb3N0Q2FsbGJhY2soKSB7fQogICAg
IH07CiAKICAgICAvLyBUaGlzIGRlc3RydWN0b3IgbmVlZHMgdG8gYmUgcHVibGljIHNvIHRoYXQg
dXNpbmcgY2xhc3NlcyBjYW4gZGVzdHJveSBpbnN0YW5jZXMgaWYgaW5pdGlhbGl6YXRpb24gZmFp
bHMuCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L2Nocm9taXVtL3NyYy9HcmFwaGljc0NvbnRl
eHQzRENocm9taXVtLmNwcCBiL1NvdXJjZS9XZWJLaXQvY2hyb21pdW0vc3JjL0dyYXBoaWNzQ29u
dGV4dDNEQ2hyb21pdW0uY3BwCmluZGV4IDliNWJmMDgyYjhiMzVhNGI2YmQ2M2MxOTIxMTA1OTA1
Y2YzZDQ4MzEuLjA3NTE3ODUyNGIwODY5MjFlYjY0ZjU5ZGMwNmI1NWMzMjk3ZjZjZDcgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJLaXQvY2hyb21pdW0vc3JjL0dyYXBoaWNzQ29udGV4dDNEQ2hyb21p
dW0uY3BwCisrKyBiL1NvdXJjZS9XZWJLaXQvY2hyb21pdW0vc3JjL0dyYXBoaWNzQ29udGV4dDNE
Q2hyb21pdW0uY3BwCkBAIC0xMDgyLDYgKzEwODIsMzUgQEAgREVMRUdBVEVfVE9fSU5URVJOQUxf
MShkZWxldGVUZXh0dXJlLCBQbGF0Zm9ybTNET2JqZWN0KQogREVMRUdBVEVfVE9fSU5URVJOQUxf
MShzeW50aGVzaXplR0xFcnJvciwgR0MzRGVudW0pCiBERUxFR0FURV9UT19JTlRFUk5BTF9SKGdl
dEV4dGVuc2lvbnMsIEV4dGVuc2lvbnMzRCopCiAKK0RFTEVHQVRFX1RPX0lOVEVSTkFMXzEoc2V0
Q29udGV4dExvc3RDYWxsYmFjaywgUGFzc093blB0cjxHcmFwaGljc0NvbnRleHQzRDo6Q29udGV4
dExvc3RDYWxsYmFjaz4pCisKK2NsYXNzIEdyYXBoaWNzQ29udGV4dExvc3RDYWxsYmFja0FkYXB0
ZXIgOiBwdWJsaWMgV2ViS2l0OjpXZWJHcmFwaGljc0NvbnRleHQzRDo6V2ViR3JhcGhpY3NDb250
ZXh0TG9zdENhbGxiYWNrIHsKK3B1YmxpYzoKKyAgICB2aXJ0dWFsIHZvaWQgb25Db250ZXh0TG9z
dCgpOworICAgIHN0YXRpYyBQYXNzT3duUHRyPEdyYXBoaWNzQ29udGV4dExvc3RDYWxsYmFja0Fk
YXB0ZXI+IGNyZWF0ZShQYXNzT3duUHRyPEdyYXBoaWNzQ29udGV4dDNEOjpDb250ZXh0TG9zdENh
bGxiYWNrPik7CisgICAgdmlydHVhbCB+R3JhcGhpY3NDb250ZXh0TG9zdENhbGxiYWNrQWRhcHRl
cigpIHt9Citwcml2YXRlOgorICAgIEdyYXBoaWNzQ29udGV4dExvc3RDYWxsYmFja0FkYXB0ZXIo
UGFzc093blB0cjxHcmFwaGljc0NvbnRleHQzRDo6Q29udGV4dExvc3RDYWxsYmFjaz4gY2IpIDog
bV9jb250ZXh0TG9zdENhbGxiYWNrKGNiKSB7fQorICAgIE93blB0cjxHcmFwaGljc0NvbnRleHQz
RDo6Q29udGV4dExvc3RDYWxsYmFjaz4gbV9jb250ZXh0TG9zdENhbGxiYWNrOworfTsKKwordm9p
ZCBHcmFwaGljc0NvbnRleHRMb3N0Q2FsbGJhY2tBZGFwdGVyOjpvbkNvbnRleHRMb3N0KCkKK3sK
KyAgICBpZiAobV9jb250ZXh0TG9zdENhbGxiYWNrKQorICAgICAgICBtX2NvbnRleHRMb3N0Q2Fs
bGJhY2stPm9uQ29udGV4dExvc3QoKTsKK30KKworUGFzc093blB0cjxHcmFwaGljc0NvbnRleHRM
b3N0Q2FsbGJhY2tBZGFwdGVyPiBHcmFwaGljc0NvbnRleHRMb3N0Q2FsbGJhY2tBZGFwdGVyOjpj
cmVhdGUoUGFzc093blB0cjxHcmFwaGljc0NvbnRleHQzRDo6Q29udGV4dExvc3RDYWxsYmFjaz4g
Y2IpCit7CisgICAgcmV0dXJuIGFkb3B0UHRyKG5ldyBHcmFwaGljc0NvbnRleHRMb3N0Q2FsbGJh
Y2tBZGFwdGVyKGNiKSk7Cit9CisKK3ZvaWQgR3JhcGhpY3NDb250ZXh0M0RJbnRlcm5hbDo6c2V0
Q29udGV4dExvc3RDYWxsYmFjayhQYXNzT3duUHRyPEdyYXBoaWNzQ29udGV4dDNEOjpDb250ZXh0
TG9zdENhbGxiYWNrPiBjYikKK3sKKyAgICBtX2NvbnRleHRMb3N0Q2FsbGJhY2tBZGFwdGVyID0g
R3JhcGhpY3NDb250ZXh0TG9zdENhbGxiYWNrQWRhcHRlcjo6Y3JlYXRlKGNiKTsKKyAgICBtX2lt
cGwtPnNldENvbnRleHRMb3N0Q2FsbGJhY2sobV9jb250ZXh0TG9zdENhbGxiYWNrQWRhcHRlci5n
ZXQoKSk7Cit9CisKIGJvb2wgR3JhcGhpY3NDb250ZXh0M0Q6OmlzR0xFUzJDb21wbGlhbnQoKSBj
b25zdAogewogICAgIHJldHVybiBtX2ludGVybmFsLT5pc0dMRVMyQ29tcGxpYW50KCk7CmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViS2l0L2Nocm9taXVtL3NyYy9HcmFwaGljc0NvbnRleHQzREludGVy
bmFsLmggYi9Tb3VyY2UvV2ViS2l0L2Nocm9taXVtL3NyYy9HcmFwaGljc0NvbnRleHQzREludGVy
bmFsLmgKaW5kZXggMGE3MDYxMzZjNWU4NDZkZjgxYzNmMzE2YmI4ZTgyZjE3NzlhNWZiNi4uYmU5
Y2UxNmRjM2ZjNTA2Mzg4ZWYzNWJmMGNhNDBhMjZjNmIyM2E1MSAxMDA2NDQKLS0tIGEvU291cmNl
L1dlYktpdC9jaHJvbWl1bS9zcmMvR3JhcGhpY3NDb250ZXh0M0RJbnRlcm5hbC5oCisrKyBiL1Nv
dXJjZS9XZWJLaXQvY2hyb21pdW0vc3JjL0dyYXBoaWNzQ29udGV4dDNESW50ZXJuYWwuaApAQCAt
NDQsNiArNDQsNyBAQCBjbGFzcyBFeHRlbnNpb25zM0RDaHJvbWl1bTsKICNpZiBVU0UoQUNDRUxF
UkFURURfQ09NUE9TSVRJTkcpCiBjbGFzcyBXZWJHTExheWVyQ2hyb21pdW07CiAjZW5kaWYKK2Ns
YXNzIEdyYXBoaWNzQ29udGV4dExvc3RDYWxsYmFja0FkYXB0ZXI7CiAKIGNsYXNzIEdyYXBoaWNz
Q29udGV4dDNESW50ZXJuYWwgewogcHVibGljOgpAQCAtMjM5LDYgKzI0MCw4IEBAIHB1YmxpYzoK
IAogICAgIHZvaWQgc3ludGhlc2l6ZUdMRXJyb3IoR0MzRGVudW0gZXJyb3IpOwogCisgICAgdm9p
ZCBzZXRDb250ZXh0TG9zdENhbGxiYWNrKFBhc3NPd25QdHI8R3JhcGhpY3NDb250ZXh0M0Q6OkNv
bnRleHRMb3N0Q2FsbGJhY2s+KTsKKwogICAgIC8vIEV4dGVuc2lvbnMzRCBzdXBwb3J0LgogICAg
IEV4dGVuc2lvbnMzRCogZ2V0RXh0ZW5zaW9ucygpOwogICAgIGJvb2wgc3VwcG9ydHNFeHRlbnNp
b24oY29uc3QgU3RyaW5nJiBuYW1lKTsKQEAgLTI2NSw2ICsyNjgsNyBAQCBwdWJsaWM6CiBwcml2
YXRlOgogICAgIE93blB0cjxXZWJLaXQ6OldlYkdyYXBoaWNzQ29udGV4dDNEPiBtX2ltcGw7CiAg
ICAgT3duUHRyPEV4dGVuc2lvbnMzRENocm9taXVtPiBtX2V4dGVuc2lvbnM7CisgICAgT3duUHRy
PEdyYXBoaWNzQ29udGV4dExvc3RDYWxsYmFja0FkYXB0ZXI+IG1fY29udGV4dExvc3RDYWxsYmFj
a0FkYXB0ZXI7CiAgICAgV2ViS2l0OjpXZWJWaWV3SW1wbCogbV93ZWJWaWV3SW1wbDsKICAgICBi
b29sIG1faW5pdGlhbGl6ZWRBdmFpbGFibGVFeHRlbnNpb25zOwogICAgIEhhc2hTZXQ8U3RyaW5n
PiBtX2VuYWJsZWRFeHRlbnNpb25zOwo=
</data>

          </attachment>
      

    </bug>

</bugzilla>