<?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>38798</bug_id>
          
          <creation_ts>2010-05-08 00:08:16 -0700</creation_ts>
          <short_desc>REGRESSION(59000): r59000 contained all sorts of changes it should not have, needs revert.</short_desc>
          <delta_ts>2010-05-08 00:15:43 -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>528+ (Nightly build)</version>
          <rep_platform>Other</rep_platform>
          <op_sys>OS X 10.5</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>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Eric Seidel (no email)">eric</reporter>
          <assigned_to name="Nobody">webkit-unassigned</assigned_to>
          <cc>abarth</cc>
    
    <cc>cjerdonek</cc>
    
    <cc>dpranke</cc>
    
    <cc>ojan</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>222834</commentid>
    <comment_count>0</comment_count>
    <who name="Eric Seidel (no email)">eric</who>
    <bug_when>2010-05-08 00:08:16 -0700</bug_when>
    <thetext>REGRESSION(59000): r59000 contained all sorts of changes it should not have, needs revert.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>222835</commentid>
    <comment_count>1</comment_count>
    <who name="Eric Seidel (no email)">eric</who>
    <bug_when>2010-05-08 00:09:18 -0700</bug_when>
    <thetext>I think this was caused by using webkit-patch land --squash from a not-fully up-to-date branch?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>222836</commentid>
    <comment_count>2</comment_count>
      <attachid>55463</attachid>
    <who name="Eric Seidel (no email)">eric</who>
    <bug_when>2010-05-08 00:10:42 -0700</bug_when>
    <thetext>Created attachment 55463
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>222837</commentid>
    <comment_count>3</comment_count>
    <who name="Eric Seidel (no email)">eric</who>
    <bug_when>2010-05-08 00:15:43 -0700</bug_when>
    <thetext>Committed r59005: &lt;http://trac.webkit.org/changeset/59005&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>55463</attachid>
            <date>2010-05-08 00:10:42 -0700</date>
            <delta_ts>2010-05-08 00:10:42 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-38798-20100508001038.patch</filename>
            <type>text/plain</type>
            <size>53194</size>
            <attacher name="Eric Seidel (no email)">eric</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZyBiL0phdmFTY3JpcHRDb3JlL0No
YW5nZUxvZwppbmRleCA3MWI0ZGRhZDlkMmFiZDQyMGQ3NzM4MmQxYWQxYzM2NDVmOTJlNzZiLi44
MDQxN2M0OTJlMDkyZjAwMDk3ZTY5OTFkMGM4MzU3YjU1M2MzOTNhIDEwMDY0NAotLS0gYS9KYXZh
U2NyaXB0Q29yZS9DaGFuZ2VMb2cKKysrIGIvSmF2YVNjcmlwdENvcmUvQ2hhbmdlTG9nCkBAIC0x
LDMgKzEsMTUgQEAKKzIwMTAtMDUtMDggIEVyaWMgU2VpZGVsICA8ZXJpY0B3ZWJraXQub3JnPgor
CisgICAgICAgIFVucmV2aWV3ZWQsIGp1c3QgcmV2ZXJ0aW5nIGNvbW1pdC4KKworICAgICAgICBS
RUdSRVNTSU9OKDU5MDAwKTogcjU5MDAwIGNvbnRhaW5lZCBhbGwgc29ydHMgb2YgY2hhbmdlcyBp
dCBzaG91bGQgbm90IGhhdmUsIG5lZWRzIHJldmVydC4KKyAgICAgICAgaHR0cHM6Ly9idWdzLndl
YmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTM4Nzk4CisKKyAgICAgICAgKiBieXRlY29tcGlsZXIv
Qnl0ZWNvZGVHZW5lcmF0b3IuY3BwOgorICAgICAgICAoSlNDOjpCeXRlY29kZUdlbmVyYXRvcjo6
ZW1pdFJlc29sdmUpOgorICAgICAgICAqIGppdC9KSVRPcGNvZGVzLmNwcDoKKyAgICAgICAgKEpT
Qzo6SklUOjplbWl0X29wX3Jlc29sdmVfZ2xvYmFsKToKKwogMjAxMC0wNS0wNCAgSmVyIE5vYmxl
ICA8amVyLm5vYmxlQGFwcGxlLmNvbT4KIAogICAgICAgICBSZXZpZXdlZCBieSBNYWNpZWogU3Rh
Y2hvd2lhawpkaWZmIC0tZ2l0IGEvSmF2YVNjcmlwdENvcmUvYnl0ZWNvbXBpbGVyL0J5dGVjb2Rl
R2VuZXJhdG9yLmNwcCBiL0phdmFTY3JpcHRDb3JlL2J5dGVjb21waWxlci9CeXRlY29kZUdlbmVy
YXRvci5jcHAKaW5kZXggMDU5Nzg2MDA0ZGVmM2FkZWVkZGQ5NzAzYzE0Zjc4ZTIzOTZhZWFkNC4u
MzZiNmM1ZDgwNjJiN2JiNmU2YzViODRkZjc2OTRkMzhhMmM1YzAxMSAxMDA2NDQKLS0tIGEvSmF2
YVNjcmlwdENvcmUvYnl0ZWNvbXBpbGVyL0J5dGVjb2RlR2VuZXJhdG9yLmNwcAorKysgYi9KYXZh
U2NyaXB0Q29yZS9ieXRlY29tcGlsZXIvQnl0ZWNvZGVHZW5lcmF0b3IuY3BwCkBAIC0xMDgyLDcg
KzEwODIsNyBAQCBSZWdpc3RlcklEKiBCeXRlY29kZUdlbmVyYXRvcjo6ZW1pdFJlc29sdmUoUmVn
aXN0ZXJJRCogZHN0LCBjb25zdCBJZGVudGlmaWVyJiBwcgogI2VuZGlmCiAgICAgICAgIH0KIAot
ICAgICAgICBpZiAoaW5kZXggIT0gbWlzc2luZ1N5bWJvbE1hcmtlcigpICYmICFmb3JjZUdsb2Jh
bFJlc29sdmUpIHsKKyAgICAgICAgaWYgKGluZGV4ICE9IG1pc3NpbmdTeW1ib2xNYXJrZXIoKSAm
JiAhZm9yY2VHbG9iYWxSZXNvbHZlICYmICFyZXF1aXJlc0R5bmFtaWNDaGVja3MpIHsKICAgICAg
ICAgICAgIC8vIERpcmVjdGx5IGluZGV4IHRoZSBwcm9wZXJ0eSBsb29rdXAgYWNyb3NzIG11bHRp
cGxlIHNjb3Blcy4KICAgICAgICAgICAgIHJldHVybiBlbWl0R2V0U2NvcGVkVmFyKGRzdCwgZGVw
dGgsIGluZGV4LCBnbG9iYWxPYmplY3QpOwogICAgICAgICB9CmRpZmYgLS1naXQgYS9KYXZhU2Ny
aXB0Q29yZS9qaXQvSklUT3Bjb2Rlcy5jcHAgYi9KYXZhU2NyaXB0Q29yZS9qaXQvSklUT3Bjb2Rl
cy5jcHAKaW5kZXggNzU0MzIyOWI2MmZmYTU5ZDVmODI0YzUyYzZmOGE4YjU3OGU4MmJiYS4uYTgy
NDgwMGE4MWI4Y2E4MjY2ZTk2MTg0ZDAzYWFjMDU4YzQ3YTFjNyAxMDA2NDQKLS0tIGEvSmF2YVNj
cmlwdENvcmUvaml0L0pJVE9wY29kZXMuY3BwCisrKyBiL0phdmFTY3JpcHRDb3JlL2ppdC9KSVRP
cGNvZGVzLmNwcApAQCAtNzMxLDcgKzczMSw3IEBAIHZvaWQgSklUOjplbWl0X29wX3Jlc29sdmVf
Z2xvYmFsKEluc3RydWN0aW9uKiBjdXJyZW50SW5zdHJ1Y3Rpb24sIGJvb2wgZHluYW1pYykKICAg
ICBsb2FkMzIoQmFzZUluZGV4KHJlZ1QyLCByZWdUMywgVGltZXNFaWdodCksIHJlZ1QwKTsgLy8g
cGF5bG9hZAogICAgIGxvYWQzMihCYXNlSW5kZXgocmVnVDIsIHJlZ1QzLCBUaW1lc0VpZ2h0LCA0
KSwgcmVnVDEpOyAvLyB0YWcKICAgICBlbWl0U3RvcmUoZHN0LCByZWdUMSwgcmVnVDApOwotICAg
IG1hcChtX2J5dGVjb2RlSW5kZXggKyBPUENPREVfTEVOR1RIKGR5bmFtaWMgPyBvcF9yZXNvbHZl
X2dsb2JhbF9keW5hbWljIDogb3BfcmVzb2x2ZV9nbG9iYWwpLCBkc3QsIHJlZ1QxLCByZWdUMCk7
CisgICAgbWFwKG1fYnl0ZWNvZGVJbmRleCArIGR5bmFtaWMgPyBPUENPREVfTEVOR1RIKG9wX3Jl
c29sdmVfZ2xvYmFsX2R5bmFtaWMpIDogT1BDT0RFX0xFTkdUSChvcF9yZXNvbHZlX2dsb2JhbCks
IGRzdCwgcmVnVDEsIHJlZ1QwKTsKIH0KIAogdm9pZCBKSVQ6OmVtaXRTbG93X29wX3Jlc29sdmVf
Z2xvYmFsKEluc3RydWN0aW9uKiBjdXJyZW50SW5zdHJ1Y3Rpb24sIFZlY3RvcjxTbG93Q2FzZUVu
dHJ5Pjo6aXRlcmF0b3ImIGl0ZXIpCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cg
Yi9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKaW5kZXggNTA0ODllYTY5MTQ3YzI0MzU0ZjllNDA1M2Nk
ZjNlNTQ5YTRhNDA3OS4uYTU4MDkzZDcyNTVmZjA0OWJmMTY2ODkwZDI0ZGQ5YWMxNzQ0NzFhYyAx
MDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCisrKyBiL0xheW91dFRlc3RzL0NoYW5n
ZUxvZwpAQCAtMSwzICsxLDE3IEBACisyMDEwLTA1LTA4ICBFcmljIFNlaWRlbCAgPGVyaWNAd2Vi
a2l0Lm9yZz4KKworICAgICAgICBVbnJldmlld2VkLCBqdXN0IHJldmVydGluZyBjb21taXQuCisK
KyAgICAgICAgUkVHUkVTU0lPTig1OTAwMCk6IHI1OTAwMCBjb250YWluZWQgYWxsIHNvcnRzIG9m
IGNoYW5nZXMgaXQgc2hvdWxkIG5vdCBoYXZlLCBuZWVkcyByZXZlcnQuCisgICAgICAgIGh0dHBz
Oi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0zODc5OAorCisgICAgICAgICogZmFz
dC9qcy9nbG9iYWwtcmVzb2x2ZS10aHJvdWdoLWV2YWwtZXhwZWN0ZWQudHh0OiBBZGRlZC4KKyAg
ICAgICAgKiBmYXN0L2pzL2dsb2JhbC1yZXNvbHZlLXRocm91Z2gtZXZhbC5odG1sOiBBZGRlZC4K
KyAgICAgICAgKiBmYXN0L2pzL3NjcmlwdC10ZXN0cy9nbG9iYWwtcmVzb2x2ZS10aHJvdWdoLWV2
YWwuanM6IEFkZGVkLgorICAgICAgICAoYWNjZXNzR2xvYmFsKToKKyAgICAgICAgKGFjY2Vzc0xv
Y2FsKToKKyAgICAgICAgKiBwbGF0Zm9ybS93aW4vU2tpcHBlZDoKKwogMjAxMC0wNS0wNiAgRGly
ayBQcmFua2UgIDxkcHJhbmtlQGNocm9taXVtLm9yZz4KIAogICAgICAgICBSZXZpZXdlZCBieSBB
bGV4ZXkgUHJvc2t1cnlha292LgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9qcy9nbG9i
YWwtcmVzb2x2ZS10aHJvdWdoLWV2YWwtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvZmFzdC9q
cy9nbG9iYWwtcmVzb2x2ZS10aHJvdWdoLWV2YWwtZXhwZWN0ZWQudHh0Cm5ldyBmaWxlIG1vZGUg
MTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjVj
ZDQ0MmEyMjU5OGQzNWFhMDkxNjAyMWVhOWVhNGNhMmRjZTkzMjgKLS0tIC9kZXYvbnVsbAorKysg
Yi9MYXlvdXRUZXN0cy9mYXN0L2pzL2dsb2JhbC1yZXNvbHZlLXRocm91Z2gtZXZhbC1leHBlY3Rl
ZC50eHQKQEAgLTAsMCArMSwxMSBAQAorTWFrZSBzdXJlIHdlIGRvIGEgY29ycmVjdCBwcm9wZXJ0
eSByZXNvbHV0aW9uIG9mIGEgZ2xvYmFsIG9iamVjdCBwcm9wZXJ0eSB3aGVuIGNvbnRhaW5lZCBi
eSBldmFsLgorCitPbiBzdWNjZXNzLCB5b3Ugd2lsbCBzZWUgYSBzZXJpZXMgb2YgIlBBU1MiIG1l
c3NhZ2VzLCBmb2xsb3dlZCBieSAiVEVTVCBDT01QTEVURSIuCisKKworUEFTUyBhY2Nlc3NHbG9i
YWwoKSBpcyB0cnVlCitQQVNTIGFjY2Vzc0xvY2FsKCkgaXMgdHJ1ZQorUEFTUyBzdWNjZXNzZnVs
bHlQYXJzZWQgaXMgdHJ1ZQorCitURVNUIENPTVBMRVRFCisKZGlmZiAtLWdpdCBhL0xheW91dFRl
c3RzL2Zhc3QvanMvZ2xvYmFsLXJlc29sdmUtdGhyb3VnaC1ldmFsLmh0bWwgYi9MYXlvdXRUZXN0
cy9mYXN0L2pzL2dsb2JhbC1yZXNvbHZlLXRocm91Z2gtZXZhbC5odG1sCm5ldyBmaWxlIG1vZGUg
MTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmMz
Y2UxZTM1YTc4ZWQzNTI3OTBkMGJlNDUzMTYzMmRmODc1NDZiODUKLS0tIC9kZXYvbnVsbAorKysg
Yi9MYXlvdXRUZXN0cy9mYXN0L2pzL2dsb2JhbC1yZXNvbHZlLXRocm91Z2gtZXZhbC5odG1sCkBA
IC0wLDAgKzEsMTMgQEAKKzwhRE9DVFlQRSBIVE1MIFBVQkxJQyAiLS8vSUVURi8vRFREIEhUTUwv
L0VOIj4KKzxodG1sPgorPGhlYWQ+Cis8bGluayByZWw9InN0eWxlc2hlZXQiIGhyZWY9InJlc291
cmNlcy9qcy10ZXN0LXN0eWxlLmNzcyI+Cis8c2NyaXB0IHNyYz0icmVzb3VyY2VzL2pzLXRlc3Qt
cHJlLmpzIj48L3NjcmlwdD4KKzwvaGVhZD4KKzxib2R5PgorPHAgaWQ9ImRlc2NyaXB0aW9uIj48
L3A+Cis8ZGl2IGlkPSJjb25zb2xlIj48L2Rpdj4KKzxzY3JpcHQgc3JjPSJzY3JpcHQtdGVzdHMv
Z2xvYmFsLXJlc29sdmUtdGhyb3VnaC1ldmFsLmpzIj48L3NjcmlwdD4KKzxzY3JpcHQgc3JjPSJy
ZXNvdXJjZXMvanMtdGVzdC1wb3N0LmpzIj48L3NjcmlwdD4KKzwvYm9keT4KKzwvaHRtbD4KZGlm
ZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3QvanMvc2NyaXB0LXRlc3RzL2dsb2JhbC1yZXNvbHZl
LXRocm91Z2gtZXZhbC5qcyBiL0xheW91dFRlc3RzL2Zhc3QvanMvc2NyaXB0LXRlc3RzL2dsb2Jh
bC1yZXNvbHZlLXRocm91Z2gtZXZhbC5qcwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5mOGEyY2YxMjQ4NWQwMDRkZDJi
ODJkZjc3MjQ4ZWNjOTUwMmQ3YjI5Ci0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvZmFz
dC9qcy9zY3JpcHQtdGVzdHMvZ2xvYmFsLXJlc29sdmUtdGhyb3VnaC1ldmFsLmpzCkBAIC0wLDAg
KzEsMTIgQEAKK2Rlc2NyaXB0aW9uKCJNYWtlIHN1cmUgd2UgZG8gYSBjb3JyZWN0IHByb3BlcnR5
IHJlc29sdXRpb24gb2YgYSBnbG9iYWwgb2JqZWN0IHByb3BlcnR5IHdoZW4gY29udGFpbmVkIGJ5
IGV2YWwuIik7CisKK3ZhciBwYXNzID0gZmFsc2U7CisKK3ZhciBhY2Nlc3NHbG9iYWwgPSAoZnVu
Y3Rpb24oKSB7IHJldHVybiBldmFsKCJ2YXIgcGFzcz10cnVlOyAoZnVuY3Rpb24oKXsgcmV0dXJu
IHBhc3M7IH0pIik7IH0pKCk7Cit2YXIgYWNjZXNzTG9jYWwgPSAoZnVuY3Rpb24oKSB7IHZhciBw
YXNzID0gZmFsc2U7IHJldHVybiAoZnVuY3Rpb24oKSB7IHJldHVybiBldmFsKCJ2YXIgcGFzcz10
cnVlOyAoZnVuY3Rpb24oKXsgcmV0dXJuIHBhc3M7IH0pIik7IH0pKCk7IH0pKCk7CisKK3Nob3Vs
ZEJlVHJ1ZSgiYWNjZXNzR2xvYmFsKCkiKTsKK3Nob3VsZEJlVHJ1ZSgiYWNjZXNzTG9jYWwoKSIp
OworCisKK3ZhciBzdWNjZXNzZnVsbHlQYXJzZWQgPSB0cnVlOwpkaWZmIC0tZ2l0IGEvTGF5b3V0
VGVzdHMvcGxhdGZvcm0vd2luL1NraXBwZWQgYi9MYXlvdXRUZXN0cy9wbGF0Zm9ybS93aW4vU2tp
cHBlZAppbmRleCA3ZDdmOTllNzMwYmY3NzBlNmJmMTFmY2I2NjRiMmNiYmJkMzYyYmI0Li45MmVl
Njg0MTIyMjY2NzE1Nzk4NDU5ZDE5NzhhYzhlMGE3MzhmMTQ1IDEwMDY0NAotLS0gYS9MYXlvdXRU
ZXN0cy9wbGF0Zm9ybS93aW4vU2tpcHBlZAorKysgYi9MYXlvdXRUZXN0cy9wbGF0Zm9ybS93aW4v
U2tpcHBlZApAQCAtODY4LDMgKzg2OCw5IEBAIG1lZGlhL21lZGlhLWRvY3VtZW50LWF1ZGlvLXNp
emUuaHRtbAogCiAjIE5lZWRzIHNwZWNpYWwgaGFuZGxpbmcgb2YgbW91c2VQcmVzcyBpbiBzdWJm
cmFtZXMuIFNlZSBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjAyMzYK
IGZhc3QvZXZlbnRzL21vdXNlZG93bi1pbi1zdWJmcmFtZS1zY3JvbGxiYXIuaHRtbAorCisjIGh0
dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0zODc5NCAtIGNvbnRhaW5zIGFu
IEFMRVJUIG1lc3NhZ2UsIGluZGljYXRpbmcgYSBmYWlsdXJlCitmYXN0L2Nzcy9kaXNwbGF5LW5v
bmUtaW5saW5lLXN0eWxlLWNoYW5nZS1jcmFzaC5odG1sCisKKyMgaHR0cHM6Ly9idWdzLndlYmtp
dC5vcmcvc2hvd19idWcuY2dpP2lkPTM4Nzk1IC0gZG9lc24ndCBwcmludCBQYWludEV2ZW50IGlu
c3RydW1lbnRhdGlvbiBvdXRwdXQKK2luc3BlY3Rvci90aW1lbGluZS1wYWludC5odG1sCmRpZmYg
LS1naXQgYS9XZWJDb3JlL0NoYW5nZUxvZyBiL1dlYkNvcmUvQ2hhbmdlTG9nCmluZGV4IGQ5M2Mz
ZmUzMjc5ODRkNGM3Mzc0ZDdiOTYwZTdiODRmMTg0N2IzMDAuLmMwZjgyOWFjMWIyMWU3MDZlOGJk
MGRhYWNlMWI2ZTlhMDU2MzQzZGMgMTAwNjQ0Ci0tLSBhL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBi
L1dlYkNvcmUvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMzIgQEAKKzIwMTAtMDUtMDggIEVyaWMgU2Vp
ZGVsICA8ZXJpY0B3ZWJraXQub3JnPgorCisgICAgICAgIFVucmV2aWV3ZWQsIGp1c3QgcmV2ZXJ0
aW5nIGNvbW1pdC4KKworICAgICAgICBSRUdSRVNTSU9OKDU5MDAwKTogcjU5MDAwIGNvbnRhaW5l
ZCBhbGwgc29ydHMgb2YgY2hhbmdlcyBpdCBzaG91bGQgbm90IGhhdmUsIG5lZWRzIHJldmVydC4K
KyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTM4Nzk4CisK
KyAgICAgICAgVGVzdDogZmFzdC9qcy9nbG9iYWwtcmVzb2x2ZS10aHJvdWdoLWV2YWwuaHRtbAor
CisgICAgICAgICogYmluZGluZ3MvanMvSlNDYWxsYmFja0RhdGEuaDoKKyAgICAgICAgKFdlYkNv
cmU6OkpTQ2FsbGJhY2tEYXRhOjpKU0NhbGxiYWNrRGF0YSk6CisgICAgICAgIChXZWJDb3JlOjpK
U0NhbGxiYWNrRGF0YTo6fkpTQ2FsbGJhY2tEYXRhKToKKyAgICAgICAgKFdlYkNvcmU6OkRlbGV0
ZUNhbGxiYWNrRGF0YVRhc2s6OmNyZWF0ZSk6CisgICAgICAgIChXZWJDb3JlOjpEZWxldGVDYWxs
YmFja0RhdGFUYXNrOjpwZXJmb3JtVGFzayk6CisgICAgICAgIChXZWJDb3JlOjpEZWxldGVDYWxs
YmFja0RhdGFUYXNrOjppc0NsZWFudXBUYXNrKToKKyAgICAgICAgKFdlYkNvcmU6OkRlbGV0ZUNh
bGxiYWNrRGF0YVRhc2s6OkRlbGV0ZUNhbGxiYWNrRGF0YVRhc2spOgorICAgICAgICAqIGJpbmRp
bmdzL2pzL0pTQ3VzdG9tVm9pZENhbGxiYWNrLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkpTQ3Vz
dG9tVm9pZENhbGxiYWNrOjpKU0N1c3RvbVZvaWRDYWxsYmFjayk6CisgICAgICAgIChXZWJDb3Jl
OjpKU0N1c3RvbVZvaWRDYWxsYmFjazo6fkpTQ3VzdG9tVm9pZENhbGxiYWNrKToKKyAgICAgICAg
KiBiaW5kaW5ncy9qcy9KU0N1c3RvbVZvaWRDYWxsYmFjay5oOgorICAgICAgICAqIGJpbmRpbmdz
L3NjcmlwdHMvQ29kZUdlbmVyYXRvckpTLnBtOgorICAgICAgICAqIGJpbmRpbmdzL3NjcmlwdHMv
dGVzdC9KUy9KU1Rlc3RJbnRlcmZhY2UuY3BwOgorICAgICAgICAoV2ViQ29yZTo6KToKKyAgICAg
ICAgKiBiaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0T2JqLmNwcDoKKyAgICAgICAgKFdl
YkNvcmU6Oik6CisgICAgICAgICogd29ya2Vycy9Xb3JrZXJUaHJlYWQuY3BwOgorICAgICAgICAo
V2ViQ29yZTo6V29ya2VyVGhyZWFkU2h1dGRvd25GaW5pc2hUYXNrOjpwZXJmb3JtVGFzayk6Cisg
ICAgICAgIChXZWJDb3JlOjpXb3JrZXJUaHJlYWRTaHV0ZG93blN0YXJ0VGFzazo6cGVyZm9ybVRh
c2spOgorCiAyMDEwLTA1LTA3ICBab2x0YW4gSGVyY3plZyAgPHpoZXJjemVnQHdlYmtpdC5vcmc+
CiAKICAgICAgICAgUmV2aWV3ZWQgYnkgRGlyayBTY2h1bHplCmRpZmYgLS1naXQgYS9XZWJDb3Jl
L2JpbmRpbmdzL2pzL0pTQ2FsbGJhY2tEYXRhLmggYi9XZWJDb3JlL2JpbmRpbmdzL2pzL0pTQ2Fs
bGJhY2tEYXRhLmgKaW5kZXggYjkzOWMwMWJlMzJlZDMxNDdiMTZhZTg2MTQzYTAxYjM4MDUwNWYx
Mi4uZjdiOGJmZTllODVhZjhmZTBiNTgyM2RkMGQyMGY1NjhkMjVjNWFjOSAxMDA2NDQKLS0tIGEv
V2ViQ29yZS9iaW5kaW5ncy9qcy9KU0NhbGxiYWNrRGF0YS5oCisrKyBiL1dlYkNvcmUvYmluZGlu
Z3MvanMvSlNDYWxsYmFja0RhdGEuaApAQCAtMzEsMTQgKzMxLDE1IEBACiAKICNpbmNsdWRlICJK
U0RPTUJpbmRpbmcuaCIKICNpbmNsdWRlICJKU0RPTUdsb2JhbE9iamVjdC5oIgorI2luY2x1ZGUg
IlNjcmlwdEV4ZWN1dGlvbkNvbnRleHQuaCIKICNpbmNsdWRlIDxydW50aW1lL0pTT2JqZWN0Lmg+
CiAjaW5jbHVkZSA8cnVudGltZS9Qcm90ZWN0Lmg+CiAjaW5jbHVkZSA8d3RmL1RocmVhZGluZy5o
PgogCiBuYW1lc3BhY2UgV2ViQ29yZSB7CiAKLS8vIFdlIGhhdmUgdG8gY2xlYW4gdXAgdGhpcyBk
YXRhIG9uIHRoZSBtYWluIHRocmVhZCBiZWNhdXNlIHVucHJvdGVjdGluZyBhCi0vLyBKU09iamVj
dCBvbiBhIG5vbi1tYWluIHRocmVhZCB3aXRob3V0IHN5bmNocm9uaXphdGlvbiB3b3VsZCBjb3Jy
dXB0IHRoZSBoZWFwCisvLyBXZSBoYXZlIHRvIGNsZWFuIHVwIHRoaXMgZGF0YSBvbiB0aGUgY29u
dGV4dCB0aHJlYWQgYmVjYXVzZSB1bnByb3RlY3RpbmcgYQorLy8gSlNPYmplY3Qgb24gdGhlIHdy
b25nIHRocmVhZCB3aXRob3V0IHN5bmNocm9uaXphdGlvbiB3b3VsZCBjb3JydXB0IHRoZSBoZWFw
CiAvLyAoYW5kIHN5bmNocm9uaXphdGlvbiB3b3VsZCBiZSBzbG93KS4KIAogY2xhc3MgSlNDYWxs
YmFja0RhdGEgewpAQCAtNDgsMTIgKzQ5LDE1IEBAIHB1YmxpYzoKICAgICBKU0NhbGxiYWNrRGF0
YShKU0M6OkpTT2JqZWN0KiBjYWxsYmFjaywgSlNET01HbG9iYWxPYmplY3QqIGdsb2JhbE9iamVj
dCkKICAgICAgICAgOiBtX2NhbGxiYWNrKGNhbGxiYWNrKQogICAgICAgICAsIG1fZ2xvYmFsT2Jq
ZWN0KGdsb2JhbE9iamVjdCkKKyNpZm5kZWYgTkRFQlVHCisgICAgICAgICwgbV90aHJlYWQoY3Vy
cmVudFRocmVhZCgpKQorI2VuZGlmCiAgICAgewogICAgIH0KICAgICAKICAgICB+SlNDYWxsYmFj
a0RhdGEoKQogICAgIHsKLSAgICAgICAgQVNTRVJUKGlzTWFpblRocmVhZCgpKTsKKyAgICAgICAg
QVNTRVJUKG1fdGhyZWFkID09IGN1cnJlbnRUaHJlYWQoKSk7CiAgICAgfQogCiAgICAgSlNDOjpK
U09iamVjdCogY2FsbGJhY2soKSB7IHJldHVybiBtX2NhbGxiYWNrLmdldCgpOyB9CkBAIC02NCw2
ICs2OCwyOCBAQCBwdWJsaWM6CiBwcml2YXRlOgogICAgIEpTQzo6UHJvdGVjdGVkUHRyPEpTQzo6
SlNPYmplY3Q+IG1fY2FsbGJhY2s7CiAgICAgSlNDOjpQcm90ZWN0ZWRQdHI8SlNET01HbG9iYWxP
YmplY3Q+IG1fZ2xvYmFsT2JqZWN0OworI2lmbmRlZiBOREVCVUcKKyAgICBUaHJlYWRJZGVudGlm
aWVyIG1fdGhyZWFkOworI2VuZGlmCit9OworCitjbGFzcyBEZWxldGVDYWxsYmFja0RhdGFUYXNr
IDogcHVibGljIFNjcmlwdEV4ZWN1dGlvbkNvbnRleHQ6OlRhc2sgeworcHVibGljOgorICAgIHN0
YXRpYyBQYXNzT3duUHRyPERlbGV0ZUNhbGxiYWNrRGF0YVRhc2s+IGNyZWF0ZShKU0NhbGxiYWNr
RGF0YSogZGF0YSkKKyAgICB7CisgICAgICAgIHJldHVybiBuZXcgRGVsZXRlQ2FsbGJhY2tEYXRh
VGFzayhkYXRhKTsKKyAgICB9CisKKyAgICB2aXJ0dWFsIHZvaWQgcGVyZm9ybVRhc2soU2NyaXB0
RXhlY3V0aW9uQ29udGV4dCopCisgICAgeworICAgICAgICBkZWxldGUgbV9kYXRhOworICAgIH0K
KyAgICB2aXJ0dWFsIGJvb2wgaXNDbGVhbnVwVGFzaygpIGNvbnN0IHsgcmV0dXJuIHRydWU7IH0K
K3ByaXZhdGU6CisKKyAgICBEZWxldGVDYWxsYmFja0RhdGFUYXNrKEpTQ2FsbGJhY2tEYXRhKiBk
YXRhKSA6IG1fZGF0YShkYXRhKSB7fQorCisgICAgSlNDYWxsYmFja0RhdGEqIG1fZGF0YTsKIH07
CiAKIH0gLy8gbmFtZXNwYWNlIFdlYkNvcmUKZGlmZiAtLWdpdCBhL1dlYkNvcmUvYmluZGluZ3Mv
anMvSlNDdXN0b21Wb2lkQ2FsbGJhY2suY3BwIGIvV2ViQ29yZS9iaW5kaW5ncy9qcy9KU0N1c3Rv
bVZvaWRDYWxsYmFjay5jcHAKaW5kZXggMGVkZDY2ZmRkZTJjMjllNTI5NWI5OTU5ZDQyMzJkYmRm
NjI4NjIyYS4uZDVjNGFjMzU0OGZmYjg2MTVhY2QwZDQwMzVjOWFjYWUyNjc1ZjBkNCAxMDA2NDQK
LS0tIGEvV2ViQ29yZS9iaW5kaW5ncy9qcy9KU0N1c3RvbVZvaWRDYWxsYmFjay5jcHAKKysrIGIv
V2ViQ29yZS9iaW5kaW5ncy9qcy9KU0N1c3RvbVZvaWRDYWxsYmFjay5jcHAKQEAgLTQyLDEyICs0
MiwxMyBAQCB1c2luZyBuYW1lc3BhY2UgSlNDOwogICAgIAogSlNDdXN0b21Wb2lkQ2FsbGJhY2s6
OkpTQ3VzdG9tVm9pZENhbGxiYWNrKEpTT2JqZWN0KiBjYWxsYmFjaywgSlNET01HbG9iYWxPYmpl
Y3QqIGdsb2JhbE9iamVjdCkKICAgICA6IG1fZGF0YShuZXcgSlNDYWxsYmFja0RhdGEoY2FsbGJh
Y2ssIGdsb2JhbE9iamVjdCkpCisgICAgLCBtX3NjcmlwdEV4ZWN1dGlvbkNvbnRleHQoZ2xvYmFs
T2JqZWN0LT5zY3JpcHRFeGVjdXRpb25Db250ZXh0KCkpCiB7CiB9CiAKIEpTQ3VzdG9tVm9pZENh
bGxiYWNrOjp+SlNDdXN0b21Wb2lkQ2FsbGJhY2soKQogewotICAgIGNhbGxPbk1haW5UaHJlYWQo
SlNDYWxsYmFja0RhdGE6OmRlbGV0ZURhdGEsIG1fZGF0YSk7CisgICAgbV9zY3JpcHRFeGVjdXRp
b25Db250ZXh0LT5wb3N0VGFzayhEZWxldGVDYWxsYmFja0RhdGFUYXNrOjpjcmVhdGUobV9kYXRh
KSk7CiAjaWZuZGVmIE5ERUJVRwogICAgIG1fZGF0YSA9IDA7CiAjZW5kaWYKZGlmZiAtLWdpdCBh
L1dlYkNvcmUvYmluZGluZ3MvanMvSlNDdXN0b21Wb2lkQ2FsbGJhY2suaCBiL1dlYkNvcmUvYmlu
ZGluZ3MvanMvSlNDdXN0b21Wb2lkQ2FsbGJhY2suaAppbmRleCA0YjhkN2VhMzk0ZGZlOTIxYzBl
MTRkZDJkMTQwYWU2Mjg3ODdiMDM5Li44ZmZlZTQ4YzNlNzU3YjJmNmZkMjUxNGQ4M2QyZTk5ZjIx
ZDJlZTMzIDEwMDY0NAotLS0gYS9XZWJDb3JlL2JpbmRpbmdzL2pzL0pTQ3VzdG9tVm9pZENhbGxi
YWNrLmgKKysrIGIvV2ViQ29yZS9iaW5kaW5ncy9qcy9KU0N1c3RvbVZvaWRDYWxsYmFjay5oCkBA
IC01Myw2ICs1Myw3IEBAIHByaXZhdGU6CiAgICAgSlNDdXN0b21Wb2lkQ2FsbGJhY2soSlNDOjpK
U09iamVjdCogY2FsbGJhY2ssIEpTRE9NR2xvYmFsT2JqZWN0Kik7CiAKICAgICBKU0NhbGxiYWNr
RGF0YSogbV9kYXRhOworICAgIFNjcmlwdEV4ZWN1dGlvbkNvbnRleHQqIG1fc2NyaXB0RXhlY3V0
aW9uQ29udGV4dDsKIH07CiAKIH0gLy8gbmFtZXNwYWNlIFdlYkNvcmUKZGlmZiAtLWdpdCBhL1dl
YkNvcmUvYmluZGluZ3Mvc2NyaXB0cy9Db2RlR2VuZXJhdG9ySlMucG0gYi9XZWJDb3JlL2JpbmRp
bmdzL3NjcmlwdHMvQ29kZUdlbmVyYXRvckpTLnBtCmluZGV4IDVmYzU3YjQ4N2IzNTI5MjA4MTY0
MDNmMTNlY2UyZDRkNzljZTAyYTIuLjU4ODI3YmQ4YjA2YTlkYzAzNWNjMTI2ZmNlNGI0NWU5ZTRk
ZDgxNDIgMTAwNjQ0Ci0tLSBhL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy9Db2RlR2VuZXJhdG9y
SlMucG0KKysrIGIvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL0NvZGVHZW5lcmF0b3JKUy5wbQpA
QCAtMTA1OCw3ICsxMDU4LDcgQEAgc3ViIEdlbmVyYXRlQXR0cmlidXRlc0hhc2hUYWJsZSgkJCkK
ICAgICAgICAgcHVzaChAc3BlY2lhbHMsICJEb250RGVsZXRlIikgdW5sZXNzICRhdHRyaWJ1dGUt
PnNpZ25hdHVyZS0+ZXh0ZW5kZWRBdHRyaWJ1dGVzLT57IkRlbGV0YWJsZSJ9OwogICAgICAgICBw
dXNoKEBzcGVjaWFscywgIkRvbnRFbnVtIikgaWYgJGF0dHJpYnV0ZS0+c2lnbmF0dXJlLT5leHRl
bmRlZEF0dHJpYnV0ZXMtPnsiRG9udEVudW0ifTsKICAgICAgICAgcHVzaChAc3BlY2lhbHMsICJS
ZWFkT25seSIpIGlmICRhdHRyaWJ1dGUtPnR5cGUgPX4gL3JlYWRvbmx5LzsKLSAgICAgICAgbXkg
JHNwZWNpYWwgPSAoQHNwZWNpYWxzID4gMCkgPyBqb2luKCJ8IiwgQHNwZWNpYWxzKSA6ICIwIjsK
KyAgICAgICAgbXkgJHNwZWNpYWwgPSAoQHNwZWNpYWxzID4gMCkgPyBqb2luKCIgfCAiLCBAc3Bl
Y2lhbHMpIDogIjAiOwogICAgICAgICBwdXNoKEBoYXNoU3BlY2lhbHMsICRzcGVjaWFsKTsKIAog
ICAgICAgICBteSAkZ2V0dGVyID0gImpzIiAuICRpbnRlcmZhY2VOYW1lIC4gJGNvZGVHZW5lcmF0
b3ItPldLX3VjZmlyc3QoJGF0dHJpYnV0ZS0+c2lnbmF0dXJlLT5uYW1lKSAuICgkYXR0cmlidXRl
LT5zaWduYXR1cmUtPnR5cGUgPX4gL0NvbnN0cnVjdG9yJC8gPyAiQ29uc3RydWN0b3IiIDogIiIp
OwpAQCAtMTA4Miw3ICsxMDgyLDcgQEAgc3ViIEdlbmVyYXRlQXR0cmlidXRlc0hhc2hUYWJsZSgk
JCkKICAgICAgICAgbXkgJGdldHRlciA9ICJqcyIgLiAkaW50ZXJmYWNlTmFtZSAuICJDb25zdHJ1
Y3RvciI7CiAgICAgICAgIHB1c2goQGhhc2hWYWx1ZTEsICRnZXR0ZXIpOwogICAgICAgICBwdXNo
KEBoYXNoVmFsdWUyLCAiMCIpOwotICAgICAgICBwdXNoKEBoYXNoU3BlY2lhbHMsICJEb250RW51
bXxSZWFkT25seSIpOyAjIEZJWE1FOiBTZXR0aW5nIHRoZSBjb25zdHJ1Y3RvciBzaG91bGQgYmUg
cG9zc2libGUuCisgICAgICAgIHB1c2goQGhhc2hTcGVjaWFscywgIkRvbnRFbnVtIHwgUmVhZE9u
bHkiKTsgIyBGSVhNRTogU2V0dGluZyB0aGUgY29uc3RydWN0b3Igc2hvdWxkIGJlIHBvc3NpYmxl
LgogICAgIH0KIAogICAgICRvYmplY3QtPkdlbmVyYXRlSGFzaFRhYmxlKCRoYXNoTmFtZSwgJGhh
c2hTaXplLApAQCAtMTE0Niw3ICsxMTQ2LDcgQEAgc3ViIEdlbmVyYXRlSW1wbGVtZW50YXRpb24K
ICAgICAgICAgICAgIG15ICRnZXR0ZXIgPSAianMiIC4gJGludGVyZmFjZU5hbWUgLiAkY29kZUdl
bmVyYXRvci0+V0tfdWNmaXJzdCgkY29uc3RhbnQtPm5hbWUpOwogICAgICAgICAgICAgcHVzaChA
aGFzaFZhbHVlMSwgJGdldHRlcik7CiAgICAgICAgICAgICBwdXNoKEBoYXNoVmFsdWUyLCAiMCIp
OwotICAgICAgICAgICAgcHVzaChAaGFzaFNwZWNpYWxzLCAiRG9udERlbGV0ZXxSZWFkT25seSIp
OworICAgICAgICAgICAgcHVzaChAaGFzaFNwZWNpYWxzLCAiRG9udERlbGV0ZSB8IFJlYWRPbmx5
Iik7CiAgICAgICAgIH0KIAogICAgICAgICAkb2JqZWN0LT5HZW5lcmF0ZUhhc2hUYWJsZSgkaGFz
aE5hbWUsICRoYXNoU2l6ZSwKQEAgLTExNzQsNyArMTE3NCw3IEBAIHN1YiBHZW5lcmF0ZUltcGxl
bWVudGF0aW9uCiAgICAgICAgIG15ICRnZXR0ZXIgPSAianMiIC4gJGludGVyZmFjZU5hbWUgLiAk
Y29kZUdlbmVyYXRvci0+V0tfdWNmaXJzdCgkY29uc3RhbnQtPm5hbWUpOwogICAgICAgICBwdXNo
KEBoYXNoVmFsdWUxLCAkZ2V0dGVyKTsKICAgICAgICAgcHVzaChAaGFzaFZhbHVlMiwgIjAiKTsK
LSAgICAgICAgcHVzaChAaGFzaFNwZWNpYWxzLCAiRG9udERlbGV0ZXxSZWFkT25seSIpOworICAg
ICAgICBwdXNoKEBoYXNoU3BlY2lhbHMsICJEb250RGVsZXRlIHwgUmVhZE9ubHkiKTsKICAgICB9
CiAKICAgICBmb3JlYWNoIG15ICRmdW5jdGlvbiAoQHskZGF0YU5vZGUtPmZ1bmN0aW9uc30pIHsK
QEAgLTExOTEsNyArMTE5MSw3IEBAIHN1YiBHZW5lcmF0ZUltcGxlbWVudGF0aW9uCiAgICAgICAg
IHB1c2goQHNwZWNpYWxzLCAiRG9udERlbGV0ZSIpIHVubGVzcyAkZnVuY3Rpb24tPnNpZ25hdHVy
ZS0+ZXh0ZW5kZWRBdHRyaWJ1dGVzLT57IkRlbGV0YWJsZSJ9OwogICAgICAgICBwdXNoKEBzcGVj
aWFscywgIkRvbnRFbnVtIikgaWYgJGZ1bmN0aW9uLT5zaWduYXR1cmUtPmV4dGVuZGVkQXR0cmli
dXRlcy0+eyJEb250RW51bSJ9OwogICAgICAgICBwdXNoKEBzcGVjaWFscywgIkZ1bmN0aW9uIik7
Ci0gICAgICAgIG15ICRzcGVjaWFsID0gKEBzcGVjaWFscyA+IDApID8gam9pbigifCIsIEBzcGVj
aWFscykgOiAiMCI7CisgICAgICAgIG15ICRzcGVjaWFsID0gKEBzcGVjaWFscyA+IDApID8gam9p
bigiIHwgIiwgQHNwZWNpYWxzKSA6ICIwIjsKICAgICAgICAgcHVzaChAaGFzaFNwZWNpYWxzLCAk
c3BlY2lhbCk7CiAgICAgfQogCkBAIC0yMDA3LDYgKzIwMDcsNyBAQCBzdWIgR2VuZXJhdGVDYWxs
YmFja0hlYWRlcgogICAgICMgUHJpdmF0ZSBtZW1iZXJzCiAgICAgcHVzaChAaGVhZGVyQ29udGVu
dCwgIiAgICBKU0NhbGxiYWNrRGF0YSogbV9kYXRhO1xuIik7CiAgICAgcHVzaChAaGVhZGVyQ29u
dGVudCwgIiAgICBSZWZQdHI8RE9NV3JhcHBlcldvcmxkPiBtX2lzb2xhdGVkV29ybGQ7XG4iKTsK
KyAgICBwdXNoKEBoZWFkZXJDb250ZW50LCAiICAgIFNjcmlwdEV4ZWN1dGlvbkNvbnRleHQqIG1f
c2NyaXB0RXhlY3V0aW9uQ29udGV4dDtcbiIpOwogICAgIHB1c2goQGhlYWRlckNvbnRlbnQsICJ9
O1xuXG4iKTsKIAogICAgIHB1c2goQGhlYWRlckNvbnRlbnQsICJ9IC8vIG5hbWVzcGFjZSBXZWJD
b3JlXG5cbiIpOwpAQCAtMjAzOCwxMyArMjAzOSwxNCBAQCBzdWIgR2VuZXJhdGVDYWxsYmFja0lt
cGxlbWVudGF0aW9uCiAgICAgcHVzaChAaW1wbENvbnRlbnQsICIke2NsYXNzTmFtZX06OiR7Y2xh
c3NOYW1lfShKU09iamVjdCogY2FsbGJhY2ssIEpTRE9NR2xvYmFsT2JqZWN0KiBnbG9iYWxPYmpl
Y3QpXG4iKTsKICAgICBwdXNoKEBpbXBsQ29udGVudCwgIiAgICA6IG1fZGF0YShuZXcgSlNDYWxs
YmFja0RhdGEoY2FsbGJhY2ssIGdsb2JhbE9iamVjdCkpXG4iKTsKICAgICBwdXNoKEBpbXBsQ29u
dGVudCwgIiAgICAsIG1faXNvbGF0ZWRXb3JsZChnbG9iYWxPYmplY3QtPndvcmxkKCkpXG4iKTsK
KyAgICBwdXNoKEBpbXBsQ29udGVudCwgIiAgICAsIG1fc2NyaXB0RXhlY3V0aW9uQ29udGV4dChn
bG9iYWxPYmplY3QtPnNjcmlwdEV4ZWN1dGlvbkNvbnRleHQoKSlcbiIpOwogICAgIHB1c2goQGlt
cGxDb250ZW50LCAie1xuIik7CiAgICAgcHVzaChAaW1wbENvbnRlbnQsICJ9XG5cbiIpOwogCiAg
ICAgIyBEZXN0cnVjdG9yCiAgICAgcHVzaChAaW1wbENvbnRlbnQsICIke2NsYXNzTmFtZX06On4k
e2NsYXNzTmFtZX0oKVxuIik7CiAgICAgcHVzaChAaW1wbENvbnRlbnQsICJ7XG4iKTsKLSAgICBw
dXNoKEBpbXBsQ29udGVudCwgIiAgICBjYWxsT25NYWluVGhyZWFkKEpTQ2FsbGJhY2tEYXRhOjpk
ZWxldGVEYXRhLCBtX2RhdGEpO1xuIik7CisgICAgcHVzaChAaW1wbENvbnRlbnQsICIgICAgbV9z
Y3JpcHRFeGVjdXRpb25Db250ZXh0LT5wb3N0VGFzayhEZWxldGVDYWxsYmFja0RhdGFUYXNrOjpj
cmVhdGUobV9kYXRhKSk7XG4iKTsKICAgICBwdXNoKEBpbXBsQ29udGVudCwgIiNpZm5kZWYgTkRF
QlVHXG4iKTsKICAgICBwdXNoKEBpbXBsQ29udGVudCwgIiAgICBtX2RhdGEgPSAwO1xuIik7CiAg
ICAgcHVzaChAaW1wbENvbnRlbnQsICIjZW5kaWZcbiIpOwpkaWZmIC0tZ2l0IGEvV2ViQ29yZS9i
aW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0SW50ZXJmYWNlLmNwcCBiL1dlYkNvcmUvYmlu
ZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdEludGVyZmFjZS5jcHAKaW5kZXggODg1NTQ4MThk
ODEzNTYwOGJkOTE2YWI3OGUxMzRiOWFkMTBlZDAyZS4uMjMzYmEyMTczOGQ4NDcwM2JhNTdkMDUx
MzA0YmU0OGRmMzY1ZWU1NiAxMDA2NDQKLS0tIGEvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rl
c3QvSlMvSlNUZXN0SW50ZXJmYWNlLmNwcAorKysgYi9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMv
dGVzdC9KUy9KU1Rlc3RJbnRlcmZhY2UuY3BwCkBAIC0zOSw3ICszOSw3IEBAIEFTU0VSVF9DTEFT
U19GSVRTX0lOX0NFTEwoSlNUZXN0SW50ZXJmYWNlKTsKIAogc3RhdGljIGNvbnN0IEhhc2hUYWJs
ZVZhbHVlIEpTVGVzdEludGVyZmFjZVRhYmxlVmFsdWVzWzJdID0KIHsKLSAgICB7ICJjb25zdHJ1
Y3RvciIsIERvbnRFbnVtfFJlYWRPbmx5LCAoaW50cHRyX3Qpc3RhdGljX2Nhc3Q8UHJvcGVydHlT
bG90OjpHZXRWYWx1ZUZ1bmM+KGpzVGVzdEludGVyZmFjZUNvbnN0cnVjdG9yKSwgKGludHB0cl90
KTAgVEhVTktfR0VORVJBVE9SKDApIH0sCisgICAgeyAiY29uc3RydWN0b3IiLCBEb250RW51bSB8
IFJlYWRPbmx5LCAoaW50cHRyX3Qpc3RhdGljX2Nhc3Q8UHJvcGVydHlTbG90OjpHZXRWYWx1ZUZ1
bmM+KGpzVGVzdEludGVyZmFjZUNvbnN0cnVjdG9yKSwgKGludHB0cl90KTAgVEhVTktfR0VORVJB
VE9SKDApIH0sCiAgICAgeyAwLCAwLCAwLCAwIFRIVU5LX0dFTkVSQVRPUigwKSB9CiB9OwogCmRp
ZmYgLS1naXQgYS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RPYmouY3Bw
IGIvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0T2JqLmNwcAppbmRleCBk
YTk5ZGUyMzg5ZTRiYjkwZGRjMDFlOGE4OWNiMWQzOGFjMTBlYmZiLi5jODk4YTRmZTQ3MTQzN2Zl
ZmMzODM4Y2Q4NzgwM2VhODI4ZDYxMWNiIDEwMDY0NAotLS0gYS9XZWJDb3JlL2JpbmRpbmdzL3Nj
cmlwdHMvdGVzdC9KUy9KU1Rlc3RPYmouY3BwCisrKyBiL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0
cy90ZXN0L0pTL0pTVGVzdE9iai5jcHAKQEAgLTQ4LDkgKzQ4LDkgQEAgQVNTRVJUX0NMQVNTX0ZJ
VFNfSU5fQ0VMTChKU1Rlc3RPYmopOwogCiBzdGF0aWMgY29uc3QgSGFzaFRhYmxlVmFsdWUgSlNU
ZXN0T2JqVGFibGVWYWx1ZXNbMTVdID0KIHsKLSAgICB7ICJyZWFkT25seUludEF0dHIiLCBEb250
RGVsZXRlfFJlYWRPbmx5LCAoaW50cHRyX3Qpc3RhdGljX2Nhc3Q8UHJvcGVydHlTbG90OjpHZXRW
YWx1ZUZ1bmM+KGpzVGVzdE9ialJlYWRPbmx5SW50QXR0ciksIChpbnRwdHJfdCkwIFRIVU5LX0dF
TkVSQVRPUigwKSB9LAotICAgIHsgInJlYWRPbmx5U3RyaW5nQXR0ciIsIERvbnREZWxldGV8UmVh
ZE9ubHksIChpbnRwdHJfdClzdGF0aWNfY2FzdDxQcm9wZXJ0eVNsb3Q6OkdldFZhbHVlRnVuYz4o
anNUZXN0T2JqUmVhZE9ubHlTdHJpbmdBdHRyKSwgKGludHB0cl90KTAgVEhVTktfR0VORVJBVE9S
KDApIH0sCi0gICAgeyAicmVhZE9ubHlUZXN0T2JqQXR0ciIsIERvbnREZWxldGV8UmVhZE9ubHks
IChpbnRwdHJfdClzdGF0aWNfY2FzdDxQcm9wZXJ0eVNsb3Q6OkdldFZhbHVlRnVuYz4oanNUZXN0
T2JqUmVhZE9ubHlUZXN0T2JqQXR0ciksIChpbnRwdHJfdCkwIFRIVU5LX0dFTkVSQVRPUigwKSB9
LAorICAgIHsgInJlYWRPbmx5SW50QXR0ciIsIERvbnREZWxldGUgfCBSZWFkT25seSwgKGludHB0
cl90KXN0YXRpY19jYXN0PFByb3BlcnR5U2xvdDo6R2V0VmFsdWVGdW5jPihqc1Rlc3RPYmpSZWFk
T25seUludEF0dHIpLCAoaW50cHRyX3QpMCBUSFVOS19HRU5FUkFUT1IoMCkgfSwKKyAgICB7ICJy
ZWFkT25seVN0cmluZ0F0dHIiLCBEb250RGVsZXRlIHwgUmVhZE9ubHksIChpbnRwdHJfdClzdGF0
aWNfY2FzdDxQcm9wZXJ0eVNsb3Q6OkdldFZhbHVlRnVuYz4oanNUZXN0T2JqUmVhZE9ubHlTdHJp
bmdBdHRyKSwgKGludHB0cl90KTAgVEhVTktfR0VORVJBVE9SKDApIH0sCisgICAgeyAicmVhZE9u
bHlUZXN0T2JqQXR0ciIsIERvbnREZWxldGUgfCBSZWFkT25seSwgKGludHB0cl90KXN0YXRpY19j
YXN0PFByb3BlcnR5U2xvdDo6R2V0VmFsdWVGdW5jPihqc1Rlc3RPYmpSZWFkT25seVRlc3RPYmpB
dHRyKSwgKGludHB0cl90KTAgVEhVTktfR0VORVJBVE9SKDApIH0sCiAgICAgeyAiaW50QXR0ciIs
IERvbnREZWxldGUsIChpbnRwdHJfdClzdGF0aWNfY2FzdDxQcm9wZXJ0eVNsb3Q6OkdldFZhbHVl
RnVuYz4oanNUZXN0T2JqSW50QXR0ciksIChpbnRwdHJfdClzZXRKU1Rlc3RPYmpJbnRBdHRyIFRI
VU5LX0dFTkVSQVRPUigwKSB9LAogICAgIHsgImxvbmdMb25nQXR0ciIsIERvbnREZWxldGUsIChp
bnRwdHJfdClzdGF0aWNfY2FzdDxQcm9wZXJ0eVNsb3Q6OkdldFZhbHVlRnVuYz4oanNUZXN0T2Jq
TG9uZ0xvbmdBdHRyKSwgKGludHB0cl90KXNldEpTVGVzdE9iakxvbmdMb25nQXR0ciBUSFVOS19H
RU5FUkFUT1IoMCkgfSwKICAgICB7ICJ1bnNpZ25lZExvbmdMb25nQXR0ciIsIERvbnREZWxldGUs
IChpbnRwdHJfdClzdGF0aWNfY2FzdDxQcm9wZXJ0eVNsb3Q6OkdldFZhbHVlRnVuYz4oanNUZXN0
T2JqVW5zaWduZWRMb25nTG9uZ0F0dHIpLCAoaW50cHRyX3Qpc2V0SlNUZXN0T2JqVW5zaWduZWRM
b25nTG9uZ0F0dHIgVEhVTktfR0VORVJBVE9SKDApIH0sCkBAIC02MCw4ICs2MCw4IEBAIHN0YXRp
YyBjb25zdCBIYXNoVGFibGVWYWx1ZSBKU1Rlc3RPYmpUYWJsZVZhbHVlc1sxNV0gPQogICAgIHsg
ImF0dHJXaXRoU2V0dGVyRXhjZXB0aW9uIiwgRG9udERlbGV0ZSwgKGludHB0cl90KXN0YXRpY19j
YXN0PFByb3BlcnR5U2xvdDo6R2V0VmFsdWVGdW5jPihqc1Rlc3RPYmpBdHRyV2l0aFNldHRlckV4
Y2VwdGlvbiksIChpbnRwdHJfdClzZXRKU1Rlc3RPYmpBdHRyV2l0aFNldHRlckV4Y2VwdGlvbiBU
SFVOS19HRU5FUkFUT1IoMCkgfSwKICAgICB7ICJhdHRyV2l0aEdldHRlckV4Y2VwdGlvbiIsIERv
bnREZWxldGUsIChpbnRwdHJfdClzdGF0aWNfY2FzdDxQcm9wZXJ0eVNsb3Q6OkdldFZhbHVlRnVu
Yz4oanNUZXN0T2JqQXR0cldpdGhHZXR0ZXJFeGNlcHRpb24pLCAoaW50cHRyX3Qpc2V0SlNUZXN0
T2JqQXR0cldpdGhHZXR0ZXJFeGNlcHRpb24gVEhVTktfR0VORVJBVE9SKDApIH0sCiAgICAgeyAi
Y3VzdG9tQXR0ciIsIERvbnREZWxldGUsIChpbnRwdHJfdClzdGF0aWNfY2FzdDxQcm9wZXJ0eVNs
b3Q6OkdldFZhbHVlRnVuYz4oanNUZXN0T2JqQ3VzdG9tQXR0ciksIChpbnRwdHJfdClzZXRKU1Rl
c3RPYmpDdXN0b21BdHRyIFRIVU5LX0dFTkVSQVRPUigwKSB9LAotICAgIHsgInNjcmlwdFN0cmlu
Z0F0dHIiLCBEb250RGVsZXRlfFJlYWRPbmx5LCAoaW50cHRyX3Qpc3RhdGljX2Nhc3Q8UHJvcGVy
dHlTbG90OjpHZXRWYWx1ZUZ1bmM+KGpzVGVzdE9ialNjcmlwdFN0cmluZ0F0dHIpLCAoaW50cHRy
X3QpMCBUSFVOS19HRU5FUkFUT1IoMCkgfSwKLSAgICB7ICJjb25zdHJ1Y3RvciIsIERvbnRFbnVt
fFJlYWRPbmx5LCAoaW50cHRyX3Qpc3RhdGljX2Nhc3Q8UHJvcGVydHlTbG90OjpHZXRWYWx1ZUZ1
bmM+KGpzVGVzdE9iakNvbnN0cnVjdG9yKSwgKGludHB0cl90KTAgVEhVTktfR0VORVJBVE9SKDAp
IH0sCisgICAgeyAic2NyaXB0U3RyaW5nQXR0ciIsIERvbnREZWxldGUgfCBSZWFkT25seSwgKGlu
dHB0cl90KXN0YXRpY19jYXN0PFByb3BlcnR5U2xvdDo6R2V0VmFsdWVGdW5jPihqc1Rlc3RPYmpT
Y3JpcHRTdHJpbmdBdHRyKSwgKGludHB0cl90KTAgVEhVTktfR0VORVJBVE9SKDApIH0sCisgICAg
eyAiY29uc3RydWN0b3IiLCBEb250RW51bSB8IFJlYWRPbmx5LCAoaW50cHRyX3Qpc3RhdGljX2Nh
c3Q8UHJvcGVydHlTbG90OjpHZXRWYWx1ZUZ1bmM+KGpzVGVzdE9iakNvbnN0cnVjdG9yKSwgKGlu
dHB0cl90KTAgVEhVTktfR0VORVJBVE9SKDApIH0sCiAgICAgeyAwLCAwLCAwLCAwIFRIVU5LX0dF
TkVSQVRPUigwKSB9CiB9OwogCkBAIC0xMzUsMzEgKzEzNSwzMSBAQCBib29sIEpTVGVzdE9iakNv
bnN0cnVjdG9yOjpnZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IoRXhlY1N0YXRlKiBleGVjLCBjb25z
dCBJZGVudAogCiBzdGF0aWMgY29uc3QgSGFzaFRhYmxlVmFsdWUgSlNUZXN0T2JqUHJvdG90eXBl
VGFibGVWYWx1ZXNbMjZdID0KIHsKLSAgICB7ICJ2b2lkTWV0aG9kIiwgRG9udERlbGV0ZXxGdW5j
dGlvbiwgKGludHB0cl90KXN0YXRpY19jYXN0PE5hdGl2ZUZ1bmN0aW9uPihqc1Rlc3RPYmpQcm90
b3R5cGVGdW5jdGlvblZvaWRNZXRob2QpLCAoaW50cHRyX3QpMCBUSFVOS19HRU5FUkFUT1IoMCkg
fSwKLSAgICB7ICJ2b2lkTWV0aG9kV2l0aEFyZ3MiLCBEb250RGVsZXRlfEZ1bmN0aW9uLCAoaW50
cHRyX3Qpc3RhdGljX2Nhc3Q8TmF0aXZlRnVuY3Rpb24+KGpzVGVzdE9ialByb3RvdHlwZUZ1bmN0
aW9uVm9pZE1ldGhvZFdpdGhBcmdzKSwgKGludHB0cl90KTMgVEhVTktfR0VORVJBVE9SKDApIH0s
Ci0gICAgeyAiaW50TWV0aG9kIiwgRG9udERlbGV0ZXxGdW5jdGlvbiwgKGludHB0cl90KXN0YXRp
Y19jYXN0PE5hdGl2ZUZ1bmN0aW9uPihqc1Rlc3RPYmpQcm90b3R5cGVGdW5jdGlvbkludE1ldGhv
ZCksIChpbnRwdHJfdCkwIFRIVU5LX0dFTkVSQVRPUigwKSB9LAotICAgIHsgImludE1ldGhvZFdp
dGhBcmdzIiwgRG9udERlbGV0ZXxGdW5jdGlvbiwgKGludHB0cl90KXN0YXRpY19jYXN0PE5hdGl2
ZUZ1bmN0aW9uPihqc1Rlc3RPYmpQcm90b3R5cGVGdW5jdGlvbkludE1ldGhvZFdpdGhBcmdzKSwg
KGludHB0cl90KTMgVEhVTktfR0VORVJBVE9SKDApIH0sCi0gICAgeyAib2JqTWV0aG9kIiwgRG9u
dERlbGV0ZXxGdW5jdGlvbiwgKGludHB0cl90KXN0YXRpY19jYXN0PE5hdGl2ZUZ1bmN0aW9uPihq
c1Rlc3RPYmpQcm90b3R5cGVGdW5jdGlvbk9iak1ldGhvZCksIChpbnRwdHJfdCkwIFRIVU5LX0dF
TkVSQVRPUigwKSB9LAotICAgIHsgIm9iak1ldGhvZFdpdGhBcmdzIiwgRG9udERlbGV0ZXxGdW5j
dGlvbiwgKGludHB0cl90KXN0YXRpY19jYXN0PE5hdGl2ZUZ1bmN0aW9uPihqc1Rlc3RPYmpQcm90
b3R5cGVGdW5jdGlvbk9iak1ldGhvZFdpdGhBcmdzKSwgKGludHB0cl90KTMgVEhVTktfR0VORVJB
VE9SKDApIH0sCi0gICAgeyAic2VyaWFsaXplZFZhbHVlIiwgRG9udERlbGV0ZXxGdW5jdGlvbiwg
KGludHB0cl90KXN0YXRpY19jYXN0PE5hdGl2ZUZ1bmN0aW9uPihqc1Rlc3RPYmpQcm90b3R5cGVG
dW5jdGlvblNlcmlhbGl6ZWRWYWx1ZSksIChpbnRwdHJfdCkxIFRIVU5LX0dFTkVSQVRPUigwKSB9
LAotICAgIHsgIm1ldGhvZFdpdGhFeGNlcHRpb24iLCBEb250RGVsZXRlfEZ1bmN0aW9uLCAoaW50
cHRyX3Qpc3RhdGljX2Nhc3Q8TmF0aXZlRnVuY3Rpb24+KGpzVGVzdE9ialByb3RvdHlwZUZ1bmN0
aW9uTWV0aG9kV2l0aEV4Y2VwdGlvbiksIChpbnRwdHJfdCkwIFRIVU5LX0dFTkVSQVRPUigwKSB9
LAotICAgIHsgImN1c3RvbU1ldGhvZCIsIERvbnREZWxldGV8RnVuY3Rpb24sIChpbnRwdHJfdClz
dGF0aWNfY2FzdDxOYXRpdmVGdW5jdGlvbj4oanNUZXN0T2JqUHJvdG90eXBlRnVuY3Rpb25DdXN0
b21NZXRob2QpLCAoaW50cHRyX3QpMCBUSFVOS19HRU5FUkFUT1IoMCkgfSwKLSAgICB7ICJjdXN0
b21NZXRob2RXaXRoQXJncyIsIERvbnREZWxldGV8RnVuY3Rpb24sIChpbnRwdHJfdClzdGF0aWNf
Y2FzdDxOYXRpdmVGdW5jdGlvbj4oanNUZXN0T2JqUHJvdG90eXBlRnVuY3Rpb25DdXN0b21NZXRo
b2RXaXRoQXJncyksIChpbnRwdHJfdCkzIFRIVU5LX0dFTkVSQVRPUigwKSB9LAotICAgIHsgImN1
c3RvbUFyZ3NBbmRFeGNlcHRpb24iLCBEb250RGVsZXRlfEZ1bmN0aW9uLCAoaW50cHRyX3Qpc3Rh
dGljX2Nhc3Q8TmF0aXZlRnVuY3Rpb24+KGpzVGVzdE9ialByb3RvdHlwZUZ1bmN0aW9uQ3VzdG9t
QXJnc0FuZEV4Y2VwdGlvbiksIChpbnRwdHJfdCkxIFRIVU5LX0dFTkVSQVRPUigwKSB9LAotICAg
IHsgImFkZEV2ZW50TGlzdGVuZXIiLCBEb250RGVsZXRlfEZ1bmN0aW9uLCAoaW50cHRyX3Qpc3Rh
dGljX2Nhc3Q8TmF0aXZlRnVuY3Rpb24+KGpzVGVzdE9ialByb3RvdHlwZUZ1bmN0aW9uQWRkRXZl
bnRMaXN0ZW5lciksIChpbnRwdHJfdCkzIFRIVU5LX0dFTkVSQVRPUigwKSB9LAotICAgIHsgInJl
bW92ZUV2ZW50TGlzdGVuZXIiLCBEb250RGVsZXRlfEZ1bmN0aW9uLCAoaW50cHRyX3Qpc3RhdGlj
X2Nhc3Q8TmF0aXZlRnVuY3Rpb24+KGpzVGVzdE9ialByb3RvdHlwZUZ1bmN0aW9uUmVtb3ZlRXZl
bnRMaXN0ZW5lciksIChpbnRwdHJfdCkzIFRIVU5LX0dFTkVSQVRPUigwKSB9LAotICAgIHsgIndp
dGhEeW5hbWljRnJhbWUiLCBEb250RGVsZXRlfEZ1bmN0aW9uLCAoaW50cHRyX3Qpc3RhdGljX2Nh
c3Q8TmF0aXZlRnVuY3Rpb24+KGpzVGVzdE9ialByb3RvdHlwZUZ1bmN0aW9uV2l0aER5bmFtaWNG
cmFtZSksIChpbnRwdHJfdCkwIFRIVU5LX0dFTkVSQVRPUigwKSB9LAotICAgIHsgIndpdGhEeW5h
bWljRnJhbWVBbmRBcmciLCBEb250RGVsZXRlfEZ1bmN0aW9uLCAoaW50cHRyX3Qpc3RhdGljX2Nh
c3Q8TmF0aXZlRnVuY3Rpb24+KGpzVGVzdE9ialByb3RvdHlwZUZ1bmN0aW9uV2l0aER5bmFtaWNG
cmFtZUFuZEFyZyksIChpbnRwdHJfdCkxIFRIVU5LX0dFTkVSQVRPUigwKSB9LAotICAgIHsgIndp
dGhEeW5hbWljRnJhbWVBbmRPcHRpb25hbEFyZyIsIERvbnREZWxldGV8RnVuY3Rpb24sIChpbnRw
dHJfdClzdGF0aWNfY2FzdDxOYXRpdmVGdW5jdGlvbj4oanNUZXN0T2JqUHJvdG90eXBlRnVuY3Rp
b25XaXRoRHluYW1pY0ZyYW1lQW5kT3B0aW9uYWxBcmcpLCAoaW50cHRyX3QpMiBUSFVOS19HRU5F
UkFUT1IoMCkgfSwKLSAgICB7ICJ3aXRoRHluYW1pY0ZyYW1lQW5kVXNlckdlc3R1cmUiLCBEb250
RGVsZXRlfEZ1bmN0aW9uLCAoaW50cHRyX3Qpc3RhdGljX2Nhc3Q8TmF0aXZlRnVuY3Rpb24+KGpz
VGVzdE9ialByb3RvdHlwZUZ1bmN0aW9uV2l0aER5bmFtaWNGcmFtZUFuZFVzZXJHZXN0dXJlKSwg
KGludHB0cl90KTEgVEhVTktfR0VORVJBVE9SKDApIH0sCi0gICAgeyAid2l0aER5bmFtaWNGcmFt
ZUFuZFVzZXJHZXN0dXJlQVNBRCIsIERvbnREZWxldGV8RnVuY3Rpb24sIChpbnRwdHJfdClzdGF0
aWNfY2FzdDxOYXRpdmVGdW5jdGlvbj4oanNUZXN0T2JqUHJvdG90eXBlRnVuY3Rpb25XaXRoRHlu
YW1pY0ZyYW1lQW5kVXNlckdlc3R1cmVBU0FEKSwgKGludHB0cl90KTIgVEhVTktfR0VORVJBVE9S
KDApIH0sCi0gICAgeyAid2l0aFNjcmlwdFN0YXRlVm9pZCIsIERvbnREZWxldGV8RnVuY3Rpb24s
IChpbnRwdHJfdClzdGF0aWNfY2FzdDxOYXRpdmVGdW5jdGlvbj4oanNUZXN0T2JqUHJvdG90eXBl
RnVuY3Rpb25XaXRoU2NyaXB0U3RhdGVWb2lkKSwgKGludHB0cl90KTAgVEhVTktfR0VORVJBVE9S
KDApIH0sCi0gICAgeyAid2l0aFNjcmlwdFN0YXRlT2JqIiwgRG9udERlbGV0ZXxGdW5jdGlvbiwg
KGludHB0cl90KXN0YXRpY19jYXN0PE5hdGl2ZUZ1bmN0aW9uPihqc1Rlc3RPYmpQcm90b3R5cGVG
dW5jdGlvbldpdGhTY3JpcHRTdGF0ZU9iaiksIChpbnRwdHJfdCkwIFRIVU5LX0dFTkVSQVRPUigw
KSB9LAotICAgIHsgIndpdGhTY3JpcHRTdGF0ZVZvaWRFeGNlcHRpb24iLCBEb250RGVsZXRlfEZ1
bmN0aW9uLCAoaW50cHRyX3Qpc3RhdGljX2Nhc3Q8TmF0aXZlRnVuY3Rpb24+KGpzVGVzdE9ialBy
b3RvdHlwZUZ1bmN0aW9uV2l0aFNjcmlwdFN0YXRlVm9pZEV4Y2VwdGlvbiksIChpbnRwdHJfdCkw
IFRIVU5LX0dFTkVSQVRPUigwKSB9LAotICAgIHsgIndpdGhTY3JpcHRTdGF0ZU9iakV4Y2VwdGlv
biIsIERvbnREZWxldGV8RnVuY3Rpb24sIChpbnRwdHJfdClzdGF0aWNfY2FzdDxOYXRpdmVGdW5j
dGlvbj4oanNUZXN0T2JqUHJvdG90eXBlRnVuY3Rpb25XaXRoU2NyaXB0U3RhdGVPYmpFeGNlcHRp
b24pLCAoaW50cHRyX3QpMCBUSFVOS19HRU5FUkFUT1IoMCkgfSwKLSAgICB7ICJtZXRob2RXaXRo
T3B0aW9uYWxBcmciLCBEb250RGVsZXRlfEZ1bmN0aW9uLCAoaW50cHRyX3Qpc3RhdGljX2Nhc3Q8
TmF0aXZlRnVuY3Rpb24+KGpzVGVzdE9ialByb3RvdHlwZUZ1bmN0aW9uTWV0aG9kV2l0aE9wdGlv
bmFsQXJnKSwgKGludHB0cl90KTEgVEhVTktfR0VORVJBVE9SKDApIH0sCi0gICAgeyAibWV0aG9k
V2l0aE5vbk9wdGlvbmFsQXJnQW5kT3B0aW9uYWxBcmciLCBEb250RGVsZXRlfEZ1bmN0aW9uLCAo
aW50cHRyX3Qpc3RhdGljX2Nhc3Q8TmF0aXZlRnVuY3Rpb24+KGpzVGVzdE9ialByb3RvdHlwZUZ1
bmN0aW9uTWV0aG9kV2l0aE5vbk9wdGlvbmFsQXJnQW5kT3B0aW9uYWxBcmcpLCAoaW50cHRyX3Qp
MiBUSFVOS19HRU5FUkFUT1IoMCkgfSwKLSAgICB7ICJtZXRob2RXaXRoTm9uT3B0aW9uYWxBcmdB
bmRUd29PcHRpb25hbEFyZ3MiLCBEb250RGVsZXRlfEZ1bmN0aW9uLCAoaW50cHRyX3Qpc3RhdGlj
X2Nhc3Q8TmF0aXZlRnVuY3Rpb24+KGpzVGVzdE9ialByb3RvdHlwZUZ1bmN0aW9uTWV0aG9kV2l0
aE5vbk9wdGlvbmFsQXJnQW5kVHdvT3B0aW9uYWxBcmdzKSwgKGludHB0cl90KTMgVEhVTktfR0VO
RVJBVE9SKDApIH0sCisgICAgeyAidm9pZE1ldGhvZCIsIERvbnREZWxldGUgfCBGdW5jdGlvbiwg
KGludHB0cl90KXN0YXRpY19jYXN0PE5hdGl2ZUZ1bmN0aW9uPihqc1Rlc3RPYmpQcm90b3R5cGVG
dW5jdGlvblZvaWRNZXRob2QpLCAoaW50cHRyX3QpMCBUSFVOS19HRU5FUkFUT1IoMCkgfSwKKyAg
ICB7ICJ2b2lkTWV0aG9kV2l0aEFyZ3MiLCBEb250RGVsZXRlIHwgRnVuY3Rpb24sIChpbnRwdHJf
dClzdGF0aWNfY2FzdDxOYXRpdmVGdW5jdGlvbj4oanNUZXN0T2JqUHJvdG90eXBlRnVuY3Rpb25W
b2lkTWV0aG9kV2l0aEFyZ3MpLCAoaW50cHRyX3QpMyBUSFVOS19HRU5FUkFUT1IoMCkgfSwKKyAg
ICB7ICJpbnRNZXRob2QiLCBEb250RGVsZXRlIHwgRnVuY3Rpb24sIChpbnRwdHJfdClzdGF0aWNf
Y2FzdDxOYXRpdmVGdW5jdGlvbj4oanNUZXN0T2JqUHJvdG90eXBlRnVuY3Rpb25JbnRNZXRob2Qp
LCAoaW50cHRyX3QpMCBUSFVOS19HRU5FUkFUT1IoMCkgfSwKKyAgICB7ICJpbnRNZXRob2RXaXRo
QXJncyIsIERvbnREZWxldGUgfCBGdW5jdGlvbiwgKGludHB0cl90KXN0YXRpY19jYXN0PE5hdGl2
ZUZ1bmN0aW9uPihqc1Rlc3RPYmpQcm90b3R5cGVGdW5jdGlvbkludE1ldGhvZFdpdGhBcmdzKSwg
KGludHB0cl90KTMgVEhVTktfR0VORVJBVE9SKDApIH0sCisgICAgeyAib2JqTWV0aG9kIiwgRG9u
dERlbGV0ZSB8IEZ1bmN0aW9uLCAoaW50cHRyX3Qpc3RhdGljX2Nhc3Q8TmF0aXZlRnVuY3Rpb24+
KGpzVGVzdE9ialByb3RvdHlwZUZ1bmN0aW9uT2JqTWV0aG9kKSwgKGludHB0cl90KTAgVEhVTktf
R0VORVJBVE9SKDApIH0sCisgICAgeyAib2JqTWV0aG9kV2l0aEFyZ3MiLCBEb250RGVsZXRlIHwg
RnVuY3Rpb24sIChpbnRwdHJfdClzdGF0aWNfY2FzdDxOYXRpdmVGdW5jdGlvbj4oanNUZXN0T2Jq
UHJvdG90eXBlRnVuY3Rpb25PYmpNZXRob2RXaXRoQXJncyksIChpbnRwdHJfdCkzIFRIVU5LX0dF
TkVSQVRPUigwKSB9LAorICAgIHsgInNlcmlhbGl6ZWRWYWx1ZSIsIERvbnREZWxldGUgfCBGdW5j
dGlvbiwgKGludHB0cl90KXN0YXRpY19jYXN0PE5hdGl2ZUZ1bmN0aW9uPihqc1Rlc3RPYmpQcm90
b3R5cGVGdW5jdGlvblNlcmlhbGl6ZWRWYWx1ZSksIChpbnRwdHJfdCkxIFRIVU5LX0dFTkVSQVRP
UigwKSB9LAorICAgIHsgIm1ldGhvZFdpdGhFeGNlcHRpb24iLCBEb250RGVsZXRlIHwgRnVuY3Rp
b24sIChpbnRwdHJfdClzdGF0aWNfY2FzdDxOYXRpdmVGdW5jdGlvbj4oanNUZXN0T2JqUHJvdG90
eXBlRnVuY3Rpb25NZXRob2RXaXRoRXhjZXB0aW9uKSwgKGludHB0cl90KTAgVEhVTktfR0VORVJB
VE9SKDApIH0sCisgICAgeyAiY3VzdG9tTWV0aG9kIiwgRG9udERlbGV0ZSB8IEZ1bmN0aW9uLCAo
aW50cHRyX3Qpc3RhdGljX2Nhc3Q8TmF0aXZlRnVuY3Rpb24+KGpzVGVzdE9ialByb3RvdHlwZUZ1
bmN0aW9uQ3VzdG9tTWV0aG9kKSwgKGludHB0cl90KTAgVEhVTktfR0VORVJBVE9SKDApIH0sCisg
ICAgeyAiY3VzdG9tTWV0aG9kV2l0aEFyZ3MiLCBEb250RGVsZXRlIHwgRnVuY3Rpb24sIChpbnRw
dHJfdClzdGF0aWNfY2FzdDxOYXRpdmVGdW5jdGlvbj4oanNUZXN0T2JqUHJvdG90eXBlRnVuY3Rp
b25DdXN0b21NZXRob2RXaXRoQXJncyksIChpbnRwdHJfdCkzIFRIVU5LX0dFTkVSQVRPUigwKSB9
LAorICAgIHsgImN1c3RvbUFyZ3NBbmRFeGNlcHRpb24iLCBEb250RGVsZXRlIHwgRnVuY3Rpb24s
IChpbnRwdHJfdClzdGF0aWNfY2FzdDxOYXRpdmVGdW5jdGlvbj4oanNUZXN0T2JqUHJvdG90eXBl
RnVuY3Rpb25DdXN0b21BcmdzQW5kRXhjZXB0aW9uKSwgKGludHB0cl90KTEgVEhVTktfR0VORVJB
VE9SKDApIH0sCisgICAgeyAiYWRkRXZlbnRMaXN0ZW5lciIsIERvbnREZWxldGUgfCBGdW5jdGlv
biwgKGludHB0cl90KXN0YXRpY19jYXN0PE5hdGl2ZUZ1bmN0aW9uPihqc1Rlc3RPYmpQcm90b3R5
cGVGdW5jdGlvbkFkZEV2ZW50TGlzdGVuZXIpLCAoaW50cHRyX3QpMyBUSFVOS19HRU5FUkFUT1Io
MCkgfSwKKyAgICB7ICJyZW1vdmVFdmVudExpc3RlbmVyIiwgRG9udERlbGV0ZSB8IEZ1bmN0aW9u
LCAoaW50cHRyX3Qpc3RhdGljX2Nhc3Q8TmF0aXZlRnVuY3Rpb24+KGpzVGVzdE9ialByb3RvdHlw
ZUZ1bmN0aW9uUmVtb3ZlRXZlbnRMaXN0ZW5lciksIChpbnRwdHJfdCkzIFRIVU5LX0dFTkVSQVRP
UigwKSB9LAorICAgIHsgIndpdGhEeW5hbWljRnJhbWUiLCBEb250RGVsZXRlIHwgRnVuY3Rpb24s
IChpbnRwdHJfdClzdGF0aWNfY2FzdDxOYXRpdmVGdW5jdGlvbj4oanNUZXN0T2JqUHJvdG90eXBl
RnVuY3Rpb25XaXRoRHluYW1pY0ZyYW1lKSwgKGludHB0cl90KTAgVEhVTktfR0VORVJBVE9SKDAp
IH0sCisgICAgeyAid2l0aER5bmFtaWNGcmFtZUFuZEFyZyIsIERvbnREZWxldGUgfCBGdW5jdGlv
biwgKGludHB0cl90KXN0YXRpY19jYXN0PE5hdGl2ZUZ1bmN0aW9uPihqc1Rlc3RPYmpQcm90b3R5
cGVGdW5jdGlvbldpdGhEeW5hbWljRnJhbWVBbmRBcmcpLCAoaW50cHRyX3QpMSBUSFVOS19HRU5F
UkFUT1IoMCkgfSwKKyAgICB7ICJ3aXRoRHluYW1pY0ZyYW1lQW5kT3B0aW9uYWxBcmciLCBEb250
RGVsZXRlIHwgRnVuY3Rpb24sIChpbnRwdHJfdClzdGF0aWNfY2FzdDxOYXRpdmVGdW5jdGlvbj4o
anNUZXN0T2JqUHJvdG90eXBlRnVuY3Rpb25XaXRoRHluYW1pY0ZyYW1lQW5kT3B0aW9uYWxBcmcp
LCAoaW50cHRyX3QpMiBUSFVOS19HRU5FUkFUT1IoMCkgfSwKKyAgICB7ICJ3aXRoRHluYW1pY0Zy
YW1lQW5kVXNlckdlc3R1cmUiLCBEb250RGVsZXRlIHwgRnVuY3Rpb24sIChpbnRwdHJfdClzdGF0
aWNfY2FzdDxOYXRpdmVGdW5jdGlvbj4oanNUZXN0T2JqUHJvdG90eXBlRnVuY3Rpb25XaXRoRHlu
YW1pY0ZyYW1lQW5kVXNlckdlc3R1cmUpLCAoaW50cHRyX3QpMSBUSFVOS19HRU5FUkFUT1IoMCkg
fSwKKyAgICB7ICJ3aXRoRHluYW1pY0ZyYW1lQW5kVXNlckdlc3R1cmVBU0FEIiwgRG9udERlbGV0
ZSB8IEZ1bmN0aW9uLCAoaW50cHRyX3Qpc3RhdGljX2Nhc3Q8TmF0aXZlRnVuY3Rpb24+KGpzVGVz
dE9ialByb3RvdHlwZUZ1bmN0aW9uV2l0aER5bmFtaWNGcmFtZUFuZFVzZXJHZXN0dXJlQVNBRCks
IChpbnRwdHJfdCkyIFRIVU5LX0dFTkVSQVRPUigwKSB9LAorICAgIHsgIndpdGhTY3JpcHRTdGF0
ZVZvaWQiLCBEb250RGVsZXRlIHwgRnVuY3Rpb24sIChpbnRwdHJfdClzdGF0aWNfY2FzdDxOYXRp
dmVGdW5jdGlvbj4oanNUZXN0T2JqUHJvdG90eXBlRnVuY3Rpb25XaXRoU2NyaXB0U3RhdGVWb2lk
KSwgKGludHB0cl90KTAgVEhVTktfR0VORVJBVE9SKDApIH0sCisgICAgeyAid2l0aFNjcmlwdFN0
YXRlT2JqIiwgRG9udERlbGV0ZSB8IEZ1bmN0aW9uLCAoaW50cHRyX3Qpc3RhdGljX2Nhc3Q8TmF0
aXZlRnVuY3Rpb24+KGpzVGVzdE9ialByb3RvdHlwZUZ1bmN0aW9uV2l0aFNjcmlwdFN0YXRlT2Jq
KSwgKGludHB0cl90KTAgVEhVTktfR0VORVJBVE9SKDApIH0sCisgICAgeyAid2l0aFNjcmlwdFN0
YXRlVm9pZEV4Y2VwdGlvbiIsIERvbnREZWxldGUgfCBGdW5jdGlvbiwgKGludHB0cl90KXN0YXRp
Y19jYXN0PE5hdGl2ZUZ1bmN0aW9uPihqc1Rlc3RPYmpQcm90b3R5cGVGdW5jdGlvbldpdGhTY3Jp
cHRTdGF0ZVZvaWRFeGNlcHRpb24pLCAoaW50cHRyX3QpMCBUSFVOS19HRU5FUkFUT1IoMCkgfSwK
KyAgICB7ICJ3aXRoU2NyaXB0U3RhdGVPYmpFeGNlcHRpb24iLCBEb250RGVsZXRlIHwgRnVuY3Rp
b24sIChpbnRwdHJfdClzdGF0aWNfY2FzdDxOYXRpdmVGdW5jdGlvbj4oanNUZXN0T2JqUHJvdG90
eXBlRnVuY3Rpb25XaXRoU2NyaXB0U3RhdGVPYmpFeGNlcHRpb24pLCAoaW50cHRyX3QpMCBUSFVO
S19HRU5FUkFUT1IoMCkgfSwKKyAgICB7ICJtZXRob2RXaXRoT3B0aW9uYWxBcmciLCBEb250RGVs
ZXRlIHwgRnVuY3Rpb24sIChpbnRwdHJfdClzdGF0aWNfY2FzdDxOYXRpdmVGdW5jdGlvbj4oanNU
ZXN0T2JqUHJvdG90eXBlRnVuY3Rpb25NZXRob2RXaXRoT3B0aW9uYWxBcmcpLCAoaW50cHRyX3Qp
MSBUSFVOS19HRU5FUkFUT1IoMCkgfSwKKyAgICB7ICJtZXRob2RXaXRoTm9uT3B0aW9uYWxBcmdB
bmRPcHRpb25hbEFyZyIsIERvbnREZWxldGUgfCBGdW5jdGlvbiwgKGludHB0cl90KXN0YXRpY19j
YXN0PE5hdGl2ZUZ1bmN0aW9uPihqc1Rlc3RPYmpQcm90b3R5cGVGdW5jdGlvbk1ldGhvZFdpdGhO
b25PcHRpb25hbEFyZ0FuZE9wdGlvbmFsQXJnKSwgKGludHB0cl90KTIgVEhVTktfR0VORVJBVE9S
KDApIH0sCisgICAgeyAibWV0aG9kV2l0aE5vbk9wdGlvbmFsQXJnQW5kVHdvT3B0aW9uYWxBcmdz
IiwgRG9udERlbGV0ZSB8IEZ1bmN0aW9uLCAoaW50cHRyX3Qpc3RhdGljX2Nhc3Q8TmF0aXZlRnVu
Y3Rpb24+KGpzVGVzdE9ialByb3RvdHlwZUZ1bmN0aW9uTWV0aG9kV2l0aE5vbk9wdGlvbmFsQXJn
QW5kVHdvT3B0aW9uYWxBcmdzKSwgKGludHB0cl90KTMgVEhVTktfR0VORVJBVE9SKDApIH0sCiAg
ICAgeyAwLCAwLCAwLCAwIFRIVU5LX0dFTkVSQVRPUigwKSB9CiB9OwogCmRpZmYgLS1naXQgYS9X
ZWJDb3JlL3dvcmtlcnMvV29ya2VyVGhyZWFkLmNwcCBiL1dlYkNvcmUvd29ya2Vycy9Xb3JrZXJU
aHJlYWQuY3BwCmluZGV4IDUyNDY2YmZjNGFiNTIyYWU1YjczNWI3YjBhZTA3NzM4OGQ4MTcwNTYu
Ljk2Y2E4OWI2OTUyMzY1ZjIyZTdlODJjMGE5ZjdiZGFkZTUyZTFkMzAgMTAwNjQ0Ci0tLSBhL1dl
YkNvcmUvd29ya2Vycy9Xb3JrZXJUaHJlYWQuY3BwCisrKyBiL1dlYkNvcmUvd29ya2Vycy9Xb3Jr
ZXJUaHJlYWQuY3BwCkBAIC0xNjksNiArMTY5LDggQEAgcHVibGljOgogICAgIHsKICAgICAgICAg
QVNTRVJUKGNvbnRleHQtPmlzV29ya2VyQ29udGV4dCgpKTsKICAgICAgICAgV29ya2VyQ29udGV4
dCogd29ya2VyQ29udGV4dCA9IHN0YXRpY19jYXN0PFdvcmtlckNvbnRleHQqPihjb250ZXh0KTsK
KyAgICAgICAgLy8gSXQncyBub3Qgc2FmZSB0byBjYWxsIGNsZWFyU2NyaXB0IHVudGlsIGFsbCB0
aGUgY2xlYW51cCB0YXNrcyBwb3N0ZWQgYnkgZnVuY3Rpb25zIGluaXRpYXRlZCBieSBXb3JrZXJU
aHJlYWRTaHV0ZG93blN0YXJ0VGFzayBoYXZlIGNvbXBsZXRlZC4KKyAgICAgICAgd29ya2VyQ29u
dGV4dC0+Y2xlYXJTY3JpcHQoKTsKICAgICAgICAgd29ya2VyQ29udGV4dC0+dGhyZWFkKCktPnJ1
bkxvb3AoKS50ZXJtaW5hdGUoKTsKICAgICB9CiAKQEAgLTE5OSw3ICsyMDEsNiBAQCBwdWJsaWM6
CiAgICAgICAgIC8vIEV2ZW50IGxpc3RlbmVycyB3b3VsZCBrZWVwIERPTVdyYXBwZXJXb3JsZCBv
YmplY3RzIGFsaXZlIGZvciB0b28gbG9uZy4gQWxzbywgdGhleSBoYXZlIHJlZmVyZW5jZXMgdG8g
SlMgb2JqZWN0cywKICAgICAgICAgLy8gd2hpY2ggYmVjb21lIGRhbmdsaW5nIG9uY2UgSGVhcCBp
cyBkZXN0cm95ZWQuCiAgICAgICAgIHdvcmtlckNvbnRleHQtPnJlbW92ZUFsbEV2ZW50TGlzdGVu
ZXJzKCk7Ci0gICAgICAgIHdvcmtlckNvbnRleHQtPmNsZWFyU2NyaXB0KCk7CiAKICNpZiBFTkFC
TEUoREFUQUJBU0UpCiAgICAgICAgIC8vIFdlIHdhaXQgZm9yIHRoZSBkYXRhYmFzZSB0aHJlYWQg
dG8gY2xlYW4gdXAgYWxsIGl0cyBzdHVmZiBzbyB0aGF0IHdlCmRpZmYgLS1naXQgYS9XZWJLaXRU
b29scy9DaGFuZ2VMb2cgYi9XZWJLaXRUb29scy9DaGFuZ2VMb2cKaW5kZXggZDdjNDVmMzRkMjM0
ZjFkMzY3NWNmNDJiMmM3OTJhOGVhNmJkOWY4ZC4uYzllNTgxMjU5YjQ5Y2QwZjIzZWY4ZTYzNDM4
NzBkYjcyYjdmYzdmMyAxMDA2NDQKLS0tIGEvV2ViS2l0VG9vbHMvQ2hhbmdlTG9nCisrKyBiL1dl
YktpdFRvb2xzL0NoYW5nZUxvZwpAQCAtMSwzICsxLDIzIEBACisyMDEwLTA1LTA4ICBFcmljIFNl
aWRlbCAgPGVyaWNAd2Via2l0Lm9yZz4KKworICAgICAgICBVbnJldmlld2VkLCBqdXN0IHJldmVy
dGluZyBjb21taXQuCisKKyAgICAgICAgUkVHUkVTU0lPTig1OTAwMCk6IHI1OTAwMCBjb250YWlu
ZWQgYWxsIHNvcnRzIG9mIGNoYW5nZXMgaXQgc2hvdWxkIG5vdCBoYXZlLCBuZWVkcyByZXZlcnQu
CisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0zODc5OAor
CisgICAgICAgICogU2NyaXB0cy93ZWJraXRweS9jb21tb24vc3lzdGVtL2V4ZWN1dGl2ZS5weToK
KyAgICAgICAgKiBTY3JpcHRzL3dlYmtpdHB5L2NvbW1vbi9zeXN0ZW0vZXhlY3V0aXZlX3VuaXR0
ZXN0LnB5OgorICAgICAgICAqIFNjcmlwdHMvd2Via2l0cHkvbGF5b3V0X3Rlc3RzL3BvcnQvY2hy
b21pdW1fbGludXgucHk6CisgICAgICAgICogU2NyaXB0cy93ZWJraXRweS9sYXlvdXRfdGVzdHMv
cG9ydC9jaHJvbWl1bV9tYWMucHk6CisgICAgICAgICogU2NyaXB0cy93ZWJraXRweS9sYXlvdXRf
dGVzdHMvcG9ydC9jaHJvbWl1bV93aW4ucHk6CisgICAgICAgICogU2NyaXB0cy93ZWJraXRweS9s
YXlvdXRfdGVzdHMvcG9ydC9tYWMucHk6CisgICAgICAgICogU2NyaXB0cy93ZWJraXRweS9sYXlv
dXRfdGVzdHMvcG9ydC93ZWJraXQucHk6CisgICAgICAgICogU2NyaXB0cy93ZWJraXRweS9sYXlv
dXRfdGVzdHMvcG9ydC93ZWJraXRfdW5pdHRlc3QucHk6IFJlbW92ZWQuCisgICAgICAgICogU2Ny
aXB0cy93ZWJraXRweS9sYXlvdXRfdGVzdHMvcG9ydC93aW4ucHk6CisgICAgICAgICogU2NyaXB0
cy93ZWJraXRweS9sYXlvdXRfdGVzdHMvcnVuX3dlYmtpdF90ZXN0c191bml0dGVzdC5weToKKyAg
ICAgICAgKiBTY3JpcHRzL3dlYmtpdHB5L3Rvb2wvY29tbWFuZHMvZG93bmxvYWQucHk6CisgICAg
ICAgICogU2NyaXB0cy93ZWJraXRweS90b29sL2NvbW1hbmRzL2Rvd25sb2FkX3VuaXR0ZXN0LnB5
OgorCiAyMDEwLTA1LTA2ICBFcmljIFNlaWRlbCAgPGVyaWNAd2Via2l0Lm9yZz4KIAogICAgICAg
ICBSZXZpZXdlZCBieSBEYW5pZWwgQmF0ZXMuCmRpZmYgLS1naXQgYS9XZWJLaXRUb29scy9TY3Jp
cHRzL3dlYmtpdHB5L2NvbW1vbi9zeXN0ZW0vZXhlY3V0aXZlLnB5IGIvV2ViS2l0VG9vbHMvU2Ny
aXB0cy93ZWJraXRweS9jb21tb24vc3lzdGVtL2V4ZWN1dGl2ZS5weQppbmRleCBmMjkxYWMzNDAz
NTA5Yzc2Y2I0NWY4ZmYzNGEzMjhiYzkwNWEyOGE1Li4xMWViMDUxNjVmY2ZjMDFkYzU5NTA1NTQ1
ZWI2NzM1MzU4MTcxY2UwIDEwMDY0NAotLS0gYS9XZWJLaXRUb29scy9TY3JpcHRzL3dlYmtpdHB5
L2NvbW1vbi9zeXN0ZW0vZXhlY3V0aXZlLnB5CisrKyBiL1dlYktpdFRvb2xzL1NjcmlwdHMvd2Vi
a2l0cHkvY29tbW9uL3N5c3RlbS9leGVjdXRpdmUucHkKQEAgLTMzLDggKzMzLDYgQEAgdHJ5Ogog
ZXhjZXB0IEltcG9ydEVycm9yOgogICAgIG11bHRpcHJvY2Vzc2luZyA9IE5vbmUKIAotaW1wb3J0
IGVycm5vCi1pbXBvcnQgbG9nZ2luZwogaW1wb3J0IG9zCiBpbXBvcnQgcGxhdGZvcm0KIGltcG9y
dCBTdHJpbmdJTwpAQCAtNDUsOSArNDMsNiBAQCBpbXBvcnQgc3lzCiBmcm9tIHdlYmtpdHB5LmNv
bW1vbi5zeXN0ZW0uZGVwcmVjYXRlZF9sb2dnaW5nIGltcG9ydCB0ZWUKIAogCi1fbG9nID0gbG9n
Z2luZy5nZXRMb2dnZXIoIndlYmtpdHB5LmNvbW1vbi5zeXN0ZW0iKQotCi0KIGNsYXNzIFNjcmlw
dEVycm9yKEV4Y2VwdGlvbik6CiAKICAgICBkZWYgX19pbml0X18oc2VsZiwKQEAgLTE2Nyw1OCAr
MTYyLDMxIEBAIGNsYXNzIEV4ZWN1dGl2ZShvYmplY3QpOgogICAgICAgICAjIG1hY2hpbmVzLgog
ICAgICAgICByZXR1cm4gMgogCi0gICAgIyBFeGVjdXRpdmUgdW5pdCB0ZXN0cyB1c2VzIHRoaXMg
aW5mb3JtYXRpb24gdG8gdmFsaWRhdGUgdGhhdAotICAgICMga2lsbF9wcm9jZXNzL2tpbGxfYWxs
IHdvcmsgYXMgZXhwZWN0ZWQgYW5kIGNhdXNlIHRoZSBleHBlY3RlZCBleGl0IGNvZGVzLgotICAg
ICMgV2Ugc3RvcmUgdGhpcyBpbmZvcm1hdGlvbiBpbiB0aGlzIGZpbGUgdG8ga2VlcCBpdCBuZXh0
IHRvIHRoZSBwbGF0Zm9ybSBpZnMuCi0gICAgIyB0YXNra2lsbC5leGUgY2F1c2VzIHByb2Nlc3Nl
cyB0byBleGl0IDAsIG90aGVyd2lzZSBwcm9jZXNzZXMgZXhpdCAtU0lHTkFMCi0gICAgX0tJTExf
UFJPQ0VTU19LSUxMRURfUFJPQ0VTU19FWElUX0NPREUgPSAwIGlmIHN5cy5wbGF0Zm9ybSA9PSAi
d2luZG93cyIgZWxzZSAtc2lnbmFsLlNJR0tJTEwKLSAgICBfS0lMTF9BTExfS0lMTEVEX1BST0NF
U1NfRVhJVF9DT0RFID0gMCBpZiBzeXMucGxhdGZvcm0gaW4gKCJ3aW5kb3dzIiwgImN5Z3dpbiIp
IGVsc2UgLXNpZ25hbC5TSUdURVJNCi0KICAgICBkZWYga2lsbF9wcm9jZXNzKHNlbGYsIHBpZCk6
CiAgICAgICAgICIiIkF0dGVtcHRzIHRvIGtpbGwgdGhlIGdpdmVuIHBpZC4KICAgICAgICAgV2ls
bCBmYWlsIHNpbGVudGx5IGlmIHBpZCBkb2VzIG5vdCBleGlzdCBvciBpbnN1ZmZpY2llbnQgcGVy
bWlzc3Npb25zLiIiIgotICAgICAgICBpZiBzeXMucGxhdGZvcm0gPT0gIndpbmRvd3MiOgotICAg
ICAgICAgICAgIyBXZSBvbmx5IHVzZSB0YXNra2lsbC5leGUgb24gd2luZG93cyAobm90IGN5Z3dp
bikgYmVjYXVzZSBzdWJwcm9jZXNzLnBpZAotICAgICAgICAgICAgIyBpcyBhIENZR1dJTiBwaWQg
YW5kIHRhc2traWxsLmV4ZSBleHBlY3RzIGEgd2luZG93cyBwaWQuCi0gICAgICAgICAgICAjIFRo
YW5rZnVsbHkgb3Mua2lsbCBvbiBDWUdXSU4gaGFuZGxlcyBlaXRoZXIgcGlkIHR5cGUuCi0gICAg
ICAgICAgICBjb21tYW5kID0gWyJ0YXNra2lsbC5leGUiLCAiL2YiLCAiL3BpZCIsIHBpZF0KLSAg
ICAgICAgICAgICMgdGFza2tpbGwgd2lsbCBleGl0IDEyOCBpZiB0aGUgcHJvY2VzcyBpcyBub3Qg
Zm91bmQuICBXZSBzaG91bGQgbG9nLgorICAgICAgICBpZiBwbGF0Zm9ybS5zeXN0ZW0oKSA9PSAi
V2luZG93cyI6CisgICAgICAgICAgICAjIEFjY29yZGluZyB0byBodHRwOi8vZG9jcy5weXRob24u
b3JnL2xpYnJhcnkvb3MuaHRtbAorICAgICAgICAgICAgIyBvcy5raWxsIGlzbid0IGF2YWlsYWJs
ZSBvbiBXaW5kb3dzLiAgSG93ZXZlciwgd2hlbiBJIHRyaWVkIGl0CisgICAgICAgICAgICAjIHVz
aW5nIEN5Z3dpbiwgaXQgd29ya2VkIGZpbmUuICBXZSBzaG91bGQgaW52ZXN0aWdhdGUgd2hldGhl
cgorICAgICAgICAgICAgIyB3ZSBuZWVkIHRoaXMgcGxhdGZvcm0gc3BlY2lmaWMgY29kZSBoZXJl
LgorICAgICAgICAgICAgY29tbWFuZCA9IFsidGFza2tpbGwuZXhlIiwgIi9mIiwgIi9waWQiLCBz
dHIocGlkKV0KKyAgICAgICAgICAgICMgdGFza2tpbGwgd2lsbCBleGl0IDEyOCBpZiB0aGUgcHJv
Y2VzcyBpcyBub3QgZm91bmQuCiAgICAgICAgICAgICBzZWxmLnJ1bl9jb21tYW5kKGNvbW1hbmQs
IGVycm9yX2hhbmRsZXI9c2VsZi5pZ25vcmVfZXJyb3IpCiAgICAgICAgICAgICByZXR1cm4KLQot
ICAgICAgICAjIEFjY29yZGluZyB0byBodHRwOi8vZG9jcy5weXRob24ub3JnL2xpYnJhcnkvb3Mu
aHRtbAotICAgICAgICAjIG9zLmtpbGwgaXNuJ3QgYXZhaWxhYmxlIG9uIFdpbmRvd3MuIHB5dGhv
biAyLjUuNSBvcy5raWxsIGFwcGVhcnMKLSAgICAgICAgIyB0byB3b3JrIGluIGN5Z3dpbiwgaG93
ZXZlciBpdCBvY2Nhc2lvbmFsbHkgcmFpc2VzIEVBR0FJTi4KLSAgICAgICAgcmV0cmllc19sZWZ0
ID0gMyBpZiBzeXMucGxhdGZvcm0gPT0gImN5Z3dpbiIgZWxzZSAxCi0gICAgICAgIHdoaWxlIHJl
dHJpZXNfbGVmdCA+IDA6Ci0gICAgICAgICAgICB0cnk6Ci0gICAgICAgICAgICAgICAgcmV0cmll
c19sZWZ0IC09IDEKLSAgICAgICAgICAgICAgICBvcy5raWxsKHBpZCwgc2lnbmFsLlNJR0tJTEwp
Ci0gICAgICAgICAgICBleGNlcHQgT1NFcnJvciwgZToKLSAgICAgICAgICAgICAgICBpZiBlLmVy
cm5vID09IGVycm5vLkVBR0FJTjoKLSAgICAgICAgICAgICAgICAgICAgaWYgcmV0cmllc19sZWZ0
IDw9IDA6Ci0gICAgICAgICAgICAgICAgICAgICAgICBfbG9nLndhcm4oIkZhaWxlZCB0byBraWxs
IHBpZCAlcy4gIFRvbyBtYW55IEVBR0FJTiBlcnJvcnMuIiAlIHBpZCkKLSAgICAgICAgICAgICAg
ICAgICAgY29udGludWUKLSAgICAgICAgICAgICAgICBpZiBlLmVycm5vID09IGVycm5vLkVTUkNI
OiAgIyBUaGUgcHJvY2VzcyBkb2VzIG5vdCBleGlzdC4KLSAgICAgICAgICAgICAgICAgICAgX2xv
Zy53YXJuKCJDYWxsZWQga2lsbF9wcm9jZXNzIHdpdGggYSBub24tZXhpc3RhbnQgcGlkICVzIiAl
IHBpZCkKLSAgICAgICAgICAgICAgICAgICAgcmV0dXJuCi0gICAgICAgICAgICAgICAgcmFpc2UK
LQotICAgIGRlZiBfd2luZG93c19pbWFnZV9uYW1lKHNlbGYsIHByb2Nlc3NfbmFtZSk6Ci0gICAg
ICAgIG5hbWUsIGV4dGVuc2lvbiA9IG9zLnBhdGguc3BsaXRleHQocHJvY2Vzc19uYW1lKQotICAg
ICAgICBpZiBub3QgZXh0ZW5zaW9uOgotICAgICAgICAgICAgIyB0YXNra2lsbCBleHBlY3RzIHBy
b2Nlc3NlcyB0byBlbmQgaW4gLmV4ZQotICAgICAgICAgICAgIyBJZiBuZWNlc3Nhcnkgd2UgY291
bGQgYWRkIGEgZmxhZyB0byBkaXNhYmxlIGFwcGVuZGluZyAuZXhlLgotICAgICAgICAgICAgcHJv
Y2Vzc19uYW1lID0gIiVzLmV4ZSIgJSBuYW1lCi0gICAgICAgIHJldHVybiBwcm9jZXNzX25hbWUK
KyAgICAgICAgdHJ5OgorICAgICAgICAgICAgb3Mua2lsbChwaWQsIHNpZ25hbC5TSUdLSUxMKQor
ICAgICAgICBleGNlcHQgT1NFcnJvciwgZToKKyAgICAgICAgICAgICMgRklYTUU6IFdlIHNob3Vs
ZCBtYWtlIG5vbi1zaWxlbnQgZmFpbHVyZSBhbiBvcHRpb24uCisgICAgICAgICAgICBwYXNzCiAK
ICAgICBkZWYga2lsbF9hbGwoc2VsZiwgcHJvY2Vzc19uYW1lKToKICAgICAgICAgIiIiQXR0ZW1w
dHMgdG8ga2lsbCBwcm9jZXNzZXMgbWF0Y2hpbmcgcHJvY2Vzc19uYW1lLgogICAgICAgICBXaWxs
IGZhaWwgc2lsZW50bHkgaWYgbm8gcHJvY2VzcyBhcmUgZm91bmQuIiIiCi0gICAgICAgIGlmIHN5
cy5wbGF0Zm9ybSBpbiAoIndpbmRvd3MiLCAiY3lnd2luIik6Ci0gICAgICAgICAgICBpbWFnZV9u
YW1lID0gc2VsZi5fd2luZG93c19pbWFnZV9uYW1lKHByb2Nlc3NfbmFtZSkKLSAgICAgICAgICAg
IGNvbW1hbmQgPSBbInRhc2traWxsLmV4ZSIsICIvZiIsICIvaW0iLCBpbWFnZV9uYW1lXQotICAg
ICAgICAgICAgIyB0YXNra2lsbCB3aWxsIGV4aXQgMTI4IGlmIHRoZSBwcm9jZXNzIGlzIG5vdCBm
b3VuZC4gIFdlIHNob3VsZCBsb2cuCisgICAgICAgIGlmIHBsYXRmb3JtLnN5c3RlbSgpID09ICJX
aW5kb3dzIjoKKyAgICAgICAgICAgICMgV2UgbWlnaHQgd2FudCB0byBhdXRvbWF0aWNhbGx5IGFw
cGVuZCAuZXhlPworICAgICAgICAgICAgY29tbWFuZCA9IFsidGFza2tpbGwuZXhlIiwgIi9mIiwg
Ii9pbSIsIHByb2Nlc3NfbmFtZV0KKyAgICAgICAgICAgICMgdGFza2tpbGwgd2lsbCBleGl0IDEy
OCBpZiB0aGUgcHJvY2VzcyBpcyBub3QgZm91bmQuCiAgICAgICAgICAgICBzZWxmLnJ1bl9jb21t
YW5kKGNvbW1hbmQsIGVycm9yX2hhbmRsZXI9c2VsZi5pZ25vcmVfZXJyb3IpCiAgICAgICAgICAg
ICByZXR1cm4KIApAQCAtMjI3LDkgKzE5NSw2IEBAIGNsYXNzIEV4ZWN1dGl2ZShvYmplY3QpOgog
ICAgICAgICAjIFdlIHNob3VsZCBwaWNrIG9uZSBtb2RlLCBvciBhZGQgc3VwcG9ydCBmb3Igc3dp
dGNoaW5nIGJldHdlZW4gdGhlbS4KICAgICAgICAgIyBOb3RlOiBNYWMgT1MgWCAxMC42IHJlcXVp
cmVzIC1TSUdOQUxOQU1FIGJlZm9yZSAtdSBVU0VSCiAgICAgICAgIGNvbW1hbmQgPSBbImtpbGxh
bGwiLCAiLVRFUk0iLCAiLXUiLCBvcy5nZXRlbnYoIlVTRVIiKSwgcHJvY2Vzc19uYW1lXQotICAg
ICAgICAjIGtpbGxhbGwgcmV0dXJucyAxIGlmIG5vIHByb2Nlc3MgY2FuIGJlIGZvdW5kIGFuZCAy
IG9uIGNvbW1hbmQgZXJyb3IuCi0gICAgICAgICMgRklYTUU6IFdlIHNob3VsZCBwYXNzIGEgY3Vz
dG9tIGVycm9yX2hhbmRsZXIgdG8gYWxsb3cgb25seSBleGl0X2NvZGUgMS4KLSAgICAgICAgIyBX
ZSBzaG91bGQgbG9nIGluIGV4aXRfY29kZSA9PSAxCiAgICAgICAgIHNlbGYucnVuX2NvbW1hbmQo
Y29tbWFuZCwgZXJyb3JfaGFuZGxlcj1zZWxmLmlnbm9yZV9lcnJvcikKIAogICAgICMgRXJyb3Ig
aGFuZGxlcnMgZG8gbm90IG5lZWQgdG8gYmUgc3RhdGljIG1ldGhvZHMgb25jZSBhbGwgY2FsbGVy
cyBhcmUKZGlmZiAtLWdpdCBhL1dlYktpdFRvb2xzL1NjcmlwdHMvd2Via2l0cHkvY29tbW9uL3N5
c3RlbS9leGVjdXRpdmVfdW5pdHRlc3QucHkgYi9XZWJLaXRUb29scy9TY3JpcHRzL3dlYmtpdHB5
L2NvbW1vbi9zeXN0ZW0vZXhlY3V0aXZlX3VuaXR0ZXN0LnB5CmluZGV4IDBjNThhODAxMTM2YWQ4
MGFlMzc1OWY0Y2EyZGY5ZWZjOWNjZGExNGYuLmNlOTEyNjljMTZkMDU3N2JiNDJkYTExOTM2NmY1
ZTQ1MDIwMTdkMzUgMTAwNjQ0Ci0tLSBhL1dlYktpdFRvb2xzL1NjcmlwdHMvd2Via2l0cHkvY29t
bW9uL3N5c3RlbS9leGVjdXRpdmVfdW5pdHRlc3QucHkKKysrIGIvV2ViS2l0VG9vbHMvU2NyaXB0
cy93ZWJraXRweS9jb21tb24vc3lzdGVtL2V4ZWN1dGl2ZV91bml0dGVzdC5weQpAQCAtNzcsMjQg
Kzc3LDEwIEBAIGNsYXNzIEV4ZWN1dGl2ZVRlc3QodW5pdHRlc3QuVGVzdENhc2UpOgogICAgICAg
ICBwcm9jZXNzID0gc3VicHJvY2Vzcy5Qb3BlbihbInllcyJdLCBzdGRvdXQ9c3VicHJvY2Vzcy5Q
SVBFKQogICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHByb2Nlc3MucG9sbCgpLCBOb25lKSAgIyBQ
cm9jZXNzIGlzIHJ1bm5pbmcKICAgICAgICAgZXhlY3V0aXZlLmtpbGxfcHJvY2Vzcyhwcm9jZXNz
LnBpZCkKLSAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChwcm9jZXNzLndhaXQoKSwgZXhlY3V0aXZl
Ll9LSUxMX1BST0NFU1NfS0lMTEVEX1BST0NFU1NfRVhJVF9DT0RFKQorICAgICAgICBzZWxmLmFz
c2VydEVxdWFsKHByb2Nlc3Mud2FpdCgpLCAtc2lnbmFsLlNJR0tJTEwpCiAgICAgICAgICMgS2ls
bGluZyBhZ2FpbiBzaG91bGQgZmFpbCBzaWxlbnRseS4KICAgICAgICAgZXhlY3V0aXZlLmtpbGxf
cHJvY2Vzcyhwcm9jZXNzLnBpZCkKIAotICAgIGRlZiBfYXNzZXJ0X3dpbmRvd3NfaW1hZ2VfbmFt
ZShzZWxmLCBuYW1lLCBleHBlY3RlZF93aW5kb3dzX25hbWUpOgotICAgICAgICBleGVjdXRpdmUg
PSBFeGVjdXRpdmUoKQotICAgICAgICB3aW5kb3dzX25hbWUgPSBleGVjdXRpdmUuX3dpbmRvd3Nf
aW1hZ2VfbmFtZShuYW1lKQotICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHdpbmRvd3NfbmFtZSwg
ZXhwZWN0ZWRfd2luZG93c19uYW1lKQotCi0gICAgZGVmIHRlc3Rfd2luZG93c19pbWFnZV9uYW1l
KHNlbGYpOgotICAgICAgICBzZWxmLl9hc3NlcnRfd2luZG93c19pbWFnZV9uYW1lKCJmb28iLCAi
Zm9vLmV4ZSIpCi0gICAgICAgIHNlbGYuX2Fzc2VydF93aW5kb3dzX2ltYWdlX25hbWUoImZvby5l
eGUiLCAiZm9vLmV4ZSIpCi0gICAgICAgIHNlbGYuX2Fzc2VydF93aW5kb3dzX2ltYWdlX25hbWUo
ImZvby5jb20iLCAiZm9vLmNvbSIpCi0gICAgICAgICMgSWYgdGhlIG5hbWUgbG9va3MgbGlrZSBh
biBleHRlbnNpb24sIGV2ZW4gaWYgaXQgaXNuJ3QKLSAgICAgICAgIyBzdXBwb3NlZCB0bywgd2Ug
aGF2ZSBubyBjaG9pY2UgYnV0IHRvIHJldHVybiB0aGUgb3JpZ2luYWwgbmFtZS4KLSAgICAgICAg
c2VsZi5fYXNzZXJ0X3dpbmRvd3NfaW1hZ2VfbmFtZSgiZm9vLmJheiIsICJmb28uYmF6IikKLSAg
ICAgICAgc2VsZi5fYXNzZXJ0X3dpbmRvd3NfaW1hZ2VfbmFtZSgiZm9vLmJhei5leGUiLCAiZm9v
LmJhei5leGUiKQotCiAgICAgZGVmIHRlc3Rfa2lsbF9hbGwoc2VsZik6CiAgICAgICAgIGV4ZWN1
dGl2ZSA9IEV4ZWN1dGl2ZSgpCiAgICAgICAgICMgRklYTUU6IFRoaXMgbWF5IG5lZWQgZWRpdHMg
dG8gd29yayByaWdodCBvbiB3aW5kb3dzLgpAQCAtMTAyLDYgKzg4LDYgQEAgY2xhc3MgRXhlY3V0
aXZlVGVzdCh1bml0dGVzdC5UZXN0Q2FzZSk6CiAgICAgICAgIHByb2Nlc3MgPSBzdWJwcm9jZXNz
LlBvcGVuKFsieWVzIl0sIHN0ZG91dD1zdWJwcm9jZXNzLlBJUEUpCiAgICAgICAgIHNlbGYuYXNz
ZXJ0RXF1YWwocHJvY2Vzcy5wb2xsKCksIE5vbmUpICAjIFByb2Nlc3MgaXMgcnVubmluZwogICAg
ICAgICBleGVjdXRpdmUua2lsbF9hbGwoInllcyIpCi0gICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwo
cHJvY2Vzcy53YWl0KCksIGV4ZWN1dGl2ZS5fS0lMTF9BTExfS0lMTEVEX1BST0NFU1NfRVhJVF9D
T0RFKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHByb2Nlc3Mud2FpdCgpLCAtc2lnbmFsLlNJ
R1RFUk0pCiAgICAgICAgICMgS2lsbGluZyBhZ2FpbiBzaG91bGQgZmFpbCBzaWxlbnRseS4KICAg
ICAgICAgZXhlY3V0aXZlLmtpbGxfYWxsKCJ5ZXMiKQpkaWZmIC0tZ2l0IGEvV2ViS2l0VG9vbHMv
U2NyaXB0cy93ZWJraXRweS9sYXlvdXRfdGVzdHMvcG9ydC9jaHJvbWl1bV9saW51eC5weSBiL1dl
YktpdFRvb2xzL1NjcmlwdHMvd2Via2l0cHkvbGF5b3V0X3Rlc3RzL3BvcnQvY2hyb21pdW1fbGlu
dXgucHkKaW5kZXggYTAxYmQxNGYwZTVmM2E2ZmIzMTRiYWFkMTllN2VjOGQ3NGY3YjUzNi4uOTc5
ZTIyNWRiYjAyOGY3ZjRhOGEwMTMzZDViNzIxZmRkMWIzNjY4OCAxMDA2NDQKLS0tIGEvV2ViS2l0
VG9vbHMvU2NyaXB0cy93ZWJraXRweS9sYXlvdXRfdGVzdHMvcG9ydC9jaHJvbWl1bV9saW51eC5w
eQorKysgYi9XZWJLaXRUb29scy9TY3JpcHRzL3dlYmtpdHB5L2xheW91dF90ZXN0cy9wb3J0L2No
cm9taXVtX2xpbnV4LnB5CkBAIC00OSwxMSArNDksOCBAQCBjbGFzcyBDaHJvbWl1bUxpbnV4UG9y
dChjaHJvbWl1bS5DaHJvbWl1bVBvcnQpOgogICAgICAgICBjaHJvbWl1bS5DaHJvbWl1bVBvcnQu
X19pbml0X18oc2VsZiwgcG9ydF9uYW1lLCBvcHRpb25zKQogCiAgICAgZGVmIGJhc2VsaW5lX3Nl
YXJjaF9wYXRoKHNlbGYpOgotICAgICAgICByZXR1cm4gW3NlbGYuX3dlYmtpdF9iYXNlbGluZV9w
YXRoKCdjaHJvbWl1bS1saW51eCcpLAotICAgICAgICAgICAgICAgIHNlbGYuX3dlYmtpdF9iYXNl
bGluZV9wYXRoKCdjaHJvbWl1bS13aW4nKSwKLSAgICAgICAgICAgICAgICBzZWxmLl93ZWJraXRf
YmFzZWxpbmVfcGF0aCgnY2hyb21pdW0nKSwKLSAgICAgICAgICAgICAgICBzZWxmLl93ZWJraXRf
YmFzZWxpbmVfcGF0aCgnd2luJyksCi0gICAgICAgICAgICAgICAgc2VsZi5fd2Via2l0X2Jhc2Vs
aW5lX3BhdGgoJ21hYycpXQorICAgICAgICBwb3J0X25hbWVzID0gWyJjaHJvbWl1bS1saW51eCIs
ICJjaHJvbWl1bS13aW4iLCAiY2hyb21pdW0iLCAid2luIiwgIm1hYyJdCisgICAgICAgIHJldHVy
biBtYXAoc2VsZi5fd2Via2l0X2Jhc2VsaW5lX3BhdGgsIHBvcnRfbmFtZXMpCiAKICAgICBkZWYg
Y2hlY2tfYnVpbGQoc2VsZiwgbmVlZHNfaHR0cCk6CiAgICAgICAgIHJlc3VsdCA9IGNocm9taXVt
LkNocm9taXVtUG9ydC5jaGVja19idWlsZChzZWxmLCBuZWVkc19odHRwKQpkaWZmIC0tZ2l0IGEv
V2ViS2l0VG9vbHMvU2NyaXB0cy93ZWJraXRweS9sYXlvdXRfdGVzdHMvcG9ydC9jaHJvbWl1bV9t
YWMucHkgYi9XZWJLaXRUb29scy9TY3JpcHRzL3dlYmtpdHB5L2xheW91dF90ZXN0cy9wb3J0L2No
cm9taXVtX21hYy5weQppbmRleCA0ZWFkMjZmYzMwMzJjMzJmYjZmOTQ0Y2NlYWJjYjEzYjg0Njlh
NTJkLi5iYTY3YTNlYWUyNWVmMTRmOTFiNjc3ODk3YjQxMjIyOTY1OWU3ODJkIDEwMDY0NAotLS0g
YS9XZWJLaXRUb29scy9TY3JpcHRzL3dlYmtpdHB5L2xheW91dF90ZXN0cy9wb3J0L2Nocm9taXVt
X21hYy5weQorKysgYi9XZWJLaXRUb29scy9TY3JpcHRzL3dlYmtpdHB5L2xheW91dF90ZXN0cy9w
b3J0L2Nocm9taXVtX21hYy5weQpAQCAtNTIsMTAgKzUyLDggQEAgY2xhc3MgQ2hyb21pdW1NYWNQ
b3J0KGNocm9taXVtLkNocm9taXVtUG9ydCk6CiAgICAgICAgIGNocm9taXVtLkNocm9taXVtUG9y
dC5fX2luaXRfXyhzZWxmLCBwb3J0X25hbWUsIG9wdGlvbnMpCiAKICAgICBkZWYgYmFzZWxpbmVf
c2VhcmNoX3BhdGgoc2VsZik6Ci0gICAgICAgIHJldHVybiBbc2VsZi5fd2Via2l0X2Jhc2VsaW5l
X3BhdGgoJ2Nocm9taXVtLW1hYycpLAotICAgICAgICAgICAgICAgIHNlbGYuX3dlYmtpdF9iYXNl
bGluZV9wYXRoKCdjaHJvbWl1bScpLAotICAgICAgICAgICAgICAgIHNlbGYuX3dlYmtpdF9iYXNl
bGluZV9wYXRoKCdtYWMnICsgc2VsZi52ZXJzaW9uKCkpLAotICAgICAgICAgICAgICAgIHNlbGYu
X3dlYmtpdF9iYXNlbGluZV9wYXRoKCdtYWMnKV0KKyAgICAgICAgcG9ydF9uYW1lcyA9IFsiY2hy
b21pdW0tbWFjIiwgImNocm9taXVtIiwgIm1hYyIgKyBzZWxmLnZlcnNpb24oKSwgIm1hYyJdCisg
ICAgICAgIHJldHVybiBtYXAoc2VsZi5fd2Via2l0X2Jhc2VsaW5lX3BhdGgsIHBvcnRfbmFtZXMp
CiAKICAgICBkZWYgY2hlY2tfYnVpbGQoc2VsZiwgbmVlZHNfaHR0cCk6CiAgICAgICAgIHJlc3Vs
dCA9IGNocm9taXVtLkNocm9taXVtUG9ydC5jaGVja19idWlsZChzZWxmLCBuZWVkc19odHRwKQpA
QCAtODcsNiArODUsNyBAQCBjbGFzcyBDaHJvbWl1bU1hY1BvcnQoY2hyb21pdW0uQ2hyb21pdW1Q
b3J0KToKICAgICAgICAgcmV0dXJuICdtYWMnCiAKICAgICBkZWYgdmVyc2lvbihzZWxmKToKKyAg
ICAgICAgIyBGSVhNRTogSXQncyBzdHJhbmdlIHRoYXQgdGhpcyBzdHJpbmcgaXMgLXZlcnNpb24s
IG5vdCBqdXN0IHZlcnNpb24uCiAgICAgICAgIG9zX3ZlcnNpb25fc3RyaW5nID0gcGxhdGZvcm0u
bWFjX3ZlcigpWzBdICAjIGUuZy4gIjEwLjUuNiIKICAgICAgICAgaWYgbm90IG9zX3ZlcnNpb25f
c3RyaW5nOgogICAgICAgICAgICAgcmV0dXJuICctbGVvcGFyZCcKZGlmZiAtLWdpdCBhL1dlYktp
dFRvb2xzL1NjcmlwdHMvd2Via2l0cHkvbGF5b3V0X3Rlc3RzL3BvcnQvY2hyb21pdW1fd2luLnB5
IGIvV2ViS2l0VG9vbHMvU2NyaXB0cy93ZWJraXRweS9sYXlvdXRfdGVzdHMvcG9ydC9jaHJvbWl1
bV93aW4ucHkKaW5kZXggNTZkOGE0YmQzOTYwYmMwNDVmZmExYTgzMmFiMzhmMWMxMTYwZGM2Yi4u
ZDIwZjRkZGU0MTE3Y2RkZTg3NzEwYmI0NjA2MjIyMTMyN2RlYzQyMSAxMDA2NDQKLS0tIGEvV2Vi
S2l0VG9vbHMvU2NyaXB0cy93ZWJraXRweS9sYXlvdXRfdGVzdHMvcG9ydC9jaHJvbWl1bV93aW4u
cHkKKysrIGIvV2ViS2l0VG9vbHMvU2NyaXB0cy93ZWJraXRweS9sYXlvdXRfdGVzdHMvcG9ydC9j
aHJvbWl1bV93aW4ucHkKQEAgLTQ5LDE3ICs0OSwxMyBAQCBjbGFzcyBDaHJvbWl1bVdpblBvcnQo
Y2hyb21pdW0uQ2hyb21pdW1Qb3J0KToKICAgICAgICAgY2hyb21pdW0uQ2hyb21pdW1Qb3J0Ll9f
aW5pdF9fKHNlbGYsIHBvcnRfbmFtZSwgb3B0aW9ucykKIAogICAgIGRlZiBiYXNlbGluZV9zZWFy
Y2hfcGF0aChzZWxmKToKLSAgICAgICAgZGlycyA9IFtdCisgICAgICAgIHBvcnRfbmFtZXMgPSBb
XQogICAgICAgICBpZiBzZWxmLl9uYW1lID09ICdjaHJvbWl1bS13aW4teHAnOgotICAgICAgICAg
ICAgZGlycy5hcHBlbmQoc2VsZi5fd2Via2l0X2Jhc2VsaW5lX3BhdGgoJ2Nocm9taXVtLXdpbi14
cCcpKQorICAgICAgICAgICAgcG9ydF9uYW1lcy5hcHBlbmQoImNocm9taXVtLXdpbi14cCIpCiAg
ICAgICAgIGlmIHNlbGYuX25hbWUgaW4gKCdjaHJvbWl1bS13aW4teHAnLCAnY2hyb21pdW0td2lu
LXZpc3RhJyk6Ci0gICAgICAgICAgICBkaXJzLmFwcGVuZChzZWxmLl93ZWJraXRfYmFzZWxpbmVf
cGF0aCgnY2hyb21pdW0td2luLXZpc3RhJykpCi0gICAgICAgIGRpcnMuYXBwZW5kKHNlbGYuX3dl
YmtpdF9iYXNlbGluZV9wYXRoKCdjaHJvbWl1bS13aW4nKSkKLSAgICAgICAgZGlycy5hcHBlbmQo
c2VsZi5fd2Via2l0X2Jhc2VsaW5lX3BhdGgoJ2Nocm9taXVtJykpCi0gICAgICAgIGRpcnMuYXBw
ZW5kKHNlbGYuX3dlYmtpdF9iYXNlbGluZV9wYXRoKCd3aW4nKSkKLSAgICAgICAgIyBGSU1YRTog
VGhpcyBzaG91bGQgaW5jbHVkZSBtYWMtc25vd2xlb3BhcmQgbGlrZSB3aW4ucHkgZG9lcy4KLSAg
ICAgICAgZGlycy5hcHBlbmQoc2VsZi5fd2Via2l0X2Jhc2VsaW5lX3BhdGgoJ21hYycpKQotICAg
ICAgICByZXR1cm4gZGlycworICAgICAgICAgICAgcG9ydF9uYW1lcy5hcHBlbmQoImNocm9taXVt
LXdpbi12aXN0YSIpCisgICAgICAgIHBvcnRfbmFtZXMuZXh0ZW5kKFsiY2hyb21pdW0td2luIiwg
ImNocm9taXVtIiwgIndpbiIsICJtYWMiXSkKKyAgICAgICAgcmV0dXJuIG1hcChzZWxmLl93ZWJr
aXRfYmFzZWxpbmVfcGF0aCwgcG9ydF9uYW1lcykKIAogICAgIGRlZiBjaGVja19idWlsZChzZWxm
LCBuZWVkc19odHRwKToKICAgICAgICAgcmVzdWx0ID0gY2hyb21pdW0uQ2hyb21pdW1Qb3J0LmNo
ZWNrX2J1aWxkKHNlbGYsIG5lZWRzX2h0dHApCmRpZmYgLS1naXQgYS9XZWJLaXRUb29scy9TY3Jp
cHRzL3dlYmtpdHB5L2xheW91dF90ZXN0cy9wb3J0L21hYy5weSBiL1dlYktpdFRvb2xzL1Njcmlw
dHMvd2Via2l0cHkvbGF5b3V0X3Rlc3RzL3BvcnQvbWFjLnB5CmluZGV4IDM1MGIwODg1MTFiYjAx
M2I5YzYwZTQ0YTQ3YWIxYjBhZGVlYWNhYTQuLjQxM2I1ZjJjMzVkODliYjFmN2M3ZjU3OWMwMmY3
MjU3NGVlNjA5OGYgMTAwNjQ0Ci0tLSBhL1dlYktpdFRvb2xzL1NjcmlwdHMvd2Via2l0cHkvbGF5
b3V0X3Rlc3RzL3BvcnQvbWFjLnB5CisrKyBiL1dlYktpdFRvb2xzL1NjcmlwdHMvd2Via2l0cHkv
bGF5b3V0X3Rlc3RzL3BvcnQvbWFjLnB5CkBAIC01OCwxNSArNTgsMTUgQEAgY2xhc3MgTWFjUG9y
dChXZWJLaXRQb3J0KToKICAgICAgICAgcmV0dXJuIGNoaWxkX3Byb2Nlc3NlcwogCiAgICAgZGVm
IGJhc2VsaW5lX3NlYXJjaF9wYXRoKHNlbGYpOgotICAgICAgICBkaXJzID0gW10KKyAgICAgICAg
cG9ydF9uYW1lcyA9IFtdCiAgICAgICAgIGlmIHNlbGYuX25hbWUgPT0gJ21hYy10aWdlcic6Ci0g
ICAgICAgICAgICBkaXJzLmFwcGVuZChzZWxmLl93ZWJraXRfYmFzZWxpbmVfcGF0aChzZWxmLl9u
YW1lKSkKKyAgICAgICAgICAgIHBvcnRfbmFtZXMuYXBwZW5kKCJtYWMtdGlnZXIiKQogICAgICAg
ICBpZiBzZWxmLl9uYW1lIGluICgnbWFjLXRpZ2VyJywgJ21hYy1sZW9wYXJkJyk6Ci0gICAgICAg
ICAgICBkaXJzLmFwcGVuZChzZWxmLl93ZWJraXRfYmFzZWxpbmVfcGF0aCgnbWFjLWxlb3BhcmQn
KSkKKyAgICAgICAgICAgIHBvcnRfbmFtZXMuYXBwZW5kKCJtYWMtbGVvcGFyZCIpCiAgICAgICAg
IGlmIHNlbGYuX25hbWUgaW4gKCdtYWMtdGlnZXInLCAnbWFjLWxlb3BhcmQnLCAnbWFjLXNub3ds
ZW9wYXJkJyk6Ci0gICAgICAgICAgICBkaXJzLmFwcGVuZChzZWxmLl93ZWJraXRfYmFzZWxpbmVf
cGF0aCgnbWFjLXNub3dsZW9wYXJkJykpCi0gICAgICAgIGRpcnMuYXBwZW5kKHNlbGYuX3dlYmtp
dF9iYXNlbGluZV9wYXRoKCdtYWMnKSkKLSAgICAgICAgcmV0dXJuIGRpcnMKKyAgICAgICAgICAg
IHBvcnRfbmFtZXMuYXBwZW5kKCJtYWMtc25vd2xlb3BhcmQiKQorICAgICAgICBwb3J0X25hbWVz
LmFwcGVuZCgibWFjIikKKyAgICAgICAgcmV0dXJuIG1hcChzZWxmLl93ZWJraXRfYmFzZWxpbmVf
cGF0aCwgcG9ydF9uYW1lcykKIAogICAgIGRlZiBwYXRoX3RvX3Rlc3RfZXhwZWN0YXRpb25zX2Zp
bGUoc2VsZik6CiAgICAgICAgIHJldHVybiBzZWxmLnBhdGhfZnJvbV93ZWJraXRfYmFzZSgnTGF5
b3V0VGVzdHMnLCAncGxhdGZvcm0nLApkaWZmIC0tZ2l0IGEvV2ViS2l0VG9vbHMvU2NyaXB0cy93
ZWJraXRweS9sYXlvdXRfdGVzdHMvcG9ydC93ZWJraXQucHkgYi9XZWJLaXRUb29scy9TY3JpcHRz
L3dlYmtpdHB5L2xheW91dF90ZXN0cy9wb3J0L3dlYmtpdC5weQppbmRleCAyMDk3Y2U3OWUwMDky
NDZmNDA3OThlYmNmNzBiODM2YzNhMDI3M2JlLi5hZGE4M2NlNDdkMGZiZWI0ZDkyMjllY2VmYzMx
YjE0YjE5ZTgzODBmIDEwMDY0NAotLS0gYS9XZWJLaXRUb29scy9TY3JpcHRzL3dlYmtpdHB5L2xh
eW91dF90ZXN0cy9wb3J0L3dlYmtpdC5weQorKysgYi9XZWJLaXRUb29scy9TY3JpcHRzL3dlYmtp
dHB5L2xheW91dF90ZXN0cy9wb3J0L3dlYmtpdC5weQpAQCAtMjk0LDMzICsyOTQsMTMgQEAgY2xh
c3MgV2ViS2l0UG9ydChiYXNlLlBvcnQpOgogICAgICAgICByZXR1cm4gc2VsZi50ZXN0X2Jhc2Vf
cGxhdGZvcm1fbmFtZXMoKSArICgKICAgICAgICAgICAgICdtYWMtdGlnZXInLCAnbWFjLWxlb3Bh
cmQnLCAnbWFjLXNub3dsZW9wYXJkJykKIAotICAgIGRlZiBfY29uZmlndXJhdGlvbl9maWxlX3Bh
dGgoc2VsZik6Ci0gICAgICAgIGJ1aWxkX3Jvb3QgPSBzZWxmLl93ZWJraXRfYnVpbGRfZGlyZWN0
b3J5KFsiLS10b3AtbGV2ZWwiXSkKLSAgICAgICAgcmV0dXJuIG9zLnBhdGguam9pbihidWlsZF9y
b290LCAiQ29uZmlndXJhdGlvbiIpCi0KLSAgICAjIEVhc3kgb3ZlcnJpZGUgZm9yIHVuaXQgdGVz
dHMKLSAgICBkZWYgX29wZW5fY29uZmlndXJhdGlvbl9maWxlKHNlbGYpOgotICAgICAgICBjb25m
aWd1cmF0aW9uX3BhdGggPSBzZWxmLl9jb25maWd1cmF0aW9uX2ZpbGVfcGF0aCgpCi0gICAgICAg
IHJldHVybiBjb2RlY3Mub3Blbihjb25maWd1cmF0aW9uX3BhdGgsICJyIiwgInV0Zi04IikKLQot
ICAgIGRlZiBfcmVhZF9jb25maWd1cmF0aW9uKHNlbGYpOgotICAgICAgICB0cnk6Ci0gICAgICAg
ICAgICB3aXRoIHNlbGYuX29wZW5fY29uZmlndXJhdGlvbl9maWxlKCkgYXMgZmlsZToKLSAgICAg
ICAgICAgICAgICByZXR1cm4gZmlsZS5yZWFkbGluZSgpLnJzdHJpcCgpCi0gICAgICAgIGV4Y2Vw
dCBJT0Vycm9yLCBlOgotICAgICAgICAgICAgcmV0dXJuIE5vbmUKLQotICAgICMgRklYTUU6IFRo
aXMgbGlzdCBtYXkgYmUgaW5jb21wbGV0ZSBhcyBBcHBsZSBoYXMgc29tZSBzZWtyZXQgY29uZmln
cy4KLSAgICBfUkVDT0dOSVpFRF9DT05GSUdVUkFUSU9OUyA9ICgiRGVidWciLCAiUmVsZWFzZSIp
Ci0KICAgICBkZWYgZGVmYXVsdF9jb25maWd1cmF0aW9uKHNlbGYpOgotICAgICAgICAjIEZJWE1F
OiBVbmlmeSB0aGlzIHdpdGggd2Via2l0ZGlyLnBtIGNvbmZpZ3VyYXRpb24gcmVhZGluZyBjb2Rl
LgotICAgICAgICBjb25maWd1cmF0aW9uID0gc2VsZi5fcmVhZF9jb25maWd1cmF0aW9uKCkKLSAg
ICAgICAgaWYgbm90IGNvbmZpZ3VyYXRpb246Ci0gICAgICAgICAgICBjb25maWd1cmF0aW9uID0g
IlJlbGVhc2UiCi0gICAgICAgIGlmIGNvbmZpZ3VyYXRpb24gbm90IGluIHNlbGYuX1JFQ09HTkla
RURfQ09ORklHVVJBVElPTlM6Ci0gICAgICAgICAgICBfbG9nLndhcm4oIkNvbmZpZ3VyYXRpb24g
XCIlc1wiIGZvdW5kIGluICVzIGlzIG5vdCBhIHJlY29nbml6ZWQgdmFsdWUuXG4iICUgKGNvbmZp
Z3VyYXRpb24sIHNlbGYuX2NvbmZpZ3VyYXRpb25fZmlsZV9wYXRoKCkpKQotICAgICAgICAgICAg
X2xvZy53YXJuKCJTY3JpcHRzIG1heSBmYWlsLiAgU2VlICdzZXQtd2Via2l0LWNvbmZpZ3VyYXRp
b24gLS1oZWxwJy4iKQorICAgICAgICAjIFRoaXMgaXMgYSBiaXQgb2YgYSBoYWNrLiBUaGlzIHN0
YXRlIGV4aXN0cyBpbiBhIG11Y2ggbmljZXIgZm9ybSBpbgorICAgICAgICAjIHBlcmwtbGFuZC4K
KyAgICAgICAgY29uZmlndXJhdGlvbiA9IG9zcGF0aC5yZWxwYXRoKAorICAgICAgICAgICAgc2Vs
Zi5fd2Via2l0X2J1aWxkX2RpcmVjdG9yeShbIi0tY29uZmlndXJhdGlvbiJdKSwKKyAgICAgICAg
ICAgIHNlbGYuX3dlYmtpdF9idWlsZF9kaXJlY3RvcnkoWyItLXRvcC1sZXZlbCJdKSkKKyAgICAg
ICAgYXNzZXJ0KGNvbmZpZ3VyYXRpb24gPT0gIkRlYnVnIiBvciBjb25maWd1cmF0aW9uID09ICJS
ZWxlYXNlIikKICAgICAgICAgcmV0dXJuIGNvbmZpZ3VyYXRpb24KIAogICAgIGRlZiBfd2Via2l0
X2J1aWxkX2RpcmVjdG9yeShzZWxmLCBhcmdzKToKZGlmZiAtLWdpdCBhL1dlYktpdFRvb2xzL1Nj
cmlwdHMvd2Via2l0cHkvbGF5b3V0X3Rlc3RzL3BvcnQvd2Via2l0X3VuaXR0ZXN0LnB5IGIvV2Vi
S2l0VG9vbHMvU2NyaXB0cy93ZWJraXRweS9sYXlvdXRfdGVzdHMvcG9ydC93ZWJraXRfdW5pdHRl
c3QucHkKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IGIzZDliNDExNDVlNTU0NGMxMzBk
NzAxZDA5MjM2MDExMTAxY2FhZWIuLjAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAKLS0tIGEvV2ViS2l0VG9vbHMvU2NyaXB0cy93ZWJraXRweS9sYXlvdXRfdGVzdHMvcG9y
dC93ZWJraXRfdW5pdHRlc3QucHkKKysrIC9kZXYvbnVsbApAQCAtMSw2NSArMCwwIEBACi0jIENv
cHlyaWdodCAoQykgMjAxMCBHb29nbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgotIwotIyBS
ZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9y
IHdpdGhvdXQKLSMgbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhl
IGZvbGxvd2luZyBjb25kaXRpb25zIGFyZQotIyBtZXQ6Ci0jCi0jICAgICogUmVkaXN0cmlidXRp
b25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKLSMgbm90
aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVy
LgotIyAgICAqIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0
aGUgYWJvdmUKLSMgY29weXJpZ2h0IG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5k
IHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lcgotIyBpbiB0aGUgZG9jdW1lbnRhdGlvbiBhbmQvb3Ig
b3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlCi0jIGRpc3RyaWJ1dGlvbi4KLSMgICAg
KiBOZWl0aGVyIHRoZSBuYW1lIG9mIEdvb2dsZSBJbmMuIG5vciB0aGUgbmFtZXMgb2YgaXRzCi0j
IGNvbnRyaWJ1dG9ycyBtYXkgYmUgdXNlZCB0byBlbmRvcnNlIG9yIHByb21vdGUgcHJvZHVjdHMg
ZGVyaXZlZCBmcm9tCi0jIHRoaXMgc29mdHdhcmUgd2l0aG91dCBzcGVjaWZpYyBwcmlvciB3cml0
dGVuIHBlcm1pc3Npb24uCi0jCi0jIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgVEhFIENP
UFlSSUdIVCBIT0xERVJTIEFORCBDT05UUklCVVRPUlMKLSMgIkFTIElTIiBBTkQgQU5ZIEVYUFJF
U1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QKLSMgTElNSVRFRCBU
TywgVEhFIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1Mg
Rk9SCi0jIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBT
SEFMTCBUSEUgQ09QWVJJR0hUCi0jIE9XTkVSIE9SIENPTlRSSUJVVE9SUyBCRSBMSUFCTEUgRk9S
IEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLAotIyBTUEVDSUFMLCBFWEVNUExBUlks
IE9SIENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UCi0jIExJTUlURUQg
VE8sIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0Yg
VVNFLAotIyBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VW
RVIgQ0FVU0VEIEFORCBPTiBBTlkKLSMgVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBD
T05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVAotIyAoSU5DTFVESU5HIE5FR0xJR0VO
Q0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UKLSMgT0Yg
VEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNI
IERBTUFHRS4KLQotaW1wb3J0IHVuaXR0ZXN0Ci1pbXBvcnQgd2Via2l0Ci1pbXBvcnQgU3RyaW5n
SU8KLQotCi0jIEJlZm9yZSBQeXRob24gMi43LCBTdHJpbmdJTyBkb2VzIG5vdCB3b3JrIHdpdGgg
IndpdGgiCi0jIGh0dHA6Ly9idWdzLnB5dGhvbi5vcmcvaXNzdWUxMjg2Ci1jbGFzcyBXaXRoQXdh
cmVTdHJpbmdJTyhTdHJpbmdJTy5TdHJpbmdJTyk6Ci0gICAgIyBDb250ZXh0IG1hbmFnZW1lbnQg
cHJvdG9jb2wKLSAgICBkZWYgX19lbnRlcl9fKHNlbGYpOgotICAgICAgICBpZiBzZWxmLmNsb3Nl
ZDoKLSAgICAgICAgICAgIHJhaXNlIFZhbHVlRXJyb3IoIkkvTyBvcGVyYXRpb24gb24gY2xvc2Vk
IGZpbGUiKQotICAgICAgICByZXR1cm4gc2VsZgotCi0gICAgZGVmIF9fZXhpdF9fKHNlbGYsIGV4
YywgdmFsdWUsIHRiKToKLSAgICAgICAgc2VsZi5jbG9zZSgpCi0KLQotY2xhc3MgV2ViS2l0VGVz
dCh1bml0dGVzdC5UZXN0Q2FzZSk6Ci0gICAgZGVmIF9hc3NlcnRfY29uZmlndXJhdGlvbihzZWxm
LCBmaWxlX2NvbnRlbnRzLCBleHBlY3RlZF9jb25maWd1cmF0aW9uKToKLSAgICAgICAgcG9ydCA9
IHdlYmtpdC5XZWJLaXRQb3J0KCkKLSAgICAgICAgcG9ydC5fb3Blbl9jb25maWd1cmF0aW9uX2Zp
bGUgPSBsYW1iZGE6IFdpdGhBd2FyZVN0cmluZ0lPKGZpbGVfY29udGVudHMpCi0gICAgICAgIHNl
bGYuYXNzZXJ0RXF1YWwocG9ydC5kZWZhdWx0X2NvbmZpZ3VyYXRpb24oKSwgZXhwZWN0ZWRfY29u
ZmlndXJhdGlvbikKLQotICAgIGRlZiB0ZXN0X2RlZmF1bHRfY29uZmlndXJhdGlvbihzZWxmKToK
LSAgICAgICAgc2VsZi5fYXNzZXJ0X2NvbmZpZ3VyYXRpb24oIiIsICJSZWxlYXNlIikKLSAgICAg
ICAgc2VsZi5fYXNzZXJ0X2NvbmZpZ3VyYXRpb24oIkRlYnVnIiwgIkRlYnVnIikKLSAgICAgICAg
c2VsZi5fYXNzZXJ0X2NvbmZpZ3VyYXRpb24oIlJlbGVhc2UiLCAiUmVsZWFzZSIpCi0gICAgICAg
IHNlbGYuX2Fzc2VydF9jb25maWd1cmF0aW9uKCJEZWJ1Z1xuUmVsZWFzZSIsICJEZWJ1ZyIpCi0g
ICAgICAgIHNlbGYuX2Fzc2VydF9jb25maWd1cmF0aW9uKCJcbkRlYnVnIiwgIlJlbGVhc2UiKQot
Ci0gICAgICAgICMgTWFrZSBzdXJlIHdlIGhhbmRsZSBtaXNzaW5nIGNvbmZpZ3VyYXRpb24gZmls
ZXMgdG9vLgotICAgICAgICBwb3J0ID0gd2Via2l0LldlYktpdFBvcnQoKQotICAgICAgICBkZWYg
bW9ja19vcGVuKCk6Ci0gICAgICAgICAgICByYWlzZSBJT0Vycm9yCi0gICAgICAgIHBvcnQuX29w
ZW5fY29uZmlndXJhdGlvbl9maWxlID0gbW9ja19vcGVuCi0gICAgICAgIHNlbGYuYXNzZXJ0RXF1
YWwocG9ydC5kZWZhdWx0X2NvbmZpZ3VyYXRpb24oKSwgIlJlbGVhc2UiKQpkaWZmIC0tZ2l0IGEv
V2ViS2l0VG9vbHMvU2NyaXB0cy93ZWJraXRweS9sYXlvdXRfdGVzdHMvcG9ydC93aW4ucHkgYi9X
ZWJLaXRUb29scy9TY3JpcHRzL3dlYmtpdHB5L2xheW91dF90ZXN0cy9wb3J0L3dpbi5weQppbmRl
eCBlMDVhNjlkODFhYjc2NzA1ZWUzYWYzODNlYTUyNWJkNTE5MjQyOWI3Li4zYjdhODE3YTBhYmE0
NDY1MDI0MDkyYjBiMjQ1YTA3ZjE4ZWM5MjY1IDEwMDY0NAotLS0gYS9XZWJLaXRUb29scy9TY3Jp
cHRzL3dlYmtpdHB5L2xheW91dF90ZXN0cy9wb3J0L3dpbi5weQorKysgYi9XZWJLaXRUb29scy9T
Y3JpcHRzL3dlYmtpdHB5L2xheW91dF90ZXN0cy9wb3J0L3dpbi5weQpAQCAtNDQsMTEgKzQ0LDYg
QEAgY2xhc3MgV2luUG9ydChXZWJLaXRQb3J0KToKICAgICAgICAgICAgIHBvcnRfbmFtZSA9ICd3
aW4nCiAgICAgICAgIFdlYktpdFBvcnQuX19pbml0X18oc2VsZiwgcG9ydF9uYW1lLCBvcHRpb25z
KQogCi0gICAgZGVmIGJhc2VsaW5lX3NlYXJjaF9wYXRoKHNlbGYpOgotICAgICAgICAjIEJhc2Vk
IG9uIGNvZGUgZnJvbSBvbGQtcnVuLXdlYmtpdC10ZXN0cyBleHBlY3RlZERpcmVjdG9yeUZvclRl
c3QoKQotICAgICAgICBwb3J0X25hbWVzID0gWyJ3aW4iLCAibWFjLXNub3dsZW9wYXJkIiwgIm1h
YyJdCi0gICAgICAgIHJldHVybiBtYXAoc2VsZi5fd2Via2l0X2Jhc2VsaW5lX3BhdGgsIHBvcnRf
bmFtZXMpCi0KICAgICBkZWYgX3Rlc3RzX2Zvcl9vdGhlcl9wbGF0Zm9ybXMoc2VsZik6CiAgICAg
ICAgICMgRklYTUU6IFRoaXMgbGlzdCBjb3VsZCBiZSBkeW5hbWljIGJhc2VkIG9uIHBsYXRmb3Jt
IG5hbWUgYW5kCiAgICAgICAgICMgcHVzaGVkIGludG8gYmFzZS5Qb3J0LgpkaWZmIC0tZ2l0IGEv
V2ViS2l0VG9vbHMvU2NyaXB0cy93ZWJraXRweS9sYXlvdXRfdGVzdHMvcnVuX3dlYmtpdF90ZXN0
c191bml0dGVzdC5weSBiL1dlYktpdFRvb2xzL1NjcmlwdHMvd2Via2l0cHkvbGF5b3V0X3Rlc3Rz
L3J1bl93ZWJraXRfdGVzdHNfdW5pdHRlc3QucHkKaW5kZXggY2Q3MmZhMzY2ZTI0MTdmYjI2NGQw
MzdmYjlkZmFiMzdjZmRhNzI3My4uZmU5ZjM5MTcxNmMzNDhlOWY2ZjMxODkzY2VjNmI0MTg1MDEx
ZDRlZiAxMDA2NDQKLS0tIGEvV2ViS2l0VG9vbHMvU2NyaXB0cy93ZWJraXRweS9sYXlvdXRfdGVz
dHMvcnVuX3dlYmtpdF90ZXN0c191bml0dGVzdC5weQorKysgYi9XZWJLaXRUb29scy9TY3JpcHRz
L3dlYmtpdHB5L2xheW91dF90ZXN0cy9ydW5fd2Via2l0X3Rlc3RzX3VuaXR0ZXN0LnB5CkBAIC0x
MTIsNiArMTEyLDExIEBAIGNsYXNzIFRlc3RSdW5uZXJUZXN0KHVuaXR0ZXN0LlRlc3RDYXNlKToK
IAogY2xhc3MgRHJ5cnVuVGVzdCh1bml0dGVzdC5UZXN0Q2FzZSk6CiAgICAgZGVmIHRlc3RfYmFz
aWNzKHNlbGYpOgorICAgICAgICAjIEZJWE1FOiBUaGlzIHRlc3QgZGVwZW5kcyBvbiBiZWluZyBh
YmxlIHRvIGRldGVjdCB0aGUgY29ycmVjdAorICAgICAgICAjIHBvcnQgZnJvbSB0aGUgZW52aXJv
bm1lbnQuICBUaHVzIGl0IGNhbid0IHdvcmsgZm9yIEd0ay9RdCB3aXRob3V0CisgICAgICAgICMg
bW9kaWZpY2F0aW9uIG9yIG1vcmUgaW5mb3JtYXRpb24gYmVpbmcgcGFzc2VkIGludG8gdGVzdC13
ZWJraXRweS4KKyAgICAgICAgaWYgc3lzLnBsYXRmb3JtIG5vdCBpbiAibWFjIjoKKyAgICAgICAg
ICAgIHJldHVybgogICAgICAgICBzZWxmLmFzc2VydFRydWUocGFzc2luZ19ydW4oWyctLXBsYXRm
b3JtJywgJ2RyeXJ1bicsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJ2Zh
c3QvaHRtbCddKSkKICAgICAgICAgI3NlbGYuYXNzZXJ0VHJ1ZShwYXNzaW5nX3J1bihbJy0tcGxh
dGZvcm0nLCAnZHJ5cnVuLW1hYycsCmRpZmYgLS1naXQgYS9XZWJLaXRUb29scy9TY3JpcHRzL3dl
YmtpdHB5L3Rvb2wvY29tbWFuZHMvZG93bmxvYWQucHkgYi9XZWJLaXRUb29scy9TY3JpcHRzL3dl
YmtpdHB5L3Rvb2wvY29tbWFuZHMvZG93bmxvYWQucHkKaW5kZXggYzY2Yjk1YzY1ZTk1YTg0NDk4
MmY2NDQwNDBiNDE4NzA4NDE1MGJmYS4uYTI4M2RhOWRjMmVkOGUxMGZjMGUwYzI4ZDQyNmVjNjc4
OGU4Zjg0ZSAxMDA2NDQKLS0tIGEvV2ViS2l0VG9vbHMvU2NyaXB0cy93ZWJraXRweS90b29sL2Nv
bW1hbmRzL2Rvd25sb2FkLnB5CisrKyBiL1dlYktpdFRvb2xzL1NjcmlwdHMvd2Via2l0cHkvdG9v
bC9jb21tYW5kcy9kb3dubG9hZC5weQpAQCAtMjYwLDggKzI2MCw5IEBAIGNsYXNzIEFic3RyYWN0
Um9sbG91dFByZXBDb21tYW5kKEFic3RyYWN0U2VxdWVuY2VkQ29tbWFuZCk6CiAgICAgICAgICAg
ICAjICAgICAgIG9mIGNyZWF0ZS1yb2xsb3V0IGZvciBidWcgVVJMcy4gIEl0IHNob3VsZCBkbyBi
ZXR0ZXIKICAgICAgICAgICAgICMgICAgICAgcGFyc2luZyBpbnN0ZWFkLgogICAgICAgICAgICAg
bG9nKCJQcmVwYXJpbmcgcm9sbG91dCBmb3IgYnVnICVzLiIgJSBjb21taXRfaW5mby5idWdfaWQo
KSkKLSAgICAgICAgICAgIHJldHVybiBjb21taXRfaW5mbwotICAgICAgICBsb2coIlVuYWJsZSB0
byBwYXJzZSBidWcgbnVtYmVyIGZyb20gZGlmZi4iKQorICAgICAgICBlbHNlOgorICAgICAgICAg
ICAgbG9nKCJVbmFibGUgdG8gcGFyc2UgYnVnIG51bWJlciBmcm9tIGRpZmYuIikKKyAgICAgICAg
cmV0dXJuIGNvbW1pdF9pbmZvCiAKICAgICBkZWYgX3ByZXBhcmVfc3RhdGUoc2VsZiwgb3B0aW9u
cywgYXJncywgdG9vbCk6CiAgICAgICAgIHJldmlzaW9uID0gYXJnc1swXQpkaWZmIC0tZ2l0IGEv
V2ViS2l0VG9vbHMvU2NyaXB0cy93ZWJraXRweS90b29sL2NvbW1hbmRzL2Rvd25sb2FkX3VuaXR0
ZXN0LnB5IGIvV2ViS2l0VG9vbHMvU2NyaXB0cy93ZWJraXRweS90b29sL2NvbW1hbmRzL2Rvd25s
b2FkX3VuaXR0ZXN0LnB5CmluZGV4IDkyNjAzN2M5YTFlZDg1ZDVkMzBiYjk5NDEyNmNkZTAzNmI3
YWIxNTUuLjRkZDlkN2Y0YzE5N2RjNDk3NDBjMTMzOTAwZjNhZDMyMmU5MjcwNzcgMTAwNjQ0Ci0t
LSBhL1dlYktpdFRvb2xzL1NjcmlwdHMvd2Via2l0cHkvdG9vbC9jb21tYW5kcy9kb3dubG9hZF91
bml0dGVzdC5weQorKysgYi9XZWJLaXRUb29scy9TY3JpcHRzL3dlYmtpdHB5L3Rvb2wvY29tbWFu
ZHMvZG93bmxvYWRfdW5pdHRlc3QucHkKQEAgLTI2LDkgKzI2LDMyIEBACiAjIChJTkNMVURJTkcg
TkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVT
RQogIyBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZ
IE9GIFNVQ0ggREFNQUdFLgogCitpbXBvcnQgdW5pdHRlc3QKKworZnJvbSB3ZWJraXRweS5jb21t
b24uc3lzdGVtLm91dHB1dGNhcHR1cmUgaW1wb3J0IE91dHB1dENhcHR1cmUKIGZyb20gd2Via2l0
cHkudGhpcmRwYXJ0eS5tb2NrIGltcG9ydCBNb2NrCiBmcm9tIHdlYmtpdHB5LnRvb2wuY29tbWFu
ZHMuY29tbWFuZHRlc3QgaW1wb3J0IENvbW1hbmRzVGVzdAogZnJvbSB3ZWJraXRweS50b29sLmNv
bW1hbmRzLmRvd25sb2FkIGltcG9ydCAqCitmcm9tIHdlYmtpdHB5LnRvb2wubW9ja3Rvb2wgaW1w
b3J0IE1vY2tUb29sCisKKworY2xhc3MgQWJzdHJhY3RSb2xsb3V0UHJlcENvbW1hbmRUZXN0KHVu
aXR0ZXN0LlRlc3RDYXNlKToKKyAgICBkZWYgdGVzdF9jb21taXRfaW5mbyhzZWxmKToKKyAgICAg
ICAgY29tbWFuZCA9IEFic3RyYWN0Um9sbG91dFByZXBDb21tYW5kKCkKKyAgICAgICAgdG9vbCA9
IE1vY2tUb29sKCkKKyAgICAgICAgY29tbWFuZC5iaW5kX3RvX3Rvb2wodG9vbCkKKyAgICAgICAg
b3V0cHV0ID0gT3V0cHV0Q2FwdHVyZSgpCisKKyAgICAgICAgZXhwZWN0ZWRfc3RkZXJyID0gIlBy
ZXBhcmluZyByb2xsb3V0IGZvciBidWcgNDIuXG4iCisgICAgICAgIGNvbW1pdF9pbmZvID0gb3V0
cHV0LmFzc2VydF9vdXRwdXRzKHNlbGYsIGNvbW1hbmQuX2NvbW1pdF9pbmZvLCBbMTIzNF0sIGV4
cGVjdGVkX3N0ZGVycj1leHBlY3RlZF9zdGRlcnIpCisgICAgICAgIHNlbGYuYXNzZXJ0VHJ1ZShj
b21taXRfaW5mbykKKworICAgICAgICBtb2NrX2NvbW1pdF9pbmZvID0gTW9jaygpCisgICAgICAg
IG1vY2tfY29tbWl0X2luZm8uYnVnX2lkID0gbGFtYmRhOiBOb25lCisgICAgICAgIHRvb2wuX2No
ZWNrb3V0LmNvbW1pdF9pbmZvX2Zvcl9yZXZpc2lvbiA9IGxhbWJkYSByZXZpc2lvbjogbW9ja19j
b21taXRfaW5mbworICAgICAgICBleHBlY3RlZF9zdGRlcnIgPSAiVW5hYmxlIHRvIHBhcnNlIGJ1
ZyBudW1iZXIgZnJvbSBkaWZmLlxuIgorICAgICAgICBjb21taXRfaW5mbyA9IG91dHB1dC5hc3Nl
cnRfb3V0cHV0cyhzZWxmLCBjb21tYW5kLl9jb21taXRfaW5mbywgWzEyMzRdLCBleHBlY3RlZF9z
dGRlcnI9ZXhwZWN0ZWRfc3RkZXJyKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGNvbW1pdF9p
bmZvLCBtb2NrX2NvbW1pdF9pbmZvKQogCiAKIGNsYXNzIERvd25sb2FkQ29tbWFuZHNUZXN0KENv
bW1hbmRzVGVzdCk6Cg==
</data>

          </attachment>
      

    </bug>

</bugzilla>