<?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>72922</bug_id>
          
          <creation_ts>2011-11-21 17:46:44 -0800</creation_ts>
          <short_desc>DFG should have richer debug output for CFA and phi processing</short_desc>
          <delta_ts>2011-11-21 19:03:39 -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>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Filip Pizlo">fpizlo</reporter>
          <assigned_to name="Nobody">webkit-unassigned</assigned_to>
          <cc>webkit.review.bot</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>507332</commentid>
    <comment_count>0</comment_count>
    <who name="Filip Pizlo">fpizlo</who>
    <bug_when>2011-11-21 17:46:44 -0800</bug_when>
    <thetext>Patch forthcoming.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>507335</commentid>
    <comment_count>1</comment_count>
      <attachid>116158</attachid>
    <who name="Filip Pizlo">fpizlo</who>
    <bug_when>2011-11-21 17:52:13 -0800</bug_when>
    <thetext>Created attachment 116158
the patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>507358</commentid>
    <comment_count>2</comment_count>
      <attachid>116158</attachid>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2011-11-21 19:00:34 -0800</bug_when>
    <thetext>Comment on attachment 116158
the patch

Rejecting attachment 116158 from commit-queue.

Failed to run &quot;[&apos;/mnt/git/webkit-commit-queue/Tools/Scripts/webkit-patch&apos;, &apos;--status-host=queues.webkit.org&apos;, &apos;-...&quot; exit_code: 2

Last 500 characters of output:
vaScriptCore/dfg/DFGByteCodeParser.cpp.rej
patching file Source/JavaScriptCore/dfg/DFGCommon.h
patching file Source/JavaScriptCore/dfg/DFGDriver.cpp
patching file Source/JavaScriptCore/dfg/DFGGraph.cpp
patching file Source/JavaScriptCore/dfg/DFGNode.h
patching file Source/JavaScriptCore/dfg/DFGOSRExitCompiler.cpp
patching file Source/JavaScriptCore/dfg/DFGOperands.h

Failed to run &quot;[u&apos;/mnt/git/webkit-commit-queue/Tools/Scripts/svn-apply&apos;, u&apos;--reviewer&apos;, u&apos;Gavin Barraclough&apos;, u&apos;...&quot; exit_code: 1

Full output: http://queues.webkit.org/results/10557085</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>507361</commentid>
    <comment_count>3</comment_count>
    <who name="Filip Pizlo">fpizlo</who>
    <bug_when>2011-11-21 19:03:34 -0800</bug_when>
    <thetext>Landed in http://trac.webkit.org/changeset/100975</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>507362</commentid>
    <comment_count>4</comment_count>
    <who name="Filip Pizlo">fpizlo</who>
    <bug_when>2011-11-21 19:03:39 -0800</bug_when>
    <thetext>Landed in http://trac.webkit.org/changeset/100975</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>116158</attachid>
            <date>2011-11-21 17:52:13 -0800</date>
            <delta_ts>2011-11-21 19:00:34 -0800</delta_ts>
            <desc>the patch</desc>
            <filename>debugdfg_patch_1.diff</filename>
            <type>text/plain</type>
            <size>17768</size>
            <attacher name="Filip Pizlo">fpizlo</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9DaGFuZ2VMb2cKPT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291
cmNlL0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwkocmV2aXNpb24gMTAwOTcxKQorKysgU291cmNl
L0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDM4IEBA
CisyMDExLTExLTIxICBGaWxpcCBQaXpsbyAgPGZwaXpsb0BhcHBsZS5jb20+CisKKyAgICAgICAg
REZHIHNob3VsZCBoYXZlIHJpY2hlciBkZWJ1ZyBvdXRwdXQgZm9yIENGQSBhbmQgcGhpIHByb2Nl
c3NpbmcKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTcy
OTIyCisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisgICAgICAgIAorICAg
ICAgICBJbiB0aGUgZGVmYXVsdCB2ZXJib3NlIG1vZGUsIHdlIG5vdyBwcmludCBpbmZvcm1hdGlv
biBhYm91dCB2YXJpYWJsZQorICAgICAgICBzdGF0ZSBhdCB0aGUgYm90dG9tIG9mIGJhc2ljIGJs
b2NrcyBpbiBhZGRpdGlvbiB0byB0aGUgdG9wLCBhbmQgd2UKKyAgICAgICAgYWxzbyBwcmludCBs
b2NhbCB2YXJpYWJsZSBsaW5raW5nLiBJbiB0aGUgdmVyYm9zZSBwcm9wYWdhdGlvbiBtb2RlLAor
ICAgICAgICB0aGUgc3RhdGUgb2YgcGhpIHByb2Nlc3NpbmcgaXMgZHVtcGVkIG1vcmUgcmljaGx5
IGFuZCBDRkEgbWVyZ2luZyAodGhlCisgICAgICAgIG1vc3Qgc3VidGxlIHBhcnQgb2YgQ0ZBKSBp
cyB0cmFjZWQgYXMgd2VsbC4KKworICAgICAgICAqIGRmZy9ERkdBYnN0cmFjdFN0YXRlLmNwcDoK
KyAgICAgICAgKEpTQzo6REZHOjpBYnN0cmFjdFN0YXRlOjplbmRCYXNpY0Jsb2NrKToKKyAgICAg
ICAgKEpTQzo6REZHOjpBYnN0cmFjdFN0YXRlOjptZXJnZVN0YXRlQXRUYWlsKToKKyAgICAgICAg
KiBkZmcvREZHQWJzdHJhY3RWYWx1ZS5oOgorICAgICAgICAoSlNDOjpERkc6OlN0cnVjdHVyZUFi
c3RyYWN0VmFsdWU6OmR1bXApOgorICAgICAgICAoSlNDOjpERkc6OkFic3RyYWN0VmFsdWU6OmR1
bXApOgorICAgICAgICAqIGRmZy9ERkdCeXRlQ29kZVBhcnNlci5jcHA6CisgICAgICAgIChKU0M6
OkRGRzo6Qnl0ZUNvZGVQYXJzZXI6OnByb2Nlc3NQaGlTdGFjayk6CisgICAgICAgIChKU0M6OkRG
Rzo6Qnl0ZUNvZGVQYXJzZXI6OnBhcnNlKToKKyAgICAgICAgKiBkZmcvREZHQ29tbW9uLmg6Cisg
ICAgICAgIChKU0M6OkRGRzo6Tm9kZUluZGV4VHJhaXRzOjpkdW1wKToKKyAgICAgICAgKiBkZmcv
REZHRHJpdmVyLmNwcDoKKyAgICAgICAgKEpTQzo6REZHOjpjb21waWxlKToKKyAgICAgICAgKiBk
ZmcvREZHR3JhcGguY3BwOgorICAgICAgICAoSlNDOjpERkc6OkdyYXBoOjpkdW1wKToKKyAgICAg
ICAgKiBkZmcvREZHTm9kZS5oOgorICAgICAgICAoSlNDOjpERkc6Ok5vZGU6OmR1bXBDaGlsZHJl
bik6CisgICAgICAgICogZGZnL0RGR09TUkV4aXRDb21waWxlci5jcHA6CisgICAgICAgICogZGZn
L0RGR09wZXJhbmRzLmg6CisgICAgICAgIChKU0M6OkRGRzo6T3BlcmFuZFZhbHVlVHJhaXRzOjpk
dW1wKToKKyAgICAgICAgKEpTQzo6REZHOjpkdW1wT3BlcmFuZHMpOgorCiAyMDExLTExLTIxICBT
aW1vbiBIYXVzbWFubiAgPHNpbW9uLmhhdXNtYW5uQG5va2lhLmNvbT4KIAogICAgICAgICBbUXRd
IFNwZWVkIHVwIGRlYnVnIGJ1aWxkcy4KSW5kZXg6IFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9kZmcv
REZHQWJzdHJhY3RTdGF0ZS5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL0phdmFTY3JpcHRDb3Jl
L2RmZy9ERkdBYnN0cmFjdFN0YXRlLmNwcAkocmV2aXNpb24gMTAwOTcxKQorKysgU291cmNlL0ph
dmFTY3JpcHRDb3JlL2RmZy9ERkdBYnN0cmFjdFN0YXRlLmNwcAkod29ya2luZyBjb3B5KQpAQCAt
MTMzLDExICsxMzMsMTkgQEAgYm9vbCBBYnN0cmFjdFN0YXRlOjplbmRCYXNpY0Jsb2NrKE1lcmdl
TQogICAgIGJvb2wgY2hhbmdlZCA9IGZhbHNlOwogICAgIAogICAgIGlmIChtZXJnZU1vZGUgIT0g
RG9udE1lcmdlIHx8ICFBU1NFUlRfRElTQUJMRUQpIHsKLSAgICAgICAgZm9yIChzaXplX3QgYXJn
dW1lbnQgPSAwOyBhcmd1bWVudCA8IGJsb2NrLT52YXJpYWJsZXNBdFRhaWwubnVtYmVyT2ZBcmd1
bWVudHMoKTsgKythcmd1bWVudCkKKyAgICAgICAgZm9yIChzaXplX3QgYXJndW1lbnQgPSAwOyBh
cmd1bWVudCA8IGJsb2NrLT52YXJpYWJsZXNBdFRhaWwubnVtYmVyT2ZBcmd1bWVudHMoKTsgKyth
cmd1bWVudCkgeworI2lmIERGR19FTkFCTEUoREVCVUdfUFJPUEFHQVRJT05fVkVSQk9TRSkKKyAg
ICAgICAgICAgIHByaW50ZigiICAgICAgICBNZXJnaW5nIHN0YXRlIGZvciBhcmd1bWVudCAlbHUu
XG4iLCBhcmd1bWVudCk7CisjZW5kaWYKICAgICAgICAgICAgIGNoYW5nZWQgfD0gbWVyZ2VTdGF0
ZUF0VGFpbChibG9jay0+dmFsdWVzQXRUYWlsLmFyZ3VtZW50KGFyZ3VtZW50KSwgbV92YXJpYWJs
ZXMuYXJndW1lbnQoYXJndW1lbnQpLCBibG9jay0+dmFyaWFibGVzQXRUYWlsLmFyZ3VtZW50KGFy
Z3VtZW50KSk7CisgICAgICAgIH0KICAgICAgICAgCi0gICAgICAgIGZvciAoc2l6ZV90IGxvY2Fs
ID0gMDsgbG9jYWwgPCBibG9jay0+dmFyaWFibGVzQXRUYWlsLm51bWJlck9mTG9jYWxzKCk7ICsr
bG9jYWwpCisgICAgICAgIGZvciAoc2l6ZV90IGxvY2FsID0gMDsgbG9jYWwgPCBibG9jay0+dmFy
aWFibGVzQXRUYWlsLm51bWJlck9mTG9jYWxzKCk7ICsrbG9jYWwpIHsKKyNpZiBERkdfRU5BQkxF
KERFQlVHX1BST1BBR0FUSU9OX1ZFUkJPU0UpCisgICAgICAgICAgICBwcmludGYoIiAgICAgICAg
TWVyZ2luZyBzdGF0ZSBmb3IgbG9jYWwgJWx1LlxuIiwgbG9jYWwpOworI2VuZGlmCiAgICAgICAg
ICAgICBjaGFuZ2VkIHw9IG1lcmdlU3RhdGVBdFRhaWwoYmxvY2stPnZhbHVlc0F0VGFpbC5sb2Nh
bChsb2NhbCksIG1fdmFyaWFibGVzLmxvY2FsKGxvY2FsKSwgYmxvY2stPnZhcmlhYmxlc0F0VGFp
bC5sb2NhbChsb2NhbCkpOworICAgICAgICB9CiAgICAgfQogICAgIAogICAgIEFTU0VSVChtZXJn
ZU1vZGUgIT0gRG9udE1lcmdlIHx8ICFjaGFuZ2VkKTsKQEAgLTY4NywyMyArNjk1LDM2IEBAIGlu
bGluZSBib29sIEFic3RyYWN0U3RhdGU6Om1lcmdlU3RhdGVBdFQKICAgICBpZiAoIW5vZGUucmVm
Q291bnQoKSkKICAgICAgICAgcmV0dXJuIGZhbHNlOwogICAgIAorI2lmIERGR19FTkFCTEUoREVC
VUdfUFJPUEFHQVRJT05fVkVSQk9TRSkKKyAgICAgICAgICAgIHByaW50ZigiICAgICAgICAgIEl0
J3MgbGl2ZSwgbm9kZSBAJXUuXG4iLCBub2RlSW5kZXgpOworI2VuZGlmCisKICAgICBzd2l0Y2gg
KG5vZGUub3ApIHsKICAgICBjYXNlIFBoaToKICAgICBjYXNlIFNldEFyZ3VtZW50OgogICAgIGNh
c2UgRmx1c2g6CiAgICAgICAgIC8vIFRoZSBibG9jayB0cmFuc2ZlcnMgdGhlIHZhbHVlIGZyb20g
aGVhZCB0byB0YWlsLgogICAgICAgICBzb3VyY2UgPSAmaW5WYXJpYWJsZTsKKyNpZiBERkdfRU5B
QkxFKERFQlVHX1BST1BBR0FUSU9OX1ZFUkJPU0UpCisgICAgICAgIHByaW50ZigiICAgICAgICAg
IFRyYW5zZmVyaW5nIGZyb20gaGVhZCB0byB0YWlsLlxuIik7CisjZW5kaWYKICAgICAgICAgYnJl
YWs7CiAgICAgICAgICAgICAKICAgICBjYXNlIEdldExvY2FsOgogICAgICAgICAvLyBUaGUgYmxv
Y2sgcmVmaW5lcyB0aGUgdmFsdWUgd2l0aCBhZGRpdGlvbmFsIHNwZWN1bGF0aW9ucy4KICAgICAg
ICAgc291cmNlID0gJmZvck5vZGUobm9kZUluZGV4KTsKKyNpZiBERkdfRU5BQkxFKERFQlVHX1BS
T1BBR0FUSU9OX1ZFUkJPU0UpCisgICAgICAgIHByaW50ZigiICAgICAgICAgIFJlZmluaW5nLlxu
Iik7CisjZW5kaWYKICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgICAKICAgICBjYXNlIFNldExv
Y2FsOgogICAgICAgICAvLyBUaGUgYmxvY2sgc2V0cyB0aGUgdmFyaWFibGUsIGFuZCBwb3RlbnRp
YWxseSByZWZpbmVzIGl0LCBib3RoCiAgICAgICAgIC8vIGJlZm9yZSBhbmQgYWZ0ZXIgc2V0dGlu
ZyBpdC4KICAgICAgICAgc291cmNlID0gJmZvck5vZGUobm9kZS5jaGlsZDEoKSk7CisjaWYgREZH
X0VOQUJMRShERUJVR19QUk9QQUdBVElPTl9WRVJCT1NFKQorICAgICAgICBwcmludGYoIiAgICAg
ICAgICBTZXR0aW5nLlxuIik7CisjZW5kaWYKICAgICAgICAgYnJlYWs7CiAgICAgICAgIAogICAg
IGRlZmF1bHQ6CkBAIC03MTUsNiArNzM2LDkgQEAgaW5saW5lIGJvb2wgQWJzdHJhY3RTdGF0ZTo6
bWVyZ2VTdGF0ZUF0VAogICAgIGlmIChkZXN0aW5hdGlvbiA9PSAqc291cmNlKSB7CiAgICAgICAg
IC8vIEFic3RyYWN0IGV4ZWN1dGlvbiBkaWQgbm90IGNoYW5nZSB0aGUgb3V0cHV0IHZhbHVlIG9m
IHRoZSB2YXJpYWJsZSwgZm9yIHRoaXMKICAgICAgICAgLy8gYmFzaWMgYmxvY2ssIG9uIHRoaXMg
aXRlcmF0aW9uLgorI2lmIERGR19FTkFCTEUoREVCVUdfUFJPUEFHQVRJT05fVkVSQk9TRSkKKyAg
ICAgICAgcHJpbnRmKCIgICAgICAgICAgTm90IGNoYW5nZWQhXG4iKTsKKyNlbmRpZgogICAgICAg
ICByZXR1cm4gZmFsc2U7CiAgICAgfQogICAgIApAQCAtNzIyLDYgKzc0Niw5IEBAIGlubGluZSBi
b29sIEFic3RyYWN0U3RhdGU6Om1lcmdlU3RhdGVBdFQKICAgICAvLyB0aGlzIHZhcmlhYmxlIGFm
dGVyIGV4ZWN1dGlvbiBvZiB0aGlzIGJhc2ljIGJsb2NrLiBVcGRhdGUgdGhlIHN0YXRlLCBhbmQg
cmV0dXJuCiAgICAgLy8gdHJ1ZSB0byBpbmRpY2F0ZSB0aGF0IHRoZSBmaXhwb2ludCBtdXN0IGdv
IG9uIQogICAgIGRlc3RpbmF0aW9uID0gKnNvdXJjZTsKKyNpZiBERkdfRU5BQkxFKERFQlVHX1BS
T1BBR0FUSU9OX1ZFUkJPU0UpCisgICAgcHJpbnRmKCIgICAgICAgICAgQ2hhbmdlZCFcbiIpOwor
I2VuZGlmCiAgICAgcmV0dXJuIHRydWU7CiB9CiAKSW5kZXg6IFNvdXJjZS9KYXZhU2NyaXB0Q29y
ZS9kZmcvREZHQWJzdHJhY3RWYWx1ZS5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9KYXZhU2NyaXB0
Q29yZS9kZmcvREZHQWJzdHJhY3RWYWx1ZS5oCShyZXZpc2lvbiAxMDA5NzEpCisrKyBTb3VyY2Uv
SmF2YVNjcmlwdENvcmUvZGZnL0RGR0Fic3RyYWN0VmFsdWUuaAkod29ya2luZyBjb3B5KQpAQCAt
Mjg4LDcgKzI4OCw3IEBAIHB1YmxpYzoKICAgICB9CiAgICAgCiAjaWZuZGVmIE5ERUJVRwotICAg
IHZvaWQgZHVtcChGSUxFKiBvdXQpCisgICAgdm9pZCBkdW1wKEZJTEUqIG91dCkgY29uc3QKICAg
ICB7CiAgICAgICAgIGlmIChpc1RvcCgpKSB7CiAgICAgICAgICAgICBmcHJpbnRmKG91dCwgIlRP
UCIpOwpAQCAtNDY3LDcgKzQ2Nyw3IEBAIHN0cnVjdCBBYnN0cmFjdFZhbHVlIHsKICAgICB9CiAg
ICAgCiAjaWZuZGVmIE5ERUJVRwotICAgIHZvaWQgZHVtcChGSUxFKiBvdXQpCisgICAgdm9pZCBk
dW1wKEZJTEUqIG91dCkgY29uc3QKICAgICB7CiAgICAgICAgIGZwcmludGYob3V0LCAiKCVzLCAi
LCBwcmVkaWN0aW9uVG9TdHJpbmcobV90eXBlKSk7CiAgICAgICAgIG1fc3RydWN0dXJlLmR1bXAo
b3V0KTsKSW5kZXg6IFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9kZmcvREZHQnl0ZUNvZGVQYXJzZXIu
Y3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9kZmcvREZHQnl0ZUNvZGVQ
YXJzZXIuY3BwCShyZXZpc2lvbiAxMDA5NzEpCisrKyBTb3VyY2UvSmF2YVNjcmlwdENvcmUvZGZn
L0RGR0J5dGVDb2RlUGFyc2VyLmNwcAkod29ya2luZyBjb3B5KQpAQCAtMjE2NCwxMyArMjE2NCwy
NSBAQCB2b2lkIEJ5dGVDb2RlUGFyc2VyOjpwcm9jZXNzUGhpU3RhY2soKQogICAgICAgICB1bnNp
Z25lZCB2YXJObyA9IGVudHJ5Lm1fdmFyTm87CiAgICAgICAgIFZhcmlhYmxlQWNjZXNzRGF0YSog
ZGF0YUZvclBoaSA9IG1fZ3JhcGhbZW50cnkubV9waGldLnZhcmlhYmxlQWNjZXNzRGF0YSgpOwog
CisjaWYgREZHX0VOQUJMRShERUJVR19QUk9QQUdBVElPTl9WRVJCT1NFKQorICAgICAgICBwcmlu
dGYoIiAgIEhhbmRsaW5nIHBoaSBlbnRyeSBmb3IgdmFyICV1LCBwaGkgQCV1LlxuIiwgZW50cnku
bV92YXJObywgZW50cnkubV9waGkpOworI2VuZGlmCisKICAgICAgICAgZm9yIChzaXplX3QgaSA9
IDA7IGkgPCBwcmVkZWNlc3NvcnMuc2l6ZSgpOyArK2kpIHsKKyNpZiBERkdfRU5BQkxFKERFQlVH
X1BST1BBR0FUSU9OX1ZFUkJPU0UpCisgICAgICAgICAgICBwcmludGYoIiAgICAgRGVhbGluZyB3
aXRoIHByZWRlY2Vzc29yIGJsb2NrICV1LlxuIiwgcHJlZGVjZXNzb3JzW2ldKTsKKyNlbmRpZgor
ICAgICAgICAgICAgCiAgICAgICAgICAgICBCYXNpY0Jsb2NrKiBwcmVkZWNlc3NvckJsb2NrID0g
bV9ncmFwaC5tX2Jsb2Nrc1twcmVkZWNlc3NvcnNbaV1dLmdldCgpOwogCiAgICAgICAgICAgICBO
b2RlSW5kZXgmIHZhciA9IChzdGFja1R5cGUgPT0gQXJndW1lbnRQaGlTdGFjaykgPyBwcmVkZWNl
c3NvckJsb2NrLT52YXJpYWJsZXNBdFRhaWwuYXJndW1lbnQodmFyTm8pIDogcHJlZGVjZXNzb3JC
bG9jay0+dmFyaWFibGVzQXRUYWlsLmxvY2FsKHZhck5vKTsKLQorICAgICAgICAgICAgCiAgICAg
ICAgICAgICBOb2RlSW5kZXggdmFsdWVJblByZWRlY2Vzc29yID0gdmFyOwogICAgICAgICAgICAg
aWYgKHZhbHVlSW5QcmVkZWNlc3NvciA9PSBOb05vZGUpIHsKKyNpZiBERkdfRU5BQkxFKERFQlVH
X1BST1BBR0FUSU9OX1ZFUkJPU0UpCisgICAgICAgICAgICAgICAgcHJpbnRmKCIgICAgICBEaWQg
bm90IGZpbmQgbm9kZSwgYWRkaW5nIHBoaS5cbiIpOworI2VuZGlmCisKICAgICAgICAgICAgICAg
ICB2YWx1ZUluUHJlZGVjZXNzb3IgPSBhZGRUb0dyYXBoKFBoaSwgT3BJbmZvKG5ld1ZhcmlhYmxl
QWNjZXNzRGF0YShzdGFja1R5cGUgPT0gQXJndW1lbnRQaGlTdGFjayA/IHZhck5vIC0gbV9jb2Rl
QmxvY2stPm1fbnVtUGFyYW1ldGVycyAtIFJlZ2lzdGVyRmlsZTo6Q2FsbEZyYW1lSGVhZGVyU2l6
ZSA6IHZhck5vKSkpOwogICAgICAgICAgICAgICAgIHZhciA9IHZhbHVlSW5QcmVkZWNlc3NvcjsK
ICAgICAgICAgICAgICAgICBpZiAoc3RhY2tUeXBlID09IEFyZ3VtZW50UGhpU3RhY2spCkBAIC0y
MTc5LDYgKzIxOTEsMTAgQEAgdm9pZCBCeXRlQ29kZVBhcnNlcjo6cHJvY2Vzc1BoaVN0YWNrKCkK
ICAgICAgICAgICAgICAgICAgICAgcHJlZGVjZXNzb3JCbG9jay0+dmFyaWFibGVzQXRIZWFkLnNl
dExvY2FsRmlyc3RUaW1lKHZhck5vLCB2YWx1ZUluUHJlZGVjZXNzb3IpOwogICAgICAgICAgICAg
ICAgIHBoaVN0YWNrLmFwcGVuZChQaGlTdGFja0VudHJ5KHByZWRlY2Vzc29yQmxvY2ssIHZhbHVl
SW5QcmVkZWNlc3NvciwgdmFyTm8pKTsKICAgICAgICAgICAgIH0gZWxzZSBpZiAobV9ncmFwaFt2
YWx1ZUluUHJlZGVjZXNzb3JdLm9wID09IEdldExvY2FsKSB7CisjaWYgREZHX0VOQUJMRShERUJV
R19QUk9QQUdBVElPTl9WRVJCT1NFKQorICAgICAgICAgICAgICAgIHByaW50ZigiICAgICAgRm91
bmQgR2V0TG9jYWwgQCV1LlxuIiwgdmFsdWVJblByZWRlY2Vzc29yKTsKKyNlbmRpZgorCiAgICAg
ICAgICAgICAgICAgLy8gV2Ugd2FudCB0byBlbnN1cmUgdGhhdCB0aGUgVmFyaWFibGVBY2Nlc3NE
YXRhcyBhcmUgaWRlbnRpY2FsIGJldHdlZW4gdGhlCiAgICAgICAgICAgICAgICAgLy8gR2V0TG9j
YWwgYW5kIGl0cyBibG9jay1sb2NhbCBQaGkuIFN0cmljdGx5IHNwZWFraW5nIHdlIG9ubHkgbmVl
ZCB0aGUgdHdvCiAgICAgICAgICAgICAgICAgLy8gdG8gYmUgdW5pZmllZC4gQnV0IGZvciBlZmZp
Y2llbmN5LCB3ZSB3YW50IHRoZSBjb2RlIHRoYXQgY3JlYXRlcyBHZXRMb2NhbHMKQEAgLTIxODYs
NiArMjIwMiwxMCBAQCB2b2lkIEJ5dGVDb2RlUGFyc2VyOjpwcm9jZXNzUGhpU3RhY2soKQogICAg
ICAgICAgICAgICAgIEFTU0VSVChtX2dyYXBoW3ZhbHVlSW5QcmVkZWNlc3Nvcl0udmFyaWFibGVB
Y2Nlc3NEYXRhKCkgPT0gbV9ncmFwaFttX2dyYXBoW3ZhbHVlSW5QcmVkZWNlc3Nvcl0uY2hpbGQx
KCldLnZhcmlhYmxlQWNjZXNzRGF0YSgpKTsKICAgICAgICAgICAgICAgICAKICAgICAgICAgICAg
ICAgICB2YWx1ZUluUHJlZGVjZXNzb3IgPSBtX2dyYXBoW3ZhbHVlSW5QcmVkZWNlc3Nvcl0uY2hp
bGQxKCk7CisgICAgICAgICAgICB9IGVsc2UgeworI2lmIERGR19FTkFCTEUoREVCVUdfUFJPUEFH
QVRJT05fVkVSQk9TRSkKKyAgICAgICAgICAgICAgICBwcmludGYoIiAgICAgIEZvdW5kIEAldS5c
biIsIHZhbHVlSW5QcmVkZWNlc3Nvcik7CisjZW5kaWYKICAgICAgICAgICAgIH0KICAgICAgICAg
ICAgIEFTU0VSVChtX2dyYXBoW3ZhbHVlSW5QcmVkZWNlc3Nvcl0ub3AgPT0gU2V0TG9jYWwgfHwg
bV9ncmFwaFt2YWx1ZUluUHJlZGVjZXNzb3JdLm9wID09IFBoaSB8fCBtX2dyYXBoW3ZhbHVlSW5Q
cmVkZWNlc3Nvcl0ub3AgPT0gRmx1c2ggfHwgKG1fZ3JhcGhbdmFsdWVJblByZWRlY2Vzc29yXS5v
cCA9PSBTZXRBcmd1bWVudCAmJiBzdGFja1R5cGUgPT0gQXJndW1lbnRQaGlTdGFjaykpOwogICAg
ICAgICAgICAgCkBAIC0yMTk0LDI0ICsyMjE0LDU5IEBAIHZvaWQgQnl0ZUNvZGVQYXJzZXI6OnBy
b2Nlc3NQaGlTdGFjaygpCiAgICAgICAgICAgICBkYXRhRm9yUHJlZGVjZXNzb3ItPnVuaWZ5KGRh
dGFGb3JQaGkpOwogCiAgICAgICAgICAgICBOb2RlKiBwaGlOb2RlID0gJm1fZ3JhcGhbZW50cnku
bV9waGldOwotICAgICAgICAgICAgaWYgKHBoaU5vZGUtPnJlZkNvdW50KCkpCisjaWYgREZHX0VO
QUJMRShERUJVR19QUk9QQUdBVElPTl9WRVJCT1NFKQorICAgICAgICAgICAgcHJpbnRmKCIgICAg
ICBSZWYgY291bnQgb2YgQCV1ID0gJXUuXG4iLCBlbnRyeS5tX3BoaSwgcGhpTm9kZS0+cmVmQ291
bnQoKSk7CisjZW5kaWYKKyAgICAgICAgICAgIGlmIChwaGlOb2RlLT5yZWZDb3VudCgpKSB7Cisj
aWYgREZHX0VOQUJMRShERUJVR19QUk9QQUdBVElPTl9WRVJCT1NFKQorICAgICAgICAgICAgICAg
IHByaW50ZigiICAgICAgUmVmZmluZyBAJXUuXG4iLCB2YWx1ZUluUHJlZGVjZXNzb3IpOworI2Vu
ZGlmCiAgICAgICAgICAgICAgICAgbV9ncmFwaC5yZWYodmFsdWVJblByZWRlY2Vzc29yKTsKKyAg
ICAgICAgICAgIH0KIAogICAgICAgICAgICAgaWYgKHBoaU5vZGUtPmNoaWxkMSgpID09IE5vTm9k
ZSkgeworI2lmIERGR19FTkFCTEUoREVCVUdfUFJPUEFHQVRJT05fVkVSQk9TRSkKKyAgICAgICAg
ICAgICAgICBwcmludGYoIiAgICAgIFNldHRpbmcgQCV1LT5jaGlsZDEgPSBAJXUuXG4iLCBlbnRy
eS5tX3BoaSwgdmFsdWVJblByZWRlY2Vzc29yKTsKKyNlbmRpZgogICAgICAgICAgICAgICAgIHBo
aU5vZGUtPmNoaWxkcmVuLmZpeGVkLmNoaWxkMSA9IHZhbHVlSW5QcmVkZWNlc3NvcjsKKyNpZiBE
RkdfRU5BQkxFKERFQlVHX1BST1BBR0FUSU9OX1ZFUkJPU0UpCisgICAgICAgICAgICAgICAgcHJp
bnRmKCIgICAgICBDaGlsZHJlbiBvZiBAJXU6ICIsIGVudHJ5Lm1fcGhpKTsKKyAgICAgICAgICAg
ICAgICBwaGlOb2RlLT5kdW1wQ2hpbGRyZW4oc3Rkb3V0KTsKKyAgICAgICAgICAgICAgICBwcmlu
dGYoIi5cbiIpOworI2VuZGlmCiAgICAgICAgICAgICAgICAgY29udGludWU7CiAgICAgICAgICAg
ICB9CiAgICAgICAgICAgICBpZiAocGhpTm9kZS0+Y2hpbGQyKCkgPT0gTm9Ob2RlKSB7CisjaWYg
REZHX0VOQUJMRShERUJVR19QUk9QQUdBVElPTl9WRVJCT1NFKQorICAgICAgICAgICAgICAgIHBy
aW50ZigiICAgICAgU2V0dGluZyBAJXUtPmNoaWxkMiA9IEAldS5cbiIsIGVudHJ5Lm1fcGhpLCB2
YWx1ZUluUHJlZGVjZXNzb3IpOworI2VuZGlmCiAgICAgICAgICAgICAgICAgcGhpTm9kZS0+Y2hp
bGRyZW4uZml4ZWQuY2hpbGQyID0gdmFsdWVJblByZWRlY2Vzc29yOworI2lmIERGR19FTkFCTEUo
REVCVUdfUFJPUEFHQVRJT05fVkVSQk9TRSkKKyAgICAgICAgICAgICAgICBwcmludGYoIiAgICAg
IENoaWxkcmVuIG9mIEAldTogIiwgZW50cnkubV9waGkpOworICAgICAgICAgICAgICAgIHBoaU5v
ZGUtPmR1bXBDaGlsZHJlbihzdGRvdXQpOworICAgICAgICAgICAgICAgIHByaW50ZigiLlxuIik7
CisjZW5kaWYKICAgICAgICAgICAgICAgICBjb250aW51ZTsKICAgICAgICAgICAgIH0KICAgICAg
ICAgICAgIGlmIChwaGlOb2RlLT5jaGlsZDMoKSA9PSBOb05vZGUpIHsKKyNpZiBERkdfRU5BQkxF
KERFQlVHX1BST1BBR0FUSU9OX1ZFUkJPU0UpCisgICAgICAgICAgICAgICAgcHJpbnRmKCIgICAg
ICBTZXR0aW5nIEAldS0+Y2hpbGQzID0gQCV1LlxuIiwgZW50cnkubV9waGksIHZhbHVlSW5QcmVk
ZWNlc3Nvcik7CisjZW5kaWYKICAgICAgICAgICAgICAgICBwaGlOb2RlLT5jaGlsZHJlbi5maXhl
ZC5jaGlsZDMgPSB2YWx1ZUluUHJlZGVjZXNzb3I7CisjaWYgREZHX0VOQUJMRShERUJVR19QUk9Q
QUdBVElPTl9WRVJCT1NFKQorICAgICAgICAgICAgICAgIHByaW50ZigiICAgICAgQ2hpbGRyZW4g
b2YgQCV1OiAiLCBlbnRyeS5tX3BoaSk7CisgICAgICAgICAgICAgICAgcGhpTm9kZS0+ZHVtcENo
aWxkcmVuKHN0ZG91dCk7CisgICAgICAgICAgICAgICAgcHJpbnRmKCIuXG4iKTsKKyNlbmRpZgog
ICAgICAgICAgICAgICAgIGNvbnRpbnVlOwogICAgICAgICAgICAgfQogICAgICAgICAgICAgCiAg
ICAgICAgICAgICBOb2RlSW5kZXggbmV3UGhpID0gYWRkVG9HcmFwaChQaGksIE9wSW5mbyhkYXRh
Rm9yUGhpKSk7CiAgICAgICAgICAgICAKKyNpZiBERkdfRU5BQkxFKERFQlVHX1BST1BBR0FUSU9O
X1ZFUkJPU0UpCisgICAgICAgICAgICBwcmludGYoIiAgICAgIFNwbGl0dGluZyBAJXUsIGNyZWF0
ZWQgQCV1LlxuIiwgZW50cnkubV9waGksIG5ld1BoaSk7CisjZW5kaWYKKwogICAgICAgICAgICAg
cGhpTm9kZSA9ICZtX2dyYXBoW2VudHJ5Lm1fcGhpXTsgLy8gcmVsb2FkIGFmdGVyIHZlY3RvciBy
ZXNpemUKICAgICAgICAgICAgIE5vZGUmIG5ld1BoaU5vZGUgPSBtX2dyYXBoW25ld1BoaV07CiAg
ICAgICAgICAgICBpZiAocGhpTm9kZS0+cmVmQ291bnQoKSkKQEAgLTIyMjEsOSArMjI3NiwyMSBA
QCB2b2lkIEJ5dGVDb2RlUGFyc2VyOjpwcm9jZXNzUGhpU3RhY2soKQogICAgICAgICAgICAgbmV3
UGhpTm9kZS5jaGlsZHJlbi5maXhlZC5jaGlsZDIgPSBwaGlOb2RlLT5jaGlsZDIoKTsKICAgICAg
ICAgICAgIG5ld1BoaU5vZGUuY2hpbGRyZW4uZml4ZWQuY2hpbGQzID0gcGhpTm9kZS0+Y2hpbGQz
KCk7CiAKKyNpZiBERkdfRU5BQkxFKERFQlVHX1BST1BBR0FUSU9OX1ZFUkJPU0UpCisgICAgICAg
ICAgICBwcmludGYoIiAgICAgIENoaWxkcmVuIG9mIEAldTogIiwgbmV3UGhpKTsKKyAgICAgICAg
ICAgIG5ld1BoaU5vZGUuZHVtcENoaWxkcmVuKHN0ZG91dCk7CisgICAgICAgICAgICBwcmludGYo
Ii5cbiIpOworI2VuZGlmCisKICAgICAgICAgICAgIHBoaU5vZGUtPmNoaWxkcmVuLmZpeGVkLmNo
aWxkMSA9IG5ld1BoaTsKICAgICAgICAgICAgIHBoaU5vZGUtPmNoaWxkcmVuLmZpeGVkLmNoaWxk
MSA9IHZhbHVlSW5QcmVkZWNlc3NvcjsKICAgICAgICAgICAgIHBoaU5vZGUtPmNoaWxkcmVuLmZp
eGVkLmNoaWxkMyA9IE5vTm9kZTsKKworI2lmIERGR19FTkFCTEUoREVCVUdfUFJPUEFHQVRJT05f
VkVSQk9TRSkKKyAgICAgICAgICAgIHByaW50ZigiICAgICAgQ2hpbGRyZW4gb2YgQCV1OiAiLCBl
bnRyeS5tX3BoaSk7CisgICAgICAgICAgICBwaGlOb2RlLT5kdW1wQ2hpbGRyZW4oc3Rkb3V0KTsK
KyAgICAgICAgICAgIHByaW50ZigiLlxuIik7CisjZW5kaWYKICAgICAgICAgfQogICAgIH0KIH0K
QEAgLTI0ODUsNyArMjU1MiwxMyBAQCBib29sIEJ5dGVDb2RlUGFyc2VyOjpwYXJzZSgpCiAKICAg
ICBsaW5rQmxvY2tzKGlubGluZVN0YWNrRW50cnkubV91bmxpbmtlZEJsb2NrcywgaW5saW5lU3Rh
Y2tFbnRyeS5tX2Jsb2NrTGlua2luZ1RhcmdldHMpOwogICAgIGRldGVybWluZVJlYWNoYWJpbGl0
eSgpOworI2lmIERGR19FTkFCTEUoREVCVUdfUFJPUEFHQVRJT05fVkVSQk9TRSkKKyAgICBwcmlu
dGYoIlByb2Nlc3NpbmcgbG9jYWwgdmFyaWFibGUgcGhpcy5cbiIpOworI2VuZGlmCiAgICAgcHJv
Y2Vzc1BoaVN0YWNrPExvY2FsUGhpU3RhY2s+KCk7CisjaWYgREZHX0VOQUJMRShERUJVR19QUk9Q
QUdBVElPTl9WRVJCT1NFKQorICAgIHByaW50ZigiUHJvY2Vzc2luZyBhcmd1bWVudCBwaGlzLlxu
Iik7CisjZW5kaWYKICAgICBwcm9jZXNzUGhpU3RhY2s8QXJndW1lbnRQaGlTdGFjaz4oKTsKICAg
ICAKICAgICBtX2dyYXBoLm1fcHJlc2VydmVkVmFycyA9IG1fcHJlc2VydmVkVmFyczsKSW5kZXg6
IFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9kZmcvREZHQ29tbW9uLmgKPT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291
cmNlL0phdmFTY3JpcHRDb3JlL2RmZy9ERkdDb21tb24uaAkocmV2aXNpb24gMTAwOTcxKQorKysg
U291cmNlL0phdmFTY3JpcHRDb3JlL2RmZy9ERkdDb21tb24uaAkod29ya2luZyBjb3B5KQpAQCAt
ODEsNiArODEsMTMgQEAgc3RhdGljIGNvbnN0IEJsb2NrSW5kZXggTm9CbG9jayA9IFVJTlRfTQog
CiBzdHJ1Y3QgTm9kZUluZGV4VHJhaXRzIHsKICAgICBzdGF0aWMgTm9kZUluZGV4IGRlZmF1bHRW
YWx1ZSgpIHsgcmV0dXJuIE5vTm9kZTsgfQorICAgIHN0YXRpYyB2b2lkIGR1bXAoTm9kZUluZGV4
IHZhbHVlLCBGSUxFKiBvdXQpCisgICAgeworICAgICAgICBpZiAodmFsdWUgPT0gTm9Ob2RlKQor
ICAgICAgICAgICAgZnByaW50ZihvdXQsICItIik7CisgICAgICAgIGVsc2UKKyAgICAgICAgICAg
IGZwcmludGYob3V0LCAiQCV1IiwgdmFsdWUpOworICAgIH0KIH07CiAKIH0gfSAvLyBuYW1lc3Bh
Y2UgSlNDOjpERkcKSW5kZXg6IFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9kZmcvREZHRHJpdmVyLmNw
cAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09Ci0tLSBTb3VyY2UvSmF2YVNjcmlwdENvcmUvZGZnL0RGR0RyaXZlci5jcHAJ
KHJldmlzaW9uIDEwMDk3MSkKKysrIFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9kZmcvREZHRHJpdmVy
LmNwcAkod29ya2luZyBjb3B5KQpAQCAtNDIsNiArNDIsMTAgQEAgaW5saW5lIGJvb2wgY29tcGls
ZShDb21waWxlTW9kZSBjb21waWxlTQogICAgIEFTU0VSVChjb2RlQmxvY2spOwogICAgIEFTU0VS
VChjb2RlQmxvY2stPmFsdGVybmF0aXZlKCkpOwogICAgIEFTU0VSVChjb2RlQmxvY2stPmFsdGVy
bmF0aXZlKCktPmdldEpJVFR5cGUoKSA9PSBKSVRDb2RlOjpCYXNlbGluZUpJVCk7CisKKyNpZiBE
RkdfRU5BQkxFKERFQlVHX1ZFUkJPU0UpCisgICAgZnByaW50ZihzdGRlcnIsICJERkcgY29tcGls
aW5nIGNvZGUgYmxvY2sgJXAsIG51bWJlciBvZiBpbnN0cnVjdGlvbnMgPSAldS5cbiIsIGNvZGVC
bG9jaywgY29kZUJsb2NrLT5pbnN0cnVjdGlvbkNvdW50KCkpOworI2VuZGlmCiAgICAgCiAgICAg
SlNHbG9iYWxEYXRhKiBnbG9iYWxEYXRhID0gJmV4ZWMtPmdsb2JhbERhdGEoKTsKICAgICBHcmFw
aCBkZmc7CkluZGV4OiBTb3VyY2UvSmF2YVNjcmlwdENvcmUvZGZnL0RGR0dyYXBoLmNwcAo9PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09Ci0tLSBTb3VyY2UvSmF2YVNjcmlwdENvcmUvZGZnL0RGR0dyYXBoLmNwcAkocmV2aXNp
b24gMTAwOTcxKQorKysgU291cmNlL0phdmFTY3JpcHRDb3JlL2RmZy9ERkdHcmFwaC5jcHAJKHdv
cmtpbmcgY29weSkKQEAgLTI3NSwxNCArMjc1LDIzIEBAIHZvaWQgR3JhcGg6OmR1bXAoQ29kZUJs
b2NrKiBjb2RlQmxvY2spCiAgICAgZm9yIChzaXplX3QgYiA9IDA7IGIgPCBtX2Jsb2Nrcy5zaXpl
KCk7ICsrYikgewogICAgICAgICBCYXNpY0Jsb2NrKiBibG9jayA9IG1fYmxvY2tzW2JdLmdldCgp
OwogICAgICAgICBwcmludGYoIkJsb2NrICMldSAoYmMjJXUpOiAlcyVzXG4iLCAoaW50KWIsIGJs
b2NrLT5ieXRlY29kZUJlZ2luLCBibG9jay0+aXNSZWFjaGFibGUgPyAiIiA6ICIgKHNraXBwZWQp
IiwgYmxvY2stPmlzT1NSVGFyZ2V0ID8gIiAoT1NSIHRhcmdldCkiIDogIiIpOwotICAgICAgICBw
cmludGYoIiAgdmFyczogIik7CisgICAgICAgIHByaW50ZigiICB2YXJzIGJlZm9yZTogIik7CiAg
ICAgICAgIGlmIChibG9jay0+Y2ZhSGFzVmlzaXRlZCkKICAgICAgICAgICAgIGR1bXBPcGVyYW5k
cyhibG9jay0+dmFsdWVzQXRIZWFkLCBzdGRvdXQpOwogICAgICAgICBlbHNlCiAgICAgICAgICAg
ICBwcmludGYoIjxlbXB0eT4iKTsKICAgICAgICAgcHJpbnRmKCJcbiIpOworICAgICAgICBwcmlu
dGYoIiAgdmFyIGxpbmtzOiAiKTsKKyAgICAgICAgZHVtcE9wZXJhbmRzKGJsb2NrLT52YXJpYWJs
ZXNBdEhlYWQsIHN0ZG91dCk7CisgICAgICAgIHByaW50ZigiXG4iKTsKICAgICAgICAgZm9yIChz
aXplX3QgaSA9IGJsb2NrLT5iZWdpbjsgaSA8IGJsb2NrLT5lbmQ7ICsraSkKICAgICAgICAgICAg
IGR1bXAoaSwgY29kZUJsb2NrKTsKKyAgICAgICAgcHJpbnRmKCIgIHZhcnMgYWZ0ZXI6ICIpOwor
ICAgICAgICBpZiAoYmxvY2stPmNmYUhhc1Zpc2l0ZWQpCisgICAgICAgICAgICBkdW1wT3BlcmFu
ZHMoYmxvY2stPnZhbHVlc0F0VGFpbCwgc3Rkb3V0KTsKKyAgICAgICAgZWxzZQorICAgICAgICAg
ICAgcHJpbnRmKCI8ZW1wdHk+Iik7CisgICAgICAgIHByaW50ZigiXG4iKTsKICAgICB9CiAgICAg
cHJpbnRmKCJQaGkgTm9kZXM6XG4iKTsKICAgICBmb3IgKHNpemVfdCBpID0gbV9ibG9ja3MubGFz
dCgpLT5lbmQ7IGkgPCBzaXplKCk7ICsraSkKSW5kZXg6IFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9k
ZmcvREZHTm9kZS5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9kZmcvREZH
Tm9kZS5oCShyZXZpc2lvbiAxMDA5NzEpCisrKyBTb3VyY2UvSmF2YVNjcmlwdENvcmUvZGZnL0RG
R05vZGUuaAkod29ya2luZyBjb3B5KQpAQCAtOTU0LDYgKzk1NCwyMSBAQCBzdHJ1Y3QgTm9kZSB7
CiAgICAgICAgIHJldHVybiBub2RlQ2FuU3BlY3VsYXRlSW50ZWdlcihhcml0aE5vZGVGbGFncygp
KTsKICAgICB9CiAgICAgCisjaWZuZGVmIE5ERUJVRworICAgIHZvaWQgZHVtcENoaWxkcmVuKEZJ
TEUqIG91dCkKKyAgICB7CisgICAgICAgIGlmIChjaGlsZDEoKSA9PSBOb05vZGUpCisgICAgICAg
ICAgICByZXR1cm47CisgICAgICAgIGZwcmludGYob3V0LCAiQCV1IiwgY2hpbGQxKCkpOworICAg
ICAgICBpZiAoY2hpbGQyKCkgPT0gTm9Ob2RlKQorICAgICAgICAgICAgcmV0dXJuOworICAgICAg
ICBmcHJpbnRmKG91dCwgIiwgQCV1IiwgY2hpbGQyKCkpOworICAgICAgICBpZiAoY2hpbGQzKCkg
PT0gTm9Ob2RlKQorICAgICAgICAgICAgcmV0dXJuOworICAgICAgICBmcHJpbnRmKG91dCwgIiwg
QCV1IiwgY2hpbGQzKCkpOworICAgIH0KKyNlbmRpZgorICAgIAogICAgIC8vIFRoaXMgZW51bSB2
YWx1ZSBkZXNjcmliZXMgdGhlIHR5cGUgb2YgdGhlIG5vZGUuCiAgICAgTm9kZVR5cGUgb3A7CiAg
ICAgLy8gVXNlZCB0byBsb29rIHVwIGV4Y2VwdGlvbiBoYW5kbGluZyBpbmZvcm1hdGlvbiAoY3Vy
cmVudGx5IGltcGxlbWVudGVkIGFzIGEgYnl0ZWNvZGUgaW5kZXgpLgpJbmRleDogU291cmNlL0ph
dmFTY3JpcHRDb3JlL2RmZy9ERkdPU1JFeGl0Q29tcGlsZXIuY3BwCj09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNv
dXJjZS9KYXZhU2NyaXB0Q29yZS9kZmcvREZHT1NSRXhpdENvbXBpbGVyLmNwcAkocmV2aXNpb24g
MTAwOTcxKQorKysgU291cmNlL0phdmFTY3JpcHRDb3JlL2RmZy9ERkdPU1JFeGl0Q29tcGlsZXIu
Y3BwCSh3b3JraW5nIGNvcHkpCkBAIC02NCw2ICs2NCwxMCBAQCB2b2lkIGNvbXBpbGVPU1JFeGl0
KEV4ZWNTdGF0ZSogZXhlYykKICAgICAgICAgCiAgICAgICAgIExpbmtCdWZmZXIgcGF0Y2hCdWZm
ZXIoKmdsb2JhbERhdGEsICZqaXQpOwogICAgICAgICBleGl0Lm1fY29kZSA9IHBhdGNoQnVmZmVy
LmZpbmFsaXplQ29kZSgpOworCisjaWYgREZHX0VOQUJMRShERUJVR19WRVJCT1NFKQorICAgICAg
ICBmcHJpbnRmKHN0ZGVyciwgIk9TUiBleGl0IGNvZGUgYXQgWyVwLCAlcCkuXG4iLCBwYXRjaEJ1
ZmZlci5kZWJ1Z0FkZHJlc3MoKSwgc3RhdGljX2Nhc3Q8Y2hhcio+KHBhdGNoQnVmZmVyLmRlYnVn
QWRkcmVzcygpKSArIHBhdGNoQnVmZmVyLmRlYnVnU2l6ZSgpKTsKKyNlbmRpZgogICAgIH0KICAg
ICAKICAgICB7CkluZGV4OiBTb3VyY2UvSmF2YVNjcmlwdENvcmUvZGZnL0RGR09wZXJhbmRzLmgK
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PQotLS0gU291cmNlL0phdmFTY3JpcHRDb3JlL2RmZy9ERkdPcGVyYW5kcy5oCShy
ZXZpc2lvbiAxMDA5NzEpCisrKyBTb3VyY2UvSmF2YVNjcmlwdENvcmUvZGZnL0RGR09wZXJhbmRz
LmgJKHdvcmtpbmcgY29weSkKQEAgLTQyLDYgKzQyLDcgQEAgdGVtcGxhdGU8dHlwZW5hbWUgVD4g
c3RydWN0IE9wZXJhbmRWYWx1ZQogdGVtcGxhdGU8dHlwZW5hbWUgVD4KIHN0cnVjdCBPcGVyYW5k
VmFsdWVUcmFpdHMgewogICAgIHN0YXRpYyBUIGRlZmF1bHRWYWx1ZSgpIHsgcmV0dXJuIFQoKTsg
fQorICAgIHN0YXRpYyB2b2lkIGR1bXAoY29uc3QgVCYgdmFsdWUsIEZJTEUqIG91dCkgeyB2YWx1
ZS5kdW1wKG91dCk7IH0KIH07CiAKIHRlbXBsYXRlPHR5cGVuYW1lIFQsIHR5cGVuYW1lIFRyYWl0
cyA9IE9wZXJhbmRWYWx1ZVRyYWl0czxUPiA+CkBAIC0xMzcsMTkgKzEzOCwxOSBAQCBwcml2YXRl
OgogICAgIFZlY3RvcjxULCAxNj4gbV9sb2NhbHM7CiB9OwogCi10ZW1wbGF0ZTx0eXBlbmFtZSBU
Pgotdm9pZCBkdW1wT3BlcmFuZHMoT3BlcmFuZHM8VD4mIG9wZXJhbmRzLCBGSUxFKiBvdXQpCit0
ZW1wbGF0ZTx0eXBlbmFtZSBULCB0eXBlbmFtZSBUcmFpdHM+Cit2b2lkIGR1bXBPcGVyYW5kcyhP
cGVyYW5kczxULCBUcmFpdHM+JiBvcGVyYW5kcywgRklMRSogb3V0KQogewogICAgIGZvciAoc2l6
ZV90IGFyZ3VtZW50ID0gMDsgYXJndW1lbnQgPCBvcGVyYW5kcy5udW1iZXJPZkFyZ3VtZW50cygp
OyArK2FyZ3VtZW50KSB7CiAgICAgICAgIGlmIChhcmd1bWVudCkKICAgICAgICAgICAgIGZwcmlu
dGYob3V0LCAiICIpOwotICAgICAgICBvcGVyYW5kcy5hcmd1bWVudChhcmd1bWVudCkuZHVtcChv
dXQpOworICAgICAgICBUcmFpdHM6OmR1bXAob3BlcmFuZHMuYXJndW1lbnQoYXJndW1lbnQpLCBv
dXQpOwogICAgIH0KICAgICBmcHJpbnRmKG91dCwgIiA6ICIpOwogICAgIGZvciAoc2l6ZV90IGxv
Y2FsID0gMDsgbG9jYWwgPCBvcGVyYW5kcy5udW1iZXJPZkxvY2FscygpOyArK2xvY2FsKSB7CiAg
ICAgICAgIGlmIChsb2NhbCkKICAgICAgICAgICAgIGZwcmludGYob3V0LCAiICIpOwotICAgICAg
ICBvcGVyYW5kcy5sb2NhbChsb2NhbCkuZHVtcChvdXQpOworICAgICAgICBUcmFpdHM6OmR1bXAo
b3BlcmFuZHMubG9jYWwobG9jYWwpLCBvdXQpOwogICAgIH0KIH0KIAo=
</data>
<flag name="review"
          id="115265"
          type_id="1"
          status="+"
          setter="barraclough"
    />
    <flag name="commit-queue"
          id="115268"
          type_id="3"
          status="-"
          setter="webkit.review.bot"
    />
          </attachment>
      

    </bug>

</bugzilla>