<?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>66037</bug_id>
          
          <creation_ts>2011-08-10 23:59:49 -0700</creation_ts>
          <short_desc>Pass additional details to client in didCreateIsolatedContext</short_desc>
          <delta_ts>2011-08-15 12:52:36 -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 API</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="Aaron Boodman">aa</reporter>
          <assigned_to name="Aaron Boodman">aa</assigned_to>
          <cc>abarth</cc>
    
    <cc>fishd</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>449627</commentid>
    <comment_count>0</comment_count>
    <who name="Aaron Boodman">aa</who>
    <bug_when>2011-08-10 23:59:49 -0700</bug_when>
    <thetext>Pass additional details to client in didCreateIsolatedContext</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>449629</commentid>
    <comment_count>1</comment_count>
      <attachid>103586</attachid>
    <who name="Aaron Boodman">aa</who>
    <bug_when>2011-08-11 00:01:48 -0700</bug_when>
    <thetext>Created attachment 103586
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>449631</commentid>
    <comment_count>2</comment_count>
    <who name="Aaron Boodman">aa</who>
    <bug_when>2011-08-11 00:03:41 -0700</bug_when>
    <thetext>We currently have to figure out these details through ugly, and probably unsafe, roundabout ways. Better to just pass them directly.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>449632</commentid>
    <comment_count>3</comment_count>
      <attachid>103586</attachid>
    <who name="Adam Barth">abarth</who>
    <bug_when>2011-08-11 00:05:53 -0700</bug_when>
    <thetext>Comment on attachment 103586
Patch

LGTM, but we need to great and powerful fishd.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>449633</commentid>
    <comment_count>4</comment_count>
      <attachid>103586</attachid>
    <who name="Gyuyoung Kim">gyuyoung.kim</who>
    <bug_when>2011-08-11 00:07:15 -0700</bug_when>
    <thetext>Comment on attachment 103586
Patch

Attachment 103586 did not pass efl-ews (efl):
Output: http://queues.webkit.org/results/9358092</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>449637</commentid>
    <comment_count>5</comment_count>
      <attachid>103586</attachid>
    <who name="Early Warning System Bot">webkit-ews</who>
    <bug_when>2011-08-11 00:10:31 -0700</bug_when>
    <thetext>Comment on attachment 103586
Patch

Attachment 103586 did not pass qt-ews (qt):
Output: http://queues.webkit.org/results/9358094</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>449638</commentid>
    <comment_count>6</comment_count>
      <attachid>103588</attachid>
    <who name="Aaron Boodman">aa</who>
    <bug_when>2011-08-11 00:13:45 -0700</bug_when>
    <thetext>Created attachment 103588
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>449640</commentid>
    <comment_count>7</comment_count>
    <who name="Aaron Boodman">aa</who>
    <bug_when>2011-08-11 00:14:56 -0700</bug_when>
    <thetext>(In reply to comment #3)
&gt; LGTM, but we need to great and powerful fishd.

I know. I just thought your review would be good for the webcore bit, even though it is small.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>449913</commentid>
    <comment_count>8</comment_count>
      <attachid>103588</attachid>
    <who name="Darin Fisher (:fishd, Google)">fishd</who>
    <bug_when>2011-08-11 11:55:51 -0700</bug_when>
    <thetext>Comment on attachment 103588
Patch

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

&gt; Source/WebKit/chromium/public/WebFrameClient.h:44
&gt; +#include &quot;v8/include/v8.h&quot;

we often just forward declare V8 types.  see WebFrame.h for example.

&gt; Source/WebKit/chromium/public/WebFrameClient.h:312
&gt; +    virtual void didCreateIsolatedScriptContext(WebFrame*, int isolatedWorldId, v8::Handle&lt;v8::Context&gt;) { }

in WebFrame.h, we refer to isolatedWorldId as &quot;worldID&quot;

I assume both of these integers refer to the same thing, so probably would be good to use the same exact variable name for these.

&gt; Source/WebKit/chromium/src/FrameLoaderClientImpl.cpp:85
&gt; +#if WEBKIT_USING_V8

though it really doesn&apos;t matter that much, you might go with USE(V8) to match what you do below.  since this file is implementing a WebCore interface, and the WebCore interface uses USE(V8), perhaps this file should do the same?


There are just nits, so R=me.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>449922</commentid>
    <comment_count>9</comment_count>
    <who name="Aaron Boodman">aa</who>
    <bug_when>2011-08-11 12:21:58 -0700</bug_when>
    <thetext>(In reply to comment #8)
&gt; (From update of attachment 103588 [details])
&gt; View in context: https://bugs.webkit.org/attachment.cgi?id=103588&amp;action=review
&gt; 
&gt; &gt; Source/WebKit/chromium/public/WebFrameClient.h:44
&gt; &gt; +#include &quot;v8/include/v8.h&quot;
&gt; 
&gt; we often just forward declare V8 types.  see WebFrame.h for example.

I tried that initially, but it does not compile. I think this is because the usage in WebFrameClient is in an implemented method, not just a declared one?

&gt; &gt; Source/WebKit/chromium/public/WebFrameClient.h:312
&gt; &gt; +    virtual void didCreateIsolatedScriptContext(WebFrame*, int isolatedWorldId, v8::Handle&lt;v8::Context&gt;) { }
&gt; 
&gt; in WebFrame.h, we refer to isolatedWorldId as &quot;worldID&quot;
&gt; 
&gt; I assume both of these integers refer to the same thing, so probably would be good to use the same exact variable name for these.

Yes, done.

&gt; &gt; Source/WebKit/chromium/src/FrameLoaderClientImpl.cpp:85
&gt; &gt; +#if WEBKIT_USING_V8
&gt; 
&gt; though it really doesn&apos;t matter that much, you might go with USE(V8) to match what you do below.  since this file is implementing a WebCore interface, and the WebCore interface uses USE(V8), perhaps this file should do the same?

Done.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>449923</commentid>
    <comment_count>10</comment_count>
      <attachid>103656</attachid>
    <who name="Aaron Boodman">aa</who>
    <bug_when>2011-08-11 12:22:52 -0700</bug_when>
    <thetext>Created attachment 103656
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>449948</commentid>
    <comment_count>11</comment_count>
    <who name="Darin Fisher (:fishd, Google)">fishd</who>
    <bug_when>2011-08-11 12:52:58 -0700</bug_when>
    <thetext>(In reply to comment #9)
&gt; (In reply to comment #8)
&gt; &gt; (From update of attachment 103588 [details] [details])
&gt; &gt; View in context: https://bugs.webkit.org/attachment.cgi?id=103588&amp;action=review
&gt; &gt; 
&gt; &gt; &gt; Source/WebKit/chromium/public/WebFrameClient.h:44
&gt; &gt; &gt; +#include &quot;v8/include/v8.h&quot;
&gt; &gt; 
&gt; &gt; we often just forward declare V8 types.  see WebFrame.h for example.
&gt; 
&gt; I tried that initially, but it does not compile. I think this is because the usage in WebFrameClient is in an implemented method, not just a declared one?

Ah... this will be the first instance of including v8.h from a public header.  I think you might want to make this be #include &lt;v8.h&gt; since V8 is a third-party library.  That&apos;s how we include Skia headers from the WebKit API headers, for example.  The WebKit headers do not assume a common Chromium-style global include root that contains v8.

Also, it looks like v8.gyp puts v8/include on the include search path.  WebCore also just does #include &lt;v8.h&gt;.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>449949</commentid>
    <comment_count>12</comment_count>
      <attachid>103656</attachid>
    <who name="Darin Fisher (:fishd, Google)">fishd</who>
    <bug_when>2011-08-11 12:53:27 -0700</bug_when>
    <thetext>Comment on attachment 103656
Patch

R=me except for the v8 include issue.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>451232</commentid>
    <comment_count>13</comment_count>
    <who name="Aaron Boodman">aa</who>
    <bug_when>2011-08-15 12:52:36 -0700</bug_when>
    <thetext>Committed r93055: &lt;http://trac.webkit.org/changeset/93055&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>103586</attachid>
            <date>2011-08-11 00:01:48 -0700</date>
            <delta_ts>2011-08-11 00:13:43 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-66037-20110811000147.patch</filename>
            <type>text/plain</type>
            <size>12112</size>
            <attacher name="Aaron Boodman">aa</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogOTI4MDMKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL0No
YW5nZUxvZyBiL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwppbmRleCAxMzMxNGIzMTdkNTYzMmYw
ZmMzNjJmZWZkZTJhMDA2YzM5MGExMjU3Li5kMWVjYWNjODM2ZWY3ZjY2YWM0N2FlNmYwNmFmNzEx
N2QyMTg3OTc1IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKKysrIGIvU291
cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMjQgQEAKKzIwMTEtMDgtMTAgIEFhcm9u
IEJvb2RtYW4gIDxhYUBjaHJvbWl1bS5vcmc+CisKKyAgICAgICAgUGFzcyBhZGRpdGlvbmFsIGRl
dGFpbHMgdG8gY2xpZW50IGluIGRpZENyZWF0ZUlzb2xhdGVkQ29udGV4dAorICAgICAgICBodHRw
czovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9NjYwMzcKKworICAgICAgICBSZXZp
ZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICAqIGJpbmRpbmdzL3Y4L0lzb2xhdGVk
V29ybGQuY3BwOgorICAgICAgICAoV2ViQ29yZTo6SXNvbGF0ZWRXb3JsZDo6SXNvbGF0ZWRXb3Js
ZCk6CisgICAgICAgICogYmluZGluZ3MvdjgvSXNvbGF0ZWRXb3JsZC5oOgorICAgICAgICAoV2Vi
Q29yZTo6SXNvbGF0ZWRXb3JsZDo6Y3JlYXRlKToKKyAgICAgICAgKFdlYkNvcmU6Oklzb2xhdGVk
V29ybGQ6OmlkKToKKyAgICAgICAgKiBiaW5kaW5ncy92OC9WOElzb2xhdGVkQ29udGV4dC5jcHA6
CisgICAgICAgIChXZWJDb3JlOjpWOElzb2xhdGVkQ29udGV4dDo6VjhJc29sYXRlZENvbnRleHQp
OgorICAgICAgICAqIGJpbmRpbmdzL3Y4L1Y4SXNvbGF0ZWRDb250ZXh0Lmg6CisgICAgICAgICog
YmluZGluZ3MvdjgvVjhQcm94eS5jcHA6CisgICAgICAgIChXZWJDb3JlOjpWOFByb3h5OjpldmFs
dWF0ZUluSXNvbGF0ZWRXb3JsZCk6CisgICAgICAgICogbG9hZGVyL0VtcHR5Q2xpZW50cy5oOgor
ICAgICAgICAoV2ViQ29yZTo6RW1wdHlGcmFtZUxvYWRlckNsaWVudDo6ZGlkQ3JlYXRlSXNvbGF0
ZWRTY3JpcHRDb250ZXh0KToKKyAgICAgICAgKiBsb2FkZXIvRnJhbWVMb2FkZXJDbGllbnQuaDoK
KwogMjAxMS0wOC0xMCAgQWJoaXNoZWsgQXJ5YSAgPGluZmVybm9AY2hyb21pdW0ub3JnPgogCiAg
ICAgICAgIENoZWNrIHRoYXQgd2UgZG8gbm90IG5lZWQgbGF5b3V0IGJlZm9yZSB0cnlpbmcgdG8g
ZGlydHkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3Y4L0lzb2xhdGVkV29y
bGQuY3BwIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvdjgvSXNvbGF0ZWRXb3JsZC5jcHAKaW5k
ZXggMzY4NjgzZDliNWY5YWE1YmU1MjgxNzdkYTc2NTI0YjcyMTIxNmFkZS4uMzY4NjQ2MTcxZjg1
ZTMwNDYzYmMyYWM4YjA3NjU1NDk0YTNjMmFhNyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUv
YmluZGluZ3MvdjgvSXNvbGF0ZWRXb3JsZC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvYmluZGlu
Z3MvdjgvSXNvbGF0ZWRXb3JsZC5jcHAKQEAgLTM1LDkgKzM1LDEwIEBAIG5hbWVzcGFjZSBXZWJD
b3JlIHsKIAogaW50IElzb2xhdGVkV29ybGQ6Omlzb2xhdGVkV29ybGRDb3VudCA9IDA7CiAKLUlz
b2xhdGVkV29ybGQ6Oklzb2xhdGVkV29ybGQoKQorSXNvbGF0ZWRXb3JsZDo6SXNvbGF0ZWRXb3Js
ZChpbnQgaWQpCiB7CiAgICAgKytpc29sYXRlZFdvcmxkQ291bnQ7CisgICAgbV9pZCA9IGlkOwog
fQogCiBJc29sYXRlZFdvcmxkOjp+SXNvbGF0ZWRXb3JsZCgpCmRpZmYgLS1naXQgYS9Tb3VyY2Uv
V2ViQ29yZS9iaW5kaW5ncy92OC9Jc29sYXRlZFdvcmxkLmggYi9Tb3VyY2UvV2ViQ29yZS9iaW5k
aW5ncy92OC9Jc29sYXRlZFdvcmxkLmgKaW5kZXggM2U4NjQzNzMxMjgxNDNmZjk5MDY3OTU5ZGRi
M2I4NTU1NWJmNTllOS4uZTFiM2ZjYmIxNjBhNzkyYjFhN2M0MWZmNTI2NzA4Nzg4NGVhMGYyYiAx
MDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvdjgvSXNvbGF0ZWRXb3JsZC5oCisr
KyBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3Y4L0lzb2xhdGVkV29ybGQuaApAQCAtMzksMTYg
KzM5LDE5IEBAIG5hbWVzcGFjZSBXZWJDb3JlIHsKIC8vIEFuIERPTVdyYXBwZXJXb3JsZCBvdGhl
ciB0aGFuIHRoZSB0aHJlYWQncyBub3JtYWwgd29ybGQuCiBjbGFzcyBJc29sYXRlZFdvcmxkIDog
cHVibGljIERPTVdyYXBwZXJXb3JsZCB7CiBwdWJsaWM6Ci0gICAgc3RhdGljIFBhc3NSZWZQdHI8
SXNvbGF0ZWRXb3JsZD4gY3JlYXRlKCkgeyByZXR1cm4gYWRvcHRSZWYobmV3IElzb2xhdGVkV29y
bGQoKSk7IH0KKyAgICBzdGF0aWMgUGFzc1JlZlB0cjxJc29sYXRlZFdvcmxkPiBjcmVhdGUoaW50
IGlkKSB7IHJldHVybiBhZG9wdFJlZihuZXcgSXNvbGF0ZWRXb3JsZChpZCkpOyB9CiAgICAgc3Rh
dGljIGludCBjb3VudCgpIHsgcmV0dXJuIGlzb2xhdGVkV29ybGRDb3VudDsgfQogCisgICAgaW50
IGlkKCkgY29uc3QgeyByZXR1cm4gbV9pZDsgfQogICAgIERPTURhdGFTdG9yZSogZG9tRGF0YVN0
b3JlKCkgY29uc3QgeyByZXR1cm4gbV9kb21EYXRhU3RvcmUuZ2V0U3RvcmUoKTsgfQogCiBwcm90
ZWN0ZWQ6Ci0gICAgSXNvbGF0ZWRXb3JsZCgpOworICAgIElzb2xhdGVkV29ybGQoaW50IGlkKTsK
ICAgICB+SXNvbGF0ZWRXb3JsZCgpOwogCiBwcml2YXRlOgorICAgIGludCBtX2lkOworCiAgICAg
Ly8gVGhlIGJhY2tpbmcgc3RvcmUgZm9yIHRoZSBpc29sYXRlZCB3b3JsZCdzIERPTSB3cmFwcGVy
cy4gIFRoaXMgY2xhc3MKICAgICAvLyBkb2Vzbid0IGhhdmUgdmlzaWJpbGl0eSBpbnRvIHRoZSB3
cmFwcGVycy4gIFRoaXMgaGFuZGxlIHNpbXBseSBoZWxwcwogICAgIC8vIG1hbmFnZSB0aGVpciBs
aWZldGltZS4KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3Y4L1Y4SXNvbGF0
ZWRDb250ZXh0LmNwcCBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3Y4L1Y4SXNvbGF0ZWRDb250
ZXh0LmNwcAppbmRleCA2MjAxNWQ3ODMwMjkxNDljY2I3NzQ1MTkxZDNkM2MxNDhkMmRjYjJkLi42
MjQyODAyYzAxMTZlMjE4YmExNmY1NjNjYTkwMDYwYTM0NGQ4ODVhIDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViQ29yZS9iaW5kaW5ncy92OC9WOElzb2xhdGVkQ29udGV4dC5jcHAKKysrIGIvU291cmNl
L1dlYkNvcmUvYmluZGluZ3MvdjgvVjhJc29sYXRlZENvbnRleHQuY3BwCkBAIC00OCw4ICs0OCw4
IEBAIHZvaWQgVjhJc29sYXRlZENvbnRleHQ6OmNvbnRleHRXZWFrUmVmZXJlbmNlQ2FsbGJhY2so
djg6OlBlcnNpc3RlbnQ8djg6OlZhbHVlPiBvCiAgICAgZGVsZXRlIGNvbnRleHQ7CiB9CiAKLVY4
SXNvbGF0ZWRDb250ZXh0OjpWOElzb2xhdGVkQ29udGV4dChWOFByb3h5KiBwcm94eSwgaW50IGV4
dGVuc2lvbkdyb3VwKQotICAgIDogbV93b3JsZChJc29sYXRlZFdvcmxkOjpjcmVhdGUoKSkKK1Y4
SXNvbGF0ZWRDb250ZXh0OjpWOElzb2xhdGVkQ29udGV4dChWOFByb3h5KiBwcm94eSwgaW50IGV4
dGVuc2lvbkdyb3VwLCBpbnQgd29ybGRJZCkKKyAgICA6IG1fd29ybGQoSXNvbGF0ZWRXb3JsZDo6
Y3JlYXRlKHdvcmxkSWQpKQogewogICAgIHY4OjpIYW5kbGVTY29wZSBzY29wZTsKICAgICAvLyBG
SVhNRTogV2Ugc2hvdWxkIGJlIGNyZWF0aW5nIGEgbmV3IFY4RE9NV2luZG93U2hlbGwgaGVyZSBp
bnN0ZWFkIG9mIHJpcGluZyBvdXQgdGhlIGNvbnRleHQuCkBAIC03NCw3ICs3NCw3IEBAIFY4SXNv
bGF0ZWRDb250ZXh0OjpWOElzb2xhdGVkQ29udGV4dChWOFByb3h5KiBwcm94eSwgaW50IGV4dGVu
c2lvbkdyb3VwKQogICAgIC8vICAgICAgICBjaGFuZ2VzLgogICAgIG1fY29udGV4dC0+Z2V0KCkt
PlVzZURlZmF1bHRTZWN1cml0eVRva2VuKCk7CiAKLSAgICBwcm94eS0+ZnJhbWUoKS0+bG9hZGVy
KCktPmNsaWVudCgpLT5kaWRDcmVhdGVJc29sYXRlZFNjcmlwdENvbnRleHQoKTsKKyAgICBwcm94
eS0+ZnJhbWUoKS0+bG9hZGVyKCktPmNsaWVudCgpLT5kaWRDcmVhdGVJc29sYXRlZFNjcmlwdENv
bnRleHQodGhpcyk7CiB9CiAKIHZvaWQgVjhJc29sYXRlZENvbnRleHQ6OmRlc3Ryb3koKQpkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvdjgvVjhJc29sYXRlZENvbnRleHQuaCBi
L1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3Y4L1Y4SXNvbGF0ZWRDb250ZXh0LmgKaW5kZXggNjIy
MWRjM2QwOTQ1Y2Y1YmFmODZmMGQyN2UyZjExMTJjZDYzYTEzNC4uNjRkZjFmMjg1OGQ4ZjRhZTlm
ODA3MTE3NmEzYjJmY2ZlOTlkYzg2OSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYmluZGlu
Z3MvdjgvVjhJc29sYXRlZENvbnRleHQuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy92
OC9WOElzb2xhdGVkQ29udGV4dC5oCkBAIC01OSw3ICs1OSw3IEBAIGNsYXNzIFY4SXNvbGF0ZWRD
b250ZXh0IHsKIHB1YmxpYzoKICAgICAvLyBDcmVhdGVzIGFuIGlzb2xhdGVkIHdvcmxkLiBUbyBk
ZXN0cm95IGl0LCBjYWxsIGRlc3Ryb3koKS4KICAgICAvLyBUaGlzIHdpbGwgZGVsZXRlIHRoZSBp
c29sYXRlZCB3b3JsZCB3aGVuIHRoZSBjb250ZXh0IGl0IG93bnMgaXMgR0MnZC4KLSAgICBWOElz
b2xhdGVkQ29udGV4dChWOFByb3h5KiwgaW50IGV4dGVuc2lvbkdyb3VwKTsKKyAgICBWOElzb2xh
dGVkQ29udGV4dChWOFByb3h5KiwgaW50IGV4dGVuc2lvbkdyb3VwLCBpbnQgd29ybGRJZCk7CiAg
ICAgflY4SXNvbGF0ZWRDb250ZXh0KCk7CiAKICAgICAvLyBDYWxsIHRoaXMgdG8gZGVzdHJveSB0
aGUgaXNvbGF0ZWQgd29ybGQuIEl0IHdpbGwgYmUgZGVsZXRlZCBzb21ldGltZQpkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvdjgvVjhQcm94eS5jcHAgYi9Tb3VyY2UvV2ViQ29y
ZS9iaW5kaW5ncy92OC9WOFByb3h5LmNwcAppbmRleCBkMjJiNTkzZmY3MjQ5YTcwMDIzNGQ3Y2Nk
NzQ5MDVhYmI1YjJmOWNhLi45NTFmNWFhZDg3NGQwYjRlZTAwYmQzZjc5NDgzMzAxNTVkNzIzN2E0
IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy92OC9WOFByb3h5LmNwcAorKysg
Yi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy92OC9WOFByb3h5LmNwcApAQCAtMjU2LDcgKzI1Niw3
IEBAIHZvaWQgVjhQcm94eTo6ZXZhbHVhdGVJbklzb2xhdGVkV29ybGQoaW50IHdvcmxkSUQsIGNv
bnN0IFZlY3RvcjxTY3JpcHRTb3VyY2VDb2RlCiAgICAgICAgIGlmIChpdGVyICE9IG1faXNvbGF0
ZWRXb3JsZHMuZW5kKCkpIHsKICAgICAgICAgICAgIGlzb2xhdGVkQ29udGV4dCA9IGl0ZXItPnNl
Y29uZDsKICAgICAgICAgfSBlbHNlIHsKLSAgICAgICAgICAgIGlzb2xhdGVkQ29udGV4dCA9IG5l
dyBWOElzb2xhdGVkQ29udGV4dCh0aGlzLCBleHRlbnNpb25Hcm91cCk7CisgICAgICAgICAgICBp
c29sYXRlZENvbnRleHQgPSBuZXcgVjhJc29sYXRlZENvbnRleHQodGhpcywgZXh0ZW5zaW9uR3Jv
dXAsIHdvcmxkSUQpOwogICAgICAgICAgICAgaWYgKGlzb2xhdGVkQ29udGV4dC0+Y29udGV4dCgp
LklzRW1wdHkoKSkgewogICAgICAgICAgICAgICAgIGRlbGV0ZSBpc29sYXRlZENvbnRleHQ7CiAg
ICAgICAgICAgICAgICAgcmV0dXJuOwpAQCAtMjc3LDcgKzI3Nyw3IEBAIHZvaWQgVjhQcm94eTo6
ZXZhbHVhdGVJbklzb2xhdGVkV29ybGQoaW50IHdvcmxkSUQsIGNvbnN0IFZlY3RvcjxTY3JpcHRT
b3VyY2VDb2RlCiAgICAgICAgIGlmIChzZWN1cml0eU9yaWdpbkl0ZXIgIT0gbV9pc29sYXRlZFdv
cmxkU2VjdXJpdHlPcmlnaW5zLmVuZCgpKQogICAgICAgICAgICAgaXNvbGF0ZWRDb250ZXh0LT5z
ZXRTZWN1cml0eU9yaWdpbihzZWN1cml0eU9yaWdpbkl0ZXItPnNlY29uZCk7CiAgICAgfSBlbHNl
IHsKLSAgICAgICAgaXNvbGF0ZWRDb250ZXh0ID0gbmV3IFY4SXNvbGF0ZWRDb250ZXh0KHRoaXMs
IGV4dGVuc2lvbkdyb3VwKTsKKyAgICAgICAgaXNvbGF0ZWRDb250ZXh0ID0gbmV3IFY4SXNvbGF0
ZWRDb250ZXh0KHRoaXMsIGV4dGVuc2lvbkdyb3VwLCB3b3JsZElEKTsKICAgICAgICAgaWYgKGlz
b2xhdGVkQ29udGV4dC0+Y29udGV4dCgpLklzRW1wdHkoKSkgewogICAgICAgICAgICAgZGVsZXRl
IGlzb2xhdGVkQ29udGV4dDsKICAgICAgICAgICAgIHJldHVybjsKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJDb3JlL2xvYWRlci9FbXB0eUNsaWVudHMuaCBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9F
bXB0eUNsaWVudHMuaAppbmRleCBhYzQzMGE1N2JhOTFkZmExY2YxODcwYmNjYjQwNTdmNGU4NmQw
MDU2Li41MzJiOTQ4ZTI4NWQ2MDIwNDc1YmM4YTI1ODMwYmQ0NjFiNmUzMzQ4IDEwMDY0NAotLS0g
YS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvRW1wdHlDbGllbnRzLmgKKysrIGIvU291cmNlL1dlYkNv
cmUvbG9hZGVyL0VtcHR5Q2xpZW50cy5oCkBAIC00NSw2ICs0NSw3IEBACiAjaW5jbHVkZSAiUG9w
dXBNZW51LmgiCiAjaW5jbHVkZSAiUmVzb3VyY2VFcnJvci5oIgogI2luY2x1ZGUgIlNlYXJjaFBv
cHVwTWVudS5oIgorI2luY2x1ZGUgIlY4SXNvbGF0ZWRDb250ZXh0LmgiCiAKIC8qCiAgVGhpcyBm
aWxlIGhvbGRzIGVtcHR5IENsaWVudCBzdHVicyBmb3IgdXNlIGJ5IFdlYkNvcmUuCkBAIC0zOTcs
NyArMzk4LDcgQEAgcHVibGljOgogI2lmIFVTRShWOCkKICAgICB2aXJ0dWFsIHZvaWQgZGlkQ3Jl
YXRlU2NyaXB0Q29udGV4dEZvckZyYW1lKCkgeyB9CiAgICAgdmlydHVhbCB2b2lkIGRpZERlc3Ry
b3lTY3JpcHRDb250ZXh0Rm9yRnJhbWUoKSB7IH0KLSAgICB2aXJ0dWFsIHZvaWQgZGlkQ3JlYXRl
SXNvbGF0ZWRTY3JpcHRDb250ZXh0KCkgeyB9CisgICAgdmlydHVhbCB2b2lkIGRpZENyZWF0ZUlz
b2xhdGVkU2NyaXB0Q29udGV4dChWOElzb2xhdGVkQ29udGV4dCopIHsgfQogICAgIHZpcnR1YWwg
Ym9vbCBhbGxvd1NjcmlwdEV4dGVuc2lvbihjb25zdCBTdHJpbmcmIGV4dGVuc2lvbk5hbWUsIGlu
dCBleHRlbnNpb25Hcm91cCkgeyByZXR1cm4gZmFsc2U7IH0KICNlbmRpZgogCmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvRnJhbWVMb2FkZXJDbGllbnQuaCBiL1NvdXJjZS9XZWJD
b3JlL2xvYWRlci9GcmFtZUxvYWRlckNsaWVudC5oCmluZGV4IDE0MDgwZWRhYjBhZmU0ZTk5MzFi
ZTg4NWZhMjIyOTY4NzkyNDA4ZGQuLjY3NzYxNzA1YmUzM2I0ODcwMTI2YjY3NzhhYmUxNTFiZTk1
YzMzMGQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9GcmFtZUxvYWRlckNsaWVu
dC5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9GcmFtZUxvYWRlckNsaWVudC5oCkBAIC04
Nyw2ICs4Nyw5IEBAIG5hbWVzcGFjZSBXZWJDb3JlIHsKICAgICBjbGFzcyBTaGFyZWRCdWZmZXI7
CiAgICAgY2xhc3MgU3RyaW5nV2l0aERpcmVjdGlvbjsKICAgICBjbGFzcyBTdWJzdGl0dXRlRGF0
YTsKKyNpZiBVU0UoVjgpCisgICAgY2xhc3MgVjhJc29sYXRlZENvbnRleHQ7CisjZW5kaWYKICAg
ICBjbGFzcyBXaWRnZXQ7CiAKICAgICB0eXBlZGVmIHZvaWQgKFBvbGljeUNoZWNrZXI6OipGcmFt
ZVBvbGljeUZ1bmN0aW9uKShQb2xpY3lBY3Rpb24pOwpAQCAtMjczLDcgKzI3Niw3IEBAIG5hbWVz
cGFjZSBXZWJDb3JlIHsKICNpZiBVU0UoVjgpCiAgICAgICAgIHZpcnR1YWwgdm9pZCBkaWRDcmVh
dGVTY3JpcHRDb250ZXh0Rm9yRnJhbWUoKSA9IDA7CiAgICAgICAgIHZpcnR1YWwgdm9pZCBkaWRE
ZXN0cm95U2NyaXB0Q29udGV4dEZvckZyYW1lKCkgPSAwOwotICAgICAgICB2aXJ0dWFsIHZvaWQg
ZGlkQ3JlYXRlSXNvbGF0ZWRTY3JpcHRDb250ZXh0KCkgPSAwOworICAgICAgICB2aXJ0dWFsIHZv
aWQgZGlkQ3JlYXRlSXNvbGF0ZWRTY3JpcHRDb250ZXh0KFY4SXNvbGF0ZWRDb250ZXh0KikgPSAw
OwogICAgICAgICB2aXJ0dWFsIGJvb2wgYWxsb3dTY3JpcHRFeHRlbnNpb24oY29uc3QgU3RyaW5n
JiBleHRlbnNpb25OYW1lLCBpbnQgZXh0ZW5zaW9uR3JvdXApID0gMDsKICNlbmRpZgogCmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViS2l0L2Nocm9taXVtL0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJLaXQv
Y2hyb21pdW0vQ2hhbmdlTG9nCmluZGV4IGQxNzNjOTYwNTdkODhjYWNlZGNiYzYxYWI5YmE2NDUz
ZTJkNjdkMGEuLjJiYjg2NzUwOGFjOTQ2MjIwZjhmNDczMWQ3NDYyMTBmYzU4ZTczNWEgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJLaXQvY2hyb21pdW0vQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9XZWJL
aXQvY2hyb21pdW0vQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTYgQEAKKzIwMTEtMDgtMTAgIEFhcm9u
IEJvb2RtYW4gIDxhYUBjaHJvbWl1bS5vcmc+CisKKyAgICAgICAgUGFzcyBhZGRpdGlvbmFsIGRl
dGFpbHMgdG8gY2xpZW50IGluIGRpZENyZWF0ZUlzb2xhdGVkQ29udGV4dAorICAgICAgICBodHRw
czovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9NjYwMzcKKworICAgICAgICBSZXZp
ZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICAqIHB1YmxpYy9XZWJGcmFtZUNsaWVu
dC5oOgorICAgICAgICAoV2ViS2l0OjpXZWJGcmFtZUNsaWVudDo6ZGlkQ3JlYXRlSXNvbGF0ZWRT
Y3JpcHRDb250ZXh0KToKKyAgICAgICAgKiBzcmMvRnJhbWVMb2FkZXJDbGllbnRJbXBsLmNwcDoK
KyAgICAgICAgKFdlYktpdDo6RnJhbWVMb2FkZXJDbGllbnRJbXBsOjpkaWRDcmVhdGVJc29sYXRl
ZFNjcmlwdENvbnRleHQpOgorICAgICAgICAqIHNyYy9GcmFtZUxvYWRlckNsaWVudEltcGwuaDoK
KwogMjAxMS0wOC0xMCAgRG1pdHJ5IExvbW92ICA8ZHNsb21vdkBnb29nbGUuY29tPgogICAgICAg
ICAKICAgICAgICAgW0Nocm9taXVtXSBEZWNvdXBsZSBpbXBsZW1lbnRhdGlvbiBvZiBhbGxvd0Zp
bGVTeXN0ZW0sIG9wZW5GaWxlU3lzdGVtIGFuZCBhbGxvd0RhdGFiYXNlIGZyb20gV2ViV29ya2Vy
QmFzZS4KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvY2hyb21pdW0vcHVibGljL1dlYkZyYW1l
Q2xpZW50LmggYi9Tb3VyY2UvV2ViS2l0L2Nocm9taXVtL3B1YmxpYy9XZWJGcmFtZUNsaWVudC5o
CmluZGV4IDBhZjk2Y2FhYTc2MzM4NThlYTQyY2UwOGVjZWRiMTdlNTc0ODExNGEuLmQwYjFlYzUy
OGIxYzk5OTMwODU5M2NmYzk2OGI0ZWZmNzQyODJjNDMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJL
aXQvY2hyb21pdW0vcHVibGljL1dlYkZyYW1lQ2xpZW50LmgKKysrIGIvU291cmNlL1dlYktpdC9j
aHJvbWl1bS9wdWJsaWMvV2ViRnJhbWVDbGllbnQuaApAQCAtNDAsNiArNDAsMTAgQEAKICNpbmNs
dWRlICJXZWJUZXh0RGlyZWN0aW9uLmgiCiAjaW5jbHVkZSAiV2ViVVJMRXJyb3IuaCIKIAorI2lm
IFdFQktJVF9VU0lOR19WOAorI2luY2x1ZGUgInY4L2luY2x1ZGUvdjguaCIKKyNlbmRpZgorCiBu
YW1lc3BhY2UgV2ViS2l0IHsKIAogY2xhc3MgV2ViQXBwbGljYXRpb25DYWNoZUhvc3Q7CkBAIC0z
MDIsOCArMzA2LDExIEBAIHB1YmxpYzoKIAogICAgIC8vIE5vdGlmaWVzIHRoYXQgYSBnYXJiYWdl
LWNvbGxlY3RlZCBjb250ZXh0IHdhcyBjcmVhdGVkIC0gY29udGVudAogICAgIC8vIHNjcmlwdHMu
CisgICAgLy8gRklYTUU6IFJlbW92ZSB0aGlzIGZpcnN0IG92ZXJsb2FkIHdoZW4gQ2hyb21pdW0g
c3dpdGNoZXMgdG8gdGhlIHNlY29uZC4KICAgICB2aXJ0dWFsIHZvaWQgZGlkQ3JlYXRlSXNvbGF0
ZWRTY3JpcHRDb250ZXh0KFdlYkZyYW1lKikgeyB9Ci0KKyNpZiBXRUJLSVRfVVNJTkdfVjgKKyAg
ICB2aXJ0dWFsIHZvaWQgZGlkQ3JlYXRlSXNvbGF0ZWRTY3JpcHRDb250ZXh0KFdlYkZyYW1lKiwg
aW50IGlzb2xhdGVkV29ybGRJZCwgdjg6OkhhbmRsZTx2ODo6Q29udGV4dD4pIHsgfQorI2VuZGlm
CiAKICAgICAvLyBHZW9tZXRyeSBub3RpZmljYXRpb25zIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9jaHJv
bWl1bS9zcmMvRnJhbWVMb2FkZXJDbGllbnRJbXBsLmNwcCBiL1NvdXJjZS9XZWJLaXQvY2hyb21p
dW0vc3JjL0ZyYW1lTG9hZGVyQ2xpZW50SW1wbC5jcHAKaW5kZXggNzE5ZWMyNGYwMDk0ODQwYjdl
MDFjYzcxYTkyNjc4MTI3NDUwMDFkYy4uYWU3NWJmMzU1YzUzNjU5NGJhZGFhZTlkZmJhY2I4YjQy
NjhlNzBjYiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9jaHJvbWl1bS9zcmMvRnJhbWVMb2Fk
ZXJDbGllbnRJbXBsLmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0L2Nocm9taXVtL3NyYy9GcmFtZUxv
YWRlckNsaWVudEltcGwuY3BwCkBAIC04Miw2ICs4MiwxMCBAQAogI2luY2x1ZGUgIldyYXBwZWRS
ZXNvdXJjZVJlc3BvbnNlLmgiCiAjaW5jbHVkZSA8d3RmL3RleHQvQ1N0cmluZy5oPgogCisjaWYg
V0VCS0lUX1VTSU5HX1Y4CisjaW5jbHVkZSAiVjhJc29sYXRlZENvbnRleHQuaCIKKyNlbmRpZgor
CiB1c2luZyBuYW1lc3BhY2UgV2ViQ29yZTsKIAogbmFtZXNwYWNlIFdlYktpdCB7CkBAIC0xNDYs
MTEgKzE1MCwxNSBAQCB2b2lkIEZyYW1lTG9hZGVyQ2xpZW50SW1wbDo6ZGlkRGVzdHJveVNjcmlw
dENvbnRleHRGb3JGcmFtZSgpCiAgICAgICAgIG1fd2ViRnJhbWUtPmNsaWVudCgpLT5kaWREZXN0
cm95U2NyaXB0Q29udGV4dChtX3dlYkZyYW1lKTsKIH0KIAotdm9pZCBGcmFtZUxvYWRlckNsaWVu
dEltcGw6OmRpZENyZWF0ZUlzb2xhdGVkU2NyaXB0Q29udGV4dCgpCisjaWYgVVNFKFY4KQordm9p
ZCBGcmFtZUxvYWRlckNsaWVudEltcGw6OmRpZENyZWF0ZUlzb2xhdGVkU2NyaXB0Q29udGV4dChW
OElzb2xhdGVkQ29udGV4dCogaXNvbGF0ZWRDb250ZXh0KQogewotICAgIGlmIChtX3dlYkZyYW1l
LT5jbGllbnQoKSkKKyAgICBpZiAobV93ZWJGcmFtZS0+Y2xpZW50KCkpIHsKICAgICAgICAgbV93
ZWJGcmFtZS0+Y2xpZW50KCktPmRpZENyZWF0ZUlzb2xhdGVkU2NyaXB0Q29udGV4dChtX3dlYkZy
YW1lKTsKKyAgICAgICAgbV93ZWJGcmFtZS0+Y2xpZW50KCktPmRpZENyZWF0ZUlzb2xhdGVkU2Ny
aXB0Q29udGV4dChtX3dlYkZyYW1lLCBpc29sYXRlZENvbnRleHQtPndvcmxkKCktPmlkKCksIGlz
b2xhdGVkQ29udGV4dC0+Y29udGV4dCgpKTsKKyAgICB9CiB9CisjZW5kaWYKIAogYm9vbCBGcmFt
ZUxvYWRlckNsaWVudEltcGw6OmFsbG93U2NyaXB0RXh0ZW5zaW9uKGNvbnN0IFN0cmluZyYgZXh0
ZW5zaW9uTmFtZSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICBpbnQgZXh0ZW5zaW9uR3JvdXApCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L2Nocm9t
aXVtL3NyYy9GcmFtZUxvYWRlckNsaWVudEltcGwuaCBiL1NvdXJjZS9XZWJLaXQvY2hyb21pdW0v
c3JjL0ZyYW1lTG9hZGVyQ2xpZW50SW1wbC5oCmluZGV4IDcxZjdlNTAwN2UzYTNhYTY2ZWM1MDhh
NjU5OWFkNmJiNzQwMjNlNDIuLjZmMTQyNmRkMDU4ODk2NWI3ODZmN2MzZGZlOWNiNzI0YTg3YTc0
OWQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvY2hyb21pdW0vc3JjL0ZyYW1lTG9hZGVyQ2xp
ZW50SW1wbC5oCisrKyBiL1NvdXJjZS9XZWJLaXQvY2hyb21pdW0vc3JjL0ZyYW1lTG9hZGVyQ2xp
ZW50SW1wbC5oCkBAIC02NSwxMCArNjUsMTIgQEAgcHVibGljOgogICAgIHZpcnR1YWwgdm9pZCBk
aWRDcmVhdGVTY3JpcHRDb250ZXh0Rm9yRnJhbWUoKTsKICAgICB2aXJ0dWFsIHZvaWQgZGlkRGVz
dHJveVNjcmlwdENvbnRleHRGb3JGcmFtZSgpOwogCisjaWYgVVNFKFY4KQogICAgIC8vIEEgY29u
dGV4dCB1bnRpZWQgdG8gYSBmcmFtZSB3YXMgY3JlYXRlZCAodGhyb3VnaCBldmFsdWF0ZUluSXNv
bGF0ZWRXb3JsZCkuCiAgICAgLy8gVGhpcyBjb250ZXh0IGlzIG5vdCB0aWVkIHRvIHRoZSBsaWZl
dGltZSBvZiBpdHMgZnJhbWUsIGFuZCBpcyBkZXN0cm95ZWQKICAgICAvLyBpbiBnYXJiYWdlIGNv
bGxlY3Rpb24uCi0gICAgdmlydHVhbCB2b2lkIGRpZENyZWF0ZUlzb2xhdGVkU2NyaXB0Q29udGV4
dCgpOworICAgIHZpcnR1YWwgdm9pZCBkaWRDcmVhdGVJc29sYXRlZFNjcmlwdENvbnRleHQoV2Vi
Q29yZTo6VjhJc29sYXRlZENvbnRleHQqKTsKKyNlbmRpZgogCiAgICAgLy8gUmV0dXJucyB0cnVl
IGlmIHdlIHNob3VsZCBhbGxvdyB0aGUgZ2l2ZW4gVjggZXh0ZW5zaW9uIHRvIGJlIGFkZGVkIHRv
CiAgICAgLy8gdGhlIHNjcmlwdCBjb250ZXh0IGF0IHRoZSBjdXJyZW50bHkgbG9hZGluZyBwYWdl
IGFuZCBnaXZlbiBleHRlbnNpb24gZ3JvdXAuCg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>103588</attachid>
            <date>2011-08-11 00:13:45 -0700</date>
            <delta_ts>2011-08-11 12:22:48 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-66037-20110811001344.patch</filename>
            <type>text/plain</type>
            <size>12227</size>
            <attacher name="Aaron Boodman">aa</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogOTI4MDMKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL0No
YW5nZUxvZyBiL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwppbmRleCAxMzMxNGIzMTdkNTYzMmYw
ZmMzNjJmZWZkZTJhMDA2YzM5MGExMjU3Li5kMWVjYWNjODM2ZWY3ZjY2YWM0N2FlNmYwNmFmNzEx
N2QyMTg3OTc1IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKKysrIGIvU291
cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMjQgQEAKKzIwMTEtMDgtMTAgIEFhcm9u
IEJvb2RtYW4gIDxhYUBjaHJvbWl1bS5vcmc+CisKKyAgICAgICAgUGFzcyBhZGRpdGlvbmFsIGRl
dGFpbHMgdG8gY2xpZW50IGluIGRpZENyZWF0ZUlzb2xhdGVkQ29udGV4dAorICAgICAgICBodHRw
czovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9NjYwMzcKKworICAgICAgICBSZXZp
ZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICAqIGJpbmRpbmdzL3Y4L0lzb2xhdGVk
V29ybGQuY3BwOgorICAgICAgICAoV2ViQ29yZTo6SXNvbGF0ZWRXb3JsZDo6SXNvbGF0ZWRXb3Js
ZCk6CisgICAgICAgICogYmluZGluZ3MvdjgvSXNvbGF0ZWRXb3JsZC5oOgorICAgICAgICAoV2Vi
Q29yZTo6SXNvbGF0ZWRXb3JsZDo6Y3JlYXRlKToKKyAgICAgICAgKFdlYkNvcmU6Oklzb2xhdGVk
V29ybGQ6OmlkKToKKyAgICAgICAgKiBiaW5kaW5ncy92OC9WOElzb2xhdGVkQ29udGV4dC5jcHA6
CisgICAgICAgIChXZWJDb3JlOjpWOElzb2xhdGVkQ29udGV4dDo6VjhJc29sYXRlZENvbnRleHQp
OgorICAgICAgICAqIGJpbmRpbmdzL3Y4L1Y4SXNvbGF0ZWRDb250ZXh0Lmg6CisgICAgICAgICog
YmluZGluZ3MvdjgvVjhQcm94eS5jcHA6CisgICAgICAgIChXZWJDb3JlOjpWOFByb3h5OjpldmFs
dWF0ZUluSXNvbGF0ZWRXb3JsZCk6CisgICAgICAgICogbG9hZGVyL0VtcHR5Q2xpZW50cy5oOgor
ICAgICAgICAoV2ViQ29yZTo6RW1wdHlGcmFtZUxvYWRlckNsaWVudDo6ZGlkQ3JlYXRlSXNvbGF0
ZWRTY3JpcHRDb250ZXh0KToKKyAgICAgICAgKiBsb2FkZXIvRnJhbWVMb2FkZXJDbGllbnQuaDoK
KwogMjAxMS0wOC0xMCAgQWJoaXNoZWsgQXJ5YSAgPGluZmVybm9AY2hyb21pdW0ub3JnPgogCiAg
ICAgICAgIENoZWNrIHRoYXQgd2UgZG8gbm90IG5lZWQgbGF5b3V0IGJlZm9yZSB0cnlpbmcgdG8g
ZGlydHkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3Y4L0lzb2xhdGVkV29y
bGQuY3BwIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvdjgvSXNvbGF0ZWRXb3JsZC5jcHAKaW5k
ZXggMzY4NjgzZDliNWY5YWE1YmU1MjgxNzdkYTc2NTI0YjcyMTIxNmFkZS4uMzY4NjQ2MTcxZjg1
ZTMwNDYzYmMyYWM4YjA3NjU1NDk0YTNjMmFhNyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUv
YmluZGluZ3MvdjgvSXNvbGF0ZWRXb3JsZC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvYmluZGlu
Z3MvdjgvSXNvbGF0ZWRXb3JsZC5jcHAKQEAgLTM1LDkgKzM1LDEwIEBAIG5hbWVzcGFjZSBXZWJD
b3JlIHsKIAogaW50IElzb2xhdGVkV29ybGQ6Omlzb2xhdGVkV29ybGRDb3VudCA9IDA7CiAKLUlz
b2xhdGVkV29ybGQ6Oklzb2xhdGVkV29ybGQoKQorSXNvbGF0ZWRXb3JsZDo6SXNvbGF0ZWRXb3Js
ZChpbnQgaWQpCiB7CiAgICAgKytpc29sYXRlZFdvcmxkQ291bnQ7CisgICAgbV9pZCA9IGlkOwog
fQogCiBJc29sYXRlZFdvcmxkOjp+SXNvbGF0ZWRXb3JsZCgpCmRpZmYgLS1naXQgYS9Tb3VyY2Uv
V2ViQ29yZS9iaW5kaW5ncy92OC9Jc29sYXRlZFdvcmxkLmggYi9Tb3VyY2UvV2ViQ29yZS9iaW5k
aW5ncy92OC9Jc29sYXRlZFdvcmxkLmgKaW5kZXggM2U4NjQzNzMxMjgxNDNmZjk5MDY3OTU5ZGRi
M2I4NTU1NWJmNTllOS4uZTFiM2ZjYmIxNjBhNzkyYjFhN2M0MWZmNTI2NzA4Nzg4NGVhMGYyYiAx
MDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvdjgvSXNvbGF0ZWRXb3JsZC5oCisr
KyBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3Y4L0lzb2xhdGVkV29ybGQuaApAQCAtMzksMTYg
KzM5LDE5IEBAIG5hbWVzcGFjZSBXZWJDb3JlIHsKIC8vIEFuIERPTVdyYXBwZXJXb3JsZCBvdGhl
ciB0aGFuIHRoZSB0aHJlYWQncyBub3JtYWwgd29ybGQuCiBjbGFzcyBJc29sYXRlZFdvcmxkIDog
cHVibGljIERPTVdyYXBwZXJXb3JsZCB7CiBwdWJsaWM6Ci0gICAgc3RhdGljIFBhc3NSZWZQdHI8
SXNvbGF0ZWRXb3JsZD4gY3JlYXRlKCkgeyByZXR1cm4gYWRvcHRSZWYobmV3IElzb2xhdGVkV29y
bGQoKSk7IH0KKyAgICBzdGF0aWMgUGFzc1JlZlB0cjxJc29sYXRlZFdvcmxkPiBjcmVhdGUoaW50
IGlkKSB7IHJldHVybiBhZG9wdFJlZihuZXcgSXNvbGF0ZWRXb3JsZChpZCkpOyB9CiAgICAgc3Rh
dGljIGludCBjb3VudCgpIHsgcmV0dXJuIGlzb2xhdGVkV29ybGRDb3VudDsgfQogCisgICAgaW50
IGlkKCkgY29uc3QgeyByZXR1cm4gbV9pZDsgfQogICAgIERPTURhdGFTdG9yZSogZG9tRGF0YVN0
b3JlKCkgY29uc3QgeyByZXR1cm4gbV9kb21EYXRhU3RvcmUuZ2V0U3RvcmUoKTsgfQogCiBwcm90
ZWN0ZWQ6Ci0gICAgSXNvbGF0ZWRXb3JsZCgpOworICAgIElzb2xhdGVkV29ybGQoaW50IGlkKTsK
ICAgICB+SXNvbGF0ZWRXb3JsZCgpOwogCiBwcml2YXRlOgorICAgIGludCBtX2lkOworCiAgICAg
Ly8gVGhlIGJhY2tpbmcgc3RvcmUgZm9yIHRoZSBpc29sYXRlZCB3b3JsZCdzIERPTSB3cmFwcGVy
cy4gIFRoaXMgY2xhc3MKICAgICAvLyBkb2Vzbid0IGhhdmUgdmlzaWJpbGl0eSBpbnRvIHRoZSB3
cmFwcGVycy4gIFRoaXMgaGFuZGxlIHNpbXBseSBoZWxwcwogICAgIC8vIG1hbmFnZSB0aGVpciBs
aWZldGltZS4KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3Y4L1Y4SXNvbGF0
ZWRDb250ZXh0LmNwcCBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3Y4L1Y4SXNvbGF0ZWRDb250
ZXh0LmNwcAppbmRleCA2MjAxNWQ3ODMwMjkxNDljY2I3NzQ1MTkxZDNkM2MxNDhkMmRjYjJkLi42
MjQyODAyYzAxMTZlMjE4YmExNmY1NjNjYTkwMDYwYTM0NGQ4ODVhIDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViQ29yZS9iaW5kaW5ncy92OC9WOElzb2xhdGVkQ29udGV4dC5jcHAKKysrIGIvU291cmNl
L1dlYkNvcmUvYmluZGluZ3MvdjgvVjhJc29sYXRlZENvbnRleHQuY3BwCkBAIC00OCw4ICs0OCw4
IEBAIHZvaWQgVjhJc29sYXRlZENvbnRleHQ6OmNvbnRleHRXZWFrUmVmZXJlbmNlQ2FsbGJhY2so
djg6OlBlcnNpc3RlbnQ8djg6OlZhbHVlPiBvCiAgICAgZGVsZXRlIGNvbnRleHQ7CiB9CiAKLVY4
SXNvbGF0ZWRDb250ZXh0OjpWOElzb2xhdGVkQ29udGV4dChWOFByb3h5KiBwcm94eSwgaW50IGV4
dGVuc2lvbkdyb3VwKQotICAgIDogbV93b3JsZChJc29sYXRlZFdvcmxkOjpjcmVhdGUoKSkKK1Y4
SXNvbGF0ZWRDb250ZXh0OjpWOElzb2xhdGVkQ29udGV4dChWOFByb3h5KiBwcm94eSwgaW50IGV4
dGVuc2lvbkdyb3VwLCBpbnQgd29ybGRJZCkKKyAgICA6IG1fd29ybGQoSXNvbGF0ZWRXb3JsZDo6
Y3JlYXRlKHdvcmxkSWQpKQogewogICAgIHY4OjpIYW5kbGVTY29wZSBzY29wZTsKICAgICAvLyBG
SVhNRTogV2Ugc2hvdWxkIGJlIGNyZWF0aW5nIGEgbmV3IFY4RE9NV2luZG93U2hlbGwgaGVyZSBp
bnN0ZWFkIG9mIHJpcGluZyBvdXQgdGhlIGNvbnRleHQuCkBAIC03NCw3ICs3NCw3IEBAIFY4SXNv
bGF0ZWRDb250ZXh0OjpWOElzb2xhdGVkQ29udGV4dChWOFByb3h5KiBwcm94eSwgaW50IGV4dGVu
c2lvbkdyb3VwKQogICAgIC8vICAgICAgICBjaGFuZ2VzLgogICAgIG1fY29udGV4dC0+Z2V0KCkt
PlVzZURlZmF1bHRTZWN1cml0eVRva2VuKCk7CiAKLSAgICBwcm94eS0+ZnJhbWUoKS0+bG9hZGVy
KCktPmNsaWVudCgpLT5kaWRDcmVhdGVJc29sYXRlZFNjcmlwdENvbnRleHQoKTsKKyAgICBwcm94
eS0+ZnJhbWUoKS0+bG9hZGVyKCktPmNsaWVudCgpLT5kaWRDcmVhdGVJc29sYXRlZFNjcmlwdENv
bnRleHQodGhpcyk7CiB9CiAKIHZvaWQgVjhJc29sYXRlZENvbnRleHQ6OmRlc3Ryb3koKQpkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvdjgvVjhJc29sYXRlZENvbnRleHQuaCBi
L1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3Y4L1Y4SXNvbGF0ZWRDb250ZXh0LmgKaW5kZXggNjIy
MWRjM2QwOTQ1Y2Y1YmFmODZmMGQyN2UyZjExMTJjZDYzYTEzNC4uNjRkZjFmMjg1OGQ4ZjRhZTlm
ODA3MTE3NmEzYjJmY2ZlOTlkYzg2OSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYmluZGlu
Z3MvdjgvVjhJc29sYXRlZENvbnRleHQuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy92
OC9WOElzb2xhdGVkQ29udGV4dC5oCkBAIC01OSw3ICs1OSw3IEBAIGNsYXNzIFY4SXNvbGF0ZWRD
b250ZXh0IHsKIHB1YmxpYzoKICAgICAvLyBDcmVhdGVzIGFuIGlzb2xhdGVkIHdvcmxkLiBUbyBk
ZXN0cm95IGl0LCBjYWxsIGRlc3Ryb3koKS4KICAgICAvLyBUaGlzIHdpbGwgZGVsZXRlIHRoZSBp
c29sYXRlZCB3b3JsZCB3aGVuIHRoZSBjb250ZXh0IGl0IG93bnMgaXMgR0MnZC4KLSAgICBWOElz
b2xhdGVkQ29udGV4dChWOFByb3h5KiwgaW50IGV4dGVuc2lvbkdyb3VwKTsKKyAgICBWOElzb2xh
dGVkQ29udGV4dChWOFByb3h5KiwgaW50IGV4dGVuc2lvbkdyb3VwLCBpbnQgd29ybGRJZCk7CiAg
ICAgflY4SXNvbGF0ZWRDb250ZXh0KCk7CiAKICAgICAvLyBDYWxsIHRoaXMgdG8gZGVzdHJveSB0
aGUgaXNvbGF0ZWQgd29ybGQuIEl0IHdpbGwgYmUgZGVsZXRlZCBzb21ldGltZQpkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvdjgvVjhQcm94eS5jcHAgYi9Tb3VyY2UvV2ViQ29y
ZS9iaW5kaW5ncy92OC9WOFByb3h5LmNwcAppbmRleCBkMjJiNTkzZmY3MjQ5YTcwMDIzNGQ3Y2Nk
NzQ5MDVhYmI1YjJmOWNhLi45NTFmNWFhZDg3NGQwYjRlZTAwYmQzZjc5NDgzMzAxNTVkNzIzN2E0
IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy92OC9WOFByb3h5LmNwcAorKysg
Yi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy92OC9WOFByb3h5LmNwcApAQCAtMjU2LDcgKzI1Niw3
IEBAIHZvaWQgVjhQcm94eTo6ZXZhbHVhdGVJbklzb2xhdGVkV29ybGQoaW50IHdvcmxkSUQsIGNv
bnN0IFZlY3RvcjxTY3JpcHRTb3VyY2VDb2RlCiAgICAgICAgIGlmIChpdGVyICE9IG1faXNvbGF0
ZWRXb3JsZHMuZW5kKCkpIHsKICAgICAgICAgICAgIGlzb2xhdGVkQ29udGV4dCA9IGl0ZXItPnNl
Y29uZDsKICAgICAgICAgfSBlbHNlIHsKLSAgICAgICAgICAgIGlzb2xhdGVkQ29udGV4dCA9IG5l
dyBWOElzb2xhdGVkQ29udGV4dCh0aGlzLCBleHRlbnNpb25Hcm91cCk7CisgICAgICAgICAgICBp
c29sYXRlZENvbnRleHQgPSBuZXcgVjhJc29sYXRlZENvbnRleHQodGhpcywgZXh0ZW5zaW9uR3Jv
dXAsIHdvcmxkSUQpOwogICAgICAgICAgICAgaWYgKGlzb2xhdGVkQ29udGV4dC0+Y29udGV4dCgp
LklzRW1wdHkoKSkgewogICAgICAgICAgICAgICAgIGRlbGV0ZSBpc29sYXRlZENvbnRleHQ7CiAg
ICAgICAgICAgICAgICAgcmV0dXJuOwpAQCAtMjc3LDcgKzI3Nyw3IEBAIHZvaWQgVjhQcm94eTo6
ZXZhbHVhdGVJbklzb2xhdGVkV29ybGQoaW50IHdvcmxkSUQsIGNvbnN0IFZlY3RvcjxTY3JpcHRT
b3VyY2VDb2RlCiAgICAgICAgIGlmIChzZWN1cml0eU9yaWdpbkl0ZXIgIT0gbV9pc29sYXRlZFdv
cmxkU2VjdXJpdHlPcmlnaW5zLmVuZCgpKQogICAgICAgICAgICAgaXNvbGF0ZWRDb250ZXh0LT5z
ZXRTZWN1cml0eU9yaWdpbihzZWN1cml0eU9yaWdpbkl0ZXItPnNlY29uZCk7CiAgICAgfSBlbHNl
IHsKLSAgICAgICAgaXNvbGF0ZWRDb250ZXh0ID0gbmV3IFY4SXNvbGF0ZWRDb250ZXh0KHRoaXMs
IGV4dGVuc2lvbkdyb3VwKTsKKyAgICAgICAgaXNvbGF0ZWRDb250ZXh0ID0gbmV3IFY4SXNvbGF0
ZWRDb250ZXh0KHRoaXMsIGV4dGVuc2lvbkdyb3VwLCB3b3JsZElEKTsKICAgICAgICAgaWYgKGlz
b2xhdGVkQ29udGV4dC0+Y29udGV4dCgpLklzRW1wdHkoKSkgewogICAgICAgICAgICAgZGVsZXRl
IGlzb2xhdGVkQ29udGV4dDsKICAgICAgICAgICAgIHJldHVybjsKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJDb3JlL2xvYWRlci9FbXB0eUNsaWVudHMuaCBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9F
bXB0eUNsaWVudHMuaAppbmRleCBhYzQzMGE1N2JhOTFkZmExY2YxODcwYmNjYjQwNTdmNGU4NmQw
MDU2Li43ZTMxY2FlNmE0MzUzMjcxNmZkZjQ5ZGEyMTliMmUyY2RkYzA3YmY5IDEwMDY0NAotLS0g
YS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvRW1wdHlDbGllbnRzLmgKKysrIGIvU291cmNlL1dlYkNv
cmUvbG9hZGVyL0VtcHR5Q2xpZW50cy5oCkBAIC00Niw2ICs0NiwxMCBAQAogI2luY2x1ZGUgIlJl
c291cmNlRXJyb3IuaCIKICNpbmNsdWRlICJTZWFyY2hQb3B1cE1lbnUuaCIKIAorI2lmIFVTRShW
OCkKKyNpbmNsdWRlICJWOElzb2xhdGVkQ29udGV4dC5oIgorI2VuZGlmCisKIC8qCiAgVGhpcyBm
aWxlIGhvbGRzIGVtcHR5IENsaWVudCBzdHVicyBmb3IgdXNlIGJ5IFdlYkNvcmUuCiAgVmlld2xl
c3MgZWxlbWVudCBuZWVkcyB0byBjcmVhdGUgYSBkdW1teSBQYWdlLT5GcmFtZS0+RnJhbWVWaWV3
IHRyZWUgZm9yIHVzZSBpbiBwYXJzaW5nIG9yIGV4ZWN1dGluZyBKYXZhU2NyaXB0LgpAQCAtMzk3
LDcgKzQwMSw3IEBAIHB1YmxpYzoKICNpZiBVU0UoVjgpCiAgICAgdmlydHVhbCB2b2lkIGRpZENy
ZWF0ZVNjcmlwdENvbnRleHRGb3JGcmFtZSgpIHsgfQogICAgIHZpcnR1YWwgdm9pZCBkaWREZXN0
cm95U2NyaXB0Q29udGV4dEZvckZyYW1lKCkgeyB9Ci0gICAgdmlydHVhbCB2b2lkIGRpZENyZWF0
ZUlzb2xhdGVkU2NyaXB0Q29udGV4dCgpIHsgfQorICAgIHZpcnR1YWwgdm9pZCBkaWRDcmVhdGVJ
c29sYXRlZFNjcmlwdENvbnRleHQoVjhJc29sYXRlZENvbnRleHQqKSB7IH0KICAgICB2aXJ0dWFs
IGJvb2wgYWxsb3dTY3JpcHRFeHRlbnNpb24oY29uc3QgU3RyaW5nJiBleHRlbnNpb25OYW1lLCBp
bnQgZXh0ZW5zaW9uR3JvdXApIHsgcmV0dXJuIGZhbHNlOyB9CiAjZW5kaWYKIApkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL0ZyYW1lTG9hZGVyQ2xpZW50LmggYi9Tb3VyY2UvV2Vi
Q29yZS9sb2FkZXIvRnJhbWVMb2FkZXJDbGllbnQuaAppbmRleCAxNDA4MGVkYWIwYWZlNGU5OTMx
YmU4ODVmYTIyMjk2ODc5MjQwOGRkLi42Nzc2MTcwNWJlMzNiNDg3MDEyNmI2Nzc4YWJlMTUxYmU5
NWMzMzBkIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvRnJhbWVMb2FkZXJDbGll
bnQuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvRnJhbWVMb2FkZXJDbGllbnQuaApAQCAt
ODcsNiArODcsOSBAQCBuYW1lc3BhY2UgV2ViQ29yZSB7CiAgICAgY2xhc3MgU2hhcmVkQnVmZmVy
OwogICAgIGNsYXNzIFN0cmluZ1dpdGhEaXJlY3Rpb247CiAgICAgY2xhc3MgU3Vic3RpdHV0ZURh
dGE7CisjaWYgVVNFKFY4KQorICAgIGNsYXNzIFY4SXNvbGF0ZWRDb250ZXh0OworI2VuZGlmCiAg
ICAgY2xhc3MgV2lkZ2V0OwogCiAgICAgdHlwZWRlZiB2b2lkIChQb2xpY3lDaGVja2VyOjoqRnJh
bWVQb2xpY3lGdW5jdGlvbikoUG9saWN5QWN0aW9uKTsKQEAgLTI3Myw3ICsyNzYsNyBAQCBuYW1l
c3BhY2UgV2ViQ29yZSB7CiAjaWYgVVNFKFY4KQogICAgICAgICB2aXJ0dWFsIHZvaWQgZGlkQ3Jl
YXRlU2NyaXB0Q29udGV4dEZvckZyYW1lKCkgPSAwOwogICAgICAgICB2aXJ0dWFsIHZvaWQgZGlk
RGVzdHJveVNjcmlwdENvbnRleHRGb3JGcmFtZSgpID0gMDsKLSAgICAgICAgdmlydHVhbCB2b2lk
IGRpZENyZWF0ZUlzb2xhdGVkU2NyaXB0Q29udGV4dCgpID0gMDsKKyAgICAgICAgdmlydHVhbCB2
b2lkIGRpZENyZWF0ZUlzb2xhdGVkU2NyaXB0Q29udGV4dChWOElzb2xhdGVkQ29udGV4dCopID0g
MDsKICAgICAgICAgdmlydHVhbCBib29sIGFsbG93U2NyaXB0RXh0ZW5zaW9uKGNvbnN0IFN0cmlu
ZyYgZXh0ZW5zaW9uTmFtZSwgaW50IGV4dGVuc2lvbkdyb3VwKSA9IDA7CiAjZW5kaWYKIApkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYktpdC9jaHJvbWl1bS9DaGFuZ2VMb2cgYi9Tb3VyY2UvV2ViS2l0
L2Nocm9taXVtL0NoYW5nZUxvZwppbmRleCBkMTczYzk2MDU3ZDg4Y2FjZWRjYmM2MWFiOWJhNjQ1
M2UyZDY3ZDBhLi4yYmI4Njc1MDhhYzk0NjIyMGY4ZjQ3MzFkNzQ2MjEwZmM1OGU3MzVhIDEwMDY0
NAotLS0gYS9Tb3VyY2UvV2ViS2l0L2Nocm9taXVtL0NoYW5nZUxvZworKysgYi9Tb3VyY2UvV2Vi
S2l0L2Nocm9taXVtL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE2IEBACisyMDExLTA4LTEwICBBYXJv
biBCb29kbWFuICA8YWFAY2hyb21pdW0ub3JnPgorCisgICAgICAgIFBhc3MgYWRkaXRpb25hbCBk
ZXRhaWxzIHRvIGNsaWVudCBpbiBkaWRDcmVhdGVJc29sYXRlZENvbnRleHQKKyAgICAgICAgaHR0
cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTY2MDM3CisKKyAgICAgICAgUmV2
aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgKiBwdWJsaWMvV2ViRnJhbWVDbGll
bnQuaDoKKyAgICAgICAgKFdlYktpdDo6V2ViRnJhbWVDbGllbnQ6OmRpZENyZWF0ZUlzb2xhdGVk
U2NyaXB0Q29udGV4dCk6CisgICAgICAgICogc3JjL0ZyYW1lTG9hZGVyQ2xpZW50SW1wbC5jcHA6
CisgICAgICAgIChXZWJLaXQ6OkZyYW1lTG9hZGVyQ2xpZW50SW1wbDo6ZGlkQ3JlYXRlSXNvbGF0
ZWRTY3JpcHRDb250ZXh0KToKKyAgICAgICAgKiBzcmMvRnJhbWVMb2FkZXJDbGllbnRJbXBsLmg6
CisKIDIwMTEtMDgtMTAgIERtaXRyeSBMb21vdiAgPGRzbG9tb3ZAZ29vZ2xlLmNvbT4KICAgICAg
ICAgCiAgICAgICAgIFtDaHJvbWl1bV0gRGVjb3VwbGUgaW1wbGVtZW50YXRpb24gb2YgYWxsb3dG
aWxlU3lzdGVtLCBvcGVuRmlsZVN5c3RlbSBhbmQgYWxsb3dEYXRhYmFzZSBmcm9tIFdlYldvcmtl
ckJhc2UuCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L2Nocm9taXVtL3B1YmxpYy9XZWJGcmFt
ZUNsaWVudC5oIGIvU291cmNlL1dlYktpdC9jaHJvbWl1bS9wdWJsaWMvV2ViRnJhbWVDbGllbnQu
aAppbmRleCAwYWY5NmNhYWE3NjMzODU4ZWE0MmNlMDhlY2VkYjE3ZTU3NDgxMTRhLi5kMGIxZWM1
MjhiMWM5OTkzMDg1OTNjZmM5NjhiNGVmZjc0MjgyYzQzIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2Vi
S2l0L2Nocm9taXVtL3B1YmxpYy9XZWJGcmFtZUNsaWVudC5oCisrKyBiL1NvdXJjZS9XZWJLaXQv
Y2hyb21pdW0vcHVibGljL1dlYkZyYW1lQ2xpZW50LmgKQEAgLTQwLDYgKzQwLDEwIEBACiAjaW5j
bHVkZSAiV2ViVGV4dERpcmVjdGlvbi5oIgogI2luY2x1ZGUgIldlYlVSTEVycm9yLmgiCiAKKyNp
ZiBXRUJLSVRfVVNJTkdfVjgKKyNpbmNsdWRlICJ2OC9pbmNsdWRlL3Y4LmgiCisjZW5kaWYKKwog
bmFtZXNwYWNlIFdlYktpdCB7CiAKIGNsYXNzIFdlYkFwcGxpY2F0aW9uQ2FjaGVIb3N0OwpAQCAt
MzAyLDggKzMwNiwxMSBAQCBwdWJsaWM6CiAKICAgICAvLyBOb3RpZmllcyB0aGF0IGEgZ2FyYmFn
ZS1jb2xsZWN0ZWQgY29udGV4dCB3YXMgY3JlYXRlZCAtIGNvbnRlbnQKICAgICAvLyBzY3JpcHRz
LgorICAgIC8vIEZJWE1FOiBSZW1vdmUgdGhpcyBmaXJzdCBvdmVybG9hZCB3aGVuIENocm9taXVt
IHN3aXRjaGVzIHRvIHRoZSBzZWNvbmQuCiAgICAgdmlydHVhbCB2b2lkIGRpZENyZWF0ZUlzb2xh
dGVkU2NyaXB0Q29udGV4dChXZWJGcmFtZSopIHsgfQotCisjaWYgV0VCS0lUX1VTSU5HX1Y4Cisg
ICAgdmlydHVhbCB2b2lkIGRpZENyZWF0ZUlzb2xhdGVkU2NyaXB0Q29udGV4dChXZWJGcmFtZSos
IGludCBpc29sYXRlZFdvcmxkSWQsIHY4OjpIYW5kbGU8djg6OkNvbnRleHQ+KSB7IH0KKyNlbmRp
ZgogCiAgICAgLy8gR2VvbWV0cnkgbm90aWZpY2F0aW9ucyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvY2hy
b21pdW0vc3JjL0ZyYW1lTG9hZGVyQ2xpZW50SW1wbC5jcHAgYi9Tb3VyY2UvV2ViS2l0L2Nocm9t
aXVtL3NyYy9GcmFtZUxvYWRlckNsaWVudEltcGwuY3BwCmluZGV4IDcxOWVjMjRmMDA5NDg0MGI3
ZTAxY2M3MWE5MjY3ODEyNzQ1MDAxZGMuLmFlNzViZjM1NWM1MzY1OTRiYWRhYWU5ZGZiYWNiOGI0
MjY4ZTcwY2IgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvY2hyb21pdW0vc3JjL0ZyYW1lTG9h
ZGVyQ2xpZW50SW1wbC5jcHAKKysrIGIvU291cmNlL1dlYktpdC9jaHJvbWl1bS9zcmMvRnJhbWVM
b2FkZXJDbGllbnRJbXBsLmNwcApAQCAtODIsNiArODIsMTAgQEAKICNpbmNsdWRlICJXcmFwcGVk
UmVzb3VyY2VSZXNwb25zZS5oIgogI2luY2x1ZGUgPHd0Zi90ZXh0L0NTdHJpbmcuaD4KIAorI2lm
IFdFQktJVF9VU0lOR19WOAorI2luY2x1ZGUgIlY4SXNvbGF0ZWRDb250ZXh0LmgiCisjZW5kaWYK
KwogdXNpbmcgbmFtZXNwYWNlIFdlYkNvcmU7CiAKIG5hbWVzcGFjZSBXZWJLaXQgewpAQCAtMTQ2
LDExICsxNTAsMTUgQEAgdm9pZCBGcmFtZUxvYWRlckNsaWVudEltcGw6OmRpZERlc3Ryb3lTY3Jp
cHRDb250ZXh0Rm9yRnJhbWUoKQogICAgICAgICBtX3dlYkZyYW1lLT5jbGllbnQoKS0+ZGlkRGVz
dHJveVNjcmlwdENvbnRleHQobV93ZWJGcmFtZSk7CiB9CiAKLXZvaWQgRnJhbWVMb2FkZXJDbGll
bnRJbXBsOjpkaWRDcmVhdGVJc29sYXRlZFNjcmlwdENvbnRleHQoKQorI2lmIFVTRShWOCkKK3Zv
aWQgRnJhbWVMb2FkZXJDbGllbnRJbXBsOjpkaWRDcmVhdGVJc29sYXRlZFNjcmlwdENvbnRleHQo
VjhJc29sYXRlZENvbnRleHQqIGlzb2xhdGVkQ29udGV4dCkKIHsKLSAgICBpZiAobV93ZWJGcmFt
ZS0+Y2xpZW50KCkpCisgICAgaWYgKG1fd2ViRnJhbWUtPmNsaWVudCgpKSB7CiAgICAgICAgIG1f
d2ViRnJhbWUtPmNsaWVudCgpLT5kaWRDcmVhdGVJc29sYXRlZFNjcmlwdENvbnRleHQobV93ZWJG
cmFtZSk7CisgICAgICAgIG1fd2ViRnJhbWUtPmNsaWVudCgpLT5kaWRDcmVhdGVJc29sYXRlZFNj
cmlwdENvbnRleHQobV93ZWJGcmFtZSwgaXNvbGF0ZWRDb250ZXh0LT53b3JsZCgpLT5pZCgpLCBp
c29sYXRlZENvbnRleHQtPmNvbnRleHQoKSk7CisgICAgfQogfQorI2VuZGlmCiAKIGJvb2wgRnJh
bWVMb2FkZXJDbGllbnRJbXBsOjphbGxvd1NjcmlwdEV4dGVuc2lvbihjb25zdCBTdHJpbmcmIGV4
dGVuc2lvbk5hbWUsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgaW50IGV4dGVuc2lvbkdyb3VwKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9jaHJv
bWl1bS9zcmMvRnJhbWVMb2FkZXJDbGllbnRJbXBsLmggYi9Tb3VyY2UvV2ViS2l0L2Nocm9taXVt
L3NyYy9GcmFtZUxvYWRlckNsaWVudEltcGwuaAppbmRleCA3MWY3ZTUwMDdlM2EzYWE2NmVjNTA4
YTY1OTlhZDZiYjc0MDIzZTQyLi42ZjE0MjZkZDA1ODg5NjViNzg2ZjdjM2RmZTljYjcyNGE4N2E3
NDlkIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L2Nocm9taXVtL3NyYy9GcmFtZUxvYWRlckNs
aWVudEltcGwuaAorKysgYi9Tb3VyY2UvV2ViS2l0L2Nocm9taXVtL3NyYy9GcmFtZUxvYWRlckNs
aWVudEltcGwuaApAQCAtNjUsMTAgKzY1LDEyIEBAIHB1YmxpYzoKICAgICB2aXJ0dWFsIHZvaWQg
ZGlkQ3JlYXRlU2NyaXB0Q29udGV4dEZvckZyYW1lKCk7CiAgICAgdmlydHVhbCB2b2lkIGRpZERl
c3Ryb3lTY3JpcHRDb250ZXh0Rm9yRnJhbWUoKTsKIAorI2lmIFVTRShWOCkKICAgICAvLyBBIGNv
bnRleHQgdW50aWVkIHRvIGEgZnJhbWUgd2FzIGNyZWF0ZWQgKHRocm91Z2ggZXZhbHVhdGVJbklz
b2xhdGVkV29ybGQpLgogICAgIC8vIFRoaXMgY29udGV4dCBpcyBub3QgdGllZCB0byB0aGUgbGlm
ZXRpbWUgb2YgaXRzIGZyYW1lLCBhbmQgaXMgZGVzdHJveWVkCiAgICAgLy8gaW4gZ2FyYmFnZSBj
b2xsZWN0aW9uLgotICAgIHZpcnR1YWwgdm9pZCBkaWRDcmVhdGVJc29sYXRlZFNjcmlwdENvbnRl
eHQoKTsKKyAgICB2aXJ0dWFsIHZvaWQgZGlkQ3JlYXRlSXNvbGF0ZWRTY3JpcHRDb250ZXh0KFdl
YkNvcmU6OlY4SXNvbGF0ZWRDb250ZXh0Kik7CisjZW5kaWYKIAogICAgIC8vIFJldHVybnMgdHJ1
ZSBpZiB3ZSBzaG91bGQgYWxsb3cgdGhlIGdpdmVuIFY4IGV4dGVuc2lvbiB0byBiZSBhZGRlZCB0
bwogICAgIC8vIHRoZSBzY3JpcHQgY29udGV4dCBhdCB0aGUgY3VycmVudGx5IGxvYWRpbmcgcGFn
ZSBhbmQgZ2l2ZW4gZXh0ZW5zaW9uIGdyb3VwLgo=
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>103656</attachid>
            <date>2011-08-11 12:22:52 -0700</date>
            <delta_ts>2011-08-11 12:53:27 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-66037-20110811122251.patch</filename>
            <type>text/plain</type>
            <size>12220</size>
            <attacher name="Aaron Boodman">aa</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogOTI4MDMKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL0No
YW5nZUxvZyBiL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwppbmRleCAxMzMxNGIzMTdkNTYzMmYw
ZmMzNjJmZWZkZTJhMDA2YzM5MGExMjU3Li5kMWVjYWNjODM2ZWY3ZjY2YWM0N2FlNmYwNmFmNzEx
N2QyMTg3OTc1IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKKysrIGIvU291
cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMjQgQEAKKzIwMTEtMDgtMTAgIEFhcm9u
IEJvb2RtYW4gIDxhYUBjaHJvbWl1bS5vcmc+CisKKyAgICAgICAgUGFzcyBhZGRpdGlvbmFsIGRl
dGFpbHMgdG8gY2xpZW50IGluIGRpZENyZWF0ZUlzb2xhdGVkQ29udGV4dAorICAgICAgICBodHRw
czovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9NjYwMzcKKworICAgICAgICBSZXZp
ZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICAqIGJpbmRpbmdzL3Y4L0lzb2xhdGVk
V29ybGQuY3BwOgorICAgICAgICAoV2ViQ29yZTo6SXNvbGF0ZWRXb3JsZDo6SXNvbGF0ZWRXb3Js
ZCk6CisgICAgICAgICogYmluZGluZ3MvdjgvSXNvbGF0ZWRXb3JsZC5oOgorICAgICAgICAoV2Vi
Q29yZTo6SXNvbGF0ZWRXb3JsZDo6Y3JlYXRlKToKKyAgICAgICAgKFdlYkNvcmU6Oklzb2xhdGVk
V29ybGQ6OmlkKToKKyAgICAgICAgKiBiaW5kaW5ncy92OC9WOElzb2xhdGVkQ29udGV4dC5jcHA6
CisgICAgICAgIChXZWJDb3JlOjpWOElzb2xhdGVkQ29udGV4dDo6VjhJc29sYXRlZENvbnRleHQp
OgorICAgICAgICAqIGJpbmRpbmdzL3Y4L1Y4SXNvbGF0ZWRDb250ZXh0Lmg6CisgICAgICAgICog
YmluZGluZ3MvdjgvVjhQcm94eS5jcHA6CisgICAgICAgIChXZWJDb3JlOjpWOFByb3h5OjpldmFs
dWF0ZUluSXNvbGF0ZWRXb3JsZCk6CisgICAgICAgICogbG9hZGVyL0VtcHR5Q2xpZW50cy5oOgor
ICAgICAgICAoV2ViQ29yZTo6RW1wdHlGcmFtZUxvYWRlckNsaWVudDo6ZGlkQ3JlYXRlSXNvbGF0
ZWRTY3JpcHRDb250ZXh0KToKKyAgICAgICAgKiBsb2FkZXIvRnJhbWVMb2FkZXJDbGllbnQuaDoK
KwogMjAxMS0wOC0xMCAgQWJoaXNoZWsgQXJ5YSAgPGluZmVybm9AY2hyb21pdW0ub3JnPgogCiAg
ICAgICAgIENoZWNrIHRoYXQgd2UgZG8gbm90IG5lZWQgbGF5b3V0IGJlZm9yZSB0cnlpbmcgdG8g
ZGlydHkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3Y4L0lzb2xhdGVkV29y
bGQuY3BwIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvdjgvSXNvbGF0ZWRXb3JsZC5jcHAKaW5k
ZXggMzY4NjgzZDliNWY5YWE1YmU1MjgxNzdkYTc2NTI0YjcyMTIxNmFkZS4uMzY4NjQ2MTcxZjg1
ZTMwNDYzYmMyYWM4YjA3NjU1NDk0YTNjMmFhNyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUv
YmluZGluZ3MvdjgvSXNvbGF0ZWRXb3JsZC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvYmluZGlu
Z3MvdjgvSXNvbGF0ZWRXb3JsZC5jcHAKQEAgLTM1LDkgKzM1LDEwIEBAIG5hbWVzcGFjZSBXZWJD
b3JlIHsKIAogaW50IElzb2xhdGVkV29ybGQ6Omlzb2xhdGVkV29ybGRDb3VudCA9IDA7CiAKLUlz
b2xhdGVkV29ybGQ6Oklzb2xhdGVkV29ybGQoKQorSXNvbGF0ZWRXb3JsZDo6SXNvbGF0ZWRXb3Js
ZChpbnQgaWQpCiB7CiAgICAgKytpc29sYXRlZFdvcmxkQ291bnQ7CisgICAgbV9pZCA9IGlkOwog
fQogCiBJc29sYXRlZFdvcmxkOjp+SXNvbGF0ZWRXb3JsZCgpCmRpZmYgLS1naXQgYS9Tb3VyY2Uv
V2ViQ29yZS9iaW5kaW5ncy92OC9Jc29sYXRlZFdvcmxkLmggYi9Tb3VyY2UvV2ViQ29yZS9iaW5k
aW5ncy92OC9Jc29sYXRlZFdvcmxkLmgKaW5kZXggM2U4NjQzNzMxMjgxNDNmZjk5MDY3OTU5ZGRi
M2I4NTU1NWJmNTllOS4uNTNlMzQ3NmU0Y2I5NmNiZjI0ZjVkMmE5ZDU5YmRmYjQ0OGVjZThhMSAx
MDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvdjgvSXNvbGF0ZWRXb3JsZC5oCisr
KyBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3Y4L0lzb2xhdGVkV29ybGQuaApAQCAtMzksMTYg
KzM5LDE5IEBAIG5hbWVzcGFjZSBXZWJDb3JlIHsKIC8vIEFuIERPTVdyYXBwZXJXb3JsZCBvdGhl
ciB0aGFuIHRoZSB0aHJlYWQncyBub3JtYWwgd29ybGQuCiBjbGFzcyBJc29sYXRlZFdvcmxkIDog
cHVibGljIERPTVdyYXBwZXJXb3JsZCB7CiBwdWJsaWM6Ci0gICAgc3RhdGljIFBhc3NSZWZQdHI8
SXNvbGF0ZWRXb3JsZD4gY3JlYXRlKCkgeyByZXR1cm4gYWRvcHRSZWYobmV3IElzb2xhdGVkV29y
bGQoKSk7IH0KKyAgICBzdGF0aWMgUGFzc1JlZlB0cjxJc29sYXRlZFdvcmxkPiBjcmVhdGUoaW50
IGlkKSB7IHJldHVybiBhZG9wdFJlZihuZXcgSXNvbGF0ZWRXb3JsZChpZCkpOyB9CiAgICAgc3Rh
dGljIGludCBjb3VudCgpIHsgcmV0dXJuIGlzb2xhdGVkV29ybGRDb3VudDsgfQogCisgICAgaW50
IGlkKCkgY29uc3QgeyByZXR1cm4gbV9pZDsgfQogICAgIERPTURhdGFTdG9yZSogZG9tRGF0YVN0
b3JlKCkgY29uc3QgeyByZXR1cm4gbV9kb21EYXRhU3RvcmUuZ2V0U3RvcmUoKTsgfQogCiBwcm90
ZWN0ZWQ6Ci0gICAgSXNvbGF0ZWRXb3JsZCgpOworICAgIGV4cGxpY2l0IElzb2xhdGVkV29ybGQo
aW50IGlkKTsKICAgICB+SXNvbGF0ZWRXb3JsZCgpOwogCiBwcml2YXRlOgorICAgIGludCBtX2lk
OworCiAgICAgLy8gVGhlIGJhY2tpbmcgc3RvcmUgZm9yIHRoZSBpc29sYXRlZCB3b3JsZCdzIERP
TSB3cmFwcGVycy4gIFRoaXMgY2xhc3MKICAgICAvLyBkb2Vzbid0IGhhdmUgdmlzaWJpbGl0eSBp
bnRvIHRoZSB3cmFwcGVycy4gIFRoaXMgaGFuZGxlIHNpbXBseSBoZWxwcwogICAgIC8vIG1hbmFn
ZSB0aGVpciBsaWZldGltZS4KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3Y4
L1Y4SXNvbGF0ZWRDb250ZXh0LmNwcCBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3Y4L1Y4SXNv
bGF0ZWRDb250ZXh0LmNwcAppbmRleCA2MjAxNWQ3ODMwMjkxNDljY2I3NzQ1MTkxZDNkM2MxNDhk
MmRjYjJkLi42MjQyODAyYzAxMTZlMjE4YmExNmY1NjNjYTkwMDYwYTM0NGQ4ODVhIDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy92OC9WOElzb2xhdGVkQ29udGV4dC5jcHAKKysr
IGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvdjgvVjhJc29sYXRlZENvbnRleHQuY3BwCkBAIC00
OCw4ICs0OCw4IEBAIHZvaWQgVjhJc29sYXRlZENvbnRleHQ6OmNvbnRleHRXZWFrUmVmZXJlbmNl
Q2FsbGJhY2sodjg6OlBlcnNpc3RlbnQ8djg6OlZhbHVlPiBvCiAgICAgZGVsZXRlIGNvbnRleHQ7
CiB9CiAKLVY4SXNvbGF0ZWRDb250ZXh0OjpWOElzb2xhdGVkQ29udGV4dChWOFByb3h5KiBwcm94
eSwgaW50IGV4dGVuc2lvbkdyb3VwKQotICAgIDogbV93b3JsZChJc29sYXRlZFdvcmxkOjpjcmVh
dGUoKSkKK1Y4SXNvbGF0ZWRDb250ZXh0OjpWOElzb2xhdGVkQ29udGV4dChWOFByb3h5KiBwcm94
eSwgaW50IGV4dGVuc2lvbkdyb3VwLCBpbnQgd29ybGRJZCkKKyAgICA6IG1fd29ybGQoSXNvbGF0
ZWRXb3JsZDo6Y3JlYXRlKHdvcmxkSWQpKQogewogICAgIHY4OjpIYW5kbGVTY29wZSBzY29wZTsK
ICAgICAvLyBGSVhNRTogV2Ugc2hvdWxkIGJlIGNyZWF0aW5nIGEgbmV3IFY4RE9NV2luZG93U2hl
bGwgaGVyZSBpbnN0ZWFkIG9mIHJpcGluZyBvdXQgdGhlIGNvbnRleHQuCkBAIC03NCw3ICs3NCw3
IEBAIFY4SXNvbGF0ZWRDb250ZXh0OjpWOElzb2xhdGVkQ29udGV4dChWOFByb3h5KiBwcm94eSwg
aW50IGV4dGVuc2lvbkdyb3VwKQogICAgIC8vICAgICAgICBjaGFuZ2VzLgogICAgIG1fY29udGV4
dC0+Z2V0KCktPlVzZURlZmF1bHRTZWN1cml0eVRva2VuKCk7CiAKLSAgICBwcm94eS0+ZnJhbWUo
KS0+bG9hZGVyKCktPmNsaWVudCgpLT5kaWRDcmVhdGVJc29sYXRlZFNjcmlwdENvbnRleHQoKTsK
KyAgICBwcm94eS0+ZnJhbWUoKS0+bG9hZGVyKCktPmNsaWVudCgpLT5kaWRDcmVhdGVJc29sYXRl
ZFNjcmlwdENvbnRleHQodGhpcyk7CiB9CiAKIHZvaWQgVjhJc29sYXRlZENvbnRleHQ6OmRlc3Ry
b3koKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvdjgvVjhJc29sYXRlZENv
bnRleHQuaCBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3Y4L1Y4SXNvbGF0ZWRDb250ZXh0LmgK
aW5kZXggNjIyMWRjM2QwOTQ1Y2Y1YmFmODZmMGQyN2UyZjExMTJjZDYzYTEzNC4uNjRkZjFmMjg1
OGQ4ZjRhZTlmODA3MTE3NmEzYjJmY2ZlOTlkYzg2OSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNv
cmUvYmluZGluZ3MvdjgvVjhJc29sYXRlZENvbnRleHQuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9i
aW5kaW5ncy92OC9WOElzb2xhdGVkQ29udGV4dC5oCkBAIC01OSw3ICs1OSw3IEBAIGNsYXNzIFY4
SXNvbGF0ZWRDb250ZXh0IHsKIHB1YmxpYzoKICAgICAvLyBDcmVhdGVzIGFuIGlzb2xhdGVkIHdv
cmxkLiBUbyBkZXN0cm95IGl0LCBjYWxsIGRlc3Ryb3koKS4KICAgICAvLyBUaGlzIHdpbGwgZGVs
ZXRlIHRoZSBpc29sYXRlZCB3b3JsZCB3aGVuIHRoZSBjb250ZXh0IGl0IG93bnMgaXMgR0MnZC4K
LSAgICBWOElzb2xhdGVkQ29udGV4dChWOFByb3h5KiwgaW50IGV4dGVuc2lvbkdyb3VwKTsKKyAg
ICBWOElzb2xhdGVkQ29udGV4dChWOFByb3h5KiwgaW50IGV4dGVuc2lvbkdyb3VwLCBpbnQgd29y
bGRJZCk7CiAgICAgflY4SXNvbGF0ZWRDb250ZXh0KCk7CiAKICAgICAvLyBDYWxsIHRoaXMgdG8g
ZGVzdHJveSB0aGUgaXNvbGF0ZWQgd29ybGQuIEl0IHdpbGwgYmUgZGVsZXRlZCBzb21ldGltZQpk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvdjgvVjhQcm94eS5jcHAgYi9Tb3Vy
Y2UvV2ViQ29yZS9iaW5kaW5ncy92OC9WOFByb3h5LmNwcAppbmRleCBkMjJiNTkzZmY3MjQ5YTcw
MDIzNGQ3Y2NkNzQ5MDVhYmI1YjJmOWNhLi45NTFmNWFhZDg3NGQwYjRlZTAwYmQzZjc5NDgzMzAx
NTVkNzIzN2E0IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy92OC9WOFByb3h5
LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy92OC9WOFByb3h5LmNwcApAQCAtMjU2
LDcgKzI1Niw3IEBAIHZvaWQgVjhQcm94eTo6ZXZhbHVhdGVJbklzb2xhdGVkV29ybGQoaW50IHdv
cmxkSUQsIGNvbnN0IFZlY3RvcjxTY3JpcHRTb3VyY2VDb2RlCiAgICAgICAgIGlmIChpdGVyICE9
IG1faXNvbGF0ZWRXb3JsZHMuZW5kKCkpIHsKICAgICAgICAgICAgIGlzb2xhdGVkQ29udGV4dCA9
IGl0ZXItPnNlY29uZDsKICAgICAgICAgfSBlbHNlIHsKLSAgICAgICAgICAgIGlzb2xhdGVkQ29u
dGV4dCA9IG5ldyBWOElzb2xhdGVkQ29udGV4dCh0aGlzLCBleHRlbnNpb25Hcm91cCk7CisgICAg
ICAgICAgICBpc29sYXRlZENvbnRleHQgPSBuZXcgVjhJc29sYXRlZENvbnRleHQodGhpcywgZXh0
ZW5zaW9uR3JvdXAsIHdvcmxkSUQpOwogICAgICAgICAgICAgaWYgKGlzb2xhdGVkQ29udGV4dC0+
Y29udGV4dCgpLklzRW1wdHkoKSkgewogICAgICAgICAgICAgICAgIGRlbGV0ZSBpc29sYXRlZENv
bnRleHQ7CiAgICAgICAgICAgICAgICAgcmV0dXJuOwpAQCAtMjc3LDcgKzI3Nyw3IEBAIHZvaWQg
VjhQcm94eTo6ZXZhbHVhdGVJbklzb2xhdGVkV29ybGQoaW50IHdvcmxkSUQsIGNvbnN0IFZlY3Rv
cjxTY3JpcHRTb3VyY2VDb2RlCiAgICAgICAgIGlmIChzZWN1cml0eU9yaWdpbkl0ZXIgIT0gbV9p
c29sYXRlZFdvcmxkU2VjdXJpdHlPcmlnaW5zLmVuZCgpKQogICAgICAgICAgICAgaXNvbGF0ZWRD
b250ZXh0LT5zZXRTZWN1cml0eU9yaWdpbihzZWN1cml0eU9yaWdpbkl0ZXItPnNlY29uZCk7CiAg
ICAgfSBlbHNlIHsKLSAgICAgICAgaXNvbGF0ZWRDb250ZXh0ID0gbmV3IFY4SXNvbGF0ZWRDb250
ZXh0KHRoaXMsIGV4dGVuc2lvbkdyb3VwKTsKKyAgICAgICAgaXNvbGF0ZWRDb250ZXh0ID0gbmV3
IFY4SXNvbGF0ZWRDb250ZXh0KHRoaXMsIGV4dGVuc2lvbkdyb3VwLCB3b3JsZElEKTsKICAgICAg
ICAgaWYgKGlzb2xhdGVkQ29udGV4dC0+Y29udGV4dCgpLklzRW1wdHkoKSkgewogICAgICAgICAg
ICAgZGVsZXRlIGlzb2xhdGVkQ29udGV4dDsKICAgICAgICAgICAgIHJldHVybjsKZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9FbXB0eUNsaWVudHMuaCBiL1NvdXJjZS9XZWJDb3Jl
L2xvYWRlci9FbXB0eUNsaWVudHMuaAppbmRleCBhYzQzMGE1N2JhOTFkZmExY2YxODcwYmNjYjQw
NTdmNGU4NmQwMDU2Li43ZTMxY2FlNmE0MzUzMjcxNmZkZjQ5ZGEyMTliMmUyY2RkYzA3YmY5IDEw
MDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvRW1wdHlDbGllbnRzLmgKKysrIGIvU291
cmNlL1dlYkNvcmUvbG9hZGVyL0VtcHR5Q2xpZW50cy5oCkBAIC00Niw2ICs0NiwxMCBAQAogI2lu
Y2x1ZGUgIlJlc291cmNlRXJyb3IuaCIKICNpbmNsdWRlICJTZWFyY2hQb3B1cE1lbnUuaCIKIAor
I2lmIFVTRShWOCkKKyNpbmNsdWRlICJWOElzb2xhdGVkQ29udGV4dC5oIgorI2VuZGlmCisKIC8q
CiAgVGhpcyBmaWxlIGhvbGRzIGVtcHR5IENsaWVudCBzdHVicyBmb3IgdXNlIGJ5IFdlYkNvcmUu
CiAgVmlld2xlc3MgZWxlbWVudCBuZWVkcyB0byBjcmVhdGUgYSBkdW1teSBQYWdlLT5GcmFtZS0+
RnJhbWVWaWV3IHRyZWUgZm9yIHVzZSBpbiBwYXJzaW5nIG9yIGV4ZWN1dGluZyBKYXZhU2NyaXB0
LgpAQCAtMzk3LDcgKzQwMSw3IEBAIHB1YmxpYzoKICNpZiBVU0UoVjgpCiAgICAgdmlydHVhbCB2
b2lkIGRpZENyZWF0ZVNjcmlwdENvbnRleHRGb3JGcmFtZSgpIHsgfQogICAgIHZpcnR1YWwgdm9p
ZCBkaWREZXN0cm95U2NyaXB0Q29udGV4dEZvckZyYW1lKCkgeyB9Ci0gICAgdmlydHVhbCB2b2lk
IGRpZENyZWF0ZUlzb2xhdGVkU2NyaXB0Q29udGV4dCgpIHsgfQorICAgIHZpcnR1YWwgdm9pZCBk
aWRDcmVhdGVJc29sYXRlZFNjcmlwdENvbnRleHQoVjhJc29sYXRlZENvbnRleHQqKSB7IH0KICAg
ICB2aXJ0dWFsIGJvb2wgYWxsb3dTY3JpcHRFeHRlbnNpb24oY29uc3QgU3RyaW5nJiBleHRlbnNp
b25OYW1lLCBpbnQgZXh0ZW5zaW9uR3JvdXApIHsgcmV0dXJuIGZhbHNlOyB9CiAjZW5kaWYKIApk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL0ZyYW1lTG9hZGVyQ2xpZW50LmggYi9T
b3VyY2UvV2ViQ29yZS9sb2FkZXIvRnJhbWVMb2FkZXJDbGllbnQuaAppbmRleCAxNDA4MGVkYWIw
YWZlNGU5OTMxYmU4ODVmYTIyMjk2ODc5MjQwOGRkLi42Nzc2MTcwNWJlMzNiNDg3MDEyNmI2Nzc4
YWJlMTUxYmU5NWMzMzBkIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvRnJhbWVM
b2FkZXJDbGllbnQuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvRnJhbWVMb2FkZXJDbGll
bnQuaApAQCAtODcsNiArODcsOSBAQCBuYW1lc3BhY2UgV2ViQ29yZSB7CiAgICAgY2xhc3MgU2hh
cmVkQnVmZmVyOwogICAgIGNsYXNzIFN0cmluZ1dpdGhEaXJlY3Rpb247CiAgICAgY2xhc3MgU3Vi
c3RpdHV0ZURhdGE7CisjaWYgVVNFKFY4KQorICAgIGNsYXNzIFY4SXNvbGF0ZWRDb250ZXh0Owor
I2VuZGlmCiAgICAgY2xhc3MgV2lkZ2V0OwogCiAgICAgdHlwZWRlZiB2b2lkIChQb2xpY3lDaGVj
a2VyOjoqRnJhbWVQb2xpY3lGdW5jdGlvbikoUG9saWN5QWN0aW9uKTsKQEAgLTI3Myw3ICsyNzYs
NyBAQCBuYW1lc3BhY2UgV2ViQ29yZSB7CiAjaWYgVVNFKFY4KQogICAgICAgICB2aXJ0dWFsIHZv
aWQgZGlkQ3JlYXRlU2NyaXB0Q29udGV4dEZvckZyYW1lKCkgPSAwOwogICAgICAgICB2aXJ0dWFs
IHZvaWQgZGlkRGVzdHJveVNjcmlwdENvbnRleHRGb3JGcmFtZSgpID0gMDsKLSAgICAgICAgdmly
dHVhbCB2b2lkIGRpZENyZWF0ZUlzb2xhdGVkU2NyaXB0Q29udGV4dCgpID0gMDsKKyAgICAgICAg
dmlydHVhbCB2b2lkIGRpZENyZWF0ZUlzb2xhdGVkU2NyaXB0Q29udGV4dChWOElzb2xhdGVkQ29u
dGV4dCopID0gMDsKICAgICAgICAgdmlydHVhbCBib29sIGFsbG93U2NyaXB0RXh0ZW5zaW9uKGNv
bnN0IFN0cmluZyYgZXh0ZW5zaW9uTmFtZSwgaW50IGV4dGVuc2lvbkdyb3VwKSA9IDA7CiAjZW5k
aWYKIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9jaHJvbWl1bS9DaGFuZ2VMb2cgYi9Tb3Vy
Y2UvV2ViS2l0L2Nocm9taXVtL0NoYW5nZUxvZwppbmRleCBkMTczYzk2MDU3ZDg4Y2FjZWRjYmM2
MWFiOWJhNjQ1M2UyZDY3ZDBhLi4yYmI4Njc1MDhhYzk0NjIyMGY4ZjQ3MzFkNzQ2MjEwZmM1OGU3
MzVhIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L2Nocm9taXVtL0NoYW5nZUxvZworKysgYi9T
b3VyY2UvV2ViS2l0L2Nocm9taXVtL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE2IEBACisyMDExLTA4
LTEwICBBYXJvbiBCb29kbWFuICA8YWFAY2hyb21pdW0ub3JnPgorCisgICAgICAgIFBhc3MgYWRk
aXRpb25hbCBkZXRhaWxzIHRvIGNsaWVudCBpbiBkaWRDcmVhdGVJc29sYXRlZENvbnRleHQKKyAg
ICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTY2MDM3CisKKyAg
ICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgKiBwdWJsaWMvV2Vi
RnJhbWVDbGllbnQuaDoKKyAgICAgICAgKFdlYktpdDo6V2ViRnJhbWVDbGllbnQ6OmRpZENyZWF0
ZUlzb2xhdGVkU2NyaXB0Q29udGV4dCk6CisgICAgICAgICogc3JjL0ZyYW1lTG9hZGVyQ2xpZW50
SW1wbC5jcHA6CisgICAgICAgIChXZWJLaXQ6OkZyYW1lTG9hZGVyQ2xpZW50SW1wbDo6ZGlkQ3Jl
YXRlSXNvbGF0ZWRTY3JpcHRDb250ZXh0KToKKyAgICAgICAgKiBzcmMvRnJhbWVMb2FkZXJDbGll
bnRJbXBsLmg6CisKIDIwMTEtMDgtMTAgIERtaXRyeSBMb21vdiAgPGRzbG9tb3ZAZ29vZ2xlLmNv
bT4KICAgICAgICAgCiAgICAgICAgIFtDaHJvbWl1bV0gRGVjb3VwbGUgaW1wbGVtZW50YXRpb24g
b2YgYWxsb3dGaWxlU3lzdGVtLCBvcGVuRmlsZVN5c3RlbSBhbmQgYWxsb3dEYXRhYmFzZSBmcm9t
IFdlYldvcmtlckJhc2UuCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L2Nocm9taXVtL3B1Ymxp
Yy9XZWJGcmFtZUNsaWVudC5oIGIvU291cmNlL1dlYktpdC9jaHJvbWl1bS9wdWJsaWMvV2ViRnJh
bWVDbGllbnQuaAppbmRleCAwYWY5NmNhYWE3NjMzODU4ZWE0MmNlMDhlY2VkYjE3ZTU3NDgxMTRh
Li45OGM5MzE2OWViMmYxMzZlOTQwYTFmMTc1MDE4N2UzNzA2M2M2OWYzIDEwMDY0NAotLS0gYS9T
b3VyY2UvV2ViS2l0L2Nocm9taXVtL3B1YmxpYy9XZWJGcmFtZUNsaWVudC5oCisrKyBiL1NvdXJj
ZS9XZWJLaXQvY2hyb21pdW0vcHVibGljL1dlYkZyYW1lQ2xpZW50LmgKQEAgLTQwLDYgKzQwLDEw
IEBACiAjaW5jbHVkZSAiV2ViVGV4dERpcmVjdGlvbi5oIgogI2luY2x1ZGUgIldlYlVSTEVycm9y
LmgiCiAKKyNpZiBXRUJLSVRfVVNJTkdfVjgKKyNpbmNsdWRlICJ2OC9pbmNsdWRlL3Y4LmgiCisj
ZW5kaWYKKwogbmFtZXNwYWNlIFdlYktpdCB7CiAKIGNsYXNzIFdlYkFwcGxpY2F0aW9uQ2FjaGVI
b3N0OwpAQCAtMzAyLDggKzMwNiwxMSBAQCBwdWJsaWM6CiAKICAgICAvLyBOb3RpZmllcyB0aGF0
IGEgZ2FyYmFnZS1jb2xsZWN0ZWQgY29udGV4dCB3YXMgY3JlYXRlZCAtIGNvbnRlbnQKICAgICAv
LyBzY3JpcHRzLgorICAgIC8vIEZJWE1FOiBSZW1vdmUgdGhpcyBmaXJzdCBvdmVybG9hZCB3aGVu
IENocm9taXVtIHN3aXRjaGVzIHRvIHRoZSBzZWNvbmQuCiAgICAgdmlydHVhbCB2b2lkIGRpZENy
ZWF0ZUlzb2xhdGVkU2NyaXB0Q29udGV4dChXZWJGcmFtZSopIHsgfQotCisjaWYgV0VCS0lUX1VT
SU5HX1Y4CisgICAgdmlydHVhbCB2b2lkIGRpZENyZWF0ZUlzb2xhdGVkU2NyaXB0Q29udGV4dChX
ZWJGcmFtZSosIGludCB3b3JsZElELCB2ODo6SGFuZGxlPHY4OjpDb250ZXh0PikgeyB9CisjZW5k
aWYKIAogICAgIC8vIEdlb21ldHJ5IG5vdGlmaWNhdGlvbnMgLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L2No
cm9taXVtL3NyYy9GcmFtZUxvYWRlckNsaWVudEltcGwuY3BwIGIvU291cmNlL1dlYktpdC9jaHJv
bWl1bS9zcmMvRnJhbWVMb2FkZXJDbGllbnRJbXBsLmNwcAppbmRleCA3MTllYzI0ZjAwOTQ4NDBi
N2UwMWNjNzFhOTI2NzgxMjc0NTAwMWRjLi4xZWNhMDIwYjUwZjZjYjNkMzk0NTUxZTk3ZjA5ZDg2
M2NlODQ3NDRhIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L2Nocm9taXVtL3NyYy9GcmFtZUxv
YWRlckNsaWVudEltcGwuY3BwCisrKyBiL1NvdXJjZS9XZWJLaXQvY2hyb21pdW0vc3JjL0ZyYW1l
TG9hZGVyQ2xpZW50SW1wbC5jcHAKQEAgLTgyLDYgKzgyLDEwIEBACiAjaW5jbHVkZSAiV3JhcHBl
ZFJlc291cmNlUmVzcG9uc2UuaCIKICNpbmNsdWRlIDx3dGYvdGV4dC9DU3RyaW5nLmg+CiAKKyNp
ZiBVU0UoVjgpCisjaW5jbHVkZSAiVjhJc29sYXRlZENvbnRleHQuaCIKKyNlbmRpZgorCiB1c2lu
ZyBuYW1lc3BhY2UgV2ViQ29yZTsKIAogbmFtZXNwYWNlIFdlYktpdCB7CkBAIC0xNDYsMTEgKzE1
MCwxNSBAQCB2b2lkIEZyYW1lTG9hZGVyQ2xpZW50SW1wbDo6ZGlkRGVzdHJveVNjcmlwdENvbnRl
eHRGb3JGcmFtZSgpCiAgICAgICAgIG1fd2ViRnJhbWUtPmNsaWVudCgpLT5kaWREZXN0cm95U2Ny
aXB0Q29udGV4dChtX3dlYkZyYW1lKTsKIH0KIAotdm9pZCBGcmFtZUxvYWRlckNsaWVudEltcGw6
OmRpZENyZWF0ZUlzb2xhdGVkU2NyaXB0Q29udGV4dCgpCisjaWYgVVNFKFY4KQordm9pZCBGcmFt
ZUxvYWRlckNsaWVudEltcGw6OmRpZENyZWF0ZUlzb2xhdGVkU2NyaXB0Q29udGV4dChWOElzb2xh
dGVkQ29udGV4dCogaXNvbGF0ZWRDb250ZXh0KQogewotICAgIGlmIChtX3dlYkZyYW1lLT5jbGll
bnQoKSkKKyAgICBpZiAobV93ZWJGcmFtZS0+Y2xpZW50KCkpIHsKICAgICAgICAgbV93ZWJGcmFt
ZS0+Y2xpZW50KCktPmRpZENyZWF0ZUlzb2xhdGVkU2NyaXB0Q29udGV4dChtX3dlYkZyYW1lKTsK
KyAgICAgICAgbV93ZWJGcmFtZS0+Y2xpZW50KCktPmRpZENyZWF0ZUlzb2xhdGVkU2NyaXB0Q29u
dGV4dChtX3dlYkZyYW1lLCBpc29sYXRlZENvbnRleHQtPndvcmxkKCktPmlkKCksIGlzb2xhdGVk
Q29udGV4dC0+Y29udGV4dCgpKTsKKyAgICB9CiB9CisjZW5kaWYKIAogYm9vbCBGcmFtZUxvYWRl
ckNsaWVudEltcGw6OmFsbG93U2NyaXB0RXh0ZW5zaW9uKGNvbnN0IFN0cmluZyYgZXh0ZW5zaW9u
TmFtZSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBp
bnQgZXh0ZW5zaW9uR3JvdXApCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L2Nocm9taXVtL3Ny
Yy9GcmFtZUxvYWRlckNsaWVudEltcGwuaCBiL1NvdXJjZS9XZWJLaXQvY2hyb21pdW0vc3JjL0Zy
YW1lTG9hZGVyQ2xpZW50SW1wbC5oCmluZGV4IDcxZjdlNTAwN2UzYTNhYTY2ZWM1MDhhNjU5OWFk
NmJiNzQwMjNlNDIuLjZmMTQyNmRkMDU4ODk2NWI3ODZmN2MzZGZlOWNiNzI0YTg3YTc0OWQgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvY2hyb21pdW0vc3JjL0ZyYW1lTG9hZGVyQ2xpZW50SW1w
bC5oCisrKyBiL1NvdXJjZS9XZWJLaXQvY2hyb21pdW0vc3JjL0ZyYW1lTG9hZGVyQ2xpZW50SW1w
bC5oCkBAIC02NSwxMCArNjUsMTIgQEAgcHVibGljOgogICAgIHZpcnR1YWwgdm9pZCBkaWRDcmVh
dGVTY3JpcHRDb250ZXh0Rm9yRnJhbWUoKTsKICAgICB2aXJ0dWFsIHZvaWQgZGlkRGVzdHJveVNj
cmlwdENvbnRleHRGb3JGcmFtZSgpOwogCisjaWYgVVNFKFY4KQogICAgIC8vIEEgY29udGV4dCB1
bnRpZWQgdG8gYSBmcmFtZSB3YXMgY3JlYXRlZCAodGhyb3VnaCBldmFsdWF0ZUluSXNvbGF0ZWRX
b3JsZCkuCiAgICAgLy8gVGhpcyBjb250ZXh0IGlzIG5vdCB0aWVkIHRvIHRoZSBsaWZldGltZSBv
ZiBpdHMgZnJhbWUsIGFuZCBpcyBkZXN0cm95ZWQKICAgICAvLyBpbiBnYXJiYWdlIGNvbGxlY3Rp
b24uCi0gICAgdmlydHVhbCB2b2lkIGRpZENyZWF0ZUlzb2xhdGVkU2NyaXB0Q29udGV4dCgpOwor
ICAgIHZpcnR1YWwgdm9pZCBkaWRDcmVhdGVJc29sYXRlZFNjcmlwdENvbnRleHQoV2ViQ29yZTo6
VjhJc29sYXRlZENvbnRleHQqKTsKKyNlbmRpZgogCiAgICAgLy8gUmV0dXJucyB0cnVlIGlmIHdl
IHNob3VsZCBhbGxvdyB0aGUgZ2l2ZW4gVjggZXh0ZW5zaW9uIHRvIGJlIGFkZGVkIHRvCiAgICAg
Ly8gdGhlIHNjcmlwdCBjb250ZXh0IGF0IHRoZSBjdXJyZW50bHkgbG9hZGluZyBwYWdlIGFuZCBn
aXZlbiBleHRlbnNpb24gZ3JvdXAuCg==
</data>
<flag name="review"
          id="99336"
          type_id="1"
          status="+"
          setter="fishd"
    />
    <flag name="commit-queue"
          id="99337"
          type_id="3"
          status="-"
          setter="fishd"
    />
          </attachment>
      

    </bug>

</bugzilla>