<?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>73589</bug_id>
          
          <creation_ts>2011-12-01 14:19:11 -0800</creation_ts>
          <short_desc>[V8][Chromium] Adjust postMessage to the latest &quot;implementation-ready&quot; spec</short_desc>
          <delta_ts>2011-12-07 20:38:15 -0800</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>WebCore Misc.</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="Dmitry Lomov">dslomov</reporter>
          <assigned_to name="Dmitry Lomov">dslomov</assigned_to>
          <cc>abarth</cc>
    
    <cc>caseq</cc>
    
    <cc>dglazkov</cc>
    
    <cc>eric</cc>
    
    <cc>japhet</cc>
    
    <cc>kbr</cc>
    
    <cc>levin</cc>
    
    <cc>lsong</cc>
    
    <cc>pfeldman</cc>
    
    <cc>webkit.review.bot</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>513101</commentid>
    <comment_count>0</comment_count>
    <who name="Dmitry Lomov">dslomov</who>
    <bug_when>2011-12-01 14:19:11 -0800</bug_when>
    <thetext>1. postMessage should support transfer of MessagePorts
2. the order of arguments to Window::postMessage and Window::webkitPostMessage should be (msg, targetOrigin [, transfer])</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>513104</commentid>
    <comment_count>1</comment_count>
      <attachid>117487</attachid>
    <who name="Dmitry Lomov">dslomov</who>
    <bug_when>2011-12-01 14:22:34 -0800</bug_when>
    <thetext>Created attachment 117487
Fix</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>513231</commentid>
    <comment_count>2</comment_count>
      <attachid>117487</attachid>
    <who name="David Levin">levin</who>
    <bug_when>2011-12-01 16:05:15 -0800</bug_when>
    <thetext>Comment on attachment 117487
Fix

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

&gt; Source/WebCore/bindings/v8/custom/V8DOMWindowCustom.cpp:306
&gt; +            if (!extractTransferables(args[2], portArray, arrayBufferArray))

You could combine with the previous if instead of having
if...
 if ...</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>513703</commentid>
    <comment_count>3</comment_count>
      <attachid>117487</attachid>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2011-12-02 05:49:21 -0800</bug_when>
    <thetext>Comment on attachment 117487
Fix

Attachment 117487 did not pass chromium-ews (chromium-xvfb):
Output: http://queues.webkit.org/results/10690360

New failing tests:
http/tests/inspector/extensions-headers.html
css2.1/20110323/abspos-containing-block-initial-004b.htm
http/tests/inspector/extensions-ignore-cache.html
inspector/extensions/extensions-audits-api.html
inspector/extensions/extensions-events.html
fast/forms/number/spin-in-multi-column.html
inspector/extensions/extensions-network.html
fast/replaced/width100percent-textarea.html
http/tests/inspector/extensions-network-redirect.html
inspector/extensions/extensions-audits.html
inspector/extensions/extensions-console.html
css2.1/20110323/abspos-containing-block-initial-004d.htm
inspector/extensions/extensions-eval.html
http/tests/inspector/extensions-useragent.html
inspector/extensions/extensions-panel.html
inspector/extensions/extensions-api.html</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>513846</commentid>
    <comment_count>4</comment_count>
    <who name="Dmitry Lomov">dslomov</who>
    <bug_when>2011-12-02 09:38:43 -0800</bug_when>
    <thetext>(In reply to comment #3)
&gt; (From update of attachment 117487 [details])
&gt; Attachment 117487 [details] did not pass chromium-ews (chromium-xvfb):
&gt; Output: http://queues.webkit.org/results/10690360
&gt; 
&gt; New failing tests:
&gt; http/tests/inspector/extensions-headers.html
&gt; css2.1/20110323/abspos-containing-block-initial-004b.htm
&gt; http/tests/inspector/extensions-ignore-cache.html
&gt; inspector/extensions/extensions-audits-api.html
&gt; inspector/extensions/extensions-events.html
&gt; fast/forms/number/spin-in-multi-column.html
&gt; inspector/extensions/extensions-network.html
&gt; fast/replaced/width100percent-textarea.html
&gt; http/tests/inspector/extensions-network-redirect.html
&gt; inspector/extensions/extensions-audits.html
&gt; inspector/extensions/extensions-console.html
&gt; css2.1/20110323/abspos-containing-block-initial-004d.htm
&gt; inspector/extensions/extensions-eval.html
&gt; http/tests/inspector/extensions-useragent.html
&gt; inspector/extensions/extensions-panel.html
&gt; inspector/extensions/extensions-api.html

These tests timeout on my machine even without a patch.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>513938</commentid>
    <comment_count>5</comment_count>
    <who name="Dmitry Lomov">dslomov</who>
    <bug_when>2011-12-02 11:03:28 -0800</bug_when>
    <thetext>Landed in http://trac.webkit.org/changeset/101831.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>514038</commentid>
    <comment_count>6</comment_count>
    <who name="Eric Seidel (no email)">eric</who>
    <bug_when>2011-12-02 13:00:26 -0800</bug_when>
    <thetext>This is causing a new failure on JSC bots:
http://build.webkit.org/results/Lion%20Intel%20Release%20(Tests)/r101838%20(3185)/fast/dom/Window/window-postmessage-args-pretty-diff.html</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>516981</commentid>
    <comment_count>7</comment_count>
    <who name="Andrey Kosyakov">caseq</who>
    <bug_when>2011-12-07 16:28:11 -0800</bug_when>
    <thetext>First, this indeed broke all inspector extensions tests (and extensions themselves), as extensions rely on an order of arguments in postMessage(). Doing a code search for postMessage() and paying attention to test results would probably save us from this, but I think this will also break quite a few pages in the internet that rely on postMessage().

Second, the actual order of the arguments, as processed by V8DOMWindowCustom::handlePostMessageCallback() is different from that in DOMWindow.idl -- I find this misleading to say least.

Third, the order of arguments is now different for JSC and V8 bindings -- so getting a code to work in two different WebKit browser is going to be tricky.

I believe the above justifies the roll back for this change.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>516991</commentid>
    <comment_count>8</comment_count>
    <who name="Dmitry Lomov">dslomov</who>
    <bug_when>2011-12-07 16:37:48 -0800</bug_when>
    <thetext>(In reply to comment #7)
&gt; First, this indeed broke all inspector extensions tests (and extensions themselves), as extensions rely on an order of arguments in postMessage(). Doing a code search for postMessage() and paying attention to test results would probably save us from this, but I think this will also break quite a few pages in the internet that rely on postMessage().
&gt; 
&gt; Second, the actual order of the arguments, as processed by V8DOMWindowCustom::handlePostMessageCallback() is different from that in DOMWindow.idl -- I find this misleading to say least.
&gt; 
&gt; Third, the order of arguments is now different for JSC and V8 bindings -- so getting a code to work in two different WebKit browser is going to be tricky.
&gt; 
&gt; I believe the above justifies the roll back for this change.

I am working on a fix that will return the support for legacy argument order.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>516994</commentid>
    <comment_count>9</comment_count>
    <who name="Dmitry Lomov">dslomov</who>
    <bug_when>2011-12-07 16:44:15 -0800</bug_when>
    <thetext>(In reply to comment #8)
&gt; (In reply to comment #7)
&gt; &gt; First, this indeed broke all inspector extensions tests (and extensions themselves), as extensions rely on an order of arguments in postMessage(). Doing a code search for postMessage() and paying attention to test results would probably save us from this, but I think this will also break quite a few pages in the internet that rely on postMessage().
&gt; &gt; 
&gt; &gt; Second, the actual order of the arguments, as processed by V8DOMWindowCustom::handlePostMessageCallback() is different from that in DOMWindow.idl -- I find this misleading to say least.
&gt; &gt; 
&gt; &gt; Third, the order of arguments is now different for JSC and V8 bindings -- so getting a code to work in two different WebKit browser is going to be tricky.
&gt; &gt; 
&gt; &gt; I believe the above justifies the roll back for this change.
&gt; 
&gt; I am working on a fix that will return the support for legacy argument order.

The bug is https://bugs.webkit.org/show_bug.cgi?id=74038</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>117487</attachid>
            <date>2011-12-01 14:22:34 -0800</date>
            <delta_ts>2011-12-02 05:49:20 -0800</delta_ts>
            <desc>Fix</desc>
            <filename>73589.patch</filename>
            <type>text/plain</type>
            <size>15753</size>
            <attacher name="Dmitry Lomov">dslomov</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL0NoYW5nZUxvZyBiL0xheW91dFRlc3RzL0NoYW5nZUxv
ZwppbmRleCA3YmJjMjY2Li44NGQyMGJmIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9DaGFuZ2VM
b2cKKysrIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTggQEAKKzIwMTEtMTIt
MDEgIERtaXRyeSBMb21vdiAgPGRzbG9tb3ZAZ29vZ2xlLmNvbT4KKworICAgICAgICBodHRwczov
L2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9NzM1ODkKKyAgICAgICAgW1Y4XVtDaHJv
bWl1bV0gQWRqdXN0IHBvc3RNZXNzYWdlIHRvIHRoZSBsYXRlc3QgImltcGxlbWVudGF0aW9uLXJl
YWR5IiBzcGVjLgorICAgICAgICAtIHBvc3RNZXNzYWdlIHNob3VsZCBzdXBwb3J0IHRyYW5zZmVy
IG9mIE1lc3NhZ2VQb3J0cworICAgICAgICAtIHRoZSBvcmRlciBvZiBhcmd1bWVudHMgdG8gV2lu
ZG93Ojpwb3N0TWVzc2FnZSBhbmQgV2luZG93Ojp3ZWJraXRQb3N0TWVzc2FnZSBzaG91bGQgYmUg
KG1zZywgdGFyZ2V0T3JpZ2luIFssIHRyYW5zZmVyXSkKKworICAgICAgICBSZXZpZXdlZCBieSBO
T0JPRFkgKE9PUFMhKS4KKworICAgICAgICAqIGZhc3QvY2FudmFzL3dlYmdsL3NjcmlwdC10ZXN0
cy9hcnJheWJ1ZmZlci10cmFuc2Zlci1vZi1jb250cm9sLmpzOgorICAgICAgICAod3JhcFNlbmQp
OgorICAgICAgICAod3JhcEZhaWxTZW5kKToKKyAgICAgICAgKiBmYXN0L2RvbS9XaW5kb3cvd2lu
ZG93LXBvc3RtZXNzYWdlLWFyZ3MuaHRtbDoKKyAgICAgICAgKiBwbGF0Zm9ybS9jaHJvbWl1bS9m
YXN0L2RvbS9XaW5kb3cvd2luZG93LXBvc3RtZXNzYWdlLWFyZ3MtZXhwZWN0ZWQudHh0OgorCiAy
MDExLTEyLTAxICBKZWZmIFRpbWFudXMgIDx0d2l6QGNocm9taXVtLm9yZz4KIAogICAgICAgICBD
bGVhbmluZyB1cCBjb21tZW50cyBhbmQgdW51c2VkIHBvcnRpb25zIG9mIGEgd2ViZ2wgdGVzdCwg
YXMgcGVyIHJldmlldyBjb21tZW50cy4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3QvY2Fu
dmFzL3dlYmdsL3NjcmlwdC10ZXN0cy9hcnJheWJ1ZmZlci10cmFuc2Zlci1vZi1jb250cm9sLmpz
IGIvTGF5b3V0VGVzdHMvZmFzdC9jYW52YXMvd2ViZ2wvc2NyaXB0LXRlc3RzL2FycmF5YnVmZmVy
LXRyYW5zZmVyLW9mLWNvbnRyb2wuanMKaW5kZXggNjQ2NzEyZC4uMGJjN2IyOSAxMDA2NDQKLS0t
IGEvTGF5b3V0VGVzdHMvZmFzdC9jYW52YXMvd2ViZ2wvc2NyaXB0LXRlc3RzL2FycmF5YnVmZmVy
LXRyYW5zZmVyLW9mLWNvbnRyb2wuanMKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC9jYW52YXMvd2Vi
Z2wvc2NyaXB0LXRlc3RzL2FycmF5YnVmZmVyLXRyYW5zZmVyLW9mLWNvbnRyb2wuanMKQEAgLTI0
MSw3ICsyNDEsNyBAQCBmdW5jdGlvbiBjaGVja0VtcHR5QXJyYXkodGVzdE5hbWUsIGFycmF5KQog
ZnVuY3Rpb24gd3JhcFNlbmQodGVzdE5hbWUsIG1lc3NhZ2UsIHhmZXIpCiB7CiAgICAgdHJ5IHsK
LSAgICAgICAgd2luZG93LndlYmtpdFBvc3RNZXNzYWdlKG1lc3NhZ2UsIHhmZXIsICcqJyk7Cisg
ICAgICAgIHdpbmRvdy53ZWJraXRQb3N0TWVzc2FnZShtZXNzYWdlLCAnKicsIHhmZXIpOwogICAg
IH0gY2F0Y2ggKGUpIHsKICAgICAgICAgdGVzdEZhaWxlZCh0ZXN0TmFtZSArICI6IGNvdWxkIG5v
dCB3ZWJraXRQb3N0TWVzc2FnZTogIiArIGUpOwogICAgICAgICBkb25lVGVzdCgpOwpAQCAtMjUz
LDcgKzI1Myw3IEBAIGZ1bmN0aW9uIHdyYXBTZW5kKHRlc3ROYW1lLCBtZXNzYWdlLCB4ZmVyKQog
ZnVuY3Rpb24gd3JhcEZhaWxTZW5kKHRlc3ROYW1lLCBtZXNzYWdlLCB4ZmVyKQogewogICAgIHRy
eSB7Ci0gICAgICAgIHdpbmRvdy53ZWJraXRQb3N0TWVzc2FnZShtZXNzYWdlLCB4ZmVyLCAnKicp
OworICAgICAgICB3aW5kb3cud2Via2l0UG9zdE1lc3NhZ2UobWVzc2FnZSwgJyonLCB4ZmVyKTsK
ICAgICB9IGNhdGNoIChlKSB7CiAgICAgICAgIHJldHVybiB0cnVlOwogICAgIH0KZGlmZiAtLWdp
dCBhL0xheW91dFRlc3RzL2Zhc3QvZG9tL1dpbmRvdy93aW5kb3ctcG9zdG1lc3NhZ2UtYXJncy5o
dG1sIGIvTGF5b3V0VGVzdHMvZmFzdC9kb20vV2luZG93L3dpbmRvdy1wb3N0bWVzc2FnZS1hcmdz
Lmh0bWwKaW5kZXggNmQwYTUyZi4uNWU0MjRmNCAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvZmFz
dC9kb20vV2luZG93L3dpbmRvdy1wb3N0bWVzc2FnZS1hcmdzLmh0bWwKKysrIGIvTGF5b3V0VGVz
dHMvZmFzdC9kb20vV2luZG93L3dpbmRvdy1wb3N0bWVzc2FnZS1hcmdzLmh0bWwKQEAgLTI5LDkg
KzI5LDkgQEAgZnVuY3Rpb24gdHJ5UG9zdE1lc3NhZ2VGdW5jdGlvbihwb3N0TWVzc2FnZUZ1bmN0
aW9uLCBmaXJzdCwgc2Vjb25kLCB0aGlyZCwgc2hvdWwKICAgICAgICAgICAgIHBvc3RNZXNzYWdl
RnVuY3Rpb24oZmlyc3QsIHNlY29uZCk7CiAgICAgICAgIGVsc2UKICAgICAgICAgICAgIHBvc3RN
ZXNzYWdlRnVuY3Rpb24oZmlyc3QsIHNlY29uZCwgdGhpcmQpOwotICAgICAgICBjb25zb2xlLmlu
bmVySFRNTCArPSAoc2hvdWxkRmFpbCA/ICJGQUlMIiA6ICJQQVNTIikgKyAiOiBQb3N0aW5nIG1l
c3NhZ2UgKCciICsgZmlyc3QgKyAiJywgIiArIHNlY29uZCArICIpIGRpZCBub3QgdGhyb3cgYW4g
ZXhjZXB0aW9uPGJyPiI7CisgICAgICAgIGNvbnNvbGUuaW5uZXJIVE1MICs9IChzaG91bGRGYWls
ID8gIkZBSUwiIDogIlBBU1MiKSArICI6IFBvc3RpbmcgbWVzc2FnZSAoJyIgKyBmaXJzdCArICIn
LCAiICsgdGhpcmQgKyAiKSBkaWQgbm90IHRocm93IGFuIGV4Y2VwdGlvbjxicj4iOwogICAgfSBj
YXRjaCAoZSkgewotICAgICAgICBjb25zb2xlLmlubmVySFRNTCArPSAoc2hvdWxkRmFpbCA/ICJQ
QVNTIiA6ICJGQUlMIikgKyAiOiBQb3N0aW5nIG1lc3NhZ2UgKCciICsgZmlyc3QgKyAiJywgIiAr
IHNlY29uZCArICIpOiB0aHJldyBleGNlcHRpb24gIiArIGUgKyAiPGJyPiI7CisgICAgICAgIGNv
bnNvbGUuaW5uZXJIVE1MICs9IChzaG91bGRGYWlsID8gIlBBU1MiIDogIkZBSUwiKSArICI6IFBv
c3RpbmcgbWVzc2FnZSAoJyIgKyBmaXJzdCArICInLCAiICsgdGhpcmQgKyAiKTogdGhyZXcgZXhj
ZXB0aW9uICIgKyBlICsgIjxicj4iOwogICAgfQogfQogCkBAIC00MiwyNyArNDIsMjcgQEAgZnVu
Y3Rpb24gdHJ5UG9zdE1lc3NhZ2UoZmlyc3QsIHNlY29uZCwgdGhpcmQsIHNob3VsZEZhaWwpIHsK
IAogZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImRlc2NyaXB0aW9uIikuaW5uZXJIVE1MID0gIlRl
c3QgdGhhdCB0aGUgc2Vjb25kIGFyZ3VtZW50IG9mIHdpbmRvdy5wb3N0TWVzc2FnZSBpcyBpZ25v
cmVkIG9yIHRyaWdnZXJzIGFuIGVycm9yIGlmIGl0IGlzIG5vdCBhIG1lc3NhZ2UgcG9ydC4gWW91
IHNob3VsZCBzZWUgUEFTUyBtZXNzYWdlICcxJyB0aHJvdWdoICc3JywgZm9sbG93ZWQgYnkgJ2Rv
bmUnLCB3aXRoIG1lc3NhZ2VzIDQtNyByZWNlaXZlZCBiZWxvdy48YnI+PGJyPiI7CiAKLXRyeVBv
c3RNZXNzYWdlKCcxJywgMSwgJyonLCB0cnVlKTsKLXRyeVBvc3RNZXNzYWdlKCcyJywgIiIsICcq
JywgdHJ1ZSk7Ci10cnlQb3N0TWVzc2FnZSgnMycsIHsgeDogMSB9LCAnKicsIHRydWUpOwotdHJ5
UG9zdE1lc3NhZ2UoJzQnLCB3aW5kb3csICcqJyk7ICAvLyBQYXNzZXMgYmVjYXVzZSB3aW5kb3cg
aGFzIGEgImxlbmd0aCIgYXR0cmlidXRlIG9mIHZhbHVlICcwJywgc28gaXQgbG9va3MgbGlrZSBh
biBhcnJheQotdHJ5UG9zdE1lc3NhZ2UoJzUnLCBudWxsLCAnKicpOwotdHJ5UG9zdE1lc3NhZ2Uo
JzYnLCB2b2lkIDAsICcqJyk7Cit0cnlQb3N0TWVzc2FnZSgnMScsICcqJywgMSwgdHJ1ZSk7Cit0
cnlQb3N0TWVzc2FnZSgnMicsICcqJywgJ2MnLCB0cnVlKTsKK3RyeVBvc3RNZXNzYWdlKCczJywg
JyonLCB7IHg6IDEgfSwgdHJ1ZSk7Cit0cnlQb3N0TWVzc2FnZSgnNCcsICcqJywgd2luZG93KTsg
IC8vIFBhc3NlcyBiZWNhdXNlIHdpbmRvdyBoYXMgYSAibGVuZ3RoIiBhdHRyaWJ1dGUgb2YgdmFs
dWUgJzAnLCBzbyBpdCBsb29rcyBsaWtlIGFuIGFycmF5Cit0cnlQb3N0TWVzc2FnZSgnNScsICcq
JywgbnVsbCk7Cit0cnlQb3N0TWVzc2FnZSgnNicsICcqJywgdm9pZCAwKTsKIHZhciBjaGFubmVs
MSA9IG5ldyBNZXNzYWdlQ2hhbm5lbDsKLXRyeVBvc3RNZXNzYWdlRnVuY3Rpb24od2luZG93LnBv
c3RNZXNzYWdlLCAnNycsIFtjaGFubmVsMS5wb3J0MSwgY2hhbm5lbDEucG9ydDJdLCAnKicpOwor
dHJ5UG9zdE1lc3NhZ2VGdW5jdGlvbih3aW5kb3cucG9zdE1lc3NhZ2UsICc3JywgJyonLCBbY2hh
bm5lbDEucG9ydDEsIGNoYW5uZWwxLnBvcnQyXSk7CiB2YXIgY2hhbm5lbDIgPSBuZXcgTWVzc2Fn
ZUNoYW5uZWw7Ci10cnlQb3N0TWVzc2FnZUZ1bmN0aW9uKHdpbmRvdy53ZWJraXRQb3N0TWVzc2Fn
ZSwgJzcnLCBbY2hhbm5lbDIucG9ydDEsIGNoYW5uZWwyLnBvcnQyXSwgJyonKTsKK3RyeVBvc3RN
ZXNzYWdlRnVuY3Rpb24od2luZG93LndlYmtpdFBvc3RNZXNzYWdlLCAnNycsICcqJywgW2NoYW5u
ZWwyLnBvcnQxLCBjaGFubmVsMi5wb3J0Ml0pOwogdmFyIGNoYW5uZWwzID0gbmV3IE1lc3NhZ2VD
aGFubmVsOwotdHJ5UG9zdE1lc3NhZ2UoMjE0NzQ4MzY0OCwgbnVsbCwgJyonKTsKLXRyeVBvc3RN
ZXNzYWdlRnVuY3Rpb24od2luZG93LnBvc3RNZXNzYWdlLCBjaGFubmVsMy5wb3J0MSwgW2NoYW5u
ZWwzLnBvcnQxLCBjaGFubmVsMy5wb3J0Ml0sICcqJywgdHJ1ZSk7Cit0cnlQb3N0TWVzc2FnZSgy
MTQ3NDgzNjQ4LCAnKicsIG51bGwpOwordHJ5UG9zdE1lc3NhZ2VGdW5jdGlvbih3aW5kb3cucG9z
dE1lc3NhZ2UsIGNoYW5uZWwzLnBvcnQxLCAnKicsIFtjaGFubmVsMy5wb3J0MSwgY2hhbm5lbDMu
cG9ydDJdKTsKIHZhciBjaGFubmVsNCA9IG5ldyBNZXNzYWdlQ2hhbm5lbDsKLXRyeVBvc3RNZXNz
YWdlRnVuY3Rpb24od2luZG93LndlYmtpdFBvc3RNZXNzYWdlLCBjaGFubmVsNC5wb3J0MSwgW2No
YW5uZWw0LnBvcnQxLCBjaGFubmVsNC5wb3J0Ml0sICcqJyk7Cit0cnlQb3N0TWVzc2FnZUZ1bmN0
aW9uKHdpbmRvdy53ZWJraXRQb3N0TWVzc2FnZSwgY2hhbm5lbDQucG9ydDEsICcqJywgW2NoYW5u
ZWw0LnBvcnQxLCBjaGFubmVsNC5wb3J0Ml0pOwogdmFyIGNoYW5uZWw1ID0gbmV3IE1lc3NhZ2VD
aGFubmVsOwotdHJ5UG9zdE1lc3NhZ2VGdW5jdGlvbih3aW5kb3cud2Via2l0UG9zdE1lc3NhZ2Us
IFtjaGFubmVsNS5wb3J0MSwgY2hhbm5lbDUucG9ydDJdLCBbY2hhbm5lbDUucG9ydDEsIGNoYW5u
ZWw1LnBvcnQyXSwgJyonKTsKK3RyeVBvc3RNZXNzYWdlRnVuY3Rpb24od2luZG93LndlYmtpdFBv
c3RNZXNzYWdlLCBbY2hhbm5lbDUucG9ydDEsIGNoYW5uZWw1LnBvcnQyXSwgJyonLCBbY2hhbm5l
bDUucG9ydDEsIGNoYW5uZWw1LnBvcnQyXSk7CiAKIHZhciBhcnJheUJ1ZmZlciA9IG5ldyBBcnJh
eUJ1ZmZlcigzMCk7CiB2YXIgaW50OFZpZXcgPSBuZXcgSW50OEFycmF5KGFycmF5QnVmZmVyLCAy
LCAxMCk7Ci10cnlQb3N0TWVzc2FnZUZ1bmN0aW9uKHdpbmRvdy53ZWJraXRQb3N0TWVzc2FnZSwg
YXJyYXlCdWZmZXIsIFthcnJheUJ1ZmZlcl0sICcqJyk7Cit0cnlQb3N0TWVzc2FnZUZ1bmN0aW9u
KHdpbmRvdy53ZWJraXRQb3N0TWVzc2FnZSwgYXJyYXlCdWZmZXIsICcqJywgW2FycmF5QnVmZmVy
XSk7CiBpZiAoIShhcnJheUJ1ZmZlci5ieXRlTGVuZ3RoID09PSAwKSkgewogICAgIGNvbnNvbGUu
aW5uZXJIVE1MICs9ICJGQUlMOiBhcnJheUJ1ZmZlciBub3QgbmV1dGVyZWQ7IGJ5dGVMZW5ndGgg
PSAiICsgYXJyYXlCdWZmZXIuYnl0ZUxlbmd0aCArICI8YnI+IjsKIH0KZGlmZiAtLWdpdCBhL0xh
eW91dFRlc3RzL3BsYXRmb3JtL2Nocm9taXVtL2Zhc3QvZG9tL1dpbmRvdy93aW5kb3ctcG9zdG1l
c3NhZ2UtYXJncy1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9jaHJvbWl1bS9m
YXN0L2RvbS9XaW5kb3cvd2luZG93LXBvc3RtZXNzYWdlLWFyZ3MtZXhwZWN0ZWQudHh0CmluZGV4
IDIzYWE4NTIuLjhmMmE1NjkgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL3BsYXRmb3JtL2Nocm9t
aXVtL2Zhc3QvZG9tL1dpbmRvdy93aW5kb3ctcG9zdG1lc3NhZ2UtYXJncy1leHBlY3RlZC50eHQK
KysrIGIvTGF5b3V0VGVzdHMvcGxhdGZvcm0vY2hyb21pdW0vZmFzdC9kb20vV2luZG93L3dpbmRv
dy1wb3N0bWVzc2FnZS1hcmdzLWV4cGVjdGVkLnR4dApAQCAtMiw4ICsyLDggQEAgVGVzdCB0aGF0
IHRoZSBzZWNvbmQgYXJndW1lbnQgb2Ygd2luZG93LnBvc3RNZXNzYWdlIGlzIGlnbm9yZWQgb3Ig
dHJpZ2dlcnMgYW4gZXIKIAogUEFTUzogUG9zdGluZyBtZXNzYWdlICgnMScsIDEpOiB0aHJldyBl
eGNlcHRpb24gVHlwZUVycm9yOiBUcmFuc2ZlckFycmF5IGFyZ3VtZW50IG11c3QgYmUgYW4gb2Jq
ZWN0CiBQQVNTOiBQb3N0aW5nIG1lc3NhZ2UgKCcxJywgMSk6IHRocmV3IGV4Y2VwdGlvbiBUeXBl
RXJyb3I6IFRyYW5zZmVyQXJyYXkgYXJndW1lbnQgbXVzdCBiZSBhbiBvYmplY3QKLVBBU1M6IFBv
c3RpbmcgbWVzc2FnZSAoJzInLCApOiB0aHJldyBleGNlcHRpb24gVHlwZUVycm9yOiBUcmFuc2Zl
ckFycmF5IGFyZ3VtZW50IG11c3QgYmUgYW4gb2JqZWN0Ci1QQVNTOiBQb3N0aW5nIG1lc3NhZ2Ug
KCcyJywgKTogdGhyZXcgZXhjZXB0aW9uIFR5cGVFcnJvcjogVHJhbnNmZXJBcnJheSBhcmd1bWVu
dCBtdXN0IGJlIGFuIG9iamVjdAorUEFTUzogUG9zdGluZyBtZXNzYWdlICgnMicsIGMpOiB0aHJl
dyBleGNlcHRpb24gVHlwZUVycm9yOiBUcmFuc2ZlckFycmF5IGFyZ3VtZW50IG11c3QgYmUgYW4g
b2JqZWN0CitQQVNTOiBQb3N0aW5nIG1lc3NhZ2UgKCcyJywgYyk6IHRocmV3IGV4Y2VwdGlvbiBU
eXBlRXJyb3I6IFRyYW5zZmVyQXJyYXkgYXJndW1lbnQgbXVzdCBiZSBhbiBvYmplY3QKIFBBU1M6
IFBvc3RpbmcgbWVzc2FnZSAoJzMnLCBbb2JqZWN0IE9iamVjdF0pOiB0aHJldyBleGNlcHRpb24g
VHlwZUVycm9yOiBUcmFuc2ZlckFycmF5IGFyZ3VtZW50IGhhcyBubyBsZW5ndGggYXR0cmlidXRl
CiBQQVNTOiBQb3N0aW5nIG1lc3NhZ2UgKCczJywgW29iamVjdCBPYmplY3RdKTogdGhyZXcgZXhj
ZXB0aW9uIFR5cGVFcnJvcjogVHJhbnNmZXJBcnJheSBhcmd1bWVudCBoYXMgbm8gbGVuZ3RoIGF0
dHJpYnV0ZQogUEFTUzogUG9zdGluZyBtZXNzYWdlICgnNCcsIFtvYmplY3QgRE9NV2luZG93XSkg
ZGlkIG5vdCB0aHJvdyBhbiBleGNlcHRpb24KQEAgLTE2LDEzICsxNiwxMyBAQCBQQVNTOiBQb3N0
aW5nIG1lc3NhZ2UgKCc3JywgW29iamVjdCBNZXNzYWdlUG9ydF0sW29iamVjdCBNZXNzYWdlUG9y
dF0pIGRpZCBub3QgdAogUEFTUzogUG9zdGluZyBtZXNzYWdlICgnNycsIFtvYmplY3QgTWVzc2Fn
ZVBvcnRdLFtvYmplY3QgTWVzc2FnZVBvcnRdKSBkaWQgbm90IHRocm93IGFuIGV4Y2VwdGlvbgog
UEFTUzogUG9zdGluZyBtZXNzYWdlICgnMjE0NzQ4MzY0OCcsIG51bGwpIGRpZCBub3QgdGhyb3cg
YW4gZXhjZXB0aW9uCiBQQVNTOiBQb3N0aW5nIG1lc3NhZ2UgKCcyMTQ3NDgzNjQ4JywgbnVsbCkg
ZGlkIG5vdCB0aHJvdyBhbiBleGNlcHRpb24KLVBBU1M6IFBvc3RpbmcgbWVzc2FnZSAoJ1tvYmpl
Y3QgTWVzc2FnZVBvcnRdJywgW29iamVjdCBNZXNzYWdlUG9ydF0sW29iamVjdCBNZXNzYWdlUG9y
dF0pOiB0aHJldyBleGNlcHRpb24gRXJyb3I6IERBVEFfQ0xPTkVfRVJSOiBET00gRXhjZXB0aW9u
IDI1CitQQVNTOiBQb3N0aW5nIG1lc3NhZ2UgKCdbb2JqZWN0IE1lc3NhZ2VQb3J0XScsIFtvYmpl
Y3QgTWVzc2FnZVBvcnRdLFtvYmplY3QgTWVzc2FnZVBvcnRdKSBkaWQgbm90IHRocm93IGFuIGV4
Y2VwdGlvbgogUEFTUzogUG9zdGluZyBtZXNzYWdlICgnW29iamVjdCBNZXNzYWdlUG9ydF0nLCBb
b2JqZWN0IE1lc3NhZ2VQb3J0XSxbb2JqZWN0IE1lc3NhZ2VQb3J0XSkgZGlkIG5vdCB0aHJvdyBh
biBleGNlcHRpb24KIFBBU1M6IFBvc3RpbmcgbWVzc2FnZSAoJ1tvYmplY3QgTWVzc2FnZVBvcnRd
LFtvYmplY3QgTWVzc2FnZVBvcnRdJywgW29iamVjdCBNZXNzYWdlUG9ydF0sW29iamVjdCBNZXNz
YWdlUG9ydF0pIGRpZCBub3QgdGhyb3cgYW4gZXhjZXB0aW9uCiBQQVNTOiBQb3N0aW5nIG1lc3Nh
Z2UgKCdbb2JqZWN0IEFycmF5QnVmZmVyXScsIFtvYmplY3QgQXJyYXlCdWZmZXJdKSBkaWQgbm90
IHRocm93IGFuIGV4Y2VwdGlvbgogUEFTUzogYXJyYXlCdWZmZXIgbmV1dGVyZWQKIFBBU1M6IHZp
ZXcgbmV1dGVyZWQKLVBBU1M6IFBvc3RpbmcgbWVzc2FnZSAoJ2RvbmUnLCAqKSBkaWQgbm90IHRo
cm93IGFuIGV4Y2VwdGlvbgorUEFTUzogUG9zdGluZyBtZXNzYWdlICgnZG9uZScsIHVuZGVmaW5l
ZCkgZGlkIG5vdCB0aHJvdyBhbiBleGNlcHRpb24KIFJlY2VpdmVkIG1lc3NhZ2UgJzQnIHdpdGgg
MCBwb3J0cy4KIFJlY2VpdmVkIG1lc3NhZ2UgJzQnIHdpdGggMCBwb3J0cy4KIFJlY2VpdmVkIG1l
c3NhZ2UgJzUnIHdpdGggMCBwb3J0cy4KQEAgLTM0LDYgKzM0LDcgQEAgUmVjZWl2ZWQgbWVzc2Fn
ZSAnNycgd2l0aCAyIHBvcnRzLgogUmVjZWl2ZWQgbWVzc2FnZSAnMjE0NzQ4MzY0OCcgd2l0aCAw
IHBvcnRzLgogUmVjZWl2ZWQgbWVzc2FnZSAnMjE0NzQ4MzY0OCcgd2l0aCAwIHBvcnRzLgogUmVj
ZWl2ZWQgbWVzc2FnZSAnW29iamVjdCBNZXNzYWdlUG9ydF0nIHdpdGggMiBwb3J0cy4KK1JlY2Vp
dmVkIG1lc3NhZ2UgJ1tvYmplY3QgTWVzc2FnZVBvcnRdJyB3aXRoIDIgcG9ydHMuCiBSZWNlaXZl
ZCBtZXNzYWdlICdbb2JqZWN0IE1lc3NhZ2VQb3J0XSxbb2JqZWN0IE1lc3NhZ2VQb3J0XScgd2l0
aCAyIHBvcnRzLgogUmVjZWl2ZWQgbWVzc2FnZSAnW29iamVjdCBBcnJheUJ1ZmZlcl0nIHdpdGgg
MCBwb3J0cy4KIFJlY2VpdmVkIG1lc3NhZ2UgJ2RvbmUnIHdpdGggMCBwb3J0cy4KZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpp
bmRleCBmNDIwNzg0Li45Mzg5ZDZlIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VM
b2cKKysrIGIvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMjEgQEAKKzIwMTEt
MTItMDEgIERtaXRyeSBMb21vdiAgPGRzbG9tb3ZAZ29vZ2xlLmNvbT4KKworICAgICAgICBodHRw
czovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9NzM1ODkKKyAgICAgICAgW1Y4XVtD
aHJvbWl1bV0gQWRqdXN0IHBvc3RNZXNzYWdlIHRvIHRoZSBsYXRlc3QgImltcGxlbWVudGF0aW9u
LXJlYWR5IiBzcGVjLgorICAgICAgICAtIHBvc3RNZXNzYWdlIHNob3VsZCBzdXBwb3J0IHRyYW5z
ZmVyIG9mIE1lc3NhZ2VQb3J0cworICAgICAgICAtIHRoZSBvcmRlciBvZiBhcmd1bWVudHMgdG8g
V2luZG93Ojpwb3N0TWVzc2FnZSBhbmQgV2luZG93Ojp3ZWJraXRQb3N0TWVzc2FnZSBzaG91bGQg
YmUgKG1zZywgdGFyZ2V0T3JpZ2luIFssIHRyYW5zZmVyXSkKKworICAgICAgICBSZXZpZXdlZCBi
eSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICAqIGJpbmRpbmdzL3Y4L2N1c3RvbS9WOERPTVdp
bmRvd0N1c3RvbS5jcHA6CisgICAgICAgIChXZWJDb3JlOjpoYW5kbGVQb3N0TWVzc2FnZUNhbGxi
YWNrKToKKyAgICAgICAgKiBiaW5kaW5ncy92OC9jdXN0b20vVjhEZWRpY2F0ZWRXb3JrZXJDb250
ZXh0Q3VzdG9tLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OmhhbmRsZVBvc3RNZXNzYWdlQ2FsbGJh
Y2spOgorICAgICAgICAqIGJpbmRpbmdzL3Y4L2N1c3RvbS9WOE1lc3NhZ2VQb3J0Q3VzdG9tLmNw
cDoKKyAgICAgICAgKFdlYkNvcmU6OmhhbmRsZVBvc3RNZXNzYWdlQ2FsbGJhY2spOgorICAgICAg
ICAqIGJpbmRpbmdzL3Y4L2N1c3RvbS9WOFdvcmtlckN1c3RvbS5jcHA6CisgICAgICAgIChXZWJD
b3JlOjpoYW5kbGVQb3N0TWVzc2FnZUNhbGxiYWNrKToKKwogMjAxMS0xMi0wMSAgQW5kcmVhcyBL
bGluZyAgPGtsaW5nQHdlYmtpdC5vcmc+CiAKICAgICAgICAgQ1NTU3R5bGVTZWxlY3RvcjogQWRk
IG1pc3NpbmcgZmllbGRzIHRvIGNvbnN0cnVjdG9yIGluaXRpYWxpemVyIGxpc3QuCmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy92OC9jdXN0b20vVjhET01XaW5kb3dDdXN0b20u
Y3BwIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvdjgvY3VzdG9tL1Y4RE9NV2luZG93Q3VzdG9t
LmNwcAppbmRleCA4YjFmMmQ4Li5mNzVjNTEyIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9i
aW5kaW5ncy92OC9jdXN0b20vVjhET01XaW5kb3dDdXN0b20uY3BwCisrKyBiL1NvdXJjZS9XZWJD
b3JlL2JpbmRpbmdzL3Y4L2N1c3RvbS9WOERPTVdpbmRvd0N1c3RvbS5jcHAKQEAgLTI4Niw3ICsy
ODYsNyBAQCB2ODo6SGFuZGxlPHY4OjpWYWx1ZT4gVjhET01XaW5kb3c6OnJlbW92ZUV2ZW50TGlz
dGVuZXJDYWxsYmFjayhjb25zdCB2ODo6QXJndW1lbgogICAgIHJldHVybiB2ODo6VW5kZWZpbmVk
KCk7CiB9CiAKLXN0YXRpYyB2ODo6SGFuZGxlPHY4OjpWYWx1ZT4gaGFuZGxlUG9zdE1lc3NhZ2VD
YWxsYmFjayhjb25zdCB2ODo6QXJndW1lbnRzJiBhcmdzLCBib29sIGRvVHJhbnNmZXIpCitzdGF0
aWMgdjg6OkhhbmRsZTx2ODo6VmFsdWU+IGhhbmRsZVBvc3RNZXNzYWdlQ2FsbGJhY2soY29uc3Qg
djg6OkFyZ3VtZW50cyYgYXJncywgYm9vbCBleHRlbmRlZFRyYW5zZmVyKQogewogICAgIERPTVdp
bmRvdyogd2luZG93ID0gVjhET01XaW5kb3c6OnRvTmF0aXZlKGFyZ3MuSG9sZGVyKCkpOwogCkBA
IC0zMDMsMTEgKzMwMywxMCBAQCBzdGF0aWMgdjg6OkhhbmRsZTx2ODo6VmFsdWU+IGhhbmRsZVBv
c3RNZXNzYWdlQ2FsbGJhY2soY29uc3Qgdjg6OkFyZ3VtZW50cyYgYXJncwogICAgIHsKICAgICAg
ICAgdjg6OlRyeUNhdGNoIHRyeUNhdGNoOwogICAgICAgICBpZiAoYXJncy5MZW5ndGgoKSA+IDIp
IHsKLSAgICAgICAgICAgIGlmICghZXh0cmFjdFRyYW5zZmVyYWJsZXMoYXJnc1sxXSwgcG9ydEFy
cmF5LCBhcnJheUJ1ZmZlckFycmF5KSkKKyAgICAgICAgICAgIGlmICghZXh0cmFjdFRyYW5zZmVy
YWJsZXMoYXJnc1syXSwgcG9ydEFycmF5LCBhcnJheUJ1ZmZlckFycmF5KSkKICAgICAgICAgICAg
ICAgICByZXR1cm4gdjg6OlVuZGVmaW5lZCgpOwotICAgICAgICAgICAgdGFyZ2V0T3JpZ2luID0g
dG9XZWJDb3JlU3RyaW5nV2l0aE51bGxPclVuZGVmaW5lZENoZWNrKGFyZ3NbMl0pOwotICAgICAg
ICB9IGVsc2UKLSAgICAgICAgICAgIHRhcmdldE9yaWdpbiA9IHRvV2ViQ29yZVN0cmluZ1dpdGhO
dWxsT3JVbmRlZmluZWRDaGVjayhhcmdzWzFdKTsKKyAgICAgICAgfSAKKyAgICAgICAgdGFyZ2V0
T3JpZ2luID0gdG9XZWJDb3JlU3RyaW5nV2l0aE51bGxPclVuZGVmaW5lZENoZWNrKGFyZ3NbMV0p
OwogCiAgICAgICAgIGlmICh0cnlDYXRjaC5IYXNDYXVnaHQoKSkKICAgICAgICAgICAgIHJldHVy
biB2ODo6VW5kZWZpbmVkKCk7CkBAIC0zMTcsOCArMzE2LDggQEAgc3RhdGljIHY4OjpIYW5kbGU8
djg6OlZhbHVlPiBoYW5kbGVQb3N0TWVzc2FnZUNhbGxiYWNrKGNvbnN0IHY4OjpBcmd1bWVudHMm
IGFyZ3MKICAgICBib29sIGRpZFRocm93ID0gZmFsc2U7CiAgICAgUmVmUHRyPFNlcmlhbGl6ZWRT
Y3JpcHRWYWx1ZT4gbWVzc2FnZSA9CiAgICAgICAgIFNlcmlhbGl6ZWRTY3JpcHRWYWx1ZTo6Y3Jl
YXRlKGFyZ3NbMF0sCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRvVHJh
bnNmZXIgPyAmcG9ydEFycmF5IDogMCwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgZG9UcmFuc2ZlciA/ICZhcnJheUJ1ZmZlckFycmF5IDogMCwKKyAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgJnBvcnRBcnJheSwKKyAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgZXh0ZW5kZWRUcmFuc2ZlciA/ICZhcnJheUJ1ZmZlckFycmF5IDog
MCwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZGlkVGhyb3cpOwogICAg
IGlmIChkaWRUaHJvdykKICAgICAgICAgcmV0dXJuIHY4OjpVbmRlZmluZWQoKTsKZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3Y4L2N1c3RvbS9WOERlZGljYXRlZFdvcmtlckNv
bnRleHRDdXN0b20uY3BwIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvdjgvY3VzdG9tL1Y4RGVk
aWNhdGVkV29ya2VyQ29udGV4dEN1c3RvbS5jcHAKaW5kZXggZDdhNGY1Ny4uYTFmMmE3NiAxMDA2
NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvdjgvY3VzdG9tL1Y4RGVkaWNhdGVkV29y
a2VyQ29udGV4dEN1c3RvbS5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvdjgvY3Vz
dG9tL1Y4RGVkaWNhdGVkV29ya2VyQ29udGV4dEN1c3RvbS5jcHAKQEAgLTQzLDcgKzQzLDcgQEAK
IAogbmFtZXNwYWNlIFdlYkNvcmUgewogCi1zdGF0aWMgdjg6OkhhbmRsZTx2ODo6VmFsdWU+IGhh
bmRsZVBvc3RNZXNzYWdlQ2FsbGJhY2soY29uc3Qgdjg6OkFyZ3VtZW50cyYgYXJncywgYm9vbCBk
b1RyYW5zZmVyKQorc3RhdGljIHY4OjpIYW5kbGU8djg6OlZhbHVlPiBoYW5kbGVQb3N0TWVzc2Fn
ZUNhbGxiYWNrKGNvbnN0IHY4OjpBcmd1bWVudHMmIGFyZ3MsIGJvb2wgZXh0ZW5kZWRUcmFuc2Zl
cikKIHsKICAgICBEZWRpY2F0ZWRXb3JrZXJDb250ZXh0KiB3b3JrZXJDb250ZXh0ID0gVjhEZWRp
Y2F0ZWRXb3JrZXJDb250ZXh0Ojp0b05hdGl2ZShhcmdzLkhvbGRlcigpKTsKICAgICBNZXNzYWdl
UG9ydEFycmF5IHBvcnRzOwpAQCAtNTUsOCArNTUsOCBAQCBzdGF0aWMgdjg6OkhhbmRsZTx2ODo6
VmFsdWU+IGhhbmRsZVBvc3RNZXNzYWdlQ2FsbGJhY2soY29uc3Qgdjg6OkFyZ3VtZW50cyYgYXJn
cwogICAgIGJvb2wgZGlkVGhyb3cgPSBmYWxzZTsKICAgICBSZWZQdHI8U2VyaWFsaXplZFNjcmlw
dFZhbHVlPiBtZXNzYWdlID0KICAgICAgICAgU2VyaWFsaXplZFNjcmlwdFZhbHVlOjpjcmVhdGUo
YXJnc1swXSwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZG9UcmFuc2Zl
ciA/ICZwb3J0cyA6IDAsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRv
VHJhbnNmZXIgPyAmYXJyYXlCdWZmZXJzIDogMCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgJnBvcnRzLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICBleHRlbmRlZFRyYW5zZmVyID8gJmFycmF5QnVmZmVycyA6IDAsCiAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgIGRpZFRocm93KTsKICAgICBpZiAoZGlkVGhyb3cpCiAgICAg
ICAgIHJldHVybiB2ODo6VW5kZWZpbmVkKCk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9i
aW5kaW5ncy92OC9jdXN0b20vVjhNZXNzYWdlUG9ydEN1c3RvbS5jcHAgYi9Tb3VyY2UvV2ViQ29y
ZS9iaW5kaW5ncy92OC9jdXN0b20vVjhNZXNzYWdlUG9ydEN1c3RvbS5jcHAKaW5kZXggZWQ2Zjc4
OC4uNzJkZjI4OSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvdjgvY3VzdG9t
L1Y4TWVzc2FnZVBvcnRDdXN0b20uY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3Y4
L2N1c3RvbS9WOE1lc3NhZ2VQb3J0Q3VzdG9tLmNwcApAQCAtNDIsNyArNDIsNyBAQAogCiBuYW1l
c3BhY2UgV2ViQ29yZSB7CiAKLXN0YXRpYyB2ODo6SGFuZGxlPHY4OjpWYWx1ZT4gaGFuZGxlUG9z
dE1lc3NhZ2VDYWxsYmFjayhjb25zdCB2ODo6QXJndW1lbnRzJiBhcmdzLCBib29sIGRvVHJhbnNm
ZXIpCitzdGF0aWMgdjg6OkhhbmRsZTx2ODo6VmFsdWU+IGhhbmRsZVBvc3RNZXNzYWdlQ2FsbGJh
Y2soY29uc3Qgdjg6OkFyZ3VtZW50cyYgYXJncywgYm9vbCBleHRlbmRlZFRyYW5zZmVyKQogewog
ICAgIE1lc3NhZ2VQb3J0KiBtZXNzYWdlUG9ydCA9IFY4TWVzc2FnZVBvcnQ6OnRvTmF0aXZlKGFy
Z3MuSG9sZGVyKCkpOwogICAgIE1lc3NhZ2VQb3J0QXJyYXkgcG9ydEFycmF5OwpAQCAtNTQsOCAr
NTQsOCBAQCBzdGF0aWMgdjg6OkhhbmRsZTx2ODo6VmFsdWU+IGhhbmRsZVBvc3RNZXNzYWdlQ2Fs
bGJhY2soY29uc3Qgdjg6OkFyZ3VtZW50cyYgYXJncwogICAgIGJvb2wgZGlkVGhyb3cgPSBmYWxz
ZTsKICAgICBSZWZQdHI8U2VyaWFsaXplZFNjcmlwdFZhbHVlPiBtZXNzYWdlID0KICAgICAgICAg
U2VyaWFsaXplZFNjcmlwdFZhbHVlOjpjcmVhdGUoYXJnc1swXSwKLSAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgZG9UcmFuc2ZlciA/ICZwb3J0QXJyYXkgOiAwLAotICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkb1RyYW5zZmVyID8gJmFycmF5QnVmZmVy
QXJyYXkgOiAwLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAmcG9ydEFy
cmF5LAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBleHRlbmRlZFRyYW5z
ZmVyID8gJmFycmF5QnVmZmVyQXJyYXkgOiAwLAogICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICBkaWRUaHJvdyk7CiAgICAgaWYgKGRpZFRocm93KQogICAgICAgICByZXR1cm4g
djg6OlVuZGVmaW5lZCgpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvdjgv
Y3VzdG9tL1Y4V29ya2VyQ3VzdG9tLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3Y4L2N1
c3RvbS9WOFdvcmtlckN1c3RvbS5jcHAKaW5kZXggZjVjY2RjYi4uYWJiM2U0ZiAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvdjgvY3VzdG9tL1Y4V29ya2VyQ3VzdG9tLmNwcAor
KysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy92OC9jdXN0b20vVjhXb3JrZXJDdXN0b20uY3Bw
CkBAIC00Nyw3ICs0Nyw3IEBACiAKIG5hbWVzcGFjZSBXZWJDb3JlIHsKIAotc3RhdGljIHY4OjpI
YW5kbGU8djg6OlZhbHVlPiBoYW5kbGVQb3N0TWVzc2FnZUNhbGxiYWNrKGNvbnN0IHY4OjpBcmd1
bWVudHMmIGFyZ3MsIGJvb2wgZG9UcmFuc2ZlcikKK3N0YXRpYyB2ODo6SGFuZGxlPHY4OjpWYWx1
ZT4gaGFuZGxlUG9zdE1lc3NhZ2VDYWxsYmFjayhjb25zdCB2ODo6QXJndW1lbnRzJiBhcmdzLCBi
b29sIGV4dGVuZGVkVHJhbnNmZXIpCiB7CiAgICAgSU5DX1NUQVRTKCJET00uV29ya2VyLnBvc3RN
ZXNzYWdlIik7CiAgICAgV29ya2VyKiB3b3JrZXIgPSBWOFdvcmtlcjo6dG9OYXRpdmUoYXJncy5I
b2xkZXIoKSk7CkBAIC02MCw4ICs2MCw4IEBAIHN0YXRpYyB2ODo6SGFuZGxlPHY4OjpWYWx1ZT4g
aGFuZGxlUG9zdE1lc3NhZ2VDYWxsYmFjayhjb25zdCB2ODo6QXJndW1lbnRzJiBhcmdzCiAgICAg
Ym9vbCBkaWRUaHJvdyA9IGZhbHNlOwogICAgIFJlZlB0cjxTZXJpYWxpemVkU2NyaXB0VmFsdWU+
IG1lc3NhZ2UgPQogICAgICAgICBTZXJpYWxpemVkU2NyaXB0VmFsdWU6OmNyZWF0ZShhcmdzWzBd
LAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkb1RyYW5zZmVyID8gJnBv
cnRzIDogMCwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZG9UcmFuc2Zl
ciA/ICZhcnJheUJ1ZmZlcnMgOiAwLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAmcG9ydHMsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGV4dGVu
ZGVkVHJhbnNmZXIgPyAmYXJyYXlCdWZmZXJzIDogMCwKICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgZGlkVGhyb3cpOwogICAgIGlmIChkaWRUaHJvdykKICAgICAgICAgcmV0
dXJuIHY4OjpVbmRlZmluZWQoKTsK
</data>
<flag name="review"
          id="116933"
          type_id="1"
          status="+"
          setter="levin"
    />
    <flag name="commit-queue"
          id="116934"
          type_id="3"
          status="-"
          setter="webkit.review.bot"
    />
          </attachment>
      

    </bug>

</bugzilla>