<?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>213315</bug_id>
          
          <creation_ts>2020-06-17 13:23:51 -0700</creation_ts>
          <short_desc>Delete code for old ews bindings queue</short_desc>
          <delta_ts>2020-06-17 18:27:01 -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>Tables</component>
          <version>WebKit Nightly Build</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords>InRadar</keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          <blocked>213296</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="Aakash Jain">aakash_jain</reporter>
          <assigned_to name="Aakash Jain">aakash_jain</assigned_to>
          <cc>aakash_jain</cc>
    
    <cc>ap</cc>
    
    <cc>ews-watchlist</cc>
    
    <cc>glenn</cc>
    
    <cc>jbedard</cc>
    
    <cc>webkit-bug-importer</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1663661</commentid>
    <comment_count>0</comment_count>
    <who name="Aakash Jain">aakash_jain</who>
    <bug_when>2020-06-17 13:23:51 -0700</bug_when>
    <thetext>Delete code for old ews bindings queue. See Bug 213296 for details of old ews code deletion plan.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1663663</commentid>
    <comment_count>1</comment_count>
      <attachid>402150</attachid>
    <who name="Aakash Jain">aakash_jain</who>
    <bug_when>2020-06-17 13:26:00 -0700</bug_when>
    <thetext>Created attachment 402150
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1663671</commentid>
    <comment_count>2</comment_count>
      <attachid>402150</attachid>
    <who name="Alexey Proskuryakov">ap</who>
    <bug_when>2020-06-17 14:01:43 -0700</bug_when>
    <thetext>Comment on attachment 402150
Patch

rs=me</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1663675</commentid>
    <comment_count>3</comment_count>
    <who name="Aakash Jain">aakash_jain</who>
    <bug_when>2020-06-17 14:29:27 -0700</bug_when>
    <thetext>Committed r263181: &lt;https://trac.webkit.org/changeset/263181&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1663676</commentid>
    <comment_count>4</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2020-06-17 14:30:35 -0700</bug_when>
    <thetext>&lt;rdar://problem/64463538&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>402150</attachid>
            <date>2020-06-17 13:26:00 -0700</date>
            <delta_ts>2020-06-17 18:27:01 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-213315-20200617162558.patch</filename>
            <type>text/plain</type>
            <size>26830</size>
            <attacher name="Aakash Jain">aakash_jain</attacher>
            
              <data encoding="base64">SW5kZXg6IFRvb2xzL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBUb29scy9DaGFuZ2VMb2cJKHJl
dmlzaW9uIDI2MzE4MCkKKysrIFRvb2xzL0NoYW5nZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwz
ICsxLDQ1IEBACisyMDIwLTA2LTE3ICBBYWthc2ggSmFpbiAgPGFha2FzaF9qYWluQGFwcGxlLmNv
bT4KKworICAgICAgICBEZWxldGUgY29kZSBmb3Igb2xkIGV3cyBiaW5kaW5ncyBxdWV1ZQorICAg
ICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjEzMzE1CisKKyAg
ICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgKiBTY3JpcHRzL3dl
YmtpdHB5L2NvbW1vbi9jb25maWcvZXdzLmpzb246CisgICAgICAgICogU2NyaXB0cy93ZWJraXRw
eS9jb21tb24vY29uZmlnL3BvcnRzLnB5OgorICAgICAgICAoRGVwcmVjYXRlZFBvcnQucnVuX2Jp
bmRpbmdzX3Rlc3RzX2NvbW1hbmQpOiBEZWxldGVkLgorICAgICAgICAoV2luUG9ydC5ydW5fYmlu
ZGluZ3NfdGVzdHNfY29tbWFuZCk6IERlbGV0ZWQuCisgICAgICAgICogU2NyaXB0cy93ZWJraXRw
eS9jb21tb24vY29uZmlnL3BvcnRzX21vY2sucHk6CisgICAgICAgIChNb2NrUG9ydC5ydW5fYmlu
ZGluZ3NfdGVzdHNfY29tbWFuZCk6IERlbGV0ZWQuCisgICAgICAgICogU2NyaXB0cy93ZWJraXRw
eS9jb21tb24vbmV0L2dlbmVyaWN0ZXN0cmVzdWx0cy5weTogUmVtb3ZlZC4KKyAgICAgICAgKiBT
Y3JpcHRzL3dlYmtpdHB5L2NvbW1vbi9uZXQvZ2VuZXJpY3Rlc3RyZXN1bHRzX3VuaXR0ZXN0LnB5
OiBSZW1vdmVkLgorICAgICAgICAqIFNjcmlwdHMvd2Via2l0cHkvdG9vbC9ib3QvYmluZGluZ3N0
ZXN0cmVzdWx0c3JlYWRlci5weTogUmVtb3ZlZC4KKyAgICAgICAgKiBTY3JpcHRzL3dlYmtpdHB5
L3Rvb2wvYm90L3BhdGNoYW5hbHlzaXN0YXNrLnB5OgorICAgICAgICAoUGF0Y2hBbmFseXNpc1Rh
c2suX3JldHJ5X2JpbmRpbmdzX3Rlc3RzKTogRGVsZXRlZC4KKyAgICAgICAgKiBTY3JpcHRzL3dl
YmtpdHB5L3Rvb2wvYm90L3JldHJ5bG9naWNfdW5pdHRlc3QucHk6CisgICAgICAgIChNb2NrQmlu
ZGluZ3NFYXJseVdhcm5pbmdTeXN0ZW0pOiBEZWxldGVkLgorICAgICAgICAoTW9ja0JpbmRpbmdz
RWFybHlXYXJuaW5nU3lzdGVtLl9faW5pdF9fKTogRGVsZXRlZC4KKyAgICAgICAgKE1vY2tCaW5k
aW5nc0Vhcmx5V2FybmluZ1N5c3RlbS50ZXN0X3Jlc3VsdHMpOiBEZWxldGVkLgorICAgICAgICAo
QmluZGluZ3NFYXJseVdhcm5pbmdTeXN0ZW1UZXN0KTogRGVsZXRlZC4KKyAgICAgICAgKEJpbmRp
bmdzRWFybHlXYXJuaW5nU3lzdGVtVGVzdC5fcmVzdWx0c19pbmRpY2F0ZV9hbGxfcGFzc2VkKTog
RGVsZXRlZC4KKyAgICAgICAgKEJpbmRpbmdzRWFybHlXYXJuaW5nU3lzdGVtVGVzdC5fY3JlYXRl
X3Rhc2spOiBEZWxldGVkLgorICAgICAgICAoQmluZGluZ3NFYXJseVdhcm5pbmdTeXN0ZW1UZXN0
LnRlc3Rfc3VjY2Vzc19jYXNlKTogRGVsZXRlZC4KKyAgICAgICAgKEJpbmRpbmdzRWFybHlXYXJu
aW5nU3lzdGVtVGVzdC50ZXN0X3Rlc3RfZmFpbHVyZSk6IERlbGV0ZWQuCisgICAgICAgIChCaW5k
aW5nc0Vhcmx5V2FybmluZ1N5c3RlbVRlc3QudGVzdF9maXgpOiBEZWxldGVkLgorICAgICAgICAo
QmluZGluZ3NFYXJseVdhcm5pbmdTeXN0ZW1UZXN0LnRlc3RfaW5lZmZlY3RpdmVfcGF0Y2gpOiBE
ZWxldGVkLgorICAgICAgICAoQmluZGluZ3NFYXJseVdhcm5pbmdTeXN0ZW1UZXN0LnRlc3RfcGFy
dGlhbGx5X2VmZmVjdGl2ZV9wYXRjaCk6IERlbGV0ZWQuCisgICAgICAgIChCaW5kaW5nc0Vhcmx5
V2FybmluZ1N5c3RlbVRlc3QudGVzdF9kaWZmZXJlbnRfdGVzdF9mYWlsdXJlc19pbl9wYXRjaF9h
bmRfdHJlZSk6IERlbGV0ZWQuCisgICAgICAgICogU2NyaXB0cy93ZWJraXRweS90b29sL2NvbW1h
bmRzL2Vhcmx5d2FybmluZ3N5c3RlbS5weToKKyAgICAgICAgKiBTY3JpcHRzL3dlYmtpdHB5L3Rv
b2wvY29tbWFuZHMvZWFybHl3YXJuaW5nc3lzdGVtX3VuaXR0ZXN0LnB5OgorICAgICAgICAoVGVz
dEJpbmRpbmdzRVdTKTogRGVsZXRlZC4KKyAgICAgICAgKEFic3RyYWN0RWFybHlXYXJuaW5nU3lz
dGVtVGVzdC50ZXN0X2ZhaWxpbmdfYmluZGluZ3NfdGVzdHNfbWVzc2FnZSk6IERlbGV0ZWQuCisg
ICAgICAgICogU2NyaXB0cy93ZWJraXRweS90b29sL3N0ZXBzL2NoZWNrcGF0Y2hyZWxldmFuY2Uu
cHk6CisgICAgICAgICogU2NyaXB0cy93ZWJraXRweS90b29sL3N0ZXBzL3J1bnRlc3RzLnB5Ogor
ICAgICAgICAoUnVuVGVzdHMuX3J1bl9iaW5kaW5nc190ZXN0cyk6IERlbGV0ZWQuCisgICAgICAg
ICogU2NyaXB0cy93ZWJraXRweS90b29sL3N0ZXBzL3N0ZXBzX3VuaXR0ZXN0LnB5OgorICAgICAg
ICAodGVzdF9wYXRjaF9yZWxldmFudF9iaW5kaW5ncyk6IERlbGV0ZWQuCisgICAgICAgICh0ZXN0
X3J1bnRlc3RzX2FwaSk6IERlbGV0ZWQuCisKIDIwMjAtMDYtMTcgIEFha2FzaCBKYWluICA8YWFr
YXNoX2phaW5AYXBwbGUuY29tPgogCiAgICAgICAgIERlbGV0ZSBjb2RlIGZvciBvbGQgZXdzIHN0
eWxlIHF1ZXVlCkluZGV4OiBUb29scy9TY3JpcHRzL3dlYmtpdHB5L2NvbW1vbi9jb25maWcvZXdz
Lmpzb24KPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PQotLS0gVG9vbHMvU2NyaXB0cy93ZWJraXRweS9jb21tb24vY29uZmln
L2V3cy5qc29uCShyZXZpc2lvbiAyNjMxODApCisrKyBUb29scy9TY3JpcHRzL3dlYmtpdHB5L2Nv
bW1vbi9jb25maWcvZXdzLmpzb24JKHdvcmtpbmcgY29weSkKQEAgLTcyLDEzICs3Miw2IEBACiAg
ICAgICAgICAgICAiZ3VpamVtb250QGlnYWxpYS5jb20iCiAgICAgICAgIF0KICAgICB9LAotICAg
ICJCaW5kaW5ncyBFV1MiOiB7Ci0gICAgICAgICJwb3J0IjogIm1hYyIsCi0gICAgICAgICJuYW1l
IjogImJpbmRpbmdzLWV3cyIsCi0gICAgICAgICJncm91cCI6ICJiaW5kaW5ncyIsCi0gICAgICAg
ICJydW5UZXN0cyI6IHRydWUsCi0gICAgICAgICJzaG91bGRCdWlsZCI6IGZhbHNlCi0gICAgfSwK
ICAgICAiV2luQ2Fpcm8gRVdTIjogewogICAgICAgICAicG9ydCI6ICJ3aW5jYWlybyIsCiAgICAg
ICAgICJuYW1lIjogIndpbmNhaXJvLWV3cyIsCkluZGV4OiBUb29scy9TY3JpcHRzL3dlYmtpdHB5
L2NvbW1vbi9jb25maWcvcG9ydHMucHkKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gVG9vbHMvU2NyaXB0cy93ZWJr
aXRweS9jb21tb24vY29uZmlnL3BvcnRzLnB5CShyZXZpc2lvbiAyNjMxODApCisrKyBUb29scy9T
Y3JpcHRzL3dlYmtpdHB5L2NvbW1vbi9jb25maWcvcG9ydHMucHkJKHdvcmtpbmcgY29weSkKQEAg
LTEzMSw5ICsxMzEsNiBAQCBjbGFzcyBEZXByZWNhdGVkUG9ydChvYmplY3QpOgogICAgIGRlZiBy
dW5fcGVybF91bml0dGVzdHNfY29tbWFuZChzZWxmKToKICAgICAgICAgcmV0dXJuIHNlbGYuc2Ny
aXB0X3NoZWxsX2NvbW1hbmQoInRlc3Qtd2Via2l0cGVybCIpCiAKLSAgICBkZWYgcnVuX2JpbmRp
bmdzX3Rlc3RzX2NvbW1hbmQoc2VsZik6Ci0gICAgICAgIHJldHVybiBzZWxmLnNjcmlwdF9zaGVs
bF9jb21tYW5kKCJydW4tYmluZGluZ3MtdGVzdHMiKQotCiAgICAgZGVmIHJ1bl9hcGlfdGVzdHNf
Y29tbWFuZChzZWxmLCBidWlsZF9zdHlsZT1Ob25lKToKICAgICAgICAgY29tbWFuZCA9IHNlbGYu
c2NyaXB0X3NoZWxsX2NvbW1hbmQoInJ1bi1hcGktdGVzdHMiKQogICAgICAgICByZXR1cm4gc2Vs
Zi5fYXBwZW5kX2J1aWxkX3N0eWxlX2ZsYWcoY29tbWFuZCwgYnVpbGRfc3R5bGUpCkBAIC0xODIs
OSArMTc5LDYgQEAgY2xhc3MgTWFjV0syUG9ydChEZXByZWNhdGVkUG9ydCk6CiBjbGFzcyBXaW5Q
b3J0KERlcHJlY2F0ZWRQb3J0KToKICAgICBwb3J0X2ZsYWdfbmFtZSA9ICJ3aW4iCiAKLSAgICBk
ZWYgcnVuX2JpbmRpbmdzX3Rlc3RzX2NvbW1hbmQoc2VsZik6Ci0gICAgICAgIHJldHVybiBOb25l
Ci0KICAgICBkZWYgcnVuX3dlYmtpdF90ZXN0c19jb21tYW5kKHNlbGYsIGJ1aWxkX3N0eWxlPU5v
bmUpOgogICAgICAgICBjb21tYW5kID0gc3VwZXIoV2luUG9ydCwgc2VsZikucnVuX3dlYmtpdF90
ZXN0c19jb21tYW5kKGJ1aWxkX3N0eWxlKQogICAgICAgICBjb21tYW5kLmFwcGVuZCgiLS1kdW1w
LXJlbmRlci10cmVlIikKSW5kZXg6IFRvb2xzL1NjcmlwdHMvd2Via2l0cHkvY29tbW9uL2NvbmZp
Zy9wb3J0c19tb2NrLnB5Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFRvb2xzL1NjcmlwdHMvd2Via2l0cHkvY29t
bW9uL2NvbmZpZy9wb3J0c19tb2NrLnB5CShyZXZpc2lvbiAyNjMxODApCisrKyBUb29scy9TY3Jp
cHRzL3dlYmtpdHB5L2NvbW1vbi9jb25maWcvcG9ydHNfbW9jay5weQkod29ya2luZyBjb3B5KQpA
QCAtNTUsNiArNTUsMyBAQCBjbGFzcyBNb2NrUG9ydChvYmplY3QpOgogCiAgICAgZGVmIHJ1bl93
ZWJraXRfdGVzdHNfY29tbWFuZChzZWxmLCBidWlsZF9zdHlsZT1Ob25lKToKICAgICAgICAgcmV0
dXJuIFsnbW9jay1ydW4td2Via2l0LXRlc3RzJ10KLQotICAgIGRlZiBydW5fYmluZGluZ3NfdGVz
dHNfY29tbWFuZChzZWxmKToKLSAgICAgICAgcmV0dXJuIFsnbW9jay1ydW4tYmluZGluZ3MtdGVz
dHMnXQpJbmRleDogVG9vbHMvU2NyaXB0cy93ZWJraXRweS9jb21tb24vbmV0L2dlbmVyaWN0ZXN0
cmVzdWx0cy5weQo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09Ci0tLSBUb29scy9TY3JpcHRzL3dlYmtpdHB5L2NvbW1vbi9u
ZXQvZ2VuZXJpY3Rlc3RyZXN1bHRzLnB5CShyZXZpc2lvbiAyNjMxODApCisrKyBUb29scy9TY3Jp
cHRzL3dlYmtpdHB5L2NvbW1vbi9uZXQvZ2VuZXJpY3Rlc3RyZXN1bHRzLnB5CShub25leGlzdGVu
dCkKQEAgLTEsNjMgKzAsMCBAQAotIyBDb3B5cmlnaHQgKEMpIDIwMTcgQXBwbGUgSW5jLiBBbGwg
cmlnaHRzIHJlc2VydmVkLgotIwotIyBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBh
bmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKLSMgbW9kaWZpY2F0aW9uLCBhcmUgcGVy
bWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCi0jIGFyZSBtZXQ6
Ci0jIDEuICBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFi
b3ZlIGNvcHlyaWdodAotIyAgICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQg
dGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgotIyAyLiAgUmVkaXN0cmlidXRpb25zIGluIGJpbmFy
eSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKLSMgICAgIG5vdGljZSwg
dGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0
aGUKLSMgICAgIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3
aXRoIHRoZSBkaXN0cmlidXRpb24uCi0jCi0jIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkg
QVBQTEUgSU5DLiBBTkQgSVRTIENPTlRSSUJVVE9SUyBgYEFTIElTJycgQU5ECi0jIEFOWSBFWFBS
RVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8s
IFRIRSBJTVBMSUVECi0jIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNT
IEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBUkUKLSMgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQg
U0hBTEwgQVBQTEUgSU5DLiBPUiBJVFMgQ09OVFJJQlVUT1JTIEJFIExJQUJMRSBGT1IKLSMgQU5Z
IERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IgQ09O
U0VRVUVOVElBTAotIyBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJP
Q1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUgotIyBTRVJWSUNFUzsgTE9TUyBPRiBVU0Us
IERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUgotIyBD
QVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNU
LCBTVFJJQ1QgTElBQklMSVRZLAotIyBPUiBUT1JUIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBP
VEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRQotIyBPRiBUSElTIFNP
RlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdF
LgotCi1pbXBvcnQgbG9nZ2luZwotCi1mcm9tIHdlYmtpdHB5LmNvbW1vbi5uZXQuYWJzdHJhY3R0
ZXN0cmVzdWx0cyBpbXBvcnQgQWJzdHJhY3RUZXN0UmVzdWx0cwotCi1fbG9nID0gbG9nZ2luZy5n
ZXRMb2dnZXIoX19uYW1lX18pCi0KLQotY2xhc3MgR2VuZXJpY1Rlc3RSZXN1bHRzKEFic3RyYWN0
VGVzdFJlc3VsdHMpOgotICAgIGRlZiBfX2luaXRfXyhzZWxmLCBmYWlsdXJlcyk6Ci0gICAgICAg
IHNlbGYuX2ZhaWx1cmVzID0gZmFpbHVyZXMKLQotICAgIEBjbGFzc21ldGhvZAotICAgIGRlZiBy
ZXN1bHRzX2Zyb21fc3RyaW5nKGNscywgc3RyaW5nKToKLSAgICAgICAgcGFyc2VkX3Jlc3VsdHMg
PSBjbHMucGFyc2VfanNvbl9zdHJpbmcoc3RyaW5nKQotICAgICAgICBpZiBub3QgcGFyc2VkX3Jl
c3VsdHM6Ci0gICAgICAgICAgICByZXR1cm4gTm9uZQotCi0gICAgICAgIGlmICdmYWlsdXJlcycg
bm90IGluIHBhcnNlZF9yZXN1bHRzOgotICAgICAgICAgICAgcmV0dXJuIE5vbmUKLQotICAgICAg
ICByZXR1cm4gY2xzKHBhcnNlZF9yZXN1bHRzWydmYWlsdXJlcyddKQotCi0gICAgZGVmIGlzX3N1
YnNldChzZWxmLCBvdGhlcik6Ci0gICAgICAgIHJldHVybiBzZXQoc2VsZi5fZmFpbHVyZXMpIDw9
IHNldChvdGhlci5fZmFpbHVyZXMpCi0KLSAgICBkZWYgZXF1YWxzKHNlbGYsIG90aGVyKToKLSAg
ICAgICAgcmV0dXJuIHNldChzZWxmLl9mYWlsdXJlcykgPT0gc2V0KG90aGVyLl9mYWlsdXJlcykK
LQotICAgIGRlZiBhbGxfcGFzc2VkKHNlbGYpOgotICAgICAgICByZXR1cm4gbm90IHNlbGYuX2Zh
aWx1cmVzCi0KLSAgICBkZWYgZmFpbGluZ190ZXN0cyhzZWxmKToKLSAgICAgICAgcmV0dXJuIHNl
bGYuX2ZhaWx1cmVzCi0KLSAgICAjIE5vIGRlZmluZWQgZmFpbHVyZSBsaW1pdCBmb3IgYmluZGlu
Z3MgdGVzdHMuCi0gICAgZGVmIGRpZF9leGNlZWRfdGVzdF9mYWlsdXJlX2xpbWl0KHNlbGYpOgot
ICAgICAgICByZXR1cm4gRmFsc2UKLQotCi1jbGFzcyBCaW5kaW5nc1Rlc3RSZXN1bHRzKEdlbmVy
aWNUZXN0UmVzdWx0cyk6Ci0gICAgcGFzcwpJbmRleDogVG9vbHMvU2NyaXB0cy93ZWJraXRweS9j
b21tb24vbmV0L2dlbmVyaWN0ZXN0cmVzdWx0c191bml0dGVzdC5weQo9PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBU
b29scy9TY3JpcHRzL3dlYmtpdHB5L2NvbW1vbi9uZXQvZ2VuZXJpY3Rlc3RyZXN1bHRzX3VuaXR0
ZXN0LnB5CShyZXZpc2lvbiAyNjMxODApCisrKyBUb29scy9TY3JpcHRzL3dlYmtpdHB5L2NvbW1v
bi9uZXQvZ2VuZXJpY3Rlc3RyZXN1bHRzX3VuaXR0ZXN0LnB5CShub25leGlzdGVudCkKQEAgLTEs
NDEgKzAsMCBAQAotIyBDb3B5cmlnaHQgKEMpIDIwMTcgQXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJl
c2VydmVkLgotIwotIyBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5
IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKLSMgbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHBy
b3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCi0jIGFyZSBtZXQ6Ci0jIDEuICBS
ZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHly
aWdodAotIyAgICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxv
d2luZyBkaXNjbGFpbWVyLgotIyAyLiAgUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11
c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKLSMgICAgIG5vdGljZSwgdGhpcyBsaXN0
IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKLSMgICAg
IGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBk
aXN0cmlidXRpb24uCi0jCi0jIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgQVBQTEUgSU5D
LiBBTkQgSVRTIENPTlRSSUJVVE9SUyBgYEFTIElTJycgQU5ECi0jIEFOWSBFWFBSRVNTIE9SIElN
UExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFRIRSBJTVBM
SUVECi0jIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBB
UlRJQ1VMQVIgUFVSUE9TRSBBUkUKLSMgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgQVBQ
TEUgSU5DLiBPUiBJVFMgQ09OVFJJQlVUT1JTIEJFIExJQUJMRSBGT1IKLSMgQU5ZIERJUkVDVCwg
SU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElB
TAotIyBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQg
T0YgU1VCU1RJVFVURSBHT09EUyBPUgotIyBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsIERBVEEsIE9S
IFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUgotIyBDQVVTRUQgQU5E
IE9OIEFOWSBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1Qg
TElBQklMSVRZLAotIyBPUiBUT1JUIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0Up
IEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRQotIyBPRiBUSElTIFNPRlRXQVJFLCBF
VkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgotCi1pbXBv
cnQgdW5pdHRlc3QKLQotZnJvbSB3ZWJraXRweS5jb21tb24ubmV0LmdlbmVyaWN0ZXN0cmVzdWx0
cyBpbXBvcnQgR2VuZXJpY1Rlc3RSZXN1bHRzCi0KLQotY2xhc3MgR2VuZXJpY1Rlc3RSZXN1bHRz
VGVzdCh1bml0dGVzdC5UZXN0Q2FzZSk6Ci0gICAgZGVmIHRlc3RfcmVzdWx0c19mcm9tX3N0cmlu
ZyhzZWxmKToKLSAgICAgICAgaW5jb21wbGV0ZV9qc29uID0gJ3sia2V5MiI6IFtdfScKLSAgICAg
ICAgc2VsZi5hc3NlcnRFcXVhbChOb25lLCBHZW5lcmljVGVzdFJlc3VsdHMucmVzdWx0c19mcm9t
X3N0cmluZyhpbmNvbXBsZXRlX2pzb24pKQotCi0gICAgZGVmIHRlc3RfcmVzdWx0c19mcm9tX3N0
cmluZ19zdWNjZXNzKHNlbGYpOgotICAgICAgICBub19mYWlsdXJlc19zdHJpbmcgPSAneyJmYWls
dXJlcyI6IFtdfScKLSAgICAgICAgbm9fZmFpbHVyZXNfcmVzdWx0cyA9IEdlbmVyaWNUZXN0UmVz
dWx0cyhbXSkKLSAgICAgICAgc2VsZi5hc3NlcnRUcnVlKG5vX2ZhaWx1cmVzX3Jlc3VsdHMuZXF1
YWxzKEdlbmVyaWNUZXN0UmVzdWx0cy5yZXN1bHRzX2Zyb21fc3RyaW5nKG5vX2ZhaWx1cmVzX3N0
cmluZykpKQotICAgICAgICBzZWxmLmFzc2VydFRydWUobm9fZmFpbHVyZXNfcmVzdWx0cy5hbGxf
cGFzc2VkKCkpCi0KLSAgICAgICAgdGVzdF9zdHJpbmcgPSAneyJmYWlsdXJlcyI6IFsiZmFpbHVy
ZTEiXX0nCi0gICAgICAgIHRlc3RfcmVzdWx0cyA9IEdlbmVyaWNUZXN0UmVzdWx0cyhbImZhaWx1
cmUxIl0pCi0gICAgICAgIHNlbGYuYXNzZXJ0VHJ1ZSh0ZXN0X3Jlc3VsdHMuZXF1YWxzKEdlbmVy
aWNUZXN0UmVzdWx0cy5yZXN1bHRzX2Zyb21fc3RyaW5nKHRlc3Rfc3RyaW5nKSkpCkluZGV4OiBU
b29scy9TY3JpcHRzL3dlYmtpdHB5L3Rvb2wvYm90L2JpbmRpbmdzdGVzdHJlc3VsdHNyZWFkZXIu
cHkKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PQotLS0gVG9vbHMvU2NyaXB0cy93ZWJraXRweS90b29sL2JvdC9iaW5kaW5n
c3Rlc3RyZXN1bHRzcmVhZGVyLnB5CShyZXZpc2lvbiAyNjMxODApCisrKyBUb29scy9TY3JpcHRz
L3dlYmtpdHB5L3Rvb2wvYm90L2JpbmRpbmdzdGVzdHJlc3VsdHNyZWFkZXIucHkJKG5vbmV4aXN0
ZW50KQpAQCAtMSwzNSArMCwwIEBACi0jIENvcHlyaWdodCAoQykgMjAxNyBBcHBsZSBJbmMuIEFs
bCByaWdodHMgcmVzZXJ2ZWQuCi0jCi0jIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNl
IGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAotIyBtb2RpZmljYXRpb24sIGFyZSBw
ZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKLSMgYXJlIG1l
dDoKLSMgMS4gIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUg
YWJvdmUgY29weXJpZ2h0Ci0jICAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFu
ZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCi0jIDIuICBSZWRpc3RyaWJ1dGlvbnMgaW4gYmlu
YXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAotIyAgICAgbm90aWNl
LCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGlu
IHRoZQotIyAgICAgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVk
IHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KLSMKLSMgVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBC
WSBBUFBMRSBJTkMuIEFORCBJVFMgQ09OVFJJQlVUT1JTIGBgQVMgSVMnJyBBTkQKLSMgQU5ZIEVY
UFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBU
TywgVEhFIElNUExJRUQKLSMgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5F
U1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFSRQotIyBESVNDTEFJTUVELiBJTiBOTyBFVkVO
VCBTSEFMTCBBUFBMRSBJTkMuIE9SIElUUyBDT05UUklCVVRPUlMgQkUgTElBQkxFIEZPUgotIyBB
TlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUiBD
T05TRVFVRU5USUFMCi0jIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQ
Uk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SCi0jIFNFUlZJQ0VTOyBMT1NTIE9GIFVT
RSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSCi0j
IENBVVNFRCBBTkQgT04gQU5ZIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJB
Q1QsIFNUUklDVCBMSUFCSUxJVFksCi0jIE9SIFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNFIE9S
IE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFCi0jIE9GIFRISVMg
U09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1B
R0UuCi0KLWltcG9ydCBsb2dnaW5nCi0KLWZyb20gd2Via2l0cHkuY29tbW9uLm5ldC5nZW5lcmlj
dGVzdHJlc3VsdHMgaW1wb3J0IEJpbmRpbmdzVGVzdFJlc3VsdHMKLWZyb20gd2Via2l0cHkudG9v
bC5ib3QuYWJzdHJhY3R0ZXN0cmVzdWx0c3JlYWRlciBpbXBvcnQgQWJzdHJhY3RUZXN0UmVzdWx0
c1JlYWRlcgotCi1fbG9nID0gbG9nZ2luZy5nZXRMb2dnZXIoX19uYW1lX18pCi0KLQotY2xhc3Mg
QmluZGluZ3NUZXN0UmVzdWx0c1JlYWRlcihBYnN0cmFjdFRlc3RSZXN1bHRzUmVhZGVyKToKLSAg
ICBkZWYgcmVzdWx0cyhzZWxmKToKLSAgICAgICAgcmVzdWx0c19wYXRoID0gc2VsZi5faG9zdC5m
aWxlc3lzdGVtLmpvaW4oc2VsZi5fcmVzdWx0c19kaXJlY3RvcnksICdiaW5kaW5nc190ZXN0X3Jl
c3VsdHMuanNvbicpCi0gICAgICAgIGNvbnRlbnRzID0gc2VsZi5fcmVhZF9maWxlX2NvbnRlbnRz
KHJlc3VsdHNfcGF0aCkKLSAgICAgICAgcmV0dXJuIEJpbmRpbmdzVGVzdFJlc3VsdHMucmVzdWx0
c19mcm9tX3N0cmluZyhjb250ZW50cykKSW5kZXg6IFRvb2xzL1NjcmlwdHMvd2Via2l0cHkvdG9v
bC9ib3QvcGF0Y2hhbmFseXNpc3Rhc2sucHkKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gVG9vbHMvU2NyaXB0cy93
ZWJraXRweS90b29sL2JvdC9wYXRjaGFuYWx5c2lzdGFzay5weQkocmV2aXNpb24gMjYzMTgwKQor
KysgVG9vbHMvU2NyaXB0cy93ZWJraXRweS90b29sL2JvdC9wYXRjaGFuYWx5c2lzdGFzay5weQko
d29ya2luZyBjb3B5KQpAQCAtMjMxLDMwICsyMzEsNiBAQCBjbGFzcyBQYXRjaEFuYWx5c2lzVGFz
ayhvYmplY3QpOgogICAgICAgICAjIGFsc28gcHJlc2VudCB3aXRob3V0IHRoZSBwYXRjaCwgc28g
d2UgZG9uJ3QgbmVlZCB0byBkZWZlci4KICAgICAgICAgcmV0dXJuIEZhbHNlCiAKLSAgICBkZWYg
X3JldHJ5X2JpbmRpbmdzX3Rlc3RzKHNlbGYpOgotICAgICAgICBmaXJzdF9yZXN1bHRzID0gc2Vs
Zi5fZGVsZWdhdGUudGVzdF9yZXN1bHRzKCkKLSAgICAgICAgZmlyc3Rfc2NyaXB0X2Vycm9yID0g
c2VsZi5fc2NyaXB0X2Vycm9yCi0gICAgICAgIGZpcnN0X2ZhaWx1cmVfc3RhdHVzX2lkID0gc2Vs
Zi5mYWlsdXJlX3N0YXR1c19pZAotICAgICAgICBpZiBmaXJzdF9yZXN1bHRzIGlzIE5vbmU6Ci0g
ICAgICAgICAgICByZXR1cm4gRmFsc2UKLQotICAgICAgICAjIFNvbWUgZXJyb3JzIGFyZSBub3Qg
Y29ycmVjdGx5IHJlcG9ydGVkIGJ5IHRoZSBydW4tYmluZGluZ3MtdGVzdHMgc2NyaXB0Ci0gICAg
ICAgICMgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE2OTQ0OQotICAg
ICAgICAjIEluIGFmZmVjdGVkIGNhc2VzLCBhZGQgYSBtZXNzYWdlIHJlcXVlc3RpbmcgdG8gbG9v
ayBhdCB0ZXN0IG91dHB1dCBpbnN0ZWFkLgotICAgICAgICBpZiBub3QgZmlyc3RfcmVzdWx0cy5f
ZmFpbHVyZXM6Ci0gICAgICAgICAgICBmaXJzdF9yZXN1bHRzLl9mYWlsdXJlcyA9IFsiUGxlYXNl
IHNlZSB0ZXN0IG91dHB1dCBmb3IgcmVzdWx0cyJdCi0KLSAgICAgICAgc2VsZi5fYnVpbGRfYW5k
X3Rlc3Rfd2l0aG91dF9wYXRjaCgpCi0gICAgICAgIGNsZWFuX3RyZWVfcmVzdWx0cyA9IHNlbGYu
X2RlbGVnYXRlLnRlc3RfcmVzdWx0cygpCi0gICAgICAgIGlmIGNsZWFuX3RyZWVfcmVzdWx0cyBp
cyBOb25lOgotICAgICAgICAgICAgcmV0dXJuIEZhbHNlCi0KLSAgICAgICAgaWYgZmlyc3RfcmVz
dWx0cy5pc19zdWJzZXQoY2xlYW5fdHJlZV9yZXN1bHRzKToKLSAgICAgICAgICAgIHJldHVybiBU
cnVlCi0KLSAgICAgICAgc2VsZi5mYWlsdXJlX3N0YXR1c19pZCA9IGZpcnN0X2ZhaWx1cmVfc3Rh
dHVzX2lkCi0gICAgICAgIHJldHVybiBzZWxmLnJlcG9ydF9mYWlsdXJlKE5vbmUsIGZpcnN0X3Jl
c3VsdHMsIGZpcnN0X3NjcmlwdF9lcnJvcikKLQogICAgICMgRklYTUU6IEFic3RyYWN0IG91dCBj
b21tb24gcGFydHMgb2YgdGhlIHJldHJ5IGxvZ2ljLgogICAgIGRlZiBfcmV0cnlfanNjX3Rlc3Rz
KHNlbGYpOgogICAgICAgICBmaXJzdF9yZXN1bHRzID0gc2VsZi5fZGVsZWdhdGUudGVzdF9yZXN1
bHRzKCkKQEAgLTM1OCw4ICszMzQsNiBAQCBjbGFzcyBQYXRjaEFuYWx5c2lzVGFzayhvYmplY3Qp
OgogCiAgICAgICAgIGlmIGhhc2F0dHIoc2VsZi5fZGVsZWdhdGUsICdncm91cCcpIGFuZCBzZWxm
Ll9kZWxlZ2F0ZS5ncm91cCgpID09ICJqc2MiOgogICAgICAgICAgICAgcmV0dXJuIHNlbGYuX3Jl
dHJ5X2pzY190ZXN0cygpCi0gICAgICAgIGVsaWYgaGFzYXR0cihzZWxmLl9kZWxlZ2F0ZSwgJ2dy
b3VwJykgYW5kIHNlbGYuX2RlbGVnYXRlLmdyb3VwKCkgPT0gImJpbmRpbmdzIjoKLSAgICAgICAg
ICAgIHJldHVybiBzZWxmLl9yZXRyeV9iaW5kaW5nc190ZXN0cygpCiAgICAgICAgIGVsc2U6CiAg
ICAgICAgICAgICByZXR1cm4gc2VsZi5fcmV0cnlfbGF5b3V0X3Rlc3RzKCkKIApJbmRleDogVG9v
bHMvU2NyaXB0cy93ZWJraXRweS90b29sL2JvdC9yZXRyeWxvZ2ljX3VuaXR0ZXN0LnB5Cj09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT0KLS0tIFRvb2xzL1NjcmlwdHMvd2Via2l0cHkvdG9vbC9ib3QvcmV0cnlsb2dpY191bml0
dGVzdC5weQkocmV2aXNpb24gMjYzMTgwKQorKysgVG9vbHMvU2NyaXB0cy93ZWJraXRweS90b29s
L2JvdC9yZXRyeWxvZ2ljX3VuaXR0ZXN0LnB5CSh3b3JraW5nIGNvcHkpCkBAIC0yMyw3ICsyMyw2
IEBACiBpbXBvcnQgbG9nZ2luZwogaW1wb3J0IHVuaXR0ZXN0CiAKLWZyb20gd2Via2l0cHkuY29t
bW9uLm5ldC5nZW5lcmljdGVzdHJlc3VsdHMgaW1wb3J0IEJpbmRpbmdzVGVzdFJlc3VsdHMKIGZy
b20gd2Via2l0cHkuY29tbW9uLm5ldC5qc2N0ZXN0cmVzdWx0cyBpbXBvcnQgSlNDVGVzdFJlc3Vs
dHMKIGZyb20gd2Via2l0cHkuY29tbW9uLnN5c3RlbS5leGVjdXRpdmUgaW1wb3J0IFNjcmlwdEVy
cm9yCiBmcm9tIHdlYmtpdHB5LnRvb2wuYm90LnBhdGNoYW5hbHlzaXN0YXNrIGltcG9ydCAqCkBA
IC0yMTcsODEgKzIxNiwzIEBAIGNsYXNzIEpTQ0Vhcmx5V2FybmluZ1N5c3RlbVRlc3QodW5pdHRl
c3QKICAgICAgICAgcmV0dXJuX3ZhbHVlID0gdGFzay5fdGVzdF9wYXRjaCgpCiAgICAgICAgIHNl
bGYuYXNzZXJ0VHJ1ZShyZXR1cm5fdmFsdWUpCiAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwodGFz
ay50ZXN0X3J1bl9jb3VudCgpLCAzKQotCi0KLWNsYXNzIE1vY2tCaW5kaW5nc0Vhcmx5V2Fybmlu
Z1N5c3RlbShBYnN0cmFjdEVhcmx5V2FybmluZ1N5c3RlbSk6Ci0gICAgZGVmIF9faW5pdF9fKHNl
bGYsIGZpcnN0X3Rlc3RfcmVzdWx0cywgY2xlYW5fdGVzdF9yZXN1bHRzKToKLSAgICAgICAgQWJz
dHJhY3RFYXJseVdhcm5pbmdTeXN0ZW0uX19pbml0X18oc2VsZikKLSAgICAgICAgc2VsZi5fZ3Jv
dXAgPSAnYmluZGluZ3MnCi0gICAgICAgIHNlbGYuX3Jlc3VsdHNfaW5fb3JkZXIgPSBbY2xlYW5f
dGVzdF9yZXN1bHRzLCBmaXJzdF90ZXN0X3Jlc3VsdHNdCi0KLSAgICBkZWYgdGVzdF9yZXN1bHRz
KHNlbGYpOgotICAgICAgICByZXR1cm4gc2VsZi5fcmVzdWx0c19pbl9vcmRlci5wb3AoKQotCi0K
LWNsYXNzIEJpbmRpbmdzRWFybHlXYXJuaW5nU3lzdGVtVGVzdCh1bml0dGVzdC5UZXN0Q2FzZSk6
Ci0gICAgZGVmIF9yZXN1bHRzX2luZGljYXRlX2FsbF9wYXNzZWQoc2VsZiwgcmVzdWx0cyk6Ci0g
ICAgICAgIGlmIHJlc3VsdHMgPT0gTm9uZToKLSAgICAgICAgICAgIHJldHVybiBGYWxzZQotICAg
ICAgICByZXR1cm4gcmVzdWx0cy5hbGxfcGFzc2VkKCkKLQotICAgIGRlZiBfY3JlYXRlX3Rhc2so
c2VsZiwgZmlyc3RfdGVzdF9yZXN1bHRzLCBjbGVhbl90ZXN0X3Jlc3VsdHMpOgotICAgICAgICBx
dWV1ZSA9IE1vY2tCaW5kaW5nc0Vhcmx5V2FybmluZ1N5c3RlbShmaXJzdF90ZXN0X3Jlc3VsdHMs
IGNsZWFuX3Rlc3RfcmVzdWx0cykKLSAgICAgICAgdG9vbCA9IE1vY2tUb29sKGxvZ19leGVjdXRp
dmU9VHJ1ZSkKLSAgICAgICAgcGF0Y2ggPSB0b29sLmJ1Z3MuZmV0Y2hfYXR0YWNobWVudCgxMDAw
MCkKLSAgICAgICAgcGF0Y2hlc19wYXNzZWRfYWxsX3Rlc3RzID0gW3NlbGYuX3Jlc3VsdHNfaW5k
aWNhdGVfYWxsX3Bhc3NlZChmaXJzdF90ZXN0X3Jlc3VsdHMpXQotICAgICAgICByZXR1cm4gTW9j
a1BhdGNoQW5hbHlzaXNUYXNrKHF1ZXVlLCBwYXRjaCwgcGF0Y2hlc19wYXNzZWRfYWxsX3Rlc3Rz
KQotCi0gICAgZGVmIHRlc3Rfc3VjY2Vzc19jYXNlKHNlbGYpOgotICAgICAgICBmaXJzdF90ZXN0
X3Jlc3VsdHMgPSBCaW5kaW5nc1Rlc3RSZXN1bHRzKFtdKQotICAgICAgICBjbGVhbl90ZXN0X3Jl
c3VsdHMgPSBCaW5kaW5nc1Rlc3RSZXN1bHRzKFtdKQotICAgICAgICB0YXNrID0gc2VsZi5fY3Jl
YXRlX3Rhc2soZmlyc3RfdGVzdF9yZXN1bHRzLCBjbGVhbl90ZXN0X3Jlc3VsdHMpCi0KLSAgICAg
ICAgcmV0dXJuX3ZhbHVlID0gdGFzay5fdGVzdF9wYXRjaCgpCi0gICAgICAgIHNlbGYuYXNzZXJ0
RXF1YWwodGFzay50ZXN0X3J1bl9jb3VudCgpLCAxKQotICAgICAgICBzZWxmLmFzc2VydFRydWUo
cmV0dXJuX3ZhbHVlKQotCi0gICAgZGVmIHRlc3RfdGVzdF9mYWlsdXJlKHNlbGYpOgotICAgICAg
ICBmaXJzdF90ZXN0X3Jlc3VsdHMgPSBCaW5kaW5nc1Rlc3RSZXN1bHRzKFsnVGVzdE1hcExpa2Uu
aWRsJ10pCi0gICAgICAgIGNsZWFuX3Rlc3RfcmVzdWx0cyA9IEJpbmRpbmdzVGVzdFJlc3VsdHMo
W10pCi0gICAgICAgIHRhc2sgPSBzZWxmLl9jcmVhdGVfdGFzayhmaXJzdF90ZXN0X3Jlc3VsdHMs
IGNsZWFuX3Rlc3RfcmVzdWx0cykKLQotICAgICAgICB3aXRoIHNlbGYuYXNzZXJ0UmFpc2VzKFNj
cmlwdEVycm9yKToKLSAgICAgICAgICAgIHJldHVybl92YWx1ZSA9IHRhc2suX3Rlc3RfcGF0Y2go
KQotICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHRhc2sudGVzdF9ydW5fY291bnQoKSwgMikKLQot
ICAgIGRlZiB0ZXN0X2ZpeChzZWxmKToKLSAgICAgICAgZmlyc3RfdGVzdF9yZXN1bHRzID0gQmlu
ZGluZ3NUZXN0UmVzdWx0cyhbXSkKLSAgICAgICAgY2xlYW5fdGVzdF9yZXN1bHRzID0gQmluZGlu
Z3NUZXN0UmVzdWx0cyhbJ1Rlc3RNYXBMaWtlLmlkbCddKQotICAgICAgICB0YXNrID0gc2VsZi5f
Y3JlYXRlX3Rhc2soZmlyc3RfdGVzdF9yZXN1bHRzLCBjbGVhbl90ZXN0X3Jlc3VsdHMpCi0KLSAg
ICAgICAgcmV0dXJuX3ZhbHVlID0gdGFzay5fdGVzdF9wYXRjaCgpCi0gICAgICAgIHNlbGYuYXNz
ZXJ0RXF1YWwodGFzay50ZXN0X3J1bl9jb3VudCgpLCAxKQotICAgICAgICBzZWxmLmFzc2VydFRy
dWUocmV0dXJuX3ZhbHVlKQotCi0gICAgZGVmIHRlc3RfaW5lZmZlY3RpdmVfcGF0Y2goc2VsZik6
Ci0gICAgICAgIGZpcnN0X3Rlc3RfcmVzdWx0cyA9IEJpbmRpbmdzVGVzdFJlc3VsdHMoWydUZXN0
TWFwTGlrZS5pZGwnXSkKLSAgICAgICAgY2xlYW5fdGVzdF9yZXN1bHRzID0gQmluZGluZ3NUZXN0
UmVzdWx0cyhbJ1Rlc3RNYXBMaWtlLmlkbCddKQotICAgICAgICB0YXNrID0gc2VsZi5fY3JlYXRl
X3Rhc2soZmlyc3RfdGVzdF9yZXN1bHRzLCBjbGVhbl90ZXN0X3Jlc3VsdHMpCi0KLSAgICAgICAg
cmV0dXJuX3ZhbHVlID0gdGFzay5fdGVzdF9wYXRjaCgpCi0gICAgICAgIHNlbGYuYXNzZXJ0RXF1
YWwodGFzay50ZXN0X3J1bl9jb3VudCgpLCAyKQotICAgICAgICBzZWxmLmFzc2VydFRydWUocmV0
dXJuX3ZhbHVlKQotCi0gICAgZGVmIHRlc3RfcGFydGlhbGx5X2VmZmVjdGl2ZV9wYXRjaChzZWxm
KToKLSAgICAgICAgZmlyc3RfdGVzdF9yZXN1bHRzID0gQmluZGluZ3NUZXN0UmVzdWx0cyhbJ1Rl
c3RNYXBMaWtlLmlkbCddKQotICAgICAgICBjbGVhbl90ZXN0X3Jlc3VsdHMgPSBCaW5kaW5nc1Rl
c3RSZXN1bHRzKFsnVGVzdE1hcExpa2UuaWRsJywgJ1Rlc3ROb2RlLmlkbCddKQotICAgICAgICB0
YXNrID0gc2VsZi5fY3JlYXRlX3Rhc2soZmlyc3RfdGVzdF9yZXN1bHRzLCBjbGVhbl90ZXN0X3Jl
c3VsdHMpCi0KLSAgICAgICAgcmV0dXJuX3ZhbHVlID0gdGFzay5fdGVzdF9wYXRjaCgpCi0gICAg
ICAgIHNlbGYuYXNzZXJ0RXF1YWwodGFzay50ZXN0X3J1bl9jb3VudCgpLCAyKQotICAgICAgICBz
ZWxmLmFzc2VydFRydWUocmV0dXJuX3ZhbHVlKQotCi0gICAgZGVmIHRlc3RfZGlmZmVyZW50X3Rl
c3RfZmFpbHVyZXNfaW5fcGF0Y2hfYW5kX3RyZWUoc2VsZik6Ci0gICAgICAgIGZpcnN0X3Rlc3Rf
cmVzdWx0cyA9IEJpbmRpbmdzVGVzdFJlc3VsdHMoWydUZXN0Tm9kZS5pZGwnXSkKLSAgICAgICAg
Y2xlYW5fdGVzdF9yZXN1bHRzID0gQmluZGluZ3NUZXN0UmVzdWx0cyhbJ1Rlc3RNYXBMaWtlLmlk
bCddKQotICAgICAgICB0YXNrID0gc2VsZi5fY3JlYXRlX3Rhc2soZmlyc3RfdGVzdF9yZXN1bHRz
LCBjbGVhbl90ZXN0X3Jlc3VsdHMpCi0KLSAgICAgICAgd2l0aCBzZWxmLmFzc2VydFJhaXNlcyhT
Y3JpcHRFcnJvcik6Ci0gICAgICAgICAgICByZXR1cm5fdmFsdWUgPSB0YXNrLl90ZXN0X3BhdGNo
KCkKLSAgICAgICAgc2VsZi5hc3NlcnRFcXVhbCh0YXNrLnRlc3RfcnVuX2NvdW50KCksIDIpCklu
ZGV4OiBUb29scy9TY3JpcHRzL3dlYmtpdHB5L3Rvb2wvY29tbWFuZHMvZWFybHl3YXJuaW5nc3lz
dGVtLnB5Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT0KLS0tIFRvb2xzL1NjcmlwdHMvd2Via2l0cHkvdG9vbC9jb21tYW5k
cy9lYXJseXdhcm5pbmdzeXN0ZW0ucHkJKHJldmlzaW9uIDI2MzE4MCkKKysrIFRvb2xzL1Njcmlw
dHMvd2Via2l0cHkvdG9vbC9jb21tYW5kcy9lYXJseXdhcm5pbmdzeXN0ZW0ucHkJKHdvcmtpbmcg
Y29weSkKQEAgLTM5LDcgKzM5LDYgQEAgZnJvbSB3ZWJraXRweS5jb21tb24uc3lzdGVtLmZpbGVz
eXN0ZW0gaQogZnJvbSB3ZWJraXRweS5jb21tb24uc3lzdGVtLmV4ZWN1dGl2ZSBpbXBvcnQgU2Ny
aXB0RXJyb3IKIGZyb20gd2Via2l0cHkuY29tbW9uLnVuaWNvZGVfY29tcGF0aWJpbGl0eSBpbXBv
cnQgZW5jb2RlX2ZvcgogZnJvbSB3ZWJraXRweS50b29sLmJvdC5lYXJseXdhcm5pbmdzeXN0ZW10
YXNrIGltcG9ydCBFYXJseVdhcm5pbmdTeXN0ZW1UYXNrLCBFYXJseVdhcm5pbmdTeXN0ZW1UYXNr
RGVsZWdhdGUKLWZyb20gd2Via2l0cHkudG9vbC5ib3QuYmluZGluZ3N0ZXN0cmVzdWx0c3JlYWRl
ciBpbXBvcnQgQmluZGluZ3NUZXN0UmVzdWx0c1JlYWRlcgogZnJvbSB3ZWJraXRweS50b29sLmJv
dC5sYXlvdXR0ZXN0cmVzdWx0c3JlYWRlciBpbXBvcnQgTGF5b3V0VGVzdFJlc3VsdHNSZWFkZXIK
IGZyb20gd2Via2l0cHkudG9vbC5ib3QuanNjdGVzdHJlc3VsdHNyZWFkZXIgaW1wb3J0IEpTQ1Rl
c3RSZXN1bHRzUmVhZGVyCiBmcm9tIHdlYmtpdHB5LnRvb2wuYm90LnBhdGNoYW5hbHlzaXN0YXNr
IGltcG9ydCBVbmFibGVUb0FwcGx5UGF0Y2gsIFBhdGNoSXNOb3RWYWxpZCwgUGF0Y2hJc05vdEFw
cGxpY2FibGUKQEAgLTYyLDggKzYxLDYgQEAgY2xhc3MgQWJzdHJhY3RFYXJseVdhcm5pbmdTeXN0
ZW0oQWJzdHJhYwogCiAgICAgICAgIGlmIHNlbGYuZ3JvdXAoKSA9PSAianNjIjoKICAgICAgICAg
ICAgIHNlbGYuX3Rlc3RfcmVzdWx0c19yZWFkZXIgPSBKU0NUZXN0UmVzdWx0c1JlYWRlcihzZWxm
Ll90b29sLCBzZWxmLl9wb3J0LmpzY19yZXN1bHRzX2RpcmVjdG9yeSgpKQotICAgICAgICBlbGlm
IHNlbGYuZ3JvdXAoKSA9PSAiYmluZGluZ3MiOgotICAgICAgICAgICAgc2VsZi5fdGVzdF9yZXN1
bHRzX3JlYWRlciA9IEJpbmRpbmdzVGVzdFJlc3VsdHNSZWFkZXIoc2VsZi5fdG9vbCwgc2VsZi5f
cG9ydC5qc2NfcmVzdWx0c19kaXJlY3RvcnkoKSkKICAgICAgICAgZWxzZToKICAgICAgICAgICAg
IHNlbGYuX3Rlc3RfcmVzdWx0c19yZWFkZXIgPSBMYXlvdXRUZXN0UmVzdWx0c1JlYWRlcihzZWxm
Ll90b29sLCBzZWxmLl9wb3J0LnJlc3VsdHNfZGlyZWN0b3J5KCksIHNlbGYuX2xvZ19kaXJlY3Rv
cnkoKSkKIApJbmRleDogVG9vbHMvU2NyaXB0cy93ZWJraXRweS90b29sL2NvbW1hbmRzL2Vhcmx5
d2FybmluZ3N5c3RlbV91bml0dGVzdC5weQo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBUb29scy9TY3JpcHRzL3dl
YmtpdHB5L3Rvb2wvY29tbWFuZHMvZWFybHl3YXJuaW5nc3lzdGVtX3VuaXR0ZXN0LnB5CShyZXZp
c2lvbiAyNjMxODApCisrKyBUb29scy9TY3JpcHRzL3dlYmtpdHB5L3Rvb2wvY29tbWFuZHMvZWFy
bHl3YXJuaW5nc3lzdGVtX3VuaXR0ZXN0LnB5CSh3b3JraW5nIGNvcHkpCkBAIC0zMCw3ICszMCw2
IEBACiBmcm9tIHdlYmtpdHB5LnRoaXJkcGFydHkubW9jayBpbXBvcnQgTW9jawogZnJvbSB3ZWJr
aXRweS5jb21tb24uaG9zdCBpbXBvcnQgSG9zdAogZnJvbSB3ZWJraXRweS5jb21tb24uaG9zdF9t
b2NrIGltcG9ydCBNb2NrSG9zdAotZnJvbSB3ZWJraXRweS5jb21tb24ubmV0LmdlbmVyaWN0ZXN0
cmVzdWx0cyBpbXBvcnQgQmluZGluZ3NUZXN0UmVzdWx0cwogZnJvbSB3ZWJraXRweS5jb21tb24u
bmV0LmpzY3Rlc3RyZXN1bHRzIGltcG9ydCBKU0NUZXN0UmVzdWx0cwogZnJvbSB3ZWJraXRweS5j
b21tb24ubmV0LmxheW91dHRlc3RyZXN1bHRzIGltcG9ydCBMYXlvdXRUZXN0UmVzdWx0cwogZnJv
bSB3ZWJraXRweS5jb21tb24uc3lzdGVtLm91dHB1dGNhcHR1cmUgaW1wb3J0IE91dHB1dENhcHR1
cmUKQEAgLTU3LDEyICs1Niw2IEBAIGNsYXNzIFRlc3RKU0NFV1MoQWJzdHJhY3RFYXJseVdhcm5p
bmdTeXMKICAgICBfZ3JvdXAgPSAianNjIgogCiAKLWNsYXNzIFRlc3RCaW5kaW5nc0VXUyhBYnN0
cmFjdEVhcmx5V2FybmluZ1N5c3RlbSk6Ci0gICAgcG9ydF9uYW1lID0gIm1hYyIKLSAgICBfYnVp
bGRfc3R5bGUgPSBOb25lCi0gICAgX2dyb3VwID0gImJpbmRpbmdzIgotCi0KIGNsYXNzIEFic3Ry
YWN0RWFybHlXYXJuaW5nU3lzdGVtVGVzdChRdWV1ZXNUZXN0KToKICAgICBkZWYgX3Rlc3RfbWVz
c2FnZShzZWxmLCBld3MsIHJlc3VsdHMsIG1lc3NhZ2UpOgogICAgICAgICBld3MuYmluZF90b190
b29sKE1vY2tUb29sKCkpCkBAIC04OCwxMSArODEsNiBAQCBjbGFzcyBBYnN0cmFjdEVhcmx5V2Fy
bmluZ1N5c3RlbVRlc3QoUXVlCiAgICAgICAgIG1lc3NhZ2UgPSAiTmV3IGZhaWxpbmcgdGVzdHM6
XG5lczYueWFtbC9lczYvdHlwZWRfYXJyYXlzX0ludDhBcnJheS5qcy5kZWZhdWx0XG5lczYueWFt
bC9lczYvdHlwZWRfYXJyYXlzX1VpbnQ4QXJyYXkuanMuZGVmYXVsdFxuYXBpVGVzdHMiCiAgICAg
ICAgIHNlbGYuX3Rlc3RfbWVzc2FnZShld3MsIHJlc3VsdHMsIG1lc3NhZ2UpCiAKLSAgICBkZWYg
dGVzdF9mYWlsaW5nX2JpbmRpbmdzX3Rlc3RzX21lc3NhZ2Uoc2VsZik6Ci0gICAgICAgIGV3cyA9
IFRlc3RCaW5kaW5nc0VXUygpCi0gICAgICAgIHJlc3VsdHMgPSBsYW1iZGEgYTogQmluZGluZ3NU
ZXN0UmVzdWx0cyhbIihKUykgVGVzdE1hcExpa2UuaWRsIiwgIihKUykgVGVzdE5vZGUuaWRsIl0p
Ci0gICAgICAgIG1lc3NhZ2UgPSAiTmV3IGZhaWxpbmcgdGVzdHM6XG4oSlMpIFRlc3RNYXBMaWtl
LmlkbFxuKEpTKSBUZXN0Tm9kZS5pZGwiCi0gICAgICAgIHNlbGYuX3Rlc3RfbWVzc2FnZShld3Ms
IHJlc3VsdHMsIG1lc3NhZ2UpCiAKIGNsYXNzIE1vY2tFYXJseVdhcm5pbmdTeXN0ZW1UYXNrRm9y
SW5jb25jbHVzaXZlSlNDUmVzdWx0cyhFYXJseVdhcm5pbmdTeXN0ZW1UYXNrKToKICAgICBkZWYg
X3Rlc3RfcGF0Y2goc2VsZik6CkBAIC0xNjksNyArMTU3LDYgQEAgUnVubmluZzogd2Via2l0LXBh
dGNoIGNoZWNrLXBhdGNoLXJlbGV2YQogICAgIGRlZiB0ZXN0X2V3c19uYW1lKHNlbGYpOgogICAg
ICAgICAjIFRoZXNlIGFyZSB0aGUgbmFtZXMgRVdTJ3MgaW5mcmFzdHJ1Y3R1cmUgZXhwZWN0cywg
Y2hlY2sgdGhhdCB0aGV5IHdvcmsKICAgICAgICAgZXhwZWN0ZWRfbmFtZXMgPSB7Ci0gICAgICAg
ICAgICAnYmluZGluZ3MtZXdzJywKICAgICAgICAgICAgICdndGstd2syLWV3cycsCiAgICAgICAg
ICAgICAnaW9zLWV3cycsCiAgICAgICAgICAgICAnaW9zLXNpbS1ld3MnLApJbmRleDogVG9vbHMv
U2NyaXB0cy93ZWJraXRweS90b29sL3N0ZXBzL2NoZWNrcGF0Y2hyZWxldmFuY2UucHkKPT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PQotLS0gVG9vbHMvU2NyaXB0cy93ZWJraXRweS90b29sL3N0ZXBzL2NoZWNrcGF0Y2hyZWxl
dmFuY2UucHkJKHJldmlzaW9uIDI2MzE4MCkKKysrIFRvb2xzL1NjcmlwdHMvd2Via2l0cHkvdG9v
bC9zdGVwcy9jaGVja3BhdGNocmVsZXZhbmNlLnB5CSh3b3JraW5nIGNvcHkpCkBAIC0zOCwxMSAr
MzgsNiBAQCBjbGFzcyBDaGVja1BhdGNoUmVsZXZhbmNlKEFic3RyYWN0U3RlcCk6CiAgICAgICAg
ICAgICBPcHRpb25zLnF1aWV0LAogICAgICAgICBdCiAKLSAgICBiaW5kaW5nc19wYXRocyA9IFsK
LSAgICAgICAgIlNvdXJjZS9XZWJDb3JlIiwKLSAgICAgICAgIlRvb2xzIiwKLSAgICBdCi0KICAg
ICBqc2NfcGF0aHMgPSBbCiAgICAgICAgICJKU1Rlc3RzLyIsCiAgICAgICAgICJTb3VyY2UvSmF2
YVNjcmlwdENvcmUvIiwKQEAgLTY1LDcgKzYwLDYgQEAgY2xhc3MgQ2hlY2tQYXRjaFJlbGV2YW5j
ZShBYnN0cmFjdFN0ZXApOgogICAgIF0KIAogICAgIGdyb3VwX3RvX3BhdGhzX21hcHBpbmcgPSB7
Ci0gICAgICAgICdiaW5kaW5ncyc6IGJpbmRpbmdzX3BhdGhzLAogICAgICAgICAnanNjJzoganNj
X3BhdGhzLAogICAgIH0KIApJbmRleDogVG9vbHMvU2NyaXB0cy93ZWJraXRweS90b29sL3N0ZXBz
L3J1bnRlc3RzLnB5Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFRvb2xzL1NjcmlwdHMvd2Via2l0cHkvdG9vbC9z
dGVwcy9ydW50ZXN0cy5weQkocmV2aXNpb24gMjYzMTgwKQorKysgVG9vbHMvU2NyaXB0cy93ZWJr
aXRweS90b29sL3N0ZXBzL3J1bnRlc3RzLnB5CSh3b3JraW5nIGNvcHkpCkBAIC02NiwxMCArNjYs
NiBAQCBjbGFzcyBSdW5UZXN0cyhBYnN0cmFjdFN0ZXApOgogICAgICAgICAgICAgc2VsZi5fcnVu
X2FwaV90ZXN0cygpCiAgICAgICAgICAgICByZXR1cm4KIAotICAgICAgICBpZiBzZWxmLl9vcHRp
b25zLmdyb3VwID09ICJiaW5kaW5ncyI6Ci0gICAgICAgICAgICBzZWxmLl9ydW5fYmluZGluZ3Nf
dGVzdHMoKQotICAgICAgICAgICAgcmV0dXJuCi0KICAgICAgICAgaWYgc2VsZi5fb3B0aW9ucy5p
dGVyYXRlX29uX25ld190ZXN0czoKICAgICAgICAgICAgIF9sb2cuaW5mbygiUnVubmluZyBydW4t
d2Via2l0LXRlc3RzIG9uIG5ldyB0ZXN0cyIpCiAgICAgICAgICAgICBzZWxmLl9ydW5fd2Via2l0
X3Rlc3RzKHNlbGYuX29wdGlvbnMuaXRlcmF0ZV9vbl9uZXdfdGVzdHMpCkBAIC0xNDYsMTQgKzE0
Miw2IEBAIGNsYXNzIFJ1blRlc3RzKEFic3RyYWN0U3RlcCk6CiAgICAgICAgIGFyZ3MuYXBwZW5k
KCItLWpzb24tb3V0cHV0PSVzIiAlIHJlc3VsdHNfZmlsZV9wYXRoKQogICAgICAgICBzZWxmLl90
b29sLmV4ZWN1dGl2ZS5ydW5fYW5kX3Rocm93X2lmX2ZhaWwoYXJncywgY3dkPXNlbGYuX3Rvb2wu
c2NtKCkuY2hlY2tvdXRfcm9vdCkKIAotICAgIGRlZiBfcnVuX2JpbmRpbmdzX3Rlc3RzKHNlbGYp
OgotICAgICAgICBhcmdzID0gc2VsZi5fdG9vbC5kZXByZWNhdGVkX3BvcnQoKS5ydW5fYmluZGlu
Z3NfdGVzdHNfY29tbWFuZCgpCi0gICAgICAgIHJlc3VsdHNfZGlyZWN0b3J5ID0gc2VsZi5fdG9v
bC5wb3J0X2ZhY3RvcnkuZ2V0KG9wdGlvbnM9c2VsZi5fb3B0aW9ucykuYmluZGluZ3NfcmVzdWx0
c19kaXJlY3RvcnkoKQotICAgICAgICBzZWxmLl90b29sLmZpbGVzeXN0ZW0ubWF5YmVfbWFrZV9k
aXJlY3RvcnkocmVzdWx0c19kaXJlY3RvcnkpCi0gICAgICAgIHJlc3VsdHNfZmlsZV9wYXRoID0g
c2VsZi5fdG9vbC5maWxlc3lzdGVtLmpvaW4ocmVzdWx0c19kaXJlY3RvcnksICJiaW5kaW5nc190
ZXN0X3Jlc3VsdHMuanNvbiIpCi0gICAgICAgIGFyZ3MuYXBwZW5kKCItLWpzb24tb3V0cHV0PSVz
IiAlIHJlc3VsdHNfZmlsZV9wYXRoKQotICAgICAgICBzZWxmLl90b29sLmV4ZWN1dGl2ZS5ydW5f
YW5kX3Rocm93X2lmX2ZhaWwoYXJncywgY3dkPXNlbGYuX3Rvb2wuc2NtKCkuY2hlY2tvdXRfcm9v
dCkKLQogICAgIGRlZiBfcnVuX2FwaV90ZXN0cyhzZWxmKToKICAgICAgICAgYXJncyA9IHNlbGYu
X3Rvb2wuZGVwcmVjYXRlZF9wb3J0KCkucnVuX2FwaV90ZXN0c19jb21tYW5kKHNlbGYuX29wdGlv
bnMuYnVpbGRfc3R5bGUpCiAgICAgICAgIHJlc3VsdHNfZGlyZWN0b3J5ID0gc2VsZi5fdG9vbC5w
b3J0X2ZhY3RvcnkuZ2V0KG9wdGlvbnM9c2VsZi5fb3B0aW9ucykuYXBpX3Jlc3VsdHNfZGlyZWN0
b3J5KCkKSW5kZXg6IFRvb2xzL1NjcmlwdHMvd2Via2l0cHkvdG9vbC9zdGVwcy9zdGVwc191bml0
dGVzdC5weQo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09Ci0tLSBUb29scy9TY3JpcHRzL3dlYmtpdHB5L3Rvb2wvc3RlcHMv
c3RlcHNfdW5pdHRlc3QucHkJKHJldmlzaW9uIDI2MzE4MCkKKysrIFRvb2xzL1NjcmlwdHMvd2Vi
a2l0cHkvdG9vbC9zdGVwcy9zdGVwc191bml0dGVzdC5weQkod29ya2luZyBjb3B5KQpAQCAtMjQ4
LDQ1ICsyNDgsNiBAQCBUaGlzIHBhdGNoIGRvZXMgbm90IGhhdmUgcmVsZXZhbnQgY2hhbmdlCiAg
ICAgICAgIHdpdGggc2VsZi5hc3NlcnRSYWlzZXMoU2NyaXB0RXJyb3IpOgogICAgICAgICAgICAg
T3V0cHV0Q2FwdHVyZSgpLmFzc2VydF9vdXRwdXRzKHNlbGYsIHN0ZXAucnVuLCBbe31dLCBleHBl
Y3RlZF9sb2dzPWV4cGVjdGVkX2xvZ3MpCiAKLSAgICBkZWYgdGVzdF9ydW50ZXN0c19iaW5kaW5n
cyhzZWxmKToKLSAgICAgICAgbW9ja19vcHRpb25zID0gc2VsZi5fc3RlcF9vcHRpb25zKCkKLSAg
ICAgICAgbW9ja19vcHRpb25zLm5vbl9pbnRlcmFjdGl2ZSA9IEZhbHNlCi0gICAgICAgIG1vY2tf
b3B0aW9ucy5ncm91cCA9ICJiaW5kaW5ncyIKLSAgICAgICAgc3RlcCA9IHN0ZXBzLlJ1blRlc3Rz
KE1vY2tUb29sKGxvZ19leGVjdXRpdmU9VHJ1ZSksIG1vY2tfb3B0aW9ucykKLSAgICAgICAgdG9v
bCA9IE1vY2tUb29sKGxvZ19leGVjdXRpdmU9VHJ1ZSkKLSAgICAgICAgIyBGSVhNRTogV2Ugc2hv
dWxkbid0IHVzZSBhIHJlYWwgcG9ydC1vYmplY3QgaGVyZSwgYnV0IHRoZXJlIGlzIHRvbyBtdWNo
IHRvIG1vY2sgYXQgdGhlIG1vbWVudC4KLSAgICAgICAgdG9vbC5fZGVwcmVjYXRlZF9wb3J0ID0g
RGVwcmVjYXRlZFBvcnQoKQotICAgICAgICBzdGVwID0gc3RlcHMuUnVuVGVzdHModG9vbCwgbW9j
a19vcHRpb25zKQotICAgICAgICBleHBlY3RlZF9sb2dzID0gIiIiTU9DSyBydW5fYW5kX3Rocm93
X2lmX2ZhaWw6IFsnVG9vbHMvU2NyaXB0cy9ydW4tYmluZGluZ3MtdGVzdHMnLCAnLS1qc29uLW91
dHB1dD0vdG1wL2JpbmRpbmdzX3Rlc3RfcmVzdWx0cy5qc29uJ10sIGN3ZD0vbW9jay1jaGVja291
dAotIiIiCi0gICAgICAgIE91dHB1dENhcHR1cmUoKS5hc3NlcnRfb3V0cHV0cyhzZWxmLCBzdGVw
LnJ1biwgW3t9XSwgZXhwZWN0ZWRfbG9ncz1leHBlY3RlZF9sb2dzKQotCi0gICAgZGVmIHRlc3Rf
cGF0Y2hfcmVsZXZhbnRfYmluZGluZ3Moc2VsZik6Ci0gICAgICAgIHNlbGYubWF4RGlmZiA9IE5v
bmUKLSAgICAgICAgbW9ja19vcHRpb25zID0gc2VsZi5fc3RlcF9vcHRpb25zKCkKLSAgICAgICAg
bW9ja19vcHRpb25zLmdyb3VwID0gImJpbmRpbmdzIgotICAgICAgICB0b29sID0gTW9ja1Rvb2wo
bG9nX2V4ZWN1dGl2ZT1UcnVlKQotICAgICAgICB0b29sLnNjbSgpLl9tb2NrQ2hhbmdlZEZpbGVz
ID0gWyJTb3VyY2UvV2ViQ29yZS9mZWF0dXJlcy5qc29uIiwgIlNvdXJjZS9DaGFuZ2VMb2ciXQot
ICAgICAgICAjIEZJWE1FOiBXZSBzaG91bGRuJ3QgdXNlIGEgcmVhbCBwb3J0LW9iamVjdCBoZXJl
LCBidXQgdGhlcmUgaXMgdG9vIG11Y2ggdG8gbW9jayBhdCB0aGUgbW9tZW50LgotICAgICAgICB0
b29sLl9kZXByZWNhdGVkX3BvcnQgPSBEZXByZWNhdGVkUG9ydCgpCi0gICAgICAgIHN0ZXAgPSBz
dGVwcy5DaGVja1BhdGNoUmVsZXZhbmNlKHRvb2wsIG1vY2tfb3B0aW9ucykKLSAgICAgICAgZXhw
ZWN0ZWRfbG9ncyA9ICIiIkNoZWNraW5nIHJlbGV2YW5jZSBvZiBwYXRjaAotIiIiCi0gICAgICAg
IE91dHB1dENhcHR1cmUoKS5hc3NlcnRfb3V0cHV0cyhzZWxmLCBzdGVwLnJ1biwgW3t9XSwgZXhw
ZWN0ZWRfbG9ncz1leHBlY3RlZF9sb2dzKQotCi0gICAgZGVmIHRlc3RfcGF0Y2hfbm90X3JlbGV2
YW50X2JpbmRpbmdzKHNlbGYpOgotICAgICAgICBzZWxmLm1heERpZmYgPSBOb25lCi0gICAgICAg
IG1vY2tfb3B0aW9ucyA9IHNlbGYuX3N0ZXBfb3B0aW9ucygpCi0gICAgICAgIG1vY2tfb3B0aW9u
cy5ncm91cCA9ICJiaW5kaW5ncyIKLSAgICAgICAgdG9vbCA9IE1vY2tUb29sKGxvZ19leGVjdXRp
dmU9VHJ1ZSkKLSAgICAgICAgdG9vbC5zY20oKS5fbW9ja0NoYW5nZWRGaWxlcyA9IFsiU291cmNl
L0phdmFTY3JpcHRDb3JlL01ha2VmaWxlIiwgIlNvdXJjZS9DaGFuZ2VMb2ciXQotICAgICAgICAj
IEZJWE1FOiBXZSBzaG91bGRuJ3QgdXNlIGEgcmVhbCBwb3J0LW9iamVjdCBoZXJlLCBidXQgdGhl
cmUgaXMgdG9vIG11Y2ggdG8gbW9jayBhdCB0aGUgbW9tZW50LgotICAgICAgICB0b29sLl9kZXBy
ZWNhdGVkX3BvcnQgPSBEZXByZWNhdGVkUG9ydCgpCi0gICAgICAgIHN0ZXAgPSBzdGVwcy5DaGVj
a1BhdGNoUmVsZXZhbmNlKHRvb2wsIG1vY2tfb3B0aW9ucykKLSAgICAgICAgZXhwZWN0ZWRfbG9n
cyA9ICIiIkNoZWNraW5nIHJlbGV2YW5jZSBvZiBwYXRjaAotVGhpcyBwYXRjaCBkb2VzIG5vdCBo
YXZlIHJlbGV2YW50IGNoYW5nZXMuCi0iIiIKLQogICAgIGRlZiB0ZXN0X3J1bnRlc3RzX2FwaShz
ZWxmKToKICAgICAgICAgbW9ja19vcHRpb25zID0gc2VsZi5fc3RlcF9vcHRpb25zKCkKICAgICAg
ICAgbW9ja19vcHRpb25zLm5vbl9pbnRlcmFjdGl2ZSA9IEZhbHNlCg==
</data>

          </attachment>
      

    </bug>

</bugzilla>