<?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>189396</bug_id>
          
          <creation_ts>2018-09-06 21:18:24 -0700</creation_ts>
          <short_desc>Add a standalone version of the test runtime tree map viewer, that can accept stats.json from a local test run</short_desc>
          <delta_ts>2020-09-08 09:47:29 -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>Tools / Tests</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>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Simon Fraser (smfr)">simon.fraser</reporter>
          <assigned_to name="Simon Fraser (smfr)">simon.fraser</assigned_to>
          <cc>aakash_jain</cc>
    
    <cc>ap</cc>
    
    <cc>darin</cc>
    
    <cc>dbates</cc>
    
    <cc>ews-watchlist</cc>
    
    <cc>glenn</cc>
    
    <cc>mkwst</cc>
    
    <cc>ryanhaddad</cc>
    
    <cc>simon.fraser</cc>
    
    <cc>webkit-bug-importer</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1457401</commentid>
    <comment_count>0</comment_count>
    <who name="Simon Fraser (smfr)">simon.fraser</who>
    <bug_when>2018-09-06 21:18:24 -0700</bug_when>
    <thetext>Add a standalone version of the test runtime tree map viewer, that can accept stats.json from a local test run</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1457402</commentid>
    <comment_count>1</comment_count>
      <attachid>349111</attachid>
    <who name="Simon Fraser (smfr)">simon.fraser</who>
    <bug_when>2018-09-06 21:20:02 -0700</bug_when>
    <thetext>Created attachment 349111
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1457403</commentid>
    <comment_count>2</comment_count>
    <who name="Simon Fraser (smfr)">simon.fraser</who>
    <bug_when>2018-09-06 21:20:54 -0700</bug_when>
    <thetext>This should probably live in some other directory. Maybe it should be bundled in layout_test_results and linked from results.html.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1457502</commentid>
    <comment_count>3</comment_count>
      <attachid>349111</attachid>
    <who name="Alexey Proskuryakov">ap</who>
    <bug_when>2018-09-07 09:16:55 -0700</bug_when>
    <thetext>Comment on attachment 349111
Patch

View in context: https://bugs.webkit.org/attachment.cgi?id=349111&amp;action=review

&gt; Tools/ChangeLog:12
&gt; +        This should probably live in some other directory. Maybe it should be bundled in layout_test_results
&gt; +        and linked from results.html.

How about somewhere on build.webkit.org, and having a link to it from &quot;Tests and Performance&quot; section of the landing page?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1457569</commentid>
    <comment_count>4</comment_count>
    <who name="Simon Fraser (smfr)">simon.fraser</who>
    <bug_when>2018-09-07 11:12:37 -0700</bug_when>
    <thetext>I want someone to be able to see the tree map for their local results, so the page would have to be able to load a local stats.json (and probably the results.json in future). A single click from results.html would be ideal, rather than forcing someone to drag and drop the json file.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1457662</commentid>
    <comment_count>5</comment_count>
    <who name="Alexey Proskuryakov">ap</who>
    <bug_when>2018-09-07 14:02:39 -0700</bug_when>
    <thetext>It that something that you want to figure out before the patch lands? Not sure if it’s meant for review if so. 

Given its current behavior though, I think that changes in comment 3 may be appropriate before landing.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1457828</commentid>
    <comment_count>6</comment_count>
      <attachid>349227</attachid>
    <who name="Simon Fraser (smfr)">simon.fraser</who>
    <bug_when>2018-09-07 19:01:52 -0700</bug_when>
    <thetext>Created attachment 349227
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1685297</commentid>
    <comment_count>7</comment_count>
    <who name="Simon Fraser (smfr)">simon.fraser</who>
    <bug_when>2020-09-03 09:46:19 -0700</bug_when>
    <thetext>Bump.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1685304</commentid>
    <comment_count>8</comment_count>
    <who name="Simon Fraser (smfr)">simon.fraser</who>
    <bug_when>2020-09-03 09:56:22 -0700</bug_when>
    <thetext>I think we should put this file into fast/harness and include it in layout-test-results, with a link from results.html.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1685426</commentid>
    <comment_count>9</comment_count>
      <attachid>407909</attachid>
    <who name="Simon Fraser (smfr)">simon.fraser</who>
    <bug_when>2020-09-03 14:15:01 -0700</bug_when>
    <thetext>Created attachment 407909
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1686588</commentid>
    <comment_count>10</comment_count>
    <who name="EWS">ews-feeder</who>
    <bug_when>2020-09-08 09:46:28 -0700</bug_when>
    <thetext>Committed r266727: &lt;https://trac.webkit.org/changeset/266727&gt;

All reviewed patches have been landed. Closing bug and clearing flags on attachment 407909.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1686590</commentid>
    <comment_count>11</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2020-09-08 09:47:29 -0700</bug_when>
    <thetext>&lt;rdar://problem/68513459&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>349111</attachid>
            <date>2018-09-06 21:20:02 -0700</date>
            <delta_ts>2020-09-03 14:15:00 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-189396-20180906212001.patch</filename>
            <type>text/plain</type>
            <size>20174</size>
            <attacher name="Simon Fraser (smfr)">simon.fraser</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjM1Nzc0CmRpZmYgLS1naXQgYS9Ub29scy9DaGFuZ2VMb2cg
Yi9Ub29scy9DaGFuZ2VMb2cKaW5kZXggMDUxYTQwMmQwODA3MTZlNmI5ZGUzYWFkZGRmNWNjNGY4
M2QxMjQyNi4uODhmNzZhNzMxZjhmMzIwNWNhODcyZDIxZGY4MTZkMTRmZTE3NGYwZSAxMDA2NDQK
LS0tIGEvVG9vbHMvQ2hhbmdlTG9nCisrKyBiL1Rvb2xzL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE4
IEBACisyMDE4LTA5LTA2ICBTaW1vbiBGcmFzZXIgIDxzaW1vbi5mcmFzZXJAYXBwbGUuY29tPgor
CisgICAgICAgIEFkZCBhIHN0YW5kYWxvbmUgdmVyc2lvbiBvZiB0aGUgdGVzdCBydW50aW1lIHRy
ZWUgbWFwIHZpZXdlciwgdGhhdCBjYW4gYWNjZXB0IHN0YXRzLmpzb24gZnJvbSBhIGxvY2FsIHRl
c3QgcnVuCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0x
ODkzOTYKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKyAgICAgICAgCisg
ICAgICAgIEFkZCBhIHZlcnNpb24gb2YgVG9vbHMvVGVzdFJlc3VsdFNlcnZlci9zdGF0aWMtZGFz
aGJvYXJkcy9zdGFuZGFsb25lLXRyZWVtYXAuaHRtbCB0aGF0IGNhbiBpbmdlc3QKKyAgICAgICAg
c3RhdHMuanNvbiBmcm9tIGEgbG9jYWwgdGVzdCBydW4sIHRvIG1ha2UgaXQgZWFzeSB0byBmaW5k
IHNsb3cgdGVzdHMgbG9jYWxseS4KKyAgICAgICAgCisgICAgICAgIFRoaXMgc2hvdWxkIHByb2Jh
Ymx5IGxpdmUgaW4gc29tZSBvdGhlciBkaXJlY3RvcnkuIE1heWJlIGl0IHNob3VsZCBiZSBidW5k
bGVkIGluIGxheW91dF90ZXN0X3Jlc3VsdHMKKyAgICAgICAgYW5kIGxpbmtlZCBmcm9tIHJlc3Vs
dHMuaHRtbC4KKworICAgICAgICAqIFRlc3RSZXN1bHRTZXJ2ZXIvc3RhdGljLWRhc2hib2FyZHMv
c3RhbmRhbG9uZS10cmVlbWFwLmh0bWw6IEFkZGVkLgorCiAyMDE4LTA5LTA2ICBaYWxhbiBCdWp0
YXMgIDx6YWxhbkBhcHBsZS5jb20+CiAKICAgICAgICAgW0xGQ10gQWRkIHN1cHBvcnQgZm9yIG1p
bi9tYXgtaGVpZ2h0IHBlcmNlbnRhZ2UgdmFsdWVzLgpkaWZmIC0tZ2l0IGEvVG9vbHMvVGVzdFJl
c3VsdFNlcnZlci9zdGF0aWMtZGFzaGJvYXJkcy9zdGFuZGFsb25lLXRyZWVtYXAuaHRtbCBiL1Rv
b2xzL1Rlc3RSZXN1bHRTZXJ2ZXIvc3RhdGljLWRhc2hib2FyZHMvc3RhbmRhbG9uZS10cmVlbWFw
Lmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMC4uY2ZiOWRhNjEwNzQzMmZiZjQ2ZjBkNjU5OWFkZTMwN2Q3MDEyMzNj
MwotLS0gL2Rldi9udWxsCisrKyBiL1Rvb2xzL1Rlc3RSZXN1bHRTZXJ2ZXIvc3RhdGljLWRhc2hi
b2FyZHMvc3RhbmRhbG9uZS10cmVlbWFwLmh0bWwKQEAgLTAsMCArMSw1NzEgQEAKKzwhLS0gCitD
b3B5cmlnaHQgKEMpIDIwMTggQXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorQ29weXJp
Z2h0IChDKSAyMDExIEdvb2dsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisKK1JlZGlzdHJp
YnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91
dAorbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2lu
ZyBjb25kaXRpb25zCithcmUgbWV0OgorMS4gUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2Rl
IG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAgIG5vdGljZSwgdGhpcyBsaXN0IG9m
IGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKzIuIFJlZGlzdHJpYnV0
aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0Cisg
ICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2Ns
YWltZXIgaW4gdGhlCisgICBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJv
dmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgorCitUSElTIFNPRlRXQVJFIElTIFBST1ZJREVE
IEJZIEFQUExFIElOQy4gYGBBUyBJUycnIEFORCBBTlkKK0VYUFJFU1MgT1IgSU1QTElFRCBXQVJS
QU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgVEhFCitJTVBMSUVEIFdBUlJB
TlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIKK1BV
UlBPU0UgQVJFIERJU0NMQUlNRUQuICBJTiBOTyBFVkVOVCBTSEFMTCBBUFBMRSBJTkMuIE9SCitD
T05UUklCVVRPUlMgQkUgTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRB
TCwgU1BFQ0lBTCwKK0VYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJ
TkcsIEJVVCBOT1QgTElNSVRFRCBUTywKK1BST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMg
T1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLCBEQVRBLCBPUgorUFJPRklUUzsgT1IgQlVTSU5FU1Mg
SU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZIFRIRU9SWQorT0YgTElBQklM
SVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUCisoSU5D
TFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9G
IFRIRSBVU0UKK09GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lC
SUxJVFkgT0YgU1VDSCBEQU1BR0UuIAorLS0+Cis8IURPQ1RZUEUgaHRtbD4KKzxodG1sPgorPHRp
dGxlPlRlc3QgUnVudGltZXM8L3RpdGxlPgorPHN0eWxlPgorICAgIGh0bWwgeworICAgICAgICBo
ZWlnaHQ6IDEwMCU7CisgICAgfQorCisgICAgYm9keSB7CisgICAgICAgIGhlaWdodDogMTAwJTsK
KyAgICAgICAgZGlzcGxheTogZmxleDsKKyAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjsK
KyAgICAgICAgZm9udC1mYW1pbHk6ICJIZWx2ZXRpY2EgTmV1ZSI7CisgICAgfQorCisgICAgdGQ6
Zmlyc3QtY2hpbGQgeworICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0OworICAgIH0KKworICAgIHRk
IHsKKyAgICAgICAgdGV4dC1hbGlnbjogcmlnaHQ7CisgICAgfQorICAgIAorICAgICNoZWFkZXIt
Y29udGFpbmVyIHsKKyAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlOworICAgICAgICBoZWlnaHQ6
IDRyZW07CisgICAgfQorICAgIAorICAgICNoZWFkZXItY29udGFpbmVyIGEgeworICAgICAgICBt
YXJnaW4tbGVmdDogMC41ZW0KKyAgICB9CisKKyAgICAjaGVhZGVyLWNvbnRhaW5lciBwIHsKKyAg
ICAgICAgZm9udC1zaXplOiBzbWFsbGVyOworICAgIH0KKworICAgICNtYXAgeworICAgICAgICBw
b3NpdGlvbjogcmVsYXRpdmU7CisgICAgICAgIGZsZXgtZ3JvdzogMTsKKyAgICAgICAgY3Vyc29y
OiBwb2ludGVyOworICAgICAgICAtd2Via2l0LXVzZXItc2VsZWN0OiBub25lOworICAgIH0KKwor
ICAgIC8qIEZJWE1FOiB0aGlzIGlzIHVudXNlZC4gKi8KKyAgICAjZm9jdXNlZC1sZWFmIHsKKyAg
ICAgICAgZGlzcGxheTogZmxleDsKKyAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjsKKyAg
ICB9CisKKyAgICAjZm9jdXNlZC1sZWFmID4gLmV4dHJhLWRvbSB7CisgICAgICAgIGZsZXgtZ3Jv
dzogMTsKKyAgICB9CisKKyAgICAuZXh0cmEtZG9tIHsKKyAgICAgICAgZGlzcGxheTogbm9uZTsK
KyAgICAgICAgYm9yZGVyOiBub25lOworICAgICAgICBib3JkZXItdG9wOiAxcHggZGFzaGVkOwor
ICAgICAgICBwYWRkaW5nOiA0cHg7CisgICAgICAgIG1hcmdpbjogMDsKKyAgICAgICAgb3ZlcmZs
b3c6IGF1dG87CisgICAgICAgIGN1cnNvcjogYXV0bzsKKyAgICAgICAgLXdlYmtpdC11c2VyLXNl
bGVjdDogdGV4dDsKKyAgICB9CisKKyAgICAuZXJyb3IgeworICAgICAgICBjb2xvcjogcmVkOwor
ICAgICAgICBmb250LXN0eWxlOiBpdGFsaWM7CisgICAgfQorCisgICAgI2Ryb3BUYXJnZXQgewor
ICAgICAgICBmb250LXNpemU6IDEwcHQ7CisgICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkOworICAg
ICAgICBjb2xvcjogIzg4ODsKKyAgICAgICAgcG9zaXRpb246IGFic29sdXRlOworICAgICAgICB0
b3A6IDRweDsKKyAgICAgICAgcmlnaHQ6IDRweDsKKyAgICAgICAgYm9yZGVyOiAycHggc29saWQg
cmdiYSgwLCAwLCAwLCAwLjMpOworICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsIDAs
IDAsIDAuMSk7CisgICAgICAgIHBhZGRpbmc6IDEwcHg7CisgICAgICAgIGJvcmRlci1yYWRpdXM6
IDEwcHg7CisgICAgfQorCisgICAgI2Ryb3BUYXJnZXQuZHJhZ092ZXIgeworICAgICAgICBib3Jk
ZXI6IDJweCBzb2xpZCByZ2JhKDAsIDAsIDAsIDAuMSk7CisgICAgICAgIGJhY2tncm91bmQtY29s
b3I6IHJnYmEoMCwgMCwgMCwgMC41KTsKKyAgICAgICAgY29sb3I6ICNkZGQ7CisgICAgfQorCisg
ICAgLndlYnRyZWVtYXAtbm9kZSB7CisgICAgICAvKiBSZXF1aXJlZCBhdHRyaWJ1dGVzLiAqLwor
ICAgICAgcG9zaXRpb246IGFic29sdXRlOworICAgICAgb3ZlcmZsb3c6IGhpZGRlbjsgICAvKiBU
byBoaWRlIG92ZXJsb25nIGNhcHRpb25zLiAqLworICAgICAgYmFja2dyb3VuZDogd2hpdGU7ICAv
KiBOb2RlcyBtdXN0IGJlIG9wYXF1ZSBmb3IgekluZGV4IGxheWVyaW5nLiAqLworICAgICAgYm9y
ZGVyOiBzb2xpZCAxcHggYmxhY2s7ICAvKiBDYWxjdWxhdGlvbnMgYXNzdW1lIDFweCBib3JkZXIu
ICovCisKKyAgICAgIC8qIE9wdGlvbmFsOiBDU1MgYW5pbWF0aW9uLiAqLworICAgICAgdHJhbnNp
dGlvbjogdG9wICAgIDAuM3MsCisgICAgICAgICAgICAgICAgICBsZWZ0ICAgMC4zcywKKyAgICAg
ICAgICAgICAgICAgIHdpZHRoICAwLjNzLAorICAgICAgICAgICAgICAgICAgaGVpZ2h0IDAuM3M7
CisgICAgfQorCisgICAgLyogT3B0aW9uYWw6IGhpZ2hsaWdodCBub2RlcyBvbiBtb3VzZW92ZXIu
ICovCisgICAgLndlYnRyZWVtYXAtbm9kZTpob3ZlciB7CisgICAgICBiYWNrZ3JvdW5kOiAjZWVl
OworICAgIH0KKworICAgIC8qIE9wdGlvbmFsOiBEaWZmZXJlbnQgYm9yZGVycyBkZXBlbmRpbmcg
b24gbGV2ZWwuICovCisgICAgLndlYnRyZWVtYXAtbGV2ZWwwIHsKKyAgICAgIGJvcmRlcjogc29s
aWQgMXB4ICM0NDQ7CisgICAgfQorICAgIC53ZWJ0cmVlbWFwLWxldmVsMSB7CisgICAgICBib3Jk
ZXI6IHNvbGlkIDFweCAjNjY2OworICAgIH0KKyAgICAud2VidHJlZW1hcC1sZXZlbDIgeworICAg
ICAgYm9yZGVyOiBzb2xpZCAxcHggIzg4ODsKKyAgICB9CisgICAgLndlYnRyZWVtYXAtbGV2ZWwz
IHsKKyAgICAgIGJvcmRlcjogc29saWQgMXB4ICNhYWE7CisgICAgfQorICAgIC53ZWJ0cmVlbWFw
LWxldmVsNCB7CisgICAgICBib3JkZXI6IHNvbGlkIDFweCAjY2NjOworICAgIH0KKworICAgIC8q
IE9wdGlvbmFsOiBzdHlsaW5nIG9uIG5vZGUgY2FwdGlvbnMuICovCisgICAgLndlYnRyZWVtYXAt
Y2FwdGlvbiB7CisgICAgICBmb250LWZhbWlseTogc2Fucy1zZXJpZjsKKyAgICAgIGZvbnQtc2l6
ZTogMTFweDsKKyAgICAgIHBhZGRpbmc6IDJweDsKKyAgICAgIHRleHQtYWxpZ246IGNlbnRlcjsK
KyAgICB9Cis8L3N0eWxlPgorPHNjcmlwdD4KKworY2xhc3MgV2ViVHJlZU1hcCB7CisgICAgLy8g
U2l6ZSBvZiBib3JkZXIgYXJvdW5kIG5vZGVzLgorICAgIC8vIFdlIGNvdWxkIHN1cHBvcnQgYXJi
aXRyYXJ5IGJvcmRlcnMgdXNpbmcgZ2V0Q29tcHV0ZWRTdHlsZSgpLCBidXQgSSBhbQorICAgIC8v
IHNrZXB0aWNhbCB0aGUgZXh0cmEgY29tcGxleGl0eSAoYW5kIHBlcmZvcm1hbmNlIGhpdCkgaXMg
d29ydGggaXQuCisgICAgc3RhdGljIGdldCBib3JkZXJXaWR0aCgpCisgICAgeworICAgICAgICBy
ZXR1cm4gMTsKKyAgICB9CisKKyAgICAvLyBQYWRkaW5nIGFyb3VuZCBjb250ZW50cy4KKyAgICAv
LyBUT0RPOiBkbyB0aGlzIHdpdGggYSBuZXN0ZWQgZGl2IHRvIGFsbG93IGl0IHRvIGJlIENTUy1z
dHlsZWFibGUuCisgICAgc3RhdGljIGdldCBwYWRkaW5nKCkKKyAgICB7CisgICAgICAgIHJldHVy
biAxOworICAgIH0KKworICAgIGNvbnN0cnVjdG9yKHRyZWVEYXRhLCBjb250YWluZXJFbGVtZW50
KQorICAgIHsKKyAgICAgICAgdGhpcy5fZm9jdXNlZE5vZGUgPSBudWxsOworCisgICAgICAgIGxl
dCBzdHlsZSA9IGdldENvbXB1dGVkU3R5bGUoY29udGFpbmVyRWxlbWVudCwgbnVsbCk7CisgICAg
ICAgIGxldCB3aWR0aCA9IHBhcnNlSW50KHN0eWxlLndpZHRoKTsKKyAgICAgICAgbGV0IGhlaWdo
dCA9IHBhcnNlSW50KHN0eWxlLmhlaWdodCk7CisKKyAgICAgICAgdGhpcy5tYWtlRG9tKHRyZWVE
YXRhLCAwKTsKKyAgICAgICAgY29udGFpbmVyRWxlbWVudC5hcHBlbmRDaGlsZCh0cmVlRGF0YS5k
b20pOworICAgICAgICB0aGlzLnBvc2l0aW9uKHRyZWVEYXRhLmRvbSwgMCwgMCwgd2lkdGgsIGhl
aWdodCk7CisgICAgICAgIHRoaXMubGF5b3V0KHRyZWVEYXRhLCAwLCB3aWR0aCwgaGVpZ2h0KTsK
KyAgICB9CisKKyAgICBmb2N1cyh0cmVlKQorICAgIHsKKyAgICAgICAgdGhpcy5fZm9jdXNlZE5v
ZGUgPSB0cmVlOworCisgICAgICAgIC8vIEhpZGUgYWxsIHZpc2libGUgc2libGluZ3Mgb2YgYWxs
IG91ciBhbmNlc3RvcnMgYnkgbG93ZXJpbmcgdGhlbS4KKyAgICAgICAgbGV0IGxldmVsID0gMDsK
KyAgICAgICAgbGV0IHJvb3QgPSB0cmVlOworICAgICAgICB3aGlsZSAocm9vdC5wYXJlbnQpIHsK
KyAgICAgICAgICAgIHJvb3QgPSByb290LnBhcmVudDsKKyAgICAgICAgICAgIGxldmVsICs9IDE7
CisgICAgICAgICAgICBmb3IgKGxldCBpID0gMCwgc2libGluZzsgc2libGluZyA9IHJvb3QuY2hp
bGRyZW5baV07ICsraSkgeworICAgICAgICAgICAgICAgIGlmIChzaWJsaW5nLmRvbSkKKyAgICAg
ICAgICAgICAgICAgICAgc2libGluZy5kb20uc3R5bGUuekluZGV4ID0gMDsKKyAgICAgICAgICAg
IH0KKyAgICAgICAgfQorICAgICAgICBsZXQgd2lkdGggPSByb290LmRvbS5vZmZzZXRXaWR0aDsK
KyAgICAgICAgbGV0IGhlaWdodCA9IHJvb3QuZG9tLm9mZnNldEhlaWdodDsKKyAgICAgICAgLy8g
VW5oaWRlIChyYWlzZSkgYW5kIG1heGltaXplIHVzIGFuZCBvdXIgYW5jZXN0b3JzLgorICAgICAg
ICBmb3IgKGxldCB0ID0gdHJlZTsgdC5wYXJlbnQ7IHQgPSB0LnBhcmVudCkgeworICAgICAgICAg
ICAgLy8gU2hpZnQgb2ZmIGJ5IGJvcmRlciBzbyB3ZSBkb24ndCBnZXQgbmVzdGVkIGJvcmRlcnMu
CisgICAgICAgICAgICAvLyBUT0RPOiBhY3R1YWxseSBtYWtlIG5lc3RlZCBib3JkZXJzIHdvcmsg
KG5lZWQgdG8gYWRqdXN0IHdpZHRoL2hlaWdodCkuCisgICAgICAgICAgICB0aGlzLnBvc2l0aW9u
KHQuZG9tLCAtV2ViVHJlZU1hcC5ib3JkZXJXaWR0aCwgLVdlYlRyZWVNYXAuYm9yZGVyV2lkdGgs
IHdpZHRoLCBoZWlnaHQpOworICAgICAgICAgICAgdC5kb20uc3R5bGUuekluZGV4ID0gMTsKKyAg
ICAgICAgfQorICAgICAgICAvLyBBbmQgbGF5b3V0IGludG8gdGhlIHRvcG1vc3QgYm94LgorICAg
ICAgICB0aGlzLmxheW91dCh0cmVlLCBsZXZlbCwgd2lkdGgsIGhlaWdodCk7CisgICAgICAgIHRo
aXMuaGFuZGxlRm9jdXModHJlZSk7CisgICAgfQorICAgIAorICAgIGhhbmRsZUZvY3VzKHRyZWUp
CisgICAgeworICAgICAgICAvLyBGb3IgZGVsZWdhdGlvbi4KKyAgICB9CisKKyAgICBtYWtlRG9t
KHRyZWUsIGxldmVsKQorICAgIHsKKyAgICAgICAgbGV0IGRvbSA9IGRvY3VtZW50LmNyZWF0ZUVs
ZW1lbnQoJ2RpdicpOworICAgICAgICBkb20uc3R5bGUuekluZGV4ID0gMTsKKyAgICAgICAgZG9t
LmNsYXNzTmFtZSA9ICd3ZWJ0cmVlbWFwLW5vZGUgd2VidHJlZW1hcC1sZXZlbCcgKyBNYXRoLm1p
bihsZXZlbCwgNCk7CisKKyAgICAgICAgZG9tLmFkZEV2ZW50TGlzdGVuZXIoJ21vdXNlZG93bics
IGUgPT4geworICAgICAgICAgICAgaWYgKGUuYnV0dG9uID09IDApIHsKKyAgICAgICAgICAgICAg
ICBpZiAodGhpcy5fZm9jdXNlZE5vZGUgJiYgdHJlZSA9PSB0aGlzLl9mb2N1c2VkTm9kZSAmJiB0
aGlzLl9mb2N1c2VkTm9kZS5wYXJlbnQpCisgICAgICAgICAgICAgICAgICAgIHRoaXMuZm9jdXMo
dGhpcy5fZm9jdXNlZE5vZGUucGFyZW50KTsKKyAgICAgICAgICAgICAgICBlbHNlCisgICAgICAg
ICAgICAgICAgICAgIHRoaXMuZm9jdXModHJlZSk7CisgICAgICAgICAgICB9CisgICAgICAgICAg
ICBlLnN0b3BQcm9wYWdhdGlvbigpOworICAgICAgICAgICAgcmV0dXJuIHRydWU7CisgICAgICAg
IH0sIGZhbHNlKTsKKworICAgICAgICBsZXQgY2FwdGlvbiA9IGRvY3VtZW50LmNyZWF0ZUVsZW1l
bnQoJ2RpdicpOworICAgICAgICBjYXB0aW9uLmNsYXNzTmFtZSA9ICd3ZWJ0cmVlbWFwLWNhcHRp
b24nOworICAgICAgICBjYXB0aW9uLmlubmVySFRNTCA9IHRyZWUubmFtZTsKKyAgICAgICAgZG9t
LmFwcGVuZENoaWxkKGNhcHRpb24pOworCisgICAgICAgIHRyZWUuZG9tID0gZG9tOworICAgICAg
ICByZXR1cm4gZG9tOworICAgIH0KKworICAgIHBvc2l0aW9uKGRvbSwgeCwgeSwgd2lkdGgsIGhl
aWdodCkKKyAgICB7CisgICAgICAgIC8vIENTUyB3aWR0aC9oZWlnaHQgZG9lcyBub3QgaW5jbHVk
ZSBib3JkZXIuCisgICAgICAgIHdpZHRoIC09IFdlYlRyZWVNYXAuYm9yZGVyV2lkdGggKiAyOwor
ICAgICAgICBoZWlnaHQgLT0gV2ViVHJlZU1hcC5ib3JkZXJXaWR0aCAqIDI7CisKKyAgICAgICAg
ZG9tLnN0eWxlLmxlZnQgICA9IHggKyAncHgnOworICAgICAgICBkb20uc3R5bGUudG9wICAgID0g
eSArICdweCc7CisgICAgICAgIGRvbS5zdHlsZS53aWR0aCAgPSBNYXRoLm1heCh3aWR0aCwgMCkg
KyAncHgnOworICAgICAgICBkb20uc3R5bGUuaGVpZ2h0ID0gTWF0aC5tYXgoaGVpZ2h0LCAwKSAr
ICdweCc7CisgICAgfQorCisgICAgLy8gR2l2ZW4gYSBsaXN0IG9mIHJlY3RhbmdsZXMgfG5vZGVz
fCwgdGhlIDEtZCBzcGFjZSBhdmFpbGFibGUKKyAgICAvLyB8c3BhY2V8LCBhbmQgYSBzdGFydGlu
ZyByZWN0YW5nbGUgaW5kZXggfHN0YXJ0fCwgY29tcHV0ZSBhbiBzcGFuIG9mCisgICAgLy8gcmVj
dGFuZ2xlcyB0aGF0IG9wdGltaXplcyBhIHBsZWFzYW50IGFzcGVjdCByYXRpby4KKyAgICAvLwor
ICAgIC8vIFJldHVybnMgW2VuZCwgc3VtXSwgd2hlcmUgZW5kIGlzIG9uZSBwYXN0IHRoZSBsYXN0
IHJlY3RhbmdsZSBhbmQgc3VtIGlzIHRoZQorICAgIC8vIDItZCBzdW0gb2YgdGhlIHJlY3Rhbmds
ZXMnIGFyZWFzLgorICAgIHNlbGVjdFNwYW4obm9kZXMsIHNwYWNlLCBzdGFydCkKKyAgICB7Cisg
ICAgICAgIC8vIEFkZCByZWN0YW5nbGUgb25lIGJ5IG9uZSwgc3RvcHBpbmcgd2hlbiBhc3BlY3Qg
cmF0aW9zIGJlZ2luIHRvIGdvCisgICAgICAgIC8vIGJhZC4gUmVzdWx0IGlzIFtzdGFydCxlbmQp
IGNvdmVyaW5nIHRoZSBiZXN0IHJ1biBmb3IgdGhpcyBzcGFuLgorICAgICAgICAvLyBodHRwOi8v
c2Nob2xhci5nb29nbGUuY29tL3NjaG9sYXI/Y2x1c3Rlcj01OTcyNTEyMTA3ODQ1NjE1NDc0Cisg
ICAgICAgIGxldCBub2RlID0gbm9kZXNbc3RhcnRdOworICAgICAgICBsZXQgcm1pbiA9IG5vZGUu
ZGF0YVsnJGFyZWEnXTsgIC8vIFNtYWxsZXN0IHNlZW4gY2hpbGQgc28gZmFyLgorICAgICAgICBs
ZXQgcm1heCA9IHJtaW47ICAgICAgICAgICAgICAgIC8vIExhcmdlc3QgY2hpbGQuCisgICAgICAg
IGxldCByc3VtID0gMDsgICAgICAgICAgICAgICAgICAgLy8gU3VtIG9mIGNoaWxkcmVuIGluIHRo
aXMgc3Bhbi4KKyAgICAgICAgbGV0IGxhc3Rfc2NvcmUgPSAwOyAgICAgICAgICAgICAvLyBCZXN0
IHNjb3JlIHlldCBmb3VuZC4KKyAgICAgICAgbGV0IGVuZDsKKyAgICAgICAgZm9yIChlbmQgPSBz
dGFydDsgbm9kZSA9IG5vZGVzW2VuZF07ICsrZW5kKSB7CisgICAgICAgICAgICBsZXQgc2l6ZSA9
IG5vZGUuZGF0YVsnJGFyZWEnXTsKKyAgICAgICAgICAgIGlmIChzaXplIDwgcm1pbikKKyAgICAg
ICAgICAgICAgICBybWluID0gc2l6ZTsKKyAgICAgICAgICAgIGlmIChzaXplID4gcm1heCkKKyAg
ICAgICAgICAgICAgICBybWF4ID0gc2l6ZTsKKyAgICAgICAgICAgIHJzdW0gKz0gc2l6ZTsKKwor
ICAgICAgICAgICAgLy8gVGhpcyBmb3JtdWxhIGlzIGZyb20gdGhlIHBhcGVyLCBidXQgeW91IGNh
biBlYXNpbHkgcHJvdmUgdG8KKyAgICAgICAgICAgIC8vIHlvdXJzZWxmIGl0J3MgdGFraW5nIHRo
ZSBsYXJnZXIgb2YgdGhlIHgveSBhc3BlY3QgcmF0aW8gb3IgdGhlCisgICAgICAgICAgICAvLyB5
L3ggYXNwZWN0IHJhdGlvLiBUaGUgYWRkaXRpb25hbCBtYWdpYyBmdWRnZSBjb25zdGFudCBvZiA1
CisgICAgICAgICAgICAvLyBtYWtlcyB1cyBwcmVmZXIgd2lkZXIgcmVjdGFuZ2xlcyB0byB0YWxs
ZXIgb25lcy4KKyAgICAgICAgICAgIGxldCBzY29yZSA9IE1hdGgubWF4KDUgKiBzcGFjZSAqIHNw
YWNlICogcm1heCAvIChyc3VtICogcnN1bSksIDEgKiByc3VtICogcnN1bSAvIChzcGFjZSAqIHNw
YWNlICogcm1pbikpOworICAgICAgICAgICAgaWYgKGxhc3Rfc2NvcmUgJiYgc2NvcmUgPiBsYXN0
X3Njb3JlKSB7CisgICAgICAgICAgICAgICAgcnN1bSAtPSBzaXplOyAgICAvLyBVbmRvIHNpemUg
YWRkaXRpb24gZnJvbSBqdXN0IGFib3ZlLgorICAgICAgICAgICAgICAgIGJyZWFrOworICAgICAg
ICAgICAgfQorICAgICAgICAgICAgbGFzdF9zY29yZSA9IHNjb3JlOworICAgICAgICB9CisgICAg
ICAgIHJldHVybiBbZW5kLCByc3VtXTsKKyAgICB9CisKKyAgICBsYXlvdXQodHJlZSwgbGV2ZWws
IHdpZHRoLCBoZWlnaHQpCisgICAgeworICAgICAgICBpZiAoISgnY2hpbGRyZW4nIGluIHRyZWUp
KQorICAgICAgICAgICAgcmV0dXJuOworCisgICAgICAgIGxldCB0b3RhbCA9IHRyZWUuZGF0YVsn
JGFyZWEnXTsKKworICAgICAgICAvLyBYWFggd2h5IGRvIEkgbmVlZCBhbiBleHRyYSAtMS8tMiBo
ZXJlIGZvciB3aWR0aC9oZWlnaHQgdG8gbG9vayByaWdodD8KKyAgICAgICAgbGV0IHgxID0gMCwg
eTEgPSAwLCB4MiA9IHdpZHRoIC0gMSwgeTIgPSBoZWlnaHQgLSAyOworICAgICAgICB4MSArPSBX
ZWJUcmVlTWFwLnBhZGRpbmc7IHkxICs9IFdlYlRyZWVNYXAucGFkZGluZzsKKyAgICAgICAgeDIg
LT0gV2ViVHJlZU1hcC5wYWRkaW5nOyB5MiAtPSBXZWJUcmVlTWFwLnBhZGRpbmc7CisgICAgICAg
IHkxICs9IDE0OyAvLyBYWFggZ2V0IGZpcnN0IGNoaWxkIGhlaWdodCBmb3IgY2FwdGlvbiBzcGFj
aW5nCisKKyAgICAgICAgbGV0IHBpeGVsc190b191bml0cyA9IE1hdGguc3FydCh0b3RhbCAvICgo
eDIgLSB4MSkgKiAoeTIgLSB5MSkpKTsKKworICAgICAgICBmb3IgKGxldCBzdGFydCA9IDAsIGNo
aWxkOyBjaGlsZCA9IHRyZWUuY2hpbGRyZW5bc3RhcnRdOyArK3N0YXJ0KSB7CisgICAgICAgICAg
ICBpZiAoeDIgLSB4MSA8IDYwIHx8IHkyIC0geTEgPCA0MCkgeworICAgICAgICAgICAgICAgIGlm
IChjaGlsZC5kb20pIHsKKyAgICAgICAgICAgICAgICAgICAgY2hpbGQuZG9tLnN0eWxlLnpJbmRl
eCA9IDA7CisgICAgICAgICAgICAgICAgICAgIHRoaXMucG9zaXRpb24oY2hpbGQuZG9tLCAtMiwg
LTIsIDAsIDApOworICAgICAgICAgICAgICAgIH0KKyAgICAgICAgICAgICAgICBjb250aW51ZTsK
KyAgICAgICAgICAgIH0KKworICAgICAgICAgICAgLy8gSW4gdGhlb3J5IHdlIGNhbiBkeW5hbWlj
YWxseSBkZWNpZGUgd2hldGhlciB0byBzcGxpdCBpbiB4IG9yIHkgYmFzZWQKKyAgICAgICAgICAg
IC8vIG9uIGFzcGVjdCByYXRpby4gSW4gcHJhY3RpY2UsIGNoYW5naW5nIHNwbGl0IGRpcmVjdGlv
biB3aXRoIHRoaXMKKyAgICAgICAgICAgIC8vIGxheW91dCBkb2Vzbid0IGxvb2sgdmVyeSBnb29k
LgorICAgICAgICAgICAgLy8gICB2YXIgeXNwbGl0ID0gKHkyIC0geTEpID4gKHgyIC0geDEpOwor
ICAgICAgICAgICAgbGV0IHlzcGxpdCA9IHRydWU7CisKKyAgICAgICAgICAgIGxldCBzcGFjZTsg
IC8vIFNwYWNlIGF2YWlsYWJsZSBhbG9uZyBsYXlvdXQgYXhpcy4KKyAgICAgICAgICAgIGlmICh5
c3BsaXQpCisgICAgICAgICAgICAgICAgc3BhY2UgPSAoeTIgLSB5MSkgKiBwaXhlbHNfdG9fdW5p
dHM7CisgICAgICAgICAgICBlbHNlCisgICAgICAgICAgICAgICAgc3BhY2UgPSAoeDIgLSB4MSkg
KiBwaXhlbHNfdG9fdW5pdHM7CisKKyAgICAgICAgICAgIGxldCBzcGFuID0gdGhpcy5zZWxlY3RT
cGFuKHRyZWUuY2hpbGRyZW4sIHNwYWNlLCBzdGFydCk7CisgICAgICAgICAgICBsZXQgZW5kID0g
c3BhblswXTsKKyAgICAgICAgICAgIGxldCByc3VtID0gc3BhblsxXTsKKworICAgICAgICAgICAg
Ly8gTm93IHRoYXQgd2UndmUgc2VsZWN0ZWQgYSBzcGFuLCBsYXkgb3V0IHJlY3RhbmdsZXMgW3N0
YXJ0LGVuZCkgaW4gb3VyCisgICAgICAgICAgICAvLyBhdmFpbGFibGUgc3BhY2UuCisgICAgICAg
ICAgICBsZXQgeCA9IHgxOworICAgICAgICAgICAgbGV0IHkgPSB5MTsKKyAgICAgICAgICAgIGZv
ciAobGV0IGkgPSBzdGFydDsgaSA8IGVuZDsgKytpKSB7CisgICAgICAgICAgICAgICAgY2hpbGQg
PSB0cmVlLmNoaWxkcmVuW2ldOworICAgICAgICAgICAgICAgIGlmICghY2hpbGQuZG9tKSB7Cisg
ICAgICAgICAgICAgICAgICAgIGNoaWxkLnBhcmVudCA9IHRyZWU7CisgICAgICAgICAgICAgICAg
ICAgIGNoaWxkLmRvbSA9IHRoaXMubWFrZURvbShjaGlsZCwgbGV2ZWwgKyAxKTsKKyAgICAgICAg
ICAgICAgICAgICAgdHJlZS5kb20uYXBwZW5kQ2hpbGQoY2hpbGQuZG9tKTsKKyAgICAgICAgICAg
ICAgICB9IGVsc2UgeworICAgICAgICAgICAgICAgICAgICBjaGlsZC5kb20uc3R5bGUuekluZGV4
ID0gMTsKKyAgICAgICAgICAgICAgICB9CisgICAgICAgICAgICAgICAgbGV0IHNpemUgPSBjaGls
ZC5kYXRhWyckYXJlYSddOworICAgICAgICAgICAgICAgIGxldCBmcmFjID0gc2l6ZSAvIHJzdW07
CisgICAgICAgICAgICAgICAgaWYgKHlzcGxpdCkgeworICAgICAgICAgICAgICAgICAgICB3aWR0
aCA9IHJzdW0gLyBzcGFjZTsKKyAgICAgICAgICAgICAgICAgICAgaGVpZ2h0ID0gc2l6ZSAvIHdp
ZHRoOworICAgICAgICAgICAgICAgIH0gZWxzZSB7CisgICAgICAgICAgICAgICAgICAgIGhlaWdo
dCA9IHJzdW0gLyBzcGFjZTsKKyAgICAgICAgICAgICAgICAgICAgd2lkdGggPSBzaXplIC8gaGVp
Z2h0OworICAgICAgICAgICAgICAgIH0KKyAgICAgICAgICAgICAgICB3aWR0aCAvPSBwaXhlbHNf
dG9fdW5pdHM7CisgICAgICAgICAgICAgICAgaGVpZ2h0IC89IHBpeGVsc190b191bml0czsKKyAg
ICAgICAgICAgICAgICB3aWR0aCA9IE1hdGgucm91bmQod2lkdGgpOworICAgICAgICAgICAgICAg
IGhlaWdodCA9IE1hdGgucm91bmQoaGVpZ2h0KTsKKyAgICAgICAgICAgICAgICB0aGlzLnBvc2l0
aW9uKGNoaWxkLmRvbSwgeCwgeSwgd2lkdGgsIGhlaWdodCk7CisgICAgICAgICAgICAgICAgaWYg
KCdjaGlsZHJlbicgaW4gY2hpbGQpIHsKKyAgICAgICAgICAgICAgICAgICAgdGhpcy5sYXlvdXQo
Y2hpbGQsIGxldmVsICsgMSwgd2lkdGgsIGhlaWdodCk7CisgICAgICAgICAgICAgICAgfQorICAg
ICAgICAgICAgICAgIGlmICh5c3BsaXQpCisgICAgICAgICAgICAgICAgICAgIHkgKz0gaGVpZ2h0
OworICAgICAgICAgICAgICAgIGVsc2UKKyAgICAgICAgICAgICAgICAgICAgeCArPSB3aWR0aDsK
KyAgICAgICAgICAgIH0KKworICAgICAgICAgICAgLy8gU2hyaW5rIG91ciBhdmFpbGFibGUgc3Bh
Y2UgYmFzZWQgb24gdGhlIGFtb3VudCB3ZSB1c2VkLgorICAgICAgICAgICAgaWYgKHlzcGxpdCkK
KyAgICAgICAgICAgICAgICB4MSArPSBNYXRoLnJvdW5kKChyc3VtIC8gc3BhY2UpIC8gcGl4ZWxz
X3RvX3VuaXRzKTsKKyAgICAgICAgICAgIGVsc2UKKyAgICAgICAgICAgICAgICB5MSArPSBNYXRo
LnJvdW5kKChyc3VtIC8gc3BhY2UpIC8gcGl4ZWxzX3RvX3VuaXRzKTsKKworICAgICAgICAgICAg
Ly8gZW5kIHBvaW50cyBvbmUgcGFzdCB3aGVyZSB3ZSBlbmRlZCwgd2hpY2ggaXMgd2hlcmUgd2Ug
d2FudCB0bworICAgICAgICAgICAgLy8gYmVnaW4gdGhlIG5leHQgaXRlcmF0aW9uLCBidXQgc3Vi
dHJhY3Qgb25lIHRvIGJhbGFuY2UgdGhlICsrIGluCisgICAgICAgICAgICAvLyB0aGUgbG9vcC4K
KyAgICAgICAgICAgIHN0YXJ0ID0gZW5kIC0gMTsKKyAgICAgICAgfQorICAgIH0KK307CisKK2Ns
YXNzIFV0aWxzIHsKKyAgCisgICAgc3RhdGljIGh1bWFuUmVhZGFibGVUaW1lKG1pbGxpc2Vjb25k
cykKKyAgICB7CisgICAgICAgIGlmIChtaWxsaXNlY29uZHMgPCAxMDAwKQorICAgICAgICAgICAg
cmV0dXJuIE1hdGguZmxvb3IobWlsbGlzZWNvbmRzKSArICdtcyc7CisgICAgICAgIGVsc2UgaWYg
KG1pbGxpc2Vjb25kcyA8IDYwMDAwKQorICAgICAgICAgICAgcmV0dXJuIChtaWxsaXNlY29uZHMg
LyAxMDAwKS50b1ByZWNpc2lvbigyKSArICdzJzsKKworICAgICAgICBsZXQgbWludXRlcyA9IE1h
dGguZmxvb3IobWlsbGlzZWNvbmRzIC8gNjAwMDApOworICAgICAgICBsZXQgc2Vjb25kcyA9IE1h
dGguZmxvb3IoKG1pbGxpc2Vjb25kcyAtIG1pbnV0ZXMgKiA2MDAwMCkgLyAxMDAwKTsKKyAgICAg
ICAgcmV0dXJuIG1pbnV0ZXMgKyAnbScgKyBzZWNvbmRzICsgJ3MnOworICAgIH0KK307CisKK2Ns
YXNzIERhdGFDb252ZXJ0ZXIgeworCisgICAgc3RhdGljIGNvbnZlcnRUb1dlYlRyZWVtYXBGb3Jt
YXQocm9vdE5vZGVOYW1lLCB0cmVlKQorICAgIHsKKyAgICAgICAgcmV0dXJuIERhdGFDb252ZXJ0
ZXIuX3JlY3Vyc2l2ZUNvbnZlcnROb2RlKHJvb3ROb2RlTmFtZSwgdHJlZSk7CisgICAgfQorICAK
KyAgICAvKgorICAgICAgICBzdGF0cy5qc29uIGxvb2tzIGxpa2U6CisgICAgICAgIHsKKyAgICAg
ICAgICAgICJpbXBvcnRlZCI6IHsKKyAgICAgICAgICAgICAgICAidzNjIjogeworICAgICAgICAg
ICAgICAgICAgICAid2ViLXBsYXRmb3JtLXRlc3RzIjogeworICAgICAgICAgICAgICAgICAgICAg
ICAgIkluZGV4ZWREQiI6IHsKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAiaWRib2JqZWN0
c3RvcmVfZ2V0NC5odG0iOiB7CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJyZXN1
bHRzIjogWworICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgMTIsICAgICAgICAg
Ly8gd29ya2VyIG51bWJlcgorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgMjYw
LCAgICAgICAgLy8gdGVzdCBudW1iZXIKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgIDQxNjMyLCAgICAgIC8vIHdvcmtlciBwaWQKKyAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgIDUwLCAgICAgICAgIC8vIHRlc3QgcnVudGltZSAobXMpCisgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICA1NCAgICAgICAgICAvLyB0b3RhbCBydW50aW1lIChtczsg
aW5jbHVkZXMgdGltZSB0byBydW4gcmVmIHRlc3QsIGRvIHBpeGVsIGNvbXBhcmlzb24gZXRjLikK
KyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXSwKKyAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgLi4uCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgfQorICAgICAgICAg
ICAgICAgICAgICAgICAgfQorICAgICAgICAgICAgICAgICAgICB9CisgICAgICAgICAgICAgICAg
fQorICAgICAgICAgICAgfQorICAgICAgICB9ICAgIAorICAgICovCisgIAorICAgIHN0YXRpYyBf
cmVjdXJzaXZlQ29udmVydE5vZGUodHJlZW5hbWUsIHRyZWUsIHBhdGgpCisgICAgeworICAgICAg
ICBsZXQgdG90YWwgPSAwOworICAgICAgICBsZXQgY2hpbGRDb3VudCA9IDA7CisgICAgICAgIGxl
dCBjaGlsZHJlbiA9IFtdOworICAgICAgICBmb3IgKGxldCBuYW1lIGluIHRyZWUpIHsKKyAgICAg
ICAgICAgIGxldCB0cmVlTm9kZSA9IHRyZWVbbmFtZV07CisgICAgICAgICAgICBpZiAoJ3Jlc3Vs
dHMnIGluIHRyZWVOb2RlKSB7CisgICAgICAgICAgICAgICAgbGV0IHRpbWVzID0gdHJlZU5vZGUu
cmVzdWx0czsKKyAgICAgICAgICAgICAgICBpZiAoIXRpbWVzLmhhc093blByb3BlcnR5KCdsZW5n
dGgnKSkKKyAgICAgICAgICAgICAgICAgICAgY29udGludWU7CisKKyAgICAgICAgICAgICAgICBs
ZXQgdGVzdF90b3RhbF90aW1lID0gdHJlZU5vZGUucmVzdWx0c1s0XTsKKyAgICAgICAgICAgICAg
ICBsZXQgbm9kZSA9IHsKKyAgICAgICAgICAgICAgICAgICAgJ2RhdGEnOiB7ICckYXJlYSc6IHRl
c3RfdG90YWxfdGltZSB9LAorICAgICAgICAgICAgICAgICAgICAnbmFtZSc6IG5hbWUgKyAiICgi
ICsgVXRpbHMuaHVtYW5SZWFkYWJsZVRpbWUodGVzdF90b3RhbF90aW1lKSArICIpIgorICAgICAg
ICAgICAgICAgIH07CisgICAgICAgICAgICAgICAgY2hpbGRyZW4ucHVzaChub2RlKTsKKyAgICAg
ICAgICAgICAgICB0b3RhbCArPSB0ZXN0X3RvdGFsX3RpbWU7CisgICAgICAgICAgICAgICAgY2hp
bGRDb3VudCsrOworICAgICAgICAgICAgfSBlbHNlIHsKKyAgICAgICAgICAgICAgICBsZXQgbmV3
UGF0aCA9IHBhdGggPyBwYXRoICsgJy8nICsgbmFtZSA6IG5hbWU7CisgICAgICAgICAgICAgICAg
bGV0IHN1YnRyZWUgPSBEYXRhQ29udmVydGVyLl9yZWN1cnNpdmVDb252ZXJ0Tm9kZShuYW1lLCB0
cmVlTm9kZSwgbmV3UGF0aCk7CisgICAgICAgICAgICAgICAgY2hpbGRyZW4ucHVzaChzdWJ0cmVl
KTsKKyAgICAgICAgICAgICAgICB0b3RhbCArPSBzdWJ0cmVlWydkYXRhJ11bJyRhcmVhJ107Cisg
ICAgICAgICAgICAgICAgY2hpbGRDb3VudCArPSBzdWJ0cmVlWydjaGlsZENvdW50J107CisgICAg
ICAgICAgICB9CisgICAgICAgIH0KKworICAgICAgICBjaGlsZHJlbi5zb3J0KGZ1bmN0aW9uKGEs
IGIpIHsKKyAgICAgICAgICAgIGxldCBhVGltZSA9IGEuZGF0YVsnJGFyZWEnXQorICAgICAgICAg
ICAgbGV0IGJUaW1lID0gYi5kYXRhWyckYXJlYSddCisgICAgICAgICAgICByZXR1cm4gYlRpbWUg
LSBhVGltZTsKKyAgICAgICAgfSk7CisKKyAgICAgICAgcmV0dXJuIHsKKyAgICAgICAgICAgICdk
YXRhJzogeyAnJGFyZWEnOiB0b3RhbCB9LAorICAgICAgICAgICAgJ25hbWUnOiB0cmVlbmFtZSAr
ICcgKCcgKyBVdGlscy5odW1hblJlYWRhYmxlVGltZSh0b3RhbCkgKyAnIC0gJyArIGNoaWxkQ291
bnQgKyAnIHRlc3RzKScsCisgICAgICAgICAgICAnY2hpbGRyZW4nOiBjaGlsZHJlbiwKKyAgICAg
ICAgICAgICdjaGlsZENvdW50JzogY2hpbGRDb3VudCwKKyAgICAgICAgICAgICdwYXRoJzogcGF0
aAorICAgICAgICB9OworICAgIH0KK307CisKK2xldCB0cmVlTWFwQ29udHJvbGxlcjsKK2NsYXNz
IFRyZWVNYXBDb250cm9sbGVyIHsKKyAgCisgICAgY29uc3RydWN0b3Ioc3RhdHNKU09OU3RyaW5n
LCBjb250YWluZXJFbGVtZW50KQorICAgIHsKKyAgICAgICAgbGV0IGpzb25EYXRhID0gSlNPTi5w
YXJzZShzdGF0c0pTT05TdHJpbmcpOworICAgICAgICB0aGlzLnRyZWVNYXBEYXRhID0gRGF0YUNv
bnZlcnRlci5jb252ZXJ0VG9XZWJUcmVlbWFwRm9ybWF0KCdMYXlvdXRUZXN0cycsIGpzb25EYXRh
KTsKKyAgICAgICAgdGhpcy50cmVlTWFwID0gbmV3IFdlYlRyZWVNYXAodGhpcy50cmVlTWFwRGF0
YSwgY29udGFpbmVyRWxlbWVudCk7CisgICAgfQorICAgIAorICAgIHJlc2V0Wm9vbSgpCisgICAg
eworICAgICAgICBmb2N1cyh0aGlzLndlYlRyZWVNYXApOworICAgIH0KK307CisKK2Z1bmN0aW9u
IHNldHVwSW50ZXJmYWNlKCkKK3sKKyAgICAvLyBTZWUgaWYgd2UgaGF2ZSBhIGZpbGUgdG8gbG9h
ZCBzcGVjaWZpZWQgaW4gdGhlIHF1ZXJ5IHN0cmluZy4KKyAgICBsZXQgcXVlcnlfcGFyYW1ldGVy
cyA9IHt9OworICAgIGxldCBwYWlycyA9IHdpbmRvdy5sb2NhdGlvbi5ocmVmLnNsaWNlKHdpbmRv
dy5sb2NhdGlvbi5ocmVmLmluZGV4T2YoJz8nKSArIDEpLnNwbGl0KCcmJyk7CisgICAgbGV0IGZp
bGVuYW1lID0gJ3N0YXRzLmpzb24nOworCisgICAgZm9yIChsZXQgaSA9IDA7IGkgPCBwYWlycy5s
ZW5ndGg7IGkrKykgeworICAgICAgICBsZXQgcGFpciA9IHBhaXJzW2ldLnNwbGl0KCc9Jyk7Cisg
ICAgICAgIHF1ZXJ5X3BhcmFtZXRlcnNbcGFpclswXV0gPSBkZWNvZGVVUklDb21wb25lbnQocGFp
clsxXSk7CisgICAgfQorCisgICAgaWYgKCdmaWxlbmFtZScgaW4gcXVlcnlfcGFyYW1ldGVycykK
KyAgICAgICAgZmlsZW5hbWUgPSBxdWVyeV9wYXJhbWV0ZXJzWydmaWxlbmFtZSddOworCisgICAg
ZmV0Y2goZmlsZW5hbWUpCisgICAgICAudGhlbihmdW5jdGlvbihyZXNwb25zZSkgeworICAgICAg
ICAgIGlmIChyZXNwb25zZS5vaykKKyAgICAgICAgICAgICAgcmV0dXJuIHJlc3BvbnNlLnRleHQo
KTsKKyAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoJ0ZhaWxlZCB0byBsb2FkIGRhdGEgZmlsZSAn
ICsgZmlsZW5hbWUpOworICAgICAgfSkKKyAgICAgIC50aGVuKGZ1bmN0aW9uKGRhdGFTdHJpbmcp
IHsKKyAgICAgICAgICB0cmVlTWFwQ29udHJvbGxlciA9IG5ldyBUcmVlTWFwQ29udHJvbGxlcihk
YXRhU3RyaW5nLCBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgnbWFwJykpOworICAgICAgfSk7CisK
KyAgICBsZXQgZHJvcF90YXJnZXQgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgnZHJvcFRhcmdl
dCcpOworCisgICAgZHJvcF90YXJnZXQuYWRkRXZlbnRMaXN0ZW5lcignZHJhZ2VudGVyJywgZnVu
Y3Rpb24gKGUpIHsKKyAgICAgICAgZHJvcF90YXJnZXQuY2xhc3NOYW1lID0gJ2RyYWdPdmVyJzsK
KyAgICAgICAgZS5zdG9wUHJvcGFnYXRpb24oKTsKKyAgICAgICAgZS5wcmV2ZW50RGVmYXVsdCgp
OworICAgIH0sIGZhbHNlKTsKKworICAgIGRyb3BfdGFyZ2V0LmFkZEV2ZW50TGlzdGVuZXIoJ2Ry
YWdvdmVyJywgZnVuY3Rpb24gKGUpIHsKKyAgICAgICAgZS5zdG9wUHJvcGFnYXRpb24oKTsKKyAg
ICAgICAgZS5wcmV2ZW50RGVmYXVsdCgpOworICAgIH0sIGZhbHNlKTsKKworICAgIGRyb3BfdGFy
Z2V0LmFkZEV2ZW50TGlzdGVuZXIoJ2RyYWdsZWF2ZScsIGZ1bmN0aW9uIChlKSB7CisgICAgICAg
IGRyb3BfdGFyZ2V0LmNsYXNzTmFtZSA9ICcnOworICAgICAgICBlLnN0b3BQcm9wYWdhdGlvbigp
OworICAgICAgICBlLnByZXZlbnREZWZhdWx0KCk7CisgICAgfSwgZmFsc2UpOworCisgICAgZHJv
cF90YXJnZXQuYWRkRXZlbnRMaXN0ZW5lcignZHJvcCcsIGZ1bmN0aW9uIChlKSB7CisgICAgICAg
IGRyb3BfdGFyZ2V0LmNsYXNzTmFtZSA9ICcnOworICAgICAgICBlLnN0b3BQcm9wYWdhdGlvbigp
OworICAgICAgICBlLnByZXZlbnREZWZhdWx0KCk7CisKKyAgICAgICAgZm9yIChsZXQgaSA9IDA7
IGkgPCBlLmRhdGFUcmFuc2Zlci5maWxlcy5sZW5ndGg7ICsraSkgeworICAgICAgICAgICAgbGV0
IGZpbGUgPSBlLmRhdGFUcmFuc2Zlci5maWxlc1tpXTsKKworICAgICAgICAgICAgbGV0IHJlYWRl
ciA9IG5ldyBGaWxlUmVhZGVyKCk7CisgICAgICAgICAgICByZWFkZXIuZmlsZW5hbWUgPSBmaWxl
Lm5hbWU7CisgICAgICAgICAgICByZWFkZXIub25sb2FkID0gZnVuY3Rpb24oZSkgeworICAgICAg
ICAgICAgICAgIHRyZWVNYXBDb250cm9sbGVyID0gbmV3IFRyZWVNYXBDb250cm9sbGVyKHJlYWRl
ci5yZXN1bHQsIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCdtYXAnKSk7CisgICAgICAgICAgICB9
OworCisgICAgICAgICAgICByZWFkZXIucmVhZEFzVGV4dChmaWxlKTsKKyAgICAgICAgICAgIGRv
Y3VtZW50LnRpdGxlID0gJ1Rlc3QgcmVzdWx0IHRpbWVzOiAnICsgcmVhZGVyLmZpbGVuYW1lOwor
ICAgICAgICB9CisgICAgfSwgZmFsc2UpOworfQorCit3aW5kb3cuYWRkRXZlbnRMaXN0ZW5lcign
bG9hZCcsIHNldHVwSW50ZXJmYWNlLCBmYWxzZSk7Cis8L3NjcmlwdD4KKzxib2R5PgorPGRpdiBp
ZD0naGVhZGVyLWNvbnRhaW5lcic+CisgICAgPGRpdiBpZD0iZHJvcFRhcmdldCI+RHJvcCBzdGF0
cy5qc29uIGZpbGUgaGVyZSB0byBsb2FkLjwvZGl2PgorICAgIDxwPkNsaWNrIG9uIGEgYm94IHRv
IHpvb20gaW4uIENsaWNrIG9uIHRoZSBvdXRlcm1vc3QgYm94IHRvIHpvb20gb3V0LiA8YSBocmVm
PSIiIG9uY2xpY2s9InRyZWVNYXBDb250cm9sbGVyLnJlc2V0Wm9vbSgpIj5SZXNldDwvYT48L3A+
CisgICAgPC9kaXY+Cis8ZGl2IGlkPSdtYXAnPjwvZGl2PgorPC9ib2R5PgorPC9odG1sPgo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>349227</attachid>
            <date>2018-09-07 19:01:52 -0700</date>
            <delta_ts>2018-09-07 19:17:46 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-189396-20180907190152.patch</filename>
            <type>text/plain</type>
            <size>48994</size>
            <attacher name="Simon Fraser (smfr)">simon.fraser</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjM1ODA1CmRpZmYgLS1naXQgYS9Ub29scy9DaGFuZ2VMb2cg
Yi9Ub29scy9DaGFuZ2VMb2cKaW5kZXggOWRmODVlYzUyYWUyNDNiODFiMmEyZGU0ODI3ODc0Yzll
MGFiNDEyNi4uZjRhMTliZGY5NzI2MGI0OTNjZDU4NmIwNTE1NzkwZGJjYmQ0ZWI0NCAxMDA2NDQK
LS0tIGEvVG9vbHMvQ2hhbmdlTG9nCisrKyBiL1Rvb2xzL0NoYW5nZUxvZwpAQCAtMSwzICsxLDQx
IEBACisyMDE4LTA5LTA3ICBTaW1vbiBGcmFzZXIgIDxzaW1vbi5mcmFzZXJAYXBwbGUuY29tPgor
CisgICAgICAgIEFkZCBhIHN0YW5kYWxvbmUgdmVyc2lvbiBvZiB0aGUgdGVzdCBydW50aW1lIHRy
ZWUgbWFwIHZpZXdlciwgdGhhdCBjYW4gYWNjZXB0IHN0YXRzLmpzb24gZnJvbSBhIGxvY2FsIHRl
c3QgcnVuCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0x
ODkzOTYKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKyAgICAgICAgCisg
ICAgICAgIEFkZCBhIHZlcnNpb24gb2YgVG9vbHMvVGVzdFJlc3VsdFNlcnZlci9zdGF0aWMtZGFz
aGJvYXJkcy9zdGFuZGFsb25lLXRyZWVtYXAuaHRtbCB0aGF0IGNhbiBpbmdlc3QKKyAgICAgICAg
c3RhdHMuanNvbiBmcm9tIGEgbG9jYWwgdGVzdCBydW4sIHRvIG1ha2UgaXQgZWFzeSB0byBmaW5k
IHNsb3cgdGVzdHMgbG9jYWxseS4KKyAgICAgICAgCisgICAgICAgIFRoaXMgc2hvdWxkIHByb2Jh
Ymx5IGxpdmUgaW4gc29tZSBvdGhlciBkaXJlY3RvcnkuIE1heWJlIGl0IHNob3VsZCBiZSBidW5k
bGVkIGluIGxheW91dF90ZXN0X3Jlc3VsdHMKKyAgICAgICAgYW5kIGxpbmtlZCBmcm9tIHJlc3Vs
dHMuaHRtbC4KKworICAgICAgICAqIFRlc3RSZXN1bHRTZXJ2ZXIvc3RhdGljLWRhc2hib2FyZHMv
c3RhbmRhbG9uZS10cmVlbWFwLmh0bWw6IEFkZGVkLgorCisyMDE4LTA5LTA3ICBTaW1vbiBGcmFz
ZXIgIDxzaW1vbi5mcmFzZXJAYXBwbGUuY29tPgorCisgICAgICAgIEVuYWJsZSB3b3JsZCBsZWFr
cyBieSBkZWZhdWx0IGZvciBNYWMgV0syCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3Jn
L3Nob3dfYnVnLmNnaT9pZD0xODkzMzIKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9P
UFMhKS4KKyAgICAgICAgCisgICAgICAgIEFsbG93IHRoZSBwb3J0IHRvIHN1cHBseSBhIGRlZmF1
bHQgdmFsdWUgZm9yIG9wdGlvbnMud29ybGRfbGVha3MsIHdoaWNoIG1lYW5zIG5vdCBoYXZpbmcK
KyAgICAgICAgaXQgZGVmYXVsdCB0byBGYWxzZSBpbiB0aGUgb3B0aW9ucyBwYXJzZXIsIGFuZCBo
YXZpbmcgX3NldF91cF9kZXJpdmVkX29wdGlvbnMoKQorICAgICAgICBnZXQgaXQgZnJvbSB0aGUg
cG9ydC4gQWxzbyBkaXNhYmxlIGl0IGZvciBEdW1wUmVuZGVyVHJlZS4KKyAgICAgICAgCisgICAg
ICAgIFByaW50IHRoZSBzdGF0dXMgb2Ygd29ybGRfbGVha3MgaWYgcnVubmluZyB3aXRoIHZlcmJv
c2UgcHJpbnRpbmcuCisKKyAgICAgICAgKiBTY3JpcHRzL3dlYmtpdHB5L2xheW91dF90ZXN0cy9y
dW5fd2Via2l0X3Rlc3RzLnB5OgorICAgICAgICAocGFyc2VfYXJncyk6CisgICAgICAgIChfc2V0
X3VwX2Rlcml2ZWRfb3B0aW9ucyk6CisgICAgICAgICogU2NyaXB0cy93ZWJraXRweS9sYXlvdXRf
dGVzdHMvdmlld3MvcHJpbnRpbmcucHk6CisgICAgICAgIChQcmludGVyLnByaW50X2NvbmZpZyk6
CisgICAgICAgICogU2NyaXB0cy93ZWJraXRweS9wb3J0L2Jhc2UucHk6CisgICAgICAgIChQb3J0
LmRlZmF1bHRfd29ybGRfbGVha3MpOgorICAgICAgICAqIFNjcmlwdHMvd2Via2l0cHkvcG9ydC9t
YWMucHk6CisgICAgICAgIChNYWNQb3J0LmRlZmF1bHRfd29ybGRfbGVha3MpOgorCiAyMDE4LTA5
LTA3ICBTaW1vbiBGcmFzZXIgIDxzaW1vbi5mcmFzZXJAYXBwbGUuY29tPgogCiAgICAgICAgIHJl
c3VsdHNqc29ucGFyc2VyIG5lZWRzIHRvIGhhbmRsZSBsZWFrIGZhaWx1cmVzCmRpZmYgLS1naXQg
YS9Ub29scy9TY3JpcHRzL3dlYmtpdHB5L2xheW91dF90ZXN0cy9ydW5fd2Via2l0X3Rlc3RzLnB5
IGIvVG9vbHMvU2NyaXB0cy93ZWJraXRweS9sYXlvdXRfdGVzdHMvcnVuX3dlYmtpdF90ZXN0cy5w
eQppbmRleCA0ZThlMzE1NzE5MDY3OTUyZjNmYzNlYWNjMDBhNjVmMWZhZGU1YjNmLi4wNWVlYzU3
ODBlZjk2ZGY5M2I4YWRjOGQxZmUyNzdjZjhmZjc3MjFmIDEwMDc1NQotLS0gYS9Ub29scy9TY3Jp
cHRzL3dlYmtpdHB5L2xheW91dF90ZXN0cy9ydW5fd2Via2l0X3Rlc3RzLnB5CisrKyBiL1Rvb2xz
L1NjcmlwdHMvd2Via2l0cHkvbGF5b3V0X3Rlc3RzL3J1bl93ZWJraXRfdGVzdHMucHkKQEAgLTI5
MCw3ICsyOTAsNyBAQCBkZWYgcGFyc2VfYXJncyhhcmdzKToKICAgICAgICAgb3B0cGFyc2UubWFr
ZV9vcHRpb24oJy0tZGlzcGxheS1zZXJ2ZXInLCBjaG9pY2VzPVsneHZmYicsICd4b3JnJywgJ3dl
c3RvbicsICd3YXlsYW5kJ10sIGRlZmF1bHQ9J3h2ZmInLAogICAgICAgICAgICAgaGVscD0nInh2
ZmIiOiBVc2UgYSB2aXJ0dWFsaXplZCBYMTEgc2VydmVyLiAieG9yZyI6IFVzZSB0aGUgY3VycmVu
dCBYMTEgc2Vzc2lvbi4gJwogICAgICAgICAgICAgICAgICAnIndlc3RvbiI6IFVzZSBhIHZpcnR1
YWxpemVkIFdlc3RvbiBzZXJ2ZXIuICJ3YXlsYW5kIjogVXNlIHRoZSBjdXJyZW50IHdheWxhbmQg
c2Vzc2lvbi4nKSwKLSAgICAgICAgb3B0cGFyc2UubWFrZV9vcHRpb24oIi0td29ybGQtbGVha3Mi
LCBhY3Rpb249InN0b3JlX3RydWUiLCBkZWZhdWx0PUZhbHNlLCBoZWxwPSJDaGVjayBmb3Igd29y
bGQgbGVha3MgKGN1cnJlbnRseSwgb25seSBkb2N1bWVudHMpLiBEaWZmZXJzIGZyb20gLS1sZWFr
cyBpbiB0aGF0IHRoaXMgdXNlcyBpbnRlcm5hbCBpbnN0cnVtZW50YXRpb24sIHJhdGhlciB0aGFu
IGV4dGVybmFsIHRvb2xzLiIpLAorICAgICAgICBvcHRwYXJzZS5tYWtlX29wdGlvbigiLS13b3Js
ZC1sZWFrcyIsIGFjdGlvbj0ic3RvcmVfdHJ1ZSIsIGhlbHA9IkNoZWNrIGZvciB3b3JsZCBsZWFr
cyAoY3VycmVudGx5LCBvbmx5IGRvY3VtZW50cykuIERpZmZlcnMgZnJvbSAtLWxlYWtzIGluIHRo
YXQgdGhpcyB1c2VzIGludGVybmFsIGluc3RydW1lbnRhdGlvbiwgcmF0aGVyIHRoYW4gZXh0ZXJu
YWwgdG9vbHMuIiksCiAgICAgXSkpCiAKICAgICBvcHRpb25fZ3JvdXBfZGVmaW5pdGlvbnMuYXBw
ZW5kKCgiaU9TIE9wdGlvbnMiLCBbCkBAIC0zODAsNiArMzgwLDkgQEAgZGVmIF9zZXRfdXBfZGVy
aXZlZF9vcHRpb25zKHBvcnQsIG9wdGlvbnMpOgogICAgIGlmIG9wdGlvbnMucGl4ZWxfdGVzdHMg
aXMgTm9uZToKICAgICAgICAgb3B0aW9ucy5waXhlbF90ZXN0cyA9IHBvcnQuZGVmYXVsdF9waXhl
bF90ZXN0cygpCiAKKyAgICBpZiBvcHRpb25zLndvcmxkX2xlYWtzIGlzIE5vbmU6CisgICAgICAg
IG9wdGlvbnMud29ybGRfbGVha3MgPSBwb3J0LmRlZmF1bHRfd29ybGRfbGVha3MoKQorCiAgICAg
aWYgbm90IG9wdGlvbnMudGltZV9vdXRfbXM6CiAgICAgICAgIG9wdGlvbnMudGltZV9vdXRfbXMg
PSBzdHIocG9ydC5kZWZhdWx0X3RpbWVvdXRfbXMoKSkKIApAQCAtNDMwLDYgKzQzMywxMCBAQCBk
ZWYgX3NldF91cF9kZXJpdmVkX29wdGlvbnMocG9ydCwgb3B0aW9ucyk6CiAgICAgaWYgb3B0aW9u
cy5wbGF0Zm9ybSBpbiBbImd0ayIsICJ3cGUiXToKICAgICAgICAgb3B0aW9ucy53ZWJraXRfdGVz
dF9ydW5uZXIgPSBUcnVlCiAKKyAgICAjIFdvcmxkIGxlYWtzIGlzIG9ubHkgc3VwcG9ydGVkIGlu
IFdlYktpdFRlc3RSdW5uZXIgYXQgcHJlc2VudC4KKyAgICBpZiBvcHRpb25zLndvcmxkX2xlYWtz
IGFuZCBub3Qgb3B0aW9ucy53ZWJraXRfdGVzdF9ydW5uZXI6CisgICAgICAgIG9wdGlvbnMud29y
bGRfbGVha3MgPSBGYWxzZQorCiAgICAgaWYgb3B0aW9ucy5sZWFrczoKICAgICAgICAgb3B0aW9u
cy5hZGRpdGlvbmFsX2Vudl92YXIuYXBwZW5kKCJKU0NfdXNlUG9pc29uaW5nPTAiKQogICAgICAg
ICBvcHRpb25zLmFkZGl0aW9uYWxfZW52X3Zhci5hcHBlbmQoIl9fWFBDX0pTQ191c2VQb2lzb25p
bmc9MCIpCmRpZmYgLS1naXQgYS9Ub29scy9TY3JpcHRzL3dlYmtpdHB5L2xheW91dF90ZXN0cy92
aWV3cy9wcmludGluZy5weSBiL1Rvb2xzL1NjcmlwdHMvd2Via2l0cHkvbGF5b3V0X3Rlc3RzL3Zp
ZXdzL3ByaW50aW5nLnB5CmluZGV4IDFkMTIzNzExMDhlOWUxYjU1NjFjYzM1OTY2Y2Y0NmYwNWFk
NTMyOWQuLjc2MjIyZDc4NmNhNmFlMDIyZjUzYjI5ODUxOTRiMjg4NzEyMDNkZDEgMTAwNjQ0Ci0t
LSBhL1Rvb2xzL1NjcmlwdHMvd2Via2l0cHkvbGF5b3V0X3Rlc3RzL3ZpZXdzL3ByaW50aW5nLnB5
CisrKyBiL1Rvb2xzL1NjcmlwdHMvd2Via2l0cHkvbGF5b3V0X3Rlc3RzL3ZpZXdzL3ByaW50aW5n
LnB5CkBAIC05MSw2ICs5MSwxMSBAQCBjbGFzcyBQcmludGVyKG9iamVjdCk6CiAgICAgICAgIGVs
c2U6CiAgICAgICAgICAgICBzZWxmLl9wcmludF9kZWZhdWx0KCJQaXhlbCB0ZXN0cyBkaXNhYmxl
ZCIpCiAKKyAgICAgICAgaWYgc2VsZi5fb3B0aW9ucy53b3JsZF9sZWFrczoKKyAgICAgICAgICAg
IHNlbGYuX3ByaW50X2RlZmF1bHQoIldvcmxkIGxlYWtzIGVuYWJsZWQiKQorICAgICAgICBlbHNl
OgorICAgICAgICAgICAgc2VsZi5fcHJpbnRfZGVmYXVsdCgiV29ybGQgbGVha3MgZGlzYWJsZWQi
KQorCiAgICAgICAgIHNlbGYuX3ByaW50X2RlZmF1bHQoIlJlZ3VsYXIgdGltZW91dDogJXMsIHNs
b3cgdGVzdCB0aW1lb3V0OiAlcyIgJQogICAgICAgICAgICAgICAgICAgKHNlbGYuX29wdGlvbnMu
dGltZV9vdXRfbXMsIHNlbGYuX29wdGlvbnMuc2xvd190aW1lX291dF9tcykpCiAKZGlmZiAtLWdp
dCBhL1Rvb2xzL1NjcmlwdHMvd2Via2l0cHkvbGF5b3V0X3Rlc3RzL3ZpZXdzL3ByaW50aW5nX3Vu
aXR0ZXN0LnB5IGIvVG9vbHMvU2NyaXB0cy93ZWJraXRweS9sYXlvdXRfdGVzdHMvdmlld3MvcHJp
bnRpbmdfdW5pdHRlc3QucHkKaW5kZXggMTg4ODY5Mjc2NjAyMGQxZTc3NzYwYzY2OGY3ZDZkYzJj
Y2RiNGY4YS4uZTcxZGE5ZmRlYjg3ZDBhZWU4MjU0OTM0MWRkNmFhNjZiNjhhMzRhMiAxMDA2NDQK
LS0tIGEvVG9vbHMvU2NyaXB0cy93ZWJraXRweS9sYXlvdXRfdGVzdHMvdmlld3MvcHJpbnRpbmdf
dW5pdHRlc3QucHkKKysrIGIvVG9vbHMvU2NyaXB0cy93ZWJraXRweS9sYXlvdXRfdGVzdHMvdmll
d3MvcHJpbnRpbmdfdW5pdHRlc3QucHkKQEAgLTEwNCw2ICsxMDQsNyBAQCBjbGFzcyAgVGVzdHBy
aW50ZXIodW5pdHRlc3QuVGVzdENhc2UpOgogICAgICAgICBwcmludGVyLCBlcnIgPSBzZWxmLmdl
dF9wcmludGVyKCkKICAgICAgICAgIyBGSVhNRTogaXQncyBsYW1lIHRoYXQgaSBoYXZlIHRvIHNl
dCB0aGVzZSBvcHRpb25zIGRpcmVjdGx5LgogICAgICAgICBwcmludGVyLl9vcHRpb25zLnBpeGVs
X3Rlc3RzID0gVHJ1ZQorICAgICAgICBwcmludGVyLl9vcHRpb25zLndvcmxkX2xlYWtzID0gRmFs
c2UKICAgICAgICAgcHJpbnRlci5fb3B0aW9ucy5uZXdfYmFzZWxpbmUgPSBUcnVlCiAgICAgICAg
IHByaW50ZXIuX29wdGlvbnMudGltZV9vdXRfbXMgPSA2MDAwCiAgICAgICAgIHByaW50ZXIuX29w
dGlvbnMuc2xvd190aW1lX291dF9tcyA9IDEyMDAwCmRpZmYgLS1naXQgYS9Ub29scy9TY3JpcHRz
L3dlYmtpdHB5L3BvcnQvYmFzZS5weSBiL1Rvb2xzL1NjcmlwdHMvd2Via2l0cHkvcG9ydC9iYXNl
LnB5CmluZGV4IDE0NzYxZGE5MmY5MDJhYmM2ZTE3YjU2MTNiMGI3MDEwZmVhYTA0MGEuLmNkOTRk
Njk4NTBjYzgwZDI3ZjJlOGFiZmZhNTNkZjJmMWM0MGMxMDggMTAwNjQ0Ci0tLSBhL1Rvb2xzL1Nj
cmlwdHMvd2Via2l0cHkvcG9ydC9iYXNlLnB5CisrKyBiL1Rvb2xzL1NjcmlwdHMvd2Via2l0cHkv
cG9ydC9iYXNlLnB5CkBAIC0xNjQsNiArMTY0LDkgQEAgY2xhc3MgUG9ydChvYmplY3QpOgogICAg
ICAgICAjIEZJWE1FOiBEaXNhYmxlIHVudGlsIHRoZXkgYXJlIHJ1biBieSBkZWZhdWx0IG9uIGJ1
aWxkLndlYmtpdC5vcmcuCiAgICAgICAgIHJldHVybiBGYWxzZQogCisgICAgZGVmIGRlZmF1bHRf
d29ybGRfbGVha3Moc2VsZik6CisgICAgICAgIHJldHVybiBGYWxzZQorCiAgICAgZGVmIGRlZmF1
bHRfdGltZW91dF9tcyhzZWxmKToKICAgICAgICAgcmV0dXJuIDMwICogMTAwMAogCmRpZmYgLS1n
aXQgYS9Ub29scy9TY3JpcHRzL3dlYmtpdHB5L3BvcnQvbWFjLnB5IGIvVG9vbHMvU2NyaXB0cy93
ZWJraXRweS9wb3J0L21hYy5weQppbmRleCA0MGE1ZWFjNTVhMTg5NzNhYTYxNWVmNDMxODRkYTdi
NzEwOTBhNTJmLi43ZDIxMzdjZjEyMGMxNDJmNjBmYmFhOTkyMTcxZjBmMTFjNWNhZjk1IDEwMDY0
NAotLS0gYS9Ub29scy9TY3JpcHRzL3dlYmtpdHB5L3BvcnQvbWFjLnB5CisrKyBiL1Rvb2xzL1Nj
cmlwdHMvd2Via2l0cHkvcG9ydC9tYWMucHkKQEAgLTIxNyw2ICsyMTcsMTIgQEAgY2xhc3MgTWFj
UG9ydChEYXJ3aW5Qb3J0KToKICAgICAgICAgICAgIHN1cHBvcnRhYmxlX2luc3RhbmNlcyA9IGRl
ZmF1bHRfY291bnQKICAgICAgICAgcmV0dXJuIG1pbihzdXBwb3J0YWJsZV9pbnN0YW5jZXMsIGRl
ZmF1bHRfY291bnQpCiAKKyAgICBkZWYgZGVmYXVsdF93b3JsZF9sZWFrcyhzZWxmKToKKyAgICAg
ICAgaWYgc2VsZi5nZXRfb3B0aW9uKCd3ZWJraXRfdGVzdF9ydW5uZXInKToKKyAgICAgICAgICAg
IHJldHVybiBUcnVlCisKKyAgICAgICAgcmV0dXJuIEZhbHNlCisKICAgICBkZWYgX2J1aWxkX2ph
dmFfdGVzdF9zdXBwb3J0KHNlbGYpOgogICAgICAgICAjIEZJWE1FOiBUaGlzIGlzIHVudXNlZC4g
UmVtb3ZlLgogICAgICAgICBqYXZhX3Rlc3RzX3BhdGggPSBzZWxmLl9maWxlc3lzdGVtLmpvaW4o
c2VsZi5sYXlvdXRfdGVzdHNfZGlyKCksICJqYXZhIikKZGlmZiAtLWdpdCBhL0xheW91dFRlc3Rz
L0NoYW5nZUxvZyBiL0xheW91dFRlc3RzL0NoYW5nZUxvZwppbmRleCAwOGJjOTc1ZmRiOWM1ZjQz
ZTNkODYyMmMyMDBkMzAzMzMwMmIzYzgwLi5iOGY5YWY4MDQ4YzdkM2I1OGQwODZkM2Y0MTQ3MTRk
NzEwYTU4ZTdiIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKKysrIGIvTGF5b3V0
VGVzdHMvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTYgQEAKKzIwMTgtMDktMDcgIFNpbW9uIEZyYXNl
ciAgPHNpbW9uLmZyYXNlckBhcHBsZS5jb20+CisKKyAgICAgICAgRW5hYmxlIHdvcmxkIGxlYWtz
IGJ5IGRlZmF1bHQgZm9yIE1hYyBXSzIKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcv
c2hvd19idWcuY2dpP2lkPTE4OTMzMgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09Q
UyEpLgorICAgICAgICAKKyAgICAgICAgQWRkIGxvdHMgb2YgbGVhayBleHBlY3RhdGlvbnMuCisK
KyAgICAgICAgKiBUZXN0RXhwZWN0YXRpb25zOgorICAgICAgICAqIHBsYXRmb3JtL21hYy13azIv
VGVzdEV4cGVjdGF0aW9uczoKKyAgICAgICAgKiBwbGF0Zm9ybS9tYWMvVGVzdEV4cGVjdGF0aW9u
czoKKwogMjAxOC0wOS0wNyAgWmFsYW4gQnVqdGFzICA8emFsYW5AYXBwbGUuY29tPgogCiAgICAg
ICAgIFtpT1NdIFVucmV2aWV3ZWQgdGVzdCBnYXJkZW5pbmcuCmRpZmYgLS1naXQgYS9MYXlvdXRU
ZXN0cy9UZXN0RXhwZWN0YXRpb25zIGIvTGF5b3V0VGVzdHMvVGVzdEV4cGVjdGF0aW9ucwppbmRl
eCAwNWUyOTQ4OGU5Mjg4NDUyOGZiY2RiOTQwMmVkN2U3NTA5NmUzYTIxLi41YTE0NzBhZjE4Mzcw
YzdlZjFlNDZlMmZlZmY5MjU2N2EyYWE2MGMwIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9UZXN0
RXhwZWN0YXRpb25zCisrKyBiL0xheW91dFRlc3RzL1Rlc3RFeHBlY3RhdGlvbnMKQEAgLTQxMCw3
ICs0MTAsNyBAQCBmYXN0L21pc2MvdmFsaWQtcHJpbWFyeS1zY3JlZW4tZGlzcGxheUlELmh0bWwg
WyBTa2lwIF0KICMgbWVkaWEvdmlkZW8tc2Vlay1hZnRlci1lbmQuaHRtbCBpcyBmbGFreQogd2Vi
a2l0Lm9yZy9iLzExNjI5MyBtZWRpYS92aWRlby1zZWVrLWFmdGVyLWVuZC5odG1sIFsgUGFzcyBG
YWlsdXJlIF0KIAotd2Via2l0Lm9yZy9iLzExNjQ3MyBlZGl0aW5nL3NlbGVjdGlvbi91c2VyLWRy
YWctZWxlbWVudC1hbmQtdXNlci1zZWxlY3Qtbm9uZS5odG1sIFsgRmFpbHVyZSBdCit3ZWJraXQu
b3JnL2IvMTE2NDczIGVkaXRpbmcvc2VsZWN0aW9uL3VzZXItZHJhZy1lbGVtZW50LWFuZC11c2Vy
LXNlbGVjdC1ub25lLmh0bWwgWyBMZWFrIEZhaWx1cmUgXQogCiB3ZWJraXQub3JnL2IvMTM5ODYy
IGVkaXRpbmcvc3BlbGxpbmcvZWRpdGluZy1tdWx0aXBsZS13b3Jkcy13aXRoLW1hcmtlcnMuaHRt
bCBbIFRpbWVvdXQgUGFzcyBdCiB3ZWJraXQub3JnL2IvMTM5OTAzIGVkaXRpbmcvc3BlbGxpbmcv
Z3JhbW1hci1wYXN0ZS5odG1sIFsgVGltZW91dCBQYXNzIF0KQEAgLTU4MSw3ICs1ODEsNyBAQCBp
bXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9jc3MtZ3JpZC9hYnNwb3MvZ3JpZC1p
dGVtLWFic29sdXRlLXBvc2l0aW9uaQogaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9j
c3MvY3NzLXNjb3BpbmcvY3NzLXNjb3Bpbmctc2hhZG93LWhvc3QtbmFtZXNwYWNlLmh0bWwgWyBJ
bWFnZU9ubHlGYWlsdXJlIF0KIGltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvSW5kZXhl
ZERCL2Fib3J0LWluLWluaXRpYWwtdXBncmFkZW5lZWRlZC5odG1sIFsgUGFzcyBGYWlsdXJlIF0K
IGltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvSW5kZXhlZERCL2Nsb25lLWJlZm9yZS1r
ZXlwYXRoLWV2YWwuaHRtbCBbIFBhc3MgRmFpbHVyZSBdCi1pbXBvcnRlZC93M2Mvd2ViLXBsYXRm
b3JtLXRlc3RzL0luZGV4ZWREQi9iaW5kaW5ncy1pbmplY3Qta2V5Lmh0bWwgWyBQYXNzIEZhaWx1
cmUgXQoraW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9JbmRleGVkREIvYmluZGluZ3Mt
aW5qZWN0LWtleS5odG1sIFsgUGFzcyBGYWlsdXJlIExlYWsgXQogCiAjIFRob3NlIFdQVCB0ZXN0
cyBhcmUgZmxha3kgd2hlbiBmYWlsaW5nLgogaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0
cy9odG1sL3NlbWFudGljcy9kb2N1bWVudC1tZXRhZGF0YS90aGUtbWV0YS1lbGVtZW50L3ByYWdt
YS1kaXJlY3RpdmVzL2F0dHItbWV0YS1odHRwLWVxdWl2LXJlZnJlc2gvYWxsb3ctc2NyaXB0cy1m
bGFnLWNoYW5naW5nLTEuaHRtbCBbIFBhc3MgRmFpbHVyZSBdCkBAIC0xMzgwLDE0ICsxMzgwLDE0
IEBAIHN0b3JhZ2UvaW5kZXhlZGRiL29wZW4tZGItcHJpdmF0ZS1icm93c2luZy5odG1sIFsgRmFp
bHVyZSBdCiAjIFJlbGllcyBvbiBpbnRlcm5hbHMub2JzZXJ2ZUdDCiBzdG9yYWdlL2luZGV4ZWRk
Yi9jb25uZWN0aW9uLWxlYWstcHJpdmF0ZS5odG1sIFsgU2tpcCBdCiBzdG9yYWdlL2luZGV4ZWRk
Yi9jb25uZWN0aW9uLWxlYWsuaHRtbCBbIFNraXAgXQotc3RvcmFnZS9pbmRleGVkZGIvY3Vyc29y
LWxlYWstcHJpdmF0ZS5odG1sIFsgRmFpbHVyZSBdCitzdG9yYWdlL2luZGV4ZWRkYi9jdXJzb3It
bGVhay1wcml2YXRlLmh0bWwgWyBMZWFrIEZhaWx1cmUgXQogc3RvcmFnZS9pbmRleGVkZGIvY3Vy
c29yLWxlYWsuaHRtbCBbIFNraXAgXQogc3RvcmFnZS9pbmRleGVkZGIvY3Vyc29yLXJlcXVlc3Qt
Y3ljbGUtcHJpdmF0ZS5odG1sIFsgRmFpbHVyZSBdCiBzdG9yYWdlL2luZGV4ZWRkYi9jdXJzb3It
cmVxdWVzdC1jeWNsZS5odG1sIFsgU2tpcCBdCiBzdG9yYWdlL2luZGV4ZWRkYi9kZWxldGUtY2xv
c2VkLWRhdGFiYXNlLW9iamVjdC1wcml2YXRlLmh0bWwgWyBTa2lwIF0KIHN0b3JhZ2UvaW5kZXhl
ZGRiL2RlbGV0ZS1jbG9zZWQtZGF0YWJhc2Utb2JqZWN0Lmh0bWwgWyBTa2lwIF0KLXN0b3JhZ2Uv
aW5kZXhlZGRiL3JlcXVlc3QtbGVhay1wcml2YXRlLmh0bWwgWyBGYWlsdXJlIF0KLXN0b3JhZ2Uv
aW5kZXhlZGRiL3JlcXVlc3QtbGVhay5odG1sIFsgRmFpbHVyZSBdCitzdG9yYWdlL2luZGV4ZWRk
Yi9yZXF1ZXN0LWxlYWstcHJpdmF0ZS5odG1sIFsgTGVhayBGYWlsdXJlIF0KK3N0b3JhZ2UvaW5k
ZXhlZGRiL3JlcXVlc3QtbGVhay5odG1sIFsgTGVhayBGYWlsdXJlIF0KIAogd2Via2l0Lm9yZy9i
LzE1NDYxOSBzdG9yYWdlL2luZGV4ZWRkYi9vZGQtc3RyaW5ncy5odG1sIFsgU2tpcCBdCiAKQEAg
LTIwNjMsOCArMjA2Myw4IEBAIHdlYmtpdC5vcmcvYi8xODQ4MDIgaHR0cC90ZXN0cy9zZWN1cml0
eS9jb250ZW50VHlwZU9wdGlvbnMvbm9zbmlmZi1pbXBvcnRTY3JpcHQtCiAKIHdlYmtpdC5vcmcv
Yi8xODExMDAgaW5zcGVjdG9yL3dvcmtlci93b3JrZXItcmVjb3Zlci1pZi1pbnNwZWN0b3ItY2xv
c2UuaHRtbCBbIFBhc3MgRmFpbHVyZSBdCiAKLVsgRGVidWcgXSBpbXBvcnRlZC93M2Mvd2ViLXBs
YXRmb3JtLXRlc3RzL0luZGV4ZWREQi9pbnRlcmxlYXZlZC1jdXJzb3JzLWxhcmdlLmh0bWwgWyBG
YWlsdXJlIF0KLVsgRGVidWcgXSBpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL0luZGV4
ZWREQi9pbnRlcmxlYXZlZC1jdXJzb3JzLXNtYWxsLmh0bWwgWyBGYWlsdXJlIF0KK2ltcG9ydGVk
L3czYy93ZWItcGxhdGZvcm0tdGVzdHMvSW5kZXhlZERCL2ludGVybGVhdmVkLWN1cnNvcnMtbGFy
Z2UuaHRtbCBbIEZhaWx1cmUgTGVhayBdCitpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3Rz
L0luZGV4ZWREQi9pbnRlcmxlYXZlZC1jdXJzb3JzLXNtYWxsLmh0bWwgWyBGYWlsdXJlIExlYWsg
XQogd2Via2l0Lm9yZy9iLzE4NjU3NCBtZWRpYS92aWRlby1idWZmZXJpbmctYWxsb3dlZC5odG1s
IFsgUGFzcyBGYWlsdXJlIF0KIAogIyMjIFdlYkwgQ29uZm9ybWFuY2UgU3VpdGUgMi4wLjAgdGVz
dHMgdGhhdCBkbyBub3QgeWV0IGhhdmUgc3VwcG9ydCBhcyBvZiA2LzcvMjAxOC4gRW5hYmxlIGFz
IHN1cHBvcnQgaXMgaW1wbGVtZW50ZWQuICMjIwpAQCAtMjIxNSwxNCArMjIxNSwxNCBAQCBpbXBv
cnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL1dlYkNyeXB0b0FQSS9nZW5lcmF0ZUtleS9zdWNj
ZXNzZXNfUlNBLU9BRVAuaHR0cAogCiB3ZWJraXQub3JnL2IvMTc1NjA5IGltcG9ydGVkL3czYy93
ZWItcGxhdGZvcm0tdGVzdHMvSW5kZXhlZERCL2lkYm9iamVjdHN0b3JlX2dldEFsbC5odG1sIFsg
UGFzcyBGYWlsdXJlIF0KIHdlYmtpdC5vcmcvYi8xNzU2MDkgaW1wb3J0ZWQvdzNjL3dlYi1wbGF0
Zm9ybS10ZXN0cy9JbmRleGVkREIvaWRib2JqZWN0c3RvcmVfZ2V0S2V5Lmh0bWwgWyBQYXNzIEZh
aWx1cmUgXQotd2Via2l0Lm9yZy9iLzE3NTYwOSBpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRl
c3RzL0luZGV4ZWREQi9pZGJpbmRleF9nZXRBbGxLZXlzLmh0bWwgWyBQYXNzIEZhaWx1cmUgXQor
d2Via2l0Lm9yZy9iLzE3NTYwOSBpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL0luZGV4
ZWREQi9pZGJpbmRleF9nZXRBbGxLZXlzLmh0bWwgWyBQYXNzIEZhaWx1cmUgTGVhayBdCiB3ZWJr
aXQub3JnL2IvMTc1NjA5IGltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvSW5kZXhlZERC
L2lkYmN1cnNvci1jb250aW51ZS5odG0gWyBQYXNzIEZhaWx1cmUgXQogd2Via2l0Lm9yZy9iLzE3
NTYwOSBpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL0luZGV4ZWREQi9pZGJkYXRhYmFz
ZS1kZWxldGVPYmplY3RTdG9yZS1leGNlcHRpb24tb3JkZXIuaHRtIFsgUGFzcyBGYWlsdXJlIF0K
IHdlYmtpdC5vcmcvYi8xNzU2MDkgaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9JbmRl
eGVkREIvaWRib2JqZWN0c3RvcmVfZ2V0QWxsS2V5cy5odG1sIFsgUGFzcyBGYWlsdXJlIF0KIAot
d2Via2l0Lm9yZy9iLzE4OTA5MSBpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2ludGVy
c2VjdGlvbi1vYnNlcnZlci9ib3VuZGluZy1ib3guaHRtbCBbIFBhc3MgRmFpbHVyZSBdCi13ZWJr
aXQub3JnL2IvMTg5MDkxIGltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaW50ZXJzZWN0
aW9uLW9ic2VydmVyL2Rpc3BsYXktbm9uZS5odG1sIFsgUGFzcyBGYWlsdXJlIF0KLXdlYmtpdC5v
cmcvYi8xODkwOTEgaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9pbnRlcnNlY3Rpb24t
b2JzZXJ2ZXIvY29udGFpbmluZy1ibG9jay5odG1sIFsgUGFzcyBGYWlsdXJlIF0KK3dlYmtpdC5v
cmcvYi8xODkwOTEgaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9pbnRlcnNlY3Rpb24t
b2JzZXJ2ZXIvYm91bmRpbmctYm94Lmh0bWwgWyBQYXNzIExlYWsgRmFpbHVyZSBdCit3ZWJraXQu
b3JnL2IvMTg5MDkxIGltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaW50ZXJzZWN0aW9u
LW9ic2VydmVyL2Rpc3BsYXktbm9uZS5odG1sIFsgUGFzcyBMZWFrIEZhaWx1cmUgXQord2Via2l0
Lm9yZy9iLzE4OTA5MSBpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2ludGVyc2VjdGlv
bi1vYnNlcnZlci9jb250YWluaW5nLWJsb2NrLmh0bWwgWyBQYXNzIExlYWsgRmFpbHVyZSBdCiAK
IHdlYmtpdC5vcmcvYi8xODY4NDggaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9GaWxl
QVBJL2Jsb2IvQmxvYi1zbGljZS5odG1sIFsgUGFzcyBGYWlsdXJlIF0KIHdlYmtpdC5vcmcvYi8x
NzkxNzYgc3ZnL3dpY2QvdGVzdC1yaWdodHNpemluZy1hLnhodG1sIFsgUGFzcyBGYWlsdXJlIF0K
QEAgLTIyNDUsMyArMjI0NSwzMzEgQEAgZmFzdC9ncmFkaWVudHMvY29uaWMuaHRtbCBbIFNraXAg
XQogZmFzdC9ncmFkaWVudHMvY29uaWMtb2ZmLWNlbnRlci5odG1sIFsgU2tpcCBdCiBmYXN0L2dy
YWRpZW50cy9jb25pYy1jZW50ZXItb3V0c2lkZS1ib3guaHRtbCBbIFNraXAgXQogZmFzdC9ncmFk
aWVudHMvY29uaWMtZXh0ZW5kZWQtc3RvcHMuaHRtbCBbIFNraXAgXQorCisjIExlYWtzCitmYXN0
L2FuaW1hdGlvbi9yZXF1ZXN0LWFuaW1hdGlvbi1mcmFtZS11bnBhcmVudGVkLWlmcmFtZS1jcmFz
aC5odG1sIFsgTGVhayBQYXNzIF0KK2Zhc3QvY3NzL3VzZXItZHJhZy1ub25lLmh0bWwgWyBMZWFr
IF0KK2Zhc3QvZW5jb2RpbmcvbWFpbHRvLWFsd2F5cy11dGYtOC5odG1sIFsgTGVhayBdCitmYXN0
L2V2ZW50cy9zZWxlY3RzdGFydC1wcmV2ZW50LXNlbGVjdGlvbi1vbi1yaWdodC1jbGljay5odG1s
IFsgTGVhayBdCitmYXN0L2V2ZW50cy9zaGlmdC1kcmFnLXNlbGVjdGlvbi1vbi1saW5rLXRyaWdn
ZXJzLWRyYWctbi1kcm9wLmh0bWwgWyBMZWFrIF0KK2Zhc3QvZXZlbnRzL3RhYmluZGV4LWZvY3Vz
LWNoYWluLmh0bWwgWyBMZWFrIF0KK2Zhc3QvZXZlbnRzL2NvbnRleHQtbm8tZGVzZWxlY3QuaHRt
bCBbIExlYWsgUGFzcyBdCitmYXN0L2V2ZW50cy9tb3VzZWRvd24taW5zaWRlLWRyYWdzdGFydC1z
aG91bGQtbm90LWNhdXNlLWNyYXNoLmh0bWwgWyBMZWFrIFBhc3MgXQorZmFzdC9mb3Jtcy9hcHBl
bmQtY2hpbGRyZW4tZHVyaW5nLWZvcm0tc3VibWlzc2lvbi5odG1sIFsgTGVhayBdCitmYXN0L2Zv
cm1zL2VtcHR5LXRleHRhcmVhLXRvZ2dsZS1kaXNhYmxlZC5odG1sIFsgTGVhayBdCitmYXN0L2Zv
cm1zL21haWx0by9mb3JtZW5jdHlwZS1hdHRyaWJ1dGUtYnV0dG9uLWh0bWwuaHRtbCBbIExlYWsg
XQorZmFzdC9mb3Jtcy9tYWlsdG8vZm9ybWVuY3R5cGUtYXR0cmlidXRlLWlucHV0LTIuaHRtbCBb
IExlYWsgXQorZmFzdC9mb3Jtcy9tYWlsdG8vZm9ybWVuY3R5cGUtYXR0cmlidXRlLWlucHV0LWh0
bWwuaHRtbCBbIExlYWsgXQorZmFzdC9mb3Jtcy90ZXh0YXJlYS1wYXN0ZS1uZXdsaW5lLmh0bWwg
WyBMZWFrIF0KK2Zhc3QvZm9ybXMvdGV4dGFyZWEtdHJhaWxpbmctbmV3bGluZS5odG1sIFsgTGVh
ayBdCitmYXN0L2Zvcm1zL3RleHRmaWVsZC1kcmFnLWludG8tZGlzYWJsZWQuaHRtbCBbIExlYWsg
XQorZmFzdC9oaWRwaS92aWRlby1jb250cm9scy1pbi1oaWRwaS5odG1sIFsgTGVhayBdCitmYXN0
L2hpc3RvcnkvcGFnZS1jYWNoZS1nZW9sb2NhdGlvbi1hY3RpdmUtd2F0Y2hlci5odG1sIFsgTGVh
ayBdCitmYXN0L2ltYWdlcy9kcmFnLXBkZi1hcy1pbWFnZS5odG1sIFsgTGVhayBdCitmYXN0L2xv
YWRlci9wb2xpY3ktZGVsZWdhdGUtYWN0aW9uLWhpdC10ZXN0LXpvb21lZC5odG1sIFsgTGVhayBd
CitmYXN0L3NoYWRvdy1kb20vZnVsbHNjcmVlbi1pbi1zbG90LXdlYmtpdEN1cnJlbnRGdWxsU2Ny
ZWVuRWxlbWVudC5odG1sIFsgTGVhayBdCitmYXN0L3NoYWRvdy1kb20vcG9pbnRlcmxvY2tlbGVt
ZW50LWluLXNsb3QuaHRtbCBbIExlYWsgXQorZmFzdC93b3JrZXJzL3dyYXBwZXItbWFwLWdjLmh0
bWwgWyBQYXNzIExlYWsgXQorZmFzdC9jc3MzLXRleHQvY3NzMy10ZXh0LWRlY29yYXRpb24vcmVw
YWludC91bmRlcmxpbmUtb3V0c2lkZS1vZi1sYXlvdXQtcmVjdC1hbHRlcmVkLmh0bWwgWyBMZWFr
IFBhc3MgXQorZmFzdC9jc3MzLXRleHQvY3NzMy10ZXh0LWRlY29yYXRpb24vcmVwYWludC91bmRl
cmxpbmUtb3V0c2lkZS1vZi1sYXlvdXQtcmVjdC1yZW1vdmVkLmh0bWwgWyBMZWFrIFBhc3MgXQor
ZmFzdC9jc3MzLXRleHQvY3NzMy10ZXh0LWRlY29yYXRpb24vcmVwYWludC91bmRlcmxpbmUtb3V0
c2lkZS1vZi1sYXlvdXQtcmVjdC5odG1sIFsgTGVhayBQYXNzIF0KK2Zhc3QvaGlzdG9yeS9wYWdl
LWNhY2hlLW5vdGlmaWNhdGlvbi1ub24tc3VzcGVuZGFibGUuaHRtbCBbIExlYWsgUGFzcyBdCisK
K2Zhc3Qvc2hhZG93LWRvbS9mdWxsc2NyZWVuLWluLXNoYWRvdy13ZWJraXRDdXJyZW50RnVsbFNj
cmVlbkVsZW1lbnQuaHRtbCBbIExlYWsgUGFzcyBdCisKK2FjY2Vzc2liaWxpdHkvbm90aWZpY2F0
aW9uLWxpc3RlbmVycy5odG1sIFsgTGVhayBdCitjb21wb3NpdGluZy9uby1jb21wb3NpdGluZy13
aGVuLWZ1bGxsLXNjcmVlbi1pcy1wcmVzZW50Lmh0bWwgWyBMZWFrIF0KKword2Via2l0Lm9yZy9i
LzE4OTQzNCBjb250ZW50ZmlsdGVyaW5nL2Jsb2NrLWFmdGVyLWFkZC1kYXRhLXRoZW4tZGVueS11
bmJsb2NrLmh0bWwgWyBMZWFrIF0KK3dlYmtpdC5vcmcvYi8xODk0MzQgY29udGVudGZpbHRlcmlu
Zy9ibG9jay1hZnRlci1hZGQtZGF0YS5odG1sIFsgTGVhayBdCit3ZWJraXQub3JnL2IvMTg5NDM0
IGNvbnRlbnRmaWx0ZXJpbmcvYmxvY2stYWZ0ZXItZmluaXNoZWQtYWRkaW5nLWRhdGEtdGhlbi1k
ZW55LXVuYmxvY2suaHRtbCBbIExlYWsgXQord2Via2l0Lm9yZy9iLzE4OTQzNCBjb250ZW50Zmls
dGVyaW5nL2Jsb2NrLWFmdGVyLWZpbmlzaGVkLWFkZGluZy1kYXRhLmh0bWwgWyBMZWFrIF0KK3dl
YmtpdC5vcmcvYi8xODk0MzQgY29udGVudGZpbHRlcmluZy9ibG9jay1hZnRlci1yZXNwb25zZS10
aGVuLWRlbnktdW5ibG9jay5odG1sIFsgTGVhayBdCit3ZWJraXQub3JnL2IvMTg5NDM0IGNvbnRl
bnRmaWx0ZXJpbmcvYmxvY2stYWZ0ZXItcmVzcG9uc2UuaHRtbCBbIExlYWsgXQord2Via2l0Lm9y
Zy9iLzE4OTQzNCBjb250ZW50ZmlsdGVyaW5nL2Jsb2NrLWFmdGVyLXdpbGwtc2VuZC1yZXF1ZXN0
LXRoZW4tZGVueS11bmJsb2NrLmh0bWwgWyBMZWFrIF0KK3dlYmtpdC5vcmcvYi8xODk0MzQgY29u
dGVudGZpbHRlcmluZy9ibG9jay1hZnRlci13aWxsLXNlbmQtcmVxdWVzdC5odG1sIFsgTGVhayBd
CisKK2RvbS9odG1sL2xldmVsMi9odG1sL0hUTUxBbmNob3JFbGVtZW50MTQuaHRtbCBbIExlYWsg
XQorZG9tL2h0bWwvbGV2ZWwyL2h0bWwvSFRNTElucHV0RWxlbWVudDIwLmh0bWwgWyBMZWFrIF0K
K2RvbS9odG1sL2xldmVsMi9odG1sL0hUTUxTZWxlY3RFbGVtZW50MTQuaHRtbCBbIExlYWsgXQor
ZG9tL2h0bWwvbGV2ZWwyL2h0bWwvSFRNTFRleHRBcmVhRWxlbWVudDE0Lmh0bWwgWyBMZWFrIF0K
K2RvbS9odG1sL2xldmVsMi9odG1sL0hUTUxUZXh0QXJlYUVsZW1lbnQxNS5odG1sIFsgTGVhayBd
CisKK2VkaXRpbmcvaW5zZXJ0aW5nL2luc2VydC1iZy1mb250Lmh0bWwgWyBMZWFrIF0KK2VkaXRp
bmcvaW5zZXJ0aW5nL2luc2VydC1odG1sLWNyYXNoLTAxLmh0bWwgWyBMZWFrIF0KK2VkaXRpbmcv
c2VsZWN0aW9uL2NvbnRleHQtbWVudS10ZXh0LXNlbGVjdGlvbi5odG1sIFsgTGVhayBQYXNzIF0K
K2VkaXRpbmcvcGFzdGVib2FyZC9kcmFnLWxpbmstd2l0aC1kYXRhLXRyYW5zZmVyLWFkZHMtdHJ1
c3RlZC1saW5rLXRvLXBhc3RlYm9hcmQuaHRtbCBbIExlYWsgUGFzcyBdCitlZGl0aW5nL3Bhc3Rl
Ym9hcmQvZHJhZy1kcm9wLWlmcmFtZS1yZWZyZXNoLWNyYXNoLmh0bWwgWyBMZWFrIF0KK2VkaXRp
bmcvcGFzdGVib2FyZC9kcm9wLXRleHQtZXZlbnRzLXNpZGVlZmZlY3QtY3Jhc2guaHRtbCBbIExl
YWsgUGFzcyBdCitlZGl0aW5nL3Bhc3RlYm9hcmQvZHJvcC10ZXh0LWV2ZW50cy1zaWRlZWZmZWN0
Lmh0bWwgWyBMZWFrIF0KK2VkaXRpbmcvc2VsZWN0aW9uL2Jsb2NrcXVvdGUtY3Jhc2guaHRtbCBb
IExlYWsgXQorZWRpdGluZy9zZWxlY3Rpb24vZGVsZXRlRnJvbURvY3VtZW50LWFmdGVyLWRvY3Vt
ZW50LW9wZW4tY3Jhc2guaHRtbCBbIExlYWsgXQorZWRpdGluZy9zZWxlY3Rpb24vZHJhZy1zdGFy
dC1ldmVudC1jbGllbnQteC15Lmh0bWwgWyBMZWFrIFBhc3MgXQorZWRpdGluZy9zZWxlY3Rpb24v
ZW1wdHktY2VsbC1yaWdodC1jbGljay5odG1sIFsgTGVhayBQYXNzIF0KK2VkaXRpbmcvc2VsZWN0
aW9uL21pbmltYWwtdXNlci1zZWxlY3QtY3Jhc2guaHRtbCBbIExlYWsgXQorZWRpdGluZy9zcGVs
bGluZy9jb250ZXh0LW1lbnUtc3VnZ2VzdGlvbnMuaHRtbCBbIExlYWsgUGFzcyBdCitlZGl0aW5n
L3NwZWxsaW5nL3NwZWxsY2hlY2stYXN5bmMtcmVtb3ZlLWZyYW1lLmh0bWwgWyBMZWFrIF0KK2Vk
aXRpbmcvc3BlbGxpbmcvc3BlbGxjaGVjay1pbnB1dC1zZWFyY2gtY3Jhc2guaHRtbCBbIExlYWsg
XQorZWRpdGluZy9zcGVsbGluZy9zcGVsbGluZy1tYXJrZXItZGVzY3JpcHRpb24uaHRtbCBbIExl
YWsgXQorCitmdWxsc2NyZWVuL3ZpZGVvLXNwZWNpZmllZC1zaXplLmh0bWwgWyBMZWFrIF0KK2Z1
bGxzY3JlZW4vdmlkZW8tY29udHJvbHMtdGltZWxpbmUuaHRtbCBbIExlYWsgUGFzcyBdCitmdWxs
c2NyZWVuL3ZpZGVvLWNvbnRyb2xzLW92ZXJyaWRlLmh0bWwgWyBMZWFrIFBhc3MgXQorCitodHRw
L3Rlc3RzL3ByZWNvbm5lY3QvbGluay1oZWFkZXItcmVsLXByZWNvbm5lY3QtaHR0cC5odG1sIFsg
TGVhayBdCitodHRwL3Rlc3RzL3ByZWNvbm5lY3QvbGluay1yZWwtcHJlY29ubmVjdC1odHRwLmh0
bWwgWyBMZWFrIF0KK2h0dHAvdGVzdHMvcHJlY29ubmVjdC9saW5rLXJlbC1wcmVjb25uZWN0LWh0
dHBzLmh0bWwgWyBMZWFrIF0KKworaHR0cC90ZXN0cy9wb2ludGVyLWxvY2svcmVxdWVzdFBvaW50
ZXJMb2NrLWNhbi1ub3QtdHJhbnNmZXItYmV0d2Vlbi1kb2N1bWVudHMuaHRtbCBbIExlYWsgXQor
aHR0cC93cHQvYmVhY29uL2JlYWNvbi1hc3luYy1lcnJvci1sb2dnaW5nLmh0bWwgWyBMZWFrIF0K
K2h0dHAvdGVzdHMvY29udGVudGZpbHRlcmluZy9ibG9jay1hZnRlci1yZWRpcmVjdC5odG1sIFsg
TGVhayBdCitodHRwL3Rlc3RzL2Z1bGxzY3JlZW4vZnVsbHNjcmVlbmVsZW1lbnQtc2FtZS1vcmln
aW4uaHRtbCBbIExlYWsgXQoraHR0cC90ZXN0cy9tZWRpYS9obHMvdmlkZW8tZHVyYXRpb24tYWNj
ZXNzaWJpbGl0eS5odG1sIFsgTGVhayBdCisKK2h0dHAvdGVzdHMvc2VjdXJpdHkvY29udGVudFNl
Y3VyaXR5UG9saWN5L3VzZXJBZ2VudFNoYWRvd0RPTS92aWRlby1jb250cm9scy1hbGxvd2VkLmh0
bWwgWyBMZWFrIF0KKworaW1wb3J0ZWQvYmxpbmsvY29tcG9zaXRpbmcvZHJhZy1vcGFjaXR5LWNy
YXNoLmh0bWwgWyBMZWFrIF0KKworaW1wb3J0ZWQvYmxpbmsvZWRpdGluZy9hcHBseS1pbmxpbmUt
c3R5bGUtdG8tZWxlbWVudC13aXRoLW5vLXJlbmRlcmVyLWNyYXNoLmh0bWwgWyBMZWFrIF0KK2lt
cG9ydGVkL2JsaW5rL2VkaXRpbmcvZXhlY0NvbW1hbmQvZm9ybWF0LWJsb2NrLXJlbW92ZXMtZGVz
dGluYXRpb24tY3Jhc2guaHRtbCBbIExlYWsgXQoraW1wb3J0ZWQvYmxpbmsvZWRpdGluZy90ZXh0
LWl0ZXJhdG9yL3JlYWQtcGFzdC1jbG9uZWQtZmlyc3QtbGV0dGVyLmh0bWwgWyBMZWFrIF0KKwor
aW1wb3J0ZWQvYmxpbmsvZmFzdC9kb20vZGlzY2FyZC1zdmctZm9udC1mYWNlLWNyYXNoLnN2ZyBb
IExlYWsgXQoraW1wb3J0ZWQvYmxpbmsvZmFzdC9kb20vcmVtb3ZlLXN2Zy1mb250LWZhY2UtZWxl
bWVudC1jcmFzaC54aHRtbCBbIExlYWsgXQoraW1wb3J0ZWQvYmxpbmsvZmFzdC9ldmVudHMvZHJh
Zy1sZWFrLWRvY3VtZW50Lmh0bWwgWyBMZWFrIF0KK2ltcG9ydGVkL2JsaW5rL2Zhc3QvZm9ybXMv
dGltZS1tdWx0aXBsZS1maWVsZHMvdGltZS1tdWx0aXBsZS1maWVsZHMtY3Jhc2gtYnktZm9jdXMt
b24tdW5sb2FkLmh0bWwgWyBMZWFrIF0KKworaW1wb3J0ZWQvYmxpbmsvc3RvcmFnZS9pbmRleGVk
ZGIvYmxvYi12YWxpZC1iZWZvcmUtY29tbWl0Lmh0bWwgWyBMZWFrIF0KKworaW1wb3J0ZWQvbW96
aWxsYS9jc3MtYW5pbWF0aW9ucy90ZXN0X2FuaW1hdGlvbi1jYW5jZWwuaHRtbCBbIExlYWsgXQor
aW1wb3J0ZWQvbW96aWxsYS9jc3MtYW5pbWF0aW9ucy90ZXN0X2FuaW1hdGlvbi1yZWFkeS5odG1s
IFsgTGVhayBdCitpbXBvcnRlZC9tb3ppbGxhL2Nzcy1hbmltYXRpb25zL3Rlc3RfYW5pbWF0aW9u
LXJldmVyc2UuaHRtbCBbIExlYWsgXQoraW1wb3J0ZWQvbW96aWxsYS9jc3MtdHJhbnNpdGlvbnMv
dGVzdF9hbmltYXRpb24tcmVhZHkuaHRtbCBbIExlYWsgXQoraW1wb3J0ZWQvbW96aWxsYS9jc3Mt
dHJhbnNpdGlvbnMvdGVzdF9lbGVtZW50LWdldC1hbmltYXRpb25zLmh0bWwgWyBMZWFrIF0KKwor
d2Via2l0Lm9yZy9iLzE4OTQzNSBpbXBvcnRlZC93M2MvSW5kZXhlZERCLXByaXZhdGUtYnJvd3Np
bmcvaWRiY3Vyc29yX2RlbGV0ZV9vYmplY3RzdG9yZTMuaHRtbCBbIExlYWsgXQord2Via2l0Lm9y
Zy9iLzE4OTQzNSBpbXBvcnRlZC93M2MvSW5kZXhlZERCLXByaXZhdGUtYnJvd3NpbmcvaWRiY3Vy
c29yX3VwZGF0ZV9pbmRleDMuaHRtbCBbIExlYWsgXQord2Via2l0Lm9yZy9iLzE4OTQzNSBpbXBv
cnRlZC93M2MvSW5kZXhlZERCLXByaXZhdGUtYnJvd3NpbmcvaWRiY3Vyc29yX3VwZGF0ZV9vYmpl
Y3RzdG9yZTMuaHRtbCBbIExlYWsgXQord2Via2l0Lm9yZy9iLzE4OTQzNSBpbXBvcnRlZC93M2Mv
SW5kZXhlZERCLXByaXZhdGUtYnJvd3NpbmcvdmFsdWUuaHRtbCBbIExlYWsgXQord2Via2l0Lm9y
Zy9iLzE4OTQzNSBpbXBvcnRlZC93M2MvSW5kZXhlZERCLXByaXZhdGUtYnJvd3NpbmcvdmFsdWVf
cmVjdXJzaXZlLmh0bWwgWyBMZWFrIF0KKword2Via2l0Lm9yZy9iLzE4OTQzNSBpbXBvcnRlZC93
M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL0luZGV4ZWREQi9pZGItYmluYXJ5LWtleS1yb3VuZHRyaXAu
aHRtIFsgTGVhayBdCit3ZWJraXQub3JnL2IvMTg5NDM1IGltcG9ydGVkL3czYy93ZWItcGxhdGZv
cm0tdGVzdHMvSW5kZXhlZERCL2lkYmN1cnNvci1jb250aW51ZVByaW1hcnlLZXktZXhjZXB0aW9u
LW9yZGVyLmh0bSBbIExlYWsgXQord2Via2l0Lm9yZy9iLzE4OTQzNSBpbXBvcnRlZC93M2Mvd2Vi
LXBsYXRmb3JtLXRlc3RzL0luZGV4ZWREQi9pZGJjdXJzb3ItY29udGludWVQcmltYXJ5S2V5Lmh0
bSBbIExlYWsgXQord2Via2l0Lm9yZy9iLzE4OTQzNSBpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3Jt
LXRlc3RzL0luZGV4ZWREQi9pZGJjdXJzb3JfZGVsZXRlX2luZGV4My5odG0gWyBMZWFrIF0KK3dl
YmtpdC5vcmcvYi8xODk0MzUgaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9JbmRleGVk
REIvaWRiY3Vyc29yX2RlbGV0ZV9vYmplY3RzdG9yZTMuaHRtIFsgTGVhayBdCit3ZWJraXQub3Jn
L2IvMTg5NDM1IGltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvSW5kZXhlZERCL2lkYmN1
cnNvcl91cGRhdGVfaW5kZXgzLmh0bSBbIExlYWsgXQord2Via2l0Lm9yZy9iLzE4OTQzNSBpbXBv
cnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL0luZGV4ZWREQi9pZGJjdXJzb3JfdXBkYXRlX29i
amVjdHN0b3JlMy5odG0gWyBMZWFrIF0KK3dlYmtpdC5vcmcvYi8xODk0MzUgaW1wb3J0ZWQvdzNj
L3dlYi1wbGF0Zm9ybS10ZXN0cy9JbmRleGVkREIvaWRiaW5kZXgtcmVuYW1lLWFib3J0Lmh0bWwg
WyBMZWFrIF0KK3dlYmtpdC5vcmcvYi8xODk0MzUgaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10
ZXN0cy9JbmRleGVkREIvaWRiaW5kZXgtcmVuYW1lLWVycm9ycy5odG1sIFsgTGVhayBdCit3ZWJr
aXQub3JnL2IvMTg5NDM1IGltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvSW5kZXhlZERC
L2lkYmluZGV4LXJlbmFtZS5odG1sIFsgTGVhayBdCit3ZWJraXQub3JnL2IvMTg5NDM1IGltcG9y
dGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvSW5kZXhlZERCL2lkYmluZGV4X2dldEFsbC5odG1s
IFsgTGVhayBdCit3ZWJraXQub3JnL2IvMTg5NDM1IGltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0t
dGVzdHMvSW5kZXhlZERCL2lkYm9iamVjdHN0b3JlLXJlbmFtZS1hYm9ydC5odG1sIFsgTGVhayBd
Cit3ZWJraXQub3JnL2IvMTg5NDM1IGltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvSW5k
ZXhlZERCL2lkYm9iamVjdHN0b3JlLXJlbmFtZS1lcnJvcnMuaHRtbCBbIExlYWsgXQord2Via2l0
Lm9yZy9iLzE4OTQzNSBpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL0luZGV4ZWREQi9p
ZGJvYmplY3RzdG9yZS1yZW5hbWUtc3RvcmUuaHRtbCBbIExlYWsgXQord2Via2l0Lm9yZy9iLzE4
OTQzNSBpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL0luZGV4ZWREQi9rZXktY29udmVy
c2lvbi1leGNlcHRpb25zLmh0bSBbIExlYWsgXQord2Via2l0Lm9yZy9iLzE4OTQzNSBpbXBvcnRl
ZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL0luZGV4ZWREQi9rZXlwYXRoLXNwZWNpYWwtaWRlbnRp
ZmllcnMuaHRtIFsgTGVhayBdCit3ZWJraXQub3JnL2IvMTg5NDM1IGltcG9ydGVkL3czYy93ZWIt
cGxhdGZvcm0tdGVzdHMvSW5kZXhlZERCL3JlcXVlc3QtYWJvcnQtb3JkZXJpbmcuaHRtbCBbIExl
YWsgXQord2Via2l0Lm9yZy9iLzE4OTQzNSBpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3Rz
L0luZGV4ZWREQi9yZXF1ZXN0LWV2ZW50LW9yZGVyaW5nLmh0bWwgWyBMZWFrIF0KKword2Via2l0
Lm9yZy9iLzE4OTQzNSBpbXBvcnRlZC93M2MvSW5kZXhlZERCLXByaXZhdGUtYnJvd3NpbmcvaWRi
Y3Vyc29yX2RlbGV0ZV9pbmRleDMuaHRtbCBbIFBhc3MgTGVhayBdCit3ZWJraXQub3JnL2IvMTg5
NDM1IGltcG9ydGVkL3czYy9JbmRleGVkREItcHJpdmF0ZS1icm93c2luZy90cmFuc2FjdGlvbi1y
ZXF1ZXN0cXVldWUuaHRtbCBbIFBhc3MgTGVhayBdCisKK3dlYmtpdC5vcmcvYi8xODk0MzUgc3Rv
cmFnZS9pbmRleGVkZGIvY2xvc2VkLWN1cnNvci1wcml2YXRlLmh0bWwgWyBMZWFrIF0KK3dlYmtp
dC5vcmcvYi8xODk0MzUgc3RvcmFnZS9pbmRleGVkZGIvY2xvc2VkLWN1cnNvci5odG1sIFsgTGVh
ayBdCit3ZWJraXQub3JnL2IvMTg5NDM1IHN0b3JhZ2UvaW5kZXhlZGRiL2NyZWF0ZS1vYmplY3Qt
c3RvcmUtb3B0aW9ucy1wcml2YXRlLmh0bWwgWyBMZWFrIF0KK3dlYmtpdC5vcmcvYi8xODk0MzUg
c3RvcmFnZS9pbmRleGVkZGIvY3JlYXRlLW9iamVjdC1zdG9yZS1vcHRpb25zLmh0bWwgWyBMZWFr
IF0KK3dlYmtpdC5vcmcvYi8xODk0MzUgc3RvcmFnZS9pbmRleGVkZGIvY3Vyc29yLXByb3BlcnRp
ZXMtcHJpdmF0ZS5odG1sIFsgTGVhayBdCit3ZWJraXQub3JnL2IvMTg5NDM1IHN0b3JhZ2UvaW5k
ZXhlZGRiL2N1cnNvci1wcm9wZXJ0aWVzLmh0bWwgWyBMZWFrIF0KK3dlYmtpdC5vcmcvYi8xODk0
MzUgc3RvcmFnZS9pbmRleGVkZGIvY3Vyc29yLXZhbHVlLXByaXZhdGUuaHRtbCBbIExlYWsgXQor
d2Via2l0Lm9yZy9iLzE4OTQzNSBzdG9yYWdlL2luZGV4ZWRkYi9jdXJzb3ItdmFsdWUuaHRtbCBb
IExlYWsgXQord2Via2l0Lm9yZy9iLzE4OTQzNSBzdG9yYWdlL2luZGV4ZWRkYi9kZWxldGVkLW9i
amVjdHMtcHJpdmF0ZS5odG1sIFsgTGVhayBdCit3ZWJraXQub3JnL2IvMTg5NDM1IHN0b3JhZ2Uv
aW5kZXhlZGRiL2RlbGV0ZWQtb2JqZWN0cy5odG1sIFsgTGVhayBdCit3ZWJraXQub3JnL2IvMTg5
NDM1IHN0b3JhZ2UvaW5kZXhlZGRiL2V4Y2VwdGlvbnMtcHJpdmF0ZS5odG1sIFsgTGVhayBdCit3
ZWJraXQub3JnL2IvMTg5NDM1IHN0b3JhZ2UvaW5kZXhlZGRiL2V4Y2VwdGlvbnMuaHRtbCBbIExl
YWsgXQord2Via2l0Lm9yZy9iLzE4OTQzNSBzdG9yYWdlL2luZGV4ZWRkYi9rZXktdHlwZS1hcnJh
eS1wcml2YXRlLmh0bWwgWyBMZWFrIF0KK3dlYmtpdC5vcmcvYi8xODk0MzUgc3RvcmFnZS9pbmRl
eGVkZGIva2V5LXR5cGUtYXJyYXkuaHRtbCBbIExlYWsgXQord2Via2l0Lm9yZy9iLzE4OTQzNSBz
dG9yYWdlL2luZGV4ZWRkYi9rZXlwYXRoLWFycmF5cy1wcml2YXRlLmh0bWwgWyBMZWFrIF0KK3dl
YmtpdC5vcmcvYi8xODk0MzUgc3RvcmFnZS9pbmRleGVkZGIva2V5cGF0aC1hcnJheXMuaHRtbCBb
IExlYWsgXQord2Via2l0Lm9yZy9iLzE4OTQzNSBzdG9yYWdlL2luZGV4ZWRkYi9rZXlwYXRoLWZl
dGNoLWtleS1wcml2YXRlLmh0bWwgWyBMZWFrIF0KK3dlYmtpdC5vcmcvYi8xODk0MzUgc3RvcmFn
ZS9pbmRleGVkZGIva2V5cGF0aC1mZXRjaC1rZXkuaHRtbCBbIExlYWsgXQord2Via2l0Lm9yZy9i
LzE4OTQzNSBzdG9yYWdlL2luZGV4ZWRkYi9tb2Rlcm4vYmxvYi1zdmctaW1hZ2UuaHRtbCBbIExl
YWsgXQord2Via2l0Lm9yZy9iLzE4OTQzNSBzdG9yYWdlL2luZGV4ZWRkYi9tb2Rlcm4vaWRiY3Vy
c29yLWNvbnRpbnVlLXByaW1hcnkta2V5LTEtcHJpdmF0ZS5odG1sIFsgTGVhayBdCit3ZWJraXQu
b3JnL2IvMTg5NDM1IHN0b3JhZ2UvaW5kZXhlZGRiL21vZGVybi9pZGJjdXJzb3ItY29udGludWUt
cHJpbWFyeS1rZXktMS5odG1sIFsgTGVhayBdCit3ZWJraXQub3JnL2IvMTg5NDM1IHN0b3JhZ2Uv
aW5kZXhlZGRiL21vZGVybi9pZGJpbmRleC1nZXRhbGwtMS1wcml2YXRlLmh0bWwgWyBMZWFrIF0K
K3dlYmtpdC5vcmcvYi8xODk0MzUgc3RvcmFnZS9pbmRleGVkZGIvbW9kZXJuL2lkYmluZGV4LWdl
dGFsbC0xLmh0bWwgWyBMZWFrIF0KK3dlYmtpdC5vcmcvYi8xODk0MzUgc3RvcmFnZS9pbmRleGVk
ZGIvbW9kZXJuL2lkYmluZGV4LWdldGFsbGtleXMtMS1wcml2YXRlLmh0bWwgWyBMZWFrIF0KK3dl
YmtpdC5vcmcvYi8xODk0MzUgc3RvcmFnZS9pbmRleGVkZGIvbW9kZXJuL2lkYmluZGV4LWdldGFs
bGtleXMtMS5odG1sIFsgTGVhayBdCit3ZWJraXQub3JnL2IvMTg5NDM1IHN0b3JhZ2UvaW5kZXhl
ZGRiL21vZGVybi9pZGJvYmplY3RzdG9yZS1nZXRhbGwtMS1wcml2YXRlLmh0bWwgWyBMZWFrIF0K
K3dlYmtpdC5vcmcvYi8xODk0MzUgc3RvcmFnZS9pbmRleGVkZGIvbW9kZXJuL2lkYm9iamVjdHN0
b3JlLWdldGFsbC0xLmh0bWwgWyBMZWFrIF0KK3dlYmtpdC5vcmcvYi8xODk0MzUgc3RvcmFnZS9p
bmRleGVkZGIvbW9kZXJuL2lkYm9iamVjdHN0b3JlLWdldGFsbGtleXMtMS1wcml2YXRlLmh0bWwg
WyBMZWFrIF0KK3dlYmtpdC5vcmcvYi8xODk0MzUgc3RvcmFnZS9pbmRleGVkZGIvbW9kZXJuL2lk
Ym9iamVjdHN0b3JlLWdldGFsbGtleXMtMS5odG1sIFsgTGVhayBdCit3ZWJraXQub3JnL2IvMTg5
NDM1IHN0b3JhZ2UvaW5kZXhlZGRiL21vemlsbGEvYXV0b2luY3JlbWVudC1pbmRleGVzLXByaXZh
dGUuaHRtbCBbIExlYWsgXQord2Via2l0Lm9yZy9iLzE4OTQzNSBzdG9yYWdlL2luZGV4ZWRkYi9t
b3ppbGxhL2F1dG9pbmNyZW1lbnQtaW5kZXhlcy5odG1sIFsgTGVhayBdCit3ZWJraXQub3JnL2Iv
MTg5NDM1IHN0b3JhZ2UvaW5kZXhlZGRiL21vemlsbGEvY3Vyc29yLXVwZGF0ZS11cGRhdGVzLWlu
ZGV4ZXMtcHJpdmF0ZS5odG1sIFsgTGVhayBdCit3ZWJraXQub3JnL2IvMTg5NDM1IHN0b3JhZ2Uv
aW5kZXhlZGRiL21vemlsbGEvY3Vyc29yLXVwZGF0ZS11cGRhdGVzLWluZGV4ZXMuaHRtbCBbIExl
YWsgXQord2Via2l0Lm9yZy9iLzE4OTQzNSBzdG9yYWdlL2luZGV4ZWRkYi9tb3ppbGxhL29iamVj
dC1jdXJzb3JzLXByaXZhdGUuaHRtbCBbIExlYWsgXQord2Via2l0Lm9yZy9iLzE4OTQzNSBzdG9y
YWdlL2luZGV4ZWRkYi9tb3ppbGxhL29iamVjdC1jdXJzb3JzLmh0bWwgWyBMZWFrIF0KK3dlYmtp
dC5vcmcvYi8xODk0MzUgc3RvcmFnZS9pbmRleGVkZGIvbW96aWxsYS9vYmplY3Qtc3RvcmUtaW5s
aW5lLWF1dG9pbmNyZW1lbnQta2V5LWFkZGVkLW9uLXB1dC1wcml2YXRlLmh0bWwgWyBMZWFrIF0K
K3dlYmtpdC5vcmcvYi8xODk0MzUgc3RvcmFnZS9pbmRleGVkZGIvbW96aWxsYS9vYmplY3Qtc3Rv
cmUtaW5saW5lLWF1dG9pbmNyZW1lbnQta2V5LWFkZGVkLW9uLXB1dC5odG1sIFsgTGVhayBdCit3
ZWJraXQub3JnL2IvMTg5NDM1IHN0b3JhZ2UvaW5kZXhlZGRiL21vemlsbGEvcmVhZHlTdGF0ZS1w
cml2YXRlLmh0bWwgWyBMZWFrIF0KK3dlYmtpdC5vcmcvYi8xODk0MzUgc3RvcmFnZS9pbmRleGVk
ZGIvbW96aWxsYS9yZWFkeVN0YXRlLmh0bWwgWyBMZWFrIF0KK3dlYmtpdC5vcmcvYi8xODk0MzUg
c3RvcmFnZS9pbmRleGVkZGIvb2JqZWN0c3RvcmUtYXV0b2luY3JlbWVudC1wcml2YXRlLmh0bWwg
WyBMZWFrIF0KK3dlYmtpdC5vcmcvYi8xODk0MzUgc3RvcmFnZS9pbmRleGVkZGIvb2JqZWN0c3Rv
cmUtYXV0b2luY3JlbWVudC5odG1sIFsgTGVhayBdCit3ZWJraXQub3JnL2IvMTg5NDM1IHN0b3Jh
Z2UvaW5kZXhlZGRiL29wdGlvbmFsLWFyZ3VtZW50cy1wcml2YXRlLmh0bWwgWyBMZWFrIF0KK3dl
YmtpdC5vcmcvYi8xODk0MzUgc3RvcmFnZS9pbmRleGVkZGIvb3B0aW9uYWwtYXJndW1lbnRzLmh0
bWwgWyBMZWFrIF0KK3dlYmtpdC5vcmcvYi8xODk0MzUgc3RvcmFnZS9pbmRleGVkZGIvcHJlZmV0
Y2gtYnVnZml4LTEwODA3MS1wcml2YXRlLmh0bWwgWyBMZWFrIF0KK3dlYmtpdC5vcmcvYi8xODk0
MzUgc3RvcmFnZS9pbmRleGVkZGIvcHJlZmV0Y2gtYnVnZml4LTEwODA3MS5odG1sIFsgTGVhayBd
Cit3ZWJraXQub3JnL2IvMTg5NDM1IHN0b3JhZ2UvaW5kZXhlZGRiL3JlYWRvbmx5LXByaXZhdGUu
aHRtbCBbIExlYWsgXQord2Via2l0Lm9yZy9iLzE4OTQzNSBzdG9yYWdlL2luZGV4ZWRkYi9yZWFk
b25seS5odG1sIFsgTGVhayBdCisKK3dlYmtpdC5vcmcvYi8xODk0MzUgaW1wb3J0ZWQvdzNjL3dl
Yi1wbGF0Zm9ybS10ZXN0cy9JbmRleGVkREIvdmFsdWUuaHRtIFsgUGFzcyBMZWFrIF0KK3dlYmtp
dC5vcmcvYi8xODk0MzUgaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9JbmRleGVkREIv
dmFsdWVfcmVjdXJzaXZlLmh0bSBbIFBhc3MgTGVhayBdCisKK2ltcG9ydGVkL3czYy93ZWItcGxh
dGZvcm0tdGVzdHMvaHRtbC9zZW1hbnRpY3Mvc2NyaXB0aW5nLTEvdGhlLXRlbXBsYXRlLWVsZW1l
bnQvdGVtcGxhdGUtZWxlbWVudC90ZW1wbGF0ZS1jb250ZW50LWhpZXJhcmN5Lmh0bWwgWyBMZWFr
IF0KKworaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9pbnRlcnNlY3Rpb24tb2JzZXJ2
ZXIvb2JzZXJ2ZXItZXhjZXB0aW9ucy5odG1sIFsgUGFzcyBMZWFrIF0KKworaW1wb3J0ZWQvdzNj
L3dlYi1wbGF0Zm9ybS10ZXN0cy93ZWJhdWRpby90aGUtYXVkaW8tYXBpL3RoZS1nYWlubm9kZS1p
bnRlcmZhY2UvdGVzdC1nYWlubm9kZS5odG1sIFsgUGFzcyBMZWFrIF0KKworaW50ZXJzZWN0aW9u
LW9ic2VydmVyL3Jvb3QtZWxlbWVudC1kZWxldGVkLmh0bWwgWyBMZWFrIF0KK2ludGVyc2VjdGlv
bi1vYnNlcnZlci9yb290LWVsZW1lbnQtbW92ZWQuaHRtbCBbIExlYWsgXQorCitpbXBvcnRlZC93
M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3dlYi1hbmltYXRpb25zL2ludGVyZmFjZXMvQW5pbWF0YWJs
ZS9hbmltYXRlLW5vLWJyb3dzaW5nLWNvbnRleHQuaHRtbCBbIExlYWsgXQorCitpbnNwZWN0b3Iv
Y3NzL2FkZC1ydWxlLmh0bWwgWyBMZWFrIF0KK2luc3BlY3Rvci9jc3Mvc2VsZWN0b3Itc3BlY2lm
aWNpdHkuaHRtbCBbIExlYWsgXQoraW5zcGVjdG9yL2Nzcy9zaGFkb3ctc2NvcGVkLXN0eWxlLmh0
bWwgWyBMZWFrIF0KK2luc3BlY3Rvci9jc3Mvc3R5bGVzaGVldC1ldmVudHMtaW5zcGVjdG9yLXN0
eWxlc2hlZXQuaHRtbCBbIExlYWsgXQoraW5zcGVjdG9yL2Nzcy9zdHlsZXNoZWV0LXdpdGgtbXV0
YXRpb25zLmh0bWwgWyBMZWFrIF0KK2luc3BlY3Rvci9kb20vaGlnaGxpZ2h0LXNoYXBlLW91dHNp
ZGUuaHRtbCBbIExlYWsgXQorCitodHRwL3Rlc3RzL21lZGlhL21vZGVybi1tZWRpYS1jb250cm9s
cy9tYWNvcy1mdWxsc2NyZWVuLW1lZGlhLWNvbnRyb2xzL21hY29zLWZ1bGxzY3JlZW4tbWVkaWEt
Y29udHJvbHMtbGl2ZS1icm9hZGNhc3QuaHRtbCBbIExlYWsgXQorCit3ZWJraXQub3JnL2IvMTg5
NDM3IG1lZGlhL21vZGVybi1tZWRpYS1jb250cm9scy9jb250cm9scy12aXNpYmlsaXR5LXN1cHBv
cnQvY29udHJvbHMtdmlzaWJpbGl0eS1zdXBwb3J0LWNvbnRyb2xzLW9mZi1hdWRpby5odG1sIFsg
TGVhayBQYXNzIF0KK3dlYmtpdC5vcmcvYi8xODk0MzcgbWVkaWEvbW9kZXJuLW1lZGlhLWNvbnRy
b2xzL2NvbnRyb2xzLXZpc2liaWxpdHktc3VwcG9ydC9jb250cm9scy12aXNpYmlsaXR5LXN1cHBv
cnQtY29udHJvbHMtb24tYXVkaW8uaHRtbCBbIExlYWsgUGFzcyBdCit3ZWJraXQub3JnL2IvMTg5
NDM3IG1lZGlhL21vZGVybi1tZWRpYS1jb250cm9scy9jb250cm9scy12aXNpYmlsaXR5LXN1cHBv
cnQvY29udHJvbHMtdmlzaWJpbGl0eS1zdXBwb3J0LWZ1bGxzY3JlZW4tb24tcGFyZW50LWVsZW1l
bnQuaHRtbCBbIExlYWsgUGFzcyBdCit3ZWJraXQub3JnL2IvMTg5NDM3IG1lZGlhL21vZGVybi1t
ZWRpYS1jb250cm9scy9jc3MvcG9pbnRlci1ldmVudHMtbm9uZS5odG1sIFsgTGVhayBdCit3ZWJr
aXQub3JnL2IvMTg5NDM3IG1lZGlhL21vZGVybi1tZWRpYS1jb250cm9scy9jc3Mvd2Via2l0LWN1
cnNvci12aXNpYmlsaXR5LWF1dG8taGlkZS5odG1sIFsgTGVhayBdCit3ZWJraXQub3JnL2IvMTg5
NDM3IG1lZGlhL21vZGVybi1tZWRpYS1jb250cm9scy9mdWxsc2NyZWVuLXN1cHBvcnQvZnVsbHNj
cmVlbi1zdXBwb3J0LWRpc2FibGVkLXZpZGVvLXdpdGgtYXVkaW8tdHJhY2tzLW9ubHkuaHRtbCBb
IExlYWsgXQord2Via2l0Lm9yZy9iLzE4OTQzNyBtZWRpYS9tb2Rlcm4tbWVkaWEtY29udHJvbHMv
ZnVsbHNjcmVlbi1zdXBwb3J0L2Z1bGxzY3JlZW4tc3VwcG9ydC1wcmVzcy5odG1sIFsgTGVhayBd
Cit3ZWJraXQub3JnL2IvMTg5NDM3IG1lZGlhL21vZGVybi1tZWRpYS1jb250cm9scy9tYWNvcy1m
dWxsc2NyZWVuLW1lZGlhLWNvbnRyb2xzL21hY29zLWZ1bGxzY3JlZW4tbWVkaWEtY29udHJvbHMt
ZHJhZy1pcy1wcmV2ZW50ZWQtb3Zlci1idXR0b24uaHRtbCBbIExlYWsgXQord2Via2l0Lm9yZy9i
LzE4OTQzNyBtZWRpYS9tb2Rlcm4tbWVkaWEtY29udHJvbHMvbWFjb3MtZnVsbHNjcmVlbi1tZWRp
YS1jb250cm9scy9tYWNvcy1mdWxsc2NyZWVuLW1lZGlhLWNvbnRyb2xzLWRyYWcuaHRtbCBbIExl
YWsgXQord2Via2l0Lm9yZy9iLzE4OTQzNyBtZWRpYS9tb2Rlcm4tbWVkaWEtY29udHJvbHMvbWVk
aWEtY29udHJvbGxlci9tZWRpYS1jb250cm9sbGVyLWNsaWNrLW9uLXZpZGVvLWJhY2tncm91bmQt
c2hvdWxkLXBhdXNlLWZ1bGxzY3JlZW4uaHRtbCBbIExlYWsgUGFzcyBdCit3ZWJraXQub3JnL2Iv
MTg5NDM3IG1lZGlhL21vZGVybi1tZWRpYS1jb250cm9scy9tZWRpYS1jb250cm9sbGVyL21lZGlh
LWNvbnRyb2xsZXItY2xpY2stb24tdmlkZW8tYmFja2dyb3VuZC10by1kaXNtaXNzLXRyYWNrcy1w
YW5lbC1zaG91bGQtbm90LXRvZ2dsZS1wbGF5YmFjay5odG1sIFsgTGVhayBQYXNzIF0KK3dlYmtp
dC5vcmcvYi8xODk0MzcgbWVkaWEvbW9kZXJuLW1lZGlhLWNvbnRyb2xzL21lZGlhLWNvbnRyb2xs
ZXIvbWVkaWEtY29udHJvbGxlci1mdWxsc2NyZWVuLWx0ci5odG1sIFsgTGVhayBQYXNzIF0KK3dl
YmtpdC5vcmcvYi8xODk0MzcgbWVkaWEvbW9kZXJuLW1lZGlhLWNvbnRyb2xzL21lZGlhLWNvbnRy
b2xsZXIvbWVkaWEtY29udHJvbGxlci1zcGFjZS1iYXItdG9nZ2xlLXBsYXliYWNrLmh0bWwgWyBM
ZWFrIF0KK3dlYmtpdC5vcmcvYi8xODk0MzcgbWVkaWEvbW9kZXJuLW1lZGlhLWNvbnRyb2xzL3Bs
YWNhcmQtc3VwcG9ydC9wbGFjYXJkLXN1cHBvcnQtYWlycGxheS1mdWxsc2NyZWVuLmh0bWwgWyBM
ZWFrIF0KK3dlYmtpdC5vcmcvYi8xODk0MzcgbWVkaWEvbW9kZXJuLW1lZGlhLWNvbnRyb2xzL3Bs
YWNhcmQtc3VwcG9ydC9wbGFjYXJkLXN1cHBvcnQtcGlwLmh0bWwgWyBMZWFrIF0KK3dlYmtpdC5v
cmcvYi8xODk0MzcgbWVkaWEvbW9kZXJuLW1lZGlhLWNvbnRyb2xzL3NlZWstZm9yd2FyZC1zdXBw
b3J0L3NlZWstZm9yd2FyZC1zdXBwb3J0Lmh0bWwgWyBMZWFrIF0KK3dlYmtpdC5vcmcvYi8xODk0
MzcgbWVkaWEvbW9kZXJuLW1lZGlhLWNvbnRyb2xzL3N0YXJ0LXN1cHBvcnQvc3RhcnQtc3VwcG9y
dC1hdWRpby5odG1sIFsgTGVhayBQYXNzIF0KK3dlYmtpdC5vcmcvYi8xODk0MzcgbWVkaWEvbW9k
ZXJuLW1lZGlhLWNvbnRyb2xzL3N0YXJ0LXN1cHBvcnQvc3RhcnQtc3VwcG9ydC1jbGljay10by1z
dGFydC5odG1sIFsgTGVhayBdCit3ZWJraXQub3JnL2IvMTg5NDM3IG1lZGlhL21vZGVybi1tZWRp
YS1jb250cm9scy90cmFja3MtcGFuZWwvdHJhY2tzLXBhbmVsLWNvbnRyb2xzLWJhci1yZW1haW5z
LXZpc2libGUtYWZ0ZXItY2xpY2tpbmctb3Zlci1pdC5odG1sIFsgTGVhayBdCit3ZWJraXQub3Jn
L2IvMTg5NDM3IG1lZGlhL21vZGVybi1tZWRpYS1jb250cm9scy90cmFja3Mtc3VwcG9ydC90cmFj
a3Mtc3VwcG9ydC1hdWRpby10cmFja3MuaHRtbCBbIExlYWsgUGFzcyBdCit3ZWJraXQub3JnL2Iv
MTg5NDM3IG1lZGlhL21vZGVybi1tZWRpYS1jb250cm9scy90cmFja3Mtc3VwcG9ydC90cmFja3Mt
c3VwcG9ydC1hdXRvLXRleHQtdHJhY2suaHRtbCBbIExlYWsgUGFzcyBdCit3ZWJraXQub3JnL2Iv
MTg5NDM3IG1lZGlhL21vZGVybi1tZWRpYS1jb250cm9scy90cmFja3Mtc3VwcG9ydC90cmFja3Mt
c3VwcG9ydC1zaG93LXBhbmVsLWZ1bGxzY3JlZW4uaHRtbCBbIExlYWsgXQord2Via2l0Lm9yZy9i
LzE4OTQzNyBtZWRpYS9tb2Rlcm4tbWVkaWEtY29udHJvbHMvdm9sdW1lLWRvd24tc3VwcG9ydC92
b2x1bWUtZG93bi1zdXBwb3J0Lmh0bWwgWyBMZWFrIF0KK3dlYmtpdC5vcmcvYi8xODk0MzcgbWVk
aWEvbW9kZXJuLW1lZGlhLWNvbnRyb2xzL3ZvbHVtZS11cC1zdXBwb3J0L3ZvbHVtZS11cC1zdXBw
b3J0Lmh0bWwgWyBMZWFrIF0KKword2Via2l0Lm9yZy9iLzE4OTQzNyBtZWRpYS9XM0MvdmlkZW8v
ZXZlbnRzL2V2ZW50X2NhbnBsYXkuaHRtbCBbIExlYWsgUGFzcyBdCit3ZWJraXQub3JnL2IvMTg5
NDM3IG1lZGlhL1czQy92aWRlby9ldmVudHMvZXZlbnRfY2FucGxheXRocm91Z2guaHRtbCBbIExl
YWsgUGFzcyBdCit3ZWJraXQub3JnL2IvMTg5NDM3IG1lZGlhL1czQy92aWRlby9ldmVudHMvZXZl
bnRfcHJvZ3Jlc3MuaHRtbCBbIExlYWsgUGFzcyBdCisKK3BsdWdpbnMvZnVsbHNjcmVlbi1wbHVn
aW5zLWRvbnQtcmVsb2FkLmh0bWwgWyBMZWFrIF0KKword2Via2l0Lm9yZy9iLzE4ODcyNyBwb2lu
dGVyLWxvY2svbG9jay1sb3N0LW9uLWVzYy1pbi1mdWxsc2NyZWVuLmh0bWwgWyBMZWFrIF0KK3dl
YmtpdC5vcmcvYi8xODg3MjcgcG9pbnRlci1sb2NrL2xvY2tlZC1lbGVtZW50LXJlbW92ZWQtZnJv
bS1kb20uaHRtbCBbIExlYWsgUGFzcyBdCit3ZWJraXQub3JnL2IvMTg4NzI3IHBvaW50ZXItbG9j
ay9tb3VzZS1ldmVudC1kZWxpdmVyeS5odG1sIFsgTGVhayBQYXNzIF0KKworc3RvcmFnZS93ZWJz
cWwvc3FsLWVycm9yLWNvZGVzLmh0bWwgWyBMZWFrIF0KK3N0b3JhZ2Uvd2Vic3FsL3RyYW5zYWN0
aW9uLWVycm9yLWNhbGxiYWNrLWlzb2xhdGVkLXdvcmxkLmh0bWwgWyBQYXNzIExlYWsgXQorCitz
dmcvVzNDLVNWRy0xLjEtU0UvY29sb3ItcHJvcC0wNS10LnN2ZyBbIExlYWsgXQorc3ZnL1czQy1T
VkctMS4xLVNFL2Nvb3Jkcy1kb20tMDEtZi5zdmcgWyBMZWFrIFBhc3MgXQorc3ZnL1czQy1TVkct
MS4xL2FuaW1hdGUtZWxlbS0wMy10LnN2ZyBbIExlYWsgXQorc3ZnL1czQy1TVkctMS4xL2FuaW1h
dGUtZWxlbS0yNC10LnN2ZyBbIExlYWsgXQorc3ZnL1czQy1TVkctMS4xL2FuaW1hdGUtZWxlbS0z
Ni10LnN2ZyBbIExlYWsgXQorc3ZnL1czQy1TVkctMS4xL2FuaW1hdGUtZWxlbS00MC10LnN2ZyBb
IExlYWsgXQorc3ZnL1czQy1TVkctMS4xL2ZvbnRzLWRlc2MtMDItdC5zdmcgWyBMZWFrIF0KK3N2
Zy9XM0MtU1ZHLTEuMS9mb250cy1lbGVtLTAxLXQuc3ZnIFsgTGVhayBdCitzdmcvVzNDLVNWRy0x
LjEvZm9udHMtZWxlbS0wMi10LnN2ZyBbIExlYWsgXQorc3ZnL1czQy1TVkctMS4xL2ZvbnRzLWVs
ZW0tMDUtdC5zdmcgWyBMZWFrIF0KK3N2Zy9XM0MtU1ZHLTEuMS9mb250cy1lbGVtLTA2LXQuc3Zn
IFsgTGVhayBdCitzdmcvVzNDLVNWRy0xLjEvZm9udHMtZ2x5cGgtMDItdC5zdmcgWyBMZWFrIF0K
K3N2Zy9XM0MtU1ZHLTEuMS9mb250cy1nbHlwaC0wMy10LnN2ZyBbIExlYWsgXQorc3ZnL1czQy1T
VkctMS4xL2ZvbnRzLWtlcm4tMDEtdC5zdmcgWyBMZWFrIF0KK3N2Zy9XM0MtU1ZHLTEuMS9tYXNr
aW5nLW1hc2stMDEtYi5zdmcgWyBMZWFrIF0KK3N2Zy9XM0MtU1ZHLTEuMS9wc2VydmVycy1ncmFk
LTA4LWIuc3ZnIFsgTGVhayBdCitzdmcvVzNDLVNWRy0xLjEvcmVuZGVyLWVsZW1zLTA2LXQuc3Zn
IFsgTGVhayBdCitzdmcvVzNDLVNWRy0xLjEvcmVuZGVyLWVsZW1zLTA3LXQuc3ZnIFsgTGVhayBd
CitzdmcvVzNDLVNWRy0xLjEvcmVuZGVyLWVsZW1zLTA4LXQuc3ZnIFsgTGVhayBdCitzdmcvVzND
LVNWRy0xLjEvcmVuZGVyLWdyb3Vwcy0wMS1iLnN2ZyBbIExlYWsgXQorc3ZnL1czQy1TVkctMS4x
L3JlbmRlci1ncm91cHMtMDMtdC5zdmcgWyBMZWFrIF0KK3N2Zy9XM0MtU1ZHLTEuMS90ZXh0LWFs
aWduLTA4LWIuc3ZnIFsgTGVhayBdCitzdmcvVzNDLVNWRy0xLjEvdGV4dC1hbHRnbHlwaC0wMS1i
LnN2ZyBbIExlYWsgXQorc3ZnL1czQy1TVkctMS4xL3RleHQtZm9udHMtMDMtdC5zdmcgWyBMZWFr
IF0KK3N2Zy9XM0MtU1ZHLTEuMS90ZXh0LXRleHQtMDQtdC5zdmcgWyBMZWFrIF0KK3N2Zy9XM0Mt
U1ZHLTEuMS90ZXh0LXRleHQtMDUtdC5zdmcgWyBMZWFrIF0KK3N2Zy9XM0MtU1ZHLTEuMS90ZXh0
LXRleHQtMDYtdC5zdmcgWyBMZWFrIF0KK3N2Zy9hbmltYXRpb25zL2FuaW1hdGUtZWxlbS0wMy10
LWRydC5odG1sIFsgTGVhayBdCitzdmcvYXMtaW1hZ2UvZHJhZy1zdmctYXMtaW1hZ2UuaHRtbCBb
IExlYWsgXQorc3ZnL2JhdGlrL2ZpbHRlcnMvZmVUaWxlLnN2ZyBbIExlYWsgXQorc3ZnL2JhdGlr
L2ZpbHRlcnMvZmlsdGVyUmVnaW9ucy5zdmcgWyBMZWFrIFBhc3MgXQorc3ZnL2JhdGlrL21hc2tp
bmcvbWFza1JlZ2lvbnMuc3ZnIFsgTGVhayBdCitzdmcvYmF0aWsvcGFpbnRzL2dyYWRpZW50TGlt
aXQuc3ZnIFsgTGVhayBdCitzdmcvYmF0aWsvcGFpbnRzL3BhdHRlcm5QcmVzZXJ2ZUFzcGVjdFJh
dGlvQS5zdmcgWyBMZWFrIFBhc3MgXQorc3ZnL2JhdGlrL3RleHQvc21hbGxGb250cy5zdmcgWyBM
ZWFrIFBhc3MgXQorc3ZnL2JhdGlrL3RleHQvdGV4dEVmZmVjdC5zdmcgWyBMZWFrIF0KK3N2Zy9i
YXRpay90ZXh0L3RleHRFZmZlY3QyLnN2ZyBbIExlYWsgXQorc3ZnL2JhdGlrL3RleHQvdGV4dEVm
ZmVjdDMuc3ZnIFsgTGVhayBdCitzdmcvYmF0aWsvdGV4dC90ZXh0UG9zaXRpb24yLnN2ZyBbIExl
YWsgXQorc3ZnL2JhdGlrL3RleHQveG1sU3BhY2Uuc3ZnIFsgTGVhayBdCitzdmcvY3VzdG9tL2Fs
dGdseXBoLnN2ZyBbIExlYWsgXQorc3ZnL2N1c3RvbS9hc3NlcnQtZW1wdHktbGF5b3V0LWF0dHJp
YnV0ZXMuc3ZnIFsgTGVhayBdCitzdmcvY3VzdG9tL2ZvbnQtcGxhdGZvcm1EZXN0cm95LWNyYXNo
LnN2ZyBbIExlYWsgXQorc3ZnL2N1c3RvbS9nbHlwaC1zZWxlY3Rpb24tYXJhYmljLWZvcm1zLnN2
ZyBbIExlYWsgXQorc3ZnL2N1c3RvbS9nbHlwaC1zZWxlY3Rpb24tYmlkaS1taXJyb3Iuc3ZnIFsg
TGVhayBdCitzdmcvY3VzdG9tL2dseXBoLXNlbGVjdGlvbi1sYW5nLWF0dHJpYnV0ZS5zdmcgWyBM
ZWFrIF0KK3N2Zy9jdXN0b20vZ2x5cGgtc2VsZWN0aW9uLW5vbi1ibXAuc3ZnIFsgTGVhayBdCitz
dmcvY3VzdG9tL2dseXBoLXNldHRpbmctZC1hdHRyaWJ1dGUuc3ZnIFsgTGVhayBdCitzdmcvY3Vz
dG9tL21hbnktZ2x5cGhzLnN2ZyBbIExlYWsgXQorc3ZnL2N1c3RvbS9zY3JvbGxpbmctZW1iZWRk
ZWQtc3ZnLWZpbGUtaW1hZ2UtcmVwYWludC1wcm9ibGVtLmh0bWwgWyBMZWFrIF0KK3N2Zy9jdXN0
b20vc3ZnLWVsZW1lbnQtZGVzdHJ1Y3Rvci1pdGVyYXRpb24tY3Jhc2guaHRtbCBbIExlYWsgXQor
c3ZnL2N1c3RvbS9zdmctZm9udHMtZmFsbGJhY2sueGh0bWwgWyBMZWFrIF0KK3N2Zy9jdXN0b20v
c3ZnLWZvbnRzLXNlZ21lbnRlZC54aHRtbCBbIExlYWsgXQorc3ZnL2N1c3RvbS9zdmctZm9udHMt
d2l0aG91dC1taXNzaW5nLWdseXBoLnhodG1sIFsgTGVhayBdCitzdmcvY3VzdG9tL3RleHQtbGlu
a2luZy5zdmcgWyBMZWFrIF0KK3N2Zy9jdXN0b20vdXNlLW11bHRpcGxlLW9uLW5lc3RlZC1kaXNh
bGxvd2VkLWZvbnQuaHRtbCBbIExlYWsgXQorc3ZnL2RvbS9hbHRHbHlwaC1kb20ueGh0bWwgWyBM
ZWFrIF0KK3N2Zy9mb3JlaWduT2JqZWN0L3RleHQtdHJlZi0wMi1iLnN2ZyBbIExlYWsgXQorc3Zn
L3RleHQvYWx0LWdscHloLW9uLWZhbGxiYWNrLWZvbnQtY3Jhc2guc3ZnIFsgTGVhayBdCitzdmcv
dGV4dC9hbHQtZ2x5cGgtZm9yLXN1cnJvZ2F0ZS1wYWlyLnN2ZyBbIExlYWsgXQorc3ZnL3RleHQv
a2VybmluZy5zdmcgWyBMZWFrIF0KK3N2Zy90ZXh0L211bHRpY2hhci1nbHlwaC5zdmcgWyBMZWFr
IF0KK3N2Zy90ZXh0L3RleHQtYWx0Z2x5cGgtMDEtYi5zdmcgWyBMZWFrIF0KK3N2Zy90ZXh0L3Rl
eHQtYXNzZXJ0LnN2ZyBbIExlYWsgXQorc3ZnL3RleHQvdGV4dC1mb250LWFub255bW91cy1wYXJl
bnQueGh0bWwgWyBMZWFrIF0KK3N2Zy90ZXh0L3RleHQtaGtlcm4tb24tdmVydGljYWwtdGV4dC5z
dmcgWyBMZWFrIF0KK3N2Zy90ZXh0L3RleHQtaGtlcm4uc3ZnIFsgTGVhayBdCitzdmcvdGV4dC90
ZXh0LXRleHQtMDQtdC5zdmcgWyBMZWFrIF0KK3N2Zy90ZXh0L3RleHQtdGV4dC0wNS10LnN2ZyBb
IExlYWsgXQorc3ZnL3RleHQvdGV4dC10ZXh0LTA2LXQuc3ZnIFsgTGVhayBdCitzdmcvdGV4dC90
ZXh0LXZrZXJuLW9uLWhvcml6b250YWwtdGV4dC5zdmcgWyBMZWFrIF0KK3N2Zy90ZXh0L3RleHQt
dmtlcm4uc3ZnIFsgTGVhayBdCitzdmcvdHJhbnNmb3Jtcy90ZXh0LXdpdGgtbWFzay13aXRoLXN2
Zy10cmFuc2Zvcm0uc3ZnIFsgTGVhayBdCitzdmcvd2ljZC90ZXN0LXJpZ2h0c2l6aW5nLWIueGh0
bWwgWyBMZWFrIF0KKworZmFzdC9kb20vR2VvbG9jYXRpb24vY2FjaGVkLXBvc2l0aW9uLWlmcmFt
ZS5odG1sIFsgTGVhayBQYXNzIF0KK2Zhc3QvZXZlbnRzL2NvbnRleHRtZW51LXNjcm9sbGVkLXBh
Z2Utd2l0aC1mcmFtZS5odG1sIFsgTGVhayBQYXNzIF0KK2Zhc3QvZXZlbnRzL3NldERyYWdJbWFn
ZS1pbi1kb2N1bWVudC1lbGVtZW50LWNyYXNoLmh0bWwgWyBMZWFrIFBhc3MgXQorZmFzdC9zaGFk
b3ctZG9tL2Z1bGxzY3JlZW4taW4tc2xvdC1mdWxsc2NyZWVuRWxlbWVudC5odG1sIFsgTGVhayBQ
YXNzIF0KK2Zhc3Qvc2hhZG93LWRvbS9wb2ludGVybG9ja2VsZW1lbnQtaW4tc2hhZG93LXRyZWUu
aHRtbCBbIExlYWsgUGFzcyBdCitmdWxsc2NyZWVuL3ZpZGVvLWNvbnRyb2xzLXJ0bC5odG1sIFsg
TGVhayBQYXNzIF0KK2h0dHAvdGVzdHMvZnVsbHNjcmVlbi9mdWxsc2NyZWVuZWxlbWVudC1kaWZm
ZXJlbnQtb3JpZ2luLmh0bWwgWyBMZWFrIFBhc3MgXQoraHR0cC90ZXN0cy9tZWRpYS9obHMvdmlk
ZW8tY29udHJvbHMtbGl2ZS1zdHJlYW0uaHRtbCBbIExlYWsgUGFzcyBdCitodHRwL3Rlc3RzL3Bv
aW50ZXItbG9jay9wb2ludGVybG9ja2VsZW1lbnQtc2FtZS1vcmlnaW4uaHRtbCBbIExlYWsgUGFz
cyBdCitodHRwL3dwdC9jcnlwdG8vdW53cmFwLXJzYS1rZXktY3Jhc2guYW55Lndvcmtlci5odG1s
IFsgTGVhayBQYXNzIF0KK2ltcG9ydGVkL3czYy9JbmRleGVkREItcHJpdmF0ZS1icm93c2luZy9v
YmplY3RzdG9yZV9rZXlvcmRlci5odG1sIFsgTGVhayBQYXNzIF0KK2luc3BlY3Rvci9oZWFwL2dh
cmJhZ2VDb2xsZWN0ZWQuaHRtbCBbIExlYWsgUGFzcyBdCitpbnNwZWN0b3IvcGFnZS9maWx0ZXIt
Y29va2llcy1mb3ItZG9tYWluLmh0bWwgWyBMZWFrIFBhc3MgXQoraW5zcGVjdG9yL3VuaXQtdGVz
dHMvdGVzdC1oYXJuZXNzLWV2YWx1YXRlLWluLXBhZ2UuaHRtbCBbIExlYWsgUGFzcyBdCmRpZmYg
LS1naXQgYS9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9tYWMtd2syL1Rlc3RFeHBlY3RhdGlvbnMgYi9M
YXlvdXRUZXN0cy9wbGF0Zm9ybS9tYWMtd2syL1Rlc3RFeHBlY3RhdGlvbnMKaW5kZXggNTNlNGM5
ZGU0MWYyZGI0ZDBmMDE3ZjZkM2ZiODg4MmUxYzcwMmNlZC4uMzMwN2Y4YjMwN2E5YTQ3MGUzY2E4
ZjU5ZDAwMTk5ZWQ2MWI0OTYwNCAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvcGxhdGZvcm0vbWFj
LXdrMi9UZXN0RXhwZWN0YXRpb25zCisrKyBiL0xheW91dFRlc3RzL3BsYXRmb3JtL21hYy13azIv
VGVzdEV4cGVjdGF0aW9ucwpAQCAtMjg3LDcgKzI4Nyw3IEBAIHdlYmtpdC5vcmcvYi8xNjI5OTkg
YWNjZXNzaWJpbGl0eS9tYWMvd2sxLXNldC1zZWxlY3RlZC10ZXh0LW1hcmtlci1yYW5nZS1pbnB1
dC1lCiAjIHRlc3RSdW5uZXIuc2V0VXNlRGVmZXJyZWRGcmFtZUxvYWRpbmcgaXMgbm90IGltcGxl
bWVudGVkLgogd2Via2l0Lm9yZy9iLzkzOTgwIGh0dHAvdGVzdHMvYXBwY2FjaGUvbG9hZC1mcm9t
LWFwcGNhY2hlLWRlZmVyLXJlc3VtZS1jcmFzaC5odG1sIFsgU2tpcCBdCiAKLXdlYmtpdC5vcmcv
Yi8xNzI1NDQgWyBEZWJ1ZyBdIHRpbGVkLWRyYXdpbmcvc2Nyb2xsaW5nL2Zhc3Qtc2Nyb2xsLWlm
cmFtZS1sYXRjaGVkLW1haW5mcmFtZS13aXRoLWhhbmRsZXIuaHRtbCBbIFBhc3MgRmFpbHVyZSBd
Cit3ZWJraXQub3JnL2IvMTcyNTQ0IFsgRGVidWcgXSB0aWxlZC1kcmF3aW5nL3Njcm9sbGluZy9m
YXN0LXNjcm9sbC1pZnJhbWUtbGF0Y2hlZC1tYWluZnJhbWUtd2l0aC1oYW5kbGVyLmh0bWwgWyBM
ZWFrIEZhaWx1cmUgXQogCiB3ZWJraXQub3JnL2IvMTM2NTU0IHRpbGVkLWRyYXdpbmcvc2Nyb2xs
aW5nL2ZyYW1lcy9mcmFtZXNldC1uZXN0ZWQtZnJhbWUtc2Nyb2xsYWJpbGl0eS5odG1sIFsgUGFz
cyBGYWlsdXJlIF0KIHdlYmtpdC5vcmcvYi8xMzk5MDEgdGlsZWQtZHJhd2luZy9zY3JvbGxpbmcv
ZnJhbWVzL2ZyYW1lc2V0LWZyYW1lLXNjcm9sbGFiaWxpdHkuaHRtbCBbIFBhc3MgRmFpbHVyZSBd
CkBAIC01MjEsNyArNTIxLDcgQEAgd2Via2l0Lm9yZy9iLzE1ODIzNyBmYXN0L3Njcm9sbGluZy9z
Y3JvbGwtY29udGFpbmVyLWhvcml6b250YWxseS5odG1sIFsgUGFzcyBUaW0KIAogIyBQaVAgdGVz
dHMgYXJlIG9ubHkgZW5hYmxlZCBmb3IgU2llcnJhIFdlYktpdDIuCiAjIHJkYXI6Ly9wcm9ibGVt
LzI3NTc0MzAzCi1bIFNpZXJyYSsgXSBtZWRpYS9jb250cm9scy9waWN0dXJlLWluLXBpY3R1cmUu
aHRtbCBbIFBhc3MgXQorWyBTaWVycmErIF0gbWVkaWEvY29udHJvbHMvcGljdHVyZS1pbi1waWN0
dXJlLmh0bWwgWyBMZWFrIFBhc3MgXQogd2Via2l0Lm9yZy9iLzE3MDYyMCBbIFNpZXJyYSsgXSBt
ZWRpYS9jb250cm9scy9waXAtcGxhY2Vob2xkZXItd2l0aG91dC12aWRlby1jb250cm9scy5odG1s
IFsgUGFzcyBGYWlsdXJlIF0KIFsgU2llcnJhKyBdIG1lZGlhL2VsZW1lbnQtY29udGFpbmluZy1w
aXAtdmlkZW8tZ29pbmctaW50by1mdWxsc2NyZWVuLmh0bWwgWyBQYXNzIFRpbWVvdXQgXQogd2Vi
a2l0Lm9yZy9iLzE3Mjk5OCBbIFNpZXJyYSsgXSBtZWRpYS9mdWxsc2NyZWVuLWFwaS1lbmFibGVk
LW1lZGlhLXdpdGgtcHJlc2VudGF0aW9uLW1vZGUuaHRtbCBbIEZhaWx1cmUgXQpAQCAtNjYxLDcg
KzY2MSw3IEBAIHdlYmtpdC5vcmcvYi8xNzE5NDcgWyBTaWVycmEgUmVsZWFzZSBdIGxlZ2FjeS1h
bmltYXRpb24tZW5naW5lL3RyYW5zaXRpb25zL2V4dHJhCiAKIHdlYmtpdC5vcmcvYi8xNzA2OTkg
WyBSZWxlYXNlIF0gaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL3dlYmFwcGFw
aXMvdGltZXJzL25lZ2F0aXZlLXNldHRpbWVvdXQuaHRtbCBbIFBhc3MgRmFpbHVyZSBdCiAKLXdl
YmtpdC5vcmcvYi8xNjg5MzcgIHRpbGVkLWRyYXdpbmcvc2Nyb2xsaW5nL2Zhc3Qtc2Nyb2xsLWlm
cmFtZS1sYXRjaGVkLW1haW5mcmFtZS5odG1sIFsgUGFzcyBGYWlsdXJlIF0KK3dlYmtpdC5vcmcv
Yi8xNjg5MzcgIHRpbGVkLWRyYXdpbmcvc2Nyb2xsaW5nL2Zhc3Qtc2Nyb2xsLWlmcmFtZS1sYXRj
aGVkLW1haW5mcmFtZS5odG1sIFsgTGVhayBGYWlsdXJlIF0KIAogd2Via2l0Lm9yZy9iLzE3MjA1
NCBbIFNpZXJyYSBEZWJ1ZyBdIGxvYWRlci9zdGF0ZW9iamVjdHMvcmVwbGFjZXN0YXRlLXNpemUt
aWZyYW1lLmh0bWwgWyBQYXNzIFRpbWVvdXQgXQogCkBAIC03NDksNyArNzQ5LDcgQEAgd2Via2l0
Lm9yZy9iLzE4NTk5NCBbIERlYnVnIF0gZmFzdC90ZXh0L3VzZXItaW5zdGFsbGVkLWZvbnRzL3No
YWRvdy1wb3N0c2NyaXB0LWYKIFsgSGlnaFNpZXJyYSsgXSBodHRwL3Rlc3RzL3NzbC9hcHBsZXBh
eS9BcHBsZVBheUVycm9yLmh0bWwgWyBQYXNzIF0KIFsgSGlnaFNpZXJyYSsgXSBodHRwL3Rlc3Rz
L3NzbC9hcHBsZXBheS9BcHBsZVBheVNlc3Npb25WMy5odG1sIFsgUGFzcyBdCiBbIE1vamF2ZSsg
XSBodHRwL3Rlc3RzL3NzbC9hcHBsZXBheS9BcHBsZVBheVNlc3Npb25WNC5odG1sIFsgUGFzcyBd
Ci1bIEhpZ2hTaWVycmErIF0gaHR0cC90ZXN0cy9zc2wvYXBwbGVwYXkvQXBwbGVQYXlSZXF1ZXN0
U2hpcHBpbmdDb250YWN0VjMuaHR0cHMuaHRtbCBbIFBhc3MgXQorWyBIaWdoU2llcnJhKyBdIGh0
dHAvdGVzdHMvc3NsL2FwcGxlcGF5L0FwcGxlUGF5UmVxdWVzdFNoaXBwaW5nQ29udGFjdFYzLmh0
dHBzLmh0bWwgWyBMZWFrIFBhc3MgXQogIyA8cmRhcjovL3Byb2JsZW0vMzE2MzQ0NTE+CiBbIEhp
Z2hTaWVycmErIF0gaHR0cC90ZXN0cy9yZXNvdXJjZUxvYWRTdGF0aXN0aWNzL2Nvb2tpZXMtd2l0
aC1hbmQtd2l0aG91dC11c2VyLWludGVyYWN0aW9uLmh0bWwgWyBQYXNzIF0KIFsgSGlnaFNpZXJy
YSsgXSBodHRwL3Rlc3RzL3Jlc291cmNlTG9hZFN0YXRpc3RpY3MvY29va2llLWRlbGV0aW9uLmh0
bWwgWyBQYXNzIF0KQEAgLTgyMSw3ICs4MjEsNyBAQCB3ZWJraXQub3JnL2IvMTgwOTgyIFsgRGVi
dWcgXSBpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZQog
CiB3ZWJraXQub3JnL2IvMTgyMTc2IGltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2Vy
dmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL2FwcGNhY2hlLW9yZGVyaW5nLW1haW4uaHR0cHMu
aHRtbCBbIFNraXAgXQogCi13ZWJraXQub3JnL2IvMTgzODY5IFsgSGlnaFNpZXJyYSsgXSBtZWRp
YS9tb2Rlcm4tbWVkaWEtY29udHJvbHMvc2Vlay1iYWNrd2FyZC1zdXBwb3J0L3NlZWstYmFja3dh
cmQtc3VwcG9ydC5odG1sIFsgUGFzcyBGYWlsdXJlIF0KK3dlYmtpdC5vcmcvYi8xODM4NjkgWyBI
aWdoU2llcnJhKyBdIG1lZGlhL21vZGVybi1tZWRpYS1jb250cm9scy9zZWVrLWJhY2t3YXJkLXN1
cHBvcnQvc2Vlay1iYWNrd2FyZC1zdXBwb3J0Lmh0bWwgWyBQYXNzIExlYWsgRmFpbHVyZSBdCiAK
IHdlYmtpdC5vcmcvYi8xODM4NzkgWyBEZWJ1ZyBdIGZhc3Qvc2Nyb2xsaW5nL2xhdGNoaW5nL3Nj
cm9sbC1kaXYtbm8tbGF0Y2hpbmcuaHRtbCBbIFBhc3MgRmFpbHVyZSBdCiAKQEAgLTg2OSwzICs4
NjksMTkgQEAgaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9wYXltZW50LXJlcXVlc3Qv
c2hvdy1tZXRob2QtcG9zdG1lc3NhZ2UtbWFudWFsLmgKIGltcG9ydGVkL3czYy93ZWItcGxhdGZv
cm0tdGVzdHMvcGF5bWVudC1yZXF1ZXN0L3VwZGF0ZVdpdGgtbWV0aG9kLXBtaS1oYW5kbGluZy1t
YW51YWwuaHR0cHMuaHRtbCBbIFNraXAgXQogaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0
cy9wYXltZW50LXJlcXVlc3QvdXNlci1hYm9ydC1hbGdvcml0aG0tbWFudWFsLmh0dHBzLmh0bWwg
WyBTa2lwIF0KIGltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvcGF5bWVudC1yZXF1ZXN0
L3VzZXItYWNjZXB0cy1wYXltZW50LXJlcXVlc3QtYWxnby1tYW51YWwuaHR0cHMuaHRtbCBbIFNr
aXAgXQorCisjIExlYWtzCitodHRwL3Rlc3RzL3BheW1lbnRyZXF1ZXN0L3BheW1lbnQtYWRkcmVz
cy1hdHRyaWJ1dGVzLWFuZC10b0pTT04tbWV0aG9kLmh0dHBzLmh0bWwgWyBMZWFrIF0KK2h0dHAv
dGVzdHMvcGF5bWVudHJlcXVlc3QvcGF5bWVudC1yZXF1ZXN0LW1lcmNoYW50LXZhbGlkYXRpb24u
aHR0cHMuaHRtbCBbIExlYWsgXQoraHR0cC90ZXN0cy9wYXltZW50cmVxdWVzdC9wYXltZW50LXJl
cXVlc3Qtc2hvdy1tZXRob2QuaHR0cHMuaHRtbCBbIExlYWsgXQoraHR0cC90ZXN0cy9wYXltZW50
cmVxdWVzdC9wYXltZW50LXJlc3BvbnNlLWNvbXBsZXRlLW1ldGhvZC5odHRwcy5odG1sIFsgTGVh
ayBdCitodHRwL3Rlc3RzL3BheW1lbnRyZXF1ZXN0L3BheW1lbnQtcmVzcG9uc2UtbWV0aG9kTmFt
ZS1hdHRyaWJ1dGUuaHR0cHMuaHRtbCBbIExlYWsgXQoraHR0cC90ZXN0cy9wYXltZW50cmVxdWVz
dC9wYXltZW50LXJlc3BvbnNlLXBheWVyRW1haWwtYXR0cmlidXRlLmh0dHBzLmh0bWwgWyBMZWFr
IF0KK2h0dHAvdGVzdHMvcGF5bWVudHJlcXVlc3QvcGF5bWVudC1yZXNwb25zZS1wYXllck5hbWUt
YXR0cmlidXRlLmh0dHBzLmh0bWwgWyBMZWFrIF0KK2h0dHAvdGVzdHMvcGF5bWVudHJlcXVlc3Qv
cGF5bWVudC1yZXNwb25zZS1wYXllclBob25lLWF0dHJpYnV0ZS5odHRwcy5odG1sIFsgTGVhayBd
CisKK2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvcGF5bWVudC1yZXF1ZXN0L1BheW1l
bnRNZXRob2RDaGFuZ2VFdmVudC9tZXRob2REZXRhaWxzLWF0dHJpYnV0ZS5odHRwcy5odG1sIFsg
TGVhayBQYXNzIF0KKworWyBTaWVycmErIF0gaHR0cC90ZXN0cy9zc2wvYXBwbGVwYXkvQXBwbGVQ
YXlQYXltZW50RGV0YWlsc01vZGlmaWVyLmh0dHBzLmh0bWwgWyBMZWFrIF0KK1sgU2llcnJhKyBd
IGh0dHAvdGVzdHMvc3NsL2FwcGxlcGF5L0FwcGxlUGF5UmVxdWVzdFNoaXBwaW5nQ29udGFjdC5o
dHRwcy5odG1sIFsgTGVhayBdCisKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL3BsYXRmb3JtL21h
Yy9UZXN0RXhwZWN0YXRpb25zIGIvTGF5b3V0VGVzdHMvcGxhdGZvcm0vbWFjL1Rlc3RFeHBlY3Rh
dGlvbnMKaW5kZXggNDE0ZTJkMzg5MTNhYmQ1OGMzZTBkNDE0NmJhYTdlYmU1NDA4M2E4NC4uOWZm
MDlhMmE1M2ZjMTA0ZjkyOTM4YzhhYzg2NjIyYjM4ZGQwZmFkMSAxMDA2NDQKLS0tIGEvTGF5b3V0
VGVzdHMvcGxhdGZvcm0vbWFjL1Rlc3RFeHBlY3RhdGlvbnMKKysrIGIvTGF5b3V0VGVzdHMvcGxh
dGZvcm0vbWFjL1Rlc3RFeHBlY3RhdGlvbnMKQEAgLTQ4OCwxOCArNDg4LDE4IEBAIHdlYmtpdC5v
cmcvYi83Mzc2NiBjc3MzL3VuaWNvZGUtYmlkaS1pc29sYXRlLWFoYXJvbi1mYWlsaW5nLmh0bWwg
WyBJbWFnZU9ubHlGYWlsCiAjIEZhaWxpbmcgcmVmIHRlc3RzCiB3ZWJraXQub3JnL2IvODU0MDQg
ZmFzdC9sb2FkZXIvamF2YXNjcmlwdC11cmwtaW4tZW1iZWQuaHRtbCBbIEZhaWx1cmUgUGFzcyBd
CiAKLXdlYmtpdC5vcmcvYi84NTQwOCBzdmcvYmF0aWsvdGV4dC9sb25nVGV4dE9uUGF0aC5zdmcg
WyBGYWlsdXJlIFBhc3MgXQotd2Via2l0Lm9yZy9iLzg1NDA4IHN2Zy9iYXRpay9wYWludHMvZ3Jh
ZGllbnRMaW1pdC5zdmcgWyBGYWlsdXJlIFBhc3MgXQord2Via2l0Lm9yZy9iLzg1NDA4IHN2Zy9i
YXRpay90ZXh0L2xvbmdUZXh0T25QYXRoLnN2ZyBbIExlYWsgRmFpbHVyZSBdCit3ZWJraXQub3Jn
L2IvODU0MDggc3ZnL2JhdGlrL3BhaW50cy9ncmFkaWVudExpbWl0LnN2ZyBbIExlYWsgRmFpbHVy
ZSBdCiB3ZWJraXQub3JnL2IvODU0MDggc3ZnL2JhdGlrL3RleHQvdGV4dE9uUGF0aC5zdmcgWyBG
YWlsdXJlIFBhc3MgXQogd2Via2l0Lm9yZy9iLzg1NDA4IHN2Zy9iYXRpay90ZXh0L3ZlcnRpY2Fs
VGV4dE9uUGF0aC5zdmcgWyBGYWlsdXJlIFBhc3MgXQogd2Via2l0Lm9yZy9iLzg1NDA4IHN2Zy9i
YXRpay90ZXh0L3RleHRQb3NpdGlvbi5zdmcgWyBGYWlsdXJlIFBhc3MgXQogd2Via2l0Lm9yZy9i
Lzg1NDA4IHN2Zy9iYXRpay90ZXh0L3ZlcnRpY2FsVGV4dC5zdmcgWyBGYWlsdXJlIFBhc3MgXQog
d2Via2l0Lm9yZy9iLzg1NDA4IHN2Zy9iYXRpay90ZXh0L3RleHRMZW5ndGguc3ZnIFsgRmFpbHVy
ZSBQYXNzIF0KLXdlYmtpdC5vcmcvYi84NTQwOCBzdmcvYmF0aWsvdGV4dC90ZXh0RWZmZWN0LnN2
ZyBbIFBhc3MgRmFpbHVyZSBdCit3ZWJraXQub3JnL2IvODU0MDggc3ZnL2JhdGlrL3RleHQvdGV4
dEVmZmVjdC5zdmcgWyBMZWFrIEZhaWx1cmUgXQogd2Via2l0Lm9yZy9iLzg1NDA4IHN2Zy9iYXRp
ay9wYWludHMvcGF0dGVyblJlZ2lvbnMtcG9zaXRpb25lZC1vYmplY3RzLnN2ZyBbIFBhc3MgRmFp
bHVyZSBdCiB3ZWJraXQub3JnL2IvODU0MDggc3ZnL2JhdGlrL3RleHQvdGV4dERlY29yYXRpb24u
c3ZnIFsgUGFzcyBGYWlsdXJlIF0KLXdlYmtpdC5vcmcvYi8xMTQxMjAgc3ZnL2JhdGlrL21hc2tp
bmcvbWFza1JlZ2lvbnMuc3ZnIFsgUGFzcyBGYWlsdXJlIF0KLXdlYmtpdC5vcmcvYi8xMTQzNzUg
c3ZnL2JhdGlrL2ZpbHRlcnMvZmVUaWxlLnN2ZyBbIFBhc3MgRmFpbHVyZSBdCit3ZWJraXQub3Jn
L2IvMTE0MTIwIHN2Zy9iYXRpay9tYXNraW5nL21hc2tSZWdpb25zLnN2ZyBbIExlYWsgRmFpbHVy
ZSBdCit3ZWJraXQub3JnL2IvMTE0Mzc1IHN2Zy9iYXRpay9maWx0ZXJzL2ZlVGlsZS5zdmcgWyBM
ZWFrIEZhaWx1cmUgXQogCiB3ZWJraXQub3JnL2IvOTk4OTMgc3ZnL2FuaW1hdGlvbnMvbW96aWxs
YS9hbmltYXRlTW90aW9uLW1wYXRoLXRhcmdldENoYW5nZS0xLnN2ZyBbIEltYWdlT25seUZhaWx1
cmUgXQogCkBAIC0xMDAwLDE2ICsxMDAwLDE2IEBAIHdlYmtpdC5vcmcvYi8xNDIwODcgZmFzdC9j
c3MzLXRleHQvY3NzMy10ZXh0LWRlY29yYXRpb24vbm8tZ2FwLWJldHdlZW4tdHdvLXJvdW5kCiB3
ZWJraXQub3JnL2IvMTQyMDg3IGZhc3QvY3NzMy10ZXh0L2NzczMtdGV4dC1kZWNvcmF0aW9uL3Rl
eHQtZGVjb3JhdGlvbi1za2lwL3RleHQtZGVjb3JhdGlvbi1za2lwLWluay1pbmhlcml0Lmh0bWwg
WyBJbWFnZU9ubHlGYWlsdXJlIF0KIAogIyBUZXN0cyB0aGF0IGZhaWwgd2l0aCB0aGUgU1ZHIC0+
IE9URiBmb250IGNvbnZlcnRlciwgYnV0IGFyZSBsb3dlciBwcmlvcml0eSB0aGFuIGxpdmUtb24K
LXdlYmtpdC5vcmcvYi8xNDA1ODggc3ZnL1czQy1TVkctMS4xL2ZvbnRzLWRlc2MtMDItdC5zdmcg
WyBGYWlsdXJlIF0KLXdlYmtpdC5vcmcvYi8xMzcwOTYgc3ZnL1czQy1TVkctMS4xL3RleHQtYWx0
Z2x5cGgtMDEtYi5zdmcgWyBGYWlsdXJlIF0KLXdlYmtpdC5vcmcvYi8xMzcwOTYgc3ZnL2N1c3Rv
bS9hbHRnbHlwaC5zdmcgWyBGYWlsdXJlIF0KK3dlYmtpdC5vcmcvYi8xNDA1ODggc3ZnL1czQy1T
VkctMS4xL2ZvbnRzLWRlc2MtMDItdC5zdmcgWyBMZWFrIEZhaWx1cmUgXQord2Via2l0Lm9yZy9i
LzEzNzA5NiBzdmcvVzNDLVNWRy0xLjEvdGV4dC1hbHRnbHlwaC0wMS1iLnN2ZyBbIExlYWsgRmFp
bHVyZSBdCit3ZWJraXQub3JnL2IvMTM3MDk2IHN2Zy9jdXN0b20vYWx0Z2x5cGguc3ZnIFsgTGVh
ayBGYWlsdXJlIF0KIHdlYmtpdC5vcmcvYi8xNDA1OTAgc3ZnL2N1c3RvbS9zdmctZm9udHMtaW4t
dGV4dC1jb250cm9scy5odG1sIFsgRmFpbHVyZSBdCi13ZWJraXQub3JnL2IvMTM3MDk2IHN2Zy90
ZXh0L3RleHQtYWx0Z2x5cGgtMDEtYi5zdmcgWyBGYWlsdXJlIF0KLXdlYmtpdC5vcmcvYi8xMzcw
OTYgc3ZnL3RleHQvYWx0LWdseXBoLWZvci1zdXJyb2dhdGUtcGFpci5zdmcgWyBJbWFnZU9ubHlG
YWlsdXJlIF0KLXdlYmtpdC5vcmcvYi8xNDA1ODkgc3ZnL1czQy1TVkctMS4xL3RleHQtdGV4dC0w
Ni10LnN2ZyBbIEZhaWx1cmUgXQotd2Via2l0Lm9yZy9iLzE0MDU4OSBzdmcvdGV4dC90ZXh0LXRl
eHQtMDYtdC5zdmcgWyBGYWlsdXJlIF0KLXdlYmtpdC5vcmcvYi8xMzcwOTggc3ZnL3RleHQvdGV4
dC1oa2Vybi5zdmcgWyBGYWlsdXJlIF0KLXdlYmtpdC5vcmcvYi8xMzcxMDAgc3ZnL3RleHQvdGV4
dC12a2Vybi5zdmcgWyBGYWlsdXJlIF0KK3dlYmtpdC5vcmcvYi8xMzcwOTYgc3ZnL3RleHQvdGV4
dC1hbHRnbHlwaC0wMS1iLnN2ZyBbIExlYWsgRmFpbHVyZSBdCit3ZWJraXQub3JnL2IvMTM3MDk2
IHN2Zy90ZXh0L2FsdC1nbHlwaC1mb3Itc3Vycm9nYXRlLXBhaXIuc3ZnIFsgTGVhayBJbWFnZU9u
bHlGYWlsdXJlIF0KK3dlYmtpdC5vcmcvYi8xNDA1ODkgc3ZnL1czQy1TVkctMS4xL3RleHQtdGV4
dC0wNi10LnN2ZyBbIExlYWsgRmFpbHVyZSBdCit3ZWJraXQub3JnL2IvMTQwNTg5IHN2Zy90ZXh0
L3RleHQtdGV4dC0wNi10LnN2ZyBbIExlYWsgRmFpbHVyZSBdCit3ZWJraXQub3JnL2IvMTM3MDk4
IHN2Zy90ZXh0L3RleHQtaGtlcm4uc3ZnIFsgTGVhayBGYWlsdXJlIF0KK3dlYmtpdC5vcmcvYi8x
MzcxMDAgc3ZnL3RleHQvdGV4dC12a2Vybi5zdmcgWyBMZWFrIEZhaWx1cmUgXQogCiAjIFNvbWV0
aW1lcyBoYXMgYW4gZXh0cmEgc3BhY2UgYXQgdGhlIGVuZAogZmFzdC9mb3Jtcy9mb2N1cy1zZWxl
Y3Rpb24tdGV4dGFyZWEuaHRtbCBbIFBhc3MgRmFpbHVyZSBdCkBAIC0xMjMzLDExICsxMjMzLDEx
IEBAIHdlYmtpdC5vcmcvYi8xNTkzNzkgZmFzdC9oaXN0b3J5L3BhZ2UtY2FjaGUtd2ViZGF0YWJh
c2UtcGVuZGluZy10cmFuc2FjdGlvbi5odG1sCiB3ZWJraXQub3JnL2IvMTU4NzQ3IG1lZGlhL3Jl
c3RvcmUtZnJvbS1wYWdlLWNhY2hlLmh0bWwgWyBQYXNzIEZhaWx1cmUgQ3Jhc2ggXQogCiAjIFNl
ZSBhbHNvIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xNjI0OTQKLXdl
YmtpdC5vcmcvYi8xNTEyODcgWyBTaWVycmErIF0gbWVkaWEvY29udHJvbHMvaW5saW5lLWVsZW1l
bnRzLWRyb3BvZmYtb3JkZXIuaHRtbCBbIEZhaWx1cmUgXQord2Via2l0Lm9yZy9iLzE1MTI4NyBb
IFNpZXJyYSsgXSBtZWRpYS9jb250cm9scy9pbmxpbmUtZWxlbWVudHMtZHJvcG9mZi1vcmRlci5o
dG1sIFsgTGVhayBGYWlsdXJlIF0KIAogd2Via2l0Lm9yZy9iLzE1ODUwMCBzdG9yYWdlL2luZGV4
ZWRkYi9kYXRhYmFzZS1jbG9zZS1wcml2YXRlLmh0bWwgWyBQYXNzIEZhaWx1cmUgXQogCi13ZWJr
aXQub3JnL2IvMTYzMTIyIGltcG9ydGVkL2JsaW5rL3N0b3JhZ2UvaW5kZXhlZGRiL2Jsb2ItdmFs
aWQtYWZ0ZXItZGVsZXRpb24uaHRtbCBbIFBhc3MgVGltZW91dCBdCit3ZWJraXQub3JnL2IvMTYz
MTIyIGltcG9ydGVkL2JsaW5rL3N0b3JhZ2UvaW5kZXhlZGRiL2Jsb2ItdmFsaWQtYWZ0ZXItZGVs
ZXRpb24uaHRtbCBbIFBhc3MgVGltZW91dCBMZWFrIF0KIAogd2Via2l0Lm9yZy9iLzEyODMxMiBt
ZWRpYS92aWRlby1sb2FkLXByZWxvYWQtbWV0YWRhdGEuaHRtbCBbIFBhc3MgRmFpbHVyZSBdCiAK
QEAgLTE0MTAsNyArMTQxMCw3IEBAIG1lZGlhL21vZGVybi1tZWRpYS1jb250cm9scy9tZWRpYS1k
b2N1bWVudHMvbWVkaWEtZG9jdW1lbnQtdmlkZW8taW9zLXNpemluZy5odG1sCiBtZWRpYS9tb2Rl
cm4tbWVkaWEtY29udHJvbHMvc2NydWJiZXItc3VwcG9ydC9pcGFkIFsgU2tpcCBdCiAKICMgVGhl
c2UgdGVzdHMgYXJlIHRpbWluZy1yZWxhdGVkIGFuZCBjYW4gZmFpbCBkdWUgdG8gcGVyZm9ybWFu
Y2UgaXNzdWVzIG9uIGJvdHMKLXdlYmtpdC5vcmcvYi8xNjk4NzYgbWVkaWEvbW9kZXJuLW1lZGlh
LWNvbnRyb2xzL21lZGlhLWNvbnRyb2xsZXIvbWVkaWEtY29udHJvbGxlci1hdXRvLWhpZGUtbW91
c2UtZW50ZXItYW5kLW1vdXNlLWxlYXZlLmh0bWwgWyBQYXNzIFRpbWVvdXQgXQord2Via2l0Lm9y
Zy9iLzE2OTg3NiBtZWRpYS9tb2Rlcm4tbWVkaWEtY29udHJvbHMvbWVkaWEtY29udHJvbGxlci9t
ZWRpYS1jb250cm9sbGVyLWF1dG8taGlkZS1tb3VzZS1lbnRlci1hbmQtbW91c2UtbGVhdmUuaHRt
bCBbIFBhc3MgTGVhayBUaW1lb3V0IF0KIG1lZGlhL21vZGVybi1tZWRpYS1jb250cm9scy9tZWRp
YS1jb250cm9sbGVyL21lZGlhLWNvbnRyb2xsZXItYXV0by1oaWRlLW1vdXNlLWxlYXZlLWFmdGVy
LXBsYXkuaHRtbCBbIFBhc3MgRmFpbHVyZSBdCiBtZWRpYS9tb2Rlcm4tbWVkaWEtY29udHJvbHMv
bWVkaWEtY29udHJvbGxlci9tZWRpYS1jb250cm9sbGVyLWF1dG8taGlkZS1wYXVzZS5odG1sIFsg
UGFzcyBGYWlsdXJlIF0KIHdlYmtpdC5vcmcvYi8xODc0MjAgbWVkaWEvbW9kZXJuLW1lZGlhLWNv
bnRyb2xzL21lZGlhLWNvbnRyb2xsZXIvbWVkaWEtY29udHJvbGxlci1hdXRvLWhpZGUtcmV3aW5k
LXdpdGgtbW91c2UtZW50ZXIuaHRtbCBbIFBhc3MgVGltZW91dCBdCkBAIC0xNDgyLDE5ICsxNDgy
LDE5IEBAIHdlYmtpdC5vcmcvYi8xNjE0OTEgbWVkaWEvdmlkZW8tbWFpbi1jb250ZW50LWFsbG93
LXRoZW4tc2Nyb2xsLmh0bWwgWyBQYXNzIEZhaWx1CiB3ZWJraXQub3JnL2IvMTcyMDUyIFsgRGVi
dWcgXSBpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvd2ViYXBwYXBpcy90aW1l
cnMvdHlwZS1sb25nLXNldGludGVydmFsLmh0bWwgWyBQYXNzIEZhaWx1cmUgXQogCiAjIDxyZGFy
Oi8vcHJvYmxlbS8yOTAzMTUwOT4gUkVHUkVTU0lPTj8gKEZvbnRQYXJzZXItMTk1KTogc3ZnL1cz
Qy1TVkctMS4xL2ZvbnRzLWVsZW0tKiBhbmQgc3ZnL1czQy1TVkctMS4xL3RleHQtaW50cm8tKiB0
ZXN0cyBmYWlsaW5nCi1bIEhpZ2hTaWVycmErIF0gc3ZnL1czQy1TVkctMS4xL2ZvbnRzLWVsZW0t
MDEtdC5zdmcgWyBGYWlsdXJlIF0KLVsgSGlnaFNpZXJyYSsgXSBzdmcvVzNDLVNWRy0xLjEvZm9u
dHMtZWxlbS0wMi10LnN2ZyBbIEZhaWx1cmUgXQorWyBIaWdoU2llcnJhKyBdIHN2Zy9XM0MtU1ZH
LTEuMS9mb250cy1lbGVtLTAxLXQuc3ZnIFsgTGVhayBGYWlsdXJlIF0KK1sgSGlnaFNpZXJyYSsg
XSBzdmcvVzNDLVNWRy0xLjEvZm9udHMtZWxlbS0wMi10LnN2ZyBbIExlYWsgRmFpbHVyZSBdCiBb
IEhpZ2hTaWVycmErIF0gc3ZnL1czQy1TVkctMS4xL2ZvbnRzLWVsZW0tMDMtYi5zdmcgWyBGYWls
dXJlIF0KIFsgSGlnaFNpZXJyYSsgXSBzdmcvVzNDLVNWRy0xLjEvZm9udHMtZWxlbS0wNy1iLnN2
ZyBbIEZhaWx1cmUgXQogWyBIaWdoU2llcnJhKyBdIHN2Zy9XM0MtU1ZHLTEuMS90ZXh0LWludHJv
LTAxLXQuc3ZnIFsgRmFpbHVyZSBdCiBbIEhpZ2hTaWVycmErIF0gc3ZnL1czQy1TVkctMS4xL3Rl
eHQtaW50cm8tMDItYi5zdmcgWyBGYWlsdXJlIF0KIFsgSGlnaFNpZXJyYSsgXSBzdmcvVzNDLVNW
Ry0xLjEvdGV4dC1pbnRyby0wMy1iLnN2ZyBbIEZhaWx1cmUgXQogWyBIaWdoU2llcnJhKyBdIHN2
Zy9XM0MtU1ZHLTEuMS90ZXh0LWludHJvLTA0LXQuc3ZnIFsgRmFpbHVyZSBdCi1bIEhpZ2hTaWVy
cmErIF0gc3ZnL2JhdGlrL3RleHQvdGV4dEVmZmVjdDMuc3ZnIFsgRmFpbHVyZSBdCi1bIEhpZ2hT
aWVycmErIF0gc3ZnL2JhdGlrL3RleHQvdGV4dFBvc2l0aW9uMi5zdmcgWyBGYWlsdXJlIF0KK1sg
SGlnaFNpZXJyYSsgXSBzdmcvYmF0aWsvdGV4dC90ZXh0RWZmZWN0My5zdmcgWyBMZWFrIEZhaWx1
cmUgXQorWyBIaWdoU2llcnJhKyBdIHN2Zy9iYXRpay90ZXh0L3RleHRQb3NpdGlvbjIuc3ZnIFsg
TGVhayBGYWlsdXJlIF0KIFsgSGlnaFNpZXJyYSsgXSBzdmcvY3VzdG9tL2FjaWQzLXRlc3QtNzcu
aHRtbCBbIEZhaWx1cmUgXQotWyBIaWdoU2llcnJhKyBdIHN2Zy9jdXN0b20vc3ZnLWZvbnRzLWZh
bGxiYWNrLnhodG1sIFsgRmFpbHVyZSBdCi1bIEhpZ2hTaWVycmErIF0gc3ZnL3dpY2QvdGVzdC1y
aWdodHNpemluZy1iLnhodG1sIFsgRmFpbHVyZSBdCitbIEhpZ2hTaWVycmErIF0gc3ZnL2N1c3Rv
bS9zdmctZm9udHMtZmFsbGJhY2sueGh0bWwgWyBMZWFrIEZhaWx1cmUgXQorWyBIaWdoU2llcnJh
KyBdIHN2Zy93aWNkL3Rlc3QtcmlnaHRzaXppbmctYi54aHRtbCBbIExlYWsgRmFpbHVyZSBdCiBb
IEhpZ2hTaWVycmErIF0gZmFzdC9jc3MtZ2VuZXJhdGVkLWNvbnRlbnQvaW5pdGlhbC1sZXR0ZXIt
Zmlyc3QtbGluZS13cmFwcGluZy5odG1sIFsgSW1hZ2VPbmx5RmFpbHVyZSAgXQogCiAjIDxyZGFy
Oi8vcHJvYmxlbS8zMDQ5MzkxMD4gUkVHUkVTU0lPTjogTGF5b3V0VGVzdCBmYXN0L3dyaXRpbmct
bW9kZS9icm9rZW4taWRlb2dyYXBoLXNtYWxsLWNhcHMuaHRtbCBmYWlsaW5nCkBAIC0xNjQ0LDYg
KzE2NDQsNyBAQCB3ZWJraXQub3JnL2IvMTgwNjc1IGFjY2Vzc2liaWxpdHkvbWFjL3NlYXJjaC1m
aWVsZC1jYW5jZWwtYnV0dG9uLmh0bWwgWyBQYXNzIEZhaQogd2Via2l0Lm9yZy9iLzE4MTA5OCBm
YXN0L3dvcmtlcnMvd29ya2VyLXRlcm1pbmF0ZS5odG1sIFsgUGFzcyBUaW1lb3V0IF0KIAogd2Vi
a2l0Lm9yZy9iLzE4MTUwMiBzd2lwZS9wdXNoc3RhdGUtd2l0aC1tYW51YWwtc2Nyb2xscmVzdG9y
YXRpb24uaHRtbCBbIEZhaWx1cmUgXQorc3dpcGUvcHVzaFN0YXRlLXByb2dyYW1tYXRpYy1iYWNr
LXdoaWxlLXN3aXBpbmctY3Jhc2guaHRtbCBbIExlYWsgUGFzcyBdCiAKIHdlYmtpdC5vcmcvYi8x
ODE0NzkgaHR0cC90ZXN0cy9taXNjL3Nsb3ctbG9hZGluZy1hbmltYXRlZC1pbWFnZS5odG1sIFsg
UGFzcyBJbWFnZU9ubHlGYWlsdXJlIF0KIApAQCAtMTY3NSwxMSArMTY3NiwxMSBAQCB3ZWJraXQu
b3JnL2IvMTgxNjEyIFsgRGVidWcgXSB3ZWJhbmltYXRpb25zL2FuaW1hdGlvbi1vcGFjaXR5LWFu
aW1hdGlvbi1jcmFzaC5odAogCiB3ZWJraXQub3JnL2IvMTczOTQ2IFsgRGVidWcgXSBtZWRpYS9t
b2Rlcm4tbWVkaWEtY29udHJvbHMvZnVsbHNjcmVlbi1zdXBwb3J0L2Z1bGxzY3JlZW4tc3VwcG9y
dC1wcmVzcy5odG1sIFsgUGFzcyBGYWlsdXJlIF0KIAotd2Via2l0Lm9yZy9iLzE4MzQ5MCBtZWRp
YS9tb2Rlcm4tbWVkaWEtY29udHJvbHMvY29udHJvbHMtdmlzaWJpbGl0eS1zdXBwb3J0L2NvbnRy
b2xzLXZpc2liaWxpdHktc3VwcG9ydC1mdWxsc2NyZWVuLW9uLXZpZGVvLmh0bWwgWyBGYWlsdXJl
IF0KK3dlYmtpdC5vcmcvYi8xODM0OTAgbWVkaWEvbW9kZXJuLW1lZGlhLWNvbnRyb2xzL2NvbnRy
b2xzLXZpc2liaWxpdHktc3VwcG9ydC9jb250cm9scy12aXNpYmlsaXR5LXN1cHBvcnQtZnVsbHNj
cmVlbi1vbi12aWRlby5odG1sIFsgTGVhayBGYWlsdXJlIF0KIHdlYmtpdC5vcmcvYi8xODM0OTAg
bWVkaWEvbW9kZXJuLW1lZGlhLWNvbnRyb2xzL21lZGlhLWNvbnRyb2xsZXIvbWVkaWEtY29udHJv
bGxlci1mYWRlLWNvbnRyb2xzLXdoZW4tZW50ZXJpbmctZnVsbHNjcmVlbi5odG1sIFsgRmFpbHVy
ZSBdCi13ZWJraXQub3JnL2IvMTgzNDkwIG1lZGlhL21vZGVybi1tZWRpYS1jb250cm9scy9tZWRp
YS1jb250cm9sbGVyL21lZGlhLWNvbnRyb2xsZXItZnVsbHNjcmVlbi1jaGFuZ2UuaHRtbCBbIEZh
aWx1cmUgXQord2Via2l0Lm9yZy9iLzE4MzQ5MCBtZWRpYS9tb2Rlcm4tbWVkaWEtY29udHJvbHMv
bWVkaWEtY29udHJvbGxlci9tZWRpYS1jb250cm9sbGVyLWZ1bGxzY3JlZW4tY2hhbmdlLmh0bWwg
WyBMZWFrIEZhaWx1cmUgXQogd2Via2l0Lm9yZy9iLzE4MzQ5MCBtZWRpYS9tb2Rlcm4tbWVkaWEt
Y29udHJvbHMvbWVkaWEtY29udHJvbGxlci9tZWRpYS1jb250cm9sbGVyLWlubGluZS10by1mdWxs
c2NyZWVuLXRvLWlubGluZS5odG1sIFsgRmFpbHVyZSBdCi13ZWJraXQub3JnL2IvMTgzNDkwIG1l
ZGlhL21vZGVybi1tZWRpYS1jb250cm9scy9zdGFydC1zdXBwb3J0L3N0YXJ0LXN1cHBvcnQtZnVs
bHNjcmVlbi5odG1sIFsgRmFpbHVyZSBdCit3ZWJraXQub3JnL2IvMTgzNDkwIG1lZGlhL21vZGVy
bi1tZWRpYS1jb250cm9scy9zdGFydC1zdXBwb3J0L3N0YXJ0LXN1cHBvcnQtZnVsbHNjcmVlbi5o
dG1sIFsgTGVhayBGYWlsdXJlIF0KIHdlYmtpdC5vcmcvYi8xODM0OTAgbWVkaWEvdmlkZW8tcGxh
eXNpbmxpbmUuaHRtbCBbIEZhaWx1cmUgXQogd2Via2l0Lm9yZy9iLzE4MzQ5MCBtZWRpYS92aWRl
by13ZWJraXQtcGxheXNpbmxpbmUuaHRtbCBbIEZhaWx1cmUgXQogd2Via2l0Lm9yZy9iLzE4MzQ5
MCBtZWRpYS9tb2Rlcm4tbWVkaWEtY29udHJvbHMvbWVkaWEtY29udHJvbGxlci9tZWRpYS1jb250
cm9sbGVyLWlubGluZS10by1mdWxsc2NyZWVuLXRvLXBpcC10by1pbmxpbmUuaHRtbCBbIEZhaWx1
cmUgXQpAQCAtMTc2NCwzICsxNzY1LDEzIEBAIHdlYmtpdC5vcmcvYi8xODczOTMgaW1wb3J0ZWQv
dzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy8yZGNvbnRleHQvaW1hZ2ViaXRtYXAvY3JlYXRlCiBbIE1v
amF2ZSsgXSBmYXN0L2dyYWRpZW50cy9jb25pYy1jZW50ZXItb3V0c2lkZS1ib3guaHRtbCBbIFBh
c3MgXQogWyBNb2phdmUrIF0gZmFzdC9ncmFkaWVudHMvY29uaWMtZXh0ZW5kZWQtc3RvcHMuaHRt
bCBbIFBhc3MgXQogCitlZGl0aW5nL21hYy9wYXN0ZWJvYXJkL2Nhbi1jb3B5LXVybC13aXRob3V0
LXRpdGxlLmh0bWwgWyBMZWFrIF0KK2VkaXRpbmcvbWFjL3NlbGVjdGlvbi9jb250ZXh0LW1lbnUt
c2VsZWN0LWVkaXRhYmlsaXR5Lmh0bWwgWyBMZWFrIF0KK3BsYXRmb3JtL21hYy9tZWRpYS92aWRl
by1iZXN0LWVsZW1lbnQtZm9yLXBsYXliYWNrLWNvbnRyb2xzLXB1cnBvc2UuaHRtbCBbIExlYWsg
XQorCittZWRpYS9tYWMvY29udHJvbHMtcGFuZWwtbm90LWNsaXBwZWQtb3V0Lmh0bWwgWyBMZWFr
IFBhc3MgXQorCittZWRpYS9jb250cm9scy9waWN0dXJlLWluLXBpY3R1cmUuaHRtbCBbIExlYWsg
UGFzcyBdCittZWRpYS9jb250cm9scy9lbGVtZW50T3JkZXIuaHRtbCBbIExlYWsgXQorbWVkaWEv
Y29udHJvbHMvZm9yY2VkLXRyYWNrcy1vbmx5Lmh0bWwgWyBMZWFrIFBhc3MgXQorbWVkaWEvY29u
dHJvbHMvdHJhY2stbWVudS5odG1sIFsgTGVhayBdCg==
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>407909</attachid>
            <date>2020-09-03 14:15:01 -0700</date>
            <delta_ts>2020-09-08 09:46:29 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-189396-20200903141500.patch</filename>
            <type>text/plain</type>
            <size>26759</size>
            <attacher name="Simon Fraser (smfr)">simon.fraser</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjY2MzM3CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9DaGFu
Z2VMb2cgYi9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKaW5kZXggM2M1MTkwYTc0ZDk3Nzg3MzlhMWJm
ZTgxYzk1NWQwM2JhZmI3ZDVjNS4uMDFiNWFiMDk5MTgyMTE0Mjc0Njg5OTY3OWM4ZmE1OTFlODRm
YTEyZSAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCisrKyBiL0xheW91dFRlc3Rz
L0NoYW5nZUxvZwpAQCAtMSwzICsxLDE5IEBACisyMDIwLTA5LTAzICBTaW1vbiBGcmFzZXIgIDxz
aW1vbi5mcmFzZXJAYXBwbGUuY29tPgorCisgICAgICAgIEFkZCBhIHN0YW5kYWxvbmUgdmVyc2lv
biBvZiB0aGUgdGVzdCBydW50aW1lIHRyZWUgbWFwIHZpZXdlciwgdGhhdCBjYW4gYWNjZXB0IHN0
YXRzLmpzb24gZnJvbSBhIGxvY2FsIHRlc3QgcnVuCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJr
aXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xODkzOTYKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JP
RFkgKE9PUFMhKS4KKyAgICAgICAgCisgICAgICAgIEFkZCB0aGUgdmlld2VyIGFuZCBhIHNhbXBs
ZSBzdGF0cy5qc29uIGZpbGUuIERldnMgY2FuIGRyYWcgYSBzdGF0cy5qc29uIGZpbGUgaW50byB0
ZXN0LWR1cmF0aW9uLXRyZWVtYXAuaHRtbCB0bworICAgICAgICBzZWUgdGhlIG1hcCAob3Igc3Bl
Y2lmeSBpdCBhcyBhIHVybCBwYXJhbWV0ZXIpLgorCisgICAgICAgIEEgZnV0dXJlIHBhdGNoIHdp
bGwgaG9vayB0aGlzIHVwIHRvIHJlc3VsdHMuaHRtbC4KKworICAgICAgICAqIGZhc3QvaGFybmVz
cy9zdGF0cy5qc29uOiBBZGRlZC4KKyAgICAgICAgKiBmYXN0L2hhcm5lc3MvdGVzdC1kdXJhdGlv
bi10cmVlbWFwLWV4cGVjdGVkLnR4dDogQWRkZWQuCisgICAgICAgICogZmFzdC9oYXJuZXNzL3Rl
c3QtZHVyYXRpb24tdHJlZW1hcC5odG1sOiBBZGRlZC4KKwogMjAyMC0wOC0zMCAgU2ltb24gRnJh
c2VyICA8c2ltb24uZnJhc2VyQGFwcGxlLmNvbT4KIAogICAgICAgICBSdWJiZXJiYW5kaW5nIGlu
IGFuIG92ZXJmbG93OnNjcm9sbCBjYW4gdHJpZ2dlciBwYWdlIGppZ2dsZXMKZGlmZiAtLWdpdCBh
L0xheW91dFRlc3RzL2Zhc3QvaGFybmVzcy9zdGF0cy5qc29uIGIvTGF5b3V0VGVzdHMvZmFzdC9o
YXJuZXNzL3N0YXRzLmpzb24KbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uNDY2NjI1MDMwMGJmY2NjMmQ1YjZjZmIwNzQ3
MWY0ZWRhYjEwMmU4YwotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2Zhc3QvaGFybmVz
cy9zdGF0cy5qc29uCkBAIC0wLDAgKzEsMjE3IEBACit7CisgICAgImZhc3QiOiB7CisgICAgICAg
ICJoYXJuZXNzIjogeworICAgICAgICAgICAgInNhbXBsZS1taXNtYXRjaC1yZWZ0ZXN0Lmh0bWwi
OiB7CisgICAgICAgICAgICAgICAgInJlc3VsdHMiOiBbCisgICAgICAgICAgICAgICAgICAgIDAs
CisgICAgICAgICAgICAgICAgICAgIDExLAorICAgICAgICAgICAgICAgICAgICA0MjU5NywKKyAg
ICAgICAgICAgICAgICAgICAgMzkzLAorICAgICAgICAgICAgICAgICAgICAxOTcKKyAgICAgICAg
ICAgICAgICBdCisgICAgICAgICAgICB9LAorICAgICAgICAgICAgImZhc3RtYWxsb2NzdGF0aXN0
aWNzLW9iamVjdC5odG1sIjogeworICAgICAgICAgICAgICAgICJyZXN1bHRzIjogWworICAgICAg
ICAgICAgICAgICAgICAwLAorICAgICAgICAgICAgICAgICAgICAwLAorICAgICAgICAgICAgICAg
ICAgICA0MjU5NywKKyAgICAgICAgICAgICAgICAgICAgMTI5ODUsCisgICAgICAgICAgICAgICAg
ICAgIDEzMDA5CisgICAgICAgICAgICAgICAgXQorICAgICAgICAgICAgfSwKKyAgICAgICAgICAg
ICJvdmVycmlkZS1wcmVmZXJlbmNlcy0yLmh0bWwiOiB7CisgICAgICAgICAgICAgICAgInJlc3Vs
dHMiOiBbCisgICAgICAgICAgICAgICAgICAgIDAsCisgICAgICAgICAgICAgICAgICAgIDUsCisg
ICAgICAgICAgICAgICAgICAgIDQyNTk3LAorICAgICAgICAgICAgICAgICAgICAxMDMsCisgICAg
ICAgICAgICAgICAgICAgIDMwMgorICAgICAgICAgICAgICAgIF0KKyAgICAgICAgICAgIH0sCisg
ICAgICAgICAgICAic25hcHNob3QtY2FwdHVyZXMtY29tcG9zaXRpbmcuaHRtbCI6IHsKKyAgICAg
ICAgICAgICAgICAicmVzdWx0cyI6IFsKKyAgICAgICAgICAgICAgICAgICAgMCwKKyAgICAgICAg
ICAgICAgICAgICAgMTIsCisgICAgICAgICAgICAgICAgICAgIDQyNTk3LAorICAgICAgICAgICAg
ICAgICAgICAxOTksCisgICAgICAgICAgICAgICAgICAgIDIwMAorICAgICAgICAgICAgICAgIF0K
KyAgICAgICAgICAgIH0sCisgICAgICAgICAgICAidGVzdHJ1bm5lci1vYmplY3QuaHRtbCI6IHsK
KyAgICAgICAgICAgICAgICAicmVzdWx0cyI6IFsKKyAgICAgICAgICAgICAgICAgICAgMCwKKyAg
ICAgICAgICAgICAgICAgICAgMTQsCisgICAgICAgICAgICAgICAgICAgIDQyNTk3LAorICAgICAg
ICAgICAgICAgICAgICA4NiwKKyAgICAgICAgICAgICAgICAgICAgODcKKyAgICAgICAgICAgICAg
ICBdCisgICAgICAgICAgICB9LAorICAgICAgICAgICAgInJlc3VsdHMuaHRtbCI6IHsKKyAgICAg
ICAgICAgICAgICAicmVzdWx0cyI6IFsKKyAgICAgICAgICAgICAgICAgICAgMCwKKyAgICAgICAg
ICAgICAgICAgICAgOSwKKyAgICAgICAgICAgICAgICAgICAgNDI1OTcsCisgICAgICAgICAgICAg
ICAgICAgIDU5MSwKKyAgICAgICAgICAgICAgICAgICAgNTkzCisgICAgICAgICAgICAgICAgXQor
ICAgICAgICAgICAgfSwKKyAgICAgICAgICAgICJyZW5kZXItdHJlZS1hcy10ZXh0LW9wdGlvbnMu
aHRtbCI6IHsKKyAgICAgICAgICAgICAgICAicmVzdWx0cyI6IFsKKyAgICAgICAgICAgICAgICAg
ICAgMCwKKyAgICAgICAgICAgICAgICAgICAgOCwKKyAgICAgICAgICAgICAgICAgICAgNDI1OTcs
CisgICAgICAgICAgICAgICAgICAgIDk2LAorICAgICAgICAgICAgICAgICAgICA5NworICAgICAg
ICAgICAgICAgIF0KKyAgICAgICAgICAgIH0sCisgICAgICAgICAgICAidWlzY3JpcHRjb250cm9s
bGVyIjogeworICAgICAgICAgICAgICAgICJjb25jdXJyZW50LXVpLXNpZGUtc2NyaXB0cy5odG1s
IjogeworICAgICAgICAgICAgICAgICAgICAicmVzdWx0cyI6IFsKKyAgICAgICAgICAgICAgICAg
ICAgICAgIDIsCisgICAgICAgICAgICAgICAgICAgICAgICAwLAorICAgICAgICAgICAgICAgICAg
ICAgICAgNDI2MDMsCisgICAgICAgICAgICAgICAgICAgICAgICAxMjgzMCwKKyAgICAgICAgICAg
ICAgICAgICAgICAgIDEyODQ4CisgICAgICAgICAgICAgICAgICAgIF0KKyAgICAgICAgICAgICAg
ICB9LAorICAgICAgICAgICAgICAgICJ1aS1zaWRlLXNjcmlwdC13aXRoLWNhbGxiYWNrLmh0bWwi
OiB7CisgICAgICAgICAgICAgICAgICAgICJyZXN1bHRzIjogWworICAgICAgICAgICAgICAgICAg
ICAgICAgMiwKKyAgICAgICAgICAgICAgICAgICAgICAgIDIsCisgICAgICAgICAgICAgICAgICAg
ICAgICA0MjYwMywKKyAgICAgICAgICAgICAgICAgICAgICAgIDE0OCwKKyAgICAgICAgICAgICAg
ICAgICAgICAgIDE1MAorICAgICAgICAgICAgICAgICAgICBdCisgICAgICAgICAgICAgICAgfSwK
KyAgICAgICAgICAgICAgICAidWktc2lkZS1zY3JpcHRzLmh0bWwiOiB7CisgICAgICAgICAgICAg
ICAgICAgICJyZXN1bHRzIjogWworICAgICAgICAgICAgICAgICAgICAgICAgMiwKKyAgICAgICAg
ICAgICAgICAgICAgICAgIDMsCisgICAgICAgICAgICAgICAgICAgICAgICA0MjYwMywKKyAgICAg
ICAgICAgICAgICAgICAgICAgIDEzNCwKKyAgICAgICAgICAgICAgICAgICAgICAgIDEzNQorICAg
ICAgICAgICAgICAgICAgICBdCisgICAgICAgICAgICAgICAgfSwKKyAgICAgICAgICAgICAgICAi
dWktc2lkZS1zY3JpcHQtdW5yZWdpc3Rlci1jYWxsYmFjay5odG1sIjogeworICAgICAgICAgICAg
ICAgICAgICAicmVzdWx0cyI6IFsKKyAgICAgICAgICAgICAgICAgICAgICAgIDIsCisgICAgICAg
ICAgICAgICAgICAgICAgICAxLAorICAgICAgICAgICAgICAgICAgICAgICAgNDI2MDMsCisgICAg
ICAgICAgICAgICAgICAgICAgICAxOTgsCisgICAgICAgICAgICAgICAgICAgICAgICAyMDAKKyAg
ICAgICAgICAgICAgICAgICAgXQorICAgICAgICAgICAgICAgIH0KKyAgICAgICAgICAgIH0sCisg
ICAgICAgICAgICAib3ZlcnJpZGUtenp6LXJlc2V0Lmh0bWwiOiB7CisgICAgICAgICAgICAgICAg
InJlc3VsdHMiOiBbCisgICAgICAgICAgICAgICAgICAgIDAsCisgICAgICAgICAgICAgICAgICAg
IDcsCisgICAgICAgICAgICAgICAgICAgIDQyNTk3LAorICAgICAgICAgICAgICAgICAgICA5NywK
KyAgICAgICAgICAgICAgICAgICAgOTgKKyAgICAgICAgICAgICAgICBdCisgICAgICAgICAgICB9
LAorICAgICAgICAgICAgIm1lbW9yeWluZm8tb2JqZWN0Lmh0bWwiOiB7CisgICAgICAgICAgICAg
ICAgInJlc3VsdHMiOiBbCisgICAgICAgICAgICAgICAgICAgIDAsCisgICAgICAgICAgICAgICAg
ICAgIDQsCisgICAgICAgICAgICAgICAgICAgIDQyNTk3LAorICAgICAgICAgICAgICAgICAgICA5
NCwKKyAgICAgICAgICAgICAgICAgICAgOTYKKyAgICAgICAgICAgICAgICBdCisgICAgICAgICAg
ICB9LAorICAgICAgICAgICAgImltYWdlLWRpZmYtdGVtcGxhdGUuaHRtbCI6IHsKKyAgICAgICAg
ICAgICAgICAicmVzdWx0cyI6IFsKKyAgICAgICAgICAgICAgICAgICAgMCwKKyAgICAgICAgICAg
ICAgICAgICAgMiwKKyAgICAgICAgICAgICAgICAgICAgNDI1OTcsCisgICAgICAgICAgICAgICAg
ICAgIDI3NiwKKyAgICAgICAgICAgICAgICAgICAgMjc3CisgICAgICAgICAgICAgICAgXQorICAg
ICAgICAgICAgfSwKKyAgICAgICAgICAgICJpbnRlcm5hbHMtb2JqZWN0Lmh0bWwiOiB7CisgICAg
ICAgICAgICAgICAgInJlc3VsdHMiOiBbCisgICAgICAgICAgICAgICAgICAgIDAsCisgICAgICAg
ICAgICAgICAgICAgIDMsCisgICAgICAgICAgICAgICAgICAgIDQyNTk3LAorICAgICAgICAgICAg
ICAgICAgICA5OSwKKyAgICAgICAgICAgICAgICAgICAgMTAxCisgICAgICAgICAgICAgICAgXQor
ICAgICAgICAgICAgfSwKKyAgICAgICAgICAgICJmb250LXdlaWdodC1ib2xkLmh0bWwiOiB7Cisg
ICAgICAgICAgICAgICAgInJlc3VsdHMiOiBbCisgICAgICAgICAgICAgICAgICAgIDAsCisgICAg
ICAgICAgICAgICAgICAgIDEsCisgICAgICAgICAgICAgICAgICAgIDQyNTk3LAorICAgICAgICAg
ICAgICAgICAgICAyNTgsCisgICAgICAgICAgICAgICAgICAgIDI1OQorICAgICAgICAgICAgICAg
IF0KKyAgICAgICAgICAgIH0sCisgICAgICAgICAgICAidXNlci1wcmVmZXJyZWQtbGFuZ3VhZ2Uu
aHRtbCI6IHsKKyAgICAgICAgICAgICAgICAicmVzdWx0cyI6IFsKKyAgICAgICAgICAgICAgICAg
ICAgMCwKKyAgICAgICAgICAgICAgICAgICAgMTUsCisgICAgICAgICAgICAgICAgICAgIDQyNTk3
LAorICAgICAgICAgICAgICAgICAgICA4OSwKKyAgICAgICAgICAgICAgICAgICAgOTEKKyAgICAg
ICAgICAgICAgICBdCisgICAgICAgICAgICB9LAorICAgICAgICAgICAgInRlc3QtZHVyYXRpb24t
dHJlZW1hcC5odG1sIjogeworICAgICAgICAgICAgICAgICJyZXN1bHRzIjogWworICAgICAgICAg
ICAgICAgICAgICAwLAorICAgICAgICAgICAgICAgICAgICAxMywKKyAgICAgICAgICAgICAgICAg
ICAgNDI1OTcsCisgICAgICAgICAgICAgICAgICAgIDEyNSwKKyAgICAgICAgICAgICAgICAgICAg
MTI3CisgICAgICAgICAgICAgICAgXQorICAgICAgICAgICAgfSwKKyAgICAgICAgICAgICJzYW1w
bGUtZmFpbC1taXNtYXRjaC1yZWZ0ZXN0Lmh0bWwiOiB7CisgICAgICAgICAgICAgICAgInJlc3Vs
dHMiOiBbCisgICAgICAgICAgICAgICAgICAgIDAsCisgICAgICAgICAgICAgICAgICAgIDEwLAor
ICAgICAgICAgICAgICAgICAgICA0MjU5NywKKyAgICAgICAgICAgICAgICAgICAgMjIyLAorICAg
ICAgICAgICAgICAgICAgICAyMjQKKyAgICAgICAgICAgICAgICBdCisgICAgICAgICAgICB9LAor
ICAgICAgICAgICAgInBlcmZ0ZXN0cyI6IHsKKyAgICAgICAgICAgICAgICAicnVucy1wZXItc2Vj
b25kLWl0ZXJhdGlvbnMuaHRtbCI6IHsKKyAgICAgICAgICAgICAgICAgICAgInJlc3VsdHMiOiBb
CisgICAgICAgICAgICAgICAgICAgICAgICAxLAorICAgICAgICAgICAgICAgICAgICAgICAgMSwK
KyAgICAgICAgICAgICAgICAgICAgICAgIDQyNjAwLAorICAgICAgICAgICAgICAgICAgICAgICAg
MTcyLAorICAgICAgICAgICAgICAgICAgICAgICAgMTc0CisgICAgICAgICAgICAgICAgICAgIF0K
KyAgICAgICAgICAgICAgICB9LAorICAgICAgICAgICAgICAgICJydW5zLXBlci1zZWNvbmQtbG9n
Lmh0bWwiOiB7CisgICAgICAgICAgICAgICAgICAgICJyZXN1bHRzIjogWworICAgICAgICAgICAg
ICAgICAgICAgICAgMSwKKyAgICAgICAgICAgICAgICAgICAgICAgIDIsCisgICAgICAgICAgICAg
ICAgICAgICAgICA0MjYwMCwKKyAgICAgICAgICAgICAgICAgICAgICAgIDE2OCwKKyAgICAgICAg
ICAgICAgICAgICAgICAgIDE2OQorICAgICAgICAgICAgICAgICAgICBdCisgICAgICAgICAgICAg
ICAgfSwKKyAgICAgICAgICAgICAgICAicGVyZi1ydW5uZXItY29tcHV0ZS1zdGF0aXN0aWNzLmh0
bWwiOiB7CisgICAgICAgICAgICAgICAgICAgICJyZXN1bHRzIjogWworICAgICAgICAgICAgICAg
ICAgICAgICAgMSwKKyAgICAgICAgICAgICAgICAgICAgICAgIDAsCisgICAgICAgICAgICAgICAg
ICAgICAgICA0MjYwMCwKKyAgICAgICAgICAgICAgICAgICAgICAgIDEzMDA4LAorICAgICAgICAg
ICAgICAgICAgICAgICAgMTMwMjUKKyAgICAgICAgICAgICAgICAgICAgXQorICAgICAgICAgICAg
ICAgIH0KKyAgICAgICAgICAgIH0sCisgICAgICAgICAgICAib3ZlcnJpZGUtcHJlZmVyZW5jZXMu
aHRtbCI6IHsKKyAgICAgICAgICAgICAgICAicmVzdWx0cyI6IFsKKyAgICAgICAgICAgICAgICAg
ICAgMCwKKyAgICAgICAgICAgICAgICAgICAgNiwKKyAgICAgICAgICAgICAgICAgICAgNDI1OTcs
CisgICAgICAgICAgICAgICAgICAgIDM3LAorICAgICAgICAgICAgICAgICAgICAzOAorICAgICAg
ICAgICAgICAgIF0KKyAgICAgICAgICAgIH0KKyAgICAgICAgfQorICAgIH0KK30KXCBObyBuZXds
aW5lIGF0IGVuZCBvZiBmaWxlCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L2hhcm5lc3Mv
dGVzdC1kdXJhdGlvbi10cmVlbWFwLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2Zhc3QvaGFy
bmVzcy90ZXN0LWR1cmF0aW9uLXRyZWVtYXAtZXhwZWN0ZWQudHh0Cm5ldyBmaWxlIG1vZGUgMTAw
NjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmM1ODM0
N2U0ZWM4MTE0N2RlN2VhODNkNDg0YzQ0MWM1OThiMTc4MTAKLS0tIC9kZXYvbnVsbAorKysgYi9M
YXlvdXRUZXN0cy9mYXN0L2hhcm5lc3MvdGVzdC1kdXJhdGlvbi10cmVlbWFwLWV4cGVjdGVkLnR4
dApAQCAtMCwwICsxLDExIEBACitEcm9wIHN0YXRzLmpzb24gZmlsZSBoZXJlIHRvIGxvYWQuCitD
bGljayBvbiBhIGJveCB0byB6b29tIGluLiBDbGljayBvbiB0aGUgb3V0ZXJtb3N0IGJveCB0byB6
b29tIG91dC4gUmVzZXQKKworTGF5b3V0VGVzdHMgKDQycyAtIDIzIHRlc3RzKQorZmFzdCAoNDJz
IC0gMjMgdGVzdHMpCitoYXJuZXNzICg0MnMgLSAyMyB0ZXN0cykKK3BlcmZ0ZXN0cyAoMTNzIC0g
MyB0ZXN0cykKK3BlcmYtcnVubmVyLWNvbXB1dGUtc3RhdGlzdGljcy5odG1sICgxM3MpCit1aXNj
cmlwdGNvbnRyb2xsZXIgKDEzcyAtIDQgdGVzdHMpCitjb25jdXJyZW50LXVpLXNpZGUtc2NyaXB0
cy5odG1sICgxM3MpCitmYXN0bWFsbG9jc3RhdGlzdGljcy1vYmplY3QuaHRtbCAoMTNzKQpkaWZm
IC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9oYXJuZXNzL3Rlc3QtZHVyYXRpb24tdHJlZW1hcC5o
dG1sIGIvTGF5b3V0VGVzdHMvZmFzdC9oYXJuZXNzL3Rlc3QtZHVyYXRpb24tdHJlZW1hcC5odG1s
Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAuLjc5ZTg5NWQ0NTgyMTRjNTBjYTQ4MDk5ZTM2YTczYTU0ZTBhYWNmN2EKLS0t
IC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9mYXN0L2hhcm5lc3MvdGVzdC1kdXJhdGlvbi10
cmVlbWFwLmh0bWwKQEAgLTAsMCArMSw1NjUgQEAKKzwhLS0gCitDb3B5cmlnaHQgKEMpIDIwMjAg
QXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorQ29weXJpZ2h0IChDKSAyMDExIEdvb2ds
ZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisKK1JlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4g
c291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAorbW9kaWZpY2F0aW9uLCBh
cmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCithcmUg
bWV0OgorMS4gUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBh
Ym92ZSBjb3B5cmlnaHQKKyAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRo
ZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKzIuIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9y
bSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0CisgICBub3RpY2UsIHRoaXMgbGlz
dCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCisgICBk
b2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlz
dHJpYnV0aW9uLgorCitUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIEFQUExFIElOQy4gYGBB
UyBJUycnIEFORCBBTlkKK0VYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcs
IEJVVCBOT1QgTElNSVRFRCBUTywgVEhFCitJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRB
QklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIKK1BVUlBPU0UgQVJFIERJU0NMQUlN
RUQuICBJTiBOTyBFVkVOVCBTSEFMTCBBUFBMRSBJTkMuIE9SCitDT05UUklCVVRPUlMgQkUgTElB
QkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwKK0VYRU1Q
TEFSWSwgT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRF
RCBUTywKK1BST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1Mg
T0YgVVNFLCBEQVRBLCBPUgorUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dF
VkVSIENBVVNFRCBBTkQgT04gQU5ZIFRIRU9SWQorT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENP
TlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUCisoSU5DTFVESU5HIE5FR0xJR0VOQ0Ug
T1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UKK09GIFRISVMg
U09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1B
R0UuIAorLS0+Cis8IURPQ1RZUEUgaHRtbD4KKzxodG1sPgorPHRpdGxlPlRlc3QgUnVudGltZXM8
L3RpdGxlPgorPHN0eWxlPgorICAgIGh0bWwgeworICAgICAgICBoZWlnaHQ6IDEwMCU7CisgICAg
fQorCisgICAgYm9keSB7CisgICAgICAgIGhlaWdodDogMTAwJTsKKyAgICAgICAgZGlzcGxheTog
ZmxleDsKKyAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjsKKyAgICAgICAgZm9udC1mYW1p
bHk6ICJIZWx2ZXRpY2EgTmV1ZSI7CisgICAgfQorCisgICAgdGQ6Zmlyc3QtY2hpbGQgeworICAg
ICAgICB0ZXh0LWFsaWduOiBsZWZ0OworICAgIH0KKworICAgIHRkIHsKKyAgICAgICAgdGV4dC1h
bGlnbjogcmlnaHQ7CisgICAgfQorICAgIAorICAgIGhlYWRlciB7CisgICAgICAgIHBvc2l0aW9u
OiByZWxhdGl2ZTsKKyAgICAgICAgaGVpZ2h0OiA0cmVtOworICAgIH0KKyAgICAKKyAgICBoZWFk
ZXIgYSB7CisgICAgICAgIG1hcmdpbi1sZWZ0OiAwLjI1ZW0KKyAgICB9CisKKyAgICBoZWFkZXIg
cCB7CisgICAgICAgIGZvbnQtc2l6ZTogc21hbGxlcjsKKyAgICB9CisKKyAgICAjbWFwIHsKKyAg
ICAgICAgcG9zaXRpb246IHJlbGF0aXZlOworICAgICAgICBmbGV4LWdyb3c6IDE7CisgICAgICAg
IGN1cnNvcjogcG9pbnRlcjsKKyAgICAgICAgLXdlYmtpdC11c2VyLXNlbGVjdDogbm9uZTsKKyAg
ICB9CisKKyAgICAuZXh0cmEtZG9tIHsKKyAgICAgICAgZGlzcGxheTogbm9uZTsKKyAgICAgICAg
Ym9yZGVyOiBub25lOworICAgICAgICBib3JkZXItdG9wOiAxcHggZGFzaGVkOworICAgICAgICBw
YWRkaW5nOiA0cHg7CisgICAgICAgIG1hcmdpbjogMDsKKyAgICAgICAgb3ZlcmZsb3c6IGF1dG87
CisgICAgICAgIGN1cnNvcjogYXV0bzsKKyAgICAgICAgLXdlYmtpdC11c2VyLXNlbGVjdDogdGV4
dDsKKyAgICB9CisKKyAgICAuZXJyb3IgeworICAgICAgICBjb2xvcjogcmVkOworICAgICAgICBm
b250LXN0eWxlOiBpdGFsaWM7CisgICAgfQorCisgICAgI2Ryb3BUYXJnZXQgeworICAgICAgICBm
b250LXNpemU6IDEwcHQ7CisgICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkOworICAgICAgICBjb2xv
cjogIzg4ODsKKyAgICAgICAgcG9zaXRpb246IGFic29sdXRlOworICAgICAgICB0b3A6IDRweDsK
KyAgICAgICAgcmlnaHQ6IDRweDsKKyAgICAgICAgYm9yZGVyOiAycHggc29saWQgcmdiYSgwLCAw
LCAwLCAwLjMpOworICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuMSk7
CisgICAgICAgIHBhZGRpbmc6IDEwcHg7CisgICAgICAgIGJvcmRlci1yYWRpdXM6IDEwcHg7Cisg
ICAgfQorCisgICAgI2Ryb3BUYXJnZXQuZHJhZ092ZXIgeworICAgICAgICBib3JkZXI6IDJweCBz
b2xpZCByZ2JhKDAsIDAsIDAsIDAuMSk7CisgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEo
MCwgMCwgMCwgMC41KTsKKyAgICAgICAgY29sb3I6ICNkZGQ7CisgICAgfQorCisgICAgLndlYnRy
ZWVtYXAtbm9kZSB7CisgICAgICAgIC8qIFJlcXVpcmVkIGF0dHJpYnV0ZXMuICovCisgICAgICAg
IHBvc2l0aW9uOiBhYnNvbHV0ZTsKKyAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjsgICAvKiBUbyBo
aWRlIG92ZXJsb25nIGNhcHRpb25zLiAqLworICAgICAgICBiYWNrZ3JvdW5kOiB3aGl0ZTsgIC8q
IE5vZGVzIG11c3QgYmUgb3BhcXVlIGZvciB6SW5kZXggbGF5ZXJpbmcuICovCisgICAgICAgIGJv
cmRlcjogc29saWQgMXB4IGJsYWNrOyAgLyogQ2FsY3VsYXRpb25zIGFzc3VtZSAxcHggYm9yZGVy
LiAqLworCisgICAgICAgIHRyYW5zaXRpb246IHRvcCAgICAwLjNzLAorICAgICAgICBsZWZ0ICAg
MC4zcywKKyAgICAgICAgd2lkdGggIDAuM3MsCisgICAgICAgIGhlaWdodCAwLjNzOworICAgIH0K
KworICAgIC8qIE9wdGlvbmFsOiBoaWdobGlnaHQgbm9kZXMgb24gbW91c2VvdmVyLiAqLworICAg
IC53ZWJ0cmVlbWFwLW5vZGU6aG92ZXIgeworICAgICAgICBiYWNrZ3JvdW5kOiAjZWVlOworICAg
IH0KKworICAgIC8qIE9wdGlvbmFsOiBEaWZmZXJlbnQgYm9yZGVycyBkZXBlbmRpbmcgb24gbGV2
ZWwuICovCisgICAgLndlYnRyZWVtYXAtbGV2ZWwwIHsKKyAgICAgICAgYm9yZGVyOiBzb2xpZCAx
cHggIzQ0NDsKKyAgICB9CisgICAgLndlYnRyZWVtYXAtbGV2ZWwxIHsKKyAgICAgICAgYm9yZGVy
OiBzb2xpZCAxcHggIzY2NjsKKyAgICB9CisgICAgLndlYnRyZWVtYXAtbGV2ZWwyIHsKKyAgICAg
ICAgYm9yZGVyOiBzb2xpZCAxcHggIzg4ODsKKyAgICB9CisgICAgLndlYnRyZWVtYXAtbGV2ZWwz
IHsKKyAgICAgICAgYm9yZGVyOiBzb2xpZCAxcHggI2FhYTsKKyAgICB9CisgICAgLndlYnRyZWVt
YXAtbGV2ZWw0IHsKKyAgICAgICAgYm9yZGVyOiBzb2xpZCAxcHggI2NjYzsKKyAgICB9CisKKyAg
ICAvKiBPcHRpb25hbDogc3R5bGluZyBvbiBub2RlIGNhcHRpb25zLiAqLworICAgIC53ZWJ0cmVl
bWFwLWNhcHRpb24geworICAgICAgICBmb250LWZhbWlseTogc2Fucy1zZXJpZjsKKyAgICAgICAg
Zm9udC1zaXplOiAxMXB4OworICAgICAgICBwYWRkaW5nOiAycHg7CisgICAgICAgIHRleHQtYWxp
Z246IGNlbnRlcjsKKyAgICB9Cis8L3N0eWxlPgorCis8c2NyaXB0PgorCitjbGFzcyBXZWJUcmVl
TWFwIHsKKyAgICBzdGF0aWMgZ2V0IGJvcmRlcldpZHRoKCkKKyAgICB7CisgICAgICAgIHJldHVy
biAxOworICAgIH0KKworICAgIHN0YXRpYyBnZXQgcGFkZGluZygpCisgICAgeworICAgICAgICBy
ZXR1cm4gMTsKKyAgICB9CisKKyAgICBjb25zdHJ1Y3Rvcih0cmVlRGF0YSwgY29udGFpbmVyRWxl
bWVudCkKKyAgICB7CisgICAgICAgIHRoaXMuX2ZvY3VzZWROb2RlID0gbnVsbDsKKworICAgICAg
ICBsZXQgc3R5bGUgPSBnZXRDb21wdXRlZFN0eWxlKGNvbnRhaW5lckVsZW1lbnQsIG51bGwpOwor
ICAgICAgICBsZXQgd2lkdGggPSBwYXJzZUludChzdHlsZS53aWR0aCk7CisgICAgICAgIGxldCBo
ZWlnaHQgPSBwYXJzZUludChzdHlsZS5oZWlnaHQpOworCisgICAgICAgIHRoaXMubWFrZURvbSh0
cmVlRGF0YSwgMCk7CisgICAgICAgIGNvbnRhaW5lckVsZW1lbnQuYXBwZW5kQ2hpbGQodHJlZURh
dGEuZG9tKTsKKyAgICAgICAgdGhpcy5wb3NpdGlvbih0cmVlRGF0YS5kb20sIDAsIDAsIHdpZHRo
LCBoZWlnaHQpOworICAgICAgICB0aGlzLmxheW91dCh0cmVlRGF0YSwgMCwgd2lkdGgsIGhlaWdo
dCk7CisgICAgfQorCisgICAgZm9jdXModHJlZSkKKyAgICB7CisgICAgICAgIHRoaXMuX2ZvY3Vz
ZWROb2RlID0gdHJlZTsKKworICAgICAgICAvLyBIaWRlIGFsbCB2aXNpYmxlIHNpYmxpbmdzIG9m
IGFsbCBvdXIgYW5jZXN0b3JzIGJ5IGxvd2VyaW5nIHRoZW0uCisgICAgICAgIGxldCBsZXZlbCA9
IDA7CisgICAgICAgIGxldCByb290ID0gdHJlZTsKKyAgICAgICAgd2hpbGUgKHJvb3QucGFyZW50
KSB7CisgICAgICAgICAgICByb290ID0gcm9vdC5wYXJlbnQ7CisgICAgICAgICAgICBsZXZlbCAr
PSAxOworICAgICAgICAgICAgZm9yIChsZXQgaSA9IDAsIHNpYmxpbmc7IHNpYmxpbmcgPSByb290
LmNoaWxkcmVuW2ldOyArK2kpIHsKKyAgICAgICAgICAgICAgICBpZiAoc2libGluZy5kb20pCisg
ICAgICAgICAgICAgICAgICAgIHNpYmxpbmcuZG9tLnN0eWxlLnpJbmRleCA9IDA7CisgICAgICAg
ICAgICB9CisgICAgICAgIH0KKyAgICAgICAgbGV0IHdpZHRoID0gcm9vdC5kb20ub2Zmc2V0V2lk
dGg7CisgICAgICAgIGxldCBoZWlnaHQgPSByb290LmRvbS5vZmZzZXRIZWlnaHQ7CisgICAgICAg
IC8vIFVuaGlkZSAocmFpc2UpIGFuZCBtYXhpbWl6ZSB1cyBhbmQgb3VyIGFuY2VzdG9ycy4KKyAg
ICAgICAgZm9yIChsZXQgdCA9IHRyZWU7IHQucGFyZW50OyB0ID0gdC5wYXJlbnQpIHsKKyAgICAg
ICAgICAgIC8vIFNoaWZ0IG9mZiBieSBib3JkZXIgc28gd2UgZG9uJ3QgZ2V0IG5lc3RlZCBib3Jk
ZXJzLgorICAgICAgICAgICAgLy8gVE9ETzogYWN0dWFsbHkgbWFrZSBuZXN0ZWQgYm9yZGVycyB3
b3JrIChuZWVkIHRvIGFkanVzdCB3aWR0aC9oZWlnaHQpLgorICAgICAgICAgICAgdGhpcy5wb3Np
dGlvbih0LmRvbSwgLVdlYlRyZWVNYXAuYm9yZGVyV2lkdGgsIC1XZWJUcmVlTWFwLmJvcmRlcldp
ZHRoLCB3aWR0aCwgaGVpZ2h0KTsKKyAgICAgICAgICAgIHQuZG9tLnN0eWxlLnpJbmRleCA9IDE7
CisgICAgICAgIH0KKyAgICAgICAgLy8gQW5kIGxheW91dCBpbnRvIHRoZSB0b3Btb3N0IGJveC4K
KyAgICAgICAgdGhpcy5sYXlvdXQodHJlZSwgbGV2ZWwsIHdpZHRoLCBoZWlnaHQpOworICAgICAg
ICB0aGlzLmhhbmRsZUZvY3VzKHRyZWUpOworICAgIH0KKyAgICAKKyAgICBoYW5kbGVGb2N1cyh0
cmVlKQorICAgIHsKKyAgICAgICAgLy8gRm9yIGRlbGVnYXRpb24uCisgICAgfQorCisgICAgbWFr
ZURvbSh0cmVlLCBsZXZlbCkKKyAgICB7CisgICAgICAgIGxldCBkb20gPSBkb2N1bWVudC5jcmVh
dGVFbGVtZW50KCdkaXYnKTsKKyAgICAgICAgZG9tLnN0eWxlLnpJbmRleCA9IDE7CisgICAgICAg
IGRvbS5jbGFzc05hbWUgPSAnd2VidHJlZW1hcC1ub2RlIHdlYnRyZWVtYXAtbGV2ZWwnICsgTWF0
aC5taW4obGV2ZWwsIDQpOworCisgICAgICAgIGRvbS5hZGRFdmVudExpc3RlbmVyKCdtb3VzZWRv
d24nLCBlID0+IHsKKyAgICAgICAgICAgIGlmIChlLmJ1dHRvbiA9PSAwKSB7CisgICAgICAgICAg
ICAgICAgaWYgKHRoaXMuX2ZvY3VzZWROb2RlICYmIHRyZWUgPT0gdGhpcy5fZm9jdXNlZE5vZGUg
JiYgdGhpcy5fZm9jdXNlZE5vZGUucGFyZW50KQorICAgICAgICAgICAgICAgICAgICB0aGlzLmZv
Y3VzKHRoaXMuX2ZvY3VzZWROb2RlLnBhcmVudCk7CisgICAgICAgICAgICAgICAgZWxzZQorICAg
ICAgICAgICAgICAgICAgICB0aGlzLmZvY3VzKHRyZWUpOworICAgICAgICAgICAgfQorICAgICAg
ICAgICAgZS5zdG9wUHJvcGFnYXRpb24oKTsKKyAgICAgICAgICAgIHJldHVybiB0cnVlOworICAg
ICAgICB9LCBmYWxzZSk7CisKKyAgICAgICAgbGV0IGNhcHRpb24gPSBkb2N1bWVudC5jcmVhdGVF
bGVtZW50KCdkaXYnKTsKKyAgICAgICAgY2FwdGlvbi5jbGFzc05hbWUgPSAnd2VidHJlZW1hcC1j
YXB0aW9uJzsKKyAgICAgICAgY2FwdGlvbi5pbm5lckhUTUwgPSB0cmVlLm5hbWU7CisgICAgICAg
IGRvbS5hcHBlbmRDaGlsZChjYXB0aW9uKTsKKworICAgICAgICB0cmVlLmRvbSA9IGRvbTsKKyAg
ICAgICAgcmV0dXJuIGRvbTsKKyAgICB9CisKKyAgICBwb3NpdGlvbihkb20sIHgsIHksIHdpZHRo
LCBoZWlnaHQpCisgICAgeworICAgICAgICAvLyBDU1Mgd2lkdGgvaGVpZ2h0IGRvZXMgbm90IGlu
Y2x1ZGUgYm9yZGVyLgorICAgICAgICB3aWR0aCAtPSBXZWJUcmVlTWFwLmJvcmRlcldpZHRoICog
MjsKKyAgICAgICAgaGVpZ2h0IC09IFdlYlRyZWVNYXAuYm9yZGVyV2lkdGggKiAyOworCisgICAg
ICAgIGRvbS5zdHlsZS5sZWZ0ICAgPSB4ICsgJ3B4JzsKKyAgICAgICAgZG9tLnN0eWxlLnRvcCAg
ICA9IHkgKyAncHgnOworICAgICAgICBkb20uc3R5bGUud2lkdGggID0gTWF0aC5tYXgod2lkdGgs
IDApICsgJ3B4JzsKKyAgICAgICAgZG9tLnN0eWxlLmhlaWdodCA9IE1hdGgubWF4KGhlaWdodCwg
MCkgKyAncHgnOworICAgIH0KKworICAgIC8vIEdpdmVuIGEgbGlzdCBvZiByZWN0YW5nbGVzIHxu
b2Rlc3wsIHRoZSAxLWQgc3BhY2UgYXZhaWxhYmxlCisgICAgLy8gfHNwYWNlfCwgYW5kIGEgc3Rh
cnRpbmcgcmVjdGFuZ2xlIGluZGV4IHxzdGFydHwsIGNvbXB1dGUgYW4gc3BhbiBvZgorICAgIC8v
IHJlY3RhbmdsZXMgdGhhdCBvcHRpbWl6ZXMgYSBwbGVhc2FudCBhc3BlY3QgcmF0aW8uCisgICAg
Ly8KKyAgICAvLyBSZXR1cm5zIFtlbmQsIHN1bV0sIHdoZXJlIGVuZCBpcyBvbmUgcGFzdCB0aGUg
bGFzdCByZWN0YW5nbGUgYW5kIHN1bSBpcyB0aGUKKyAgICAvLyAyLWQgc3VtIG9mIHRoZSByZWN0
YW5nbGVzJyBhcmVhcy4KKyAgICBzZWxlY3RTcGFuKG5vZGVzLCBzcGFjZSwgc3RhcnQpCisgICAg
eworICAgICAgICAvLyBBZGQgcmVjdGFuZ2xlIG9uZSBieSBvbmUsIHN0b3BwaW5nIHdoZW4gYXNw
ZWN0IHJhdGlvcyBiZWdpbiB0byBnbworICAgICAgICAvLyBiYWQuIFJlc3VsdCBpcyBbc3RhcnQs
ZW5kKSBjb3ZlcmluZyB0aGUgYmVzdCBydW4gZm9yIHRoaXMgc3Bhbi4KKyAgICAgICAgLy8gaHR0
cDovL3NjaG9sYXIuZ29vZ2xlLmNvbS9zY2hvbGFyP2NsdXN0ZXI9NTk3MjUxMjEwNzg0NTYxNTQ3
NAorICAgICAgICBsZXQgbm9kZSA9IG5vZGVzW3N0YXJ0XTsKKyAgICAgICAgbGV0IHJtaW4gPSBu
b2RlLmRhdGFbJyRhcmVhJ107ICAvLyBTbWFsbGVzdCBzZWVuIGNoaWxkIHNvIGZhci4KKyAgICAg
ICAgbGV0IHJtYXggPSBybWluOyAgICAgICAgICAgICAgICAvLyBMYXJnZXN0IGNoaWxkLgorICAg
ICAgICBsZXQgcnN1bSA9IDA7ICAgICAgICAgICAgICAgICAgIC8vIFN1bSBvZiBjaGlsZHJlbiBp
biB0aGlzIHNwYW4uCisgICAgICAgIGxldCBsYXN0X3Njb3JlID0gMDsgICAgICAgICAgICAgLy8g
QmVzdCBzY29yZSB5ZXQgZm91bmQuCisgICAgICAgIGxldCBlbmQ7CisgICAgICAgIGZvciAoZW5k
ID0gc3RhcnQ7IG5vZGUgPSBub2Rlc1tlbmRdOyArK2VuZCkgeworICAgICAgICAgICAgbGV0IHNp
emUgPSBub2RlLmRhdGFbJyRhcmVhJ107CisgICAgICAgICAgICBpZiAoc2l6ZSA8IHJtaW4pCisg
ICAgICAgICAgICAgICAgcm1pbiA9IHNpemU7CisgICAgICAgICAgICBpZiAoc2l6ZSA+IHJtYXgp
CisgICAgICAgICAgICAgICAgcm1heCA9IHNpemU7CisgICAgICAgICAgICByc3VtICs9IHNpemU7
CisKKyAgICAgICAgICAgIC8vIFRoaXMgZm9ybXVsYSBpcyBmcm9tIHRoZSBwYXBlciwgYnV0IHlv
dSBjYW4gZWFzaWx5IHByb3ZlIHRvCisgICAgICAgICAgICAvLyB5b3Vyc2VsZiBpdCdzIHRha2lu
ZyB0aGUgbGFyZ2VyIG9mIHRoZSB4L3kgYXNwZWN0IHJhdGlvIG9yIHRoZQorICAgICAgICAgICAg
Ly8geS94IGFzcGVjdCByYXRpby4gVGhlIGFkZGl0aW9uYWwgbWFnaWMgZnVkZ2UgY29uc3RhbnQg
b2YgNQorICAgICAgICAgICAgLy8gbWFrZXMgdXMgcHJlZmVyIHdpZGVyIHJlY3RhbmdsZXMgdG8g
dGFsbGVyIG9uZXMuCisgICAgICAgICAgICBsZXQgc2NvcmUgPSBNYXRoLm1heCg1ICogc3BhY2Ug
KiBzcGFjZSAqIHJtYXggLyAocnN1bSAqIHJzdW0pLCAxICogcnN1bSAqIHJzdW0gLyAoc3BhY2Ug
KiBzcGFjZSAqIHJtaW4pKTsKKyAgICAgICAgICAgIGlmIChsYXN0X3Njb3JlICYmIHNjb3JlID4g
bGFzdF9zY29yZSkgeworICAgICAgICAgICAgICAgIHJzdW0gLT0gc2l6ZTsgICAgLy8gVW5kbyBz
aXplIGFkZGl0aW9uIGZyb20ganVzdCBhYm92ZS4KKyAgICAgICAgICAgICAgICBicmVhazsKKyAg
ICAgICAgICAgIH0KKyAgICAgICAgICAgIGxhc3Rfc2NvcmUgPSBzY29yZTsKKyAgICAgICAgfQor
ICAgICAgICByZXR1cm4gW2VuZCwgcnN1bV07CisgICAgfQorCisgICAgbGF5b3V0KHRyZWUsIGxl
dmVsLCB3aWR0aCwgaGVpZ2h0KQorICAgIHsKKyAgICAgICAgaWYgKCEoJ2NoaWxkcmVuJyBpbiB0
cmVlKSkKKyAgICAgICAgICAgIHJldHVybjsKKworICAgICAgICBsZXQgdG90YWwgPSB0cmVlLmRh
dGFbJyRhcmVhJ107CisKKyAgICAgICAgLy8gWFhYIHdoeSBkbyBJIG5lZWQgYW4gZXh0cmEgLTEv
LTIgaGVyZSBmb3Igd2lkdGgvaGVpZ2h0IHRvIGxvb2sgcmlnaHQ/CisgICAgICAgIGxldCB4MSA9
IDAsIHkxID0gMCwgeDIgPSB3aWR0aCAtIDEsIHkyID0gaGVpZ2h0IC0gMjsKKyAgICAgICAgeDEg
Kz0gV2ViVHJlZU1hcC5wYWRkaW5nOyB5MSArPSBXZWJUcmVlTWFwLnBhZGRpbmc7CisgICAgICAg
IHgyIC09IFdlYlRyZWVNYXAucGFkZGluZzsgeTIgLT0gV2ViVHJlZU1hcC5wYWRkaW5nOworICAg
ICAgICB5MSArPSAxNDsgLy8gWFhYIGdldCBmaXJzdCBjaGlsZCBoZWlnaHQgZm9yIGNhcHRpb24g
c3BhY2luZworCisgICAgICAgIGxldCBwaXhlbHNfdG9fdW5pdHMgPSBNYXRoLnNxcnQodG90YWwg
LyAoKHgyIC0geDEpICogKHkyIC0geTEpKSk7CisKKyAgICAgICAgZm9yIChsZXQgc3RhcnQgPSAw
LCBjaGlsZDsgY2hpbGQgPSB0cmVlLmNoaWxkcmVuW3N0YXJ0XTsgKytzdGFydCkgeworICAgICAg
ICAgICAgaWYgKHgyIC0geDEgPCA2MCB8fCB5MiAtIHkxIDwgNDApIHsKKyAgICAgICAgICAgICAg
ICBpZiAoY2hpbGQuZG9tKSB7CisgICAgICAgICAgICAgICAgICAgIGNoaWxkLmRvbS5zdHlsZS56
SW5kZXggPSAwOworICAgICAgICAgICAgICAgICAgICB0aGlzLnBvc2l0aW9uKGNoaWxkLmRvbSwg
LTIsIC0yLCAwLCAwKTsKKyAgICAgICAgICAgICAgICB9CisgICAgICAgICAgICAgICAgY29udGlu
dWU7CisgICAgICAgICAgICB9CisKKyAgICAgICAgICAgIC8vIEluIHRoZW9yeSB3ZSBjYW4gZHlu
YW1pY2FsbHkgZGVjaWRlIHdoZXRoZXIgdG8gc3BsaXQgaW4geCBvciB5IGJhc2VkCisgICAgICAg
ICAgICAvLyBvbiBhc3BlY3QgcmF0aW8uIEluIHByYWN0aWNlLCBjaGFuZ2luZyBzcGxpdCBkaXJl
Y3Rpb24gd2l0aCB0aGlzCisgICAgICAgICAgICAvLyBsYXlvdXQgZG9lc24ndCBsb29rIHZlcnkg
Z29vZC4KKyAgICAgICAgICAgIC8vICAgdmFyIHlzcGxpdCA9ICh5MiAtIHkxKSA+ICh4MiAtIHgx
KTsKKyAgICAgICAgICAgIGxldCB5c3BsaXQgPSB0cnVlOworCisgICAgICAgICAgICBsZXQgc3Bh
Y2U7ICAvLyBTcGFjZSBhdmFpbGFibGUgYWxvbmcgbGF5b3V0IGF4aXMuCisgICAgICAgICAgICBp
ZiAoeXNwbGl0KQorICAgICAgICAgICAgICAgIHNwYWNlID0gKHkyIC0geTEpICogcGl4ZWxzX3Rv
X3VuaXRzOworICAgICAgICAgICAgZWxzZQorICAgICAgICAgICAgICAgIHNwYWNlID0gKHgyIC0g
eDEpICogcGl4ZWxzX3RvX3VuaXRzOworCisgICAgICAgICAgICBsZXQgc3BhbiA9IHRoaXMuc2Vs
ZWN0U3Bhbih0cmVlLmNoaWxkcmVuLCBzcGFjZSwgc3RhcnQpOworICAgICAgICAgICAgbGV0IGVu
ZCA9IHNwYW5bMF07CisgICAgICAgICAgICBsZXQgcnN1bSA9IHNwYW5bMV07CisKKyAgICAgICAg
ICAgIC8vIE5vdyB0aGF0IHdlJ3ZlIHNlbGVjdGVkIGEgc3BhbiwgbGF5IG91dCByZWN0YW5nbGVz
IFtzdGFydCxlbmQpIGluIG91cgorICAgICAgICAgICAgLy8gYXZhaWxhYmxlIHNwYWNlLgorICAg
ICAgICAgICAgbGV0IHggPSB4MTsKKyAgICAgICAgICAgIGxldCB5ID0geTE7CisgICAgICAgICAg
ICBmb3IgKGxldCBpID0gc3RhcnQ7IGkgPCBlbmQ7ICsraSkgeworICAgICAgICAgICAgICAgIGNo
aWxkID0gdHJlZS5jaGlsZHJlbltpXTsKKyAgICAgICAgICAgICAgICBpZiAoIWNoaWxkLmRvbSkg
eworICAgICAgICAgICAgICAgICAgICBjaGlsZC5wYXJlbnQgPSB0cmVlOworICAgICAgICAgICAg
ICAgICAgICBjaGlsZC5kb20gPSB0aGlzLm1ha2VEb20oY2hpbGQsIGxldmVsICsgMSk7CisgICAg
ICAgICAgICAgICAgICAgIHRyZWUuZG9tLmFwcGVuZENoaWxkKGNoaWxkLmRvbSk7CisgICAgICAg
ICAgICAgICAgfSBlbHNlIHsKKyAgICAgICAgICAgICAgICAgICAgY2hpbGQuZG9tLnN0eWxlLnpJ
bmRleCA9IDE7CisgICAgICAgICAgICAgICAgfQorICAgICAgICAgICAgICAgIGxldCBzaXplID0g
Y2hpbGQuZGF0YVsnJGFyZWEnXTsKKyAgICAgICAgICAgICAgICBsZXQgZnJhYyA9IHNpemUgLyBy
c3VtOworICAgICAgICAgICAgICAgIGlmICh5c3BsaXQpIHsKKyAgICAgICAgICAgICAgICAgICAg
d2lkdGggPSByc3VtIC8gc3BhY2U7CisgICAgICAgICAgICAgICAgICAgIGhlaWdodCA9IHNpemUg
LyB3aWR0aDsKKyAgICAgICAgICAgICAgICB9IGVsc2UgeworICAgICAgICAgICAgICAgICAgICBo
ZWlnaHQgPSByc3VtIC8gc3BhY2U7CisgICAgICAgICAgICAgICAgICAgIHdpZHRoID0gc2l6ZSAv
IGhlaWdodDsKKyAgICAgICAgICAgICAgICB9CisgICAgICAgICAgICAgICAgd2lkdGggLz0gcGl4
ZWxzX3RvX3VuaXRzOworICAgICAgICAgICAgICAgIGhlaWdodCAvPSBwaXhlbHNfdG9fdW5pdHM7
CisgICAgICAgICAgICAgICAgd2lkdGggPSBNYXRoLnJvdW5kKHdpZHRoKTsKKyAgICAgICAgICAg
ICAgICBoZWlnaHQgPSBNYXRoLnJvdW5kKGhlaWdodCk7CisgICAgICAgICAgICAgICAgdGhpcy5w
b3NpdGlvbihjaGlsZC5kb20sIHgsIHksIHdpZHRoLCBoZWlnaHQpOworICAgICAgICAgICAgICAg
IGlmICgnY2hpbGRyZW4nIGluIGNoaWxkKSB7CisgICAgICAgICAgICAgICAgICAgIHRoaXMubGF5
b3V0KGNoaWxkLCBsZXZlbCArIDEsIHdpZHRoLCBoZWlnaHQpOworICAgICAgICAgICAgICAgIH0K
KyAgICAgICAgICAgICAgICBpZiAoeXNwbGl0KQorICAgICAgICAgICAgICAgICAgICB5ICs9IGhl
aWdodDsKKyAgICAgICAgICAgICAgICBlbHNlCisgICAgICAgICAgICAgICAgICAgIHggKz0gd2lk
dGg7CisgICAgICAgICAgICB9CisKKyAgICAgICAgICAgIC8vIFNocmluayBvdXIgYXZhaWxhYmxl
IHNwYWNlIGJhc2VkIG9uIHRoZSBhbW91bnQgd2UgdXNlZC4KKyAgICAgICAgICAgIGlmICh5c3Bs
aXQpCisgICAgICAgICAgICAgICAgeDEgKz0gTWF0aC5yb3VuZCgocnN1bSAvIHNwYWNlKSAvIHBp
eGVsc190b191bml0cyk7CisgICAgICAgICAgICBlbHNlCisgICAgICAgICAgICAgICAgeTEgKz0g
TWF0aC5yb3VuZCgocnN1bSAvIHNwYWNlKSAvIHBpeGVsc190b191bml0cyk7CisKKyAgICAgICAg
ICAgIC8vIGVuZCBwb2ludHMgb25lIHBhc3Qgd2hlcmUgd2UgZW5kZWQsIHdoaWNoIGlzIHdoZXJl
IHdlIHdhbnQgdG8KKyAgICAgICAgICAgIC8vIGJlZ2luIHRoZSBuZXh0IGl0ZXJhdGlvbiwgYnV0
IHN1YnRyYWN0IG9uZSB0byBiYWxhbmNlIHRoZSArKyBpbgorICAgICAgICAgICAgLy8gdGhlIGxv
b3AuCisgICAgICAgICAgICBzdGFydCA9IGVuZCAtIDE7CisgICAgICAgIH0KKyAgICB9Cit9Owor
CitjbGFzcyBVdGlscyB7CisgIAorICAgIHN0YXRpYyBodW1hblJlYWRhYmxlVGltZShtaWxsaXNl
Y29uZHMpCisgICAgeworICAgICAgICBpZiAobWlsbGlzZWNvbmRzIDwgMTAwMCkKKyAgICAgICAg
ICAgIHJldHVybiBNYXRoLmZsb29yKG1pbGxpc2Vjb25kcykgKyAnbXMnOworICAgICAgICBlbHNl
IGlmIChtaWxsaXNlY29uZHMgPCA2MDAwMCkKKyAgICAgICAgICAgIHJldHVybiAobWlsbGlzZWNv
bmRzIC8gMTAwMCkudG9QcmVjaXNpb24oMikgKyAncyc7CisKKyAgICAgICAgbGV0IG1pbnV0ZXMg
PSBNYXRoLmZsb29yKG1pbGxpc2Vjb25kcyAvIDYwMDAwKTsKKyAgICAgICAgbGV0IHNlY29uZHMg
PSBNYXRoLmZsb29yKChtaWxsaXNlY29uZHMgLSBtaW51dGVzICogNjAwMDApIC8gMTAwMCk7Cisg
ICAgICAgIHJldHVybiBtaW51dGVzICsgJ20nICsgc2Vjb25kcyArICdzJzsKKyAgICB9Cit9Owor
CitjbGFzcyBEYXRhQ29udmVydGVyIHsKKworICAgIHN0YXRpYyBjb252ZXJ0VG9XZWJUcmVlbWFw
Rm9ybWF0KHJvb3ROb2RlTmFtZSwgdHJlZSkKKyAgICB7CisgICAgICAgIHJldHVybiBEYXRhQ29u
dmVydGVyLl9yZWN1cnNpdmVDb252ZXJ0Tm9kZShyb290Tm9kZU5hbWUsIHRyZWUpOworICAgIH0K
KyAgCisgICAgLyoKKyAgICAgICAgc3RhdHMuanNvbiBsb29rcyBsaWtlOgorICAgICAgICB7Cisg
ICAgICAgICAgICAiaW1wb3J0ZWQiOiB7CisgICAgICAgICAgICAgICAgInczYyI6IHsKKyAgICAg
ICAgICAgICAgICAgICAgIndlYi1wbGF0Zm9ybS10ZXN0cyI6IHsKKyAgICAgICAgICAgICAgICAg
ICAgICAgICJJbmRleGVkREIiOiB7CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgImlkYm9i
amVjdHN0b3JlX2dldDQuaHRtIjogeworICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAi
cmVzdWx0cyI6IFsKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDEyLCAgICAg
ICAgIC8vIHdvcmtlciBudW1iZXIKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
IDI2MCwgICAgICAgIC8vIHRlc3QgbnVtYmVyCisgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICA0MTYzMiwgICAgICAvLyB3b3JrZXIgcGlkCisgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICA1MCwgICAgICAgICAvLyB0ZXN0IHJ1bnRpbWUgKG1zKQorICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgNTQgICAgICAgICAgLy8gdG90YWwgcnVudGltZSAo
bXM7IGluY2x1ZGVzIHRpbWUgdG8gcnVuIHJlZiB0ZXN0LCBkbyBwaXhlbCBjb21wYXJpc29uIGV0
Yy4pCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIF0sCisgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgIC4uLgorICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0KKyAgICAg
ICAgICAgICAgICAgICAgICAgIH0KKyAgICAgICAgICAgICAgICAgICAgfQorICAgICAgICAgICAg
ICAgIH0KKyAgICAgICAgICAgIH0KKyAgICAgICAgfSAgICAKKyAgICAqLworICAKKyAgICBzdGF0
aWMgX3JlY3Vyc2l2ZUNvbnZlcnROb2RlKHRyZWVuYW1lLCB0cmVlLCBwYXRoKQorICAgIHsKKyAg
ICAgICAgbGV0IHRvdGFsID0gMDsKKyAgICAgICAgbGV0IGNoaWxkQ291bnQgPSAwOworICAgICAg
ICBsZXQgY2hpbGRyZW4gPSBbXTsKKyAgICAgICAgZm9yIChsZXQgbmFtZSBpbiB0cmVlKSB7Cisg
ICAgICAgICAgICBsZXQgdHJlZU5vZGUgPSB0cmVlW25hbWVdOworICAgICAgICAgICAgaWYgKCdy
ZXN1bHRzJyBpbiB0cmVlTm9kZSkgeworICAgICAgICAgICAgICAgIGxldCB0aW1lcyA9IHRyZWVO
b2RlLnJlc3VsdHM7CisgICAgICAgICAgICAgICAgaWYgKCF0aW1lcy5oYXNPd25Qcm9wZXJ0eSgn
bGVuZ3RoJykpCisgICAgICAgICAgICAgICAgICAgIGNvbnRpbnVlOworCisgICAgICAgICAgICAg
ICAgbGV0IHRlc3RfdG90YWxfdGltZSA9IHRyZWVOb2RlLnJlc3VsdHNbNF07CisgICAgICAgICAg
ICAgICAgbGV0IG5vZGUgPSB7CisgICAgICAgICAgICAgICAgICAgICdkYXRhJzogeyAnJGFyZWEn
OiB0ZXN0X3RvdGFsX3RpbWUgfSwKKyAgICAgICAgICAgICAgICAgICAgJ25hbWUnOiBuYW1lICsg
IiAoIiArIFV0aWxzLmh1bWFuUmVhZGFibGVUaW1lKHRlc3RfdG90YWxfdGltZSkgKyAiKSIKKyAg
ICAgICAgICAgICAgICB9OworICAgICAgICAgICAgICAgIGNoaWxkcmVuLnB1c2gobm9kZSk7Cisg
ICAgICAgICAgICAgICAgdG90YWwgKz0gdGVzdF90b3RhbF90aW1lOworICAgICAgICAgICAgICAg
IGNoaWxkQ291bnQrKzsKKyAgICAgICAgICAgIH0gZWxzZSB7CisgICAgICAgICAgICAgICAgbGV0
IG5ld1BhdGggPSBwYXRoID8gcGF0aCArICcvJyArIG5hbWUgOiBuYW1lOworICAgICAgICAgICAg
ICAgIGxldCBzdWJ0cmVlID0gRGF0YUNvbnZlcnRlci5fcmVjdXJzaXZlQ29udmVydE5vZGUobmFt
ZSwgdHJlZU5vZGUsIG5ld1BhdGgpOworICAgICAgICAgICAgICAgIGNoaWxkcmVuLnB1c2goc3Vi
dHJlZSk7CisgICAgICAgICAgICAgICAgdG90YWwgKz0gc3VidHJlZVsnZGF0YSddWyckYXJlYSdd
OworICAgICAgICAgICAgICAgIGNoaWxkQ291bnQgKz0gc3VidHJlZVsnY2hpbGRDb3VudCddOwor
ICAgICAgICAgICAgfQorICAgICAgICB9CisKKyAgICAgICAgY2hpbGRyZW4uc29ydChmdW5jdGlv
bihhLCBiKSB7CisgICAgICAgICAgICBsZXQgYVRpbWUgPSBhLmRhdGFbJyRhcmVhJ10KKyAgICAg
ICAgICAgIGxldCBiVGltZSA9IGIuZGF0YVsnJGFyZWEnXQorICAgICAgICAgICAgcmV0dXJuIGJU
aW1lIC0gYVRpbWU7CisgICAgICAgIH0pOworCisgICAgICAgIHJldHVybiB7CisgICAgICAgICAg
ICAnZGF0YSc6IHsgJyRhcmVhJzogdG90YWwgfSwKKyAgICAgICAgICAgICduYW1lJzogdHJlZW5h
bWUgKyAnICgnICsgVXRpbHMuaHVtYW5SZWFkYWJsZVRpbWUodG90YWwpICsgJyAtICcgKyBjaGls
ZENvdW50ICsgJyB0ZXN0cyknLAorICAgICAgICAgICAgJ2NoaWxkcmVuJzogY2hpbGRyZW4sCisg
ICAgICAgICAgICAnY2hpbGRDb3VudCc6IGNoaWxkQ291bnQsCisgICAgICAgICAgICAncGF0aCc6
IHBhdGgKKyAgICAgICAgfTsKKyAgICB9Cit9OworCitsZXQgdHJlZU1hcENvbnRyb2xsZXI7Citj
bGFzcyBUcmVlTWFwQ29udHJvbGxlciB7CisgIAorICAgIGNvbnN0cnVjdG9yKHN0YXRzSlNPTlN0
cmluZywgY29udGFpbmVyRWxlbWVudCkKKyAgICB7CisgICAgICAgIGxldCBqc29uRGF0YSA9IEpT
T04ucGFyc2Uoc3RhdHNKU09OU3RyaW5nKTsKKyAgICAgICAgdGhpcy50cmVlTWFwRGF0YSA9IERh
dGFDb252ZXJ0ZXIuY29udmVydFRvV2ViVHJlZW1hcEZvcm1hdCgnTGF5b3V0VGVzdHMnLCBqc29u
RGF0YSk7CisgICAgICAgIHRoaXMudHJlZU1hcCA9IG5ldyBXZWJUcmVlTWFwKHRoaXMudHJlZU1h
cERhdGEsIGNvbnRhaW5lckVsZW1lbnQpOworICAgIH0KKyAgICAKKyAgICByZXNldFpvb20oKQor
ICAgIHsKKyAgICAgICAgZm9jdXModGhpcy53ZWJUcmVlTWFwKTsKKyAgICB9Cit9OworCitpZiAo
d2luZG93LnRlc3RSdW5uZXIpIHsKKyAgICB0ZXN0UnVubmVyLmR1bXBBc1RleHQoKTsKKyAgICB0
ZXN0UnVubmVyLndhaXRVbnRpbERvbmUoKTsKK30KKworZnVuY3Rpb24gc2V0dXBJbnRlcmZhY2Uo
KQoreworICAgIC8vIFNlZSBpZiB3ZSBoYXZlIGEgZmlsZSB0byBsb2FkIHNwZWNpZmllZCBpbiB0
aGUgcXVlcnkgc3RyaW5nLgorICAgIGxldCBxdWVyeV9wYXJhbWV0ZXJzID0ge307CisgICAgbGV0
IHBhaXJzID0gd2luZG93LmxvY2F0aW9uLmhyZWYuc2xpY2Uod2luZG93LmxvY2F0aW9uLmhyZWYu
aW5kZXhPZignPycpICsgMSkuc3BsaXQoJyYnKTsKKyAgICBsZXQgZmlsZW5hbWUgPSAnc3RhdHMu
anNvbic7CisKKyAgICBmb3IgKGxldCBpID0gMDsgaSA8IHBhaXJzLmxlbmd0aDsgaSsrKSB7Cisg
ICAgICAgIGxldCBwYWlyID0gcGFpcnNbaV0uc3BsaXQoJz0nKTsKKyAgICAgICAgcXVlcnlfcGFy
YW1ldGVyc1twYWlyWzBdXSA9IGRlY29kZVVSSUNvbXBvbmVudChwYWlyWzFdKTsKKyAgICB9CisK
KyAgICBpZiAoJ2ZpbGVuYW1lJyBpbiBxdWVyeV9wYXJhbWV0ZXJzKQorICAgICAgICBmaWxlbmFt
ZSA9IHF1ZXJ5X3BhcmFtZXRlcnNbJ2ZpbGVuYW1lJ107CisKKyAgICAvLyBUaGlzIGlzIHVzZWQg
Zm9yIGxvY2FsIGZpbGVzLCBzbyB3ZSBjYW4ndCB1c2UgZmV0Y2goKS4KKyAgICB2YXIgcmVxdWVz
dCA9IG5ldyBYTUxIdHRwUmVxdWVzdCgpOworICAgIHJlcXVlc3Qub3BlbigiR0VUIiwgZmlsZW5h
bWUsIHRydWUpOworICAgIHJlcXVlc3QuYWRkRXZlbnRMaXN0ZW5lcignbG9hZCcsICgpID0+IHsK
KyAgICAgICAgdHJlZU1hcENvbnRyb2xsZXIgPSBuZXcgVHJlZU1hcENvbnRyb2xsZXIocmVxdWVz
dC5yZXNwb25zZVRleHQsIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCdtYXAnKSk7CisgICAgICAg
IGlmICh3aW5kb3cudGVzdFJ1bm5lcikKKyAgICAgICAgICAgIHRlc3RSdW5uZXIubm90aWZ5RG9u
ZSgpOworICAgIH0pOworICAgIHJlcXVlc3QuYWRkRXZlbnRMaXN0ZW5lcignZXJyb3InLCAoKSA9
PiB7CisgICAgICAgIGNvbnNvbGUubG9nKCdGYWlsZWQgdG8gbG9hZCBzdGF0cy5qc29uJyk7Cisg
ICAgfSk7CisgICAgcmVxdWVzdC5zZW5kKCk7CisKKyAgICBsZXQgZHJvcF90YXJnZXQgPSBkb2N1
bWVudC5nZXRFbGVtZW50QnlJZCgnZHJvcFRhcmdldCcpOworCisgICAgZHJvcF90YXJnZXQuYWRk
RXZlbnRMaXN0ZW5lcignZHJhZ2VudGVyJywgZnVuY3Rpb24gKGUpIHsKKyAgICAgICAgZHJvcF90
YXJnZXQuY2xhc3NOYW1lID0gJ2RyYWdPdmVyJzsKKyAgICAgICAgZS5zdG9wUHJvcGFnYXRpb24o
KTsKKyAgICAgICAgZS5wcmV2ZW50RGVmYXVsdCgpOworICAgIH0sIGZhbHNlKTsKKworICAgIGRy
b3BfdGFyZ2V0LmFkZEV2ZW50TGlzdGVuZXIoJ2RyYWdvdmVyJywgZnVuY3Rpb24gKGUpIHsKKyAg
ICAgICAgZS5zdG9wUHJvcGFnYXRpb24oKTsKKyAgICAgICAgZS5wcmV2ZW50RGVmYXVsdCgpOwor
ICAgIH0sIGZhbHNlKTsKKworICAgIGRyb3BfdGFyZ2V0LmFkZEV2ZW50TGlzdGVuZXIoJ2RyYWds
ZWF2ZScsIGZ1bmN0aW9uIChlKSB7CisgICAgICAgIGRyb3BfdGFyZ2V0LmNsYXNzTmFtZSA9ICcn
OworICAgICAgICBlLnN0b3BQcm9wYWdhdGlvbigpOworICAgICAgICBlLnByZXZlbnREZWZhdWx0
KCk7CisgICAgfSwgZmFsc2UpOworCisgICAgZHJvcF90YXJnZXQuYWRkRXZlbnRMaXN0ZW5lcign
ZHJvcCcsIGZ1bmN0aW9uIChlKSB7CisgICAgICAgIGRyb3BfdGFyZ2V0LmNsYXNzTmFtZSA9ICcn
OworICAgICAgICBlLnN0b3BQcm9wYWdhdGlvbigpOworICAgICAgICBlLnByZXZlbnREZWZhdWx0
KCk7CisKKyAgICAgICAgZm9yIChsZXQgaSA9IDA7IGkgPCBlLmRhdGFUcmFuc2Zlci5maWxlcy5s
ZW5ndGg7ICsraSkgeworICAgICAgICAgICAgbGV0IGZpbGUgPSBlLmRhdGFUcmFuc2Zlci5maWxl
c1tpXTsKKworICAgICAgICAgICAgbGV0IHJlYWRlciA9IG5ldyBGaWxlUmVhZGVyKCk7CisgICAg
ICAgICAgICByZWFkZXIuZmlsZW5hbWUgPSBmaWxlLm5hbWU7CisgICAgICAgICAgICByZWFkZXIu
b25sb2FkID0gZnVuY3Rpb24oZSkgeworICAgICAgICAgICAgICAgIHRyZWVNYXBDb250cm9sbGVy
ID0gbmV3IFRyZWVNYXBDb250cm9sbGVyKHJlYWRlci5yZXN1bHQsIGRvY3VtZW50LmdldEVsZW1l
bnRCeUlkKCdtYXAnKSk7CisgICAgICAgICAgICB9OworCisgICAgICAgICAgICByZWFkZXIucmVh
ZEFzVGV4dChmaWxlKTsKKyAgICAgICAgICAgIGRvY3VtZW50LnRpdGxlID0gJ1Rlc3QgcmVzdWx0
IHRpbWVzOiAnICsgcmVhZGVyLmZpbGVuYW1lOworICAgICAgICB9CisgICAgfSwgZmFsc2UpOwor
fQorCit3aW5kb3cuYWRkRXZlbnRMaXN0ZW5lcignbG9hZCcsIHNldHVwSW50ZXJmYWNlLCBmYWxz
ZSk7Cis8L3NjcmlwdD4KKzxib2R5PgorPGhlYWRlcj4KKyAgICA8ZGl2IGlkPSJkcm9wVGFyZ2V0
Ij5Ecm9wIHN0YXRzLmpzb24gZmlsZSBoZXJlIHRvIGxvYWQuPC9kaXY+CisgICAgPHA+Q2xpY2sg
b24gYSBib3ggdG8gem9vbSBpbi4gQ2xpY2sgb24gdGhlIG91dGVybW9zdCBib3ggdG8gem9vbSBv
dXQuIDxhIGhyZWY9IiIgb25jbGljaz0idHJlZU1hcENvbnRyb2xsZXIucmVzZXRab29tKCkiPlJl
c2V0PC9hPjwvcD4KKyAgICA8L2Rpdj4KKzwvaGVhZGVyPgorPHNlY3Rpb24gaWQ9J21hcCc+PC9z
ZWN0aW9uPgorPC9ib2R5PgorPC9odG1sPgo=
</data>

          </attachment>
      

    </bug>

</bugzilla>