<?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>144851</bug_id>
          
          <creation_ts>2015-05-10 17:43:14 -0700</creation_ts>
          <short_desc>We shouldn&apos;t promote LoadVarargs to a sequence of GetStacks and PutStacks if doing so would exceed the LoadVarargs&apos; limit</short_desc>
          <delta_ts>2015-05-11 11:19:48 -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>JavaScriptCore</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>All</rep_platform>
          <op_sys>All</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="Filip Pizlo">fpizlo</reporter>
          <assigned_to name="Filip Pizlo">fpizlo</assigned_to>
          <cc>barraclough</cc>
    
    <cc>benjamin</cc>
    
    <cc>ggaren</cc>
    
    <cc>mark.lam</cc>
    
    <cc>mhahnenb</cc>
    
    <cc>mmirman</cc>
    
    <cc>msaboff</cc>
    
    <cc>nrotem</cc>
    
    <cc>oliver</cc>
    
    <cc>saam</cc>
    
    <cc>sam</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1093617</commentid>
    <comment_count>0</comment_count>
    <who name="Filip Pizlo">fpizlo</who>
    <bug_when>2015-05-10 17:43:14 -0700</bug_when>
    <thetext>Patch forthcoming.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1093624</commentid>
    <comment_count>1</comment_count>
      <attachid>252833</attachid>
    <who name="Filip Pizlo">fpizlo</who>
    <bug_when>2015-05-10 17:55:09 -0700</bug_when>
    <thetext>Created attachment 252833
the patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1093768</commentid>
    <comment_count>2</comment_count>
      <attachid>252833</attachid>
    <who name="Michael Saboff">msaboff</who>
    <bug_when>2015-05-11 09:02:35 -0700</bug_when>
    <thetext>Comment on attachment 252833
the patch

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

Break out the new forceEagerCompilation option into a separate patch.
After that I&apos;ll r+ both patches.

&gt; Source/JavaScriptCore/ChangeLog:29
&gt; +        compilation, and then running layout tests tests with this mode.

Duplicate &quot;tests&quot;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1093805</commentid>
    <comment_count>3</comment_count>
      <attachid>252867</attachid>
    <who name="Filip Pizlo">fpizlo</who>
    <bug_when>2015-05-11 10:58:20 -0700</bug_when>
    <thetext>Created attachment 252867
the patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1093807</commentid>
    <comment_count>4</comment_count>
      <attachid>252867</attachid>
    <who name="Michael Saboff">msaboff</who>
    <bug_when>2015-05-11 11:02:39 -0700</bug_when>
    <thetext>Comment on attachment 252867
the patch

r=me</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1093819</commentid>
    <comment_count>5</comment_count>
    <who name="Filip Pizlo">fpizlo</who>
    <bug_when>2015-05-11 11:19:48 -0700</bug_when>
    <thetext>Landed in http://trac.webkit.org/changeset/184110</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>252833</attachid>
            <date>2015-05-10 17:55:09 -0700</date>
            <delta_ts>2015-05-11 10:58:20 -0700</delta_ts>
            <desc>the patch</desc>
            <filename>blah.patch</filename>
            <type>text/plain</type>
            <size>12011</size>
            <attacher name="Filip Pizlo">fpizlo</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9DaGFuZ2VMb2cKPT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291
cmNlL0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwkocmV2aXNpb24gMTg0MDU5KQorKysgU291cmNl
L0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDQ2IEBA
CisyMDE1LTA1LTEwICBGaWxpcCBQaXpsbyAgPGZwaXpsb0BhcHBsZS5jb20+CisKKyAgICAgICAg
V2Ugc2hvdWxkbid0IHByb21vdGUgTG9hZFZhcmFyZ3MgdG8gYSBzZXF1ZW5jZSBvZiBHZXRTdGFj
a3MgYW5kIFB1dFN0YWNrcyBpZiBkb2luZyBzbyB3b3VsZCBleGNlZWQgdGhlIExvYWRWYXJhcmdz
JyBsaW1pdAorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9
MTQ0ODUxCisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisgICAgICAgIAor
ICAgICAgICBMb2FkVmFyYXJncyBsb2FkcyBhcmd1bWVudHMgZnJvbSBzb21lIG9iamVjdCBhbmQg
cHV0cyB0aGVtIG9uIHRoZSBzdGFjay4gVGhlIHJlZ2lvbiBvZgorICAgICAgICBzdGFjayBpcyBj
b250cm9sbGVkIGJ5IGEgYnVuY2ggb2YgbWV0YS1kYXRhLCBpbmNsdWRpbmcgSW5saW5lQ2FsbEZy
YW1lLiBJbmxpbmVDYWxsRnJhbWUKKyAgICAgICAgc2hvdWxkbid0IHJlYWxseSBiZSBlZGl0ZWQg
YWZ0ZXIgQnl0ZUNvZGVQYXJzZXIsIHNvIHdlIGNhbm5vdCBjb252ZXJ0IExvYWRWYXJhcmdzIHRv
CisgICAgICAgIHNvbWV0aGluZyB0aGF0IHVzZXMgbW9yZSBzdGFjayB0aGFuIHRoZSBMb2FkVmFy
YXJncyB3YW50ZWQgdG8uCisgICAgICAgIAorICAgICAgICBUaGlzIGNoZWNrIHdhcyBtaXNzaW5n
IGluIHRoZSBBcmd1bWVudHNFbGltaW5hdGlvblBoYXNlJ3MgTG9hZFZhcmFyZ3MtPkdldFN0YWNr
K1B1dFN0YWNrCisgICAgICAgIHByb21vdGVyLiBUaGlzIGlzIGFuIGltcG9ydGFudCBwcm9tb3Rp
b24gcnVsZSBmb3IgcGVyZm9ybWFuY2UsIGFuZCBpbiBjYXNlcyB3aGVyZSB3ZSBhcmUKKyAgICAg
ICAgY29tcGlsaW5nIHRydWx5IGhvdCBjb2RlLCB0aGUgTG9hZFZhcmFyZ3MgbGltaXQgd2lsbCBi
ZSBhdCBsZWFzdCBhcyBiaWcgYXMgdGhlIGxlbmd0aCBvZgorICAgICAgICB0aGUgcGhhbnRvbSBh
cmd1bWVudHMgYXJyYXkgdGhhdCB0aGlzIHBoYXNlIHNlZXMuIFRoZSBMb2FkVmFyYXJncyBsaW1p
dCBpcyBiYXNlZCBvbgorICAgICAgICBwcm9maWxpbmcgYW5kIHRoZSBwaGFudG9tIGFyZ3VtZW50
cyBhcnJheSBpcyBhIHByb29mOyBpbiBtb3N0IGNhc2VzIHRoZSBwcm9maWxpbmcgaXMgbW9yZQor
ICAgICAgICBjb25zZXJ2YXRpdmUuCisgICAgICAgIAorICAgICAgICBCdXQsIHlvdSBjb3VsZCB3
cml0ZSBzb21lIGNyYXp5IGNvZGUgd2hlcmUgdGhlIHN0YXRpY2FsbHkgb2J2aW91cyBhcmd1bWVu
dHMgYXJyYXkgdmFsdWUgaXMKKyAgICAgICAgYmlnZ2VyIHRoYW4gd2hhdCB0aGUgcHJvZmlsaW5n
IHdvdWxkIGhhdmUgdG9sZCB5b3UuIFdoZW4gdGhpcyBoYXBwZW5zLCB0aGlzIHByb21vdGlvbgor
ICAgICAgICBlZmZlY3RpdmVseSByZW1vdmVzIGEgYm91bmRzIGNoZWNrLiBUaGlzIGVpdGhlciBy
ZXN1bHRzIGluIHVzIGNsb2JiZXJpbmcgYSBidW5jaCBvZiBzdGFjaywKKyAgICAgICAgb3IgaXQg
bWVhbnMgdGhhdCB3ZSBuZXZlciBpbml0aWFsaXplIGEgcmVnaW9uIG9mIHRoZSBzdGFjayB0aGF0
IGEgbGF0ZXIgb3BlcmF0aW9uIHdpbGwgcmVhZAorICAgICAgICAodGhlIHVuaW5pdGlhbGl6YXRp
b24gaGFwcGVucyBiZWNhdXNlIFB1dFN0YWNrU2lua2luZ1BoYXNlIHJlbW92ZXMgUHV0U3RhY2tz
IHRoYXQgYXBwZWFyCisgICAgICAgIHVubmVjZXNzYXJ5LCBhbmQgYSBHZXRNeUFyZ3VtZW50QnlW
YWwgd2lsbCBjbGFpbSBub3QgdG8gdXNlIHRoZSByZWdpb24gb2YgdGhlIHN0YWNrIG91dHNpZGUK
KyAgICAgICAgdGhlIG9yaWdpbmFsIExvYWRWYXJhcmdzIGxpbWl0KS4KKyAgICAgICAgCisgICAg
ICAgIEkgZm91bmQgdGhpcyBidWcgYnkgYWRkaW5nIGEgbmV3IG9wdGlvbiB0aGF0IGZvcmNlcyBt
YXhpbWFsbHkgZWFnZXIgREZHIGFuZCBGVEwKKyAgICAgICAgY29tcGlsYXRpb24sIGFuZCB0aGVu
IHJ1bm5pbmcgbGF5b3V0IHRlc3RzIHRlc3RzIHdpdGggdGhpcyBtb2RlLgorCisgICAgICAgICog
ZGZnL0RGR0FyZ3VtZW50c0VsaW1pbmF0aW9uUGhhc2UuY3BwOgorICAgICAgICAqIHJ1bnRpbWUv
T3B0aW9ucy5jcHA6CisgICAgICAgIChKU0M6OnJlY29tcHV0ZURlcGVuZGVudE9wdGlvbnMpOgor
ICAgICAgICAqIHJ1bnRpbWUvT3B0aW9ucy5oOgorICAgICAgICAqIHRlc3RzL3N0cmVzcy9sb2Fk
LXZhcmFyZ3MtZWxpbWluYXRpb24tYm91bmRzLWNoZWNrLWJhcmVseS5qczogQWRkZWQuCisgICAg
ICAgIChmb28pOgorICAgICAgICAoYmFyKToKKyAgICAgICAgKGJheik6CisgICAgICAgICogdGVz
dHMvc3RyZXNzL2xvYWQtdmFyYXJncy1lbGltaW5hdGlvbi1ib3VuZHMtY2hlY2suanM6IEFkZGVk
LgorICAgICAgICAoZm9vKToKKyAgICAgICAgKGJhcik6CisgICAgICAgIChiYXopOgorCiAyMDE1
LTA1LTEwICBBbmRyZWFzIEtsaW5nICA8YWtsaW5nQGFwcGxlLmNvbT4KIAogICAgICAgICBSZW1v
dmUgdW5uZWNlc3NhcnkgQXRvbWljU3RyaW5nSW1wbCogaGFzaCBzcGVjaWZpY2F0aW9uIGluIFBy
b3BlcnR5TmFtZUFycmF5LgpJbmRleDogU291cmNlL0phdmFTY3JpcHRDb3JlL2RmZy9ERkdBcmd1
bWVudHNFbGltaW5hdGlvblBoYXNlLmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvSmF2YVNjcmlw
dENvcmUvZGZnL0RGR0FyZ3VtZW50c0VsaW1pbmF0aW9uUGhhc2UuY3BwCShyZXZpc2lvbiAxODQw
NDgpCisrKyBTb3VyY2UvSmF2YVNjcmlwdENvcmUvZGZnL0RGR0FyZ3VtZW50c0VsaW1pbmF0aW9u
UGhhc2UuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC00NTAsNyArNDUwLDkgQEAgcHJpdmF0ZToKICAg
ICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgIExvYWRWYXJhcmdzRGF0YSog
dmFyYXJnc0RhdGEgPSBub2RlLT5sb2FkVmFyYXJnc0RhdGEoKTsKICAgICAgICAgICAgICAgICAg
ICAgSW5saW5lQ2FsbEZyYW1lKiBpbmxpbmVDYWxsRnJhbWUgPSBjYW5kaWRhdGUtPm9yaWdpbi5z
ZW1hbnRpYy5pbmxpbmVDYWxsRnJhbWU7Ci0gICAgICAgICAgICAgICAgICAgIGlmIChpbmxpbmVD
YWxsRnJhbWUgJiYgIWlubGluZUNhbGxGcmFtZS0+aXNWYXJhcmdzKCkpIHsKKyAgICAgICAgICAg
ICAgICAgICAgaWYgKGlubGluZUNhbGxGcmFtZQorICAgICAgICAgICAgICAgICAgICAgICAgJiYg
IWlubGluZUNhbGxGcmFtZS0+aXNWYXJhcmdzKCkKKyAgICAgICAgICAgICAgICAgICAgICAgICYm
IGlubGluZUNhbGxGcmFtZS0+YXJndW1lbnRzLnNpemUoKSAtIHZhcmFyZ3NEYXRhLT5vZmZzZXQg
PD0gdmFyYXJnc0RhdGEtPmxpbWl0KSB7CiAgICAgICAgICAgICAgICAgICAgICAgICBOb2RlKiBh
cmd1bWVudENvdW50ID0gaW5zZXJ0aW9uU2V0Lmluc2VydENvbnN0YW50KAogICAgICAgICAgICAg
ICAgICAgICAgICAgICAgIG5vZGVJbmRleCwgbm9kZS0+b3JpZ2luLAogICAgICAgICAgICAgICAg
ICAgICAgICAgICAgIGpzTnVtYmVyKGlubGluZUNhbGxGcmFtZS0+YXJndW1lbnRzLnNpemUoKSAt
IHZhcmFyZ3NEYXRhLT5vZmZzZXQpKTsKSW5kZXg6IFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50
aW1lL09wdGlvbnMuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50
aW1lL09wdGlvbnMuY3BwCShyZXZpc2lvbiAxODQwNDgpCisrKyBTb3VyY2UvSmF2YVNjcmlwdENv
cmUvcnVudGltZS9PcHRpb25zLmNwcAkod29ya2luZyBjb3B5KQpAQCAtMjkwLDYgKzI5MCwxOCBA
QCBzdGF0aWMgdm9pZCByZWNvbXB1dGVEZXBlbmRlbnRPcHRpb25zKCkKIAogICAgIGlmIChPcHRp
b24oT3B0aW9uczo6aml0UG9saWN5U2NhbGVJRCkuaXNPdmVycmlkZGVuKCkpCiAgICAgICAgIHNj
YWxlSklUUG9saWN5KCk7CisgICAgCisgICAgaWYgKE9wdGlvbnM6OmZvcmNlRWFnZXJDb21waWxh
dGlvbigpKSB7CisgICAgICAgIE9wdGlvbnM6OnRocmVzaG9sZEZvckpJVEFmdGVyV2FybVVwKCkg
PSAxMDsKKyAgICAgICAgT3B0aW9uczo6dGhyZXNob2xkRm9ySklUU29vbigpID0gMTA7CisgICAg
ICAgIE9wdGlvbnM6OnRocmVzaG9sZEZvck9wdGltaXplQWZ0ZXJXYXJtVXAoKSA9IDIwOworICAg
ICAgICBPcHRpb25zOjp0aHJlc2hvbGRGb3JPcHRpbWl6ZUFmdGVyTG9uZ1dhcm1VcCgpID0gMjA7
CisgICAgICAgIE9wdGlvbnM6OnRocmVzaG9sZEZvck9wdGltaXplU29vbigpID0gMjA7CisgICAg
ICAgIE9wdGlvbnM6OnRocmVzaG9sZEZvckZUTE9wdGltaXplQWZ0ZXJXYXJtVXAoKSA9IDIwOwor
ICAgICAgICBPcHRpb25zOjp0aHJlc2hvbGRGb3JGVExPcHRpbWl6ZVNvb24oKSA9IDIwOworICAg
ICAgICBPcHRpb25zOjptYXhpbXVtRXZhbENhY2hlYWJsZVNvdXJjZUxlbmd0aCgpID0gMTUwMDAw
OworICAgICAgICBPcHRpb25zOjplbmFibGVDb25jdXJyZW50SklUKCkgPSBmYWxzZTsKKyAgICB9
CiAKICAgICAvLyBDb21wdXRlIHRoZSBtYXhpbXVtIHZhbHVlIG9mIHRoZSByZW9wdGltaXphdGlv
biByZXRyeSBjb3VudGVyLiBUaGlzIGlzIHNpbXBseQogICAgIC8vIHRoZSBsYXJnZXN0IHZhbHVl
IGF0IHdoaWNoIHdlIGRvbid0IG92ZXJmbG93IHRoZSBleGVjdXRlIGNvdW50ZXIsIHdoZW4gdXNp
bmcgaXQKSW5kZXg6IFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL09wdGlvbnMuaAo9PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09Ci0tLSBTb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9PcHRpb25zLmgJKHJldmlz
aW9uIDE4NDA0OCkKKysrIFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL09wdGlvbnMuaAko
d29ya2luZyBjb3B5KQpAQCAtMjI5LDYgKzIyOSw3IEBAIHR5cGVkZWYgY29uc3QgY2hhciogb3B0
aW9uU3RyaW5nOwogICAgIHYodW5zaWduZWQsIG1heGltdW1CaW5hcnlTdHJpbmdTd2l0Y2hUb3Rh
bExlbmd0aCwgMjAwMCwgbnVsbHB0cikgXAogICAgIFwKICAgICB2KGRvdWJsZSwgaml0UG9saWN5
U2NhbGUsIDEuMCwgInNjYWxlIEpJVCB0aHJlc2hvbGRzIHRvIHRoaXMgc3BlY2lmaWVkIHJhdGlv
IGJldHdlZW4gMC4wIChjb21waWxlIEFTQVApIGFuZCAxLjAgKGNvbXBpbGUgbGlrZSBub3JtYWwp
LiIpIFwKKyAgICB2KGJvb2wsIGZvcmNlRWFnZXJDb21waWxhdGlvbiwgZmFsc2UsIG51bGxwdHIp
IFwKICAgICB2KGludDMyLCB0aHJlc2hvbGRGb3JKSVRBZnRlcldhcm1VcCwgNTAwLCBudWxscHRy
KSBcCiAgICAgdihpbnQzMiwgdGhyZXNob2xkRm9ySklUU29vbiwgMTAwLCBudWxscHRyKSBcCiAg
ICAgXApJbmRleDogU291cmNlL0phdmFTY3JpcHRDb3JlL3Rlc3RzL3N0cmVzcy9sb2FkLXZhcmFy
Z3MtZWxpbWluYXRpb24tYm91bmRzLWNoZWNrLWJhcmVseS5qcwo9PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3Vy
Y2UvSmF2YVNjcmlwdENvcmUvdGVzdHMvc3RyZXNzL2xvYWQtdmFyYXJncy1lbGltaW5hdGlvbi1i
b3VuZHMtY2hlY2stYmFyZWx5LmpzCShyZXZpc2lvbiAwKQorKysgU291cmNlL0phdmFTY3JpcHRD
b3JlL3Rlc3RzL3N0cmVzcy9sb2FkLXZhcmFyZ3MtZWxpbWluYXRpb24tYm91bmRzLWNoZWNrLWJh
cmVseS5qcwkod29ya2luZyBjb3B5KQpAQCAtMCwwICsxLDM1IEBACitmdW5jdGlvbiBmb28oKSB7
CisgICAgdmFyIHJlc3VsdCA9IDA7CisgICAgZm9yICh2YXIgaSA9IDA7IGkgPCBhcmd1bWVudHMu
bGVuZ3RoOyArK2kpCisgICAgICAgIHJlc3VsdCArPSBhcmd1bWVudHNbaV07CisgICAgcmV0dXJu
IHJlc3VsdDsKK30KKworZnVuY3Rpb24gYmFyKCkgeworICAgIHJldHVybiBmb28uYXBwbHkodGhp
cywgYXJndW1lbnRzKTsKK30KKworZnVuY3Rpb24gYmF6KHApIHsKKyAgICBpZiAocCkKKyAgICAg
ICAgcmV0dXJuIGJhcigxLCA0Mik7CisgICAgcmV0dXJuIDA7Cit9CisKK25vSW5saW5lKGJheik7
CisKKy8vIEV4ZWN1dGUgYmF6KCkgb25jZSB3aXRoIHAgc2V0LCBzbyB0aGF0IHRoZSBjYWxsIGhh
cyBhIHZhbGlkIHByZWRpY3Rpb24uCitiYXoodHJ1ZSk7CisKKy8vIFdhcm0gdXAgcHJvZmlsaW5n
IGluIGJhciBhbmQgZm9vLiBDb252aW5jZSB0aGlzIHByb2ZpbGluZyB0aGF0IGJhcigpJ3MgdmFy
YXJncyBjYWxsIHdpbGwgdGVuZCB0bworLy8gcGFzcyBhIHNtYWxsIG51bWJlciBvZiBhcmd1bWVu
dHM7Citmb3IgKHZhciBpID0gMDsgaSA8IDEwMDA7ICsraSkKKyAgICBiYXIoMSk7CisKKy8vIE5v
dyBjb21waWxlIGJheigpLCBidXQgZG9uJ3QgcnVuIHRoZSBiYWQgY29kZSB5ZXQuCitmb3IgKHZh
ciBpID0gMDsgaSA8IDEwMDAwOyArK2kpCisgICAgYmF6KGZhbHNlKTsKKworLy8gRmluYWxseSwg
dHJpZ2dlciB0aGUgYnVnLgordmFyIHJlc3VsdCA9IGJheih0cnVlKTsKK2lmIChyZXN1bHQgIT0g
NDMpCisgICAgdGhyb3cgIkVycm9yOiBiYWQgcmVzdWx0OiAiICsgcmVzdWx0OwpJbmRleDogU291
cmNlL0phdmFTY3JpcHRDb3JlL3Rlc3RzL3N0cmVzcy9sb2FkLXZhcmFyZ3MtZWxpbWluYXRpb24t
Ym91bmRzLWNoZWNrLmpzCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9KYXZhU2NyaXB0Q29yZS90ZXN0
cy9zdHJlc3MvbG9hZC12YXJhcmdzLWVsaW1pbmF0aW9uLWJvdW5kcy1jaGVjay5qcwkocmV2aXNp
b24gMCkKKysrIFNvdXJjZS9KYXZhU2NyaXB0Q29yZS90ZXN0cy9zdHJlc3MvbG9hZC12YXJhcmdz
LWVsaW1pbmF0aW9uLWJvdW5kcy1jaGVjay5qcwkod29ya2luZyBjb3B5KQpAQCAtMCwwICsxLDM1
IEBACitmdW5jdGlvbiBmb28oKSB7CisgICAgdmFyIHJlc3VsdCA9IDA7CisgICAgZm9yICh2YXIg
aSA9IDA7IGkgPCBhcmd1bWVudHMubGVuZ3RoOyArK2kpCisgICAgICAgIHJlc3VsdCArPSBhcmd1
bWVudHNbaV07CisgICAgcmV0dXJuIHJlc3VsdDsKK30KKworZnVuY3Rpb24gYmFyKCkgeworICAg
IHJldHVybiBmb28uYXBwbHkodGhpcywgYXJndW1lbnRzKTsKK30KKworZnVuY3Rpb24gYmF6KHAp
IHsKKyAgICBpZiAocCkKKyAgICAgICAgcmV0dXJuIGJhcigxLCAyLCAzLCA0KTsKKyAgICByZXR1
cm4gMDsKK30KKworbm9JbmxpbmUoYmF6KTsKKworLy8gRXhlY3V0ZSBiYXooKSBvbmNlIHdpdGgg
cCBzZXQsIHNvIHRoYXQgdGhlIGNhbGwgaGFzIGEgdmFsaWQgcHJlZGljdGlvbi4KK2Jheih0cnVl
KTsKKworLy8gV2FybSB1cCBwcm9maWxpbmcgaW4gYmFyIGFuZCBmb28uIENvbnZpbmNlIHRoaXMg
cHJvZmlsaW5nIHRoYXQgYmFyKCkncyB2YXJhcmdzIGNhbGwgd2lsbCB0ZW5kIHRvCisvLyBwYXNz
IGEgc21hbGwgbnVtYmVyIG9mIGFyZ3VtZW50czsKK2ZvciAodmFyIGkgPSAwOyBpIDwgMTAwMDsg
KytpKQorICAgIGJhcigxKTsKKworLy8gTm93IGNvbXBpbGUgYmF6KCksIGJ1dCBkb24ndCBydW4g
dGhlIGJhZCBjb2RlIHlldC4KK2ZvciAodmFyIGkgPSAwOyBpIDwgMTAwMDA7ICsraSkKKyAgICBi
YXooZmFsc2UpOworCisvLyBGaW5hbGx5LCB0cmlnZ2VyIHRoZSBidWcuCit2YXIgcmVzdWx0ID0g
YmF6KHRydWUpOworaWYgKHJlc3VsdCAhPSAxMCkKKyAgICB0aHJvdyAiRXJyb3I6IGJhZCByZXN1
bHQ6ICIgKyByZXN1bHQ7CkluZGV4OiBMYXlvdXRUZXN0cy9DaGFuZ2VMb2cKPT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQot
LS0gTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCShyZXZpc2lvbiAxODQwNTkpCisrKyBMYXlvdXRUZXN0
cy9DaGFuZ2VMb2cJKHdvcmtpbmcgY29weSkKQEAgLTEsMyArMSwxOSBAQAorMjAxNS0wNS0xMCAg
RmlsaXAgUGl6bG8gIDxmcGl6bG9AYXBwbGUuY29tPgorCisgICAgICAgIFdlIHNob3VsZG4ndCBw
cm9tb3RlIExvYWRWYXJhcmdzIHRvIGEgc2VxdWVuY2Ugb2YgR2V0U3RhY2tzIGFuZCBQdXRTdGFj
a3MgaWYgZG9pbmcgc28gd291bGQgZXhjZWVkIHRoZSBMb2FkVmFyYXJncycgbGltaXQKKyAgICAg
ICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE0NDg1MQorCisgICAg
ICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgICoganMvcmVncmVzcy9s
b2FkLXZhcmFyZ3MtZWxpbWluYXRpb24tZXhwZWN0ZWQudHh0OiBBZGRlZC4KKyAgICAgICAgKiBq
cy9yZWdyZXNzL2xvYWQtdmFyYXJncy1lbGltaW5hdGlvbi5odG1sOiBBZGRlZC4KKyAgICAgICAg
KiBqcy9yZWdyZXNzL3NjcmlwdC10ZXN0cy9sb2FkLXZhcmFyZ3MtZWxpbWluYXRpb24uanM6IEFk
ZGVkLgorICAgICAgICAoZm9vKToKKyAgICAgICAgKGJhcik6CisgICAgICAgIChiYXopOgorICAg
ICAgICAqIGpzL3JlZ3Jlc3Mvc2luay1odWdlLWFjdGl2YXRpb24tZXhwZWN0ZWQudHh0OiBBZGRl
ZC4KKyAgICAgICAgKiBqcy9yZWdyZXNzL3NpbmstaHVnZS1hY3RpdmF0aW9uLmh0bWw6IEFkZGVk
LgorCiAyMDE1LTA1LTEwICBDaHJpcyBGbGVpemFjaCAgPGNmbGVpemFjaEBhcHBsZS5jb20+CiAK
ICAgICAgICAgQVg6IERvbid0IGV4cG9zZSBlbGVtZW50cyBhcyBkYXRhIHRhYmxlcyBqdXN0IGJl
Y2F1c2UgdGhleSB1c2UgZGlzcGxheTogdGFibGUKSW5kZXg6IExheW91dFRlc3RzL2pzL3JlZ3Jl
c3MvbG9hZC12YXJhcmdzLWVsaW1pbmF0aW9uLWV4cGVjdGVkLnR4dAo9PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBM
YXlvdXRUZXN0cy9qcy9yZWdyZXNzL2xvYWQtdmFyYXJncy1lbGltaW5hdGlvbi1leHBlY3RlZC50
eHQJKHJldmlzaW9uIDApCisrKyBMYXlvdXRUZXN0cy9qcy9yZWdyZXNzL2xvYWQtdmFyYXJncy1l
bGltaW5hdGlvbi1leHBlY3RlZC50eHQJKHdvcmtpbmcgY29weSkKQEAgLTAsMCArMSwxMCBAQAor
SlNSZWdyZXNzL2xvYWQtdmFyYXJncy1lbGltaW5hdGlvbgorCitPbiBzdWNjZXNzLCB5b3Ugd2ls
bCBzZWUgYSBzZXJpZXMgb2YgIlBBU1MiIG1lc3NhZ2VzLCBmb2xsb3dlZCBieSAiVEVTVCBDT01Q
TEVURSIuCisKKworUEFTUyBubyBleGNlcHRpb24gdGhyb3duCitQQVNTIHN1Y2Nlc3NmdWxseVBh
cnNlZCBpcyB0cnVlCisKK1RFU1QgQ09NUExFVEUKKwpJbmRleDogTGF5b3V0VGVzdHMvanMvcmVn
cmVzcy9sb2FkLXZhcmFyZ3MtZWxpbWluYXRpb24uaHRtbAo9PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRU
ZXN0cy9qcy9yZWdyZXNzL2xvYWQtdmFyYXJncy1lbGltaW5hdGlvbi5odG1sCShyZXZpc2lvbiAw
KQorKysgTGF5b3V0VGVzdHMvanMvcmVncmVzcy9sb2FkLXZhcmFyZ3MtZWxpbWluYXRpb24uaHRt
bAkod29ya2luZyBjb3B5KQpAQCAtMCwwICsxLDEyIEBACis8IURPQ1RZUEUgSFRNTCBQVUJMSUMg
Ii0vL0lFVEYvL0RURCBIVE1MLy9FTiI+Cis8aHRtbD4KKzxoZWFkPgorPHNjcmlwdCBzcmM9Ii4u
Ly4uL3Jlc291cmNlcy9qcy10ZXN0LXByZS5qcyI+PC9zY3JpcHQ+Cis8L2hlYWQ+Cis8Ym9keT4K
KzxzY3JpcHQgc3JjPSIuLi8uLi9yZXNvdXJjZXMvcmVncmVzcy1wcmUuanMiPjwvc2NyaXB0Pgor
PHNjcmlwdCBzcmM9InNjcmlwdC10ZXN0cy9sb2FkLXZhcmFyZ3MtZWxpbWluYXRpb24uanMiPjwv
c2NyaXB0PgorPHNjcmlwdCBzcmM9Ii4uLy4uL3Jlc291cmNlcy9yZWdyZXNzLXBvc3QuanMiPjwv
c2NyaXB0PgorPHNjcmlwdCBzcmM9Ii4uLy4uL3Jlc291cmNlcy9qcy10ZXN0LXBvc3QuanMiPjwv
c2NyaXB0PgorPC9ib2R5PgorPC9odG1sPgpJbmRleDogTGF5b3V0VGVzdHMvanMvcmVncmVzcy9z
aW5rLWh1Z2UtYWN0aXZhdGlvbi1leHBlY3RlZC50eHQKPT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVz
dHMvanMvcmVncmVzcy9zaW5rLWh1Z2UtYWN0aXZhdGlvbi1leHBlY3RlZC50eHQJKHJldmlzaW9u
IDApCisrKyBMYXlvdXRUZXN0cy9qcy9yZWdyZXNzL3NpbmstaHVnZS1hY3RpdmF0aW9uLWV4cGVj
dGVkLnR4dAkod29ya2luZyBjb3B5KQpAQCAtMCwwICsxLDEwIEBACitKU1JlZ3Jlc3Mvc2luay1o
dWdlLWFjdGl2YXRpb24KKworT24gc3VjY2VzcywgeW91IHdpbGwgc2VlIGEgc2VyaWVzIG9mICJQ
QVNTIiBtZXNzYWdlcywgZm9sbG93ZWQgYnkgIlRFU1QgQ09NUExFVEUiLgorCisKK1BBU1Mgbm8g
ZXhjZXB0aW9uIHRocm93bgorUEFTUyBzdWNjZXNzZnVsbHlQYXJzZWQgaXMgdHJ1ZQorCitURVNU
IENPTVBMRVRFCisKSW5kZXg6IExheW91dFRlc3RzL2pzL3JlZ3Jlc3Mvc2luay1odWdlLWFjdGl2
YXRpb24uaHRtbAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9qcy9yZWdyZXNzL3NpbmstaHVn
ZS1hY3RpdmF0aW9uLmh0bWwJKHJldmlzaW9uIDApCisrKyBMYXlvdXRUZXN0cy9qcy9yZWdyZXNz
L3NpbmstaHVnZS1hY3RpdmF0aW9uLmh0bWwJKHdvcmtpbmcgY29weSkKQEAgLTAsMCArMSwxMiBA
QAorPCFET0NUWVBFIEhUTUwgUFVCTElDICItLy9JRVRGLy9EVEQgSFRNTC8vRU4iPgorPGh0bWw+
Cis8aGVhZD4KKzxzY3JpcHQgc3JjPSIuLi8uLi9yZXNvdXJjZXMvanMtdGVzdC1wcmUuanMiPjwv
c2NyaXB0PgorPC9oZWFkPgorPGJvZHk+Cis8c2NyaXB0IHNyYz0iLi4vLi4vcmVzb3VyY2VzL3Jl
Z3Jlc3MtcHJlLmpzIj48L3NjcmlwdD4KKzxzY3JpcHQgc3JjPSJzY3JpcHQtdGVzdHMvc2luay1o
dWdlLWFjdGl2YXRpb24uanMiPjwvc2NyaXB0PgorPHNjcmlwdCBzcmM9Ii4uLy4uL3Jlc291cmNl
cy9yZWdyZXNzLXBvc3QuanMiPjwvc2NyaXB0PgorPHNjcmlwdCBzcmM9Ii4uLy4uL3Jlc291cmNl
cy9qcy10ZXN0LXBvc3QuanMiPjwvc2NyaXB0PgorPC9ib2R5PgorPC9odG1sPgpJbmRleDogTGF5
b3V0VGVzdHMvanMvcmVncmVzcy9zY3JpcHQtdGVzdHMvbG9hZC12YXJhcmdzLWVsaW1pbmF0aW9u
LmpzCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL2pzL3JlZ3Jlc3Mvc2NyaXB0LXRlc3RzL2xv
YWQtdmFyYXJncy1lbGltaW5hdGlvbi5qcwkocmV2aXNpb24gMCkKKysrIExheW91dFRlc3RzL2pz
L3JlZ3Jlc3Mvc2NyaXB0LXRlc3RzL2xvYWQtdmFyYXJncy1lbGltaW5hdGlvbi5qcwkod29ya2lu
ZyBjb3B5KQpAQCAtMCwwICsxLDIzIEBACitmdW5jdGlvbiBmb28oKSB7CisgICAgdmFyIHJlc3Vs
dCA9IDA7CisgICAgZm9yICh2YXIgaSA9IDA7IGkgPCBhcmd1bWVudHMubGVuZ3RoOyArK2kpCisg
ICAgICAgIHJlc3VsdCArPSBhcmd1bWVudHNbaV07CisgICAgcmV0dXJuIHJlc3VsdDsKK30KKwor
ZnVuY3Rpb24gYmFyKCkgeworICAgIHJldHVybiBmb28uYXBwbHkodGhpcywgYXJndW1lbnRzKTsK
K30KKworZnVuY3Rpb24gYmF6KCkgeworICAgIHJldHVybiBiYXIoMSwgMiwgMywgNCk7Cit9CisK
K25vSW5saW5lKGJheik7CisKK2ZvciAodmFyIGkgPSAwOyBpIDwgMTAwMDAwMDsgKytpKSB7Cisg
ICAgdmFyIHJlc3VsdCA9IGJheigpOworICAgIGlmIChyZXN1bHQgIT0gMTApCisgICAgICAgIHRo
cm93ICJFcnJvcjogYmFkIHJlc3VsdDogIiArIHJlc3VsdDsKK30KKwo=
</data>
<flag name="review"
          id="277679"
          type_id="1"
          status="-"
          setter="msaboff"
    />
          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>252867</attachid>
            <date>2015-05-11 10:58:20 -0700</date>
            <delta_ts>2015-05-11 11:02:39 -0700</delta_ts>
            <desc>the patch</desc>
            <filename>blah.patch</filename>
            <type>text/plain</type>
            <size>10101</size>
            <attacher name="Filip Pizlo">fpizlo</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9DaGFuZ2VMb2cKPT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291
cmNlL0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwkocmV2aXNpb24gMTg0MDU5KQorKysgU291cmNl
L0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDQzIEBA
CisyMDE1LTA1LTEwICBGaWxpcCBQaXpsbyAgPGZwaXpsb0BhcHBsZS5jb20+CisKKyAgICAgICAg
V2Ugc2hvdWxkbid0IHByb21vdGUgTG9hZFZhcmFyZ3MgdG8gYSBzZXF1ZW5jZSBvZiBHZXRTdGFj
a3MgYW5kIFB1dFN0YWNrcyBpZiBkb2luZyBzbyB3b3VsZCBleGNlZWQgdGhlIExvYWRWYXJhcmdz
JyBsaW1pdAorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9
MTQ0ODUxCisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisgICAgICAgIAor
ICAgICAgICBMb2FkVmFyYXJncyBsb2FkcyBhcmd1bWVudHMgZnJvbSBzb21lIG9iamVjdCBhbmQg
cHV0cyB0aGVtIG9uIHRoZSBzdGFjay4gVGhlIHJlZ2lvbiBvZgorICAgICAgICBzdGFjayBpcyBj
b250cm9sbGVkIGJ5IGEgYnVuY2ggb2YgbWV0YS1kYXRhLCBpbmNsdWRpbmcgSW5saW5lQ2FsbEZy
YW1lLiBJbmxpbmVDYWxsRnJhbWUKKyAgICAgICAgc2hvdWxkbid0IHJlYWxseSBiZSBlZGl0ZWQg
YWZ0ZXIgQnl0ZUNvZGVQYXJzZXIsIHNvIHdlIGNhbm5vdCBjb252ZXJ0IExvYWRWYXJhcmdzIHRv
CisgICAgICAgIHNvbWV0aGluZyB0aGF0IHVzZXMgbW9yZSBzdGFjayB0aGFuIHRoZSBMb2FkVmFy
YXJncyB3YW50ZWQgdG8uCisgICAgICAgIAorICAgICAgICBUaGlzIGNoZWNrIHdhcyBtaXNzaW5n
IGluIHRoZSBBcmd1bWVudHNFbGltaW5hdGlvblBoYXNlJ3MgTG9hZFZhcmFyZ3MtPkdldFN0YWNr
K1B1dFN0YWNrCisgICAgICAgIHByb21vdGVyLiBUaGlzIGlzIGFuIGltcG9ydGFudCBwcm9tb3Rp
b24gcnVsZSBmb3IgcGVyZm9ybWFuY2UsIGFuZCBpbiBjYXNlcyB3aGVyZSB3ZSBhcmUKKyAgICAg
ICAgY29tcGlsaW5nIHRydWx5IGhvdCBjb2RlLCB0aGUgTG9hZFZhcmFyZ3MgbGltaXQgd2lsbCBi
ZSBhdCBsZWFzdCBhcyBiaWcgYXMgdGhlIGxlbmd0aCBvZgorICAgICAgICB0aGUgcGhhbnRvbSBh
cmd1bWVudHMgYXJyYXkgdGhhdCB0aGlzIHBoYXNlIHNlZXMuIFRoZSBMb2FkVmFyYXJncyBsaW1p
dCBpcyBiYXNlZCBvbgorICAgICAgICBwcm9maWxpbmcgYW5kIHRoZSBwaGFudG9tIGFyZ3VtZW50
cyBhcnJheSBpcyBhIHByb29mOyBpbiBtb3N0IGNhc2VzIHRoZSBwcm9maWxpbmcgaXMgbW9yZQor
ICAgICAgICBjb25zZXJ2YXRpdmUuCisgICAgICAgIAorICAgICAgICBCdXQsIHlvdSBjb3VsZCB3
cml0ZSBzb21lIGNyYXp5IGNvZGUgd2hlcmUgdGhlIHN0YXRpY2FsbHkgb2J2aW91cyBhcmd1bWVu
dHMgYXJyYXkgdmFsdWUgaXMKKyAgICAgICAgYmlnZ2VyIHRoYW4gd2hhdCB0aGUgcHJvZmlsaW5n
IHdvdWxkIGhhdmUgdG9sZCB5b3UuIFdoZW4gdGhpcyBoYXBwZW5zLCB0aGlzIHByb21vdGlvbgor
ICAgICAgICBlZmZlY3RpdmVseSByZW1vdmVzIGEgYm91bmRzIGNoZWNrLiBUaGlzIGVpdGhlciBy
ZXN1bHRzIGluIHVzIGNsb2JiZXJpbmcgYSBidW5jaCBvZiBzdGFjaywKKyAgICAgICAgb3IgaXQg
bWVhbnMgdGhhdCB3ZSBuZXZlciBpbml0aWFsaXplIGEgcmVnaW9uIG9mIHRoZSBzdGFjayB0aGF0
IGEgbGF0ZXIgb3BlcmF0aW9uIHdpbGwgcmVhZAorICAgICAgICAodGhlIHVuaW5pdGlhbGl6YXRp
b24gaGFwcGVucyBiZWNhdXNlIFB1dFN0YWNrU2lua2luZ1BoYXNlIHJlbW92ZXMgUHV0U3RhY2tz
IHRoYXQgYXBwZWFyCisgICAgICAgIHVubmVjZXNzYXJ5LCBhbmQgYSBHZXRNeUFyZ3VtZW50QnlW
YWwgd2lsbCBjbGFpbSBub3QgdG8gdXNlIHRoZSByZWdpb24gb2YgdGhlIHN0YWNrIG91dHNpZGUK
KyAgICAgICAgdGhlIG9yaWdpbmFsIExvYWRWYXJhcmdzIGxpbWl0KS4KKyAgICAgICAgCisgICAg
ICAgIEkgZm91bmQgdGhpcyBidWcgYnkgYWRkaW5nIGEgbmV3IG9wdGlvbiB0aGF0IGZvcmNlcyBt
YXhpbWFsbHkgZWFnZXIgREZHIGFuZCBGVEwKKyAgICAgICAgY29tcGlsYXRpb24sIGFuZCB0aGVu
IHJ1bm5pbmcgbGF5b3V0IHRlc3RzIHRlc3RzIHdpdGggdGhpcyBtb2RlLgorCisgICAgICAgICog
ZGZnL0RGR0FyZ3VtZW50c0VsaW1pbmF0aW9uUGhhc2UuY3BwOgorICAgICAgICAqIHRlc3RzL3N0
cmVzcy9sb2FkLXZhcmFyZ3MtZWxpbWluYXRpb24tYm91bmRzLWNoZWNrLWJhcmVseS5qczogQWRk
ZWQuCisgICAgICAgIChmb28pOgorICAgICAgICAoYmFyKToKKyAgICAgICAgKGJheik6CisgICAg
ICAgICogdGVzdHMvc3RyZXNzL2xvYWQtdmFyYXJncy1lbGltaW5hdGlvbi1ib3VuZHMtY2hlY2su
anM6IEFkZGVkLgorICAgICAgICAoZm9vKToKKyAgICAgICAgKGJhcik6CisgICAgICAgIChiYXop
OgorCiAyMDE1LTA1LTEwICBBbmRyZWFzIEtsaW5nICA8YWtsaW5nQGFwcGxlLmNvbT4KIAogICAg
ICAgICBSZW1vdmUgdW5uZWNlc3NhcnkgQXRvbWljU3RyaW5nSW1wbCogaGFzaCBzcGVjaWZpY2F0
aW9uIGluIFByb3BlcnR5TmFtZUFycmF5LgpJbmRleDogU291cmNlL0phdmFTY3JpcHRDb3JlL2Rm
Zy9ERkdBcmd1bWVudHNFbGltaW5hdGlvblBoYXNlLmNwcAo9PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2Uv
SmF2YVNjcmlwdENvcmUvZGZnL0RGR0FyZ3VtZW50c0VsaW1pbmF0aW9uUGhhc2UuY3BwCShyZXZp
c2lvbiAxODQwNDgpCisrKyBTb3VyY2UvSmF2YVNjcmlwdENvcmUvZGZnL0RGR0FyZ3VtZW50c0Vs
aW1pbmF0aW9uUGhhc2UuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC00NTAsNyArNDUwLDkgQEAgcHJp
dmF0ZToKICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgIExvYWRWYXJh
cmdzRGF0YSogdmFyYXJnc0RhdGEgPSBub2RlLT5sb2FkVmFyYXJnc0RhdGEoKTsKICAgICAgICAg
ICAgICAgICAgICAgSW5saW5lQ2FsbEZyYW1lKiBpbmxpbmVDYWxsRnJhbWUgPSBjYW5kaWRhdGUt
Pm9yaWdpbi5zZW1hbnRpYy5pbmxpbmVDYWxsRnJhbWU7Ci0gICAgICAgICAgICAgICAgICAgIGlm
IChpbmxpbmVDYWxsRnJhbWUgJiYgIWlubGluZUNhbGxGcmFtZS0+aXNWYXJhcmdzKCkpIHsKKyAg
ICAgICAgICAgICAgICAgICAgaWYgKGlubGluZUNhbGxGcmFtZQorICAgICAgICAgICAgICAgICAg
ICAgICAgJiYgIWlubGluZUNhbGxGcmFtZS0+aXNWYXJhcmdzKCkKKyAgICAgICAgICAgICAgICAg
ICAgICAgICYmIGlubGluZUNhbGxGcmFtZS0+YXJndW1lbnRzLnNpemUoKSAtIHZhcmFyZ3NEYXRh
LT5vZmZzZXQgPD0gdmFyYXJnc0RhdGEtPmxpbWl0KSB7CiAgICAgICAgICAgICAgICAgICAgICAg
ICBOb2RlKiBhcmd1bWVudENvdW50ID0gaW5zZXJ0aW9uU2V0Lmluc2VydENvbnN0YW50KAogICAg
ICAgICAgICAgICAgICAgICAgICAgICAgIG5vZGVJbmRleCwgbm9kZS0+b3JpZ2luLAogICAgICAg
ICAgICAgICAgICAgICAgICAgICAgIGpzTnVtYmVyKGlubGluZUNhbGxGcmFtZS0+YXJndW1lbnRz
LnNpemUoKSAtIHZhcmFyZ3NEYXRhLT5vZmZzZXQpKTsKSW5kZXg6IFNvdXJjZS9KYXZhU2NyaXB0
Q29yZS90ZXN0cy9zdHJlc3MvbG9hZC12YXJhcmdzLWVsaW1pbmF0aW9uLWJvdW5kcy1jaGVjay1i
YXJlbHkuanMKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL0phdmFTY3JpcHRDb3JlL3Rlc3RzL3N0cmVz
cy9sb2FkLXZhcmFyZ3MtZWxpbWluYXRpb24tYm91bmRzLWNoZWNrLWJhcmVseS5qcwkocmV2aXNp
b24gMCkKKysrIFNvdXJjZS9KYXZhU2NyaXB0Q29yZS90ZXN0cy9zdHJlc3MvbG9hZC12YXJhcmdz
LWVsaW1pbmF0aW9uLWJvdW5kcy1jaGVjay1iYXJlbHkuanMJKHdvcmtpbmcgY29weSkKQEAgLTAs
MCArMSwzNSBAQAorZnVuY3Rpb24gZm9vKCkgeworICAgIHZhciByZXN1bHQgPSAwOworICAgIGZv
ciAodmFyIGkgPSAwOyBpIDwgYXJndW1lbnRzLmxlbmd0aDsgKytpKQorICAgICAgICByZXN1bHQg
Kz0gYXJndW1lbnRzW2ldOworICAgIHJldHVybiByZXN1bHQ7Cit9CisKK2Z1bmN0aW9uIGJhcigp
IHsKKyAgICByZXR1cm4gZm9vLmFwcGx5KHRoaXMsIGFyZ3VtZW50cyk7Cit9CisKK2Z1bmN0aW9u
IGJheihwKSB7CisgICAgaWYgKHApCisgICAgICAgIHJldHVybiBiYXIoMSwgNDIpOworICAgIHJl
dHVybiAwOworfQorCitub0lubGluZShiYXopOworCisvLyBFeGVjdXRlIGJheigpIG9uY2Ugd2l0
aCBwIHNldCwgc28gdGhhdCB0aGUgY2FsbCBoYXMgYSB2YWxpZCBwcmVkaWN0aW9uLgorYmF6KHRy
dWUpOworCisvLyBXYXJtIHVwIHByb2ZpbGluZyBpbiBiYXIgYW5kIGZvby4gQ29udmluY2UgdGhp
cyBwcm9maWxpbmcgdGhhdCBiYXIoKSdzIHZhcmFyZ3MgY2FsbCB3aWxsIHRlbmQgdG8KKy8vIHBh
c3MgYSBzbWFsbCBudW1iZXIgb2YgYXJndW1lbnRzOworZm9yICh2YXIgaSA9IDA7IGkgPCAxMDAw
OyArK2kpCisgICAgYmFyKDEpOworCisvLyBOb3cgY29tcGlsZSBiYXooKSwgYnV0IGRvbid0IHJ1
biB0aGUgYmFkIGNvZGUgeWV0LgorZm9yICh2YXIgaSA9IDA7IGkgPCAxMDAwMDsgKytpKQorICAg
IGJheihmYWxzZSk7CisKKy8vIEZpbmFsbHksIHRyaWdnZXIgdGhlIGJ1Zy4KK3ZhciByZXN1bHQg
PSBiYXoodHJ1ZSk7CitpZiAocmVzdWx0ICE9IDQzKQorICAgIHRocm93ICJFcnJvcjogYmFkIHJl
c3VsdDogIiArIHJlc3VsdDsKSW5kZXg6IFNvdXJjZS9KYXZhU2NyaXB0Q29yZS90ZXN0cy9zdHJl
c3MvbG9hZC12YXJhcmdzLWVsaW1pbmF0aW9uLWJvdW5kcy1jaGVjay5qcwo9PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0t
LSBTb3VyY2UvSmF2YVNjcmlwdENvcmUvdGVzdHMvc3RyZXNzL2xvYWQtdmFyYXJncy1lbGltaW5h
dGlvbi1ib3VuZHMtY2hlY2suanMJKHJldmlzaW9uIDApCisrKyBTb3VyY2UvSmF2YVNjcmlwdENv
cmUvdGVzdHMvc3RyZXNzL2xvYWQtdmFyYXJncy1lbGltaW5hdGlvbi1ib3VuZHMtY2hlY2suanMJ
KHdvcmtpbmcgY29weSkKQEAgLTAsMCArMSwzNSBAQAorZnVuY3Rpb24gZm9vKCkgeworICAgIHZh
ciByZXN1bHQgPSAwOworICAgIGZvciAodmFyIGkgPSAwOyBpIDwgYXJndW1lbnRzLmxlbmd0aDsg
KytpKQorICAgICAgICByZXN1bHQgKz0gYXJndW1lbnRzW2ldOworICAgIHJldHVybiByZXN1bHQ7
Cit9CisKK2Z1bmN0aW9uIGJhcigpIHsKKyAgICByZXR1cm4gZm9vLmFwcGx5KHRoaXMsIGFyZ3Vt
ZW50cyk7Cit9CisKK2Z1bmN0aW9uIGJheihwKSB7CisgICAgaWYgKHApCisgICAgICAgIHJldHVy
biBiYXIoMSwgMiwgMywgNCk7CisgICAgcmV0dXJuIDA7Cit9CisKK25vSW5saW5lKGJheik7CisK
Ky8vIEV4ZWN1dGUgYmF6KCkgb25jZSB3aXRoIHAgc2V0LCBzbyB0aGF0IHRoZSBjYWxsIGhhcyBh
IHZhbGlkIHByZWRpY3Rpb24uCitiYXoodHJ1ZSk7CisKKy8vIFdhcm0gdXAgcHJvZmlsaW5nIGlu
IGJhciBhbmQgZm9vLiBDb252aW5jZSB0aGlzIHByb2ZpbGluZyB0aGF0IGJhcigpJ3MgdmFyYXJn
cyBjYWxsIHdpbGwgdGVuZCB0bworLy8gcGFzcyBhIHNtYWxsIG51bWJlciBvZiBhcmd1bWVudHM7
Citmb3IgKHZhciBpID0gMDsgaSA8IDEwMDA7ICsraSkKKyAgICBiYXIoMSk7CisKKy8vIE5vdyBj
b21waWxlIGJheigpLCBidXQgZG9uJ3QgcnVuIHRoZSBiYWQgY29kZSB5ZXQuCitmb3IgKHZhciBp
ID0gMDsgaSA8IDEwMDAwOyArK2kpCisgICAgYmF6KGZhbHNlKTsKKworLy8gRmluYWxseSwgdHJp
Z2dlciB0aGUgYnVnLgordmFyIHJlc3VsdCA9IGJheih0cnVlKTsKK2lmIChyZXN1bHQgIT0gMTAp
CisgICAgdGhyb3cgIkVycm9yOiBiYWQgcmVzdWx0OiAiICsgcmVzdWx0OwpJbmRleDogTGF5b3V0
VGVzdHMvQ2hhbmdlTG9nCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL0NoYW5nZUxvZwkocmV2
aXNpb24gMTg0MDU5KQorKysgTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCSh3b3JraW5nIGNvcHkpCkBA
IC0xLDMgKzEsMTkgQEAKKzIwMTUtMDUtMTAgIEZpbGlwIFBpemxvICA8ZnBpemxvQGFwcGxlLmNv
bT4KKworICAgICAgICBXZSBzaG91bGRuJ3QgcHJvbW90ZSBMb2FkVmFyYXJncyB0byBhIHNlcXVl
bmNlIG9mIEdldFN0YWNrcyBhbmQgUHV0U3RhY2tzIGlmIGRvaW5nIHNvIHdvdWxkIGV4Y2VlZCB0
aGUgTG9hZFZhcmFyZ3MnIGxpbWl0CisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3No
b3dfYnVnLmNnaT9pZD0xNDQ4NTEKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMh
KS4KKworICAgICAgICAqIGpzL3JlZ3Jlc3MvbG9hZC12YXJhcmdzLWVsaW1pbmF0aW9uLWV4cGVj
dGVkLnR4dDogQWRkZWQuCisgICAgICAgICoganMvcmVncmVzcy9sb2FkLXZhcmFyZ3MtZWxpbWlu
YXRpb24uaHRtbDogQWRkZWQuCisgICAgICAgICoganMvcmVncmVzcy9zY3JpcHQtdGVzdHMvbG9h
ZC12YXJhcmdzLWVsaW1pbmF0aW9uLmpzOiBBZGRlZC4KKyAgICAgICAgKGZvbyk6CisgICAgICAg
IChiYXIpOgorICAgICAgICAoYmF6KToKKyAgICAgICAgKiBqcy9yZWdyZXNzL3NpbmstaHVnZS1h
Y3RpdmF0aW9uLWV4cGVjdGVkLnR4dDogQWRkZWQuCisgICAgICAgICoganMvcmVncmVzcy9zaW5r
LWh1Z2UtYWN0aXZhdGlvbi5odG1sOiBBZGRlZC4KKwogMjAxNS0wNS0xMCAgQ2hyaXMgRmxlaXph
Y2ggIDxjZmxlaXphY2hAYXBwbGUuY29tPgogCiAgICAgICAgIEFYOiBEb24ndCBleHBvc2UgZWxl
bWVudHMgYXMgZGF0YSB0YWJsZXMganVzdCBiZWNhdXNlIHRoZXkgdXNlIGRpc3BsYXk6IHRhYmxl
CkluZGV4OiBMYXlvdXRUZXN0cy9qcy9yZWdyZXNzL2xvYWQtdmFyYXJncy1lbGltaW5hdGlvbi1l
eHBlY3RlZC50eHQKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvanMvcmVncmVzcy9sb2FkLXZh
cmFyZ3MtZWxpbWluYXRpb24tZXhwZWN0ZWQudHh0CShyZXZpc2lvbiAwKQorKysgTGF5b3V0VGVz
dHMvanMvcmVncmVzcy9sb2FkLXZhcmFyZ3MtZWxpbWluYXRpb24tZXhwZWN0ZWQudHh0CSh3b3Jr
aW5nIGNvcHkpCkBAIC0wLDAgKzEsMTAgQEAKK0pTUmVncmVzcy9sb2FkLXZhcmFyZ3MtZWxpbWlu
YXRpb24KKworT24gc3VjY2VzcywgeW91IHdpbGwgc2VlIGEgc2VyaWVzIG9mICJQQVNTIiBtZXNz
YWdlcywgZm9sbG93ZWQgYnkgIlRFU1QgQ09NUExFVEUiLgorCisKK1BBU1Mgbm8gZXhjZXB0aW9u
IHRocm93bgorUEFTUyBzdWNjZXNzZnVsbHlQYXJzZWQgaXMgdHJ1ZQorCitURVNUIENPTVBMRVRF
CisKSW5kZXg6IExheW91dFRlc3RzL2pzL3JlZ3Jlc3MvbG9hZC12YXJhcmdzLWVsaW1pbmF0aW9u
Lmh0bWwKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvanMvcmVncmVzcy9sb2FkLXZhcmFyZ3Mt
ZWxpbWluYXRpb24uaHRtbAkocmV2aXNpb24gMCkKKysrIExheW91dFRlc3RzL2pzL3JlZ3Jlc3Mv
bG9hZC12YXJhcmdzLWVsaW1pbmF0aW9uLmh0bWwJKHdvcmtpbmcgY29weSkKQEAgLTAsMCArMSwx
MiBAQAorPCFET0NUWVBFIEhUTUwgUFVCTElDICItLy9JRVRGLy9EVEQgSFRNTC8vRU4iPgorPGh0
bWw+Cis8aGVhZD4KKzxzY3JpcHQgc3JjPSIuLi8uLi9yZXNvdXJjZXMvanMtdGVzdC1wcmUuanMi
Pjwvc2NyaXB0PgorPC9oZWFkPgorPGJvZHk+Cis8c2NyaXB0IHNyYz0iLi4vLi4vcmVzb3VyY2Vz
L3JlZ3Jlc3MtcHJlLmpzIj48L3NjcmlwdD4KKzxzY3JpcHQgc3JjPSJzY3JpcHQtdGVzdHMvbG9h
ZC12YXJhcmdzLWVsaW1pbmF0aW9uLmpzIj48L3NjcmlwdD4KKzxzY3JpcHQgc3JjPSIuLi8uLi9y
ZXNvdXJjZXMvcmVncmVzcy1wb3N0LmpzIj48L3NjcmlwdD4KKzxzY3JpcHQgc3JjPSIuLi8uLi9y
ZXNvdXJjZXMvanMtdGVzdC1wb3N0LmpzIj48L3NjcmlwdD4KKzwvYm9keT4KKzwvaHRtbD4KSW5k
ZXg6IExheW91dFRlc3RzL2pzL3JlZ3Jlc3Mvc2luay1odWdlLWFjdGl2YXRpb24tZXhwZWN0ZWQu
dHh0Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL2pzL3JlZ3Jlc3Mvc2luay1odWdlLWFjdGl2
YXRpb24tZXhwZWN0ZWQudHh0CShyZXZpc2lvbiAwKQorKysgTGF5b3V0VGVzdHMvanMvcmVncmVz
cy9zaW5rLWh1Z2UtYWN0aXZhdGlvbi1leHBlY3RlZC50eHQJKHdvcmtpbmcgY29weSkKQEAgLTAs
MCArMSwxMCBAQAorSlNSZWdyZXNzL3NpbmstaHVnZS1hY3RpdmF0aW9uCisKK09uIHN1Y2Nlc3Ms
IHlvdSB3aWxsIHNlZSBhIHNlcmllcyBvZiAiUEFTUyIgbWVzc2FnZXMsIGZvbGxvd2VkIGJ5ICJU
RVNUIENPTVBMRVRFIi4KKworCitQQVNTIG5vIGV4Y2VwdGlvbiB0aHJvd24KK1BBU1Mgc3VjY2Vz
c2Z1bGx5UGFyc2VkIGlzIHRydWUKKworVEVTVCBDT01QTEVURQorCkluZGV4OiBMYXlvdXRUZXN0
cy9qcy9yZWdyZXNzL3NpbmstaHVnZS1hY3RpdmF0aW9uLmh0bWwKPT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5
b3V0VGVzdHMvanMvcmVncmVzcy9zaW5rLWh1Z2UtYWN0aXZhdGlvbi5odG1sCShyZXZpc2lvbiAw
KQorKysgTGF5b3V0VGVzdHMvanMvcmVncmVzcy9zaW5rLWh1Z2UtYWN0aXZhdGlvbi5odG1sCSh3
b3JraW5nIGNvcHkpCkBAIC0wLDAgKzEsMTIgQEAKKzwhRE9DVFlQRSBIVE1MIFBVQkxJQyAiLS8v
SUVURi8vRFREIEhUTUwvL0VOIj4KKzxodG1sPgorPGhlYWQ+Cis8c2NyaXB0IHNyYz0iLi4vLi4v
cmVzb3VyY2VzL2pzLXRlc3QtcHJlLmpzIj48L3NjcmlwdD4KKzwvaGVhZD4KKzxib2R5PgorPHNj
cmlwdCBzcmM9Ii4uLy4uL3Jlc291cmNlcy9yZWdyZXNzLXByZS5qcyI+PC9zY3JpcHQ+Cis8c2Ny
aXB0IHNyYz0ic2NyaXB0LXRlc3RzL3NpbmstaHVnZS1hY3RpdmF0aW9uLmpzIj48L3NjcmlwdD4K
KzxzY3JpcHQgc3JjPSIuLi8uLi9yZXNvdXJjZXMvcmVncmVzcy1wb3N0LmpzIj48L3NjcmlwdD4K
KzxzY3JpcHQgc3JjPSIuLi8uLi9yZXNvdXJjZXMvanMtdGVzdC1wb3N0LmpzIj48L3NjcmlwdD4K
KzwvYm9keT4KKzwvaHRtbD4KSW5kZXg6IExheW91dFRlc3RzL2pzL3JlZ3Jlc3Mvc2NyaXB0LXRl
c3RzL2xvYWQtdmFyYXJncy1lbGltaW5hdGlvbi5qcwo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0
cy9qcy9yZWdyZXNzL3NjcmlwdC10ZXN0cy9sb2FkLXZhcmFyZ3MtZWxpbWluYXRpb24uanMJKHJl
dmlzaW9uIDApCisrKyBMYXlvdXRUZXN0cy9qcy9yZWdyZXNzL3NjcmlwdC10ZXN0cy9sb2FkLXZh
cmFyZ3MtZWxpbWluYXRpb24uanMJKHdvcmtpbmcgY29weSkKQEAgLTAsMCArMSwyMyBAQAorZnVu
Y3Rpb24gZm9vKCkgeworICAgIHZhciByZXN1bHQgPSAwOworICAgIGZvciAodmFyIGkgPSAwOyBp
IDwgYXJndW1lbnRzLmxlbmd0aDsgKytpKQorICAgICAgICByZXN1bHQgKz0gYXJndW1lbnRzW2ld
OworICAgIHJldHVybiByZXN1bHQ7Cit9CisKK2Z1bmN0aW9uIGJhcigpIHsKKyAgICByZXR1cm4g
Zm9vLmFwcGx5KHRoaXMsIGFyZ3VtZW50cyk7Cit9CisKK2Z1bmN0aW9uIGJheigpIHsKKyAgICBy
ZXR1cm4gYmFyKDEsIDIsIDMsIDQpOworfQorCitub0lubGluZShiYXopOworCitmb3IgKHZhciBp
ID0gMDsgaSA8IDEwMDAwMDA7ICsraSkgeworICAgIHZhciByZXN1bHQgPSBiYXooKTsKKyAgICBp
ZiAocmVzdWx0ICE9IDEwKQorICAgICAgICB0aHJvdyAiRXJyb3I6IGJhZCByZXN1bHQ6ICIgKyBy
ZXN1bHQ7Cit9CisK
</data>
<flag name="review"
          id="277726"
          type_id="1"
          status="+"
          setter="msaboff"
    />
          </attachment>
      

    </bug>

</bugzilla>