<?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>122494</bug_id>
          
          <creation_ts>2013-10-08 00:04:02 -0700</creation_ts>
          <short_desc>Use references in EventRetargeter::calculateEventPath and EventRetargeter::eventTargetRespectingTargetRules</short_desc>
          <delta_ts>2013-10-08 11:02:06 -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>UI Events</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>
          
          <blocked>122500</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="Ryosuke Niwa">rniwa</reporter>
          <assigned_to name="Ryosuke Niwa">rniwa</assigned_to>
          <cc>andersca</cc>
    
    <cc>benjamin</cc>
    
    <cc>commit-queue</cc>
    
    <cc>eflews.bot</cc>
    
    <cc>esprehn+autocc</cc>
    
    <cc>gyuyoung.kim</cc>
    
    <cc>kangil.han</cc>
    
    <cc>kling</cc>
    
    <cc>koivisto</cc>
    
    <cc>sam</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>937407</commentid>
    <comment_count>0</comment_count>
    <who name="Ryosuke Niwa">rniwa</who>
    <bug_when>2013-10-08 00:04:02 -0700</bug_when>
    <thetext>Use references in EventRetargeter::calculateEventPath and EventRetargeter::eventTargetRespectingTargetRules</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>937410</commentid>
    <comment_count>1</comment_count>
      <attachid>213665</attachid>
    <who name="Ryosuke Niwa">rniwa</who>
    <bug_when>2013-10-08 00:07:27 -0700</bug_when>
    <thetext>Created attachment 213665
Cleanup</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>937415</commentid>
    <comment_count>2</comment_count>
      <attachid>213665</attachid>
    <who name="EFL EWS Bot">eflews.bot</who>
    <bug_when>2013-10-08 00:12:04 -0700</bug_when>
    <thetext>Comment on attachment 213665
Cleanup

Attachment 213665 did not pass efl-ews (efl):
Output: http://webkit-queues.appspot.com/results/3746045</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>937419</commentid>
    <comment_count>3</comment_count>
      <attachid>213665</attachid>
    <who name="EFL EWS Bot">eflews.bot</who>
    <bug_when>2013-10-08 00:13:29 -0700</bug_when>
    <thetext>Comment on attachment 213665
Cleanup

Attachment 213665 did not pass efl-wk2-ews (efl-wk2):
Output: http://webkit-queues.appspot.com/results/3735038</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>937422</commentid>
    <comment_count>4</comment_count>
      <attachid>213669</attachid>
    <who name="Ryosuke Niwa">rniwa</who>
    <bug_when>2013-10-08 00:19:20 -0700</bug_when>
    <thetext>Created attachment 213669
Fixed EFL build</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>937494</commentid>
    <comment_count>5</comment_count>
      <attachid>213669</attachid>
    <who name="Antti Koivisto">koivisto</who>
    <bug_when>2013-10-08 05:35:18 -0700</bug_when>
    <thetext>Comment on attachment 213669
Fixed EFL build

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

&gt; Source/WebCore/dom/EventRetargeter.cpp:89
&gt; +    EventTarget* target = 0;
&gt;  
&gt; -    for (Node* node = nodeOrHostIfPseudoElement(targetNode); node; node = node-&gt;parentOrShadowHostNode()) {
&gt; -        if (targetStack.isEmpty())
&gt; -            targetStack.append(eventTargetRespectingTargetRules(node));
&gt; +    for (Node* node = nodeOrHostIfPseudoElement(&amp;targetNode); node; node = node-&gt;parentOrShadowHostNode()) {
&gt; +        if (!target)
&gt; +            target = &amp;eventTargetRespectingTargetRules(*node);
&gt; +

You could make target a reference too by moving the initialisation out of the loop.

&gt; Source/WebCore/dom/EventRetargeter.h:73
&gt; +inline EventTarget&amp; EventRetargeter::eventTargetRespectingTargetRules(Node&amp; referenceNode)
&gt;  {

This could probably be moved out of line.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>937590</commentid>
    <comment_count>6</comment_count>
      <attachid>213669</attachid>
    <who name="Ryosuke Niwa">rniwa</who>
    <bug_when>2013-10-08 10:36:19 -0700</bug_when>
    <thetext>Comment on attachment 213669
Fixed EFL build

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

&gt;&gt; Source/WebCore/dom/EventRetargeter.cpp:89
&gt;&gt; +
&gt; 
&gt; You could make target a reference too by moving the initialisation out of the loop.

We can&apos;t. target is overridden in some iterations; namely when the last node was a non-SVG shadow root.

&gt;&gt; Source/WebCore/dom/EventRetargeter.h:73
&gt;&gt;  {
&gt; 
&gt; This could probably be moved out of line.

Let me do that in a separate patch.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>937592</commentid>
    <comment_count>7</comment_count>
      <attachid>213669</attachid>
    <who name="Ryosuke Niwa">rniwa</who>
    <bug_when>2013-10-08 10:36:53 -0700</bug_when>
    <thetext>Comment on attachment 213669
Fixed EFL build

Landing as is for now.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>937594</commentid>
    <comment_count>8</comment_count>
      <attachid>213669</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2013-10-08 11:02:02 -0700</bug_when>
    <thetext>Comment on attachment 213669
Fixed EFL build

Clearing flags on attachment: 213669

Committed r157123: &lt;http://trac.webkit.org/changeset/157123&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>937595</commentid>
    <comment_count>9</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2013-10-08 11:02:06 -0700</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>213665</attachid>
            <date>2013-10-08 00:07:27 -0700</date>
            <delta_ts>2013-10-08 00:19:17 -0700</delta_ts>
            <desc>Cleanup</desc>
            <filename>bug-122494-20131008000727.patch</filename>
            <type>text/plain</type>
            <size>10654</size>
            <attacher name="Ryosuke Niwa">rniwa</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2Vi
Q29yZS9DaGFuZ2VMb2cJKHJldmlzaW9uIDE1NzA4OCkKKysrIFNvdXJjZS9XZWJDb3JlL0NoYW5n
ZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDI3IEBACisyMDEzLTEwLTA4ICBSeW9zdWtl
IE5pd2EgIDxybml3YUB3ZWJraXQub3JnPgorCisgICAgICAgIFVzZSByZWZlcmVuY2VzIGluIEV2
ZW50UmV0YXJnZXRlcjo6Y2FsY3VsYXRlRXZlbnRQYXRoIGFuZCBFdmVudFJldGFyZ2V0ZXI6OmV2
ZW50VGFyZ2V0UmVzcGVjdGluZ1RhcmdldFJ1bGVzCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJr
aXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xMjI0OTQKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JP
RFkgKE9PUFMhKS4KKworICAgICAgICBVc2UgcmVmZXJlbmVjcyBpbnN0ZWFkIG9mIHBvaW50ZXJz
IGluIHZlbnRSZXRhcmdldGVyJ3MgY2FsY3VsYXRlRXZlbnRQYXRoIGFuZCBldmVudFRhcmdldFJl
c3BlY3RpbmdUYXJnZXRSdWxlcy4KKyAgICAgICAgQWxzbyByZXBsYWNlIFZlY3RvcjxFdmVudFRh
cmdldCosIDMyPiB0YXJnZXRTdGFjayBieSBhIHNpbmdsZSBwb2ludGVyIHNpbmNlIHdlIG9ubHkg
YXBwZW5kIGFuIGl0ZW0gdG8KKyAgICAgICAgdGhlIHZlY3RvciB3aGVuIGl0J3MgZW1wdHkgYW5k
IHdlIGFsd2F5cyB1c2UgdGhlIGxhc3QgaXRlbS4KKworICAgICAgICAqIGRvbS9FdmVudERpc3Bh
dGNoZXIuY3BwOgorICAgICAgICAoV2ViQ29yZTo6RXZlbnREaXNwYXRjaGVyOjpFdmVudERpc3Bh
dGNoZXIpOgorICAgICAgICAoV2ViQ29yZTo6RXZlbnREaXNwYXRjaGVyOjpkaXNwYXRjaFNjb3Bl
ZEV2ZW50KToKKyAgICAgICAgKFdlYkNvcmU6OkV2ZW50RGlzcGF0Y2hlcjo6ZGlzcGF0Y2gpOgor
ICAgICAgICAoV2ViQ29yZTo6RXZlbnREaXNwYXRjaGVyOjpkaXNwYXRjaEV2ZW50UG9zdFByb2Nl
c3MpOgorICAgICAgICAqIGRvbS9FdmVudERpc3BhdGNoZXIuaDoKKyAgICAgICAgKiBkb20vRXZl
bnRSZXRhcmdldGVyLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkV2ZW50UmV0YXJnZXRlcjo6Y2Fs
Y3VsYXRlRXZlbnRQYXRoKToKKyAgICAgICAgKiBkb20vRXZlbnRSZXRhcmdldGVyLmg6CisgICAg
ICAgIChXZWJDb3JlOjpFdmVudFJldGFyZ2V0ZXI6OmV2ZW50VGFyZ2V0UmVzcGVjdGluZ1Rhcmdl
dFJ1bGVzKToKKyAgICAgICAgKiBkb20vTm9kZS5jcHA6CisgICAgICAgIChXZWJDb3JlOjpOb2Rl
OjpkaXNwYXRjaFNjb3BlZEV2ZW50RGlzcGF0Y2hNZWRpYXRvcik6CisKIDIwMTMtMTAtMDcgIFJ5
b3N1a2UgTml3YSAgPHJuaXdhQHdlYmtpdC5vcmc+CiAKICAgICAgICAgRXZlbnREaXNwYXRjaEJl
aGF2aW9yIGlzIHVubmVjZXNzYXJ5CkluZGV4OiBTb3VyY2UvV2ViQ29yZS9kb20vRXZlbnREaXNw
YXRjaGVyLmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9kb20vRXZlbnREaXNwYXRj
aGVyLmNwcAkocmV2aXNpb24gMTU3MDg1KQorKysgU291cmNlL1dlYkNvcmUvZG9tL0V2ZW50RGlz
cGF0Y2hlci5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTU5LDE3ICs1OSwxNyBAQCBFdmVudERpc3Bh
dGNoZXI6OkV2ZW50RGlzcGF0Y2hlcihOb2RlKiBuCiAgICAgLCBtX2V2ZW50RGlzcGF0Y2hlZChm
YWxzZSkKICNlbmRpZgogewotICAgIEFTU0VSVChub2RlKTsKLSAgICBBU1NFUlQobV9ldmVudC5n
ZXQoKSk7CisgICAgQVNTRVJUKG1fbm9kZSk7CisgICAgQVNTRVJUKG1fZXZlbnQpOwogICAgIEFT
U0VSVCghbV9ldmVudC0+dHlwZSgpLmlzTnVsbCgpKTsgLy8gSmF2YVNjcmlwdCBjb2RlIGNhbiBj
cmVhdGUgYW4gZXZlbnQgd2l0aCBhbiBlbXB0eSBuYW1lLCBidXQgbm90IG51bGwuCiAgICAgbV92
aWV3ID0gbm9kZS0+ZG9jdW1lbnQoKS52aWV3KCk7Ci0gICAgRXZlbnRSZXRhcmdldGVyOjpjYWxj
dWxhdGVFdmVudFBhdGgobV9ub2RlLmdldCgpLCBtX2V2ZW50LmdldCgpLCBtX2V2ZW50UGF0aCk7
CisgICAgRXZlbnRSZXRhcmdldGVyOjpjYWxjdWxhdGVFdmVudFBhdGgoKm1fbm9kZSwgKm1fZXZl
bnQsIG1fZXZlbnRQYXRoKTsKIH0KIAotdm9pZCBFdmVudERpc3BhdGNoZXI6OmRpc3BhdGNoU2Nv
cGVkRXZlbnQoTm9kZSogbm9kZSwgUGFzc1JlZlB0cjxFdmVudERpc3BhdGNoTWVkaWF0b3I+IG1l
ZGlhdG9yKQordm9pZCBFdmVudERpc3BhdGNoZXI6OmRpc3BhdGNoU2NvcGVkRXZlbnQoTm9kZSYg
bm9kZSwgUGFzc1JlZlB0cjxFdmVudERpc3BhdGNoTWVkaWF0b3I+IG1lZGlhdG9yKQogewogICAg
IC8vIFdlIG5lZWQgdG8gc2V0IHRoZSB0YXJnZXQgaGVyZSBiZWNhdXNlIGl0IGNhbiBnbyBhd2F5
IGJ5IHRoZSB0aW1lIHdlIGFjdHVhbGx5IGZpcmUgdGhlIGV2ZW50LgotICAgIG1lZGlhdG9yLT5l
dmVudCgpLT5zZXRUYXJnZXQoRXZlbnRSZXRhcmdldGVyOjpldmVudFRhcmdldFJlc3BlY3RpbmdU
YXJnZXRSdWxlcyhub2RlKSk7CisgICAgbWVkaWF0b3ItPmV2ZW50KCktPnNldFRhcmdldCgmRXZl
bnRSZXRhcmdldGVyOjpldmVudFRhcmdldFJlc3BlY3RpbmdUYXJnZXRSdWxlcyhub2RlKSk7CiAg
ICAgU2NvcGVkRXZlbnRRdWV1ZTo6aW5zdGFuY2UoKS0+ZW5xdWV1ZUV2ZW50RGlzcGF0Y2hNZWRp
YXRvcihtZWRpYXRvcik7CiB9CiAKQEAgLTEwNiw3ICsxMDYsOCBAQCBib29sIEV2ZW50RGlzcGF0
Y2hlcjo6ZGlzcGF0Y2goKQogI2VuZGlmCiAgICAgQ2hpbGROb2Rlc0xhenlTbmFwc2hvdDo6dGFr
ZUNoaWxkTm9kZXNMYXp5U25hcHNob3QoKTsKIAotICAgIG1fZXZlbnQtPnNldFRhcmdldChFdmVu
dFJldGFyZ2V0ZXI6OmV2ZW50VGFyZ2V0UmVzcGVjdGluZ1RhcmdldFJ1bGVzKG1fbm9kZS5nZXQo
KSkpOworICAgIEFTU0VSVChtX25vZGUpOworICAgIG1fZXZlbnQtPnNldFRhcmdldCgmRXZlbnRS
ZXRhcmdldGVyOjpldmVudFRhcmdldFJlc3BlY3RpbmdUYXJnZXRSdWxlcygqbV9ub2RlKSk7CiAg
ICAgQVNTRVJUKCFOb0V2ZW50RGlzcGF0Y2hBc3NlcnRpb246OmlzRXZlbnREaXNwYXRjaEZvcmJp
ZGRlbigpKTsKICAgICBBU1NFUlQobV9ldmVudC0+dGFyZ2V0KCkpOwogICAgIFdpbmRvd0V2ZW50
Q29udGV4dCB3aW5kb3dFdmVudENvbnRleHQobV9ldmVudC5nZXQoKSwgbV9ub2RlLmdldCgpLCB0
b3BFdmVudENvbnRleHQoKSk7CkBAIC0xODUsNyArMTg2LDggQEAgaW5saW5lIHZvaWQgRXZlbnRE
aXNwYXRjaGVyOjpkaXNwYXRjaEV2ZQogCiBpbmxpbmUgdm9pZCBFdmVudERpc3BhdGNoZXI6OmRp
c3BhdGNoRXZlbnRQb3N0UHJvY2Vzcyhjb25zdCBJbnB1dEVsZW1lbnRDbGlja1N0YXRlJiBJbnB1
dEVsZW1lbnRDbGlja1N0YXRlKQogewotICAgIG1fZXZlbnQtPnNldFRhcmdldChFdmVudFJldGFy
Z2V0ZXI6OmV2ZW50VGFyZ2V0UmVzcGVjdGluZ1RhcmdldFJ1bGVzKG1fbm9kZS5nZXQoKSkpOwor
ICAgIEFTU0VSVChtX25vZGUpOworICAgIG1fZXZlbnQtPnNldFRhcmdldCgmRXZlbnRSZXRhcmdl
dGVyOjpldmVudFRhcmdldFJlc3BlY3RpbmdUYXJnZXRSdWxlcygqbV9ub2RlKSk7CiAgICAgbV9l
dmVudC0+c2V0Q3VycmVudFRhcmdldCgwKTsKICAgICBtX2V2ZW50LT5zZXRFdmVudFBoYXNlKDAp
OwogCkluZGV4OiBTb3VyY2UvV2ViQ29yZS9kb20vRXZlbnREaXNwYXRjaGVyLmgKPT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PQotLS0gU291cmNlL1dlYkNvcmUvZG9tL0V2ZW50RGlzcGF0Y2hlci5oCShyZXZpc2lvbiAxNTcw
ODUpCisrKyBTb3VyY2UvV2ViQ29yZS9kb20vRXZlbnREaXNwYXRjaGVyLmgJKHdvcmtpbmcgY29w
eSkKQEAgLTU1LDcgKzU1LDcgQEAgZW51bSBFdmVudERpc3BhdGNoQ29udGludWF0aW9uIHsKIGNs
YXNzIEV2ZW50RGlzcGF0Y2hlciB7CiBwdWJsaWM6CiAgICAgc3RhdGljIGJvb2wgZGlzcGF0Y2hF
dmVudChOb2RlKiwgUGFzc1JlZlB0cjxFdmVudERpc3BhdGNoTWVkaWF0b3I+KTsKLSAgICBzdGF0
aWMgdm9pZCBkaXNwYXRjaFNjb3BlZEV2ZW50KE5vZGUqLCBQYXNzUmVmUHRyPEV2ZW50RGlzcGF0
Y2hNZWRpYXRvcj4pOworICAgIHN0YXRpYyB2b2lkIGRpc3BhdGNoU2NvcGVkRXZlbnQoTm9kZSYs
IFBhc3NSZWZQdHI8RXZlbnREaXNwYXRjaE1lZGlhdG9yPik7CiAKICAgICBzdGF0aWMgdm9pZCBk
aXNwYXRjaFNpbXVsYXRlZENsaWNrKEVsZW1lbnQqLCBFdmVudCogdW5kZXJseWluZ0V2ZW50LCBT
aW11bGF0ZWRDbGlja01vdXNlRXZlbnRPcHRpb25zLCBTaW11bGF0ZWRDbGlja1Zpc3VhbE9wdGlv
bnMpOwogCkluZGV4OiBTb3VyY2UvV2ViQ29yZS9kb20vRXZlbnRSZXRhcmdldGVyLmNwcAo9PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9kb20vRXZlbnRSZXRhcmdldGVyLmNwcAkocmV2aXNp
b24gMTU3MDg1KQorKysgU291cmNlL1dlYkNvcmUvZG9tL0V2ZW50UmV0YXJnZXRlci5jcHAJKHdv
cmtpbmcgY29weSkKQEAgLTczLDM5ICs3MywzNyBAQCBzdGF0aWMgTm9kZSogbm9kZU9ySG9zdElm
UHNldWRvRWxlbWVudChOCiAgICAgcmV0dXJuIG5vZGUtPmlzUHNldWRvRWxlbWVudCgpID8gdG9Q
c2V1ZG9FbGVtZW50KG5vZGUpLT5ob3N0RWxlbWVudCgpIDogbm9kZTsKIH0KIAotdm9pZCBFdmVu
dFJldGFyZ2V0ZXI6OmNhbGN1bGF0ZUV2ZW50UGF0aChOb2RlKiB0YXJnZXROb2RlLCBFdmVudCog
ZXZlbnQsIEV2ZW50UGF0aCYgZXZlbnRQYXRoKQordm9pZCBFdmVudFJldGFyZ2V0ZXI6OmNhbGN1
bGF0ZUV2ZW50UGF0aChOb2RlJiB0YXJnZXROb2RlLCBFdmVudCYgZXZlbnQsIEV2ZW50UGF0aCYg
ZXZlbnRQYXRoKQogewotICAgIEFTU0VSVChldmVudCk7Ci0gICAgYm9vbCBpbkRvY3VtZW50ID0g
dGFyZ2V0Tm9kZS0+aW5Eb2N1bWVudCgpOwotICAgIGJvb2wgaXNTVkdFbGVtZW50ID0gdGFyZ2V0
Tm9kZS0+aXNTVkdFbGVtZW50KCk7Ci0gICAgYm9vbCBpc01vdXNlT3JGb2N1c0V2ZW50ID0gZXZl
bnQtPmlzTW91c2VFdmVudCgpIHx8IGV2ZW50LT5pc0ZvY3VzRXZlbnQoKTsKKyAgICBib29sIGlu
RG9jdW1lbnQgPSB0YXJnZXROb2RlLmluRG9jdW1lbnQoKTsKKyAgICBib29sIGlzU1ZHRWxlbWVu
dCA9IHRhcmdldE5vZGUuaXNTVkdFbGVtZW50KCk7CisgICAgYm9vbCBpc01vdXNlT3JGb2N1c0V2
ZW50ID0gZXZlbnQuaXNNb3VzZUV2ZW50KCkgfHwgZXZlbnQuaXNGb2N1c0V2ZW50KCk7CiAjaWYg
RU5BQkxFKFRPVUNIX0VWRU5UUykKICAgICBib29sIGlzVG91Y2hFdmVudCA9IGV2ZW50LT5pc1Rv
dWNoRXZlbnQoKTsKICNlbmRpZgotICAgIFZlY3RvcjxFdmVudFRhcmdldCosIDMyPiB0YXJnZXRT
dGFjazsKKyAgICBFdmVudFRhcmdldCogdGFyZ2V0ID0gMDsKIAotICAgIGZvciAoTm9kZSogbm9k
ZSA9IG5vZGVPckhvc3RJZlBzZXVkb0VsZW1lbnQodGFyZ2V0Tm9kZSk7IG5vZGU7IG5vZGUgPSBu
b2RlLT5wYXJlbnRPclNoYWRvd0hvc3ROb2RlKCkpIHsKLSAgICAgICAgaWYgKHRhcmdldFN0YWNr
LmlzRW1wdHkoKSkKLSAgICAgICAgICAgIHRhcmdldFN0YWNrLmFwcGVuZChldmVudFRhcmdldFJl
c3BlY3RpbmdUYXJnZXRSdWxlcyhub2RlKSk7CisgICAgZm9yIChOb2RlKiBub2RlID0gbm9kZU9y
SG9zdElmUHNldWRvRWxlbWVudCgmdGFyZ2V0Tm9kZSk7IG5vZGU7IG5vZGUgPSBub2RlLT5wYXJl
bnRPclNoYWRvd0hvc3ROb2RlKCkpIHsKKyAgICAgICAgaWYgKCF0YXJnZXQpCisgICAgICAgICAg
ICB0YXJnZXQgPSAmZXZlbnRUYXJnZXRSZXNwZWN0aW5nVGFyZ2V0UnVsZXMoKm5vZGUpOworCisg
ICAgICAgIEV2ZW50VGFyZ2V0JiBjdXJyZW50VGFyZ2V0ID0gZXZlbnRUYXJnZXRSZXNwZWN0aW5n
VGFyZ2V0UnVsZXMoKm5vZGUpOwogICAgICAgICBpZiAoaXNNb3VzZU9yRm9jdXNFdmVudCkKLSAg
ICAgICAgICAgIGV2ZW50UGF0aC5hcHBlbmQoYWRvcHRQdHIobmV3IE1vdXNlT3JGb2N1c0V2ZW50
Q29udGV4dChub2RlLCBldmVudFRhcmdldFJlc3BlY3RpbmdUYXJnZXRSdWxlcyhub2RlKSwgdGFy
Z2V0U3RhY2subGFzdCgpKSkpOworICAgICAgICAgICAgZXZlbnRQYXRoLmFwcGVuZChhZG9wdFB0
cihuZXcgTW91c2VPckZvY3VzRXZlbnRDb250ZXh0KG5vZGUsICZjdXJyZW50VGFyZ2V0LCB0YXJn
ZXQpKSk7CiAjaWYgRU5BQkxFKFRPVUNIX0VWRU5UUykKICAgICAgICAgZWxzZSBpZiAoaXNUb3Vj
aEV2ZW50KQotICAgICAgICAgICAgZXZlbnRQYXRoLmFwcGVuZChhZG9wdFB0cihuZXcgVG91Y2hF
dmVudENvbnRleHQobm9kZSwgZXZlbnRUYXJnZXRSZXNwZWN0aW5nVGFyZ2V0UnVsZXMobm9kZSks
IHRhcmdldFN0YWNrLmxhc3QoKSkpKTsKKyAgICAgICAgICAgIGV2ZW50UGF0aC5hcHBlbmQoYWRv
cHRQdHIobmV3IFRvdWNoRXZlbnRDb250ZXh0KG5vZGUsICZjdXJyZW50VGFyZ2V0LCB0YXJnZXQp
KSk7CiAjZW5kaWYKICAgICAgICAgZWxzZQotICAgICAgICAgICAgZXZlbnRQYXRoLmFwcGVuZChh
ZG9wdFB0cihuZXcgRXZlbnRDb250ZXh0KG5vZGUsIGV2ZW50VGFyZ2V0UmVzcGVjdGluZ1Rhcmdl
dFJ1bGVzKG5vZGUpLCB0YXJnZXRTdGFjay5sYXN0KCkpKSk7CisgICAgICAgICAgICBldmVudFBh
dGguYXBwZW5kKGFkb3B0UHRyKG5ldyBFdmVudENvbnRleHQobm9kZSwgJmN1cnJlbnRUYXJnZXQs
IHRhcmdldCkpKTsKICAgICAgICAgaWYgKCFpbkRvY3VtZW50KQogICAgICAgICAgICAgcmV0dXJu
OwogICAgICAgICBpZiAoIW5vZGUtPmlzU2hhZG93Um9vdCgpKQogICAgICAgICAgICAgY29udGlu
dWU7Ci0gICAgICAgIEFTU0VSVCghdGFyZ2V0U3RhY2suaXNFbXB0eSgpKTsKLSAgICAgICAgaWYg
KCFzaG91bGRFdmVudENyb3NzU2hhZG93Qm91bmRhcnkoKmV2ZW50LCAqdG9TaGFkb3dSb290KG5v
ZGUpLCAqdGFyZ2V0U3RhY2subGFzdCgpKSkKKyAgICAgICAgaWYgKCFzaG91bGRFdmVudENyb3Nz
U2hhZG93Qm91bmRhcnkoZXZlbnQsICp0b1NoYWRvd1Jvb3Qobm9kZSksICp0YXJnZXQpKQogICAg
ICAgICAgICAgcmV0dXJuOwotICAgICAgICBpZiAoIWlzU1ZHRWxlbWVudCkgewotICAgICAgICAg
ICAgQVNTRVJUKCF0YXJnZXRTdGFjay5pc0VtcHR5KCkpOwotICAgICAgICAgICAgdGFyZ2V0U3Rh
Y2sucmVtb3ZlTGFzdCgpOwotICAgICAgICB9CisgICAgICAgIGlmICghaXNTVkdFbGVtZW50KQor
ICAgICAgICAgICAgdGFyZ2V0ID0gMDsKICAgICB9CiB9CiAKSW5kZXg6IFNvdXJjZS9XZWJDb3Jl
L2RvbS9FdmVudFJldGFyZ2V0ZXIuaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9kb20v
RXZlbnRSZXRhcmdldGVyLmgJKHJldmlzaW9uIDE1NzA4NSkKKysrIFNvdXJjZS9XZWJDb3JlL2Rv
bS9FdmVudFJldGFyZ2V0ZXIuaAkod29ya2luZyBjb3B5KQpAQCAtNDcsMTQgKzQ3LDE0IEBAIGNs
YXNzIFRyZWVTY29wZTsKIAogY2xhc3MgRXZlbnRSZXRhcmdldGVyIHsKIHB1YmxpYzoKLSAgICBz
dGF0aWMgdm9pZCBjYWxjdWxhdGVFdmVudFBhdGgoTm9kZSosIEV2ZW50KiwgRXZlbnRQYXRoJik7
CisgICAgc3RhdGljIHZvaWQgY2FsY3VsYXRlRXZlbnRQYXRoKE5vZGUmLCBFdmVudCYsIEV2ZW50
UGF0aCYpOwogICAgIHN0YXRpYyB2b2lkIGFkanVzdEZvck1vdXNlRXZlbnQoTm9kZSosIGNvbnN0
IE1vdXNlRXZlbnQmLCBFdmVudFBhdGgmKTsKICAgICBzdGF0aWMgdm9pZCBhZGp1c3RGb3JGb2N1
c0V2ZW50KE5vZGUqLCBjb25zdCBGb2N1c0V2ZW50JiwgRXZlbnRQYXRoJik7CiAjaWYgRU5BQkxF
KFRPVUNIX0VWRU5UUykKICAgICB0eXBlZGVmIFZlY3RvcjxSZWZQdHI8VG91Y2hMaXN0PiA+IEV2
ZW50UGF0aFRvdWNoTGlzdHM7CiAgICAgc3RhdGljIHZvaWQgYWRqdXN0Rm9yVG91Y2hFdmVudChO
b2RlKiwgY29uc3QgVG91Y2hFdmVudCYsIEV2ZW50UGF0aCYpOwogI2VuZGlmCi0gICAgc3RhdGlj
IEV2ZW50VGFyZ2V0KiBldmVudFRhcmdldFJlc3BlY3RpbmdUYXJnZXRSdWxlcyhOb2RlKiByZWZl
cmVuY2VOb2RlKTsKKyAgICBzdGF0aWMgRXZlbnRUYXJnZXQmIGV2ZW50VGFyZ2V0UmVzcGVjdGlu
Z1RhcmdldFJ1bGVzKE5vZGUmIHJlZmVyZW5jZU5vZGUpOwogCiBwcml2YXRlOgogICAgIHR5cGVk
ZWYgVmVjdG9yPFJlZlB0cjxOb2RlPiA+IEFkanVzdGVkTm9kZXM7CkBAIC02OSwyNyArNjksMjgg
QEAgcHJpdmF0ZToKICNlbmRpZgogfTsKIAotaW5saW5lIEV2ZW50VGFyZ2V0KiBFdmVudFJldGFy
Z2V0ZXI6OmV2ZW50VGFyZ2V0UmVzcGVjdGluZ1RhcmdldFJ1bGVzKE5vZGUqIHJlZmVyZW5jZU5v
ZGUpCitpbmxpbmUgRXZlbnRUYXJnZXQmIEV2ZW50UmV0YXJnZXRlcjo6ZXZlbnRUYXJnZXRSZXNw
ZWN0aW5nVGFyZ2V0UnVsZXMoTm9kZSYgcmVmZXJlbmNlTm9kZSkKIHsKLSAgICBBU1NFUlQocmVm
ZXJlbmNlTm9kZSk7Ci0KLSAgICBpZiAocmVmZXJlbmNlTm9kZS0+aXNQc2V1ZG9FbGVtZW50KCkp
Ci0gICAgICAgIHJldHVybiB0b1BzZXVkb0VsZW1lbnQocmVmZXJlbmNlTm9kZSktPmhvc3RFbGVt
ZW50KCk7CisgICAgaWYgKHJlZmVyZW5jZU5vZGUuaXNQc2V1ZG9FbGVtZW50KCkpIHsKKyAgICAg
ICAgRXZlbnRUYXJnZXQqIGhvc3RFbGVtZW50ID0gdG9Qc2V1ZG9FbGVtZW50KHJlZmVyZW5jZU5v
ZGUpLmhvc3RFbGVtZW50KCk7CisgICAgICAgIEFTU0VSVChob3N0RWxlbWVudCk7CisgICAgICAg
IHJldHVybiAqaG9zdEVsZW1lbnQ7CisgICAgfQogCiAjaWYgRU5BQkxFKFNWRykKLSAgICBpZiAo
IXJlZmVyZW5jZU5vZGUtPmlzU1ZHRWxlbWVudCgpIHx8ICFyZWZlcmVuY2VOb2RlLT5pc0luU2hh
ZG93VHJlZSgpKQorICAgIGlmICghcmVmZXJlbmNlTm9kZS5pc1NWR0VsZW1lbnQoKSB8fCAhcmVm
ZXJlbmNlTm9kZS5pc0luU2hhZG93VHJlZSgpKQogICAgICAgICByZXR1cm4gcmVmZXJlbmNlTm9k
ZTsKIAogICAgIC8vIFNwZWM6IFRoZSBldmVudCBoYW5kbGluZyBmb3IgdGhlIG5vbi1leHBvc2Vk
IHRyZWUgd29ya3MgYXMgaWYgdGhlIHJlZmVyZW5jZWQgZWxlbWVudCBoYWQgYmVlbiB0ZXh0dWFs
bHkgaW5jbHVkZWQKICAgICAvLyBhcyBhIGRlZXBseSBjbG9uZWQgY2hpbGQgb2YgdGhlICd1c2Un
IGVsZW1lbnQsIGV4Y2VwdCB0aGF0IGV2ZW50cyBhcmUgZGlzcGF0Y2hlZCB0byB0aGUgU1ZHRWxl
bWVudEluc3RhbmNlIG9iamVjdHMKLSAgICBOb2RlKiByb290Tm9kZSA9IHJlZmVyZW5jZU5vZGUt
PnRyZWVTY29wZSgpLnJvb3ROb2RlKCk7CisgICAgTm9kZSogcm9vdE5vZGUgPSByZWZlcmVuY2VO
b2RlLnRyZWVTY29wZSgpLnJvb3ROb2RlKCk7CiAgICAgRWxlbWVudCogc2hhZG93SG9zdEVsZW1l
bnQgPSByb290Tm9kZS0+aXNTaGFkb3dSb290KCkgPyB0b1NoYWRvd1Jvb3Qocm9vdE5vZGUpLT5o
b3N0RWxlbWVudCgpIDogMDsKICAgICAvLyBBdCB0aGlzIHRpbWUsIFNWRyBub2RlcyBhcmUgbm90
IHN1cHBvcnRlZCBpbiBub24tPHVzZT4gc2hhZG93IHRyZWVzLgogICAgIGlmICghc2hhZG93SG9z
dEVsZW1lbnQgfHwgIXNoYWRvd0hvc3RFbGVtZW50LT5oYXNUYWdOYW1lKFNWR05hbWVzOjp1c2VU
YWcpKQogICAgICAgICByZXR1cm4gcmVmZXJlbmNlTm9kZTsKICAgICBTVkdVc2VFbGVtZW50KiB1
c2VFbGVtZW50ID0gdG9TVkdVc2VFbGVtZW50KHNoYWRvd0hvc3RFbGVtZW50KTsKLSAgICBpZiAo
U1ZHRWxlbWVudEluc3RhbmNlKiBpbnN0YW5jZSA9IHVzZUVsZW1lbnQtPmluc3RhbmNlRm9yU2hh
ZG93VHJlZUVsZW1lbnQocmVmZXJlbmNlTm9kZSkpCi0gICAgICAgIHJldHVybiBpbnN0YW5jZTsK
KyAgICBpZiAoU1ZHRWxlbWVudEluc3RhbmNlKiBpbnN0YW5jZSA9IHVzZUVsZW1lbnQtPmluc3Rh
bmNlRm9yU2hhZG93VHJlZUVsZW1lbnQoJnJlZmVyZW5jZU5vZGUpKQorICAgICAgICByZXR1cm4g
Kmluc3RhbmNlOwogI2VuZGlmCiAKICAgICByZXR1cm4gcmVmZXJlbmNlTm9kZTsKSW5kZXg6IFNv
dXJjZS9XZWJDb3JlL2RvbS9Ob2RlLmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9k
b20vTm9kZS5jcHAJKHJldmlzaW9uIDE1NzA4NSkKKysrIFNvdXJjZS9XZWJDb3JlL2RvbS9Ob2Rl
LmNwcAkod29ya2luZyBjb3B5KQpAQCAtMjA3NCw3ICsyMDc0LDcgQEAgdm9pZCBOb2RlOjpkaXNw
YXRjaFNjb3BlZEV2ZW50KFBhc3NSZWZQdAogCiB2b2lkIE5vZGU6OmRpc3BhdGNoU2NvcGVkRXZl
bnREaXNwYXRjaE1lZGlhdG9yKFBhc3NSZWZQdHI8RXZlbnREaXNwYXRjaE1lZGlhdG9yPiBldmVu
dERpc3BhdGNoTWVkaWF0b3IpCiB7Ci0gICAgRXZlbnREaXNwYXRjaGVyOjpkaXNwYXRjaFNjb3Bl
ZEV2ZW50KHRoaXMsIGV2ZW50RGlzcGF0Y2hNZWRpYXRvcik7CisgICAgRXZlbnREaXNwYXRjaGVy
OjpkaXNwYXRjaFNjb3BlZEV2ZW50KCp0aGlzLCBldmVudERpc3BhdGNoTWVkaWF0b3IpOwogfQog
CiBib29sIE5vZGU6OmRpc3BhdGNoRXZlbnQoUGFzc1JlZlB0cjxFdmVudD4gZXZlbnQpCg==
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>213669</attachid>
            <date>2013-10-08 00:19:20 -0700</date>
            <delta_ts>2013-10-08 11:02:01 -0700</delta_ts>
            <desc>Fixed EFL build</desc>
            <filename>bug-122494-20131008001919.patch</filename>
            <type>text/plain</type>
            <size>10701</size>
            <attacher name="Ryosuke Niwa">rniwa</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2Vi
Q29yZS9DaGFuZ2VMb2cJKHJldmlzaW9uIDE1NzA4OCkKKysrIFNvdXJjZS9XZWJDb3JlL0NoYW5n
ZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDI3IEBACisyMDEzLTEwLTA4ICBSeW9zdWtl
IE5pd2EgIDxybml3YUB3ZWJraXQub3JnPgorCisgICAgICAgIFVzZSByZWZlcmVuY2VzIGluIEV2
ZW50UmV0YXJnZXRlcjo6Y2FsY3VsYXRlRXZlbnRQYXRoIGFuZCBFdmVudFJldGFyZ2V0ZXI6OmV2
ZW50VGFyZ2V0UmVzcGVjdGluZ1RhcmdldFJ1bGVzCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJr
aXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xMjI0OTQKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JP
RFkgKE9PUFMhKS4KKworICAgICAgICBVc2UgcmVmZXJlbmVjcyBpbnN0ZWFkIG9mIHBvaW50ZXJz
IGluIHZlbnRSZXRhcmdldGVyJ3MgY2FsY3VsYXRlRXZlbnRQYXRoIGFuZCBldmVudFRhcmdldFJl
c3BlY3RpbmdUYXJnZXRSdWxlcy4KKyAgICAgICAgQWxzbyByZXBsYWNlIFZlY3RvcjxFdmVudFRh
cmdldCosIDMyPiB0YXJnZXRTdGFjayBieSBhIHNpbmdsZSBwb2ludGVyIHNpbmNlIHdlIG9ubHkg
YXBwZW5kIGFuIGl0ZW0gdG8KKyAgICAgICAgdGhlIHZlY3RvciB3aGVuIGl0J3MgZW1wdHkgYW5k
IHdlIGFsd2F5cyB1c2UgdGhlIGxhc3QgaXRlbS4KKworICAgICAgICAqIGRvbS9FdmVudERpc3Bh
dGNoZXIuY3BwOgorICAgICAgICAoV2ViQ29yZTo6RXZlbnREaXNwYXRjaGVyOjpFdmVudERpc3Bh
dGNoZXIpOgorICAgICAgICAoV2ViQ29yZTo6RXZlbnREaXNwYXRjaGVyOjpkaXNwYXRjaFNjb3Bl
ZEV2ZW50KToKKyAgICAgICAgKFdlYkNvcmU6OkV2ZW50RGlzcGF0Y2hlcjo6ZGlzcGF0Y2gpOgor
ICAgICAgICAoV2ViQ29yZTo6RXZlbnREaXNwYXRjaGVyOjpkaXNwYXRjaEV2ZW50UG9zdFByb2Nl
c3MpOgorICAgICAgICAqIGRvbS9FdmVudERpc3BhdGNoZXIuaDoKKyAgICAgICAgKiBkb20vRXZl
bnRSZXRhcmdldGVyLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkV2ZW50UmV0YXJnZXRlcjo6Y2Fs
Y3VsYXRlRXZlbnRQYXRoKToKKyAgICAgICAgKiBkb20vRXZlbnRSZXRhcmdldGVyLmg6CisgICAg
ICAgIChXZWJDb3JlOjpFdmVudFJldGFyZ2V0ZXI6OmV2ZW50VGFyZ2V0UmVzcGVjdGluZ1Rhcmdl
dFJ1bGVzKToKKyAgICAgICAgKiBkb20vTm9kZS5jcHA6CisgICAgICAgIChXZWJDb3JlOjpOb2Rl
OjpkaXNwYXRjaFNjb3BlZEV2ZW50RGlzcGF0Y2hNZWRpYXRvcik6CisKIDIwMTMtMTAtMDcgIFJ5
b3N1a2UgTml3YSAgPHJuaXdhQHdlYmtpdC5vcmc+CiAKICAgICAgICAgRXZlbnREaXNwYXRjaEJl
aGF2aW9yIGlzIHVubmVjZXNzYXJ5CkluZGV4OiBTb3VyY2UvV2ViQ29yZS9kb20vRXZlbnREaXNw
YXRjaGVyLmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9kb20vRXZlbnREaXNwYXRj
aGVyLmNwcAkocmV2aXNpb24gMTU3MDg1KQorKysgU291cmNlL1dlYkNvcmUvZG9tL0V2ZW50RGlz
cGF0Y2hlci5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTU5LDE3ICs1OSwxNyBAQCBFdmVudERpc3Bh
dGNoZXI6OkV2ZW50RGlzcGF0Y2hlcihOb2RlKiBuCiAgICAgLCBtX2V2ZW50RGlzcGF0Y2hlZChm
YWxzZSkKICNlbmRpZgogewotICAgIEFTU0VSVChub2RlKTsKLSAgICBBU1NFUlQobV9ldmVudC5n
ZXQoKSk7CisgICAgQVNTRVJUKG1fbm9kZSk7CisgICAgQVNTRVJUKG1fZXZlbnQpOwogICAgIEFT
U0VSVCghbV9ldmVudC0+dHlwZSgpLmlzTnVsbCgpKTsgLy8gSmF2YVNjcmlwdCBjb2RlIGNhbiBj
cmVhdGUgYW4gZXZlbnQgd2l0aCBhbiBlbXB0eSBuYW1lLCBidXQgbm90IG51bGwuCiAgICAgbV92
aWV3ID0gbm9kZS0+ZG9jdW1lbnQoKS52aWV3KCk7Ci0gICAgRXZlbnRSZXRhcmdldGVyOjpjYWxj
dWxhdGVFdmVudFBhdGgobV9ub2RlLmdldCgpLCBtX2V2ZW50LmdldCgpLCBtX2V2ZW50UGF0aCk7
CisgICAgRXZlbnRSZXRhcmdldGVyOjpjYWxjdWxhdGVFdmVudFBhdGgoKm1fbm9kZSwgKm1fZXZl
bnQsIG1fZXZlbnRQYXRoKTsKIH0KIAotdm9pZCBFdmVudERpc3BhdGNoZXI6OmRpc3BhdGNoU2Nv
cGVkRXZlbnQoTm9kZSogbm9kZSwgUGFzc1JlZlB0cjxFdmVudERpc3BhdGNoTWVkaWF0b3I+IG1l
ZGlhdG9yKQordm9pZCBFdmVudERpc3BhdGNoZXI6OmRpc3BhdGNoU2NvcGVkRXZlbnQoTm9kZSYg
bm9kZSwgUGFzc1JlZlB0cjxFdmVudERpc3BhdGNoTWVkaWF0b3I+IG1lZGlhdG9yKQogewogICAg
IC8vIFdlIG5lZWQgdG8gc2V0IHRoZSB0YXJnZXQgaGVyZSBiZWNhdXNlIGl0IGNhbiBnbyBhd2F5
IGJ5IHRoZSB0aW1lIHdlIGFjdHVhbGx5IGZpcmUgdGhlIGV2ZW50LgotICAgIG1lZGlhdG9yLT5l
dmVudCgpLT5zZXRUYXJnZXQoRXZlbnRSZXRhcmdldGVyOjpldmVudFRhcmdldFJlc3BlY3RpbmdU
YXJnZXRSdWxlcyhub2RlKSk7CisgICAgbWVkaWF0b3ItPmV2ZW50KCktPnNldFRhcmdldCgmRXZl
bnRSZXRhcmdldGVyOjpldmVudFRhcmdldFJlc3BlY3RpbmdUYXJnZXRSdWxlcyhub2RlKSk7CiAg
ICAgU2NvcGVkRXZlbnRRdWV1ZTo6aW5zdGFuY2UoKS0+ZW5xdWV1ZUV2ZW50RGlzcGF0Y2hNZWRp
YXRvcihtZWRpYXRvcik7CiB9CiAKQEAgLTEwNiw3ICsxMDYsOCBAQCBib29sIEV2ZW50RGlzcGF0
Y2hlcjo6ZGlzcGF0Y2goKQogI2VuZGlmCiAgICAgQ2hpbGROb2Rlc0xhenlTbmFwc2hvdDo6dGFr
ZUNoaWxkTm9kZXNMYXp5U25hcHNob3QoKTsKIAotICAgIG1fZXZlbnQtPnNldFRhcmdldChFdmVu
dFJldGFyZ2V0ZXI6OmV2ZW50VGFyZ2V0UmVzcGVjdGluZ1RhcmdldFJ1bGVzKG1fbm9kZS5nZXQo
KSkpOworICAgIEFTU0VSVChtX25vZGUpOworICAgIG1fZXZlbnQtPnNldFRhcmdldCgmRXZlbnRS
ZXRhcmdldGVyOjpldmVudFRhcmdldFJlc3BlY3RpbmdUYXJnZXRSdWxlcygqbV9ub2RlKSk7CiAg
ICAgQVNTRVJUKCFOb0V2ZW50RGlzcGF0Y2hBc3NlcnRpb246OmlzRXZlbnREaXNwYXRjaEZvcmJp
ZGRlbigpKTsKICAgICBBU1NFUlQobV9ldmVudC0+dGFyZ2V0KCkpOwogICAgIFdpbmRvd0V2ZW50
Q29udGV4dCB3aW5kb3dFdmVudENvbnRleHQobV9ldmVudC5nZXQoKSwgbV9ub2RlLmdldCgpLCB0
b3BFdmVudENvbnRleHQoKSk7CkBAIC0xODUsNyArMTg2LDggQEAgaW5saW5lIHZvaWQgRXZlbnRE
aXNwYXRjaGVyOjpkaXNwYXRjaEV2ZQogCiBpbmxpbmUgdm9pZCBFdmVudERpc3BhdGNoZXI6OmRp
c3BhdGNoRXZlbnRQb3N0UHJvY2Vzcyhjb25zdCBJbnB1dEVsZW1lbnRDbGlja1N0YXRlJiBJbnB1
dEVsZW1lbnRDbGlja1N0YXRlKQogewotICAgIG1fZXZlbnQtPnNldFRhcmdldChFdmVudFJldGFy
Z2V0ZXI6OmV2ZW50VGFyZ2V0UmVzcGVjdGluZ1RhcmdldFJ1bGVzKG1fbm9kZS5nZXQoKSkpOwor
ICAgIEFTU0VSVChtX25vZGUpOworICAgIG1fZXZlbnQtPnNldFRhcmdldCgmRXZlbnRSZXRhcmdl
dGVyOjpldmVudFRhcmdldFJlc3BlY3RpbmdUYXJnZXRSdWxlcygqbV9ub2RlKSk7CiAgICAgbV9l
dmVudC0+c2V0Q3VycmVudFRhcmdldCgwKTsKICAgICBtX2V2ZW50LT5zZXRFdmVudFBoYXNlKDAp
OwogCkluZGV4OiBTb3VyY2UvV2ViQ29yZS9kb20vRXZlbnREaXNwYXRjaGVyLmgKPT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PQotLS0gU291cmNlL1dlYkNvcmUvZG9tL0V2ZW50RGlzcGF0Y2hlci5oCShyZXZpc2lvbiAxNTcw
ODUpCisrKyBTb3VyY2UvV2ViQ29yZS9kb20vRXZlbnREaXNwYXRjaGVyLmgJKHdvcmtpbmcgY29w
eSkKQEAgLTU1LDcgKzU1LDcgQEAgZW51bSBFdmVudERpc3BhdGNoQ29udGludWF0aW9uIHsKIGNs
YXNzIEV2ZW50RGlzcGF0Y2hlciB7CiBwdWJsaWM6CiAgICAgc3RhdGljIGJvb2wgZGlzcGF0Y2hF
dmVudChOb2RlKiwgUGFzc1JlZlB0cjxFdmVudERpc3BhdGNoTWVkaWF0b3I+KTsKLSAgICBzdGF0
aWMgdm9pZCBkaXNwYXRjaFNjb3BlZEV2ZW50KE5vZGUqLCBQYXNzUmVmUHRyPEV2ZW50RGlzcGF0
Y2hNZWRpYXRvcj4pOworICAgIHN0YXRpYyB2b2lkIGRpc3BhdGNoU2NvcGVkRXZlbnQoTm9kZSYs
IFBhc3NSZWZQdHI8RXZlbnREaXNwYXRjaE1lZGlhdG9yPik7CiAKICAgICBzdGF0aWMgdm9pZCBk
aXNwYXRjaFNpbXVsYXRlZENsaWNrKEVsZW1lbnQqLCBFdmVudCogdW5kZXJseWluZ0V2ZW50LCBT
aW11bGF0ZWRDbGlja01vdXNlRXZlbnRPcHRpb25zLCBTaW11bGF0ZWRDbGlja1Zpc3VhbE9wdGlv
bnMpOwogCkluZGV4OiBTb3VyY2UvV2ViQ29yZS9kb20vRXZlbnRSZXRhcmdldGVyLmNwcAo9PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9kb20vRXZlbnRSZXRhcmdldGVyLmNwcAkocmV2aXNp
b24gMTU3MDg1KQorKysgU291cmNlL1dlYkNvcmUvZG9tL0V2ZW50UmV0YXJnZXRlci5jcHAJKHdv
cmtpbmcgY29weSkKQEAgLTczLDM5ICs3MywzNyBAQCBzdGF0aWMgTm9kZSogbm9kZU9ySG9zdElm
UHNldWRvRWxlbWVudChOCiAgICAgcmV0dXJuIG5vZGUtPmlzUHNldWRvRWxlbWVudCgpID8gdG9Q
c2V1ZG9FbGVtZW50KG5vZGUpLT5ob3N0RWxlbWVudCgpIDogbm9kZTsKIH0KIAotdm9pZCBFdmVu
dFJldGFyZ2V0ZXI6OmNhbGN1bGF0ZUV2ZW50UGF0aChOb2RlKiB0YXJnZXROb2RlLCBFdmVudCog
ZXZlbnQsIEV2ZW50UGF0aCYgZXZlbnRQYXRoKQordm9pZCBFdmVudFJldGFyZ2V0ZXI6OmNhbGN1
bGF0ZUV2ZW50UGF0aChOb2RlJiB0YXJnZXROb2RlLCBFdmVudCYgZXZlbnQsIEV2ZW50UGF0aCYg
ZXZlbnRQYXRoKQogewotICAgIEFTU0VSVChldmVudCk7Ci0gICAgYm9vbCBpbkRvY3VtZW50ID0g
dGFyZ2V0Tm9kZS0+aW5Eb2N1bWVudCgpOwotICAgIGJvb2wgaXNTVkdFbGVtZW50ID0gdGFyZ2V0
Tm9kZS0+aXNTVkdFbGVtZW50KCk7Ci0gICAgYm9vbCBpc01vdXNlT3JGb2N1c0V2ZW50ID0gZXZl
bnQtPmlzTW91c2VFdmVudCgpIHx8IGV2ZW50LT5pc0ZvY3VzRXZlbnQoKTsKKyAgICBib29sIGlu
RG9jdW1lbnQgPSB0YXJnZXROb2RlLmluRG9jdW1lbnQoKTsKKyAgICBib29sIGlzU1ZHRWxlbWVu
dCA9IHRhcmdldE5vZGUuaXNTVkdFbGVtZW50KCk7CisgICAgYm9vbCBpc01vdXNlT3JGb2N1c0V2
ZW50ID0gZXZlbnQuaXNNb3VzZUV2ZW50KCkgfHwgZXZlbnQuaXNGb2N1c0V2ZW50KCk7CiAjaWYg
RU5BQkxFKFRPVUNIX0VWRU5UUykKLSAgICBib29sIGlzVG91Y2hFdmVudCA9IGV2ZW50LT5pc1Rv
dWNoRXZlbnQoKTsKKyAgICBib29sIGlzVG91Y2hFdmVudCA9IGV2ZW50LmlzVG91Y2hFdmVudCgp
OwogI2VuZGlmCi0gICAgVmVjdG9yPEV2ZW50VGFyZ2V0KiwgMzI+IHRhcmdldFN0YWNrOworICAg
IEV2ZW50VGFyZ2V0KiB0YXJnZXQgPSAwOwogCi0gICAgZm9yIChOb2RlKiBub2RlID0gbm9kZU9y
SG9zdElmUHNldWRvRWxlbWVudCh0YXJnZXROb2RlKTsgbm9kZTsgbm9kZSA9IG5vZGUtPnBhcmVu
dE9yU2hhZG93SG9zdE5vZGUoKSkgewotICAgICAgICBpZiAodGFyZ2V0U3RhY2suaXNFbXB0eSgp
KQotICAgICAgICAgICAgdGFyZ2V0U3RhY2suYXBwZW5kKGV2ZW50VGFyZ2V0UmVzcGVjdGluZ1Rh
cmdldFJ1bGVzKG5vZGUpKTsKKyAgICBmb3IgKE5vZGUqIG5vZGUgPSBub2RlT3JIb3N0SWZQc2V1
ZG9FbGVtZW50KCZ0YXJnZXROb2RlKTsgbm9kZTsgbm9kZSA9IG5vZGUtPnBhcmVudE9yU2hhZG93
SG9zdE5vZGUoKSkgeworICAgICAgICBpZiAoIXRhcmdldCkKKyAgICAgICAgICAgIHRhcmdldCA9
ICZldmVudFRhcmdldFJlc3BlY3RpbmdUYXJnZXRSdWxlcygqbm9kZSk7CisKKyAgICAgICAgRXZl
bnRUYXJnZXQmIGN1cnJlbnRUYXJnZXQgPSBldmVudFRhcmdldFJlc3BlY3RpbmdUYXJnZXRSdWxl
cygqbm9kZSk7CiAgICAgICAgIGlmIChpc01vdXNlT3JGb2N1c0V2ZW50KQotICAgICAgICAgICAg
ZXZlbnRQYXRoLmFwcGVuZChhZG9wdFB0cihuZXcgTW91c2VPckZvY3VzRXZlbnRDb250ZXh0KG5v
ZGUsIGV2ZW50VGFyZ2V0UmVzcGVjdGluZ1RhcmdldFJ1bGVzKG5vZGUpLCB0YXJnZXRTdGFjay5s
YXN0KCkpKSk7CisgICAgICAgICAgICBldmVudFBhdGguYXBwZW5kKGFkb3B0UHRyKG5ldyBNb3Vz
ZU9yRm9jdXNFdmVudENvbnRleHQobm9kZSwgJmN1cnJlbnRUYXJnZXQsIHRhcmdldCkpKTsKICNp
ZiBFTkFCTEUoVE9VQ0hfRVZFTlRTKQogICAgICAgICBlbHNlIGlmIChpc1RvdWNoRXZlbnQpCi0g
ICAgICAgICAgICBldmVudFBhdGguYXBwZW5kKGFkb3B0UHRyKG5ldyBUb3VjaEV2ZW50Q29udGV4
dChub2RlLCBldmVudFRhcmdldFJlc3BlY3RpbmdUYXJnZXRSdWxlcyhub2RlKSwgdGFyZ2V0U3Rh
Y2subGFzdCgpKSkpOworICAgICAgICAgICAgZXZlbnRQYXRoLmFwcGVuZChhZG9wdFB0cihuZXcg
VG91Y2hFdmVudENvbnRleHQobm9kZSwgJmN1cnJlbnRUYXJnZXQsIHRhcmdldCkpKTsKICNlbmRp
ZgogICAgICAgICBlbHNlCi0gICAgICAgICAgICBldmVudFBhdGguYXBwZW5kKGFkb3B0UHRyKG5l
dyBFdmVudENvbnRleHQobm9kZSwgZXZlbnRUYXJnZXRSZXNwZWN0aW5nVGFyZ2V0UnVsZXMobm9k
ZSksIHRhcmdldFN0YWNrLmxhc3QoKSkpKTsKKyAgICAgICAgICAgIGV2ZW50UGF0aC5hcHBlbmQo
YWRvcHRQdHIobmV3IEV2ZW50Q29udGV4dChub2RlLCAmY3VycmVudFRhcmdldCwgdGFyZ2V0KSkp
OwogICAgICAgICBpZiAoIWluRG9jdW1lbnQpCiAgICAgICAgICAgICByZXR1cm47CiAgICAgICAg
IGlmICghbm9kZS0+aXNTaGFkb3dSb290KCkpCiAgICAgICAgICAgICBjb250aW51ZTsKLSAgICAg
ICAgQVNTRVJUKCF0YXJnZXRTdGFjay5pc0VtcHR5KCkpOwotICAgICAgICBpZiAoIXNob3VsZEV2
ZW50Q3Jvc3NTaGFkb3dCb3VuZGFyeSgqZXZlbnQsICp0b1NoYWRvd1Jvb3Qobm9kZSksICp0YXJn
ZXRTdGFjay5sYXN0KCkpKQorICAgICAgICBpZiAoIXNob3VsZEV2ZW50Q3Jvc3NTaGFkb3dCb3Vu
ZGFyeShldmVudCwgKnRvU2hhZG93Um9vdChub2RlKSwgKnRhcmdldCkpCiAgICAgICAgICAgICBy
ZXR1cm47Ci0gICAgICAgIGlmICghaXNTVkdFbGVtZW50KSB7Ci0gICAgICAgICAgICBBU1NFUlQo
IXRhcmdldFN0YWNrLmlzRW1wdHkoKSk7Ci0gICAgICAgICAgICB0YXJnZXRTdGFjay5yZW1vdmVM
YXN0KCk7Ci0gICAgICAgIH0KKyAgICAgICAgaWYgKCFpc1NWR0VsZW1lbnQpCisgICAgICAgICAg
ICB0YXJnZXQgPSAwOwogICAgIH0KIH0KIApJbmRleDogU291cmNlL1dlYkNvcmUvZG9tL0V2ZW50
UmV0YXJnZXRlci5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJDb3JlL2RvbS9FdmVudFJldGFy
Z2V0ZXIuaAkocmV2aXNpb24gMTU3MDg1KQorKysgU291cmNlL1dlYkNvcmUvZG9tL0V2ZW50UmV0
YXJnZXRlci5oCSh3b3JraW5nIGNvcHkpCkBAIC00NywxNCArNDcsMTQgQEAgY2xhc3MgVHJlZVNj
b3BlOwogCiBjbGFzcyBFdmVudFJldGFyZ2V0ZXIgewogcHVibGljOgotICAgIHN0YXRpYyB2b2lk
IGNhbGN1bGF0ZUV2ZW50UGF0aChOb2RlKiwgRXZlbnQqLCBFdmVudFBhdGgmKTsKKyAgICBzdGF0
aWMgdm9pZCBjYWxjdWxhdGVFdmVudFBhdGgoTm9kZSYsIEV2ZW50JiwgRXZlbnRQYXRoJik7CiAg
ICAgc3RhdGljIHZvaWQgYWRqdXN0Rm9yTW91c2VFdmVudChOb2RlKiwgY29uc3QgTW91c2VFdmVu
dCYsIEV2ZW50UGF0aCYpOwogICAgIHN0YXRpYyB2b2lkIGFkanVzdEZvckZvY3VzRXZlbnQoTm9k
ZSosIGNvbnN0IEZvY3VzRXZlbnQmLCBFdmVudFBhdGgmKTsKICNpZiBFTkFCTEUoVE9VQ0hfRVZF
TlRTKQogICAgIHR5cGVkZWYgVmVjdG9yPFJlZlB0cjxUb3VjaExpc3Q+ID4gRXZlbnRQYXRoVG91
Y2hMaXN0czsKICAgICBzdGF0aWMgdm9pZCBhZGp1c3RGb3JUb3VjaEV2ZW50KE5vZGUqLCBjb25z
dCBUb3VjaEV2ZW50JiwgRXZlbnRQYXRoJik7CiAjZW5kaWYKLSAgICBzdGF0aWMgRXZlbnRUYXJn
ZXQqIGV2ZW50VGFyZ2V0UmVzcGVjdGluZ1RhcmdldFJ1bGVzKE5vZGUqIHJlZmVyZW5jZU5vZGUp
OworICAgIHN0YXRpYyBFdmVudFRhcmdldCYgZXZlbnRUYXJnZXRSZXNwZWN0aW5nVGFyZ2V0UnVs
ZXMoTm9kZSYgcmVmZXJlbmNlTm9kZSk7CiAKIHByaXZhdGU6CiAgICAgdHlwZWRlZiBWZWN0b3I8
UmVmUHRyPE5vZGU+ID4gQWRqdXN0ZWROb2RlczsKQEAgLTY5LDI3ICs2OSwyOCBAQCBwcml2YXRl
OgogI2VuZGlmCiB9OwogCi1pbmxpbmUgRXZlbnRUYXJnZXQqIEV2ZW50UmV0YXJnZXRlcjo6ZXZl
bnRUYXJnZXRSZXNwZWN0aW5nVGFyZ2V0UnVsZXMoTm9kZSogcmVmZXJlbmNlTm9kZSkKK2lubGlu
ZSBFdmVudFRhcmdldCYgRXZlbnRSZXRhcmdldGVyOjpldmVudFRhcmdldFJlc3BlY3RpbmdUYXJn
ZXRSdWxlcyhOb2RlJiByZWZlcmVuY2VOb2RlKQogewotICAgIEFTU0VSVChyZWZlcmVuY2VOb2Rl
KTsKLQotICAgIGlmIChyZWZlcmVuY2VOb2RlLT5pc1BzZXVkb0VsZW1lbnQoKSkKLSAgICAgICAg
cmV0dXJuIHRvUHNldWRvRWxlbWVudChyZWZlcmVuY2VOb2RlKS0+aG9zdEVsZW1lbnQoKTsKKyAg
ICBpZiAocmVmZXJlbmNlTm9kZS5pc1BzZXVkb0VsZW1lbnQoKSkgeworICAgICAgICBFdmVudFRh
cmdldCogaG9zdEVsZW1lbnQgPSB0b1BzZXVkb0VsZW1lbnQocmVmZXJlbmNlTm9kZSkuaG9zdEVs
ZW1lbnQoKTsKKyAgICAgICAgQVNTRVJUKGhvc3RFbGVtZW50KTsKKyAgICAgICAgcmV0dXJuICpo
b3N0RWxlbWVudDsKKyAgICB9CiAKICNpZiBFTkFCTEUoU1ZHKQotICAgIGlmICghcmVmZXJlbmNl
Tm9kZS0+aXNTVkdFbGVtZW50KCkgfHwgIXJlZmVyZW5jZU5vZGUtPmlzSW5TaGFkb3dUcmVlKCkp
CisgICAgaWYgKCFyZWZlcmVuY2VOb2RlLmlzU1ZHRWxlbWVudCgpIHx8ICFyZWZlcmVuY2VOb2Rl
LmlzSW5TaGFkb3dUcmVlKCkpCiAgICAgICAgIHJldHVybiByZWZlcmVuY2VOb2RlOwogCiAgICAg
Ly8gU3BlYzogVGhlIGV2ZW50IGhhbmRsaW5nIGZvciB0aGUgbm9uLWV4cG9zZWQgdHJlZSB3b3Jr
cyBhcyBpZiB0aGUgcmVmZXJlbmNlZCBlbGVtZW50IGhhZCBiZWVuIHRleHR1YWxseSBpbmNsdWRl
ZAogICAgIC8vIGFzIGEgZGVlcGx5IGNsb25lZCBjaGlsZCBvZiB0aGUgJ3VzZScgZWxlbWVudCwg
ZXhjZXB0IHRoYXQgZXZlbnRzIGFyZSBkaXNwYXRjaGVkIHRvIHRoZSBTVkdFbGVtZW50SW5zdGFu
Y2Ugb2JqZWN0cwotICAgIE5vZGUqIHJvb3ROb2RlID0gcmVmZXJlbmNlTm9kZS0+dHJlZVNjb3Bl
KCkucm9vdE5vZGUoKTsKKyAgICBOb2RlKiByb290Tm9kZSA9IHJlZmVyZW5jZU5vZGUudHJlZVNj
b3BlKCkucm9vdE5vZGUoKTsKICAgICBFbGVtZW50KiBzaGFkb3dIb3N0RWxlbWVudCA9IHJvb3RO
b2RlLT5pc1NoYWRvd1Jvb3QoKSA/IHRvU2hhZG93Um9vdChyb290Tm9kZSktPmhvc3RFbGVtZW50
KCkgOiAwOwogICAgIC8vIEF0IHRoaXMgdGltZSwgU1ZHIG5vZGVzIGFyZSBub3Qgc3VwcG9ydGVk
IGluIG5vbi08dXNlPiBzaGFkb3cgdHJlZXMuCiAgICAgaWYgKCFzaGFkb3dIb3N0RWxlbWVudCB8
fCAhc2hhZG93SG9zdEVsZW1lbnQtPmhhc1RhZ05hbWUoU1ZHTmFtZXM6OnVzZVRhZykpCiAgICAg
ICAgIHJldHVybiByZWZlcmVuY2VOb2RlOwogICAgIFNWR1VzZUVsZW1lbnQqIHVzZUVsZW1lbnQg
PSB0b1NWR1VzZUVsZW1lbnQoc2hhZG93SG9zdEVsZW1lbnQpOwotICAgIGlmIChTVkdFbGVtZW50
SW5zdGFuY2UqIGluc3RhbmNlID0gdXNlRWxlbWVudC0+aW5zdGFuY2VGb3JTaGFkb3dUcmVlRWxl
bWVudChyZWZlcmVuY2VOb2RlKSkKLSAgICAgICAgcmV0dXJuIGluc3RhbmNlOworICAgIGlmIChT
VkdFbGVtZW50SW5zdGFuY2UqIGluc3RhbmNlID0gdXNlRWxlbWVudC0+aW5zdGFuY2VGb3JTaGFk
b3dUcmVlRWxlbWVudCgmcmVmZXJlbmNlTm9kZSkpCisgICAgICAgIHJldHVybiAqaW5zdGFuY2U7
CiAjZW5kaWYKIAogICAgIHJldHVybiByZWZlcmVuY2VOb2RlOwpJbmRleDogU291cmNlL1dlYkNv
cmUvZG9tL05vZGUuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJDb3JlL2RvbS9Ob2RlLmNw
cAkocmV2aXNpb24gMTU3MDg1KQorKysgU291cmNlL1dlYkNvcmUvZG9tL05vZGUuY3BwCSh3b3Jr
aW5nIGNvcHkpCkBAIC0yMDc0LDcgKzIwNzQsNyBAQCB2b2lkIE5vZGU6OmRpc3BhdGNoU2NvcGVk
RXZlbnQoUGFzc1JlZlB0CiAKIHZvaWQgTm9kZTo6ZGlzcGF0Y2hTY29wZWRFdmVudERpc3BhdGNo
TWVkaWF0b3IoUGFzc1JlZlB0cjxFdmVudERpc3BhdGNoTWVkaWF0b3I+IGV2ZW50RGlzcGF0Y2hN
ZWRpYXRvcikKIHsKLSAgICBFdmVudERpc3BhdGNoZXI6OmRpc3BhdGNoU2NvcGVkRXZlbnQodGhp
cywgZXZlbnREaXNwYXRjaE1lZGlhdG9yKTsKKyAgICBFdmVudERpc3BhdGNoZXI6OmRpc3BhdGNo
U2NvcGVkRXZlbnQoKnRoaXMsIGV2ZW50RGlzcGF0Y2hNZWRpYXRvcik7CiB9CiAKIGJvb2wgTm9k
ZTo6ZGlzcGF0Y2hFdmVudChQYXNzUmVmUHRyPEV2ZW50PiBldmVudCkK
</data>

          </attachment>
      

    </bug>

</bugzilla>