<?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>71462</bug_id>
          
          <creation_ts>2011-11-03 05:23:23 -0700</creation_ts>
          <short_desc>REGRESSION(r99167): Breaks Win bots (Requested by pfeldman on #webkit).</short_desc>
          <delta_ts>2022-03-01 03:10:31 -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>INVALID</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>71367</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="WebKit Review Bot">webkit.review.bot</reporter>
          <assigned_to name="WebKit Review Bot">webkit.review.bot</assigned_to>
          <cc>pfeldman</cc>
    
    <cc>yurys</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>495373</commentid>
    <comment_count>0</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2011-11-03 05:23:23 -0700</bug_when>
    <thetext>http://trac.webkit.org/changeset/99167 broke the build:
Breaks Win bots (Requested by pfeldman on #webkit).

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

&quot;Only you can prevent forest fires.&quot; -- Smokey the Bear</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>495374</commentid>
    <comment_count>1</comment_count>
      <attachid>113465</attachid>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2011-11-03 05:23:52 -0700</bug_when>
    <thetext>Created attachment 113465
ROLLOUT of r99167

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>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>113465</attachid>
            <date>2011-11-03 05:23:52 -0700</date>
            <delta_ts>2022-03-01 03:10:31 -0800</delta_ts>
            <desc>ROLLOUT of r99167</desc>
            <filename>bug-71462-20111103122412.patch</filename>
            <type>text/plain</type>
            <size>41196</size>
            <attacher name="WebKit Review Bot">webkit.review.bot</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogOTkxNzMKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0
Q29yZS9DaGFuZ2VMb2cgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvQ2hhbmdlTG9nCmluZGV4IDE2
NTAyZmYzOWZkZTk3YWFmZmIyNjcxMWU2MzMyMTY5MjcyODk5Y2MuLjU2NDkzZjYxMjM2NjdjMWUz
NmZkZmMzNDMyMmIzYjYwM2MxNDY5OTggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29y
ZS9DaGFuZ2VMb2cKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwpAQCAtMSwz
ICsxLDI5IEBACisyMDExLTExLTAzICBTaGVyaWZmIEJvdCAgPHdlYmtpdC5yZXZpZXcuYm90QGdt
YWlsLmNvbT4KKworICAgICAgICBVbnJldmlld2VkLCByb2xsaW5nIG91dCByOTkxNjcuCisgICAg
ICAgIGh0dHA6Ly90cmFjLndlYmtpdC5vcmcvY2hhbmdlc2V0Lzk5MTY3CisgICAgICAgIGh0dHBz
Oi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD03MTQ2MgorCisgICAgICAgIEJyZWFr
cyBXaW4gYm90cyAoUmVxdWVzdGVkIGJ5IHBmZWxkbWFuIG9uICN3ZWJraXQpLgorCisgICAgICAg
ICogQVBJL0pTQmFzZS5jcHA6CisgICAgICAgIChKU0V2YWx1YXRlU2NyaXB0KToKKyAgICAgICAg
KEpTQ2hlY2tTY3JpcHRTeW50YXgpOgorICAgICAgICAqIEFQSS9KU09iamVjdFJlZi5jcHA6Cisg
ICAgICAgIChKU09iamVjdE1ha2VGdW5jdGlvbik6CisgICAgICAgICogSmF2YVNjcmlwdENvcmUu
ZXhwOgorICAgICAgICAqIHBhcnNlci9Tb3VyY2VDb2RlLmg6CisgICAgICAgIChKU0M6Om1ha2VT
b3VyY2UpOgorICAgICAgICAqIHBhcnNlci9Tb3VyY2VQcm92aWRlci5oOgorICAgICAgICAoSlND
OjpTb3VyY2VQcm92aWRlcjo6U291cmNlUHJvdmlkZXIpOgorICAgICAgICAoSlNDOjpTb3VyY2VQ
cm92aWRlcjo6c3RhcnRQb3NpdGlvbik6CisgICAgICAgIChKU0M6OlVTdHJpbmdTb3VyY2VQcm92
aWRlcjo6Y3JlYXRlKToKKyAgICAgICAgKEpTQzo6VVN0cmluZ1NvdXJjZVByb3ZpZGVyOjpVU3Ry
aW5nU291cmNlUHJvdmlkZXIpOgorICAgICAgICAqIHJ1bnRpbWUvRnVuY3Rpb25Db25zdHJ1Y3Rv
ci5jcHA6CisgICAgICAgIChKU0M6OmNvbnN0cnVjdEZ1bmN0aW9uKToKKyAgICAgICAgKEpTQzo6
Y29uc3RydWN0RnVuY3Rpb25Ta2lwcGluZ0V2YWxFbmFibGVkQ2hlY2spOgorICAgICAgICAqIHJ1
bnRpbWUvRnVuY3Rpb25Db25zdHJ1Y3Rvci5oOgorCiAyMDExLTExLTAzICBQYXZlbCBGZWxkbWFu
ICA8cGZlbGRtYW5AZ29vZ2xlLmNvbT4KIAogICAgICAgICBXZWIgSW5zcGVjdG9yOiBwcmVzZXJ2
ZSBzY3JpcHQgbG9jYXRpb24gZm9yIGlubGluZSBoYW5kbGVycy4KZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJDb3JlL0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwppbmRleCA4MDgy
MTZhMGExYjEwZTlhYjE2NDNiNDEwMjEwMWI3YzlhNThiNjI1Li5lZTk2ZDgyYTVmYmE2MGUxNTFl
NTNlYmQ1ZGRkOWMxOGI3NTBiNTNhIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VM
b2cKKysrIGIvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMzEgQEAKKzIwMTEt
MTEtMDMgIFNoZXJpZmYgQm90ICA8d2Via2l0LnJldmlldy5ib3RAZ21haWwuY29tPgorCisgICAg
ICAgIFVucmV2aWV3ZWQsIHJvbGxpbmcgb3V0IHI5OTE2Ny4KKyAgICAgICAgaHR0cDovL3RyYWMu
d2Via2l0Lm9yZy9jaGFuZ2VzZXQvOTkxNjcKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5v
cmcvc2hvd19idWcuY2dpP2lkPTcxNDYyCisKKyAgICAgICAgQnJlYWtzIFdpbiBib3RzIChSZXF1
ZXN0ZWQgYnkgcGZlbGRtYW4gb24gI3dlYmtpdCkuCisKKyAgICAgICAgKiBiaW5kaW5ncy9qcy9D
YWNoZWRTY3JpcHRTb3VyY2VQcm92aWRlci5oOgorICAgICAgICAoV2ViQ29yZTo6Q2FjaGVkU2Ny
aXB0U291cmNlUHJvdmlkZXI6OkNhY2hlZFNjcmlwdFNvdXJjZVByb3ZpZGVyKToKKyAgICAgICAg
KiBiaW5kaW5ncy9qcy9KU0xhenlFdmVudExpc3RlbmVyLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6
OkpTTGF6eUV2ZW50TGlzdGVuZXI6OkpTTGF6eUV2ZW50TGlzdGVuZXIpOgorICAgICAgICAoV2Vi
Q29yZTo6SlNMYXp5RXZlbnRMaXN0ZW5lcjo6aW5pdGlhbGl6ZUpTRnVuY3Rpb24pOgorICAgICAg
ICAqIGJpbmRpbmdzL2pzL0pTTGF6eUV2ZW50TGlzdGVuZXIuaDoKKyAgICAgICAgKFdlYkNvcmU6
OkpTTGF6eUV2ZW50TGlzdGVuZXI6OmNyZWF0ZSk6CisgICAgICAgICogYmluZGluZ3MvanMvU2Ny
aXB0Q29udHJvbGxlci5jcHA6CisgICAgICAgIChXZWJDb3JlOjpTY3JpcHRDb250cm9sbGVyOjpl
dmVudEhhbmRsZXJMaW5lTnVtYmVyKToKKyAgICAgICAgKiBiaW5kaW5ncy9qcy9TY3JpcHRDb250
cm9sbGVyLmg6CisgICAgICAgICogYmluZGluZ3MvanMvU2NyaXB0RXZlbnRMaXN0ZW5lci5jcHA6
CisgICAgICAgIChXZWJDb3JlOjpjcmVhdGVBdHRyaWJ1dGVFdmVudExpc3RlbmVyKToKKyAgICAg
ICAgKiBiaW5kaW5ncy9qcy9TY3JpcHRTb3VyY2VQcm92aWRlci5oOgorICAgICAgICAoV2ViQ29y
ZTo6U2NyaXB0U291cmNlUHJvdmlkZXI6OlNjcmlwdFNvdXJjZVByb3ZpZGVyKToKKyAgICAgICAg
KiBiaW5kaW5ncy9qcy9TdHJpbmdTb3VyY2VQcm92aWRlci5oOgorICAgICAgICAoV2ViQ29yZTo6
U3RyaW5nU291cmNlUHJvdmlkZXI6OmNyZWF0ZSk6CisgICAgICAgIChXZWJDb3JlOjpTdHJpbmdT
b3VyY2VQcm92aWRlcjo6c3RhcnRQb3NpdGlvbik6CisgICAgICAgIChXZWJDb3JlOjpTdHJpbmdT
b3VyY2VQcm92aWRlcjo6U3RyaW5nU291cmNlUHJvdmlkZXIpOgorICAgICAgICAoV2ViQ29yZTo6
bWFrZVNvdXJjZSk6CisKIDIwMTEtMTEtMDMgIEtlbm5ldGggUm9oZGUgQ2hyaXN0aWFuc2VuICA8
a2VubmV0aEB3ZWJraXQub3JnPgogCiAgICAgICAgIERpZmZlcmVudGlhdGUgaW1wbGljaXQgdmll
d3BvcnQgZnJvbSB0aGF0IG9mIHRoZSBtZXRhIHRhZwpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFT
Y3JpcHRDb3JlL0FQSS9KU0Jhc2UuY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL0FQSS9KU0Jh
c2UuY3BwCmluZGV4IGVhZmQ4YzYwYmIwMDgxZmUwZGM3NjViMDc0MjRmMmY4ZjJlZDUxMDkuLjk4
NDliMDMxNTYyYjIzYTFlY2MzOTZhMmQ3NzI1YzdhMjg3M2QxMzggMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9KYXZhU2NyaXB0Q29yZS9BUEkvSlNCYXNlLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvQVBJL0pTQmFzZS5jcHAKQEAgLTUwLDcgKzUwLDcgQEAgSlNWYWx1ZVJlZiBKU0V2YWx1YXRl
U2NyaXB0KEpTQ29udGV4dFJlZiBjdHgsIEpTU3RyaW5nUmVmIHNjcmlwdCwgSlNPYmplY3RSZWYg
dGgKIAogICAgIC8vIGV2YWx1YXRlIHNldHMgInRoaXMiIHRvIHRoZSBnbG9iYWwgb2JqZWN0IGlm
IGl0IGlzIE5VTEwKICAgICBKU0dsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0ID0gZXhlYy0+ZHlu
YW1pY0dsb2JhbE9iamVjdCgpOwotICAgIFNvdXJjZUNvZGUgc291cmNlID0gbWFrZVNvdXJjZShz
Y3JpcHQtPnVzdHJpbmcoKSwgc291cmNlVVJMLT51c3RyaW5nKCksIFRleHRQb3NpdGlvbihPcmRp
bmFsTnVtYmVyOjpmcm9tT25lQmFzZWRJbnQoc3RhcnRpbmdMaW5lTnVtYmVyKSwgT3JkaW5hbE51
bWJlcjo6Zmlyc3QoKSkpOworICAgIFNvdXJjZUNvZGUgc291cmNlID0gbWFrZVNvdXJjZShzY3Jp
cHQtPnVzdHJpbmcoKSwgc291cmNlVVJMLT51c3RyaW5nKCksIHN0YXJ0aW5nTGluZU51bWJlcik7
CiAKICAgICBKU1ZhbHVlIGV2YWx1YXRpb25FeGNlcHRpb247CiAgICAgSlNWYWx1ZSByZXR1cm5W
YWx1ZSA9IGV2YWx1YXRlKGdsb2JhbE9iamVjdC0+Z2xvYmFsRXhlYygpLCBnbG9iYWxPYmplY3Qt
Pmdsb2JhbFNjb3BlQ2hhaW4oKSwgc291cmNlLCBqc1RoaXNPYmplY3QsICZldmFsdWF0aW9uRXhj
ZXB0aW9uKTsKQEAgLTczLDcgKzczLDcgQEAgYm9vbCBKU0NoZWNrU2NyaXB0U3ludGF4KEpTQ29u
dGV4dFJlZiBjdHgsIEpTU3RyaW5nUmVmIHNjcmlwdCwgSlNTdHJpbmdSZWYgc291cmMKICAgICBF
eGVjU3RhdGUqIGV4ZWMgPSB0b0pTKGN0eCk7CiAgICAgQVBJRW50cnlTaGltIGVudHJ5U2hpbShl
eGVjKTsKIAotICAgIFNvdXJjZUNvZGUgc291cmNlID0gbWFrZVNvdXJjZShzY3JpcHQtPnVzdHJp
bmcoKSwgc291cmNlVVJMLT51c3RyaW5nKCksIFRleHRQb3NpdGlvbihPcmRpbmFsTnVtYmVyOjpm
cm9tT25lQmFzZWRJbnQoc3RhcnRpbmdMaW5lTnVtYmVyKSwgT3JkaW5hbE51bWJlcjo6Zmlyc3Qo
KSkpOworICAgIFNvdXJjZUNvZGUgc291cmNlID0gbWFrZVNvdXJjZShzY3JpcHQtPnVzdHJpbmco
KSwgc291cmNlVVJMLT51c3RyaW5nKCksIHN0YXJ0aW5nTGluZU51bWJlcik7CiAgICAgCiAgICAg
SlNWYWx1ZSBzeW50YXhFeGNlcHRpb247CiAgICAgYm9vbCBpc1ZhbGlkU3ludGF4ID0gY2hlY2tT
eW50YXgoZXhlYy0+ZHluYW1pY0dsb2JhbE9iamVjdCgpLT5nbG9iYWxFeGVjKCksIHNvdXJjZSwg
JnN5bnRheEV4Y2VwdGlvbik7CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvQVBJ
L0pTT2JqZWN0UmVmLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9BUEkvSlNPYmplY3RSZWYu
Y3BwCmluZGV4IDc3OTRhYTFlNDc0ZGJkNmJiNzhmMTRmZGRjOWI3YjQ4YmM1YTM4YzIuLjc0MGIx
YTNhZGZjMWIwZjdlYTEwYzM2YjBlZDdiMGE5MmVjYWNjMWUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9K
YXZhU2NyaXB0Q29yZS9BUEkvSlNPYmplY3RSZWYuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0
Q29yZS9BUEkvSlNPYmplY3RSZWYuY3BwCkBAIC0xMjQsNyArMTI0LDcgQEAgSlNPYmplY3RSZWYg
SlNPYmplY3RNYWtlRnVuY3Rpb24oSlNDb250ZXh0UmVmIGN0eCwgSlNTdHJpbmdSZWYgbmFtZSwg
dW5zaWduZWQgcGEKICAgICAgICAgYXJncy5hcHBlbmQoanNTdHJpbmcoZXhlYywgcGFyYW1ldGVy
TmFtZXNbaV0tPnVzdHJpbmcoKSkpOwogICAgIGFyZ3MuYXBwZW5kKGpzU3RyaW5nKGV4ZWMsIGJv
ZHktPnVzdHJpbmcoKSkpOwogCi0gICAgSlNPYmplY3QqIHJlc3VsdCA9IGNvbnN0cnVjdEZ1bmN0
aW9uKGV4ZWMsIGV4ZWMtPmxleGljYWxHbG9iYWxPYmplY3QoKSwgYXJncywgbmFtZUlELCBzb3Vy
Y2VVUkwtPnVzdHJpbmcoKSwgVGV4dFBvc2l0aW9uKE9yZGluYWxOdW1iZXI6OmZyb21PbmVCYXNl
ZEludChzdGFydGluZ0xpbmVOdW1iZXIpLCBPcmRpbmFsTnVtYmVyOjpmaXJzdCgpKSk7CisgICAg
SlNPYmplY3QqIHJlc3VsdCA9IGNvbnN0cnVjdEZ1bmN0aW9uKGV4ZWMsIGV4ZWMtPmxleGljYWxH
bG9iYWxPYmplY3QoKSwgYXJncywgbmFtZUlELCBzb3VyY2VVUkwtPnVzdHJpbmcoKSwgc3RhcnRp
bmdMaW5lTnVtYmVyKTsKICAgICBpZiAoZXhlYy0+aGFkRXhjZXB0aW9uKCkpIHsKICAgICAgICAg
aWYgKGV4Y2VwdGlvbikKICAgICAgICAgICAgICpleGNlcHRpb24gPSB0b1JlZihleGVjLCBleGVj
LT5leGNlcHRpb24oKSk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvSmF2YVNj
cmlwdENvcmUuZXhwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL0phdmFTY3JpcHRDb3JlLmV4cApp
bmRleCA4ODc4NTlmMWRhNWE0OGQzZWYwYmI1OTNmYTU0OWIzNGQzNjFmMmQzLi5kYjRjM2NkYWY3
MmVjMmFlYjg2MjFlNjQ3YTc4Mzg3ZThiMzllOWNhIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNj
cmlwdENvcmUvSmF2YVNjcmlwdENvcmUuZXhwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9K
YXZhU2NyaXB0Q29yZS5leHAKQEAgLTIwNiw2ICsyMDYsNyBAQCBfX1pOM0pTQzE2dGhyb3dTeW50
YXhFcnJvckVQTlNfOUV4ZWNTdGF0ZUUKIF9fWk4zSlNDMTdCeXRlY29kZUdlbmVyYXRvcjIxc2V0
RHVtcHNHZW5lcmF0ZWRDb2RlRWIKIF9fWk4zSlNDMTdKU0FQSVZhbHVlV3JhcHBlcjZzX2luZm9F
CiBfX1pOM0pTQzE3UHJvcGVydHlOYW1lQXJyYXkzYWRkRVBOM1dURjEwU3RyaW5nSW1wbEUKK19f
Wk4zSlNDMTdjb25zdHJ1Y3RGdW5jdGlvbkVQTlNfOUV4ZWNTdGF0ZUVQTlNfMTRKU0dsb2JhbE9i
amVjdEVSS05TXzdBcmdMaXN0RVJLTlNfMTBJZGVudGlmaWVyRVJLTlNfN1VTdHJpbmdFaQogX19a
TjNKU0MxN2NyZWF0ZVN5bnRheEVycm9yRVBOU185RXhlY1N0YXRlRVJLTlNfN1VTdHJpbmdFCiBf
X1pOM0pTQzE4RGVidWdnZXJBY3RpdmF0aW9uMTRmaW5pc2hDcmVhdGlvbkVSTlNfMTJKU0dsb2Jh
bERhdGFFUE5TXzhKU09iamVjdEUKIF9fWk4zSlNDMThEZWJ1Z2dlckFjdGl2YXRpb25DMUVSTlNf
MTJKU0dsb2JhbERhdGFFCkBAIC0yMzgsNyArMjM5LDcgQEAgX19aTjNKU0MyNWV2YWx1YXRlSW5H
bG9iYWxDYWxsRnJhbWVFUktOU183VVN0cmluZ0VSTlNfN0pTVmFsdWVFUE5TXzE0SlNHbG9iYWxP
YmoKIF9fWk4zSlNDMjljYWxsSG9zdEZ1bmN0aW9uQXNDb25zdHJ1Y3RvckVQTlNfOUV4ZWNTdGF0
ZUUKIF9fWk4zSlNDMzBpc1Rlcm1pbmF0ZWRFeGVjdXRpb25FeGNlcHRpb25FTlNfN0pTVmFsdWVF
CiBfX1pOM0pTQzM1Y3JlYXRlSW50ZXJydXB0ZWRFeGVjdXRpb25FeGNlcHRpb25FUE5TXzEySlNH
bG9iYWxEYXRhRQotX19aTjNKU0M0MWNvbnN0cnVjdEZ1bmN0aW9uU2tpcHBpbmdFdmFsRW5hYmxl
ZENoZWNrRVBOU185RXhlY1N0YXRlRVBOU18xNEpTR2xvYmFsT2JqZWN0RVJLTlNfN0FyZ0xpc3RF
UktOU18xMElkZW50aWZpZXJFUktOU183VVN0cmluZ0VSS04zV1RGMTJUZXh0UG9zaXRpb25FCitf
X1pOM0pTQzQxY29uc3RydWN0RnVuY3Rpb25Ta2lwcGluZ0V2YWxFbmFibGVkQ2hlY2tFUE5TXzlF
eGVjU3RhdGVFUE5TXzE0SlNHbG9iYWxPYmplY3RFUktOU183QXJnTGlzdEVSS05TXzEwSWRlbnRp
ZmllckVSS05TXzdVU3RyaW5nRWkKIF9fWk4zSlNDNEhlYXAxMW9iamVjdENvdW50RXYKIF9fWk4z
SlNDNEhlYXAxMmFkZEZpbmFsaXplckVQTlNfNkpTQ2VsbEVQRnZTMl9FCiBfX1pOM0pTQzRIZWFw
MTZhY3Rpdml0eUNhbGxiYWNrRXYKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9w
YXJzZXIvU291cmNlQ29kZS5oIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3BhcnNlci9Tb3VyY2VD
b2RlLmgKaW5kZXggNDQ5YTU4YmJkMTA0NjMzMDk0YTE4MzZjY2Q4OGMxM2IyNmE5MjU3NS4uODdj
ODQ0ZDMxMTRmOTZiMDc0ZjdiNmQ2M2IzNzEyNjMzZDczZGZmYyAxMDA2NDQKLS0tIGEvU291cmNl
L0phdmFTY3JpcHRDb3JlL3BhcnNlci9Tb3VyY2VDb2RlLmgKKysrIGIvU291cmNlL0phdmFTY3Jp
cHRDb3JlL3BhcnNlci9Tb3VyY2VDb2RlLmgKQEAgLTg0LDkgKzg0LDkgQEAgbmFtZXNwYWNlIEpT
QyB7CiAgICAgICAgIGludCBtX2ZpcnN0TGluZTsKICAgICB9OwogCi0gICAgaW5saW5lIFNvdXJj
ZUNvZGUgbWFrZVNvdXJjZShjb25zdCBVU3RyaW5nJiBzb3VyY2UsIGNvbnN0IFVTdHJpbmcmIHVy
bCA9IFVTdHJpbmcoKSwgY29uc3QgVGV4dFBvc2l0aW9uJiBzdGFydFBvc2l0aW9uID0gVGV4dFBv
c2l0aW9uOjptaW5pbXVtUG9zaXRpb24oKSkKKyAgICBpbmxpbmUgU291cmNlQ29kZSBtYWtlU291
cmNlKGNvbnN0IFVTdHJpbmcmIHNvdXJjZSwgY29uc3QgVVN0cmluZyYgdXJsID0gVVN0cmluZygp
LCBpbnQgZmlyc3RMaW5lID0gMSkKICAgICB7Ci0gICAgICAgIHJldHVybiBTb3VyY2VDb2RlKFVT
dHJpbmdTb3VyY2VQcm92aWRlcjo6Y3JlYXRlKHNvdXJjZSwgdXJsLCBzdGFydFBvc2l0aW9uKSwg
c3RhcnRQb3NpdGlvbi5tX2xpbmUub25lQmFzZWRJbnQoKSk7CisgICAgICAgIHJldHVybiBTb3Vy
Y2VDb2RlKFVTdHJpbmdTb3VyY2VQcm92aWRlcjo6Y3JlYXRlKHNvdXJjZSwgdXJsKSwgZmlyc3RM
aW5lKTsKICAgICB9CiAgICAgCiAgICAgaW5saW5lIFNvdXJjZUNvZGUgU291cmNlQ29kZTo6c3Vi
RXhwcmVzc2lvbihpbnQgb3BlbkJyYWNlLCBpbnQgY2xvc2VCcmFjZSwgaW50IGZpcnN0TGluZSkK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9wYXJzZXIvU291cmNlUHJvdmlkZXIu
aCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9wYXJzZXIvU291cmNlUHJvdmlkZXIuaAppbmRleCBm
MjZhOTJkMjhlZWZmNDE5N2NlOTQ3NjZiODc1MmY1ZmViOTk1ZmQxLi43NzFlNDYwNzUxOGFlNjEx
NzE2MTk5OWI3Zjc1ZDY0YjI5ZDM3NmU5IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvcGFyc2VyL1NvdXJjZVByb3ZpZGVyLmgKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3Bh
cnNlci9Tb3VyY2VQcm92aWRlci5oCkBAIC00MCw5ICs0MCw4IEBAIG5hbWVzcGFjZSBKU0Mgewog
CiAgICAgY2xhc3MgU291cmNlUHJvdmlkZXIgOiBwdWJsaWMgUmVmQ291bnRlZDxTb3VyY2VQcm92
aWRlcj4gewogICAgIHB1YmxpYzoKLSAgICAgICAgU291cmNlUHJvdmlkZXIoY29uc3QgVVN0cmlu
ZyYgdXJsLCBjb25zdCBUZXh0UG9zaXRpb24mIHN0YXJ0UG9zaXRpb24sIFNvdXJjZVByb3ZpZGVy
Q2FjaGUqIGNhY2hlID0gMCkKKyAgICAgICAgU291cmNlUHJvdmlkZXIoY29uc3QgVVN0cmluZyYg
dXJsLCBTb3VyY2VQcm92aWRlckNhY2hlKiBjYWNoZSA9IDApCiAgICAgICAgICAgICA6IG1fdXJs
KHVybCkKLSAgICAgICAgICAgICwgbV9zdGFydFBvc2l0aW9uKHN0YXJ0UG9zaXRpb24pCiAgICAg
ICAgICAgICAsIG1fdmFsaWRhdGVkKGZhbHNlKQogICAgICAgICAgICAgLCBtX2NhY2hlKGNhY2hl
ID8gY2FjaGUgOiBuZXcgU291cmNlUHJvdmlkZXJDYWNoZSkKICAgICAgICAgICAgICwgbV9jYWNo
ZU93bmVkKCFjYWNoZSkKQEAgLTYwLDcgKzU5LDcgQEAgbmFtZXNwYWNlIEpTQyB7CiAgICAgICAg
IHZpcnR1YWwgaW50IGxlbmd0aCgpIGNvbnN0ID0gMDsKICAgICAgICAgCiAgICAgICAgIGNvbnN0
IFVTdHJpbmcmIHVybCgpIHsgcmV0dXJuIG1fdXJsOyB9Ci0gICAgICAgIFRleHRQb3NpdGlvbiBz
dGFydFBvc2l0aW9uKCkgY29uc3QgeyByZXR1cm4gbV9zdGFydFBvc2l0aW9uOyB9CisgICAgICAg
IHZpcnR1YWwgVGV4dFBvc2l0aW9uIHN0YXJ0UG9zaXRpb24oKSBjb25zdCB7IHJldHVybiBUZXh0
UG9zaXRpb246Om1pbmltdW1Qb3NpdGlvbigpOyB9CiAgICAgICAgIGludHB0cl90IGFzSUQoKSB7
IHJldHVybiByZWludGVycHJldF9jYXN0PGludHB0cl90Pih0aGlzKTsgfQogCiAgICAgICAgIGJv
b2wgaXNWYWxpZCgpIGNvbnN0IHsgcmV0dXJuIG1fdmFsaWRhdGVkOyB9CkBAIC03Myw3ICs3Miw2
IEBAIG5hbWVzcGFjZSBKU0MgewogICAgICAgICB2aXJ0dWFsIHZvaWQgY2FjaGVTaXplQ2hhbmdl
ZChpbnQgZGVsdGEpIHsgVU5VU0VEX1BBUkFNKGRlbHRhKTsgfQogCiAgICAgICAgIFVTdHJpbmcg
bV91cmw7Ci0gICAgICAgIFRleHRQb3NpdGlvbiBtX3N0YXJ0UG9zaXRpb247CiAgICAgICAgIGJv
b2wgbV92YWxpZGF0ZWQ7CiAgICAgICAgIFNvdXJjZVByb3ZpZGVyQ2FjaGUqIG1fY2FjaGU7CiAg
ICAgICAgIGJvb2wgbV9jYWNoZU93bmVkOwpAQCAtODEsOSArNzksOSBAQCBuYW1lc3BhY2UgSlND
IHsKIAogICAgIGNsYXNzIFVTdHJpbmdTb3VyY2VQcm92aWRlciA6IHB1YmxpYyBTb3VyY2VQcm92
aWRlciB7CiAgICAgcHVibGljOgotICAgICAgICBzdGF0aWMgUGFzc1JlZlB0cjxVU3RyaW5nU291
cmNlUHJvdmlkZXI+IGNyZWF0ZShjb25zdCBVU3RyaW5nJiBzb3VyY2UsIGNvbnN0IFVTdHJpbmcm
IHVybCwgY29uc3QgVGV4dFBvc2l0aW9uJiBzdGFydFBvc2l0aW9uID0gVGV4dFBvc2l0aW9uOjpt
aW5pbXVtUG9zaXRpb24oKSkKKyAgICAgICAgc3RhdGljIFBhc3NSZWZQdHI8VVN0cmluZ1NvdXJj
ZVByb3ZpZGVyPiBjcmVhdGUoY29uc3QgVVN0cmluZyYgc291cmNlLCBjb25zdCBVU3RyaW5nJiB1
cmwpCiAgICAgICAgIHsKLSAgICAgICAgICAgIHJldHVybiBhZG9wdFJlZihuZXcgVVN0cmluZ1Nv
dXJjZVByb3ZpZGVyKHNvdXJjZSwgdXJsLCBzdGFydFBvc2l0aW9uKSk7CisgICAgICAgICAgICBy
ZXR1cm4gYWRvcHRSZWYobmV3IFVTdHJpbmdTb3VyY2VQcm92aWRlcihzb3VyY2UsIHVybCkpOwog
ICAgICAgICB9CiAKICAgICAgICAgVVN0cmluZyBnZXRSYW5nZShpbnQgc3RhcnQsIGludCBlbmQp
IGNvbnN0CkBAIC05NCw4ICs5Miw4IEBAIG5hbWVzcGFjZSBKU0MgewogICAgICAgICBpbnQgbGVu
Z3RoKCkgY29uc3QgeyByZXR1cm4gbV9zb3VyY2UubGVuZ3RoKCk7IH0KIAogICAgIHByaXZhdGU6
Ci0gICAgICAgIFVTdHJpbmdTb3VyY2VQcm92aWRlcihjb25zdCBVU3RyaW5nJiBzb3VyY2UsIGNv
bnN0IFVTdHJpbmcmIHVybCwgY29uc3QgVGV4dFBvc2l0aW9uJiBzdGFydFBvc2l0aW9uKQotICAg
ICAgICAgICAgOiBTb3VyY2VQcm92aWRlcih1cmwsIHN0YXJ0UG9zaXRpb24pCisgICAgICAgIFVT
dHJpbmdTb3VyY2VQcm92aWRlcihjb25zdCBVU3RyaW5nJiBzb3VyY2UsIGNvbnN0IFVTdHJpbmcm
IHVybCkKKyAgICAgICAgICAgIDogU291cmNlUHJvdmlkZXIodXJsKQogICAgICAgICAgICAgLCBt
X3NvdXJjZShzb3VyY2UpCiAgICAgICAgICAgICAsIG1fZGF0YShtX3NvdXJjZS5jaGFyYWN0ZXJz
MTYoKSkKICAgICAgICAgewpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRp
bWUvRnVuY3Rpb25Db25zdHJ1Y3Rvci5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGlt
ZS9GdW5jdGlvbkNvbnN0cnVjdG9yLmNwcAppbmRleCBiZTRjNjNjNDU3NmNlNzQwMWQxZmM5MDE2
OWVlNDZmMzA3NWU2ZTA2Li41NTQyZDg1NjEwOWJjY2JjNTEyYTY3MGZjNWZjZTQyMjdmNDljZGU0
IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9GdW5jdGlvbkNvbnN0
cnVjdG9yLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9GdW5jdGlvbkNv
bnN0cnVjdG9yLmNwcApAQCAtNzksMTQgKzc5LDE0IEBAIENhbGxUeXBlIEZ1bmN0aW9uQ29uc3Ry
dWN0b3I6OmdldENhbGxEYXRhKEpTQ2VsbCosIENhbGxEYXRhJiBjYWxsRGF0YSkKIH0KIAogLy8g
RUNNQSAxNS4zLjIgVGhlIEZ1bmN0aW9uIENvbnN0cnVjdG9yCi1KU09iamVjdCogY29uc3RydWN0
RnVuY3Rpb24oRXhlY1N0YXRlKiBleGVjLCBKU0dsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0LCBj
b25zdCBBcmdMaXN0JiBhcmdzLCBjb25zdCBJZGVudGlmaWVyJiBmdW5jdGlvbk5hbWUsIGNvbnN0
IFVTdHJpbmcmIHNvdXJjZVVSTCwgY29uc3QgVGV4dFBvc2l0aW9uJiBwb3NpdGlvbikKK0pTT2Jq
ZWN0KiBjb25zdHJ1Y3RGdW5jdGlvbihFeGVjU3RhdGUqIGV4ZWMsIEpTR2xvYmFsT2JqZWN0KiBn
bG9iYWxPYmplY3QsIGNvbnN0IEFyZ0xpc3QmIGFyZ3MsIGNvbnN0IElkZW50aWZpZXImIGZ1bmN0
aW9uTmFtZSwgY29uc3QgVVN0cmluZyYgc291cmNlVVJMLCBpbnQgbGluZU51bWJlcikKIHsKICAg
ICBpZiAoIWdsb2JhbE9iamVjdC0+ZXZhbEVuYWJsZWQoKSkKICAgICAgICAgcmV0dXJuIHRocm93
RXJyb3IoZXhlYywgY3JlYXRlRXZhbEVycm9yKGV4ZWMsICJGdW5jdGlvbiBjb25zdHJ1Y3RvciBp
cyBkaXNhYmxlZCIpKTsKLSAgICByZXR1cm4gY29uc3RydWN0RnVuY3Rpb25Ta2lwcGluZ0V2YWxF
bmFibGVkQ2hlY2soZXhlYywgZ2xvYmFsT2JqZWN0LCBhcmdzLCBmdW5jdGlvbk5hbWUsIHNvdXJj
ZVVSTCwgcG9zaXRpb24pOworICAgIHJldHVybiBjb25zdHJ1Y3RGdW5jdGlvblNraXBwaW5nRXZh
bEVuYWJsZWRDaGVjayhleGVjLCBnbG9iYWxPYmplY3QsIGFyZ3MsIGZ1bmN0aW9uTmFtZSwgc291
cmNlVVJMLCBsaW5lTnVtYmVyKTsKIH0KIAotSlNPYmplY3QqIGNvbnN0cnVjdEZ1bmN0aW9uU2tp
cHBpbmdFdmFsRW5hYmxlZENoZWNrKEV4ZWNTdGF0ZSogZXhlYywgSlNHbG9iYWxPYmplY3QqIGds
b2JhbE9iamVjdCwgY29uc3QgQXJnTGlzdCYgYXJncywgY29uc3QgSWRlbnRpZmllciYgZnVuY3Rp
b25OYW1lLCBjb25zdCBVU3RyaW5nJiBzb3VyY2VVUkwsIGNvbnN0IFRleHRQb3NpdGlvbiYgcG9z
aXRpb24pCitKU09iamVjdCogY29uc3RydWN0RnVuY3Rpb25Ta2lwcGluZ0V2YWxFbmFibGVkQ2hl
Y2soRXhlY1N0YXRlKiBleGVjLCBKU0dsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0LCBjb25zdCBB
cmdMaXN0JiBhcmdzLCBjb25zdCBJZGVudGlmaWVyJiBmdW5jdGlvbk5hbWUsIGNvbnN0IFVTdHJp
bmcmIHNvdXJjZVVSTCwgaW50IGxpbmVOdW1iZXIpCiB7CiAgICAgLy8gRnVuY3Rpb25zIG5lZWQg
dG8gaGF2ZSBhIHNwYWNlIGZvbGxvd2luZyB0aGUgb3BlbmluZyB7IGR1ZSB0byBmb3Igd2ViIGNv
bXBhdGliaWxpdHkKICAgICAvLyBzZWUgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcu
Y2dpP2lkPTI0MzUwCkBAIC0xMTEsNyArMTExLDcgQEAgSlNPYmplY3QqIGNvbnN0cnVjdEZ1bmN0
aW9uU2tpcHBpbmdFdmFsRW5hYmxlZENoZWNrKEV4ZWNTdGF0ZSogZXhlYywgSlNHbG9iYWxPYmoK
ICAgICB9CiAKICAgICBKU0dsb2JhbERhdGEmIGdsb2JhbERhdGEgPSBnbG9iYWxPYmplY3QtPmds
b2JhbERhdGEoKTsKLSAgICBTb3VyY2VDb2RlIHNvdXJjZSA9IG1ha2VTb3VyY2UocHJvZ3JhbSwg
c291cmNlVVJMLCBwb3NpdGlvbik7CisgICAgU291cmNlQ29kZSBzb3VyY2UgPSBtYWtlU291cmNl
KHByb2dyYW0sIHNvdXJjZVVSTCwgbGluZU51bWJlcik7CiAgICAgSlNPYmplY3QqIGV4Y2VwdGlv
biA9IDA7CiAgICAgRnVuY3Rpb25FeGVjdXRhYmxlKiBmdW5jdGlvbiA9IEZ1bmN0aW9uRXhlY3V0
YWJsZTo6ZnJvbUdsb2JhbENvZGUoZnVuY3Rpb25OYW1lLCBleGVjLCBleGVjLT5keW5hbWljR2xv
YmFsT2JqZWN0KCktPmRlYnVnZ2VyKCksIHNvdXJjZSwgJmV4Y2VwdGlvbik7CiAgICAgaWYgKCFm
dW5jdGlvbikgewpAQCAtMTI2LDcgKzEyNiw3IEBAIEpTT2JqZWN0KiBjb25zdHJ1Y3RGdW5jdGlv
blNraXBwaW5nRXZhbEVuYWJsZWRDaGVjayhFeGVjU3RhdGUqIGV4ZWMsIEpTR2xvYmFsT2JqCiAv
LyBFQ01BIDE1LjMuMiBUaGUgRnVuY3Rpb24gQ29uc3RydWN0b3IKIEpTT2JqZWN0KiBjb25zdHJ1
Y3RGdW5jdGlvbihFeGVjU3RhdGUqIGV4ZWMsIEpTR2xvYmFsT2JqZWN0KiBnbG9iYWxPYmplY3Qs
IGNvbnN0IEFyZ0xpc3QmIGFyZ3MpCiB7Ci0gICAgcmV0dXJuIGNvbnN0cnVjdEZ1bmN0aW9uKGV4
ZWMsIGdsb2JhbE9iamVjdCwgYXJncywgSWRlbnRpZmllcihleGVjLCAiYW5vbnltb3VzIiksIFVT
dHJpbmcoKSwgVGV4dFBvc2l0aW9uOjptaW5pbXVtUG9zaXRpb24oKSk7CisgICAgcmV0dXJuIGNv
bnN0cnVjdEZ1bmN0aW9uKGV4ZWMsIGdsb2JhbE9iamVjdCwgYXJncywgSWRlbnRpZmllcihleGVj
LCAiYW5vbnltb3VzIiksIFVTdHJpbmcoKSwgMSk7CiB9CiAKIH0gLy8gbmFtZXNwYWNlIEpTQwpk
aWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvRnVuY3Rpb25Db25zdHJ1
Y3Rvci5oIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvRnVuY3Rpb25Db25zdHJ1Y3Rv
ci5oCmluZGV4IGE4YWNmMWE0MmQ1MDY1NTY2ZDRkZmVjN2I4NTE3MzVkZThlMjY0NGYuLmFkMDQ1
N2ZjNjQ4YzkzNjNlOTIyODQ4N2MyNjAxNDJjNzQzYzdlY2UgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9K
YXZhU2NyaXB0Q29yZS9ydW50aW1lL0Z1bmN0aW9uQ29uc3RydWN0b3IuaAorKysgYi9Tb3VyY2Uv
SmF2YVNjcmlwdENvcmUvcnVudGltZS9GdW5jdGlvbkNvbnN0cnVjdG9yLmgKQEAgLTIzLDEwICsy
Myw2IEBACiAKICNpbmNsdWRlICJJbnRlcm5hbEZ1bmN0aW9uLmgiCiAKLW5hbWVzcGFjZSBXVEYg
ewotY2xhc3MgVGV4dFBvc2l0aW9uOwotfQotCiBuYW1lc3BhY2UgSlNDIHsKIAogICAgIGNsYXNz
IEZ1bmN0aW9uUHJvdG90eXBlOwpAQCAtNTYsMTAgKzUyLDEwIEBAIG5hbWVzcGFjZSBKU0Mgewog
ICAgICAgICBzdGF0aWMgQ2FsbFR5cGUgZ2V0Q2FsbERhdGEoSlNDZWxsKiwgQ2FsbERhdGEmKTsK
ICAgICB9OwogCi0gICAgSlNPYmplY3QqIGNvbnN0cnVjdEZ1bmN0aW9uKEV4ZWNTdGF0ZSosIEpT
R2xvYmFsT2JqZWN0KiwgY29uc3QgQXJnTGlzdCYsIGNvbnN0IElkZW50aWZpZXImIGZ1bmN0aW9u
TmFtZSwgY29uc3QgVVN0cmluZyYgc291cmNlVVJMLCBjb25zdCBXVEY6OlRleHRQb3NpdGlvbiYp
OworICAgIEpTT2JqZWN0KiBjb25zdHJ1Y3RGdW5jdGlvbihFeGVjU3RhdGUqLCBKU0dsb2JhbE9i
amVjdCosIGNvbnN0IEFyZ0xpc3QmLCBjb25zdCBJZGVudGlmaWVyJiBmdW5jdGlvbk5hbWUsIGNv
bnN0IFVTdHJpbmcmIHNvdXJjZVVSTCwgaW50IGxpbmVOdW1iZXIpOwogICAgIEpTT2JqZWN0KiBj
b25zdHJ1Y3RGdW5jdGlvbihFeGVjU3RhdGUqLCBKU0dsb2JhbE9iamVjdCosIGNvbnN0IEFyZ0xp
c3QmKTsKIAotICAgIEpTT2JqZWN0KiBjb25zdHJ1Y3RGdW5jdGlvblNraXBwaW5nRXZhbEVuYWJs
ZWRDaGVjayhFeGVjU3RhdGUqLCBKU0dsb2JhbE9iamVjdCosIGNvbnN0IEFyZ0xpc3QmLCBjb25z
dCBJZGVudGlmaWVyJiwgY29uc3QgVVN0cmluZyYsIGNvbnN0IFdURjo6VGV4dFBvc2l0aW9uJik7
CisgICAgSlNPYmplY3QqIGNvbnN0cnVjdEZ1bmN0aW9uU2tpcHBpbmdFdmFsRW5hYmxlZENoZWNr
KEV4ZWNTdGF0ZSosIEpTR2xvYmFsT2JqZWN0KiwgY29uc3QgQXJnTGlzdCYsIGNvbnN0IElkZW50
aWZpZXImLCBjb25zdCBVU3RyaW5nJiwgaW50IGxpbmVOdW1iZXIpOwogCiB9IC8vIG5hbWVzcGFj
ZSBKU0MKIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvQ2FjaGVkU2Ny
aXB0U291cmNlUHJvdmlkZXIuaCBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0NhY2hlZFNj
cmlwdFNvdXJjZVByb3ZpZGVyLmgKaW5kZXggZTRlNzMyNmVhYmRlYzAwZDEzMDE2MmJhYjVmOWU4
MWFhOGU5MTQxMS4uOGY2M2E2OWUwNmEzZjA2NDgzNWIyNjlhZGI5ZDExMWE5MTVlMWRkMCAxMDA2
NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvQ2FjaGVkU2NyaXB0U291cmNlUHJv
dmlkZXIuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9DYWNoZWRTY3JpcHRTb3Vy
Y2VQcm92aWRlci5oCkBAIC01Nyw3ICs1Nyw3IEBAIG5hbWVzcGFjZSBXZWJDb3JlIHsKIAogICAg
IHByaXZhdGU6CiAgICAgICAgIENhY2hlZFNjcmlwdFNvdXJjZVByb3ZpZGVyKENhY2hlZFNjcmlw
dCogY2FjaGVkU2NyaXB0KQotICAgICAgICAgICAgOiBTY3JpcHRTb3VyY2VQcm92aWRlcihzdHJp
bmdUb1VTdHJpbmcoY2FjaGVkU2NyaXB0LT5yZXNwb25zZSgpLnVybCgpKSwgVGV4dFBvc2l0aW9u
OjptaW5pbXVtUG9zaXRpb24oKSwgY2FjaGVkU2NyaXB0LT5zb3VyY2VQcm92aWRlckNhY2hlKCkp
CisgICAgICAgICAgICA6IFNjcmlwdFNvdXJjZVByb3ZpZGVyKHN0cmluZ1RvVVN0cmluZyhjYWNo
ZWRTY3JpcHQtPnJlc3BvbnNlKCkudXJsKCkpLCBjYWNoZWRTY3JpcHQtPnNvdXJjZVByb3ZpZGVy
Q2FjaGUoKSkKICAgICAgICAgICAgICwgbV9jYWNoZWRTY3JpcHQoY2FjaGVkU2NyaXB0KQogICAg
ICAgICB7CiAgICAgICAgICAgICBtX2NhY2hlZFNjcmlwdC0+YWRkQ2xpZW50KHRoaXMpOwpkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvSlNMYXp5RXZlbnRMaXN0ZW5lci5j
cHAgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9KU0xhenlFdmVudExpc3RlbmVyLmNwcApp
bmRleCA0ZTMwMDEyNGIwNmI4Mjc4ZDVlMTY2ZTEzYTExMjlmZjNiMWI5NTlmLi44YTZmYmI3NDY5
YjgxNTE1OGMyNDM2ODM0NzFjNmJmNzRlMDA0ZDlhIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29y
ZS9iaW5kaW5ncy9qcy9KU0xhenlFdmVudExpc3RlbmVyLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29y
ZS9iaW5kaW5ncy9qcy9KU0xhenlFdmVudExpc3RlbmVyLmNwcApAQCAtMjgsNyArMjgsNiBAQAog
I2luY2x1ZGUgPHJ1bnRpbWUvSlNMb2NrLmg+CiAjaW5jbHVkZSA8d3RmL1JlZkNvdW50ZWRMZWFr
Q291bnRlci5oPgogI2luY2x1ZGUgPHd0Zi9TdGRMaWJFeHRyYXMuaD4KLSNpbmNsdWRlIDx3dGYv
dGV4dC9UZXh0UG9zaXRpb24uaD4KIAogdXNpbmcgbmFtZXNwYWNlIEpTQzsKIApAQCAtMzYsMTMg
KzM1LDEzIEBAIG5hbWVzcGFjZSBXZWJDb3JlIHsKIAogREVGSU5FX0RFQlVHX09OTFlfR0xPQkFM
KFdURjo6UmVmQ291bnRlZExlYWtDb3VudGVyLCBldmVudExpc3RlbmVyQ291bnRlciwgKCJKU0xh
enlFdmVudExpc3RlbmVyIikpOwogCi1KU0xhenlFdmVudExpc3RlbmVyOjpKU0xhenlFdmVudExp
c3RlbmVyKGNvbnN0IFN0cmluZyYgZnVuY3Rpb25OYW1lLCBjb25zdCBTdHJpbmcmIGV2ZW50UGFy
YW1ldGVyTmFtZSwgY29uc3QgU3RyaW5nJiBjb2RlLCBOb2RlKiBub2RlLCBjb25zdCBTdHJpbmcm
IHNvdXJjZVVSTCwgY29uc3QgVGV4dFBvc2l0aW9uJiBwb3NpdGlvbiwgSlNPYmplY3QqIHdyYXBw
ZXIsIERPTVdyYXBwZXJXb3JsZCogaXNvbGF0ZWRXb3JsZCkKK0pTTGF6eUV2ZW50TGlzdGVuZXI6
OkpTTGF6eUV2ZW50TGlzdGVuZXIoY29uc3QgU3RyaW5nJiBmdW5jdGlvbk5hbWUsIGNvbnN0IFN0
cmluZyYgZXZlbnRQYXJhbWV0ZXJOYW1lLCBjb25zdCBTdHJpbmcmIGNvZGUsIE5vZGUqIG5vZGUs
IGNvbnN0IFN0cmluZyYgc291cmNlVVJMLCBpbnQgbGluZU51bWJlciwgSlNPYmplY3QqIHdyYXBw
ZXIsIERPTVdyYXBwZXJXb3JsZCogaXNvbGF0ZWRXb3JsZCkKICAgICA6IEpTRXZlbnRMaXN0ZW5l
cigwLCB3cmFwcGVyLCB0cnVlLCBpc29sYXRlZFdvcmxkKQogICAgICwgbV9mdW5jdGlvbk5hbWUo
ZnVuY3Rpb25OYW1lKQogICAgICwgbV9ldmVudFBhcmFtZXRlck5hbWUoZXZlbnRQYXJhbWV0ZXJO
YW1lKQogICAgICwgbV9jb2RlKGNvZGUpCiAgICAgLCBtX3NvdXJjZVVSTChzb3VyY2VVUkwpCi0g
ICAgLCBtX3Bvc2l0aW9uKHBvc2l0aW9uKQorICAgICwgbV9saW5lTnVtYmVyKGxpbmVOdW1iZXIp
CiAgICAgLCBtX29yaWdpbmFsTm9kZShub2RlKQogewogICAgIC8vIFdlIGRvbid0IHJldGFpbiB0
aGUgb3JpZ2luYWwgbm9kZSBiZWNhdXNlIHdlIGFzc3VtZSBpdApAQCAtNTMsOCArNTIsOCBAQCBK
U0xhenlFdmVudExpc3RlbmVyOjpKU0xhenlFdmVudExpc3RlbmVyKGNvbnN0IFN0cmluZyYgZnVu
Y3Rpb25OYW1lLCBjb25zdCBTdHJpbgogCiAgICAgLy8gQSBKU0xhenlFdmVudExpc3RlbmVyIGNh
biBiZSBjcmVhdGVkIHdpdGggYSBsaW5lIG51bWJlciBvZiB6ZXJvIHdoZW4gaXQgaXMgY3JlYXRl
ZCB3aXRoCiAgICAgLy8gYSBzZXRBdHRyaWJ1dGUgY2FsbCBmcm9tIEphdmFTY3JpcHQsIHNvIG1h
a2UgdGhlIGxpbmUgbnVtYmVyIDEgaW4gdGhhdCBjYXNlLgotICAgIGlmIChtX3Bvc2l0aW9uID09
IFRleHRQb3NpdGlvbjo6YmVsb3dSYW5nZVBvc2l0aW9uKCkpCi0gICAgICAgIG1fcG9zaXRpb24g
PSBUZXh0UG9zaXRpb246Om1pbmltdW1Qb3NpdGlvbigpOworICAgIGlmIChtX2xpbmVOdW1iZXIg
PT0gMCkKKyAgICAgICAgbV9saW5lTnVtYmVyID0gMTsKIAogI2lmbmRlZiBOREVCVUcKICAgICBl
dmVudExpc3RlbmVyQ291bnRlci5pbmNyZW1lbnQoKTsKQEAgLTk3LDcgKzk2LDcgQEAgSlNPYmpl
Y3QqIEpTTGF6eUV2ZW50TGlzdGVuZXI6OmluaXRpYWxpemVKU0Z1bmN0aW9uKFNjcmlwdEV4ZWN1
dGlvbkNvbnRleHQqIGV4ZWMKICAgICBhcmdzLmFwcGVuZChqc05vbnRyaXZpYWxTdHJpbmcoZXhl
Yywgc3RyaW5nVG9VU3RyaW5nKG1fZXZlbnRQYXJhbWV0ZXJOYW1lKSkpOwogICAgIGFyZ3MuYXBw
ZW5kKGpzU3RyaW5nKGV4ZWMsIG1fY29kZSkpOwogCi0gICAgSlNPYmplY3QqIGpzRnVuY3Rpb24g
PSBjb25zdHJ1Y3RGdW5jdGlvblNraXBwaW5nRXZhbEVuYWJsZWRDaGVjayhleGVjLCBleGVjLT5s
ZXhpY2FsR2xvYmFsT2JqZWN0KCksIGFyZ3MsIElkZW50aWZpZXIoZXhlYywgc3RyaW5nVG9VU3Ry
aW5nKG1fZnVuY3Rpb25OYW1lKSksIHN0cmluZ1RvVVN0cmluZyhtX3NvdXJjZVVSTCksIG1fcG9z
aXRpb24pOyAvLyBGSVhNRTogaXMgZ2xvYmFsRXhlYyBvaz8KKyAgICBKU09iamVjdCoganNGdW5j
dGlvbiA9IGNvbnN0cnVjdEZ1bmN0aW9uU2tpcHBpbmdFdmFsRW5hYmxlZENoZWNrKGV4ZWMsIGV4
ZWMtPmxleGljYWxHbG9iYWxPYmplY3QoKSwgYXJncywgSWRlbnRpZmllcihleGVjLCBzdHJpbmdU
b1VTdHJpbmcobV9mdW5jdGlvbk5hbWUpKSwgc3RyaW5nVG9VU3RyaW5nKG1fc291cmNlVVJMKSwg
bV9saW5lTnVtYmVyKTsgLy8gRklYTUU6IGlzIGdsb2JhbEV4ZWMgb2s/CiAgICAgaWYgKGV4ZWMt
PmhhZEV4Y2VwdGlvbigpKSB7CiAgICAgICAgIHJlcG9ydEN1cnJlbnRFeGNlcHRpb24oZXhlYyk7
CiAgICAgICAgIGV4ZWMtPmNsZWFyRXhjZXB0aW9uKCk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
Q29yZS9iaW5kaW5ncy9qcy9KU0xhenlFdmVudExpc3RlbmVyLmggYi9Tb3VyY2UvV2ViQ29yZS9i
aW5kaW5ncy9qcy9KU0xhenlFdmVudExpc3RlbmVyLmgKaW5kZXggYWEwNWM4M2JhYTM1ZmI4ZDY5
MWRiNDU3OGJkOGFlYzRmNzk2ZjRmZi4uMWIwMGI3NWIyNTQ2N2U2OTM2NWNiNTFhZDAzMDMzYThh
YTYwMzQyYiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvSlNMYXp5RXZl
bnRMaXN0ZW5lci5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0pTTGF6eUV2ZW50
TGlzdGVuZXIuaApAQCAtMjIsNyArMjIsNiBAQAogCiAjaW5jbHVkZSAiSlNFdmVudExpc3RlbmVy
LmgiCiAjaW5jbHVkZSAiUGxhdGZvcm1TdHJpbmcuaCIKLSNpbmNsdWRlIDx3dGYvdGV4dC9UZXh0
UG9zaXRpb24uaD4KIAogbmFtZXNwYWNlIFdlYkNvcmUgewogCkBAIC0zMCwxNCArMjksMTQgQEAg
bmFtZXNwYWNlIFdlYkNvcmUgewogCiAgICAgY2xhc3MgSlNMYXp5RXZlbnRMaXN0ZW5lciA6IHB1
YmxpYyBKU0V2ZW50TGlzdGVuZXIgewogICAgIHB1YmxpYzoKLSAgICAgICAgc3RhdGljIFBhc3NS
ZWZQdHI8SlNMYXp5RXZlbnRMaXN0ZW5lcj4gY3JlYXRlKGNvbnN0IFN0cmluZyYgZnVuY3Rpb25O
YW1lLCBjb25zdCBTdHJpbmcmIGV2ZW50UGFyYW1ldGVyTmFtZSwgY29uc3QgU3RyaW5nJiBjb2Rl
LCBOb2RlKiBub2RlLCBjb25zdCBTdHJpbmcmIHNvdXJjZVVSTCwgY29uc3QgVGV4dFBvc2l0aW9u
JiBwb3NpdGlvbiwgSlNDOjpKU09iamVjdCogd3JhcHBlciwgRE9NV3JhcHBlcldvcmxkKiBpc29s
YXRlZFdvcmxkKQorICAgICAgICBzdGF0aWMgUGFzc1JlZlB0cjxKU0xhenlFdmVudExpc3RlbmVy
PiBjcmVhdGUoY29uc3QgU3RyaW5nJiBmdW5jdGlvbk5hbWUsIGNvbnN0IFN0cmluZyYgZXZlbnRQ
YXJhbWV0ZXJOYW1lLCBjb25zdCBTdHJpbmcmIGNvZGUsIE5vZGUqIG5vZGUsIGNvbnN0IFN0cmlu
ZyYgc291cmNlVVJMLCBpbnQgbGluZU51bWJlciwgSlNDOjpKU09iamVjdCogd3JhcHBlciwgRE9N
V3JhcHBlcldvcmxkKiBpc29sYXRlZFdvcmxkKQogICAgICAgICB7Ci0gICAgICAgICAgICByZXR1
cm4gYWRvcHRSZWYobmV3IEpTTGF6eUV2ZW50TGlzdGVuZXIoZnVuY3Rpb25OYW1lLCBldmVudFBh
cmFtZXRlck5hbWUsIGNvZGUsIG5vZGUsIHNvdXJjZVVSTCwgcG9zaXRpb24sIHdyYXBwZXIsIGlz
b2xhdGVkV29ybGQpKTsKKyAgICAgICAgICAgIHJldHVybiBhZG9wdFJlZihuZXcgSlNMYXp5RXZl
bnRMaXN0ZW5lcihmdW5jdGlvbk5hbWUsIGV2ZW50UGFyYW1ldGVyTmFtZSwgY29kZSwgbm9kZSwg
c291cmNlVVJMLCBsaW5lTnVtYmVyLCB3cmFwcGVyLCBpc29sYXRlZFdvcmxkKSk7CiAgICAgICAg
IH0KICAgICAgICAgdmlydHVhbCB+SlNMYXp5RXZlbnRMaXN0ZW5lcigpOwogCiAgICAgcHJpdmF0
ZToKLSAgICAgICAgSlNMYXp5RXZlbnRMaXN0ZW5lcihjb25zdCBTdHJpbmcmIGZ1bmN0aW9uTmFt
ZSwgY29uc3QgU3RyaW5nJiBldmVudFBhcmFtZXRlck5hbWUsIGNvbnN0IFN0cmluZyYgY29kZSwg
Tm9kZSosIGNvbnN0IFN0cmluZyYgc291cmNlVVJMLCBjb25zdCBUZXh0UG9zaXRpb24mLCBKU0M6
OkpTT2JqZWN0KiB3cmFwcGVyLCBET01XcmFwcGVyV29ybGQqIGlzb2xhdGVkV29ybGQpOworICAg
ICAgICBKU0xhenlFdmVudExpc3RlbmVyKGNvbnN0IFN0cmluZyYgZnVuY3Rpb25OYW1lLCBjb25z
dCBTdHJpbmcmIGV2ZW50UGFyYW1ldGVyTmFtZSwgY29uc3QgU3RyaW5nJiBjb2RlLCBOb2RlKiwg
Y29uc3QgU3RyaW5nJiBzb3VyY2VVUkwsIGludCBsaW5lTnVtYmVyLCBKU0M6OkpTT2JqZWN0KiB3
cmFwcGVyLCBET01XcmFwcGVyV29ybGQqIGlzb2xhdGVkV29ybGQpOwogCiAgICAgICAgIHZpcnR1
YWwgSlNDOjpKU09iamVjdCogaW5pdGlhbGl6ZUpTRnVuY3Rpb24oU2NyaXB0RXhlY3V0aW9uQ29u
dGV4dCopIGNvbnN0OwogICAgICAgICB2aXJ0dWFsIGJvb2wgd2FzQ3JlYXRlZEZyb21NYXJrdXAo
KSBjb25zdCB7IHJldHVybiB0cnVlOyB9CkBAIC00Niw3ICs0NSw3IEBAIG5hbWVzcGFjZSBXZWJD
b3JlIHsKICAgICAgICAgbXV0YWJsZSBTdHJpbmcgbV9ldmVudFBhcmFtZXRlck5hbWU7CiAgICAg
ICAgIG11dGFibGUgU3RyaW5nIG1fY29kZTsKICAgICAgICAgbXV0YWJsZSBTdHJpbmcgbV9zb3Vy
Y2VVUkw7Ci0gICAgICAgIFRleHRQb3NpdGlvbiBtX3Bvc2l0aW9uOworICAgICAgICBpbnQgbV9s
aW5lTnVtYmVyOwogICAgICAgICBOb2RlKiBtX29yaWdpbmFsTm9kZTsKICAgICB9OwogCmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9TY3JpcHRDb250cm9sbGVyLmNwcCBi
L1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL1NjcmlwdENvbnRyb2xsZXIuY3BwCmluZGV4IDBm
MWMxYzdkY2E0NTFmZjEzOThhYjcxMWM5MTJiMjA0MDNkZjkwMmIuLmVhZTg1MTdhZDc5YzRlNTEw
MmFkMTFkN2Q1ZDMyNzczMDJkYmZlYzMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2JpbmRp
bmdzL2pzL1NjcmlwdENvbnRyb2xsZXIuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdz
L2pzL1NjcmlwdENvbnRyb2xsZXIuY3BwCkBAIC00Nyw3ICs0Nyw2IEBACiAjaW5jbHVkZSA8aGVh
cC9TdHJvbmdJbmxpbmVzLmg+CiAjaW5jbHVkZSA8cnVudGltZS9Jbml0aWFsaXplVGhyZWFkaW5n
Lmg+CiAjaW5jbHVkZSA8cnVudGltZS9KU0xvY2suaD4KLSNpbmNsdWRlIDx3dGYvdGV4dC9UZXh0
UG9zaXRpb24uaD4KICNpbmNsdWRlIDx3dGYvVGhyZWFkaW5nLmg+CiAKIHVzaW5nIG5hbWVzcGFj
ZSBKU0M7CkBAIC0yMjYsMTIgKzIyNSwxMyBAQCBKU0RPTVdpbmRvd1NoZWxsKiBTY3JpcHRDb250
cm9sbGVyOjppbml0U2NyaXB0KERPTVdyYXBwZXJXb3JsZCogd29ybGQpCiAgICAgcmV0dXJuIHdp
bmRvd1NoZWxsOwogfQogCi1UZXh0UG9zaXRpb24gU2NyaXB0Q29udHJvbGxlcjo6ZXZlbnRIYW5k
bGVyUG9zaXRpb24oKSBjb25zdAoraW50IFNjcmlwdENvbnRyb2xsZXI6OmV2ZW50SGFuZGxlckxp
bmVOdW1iZXIoKSBjb25zdAogeworICAgIC8vIEpTQyBleHBlY3RzIDEtYmFzZWQgbGluZSBudW1i
ZXJzLCBzbyB3ZSBtdXN0IGFkZCBvbmUgaGVyZSB0byBnZXQgaXQgcmlnaHQuCiAgICAgU2NyaXB0
YWJsZURvY3VtZW50UGFyc2VyKiBwYXJzZXIgPSBtX2ZyYW1lLT5kb2N1bWVudCgpLT5zY3JpcHRh
YmxlRG9jdW1lbnRQYXJzZXIoKTsKICAgICBpZiAocGFyc2VyKQotICAgICAgICByZXR1cm4gcGFy
c2VyLT50ZXh0UG9zaXRpb24oKTsKLSAgICByZXR1cm4gVGV4dFBvc2l0aW9uOjpiZWxvd1Jhbmdl
UG9zaXRpb24oKTsKKyAgICAgICAgcmV0dXJuIHBhcnNlci0+bGluZU51bWJlcigpLm9uZUJhc2Vk
SW50KCk7CisgICAgcmV0dXJuIDA7CiB9CiAKIHZvaWQgU2NyaXB0Q29udHJvbGxlcjo6ZGlzYWJs
ZUV2YWwoKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvU2NyaXB0Q29u
dHJvbGxlci5oIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvU2NyaXB0Q29udHJvbGxlci5o
CmluZGV4IGQ2NzJmNDJkZTA0YmY0YmVhYzEyYjc4NWNhMmMyMDFlN2I2OTdmZjEuLmRlODIwZWRh
N2E5OTZiNTJhODI1NTY2MGRlMDE4NmZmOTYwZTBiN2YgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJD
b3JlL2JpbmRpbmdzL2pzL1NjcmlwdENvbnRyb2xsZXIuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9i
aW5kaW5ncy9qcy9TY3JpcHRDb250cm9sbGVyLmgKQEAgLTI5LDcgKzI5LDYgQEAKICNpbmNsdWRl
IDxoZWFwL1N0cm9uZy5oPgogI2luY2x1ZGUgPHd0Zi9Gb3J3YXJkLmg+CiAjaW5jbHVkZSA8d3Rm
L1JlZlB0ci5oPgotI2luY2x1ZGUgPHd0Zi90ZXh0L1RleHRQb3NpdGlvbi5oPgogCiAjaWYgUExB
VEZPUk0oTUFDKQogI2luY2x1ZGUgPHd0Zi9SZXRhaW5QdHIuaD4KQEAgLTEwNSw3ICsxMDQsNyBA
QCBwdWJsaWM6CiAgICAgU2NyaXB0VmFsdWUgZXZhbHVhdGUoY29uc3QgU2NyaXB0U291cmNlQ29k
ZSYpOwogICAgIFNjcmlwdFZhbHVlIGV2YWx1YXRlSW5Xb3JsZChjb25zdCBTY3JpcHRTb3VyY2VD
b2RlJiwgRE9NV3JhcHBlcldvcmxkKik7CiAKLSAgICBXVEY6OlRleHRQb3NpdGlvbiBldmVudEhh
bmRsZXJQb3NpdGlvbigpIGNvbnN0OworICAgIGludCBldmVudEhhbmRsZXJMaW5lTnVtYmVyKCkg
Y29uc3Q7CiAKICAgICB2b2lkIGRpc2FibGVFdmFsKCk7CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJDb3JlL2JpbmRpbmdzL2pzL1NjcmlwdEV2ZW50TGlzdGVuZXIuY3BwIGIvU291cmNlL1dlYkNv
cmUvYmluZGluZ3MvanMvU2NyaXB0RXZlbnRMaXN0ZW5lci5jcHAKaW5kZXggNDdmZmQzODA0NWYz
MzIzZmVhNzU0ZGYzYmFmMjc2MmUzYjBiNTIxNS4uMDZjZWRhYjc5NTQxNjYyNzc0NDAyNzI3N2Y0
ZmI5ZmViMDRlMDc2MyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvU2Ny
aXB0RXZlbnRMaXN0ZW5lci5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvU2Ny
aXB0RXZlbnRMaXN0ZW5lci5jcHAKQEAgLTU2LDcgKzU2LDcgQEAgUGFzc1JlZlB0cjxKU0xhenlF
dmVudExpc3RlbmVyPiBjcmVhdGVBdHRyaWJ1dGVFdmVudExpc3RlbmVyKE5vZGUqIG5vZGUsIEF0
dHJpYnUKICAgICBpZiAoYXR0ci0+aXNOdWxsKCkpCiAgICAgICAgIHJldHVybiAwOwogCi0gICAg
VGV4dFBvc2l0aW9uIHBvc2l0aW9uID0gVGV4dFBvc2l0aW9uOjptaW5pbXVtUG9zaXRpb24oKTsK
KyAgICBpbnQgbGluZU51bWJlciA9IDE7CiAgICAgU3RyaW5nIHNvdXJjZVVSTDsKICAgICAKICAg
ICAvLyBGSVhNRTogV2Ugc2hvdWxkIGJlIGFibGUgdG8gcHJvdmlkZSBhY2N1cmF0ZSBzb3VyY2Ug
aW5mb3JtYXRpb24gZm9yIGZyYW1lbGVzcyBkb2N1bWVudHMsIHRvbyAoZS5nLiBmb3IgaW1wb3J0
aW5nIG5vZGVzIGZyb20gWE1MSHR0cFJlcXVlc3QucmVzcG9uc2VYTUwpLgpAQCAtNjUsMTEgKzY1
LDExIEBAIFBhc3NSZWZQdHI8SlNMYXp5RXZlbnRMaXN0ZW5lcj4gY3JlYXRlQXR0cmlidXRlRXZl
bnRMaXN0ZW5lcihOb2RlKiBub2RlLCBBdHRyaWJ1CiAgICAgICAgIGlmICghc2NyaXB0Q29udHJv
bGxlci0+Y2FuRXhlY3V0ZVNjcmlwdHMoQWJvdXRUb0V4ZWN1dGVTY3JpcHQpKQogICAgICAgICAg
ICAgcmV0dXJuIDA7CiAKLSAgICAgICAgcG9zaXRpb24gPSBzY3JpcHRDb250cm9sbGVyLT5ldmVu
dEhhbmRsZXJQb3NpdGlvbigpOworICAgICAgICBsaW5lTnVtYmVyID0gc2NyaXB0Q29udHJvbGxl
ci0+ZXZlbnRIYW5kbGVyTGluZU51bWJlcigpOwogICAgICAgICBzb3VyY2VVUkwgPSBub2RlLT5k
b2N1bWVudCgpLT51cmwoKS5zdHJpbmcoKTsKICAgICB9CiAKLSAgICByZXR1cm4gSlNMYXp5RXZl
bnRMaXN0ZW5lcjo6Y3JlYXRlKGF0dHItPmxvY2FsTmFtZSgpLnN0cmluZygpLCBldmVudFBhcmFt
ZXRlck5hbWUobm9kZS0+aXNTVkdFbGVtZW50KCkpLCBhdHRyLT52YWx1ZSgpLCBub2RlLCBzb3Vy
Y2VVUkwsIHBvc2l0aW9uLCAwLCBtYWluVGhyZWFkTm9ybWFsV29ybGQoKSk7CisgICAgcmV0dXJu
IEpTTGF6eUV2ZW50TGlzdGVuZXI6OmNyZWF0ZShhdHRyLT5sb2NhbE5hbWUoKS5zdHJpbmcoKSwg
ZXZlbnRQYXJhbWV0ZXJOYW1lKG5vZGUtPmlzU1ZHRWxlbWVudCgpKSwgYXR0ci0+dmFsdWUoKSwg
bm9kZSwgc291cmNlVVJMLCBsaW5lTnVtYmVyLCAwLCBtYWluVGhyZWFkTm9ybWFsV29ybGQoKSk7
CiB9CiAKIFBhc3NSZWZQdHI8SlNMYXp5RXZlbnRMaXN0ZW5lcj4gY3JlYXRlQXR0cmlidXRlRXZl
bnRMaXN0ZW5lcihGcmFtZSogZnJhbWUsIEF0dHJpYnV0ZSogYXR0cikKQEAgLTgxLDE0ICs4MSwx
NyBAQCBQYXNzUmVmUHRyPEpTTGF6eUV2ZW50TGlzdGVuZXI+IGNyZWF0ZUF0dHJpYnV0ZUV2ZW50
TGlzdGVuZXIoRnJhbWUqIGZyYW1lLCBBdHRyaQogICAgIGlmIChhdHRyLT5pc051bGwoKSkKICAg
ICAgICAgcmV0dXJuIDA7CiAKKyAgICBpbnQgbGluZU51bWJlciA9IDE7CisgICAgU3RyaW5nIHNv
dXJjZVVSTDsKKyAgICAKICAgICBTY3JpcHRDb250cm9sbGVyKiBzY3JpcHRDb250cm9sbGVyID0g
ZnJhbWUtPnNjcmlwdCgpOwogICAgIGlmICghc2NyaXB0Q29udHJvbGxlci0+Y2FuRXhlY3V0ZVNj
cmlwdHMoQWJvdXRUb0V4ZWN1dGVTY3JpcHQpKQogICAgICAgICByZXR1cm4gMDsKIAotICAgIFRl
eHRQb3NpdGlvbiBwb3NpdGlvbiA9IHNjcmlwdENvbnRyb2xsZXItPmV2ZW50SGFuZGxlclBvc2l0
aW9uKCk7Ci0gICAgU3RyaW5nIHNvdXJjZVVSTCA9IGZyYW1lLT5kb2N1bWVudCgpLT51cmwoKS5z
dHJpbmcoKTsKKyAgICBsaW5lTnVtYmVyID0gc2NyaXB0Q29udHJvbGxlci0+ZXZlbnRIYW5kbGVy
TGluZU51bWJlcigpOworICAgIHNvdXJjZVVSTCA9IGZyYW1lLT5kb2N1bWVudCgpLT51cmwoKS5z
dHJpbmcoKTsKICAgICBKU09iamVjdCogd3JhcHBlciA9IHRvSlNET01XaW5kb3coZnJhbWUsIG1h
aW5UaHJlYWROb3JtYWxXb3JsZCgpKTsKLSAgICByZXR1cm4gSlNMYXp5RXZlbnRMaXN0ZW5lcjo6
Y3JlYXRlKGF0dHItPmxvY2FsTmFtZSgpLnN0cmluZygpLCBldmVudFBhcmFtZXRlck5hbWUoZnJh
bWUtPmRvY3VtZW50KCktPmlzU1ZHRG9jdW1lbnQoKSksIGF0dHItPnZhbHVlKCksIDAsIHNvdXJj
ZVVSTCwgcG9zaXRpb24sIHdyYXBwZXIsIG1haW5UaHJlYWROb3JtYWxXb3JsZCgpKTsKKyAgICBy
ZXR1cm4gSlNMYXp5RXZlbnRMaXN0ZW5lcjo6Y3JlYXRlKGF0dHItPmxvY2FsTmFtZSgpLnN0cmlu
ZygpLCBldmVudFBhcmFtZXRlck5hbWUoZnJhbWUtPmRvY3VtZW50KCktPmlzU1ZHRG9jdW1lbnQo
KSksIGF0dHItPnZhbHVlKCksIDAsIHNvdXJjZVVSTCwgbGluZU51bWJlciwgd3JhcHBlciwgbWFp
blRocmVhZE5vcm1hbFdvcmxkKCkpOwogfQogCiBTdHJpbmcgZXZlbnRMaXN0ZW5lckhhbmRsZXJC
b2R5KERvY3VtZW50KiBkb2N1bWVudCwgRXZlbnRMaXN0ZW5lciogZXZlbnRMaXN0ZW5lcikKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL1NjcmlwdFNvdXJjZVByb3ZpZGVy
LmggYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9TY3JpcHRTb3VyY2VQcm92aWRlci5oCmlu
ZGV4IDg3NjAxODUwYWJiNDMwMGNiOTljMzA4Y2RiMjk2NDA4ZjQwOWJjZDkuLjNhNWQ1NzliZmVh
ZGQ5NWRlNTBhZjQxZDdkYmM0OTkxNDc2NjNjZjEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3Jl
L2JpbmRpbmdzL2pzL1NjcmlwdFNvdXJjZVByb3ZpZGVyLmgKKysrIGIvU291cmNlL1dlYkNvcmUv
YmluZGluZ3MvanMvU2NyaXB0U291cmNlUHJvdmlkZXIuaApAQCAtMzQsOCArMzQsOCBAQCBuYW1l
c3BhY2UgV2ViQ29yZSB7CiAKICAgICBjbGFzcyBTY3JpcHRTb3VyY2VQcm92aWRlciA6IHB1Ymxp
YyBKU0M6OlNvdXJjZVByb3ZpZGVyIHsKICAgICBwdWJsaWM6Ci0gICAgICAgIFNjcmlwdFNvdXJj
ZVByb3ZpZGVyKGNvbnN0IEpTQzo6VVN0cmluZyYgdXJsLCBjb25zdCBUZXh0UG9zaXRpb24mIHN0
YXJ0UG9zaXRpb24sIEpTQzo6U291cmNlUHJvdmlkZXJDYWNoZSogY2FjaGUgPSAwKQotICAgICAg
ICAgICAgOiBTb3VyY2VQcm92aWRlcih1cmwsIHN0YXJ0UG9zaXRpb24sIGNhY2hlKQorICAgICAg
ICBTY3JpcHRTb3VyY2VQcm92aWRlcihjb25zdCBKU0M6OlVTdHJpbmcmIHVybCwgSlNDOjpTb3Vy
Y2VQcm92aWRlckNhY2hlKiBjYWNoZSA9IDApCisgICAgICAgICAgICA6IFNvdXJjZVByb3ZpZGVy
KHVybCwgY2FjaGUpCiAgICAgICAgIHsKICAgICAgICAgfQogCmRpZmYgLS1naXQgYS9Tb3VyY2Uv
V2ViQ29yZS9iaW5kaW5ncy9qcy9TdHJpbmdTb3VyY2VQcm92aWRlci5oIGIvU291cmNlL1dlYkNv
cmUvYmluZGluZ3MvanMvU3RyaW5nU291cmNlUHJvdmlkZXIuaAppbmRleCA0YzBhN2M0MmIxYzU4
MTEyOTkxMmEzN2IwN2Y4NTNmYTc4ZWZmYmUzLi5iZGViOTg2MGQ2MmIwYjI0NjY3ODVmODc2YTQx
NjRhNzMyNzczNzdiIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9TdHJp
bmdTb3VyY2VQcm92aWRlci5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL1N0cmlu
Z1NvdXJjZVByb3ZpZGVyLmgKQEAgLTM3LDExICszNywxMiBAQCBuYW1lc3BhY2UgV2ViQ29yZSB7
CiAKICAgICBjbGFzcyBTdHJpbmdTb3VyY2VQcm92aWRlciA6IHB1YmxpYyBTY3JpcHRTb3VyY2VQ
cm92aWRlciB7CiAgICAgcHVibGljOgotICAgICAgICBzdGF0aWMgUGFzc1JlZlB0cjxTdHJpbmdT
b3VyY2VQcm92aWRlcj4gY3JlYXRlKGNvbnN0IFN0cmluZyYgc291cmNlLCBjb25zdCBTdHJpbmcm
IHVybCwgY29uc3QgVGV4dFBvc2l0aW9uJiBzdGFydFBvc2l0aW9uKQorICAgICAgICBzdGF0aWMg
UGFzc1JlZlB0cjxTdHJpbmdTb3VyY2VQcm92aWRlcj4gY3JlYXRlKGNvbnN0IFN0cmluZyYgc291
cmNlLCBjb25zdCBTdHJpbmcmIHVybCwgY29uc3QgVGV4dFBvc2l0aW9uJiBzdGFydFBvc2l0aW9u
ID0gVGV4dFBvc2l0aW9uOjptaW5pbXVtUG9zaXRpb24oKSkKICAgICAgICAgewogICAgICAgICAg
ICAgcmV0dXJuIGFkb3B0UmVmKG5ldyBTdHJpbmdTb3VyY2VQcm92aWRlcihzb3VyY2UsIHVybCwg
c3RhcnRQb3NpdGlvbikpOwogICAgICAgICB9CiAKKyAgICAgICAgdmlydHVhbCBUZXh0UG9zaXRp
b24gc3RhcnRQb3NpdGlvbigpIGNvbnN0IHsgcmV0dXJuIG1fc3RhcnRQb3NpdGlvbjsgfQogICAg
ICAgICBKU0M6OlVTdHJpbmcgZ2V0UmFuZ2UoaW50IHN0YXJ0LCBpbnQgZW5kKSBjb25zdCB7IHJl
dHVybiBKU0M6OlVTdHJpbmcobV9zb3VyY2UuY2hhcmFjdGVycygpICsgc3RhcnQsIGVuZCAtIHN0
YXJ0KTsgfQogICAgICAgICBjb25zdCBVQ2hhciogZGF0YSgpIGNvbnN0IHsgcmV0dXJuIG1fc291
cmNlLmNoYXJhY3RlcnMoKTsgfQogICAgICAgICBpbnQgbGVuZ3RoKCkgY29uc3QgeyByZXR1cm4g
bV9zb3VyY2UubGVuZ3RoKCk7IH0KQEAgLTQ5LDE3ICs1MCwxOSBAQCBuYW1lc3BhY2UgV2ViQ29y
ZSB7CiAKICAgICBwcml2YXRlOgogICAgICAgICBTdHJpbmdTb3VyY2VQcm92aWRlcihjb25zdCBT
dHJpbmcmIHNvdXJjZSwgY29uc3QgU3RyaW5nJiB1cmwsIGNvbnN0IFRleHRQb3NpdGlvbiYgc3Rh
cnRQb3NpdGlvbikKLSAgICAgICAgICAgIDogU2NyaXB0U291cmNlUHJvdmlkZXIoc3RyaW5nVG9V
U3RyaW5nKHVybCksIHN0YXJ0UG9zaXRpb24pCisgICAgICAgICAgICA6IFNjcmlwdFNvdXJjZVBy
b3ZpZGVyKHN0cmluZ1RvVVN0cmluZyh1cmwpKQorICAgICAgICAgICAgLCBtX3N0YXJ0UG9zaXRp
b24oc3RhcnRQb3NpdGlvbikKICAgICAgICAgICAgICwgbV9zb3VyY2Uoc291cmNlKQogICAgICAg
ICB7CiAgICAgICAgIH0KICAgICAgICAgCisgICAgICAgIFRleHRQb3NpdGlvbiBtX3N0YXJ0UG9z
aXRpb247CiAgICAgICAgIFN0cmluZyBtX3NvdXJjZTsKICAgICB9OwogCi0gICAgaW5saW5lIEpT
Qzo6U291cmNlQ29kZSBtYWtlU291cmNlKGNvbnN0IFN0cmluZyYgc291cmNlLCBjb25zdCBTdHJp
bmcmIHVybCA9IFN0cmluZygpLCBjb25zdCBUZXh0UG9zaXRpb24mIHN0YXJ0UG9zaXRpb24gPSBU
ZXh0UG9zaXRpb246Om1pbmltdW1Qb3NpdGlvbigpKQorICAgIGlubGluZSBKU0M6OlNvdXJjZUNv
ZGUgbWFrZVNvdXJjZShjb25zdCBTdHJpbmcmIHNvdXJjZSwgY29uc3QgU3RyaW5nJiB1cmwgPSBT
dHJpbmcoKSwgaW50IGZpcnN0TGluZSA9IDEpCiAgICAgewotICAgICAgICByZXR1cm4gSlNDOjpT
b3VyY2VDb2RlKFN0cmluZ1NvdXJjZVByb3ZpZGVyOjpjcmVhdGUoc291cmNlLCB1cmwsIHN0YXJ0
UG9zaXRpb24pLCBzdGFydFBvc2l0aW9uLm1fbGluZS5vbmVCYXNlZEludCgpKTsKKyAgICAgICAg
cmV0dXJuIEpTQzo6U291cmNlQ29kZShTdHJpbmdTb3VyY2VQcm92aWRlcjo6Y3JlYXRlKHNvdXJj
ZSwgdXJsKSwgZmlyc3RMaW5lKTsKICAgICB9CiAKIH0gLy8gbmFtZXNwYWNlIFdlYkNvcmUKZGlm
ZiAtLWdpdCBhL0xheW91dFRlc3RzL0NoYW5nZUxvZyBiL0xheW91dFRlc3RzL0NoYW5nZUxvZwpp
bmRleCBhZWMzODU5NmZkZGJhNTQ4NjExYjVkMzA0NjdjNWUwY2U3Y2VlN2JlLi4yZjE0NDI4NDA3
ZTUxMjllNGE0ZjMxY2E1MzlhNTQxZDA1YTMwZWM0IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9D
aGFuZ2VMb2cKKysrIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTcgQEAKKzIw
MTEtMTEtMDMgIFNoZXJpZmYgQm90ICA8d2Via2l0LnJldmlldy5ib3RAZ21haWwuY29tPgorCisg
ICAgICAgIFVucmV2aWV3ZWQsIHJvbGxpbmcgb3V0IHI5OTE2Ny4KKyAgICAgICAgaHR0cDovL3Ry
YWMud2Via2l0Lm9yZy9jaGFuZ2VzZXQvOTkxNjcKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtp
dC5vcmcvc2hvd19idWcuY2dpP2lkPTcxNDYyCisKKyAgICAgICAgQnJlYWtzIFdpbiBib3RzIChS
ZXF1ZXN0ZWQgYnkgcGZlbGRtYW4gb24gI3dlYmtpdCkuCisKKyAgICAgICAgKiBpbnNwZWN0b3Iv
ZGVidWdnZXIvZGVidWdnZXItc2NyaXB0cy1leHBlY3RlZC50eHQ6CisgICAgICAgICogaW5zcGVj
dG9yL2RlYnVnZ2VyL2RlYnVnZ2VyLXNjcmlwdHMuaHRtbDoKKyAgICAgICAgKiBpbnNwZWN0b3Iv
ZGVidWdnZXIvbGlua2lmaWVyLWV4cGVjdGVkLnR4dDoKKyAgICAgICAgKiBpbnNwZWN0b3IvZGVi
dWdnZXIvbGlua2lmaWVyLmh0bWw6CisgICAgICAgICogcGxhdGZvcm0vY2hyb21pdW0vaW5zcGVj
dG9yL2RlYnVnZ2VyL2RlYnVnZ2VyLXNjcmlwdHMtZXhwZWN0ZWQudHh0OiBSZW1vdmVkLgorCiAy
MDExLTExLTAzICBBbmRyZXkgS29zeWFrb3YgIDxjYXNlcUBjaHJvbWl1bS5vcmc+CiAKICAgICAg
ICAgVW5yZXZpZXdlZC4gQW5vdGhlciBiYXRjaCBvZiBleHBlY3RhdGlvbnMgY2xlYW4tdXAuCmRp
ZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbnNwZWN0b3IvZGVidWdnZXIvZGVidWdnZXItc2NyaXB0
cy1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9pbnNwZWN0b3IvZGVidWdnZXIvZGVidWdnZXIt
c2NyaXB0cy1leHBlY3RlZC50eHQKaW5kZXggMDc0N2EwYTk2NjU1NDU3MzU4NGNiYmI3MmJmZTBl
ZTMzYzc3M2EwMC4uOWJjODYwNmFiZjQyM2FiYzUwM2MyMzg4NzMzMmRlN2I2NDVhM2E3NCAxMDA2
NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW5zcGVjdG9yL2RlYnVnZ2VyL2RlYnVnZ2VyLXNjcmlwdHMt
ZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL2luc3BlY3Rvci9kZWJ1Z2dlci9kZWJ1Z2dl
ci1zY3JpcHRzLWV4cGVjdGVkLnR4dApAQCAtNiwxOCArNiwxNSBAQCBzY3JpcHQgMToKICAgICBl
bmQ6IDM3OjIKIHNjcmlwdCAyOgogICAgIHN0YXJ0OiAzODoyMQotICAgIGVuZDogNDE6MgorICAg
IGVuZDogNDM6MjQKIHNjcmlwdCAzOgotICAgIHN0YXJ0OiA0MzoxMQotICAgIGVuZDogNDM6MzIK
KyAgICBzdGFydDogNDU6MTEKKyAgICBlbmQ6IDQ1OjMyCiBzY3JpcHQgNDoKLSAgICBzdGFydDog
NDQ6MTEKLSAgICBlbmQ6IDQ0OjI4Ci1zY3JpcHQgNToKICAgICBzdGFydDogNDY6MTEKLSAgICBl
bmQ6IDQ3OjIwCi1zY3JpcHQgNjoKLSAgICBzdGFydDogNTE6NTYKLSAgICBlbmQ6IDUyOjIKKyAg
ICBlbmQ6IDQ2OjI4CitzY3JpcHQgNToKKyAgICBzdGFydDogNDg6MTEKKyAgICBlbmQ6IDQ5OjIw
CiBEZWJ1Z2dlciB3YXMgZGlzYWJsZWQuCiAKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2luc3Bl
Y3Rvci9kZWJ1Z2dlci9kZWJ1Z2dlci1zY3JpcHRzLmh0bWwgYi9MYXlvdXRUZXN0cy9pbnNwZWN0
b3IvZGVidWdnZXIvZGVidWdnZXItc2NyaXB0cy5odG1sCmluZGV4IDFkMmMwOTBhYTU1OWEwZThi
NTUwMjQ2MGJlMzM1ODZkYTcyMGVhYjcuLjFkNzU0MmU4YWRhMzljM2Y3OTJjOWNhMzdiZjJiMmYz
ZWE0M2I1YjQgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2luc3BlY3Rvci9kZWJ1Z2dlci9kZWJ1
Z2dlci1zY3JpcHRzLmh0bWwKKysrIGIvTGF5b3V0VGVzdHMvaW5zcGVjdG9yL2RlYnVnZ2VyL2Rl
YnVnZ2VyLXNjcmlwdHMuaHRtbApAQCAtNCw3ICs0LDcgQEAKIDxzY3JpcHQgc3JjPSIuLi8uLi9o
dHRwL3Rlc3RzL2luc3BlY3Rvci9kZWJ1Z2dlci10ZXN0LmpzIj48L3NjcmlwdD4KIAogPHNjcmlw
dD4KLWZ1bmN0aW9uIHRlc3QoKQordmFyIHRlc3QgPSBmdW5jdGlvbigpCiB7CiAgICAgdmFyIHNj
cmlwdHMgPSBbXTsKICAgICBJbnNwZWN0b3JUZXN0LnN0YXJ0RGVidWdnZXJUZXN0KHN0ZXAxKTsK
QEAgLTIxLDcgKzIxLDcgQEAgZnVuY3Rpb24gdGVzdCgpCiAgICAgICAgIGlmIChzY3JpcHQuc291
cmNlVVJMICE9PSBXZWJJbnNwZWN0b3IubWFpblJlc291cmNlLnVybCkKICAgICAgICAgICAgIHJl
dHVybjsKICAgICAgICAgc2NyaXB0cy5wdXNoKHNjcmlwdCk7Ci0gICAgICAgIGlmIChzY3JpcHRz
Lmxlbmd0aCA9PT0gNikKKyAgICAgICAgaWYgKHNjcmlwdHMubGVuZ3RoID09PSA1KQogICAgICAg
ICAgICAgc3RlcDMoKTsKICAgICB9CiAKQEAgLTQwLDcgKzQwLDkgQEAgZnVuY3Rpb24gdGVzdCgp
CiBmdW5jdGlvbiBmMSgpCiB7CiB9Ci08L3NjcmlwdD4KKword2luZG93Lm9ubG9hZCA9IHJ1blRl
c3Q7PC9zY3JpcHQ+CisKICAgIDxzY3JpcHQ+IGZ1bmN0aW9uIGYyKCkge30gICAgPC9zY3JpcHQ+
CiAgICA8c2NyaXB0PmZ1bmN0aW9uIGYzKCkge30KIDwvc2NyaXB0PgpAQCAtNDksMTEgKzUxLDEw
IEBAIGZ1bmN0aW9uIGYxKCkKIDwvc2NyaXB0PgogCiA8L2hlYWQ+Ci08Ym9keSBvbmxvYWQ9Indp
bmRvdy5kdW1teSA9IGZ1bmN0aW9uKCkgeyB9OyBydW5UZXN0KCkiPgorCiA8cD4KIFRlc3RzIHRo
YXQgdmFsaWQgcGFyc2VkIHNjcmlwdCBub3RpZmljYXRpb25zIGFyZSByZWNlaXZlZCBieSBmcm9u
dC1lbmQuCiA8YSBocmVmPSJodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9
NTI3MjEiPkJ1ZyA1MjcyMTwvYT4KIDwvcD4KLTwvYm9keT4KIAogPC9odG1sPgpkaWZmIC0tZ2l0
IGEvTGF5b3V0VGVzdHMvaW5zcGVjdG9yL2RlYnVnZ2VyL2xpbmtpZmllci1leHBlY3RlZC50eHQg
Yi9MYXlvdXRUZXN0cy9pbnNwZWN0b3IvZGVidWdnZXIvbGlua2lmaWVyLWV4cGVjdGVkLnR4dApp
bmRleCAxNjk1NzlhMjkyNmQ2YjAwOTIyNzY5NDVlMzFjMzYxMDc4MzJkNzk5Li43NDhiOTdlODU2
NTE4NjM5YWQ2MDVmODI1Y2NhZjY0OWNhNTUxY2EzIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9p
bnNwZWN0b3IvZGVidWdnZXIvbGlua2lmaWVyLWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0
cy9pbnNwZWN0b3IvZGVidWdnZXIvbGlua2lmaWVyLWV4cGVjdGVkLnR4dApAQCAtMSwxMCArMSwy
OCBAQAogVGVzdHMgdGhhdCBMaW5raWZpZXIgd29ya3MgY29ycmVjdGx5LgogCitUd28gYWRkRXZl
bnRMaXN0ZW5lciBjYWxscyBleHBlY3RlZC4gVGhlIGZpcnN0IGZvciAnZmFrZVVybC0xJyB0aGUg
c2Vjb25kIGZvciAnZmFrZVVybC0yJy4KK1R3byByZW1vdmVFdmVudExpc3RlbmVyIGNhbGxzIGV4
cGVjdGVkLiBUaGUgZmlyc3QgZm9yICdmYWtlVXJsLTEnIHRoZSBzZWNvbmQgZm9yICdmYWtlVXJs
LTInLgogRGVidWdnZXIgd2FzIGVuYWJsZWQuCi1saXN0ZW5lcnMgYWRkZWQgb24gcmF3IHNvdXJj
ZSBjb2RlOiAxCi1vcmlnaW5hbCBsb2NhdGlvbjogbGlua2lmaWVyLmh0bWw6MjEKLXByZXR0eSBw
cmludGVkIGxvY2F0aW9uOiBsaW5raWZpZXIuaHRtbDoyNAotcmV2ZXJ0ZWQgbG9jYXRpb246IGxp
bmtpZmllci5odG1sOjIxCi1saXN0ZW5lcnMgcmVtb3ZlZCBmcm9tIHJhdyBzb3VyY2UgY29kZTog
MQotRGVidWdnZXIgd2FzIGRpc2FibGVkLgorLS0tIGxpbmtpZnkgZmFrZVVSTC0xIGZpcnN0IHRp
bWUgLS0tCitEdW1teVByZXNlbnRhdGlvbk1vZGVsLl9yYXdTb3VyY2VDb2RlRm9yU2NyaXB0V2l0
aFVSTCB3YXMgY2FsbGVkIHdpdGggYXJndW1lbnRzID0gWydmYWtlVXJsLTEnXQorRHVtbXlSYXdT
b3VyY2VDb2RlLmFkZEV2ZW50TGlzdGVuZXIgd2FzIGNhbGxlZCBmb3Igc291cmNlIHdpdGggVVJM
ID0gJ2Zha2VVcmwtMScgd2l0aCBhcmd1bWVudHMgPSBbJ3NvdXJjZS1tYXBwaW5nLXVwZGF0ZWQn
LCBmdW5jdGlvbiwgb2JqZWN0XQorCistLS0gbGlua2lmeSBmYWtlVVJMLTIgZmlyc3QgdGltZSAt
LS0KK0R1bW15UHJlc2VudGF0aW9uTW9kZWwuX3Jhd1NvdXJjZUNvZGVGb3JTY3JpcHRXaXRoVVJM
IHdhcyBjYWxsZWQgd2l0aCBhcmd1bWVudHMgPSBbJ2Zha2VVcmwtMiddCitEdW1teVJhd1NvdXJj
ZUNvZGUuYWRkRXZlbnRMaXN0ZW5lciB3YXMgY2FsbGVkIGZvciBzb3VyY2Ugd2l0aCBVUkwgPSAn
ZmFrZVVybC0yJyB3aXRoIGFyZ3VtZW50cyA9IFsnc291cmNlLW1hcHBpbmctdXBkYXRlZCcsIGZ1
bmN0aW9uLCBvYmplY3RdCisKKy0tLSBsaW5raWZ5IGZha2VVUkwtMSBzZWNvbmQgdGltZSAtLS0K
K0R1bW15UHJlc2VudGF0aW9uTW9kZWwuX3Jhd1NvdXJjZUNvZGVGb3JTY3JpcHRXaXRoVVJMIHdh
cyBjYWxsZWQgd2l0aCBhcmd1bWVudHMgPSBbJ2Zha2VVcmwtMSddCisKKy0tLSBsaW5raWZ5IGZh
a2VVUkwtMiBzZWNvbmQgdGltZSAtLS0KK0R1bW15UHJlc2VudGF0aW9uTW9kZWwuX3Jhd1NvdXJj
ZUNvZGVGb3JTY3JpcHRXaXRoVVJMIHdhcyBjYWxsZWQgd2l0aCBhcmd1bWVudHMgPSBbJ2Zha2VV
cmwtMiddCisKKy0tLSByZXNldCAtLS0KK0R1bW15UmF3U291cmNlQ29kZS5yZW1vdmVFdmVudExp
c3RlbmVyIHdhcyBjYWxsZWQgZm9yIHNvdXJjZSB3aXRoIGlkID0gJ2Zha2VVcmwtMScgd2l0aCBh
cmd1bWVudHMgPSBbJ3NvdXJjZS1tYXBwaW5nLXVwZGF0ZWQnLCBmdW5jdGlvbiwgb2JqZWN0XQor
RHVtbXlSYXdTb3VyY2VDb2RlLnJlbW92ZUV2ZW50TGlzdGVuZXIgd2FzIGNhbGxlZCBmb3Igc291
cmNlIHdpdGggaWQgPSAnZmFrZVVybC0yJyB3aXRoIGFyZ3VtZW50cyA9IFsnc291cmNlLW1hcHBp
bmctdXBkYXRlZCcsIGZ1bmN0aW9uLCBvYmplY3RdCisKKy0tLSBsb2NhdGlvbiB1cGRhdGUgLS0t
CitvcmlnaW5hbCBsb2NhdGlvbjogbGlua2lmaWVyLmh0bWw6OTMKK3ByZXR0eSBwcmludGVkIGxv
Y2F0aW9uOiBsaW5raWZpZXIuaHRtbDo5OAorcmV2ZXJ0ZWQgbG9jYXRpb246IGxpbmtpZmllci5o
dG1sOjkzCiAKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2luc3BlY3Rvci9kZWJ1Z2dlci9saW5r
aWZpZXIuaHRtbCBiL0xheW91dFRlc3RzL2luc3BlY3Rvci9kZWJ1Z2dlci9saW5raWZpZXIuaHRt
bAppbmRleCBiZjA0ZTM0MDIzNzYzY2ZhYjFlYzk2MDM1YjcxYmE1ZGFjYTRkMzVlLi5mYjM1NDFj
N2FmMzIzYWY1MGFhMWMzMTc3MWNlNGY4NDQ5OWViZDk3IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0
cy9pbnNwZWN0b3IvZGVidWdnZXIvbGlua2lmaWVyLmh0bWwKKysrIGIvTGF5b3V0VGVzdHMvaW5z
cGVjdG9yL2RlYnVnZ2VyL2xpbmtpZmllci5odG1sCkBAIC02LDc2ICs2LDEwMSBAQAogCiBmdW5j
dGlvbiB0ZXN0KCkKIHsKLSAgICBJbnNwZWN0b3JUZXN0LnN0YXJ0RGVidWdnZXJUZXN0KHdhaXRG
b3JTY3JpcHRzKTsKKyAgICBJbnNwZWN0b3JUZXN0LnN0YXJ0RGVidWdnZXJUZXN0KGRlYnVnZ2Vy
VGVzdCk7CiAKLSAgICB2YXIgbGlua2lmaWVyOwotICAgIHZhciBsaW5rOwotICAgIHZhciByYXdT
b3VyY2VDb2RlOwotCi0gICAgZnVuY3Rpb24gd2FpdEZvclNjcmlwdHMoKQorICAgIGZ1bmN0aW9u
IGRlYnVnZ2VyVGVzdCgpCiAgICAgewotICAgICAgICB2YXIgY29udGludWVkID0gZmFsc2U7Ci0g
ICAgICAgIGZ1bmN0aW9uIHNjcmlwdEFkZGVkKGV2ZW50KQorICAgICAgICBpZiAoIVdlYkluc3Bl
Y3Rvci5kZWJ1Z2dlclByZXNlbnRhdGlvbk1vZGVsLl9yYXdTb3VyY2VDb2RlW1dlYkluc3BlY3Rv
ci5tYWluUmVzb3VyY2UuX2RvY3VtZW50VVJMXSkgeworICAgICAgICAgICAgSW5zcGVjdG9yVGVz
dC5hZGRTbmlmZmVyKFdlYkluc3BlY3Rvci5kZWJ1Z2dlclByZXNlbnRhdGlvbk1vZGVsLCAiX2Fk
ZFNjcmlwdCIsIGRlYnVnZ2VyVGVzdCk7CisgICAgICAgICAgICByZXR1cm47CisgICAgICAgIH0K
KworICAgICAgICB2YXIgZmFrZVVSTDEgPSAiZmFrZVVybC0xIjsKKyAgICAgICAgdmFyIGZha2VV
UkwyID0gImZha2VVcmwtMiI7CisKKyAgICAgICAgRHVtbXlSYXdTb3VyY2VDb2RlID0gZnVuY3Rp
b24odXJsKQogICAgICAgICB7Ci0gICAgICAgICAgICBpZiAoY29udGludWVkKQotICAgICAgICAg
ICAgICAgIHJldHVybjsKKyAgICAgICAgICAgIHRoaXMudXJsID0gdXJsOworICAgICAgICAgICAg
dGhpcy5pZCA9IHVybDsKKyAgICAgICAgfQorCisgICAgICAgIER1bW15UmF3U291cmNlQ29kZS5w
cm90b3R5cGUgPSB7CisgICAgICAgICAgICBhZGRFdmVudExpc3RlbmVyOiBmdW5jdGlvbihldmVu
dE5hbWUsIGNhbGxiYWNrLCBvYmplY3QpCisgICAgICAgICAgICB7CisgICAgICAgICAgICAgICAg
SW5zcGVjdG9yVGVzdC5hZGRSZXN1bHQoIkR1bW15UmF3U291cmNlQ29kZS5hZGRFdmVudExpc3Rl
bmVyIHdhcyBjYWxsZWQgZm9yIHNvdXJjZSB3aXRoIFVSTCA9ICciICsgdGhpcy51cmwgKyAiJyB3
aXRoIGFyZ3VtZW50cyA9IFsnIiArIGV2ZW50TmFtZSArICInLCAiICsgKHR5cGVvZiBjYWxsYmFj
aykgKyAiLCAiICsgKHR5cGVvZiBvYmplY3QpICsgIl0iKTsKKyAgICAgICAgICAgIH0sCiAKLSAg
ICAgICAgICAgIHZhciBzY3JpcHQgPSBldmVudC5kYXRhOwotICAgICAgICAgICAgaWYgKHNjcmlw
dC5zb3VyY2VVUkwgPT09IFdlYkluc3BlY3Rvci5tYWluUmVzb3VyY2UuX2RvY3VtZW50VVJMKSB7
Ci0gICAgICAgICAgICAgICAgY29udGludWVkID0gdHJ1ZTsKLSAgICAgICAgICAgICAgICBzZXRU
aW1lb3V0KGRlYnVnZ2VyVGVzdCwgMCk7CisgICAgICAgICAgICByZW1vdmVFdmVudExpc3RlbmVy
OiBmdW5jdGlvbihldmVudE5hbWUsIGNhbGxiYWNrLCBvYmplY3QpCisgICAgICAgICAgICB7Cisg
ICAgICAgICAgICAgICAgSW5zcGVjdG9yVGVzdC5hZGRSZXN1bHQoIkR1bW15UmF3U291cmNlQ29k
ZS5yZW1vdmVFdmVudExpc3RlbmVyIHdhcyBjYWxsZWQgZm9yIHNvdXJjZSB3aXRoIGlkID0gJyIg
KyB0aGlzLnVybCArICInIHdpdGggYXJndW1lbnRzID0gWyciICsgZXZlbnROYW1lICsgIicsICIg
KyAodHlwZW9mIGNhbGxiYWNrKSArICIsICIgKyAodHlwZW9mIG9iamVjdCkgKyAiXSIpOwogICAg
ICAgICAgICAgfQogICAgICAgICB9CiAKLSAgICAgICAgV2ViSW5zcGVjdG9yLmRlYnVnZ2VyTW9k
ZWwucXVlcnlTY3JpcHRzKGZ1bmN0aW9uKHNjcmlwdCkgeyBzY3JpcHRBZGRlZCh7IGRhdGE6IHNj
cmlwdCB9KSB9KTsKLSAgICAgICAgV2ViSW5zcGVjdG9yLmRlYnVnZ2VyTW9kZWwuYWRkRXZlbnRM
aXN0ZW5lcihXZWJJbnNwZWN0b3IuRGVidWdnZXJNb2RlbC5FdmVudHMuUGFyc2VkU2NyaXB0U291
cmNlLCBzY3JpcHRBZGRlZCk7Ci0gICAgfQorICAgICAgICBEdW1teVByZXNlbnRhdGlvbk1vZGVs
ID0gZnVuY3Rpb24oKQorICAgICAgICB7CisgICAgICAgICAgICB0aGlzLl9yYXdTb3VyY2VDb2Rl
ID0gW107CisgICAgICAgIH0KIAotICAgIGZ1bmN0aW9uIGRlYnVnZ2VyVGVzdCgpCi0gICAgewot
ICAgICAgICBsaW5raWZpZXIgPSBXZWJJbnNwZWN0b3IuZGVidWdnZXJQcmVzZW50YXRpb25Nb2Rl
bC5jcmVhdGVMaW5raWZpZXIoKTsKLSAgICAgICAgcmF3U291cmNlQ29kZSA9IFdlYkluc3BlY3Rv
ci5kZWJ1Z2dlclByZXNlbnRhdGlvbk1vZGVsLl9yYXdTb3VyY2VDb2RlRm9yU2NyaXB0V2l0aFVS
TChXZWJJbnNwZWN0b3IubWFpblJlc291cmNlLl9kb2N1bWVudFVSTCk7CisgICAgICAgIER1bW15
UHJlc2VudGF0aW9uTW9kZWwucHJvdG90eXBlID0geworICAgICAgICAgICAgX3Jhd1NvdXJjZUNv
ZGVGb3JTY3JpcHRXaXRoVVJMOiBmdW5jdGlvbihzb3VyY2VVUkwpCisgICAgICAgICAgICB7Cisg
ICAgICAgICAgICAgICAgSW5zcGVjdG9yVGVzdC5hZGRSZXN1bHQoIkR1bW15UHJlc2VudGF0aW9u
TW9kZWwuX3Jhd1NvdXJjZUNvZGVGb3JTY3JpcHRXaXRoVVJMIHdhcyBjYWxsZWQgd2l0aCBhcmd1
bWVudHMgPSBbJyIgKyBzb3VyY2VVUkwgKyAiJ10iKTsKKyAgICAgICAgICAgICAgICB2YXIgcmF3
U291cmNlQ29kZSA9IHRoaXMuX3Jhd1NvdXJjZUNvZGVbc291cmNlVVJMXTsKKyAgICAgICAgICAg
ICAgICBpZiAocmF3U291cmNlQ29kZSkKKyAgICAgICAgICAgICAgICAgICAgcmV0dXJuIHJhd1Nv
dXJjZUNvZGU7CisgICAgICAgICAgICAgICAgcmF3U291cmNlQ29kZSA9IG5ldyBEdW1teVJhd1Nv
dXJjZUNvZGUoc291cmNlVVJMKTsKKyAgICAgICAgICAgICAgICB0aGlzLl9yYXdTb3VyY2VDb2Rl
W3NvdXJjZVVSTF0gPSByYXdTb3VyY2VDb2RlOworICAgICAgICAgICAgICAgIHJldHVybiByYXdT
b3VyY2VDb2RlOworICAgICAgICAgICAgfQorICAgICAgICB9CiAKLSAgICAgICAgdmFyIGNvdW50
MSA9IGxpc3RlbmVyc0NvdW50KHJhd1NvdXJjZUNvZGUpOwotICAgICAgICBsaW5rID0gbGlua2lm
aWVyLmxpbmtpZnlMb2NhdGlvbihXZWJJbnNwZWN0b3IubWFpblJlc291cmNlLl9kb2N1bWVudFVS
TCwgMjAsIDAsICJkdW1teS1jbGFzcyIpOwotICAgICAgICB2YXIgY291bnQyID0gbGlzdGVuZXJz
Q291bnQocmF3U291cmNlQ29kZSk7CisgICAgICAgIHZhciBkdW1teVByZXNlbnRhdGlvbk1vZGVs
ID0gbmV3IER1bW15UHJlc2VudGF0aW9uTW9kZWwoKTsKIAotICAgICAgICBJbnNwZWN0b3JUZXN0
LmFkZFJlc3VsdCgibGlzdGVuZXJzIGFkZGVkIG9uIHJhdyBzb3VyY2UgY29kZTogIiArIChjb3Vu
dDIgLSBjb3VudDEpKTsKLSAgICAgICAgSW5zcGVjdG9yVGVzdC5hZGRSZXN1bHQoIm9yaWdpbmFs
IGxvY2F0aW9uOiAiICsgbGluay50ZXh0Q29udGVudCk7CisgICAgICAgIHZhciBsaW5raWZpZXIg
PSBuZXcgV2ViSW5zcGVjdG9yLkRlYnVnZ2VyUHJlc2VudGF0aW9uTW9kZWwuTGlua2lmaWVyKGR1
bW15UHJlc2VudGF0aW9uTW9kZWwpOwogCi0gICAgICAgIEluc3BlY3RvclRlc3QuYWRkU25pZmZl
cihsaW5raWZpZXIsICJfdXBkYXRlQW5jaG9yIiwgbGlua1VwZGF0ZWQpOwotICAgICAgICBXZWJJ
bnNwZWN0b3IuZGVidWdnZXJQcmVzZW50YXRpb25Nb2RlbC5zZXRGb3JtYXRTb3VyY2UodHJ1ZSk7
Ci0gICAgfQorICAgICAgICBJbnNwZWN0b3JUZXN0LmFkZFJlc3VsdCgiLS0tIGxpbmtpZnkgZmFr
ZVVSTC0xIGZpcnN0IHRpbWUgLS0tIik7CisgICAgICAgIGxpbmtpZmllci5saW5raWZ5TG9jYXRp
b24oZmFrZVVSTDEsIDQyLCAyNiwgImZha2UtY2xhc3MtbmFtZSIpOworICAgICAgICBJbnNwZWN0
b3JUZXN0LmFkZFJlc3VsdCgiIik7CiAKLSAgICBmdW5jdGlvbiBsaW5rVXBkYXRlZCgpCi0gICAg
ewotICAgICAgICBJbnNwZWN0b3JUZXN0LmFkZFJlc3VsdCgicHJldHR5IHByaW50ZWQgbG9jYXRp
b246ICIgKyBsaW5rLnRleHRDb250ZW50KTsKLSAgICAgICAgSW5zcGVjdG9yVGVzdC5hZGRTbmlm
ZmVyKGxpbmtpZmllciwgIl91cGRhdGVBbmNob3IiLCBsaW5rUmV2ZXJ0ZWQpOwotICAgICAgICBX
ZWJJbnNwZWN0b3IuZGVidWdnZXJQcmVzZW50YXRpb25Nb2RlbC5zZXRGb3JtYXRTb3VyY2UoZmFs
c2UpOwotICAgIH0KKyAgICAgICAgSW5zcGVjdG9yVGVzdC5hZGRSZXN1bHQoIi0tLSBsaW5raWZ5
IGZha2VVUkwtMiBmaXJzdCB0aW1lIC0tLSIpOworICAgICAgICBsaW5raWZpZXIubGlua2lmeUxv
Y2F0aW9uKGZha2VVUkwyLCA0MiwgMjYsICJmYWtlLWNsYXNzLW5hbWUiKTsKKyAgICAgICAgSW5z
cGVjdG9yVGVzdC5hZGRSZXN1bHQoIiIpOwogCi0gICAgZnVuY3Rpb24gbGlua1JldmVydGVkKCkK
LSAgICB7Ci0gICAgICAgIEluc3BlY3RvclRlc3QuYWRkUmVzdWx0KCJyZXZlcnRlZCBsb2NhdGlv
bjogIiArIGxpbmsudGV4dENvbnRlbnQpOworICAgICAgICBJbnNwZWN0b3JUZXN0LmFkZFJlc3Vs
dCgiLS0tIGxpbmtpZnkgZmFrZVVSTC0xIHNlY29uZCB0aW1lIC0tLSIpOworICAgICAgICBsaW5r
aWZpZXIubGlua2lmeUxvY2F0aW9uKGZha2VVUkwxLCA5NywgMjMsICJmYWtlLWNsYXNzLW5hbWUi
KTsKKyAgICAgICAgSW5zcGVjdG9yVGVzdC5hZGRSZXN1bHQoIiIpOworCisgICAgICAgIEluc3Bl
Y3RvclRlc3QuYWRkUmVzdWx0KCItLS0gbGlua2lmeSBmYWtlVVJMLTIgc2Vjb25kIHRpbWUgLS0t
Iik7CisgICAgICAgIGxpbmtpZmllci5saW5raWZ5TG9jYXRpb24oZmFrZVVSTDIsIDQsIDIsICJm
YWtlLWNsYXNzLW5hbWUiKTsKKyAgICAgICAgSW5zcGVjdG9yVGVzdC5hZGRSZXN1bHQoIiIpOwog
Ci0gICAgICAgIHZhciBjb3VudDEgPSBsaXN0ZW5lcnNDb3VudChyYXdTb3VyY2VDb2RlKTsKKyAg
ICAgICAgSW5zcGVjdG9yVGVzdC5hZGRSZXN1bHQoIi0tLSByZXNldCAtLS0iKTsKICAgICAgICAg
bGlua2lmaWVyLnJlc2V0KCk7Ci0gICAgICAgIHZhciBjb3VudDIgPSBsaXN0ZW5lcnNDb3VudChy
YXdTb3VyY2VDb2RlKTsKKyAgICAgICAgSW5zcGVjdG9yVGVzdC5hZGRSZXN1bHQoIiIpOwogCi0g
ICAgICAgIEluc3BlY3RvclRlc3QuYWRkUmVzdWx0KCJsaXN0ZW5lcnMgcmVtb3ZlZCBmcm9tIHJh
dyBzb3VyY2UgY29kZTogIiArIChjb3VudDEgLSBjb3VudDIpKTsKKyAgICAgICAgSW5zcGVjdG9y
VGVzdC5hZGRSZXN1bHQoIi0tLSBsb2NhdGlvbiB1cGRhdGUgLS0tIik7CiAKLSAgICAgICAgSW5z
cGVjdG9yVGVzdC5jb21wbGV0ZURlYnVnZ2VyVGVzdCgpOwotICAgIH0KKyAgICAgICAgZnVuY3Rp
b24gZHVtbXlGdW5jdGlvblRvQmVQcmV0dHlQcmludGVkKCkgeyBJbnNwZWN0b3JUZXN0LmFkZFJl
c3VsdCgiIik7IGNvbnNvbGUuZXJyb3IoIiIpOyB9CiAKLSAgICBmdW5jdGlvbiBsaXN0ZW5lcnND
b3VudChvYmplY3QpCi0gICAgewotICAgICAgICB2YXIgbGlzdGVuZXJzID0gb2JqZWN0Ll9saXN0
ZW5lcnM7Ci0gICAgICAgIHZhciBjb3VudCA9IDA7Ci0gICAgICAgIGZvciAodmFyIGV2ZW50VHlw
ZXMgaW4gbGlzdGVuZXJzKSB7Ci0gICAgICAgICAgICB2YXIgbGlzdGVuZXJzQXJyYXkgPSBsaXN0
ZW5lcnNbZXZlbnRUeXBlc107Ci0gICAgICAgICAgICBjb3VudCArPSBsaXN0ZW5lcnNBcnJheS5s
ZW5ndGg7CisgICAgICAgIGxpbmtpZmllciA9IFdlYkluc3BlY3Rvci5kZWJ1Z2dlclByZXNlbnRh
dGlvbk1vZGVsLmNyZWF0ZUxpbmtpZmllcigpOworICAgICAgICB2YXIgbGluayA9IGxpbmtpZmll
ci5saW5raWZ5TG9jYXRpb24oV2ViSW5zcGVjdG9yLm1haW5SZXNvdXJjZS5fZG9jdW1lbnRVUkws
IDkyLCAwLCAiZHVtbXktY2xhc3MiKTsKKyAgICAgICAgSW5zcGVjdG9yVGVzdC5hZGRSZXN1bHQo
Im9yaWdpbmFsIGxvY2F0aW9uOiAiICsgbGluay50ZXh0Q29udGVudCk7CisKKyAgICAgICAgSW5z
cGVjdG9yVGVzdC5hZGRTbmlmZmVyKGxpbmtpZmllciwgIl91cGRhdGVBbmNob3IiLCBsaW5rVXBk
YXRlZCk7CisgICAgICAgIFdlYkluc3BlY3Rvci5kZWJ1Z2dlclByZXNlbnRhdGlvbk1vZGVsLnNl
dEZvcm1hdFNvdXJjZSh0cnVlKTsKKworICAgICAgICBmdW5jdGlvbiBsaW5rVXBkYXRlZCgpCisg
ICAgICAgIHsKKyAgICAgICAgICAgIEluc3BlY3RvclRlc3QuYWRkUmVzdWx0KCJwcmV0dHkgcHJp
bnRlZCBsb2NhdGlvbjogIiArIGxpbmsudGV4dENvbnRlbnQpOworICAgICAgICAgICAgSW5zcGVj
dG9yVGVzdC5hZGRTbmlmZmVyKGxpbmtpZmllciwgIl91cGRhdGVBbmNob3IiLCBsaW5rUmV2ZXJ0
ZWQpOworICAgICAgICAgICAgV2ViSW5zcGVjdG9yLmRlYnVnZ2VyUHJlc2VudGF0aW9uTW9kZWwu
c2V0Rm9ybWF0U291cmNlKGZhbHNlKTsKKyAgICAgICAgfQorCisgICAgICAgIGZ1bmN0aW9uIGxp
bmtSZXZlcnRlZCgpCisgICAgICAgIHsKKyAgICAgICAgICAgIEluc3BlY3RvclRlc3QuYWRkUmVz
dWx0KCJyZXZlcnRlZCBsb2NhdGlvbjogIiArIGxpbmsudGV4dENvbnRlbnQpOworICAgICAgICAg
ICAgSW5zcGVjdG9yVGVzdC5jb21wbGV0ZVRlc3QoKTsKICAgICAgICAgfQotICAgICAgICByZXR1
cm4gY291bnQ7IAogICAgIH0KIH0KIApAQCAtODYsNiArMTExLDggQEAgZnVuY3Rpb24gdGVzdCgp
CiA8cD4KIFRlc3RzIHRoYXQgTGlua2lmaWVyIHdvcmtzIGNvcnJlY3RseS4KIDxwPgorVHdvIGFk
ZEV2ZW50TGlzdGVuZXIgY2FsbHMgZXhwZWN0ZWQuIFRoZSBmaXJzdCBmb3IgJ2Zha2VVcmwtMScg
dGhlIHNlY29uZCBmb3IgJ2Zha2VVcmwtMicuPGJyPgorVHdvIHJlbW92ZUV2ZW50TGlzdGVuZXIg
Y2FsbHMgZXhwZWN0ZWQuIFRoZSBmaXJzdCBmb3IgJ2Zha2VVcmwtMScgdGhlIHNlY29uZCBmb3Ig
J2Zha2VVcmwtMicuPGJyPgogCiA8L2JvZHk+CiA8L2h0bWw+CmRpZmYgLS1naXQgYS9MYXlvdXRU
ZXN0cy9wbGF0Zm9ybS9jaHJvbWl1bS9pbnNwZWN0b3IvZGVidWdnZXIvZGVidWdnZXItc2NyaXB0
cy1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9jaHJvbWl1bS9pbnNwZWN0b3Iv
ZGVidWdnZXIvZGVidWdnZXItc2NyaXB0cy1leHBlY3RlZC50eHQKZGVsZXRlZCBmaWxlIG1vZGUg
MTAwNjQ0CmluZGV4IDExMzU5OTI5MjI3MTRiZmQwOTk1OWY1NTI5NTUwZWFhOGQ2YTI0M2YuLjAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAKLS0tIGEvTGF5b3V0VGVzdHMv
cGxhdGZvcm0vY2hyb21pdW0vaW5zcGVjdG9yL2RlYnVnZ2VyL2RlYnVnZ2VyLXNjcmlwdHMtZXhw
ZWN0ZWQudHh0CisrKyAvZGV2L251bGwKQEAgLTEsMjMgKzAsMCBAQAotVGVzdHMgdGhhdCB2YWxp
ZCBwYXJzZWQgc2NyaXB0IG5vdGlmaWNhdGlvbnMgYXJlIHJlY2VpdmVkIGJ5IGZyb250LWVuZC4g
QnVnIDUyNzIxCi0KLURlYnVnZ2VyIHdhcyBlbmFibGVkLgotc2NyaXB0IDE6Ci0gICAgc3RhcnQ6
IDU6OAotICAgIGVuZDogMzc6Mgotc2NyaXB0IDI6Ci0gICAgc3RhcnQ6IDM4OjIxCi0gICAgZW5k
OiA0MToyCi1zY3JpcHQgMzoKLSAgICBzdGFydDogNDM6MTEKLSAgICBlbmQ6IDQzOjMyCi1zY3Jp
cHQgNDoKLSAgICBzdGFydDogNDQ6MTEKLSAgICBlbmQ6IDQ0OjI4Ci1zY3JpcHQgNToKLSAgICBz
dGFydDogNDY6MTEKLSAgICBlbmQ6IDQ3OjIwCi1zY3JpcHQgNjoKLSAgICBzdGFydDogNTE6NTYK
LSAgICBlbmQ6IDUyOjI0Ci1EZWJ1Z2dlciB3YXMgZGlzYWJsZWQuCi0K
</data>

          </attachment>
      

    </bug>

</bugzilla>