<?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>111520</bug_id>
          
          <creation_ts>2013-03-05 21:38:02 -0800</creation_ts>
          <short_desc>DFG should not check if nodes are shouldGenerate prior to DCE</short_desc>
          <delta_ts>2013-03-06 09:43:56 -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>
          <dependson>109389</dependson>
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Filip Pizlo">fpizlo</reporter>
          <assigned_to name="Filip Pizlo">fpizlo</assigned_to>
          <cc>barraclough</cc>
    
    <cc>ggaren</cc>
    
    <cc>mario</cc>
    
    <cc>mark.lam</cc>
    
    <cc>mhahnenberg</cc>
    
    <cc>oliver</cc>
    
    <cc>sam</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>848441</commentid>
    <comment_count>0</comment_count>
    <who name="Filip Pizlo">fpizlo</who>
    <bug_when>2013-03-05 21:38:02 -0800</bug_when>
    <thetext>Everything is shouldGenerate prior to DCE, these days.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>848518</commentid>
    <comment_count>1</comment_count>
      <attachid>191661</attachid>
    <who name="Filip Pizlo">fpizlo</who>
    <bug_when>2013-03-05 23:54:09 -0800</bug_when>
    <thetext>Created attachment 191661
the patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>848884</commentid>
    <comment_count>2</comment_count>
      <attachid>191661</attachid>
    <who name="Geoffrey Garen">ggaren</who>
    <bug_when>2013-03-06 08:28:25 -0800</bug_when>
    <thetext>Comment on attachment 191661
the patch

r=me</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>848971</commentid>
    <comment_count>3</comment_count>
    <who name="Filip Pizlo">fpizlo</who>
    <bug_when>2013-03-06 09:43:56 -0800</bug_when>
    <thetext>Landed in http://trac.webkit.org/changeset/144939</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>191661</attachid>
            <date>2013-03-05 23:54:09 -0800</date>
            <delta_ts>2013-03-06 08:28:25 -0800</delta_ts>
            <desc>the patch</desc>
            <filename>blah.patch</filename>
            <type>text/plain</type>
            <size>18028</size>
            <attacher name="Filip Pizlo">fpizlo</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9DaGFuZ2VMb2cKPT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291
cmNlL0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwkocmV2aXNpb24gMTQ0ODg4KQorKysgU291cmNl
L0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDUyIEBA
CisyMDEzLTAzLTA1ICBGaWxpcCBQaXpsbyAgPGZwaXpsb0BhcHBsZS5jb20+CisKKyAgICAgICAg
REZHIHNob3VsZCBub3QgY2hlY2sgaWYgbm9kZXMgYXJlIHNob3VsZEdlbmVyYXRlIHByaW9yIHRv
IERDRQorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTEx
NTIwCisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisgICAgICAgIAorICAg
ICAgICBBbGwgbm9kZXMgYXJlIGxpdmUgYmVmb3JlIERDRS4gV2UgZG9uJ3QgbmVlZCB0byBjaGVj
ayB0aGF0IHRoZXkgYXJlbid0LCBiZWNhdXNlIHRoZXkKKyAgICAgICAgZGVmaW5pdGVseSB3aWxs
IGJlLgorCisgICAgICAgICogZGZnL0RGR0FyZ3VtZW50c1NpbXBsaWZpY2F0aW9uUGhhc2UuY3Bw
OgorICAgICAgICAoSlNDOjpERkc6OkFyZ3VtZW50c1NpbXBsaWZpY2F0aW9uUGhhc2U6OnJ1bik6
CisgICAgICAgICogZGZnL0RGR0NGQVBoYXNlLmNwcDoKKyAgICAgICAgKEpTQzo6REZHOjpDRkFQ
aGFzZTo6cGVyZm9ybUJsb2NrQ0ZBKToKKyAgICAgICAgKiBkZmcvREZHQ0ZHU2ltcGxpZmljYXRp
b25QaGFzZS5jcHA6CisgICAgICAgIChKU0M6OkRGRzo6Q0ZHU2ltcGxpZmljYXRpb25QaGFzZTo6
a2VlcE9wZXJhbmRBbGl2ZSk6CisgICAgICAgICogZGZnL0RGR0NTRVBoYXNlLmNwcDoKKyAgICAg
ICAgKEpTQzo6REZHOjpDU0VQaGFzZTo6cHVyZUNTRSk6CisgICAgICAgIChKU0M6OkRGRzo6Q1NF
UGhhc2U6OmludDMyVG9Eb3VibGVDU0UpOgorICAgICAgICAoSlNDOjpERkc6OkNTRVBoYXNlOjpj
b25zdGFudENTRSk6CisgICAgICAgIChKU0M6OkRGRzo6Q1NFUGhhc2U6OndlYWtDb25zdGFudENT
RSk6CisgICAgICAgIChKU0M6OkRGRzo6Q1NFUGhhc2U6OmdldENhbGxlZUxvYWRFbGltaW5hdGlv
bik6CisgICAgICAgIChKU0M6OkRGRzo6Q1NFUGhhc2U6OmdldEFycmF5TGVuZ3RoRWxpbWluYXRp
b24pOgorICAgICAgICAoSlNDOjpERkc6OkNTRVBoYXNlOjpnbG9iYWxWYXJMb2FkRWxpbWluYXRp
b24pOgorICAgICAgICAoSlNDOjpERkc6OkNTRVBoYXNlOjpzY29wZWRWYXJMb2FkRWxpbWluYXRp
b24pOgorICAgICAgICAoSlNDOjpERkc6OkNTRVBoYXNlOjpnbG9iYWxWYXJXYXRjaHBvaW50RWxp
bWluYXRpb24pOgorICAgICAgICAoSlNDOjpERkc6OkNTRVBoYXNlOjpnbG9iYWxWYXJTdG9yZUVs
aW1pbmF0aW9uKToKKyAgICAgICAgKEpTQzo6REZHOjpDU0VQaGFzZTo6c2NvcGVkVmFyU3RvcmVF
bGltaW5hdGlvbik6CisgICAgICAgIChKU0M6OkRGRzo6Q1NFUGhhc2U6OmdldEJ5VmFsTG9hZEVs
aW1pbmF0aW9uKToKKyAgICAgICAgKEpTQzo6REZHOjpDU0VQaGFzZTo6Y2hlY2tTdHJ1Y3R1cmVF
bGltaW5hdGlvbik6CisgICAgICAgIChKU0M6OkRGRzo6Q1NFUGhhc2U6OnN0cnVjdHVyZVRyYW5z
aXRpb25XYXRjaHBvaW50RWxpbWluYXRpb24pOgorICAgICAgICAoSlNDOjpERkc6OkNTRVBoYXNl
OjpwdXRTdHJ1Y3R1cmVTdG9yZUVsaW1pbmF0aW9uKToKKyAgICAgICAgKEpTQzo6REZHOjpDU0VQ
aGFzZTo6Z2V0QnlPZmZzZXRMb2FkRWxpbWluYXRpb24pOgorICAgICAgICAoSlNDOjpERkc6OkNT
RVBoYXNlOjpwdXRCeU9mZnNldFN0b3JlRWxpbWluYXRpb24pOgorICAgICAgICAoSlNDOjpERkc6
OkNTRVBoYXNlOjpnZXRQcm9wZXJ0eVN0b3JhZ2VMb2FkRWxpbWluYXRpb24pOgorICAgICAgICAo
SlNDOjpERkc6OkNTRVBoYXNlOjpjaGVja0FycmF5RWxpbWluYXRpb24pOgorICAgICAgICAoSlND
OjpERkc6OkNTRVBoYXNlOjpnZXRJbmRleGVkUHJvcGVydHlTdG9yYWdlTG9hZEVsaW1pbmF0aW9u
KToKKyAgICAgICAgKEpTQzo6REZHOjpDU0VQaGFzZTo6Z2V0TXlTY29wZUxvYWRFbGltaW5hdGlv
bik6CisgICAgICAgIChKU0M6OkRGRzo6Q1NFUGhhc2U6OmdldExvY2FsTG9hZEVsaW1pbmF0aW9u
KToKKyAgICAgICAgKEpTQzo6REZHOjpDU0VQaGFzZTo6c2V0TG9jYWxTdG9yZUVsaW1pbmF0aW9u
KToKKyAgICAgICAgKEpTQzo6REZHOjpDU0VQaGFzZTo6cGVyZm9ybU5vZGVDU0UpOgorICAgICAg
ICAqIGRmZy9ERkdGaXh1cFBoYXNlLmNwcDoKKyAgICAgICAgKEpTQzo6REZHOjpGaXh1cFBoYXNl
OjpmaXh1cE5vZGUpOgorICAgICAgICAoSlNDOjpERkc6OkZpeHVwUGhhc2U6OmZpeHVwU2V0TG9j
YWxzSW5CbG9jayk6CisgICAgICAgICogZGZnL0RGR1ByZWRpY3Rpb25Qcm9wYWdhdGlvblBoYXNl
LmNwcDoKKyAgICAgICAgKEpTQzo6REZHOjpQcmVkaWN0aW9uUHJvcGFnYXRpb25QaGFzZTo6cHJv
cGFnYXRlKToKKyAgICAgICAgKiBkZmcvREZHU3RydWN0dXJlQ2hlY2tIb2lzdGluZ1BoYXNlLmNw
cDoKKyAgICAgICAgKEpTQzo6REZHOjpTdHJ1Y3R1cmVDaGVja0hvaXN0aW5nUGhhc2U6OnJ1bik6
CisKIDIwMTMtMDMtMDUgIEZpbGlwIFBpemxvICA8ZnBpemxvQGFwcGxlLmNvbT4KIAogICAgICAg
ICBHZXQgcmlkIG9mIHRoZSBpbnZlcnQgYXJndW1lbnQgdG8gU3BlY3VsYXRpdmVKSVQ6Omp1bXBT
bG93Rm9yVW53YW50ZWRBcnJheU1vZGUKSW5kZXg6IFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9kZmcv
REZHQXJndW1lbnRzU2ltcGxpZmljYXRpb25QaGFzZS5jcHAKPT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNl
L0phdmFTY3JpcHRDb3JlL2RmZy9ERkdBcmd1bWVudHNTaW1wbGlmaWNhdGlvblBoYXNlLmNwcAko
cmV2aXNpb24gMTQ0ODg3KQorKysgU291cmNlL0phdmFTY3JpcHRDb3JlL2RmZy9ERkdBcmd1bWVu
dHNTaW1wbGlmaWNhdGlvblBoYXNlLmNwcAkod29ya2luZyBjb3B5KQpAQCAtMTcwLDggKzE3MCw2
IEBAIHB1YmxpYzoKICAgICAgICAgICAgICAgICBjb250aW51ZTsKICAgICAgICAgICAgIGZvciAo
dW5zaWduZWQgaW5kZXhJbkJsb2NrID0gMDsgaW5kZXhJbkJsb2NrIDwgYmxvY2stPnNpemUoKTsg
KytpbmRleEluQmxvY2spIHsKICAgICAgICAgICAgICAgICBOb2RlKiBub2RlID0gYmxvY2stPmF0
KGluZGV4SW5CbG9jayk7Ci0gICAgICAgICAgICAgICAgaWYgKCFub2RlLT5zaG91bGRHZW5lcmF0
ZSgpKQotICAgICAgICAgICAgICAgICAgICBjb250aW51ZTsKICAgICAgICAgICAgICAgICBzd2l0
Y2ggKG5vZGUtPm9wKCkpIHsKICAgICAgICAgICAgICAgICBjYXNlIENyZWF0ZUFyZ3VtZW50czog
ewogICAgICAgICAgICAgICAgICAgICAvLyBJZ25vcmUgdGhpcyBvcC4gSWYgd2Ugc2VlIGEgbG9u
ZSBDcmVhdGVBcmd1bWVudHMgdGhlbiB3ZSB3YW50IHRvCkBAIC0zNTksOCArMzU3LDYgQEAgcHVi
bGljOgogICAgICAgICAgICAgICAgIGNvbnRpbnVlOwogICAgICAgICAgICAgZm9yICh1bnNpZ25l
ZCBpbmRleEluQmxvY2sgPSAwOyBpbmRleEluQmxvY2sgPCBibG9jay0+c2l6ZSgpOyArK2luZGV4
SW5CbG9jaykgewogICAgICAgICAgICAgICAgIE5vZGUqIG5vZGUgPSBibG9jay0+YXQoaW5kZXhJ
bkJsb2NrKTsKLSAgICAgICAgICAgICAgICBpZiAoIW5vZGUtPnNob3VsZEdlbmVyYXRlKCkpCi0g
ICAgICAgICAgICAgICAgICAgIGNvbnRpbnVlOwogICAgICAgICAgICAgICAgIGlmIChub2RlLT5v
cCgpICE9IFNldExvY2FsKQogICAgICAgICAgICAgICAgICAgICBjb250aW51ZTsKICAgICAgICAg
ICAgICAgICBOb2RlKiBzb3VyY2UgPSBub2RlLT5jaGlsZDEoKS5ub2RlKCk7CkBAIC00MzcsOSAr
NDMzLDYgQEAgcHVibGljOgogICAgICAgICAgICAgICAgIGNvbnRpbnVlOwogICAgICAgICAgICAg
Zm9yICh1bnNpZ25lZCBpbmRleEluQmxvY2sgPSAwOyBpbmRleEluQmxvY2sgPCBibG9jay0+c2l6
ZSgpOyBpbmRleEluQmxvY2srKykgewogICAgICAgICAgICAgICAgIE5vZGUqIG5vZGUgPSBibG9j
ay0+YXQoaW5kZXhJbkJsb2NrKTsKLSAgICAgICAgICAgICAgICBpZiAoIW5vZGUtPnNob3VsZEdl
bmVyYXRlKCkpCi0gICAgICAgICAgICAgICAgICAgIGNvbnRpbnVlOwotICAgICAgICAgICAgICAg
IAogICAgICAgICAgICAgICAgIHN3aXRjaCAobm9kZS0+b3AoKSkgewogICAgICAgICAgICAgICAg
IGNhc2UgU2V0TG9jYWw6IHsKICAgICAgICAgICAgICAgICAgICAgTm9kZSogc291cmNlID0gbm9k
ZS0+Y2hpbGQxKCkubm9kZSgpOwpAQCAtNjgxLDEwICs2NzQsOCBAQCBwdWJsaWM6CiAgICAgICAg
ICAgICAgICAgLy8gZXhpdC4KICAgICAgICAgICAgICAgICBpZiAobV9jcmVhdGVzQXJndW1lbnRz
LmNvbnRhaW5zKG5vZGUtPmNvZGVPcmlnaW4uaW5saW5lQ2FsbEZyYW1lKSkKICAgICAgICAgICAg
ICAgICAgICAgY29udGludWU7Ci0gICAgICAgICAgICAgICAgaWYgKG5vZGUtPnNob3VsZEdlbmVy
YXRlKCkpIHsKLSAgICAgICAgICAgICAgICAgICAgaW5zZXJ0aW9uU2V0Lmluc2VydE5vZGUoCi0g
ICAgICAgICAgICAgICAgICAgICAgICBpbmRleEluQmxvY2ssIFNwZWNOb25lLCBQaGFudG9tLCBu
b2RlLT5jb2RlT3JpZ2luLCBub2RlLT5jaGlsZHJlbik7Ci0gICAgICAgICAgICAgICAgfQorICAg
ICAgICAgICAgICAgIGluc2VydGlvblNldC5pbnNlcnROb2RlKAorICAgICAgICAgICAgICAgICAg
ICBpbmRleEluQmxvY2ssIFNwZWNOb25lLCBQaGFudG9tLCBub2RlLT5jb2RlT3JpZ2luLCBub2Rl
LT5jaGlsZHJlbik7CiAgICAgICAgICAgICAgICAgbm9kZS0+c2V0T3BBbmREZWZhdWx0RmxhZ3Mo
UGhhbnRvbUFyZ3VtZW50cyk7CiAgICAgICAgICAgICAgICAgbm9kZS0+Y2hpbGRyZW4ucmVzZXQo
KTsKICAgICAgICAgICAgICAgICBjaGFuZ2VkID0gdHJ1ZTsKSW5kZXg6IFNvdXJjZS9KYXZhU2Ny
aXB0Q29yZS9kZmcvREZHQ0ZBUGhhc2UuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9KYXZhU2Ny
aXB0Q29yZS9kZmcvREZHQ0ZBUGhhc2UuY3BwCShyZXZpc2lvbiAxNDQ4ODcpCisrKyBTb3VyY2Uv
SmF2YVNjcmlwdENvcmUvZGZnL0RGR0NGQVBoYXNlLmNwcAkod29ya2luZyBjb3B5KQpAQCAtOTIs
MTAgKzkyLDggQEAgcHJpdmF0ZToKICAgICAgICAgZGF0YUxvZ0YoIlxuIik7CiAjZW5kaWYKICAg
ICAgICAgZm9yICh1bnNpZ25lZCBpID0gMDsgaSA8IGJsb2NrLT5zaXplKCk7ICsraSkgewotICAg
ICAgICAgICAgTm9kZSogbm9kZSA9IGJsb2NrLT5hdChpKTsKLSAgICAgICAgICAgIGlmICghbm9k
ZS0+c2hvdWxkR2VuZXJhdGUoKSkKLSAgICAgICAgICAgICAgICBjb250aW51ZTsKICNpZiBERkdf
RU5BQkxFKERFQlVHX1BST1BBR0FUSU9OX1ZFUkJPU0UpCisgICAgICAgICAgICBOb2RlKiBub2Rl
ID0gYmxvY2stPmF0KGkpOwogICAgICAgICAgICAgZGF0YUxvZ0YoIiAgICAgICVzIEAldTogIiwg
R3JhcGg6Om9wTmFtZShub2RlLT5vcCgpKSwgbm9kZS0+aW5kZXgoKSk7CiAgICAgICAgICAgICBt
X3N0YXRlLmR1bXAoV1RGOjpkYXRhRmlsZSgpKTsKICAgICAgICAgICAgIGRhdGFMb2dGKCJcbiIp
OwpJbmRleDogU291cmNlL0phdmFTY3JpcHRDb3JlL2RmZy9ERkdDRkdTaW1wbGlmaWNhdGlvblBo
YXNlLmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvSmF2YVNjcmlwdENvcmUvZGZnL0RGR0NGR1Np
bXBsaWZpY2F0aW9uUGhhc2UuY3BwCShyZXZpc2lvbiAxNDQ4ODcpCisrKyBTb3VyY2UvSmF2YVNj
cmlwdENvcmUvZGZnL0RGR0NGR1NpbXBsaWZpY2F0aW9uUGhhc2UuY3BwCSh3b3JraW5nIGNvcHkp
CkBAIC0yNjksOCArMjY5LDYgQEAgcHJpdmF0ZToKICAgICAgICAgICAgIHJldHVybjsKICAgICAg
ICAgaWYgKGxpdmVuZXNzTm9kZS0+dmFyaWFibGVBY2Nlc3NEYXRhKCktPmlzQ2FwdHVyZWQoKSkK
ICAgICAgICAgICAgIHJldHVybjsKLSAgICAgICAgaWYgKCFsaXZlbmVzc05vZGUtPnNob3VsZEdl
bmVyYXRlKCkpCi0gICAgICAgICAgICByZXR1cm47CiAgICAgICAgIGJsb2NrLT5hcHBlbmROb2Rl
KAogICAgICAgICAgICAgbV9ncmFwaCwgU3BlY05vbmUsIFBoYW50b21Mb2NhbCwgY29kZU9yaWdp
biwgCiAgICAgICAgICAgICBPcEluZm8obGl2ZW5lc3NOb2RlLT52YXJpYWJsZUFjY2Vzc0RhdGEo
KSkpOwpJbmRleDogU291cmNlL0phdmFTY3JpcHRDb3JlL2RmZy9ERkdDU0VQaGFzZS5jcHAKPT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PQotLS0gU291cmNlL0phdmFTY3JpcHRDb3JlL2RmZy9ERkdDU0VQaGFzZS5jcHAJKHJl
dmlzaW9uIDE0NDg4NykKKysrIFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9kZmcvREZHQ1NFUGhhc2Uu
Y3BwCSh3b3JraW5nIGNvcHkpCkBAIC05NCw5ICs5NCw2IEBAIHByaXZhdGU6CiAgICAgICAgICAg
ICBpZiAob3RoZXJOb2RlID09IGNoaWxkMSB8fCBvdGhlck5vZGUgPT0gY2hpbGQyIHx8IG90aGVy
Tm9kZSA9PSBjaGlsZDMpCiAgICAgICAgICAgICAgICAgYnJlYWs7CiAKLSAgICAgICAgICAgIGlm
ICghb3RoZXJOb2RlLT5zaG91bGRHZW5lcmF0ZSgpKQotICAgICAgICAgICAgICAgIGNvbnRpbnVl
OwotICAgICAgICAgICAgCiAgICAgICAgICAgICBpZiAobm9kZS0+b3AoKSAhPSBvdGhlck5vZGUt
Pm9wKCkpCiAgICAgICAgICAgICAgICAgY29udGludWU7CiAgICAgICAgICAgICAKQEAgLTEzMiw4
ICsxMjksNiBAQCBwcml2YXRlOgogICAgICAgICAgICAgTm9kZSogb3RoZXJOb2RlID0gbV9jdXJy
ZW50QmxvY2stPmF0KGkpOwogICAgICAgICAgICAgaWYgKG90aGVyTm9kZSA9PSBub2RlLT5jaGls
ZDEoKSkKICAgICAgICAgICAgICAgICByZXR1cm4gMDsKLSAgICAgICAgICAgIGlmICghb3RoZXJO
b2RlLT5zaG91bGRHZW5lcmF0ZSgpKQotICAgICAgICAgICAgICAgIGNvbnRpbnVlOwogICAgICAg
ICAgICAgc3dpdGNoIChvdGhlck5vZGUtPm9wKCkpIHsKICAgICAgICAgICAgIGNhc2UgSW50MzJU
b0RvdWJsZToKICAgICAgICAgICAgIGNhc2UgRm9yd2FyZEludDMyVG9Eb3VibGU6CkBAIC0xNTQs
OSArMTQ5LDYgQEAgcHJpdmF0ZToKICAgICAgICAgICAgIGlmIChvdGhlck5vZGUtPm9wKCkgIT0g
SlNDb25zdGFudCkKICAgICAgICAgICAgICAgICBjb250aW51ZTsKICAgICAgICAgICAgIAotICAg
ICAgICAgICAgaWYgKCFvdGhlck5vZGUtPnNob3VsZEdlbmVyYXRlKCkpCi0gICAgICAgICAgICAg
ICAgY29udGludWU7Ci0gICAgICAgICAgICAKICAgICAgICAgICAgIGlmIChvdGhlck5vZGUtPmNv
bnN0YW50TnVtYmVyKCkgIT0gbm9kZS0+Y29uc3RhbnROdW1iZXIoKSkKICAgICAgICAgICAgICAg
ICBjb250aW51ZTsKICAgICAgICAgICAgIApAQCAtMTcyLDkgKzE2NCw2IEBAIHByaXZhdGU6CiAg
ICAgICAgICAgICBpZiAob3RoZXJOb2RlLT5vcCgpICE9IFdlYWtKU0NvbnN0YW50KQogICAgICAg
ICAgICAgICAgIGNvbnRpbnVlOwogICAgICAgICAgICAgCi0gICAgICAgICAgICBpZiAoIW90aGVy
Tm9kZS0+c2hvdWxkR2VuZXJhdGUoKSkKLSAgICAgICAgICAgICAgICBjb250aW51ZTsKLSAgICAg
ICAgICAgIAogICAgICAgICAgICAgaWYgKG90aGVyTm9kZS0+d2Vha0NvbnN0YW50KCkgIT0gbm9k
ZS0+d2Vha0NvbnN0YW50KCkpCiAgICAgICAgICAgICAgICAgY29udGludWU7CiAgICAgICAgICAg
ICAKQEAgLTE4Nyw4ICsxNzYsNiBAQCBwcml2YXRlOgogICAgIHsKICAgICAgICAgZm9yICh1bnNp
Z25lZCBpID0gbV9pbmRleEluQmxvY2s7IGktLTspIHsKICAgICAgICAgICAgIE5vZGUqIG5vZGUg
PSBtX2N1cnJlbnRCbG9jay0+YXQoaSk7Ci0gICAgICAgICAgICBpZiAoIW5vZGUtPnNob3VsZEdl
bmVyYXRlKCkpCi0gICAgICAgICAgICAgICAgY29udGludWU7CiAgICAgICAgICAgICBpZiAobm9k
ZS0+Y29kZU9yaWdpbi5pbmxpbmVDYWxsRnJhbWUgIT0gaW5saW5lQ2FsbEZyYW1lKQogICAgICAg
ICAgICAgICAgIGNvbnRpbnVlOwogICAgICAgICAgICAgc3dpdGNoIChub2RlLT5vcCgpKSB7CkBA
IC0yMDcsOCArMTk0LDYgQEAgcHJpdmF0ZToKICAgICB7CiAgICAgICAgIGZvciAodW5zaWduZWQg
aSA9IG1faW5kZXhJbkJsb2NrOyBpLS07KSB7CiAgICAgICAgICAgICBOb2RlKiBub2RlID0gbV9j
dXJyZW50QmxvY2stPmF0KGkpOwotICAgICAgICAgICAgaWYgKCFub2RlLT5zaG91bGRHZW5lcmF0
ZSgpKQotICAgICAgICAgICAgICAgIGNvbnRpbnVlOwogICAgICAgICAgICAgc3dpdGNoIChub2Rl
LT5vcCgpKSB7CiAgICAgICAgICAgICBjYXNlIEdldEFycmF5TGVuZ3RoOgogICAgICAgICAgICAg
ICAgIGlmIChub2RlLT5jaGlsZDEoKSA9PSBhcnJheSkKQEAgLTIzNCw4ICsyMTksNiBAQCBwcml2
YXRlOgogICAgIHsKICAgICAgICAgZm9yICh1bnNpZ25lZCBpID0gbV9pbmRleEluQmxvY2s7IGkt
LTspIHsKICAgICAgICAgICAgIE5vZGUqIG5vZGUgPSBtX2N1cnJlbnRCbG9jay0+YXQoaSk7Ci0g
ICAgICAgICAgICBpZiAoIW5vZGUtPnNob3VsZEdlbmVyYXRlKCkpCi0gICAgICAgICAgICAgICAg
Y29udGludWU7CiAgICAgICAgICAgICBzd2l0Y2ggKG5vZGUtPm9wKCkpIHsKICAgICAgICAgICAg
IGNhc2UgR2V0R2xvYmFsVmFyOgogICAgICAgICAgICAgICAgIGlmIChub2RlLT5yZWdpc3RlclBv
aW50ZXIoKSA9PSByZWdpc3RlclBvaW50ZXIpCkBAIC0yNTgsOCArMjQxLDYgQEAgcHJpdmF0ZToK
ICAgICB7CiAgICAgICAgIGZvciAodW5zaWduZWQgaSA9IG1faW5kZXhJbkJsb2NrOyBpLS07KSB7
CiAgICAgICAgICAgICBOb2RlKiBub2RlID0gbV9jdXJyZW50QmxvY2stPmF0KGkpOwotICAgICAg
ICAgICAgaWYgKCFub2RlLT5zaG91bGRHZW5lcmF0ZSgpKQotICAgICAgICAgICAgICAgIGNvbnRp
bnVlOwogICAgICAgICAgICAgc3dpdGNoIChub2RlLT5vcCgpKSB7CiAgICAgICAgICAgICBjYXNl
IEdldFNjb3BlZFZhcjogewogICAgICAgICAgICAgICAgIGlmIChub2RlLT5jaGlsZDEoKSA9PSBy
ZWdpc3RlcnMgJiYgbm9kZS0+dmFyTnVtYmVyKCkgPT0gdmFyTnVtYmVyKQpAQCAtMjkxLDggKzI3
Miw2IEBAIHByaXZhdGU6CiAgICAgewogICAgICAgICBmb3IgKHVuc2lnbmVkIGkgPSBtX2luZGV4
SW5CbG9jazsgaS0tOykgewogICAgICAgICAgICAgTm9kZSogbm9kZSA9IG1fY3VycmVudEJsb2Nr
LT5hdChpKTsKLSAgICAgICAgICAgIGlmICghbm9kZS0+c2hvdWxkR2VuZXJhdGUoKSkKLSAgICAg
ICAgICAgICAgICBjb250aW51ZTsKICAgICAgICAgICAgIHN3aXRjaCAobm9kZS0+b3AoKSkgewog
ICAgICAgICAgICAgY2FzZSBHbG9iYWxWYXJXYXRjaHBvaW50OgogICAgICAgICAgICAgICAgIGlm
IChub2RlLT5yZWdpc3RlclBvaW50ZXIoKSA9PSByZWdpc3RlclBvaW50ZXIpCkBAIC0zMTUsOCAr
Mjk0LDYgQEAgcHJpdmF0ZToKICAgICB7CiAgICAgICAgIGZvciAodW5zaWduZWQgaSA9IG1faW5k
ZXhJbkJsb2NrOyBpLS07KSB7CiAgICAgICAgICAgICBOb2RlKiBub2RlID0gbV9jdXJyZW50Qmxv
Y2stPmF0KGkpOwotICAgICAgICAgICAgaWYgKCFub2RlLT5zaG91bGRHZW5lcmF0ZSgpKQotICAg
ICAgICAgICAgICAgIGNvbnRpbnVlOwogICAgICAgICAgICAgc3dpdGNoIChub2RlLT5vcCgpKSB7
CiAgICAgICAgICAgICBjYXNlIFB1dEdsb2JhbFZhcjoKICAgICAgICAgICAgIGNhc2UgUHV0R2xv
YmFsVmFyQ2hlY2s6CkBAIC0zNDIsOCArMzE5LDYgQEAgcHJpdmF0ZToKICAgICB7CiAgICAgICAg
IGZvciAodW5zaWduZWQgaSA9IG1faW5kZXhJbkJsb2NrOyBpLS07KSB7CiAgICAgICAgICAgICBO
b2RlKiBub2RlID0gbV9jdXJyZW50QmxvY2stPmF0KGkpOwotICAgICAgICAgICAgaWYgKCFub2Rl
LT5zaG91bGRHZW5lcmF0ZSgpKQotICAgICAgICAgICAgICAgIGNvbnRpbnVlOwogICAgICAgICAg
ICAgc3dpdGNoIChub2RlLT5vcCgpKSB7CiAgICAgICAgICAgICBjYXNlIFB1dFNjb3BlZFZhcjog
ewogICAgICAgICAgICAgICAgIGlmIChub2RlLT5jaGlsZDEoKSA9PSBzY29wZSAmJiBub2RlLT5j
aGlsZDIoKSA9PSByZWdpc3RlcnMgJiYgbm9kZS0+dmFyTnVtYmVyKCkgPT0gdmFyTnVtYmVyKQpA
QCAtMzgyLDggKzM1Nyw2IEBAIHByaXZhdGU6CiAgICAgICAgICAgICBpZiAobm9kZSA9PSBjaGls
ZDEgfHwgbm9kZSA9PSBjYW5vbmljYWxpemUoY2hpbGQyKSkgCiAgICAgICAgICAgICAgICAgYnJl
YWs7CiAKLSAgICAgICAgICAgIGlmICghbm9kZS0+c2hvdWxkR2VuZXJhdGUoKSkKLSAgICAgICAg
ICAgICAgICBjb250aW51ZTsKICAgICAgICAgICAgIHN3aXRjaCAobm9kZS0+b3AoKSkgewogICAg
ICAgICAgICAgY2FzZSBHZXRCeVZhbDoKICAgICAgICAgICAgICAgICBpZiAoIW1fZ3JhcGguYnlW
YWxJc1B1cmUobm9kZSkpCkBAIC00NTEsOCArNDI0LDYgQEAgcHJpdmF0ZToKICAgICAgICAgICAg
IGlmIChub2RlID09IGNoaWxkMSkgCiAgICAgICAgICAgICAgICAgYnJlYWs7CiAKLSAgICAgICAg
ICAgIGlmICghbm9kZS0+c2hvdWxkR2VuZXJhdGUoKSkKLSAgICAgICAgICAgICAgICBjb250aW51
ZTsKICAgICAgICAgICAgIHN3aXRjaCAobm9kZS0+b3AoKSkgewogICAgICAgICAgICAgY2FzZSBD
aGVja1N0cnVjdHVyZToKICAgICAgICAgICAgIGNhc2UgRm9yd2FyZENoZWNrU3RydWN0dXJlOgpA
QCAtNTEyLDggKzQ4Myw2IEBAIHByaXZhdGU6CiAgICAgICAgICAgICBpZiAobm9kZSA9PSBjaGls
ZDEpIAogICAgICAgICAgICAgICAgIGJyZWFrOwogCi0gICAgICAgICAgICBpZiAoIW5vZGUtPnNo
b3VsZEdlbmVyYXRlKCkpCi0gICAgICAgICAgICAgICAgY29udGludWU7CiAgICAgICAgICAgICBz
d2l0Y2ggKG5vZGUtPm9wKCkpIHsKICAgICAgICAgICAgIGNhc2UgQ2hlY2tTdHJ1Y3R1cmU6CiAg
ICAgICAgICAgICBjYXNlIEZvcndhcmRDaGVja1N0cnVjdHVyZToKQEAgLTU2Nyw4ICs1MzYsNiBA
QCBwcml2YXRlOgogICAgICAgICAgICAgTm9kZSogbm9kZSA9IG1fY3VycmVudEJsb2NrLT5hdChp
KTsKICAgICAgICAgICAgIGlmIChub2RlID09IGNoaWxkMSkKICAgICAgICAgICAgICAgICBicmVh
azsKLSAgICAgICAgICAgIGlmICghbm9kZS0+c2hvdWxkR2VuZXJhdGUoKSkKLSAgICAgICAgICAg
ICAgICBjb250aW51ZTsKICAgICAgICAgICAgIHN3aXRjaCAobm9kZS0+b3AoKSkgewogICAgICAg
ICAgICAgY2FzZSBDaGVja1N0cnVjdHVyZToKICAgICAgICAgICAgIGNhc2UgRm9yd2FyZENoZWNr
U3RydWN0dXJlOgpAQCAtNjI2LDggKzU5Myw2IEBAIHByaXZhdGU6CiAgICAgICAgICAgICBpZiAo
bm9kZSA9PSBjaGlsZDEpCiAgICAgICAgICAgICAgICAgYnJlYWs7CiAKLSAgICAgICAgICAgIGlm
ICghbm9kZS0+c2hvdWxkR2VuZXJhdGUoKSkKLSAgICAgICAgICAgICAgICBjb250aW51ZTsKICAg
ICAgICAgICAgIHN3aXRjaCAobm9kZS0+b3AoKSkgewogICAgICAgICAgICAgY2FzZSBHZXRCeU9m
ZnNldDoKICAgICAgICAgICAgICAgICBpZiAobm9kZS0+Y2hpbGQxKCkgPT0gY2hpbGQxCkBAIC02
NzMsOCArNjM4LDYgQEAgcHJpdmF0ZToKICAgICAgICAgICAgIGlmIChub2RlID09IGNoaWxkMSkK
ICAgICAgICAgICAgICAgICBicmVhazsKIAotICAgICAgICAgICAgaWYgKCFub2RlLT5zaG91bGRH
ZW5lcmF0ZSgpKQotICAgICAgICAgICAgICAgIGNvbnRpbnVlOwogICAgICAgICAgICAgc3dpdGNo
IChub2RlLT5vcCgpKSB7CiAgICAgICAgICAgICBjYXNlIEdldEJ5T2Zmc2V0OgogICAgICAgICAg
ICAgICAgIGlmIChtX2dyYXBoLm1fc3RvcmFnZUFjY2Vzc0RhdGFbbm9kZS0+c3RvcmFnZUFjY2Vz
c0RhdGFJbmRleCgpXS5pZGVudGlmaWVyTnVtYmVyID09IGlkZW50aWZpZXJOdW1iZXIpCkBAIC03
MTgsOCArNjgxLDYgQEAgcHJpdmF0ZToKICAgICAgICAgICAgIGlmIChub2RlID09IGNoaWxkMSkg
CiAgICAgICAgICAgICAgICAgYnJlYWs7CiAKLSAgICAgICAgICAgIGlmICghbm9kZS0+c2hvdWxk
R2VuZXJhdGUoKSkKLSAgICAgICAgICAgICAgICBjb250aW51ZTsKICAgICAgICAgICAgIHN3aXRj
aCAobm9kZS0+b3AoKSkgewogICAgICAgICAgICAgY2FzZSBHZXRCdXR0ZXJmbHk6CiAgICAgICAg
ICAgICAgICAgaWYgKG5vZGUtPmNoaWxkMSgpID09IGNoaWxkMSkKQEAgLTc3NSw4ICs3MzYsNiBA
QCBwcml2YXRlOgogICAgICAgICAgICAgaWYgKG5vZGUgPT0gY2hpbGQxKSAKICAgICAgICAgICAg
ICAgICBicmVhazsKIAotICAgICAgICAgICAgaWYgKCFub2RlLT5zaG91bGRHZW5lcmF0ZSgpKQot
ICAgICAgICAgICAgICAgIGNvbnRpbnVlOwogICAgICAgICAgICAgc3dpdGNoIChub2RlLT5vcCgp
KSB7CiAgICAgICAgICAgICBjYXNlIFB1dEJ5T2Zmc2V0OgogICAgICAgICAgICAgY2FzZSBQdXRT
dHJ1Y3R1cmU6CkBAIC04MTEsOCArNzcwLDYgQEAgcHJpdmF0ZToKICAgICAgICAgICAgIGlmIChu
b2RlID09IGNoaWxkMSkgCiAgICAgICAgICAgICAgICAgYnJlYWs7CiAKLSAgICAgICAgICAgIGlm
ICghbm9kZS0+c2hvdWxkR2VuZXJhdGUoKSkKLSAgICAgICAgICAgICAgICBjb250aW51ZTsKICAg
ICAgICAgICAgIHN3aXRjaCAobm9kZS0+b3AoKSkgewogICAgICAgICAgICAgY2FzZSBHZXRJbmRl
eGVkUHJvcGVydHlTdG9yYWdlOiB7CiAgICAgICAgICAgICAgICAgaWYgKG5vZGUtPmNoaWxkMSgp
ID09IGNoaWxkMSAmJiBub2RlLT5hcnJheU1vZGUoKSA9PSBhcnJheU1vZGUpCkBAIC04MzksOCAr
Nzk2LDYgQEAgcHJpdmF0ZToKICAgICB7CiAgICAgICAgIGZvciAodW5zaWduZWQgaSA9IG1faW5k
ZXhJbkJsb2NrOyBpLS07KSB7CiAgICAgICAgICAgICBOb2RlKiBub2RlID0gbV9jdXJyZW50Qmxv
Y2stPmF0KGkpOwotICAgICAgICAgICAgaWYgKCFub2RlLT5zaG91bGRHZW5lcmF0ZSgpKQotICAg
ICAgICAgICAgICAgIGNvbnRpbnVlOwogICAgICAgICAgICAgaWYgKG5vZGUtPmNvZGVPcmlnaW4u
aW5saW5lQ2FsbEZyYW1lICE9IGlubGluZUNhbGxGcmFtZSkKICAgICAgICAgICAgICAgICBjb250
aW51ZTsKICAgICAgICAgICAgIHN3aXRjaCAobm9kZS0+b3AoKSkgewpAQCAtODY0LDggKzgxOSw2
IEBAIHByaXZhdGU6CiAgICAgICAgIAogICAgICAgICBmb3IgKHVuc2lnbmVkIGkgPSBtX2luZGV4
SW5CbG9jazsgaS0tOykgewogICAgICAgICAgICAgTm9kZSogbm9kZSA9IG1fY3VycmVudEJsb2Nr
LT5hdChpKTsKLSAgICAgICAgICAgIGlmICghbm9kZS0+c2hvdWxkR2VuZXJhdGUoKSkKLSAgICAg
ICAgICAgICAgICBjb250aW51ZTsKICAgICAgICAgICAgIHN3aXRjaCAobm9kZS0+b3AoKSkgewog
ICAgICAgICAgICAgY2FzZSBHZXRMb2NhbDoKICAgICAgICAgICAgICAgICBpZiAobm9kZS0+bG9j
YWwoKSA9PSBsb2NhbCkgewpAQCAtOTIwLDggKzg3Myw2IEBAIHByaXZhdGU6CiAgICAgICAgIFNl
dExvY2FsU3RvcmVFbGltaW5hdGlvblJlc3VsdCByZXN1bHQ7CiAgICAgICAgIGZvciAodW5zaWdu
ZWQgaSA9IG1faW5kZXhJbkJsb2NrOyBpLS07KSB7CiAgICAgICAgICAgICBOb2RlKiBub2RlID0g
bV9jdXJyZW50QmxvY2stPmF0KGkpOwotICAgICAgICAgICAgaWYgKCFub2RlLT5zaG91bGRHZW5l
cmF0ZSgpKQotICAgICAgICAgICAgICAgIGNvbnRpbnVlOwogICAgICAgICAgICAgc3dpdGNoIChu
b2RlLT5vcCgpKSB7CiAgICAgICAgICAgICBjYXNlIEdldExvY2FsOgogICAgICAgICAgICAgY2Fz
ZSBGbHVzaDoKQEAgLTEwNjUsOSArMTAxNiw2IEBAIHByaXZhdGU6CiAgICAgICAgIGlmIChub2Rl
LT5vcCgpID09IFNldExvY2FsKQogICAgICAgICAgICAgbm9kZS0+Y2hpbGQxKCktPm1lcmdlRmxh
Z3MoTm9kZVJlbGV2YW50VG9PU1IpOwogICAgICAgICAKLSAgICAgICAgaWYgKCFub2RlLT5zaG91
bGRHZW5lcmF0ZSgpKQotICAgICAgICAgICAgcmV0dXJuOwotICAgICAgICAKICNpZiBERkdfRU5B
QkxFKERFQlVHX1BST1BBR0FUSU9OX1ZFUkJPU0UpCiAgICAgICAgIGRhdGFMb2dGKCIgICAlcyBA
JXU6ICIsIEdyYXBoOjpvcE5hbWUobm9kZS0+b3AoKSksIG5vZGUtPmluZGV4KCkpOwogI2VuZGlm
CkBAIC0xMTk5LDcgKzExNDcsNiBAQCBwcml2YXRlOgogICAgICAgICAgICAgaWYgKHJlc3VsdC5t
YXlCZUFjY2Vzc2VkIHx8IHJlc3VsdC5tYXlDbG9iYmVyV29ybGQpCiAgICAgICAgICAgICAgICAg
YnJlYWs7CiAgICAgICAgICAgICBBU1NFUlQocmVwbGFjZW1lbnQtPm9wKCkgPT0gU2V0TG9jYWwp
OwotICAgICAgICAgICAgQVNTRVJUKHJlcGxhY2VtZW50LT5zaG91bGRHZW5lcmF0ZSgpKTsKICAg
ICAgICAgICAgIC8vIEZJWE1FOiBJbnZlc3RpZ2F0ZSB1c2luZyBtYXlFeGl0IGFzIGEgZnVydGhl
ciBvcHRpbWl6YXRpb24uCiAgICAgICAgICAgICBub2RlLT5jb252ZXJ0VG9QaGFudG9tKCk7CiAg
ICAgICAgICAgICBOb2RlKiBkYXRhTm9kZSA9IHJlcGxhY2VtZW50LT5jaGlsZDEoKS5ub2RlKCk7
CkluZGV4OiBTb3VyY2UvSmF2YVNjcmlwdENvcmUvZGZnL0RGR0ZpeHVwUGhhc2UuY3BwCj09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT0KLS0tIFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9kZmcvREZHRml4dXBQaGFzZS5jcHAJKHJl
dmlzaW9uIDE0NDg4NykKKysrIFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9kZmcvREZHRml4dXBQaGFz
ZS5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTgyLDkgKzgyLDYgQEAgcHJpdmF0ZToKICAgICAKICAg
ICB2b2lkIGZpeHVwTm9kZShOb2RlKiBub2RlKQogICAgIHsKLSAgICAgICAgaWYgKCFub2RlLT5z
aG91bGRHZW5lcmF0ZSgpKQotICAgICAgICAgICAgcmV0dXJuOwotICAgICAgICAKICAgICAgICAg
Tm9kZVR5cGUgb3AgPSBub2RlLT5vcCgpOwogCiAjaWYgREZHX0VOQUJMRShERUJVR19QUk9QQUdB
VElPTl9WRVJCT1NFKQpAQCAtNTAxLDggKzQ5OCw2IEBAIHByaXZhdGU6CiAgICAgICAgICAgICAg
ICAgYm9vbCBvayA9IHRydWU7CiAgICAgICAgICAgICAgICAgZm9yICh1bnNpZ25lZCBpID0gbV9p
bmRleEluQmxvY2s7IGktLTspIHsKICAgICAgICAgICAgICAgICAgICAgTm9kZSogY2FuZGlkYXRl
ID0gbV9ibG9jay0+YXQoaSk7Ci0gICAgICAgICAgICAgICAgICAgIGlmICghY2FuZGlkYXRlLT5z
aG91bGRHZW5lcmF0ZSgpKQotICAgICAgICAgICAgICAgICAgICAgICAgY29udGludWU7CiAgICAg
ICAgICAgICAgICAgICAgIGlmIChjYW5kaWRhdGUgPT0gbG9naWNhbE5vdCkgewogICAgICAgICAg
ICAgICAgICAgICAgICAgZm91bmQgPSB0cnVlOwogICAgICAgICAgICAgICAgICAgICAgICAgYnJl
YWs7CkBAIC04MTIsOCArODA3LDYgQEAgcHJpdmF0ZToKICAgICAgICAgICAgIE5vZGUqIG5vZGUg
PSBtX2N1cnJlbnROb2RlID0gYmxvY2stPmF0KG1faW5kZXhJbkJsb2NrKTsKICAgICAgICAgICAg
IGlmIChub2RlLT5vcCgpICE9IFNldExvY2FsKQogICAgICAgICAgICAgICAgIGNvbnRpbnVlOwot
ICAgICAgICAgICAgaWYgKCFub2RlLT5zaG91bGRHZW5lcmF0ZSgpKQotICAgICAgICAgICAgICAg
IGNvbnRpbnVlOwogICAgICAgICAgICAgCiAgICAgICAgICAgICBWYXJpYWJsZUFjY2Vzc0RhdGEq
IHZhcmlhYmxlID0gbm9kZS0+dmFyaWFibGVBY2Nlc3NEYXRhKCk7CiAgICAgICAgICAgICAKSW5k
ZXg6IFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9kZmcvREZHUHJlZGljdGlvblByb3BhZ2F0aW9uUGhh
c2UuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9kZmcvREZHUHJlZGlj
dGlvblByb3BhZ2F0aW9uUGhhc2UuY3BwCShyZXZpc2lvbiAxNDQ4ODcpCisrKyBTb3VyY2UvSmF2
YVNjcmlwdENvcmUvZGZnL0RGR1ByZWRpY3Rpb25Qcm9wYWdhdGlvblBoYXNlLmNwcAkod29ya2lu
ZyBjb3B5KQpAQCAtMTgxLDkgKzE4MSw2IEBAIHByaXZhdGU6CiAKICAgICB2b2lkIHByb3BhZ2F0
ZShOb2RlKiBub2RlKQogICAgIHsKLSAgICAgICAgaWYgKCFub2RlLT5zaG91bGRHZW5lcmF0ZSgp
KQotICAgICAgICAgICAgcmV0dXJuOwotICAgICAgICAKICAgICAgICAgTm9kZVR5cGUgb3AgPSBu
b2RlLT5vcCgpOwogICAgICAgICBOb2RlRmxhZ3MgZmxhZ3MgPSBub2RlLT5mbGFncygpICYgTm9k
ZUJhY2tQcm9wTWFzazsKIApJbmRleDogU291cmNlL0phdmFTY3JpcHRDb3JlL2RmZy9ERkdTdHJ1
Y3R1cmVDaGVja0hvaXN0aW5nUGhhc2UuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9KYXZhU2Ny
aXB0Q29yZS9kZmcvREZHU3RydWN0dXJlQ2hlY2tIb2lzdGluZ1BoYXNlLmNwcAkocmV2aXNpb24g
MTQ0ODg3KQorKysgU291cmNlL0phdmFTY3JpcHRDb3JlL2RmZy9ERkdTdHJ1Y3R1cmVDaGVja0hv
aXN0aW5nUGhhc2UuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC02Nyw4ICs2Nyw2IEBAIHB1YmxpYzoK
ICAgICAgICAgICAgICAgICBjb250aW51ZTsKICAgICAgICAgICAgIGZvciAodW5zaWduZWQgaW5k
ZXhJbkJsb2NrID0gMDsgaW5kZXhJbkJsb2NrIDwgYmxvY2stPnNpemUoKTsgKytpbmRleEluQmxv
Y2spIHsKICAgICAgICAgICAgICAgICBOb2RlKiBub2RlID0gYmxvY2stPmF0KGluZGV4SW5CbG9j
ayk7Ci0gICAgICAgICAgICAgICAgaWYgKCFub2RlLT5zaG91bGRHZW5lcmF0ZSgpKQotICAgICAg
ICAgICAgICAgICAgICBjb250aW51ZTsKICAgICAgICAgICAgICAgICBzd2l0Y2ggKG5vZGUtPm9w
KCkpIHsKICAgICAgICAgICAgICAgICBjYXNlIENoZWNrU3RydWN0dXJlOgogICAgICAgICAgICAg
ICAgIGNhc2UgU3RydWN0dXJlVHJhbnNpdGlvbldhdGNocG9pbnQ6IHsKQEAgLTEzMyw4ICsxMzEs
NiBAQCBwdWJsaWM6CiAgICAgICAgICAgICAgICAgICAgIE5vZGUqIHNvdXJjZSA9IG5vZGUtPmNo
aWxkMSgpLm5vZGUoKTsKICAgICAgICAgICAgICAgICAgICAgZm9yICh1bnNpZ25lZCBzdWJJbmRl
eEluQmxvY2sgPSAwOyBzdWJJbmRleEluQmxvY2sgPCBibG9jay0+c2l6ZSgpOyArK3N1YkluZGV4
SW5CbG9jaykgewogICAgICAgICAgICAgICAgICAgICAgICAgTm9kZSogc3ViTm9kZSA9IGJsb2Nr
LT5hdChzdWJJbmRleEluQmxvY2spOwotICAgICAgICAgICAgICAgICAgICAgICAgaWYgKCFzdWJO
b2RlLT5zaG91bGRHZW5lcmF0ZSgpKQotICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnRp
bnVlOwogICAgICAgICAgICAgICAgICAgICAgICAgc3dpdGNoIChzdWJOb2RlLT5vcCgpKSB7CiAg
ICAgICAgICAgICAgICAgICAgICAgICBjYXNlIENoZWNrU3RydWN0dXJlOiB7CiAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgaWYgKHN1Yk5vZGUtPmNoaWxkMSgpICE9IHNvdXJjZSkKQEAgLTI2
Myw4ICsyNTksNiBAQCBwdWJsaWM6CiAgICAgICAgICAgICAgICAgLy8gQmUgY2FyZWZ1bCBub3Qg
dG8gdXNlICdub2RlJyBhZnRlciBhcHBlbmRpbmcgdG8gdGhlIGdyYXBoLiBJbiB0aG9zZSBzd2l0
Y2gKICAgICAgICAgICAgICAgICAvLyBjYXNlcyB3aGVyZSB3ZSBuZWVkIHRvIGFwcGVuZCwgd2Ug
Zmlyc3QgY2FyZWZ1bGx5IGV4dHJhY3QgZXZlcnl0aGluZyB3ZSBuZWVkCiAgICAgICAgICAgICAg
ICAgLy8gZnJvbSB0aGUgbm9kZSwgYmVmb3JlIGRvaW5nIGFueSBhcHBlbmRpbmcuCi0gICAgICAg
ICAgICAgICAgaWYgKCFub2RlLT5zaG91bGRHZW5lcmF0ZSgpKQotICAgICAgICAgICAgICAgICAg
ICBjb250aW51ZTsKICAgICAgICAgICAgICAgICBzd2l0Y2ggKG5vZGUtPm9wKCkpIHsKICAgICAg
ICAgICAgICAgICBjYXNlIFNldEFyZ3VtZW50OiB7CiAgICAgICAgICAgICAgICAgICAgIEFTU0VS
VCghYmxvY2tJbmRleCk7Cg==
</data>
<flag name="review"
          id="212685"
          type_id="1"
          status="+"
          setter="ggaren"
    />
          </attachment>
      

    </bug>

</bugzilla>