<?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>182783</bug_id>
          
          <creation_ts>2018-02-14 03:02:39 -0800</creation_ts>
          <short_desc>[FTL] Support ArrayPop for ArrayStorage</short_desc>
          <delta_ts>2018-02-19 20:34:25 -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>New Bugs</component>
          <version>WebKit 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>InRadar</keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Yusuke Suzuki">ysuzuki</reporter>
          <assigned_to name="Yusuke Suzuki">ysuzuki</assigned_to>
          <cc>ews-watchlist</cc>
    
    <cc>keith_miller</cc>
    
    <cc>mark.lam</cc>
    
    <cc>msaboff</cc>
    
    <cc>saam</cc>
    
    <cc>webkit-bug-importer</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1399010</commentid>
    <comment_count>0</comment_count>
    <who name="Yusuke Suzuki">ysuzuki</who>
    <bug_when>2018-02-14 03:02:39 -0800</bug_when>
    <thetext>[FTL] Support ArrayPop for ArrayStorage</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1399011</commentid>
    <comment_count>1</comment_count>
      <attachid>333778</attachid>
    <who name="Yusuke Suzuki">ysuzuki</who>
    <bug_when>2018-02-14 03:03:42 -0800</bug_when>
    <thetext>Created attachment 333778
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1399012</commentid>
    <comment_count>2</comment_count>
      <attachid>333779</attachid>
    <who name="Yusuke Suzuki">ysuzuki</who>
    <bug_when>2018-02-14 03:08:29 -0800</bug_when>
    <thetext>Created attachment 333779
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1400619</commentid>
    <comment_count>3</comment_count>
      <attachid>333779</attachid>
    <who name="Saam Barati">saam</who>
    <bug_when>2018-02-19 18:55:53 -0800</bug_when>
    <thetext>Comment on attachment 333779
Patch

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

r=me

&gt; Source/JavaScriptCore/ftl/FTLLowerDFGToB3.cpp:4768
&gt; +                m_out.aboveOrEqual(newLength, m_out.load32(storage, m_heaps.Butterfly_vectorLength)), usually(slowCase), usually(popCheckCase));

You do &apos;usually&apos; twice here. You probably want &apos;rarely(slowCase)&apos;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1400643</commentid>
    <comment_count>4</comment_count>
      <attachid>333779</attachid>
    <who name="Yusuke Suzuki">ysuzuki</who>
    <bug_when>2018-02-19 20:02:14 -0800</bug_when>
    <thetext>Comment on attachment 333779
Patch

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

Thanks!

&gt;&gt; Source/JavaScriptCore/ftl/FTLLowerDFGToB3.cpp:4768
&gt;&gt; +                m_out.aboveOrEqual(newLength, m_out.load32(storage, m_heaps.Butterfly_vectorLength)), usually(slowCase), usually(popCheckCase));
&gt; 
&gt; You do &apos;usually&apos; twice here. You probably want &apos;rarely(slowCase)&apos;

Right, I&apos;ll change this to `rarely(slowCase)`.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1400647</commentid>
    <comment_count>5</comment_count>
    <who name="Yusuke Suzuki">ysuzuki</who>
    <bug_when>2018-02-19 20:33:39 -0800</bug_when>
    <thetext>Committed r228727: &lt;https://trac.webkit.org/changeset/228727&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1400649</commentid>
    <comment_count>6</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2018-02-19 20:34:25 -0800</bug_when>
    <thetext>&lt;rdar://problem/37696362&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>333778</attachid>
            <date>2018-02-14 03:03:42 -0800</date>
            <delta_ts>2018-02-14 03:08:27 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-182783-20180214200341.patch</filename>
            <type>text/plain</type>
            <size>7546</size>
            <attacher name="Yusuke Suzuki">ysuzuki</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjI4NDU1CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvQ2hhbmdlTG9nIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwppbmRleCA3
NmUxYWNmMmJiZWMyOTM0ZWUyNGNjM2E2YTIzY2M4OTcwM2IzNzZhLi5jMzhkNzUzMWU0YmVmMjhj
YmYwMjczMGVhMjYxNDE5MjQ5NjAxOWUxIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9DaGFuZ2VMb2cKQEAgLTEs
MyArMSwxOCBAQAorMjAxOC0wMi0xNCAgWXVzdWtlIFN1enVraSAgPHV0YXRhbmUudGVhQGdtYWls
LmNvbT4KKworICAgICAgICBbRlRMXSBTdXBwb3J0IEFycmF5UG9wIGZvciBBcnJheVN0b3JhZ2UK
KyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE4Mjc4Mwor
CisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIFRoaXMgcGF0
Y2ggYWRkcyBBcnJheVBvcChBcnJheVN0b3JhZ2UpIHN1cHBvcnQgdG8gRlRMLiBXZSBwb3J0IHRo
ZSBpbXBsZW1lbnRhdGlvbiBpbiBERkcgdG8gRlRMLgorCisgICAgICAgICogZnRsL0ZUTEFic3Ry
YWN0SGVhcFJlcG9zaXRvcnkuaDoKKyAgICAgICAgKiBmdGwvRlRMQ2FwYWJpbGl0aWVzLmNwcDoK
KyAgICAgICAgKEpTQzo6RlRMOjpjYW5Db21waWxlKToKKyAgICAgICAgKiBmdGwvRlRMTG93ZXJE
RkdUb0IzLmNwcDoKKyAgICAgICAgKEpTQzo6RlRMOjpERkc6Okxvd2VyREZHVG9CMzo6Y29tcGls
ZUFycmF5UG9wKToKKwogMjAxOC0wMi0xMyAgU2FhbSBCYXJhdGkgIDxzYmFyYXRpQGFwcGxlLmNv
bT4KIAogICAgICAgICBwdXREaXJlY3RJbmRleFNsb3dPckJleW9uZFZlY3Rvckxlbmd0aCBuZWVk
cyB0byBjb252ZXJ0IHRvIGRpY3Rpb25hcnkgaW5kZXhpbmcgbW9kZSBhbHdheXMgaWYgYXR0cmli
dXRlcyBhcmUgcHJlc2VudApkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL2Z0bC9G
VExBYnN0cmFjdEhlYXBSZXBvc2l0b3J5LmggYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvZnRsL0ZU
TEFic3RyYWN0SGVhcFJlcG9zaXRvcnkuaAppbmRleCAwNzI1MDVlZDIyY2Q2OGIxNjdkYTc1NWZi
ZTg3NWZhMTBlYWFhODdjLi45NzEwMWIyNTJmOGIwNzFjNjgxMTI3OGFkNWUyOGVlZDkyNWY3YjQz
IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvZnRsL0ZUTEFic3RyYWN0SGVhcFJl
cG9zaXRvcnkuaAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvZnRsL0ZUTEFic3RyYWN0SGVh
cFJlcG9zaXRvcnkuaApAQCAtNDUsNiArNDUsNyBAQCBuYW1lc3BhY2UgSlNDIHsgbmFtZXNwYWNl
IEZUTCB7CiAKICNkZWZpbmUgRk9SX0VBQ0hfQUJTVFJBQ1RfRklFTEQobWFjcm8pIFwKICAgICBt
YWNybyhBcnJheUJ1ZmZlcl9kYXRhLCBBcnJheUJ1ZmZlcjo6b2Zmc2V0T2ZEYXRhKCkpIFwKKyAg
ICBtYWNybyhBcnJheVN0b3JhZ2VfbnVtVmFsdWVzSW5WZWN0b3IsIEFycmF5U3RvcmFnZTo6bnVt
VmFsdWVzSW5WZWN0b3JPZmZzZXQoKSkgXAogICAgIG1hY3JvKEJ1dHRlcmZseV9hcnJheUJ1ZmZl
ciwgQnV0dGVyZmx5OjpvZmZzZXRPZkFycmF5QnVmZmVyKCkpIFwKICAgICBtYWNybyhCdXR0ZXJm
bHlfcHVibGljTGVuZ3RoLCBCdXR0ZXJmbHk6Om9mZnNldE9mUHVibGljTGVuZ3RoKCkpIFwKICAg
ICBtYWNybyhCdXR0ZXJmbHlfdmVjdG9yTGVuZ3RoLCBCdXR0ZXJmbHk6Om9mZnNldE9mVmVjdG9y
TGVuZ3RoKCkpIFwKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9mdGwvRlRMQ2Fw
YWJpbGl0aWVzLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9mdGwvRlRMQ2FwYWJpbGl0aWVz
LmNwcAppbmRleCA0OTk1ZTNkMjViNzU2M2VhZTM5N2M3MzIyODA5Yjc2ZTgxNWEwZThkLi42YjZj
MmFiZDdmNWY1MWI2ZDYzOTQxNTAxN2JmY2VjZDI1YWQ4OTIxIDEwMDY0NAotLS0gYS9Tb3VyY2Uv
SmF2YVNjcmlwdENvcmUvZnRsL0ZUTENhcGFiaWxpdGllcy5jcHAKKysrIGIvU291cmNlL0phdmFT
Y3JpcHRDb3JlL2Z0bC9GVExDYXBhYmlsaXRpZXMuY3BwCkBAIC0zMTcsNiArMzE3LDcgQEAgaW5s
aW5lIENhcGFiaWxpdHlMZXZlbCBjYW5Db21waWxlKE5vZGUqIG5vZGUpCiAgICAgY2FzZSBDYWxs
RE9NR2V0dGVyOgogICAgIGNhc2UgQXJyYXlTbGljZToKICAgICBjYXNlIEFycmF5SW5kZXhPZjoK
KyAgICBjYXNlIEFycmF5UG9wOgogICAgIGNhc2UgUGFyc2VJbnQ6CiAgICAgY2FzZSBBdG9taWNz
QWRkOgogICAgIGNhc2UgQXRvbWljc0FuZDoKQEAgLTQ0Niw3ICs0NDcsNiBAQCBpbmxpbmUgQ2Fw
YWJpbGl0eUxldmVsIGNhbkNvbXBpbGUoTm9kZSogbm9kZSkKICAgICBjYXNlIFB1dEJ5VmFsV2l0
aFRoaXM6CiAgICAgICAgIGJyZWFrOwogICAgIGNhc2UgQXJyYXlQdXNoOgotICAgIGNhc2UgQXJy
YXlQb3A6CiAgICAgICAgIHN3aXRjaCAobm9kZS0+YXJyYXlNb2RlKCkudHlwZSgpKSB7CiAgICAg
ICAgIGNhc2UgQXJyYXk6OkludDMyOgogICAgICAgICBjYXNlIEFycmF5OjpDb250aWd1b3VzOgpk
aWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL2Z0bC9GVExMb3dlckRGR1RvQjMuY3Bw
IGIvU291cmNlL0phdmFTY3JpcHRDb3JlL2Z0bC9GVExMb3dlckRGR1RvQjMuY3BwCmluZGV4IGQw
ZjI1Yzc3M2NmNDg5N2IyN2QwNTYxOWVmZmJlMDZjN2QyOTU4MTkuLjYxMTBhZDJhOThjZDJjZjJi
ZDAxOWRhZTFmMTcyNGRmYTUzMDM5YWQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29y
ZS9mdGwvRlRMTG93ZXJERkdUb0IzLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvZnRs
L0ZUTExvd2VyREZHVG9CMy5jcHAKQEAgLTQ3NDgsNiArNDc0OCw0OSBAQCBjbGFzcyBMb3dlckRG
R1RvQjMgewogICAgICAgICAgICAgcmV0dXJuOwogICAgICAgICB9CiAKKyAgICAgICAgY2FzZSBB
cnJheTo6QXJyYXlTdG9yYWdlOiB7CisgICAgICAgICAgICBMQmFzaWNCbG9jayB2ZWN0b3JMZW5n
dGhDaGVja0Nhc2UgPSBtX291dC5uZXdCbG9jaygpOworICAgICAgICAgICAgTEJhc2ljQmxvY2sg
cG9wQ2hlY2tDYXNlID0gbV9vdXQubmV3QmxvY2soKTsKKyAgICAgICAgICAgIExCYXNpY0Jsb2Nr
IGZhc3RDYXNlID0gbV9vdXQubmV3QmxvY2soKTsKKyAgICAgICAgICAgIExCYXNpY0Jsb2NrIHNs
b3dDYXNlID0gbV9vdXQubmV3QmxvY2soKTsKKyAgICAgICAgICAgIExCYXNpY0Jsb2NrIGNvbnRp
bnVhdGlvbiA9IG1fb3V0Lm5ld0Jsb2NrKCk7CisKKyAgICAgICAgICAgIExWYWx1ZSBwcmV2TGVu
Z3RoID0gbV9vdXQubG9hZDMyKHN0b3JhZ2UsIG1faGVhcHMuQnV0dGVyZmx5X3B1YmxpY0xlbmd0
aCk7CisKKyAgICAgICAgICAgIFZlY3RvcjxWYWx1ZUZyb21CbG9jaywgMz4gcmVzdWx0czsKKyAg
ICAgICAgICAgIHJlc3VsdHMuYXBwZW5kKG1fb3V0LmFuY2hvcihtX291dC5jb25zdEludDY0KEpT
VmFsdWU6OmVuY29kZShqc1VuZGVmaW5lZCgpKSkpKTsKKyAgICAgICAgICAgIG1fb3V0LmJyYW5j
aCgKKyAgICAgICAgICAgICAgICBtX291dC5pc1plcm8zMihwcmV2TGVuZ3RoKSwgcmFyZWx5KGNv
bnRpbnVhdGlvbiksIHVzdWFsbHkodmVjdG9yTGVuZ3RoQ2hlY2tDYXNlKSk7CisKKyAgICAgICAg
ICAgIExCYXNpY0Jsb2NrIGxhc3ROZXh0ID0gbV9vdXQuYXBwZW5kVG8odmVjdG9yTGVuZ3RoQ2hl
Y2tDYXNlLCBwb3BDaGVja0Nhc2UpOworICAgICAgICAgICAgTFZhbHVlIG5ld0xlbmd0aCA9IG1f
b3V0LnN1YihwcmV2TGVuZ3RoLCBtX291dC5pbnQzMk9uZSk7CisgICAgICAgICAgICBtX291dC5i
cmFuY2goCisgICAgICAgICAgICAgICAgbV9vdXQuYWJvdmVPckVxdWFsKG5ld0xlbmd0aCwgbV9v
dXQubG9hZDMyKHN0b3JhZ2UsIG1faGVhcHMuQnV0dGVyZmx5X3ZlY3Rvckxlbmd0aCkpLCB1c3Vh
bGx5KHNsb3dDYXNlKSwgdXN1YWxseShwb3BDaGVja0Nhc2UpKTsKKworICAgICAgICAgICAgbV9v
dXQuYXBwZW5kVG8ocG9wQ2hlY2tDYXNlLCBmYXN0Q2FzZSk7CisgICAgICAgICAgICBUeXBlZFBv
aW50ZXIgcG9pbnRlciA9IG1fb3V0LmJhc2VJbmRleChtX2hlYXBzLkFycmF5U3RvcmFnZV92ZWN0
b3IsIHN0b3JhZ2UsIG1fb3V0Lnplcm9FeHRQdHIobmV3TGVuZ3RoKSk7CisgICAgICAgICAgICBM
VmFsdWUgcmVzdWx0ID0gbV9vdXQubG9hZDY0KHBvaW50ZXIpOworICAgICAgICAgICAgbV9vdXQu
YnJhbmNoKG1fb3V0Lm5vdFplcm82NChyZXN1bHQpLCB1c3VhbGx5KGZhc3RDYXNlKSwgcmFyZWx5
KHNsb3dDYXNlKSk7CisKKyAgICAgICAgICAgIG1fb3V0LmFwcGVuZFRvKGZhc3RDYXNlLCBzbG93
Q2FzZSk7CisgICAgICAgICAgICBtX291dC5zdG9yZTMyKG5ld0xlbmd0aCwgc3RvcmFnZSwgbV9o
ZWFwcy5CdXR0ZXJmbHlfcHVibGljTGVuZ3RoKTsKKyAgICAgICAgICAgIG1fb3V0LnN0b3JlNjQo
bV9vdXQuaW50NjRaZXJvLCBwb2ludGVyKTsKKyAgICAgICAgICAgIG1fb3V0LnN0b3JlMzIoCisg
ICAgICAgICAgICAgICAgbV9vdXQuc3ViKG1fb3V0LmxvYWQzMihzdG9yYWdlLCBtX2hlYXBzLkFy
cmF5U3RvcmFnZV9udW1WYWx1ZXNJblZlY3RvciksIG1fb3V0LmludDMyT25lKSwKKyAgICAgICAg
ICAgICAgICBzdG9yYWdlLCBtX2hlYXBzLkFycmF5U3RvcmFnZV9udW1WYWx1ZXNJblZlY3Rvcik7
CisgICAgICAgICAgICByZXN1bHRzLmFwcGVuZChtX291dC5hbmNob3IocmVzdWx0KSk7CisgICAg
ICAgICAgICBtX291dC5qdW1wKGNvbnRpbnVhdGlvbik7CisKKyAgICAgICAgICAgIG1fb3V0LmFw
cGVuZFRvKHNsb3dDYXNlLCBjb250aW51YXRpb24pOworICAgICAgICAgICAgcmVzdWx0cy5hcHBl
bmQobV9vdXQuYW5jaG9yKHZtQ2FsbCgKKyAgICAgICAgICAgICAgICBJbnQ2NCwgbV9vdXQub3Bl
cmF0aW9uKG9wZXJhdGlvbkFycmF5UG9wKSwgbV9jYWxsRnJhbWUsIGJhc2UpKSk7CisgICAgICAg
ICAgICBtX291dC5qdW1wKGNvbnRpbnVhdGlvbik7CisKKyAgICAgICAgICAgIG1fb3V0LmFwcGVu
ZFRvKGNvbnRpbnVhdGlvbiwgbGFzdE5leHQpOworICAgICAgICAgICAgc2V0SlNWYWx1ZShtX291
dC5waGkoSW50NjQsIHJlc3VsdHMpKTsKKyAgICAgICAgICAgIHJldHVybjsKKyAgICAgICAgfQor
CiAgICAgICAgIGRlZmF1bHQ6CiAgICAgICAgICAgICBERkdfQ1JBU0gobV9ncmFwaCwgbV9ub2Rl
LCAiQmFkIGFycmF5IHR5cGUiKTsKICAgICAgICAgICAgIHJldHVybjsKZGlmZiAtLWdpdCBhL0pT
VGVzdHMvQ2hhbmdlTG9nIGIvSlNUZXN0cy9DaGFuZ2VMb2cKaW5kZXggM2U3NmJlNzRiNGY5YzNh
Y2NiMDhkOThhMjExYTM2YWJkMTU3YWY5Ny4uYWRiY2QwNWRlMzAxZDg0YzRlMGZlZjM3MDhkZWUy
ZWM1N2JiMzdlYiAxMDA2NDQKLS0tIGEvSlNUZXN0cy9DaGFuZ2VMb2cKKysrIGIvSlNUZXN0cy9D
aGFuZ2VMb2cKQEAgLTEsMyArMSwxNCBAQAorMjAxOC0wMi0xNCAgWXVzdWtlIFN1enVraSAgPHV0
YXRhbmUudGVhQGdtYWlsLmNvbT4KKworICAgICAgICBbRlRMXSBTdXBwb3J0IEFycmF5UG9wIGZv
ciBBcnJheVN0b3JhZ2UKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcu
Y2dpP2lkPTE4Mjc4MworCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisg
ICAgICAgICogc3RyZXNzL2FycmF5LXBvcC1hcnJheS1zdG9yYWdlLmpzOiBBZGRlZC4KKyAgICAg
ICAgKHNob3VsZEJlKToKKyAgICAgICAgKHRlc3QpOgorCiAyMDE4LTAyLTEzICBTYWFtIEJhcmF0
aSAgPHNiYXJhdGlAYXBwbGUuY29tPgogCiAgICAgICAgIHB1dERpcmVjdEluZGV4U2xvd09yQmV5
b25kVmVjdG9yTGVuZ3RoIG5lZWRzIHRvIGNvbnZlcnQgdG8gZGljdGlvbmFyeSBpbmRleGluZyBt
b2RlIGFsd2F5cyBpZiBhdHRyaWJ1dGVzIGFyZSBwcmVzZW50CmRpZmYgLS1naXQgYS9KU1Rlc3Rz
L3N0cmVzcy9hcnJheS1wb3AtYXJyYXktc3RvcmFnZS5qcyBiL0pTVGVzdHMvc3RyZXNzL2FycmF5
LXBvcC1hcnJheS1zdG9yYWdlLmpzCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjA0MDU2YjY5N2M4MDRhODRmZDIxYjEw
OWJmYjY5NTJkZTdkZjJkMjcKLS0tIC9kZXYvbnVsbAorKysgYi9KU1Rlc3RzL3N0cmVzcy9hcnJh
eS1wb3AtYXJyYXktc3RvcmFnZS5qcwpAQCAtMCwwICsxLDQ5IEBACitmdW5jdGlvbiBzaG91bGRC
ZShhY3R1YWwsIGV4cGVjdGVkKSB7CisgICAgaWYgKGFjdHVhbCAhPT0gZXhwZWN0ZWQpCisgICAg
ICAgIHRocm93IG5ldyBFcnJvcignYmFkIHZhbHVlOiAnICsgYWN0dWFsKTsKK30KKworZnVuY3Rp
b24gdGVzdChhcnJheSkgeworICAgIHJldHVybiBbYXJyYXkucG9wKCksIGFycmF5LnBvcCgpLCBh
cnJheS5wb3AoKSwgYXJyYXkucG9wKCldOworfQorCitub0lubGluZSh0ZXN0KTsKKworZm9yICh2
YXIgaSA9IDA7IGkgPCAxZTQ7ICsraSkgeworICAgIHZhciBhcnJheSA9IFsiZm9vIiwgImJhciIs
ICJiYXoiXTsKKyAgICBlbnN1cmVBcnJheVN0b3JhZ2UoYXJyYXkpOworICAgIHZhciByZXN1bHQg
PSB0ZXN0KGFycmF5KTsKKyAgICBzaG91bGRCZShyZXN1bHRbMF0sICJiYXoiKTsKKyAgICBzaG91
bGRCZShyZXN1bHRbMV0sICJiYXIiKTsKKyAgICBzaG91bGRCZShyZXN1bHRbMl0sICJmb28iKTsK
KyAgICBzaG91bGRCZShyZXN1bHRbM10sIHVuZGVmaW5lZCk7CisgICAgc2hvdWxkQmUoYXJyYXku
bGVuZ3RoLCAwKTsKK30KKworZm9yICh2YXIgaSA9IDA7IGkgPCAxZTQ7ICsraSkgeworICAgIHZh
ciBhcnJheSA9IFsiZm9vIiwgImJhciIsICwgImJheiJdOworICAgIGVuc3VyZUFycmF5U3RvcmFn
ZShhcnJheSk7CisgICAgdmFyIHJlc3VsdCA9IHRlc3QoYXJyYXkpOworICAgIHNob3VsZEJlKHJl
c3VsdFswXSwgImJheiIpOworICAgIHNob3VsZEJlKHJlc3VsdFsxXSwgdW5kZWZpbmVkKTsKKyAg
ICBzaG91bGRCZShyZXN1bHRbMl0sICJiYXIiKTsKKyAgICBzaG91bGRCZShyZXN1bHRbM10sICJm
b28iKTsKKyAgICBzaG91bGRCZShhcnJheS5sZW5ndGgsIDApOworfQorCitmb3IgKHZhciBpID0g
MDsgaSA8IDFlNDsgKytpKSB7CisgICAgdmFyIGFycmF5ID0gWyJmb28iLCAiYmFyIiwgLCAiYmF6
IiwgLCAsICJPSyJdOworICAgIGVuc3VyZUFycmF5U3RvcmFnZShhcnJheSk7CisgICAgc2hvdWxk
QmUoYXJyYXkubGVuZ3RoLCA3KTsKKyAgICB2YXIgcmVzdWx0ID0gdGVzdChhcnJheSk7CisgICAg
c2hvdWxkQmUocmVzdWx0WzBdLCAiT0siKTsKKyAgICBzaG91bGRCZShyZXN1bHRbMV0sIHVuZGVm
aW5lZCk7CisgICAgc2hvdWxkQmUocmVzdWx0WzJdLCB1bmRlZmluZWQpOworICAgIHNob3VsZEJl
KHJlc3VsdFszXSwgImJheiIpOworICAgIHNob3VsZEJlKGFycmF5Lmxlbmd0aCwgMyk7CisgICAg
c2hvdWxkQmUoYXJyYXlbMF0sICJmb28iKTsKKyAgICBzaG91bGRCZShhcnJheVsxXSwgImJhciIp
OworICAgIHNob3VsZEJlKGFycmF5WzJdLCB1bmRlZmluZWQpOworICAgIHNob3VsZEJlKGFycmF5
WzNdLCB1bmRlZmluZWQpOworCit9Cg==
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>333779</attachid>
            <date>2018-02-14 03:08:29 -0800</date>
            <delta_ts>2018-02-19 18:55:53 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-182783-20180214200828.patch</filename>
            <type>text/plain</type>
            <size>8091</size>
            <attacher name="Yusuke Suzuki">ysuzuki</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjI4NDU1CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvQ2hhbmdlTG9nIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwppbmRleCA3
NmUxYWNmMmJiZWMyOTM0ZWUyNGNjM2E2YTIzY2M4OTcwM2IzNzZhLi5jMzhkNzUzMWU0YmVmMjhj
YmYwMjczMGVhMjYxNDE5MjQ5NjAxOWUxIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9DaGFuZ2VMb2cKQEAgLTEs
MyArMSwxOCBAQAorMjAxOC0wMi0xNCAgWXVzdWtlIFN1enVraSAgPHV0YXRhbmUudGVhQGdtYWls
LmNvbT4KKworICAgICAgICBbRlRMXSBTdXBwb3J0IEFycmF5UG9wIGZvciBBcnJheVN0b3JhZ2UK
KyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE4Mjc4Mwor
CisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIFRoaXMgcGF0
Y2ggYWRkcyBBcnJheVBvcChBcnJheVN0b3JhZ2UpIHN1cHBvcnQgdG8gRlRMLiBXZSBwb3J0IHRo
ZSBpbXBsZW1lbnRhdGlvbiBpbiBERkcgdG8gRlRMLgorCisgICAgICAgICogZnRsL0ZUTEFic3Ry
YWN0SGVhcFJlcG9zaXRvcnkuaDoKKyAgICAgICAgKiBmdGwvRlRMQ2FwYWJpbGl0aWVzLmNwcDoK
KyAgICAgICAgKEpTQzo6RlRMOjpjYW5Db21waWxlKToKKyAgICAgICAgKiBmdGwvRlRMTG93ZXJE
RkdUb0IzLmNwcDoKKyAgICAgICAgKEpTQzo6RlRMOjpERkc6Okxvd2VyREZHVG9CMzo6Y29tcGls
ZUFycmF5UG9wKToKKwogMjAxOC0wMi0xMyAgU2FhbSBCYXJhdGkgIDxzYmFyYXRpQGFwcGxlLmNv
bT4KIAogICAgICAgICBwdXREaXJlY3RJbmRleFNsb3dPckJleW9uZFZlY3Rvckxlbmd0aCBuZWVk
cyB0byBjb252ZXJ0IHRvIGRpY3Rpb25hcnkgaW5kZXhpbmcgbW9kZSBhbHdheXMgaWYgYXR0cmli
dXRlcyBhcmUgcHJlc2VudApkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL2Z0bC9G
VExBYnN0cmFjdEhlYXBSZXBvc2l0b3J5LmggYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvZnRsL0ZU
TEFic3RyYWN0SGVhcFJlcG9zaXRvcnkuaAppbmRleCAwNzI1MDVlZDIyY2Q2OGIxNjdkYTc1NWZi
ZTg3NWZhMTBlYWFhODdjLi45NzEwMWIyNTJmOGIwNzFjNjgxMTI3OGFkNWUyOGVlZDkyNWY3YjQz
IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvZnRsL0ZUTEFic3RyYWN0SGVhcFJl
cG9zaXRvcnkuaAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvZnRsL0ZUTEFic3RyYWN0SGVh
cFJlcG9zaXRvcnkuaApAQCAtNDUsNiArNDUsNyBAQCBuYW1lc3BhY2UgSlNDIHsgbmFtZXNwYWNl
IEZUTCB7CiAKICNkZWZpbmUgRk9SX0VBQ0hfQUJTVFJBQ1RfRklFTEQobWFjcm8pIFwKICAgICBt
YWNybyhBcnJheUJ1ZmZlcl9kYXRhLCBBcnJheUJ1ZmZlcjo6b2Zmc2V0T2ZEYXRhKCkpIFwKKyAg
ICBtYWNybyhBcnJheVN0b3JhZ2VfbnVtVmFsdWVzSW5WZWN0b3IsIEFycmF5U3RvcmFnZTo6bnVt
VmFsdWVzSW5WZWN0b3JPZmZzZXQoKSkgXAogICAgIG1hY3JvKEJ1dHRlcmZseV9hcnJheUJ1ZmZl
ciwgQnV0dGVyZmx5OjpvZmZzZXRPZkFycmF5QnVmZmVyKCkpIFwKICAgICBtYWNybyhCdXR0ZXJm
bHlfcHVibGljTGVuZ3RoLCBCdXR0ZXJmbHk6Om9mZnNldE9mUHVibGljTGVuZ3RoKCkpIFwKICAg
ICBtYWNybyhCdXR0ZXJmbHlfdmVjdG9yTGVuZ3RoLCBCdXR0ZXJmbHk6Om9mZnNldE9mVmVjdG9y
TGVuZ3RoKCkpIFwKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9mdGwvRlRMQ2Fw
YWJpbGl0aWVzLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9mdGwvRlRMQ2FwYWJpbGl0aWVz
LmNwcAppbmRleCA0OTk1ZTNkMjViNzU2M2VhZTM5N2M3MzIyODA5Yjc2ZTgxNWEwZThkLi42YjZj
MmFiZDdmNWY1MWI2ZDYzOTQxNTAxN2JmY2VjZDI1YWQ4OTIxIDEwMDY0NAotLS0gYS9Tb3VyY2Uv
SmF2YVNjcmlwdENvcmUvZnRsL0ZUTENhcGFiaWxpdGllcy5jcHAKKysrIGIvU291cmNlL0phdmFT
Y3JpcHRDb3JlL2Z0bC9GVExDYXBhYmlsaXRpZXMuY3BwCkBAIC0zMTcsNiArMzE3LDcgQEAgaW5s
aW5lIENhcGFiaWxpdHlMZXZlbCBjYW5Db21waWxlKE5vZGUqIG5vZGUpCiAgICAgY2FzZSBDYWxs
RE9NR2V0dGVyOgogICAgIGNhc2UgQXJyYXlTbGljZToKICAgICBjYXNlIEFycmF5SW5kZXhPZjoK
KyAgICBjYXNlIEFycmF5UG9wOgogICAgIGNhc2UgUGFyc2VJbnQ6CiAgICAgY2FzZSBBdG9taWNz
QWRkOgogICAgIGNhc2UgQXRvbWljc0FuZDoKQEAgLTQ0Niw3ICs0NDcsNiBAQCBpbmxpbmUgQ2Fw
YWJpbGl0eUxldmVsIGNhbkNvbXBpbGUoTm9kZSogbm9kZSkKICAgICBjYXNlIFB1dEJ5VmFsV2l0
aFRoaXM6CiAgICAgICAgIGJyZWFrOwogICAgIGNhc2UgQXJyYXlQdXNoOgotICAgIGNhc2UgQXJy
YXlQb3A6CiAgICAgICAgIHN3aXRjaCAobm9kZS0+YXJyYXlNb2RlKCkudHlwZSgpKSB7CiAgICAg
ICAgIGNhc2UgQXJyYXk6OkludDMyOgogICAgICAgICBjYXNlIEFycmF5OjpDb250aWd1b3VzOgpk
aWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL2Z0bC9GVExMb3dlckRGR1RvQjMuY3Bw
IGIvU291cmNlL0phdmFTY3JpcHRDb3JlL2Z0bC9GVExMb3dlckRGR1RvQjMuY3BwCmluZGV4IGQw
ZjI1Yzc3M2NmNDg5N2IyN2QwNTYxOWVmZmJlMDZjN2QyOTU4MTkuLjYxMTBhZDJhOThjZDJjZjJi
ZDAxOWRhZTFmMTcyNGRmYTUzMDM5YWQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29y
ZS9mdGwvRlRMTG93ZXJERkdUb0IzLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvZnRs
L0ZUTExvd2VyREZHVG9CMy5jcHAKQEAgLTQ3NDgsNiArNDc0OCw0OSBAQCBjbGFzcyBMb3dlckRG
R1RvQjMgewogICAgICAgICAgICAgcmV0dXJuOwogICAgICAgICB9CiAKKyAgICAgICAgY2FzZSBB
cnJheTo6QXJyYXlTdG9yYWdlOiB7CisgICAgICAgICAgICBMQmFzaWNCbG9jayB2ZWN0b3JMZW5n
dGhDaGVja0Nhc2UgPSBtX291dC5uZXdCbG9jaygpOworICAgICAgICAgICAgTEJhc2ljQmxvY2sg
cG9wQ2hlY2tDYXNlID0gbV9vdXQubmV3QmxvY2soKTsKKyAgICAgICAgICAgIExCYXNpY0Jsb2Nr
IGZhc3RDYXNlID0gbV9vdXQubmV3QmxvY2soKTsKKyAgICAgICAgICAgIExCYXNpY0Jsb2NrIHNs
b3dDYXNlID0gbV9vdXQubmV3QmxvY2soKTsKKyAgICAgICAgICAgIExCYXNpY0Jsb2NrIGNvbnRp
bnVhdGlvbiA9IG1fb3V0Lm5ld0Jsb2NrKCk7CisKKyAgICAgICAgICAgIExWYWx1ZSBwcmV2TGVu
Z3RoID0gbV9vdXQubG9hZDMyKHN0b3JhZ2UsIG1faGVhcHMuQnV0dGVyZmx5X3B1YmxpY0xlbmd0
aCk7CisKKyAgICAgICAgICAgIFZlY3RvcjxWYWx1ZUZyb21CbG9jaywgMz4gcmVzdWx0czsKKyAg
ICAgICAgICAgIHJlc3VsdHMuYXBwZW5kKG1fb3V0LmFuY2hvcihtX291dC5jb25zdEludDY0KEpT
VmFsdWU6OmVuY29kZShqc1VuZGVmaW5lZCgpKSkpKTsKKyAgICAgICAgICAgIG1fb3V0LmJyYW5j
aCgKKyAgICAgICAgICAgICAgICBtX291dC5pc1plcm8zMihwcmV2TGVuZ3RoKSwgcmFyZWx5KGNv
bnRpbnVhdGlvbiksIHVzdWFsbHkodmVjdG9yTGVuZ3RoQ2hlY2tDYXNlKSk7CisKKyAgICAgICAg
ICAgIExCYXNpY0Jsb2NrIGxhc3ROZXh0ID0gbV9vdXQuYXBwZW5kVG8odmVjdG9yTGVuZ3RoQ2hl
Y2tDYXNlLCBwb3BDaGVja0Nhc2UpOworICAgICAgICAgICAgTFZhbHVlIG5ld0xlbmd0aCA9IG1f
b3V0LnN1YihwcmV2TGVuZ3RoLCBtX291dC5pbnQzMk9uZSk7CisgICAgICAgICAgICBtX291dC5i
cmFuY2goCisgICAgICAgICAgICAgICAgbV9vdXQuYWJvdmVPckVxdWFsKG5ld0xlbmd0aCwgbV9v
dXQubG9hZDMyKHN0b3JhZ2UsIG1faGVhcHMuQnV0dGVyZmx5X3ZlY3Rvckxlbmd0aCkpLCB1c3Vh
bGx5KHNsb3dDYXNlKSwgdXN1YWxseShwb3BDaGVja0Nhc2UpKTsKKworICAgICAgICAgICAgbV9v
dXQuYXBwZW5kVG8ocG9wQ2hlY2tDYXNlLCBmYXN0Q2FzZSk7CisgICAgICAgICAgICBUeXBlZFBv
aW50ZXIgcG9pbnRlciA9IG1fb3V0LmJhc2VJbmRleChtX2hlYXBzLkFycmF5U3RvcmFnZV92ZWN0
b3IsIHN0b3JhZ2UsIG1fb3V0Lnplcm9FeHRQdHIobmV3TGVuZ3RoKSk7CisgICAgICAgICAgICBM
VmFsdWUgcmVzdWx0ID0gbV9vdXQubG9hZDY0KHBvaW50ZXIpOworICAgICAgICAgICAgbV9vdXQu
YnJhbmNoKG1fb3V0Lm5vdFplcm82NChyZXN1bHQpLCB1c3VhbGx5KGZhc3RDYXNlKSwgcmFyZWx5
KHNsb3dDYXNlKSk7CisKKyAgICAgICAgICAgIG1fb3V0LmFwcGVuZFRvKGZhc3RDYXNlLCBzbG93
Q2FzZSk7CisgICAgICAgICAgICBtX291dC5zdG9yZTMyKG5ld0xlbmd0aCwgc3RvcmFnZSwgbV9o
ZWFwcy5CdXR0ZXJmbHlfcHVibGljTGVuZ3RoKTsKKyAgICAgICAgICAgIG1fb3V0LnN0b3JlNjQo
bV9vdXQuaW50NjRaZXJvLCBwb2ludGVyKTsKKyAgICAgICAgICAgIG1fb3V0LnN0b3JlMzIoCisg
ICAgICAgICAgICAgICAgbV9vdXQuc3ViKG1fb3V0LmxvYWQzMihzdG9yYWdlLCBtX2hlYXBzLkFy
cmF5U3RvcmFnZV9udW1WYWx1ZXNJblZlY3RvciksIG1fb3V0LmludDMyT25lKSwKKyAgICAgICAg
ICAgICAgICBzdG9yYWdlLCBtX2hlYXBzLkFycmF5U3RvcmFnZV9udW1WYWx1ZXNJblZlY3Rvcik7
CisgICAgICAgICAgICByZXN1bHRzLmFwcGVuZChtX291dC5hbmNob3IocmVzdWx0KSk7CisgICAg
ICAgICAgICBtX291dC5qdW1wKGNvbnRpbnVhdGlvbik7CisKKyAgICAgICAgICAgIG1fb3V0LmFw
cGVuZFRvKHNsb3dDYXNlLCBjb250aW51YXRpb24pOworICAgICAgICAgICAgcmVzdWx0cy5hcHBl
bmQobV9vdXQuYW5jaG9yKHZtQ2FsbCgKKyAgICAgICAgICAgICAgICBJbnQ2NCwgbV9vdXQub3Bl
cmF0aW9uKG9wZXJhdGlvbkFycmF5UG9wKSwgbV9jYWxsRnJhbWUsIGJhc2UpKSk7CisgICAgICAg
ICAgICBtX291dC5qdW1wKGNvbnRpbnVhdGlvbik7CisKKyAgICAgICAgICAgIG1fb3V0LmFwcGVu
ZFRvKGNvbnRpbnVhdGlvbiwgbGFzdE5leHQpOworICAgICAgICAgICAgc2V0SlNWYWx1ZShtX291
dC5waGkoSW50NjQsIHJlc3VsdHMpKTsKKyAgICAgICAgICAgIHJldHVybjsKKyAgICAgICAgfQor
CiAgICAgICAgIGRlZmF1bHQ6CiAgICAgICAgICAgICBERkdfQ1JBU0gobV9ncmFwaCwgbV9ub2Rl
LCAiQmFkIGFycmF5IHR5cGUiKTsKICAgICAgICAgICAgIHJldHVybjsKZGlmZiAtLWdpdCBhL0pT
VGVzdHMvQ2hhbmdlTG9nIGIvSlNUZXN0cy9DaGFuZ2VMb2cKaW5kZXggM2U3NmJlNzRiNGY5YzNh
Y2NiMDhkOThhMjExYTM2YWJkMTU3YWY5Ny4uYWRiY2QwNWRlMzAxZDg0YzRlMGZlZjM3MDhkZWUy
ZWM1N2JiMzdlYiAxMDA2NDQKLS0tIGEvSlNUZXN0cy9DaGFuZ2VMb2cKKysrIGIvSlNUZXN0cy9D
aGFuZ2VMb2cKQEAgLTEsMyArMSwxNCBAQAorMjAxOC0wMi0xNCAgWXVzdWtlIFN1enVraSAgPHV0
YXRhbmUudGVhQGdtYWlsLmNvbT4KKworICAgICAgICBbRlRMXSBTdXBwb3J0IEFycmF5UG9wIGZv
ciBBcnJheVN0b3JhZ2UKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcu
Y2dpP2lkPTE4Mjc4MworCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisg
ICAgICAgICogc3RyZXNzL2FycmF5LXBvcC1hcnJheS1zdG9yYWdlLmpzOiBBZGRlZC4KKyAgICAg
ICAgKHNob3VsZEJlKToKKyAgICAgICAgKHRlc3QpOgorCiAyMDE4LTAyLTEzICBTYWFtIEJhcmF0
aSAgPHNiYXJhdGlAYXBwbGUuY29tPgogCiAgICAgICAgIHB1dERpcmVjdEluZGV4U2xvd09yQmV5
b25kVmVjdG9yTGVuZ3RoIG5lZWRzIHRvIGNvbnZlcnQgdG8gZGljdGlvbmFyeSBpbmRleGluZyBt
b2RlIGFsd2F5cyBpZiBhdHRyaWJ1dGVzIGFyZSBwcmVzZW50CmRpZmYgLS1naXQgYS9KU1Rlc3Rz
L3N0cmVzcy9hcnJheS1wb3AtYXJyYXktc3RvcmFnZS5qcyBiL0pTVGVzdHMvc3RyZXNzL2FycmF5
LXBvcC1hcnJheS1zdG9yYWdlLmpzCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmNiMzU2YmMyMjY1ODk5YzZiMjZjZTI4
YTk4YjQ0Zjc4MjEyZWVlMjkKLS0tIC9kZXYvbnVsbAorKysgYi9KU1Rlc3RzL3N0cmVzcy9hcnJh
eS1wb3AtYXJyYXktc3RvcmFnZS5qcwpAQCAtMCwwICsxLDY1IEBACitmdW5jdGlvbiBzaG91bGRC
ZShhY3R1YWwsIGV4cGVjdGVkKSB7CisgICAgaWYgKGFjdHVhbCAhPT0gZXhwZWN0ZWQpCisgICAg
ICAgIHRocm93IG5ldyBFcnJvcignYmFkIHZhbHVlOiAnICsgYWN0dWFsKTsKK30KKworZnVuY3Rp
b24gdGVzdChhcnJheSkgeworICAgIHJldHVybiBbYXJyYXkucG9wKCksIGFycmF5LnBvcCgpLCBh
cnJheS5wb3AoKSwgYXJyYXkucG9wKCldOworfQorCitub0lubGluZSh0ZXN0KTsKKworZm9yICh2
YXIgaSA9IDA7IGkgPCAxZTQ7ICsraSkgeworICAgIHZhciBhcnJheSA9IFsiZm9vIiwgImJhciIs
ICJiYXoiXTsKKyAgICBlbnN1cmVBcnJheVN0b3JhZ2UoYXJyYXkpOworICAgIHZhciByZXN1bHQg
PSB0ZXN0KGFycmF5KTsKKyAgICBzaG91bGRCZShyZXN1bHRbMF0sICJiYXoiKTsKKyAgICBzaG91
bGRCZShyZXN1bHRbMV0sICJiYXIiKTsKKyAgICBzaG91bGRCZShyZXN1bHRbMl0sICJmb28iKTsK
KyAgICBzaG91bGRCZShyZXN1bHRbM10sIHVuZGVmaW5lZCk7CisgICAgc2hvdWxkQmUoYXJyYXku
bGVuZ3RoLCAwKTsKK30KKworZm9yICh2YXIgaSA9IDA7IGkgPCAxZTQ7ICsraSkgeworICAgIHZh
ciBhcnJheSA9IFsiZm9vIiwgImJhciIsICwgImJheiJdOworICAgIGVuc3VyZUFycmF5U3RvcmFn
ZShhcnJheSk7CisgICAgdmFyIHJlc3VsdCA9IHRlc3QoYXJyYXkpOworICAgIHNob3VsZEJlKHJl
c3VsdFswXSwgImJheiIpOworICAgIHNob3VsZEJlKHJlc3VsdFsxXSwgdW5kZWZpbmVkKTsKKyAg
ICBzaG91bGRCZShyZXN1bHRbMl0sICJiYXIiKTsKKyAgICBzaG91bGRCZShyZXN1bHRbM10sICJm
b28iKTsKKyAgICBzaG91bGRCZShhcnJheS5sZW5ndGgsIDApOworfQorCitmb3IgKHZhciBpID0g
MDsgaSA8IDFlNDsgKytpKSB7CisgICAgdmFyIGFycmF5ID0gWyJmb28iLCAiYmFyIiwgLCAiYmF6
IiwgLCAsICJPSyJdOworICAgIGVuc3VyZUFycmF5U3RvcmFnZShhcnJheSk7CisgICAgc2hvdWxk
QmUoYXJyYXkubGVuZ3RoLCA3KTsKKyAgICB2YXIgcmVzdWx0ID0gdGVzdChhcnJheSk7CisgICAg
c2hvdWxkQmUocmVzdWx0WzBdLCAiT0siKTsKKyAgICBzaG91bGRCZShyZXN1bHRbMV0sIHVuZGVm
aW5lZCk7CisgICAgc2hvdWxkQmUocmVzdWx0WzJdLCB1bmRlZmluZWQpOworICAgIHNob3VsZEJl
KHJlc3VsdFszXSwgImJheiIpOworICAgIHNob3VsZEJlKGFycmF5Lmxlbmd0aCwgMyk7CisgICAg
c2hvdWxkQmUoYXJyYXlbMF0sICJmb28iKTsKKyAgICBzaG91bGRCZShhcnJheVsxXSwgImJhciIp
OworICAgIHNob3VsZEJlKGFycmF5WzJdLCB1bmRlZmluZWQpOworICAgIHNob3VsZEJlKGFycmF5
WzNdLCB1bmRlZmluZWQpOworfQorCitmb3IgKHZhciBpID0gMDsgaSA8IDFlNDsgKytpKSB7Cisg
ICAgdmFyIGFycmF5ID0gWyJmb28iLCAiYmFyIiwgImJheiJdOworICAgIGVuc3VyZUFycmF5U3Rv
cmFnZShhcnJheSk7CisgICAgYXJyYXkubGVuZ3RoID0gMHhmZmZmZmZmZiAtIDE7CisgICAgc2hv
dWxkQmUoYXJyYXkubGVuZ3RoLCAweGZmZmZmZmZmIC0gMSk7CisgICAgdmFyIHJlc3VsdCA9IHRl
c3QoYXJyYXkpOworICAgIHNob3VsZEJlKHJlc3VsdFswXSwgdW5kZWZpbmVkKTsKKyAgICBzaG91
bGRCZShyZXN1bHRbMV0sIHVuZGVmaW5lZCk7CisgICAgc2hvdWxkQmUocmVzdWx0WzJdLCB1bmRl
ZmluZWQpOworICAgIHNob3VsZEJlKHJlc3VsdFszXSwgdW5kZWZpbmVkKTsKKyAgICBzaG91bGRC
ZShhcnJheS5sZW5ndGgsIDB4ZmZmZmZmZmYgLSA1KTsKKyAgICBzaG91bGRCZShhcnJheVswXSwg
ImZvbyIpOworICAgIHNob3VsZEJlKGFycmF5WzFdLCAiYmFyIik7CisgICAgc2hvdWxkQmUoYXJy
YXlbMl0sICJiYXoiKTsKKyAgICBzaG91bGRCZShhcnJheVszXSwgdW5kZWZpbmVkKTsKK30K
</data>
<flag name="review"
          id="352638"
          type_id="1"
          status="+"
          setter="saam"
    />
          </attachment>
      

    </bug>

</bugzilla>