<?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>173563</bug_id>
          
          <creation_ts>2017-06-19 14:25:15 -0700</creation_ts>
          <short_desc>REGRESSION(r218505): &quot;It would break internal builds&quot; (Requested by youenn on #webkit).</short_desc>
          <delta_ts>2017-06-19 14:27:10 -0700</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>New Bugs</component>
          <version>WebKit 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>172602</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>youennf</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1320840</commentid>
    <comment_count>0</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2017-06-19 14:25:15 -0700</bug_when>
    <thetext>http://trac.webkit.org/changeset/218505 broke the build:
&quot;It would break internal builds&quot; (Requested by youenn 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>1320843</commentid>
    <comment_count>1</comment_count>
      <attachid>313332</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2017-06-19 14:25:23 -0700</bug_when>
    <thetext>Created attachment 313332
ROLLOUT of r218505

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>1320845</commentid>
    <comment_count>2</comment_count>
      <attachid>313332</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2017-06-19 14:27:08 -0700</bug_when>
    <thetext>Comment on attachment 313332
ROLLOUT of r218505

Clearing flags on attachment: 313332

Committed r218510: &lt;http://trac.webkit.org/changeset/218510&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1320846</commentid>
    <comment_count>3</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2017-06-19 14:27:10 -0700</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>313332</attachid>
            <date>2017-06-19 14:25:23 -0700</date>
            <delta_ts>2017-06-19 14:27:08 -0700</delta_ts>
            <desc>ROLLOUT of r218505</desc>
            <filename>bug-173563-20170619172522.patch</filename>
            <type>text/plain</type>
            <size>24722</size>
            <attacher name="WebKit Commit Bot">commit-queue</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjE4NTA5CmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0
eS9saWJ3ZWJydGMvQ2hhbmdlTG9nIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL0NoYW5n
ZUxvZwppbmRleCA5NDdiYjZmYmViZTA2YjAxNzEwNTEyZDkzZGQ4M2JhYTIzODU4ODkyLi41NGY2
N2YzMzQ1NmI2ZjBhNjljNzcyZWY1YTFhYmI1OGNjZjVlMGU2IDEwMDY0NAotLS0gYS9Tb3VyY2Uv
VGhpcmRQYXJ0eS9saWJ3ZWJydGMvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xp
YndlYnJ0Yy9DaGFuZ2VMb2cKQEAgLTEsMyArMSwxOCBAQAorMjAxNy0wNi0xOSAgQ29tbWl0IFF1
ZXVlICA8Y29tbWl0LXF1ZXVlQHdlYmtpdC5vcmc+CisKKyAgICAgICAgVW5yZXZpZXdlZCwgcm9s
bGluZyBvdXQgcjIxODUwNS4KKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19i
dWcuY2dpP2lkPTE3MzU2MworCisgICAgICAgICJJdCB3b3VsZCBicmVhayBpbnRlcm5hbCBidWls
ZHMiIChSZXF1ZXN0ZWQgYnkgeW91ZW5uIG9uCisgICAgICAgICN3ZWJraXQpLgorCisgICAgICAg
IFJldmVydGVkIGNoYW5nZXNldDoKKworICAgICAgICAiW1dlYlJUQ10gUHJldmVudCBjYXB0dXJp
bmcgYXQgdW5jb252ZW50aW9uYWwgcmVzb2x1dGlvbnMgd2hlbgorICAgICAgICB1c2luZyB0aGUg
U1cgZW5jb2RlciBvbiBNYWMiCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3df
YnVnLmNnaT9pZD0xNzI2MDIKKyAgICAgICAgaHR0cDovL3RyYWMud2Via2l0Lm9yZy9jaGFuZ2Vz
ZXQvMjE4NTA1CisKIDIwMTctMDYtMTkgIFlvdWVubiBGYWJsZXQgIDx5b3Vlbm5AYXBwbGUuY29t
PgogCiAgICAgICAgIFtXZWJSVENdIFByZXZlbnQgY2FwdHVyaW5nIGF0IHVuY29udmVudGlvbmFs
IHJlc29sdXRpb25zIHdoZW4gdXNpbmcgdGhlIFNXIGVuY29kZXIgb24gTWFjCmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5k
ZXggN2JlZWI4ZTJiMWIyZWE3ZWIyYjg2ZWQ1M2RiMjIyZTU3MDI4MjdiYy4uMDQzM2IzMzFmOWQ4
ODYxYTc0NTI2MGNhMzJkMDQ4MWZmMTQwMWJlZSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUv
Q2hhbmdlTG9nCisrKyBiL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE4IEBA
CisyMDE3LTA2LTE5ICBDb21taXQgUXVldWUgIDxjb21taXQtcXVldWVAd2Via2l0Lm9yZz4KKwor
ICAgICAgICBVbnJldmlld2VkLCByb2xsaW5nIG91dCByMjE4NTA1LgorICAgICAgICBodHRwczov
L2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTczNTYzCisKKyAgICAgICAgIkl0IHdv
dWxkIGJyZWFrIGludGVybmFsIGJ1aWxkcyIgKFJlcXVlc3RlZCBieSB5b3Vlbm4gb24KKyAgICAg
ICAgI3dlYmtpdCkuCisKKyAgICAgICAgUmV2ZXJ0ZWQgY2hhbmdlc2V0OgorCisgICAgICAgICJb
V2ViUlRDXSBQcmV2ZW50IGNhcHR1cmluZyBhdCB1bmNvbnZlbnRpb25hbCByZXNvbHV0aW9ucyB3
aGVuCisgICAgICAgIHVzaW5nIHRoZSBTVyBlbmNvZGVyIG9uIE1hYyIKKyAgICAgICAgaHR0cHM6
Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE3MjYwMgorICAgICAgICBodHRwOi8v
dHJhYy53ZWJraXQub3JnL2NoYW5nZXNldC8yMTg1MDUKKwogMjAxNy0wNi0xOSAgWmFsYW4gQnVq
dGFzICA8emFsYW5AYXBwbGUuY29tPgogCiAgICAgICAgIE9wZW5pbmcgY2VydGFpbiBtYWlscyBi
cmluZ3MgdXAgYSBtYWlsIHRoYXQgZ3Jvd3MgaW5kZWZpbml0ZWx5LgpkaWZmIC0tZ2l0IGEvU291
cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS93ZWJydGMvc2RrL29iamMvRnJhbWV3b3Jr
L0NsYXNzZXMvaDI2NF92aWRlb190b29sYm94X2VuY29kZXIuaCBiL1NvdXJjZS9UaGlyZFBhcnR5
L2xpYndlYnJ0Yy9Tb3VyY2Uvd2VicnRjL3Nkay9vYmpjL0ZyYW1ld29yay9DbGFzc2VzL2gyNjRf
dmlkZW9fdG9vbGJveF9lbmNvZGVyLmgKaW5kZXggYjZlZjAzODM3ZmU4YTMzMjQ5ZDAzYTc5ZDgw
N2ViNTM5YWE1MGI4NS4uNTI0ODFlMjVlYWUwYjU0MzM1NzUwZWU1ZTNmY2VmYmQ4NTYzMWZkNyAx
MDA2NDQKLS0tIGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS93ZWJydGMvc2Rr
L29iamMvRnJhbWV3b3JrL0NsYXNzZXMvaDI2NF92aWRlb190b29sYm94X2VuY29kZXIuaAorKysg
Yi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3dlYnJ0Yy9zZGsvb2JqYy9GcmFt
ZXdvcmsvQ2xhc3Nlcy9oMjY0X3ZpZGVvX3Rvb2xib3hfZW5jb2Rlci5oCkBAIC02OSwxMiArNjks
MTIgQEAgY2xhc3MgV0VCUlRDX0RZTElCX0VYUE9SVCBIMjY0VmlkZW9Ub29sYm94RW5jb2RlciA6
IHB1YmxpYyBIMjY0RW5jb2RlciB7CiAgIFNjYWxpbmdTZXR0aW5ncyBHZXRTY2FsaW5nU2V0dGlu
Z3MoKSBjb25zdCBvdmVycmlkZTsKIAogIHByb3RlY3RlZDoKLSAgdmlydHVhbCBpbnQgQ3JlYXRl
Q29tcHJlc3Npb25TZXNzaW9uKFZUQ29tcHJlc3Npb25TZXNzaW9uUmVmJiwgVlRDb21wcmVzc2lv
bk91dHB1dENhbGxiYWNrLCBpbnQzMl90IHdpZHRoLCBpbnQzMl90IGhlaWdodCwgYm9vbCB1c2VI
YXJkd2FyZUFjY2VsZXJhdGVkVmlkZW9FbmNvZGVyID0gdHJ1ZSk7Ci0gIHZvaWQgRGVzdHJveUNv
bXByZXNzaW9uU2Vzc2lvbigpOworICB2aXJ0dWFsIGludCBDcmVhdGVDb21wcmVzc2lvblNlc3Np
b24oVlRDb21wcmVzc2lvblNlc3Npb25SZWYmLCBWVENvbXByZXNzaW9uT3V0cHV0Q2FsbGJhY2ss
IGludDMyX3Qgd2lkdGgsIGludDMyX3QgaGVpZ2h0KTsKIAogIHByaXZhdGU6CiAgIGludCBSZXNl
dENvbXByZXNzaW9uU2Vzc2lvbigpOwogICB2b2lkIENvbmZpZ3VyZUNvbXByZXNzaW9uU2Vzc2lv
bigpOworICB2b2lkIERlc3Ryb3lDb21wcmVzc2lvblNlc3Npb24oKTsKICAgcnRjOjpzY29wZWRf
cmVmcHRyPFZpZGVvRnJhbWVCdWZmZXI+IEdldFNjYWxlZEJ1ZmZlck9uRW5jb2RlKAogICAgICAg
Y29uc3QgcnRjOjpzY29wZWRfcmVmcHRyPFZpZGVvRnJhbWVCdWZmZXI+JiBmcmFtZSk7CiAgIHZv
aWQgU2V0Qml0cmF0ZUJwcyh1aW50MzJfdCBiaXRyYXRlX2Jwcyk7CmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3dlYnJ0Yy9zZGsvb2JqYy9GcmFtZXdvcmsv
Q2xhc3Nlcy9oMjY0X3ZpZGVvX3Rvb2xib3hfZW5jb2Rlci5tbSBiL1NvdXJjZS9UaGlyZFBhcnR5
L2xpYndlYnJ0Yy9Tb3VyY2Uvd2VicnRjL3Nkay9vYmpjL0ZyYW1ld29yay9DbGFzc2VzL2gyNjRf
dmlkZW9fdG9vbGJveF9lbmNvZGVyLm1tCmluZGV4IDZiMmM0OTBmZGY3YTQ4N2U3ZTJlN2QwNTZh
NDI1NjMzY2E5ODVmNDUuLmNiZDFiOTJmMWI2ZGYxMjE5MzJkMTkyMzA0ZTdhODU4ZjA0YzRkN2Eg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2Uvd2VicnRjL3Nk
ay9vYmpjL0ZyYW1ld29yay9DbGFzc2VzL2gyNjRfdmlkZW9fdG9vbGJveF9lbmNvZGVyLm1tCisr
KyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2Uvd2VicnRjL3Nkay9vYmpjL0Zy
YW1ld29yay9DbGFzc2VzL2gyNjRfdmlkZW9fdG9vbGJveF9lbmNvZGVyLm1tCkBAIC01MzMsNyAr
NTMzLDcgQEAgaW50IEgyNjRWaWRlb1Rvb2xib3hFbmNvZGVyOjpSZXNldENvbXByZXNzaW9uU2Vz
c2lvbigpIHsKICAgcmV0dXJuIFdFQlJUQ19WSURFT19DT0RFQ19PSzsKIH0KIAotaW50IEgyNjRW
aWRlb1Rvb2xib3hFbmNvZGVyOjpDcmVhdGVDb21wcmVzc2lvblNlc3Npb24oVlRDb21wcmVzc2lv
blNlc3Npb25SZWYmIGNvbXByZXNzaW9uU2Vzc2lvbiwgVlRDb21wcmVzc2lvbk91dHB1dENhbGxi
YWNrIG91dHB1dENhbGxiYWNrLCBpbnQzMl90IHdpZHRoLCBpbnQzMl90IGhlaWdodCwgYm9vbCB1
c2VIYXJkd2FyZUFjY2VsZXJhdGVkVmlkZW9FbmNvZGVyKSB7CitpbnQgSDI2NFZpZGVvVG9vbGJv
eEVuY29kZXI6OkNyZWF0ZUNvbXByZXNzaW9uU2Vzc2lvbihWVENvbXByZXNzaW9uU2Vzc2lvblJl
ZiYgY29tcHJlc3Npb25TZXNzaW9uLCBWVENvbXByZXNzaW9uT3V0cHV0Q2FsbGJhY2sgb3V0cHV0
Q2FsbGJhY2ssIGludDMyX3Qgd2lkdGgsIGludDMyX3QgaGVpZ2h0KSB7CiAgIC8vIFNldCBzb3Vy
Y2UgaW1hZ2UgYnVmZmVyIGF0dHJpYnV0ZXMuIFRoZXNlIGF0dHJpYnV0ZXMgd2lsbCBiZSBwcmVz
ZW50IG9uCiAgIC8vIGJ1ZmZlcnMgcmV0cmlldmVkIGZyb20gdGhlIGVuY29kZXIncyBwaXhlbCBi
dWZmZXIgcG9vbC4KICAgY29uc3Qgc2l6ZV90IGF0dHJpYnV0ZXNfc2l6ZSA9IDM7CkBAIC01NjYs
NyArNTY2LDcgQEAgaW50IEgyNjRWaWRlb1Rvb2xib3hFbmNvZGVyOjpDcmVhdGVDb21wcmVzc2lv
blNlc3Npb24oVlRDb21wcmVzc2lvblNlc3Npb25SZWYmIGMKIAogI2lmIGRlZmluZWQoV0VCUlRD
X1VTRV9WVEJfSEFSRFdBUkVfRU5DT0RFUikKICAgQ0ZUeXBlUmVmIHNlc3Npb25LZXlzW10gPSB7
a1ZUVmlkZW9FbmNvZGVyU3BlY2lmaWNhdGlvbl9FbmFibGVIYXJkd2FyZUFjY2VsZXJhdGVkVmlk
ZW9FbmNvZGVyfTsKLSAgQ0ZUeXBlUmVmIHNlc3Npb25WYWx1ZXNbXSA9IHt1c2VIYXJkd2FyZUFj
Y2VsZXJhdGVkVmlkZW9FbmNvZGVyID8ga0NGQm9vbGVhblRydWUgOiBrQ0ZCb29sZWFuRmFsc2V9
OworICBDRlR5cGVSZWYgc2Vzc2lvblZhbHVlc1tdID0ge2tDRkJvb2xlYW5UcnVlfTsKICAgQ0ZE
aWN0aW9uYXJ5UmVmIGVuY29kZXJTcGVjaWZpY2F0aW9uID0gaW50ZXJuYWw6OkNyZWF0ZUNGRGlj
dGlvbmFyeShzZXNzaW9uS2V5cywgc2Vzc2lvblZhbHVlcywgMSk7CiAjZWxzZQogICBDRkRpY3Rp
b25hcnlSZWYgZW5jb2RlclNwZWNpZmljYXRpb24gPSBudWxscHRyOwpkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYkNvcmUvTW9kdWxlcy9tZWRpYXN0cmVhbS9DYW52YXNDYXB0dXJlTWVkaWFTdHJlYW1U
cmFjay5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL21lZGlhc3RyZWFtL0NhbnZhc0NhcHR1
cmVNZWRpYVN0cmVhbVRyYWNrLmNwcAppbmRleCAyNDQxY2UzMmEwNTAyZTRmYzQzYTBkMWYxMDA1
YTYzMTMzOWFlNjJhLi41ZTA1YzNlNThkY2Q1MzY3YzllMThlMTQ2MDBmNzM4MmEzY2EwMDRmIDEw
MDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL21lZGlhc3RyZWFtL0NhbnZhc0NhcHR1
cmVNZWRpYVN0cmVhbVRyYWNrLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL21lZGlh
c3RyZWFtL0NhbnZhc0NhcHR1cmVNZWRpYVN0cmVhbVRyYWNrLmNwcApAQCAtMTE1LDggKzExNSw2
IEBAIHZvaWQgQ2FudmFzQ2FwdHVyZU1lZGlhU3RyZWFtVHJhY2s6OlNvdXJjZTo6Y2FudmFzUmVz
aXplZChIVE1MQ2FudmFzRWxlbWVudCYgY2FuCiAKICAgICBtX3NldHRpbmdzLnNldFdpZHRoKG1f
Y2FudmFzLT53aWR0aCgpKTsKICAgICBtX3NldHRpbmdzLnNldEhlaWdodChtX2NhbnZhcy0+aGVp
Z2h0KCkpOwotCi0gICAgc2V0dGluZ3NEaWRDaGFuZ2UoKTsKIH0KIAogdm9pZCBDYW52YXNDYXB0
dXJlTWVkaWFTdHJlYW1UcmFjazo6U291cmNlOjpjYW52YXNDaGFuZ2VkKEhUTUxDYW52YXNFbGVt
ZW50JiBjYW52YXMsIGNvbnN0IEZsb2F0UmVjdCYpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29y
ZS9wbGF0Zm9ybS9tZWRpYXN0cmVhbS9saWJ3ZWJydGMvSDI2NFZpZGVvVG9vbEJveEVuY29kZXIu
aCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL21lZGlhc3RyZWFtL2xpYndlYnJ0Yy9IMjY0Vmlk
ZW9Ub29sQm94RW5jb2Rlci5oCmluZGV4IGIyZjEyYWZiMGU3YzdhOWI2OTkxNWZjZGZhOGRiZTY0
OWZjMWExYTUuLjY5YTVjZjZmODYzMmIyMDIzMDFiMTgxYjI2MDk3OThmMTZmZDBkMTQgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL21lZGlhc3RyZWFtL2xpYndlYnJ0Yy9IMjY0
VmlkZW9Ub29sQm94RW5jb2Rlci5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL21lZGlh
c3RyZWFtL2xpYndlYnJ0Yy9IMjY0VmlkZW9Ub29sQm94RW5jb2Rlci5oCkBAIC0zNSwxMSArMzUs
OSBAQCBuYW1lc3BhY2UgV2ViQ29yZSB7CiBjbGFzcyBIMjY0VmlkZW9Ub29sYm94RW5jb2RlciBm
aW5hbCA6IHB1YmxpYyB3ZWJydGM6OkgyNjRWaWRlb1Rvb2xib3hFbmNvZGVyIHsKIHB1YmxpYzoK
ICAgICBleHBsaWNpdCBIMjY0VmlkZW9Ub29sYm94RW5jb2Rlcihjb25zdCBjcmlja2V0OjpWaWRl
b0NvZGVjJiBjb2RlYykgOiB3ZWJydGM6OkgyNjRWaWRlb1Rvb2xib3hFbmNvZGVyKGNvZGVjKSB7
IH0KLSAgICBXRUJDT1JFX0VYUE9SVCBzdGF0aWMgdm9pZCBzZXRIYXJkd2FyZUVuY29kZXJGb3JX
ZWJSVENBbGxvd2VkKGJvb2wpOwotICAgIHN0YXRpYyBib29sIGhhcmR3YXJlRW5jb2RlckZvcldl
YlJUQ0FsbG93ZWQoKTsKIAogcHJpdmF0ZToKLSAgICBpbnQgQ3JlYXRlQ29tcHJlc3Npb25TZXNz
aW9uKFZUQ29tcHJlc3Npb25TZXNzaW9uUmVmJiwgVlRDb21wcmVzc2lvbk91dHB1dENhbGxiYWNr
LCBpbnQzMl90IHdpZHRoLCBpbnQzMl90IGhlaWdodCwgYm9vbCB1c2VIYXJkd2FyZUFjY2VsZXJh
dGVkVmlkZW9FbmNvZGVyKSBmaW5hbDsKKyAgICBpbnQgQ3JlYXRlQ29tcHJlc3Npb25TZXNzaW9u
KFZUQ29tcHJlc3Npb25TZXNzaW9uUmVmJiwgVlRDb21wcmVzc2lvbk91dHB1dENhbGxiYWNrLCBp
bnQzMl90IHdpZHRoLCBpbnQzMl90IGhlaWdodCkgZmluYWw7CiB9OwogCiB9CmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9tZWRpYXN0cmVhbS9saWJ3ZWJydGMvSDI2NFZpZGVv
VG9vbEJveEVuY29kZXIubW0gYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9tZWRpYXN0cmVhbS9s
aWJ3ZWJydGMvSDI2NFZpZGVvVG9vbEJveEVuY29kZXIubW0KaW5kZXggOGVmOTgyYmQ0Nzk0MWY3
ZTVjYzQyNjU0ZWYzNTFkYjcxOTY2NTU1Mi4uYmZkNGIwOTk4NTViNDliZjA5OGEyNzg2N2FmNTY5
N2Q1MjNiNDYwYSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbWVkaWFzdHJl
YW0vbGlid2VicnRjL0gyNjRWaWRlb1Rvb2xCb3hFbmNvZGVyLm1tCisrKyBiL1NvdXJjZS9XZWJD
b3JlL3BsYXRmb3JtL21lZGlhc3RyZWFtL2xpYndlYnJ0Yy9IMjY0VmlkZW9Ub29sQm94RW5jb2Rl
ci5tbQpAQCAtMjYsOTQgKzI2LDE3IEBACiAjaW5jbHVkZSAiY29uZmlnLmgiCiAjaW5jbHVkZSAi
SDI2NFZpZGVvVG9vbEJveEVuY29kZXIuaCIKIAotI2luY2x1ZGUgIkxvZ2dpbmcuaCIKLQogI2lm
IFVTRShMSUJXRUJSVEMpICYmIFBMQVRGT1JNKENPQ09BKQogCi1uYW1lc3BhY2UgV2ViQ29yZSB7
Ci0KLXN0YXRpYyBib29sIGlzSGFyZHdhcmVFbmNvZGVyRm9yV2ViUlRDQWxsb3dlZCA9IHRydWU7
Ci0KLXZvaWQgSDI2NFZpZGVvVG9vbGJveEVuY29kZXI6OnNldEhhcmR3YXJlRW5jb2RlckZvcldl
YlJUQ0FsbG93ZWQoYm9vbCBhbGxvd2VkKQotewotICAgIGlzSGFyZHdhcmVFbmNvZGVyRm9yV2Vi
UlRDQWxsb3dlZCA9IGFsbG93ZWQ7Ci19Ci0KLWJvb2wgSDI2NFZpZGVvVG9vbGJveEVuY29kZXI6
OmhhcmR3YXJlRW5jb2RlckZvcldlYlJUQ0FsbG93ZWQoKQotewotICAgIHJldHVybiBpc0hhcmR3
YXJlRW5jb2RlckZvcldlYlJUQ0FsbG93ZWQ7Ci19Ci0KLSNpZiBQTEFURk9STShNQUMpICYmIEVO
QUJMRShNQUNfVklERU9fVE9PTEJPWCkKLXN0YXRpYyBpbmxpbmUgYm9vbCBpc1N0YW5kYXJkRnJh
bWVTaXplKGludDMyX3Qgd2lkdGgsIGludDMyX3QgaGVpZ2h0KQotewotICAgIC8vIEZJWE1FOiBF
bnZpc2lvbiByZWxheGluZyB0aGlzIHJ1bGUsIHNvbWV0aGluZyBsaWtlIHdpZHRoIGFuZCBoZWln
aHQgZGl2aWRhYmxlIGJ5IDQgb3IgOCBzaG91bGQgYmUgZ29vZCBlbm91Z2guCi0gICAgaWYgKHdp
ZHRoID09IDEyODApCi0gICAgICAgIHJldHVybiBoZWlnaHQgPT0gNzIwOwotICAgIGlmICh3aWR0
aCA9PSA3MjApCi0gICAgICAgIHJldHVybiBoZWlnaHQgPT0gMTI4MDsKLSAgICBpZiAod2lkdGgg
PT0gOTYwKQotICAgICAgICByZXR1cm4gaGVpZ2h0ID09IDU0MDsKLSAgICBpZiAod2lkdGggPT0g
NTQwKQotICAgICAgICByZXR1cm4gaGVpZ2h0ID09IDk2MDsKLSAgICBpZiAod2lkdGggPT0gNjQw
KQotICAgICAgICByZXR1cm4gaGVpZ2h0ID09IDQ4MDsKLSAgICBpZiAod2lkdGggPT0gNDgwKQot
ICAgICAgICByZXR1cm4gaGVpZ2h0ID09IDY0MDsKLSAgICBpZiAod2lkdGggPT0gMjg4KQotICAg
ICAgICByZXR1cm4gaGVpZ2h0ID09IDM1MjsKLSAgICBpZiAod2lkdGggPT0gMzUyKQotICAgICAg
ICByZXR1cm4gaGVpZ2h0ID09IDI4ODsKLSAgICBpZiAod2lkdGggPT0gMzIwKQotICAgICAgICBy
ZXR1cm4gaGVpZ2h0ID09IDI0MDsKLSAgICBpZiAod2lkdGggPT0gMjQwKQotICAgICAgICByZXR1
cm4gaGVpZ2h0ID09IDMyMDsKLSAgICByZXR1cm4gZmFsc2U7Ci19Ci0jZW5kaWYKLQotfQotCiAj
aWYgRU5BQkxFKE1BQ19WSURFT19UT09MQk9YKSAmJiBVU0UoQVBQTEVfSU5URVJOQUxfU0RLKSAm
JiBfX2hhc19pbmNsdWRlKDxXZWJLaXRBZGRpdGlvbnMvVmlkZW9Ub29sQm94RW5jb2Rlck1hYy5t
bT4pCiAjaW1wb3J0IDxXZWJLaXRBZGRpdGlvbnMvVmlkZW9Ub29sQm94RW5jb2Rlck1hYy5tbT4K
ICNlbHNlCiAKIG5hbWVzcGFjZSBXZWJDb3JlIHsKIAotI2lmIFBMQVRGT1JNKE1BQykgJiYgRU5B
QkxFKE1BQ19WSURFT19UT09MQk9YKQotc3RhdGljIGlubGluZSBib29sIGlzVXNpbmdTb2Z0d2Fy
ZUVuY29kZXIoVlRDb21wcmVzc2lvblNlc3Npb25SZWYmIGNvbXByZXNzaW9uU2Vzc2lvbikKLXsK
LSAgICBDRk51bWJlclJlZiB1c2VIYXJkd2FyZUVuY29kZXJWYWx1ZSA9IG51bGxwdHI7Ci0gICAg
T1NTdGF0dXMgc3RhdHVzR2V0dGVyID0gVlRTZXNzaW9uQ29weVByb3BlcnR5KGNvbXByZXNzaW9u
U2Vzc2lvbiwga1ZUQ29tcHJlc3Npb25Qcm9wZXJ0eUtleV9Vc2luZ0hhcmR3YXJlQWNjZWxlcmF0
ZWRWaWRlb0VuY29kZXIsIG51bGxwdHIsICZ1c2VIYXJkd2FyZUVuY29kZXJWYWx1ZSk7Ci0gICAg
aWYgKHN0YXR1c0dldHRlciB8fCAhdXNlSGFyZHdhcmVFbmNvZGVyVmFsdWUpCi0gICAgICAgIHJl
dHVybiB0cnVlOwotCi0gICAgaW50IHVzZUhhcmR3YXJlRW5jb2RlciA9IDA7Ci0gICAgQ0ZOdW1i
ZXJHZXRWYWx1ZSh1c2VIYXJkd2FyZUVuY29kZXJWYWx1ZSwga0NGTnVtYmVySW50VHlwZSwgJnVz
ZUhhcmR3YXJlRW5jb2Rlcik7Ci0gICAgQ0ZSZWxlYXNlKHVzZUhhcmR3YXJlRW5jb2RlclZhbHVl
KTsKLQotICAgIHJldHVybiB1c2VIYXJkd2FyZUVuY29kZXI7Ci19Ci0jZW5kaWYKLQotaW50IEgy
NjRWaWRlb1Rvb2xib3hFbmNvZGVyOjpDcmVhdGVDb21wcmVzc2lvblNlc3Npb24oVlRDb21wcmVz
c2lvblNlc3Npb25SZWYmIGNvbXByZXNzaW9uU2Vzc2lvbiwgVlRDb21wcmVzc2lvbk91dHB1dENh
bGxiYWNrIG91dHB1dENhbGxiYWNrLCBpbnQzMl90IHdpZHRoLCBpbnQzMl90IGhlaWdodCwgYm9v
bCB1c2VIYXJkd2FyZUFjY2VsZXJhdGVkVmlkZW9FbmNvZGVyKQoraW50IEgyNjRWaWRlb1Rvb2xi
b3hFbmNvZGVyOjpDcmVhdGVDb21wcmVzc2lvblNlc3Npb24oVlRDb21wcmVzc2lvblNlc3Npb25S
ZWYmIGNvbXByZXNzaW9uU2Vzc2lvbiwgVlRDb21wcmVzc2lvbk91dHB1dENhbGxiYWNrIG91dHB1
dENhbGxiYWNrLCBpbnQzMl90IHdpZHRoLCBpbnQzMl90IGhlaWdodCkKIHsKLSAgICBpbnQgcmVz
dWx0ID0gd2VicnRjOjpIMjY0VmlkZW9Ub29sYm94RW5jb2Rlcjo6Q3JlYXRlQ29tcHJlc3Npb25T
ZXNzaW9uKGNvbXByZXNzaW9uU2Vzc2lvbiwgb3V0cHV0Q2FsbGJhY2ssIHdpZHRoLCBoZWlnaHQs
IGhhcmR3YXJlRW5jb2RlckZvcldlYlJUQ0FsbG93ZWQoKSA/IHVzZUhhcmR3YXJlQWNjZWxlcmF0
ZWRWaWRlb0VuY29kZXIgOiBmYWxzZSk7Ci0gICAgaWYgKHJlc3VsdCkKLSAgICAgICAgcmV0dXJu
IHJlc3VsdDsKLQotI2lmIFBMQVRGT1JNKE1BQykgJiYgRU5BQkxFKE1BQ19WSURFT19UT09MQk9Y
KQotICAgIGlmICghaXNVc2luZ1NvZnR3YXJlRW5jb2Rlcihjb21wcmVzc2lvblNlc3Npb24pKQot
ICAgICAgICByZXR1cm4gMDsKLQotICAgIGlmICghaXNTdGFuZGFyZEZyYW1lU2l6ZSh3aWR0aCwg
aGVpZ2h0KSkgewotICAgICAgICBSRUxFQVNFX0xPRyhXZWJSVEMsICJVc2luZyBIMjY0IHNvZnR3
YXJlIGVuY29kZXIgd2l0aCBub24gc3RhbmRhcmQgc2l6ZSBpcyBub3Qgc3VwcG9ydGVkIik7Ci0g
ICAgICAgIERlc3Ryb3lDb21wcmVzc2lvblNlc3Npb24oKTsKLSAgICAgICAgcmV0dXJuIC0xOwot
ICAgIH0KLSAgICBSRUxFQVNFX0xPRyhXZWJSVEMsICJVc2luZyBIMjY0IHNvZnR3YXJlIGVuY29k
ZXIiKTsKLSNlbmRpZgotICAgIHJldHVybiAwOworICAgIHJldHVybiB3ZWJydGM6OkgyNjRWaWRl
b1Rvb2xib3hFbmNvZGVyOjpDcmVhdGVDb21wcmVzc2lvblNlc3Npb24oY29tcHJlc3Npb25TZXNz
aW9uLCBvdXRwdXRDYWxsYmFjaywgd2lkdGgsIGhlaWdodCk7CiB9CiAgICAgCiB9CmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViQ29yZS90ZXN0aW5nL0ludGVybmFscy5jcHAgYi9Tb3VyY2UvV2ViQ29y
ZS90ZXN0aW5nL0ludGVybmFscy5jcHAKaW5kZXggNzU4OWZkMGViOWIyMzY1NDYxMWNmOWU1ZDNj
ZDI1Y2MxODYyYzc4ZS4uOTg1MzIzNDYyYjY0NzQ0MzkwMWJjZDdhMDg2MGNiZTgxZWQ2Y2UzMyAx
MDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvdGVzdGluZy9JbnRlcm5hbHMuY3BwCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL3Rlc3RpbmcvSW50ZXJuYWxzLmNwcApAQCAtMjA5LDEwICsyMDksNiBAQAog
I2luY2x1ZGUgIk1vY2tNZWRpYVBsYXllck1lZGlhU291cmNlLmgiCiAjZW5kaWYKIAotI2lmIFVT
RShMSUJXRUJSVEMpICYmIFBMQVRGT1JNKENPQ09BKQotI2luY2x1ZGUgIkgyNjRWaWRlb1Rvb2xi
b3hFbmNvZGVyLmgiCi0jZW5kaWYKLQogI2lmIFBMQVRGT1JNKE1BQykKICNpbmNsdWRlICJEaWN0
aW9uYXJ5TG9va3VwLmgiCiAjZW5kaWYKQEAgLTQwNDIsMTcgKzQwMzgsNiBAQCB2b2lkIEludGVy
bmFsczo6c2V0UGFnZVZpc2liaWxpdHkoYm9vbCBpc1Zpc2libGUpCiAgICAgcGFnZS5zZXRBY3Rp
dml0eVN0YXRlKHN0YXRlKTsKIH0KIAotI2lmIEVOQUJMRShXRUJfUlRDKQotdm9pZCBJbnRlcm5h
bHM6OnNldEgyNjRIYXJkd2FyZUVuY29kZXJBbGxvd2VkKGJvb2wgYWxsb3dlZCkKLXsKLSNpZiBQ
TEFURk9STShNQUMpCi0gICAgSDI2NFZpZGVvVG9vbGJveEVuY29kZXI6OnNldEhhcmR3YXJlRW5j
b2RlckZvcldlYlJUQ0FsbG93ZWQoYWxsb3dlZCk7Ci0jZWxzZQotICAgIFVOVVNFRF9QQVJBTShh
bGxvd2VkKTsKLSNlbmRpZgotfQotI2VuZGlmCi0KICNpZiBFTkFCTEUoTUVESUFfU1RSRUFNKQog
CiB2b2lkIEludGVybmFsczo6c2V0Q2FtZXJhTWVkaWFTdHJlYW1UcmFja09yaWVudGF0aW9uKE1l
ZGlhU3RyZWFtVHJhY2smIHRyYWNrLCBpbnQgb3JpZW50YXRpb24pCmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViQ29yZS90ZXN0aW5nL0ludGVybmFscy5oIGIvU291cmNlL1dlYkNvcmUvdGVzdGluZy9J
bnRlcm5hbHMuaAppbmRleCA5ODIxZmYyOWM0MjVhZmYzOTgxZThmMDdmMDI2Y2VmMTQ3M2NjZjY3
Li43M2Q5YmY3MDdjZmE2YTlkNDUzYzYzNjg0MGEwZGU4NDNiMzg0YzUzIDEwMDY0NAotLS0gYS9T
b3VyY2UvV2ViQ29yZS90ZXN0aW5nL0ludGVybmFscy5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3Rl
c3RpbmcvSW50ZXJuYWxzLmgKQEAgLTU3OSwxMCArNTc5LDYgQEAgcHVibGljOgogCiAgICAgdm9p
ZCBzZXRQYWdlVmlzaWJpbGl0eShib29sIGlzVmlzaWJsZSk7CiAKLSNpZiBFTkFCTEUoV0VCX1JU
QykKLSAgICB2b2lkIHNldEgyNjRIYXJkd2FyZUVuY29kZXJBbGxvd2VkKGJvb2wgYWxsb3dlZCk7
Ci0jZW5kaWYKLQogI2lmIEVOQUJMRShNRURJQV9TVFJFQU0pCiAgICAgdm9pZCBzZXRDYW1lcmFN
ZWRpYVN0cmVhbVRyYWNrT3JpZW50YXRpb24oTWVkaWFTdHJlYW1UcmFjayYsIGludCBvcmllbnRh
dGlvbik7CiAgICAgRXhjZXB0aW9uT3I8dm9pZD4gc2V0TWVkaWFEZXZpY2VTdGF0ZShjb25zdCBT
dHJpbmcmIGlkLCBjb25zdCBTdHJpbmcmIHByb3BlcnR5LCBib29sIHZhbHVlKTsKZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJDb3JlL3Rlc3RpbmcvSW50ZXJuYWxzLmlkbCBiL1NvdXJjZS9XZWJDb3Jl
L3Rlc3RpbmcvSW50ZXJuYWxzLmlkbAppbmRleCBhMGZmOTQ0NThlYzE3ZDE4ZDI2YjYxNTBiOGI4
NWNjYTg1NzljM2IwLi4yYmIyNzcyYzZiYzg3ZjVkNTFiMmMwYTNkNDUxMjA4NmVmODViN2ZhIDEw
MDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS90ZXN0aW5nL0ludGVybmFscy5pZGwKKysrIGIvU291
cmNlL1dlYkNvcmUvdGVzdGluZy9JbnRlcm5hbHMuaWRsCkBAIC01MzcsNyArNTM3LDYgQEAgZW51
bSBFdmVudFRocm90dGxpbmdCZWhhdmlvciB7CiAKICAgICB2b2lkIHNldFBhZ2VWaXNpYmlsaXR5
KGJvb2xlYW4gaXNWaXNpYmxlKTsKIAotICAgIFtDb25kaXRpb25hbD1XRUJfUlRDXSB2b2lkIHNl
dEgyNjRIYXJkd2FyZUVuY29kZXJBbGxvd2VkKGJvb2xlYW4gYWxsb3dlZCk7CiAgICAgW0NvbmRp
dGlvbmFsPVdFQl9SVENdIHZvaWQgYXBwbHlSb3RhdGlvbkZvck91dGdvaW5nVmlkZW9Tb3VyY2Vz
KFJUQ1BlZXJDb25uZWN0aW9uIGNvbm5lY3Rpb24pOwogCiAgICAgW0NvbmRpdGlvbmFsPU1FRElB
X1NUUkVBTV0gdm9pZCBzZXRDYW1lcmFNZWRpYVN0cmVhbVRyYWNrT3JpZW50YXRpb24oTWVkaWFT
dHJlYW1UcmFjayB0cmFjaywgc2hvcnQgb3JpZW50YXRpb24pOwpkaWZmIC0tZ2l0IGEvTGF5b3V0
VGVzdHMvQ2hhbmdlTG9nIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCmluZGV4IGRmMGQ0MWJmZTY3
YTdkNDcxMjhkNmU3MmE4MTZhZDk1ZjljZWNhMmMuLjI4NmVmOWM3NWVhYTFlZTBjN2MzYmI5Zjlj
YTVlYzYzNmVmN2E1YWUgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL0NoYW5nZUxvZworKysgYi9M
YXlvdXRUZXN0cy9DaGFuZ2VMb2cKQEAgLTEsMyArMSwxOCBAQAorMjAxNy0wNi0xOSAgQ29tbWl0
IFF1ZXVlICA8Y29tbWl0LXF1ZXVlQHdlYmtpdC5vcmc+CisKKyAgICAgICAgVW5yZXZpZXdlZCwg
cm9sbGluZyBvdXQgcjIxODUwNS4KKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hv
d19idWcuY2dpP2lkPTE3MzU2MworCisgICAgICAgICJJdCB3b3VsZCBicmVhayBpbnRlcm5hbCBi
dWlsZHMiIChSZXF1ZXN0ZWQgYnkgeW91ZW5uIG9uCisgICAgICAgICN3ZWJraXQpLgorCisgICAg
ICAgIFJldmVydGVkIGNoYW5nZXNldDoKKworICAgICAgICAiW1dlYlJUQ10gUHJldmVudCBjYXB0
dXJpbmcgYXQgdW5jb252ZW50aW9uYWwgcmVzb2x1dGlvbnMgd2hlbgorICAgICAgICB1c2luZyB0
aGUgU1cgZW5jb2RlciBvbiBNYWMiCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3No
b3dfYnVnLmNnaT9pZD0xNzI2MDIKKyAgICAgICAgaHR0cDovL3RyYWMud2Via2l0Lm9yZy9jaGFu
Z2VzZXQvMjE4NTA1CisKIDIwMTctMDYtMTkgIFlvdWVubiBGYWJsZXQgIDx5b3Vlbm5AYXBwbGUu
Y29tPgogCiAgICAgICAgIFtXZWJSVENdIFByZXZlbnQgY2FwdHVyaW5nIGF0IHVuY29udmVudGlv
bmFsIHJlc29sdXRpb25zIHdoZW4gdXNpbmcgdGhlIFNXIGVuY29kZXIgb24gTWFjCmRpZmYgLS1n
aXQgYS9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9tYWMtd2sxL1Rlc3RFeHBlY3RhdGlvbnMgYi9MYXlv
dXRUZXN0cy9wbGF0Zm9ybS9tYWMtd2sxL1Rlc3RFeHBlY3RhdGlvbnMKaW5kZXggNDcwNGEyM2Zk
Mzg1MmU4NDY2NWRlOGRlY2FlNWFiOTcxYmU3MGY0Ny4uOGVhNjg4NjAxMWZhNGFjODQxYjRlMjE1
ZmNiZjM5ZmQ3YjYyZTEyNSAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvcGxhdGZvcm0vbWFjLXdr
MS9UZXN0RXhwZWN0YXRpb25zCisrKyBiL0xheW91dFRlc3RzL3BsYXRmb3JtL21hYy13azEvVGVz
dEV4cGVjdGF0aW9ucwpAQCAtOTgsNyArOTgsNyBAQCBodHRwL3Rlc3RzL3NzbC9tZWRpYS1zdHJl
YW0KIGltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvd2VicnRjIFsgU2tpcCBdCiB3ZWJy
dGMgWyBTa2lwIF0KIHdlYnJ0Yy9kYXRhY2hhbm5lbCBbIFBhc3MgXQotd2VicnRjL2NhcHR1cmVD
YW52YXMtd2VicnRjLmh0bWwgWyBGYWlsdXJlIFBhc3MgXQord2VicnRjL2NhcHR1cmVDYW52YXMt
d2VicnRjLmh0bWwgWyBQYXNzIF0KIAogIyBUaGVzZSB0ZXN0cyB0ZXN0IHRoZSBTaGFkb3cgRE9N
IGJhc2VkIEhUTUwgZm9ybSB2YWxpZGF0aW9uIFVJIGJ1dCBNYWMgV0sxIGlzIHVzaW5nIG5hdGl2
ZSBkaWFsb2dzIGluc3RlYWQuCiBmYXN0L2Zvcm1zL3ZhbGlkYXRpb24tbWVzc2FnZS1vbi1saXN0
Ym94Lmh0bWwKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL3BsYXRmb3JtL21hYy93ZWJydGMvY2Fw
dHVyZUNhbnZhcy13ZWJydGMtc29mdHdhcmUtZW5jb2Rlci1leHBlY3RlZC50eHQgYi9MYXlvdXRU
ZXN0cy9wbGF0Zm9ybS9tYWMvd2VicnRjL2NhcHR1cmVDYW52YXMtd2VicnRjLXNvZnR3YXJlLWVu
Y29kZXItZXhwZWN0ZWQudHh0CmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCA5MzM0NzA3
MzZkZTdkNzE3MThjODkyYTEzOTM5MjdkZDY5NTM4Y2FlLi4wMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwCi0tLSBhL0xheW91dFRlc3RzL3BsYXRmb3JtL21hYy93ZWJydGMv
Y2FwdHVyZUNhbnZhcy13ZWJydGMtc29mdHdhcmUtZW5jb2Rlci1leHBlY3RlZC50eHQKKysrIC9k
ZXYvbnVsbApAQCAtMSw0ICswLDAgQEAKLSAgIAotCi1QQVNTIGNhcHR1cmVTdHJlYW0gd2l0aCB3
ZWJydGMgCi0KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL3BsYXRmb3JtL21hYy93ZWJydGMvY2Fw
dHVyZUNhbnZhcy13ZWJydGMtc29mdHdhcmUtZW5jb2Rlci5odG1sIGIvTGF5b3V0VGVzdHMvcGxh
dGZvcm0vbWFjL3dlYnJ0Yy9jYXB0dXJlQ2FudmFzLXdlYnJ0Yy1zb2Z0d2FyZS1lbmNvZGVyLmh0
bWwKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDBhNWNlMjU5N2ZhNDhkNTY4MmY1OTky
ZWNjNDEyZGE1NmFlMmMxMDguLjAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAKLS0tIGEvTGF5b3V0VGVzdHMvcGxhdGZvcm0vbWFjL3dlYnJ0Yy9jYXB0dXJlQ2FudmFzLXdl
YnJ0Yy1zb2Z0d2FyZS1lbmNvZGVyLmh0bWwKKysrIC9kZXYvbnVsbApAQCAtMSw5OSArMCwwIEBA
Ci08IURPQ1RZUEUgSFRNTCBQVUJMSUMgIi0vL0lFVEYvL0RURCBIVE1MLy9FTiI+Ci08aHRtbD4K
LSAgICA8aGVhZD4KLSAgICAgICAgPGNhbnZhcyBpZD0iY2FudmFzMCIgd2lkdGg9MzIwcHggaGVp
Z2h0PTI0MHB4PjwvY2FudmFzPgotICAgICAgICA8Y2FudmFzIGlkPSJjYW52YXMxIiB3aWR0aD0x
MDBweCBoZWlnaHQ9MTAwcHg+PC9jYW52YXM+Ci0gICAgICAgIDx2aWRlbyBpZD0idmlkZW8iIGF1
dG9wbGF5IHdpZHRoPTMyMHB4IGhlaWdodD0yNDBweD48L3ZpZGVvPgotICAgICAgICA8Y2FudmFz
IGlkPSJjYW52YXMyIiB3aWR0aD0zMjBweCBoZWlnaHQ9MjQwcHg+PC9jYW52YXM+Ci0gICAgICAg
IDxzY3JpcHQgc3JjPSIuLi8uLi8uLi9yZXNvdXJjZXMvdGVzdGhhcm5lc3MuanMiPjwvc2NyaXB0
PgotICAgICAgICA8c2NyaXB0IHNyYz0iLi4vLi4vLi4vcmVzb3VyY2VzL3Rlc3RoYXJuZXNzcmVw
b3J0LmpzIj48L3NjcmlwdD4KLSAgICAgICAgPHNjcmlwdCBzcmM9Ii4uLy4uLy4uL3dlYnJ0Yy9y
b3V0aW5lcy5qcyI+PC9zY3JpcHQ+Ci0gICAgICAgIDxzY3JpcHQ+Ci0KLWZ1bmN0aW9uIHByaW50
UmVjdGFuZ2xlKGNhbnZhcykKLXsKLSAgICB2YXIgY29udGV4dCA9IGNhbnZhcy5nZXRDb250ZXh0
KCIyZCIpOwotICAgIGNvbnRleHQuZmlsbFN0eWxlID0gY2FudmFzLmNvbG9yOwotICAgIGNvbnRl
eHQuZmlsbFJlY3QoMCwgMCwgMTAwLCAxMDApOwotICAgIHNldFRpbWVvdXQoKCkgPT4gcHJpbnRS
ZWN0YW5nbGUoY2FudmFzKSwgNTApOwotfQotCi1pZiAod2luZG93LmludGVybmFscykKLSAgICBp
bnRlcm5hbHMuc2V0SDI2NEhhcmR3YXJlRW5jb2RlckFsbG93ZWQoZmFsc2UpOwotCi1mdW5jdGlv
biB0ZXN0Q2FudmFzKHRlc3ROYW1lLCBhcnJheTEsIGlzU2FtZSwgY291bnQpCi17Ci0gICAgaWYg
KGNvdW50ID09PSB1bmRlZmluZWQpCi0gICAgICAgIGNvdW50ID0gMDsKLSAgICBjYW52YXMyLmdl
dENvbnRleHQoIjJkIikuZHJhd0ltYWdlKHZpZGVvLCAwICwwKTsKLSAgICBhcnJheTIgPSBjYW52
YXMyLmdldENvbnRleHQoIjJkIikuZ2V0SW1hZ2VEYXRhKDIwLCAyMCwgNjAsIDYwKS5kYXRhOwot
ICAgIHZhciBpc0VxdWFsID0gdHJ1ZTsKLSAgICBmb3IgKHZhciBpbmRleCA9IDA7IGluZGV4IDwg
YXJyYXkxLmxlbmd0aDsgKytpbmRleCkgewotICAgICAgICAvLyBSb3VnaCBjb21wYXJpc29uIHNp
bmNlIHdlIGFyZSBjb21wcmVzc2luZyBkYXRhLgotICAgICAgICAvLyBUaGlzIHRlc3Qgc3RpbGwg
Y2F0Y2hlcyBlcnJvcnMgc2luY2Ugd2UgYXJlIGdvaW5nIGZyb20gZ3JlZW4gdG8gYmx1ZSB0byBy
ZWQuCi0gICAgICAgIGlmIChNYXRoLmFicyhhcnJheTFbaW5kZXhdIC0gYXJyYXkyW2luZGV4XSkg
PiA0MCkgewotICAgICAgICAgICAgaXNFcXVhbCA9IGZhbHNlOwotICAgICAgICAgICAgY29udGlu
dWU7Ci0gICAgICAgIH0KLSAgICB9Ci0gICAgaWYgKGlzRXF1YWwgPT09IGlzU2FtZSkKLSAgICAg
ICAgcmV0dXJuOwotCi0gICAgaWYgKGNvdW50ID09PSAyMCkKLSAgICAgICAgcmV0dXJuIFByb21p
c2UucmVqZWN0KHRlc3ROYW1lICsgIiBmYWlsZWQiKTsKLQotICAgIHJldHVybiB3YWl0Rm9yKDUw
KS50aGVuKCgpID0+IHsKLSAgICAgICAgcmV0dXJuIHRlc3RDYW52YXModGVzdE5hbWUsIGFycmF5
MSwgaXNTYW1lLCArK2NvdW50KTsKLSAgICB9KTsKLX0KLQotdmFyIGNhbnZhczBUcmFjazsKLXZh
ciBzZW5kZXI7Ci1wcm9taXNlX3Rlc3QoKHRlc3QpID0+IHsKLSAgICBjYW52YXMwLmNvbG9yID0g
ImdyZWVuIjsKLSAgICBwcmludFJlY3RhbmdsZShjYW52YXMwKTsKLSAgICByZXR1cm4gbmV3IFBy
b21pc2UoKHJlc29sdmUsIHJlamVjdCkgPT4gewotICAgICAgICBjcmVhdGVDb25uZWN0aW9ucygo
Zmlyc3RDb25uZWN0aW9uKSA9PiB7Ci0gICAgICAgICAgICB2YXIgc3RyZWFtID0gY2FudmFzMC5j
YXB0dXJlU3RyZWFtKCk7Ci0gICAgICAgICAgICBjYW52YXMwVHJhY2sgPSBzdHJlYW0uZ2V0Vmlk
ZW9UcmFja3MoKVswXTsKLSAgICAgICAgICAgIHNlbmRlciA9IGZpcnN0Q29ubmVjdGlvbi5hZGRU
cmFjayhjYW52YXMwVHJhY2ssIHN0cmVhbSk7Ci0gICAgICAgIH0sIChzZWNvbmRDb25uZWN0aW9u
KSA9PiB7Ci0gICAgICAgICAgICBzZWNvbmRDb25uZWN0aW9uLm9udHJhY2sgPSAodHJhY2tFdmVu
dCkgPT4gewotICAgICAgICAgICAgICAgIHJlc29sdmUodHJhY2tFdmVudC5zdHJlYW1zWzBdKTsK
LSAgICAgICAgICAgIH07Ci0gICAgICAgIH0pOwotICAgICAgICBzZXRUaW1lb3V0KCgpID0+IHJl
amVjdCgiVGVzdCB0aW1lZCBvdXQiKSwgNTAwMCk7Ci0gICAgfSkudGhlbigoc3RyZWFtKSA9PiB7
Ci0gICAgICAgIHZpZGVvLnNyY09iamVjdCA9IHN0cmVhbTsKLSAgICAgICAgcmV0dXJuIHZpZGVv
LnBsYXkoKTsKLSAgICB9KS50aGVuKCgpID0+IHsKLSAgICAgICAgcmV0dXJuIHRlc3RDYW52YXMo
InRlc3QxIiwgY2FudmFzMC5nZXRDb250ZXh0KCIyZCIpLmdldEltYWdlRGF0YSgyMCAsMjAsIDYw
LCA2MCkuZGF0YSwgdHJ1ZSk7Ci0gICAgfSkudGhlbigoKSA9PiB7Ci0gICAgICAgIGNhbnZhczEu
Y29sb3IgPSAiYmx1ZSI7Ci0gICAgICAgIHByaW50UmVjdGFuZ2xlKGNhbnZhczEpOwotICAgICAg
ICB2YXIgc3RyZWFtID0gY2FudmFzMS5jYXB0dXJlU3RyZWFtKCk7Ci0gICAgICAgIHJldHVybiBz
ZW5kZXIucmVwbGFjZVRyYWNrKHN0cmVhbS5nZXRWaWRlb1RyYWNrcygpWzBdKTsKLSAgICB9KS50
aGVuKCgpID0+IHsKLSAgICAgICAgcmV0dXJuIHdhaXRGb3IoMjAwKTsKLSAgICB9KS50aGVuKCgp
ID0+IHsKLSAgICAgICAgcmV0dXJuIHRlc3RDYW52YXMoInRlc3QyIiwgY2FudmFzMS5nZXRDb250
ZXh0KCIyZCIpLmdldEltYWdlRGF0YSgyMCAsMjAsIDYwLCA2MCkuZGF0YSwgZmFsc2UpOwotICAg
IH0pLnRoZW4oKCkgPT4gewotICAgICAgICByZXR1cm4gdGVzdENhbnZhcygidGVzdDMiLCBjYW52
YXMwLmdldENvbnRleHQoIjJkIikuZ2V0SW1hZ2VEYXRhKDIwICwyMCwgNjAsIDYwKS5kYXRhLCB0
cnVlKTsKLSAgICB9KS50aGVuKCgpID0+IHsKLSAgICAgICAgcmV0dXJuIHNlbmRlci5yZXBsYWNl
VHJhY2soY2FudmFzMFRyYWNrKTsKLSAgICB9KS50aGVuKCgpID0+IHsKLSAgICAgICAgY2FudmFz
MC5jb2xvciA9ICJyZWQiOwotICAgICAgICAvLyBMZXQncyB3YWl0IGZvciByZWQgY29sb3IgdG8g
YmUgcHJpbnRlZCBvbiBjYW52YXMwCi0gICAgICAgIHJldHVybiB3YWl0Rm9yKDIwMCk7Ci0gICAg
fSkudGhlbigoKSA9PiB7Ci0gICAgICAgIHJldHVybiB0ZXN0Q2FudmFzKCJ0ZXN0NCIsIGNhbnZh
czAuZ2V0Q29udGV4dCgiMmQiKS5nZXRJbWFnZURhdGEoMjAgLDIwLCA2MCwgNjApLmRhdGEsIHRy
dWUpOwotICAgIH0pLmNhdGNoKChlcnJvcikgPT4gewotICAgICAgICBpZiAod2luZG93LmludGVy
bmFscykKLSAgICAgICAgICAgIGludGVybmFscy5zZXRIMjY0SGFyZHdhcmVFbmNvZGVyQWxsb3dl
ZCh0cnVlKTsKLQlyZXR1cm4gUHJvbWlzZS5yZWplY3QoZXJyb3IpOwotICAgIH0pOwotfSwgImNh
cHR1cmVTdHJlYW0gd2l0aCB3ZWJydGMiKTsKLQotICAgICAgICA8L3NjcmlwdD4KLSAgICA8L2hl
YWQ+Ci08L2h0bWw+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy93ZWJydGMvY2FwdHVyZUNhbnZh
cy13ZWJydGMtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvd2VicnRjL2NhcHR1cmVDYW52YXMt
d2VicnRjLWV4cGVjdGVkLnR4dAppbmRleCA3NjE2ZWM3MzUzZmQ1MWM0ZjFmMTBiNzJkMTBiZGNj
NzZhOTRmZDUyLi4zNmU3ZTU4YzllN2YwYzQ1NTA5M2Y0ZDkzZWI2NjFiMzgzOGYwNmVjIDEwMDY0
NAotLS0gYS9MYXlvdXRUZXN0cy93ZWJydGMvY2FwdHVyZUNhbnZhcy13ZWJydGMtZXhwZWN0ZWQu
dHh0CisrKyBiL0xheW91dFRlc3RzL3dlYnJ0Yy9jYXB0dXJlQ2FudmFzLXdlYnJ0Yy1leHBlY3Rl
ZC50eHQKQEAgLTEsOCArMSw3IEBACi0gCisgICAKIAogUEFTUyBTZXR0aW5nIHVwIHRoZSBjb25u
ZWN0aW9uIAogUEFTUyBDaGVja2luZyBjYW52YXMgaXMgZ3JlZW4gCiBQQVNTIENoZWNraW5nIGNh
bnZhcyBpcyByZWQgCiBQQVNTIENoZWNraW5nIGNhbnZhcyBpcyBncmVlbiBhZ2FpbiAKLVBBU1Mg
Q2hlY2tpbmcgY2FudmFzIHNpemUgY2hhbmdlIAogCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy93
ZWJydGMvY2FwdHVyZUNhbnZhcy13ZWJydGMuaHRtbCBiL0xheW91dFRlc3RzL3dlYnJ0Yy9jYXB0
dXJlQ2FudmFzLXdlYnJ0Yy5odG1sCmluZGV4IDI5OGM2YzE2MTVlM2Y0NWExMmViZjY2ODA2NGRi
MWM3MTc0NmUzNDEuLjUwZWE0YjkyNTc5OGYzOTFhYjEwMTZlZDI2ZmZkOWIxOGQ5NjZjZmIgMTAw
NjQ0Ci0tLSBhL0xheW91dFRlc3RzL3dlYnJ0Yy9jYXB0dXJlQ2FudmFzLXdlYnJ0Yy5odG1sCisr
KyBiL0xheW91dFRlc3RzL3dlYnJ0Yy9jYXB0dXJlQ2FudmFzLXdlYnJ0Yy5odG1sCkBAIC0xLDUw
ICsxLDI3IEBACiA8IURPQ1RZUEUgSFRNTCBQVUJMSUMgIi0vL0lFVEYvL0RURCBIVE1MLy9FTiI+
CiA8aHRtbD4KICAgICA8aGVhZD4KLSAgICAgICAgPGNhbnZhcyBpZD0iY2FudmFzMSIgd2lkdGg9
MzIwcHggaGVpZ2h0PTI0MHB4PjwvY2FudmFzPgotICAgICAgICA8dmlkZW8gaWQ9InZpZGVvIiBh
dXRvcGxheT48L3ZpZGVvPgotICAgICAgICA8Y2FudmFzIGlkPSJjYW52YXMyIiB3aWR0aD0zMjBw
eCBoZWlnaHQ9MjQwcHg+PC9jYW52YXM+CisgICAgICAgIDxjYW52YXMgaWQ9ImNhbnZhczEiIHdp
ZHRoPTEwMHB4IGhlaWdodD0xMDBweD48L2NhbnZhcz4KKyAgICAgICAgPHZpZGVvIGlkPSJ2aWRl
byIgYXV0b3BsYXkgd2lkdGg9MTAwcHggaGVpZ2h0PTEwMHB4PjwvdmlkZW8+CisgICAgICAgIDxj
YW52YXMgaWQ9ImNhbnZhczIiIHdpZHRoPTEwMHB4IGhlaWdodD0xMDBweD48L2NhbnZhcz4KICAg
ICAgICAgPHNjcmlwdCBzcmM9Ii4uL3Jlc291cmNlcy90ZXN0aGFybmVzcy5qcyI+PC9zY3JpcHQ+
CiAgICAgICAgIDxzY3JpcHQgc3JjPSIuLi9yZXNvdXJjZXMvdGVzdGhhcm5lc3NyZXBvcnQuanMi
Pjwvc2NyaXB0PgogICAgICAgICA8c2NyaXB0IHNyYyA9InJvdXRpbmVzLmpzIj48L3NjcmlwdD4K
ICAgICAgICAgPHNjcmlwdD4KIAordmFyIGNhbnZhczEgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJ
ZCgiY2FudmFzMSIpOwordmFyIGNhbnZhczIgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiY2Fu
dmFzMiIpOwordmFyIHZpZGVvID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInZpZGVvIik7CisK
IHZhciBjb2xvciA9ICJncmVlbiI7CiBmdW5jdGlvbiBwcmludFJlY3RhbmdsZSgpCiB7CiAgICAg
dmFyIGNvbnRleHQgPSBjYW52YXMxLmdldENvbnRleHQoIjJkIik7CiAgICAgY29udGV4dC5maWxs
U3R5bGUgPSBjb2xvcjsKLSAgICBjb250ZXh0LmZpbGxSZWN0KDAsIDAsIDMyMCwgMjQwKTsKKyAg
ICBjb250ZXh0LmZpbGxSZWN0KDAsIDAsIDEwMCwgMTAwKTsKICAgICBzZXRUaW1lb3V0KHByaW50
UmVjdGFuZ2xlLCA1MCk7CiB9CiAKLWZ1bmN0aW9uIHRlc3RDYW52YXModGVzdE5hbWUsIGFycmF5
MSwgaXNTYW1lLCBjb3VudCkKLXsKLSAgICBpZiAoY291bnQgPT09IHVuZGVmaW5lZCkKLSAgICAg
ICAgY291bnQgPSAwOwotICAgIGNhbnZhczIuZ2V0Q29udGV4dCgiMmQiKS5kcmF3SW1hZ2Uodmlk
ZW8sIDAgLDApOwotICAgIGFycmF5MiA9IGNhbnZhczIuZ2V0Q29udGV4dCgiMmQiKS5nZXRJbWFn
ZURhdGEoMjAsIDIwLCA2MCwgNjApLmRhdGE7Ci0gICAgdmFyIGlzRXF1YWwgPSB0cnVlOwotICAg
IHZhciBpbmRleCA9IDA7Ci0gICAgZm9yIChpbmRleCA9IDA7IGluZGV4IDwgYXJyYXkxLmxlbmd0
aDsgKytpbmRleCkgewotICAgICAgICAvLyBSb3VnaCBjb21wYXJpc29uIHNpbmNlIHdlIGFyZSBj
b21wcmVzc2luZyBkYXRhLgotICAgICAgICAvLyBUaGlzIHRlc3Qgc3RpbGwgY2F0Y2hlcyBlcnJv
cnMgc2luY2Ugd2UgYXJlIGdvaW5nIGZyb20gZ3JlZW4gdG8gYmx1ZSB0byByZWQuCi0gICAgICAg
IGlmIChNYXRoLmFicyhhcnJheTFbaW5kZXhdIC0gYXJyYXkyW2luZGV4XSkgPiA0MCkgewotICAg
ICAgICAgICAgaXNFcXVhbCA9IGZhbHNlOwotICAgICAgICAgICAgY29udGludWU7Ci0gICAgICAg
IH0KLSAgICB9Ci0gICAgaWYgKGlzRXF1YWwgPT09IGlzU2FtZSkKLSAgICAgICAgcmV0dXJuOwot
Ci0gICAgaWYgKGNvdW50ID09PSAyMCkKLSAgICAgICAgcmV0dXJuIFByb21pc2UucmVqZWN0KHRl
c3ROYW1lICsgIiBmYWlsZWQsIGV4cGVjdGVkICIgKyBKU09OLnN0cmluZ2lmeShhcnJheTEpICsg
IiBidXQgZ290ICIgKyBKU09OLnN0cmluZ2lmeShhcnJheTIpKTsKLQotICAgIHJldHVybiB3YWl0
Rm9yKDUwKS50aGVuKCgpID0+IHsKLSAgICAgICAgcmV0dXJuIHRlc3RDYW52YXModGVzdE5hbWUs
IGFycmF5MSwgaXNTYW1lLCArK2NvdW50KTsKLSAgICB9KTsKLX0KLQogcHJvbWlzZV90ZXN0KCh0
ZXN0KSA9PiB7CiAgICAgcHJpbnRSZWN0YW5nbGUoKTsKICAgICByZXR1cm4gbmV3IFByb21pc2Uo
KHJlc29sdmUsIHJlamVjdCkgPT4gewpAQCAtNjksMTQgKzQ2LDE2IEBAIHByb21pc2VfdGVzdCgo
dGVzdCkgPT4gewogCiBwcm9taXNlX3Rlc3QoKHRlc3QpID0+IHsKICAgICByZXR1cm4gd2FpdEZv
cigxMDApLnRoZW4oKCkgPT4gewotICAgICAgICByZXR1cm4gdGVzdENhbnZhcygidGVzdCAxIiwg
Y2FudmFzMS5nZXRDb250ZXh0KCIyZCIpLmdldEltYWdlRGF0YSgyMCwgMjAsIDYwLCA2MCkuZGF0
YSwgdHJ1ZSk7CisgICAgICAgIGNhbnZhczIuZ2V0Q29udGV4dCgiMmQiKS5kcmF3SW1hZ2Uodmlk
ZW8sIDAgLDApOworICAgICAgICBhc3NlcnRfYXJyYXlfZXF1YWxzKGNhbnZhczIuZ2V0Q29udGV4
dCgiMmQiKS5nZXRJbWFnZURhdGEoMjAgLDIwLCA2MCwgNjApLCBjYW52YXMxLmdldENvbnRleHQo
IjJkIikuZ2V0SW1hZ2VEYXRhKDIwLCAyMCwgNjAsIDYwKSk7CiAgICAgfSk7CiB9LCAiQ2hlY2tp
bmcgY2FudmFzIGlzIGdyZWVuIik7CiAKIHByb21pc2VfdGVzdCgodGVzdCkgPT4gewogICAgIGNv
bG9yID0gInJlZCI7CiAgICAgcmV0dXJuIHdhaXRGb3IoMzAwKS50aGVuKCgpID0+IHsKLSAgICAg
ICAgcmV0dXJuIHRlc3RDYW52YXMoInRlc3QgMiIsIGNhbnZhczEuZ2V0Q29udGV4dCgiMmQiKS5n
ZXRJbWFnZURhdGEoMjAsIDIwLCA2MCwgNjApLmRhdGEsIHRydWUpOworICAgICAgICBjYW52YXMy
LmdldENvbnRleHQoIjJkIikuZHJhd0ltYWdlKHZpZGVvLCAwICwwKTsKKyAgICAgICAgYXNzZXJ0
X2FycmF5X2VxdWFscyhjYW52YXMyLmdldENvbnRleHQoIjJkIikuZ2V0SW1hZ2VEYXRhKDIwICwy
MCwgNjAsIDYwKSwgY2FudmFzMS5nZXRDb250ZXh0KCIyZCIpLmdldEltYWdlRGF0YSgyMCwgMjAs
IDYwLCA2MCkpOwogICAgIH0pOwogfSwgIkNoZWNraW5nIGNhbnZhcyBpcyByZWQiKTsKIApAQCAt
ODQsMTUgKzYzLDEwIEBAIHByb21pc2VfdGVzdCgodGVzdCkgPT4gewogcHJvbWlzZV90ZXN0KCh0
ZXN0KSA9PiB7CiAgICAgY29sb3IgPSAiZ3JlZW4iOwogICAgIHJldHVybiB3YWl0Rm9yKDMwMCku
dGhlbigoKSA9PiB7Ci0gICAgICAgIHJldHVybiB0ZXN0Q2FudmFzKCJ0ZXN0IDMiLCBjYW52YXMx
LmdldENvbnRleHQoIjJkIikuZ2V0SW1hZ2VEYXRhKDIwLCAyMCwgNjAsIDYwKS5kYXRhLCB0cnVl
KTsKKyAgICAgICAgY2FudmFzMi5nZXRDb250ZXh0KCIyZCIpLmRyYXdJbWFnZSh2aWRlbywgMCAs
MCk7CisgICAgICAgIGFzc2VydF9hcnJheV9lcXVhbHMoY2FudmFzMi5nZXRDb250ZXh0KCIyZCIp
LmdldEltYWdlRGF0YSgyMCAsMjAsIDYwLCA2MCksIGNhbnZhczEuZ2V0Q29udGV4dCgiMmQiKS5n
ZXRJbWFnZURhdGEoMjAsIDIwLCA2MCwgNjApKTsKICAgICB9KTsKIH0sICJDaGVja2luZyBjYW52
YXMgaXMgZ3JlZW4gYWdhaW4iKTsKLQotcHJvbWlzZV90ZXN0KCh0ZXN0KSA9PiB7Ci0gICAgICAg
IGNhbnZhczEud2lkdGggPSA2NDA7Ci0gICAgICAgIGNhbnZhczEuaGVpZ2h0ID0gNDgwOwotICAg
ICAgICByZXR1cm4gd2FpdEZvclZpZGVvU2l6ZSh2aWRlbywgNjQwLCA0ODApOwotfSwgIkNoZWNr
aW5nIGNhbnZhcyBzaXplIGNoYW5nZSIpOwogICAgICAgICA8L3NjcmlwdD4KICAgICA8L2hlYWQ+
CiA8L2h0bWw+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy93ZWJydGMvcm91dGluZXMuanMgYi9M
YXlvdXRUZXN0cy93ZWJydGMvcm91dGluZXMuanMKaW5kZXggYWJlMzkyMGE5MmE2YTkxZTZiYTMz
NzMyZGNmNTc4MTE4MTE2ODIyNy4uOTU2N2IzODA3ZjcyNzY3NjRjNDVkZWM4OWFkMTdiNzE2N2I4
OTA0MiAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvd2VicnRjL3JvdXRpbmVzLmpzCisrKyBiL0xh
eW91dFRlc3RzL3dlYnJ0Yy9yb3V0aW5lcy5qcwpAQCAtMTQxLDcgKzE0MSw3IEBAIGZ1bmN0aW9u
IHdhaXRGb3JWaWRlb1NpemUodmlkZW8sIHdpZHRoLCBoZWlnaHQsIGNvdW50KQogICAgIGlmIChj
b3VudCA9PT0gdW5kZWZpbmVkKQogICAgICAgICBjb3VudCA9IDA7CiAgICAgaWYgKCsrY291bnQg
PiAyMCkKLSAgICAgICAgcmV0dXJuIFByb21pc2UucmVqZWN0KCJ3YWl0Rm9yVmlkZW9TaXplIHRp
bWVkIG91dCwgZXhwZWN0ZWQgIiArIHdpZHRoICsgIngiKyBoZWlnaHQgKyAiIGJ1dCBnb3QgIiAr
IHZpZGVvLnZpZGVvV2lkdGggKyAieCIgKyB2aWRlby52aWRlb0hlaWdodCk7CisgICAgICAgIHJl
dHVybiBQcm9taXNlLnJlamVjdCgid2FpdEZvclZpZGVvU2l6ZSB0aW1lZCBvdXQiKTsKIAogICAg
IHJldHVybiB3YWl0Rm9yKDUwKS50aGVuKCgpID0+IHsKICAgICAgICAgcmV0dXJuIHdhaXRGb3JW
aWRlb1NpemUodmlkZW8sIHdpZHRoLCBoZWlnaHQsIGNvdW50KTsKZGlmZiAtLWdpdCBhL0xheW91
dFRlc3RzL3dlYnJ0Yy92aWRlby5odG1sIGIvTGF5b3V0VGVzdHMvd2VicnRjL3ZpZGVvLmh0bWwK
aW5kZXggNmQwNjBlNjNjMzA5MDkwY2MwMDlmYmE4ZmFkZTM3ZTJjYzczMDI4Zi4uNzY2YTZkYjgw
Nzg1NDQ5ZjZlMWYyZWU3MmNkNmFmMWIxMDM3ZTYwNiAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMv
d2VicnRjL3ZpZGVvLmh0bWwKKysrIGIvTGF5b3V0VGVzdHMvd2VicnRjL3ZpZGVvLmh0bWwKQEAg
LTQzLDcgKzQzLDcgQEAgcHJvbWlzZV90ZXN0KCh0ZXN0KSA9PiB7CiAgICAgaWYgKHdpbmRvdy50
ZXN0UnVubmVyKQogICAgICAgICB0ZXN0UnVubmVyLnNldFVzZXJNZWRpYVBlcm1pc3Npb24odHJ1
ZSk7CiAKLSAgICByZXR1cm4gbmF2aWdhdG9yLm1lZGlhRGV2aWNlcy5nZXRVc2VyTWVkaWEoe3Zp
ZGVvOiB7YWR2YW5jZWQ6IFt7d2lkdGg6e21pbjoxMjgwfX0sIHtoZWlnaHQ6e21pbjo3MjB9IH0g
XX19KS50aGVuKChzdHJlYW0pID0+IHsKKyAgICByZXR1cm4gbmF2aWdhdG9yLm1lZGlhRGV2aWNl
cy5nZXRVc2VyTWVkaWEoeyB2aWRlbzogdHJ1ZX0pLnRoZW4oKHN0cmVhbSkgPT4gewogICAgICAg
ICByZXR1cm4gbmV3IFByb21pc2UoKHJlc29sdmUsIHJlamVjdCkgPT4gewogICAgICAgICAgICAg
Y3JlYXRlQ29ubmVjdGlvbnMoKGZpcnN0Q29ubmVjdGlvbikgPT4gewogICAgICAgICAgICAgICAg
IHZhciB0cmFjayA9IHN0cmVhbS5nZXRWaWRlb1RyYWNrcygpWzBdOwo=
</data>

          </attachment>
      

    </bug>

</bugzilla>