<?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>115888</bug_id>
          
          <creation_ts>2013-05-09 20:30:21 -0700</creation_ts>
          <short_desc>[BlackBerry] Unable to download blob resource</short_desc>
          <delta_ts>2013-05-16 17:11:27 -0700</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>WebKit BlackBerry</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords></keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Mary Wu">mawu</reporter>
          <assigned_to name="Mary Wu">mawu</assigned_to>
          <cc>charles.wei</cc>
    
    <cc>commit-queue</cc>
    
    <cc>joenotcharles</cc>
    
    <cc>leoyang</cc>
    
    <cc>rwlbuis</cc>
    
    <cc>staikos</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>887222</commentid>
    <comment_count>0</comment_count>
    <who name="Mary Wu">mawu</who>
    <bug_when>2013-05-09 20:30:21 -0700</bug_when>
    <thetext>For blob resource (blob:http....), it&apos;s not suitable to go to NetworkStream which don&apos;t handle &quot;blob&quot; protocol at all. since blob data already handled in BlobResourceHandle, simply get the data out to download stream.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>887247</commentid>
    <comment_count>1</comment_count>
      <attachid>201322</attachid>
    <who name="Mary Wu">mawu</who>
    <bug_when>2013-05-10 00:06:27 -0700</bug_when>
    <thetext>Created attachment 201322
patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>887248</commentid>
    <comment_count>2</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2013-05-10 00:08:02 -0700</bug_when>
    <thetext>Attachment 201322 did not pass style-queue:

Failed to run &quot;[&apos;Tools/Scripts/check-webkit-style&apos;, &apos;--diff-files&apos;, u&apos;Source/WebCore/ChangeLog&apos;, u&apos;Source/WebCore/PlatformBlackBerry.cmake&apos;, u&apos;Source/WebCore/platform/network/blackberry/BlobStream.cpp&apos;, u&apos;Source/WebCore/platform/network/blackberry/BlobStream.h&apos;, u&apos;Source/WebKit/blackberry/ChangeLog&apos;, u&apos;Source/WebKit/blackberry/WebCoreSupport/FrameLoaderClientBlackBerry.cpp&apos;]&quot; exit_code: 1
Source/WebCore/platform/network/blackberry/BlobStream.h:32:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
Source/WebCore/platform/network/blackberry/BlobStream.h:33:  This { should be at the end of the previous line  [whitespace/braces] [4]
Source/WebCore/platform/network/blackberry/BlobStream.h:42:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
Total errors found: 3 in 6 files


If any of these errors are false positives, please file a bug against check-webkit-style.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>887334</commentid>
    <comment_count>3</comment_count>
      <attachid>201322</attachid>
    <who name="Leo Yang">leoyang</who>
    <bug_when>2013-05-10 07:07:34 -0700</bug_when>
    <thetext>Comment on attachment 201322
patch

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

&gt; Source/WebCore/platform/network/blackberry/BlobStream.cpp:42
&gt; +    notifyDataReceived(BlackBerry::Platform::createNetworkBufferByWrappingData((char*)data, len));

I&apos;d like to the cast of from const char* to char* inside the platform layer because it knows more about the details.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>887439</commentid>
    <comment_count>4</comment_count>
      <attachid>201322</attachid>
    <who name="Rob Buis">rwlbuis</who>
    <bug_when>2013-05-10 11:19:38 -0700</bug_when>
    <thetext>Comment on attachment 201322
patch

Leo&apos;s issue should be addressed and there are also some style issues.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>889111</commentid>
    <comment_count>5</comment_count>
      <attachid>201784</attachid>
    <who name="Mary Wu">mawu</who>
    <bug_when>2013-05-14 20:20:28 -0700</bug_when>
    <thetext>Created attachment 201784
update patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>889180</commentid>
    <comment_count>6</comment_count>
      <attachid>201784</attachid>
    <who name="Benjamin Poulain">benjamin</who>
    <bug_when>2013-05-15 01:02:52 -0700</bug_when>
    <thetext>Comment on attachment 201784
update patch

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

&gt; Source/WebCore/platform/network/blackberry/BlobStream.h:36
&gt; +    // From class BlackBerry::Platform::FilterStream

Missing period.

&gt; Source/WebCore/platform/network/blackberry/BlobStream.h:38
&gt; +    virtual BlackBerry::Platform::String url() const;
&gt; +    virtual const BlackBerry::Platform::String mimeType() const;

Missing OVERRIDE.

&gt; Source/WebCore/platform/network/blackberry/BlobStream.h:40
&gt; +    // From class ResourceHandleClient

Missing period.

&gt; Source/WebCore/platform/network/blackberry/BlobStream.h:43
&gt; +    virtual void didReceiveData(ResourceHandle*, const char*, int, int /*encodedDataLength*/);
&gt; +    virtual void didFinishLoading(ResourceHandle*, double /*finishTime*/);
&gt; +    virtual void didFail(ResourceHandle*, const ResourceError&amp;);

Missing override + don&apos;t put variable names into comments like that.

&gt; Source/WebKit/blackberry/WebCoreSupport/FrameLoaderClientBlackBerry.cpp:1220
&gt; +            NetworkRequest req;

req is a bad variable name.

&gt; Source/WebKit/blackberry/WebCoreSupport/FrameLoaderClientBlackBerry.cpp:1221
&gt; +            req.setRequestUrl(BlackBerry::Platform::String::fromUtf8(request.url().string().utf8().data()));

There is an implicit conversion operator for String -&gt; BlackBerry::Platform::String.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>889204</commentid>
    <comment_count>7</comment_count>
    <who name="Mary Wu">mawu</who>
    <bug_when>2013-05-15 02:09:54 -0700</bug_when>
    <thetext>(In reply to comment #6)
&gt; (From update of attachment 201784 [details])
&gt; View in context: https://bugs.webkit.org/attachment.cgi?id=201784&amp;action=review

thanks for comments, update soon</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>889217</commentid>
    <comment_count>8</comment_count>
      <attachid>201809</attachid>
    <who name="Mary Wu">mawu</who>
    <bug_when>2013-05-15 02:27:54 -0700</bug_when>
    <thetext>Created attachment 201809
update patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>889495</commentid>
    <comment_count>9</comment_count>
      <attachid>201809</attachid>
    <who name="Benjamin Poulain">benjamin</who>
    <bug_when>2013-05-15 13:47:04 -0700</bug_when>
    <thetext>Comment on attachment 201809
update patch

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

No problem with me on WebKit side. The blackberry bits were already reviewed internally according to the changelog.

Just a question bellow.

&gt; Source/WebKit/blackberry/WebCoreSupport/FrameLoaderClientBlackBerry.cpp:1240
&gt; +    BlackBerry::Platform::DataStream *stream = new BlackBerry::Platform::DataStream(netRequest);
&gt; +    m_webPagePrivate-&gt;m_client-&gt;downloadRequested(stream, filename);
&gt;      stream-&gt;streamOpen();

Who owns that memory?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>889504</commentid>
    <comment_count>10</comment_count>
    <who name="Joe Mason">joenotcharles</who>
    <bug_when>2013-05-15 14:02:21 -0700</bug_when>
    <thetext>(In reply to comment #9)
&gt; Who owns that memory?

A singleton in our network stack called DownloadManager. (Thanks for making me check that, because I found a bug in it!)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>889509</commentid>
    <comment_count>11</comment_count>
      <attachid>201809</attachid>
    <who name="Leo Yang">leoyang</who>
    <bug_when>2013-05-15 14:06:39 -0700</bug_when>
    <thetext>Comment on attachment 201809
update patch

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

&gt;&gt; Source/WebKit/blackberry/WebCoreSupport/FrameLoaderClientBlackBerry.cpp:1240
&gt;&gt;      stream-&gt;streamOpen();
&gt; 
&gt; Who owns that memory?

downloadRequested(). Mary please check downloadRequested() which may have leaks on early return branches.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>889624</commentid>
    <comment_count>12</comment_count>
      <attachid>201809</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2013-05-15 18:58:01 -0700</bug_when>
    <thetext>Comment on attachment 201809
update patch

Rejecting attachment 201809 from commit-queue.

Failed to run &quot;[&apos;/Volumes/Data/EWS/WebKit/Tools/Scripts/webkit-patch&apos;, &apos;--status-host=webkit-queues.appspot.com&apos;, &apos;--bot-id=webkit-cq-01&apos;, &apos;apply-attachment&apos;, &apos;--no-update&apos;, &apos;--non-interactive&apos;, 201809, &apos;--port=mac&apos;]&quot; exit_code: 2 cwd: /Volumes/Data/EWS/WebKit

Last 500 characters of output:
atformBlackBerry.cmake.rej
patching file Source/WebCore/platform/network/blackberry/BlobStream.cpp
patching file Source/WebCore/platform/network/blackberry/BlobStream.h
patching file Source/WebKit/blackberry/ChangeLog
Hunk #1 succeeded at 1 with fuzz 3.
patching file Source/WebKit/blackberry/WebCoreSupport/FrameLoaderClientBlackBerry.cpp

Failed to run &quot;[u&apos;/Volumes/Data/EWS/WebKit/Tools/Scripts/svn-apply&apos;, &apos;--force&apos;, &apos;--reviewer&apos;, u&apos;Benjamin Poulain&apos;]&quot; exit_code: 1 cwd: /Volumes/Data/EWS/WebKit

Full output: http://webkit-queues.appspot.com/results/478667</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>889634</commentid>
    <comment_count>13</comment_count>
    <who name="Mary Wu">mawu</who>
    <bug_when>2013-05-15 19:13:56 -0700</bug_when>
    <thetext>(In reply to comment #10)
&gt; (In reply to comment #9)
&gt; &gt; Who owns that memory?
&gt; 
&gt; A singleton in our network stack called DownloadManager. (Thanks for making me check that, because I found a bug in it!)

thanks, Benjamin, Joe and Leo, an internal PR track the possible leak issue.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>889636</commentid>
    <comment_count>14</comment_count>
      <attachid>201809</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2013-05-15 19:24:17 -0700</bug_when>
    <thetext>Comment on attachment 201809
update patch

Rejecting attachment 201809 from commit-queue.

Failed to run &quot;[&apos;/Volumes/Data/EWS/WebKit/Tools/Scripts/webkit-patch&apos;, &apos;--status-host=webkit-queues.appspot.com&apos;, &apos;--bot-id=webkit-cq-02&apos;, &apos;apply-attachment&apos;, &apos;--no-update&apos;, &apos;--non-interactive&apos;, 201809, &apos;--port=mac&apos;]&quot; exit_code: 2 cwd: /Volumes/Data/EWS/WebKit

Last 500 characters of output:
atformBlackBerry.cmake.rej
patching file Source/WebCore/platform/network/blackberry/BlobStream.cpp
patching file Source/WebCore/platform/network/blackberry/BlobStream.h
patching file Source/WebKit/blackberry/ChangeLog
Hunk #1 succeeded at 1 with fuzz 3.
patching file Source/WebKit/blackberry/WebCoreSupport/FrameLoaderClientBlackBerry.cpp

Failed to run &quot;[u&apos;/Volumes/Data/EWS/WebKit/Tools/Scripts/svn-apply&apos;, &apos;--force&apos;, &apos;--reviewer&apos;, u&apos;Benjamin Poulain&apos;]&quot; exit_code: 1 cwd: /Volumes/Data/EWS/WebKit

Full output: http://webkit-queues.appspot.com/results/480265</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>889641</commentid>
    <comment_count>15</comment_count>
      <attachid>201912</attachid>
    <who name="Mary Wu">mawu</who>
    <bug_when>2013-05-15 19:46:53 -0700</bug_when>
    <thetext>Created attachment 201912
rebase the patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>890059</commentid>
    <comment_count>16</comment_count>
      <attachid>201912</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2013-05-16 17:11:24 -0700</bug_when>
    <thetext>Comment on attachment 201912
rebase the patch

Clearing flags on attachment: 201912

Committed r150217: &lt;http://trac.webkit.org/changeset/150217&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>890061</commentid>
    <comment_count>17</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2013-05-16 17:11:27 -0700</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>201322</attachid>
            <date>2013-05-10 00:06:27 -0700</date>
            <delta_ts>2013-05-14 20:20:28 -0700</delta_ts>
            <desc>patch</desc>
            <filename>webkit.patch</filename>
            <type>text/plain</type>
            <size>10593</size>
            <attacher name="Mary Wu">mawu</attacher>
            
              <data encoding="base64">RnJvbSA3ZWVhYTMyMGZlNjU1ZTEzZTRhMDQ1MmZmMjgwYjYzNjljNjFlNzFhIE1vbiBTZXAgMTcg
MDA6MDA6MDAgMjAwMQpGcm9tOiBNYXJ5IFd1IDxtYXJ5Lnd1QHRvcmNobW9iaWxlLmNvbS5jbj4K
RGF0ZTogRnJpLCAxMCBNYXkgMjAxMyAxNTowMTowMSArMDgwMApTdWJqZWN0OiBbUEFUQ0hdIGJs
b2IgZG93bmxvYWQuCgotLS0KIFNvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZyAgICAgICAgICAgICAg
ICAgICAgICAgICAgIHwgICAyNCArKysrKysrKwogU291cmNlL1dlYkNvcmUvUGxhdGZvcm1CbGFj
a0JlcnJ5LmNtYWtlICAgICAgICAgICAgfCAgICAxICsKIC4uLi9wbGF0Zm9ybS9uZXR3b3JrL2Js
YWNrYmVycnkvQmxvYlN0cmVhbS5jcHAgICAgIHwgICA2NSArKysrKysrKysrKysrKysrKysrKwog
Li4uL3BsYXRmb3JtL25ldHdvcmsvYmxhY2tiZXJyeS9CbG9iU3RyZWFtLmggICAgICAgfCAgIDUz
ICsrKysrKysrKysrKysrKysKIFNvdXJjZS9XZWJLaXQvYmxhY2tiZXJyeS9DaGFuZ2VMb2cgICAg
ICAgICAgICAgICAgIHwgICAxNiArKysrKwogLi4uL1dlYkNvcmVTdXBwb3J0L0ZyYW1lTG9hZGVy
Q2xpZW50QmxhY2tCZXJyeS5jcHAgfCAgIDE2ICsrKy0tCiA2IGZpbGVzIGNoYW5nZWQsIDE2OSBp
bnNlcnRpb25zKCspLCA2IGRlbGV0aW9ucygtKQogY3JlYXRlIG1vZGUgMTAwNjQ0IFNvdXJjZS9X
ZWJDb3JlL3BsYXRmb3JtL25ldHdvcmsvYmxhY2tiZXJyeS9CbG9iU3RyZWFtLmNwcAogY3JlYXRl
IG1vZGUgMTAwNjQ0IFNvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL25ldHdvcmsvYmxhY2tiZXJyeS9C
bG9iU3RyZWFtLmgKCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cgYi9Tb3Vy
Y2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggZjFhYjg1Mi4uM2RhMmUxYyAxMDA2NDQKLS0tIGEv
U291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpA
QCAtMSwzICsxLDI3IEBACisyMDEzLTA1LTA5ICBNYXJ5IFd1ICA8bWFyeS53dUB0b3JjaG1vYmls
ZS5jb20uY24+CisKKyAgICAgICAgW0JsYWNrQmVycnldIFVuYWJsZSB0byBkb3dubG9hZCBibG9i
IHJlc291cmNlCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9p
ZD0xMTU4ODgKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAg
ICBBZGQgQmxvYlN0cmVhbSB0byBoYW5kbGUgb3ZlciBibG9iIGRhdGEgZnJvbSBCbG9iUmVzb3Vy
Y2VIYW5kbGUgdG8gZG93bmxvYWQgc3RyZWFtLgorICAgICAgICBSSU0gYnVnIDMzMTA4NiwgaW50
ZXJuYWxseSByZXZpZXdlZCBieSBDaGFybGVzIFdlaSBhbmQgTGVvIFlhbmcuCisKKyAgICAgICAg
KiBQbGF0Zm9ybUJsYWNrQmVycnkuY21ha2U6CisgICAgICAgICogcGxhdGZvcm0vbmV0d29yay9i
bGFja2JlcnJ5L0Jsb2JTdHJlYW0uY3BwOiBBZGRlZC4KKyAgICAgICAgKFdlYkNvcmUpOgorICAg
ICAgICAoV2ViQ29yZTo6QmxvYlN0cmVhbTo6QmxvYlN0cmVhbSk6CisgICAgICAgIChXZWJDb3Jl
OjpCbG9iU3RyZWFtOjp+QmxvYlN0cmVhbSk6CisgICAgICAgIChXZWJDb3JlOjpCbG9iU3RyZWFt
OjpkaWRSZWNlaXZlRGF0YSk6CisgICAgICAgIChXZWJDb3JlOjpCbG9iU3RyZWFtOjpkaWRGaW5p
c2hMb2FkaW5nKToKKyAgICAgICAgKFdlYkNvcmU6OkJsb2JTdHJlYW06OmRpZEZhaWwpOgorICAg
ICAgICAoV2ViQ29yZTo6QmxvYlN0cmVhbTo6dXJsKToKKyAgICAgICAgKFdlYkNvcmU6OkJsb2JT
dHJlYW06Om1pbWVUeXBlKToKKyAgICAgICAgKiBwbGF0Zm9ybS9uZXR3b3JrL2JsYWNrYmVycnkv
QmxvYlN0cmVhbS5oOiBBZGRlZC4KKyAgICAgICAgKFdlYkNvcmUpOgorICAgICAgICAoQmxvYlN0
cmVhbSk6CisKIDIwMTMtMDUtMDkgIENocmlzIEZsZWl6YWNoICA8Y2ZsZWl6YWNoQGFwcGxlLmNv
bT4KIAogICAgICAgICBBWDogVm9pY2VPdmVyIGlzIG5vIGxvbmdlciBzZWVpbmcgaXRlbXMgaW4g
cG9vcmx5IGZvcm1lZCB0YWJsZXMKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL1BsYXRmb3Jt
QmxhY2tCZXJyeS5jbWFrZSBiL1NvdXJjZS9XZWJDb3JlL1BsYXRmb3JtQmxhY2tCZXJyeS5jbWFr
ZQppbmRleCBiYTA4N2FmLi42ZDBlOTIwIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9QbGF0
Zm9ybUJsYWNrQmVycnkuY21ha2UKKysrIGIvU291cmNlL1dlYkNvcmUvUGxhdGZvcm1CbGFja0Jl
cnJ5LmNtYWtlCkBAIC00NCw2ICs0NCw3IEBAIGxpc3QoQVBQRU5EIFdlYkNvcmVfU09VUkNFUwog
ICAgIHBsYXRmb3JtL25ldHdvcmsvTmV0d29ya1N0b3JhZ2VTZXNzaW9uU3R1Yi5jcHAKICAgICBw
bGF0Zm9ybS9uZXR3b3JrL1Byb3h5U2VydmVyLmNwcAogICAgIHBsYXRmb3JtL25ldHdvcmsvYmxh
Y2tiZXJyeS9BdXRvZmlsbEJhY2tpbmdTdG9yZS5jcHAKKyAgICBwbGF0Zm9ybS9uZXR3b3JrL2Js
YWNrYmVycnkvQmxvYlN0cmVhbS5jcHAKICAgICBwbGF0Zm9ybS9uZXR3b3JrL2JsYWNrYmVycnkv
RE5TQmxhY2tCZXJyeS5jcHAKICAgICBwbGF0Zm9ybS9uZXR3b3JrL2JsYWNrYmVycnkvRGVmZXJy
ZWREYXRhLmNwcAogICAgIHBsYXRmb3JtL25ldHdvcmsvYmxhY2tiZXJyeS9OZXR3b3JrSm9iLmNw
cApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbmV0d29yay9ibGFja2JlcnJ5
L0Jsb2JTdHJlYW0uY3BwIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbmV0d29yay9ibGFja2Jl
cnJ5L0Jsb2JTdHJlYW0uY3BwCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjk2
OWYxN2QKLS0tIC9kZXYvbnVsbAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9uZXR3b3Jr
L2JsYWNrYmVycnkvQmxvYlN0cmVhbS5jcHAKQEAgLTAsMCArMSw2NSBAQAorLyoKKyAqIENvcHly
aWdodCAoQykgMjAxMyBSZXNlYXJjaCBJbiBNb3Rpb24gTGltaXRlZC4gQWxsIHJpZ2h0cyByZXNl
cnZlZC4KKyAqCisgKiBUaGlzIGxpYnJhcnkgaXMgZnJlZSBzb2Z0d2FyZTsgeW91IGNhbiByZWRp
c3RyaWJ1dGUgaXQgYW5kL29yCisgKiBtb2RpZnkgaXQgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBH
TlUgTGVzc2VyIEdlbmVyYWwgUHVibGljCisgKiBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieSB0aGUg
RnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uOyBlaXRoZXIKKyAqIHZlcnNpb24gMiBvZiB0aGUgTGlj
ZW5zZSwgb3IgKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KKyAqCisgKiBUaGlz
IGxpYnJhcnkgaXMgZGlzdHJpYnV0ZWQgaW4gdGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1
bCwKKyAqIGJ1dCBXSVRIT1VUIEFOWSBXQVJSQU5UWTsgd2l0aG91dCBldmVuIHRoZSBpbXBsaWVk
IHdhcnJhbnR5IG9mCisgKiBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNV
TEFSIFBVUlBPU0UuICBTZWUgdGhlIEdOVQorICogTGVzc2VyIEdlbmVyYWwgUHVibGljIExpY2Vu
c2UgZm9yIG1vcmUgZGV0YWlscy4KKyAqCisgKiBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBj
b3B5IG9mIHRoZSBHTlUgTGVzc2VyIEdlbmVyYWwgUHVibGljCisgKiBMaWNlbnNlIGFsb25nIHdp
dGggdGhpcyBsaWJyYXJ5OyBpZiBub3QsIHdyaXRlIHRvIHRoZSBGcmVlIFNvZnR3YXJlCisgKiBG
b3VuZGF0aW9uLCBJbmMuLCA1MSBGcmFua2xpbiBTdHJlZXQsIEZpZnRoIEZsb29yLCBCb3N0b24s
IE1BICAwMjExMC0xMzAxICBVU0EKKyAqLworCisjaW5jbHVkZSAiY29uZmlnLmgiCisjaW5jbHVk
ZSAiQmxvYlN0cmVhbS5oIgorCisjaW5jbHVkZSAiUmVzb3VyY2VIYW5kbGUuaCIKKwordXNpbmcg
QmxhY2tCZXJyeTo6UGxhdGZvcm06OkZpbHRlclN0cmVhbTsKKworbmFtZXNwYWNlIFdlYkNvcmUg
eworCitCbG9iU3RyZWFtOjpCbG9iU3RyZWFtKGNvbnN0IFJlc291cmNlUmVzcG9uc2UmIHJlc3Bv
bnNlLCBSZXNvdXJjZUhhbmRsZSogaGFuZGxlKQorICAgIDogRmlsdGVyU3RyZWFtKCkKKyAgICAs
IG1fcmVzcG9uc2UocmVzcG9uc2UpCit7CisgICAgcmVnaXN0ZXJTdHJlYW1JZCgpOworICAgIGhh
bmRsZS0+c2V0Q2xpZW50KHRoaXMpOworfQorCitCbG9iU3RyZWFtOjp+QmxvYlN0cmVhbSgpCit7
Cit9CisKK3ZvaWQgQmxvYlN0cmVhbTo6ZGlkUmVjZWl2ZURhdGEoUmVzb3VyY2VIYW5kbGUqLCBj
b25zdCBjaGFyKiBkYXRhLCBpbnQgbGVuLCBpbnQpCit7CisgICAgbm90aWZ5RGF0YVJlY2VpdmVk
KEJsYWNrQmVycnk6OlBsYXRmb3JtOjpjcmVhdGVOZXR3b3JrQnVmZmVyQnlXcmFwcGluZ0RhdGEo
KGNoYXIqKWRhdGEsIGxlbikpOworfQorCit2b2lkIEJsb2JTdHJlYW06OmRpZEZpbmlzaExvYWRp
bmcoUmVzb3VyY2VIYW5kbGUqLCBkb3VibGUpCit7CisgICAgbm90aWZ5Q2xvc2UoRmlsdGVyU3Ry
ZWFtOjpTdGF0dXNTdWNjZXNzKTsKK30KKwordm9pZCBCbG9iU3RyZWFtOjpkaWRGYWlsKFJlc291
cmNlSGFuZGxlKiwgY29uc3QgUmVzb3VyY2VFcnJvciYpCit7CisgICAgbm90aWZ5Q2xvc2UoRmls
dGVyU3RyZWFtOjpTdGF0dXNFcnJvcklPKTsKK30KKworQmxhY2tCZXJyeTo6UGxhdGZvcm06OlN0
cmluZyBCbG9iU3RyZWFtOjp1cmwoKSBjb25zdAoreworICAgIHJldHVybiBtX3Jlc3BvbnNlLnVy
bCgpLnN0cmluZygpOworfQorCitjb25zdCBCbGFja0JlcnJ5OjpQbGF0Zm9ybTo6U3RyaW5nIEJs
b2JTdHJlYW06Om1pbWVUeXBlKCkgY29uc3QKK3sKKyAgICByZXR1cm4gbV9yZXNwb25zZS5taW1l
VHlwZSgpOworfQorCit9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCmRpZmYgLS1naXQgYS9Tb3VyY2Uv
V2ViQ29yZS9wbGF0Zm9ybS9uZXR3b3JrL2JsYWNrYmVycnkvQmxvYlN0cmVhbS5oIGIvU291cmNl
L1dlYkNvcmUvcGxhdGZvcm0vbmV0d29yay9ibGFja2JlcnJ5L0Jsb2JTdHJlYW0uaApuZXcgZmls
ZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5jZWU1Y2JmCi0tLSAvZGV2L251bGwKKysrIGIv
U291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbmV0d29yay9ibGFja2JlcnJ5L0Jsb2JTdHJlYW0uaApA
QCAtMCwwICsxLDUzIEBACisvKgorICogQ29weXJpZ2h0IChDKSAyMDEzIFJlc2VhcmNoIEluIE1v
dGlvbiBMaW1pdGVkLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICoKKyAqIFRoaXMgbGlicmFyeSBp
cyBmcmVlIHNvZnR3YXJlOyB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IKKyAqIG1vZGlm
eSBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBMZXNzZXIgR2VuZXJhbCBQdWJsaWMKKyAq
IExpY2Vuc2UgYXMgcHVibGlzaGVkIGJ5IHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb247IGVp
dGhlcgorICogdmVyc2lvbiAyIG9mIHRoZSBMaWNlbnNlLCBvciAoYXQgeW91ciBvcHRpb24pIGFu
eSBsYXRlciB2ZXJzaW9uLgorICoKKyAqIFRoaXMgbGlicmFyeSBpcyBkaXN0cmlidXRlZCBpbiB0
aGUgaG9wZSB0aGF0IGl0IHdpbGwgYmUgdXNlZnVsLAorICogYnV0IFdJVEhPVVQgQU5ZIFdBUlJB
TlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKKyAqIE1FUkNIQU5UQUJJ
TElUWSBvciBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRS4gIFNlZSB0aGUgR05VCisg
KiBMZXNzZXIgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBmb3IgbW9yZSBkZXRhaWxzLgorICoKKyAq
IFlvdSBzaG91bGQgaGF2ZSByZWNlaXZlZCBhIGNvcHkgb2YgdGhlIEdOVSBMZXNzZXIgR2VuZXJh
bCBQdWJsaWMKKyAqIExpY2Vuc2UgYWxvbmcgd2l0aCB0aGlzIGxpYnJhcnk7IGlmIG5vdCwgd3Jp
dGUgdG8gdGhlIEZyZWUgU29mdHdhcmUKKyAqIEZvdW5kYXRpb24sIEluYy4sIDUxIEZyYW5rbGlu
IFN0cmVldCwgRmlmdGggRmxvb3IsIEJvc3RvbiwgTUEgIDAyMTEwLTEzMDEgIFVTQQorICovCisK
KyNpZm5kZWYgQmxvYlN0cmVhbV9oCisjZGVmaW5lIEJsb2JTdHJlYW1faAorCisjaW5jbHVkZSAi
UmVzb3VyY2VIYW5kbGVDbGllbnQuaCIKKyNpbmNsdWRlICJSZXNvdXJjZVJlc3BvbnNlLmgiCisK
KyNpbmNsdWRlIDxuZXR3b3JrL0ZpbHRlclN0cmVhbS5oPgorCituYW1lc3BhY2UgV2ViQ29yZSB7
CisKK2NsYXNzIFJlc291cmNlSGFuZGxlOworCitjbGFzcyBCbG9iU3RyZWFtIDogcHVibGljIFJl
c291cmNlSGFuZGxlQ2xpZW50CisgICAgICAgICAgICAgICAgICwgcHVibGljIEJsYWNrQmVycnk6
OlBsYXRmb3JtOjpGaWx0ZXJTdHJlYW0KK3sKK3B1YmxpYzoKKyAgICBCbG9iU3RyZWFtKGNvbnN0
IFJlc291cmNlUmVzcG9uc2UmLCBSZXNvdXJjZUhhbmRsZSopOworICAgIHZpcnR1YWwgfkJsb2JT
dHJlYW0oKTsKKworICAgIC8vIEZyb20gY2xhc3MgQmxhY2tCZXJyeTo6UGxhdGZvcm06OkZpbHRl
clN0cmVhbQorICAgIHZpcnR1YWwgQmxhY2tCZXJyeTo6UGxhdGZvcm06OlN0cmluZyB1cmwoKSBj
b25zdDsKKyAgICB2aXJ0dWFsIGNvbnN0IEJsYWNrQmVycnk6OlBsYXRmb3JtOjpTdHJpbmcgbWlt
ZVR5cGUoKSBjb25zdDsKKworICAgICAvLyBGcm9tIGNsYXNzIFJlc291cmNlSGFuZGxlQ2xpZW50
CisgICAgdmlydHVhbCB2b2lkIGRpZFJlY2VpdmVEYXRhKFJlc291cmNlSGFuZGxlKiwgY29uc3Qg
Y2hhciosIGludCwgaW50IC8qZW5jb2RlZERhdGFMZW5ndGgqLyk7CisgICAgdmlydHVhbCB2b2lk
IGRpZEZpbmlzaExvYWRpbmcoUmVzb3VyY2VIYW5kbGUqLCBkb3VibGUgLypmaW5pc2hUaW1lKi8p
OworICAgIHZpcnR1YWwgdm9pZCBkaWRGYWlsKFJlc291cmNlSGFuZGxlKiwgY29uc3QgUmVzb3Vy
Y2VFcnJvciYpOworCitwcml2YXRlOgorICAgIFJlc291cmNlUmVzcG9uc2UgbV9yZXNwb25zZTsK
K307CisKK30gLy8gbmFtZXNwYWNlIFdlYkNvcmUKKworI2VuZGlmIC8vIEJsb2JTdHJlYW1faApk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9ibGFja2JlcnJ5L0NoYW5nZUxvZyBiL1NvdXJjZS9X
ZWJLaXQvYmxhY2tiZXJyeS9DaGFuZ2VMb2cKaW5kZXggNjFmMjExNC4uYTM4ODkyMiAxMDA2NDQK
LS0tIGEvU291cmNlL1dlYktpdC9ibGFja2JlcnJ5L0NoYW5nZUxvZworKysgYi9Tb3VyY2UvV2Vi
S2l0L2JsYWNrYmVycnkvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTkgQEAKKzIwMTMtMDUtMDkgIE1h
cnkgV3UgIDxtYXJ5Lnd1QHRvcmNobW9iaWxlLmNvbS5jbj4KKworICAgICAgICBbQmxhY2tCZXJy
eV0gVW5hYmxlIHRvIGRvd25sb2FkIGJsb2IgcmVzb3VyY2UKKyAgICAgICAgaHR0cHM6Ly9idWdz
LndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTExNTg4OAorCisgICAgICAgIFJldmlld2VkIGJ5
IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIEZvciBibG9iIHJlc291cmNlIChibG9iOmh0dHAu
Li4uKSwgaXQncyBub3Qgc3VpdGFibGUgdG8gZ28gdG8gTmV0d29ya1N0cmVhbQorICAgICAgICB3
aGljaCBkb24ndCBoYW5kbGUgImJsb2IiIHByb3RvY29sIGF0IGFsbC4gc2luY2UgYmxvYiBkYXRh
IGFscmVhZHkgaGFuZGxlZAorICAgICAgICBpbiBCbG9iUmVzb3VyY2VIYW5kbGUsIHNpbXBseSBn
ZXQgdGhlIGRhdGEgb3V0IHRvIGRvd25sb2FkIHN0cmVhbS4KKworICAgICAgICBSSU0gYnVnIDMz
MTA4NiwgaW50ZXJuYWxseSByZXZpZXdlZCBieSBDaGFybGVzIFdlaSBhbmQgTGVvIFlhbmcuCisK
KyAgICAgICAgKiBXZWJDb3JlU3VwcG9ydC9GcmFtZUxvYWRlckNsaWVudEJsYWNrQmVycnkuY3Bw
OgorICAgICAgICAoV2ViQ29yZTo6RnJhbWVMb2FkZXJDbGllbnRCbGFja0JlcnJ5Ojpjb252ZXJ0
TWFpblJlc291cmNlTG9hZFRvRG93bmxvYWQpOgorCiAyMDEzLTA1LTA5ICBNaWtlIEZlbnRvbiAg
PG1pZmVudG9uQHJpbS5jb20+CiAKICAgICAgICAgW0JsYWNrQmVycnldIFN0eWxlIHVwZGF0ZXMg
cmVxdWlyZWQgYmFzZWQgb24gbmV3IGNoZWNrLXdlYmtpdC1zdHlsZQpkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYktpdC9ibGFja2JlcnJ5L1dlYkNvcmVTdXBwb3J0L0ZyYW1lTG9hZGVyQ2xpZW50Qmxh
Y2tCZXJyeS5jcHAgYi9Tb3VyY2UvV2ViS2l0L2JsYWNrYmVycnkvV2ViQ29yZVN1cHBvcnQvRnJh
bWVMb2FkZXJDbGllbnRCbGFja0JlcnJ5LmNwcAppbmRleCBmNDZlMmVhLi5hMGQ2Y2IzIDEwMDY0
NAotLS0gYS9Tb3VyY2UvV2ViS2l0L2JsYWNrYmVycnkvV2ViQ29yZVN1cHBvcnQvRnJhbWVMb2Fk
ZXJDbGllbnRCbGFja0JlcnJ5LmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0L2JsYWNrYmVycnkvV2Vi
Q29yZVN1cHBvcnQvRnJhbWVMb2FkZXJDbGllbnRCbGFja0JlcnJ5LmNwcApAQCAtMjQsNiArMjQs
NyBAQAogI2luY2x1ZGUgIkJhY2tGb3J3YXJkQ29udHJvbGxlci5oIgogI2luY2x1ZGUgIkJhY2tp
bmdTdG9yZUNsaWVudC5oIgogI2luY2x1ZGUgIkJhY2tpbmdTdG9yZV9wLmgiCisjaW5jbHVkZSAi
QmxvYlN0cmVhbS5oIgogI2luY2x1ZGUgIkNyZWRlbnRpYWxNYW5hZ2VyLmgiCiAjaW5jbHVkZSAi
Q3JlZGVudGlhbFRyYW5zZm9ybURhdGEuaCIKICNpbmNsdWRlICJEdW1wUmVuZGVyVHJlZUNsaWVu
dC5oIgpAQCAtMTIwMiw2ICsxMjAzLDkgQEAgdm9pZCBGcmFtZUxvYWRlckNsaWVudEJsYWNrQmVy
cnk6OmNvbnZlcnRNYWluUmVzb3VyY2VMb2FkVG9Eb3dubG9hZChEb2N1bWVudExvYWQKIHsKICAg
ICBBU1NFUlQoZG9jdW1lbnRMb2FkZXIpOwogICAgIFJlc291cmNlQnVmZmVyKiBidWZmID0gZG9j
dW1lbnRMb2FkZXItPm1haW5SZXNvdXJjZURhdGEoKS5nZXQoKTsKKyAgICBCbGFja0JlcnJ5OjpQ
bGF0Zm9ybTo6U3RyaW5nIGZpbGVuYW1lID0gcmVzcG9uc2Uuc3VnZ2VzdGVkRmlsZW5hbWUoKTsK
KyAgICBpZiAoZmlsZW5hbWUuZW1wdHkoKSkKKyAgICAgICAgZmlsZW5hbWUgPSByZXF1ZXN0LnN1
Z2dlc3RlZFNhdmVOYW1lKCk7CiAKICAgICBpZiAoIWJ1ZmYpIHsKICAgICAgICAgLy8gSWYgbm8g
Y2FjaGVkLCBsaWtlIHBvbGljeURvd25sb2FkIHJlc291cmNlIHdoaWNoIGRvbid0IGdvIHJlbmRl
ciBhdCBhbGwsIGp1c3QgZGlyZWN0IHRvIGRvd25sb2FkU3RyZWFtLgpAQCAtMTIxMywxMyArMTIx
NywxMyBAQCB2b2lkIEZyYW1lTG9hZGVyQ2xpZW50QmxhY2tCZXJyeTo6Y29udmVydE1haW5SZXNv
dXJjZUxvYWRUb0Rvd25sb2FkKERvY3VtZW50TG9hZAogICAgICAgICAvLyBoYXZlIHRoZWlyIG93
biBSZXNvdXJjZUhhbmRsZSBjbGFzcyB3aGljaCB3b24ndCBjYWxsIHN0YXJ0Sm9iCiAgICAgICAg
IC8vIHRvIGRvIHRoZSBwcm9wZXIgc2V0dXAuIERvIGl0IGhlcmUuCiAgICAgICAgIGlmICghc3Ry
ZWFtKSB7Ci0gICAgICAgICAgICBpbnQgcGxheWVySWQgPSBzdGF0aWNfY2FzdDxGcmFtZUxvYWRl
ckNsaWVudEJsYWNrQmVycnkqPihtX2ZyYW1lLT5sb2FkZXIoKS0+Y2xpZW50KCkpLT5wbGF5ZXJJ
ZCgpOwotICAgICAgICAgICAgTmV0d29ya01hbmFnZXI6Omluc3RhbmNlKCktPnN0YXJ0Sm9iKHBs
YXllcklkLCBoYW5kbGUsIHJlcXVlc3QsIG1fZnJhbWUsIGZhbHNlKTsKLSAgICAgICAgICAgIHN0
cmVhbSA9IE5ldHdvcmtNYW5hZ2VyOjppbnN0YW5jZSgpLT5zdHJlYW1Gb3JIYW5kbGUoaGFuZGxl
KTsKKyAgICAgICAgICAgIE5ldHdvcmtSZXF1ZXN0IHJlcTsKKyAgICAgICAgICAgIHJlcS5zZXRS
ZXF1ZXN0VXJsKEJsYWNrQmVycnk6OlBsYXRmb3JtOjpTdHJpbmc6OmZyb21VdGY4KHJlcXVlc3Qu
dXJsKCkuc3RyaW5nKCkudXRmOCgpLmRhdGEoKSkpOworICAgICAgICAgICAgc3RyZWFtID0gbmV3
IEJsb2JTdHJlYW0ocmVzcG9uc2UsIGhhbmRsZSk7CiAgICAgICAgIH0KICAgICAgICAgQVNTRVJU
KHN0cmVhbSk7CiAKLSAgICAgICAgbV93ZWJQYWdlUHJpdmF0ZS0+bV9jbGllbnQtPmRvd25sb2Fk
UmVxdWVzdGVkKHN0cmVhbSwgcmVzcG9uc2Uuc3VnZ2VzdGVkRmlsZW5hbWUoKSk7CisgICAgICAg
IG1fd2ViUGFnZVByaXZhdGUtPm1fY2xpZW50LT5kb3dubG9hZFJlcXVlc3RlZChzdHJlYW0sIGZp
bGVuYW1lKTsKICAgICAgICAgcmV0dXJuOwogICAgIH0KIApAQCAtMTIzMiw5ICsxMjM2LDkgQEAg
dm9pZCBGcmFtZUxvYWRlckNsaWVudEJsYWNrQmVycnk6OmNvbnZlcnRNYWluUmVzb3VyY2VMb2Fk
VG9Eb3dubG9hZChEb2N1bWVudExvYWQKICAgICB1cmwuYXBwZW5kKHNfYmFzZTY0KTsKICAgICB1
cmwuYXBwZW5kKEJsYWNrQmVycnk6OlBsYXRmb3JtOjpTdHJpbmc6OmZyb21VdGY4KGJhc2U2NEVu
Y29kZShDU3RyaW5nKGJ1ZmYtPmRhdGEoKSwgYnVmZi0+c2l6ZSgpKSkudXRmOCgpLmRhdGEoKSkp
OwogICAgIE5ldHdvcmtSZXF1ZXN0IHJlcTsKLSAgICByZXEuc2V0UmVxdWVzdFVybCh1cmwuc3Ry
aW5nKCksIEJsYWNrQmVycnk6OlBsYXRmb3JtOjpTdHJpbmc6OmZyb21Bc2NpaSgiR0VUIikpOwor
ICAgIHJlcS5zZXRSZXF1ZXN0VXJsKHVybC5zdHJpbmcoKSk7CiAgICAgQmxhY2tCZXJyeTo6UGxh
dGZvcm06OkRhdGFTdHJlYW0gKnN0cmVhbSA9IG5ldyBCbGFja0JlcnJ5OjpQbGF0Zm9ybTo6RGF0
YVN0cmVhbShyZXEpOwotICAgIG1fd2ViUGFnZVByaXZhdGUtPm1fY2xpZW50LT5kb3dubG9hZFJl
cXVlc3RlZChzdHJlYW0sIHJlc3BvbnNlLnN1Z2dlc3RlZEZpbGVuYW1lKCkpOworICAgIG1fd2Vi
UGFnZVByaXZhdGUtPm1fY2xpZW50LT5kb3dubG9hZFJlcXVlc3RlZChzdHJlYW0sIGZpbGVuYW1l
KTsKICAgICBzdHJlYW0tPnN0cmVhbU9wZW4oKTsKIH0KIAotLSAKMS43LjkuNQoK
</data>
<flag name="review"
          id="222653"
          type_id="1"
          status="-"
          setter="rwlbuis"
    />
          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>201784</attachid>
            <date>2013-05-14 20:20:28 -0700</date>
            <delta_ts>2013-05-15 02:27:54 -0700</delta_ts>
            <desc>update patch</desc>
            <filename>webkit.patch</filename>
            <type>text/plain</type>
            <size>10564</size>
            <attacher name="Mary Wu">mawu</attacher>
            
              <data encoding="base64">RnJvbSAzNjU1MzdiYzczNWQ3YzAzMDlmNjczODgyYmM5OWRjZGMxMGVjMzk2IE1vbiBTZXAgMTcg
MDA6MDA6MDAgMjAwMQpGcm9tOiBNYXJ5IFd1IDxtYXJ5Lnd1QHRvcmNobW9iaWxlLmNvbS5jbj4K
RGF0ZTogRnJpLCAxMCBNYXkgMjAxMyAxNTowMTowMSArMDgwMApTdWJqZWN0OiBbUEFUQ0hdIGJs
b2IgZG93bmxvYWQuCgotLS0KIFNvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZyAgICAgICAgICAgICAg
ICAgICAgICAgICAgIHwgICAyNCArKysrKysrKwogU291cmNlL1dlYkNvcmUvUGxhdGZvcm1CbGFj
a0JlcnJ5LmNtYWtlICAgICAgICAgICAgfCAgICAxICsKIC4uLi9wbGF0Zm9ybS9uZXR3b3JrL2Js
YWNrYmVycnkvQmxvYlN0cmVhbS5jcHAgICAgIHwgICA2NSArKysrKysrKysrKysrKysrKysrKwog
Li4uL3BsYXRmb3JtL25ldHdvcmsvYmxhY2tiZXJyeS9CbG9iU3RyZWFtLmggICAgICAgfCAgIDUx
ICsrKysrKysrKysrKysrKwogU291cmNlL1dlYktpdC9ibGFja2JlcnJ5L0NoYW5nZUxvZyAgICAg
ICAgICAgICAgICAgfCAgIDE2ICsrKysrCiAuLi4vV2ViQ29yZVN1cHBvcnQvRnJhbWVMb2FkZXJD
bGllbnRCbGFja0JlcnJ5LmNwcCB8ICAgMTYgKysrLS0KIDYgZmlsZXMgY2hhbmdlZCwgMTY3IGlu
c2VydGlvbnMoKyksIDYgZGVsZXRpb25zKC0pCiBjcmVhdGUgbW9kZSAxMDA2NDQgU291cmNlL1dl
YkNvcmUvcGxhdGZvcm0vbmV0d29yay9ibGFja2JlcnJ5L0Jsb2JTdHJlYW0uY3BwCiBjcmVhdGUg
bW9kZSAxMDA2NDQgU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbmV0d29yay9ibGFja2JlcnJ5L0Js
b2JTdHJlYW0uaAoKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZyBiL1NvdXJj
ZS9XZWJDb3JlL0NoYW5nZUxvZwppbmRleCBmMWFiODUyLi4zZGEyZTFjIDEwMDY0NAotLS0gYS9T
b3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCkBA
IC0xLDMgKzEsMjcgQEAKKzIwMTMtMDUtMDkgIE1hcnkgV3UgIDxtYXJ5Lnd1QHRvcmNobW9iaWxl
LmNvbS5jbj4KKworICAgICAgICBbQmxhY2tCZXJyeV0gVW5hYmxlIHRvIGRvd25sb2FkIGJsb2Ig
cmVzb3VyY2UKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lk
PTExNTg4OAorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAg
IEFkZCBCbG9iU3RyZWFtIHRvIGhhbmRsZSBvdmVyIGJsb2IgZGF0YSBmcm9tIEJsb2JSZXNvdXJj
ZUhhbmRsZSB0byBkb3dubG9hZCBzdHJlYW0uCisgICAgICAgIFJJTSBidWcgMzMxMDg2LCBpbnRl
cm5hbGx5IHJldmlld2VkIGJ5IENoYXJsZXMgV2VpIGFuZCBMZW8gWWFuZy4KKworICAgICAgICAq
IFBsYXRmb3JtQmxhY2tCZXJyeS5jbWFrZToKKyAgICAgICAgKiBwbGF0Zm9ybS9uZXR3b3JrL2Js
YWNrYmVycnkvQmxvYlN0cmVhbS5jcHA6IEFkZGVkLgorICAgICAgICAoV2ViQ29yZSk6CisgICAg
ICAgIChXZWJDb3JlOjpCbG9iU3RyZWFtOjpCbG9iU3RyZWFtKToKKyAgICAgICAgKFdlYkNvcmU6
OkJsb2JTdHJlYW06On5CbG9iU3RyZWFtKToKKyAgICAgICAgKFdlYkNvcmU6OkJsb2JTdHJlYW06
OmRpZFJlY2VpdmVEYXRhKToKKyAgICAgICAgKFdlYkNvcmU6OkJsb2JTdHJlYW06OmRpZEZpbmlz
aExvYWRpbmcpOgorICAgICAgICAoV2ViQ29yZTo6QmxvYlN0cmVhbTo6ZGlkRmFpbCk6CisgICAg
ICAgIChXZWJDb3JlOjpCbG9iU3RyZWFtOjp1cmwpOgorICAgICAgICAoV2ViQ29yZTo6QmxvYlN0
cmVhbTo6bWltZVR5cGUpOgorICAgICAgICAqIHBsYXRmb3JtL25ldHdvcmsvYmxhY2tiZXJyeS9C
bG9iU3RyZWFtLmg6IEFkZGVkLgorICAgICAgICAoV2ViQ29yZSk6CisgICAgICAgIChCbG9iU3Ry
ZWFtKToKKwogMjAxMy0wNS0wOSAgQ2hyaXMgRmxlaXphY2ggIDxjZmxlaXphY2hAYXBwbGUuY29t
PgogCiAgICAgICAgIEFYOiBWb2ljZU92ZXIgaXMgbm8gbG9uZ2VyIHNlZWluZyBpdGVtcyBpbiBw
b29ybHkgZm9ybWVkIHRhYmxlcwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvUGxhdGZvcm1C
bGFja0JlcnJ5LmNtYWtlIGIvU291cmNlL1dlYkNvcmUvUGxhdGZvcm1CbGFja0JlcnJ5LmNtYWtl
CmluZGV4IGJhMDg3YWYuLjZkMGU5MjAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL1BsYXRm
b3JtQmxhY2tCZXJyeS5jbWFrZQorKysgYi9Tb3VyY2UvV2ViQ29yZS9QbGF0Zm9ybUJsYWNrQmVy
cnkuY21ha2UKQEAgLTQ0LDYgKzQ0LDcgQEAgbGlzdChBUFBFTkQgV2ViQ29yZV9TT1VSQ0VTCiAg
ICAgcGxhdGZvcm0vbmV0d29yay9OZXR3b3JrU3RvcmFnZVNlc3Npb25TdHViLmNwcAogICAgIHBs
YXRmb3JtL25ldHdvcmsvUHJveHlTZXJ2ZXIuY3BwCiAgICAgcGxhdGZvcm0vbmV0d29yay9ibGFj
a2JlcnJ5L0F1dG9maWxsQmFja2luZ1N0b3JlLmNwcAorICAgIHBsYXRmb3JtL25ldHdvcmsvYmxh
Y2tiZXJyeS9CbG9iU3RyZWFtLmNwcAogICAgIHBsYXRmb3JtL25ldHdvcmsvYmxhY2tiZXJyeS9E
TlNCbGFja0JlcnJ5LmNwcAogICAgIHBsYXRmb3JtL25ldHdvcmsvYmxhY2tiZXJyeS9EZWZlcnJl
ZERhdGEuY3BwCiAgICAgcGxhdGZvcm0vbmV0d29yay9ibGFja2JlcnJ5L05ldHdvcmtKb2IuY3Bw
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9uZXR3b3JrL2JsYWNrYmVycnkv
QmxvYlN0cmVhbS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9uZXR3b3JrL2JsYWNrYmVy
cnkvQmxvYlN0cmVhbS5jcHAKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uNzcy
ZWE4MAotLS0gL2Rldi9udWxsCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL25ldHdvcmsv
YmxhY2tiZXJyeS9CbG9iU3RyZWFtLmNwcApAQCAtMCwwICsxLDY1IEBACisvKgorICogQ29weXJp
Z2h0IChDKSAyMDEzIFJlc2VhcmNoIEluIE1vdGlvbiBMaW1pdGVkLiBBbGwgcmlnaHRzIHJlc2Vy
dmVkLgorICoKKyAqIFRoaXMgbGlicmFyeSBpcyBmcmVlIHNvZnR3YXJlOyB5b3UgY2FuIHJlZGlz
dHJpYnV0ZSBpdCBhbmQvb3IKKyAqIG1vZGlmeSBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdO
VSBMZXNzZXIgR2VuZXJhbCBQdWJsaWMKKyAqIExpY2Vuc2UgYXMgcHVibGlzaGVkIGJ5IHRoZSBG
cmVlIFNvZnR3YXJlIEZvdW5kYXRpb247IGVpdGhlcgorICogdmVyc2lvbiAyIG9mIHRoZSBMaWNl
bnNlLCBvciAoYXQgeW91ciBvcHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLgorICoKKyAqIFRoaXMg
bGlicmFyeSBpcyBkaXN0cmlidXRlZCBpbiB0aGUgaG9wZSB0aGF0IGl0IHdpbGwgYmUgdXNlZnVs
LAorICogYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQg
d2FycmFudHkgb2YKKyAqIE1FUkNIQU5UQUJJTElUWSBvciBGSVRORVNTIEZPUiBBIFBBUlRJQ1VM
QVIgUFVSUE9TRS4gIFNlZSB0aGUgR05VCisgKiBMZXNzZXIgR2VuZXJhbCBQdWJsaWMgTGljZW5z
ZSBmb3IgbW9yZSBkZXRhaWxzLgorICoKKyAqIFlvdSBzaG91bGQgaGF2ZSByZWNlaXZlZCBhIGNv
cHkgb2YgdGhlIEdOVSBMZXNzZXIgR2VuZXJhbCBQdWJsaWMKKyAqIExpY2Vuc2UgYWxvbmcgd2l0
aCB0aGlzIGxpYnJhcnk7IGlmIG5vdCwgd3JpdGUgdG8gdGhlIEZyZWUgU29mdHdhcmUKKyAqIEZv
dW5kYXRpb24sIEluYy4sIDUxIEZyYW5rbGluIFN0cmVldCwgRmlmdGggRmxvb3IsIEJvc3Rvbiwg
TUEgIDAyMTEwLTEzMDEgIFVTQQorICovCisKKyNpbmNsdWRlICJjb25maWcuaCIKKyNpbmNsdWRl
ICJCbG9iU3RyZWFtLmgiCisKKyNpbmNsdWRlICJSZXNvdXJjZUhhbmRsZS5oIgorCit1c2luZyBC
bGFja0JlcnJ5OjpQbGF0Zm9ybTo6RmlsdGVyU3RyZWFtOworCituYW1lc3BhY2UgV2ViQ29yZSB7
CisKK0Jsb2JTdHJlYW06OkJsb2JTdHJlYW0oY29uc3QgUmVzb3VyY2VSZXNwb25zZSYgcmVzcG9u
c2UsIFJlc291cmNlSGFuZGxlKiBoYW5kbGUpCisgICAgOiBGaWx0ZXJTdHJlYW0oKQorICAgICwg
bV9yZXNwb25zZShyZXNwb25zZSkKK3sKKyAgICByZWdpc3RlclN0cmVhbUlkKCk7CisgICAgaGFu
ZGxlLT5zZXRDbGllbnQodGhpcyk7Cit9CisKK0Jsb2JTdHJlYW06On5CbG9iU3RyZWFtKCkKK3sK
K30KKwordm9pZCBCbG9iU3RyZWFtOjpkaWRSZWNlaXZlRGF0YShSZXNvdXJjZUhhbmRsZSosIGNv
bnN0IGNoYXIqIGRhdGEsIGludCBsZW4sIGludCkKK3sKKyAgICBub3RpZnlEYXRhUmVjZWl2ZWQo
QmxhY2tCZXJyeTo6UGxhdGZvcm06OmNyZWF0ZU5ldHdvcmtCdWZmZXJCeVdyYXBwaW5nRGF0YShk
YXRhLCBsZW4pKTsKK30KKwordm9pZCBCbG9iU3RyZWFtOjpkaWRGaW5pc2hMb2FkaW5nKFJlc291
cmNlSGFuZGxlKiwgZG91YmxlKQoreworICAgIG5vdGlmeUNsb3NlKEZpbHRlclN0cmVhbTo6U3Rh
dHVzU3VjY2Vzcyk7Cit9CisKK3ZvaWQgQmxvYlN0cmVhbTo6ZGlkRmFpbChSZXNvdXJjZUhhbmRs
ZSosIGNvbnN0IFJlc291cmNlRXJyb3ImKQoreworICAgIG5vdGlmeUNsb3NlKEZpbHRlclN0cmVh
bTo6U3RhdHVzRXJyb3JJTyk7Cit9CisKK0JsYWNrQmVycnk6OlBsYXRmb3JtOjpTdHJpbmcgQmxv
YlN0cmVhbTo6dXJsKCkgY29uc3QKK3sKKyAgICByZXR1cm4gbV9yZXNwb25zZS51cmwoKS5zdHJp
bmcoKTsKK30KKworY29uc3QgQmxhY2tCZXJyeTo6UGxhdGZvcm06OlN0cmluZyBCbG9iU3RyZWFt
OjptaW1lVHlwZSgpIGNvbnN0Cit7CisgICAgcmV0dXJuIG1fcmVzcG9uc2UubWltZVR5cGUoKTsK
K30KKworfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUv
cGxhdGZvcm0vbmV0d29yay9ibGFja2JlcnJ5L0Jsb2JTdHJlYW0uaCBiL1NvdXJjZS9XZWJDb3Jl
L3BsYXRmb3JtL25ldHdvcmsvYmxhY2tiZXJyeS9CbG9iU3RyZWFtLmgKbmV3IGZpbGUgbW9kZSAx
MDA2NDQKaW5kZXggMDAwMDAwMC4uNThmMDU2MQotLS0gL2Rldi9udWxsCisrKyBiL1NvdXJjZS9X
ZWJDb3JlL3BsYXRmb3JtL25ldHdvcmsvYmxhY2tiZXJyeS9CbG9iU3RyZWFtLmgKQEAgLTAsMCAr
MSw1MSBAQAorLyoKKyAqIENvcHlyaWdodCAoQykgMjAxMyBSZXNlYXJjaCBJbiBNb3Rpb24gTGlt
aXRlZC4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAqCisgKiBUaGlzIGxpYnJhcnkgaXMgZnJlZSBz
b2Z0d2FyZTsgeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29yCisgKiBtb2RpZnkgaXQgdW5k
ZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUgTGVzc2VyIEdlbmVyYWwgUHVibGljCisgKiBMaWNlbnNl
IGFzIHB1Ymxpc2hlZCBieSB0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uOyBlaXRoZXIKKyAq
IHZlcnNpb24gMiBvZiB0aGUgTGljZW5zZSwgb3IgKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIg
dmVyc2lvbi4KKyAqCisgKiBUaGlzIGxpYnJhcnkgaXMgZGlzdHJpYnV0ZWQgaW4gdGhlIGhvcGUg
dGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCwKKyAqIGJ1dCBXSVRIT1VUIEFOWSBXQVJSQU5UWTsgd2l0
aG91dCBldmVuIHRoZSBpbXBsaWVkIHdhcnJhbnR5IG9mCisgKiBNRVJDSEFOVEFCSUxJVFkgb3Ig
RklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlIEdOVQorICogTGVzc2Vy
IEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KKyAqCisgKiBZb3Ugc2hv
dWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgTGVzc2VyIEdlbmVyYWwgUHVibGlj
CisgKiBMaWNlbnNlIGFsb25nIHdpdGggdGhpcyBsaWJyYXJ5OyBpZiBub3QsIHdyaXRlIHRvIHRo
ZSBGcmVlIFNvZnR3YXJlCisgKiBGb3VuZGF0aW9uLCBJbmMuLCA1MSBGcmFua2xpbiBTdHJlZXQs
IEZpZnRoIEZsb29yLCBCb3N0b24sIE1BICAwMjExMC0xMzAxICBVU0EKKyAqLworCisjaWZuZGVm
IEJsb2JTdHJlYW1faAorI2RlZmluZSBCbG9iU3RyZWFtX2gKKworI2luY2x1ZGUgIlJlc291cmNl
SGFuZGxlQ2xpZW50LmgiCisjaW5jbHVkZSAiUmVzb3VyY2VSZXNwb25zZS5oIgorCisjaW5jbHVk
ZSA8bmV0d29yay9GaWx0ZXJTdHJlYW0uaD4KKworbmFtZXNwYWNlIFdlYkNvcmUgeworCitjbGFz
cyBSZXNvdXJjZUhhbmRsZTsKKworY2xhc3MgQmxvYlN0cmVhbSA6IHB1YmxpYyBSZXNvdXJjZUhh
bmRsZUNsaWVudCwgcHVibGljIEJsYWNrQmVycnk6OlBsYXRmb3JtOjpGaWx0ZXJTdHJlYW0gewor
cHVibGljOgorICAgIEJsb2JTdHJlYW0oY29uc3QgUmVzb3VyY2VSZXNwb25zZSYsIFJlc291cmNl
SGFuZGxlKik7CisgICAgdmlydHVhbCB+QmxvYlN0cmVhbSgpOworCisgICAgLy8gRnJvbSBjbGFz
cyBCbGFja0JlcnJ5OjpQbGF0Zm9ybTo6RmlsdGVyU3RyZWFtCisgICAgdmlydHVhbCBCbGFja0Jl
cnJ5OjpQbGF0Zm9ybTo6U3RyaW5nIHVybCgpIGNvbnN0OworICAgIHZpcnR1YWwgY29uc3QgQmxh
Y2tCZXJyeTo6UGxhdGZvcm06OlN0cmluZyBtaW1lVHlwZSgpIGNvbnN0OworCisgICAgLy8gRnJv
bSBjbGFzcyBSZXNvdXJjZUhhbmRsZUNsaWVudAorICAgIHZpcnR1YWwgdm9pZCBkaWRSZWNlaXZl
RGF0YShSZXNvdXJjZUhhbmRsZSosIGNvbnN0IGNoYXIqLCBpbnQsIGludCAvKmVuY29kZWREYXRh
TGVuZ3RoKi8pOworICAgIHZpcnR1YWwgdm9pZCBkaWRGaW5pc2hMb2FkaW5nKFJlc291cmNlSGFu
ZGxlKiwgZG91YmxlIC8qZmluaXNoVGltZSovKTsKKyAgICB2aXJ0dWFsIHZvaWQgZGlkRmFpbChS
ZXNvdXJjZUhhbmRsZSosIGNvbnN0IFJlc291cmNlRXJyb3ImKTsKKworcHJpdmF0ZToKKyAgICBS
ZXNvdXJjZVJlc3BvbnNlIG1fcmVzcG9uc2U7Cit9OworCit9IC8vIG5hbWVzcGFjZSBXZWJDb3Jl
CisKKyNlbmRpZiAvLyBCbG9iU3RyZWFtX2gKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvYmxh
Y2tiZXJyeS9DaGFuZ2VMb2cgYi9Tb3VyY2UvV2ViS2l0L2JsYWNrYmVycnkvQ2hhbmdlTG9nCmlu
ZGV4IDYxZjIxMTQuLmEzODg5MjIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvYmxhY2tiZXJy
eS9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYktpdC9ibGFja2JlcnJ5L0NoYW5nZUxvZwpAQCAt
MSwzICsxLDE5IEBACisyMDEzLTA1LTA5ICBNYXJ5IFd1ICA8bWFyeS53dUB0b3JjaG1vYmlsZS5j
b20uY24+CisKKyAgICAgICAgW0JsYWNrQmVycnldIFVuYWJsZSB0byBkb3dubG9hZCBibG9iIHJl
c291cmNlCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0x
MTU4ODgKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBG
b3IgYmxvYiByZXNvdXJjZSAoYmxvYjpodHRwLi4uLiksIGl0J3Mgbm90IHN1aXRhYmxlIHRvIGdv
IHRvIE5ldHdvcmtTdHJlYW0KKyAgICAgICAgd2hpY2ggZG9uJ3QgaGFuZGxlICJibG9iIiBwcm90
b2NvbCBhdCBhbGwuIHNpbmNlIGJsb2IgZGF0YSBhbHJlYWR5IGhhbmRsZWQKKyAgICAgICAgaW4g
QmxvYlJlc291cmNlSGFuZGxlLCBzaW1wbHkgZ2V0IHRoZSBkYXRhIG91dCB0byBkb3dubG9hZCBz
dHJlYW0uCisKKyAgICAgICAgUklNIGJ1ZyAzMzEwODYsIGludGVybmFsbHkgcmV2aWV3ZWQgYnkg
Q2hhcmxlcyBXZWkgYW5kIExlbyBZYW5nLgorCisgICAgICAgICogV2ViQ29yZVN1cHBvcnQvRnJh
bWVMb2FkZXJDbGllbnRCbGFja0JlcnJ5LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkZyYW1lTG9h
ZGVyQ2xpZW50QmxhY2tCZXJyeTo6Y29udmVydE1haW5SZXNvdXJjZUxvYWRUb0Rvd25sb2FkKToK
KwogMjAxMy0wNS0wOSAgTWlrZSBGZW50b24gIDxtaWZlbnRvbkByaW0uY29tPgogCiAgICAgICAg
IFtCbGFja0JlcnJ5XSBTdHlsZSB1cGRhdGVzIHJlcXVpcmVkIGJhc2VkIG9uIG5ldyBjaGVjay13
ZWJraXQtc3R5bGUKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvYmxhY2tiZXJyeS9XZWJDb3Jl
U3VwcG9ydC9GcmFtZUxvYWRlckNsaWVudEJsYWNrQmVycnkuY3BwIGIvU291cmNlL1dlYktpdC9i
bGFja2JlcnJ5L1dlYkNvcmVTdXBwb3J0L0ZyYW1lTG9hZGVyQ2xpZW50QmxhY2tCZXJyeS5jcHAK
aW5kZXggZjQ2ZTJlYS4uYTBkNmNiMyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9ibGFja2Jl
cnJ5L1dlYkNvcmVTdXBwb3J0L0ZyYW1lTG9hZGVyQ2xpZW50QmxhY2tCZXJyeS5jcHAKKysrIGIv
U291cmNlL1dlYktpdC9ibGFja2JlcnJ5L1dlYkNvcmVTdXBwb3J0L0ZyYW1lTG9hZGVyQ2xpZW50
QmxhY2tCZXJyeS5jcHAKQEAgLTI0LDYgKzI0LDcgQEAKICNpbmNsdWRlICJCYWNrRm9yd2FyZENv
bnRyb2xsZXIuaCIKICNpbmNsdWRlICJCYWNraW5nU3RvcmVDbGllbnQuaCIKICNpbmNsdWRlICJC
YWNraW5nU3RvcmVfcC5oIgorI2luY2x1ZGUgIkJsb2JTdHJlYW0uaCIKICNpbmNsdWRlICJDcmVk
ZW50aWFsTWFuYWdlci5oIgogI2luY2x1ZGUgIkNyZWRlbnRpYWxUcmFuc2Zvcm1EYXRhLmgiCiAj
aW5jbHVkZSAiRHVtcFJlbmRlclRyZWVDbGllbnQuaCIKQEAgLTEyMDIsNiArMTIwMyw5IEBAIHZv
aWQgRnJhbWVMb2FkZXJDbGllbnRCbGFja0JlcnJ5Ojpjb252ZXJ0TWFpblJlc291cmNlTG9hZFRv
RG93bmxvYWQoRG9jdW1lbnRMb2FkCiB7CiAgICAgQVNTRVJUKGRvY3VtZW50TG9hZGVyKTsKICAg
ICBSZXNvdXJjZUJ1ZmZlciogYnVmZiA9IGRvY3VtZW50TG9hZGVyLT5tYWluUmVzb3VyY2VEYXRh
KCkuZ2V0KCk7CisgICAgQmxhY2tCZXJyeTo6UGxhdGZvcm06OlN0cmluZyBmaWxlbmFtZSA9IHJl
c3BvbnNlLnN1Z2dlc3RlZEZpbGVuYW1lKCk7CisgICAgaWYgKGZpbGVuYW1lLmVtcHR5KCkpCisg
ICAgICAgIGZpbGVuYW1lID0gcmVxdWVzdC5zdWdnZXN0ZWRTYXZlTmFtZSgpOwogCiAgICAgaWYg
KCFidWZmKSB7CiAgICAgICAgIC8vIElmIG5vIGNhY2hlZCwgbGlrZSBwb2xpY3lEb3dubG9hZCBy
ZXNvdXJjZSB3aGljaCBkb24ndCBnbyByZW5kZXIgYXQgYWxsLCBqdXN0IGRpcmVjdCB0byBkb3du
bG9hZFN0cmVhbS4KQEAgLTEyMTMsMTMgKzEyMTcsMTMgQEAgdm9pZCBGcmFtZUxvYWRlckNsaWVu
dEJsYWNrQmVycnk6OmNvbnZlcnRNYWluUmVzb3VyY2VMb2FkVG9Eb3dubG9hZChEb2N1bWVudExv
YWQKICAgICAgICAgLy8gaGF2ZSB0aGVpciBvd24gUmVzb3VyY2VIYW5kbGUgY2xhc3Mgd2hpY2gg
d29uJ3QgY2FsbCBzdGFydEpvYgogICAgICAgICAvLyB0byBkbyB0aGUgcHJvcGVyIHNldHVwLiBE
byBpdCBoZXJlLgogICAgICAgICBpZiAoIXN0cmVhbSkgewotICAgICAgICAgICAgaW50IHBsYXll
cklkID0gc3RhdGljX2Nhc3Q8RnJhbWVMb2FkZXJDbGllbnRCbGFja0JlcnJ5Kj4obV9mcmFtZS0+
bG9hZGVyKCktPmNsaWVudCgpKS0+cGxheWVySWQoKTsKLSAgICAgICAgICAgIE5ldHdvcmtNYW5h
Z2VyOjppbnN0YW5jZSgpLT5zdGFydEpvYihwbGF5ZXJJZCwgaGFuZGxlLCByZXF1ZXN0LCBtX2Zy
YW1lLCBmYWxzZSk7Ci0gICAgICAgICAgICBzdHJlYW0gPSBOZXR3b3JrTWFuYWdlcjo6aW5zdGFu
Y2UoKS0+c3RyZWFtRm9ySGFuZGxlKGhhbmRsZSk7CisgICAgICAgICAgICBOZXR3b3JrUmVxdWVz
dCByZXE7CisgICAgICAgICAgICByZXEuc2V0UmVxdWVzdFVybChCbGFja0JlcnJ5OjpQbGF0Zm9y
bTo6U3RyaW5nOjpmcm9tVXRmOChyZXF1ZXN0LnVybCgpLnN0cmluZygpLnV0ZjgoKS5kYXRhKCkp
KTsKKyAgICAgICAgICAgIHN0cmVhbSA9IG5ldyBCbG9iU3RyZWFtKHJlc3BvbnNlLCBoYW5kbGUp
OwogICAgICAgICB9CiAgICAgICAgIEFTU0VSVChzdHJlYW0pOwogCi0gICAgICAgIG1fd2ViUGFn
ZVByaXZhdGUtPm1fY2xpZW50LT5kb3dubG9hZFJlcXVlc3RlZChzdHJlYW0sIHJlc3BvbnNlLnN1
Z2dlc3RlZEZpbGVuYW1lKCkpOworICAgICAgICBtX3dlYlBhZ2VQcml2YXRlLT5tX2NsaWVudC0+
ZG93bmxvYWRSZXF1ZXN0ZWQoc3RyZWFtLCBmaWxlbmFtZSk7CiAgICAgICAgIHJldHVybjsKICAg
ICB9CiAKQEAgLTEyMzIsOSArMTIzNiw5IEBAIHZvaWQgRnJhbWVMb2FkZXJDbGllbnRCbGFja0Jl
cnJ5Ojpjb252ZXJ0TWFpblJlc291cmNlTG9hZFRvRG93bmxvYWQoRG9jdW1lbnRMb2FkCiAgICAg
dXJsLmFwcGVuZChzX2Jhc2U2NCk7CiAgICAgdXJsLmFwcGVuZChCbGFja0JlcnJ5OjpQbGF0Zm9y
bTo6U3RyaW5nOjpmcm9tVXRmOChiYXNlNjRFbmNvZGUoQ1N0cmluZyhidWZmLT5kYXRhKCksIGJ1
ZmYtPnNpemUoKSkpLnV0ZjgoKS5kYXRhKCkpKTsKICAgICBOZXR3b3JrUmVxdWVzdCByZXE7Ci0g
ICAgcmVxLnNldFJlcXVlc3RVcmwodXJsLnN0cmluZygpLCBCbGFja0JlcnJ5OjpQbGF0Zm9ybTo6
U3RyaW5nOjpmcm9tQXNjaWkoIkdFVCIpKTsKKyAgICByZXEuc2V0UmVxdWVzdFVybCh1cmwuc3Ry
aW5nKCkpOwogICAgIEJsYWNrQmVycnk6OlBsYXRmb3JtOjpEYXRhU3RyZWFtICpzdHJlYW0gPSBu
ZXcgQmxhY2tCZXJyeTo6UGxhdGZvcm06OkRhdGFTdHJlYW0ocmVxKTsKLSAgICBtX3dlYlBhZ2VQ
cml2YXRlLT5tX2NsaWVudC0+ZG93bmxvYWRSZXF1ZXN0ZWQoc3RyZWFtLCByZXNwb25zZS5zdWdn
ZXN0ZWRGaWxlbmFtZSgpKTsKKyAgICBtX3dlYlBhZ2VQcml2YXRlLT5tX2NsaWVudC0+ZG93bmxv
YWRSZXF1ZXN0ZWQoc3RyZWFtLCBmaWxlbmFtZSk7CiAgICAgc3RyZWFtLT5zdHJlYW1PcGVuKCk7
CiB9CiAKLS0gCjEuNy45LjUKCg==
</data>
<flag name="review"
          id="223134"
          type_id="1"
          status="-"
          setter="benjamin"
    />
    <flag name="commit-queue"
          id="223135"
          type_id="3"
          status="-"
          setter="benjamin"
    />
          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>201809</attachid>
            <date>2013-05-15 02:27:54 -0700</date>
            <delta_ts>2013-05-15 19:46:53 -0700</delta_ts>
            <desc>update patch</desc>
            <filename>webkit.patch</filename>
            <type>text/plain</type>
            <size>10718</size>
            <attacher name="Mary Wu">mawu</attacher>
            
              <data encoding="base64">RnJvbSBhMDk5MGFiZGJkOTcxYjQ3MjU5ZjU0MWZhYTc3MGQ2NTRmMGU3M2RkIE1vbiBTZXAgMTcg
MDA6MDA6MDAgMjAwMQpGcm9tOiBNYXJ5IFd1IDxtYXJ5Lnd1QHRvcmNobW9iaWxlLmNvbS5jbj4K
RGF0ZTogRnJpLCAxMCBNYXkgMjAxMyAxNTowMTowMSArMDgwMApTdWJqZWN0OiBbUEFUQ0hdIGJs
b2IgZG93bmxvYWQuCgotLS0KIFNvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZyAgICAgICAgICAgICAg
ICAgICAgICAgICAgIHwgICAyNCArKysrKysrKwogU291cmNlL1dlYkNvcmUvUGxhdGZvcm1CbGFj
a0JlcnJ5LmNtYWtlICAgICAgICAgICAgfCAgICAxICsKIC4uLi9wbGF0Zm9ybS9uZXR3b3JrL2Js
YWNrYmVycnkvQmxvYlN0cmVhbS5jcHAgICAgIHwgICA2NSArKysrKysrKysrKysrKysrKysrKwog
Li4uL3BsYXRmb3JtL25ldHdvcmsvYmxhY2tiZXJyeS9CbG9iU3RyZWFtLmggICAgICAgfCAgIDUx
ICsrKysrKysrKysrKysrKwogU291cmNlL1dlYktpdC9ibGFja2JlcnJ5L0NoYW5nZUxvZyAgICAg
ICAgICAgICAgICAgfCAgIDE2ICsrKysrCiAuLi4vV2ViQ29yZVN1cHBvcnQvRnJhbWVMb2FkZXJD
bGllbnRCbGFja0JlcnJ5LmNwcCB8ICAgMjIgKysrKy0tLQogNiBmaWxlcyBjaGFuZ2VkLCAxNjkg
aW5zZXJ0aW9ucygrKSwgMTAgZGVsZXRpb25zKC0pCiBjcmVhdGUgbW9kZSAxMDA2NDQgU291cmNl
L1dlYkNvcmUvcGxhdGZvcm0vbmV0d29yay9ibGFja2JlcnJ5L0Jsb2JTdHJlYW0uY3BwCiBjcmVh
dGUgbW9kZSAxMDA2NDQgU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbmV0d29yay9ibGFja2JlcnJ5
L0Jsb2JTdHJlYW0uaAoKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwppbmRleCBmMWFiODUyLi4zZGEyZTFjIDEwMDY0NAotLS0g
YS9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9n
CkBAIC0xLDMgKzEsMjcgQEAKKzIwMTMtMDUtMDkgIE1hcnkgV3UgIDxtYXJ5Lnd1QHRvcmNobW9i
aWxlLmNvbS5jbj4KKworICAgICAgICBbQmxhY2tCZXJyeV0gVW5hYmxlIHRvIGRvd25sb2FkIGJs
b2IgcmVzb3VyY2UKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dp
P2lkPTExNTg4OAorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAg
ICAgIEFkZCBCbG9iU3RyZWFtIHRvIGhhbmRsZSBvdmVyIGJsb2IgZGF0YSBmcm9tIEJsb2JSZXNv
dXJjZUhhbmRsZSB0byBkb3dubG9hZCBzdHJlYW0uCisgICAgICAgIFJJTSBidWcgMzMxMDg2LCBp
bnRlcm5hbGx5IHJldmlld2VkIGJ5IENoYXJsZXMgV2VpIGFuZCBMZW8gWWFuZy4KKworICAgICAg
ICAqIFBsYXRmb3JtQmxhY2tCZXJyeS5jbWFrZToKKyAgICAgICAgKiBwbGF0Zm9ybS9uZXR3b3Jr
L2JsYWNrYmVycnkvQmxvYlN0cmVhbS5jcHA6IEFkZGVkLgorICAgICAgICAoV2ViQ29yZSk6Cisg
ICAgICAgIChXZWJDb3JlOjpCbG9iU3RyZWFtOjpCbG9iU3RyZWFtKToKKyAgICAgICAgKFdlYkNv
cmU6OkJsb2JTdHJlYW06On5CbG9iU3RyZWFtKToKKyAgICAgICAgKFdlYkNvcmU6OkJsb2JTdHJl
YW06OmRpZFJlY2VpdmVEYXRhKToKKyAgICAgICAgKFdlYkNvcmU6OkJsb2JTdHJlYW06OmRpZEZp
bmlzaExvYWRpbmcpOgorICAgICAgICAoV2ViQ29yZTo6QmxvYlN0cmVhbTo6ZGlkRmFpbCk6Cisg
ICAgICAgIChXZWJDb3JlOjpCbG9iU3RyZWFtOjp1cmwpOgorICAgICAgICAoV2ViQ29yZTo6Qmxv
YlN0cmVhbTo6bWltZVR5cGUpOgorICAgICAgICAqIHBsYXRmb3JtL25ldHdvcmsvYmxhY2tiZXJy
eS9CbG9iU3RyZWFtLmg6IEFkZGVkLgorICAgICAgICAoV2ViQ29yZSk6CisgICAgICAgIChCbG9i
U3RyZWFtKToKKwogMjAxMy0wNS0wOSAgQ2hyaXMgRmxlaXphY2ggIDxjZmxlaXphY2hAYXBwbGUu
Y29tPgogCiAgICAgICAgIEFYOiBWb2ljZU92ZXIgaXMgbm8gbG9uZ2VyIHNlZWluZyBpdGVtcyBp
biBwb29ybHkgZm9ybWVkIHRhYmxlcwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvUGxhdGZv
cm1CbGFja0JlcnJ5LmNtYWtlIGIvU291cmNlL1dlYkNvcmUvUGxhdGZvcm1CbGFja0JlcnJ5LmNt
YWtlCmluZGV4IGJhMDg3YWYuLjZkMGU5MjAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL1Bs
YXRmb3JtQmxhY2tCZXJyeS5jbWFrZQorKysgYi9Tb3VyY2UvV2ViQ29yZS9QbGF0Zm9ybUJsYWNr
QmVycnkuY21ha2UKQEAgLTQ0LDYgKzQ0LDcgQEAgbGlzdChBUFBFTkQgV2ViQ29yZV9TT1VSQ0VT
CiAgICAgcGxhdGZvcm0vbmV0d29yay9OZXR3b3JrU3RvcmFnZVNlc3Npb25TdHViLmNwcAogICAg
IHBsYXRmb3JtL25ldHdvcmsvUHJveHlTZXJ2ZXIuY3BwCiAgICAgcGxhdGZvcm0vbmV0d29yay9i
bGFja2JlcnJ5L0F1dG9maWxsQmFja2luZ1N0b3JlLmNwcAorICAgIHBsYXRmb3JtL25ldHdvcmsv
YmxhY2tiZXJyeS9CbG9iU3RyZWFtLmNwcAogICAgIHBsYXRmb3JtL25ldHdvcmsvYmxhY2tiZXJy
eS9ETlNCbGFja0JlcnJ5LmNwcAogICAgIHBsYXRmb3JtL25ldHdvcmsvYmxhY2tiZXJyeS9EZWZl
cnJlZERhdGEuY3BwCiAgICAgcGxhdGZvcm0vbmV0d29yay9ibGFja2JlcnJ5L05ldHdvcmtKb2Iu
Y3BwCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9uZXR3b3JrL2JsYWNrYmVy
cnkvQmxvYlN0cmVhbS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9uZXR3b3JrL2JsYWNr
YmVycnkvQmxvYlN0cmVhbS5jcHAKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4u
NzcyZWE4MAotLS0gL2Rldi9udWxsCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL25ldHdv
cmsvYmxhY2tiZXJyeS9CbG9iU3RyZWFtLmNwcApAQCAtMCwwICsxLDY1IEBACisvKgorICogQ29w
eXJpZ2h0IChDKSAyMDEzIFJlc2VhcmNoIEluIE1vdGlvbiBMaW1pdGVkLiBBbGwgcmlnaHRzIHJl
c2VydmVkLgorICoKKyAqIFRoaXMgbGlicmFyeSBpcyBmcmVlIHNvZnR3YXJlOyB5b3UgY2FuIHJl
ZGlzdHJpYnV0ZSBpdCBhbmQvb3IKKyAqIG1vZGlmeSBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhl
IEdOVSBMZXNzZXIgR2VuZXJhbCBQdWJsaWMKKyAqIExpY2Vuc2UgYXMgcHVibGlzaGVkIGJ5IHRo
ZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb247IGVpdGhlcgorICogdmVyc2lvbiAyIG9mIHRoZSBM
aWNlbnNlLCBvciAoYXQgeW91ciBvcHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLgorICoKKyAqIFRo
aXMgbGlicmFyeSBpcyBkaXN0cmlidXRlZCBpbiB0aGUgaG9wZSB0aGF0IGl0IHdpbGwgYmUgdXNl
ZnVsLAorICogYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxp
ZWQgd2FycmFudHkgb2YKKyAqIE1FUkNIQU5UQUJJTElUWSBvciBGSVRORVNTIEZPUiBBIFBBUlRJ
Q1VMQVIgUFVSUE9TRS4gIFNlZSB0aGUgR05VCisgKiBMZXNzZXIgR2VuZXJhbCBQdWJsaWMgTGlj
ZW5zZSBmb3IgbW9yZSBkZXRhaWxzLgorICoKKyAqIFlvdSBzaG91bGQgaGF2ZSByZWNlaXZlZCBh
IGNvcHkgb2YgdGhlIEdOVSBMZXNzZXIgR2VuZXJhbCBQdWJsaWMKKyAqIExpY2Vuc2UgYWxvbmcg
d2l0aCB0aGlzIGxpYnJhcnk7IGlmIG5vdCwgd3JpdGUgdG8gdGhlIEZyZWUgU29mdHdhcmUKKyAq
IEZvdW5kYXRpb24sIEluYy4sIDUxIEZyYW5rbGluIFN0cmVldCwgRmlmdGggRmxvb3IsIEJvc3Rv
biwgTUEgIDAyMTEwLTEzMDEgIFVTQQorICovCisKKyNpbmNsdWRlICJjb25maWcuaCIKKyNpbmNs
dWRlICJCbG9iU3RyZWFtLmgiCisKKyNpbmNsdWRlICJSZXNvdXJjZUhhbmRsZS5oIgorCit1c2lu
ZyBCbGFja0JlcnJ5OjpQbGF0Zm9ybTo6RmlsdGVyU3RyZWFtOworCituYW1lc3BhY2UgV2ViQ29y
ZSB7CisKK0Jsb2JTdHJlYW06OkJsb2JTdHJlYW0oY29uc3QgUmVzb3VyY2VSZXNwb25zZSYgcmVz
cG9uc2UsIFJlc291cmNlSGFuZGxlKiBoYW5kbGUpCisgICAgOiBGaWx0ZXJTdHJlYW0oKQorICAg
ICwgbV9yZXNwb25zZShyZXNwb25zZSkKK3sKKyAgICByZWdpc3RlclN0cmVhbUlkKCk7CisgICAg
aGFuZGxlLT5zZXRDbGllbnQodGhpcyk7Cit9CisKK0Jsb2JTdHJlYW06On5CbG9iU3RyZWFtKCkK
K3sKK30KKwordm9pZCBCbG9iU3RyZWFtOjpkaWRSZWNlaXZlRGF0YShSZXNvdXJjZUhhbmRsZSos
IGNvbnN0IGNoYXIqIGRhdGEsIGludCBsZW4sIGludCkKK3sKKyAgICBub3RpZnlEYXRhUmVjZWl2
ZWQoQmxhY2tCZXJyeTo6UGxhdGZvcm06OmNyZWF0ZU5ldHdvcmtCdWZmZXJCeVdyYXBwaW5nRGF0
YShkYXRhLCBsZW4pKTsKK30KKwordm9pZCBCbG9iU3RyZWFtOjpkaWRGaW5pc2hMb2FkaW5nKFJl
c291cmNlSGFuZGxlKiwgZG91YmxlKQoreworICAgIG5vdGlmeUNsb3NlKEZpbHRlclN0cmVhbTo6
U3RhdHVzU3VjY2Vzcyk7Cit9CisKK3ZvaWQgQmxvYlN0cmVhbTo6ZGlkRmFpbChSZXNvdXJjZUhh
bmRsZSosIGNvbnN0IFJlc291cmNlRXJyb3ImKQoreworICAgIG5vdGlmeUNsb3NlKEZpbHRlclN0
cmVhbTo6U3RhdHVzRXJyb3JJTyk7Cit9CisKK0JsYWNrQmVycnk6OlBsYXRmb3JtOjpTdHJpbmcg
QmxvYlN0cmVhbTo6dXJsKCkgY29uc3QKK3sKKyAgICByZXR1cm4gbV9yZXNwb25zZS51cmwoKS5z
dHJpbmcoKTsKK30KKworY29uc3QgQmxhY2tCZXJyeTo6UGxhdGZvcm06OlN0cmluZyBCbG9iU3Ry
ZWFtOjptaW1lVHlwZSgpIGNvbnN0Cit7CisgICAgcmV0dXJuIG1fcmVzcG9uc2UubWltZVR5cGUo
KTsKK30KKworfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNv
cmUvcGxhdGZvcm0vbmV0d29yay9ibGFja2JlcnJ5L0Jsb2JTdHJlYW0uaCBiL1NvdXJjZS9XZWJD
b3JlL3BsYXRmb3JtL25ldHdvcmsvYmxhY2tiZXJyeS9CbG9iU3RyZWFtLmgKbmV3IGZpbGUgbW9k
ZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uMmY4ZGVkNQotLS0gL2Rldi9udWxsCisrKyBiL1NvdXJj
ZS9XZWJDb3JlL3BsYXRmb3JtL25ldHdvcmsvYmxhY2tiZXJyeS9CbG9iU3RyZWFtLmgKQEAgLTAs
MCArMSw1MSBAQAorLyoKKyAqIENvcHlyaWdodCAoQykgMjAxMyBSZXNlYXJjaCBJbiBNb3Rpb24g
TGltaXRlZC4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAqCisgKiBUaGlzIGxpYnJhcnkgaXMgZnJl
ZSBzb2Z0d2FyZTsgeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29yCisgKiBtb2RpZnkgaXQg
dW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUgTGVzc2VyIEdlbmVyYWwgUHVibGljCisgKiBMaWNl
bnNlIGFzIHB1Ymxpc2hlZCBieSB0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uOyBlaXRoZXIK
KyAqIHZlcnNpb24gMiBvZiB0aGUgTGljZW5zZSwgb3IgKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0
ZXIgdmVyc2lvbi4KKyAqCisgKiBUaGlzIGxpYnJhcnkgaXMgZGlzdHJpYnV0ZWQgaW4gdGhlIGhv
cGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCwKKyAqIGJ1dCBXSVRIT1VUIEFOWSBXQVJSQU5UWTsg
d2l0aG91dCBldmVuIHRoZSBpbXBsaWVkIHdhcnJhbnR5IG9mCisgKiBNRVJDSEFOVEFCSUxJVFkg
b3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlIEdOVQorICogTGVz
c2VyIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KKyAqCisgKiBZb3Ug
c2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgTGVzc2VyIEdlbmVyYWwgUHVi
bGljCisgKiBMaWNlbnNlIGFsb25nIHdpdGggdGhpcyBsaWJyYXJ5OyBpZiBub3QsIHdyaXRlIHRv
IHRoZSBGcmVlIFNvZnR3YXJlCisgKiBGb3VuZGF0aW9uLCBJbmMuLCA1MSBGcmFua2xpbiBTdHJl
ZXQsIEZpZnRoIEZsb29yLCBCb3N0b24sIE1BICAwMjExMC0xMzAxICBVU0EKKyAqLworCisjaWZu
ZGVmIEJsb2JTdHJlYW1faAorI2RlZmluZSBCbG9iU3RyZWFtX2gKKworI2luY2x1ZGUgIlJlc291
cmNlSGFuZGxlQ2xpZW50LmgiCisjaW5jbHVkZSAiUmVzb3VyY2VSZXNwb25zZS5oIgorCisjaW5j
bHVkZSA8bmV0d29yay9GaWx0ZXJTdHJlYW0uaD4KKworbmFtZXNwYWNlIFdlYkNvcmUgeworCitj
bGFzcyBSZXNvdXJjZUhhbmRsZTsKKworY2xhc3MgQmxvYlN0cmVhbSA6IHB1YmxpYyBSZXNvdXJj
ZUhhbmRsZUNsaWVudCwgcHVibGljIEJsYWNrQmVycnk6OlBsYXRmb3JtOjpGaWx0ZXJTdHJlYW0g
eworcHVibGljOgorICAgIEJsb2JTdHJlYW0oY29uc3QgUmVzb3VyY2VSZXNwb25zZSYsIFJlc291
cmNlSGFuZGxlKik7CisgICAgdmlydHVhbCB+QmxvYlN0cmVhbSgpOworCisgICAgLy8gRnJvbSBj
bGFzcyBCbGFja0JlcnJ5OjpQbGF0Zm9ybTo6RmlsdGVyU3RyZWFtLgorICAgIHZpcnR1YWwgQmxh
Y2tCZXJyeTo6UGxhdGZvcm06OlN0cmluZyB1cmwoKSBjb25zdCBPVkVSUklERTsKKyAgICB2aXJ0
dWFsIGNvbnN0IEJsYWNrQmVycnk6OlBsYXRmb3JtOjpTdHJpbmcgbWltZVR5cGUoKSBjb25zdCBP
VkVSUklERTsKKworICAgIC8vIEZyb20gY2xhc3MgUmVzb3VyY2VIYW5kbGVDbGllbnQuCisgICAg
dmlydHVhbCB2b2lkIGRpZFJlY2VpdmVEYXRhKFJlc291cmNlSGFuZGxlKiwgY29uc3QgY2hhcios
IGludCwgaW50KSBPVkVSUklERTsKKyAgICB2aXJ0dWFsIHZvaWQgZGlkRmluaXNoTG9hZGluZyhS
ZXNvdXJjZUhhbmRsZSosIGRvdWJsZSkgT1ZFUlJJREU7CisgICAgdmlydHVhbCB2b2lkIGRpZEZh
aWwoUmVzb3VyY2VIYW5kbGUqLCBjb25zdCBSZXNvdXJjZUVycm9yJikgT1ZFUlJJREU7CisKK3By
aXZhdGU6CisgICAgUmVzb3VyY2VSZXNwb25zZSBtX3Jlc3BvbnNlOworfTsKKworfSAvLyBuYW1l
c3BhY2UgV2ViQ29yZQorCisjZW5kaWYgLy8gQmxvYlN0cmVhbV9oCmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViS2l0L2JsYWNrYmVycnkvQ2hhbmdlTG9nIGIvU291cmNlL1dlYktpdC9ibGFja2JlcnJ5
L0NoYW5nZUxvZwppbmRleCA2MWYyMTE0Li5hMzg4OTIyIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2Vi
S2l0L2JsYWNrYmVycnkvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9XZWJLaXQvYmxhY2tiZXJyeS9D
aGFuZ2VMb2cKQEAgLTEsMyArMSwxOSBAQAorMjAxMy0wNS0wOSAgTWFyeSBXdSAgPG1hcnkud3VA
dG9yY2htb2JpbGUuY29tLmNuPgorCisgICAgICAgIFtCbGFja0JlcnJ5XSBVbmFibGUgdG8gZG93
bmxvYWQgYmxvYiByZXNvdXJjZQorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93
X2J1Zy5jZ2k/aWQ9MTE1ODg4CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISku
CisKKyAgICAgICAgRm9yIGJsb2IgcmVzb3VyY2UgKGJsb2I6aHR0cC4uLi4pLCBpdCdzIG5vdCBz
dWl0YWJsZSB0byBnbyB0byBOZXR3b3JrU3RyZWFtCisgICAgICAgIHdoaWNoIGRvbid0IGhhbmRs
ZSAiYmxvYiIgcHJvdG9jb2wgYXQgYWxsLiBzaW5jZSBibG9iIGRhdGEgYWxyZWFkeSBoYW5kbGVk
CisgICAgICAgIGluIEJsb2JSZXNvdXJjZUhhbmRsZSwgc2ltcGx5IGdldCB0aGUgZGF0YSBvdXQg
dG8gZG93bmxvYWQgc3RyZWFtLgorCisgICAgICAgIFJJTSBidWcgMzMxMDg2LCBpbnRlcm5hbGx5
IHJldmlld2VkIGJ5IENoYXJsZXMgV2VpIGFuZCBMZW8gWWFuZy4KKworICAgICAgICAqIFdlYkNv
cmVTdXBwb3J0L0ZyYW1lTG9hZGVyQ2xpZW50QmxhY2tCZXJyeS5jcHA6CisgICAgICAgIChXZWJD
b3JlOjpGcmFtZUxvYWRlckNsaWVudEJsYWNrQmVycnk6OmNvbnZlcnRNYWluUmVzb3VyY2VMb2Fk
VG9Eb3dubG9hZCk6CisKIDIwMTMtMDUtMDkgIE1pa2UgRmVudG9uICA8bWlmZW50b25AcmltLmNv
bT4KIAogICAgICAgICBbQmxhY2tCZXJyeV0gU3R5bGUgdXBkYXRlcyByZXF1aXJlZCBiYXNlZCBv
biBuZXcgY2hlY2std2Via2l0LXN0eWxlCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L2JsYWNr
YmVycnkvV2ViQ29yZVN1cHBvcnQvRnJhbWVMb2FkZXJDbGllbnRCbGFja0JlcnJ5LmNwcCBiL1Nv
dXJjZS9XZWJLaXQvYmxhY2tiZXJyeS9XZWJDb3JlU3VwcG9ydC9GcmFtZUxvYWRlckNsaWVudEJs
YWNrQmVycnkuY3BwCmluZGV4IGY0NmUyZWEuLjQ0NmViMWQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJLaXQvYmxhY2tiZXJyeS9XZWJDb3JlU3VwcG9ydC9GcmFtZUxvYWRlckNsaWVudEJsYWNrQmVy
cnkuY3BwCisrKyBiL1NvdXJjZS9XZWJLaXQvYmxhY2tiZXJyeS9XZWJDb3JlU3VwcG9ydC9GcmFt
ZUxvYWRlckNsaWVudEJsYWNrQmVycnkuY3BwCkBAIC0yNCw2ICsyNCw3IEBACiAjaW5jbHVkZSAi
QmFja0ZvcndhcmRDb250cm9sbGVyLmgiCiAjaW5jbHVkZSAiQmFja2luZ1N0b3JlQ2xpZW50Lmgi
CiAjaW5jbHVkZSAiQmFja2luZ1N0b3JlX3AuaCIKKyNpbmNsdWRlICJCbG9iU3RyZWFtLmgiCiAj
aW5jbHVkZSAiQ3JlZGVudGlhbE1hbmFnZXIuaCIKICNpbmNsdWRlICJDcmVkZW50aWFsVHJhbnNm
b3JtRGF0YS5oIgogI2luY2x1ZGUgIkR1bXBSZW5kZXJUcmVlQ2xpZW50LmgiCkBAIC0xMjAyLDYg
KzEyMDMsOSBAQCB2b2lkIEZyYW1lTG9hZGVyQ2xpZW50QmxhY2tCZXJyeTo6Y29udmVydE1haW5S
ZXNvdXJjZUxvYWRUb0Rvd25sb2FkKERvY3VtZW50TG9hZAogewogICAgIEFTU0VSVChkb2N1bWVu
dExvYWRlcik7CiAgICAgUmVzb3VyY2VCdWZmZXIqIGJ1ZmYgPSBkb2N1bWVudExvYWRlci0+bWFp
blJlc291cmNlRGF0YSgpLmdldCgpOworICAgIEJsYWNrQmVycnk6OlBsYXRmb3JtOjpTdHJpbmcg
ZmlsZW5hbWUgPSByZXNwb25zZS5zdWdnZXN0ZWRGaWxlbmFtZSgpOworICAgIGlmIChmaWxlbmFt
ZS5lbXB0eSgpKQorICAgICAgICBmaWxlbmFtZSA9IHJlcXVlc3Quc3VnZ2VzdGVkU2F2ZU5hbWUo
KTsKIAogICAgIGlmICghYnVmZikgewogICAgICAgICAvLyBJZiBubyBjYWNoZWQsIGxpa2UgcG9s
aWN5RG93bmxvYWQgcmVzb3VyY2Ugd2hpY2ggZG9uJ3QgZ28gcmVuZGVyIGF0IGFsbCwganVzdCBk
aXJlY3QgdG8gZG93bmxvYWRTdHJlYW0uCkBAIC0xMjEyLDE0ICsxMjE2LDEyIEBAIHZvaWQgRnJh
bWVMb2FkZXJDbGllbnRCbGFja0JlcnJ5Ojpjb252ZXJ0TWFpblJlc291cmNlTG9hZFRvRG93bmxv
YWQoRG9jdW1lbnRMb2FkCiAgICAgICAgIC8vIGFzc29jaWF0ZWQgd2l0aCBhIFJlc291cmNlSGFu
ZGxlLiBGb3IgaW5zdGFuY2UsIEJsb2Igb2JqZWN0cwogICAgICAgICAvLyBoYXZlIHRoZWlyIG93
biBSZXNvdXJjZUhhbmRsZSBjbGFzcyB3aGljaCB3b24ndCBjYWxsIHN0YXJ0Sm9iCiAgICAgICAg
IC8vIHRvIGRvIHRoZSBwcm9wZXIgc2V0dXAuIERvIGl0IGhlcmUuCi0gICAgICAgIGlmICghc3Ry
ZWFtKSB7Ci0gICAgICAgICAgICBpbnQgcGxheWVySWQgPSBzdGF0aWNfY2FzdDxGcmFtZUxvYWRl
ckNsaWVudEJsYWNrQmVycnkqPihtX2ZyYW1lLT5sb2FkZXIoKS0+Y2xpZW50KCkpLT5wbGF5ZXJJ
ZCgpOwotICAgICAgICAgICAgTmV0d29ya01hbmFnZXI6Omluc3RhbmNlKCktPnN0YXJ0Sm9iKHBs
YXllcklkLCBoYW5kbGUsIHJlcXVlc3QsIG1fZnJhbWUsIGZhbHNlKTsKLSAgICAgICAgICAgIHN0
cmVhbSA9IE5ldHdvcmtNYW5hZ2VyOjppbnN0YW5jZSgpLT5zdHJlYW1Gb3JIYW5kbGUoaGFuZGxl
KTsKLSAgICAgICAgfQorICAgICAgICBpZiAoIXN0cmVhbSkKKyAgICAgICAgICAgIHN0cmVhbSA9
IG5ldyBCbG9iU3RyZWFtKHJlc3BvbnNlLCBoYW5kbGUpOworCiAgICAgICAgIEFTU0VSVChzdHJl
YW0pOwogCi0gICAgICAgIG1fd2ViUGFnZVByaXZhdGUtPm1fY2xpZW50LT5kb3dubG9hZFJlcXVl
c3RlZChzdHJlYW0sIHJlc3BvbnNlLnN1Z2dlc3RlZEZpbGVuYW1lKCkpOworICAgICAgICBtX3dl
YlBhZ2VQcml2YXRlLT5tX2NsaWVudC0+ZG93bmxvYWRSZXF1ZXN0ZWQoc3RyZWFtLCBmaWxlbmFt
ZSk7CiAgICAgICAgIHJldHVybjsKICAgICB9CiAKQEAgLTEyMzEsMTAgKzEyMzMsMTAgQEAgdm9p
ZCBGcmFtZUxvYWRlckNsaWVudEJsYWNrQmVycnk6OmNvbnZlcnRNYWluUmVzb3VyY2VMb2FkVG9E
b3dubG9hZChEb2N1bWVudExvYWQKICAgICBTVEFUSUNfTE9DQUxfU1RSSU5HKHNfYmFzZTY0LCAi
O2Jhc2U2NCwiKTsKICAgICB1cmwuYXBwZW5kKHNfYmFzZTY0KTsKICAgICB1cmwuYXBwZW5kKEJs
YWNrQmVycnk6OlBsYXRmb3JtOjpTdHJpbmc6OmZyb21VdGY4KGJhc2U2NEVuY29kZShDU3RyaW5n
KGJ1ZmYtPmRhdGEoKSwgYnVmZi0+c2l6ZSgpKSkudXRmOCgpLmRhdGEoKSkpOwotICAgIE5ldHdv
cmtSZXF1ZXN0IHJlcTsKLSAgICByZXEuc2V0UmVxdWVzdFVybCh1cmwuc3RyaW5nKCksIEJsYWNr
QmVycnk6OlBsYXRmb3JtOjpTdHJpbmc6OmZyb21Bc2NpaSgiR0VUIikpOwotICAgIEJsYWNrQmVy
cnk6OlBsYXRmb3JtOjpEYXRhU3RyZWFtICpzdHJlYW0gPSBuZXcgQmxhY2tCZXJyeTo6UGxhdGZv
cm06OkRhdGFTdHJlYW0ocmVxKTsKLSAgICBtX3dlYlBhZ2VQcml2YXRlLT5tX2NsaWVudC0+ZG93
bmxvYWRSZXF1ZXN0ZWQoc3RyZWFtLCByZXNwb25zZS5zdWdnZXN0ZWRGaWxlbmFtZSgpKTsKKyAg
ICBOZXR3b3JrUmVxdWVzdCBuZXRSZXF1ZXN0OworICAgIG5ldFJlcXVlc3Quc2V0UmVxdWVzdFVy
bCh1cmwuc3RyaW5nKCkpOworICAgIEJsYWNrQmVycnk6OlBsYXRmb3JtOjpEYXRhU3RyZWFtICpz
dHJlYW0gPSBuZXcgQmxhY2tCZXJyeTo6UGxhdGZvcm06OkRhdGFTdHJlYW0obmV0UmVxdWVzdCk7
CisgICAgbV93ZWJQYWdlUHJpdmF0ZS0+bV9jbGllbnQtPmRvd25sb2FkUmVxdWVzdGVkKHN0cmVh
bSwgZmlsZW5hbWUpOwogICAgIHN0cmVhbS0+c3RyZWFtT3BlbigpOwogfQogCi0tIAoxLjcuOS41
Cgo=
</data>
<flag name="review"
          id="223171"
          type_id="1"
          status="+"
          setter="benjamin"
    />
    <flag name="commit-queue"
          id="223172"
          type_id="3"
          status="-"
          setter="commit-queue"
    />
          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>201912</attachid>
            <date>2013-05-15 19:46:53 -0700</date>
            <delta_ts>2013-05-16 17:11:24 -0700</delta_ts>
            <desc>rebase the patch</desc>
            <filename>webkit.patch</filename>
            <type>text/plain</type>
            <size>10731</size>
            <attacher name="Mary Wu">mawu</attacher>
            
              <data encoding="base64">RnJvbSBkYjE5NTEzMDEyN2EzYzdmMjg0NzQxMzQ5ZDY0OTU1NWMzODNkOWEwIE1vbiBTZXAgMTcg
MDA6MDA6MDAgMjAwMQpGcm9tOiBNYXJ5IFd1IDxtYXJ5Lnd1QHRvcmNobW9iaWxlLmNvbS5jbj4K
RGF0ZTogRnJpLCAxMCBNYXkgMjAxMyAxNTowMTowMSArMDgwMApTdWJqZWN0OiBbUEFUQ0hdIGJs
b2IgZG93bmxvYWQuCgotLS0KIFNvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZyAgICAgICAgICAgICAg
ICAgICAgICAgICAgIHwgICAyNCArKysrKysrKwogU291cmNlL1dlYkNvcmUvUGxhdGZvcm1CbGFj
a0JlcnJ5LmNtYWtlICAgICAgICAgICAgfCAgICAxICsKIC4uLi9wbGF0Zm9ybS9uZXR3b3JrL2Js
YWNrYmVycnkvQmxvYlN0cmVhbS5jcHAgICAgIHwgICA2NSArKysrKysrKysrKysrKysrKysrKwog
Li4uL3BsYXRmb3JtL25ldHdvcmsvYmxhY2tiZXJyeS9CbG9iU3RyZWFtLmggICAgICAgfCAgIDUx
ICsrKysrKysrKysrKysrKwogU291cmNlL1dlYktpdC9ibGFja2JlcnJ5L0NoYW5nZUxvZyAgICAg
ICAgICAgICAgICAgfCAgIDE2ICsrKysrCiAuLi4vV2ViQ29yZVN1cHBvcnQvRnJhbWVMb2FkZXJD
bGllbnRCbGFja0JlcnJ5LmNwcCB8ICAgMjIgKysrKy0tLQogNiBmaWxlcyBjaGFuZ2VkLCAxNjkg
aW5zZXJ0aW9ucygrKSwgMTAgZGVsZXRpb25zKC0pCiBjcmVhdGUgbW9kZSAxMDA2NDQgU291cmNl
L1dlYkNvcmUvcGxhdGZvcm0vbmV0d29yay9ibGFja2JlcnJ5L0Jsb2JTdHJlYW0uY3BwCiBjcmVh
dGUgbW9kZSAxMDA2NDQgU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbmV0d29yay9ibGFja2JlcnJ5
L0Jsb2JTdHJlYW0uaAoKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwppbmRleCBhYjE3ZGU4Li5hOTQzZDYxIDEwMDY0NAotLS0g
YS9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9n
CkBAIC0xLDMgKzEsMjcgQEAKKzIwMTMtMDUtMDkgIE1hcnkgV3UgIDxtYXJ5Lnd1QHRvcmNobW9i
aWxlLmNvbS5jbj4KKworICAgICAgICBbQmxhY2tCZXJyeV0gVW5hYmxlIHRvIGRvd25sb2FkIGJs
b2IgcmVzb3VyY2UKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dp
P2lkPTExNTg4OAorCisgICAgICAgIFJldmlld2VkIGJ5IEJlbmphbWluIFBvdWxhaW4uCisKKyAg
ICAgICAgQWRkIEJsb2JTdHJlYW0gdG8gaGFuZGxlIG92ZXIgYmxvYiBkYXRhIGZyb20gQmxvYlJl
c291cmNlSGFuZGxlIHRvIGRvd25sb2FkIHN0cmVhbS4KKyAgICAgICAgUklNIGJ1ZyAzMzEwODYs
IGludGVybmFsbHkgcmV2aWV3ZWQgYnkgQ2hhcmxlcyBXZWkgYW5kIExlbyBZYW5nLgorCisgICAg
ICAgICogUGxhdGZvcm1CbGFja0JlcnJ5LmNtYWtlOgorICAgICAgICAqIHBsYXRmb3JtL25ldHdv
cmsvYmxhY2tiZXJyeS9CbG9iU3RyZWFtLmNwcDogQWRkZWQuCisgICAgICAgIChXZWJDb3JlKToK
KyAgICAgICAgKFdlYkNvcmU6OkJsb2JTdHJlYW06OkJsb2JTdHJlYW0pOgorICAgICAgICAoV2Vi
Q29yZTo6QmxvYlN0cmVhbTo6fkJsb2JTdHJlYW0pOgorICAgICAgICAoV2ViQ29yZTo6QmxvYlN0
cmVhbTo6ZGlkUmVjZWl2ZURhdGEpOgorICAgICAgICAoV2ViQ29yZTo6QmxvYlN0cmVhbTo6ZGlk
RmluaXNoTG9hZGluZyk6CisgICAgICAgIChXZWJDb3JlOjpCbG9iU3RyZWFtOjpkaWRGYWlsKToK
KyAgICAgICAgKFdlYkNvcmU6OkJsb2JTdHJlYW06OnVybCk6CisgICAgICAgIChXZWJDb3JlOjpC
bG9iU3RyZWFtOjptaW1lVHlwZSk6CisgICAgICAgICogcGxhdGZvcm0vbmV0d29yay9ibGFja2Jl
cnJ5L0Jsb2JTdHJlYW0uaDogQWRkZWQuCisgICAgICAgIChXZWJDb3JlKToKKyAgICAgICAgKEJs
b2JTdHJlYW0pOgorCiAyMDEzLTA1LTE1ICBUaW0gSG9ydG9uICA8dGltb3RoeV9ob3J0b25AYXBw
bGUuY29tPgogCiAgICAgICAgIG1ha2VSR0JBRnJvbU5TQ29sb3IgdGhyb3dzIGFuIGV4Y2VwdGlv
biBpZiBnaXZlbiBhIGNvbG9yIGluIGEgZ3JleXNjYWxlIGNvbG9yc3BhY2UKZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJDb3JlL1BsYXRmb3JtQmxhY2tCZXJyeS5jbWFrZSBiL1NvdXJjZS9XZWJDb3Jl
L1BsYXRmb3JtQmxhY2tCZXJyeS5jbWFrZQppbmRleCA0ODZkYzMxLi43OWU3OWY4IDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViQ29yZS9QbGF0Zm9ybUJsYWNrQmVycnkuY21ha2UKKysrIGIvU291cmNl
L1dlYkNvcmUvUGxhdGZvcm1CbGFja0JlcnJ5LmNtYWtlCkBAIC00NCw2ICs0NCw3IEBAIGxpc3Qo
QVBQRU5EIFdlYkNvcmVfU09VUkNFUwogICAgIHBsYXRmb3JtL25ldHdvcmsvTmV0d29ya1N0b3Jh
Z2VTZXNzaW9uU3R1Yi5jcHAKICAgICBwbGF0Zm9ybS9uZXR3b3JrL1Byb3h5U2VydmVyLmNwcAog
ICAgIHBsYXRmb3JtL25ldHdvcmsvYmxhY2tiZXJyeS9BdXRvZmlsbEJhY2tpbmdTdG9yZS5jcHAK
KyAgICBwbGF0Zm9ybS9uZXR3b3JrL2JsYWNrYmVycnkvQmxvYlN0cmVhbS5jcHAKICAgICBwbGF0
Zm9ybS9uZXR3b3JrL2JsYWNrYmVycnkvQ29va2llSmFyQmxhY2tCZXJyeS5jcHAKICAgICBwbGF0
Zm9ybS9uZXR3b3JrL2JsYWNrYmVycnkvRE5TQmxhY2tCZXJyeS5jcHAKICAgICBwbGF0Zm9ybS9u
ZXR3b3JrL2JsYWNrYmVycnkvRGVmZXJyZWREYXRhLmNwcApkaWZmIC0tZ2l0IGEvU291cmNlL1dl
YkNvcmUvcGxhdGZvcm0vbmV0d29yay9ibGFja2JlcnJ5L0Jsb2JTdHJlYW0uY3BwIGIvU291cmNl
L1dlYkNvcmUvcGxhdGZvcm0vbmV0d29yay9ibGFja2JlcnJ5L0Jsb2JTdHJlYW0uY3BwCm5ldyBm
aWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjc3MmVhODAKLS0tIC9kZXYvbnVsbAorKysg
Yi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9uZXR3b3JrL2JsYWNrYmVycnkvQmxvYlN0cmVhbS5j
cHAKQEAgLTAsMCArMSw2NSBAQAorLyoKKyAqIENvcHlyaWdodCAoQykgMjAxMyBSZXNlYXJjaCBJ
biBNb3Rpb24gTGltaXRlZC4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAqCisgKiBUaGlzIGxpYnJh
cnkgaXMgZnJlZSBzb2Z0d2FyZTsgeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29yCisgKiBt
b2RpZnkgaXQgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUgTGVzc2VyIEdlbmVyYWwgUHVibGlj
CisgKiBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieSB0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9u
OyBlaXRoZXIKKyAqIHZlcnNpb24gMiBvZiB0aGUgTGljZW5zZSwgb3IgKGF0IHlvdXIgb3B0aW9u
KSBhbnkgbGF0ZXIgdmVyc2lvbi4KKyAqCisgKiBUaGlzIGxpYnJhcnkgaXMgZGlzdHJpYnV0ZWQg
aW4gdGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCwKKyAqIGJ1dCBXSVRIT1VUIEFOWSBX
QVJSQU5UWTsgd2l0aG91dCBldmVuIHRoZSBpbXBsaWVkIHdhcnJhbnR5IG9mCisgKiBNRVJDSEFO
VEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlIEdO
VQorICogTGVzc2VyIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KKyAq
CisgKiBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgTGVzc2VyIEdl
bmVyYWwgUHVibGljCisgKiBMaWNlbnNlIGFsb25nIHdpdGggdGhpcyBsaWJyYXJ5OyBpZiBub3Qs
IHdyaXRlIHRvIHRoZSBGcmVlIFNvZnR3YXJlCisgKiBGb3VuZGF0aW9uLCBJbmMuLCA1MSBGcmFu
a2xpbiBTdHJlZXQsIEZpZnRoIEZsb29yLCBCb3N0b24sIE1BICAwMjExMC0xMzAxICBVU0EKKyAq
LworCisjaW5jbHVkZSAiY29uZmlnLmgiCisjaW5jbHVkZSAiQmxvYlN0cmVhbS5oIgorCisjaW5j
bHVkZSAiUmVzb3VyY2VIYW5kbGUuaCIKKwordXNpbmcgQmxhY2tCZXJyeTo6UGxhdGZvcm06OkZp
bHRlclN0cmVhbTsKKworbmFtZXNwYWNlIFdlYkNvcmUgeworCitCbG9iU3RyZWFtOjpCbG9iU3Ry
ZWFtKGNvbnN0IFJlc291cmNlUmVzcG9uc2UmIHJlc3BvbnNlLCBSZXNvdXJjZUhhbmRsZSogaGFu
ZGxlKQorICAgIDogRmlsdGVyU3RyZWFtKCkKKyAgICAsIG1fcmVzcG9uc2UocmVzcG9uc2UpCit7
CisgICAgcmVnaXN0ZXJTdHJlYW1JZCgpOworICAgIGhhbmRsZS0+c2V0Q2xpZW50KHRoaXMpOwor
fQorCitCbG9iU3RyZWFtOjp+QmxvYlN0cmVhbSgpCit7Cit9CisKK3ZvaWQgQmxvYlN0cmVhbTo6
ZGlkUmVjZWl2ZURhdGEoUmVzb3VyY2VIYW5kbGUqLCBjb25zdCBjaGFyKiBkYXRhLCBpbnQgbGVu
LCBpbnQpCit7CisgICAgbm90aWZ5RGF0YVJlY2VpdmVkKEJsYWNrQmVycnk6OlBsYXRmb3JtOjpj
cmVhdGVOZXR3b3JrQnVmZmVyQnlXcmFwcGluZ0RhdGEoZGF0YSwgbGVuKSk7Cit9CisKK3ZvaWQg
QmxvYlN0cmVhbTo6ZGlkRmluaXNoTG9hZGluZyhSZXNvdXJjZUhhbmRsZSosIGRvdWJsZSkKK3sK
KyAgICBub3RpZnlDbG9zZShGaWx0ZXJTdHJlYW06OlN0YXR1c1N1Y2Nlc3MpOworfQorCit2b2lk
IEJsb2JTdHJlYW06OmRpZEZhaWwoUmVzb3VyY2VIYW5kbGUqLCBjb25zdCBSZXNvdXJjZUVycm9y
JikKK3sKKyAgICBub3RpZnlDbG9zZShGaWx0ZXJTdHJlYW06OlN0YXR1c0Vycm9ySU8pOworfQor
CitCbGFja0JlcnJ5OjpQbGF0Zm9ybTo6U3RyaW5nIEJsb2JTdHJlYW06OnVybCgpIGNvbnN0Cit7
CisgICAgcmV0dXJuIG1fcmVzcG9uc2UudXJsKCkuc3RyaW5nKCk7Cit9CisKK2NvbnN0IEJsYWNr
QmVycnk6OlBsYXRmb3JtOjpTdHJpbmcgQmxvYlN0cmVhbTo6bWltZVR5cGUoKSBjb25zdAorewor
ICAgIHJldHVybiBtX3Jlc3BvbnNlLm1pbWVUeXBlKCk7Cit9CisKK30gLy8gbmFtZXNwYWNlIFdl
YkNvcmUKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL25ldHdvcmsvYmxhY2ti
ZXJyeS9CbG9iU3RyZWFtLmggYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9uZXR3b3JrL2JsYWNr
YmVycnkvQmxvYlN0cmVhbS5oCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjJm
OGRlZDUKLS0tIC9kZXYvbnVsbAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9uZXR3b3Jr
L2JsYWNrYmVycnkvQmxvYlN0cmVhbS5oCkBAIC0wLDAgKzEsNTEgQEAKKy8qCisgKiBDb3B5cmln
aHQgKEMpIDIwMTMgUmVzZWFyY2ggSW4gTW90aW9uIExpbWl0ZWQuIEFsbCByaWdodHMgcmVzZXJ2
ZWQuCisgKgorICogVGhpcyBsaWJyYXJ5IGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0
cmlidXRlIGl0IGFuZC9vcgorICogbW9kaWZ5IGl0IHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05V
IExlc3NlciBHZW5lcmFsIFB1YmxpYworICogTGljZW5zZSBhcyBwdWJsaXNoZWQgYnkgdGhlIEZy
ZWUgU29mdHdhcmUgRm91bmRhdGlvbjsgZWl0aGVyCisgKiB2ZXJzaW9uIDIgb2YgdGhlIExpY2Vu
c2UsIG9yIChhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uCisgKgorICogVGhpcyBs
aWJyYXJ5IGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWws
CisgKiBidXQgV0lUSE9VVCBBTlkgV0FSUkFOVFk7IHdpdGhvdXQgZXZlbiB0aGUgaW1wbGllZCB3
YXJyYW50eSBvZgorICogTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxB
UiBQVVJQT1NFLiAgU2VlIHRoZSBHTlUKKyAqIExlc3NlciBHZW5lcmFsIFB1YmxpYyBMaWNlbnNl
IGZvciBtb3JlIGRldGFpbHMuCisgKgorICogWW91IHNob3VsZCBoYXZlIHJlY2VpdmVkIGEgY29w
eSBvZiB0aGUgR05VIExlc3NlciBHZW5lcmFsIFB1YmxpYworICogTGljZW5zZSBhbG9uZyB3aXRo
IHRoaXMgbGlicmFyeTsgaWYgbm90LCB3cml0ZSB0byB0aGUgRnJlZSBTb2Z0d2FyZQorICogRm91
bmRhdGlvbiwgSW5jLiwgNTEgRnJhbmtsaW4gU3RyZWV0LCBGaWZ0aCBGbG9vciwgQm9zdG9uLCBN
QSAgMDIxMTAtMTMwMSAgVVNBCisgKi8KKworI2lmbmRlZiBCbG9iU3RyZWFtX2gKKyNkZWZpbmUg
QmxvYlN0cmVhbV9oCisKKyNpbmNsdWRlICJSZXNvdXJjZUhhbmRsZUNsaWVudC5oIgorI2luY2x1
ZGUgIlJlc291cmNlUmVzcG9uc2UuaCIKKworI2luY2x1ZGUgPG5ldHdvcmsvRmlsdGVyU3RyZWFt
Lmg+CisKK25hbWVzcGFjZSBXZWJDb3JlIHsKKworY2xhc3MgUmVzb3VyY2VIYW5kbGU7CisKK2Ns
YXNzIEJsb2JTdHJlYW0gOiBwdWJsaWMgUmVzb3VyY2VIYW5kbGVDbGllbnQsIHB1YmxpYyBCbGFj
a0JlcnJ5OjpQbGF0Zm9ybTo6RmlsdGVyU3RyZWFtIHsKK3B1YmxpYzoKKyAgICBCbG9iU3RyZWFt
KGNvbnN0IFJlc291cmNlUmVzcG9uc2UmLCBSZXNvdXJjZUhhbmRsZSopOworICAgIHZpcnR1YWwg
fkJsb2JTdHJlYW0oKTsKKworICAgIC8vIEZyb20gY2xhc3MgQmxhY2tCZXJyeTo6UGxhdGZvcm06
OkZpbHRlclN0cmVhbS4KKyAgICB2aXJ0dWFsIEJsYWNrQmVycnk6OlBsYXRmb3JtOjpTdHJpbmcg
dXJsKCkgY29uc3QgT1ZFUlJJREU7CisgICAgdmlydHVhbCBjb25zdCBCbGFja0JlcnJ5OjpQbGF0
Zm9ybTo6U3RyaW5nIG1pbWVUeXBlKCkgY29uc3QgT1ZFUlJJREU7CisKKyAgICAvLyBGcm9tIGNs
YXNzIFJlc291cmNlSGFuZGxlQ2xpZW50LgorICAgIHZpcnR1YWwgdm9pZCBkaWRSZWNlaXZlRGF0
YShSZXNvdXJjZUhhbmRsZSosIGNvbnN0IGNoYXIqLCBpbnQsIGludCkgT1ZFUlJJREU7CisgICAg
dmlydHVhbCB2b2lkIGRpZEZpbmlzaExvYWRpbmcoUmVzb3VyY2VIYW5kbGUqLCBkb3VibGUpIE9W
RVJSSURFOworICAgIHZpcnR1YWwgdm9pZCBkaWRGYWlsKFJlc291cmNlSGFuZGxlKiwgY29uc3Qg
UmVzb3VyY2VFcnJvciYpIE9WRVJSSURFOworCitwcml2YXRlOgorICAgIFJlc291cmNlUmVzcG9u
c2UgbV9yZXNwb25zZTsKK307CisKK30gLy8gbmFtZXNwYWNlIFdlYkNvcmUKKworI2VuZGlmIC8v
IEJsb2JTdHJlYW1faApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9ibGFja2JlcnJ5L0NoYW5n
ZUxvZyBiL1NvdXJjZS9XZWJLaXQvYmxhY2tiZXJyeS9DaGFuZ2VMb2cKaW5kZXggYjQ1NDUzOC4u
M2Q5M2VmYSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9ibGFja2JlcnJ5L0NoYW5nZUxvZwor
KysgYi9Tb3VyY2UvV2ViS2l0L2JsYWNrYmVycnkvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTkgQEAK
KzIwMTMtMDUtMDkgIE1hcnkgV3UgIDxtYXJ5Lnd1QHRvcmNobW9iaWxlLmNvbS5jbj4KKworICAg
ICAgICBbQmxhY2tCZXJyeV0gVW5hYmxlIHRvIGRvd25sb2FkIGJsb2IgcmVzb3VyY2UKKyAgICAg
ICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTExNTg4OAorCisgICAg
ICAgIFJldmlld2VkIGJ5IEJlbmphbWluIFBvdWxhaW4uCisKKyAgICAgICAgRm9yIGJsb2IgcmVz
b3VyY2UgKGJsb2I6aHR0cC4uLi4pLCBpdCdzIG5vdCBzdWl0YWJsZSB0byBnbyB0byBOZXR3b3Jr
U3RyZWFtCisgICAgICAgIHdoaWNoIGRvbid0IGhhbmRsZSAiYmxvYiIgcHJvdG9jb2wgYXQgYWxs
LiBzaW5jZSBibG9iIGRhdGEgYWxyZWFkeSBoYW5kbGVkCisgICAgICAgIGluIEJsb2JSZXNvdXJj
ZUhhbmRsZSwgc2ltcGx5IGdldCB0aGUgZGF0YSBvdXQgdG8gZG93bmxvYWQgc3RyZWFtLgorCisg
ICAgICAgIFJJTSBidWcgMzMxMDg2LCBpbnRlcm5hbGx5IHJldmlld2VkIGJ5IENoYXJsZXMgV2Vp
IGFuZCBMZW8gWWFuZy4KKworICAgICAgICAqIFdlYkNvcmVTdXBwb3J0L0ZyYW1lTG9hZGVyQ2xp
ZW50QmxhY2tCZXJyeS5jcHA6CisgICAgICAgIChXZWJDb3JlOjpGcmFtZUxvYWRlckNsaWVudEJs
YWNrQmVycnk6OmNvbnZlcnRNYWluUmVzb3VyY2VMb2FkVG9Eb3dubG9hZCk6CisKIDIwMTMtMDUt
MTMgIEFuZGVycyBDYXJsc3NvbiAgPGFuZGVyc2NhQGFwcGxlLmNvbT4KIAogICAgICAgICBGcmFt
ZTo6ZWRpdG9yKCkgc2hvdWxkIHJldHVybiBhIHJlZmVyZW5jZQpkaWZmIC0tZ2l0IGEvU291cmNl
L1dlYktpdC9ibGFja2JlcnJ5L1dlYkNvcmVTdXBwb3J0L0ZyYW1lTG9hZGVyQ2xpZW50QmxhY2tC
ZXJyeS5jcHAgYi9Tb3VyY2UvV2ViS2l0L2JsYWNrYmVycnkvV2ViQ29yZVN1cHBvcnQvRnJhbWVM
b2FkZXJDbGllbnRCbGFja0JlcnJ5LmNwcAppbmRleCBmNDZlMmVhLi40NDZlYjFkIDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViS2l0L2JsYWNrYmVycnkvV2ViQ29yZVN1cHBvcnQvRnJhbWVMb2FkZXJD
bGllbnRCbGFja0JlcnJ5LmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0L2JsYWNrYmVycnkvV2ViQ29y
ZVN1cHBvcnQvRnJhbWVMb2FkZXJDbGllbnRCbGFja0JlcnJ5LmNwcApAQCAtMjQsNiArMjQsNyBA
QAogI2luY2x1ZGUgIkJhY2tGb3J3YXJkQ29udHJvbGxlci5oIgogI2luY2x1ZGUgIkJhY2tpbmdT
dG9yZUNsaWVudC5oIgogI2luY2x1ZGUgIkJhY2tpbmdTdG9yZV9wLmgiCisjaW5jbHVkZSAiQmxv
YlN0cmVhbS5oIgogI2luY2x1ZGUgIkNyZWRlbnRpYWxNYW5hZ2VyLmgiCiAjaW5jbHVkZSAiQ3Jl
ZGVudGlhbFRyYW5zZm9ybURhdGEuaCIKICNpbmNsdWRlICJEdW1wUmVuZGVyVHJlZUNsaWVudC5o
IgpAQCAtMTIwMiw2ICsxMjAzLDkgQEAgdm9pZCBGcmFtZUxvYWRlckNsaWVudEJsYWNrQmVycnk6
OmNvbnZlcnRNYWluUmVzb3VyY2VMb2FkVG9Eb3dubG9hZChEb2N1bWVudExvYWQKIHsKICAgICBB
U1NFUlQoZG9jdW1lbnRMb2FkZXIpOwogICAgIFJlc291cmNlQnVmZmVyKiBidWZmID0gZG9jdW1l
bnRMb2FkZXItPm1haW5SZXNvdXJjZURhdGEoKS5nZXQoKTsKKyAgICBCbGFja0JlcnJ5OjpQbGF0
Zm9ybTo6U3RyaW5nIGZpbGVuYW1lID0gcmVzcG9uc2Uuc3VnZ2VzdGVkRmlsZW5hbWUoKTsKKyAg
ICBpZiAoZmlsZW5hbWUuZW1wdHkoKSkKKyAgICAgICAgZmlsZW5hbWUgPSByZXF1ZXN0LnN1Z2dl
c3RlZFNhdmVOYW1lKCk7CiAKICAgICBpZiAoIWJ1ZmYpIHsKICAgICAgICAgLy8gSWYgbm8gY2Fj
aGVkLCBsaWtlIHBvbGljeURvd25sb2FkIHJlc291cmNlIHdoaWNoIGRvbid0IGdvIHJlbmRlciBh
dCBhbGwsIGp1c3QgZGlyZWN0IHRvIGRvd25sb2FkU3RyZWFtLgpAQCAtMTIxMiwxNCArMTIxNiwx
MiBAQCB2b2lkIEZyYW1lTG9hZGVyQ2xpZW50QmxhY2tCZXJyeTo6Y29udmVydE1haW5SZXNvdXJj
ZUxvYWRUb0Rvd25sb2FkKERvY3VtZW50TG9hZAogICAgICAgICAvLyBhc3NvY2lhdGVkIHdpdGgg
YSBSZXNvdXJjZUhhbmRsZS4gRm9yIGluc3RhbmNlLCBCbG9iIG9iamVjdHMKICAgICAgICAgLy8g
aGF2ZSB0aGVpciBvd24gUmVzb3VyY2VIYW5kbGUgY2xhc3Mgd2hpY2ggd29uJ3QgY2FsbCBzdGFy
dEpvYgogICAgICAgICAvLyB0byBkbyB0aGUgcHJvcGVyIHNldHVwLiBEbyBpdCBoZXJlLgotICAg
ICAgICBpZiAoIXN0cmVhbSkgewotICAgICAgICAgICAgaW50IHBsYXllcklkID0gc3RhdGljX2Nh
c3Q8RnJhbWVMb2FkZXJDbGllbnRCbGFja0JlcnJ5Kj4obV9mcmFtZS0+bG9hZGVyKCktPmNsaWVu
dCgpKS0+cGxheWVySWQoKTsKLSAgICAgICAgICAgIE5ldHdvcmtNYW5hZ2VyOjppbnN0YW5jZSgp
LT5zdGFydEpvYihwbGF5ZXJJZCwgaGFuZGxlLCByZXF1ZXN0LCBtX2ZyYW1lLCBmYWxzZSk7Ci0g
ICAgICAgICAgICBzdHJlYW0gPSBOZXR3b3JrTWFuYWdlcjo6aW5zdGFuY2UoKS0+c3RyZWFtRm9y
SGFuZGxlKGhhbmRsZSk7Ci0gICAgICAgIH0KKyAgICAgICAgaWYgKCFzdHJlYW0pCisgICAgICAg
ICAgICBzdHJlYW0gPSBuZXcgQmxvYlN0cmVhbShyZXNwb25zZSwgaGFuZGxlKTsKKwogICAgICAg
ICBBU1NFUlQoc3RyZWFtKTsKIAotICAgICAgICBtX3dlYlBhZ2VQcml2YXRlLT5tX2NsaWVudC0+
ZG93bmxvYWRSZXF1ZXN0ZWQoc3RyZWFtLCByZXNwb25zZS5zdWdnZXN0ZWRGaWxlbmFtZSgpKTsK
KyAgICAgICAgbV93ZWJQYWdlUHJpdmF0ZS0+bV9jbGllbnQtPmRvd25sb2FkUmVxdWVzdGVkKHN0
cmVhbSwgZmlsZW5hbWUpOwogICAgICAgICByZXR1cm47CiAgICAgfQogCkBAIC0xMjMxLDEwICsx
MjMzLDEwIEBAIHZvaWQgRnJhbWVMb2FkZXJDbGllbnRCbGFja0JlcnJ5Ojpjb252ZXJ0TWFpblJl
c291cmNlTG9hZFRvRG93bmxvYWQoRG9jdW1lbnRMb2FkCiAgICAgU1RBVElDX0xPQ0FMX1NUUklO
RyhzX2Jhc2U2NCwgIjtiYXNlNjQsIik7CiAgICAgdXJsLmFwcGVuZChzX2Jhc2U2NCk7CiAgICAg
dXJsLmFwcGVuZChCbGFja0JlcnJ5OjpQbGF0Zm9ybTo6U3RyaW5nOjpmcm9tVXRmOChiYXNlNjRF
bmNvZGUoQ1N0cmluZyhidWZmLT5kYXRhKCksIGJ1ZmYtPnNpemUoKSkpLnV0ZjgoKS5kYXRhKCkp
KTsKLSAgICBOZXR3b3JrUmVxdWVzdCByZXE7Ci0gICAgcmVxLnNldFJlcXVlc3RVcmwodXJsLnN0
cmluZygpLCBCbGFja0JlcnJ5OjpQbGF0Zm9ybTo6U3RyaW5nOjpmcm9tQXNjaWkoIkdFVCIpKTsK
LSAgICBCbGFja0JlcnJ5OjpQbGF0Zm9ybTo6RGF0YVN0cmVhbSAqc3RyZWFtID0gbmV3IEJsYWNr
QmVycnk6OlBsYXRmb3JtOjpEYXRhU3RyZWFtKHJlcSk7Ci0gICAgbV93ZWJQYWdlUHJpdmF0ZS0+
bV9jbGllbnQtPmRvd25sb2FkUmVxdWVzdGVkKHN0cmVhbSwgcmVzcG9uc2Uuc3VnZ2VzdGVkRmls
ZW5hbWUoKSk7CisgICAgTmV0d29ya1JlcXVlc3QgbmV0UmVxdWVzdDsKKyAgICBuZXRSZXF1ZXN0
LnNldFJlcXVlc3RVcmwodXJsLnN0cmluZygpKTsKKyAgICBCbGFja0JlcnJ5OjpQbGF0Zm9ybTo6
RGF0YVN0cmVhbSAqc3RyZWFtID0gbmV3IEJsYWNrQmVycnk6OlBsYXRmb3JtOjpEYXRhU3RyZWFt
KG5ldFJlcXVlc3QpOworICAgIG1fd2ViUGFnZVByaXZhdGUtPm1fY2xpZW50LT5kb3dubG9hZFJl
cXVlc3RlZChzdHJlYW0sIGZpbGVuYW1lKTsKICAgICBzdHJlYW0tPnN0cmVhbU9wZW4oKTsKIH0K
IAotLSAKMS43LjkuNQoK
</data>

          </attachment>
      

    </bug>

</bugzilla>