<?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>186721</bug_id>
          
          <creation_ts>2018-06-16 08:17:36 -0700</creation_ts>
          <short_desc>[DFG] Reduce OSRExit for Kraken/crypto-aes due to CoW array</short_desc>
          <delta_ts>2018-06-20 06:40:10 -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>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>guijemont</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>1433708</commentid>
    <comment_count>0</comment_count>
    <who name="Yusuke Suzuki">ysuzuki</who>
    <bug_when>2018-06-16 08:17:36 -0700</bug_when>
    <thetext>[DFG] Reduce OSRExit for Kraken/crypto-aes due to CoW array</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1433709</commentid>
    <comment_count>1</comment_count>
      <attachid>342879</attachid>
    <who name="Yusuke Suzuki">ysuzuki</who>
    <bug_when>2018-06-16 08:22:37 -0700</bug_when>
    <thetext>Created attachment 342879
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1433711</commentid>
    <comment_count>2</comment_count>
      <attachid>342880</attachid>
    <who name="Yusuke Suzuki">ysuzuki</who>
    <bug_when>2018-06-16 08:43:15 -0700</bug_when>
    <thetext>Created attachment 342880
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1433717</commentid>
    <comment_count>3</comment_count>
      <attachid>342880</attachid>
    <who name="Keith Miller">keith_miller</who>
    <bug_when>2018-06-16 09:29:35 -0700</bug_when>
    <thetext>Comment on attachment 342880
Patch

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

r=me.

&gt; Source/JavaScriptCore/runtime/CommonSlowPaths.cpp:1166
&gt; +    ArrayAllocationProfile::updateLastAllocationFor(profile, result);

Ha, whoops! I think I removed that to test something and forgot to put it back later...</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1433719</commentid>
    <comment_count>4</comment_count>
      <attachid>342880</attachid>
    <who name="Yusuke Suzuki">ysuzuki</who>
    <bug_when>2018-06-16 09:33:31 -0700</bug_when>
    <thetext>Comment on attachment 342880
Patch

Yeah, we still have one more OSRExit, which is caused by Array#slice lookup. Personally, I think this can be fixed Fil&apos;s CreateThis&apos;s GetById extension, but idk.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1433720</commentid>
    <comment_count>5</comment_count>
    <who name="Yusuke Suzuki">ysuzuki</who>
    <bug_when>2018-06-16 09:34:03 -0700</bug_when>
    <thetext>Committed r232904: &lt;https://trac.webkit.org/changeset/232904&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1433721</commentid>
    <comment_count>6</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2018-06-16 09:35:18 -0700</bug_when>
    <thetext>&lt;rdar://problem/41187936&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1434778</commentid>
    <comment_count>7</comment_count>
    <who name="Guillaume Emont">guijemont</who>
    <bug_when>2018-06-20 06:40:10 -0700</bug_when>
    <thetext>Since this change, stress/cow-convert-double-to-contiguous.js and stress/cow-convert-int32-to-contiguous.js fail on all 32-bit platforms. I&apos;m trying to understand why.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>342879</attachid>
            <date>2018-06-16 08:22:37 -0700</date>
            <delta_ts>2018-06-16 08:43:13 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-186721-20180617002237.patch</filename>
            <type>text/plain</type>
            <size>6773</size>
            <attacher name="Yusuke Suzuki">ysuzuki</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjMyOTAyCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvQ2hhbmdlTG9nIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwppbmRleCBk
YTViMzhlZWUxYmI1YzU4NTIwODU5Y2YxMTUyNGM2MWUxMTRiMmYzLi5kZjA5ZjI0NzkwZGUzMzgz
MjZmOWRjMzFjYTIxYTYxNWM4ODZiODdjIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9DaGFuZ2VMb2cKQEAgLTEs
MyArMSwzMiBAQAorMjAxOC0wNi0xNiAgWXVzdWtlIFN1enVraSAgPHV0YXRhbmUudGVhQGdtYWls
LmNvbT4KKworICAgICAgICBbREZHXSBSZWR1Y2UgT1NSRXhpdCBmb3IgS3Jha2VuL2NyeXB0by1h
ZXMgZHVlIHRvIENvVyBhcnJheQorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93
X2J1Zy5jZ2k/aWQ9MTg2NzIxCisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISku
CisKKyAgICAgICAgV2Ugc3RpbGwgaGF2ZSBzZXZlcmFsIG90aGVyIE9TUkV4aXRzLCBidXQgdGhp
cyBwYXRjaCByZWR1Y2VzIHRoYXQuCisKKyAgICAgICAgMS4gV2hpbGUgQXJyYXlTbGljZSBjb2Rl
IGFjY2VwdHMgQ29XIGFycmF5cywgaXQgYWx3YXlzIGVtaXRzIENoZWNrU3RydWN0dXJlIHdpdGhv
dXQgQ29XIEFycmF5IHN0cnVjdHVyZXMuCisgICAgICAgIFNvIERGRyBlbWl0cyBBcnJheVNsaWNl
IG9udG8gQ29XIGFycmF5cywgYW5kIGFsd2F5cyBwZXJmb3JtcyBPU1JFeGl0cy4KKworICAgICAg
ICAyLiBUaGUgQ29XIHBhdGNoIHJlbW92ZWQgQXJyYXlBbGxvY2F0aW9uUHJvZmlsZSB1cGRhdGVz
LiBUaGlzIG1ha2VzIGFsbG9jYXRlZCBKU0ltbXV0YWJsZUJ1dHRlcmZseQorICAgICAgICBub24t
YXBwcm9wcmlhdGUuCisKKyAgICAgICAgVGhlc2UgY2hhbmdlcyBhIGJpdCBmaXggS3Jha2VuL2Ny
eXB0by1hZXMgcmVncmVzc2lvbi4KKworICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICBiYXNlbGluZSAgICAgICAgICAgICAgICAgIHBhdGNoZWQKKworICAgICAgICBzdGFuZm9y
ZC1jcnlwdG8tYWVzICAgICAgICA2My43MTgrLTIuMzEyICAgICAgXiAgICAgIDU2LjE0MCstMC45
NjYgICAgICAgICBeIGRlZmluaXRlbHkgMS4xMzUweCBmYXN0ZXIKKworCisgICAgICAgICogZGZn
L0RGR0J5dGVDb2RlUGFyc2VyLmNwcDoKKyAgICAgICAgKEpTQzo6REZHOjpCeXRlQ29kZVBhcnNl
cjo6aGFuZGxlSW50cmluc2ljQ2FsbCk6CisgICAgICAgICogZnRsL0ZUTE9wZXJhdGlvbnMuY3Bw
OgorICAgICAgICAoSlNDOjpGVEw6Om9wZXJhdGlvbk1hdGVyaWFsaXplT2JqZWN0SW5PU1IpOgor
ICAgICAgICAqIHJ1bnRpbWUvQ29tbW9uU2xvd1BhdGhzLmNwcDoKKyAgICAgICAgKEpTQzo6U0xP
V19QQVRIX0RFQ0wpOgorCiAyMDE4LTA2LTE1ICBZdXN1a2UgU3V6dWtpICA8dXRhdGFuZS50ZWFA
Z21haWwuY29tPgogCiAgICAgICAgIFtERkddW0ZUTF0gU3ByZWFkIG9udG8gUGhhbnRvbU5ld0Fy
cmF5QnVmZmVyIGFzc3VtZXMgSlNGaXhlZEFycmF5LCBidXQgSlNJbW11dGFibGVCdXR0ZXJmbHkg
aXMgcmV0dXJuZWQKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9kZmcvREZHQnl0
ZUNvZGVQYXJzZXIuY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL2RmZy9ERkdCeXRlQ29kZVBh
cnNlci5jcHAKaW5kZXggMjU0MWMxNzQ3NGY4MjM2ZmYwZGQ2MzczMzQ4ZTIwNDI1NmU3NjYwYy4u
YTJmOTIzNzEyNDkzOWUzMzk5NTg5NGNlMjEzNTc5YjljMDRjOGYzOCAxMDA2NDQKLS0tIGEvU291
cmNlL0phdmFTY3JpcHRDb3JlL2RmZy9ERkdCeXRlQ29kZVBhcnNlci5jcHAKKysrIGIvU291cmNl
L0phdmFTY3JpcHRDb3JlL2RmZy9ERkdCeXRlQ29kZVBhcnNlci5jcHAKQEAgLTIzMDMsNiArMjMw
Myw5IEBAIGJvb2wgQnl0ZUNvZGVQYXJzZXI6OmhhbmRsZUludHJpbnNpY0NhbGwoTm9kZSogY2Fs
bGVlLCBpbnQgcmVzdWx0T3BlcmFuZCwgSW50cmluCiAgICAgICAgICAgICAgICAgc3RydWN0dXJl
U2V0LmFkZChnbG9iYWxPYmplY3QtPm9yaWdpbmFsQXJyYXlTdHJ1Y3R1cmVGb3JJbmRleGluZ1R5
cGUoQXJyYXlXaXRoSW50MzIpKTsKICAgICAgICAgICAgICAgICBzdHJ1Y3R1cmVTZXQuYWRkKGds
b2JhbE9iamVjdC0+b3JpZ2luYWxBcnJheVN0cnVjdHVyZUZvckluZGV4aW5nVHlwZShBcnJheVdp
dGhDb250aWd1b3VzKSk7CiAgICAgICAgICAgICAgICAgc3RydWN0dXJlU2V0LmFkZChnbG9iYWxP
YmplY3QtPm9yaWdpbmFsQXJyYXlTdHJ1Y3R1cmVGb3JJbmRleGluZ1R5cGUoQXJyYXlXaXRoRG91
YmxlKSk7CisgICAgICAgICAgICAgICAgc3RydWN0dXJlU2V0LmFkZChnbG9iYWxPYmplY3QtPm9y
aWdpbmFsQXJyYXlTdHJ1Y3R1cmVGb3JJbmRleGluZ1R5cGUoQ29weU9uV3JpdGVBcnJheVdpdGhJ
bnQzMikpOworICAgICAgICAgICAgICAgIHN0cnVjdHVyZVNldC5hZGQoZ2xvYmFsT2JqZWN0LT5v
cmlnaW5hbEFycmF5U3RydWN0dXJlRm9ySW5kZXhpbmdUeXBlKENvcHlPbldyaXRlQXJyYXlXaXRo
Q29udGlndW91cykpOworICAgICAgICAgICAgICAgIHN0cnVjdHVyZVNldC5hZGQoZ2xvYmFsT2Jq
ZWN0LT5vcmlnaW5hbEFycmF5U3RydWN0dXJlRm9ySW5kZXhpbmdUeXBlKENvcHlPbldyaXRlQXJy
YXlXaXRoRG91YmxlKSk7CiAgICAgICAgICAgICAgICAgYWRkVG9HcmFwaChDaGVja1N0cnVjdHVy
ZSwgT3BJbmZvKG1fZ3JhcGguYWRkU3RydWN0dXJlU2V0KHN0cnVjdHVyZVNldCkpLCBhcnJheSk7
CiAKICAgICAgICAgICAgICAgICBhZGRWYXJBcmdDaGlsZChhcnJheSk7CmRpZmYgLS1naXQgYS9T
b3VyY2UvSmF2YVNjcmlwdENvcmUvZnRsL0ZUTE9wZXJhdGlvbnMuY3BwIGIvU291cmNlL0phdmFT
Y3JpcHRDb3JlL2Z0bC9GVExPcGVyYXRpb25zLmNwcAppbmRleCBiMDE2ZTE4OGFkZWQ5YTlkNTI4
MmI1ZjUwYzlmMmVlZGUzYmEzOWM3Li44ZmJiZmIyNDRmMDkwN2RiMTVkN2E0M2UxNTM1NzkxYzRj
NTBlYTUwIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvZnRsL0ZUTE9wZXJhdGlv
bnMuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9mdGwvRlRMT3BlcmF0aW9ucy5jcHAK
QEAgLTQ3NCw5ICs0NzQsMTIgQEAgZXh0ZXJuICJDIiBKU0NlbGwqIEpJVF9PUEVSQVRJT04gb3Bl
cmF0aW9uTWF0ZXJpYWxpemVPYmplY3RJbk9TUigKICAgICAgICAgQ29kZUJsb2NrKiBjb2RlQmxv
Y2sgPSBiYXNlbGluZUNvZGVCbG9ja0Zvck9yaWdpbkFuZEJhc2VsaW5lQ29kZUJsb2NrKG1hdGVy
aWFsaXphdGlvbi0+b3JpZ2luKCksIGV4ZWMtPmNvZGVCbG9jaygpKTsKICAgICAgICAgSW5zdHJ1
Y3Rpb24qIGN1cnJlbnRJbnN0cnVjdGlvbiA9ICZjb2RlQmxvY2stPmluc3RydWN0aW9ucygpW21h
dGVyaWFsaXphdGlvbi0+b3JpZ2luKCkuYnl0ZWNvZGVJbmRleF07CiAgICAgICAgIFJFTEVBU0Vf
QVNTRVJUKEludGVycHJldGVyOjpnZXRPcGNvZGVJRChjdXJyZW50SW5zdHJ1Y3Rpb25bMF0udS5v
cGNvZGUpID09IG9wX25ld19hcnJheV9idWZmZXIpOwotICAgICAgICBTdHJ1Y3R1cmUqIHN0cnVj
dHVyZSA9IGV4ZWMtPmxleGljYWxHbG9iYWxPYmplY3QoKS0+YXJyYXlTdHJ1Y3R1cmVGb3JJbmRl
eGluZ1R5cGVEdXJpbmdBbGxvY2F0aW9uKGN1cnJlbnRJbnN0cnVjdGlvblszXS51LmFycmF5QWxs
b2NhdGlvblByb2ZpbGUtPnNlbGVjdEluZGV4aW5nVHlwZSgpKTsKKyAgICAgICAgQXJyYXlBbGxv
Y2F0aW9uUHJvZmlsZSogcHJvZmlsZSA9IGN1cnJlbnRJbnN0cnVjdGlvblszXS51LmFycmF5QWxs
b2NhdGlvblByb2ZpbGU7CisgICAgICAgIFN0cnVjdHVyZSogc3RydWN0dXJlID0gZXhlYy0+bGV4
aWNhbEdsb2JhbE9iamVjdCgpLT5hcnJheVN0cnVjdHVyZUZvckluZGV4aW5nVHlwZUR1cmluZ0Fs
bG9jYXRpb24ocHJvZmlsZS0+c2VsZWN0SW5kZXhpbmdUeXBlKCkpOwogICAgICAgICBBU1NFUlQo
IXN0cnVjdHVyZS0+b3V0T2ZMaW5lQ2FwYWNpdHkoKSk7Ci0gICAgICAgIHJldHVybiBKU0FycmF5
OjpjcmVhdGVXaXRoQnV0dGVyZmx5KHZtLCBudWxscHRyLCBzdHJ1Y3R1cmUsIGFycmF5LT50b0J1
dHRlcmZseSgpKTsKKyAgICAgICAgSlNBcnJheSogcmVzdWx0ID0gSlNBcnJheTo6Y3JlYXRlV2l0
aEJ1dHRlcmZseSh2bSwgbnVsbHB0ciwgc3RydWN0dXJlLCBhcnJheS0+dG9CdXR0ZXJmbHkoKSk7
CisgICAgICAgIEFycmF5QWxsb2NhdGlvblByb2ZpbGU6OnVwZGF0ZUxhc3RBbGxvY2F0aW9uRm9y
KHByb2ZpbGUsIHJlc3VsdCk7CisgICAgICAgIHJldHVybiByZXN1bHQ7CiAgICAgfQogCiAgICAg
Y2FzZSBQaGFudG9tTmV3QXJyYXlXaXRoU3ByZWFkOiB7CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2
YVNjcmlwdENvcmUvcnVudGltZS9Db21tb25TbG93UGF0aHMuY3BwIGIvU291cmNlL0phdmFTY3Jp
cHRDb3JlL3J1bnRpbWUvQ29tbW9uU2xvd1BhdGhzLmNwcAppbmRleCAxZGFmYzYzY2FmZjc4ZWJh
ZmEzN2YwNmEyYjVkNjc0OGRkZTNmZWUzLi5kYWJkOWMwMzdhZjFkMzk1ZDQ0MDViNmY4M2IxYjJj
MGVhZDQ3OThmIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9Db21t
b25TbG93UGF0aHMuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0NvbW1v
blNsb3dQYXRocy5jcHAKQEAgLTExNjMsNiArMTE2Myw3IEBAIFNMT1dfUEFUSF9ERUNMKHNsb3df
cGF0aF9uZXdfYXJyYXlfYnVmZmVyKQogCiAgICAgSlNBcnJheSogcmVzdWx0ID0gQ29tbW9uU2xv
d1BhdGhzOjphbGxvY2F0ZU5ld0FycmF5QnVmZmVyKHZtLCBzdHJ1Y3R1cmUsIGltbXV0YWJsZUJ1
dHRlcmZseSk7CiAgICAgQVNTRVJUKGlzQ29weU9uV3JpdGUocmVzdWx0LT5pbmRleGluZ01vZGUo
KSkgfHwgZXhlYy0+bGV4aWNhbEdsb2JhbE9iamVjdCgpLT5pc0hhdmluZ0FCYWRUaW1lKCkpOwor
ICAgIEFycmF5QWxsb2NhdGlvblByb2ZpbGU6OnVwZGF0ZUxhc3RBbGxvY2F0aW9uRm9yKHByb2Zp
bGUsIHJlc3VsdCk7CiAgICAgUkVUVVJOKHJlc3VsdCk7CiB9CiAKZGlmZiAtLWdpdCBhL0pTVGVz
dHMvQ2hhbmdlTG9nIGIvSlNUZXN0cy9DaGFuZ2VMb2cKaW5kZXggZGQzODlkYmRkMmU5OTRiNDI1
MTRmMGE5MjNkZGIxMTU0MjQxYTVjYi4uMmM0MDhiYWU0MWQwYzMwNjkwOTA0YjMzYTMxNGM0OGNi
NjI1NTkyZSAxMDA2NDQKLS0tIGEvSlNUZXN0cy9DaGFuZ2VMb2cKKysrIGIvSlNUZXN0cy9DaGFu
Z2VMb2cKQEAgLTEsMyArMSwxNiBAQAorMjAxOC0wNi0xNiAgWXVzdWtlIFN1enVraSAgPHV0YXRh
bmUudGVhQGdtYWlsLmNvbT4KKworICAgICAgICBbREZHXSBSZWR1Y2UgT1NSRXhpdCBmb3IgS3Jh
a2VuL2NyeXB0by1hZXMgZHVlIHRvIENvVyBhcnJheQorICAgICAgICBodHRwczovL2J1Z3Mud2Vi
a2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTg2NzIxCisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9C
T0RZIChPT1BTISkuCisKKyAgICAgICAgKiBzdHJlc3MvYXJyYXktc2xpY2UtY293LmpzOiBBZGRl
ZC4KKyAgICAgICAgKHNob3VsZEJlKToKKyAgICAgICAgKHRlc3RJbnQzMik6CisgICAgICAgICh0
ZXN0RG91YmxlKToKKyAgICAgICAgKHRlc3RDb250aWd1b3VzKToKKwogMjAxOC0wNi0xNSAgWXVz
dWtlIFN1enVraSAgPHV0YXRhbmUudGVhQGdtYWlsLmNvbT4KIAogICAgICAgICBbREZHXVtGVExd
IFNwcmVhZCBvbnRvIFBoYW50b21OZXdBcnJheUJ1ZmZlciBhc3N1bWVzIEpTRml4ZWRBcnJheSwg
YnV0IEpTSW1tdXRhYmxlQnV0dGVyZmx5IGlzIHJldHVybmVkCmRpZmYgLS1naXQgYS9KU1Rlc3Rz
L3N0cmVzcy9hcnJheS1zbGljZS1jb3cuanMgYi9KU1Rlc3RzL3N0cmVzcy9hcnJheS1zbGljZS1j
b3cuanMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMC4uNTdmMWNjZjc4ZTkwNDc4MjFmNWI2NWVkODczNWRjOGFlZGRlMzFi
NwotLS0gL2Rldi9udWxsCisrKyBiL0pTVGVzdHMvc3RyZXNzL2FycmF5LXNsaWNlLWNvdy5qcwpA
QCAtMCwwICsxLDMxIEBACitmdW5jdGlvbiBzaG91bGRCZShhY3R1YWwsIGV4cGVjdGVkKSB7Cisg
ICAgaWYgKGFjdHVhbCAhPT0gZXhwZWN0ZWQpCisgICAgICAgIHRocm93IG5ldyBFcnJvcignYmFk
IHZhbHVlOiAnICsgYWN0dWFsKTsKK30KKworZnVuY3Rpb24gdGVzdEludDMyKCkKK3sKKyAgICB2
YXIgYXJyYXkgPSBbMCwgMSwgMiwgM107CisgICAgcmV0dXJuIGFycmF5LnNsaWNlKDEpOworfQor
bm9JbmxpbmUodGVzdEludDMyKTsKKworZnVuY3Rpb24gdGVzdERvdWJsZSgpCit7CisgICAgdmFy
IGFycmF5ID0gWzAuMSwgMS4xLCAyLjEsIDMuMV07CisgICAgcmV0dXJuIGFycmF5LnNsaWNlKDEp
OworfQorbm9JbmxpbmUodGVzdERvdWJsZSk7CisKK2Z1bmN0aW9uIHRlc3RDb250aWd1b3VzKCkK
K3sKKyAgICB2YXIgYXJyYXkgPSBbdHJ1ZSwgZmFsc2UsIHRydWUsIGZhbHNlXTsKKyAgICByZXR1
cm4gYXJyYXkuc2xpY2UoMSk7Cit9Citub0lubGluZSh0ZXN0Q29udGlndW91cyk7CisKK2ZvciAo
dmFyIGkgPSAwOyBpIDwgMWU0OyArK2kpIHsKKyAgICBzaG91bGRCZShKU09OLnN0cmluZ2lmeSh0
ZXN0SW50MzIoKSksIGBbMSwyLDNdYCk7CisgICAgc2hvdWxkQmUoSlNPTi5zdHJpbmdpZnkodGVz
dERvdWJsZSgpKSwgYFsxLjEsMi4xLDMuMV1gKTsKKyAgICBzaG91bGRCZShKU09OLnN0cmluZ2lm
eSh0ZXN0Q29udGlndW91cygpKSwgYFtmYWxzZSx0cnVlLGZhbHNlXWApOworfQo=
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>342880</attachid>
            <date>2018-06-16 08:43:15 -0700</date>
            <delta_ts>2018-06-16 09:29:35 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-186721-20180617004314.patch</filename>
            <type>text/plain</type>
            <size>9050</size>
            <attacher name="Yusuke Suzuki">ysuzuki</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjMyOTAyCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvQ2hhbmdlTG9nIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwppbmRleCBk
YTViMzhlZWUxYmI1YzU4NTIwODU5Y2YxMTUyNGM2MWUxMTRiMmYzLi5kZjA5ZjI0NzkwZGUzMzgz
MjZmOWRjMzFjYTIxYTYxNWM4ODZiODdjIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9DaGFuZ2VMb2cKQEAgLTEs
MyArMSwzMiBAQAorMjAxOC0wNi0xNiAgWXVzdWtlIFN1enVraSAgPHV0YXRhbmUudGVhQGdtYWls
LmNvbT4KKworICAgICAgICBbREZHXSBSZWR1Y2UgT1NSRXhpdCBmb3IgS3Jha2VuL2NyeXB0by1h
ZXMgZHVlIHRvIENvVyBhcnJheQorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93
X2J1Zy5jZ2k/aWQ9MTg2NzIxCisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISku
CisKKyAgICAgICAgV2Ugc3RpbGwgaGF2ZSBzZXZlcmFsIG90aGVyIE9TUkV4aXRzLCBidXQgdGhp
cyBwYXRjaCByZWR1Y2VzIHRoYXQuCisKKyAgICAgICAgMS4gV2hpbGUgQXJyYXlTbGljZSBjb2Rl
IGFjY2VwdHMgQ29XIGFycmF5cywgaXQgYWx3YXlzIGVtaXRzIENoZWNrU3RydWN0dXJlIHdpdGhv
dXQgQ29XIEFycmF5IHN0cnVjdHVyZXMuCisgICAgICAgIFNvIERGRyBlbWl0cyBBcnJheVNsaWNl
IG9udG8gQ29XIGFycmF5cywgYW5kIGFsd2F5cyBwZXJmb3JtcyBPU1JFeGl0cy4KKworICAgICAg
ICAyLiBUaGUgQ29XIHBhdGNoIHJlbW92ZWQgQXJyYXlBbGxvY2F0aW9uUHJvZmlsZSB1cGRhdGVz
LiBUaGlzIG1ha2VzIGFsbG9jYXRlZCBKU0ltbXV0YWJsZUJ1dHRlcmZseQorICAgICAgICBub24t
YXBwcm9wcmlhdGUuCisKKyAgICAgICAgVGhlc2UgY2hhbmdlcyBhIGJpdCBmaXggS3Jha2VuL2Ny
eXB0by1hZXMgcmVncmVzc2lvbi4KKworICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICBiYXNlbGluZSAgICAgICAgICAgICAgICAgIHBhdGNoZWQKKworICAgICAgICBzdGFuZm9y
ZC1jcnlwdG8tYWVzICAgICAgICA2My43MTgrLTIuMzEyICAgICAgXiAgICAgIDU2LjE0MCstMC45
NjYgICAgICAgICBeIGRlZmluaXRlbHkgMS4xMzUweCBmYXN0ZXIKKworCisgICAgICAgICogZGZn
L0RGR0J5dGVDb2RlUGFyc2VyLmNwcDoKKyAgICAgICAgKEpTQzo6REZHOjpCeXRlQ29kZVBhcnNl
cjo6aGFuZGxlSW50cmluc2ljQ2FsbCk6CisgICAgICAgICogZnRsL0ZUTE9wZXJhdGlvbnMuY3Bw
OgorICAgICAgICAoSlNDOjpGVEw6Om9wZXJhdGlvbk1hdGVyaWFsaXplT2JqZWN0SW5PU1IpOgor
ICAgICAgICAqIHJ1bnRpbWUvQ29tbW9uU2xvd1BhdGhzLmNwcDoKKyAgICAgICAgKEpTQzo6U0xP
V19QQVRIX0RFQ0wpOgorCiAyMDE4LTA2LTE1ICBZdXN1a2UgU3V6dWtpICA8dXRhdGFuZS50ZWFA
Z21haWwuY29tPgogCiAgICAgICAgIFtERkddW0ZUTF0gU3ByZWFkIG9udG8gUGhhbnRvbU5ld0Fy
cmF5QnVmZmVyIGFzc3VtZXMgSlNGaXhlZEFycmF5LCBidXQgSlNJbW11dGFibGVCdXR0ZXJmbHkg
aXMgcmV0dXJuZWQKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9kZmcvREZHQnl0
ZUNvZGVQYXJzZXIuY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL2RmZy9ERkdCeXRlQ29kZVBh
cnNlci5jcHAKaW5kZXggMjU0MWMxNzQ3NGY4MjM2ZmYwZGQ2MzczMzQ4ZTIwNDI1NmU3NjYwYy4u
YTJmOTIzNzEyNDkzOWUzMzk5NTg5NGNlMjEzNTc5YjljMDRjOGYzOCAxMDA2NDQKLS0tIGEvU291
cmNlL0phdmFTY3JpcHRDb3JlL2RmZy9ERkdCeXRlQ29kZVBhcnNlci5jcHAKKysrIGIvU291cmNl
L0phdmFTY3JpcHRDb3JlL2RmZy9ERkdCeXRlQ29kZVBhcnNlci5jcHAKQEAgLTIzMDMsNiArMjMw
Myw5IEBAIGJvb2wgQnl0ZUNvZGVQYXJzZXI6OmhhbmRsZUludHJpbnNpY0NhbGwoTm9kZSogY2Fs
bGVlLCBpbnQgcmVzdWx0T3BlcmFuZCwgSW50cmluCiAgICAgICAgICAgICAgICAgc3RydWN0dXJl
U2V0LmFkZChnbG9iYWxPYmplY3QtPm9yaWdpbmFsQXJyYXlTdHJ1Y3R1cmVGb3JJbmRleGluZ1R5
cGUoQXJyYXlXaXRoSW50MzIpKTsKICAgICAgICAgICAgICAgICBzdHJ1Y3R1cmVTZXQuYWRkKGds
b2JhbE9iamVjdC0+b3JpZ2luYWxBcnJheVN0cnVjdHVyZUZvckluZGV4aW5nVHlwZShBcnJheVdp
dGhDb250aWd1b3VzKSk7CiAgICAgICAgICAgICAgICAgc3RydWN0dXJlU2V0LmFkZChnbG9iYWxP
YmplY3QtPm9yaWdpbmFsQXJyYXlTdHJ1Y3R1cmVGb3JJbmRleGluZ1R5cGUoQXJyYXlXaXRoRG91
YmxlKSk7CisgICAgICAgICAgICAgICAgc3RydWN0dXJlU2V0LmFkZChnbG9iYWxPYmplY3QtPm9y
aWdpbmFsQXJyYXlTdHJ1Y3R1cmVGb3JJbmRleGluZ1R5cGUoQ29weU9uV3JpdGVBcnJheVdpdGhJ
bnQzMikpOworICAgICAgICAgICAgICAgIHN0cnVjdHVyZVNldC5hZGQoZ2xvYmFsT2JqZWN0LT5v
cmlnaW5hbEFycmF5U3RydWN0dXJlRm9ySW5kZXhpbmdUeXBlKENvcHlPbldyaXRlQXJyYXlXaXRo
Q29udGlndW91cykpOworICAgICAgICAgICAgICAgIHN0cnVjdHVyZVNldC5hZGQoZ2xvYmFsT2Jq
ZWN0LT5vcmlnaW5hbEFycmF5U3RydWN0dXJlRm9ySW5kZXhpbmdUeXBlKENvcHlPbldyaXRlQXJy
YXlXaXRoRG91YmxlKSk7CiAgICAgICAgICAgICAgICAgYWRkVG9HcmFwaChDaGVja1N0cnVjdHVy
ZSwgT3BJbmZvKG1fZ3JhcGguYWRkU3RydWN0dXJlU2V0KHN0cnVjdHVyZVNldCkpLCBhcnJheSk7
CiAKICAgICAgICAgICAgICAgICBhZGRWYXJBcmdDaGlsZChhcnJheSk7CmRpZmYgLS1naXQgYS9T
b3VyY2UvSmF2YVNjcmlwdENvcmUvZnRsL0ZUTE9wZXJhdGlvbnMuY3BwIGIvU291cmNlL0phdmFT
Y3JpcHRDb3JlL2Z0bC9GVExPcGVyYXRpb25zLmNwcAppbmRleCBiMDE2ZTE4OGFkZWQ5YTlkNTI4
MmI1ZjUwYzlmMmVlZGUzYmEzOWM3Li4xNDdiYjJjMTJmYjUzYzRlMGI3OWU1YmVlNWJjYWU2ZTE2
NjllMTRiIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvZnRsL0ZUTE9wZXJhdGlv
bnMuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9mdGwvRlRMT3BlcmF0aW9ucy5jcHAK
QEAgLTI4LDcgKzI4LDkgQEAKIAogI2lmIEVOQUJMRShGVExfSklUKQogCisjaW5jbHVkZSAiQnl0
ZWNvZGVTdHJ1Y3RzLmgiCiAjaW5jbHVkZSAiQ2xvbmVkQXJndW1lbnRzLmgiCisjaW5jbHVkZSAi
Q29tbW9uU2xvd1BhdGhzLmgiCiAjaW5jbHVkZSAiRGlyZWN0QXJndW1lbnRzLmgiCiAjaW5jbHVk
ZSAiRlRMSklUQ29kZS5oIgogI2luY2x1ZGUgIkZUTExhenlTbG93UGF0aC5oIgpAQCAtNDU5LDI0
ICs0NjEsNDcgQEAgZXh0ZXJuICJDIiBKU0NlbGwqIEpJVF9PUEVSQVRJT04gb3BlcmF0aW9uTWF0
ZXJpYWxpemVPYmplY3RJbk9TUigKICAgICB9CiAKICAgICBjYXNlIFBoYW50b21OZXdBcnJheUJ1
ZmZlcjogewotICAgICAgICBKU0ltbXV0YWJsZUJ1dHRlcmZseSogYXJyYXkgPSBudWxscHRyOwor
ICAgICAgICBKU0ltbXV0YWJsZUJ1dHRlcmZseSogaW1tdXRhYmxlQnV0dGVyZmx5ID0gbnVsbHB0
cjsKICAgICAgICAgZm9yICh1bnNpZ25lZCBpID0gbWF0ZXJpYWxpemF0aW9uLT5wcm9wZXJ0aWVz
KCkuc2l6ZSgpOyBpLS07KSB7CiAgICAgICAgICAgICBjb25zdCBFeGl0UHJvcGVydHlWYWx1ZSYg
cHJvcGVydHkgPSBtYXRlcmlhbGl6YXRpb24tPnByb3BlcnRpZXMoKVtpXTsKICAgICAgICAgICAg
IGlmIChwcm9wZXJ0eS5sb2NhdGlvbigpLmtpbmQoKSA9PSBOZXdBcnJheUJ1ZmZlclBMb2MpIHsK
LSAgICAgICAgICAgICAgICBhcnJheSA9IGpzQ2FzdDxKU0ltbXV0YWJsZUJ1dHRlcmZseSo+KEpT
VmFsdWU6OmRlY29kZSh2YWx1ZXNbaV0pKTsKKyAgICAgICAgICAgICAgICBpbW11dGFibGVCdXR0
ZXJmbHkgPSBqc0Nhc3Q8SlNJbW11dGFibGVCdXR0ZXJmbHkqPihKU1ZhbHVlOjpkZWNvZGUodmFs
dWVzW2ldKSk7CiAgICAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgICB9CiAgICAgICAg
IH0KLSAgICAgICAgUkVMRUFTRV9BU1NFUlQoYXJyYXkpOworICAgICAgICBSRUxFQVNFX0FTU0VS
VChpbW11dGFibGVCdXR0ZXJmbHkpOwogCiAgICAgICAgIC8vIEZvciBub3csIHdlIHVzZSBhcnJh
eSBhbGxvY2F0aW9uIHByb2ZpbGUgaW4gdGhlIGFjdHVhbCBDb2RlQmxvY2suIEl0IGlzIE9LIHNp
bmNlIGN1cnJlbnQgTmV3QXJyYXlCdWZmZXIKICAgICAgICAgLy8gYW5kIFBoYW50b21OZXdBcnJh
eUJ1ZmZlciBhcmUgYWx3YXlzIGJvdW5kIHRvIGEgc3BlY2lmaWMgb3BfbmV3X2FycmF5X2J1ZmZl
ci4KICAgICAgICAgQ29kZUJsb2NrKiBjb2RlQmxvY2sgPSBiYXNlbGluZUNvZGVCbG9ja0Zvck9y
aWdpbkFuZEJhc2VsaW5lQ29kZUJsb2NrKG1hdGVyaWFsaXphdGlvbi0+b3JpZ2luKCksIGV4ZWMt
PmNvZGVCbG9jaygpKTsKICAgICAgICAgSW5zdHJ1Y3Rpb24qIGN1cnJlbnRJbnN0cnVjdGlvbiA9
ICZjb2RlQmxvY2stPmluc3RydWN0aW9ucygpW21hdGVyaWFsaXphdGlvbi0+b3JpZ2luKCkuYnl0
ZWNvZGVJbmRleF07CiAgICAgICAgIFJFTEVBU0VfQVNTRVJUKEludGVycHJldGVyOjpnZXRPcGNv
ZGVJRChjdXJyZW50SW5zdHJ1Y3Rpb25bMF0udS5vcGNvZGUpID09IG9wX25ld19hcnJheV9idWZm
ZXIpOwotICAgICAgICBTdHJ1Y3R1cmUqIHN0cnVjdHVyZSA9IGV4ZWMtPmxleGljYWxHbG9iYWxP
YmplY3QoKS0+YXJyYXlTdHJ1Y3R1cmVGb3JJbmRleGluZ1R5cGVEdXJpbmdBbGxvY2F0aW9uKGN1
cnJlbnRJbnN0cnVjdGlvblszXS51LmFycmF5QWxsb2NhdGlvblByb2ZpbGUtPnNlbGVjdEluZGV4
aW5nVHlwZSgpKTsKKyAgICAgICAgYXV0byogbmV3QXJyYXlCdWZmZXIgPSBiaXR3aXNlX2Nhc3Q8
T3BOZXdBcnJheUJ1ZmZlcio+KGN1cnJlbnRJbnN0cnVjdGlvbik7CisgICAgICAgIEFycmF5QWxs
b2NhdGlvblByb2ZpbGUqIHByb2ZpbGUgPSBjdXJyZW50SW5zdHJ1Y3Rpb25bM10udS5hcnJheUFs
bG9jYXRpb25Qcm9maWxlOworCisgICAgICAgIC8vIEZJWE1FOiBTaGFyZSB0aGUgY29kZSB3aXRo
IENvbW1vblNsb3dQYXRocy4gQ3VycmVudGx5LCBjb2RlQmxvY2sgZXRjLiBhcmUgc2xpZ2h0bHkg
ZGlmZmVyZW50LgorICAgICAgICBJbmRleGluZ1R5cGUgaW5kZXhpbmdNb2RlID0gcHJvZmlsZS0+
c2VsZWN0SW5kZXhpbmdUeXBlKCk7CisgICAgICAgIFN0cnVjdHVyZSogc3RydWN0dXJlID0gZXhl
Yy0+bGV4aWNhbEdsb2JhbE9iamVjdCgpLT5hcnJheVN0cnVjdHVyZUZvckluZGV4aW5nVHlwZUR1
cmluZ0FsbG9jYXRpb24oaW5kZXhpbmdNb2RlKTsKKyAgICAgICAgQVNTRVJUKGlzQ29weU9uV3Jp
dGUoaW5kZXhpbmdNb2RlKSk7CiAgICAgICAgIEFTU0VSVCghc3RydWN0dXJlLT5vdXRPZkxpbmVD
YXBhY2l0eSgpKTsKLSAgICAgICAgcmV0dXJuIEpTQXJyYXk6OmNyZWF0ZVdpdGhCdXR0ZXJmbHko
dm0sIG51bGxwdHIsIHN0cnVjdHVyZSwgYXJyYXktPnRvQnV0dGVyZmx5KCkpOworCisgICAgICAg
IGlmIChVTkxJS0VMWShpbW11dGFibGVCdXR0ZXJmbHktPmluZGV4aW5nTW9kZSgpICE9IGluZGV4
aW5nTW9kZSkpIHsKKyAgICAgICAgICAgIGF1dG8qIG5ld0J1dHRlcmZseSA9IEpTSW1tdXRhYmxl
QnV0dGVyZmx5OjpjcmVhdGUodm0sIGluZGV4aW5nTW9kZSwgaW1tdXRhYmxlQnV0dGVyZmx5LT5s
ZW5ndGgoKSk7CisgICAgICAgICAgICBmb3IgKHVuc2lnbmVkIGkgPSAwOyBpIDwgaW1tdXRhYmxl
QnV0dGVyZmx5LT5sZW5ndGgoKTsgKytpKQorICAgICAgICAgICAgICAgIG5ld0J1dHRlcmZseS0+
c2V0SW5kZXgodm0sIGksIGltbXV0YWJsZUJ1dHRlcmZseS0+Z2V0KGkpKTsKKyAgICAgICAgICAg
IGltbXV0YWJsZUJ1dHRlcmZseSA9IG5ld0J1dHRlcmZseTsKKworICAgICAgICAgICAgLy8gRklY
TUU6IFRoaXMgaXMga2luZGEgZ3Jvc3MgYW5kIG9ubHkgd29ya3MgYmVjYXVzZSB3ZSBjYW4ndCBp
bmxpbmUgbmV3X2FycmF5X2J1ZmZmZXIgaW4gdGhlIGJhc2VsaW5lLgorICAgICAgICAgICAgLy8g
V2UgYWxzbyBjYW5ub3QgYWxsb2NhdGUgYSBuZXcgYnV0dGVyZmx5IGZyb20gY29tcGlsYXRpb24g
dGhyZWFkcyBzaW5jZSBpdCdzIGludmFsaWQgdG8gYWxsb2NhdGUgY2VsbHMgZnJvbQorICAgICAg
ICAgICAgLy8gYSBjb21waWxhdGlvbiB0aHJlYWQuCisgICAgICAgICAgICBXVEY6OnN0b3JlU3Rv
cmVGZW5jZSgpOworICAgICAgICAgICAgY29kZUJsb2NrLT5jb25zdGFudFJlZ2lzdGVyKG5ld0Fy
cmF5QnVmZmVyLT5pbW11dGFibGVCdXR0ZXJmbHkoKSkuc2V0KHZtLCBjb2RlQmxvY2ssIGltbXV0
YWJsZUJ1dHRlcmZseSk7CisgICAgICAgICAgICBXVEY6OnN0b3JlU3RvcmVGZW5jZSgpOworICAg
ICAgICB9CisKKyAgICAgICAgSlNBcnJheSogcmVzdWx0ID0gQ29tbW9uU2xvd1BhdGhzOjphbGxv
Y2F0ZU5ld0FycmF5QnVmZmVyKHZtLCBzdHJ1Y3R1cmUsIGltbXV0YWJsZUJ1dHRlcmZseSk7Cisg
ICAgICAgIEFycmF5QWxsb2NhdGlvblByb2ZpbGU6OnVwZGF0ZUxhc3RBbGxvY2F0aW9uRm9yKHBy
b2ZpbGUsIHJlc3VsdCk7CisgICAgICAgIHJldHVybiByZXN1bHQ7CiAgICAgfQogCiAgICAgY2Fz
ZSBQaGFudG9tTmV3QXJyYXlXaXRoU3ByZWFkOiB7CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNj
cmlwdENvcmUvcnVudGltZS9Db21tb25TbG93UGF0aHMuY3BwIGIvU291cmNlL0phdmFTY3JpcHRD
b3JlL3J1bnRpbWUvQ29tbW9uU2xvd1BhdGhzLmNwcAppbmRleCAxZGFmYzYzY2FmZjc4ZWJhZmEz
N2YwNmEyYjVkNjc0OGRkZTNmZWUzLi5kYWJkOWMwMzdhZjFkMzk1ZDQ0MDViNmY4M2IxYjJjMGVh
ZDQ3OThmIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9Db21tb25T
bG93UGF0aHMuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0NvbW1vblNs
b3dQYXRocy5jcHAKQEAgLTExNjMsNiArMTE2Myw3IEBAIFNMT1dfUEFUSF9ERUNMKHNsb3dfcGF0
aF9uZXdfYXJyYXlfYnVmZmVyKQogCiAgICAgSlNBcnJheSogcmVzdWx0ID0gQ29tbW9uU2xvd1Bh
dGhzOjphbGxvY2F0ZU5ld0FycmF5QnVmZmVyKHZtLCBzdHJ1Y3R1cmUsIGltbXV0YWJsZUJ1dHRl
cmZseSk7CiAgICAgQVNTRVJUKGlzQ29weU9uV3JpdGUocmVzdWx0LT5pbmRleGluZ01vZGUoKSkg
fHwgZXhlYy0+bGV4aWNhbEdsb2JhbE9iamVjdCgpLT5pc0hhdmluZ0FCYWRUaW1lKCkpOworICAg
IEFycmF5QWxsb2NhdGlvblByb2ZpbGU6OnVwZGF0ZUxhc3RBbGxvY2F0aW9uRm9yKHByb2ZpbGUs
IHJlc3VsdCk7CiAgICAgUkVUVVJOKHJlc3VsdCk7CiB9CiAKZGlmZiAtLWdpdCBhL0pTVGVzdHMv
Q2hhbmdlTG9nIGIvSlNUZXN0cy9DaGFuZ2VMb2cKaW5kZXggZGQzODlkYmRkMmU5OTRiNDI1MTRm
MGE5MjNkZGIxMTU0MjQxYTVjYi4uMmM0MDhiYWU0MWQwYzMwNjkwOTA0YjMzYTMxNGM0OGNiNjI1
NTkyZSAxMDA2NDQKLS0tIGEvSlNUZXN0cy9DaGFuZ2VMb2cKKysrIGIvSlNUZXN0cy9DaGFuZ2VM
b2cKQEAgLTEsMyArMSwxNiBAQAorMjAxOC0wNi0xNiAgWXVzdWtlIFN1enVraSAgPHV0YXRhbmUu
dGVhQGdtYWlsLmNvbT4KKworICAgICAgICBbREZHXSBSZWR1Y2UgT1NSRXhpdCBmb3IgS3Jha2Vu
L2NyeXB0by1hZXMgZHVlIHRvIENvVyBhcnJheQorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0
Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTg2NzIxCisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZ
IChPT1BTISkuCisKKyAgICAgICAgKiBzdHJlc3MvYXJyYXktc2xpY2UtY293LmpzOiBBZGRlZC4K
KyAgICAgICAgKHNob3VsZEJlKToKKyAgICAgICAgKHRlc3RJbnQzMik6CisgICAgICAgICh0ZXN0
RG91YmxlKToKKyAgICAgICAgKHRlc3RDb250aWd1b3VzKToKKwogMjAxOC0wNi0xNSAgWXVzdWtl
IFN1enVraSAgPHV0YXRhbmUudGVhQGdtYWlsLmNvbT4KIAogICAgICAgICBbREZHXVtGVExdIFNw
cmVhZCBvbnRvIFBoYW50b21OZXdBcnJheUJ1ZmZlciBhc3N1bWVzIEpTRml4ZWRBcnJheSwgYnV0
IEpTSW1tdXRhYmxlQnV0dGVyZmx5IGlzIHJldHVybmVkCmRpZmYgLS1naXQgYS9KU1Rlc3RzL3N0
cmVzcy9hcnJheS1zbGljZS1jb3cuanMgYi9KU1Rlc3RzL3N0cmVzcy9hcnJheS1zbGljZS1jb3cu
anMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMC4uNTdmMWNjZjc4ZTkwNDc4MjFmNWI2NWVkODczNWRjOGFlZGRlMzFiNwot
LS0gL2Rldi9udWxsCisrKyBiL0pTVGVzdHMvc3RyZXNzL2FycmF5LXNsaWNlLWNvdy5qcwpAQCAt
MCwwICsxLDMxIEBACitmdW5jdGlvbiBzaG91bGRCZShhY3R1YWwsIGV4cGVjdGVkKSB7CisgICAg
aWYgKGFjdHVhbCAhPT0gZXhwZWN0ZWQpCisgICAgICAgIHRocm93IG5ldyBFcnJvcignYmFkIHZh
bHVlOiAnICsgYWN0dWFsKTsKK30KKworZnVuY3Rpb24gdGVzdEludDMyKCkKK3sKKyAgICB2YXIg
YXJyYXkgPSBbMCwgMSwgMiwgM107CisgICAgcmV0dXJuIGFycmF5LnNsaWNlKDEpOworfQorbm9J
bmxpbmUodGVzdEludDMyKTsKKworZnVuY3Rpb24gdGVzdERvdWJsZSgpCit7CisgICAgdmFyIGFy
cmF5ID0gWzAuMSwgMS4xLCAyLjEsIDMuMV07CisgICAgcmV0dXJuIGFycmF5LnNsaWNlKDEpOwor
fQorbm9JbmxpbmUodGVzdERvdWJsZSk7CisKK2Z1bmN0aW9uIHRlc3RDb250aWd1b3VzKCkKK3sK
KyAgICB2YXIgYXJyYXkgPSBbdHJ1ZSwgZmFsc2UsIHRydWUsIGZhbHNlXTsKKyAgICByZXR1cm4g
YXJyYXkuc2xpY2UoMSk7Cit9Citub0lubGluZSh0ZXN0Q29udGlndW91cyk7CisKK2ZvciAodmFy
IGkgPSAwOyBpIDwgMWU0OyArK2kpIHsKKyAgICBzaG91bGRCZShKU09OLnN0cmluZ2lmeSh0ZXN0
SW50MzIoKSksIGBbMSwyLDNdYCk7CisgICAgc2hvdWxkQmUoSlNPTi5zdHJpbmdpZnkodGVzdERv
dWJsZSgpKSwgYFsxLjEsMi4xLDMuMV1gKTsKKyAgICBzaG91bGRCZShKU09OLnN0cmluZ2lmeSh0
ZXN0Q29udGlndW91cygpKSwgYFtmYWxzZSx0cnVlLGZhbHNlXWApOworfQo=
</data>
<flag name="review"
          id="360959"
          type_id="1"
          status="+"
          setter="keith_miller"
    />
          </attachment>
      

    </bug>

</bugzilla>