<?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>128184</bug_id>
          
          <creation_ts>2014-02-04 07:45:19 -0800</creation_ts>
          <short_desc>REGRESSION(r163376): Unexpected test failures. (Requested by eric_carlson on #webkit).</short_desc>
          <delta_ts>2014-02-04 07:47:33 -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>128125</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="WebKit Commit Bot">commit-queue</reporter>
          <assigned_to name="WebKit Commit Bot">commit-queue</assigned_to>
          <cc>eric.carlson</cc>
    
    <cc>jer.noble</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>976344</commentid>
    <comment_count>0</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2014-02-04 07:45:19 -0800</bug_when>
    <thetext>http://trac.webkit.org/changeset/163376 broke the build:
Unexpected test failures. (Requested by eric_carlson on #webkit).

This is an automatic bug report generated by webkitbot. 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 fail.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>976346</commentid>
    <comment_count>1</comment_count>
      <attachid>223117</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2014-02-04 07:45:44 -0800</bug_when>
    <thetext>Created attachment 223117
ROLLOUT of r163376

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>976349</commentid>
    <comment_count>2</comment_count>
      <attachid>223117</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2014-02-04 07:47:31 -0800</bug_when>
    <thetext>Comment on attachment 223117
ROLLOUT of r163376

Clearing flags on attachment: 223117

Committed r163377: &lt;http://trac.webkit.org/changeset/163377&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>976350</commentid>
    <comment_count>3</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2014-02-04 07:47:33 -0800</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>223117</attachid>
            <date>2014-02-04 07:45:44 -0800</date>
            <delta_ts>2014-02-04 07:47:31 -0800</delta_ts>
            <desc>ROLLOUT of r163376</desc>
            <filename>bug-128184-20140204074543.patch</filename>
            <type>text/plain</type>
            <size>44969</size>
            <attacher name="WebKit Commit Bot">commit-queue</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTYzMzc2CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggNTU2MTVmYmRjYTAyZjQ1
MThkNGMxYWFkZTNiYTc0YjZmNmI5MjhkZS4uNjAzNzA5NzhmNzViYjgwOThjNjYwMmZiMWJhNzFm
NjhlMDYwNDQzNyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDQ3IEBACisyMDE0LTAyLTA0ICBDb21t
aXQgUXVldWUgIDxjb21taXQtcXVldWVAd2Via2l0Lm9yZz4KKworICAgICAgICBVbnJldmlld2Vk
LCByb2xsaW5nIG91dCByMTYzMzc2LgorICAgICAgICBodHRwOi8vdHJhYy53ZWJraXQub3JnL2No
YW5nZXNldC8xNjMzNzYKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcu
Y2dpP2lkPTEyODE4NAorCisgICAgICAgIFVuZXhwZWN0ZWQgdGVzdCBmYWlsdXJlcy4gKFJlcXVl
c3RlZCBieSBlcmljX2Nhcmxzb24gb24KKyAgICAgICAgI3dlYmtpdCkuCisKKyAgICAgICAgKiBX
ZWJDb3JlLmV4cC5pbjoKKyAgICAgICAgKiBodG1sL0hUTUxNZWRpYUVsZW1lbnQuY3BwOgorICAg
ICAgICAoV2ViQ29yZTo6SFRNTE1lZGlhRWxlbWVudDo6cGFyc2VBdHRyaWJ1dGUpOgorICAgICAg
ICAqIGh0bWwvSFRNTE1lZGlhRWxlbWVudC5oOgorICAgICAgICAqIGh0bWwvSFRNTE1lZGlhU2Vz
c2lvbi5jcHA6CisgICAgICAgIChXZWJDb3JlOjpIVE1MTWVkaWFTZXNzaW9uOjphZGRCZWhhdmlv
clJlc3RyaWN0aW9uKToKKyAgICAgICAgKFdlYkNvcmU6OkhUTUxNZWRpYVNlc3Npb246OnJlbW92
ZUJlaGF2aW9yUmVzdHJpY3Rpb24pOgorICAgICAgICAoV2ViQ29yZTo6SFRNTE1lZGlhU2Vzc2lv
bjo6Y2xpZW50V2lsbEJlZ2luUGxheWJhY2spOgorICAgICAgICAqIGh0bWwvSFRNTE1lZGlhU2Vz
c2lvbi5oOgorICAgICAgICAqIHBsYXRmb3JtL2F1ZGlvL01lZGlhU2Vzc2lvbi5jcHA6CisgICAg
ICAgIChXZWJDb3JlOjpNZWRpYVNlc3Npb246Ok1lZGlhU2Vzc2lvbik6CisgICAgICAgIChXZWJD
b3JlOjpNZWRpYVNlc3Npb246OmJlZ2luSW50ZXJydXB0aW9uKToKKyAgICAgICAgKFdlYkNvcmU6
Ok1lZGlhU2Vzc2lvbjo6ZW5kSW50ZXJydXB0aW9uKToKKyAgICAgICAgKiBwbGF0Zm9ybS9hdWRp
by9NZWRpYVNlc3Npb24uaDoKKyAgICAgICAgKFdlYkNvcmU6Ok1lZGlhU2Vzc2lvbjo6bWVkaWFU
eXBlKToKKyAgICAgICAgKFdlYkNvcmU6Ok1lZGlhU2Vzc2lvbjo6c2V0U3RhdGUpOgorICAgICAg
ICAoV2ViQ29yZTo6TWVkaWFTZXNzaW9uQ2xpZW50OjpiZWdpbkludGVycnVwdGlvbik6CisgICAg
ICAgIChXZWJDb3JlOjpNZWRpYVNlc3Npb25DbGllbnQ6OmVuZEludGVycnVwdGlvbik6CisgICAg
ICAgICogcGxhdGZvcm0vYXVkaW8vTWVkaWFTZXNzaW9uTWFuYWdlci5jcHA6CisgICAgICAgIChX
ZWJDb3JlOjpNZWRpYVNlc3Npb25NYW5hZ2VyOjpNZWRpYVNlc3Npb25NYW5hZ2VyKToKKyAgICAg
ICAgKFdlYkNvcmU6Ok1lZGlhU2Vzc2lvbk1hbmFnZXI6OmJlZ2luSW50ZXJydXB0aW9uKToKKyAg
ICAgICAgKFdlYkNvcmU6Ok1lZGlhU2Vzc2lvbk1hbmFnZXI6OmVuZEludGVycnVwdGlvbik6Cisg
ICAgICAgIChXZWJDb3JlOjpNZWRpYVNlc3Npb25NYW5hZ2VyOjphZGRTZXNzaW9uKToKKyAgICAg
ICAgKiBwbGF0Zm9ybS9hdWRpby9NZWRpYVNlc3Npb25NYW5hZ2VyLmg6CisgICAgICAgICogcGxh
dGZvcm0vYXVkaW8vaW9zL01lZGlhU2Vzc2lvbk1hbmFnZXJJT1MuaDoKKyAgICAgICAgKFdlYkNv
cmU6Ok1lZGlhU2Vzc2lvbk1hbmFnZXJpT1M6On5NZWRpYVNlc3Npb25NYW5hZ2VyaU9TKToKKyAg
ICAgICAgKiBwbGF0Zm9ybS9hdWRpby9pb3MvTWVkaWFTZXNzaW9uTWFuYWdlcklPUy5tbToKKyAg
ICAgICAgKFdlYkNvcmU6Ok1lZGlhU2Vzc2lvbk1hbmFnZXJpT1M6OnJlc2V0UmVzdHJpY3Rpb25z
KToKKyAgICAgICAgKC1bV2ViTWVkaWFTZXNzaW9uSGVscGVyIGluaXRXaXRoQ2FsbGJhY2s6XSk6
CisgICAgICAgICogcGxhdGZvcm0vYXVkaW8vbWFjL0F1ZGlvRGVzdGluYXRpb25NYWMuaDoKKyAg
ICAgICAgKiB0ZXN0aW5nL0ludGVybmFscy5jcHA6CisgICAgICAgIChXZWJDb3JlOjpJbnRlcm5h
bHM6OnNldE1lZGlhU2Vzc2lvblJlc3RyaWN0aW9ucyk6CisgICAgICAgICogdGVzdGluZy9JbnRl
cm5hbHMuaDoKKyAgICAgICAgKiB0ZXN0aW5nL0ludGVybmFscy5pZGw6CisKIDIwMTQtMDItMDQg
IEVyaWMgQ2FybHNvbiAgPGVyaWMuY2FybHNvbkBhcHBsZS5jb20+CiAKICAgICAgICAgUmVmaW5l
IE1lZGlhU2Vzc2lvbiBpbnRlcnJ1cHRpb25zCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L0No
YW5nZUxvZyBiL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCmluZGV4IDI1MDE3MzZhZWJmNWNjZWNm
ZDFmYTI0MzNjMjcyYWUzZDcwMDVhMDMuLjhkMmU5OTJkZDQ2NjBlMzU2OThhMjE1ZDc5MDVhMmRl
OTkxY2M2OTMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCisrKyBiL1NvdXJj
ZS9XZWJLaXQvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTQgQEAKKzIwMTQtMDItMDQgIENvbW1pdCBR
dWV1ZSAgPGNvbW1pdC1xdWV1ZUB3ZWJraXQub3JnPgorCisgICAgICAgIFVucmV2aWV3ZWQsIHJv
bGxpbmcgb3V0IHIxNjMzNzYuCisgICAgICAgIGh0dHA6Ly90cmFjLndlYmtpdC5vcmcvY2hhbmdl
c2V0LzE2MzM3NgorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/
aWQ9MTI4MTg0CisKKyAgICAgICAgVW5leHBlY3RlZCB0ZXN0IGZhaWx1cmVzLiAoUmVxdWVzdGVk
IGJ5IGVyaWNfY2FybHNvbiBvbgorICAgICAgICAjd2Via2l0KS4KKworICAgICAgICAqIFdlYktp
dC52Y3hwcm9qL1dlYktpdEV4cG9ydEdlbmVyYXRvci9XZWJLaXRFeHBvcnRzLmRlZi5pbjoKKwog
MjAxNC0wMi0wNCAgRXJpYyBDYXJsc29uICA8ZXJpYy5jYXJsc29uQGFwcGxlLmNvbT4KIAogICAg
ICAgICBSZWZpbmUgTWVkaWFTZXNzaW9uIGludGVycnVwdGlvbnMKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJDb3JlL1dlYkNvcmUuZXhwLmluIGIvU291cmNlL1dlYkNvcmUvV2ViQ29yZS5leHAuaW4K
aW5kZXggM2Y2MTk3M2VmYTVhYTFkNzE4OTQ2MWUyNDI5NmI1N2QwMDRhMDNlZi4uZGZjYWY1NTA3
MGRjNjlmNDlmNDIxOGNjMmU0NmNmY2JjODRhZTY0YiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNv
cmUvV2ViQ29yZS5leHAuaW4KKysrIGIvU291cmNlL1dlYkNvcmUvV2ViQ29yZS5leHAuaW4KQEAg
LTc2MCw4ICs3NjAsNiBAQCBfX1pON1dlYkNvcmUxOU1lZGlhU2Vzc2lvbk1hbmFnZXIxNGFkZFJl
c3RyaWN0aW9uRU5TXzEyTWVkaWFTZXNzaW9uOU1lZGlhVHlwZUVqCiBfX1pON1dlYkNvcmUxOU1l
ZGlhU2Vzc2lvbk1hbmFnZXIxNWVuZEludGVycnVwdGlvbkVOU18xMk1lZGlhU2Vzc2lvbjIwRW5k
SW50ZXJydXB0aW9uRmxhZ3NFCiBfX1pON1dlYkNvcmUxOU1lZGlhU2Vzc2lvbk1hbmFnZXIxN2Jl
Z2luSW50ZXJydXB0aW9uRXYKIF9fWk43V2ViQ29yZTE5TWVkaWFTZXNzaW9uTWFuYWdlcjE3cmVt
b3ZlUmVzdHJpY3Rpb25FTlNfMTJNZWRpYVNlc3Npb245TWVkaWFUeXBlRWoKLV9fWk5LN1dlYkNv
cmUxOU1lZGlhU2Vzc2lvbk1hbmFnZXIzMGFwcGxpY2F0aW9uV2lsbEVudGVyQmFja2dyb3VuZEV2
Ci1fX1pOSzdXZWJDb3JlMTlNZWRpYVNlc3Npb25NYW5hZ2VyMzBhcHBsaWNhdGlvbldpbGxFbnRl
ckZvcmVncm91bmRFdgogX19aTjdXZWJDb3JlMTlSZXNvdXJjZVJlcXVlc3RCYXNlMTFzZXRIVFRQ
Qm9keUVOM1dURjEwUGFzc1JlZlB0cklOU184Rm9ybURhdGFFRUUKIF9fWk43V2ViQ29yZTE5UmVz
b3VyY2VSZXF1ZXN0QmFzZTEzc2V0SFRUUE1ldGhvZEVSS04zV1RGNlN0cmluZ0UKIF9fWk43V2Vi
Q29yZTE5UmVzb3VyY2VSZXF1ZXN0QmFzZTE4c2V0SFRUUEhlYWRlckZpZWxkRVBLY1JLTjNXVEY2
U3RyaW5nRQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MTWVkaWFFbGVtZW50
LmNwcCBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTE1lZGlhRWxlbWVudC5jcHAKaW5kZXggNTU2
MzAzOWRlMzFiN2JjZWNlZjI1NzU3Mzk0MDVmYmYzZjUxYTFkNy4uOWY5OTdiMDZjMmZmYmM5MGM1
OWFkMmZkNTE0OGYxY2ZkNDBhZTRiMyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvaHRtbC9I
VE1MTWVkaWFFbGVtZW50LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxNZWRpYUVs
ZW1lbnQuY3BwCkBAIC0yNjQ4LDggKzI2NDgsOCBAQCB2b2lkIEhUTUxNZWRpYUVsZW1lbnQ6OnBs
YXkoKQogICAgIGlmIChTY3JpcHRDb250cm9sbGVyOjpwcm9jZXNzaW5nVXNlckdlc3R1cmUoKSkK
ICAgICAgICAgcmVtb3ZlQmVoYXZpb3JzUmVzdHJpY3Rpb25zQWZ0ZXJGaXJzdFVzZXJHZXN0dXJl
KCk7CiAKLSAgICBpZiAoIW1fbWVkaWFTZXNzaW9uLT5jbGllbnRXaWxsQmVnaW5QbGF5YmFjaygp
KSB7Ci0gICAgICAgIExPRyhNZWRpYSwgIiAgcmV0dXJuaW5nIGJlY2F1c2Ugb2YgaW50ZXJydXB0
aW9uIik7CisgICAgaWYgKG1fbWVkaWFTZXNzaW9uLT5zdGF0ZSgpID09IE1lZGlhU2Vzc2lvbjo6
SW50ZXJydXB0ZWQpIHsKKyAgICAgICAgbV9yZXN1bWVQbGF5YmFja0FmdGVySW50ZXJydXB0aW9u
ID0gdHJ1ZTsKICAgICAgICAgcmV0dXJuOwogICAgIH0KICAgICAKQEAgLTI2OTUsMTEgKzI2OTUs
MTEgQEAgdm9pZCBIVE1MTWVkaWFFbGVtZW50OjpwYXVzZSgpCiAgICAgaWYgKCFtX21lZGlhU2Vz
c2lvbi0+cGxheWJhY2tQZXJtaXR0ZWQoKnRoaXMpKQogICAgICAgICByZXR1cm47CiAKLSAgICBp
ZiAoIW1fbWVkaWFTZXNzaW9uLT5jbGllbnRXaWxsUGF1c2VQbGF5YmFjaygpKSB7Ci0gICAgICAg
IExPRyhNZWRpYSwgIiAgcmV0dXJuaW5nIGJlY2F1c2Ugb2YgaW50ZXJydXB0aW9uIik7CisgICAg
aWYgKG1fbWVkaWFTZXNzaW9uLT5zdGF0ZSgpID09IE1lZGlhU2Vzc2lvbjo6SW50ZXJydXB0ZWQp
IHsKKyAgICAgICAgbV9yZXN1bWVQbGF5YmFja0FmdGVySW50ZXJydXB0aW9uID0gZmFsc2U7CiAg
ICAgICAgIHJldHVybjsKICAgICB9Ci0KKyAgICAKICAgICBwYXVzZUludGVybmFsKCk7CiB9CiAK
QEAgLTQyNjgsNiArNDI2OCw4IEBAIHZvaWQgSFRNTE1lZGlhRWxlbWVudDo6dXBkYXRlUGxheVN0
YXRlKCkKICAgICAgICAgaW52YWxpZGF0ZUNhY2hlZFRpbWUoKTsKIAogICAgICAgICBpZiAocGxh
eWVyUGF1c2VkKSB7CisgICAgICAgICAgICBtX21lZGlhU2Vzc2lvbi0+Y2xpZW50V2lsbEJlZ2lu
UGxheWJhY2soKTsKKwogICAgICAgICAgICAgaWYgKG1fbWVkaWFTZXNzaW9uLT5yZXF1aXJlc0Z1
bGxzY3JlZW5Gb3JWaWRlb1BsYXliYWNrKCp0aGlzKSkKICAgICAgICAgICAgICAgICBlbnRlckZ1
bGxzY3JlZW4oKTsKIApAQCAtNDI4Nyw3ICs0Mjg5LDcgQEAgdm9pZCBIVE1MTWVkaWFFbGVtZW50
Ojp1cGRhdGVQbGF5U3RhdGUoKQogICAgICAgICBzdGFydFBsYXliYWNrUHJvZ3Jlc3NUaW1lcigp
OwogICAgICAgICBtX3BsYXlpbmcgPSB0cnVlOwogCi0gICAgfSBlbHNlIHsKKyAgICB9IGVsc2Ug
eyAvLyBTaG91bGQgbm90IGJlIHBsYXlpbmcgcmlnaHQgbm93CiAgICAgICAgIGlmICghcGxheWVy
UGF1c2VkKQogICAgICAgICAgICAgbV9wbGF5ZXItPnBhdXNlKCk7CiAgICAgICAgIHJlZnJlc2hD
YWNoZWRUaW1lKCk7CkBAIC01NzYwLDI3ICs1NzYyLDM5IEBAIHVuc2lnbmVkIGxvbmcgbG9uZyBI
VE1MTWVkaWFFbGVtZW50OjpmaWxlU2l6ZSgpIGNvbnN0CiAKIE1lZGlhU2Vzc2lvbjo6TWVkaWFU
eXBlIEhUTUxNZWRpYUVsZW1lbnQ6Om1lZGlhVHlwZSgpIGNvbnN0CiB7Ci0gICAgaWYgKG1fcGxh
eWVyICYmIG1fcmVhZHlTdGF0ZSA+PSBIQVZFX01FVEFEQVRBKQotICAgICAgICByZXR1cm4gaGFz
VmlkZW8oKSA/IE1lZGlhU2Vzc2lvbjo6VmlkZW8gOiBNZWRpYVNlc3Npb246OkF1ZGlvOwotCiAg
ICAgaWYgKGhhc1RhZ05hbWUoSFRNTE5hbWVzOjp2aWRlb1RhZykpCiAgICAgICAgIHJldHVybiBN
ZWRpYVNlc3Npb246OlZpZGVvOwogCiAgICAgcmV0dXJuIE1lZGlhU2Vzc2lvbjo6QXVkaW87CiB9
CiAKLXZvaWQgSFRNTE1lZGlhRWxlbWVudDo6cGF1c2VQbGF5YmFjaygpCit2b2lkIEhUTUxNZWRp
YUVsZW1lbnQ6OmJlZ2luSW50ZXJydXB0aW9uKCkKIHsKLSAgICBpZiAoIXBhdXNlZCgpKQorICAg
IExPRyhNZWRpYSwgIkhUTUxNZWRpYUVsZW1lbnQ6OmJlZ2luSW50ZXJydXB0aW9uIik7CisgICAg
CisgICAgbV9yZXN1bWVQbGF5YmFja0FmdGVySW50ZXJydXB0aW9uID0gIXBhdXNlZCgpOworICAg
IGlmIChtX3Jlc3VtZVBsYXliYWNrQWZ0ZXJJbnRlcnJ1cHRpb24pCiAgICAgICAgIHBhdXNlKCk7
CiB9CiAKLXZvaWQgSFRNTE1lZGlhRWxlbWVudDo6cmVzdW1lUGxheWJhY2soKQordm9pZCBIVE1M
TWVkaWFFbGVtZW50OjplbmRJbnRlcnJ1cHRpb24oTWVkaWFTZXNzaW9uOjpFbmRJbnRlcnJ1cHRp
b25GbGFncyBmbGFncykKIHsKLSAgICBpZiAocGF1c2VkKCkpCisgICAgYm9vbCBzaG91bGRSZXN1
bWVQbGF5YmFjayA9IG1fcmVzdW1lUGxheWJhY2tBZnRlckludGVycnVwdGlvbjsKKyAgICBtX3Jl
c3VtZVBsYXliYWNrQWZ0ZXJJbnRlcnJ1cHRpb24gPSBmYWxzZTsKKworICAgIGlmICghZmxhZ3Mg
JiBNZWRpYVNlc3Npb246Ok1heVJlc3VtZVBsYXlpbmcpCisgICAgICAgIHJldHVybjsKKworICAg
IGlmIChzaG91bGRSZXN1bWVQbGF5YmFjaykKICAgICAgICAgcGxheSgpOwogfQogCit2b2lkIEhU
TUxNZWRpYUVsZW1lbnQ6OnBhdXNlUGxheWJhY2soKQoreworICAgIGlmICghcGF1c2VkKCkpCisg
ICAgICAgIHBhdXNlKCk7Cit9CisKIH0KIAogI2VuZGlmCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
Q29yZS9odG1sL0hUTUxNZWRpYUVsZW1lbnQuaCBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTE1l
ZGlhRWxlbWVudC5oCmluZGV4IGE1MTM2NmZhYjRmMTExYWMxNTQzNmFlNWIxMjE3ZThlZmYxYTAw
YjEuLjdjYTVlMGUxYTc1MjFkMzI1Y2IyMjYzOGIzMjBjYTNlZjc5MTgzMTAgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTE1lZGlhRWxlbWVudC5oCisrKyBiL1NvdXJjZS9XZWJD
b3JlL2h0bWwvSFRNTE1lZGlhRWxlbWVudC5oCkBAIC02NjksOCArNjY5LDEwIEBAIHByaXZhdGU6
CiAjZW5kaWYKIAogICAgIHZpcnR1YWwgTWVkaWFTZXNzaW9uOjpNZWRpYVR5cGUgbWVkaWFUeXBl
KCkgY29uc3Qgb3ZlcnJpZGU7CisKKyAgICB2aXJ0dWFsIHZvaWQgYmVnaW5JbnRlcnJ1cHRpb24o
KSBvdmVycmlkZTsKKyAgICB2aXJ0dWFsIHZvaWQgZW5kSW50ZXJydXB0aW9uKE1lZGlhU2Vzc2lv
bjo6RW5kSW50ZXJydXB0aW9uRmxhZ3MpIG92ZXJyaWRlOwogICAgIHZpcnR1YWwgdm9pZCBwYXVz
ZVBsYXliYWNrKCkgb3ZlcnJpZGU7Ci0gICAgdmlydHVhbCB2b2lkIHJlc3VtZVBsYXliYWNrKCkg
b3ZlcnJpZGU7CiAKICAgICBUaW1lcjxIVE1MTWVkaWFFbGVtZW50PiBtX2xvYWRUaW1lcjsKICAg
ICBUaW1lcjxIVE1MTWVkaWFFbGVtZW50PiBtX3Byb2dyZXNzRXZlbnRUaW1lcjsKQEAgLTc3OCw2
ICs3ODAsOCBAQCBwcml2YXRlOgogICAgIGJvb2wgbV9wbGF0Zm9ybUxheWVyQm9ycm93ZWQgOiAx
OwogI2VuZGlmCiAKKyAgICBib29sIG1fcmVzdW1lUGxheWJhY2tBZnRlckludGVycnVwdGlvbiA6
IDE7CisKICNpZiBFTkFCTEUoVklERU9fVFJBQ0spCiAgICAgYm9vbCBtX3RyYWNrc0FyZVJlYWR5
IDogMTsKICAgICBib29sIG1faGF2ZVZpc2libGVUZXh0VHJhY2sgOiAxOwpkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYkNvcmUvaHRtbC9IVE1MTWVkaWFTZXNzaW9uLmNwcCBiL1NvdXJjZS9XZWJDb3Jl
L2h0bWwvSFRNTE1lZGlhU2Vzc2lvbi5jcHAKaW5kZXggMDdiMDFmYTYxMWExNGFmNTUzZmFjMWQw
M2EzYjgyNGUzMzE2N2U0MS4uMjk3OGQ2N2FkNWE5YzA1ZGYwNzFjNDkxYjQ2NjZlNTQ1MDUwZDY5
YiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MTWVkaWFTZXNzaW9uLmNwcAor
KysgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxNZWRpYVNlc3Npb24uY3BwCkBAIC00MiwyNyAr
NDIsNiBAQAogCiBuYW1lc3BhY2UgV2ViQ29yZSB7CiAKLSNpZiAhTE9HX0RJU0FCTEVECi1zdGF0
aWMgY29uc3QgY2hhciogcmVzdHJpY3Rpb25OYW1lKEhUTUxNZWRpYVNlc3Npb246OkJlaGF2aW9y
UmVzdHJpY3Rpb25zIHJlc3RyaWN0aW9uKQotewotI2RlZmluZSBDQVNFKF9yZXN0cmljdGlvbikg
Y2FzZSBIVE1MTWVkaWFTZXNzaW9uOjpfcmVzdHJpY3Rpb246IHJldHVybiAjX3Jlc3RyaWN0aW9u
OyBicmVhazsKLSAgICBzd2l0Y2ggKHJlc3RyaWN0aW9uKSB7Ci0gICAgQ0FTRShOb1Jlc3RyaWN0
aW9ucyk7Ci0gICAgQ0FTRShSZXF1aXJlVXNlckdlc3R1cmVGb3JMb2FkKTsKLSAgICBDQVNFKFJl
cXVpcmVVc2VyR2VzdHVyZUZvclJhdGVDaGFuZ2UpOwotICAgIENBU0UoUmVxdWlyZVVzZXJHZXN0
dXJlRm9yRnVsbHNjcmVlbik7Ci0gICAgQ0FTRShSZXF1aXJlUGFnZUNvbnNlbnRUb0xvYWRNZWRp
YSk7Ci0gICAgQ0FTRShSZXF1aXJlUGFnZUNvbnNlbnRUb1Jlc3VtZU1lZGlhKTsKLSNpZiBFTkFC
TEUoSU9TX0FJUlBMQVkpCi0gICAgQ0FTRShSZXF1aXJlVXNlckdlc3R1cmVUb1Nob3dQbGF5YmFj
a1RhcmdldFBpY2tlcik7Ci0jZW5kaWYKLSAgICB9Ci0KLSAgICBBU1NFUlRfTk9UX1JFQUNIRUQo
KTsKLSAgICByZXR1cm4gIiI7Ci19Ci0jZW5kaWYKLQogc3RhdGljIHZvaWQgaW5pdGlhbGl6ZUF1
ZGlvU2Vzc2lvbigpCiB7CiAjaWYgUExBVEZPUk0oSU9TKQpAQCAtOTIsMTMgKzcxLDExIEBAIEhU
TUxNZWRpYVNlc3Npb246OkhUTUxNZWRpYVNlc3Npb24oTWVkaWFTZXNzaW9uQ2xpZW50JiBjbGll
bnQpCiAKIHZvaWQgSFRNTE1lZGlhU2Vzc2lvbjo6YWRkQmVoYXZpb3JSZXN0cmljdGlvbihCZWhh
dmlvclJlc3RyaWN0aW9ucyByZXN0cmljdGlvbikKIHsKLSAgICBMT0coTWVkaWEsICJIVE1MTWVk
aWFTZXNzaW9uOjphZGRCZWhhdmlvclJlc3RyaWN0aW9uIC0gYWRkaW5nICVzIiwgcmVzdHJpY3Rp
b25OYW1lKHJlc3RyaWN0aW9uKSk7CiAgICAgbV9yZXN0cmljdGlvbnMgfD0gcmVzdHJpY3Rpb247
CiB9CiAKIHZvaWQgSFRNTE1lZGlhU2Vzc2lvbjo6cmVtb3ZlQmVoYXZpb3JSZXN0cmljdGlvbihC
ZWhhdmlvclJlc3RyaWN0aW9ucyByZXN0cmljdGlvbikKIHsKLSAgICBMT0coTWVkaWEsICJIVE1M
TWVkaWFTZXNzaW9uOjpyZW1vdmVCZWhhdmlvclJlc3RyaWN0aW9uIC0gcmVtb3ZpbmcgJXMiLCBy
ZXN0cmljdGlvbk5hbWUocmVzdHJpY3Rpb24pKTsKICAgICBtX3Jlc3RyaWN0aW9ucyAmPSB+cmVz
dHJpY3Rpb247CiB9CiAKQEAgLTE4Miw2ICsxNTksMTEgQEAgTWVkaWFQbGF5ZXI6OlByZWxvYWQg
SFRNTE1lZGlhU2Vzc2lvbjo6ZWZmZWN0aXZlUHJlbG9hZEZvckVsZW1lbnQoY29uc3QgSFRNTE1l
ZGkKICAgICByZXR1cm4gcHJlbG9hZDsKIH0KIAordm9pZCBIVE1MTWVkaWFTZXNzaW9uOjpjbGll
bnRXaWxsQmVnaW5QbGF5YmFjaygpIGNvbnN0Cit7CisgICAgTWVkaWFTZXNzaW9uTWFuYWdlcjo6
c2hhcmVkTWFuYWdlcigpLnNlc3Npb25XaWxsQmVnaW5QbGF5YmFjaygqdGhpcyk7Cit9CisKIGJv
b2wgSFRNTE1lZGlhU2Vzc2lvbjo6cmVxdWlyZXNGdWxsc2NyZWVuRm9yVmlkZW9QbGF5YmFjayhj
b25zdCBIVE1MTWVkaWFFbGVtZW50JiBlbGVtZW50KSBjb25zdAogewogICAgIGlmICghTWVkaWFT
ZXNzaW9uTWFuYWdlcjo6c2hhcmVkTWFuYWdlcigpLnNlc3Npb25SZXN0cmljdHNJbmxpbmVWaWRl
b1BsYXliYWNrKCp0aGlzKSkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTE1l
ZGlhU2Vzc2lvbi5oIGIvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MTWVkaWFTZXNzaW9uLmgKaW5k
ZXggMDdlYTY3YTU3NjY0NGI3ZDM0MzhjOTkzMGUwYmM3YThhYjZhYjg5OC4uNTVlYTUyMGM1NTgz
YTdhYmEzMzhjZmE5N2YyOTYyYmEzNmNkYzQ3YyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUv
aHRtbC9IVE1MTWVkaWFTZXNzaW9uLmgKKysrIGIvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MTWVk
aWFTZXNzaW9uLmgKQEAgLTQyLDYgKzQyLDggQEAgcHVibGljOgogICAgIEhUTUxNZWRpYVNlc3Np
b24oTWVkaWFTZXNzaW9uQ2xpZW50Jik7CiAgICAgdmlydHVhbCB+SFRNTE1lZGlhU2Vzc2lvbigp
IHsgfQogCisgICAgdm9pZCBjbGllbnRXaWxsQmVnaW5QbGF5YmFjaygpIGNvbnN0OworCiAgICAg
Ym9vbCBwbGF5YmFja1Blcm1pdHRlZChjb25zdCBIVE1MTWVkaWFFbGVtZW50JikgY29uc3Q7CiAg
ICAgYm9vbCBkYXRhTG9hZGluZ1Blcm1pdHRlZChjb25zdCBIVE1MTWVkaWFFbGVtZW50JikgY29u
c3Q7CiAgICAgYm9vbCBmdWxsc2NyZWVuUGVybWl0dGVkKGNvbnN0IEhUTUxNZWRpYUVsZW1lbnQm
KSBjb25zdDsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2F1ZGlvL01lZGlh
U2Vzc2lvbi5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9hdWRpby9NZWRpYVNlc3Npb24u
Y3BwCmluZGV4IDJkYjdmMDU5ZGU2NmFjNDZmN2FlNmVjNTUwNzU0NjRlOTNhODNhMzguLmEzNWQx
OTJjNjhmNzRjNmY2YTIwMTAwZjExNjA2M2E1YzgwNTJjYzcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJDb3JlL3BsYXRmb3JtL2F1ZGlvL01lZGlhU2Vzc2lvbi5jcHAKKysrIGIvU291cmNlL1dlYkNv
cmUvcGxhdGZvcm0vYXVkaW8vTWVkaWFTZXNzaW9uLmNwcApAQCAtMzIsMjIgKzMyLDYgQEAKIAog
bmFtZXNwYWNlIFdlYkNvcmUgewogCi0jaWYgIUxPR19ESVNBQkxFRAotc3RhdGljIGNvbnN0IGNo
YXIqIHN0YXRlTmFtZShNZWRpYVNlc3Npb246OlN0YXRlIHN0YXRlKQotewotI2RlZmluZSBDQVNF
KF9zdGF0ZSkgY2FzZSBNZWRpYVNlc3Npb246Ol9zdGF0ZTogcmV0dXJuICNfc3RhdGU7IGJyZWFr
OwotICAgIHN3aXRjaCAoc3RhdGUpIHsKLSAgICBDQVNFKElkbGUpOwotICAgIENBU0UoUGxheWlu
Zyk7Ci0gICAgQ0FTRShQYXVzZWQpOwotICAgIENBU0UoSW50ZXJydXB0ZWQpOwotICAgIH0KLQot
ICAgIEFTU0VSVF9OT1RfUkVBQ0hFRCgpOwotICAgIHJldHVybiAiIjsKLX0KLSNlbmRpZgotICAg
IAogc3RkOjp1bmlxdWVfcHRyPE1lZGlhU2Vzc2lvbj4gTWVkaWFTZXNzaW9uOjpjcmVhdGUoTWVk
aWFTZXNzaW9uQ2xpZW50JiBjbGllbnQpCiB7CiAgICAgcmV0dXJuIHN0ZDo6bWFrZV91bmlxdWU8
TWVkaWFTZXNzaW9uPihjbGllbnQpOwpAQCAtNTUsMTEgKzM5LDEwIEBAIHN0ZDo6dW5pcXVlX3B0
cjxNZWRpYVNlc3Npb24+IE1lZGlhU2Vzc2lvbjo6Y3JlYXRlKE1lZGlhU2Vzc2lvbkNsaWVudCYg
Y2xpZW50KQogCiBNZWRpYVNlc3Npb246Ok1lZGlhU2Vzc2lvbihNZWRpYVNlc3Npb25DbGllbnQm
IGNsaWVudCkKICAgICA6IG1fY2xpZW50KGNsaWVudCkKLSAgICAsIG1fc3RhdGUoSWRsZSkKLSAg
ICAsIG1fc3RhdGVUb1Jlc3RvcmUoSWRsZSkKLSAgICAsIG1fbm90aWZ5aW5nQ2xpZW50KGZhbHNl
KQorICAgICwgbV9zdGF0ZShSdW5uaW5nKQogewotICAgIEFTU0VSVChtX2NsaWVudC5tZWRpYVR5
cGUoKSA+PSBOb25lICYmIG1fY2xpZW50Lm1lZGlhVHlwZSgpIDw9IFdlYkF1ZGlvKTsKKyAgICBt
X3R5cGUgPSBtX2NsaWVudC5tZWRpYVR5cGUoKTsKKyAgICBBU1NFUlQobV90eXBlID49IE5vbmUg
JiYgbV90eXBlIDw9IFdlYkF1ZGlvKTsKICAgICBNZWRpYVNlc3Npb25NYW5hZ2VyOjpzaGFyZWRN
YW5hZ2VyKCkuYWRkU2Vzc2lvbigqdGhpcyk7CiB9CiAKQEAgLTY4LDUyICs1MSwxOCBAQCBNZWRp
YVNlc3Npb246On5NZWRpYVNlc3Npb24oKQogICAgIE1lZGlhU2Vzc2lvbk1hbmFnZXI6OnNoYXJl
ZE1hbmFnZXIoKS5yZW1vdmVTZXNzaW9uKCp0aGlzKTsKIH0KIAotdm9pZCBNZWRpYVNlc3Npb246
OnNldFN0YXRlKFN0YXRlIHN0YXRlKQotewotICAgIExPRyhNZWRpYSwgIk1lZGlhU2Vzc2lvbjo6
c2V0U3RhdGUgLSAlcyIsIHN0YXRlTmFtZShzdGF0ZSkpOwotICAgIG1fc3RhdGUgPSBzdGF0ZTsK
LX0KLQogdm9pZCBNZWRpYVNlc3Npb246OmJlZ2luSW50ZXJydXB0aW9uKCkKIHsKICAgICBMT0co
TWVkaWEsICJNZWRpYVNlc3Npb246OmJlZ2luSW50ZXJydXB0aW9uIik7Ci0KLSAgICBtX3N0YXRl
VG9SZXN0b3JlID0gc3RhdGUoKTsKLSAgICBtX25vdGlmeWluZ0NsaWVudCA9IHRydWU7Ci0gICAg
Y2xpZW50KCkucGF1c2VQbGF5YmFjaygpOwotICAgIHNldFN0YXRlKEludGVycnVwdGVkKTsKLSAg
ICBtX25vdGlmeWluZ0NsaWVudCA9IGZhbHNlOworICAgIG1fc3RhdGUgPSBJbnRlcnJ1cHRlZDsK
KyAgICBtX2NsaWVudC5iZWdpbkludGVycnVwdGlvbigpOwogfQogCiB2b2lkIE1lZGlhU2Vzc2lv
bjo6ZW5kSW50ZXJydXB0aW9uKEVuZEludGVycnVwdGlvbkZsYWdzIGZsYWdzKQogewotICAgIExP
RyhNZWRpYSwgIk1lZGlhU2Vzc2lvbjo6ZW5kSW50ZXJydXB0aW9uIC0gZmxhZ3MgPSAlaSIsIChp
bnQpZmxhZ3MpOwotCi0gICAgc2V0U3RhdGUoUGF1c2VkKTsKLSAgICBtX3N0YXRlVG9SZXN0b3Jl
ID0gSWRsZTsKLSAgICBpZiAoZmxhZ3MgJiBNYXlSZXN1bWVQbGF5aW5nICYmIG1fc3RhdGVUb1Jl
c3RvcmUgPT0gUGxheWluZykgewotICAgICAgICBMT0coTWVkaWEsICJNZWRpYVNlc3Npb246OmVu
ZEludGVycnVwdGlvbiAtIHJlc3VtaW5nIHBsYXliYWNrIik7Ci0gICAgICAgIGNsaWVudCgpLnJl
c3VtZVBsYXliYWNrKCk7Ci0gICAgfQotfQotCi1ib29sIE1lZGlhU2Vzc2lvbjo6Y2xpZW50V2ls
bEJlZ2luUGxheWJhY2soKQotewotICAgIHNldFN0YXRlKFBsYXlpbmcpOwotICAgIE1lZGlhU2Vz
c2lvbk1hbmFnZXI6OnNoYXJlZE1hbmFnZXIoKS5zZXNzaW9uV2lsbEJlZ2luUGxheWJhY2soKnRo
aXMpOwotICAgIHJldHVybiB0cnVlOwotfQotCi1ib29sIE1lZGlhU2Vzc2lvbjo6Y2xpZW50V2ls
bFBhdXNlUGxheWJhY2soKQotewotICAgIGlmIChzdGF0ZSgpID09IEludGVycnVwdGVkKSB7Ci0g
ICAgICAgIGlmICghbV9ub3RpZnlpbmdDbGllbnQpCi0gICAgICAgICAgICBtX3N0YXRlVG9SZXN0
b3JlID0gUGF1c2VkOwotICAgICAgICByZXR1cm4gZmFsc2U7Ci0gICAgfQotICAgIAotICAgIHNl
dFN0YXRlKFBhdXNlZCk7Ci0gICAgcmV0dXJuIHRydWU7CisgICAgTE9HKE1lZGlhLCAiTWVkaWFT
ZXNzaW9uOjplbmRJbnRlcnJ1cHRpb24iKTsKKyAgICBtX3N0YXRlID0gUnVubmluZzsKKyAgICBt
X2NsaWVudC5lbmRJbnRlcnJ1cHRpb24oZmxhZ3MpOwogfQogCiB2b2lkIE1lZGlhU2Vzc2lvbjo6
cGF1c2VTZXNzaW9uKCkKQEAgLTEyMiw5ICs3MSw0IEBAIHZvaWQgTWVkaWFTZXNzaW9uOjpwYXVz
ZVNlc3Npb24oKQogICAgIG1fY2xpZW50LnBhdXNlUGxheWJhY2soKTsKIH0KIAotTWVkaWFTZXNz
aW9uOjpNZWRpYVR5cGUgTWVkaWFTZXNzaW9uOjptZWRpYVR5cGUoKSBjb25zdAotewotICAgIHJl
dHVybiBtX2NsaWVudC5tZWRpYVR5cGUoKTsKLX0KLSAgICAKIH0KZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJDb3JlL3BsYXRmb3JtL2F1ZGlvL01lZGlhU2Vzc2lvbi5oIGIvU291cmNlL1dlYkNvcmUv
cGxhdGZvcm0vYXVkaW8vTWVkaWFTZXNzaW9uLmgKaW5kZXggNzc5YzdhMGFhZjg5OWNjMWQxZjBh
NjJhMjg2Y2NhYWQ3YTY2ZjUxOC4uYjUzZmVhZDA5ZTVlZDE3NjIzZmQyZDUxZmM0MDQwM2ZhNzU3
ZTk4YiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vYXVkaW8vTWVkaWFTZXNz
aW9uLmgKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vYXVkaW8vTWVkaWFTZXNzaW9uLmgK
QEAgLTQ1LDE2ICs0NSwxNSBAQCBwdWJsaWM6CiAgICAgICAgIEF1ZGlvLAogICAgICAgICBXZWJB
dWRpbywKICAgICB9OwotICAgIE1lZGlhVHlwZSBtZWRpYVR5cGUoKSBjb25zdDsKKyAgICAKKyAg
ICBNZWRpYVR5cGUgbWVkaWFUeXBlKCkgY29uc3QgeyByZXR1cm4gbV90eXBlOyB9CiAKICAgICBl
bnVtIFN0YXRlIHsKLSAgICAgICAgSWRsZSwKLSAgICAgICAgUGxheWluZywKLSAgICAgICAgUGF1
c2VkLAorICAgICAgICBSdW5uaW5nLAogICAgICAgICBJbnRlcnJ1cHRlZCwKICAgICB9OwogICAg
IFN0YXRlIHN0YXRlKCkgY29uc3QgeyByZXR1cm4gbV9zdGF0ZTsgfQotICAgIHZvaWQgc2V0U3Rh
dGUoU3RhdGUpOworICAgIHZvaWQgc2V0U3RhdGUoU3RhdGUgc3RhdGUpIHsgbV9zdGF0ZSA9IHN0
YXRlOyB9CiAKICAgICBlbnVtIEVuZEludGVycnVwdGlvbkZsYWdzIHsKICAgICAgICAgTm9GbGFn
cyA9IDAsCkBAIC02MywxMiArNjIsNiBAQCBwdWJsaWM6CiAgICAgdm9pZCBiZWdpbkludGVycnVw
dGlvbigpOwogICAgIHZvaWQgZW5kSW50ZXJydXB0aW9uKEVuZEludGVycnVwdGlvbkZsYWdzKTsK
IAotICAgIHZvaWQgYXBwbGljYXRpb25XaWxsRW50ZXJGb3JlZ3JvdW5kKCkgY29uc3Q7Ci0gICAg
dm9pZCBhcHBsaWNhdGlvbldpbGxFbnRlckJhY2tncm91bmQoKSBjb25zdDsKLQotICAgIGJvb2wg
Y2xpZW50V2lsbEJlZ2luUGxheWJhY2soKTsKLSAgICBib29sIGNsaWVudFdpbGxQYXVzZVBsYXli
YWNrKCk7Ci0KICAgICB2b2lkIHBhdXNlU2Vzc2lvbigpOwogCiBwcm90ZWN0ZWQ6CkBAIC03Niw5
ICs2OSw4IEBAIHByb3RlY3RlZDoKIAogcHJpdmF0ZToKICAgICBNZWRpYVNlc3Npb25DbGllbnQm
IG1fY2xpZW50OworICAgIE1lZGlhVHlwZSBtX3R5cGU7CiAgICAgU3RhdGUgbV9zdGF0ZTsKLSAg
ICBTdGF0ZSBtX3N0YXRlVG9SZXN0b3JlOwotICAgIGJvb2wgbV9ub3RpZnlpbmdDbGllbnQ7CiB9
OwogCiBjbGFzcyBNZWRpYVNlc3Npb25DbGllbnQgewpAQCAtODcsNyArNzksMTAgQEAgcHVibGlj
OgogICAgIE1lZGlhU2Vzc2lvbkNsaWVudCgpIHsgfQogICAgIAogICAgIHZpcnR1YWwgTWVkaWFT
ZXNzaW9uOjpNZWRpYVR5cGUgbWVkaWFUeXBlKCkgY29uc3QgPSAwOwotICAgIHZpcnR1YWwgdm9p
ZCByZXN1bWVQbGF5YmFjaygpID0gMDsKKyAgICAKKyAgICB2aXJ0dWFsIHZvaWQgYmVnaW5JbnRl
cnJ1cHRpb24oKSB7IH0KKyAgICB2aXJ0dWFsIHZvaWQgZW5kSW50ZXJydXB0aW9uKE1lZGlhU2Vz
c2lvbjo6RW5kSW50ZXJydXB0aW9uRmxhZ3MpIHsgfQorCiAgICAgdmlydHVhbCB2b2lkIHBhdXNl
UGxheWJhY2soKSA9IDA7CiAKIHByb3RlY3RlZDoKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3Jl
L3BsYXRmb3JtL2F1ZGlvL01lZGlhU2Vzc2lvbk1hbmFnZXIuY3BwIGIvU291cmNlL1dlYkNvcmUv
cGxhdGZvcm0vYXVkaW8vTWVkaWFTZXNzaW9uTWFuYWdlci5jcHAKaW5kZXggZGI1OWJhNDk0YWRl
NmQ1YWZiNTlhZDNmYjk1NzYzYWI3MWE3MjkxMy4uZjA0OWM2Nzg3MjE1ZDMwNzZjOWQzZTY1ODdk
NWRhNTlhYWMzODJiYSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vYXVkaW8v
TWVkaWFTZXNzaW9uTWFuYWdlci5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vYXVk
aW8vTWVkaWFTZXNzaW9uTWFuYWdlci5jcHAKQEAgLTI2LDcgKzI2LDYgQEAKICNpbmNsdWRlICJj
b25maWcuaCIKICNpbmNsdWRlICJNZWRpYVNlc3Npb25NYW5hZ2VyLmgiCiAKLSNpbmNsdWRlICJM
b2dnaW5nLmgiCiAjaW5jbHVkZSAiTWVkaWFTZXNzaW9uLmgiCiAKIG5hbWVzcGFjZSBXZWJDb3Jl
IHsKQEAgLTQwLDcgKzM5LDcgQEAgTWVkaWFTZXNzaW9uTWFuYWdlciYgTWVkaWFTZXNzaW9uTWFu
YWdlcjo6c2hhcmVkTWFuYWdlcigpCiAjZW5kaWYKIAogTWVkaWFTZXNzaW9uTWFuYWdlcjo6TWVk
aWFTZXNzaW9uTWFuYWdlcigpCi0gICAgOiBtX2ludGVycnVwdGVkKGZhbHNlKQorICAgIDogbV9p
bnRlcnJ1cHRpb25zKDApCiB7CiAgICAgcmVzZXRSZXN0cmljdGlvbnMoKTsKIH0KQEAgLTc5LDE4
ICs3OCwxOSBAQCBpbnQgTWVkaWFTZXNzaW9uTWFuYWdlcjo6Y291bnQoTWVkaWFTZXNzaW9uOjpN
ZWRpYVR5cGUgdHlwZSkgY29uc3QKIAogdm9pZCBNZWRpYVNlc3Npb25NYW5hZ2VyOjpiZWdpbklu
dGVycnVwdGlvbigpCiB7Ci0gICAgTE9HKE1lZGlhLCAiTWVkaWFTZXNzaW9uTWFuYWdlcjo6YmVn
aW5JbnRlcnJ1cHRpb24iKTsKKyAgICBpZiAoKyttX2ludGVycnVwdGlvbnMgPiAxKQorICAgICAg
ICByZXR1cm47CiAKLSAgICBtX2ludGVycnVwdGVkID0gdHJ1ZTsKICAgICBmb3IgKGF1dG8qIHNl
c3Npb24gOiBtX3Nlc3Npb25zKQogICAgICAgICBzZXNzaW9uLT5iZWdpbkludGVycnVwdGlvbigp
OwogfQogCiB2b2lkIE1lZGlhU2Vzc2lvbk1hbmFnZXI6OmVuZEludGVycnVwdGlvbihNZWRpYVNl
c3Npb246OkVuZEludGVycnVwdGlvbkZsYWdzIGZsYWdzKQogewotICAgIExPRyhNZWRpYSwgIk1l
ZGlhU2Vzc2lvbk1hbmFnZXI6OmVuZEludGVycnVwdGlvbiIpOwotCi0gICAgbV9pbnRlcnJ1cHRl
ZCA9IGZhbHNlOworICAgIEFTU0VSVChtX2ludGVycnVwdGlvbnMgPiAwKTsKKyAgICBpZiAoLS1t
X2ludGVycnVwdGlvbnMpCisgICAgICAgIHJldHVybjsKKyAgICAKICAgICBmb3IgKGF1dG8qIHNl
c3Npb24gOiBtX3Nlc3Npb25zKQogICAgICAgICBzZXNzaW9uLT5lbmRJbnRlcnJ1cHRpb24oZmxh
Z3MpOwogfQpAQCAtOTgsOCArOTgsNyBAQCB2b2lkIE1lZGlhU2Vzc2lvbk1hbmFnZXI6OmVuZElu
dGVycnVwdGlvbihNZWRpYVNlc3Npb246OkVuZEludGVycnVwdGlvbkZsYWdzIGZsYQogdm9pZCBN
ZWRpYVNlc3Npb25NYW5hZ2VyOjphZGRTZXNzaW9uKE1lZGlhU2Vzc2lvbiYgc2Vzc2lvbikKIHsK
ICAgICBtX3Nlc3Npb25zLmFwcGVuZCgmc2Vzc2lvbik7Ci0gICAgaWYgKG1faW50ZXJydXB0ZWQp
Ci0gICAgICAgIHNlc3Npb24uc2V0U3RhdGUoTWVkaWFTZXNzaW9uOjpJbnRlcnJ1cHRlZCk7Cisg
ICAgc2Vzc2lvbi5zZXRTdGF0ZShtX2ludGVycnVwdGlvbnMgPyBNZWRpYVNlc3Npb246OkludGVy
cnVwdGVkIDogTWVkaWFTZXNzaW9uOjpSdW5uaW5nKTsKICAgICB1cGRhdGVTZXNzaW9uU3RhdGUo
KTsKIH0KIApAQCAtMTU4LDI0ICsxNTcsNiBAQCBib29sIE1lZGlhU2Vzc2lvbk1hbmFnZXI6OnNl
c3Npb25SZXN0cmljdHNJbmxpbmVWaWRlb1BsYXliYWNrKGNvbnN0IE1lZGlhU2Vzc2lvbgogICAg
IHJldHVybiBtX3Jlc3RyaWN0aW9uc1tzZXNzaW9uVHlwZV0gJiBJbmxpbmVWaWRlb1BsYXliYWNr
UmVzdHJpY3RlZDsKIH0KIAotdm9pZCBNZWRpYVNlc3Npb25NYW5hZ2VyOjphcHBsaWNhdGlvbldp
bGxFbnRlckJhY2tncm91bmQoKSBjb25zdAotewotICAgIExPRyhNZWRpYSwgIk1lZGlhU2Vzc2lv
bk1hbmFnZXI6OmFwcGxpY2F0aW9uV2lsbEVudGVyQmFja2dyb3VuZCIpOwotICAgIGZvciAoYXV0
byogc2Vzc2lvbiA6IG1fc2Vzc2lvbnMpIHsKLSAgICAgICAgaWYgKG1fcmVzdHJpY3Rpb25zW3Nl
c3Npb24tPm1lZGlhVHlwZSgpXSAmIEJhY2tncm91bmRQbGF5YmFja05vdFBlcm1pdHRlZCkKLSAg
ICAgICAgICAgIHNlc3Npb24tPmJlZ2luSW50ZXJydXB0aW9uKCk7Ci0gICAgfQotfQotCi12b2lk
IE1lZGlhU2Vzc2lvbk1hbmFnZXI6OmFwcGxpY2F0aW9uV2lsbEVudGVyRm9yZWdyb3VuZCgpIGNv
bnN0Ci17Ci0gICAgTE9HKE1lZGlhLCAiTWVkaWFTZXNzaW9uTWFuYWdlcjo6YXBwbGljYXRpb25X
aWxsRW50ZXJGb3JlZ3JvdW5kIik7Ci0gICAgZm9yIChhdXRvKiBzZXNzaW9uIDogbV9zZXNzaW9u
cykgewotICAgICAgICBpZiAobV9yZXN0cmljdGlvbnNbc2Vzc2lvbi0+bWVkaWFUeXBlKCldICYg
QmFja2dyb3VuZFBsYXliYWNrTm90UGVybWl0dGVkKQotICAgICAgICAgICAgc2Vzc2lvbi0+ZW5k
SW50ZXJydXB0aW9uKE1lZGlhU2Vzc2lvbjo6TWF5UmVzdW1lUGxheWluZyk7Ci0gICAgfQotfQot
CiAjaWYgIVBMQVRGT1JNKE1BQykKIHZvaWQgTWVkaWFTZXNzaW9uTWFuYWdlcjo6dXBkYXRlU2Vz
c2lvblN0YXRlKCkKIHsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2F1ZGlv
L01lZGlhU2Vzc2lvbk1hbmFnZXIuaCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2F1ZGlvL01l
ZGlhU2Vzc2lvbk1hbmFnZXIuaAppbmRleCBjYjM3ZDc0MTYxMDcyM2FhNzU1YjcwZWMyNjUwNDEz
OGM5ZTE5Y2NlLi4yMjdiZjFiM2VhZjNmNjgyYTE3YmExZjQ4YjI2YmMwZjkyOTZjMTlhIDEwMDY0
NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9hdWRpby9NZWRpYVNlc3Npb25NYW5hZ2Vy
LmgKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vYXVkaW8vTWVkaWFTZXNzaW9uTWFuYWdl
ci5oCkBAIC00NywxNiArNDcsMTIgQEAgcHVibGljOgogICAgIHZvaWQgYmVnaW5JbnRlcnJ1cHRp
b24oKTsKICAgICB2b2lkIGVuZEludGVycnVwdGlvbihNZWRpYVNlc3Npb246OkVuZEludGVycnVw
dGlvbkZsYWdzKTsKIAotICAgIHZvaWQgYXBwbGljYXRpb25XaWxsRW50ZXJGb3JlZ3JvdW5kKCkg
Y29uc3Q7Ci0gICAgdm9pZCBhcHBsaWNhdGlvbldpbGxFbnRlckJhY2tncm91bmQoKSBjb25zdDsK
LQogICAgIGVudW0gU2Vzc2lvblJlc3RyaWN0aW9uRmxhZ3MgewogICAgICAgICBOb1Jlc3RyaWN0
aW9ucyA9IDAsCiAgICAgICAgIENvbmN1cnJlbnRQbGF5YmFja05vdFBlcm1pdHRlZCA9IDEgPDwg
MCwKICAgICAgICAgSW5saW5lVmlkZW9QbGF5YmFja1Jlc3RyaWN0ZWQgPSAxIDw8IDEsCiAgICAg
ICAgIE1ldGFkYXRhUHJlbG9hZGluZ05vdFBlcm1pdHRlZCA9IDEgPDwgMiwKICAgICAgICAgQXV0
b1ByZWxvYWRpbmdOb3RQZXJtaXR0ZWQgPSAxIDw8IDMsCi0gICAgICAgIEJhY2tncm91bmRQbGF5
YmFja05vdFBlcm1pdHRlZCA9IDEgPDwgNCwKICAgICB9OwogICAgIHR5cGVkZWYgdW5zaWduZWQg
U2Vzc2lvblJlc3RyaWN0aW9uczsKICAgICAKQEAgLTY2LDcgKzYyLDYgQEAgcHVibGljOgogICAg
IHZpcnR1YWwgdm9pZCByZXNldFJlc3RyaWN0aW9ucygpOwogCiAgICAgdm9pZCBzZXNzaW9uV2ls
bEJlZ2luUGxheWJhY2soY29uc3QgTWVkaWFTZXNzaW9uJikgY29uc3Q7Ci0KICAgICBib29sIHNl
c3Npb25SZXN0cmljdHNJbmxpbmVWaWRlb1BsYXliYWNrKGNvbnN0IE1lZGlhU2Vzc2lvbiYpIGNv
bnN0OwogCiBwcm90ZWN0ZWQ6CkBAIC04Miw3ICs3Nyw3IEBAIHByaXZhdGU6CiAgICAgU2Vzc2lv
blJlc3RyaWN0aW9ucyBtX3Jlc3RyaWN0aW9uc1tNZWRpYVNlc3Npb246OldlYkF1ZGlvICsgMV07
CiAKICAgICBWZWN0b3I8TWVkaWFTZXNzaW9uKj4gbV9zZXNzaW9uczsKLSAgICBib29sIG1faW50
ZXJydXB0ZWQ7CisgICAgaW50IG1faW50ZXJydXB0aW9uczsKIH07CiAKIH0KZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2F1ZGlvL2lvcy9NZWRpYVNlc3Npb25NYW5hZ2VySU9T
LmggYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9hdWRpby9pb3MvTWVkaWFTZXNzaW9uTWFuYWdl
cklPUy5oCmluZGV4IGI0YTAwMjJiYzlkNGIyMjU2NDAzNTU0NDczNzllZWZjY2JlZDZhYjUuLmIz
YWM3MWRhNDQyODY0MTA5ZTMwNGIzZjU1NzEyMDljNThjMjg0NDAgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJDb3JlL3BsYXRmb3JtL2F1ZGlvL2lvcy9NZWRpYVNlc3Npb25NYW5hZ2VySU9TLmgKKysr
IGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vYXVkaW8vaW9zL01lZGlhU2Vzc2lvbk1hbmFnZXJJ
T1MuaApAQCAtMzcsNyArMzcsNyBAQCBuYW1lc3BhY2UgV2ViQ29yZSB7CiAKIGNsYXNzIE1lZGlh
U2Vzc2lvbk1hbmFnZXJpT1MgOiBwdWJsaWMgTWVkaWFTZXNzaW9uTWFuYWdlciB7CiBwdWJsaWM6
Ci0gICAgdmlydHVhbCB+TWVkaWFTZXNzaW9uTWFuYWdlcmlPUygpOworICAgIHZpcnR1YWwgfk1l
ZGlhU2Vzc2lvbk1hbmFnZXJpT1MoKSB7IH0KIAogcHJpdmF0ZToKICAgICBmcmllbmQgY2xhc3Mg
TWVkaWFTZXNzaW9uTWFuYWdlcjsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3Jt
L2F1ZGlvL2lvcy9NZWRpYVNlc3Npb25NYW5hZ2VySU9TLm1tIGIvU291cmNlL1dlYkNvcmUvcGxh
dGZvcm0vYXVkaW8vaW9zL01lZGlhU2Vzc2lvbk1hbmFnZXJJT1MubW0KaW5kZXggNjgxYzcxNGFh
NDI0MDhkOTZlOWQwYmJmNjMwMzE0Njc0NzQxYjFhMi4uZGZlNjYwNjcxYjc3YjUyNGJkN2M1ZDNm
ZDczZTY4ZmMzM2U0YmFlMSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vYXVk
aW8vaW9zL01lZGlhU2Vzc2lvbk1hbmFnZXJJT1MubW0KKysrIGIvU291cmNlL1dlYkNvcmUvcGxh
dGZvcm0vYXVkaW8vaW9zL01lZGlhU2Vzc2lvbk1hbmFnZXJJT1MubW0KQEAgLTMxLDMwICszMSwy
NCBAQAogI2ltcG9ydCAiTG9nZ2luZy5oIgogI2ltcG9ydCAiTWVkaWFTZXNzaW9uLmgiCiAjaW1w
b3J0ICJTb2Z0TGlua2luZy5oIgotI2ltcG9ydCAiV2ViQ29yZVN5c3RlbUludGVyZmFjZS5oIgog
I2ltcG9ydCAiV2ViQ29yZVRocmVhZFJ1bi5oIgorI2ltcG9ydCAiV2ViQ29yZVN5c3RlbUludGVy
ZmFjZS5oIgogI2ltcG9ydCA8QVZGb3VuZGF0aW9uL0FWQXVkaW9TZXNzaW9uLmg+Ci0jaW1wb3J0
IDxVSUtpdC9VSUFwcGxpY2F0aW9uLmg+CiAjaW1wb3J0IDxvYmpjL3J1bnRpbWUuaD4KICNpbXBv
cnQgPHd0Zi9SZXRhaW5QdHIuaD4KIAogU09GVF9MSU5LX0ZSQU1FV09SSyhBVkZvdW5kYXRpb24p
Ci1TT0ZUX0xJTktfRlJBTUVXT1JLKFVJS2l0KQogCiBTT0ZUX0xJTktfQ0xBU1MoQVZGb3VuZGF0
aW9uLCBBVkF1ZGlvU2Vzc2lvbikKIAogU09GVF9MSU5LX1BPSU5URVIoQVZGb3VuZGF0aW9uLCBB
VkF1ZGlvU2Vzc2lvbkludGVycnVwdGlvbk5vdGlmaWNhdGlvbiwgTlNTdHJpbmcgKikKIFNPRlRf
TElOS19QT0lOVEVSKEFWRm91bmRhdGlvbiwgQVZBdWRpb1Nlc3Npb25JbnRlcnJ1cHRpb25UeXBl
S2V5LCBOU1N0cmluZyAqKQogU09GVF9MSU5LX1BPSU5URVIoQVZGb3VuZGF0aW9uLCBBVkF1ZGlv
U2Vzc2lvbkludGVycnVwdGlvbk9wdGlvbktleSwgTlNTdHJpbmcgKikKLVNPRlRfTElOS19QT0lO
VEVSKFVJS2l0LCBVSUFwcGxpY2F0aW9uV2lsbFJlc2lnbkFjdGl2ZU5vdGlmaWNhdGlvbiwgTlNT
dHJpbmcgKikKLVNPRlRfTElOS19QT0lOVEVSKFVJS2l0LCBVSUFwcGxpY2F0aW9uV2lsbEVudGVy
Rm9yZWdyb3VuZE5vdGlmaWNhdGlvbiwgTlNTdHJpbmcgKikKIAogI2RlZmluZSBBVkF1ZGlvU2Vz
c2lvbiBnZXRBVkF1ZGlvU2Vzc2lvbkNsYXNzKCkKICNkZWZpbmUgQVZBdWRpb1Nlc3Npb25JbnRl
cnJ1cHRpb25Ob3RpZmljYXRpb24gZ2V0QVZBdWRpb1Nlc3Npb25JbnRlcnJ1cHRpb25Ob3RpZmlj
YXRpb24oKQogI2RlZmluZSBBVkF1ZGlvU2Vzc2lvbkludGVycnVwdGlvblR5cGVLZXkgZ2V0QVZB
dWRpb1Nlc3Npb25JbnRlcnJ1cHRpb25UeXBlS2V5KCkKICNkZWZpbmUgQVZBdWRpb1Nlc3Npb25J
bnRlcnJ1cHRpb25PcHRpb25LZXkgZ2V0QVZBdWRpb1Nlc3Npb25JbnRlcnJ1cHRpb25PcHRpb25L
ZXkoKQotI2RlZmluZSBVSUFwcGxpY2F0aW9uV2lsbFJlc2lnbkFjdGl2ZU5vdGlmaWNhdGlvbiBn
ZXRVSUFwcGxpY2F0aW9uV2lsbFJlc2lnbkFjdGl2ZU5vdGlmaWNhdGlvbigpCi0jZGVmaW5lIFVJ
QXBwbGljYXRpb25XaWxsRW50ZXJGb3JlZ3JvdW5kTm90aWZpY2F0aW9uIGdldFVJQXBwbGljYXRp
b25XaWxsRW50ZXJGb3JlZ3JvdW5kTm90aWZpY2F0aW9uKCkKIAogdXNpbmcgbmFtZXNwYWNlIFdl
YkNvcmU7CiAKQEAgLTYzLDEyICs1NywxMCBAQCB1c2luZyBuYW1lc3BhY2UgV2ViQ29yZTsKIH0K
IAogLSAoaWQpaW5pdFdpdGhDYWxsYmFjazooTWVkaWFTZXNzaW9uTWFuYWdlcmlPUyopY2FsbGJh
Y2s7Ci0tICh2b2lkKWNsZWFyQ2FsbGJhY2s7CiAtICh2b2lkKWludGVycnVwdGlvbjooTlNOb3Rp
ZmljYXRpb24qKW5vdGlmaWNhdGlvbjsKLS0gKHZvaWQpYXBwbGljYXRpb25XaWxsRW50ZXJGb3Jl
Z3JvdW5kOihOU05vdGlmaWNhdGlvbiopbm90aWZpY2F0aW9uOwotLSAodm9pZClhcHBsaWNhdGlv
bldpbGxSZXNpZ25BY3RpdmU6KE5TTm90aWZpY2F0aW9uKilub3RpZmljYXRpb247CiBAZW5kCiAK
KwogbmFtZXNwYWNlIFdlYkNvcmUgewogCiBNZWRpYVNlc3Npb25NYW5hZ2VyJiBNZWRpYVNlc3Np
b25NYW5hZ2VyOjpzaGFyZWRNYW5hZ2VyKCkKQEAgLTg0LDExICs3Niw2IEBAIE1lZGlhU2Vzc2lv
bk1hbmFnZXJpT1M6Ok1lZGlhU2Vzc2lvbk1hbmFnZXJpT1MoKQogICAgIHJlc2V0UmVzdHJpY3Rp
b25zKCk7CiB9CiAKLU1lZGlhU2Vzc2lvbk1hbmFnZXJpT1M6On5NZWRpYVNlc3Npb25NYW5hZ2Vy
aU9TKCkKLXsKLSAgICBbbV9vYmpjT2JzZXJ2ZXIgY2xlYXJDYWxsYmFja107Ci19Ci0KIHZvaWQg
TWVkaWFTZXNzaW9uTWFuYWdlcmlPUzo6cmVzZXRSZXN0cmljdGlvbnMoKQogewogICAgIE1lZGlh
U2Vzc2lvbk1hbmFnZXI6OnJlc2V0UmVzdHJpY3Rpb25zKCk7CkBAIC05OCw4ICs4NSw2IEBAIHZv
aWQgTWVkaWFTZXNzaW9uTWFuYWdlcmlPUzo6cmVzZXRSZXN0cmljdGlvbnMoKQogICAgICAgICBh
ZGRSZXN0cmljdGlvbihNZWRpYVNlc3Npb246OlZpZGVvLCBJbmxpbmVWaWRlb1BsYXliYWNrUmVz
dHJpY3RlZCk7CiAKICAgICBhZGRSZXN0cmljdGlvbihNZWRpYVNlc3Npb246OlZpZGVvLCBDb25j
dXJyZW50UGxheWJhY2tOb3RQZXJtaXR0ZWQpOwotICAgIGFkZFJlc3RyaWN0aW9uKE1lZGlhU2Vz
c2lvbjo6VmlkZW8sIEJhY2tncm91bmRQbGF5YmFja05vdFBlcm1pdHRlZCk7Ci0KICAgICByZW1v
dmVSZXN0cmljdGlvbihNZWRpYVNlc3Npb246OkF1ZGlvLCBNZXRhZGF0YVByZWxvYWRpbmdOb3RQ
ZXJtaXR0ZWQpOwogICAgIHJlbW92ZVJlc3RyaWN0aW9uKE1lZGlhU2Vzc2lvbjo6VmlkZW8sIE1l
dGFkYXRhUHJlbG9hZGluZ05vdFBlcm1pdHRlZCk7CiAgICAgYWRkUmVzdHJpY3Rpb24oTWVkaWFT
ZXNzaW9uOjpBdWRpbywgQXV0b1ByZWxvYWRpbmdOb3RQZXJtaXR0ZWQpOwpAQCAtMTE5LDExICsx
MDQsNyBAQCB2b2lkIE1lZGlhU2Vzc2lvbk1hbmFnZXJpT1M6OnJlc2V0UmVzdHJpY3Rpb25zKCkK
IAogICAgIE5TTm90aWZpY2F0aW9uQ2VudGVyICpjZW50ZXIgPSBbTlNOb3RpZmljYXRpb25DZW50
ZXIgZGVmYXVsdENlbnRlcl07CiAgICAgW2NlbnRlciBhZGRPYnNlcnZlcjpzZWxmIHNlbGVjdG9y
OkBzZWxlY3RvcihpbnRlcnJ1cHRpb246KSBuYW1lOkFWQXVkaW9TZXNzaW9uSW50ZXJydXB0aW9u
Tm90aWZpY2F0aW9uIG9iamVjdDpbQVZBdWRpb1Nlc3Npb24gc2hhcmVkSW5zdGFuY2VdXTsKLQot
ICAgIC8vIEZJWE1FOiBUaGVzZSBuZWVkIHRvIGJlIHBpcGVkIHRocm91Z2ggZnJvbSB0aGUgVUkg
cHJvY2VzcyBpbiBXSzIgbW9kZS4KLSAgICBbY2VudGVyIGFkZE9ic2VydmVyOnNlbGYgc2VsZWN0
b3I6QHNlbGVjdG9yKGFwcGxpY2F0aW9uV2lsbEVudGVyRm9yZWdyb3VuZDopIG5hbWU6VUlBcHBs
aWNhdGlvbldpbGxFbnRlckZvcmVncm91bmROb3RpZmljYXRpb24gb2JqZWN0Om5pbF07Ci0gICAg
W2NlbnRlciBhZGRPYnNlcnZlcjpzZWxmIHNlbGVjdG9yOkBzZWxlY3RvcihhcHBsaWNhdGlvbldp
bGxSZXNpZ25BY3RpdmU6KSBuYW1lOlVJQXBwbGljYXRpb25XaWxsUmVzaWduQWN0aXZlTm90aWZp
Y2F0aW9uIG9iamVjdDpuaWxdOwotCisgICAgCiAgICAgcmV0dXJuIHNlbGY7CiB9CiAKQEAgLTEz
MywxMSArMTE0LDYgQEAgdm9pZCBNZWRpYVNlc3Npb25NYW5hZ2VyaU9TOjpyZXNldFJlc3RyaWN0
aW9ucygpCiAgICAgW3N1cGVyIGRlYWxsb2NdOwogfQogCi0tICh2b2lkKWNsZWFyQ2FsbGJhY2sK
LXsKLSAgICBfY2FsbGJhY2sgPSBuaWw7Ci19Ci0KIC0gKHZvaWQpaW50ZXJydXB0aW9uOihOU05v
dGlmaWNhdGlvbiAqKW5vdGlmaWNhdGlvbgogewogICAgIGlmICghX2NhbGxiYWNrKQpAQCAtMTYx
LDM2ICsxMzcsNiBAQCB2b2lkIE1lZGlhU2Vzc2lvbk1hbmFnZXJpT1M6OnJlc2V0UmVzdHJpY3Rp
b25zKCkKICAgICB9KTsKIH0KIAotLSAodm9pZClhcHBsaWNhdGlvbldpbGxFbnRlckZvcmVncm91
bmQ6KE5TTm90aWZpY2F0aW9uICopbm90aWZpY2F0aW9uCi17Ci0gICAgVU5VU0VEX1BBUkFNKG5v
dGlmaWNhdGlvbik7Ci0gICAgCi0gICAgaWYgKCFfY2FsbGJhY2spCi0gICAgICAgIHJldHVybjsK
LQotICAgIFdlYlRocmVhZFJ1biheewotICAgICAgICBpZiAoIV9jYWxsYmFjaykKLSAgICAgICAg
ICAgIHJldHVybjsKLSAgICAgICAgCi0gICAgICAgIF9jYWxsYmFjay0+YXBwbGljYXRpb25XaWxs
RW50ZXJGb3JlZ3JvdW5kKCk7Ci0gICAgfSk7Ci19Ci0KLS0gKHZvaWQpYXBwbGljYXRpb25XaWxs
UmVzaWduQWN0aXZlOihOU05vdGlmaWNhdGlvbiAqKW5vdGlmaWNhdGlvbgotewotICAgIFVOVVNF
RF9QQVJBTShub3RpZmljYXRpb24pOwotCi0gICAgaWYgKCFfY2FsbGJhY2spCi0gICAgICAgIHJl
dHVybjsKLSAgICAKLSAgICBXZWJUaHJlYWRSdW4oXnsKLSAgICAgICAgaWYgKCFfY2FsbGJhY2sp
Ci0gICAgICAgICAgICByZXR1cm47Ci0gICAgICAgIAotICAgICAgICBfY2FsbGJhY2stPmFwcGxp
Y2F0aW9uV2lsbEVudGVyQmFja2dyb3VuZCgpOwotICAgIH0pOwotfQotCiBAZW5kCiAKICNlbmRp
ZiAvLyBQTEFURk9STShJT1MpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9h
dWRpby9tYWMvQXVkaW9EZXN0aW5hdGlvbk1hYy5oIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0v
YXVkaW8vbWFjL0F1ZGlvRGVzdGluYXRpb25NYWMuaAppbmRleCBmMzVjMmE0MmEyZmJjOTdiNWMx
OWVkNjk1YTI5MWFjYTU4YjIwYjc0Li44Y2ZlNGViMGUzZGJjMWI1OTUwYWY4ZTY2ZTBmZjEyNzc0
NGQyZTE1IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9hdWRpby9tYWMvQXVk
aW9EZXN0aW5hdGlvbk1hYy5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2F1ZGlvL21h
Yy9BdWRpb0Rlc3RpbmF0aW9uTWFjLmgKQEAgLTQ3LDkgKzQ3LDcgQEAgcHVibGljOgogICAgIHZp
cnR1YWwgdm9pZCBzdGFydCgpIG92ZXJyaWRlOwogICAgIHZpcnR1YWwgdm9pZCBzdG9wKCkgb3Zl
cnJpZGU7CiAgICAgdmlydHVhbCBib29sIGlzUGxheWluZygpIG92ZXJyaWRlIHsgcmV0dXJuIG1f
aXNQbGF5aW5nOyB9Ci0KICAgICB2aXJ0dWFsIHZvaWQgcGF1c2VQbGF5YmFjaygpIG92ZXJyaWRl
IHsgc3RvcCgpOyB9Ci0gICAgdmlydHVhbCB2b2lkIHJlc3VtZVBsYXliYWNrKCkgb3ZlcnJpZGUg
eyBzdGFydCgpOyB9CiAKICAgICB2aXJ0dWFsIGZsb2F0IHNhbXBsZVJhdGUoKSBjb25zdCBvdmVy
cmlkZSB7IHJldHVybiBtX3NhbXBsZVJhdGU7IH0KIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNv
cmUvdGVzdGluZy9JbnRlcm5hbHMuY3BwIGIvU291cmNlL1dlYkNvcmUvdGVzdGluZy9JbnRlcm5h
bHMuY3BwCmluZGV4IGIxY2I1MTdmZGU5ZGU4NTVhNmI1MDlhM2QyNDMxY2M1MmNiMGU2ZmIuLjdk
OGVmYzU0Yjk4NWVjYmEzZDcwMjFiM2JhNGM3ZWIxNjg1YzcxMWUgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJDb3JlL3Rlc3RpbmcvSW50ZXJuYWxzLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS90ZXN0
aW5nL0ludGVybmFscy5jcHAKQEAgLTIxODgsMTYgKzIxODgsNiBAQCB2b2lkIEludGVybmFsczo6
ZW5kTWVkaWFTZXNzaW9uSW50ZXJydXB0aW9uKGNvbnN0IFN0cmluZyYgZmxhZ3NTdHJpbmcpCiAg
ICAgTWVkaWFTZXNzaW9uTWFuYWdlcjo6c2hhcmVkTWFuYWdlcigpLmVuZEludGVycnVwdGlvbihm
bGFncyk7CiB9CiAKLXZvaWQgSW50ZXJuYWxzOjphcHBsaWNhdGlvbldpbGxFbnRlckZvcmVncm91
bmQoKSBjb25zdAotewotICAgIE1lZGlhU2Vzc2lvbk1hbmFnZXI6OnNoYXJlZE1hbmFnZXIoKS5h
cHBsaWNhdGlvbldpbGxFbnRlckZvcmVncm91bmQoKTsKLX0KLQotdm9pZCBJbnRlcm5hbHM6OmFw
cGxpY2F0aW9uV2lsbEVudGVyQmFja2dyb3VuZCgpIGNvbnN0Ci17Ci0gICAgTWVkaWFTZXNzaW9u
TWFuYWdlcjo6c2hhcmVkTWFuYWdlcigpLmFwcGxpY2F0aW9uV2lsbEVudGVyQmFja2dyb3VuZCgp
OwotfQotCiB2b2lkIEludGVybmFsczo6c2V0TWVkaWFTZXNzaW9uUmVzdHJpY3Rpb25zKGNvbnN0
IFN0cmluZyYgbWVkaWFUeXBlU3RyaW5nLCBjb25zdCBTdHJpbmcmIHJlc3RyaWN0aW9uc1N0cmlu
ZywgRXhjZXB0aW9uQ29kZSYgZWMpCiB7CiAgICAgTWVkaWFTZXNzaW9uOjpNZWRpYVR5cGUgbWVk
aWFUeXBlID0gTWVkaWFTZXNzaW9uOjpOb25lOwpAQCAtMjIyNSw4ICsyMjE1LDYgQEAgdm9pZCBJ
bnRlcm5hbHM6OnNldE1lZGlhU2Vzc2lvblJlc3RyaWN0aW9ucyhjb25zdCBTdHJpbmcmIG1lZGlh
VHlwZVN0cmluZywgY29uc3QKICAgICAgICAgcmVzdHJpY3Rpb25zICs9IE1lZGlhU2Vzc2lvbk1h
bmFnZXI6Ok1ldGFkYXRhUHJlbG9hZGluZ05vdFBlcm1pdHRlZDsKICAgICBpZiAoZXF1YWxJZ25v
cmluZ0Nhc2UocmVzdHJpY3Rpb25zU3RyaW5nLCAiQXV0b1ByZWxvYWRpbmdOb3RQZXJtaXR0ZWQi
KSkKICAgICAgICAgcmVzdHJpY3Rpb25zICs9IE1lZGlhU2Vzc2lvbk1hbmFnZXI6OkF1dG9QcmVs
b2FkaW5nTm90UGVybWl0dGVkOwotICAgIGlmIChlcXVhbElnbm9yaW5nQ2FzZShyZXN0cmljdGlv
bnNTdHJpbmcsICJCYWNrZ3JvdW5kUGxheWJhY2tOb3RQZXJtaXR0ZWQiKSkKLSAgICAgICAgcmVz
dHJpY3Rpb25zICs9IE1lZGlhU2Vzc2lvbk1hbmFnZXI6OkJhY2tncm91bmRQbGF5YmFja05vdFBl
cm1pdHRlZDsKIAogICAgIE1lZGlhU2Vzc2lvbk1hbmFnZXI6OnNoYXJlZE1hbmFnZXIoKS5hZGRS
ZXN0cmljdGlvbihtZWRpYVR5cGUsIHJlc3RyaWN0aW9ucyk7CiB9CmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViQ29yZS90ZXN0aW5nL0ludGVybmFscy5oIGIvU291cmNlL1dlYkNvcmUvdGVzdGluZy9J
bnRlcm5hbHMuaAppbmRleCAxODVmODUwN2M2MDA3MDJiY2QwYWE0NWIzM2M0YmI0NTZmMTk2NDJj
Li4zYWM4OWY0YzI3M2Y1ZWIyMTBhN2U4ZDNjYmFkMGU0YWI2OWU4NzM3IDEwMDY0NAotLS0gYS9T
b3VyY2UvV2ViQ29yZS90ZXN0aW5nL0ludGVybmFscy5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3Rl
c3RpbmcvSW50ZXJuYWxzLmgKQEAgLTMyNiw4ICszMjYsNiBAQCBwdWJsaWM6CiAKICAgICB2b2lk
IGJlZ2luTWVkaWFTZXNzaW9uSW50ZXJydXB0aW9uKCk7CiAgICAgdm9pZCBlbmRNZWRpYVNlc3Np
b25JbnRlcnJ1cHRpb24oY29uc3QgU3RyaW5nJik7Ci0gICAgdm9pZCBhcHBsaWNhdGlvbldpbGxF
bnRlckZvcmVncm91bmQoKSBjb25zdDsKLSAgICB2b2lkIGFwcGxpY2F0aW9uV2lsbEVudGVyQmFj
a2dyb3VuZCgpIGNvbnN0OwogICAgIHZvaWQgc2V0TWVkaWFTZXNzaW9uUmVzdHJpY3Rpb25zKGNv
bnN0IFN0cmluZyYgbWVkaWFUeXBlLCBjb25zdCBTdHJpbmcmIHJlc3RyaWN0aW9ucywgRXhjZXB0
aW9uQ29kZSYgZWMpOwogCiBwcml2YXRlOgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvdGVz
dGluZy9JbnRlcm5hbHMuaWRsIGIvU291cmNlL1dlYkNvcmUvdGVzdGluZy9JbnRlcm5hbHMuaWRs
CmluZGV4IDM1MTU4YzA2NTVkOTkwYWMzODZhOTQ2NDAzOWNiZDZjOWU1ZGMyMmQuLjVmYWRkMzhm
OTQ4NjI4NWYyZDk4NmFjM2ViMmY1MjAzYTg1ZGYyMGMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJD
b3JlL3Rlc3RpbmcvSW50ZXJuYWxzLmlkbAorKysgYi9Tb3VyY2UvV2ViQ29yZS90ZXN0aW5nL0lu
dGVybmFscy5pZGwKQEAgLTI3NCw3ICsyNzQsNSBAQAogCiAgICAgdm9pZCBiZWdpbk1lZGlhU2Vz
c2lvbkludGVycnVwdGlvbigpOwogICAgIHZvaWQgZW5kTWVkaWFTZXNzaW9uSW50ZXJydXB0aW9u
KERPTVN0cmluZyBmbGFncyk7Ci0gICAgdm9pZCBhcHBsaWNhdGlvbldpbGxFbnRlckZvcmVncm91
bmQoKTsKLSAgICB2b2lkIGFwcGxpY2F0aW9uV2lsbEVudGVyQmFja2dyb3VuZCgpOwogICAgIFtS
YWlzZXNFeGNlcHRpb25dIHZvaWQgc2V0TWVkaWFTZXNzaW9uUmVzdHJpY3Rpb25zKERPTVN0cmlu
ZyBtZWRpYVR5cGUsIERPTVN0cmluZyByZXN0cmljdGlvbnMpOwogfTsKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJLaXQvV2ViS2l0LnZjeHByb2ovV2ViS2l0RXhwb3J0R2VuZXJhdG9yL1dlYktpdEV4
cG9ydHMuZGVmLmluIGIvU291cmNlL1dlYktpdC9XZWJLaXQudmN4cHJvai9XZWJLaXRFeHBvcnRH
ZW5lcmF0b3IvV2ViS2l0RXhwb3J0cy5kZWYuaW4KaW5kZXggMDg5MmE5MzJmOTY2ODkzODYyMGYy
YThmZGQwMzg5YTFmMGRkNmE5YS4uZmFkMjkzOGYwYzhlODE1YzhiYTRkNjY3MzY1YjhiN2ExODM1
NGNmMyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9XZWJLaXQudmN4cHJvai9XZWJLaXRFeHBv
cnRHZW5lcmF0b3IvV2ViS2l0RXhwb3J0cy5kZWYuaW4KKysrIGIvU291cmNlL1dlYktpdC9XZWJL
aXQudmN4cHJvai9XZWJLaXRFeHBvcnRHZW5lcmF0b3IvV2ViS2l0RXhwb3J0cy5kZWYuaW4KQEAg
LTI1MCw4ICsyNTAsNiBAQCBFWFBPUlRTCiAgICAgICAgIHN5bWJvbFdpdGhQb2ludGVyKD9hZGRS
ZXN0cmljdGlvbkBNZWRpYVNlc3Npb25NYW5hZ2VyQFdlYkNvcmVAQFFBRVhXNE1lZGlhVHlwZUBN
ZWRpYVNlc3Npb25AMkBJQFosID9hZGRSZXN0cmljdGlvbkBNZWRpYVNlc3Npb25NYW5hZ2VyQFdl
YkNvcmVAQFFFQUFYVzRNZWRpYVR5cGVATWVkaWFTZXNzaW9uQDJASUBaKQogICAgICAgICBzeW1i
b2xXaXRoUG9pbnRlcig/cmVtb3ZlUmVzdHJpY3Rpb25ATWVkaWFTZXNzaW9uTWFuYWdlckBXZWJD
b3JlQEBRQUVYVzRNZWRpYVR5cGVATWVkaWFTZXNzaW9uQDJASUBaLCA/cmVtb3ZlUmVzdHJpY3Rp
b25ATWVkaWFTZXNzaW9uTWFuYWdlckBXZWJDb3JlQEBRRUFBWFc0TWVkaWFUeXBlQE1lZGlhU2Vz
c2lvbkAyQElAWikKICAgICAgICAgc3ltYm9sV2l0aFBvaW50ZXIoP3Jlc3RyaWN0aW9uc0BNZWRp
YVNlc3Npb25NYW5hZ2VyQFdlYkNvcmVAQFFBRUlXNE1lZGlhVHlwZUBNZWRpYVNlc3Npb25AMkBA
WiwgP3Jlc3RyaWN0aW9uc0BNZWRpYVNlc3Npb25NYW5hZ2VyQFdlYkNvcmVAQFFFQUFJVzRNZWRp
YVR5cGVATWVkaWFTZXNzaW9uQDJAQFopCi0gICAgICAgIHN5bWJvbFdpdGhQb2ludGVyKD9hcHBs
aWNhdGlvbldpbGxFbnRlckZvcmVncm91bmRATWVkaWFTZXNzaW9uTWFuYWdlckBXZWJDb3JlQEBR
QkVYWFosID9hcHBsaWNhdGlvbldpbGxFbnRlckZvcmVncm91bmRATWVkaWFTZXNzaW9uTWFuYWdl
ckBXZWJDb3JlQEBRQkVYWFopCi0gICAgICAgIHN5bWJvbFdpdGhQb2ludGVyKD9hcHBsaWNhdGlv
bldpbGxFbnRlckJhY2tncm91bmRATWVkaWFTZXNzaW9uTWFuYWdlckBXZWJDb3JlQEBRQkVYWFos
ID9hcHBsaWNhdGlvbldpbGxFbnRlckJhY2tncm91bmRATWVkaWFTZXNzaW9uTWFuYWdlckBXZWJD
b3JlQEBRQkVYWFopCiAgICAgICAgID9sb2NhbFVzZXJTcGVjaWZpY1N0b3JhZ2VEaXJlY3RvcnlA
V2ViQ29yZUBAWUE/QVZTdHJpbmdAV1RGQEBYWgogICAgICAgICBzeW1ib2xXaXRoUG9pbnRlcig/
bmFtZWRJdGVtQFN0YXRpY05vZGVMaXN0QFdlYkNvcmVAQFVCRVBBVk5vZGVAMkBBQlZBdG9taWNT
dHJpbmdAV1RGQEBAWiwgP25hbWVkSXRlbUBTdGF0aWNOb2RlTGlzdEBXZWJDb3JlQEBVRUJBUEVB
Vk5vZGVAMkBBRUJWQXRvbWljU3RyaW5nQFdURkBAQFopCiAgICAgICAgID9udW1iZXJAU3RyaW5n
QFdURkBAU0E/QVYxMkBfSkBaCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cgYi9M
YXlvdXRUZXN0cy9DaGFuZ2VMb2cKaW5kZXggOGUxMDc2OTc1NTFjYWVlMGU4NDZmMGVlMzk3NTk4
NjViZTI3Y2E0ZS4uOTUyNmIyNTg3NDkxNzVmNzE2MjhhYmE3NjUwNGNiMWY4ZDQwY2UwMSAxMDA2
NDQKLS0tIGEvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCisrKyBiL0xheW91dFRlc3RzL0NoYW5nZUxv
ZwpAQCAtMSwzICsxLDIxIEBACisyMDE0LTAyLTA0ICBDb21taXQgUXVldWUgIDxjb21taXQtcXVl
dWVAd2Via2l0Lm9yZz4KKworICAgICAgICBVbnJldmlld2VkLCByb2xsaW5nIG91dCByMTYzMzc2
LgorICAgICAgICBodHRwOi8vdHJhYy53ZWJraXQub3JnL2NoYW5nZXNldC8xNjMzNzYKKyAgICAg
ICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTEyODE4NAorCisgICAg
ICAgIFVuZXhwZWN0ZWQgdGVzdCBmYWlsdXJlcy4gKFJlcXVlc3RlZCBieSBlcmljX2Nhcmxzb24g
b24KKyAgICAgICAgI3dlYmtpdCkuCisKKyAgICAgICAgKiBtZWRpYS92aWRlby1iYWNrZ3JvdW5k
LXBsYXliYWNrLWV4cGVjdGVkLnR4dDogUmVtb3ZlZC4KKyAgICAgICAgKiBtZWRpYS92aWRlby1i
YWNrZ3JvdW5kLXBsYXliYWNrLmh0bWw6IFJlbW92ZWQuCisgICAgICAgICogbWVkaWEvdmlkZW8t
aW50ZXJydXB0aW9uLWFjdGl2ZS13aGVuLWVsZW1lbnQtY3JlYXRlZC1leHBlY3RlZC50eHQ6IENv
cGllZCBmcm9tIExheW91dFRlc3RzL21lZGlhL3ZpZGVvLWludGVycnVwdGlvbi13aXRoLXJlc3Vt
ZS1hbGxvd2luZy1wbGF5LWV4cGVjdGVkLnR4dC4KKyAgICAgICAgKiBtZWRpYS92aWRlby1pbnRl
cnJ1cHRpb24tYWN0aXZlLXdoZW4tZWxlbWVudC1jcmVhdGVkLmh0bWw6IENvcGllZCBmcm9tIExh
eW91dFRlc3RzL21lZGlhL3ZpZGVvLWludGVycnVwdGlvbi13aXRoLXJlc3VtZS1ub3QtYWxsb3dp
bmctcGxheS5odG1sLgorICAgICAgICAqIG1lZGlhL3ZpZGVvLWludGVycnVwdGlvbi13aXRoLXJl
c3VtZS1hbGxvd2luZy1wbGF5LWV4cGVjdGVkLnR4dDoKKyAgICAgICAgKiBtZWRpYS92aWRlby1p
bnRlcnJ1cHRpb24td2l0aC1yZXN1bWUtYWxsb3dpbmctcGxheS5odG1sOgorICAgICAgICAqIG1l
ZGlhL3ZpZGVvLWludGVycnVwdGlvbi13aXRoLXJlc3VtZS1ub3QtYWxsb3dpbmctcGxheS1leHBl
Y3RlZC50eHQ6CisgICAgICAgICogbWVkaWEvdmlkZW8taW50ZXJydXB0aW9uLXdpdGgtcmVzdW1l
LW5vdC1hbGxvd2luZy1wbGF5Lmh0bWw6CisKIDIwMTQtMDItMDQgIEVyaWMgQ2FybHNvbiAgPGVy
aWMuY2FybHNvbkBhcHBsZS5jb20+CiAKICAgICAgICAgUmVmaW5lIE1lZGlhU2Vzc2lvbiBpbnRl
cnJ1cHRpb25zCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9tZWRpYS92aWRlby1iYWNrZ3JvdW5k
LXBsYXliYWNrLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL21lZGlhL3ZpZGVvLWJhY2tncm91
bmQtcGxheWJhY2stZXhwZWN0ZWQudHh0CmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCBk
Y2NhMDZiNDFlMzNkYWMxMThhYjJmZGQ1YzQ5Y2RmZGVmNmY5ODE3Li4wMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwCi0tLSBhL0xheW91dFRlc3RzL21lZGlhL3ZpZGVvLWJh
Y2tncm91bmQtcGxheWJhY2stZXhwZWN0ZWQudHh0CisrKyAvZGV2L251bGwKQEAgLTEsMzMgKzAs
MCBAQAotICAKLVRlc3Qgc3dpdGNoaW5nIGFwcGxpY2F0aW9uIHN0YXRlIHdoZW4gPHZpZGVvPiBp
cyBub3QgYWxsb3dlZCB0byBwbGF5IGluIGJhY2tncm91bmQuCi0KLVJVTihpbnRlcm5hbHMuc2V0
TWVkaWFTZXNzaW9uUmVzdHJpY3Rpb25zKCd2aWRlbycsICdCYWNrZ3JvdW5kUGxheWJhY2tOb3RQ
ZXJtaXR0ZWQnKSkKLQotRVZFTlQoY2FucGxheXRocm91Z2gpCi1FVkVOVChjYW5wbGF5dGhyb3Vn
aCkKLQotUlVOKGF1ZGlvLnBsYXkoKSkKLVJVTih2aWRlby5wbGF5KCkpCi1FVkVOVChwbGF5aW5n
KQotRVZFTlQocGxheWluZykKLQotKiogU2ltdWxhdGUgc3dpdGNoIHRvIGJhY2tncm91bmQsIHZp
ZGVvIHNob3VsZCBwYXVzZS4KLVJVTihpbnRlcm5hbHMuYXBwbGljYXRpb25XaWxsRW50ZXJCYWNr
Z3JvdW5kKCkpCi0KLUVWRU5UKHBhdXNlKQotCi0qKiAxMDBtcyB0aW1lciBmaXJlZC4uLgotRVhQ
RUNURUQgKHZpZGVvLnBhdXNlZCA9PSAndHJ1ZScpIE9LCi1FWFBFQ1RFRCAoYXVkaW8ucGF1c2Vk
ID09ICdmYWxzZScpIE9LCi0KLSoqIFNpbXVsYXRlIHN3aXRjaCBiYWNrIHRvIGZvcmVncm91bmQs
IHZpZGVvIHNob3VsZCByZXN1bWUuCi1SVU4oaW50ZXJuYWxzLmFwcGxpY2F0aW9uV2lsbEVudGVy
Rm9yZWdyb3VuZCgpKQotCi1FVkVOVChwbGF5aW5nKQotCi0qKiAxMDBtcyB0aW1lciBmaXJlZC4u
LgotRVhQRUNURUQgKHZpZGVvLnBhdXNlZCA9PSAnZmFsc2UnKSBPSwotRVhQRUNURUQgKGF1ZGlv
LnBhdXNlZCA9PSAnZmFsc2UnKSBPSwotCi1FTkQgT0YgVEVTVAotCmRpZmYgLS1naXQgYS9MYXlv
dXRUZXN0cy9tZWRpYS92aWRlby1iYWNrZ3JvdW5kLXBsYXliYWNrLmh0bWwgYi9MYXlvdXRUZXN0
cy9tZWRpYS92aWRlby1iYWNrZ3JvdW5kLXBsYXliYWNrLmh0bWwKZGVsZXRlZCBmaWxlIG1vZGUg
MTAwNjQ0CmluZGV4IDc2OTJiMmU3ODE4YWExMmVmYTM1MGMwMWU4NmI1MWUwMzM4ZDhmZWMuLjAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAKLS0tIGEvTGF5b3V0VGVzdHMv
bWVkaWEvdmlkZW8tYmFja2dyb3VuZC1wbGF5YmFjay5odG1sCisrKyAvZGV2L251bGwKQEAgLTEs
OTMgKzAsMCBAQAotPGh0bWw+Ci0gICAgPGhlYWQ+Ci0gICAgICAgIDxzY3JpcHQgc3JjPW1lZGlh
LWZpbGUuanM+PC9zY3JpcHQ+Ci0gICAgICAgIDxzY3JpcHQgc3JjPXZpZGVvLXRlc3QuanM+PC9z
Y3JpcHQ+Ci0gICAgICAgIDxzY3JpcHQ+Ci0gICAgICAgICAgICB2YXIgcGxheUNvdW50ID0gMDsK
LSAgICAgICAgICAgIHZhciBwbGF5VGhyb3VnaENvdW50ID0gMDsKLSAgICAgICAgICAgIHZhciBz
dGF0ZSA9IDA7Ci0gICAgICAgICAgICB2YXIgYXVkaW87Ci0gICAgICAgICAgICB2YXIgdmlkZW8K
LQotICAgICAgICAgICAgZnVuY3Rpb24gbG9nRXZlbnQoZXZ0KQotICAgICAgICAgICAgewotICAg
ICAgICAgICAgICAgIGNvbnNvbGVXcml0ZSgiRVZFTlQoIiArIGV2dC50eXBlICsgIikiKTsKLSAg
ICAgICAgICAgIH0KLQotICAgICAgICAgICAgZnVuY3Rpb24gY2hlY2tTdGF0ZSgpCi0gICAgICAg
ICAgICB7Ci0gICAgICAgICAgICAgICAgY29uc29sZVdyaXRlKCI8YnI+KiogMTAwbXMgdGltZXIg
ZmlyZWQuLi4iKTsKLSAgICAgICAgICAgICAgICBzd2l0Y2ggKHN0YXRlKSB7Ci0gICAgICAgICAg
ICAgICAgY2FzZSAiYmFja2dyb3VuZCI6Ci0gICAgICAgICAgICAgICAgICAgIHRlc3RFeHBlY3Rl
ZCgidmlkZW8ucGF1c2VkIiwgdHJ1ZSk7Ci0gICAgICAgICAgICAgICAgICAgIHRlc3RFeHBlY3Rl
ZCgiYXVkaW8ucGF1c2VkIiwgZmFsc2UpOwotICAgICAgICAgICAgICAgICAgICBzdGF0ZSA9ICJm
b3JlZ3JvdW5kIjsKLSAgICAgICAgICAgICAgICAgICAgY29uc29sZVdyaXRlKCI8YnI+KiogU2lt
dWxhdGUgc3dpdGNoIGJhY2sgdG8gZm9yZWdyb3VuZCwgdmlkZW8gc2hvdWxkIHJlc3VtZS4iKTsK
LSAgICAgICAgICAgICAgICAgICAgcnVuKCJpbnRlcm5hbHMuYXBwbGljYXRpb25XaWxsRW50ZXJG
b3JlZ3JvdW5kKCkiKTsKLSAgICAgICAgICAgICAgICAgICAgc2V0VGltZW91dChjaGVja1N0YXRl
LCAxMDApOwotICAgICAgICAgICAgICAgICAgICBjb25zb2xlV3JpdGUoIiIpOwotICAgICAgICAg
ICAgICAgICAgICBicmVhazsKLSAgICAgICAgICAgICAgICBjYXNlICJmb3JlZ3JvdW5kIjoKLSAg
ICAgICAgICAgICAgICAgICAgdGVzdEV4cGVjdGVkKCJ2aWRlby5wYXVzZWQiLCBmYWxzZSk7Ci0g
ICAgICAgICAgICAgICAgICAgIHRlc3RFeHBlY3RlZCgiYXVkaW8ucGF1c2VkIiwgZmFsc2UpOwot
ICAgICAgICAgICAgICAgICAgICBjb25zb2xlV3JpdGUoIiIpOwotICAgICAgICAgICAgICAgICAg
ICBlbmRUZXN0KCk7Ci0gICAgICAgICAgICAgICAgICAgIGJyZWFrOwotICAgICAgICAgICAgICAg
IH0KLSAgICAgICAgICAgIH0KLQotICAgICAgICAgICAgZnVuY3Rpb24gcGxheWluZyhldnQpCi0g
ICAgICAgICAgICB7Ci0gICAgICAgICAgICAgICAgbG9nRXZlbnQoZXZ0KTsKLSAgICAgICAgICAg
ICAgICBpZiAoKytwbGF5Q291bnQgIT0gMikKLSAgICAgICAgICAgICAgICAgICAgcmV0dXJuOwot
Ci0gICAgICAgICAgICAgICAgY29uc29sZVdyaXRlKCI8YnI+KiogU2ltdWxhdGUgc3dpdGNoIHRv
IGJhY2tncm91bmQsIHZpZGVvIHNob3VsZCBwYXVzZS4iKTsKLSAgICAgICAgICAgICAgICBydW4o
ImludGVybmFscy5hcHBsaWNhdGlvbldpbGxFbnRlckJhY2tncm91bmQoKSIpOwotICAgICAgICAg
ICAgICAgIHNldFRpbWVvdXQoY2hlY2tTdGF0ZSwgMTAwKTsKLSAgICAgICAgICAgICAgICBzdGF0
ZSA9ICJiYWNrZ3JvdW5kIjsKLSAgICAgICAgICAgICAgICBjb25zb2xlV3JpdGUoIiIpOwotICAg
ICAgICAgICAgfQotCi0gICAgICAgICAgICBmdW5jdGlvbiBjYW5wbGF5dGhyb3VnaChldnQpCi0g
ICAgICAgICAgICB7Ci0gICAgICAgICAgICAgICAgbG9nRXZlbnQoZXZ0KTsKLSAgICAgICAgICAg
ICAgICBpZiAoKytwbGF5VGhyb3VnaENvdW50IDwgMikKLSAgICAgICAgICAgICAgICAgICAgcmV0
dXJuOwotICAgICAgICAgICAgICAgIGNvbnNvbGVXcml0ZSgiIik7Ci0gICAgICAgICAgICAgICAg
cnVuKCJhdWRpby5wbGF5KCkiKTsKLSAgICAgICAgICAgICAgICBydW4oInZpZGVvLnBsYXkoKSIp
OwotICAgICAgICAgICAgfQotCi0gICAgICAgICAgICBmdW5jdGlvbiBzdGFydCgpCi0gICAgICAg
ICAgICB7Ci0gICAgICAgICAgICAgICAgaWYgKCF3aW5kb3cuaW50ZXJuYWxzKSB7Ci0gICAgICAg
ICAgICAgICAgICAgIGZhaWxUZXN0KCdUaGlzIHRlc3QgcmVxdWlyZXMgd2luZG93LmludGVybmFs
cy4nKTsKLSAgICAgICAgICAgICAgICAgICAgcmV0dXJuOwotICAgICAgICAgICAgICAgIH0KLQot
ICAgICAgICAgICAgICAgIHZhciBlbGVtZW50cyA9IGRvY3VtZW50LmdldEVsZW1lbnRzQnlUYWdO
YW1lKCd2aWRlbycpOwotICAgICAgICAgICAgICAgIGZvciAodmFyIGkgPSAwOyBpIDwgZWxlbWVu
dHMubGVuZ3RoOyArK2kpIHsKLSAgICAgICAgICAgICAgICAgICAgZWxlbWVudHNbaV0uYWRkRXZl
bnRMaXN0ZW5lcigiY2FucGxheXRocm91Z2giLCBjYW5wbGF5dGhyb3VnaCk7Ci0gICAgICAgICAg
ICAgICAgICAgIGVsZW1lbnRzW2ldLmFkZEV2ZW50TGlzdGVuZXIoJ3BsYXlpbmcnLCBwbGF5aW5n
KTsKLSAgICAgICAgICAgICAgICAgICAgZWxlbWVudHNbaV0uYWRkRXZlbnRMaXN0ZW5lcigncGF1
c2UnLCBsb2dFdmVudCk7Ci0gICAgICAgICAgICAgICAgfQotICAgICAgICAgICAgICAgIHZpZGVv
ID0gZWxlbWVudHNbMF07Ci0gICAgICAgICAgICAgICAgdmlkZW8uc3JjID0gZmluZE1lZGlhRmls
ZSgidmlkZW8iLCAiY29udGVudC90ZXN0Iik7Ci0KLSAgICAgICAgICAgICAgICBhdWRpbyA9IGVs
ZW1lbnRzWzFdOwotICAgICAgICAgICAgICAgIGF1ZGlvLnNyYyA9IGZpbmRNZWRpYUZpbGUoImF1
ZGlvIiwgImNvbnRlbnQvc2lsZW5jZSIpOwotCi0gICAgICAgICAgICAgICAgcnVuKCJpbnRlcm5h
bHMuc2V0TWVkaWFTZXNzaW9uUmVzdHJpY3Rpb25zKCd2aWRlbycsICdCYWNrZ3JvdW5kUGxheWJh
Y2tOb3RQZXJtaXR0ZWQnKSIpOwotICAgICAgICAgICAgICAgIHN0YXRlID0gImZvcmVncm91bmQi
OwotICAgICAgICAgICAgICAgIGNvbnNvbGVXcml0ZSgiIik7Ci0gICAgICAgICAgICB9Ci0gICAg
ICAgIDwvc2NyaXB0PgotICAgIDwvaGVhZD4KLQotICAgIDxib2R5IG9ubG9hZD0ic3RhcnQoKSI+
Ci0gICAgICAgIDx2aWRlbyBjb250cm9scyBpZD0ib25lIj48L3ZpZGVvPgotICAgICAgICA8dmlk
ZW8gY29udHJvbHMgaWQ9InR3byI+PC92aWRlbz4KLSAgICAgICAgPHA+VGVzdCBzd2l0Y2hpbmcg
YXBwbGljYXRpb24gc3RhdGUgd2hlbiAmbHQ7dmlkZW8mZ3Q7IGlzIG5vdCBhbGxvd2VkIHRvIHBs
YXkgaW4gYmFja2dyb3VuZC48L3A+Ci0gICAgPC9ib2R5PgotPC9odG1sPgpkaWZmIC0tZ2l0IGEv
TGF5b3V0VGVzdHMvbWVkaWEvdmlkZW8taW50ZXJydXB0aW9uLWFjdGl2ZS13aGVuLWVsZW1lbnQt
Y3JlYXRlZC1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9tZWRpYS92aWRlby1pbnRlcnJ1cHRp
b24tYWN0aXZlLXdoZW4tZWxlbWVudC1jcmVhdGVkLWV4cGVjdGVkLnR4dApuZXcgZmlsZSBtb2Rl
IDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi40
MmUwODJjYTM1ZjdhYmQwZGQ4Yzk5YTFlMWViNGUwNTJlYTIzNmZiCi0tLSAvZGV2L251bGwKKysr
IGIvTGF5b3V0VGVzdHMvbWVkaWEvdmlkZW8taW50ZXJydXB0aW9uLWFjdGl2ZS13aGVuLWVsZW1l
bnQtY3JlYXRlZC1leHBlY3RlZC50eHQKQEAgLTAsMCArMSwxNSBAQAorVGVzdCBhIDx2aWRlbz4g
ZWxlbWVudCBjcmF0ZWQgZHVyaW5nIGludGVycnVwdGlvbiBiZWhhdmVzIGNvcnJlY3RseS4KKwor
UlVOKGludGVybmFscy5iZWdpbk1lZGlhU2Vzc2lvbkludGVycnVwdGlvbigpKQorUlVOKHZpZGVv
ID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgndmlkZW8nKSkKK1JVTihkb2N1bWVudC5ib2R5LmFw
cGVuZENoaWxkKHZpZGVvKSkKK0VWRU5UKGNhbnBsYXl0aHJvdWdoKQorCitSVU4odmlkZW8ucGxh
eSgpKQorMTAwbXMgdGltZXIgZmlyZWQuLi4KK0VYUEVDVEVEICh2aWRlby5wYXVzZWQgPT0gJ3Ry
dWUnKSBPSworUlVOKGludGVybmFscy5lbmRNZWRpYVNlc3Npb25JbnRlcnJ1cHRpb24oJ01heVJl
c3VtZVBsYXlpbmcnKSkKK0VWRU5UKHBsYXlpbmcpCisKK0VORCBPRiBURVNUCisKZGlmZiAtLWdp
dCBhL0xheW91dFRlc3RzL21lZGlhL3ZpZGVvLWludGVycnVwdGlvbi1hY3RpdmUtd2hlbi1lbGVt
ZW50LWNyZWF0ZWQuaHRtbCBiL0xheW91dFRlc3RzL21lZGlhL3ZpZGVvLWludGVycnVwdGlvbi1h
Y3RpdmUtd2hlbi1lbGVtZW50LWNyZWF0ZWQuaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRl
eCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi41YzY5YWIwMWQxMjQ3
NmNjNmE5MGIwODc3M2YwMmExMDUwM2E5N2U2Ci0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVz
dHMvbWVkaWEvdmlkZW8taW50ZXJydXB0aW9uLWFjdGl2ZS13aGVuLWVsZW1lbnQtY3JlYXRlZC5o
dG1sCkBAIC0wLDAgKzEsNTYgQEAKKzxodG1sPgorICAgIDxoZWFkPgorICAgICAgICA8c2NyaXB0
IHNyYz1tZWRpYS1maWxlLmpzPjwvc2NyaXB0PgorICAgICAgICA8c2NyaXB0IHNyYz12aWRlby10
ZXN0LmpzPjwvc2NyaXB0PgorICAgICAgICA8c2NyaXB0PgorICAgICAgICAgICAgdmFyIHN0YXRl
ID0gMDsKKworICAgICAgICAgICAgZnVuY3Rpb24gY2hlY2tTdGF0ZSgpCisgICAgICAgICAgICB7
CisgICAgICAgICAgICAgICAgY29uc29sZVdyaXRlKCIxMDBtcyB0aW1lciBmaXJlZC4uLiIpOwor
ICAgICAgICAgICAgICAgIHRlc3RFeHBlY3RlZCgidmlkZW8ucGF1c2VkIiwgdHJ1ZSk7CisgICAg
ICAgICAgICAgICAgc3RhdGUgPSAicmVzdW1pbmciOworICAgICAgICAgICAgICAgIHJ1bigiaW50
ZXJuYWxzLmVuZE1lZGlhU2Vzc2lvbkludGVycnVwdGlvbignTWF5UmVzdW1lUGxheWluZycpIik7
CisgICAgICAgICAgICB9CisKKyAgICAgICAgICAgIGZ1bmN0aW9uIHBsYXlpbmcoKQorICAgICAg
ICAgICAgeworICAgICAgICAgICAgICAgIGlmIChzdGF0ZSAhPSAicmVzdW1pbmciKQorICAgICAg
ICAgICAgICAgIHsKKyAgICAgICAgICAgICAgICAgICAgY29uc29sZVdyaXRlKCIiKTsKKyAgICAg
ICAgICAgICAgICAgICAgZmFpbFRlc3QoIjxiPlBsYXliYWNrIHN0YXJ0ZWQgZHVyaW5nIGludGVy
cnVwdGlvbi48L2I+Iik7CisgICAgICAgICAgICAgICAgICAgIHJldHVybjsKKyAgICAgICAgICAg
ICAgICB9CisKKyAgICAgICAgICAgICAgICBjb25zb2xlV3JpdGUoIiIpOworICAgICAgICAgICAg
ICAgIGVuZFRlc3QoKTsKKyAgICAgICAgICAgIH0KKworICAgICAgICAgICAgZnVuY3Rpb24gY2Fu
cGxheXRocm91Z2goKQorICAgICAgICAgICAgeworICAgICAgICAgICAgICAgIGNvbnNvbGVXcml0
ZSgiIik7CisgICAgICAgICAgICAgICAgcnVuKCJ2aWRlby5wbGF5KCkiKTsKKyAgICAgICAgICAg
ICAgICBzZXRUaW1lb3V0KGNoZWNrU3RhdGUsIDEwMCk7CisgICAgICAgICAgICB9CisKKyAgICAg
ICAgICAgIGZ1bmN0aW9uIHN0YXJ0KCkKKyAgICAgICAgICAgIHsKKyAgICAgICAgICAgICAgICBp
ZiAoIXdpbmRvdy5pbnRlcm5hbHMpIHsKKyAgICAgICAgICAgICAgICAgICAgZmFpbFRlc3QoJ1Ro
aXMgdGVzdCByZXF1aXJlcyB3aW5kb3cuaW50ZXJuYWxzLicpOworICAgICAgICAgICAgICAgICAg
ICByZXR1cm47CisgICAgICAgICAgICAgICAgfQorICAgICAgICAgICAgICAgIHJ1bigiaW50ZXJu
YWxzLmJlZ2luTWVkaWFTZXNzaW9uSW50ZXJydXB0aW9uKCkiKTs7CisgICAgICAgICAgICAgICAg
cnVuKCJ2aWRlbyA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoJ3ZpZGVvJykiKTsKKyAgICAgICAg
ICAgICAgICBydW4oImRvY3VtZW50LmJvZHkuYXBwZW5kQ2hpbGQodmlkZW8pIik7CisgICAgICAg
ICAgICAgICAgd2FpdEZvckV2ZW50KCdjYW5wbGF5dGhyb3VnaCcsIGNhbnBsYXl0aHJvdWdoKTsK
KyAgICAgICAgICAgICAgICB3YWl0Rm9yRXZlbnQoJ3BsYXlpbmcnLCBwbGF5aW5nKTsKKyAgICAg
ICAgICAgICAgICB2aWRlby5zcmMgPSBmaW5kTWVkaWFGaWxlKCJ2aWRlbyIsICJjb250ZW50L3Rl
c3QiKTsKKyAgICAgICAgICAgICAgICBzdGF0ZSA9ICJpbnRlcnJ1cHRlZCI7CisgICAgICAgICAg
ICB9CisgICAgICAgIDwvc2NyaXB0PgorICAgIDwvaGVhZD4KKworICAgIDxib2R5IG9ubG9hZD0i
c3RhcnQoKSI+CisgICAgICAgIDxwPlRlc3QgYSAmbHQ7dmlkZW8mZ3Q7IGVsZW1lbnQgY3JhdGVk
IGR1cmluZyBpbnRlcnJ1cHRpb24gYmVoYXZlcyBjb3JyZWN0bHkuPC9wPgorICAgIDwvYm9keT4K
KzwvaHRtbD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL21lZGlhL3ZpZGVvLWludGVycnVwdGlv
bi13aXRoLXJlc3VtZS1hbGxvd2luZy1wbGF5LWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL21l
ZGlhL3ZpZGVvLWludGVycnVwdGlvbi13aXRoLXJlc3VtZS1hbGxvd2luZy1wbGF5LWV4cGVjdGVk
LnR4dAppbmRleCA3NDdjNzc1ZDQzYmNmNDI2MmI5MmQxYzJhMjE0ODJjYjU2ZjViZjE0Li5iNmI5
MWEyZDQyZTYwYjhmYTI2MWRkMDQ5ZTVkYzJkN2ZmM2M5ZTVlIDEwMDY0NAotLS0gYS9MYXlvdXRU
ZXN0cy9tZWRpYS92aWRlby1pbnRlcnJ1cHRpb24td2l0aC1yZXN1bWUtYWxsb3dpbmctcGxheS1l
eHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvbWVkaWEvdmlkZW8taW50ZXJydXB0aW9uLXdp
dGgtcmVzdW1lLWFsbG93aW5nLXBsYXktZXhwZWN0ZWQudHh0CkBAIC0yLDE4ICsyLDEzIEBACiBU
ZXN0IHRoYXQgcGxheSgpIGR1cmluZyBpbnRlcnJ1cHRpb24gZG9lcyBub3RoaW5nLCBlbmRpbmcg
aW50ZXJydXB0aW9uIGFsbG93cyBwbGF5YmFjayB0byByZXN1bWUuCiAKIEVWRU5UKGNhbnBsYXl0
aHJvdWdoKQotUlVOKHZpZGVvLnBsYXkoKSkKIAotRVZFTlQocGxheWluZykKLUVYUEVDVEVEICh2
aWRlby5wYXVzZWQgPT0gJ2ZhbHNlJykgT0sKIFJVTihpbnRlcm5hbHMuYmVnaW5NZWRpYVNlc3Np
b25JbnRlcnJ1cHRpb24oKSkKLQorUlVOKHZpZGVvLnBsYXkoKSkKIDEwMG1zIHRpbWVyIGZpcmVk
Li4uCiBFWFBFQ1RFRCAodmlkZW8ucGF1c2VkID09ICd0cnVlJykgT0sKIFJVTihpbnRlcm5hbHMu
ZW5kTWVkaWFTZXNzaW9uSW50ZXJydXB0aW9uKCdNYXlSZXN1bWVQbGF5aW5nJykpCi0KIEVWRU5U
KHBsYXlpbmcpCi1FWFBFQ1RFRCAodmlkZW8ucGF1c2VkID09ICdmYWxzZScpIE9LCiAKIEVORCBP
RiBURVNUCiAKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL21lZGlhL3ZpZGVvLWludGVycnVwdGlv
bi13aXRoLXJlc3VtZS1hbGxvd2luZy1wbGF5Lmh0bWwgYi9MYXlvdXRUZXN0cy9tZWRpYS92aWRl
by1pbnRlcnJ1cHRpb24td2l0aC1yZXN1bWUtYWxsb3dpbmctcGxheS5odG1sCmluZGV4IDg1MjEz
ZjAwNWZlODBlM2Q2ZjJjY2QzYmE3MzRiYmUzYTI4Njk1MDQuLjBkYTIxYzgxNzVhOGE3MzQzOThk
NjM0YjkxOGEwM2IxN2MyM2UxNzQgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL21lZGlhL3ZpZGVv
LWludGVycnVwdGlvbi13aXRoLXJlc3VtZS1hbGxvd2luZy1wbGF5Lmh0bWwKKysrIGIvTGF5b3V0
VGVzdHMvbWVkaWEvdmlkZW8taW50ZXJydXB0aW9uLXdpdGgtcmVzdW1lLWFsbG93aW5nLXBsYXku
aHRtbApAQCAtNywzNCArNywzMyBAQAogCiAgICAgICAgICAgICBmdW5jdGlvbiBjaGVja1N0YXRl
KCkKICAgICAgICAgICAgIHsKLSAgICAgICAgICAgICAgICBzd2l0Y2ggKHN0YXRlKSB7Ci0gICAg
ICAgICAgICAgICAgY2FzZSAicGxheWluZyI6Ci0gICAgICAgICAgICAgICAgICAgIHRlc3RFeHBl
Y3RlZCgidmlkZW8ucGF1c2VkIiwgZmFsc2UpOwotICAgICAgICAgICAgICAgICAgICBzdGF0ZSA9
ICJpbnRlcnJ1cHRlZCI7Ci0gICAgICAgICAgICAgICAgICAgIHJ1bigiaW50ZXJuYWxzLmJlZ2lu
TWVkaWFTZXNzaW9uSW50ZXJydXB0aW9uKCkiKTs7Ci0gICAgICAgICAgICAgICAgICAgIHNldFRp
bWVvdXQoY2hlY2tTdGF0ZSwgMTAwKTsKLSAgICAgICAgICAgICAgICAgICAgY29uc29sZVdyaXRl
KCIiKTsKLSAgICAgICAgICAgICAgICAgICAgYnJlYWs7Ci0gICAgICAgICAgICAgICAgY2FzZSAi
aW50ZXJydXB0ZWQiOgotICAgICAgICAgICAgICAgICAgICBjb25zb2xlV3JpdGUoIjEwMG1zIHRp
bWVyIGZpcmVkLi4uIik7Ci0gICAgICAgICAgICAgICAgICAgIHRlc3RFeHBlY3RlZCgidmlkZW8u
cGF1c2VkIiwgdHJ1ZSk7Ci0gICAgICAgICAgICAgICAgICAgIHN0YXRlID0gInJlc3VtaW5nIjsK
LSAgICAgICAgICAgICAgICAgICAgcnVuKCJpbnRlcm5hbHMuZW5kTWVkaWFTZXNzaW9uSW50ZXJy
dXB0aW9uKCdNYXlSZXN1bWVQbGF5aW5nJykiKTsKLSAgICAgICAgICAgICAgICAgICAgY29uc29s
ZVdyaXRlKCIiKTsKLSAgICAgICAgICAgICAgICAgICAgYnJlYWs7Ci0gICAgICAgICAgICAgICAg
Y2FzZSAicmVzdW1pbmciOgotICAgICAgICAgICAgICAgICAgICB0ZXN0RXhwZWN0ZWQoInZpZGVv
LnBhdXNlZCIsIGZhbHNlKTsKKyAgICAgICAgICAgICAgICBjb25zb2xlV3JpdGUoIjEwMG1zIHRp
bWVyIGZpcmVkLi4uIik7CisgICAgICAgICAgICAgICAgdGVzdEV4cGVjdGVkKCJ2aWRlby5wYXVz
ZWQiLCB0cnVlKTsKKyAgICAgICAgICAgICAgICBzdGF0ZSA9ICJyZXN1bWluZyI7CisgICAgICAg
ICAgICAgICAgcnVuKCJpbnRlcm5hbHMuZW5kTWVkaWFTZXNzaW9uSW50ZXJydXB0aW9uKCdNYXlS
ZXN1bWVQbGF5aW5nJykiKTsKKyAgICAgICAgICAgIH0KKworICAgICAgICAgICAgZnVuY3Rpb24g
cGxheWluZygpCisgICAgICAgICAgICB7CisgICAgICAgICAgICAgICAgaWYgKHN0YXRlICE9ICJy
ZXN1bWluZyIpCisgICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAgICBjb25zb2xl
V3JpdGUoIiIpOwotICAgICAgICAgICAgICAgICAgICBlbmRUZXN0KCk7Ci0gICAgICAgICAgICAg
ICAgICAgIGJyZWFrOworICAgICAgICAgICAgICAgICAgICBmYWlsVGVzdCgiPGI+UGxheWJhY2sg
c3RhcnRlZCBkdXJpbmcgaW50ZXJydXB0aW9uLjwvYj4iKTsKKyAgICAgICAgICAgICAgICAgICAg
cmV0dXJuOwogICAgICAgICAgICAgICAgIH0KKworICAgICAgICAgICAgICAgIGNvbnNvbGVXcml0
ZSgiIik7CisgICAgICAgICAgICAgICAgZW5kVGVzdCgpOwogICAgICAgICAgICAgfQogCiAgICAg
ICAgICAgICBmdW5jdGlvbiBjYW5wbGF5dGhyb3VnaCgpCiAgICAgICAgICAgICB7Ci0gICAgICAg
ICAgICAgICAgc3RhdGUgPSAicGxheWluZyI7Ci0gICAgICAgICAgICAgICAgcnVuKCJ2aWRlby5w
bGF5KCkiKTsKICAgICAgICAgICAgICAgICBjb25zb2xlV3JpdGUoIiIpOworCisgICAgICAgICAg
ICAgICAgcnVuKCJpbnRlcm5hbHMuYmVnaW5NZWRpYVNlc3Npb25JbnRlcnJ1cHRpb24oKSIpOzsK
KyAgICAgICAgICAgICAgICBzdGF0ZSA9ICJpbnRlcnJ1cHRlZCI7CisgICAgICAgICAgICAgICAg
cnVuKCJ2aWRlby5wbGF5KCkiKTsKKyAgICAgICAgICAgICAgICBzZXRUaW1lb3V0KGNoZWNrU3Rh
dGUsIDEwMCk7CiAgICAgICAgICAgICB9CiAKICAgICAgICAgICAgIGZ1bmN0aW9uIHN0YXJ0KCkK
QEAgLTQ2LDcgKzQ1LDcgQEAKIAogICAgICAgICAgICAgICAgIGZpbmRNZWRpYUVsZW1lbnQoKTsK
ICAgICAgICAgICAgICAgICB3YWl0Rm9yRXZlbnQoJ2NhbnBsYXl0aHJvdWdoJywgY2FucGxheXRo
cm91Z2gpOwotICAgICAgICAgICAgICAgIHdhaXRGb3JFdmVudCgncGxheWluZycsIGNoZWNrU3Rh
dGUpOworICAgICAgICAgICAgICAgIHdhaXRGb3JFdmVudCgncGxheWluZycsIHBsYXlpbmcpOwog
ICAgICAgICAgICAgICAgIHZpZGVvLnNyYyA9IGZpbmRNZWRpYUZpbGUoInZpZGVvIiwgImNvbnRl
bnQvdGVzdCIpOwogICAgICAgICAgICAgfQogICAgICAgICA8L3NjcmlwdD4KZGlmZiAtLWdpdCBh
L0xheW91dFRlc3RzL21lZGlhL3ZpZGVvLWludGVycnVwdGlvbi13aXRoLXJlc3VtZS1ub3QtYWxs
b3dpbmctcGxheS1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9tZWRpYS92aWRlby1pbnRlcnJ1
cHRpb24td2l0aC1yZXN1bWUtbm90LWFsbG93aW5nLXBsYXktZXhwZWN0ZWQudHh0CmluZGV4IGY5
Mjc2OTdkMjRhNzU2YzBhOWM5NDc3Yjc5NGRkOGJiYTA1ZDlkYzkuLjc3ZjE3ODhkNTQzNWQyNGQ2
NzI5NWI3ZWFkMWQxMGY2YTM4MGVlY2MgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL21lZGlhL3Zp
ZGVvLWludGVycnVwdGlvbi13aXRoLXJlc3VtZS1ub3QtYWxsb3dpbmctcGxheS1leHBlY3RlZC50
eHQKKysrIGIvTGF5b3V0VGVzdHMvbWVkaWEvdmlkZW8taW50ZXJydXB0aW9uLXdpdGgtcmVzdW1l
LW5vdC1hbGxvd2luZy1wbGF5LWV4cGVjdGVkLnR4dApAQCAtMSwxNiArMSwxMyBAQAogCi1UZXN0
IHRoYXQgcGxheWJhY2sgaXMgcGF1c2VkIGJ5IGFuIGludGVycnVwdGlvbiwgYW5kIHRoYXQgZW5k
aW5nIHRoZSBpbnRlcnJ1cHRpb24gZG9lcyBhdXRvbWF0aWNhbGx5IHJlc3VtZSBwbGF5YmFjay4K
K1Rlc3QgdGhhdCBwbGF5KCkgZHVyaW5nIGludGVycnVwdGlvbiBkb2VzIG5vdGhpbmcsIGVuZGlu
ZyBpbnRlcnJ1cHRpb24gZG9lcyBub3QgYWxsb3cgcGxheWJhY2sgdG8gcmVzdW1lLgogCiBFVkVO
VChjYW5wbGF5dGhyb3VnaCkKLVJVTih2aWRlby5wbGF5KCkpCiAKLUVWRU5UKHBsYXlpbmcpCiBS
VU4oaW50ZXJuYWxzLmJlZ2luTWVkaWFTZXNzaW9uSW50ZXJydXB0aW9uKCkpCi0KK1JVTih2aWRl
by5wbGF5KCkpCiAxMDBtcyB0aW1lciBmaXJlZC4uLgogRVhQRUNURUQgKHZpZGVvLnBhdXNlZCA9
PSAndHJ1ZScpIE9LCiBSVU4oaW50ZXJuYWxzLmVuZE1lZGlhU2Vzc2lvbkludGVycnVwdGlvbign
JykpCi0KIDEwMG1zIHRpbWVyIGZpcmVkLi4uCiBFWFBFQ1RFRCAodmlkZW8ucGF1c2VkID09ICd0
cnVlJykgT0sKIApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvbWVkaWEvdmlkZW8taW50ZXJydXB0
aW9uLXdpdGgtcmVzdW1lLW5vdC1hbGxvd2luZy1wbGF5Lmh0bWwgYi9MYXlvdXRUZXN0cy9tZWRp
YS92aWRlby1pbnRlcnJ1cHRpb24td2l0aC1yZXN1bWUtbm90LWFsbG93aW5nLXBsYXkuaHRtbApp
bmRleCBhMjUwYmVlNDU2OWIyOWE2OTJiNjBhZWIyMjkzYjkxMmRiN2M3ZjUyLi5lYTVhMTg4NGNh
MmIyZDU4NjViN2Y0YjgzZWMzMDI2YWM2YjljYTQ4IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9t
ZWRpYS92aWRlby1pbnRlcnJ1cHRpb24td2l0aC1yZXN1bWUtbm90LWFsbG93aW5nLXBsYXkuaHRt
bAorKysgYi9MYXlvdXRUZXN0cy9tZWRpYS92aWRlby1pbnRlcnJ1cHRpb24td2l0aC1yZXN1bWUt
bm90LWFsbG93aW5nLXBsYXkuaHRtbApAQCAtNywxMyArNywxNSBAQAogCiAgICAgICAgICAgICBm
dW5jdGlvbiBwbGF5aW5nKCkKICAgICAgICAgICAgIHsKLSAgICAgICAgICAgICAgICBydW4oImlu
dGVybmFscy5iZWdpbk1lZGlhU2Vzc2lvbkludGVycnVwdGlvbigpIik7OwotICAgICAgICAgICAg
ICAgIHNldFRpbWVvdXQoY2hlY2tTdGF0ZSwgMTAwKTsKKyAgICAgICAgICAgICAgICBpZiAoc3Rh
dGUgPT0gInJlc3VtaW5nIikKKyAgICAgICAgICAgICAgICAgICAgZmFpbFRlc3QoIjxiPlBsYXli
YWNrIHN0YXJ0ZWQgYWZ0ZXIgaW50ZXJydXB0aW9uLjwvYj4iKTsKKyAgICAgICAgICAgICAgICBl
bHNlCisgICAgICAgICAgICAgICAgICAgIGZhaWxUZXN0KCI8Yj5QbGF5YmFjayBzdGFydGVkIGR1
cmluZyBpbnRlcnJ1cHRpb24uPC9iPiIpOwogICAgICAgICAgICAgfQogCiAgICAgICAgICAgICBm
dW5jdGlvbiBjaGVja1N0YXRlKCkKICAgICAgICAgICAgIHsKLSAgICAgICAgICAgICAgICBjb25z
b2xlV3JpdGUoIjxicj4xMDBtcyB0aW1lciBmaXJlZC4uLiIpOworICAgICAgICAgICAgICAgIGNv
bnNvbGVXcml0ZSgiMTAwbXMgdGltZXIgZmlyZWQuLi4iKTsKICAgICAgICAgICAgICAgICB0ZXN0
RXhwZWN0ZWQoInZpZGVvLnBhdXNlZCIsIHRydWUpOwogICAgICAgICAgICAgICAgIHN3aXRjaCAo
c3RhdGUpIHsKICAgICAgICAgICAgICAgICBjYXNlICJpbnRlcnJ1cHRlZCI6CkBAIC0zMCw5ICsz
MiwxMiBAQAogCiAgICAgICAgICAgICBmdW5jdGlvbiBjYW5wbGF5dGhyb3VnaCgpCiAgICAgICAg
ICAgICB7CisgICAgICAgICAgICAgICAgY29uc29sZVdyaXRlKCIiKTsKKworICAgICAgICAgICAg
ICAgIHJ1bigiaW50ZXJuYWxzLmJlZ2luTWVkaWFTZXNzaW9uSW50ZXJydXB0aW9uKCkiKTs7CiAg
ICAgICAgICAgICAgICAgc3RhdGUgPSAiaW50ZXJydXB0ZWQiOwogICAgICAgICAgICAgICAgIHJ1
bigidmlkZW8ucGxheSgpIik7Ci0gICAgICAgICAgICAgICAgY29uc29sZVdyaXRlKCIiKTsKKyAg
ICAgICAgICAgICAgICBzZXRUaW1lb3V0KGNoZWNrU3RhdGUsIDEwMCk7CiAgICAgICAgICAgICB9
CiAKICAgICAgICAgICAgIGZ1bmN0aW9uIHN0YXJ0KCkKQEAgLTUyLDYgKzU3LDYgQEAKIAogICAg
IDxib2R5IG9ubG9hZD0ic3RhcnQoKSI+CiAgICAgICAgIDx2aWRlbyBjb250cm9scyA+PC92aWRl
bz4KLSAgICAgICAgPHA+VGVzdCB0aGF0IHBsYXliYWNrIGlzIHBhdXNlZCBieSBhbiBpbnRlcnJ1
cHRpb24sIGFuZCB0aGF0IGVuZGluZyB0aGUgaW50ZXJydXB0aW9uIGRvZXMgYXV0b21hdGljYWxs
eSByZXN1bWUgcGxheWJhY2suPC9wPgorICAgICAgICA8cD5UZXN0IHRoYXQgcGxheSgpIGR1cmlu
ZyBpbnRlcnJ1cHRpb24gZG9lcyBub3RoaW5nLCBlbmRpbmcgaW50ZXJydXB0aW9uIGRvZXMgbm90
IGFsbG93IHBsYXliYWNrIHRvIHJlc3VtZS48L3A+CiAgICAgPC9ib2R5PgogPC9odG1sPgo=
</data>

          </attachment>
      

    </bug>

</bugzilla>