<?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>109746</bug_id>
          
          <creation_ts>2013-02-13 14:00:57 -0800</creation_ts>
          <short_desc>REGRESSION(r142747): broke component build (Requested by alecf_gardening on #webkit).</short_desc>
          <delta_ts>2013-02-13 14:04:35 -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>New Bugs</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</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>109554</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="WebKit Review Bot">webkit.review.bot</reporter>
          <assigned_to name="WebKit Review Bot">webkit.review.bot</assigned_to>
          <cc>alecflett</cc>
    
    <cc>loislo</cc>
    
    <cc>yurys</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>832317</commentid>
    <comment_count>0</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2013-02-13 14:00:57 -0800</bug_when>
    <thetext>http://trac.webkit.org/changeset/142747 broke the build:
broke component build (Requested by alecf_gardening on #webkit).

This is an automatic bug report generated by the sheriff-bot. If this bug
report was created because of a flaky test, please file a bug for the flaky
test (if we don&apos;t already have one on file) and dup this bug against that bug
so that we can track how often these flaky tests case pain.

&quot;Only you can prevent forest fires.&quot; -- Smokey the Bear</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>832319</commentid>
    <comment_count>1</comment_count>
      <attachid>188176</attachid>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2013-02-13 14:01:29 -0800</bug_when>
    <thetext>Created attachment 188176
ROLLOUT of r142747

Any committer can land this patch automatically by marking it commit-queue+.  The commit-queue will build and test the patch before landing to ensure that the rollout will be successful.  This process takes approximately 15 minutes.

If you would like to land the rollout faster, you can use the following command:

  webkit-patch land-attachment ATTACHMENT_ID

where ATTACHMENT_ID is the ID of this attachment.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>832321</commentid>
    <comment_count>2</comment_count>
      <attachid>188176</attachid>
    <who name="Alec Flett">alecflett</who>
    <bug_when>2013-02-13 14:04:24 -0800</bug_when>
    <thetext>Comment on attachment 188176
ROLLOUT of r142747

landing manually</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>832322</commentid>
    <comment_count>3</comment_count>
      <attachid>188176</attachid>
    <who name="Alec Flett">alecflett</who>
    <bug_when>2013-02-13 14:04:33 -0800</bug_when>
    <thetext>Comment on attachment 188176
ROLLOUT of r142747

Clearing flags on attachment: 188176

Committed r142795: &lt;http://trac.webkit.org/changeset/142795&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>832323</commentid>
    <comment_count>4</comment_count>
    <who name="Alec Flett">alecflett</who>
    <bug_when>2013-02-13 14:04:35 -0800</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>188176</attachid>
            <date>2013-02-13 14:01:29 -0800</date>
            <delta_ts>2013-02-13 14:04:33 -0800</delta_ts>
            <desc>ROLLOUT of r142747</desc>
            <filename>bug-109746-20130213215757.patch</filename>
            <type>text/plain</type>
            <size>19658</size>
            <attacher name="WebKit Review Bot">webkit.review.bot</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTQyNzk0CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggYzM5MTA3OGU3NmU4ZDk1
YTAxYjFhYjExYTY1NWYwYjgwYzExM2NhMy4uMzc4Zjg5MjA2ZWQyNjg3NTUxODY4YTM0YzQzMDlj
NTNiZmUyNjZhNSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDI0IEBACisyMDEzLTAyLTEzICBTaGVy
aWZmIEJvdCAgPHdlYmtpdC5yZXZpZXcuYm90QGdtYWlsLmNvbT4KKworICAgICAgICBVbnJldmll
d2VkLCByb2xsaW5nIG91dCByMTQyNzQ3LgorICAgICAgICBodHRwOi8vdHJhYy53ZWJraXQub3Jn
L2NoYW5nZXNldC8xNDI3NDcKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19i
dWcuY2dpP2lkPTEwOTc0NgorCisgICAgICAgIGJyb2tlIGNvbXBvbmVudCBidWlsZCAoUmVxdWVz
dGVkIGJ5IGFsZWNmX2dhcmRlbmluZyBvbgorICAgICAgICAjd2Via2l0KS4KKworICAgICAgICAq
IGluc3BlY3Rvci9IZWFwR3JhcGhTZXJpYWxpemVyLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6Okhl
YXBHcmFwaFNlcmlhbGl6ZXI6OkhlYXBHcmFwaFNlcmlhbGl6ZXIpOgorICAgICAgICAoV2ViQ29y
ZTo6SGVhcEdyYXBoU2VyaWFsaXplcjo6cHVzaFVwZGF0ZSk6CisgICAgICAgIChXZWJDb3JlOjpI
ZWFwR3JhcGhTZXJpYWxpemVyOjpyZXBvcnROb2RlKToKKyAgICAgICAgKFdlYkNvcmU6OkhlYXBH
cmFwaFNlcmlhbGl6ZXI6OnRvTm9kZUlkKToKKyAgICAgICAgKFdlYkNvcmU6OkhlYXBHcmFwaFNl
cmlhbGl6ZXI6OmFkZFJvb3ROb2RlKToKKyAgICAgICAgKiBpbnNwZWN0b3IvSGVhcEdyYXBoU2Vy
aWFsaXplci5oOgorICAgICAgICAoV2ViQ29yZSk6CisgICAgICAgIChIZWFwR3JhcGhTZXJpYWxp
emVyKToKKyAgICAgICAgKiBpbnNwZWN0b3IvSW5zcGVjdG9yTWVtb3J5QWdlbnQuY3BwOgorICAg
ICAgICAoV2ViQ29yZTo6SW5zcGVjdG9yTWVtb3J5QWdlbnQ6OmdldFByb2Nlc3NNZW1vcnlEaXN0
cmlidXRpb25JbXBsKToKKwogMjAxMy0wMi0xMyAgTGV2aSBXZWludHJhdWIgIDxsZXZpd0BjaHJv
bWl1bS5vcmc+CiAKICAgICAgICAgQmlkaS1Jc29sYXRlZCBpbmxpbmVzIGNhbiBjYXVzZSBzdWJz
ZXF1ZW50IGNvbnRlbnQgdG8gbm90IGJlIHJlbmRlcmVkCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
Q29yZS9pbnNwZWN0b3IvSGVhcEdyYXBoU2VyaWFsaXplci5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9p
bnNwZWN0b3IvSGVhcEdyYXBoU2VyaWFsaXplci5jcHAKaW5kZXggZGJlMmJkYzE3MWVhNWZmN2Y3
ZGFhMDIxMDBiZWE0OTA5NmIyOWNkZS4uMTQ3OTUxN2IzMzYyYjllM2ViZDhjYzZlYjYwZTYwMjEx
OWU3NWE0NSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL0hlYXBHcmFwaFNl
cmlhbGl6ZXIuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9IZWFwR3JhcGhTZXJp
YWxpemVyLmNwcApAQCAtNDMsMTYgKzQzLDE1IEBACiAKIG5hbWVzcGFjZSBXZWJDb3JlIHsKIAot
SGVhcEdyYXBoU2VyaWFsaXplcjo6SGVhcEdyYXBoU2VyaWFsaXplcihDbGllbnQqIGNsaWVudCkK
LSAgICA6IG1fY2xpZW50KGNsaWVudCkKK0hlYXBHcmFwaFNlcmlhbGl6ZXI6OkhlYXBHcmFwaFNl
cmlhbGl6ZXIoSW5zcGVjdG9yRnJvbnRlbmQ6Ok1lbW9yeSogZnJvbnRlbmQpCisgICAgOiBtX2Zy
b250ZW5kKGZyb250ZW5kKQogICAgICwgbV9zdHJpbmdzKFN0cmluZ3M6OmNyZWF0ZSgpKQogICAg
ICwgbV9lZGdlcyhFZGdlczo6Y3JlYXRlKCkpCiAgICAgLCBtX25vZGVFZGdlc0NvdW50KDApCiAg
ICAgLCBtX25vZGVzKE5vZGVzOjpjcmVhdGUoKSkKICAgICAsIG1fYmFzZVRvUmVhbE5vZGVJZE1h
cChCYXNlVG9SZWFsTm9kZUlkTWFwOjpjcmVhdGUoKSkKLSAgICAsIG1fbGVhZkNvdW50KDApCiB7
Ci0gICAgQVNTRVJUKG1fY2xpZW50KTsKKyAgICBBU1NFUlQobV9mcm9udGVuZCk7CiAgICAgbV9z
dHJpbmdzLT5hZGRJdGVtKFN0cmluZygpKTsgLy8gQW4gZW1wdHkgc3RyaW5nIHdpdGggMCBpbmRl
eC4KIAogICAgIG1lbXNldChtX2VkZ2VUeXBlcywgMCwgc2l6ZW9mKG1fZWRnZVR5cGVzKSk7CkBA
IC05Miw3ICs5MSw3IEBAIHZvaWQgSGVhcEdyYXBoU2VyaWFsaXplcjo6cHVzaFVwZGF0ZSgpCiAg
ICAgICAgIC5zZXRFZGdlcyhtX2VkZ2VzLnJlbGVhc2UoKSkKICAgICAgICAgLnNldEJhc2VUb1Jl
YWxOb2RlSWQobV9iYXNlVG9SZWFsTm9kZUlkTWFwLnJlbGVhc2UoKSk7CiAKLSAgICBtX2NsaWVu
dC0+YWRkTmF0aXZlU25hcHNob3RDaHVuayhjaHVuay5yZWxlYXNlKCkpOworICAgIG1fZnJvbnRl
bmQtPmFkZE5hdGl2ZVNuYXBzaG90Q2h1bmsoY2h1bmspOwogCiAgICAgbV9zdHJpbmdzID0gU3Ry
aW5nczo6Y3JlYXRlKCk7CiAgICAgbV9lZGdlcyA9IEVkZ2VzOjpjcmVhdGUoKTsKQEAgLTEwMiw3
ICsxMDEsNiBAQCB2b2lkIEhlYXBHcmFwaFNlcmlhbGl6ZXI6OnB1c2hVcGRhdGUoKQogCiB2b2lk
IEhlYXBHcmFwaFNlcmlhbGl6ZXI6OnJlcG9ydE5vZGUoY29uc3QgV1RGOjpNZW1vcnlPYmplY3RJ
bmZvJiBpbmZvKQogewotICAgIEFTU0VSVChpbmZvLnJlcG9ydGVkUG9pbnRlcigpKTsKICAgICBy
ZXBvcnROb2RlSW1wbChpbmZvLCBtX25vZGVFZGdlc0NvdW50KTsKICAgICBtX25vZGVFZGdlc0Nv
dW50ID0gMDsKICAgICBpZiAoaW5mby5pc1Jvb3QoKSkKQEAgLTE4NCwxMCArMTgyLDggQEAgaW50
IEhlYXBHcmFwaFNlcmlhbGl6ZXI6OmFkZFN0cmluZyhjb25zdCBTdHJpbmcmIHN0cmluZykKIAog
aW50IEhlYXBHcmFwaFNlcmlhbGl6ZXI6OnRvTm9kZUlkKGNvbnN0IHZvaWQqIHRvKQogewotICAg
IGlmICghdG8pCi0gICAgICAgIHJldHVybiBzX2ZpcnN0Tm9kZUlkICsgbV9hZGRyZXNzMk5vZGVJ
ZE1hcC5zaXplKCkgKyBtX2xlYWZDb3VudCsrOwotCi0gICAgQWRkcmVzczJOb2RlSWQ6OkFkZFJl
c3VsdCByZXN1bHQgPSBtX2FkZHJlc3MyTm9kZUlkTWFwLmFkZCh0bywgc19maXJzdE5vZGVJZCAr
IG1fbGVhZkNvdW50ICsgbV9hZGRyZXNzMk5vZGVJZE1hcC5zaXplKCkpOworICAgIEFTU0VSVCh0
byk7CisgICAgQWRkcmVzczJOb2RlSWQ6OkFkZFJlc3VsdCByZXN1bHQgPSBtX2FkZHJlc3MyTm9k
ZUlkTWFwLmFkZCh0bywgbV9hZGRyZXNzMk5vZGVJZE1hcC5zaXplKCkpOwogICAgIHJldHVybiBy
ZXN1bHQuaXRlcmF0b3ItPnZhbHVlOwogfQogCkBAIC0xOTgsNyArMTk0LDcgQEAgdm9pZCBIZWFw
R3JhcGhTZXJpYWxpemVyOjphZGRSb290Tm9kZSgpCiAKICAgICBtX25vZGVzLT5hZGRJdGVtKGFk
ZFN0cmluZygiUm9vdCIpKTsKICAgICBtX25vZGVzLT5hZGRJdGVtKDApOwotICAgIG1fbm9kZXMt
PmFkZEl0ZW0oc19maXJzdE5vZGVJZCArIG1fYWRkcmVzczJOb2RlSWRNYXAuc2l6ZSgpICsgbV9s
ZWFmQ291bnQpOworICAgIG1fbm9kZXMtPmFkZEl0ZW0obV9hZGRyZXNzMk5vZGVJZE1hcC5zaXpl
KCkpOwogICAgIG1fbm9kZXMtPmFkZEl0ZW0oMCk7CiAgICAgbV9ub2Rlcy0+YWRkSXRlbShtX3Jv
b3RzLnNpemUoKSk7CiB9CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvSGVh
cEdyYXBoU2VyaWFsaXplci5oIGIvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL0hlYXBHcmFwaFNl
cmlhbGl6ZXIuaAppbmRleCAwZjE4YmZiMTkyNmRiMGRlMGUzNjI1MjI4YzgwNTU3MmYyMDkxYTQy
Li42ZDljOTI2NDQ1NWY2OGZkY2ExODk3YzUzZmZlYjFhZDk4MjI0MWIxIDEwMDY0NAotLS0gYS9T
b3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvSGVhcEdyYXBoU2VyaWFsaXplci5oCisrKyBiL1NvdXJj
ZS9XZWJDb3JlL2luc3BlY3Rvci9IZWFwR3JhcGhTZXJpYWxpemVyLmgKQEAgLTQzLDE3ICs0Mywx
NCBAQAogCiBuYW1lc3BhY2UgV2ViQ29yZSB7CiAKK2NsYXNzIEhlYXBHcmFwaEVkZ2U7CitjbGFz
cyBIZWFwR3JhcGhOb2RlOworY2xhc3MgSW5zcGVjdG9yT2JqZWN0OworCiBjbGFzcyBIZWFwR3Jh
cGhTZXJpYWxpemVyIHsKICAgICBXVEZfTUFLRV9OT05DT1BZQUJMRShIZWFwR3JhcGhTZXJpYWxp
emVyKTsKIHB1YmxpYzoKLQotICAgIGNsYXNzIENsaWVudCB7Ci0gICAgcHVibGljOgotICAgICAg
ICB2aXJ0dWFsIH5DbGllbnQoKSB7IH0KLSAgICAgICAgdmlydHVhbCB2b2lkIGFkZE5hdGl2ZVNu
YXBzaG90Q2h1bmsoUGFzc1JlZlB0cjxUeXBlQnVpbGRlcjo6TWVtb3J5OjpIZWFwU25hcHNob3RD
aHVuaz4pID0gMDsKLSAgICB9OwotCi0gICAgZXhwbGljaXQgSGVhcEdyYXBoU2VyaWFsaXplcihD
bGllbnQqKTsKKyAgICBleHBsaWNpdCBIZWFwR3JhcGhTZXJpYWxpemVyKEluc3BlY3RvckZyb250
ZW5kOjpNZW1vcnkqKTsKICAgICB+SGVhcEdyYXBoU2VyaWFsaXplcigpOwogICAgIHZvaWQgcmVw
b3J0Tm9kZShjb25zdCBXVEY6Ok1lbW9yeU9iamVjdEluZm8mKTsKICAgICB2b2lkIHJlcG9ydEVk
Z2UoY29uc3Qgdm9pZCosIGNvbnN0IGNoYXIqLCBXVEY6Ok1lbWJlclR5cGUpOwpAQCAtNzYsNyAr
NzMsNyBAQCBwcml2YXRlOgogICAgIHZvaWQgcmVwb3J0RWRnZUltcGwoY29uc3QgaW50IHRvTm9k
ZUlkLCBjb25zdCBjaGFyKiBuYW1lLCBpbnQgbWVtYmVyVHlwZSk7CiAgICAgaW50IHJlcG9ydE5v
ZGVJbXBsKGNvbnN0IFdURjo6TWVtb3J5T2JqZWN0SW5mbyYsIGludCBlZGdlc0NvdW50KTsKIAot
ICAgIENsaWVudCogbV9jbGllbnQ7CisgICAgSW5zcGVjdG9yRnJvbnRlbmQ6Ok1lbW9yeSogbV9m
cm9udGVuZDsKIAogICAgIHR5cGVkZWYgSGFzaE1hcDxTdHJpbmcsIGludD4gU3RyaW5nTWFwOwog
ICAgIFN0cmluZ01hcCBtX3N0cmluZ1RvSW5kZXg7CkBAIC0xMDMsOSArMTAwLDYgQEAgcHJpdmF0
ZToKIAogICAgIHNpemVfdCBtX2VkZ2VUeXBlc1tXVEY6Okxhc3RNZW1iZXJUeXBlRW50cnldOwog
ICAgIGludCBtX3Vua25vd25DbGFzc05hbWVJZDsKLSAgICBpbnQgbV9sZWFmQ291bnQ7Ci0KLSAg
ICBzdGF0aWMgY29uc3QgaW50IHNfZmlyc3ROb2RlSWQgPSAxOwogfTsKIAogfSAvLyBuYW1lc3Bh
Y2UgV2ViQ29yZQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL0luc3BlY3Rv
ck1lbW9yeUFnZW50LmNwcCBiL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9JbnNwZWN0b3JNZW1v
cnlBZ2VudC5jcHAKaW5kZXggYzg0MTg4YTRmZjYyY2QzZDFkNDIzNjJiZjZiMTA3MTJhODY0NmUx
Yy4uNWY2YTczZDBkOWFmZjNmNTY1NjYyZTJhMmY5YzJlMWQ1YTQ1ZDI4YyAxMDA2NDQKLS0tIGEv
U291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL0luc3BlY3Rvck1lbW9yeUFnZW50LmNwcAorKysgYi9T
b3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvSW5zcGVjdG9yTWVtb3J5QWdlbnQuY3BwCkBAIC0zMzAs
MzEgKzMzMCwxMSBAQCB2b2lkIEluc3BlY3Rvck1lbW9yeUFnZW50OjpyZXBvcnRNZW1vcnlVc2Fn
ZShNZW1vcnlPYmplY3RJbmZvKiBtZW1vcnlPYmplY3RJbmZvKQogICAgIGluZm8uYWRkTWVtYmVy
KG1fcGFnZSwgInBhZ2UiKTsKIH0KIAotbmFtZXNwYWNlIHsKLQotY2xhc3MgRnJvbnRlbmRXcmFw
cGVyIDogcHVibGljIEhlYXBHcmFwaFNlcmlhbGl6ZXI6OkNsaWVudCB7Ci1wdWJsaWM6Ci0gICAg
ZXhwbGljaXQgRnJvbnRlbmRXcmFwcGVyKEluc3BlY3RvckZyb250ZW5kOjpNZW1vcnkqIGZyb250
ZW5kKSA6IG1fZnJvbnRlbmQoZnJvbnRlbmQpIHsgfQotICAgIHZpcnR1YWwgdm9pZCBhZGROYXRp
dmVTbmFwc2hvdENodW5rKFBhc3NSZWZQdHI8VHlwZUJ1aWxkZXI6Ok1lbW9yeTo6SGVhcFNuYXBz
aG90Q2h1bms+IGhlYXBTbmFwc2hvdENodW5rKSBPVkVSUklERQotICAgIHsKLSAgICAgICAgbV9m
cm9udGVuZC0+YWRkTmF0aXZlU25hcHNob3RDaHVuayhoZWFwU25hcHNob3RDaHVuayk7Ci0gICAg
fQotcHJpdmF0ZToKLSAgICBJbnNwZWN0b3JGcm9udGVuZDo6TWVtb3J5KiBtX2Zyb250ZW5kOwot
fTsKLQotfQotCiB2b2lkIEluc3BlY3Rvck1lbW9yeUFnZW50OjpnZXRQcm9jZXNzTWVtb3J5RGlz
dHJpYnV0aW9uSW1wbChib29sIHJlcG9ydEdyYXBoLCBUeXBlTmFtZVRvU2l6ZU1hcCogbWVtb3J5
SW5mbykKIHsKICAgICBPd25QdHI8SGVhcEdyYXBoU2VyaWFsaXplcj4gZ3JhcGhTZXJpYWxpemVy
OwotICAgIE93blB0cjxGcm9udGVuZFdyYXBwZXI+IGZyb250ZW5kV3JhcHBlcjsKLQotICAgIGlm
IChyZXBvcnRHcmFwaCkgewotICAgICAgICBmcm9udGVuZFdyYXBwZXIgPSBhZG9wdFB0cihuZXcg
RnJvbnRlbmRXcmFwcGVyKG1fZnJvbnRlbmQpKTsKLSAgICAgICAgZ3JhcGhTZXJpYWxpemVyID0g
YWRvcHRQdHIobmV3IEhlYXBHcmFwaFNlcmlhbGl6ZXIoZnJvbnRlbmRXcmFwcGVyLmdldCgpKSk7
Ci0gICAgfQotCisgICAgaWYgKHJlcG9ydEdyYXBoKQorICAgICAgICBncmFwaFNlcmlhbGl6ZXIg
PSBhZG9wdFB0cihuZXcgSGVhcEdyYXBoU2VyaWFsaXplcihtX2Zyb250ZW5kKSk7CiAgICAgTWVt
b3J5SW5zdHJ1bWVudGF0aW9uQ2xpZW50SW1wbCBtZW1vcnlJbnN0cnVtZW50YXRpb25DbGllbnQo
Z3JhcGhTZXJpYWxpemVyLmdldCgpKTsKICAgICBtX2luc3BlY3RvckNsaWVudC0+Z2V0QWxsb2Nh
dGVkT2JqZWN0cyhtZW1vcnlJbnN0cnVtZW50YXRpb25DbGllbnQuYWxsb2NhdGVkT2JqZWN0cygp
KTsKICAgICBNZW1vcnlJbnN0cnVtZW50YXRpb25JbXBsIG1lbW9yeUluc3RydW1lbnRhdGlvbigm
bWVtb3J5SW5zdHJ1bWVudGF0aW9uQ2xpZW50KTsKQEAgLTM3Miw4ICszNTIsNiBAQCB2b2lkIElu
c3BlY3Rvck1lbW9yeUFnZW50OjpnZXRQcm9jZXNzTWVtb3J5RGlzdHJpYnV0aW9uSW1wbChib29s
IHJlcG9ydEdyYXBoLCBUeQogICAgIGlmIChncmFwaFNlcmlhbGl6ZXIpIHsKICAgICAgICAgbWVt
b3J5SW5zdHJ1bWVudGF0aW9uLmFkZFJvb3RPYmplY3QoZ3JhcGhTZXJpYWxpemVyLmdldCgpKTsK
ICAgICAgICAgZ3JhcGhTZXJpYWxpemVyLT5maW5pc2goKTsKLSAgICAgICAgZ3JhcGhTZXJpYWxp
emVyLnJlbGVhc2UoKTsgLy8gUmVsZWFzZSBpdCBlYXJsaWVyIHRoYW4gZnJvbnRlbmRXcmFwcGVy
Ci0gICAgICAgIGZyb250ZW5kV3JhcHBlci5yZWxlYXNlKCk7CiAgICAgfQogCiAgICAgbV9pbnNw
ZWN0b3JDbGllbnQtPmR1bXBVbmNvdW50ZWRBbGxvY2F0ZWRPYmplY3RzKG1lbW9yeUluc3RydW1l
bnRhdGlvbkNsaWVudC5jb3VudGVkT2JqZWN0cygpKTsKZGlmZiAtLWdpdCBhL1Rvb2xzL0NoYW5n
ZUxvZyBiL1Rvb2xzL0NoYW5nZUxvZwppbmRleCBjMTQ3MmM2YjAzMTYyYTM2NzQyZmM2ZGI4NmMz
OGJiOTE4OWM5MWYzLi5kZjRkOTRkNGE0ZTIwNDA3MGFmYjYzZTU1ZGVjZTgzYWMxOWVmNDk3IDEw
MDY0NAotLS0gYS9Ub29scy9DaGFuZ2VMb2cKKysrIGIvVG9vbHMvQ2hhbmdlTG9nCkBAIC0xLDMg
KzEsMTUgQEAKKzIwMTMtMDItMTMgIFNoZXJpZmYgQm90ICA8d2Via2l0LnJldmlldy5ib3RAZ21h
aWwuY29tPgorCisgICAgICAgIFVucmV2aWV3ZWQsIHJvbGxpbmcgb3V0IHIxNDI3NDcuCisgICAg
ICAgIGh0dHA6Ly90cmFjLndlYmtpdC5vcmcvY2hhbmdlc2V0LzE0Mjc0NworICAgICAgICBodHRw
czovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTA5NzQ2CisKKyAgICAgICAgYnJv
a2UgY29tcG9uZW50IGJ1aWxkIChSZXF1ZXN0ZWQgYnkgYWxlY2ZfZ2FyZGVuaW5nIG9uCisgICAg
ICAgICN3ZWJraXQpLgorCisgICAgICAgICogVGVzdFdlYktpdEFQSS9UZXN0V2ViS2l0QVBJLmd5
cGk6CisgICAgICAgICogVGVzdFdlYktpdEFQSS9UZXN0cy9XZWJDb3JlL0hlYXBHcmFwaFNlcmlh
bGl6ZXJUZXN0LmNwcDogUmVtb3ZlZC4KKwogMjAxMy0wMi0xMyAgSm9jaGVuIEVpc2luZ2VyICA8
am9jaGVuQGNocm9taXVtLm9yZz4KIAogICAgICAgICBbY2hyb21pdW1dIGZpeCBUZXN0UnVubmVy
IGJ1aWxkIHdpdGggZW5hYmxlX3dlYnJ0Yz0wCmRpZmYgLS1naXQgYS9Ub29scy9UZXN0V2ViS2l0
QVBJL1Rlc3RXZWJLaXRBUEkuZ3lwaSBiL1Rvb2xzL1Rlc3RXZWJLaXRBUEkvVGVzdFdlYktpdEFQ
SS5neXBpCmluZGV4IDJiYjBmYmQyMmMyMTYxN2RjZmY1NDhhNDYyMDY2MjdmMTBhOTgwMzIuLjVl
N2YxN2U4ZGE4ZWEyYjBkMzZmNTQyMTczMDk3ZjJmMzIyYjQ5OWEgMTAwNjQ0Ci0tLSBhL1Rvb2xz
L1Rlc3RXZWJLaXRBUEkvVGVzdFdlYktpdEFQSS5neXBpCisrKyBiL1Rvb2xzL1Rlc3RXZWJLaXRB
UEkvVGVzdFdlYktpdEFQSS5neXBpCkBAIC0zMSw3ICszMSw2IEBACiB7CiAgICAgJ3ZhcmlhYmxl
cyc6IHsKICAgICAgICAgJ1Rlc3RXZWJLaXRBUElfZmlsZXMnOiBbCi0gICAgICAgICAgICAnVGVz
dHMvV2ViQ29yZS9IZWFwR3JhcGhTZXJpYWxpemVyVGVzdC5jcHAnLAogICAgICAgICAgICAgJ1Rl
c3RzL1dlYkNvcmUvTGF5b3V0VW5pdC5jcHAnLAogICAgICAgICAgICAgJ1Rlc3RzL1dURi9BdG9t
aWNTdHJpbmcuY3BwJywKICAgICAgICAgICAgICdUZXN0cy9XVEYvQ2hlY2tlZEFyaXRobWV0aWNP
cGVyYXRpb25zLmNwcCcsCmRpZmYgLS1naXQgYS9Ub29scy9UZXN0V2ViS2l0QVBJL1Rlc3RzL1dl
YkNvcmUvSGVhcEdyYXBoU2VyaWFsaXplclRlc3QuY3BwIGIvVG9vbHMvVGVzdFdlYktpdEFQSS9U
ZXN0cy9XZWJDb3JlL0hlYXBHcmFwaFNlcmlhbGl6ZXJUZXN0LmNwcApkZWxldGVkIGZpbGUgbW9k
ZSAxMDA2NDQKaW5kZXggNjIzNzE4MWZiODZhNmE0MjdlOTFkNDJmN2QxOTQxMTZhYmRiOGVhZi4u
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMAotLS0gYS9Ub29scy9UZXN0
V2ViS2l0QVBJL1Rlc3RzL1dlYkNvcmUvSGVhcEdyYXBoU2VyaWFsaXplclRlc3QuY3BwCisrKyAv
ZGV2L251bGwKQEAgLTEsMjg0ICswLDAgQEAKLS8qCi0gKiBDb3B5cmlnaHQgKEMpIDIwMTMgR29v
Z2xlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KLSAqCi0gKiBSZWRpc3RyaWJ1dGlvbiBhbmQg
dXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKLSAqIG1vZGlm
aWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0
aW9ucyBhcmUKLSAqIG1ldDoKLSAqCi0gKiAgICAgKiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNl
IGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAotICogbm90aWNlLCB0aGlzIGxp
c3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgotICogICAgICog
UmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZQot
ICogY29weXJpZ2h0IG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xs
b3dpbmcgZGlzY2xhaW1lcgotICogaW4gdGhlIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1h
dGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZQotICogZGlzdHJpYnV0aW9uLgotICogICAgICogTmVp
dGhlciB0aGUgbmFtZSBvZiBHb29nbGUgSW5jLiBub3IgdGhlIG5hbWVzIG9mIGl0cwotICogY29u
dHJpYnV0b3JzIG1heSBiZSB1c2VkIHRvIGVuZG9yc2Ugb3IgcHJvbW90ZSBwcm9kdWN0cyBkZXJp
dmVkIGZyb20KLSAqIHRoaXMgc29mdHdhcmUgd2l0aG91dCBzcGVjaWZpYyBwcmlvciB3cml0dGVu
IHBlcm1pc3Npb24uCi0gKgotICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBUSEUgQ09Q
WVJJR0hUIEhPTERFUlMgQU5EIENPTlRSSUJVVE9SUwotICogIkFTIElTIiBBTkQgQU5ZIEVYUFJF
U1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QKLSAqIExJTUlURUQg
VE8sIFRIRSBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNT
IEZPUgotICogQSBQQVJUSUNVTEFSIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuIElOIE5PIEVWRU5U
IFNIQUxMIFRIRSBDT1BZUklHSFQKLSAqIE9XTkVSIE9SIENPTlRSSUJVVE9SUyBCRSBMSUFCTEUg
Rk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLAotICogU1BFQ0lBTCwgRVhFTVBM
QVJZLCBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVAotICogTElN
SVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9T
UyBPRiBVU0UsCi0gKiBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04p
IEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkKLSAqIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRI
RVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQKLSAqIChJTkNMVURJTkcg
TkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVT
RQotICogT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElU
WSBPRiBTVUNIIERBTUFHRS4KLSAqLwotCi0jaW5jbHVkZSAiY29uZmlnLmgiCi0jaW5jbHVkZSAi
V1RGU3RyaW5nVXRpbGl0aWVzLmgiCi0jaW5jbHVkZSA8Z3Rlc3QvZ3Rlc3QuaD4KLQotI2luY2x1
ZGUgIkhlYXBHcmFwaFNlcmlhbGl6ZXIuaCIKLSNpbmNsdWRlICJNZW1vcnlJbnN0cnVtZW50YXRp
b25JbXBsLmgiCi0jaW5jbHVkZSA8d3RmL01lbW9yeUluc3RydW1lbnRhdGlvbi5oPgotI2luY2x1
ZGUgPHd0Zi9NZW1vcnlJbnN0cnVtZW50YXRpb25IYXNoU2V0Lmg+Ci0jaW5jbHVkZSA8d3RmL01l
bW9yeUluc3RydW1lbnRhdGlvblN0cmluZy5oPgotI2luY2x1ZGUgPHd0Zi9NZW1vcnlPYmplY3RJ
bmZvLmg+Ci0KLW5hbWVzcGFjZSBUZXN0V2ViS2l0QVBJIHsKLQotdXNpbmcgbmFtZXNwYWNlIFdl
YkNvcmU7Ci0KLXN0YXRpYyBXVEY6Ok1lbW9yeU9iamVjdFR5cGUgZ19kZWZhdWx0T2JqZWN0VHlw
ZSA9ICJEZWZhdWx0T2JqZWN0VHlwZSI7Ci0KLWNsYXNzIEhlYXBHcmFwaFJlY2VpdmVyIDogcHVi
bGljIEhlYXBHcmFwaFNlcmlhbGl6ZXI6OkNsaWVudCB7Ci1wdWJsaWM6Ci0gICAgSGVhcEdyYXBo
UmVjZWl2ZXIoKSA6IG1fc2VyaWFsaXplcih0aGlzKSB7IH0KLQotICAgIHZpcnR1YWwgdm9pZCBh
ZGROYXRpdmVTbmFwc2hvdENodW5rKFBhc3NSZWZQdHI8VHlwZUJ1aWxkZXI6Ok1lbW9yeTo6SGVh
cFNuYXBzaG90Q2h1bms+IGhlYXBTbmFwc2hvdENodW5rKSBPVkVSUklERQotICAgIHsKLSAgICAg
ICAgQVNTRVJUKCFtX2hlYXBTbmFwc2hvdENodW5rKTsKLSAgICAgICAgbV9oZWFwU25hcHNob3RD
aHVuayA9IGhlYXBTbmFwc2hvdENodW5rOwotICAgICAgICBtX3N0cmluZ3MgPSBjaHVua1BhcnQo
InN0cmluZ3MiKTsKLSAgICAgICAgbV9lZGdlcyA9IGNodW5rUGFydCgiZWRnZXMiKTsKLSAgICAg
ICAgbV9ub2RlcyA9IGNodW5rUGFydCgibm9kZXMiKTsKLQotICAgICAgICAvLyBSZXNldCBwbGF0
Zm9ybSBkZXBlbmRlZCBzaXplIGZpZWxkIHZhbHVlcy4KLSAgICAgICAgZm9yIChJbnNwZWN0b3JB
cnJheTo6aXRlcmF0b3IgaSA9IG1fbm9kZXMtPmJlZ2luKCk7IGkgIT0gbV9ub2Rlcy0+ZW5kKCk7
IGkgKz0gc19ub2RlRmllbGRDb3VudCkKLSAgICAgICAgICAgICooaSArIHNfc2l6ZU9mZnNldCkg
PSBJbnNwZWN0b3JCYXNpY1ZhbHVlOjpjcmVhdGUoMCk7Ci0KLSAgICAgICAgbV9pZDJpbmRleC5j
bGVhcigpOwotCi0gICAgICAgIGZvciAodW5zaWduZWQgaW5kZXggPSAwOyBpbmRleCA8IG1fbm9k
ZXMtPmxlbmd0aCgpOyBpbmRleCArPSBzX25vZGVGaWVsZENvdW50KQotICAgICAgICAgICAgbV9p
ZDJpbmRleC5hZGQoaW50VmFsdWUobV9ub2Rlcy5nZXQoKSwgaW5kZXggKyBzX2lkT2Zmc2V0KSwg
aW5kZXgpOwotICAgIH0KLQotICAgIHZvaWQgcHJpbnRHcmFwaCgpCi0gICAgewotICAgICAgICBF
WFBFQ1RfVFJVRShtX2hlYXBTbmFwc2hvdENodW5rKTsKLSAgICAgICAgaW50IHByb2Nlc3NlZEVk
Z2VzQ291bnQgPSAwOwotICAgICAgICBmb3IgKHVuc2lnbmVkIGluZGV4ID0gMDsgaW5kZXggPCBt
X25vZGVzLT5sZW5ndGgoKTsgaW5kZXggKz0gc19ub2RlRmllbGRDb3VudCkKLSAgICAgICAgICAg
IHByb2Nlc3NlZEVkZ2VzQ291bnQgKz0gcHJpbnROb2RlKGluZGV4LCBwcm9jZXNzZWRFZGdlc0Nv
dW50KTsKLSAgICB9Ci0KLSAgICBTdHJpbmcgZHVtcE5vZGVzKCkgeyByZXR1cm4gZHVtcFBhcnQo
Im5vZGVzIik7IH0KLSAgICBTdHJpbmcgZHVtcEVkZ2VzKCkgeyByZXR1cm4gZHVtcFBhcnQoImVk
Z2VzIik7IH0KLSAgICBTdHJpbmcgZHVtcEJhc2VUb1JlYWxOb2RlSWQoKSB7IHJldHVybiBkdW1w
UGFydCgiYmFzZVRvUmVhbE5vZGVJZCIpOyB9Ci0gICAgU3RyaW5nIGR1bXBTdHJpbmdzKCkgeyBy
ZXR1cm4gZHVtcFBhcnQoInN0cmluZ3MiKTsgfQotCi0gICAgSGVhcEdyYXBoU2VyaWFsaXplciog
c2VyaWFsaXplcigpIHsgcmV0dXJuICZtX3NlcmlhbGl6ZXI7IH0KLQotcHJpdmF0ZToKLSAgICBQ
YXNzUmVmUHRyPEluc3BlY3RvckFycmF5PiBjaHVua1BhcnQoU3RyaW5nIHBhcnROYW1lKQotICAg
IHsKLSAgICAgICAgRVhQRUNUX1RSVUUobV9oZWFwU25hcHNob3RDaHVuayk7Ci0gICAgICAgIFJl
ZlB0cjxJbnNwZWN0b3JPYmplY3Q+IGNodW5rID0gKnJlaW50ZXJwcmV0X2Nhc3Q8UmVmUHRyPElu
c3BlY3Rvck9iamVjdD4qPigmbV9oZWFwU25hcHNob3RDaHVuayk7Ci0gICAgICAgIFJlZlB0cjxJ
bnNwZWN0b3JWYWx1ZT4gcGFydFZhbHVlID0gY2h1bmstPmdldChwYXJ0TmFtZSk7Ci0gICAgICAg
IFJlZlB0cjxJbnNwZWN0b3JBcnJheT4gcGFydEFycmF5OwotICAgICAgICBFWFBFQ1RfVFJVRShw
YXJ0VmFsdWUtPmFzQXJyYXkoJnBhcnRBcnJheSkpOwotICAgICAgICByZXR1cm4gcGFydEFycmF5
LnJlbGVhc2UoKTsKLSAgICB9Ci0KLSAgICBTdHJpbmcgZHVtcFBhcnQoU3RyaW5nIHBhcnROYW1l
KQotICAgIHsKLSAgICAgICAgcmV0dXJuIGNodW5rUGFydChwYXJ0TmFtZSktPnRvSlNPTlN0cmlu
ZygpLnJlcGxhY2UoIlwiIiwgIiciKTsKLSAgICB9Ci0KLSAgICBTdHJpbmcgc3RyaW5nVmFsdWUo
SW5zcGVjdG9yQXJyYXkqIGFycmF5LCBpbnQgaW5kZXgpCi0gICAgewotICAgICAgICBSZWZQdHI8
SW5zcGVjdG9yVmFsdWU+IGluc3BlY3RvclZhbHVlID0gYXJyYXktPmdldChpbmRleCk7Ci0gICAg
ICAgIFN0cmluZyB2YWx1ZTsKLSAgICAgICAgRVhQRUNUX1RSVUUoaW5zcGVjdG9yVmFsdWUtPmFz
U3RyaW5nKCZ2YWx1ZSkpOwotICAgICAgICByZXR1cm4gdmFsdWU7Ci0gICAgfQotCi0gICAgaW50
IGludFZhbHVlKEluc3BlY3RvckFycmF5KiBhcnJheSwgaW50IGluZGV4KQotICAgIHsKLSAgICAg
ICAgUmVmUHRyPEluc3BlY3RvclZhbHVlPiBpbnNwZWN0b3JWYWx1ZSA9IGFycmF5LT5nZXQoaW5k
ZXgpOwotICAgICAgICBpbnQgdmFsdWU7Ci0gICAgICAgIEVYUEVDVF9UUlVFKGluc3BlY3RvclZh
bHVlLT5hc051bWJlcigmdmFsdWUpKTsKLSAgICAgICAgcmV0dXJuIHZhbHVlOwotICAgIH0KLQot
ICAgIFN0cmluZyBub2RlVG9TdHJpbmcodW5zaWduZWQgbm9kZUluZGV4KQotICAgIHsKLSAgICAg
ICAgU3RyaW5nQnVpbGRlciBidWlsZGVyOwotICAgICAgICBidWlsZGVyLmFwcGVuZCgibm9kZTog
Iik7Ci0gICAgICAgIGJ1aWxkZXIuYXBwZW5kTnVtYmVyKGludFZhbHVlKG1fbm9kZXMuZ2V0KCks
IG5vZGVJbmRleCArIHNfaWRPZmZzZXQpKTsKLSAgICAgICAgYnVpbGRlci5hcHBlbmQoIiB3aXRo
IGNsYXNzTmFtZTonIik7Ci0gICAgICAgIGJ1aWxkZXIuYXBwZW5kKHN0cmluZ1ZhbHVlKG1fc3Ry
aW5ncy5nZXQoKSwgaW50VmFsdWUobV9ub2Rlcy5nZXQoKSwgbm9kZUluZGV4ICsgc19jbGFzc05h
bWVPZmZzZXQpKSk7Ci0gICAgICAgIGJ1aWxkZXIuYXBwZW5kKCInIGFuZCBuYW1lOiAnIik7Ci0g
ICAgICAgIGJ1aWxkZXIuYXBwZW5kKHN0cmluZ1ZhbHVlKG1fc3RyaW5ncy5nZXQoKSwgaW50VmFs
dWUobV9ub2Rlcy5nZXQoKSwgbm9kZUluZGV4ICsgc19uYW1lT2Zmc2V0KSkpOwotICAgICAgICBi
dWlsZGVyLmFwcGVuZCgiJyIpOwotICAgICAgICByZXR1cm4gYnVpbGRlci50b1N0cmluZygpOwot
ICAgIH0KLQotICAgIFN0cmluZyBlZGdlVG9TdHJpbmcodW5zaWduZWQgZWRnZU9yZGluYWwpCi0g
ICAgewotICAgICAgICB1bnNpZ25lZCBlZGdlSW5kZXggPSBlZGdlT3JkaW5hbCAqIHNfZWRnZUZp
ZWxkQ291bnQ7Ci0gICAgICAgIFN0cmluZ0J1aWxkZXIgYnVpbGRlcjsKLSAgICAgICAgYnVpbGRl
ci5hcHBlbmQoIiciKTsKLSAgICAgICAgYnVpbGRlci5hcHBlbmQoc3RyaW5nVmFsdWUobV9zdHJp
bmdzLmdldCgpLCBpbnRWYWx1ZShtX2VkZ2VzLmdldCgpLCBlZGdlSW5kZXggKyBzX2VkZ2VUeXBl
T2Zmc2V0KSkpOwotICAgICAgICBidWlsZGVyLmFwcGVuZCgiJyBlZGdlICciKTsKLSAgICAgICAg
YnVpbGRlci5hcHBlbmQoc3RyaW5nVmFsdWUobV9zdHJpbmdzLmdldCgpLCBpbnRWYWx1ZShtX2Vk
Z2VzLmdldCgpLCBlZGdlSW5kZXggKyBzX2VkZ2VOYW1lT2Zmc2V0KSkpOwotICAgICAgICBidWls
ZGVyLmFwcGVuZCgiJyBwb2ludHMgdG8gIik7Ci0gICAgICAgIGludCBub2RlSWQgPSBpbnRWYWx1
ZShtX2VkZ2VzLmdldCgpLCBlZGdlSW5kZXggKyBzX3RvTm9kZUlkT2Zmc2V0KTsKLSAgICAgICAg
YnVpbGRlci5hcHBlbmQobm9kZVRvU3RyaW5nKG1faWQyaW5kZXguZ2V0KG5vZGVJZCkpKTsKLSAg
ICAgICAgcmV0dXJuIGJ1aWxkZXIudG9TdHJpbmcoKTsKLSAgICB9Ci0KLSAgICBpbnQgcHJpbnRO
b2RlKHVuc2lnbmVkIG5vZGVJbmRleCwgdW5zaWduZWQgcHJvY2Vzc2VkRWRnZXNDb3VudCkKLSAg
ICB7Ci0gICAgICAgIFN0cmluZyBub2RlU3RyaW5nID0gbm9kZVRvU3RyaW5nKG5vZGVJbmRleCk7
Ci0gICAgICAgIHVuc2lnbmVkIGVkZ2VDb3VudCA9IGludFZhbHVlKG1fbm9kZXMuZ2V0KCksIG5v
ZGVJbmRleCArIHNfZWRnZUNvdW50T2Zmc2V0KTsKLQotICAgICAgICBwcmludGYoIiVzXG4iLCBu
b2RlU3RyaW5nLnV0ZjgoKS5kYXRhKCkpOwotICAgICAgICBmb3IgKHVuc2lnbmVkIGkgPSAwOyBp
IDwgZWRnZUNvdW50OyArK2kpIHsKLSAgICAgICAgICAgIFN0cmluZyBlZGdlVGV4dCA9IGVkZ2VU
b1N0cmluZyhpICsgcHJvY2Vzc2VkRWRnZXNDb3VudCk7Ci0gICAgICAgICAgICBwcmludGYoIlx0
aGFzICVzXG4iLCBlZGdlVGV4dC51dGY4KCkuZGF0YSgpKTsKLSAgICAgICAgfQotICAgICAgICBy
ZXR1cm4gZWRnZUNvdW50OwotICAgIH0KLQotICAgIEhlYXBHcmFwaFNlcmlhbGl6ZXIgbV9zZXJp
YWxpemVyOwotICAgIFJlZlB0cjxUeXBlQnVpbGRlcjo6TWVtb3J5OjpIZWFwU25hcHNob3RDaHVu
az4gbV9oZWFwU25hcHNob3RDaHVuazsKLQotICAgIFJlZlB0cjxJbnNwZWN0b3JBcnJheT4gbV9z
dHJpbmdzOwotICAgIFJlZlB0cjxJbnNwZWN0b3JBcnJheT4gbV9ub2RlczsKLSAgICBSZWZQdHI8
SW5zcGVjdG9yQXJyYXk+IG1fZWRnZXM7Ci0gICAgSGFzaE1hcDxpbnQsIGludD4gbV9pZDJpbmRl
eDsKLQotICAgIHN0YXRpYyBjb25zdCBpbnQgc19ub2RlRmllbGRDb3VudCA9IDU7Ci0gICAgc3Rh
dGljIGNvbnN0IGludCBzX2NsYXNzTmFtZU9mZnNldCA9IDA7Ci0gICAgc3RhdGljIGNvbnN0IGlu
dCBzX25hbWVPZmZzZXQgPSAxOwotICAgIHN0YXRpYyBjb25zdCBpbnQgc19pZE9mZnNldCA9IDI7
Ci0gICAgc3RhdGljIGNvbnN0IGludCBzX3NpemVPZmZzZXQgPSAzOwotICAgIHN0YXRpYyBjb25z
dCBpbnQgc19lZGdlQ291bnRPZmZzZXQgPSA0OwotCi0gICAgc3RhdGljIGNvbnN0IGludCBzX2Vk
Z2VGaWVsZENvdW50ID0gMzsKLSAgICBzdGF0aWMgY29uc3QgaW50IHNfZWRnZVR5cGVPZmZzZXQg
PSAwOwotICAgIHN0YXRpYyBjb25zdCBpbnQgc19lZGdlTmFtZU9mZnNldCA9IDE7Ci0gICAgc3Rh
dGljIGNvbnN0IGludCBzX3RvTm9kZUlkT2Zmc2V0ID0gMjsKLX07Ci0KLWNsYXNzIEhlbHBlciB7
Ci1wdWJsaWM6Ci0gICAgSGVscGVyKEhlYXBHcmFwaFNlcmlhbGl6ZXIqIHNlcmlhbGl6ZXIpIDog
bV9zZXJpYWxpemVyKHNlcmlhbGl6ZXIpLCBtX2N1cnJlbnRQb2ludGVyKDApIHsgfQotICAgIHZv
aWQqIGFkZE5vZGUoY29uc3QgY2hhciogY2xhc3NOYW1lLCBjb25zdCBjaGFyKiBuYW1lLCBib29s
IGlzUm9vdCkKLSAgICB7Ci0gICAgICAgIFdURjo6TWVtb3J5T2JqZWN0SW5mbyBpbmZvKDAsIGdf
ZGVmYXVsdE9iamVjdFR5cGUsICsrbV9jdXJyZW50UG9pbnRlcik7Ci0gICAgICAgIGluZm8uc2V0
Q2xhc3NOYW1lKGNsYXNzTmFtZSk7Ci0gICAgICAgIGluZm8uc2V0TmFtZShuYW1lKTsKLSAgICAg
ICAgaWYgKGlzUm9vdCkKLSAgICAgICAgICAgIGluZm8ubWFya0FzUm9vdCgpOwotICAgICAgICBt
X3NlcmlhbGl6ZXItPnJlcG9ydE5vZGUoaW5mbyk7Ci0gICAgICAgIHJldHVybiBtX2N1cnJlbnRQ
b2ludGVyOwotICAgIH0KLQotICAgIHZvaWQgYWRkRWRnZSh2b2lkKiB0bywgY29uc3QgY2hhciog
ZWRnZU5hbWUsIFdURjo6TWVtYmVyVHlwZSBtZW1iZXJUeXBlKQotICAgIHsKLSAgICAgICAgbV9z
ZXJpYWxpemVyLT5yZXBvcnRFZGdlKHRvLCBlZGdlTmFtZSwgbWVtYmVyVHlwZSk7Ci0gICAgfQot
Ci0gICAgdm9pZCBkb25lKCkKLSAgICB7Ci0gICAgICAgIG1fc2VyaWFsaXplci0+ZmluaXNoKCk7
Ci0gICAgfQotCi1wcml2YXRlOgotICAgIEhlYXBHcmFwaFNlcmlhbGl6ZXIqIG1fc2VyaWFsaXpl
cjsKLQotICAgIGNsYXNzIE9iamVjdCB7Ci0gICAgcHVibGljOgotICAgICAgICBPYmplY3QoKSB7
IG1fZGF0YVswXSA9IDA7IH0KLSAgICAgICAgY2hhciBtX2RhdGFbc2l6ZW9mKHZvaWQqKV07Ci0g
ICAgfTsKLSAgICBPYmplY3QqIG1fY3VycmVudFBvaW50ZXI7Ci19OwotCi1URVNUKEhlYXBHcmFw
aFNlcmlhbGl6ZXJUZXN0LCBzbmFwc2hvdFdpdGhvdXRVc2VyT2JqZWN0cykKLXsKLSAgICBIZWFw
R3JhcGhSZWNlaXZlciByZWNlaXZlcjsKLSAgICBIZWxwZXIgaGVscGVyKHJlY2VpdmVyLnNlcmlh
bGl6ZXIoKSk7Ci0gICAgaGVscGVyLmRvbmUoKTsKLSAgICByZWNlaXZlci5wcmludEdyYXBoKCk7
Ci0gICAgRVhQRUNUX0VRKFN0cmluZygiWycnLCd3ZWFrJywnb3duUmVmJywnY291bnRSZWYnLCd1
bmtub3duJywnUm9vdCddIiksIHJlY2VpdmVyLmR1bXBTdHJpbmdzKCkpOwotICAgIEVYUEVDVF9F
UShTdHJpbmcoIls1LDAsMSwwLDBdIiksIHJlY2VpdmVyLmR1bXBOb2RlcygpKTsgLy8gT25seSBS
b290IG9iamVjdC4KLSAgICBFWFBFQ1RfRVEoU3RyaW5nKCJbXSIpLCByZWNlaXZlci5kdW1wRWRn
ZXMoKSk7IC8vIE5vIGVkZ2VzLgotICAgIEVYUEVDVF9FUShTdHJpbmcoIltdIiksIHJlY2VpdmVy
LmR1bXBCYXNlVG9SZWFsTm9kZUlkKCkpOyAvLyBObyBpZCBtYXBzLgotfQotCi1URVNUKEhlYXBH
cmFwaFNlcmlhbGl6ZXJUZXN0LCBvbmVSb290VXNlck9iamVjdCkKLXsKLSAgICBIZWFwR3JhcGhS
ZWNlaXZlciByZWNlaXZlcjsKLSAgICBIZWxwZXIgaGVscGVyKHJlY2VpdmVyLnNlcmlhbGl6ZXIo
KSk7Ci0gICAgaGVscGVyLmFkZE5vZGUoIkNsYXNzTmFtZSIsICJvYmplY3ROYW1lIiwgdHJ1ZSk7
Ci0gICAgaGVscGVyLmRvbmUoKTsKLSAgICByZWNlaXZlci5wcmludEdyYXBoKCk7Ci0gICAgRVhQ
RUNUX0VRKFN0cmluZygiWycnLCd3ZWFrJywnb3duUmVmJywnY291bnRSZWYnLCd1bmtub3duJywn
Q2xhc3NOYW1lJywnb2JqZWN0TmFtZScsJ1Jvb3QnXSIpLCByZWNlaXZlci5kdW1wU3RyaW5ncygp
KTsKLSAgICBFWFBFQ1RfRVEoU3RyaW5nKCJbNSw2LDEsMCwwLDcsMCwyLDAsMV0iKSwgcmVjZWl2
ZXIuZHVtcE5vZGVzKCkpOwotICAgIEVYUEVDVF9FUShTdHJpbmcoIlsxLDAsMV0iKSwgcmVjZWl2
ZXIuZHVtcEVkZ2VzKCkpOwotICAgIEVYUEVDVF9FUShTdHJpbmcoIltdIiksIHJlY2VpdmVyLmR1
bXBCYXNlVG9SZWFsTm9kZUlkKCkpOwotfQotCi1URVNUKEhlYXBHcmFwaFNlcmlhbGl6ZXJUZXN0
LCB0d29Vc2VyT2JqZWN0c1dpdGhFZGdlKQotewotICAgIEhlYXBHcmFwaFJlY2VpdmVyIHJlY2Vp
dmVyOwotICAgIEhlbHBlciBoZWxwZXIocmVjZWl2ZXIuc2VyaWFsaXplcigpKTsKLSAgICB2b2lk
KiBjaGlsZE9iamVjdCA9IGhlbHBlci5hZGROb2RlKCJDaGlsZCIsICJjaGlsZCIsIGZhbHNlKTsK
LSAgICBoZWxwZXIuYWRkRWRnZShjaGlsZE9iamVjdCwgInBvaW50ZXJUb0NoaWxkIiwgV1RGOjpP
d25QdHJNZW1iZXIpOwotICAgIGhlbHBlci5hZGROb2RlKCJQYXJlbnQiLCAicGFyZW50IiwgdHJ1
ZSk7Ci0gICAgaGVscGVyLmRvbmUoKTsKLSAgICByZWNlaXZlci5wcmludEdyYXBoKCk7Ci0gICAg
RVhQRUNUX0VRKFN0cmluZygiWycnLCd3ZWFrJywnb3duUmVmJywnY291bnRSZWYnLCd1bmtub3du
JywnQ2hpbGQnLCdjaGlsZCcsJ3BvaW50ZXJUb0NoaWxkJywnUGFyZW50JywncGFyZW50JywnUm9v
dCddIiksIHJlY2VpdmVyLmR1bXBTdHJpbmdzKCkpOwotICAgIEVYUEVDVF9FUShTdHJpbmcoIls1
LDYsMSwwLDAsOCw5LDIsMCwxLDEwLDAsMywwLDFdIiksIHJlY2VpdmVyLmR1bXBOb2RlcygpKTsK
LSAgICBFWFBFQ1RfRVEoU3RyaW5nKCJbMiw3LDEsMSwwLDJdIiksIHJlY2VpdmVyLmR1bXBFZGdl
cygpKTsKLSAgICBFWFBFQ1RfRVEoU3RyaW5nKCJbXSIpLCByZWNlaXZlci5kdW1wQmFzZVRvUmVh
bE5vZGVJZCgpKTsKLX0KLQotY2xhc3MgT3duZXIgewotcHVibGljOgotICAgIE93bmVyKCkKLSAg
ICB7Ci0gICAgICAgIG1fc3RyaW5ncy5hZGQoImZpcnN0IGVsZW1lbnQiKTsKLSAgICAgICAgbV9z
dHJpbmdzLmFkZCgic2Vjb25kIGVsZW1lbnQiKTsKLSAgICB9Ci0gICAgdm9pZCByZXBvcnRNZW1v
cnlVc2FnZShXVEY6Ok1lbW9yeU9iamVjdEluZm8qIG1lbW9yeU9iamVjdEluZm8pIGNvbnN0Ci0g
ICAgewotICAgICAgICBXVEY6Ok1lbW9yeUNsYXNzSW5mbyBpbmZvKG1lbW9yeU9iamVjdEluZm8s
IHRoaXMsIGdfZGVmYXVsdE9iamVjdFR5cGUpOwotICAgICAgICBpbmZvLmFkZE1lbWJlcihtX3N0
cmluZ3MsICJzdHJpbmdzIik7Ci0gICAgfQotcHJpdmF0ZToKLSAgICBIYXNoU2V0PFN0cmluZz4g
bV9zdHJpbmdzOwotfTsKLQotVEVTVChIZWFwR3JhcGhTZXJpYWxpemVyVGVzdCwgaGFzaFNldFdp
dGhUd29TdHJpbmdzKQotewotICAgIEhlYXBHcmFwaFJlY2VpdmVyIHJlY2VpdmVyOwotICAgIE1l
bW9yeUluc3RydW1lbnRhdGlvbkNsaWVudEltcGwgbWVtb3J5SW5zdHJ1bWVudGF0aW9uQ2xpZW50
KHJlY2VpdmVyLnNlcmlhbGl6ZXIoKSk7Ci0gICAgTWVtb3J5SW5zdHJ1bWVudGF0aW9uSW1wbCBt
ZW1vcnlJbnN0cnVtZW50YXRpb24oJm1lbW9yeUluc3RydW1lbnRhdGlvbkNsaWVudCk7Ci0KLSAg
ICBPd25lciBvd25lcjsKLSAgICBtZW1vcnlJbnN0cnVtZW50YXRpb24uYWRkUm9vdE9iamVjdCgm
b3duZXIpOwotICAgIHJlY2VpdmVyLnNlcmlhbGl6ZXIoKS0+ZmluaXNoKCk7Ci0gICAgcmVjZWl2
ZXIucHJpbnRHcmFwaCgpOwotICAgIEVYUEVDVF9FUShTdHJpbmcoIls1LDAsMSwwLDAsOCwwLDQs
MCwzLDksMCwzLDAsMCw5LDAsMiwwLDAsMTAsMCw1LDAsMV0iKSwgcmVjZWl2ZXIuZHVtcE5vZGVz
KCkpOwotICAgIEVYUEVDVF9FUShTdHJpbmcoIlsyLDYsMSwxLDcsMiwxLDcsMywxLDAsNF0iKSwg
cmVjZWl2ZXIuZHVtcEVkZ2VzKCkpOwotICAgIEVYUEVDVF9FUShTdHJpbmcoIltdIiksIHJlY2Vp
dmVyLmR1bXBCYXNlVG9SZWFsTm9kZUlkKCkpOwotfQotCi19IC8vIG5hbWVzcGFjZQo=
</data>

          </attachment>
      

    </bug>

</bugzilla>