<?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>184923</bug_id>
          
          <creation_ts>2018-04-24 11:48:00 -0700</creation_ts>
          <short_desc>MultiByOffset should emit one fewer branches in the case that the set of structures is proved already</short_desc>
          <delta_ts>2018-04-24 15:30:33 -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>WebKit 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>InRadar</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>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>1417213</commentid>
    <comment_count>0</comment_count>
    <who name="Filip Pizlo">fpizlo</who>
    <bug_when>2018-04-24 11:48:00 -0700</bug_when>
    <thetext>This isn&apos;t meant to be a speed-up, but it simplifies the IR, which should make implementing other optimizations easier.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1417215</commentid>
    <comment_count>1</comment_count>
      <attachid>338660</attachid>
    <who name="Filip Pizlo">fpizlo</who>
    <bug_when>2018-04-24 11:52:31 -0700</bug_when>
    <thetext>Created attachment 338660
the patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1417236</commentid>
    <comment_count>2</comment_count>
      <attachid>338664</attachid>
    <who name="Filip Pizlo">fpizlo</who>
    <bug_when>2018-04-24 12:48:09 -0700</bug_when>
    <thetext>Created attachment 338664
the patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1417238</commentid>
    <comment_count>3</comment_count>
    <who name="Filip Pizlo">fpizlo</who>
    <bug_when>2018-04-24 12:48:44 -0700</bug_when>
    <thetext>*** Bug 154382 has been marked as a duplicate of this bug. ***</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1417316</commentid>
    <comment_count>4</comment_count>
    <who name="Filip Pizlo">fpizlo</who>
    <bug_when>2018-04-24 15:29:55 -0700</bug_when>
    <thetext>Landed in https://trac.webkit.org/changeset/230975/webkit</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1417317</commentid>
    <comment_count>5</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2018-04-24 15:30:33 -0700</bug_when>
    <thetext>&lt;rdar://problem/39700477&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>338660</attachid>
            <date>2018-04-24 11:52:31 -0700</date>
            <delta_ts>2018-04-24 12:48:09 -0700</delta_ts>
            <desc>the patch</desc>
            <filename>blah.patch</filename>
            <type>text/plain</type>
            <size>5089</size>
            <attacher name="Filip Pizlo">fpizlo</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9DaGFuZ2VMb2cKPT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291
cmNlL0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwkocmV2aXNpb24gMjMwOTYzKQorKysgU291cmNl
L0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDM0IEBA
CisyMDE4LTA0LTI0ICBGaWxpcCBQaXpsbyAgPGZwaXpsb0BhcHBsZS5jb20+CisKKyAgICAgICAg
TXVsdGlCeU9mZnNldCBzaG91bGQgZW1pdCBvbmUgZmV3ZXIgYnJhbmNoZXMgaW4gdGhlIGNhc2Ug
dGhhdCB0aGUgc2V0IG9mIHN0cnVjdHVyZXMgaXMgcHJvdmVkIGFscmVhZHkKKyAgICAgICAgaHR0
cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE4NDkyMworCisgICAgICAgIFJl
dmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorICAgICAgICAKKyAgICAgICAgSWYgd2UgaGF2ZSBh
IE11bHRpR2V0QnlPZmZzZXQgb3IgTXVsdGlQdXRCeU9mZnNldCBvdmVyIGEgc3RydWN0dXJlIHNl
dCB0aGF0IHdlJ3ZlIGFscmVhZHkgcHJvdmVkCisgICAgICAgIChpLmUuIHdlIGtub3cgdGhhdCB0
aGUgb2JqZWN0IGhhcyBvbmUgb2YgdGhvc2Ugc3RydWN0dXJlcyksIHRoZW4gcHJldmlvdXNseSB3
ZSB3b3VsZCBzdGlsbCBlbWl0IGEKKyAgICAgICAgc3dpdGNoIHdpdGggYSBjYXNlIHBlciBzdHJ1
Y3R1cmUgYWxvbmcgd2l0aCBhIGRlZmF1bHQgY2FzZS4gVGhhdCB3b3VsZCBtZWFuIG9uZSBleHRy
YSByZWR1bmRhbnQKKyAgICAgICAgYnJhbmNoIHRvIGNoZWNrIHRoYXQgd2hhdGV2ZXIgc3RydWN0
dXJlIHdlIHdvdW5kIHVwIHdpdGggYmVsb25ncyB0byB0aGUgc2V0LiBJbiB0aGF0IGNhc2UsIHdl
CisgICAgICAgIHdlcmUgYWxyZWFkeSBtYWtpbmcgdGhlIGRlZmF1bHQgY2FzZSBiZSBhbiBPb3Bz
LgorICAgICAgICAKKyAgICAgICAgT25lIHBvc3NpYmxlIHNvbHV0aW9uIHdvdWxkIGJlIHRvIHNh
eSB0aGF0IHRoZSBkZWZhdWx0IGNhc2UgYmVpbmcgT29wcyBtZWFucyB0aGF0IEIzIGRvZXNuJ3Qg
bmVlZAorICAgICAgICB0byBlbWl0IHRoZSBleHRyYSBicmFuY2guIEJ1dCB0aGF0IHdvdWxkIHJl
cXVpcmUgaGF2aW5nIEIzIGV4cGxvaXQgdGhlIGZhY3QgdGhhdCBPb3BzIGlzIGtub3duIHRvCisg
ICAgICAgIGJlIHVucmVhY2hhYmxlLiBBbHRob3VnaCBCMyBJUiBzZW1hbnRpY3MgKHdlYmtpdC5v
cmcvZG9jcy9iMy9pbnRlcm1lZGlhdGUtcmVwcmVzZW50YXRpb24uaHRtbCkKKyAgICAgICAgc2Vl
bSB0byBhbGxvdyB0aGlzLCBJIGRvbid0IHBhcnRpY3VsYXJseSBsaWtlIHRoYXQgc3R5bGUgb2Yg
b3B0aW1pemF0aW9uLiBJIGxpa2UgT29wcyB0byBtZWFuCisgICAgICAgIHRyYXAuCisgICAgICAg
IAorICAgICAgICBTbywgdGhpcyBwYXRjaCBtYWtlcyBGVEwgbG93ZXJpbmcgdHVybiBvbmUgb2Yg
dGhlIGNhc2VzIGludG8gdGhlIGRlZmF1bHQsIGV4cGxpY2l0bHkgcmVtb3ZpbmcgdGhlCisgICAg
ICAgIGV4dHJhIGJyYW5jaC4KKyAgICAgICAgCisgICAgICAgIFRoaXMgaXMgbm90IGEgc3BlZWQt
dXAuIEJ1dCBpdCBtYWtlcyB0aGUgQjMgSVIgZm9yIE11bHRpQnlPZmZzZXQgYSBsb3Qgc2ltcGxl
ciwgd2hpY2ggc2hvdWxkIG1ha2UKKyAgICAgICAgaXQgZWFzaWVyIHRvIGltcGxlbWVudCBCMy1s
ZXZlbCBvcHRpbWl6YXRpb25zIGZvciBNdWx0aUJ5T2Zmc2V0LiBJdCBhbHNvIG1ha2VzIHRoZSBJ
UiBlYXNpZXIgdG8KKyAgICAgICAgcmVhZC4KKworICAgICAgICAqIGZ0bC9GVExMb3dlckRGR1Rv
QjMuY3BwOgorICAgICAgICAoSlNDOjpGVEw6OkRGRzo6TG93ZXJERkdUb0IzOjpjb21waWxlTXVs
dGlHZXRCeU9mZnNldCk6CisgICAgICAgIChKU0M6OkZUTDo6REZHOjpMb3dlckRGR1RvQjM6OmNv
bXBpbGVNdWx0aVB1dEJ5T2Zmc2V0KToKKyAgICAgICAgKEpTQzo6RlRMOjpERkc6Okxvd2VyREZH
VG9CMzo6ZW1pdFN3aXRjaEZvck11bHRpQnlPZmZzZXQpOgorCiAyMDE4LTA0LTI0ICBLZWl0aCBN
aWxsZXIgIDxrZWl0aF9taWxsZXJAYXBwbGUuY29tPgogCiAgICAgICAgIFVwZGF0ZSBBUEkgZG9j
cyB3aXRoIGluZm9ybWF0aW9uIG9uIHdoaWNoIHJ1biBsb29wIHRoZSBWTSB3aWxsIHVzZQpJbmRl
eDogU291cmNlL0phdmFTY3JpcHRDb3JlL2Z0bC9GVExMb3dlckRGR1RvQjMuY3BwCj09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT0KLS0tIFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9mdGwvRlRMTG93ZXJERkdUb0IzLmNwcAkocmV2
aXNpb24gMjMwOTYxKQorKysgU291cmNlL0phdmFTY3JpcHRDb3JlL2Z0bC9GVExMb3dlckRGR1Rv
QjMuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC02NDYyLDggKzY0NjIsOCBAQCBwcml2YXRlOgogICAg
ICAgICAgICAgICAgIGNhc2VzLmFwcGVuZChTd2l0Y2hDYXNlKHdlYWtTdHJ1Y3R1cmVJRChzdHJ1
Y3R1cmUpLCBibG9ja3NbaV0sIFdlaWdodCgxKSkpOwogICAgICAgICAgICAgfQogICAgICAgICB9
Ci0gICAgICAgIG1fb3V0LnN3aXRjaEluc3RydWN0aW9uKAotICAgICAgICAgICAgbV9vdXQubG9h
ZDMyKGJhc2UsIG1faGVhcHMuSlNDZWxsX3N0cnVjdHVyZUlEKSwgY2FzZXMsIGV4aXQsIFdlaWdo
dCgwKSk7CisgICAgICAgIGJvb2wgc3RydWN0dXJlc0NoZWNrZWQgPSBtX2ludGVycHJldGVyLmZv
ck5vZGUobV9ub2RlLT5jaGlsZDEoKSkubV9zdHJ1Y3R1cmUuaXNTdWJzZXRPZihiYXNlU2V0KTsK
KyAgICAgICAgZW1pdFN3aXRjaEZvck11bHRpQnlPZmZzZXQoYmFzZSwgc3RydWN0dXJlc0NoZWNr
ZWQsIGNhc2VzLCBleGl0KTsKICAgICAgICAgCiAgICAgICAgIExCYXNpY0Jsb2NrIGxhc3ROZXh0
ID0gbV9vdXQubV9uZXh0QmxvY2s7CiAgICAgICAgIApAQCAtNjUwNCw3ICs2NTA0LDcgQEAgcHJp
dmF0ZToKICAgICAgICAgfQogICAgICAgICAKICAgICAgICAgbV9vdXQuYXBwZW5kVG8oZXhpdCwg
Y29udGludWF0aW9uKTsKLSAgICAgICAgaWYgKCFtX2ludGVycHJldGVyLmZvck5vZGUobV9ub2Rl
LT5jaGlsZDEoKSkubV9zdHJ1Y3R1cmUuaXNTdWJzZXRPZihiYXNlU2V0KSkKKyAgICAgICAgaWYg
KCFzdHJ1Y3R1cmVzQ2hlY2tlZCkKICAgICAgICAgICAgIHNwZWN1bGF0ZShCYWRDYWNoZSwgbm9W
YWx1ZSgpLCBudWxscHRyLCBtX291dC5ib29sZWFuVHJ1ZSk7CiAgICAgICAgIG1fb3V0LnVucmVh
Y2hhYmxlKCk7CiAgICAgICAgIApAQCAtNjU0NCw4ICs2NTQ0LDggQEAgcHJpdmF0ZToKICAgICAg
ICAgICAgICAgICBjYXNlcy5hcHBlbmQoU3dpdGNoQ2FzZSh3ZWFrU3RydWN0dXJlSUQoc3RydWN0
dXJlKSwgYmxvY2tzW2ldLCBXZWlnaHQoMSkpKTsKICAgICAgICAgICAgIH0KICAgICAgICAgfQot
ICAgICAgICBtX291dC5zd2l0Y2hJbnN0cnVjdGlvbigKLSAgICAgICAgICAgIG1fb3V0LmxvYWQz
MihiYXNlLCBtX2hlYXBzLkpTQ2VsbF9zdHJ1Y3R1cmVJRCksIGNhc2VzLCBleGl0LCBXZWlnaHQo
MCkpOworICAgICAgICBib29sIHN0cnVjdHVyZXNDaGVja2VkID0gbV9pbnRlcnByZXRlci5mb3JO
b2RlKG1fbm9kZS0+Y2hpbGQxKCkpLm1fc3RydWN0dXJlLmlzU3Vic2V0T2YoYmFzZVNldCk7Cisg
ICAgICAgIGVtaXRTd2l0Y2hGb3JNdWx0aUJ5T2Zmc2V0KGJhc2UsIHN0cnVjdHVyZXNDaGVja2Vk
LCBjYXNlcywgZXhpdCk7CiAgICAgICAgIAogICAgICAgICBMQmFzaWNCbG9jayBsYXN0TmV4dCA9
IG1fb3V0Lm1fbmV4dEJsb2NrOwogICAgICAgICAKQEAgLTY1ODcsNyArNjU4Nyw3IEBAIHByaXZh
dGU6CiAgICAgICAgIH0KICAgICAgICAgCiAgICAgICAgIG1fb3V0LmFwcGVuZFRvKGV4aXQsIGNv
bnRpbnVhdGlvbik7Ci0gICAgICAgIGlmICghbV9pbnRlcnByZXRlci5mb3JOb2RlKG1fbm9kZS0+
Y2hpbGQxKCkpLm1fc3RydWN0dXJlLmlzU3Vic2V0T2YoYmFzZVNldCkpCisgICAgICAgIGlmICgh
c3RydWN0dXJlc0NoZWNrZWQpCiAgICAgICAgICAgICBzcGVjdWxhdGUoQmFkQ2FjaGUsIG5vVmFs
dWUoKSwgbnVsbHB0ciwgbV9vdXQuYm9vbGVhblRydWUpOwogICAgICAgICBtX291dC51bnJlYWNo
YWJsZSgpOwogICAgICAgICAKQEAgLTEyMDMwLDYgKzEyMDMwLDI0IEBAIHByaXZhdGU6CiAgICAg
ICAgIHNldEpTVmFsdWUocGF0Y2hwb2ludCk7CiAgICAgfQogICAgIAorICAgIHZvaWQgZW1pdFN3
aXRjaEZvck11bHRpQnlPZmZzZXQoTFZhbHVlIGJhc2UsIGJvb2wgc3RydWN0dXJlc0NoZWNrZWQs
IFZlY3RvcjxTd2l0Y2hDYXNlLCAyPiYgY2FzZXMsIExCYXNpY0Jsb2NrIGV4aXQpCisgICAgewor
ICAgICAgICBpZiAoc3RydWN0dXJlc0NoZWNrZWQpIHsKKyAgICAgICAgICAgIHN0ZDo6c29ydCgK
KyAgICAgICAgICAgICAgICBjYXNlcy5iZWdpbigpLCBjYXNlcy5lbmQoKSwKKyAgICAgICAgICAg
ICAgICBbJl0gKGNvbnN0IFN3aXRjaENhc2UmIGEsIGNvbnN0IFN3aXRjaENhc2UmIGIpIC0+IGJv
b2wgeworICAgICAgICAgICAgICAgICAgICByZXR1cm4gYS52YWx1ZSgpLT5hc0ludCgpIDwgYi52
YWx1ZSgpLT5hc0ludCgpOworICAgICAgICAgICAgICAgIH0pOworICAgICAgICAgICAgU3dpdGNo
Q2FzZSBsYXN0ID0gY2FzZXMudGFrZUxhc3QoKTsKKyAgICAgICAgICAgIG1fb3V0LnN3aXRjaElu
c3RydWN0aW9uKAorICAgICAgICAgICAgICAgIG1fb3V0LmxvYWQzMihiYXNlLCBtX2hlYXBzLkpT
Q2VsbF9zdHJ1Y3R1cmVJRCksIGNhc2VzLCBsYXN0LnRhcmdldCgpLCBXZWlnaHQoMCkpOworICAg
ICAgICAgICAgcmV0dXJuOworICAgICAgICB9CisgICAgICAgIAorICAgICAgICBtX291dC5zd2l0
Y2hJbnN0cnVjdGlvbigKKyAgICAgICAgICAgIG1fb3V0LmxvYWQzMihiYXNlLCBtX2hlYXBzLkpT
Q2VsbF9zdHJ1Y3R1cmVJRCksIGNhc2VzLCBleGl0LCBXZWlnaHQoMCkpOworICAgIH0KKyAgICAK
ICAgICB2b2lkIGNvbXBhcmVFcU9iamVjdE9yT3RoZXJUb09iamVjdChFZGdlIGxlZnRDaGlsZCwg
RWRnZSByaWdodENoaWxkKQogICAgIHsKICAgICAgICAgTFZhbHVlIHJpZ2h0Q2VsbCA9IGxvd0Nl
bGwocmlnaHRDaGlsZCk7Cg==
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>338664</attachid>
            <date>2018-04-24 12:48:09 -0700</date>
            <delta_ts>2018-04-24 14:44:11 -0700</delta_ts>
            <desc>the patch</desc>
            <filename>blah.patch</filename>
            <type>text/plain</type>
            <size>5800</size>
            <attacher name="Filip Pizlo">fpizlo</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9DaGFuZ2VMb2cKPT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291
cmNlL0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwkocmV2aXNpb24gMjMwOTYzKQorKysgU291cmNl
L0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDM0IEBA
CisyMDE4LTA0LTI0ICBGaWxpcCBQaXpsbyAgPGZwaXpsb0BhcHBsZS5jb20+CisKKyAgICAgICAg
TXVsdGlCeU9mZnNldCBzaG91bGQgZW1pdCBvbmUgZmV3ZXIgYnJhbmNoZXMgaW4gdGhlIGNhc2Ug
dGhhdCB0aGUgc2V0IG9mIHN0cnVjdHVyZXMgaXMgcHJvdmVkIGFscmVhZHkKKyAgICAgICAgaHR0
cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE4NDkyMworCisgICAgICAgIFJl
dmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorICAgICAgICAKKyAgICAgICAgSWYgd2UgaGF2ZSBh
IE11bHRpR2V0QnlPZmZzZXQgb3IgTXVsdGlQdXRCeU9mZnNldCBvdmVyIGEgc3RydWN0dXJlIHNl
dCB0aGF0IHdlJ3ZlIGFscmVhZHkgcHJvdmVkCisgICAgICAgIChpLmUuIHdlIGtub3cgdGhhdCB0
aGUgb2JqZWN0IGhhcyBvbmUgb2YgdGhvc2Ugc3RydWN0dXJlcyksIHRoZW4gcHJldmlvdXNseSB3
ZSB3b3VsZCBzdGlsbCBlbWl0IGEKKyAgICAgICAgc3dpdGNoIHdpdGggYSBjYXNlIHBlciBzdHJ1
Y3R1cmUgYWxvbmcgd2l0aCBhIGRlZmF1bHQgY2FzZS4gVGhhdCB3b3VsZCBtZWFuIG9uZSBleHRy
YSByZWR1bmRhbnQKKyAgICAgICAgYnJhbmNoIHRvIGNoZWNrIHRoYXQgd2hhdGV2ZXIgc3RydWN0
dXJlIHdlIHdvdW5kIHVwIHdpdGggYmVsb25ncyB0byB0aGUgc2V0LiBJbiB0aGF0IGNhc2UsIHdl
CisgICAgICAgIHdlcmUgYWxyZWFkeSBtYWtpbmcgdGhlIGRlZmF1bHQgY2FzZSBiZSBhbiBPb3Bz
LgorICAgICAgICAKKyAgICAgICAgT25lIHBvc3NpYmxlIHNvbHV0aW9uIHdvdWxkIGJlIHRvIHNh
eSB0aGF0IHRoZSBkZWZhdWx0IGNhc2UgYmVpbmcgT29wcyBtZWFucyB0aGF0IEIzIGRvZXNuJ3Qg
bmVlZAorICAgICAgICB0byBlbWl0IHRoZSBleHRyYSBicmFuY2guIEJ1dCB0aGF0IHdvdWxkIHJl
cXVpcmUgaGF2aW5nIEIzIGV4cGxvaXQgdGhlIGZhY3QgdGhhdCBPb3BzIGlzIGtub3duIHRvCisg
ICAgICAgIGJlIHVucmVhY2hhYmxlLiBBbHRob3VnaCBCMyBJUiBzZW1hbnRpY3MgKHdlYmtpdC5v
cmcvZG9jcy9iMy9pbnRlcm1lZGlhdGUtcmVwcmVzZW50YXRpb24uaHRtbCkKKyAgICAgICAgc2Vl
bSB0byBhbGxvdyB0aGlzLCBJIGRvbid0IHBhcnRpY3VsYXJseSBsaWtlIHRoYXQgc3R5bGUgb2Yg
b3B0aW1pemF0aW9uLiBJIGxpa2UgT29wcyB0byBtZWFuCisgICAgICAgIHRyYXAuCisgICAgICAg
IAorICAgICAgICBTbywgdGhpcyBwYXRjaCBtYWtlcyBGVEwgbG93ZXJpbmcgdHVybiBvbmUgb2Yg
dGhlIGNhc2VzIGludG8gdGhlIGRlZmF1bHQsIGV4cGxpY2l0bHkgcmVtb3ZpbmcgdGhlCisgICAg
ICAgIGV4dHJhIGJyYW5jaC4KKyAgICAgICAgCisgICAgICAgIFRoaXMgaXMgbm90IGEgc3BlZWQt
dXAuIEJ1dCBpdCBtYWtlcyB0aGUgQjMgSVIgZm9yIE11bHRpQnlPZmZzZXQgYSBsb3Qgc2ltcGxl
ciwgd2hpY2ggc2hvdWxkIG1ha2UKKyAgICAgICAgaXQgZWFzaWVyIHRvIGltcGxlbWVudCBCMy1s
ZXZlbCBvcHRpbWl6YXRpb25zIGZvciBNdWx0aUJ5T2Zmc2V0LiBJdCBhbHNvIG1ha2VzIHRoZSBJ
UiBlYXNpZXIgdG8KKyAgICAgICAgcmVhZC4KKworICAgICAgICAqIGZ0bC9GVExMb3dlckRGR1Rv
QjMuY3BwOgorICAgICAgICAoSlNDOjpGVEw6OkRGRzo6TG93ZXJERkdUb0IzOjpjb21waWxlTXVs
dGlHZXRCeU9mZnNldCk6CisgICAgICAgIChKU0M6OkZUTDo6REZHOjpMb3dlckRGR1RvQjM6OmNv
bXBpbGVNdWx0aVB1dEJ5T2Zmc2V0KToKKyAgICAgICAgKEpTQzo6RlRMOjpERkc6Okxvd2VyREZH
VG9CMzo6ZW1pdFN3aXRjaEZvck11bHRpQnlPZmZzZXQpOgorCiAyMDE4LTA0LTI0ICBLZWl0aCBN
aWxsZXIgIDxrZWl0aF9taWxsZXJAYXBwbGUuY29tPgogCiAgICAgICAgIFVwZGF0ZSBBUEkgZG9j
cyB3aXRoIGluZm9ybWF0aW9uIG9uIHdoaWNoIHJ1biBsb29wIHRoZSBWTSB3aWxsIHVzZQpJbmRl
eDogU291cmNlL0phdmFTY3JpcHRDb3JlL2Z0bC9GVExMb3dlckRGR1RvQjMuY3BwCj09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT0KLS0tIFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9mdGwvRlRMTG93ZXJERkdUb0IzLmNwcAkocmV2
aXNpb24gMjMwOTYxKQorKysgU291cmNlL0phdmFTY3JpcHRDb3JlL2Z0bC9GVExMb3dlckRGR1Rv
QjMuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC02NDM4LDE0ICs2NDM4LDYgQEAgcHJpdmF0ZToKICAg
ICAgICAgCiAgICAgICAgIE11bHRpR2V0QnlPZmZzZXREYXRhJiBkYXRhID0gbV9ub2RlLT5tdWx0
aUdldEJ5T2Zmc2V0RGF0YSgpOwogCi0gICAgICAgIGlmIChkYXRhLmNhc2VzLmlzRW1wdHkoKSkg
ewotICAgICAgICAgICAgLy8gUHJvdGVjdCBhZ2FpbnN0IGNyZWF0aW5nIGEgUGhpIGZ1bmN0aW9u
IHdpdGggemVybyBpbnB1dHMuIExMVk0gZGlkbid0IGxpa2UgdGhhdC4KLSAgICAgICAgICAgIC8v
IEl0J3Mgbm90IGNsZWFyIGlmIHRoaXMgaXMgbmVlZGVkIGFueW1vcmUuCi0gICAgICAgICAgICAv
LyBGSVhNRTogaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE1NDM4Mgot
ICAgICAgICAgICAgdGVybWluYXRlKEJhZENhY2hlKTsKLSAgICAgICAgICAgIHJldHVybjsKLSAg
ICAgICAgfQotICAgICAgICAKICAgICAgICAgVmVjdG9yPExCYXNpY0Jsb2NrLCAyPiBibG9ja3Mo
ZGF0YS5jYXNlcy5zaXplKCkpOwogICAgICAgICBmb3IgKHVuc2lnbmVkIGkgPSBkYXRhLmNhc2Vz
LnNpemUoKTsgaS0tOykKICAgICAgICAgICAgIGJsb2Nrc1tpXSA9IG1fb3V0Lm5ld0Jsb2NrKCk7
CkBAIC02NDYyLDggKzY0NTQsOCBAQCBwcml2YXRlOgogICAgICAgICAgICAgICAgIGNhc2VzLmFw
cGVuZChTd2l0Y2hDYXNlKHdlYWtTdHJ1Y3R1cmVJRChzdHJ1Y3R1cmUpLCBibG9ja3NbaV0sIFdl
aWdodCgxKSkpOwogICAgICAgICAgICAgfQogICAgICAgICB9Ci0gICAgICAgIG1fb3V0LnN3aXRj
aEluc3RydWN0aW9uKAotICAgICAgICAgICAgbV9vdXQubG9hZDMyKGJhc2UsIG1faGVhcHMuSlND
ZWxsX3N0cnVjdHVyZUlEKSwgY2FzZXMsIGV4aXQsIFdlaWdodCgwKSk7CisgICAgICAgIGJvb2wg
c3RydWN0dXJlc0NoZWNrZWQgPSBtX2ludGVycHJldGVyLmZvck5vZGUobV9ub2RlLT5jaGlsZDEo
KSkubV9zdHJ1Y3R1cmUuaXNTdWJzZXRPZihiYXNlU2V0KTsKKyAgICAgICAgZW1pdFN3aXRjaEZv
ck11bHRpQnlPZmZzZXQoYmFzZSwgc3RydWN0dXJlc0NoZWNrZWQsIGNhc2VzLCBleGl0KTsKICAg
ICAgICAgCiAgICAgICAgIExCYXNpY0Jsb2NrIGxhc3ROZXh0ID0gbV9vdXQubV9uZXh0QmxvY2s7
CiAgICAgICAgIApAQCAtNjUwNCw3ICs2NDk2LDcgQEAgcHJpdmF0ZToKICAgICAgICAgfQogICAg
ICAgICAKICAgICAgICAgbV9vdXQuYXBwZW5kVG8oZXhpdCwgY29udGludWF0aW9uKTsKLSAgICAg
ICAgaWYgKCFtX2ludGVycHJldGVyLmZvck5vZGUobV9ub2RlLT5jaGlsZDEoKSkubV9zdHJ1Y3R1
cmUuaXNTdWJzZXRPZihiYXNlU2V0KSkKKyAgICAgICAgaWYgKCFzdHJ1Y3R1cmVzQ2hlY2tlZCkK
ICAgICAgICAgICAgIHNwZWN1bGF0ZShCYWRDYWNoZSwgbm9WYWx1ZSgpLCBudWxscHRyLCBtX291
dC5ib29sZWFuVHJ1ZSk7CiAgICAgICAgIG1fb3V0LnVucmVhY2hhYmxlKCk7CiAgICAgICAgIApA
QCAtNjU0NCw4ICs2NTM2LDggQEAgcHJpdmF0ZToKICAgICAgICAgICAgICAgICBjYXNlcy5hcHBl
bmQoU3dpdGNoQ2FzZSh3ZWFrU3RydWN0dXJlSUQoc3RydWN0dXJlKSwgYmxvY2tzW2ldLCBXZWln
aHQoMSkpKTsKICAgICAgICAgICAgIH0KICAgICAgICAgfQotICAgICAgICBtX291dC5zd2l0Y2hJ
bnN0cnVjdGlvbigKLSAgICAgICAgICAgIG1fb3V0LmxvYWQzMihiYXNlLCBtX2hlYXBzLkpTQ2Vs
bF9zdHJ1Y3R1cmVJRCksIGNhc2VzLCBleGl0LCBXZWlnaHQoMCkpOworICAgICAgICBib29sIHN0
cnVjdHVyZXNDaGVja2VkID0gbV9pbnRlcnByZXRlci5mb3JOb2RlKG1fbm9kZS0+Y2hpbGQxKCkp
Lm1fc3RydWN0dXJlLmlzU3Vic2V0T2YoYmFzZVNldCk7CisgICAgICAgIGVtaXRTd2l0Y2hGb3JN
dWx0aUJ5T2Zmc2V0KGJhc2UsIHN0cnVjdHVyZXNDaGVja2VkLCBjYXNlcywgZXhpdCk7CiAgICAg
ICAgIAogICAgICAgICBMQmFzaWNCbG9jayBsYXN0TmV4dCA9IG1fb3V0Lm1fbmV4dEJsb2NrOwog
ICAgICAgICAKQEAgLTY1ODcsNyArNjU3OSw3IEBAIHByaXZhdGU6CiAgICAgICAgIH0KICAgICAg
ICAgCiAgICAgICAgIG1fb3V0LmFwcGVuZFRvKGV4aXQsIGNvbnRpbnVhdGlvbik7Ci0gICAgICAg
IGlmICghbV9pbnRlcnByZXRlci5mb3JOb2RlKG1fbm9kZS0+Y2hpbGQxKCkpLm1fc3RydWN0dXJl
LmlzU3Vic2V0T2YoYmFzZVNldCkpCisgICAgICAgIGlmICghc3RydWN0dXJlc0NoZWNrZWQpCiAg
ICAgICAgICAgICBzcGVjdWxhdGUoQmFkQ2FjaGUsIG5vVmFsdWUoKSwgbnVsbHB0ciwgbV9vdXQu
Ym9vbGVhblRydWUpOwogICAgICAgICBtX291dC51bnJlYWNoYWJsZSgpOwogICAgICAgICAKQEAg
LTEyMDMwLDYgKzEyMDIyLDI5IEBAIHByaXZhdGU6CiAgICAgICAgIHNldEpTVmFsdWUocGF0Y2hw
b2ludCk7CiAgICAgfQogICAgIAorICAgIHZvaWQgZW1pdFN3aXRjaEZvck11bHRpQnlPZmZzZXQo
TFZhbHVlIGJhc2UsIGJvb2wgc3RydWN0dXJlc0NoZWNrZWQsIFZlY3RvcjxTd2l0Y2hDYXNlLCAy
PiYgY2FzZXMsIExCYXNpY0Jsb2NrIGV4aXQpCisgICAgeworICAgICAgICBpZiAoY2FzZXMuaXNF
bXB0eSgpKSB7CisgICAgICAgICAgICBtX291dC5qdW1wKGV4aXQpOworICAgICAgICAgICAgcmV0
dXJuOworICAgICAgICB9CisgICAgICAgIAorICAgICAgICBpZiAoc3RydWN0dXJlc0NoZWNrZWQp
IHsKKyAgICAgICAgICAgIHN0ZDo6c29ydCgKKyAgICAgICAgICAgICAgICBjYXNlcy5iZWdpbigp
LCBjYXNlcy5lbmQoKSwKKyAgICAgICAgICAgICAgICBbJl0gKGNvbnN0IFN3aXRjaENhc2UmIGEs
IGNvbnN0IFN3aXRjaENhc2UmIGIpIC0+IGJvb2wgeworICAgICAgICAgICAgICAgICAgICByZXR1
cm4gYS52YWx1ZSgpLT5hc0ludCgpIDwgYi52YWx1ZSgpLT5hc0ludCgpOworICAgICAgICAgICAg
ICAgIH0pOworICAgICAgICAgICAgU3dpdGNoQ2FzZSBsYXN0ID0gY2FzZXMudGFrZUxhc3QoKTsK
KyAgICAgICAgICAgIG1fb3V0LnN3aXRjaEluc3RydWN0aW9uKAorICAgICAgICAgICAgICAgIG1f
b3V0LmxvYWQzMihiYXNlLCBtX2hlYXBzLkpTQ2VsbF9zdHJ1Y3R1cmVJRCksIGNhc2VzLCBsYXN0
LnRhcmdldCgpLCBXZWlnaHQoMCkpOworICAgICAgICAgICAgcmV0dXJuOworICAgICAgICB9Cisg
ICAgICAgIAorICAgICAgICBtX291dC5zd2l0Y2hJbnN0cnVjdGlvbigKKyAgICAgICAgICAgIG1f
b3V0LmxvYWQzMihiYXNlLCBtX2hlYXBzLkpTQ2VsbF9zdHJ1Y3R1cmVJRCksIGNhc2VzLCBleGl0
LCBXZWlnaHQoMCkpOworICAgIH0KKyAgICAKICAgICB2b2lkIGNvbXBhcmVFcU9iamVjdE9yT3Ro
ZXJUb09iamVjdChFZGdlIGxlZnRDaGlsZCwgRWRnZSByaWdodENoaWxkKQogICAgIHsKICAgICAg
ICAgTFZhbHVlIHJpZ2h0Q2VsbCA9IGxvd0NlbGwocmlnaHRDaGlsZCk7Cg==
</data>
<flag name="review"
          id="356936"
          type_id="1"
          status="+"
          setter="saam"
    />
          </attachment>
      

    </bug>

</bugzilla>