<?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>125426</bug_id>
          
          <creation_ts>2013-12-08 13:02:24 -0800</creation_ts>
          <short_desc>FTL should support UntypedUse versions of Compare nodes</short_desc>
          <delta_ts>2013-12-08 17:04:12 -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>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>
          
          <blocked>112840</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="Filip Pizlo">fpizlo</reporter>
          <assigned_to name="Filip Pizlo">fpizlo</assigned_to>
          <cc>barraclough</cc>
    
    <cc>ggaren</cc>
    
    <cc>mark.lam</cc>
    
    <cc>mhahnenberg</cc>
    
    <cc>msaboff</cc>
    
    <cc>nrotem</cc>
    
    <cc>oliver</cc>
    
    <cc>sam</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>957702</commentid>
    <comment_count>0</comment_count>
    <who name="Filip Pizlo">fpizlo</who>
    <bug_when>2013-12-08 13:02:24 -0800</bug_when>
    <thetext>Patch forthcoming.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>957704</commentid>
    <comment_count>1</comment_count>
      <attachid>218709</attachid>
    <who name="Filip Pizlo">fpizlo</who>
    <bug_when>2013-12-08 13:05:21 -0800</bug_when>
    <thetext>Created attachment 218709
the patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>957730</commentid>
    <comment_count>2</comment_count>
    <who name="Filip Pizlo">fpizlo</who>
    <bug_when>2013-12-08 17:04:12 -0800</bug_when>
    <thetext>Landed in http://trac.webkit.org/changeset/160294</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>218709</attachid>
            <date>2013-12-08 13:05:21 -0800</date>
            <delta_ts>2013-12-08 15:02:29 -0800</delta_ts>
            <desc>the patch</desc>
            <filename>blah.patch</filename>
            <type>text/plain</type>
            <size>19772</size>
            <attacher name="Filip Pizlo">fpizlo</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9DaGFuZ2VMb2cKPT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291
cmNlL0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwkocmV2aXNpb24gMTYwMjkzKQorKysgU291cmNl
L0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDU5IEBA
CisyMDEzLTEyLTA4ICBGaWxpcCBQaXpsbyAgPGZwaXpsb0BhcHBsZS5jb20+CisKKyAgICAgICAg
RlRMIHNob3VsZCBzdXBwb3J0IFVudHlwZWRVc2UgdmVyc2lvbnMgb2YgQ29tcGFyZSBub2Rlcwor
ICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTI1NDI2CisK
KyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisgICAgICAgIAorICAgICAgICBU
aGlzIGFkZHMgVW50eXBlZFVzZSB2ZXJzaW9ucyBvZiBhbGwgY29tcGFyaXNvbnMgZXhjZXB0IENv
bXBhcmVTdHJpY3RFcSwgd2hpY2ggaXMKKyAgICAgICAgc3VmZmljaWVudGx5IGRpZmZlcmVudCB0
aGF0IEkgdGhvdWdodCBJJ2QgZG8gaXQgaW4gYW5vdGhlciBwYXRjaC4KKyAgICAgICAgCisgICAg
ICAgIFRoaXMgYWxzbyBleHRlbmRzIG91ciBhYmlsaXR5IHRvIGFic3RyYWN0IG92ZXIgY29tcGFy
aXNvbiBraW5kIGFuZCByZW1vdmVzIGEgYnVuY2ggb2YKKyAgICAgICAgY29weS1wYXN0ZSBjb2Rl
LgorCisgICAgICAgICogZGZnL0RGR1NwZWN1bGF0aXZlSklUNjQuY3BwOgorICAgICAgICAoSlND
OjpERkc6OlNwZWN1bGF0aXZlSklUOjpub25TcGVjdWxhdGl2ZU5vblBlZXBob2xlQ29tcGFyZSk6
CisgICAgICAgICogZnRsL0ZUTENhcGFiaWxpdGllcy5jcHA6CisgICAgICAgIChKU0M6OkZUTDo6
Y2FuQ29tcGlsZSk6CisgICAgICAgICogZnRsL0ZUTEludHJpbnNpY1JlcG9zaXRvcnkuaDoKKyAg
ICAgICAgKiBmdGwvRlRMTG93ZXJERkdUb0xMVk0uY3BwOgorICAgICAgICAoSlNDOjpGVEw6Okxv
d2VyREZHVG9MTFZNOjpjb21waWxlQ29tcGFyZUVxKToKKyAgICAgICAgKEpTQzo6RlRMOjpMb3dl
ckRGR1RvTExWTTo6Y29tcGlsZUNvbXBhcmVMZXNzKToKKyAgICAgICAgKEpTQzo6RlRMOjpMb3dl
ckRGR1RvTExWTTo6Y29tcGlsZUNvbXBhcmVMZXNzRXEpOgorICAgICAgICAoSlNDOjpGVEw6Okxv
d2VyREZHVG9MTFZNOjpjb21waWxlQ29tcGFyZUdyZWF0ZXIpOgorICAgICAgICAoSlNDOjpGVEw6
Okxvd2VyREZHVG9MTFZNOjpjb21waWxlQ29tcGFyZUdyZWF0ZXJFcSk6CisgICAgICAgIChKU0M6
OkZUTDo6TG93ZXJERkdUb0xMVk06OmNvbXBhcmUpOgorICAgICAgICAoSlNDOjpGVEw6Okxvd2Vy
REZHVG9MTFZNOjpub25TcGVjdWxhdGl2ZUNvbXBhcmUpOgorICAgICAgICAqIGZ0bC9GVExPdXRw
dXQuaDoKKyAgICAgICAgKEpTQzo6RlRMOjpPdXRwdXQ6OmljbXApOgorICAgICAgICAoSlNDOjpG
VEw6Ok91dHB1dDo6ZXF1YWwpOgorICAgICAgICAoSlNDOjpGVEw6Ok91dHB1dDo6bm90RXF1YWwp
OgorICAgICAgICAoSlNDOjpGVEw6Ok91dHB1dDo6YWJvdmUpOgorICAgICAgICAoSlNDOjpGVEw6
Ok91dHB1dDo6YWJvdmVPckVxdWFsKToKKyAgICAgICAgKEpTQzo6RlRMOjpPdXRwdXQ6OmJlbG93
KToKKyAgICAgICAgKEpTQzo6RlRMOjpPdXRwdXQ6OmJlbG93T3JFcXVhbCk6CisgICAgICAgIChK
U0M6OkZUTDo6T3V0cHV0OjpncmVhdGVyVGhhbik6CisgICAgICAgIChKU0M6OkZUTDo6T3V0cHV0
OjpncmVhdGVyVGhhbk9yRXF1YWwpOgorICAgICAgICAoSlNDOjpGVEw6Ok91dHB1dDo6bGVzc1Ro
YW4pOgorICAgICAgICAoSlNDOjpGVEw6Ok91dHB1dDo6bGVzc1RoYW5PckVxdWFsKToKKyAgICAg
ICAgKEpTQzo6RlRMOjpPdXRwdXQ6OmZjbXApOgorICAgICAgICAoSlNDOjpGVEw6Ok91dHB1dDo6
ZG91YmxlRXF1YWwpOgorICAgICAgICAoSlNDOjpGVEw6Ok91dHB1dDo6ZG91YmxlTm90RXF1YWxP
clVub3JkZXJlZCk6CisgICAgICAgIChKU0M6OkZUTDo6T3V0cHV0Ojpkb3VibGVMZXNzVGhhbik6
CisgICAgICAgIChKU0M6OkZUTDo6T3V0cHV0Ojpkb3VibGVMZXNzVGhhbk9yRXF1YWwpOgorICAg
ICAgICAoSlNDOjpGVEw6Ok91dHB1dDo6ZG91YmxlR3JlYXRlclRoYW4pOgorICAgICAgICAoSlND
OjpGVEw6Ok91dHB1dDo6ZG91YmxlR3JlYXRlclRoYW5PckVxdWFsKToKKyAgICAgICAgKEpTQzo6
RlRMOjpPdXRwdXQ6OmRvdWJsZUVxdWFsT3JVbm9yZGVyZWQpOgorICAgICAgICAoSlNDOjpGVEw6
Ok91dHB1dDo6ZG91YmxlTm90RXF1YWwpOgorICAgICAgICAoSlNDOjpGVEw6Ok91dHB1dDo6ZG91
YmxlTGVzc1RoYW5PclVub3JkZXJlZCk6CisgICAgICAgIChKU0M6OkZUTDo6T3V0cHV0Ojpkb3Vi
bGVMZXNzVGhhbk9yRXF1YWxPclVub3JkZXJlZCk6CisgICAgICAgIChKU0M6OkZUTDo6T3V0cHV0
Ojpkb3VibGVHcmVhdGVyVGhhbk9yVW5vcmRlcmVkKToKKyAgICAgICAgKEpTQzo6RlRMOjpPdXRw
dXQ6OmRvdWJsZUdyZWF0ZXJUaGFuT3JFcXVhbE9yVW5vcmRlcmVkKToKKyAgICAgICAgKiB0ZXN0
cy9zdHJlc3MvdW50eXBlZC1lcXVhbGl0eS5qczogQWRkZWQuCisgICAgICAgIChmb28pOgorICAg
ICAgICAqIHRlc3RzL3N0cmVzcy91bnR5cGVkLWxlc3MtdGhhbi5qczogQWRkZWQuCisgICAgICAg
IChmb28pOgorCiAyMDEzLTEyLTA3ICBGaWxpcCBQaXpsbyAgPGZwaXpsb0BhcHBsZS5jb20+CiAK
ICAgICAgICAgRm9sZCB0eXBlZEFycmF5Lmxlbmd0aCBpZiB0eXBlZEFycmF5IGlzIGNvbnN0YW50
CkluZGV4OiBTb3VyY2UvSmF2YVNjcmlwdENvcmUvZGZnL0RGR1NwZWN1bGF0aXZlSklUNjQuY3Bw
Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT0KLS0tIFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9kZmcvREZHU3BlY3VsYXRpdmVK
SVQ2NC5jcHAJKHJldmlzaW9uIDE2MDI5MykKKysrIFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9kZmcv
REZHU3BlY3VsYXRpdmVKSVQ2NC5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTQ4Niw2ICs0ODYsNyBA
QCBwcml2YXRlOgogCiB2b2lkIFNwZWN1bGF0aXZlSklUOjpub25TcGVjdWxhdGl2ZU5vblBlZXBo
b2xlQ29tcGFyZShOb2RlKiBub2RlLCBNYWNyb0Fzc2VtYmxlcjo6UmVsYXRpb25hbENvbmRpdGlv
biBjb25kLCBTX0pJVE9wZXJhdGlvbl9FSkogaGVscGVyRnVuY3Rpb24pCiB7CisgICAgQVNTRVJU
KG5vZGUtPmlzQmluYXJ5VXNlS2luZChVbnR5cGVkVXNlKSk7CiAgICAgSlNWYWx1ZU9wZXJhbmQg
YXJnMSh0aGlzLCBub2RlLT5jaGlsZDEoKSk7CiAgICAgSlNWYWx1ZU9wZXJhbmQgYXJnMih0aGlz
LCBub2RlLT5jaGlsZDIoKSk7CiAgICAgR1BSUmVnIGFyZzFHUFIgPSBhcmcxLmdwcigpOwpJbmRl
eDogU291cmNlL0phdmFTY3JpcHRDb3JlL2Z0bC9GVExDYXBhYmlsaXRpZXMuY3BwCj09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT0KLS0tIFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9mdGwvRlRMQ2FwYWJpbGl0aWVzLmNwcAkocmV2
aXNpb24gMTYwMjkzKQorKysgU291cmNlL0phdmFTY3JpcHRDb3JlL2Z0bC9GVExDYXBhYmlsaXRp
ZXMuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC0xNzksNiArMTc5LDE3IEBAIGlubGluZSBDYXBhYmls
aXR5TGV2ZWwgY2FuQ29tcGlsZShOb2RlKiAKICAgICAgICAgfQogICAgICAgICBicmVhazsKICAg
ICBjYXNlIENvbXBhcmVFcToKKyAgICAgICAgaWYgKG5vZGUtPmlzQmluYXJ5VXNlS2luZChJbnQz
MlVzZSkpCisgICAgICAgICAgICBicmVhazsKKyAgICAgICAgaWYgKG5vZGUtPmlzQmluYXJ5VXNl
S2luZChNYWNoaW5lSW50VXNlKSkKKyAgICAgICAgICAgIGJyZWFrOworICAgICAgICBpZiAobm9k
ZS0+aXNCaW5hcnlVc2VLaW5kKE51bWJlclVzZSkpCisgICAgICAgICAgICBicmVhazsKKyAgICAg
ICAgaWYgKG5vZGUtPmlzQmluYXJ5VXNlS2luZChPYmplY3RVc2UpKQorICAgICAgICAgICAgYnJl
YWs7CisgICAgICAgIGlmIChub2RlLT5pc0JpbmFyeVVzZUtpbmQoVW50eXBlZFVzZSkpCisgICAg
ICAgICAgICBicmVhazsKKyAgICAgICAgcmV0dXJuIENhbm5vdENvbXBpbGU7CiAgICAgY2FzZSBD
b21wYXJlU3RyaWN0RXE6CiAgICAgICAgIGlmIChub2RlLT5pc0JpbmFyeVVzZUtpbmQoSW50MzJV
c2UpKQogICAgICAgICAgICAgYnJlYWs7CkBAIC0xOTksNiArMjEwLDggQEAgaW5saW5lIENhcGFi
aWxpdHlMZXZlbCBjYW5Db21waWxlKE5vZGUqIAogICAgICAgICAgICAgYnJlYWs7CiAgICAgICAg
IGlmIChub2RlLT5pc0JpbmFyeVVzZUtpbmQoTnVtYmVyVXNlKSkKICAgICAgICAgICAgIGJyZWFr
OworICAgICAgICBpZiAobm9kZS0+aXNCaW5hcnlVc2VLaW5kKFVudHlwZWRVc2UpKQorICAgICAg
ICAgICAgYnJlYWs7CiAgICAgICAgIHJldHVybiBDYW5ub3RDb21waWxlOwogICAgIGNhc2UgU3dp
dGNoOgogICAgICAgICBzd2l0Y2ggKG5vZGUtPnN3aXRjaERhdGEoKS0+a2luZCkgewpJbmRleDog
U291cmNlL0phdmFTY3JpcHRDb3JlL2Z0bC9GVExJbnRyaW5zaWNSZXBvc2l0b3J5LmgKPT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PQotLS0gU291cmNlL0phdmFTY3JpcHRDb3JlL2Z0bC9GVExJbnRyaW5zaWNSZXBvc2l0b3J5
LmgJKHJldmlzaW9uIDE2MDI5MykKKysrIFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9mdGwvRlRMSW50
cmluc2ljUmVwb3NpdG9yeS5oCSh3b3JraW5nIGNvcHkpCkBAIC02Nyw2ICs2Nyw3IEBAIG5hbWVz
cGFjZSBKU0MgeyBuYW1lc3BhY2UgRlRMIHsKICAgICBtYWNybyhQX0pJVE9wZXJhdGlvbl9FU3RT
UywgZnVuY3Rpb25UeXBlKGludFB0ciwgaW50UHRyLCBpbnRQdHIsIGludFB0ciwgaW50UHRyKSkg
XAogICAgIG1hY3JvKFBfSklUT3BlcmF0aW9uX0VTdFosIGZ1bmN0aW9uVHlwZShpbnRQdHIsIGlu
dFB0ciwgaW50UHRyLCBpbnQzMikpIFwKICAgICBtYWNybyhTX0pJVE9wZXJhdGlvbl9FSiwgZnVu
Y3Rpb25UeXBlKGludFB0ciwgaW50UHRyLCBpbnQ2NCkpIFwKKyAgICBtYWNybyhTX0pJVE9wZXJh
dGlvbl9FSkosIGZ1bmN0aW9uVHlwZShpbnRQdHIsIGludFB0ciwgaW50NjQsIGludDY0KSkgXAog
ICAgIG1hY3JvKFZfSklUT3BlcmF0aW9uX0VKSkosIGZ1bmN0aW9uVHlwZSh2b2lkVHlwZSwgaW50
UHRyLCBpbnQ2NCwgaW50NjQsIGludDY0KSkgXAogICAgIG1hY3JvKFZfSklUT3BlcmF0aW9uX0VP
WkQsIGZ1bmN0aW9uVHlwZSh2b2lkVHlwZSwgaW50UHRyLCBpbnRQdHIsIGludDMyLCBkb3VibGVU
eXBlKSkgXAogICAgIG1hY3JvKFZfSklUT3BlcmF0aW9uX0VPWkosIGZ1bmN0aW9uVHlwZSh2b2lk
VHlwZSwgaW50UHRyLCBpbnRQdHIsIGludDMyLCBpbnQ2NCkpIFwKSW5kZXg6IFNvdXJjZS9KYXZh
U2NyaXB0Q29yZS9mdGwvRlRMTG93ZXJERkdUb0xMVk0uY3BwCj09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJj
ZS9KYXZhU2NyaXB0Q29yZS9mdGwvRlRMTG93ZXJERkdUb0xMVk0uY3BwCShyZXZpc2lvbiAxNjAy
OTMpCisrKyBTb3VyY2UvSmF2YVNjcmlwdENvcmUvZnRsL0ZUTExvd2VyREZHVG9MTFZNLmNwcAko
d29ya2luZyBjb3B5KQpAQCAtMjM5Niw2ICsyMzk2LDExIEBAIHByaXZhdGU6CiAgICAgICAgICAg
ICByZXR1cm47CiAgICAgICAgIH0KICAgICAgICAgCisgICAgICAgIGlmIChtX25vZGUtPmlzQmlu
YXJ5VXNlS2luZChVbnR5cGVkVXNlKSkgeworICAgICAgICAgICAgbm9uU3BlY3VsYXRpdmVDb21w
YXJlKExMVk1JbnRFUSwgb3BlcmF0aW9uQ29tcGFyZUVxKTsKKyAgICAgICAgICAgIHJldHVybjsK
KyAgICAgICAgfQorICAgICAgICAKICAgICAgICAgUkVMRUFTRV9BU1NFUlRfTk9UX1JFQUNIRUQo
KTsKICAgICB9CiAgICAgCkBAIC0yNDY0LDEwNiArMjQ2OSwyMiBAQCBwcml2YXRlOgogICAgIAog
ICAgIHZvaWQgY29tcGlsZUNvbXBhcmVMZXNzKCkKICAgICB7Ci0gICAgICAgIGlmIChtX25vZGUt
PmlzQmluYXJ5VXNlS2luZChJbnQzMlVzZSkpIHsKLSAgICAgICAgICAgIHNldEJvb2xlYW4oCi0g
ICAgICAgICAgICAgICAgbV9vdXQubGVzc1RoYW4obG93SW50MzIobV9ub2RlLT5jaGlsZDEoKSks
IGxvd0ludDMyKG1fbm9kZS0+Y2hpbGQyKCkpKSk7Ci0gICAgICAgICAgICByZXR1cm47Ci0gICAg
ICAgIH0KLSAgICAgICAgCi0gICAgICAgIGlmIChtX25vZGUtPmlzQmluYXJ5VXNlS2luZChNYWNo
aW5lSW50VXNlKSkgewotICAgICAgICAgICAgSW50NTJLaW5kIGtpbmQ7Ci0gICAgICAgICAgICBM
VmFsdWUgbGVmdCA9IGxvd1doaWNoZXZlckludDUyKG1fbm9kZS0+Y2hpbGQxKCksIGtpbmQpOwot
ICAgICAgICAgICAgTFZhbHVlIHJpZ2h0ID0gbG93SW50NTIobV9ub2RlLT5jaGlsZDIoKSwga2lu
ZCk7Ci0gICAgICAgICAgICBzZXRCb29sZWFuKG1fb3V0Lmxlc3NUaGFuKGxlZnQsIHJpZ2h0KSk7
Ci0gICAgICAgICAgICByZXR1cm47Ci0gICAgICAgIH0KLSAgICAgICAgCi0gICAgICAgIGlmICht
X25vZGUtPmlzQmluYXJ5VXNlS2luZChOdW1iZXJVc2UpKSB7Ci0gICAgICAgICAgICBzZXRCb29s
ZWFuKAotICAgICAgICAgICAgICAgIG1fb3V0LmRvdWJsZUxlc3NUaGFuKGxvd0RvdWJsZShtX25v
ZGUtPmNoaWxkMSgpKSwgbG93RG91YmxlKG1fbm9kZS0+Y2hpbGQyKCkpKSk7Ci0gICAgICAgICAg
ICByZXR1cm47Ci0gICAgICAgIH0KLSAgICAgICAgCi0gICAgICAgIFJFTEVBU0VfQVNTRVJUX05P
VF9SRUFDSEVEKCk7CisgICAgICAgIGNvbXBhcmUoTExWTUludFNMVCwgTExWTVJlYWxPTFQsIG9w
ZXJhdGlvbkNvbXBhcmVMZXNzKTsKICAgICB9CiAgICAgCiAgICAgdm9pZCBjb21waWxlQ29tcGFy
ZUxlc3NFcSgpCiAgICAgewotICAgICAgICBpZiAobV9ub2RlLT5pc0JpbmFyeVVzZUtpbmQoSW50
MzJVc2UpKSB7Ci0gICAgICAgICAgICBzZXRCb29sZWFuKAotICAgICAgICAgICAgICAgIG1fb3V0
Lmxlc3NUaGFuT3JFcXVhbChsb3dJbnQzMihtX25vZGUtPmNoaWxkMSgpKSwgbG93SW50MzIobV9u
b2RlLT5jaGlsZDIoKSkpKTsKLSAgICAgICAgICAgIHJldHVybjsKLSAgICAgICAgfQotICAgICAg
ICAKLSAgICAgICAgaWYgKG1fbm9kZS0+aXNCaW5hcnlVc2VLaW5kKE1hY2hpbmVJbnRVc2UpKSB7
Ci0gICAgICAgICAgICBJbnQ1MktpbmQga2luZDsKLSAgICAgICAgICAgIExWYWx1ZSBsZWZ0ID0g
bG93V2hpY2hldmVySW50NTIobV9ub2RlLT5jaGlsZDEoKSwga2luZCk7Ci0gICAgICAgICAgICBM
VmFsdWUgcmlnaHQgPSBsb3dJbnQ1MihtX25vZGUtPmNoaWxkMigpLCBraW5kKTsKLSAgICAgICAg
ICAgIHNldEJvb2xlYW4obV9vdXQubGVzc1RoYW5PckVxdWFsKGxlZnQsIHJpZ2h0KSk7Ci0gICAg
ICAgICAgICByZXR1cm47Ci0gICAgICAgIH0KLSAgICAgICAgCi0gICAgICAgIGlmIChtX25vZGUt
PmlzQmluYXJ5VXNlS2luZChOdW1iZXJVc2UpKSB7Ci0gICAgICAgICAgICBzZXRCb29sZWFuKAot
ICAgICAgICAgICAgICAgIG1fb3V0LmRvdWJsZUxlc3NUaGFuT3JFcXVhbCgKLSAgICAgICAgICAg
ICAgICAgICAgbG93RG91YmxlKG1fbm9kZS0+Y2hpbGQxKCkpLCBsb3dEb3VibGUobV9ub2RlLT5j
aGlsZDIoKSkpKTsKLSAgICAgICAgICAgIHJldHVybjsKLSAgICAgICAgfQotICAgICAgICAKLSAg
ICAgICAgUkVMRUFTRV9BU1NFUlRfTk9UX1JFQUNIRUQoKTsKKyAgICAgICAgY29tcGFyZShMTFZN
SW50U0xFLCBMTFZNUmVhbE9MRSwgb3BlcmF0aW9uQ29tcGFyZUxlc3NFcSk7CiAgICAgfQogICAg
IAogICAgIHZvaWQgY29tcGlsZUNvbXBhcmVHcmVhdGVyKCkKICAgICB7Ci0gICAgICAgIGlmICht
X25vZGUtPmlzQmluYXJ5VXNlS2luZChJbnQzMlVzZSkpIHsKLSAgICAgICAgICAgIHNldEJvb2xl
YW4oCi0gICAgICAgICAgICAgICAgbV9vdXQuZ3JlYXRlclRoYW4obG93SW50MzIobV9ub2RlLT5j
aGlsZDEoKSksIGxvd0ludDMyKG1fbm9kZS0+Y2hpbGQyKCkpKSk7Ci0gICAgICAgICAgICByZXR1
cm47Ci0gICAgICAgIH0KLSAgICAgICAgCi0gICAgICAgIGlmIChtX25vZGUtPmlzQmluYXJ5VXNl
S2luZChNYWNoaW5lSW50VXNlKSkgewotICAgICAgICAgICAgSW50NTJLaW5kIGtpbmQ7Ci0gICAg
ICAgICAgICBMVmFsdWUgbGVmdCA9IGxvd1doaWNoZXZlckludDUyKG1fbm9kZS0+Y2hpbGQxKCks
IGtpbmQpOwotICAgICAgICAgICAgTFZhbHVlIHJpZ2h0ID0gbG93SW50NTIobV9ub2RlLT5jaGls
ZDIoKSwga2luZCk7Ci0gICAgICAgICAgICBzZXRCb29sZWFuKG1fb3V0LmdyZWF0ZXJUaGFuKGxl
ZnQsIHJpZ2h0KSk7Ci0gICAgICAgICAgICByZXR1cm47Ci0gICAgICAgIH0KLSAgICAgICAgCi0g
ICAgICAgIGlmIChtX25vZGUtPmlzQmluYXJ5VXNlS2luZChOdW1iZXJVc2UpKSB7Ci0gICAgICAg
ICAgICBzZXRCb29sZWFuKAotICAgICAgICAgICAgICAgIG1fb3V0LmRvdWJsZUdyZWF0ZXJUaGFu
KAotICAgICAgICAgICAgICAgICAgICBsb3dEb3VibGUobV9ub2RlLT5jaGlsZDEoKSksIGxvd0Rv
dWJsZShtX25vZGUtPmNoaWxkMigpKSkpOwotICAgICAgICAgICAgcmV0dXJuOwotICAgICAgICB9
Ci0gICAgICAgIAotICAgICAgICBSRUxFQVNFX0FTU0VSVF9OT1RfUkVBQ0hFRCgpOworICAgICAg
ICBjb21wYXJlKExMVk1JbnRTR1QsIExMVk1SZWFsT0dULCBvcGVyYXRpb25Db21wYXJlR3JlYXRl
cik7CiAgICAgfQogICAgIAogICAgIHZvaWQgY29tcGlsZUNvbXBhcmVHcmVhdGVyRXEoKQogICAg
IHsKLSAgICAgICAgaWYgKG1fbm9kZS0+aXNCaW5hcnlVc2VLaW5kKEludDMyVXNlKSkgewotICAg
ICAgICAgICAgc2V0Qm9vbGVhbigKLSAgICAgICAgICAgICAgICBtX291dC5ncmVhdGVyVGhhbk9y
RXF1YWwoCi0gICAgICAgICAgICAgICAgICAgIGxvd0ludDMyKG1fbm9kZS0+Y2hpbGQxKCkpLCBs
b3dJbnQzMihtX25vZGUtPmNoaWxkMigpKSkpOwotICAgICAgICAgICAgcmV0dXJuOwotICAgICAg
ICB9Ci0gICAgICAgIAotICAgICAgICBpZiAobV9ub2RlLT5pc0JpbmFyeVVzZUtpbmQoTWFjaGlu
ZUludFVzZSkpIHsKLSAgICAgICAgICAgIEludDUyS2luZCBraW5kOwotICAgICAgICAgICAgTFZh
bHVlIGxlZnQgPSBsb3dXaGljaGV2ZXJJbnQ1MihtX25vZGUtPmNoaWxkMSgpLCBraW5kKTsKLSAg
ICAgICAgICAgIExWYWx1ZSByaWdodCA9IGxvd0ludDUyKG1fbm9kZS0+Y2hpbGQyKCksIGtpbmQp
OwotICAgICAgICAgICAgc2V0Qm9vbGVhbihtX291dC5ncmVhdGVyVGhhbk9yRXF1YWwobGVmdCwg
cmlnaHQpKTsKLSAgICAgICAgICAgIHJldHVybjsKLSAgICAgICAgfQotICAgICAgICAKLSAgICAg
ICAgaWYgKG1fbm9kZS0+aXNCaW5hcnlVc2VLaW5kKE51bWJlclVzZSkpIHsKLSAgICAgICAgICAg
IHNldEJvb2xlYW4oCi0gICAgICAgICAgICAgICAgbV9vdXQuZG91YmxlR3JlYXRlclRoYW5PckVx
dWFsKAotICAgICAgICAgICAgICAgICAgICBsb3dEb3VibGUobV9ub2RlLT5jaGlsZDEoKSksIGxv
d0RvdWJsZShtX25vZGUtPmNoaWxkMigpKSkpOwotICAgICAgICAgICAgcmV0dXJuOwotICAgICAg
ICB9Ci0gICAgICAgIAotICAgICAgICBSRUxFQVNFX0FTU0VSVF9OT1RfUkVBQ0hFRCgpOworICAg
ICAgICBjb21wYXJlKExMVk1JbnRTR0UsIExMVk1SZWFsT0dFLCBvcGVyYXRpb25Db21wYXJlR3Jl
YXRlckVxKTsKICAgICB9CiAgICAgCiAgICAgdm9pZCBjb21waWxlTG9naWNhbE5vdCgpCkBAIC0y
ODAwLDYgKzI3MjEsNjkgQEAgcHJpdmF0ZToKICAgICAgICAgICAgIG1fc3RhdGUuZm9yTm9kZShl
ZGdlKS5tX3ZhbHVlKTsKICAgICB9CiAgICAgCisgICAgdm9pZCBjb21wYXJlKAorICAgICAgICBM
SW50UHJlZGljYXRlIGludENvbmRpdGlvbiwgTFJlYWxQcmVkaWNhdGUgcmVhbENvbmRpdGlvbiwK
KyAgICAgICAgU19KSVRPcGVyYXRpb25fRUpKIGhlbHBlckZ1bmN0aW9uKQorICAgIHsKKyAgICAg
ICAgaWYgKG1fbm9kZS0+aXNCaW5hcnlVc2VLaW5kKEludDMyVXNlKSkgeworICAgICAgICAgICAg
TFZhbHVlIGxlZnQgPSBsb3dJbnQzMihtX25vZGUtPmNoaWxkMSgpKTsKKyAgICAgICAgICAgIExW
YWx1ZSByaWdodCA9IGxvd0ludDMyKG1fbm9kZS0+Y2hpbGQyKCkpOworICAgICAgICAgICAgc2V0
Qm9vbGVhbihtX291dC5pY21wKGludENvbmRpdGlvbiwgbGVmdCwgcmlnaHQpKTsKKyAgICAgICAg
ICAgIHJldHVybjsKKyAgICAgICAgfQorICAgICAgICAKKyAgICAgICAgaWYgKG1fbm9kZS0+aXNC
aW5hcnlVc2VLaW5kKE1hY2hpbmVJbnRVc2UpKSB7CisgICAgICAgICAgICBJbnQ1MktpbmQga2lu
ZDsKKyAgICAgICAgICAgIExWYWx1ZSBsZWZ0ID0gbG93V2hpY2hldmVySW50NTIobV9ub2RlLT5j
aGlsZDEoKSwga2luZCk7CisgICAgICAgICAgICBMVmFsdWUgcmlnaHQgPSBsb3dJbnQ1MihtX25v
ZGUtPmNoaWxkMigpLCBraW5kKTsKKyAgICAgICAgICAgIHNldEJvb2xlYW4obV9vdXQuaWNtcChp
bnRDb25kaXRpb24sIGxlZnQsIHJpZ2h0KSk7CisgICAgICAgICAgICByZXR1cm47CisgICAgICAg
IH0KKyAgICAgICAgCisgICAgICAgIGlmIChtX25vZGUtPmlzQmluYXJ5VXNlS2luZChOdW1iZXJV
c2UpKSB7CisgICAgICAgICAgICBMVmFsdWUgbGVmdCA9IGxvd0RvdWJsZShtX25vZGUtPmNoaWxk
MSgpKTsKKyAgICAgICAgICAgIExWYWx1ZSByaWdodCA9IGxvd0RvdWJsZShtX25vZGUtPmNoaWxk
MigpKTsKKyAgICAgICAgICAgIHNldEJvb2xlYW4obV9vdXQuZmNtcChyZWFsQ29uZGl0aW9uLCBs
ZWZ0LCByaWdodCkpOworICAgICAgICAgICAgcmV0dXJuOworICAgICAgICB9CisgICAgICAgIAor
ICAgICAgICBpZiAobV9ub2RlLT5pc0JpbmFyeVVzZUtpbmQoVW50eXBlZFVzZSkpIHsKKyAgICAg
ICAgICAgIG5vblNwZWN1bGF0aXZlQ29tcGFyZShpbnRDb25kaXRpb24sIGhlbHBlckZ1bmN0aW9u
KTsKKyAgICAgICAgICAgIHJldHVybjsKKyAgICAgICAgfQorICAgICAgICAKKyAgICAgICAgUkVM
RUFTRV9BU1NFUlRfTk9UX1JFQUNIRUQoKTsKKyAgICB9CisgICAgCisgICAgdm9pZCBub25TcGVj
dWxhdGl2ZUNvbXBhcmUoTEludFByZWRpY2F0ZSBpbnRDb25kaXRpb24sIFNfSklUT3BlcmF0aW9u
X0VKSiBoZWxwZXJGdW5jdGlvbikKKyAgICB7CisgICAgICAgIExWYWx1ZSBsZWZ0ID0gbG93SlNW
YWx1ZShtX25vZGUtPmNoaWxkMSgpKTsKKyAgICAgICAgTFZhbHVlIHJpZ2h0ID0gbG93SlNWYWx1
ZShtX25vZGUtPmNoaWxkMigpKTsKKyAgICAgICAgCisgICAgICAgIExCYXNpY0Jsb2NrIGxlZnRJ
c0ludCA9IEZUTF9ORVdfQkxPQ0sobV9vdXQsICgiQ29tcGFyZUVxIHVudHlwZWQgbGVmdCBpcyBp
bnQiKSk7CisgICAgICAgIExCYXNpY0Jsb2NrIGZhc3RQYXRoID0gRlRMX05FV19CTE9DSyhtX291
dCwgKCJDb21wYXJlRXEgdW50eXBlZCBmYXN0IHBhdGgiKSk7CisgICAgICAgIExCYXNpY0Jsb2Nr
IHNsb3dQYXRoID0gRlRMX05FV19CTE9DSyhtX291dCwgKCJDb21wYXJlRXEgdW50eXBlZCBzbG93
IHBhdGgiKSk7CisgICAgICAgIExCYXNpY0Jsb2NrIGNvbnRpbnVhdGlvbiA9IEZUTF9ORVdfQkxP
Q0sobV9vdXQsICgiQ29tcGFyZUVxIHVudHlwZWQgY29udGludWF0aW9uIikpOworICAgICAgICAK
KyAgICAgICAgbV9vdXQuYnJhbmNoKGlzTm90SW50MzIobGVmdCksIHNsb3dQYXRoLCBsZWZ0SXNJ
bnQpOworICAgICAgICAKKyAgICAgICAgTEJhc2ljQmxvY2sgbGFzdE5leHQgPSBtX291dC5hcHBl
bmRUbyhsZWZ0SXNJbnQsIGZhc3RQYXRoKTsKKyAgICAgICAgbV9vdXQuYnJhbmNoKGlzTm90SW50
MzIocmlnaHQpLCBzbG93UGF0aCwgZmFzdFBhdGgpOworICAgICAgICAKKyAgICAgICAgbV9vdXQu
YXBwZW5kVG8oZmFzdFBhdGgsIHNsb3dQYXRoKTsKKyAgICAgICAgVmFsdWVGcm9tQmxvY2sgZmFz
dFJlc3VsdCA9IG1fb3V0LmFuY2hvcigKKyAgICAgICAgICAgIG1fb3V0LmljbXAoaW50Q29uZGl0
aW9uLCB1bmJveEludDMyKGxlZnQpLCB1bmJveEludDMyKHJpZ2h0KSkpOworICAgICAgICBtX291
dC5qdW1wKGNvbnRpbnVhdGlvbik7CisgICAgICAgIAorICAgICAgICBtX291dC5hcHBlbmRUbyhz
bG93UGF0aCwgY29udGludWF0aW9uKTsKKyAgICAgICAgVmFsdWVGcm9tQmxvY2sgc2xvd1Jlc3Vs
dCA9IG1fb3V0LmFuY2hvcihtX291dC5ub3ROdWxsKHZtQ2FsbCgKKyAgICAgICAgICAgIG1fb3V0
Lm9wZXJhdGlvbihoZWxwZXJGdW5jdGlvbiksIG1fY2FsbEZyYW1lLCBsZWZ0LCByaWdodCkpKTsK
KyAgICAgICAgbV9vdXQuanVtcChjb250aW51YXRpb24pOworICAgICAgICAKKyAgICAgICAgbV9v
dXQuYXBwZW5kVG8oY29udGludWF0aW9uLCBsYXN0TmV4dCk7CisgICAgICAgIHNldEJvb2xlYW4o
bV9vdXQucGhpKG1fb3V0LmJvb2xlYW4sIGZhc3RSZXN1bHQsIHNsb3dSZXN1bHQpKTsKKyAgICB9
CisgICAgCiAgICAgTFZhbHVlIGFsbG9jYXRlQ2VsbChMVmFsdWUgYWxsb2NhdG9yLCBMVmFsdWUg
c3RydWN0dXJlLCBMQmFzaWNCbG9jayBzbG93UGF0aCkKICAgICB7CiAgICAgICAgIExCYXNpY0Js
b2NrIHN1Y2Nlc3MgPSBGVExfTkVXX0JMT0NLKG1fb3V0LCAoIm9iamVjdCBhbGxvY2F0aW9uIHN1
Y2Nlc3MiKSk7CkluZGV4OiBTb3VyY2UvSmF2YVNjcmlwdENvcmUvZnRsL0ZUTE91dHB1dC5oCj09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT0KLS0tIFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9mdGwvRlRMT3V0cHV0LmgJKHJldmlz
aW9uIDE2MDI5MykKKysrIFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9mdGwvRlRMT3V0cHV0LmgJKHdv
cmtpbmcgY29weSkKQEAgLTMxNCwyOSArMzE0LDMxIEBAIHB1YmxpYzoKICAgICB2b2lkIHN0b3Jl
UHRyKExWYWx1ZSB2YWx1ZSwgTFZhbHVlIGJhc2UsIGNvbnN0IEFic3RyYWN0RmllbGQmIGZpZWxk
KSB7IHN0b3JlUHRyKHZhbHVlLCBhZGRyZXNzKGJhc2UsIGZpZWxkKSk7IH0KICAgICB2b2lkIHN0
b3JlRG91YmxlKExWYWx1ZSB2YWx1ZSwgTFZhbHVlIGJhc2UsIGNvbnN0IEFic3RyYWN0RmllbGQm
IGZpZWxkKSB7IHN0b3JlRG91YmxlKHZhbHVlLCBhZGRyZXNzKGJhc2UsIGZpZWxkKSk7IH0KICAg
ICAKLSAgICBMVmFsdWUgZXF1YWwoTFZhbHVlIGxlZnQsIExWYWx1ZSByaWdodCkgeyByZXR1cm4g
YnVpbGRJQ21wKG1fYnVpbGRlciwgTExWTUludEVRLCBsZWZ0LCByaWdodCk7IH0KLSAgICBMVmFs
dWUgbm90RXF1YWwoTFZhbHVlIGxlZnQsIExWYWx1ZSByaWdodCkgeyByZXR1cm4gYnVpbGRJQ21w
KG1fYnVpbGRlciwgTExWTUludE5FLCBsZWZ0LCByaWdodCk7IH0KLSAgICBMVmFsdWUgYWJvdmUo
TFZhbHVlIGxlZnQsIExWYWx1ZSByaWdodCkgeyByZXR1cm4gYnVpbGRJQ21wKG1fYnVpbGRlciwg
TExWTUludFVHVCwgbGVmdCwgcmlnaHQpOyB9Ci0gICAgTFZhbHVlIGFib3ZlT3JFcXVhbChMVmFs
dWUgbGVmdCwgTFZhbHVlIHJpZ2h0KSB7IHJldHVybiBidWlsZElDbXAobV9idWlsZGVyLCBMTFZN
SW50VUdFLCBsZWZ0LCByaWdodCk7IH0KLSAgICBMVmFsdWUgYmVsb3coTFZhbHVlIGxlZnQsIExW
YWx1ZSByaWdodCkgeyByZXR1cm4gYnVpbGRJQ21wKG1fYnVpbGRlciwgTExWTUludFVMVCwgbGVm
dCwgcmlnaHQpOyB9Ci0gICAgTFZhbHVlIGJlbG93T3JFcXVhbChMVmFsdWUgbGVmdCwgTFZhbHVl
IHJpZ2h0KSB7IHJldHVybiBidWlsZElDbXAobV9idWlsZGVyLCBMTFZNSW50VUxFLCBsZWZ0LCBy
aWdodCk7IH0KLSAgICBMVmFsdWUgZ3JlYXRlclRoYW4oTFZhbHVlIGxlZnQsIExWYWx1ZSByaWdo
dCkgeyByZXR1cm4gYnVpbGRJQ21wKG1fYnVpbGRlciwgTExWTUludFNHVCwgbGVmdCwgcmlnaHQp
OyB9Ci0gICAgTFZhbHVlIGdyZWF0ZXJUaGFuT3JFcXVhbChMVmFsdWUgbGVmdCwgTFZhbHVlIHJp
Z2h0KSB7IHJldHVybiBidWlsZElDbXAobV9idWlsZGVyLCBMTFZNSW50U0dFLCBsZWZ0LCByaWdo
dCk7IH0KLSAgICBMVmFsdWUgbGVzc1RoYW4oTFZhbHVlIGxlZnQsIExWYWx1ZSByaWdodCkgeyBy
ZXR1cm4gYnVpbGRJQ21wKG1fYnVpbGRlciwgTExWTUludFNMVCwgbGVmdCwgcmlnaHQpOyB9Ci0g
ICAgTFZhbHVlIGxlc3NUaGFuT3JFcXVhbChMVmFsdWUgbGVmdCwgTFZhbHVlIHJpZ2h0KSB7IHJl
dHVybiBidWlsZElDbXAobV9idWlsZGVyLCBMTFZNSW50U0xFLCBsZWZ0LCByaWdodCk7IH0KLSAg
ICAKLSAgICBMVmFsdWUgZG91YmxlRXF1YWwoTFZhbHVlIGxlZnQsIExWYWx1ZSByaWdodCkgeyBy
ZXR1cm4gYnVpbGRGQ21wKG1fYnVpbGRlciwgTExWTVJlYWxPRVEsIGxlZnQsIHJpZ2h0KTsgfQot
ICAgIExWYWx1ZSBkb3VibGVOb3RFcXVhbE9yVW5vcmRlcmVkKExWYWx1ZSBsZWZ0LCBMVmFsdWUg
cmlnaHQpIHsgcmV0dXJuIGJ1aWxkRkNtcChtX2J1aWxkZXIsIExMVk1SZWFsVU5FLCBsZWZ0LCBy
aWdodCk7IH0KLSAgICBMVmFsdWUgZG91YmxlTGVzc1RoYW4oTFZhbHVlIGxlZnQsIExWYWx1ZSBy
aWdodCkgeyByZXR1cm4gYnVpbGRGQ21wKG1fYnVpbGRlciwgTExWTVJlYWxPTFQsIGxlZnQsIHJp
Z2h0KTsgfQotICAgIExWYWx1ZSBkb3VibGVMZXNzVGhhbk9yRXF1YWwoTFZhbHVlIGxlZnQsIExW
YWx1ZSByaWdodCkgeyByZXR1cm4gYnVpbGRGQ21wKG1fYnVpbGRlciwgTExWTVJlYWxPTEUsIGxl
ZnQsIHJpZ2h0KTsgfQotICAgIExWYWx1ZSBkb3VibGVHcmVhdGVyVGhhbihMVmFsdWUgbGVmdCwg
TFZhbHVlIHJpZ2h0KSB7IHJldHVybiBidWlsZEZDbXAobV9idWlsZGVyLCBMTFZNUmVhbE9HVCwg
bGVmdCwgcmlnaHQpOyB9Ci0gICAgTFZhbHVlIGRvdWJsZUdyZWF0ZXJUaGFuT3JFcXVhbChMVmFs
dWUgbGVmdCwgTFZhbHVlIHJpZ2h0KSB7IHJldHVybiBidWlsZEZDbXAobV9idWlsZGVyLCBMTFZN
UmVhbE9HRSwgbGVmdCwgcmlnaHQpOyB9Ci0gICAgTFZhbHVlIGRvdWJsZUVxdWFsT3JVbm9yZGVy
ZWQoTFZhbHVlIGxlZnQsIExWYWx1ZSByaWdodCkgeyByZXR1cm4gYnVpbGRGQ21wKG1fYnVpbGRl
ciwgTExWTVJlYWxVRVEsIGxlZnQsIHJpZ2h0KTsgfQotICAgIExWYWx1ZSBkb3VibGVOb3RFcXVh
bChMVmFsdWUgbGVmdCwgTFZhbHVlIHJpZ2h0KSB7IHJldHVybiBidWlsZEZDbXAobV9idWlsZGVy
LCBMTFZNUmVhbE9ORSwgbGVmdCwgcmlnaHQpOyB9Ci0gICAgTFZhbHVlIGRvdWJsZUxlc3NUaGFu
T3JVbm9yZGVyZWQoTFZhbHVlIGxlZnQsIExWYWx1ZSByaWdodCkgeyByZXR1cm4gYnVpbGRGQ21w
KG1fYnVpbGRlciwgTExWTVJlYWxVTFQsIGxlZnQsIHJpZ2h0KTsgfQotICAgIExWYWx1ZSBkb3Vi
bGVMZXNzVGhhbk9yRXF1YWxPclVub3JkZXJlZChMVmFsdWUgbGVmdCwgTFZhbHVlIHJpZ2h0KSB7
IHJldHVybiBidWlsZEZDbXAobV9idWlsZGVyLCBMTFZNUmVhbFVMRSwgbGVmdCwgcmlnaHQpOyB9
Ci0gICAgTFZhbHVlIGRvdWJsZUdyZWF0ZXJUaGFuT3JVbm9yZGVyZWQoTFZhbHVlIGxlZnQsIExW
YWx1ZSByaWdodCkgeyByZXR1cm4gYnVpbGRGQ21wKG1fYnVpbGRlciwgTExWTVJlYWxVR1QsIGxl
ZnQsIHJpZ2h0KTsgfQotICAgIExWYWx1ZSBkb3VibGVHcmVhdGVyVGhhbk9yRXF1YWxPclVub3Jk
ZXJlZChMVmFsdWUgbGVmdCwgTFZhbHVlIHJpZ2h0KSB7IHJldHVybiBidWlsZEZDbXAobV9idWls
ZGVyLCBMTFZNUmVhbFVHRSwgbGVmdCwgcmlnaHQpOyB9CisgICAgTFZhbHVlIGljbXAoTEludFBy
ZWRpY2F0ZSBjb25kLCBMVmFsdWUgbGVmdCwgTFZhbHVlIHJpZ2h0KSB7IHJldHVybiBidWlsZElD
bXAobV9idWlsZGVyLCBjb25kLCBsZWZ0LCByaWdodCk7IH0KKyAgICBMVmFsdWUgZXF1YWwoTFZh
bHVlIGxlZnQsIExWYWx1ZSByaWdodCkgeyByZXR1cm4gaWNtcChMTFZNSW50RVEsIGxlZnQsIHJp
Z2h0KTsgfQorICAgIExWYWx1ZSBub3RFcXVhbChMVmFsdWUgbGVmdCwgTFZhbHVlIHJpZ2h0KSB7
IHJldHVybiBpY21wKExMVk1JbnRORSwgbGVmdCwgcmlnaHQpOyB9CisgICAgTFZhbHVlIGFib3Zl
KExWYWx1ZSBsZWZ0LCBMVmFsdWUgcmlnaHQpIHsgcmV0dXJuIGljbXAoTExWTUludFVHVCwgbGVm
dCwgcmlnaHQpOyB9CisgICAgTFZhbHVlIGFib3ZlT3JFcXVhbChMVmFsdWUgbGVmdCwgTFZhbHVl
IHJpZ2h0KSB7IHJldHVybiBpY21wKExMVk1JbnRVR0UsIGxlZnQsIHJpZ2h0KTsgfQorICAgIExW
YWx1ZSBiZWxvdyhMVmFsdWUgbGVmdCwgTFZhbHVlIHJpZ2h0KSB7IHJldHVybiBpY21wKExMVk1J
bnRVTFQsIGxlZnQsIHJpZ2h0KTsgfQorICAgIExWYWx1ZSBiZWxvd09yRXF1YWwoTFZhbHVlIGxl
ZnQsIExWYWx1ZSByaWdodCkgeyByZXR1cm4gaWNtcChMTFZNSW50VUxFLCBsZWZ0LCByaWdodCk7
IH0KKyAgICBMVmFsdWUgZ3JlYXRlclRoYW4oTFZhbHVlIGxlZnQsIExWYWx1ZSByaWdodCkgeyBy
ZXR1cm4gaWNtcChMTFZNSW50U0dULCBsZWZ0LCByaWdodCk7IH0KKyAgICBMVmFsdWUgZ3JlYXRl
clRoYW5PckVxdWFsKExWYWx1ZSBsZWZ0LCBMVmFsdWUgcmlnaHQpIHsgcmV0dXJuIGljbXAoTExW
TUludFNHRSwgbGVmdCwgcmlnaHQpOyB9CisgICAgTFZhbHVlIGxlc3NUaGFuKExWYWx1ZSBsZWZ0
LCBMVmFsdWUgcmlnaHQpIHsgcmV0dXJuIGljbXAoTExWTUludFNMVCwgbGVmdCwgcmlnaHQpOyB9
CisgICAgTFZhbHVlIGxlc3NUaGFuT3JFcXVhbChMVmFsdWUgbGVmdCwgTFZhbHVlIHJpZ2h0KSB7
IHJldHVybiBpY21wKExMVk1JbnRTTEUsIGxlZnQsIHJpZ2h0KTsgfQorICAgIAorICAgIExWYWx1
ZSBmY21wKExSZWFsUHJlZGljYXRlIGNvbmQsIExWYWx1ZSBsZWZ0LCBMVmFsdWUgcmlnaHQpIHsg
cmV0dXJuIGJ1aWxkRkNtcChtX2J1aWxkZXIsIGNvbmQsIGxlZnQsIHJpZ2h0KTsgfQorICAgIExW
YWx1ZSBkb3VibGVFcXVhbChMVmFsdWUgbGVmdCwgTFZhbHVlIHJpZ2h0KSB7IHJldHVybiBmY21w
KExMVk1SZWFsT0VRLCBsZWZ0LCByaWdodCk7IH0KKyAgICBMVmFsdWUgZG91YmxlTm90RXF1YWxP
clVub3JkZXJlZChMVmFsdWUgbGVmdCwgTFZhbHVlIHJpZ2h0KSB7IHJldHVybiBmY21wKExMVk1S
ZWFsVU5FLCBsZWZ0LCByaWdodCk7IH0KKyAgICBMVmFsdWUgZG91YmxlTGVzc1RoYW4oTFZhbHVl
IGxlZnQsIExWYWx1ZSByaWdodCkgeyByZXR1cm4gZmNtcChMTFZNUmVhbE9MVCwgbGVmdCwgcmln
aHQpOyB9CisgICAgTFZhbHVlIGRvdWJsZUxlc3NUaGFuT3JFcXVhbChMVmFsdWUgbGVmdCwgTFZh
bHVlIHJpZ2h0KSB7IHJldHVybiBmY21wKExMVk1SZWFsT0xFLCBsZWZ0LCByaWdodCk7IH0KKyAg
ICBMVmFsdWUgZG91YmxlR3JlYXRlclRoYW4oTFZhbHVlIGxlZnQsIExWYWx1ZSByaWdodCkgeyBy
ZXR1cm4gZmNtcChMTFZNUmVhbE9HVCwgbGVmdCwgcmlnaHQpOyB9CisgICAgTFZhbHVlIGRvdWJs
ZUdyZWF0ZXJUaGFuT3JFcXVhbChMVmFsdWUgbGVmdCwgTFZhbHVlIHJpZ2h0KSB7IHJldHVybiBm
Y21wKExMVk1SZWFsT0dFLCBsZWZ0LCByaWdodCk7IH0KKyAgICBMVmFsdWUgZG91YmxlRXF1YWxP
clVub3JkZXJlZChMVmFsdWUgbGVmdCwgTFZhbHVlIHJpZ2h0KSB7IHJldHVybiBmY21wKExMVk1S
ZWFsVUVRLCBsZWZ0LCByaWdodCk7IH0KKyAgICBMVmFsdWUgZG91YmxlTm90RXF1YWwoTFZhbHVl
IGxlZnQsIExWYWx1ZSByaWdodCkgeyByZXR1cm4gZmNtcChMTFZNUmVhbE9ORSwgbGVmdCwgcmln
aHQpOyB9CisgICAgTFZhbHVlIGRvdWJsZUxlc3NUaGFuT3JVbm9yZGVyZWQoTFZhbHVlIGxlZnQs
IExWYWx1ZSByaWdodCkgeyByZXR1cm4gZmNtcChMTFZNUmVhbFVMVCwgbGVmdCwgcmlnaHQpOyB9
CisgICAgTFZhbHVlIGRvdWJsZUxlc3NUaGFuT3JFcXVhbE9yVW5vcmRlcmVkKExWYWx1ZSBsZWZ0
LCBMVmFsdWUgcmlnaHQpIHsgcmV0dXJuIGZjbXAoTExWTVJlYWxVTEUsIGxlZnQsIHJpZ2h0KTsg
fQorICAgIExWYWx1ZSBkb3VibGVHcmVhdGVyVGhhbk9yVW5vcmRlcmVkKExWYWx1ZSBsZWZ0LCBM
VmFsdWUgcmlnaHQpIHsgcmV0dXJuIGZjbXAoTExWTVJlYWxVR1QsIGxlZnQsIHJpZ2h0KTsgfQor
ICAgIExWYWx1ZSBkb3VibGVHcmVhdGVyVGhhbk9yRXF1YWxPclVub3JkZXJlZChMVmFsdWUgbGVm
dCwgTFZhbHVlIHJpZ2h0KSB7IHJldHVybiBmY21wKExMVk1SZWFsVUdFLCBsZWZ0LCByaWdodCk7
IH0KICAgICAKICAgICBMVmFsdWUgaXNaZXJvOChMVmFsdWUgdmFsdWUpIHsgcmV0dXJuIGVxdWFs
KHZhbHVlLCBpbnQ4WmVybyk7IH0KICAgICBMVmFsdWUgbm90WmVybzgoTFZhbHVlIHZhbHVlKSB7
IHJldHVybiBub3RFcXVhbCh2YWx1ZSwgaW50OFplcm8pOyB9CkluZGV4OiBTb3VyY2UvSmF2YVNj
cmlwdENvcmUvdGVzdHMvc3RyZXNzL3VudHlwZWQtZXF1YWxpdHkuanMKPT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0g
U291cmNlL0phdmFTY3JpcHRDb3JlL3Rlc3RzL3N0cmVzcy91bnR5cGVkLWVxdWFsaXR5LmpzCShy
ZXZpc2lvbiAwKQorKysgU291cmNlL0phdmFTY3JpcHRDb3JlL3Rlc3RzL3N0cmVzcy91bnR5cGVk
LWVxdWFsaXR5LmpzCSh3b3JraW5nIGNvcHkpCkBAIC0wLDAgKzEsMjAgQEAKK2Z1bmN0aW9uIGZv
byhhLCBiKSB7CisgICAgcmV0dXJuIGEgPT0gYjsKK30KKworbm9JbmxpbmUoZm9vKTsKKwordmFy
IGRhdGEgPSBbCisgICAgWzUsIDYuNSwgZmFsc2VdLAorICAgIFsiZm9vIiwgImJhciIsIGZhbHNl
XSwKKyAgICBbdHJ1ZSwgZmFsc2UsIGZhbHNlXSwKKyAgICBbIjQyIiwgNDIsIHRydWVdLAorICAg
IFsxLjIsIDEuMiwgdHJ1ZV0KK107CisKK2ZvciAodmFyIGkgPSAwOyBpIDwgMTAwMDAwOyArK2kp
IHsKKyAgICB2YXIgdGVzdCA9IGRhdGFbaSAlIGRhdGEubGVuZ3RoXTsKKyAgICB2YXIgcmVzdWx0
ID0gZm9vKHRlc3RbMF0sIHRlc3RbMV0pOworICAgIGlmIChyZXN1bHQgIT0gdGVzdFsyXSkKKyAg
ICAgICAgdGhyb3cgIkVycm9yOiBiYWQgcmVzdWx0IGZvciAiICsgdGVzdCArICI6ICIgKyByZXN1
bHQ7Cit9CkluZGV4OiBTb3VyY2UvSmF2YVNjcmlwdENvcmUvdGVzdHMvc3RyZXNzL3VudHlwZWQt
bGVzcy10aGFuLmpzCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9KYXZhU2NyaXB0Q29yZS90ZXN0cy9z
dHJlc3MvdW50eXBlZC1sZXNzLXRoYW4uanMJKHJldmlzaW9uIDApCisrKyBTb3VyY2UvSmF2YVNj
cmlwdENvcmUvdGVzdHMvc3RyZXNzL3VudHlwZWQtbGVzcy10aGFuLmpzCSh3b3JraW5nIGNvcHkp
CkBAIC0wLDAgKzEsMjMgQEAKK2Z1bmN0aW9uIGZvbyhhLCBiKSB7CisgICAgcmV0dXJuIGEgPCBi
OworfQorCitub0lubGluZShmb28pOworCit2YXIgZGF0YSA9IFsKKyAgICBbNSwgNi41LCB0cnVl
XSwKKyAgICBbImZvbyIsICJiYXIiLCBmYWxzZV0sCisgICAgW3RydWUsIGZhbHNlLCBmYWxzZV0s
CisgICAgW2ZhbHNlLCB0cnVlLCB0cnVlXSwKKyAgICBbIjQyIiwgNDIsIGZhbHNlXSwKKyAgICBb
MS4yLCAxLjIsIGZhbHNlXSwKKyAgICBbIi0xIiwgMSwgdHJ1ZV0sCisgICAgWy0xLCAiMSIsIHRy
dWVdCitdOworCitmb3IgKHZhciBpID0gMDsgaSA8IDEwMDAwMDsgKytpKSB7CisgICAgdmFyIHRl
c3QgPSBkYXRhW2kgJSBkYXRhLmxlbmd0aF07CisgICAgdmFyIHJlc3VsdCA9IGZvbyh0ZXN0WzBd
LCB0ZXN0WzFdKTsKKyAgICBpZiAocmVzdWx0ICE9IHRlc3RbMl0pCisgICAgICAgIHRocm93ICJF
cnJvcjogYmFkIHJlc3VsdCBmb3IgIiArIHRlc3QgKyAiOiAiICsgcmVzdWx0OworfQo=
</data>
<flag name="review"
          id="242196"
          type_id="1"
          status="+"
          setter="oliver"
    />
          </attachment>
      

    </bug>

</bugzilla>