<?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>86576</bug_id>
          
          <creation_ts>2012-05-15 22:33:03 -0700</creation_ts>
          <short_desc>[V8][Refactoring] Support an optional &apos;message&apos; argument for throwTypeError()</short_desc>
          <delta_ts>2012-05-17 10:41:08 -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>WebCore JavaScript</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>
          <dependson>86752</dependson>
          <blocked>84074</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="Kentaro Hara">haraken</reporter>
          <assigned_to name="Kentaro Hara">haraken</assigned_to>
          <cc>abarth</cc>
    
    <cc>eric.carlson</cc>
    
    <cc>feature-media-reviews</cc>
    
    <cc>japhet</cc>
    
    <cc>rakuco</cc>
    
    <cc>webkit.review.bot</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>624985</commentid>
    <comment_count>0</comment_count>
    <who name="Kentaro Hara">haraken</who>
    <bug_when>2012-05-15 22:33:03 -0700</bug_when>
    <thetext>As commented here (https://bugs.webkit.org/show_bug.cgi?id=84074#c5), I am planning to refactor a series of confusing throwError()s. 

As a first step, I replace throwTypeError() with throwTypeError(&quot;Type error&quot;). Actually I think we should use a more descriptive error message than &quot;Type error&quot;, but to keep the behavior of JSC and V8 consistent, this patch just uses &quot;Type error&quot; for now.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>624991</commentid>
    <comment_count>1</comment_count>
      <attachid>142150</attachid>
    <who name="Kentaro Hara">haraken</who>
    <bug_when>2012-05-15 22:39:48 -0700</bug_when>
    <thetext>Created attachment 142150
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>626159</commentid>
    <comment_count>2</comment_count>
    <who name="Adam Barth">abarth</who>
    <bug_when>2012-05-16 19:29:59 -0700</bug_when>
    <thetext>Can we avoid repeating this string everywhere?  Perhaps we should have a header that contains constants for these strings so we don&apos;t typo them somewhere.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>626168</commentid>
    <comment_count>3</comment_count>
    <who name="Kentaro Hara">haraken</who>
    <bug_when>2012-05-16 19:48:44 -0700</bug_when>
    <thetext>(In reply to comment #2)
&gt; Can we avoid repeating this string everywhere?  Perhaps we should have a header that contains constants for these strings so we don&apos;t typo them somewhere.

Or we might want to make the &apos;message&apos; argument optional, like throwTypeError(const char* message = 0). If omitted, it uses &quot;Type error&quot;.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>626212</commentid>
    <comment_count>4</comment_count>
    <who name="Adam Barth">abarth</who>
    <bug_when>2012-05-16 20:48:05 -0700</bug_when>
    <thetext>That&apos;s fine too.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>626530</commentid>
    <comment_count>5</comment_count>
      <attachid>142464</attachid>
    <who name="Kentaro Hara">haraken</who>
    <bug_when>2012-05-17 06:51:47 -0700</bug_when>
    <thetext>Created attachment 142464
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>626563</commentid>
    <comment_count>6</comment_count>
      <attachid>142464</attachid>
    <who name="Adam Barth">abarth</who>
    <bug_when>2012-05-17 07:40:56 -0700</bug_when>
    <thetext>Comment on attachment 142464
Patch

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

&gt; Source/WebCore/bindings/v8/V8Proxy.cpp:614
&gt; -    return throwError(TypeError, &quot;Type error&quot;);
&gt; +    return throwError(TypeError, (message ? message : &quot;Type error&quot;));

You don&apos;t need the outer ( ) around the ? : operator.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>626565</commentid>
    <comment_count>7</comment_count>
      <attachid>142464</attachid>
    <who name="Kentaro Hara">haraken</who>
    <bug_when>2012-05-17 07:42:44 -0700</bug_when>
    <thetext>Comment on attachment 142464
Patch

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

&gt;&gt; Source/WebCore/bindings/v8/V8Proxy.cpp:614
&gt;&gt; +    return throwError(TypeError, (message ? message : &quot;Type error&quot;));
&gt; 
&gt; You don&apos;t need the outer ( ) around the ? : operator.

Yeah, but previously some apple guy told me to put () around ?: for clarification.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>626589</commentid>
    <comment_count>8</comment_count>
      <attachid>142464</attachid>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2012-05-17 08:16:38 -0700</bug_when>
    <thetext>Comment on attachment 142464
Patch

Clearing flags on attachment: 142464

Committed r117448: &lt;http://trac.webkit.org/changeset/117448&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>626590</commentid>
    <comment_count>9</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2012-05-17 08:16:44 -0700</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>626696</commentid>
    <comment_count>10</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2012-05-17 10:39:22 -0700</bug_when>
    <thetext>Re-opened since this is blocked by 86752</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>626699</commentid>
    <comment_count>11</comment_count>
    <who name="Raphael Kubo da Costa (:rakuco)">rakuco</who>
    <bug_when>2012-05-17 10:41:08 -0700</bug_when>
    <thetext>Sorry for the noise, the rollout was for r117449.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>142150</attachid>
            <date>2012-05-15 22:39:48 -0700</date>
            <delta_ts>2012-05-17 06:51:31 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-86576-20120516143947.patch</filename>
            <type>text/plain</type>
            <size>12388</size>
            <attacher name="Kentaro Hara">haraken</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTE3MjE4CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggMjY0NWNlZmQxNGM1NjQx
NTUzNmY2MmUzZTg2ZDA1NjQ5MjcwZTJmNC4uYWQzZTQwNjE5Y2VmNTY0Y2RlZTU3MzJkYzliYjA0
MzUxZTUxNWUxZSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDQ0IEBACisyMDEyLTA1LTE1ICBLZW50
YXJvIEhhcmEgIDxoYXJha2VuQGNocm9taXVtLm9yZz4KKworICAgICAgICBbVjhdW1JlZmFjdG9y
aW5nXSBSZXBsYWNlIHRocm93VHlwZUVycm9yKCkgd2l0aCB0aHJvd1R5cGVFcnJvcigiVHlwZSBl
cnJvciIpCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD04
NjU3NgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIEFz
IGNvbW1lbnRlZCBoZXJlIChodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9
ODQwNzQjYzUpLAorICAgICAgICBJIGFtIHBsYW5uaW5nIHRvIHJlZmFjdG9yIGEgc2VyaWVzIG9m
IGNvbmZ1c2luZyB0aHJvd0Vycm9yKClzLgorCisgICAgICAgIEFzIHRoZSBmaXJzdCBzdGVwLCBJ
IHJlcGxhY2UgdGhyb3dUeXBlRXJyb3IoKSB3aXRoIHRocm93VHlwZUVycm9yKCJUeXBlIGVycm9y
IikuCisgICAgICAgIEFjdHVhbGx5IEkgdGhpbmsgd2Ugc2hvdWxkIHVzZSBhIG1vcmUgZGVzY3Jp
cHRpdmUgZXJyb3IgbWVzc2FnZSB0aGFuICJUeXBlIGVycm9yIiwKKyAgICAgICAgYnV0IHRvIGtl
ZXAgdGhlIGJlaGF2aW9yIG9mIEpTQyBhbmQgVjggY29uc2lzdGVudCwgdGhpcyBwYXRjaCBqdXN0
IHVzZXMgIlR5cGUgZXJyb3IiIGZvciBub3cuCisKKyAgICAgICAgSW4gdGhlIG5leHQgc3RlcCwg
SSB3aWxsIHJlcGxhY2UgdGhyb3dFcnJvcigibWVzc2FnZSIsIFR5cGVFcnJvcikKKyAgICAgICAg
d2l0aCB0aHJvd1R5cGVFcnJvcigibWVzc2FnZSIpLCBhbmQgcmVwbGFjZSB0aHJvd0Vycm9yKCJt
ZXNzYWdlIikKKyAgICAgICAgd2l0aCB0aHJvd1R5cGVFcnJvcigibWVzc2FnZSIpLgorCisgICAg
ICAgIE5vIHRlc3RzLiBObyBjaGFuZ2UgaW4gYmVoYXZpb3IuCisKKyAgICAgICAgKiBiaW5kaW5n
cy9zY3JpcHRzL0NvZGVHZW5lcmF0b3JWOC5wbToKKyAgICAgICAgKEdlbmVyYXRlTm9ybWFsQXR0
clNldHRlcik6CisgICAgICAgIChHZW5lcmF0ZU92ZXJsb2FkZWRGdW5jdGlvbkNhbGxiYWNrKToK
KyAgICAgICAgKEdlbmVyYXRlUGFyYW1ldGVyc0NoZWNrKToKKyAgICAgICAgKiBiaW5kaW5ncy92
OC9WOFByb3h5LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlY4UHJveHk6OnRocm93VHlwZUVycm9y
KToKKyAgICAgICAgKiBiaW5kaW5ncy92OC9WOFByb3h5Lmg6CisgICAgICAgIChWOFByb3h5KToK
KyAgICAgICAgKiBiaW5kaW5ncy92OC9jdXN0b20vVjhEYXRhVmlld0N1c3RvbS5jcHA6CisgICAg
ICAgIChXZWJDb3JlOjpWOERhdGFWaWV3Ojpjb25zdHJ1Y3RvckNhbGxiYWNrKToKKyAgICAgICAg
KiBiaW5kaW5ncy92OC9jdXN0b20vVjhTVkdMZW5ndGhDdXN0b20uY3BwOgorICAgICAgICAoV2Vi
Q29yZTo6VjhTVkdMZW5ndGg6OnZhbHVlQWNjZXNzb3JTZXR0ZXIpOgorICAgICAgICAqIGJpbmRp
bmdzL3Y4L2N1c3RvbS9WOFdlYkdMUmVuZGVyaW5nQ29udGV4dEN1c3RvbS5jcHA6CisgICAgICAg
IChXZWJDb3JlOjpWOFdlYkdMUmVuZGVyaW5nQ29udGV4dDo6Z2V0QXR0YWNoZWRTaGFkZXJzQ2Fs
bGJhY2spOgorICAgICAgICAoV2ViQ29yZTo6VjhXZWJHTFJlbmRlcmluZ0NvbnRleHQ6OmdldFBy
b2dyYW1QYXJhbWV0ZXJDYWxsYmFjayk6CisgICAgICAgIChXZWJDb3JlOjpWOFdlYkdMUmVuZGVy
aW5nQ29udGV4dDo6Z2V0U2hhZGVyUGFyYW1ldGVyQ2FsbGJhY2spOgorICAgICAgICAoV2ViQ29y
ZTo6VjhXZWJHTFJlbmRlcmluZ0NvbnRleHQ6OmdldFVuaWZvcm1DYWxsYmFjayk6CisgICAgICAg
IChXZWJDb3JlOjp2ZXJ0ZXhBdHRyaWJBbmRVbmlmb3JtSGVscGVyZik6CisgICAgICAgIChXZWJD
b3JlOjp1bmlmb3JtSGVscGVyaSk6CisgICAgICAgIChXZWJDb3JlOjp1bmlmb3JtTWF0cml4SGVs
cGVyKToKKwogMjAxMi0wNS0xNSAgSWdvciBPbGl2ZWlyYSAgPGlnb3Iub0BzaXNhLnNhbXN1bmcu
Y29tPgogCiAgICAgICAgIHJlZ3Jlc3Npb24oMTExNjM5KTogSXNzdWUgd2l0aCBzaW11bHRhbmVv
dXMgQ1NTIGFuaW1hdGlvbnMKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3Nj
cmlwdHMvQ29kZUdlbmVyYXRvclY4LnBtIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0
cy9Db2RlR2VuZXJhdG9yVjgucG0KaW5kZXggNzAyYWI0NDBjNTZmZTNlN2Y3ZTEyNThlN2UxZGEy
MmYxZDM0YjU0ZS4uMzA5OGM0NDczNTAwMTY4ZWMzMjAwYTY4MmQ1ODA3ODkxM2M2ZTAyMyAxMDA2
NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy9Db2RlR2VuZXJhdG9yVjgu
cG0KKysrIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy9Db2RlR2VuZXJhdG9yVjgu
cG0KQEAgLTEwNDYsNyArMTA0Niw3IEBAIHN1YiBHZW5lcmF0ZU5vcm1hbEF0dHJTZXR0ZXIKICAg
ICAgICAgbXkgJGFyZ1R5cGUgPSBHZXRUeXBlRnJvbVNpZ25hdHVyZSgkYXR0cmlidXRlLT5zaWdu
YXR1cmUpOwogICAgICAgICBpZiAoSXNXcmFwcGVyVHlwZSgkYXJnVHlwZSkpIHsKICAgICAgICAg
ICAgIHB1c2goQGltcGxDb250ZW50RGVjbHMsICIgICAgaWYgKCFpc1VuZGVmaW5lZE9yTnVsbCh2
YWx1ZSkgJiYgIVY4JHthcmdUeXBlfTo6SGFzSW5zdGFuY2UodmFsdWUpKSB7XG4iKTsKLSAgICAg
ICAgICAgIHB1c2goQGltcGxDb250ZW50RGVjbHMsICIgICAgICAgIFY4UHJveHk6OnRocm93VHlw
ZUVycm9yKCk7XG4iKTsKKyAgICAgICAgICAgIHB1c2goQGltcGxDb250ZW50RGVjbHMsICIgICAg
ICAgIFY4UHJveHk6OnRocm93VHlwZUVycm9yKFwiVHlwZSBlcnJvclwiKTtcbiIpOwogICAgICAg
ICAgICAgcHVzaChAaW1wbENvbnRlbnREZWNscywgIiAgICAgICAgcmV0dXJuO1xuIik7CiAgICAg
ICAgICAgICBwdXNoKEBpbXBsQ29udGVudERlY2xzLCAiICAgIH1cbiIpOwogICAgICAgICB9CkBA
IC0xMzQ2LDcgKzEzNDYsNyBAQCBFTkQKICAgICAgICAgcHVzaChAaW1wbENvbnRlbnREZWNscywg
IiAgICAgICAgcmV0dXJuICR7bmFtZX0kb3ZlcmxvYWQtPntvdmVybG9hZEluZGV4fUNhbGxiYWNr
KGFyZ3MpO1xuIik7CiAgICAgfQogICAgIHB1c2goQGltcGxDb250ZW50RGVjbHMsIDw8RU5EKTsK
LSAgICBWOFByb3h5Ojp0aHJvd1R5cGVFcnJvcigpOworICAgIFY4UHJveHk6OnRocm93VHlwZUVy
cm9yKFwiVHlwZSBlcnJvclwiKTsKICAgICByZXR1cm4gbm90SGFuZGxlZEJ5SW50ZXJjZXB0b3Io
KTsKIEVORAogICAgIHB1c2goQGltcGxDb250ZW50RGVjbHMsICJ9XG5cbiIpOwpAQCAtMTY1OCw3
ICsxNjU4LDcgQEAgc3ViIEdlbmVyYXRlUGFyYW1ldGVyc0NoZWNrCiAgICAgICAgICAgICAgICAg
bXkgJGFyZ1R5cGUgPSBHZXRUeXBlRnJvbVNpZ25hdHVyZSgkcGFyYW1ldGVyKTsKICAgICAgICAg
ICAgICAgICBpZiAoSXNXcmFwcGVyVHlwZSgkYXJnVHlwZSkpIHsKICAgICAgICAgICAgICAgICAg
ICAgJHBhcmFtZXRlckNoZWNrU3RyaW5nIC49ICIgICAgaWYgKGFyZ3MuTGVuZ3RoKCkgPiAkcGFy
YW1JbmRleCAmJiAhaXNVbmRlZmluZWRPck51bGwoJGFyZ1ZhbHVlKSAmJiAhVjgke2FyZ1R5cGV9
OjpIYXNJbnN0YW5jZSgkYXJnVmFsdWUpKSB7XG4iOwotICAgICAgICAgICAgICAgICAgICAkcGFy
YW1ldGVyQ2hlY2tTdHJpbmcgLj0gIiAgICAgICAgVjhQcm94eTo6dGhyb3dUeXBlRXJyb3IoKTtc
biI7CisgICAgICAgICAgICAgICAgICAgICRwYXJhbWV0ZXJDaGVja1N0cmluZyAuPSAiICAgICAg
ICBWOFByb3h5Ojp0aHJvd1R5cGVFcnJvcihcIlR5cGUgZXJyb3JcIik7XG4iOwogICAgICAgICAg
ICAgICAgICAgICAkcGFyYW1ldGVyQ2hlY2tTdHJpbmcgLj0gIiAgICAgICAgcmV0dXJuIG5vdEhh
bmRsZWRCeUludGVyY2VwdG9yKCk7XG4iOwogICAgICAgICAgICAgICAgICAgICAkcGFyYW1ldGVy
Q2hlY2tTdHJpbmcgLj0gIiAgICB9XG4iOwogICAgICAgICAgICAgICAgIH0KZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3Y4L1Y4UHJveHkuY3BwIGIvU291cmNlL1dlYkNvcmUv
YmluZGluZ3MvdjgvVjhQcm94eS5jcHAKaW5kZXggZGI3MzM4OThiMjZmYTliMzRiZDg3NTE0MjZj
NjhmNWZjZDdkNWMxZS4uZDhjNjRiODQ3M2UyYmE1ZTEwOWZkNjcxYmQ4MjYwZTZlYmQ0OTllZCAx
MDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvdjgvVjhQcm94eS5jcHAKKysrIGIv
U291cmNlL1dlYkNvcmUvYmluZGluZ3MvdjgvVjhQcm94eS5jcHAKQEAgLTYwOSw5ICs2MDksOSBA
QCB2ODo6SGFuZGxlPHY4OjpWYWx1ZT4gVjhQcm94eTo6dGhyb3dFcnJvcihFcnJvclR5cGUgdHlw
ZSwgY29uc3QgY2hhciogbWVzc2FnZSwgdgogICAgIH0KIH0KIAotdjg6OkhhbmRsZTx2ODo6VmFs
dWU+IFY4UHJveHk6OnRocm93VHlwZUVycm9yKCkKK3Y4OjpIYW5kbGU8djg6OlZhbHVlPiBWOFBy
b3h5Ojp0aHJvd1R5cGVFcnJvcihjb25zdCBjaGFyKiBtZXNzYWdlKQogewotICAgIHJldHVybiB0
aHJvd0Vycm9yKFR5cGVFcnJvciwgIlR5cGUgZXJyb3IiKTsKKyAgICByZXR1cm4gdGhyb3dFcnJv
cihUeXBlRXJyb3IsIG1lc3NhZ2UpOwogfQogCiB2ODo6SGFuZGxlPHY4OjpWYWx1ZT4gVjhQcm94
eTo6dGhyb3dOb3RFbm91Z2hBcmd1bWVudHNFcnJvcigpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
Q29yZS9iaW5kaW5ncy92OC9WOFByb3h5LmggYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy92OC9W
OFByb3h5LmgKaW5kZXggNjAxODMxZGMyNzY3N2U1ZmU4OWE2ZTcwMjJiZDlhNDBmY2VkOWE3OC4u
ZTdlYWNmNGI4MDFkZjEwZjI1NGNlMWEzYjA3NGU1MTM2YWE1YWVhOCAxMDA2NDQKLS0tIGEvU291
cmNlL1dlYkNvcmUvYmluZGluZ3MvdjgvVjhQcm94eS5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2Jp
bmRpbmdzL3Y4L1Y4UHJveHkuaApAQCAtMjM5LDcgKzIzOSw3IEBAIG5hbWVzcGFjZSBXZWJDb3Jl
IHsKICAgICAgICAgc3RhdGljIHY4OjpIYW5kbGU8djg6OlZhbHVlPiB0aHJvd0Vycm9yKEVycm9y
VHlwZSwgY29uc3QgY2hhciogbWVzc2FnZSwgdjg6Oklzb2xhdGUqID0gMCk7CiAKICAgICAgICAg
Ly8gSGVscGVycyBmb3IgdGhyb3dpbmcgc3ludGF4IGFuZCB0eXBlIGVycm9ycyB3aXRoIHByZWRl
ZmluZWQgbWVzc2FnZXMuCi0gICAgICAgIHN0YXRpYyB2ODo6SGFuZGxlPHY4OjpWYWx1ZT4gdGhy
b3dUeXBlRXJyb3IoKTsKKyAgICAgICAgc3RhdGljIHY4OjpIYW5kbGU8djg6OlZhbHVlPiB0aHJv
d1R5cGVFcnJvcihjb25zdCBjaGFyKik7CiAgICAgICAgIHN0YXRpYyB2ODo6SGFuZGxlPHY4OjpW
YWx1ZT4gdGhyb3dOb3RFbm91Z2hBcmd1bWVudHNFcnJvcigpOwogCiAgICAgICAgIHY4OjpMb2Nh
bDx2ODo6Q29udGV4dD4gY29udGV4dCgpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYmlu
ZGluZ3MvdjgvY3VzdG9tL1Y4RGF0YVZpZXdDdXN0b20uY3BwIGIvU291cmNlL1dlYkNvcmUvYmlu
ZGluZ3MvdjgvY3VzdG9tL1Y4RGF0YVZpZXdDdXN0b20uY3BwCmluZGV4IGJhNWY4YzQ1OGQ1NWFh
NDJjZjIyMDMzNzIzYjUxNjg5N2ZmN2M4NWMuLjFhOWI5MDcxODk5MGZhNmIwY2FhZDY3NmE4NDk5
OGE1MTBlOTg0N2EgMTAwNzU1Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3Y4L2N1c3Rv
bS9WOERhdGFWaWV3Q3VzdG9tLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy92OC9j
dXN0b20vVjhEYXRhVmlld0N1c3RvbS5jcHAKQEAgLTUzLDcgKzUzLDcgQEAgdjg6OkhhbmRsZTx2
ODo6VmFsdWU+IFY4RGF0YVZpZXc6OmNvbnN0cnVjdG9yQ2FsbGJhY2soY29uc3Qgdjg6OkFyZ3Vt
ZW50cyYgYXJncykKICAgICAgICAgcmV0dXJuIGFyZ3MuSG9sZGVyKCk7CiAgICAgfQogICAgIGlm
IChhcmdzWzBdLT5Jc051bGwoKSB8fCAhVjhBcnJheUJ1ZmZlcjo6SGFzSW5zdGFuY2UoYXJnc1sw
XSkpCi0gICAgICAgIHJldHVybiBWOFByb3h5Ojp0aHJvd1R5cGVFcnJvcigpOworICAgICAgICBy
ZXR1cm4gVjhQcm94eTo6dGhyb3dUeXBlRXJyb3IoIlR5cGUgZXJyb3IiKTsKICAgICByZXR1cm4g
Y29uc3RydWN0V2ViR0xBcnJheVdpdGhBcnJheUJ1ZmZlckFyZ3VtZW50PERhdGFWaWV3LCBjaGFy
PihhcmdzLCAmaW5mbywgdjg6OmtFeHRlcm5hbEJ5dGVBcnJheSwgZmFsc2UpOwogfQogCmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy92OC9jdXN0b20vVjhTVkdMZW5ndGhDdXN0
b20uY3BwIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvdjgvY3VzdG9tL1Y4U1ZHTGVuZ3RoQ3Vz
dG9tLmNwcAppbmRleCA4N2UzMTE0MjE4NzdiNWJlMjBiYWQ3N2ViY2JmMGQ2ZjczM2Q0NzA0Li44
MGQyYzMyMTVkZDg4YmQzNmMzZTRlOWRkMmNlZmM0M2M5YTk4ODdjIDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViQ29yZS9iaW5kaW5ncy92OC9jdXN0b20vVjhTVkdMZW5ndGhDdXN0b20uY3BwCisrKyBi
L1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3Y4L2N1c3RvbS9WOFNWR0xlbmd0aEN1c3RvbS5jcHAK
QEAgLTY2LDcgKzY2LDcgQEAgdm9pZCBWOFNWR0xlbmd0aDo6dmFsdWVBY2Nlc3NvclNldHRlcih2
ODo6TG9jYWw8djg6OlN0cmluZz4gbmFtZSwgdjg6OkxvY2FsPHY4OjoKICAgICB9CiAKICAgICBp
ZiAoIWlzVW5kZWZpbmVkT3JOdWxsKHZhbHVlKSAmJiAhdmFsdWUtPklzTnVtYmVyKCkgJiYgIXZh
bHVlLT5Jc0Jvb2xlYW4oKSkgewotICAgICAgICBWOFByb3h5Ojp0aHJvd1R5cGVFcnJvcigpOwor
ICAgICAgICBWOFByb3h5Ojp0aHJvd1R5cGVFcnJvcigiVHlwZSBlcnJvciIpOwogICAgICAgICBy
ZXR1cm47CiAgICAgfQogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy92OC9j
dXN0b20vVjhXZWJHTFJlbmRlcmluZ0NvbnRleHRDdXN0b20uY3BwIGIvU291cmNlL1dlYkNvcmUv
YmluZGluZ3MvdjgvY3VzdG9tL1Y4V2ViR0xSZW5kZXJpbmdDb250ZXh0Q3VzdG9tLmNwcAppbmRl
eCA0N2EzMmU1OTNhZmQ4ZjdkNmZhMGFmZjI1YmYyOWM0OGFmYjUxYjNlLi41ZjE1ZmE3NGYyNTZm
MGFmNjE4NTdkZTUwMDlmODc3MDc1MGE4NTEwIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9i
aW5kaW5ncy92OC9jdXN0b20vVjhXZWJHTFJlbmRlcmluZ0NvbnRleHRDdXN0b20uY3BwCisrKyBi
L1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3Y4L2N1c3RvbS9WOFdlYkdMUmVuZGVyaW5nQ29udGV4
dEN1c3RvbS5jcHAKQEAgLTI3NCw3ICsyNzQsNyBAQCB2ODo6SGFuZGxlPHY4OjpWYWx1ZT4gVjhX
ZWJHTFJlbmRlcmluZ0NvbnRleHQ6OmdldEF0dGFjaGVkU2hhZGVyc0NhbGxiYWNrKGNvbnN0CiAg
ICAgRXhjZXB0aW9uQ29kZSBlYyA9IDA7CiAgICAgV2ViR0xSZW5kZXJpbmdDb250ZXh0KiBjb250
ZXh0ID0gVjhXZWJHTFJlbmRlcmluZ0NvbnRleHQ6OnRvTmF0aXZlKGFyZ3MuSG9sZGVyKCkpOwog
ICAgIGlmIChhcmdzLkxlbmd0aCgpID4gMCAmJiAhaXNVbmRlZmluZWRPck51bGwoYXJnc1swXSkg
JiYgIVY4V2ViR0xQcm9ncmFtOjpIYXNJbnN0YW5jZShhcmdzWzBdKSkgewotICAgICAgICBWOFBy
b3h5Ojp0aHJvd1R5cGVFcnJvcigpOworICAgICAgICBWOFByb3h5Ojp0aHJvd1R5cGVFcnJvcigi
VHlwZSBlcnJvciIpOwogICAgICAgICByZXR1cm4gbm90SGFuZGxlZEJ5SW50ZXJjZXB0b3IoKTsK
ICAgICB9CiAgICAgV2ViR0xQcm9ncmFtKiBwcm9ncmFtID0gVjhXZWJHTFByb2dyYW06Okhhc0lu
c3RhbmNlKGFyZ3NbMF0pID8gVjhXZWJHTFByb2dyYW06OnRvTmF0aXZlKHY4OjpIYW5kbGU8djg6
Ok9iamVjdD46OkNhc3QoYXJnc1swXSkpIDogMDsKQEAgLTM1Nyw3ICszNTcsNyBAQCB2ODo6SGFu
ZGxlPHY4OjpWYWx1ZT4gVjhXZWJHTFJlbmRlcmluZ0NvbnRleHQ6OmdldFByb2dyYW1QYXJhbWV0
ZXJDYWxsYmFjayhjb25zdAogICAgIEV4Y2VwdGlvbkNvZGUgZWMgPSAwOwogICAgIFdlYkdMUmVu
ZGVyaW5nQ29udGV4dCogY29udGV4dCA9IFY4V2ViR0xSZW5kZXJpbmdDb250ZXh0Ojp0b05hdGl2
ZShhcmdzLkhvbGRlcigpKTsKICAgICBpZiAoYXJncy5MZW5ndGgoKSA+IDAgJiYgIWlzVW5kZWZp
bmVkT3JOdWxsKGFyZ3NbMF0pICYmICFWOFdlYkdMUHJvZ3JhbTo6SGFzSW5zdGFuY2UoYXJnc1sw
XSkpIHsKLSAgICAgICAgVjhQcm94eTo6dGhyb3dUeXBlRXJyb3IoKTsKKyAgICAgICAgVjhQcm94
eTo6dGhyb3dUeXBlRXJyb3IoIlR5cGUgZXJyb3IiKTsKICAgICAgICAgcmV0dXJuIG5vdEhhbmRs
ZWRCeUludGVyY2VwdG9yKCk7CiAgICAgfQogICAgIFdlYkdMUHJvZ3JhbSogcHJvZ3JhbSA9IFY4
V2ViR0xQcm9ncmFtOjpIYXNJbnN0YW5jZShhcmdzWzBdKSA/IFY4V2ViR0xQcm9ncmFtOjp0b05h
dGl2ZSh2ODo6SGFuZGxlPHY4OjpPYmplY3Q+OjpDYXN0KGFyZ3NbMF0pKSA6IDA7CkBAIC0zODYs
NyArMzg2LDcgQEAgdjg6OkhhbmRsZTx2ODo6VmFsdWU+IFY4V2ViR0xSZW5kZXJpbmdDb250ZXh0
OjpnZXRTaGFkZXJQYXJhbWV0ZXJDYWxsYmFjayhjb25zdAogICAgIEV4Y2VwdGlvbkNvZGUgZWMg
PSAwOwogICAgIFdlYkdMUmVuZGVyaW5nQ29udGV4dCogY29udGV4dCA9IFY4V2ViR0xSZW5kZXJp
bmdDb250ZXh0Ojp0b05hdGl2ZShhcmdzLkhvbGRlcigpKTsKICAgICBpZiAoYXJncy5MZW5ndGgo
KSA+IDAgJiYgIWlzVW5kZWZpbmVkT3JOdWxsKGFyZ3NbMF0pICYmICFWOFdlYkdMU2hhZGVyOjpI
YXNJbnN0YW5jZShhcmdzWzBdKSkgewotICAgICAgICBWOFByb3h5Ojp0aHJvd1R5cGVFcnJvcigp
OworICAgICAgICBWOFByb3h5Ojp0aHJvd1R5cGVFcnJvcigiVHlwZSBlcnJvciIpOwogICAgICAg
ICByZXR1cm4gbm90SGFuZGxlZEJ5SW50ZXJjZXB0b3IoKTsKICAgICB9CiAgICAgV2ViR0xTaGFk
ZXIqIHNoYWRlciA9IFY4V2ViR0xTaGFkZXI6Okhhc0luc3RhbmNlKGFyZ3NbMF0pID8gVjhXZWJH
TFNoYWRlcjo6dG9OYXRpdmUodjg6OkhhbmRsZTx2ODo6T2JqZWN0Pjo6Q2FzdChhcmdzWzBdKSkg
OiAwOwpAQCAtNDI5LDEzICs0MjksMTMgQEAgdjg6OkhhbmRsZTx2ODo6VmFsdWU+IFY4V2ViR0xS
ZW5kZXJpbmdDb250ZXh0OjpnZXRVbmlmb3JtQ2FsbGJhY2soY29uc3Qgdjg6OkFyZ3UKICAgICBF
eGNlcHRpb25Db2RlIGVjID0gMDsKICAgICBXZWJHTFJlbmRlcmluZ0NvbnRleHQqIGNvbnRleHQg
PSBWOFdlYkdMUmVuZGVyaW5nQ29udGV4dDo6dG9OYXRpdmUoYXJncy5Ib2xkZXIoKSk7CiAgICAg
aWYgKGFyZ3MuTGVuZ3RoKCkgPiAwICYmICFpc1VuZGVmaW5lZE9yTnVsbChhcmdzWzBdKSAmJiAh
VjhXZWJHTFByb2dyYW06Okhhc0luc3RhbmNlKGFyZ3NbMF0pKSB7Ci0gICAgICAgIFY4UHJveHk6
OnRocm93VHlwZUVycm9yKCk7CisgICAgICAgIFY4UHJveHk6OnRocm93VHlwZUVycm9yKCJUeXBl
IGVycm9yIik7CiAgICAgICAgIHJldHVybiBub3RIYW5kbGVkQnlJbnRlcmNlcHRvcigpOwogICAg
IH0KICAgICBXZWJHTFByb2dyYW0qIHByb2dyYW0gPSBWOFdlYkdMUHJvZ3JhbTo6SGFzSW5zdGFu
Y2UoYXJnc1swXSkgPyBWOFdlYkdMUHJvZ3JhbTo6dG9OYXRpdmUodjg6OkhhbmRsZTx2ODo6T2Jq
ZWN0Pjo6Q2FzdChhcmdzWzBdKSkgOiAwOwogCiAgICAgaWYgKGFyZ3MuTGVuZ3RoKCkgPiAxICYm
ICFpc1VuZGVmaW5lZE9yTnVsbChhcmdzWzFdKSAmJiAhVjhXZWJHTFVuaWZvcm1Mb2NhdGlvbjo6
SGFzSW5zdGFuY2UoYXJnc1sxXSkpIHsKLSAgICAgICAgVjhQcm94eTo6dGhyb3dUeXBlRXJyb3Io
KTsKKyAgICAgICAgVjhQcm94eTo6dGhyb3dUeXBlRXJyb3IoIlR5cGUgZXJyb3IiKTsKICAgICAg
ICAgcmV0dXJuIG5vdEhhbmRsZWRCeUludGVyY2VwdG9yKCk7CiAgICAgfQogICAgIGJvb2wgb2sg
PSBmYWxzZTsKQEAgLTUwNSw3ICs1MDUsNyBAQCBzdGF0aWMgdjg6OkhhbmRsZTx2ODo6VmFsdWU+
IHZlcnRleEF0dHJpYkFuZFVuaWZvcm1IZWxwZXJmKGNvbnN0IHY4OjpBcmd1bWVudHMmCiAgICAg
ICAgIGluZGV4ID0gdG9JbnQzMihhcmdzWzBdKTsKICAgICBlbHNlIHsKICAgICAgICAgaWYgKGFy
Z3MuTGVuZ3RoKCkgPiAwICYmICFpc1VuZGVmaW5lZE9yTnVsbChhcmdzWzBdKSAmJiAhVjhXZWJH
TFVuaWZvcm1Mb2NhdGlvbjo6SGFzSW5zdGFuY2UoYXJnc1swXSkpIHsKLSAgICAgICAgICAgIFY4
UHJveHk6OnRocm93VHlwZUVycm9yKCk7CisgICAgICAgICAgICBWOFByb3h5Ojp0aHJvd1R5cGVF
cnJvcigiVHlwZSBlcnJvciIpOwogICAgICAgICAgICAgcmV0dXJuIG5vdEhhbmRsZWRCeUludGVy
Y2VwdG9yKCk7CiAgICAgICAgIH0KICAgICAgICAgbG9jYXRpb24gPSB0b1dlYkdMVW5pZm9ybUxv
Y2F0aW9uKGFyZ3NbMF0sIG9rKTsKQEAgLTUzNCw3ICs1MzQsNyBAQCBzdGF0aWMgdjg6OkhhbmRs
ZTx2ODo6VmFsdWU+IHZlcnRleEF0dHJpYkFuZFVuaWZvcm1IZWxwZXJmKGNvbnN0IHY4OjpBcmd1
bWVudHMmCiAgICAgfQogCiAgICAgaWYgKGFyZ3NbMV0uSXNFbXB0eSgpIHx8ICFhcmdzWzFdLT5J
c0FycmF5KCkpIHsKLSAgICAgICAgVjhQcm94eTo6dGhyb3dUeXBlRXJyb3IoKTsKKyAgICAgICAg
VjhQcm94eTo6dGhyb3dUeXBlRXJyb3IoIlR5cGUgZXJyb3IiKTsKICAgICAgICAgcmV0dXJuIG5v
dEhhbmRsZWRCeUludGVyY2VwdG9yKCk7CiAgICAgfQogICAgIHY4OjpIYW5kbGU8djg6OkFycmF5
PiBhcnJheSA9CkBAIC01ODEsNyArNTgxLDcgQEAgc3RhdGljIHY4OjpIYW5kbGU8djg6OlZhbHVl
PiB1bmlmb3JtSGVscGVyaShjb25zdCB2ODo6QXJndW1lbnRzJiBhcmdzLAogCiAgICAgV2ViR0xS
ZW5kZXJpbmdDb250ZXh0KiBjb250ZXh0ID0gVjhXZWJHTFJlbmRlcmluZ0NvbnRleHQ6OnRvTmF0
aXZlKGFyZ3MuSG9sZGVyKCkpOwogICAgIGlmIChhcmdzLkxlbmd0aCgpID4gMCAmJiAhaXNVbmRl
ZmluZWRPck51bGwoYXJnc1swXSkgJiYgIVY4V2ViR0xVbmlmb3JtTG9jYXRpb246Okhhc0luc3Rh
bmNlKGFyZ3NbMF0pKSB7Ci0gICAgICAgIFY4UHJveHk6OnRocm93VHlwZUVycm9yKCk7CisgICAg
ICAgIFY4UHJveHk6OnRocm93VHlwZUVycm9yKCJUeXBlIGVycm9yIik7CiAgICAgICAgIHJldHVy
biBub3RIYW5kbGVkQnlJbnRlcmNlcHRvcigpOwogICAgIH0KICAgICBib29sIG9rID0gZmFsc2U7
CkBAIC02MDQsNyArNjA0LDcgQEAgc3RhdGljIHY4OjpIYW5kbGU8djg6OlZhbHVlPiB1bmlmb3Jt
SGVscGVyaShjb25zdCB2ODo6QXJndW1lbnRzJiBhcmdzLAogICAgIH0KIAogICAgIGlmIChhcmdz
WzFdLklzRW1wdHkoKSB8fCAhYXJnc1sxXS0+SXNBcnJheSgpKSB7Ci0gICAgICAgIFY4UHJveHk6
OnRocm93VHlwZUVycm9yKCk7CisgICAgICAgIFY4UHJveHk6OnRocm93VHlwZUVycm9yKCJUeXBl
IGVycm9yIik7CiAgICAgICAgIHJldHVybiBub3RIYW5kbGVkQnlJbnRlcmNlcHRvcigpOwogICAg
IH0KICAgICB2ODo6SGFuZGxlPHY4OjpBcnJheT4gYXJyYXkgPQpAQCAtNjk2LDcgKzY5Niw3IEBA
IHN0YXRpYyB2ODo6SGFuZGxlPHY4OjpWYWx1ZT4gdW5pZm9ybU1hdHJpeEhlbHBlcihjb25zdCB2
ODo6QXJndW1lbnRzJiBhcmdzLAogICAgIFdlYkdMUmVuZGVyaW5nQ29udGV4dCogY29udGV4dCA9
IFY4V2ViR0xSZW5kZXJpbmdDb250ZXh0Ojp0b05hdGl2ZShhcmdzLkhvbGRlcigpKTsKIAogICAg
IGlmIChhcmdzLkxlbmd0aCgpID4gMCAmJiAhaXNVbmRlZmluZWRPck51bGwoYXJnc1swXSkgJiYg
IVY4V2ViR0xVbmlmb3JtTG9jYXRpb246Okhhc0luc3RhbmNlKGFyZ3NbMF0pKSB7Ci0gICAgICAg
IFY4UHJveHk6OnRocm93VHlwZUVycm9yKCk7CisgICAgICAgIFY4UHJveHk6OnRocm93VHlwZUVy
cm9yKCJUeXBlIGVycm9yIik7CiAgICAgICAgIHJldHVybiBub3RIYW5kbGVkQnlJbnRlcmNlcHRv
cigpOwogICAgIH0KICAgICBib29sIG9rID0gZmFsc2U7CkBAIC03MTksNyArNzE5LDcgQEAgc3Rh
dGljIHY4OjpIYW5kbGU8djg6OlZhbHVlPiB1bmlmb3JtTWF0cml4SGVscGVyKGNvbnN0IHY4OjpB
cmd1bWVudHMmIGFyZ3MsCiAgICAgfQogCiAgICAgaWYgKGFyZ3NbMl0uSXNFbXB0eSgpIHx8ICFh
cmdzWzJdLT5Jc0FycmF5KCkpIHsKLSAgICAgICAgVjhQcm94eTo6dGhyb3dUeXBlRXJyb3IoKTsK
KyAgICAgICAgVjhQcm94eTo6dGhyb3dUeXBlRXJyb3IoIlR5cGUgZXJyb3IiKTsKICAgICAgICAg
cmV0dXJuIG5vdEhhbmRsZWRCeUludGVyY2VwdG9yKCk7CiAgICAgfQogICAgIHY4OjpIYW5kbGU8
djg6OkFycmF5PiBhcnJheSA9Cg==
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>142464</attachid>
            <date>2012-05-17 06:51:47 -0700</date>
            <delta_ts>2012-05-17 08:16:38 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-86576-20120517225145.patch</filename>
            <type>text/plain</type>
            <size>17369</size>
            <attacher name="Kentaro Hara">haraken</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTE3NDIxCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggNTk4NDRkZTIzY2Y5YTI1
ZDI4OWEwYjRjYzQzNDJlOWVmMzliZDEzMS4uNzk0YTc5OTVlY2Q5YjViZDJiZDNkN2Y4YTBjZGQ1
MTY1Mzg5ZDBmNyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDUxIEBACisyMDEyLTA1LTE3ICBLZW50
YXJvIEhhcmEgIDxoYXJha2VuQGNocm9taXVtLm9yZz4KKworICAgICAgICBbVjhdW1JlZmFjdG9y
aW5nXSBTdXBwb3J0IGFuIG9wdGlvbmFsICdtZXNzYWdlJyBhcmd1bWVudCBmb3IgdGhyb3dUeXBl
RXJyb3IoKQorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9
ODY1NzYKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBB
cyBjb21tZW50ZWQgaW4gaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTg0
MDc0I2M1LAorICAgICAgICBJIGFtIHBsYW5uaW5nIHRvIHJlZmFjdG9yIGEgc2VyaWVzIG9mIGNv
bmZ1c2luZyB0aHJvd0Vycm9yKClzIGludG8KKyAgICAgICAgdGhyb3dFcnJvcigpIGFuZCB0aHJv
d1R5cGVFcnJvcigpLgorCisgICAgICAgIFRoaXMgcGF0Y2ggc3VwcG9ydHMgYW4gb3B0aW9uYWwg
J21lc3NhZ2UnIGFyZ3VtZW50IGZvciBWOFByb3h5Ojp0aHJvd1R5cGVFcnJvcigpLgorICAgICAg
ICBBbHNvIHRoaXMgcGF0Y2ggcmVwbGFjZXMgdGhyb3dFcnJvcigibWVzc2FnZSIsIFY4UHJveHk6
OlR5cGVFcnJvcikgaW4gY3VzdG9tIGJpbmRpbmdzCisgICAgICAgIHdpdGggVjhQcm94eTo6dGhy
b3dUeXBlRXJyb3IoIm1lc3NhZ2UiKS4KKworICAgICAgICBObyB0ZXN0cy4gTm8gY2hhbmdlIGlu
IGJlaGF2aW9yLgorCisgICAgICAgICogYmluZGluZ3MvdjgvVjhQcm94eS5jcHA6CisgICAgICAg
IChXZWJDb3JlOjpWOFByb3h5Ojp0aHJvd1R5cGVFcnJvcik6CisgICAgICAgICogYmluZGluZ3Mv
djgvVjhQcm94eS5oOgorICAgICAgICAoVjhQcm94eSk6CisgICAgICAgICogYmluZGluZ3Mvdjgv
Y3VzdG9tL1Y4QXJyYXlCdWZmZXJWaWV3Q3VzdG9tLmg6CisgICAgICAgIChXZWJDb3JlOjpjb25z
dHJ1Y3RXZWJHTEFycmF5KToKKyAgICAgICAgKiBiaW5kaW5ncy92OC9jdXN0b20vVjhBdWRpb0Nv
bnRleHRDdXN0b20uY3BwOgorICAgICAgICAoV2ViQ29yZTo6VjhBdWRpb0NvbnRleHQ6OmNvbnN0
cnVjdG9yQ2FsbGJhY2spOgorICAgICAgICAqIGJpbmRpbmdzL3Y4L2N1c3RvbS9WOEJsb2JDdXN0
b20uY3BwOgorICAgICAgICAoV2ViQ29yZTo6VjhCbG9iOjpjb25zdHJ1Y3RvckNhbGxiYWNrKToK
KyAgICAgICAgKiBiaW5kaW5ncy92OC9jdXN0b20vVjhET01Gb3JtRGF0YUN1c3RvbS5jcHA6Cisg
ICAgICAgIChXZWJDb3JlOjpWOERPTUZvcm1EYXRhOjpjb25zdHJ1Y3RvckNhbGxiYWNrKToKKyAg
ICAgICAgKiBiaW5kaW5ncy92OC9jdXN0b20vVjhEYXRhVmlld0N1c3RvbS5jcHA6CisgICAgICAg
IChXZWJDb3JlOjpWOERhdGFWaWV3Ojpjb25zdHJ1Y3RvckNhbGxiYWNrKToKKyAgICAgICAgKiBi
aW5kaW5ncy92OC9jdXN0b20vVjhIVE1MSW1hZ2VFbGVtZW50Q29uc3RydWN0b3IuY3BwOgorICAg
ICAgICAoV2ViQ29yZTo6djhIVE1MSW1hZ2VFbGVtZW50Q29uc3RydWN0b3JDYWxsYmFjayk6Cisg
ICAgICAgICogYmluZGluZ3MvdjgvY3VzdG9tL1Y4SW50ZW50Q29uc3RydWN0b3IuY3BwOgorICAg
ICAgICAoV2ViQ29yZTo6VjhJbnRlbnQ6OmNvbnN0cnVjdG9yQ2FsbGJhY2spOgorICAgICAgICAq
IGJpbmRpbmdzL3Y4L2N1c3RvbS9WOE1lc3NhZ2VDaGFubmVsQ29uc3RydWN0b3IuY3BwOgorICAg
ICAgICAoV2ViQ29yZTo6VjhNZXNzYWdlQ2hhbm5lbDo6Y29uc3RydWN0b3JDYWxsYmFjayk6Cisg
ICAgICAgICogYmluZGluZ3MvdjgvY3VzdG9tL1Y4Tm90aWZpY2F0aW9uQ2VudGVyQ3VzdG9tLmNw
cDoKKyAgICAgICAgKFdlYkNvcmU6OlY4Tm90aWZpY2F0aW9uQ2VudGVyOjpyZXF1ZXN0UGVybWlz
c2lvbkNhbGxiYWNrKToKKyAgICAgICAgKiBiaW5kaW5ncy92OC9jdXN0b20vVjhXZWJLaXRNdXRh
dGlvbk9ic2VydmVyQ3VzdG9tLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlY4V2ViS2l0TXV0YXRp
b25PYnNlcnZlcjo6Y29uc3RydWN0b3JDYWxsYmFjayk6CisgICAgICAgICogYmluZGluZ3Mvdjgv
Y3VzdG9tL1Y4V2ViS2l0UG9pbnRDb25zdHJ1Y3Rvci5jcHA6CisgICAgICAgIChXZWJDb3JlOjpW
OFdlYktpdFBvaW50Ojpjb25zdHJ1Y3RvckNhbGxiYWNrKToKKyAgICAgICAgKiBiaW5kaW5ncy92
OC9jdXN0b20vVjhXZWJTb2NrZXRDdXN0b20uY3BwOgorICAgICAgICAoV2ViQ29yZTo6VjhXZWJT
b2NrZXQ6OmNvbnN0cnVjdG9yQ2FsbGJhY2spOgorICAgICAgICAqIGJpbmRpbmdzL3Y4L2N1c3Rv
bS9WOFhNTEh0dHBSZXF1ZXN0Q29uc3RydWN0b3IuY3BwOgorICAgICAgICAoV2ViQ29yZTo6VjhY
TUxIdHRwUmVxdWVzdDo6Y29uc3RydWN0b3JDYWxsYmFjayk6CisKIDIwMTItMDUtMTcgIFNoaW55
YSBLYXdhbmFrYSAgPHNoaW55YWtAY2hyb21pdW0ub3JnPgogCiAgICAgICAgIFNoYWRvd1Jvb3Qu
c2VsZWN0aW9uIHNob3VsZCBiZSBTaGFkb3dSb290LmdldFNlbGVjdGlvbigpCmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy92OC9WOFByb3h5LmNwcCBiL1NvdXJjZS9XZWJDb3Jl
L2JpbmRpbmdzL3Y4L1Y4UHJveHkuY3BwCmluZGV4IDVjOWVjY2U4NTNmZjQxZTkxYzc5NTFiMmY2
OTc4M2E5Mzc3ZGVlZDYuLjcwYWE4NzZjZjJiMGIyMjNmYTc1NjcwMjViMGFhNTVhNGRjNWUzNDgg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3Y4L1Y4UHJveHkuY3BwCisrKyBi
L1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3Y4L1Y4UHJveHkuY3BwCkBAIC02MDksOSArNjA5LDkg
QEAgdjg6OkhhbmRsZTx2ODo6VmFsdWU+IFY4UHJveHk6OnRocm93RXJyb3IoRXJyb3JUeXBlIHR5
cGUsIGNvbnN0IGNoYXIqIG1lc3NhZ2UsIHYKICAgICB9CiB9CiAKLXY4OjpIYW5kbGU8djg6OlZh
bHVlPiBWOFByb3h5Ojp0aHJvd1R5cGVFcnJvcigpCit2ODo6SGFuZGxlPHY4OjpWYWx1ZT4gVjhQ
cm94eTo6dGhyb3dUeXBlRXJyb3IoY29uc3QgY2hhciogbWVzc2FnZSkKIHsKLSAgICByZXR1cm4g
dGhyb3dFcnJvcihUeXBlRXJyb3IsICJUeXBlIGVycm9yIik7CisgICAgcmV0dXJuIHRocm93RXJy
b3IoVHlwZUVycm9yLCAobWVzc2FnZSA/IG1lc3NhZ2UgOiAiVHlwZSBlcnJvciIpKTsKIH0KIAog
djg6OkhhbmRsZTx2ODo6VmFsdWU+IFY4UHJveHk6OnRocm93Tm90RW5vdWdoQXJndW1lbnRzRXJy
b3IoKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvdjgvVjhQcm94eS5oIGIv
U291cmNlL1dlYkNvcmUvYmluZGluZ3MvdjgvVjhQcm94eS5oCmluZGV4IDYwMTgzMWRjMjc2Nzdl
NWZlODlhNmU3MDIyYmQ5YTQwZmNlZDlhNzguLjVlY2I2Mzk3N2ExNTdmZmRlZGJlMmY0NWY3YWY0
OTQ0YzVlMDJiMDQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3Y4L1Y4UHJv
eHkuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy92OC9WOFByb3h5LmgKQEAgLTIzOSw3
ICsyMzksNyBAQCBuYW1lc3BhY2UgV2ViQ29yZSB7CiAgICAgICAgIHN0YXRpYyB2ODo6SGFuZGxl
PHY4OjpWYWx1ZT4gdGhyb3dFcnJvcihFcnJvclR5cGUsIGNvbnN0IGNoYXIqIG1lc3NhZ2UsIHY4
OjpJc29sYXRlKiA9IDApOwogCiAgICAgICAgIC8vIEhlbHBlcnMgZm9yIHRocm93aW5nIHN5bnRh
eCBhbmQgdHlwZSBlcnJvcnMgd2l0aCBwcmVkZWZpbmVkIG1lc3NhZ2VzLgotICAgICAgICBzdGF0
aWMgdjg6OkhhbmRsZTx2ODo6VmFsdWU+IHRocm93VHlwZUVycm9yKCk7CisgICAgICAgIHN0YXRp
YyB2ODo6SGFuZGxlPHY4OjpWYWx1ZT4gdGhyb3dUeXBlRXJyb3IoY29uc3QgY2hhciogPSAwKTsK
ICAgICAgICAgc3RhdGljIHY4OjpIYW5kbGU8djg6OlZhbHVlPiB0aHJvd05vdEVub3VnaEFyZ3Vt
ZW50c0Vycm9yKCk7CiAKICAgICAgICAgdjg6OkxvY2FsPHY4OjpDb250ZXh0PiBjb250ZXh0KCk7
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy92OC9jdXN0b20vVjhBcnJheUJ1
ZmZlclZpZXdDdXN0b20uaCBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3Y4L2N1c3RvbS9WOEFy
cmF5QnVmZmVyVmlld0N1c3RvbS5oCmluZGV4IDY3NTM2ZGU2MjE1NDE1NzBmMjYwODg3YjI0ZjUz
ZGVmOTAwMTg5YmEuLjRjMGViODY3MzZhNTk5YWEwYzRkN2EyZjFiNzQ4MWFkOWJlYzEwZjIgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3Y4L2N1c3RvbS9WOEFycmF5QnVmZmVy
Vmlld0N1c3RvbS5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3Y4L2N1c3RvbS9WOEFy
cmF5QnVmZmVyVmlld0N1c3RvbS5oCkBAIC05OSw3ICs5OSw3IEBAIHRlbXBsYXRlPGNsYXNzIEFy
cmF5Q2xhc3MsIGNsYXNzIEVsZW1lbnRUeXBlPgogdjg6OkhhbmRsZTx2ODo6VmFsdWU+IGNvbnN0
cnVjdFdlYkdMQXJyYXkoY29uc3Qgdjg6OkFyZ3VtZW50cyYgYXJncywgV3JhcHBlclR5cGVJbmZv
KiB0eXBlLCB2ODo6RXh0ZXJuYWxBcnJheVR5cGUgYXJyYXlUeXBlKQogewogICAgIGlmICghYXJn
cy5Jc0NvbnN0cnVjdENhbGwoKSkKLSAgICAgICAgcmV0dXJuIHRocm93RXJyb3IoIkRPTSBvYmpl
Y3QgY29uc3RydWN0b3IgY2Fubm90IGJlIGNhbGxlZCBhcyBhIGZ1bmN0aW9uLiIsIFY4UHJveHk6
OlR5cGVFcnJvcik7CisgICAgICAgIHJldHVybiBWOFByb3h5Ojp0aHJvd1R5cGVFcnJvcigiRE9N
IG9iamVjdCBjb25zdHJ1Y3RvciBjYW5ub3QgYmUgY2FsbGVkIGFzIGEgZnVuY3Rpb24uIik7CiAK
ICAgICBpZiAoQ29uc3RydWN0b3JNb2RlOjpjdXJyZW50KCkgPT0gQ29uc3RydWN0b3JNb2RlOjpX
cmFwRXhpc3RpbmdPYmplY3QpCiAgICAgICAgIHJldHVybiBhcmdzLkhvbGRlcigpOwpkaWZmIC0t
Z2l0IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvdjgvY3VzdG9tL1Y4QXVkaW9Db250ZXh0Q3Vz
dG9tLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3Y4L2N1c3RvbS9WOEF1ZGlvQ29udGV4
dEN1c3RvbS5jcHAKaW5kZXggZGM1MzJmN2E0NjQwNTZiOWNiYzk4YTRhYTBkZGY2YjZjYmYwOTVj
Zi4uYjcwODQ4NzA4ZGY1NTk2ZjQwMTFhMjMxOTA1Yjk0OTk0MjdmOTc3ZiAxMDA2NDQKLS0tIGEv
U291cmNlL1dlYkNvcmUvYmluZGluZ3MvdjgvY3VzdG9tL1Y4QXVkaW9Db250ZXh0Q3VzdG9tLmNw
cAorKysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy92OC9jdXN0b20vVjhBdWRpb0NvbnRleHRD
dXN0b20uY3BwCkBAIC00NCw3ICs0NCw3IEBAIHY4OjpIYW5kbGU8djg6OlZhbHVlPiBWOEF1ZGlv
Q29udGV4dDo6Y29uc3RydWN0b3JDYWxsYmFjayhjb25zdCB2ODo6QXJndW1lbnRzJiBhCiAgICAg
SU5DX1NUQVRTKCJET00uQXVkaW9Db250ZXh0LkNvbnRydWN0b3IiKTsKIAogICAgIGlmICghYXJn
cy5Jc0NvbnN0cnVjdENhbGwoKSkKLSAgICAgICAgcmV0dXJuIHRocm93RXJyb3IoIkF1ZGlvQ29u
dGV4dCBjb25zdHJ1Y3RvciBjYW5ub3QgYmUgY2FsbGVkIGFzIGEgZnVuY3Rpb24uIiwgVjhQcm94
eTo6VHlwZUVycm9yKTsKKyAgICAgICAgcmV0dXJuIFY4UHJveHk6OnRocm93VHlwZUVycm9yKCJB
dWRpb0NvbnRleHQgY29uc3RydWN0b3IgY2Fubm90IGJlIGNhbGxlZCBhcyBhIGZ1bmN0aW9uLiIp
OwogCiAgICAgaWYgKENvbnN0cnVjdG9yTW9kZTo6Y3VycmVudCgpID09IENvbnN0cnVjdG9yTW9k
ZTo6V3JhcEV4aXN0aW5nT2JqZWN0KQogICAgICAgICByZXR1cm4gYXJncy5Ib2xkZXIoKTsKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3Y4L2N1c3RvbS9WOEJsb2JDdXN0b20u
Y3BwIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvdjgvY3VzdG9tL1Y4QmxvYkN1c3RvbS5jcHAK
aW5kZXggMGM0ZDZkODNjMzNiMzU3ZDIzNDk1YmI0ODVkMzY5OTg3YzRmYWFmMy4uZDMwYTk3MTcx
NGFlMmJlYzk5MTM1NzNjYmU3MWQ5ODg4ZDEyZmQxYyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNv
cmUvYmluZGluZ3MvdjgvY3VzdG9tL1Y4QmxvYkN1c3RvbS5jcHAKKysrIGIvU291cmNlL1dlYkNv
cmUvYmluZGluZ3MvdjgvY3VzdG9tL1Y4QmxvYkN1c3RvbS5jcHAKQEAgLTYwLDcgKzYwLDcgQEAg
djg6OkhhbmRsZTx2ODo6VmFsdWU+IFY4QmxvYjo6Y29uc3RydWN0b3JDYWxsYmFjayhjb25zdCB2
ODo6QXJndW1lbnRzJiBhcmdzKQogICAgIElOQ19TVEFUUygiRE9NLkJsb2IuQ29uc3RydWN0b3Ii
KTsKIAogICAgIGlmICghYXJncy5Jc0NvbnN0cnVjdENhbGwoKSkKLSAgICAgICAgcmV0dXJuIHRo
cm93RXJyb3IoIkRPTSBvYmplY3QgY29uc3RydWN0b3IgY2Fubm90IGJlIGNhbGxlZCBhcyBhIGZ1
bmN0aW9uLiIsIFY4UHJveHk6OlR5cGVFcnJvcik7CisgICAgICAgIHJldHVybiBWOFByb3h5Ojp0
aHJvd1R5cGVFcnJvcigiRE9NIG9iamVjdCBjb25zdHJ1Y3RvciBjYW5ub3QgYmUgY2FsbGVkIGFz
IGEgZnVuY3Rpb24uIik7CiAKICAgICBpZiAoQ29uc3RydWN0b3JNb2RlOjpjdXJyZW50KCkgPT0g
Q29uc3RydWN0b3JNb2RlOjpXcmFwRXhpc3RpbmdPYmplY3QpCiAgICAgICAgIHJldHVybiBhcmdz
LkhvbGRlcigpOwpAQCAtNzcsMTQgKzc3LDE0IEBAIHY4OjpIYW5kbGU8djg6OlZhbHVlPiBWOEJs
b2I6OmNvbnN0cnVjdG9yQ2FsbGJhY2soY29uc3Qgdjg6OkFyZ3VtZW50cyYgYXJncykKIAogICAg
IHY4OjpMb2NhbDx2ODo6VmFsdWU+IGZpcnN0QXJnID0gYXJnc1swXTsKICAgICBpZiAoIWZpcnN0
QXJnLT5Jc0FycmF5KCkpCi0gICAgICAgIHJldHVybiB0aHJvd0Vycm9yKCJGaXJzdCBhcmd1bWVu
dCBvZiB0aGUgY29uc3RydWN0b3IgaXMgbm90IG9mIHR5cGUgQXJyYXkiLCBWOFByb3h5OjpUeXBl
RXJyb3IpOworICAgICAgICByZXR1cm4gVjhQcm94eTo6dGhyb3dUeXBlRXJyb3IoIkZpcnN0IGFy
Z3VtZW50IG9mIHRoZSBjb25zdHJ1Y3RvciBpcyBub3Qgb2YgdHlwZSBBcnJheSIpOwogCiAgICAg
U3RyaW5nIHR5cGU7CiAgICAgU3RyaW5nIGVuZGluZ3MgPSAidHJhbnNwYXJlbnQiOwogCiAgICAg
aWYgKGFyZ3MuTGVuZ3RoKCkgPiAxKSB7CiAgICAgICAgIGlmICghYXJnc1sxXS0+SXNPYmplY3Qo
KSkKLSAgICAgICAgICAgIHJldHVybiB0aHJvd0Vycm9yKCJTZWNvbmQgYXJndW1lbnQgb2YgdGhl
IGNvbnN0cnVjdG9yIGlzIG5vdCBvZiB0eXBlIE9iamVjdCIsIFY4UHJveHk6OlR5cGVFcnJvcik7
CisgICAgICAgICAgICByZXR1cm4gVjhQcm94eTo6dGhyb3dUeXBlRXJyb3IoIlNlY29uZCBhcmd1
bWVudCBvZiB0aGUgY29uc3RydWN0b3IgaXMgbm90IG9mIHR5cGUgT2JqZWN0Iik7CiAKICAgICAg
ICAgRGljdGlvbmFyeSBkaWN0aW9uYXJ5KGFyZ3NbMV0pOwogCkBAIC05NSw3ICs5NSw3IEBAIHY4
OjpIYW5kbGU8djg6OlZhbHVlPiBWOEJsb2I6OmNvbnN0cnVjdG9yQ2FsbGJhY2soY29uc3Qgdjg6
OkFyZ3VtZW50cyYgYXJncykKIAogICAgICAgICBpZiAoY29udGFpbnNFbmRpbmdzKSB7CiAgICAg
ICAgICAgICBpZiAoZW5kaW5ncyAhPSAidHJhbnNwYXJlbnQiICYmIGVuZGluZ3MgIT0gIm5hdGl2
ZSIpCi0gICAgICAgICAgICAgICAgcmV0dXJuIHRocm93RXJyb3IoIlRoZSBlbmRpbmdzIHByb3Bl
cnR5IG11c3QgYmUgZWl0aGVyIFwidHJhbnNwYXJlbnRcIiBvciBcIm5hdGl2ZVwiIiwgVjhQcm94
eTo6VHlwZUVycm9yKTsKKyAgICAgICAgICAgICAgICByZXR1cm4gVjhQcm94eTo6dGhyb3dUeXBl
RXJyb3IoIlRoZSBlbmRpbmdzIHByb3BlcnR5IG11c3QgYmUgZWl0aGVyIFwidHJhbnNwYXJlbnRc
IiBvciBcIm5hdGl2ZVwiIik7CiAgICAgICAgIH0KIAogICAgICAgICB2ODo6VHJ5Q2F0Y2ggdHJ5
Q2F0Y2hUeXBlOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvdjgvY3VzdG9t
L1Y4RE9NRm9ybURhdGFDdXN0b20uY3BwIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvdjgvY3Vz
dG9tL1Y4RE9NRm9ybURhdGFDdXN0b20uY3BwCmluZGV4IGNkNmUyN2VhMmJjYWQ5NGM1OTdjMzNh
OTk0YzA5M2VjNTVmZThhOWQuLjEwYzlhMjM0YTUyZjA0NzJkODE4MTQzNGQwMDJhNzE1NWEwNzgw
ZjAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3Y4L2N1c3RvbS9WOERPTUZv
cm1EYXRhQ3VzdG9tLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy92OC9jdXN0b20v
VjhET01Gb3JtRGF0YUN1c3RvbS5jcHAKQEAgLTQ1LDcgKzQ1LDcgQEAgdjg6OkhhbmRsZTx2ODo6
VmFsdWU+IFY4RE9NRm9ybURhdGE6OmNvbnN0cnVjdG9yQ2FsbGJhY2soY29uc3Qgdjg6OkFyZ3Vt
ZW50cyYgYXIKICAgICBJTkNfU1RBVFMoIkRPTS5Gb3JtRGF0YS5Db25zdHJ1Y3RvciIpOwogCiAg
ICAgaWYgKCFhcmdzLklzQ29uc3RydWN0Q2FsbCgpKQotICAgICAgICByZXR1cm4gdGhyb3dFcnJv
cigiRE9NIG9iamVjdCBjb25zdHJ1Y3RvciBjYW5ub3QgYmUgY2FsbGVkIGFzIGEgZnVuY3Rpb24u
IiwgVjhQcm94eTo6VHlwZUVycm9yKTsKKyAgICAgICAgcmV0dXJuIFY4UHJveHk6OnRocm93VHlw
ZUVycm9yKCJET00gb2JqZWN0IGNvbnN0cnVjdG9yIGNhbm5vdCBiZSBjYWxsZWQgYXMgYSBmdW5j
dGlvbi4iKTsKIAogICAgIGlmIChDb25zdHJ1Y3Rvck1vZGU6OmN1cnJlbnQoKSA9PSBDb25zdHJ1
Y3Rvck1vZGU6OldyYXBFeGlzdGluZ09iamVjdCkKICAgICAgICAgcmV0dXJuIGFyZ3MuSG9sZGVy
KCk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy92OC9jdXN0b20vVjhEYXRh
Vmlld0N1c3RvbS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy92OC9jdXN0b20vVjhEYXRh
Vmlld0N1c3RvbS5jcHAKaW5kZXggYmE1ZjhjNDU4ZDU1YWE0MmNmMjIwMzM3MjNiNTE2ODk3ZmY3
Yzg1Yy4uYTM0MDE3YWE1NjhmMTZmNGZlMWJkMWE0NGQ0YmNlZGE5NGE4MGY1NyAxMDA3NTUKLS0t
IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvdjgvY3VzdG9tL1Y4RGF0YVZpZXdDdXN0b20uY3Bw
CisrKyBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3Y4L2N1c3RvbS9WOERhdGFWaWV3Q3VzdG9t
LmNwcApAQCAtMzksNyArMzksNyBAQCB2ODo6SGFuZGxlPHY4OjpWYWx1ZT4gVjhEYXRhVmlldzo6
Y29uc3RydWN0b3JDYWxsYmFjayhjb25zdCB2ODo6QXJndW1lbnRzJiBhcmdzKQogICAgIElOQ19T
VEFUUygiRE9NLkRhdGFWaWV3LkNvbnN0cnVjdG9yIik7CiAKICAgICBpZiAoIWFyZ3MuSXNDb25z
dHJ1Y3RDYWxsKCkpCi0gICAgICAgIHJldHVybiB0aHJvd0Vycm9yKCJET00gb2JqZWN0IGNvbnN0
cnVjdG9yIGNhbm5vdCBiZSBjYWxsZWQgYXMgYSBmdW5jdGlvbiIsIFY4UHJveHk6OlR5cGVFcnJv
cik7CisgICAgICAgIHJldHVybiBWOFByb3h5Ojp0aHJvd1R5cGVFcnJvcigiRE9NIG9iamVjdCBj
b25zdHJ1Y3RvciBjYW5ub3QgYmUgY2FsbGVkIGFzIGEgZnVuY3Rpb24iKTsKIAogICAgIGlmIChD
b25zdHJ1Y3Rvck1vZGU6OmN1cnJlbnQoKSA9PSBDb25zdHJ1Y3Rvck1vZGU6OldyYXBFeGlzdGlu
Z09iamVjdCkKICAgICAgICAgcmV0dXJuIGFyZ3MuSG9sZGVyKCk7CmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViQ29yZS9iaW5kaW5ncy92OC9jdXN0b20vVjhIVE1MSW1hZ2VFbGVtZW50Q29uc3RydWN0
b3IuY3BwIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvdjgvY3VzdG9tL1Y4SFRNTEltYWdlRWxl
bWVudENvbnN0cnVjdG9yLmNwcAppbmRleCA0ZTMzYTJhZjMxOTY4YjRlYTkzNzQwNDNjNmU5NjZl
MmM3MWNmZjk2Li41MTNiNTA2Y2QwYWVjYjE2ZWIwZGM5MGExNTJmYTM2N2MwNGI5NTJmIDEwMDY0
NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy92OC9jdXN0b20vVjhIVE1MSW1hZ2VFbGVt
ZW50Q29uc3RydWN0b3IuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3Y4L2N1c3Rv
bS9WOEhUTUxJbWFnZUVsZW1lbnRDb25zdHJ1Y3Rvci5jcHAKQEAgLTUxLDcgKzUxLDcgQEAgc3Rh
dGljIHY4OjpIYW5kbGU8djg6OlZhbHVlPiB2OEhUTUxJbWFnZUVsZW1lbnRDb25zdHJ1Y3RvckNh
bGxiYWNrKGNvbnN0IHY4OjpBcmcKICAgICBJTkNfU1RBVFMoIkRPTS5IVE1MSW1hZ2VFbGVtZW50
LkNvbnRydWN0b3IiKTsKIAogICAgIGlmICghYXJncy5Jc0NvbnN0cnVjdENhbGwoKSkKLSAgICAg
ICAgcmV0dXJuIHRocm93RXJyb3IoIkRPTSBvYmplY3QgY29uc3RydWN0b3IgY2Fubm90IGJlIGNh
bGxlZCBhcyBhIGZ1bmN0aW9uLiIsIFY4UHJveHk6OlR5cGVFcnJvcik7CisgICAgICAgIHJldHVy
biBWOFByb3h5Ojp0aHJvd1R5cGVFcnJvcigiRE9NIG9iamVjdCBjb25zdHJ1Y3RvciBjYW5ub3Qg
YmUgY2FsbGVkIGFzIGEgZnVuY3Rpb24uIik7CiAKICAgICBpZiAoQ29uc3RydWN0b3JNb2RlOjpj
dXJyZW50KCkgPT0gQ29uc3RydWN0b3JNb2RlOjpXcmFwRXhpc3RpbmdPYmplY3QpCiAgICAgICAg
IHJldHVybiBhcmdzLkhvbGRlcigpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYmluZGlu
Z3MvdjgvY3VzdG9tL1Y4SW50ZW50Q29uc3RydWN0b3IuY3BwIGIvU291cmNlL1dlYkNvcmUvYmlu
ZGluZ3MvdjgvY3VzdG9tL1Y4SW50ZW50Q29uc3RydWN0b3IuY3BwCmluZGV4IGQ4N2VkNzVkMjcw
OTFjY2E1ZGM3M2IzZWIyMzIyYTkxZWFkYmFmZTkuLjI4ZmEyMWUzYjAxN2M3MTc1ODdmZDRlOWNh
YWJiZjM5MTBlNTQ4NGUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3Y4L2N1
c3RvbS9WOEludGVudENvbnN0cnVjdG9yLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5n
cy92OC9jdXN0b20vVjhJbnRlbnRDb25zdHJ1Y3Rvci5jcHAKQEAgLTQ4LDcgKzQ4LDcgQEAgdjg6
OkhhbmRsZTx2ODo6VmFsdWU+IFY4SW50ZW50Ojpjb25zdHJ1Y3RvckNhbGxiYWNrKGNvbnN0IHY4
OjpBcmd1bWVudHMmIGFyZ3MpCiAgICAgSU5DX1NUQVRTKCJET00uSW50ZW50LkNvbnN0cnVjdG9y
Iik7CiAKICAgICBpZiAoIWFyZ3MuSXNDb25zdHJ1Y3RDYWxsKCkpCi0gICAgICAgIHJldHVybiB0
aHJvd0Vycm9yKCJET00gb2JqZWN0IGNvbnN0cnVjdG9yIGNhbm5vdCBiZSBjYWxsZWQgYXMgYSBm
dW5jdGlvbi4iLCBWOFByb3h5OjpUeXBlRXJyb3IpOworICAgICAgICByZXR1cm4gVjhQcm94eTo6
dGhyb3dUeXBlRXJyb3IoIkRPTSBvYmplY3QgY29uc3RydWN0b3IgY2Fubm90IGJlIGNhbGxlZCBh
cyBhIGZ1bmN0aW9uLiIpOwogCiAgICAgaWYgKENvbnN0cnVjdG9yTW9kZTo6Y3VycmVudCgpID09
IENvbnN0cnVjdG9yTW9kZTo6V3JhcEV4aXN0aW5nT2JqZWN0KQogICAgICAgICByZXR1cm4gYXJn
cy5Ib2xkZXIoKTsKQEAgLTc2LDcgKzc2LDcgQEAgdjg6OkhhbmRsZTx2ODo6VmFsdWU+IFY4SW50
ZW50Ojpjb25zdHJ1Y3RvckNhbGxiYWNrKGNvbnN0IHY4OjpBcmd1bWVudHMmIGFyZ3MpCiAgICAg
QXJyYXlCdWZmZXJBcnJheSBhcnJheUJ1ZmZlckFycmF5VHJhbnNmZXJMaXN0OwogICAgIGlmIChh
cmdzLkxlbmd0aCgpID4gMykgewogICAgICAgICBpZiAoIWV4dHJhY3RUcmFuc2ZlcmFibGVzKGFy
Z3NbM10sIG1lc3NhZ2VQb3J0QXJyYXlUcmFuc2Zlckxpc3QsIGFycmF5QnVmZmVyQXJyYXlUcmFu
c2Zlckxpc3QpKQotICAgICAgICAgICAgcmV0dXJuIHRocm93RXJyb3IoIkNvdWxkIG5vdCBleHRy
YWN0IHRyYW5zZmVyYWJsZXMiLCBWOFByb3h5OjpUeXBlRXJyb3IpOworICAgICAgICAgICAgcmV0
dXJuIFY4UHJveHk6OnRocm93VHlwZUVycm9yKCJDb3VsZCBub3QgZXh0cmFjdCB0cmFuc2ZlcmFi
bGVzIik7CiAgICAgfQogICAgIGJvb2wgZGF0YURpZFRocm93ID0gZmFsc2U7CiAgICAgUmVmUHRy
PFNlcmlhbGl6ZWRTY3JpcHRWYWx1ZT4gZGF0YSA9IFNlcmlhbGl6ZWRTY3JpcHRWYWx1ZTo6Y3Jl
YXRlKGFyZ3NbMl0sICZtZXNzYWdlUG9ydEFycmF5VHJhbnNmZXJMaXN0LCAmYXJyYXlCdWZmZXJB
cnJheVRyYW5zZmVyTGlzdCwgZGF0YURpZFRocm93KTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJD
b3JlL2JpbmRpbmdzL3Y4L2N1c3RvbS9WOE1lc3NhZ2VDaGFubmVsQ29uc3RydWN0b3IuY3BwIGIv
U291cmNlL1dlYkNvcmUvYmluZGluZ3MvdjgvY3VzdG9tL1Y4TWVzc2FnZUNoYW5uZWxDb25zdHJ1
Y3Rvci5jcHAKaW5kZXggYmFkNDY5YTUwZWM0ZDE0ZmE0OGZjMTM0NzZhMjU2ZGUzNGNiY2I4Ni4u
OWJiOWM1NTEzY2NlNzkwMmVjYTU0MTg1NGIzYmQ4M2QyZDAwYzZjNyAxMDA2NDQKLS0tIGEvU291
cmNlL1dlYkNvcmUvYmluZGluZ3MvdjgvY3VzdG9tL1Y4TWVzc2FnZUNoYW5uZWxDb25zdHJ1Y3Rv
ci5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvdjgvY3VzdG9tL1Y4TWVzc2FnZUNo
YW5uZWxDb25zdHJ1Y3Rvci5jcHAKQEAgLTUxLDcgKzUxLDcgQEAgdjg6OkhhbmRsZTx2ODo6VmFs
dWU+IFY4TWVzc2FnZUNoYW5uZWw6OmNvbnN0cnVjdG9yQ2FsbGJhY2soY29uc3Qgdjg6OkFyZ3Vt
ZW50cyYKICAgICAvLyBGSVhNRTogVGhlIGxvZ2ljIGhlcmUgaXMgYWxtb3N0IGV4YWN0IGR1cGxp
Y2F0ZSBvZiBWODo6Y29uc3RydWN0RE9NT2JqZWN0LgogICAgIC8vIENvbnNpZGVyIHJlZmFjdG9y
aW5nIHRvIHJlZHVjZSBkdXBsaWNhdGlvbi4KICAgICBpZiAoIWFyZ3MuSXNDb25zdHJ1Y3RDYWxs
KCkpCi0gICAgICAgIHJldHVybiB0aHJvd0Vycm9yKCJET00gb2JqZWN0IGNvbnN0cnVjdG9yIGNh
bm5vdCBiZSBjYWxsZWQgYXMgYSBmdW5jdGlvbi4iLCBWOFByb3h5OjpUeXBlRXJyb3IpOworICAg
ICAgICByZXR1cm4gVjhQcm94eTo6dGhyb3dUeXBlRXJyb3IoIkRPTSBvYmplY3QgY29uc3RydWN0
b3IgY2Fubm90IGJlIGNhbGxlZCBhcyBhIGZ1bmN0aW9uLiIpOwogCiAgICAgaWYgKENvbnN0cnVj
dG9yTW9kZTo6Y3VycmVudCgpID09IENvbnN0cnVjdG9yTW9kZTo6V3JhcEV4aXN0aW5nT2JqZWN0
KQogICAgICAgICByZXR1cm4gYXJncy5Ib2xkZXIoKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJD
b3JlL2JpbmRpbmdzL3Y4L2N1c3RvbS9WOE5vdGlmaWNhdGlvbkNlbnRlckN1c3RvbS5jcHAgYi9T
b3VyY2UvV2ViQ29yZS9iaW5kaW5ncy92OC9jdXN0b20vVjhOb3RpZmljYXRpb25DZW50ZXJDdXN0
b20uY3BwCmluZGV4IGJjMWVjYzdlNzU4ZDEwYzdhMjczN2Q2NGFiZWY0ODNmYmQwMDZjNzEuLjRj
YTE5OGM3ZWJiNTZiZmJkNmYyMmNmNGY3YWIxMTU3MzE4ZTA4YzUgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJDb3JlL2JpbmRpbmdzL3Y4L2N1c3RvbS9WOE5vdGlmaWNhdGlvbkNlbnRlckN1c3RvbS5j
cHAKKysrIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvdjgvY3VzdG9tL1Y4Tm90aWZpY2F0aW9u
Q2VudGVyQ3VzdG9tLmNwcApAQCAtOTUsNyArOTUsNyBAQCB2ODo6SGFuZGxlPHY4OjpWYWx1ZT4g
VjhOb3RpZmljYXRpb25DZW50ZXI6OnJlcXVlc3RQZXJtaXNzaW9uQ2FsbGJhY2soY29uc3Qgdjg6
OgogICAgIFJlZlB0cjxWOEN1c3RvbVZvaWRDYWxsYmFjaz4gY2FsbGJhY2s7CiAgICAgaWYgKGFy
Z3MuTGVuZ3RoKCkgPiAwKSB7CiAgICAgICAgIGlmICghYXJnc1swXS0+SXNPYmplY3QoKSkKLSAg
ICAgICAgICAgIHJldHVybiB0aHJvd0Vycm9yKCJDYWxsYmFjayBtdXN0IGJlIG9mIHZhbGlkIHR5
cGUuIiwgVjhQcm94eTo6VHlwZUVycm9yKTsKKyAgICAgICAgICAgIHJldHVybiBWOFByb3h5Ojp0
aHJvd1R5cGVFcnJvcigiQ2FsbGJhY2sgbXVzdCBiZSBvZiB2YWxpZCB0eXBlLiIpOwogIAogICAg
ICAgICBjYWxsYmFjayA9IFY4Q3VzdG9tVm9pZENhbGxiYWNrOjpjcmVhdGUoYXJnc1swXSwgY29u
dGV4dCk7CiAgICAgfQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvdjgvY3Vz
dG9tL1Y4V2ViS2l0TXV0YXRpb25PYnNlcnZlckN1c3RvbS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9i
aW5kaW5ncy92OC9jdXN0b20vVjhXZWJLaXRNdXRhdGlvbk9ic2VydmVyQ3VzdG9tLmNwcAppbmRl
eCAzOGIxMGNkZmRhM2M3ODUwZmMyNjQ3ZTFkMGRmMzg5NjY4YTlhNTI3Li43NzE1MjllM2VhYjAz
OWU4NTVjMWVlNmUwMDYyOTQ2ZDM3NmNjNzJlIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9i
aW5kaW5ncy92OC9jdXN0b20vVjhXZWJLaXRNdXRhdGlvbk9ic2VydmVyQ3VzdG9tLmNwcAorKysg
Yi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy92OC9jdXN0b20vVjhXZWJLaXRNdXRhdGlvbk9ic2Vy
dmVyQ3VzdG9tLmNwcApAQCAtNTUsNyArNTUsNyBAQCB2ODo6SGFuZGxlPHY4OjpWYWx1ZT4gVjhX
ZWJLaXRNdXRhdGlvbk9ic2VydmVyOjpjb25zdHJ1Y3RvckNhbGxiYWNrKGNvbnN0IHY4OjpBcgog
ICAgIElOQ19TVEFUUygiRE9NLldlYktpdE11dGF0aW9uT2JzZXJ2ZXIuQ29uc3RydWN0b3IiKTsK
IAogICAgIGlmICghYXJncy5Jc0NvbnN0cnVjdENhbGwoKSkKLSAgICAgICAgcmV0dXJuIHRocm93
RXJyb3IoIkRPTSBvYmplY3QgY29uc3RydWN0b3IgY2Fubm90IGJlIGNhbGxlZCBhcyBhIGZ1bmN0
aW9uLiIsIFY4UHJveHk6OlR5cGVFcnJvcik7CisgICAgICAgIHJldHVybiBWOFByb3h5Ojp0aHJv
d1R5cGVFcnJvcigiRE9NIG9iamVjdCBjb25zdHJ1Y3RvciBjYW5ub3QgYmUgY2FsbGVkIGFzIGEg
ZnVuY3Rpb24uIik7CiAKICAgICBpZiAoQ29uc3RydWN0b3JNb2RlOjpjdXJyZW50KCkgPT0gQ29u
c3RydWN0b3JNb2RlOjpXcmFwRXhpc3RpbmdPYmplY3QpCiAgICAgICAgIHJldHVybiBhcmdzLkhv
bGRlcigpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvdjgvY3VzdG9tL1Y4
V2ViS2l0UG9pbnRDb25zdHJ1Y3Rvci5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy92OC9j
dXN0b20vVjhXZWJLaXRQb2ludENvbnN0cnVjdG9yLmNwcAppbmRleCA5YTgzYmI4ZDViZTAxZmRh
OTU0NDNiOWQ5N2I4ZDhkYWNhYmJjNGM4Li5kYTEyNDcyNzQ5ZWM3NTNjZmI3MDcwOGIyMGZhZGI1
NGQxY2RkNmZlIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy92OC9jdXN0b20v
VjhXZWJLaXRQb2ludENvbnN0cnVjdG9yLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5n
cy92OC9jdXN0b20vVjhXZWJLaXRQb2ludENvbnN0cnVjdG9yLmNwcApAQCAtNDUsNyArNDUsNyBA
QCB2ODo6SGFuZGxlPHY4OjpWYWx1ZT4gVjhXZWJLaXRQb2ludDo6Y29uc3RydWN0b3JDYWxsYmFj
ayhjb25zdCB2ODo6QXJndW1lbnRzJiBhcgogICAgIElOQ19TVEFUUygiRE9NLldlYktpdFBvaW50
LkNvbnN0cnVjdG9yIik7CiAKICAgICBpZiAoIWFyZ3MuSXNDb25zdHJ1Y3RDYWxsKCkpCi0gICAg
ICAgIHJldHVybiB0aHJvd0Vycm9yKCJET00gb2JqZWN0IGNvbnN0cnVjdG9yIGNhbm5vdCBiZSBj
YWxsZWQgYXMgYSBmdW5jdGlvbi4iLCBWOFByb3h5OjpUeXBlRXJyb3IpOworICAgICAgICByZXR1
cm4gVjhQcm94eTo6dGhyb3dUeXBlRXJyb3IoIkRPTSBvYmplY3QgY29uc3RydWN0b3IgY2Fubm90
IGJlIGNhbGxlZCBhcyBhIGZ1bmN0aW9uLiIpOwogCiAgICAgaWYgKENvbnN0cnVjdG9yTW9kZTo6
Y3VycmVudCgpID09IENvbnN0cnVjdG9yTW9kZTo6V3JhcEV4aXN0aW5nT2JqZWN0KQogICAgICAg
ICByZXR1cm4gYXJncy5Ib2xkZXIoKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRp
bmdzL3Y4L2N1c3RvbS9WOFdlYlNvY2tldEN1c3RvbS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9iaW5k
aW5ncy92OC9jdXN0b20vVjhXZWJTb2NrZXRDdXN0b20uY3BwCmluZGV4IGE3YzE1MTZkOWRlZWVi
ZDc4YzZjOGU3MWQzZDFjMTNiMzM5ODBjNmYuLjNiMTE0Mzc5OTNkZmY4ODQ3MzY4ZjAwZTk4MmVj
NWUzN2U2ODU5YzggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3Y4L2N1c3Rv
bS9WOFdlYlNvY2tldEN1c3RvbS5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvdjgv
Y3VzdG9tL1Y4V2ViU29ja2V0Q3VzdG9tLmNwcApAQCAtNTYsNyArNTYsNyBAQCB2ODo6SGFuZGxl
PHY4OjpWYWx1ZT4gVjhXZWJTb2NrZXQ6OmNvbnN0cnVjdG9yQ2FsbGJhY2soY29uc3Qgdjg6OkFy
Z3VtZW50cyYgYXJncwogICAgIElOQ19TVEFUUygiRE9NLldlYlNvY2tldC5Db25zdHJ1Y3RvciIp
OwogCiAgICAgaWYgKCFhcmdzLklzQ29uc3RydWN0Q2FsbCgpKQotICAgICAgICByZXR1cm4gdGhy
b3dFcnJvcigiRE9NIG9iamVjdCBjb25zdHJ1Y3RvciBjYW5ub3QgYmUgY2FsbGVkIGFzIGEgZnVu
Y3Rpb24uIiwgVjhQcm94eTo6VHlwZUVycm9yKTsKKyAgICAgICAgcmV0dXJuIFY4UHJveHk6OnRo
cm93VHlwZUVycm9yKCJET00gb2JqZWN0IGNvbnN0cnVjdG9yIGNhbm5vdCBiZSBjYWxsZWQgYXMg
YSBmdW5jdGlvbi4iKTsKIAogICAgIGlmIChDb25zdHJ1Y3Rvck1vZGU6OmN1cnJlbnQoKSA9PSBD
b25zdHJ1Y3Rvck1vZGU6OldyYXBFeGlzdGluZ09iamVjdCkKICAgICAgICAgcmV0dXJuIGFyZ3Mu
SG9sZGVyKCk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy92OC9jdXN0b20v
VjhYTUxIdHRwUmVxdWVzdENvbnN0cnVjdG9yLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdz
L3Y4L2N1c3RvbS9WOFhNTEh0dHBSZXF1ZXN0Q29uc3RydWN0b3IuY3BwCmluZGV4IDY0MWE2ODlh
MDQ1NWNlODM3ZjY2OGFiMzhjZWY5MDBhZTE5MGNiZmYuLjg3ZDA1NGZmODJlZDk5NjRkNjNhZGI1
MzY2YmQ4Zjg5NDgyYzJkMDIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3Y4
L2N1c3RvbS9WOFhNTEh0dHBSZXF1ZXN0Q29uc3RydWN0b3IuY3BwCisrKyBiL1NvdXJjZS9XZWJD
b3JlL2JpbmRpbmdzL3Y4L2N1c3RvbS9WOFhNTEh0dHBSZXF1ZXN0Q29uc3RydWN0b3IuY3BwCkBA
IC00OCw3ICs0OCw3IEBAIHY4OjpIYW5kbGU8djg6OlZhbHVlPiBWOFhNTEh0dHBSZXF1ZXN0Ojpj
b25zdHJ1Y3RvckNhbGxiYWNrKGNvbnN0IHY4OjpBcmd1bWVudHMmCiAgICAgSU5DX1NUQVRTKCJE
T00uWE1MSHR0cFJlcXVlc3QuQ29uc3RydWN0b3IiKTsKIAogICAgIGlmICghYXJncy5Jc0NvbnN0
cnVjdENhbGwoKSkKLSAgICAgICAgcmV0dXJuIHRocm93RXJyb3IoIkRPTSBvYmplY3QgY29uc3Ry
dWN0b3IgY2Fubm90IGJlIGNhbGxlZCBhcyBhIGZ1bmN0aW9uLiIsIFY4UHJveHk6OlR5cGVFcnJv
cik7CisgICAgICAgIHJldHVybiBWOFByb3h5Ojp0aHJvd1R5cGVFcnJvcigiRE9NIG9iamVjdCBj
b25zdHJ1Y3RvciBjYW5ub3QgYmUgY2FsbGVkIGFzIGEgZnVuY3Rpb24uIik7CiAKICAgICBpZiAo
Q29uc3RydWN0b3JNb2RlOjpjdXJyZW50KCkgPT0gQ29uc3RydWN0b3JNb2RlOjpXcmFwRXhpc3Rp
bmdPYmplY3QpCiAgICAgICAgIHJldHVybiBhcmdzLkhvbGRlcigpOwo=
</data>

          </attachment>
      

    </bug>

</bugzilla>