<?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>120697</bug_id>
          
          <creation_ts>2013-09-04 13:50:05 -0700</creation_ts>
          <short_desc>run-fast-jsc should work with new-school fast/js tests that loop until the DFG tiers up</short_desc>
          <delta_ts>2013-09-04 20:09:14 -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>Tools / Tests</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>120696</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="Filip Pizlo">fpizlo</reporter>
          <assigned_to name="Filip Pizlo">fpizlo</assigned_to>
          <cc>barraclough</cc>
    
    <cc>commit-queue</cc>
    
    <cc>ggaren</cc>
    
    <cc>gyuyoung.kim</cc>
    
    <cc>mark.lam</cc>
    
    <cc>mhahnenberg</cc>
    
    <cc>msaboff</cc>
    
    <cc>oliver</cc>
    
    <cc>rakuco</cc>
    
    <cc>sam</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>924583</commentid>
    <comment_count>0</comment_count>
    <who name="Filip Pizlo">fpizlo</who>
    <bug_when>2013-09-04 13:50:05 -0700</bug_when>
    <thetext>Patch forthcoming.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>924584</commentid>
    <comment_count>1</comment_count>
      <attachid>210489</attachid>
    <who name="Filip Pizlo">fpizlo</who>
    <bug_when>2013-09-04 13:51:12 -0700</bug_when>
    <thetext>Created attachment 210489
the patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>924587</commentid>
    <comment_count>2</comment_count>
      <attachid>210489</attachid>
    <who name="Filip Pizlo">fpizlo</who>
    <bug_when>2013-09-04 13:52:08 -0700</bug_when>
    <thetext>Comment on attachment 210489
the patch

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

&gt; LayoutTests/fast/js/resources/standalone-pre.js:217
&gt; -            if (testRunner.numberOfDFGCompiles(argument.f[i]) &lt; numberOfCompiles)
&gt; +            if (testRunner.numberOfbjsDFGCompiles(argument.f[i]) &lt; numberOfCompiles)

I don&apos;t know what is this.  I will revert.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>924589</commentid>
    <comment_count>3</comment_count>
      <attachid>210489</attachid>
    <who name="Mark Hahnenberg">mhahnenberg</who>
    <bug_when>2013-09-04 13:54:24 -0700</bug_when>
    <thetext>Comment on attachment 210489
the patch

r=me</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>924752</commentid>
    <comment_count>4</comment_count>
    <who name="Filip Pizlo">fpizlo</who>
    <bug_when>2013-09-04 20:09:14 -0700</bug_when>
    <thetext>Landed in http://trac.webkit.org/changeset/155090</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>210489</attachid>
            <date>2013-09-04 13:51:12 -0700</date>
            <delta_ts>2013-09-04 13:54:24 -0700</delta_ts>
            <desc>the patch</desc>
            <filename>blah.patch</filename>
            <type>text/plain</type>
            <size>21029</size>
            <attacher name="Filip Pizlo">fpizlo</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9DaGFuZ2VMb2cKPT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291
cmNlL0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwkocmV2aXNpb24gMTU1MDYyKQorKysgU291cmNl
L0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDI4IEBA
CisyMDEzLTA5LTA0ICBGaWxpcCBQaXpsbyAgPGZwaXpsb0BhcHBsZS5jb20+CisKKyAgICAgICAg
cnVuLWZhc3QtanNjIHNob3VsZCB3b3JrIHdpdGggbmV3LXNjaG9vbCBmYXN0L2pzIHRlc3RzIHRo
YXQgbG9vcCB1bnRpbCB0aGUgREZHIHRpZXJzIHVwCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJr
aXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xMjA2OTcKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JP
RFkgKE9PUFMhKS4KKworICAgICAgICAqIEFQSS9KU0NUZXN0UnVubmVyVXRpbHMuY3BwOgorICAg
ICAgICAoSlNDOjpudW1iZXJPZkRGR0NvbXBpbGVzKToKKyAgICAgICAgKEpTQzo6c2V0TmV2ZXJJ
bmxpbmUpOgorICAgICAgICAqIENNYWtlTGlzdHMudHh0OgorICAgICAgICAqIEdOVW1ha2VmaWxl
Lmxpc3QuYW06CisgICAgICAgICogSmF2YVNjcmlwdENvcmUudmN4cHJvai9KYXZhU2NyaXB0Q29y
ZS52Y3hwcm9qOgorICAgICAgICAqIEphdmFTY3JpcHRDb3JlLnhjb2RlcHJvai9wcm9qZWN0LnBi
eHByb2o6CisgICAgICAgICogVGFyZ2V0LnByaToKKyAgICAgICAgKiBqc2MuY3BwOgorICAgICAg
ICAoR2xvYmFsT2JqZWN0OjpmaW5pc2hDcmVhdGlvbik6CisgICAgICAgIChmdW5jdGlvbk5ldmVy
SW5saW5lRnVuY3Rpb24pOgorICAgICAgICAoZnVuY3Rpb25OdW1iZXJPZkRGR0NvbXBpbGVzKToK
KyAgICAgICAgKiBydW50aW1lL1Rlc3RSdW5uZXJVdGlscy5jcHA6IEFkZGVkLgorICAgICAgICAo
SlNDOjpnZXRFeGVjdXRhYmxlKToKKyAgICAgICAgKEpTQzo6bnVtYmVyT2ZERkdDb21waWxlcyk6
CisgICAgICAgIChKU0M6OnNldE5ldmVySW5saW5lKToKKyAgICAgICAgKiBydW50aW1lL1Rlc3RS
dW5uZXJVdGlscy5oOiBBZGRlZC4KKwogMjAxMy0wOS0wNCAgTWFyayBIYWhuZW5iZXJnICA8bWhh
aG5lbmJlcmdAYXBwbGUuY29tPgogCiAgICAgICAgIEFTU0VSVCBpbiBNYXJrZWRBbGxvY2F0b3I6
OmFsbG9jYXRlU2xvd0Nhc2UgaXMgd3JvbmcKSW5kZXg6IFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9D
TWFrZUxpc3RzLnR4dAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvSmF2YVNjcmlwdENvcmUvQ01ha2VM
aXN0cy50eHQJKHJldmlzaW9uIDE1NTA1MSkKKysrIFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9DTWFr
ZUxpc3RzLnR4dAkod29ya2luZyBjb3B5KQpAQCAtMzkwLDYgKzM5MCw3IEBAIHNldChKYXZhU2Ny
aXB0Q29yZV9TT1VSQ0VTCiAgICAgcnVudGltZS9TdHJ1Y3R1cmVDaGFpbi5jcHAKICAgICBydW50
aW1lL1N0cnVjdHVyZVJhcmVEYXRhLmNwcAogICAgIHJ1bnRpbWUvU3ltYm9sVGFibGUuY3BwCisg
ICAgcnVudGltZS9UZXN0UnVubmVyVXRpbHMuY3BwCiAgICAgcnVudGltZS9UeXBlZEFycmF5Q29u
dHJvbGxlci5jcHAKICAgICBydW50aW1lL1R5cGVkQXJyYXlUeXBlLmNwcAogICAgIHJ1bnRpbWUv
Vk0uY3BwCkluZGV4OiBTb3VyY2UvSmF2YVNjcmlwdENvcmUvR05VbWFrZWZpbGUubGlzdC5hbQo9
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09Ci0tLSBTb3VyY2UvSmF2YVNjcmlwdENvcmUvR05VbWFrZWZpbGUubGlzdC5hbQko
cmV2aXNpb24gMTU1MDUxKQorKysgU291cmNlL0phdmFTY3JpcHRDb3JlL0dOVW1ha2VmaWxlLmxp
c3QuYW0JKHdvcmtpbmcgY29weSkKQEAgLTEwNDAsNiArMTA0MCw4IEBAIGphdmFzY3JpcHRjb3Jl
X3NvdXJjZXMgKz0gXAogCVNvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1N0cnVjdHVyZVRy
YW5zaXRpb25UYWJsZS5oIFwKIAlTb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9TeW1ib2xU
YWJsZS5jcHAgXAogCVNvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1N5bWJvbFRhYmxlLmgg
XAorCVNvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1Rlc3RSdW5uZXJVdGlscy5jcHAgXAor
CVNvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1Rlc3RSdW5uZXJVdGlscy5oIFwKIAlTb3Vy
Y2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9Ub05hdGl2ZUZyb21WYWx1ZS5oIFwKIAlTb3VyY2Uv
SmF2YVNjcmlwdENvcmUvcnVudGltZS9UcmFjaW5nLmggXAogCVNvdXJjZS9KYXZhU2NyaXB0Q29y
ZS9ydW50aW1lL1R5cGVkQXJyYXlBZGFwdG9ycy5oIFwKSW5kZXg6IFNvdXJjZS9KYXZhU2NyaXB0
Q29yZS9UYXJnZXQucHJpCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9UYXJn
ZXQucHJpCShyZXZpc2lvbiAxNTUwNTEpCisrKyBTb3VyY2UvSmF2YVNjcmlwdENvcmUvVGFyZ2V0
LnByaQkod29ya2luZyBjb3B5KQpAQCAtMzk4LDYgKzM5OCw3IEBAIFNPVVJDRVMgKz0gXAogICAg
IHJ1bnRpbWUvU3RydWN0dXJlQ2hhaW4uY3BwIFwKICAgICBydW50aW1lL1N0cnVjdHVyZVJhcmVE
YXRhLmNwcCBcCiAgICAgcnVudGltZS9TeW1ib2xUYWJsZS5jcHAgXAorICAgIHJ1bnRpbWUvVGVz
dFJ1bm5lclV0aWxzLmNwcCBcCiAgICAgcnVudGltZS9UeXBlZEFycmF5Q29udHJvbGxlci5jcHAg
XAogICAgIHJ1bnRpbWUvVHlwZWRBcnJheVR5cGUuY3BwIFwKICAgICBydW50aW1lL1ZNLmNwcCBc
CkluZGV4OiBTb3VyY2UvSmF2YVNjcmlwdENvcmUvanNjLmNwcAo9PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3Vy
Y2UvSmF2YVNjcmlwdENvcmUvanNjLmNwcAkocmV2aXNpb24gMTU1MDUxKQorKysgU291cmNlL0ph
dmFTY3JpcHRDb3JlL2pzYy5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTQxLDYgKzQxLDcgQEAKICNp
bmNsdWRlICJTYW1wbGluZ1Rvb2wuaCIKICNpbmNsdWRlICJTdGFja0l0ZXJhdG9yLmgiCiAjaW5j
bHVkZSAiU3RydWN0dXJlUmFyZURhdGFJbmxpbmVzLmgiCisjaW5jbHVkZSAiVGVzdFJ1bm5lclV0
aWxzLmgiCiAjaW5jbHVkZSA8bWF0aC5oPgogI2luY2x1ZGUgPHN0ZGlvLmg+CiAjaW5jbHVkZSA8
c3RkbGliLmg+CkBAIC0xMTUsNiArMTE2LDggQEAgc3RhdGljIEVuY29kZWRKU1ZhbHVlIEpTQ19I
T1NUX0NBTEwgZnVuYwogc3RhdGljIEVuY29kZWRKU1ZhbHVlIEpTQ19IT1NUX0NBTEwgZnVuY3Rp
b25DaGVja1N5bnRheChFeGVjU3RhdGUqKTsKIHN0YXRpYyBFbmNvZGVkSlNWYWx1ZSBKU0NfSE9T
VF9DQUxMIGZ1bmN0aW9uUmVhZGxpbmUoRXhlY1N0YXRlKik7CiBzdGF0aWMgRW5jb2RlZEpTVmFs
dWUgSlNDX0hPU1RfQ0FMTCBmdW5jdGlvblByZWNpc2VUaW1lKEV4ZWNTdGF0ZSopOworc3RhdGlj
IEVuY29kZWRKU1ZhbHVlIEpTQ19IT1NUX0NBTEwgZnVuY3Rpb25OZXZlcklubGluZUZ1bmN0aW9u
KEV4ZWNTdGF0ZSopOworc3RhdGljIEVuY29kZWRKU1ZhbHVlIEpTQ19IT1NUX0NBTEwgZnVuY3Rp
b25OdW1iZXJPZkRGR0NvbXBpbGVzKEV4ZWNTdGF0ZSopOwogc3RhdGljIE5PX1JFVFVSTl9XSVRI
X1ZBTFVFIEVuY29kZWRKU1ZhbHVlIEpTQ19IT1NUX0NBTEwgZnVuY3Rpb25RdWl0KEV4ZWNTdGF0
ZSopOwogCiAjaWYgRU5BQkxFKFNBTVBMSU5HX0ZMQUdTKQpAQCAtMjMyLDYgKzIzNSw4IEBAIHBy
b3RlY3RlZDoKICAgICAgICAgYWRkRnVuY3Rpb24odm0sICJqc2NTdGFjayIsIGZ1bmN0aW9uSlND
U3RhY2ssIDEpOwogICAgICAgICBhZGRGdW5jdGlvbih2bSwgInJlYWRsaW5lIiwgZnVuY3Rpb25S
ZWFkbGluZSwgMCk7CiAgICAgICAgIGFkZEZ1bmN0aW9uKHZtLCAicHJlY2lzZVRpbWUiLCBmdW5j
dGlvblByZWNpc2VUaW1lLCAwKTsKKyAgICAgICAgYWRkRnVuY3Rpb24odm0sICJuZXZlcklubGlu
ZUZ1bmN0aW9uIiwgZnVuY3Rpb25OZXZlcklubGluZUZ1bmN0aW9uLCAxKTsKKyAgICAgICAgYWRk
RnVuY3Rpb24odm0sICJudW1iZXJPZkRGR0NvbXBpbGVzIiwgZnVuY3Rpb25OdW1iZXJPZkRGR0Nv
bXBpbGVzLCAxKTsKICNpZiBFTkFCTEUoU0FNUExJTkdfRkxBR1MpCiAgICAgICAgIGFkZEZ1bmN0
aW9uKHZtLCAic2V0U2FtcGxpbmdGbGFncyIsIGZ1bmN0aW9uU2V0U2FtcGxpbmdGbGFncywgMSk7
CiAgICAgICAgIGFkZEZ1bmN0aW9uKHZtLCAiY2xlYXJTYW1wbGluZ0ZsYWdzIiwgZnVuY3Rpb25D
bGVhclNhbXBsaW5nRmxhZ3MsIDEpOwpAQCAtNDc5LDYgKzQ4NCwxNiBAQCBFbmNvZGVkSlNWYWx1
ZSBKU0NfSE9TVF9DQUxMIGZ1bmN0aW9uUHJlCiAgICAgcmV0dXJuIEpTVmFsdWU6OmVuY29kZShq
c051bWJlcihjdXJyZW50VGltZSgpKSk7CiB9CiAKK0VuY29kZWRKU1ZhbHVlIEpTQ19IT1NUX0NB
TEwgZnVuY3Rpb25OZXZlcklubGluZUZ1bmN0aW9uKEV4ZWNTdGF0ZSogZXhlYykKK3sKKyAgICBy
ZXR1cm4gSlNWYWx1ZTo6ZW5jb2RlKHNldE5ldmVySW5saW5lKGV4ZWMpKTsKK30KKworRW5jb2Rl
ZEpTVmFsdWUgSlNDX0hPU1RfQ0FMTCBmdW5jdGlvbk51bWJlck9mREZHQ29tcGlsZXMoRXhlY1N0
YXRlKiBleGVjKQoreworICAgIHJldHVybiBKU1ZhbHVlOjplbmNvZGUobnVtYmVyT2ZERkdDb21w
aWxlcyhleGVjKSk7Cit9CisKIEVuY29kZWRKU1ZhbHVlIEpTQ19IT1NUX0NBTEwgZnVuY3Rpb25R
dWl0KEV4ZWNTdGF0ZSopCiB7CiAgICAgZXhpdChFWElUX1NVQ0NFU1MpOwpJbmRleDogU291cmNl
L0phdmFTY3JpcHRDb3JlL0FQSS9KU0NUZXN0UnVubmVyVXRpbHMuY3BwCj09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0t
IFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9BUEkvSlNDVGVzdFJ1bm5lclV0aWxzLmNwcAkocmV2aXNp
b24gMTU1MDUxKQorKysgU291cmNlL0phdmFTY3JpcHRDb3JlL0FQSS9KU0NUZXN0UnVubmVyVXRp
bHMuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC0yNyw1NSArMjcsMjEgQEAKICNpbmNsdWRlICJKU0NU
ZXN0UnVubmVyVXRpbHMuaCIKIAogI2luY2x1ZGUgIkFQSUNhc3QuaCIKLSNpbmNsdWRlICJDb2Rl
QmxvY2suaCIKICNpbmNsdWRlICJPcGVyYXRpb25zLmgiCisjaW5jbHVkZSAiVGVzdFJ1bm5lclV0
aWxzLmgiCiAKIG5hbWVzcGFjZSBKU0MgewogCi1zdGF0aWMgRnVuY3Rpb25FeGVjdXRhYmxlKiBn
ZXRFeGVjdXRhYmxlKEpTQ29udGV4dFJlZiBjb250ZXh0LCBKU1ZhbHVlUmVmIHRoZUZ1bmN0aW9u
VmFsdWVSZWYpCi17Ci0gICAgRXhlY1N0YXRlKiBleGVjID0gdG9KUyhjb250ZXh0KTsKLSAgICBK
U1ZhbHVlIHRoZUZ1bmN0aW9uVmFsdWUgPSB0b0pTKGV4ZWMsIHRoZUZ1bmN0aW9uVmFsdWVSZWYp
OwotICAgIAotICAgIEpTRnVuY3Rpb24qIHRoZUZ1bmN0aW9uID0ganNEeW5hbWljQ2FzdDxKU0Z1
bmN0aW9uKj4odGhlRnVuY3Rpb25WYWx1ZSk7Ci0gICAgaWYgKCF0aGVGdW5jdGlvbikKLSAgICAg
ICAgcmV0dXJuIDA7Ci0gICAgCi0gICAgRnVuY3Rpb25FeGVjdXRhYmxlKiBleGVjdXRhYmxlID0g
anNEeW5hbWljQ2FzdDxGdW5jdGlvbkV4ZWN1dGFibGUqPigKLSAgICAgICAgdGhlRnVuY3Rpb24t
PmV4ZWN1dGFibGUoKSk7Ci0gICAgcmV0dXJuIGV4ZWN1dGFibGU7Ci19Ci0KIEpTVmFsdWVSZWYg
bnVtYmVyT2ZERkdDb21waWxlcyhKU0NvbnRleHRSZWYgY29udGV4dCwgSlNWYWx1ZVJlZiB0aGVG
dW5jdGlvblZhbHVlUmVmKQogewotICAgIGJvb2wgcHJldGVuZFRvSGF2ZU1hbnlDb21waWxlcyA9
IGZhbHNlOwotI2lmIEVOQUJMRShERkdfSklUKQotICAgIGlmICghT3B0aW9uczo6dXNlSklUKCkg
fHwgIU9wdGlvbnM6OnVzZURGR0pJVCgpKQotICAgICAgICBwcmV0ZW5kVG9IYXZlTWFueUNvbXBp
bGVzID0gdHJ1ZTsKLSNlbHNlCi0gICAgcHJldGVuZFRvSGF2ZU1hbnlDb21waWxlcyA9IHRydWU7
Ci0jZW5kaWYKLSAgICAKLSAgICBpZiAoRnVuY3Rpb25FeGVjdXRhYmxlKiBleGVjdXRhYmxlID0g
Z2V0RXhlY3V0YWJsZShjb250ZXh0LCB0aGVGdW5jdGlvblZhbHVlUmVmKSkgewotICAgICAgICBD
b2RlQmxvY2sqIGJhc2VsaW5lQ29kZUJsb2NrID0gZXhlY3V0YWJsZS0+YmFzZWxpbmVDb2RlQmxv
Y2tGb3IoQ29kZUZvckNhbGwpOwotICAgICAgICAKLSAgICAgICAgaWYgKCFiYXNlbGluZUNvZGVC
bG9jaykKLSAgICAgICAgICAgIHJldHVybiBKU1ZhbHVlTWFrZU51bWJlcihjb250ZXh0LCAwKTsK
LQotICAgICAgICBpZiAocHJldGVuZFRvSGF2ZU1hbnlDb21waWxlcykKLSAgICAgICAgICAgIHJl
dHVybiBKU1ZhbHVlTWFrZU51bWJlcihjb250ZXh0LCAxMDAwMDAwLjApOwotICAgICAgICByZXR1
cm4gSlNWYWx1ZU1ha2VOdW1iZXIoY29udGV4dCwgYmFzZWxpbmVDb2RlQmxvY2stPm51bWJlck9m
REZHQ29tcGlsZXMoKSk7Ci0gICAgfQotICAgIAotICAgIHJldHVybiBKU1ZhbHVlTWFrZVVuZGVm
aW5lZChjb250ZXh0KTsKKyAgICBFeGVjU3RhdGUqIGV4ZWM9IHRvSlMoY29udGV4dCk7CisgICAg
cmV0dXJuIHRvUmVmKGV4ZWMsIG51bWJlck9mREZHQ29tcGlsZXModG9KUyhleGVjLCB0aGVGdW5j
dGlvblZhbHVlUmVmKSkpOwogfQogCiBKU1ZhbHVlUmVmIHNldE5ldmVySW5saW5lKEpTQ29udGV4
dFJlZiBjb250ZXh0LCBKU1ZhbHVlUmVmIHRoZUZ1bmN0aW9uVmFsdWVSZWYpCiB7Ci0gICAgaWYg
KEZ1bmN0aW9uRXhlY3V0YWJsZSogZXhlY3V0YWJsZSA9IGdldEV4ZWN1dGFibGUoY29udGV4dCwg
dGhlRnVuY3Rpb25WYWx1ZVJlZikpCi0gICAgICAgIGV4ZWN1dGFibGUtPnNldE5ldmVySW5saW5l
KHRydWUpOwotICAgIAotICAgIHJldHVybiBKU1ZhbHVlTWFrZVVuZGVmaW5lZChjb250ZXh0KTsK
KyAgICBFeGVjU3RhdGUqIGV4ZWM9IHRvSlMoY29udGV4dCk7CisgICAgcmV0dXJuIHRvUmVmKGV4
ZWMsIHNldE5ldmVySW5saW5lKHRvSlMoZXhlYywgdGhlRnVuY3Rpb25WYWx1ZVJlZikpKTsKIH0K
IAogfSAvLyBuYW1lc3BhY2UgSlNDCkluZGV4OiBTb3VyY2UvSmF2YVNjcmlwdENvcmUvSmF2YVNj
cmlwdENvcmUudmN4cHJvai9KYXZhU2NyaXB0Q29yZS52Y3hwcm9qCj09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNv
dXJjZS9KYXZhU2NyaXB0Q29yZS9KYXZhU2NyaXB0Q29yZS52Y3hwcm9qL0phdmFTY3JpcHRDb3Jl
LnZjeHByb2oJKHJldmlzaW9uIDE1NTA1MSkKKysrIFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9KYXZh
U2NyaXB0Q29yZS52Y3hwcm9qL0phdmFTY3JpcHRDb3JlLnZjeHByb2oJKHdvcmtpbmcgY29weSkK
QEAgLTU0MCw2ICs1NDAsNyBAQAogICAgIDxDbENvbXBpbGUgSW5jbHVkZT0iLi5ccnVudGltZVxT
dHJ1Y3R1cmVDaGFpbi5jcHAiIC8+DQogICAgIDxDbENvbXBpbGUgSW5jbHVkZT0iLi5ccnVudGlt
ZVxTdHJ1Y3R1cmVSYXJlRGF0YS5jcHAiIC8+DQogICAgIDxDbENvbXBpbGUgSW5jbHVkZT0iLi5c
cnVudGltZVxTeW1ib2xUYWJsZS5jcHAiIC8+DQorICAgIDxDbENvbXBpbGUgSW5jbHVkZT0iLi5c
cnVudGltZVxUZXN0UnVubmVyVXRpbHMuY3BwIiAvPg0KICAgICA8Q2xDb21waWxlIEluY2x1ZGU9
Ii4uXHJ1bnRpbWVcVHlwZWRBcnJheUNvbnRyb2xsZXIuY3BwIiAvPg0KICAgICA8Q2xDb21waWxl
IEluY2x1ZGU9Ii4uXHJ1bnRpbWVcVHlwZWRBcnJheVR5cGUuY3BwIiAvPg0KICAgICA8Q2xDb21w
aWxlIEluY2x1ZGU9Ii4uXHJ1bnRpbWVcVk0uY3BwIiAvPg0KQEAgLTk5Myw2ICs5OTQsNyBAQAog
ICAgIDxDbEluY2x1ZGUgSW5jbHVkZT0iLi5ccnVudGltZVxTdHJ1Y3R1cmVSYXJlRGF0YUlubGlu
ZXMuaCIgLz4NCiAgICAgPENsSW5jbHVkZSBJbmNsdWRlPSIuLlxydW50aW1lXFN0cnVjdHVyZVRy
YW5zaXRpb25UYWJsZS5oIiAvPg0KICAgICA8Q2xJbmNsdWRlIEluY2x1ZGU9Ii4uXHJ1bnRpbWVc
U3ltYm9sVGFibGUuaCIgLz4NCisgICAgPENsSW5jbHVkZSBJbmNsdWRlPSIuLlxydW50aW1lXFRl
c3RSdW5uZXJVdGlscy5oIiAvPg0KICAgICA8Q2xJbmNsdWRlIEluY2x1ZGU9Ii4uXHJ1bnRpbWVc
VHJhY2luZy5oIiAvPg0KICAgICA8Q2xJbmNsdWRlIEluY2x1ZGU9Ii4uXHJ1bnRpbWVcVG9OYXRp
dmVGcm9tVmFsdWUuaCIgLz4NCiAgICAgPENsSW5jbHVkZSBJbmNsdWRlPSIuLlxydW50aW1lXFR5
cGVkQXJyYXlBZGFwdG9ycy5oIiAvPg0KSW5kZXg6IFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9KYXZh
U2NyaXB0Q29yZS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qCj09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJj
ZS9KYXZhU2NyaXB0Q29yZS9KYXZhU2NyaXB0Q29yZS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9q
CShyZXZpc2lvbiAxNTUwNTEpCisrKyBTb3VyY2UvSmF2YVNjcmlwdENvcmUvSmF2YVNjcmlwdENv
cmUueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvagkod29ya2luZyBjb3B5KQpAQCAtMzAzLDYgKzMw
Myw4IEBACiAJCTBGOUZDOEMzMTRFMUI1RkUwMEQ1MkFFMCAvKiBQb2x5bW9ycGhpY1B1dEJ5SWRM
aXN0LmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDBG
OUZDOEJGMTRFMUI1RkIwMEQ1MkFFMCAvKiBQb2x5bW9ycGhpY1B1dEJ5SWRMaXN0LmNwcCAqLzsg
fTsKIAkJMEY5RkM4QzQxNEUxQjYwMDAwRDUyQUUwIC8qIFBvbHltb3JwaGljUHV0QnlJZExpc3Qu
aCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDBGOUZDOEMw
MTRFMUI1RkIwMEQ1MkFFMCAvKiBQb2x5bW9ycGhpY1B1dEJ5SWRMaXN0LmggKi87IHNldHRpbmdz
ID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKIAkJMEY5RkM4QzUxNEUxQjYwNDAw
RDUyQUUwIC8qIFB1dEtpbmQuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsg
ZmlsZVJlZiA9IDBGOUZDOEMxMTRFMUI1RkIwMEQ1MkFFMCAvKiBQdXRLaW5kLmggKi87IHNldHRp
bmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJMEZBMkMxN0IxN0Q3Q0Y4
NDAwOUQwMTVGIC8qIFRlc3RSdW5uZXJVdGlscy5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQ
QlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAwRkEyQzE3OTE3RDdDRjg0MDA5RDAxNUYgLyogVGVzdFJ1
bm5lclV0aWxzLmNwcCAqLzsgfTsKKwkJMEZBMkMxN0MxN0Q3Q0Y4NDAwOUQwMTVGIC8qIFRlc3RS
dW5uZXJVdGlscy5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVm
ID0gMEZBMkMxN0ExN0Q3Q0Y4NDAwOUQwMTVGIC8qIFRlc3RSdW5uZXJVdGlscy5oICovOyBzZXR0
aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CiAJCTBGQTU4MUJBMTUwRTk1
MkMwMEI5QTJEOSAvKiBERkdOb2RlRmxhZ3MuY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJY
QnVpbGRGaWxlOyBmaWxlUmVmID0gMEZBNTgxQjcxNTBFOTUyQTAwQjlBMkQ5IC8qIERGR05vZGVG
bGFncy5jcHAgKi87IH07CiAJCTBGQTU4MUJCMTUwRTk1MzAwMEI5QTJEOSAvKiBERkdOb2RlRmxh
Z3MuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDBGQTU4
MUI4MTUwRTk1MkEwMEI5QTJEOSAvKiBERkdOb2RlRmxhZ3MuaCAqLzsgc2V0dGluZ3MgPSB7QVRU
UklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OwogCQkwRkE1ODFCQzE1MEU5NTMwMDBCOUEyRDkg
LyogREZHTm9kZVR5cGUuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmls
ZVJlZiA9IDBGQTU4MUI5MTUwRTk1MkEwMEI5QTJEOSAvKiBERkdOb2RlVHlwZS5oICovOyBzZXR0
aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CkBAIC0xNDkwLDYgKzE0OTIs
OCBAQAogCQkwRjlGQzhCRjE0RTFCNUZCMDBENTJBRTAgLyogUG9seW1vcnBoaWNQdXRCeUlkTGlz
dC5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFz
dEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBQb2x5bW9ycGhpY1B1
dEJ5SWRMaXN0LmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJMEY5RkM4QzAxNEUx
QjVGQjAwRDUyQUUwIC8qIFBvbHltb3JwaGljUHV0QnlJZExpc3QuaCAqLyA9IHtpc2EgPSBQQlhG
aWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJj
ZWNvZGUuYy5oOyBwYXRoID0gUG9seW1vcnBoaWNQdXRCeUlkTGlzdC5oOyBzb3VyY2VUcmVlID0g
Ijxncm91cD4iOyB9OwogCQkwRjlGQzhDMTE0RTFCNUZCMDBENTJBRTAgLyogUHV0S2luZC5oICov
ID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZp
bGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBQdXRLaW5kLmg7IHNvdXJjZVRyZWUgPSAi
PGdyb3VwPiI7IH07CisJCTBGQTJDMTc5MTdEN0NGODQwMDlEMDE1RiAvKiBUZXN0UnVubmVyVXRp
bHMuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxh
c3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gVGVzdFJ1bm5lclV0
aWxzLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMEZBMkMxN0ExN0Q3Q0Y4NDAw
OUQwMTVGIC8qIFRlc3RSdW5uZXJVdGlscy5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7
IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBh
dGggPSBUZXN0UnVubmVyVXRpbHMuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJMEZB
NTgxQjcxNTBFOTUyQTAwQjlBMkQ5IC8qIERGR05vZGVGbGFncy5jcHAgKi8gPSB7aXNhID0gUEJY
RmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3Vy
Y2Vjb2RlLmNwcC5jcHA7IG5hbWUgPSBERkdOb2RlRmxhZ3MuY3BwOyBwYXRoID0gZGZnL0RGR05v
ZGVGbGFncy5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTBGQTU4MUI4MTUwRTk1
MkEwMEI5QTJEOSAvKiBERkdOb2RlRmxhZ3MuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNl
OyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBu
YW1lID0gREZHTm9kZUZsYWdzLmg7IHBhdGggPSBkZmcvREZHTm9kZUZsYWdzLmg7IHNvdXJjZVRy
ZWUgPSAiPGdyb3VwPiI7IH07CiAJCTBGQTU4MUI5MTUwRTk1MkEwMEI5QTJEOSAvKiBERkdOb2Rl
VHlwZS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxh
c3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IG5hbWUgPSBERkdOb2RlVHlwZS5oOyBw
YXRoID0gZGZnL0RGR05vZGVUeXBlLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CkBAIC0z
MzUwLDYgKzMzNTQsOCBAQAogCQkJCUJDOTA0MTQ3MEVCOTI1MDkwMEZFMjZGQSAvKiBTdHJ1Y3R1
cmVUcmFuc2l0aW9uVGFibGUuaCAqLywKIAkJCQkwRjkxOUQyNzE1ODU2NzcwMDA0QTRFN0QgLyog
U3ltYm9sVGFibGUuY3BwICovLAogCQkJCTE0QTM5NkE2MENEMjkzMzEwMEI1QjRGRiAvKiBTeW1i
b2xUYWJsZS5oICovLAorCQkJCTBGQTJDMTc5MTdEN0NGODQwMDlEMDE1RiAvKiBUZXN0UnVubmVy
VXRpbHMuY3BwICovLAorCQkJCTBGQTJDMTdBMTdEN0NGODQwMDlEMDE1RiAvKiBUZXN0UnVubmVy
VXRpbHMuaCAqLywKIAkJCQkwRjU1OTg5NzE3Qzg2QzU2MDBBMUU1NDMgLyogVG9OYXRpdmVGcm9t
VmFsdWUuaCAqLywKIAkJCQk1RDUzNzI2RDBFMUM1NDZCMDAyMUU1NDkgLyogVHJhY2luZy5kICov
LAogCQkJCTVENTM3MjZFMEUxQzU0ODgwMDIxRTU0OSAvKiBUcmFjaW5nLmggKi8sCkBAIC0zODM2
LDYgKzM4NDIsNyBAQAogCQkJCTBGNjM5NDU1MTVEMDcwNTcwMDZBNTk3QyAvKiBBcnJheVByb2Zp
bGUuaCBpbiBIZWFkZXJzICovLAogCQkJCUJDMThDM0U3MEUxNkY1Q0QwMEIzNDQ2MCAvKiBBcnJh
eVByb3RvdHlwZS5oIGluIEhlYWRlcnMgKi8sCiAJCQkJQkMxOEM1MjQwRTE2RkM4QTAwQjM0NDYw
IC8qIEFycmF5UHJvdG90eXBlLmx1dC5oIGluIEhlYWRlcnMgKi8sCisJCQkJMEZBMkMxN0MxN0Q3
Q0Y4NDAwOUQwMTVGIC8qIFRlc3RSdW5uZXJVdGlscy5oIGluIEhlYWRlcnMgKi8sCiAJCQkJMEZC
N0YzOTYxNUVEOEU0NjAwRjE2N0IyIC8qIEFycmF5U3RvcmFnZS5oIGluIEhlYWRlcnMgKi8sCiAJ
CQkJOTY4OENCMTUwRUQxMkI0RTAwMUQ2NDlGIC8qIEFzc2VtYmxlckJ1ZmZlci5oIGluIEhlYWRl
cnMgKi8sCiAJCQkJODZEM0IyQzUxMDE1NkJERTAwMjg2NUU3IC8qIEFzc2VtYmxlckJ1ZmZlcldp
dGhDb25zdGFudFBvb2wuaCBpbiBIZWFkZXJzICovLApAQCAtNTE0MSw2ICs1MTQ4LDcgQEAKIAkJ
CQkwRkY3MjlBRjE2NkFEMzVDMDAwRjVCQTMgLyogUHJvZmlsZXJDb21waWxhdGlvbi5jcHAgaW4g
U291cmNlcyAqLywKIAkJCQkwRkY3MjlCMDE2NkFEMzVDMDAwRjVCQTMgLyogUHJvZmlsZXJDb21w
aWxhdGlvbktpbmQuY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJMEZGNzI5QjExNjZBRDM1QzAwMEY1
QkEzIC8qIFByb2ZpbGVyQ29tcGlsZWRCeXRlY29kZS5jcHAgaW4gU291cmNlcyAqLywKKwkJCQkw
RkEyQzE3QjE3RDdDRjg0MDA5RDAxNUYgLyogVGVzdFJ1bm5lclV0aWxzLmNwcCBpbiBTb3VyY2Vz
ICovLAogCQkJCTBGRjcyOUIyMTY2QUQzNUMwMDBGNUJBMyAvKiBQcm9maWxlckRhdGFiYXNlLmNw
cCBpbiBTb3VyY2VzICovLAogCQkJCTBGRjcyOUIzMTY2QUQzNUMwMDBGNUJBMyAvKiBQcm9maWxl
ck9yaWdpbi5jcHAgaW4gU291cmNlcyAqLywKIAkJCQkwRkY3MjlCNDE2NkFEMzVDMDAwRjVCQTMg
LyogUHJvZmlsZXJPcmlnaW5TdGFjay5jcHAgaW4gU291cmNlcyAqLywKSW5kZXg6IFNvdXJjZS9K
YXZhU2NyaXB0Q29yZS9ydW50aW1lL1Rlc3RSdW5uZXJVdGlscy5jcHAKPT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0g
U291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvVGVzdFJ1bm5lclV0aWxzLmNwcAkocmV2aXNp
b24gMCkKKysrIFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1Rlc3RSdW5uZXJVdGlscy5j
cHAJKHdvcmtpbmcgY29weSkKQEAgLTAsMCArMSw5MiBAQAorLyoKKyAqIENvcHlyaWdodCAoQykg
MjAxMyBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKgorICogUmVkaXN0cmlidXRp
b24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0Cisg
KiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5n
IGNvbmRpdGlvbnMKKyAqIGFyZSBtZXQ6CisgKiAxLiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNl
IGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlz
IGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgorICogMi4g
UmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBj
b3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBm
b2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKKyAqICAgIGRvY3VtZW50YXRpb24gYW5kL29yIG90
aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCisgKgorICogVEhJ
UyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBBUFBMRSBJTkMuIGBgQVMgSVMnJyBBTkQgQU5ZCisg
KiBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlU
RUQgVE8sIFRIRQorICogSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQg
RklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSCisgKiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiAgSU4g
Tk8gRVZFTlQgU0hBTEwgQVBQTEUgSU5DLiBPUgorICogQ09OVFJJQlVUT1JTIEJFIExJQUJMRSBG
T1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsCisgKiBFWEVNUExB
UlksIE9SIENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQg
VE8sCisgKiBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NT
IE9GIFVTRSwgREFUQSwgT1IKKyAqIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikg
SE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkKKyAqIE9GIExJQUJJTElUWSwgV0hFVEhF
UiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVAorICogKElOQ0xVRElORyBO
RUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNF
CisgKiBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZ
IE9GIFNVQ0ggREFNQUdFLiAKKyAqLworCisjaW5jbHVkZSAiY29uZmlnLmgiCisjaW5jbHVkZSAi
VGVzdFJ1bm5lclV0aWxzLmgiCisKKyNpbmNsdWRlICJDb2RlQmxvY2suaCIKKyNpbmNsdWRlICJP
cGVyYXRpb25zLmgiCisKK25hbWVzcGFjZSBKU0MgeworCitzdGF0aWMgRnVuY3Rpb25FeGVjdXRh
YmxlKiBnZXRFeGVjdXRhYmxlKEpTVmFsdWUgdGhlRnVuY3Rpb25WYWx1ZSkKK3sKKyAgICBKU0Z1
bmN0aW9uKiB0aGVGdW5jdGlvbiA9IGpzRHluYW1pY0Nhc3Q8SlNGdW5jdGlvbio+KHRoZUZ1bmN0
aW9uVmFsdWUpOworICAgIGlmICghdGhlRnVuY3Rpb24pCisgICAgICAgIHJldHVybiAwOworICAg
IAorICAgIEZ1bmN0aW9uRXhlY3V0YWJsZSogZXhlY3V0YWJsZSA9IGpzRHluYW1pY0Nhc3Q8RnVu
Y3Rpb25FeGVjdXRhYmxlKj4oCisgICAgICAgIHRoZUZ1bmN0aW9uLT5leGVjdXRhYmxlKCkpOwor
ICAgIHJldHVybiBleGVjdXRhYmxlOworfQorCitKU1ZhbHVlIG51bWJlck9mREZHQ29tcGlsZXMo
SlNWYWx1ZSB0aGVGdW5jdGlvblZhbHVlKQoreworICAgIGJvb2wgcHJldGVuZFRvSGF2ZU1hbnlD
b21waWxlcyA9IGZhbHNlOworI2lmIEVOQUJMRShERkdfSklUKQorICAgIGlmICghT3B0aW9uczo6
dXNlSklUKCkgfHwgIU9wdGlvbnM6OnVzZURGR0pJVCgpKQorICAgICAgICBwcmV0ZW5kVG9IYXZl
TWFueUNvbXBpbGVzID0gdHJ1ZTsKKyNlbHNlCisgICAgcHJldGVuZFRvSGF2ZU1hbnlDb21waWxl
cyA9IHRydWU7CisjZW5kaWYKKyAgICAKKyAgICBpZiAoRnVuY3Rpb25FeGVjdXRhYmxlKiBleGVj
dXRhYmxlID0gZ2V0RXhlY3V0YWJsZSh0aGVGdW5jdGlvblZhbHVlKSkgeworICAgICAgICBDb2Rl
QmxvY2sqIGJhc2VsaW5lQ29kZUJsb2NrID0gZXhlY3V0YWJsZS0+YmFzZWxpbmVDb2RlQmxvY2tG
b3IoQ29kZUZvckNhbGwpOworICAgICAgICAKKyAgICAgICAgaWYgKCFiYXNlbGluZUNvZGVCbG9j
aykKKyAgICAgICAgICAgIHJldHVybiBqc051bWJlcigwKTsKKworICAgICAgICBpZiAocHJldGVu
ZFRvSGF2ZU1hbnlDb21waWxlcykKKyAgICAgICAgICAgIHJldHVybiBqc051bWJlcigxMDAwMDAw
LjApOworICAgICAgICByZXR1cm4ganNOdW1iZXIoYmFzZWxpbmVDb2RlQmxvY2stPm51bWJlck9m
REZHQ29tcGlsZXMoKSk7CisgICAgfQorICAgIAorICAgIHJldHVybiBqc1VuZGVmaW5lZCgpOwor
fQorCitKU1ZhbHVlIHNldE5ldmVySW5saW5lKEpTVmFsdWUgdGhlRnVuY3Rpb25WYWx1ZSkKK3sK
KyAgICBpZiAoRnVuY3Rpb25FeGVjdXRhYmxlKiBleGVjdXRhYmxlID0gZ2V0RXhlY3V0YWJsZSh0
aGVGdW5jdGlvblZhbHVlKSkKKyAgICAgICAgZXhlY3V0YWJsZS0+c2V0TmV2ZXJJbmxpbmUodHJ1
ZSk7CisgICAgCisgICAgcmV0dXJuIGpzVW5kZWZpbmVkKCk7Cit9CisKK0pTVmFsdWUgbnVtYmVy
T2ZERkdDb21waWxlcyhFeGVjU3RhdGUqIGV4ZWMpCit7CisgICAgaWYgKGV4ZWMtPmFyZ3VtZW50
Q291bnQoKSA8IDEpCisgICAgICAgIHJldHVybiBqc1VuZGVmaW5lZCgpOworICAgIHJldHVybiBu
dW1iZXJPZkRGR0NvbXBpbGVzKGV4ZWMtPmFyZ3VtZW50KDApKTsKK30KKworSlNWYWx1ZSBzZXRO
ZXZlcklubGluZShFeGVjU3RhdGUqIGV4ZWMpCit7CisgICAgaWYgKGV4ZWMtPmFyZ3VtZW50Q291
bnQoKSA8IDEpCisgICAgICAgIHJldHVybiBqc1VuZGVmaW5lZCgpOworICAgIHJldHVybiBzZXRO
ZXZlcklubGluZShleGVjLT5hcmd1bWVudCgwKSk7Cit9CisKK30gLy8gbmFtZXNwYWNlIEpTQwor
CkluZGV4OiBTb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9UZXN0UnVubmVyVXRpbHMuaAo9
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09Ci0tLSBTb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9UZXN0UnVubmVyVXRp
bHMuaAkocmV2aXNpb24gMCkKKysrIFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1Rlc3RS
dW5uZXJVdGlscy5oCSh3b3JraW5nIGNvcHkpCkBAIC0wLDAgKzEsNDEgQEAKKy8qCisgKiBDb3B5
cmlnaHQgKEMpIDIwMTMgQXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICoKKyAqIFJl
ZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Ig
d2l0aG91dAorICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhl
IGZvbGxvd2luZyBjb25kaXRpb25zCisgKiBhcmUgbWV0OgorICogMS4gUmVkaXN0cmlidXRpb25z
IG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5v
dGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1l
ci4KKyAqIDIuIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0
aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25z
IGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCisgKiAgICBkb2N1bWVudGF0aW9u
IGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgor
ICoKKyAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgQVBQTEUgSU5DLiBgYEFTIElTJycg
QU5EIEFOWQorICogRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVU
IE5PVCBMSU1JVEVEIFRPLCBUSEUKKyAqIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFC
SUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUgorICogUFVSUE9TRSBBUkUgRElTQ0xB
SU1FRC4gIElOIE5PIEVWRU5UIFNIQUxMIEFQUExFIElOQy4gT1IKKyAqIENPTlRSSUJVVE9SUyBC
RSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLAor
ICogRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5P
VCBMSU1JVEVEIFRPLAorICogUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUiBTRVJW
SUNFUzsgTE9TUyBPRiBVU0UsIERBVEEsIE9SCisgKiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRF
UlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhFT1JZCisgKiBPRiBMSUFCSUxJ
VFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQKKyAqIChJ
TkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQg
T0YgVEhFIFVTRQorICogT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQ
T1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4gCisgKi8KKworI2lmbmRlZiBUZXN0UnVubmVyVXRp
bHNfaAorI2RlZmluZSBUZXN0UnVubmVyVXRpbHNfaAorCisjaW5jbHVkZSAiSlNDSlNWYWx1ZS5o
IgorCituYW1lc3BhY2UgSlNDIHsKKworSlNfRVhQT1JUX1BSSVZBVEUgSlNWYWx1ZSBudW1iZXJP
ZkRGR0NvbXBpbGVzKEpTVmFsdWUgZnVuY3Rpb24pOworSlNfRVhQT1JUX1BSSVZBVEUgSlNWYWx1
ZSBzZXROZXZlcklubGluZShKU1ZhbHVlIGZ1bmN0aW9uKTsKKworSlNfRVhQT1JUX1BSSVZBVEUg
SlNWYWx1ZSBudW1iZXJPZkRGR0NvbXBpbGVzKEV4ZWNTdGF0ZSopOworSlNfRVhQT1JUX1BSSVZB
VEUgSlNWYWx1ZSBzZXROZXZlcklubGluZShFeGVjU3RhdGUqKTsKKworfSAvLyBuYW1lc3BhY2Ug
SlNDCisKKyNlbmRpZiAvLyBUZXN0UnVubmVyVXRpbHNfaApJbmRleDogTGF5b3V0VGVzdHMvQ2hh
bmdlTG9nCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL0NoYW5nZUxvZwkocmV2aXNpb24gMTU1
MDYzKQorKysgTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCSh3b3JraW5nIGNvcHkpCkBAIC0xLDMgKzEs
MTUgQEAKKzIwMTMtMDktMDQgIEZpbGlwIFBpemxvICA8ZnBpemxvQGFwcGxlLmNvbT4KKworICAg
ICAgICBydW4tZmFzdC1qc2Mgc2hvdWxkIHdvcmsgd2l0aCBuZXctc2Nob29sIGZhc3QvanMgdGVz
dHMgdGhhdCBsb29wIHVudGlsIHRoZSBERkcgdGllcnMgdXAKKyAgICAgICAgaHR0cHM6Ly9idWdz
LndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTEyMDY5NworCisgICAgICAgIFJldmlld2VkIGJ5
IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgICogZmFzdC9qcy9yZXNvdXJjZXMvc3RhbmRhbG9u
ZS1wcmUuanM6CisgICAgICAgICh0ZXN0UGFzc2VkKToKKyAgICAgICAgKHRlc3RGYWlsZWQpOgor
ICAgICAgICAoZGZnQ29tcGlsZWQpOgorCiAyMDEzLTA5LTA0ICBDc2FiYSBPc3p0cm9nb27DoWMg
IDxvc3N5QHdlYmtpdC5vcmc+CiAKICAgICAgICAgUmVtb3ZlIEhUTUxEaWFsb2dFbGVtZW50IGxh
eW91dCB0ZXN0cyBhZnRlciByMTU0ODM1CkluZGV4OiBMYXlvdXRUZXN0cy9mYXN0L2pzL3Jlc291
cmNlcy9zdGFuZGFsb25lLXByZS5qcwo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9mYXN0L2pz
L3Jlc291cmNlcy9zdGFuZGFsb25lLXByZS5qcwkocmV2aXNpb24gMTU1MDUxKQorKysgTGF5b3V0
VGVzdHMvZmFzdC9qcy9yZXNvdXJjZXMvc3RhbmRhbG9uZS1wcmUuanMJKHdvcmtpbmcgY29weSkK
QEAgLTIsNiArMiwxNiBAQCB2YXIgd2FzUG9zdFRlc3RTY3JpcHRQYXJzZWQgPSBmYWxzZTsKIHZh
ciBlcnJvck1lc3NhZ2U7CiB2YXIgc2VsZiA9IHRoaXM7CiAKK3NlbGYudGVzdFJ1bm5lciA9IHsK
KyAgICBuZXZlcklubGluZUZ1bmN0aW9uOiBuZXZlcklubGluZUZ1bmN0aW9uLAorICAgIG51bWJl
ck9mREZHQ29tcGlsZXM6IG51bWJlck9mREZHQ29tcGlsZXMKK307CisKK3ZhciBzaWxlbnRUZXN0
UGFzcywgZGlkUGFzc1NvbWVUZXN0c1NpbGVudGx5LCBkaWRGYWlsU29tZVRlc3RzOworc2lsZW50
VGVzdFBhc3MgPSBmYWxzZTsKK2RpZFBhc3NTb21lVGVzdHNTaWxlbnR5ID0gZmFsc2U7CitkaWRG
YWlsZVNvbWVUZXN0cyA9IGZhbHNlOworCiBmdW5jdGlvbiBkZXNjcmlwdGlvbihtc2cpCiB7CiAg
ICAgcHJpbnQobXNnKTsKQEAgLTIxLDExICszMSwxNSBAQCBmdW5jdGlvbiBlc2NhcGVTdHJpbmco
dGV4dCkKIAogZnVuY3Rpb24gdGVzdFBhc3NlZChtc2cpCiB7Ci0gICAgcHJpbnQoIlBBU1MiLCBl
c2NhcGVTdHJpbmcobXNnKSk7CisgICAgaWYgKHNpbGVudFRlc3RQYXNzKQorICAgICAgICBkaWRQ
YXNzU29tZVRlc3RzU2lsZW50bHkgPSB0cnVlOworICAgIGVsc2UKKyAgICAgICAgcHJpbnQoIlBB
U1MiLCBlc2NhcGVTdHJpbmcobXNnKSk7CiB9CiAKIGZ1bmN0aW9uIHRlc3RGYWlsZWQobXNnKQog
eworICAgIGRpZEZhaWxTb21lVGVzdHMgPSB0cnVlOwogICAgIGVycm9yTWVzc2FnZSA9IG1zZzsK
ICAgICBwcmludCgiRkFJTCIsIGVzY2FwZVN0cmluZyhtc2cpKTsKIH0KQEAgLTE4Myw2ICsxOTcs
MTAgQEAgZnVuY3Rpb24gaXNTdWNjZXNzZnVsbHlQYXJzZWQoKQogICAgIGlmICghZXJyb3JNZXNz
YWdlKQogICAgICAgICBzdWNjZXNzZnVsbHlQYXJzZWQgPSB0cnVlOwogICAgIHNob3VsZEJlVHJ1
ZSgic3VjY2Vzc2Z1bGx5UGFyc2VkIik7CisgICAgaWYgKHNpbGVudFRlc3RQYXNzICYmIGRpZFBh
c3NTb21lVGVzdHNTaWxlbnRseSkKKyAgICAgICAgZGVidWcoIlBhc3NlZCBzb21lIHRlc3RzIHNp
bGVudGx5LiIpOworICAgIGlmIChzaWxlbnRUZXN0UGFzcyAmJiBkaWRGYWlsU29tZVRlc3RzKQor
ICAgICAgICBkZWJ1ZygiU29tZSB0ZXN0cyBmYWlsZWQuIik7CiAgICAgZGVidWcoIlxuVEVTVCBD
T01QTEVURVxuIik7CiB9CiAKQEAgLTE5Niw3ICsyMTQsNyBAQCBmdW5jdGlvbiBkZmdDb21waWxl
ZChhcmd1bWVudCkKICAgICAKICAgICBpZiAoYXJndW1lbnQuZiBpbnN0YW5jZW9mIEFycmF5KSB7
CiAgICAgICAgIGZvciAodmFyIGkgPSAwOyBpIDwgYXJndW1lbnQuZi5sZW5ndGg7ICsraSkgewot
ICAgICAgICAgICAgaWYgKHRlc3RSdW5uZXIubnVtYmVyT2ZERkdDb21waWxlcyhhcmd1bWVudC5m
W2ldKSA8IG51bWJlck9mQ29tcGlsZXMpCisgICAgICAgICAgICBpZiAodGVzdFJ1bm5lci5udW1i
ZXJPZmJqc0RGR0NvbXBpbGVzKGFyZ3VtZW50LmZbaV0pIDwgbnVtYmVyT2ZDb21waWxlcykKICAg
ICAgICAgICAgICAgICByZXR1cm4gZmFsc2U7CiAgICAgICAgIH0KICAgICB9IGVsc2Ugewo=
</data>
<flag name="review"
          id="232609"
          type_id="1"
          status="+"
          setter="mhahnenberg"
    />
          </attachment>
      

    </bug>

</bugzilla>